diff --git a/.github/pull_request_assignment.yml b/.github/pull_request_assignment.yml index c9ee708757fe..b6481d867be4 100644 --- a/.github/pull_request_assignment.yml +++ b/.github/pull_request_assignment.yml @@ -7,6 +7,18 @@ - kristapratico - maririos +- rule: + paths: + - "specification/confidentialledger/data-plane/**" + reviewers: + - christothes + +- rule: + paths: + - "specification/@(applicationinsights|operationalinsights)/**" + reviewers: + - akning-ms + - rule: # eventgrid data-plane PR paths: @@ -21,6 +33,13 @@ reviewers: - lmazuel +- rule: + # data-plane PR + paths: + - "specification/**/data-plane/iot**" + reviewers: + - drwill-ms + - rule: # data-plane PR paths: @@ -29,20 +48,13 @@ - anuchandy - jhendrixMSFT - tjprescott - - rule: paths: - "specification/network/**" reviewers: - - kairu-ms - lirenhe -- rule: - paths: - - "specification/@(applicationinsights|operationalinsights)/**" - reviewers: - - kairu-ms - rule: paths: "specification/@(resources|powerplatform|appplatform|deviceupdate)/**" @@ -57,7 +69,7 @@ - rule: paths: "specification/sql/**" reviewers: - - akning-ms + - zhenglaizhang - rule: paths: "specification/signalr/**" @@ -80,42 +92,36 @@ reviewers: - ArcturusZhang -- rule: - paths: - - "specification/azureactivedirectory/**" - reviewers: - - njuCZ - - rule: paths: - "specification/authorization/**" reviewers: - - qianwens + - ruowan - rule: paths: - "specification/datafactory/**" reviewers: - - qianwens + - leni-msft - rule: paths: - "specification/monitor/**" reviewers: - weidongxu-microsoft - - kairu-ms - rule: paths: - "specification/storage/**" reviewers: - - Juliehzl + - jianyexi - rule: paths: "specification/mediaservices/**" reviewers: - allenjzhang + - rule: paths: - "specification/containerregistry/**" @@ -158,13 +164,12 @@ - "specification/servicelinker/**" reviewers: - raych1 - + - rule: - paths: - - "specification/azurestack/**" - - "specification/automation/**" + paths: + - "specification/keyvault/**" reviewers: - - xiaoxuqi-ms + - zhenglaizhang - rule: paths: @@ -192,17 +197,13 @@ paths: - "**" reviewers: - - erich-wang - PhoenixHe-msft - lirenhe - weidongxu-microsoft - ArcturusZhang - raych1 - - ChenTanyi - - njuCZ - akning-ms - leni-msft - - qianwens - ruowan - jianyexi - zhenglaizhang diff --git a/CODEOWNERS b/CODEOWNERS index c8ed0fa05b4a..6c01da6ca27e 100644 --- a/CODEOWNERS +++ b/CODEOWNERS @@ -2,7 +2,8 @@ /specification/analysisservices/ @taiwu /specification/alertsmanagement/ @ofirmanor @olalavi @erangon @orieldar @ilaizi @shakednai1 @khaboasb @orenhor /specification/apimanagement/ @promoisha @solankisamir -/specification/applicationinsights/ @alexeldeib @ramthi @markwolff @trask @hectorhdzg @lzchen +/specification/applicationinsights/ @alexeldeib +/specification/applicationinsights/data-plane/Monitor.Exporters/ @ramthi @trask @hectorhdzg @lzchen /specification/asazure/ @athipp /specification/authorization/ @darshanhs90 @stankovski /specification/automation/ @vrdmr @@ -62,7 +63,7 @@ /specification/resources/ @Azure/arm-template-deployments @rajshah11 @vivsriaus /specification/scheduler/ @pinwang81 /specification/search/data-plane/ @brjohnstmsft @arv100kri @bleroy @heaths @AlexGhiondea @Mohit-Chakraborty -/specification/search/resource-manager/ @abhi1509 @miwelsh @tjacobhi +/specification/search/resource-manager/ @abhi1509 @tjacobhi /specification/serialconsole/ @amitchat @craigw @asinn826 /specification/service-map/ @daveirwin1 /specification/servicebus/ @sazeesha @v-ajnava @@ -75,6 +76,7 @@ /specification/storsimple8000series/ @manaas-microsoft /specification/streamanalytics/ @atpham256 /specification/subscriptions/ @navysingla +/specification/synapse/ @idear1203 /specification/timeseriesinsights/ @sandshadow /specification/trafficmanager/ @allencal @hrkulkarmsft /specification/web/ @naveedaz @Azure/azure-app-service-control-plane diff --git a/cSpell.json b/cSpell.json index 2e6290868c5c..8c55c0f311b5 100644 --- a/cSpell.json +++ b/cSpell.json @@ -4,6 +4,7 @@ "words": [ "Creds", "partiallycompleted", + "subchannel", "umls" ], "dictionaryDefinitions": [ @@ -63,6 +64,12 @@ "Tera" ] }, + { + "filename": "**/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/databox.json", + "words": [ + "Tera" + ] + }, { "filename": "**/specification/servicebus/resource-manager/Microsoft.ServiceBus/stable/2017-04-01/Rules.json", "words": [ @@ -75,6 +82,12 @@ "Ruleproperties" ] }, + { + "filename": "**/specification/servicebus/resource-manager/Microsoft.ServiceBus/preview/2021-01-01-preview/Rules.json", + "words": [ + "Ruleproperties" + ] + }, { "filename": "**/specification/servicebus/resource-manager/Microsoft.ServiceBus/stable/2014-09-01/servicebus.json", "words": [ @@ -217,6 +230,12 @@ "Exprired" ] }, + { + "filename": "**/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/integrationRuntime.json", + "words": [ + "Exprired" + ] + }, { "filename": "**/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/TasksCommon.json", "words": [ @@ -273,6 +292,12 @@ "Regenerte" ] }, + { + "filename": "**/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/storage.json", + "words": [ + "Regenerte" + ] + }, { "filename": "**/specification/adhybridhealthservice/resource-manager/Microsoft.ADHybridHealthService/stable/2014-01-01/ADHybridHealthService.json", "words": [ @@ -738,23 +763,11 @@ ] }, { - "filename": "**/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/communicationserviceschat.json", + "filename": "**/specification/communication/data-plane/Chat/preview/2020-09-21-preview2/communicationserviceschat.json", "words": [ "readreceipts" ] }, - { - "filename": "**/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/communicationservicesadministration.json", - "words": [ - "areacodes", - "locationoptions", - "phonenumbers", - "phoneplangroups", - "phoneplans", - "pstn", - "unconfiguring" - ] - }, { "filename": "**/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json", "words": [ @@ -793,6 +806,25 @@ "vmsize", "vmsizes" ] + }, + { + "filename": "**/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/CommonDefinitions.json", + "words": [ + "Guage" + ] + }, + { + "filename": "**/specification/confluent/resource-manager/Microsoft.Confluent/preview/2021-03-01-preview/confluent.json", + "words": [ + "orgvalidate" + ] + }, + { + "filename": "**/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/service.json", + "words": [ + "Orignal", + "Seleted" + ] } ] } diff --git a/custom-words.txt b/custom-words.txt index d8051f6b626f..14a67a73ca79 100644 --- a/custom-words.txt +++ b/custom-words.txt @@ -4,6 +4,7 @@ A256CBCPAD AADDS aadiam AADP +aapl AATP abcxyz ABFS @@ -55,6 +56,7 @@ alertrules alertsmanagement alertstate Alexa +Algo allowlist Alon amazonservices @@ -134,6 +136,8 @@ artifacturi asciifolding Asns aspnet +assessmentprojects +Asturian asyncinfo asyncoperation atascada @@ -184,6 +188,7 @@ AzureAD azureADMetrics azureasyncoperations azureblob +azurebot azurecli azurecr azuredatabasemigrationservice @@ -209,6 +214,7 @@ backendid backends backfilling Backoff +backplane backupconfig backupengine backupstorageconfig @@ -249,6 +255,7 @@ bingvideosearch bingvisualsearch bingwebsearch Bioconductor +Bislama Bitbucket Bitlocker bitness @@ -261,6 +268,7 @@ Blockchain Bluefield BMCI BMCIP +BMSAAD BMSPO BMSRP Bokmaal @@ -349,6 +357,7 @@ clustername CMAF Cmdkey cmdlet +cmdlets CMEK CMMI CNAME @@ -399,6 +408,7 @@ costcenter costinsights costmanagement Couchbase +cpes cpim CPIM Cran @@ -406,6 +416,7 @@ CRDs creatable createbsl createconsumergroup +createdtime createorupdate createpreview credativ @@ -419,6 +430,7 @@ csrs currentbillingfeatures currentuser customerinsights +customhostnames customimages customimagesearch customizability @@ -437,6 +449,8 @@ CUTOVER CVEs CVSS Cyrl +dailyforecast +dailyhistorical darkgrey databox Databricks @@ -456,7 +470,10 @@ datalakeanalytics datalakestore Datamasking datamigration +datamodel +datapath datapoint +datapoints dataschema Dataset datasetid @@ -471,6 +488,7 @@ datetimeoffset datetimes DBFS DCOS +ddagpu Ddos DDTHH deadletter @@ -568,6 +586,8 @@ Dsms DTDL Dtus duration'PT +dwgzippackage +dynamicpersongroups EAPMSCHA EAPMSCHAP EAPTLS @@ -628,6 +648,7 @@ exceptiontype exfiltrate Exfiltration experimentids +Explainability explicitlist exportconfiguration exportdevices @@ -646,13 +667,15 @@ failover failovers Fairplay Fanout +farmBeats +FarmBeats fatherable faultable fconfig FDID -FDID fearthecowboy featurecapabilities +featurestate Featurization featurized Featurizer @@ -701,6 +724,8 @@ generatevpnprofile geobias geocode geocodes +geodata +Geodata Geofence geofences Geofencing @@ -733,6 +758,7 @@ getvpnclientipsecparameters getvpnprofilepackageurl gibibytes GIFs +Gilbertese githubusercontent gitrepo globalconfiguration @@ -741,8 +767,10 @@ gltf gluster glusterfs GOARCH +GPUMIG GPUP GPUs +Grafana Grammarly GRANTACE granularities @@ -753,6 +781,7 @@ groupedby GRPC GSMT GTFS +guage guestconfiguration GUID GUIDs @@ -763,6 +792,7 @@ Había hadoop hana hanaonazure +Hani Hant Hardenings hbase @@ -824,6 +854,7 @@ Imagelist imagelists imagesearch IMDS +importcollectors importdevices Inbuild incomingrelationships @@ -874,6 +905,7 @@ Iscsi iscsiservers isdir isdirectory +isfolder ishostingenvironmentnameavailable ishostnameavailable isnullable @@ -904,8 +936,12 @@ JSONLD Jtoken jumpbox jwts +K’iche +Kabuverdianu +Kachin kafkarest Kaliningrad +Kashubian kbId Kbps KECA @@ -941,6 +977,7 @@ Kubelet kubenet kubernetes kusto +kustooperations kvset l'avion labaccounts @@ -1017,6 +1054,7 @@ LRO's Lucene Lumia LUNs +Luxembourgish machinelearning machinelearningcompute machinelearningexperimentation @@ -1029,6 +1067,7 @@ managecontacts managedapplications managedclusters managedeployments +managedHSMs managedserviceidentity managedservices managee @@ -1057,6 +1096,7 @@ MCAS MDATP mebibytes mediaservices +Merkle Meru Mesos messagingplan @@ -1072,6 +1112,8 @@ metricnamespace metricsadvisor metrictype mgmt +MHSM +MHSMIP Mibps microservices microsofttranslator @@ -1089,6 +1131,7 @@ ML's mlapi mnist modelmanagement +modifiedtime MODIFYACLENTRIES monitoringconfiguration monitoringconfigurations @@ -1160,6 +1203,8 @@ nbformat Nccl nchar ndjson +ndvi +NDVI Neighbourhood netapp netdev @@ -1220,10 +1265,12 @@ nvarchar Nynorsk nysiis OAEP +Occitan octokit Odata odatatype ODBC +oeverify offboard offboards officedocument @@ -1236,6 +1283,7 @@ ondemandgc onmachine onmicrosoft ONNX +Onprem onpremises oobe Oozie @@ -1263,6 +1311,7 @@ osdiskforlinuxsimple osdiskforwindowssimple OSMAM OSNIC +OSSKU Otomi outputdirectoryid overprovision @@ -1351,6 +1400,7 @@ preloading prem premieraddonoffers premieraddons +Preprovisioned Prerelease prerestore pretrained @@ -1368,6 +1418,8 @@ privatelinkservice privatepreview projectable propogation +Propagations +propagations Protectable Providerhub provisioner @@ -1414,6 +1466,7 @@ RAGRS RAGZRS randint Rankable +rasterize ratelimit ravbhatnagar rawwebsockets @@ -1491,6 +1544,8 @@ Reprovision reprovisioned Reprovisioning reprovisions +reranker +Reranker Reregister Rescan reservationorders @@ -1538,6 +1593,7 @@ rolloverdetails rootfs rosettanetprocessconfigurations rotatediskencryptionkey +rotationpolicy routable routingendpointhealth rpki @@ -1602,6 +1658,7 @@ securitydomainuploadoperation securityinsight seealso serialconsole +servercollectors servererror serverfarm serverfarms @@ -1634,6 +1691,7 @@ setvpnclientipsecparameters sfhealthid sfpkg shamir_share +shapefile sharded sharedkey sharename @@ -1817,6 +1875,7 @@ tagname tagsandregions tagvalue TARGETDURATION +targetv taskcompletion taskcounts taskfailure @@ -1827,6 +1886,7 @@ templated templatelink templeton temporarydisk +Tensorboard tensorflow TEPCO's teradata @@ -1835,10 +1895,12 @@ Termlist termlists testall testallroutes +testfailover testnew testnewroute testpl testresultfile +Tetum textanalytics TFIDF Tful @@ -1911,6 +1973,7 @@ uniquestring unitless unixtime UNKNOWON +unleased unlocalized unmanaged unmonitored @@ -2014,6 +2077,7 @@ VMILR vmimage vmname vmotion +VMOS VMQS VMSS VMSSVM @@ -2026,6 +2090,7 @@ vnet vnetid Vnets voip +Volapük Vpnclient vpnconfiguration vpndeviceconfigurationscript @@ -2040,6 +2105,7 @@ waagent WADL waitforjobcompletion waitingforstarttask +Walser WANAs WANs WASB @@ -2061,6 +2127,8 @@ webhostingplans webjob webjobs webproxy +webpubsub +WebPubSub websearch webservices Webspace @@ -2108,8 +2176,35 @@ Ywhk YYMMDD Zabbix Zerto +Zhuang Zilla +zipdeploy ziplist Zoho zoneinfo -zset \ No newline at end of file +zset +classificationdef +entitydef +termtemplatedef +enumdef +relationshipdef +structdef +typedefs +testfailover +Orignal +Onprem +targetv +Seleted +classificationrules +Unparented +scanrulesets +Ruleset +Rulesets +XLSB +Miti +DOCM +PPSX +PPTM +XLSM +DOCM +multislot diff --git a/documentation/FAQ.md b/documentation/FAQ.md index 82cd2276edec..2e05573323f8 100644 --- a/documentation/FAQ.md +++ b/documentation/FAQ.md @@ -6,7 +6,8 @@ This page is intended to answer questions frequently asked during Azure Swagger 2. [How to fix validation failure?](#validation) 3. [How to generate SDK from Swagger?](#SDK) 4. [How to generate document](#doc) -5. [If need further help, who can we contact?](#contact) +5. [How to generate swagger examples](#examplegen) +6. [If need further help, who can we contact?](#contact) ## How to onboard PR review Process? If you are new to Swagger/OpenAPI, you can refer to this [document](https://dev.azure.com/azure-sdk/internal/_wiki/wikis/internal.wiki/80/Getting-started-with-OpenAPI-specifications) @@ -37,5 +38,8 @@ If you are working in the private repository, please refer to this [document](ht ## How to generate Document from Swagger? Refer to [document](https://dev.azure.com/azure-sdk/internal/_wiki/wikis/internal.wiki/79/Generation-of-docs-on-docs.microsoft.com) +## How to generate examples from Swagger? +Refer to [Swagger-Example-Generation](https://dev.azure.com/azure-sdk/internal/_wiki/wikis/internal.wiki/393/Swagger-Example-Generation) + ## If need further help, who can we contact? If any other help need, Please send a mail to vscswagger@microsoft.com \ No newline at end of file diff --git a/documentation/Semantic-and-Model-Violations-Reference.md b/documentation/Semantic-and-Model-Violations-Reference.md index 5862d443e924..82c945ca8bc5 100644 --- a/documentation/Semantic-and-Model-Violations-Reference.md +++ b/documentation/Semantic-and-Model-Violations-Reference.md @@ -93,6 +93,7 @@ This document lists the set of automated rules that can be validated against swa | [ROUNDTRIP_ADDITIONAL_PROPERTY](#ROUNDTRIP_ADDITIONAL_PROPERTY) | | | [LRO_RESPONSE_CODE](#LRO_RESPONSE_CODE) | | | [LRO_RESPONSE_HEADER](#LRO_RESPONSE_HEADER) | | +| [MISSING_RESOURCE_ID](#MISSING_RESOURCE_ID) | | ### Validation Warnings @@ -832,16 +833,24 @@ This document lists the set of automated rules that can be validated against swa ### LRO_RESPONSE_CODE -**Output Message**: Patch/Post long running operation must return 201 or 202, Delete long running operation must return 202 or 204, Put long running operation must return 202 or 201 or 200, but {statusCode} returned. +**Output Message**: Respond to the initial request of a long running operation, Patch/Post call must return 201 or 202, Delete call must return 202 or 204, Put call must return 202 or 201 or 200, but {statusCode} being returned. -**Description**: Long running operation must return specific response code as per http method type when this operation is annotated with x-ms-long-running-operation:true. +**Description**: Long running operation must return specific response code as per http method type when this operation is annotated with x-ms-long-running-operation:true. See [RPC - Asynchronous Operations](https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/Addendum.md#asynchronous-operations) for more details. **How to fix the violation**: Correct the response code per the guidance or remove annotation of x-ms-long-running-operation. ### LRO_RESPONSE_HEADER -**Output Message**: Long running operation should return {header} in header but not provided. +**Output Message**: Long running operation should return {header} in header but not being provided. **Description**: Long running operation must return location header or azure-AsyncOperation header in response when this operation is annotated with x-ms-long-running-operation:true. **How to fix the violation**: Adding one of these headers to the response. + +### MISSING_RESOURCE_ID + +**Output Message**: id is required to return in response of GET/PUT resource calls but not being provided. + +**Description**: `id` is a required field of azure resource to return in response body of each GET or PUT call when this resource is annotated as x-ms-azure-resource: true. This field is important to the platform because it is used as the identifier for references on other objects. e.g. "id": "/subscriptions/{id}/resourceGroups/{group}/providers/{rpns}/{type}/{name}". + +**How to fix the violation**: Adding id to the response body. diff --git a/documentation/ci-fix.md b/documentation/ci-fix.md index 32901b31f3e4..5380826c32c4 100644 --- a/documentation/ci-fix.md +++ b/documentation/ci-fix.md @@ -34,8 +34,9 @@ npm install -g oav oav validate-example ``` Please see [readme](https://github.com/Azure/oav/blob/master/README.md) for how to install or run tool in details. -Or you can run it in [OpenAPI Hub](https://portal.azure-devex-tools.com/tools/static-validation/static/errors/default) +Or you can run it in [OpenAPI Hub](https://portal.azure-devex-tools.com/tools/static-validation/static/errors/default). Refer to [Semantic and Model Violations Reference](https://github.com/Azure/azure-rest-api-specs/blob/master/documentation/Semantic-and-Model-Violations-Reference.md) for detailed description of validations and how-to-fix guidance. +Refer to [Swagger-Example-Generation](https://dev.azure.com/azure-sdk/internal/_wiki/wikis/internal.wiki/393/Swagger-Example-Generation) for example automatic generation. ## Semantic Validation Run Semantic Validation locally: diff --git a/documentation/code-gen/configure-cli.md b/documentation/code-gen/configure-cli.md index 9ec45fdcd8c3..d8243f016784 100644 --- a/documentation/code-gen/configure-cli.md +++ b/documentation/code-gen/configure-cli.md @@ -91,7 +91,7 @@ az: package-name: azure-mgmt-communication az-output-folder: $(azure-cli-extension-folder)/src/communication python-sdk-output-folder: "$(az-output-folder)/azext_communication/vendored_sdks/communication" -# add additinal configuration here specific for Azure CLI +# add additional configuration here specific for Azure CLI # refer to the faq.md for more details ``` diff --git a/documentation/openapi-authoring-automated-guidelines.md b/documentation/openapi-authoring-automated-guidelines.md index 039bfe8cc913..e5732dd5b9e9 100644 --- a/documentation/openapi-authoring-automated-guidelines.md +++ b/documentation/openapi-authoring-automated-guidelines.md @@ -46,8 +46,6 @@ We request OpenAPI(Swagger) spec authoring be assigned to engineers who have an | [R3030](#R3030) | [PathResourceProviderMatchNamespace](#R3030) | ARM OpenAPI(swagger) specs | | [R2016](#r2016) | [PatchBodyParametersSchema](#r2016) | ARM and Data plane OpenAPI(swagger) specs | | [R2062](#r2062) | [XmsResourceInPutResponse](#r2062) | ARM OpenAPI(swagger) specs | -| [R3027](#r3027) | [TrackedResourceListByResourceGroup](#r3027) | ARM OpenAPI(swagger) specs | -| [R3028](#r3028) | [TrackedResourceListBySubscription](#r3028) | ARM OpenAPI(swagger) specs | | [R3011](#r3011) | [DescriptionMustNotBeNodeName](#r3011) | ARM and Data plane OpenAPI(swagger) specs | | [R2020](#r2020) | [RequiredPropertiesMissingInResourceModel](#r2020) | ARM OpenAPI(swagger) specs | | [R3020](#r3020) | [PathResourceProviderNamePascalCase](#r3020) | ARM OpenAPI(swagger) specs | @@ -71,6 +69,8 @@ We request OpenAPI(Swagger) spec authoring be assigned to engineers who have an | [R3017](#r3017) | [GuidUsage](#r3017) | ARM and Data plane OpenAPI(swagger) specs | | [R2057](#r2057) | [InvalidSkuModel](#r2057) | ARM OpenAPI(swagger) specs | | [R3010](#r3010) | [TrackedResourceListByImmediateParent](#r3010) | ARM OpenAPI(swagger) specs | +| [R3027](#r3027) | [TrackedResourceListByResourceGroup](#r3027) | ARM OpenAPI(swagger) specs | +| [R3028](#r3028) | [TrackedResourceListBySubscription](#r3028) | ARM OpenAPI(swagger) specs | | [R2004](#r2004) | [NonApplicationJsonType](#r2004) | ARM OpenAPI(swagger) specs | | [R4014](#r4014) | [AllResourcesMustHaveGetOperation](#r4014) | ARM OpenAPI(swagger) specs | ### SDK Violations @@ -116,7 +116,7 @@ We request OpenAPI(Swagger) spec authoring be assigned to engineers who have an | [R4034](#r4034) | [AzureResourceTagsSchemaValidation](#r4034) | ARM OpenAPI(swagger) specs | | [R4035](#r4035) | [PrivateEndpointResourceSchemaValidation](#r4035) | ARM OpenAPI(swagger) specs | | [R4036](#r4036) | [ImplementPrivateEndpointAPIs](#r4036) | ARM OpenAPI(swagger) specs | - +| [R4037](#r4037) | [MissingTypeObject](#r4037) | ARM and Data plan OpenAPI(swagger) specs | #### SDK Warnings | Id | Rule Name | Applies to | @@ -292,7 +292,7 @@ If the resource pointed by the rule is not a tracked resource, this warning may Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) ### R3027 TrackedResourceListByResourceGroup -**Category** : ARM Error +**Category** : ARM Warning **Applies to** : ARM OpenAPI(swagger) specs @@ -313,7 +313,7 @@ If the resource pointed by the rule is not a tracked resource or the operation t Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) ### R3028 TrackedResourceListBySubscription -**Category** : ARM Error +**Category** : ARM Warning **Applies to** : ARM OpenAPI(swagger) specs @@ -1595,7 +1595,8 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul **Output Message**: A '{0}' operation '{1}' with x-ms-long-running-operation extension must have a valid terminal success status code {2}. -**Description**: The allowed response status codes for a long DELETE operation are "200", "204". The allowed response status codes for a POST operation are "200", "201" ,"202", & "204". The allowed response status codes for a PUT operation are "200" & "201". +**Description**: For ARM spec, the allowed response status codes for a long DELETE operation are "200" & "204"; the allowed response status codes for a POST operation are "200", "201" ,"202", & "204"; the allowed response status codes for a PUT/PATCH operation are "200" & "201". + For Data plane spec, the allowed response status codes for a long DELETE operation are "200","202", & "204"; the allowed response status codes for a POST operation are "200", "201" ,"202", & "204"; the allowed response status codes for a PUT/PATCH operation are "200","201", & "202". **Why the rule is important**: This will ensure that the DELETE/POST/PUT operations are designed correctly.Please refer [here](./swagger-extensions.md#x-ms-long-running-operation) for further details. @@ -1907,7 +1908,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul In case of LRO Post operation with return schema, it MAY be ambiguous for the SDK to understand automatically what the return schema is modeling. To avoid any confusion that would lead SDK to incorrectly instantiate the return type, service team needs to explain if the return schema is modeling a result from a "Location" header, or from an "Azure-AsyncOperation" header. -More details on LRO operation could be found [here](https://github.com/Azure/adx-documentation-pr/blob/master/sdks/LRO/LRO_AzureSDK.md) +More details on LRO operation could be found [here](https://github.com/Azure/autorest/blob/master/docs/extensions/readme.md#x-ms-long-running-operation) **How to fix the violation**: For a Post LRO operation, add "x-ms-long-running-operation-options" extension with "final-state-via" property. ``` json @@ -3459,4 +3460,51 @@ GET https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{ **How to fix the violation**: Please add the missing private endpoint API path and operation to the swagger. -Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) \ No newline at end of file +Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) + + +### R4037 MissingTypeObject + +**Category** : SDK Error + +**Applies to** : ARM and Data plane OpenAPI(swagger) specs + +**Output Message** : The schema '{json path}' is considered an object but without a 'type:object', please add the missing 'type:object'. + +**Description**: The rule should apply to any schema with "properties" or "additionalProperties". It is to ensure a schema with "properties" or "additionalProperties" must have explicit "type:object" statement, which means a schema is an object. + +**CreatedAt**: May 24, 2021 + +**LastModifiedAt**: May 24, 2021 + +**Why this rule is important**: The semantics of with and without "type:object" are different. With “type:object” means “it has to be an object”. Without “type: object” means “it could be any type”. Azure SDK Track 2 generator will honor the difference, and generate different SDK codes. +A free-form object would like: + +**How to fix the violation**: +Just add the missing 'type:object'. + +The following would be valid: + +```json + "foo": { + "type":"object", + "properties": { + "a" : { + "type":"string" + } + ... + } + } +``` +The following would be invalid by default (unless you do it on purpose , then a suppression is required): + +```json + "foo": { + "properties": { + "a" : { + "type":"string" + } + ... + } +``` +Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) diff --git a/documentation/samplefiles-dp/Microsoft.YourServiceName/stable/YYYY-MM-DD/YourServiceName.json b/documentation/samplefiles-dp/Microsoft.YourServiceName/stable/YYYY-MM-DD/YourServiceName.json new file mode 100644 index 000000000000..e85f41fb8930 --- /dev/null +++ b/documentation/samplefiles-dp/Microsoft.YourServiceName/stable/YYYY-MM-DD/YourServiceName.json @@ -0,0 +1,126 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-12-01", + "title": "YourServiceName", + "description": "Description of the new service" + }, + "x-ms-parameterized-host": { + "hostTemplate": "{endpoint}", + "useSchemePrefix": true, + "positionInOperation": "first", + "parameters": [ + { + "name": "endpoint", + "description": "The endpoint of the service", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true + } + ] + }, + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/service/{accountName}": { + "get": { + "tags": [ + "Tag1" + ], + "operationId": "OperationGroup_Get", + "x-ms-examples": { + "BatchAccountDelete": { + "$ref": "./examples/OperationGroupGet.json" + } + }, + "description": "This is a sample get operation, please see guidelines in azure-rest-api-specs repository for more info", + "parameters": [ + { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the storage account." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Describe the result of a successful operation.", + "schema": { + "$ref": "#/definitions/Result" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "Result": { + "description": "Sample result definition", + "properties": { + "sampleProperty": { + "type": "string", + "description": "Sample property of type string" + } + } + }, + "ErrorResponse": { + "description": "Error response.", + "properties": { + "error": { + "$ref": "#/definitions/ErrorDefinition", + "description": "The error details." + } + } + }, + "ErrorDefinition": { + "description": "Error definition.", + "properties": { + "code": { + "description": "Service specific error code which serves as the substatus for the HTTP error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "Description of the error.", + "type": "string", + "readOnly": true + }, + "details": { + "description": "Internal error details.", + "type": "array", + "items": { + "$ref": "#/definitions/ErrorDefinition" + }, + "readOnly": true + } + } + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to be used with the HTTP request." + } + } +} diff --git a/documentation/samplefiles-dp/Microsoft.YourServiceName/stable/YYYY-MM-DD/examples/OperationGroupGet.json b/documentation/samplefiles-dp/Microsoft.YourServiceName/stable/YYYY-MM-DD/examples/OperationGroupGet.json new file mode 100644 index 000000000000..32694aad128b --- /dev/null +++ b/documentation/samplefiles-dp/Microsoft.YourServiceName/stable/YYYY-MM-DD/examples/OperationGroupGet.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "accountName": "sampleacct", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "name": "sampleacct", + "location": "uswest", + "id": "/service/sampleacct", + "type": "Microsoft.YourServiceName/YourServiceName" + } + } + } +} diff --git a/documentation/samplefiles-dp/samplereadme.md b/documentation/samplefiles-dp/samplereadme.md new file mode 100644 index 000000000000..a420e16a77a3 --- /dev/null +++ b/documentation/samplefiles-dp/samplereadme.md @@ -0,0 +1,39 @@ +# [[ServiceName]] + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for [[ServiceName]]. + +## Getting Started + +To build the SDKs for My API, simply install AutoRest via `npm` (`npm install -g autorest`) and then run: + +> `autorest readme.md` + +To see additional help and options, run: + +> `autorest --help` + +For other options on installation see [Installing AutoRest](https://aka.ms/autorest/install) on the AutoRest github page. + +--- + +## Configuration + +### Basic Information + +These are the global settings for the [[ServiceName]]. + +```yaml +openapi-type: [[OpenApiType]] +tag: package-[[Version]] +``` + +### Tag: package-[[Version]] + +These settings apply only when `--tag=package-[[Version]]` is specified on the command line. + +```yaml $(tag) == 'package-[[Version]]' +input-file: + - [[ResourceProviderName]]/[[ReleaseState]]/[[Version]]/[[ServiceName]].json +``` diff --git a/documentation/samplefiles/readme.az.md b/documentation/samplefiles/readme.az.md index 704bc05715eb..ab6eaf1557a1 100644 --- a/documentation/samplefiles/readme.az.md +++ b/documentation/samplefiles/readme.az.md @@ -11,7 +11,7 @@ az: package-name: azure-mgmt-[[ServiceName]] az-output-folder: $(azure-cli-extension-folder)/src/[[ServiceName]] python-sdk-output-folder: "$(az-output-folder)/azext_[[ServiceName]]/vendored_sdks/[[ServiceName]]" -# add additinal configuration here specific for Azure CLI +# add additional configuration here specific for Azure CLI # refer to the faq.md for more details ``` diff --git a/documentation/samplefiles/readme.azureresourceschema.md b/documentation/samplefiles/readme.azureresourceschema.md deleted file mode 100644 index 046d4f19febb..000000000000 --- a/documentation/samplefiles/readme.azureresourceschema.md +++ /dev/null @@ -1,23 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-[[ServiceName]]-[[Version]] - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-[[ServiceName]]-[[Version]] and azureresourceschema - -``` yaml $(tag) == 'schema-[[ServiceName]]-[[Version]]' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - [[ResourceProviderName]]/[[ReleaseState]]/[[Version]]/[[ServiceName]].json -``` diff --git a/documentation/samplefiles/readme.go.md b/documentation/samplefiles/readme.go.md index 8b12e08878d5..2bef6f16af36 100644 --- a/documentation/samplefiles/readme.go.md +++ b/documentation/samplefiles/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ```yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: [[ServiceName]] clear-output-folder: true ``` diff --git a/documentation/samplefiles/readme.python.md b/documentation/samplefiles/readme.python.md index 9dd0b6674244..78ad9e67d936 100644 --- a/documentation/samplefiles/readme.python.md +++ b/documentation/samplefiles/readme.python.md @@ -9,6 +9,7 @@ license-header: MICROSOFT_MIT_NO_VERSION package-name: azure-mgmt-[[ServiceName]] no-namespace-folders: true package-version: 1.0.0b1 +clear-output-folder: true ``` ``` yaml $(python-mode) == 'update' && $(track2) diff --git a/documentation/samplefiles/samplereadme.md b/documentation/samplefiles/samplereadme.md index b26c8ef0b7fb..bce1228cf02e 100644 --- a/documentation/samplefiles/samplereadme.md +++ b/documentation/samplefiles/samplereadme.md @@ -54,8 +54,6 @@ swagger-to-sdk: - repo: azure-sdk-for-go - repo: azure-sdk-for-js - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js [[ServiceName]]/resource-manager - repo: azure-cli-extensions ``` ## Az @@ -77,7 +75,3 @@ See configuration in [readme.typescript.md](./readme.typescript.md) ## CSharp See configuration in [readme.csharp.md](./readme.csharp.md) - -## AzureResourceSchema - -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/package-lock.json b/package-lock.json index 4097b8d804f1..c112b7c88c93 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2952,9 +2952,9 @@ "dev": true }, "handlebars": { - "version": "4.7.6", - "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.6.tgz", - "integrity": "sha512-1f2BACcBfiwAfStCKZNrUCgqNZkGsAT7UM3kkYtXuLo0KnaVfjKOyf7PRzB6++aK9STyT1Pd2ZCPe3EGOXleXA==", + "version": "4.7.7", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.7.tgz", + "integrity": "sha512-aAcXm5OAfE/8IXkcZvCepKU3VzW1/39Fb5ZuqMtgI/hT8X2YgoMvBY5dLhq/cpOvw7Lk1nK/UF71aLG/ZnVYRA==", "dev": true, "requires": { "minimist": "^1.2.5", @@ -3764,7 +3764,7 @@ "requires": { "esprima": "1.2.2", "static-eval": "2.0.2", - "underscore": "1.7.0" + "underscore": "^1.12.1" }, "dependencies": { "esprima": { @@ -3850,9 +3850,9 @@ } }, "lodash": { - "version": "4.17.19", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.19.tgz", - "integrity": "sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ==", + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", "dev": true }, "lodash.flattendeep": { @@ -5957,13 +5957,12 @@ "version": "3.12.1", "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.12.1.tgz", "integrity": "sha512-o8lHP20KjIiQe5b/67Rh68xEGRrc2SRsCuuoYclXXoC74AfSRGblU1HKzJWH3HxPZ+Ort85fWHpSX7KwBUC9CQ==", - "dev": true, "optional": true }, "underscore": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.7.0.tgz", - "integrity": "sha1-a7rwh3UA02vjTsqlhODbn+8DUgk=", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.12.1.tgz", + "integrity": "sha512-hEQt0+ZLDVUMhebKxL4x1BTtDY7bavVofhZ9KZ4aI26X9SRaE+Y3m83XUL1UP2jn8ynjndwCCpEHdUG+9pP1Tw==", "dev": true }, "union-value": { @@ -6362,9 +6361,9 @@ "dev": true }, "y18n": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", - "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.1.tgz", + "integrity": "sha512-wNcy4NvjMYL8gogWWYAO7ZFWFfHcbdbE57tZO8e4cbpj8tfUcwrwqSl3ad8HxpYWCdXcJUCeKKZS62Av1affwQ==", "dev": true }, "yargs": { @@ -6667,12 +6666,6 @@ "requires": { "ms": "2.1.2" } - }, - "lodash": { - "version": "4.17.20", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.20.tgz", - "integrity": "sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA==", - "dev": true } } }, diff --git a/profile/2020-09-01-hybrid.json b/profile/2020-09-01-hybrid.json index 47a2d704fa97..de3ab30df30e 100644 --- a/profile/2020-09-01-hybrid.json +++ b/profile/2020-09-01-hybrid.json @@ -24,19 +24,19 @@ "2015-07-01": [ { "resourceType": "permissions", - "path": "https://raw.githubusercontent.com/Azure/azure-rest-api-specs/master/specification/authorization/resource-manager/Microsoft.Authorization/stable/2015-07-01/authorization.json" + "path": "https://raw.githubusercontent.com/Azure/azure-rest-api-specs/master/specification/authorization/resource-manager/Microsoft.Authorization/stable/2015-07-01/authorization-ClassicAdminCalls.json" }, { "resourceType": "roleAssignments", - "path": "https://raw.githubusercontent.com/Azure/azure-rest-api-specs/master/specification/authorization/resource-manager/Microsoft.Authorization/stable/2015-07-01/authorization.json" + "path": "https://raw.githubusercontent.com/Azure/azure-rest-api-specs/master/specification/authorization/resource-manager/Microsoft.Authorization/stable/2015-07-01/authorization-RoleAssignmentsCalls.json" }, { "resourceType": "roleDefinitions", - "path": "https://raw.githubusercontent.com/Azure/azure-rest-api-specs/master/specification/authorization/resource-manager/Microsoft.Authorization/stable/2015-07-01/authorization.json" + "path": "https://raw.githubusercontent.com/Azure/azure-rest-api-specs/master/specification/authorization/resource-manager/Microsoft.Authorization/stable/2015-07-01/authorization-RoleDefinitionsCalls.json" }, { "resourceType": "providerOperations", - "path": "https://raw.githubusercontent.com/Azure/azure-rest-api-specs/master/specification/authorization/resource-manager/Microsoft.Authorization/stable/2015-07-01/authorization.json" + "path": "https://raw.githubusercontent.com/Azure/azure-rest-api-specs/master/specification/authorization/resource-manager/Microsoft.Authorization/stable/2015-07-01/authorization-ProviderOperationsCalls.json" } ] }, diff --git a/specification/EnterpriseKnowledgeGraph/resource-manager/readme.azureresourceschema.md b/specification/EnterpriseKnowledgeGraph/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index b91b439d843d..000000000000 --- a/specification/EnterpriseKnowledgeGraph/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,24 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-enterpriseknowledgegraph-2018-12-03 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-enterpriseknowledgegraph-2018-12-03 and azureresourceschema - -``` yaml $(tag) == 'schema-enterpriseknowledgegraph-2018-12-03' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.EnterpriseKnowledgeGraph/preview/2018-12-03/EnterpriseKnowledgeGraphSwagger.json - -``` diff --git a/specification/EnterpriseKnowledgeGraph/resource-manager/readme.go.md b/specification/EnterpriseKnowledgeGraph/resource-manager/readme.go.md index 80040132bf08..dd0d01ccdeb6 100644 --- a/specification/EnterpriseKnowledgeGraph/resource-manager/readme.go.md +++ b/specification/EnterpriseKnowledgeGraph/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: enterpriseknowledgegraphservice clear-output-folder: true ``` diff --git a/specification/EnterpriseKnowledgeGraph/resource-manager/readme.md b/specification/EnterpriseKnowledgeGraph/resource-manager/readme.md index f829ac9dfbb7..4f18a8ac325f 100644 --- a/specification/EnterpriseKnowledgeGraph/resource-manager/readme.md +++ b/specification/EnterpriseKnowledgeGraph/resource-manager/readme.md @@ -76,8 +76,6 @@ swagger-to-sdk: - repo: azure-sdk-for-python - repo: azure-sdk-for-go - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js EnterpriseKnowledgeGraph/resource-manager ``` ## C# @@ -94,7 +92,5 @@ csharp: clear-output-folder: true ``` -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/addons/resource-manager/readme.azureresourceschema.md b/specification/addons/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index ae05babd8222..000000000000 --- a/specification/addons/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,36 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-addons-2018-03-01 - - tag: schema-addons-2017-05-15 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-addons-2018-03-01 and azureresourceschema - -``` yaml $(tag) == 'schema-addons-2018-03-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Addons/preview/2018-03-01/addons-swagger.json - -``` - -### Tag: schema-addons-2017-05-15 and azureresourceschema - -``` yaml $(tag) == 'schema-addons-2017-05-15' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Addons/preview/2017-05-15/Addons.json - -``` diff --git a/specification/addons/resource-manager/readme.md b/specification/addons/resource-manager/readme.md index 324507aa8113..2f93f9bd1cdb 100644 --- a/specification/addons/resource-manager/readme.md +++ b/specification/addons/resource-manager/readme.md @@ -58,8 +58,6 @@ This is not used by Autorest itself. ``` yaml $(swagger-to-sdk) swagger-to-sdk: - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js addons/resource-manager ``` --- @@ -193,7 +191,5 @@ generate-interface: true -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/adhybridhealthservice/resource-manager/readme.azureresourceschema.md b/specification/adhybridhealthservice/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 7e60bb0023bb..000000000000 --- a/specification/adhybridhealthservice/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,24 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-adhybridhealthservice-2014-01-01 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-adhybridhealthservice-2014-01-01 and azureresourceschema - -``` yaml $(tag) == 'schema-adhybridhealthservice-2014-01-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ADHybridHealthService/stable/2014-01-01/ADHybridHealthService.json - -``` diff --git a/specification/adhybridhealthservice/resource-manager/readme.go.md b/specification/adhybridhealthservice/resource-manager/readme.go.md index 819cef80d451..125af9e32ff1 100644 --- a/specification/adhybridhealthservice/resource-manager/readme.go.md +++ b/specification/adhybridhealthservice/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: adhybridhealthservice clear-output-folder: true ``` diff --git a/specification/adhybridhealthservice/resource-manager/readme.md b/specification/adhybridhealthservice/resource-manager/readme.md index 3fc780ac369b..99e1d0073cb3 100644 --- a/specification/adhybridhealthservice/resource-manager/readme.md +++ b/specification/adhybridhealthservice/resource-manager/readme.md @@ -55,8 +55,6 @@ swagger-to-sdk: - repo: azure-sdk-for-go - repo: azure-sdk-for-node - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js adhybridhealthservice/resource-manager ``` @@ -97,7 +95,5 @@ See configuration in [readme.go.md](./readme.go.md) See configuration in [readme.java.md](./readme.java.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/adp/resource-manager/readme.azureresourceschema.md b/specification/adp/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 870c1a9ea328..000000000000 --- a/specification/adp/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,18 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: package-2020-07-01-preview - - tag: package-2021-02-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -``` yaml $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas -``` diff --git a/specification/adp/resource-manager/readme.go.md b/specification/adp/resource-manager/readme.go.md index 826064aa1b8b..404729b32c7f 100644 --- a/specification/adp/resource-manager/readme.go.md +++ b/specification/adp/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ```yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: adp clear-output-folder: true ``` diff --git a/specification/adp/resource-manager/readme.md b/specification/adp/resource-manager/readme.md index 54adcfff3aae..533f76323c23 100644 --- a/specification/adp/resource-manager/readme.md +++ b/specification/adp/resource-manager/readme.md @@ -31,6 +31,8 @@ openapi-subtype: rpaas tag: package-2021-02-01-preview ``` +### Tag: package-2020-07-01-preview + ```yaml $(tag) == 'package-2020-07-01-preview' version: 2020-07-01-preview version-with-underscores: 2020_07_01_preview @@ -38,6 +40,8 @@ input-file: - Microsoft.AutonomousDevelopmentPlatform/preview/2020-07-01-preview/adp.json ``` +### Tag: package-2021-02-01-preview + ```yaml $(tag) == 'package-2021-02-01-preview' version: 2021-02-01-preview version-with-underscores: 2021_02_01_preview @@ -65,8 +69,6 @@ swagger-to-sdk: - bundle install && rake arm:regen_all_profiles['azure_mgmt_adp'] - repo: azure-cli-extensions - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js adp/resource-manager ``` ## Go @@ -89,6 +91,4 @@ See configuration in [readme.typescript.md](./readme.typescript.md) See configuration in [readme.csharp.md](./readme.csharp.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/adp/resource-manager/readme.terraform.md b/specification/adp/resource-manager/readme.terraform.md new file mode 100644 index 000000000000..d5e4339768cc --- /dev/null +++ b/specification/adp/resource-manager/readme.terraform.md @@ -0,0 +1,20 @@ + +## terraform + +These settings apply only when `--terraform` is specified on the command line. + +``` yaml $(terraform) +terraform: + cli-name: adp + package-name: adp +clear-output-folder: true +output-folder: $(terraform-output-folder)/adp +``` + +``` yaml $(tag) == 'package-2020-07-01-preview' && $(terraform) +gosdk-folder: services/preview/adp/mgmt/2020-07-01-preview/adp +``` + +``` yaml $(tag) == 'package-2021-02-01-preview' && $(terraform) +gosdk-folder: services/preview/adp/mgmt/2021-02-01-preview/adp +``` \ No newline at end of file diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/stable/2020-01-01/advisor.json b/specification/advisor/resource-manager/Microsoft.Advisor/stable/2020-01-01/advisor.json index 79c4e4c96d42..789f65d262af 100644 --- a/specification/advisor/resource-manager/Microsoft.Advisor/stable/2020-01-01/advisor.json +++ b/specification/advisor/resource-manager/Microsoft.Advisor/stable/2020-01-01/advisor.json @@ -46,7 +46,8 @@ "description": "Client sent unknown metadata name", "schema": { "$ref": "#/definitions/ARMErrorResponseBody" - } + }, + "x-ms-error-response": true }, "default": { "description": "Error response describing why the operation failed.", @@ -589,7 +590,8 @@ "description": "Suppression name is not specified or Suppression Id not found.", "schema": { "$ref": "#/definitions/ArmErrorResponse" - } + }, + "x-ms-error-response": true }, "default": { "description": "Error response describing why the operation failed.", @@ -657,7 +659,8 @@ "description": "Recommendation to be suppressed is not found.", "schema": { "$ref": "#/definitions/ArmErrorResponse" - } + }, + "x-ms-error-response": true }, "default": { "description": "Error response describing why the operation failed.", diff --git a/specification/advisor/resource-manager/readme.azureresourceschema.md b/specification/advisor/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 8419f1c1778c..000000000000 --- a/specification/advisor/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,72 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-advisor-2020-07-01-preview - - tag: schema-advisor-2020-01-01 - - tag: schema-advisor-2017-04-19 - - tag: schema-advisor-2017-03-31 - - tag: schema-advisor-2016-07-12-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-advisor-2020-07-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-advisor-2020-07-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Advisor/preview/2020-07-01-preview/advisor.json - -``` - -### Tag: schema-advisor-2020-01-01 and azureresourceschema - -``` yaml $(tag) == 'schema-advisor-2020-01-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Advisor/stable/2020-01-01/advisor.json - -``` - -### Tag: schema-advisor-2017-04-19 and azureresourceschema - -``` yaml $(tag) == 'schema-advisor-2017-04-19' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Advisor/stable/2017-04-19/advisor.json - -``` - -### Tag: schema-advisor-2017-03-31 and azureresourceschema - -``` yaml $(tag) == 'schema-advisor-2017-03-31' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Advisor/stable/2017-03-31/advisor.json - -``` - -### Tag: schema-advisor-2016-07-12-preview and azureresourceschema - -``` yaml $(tag) == 'schema-advisor-2016-07-12-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Advisor/preview/2016-07-12-preview/advisor.json - -``` diff --git a/specification/advisor/resource-manager/readme.go.md b/specification/advisor/resource-manager/readme.go.md index e615fb396465..1d5c401f9e29 100644 --- a/specification/advisor/resource-manager/readme.go.md +++ b/specification/advisor/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: advisor clear-output-folder: true ``` diff --git a/specification/advisor/resource-manager/readme.md b/specification/advisor/resource-manager/readme.md index 6f49edb7e77f..d631a4e49820 100644 --- a/specification/advisor/resource-manager/readme.md +++ b/specification/advisor/resource-manager/readme.md @@ -91,8 +91,6 @@ swagger-to-sdk: - repo: azure-sdk-for-js - repo: azure-sdk-for-node - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js advisor/resource-manager ``` ## Python @@ -162,7 +160,5 @@ csharp: See configuration in [readme.java.md](./readme.java.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/agfood.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/agfood.json new file mode 100644 index 000000000000..945954613e93 --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/agfood.json @@ -0,0 +1,11826 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure AgFoodPlatform Data Plane Service", + "description": "APIs documentation for Azure AgPlatform DataPlane Service.", + "version": "2021-03-31-preview" + }, + "x-ms-parameterized-host": { + "hostTemplate": "{Endpoint}", + "useSchemePrefix": false, + "parameters": [ + { + "$ref": "#/parameters/Endpoint" + } + ] + }, + "paths": { + "/farmers/{farmerId}/application-data": { + "get": { + "tags": [ + "ApplicationData" + ], + "description": "Returns a paginated list of application data resources under a particular farm.", + "operationId": "ApplicationData_ListByFarmerId", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "farmerId", + "description": "ID of the associated farmer.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "minAvgMaterial", + "description": "Minimum average amount of material applied during the application (inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "maxAvgMaterial", + "description": "Maximum average amount of material applied during the application (inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "minTotalMaterial", + "description": "Minimum total amount of material applied during the application (inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "maxTotalMaterial", + "description": "Maximum total amount of material applied during the application (inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "sources", + "description": "Sources of the operation data.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "associatedBoundaryIds", + "description": "Boundary IDs associated with operation data.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "operationBoundaryIds", + "description": "Operation boundary IDs associated with operation data.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "minOperationStartDateTime", + "description": "Minimum start date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxOperationStartDateTime", + "description": "Maximum start date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "minOperationEndDateTime", + "description": "Minimum end date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxOperationEndDateTime", + "description": "Maximum end date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "minOperationModifiedDateTime", + "description": "Minimum modified date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxOperationModifiedDateTime", + "description": "Maximum modified date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "minArea", + "description": "Minimum area for which operation was applied (inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "maxArea", + "description": "Maximum area for which operation was applied (inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "ids", + "description": "Ids of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "names", + "description": "Names of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "propertyFilters", + "description": "Filters on key-value pairs within the Properties object.\r\neg. \"{testKey} eq {testValue}\".", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "statuses", + "description": "Statuses of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "minCreatedDateTime", + "description": "Minimum creation date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxCreatedDateTime", + "description": "Maximum creation date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "minLastModifiedDateTime", + "description": "Minimum last modified date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxLastModifiedDateTime", + "description": "Maximum last modified date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "$maxPageSize", + "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.", + "type": "integer", + "format": "int32", + "default": 50, + "maximum": 1000, + "minimum": 10 + }, + { + "in": "query", + "name": "$skipToken", + "description": "Skip token for getting next set of results.", + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ApplicationDataListResponse" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "ApplicationData_ListByFarmerId": { + "$ref": "./examples/ApplicationData_ListByFarmerId.json" + } + } + } + }, + "/application-data": { + "get": { + "tags": [ + "ApplicationData" + ], + "description": "Returns a paginated list of application data resources across all farmers.", + "operationId": "ApplicationData_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "query", + "name": "minAvgMaterial", + "description": "Minimum average amount of material applied during the application (inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "maxAvgMaterial", + "description": "Maximum average amount of material applied during the application (inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "minTotalMaterial", + "description": "Minimum total amount of material applied during the application (inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "maxTotalMaterial", + "description": "Maximum total amount of material applied during the application (inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "sources", + "description": "Sources of the operation data.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "associatedBoundaryIds", + "description": "Boundary IDs associated with operation data.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "operationBoundaryIds", + "description": "Operation boundary IDs associated with operation data.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "minOperationStartDateTime", + "description": "Minimum start date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxOperationStartDateTime", + "description": "Maximum start date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "minOperationEndDateTime", + "description": "Minimum end date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxOperationEndDateTime", + "description": "Maximum end date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "minOperationModifiedDateTime", + "description": "Minimum modified date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxOperationModifiedDateTime", + "description": "Maximum modified date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "minArea", + "description": "Minimum area for which operation was applied (inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "maxArea", + "description": "Maximum area for which operation was applied (inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "ids", + "description": "Ids of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "names", + "description": "Names of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "propertyFilters", + "description": "Filters on key-value pairs within the Properties object.\r\neg. \"{testKey} eq {testValue}\".", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "statuses", + "description": "Statuses of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "minCreatedDateTime", + "description": "Minimum creation date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxCreatedDateTime", + "description": "Maximum creation date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "minLastModifiedDateTime", + "description": "Minimum last modified date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxLastModifiedDateTime", + "description": "Maximum last modified date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "$maxPageSize", + "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.", + "type": "integer", + "format": "int32", + "default": 50, + "maximum": 1000, + "minimum": 10 + }, + { + "in": "query", + "name": "$skipToken", + "description": "Skip token for getting next set of results.", + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ApplicationDataListResponse" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "ApplicationData_List": { + "$ref": "./examples/ApplicationData_List.json" + } + } + } + }, + "/farmers/{farmerId}/application-data/{applicationDataId}": { + "get": { + "tags": [ + "ApplicationData" + ], + "description": "Get a specified application data resource under a particular farmer.", + "operationId": "ApplicationData_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "farmerId", + "description": "ID of the associated farmer resource.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "applicationDataId", + "description": "ID of the application data resource.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ApplicationData" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ApplicationData_Get": { + "$ref": "./examples/ApplicationData_Get.json" + } + } + }, + "patch": { + "tags": [ + "ApplicationData" + ], + "description": "Creates or updates an application data resource under a particular farmer.", + "operationId": "ApplicationData_CreateOrUpdate", + "consumes": [ + "application/merge-patch+json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "farmerId", + "description": "ID of the associated farmer.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "applicationDataId", + "description": "ID of the application data resource.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + }, + { + "in": "body", + "name": "applicationData", + "description": "Application data resource payload to create or update.", + "schema": { + "$ref": "#/definitions/ApplicationData" + } + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ApplicationData" + } + }, + "201": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ApplicationData" + } + } + }, + "x-ms-examples": { + "ApplicationData_CreateOrUpdate": { + "$ref": "./examples/ApplicationData_CreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "ApplicationData" + ], + "description": "Deletes a specified application data resource under a particular farmer.", + "operationId": "ApplicationData_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "farmerId", + "description": "ID of the associated farmer resource.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "applicationDataId", + "description": "ID of the application data.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "Success" + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ApplicationData_Delete": { + "$ref": "./examples/ApplicationData_Delete.json" + } + } + } + }, + "/farmers/{farmerId}/attachments": { + "get": { + "tags": [ + "Attachments" + ], + "description": "Returns a paginated list of attachment resources under a particular farmer.", + "operationId": "Attachments_ListByFarmerId", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "farmerId", + "description": "ID of the associated farmer.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "resourceIds", + "description": "Resource Ids of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "resourceTypes", + "description": "Resource Types of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "ids", + "description": "Ids of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "names", + "description": "Names of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "propertyFilters", + "description": "Filters on key-value pairs within the Properties object.\r\neg. \"{testKey} eq {testValue}\".", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "statuses", + "description": "Statuses of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "minCreatedDateTime", + "description": "Minimum creation date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxCreatedDateTime", + "description": "Maximum creation date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "minLastModifiedDateTime", + "description": "Minimum last modified date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxLastModifiedDateTime", + "description": "Maximum last modified date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "$maxPageSize", + "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.", + "type": "integer", + "format": "int32", + "default": 50, + "maximum": 1000, + "minimum": 10 + }, + { + "in": "query", + "name": "$skipToken", + "description": "Skip token for getting next set of results.", + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/AttachmentListResponse" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Attachments_ListByFarmerId": { + "$ref": "./examples/Attachments_ListByFarmerId.json" + } + } + } + }, + "/farmers/{farmerId}/attachments/{attachmentId}": { + "get": { + "tags": [ + "Attachments" + ], + "description": "Gets a specified attachment resource under a particular farmer.", + "operationId": "Attachments_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "farmerId", + "description": "ID of the associated farmer.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "attachmentId", + "description": "ID of the attachment.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Attachment" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Attachments_Get": { + "$ref": "./examples/Attachments_Get.json" + } + } + }, + "patch": { + "tags": [ + "Attachments" + ], + "description": "Creates or updates an attachment resource under a particular farmer.", + "operationId": "Attachments_CreateOrUpdate", + "consumes": [ + "multipart/form-data" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "farmerId", + "description": "ID of the associated farmer resource.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "attachmentId", + "description": "ID of the attachment resource.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + }, + { + "in": "formData", + "name": "file", + "description": "File to be uploaded.", + "type": "file", + "format": "binary" + }, + { + "in": "formData", + "name": "FarmerId", + "description": "Farmer id for this attachment.", + "type": "string" + }, + { + "in": "formData", + "name": "ResourceId", + "description": "Associated Resource id for this attachment.", + "type": "string" + }, + { + "in": "formData", + "name": "ResourceType", + "description": "Associated Resource type for this attachment\r\ni.e. Farmer, Farm, Field, SeasonalField, Boundary, FarmOperationApplicationData, HarvestData, TillageData, PlantingData.", + "type": "string" + }, + { + "in": "formData", + "name": "OriginalFileName", + "description": "Original File Name for this attachment.", + "type": "string" + }, + { + "in": "formData", + "name": "Id", + "description": "Unique id.", + "type": "string" + }, + { + "in": "formData", + "name": "Status", + "description": "Status of the resource.", + "type": "string", + "maxLength": 100, + "minLength": 0 + }, + { + "in": "formData", + "name": "CreatedDateTime", + "description": "Date when resource was created.", + "type": "string", + "format": "date-time" + }, + { + "in": "formData", + "name": "ModifiedDateTime", + "description": "Date when resource was last modified.", + "type": "string", + "format": "date-time" + }, + { + "in": "formData", + "name": "Name", + "description": "Name to identify resource.", + "type": "string", + "maxLength": 100, + "minLength": 0 + }, + { + "in": "formData", + "name": "Description", + "description": "Textual description of resource.", + "type": "string", + "maxLength": 500, + "minLength": 0 + }, + { + "in": "formData", + "name": "ETag", + "description": "The ETag value to implement optimistic concurrency.", + "type": "string" + } + ], + "responses": { + "201": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Attachment" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Attachment" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Attachments_CreateOrUpdate": { + "$ref": "./examples/Attachments_CreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "Attachments" + ], + "description": "Deletes a specified attachment resource under a particular farmer.", + "operationId": "Attachments_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "farmerId", + "description": "ID of the farmer.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "attachmentId", + "description": "ID of the attachment.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "Success" + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Attachments_Delete": { + "$ref": "./examples/Attachments_Delete.json" + } + } + } + }, + "/farmers/{farmerId}/attachments/{attachmentId}/file": { + "get": { + "tags": [ + "Attachments" + ], + "description": "Downloads and returns attachment as response for the given input filePath.", + "operationId": "Attachments_Download", + "produces": [ + "application/octet-stream", + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "farmerId", + "description": "ID of the associated farmer.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "attachmentId", + "description": "ID of attachment to be downloaded.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "format": "binary", + "type": "file" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Attachments_Download": { + "$ref": "./examples/Attachments_Download.json" + } + } + } + }, + "/farmers/{farmerId}/boundaries": { + "get": { + "tags": [ + "Boundaries" + ], + "description": "Returns a paginated list of boundary resources under a particular farmer.", + "operationId": "Boundaries_ListByFarmerId", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "farmerId", + "description": "ID of the associated farmer.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "isPrimary", + "description": "Is the boundary primary.", + "type": "boolean" + }, + { + "in": "query", + "name": "parentType", + "description": "Type of the parent it belongs to.", + "type": "string" + }, + { + "in": "query", + "name": "parentIds", + "description": "Parent Ids of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "minAcreage", + "description": "Minimum acreage of the boundary (inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "maxAcreage", + "description": "Maximum acreage of the boundary (inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "ids", + "description": "Ids of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "names", + "description": "Names of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "propertyFilters", + "description": "Filters on key-value pairs within the Properties object.\r\neg. \"{testKey} eq {testValue}\".", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "statuses", + "description": "Statuses of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "minCreatedDateTime", + "description": "Minimum creation date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxCreatedDateTime", + "description": "Maximum creation date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "minLastModifiedDateTime", + "description": "Minimum last modified date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxLastModifiedDateTime", + "description": "Maximum last modified date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "$maxPageSize", + "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.", + "type": "integer", + "format": "int32", + "default": 50, + "maximum": 1000, + "minimum": 10 + }, + { + "in": "query", + "name": "$skipToken", + "description": "Skip token for getting next set of results.", + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/BoundaryListResponse" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Boundaries_ListByFarmerId": { + "$ref": "./examples/Boundaries_ListByFarmerId.json" + } + } + }, + "post": { + "tags": [ + "Boundaries" + ], + "description": "Search for boundaries by fields and intersecting geometry.", + "operationId": "Boundaries_SearchByFarmerId", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "farmerId", + "description": "ID of the farmer.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + }, + { + "in": "body", + "name": "query", + "description": "Query filters.", + "schema": { + "$ref": "#/definitions/SearchBoundaryQuery" + } + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/BoundaryListResponse" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Boundaries_SearchByFarmerId": { + "$ref": "./examples/Boundaries_SearchByFarmerId.json" + } + } + } + }, + "/boundaries": { + "get": { + "tags": [ + "Boundaries" + ], + "description": "Returns a paginated list of boundary resources across all farmers.", + "operationId": "Boundaries_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "query", + "name": "isPrimary", + "description": "Is the boundary primary.", + "type": "boolean" + }, + { + "in": "query", + "name": "parentType", + "description": "Type of the parent it belongs to.", + "type": "string" + }, + { + "in": "query", + "name": "parentIds", + "description": "Parent Ids of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "minAcreage", + "description": "Minimum acreage of the boundary (inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "maxAcreage", + "description": "Maximum acreage of the boundary (inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "ids", + "description": "Ids of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "names", + "description": "Names of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "propertyFilters", + "description": "Filters on key-value pairs within the Properties object.\r\neg. \"{testKey} eq {testValue}\".", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "statuses", + "description": "Statuses of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "minCreatedDateTime", + "description": "Minimum creation date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxCreatedDateTime", + "description": "Maximum creation date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "minLastModifiedDateTime", + "description": "Minimum last modified date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxLastModifiedDateTime", + "description": "Maximum last modified date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "$maxPageSize", + "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.", + "type": "integer", + "format": "int32", + "default": 50, + "maximum": 1000, + "minimum": 10 + }, + { + "in": "query", + "name": "$skipToken", + "description": "Skip token for getting next set of results.", + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/BoundaryListResponse" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Boundaries_List": { + "$ref": "./examples/Boundaries_List.json" + } + } + }, + "post": { + "tags": [ + "Boundaries" + ], + "description": "Search for boundaries across all farmers by fields and intersecting geometry.", + "operationId": "Boundaries_Search", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + }, + { + "in": "body", + "name": "query", + "description": "Query filters.", + "schema": { + "$ref": "#/definitions/SearchBoundaryQuery" + } + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/BoundaryListResponse" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Boundaries_Search": { + "$ref": "./examples/Boundaries_Search.json" + } + } + } + }, + "/boundaries/cascade-delete/{jobId}": { + "get": { + "tags": [ + "Boundaries" + ], + "description": "Get cascade delete job for specified boundary.", + "operationId": "Boundaries_GetCascadeDeleteJobDetails", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "jobId", + "description": "ID of the job.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/CascadeDeleteJob" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Boundaries_GetCascadeDeleteJobDetails": { + "$ref": "./examples/Boundaries_GetCascadeDeleteJobDetails.json" + } + } + }, + "put": { + "tags": [ + "Boundaries" + ], + "description": "Create a cascade delete job for specified boundary.", + "operationId": "Boundaries_CreateCascadeDeleteJob", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "jobId", + "description": "Job ID supplied by end user.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "farmerId", + "description": "ID of the associated farmer.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "boundaryId", + "description": "ID of the boundary to be deleted.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Success", + "schema": { + "$ref": "#/definitions/CascadeDeleteJob" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Boundaries_CreateCascadeDeleteJob": { + "$ref": "./examples/Boundaries_CreateCascadeDeleteJob.json" + } + } + } + }, + "/farmers/{farmerId}/boundaries/{boundaryId}": { + "get": { + "tags": [ + "Boundaries" + ], + "description": "Gets a specified boundary resource under a particular farmer.", + "operationId": "Boundaries_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "farmerId", + "description": "ID of the associated farmer.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "boundaryId", + "description": "ID of the boundary.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Boundary" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Boundaries_Get": { + "$ref": "./examples/Boundaries_Get.json" + } + } + }, + "patch": { + "tags": [ + "Boundaries" + ], + "description": "Creates or updates a boundary resource.", + "operationId": "Boundaries_CreateOrUpdate", + "consumes": [ + "application/merge-patch+json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "farmerId", + "description": "ID of the farmer resource.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "boundaryId", + "description": "ID of the boundary resource.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + }, + { + "in": "body", + "name": "boundary", + "description": "Boundary resource payload to create or update.", + "schema": { + "$ref": "#/definitions/Boundary" + } + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Boundary" + } + }, + "201": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Boundary" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Boundaries_CreateOrUpdate": { + "$ref": "./examples/Boundaries_CreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "Boundaries" + ], + "description": "Deletes a specified boundary resource under a particular farmer.", + "operationId": "Boundaries_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "farmerId", + "description": "ID of the farmer.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "boundaryId", + "description": "ID of the boundary.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "Success" + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Boundaries_Delete": { + "$ref": "./examples/Boundaries_Delete.json" + } + } + } + }, + "/farmers/{farmerId}/boundaries/{boundaryId}/overlap": { + "get": { + "tags": [ + "Boundaries" + ], + "description": "Returns overlapping acreage between two boundary Ids.", + "operationId": "Boundaries_GetOverlap", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "farmerId", + "description": "ID of the farmer.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "boundaryId", + "description": "ID of the boundary.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "otherFarmerId", + "description": "FarmerId of the other field.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "otherBoundaryId", + "description": "ID of the other boundary.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/BoundaryOverlapResponse" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Boundaries_GetOverlap": { + "$ref": "./examples/Boundaries_GetOverlap.json" + } + } + } + }, + "/crops": { + "get": { + "tags": [ + "Crops" + ], + "description": "Returns a paginated list of crop resources.", + "operationId": "Crops_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "query", + "name": "phenotypes", + "description": "Crop phenotypes of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "ids", + "description": "Ids of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "names", + "description": "Names of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "propertyFilters", + "description": "Filters on key-value pairs within the Properties object.\r\neg. \"{testKey} eq {testValue}\".", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "statuses", + "description": "Statuses of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "minCreatedDateTime", + "description": "Minimum creation date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxCreatedDateTime", + "description": "Maximum creation date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "minLastModifiedDateTime", + "description": "Minimum last modified date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxLastModifiedDateTime", + "description": "Maximum last modified date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "$maxPageSize", + "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.", + "type": "integer", + "format": "int32", + "default": 50, + "maximum": 1000, + "minimum": 10 + }, + { + "in": "query", + "name": "$skipToken", + "description": "Skip token for getting next set of results.", + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/CropListResponse" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Crops_List": { + "$ref": "./examples/Crops_List.json" + } + } + } + }, + "/crops/{cropId}": { + "get": { + "tags": [ + "Crops" + ], + "description": "Gets a specified crop resource.", + "operationId": "Crops_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "cropId", + "description": "ID of the crop.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Crop" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Crops_Get": { + "$ref": "./examples/Crops_Get.json" + } + } + }, + "patch": { + "tags": [ + "Crops" + ], + "description": "Creates or updates a crop resource.", + "operationId": "Crops_CreateOrUpdate", + "consumes": [ + "application/merge-patch+json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "cropId", + "description": "ID of the crop resource.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + }, + { + "in": "body", + "name": "crop", + "description": "Crop resource payload to create or update.", + "schema": { + "$ref": "#/definitions/Crop" + } + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Crop" + } + }, + "201": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Crop" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Crops_CreateOrUpdate": { + "$ref": "./examples/Crops_CreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "Crops" + ], + "description": "Deletes Crop for given crop id.", + "operationId": "Crops_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "cropId", + "description": "ID of crop to be deleted.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "Success" + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Crops_Delete": { + "$ref": "./examples/Crops_Delete.json" + } + } + } + }, + "/crops/{cropId}/crop-varieties": { + "get": { + "tags": [ + "CropVarieties" + ], + "description": "Returns a paginated list of crop variety resources under a particular crop.", + "operationId": "CropVarieties_ListByCropId", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "cropId", + "description": "ID of the associated crop.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "cropIds", + "description": "CropIds of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "brands", + "description": "Brands of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "products", + "description": "Products of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "ids", + "description": "Ids of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "names", + "description": "Names of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "propertyFilters", + "description": "Filters on key-value pairs within the Properties object.\r\neg. \"{testKey} eq {testValue}\".", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "statuses", + "description": "Statuses of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "minCreatedDateTime", + "description": "Minimum creation date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxCreatedDateTime", + "description": "Maximum creation date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "minLastModifiedDateTime", + "description": "Minimum last modified date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxLastModifiedDateTime", + "description": "Maximum last modified date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "$maxPageSize", + "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.", + "type": "integer", + "format": "int32", + "default": 50, + "maximum": 1000, + "minimum": 10 + }, + { + "in": "query", + "name": "$skipToken", + "description": "Skip token for getting next set of results.", + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/CropVarietyListResponse" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "CropVarieties_ListByCropId": { + "$ref": "./examples/CropVarieties_ListByCropId.json" + } + } + } + }, + "/crop-varieties": { + "get": { + "tags": [ + "CropVarieties" + ], + "description": "Returns a paginated list of crop variety resources across all crops.", + "operationId": "CropVarieties_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "query", + "name": "cropIds", + "description": "CropIds of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "brands", + "description": "Brands of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "products", + "description": "Products of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "ids", + "description": "Ids of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "names", + "description": "Names of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "propertyFilters", + "description": "Filters on key-value pairs within the Properties object.\r\neg. \"{testKey} eq {testValue}\".", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "statuses", + "description": "Statuses of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "minCreatedDateTime", + "description": "Minimum creation date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxCreatedDateTime", + "description": "Maximum creation date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "minLastModifiedDateTime", + "description": "Minimum last modified date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxLastModifiedDateTime", + "description": "Maximum last modified date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "$maxPageSize", + "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.", + "type": "integer", + "format": "int32", + "default": 50, + "maximum": 1000, + "minimum": 10 + }, + { + "in": "query", + "name": "$skipToken", + "description": "Skip token for getting next set of results.", + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/CropVarietyListResponse" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "CropVarieties_List": { + "$ref": "./examples/CropVarieties_List.json" + } + } + } + }, + "/crops/{cropId}/crop-varieties/{cropVarietyId}": { + "get": { + "tags": [ + "CropVarieties" + ], + "description": "Gets a specified crop variety resource under a particular crop.", + "operationId": "CropVarieties_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "cropId", + "description": "ID of the associated crop.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "cropVarietyId", + "description": "ID of the crop variety.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/CropVariety" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "CropVarieties_Get": { + "$ref": "./examples/CropVarieties_Get.json" + } + } + }, + "patch": { + "tags": [ + "CropVarieties" + ], + "description": "Creates or updates a crop variety resource.", + "operationId": "CropVarieties_CreateOrUpdate", + "consumes": [ + "application/merge-patch+json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "cropId", + "description": "ID of the crop resource.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "cropVarietyId", + "description": "ID of the crop variety resource.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + }, + { + "in": "body", + "name": "cropVariety", + "description": "Crop variety resource payload to create or update.", + "schema": { + "$ref": "#/definitions/CropVariety" + } + } + ], + "responses": { + "201": { + "description": "Success", + "schema": { + "$ref": "#/definitions/CropVariety" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/CropVariety" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "CropVarieties_CreateOrUpdate": { + "$ref": "./examples/CropVarieties_CreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "CropVarieties" + ], + "description": "Deletes a specified crop variety resource under a particular crop.", + "operationId": "CropVarieties_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "cropId", + "description": "ID of the crop.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "cropVarietyId", + "description": "ID of the crop variety.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "Success" + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "CropVarieties_Delete": { + "$ref": "./examples/CropVarieties_Delete.json" + } + } + } + }, + "/farmers": { + "get": { + "tags": [ + "Farmers" + ], + "description": "Returns a paginated list of farmer resources.", + "operationId": "Farmers_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "query", + "name": "ids", + "description": "Ids of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "names", + "description": "Names of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "propertyFilters", + "description": "Filters on key-value pairs within the Properties object.\r\neg. \"{testKey} eq {testValue}\".", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "statuses", + "description": "Statuses of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "minCreatedDateTime", + "description": "Minimum creation date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxCreatedDateTime", + "description": "Maximum creation date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "minLastModifiedDateTime", + "description": "Minimum last modified date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxLastModifiedDateTime", + "description": "Maximum last modified date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "$maxPageSize", + "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.", + "type": "integer", + "format": "int32", + "default": 50, + "maximum": 1000, + "minimum": 10 + }, + { + "in": "query", + "name": "$skipToken", + "description": "Skip token for getting next set of results.", + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/FarmerListResponse" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Farmers_List": { + "$ref": "./examples/Farmers_List.json" + } + } + } + }, + "/farmers/{farmerId}": { + "get": { + "tags": [ + "Farmers" + ], + "description": "Gets a specified farmer resource.", + "operationId": "Farmers_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "farmerId", + "description": "ID of the associated farmer.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Farmer" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Farmers_Get": { + "$ref": "./examples/Farmers_Get.json" + } + } + }, + "patch": { + "tags": [ + "Farmers" + ], + "description": "Creates or updates a farmer resource.", + "operationId": "Farmers_CreateOrUpdate", + "consumes": [ + "application/merge-patch+json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "farmerId", + "description": "ID of the farmer resource.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + }, + { + "in": "body", + "name": "farmer", + "description": "Farmer resource payload to create or update.", + "schema": { + "$ref": "#/definitions/Farmer" + } + } + ], + "responses": { + "201": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Farmer" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Farmer" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Farmers_CreateOrUpdate": { + "$ref": "./examples/Farmers_CreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "Farmers" + ], + "description": "Deletes a specified farmer resource.", + "operationId": "Farmers_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "farmerId", + "description": "ID of farmer to be deleted.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "Success" + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Farmers_Delete": { + "$ref": "./examples/Farmers_Delete.json" + } + } + } + }, + "/farmers/cascade-delete/{jobId}": { + "get": { + "tags": [ + "Farmers" + ], + "description": "Get a cascade delete job for specified farmer.", + "operationId": "Farmers_GetCascadeDeleteJobDetails", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "jobId", + "description": "ID of the job.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/CascadeDeleteJob" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Farmers_GetCascadeDeleteJobDetails": { + "$ref": "./examples/Farmers_GetCascadeDeleteJobDetails.json" + } + } + }, + "put": { + "tags": [ + "Farmers" + ], + "description": "Create a cascade delete job for specified farmer.", + "operationId": "Farmers_CreateCascadeDeleteJob", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "jobId", + "description": "Job ID supplied by end user.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "farmerId", + "description": "ID of the farmer to be deleted.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Success", + "schema": { + "$ref": "#/definitions/CascadeDeleteJob" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Farmers_CreateCascadeDeleteJob": { + "$ref": "./examples/Farmers_CreateCascadeDeleteJob.json" + } + } + } + }, + "/farm-operations/ingest-data/{jobId}": { + "put": { + "tags": [ + "FarmOperations" + ], + "description": "Create a farm operation data ingestion job.", + "operationId": "FarmOperations_CreateDataIngestionJob", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "jobId", + "description": "Job ID supplied by user.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + }, + { + "in": "body", + "name": "job", + "description": "Job parameters supplied by user.", + "schema": { + "$ref": "#/definitions/FarmOperationDataIngestionJob" + } + } + ], + "responses": { + "202": { + "description": "Success", + "schema": { + "$ref": "#/definitions/FarmOperationDataIngestionJob" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "FarmOperations_CreateDataIngestionJob": { + "$ref": "./examples/FarmOperations_CreateDataIngestionJob.json" + } + } + }, + "get": { + "tags": [ + "FarmOperations" + ], + "description": "Get a farm operation data ingestion job.", + "operationId": "FarmOperations_GetDataIngestionJobDetails", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "jobId", + "description": "ID of the job.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/FarmOperationDataIngestionJob" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "FarmOperations_GetDataIngestionJobDetails": { + "$ref": "./examples/FarmOperations_GetDataIngestionJobDetails.json" + } + } + } + }, + "/farmers/{farmerId}/farms": { + "get": { + "tags": [ + "Farms" + ], + "description": "Returns a paginated list of farm resources under a particular farmer.", + "operationId": "Farms_ListByFarmerId", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "farmerId", + "description": "ID of the associated farmer.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "ids", + "description": "Ids of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "names", + "description": "Names of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "propertyFilters", + "description": "Filters on key-value pairs within the Properties object.\r\neg. \"{testKey} eq {testValue}\".", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "statuses", + "description": "Statuses of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "minCreatedDateTime", + "description": "Minimum creation date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxCreatedDateTime", + "description": "Maximum creation date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "minLastModifiedDateTime", + "description": "Minimum last modified date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxLastModifiedDateTime", + "description": "Maximum last modified date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "$maxPageSize", + "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.", + "type": "integer", + "format": "int32", + "default": 50, + "maximum": 1000, + "minimum": 10 + }, + { + "in": "query", + "name": "$skipToken", + "description": "Skip token for getting next set of results.", + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/FarmListResponse" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Farms_ListByFarmerId": { + "$ref": "./examples/Farms_ListByFarmerId.json" + } + } + } + }, + "/farms": { + "get": { + "tags": [ + "Farms" + ], + "description": "Returns a paginated list of farm resources across all farmers.", + "operationId": "Farms_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "query", + "name": "ids", + "description": "Ids of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "names", + "description": "Names of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "propertyFilters", + "description": "Filters on key-value pairs within the Properties object.\r\neg. \"{testKey} eq {testValue}\".", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "statuses", + "description": "Statuses of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "minCreatedDateTime", + "description": "Minimum creation date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxCreatedDateTime", + "description": "Maximum creation date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "minLastModifiedDateTime", + "description": "Minimum last modified date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxLastModifiedDateTime", + "description": "Maximum last modified date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "$maxPageSize", + "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.", + "type": "integer", + "format": "int32", + "default": 50, + "maximum": 1000, + "minimum": 10 + }, + { + "in": "query", + "name": "$skipToken", + "description": "Skip token for getting next set of results.", + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/FarmListResponse" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Farms_List": { + "$ref": "./examples/Farms_List.json" + } + } + } + }, + "/farmers/{farmerId}/farms/{farmId}": { + "get": { + "tags": [ + "Farms" + ], + "description": "Gets a specified farm resource under a particular farmer.", + "operationId": "Farms_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "farmerId", + "description": "ID of the associated farmer resource.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "farmId", + "description": "ID of the farm resource.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Farm" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Farms_Get": { + "$ref": "./examples/Farms_Get.json" + } + } + }, + "patch": { + "tags": [ + "Farms" + ], + "description": "Creates or updates a farm resource under a particular farmer.", + "operationId": "Farms_CreateOrUpdate", + "consumes": [ + "application/merge-patch+json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "farmerId", + "description": "ID of the associated farmer resource.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "farmId", + "description": "ID of the farm resource.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + }, + { + "in": "body", + "name": "farm", + "description": "Farm resource payload to create or update.", + "schema": { + "$ref": "#/definitions/Farm" + } + } + ], + "responses": { + "201": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Farm" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Farm" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Farms_CreateOrUpdate": { + "$ref": "./examples/Farms_CreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "Farms" + ], + "description": "Deletes a specified farm resource under a particular farmer.", + "operationId": "Farms_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "farmerId", + "description": "ID of the farmer.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "farmId", + "description": "ID of the farm.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "Success" + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Farms_Delete": { + "$ref": "./examples/Farms_Delete.json" + } + } + } + }, + "/farms/cascade-delete/{jobId}": { + "get": { + "tags": [ + "Farms" + ], + "description": "Get a cascade delete job for specified farm.", + "operationId": "Farms_GetCascadeDeleteJobDetails", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "jobId", + "description": "ID of the job.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/CascadeDeleteJob" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Farms_GetCascadeDeleteJobDetails": { + "$ref": "./examples/Farms_GetCascadeDeleteJobDetails.json" + } + } + }, + "put": { + "tags": [ + "Farms" + ], + "description": "Create a cascade delete job for specified farm.", + "operationId": "Farms_CreateCascadeDeleteJob", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "jobId", + "description": "Job ID supplied by end user.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "farmerId", + "description": "ID of the associated farmer.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "farmId", + "description": "ID of the farm to be deleted.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Success", + "schema": { + "$ref": "#/definitions/CascadeDeleteJob" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Farms_CreateCascadeDeleteJob": { + "$ref": "./examples/Farms_CreateCascadeDeleteJob.json" + } + } + } + }, + "/farmers/{farmerId}/fields": { + "get": { + "tags": [ + "Fields" + ], + "description": "Returns a paginated list of field resources under a particular farmer.", + "operationId": "Fields_ListByFarmerId", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "farmerId", + "description": "ID of the associated farmer.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "farmIds", + "description": "Farm Ids of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "ids", + "description": "Ids of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "names", + "description": "Names of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "propertyFilters", + "description": "Filters on key-value pairs within the Properties object.\r\neg. \"{testKey} eq {testValue}\".", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "statuses", + "description": "Statuses of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "minCreatedDateTime", + "description": "Minimum creation date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxCreatedDateTime", + "description": "Maximum creation date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "minLastModifiedDateTime", + "description": "Minimum last modified date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxLastModifiedDateTime", + "description": "Maximum last modified date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "$maxPageSize", + "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.", + "type": "integer", + "format": "int32", + "default": 50, + "maximum": 1000, + "minimum": 10 + }, + { + "in": "query", + "name": "$skipToken", + "description": "Skip token for getting next set of results.", + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/FieldListResponse" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Fields_ListByFarmerId": { + "$ref": "./examples/Fields_ListByFarmerId.json" + } + } + } + }, + "/fields": { + "get": { + "tags": [ + "Fields" + ], + "description": "Returns a paginated list of field resources across all farmers.", + "operationId": "Fields_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "query", + "name": "farmIds", + "description": "Farm Ids of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "ids", + "description": "Ids of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "names", + "description": "Names of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "propertyFilters", + "description": "Filters on key-value pairs within the Properties object.\r\neg. \"{testKey} eq {testValue}\".", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "statuses", + "description": "Statuses of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "minCreatedDateTime", + "description": "Minimum creation date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxCreatedDateTime", + "description": "Maximum creation date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "minLastModifiedDateTime", + "description": "Minimum last modified date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxLastModifiedDateTime", + "description": "Maximum last modified date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "$maxPageSize", + "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.", + "type": "integer", + "format": "int32", + "default": 50, + "maximum": 1000, + "minimum": 10 + }, + { + "in": "query", + "name": "$skipToken", + "description": "Skip token for getting next set of results.", + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/FieldListResponse" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Fields_List": { + "$ref": "./examples/Fields_List.json" + } + } + } + }, + "/farmers/{farmerId}/fields/{fieldId}": { + "get": { + "tags": [ + "Fields" + ], + "description": "Gets a specified field resource under a particular farmer.", + "operationId": "Fields_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "farmerId", + "description": "ID of the associated farmer.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "fieldId", + "description": "ID of the field.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Field" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Fields_Get": { + "$ref": "./examples/Fields_Get.json" + } + } + }, + "patch": { + "tags": [ + "Fields" + ], + "description": "Creates or Updates a field resource under a particular farmer.", + "operationId": "Fields_CreateOrUpdate", + "consumes": [ + "application/merge-patch+json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "farmerId", + "description": "ID of the associated farmer resource.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "fieldId", + "description": "ID of the field resource.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + }, + { + "in": "body", + "name": "field", + "description": "Field resource payload to create or update.", + "schema": { + "$ref": "#/definitions/Field" + } + } + ], + "responses": { + "201": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Field" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Field" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Fields_CreateOrUpdate": { + "$ref": "./examples/Fields_CreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "Fields" + ], + "description": "Deletes a specified field resource under a particular farmer.", + "operationId": "Fields_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "farmerId", + "description": "ID of the farmer.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "fieldId", + "description": "ID of the field.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "Success" + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Fields_Delete": { + "$ref": "./examples/Fields_Delete.json" + } + } + } + }, + "/fields/cascade-delete/{jobId}": { + "get": { + "tags": [ + "Fields" + ], + "description": "Get a cascade delete job for specified field.", + "operationId": "Fields_GetCascadeDeleteJobDetails", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "jobId", + "description": "ID of the job.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/CascadeDeleteJob" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Fields_GetCascadeDeleteJobDetails": { + "$ref": "./examples/Fields_GetCascadeDeleteJobDetails.json" + } + } + }, + "put": { + "tags": [ + "Fields" + ], + "description": "Create a cascade delete job for specified field.", + "operationId": "Fields_CreateCascadeDeleteJob", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "jobId", + "description": "Job ID supplied by end user.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "farmerId", + "description": "ID of the associated farmer.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "fieldId", + "description": "ID of the field to be deleted.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Success", + "schema": { + "$ref": "#/definitions/CascadeDeleteJob" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Fields_CreateCascadeDeleteJob": { + "$ref": "./examples/Fields_CreateCascadeDeleteJob.json" + } + } + } + }, + "/farmers/{farmerId}/harvest-data": { + "get": { + "tags": [ + "HarvestData" + ], + "description": "Returns a paginated list of harvest data resources under a particular farm.", + "operationId": "HarvestData_ListByFarmerId", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "farmerId", + "description": "ID of the associated farmer.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "minTotalYield", + "description": "Minimum Yield value(inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "maxTotalYield", + "description": "Maximum Yield value (inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "minAvgYield", + "description": "Minimum AvgYield value(inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "maxAvgYield", + "description": "Maximum AvgYield value (inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "minTotalWetMass", + "description": "Minimum Total WetMass value(inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "maxTotalWetMass", + "description": "Maximum Total WetMass value (inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "minAvgWetMass", + "description": "Minimum AvgWetMass value(inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "maxAvgWetMass", + "description": "Maximum AvgWetMass value (inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "minAvgMoisture", + "description": "Minimum AvgMoisture value(inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "maxAvgMoisture", + "description": "Maximum AvgMoisture value (inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "minAvgSpeed", + "description": "Minimum AvgSpeed value(inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "maxAvgSpeed", + "description": "Maximum AvgSpeed value (inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "sources", + "description": "Sources of the operation data.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "associatedBoundaryIds", + "description": "Boundary IDs associated with operation data.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "operationBoundaryIds", + "description": "Operation boundary IDs associated with operation data.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "minOperationStartDateTime", + "description": "Minimum start date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxOperationStartDateTime", + "description": "Maximum start date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "minOperationEndDateTime", + "description": "Minimum end date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxOperationEndDateTime", + "description": "Maximum end date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "minOperationModifiedDateTime", + "description": "Minimum modified date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxOperationModifiedDateTime", + "description": "Maximum modified date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "minArea", + "description": "Minimum area for which operation was applied (inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "maxArea", + "description": "Maximum area for which operation was applied (inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "ids", + "description": "Ids of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "names", + "description": "Names of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "propertyFilters", + "description": "Filters on key-value pairs within the Properties object.\r\neg. \"{testKey} eq {testValue}\".", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "statuses", + "description": "Statuses of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "minCreatedDateTime", + "description": "Minimum creation date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxCreatedDateTime", + "description": "Maximum creation date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "minLastModifiedDateTime", + "description": "Minimum last modified date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxLastModifiedDateTime", + "description": "Maximum last modified date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "$maxPageSize", + "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.", + "type": "integer", + "format": "int32", + "default": 50, + "maximum": 1000, + "minimum": 10 + }, + { + "in": "query", + "name": "$skipToken", + "description": "Skip token for getting next set of results.", + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/HarvestDataListResponse" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "HarvestData_ListByFarmerId": { + "$ref": "./examples/HarvestData_ListByFarmerId.json" + } + } + } + }, + "/harvest-data": { + "get": { + "tags": [ + "HarvestData" + ], + "description": "Returns a paginated list of harvest data resources across all farmers.", + "operationId": "HarvestData_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "query", + "name": "minTotalYield", + "description": "Minimum Yield value(inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "maxTotalYield", + "description": "Maximum Yield value (inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "minAvgYield", + "description": "Minimum AvgYield value(inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "maxAvgYield", + "description": "Maximum AvgYield value (inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "minTotalWetMass", + "description": "Minimum Total WetMass value(inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "maxTotalWetMass", + "description": "Maximum Total WetMass value (inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "minAvgWetMass", + "description": "Minimum AvgWetMass value(inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "maxAvgWetMass", + "description": "Maximum AvgWetMass value (inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "minAvgMoisture", + "description": "Minimum AvgMoisture value(inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "maxAvgMoisture", + "description": "Maximum AvgMoisture value (inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "minAvgSpeed", + "description": "Minimum AvgSpeed value(inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "maxAvgSpeed", + "description": "Maximum AvgSpeed value (inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "sources", + "description": "Sources of the operation data.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "associatedBoundaryIds", + "description": "Boundary IDs associated with operation data.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "operationBoundaryIds", + "description": "Operation boundary IDs associated with operation data.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "minOperationStartDateTime", + "description": "Minimum start date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxOperationStartDateTime", + "description": "Maximum start date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "minOperationEndDateTime", + "description": "Minimum end date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxOperationEndDateTime", + "description": "Maximum end date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "minOperationModifiedDateTime", + "description": "Minimum modified date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxOperationModifiedDateTime", + "description": "Maximum modified date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "minArea", + "description": "Minimum area for which operation was applied (inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "maxArea", + "description": "Maximum area for which operation was applied (inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "ids", + "description": "Ids of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "names", + "description": "Names of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "propertyFilters", + "description": "Filters on key-value pairs within the Properties object.\r\neg. \"{testKey} eq {testValue}\".", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "statuses", + "description": "Statuses of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "minCreatedDateTime", + "description": "Minimum creation date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxCreatedDateTime", + "description": "Maximum creation date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "minLastModifiedDateTime", + "description": "Minimum last modified date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxLastModifiedDateTime", + "description": "Maximum last modified date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "$maxPageSize", + "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.", + "type": "integer", + "format": "int32", + "default": 50, + "maximum": 1000, + "minimum": 10 + }, + { + "in": "query", + "name": "$skipToken", + "description": "Skip token for getting next set of results.", + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/HarvestDataListResponse" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "HarvestData_List": { + "$ref": "./examples/HarvestData_List.json" + } + } + } + }, + "/farmers/{farmerId}/harvest-data/{harvestDataId}": { + "get": { + "tags": [ + "HarvestData" + ], + "description": "Get a specified harvest data resource under a particular farmer.", + "operationId": "HarvestData_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "farmerId", + "description": "ID of the associated farmer resource.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "harvestDataId", + "description": "ID of the harvest data resource.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/HarvestData" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "HarvestData_Get": { + "$ref": "./examples/HarvestData_Get.json" + } + } + }, + "patch": { + "tags": [ + "HarvestData" + ], + "description": "Creates or updates harvest data resource under a particular farmer.", + "operationId": "HarvestData_CreateOrUpdate", + "consumes": [ + "application/merge-patch+json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "farmerId", + "description": "ID of the farmer.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "harvestDataId", + "description": "ID of the harvest data resource.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + }, + { + "in": "body", + "name": "harvestData", + "description": "Harvest data resource payload to create or update.", + "schema": { + "$ref": "#/definitions/HarvestData" + } + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/HarvestData" + } + }, + "201": { + "description": "Success", + "schema": { + "$ref": "#/definitions/HarvestData" + } + } + }, + "x-ms-examples": { + "HarvestData_CreateOrUpdate": { + "$ref": "./examples/HarvestData_CreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "HarvestData" + ], + "description": "Deletes a specified harvest data resource under a particular farmer.", + "operationId": "HarvestData_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "farmerId", + "description": "ID of the associated farmer resource.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "harvestDataId", + "description": "ID of the harvest data.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "Success" + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "HarvestData_Delete": { + "$ref": "./examples/HarvestData_Delete.json" + } + } + } + }, + "/image-processing/rasterize/{jobId}": { + "put": { + "tags": [ + "ImageProcessing" + ], + "description": "Create a ImageProcessing Rasterize job.", + "operationId": "ImageProcessing_CreateRasterizeJob", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "jobId", + "description": "JobId provided by user.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + }, + { + "in": "body", + "name": "job", + "description": "Job parameters supplied by user.", + "schema": { + "$ref": "#/definitions/ImageProcessingRasterizeJob" + } + } + ], + "responses": { + "202": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ImageProcessingRasterizeJob" + } + }, + "default": { + "description": "Error" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "ImageProcessing_CreateRasterizeJob": { + "$ref": "./examples/ImageProcessing_CreateRasterizeJob.json" + } + } + }, + "get": { + "tags": [ + "ImageProcessing" + ], + "description": "Get ImageProcessing Rasterize job's details.", + "operationId": "ImageProcessing_GetRasterizeJob", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "jobId", + "description": "ID of the job.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ImageProcessingRasterizeJob" + } + } + }, + "x-ms-examples": { + "ImageProcessing_GetRasterizeJob": { + "$ref": "./examples/ImageProcessing_GetRasterizeJob.json" + } + } + } + }, + "/oauth/providers": { + "get": { + "tags": [ + "OAuthProviders" + ], + "description": "Returns a paginated list of oauthProvider resources.", + "operationId": "OAuthProviders_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "query", + "name": "ids", + "description": "Ids of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "names", + "description": "Names of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "propertyFilters", + "description": "Filters on key-value pairs within the Properties object.\r\neg. \"{testKey} eq {testValue}\".", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "statuses", + "description": "Statuses of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "minCreatedDateTime", + "description": "Minimum creation date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxCreatedDateTime", + "description": "Maximum creation date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "minLastModifiedDateTime", + "description": "Minimum last modified date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxLastModifiedDateTime", + "description": "Maximum last modified date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "$maxPageSize", + "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.", + "type": "integer", + "format": "int32", + "default": 50, + "maximum": 1000, + "minimum": 10 + }, + { + "in": "query", + "name": "$skipToken", + "description": "Skip token for getting next set of results.", + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/OAuthProviderListResponse" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "OAuthProviders_List": { + "$ref": "./examples/OAuthProviders_List.json" + } + } + } + }, + "/oauth/providers/{oauthProviderId}": { + "get": { + "tags": [ + "OAuthProviders" + ], + "description": "Get a specified oauthProvider resource.", + "operationId": "OAuthProviders_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "oauthProviderId", + "description": "ID of the oauthProvider resource.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/OAuthProvider" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "OAuthProviders_Get": { + "$ref": "./examples/OAuthProviders_Get.json" + } + } + }, + "patch": { + "tags": [ + "OAuthProviders" + ], + "description": "Creates or updates an oauthProvider resource.", + "operationId": "OAuthProviders_CreateOrUpdate", + "consumes": [ + "application/merge-patch+json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "oauthProviderId", + "description": "ID of oauthProvider resource.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + }, + { + "in": "body", + "name": "oauthProvider", + "description": "OauthProvider resource payload to create or update.", + "schema": { + "$ref": "#/definitions/OAuthProvider" + } + } + ], + "responses": { + "201": { + "description": "Success", + "schema": { + "$ref": "#/definitions/OAuthProvider" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/OAuthProvider" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "OAuthProviders_CreateOrUpdate": { + "$ref": "./examples/OAuthProviders_CreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "OAuthProviders" + ], + "description": "Deletes an specified oauthProvider resource.", + "operationId": "OAuthProviders_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "oauthProviderId", + "description": "ID of oauthProvider.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "Success" + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "OAuthProviders_Delete": { + "$ref": "./examples/OAuthProviders_Delete.json" + } + } + } + }, + "/oauth/tokens": { + "get": { + "tags": [ + "OAuthTokens" + ], + "description": "Returns a list of OAuthToken documents.", + "operationId": "OAuthTokens_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "query", + "name": "authProviderIds", + "description": "Name of AuthProvider.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "farmerIds", + "description": "List of farmers.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "isValid", + "description": "If the token object is valid.", + "type": "boolean" + }, + { + "in": "query", + "name": "minCreatedDateTime", + "description": "Minimum creation date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxCreatedDateTime", + "description": "Maximum creation date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "minLastModifiedDateTime", + "description": "Minimum last modified date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxLastModifiedDateTime", + "description": "Maximum last modified date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "$maxPageSize", + "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.", + "type": "integer", + "format": "int32", + "default": 50, + "maximum": 1000, + "minimum": 10 + }, + { + "in": "query", + "name": "$skipToken", + "description": "Skip token for getting next set of results.", + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/OAuthTokenListResponse" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "OAuthTokens_List": { + "$ref": "./examples/OAuthTokens_List.json" + } + } + } + }, + "/oauth/tokens/:connect": { + "post": { + "tags": [ + "OAuthTokens" + ], + "description": "Returns Connection link needed in the OAuth flow.", + "operationId": "OAuthTokens_GetOAuthConnectionLink", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + }, + { + "in": "body", + "name": "connectRequest", + "description": "OAuth Connect Request.", + "schema": { + "$ref": "#/definitions/OAuthConnectRequest" + } + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "type": "string" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "OAuthTokens_GetOAuthConnectionLink": { + "$ref": "./examples/OAuthTokens_GetOAuthConnectionLink.json" + } + } + } + }, + "/oauth/tokens/remove/{jobId}": { + "get": { + "tags": [ + "OAuthTokens" + ], + "description": "Get cascade delete job details for OAuth tokens for specified job ID.", + "operationId": "OAuthTokens_GetCascadeDeleteJobDetails", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "jobId", + "description": "ID of the job.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/CascadeDeleteJob" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "OAuthTokens_GetCascadeDeleteJobDetails": { + "$ref": "./examples/OAuthTokens_GetCascadeDeleteJobDetails.json" + } + } + }, + "put": { + "tags": [ + "OAuthTokens" + ], + "description": "Create a cascade delete job for OAuth tokens.", + "operationId": "OAuthTokens_CreateCascadeDeleteJob", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "jobId", + "description": "Job ID supplied by end user.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "farmerId", + "description": "ID of the farmer.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "oauthProviderId", + "description": "ID of the OAuthProvider.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Success", + "schema": { + "$ref": "#/definitions/CascadeDeleteJob" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "OAuthTokens_CreateCascadeDeleteJob": { + "$ref": "./examples/OAuthTokens_CreateCascadeDeleteJob.json" + } + } + } + }, + "/farmers/{farmerId}/planting-data": { + "get": { + "tags": [ + "PlantingData" + ], + "description": "Returns a paginated list of planting data resources under a particular farm.", + "operationId": "PlantingData_ListByFarmerId", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "farmerId", + "description": "ID of the associated farmer.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "minAvgPlantingRate", + "description": "Minimum AvgPlantingRate value(inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "maxAvgPlantingRate", + "description": "Maximum AvgPlantingRate value (inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "minTotalMaterial", + "description": "Minimum TotalMaterial value(inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "maxTotalMaterial", + "description": "Maximum TotalMaterial value (inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "minAvgMaterial", + "description": "Minimum AvgMaterial value(inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "maxAvgMaterial", + "description": "Maximum AvgMaterial value (inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "sources", + "description": "Sources of the operation data.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "associatedBoundaryIds", + "description": "Boundary IDs associated with operation data.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "operationBoundaryIds", + "description": "Operation boundary IDs associated with operation data.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "minOperationStartDateTime", + "description": "Minimum start date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxOperationStartDateTime", + "description": "Maximum start date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "minOperationEndDateTime", + "description": "Minimum end date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxOperationEndDateTime", + "description": "Maximum end date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "minOperationModifiedDateTime", + "description": "Minimum modified date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxOperationModifiedDateTime", + "description": "Maximum modified date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "minArea", + "description": "Minimum area for which operation was applied (inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "maxArea", + "description": "Maximum area for which operation was applied (inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "ids", + "description": "Ids of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "names", + "description": "Names of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "propertyFilters", + "description": "Filters on key-value pairs within the Properties object.\r\neg. \"{testKey} eq {testValue}\".", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "statuses", + "description": "Statuses of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "minCreatedDateTime", + "description": "Minimum creation date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxCreatedDateTime", + "description": "Maximum creation date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "minLastModifiedDateTime", + "description": "Minimum last modified date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxLastModifiedDateTime", + "description": "Maximum last modified date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "$maxPageSize", + "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.", + "type": "integer", + "format": "int32", + "default": 50, + "maximum": 1000, + "minimum": 10 + }, + { + "in": "query", + "name": "$skipToken", + "description": "Skip token for getting next set of results.", + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/PlantingDataListResponse" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "PlantingData_ListByFarmerId": { + "$ref": "./examples/PlantingData_ListByFarmerId.json" + } + } + } + }, + "/planting-data": { + "get": { + "tags": [ + "PlantingData" + ], + "description": "Returns a paginated list of planting data resources across all farmers.", + "operationId": "PlantingData_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "query", + "name": "minAvgPlantingRate", + "description": "Minimum AvgPlantingRate value(inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "maxAvgPlantingRate", + "description": "Maximum AvgPlantingRate value (inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "minTotalMaterial", + "description": "Minimum TotalMaterial value(inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "maxTotalMaterial", + "description": "Maximum TotalMaterial value (inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "minAvgMaterial", + "description": "Minimum AvgMaterial value(inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "maxAvgMaterial", + "description": "Maximum AvgMaterial value (inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "sources", + "description": "Sources of the operation data.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "associatedBoundaryIds", + "description": "Boundary IDs associated with operation data.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "operationBoundaryIds", + "description": "Operation boundary IDs associated with operation data.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "minOperationStartDateTime", + "description": "Minimum start date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxOperationStartDateTime", + "description": "Maximum start date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "minOperationEndDateTime", + "description": "Minimum end date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxOperationEndDateTime", + "description": "Maximum end date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "minOperationModifiedDateTime", + "description": "Minimum modified date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxOperationModifiedDateTime", + "description": "Maximum modified date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "minArea", + "description": "Minimum area for which operation was applied (inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "maxArea", + "description": "Maximum area for which operation was applied (inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "ids", + "description": "Ids of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "names", + "description": "Names of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "propertyFilters", + "description": "Filters on key-value pairs within the Properties object.\r\neg. \"{testKey} eq {testValue}\".", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "statuses", + "description": "Statuses of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "minCreatedDateTime", + "description": "Minimum creation date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxCreatedDateTime", + "description": "Maximum creation date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "minLastModifiedDateTime", + "description": "Minimum last modified date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxLastModifiedDateTime", + "description": "Maximum last modified date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "$maxPageSize", + "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.", + "type": "integer", + "format": "int32", + "default": 50, + "maximum": 1000, + "minimum": 10 + }, + { + "in": "query", + "name": "$skipToken", + "description": "Skip token for getting next set of results.", + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/PlantingDataListResponse" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "PlantingData_List": { + "$ref": "./examples/PlantingData_List.json" + } + } + } + }, + "/farmers/{farmerId}/planting-data/{plantingDataId}": { + "get": { + "tags": [ + "PlantingData" + ], + "description": "Get a specified planting data resource under a particular farmer.", + "operationId": "PlantingData_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "farmerId", + "description": "ID of the associated farmer resource.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "plantingDataId", + "description": "ID of the planting data resource.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/PlantingData" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "PlantingData_Get": { + "$ref": "./examples/PlantingData_Get.json" + } + } + }, + "patch": { + "tags": [ + "PlantingData" + ], + "description": "Creates or updates an planting data resource under a particular farmer.", + "operationId": "PlantingData_CreateOrUpdate", + "consumes": [ + "application/merge-patch+json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "farmerId", + "description": "ID of the associated farmer.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "plantingDataId", + "description": "ID of the planting data resource.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + }, + { + "in": "body", + "name": "plantingData", + "description": "Planting data resource payload to create or update.", + "schema": { + "$ref": "#/definitions/PlantingData" + } + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/PlantingData" + } + }, + "201": { + "description": "Success", + "schema": { + "$ref": "#/definitions/PlantingData" + } + } + }, + "x-ms-examples": { + "PlantingData_CreateOrUpdate": { + "$ref": "./examples/PlantingData_CreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "PlantingData" + ], + "description": "Deletes a specified planting data resource under a particular farmer.", + "operationId": "PlantingData_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "farmerId", + "description": "ID of the associated farmer resource.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "plantingDataId", + "description": "ID of the planting data.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "Success" + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "PlantingData_Delete": { + "$ref": "./examples/PlantingData_Delete.json" + } + } + } + }, + "/scenes": { + "get": { + "tags": [ + "Scenes" + ], + "description": "Returns a paginated list of scene resources.", + "operationId": "Scenes_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "query", + "name": "provider", + "description": "Provider name of scene data.", + "required": true, + "type": "string", + "default": "Microsoft" + }, + { + "in": "query", + "name": "farmerId", + "description": "FarmerId.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "boundaryId", + "description": "BoundaryId.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "source", + "description": "Source name of scene data, default value Sentinel_2_L2A (Sentinel 2 L2A).", + "type": "string", + "default": "Sentinel_2_L2A" + }, + { + "in": "query", + "name": "startDateTime", + "description": "Scene start UTC datetime (inclusive), sample format: yyyy-MM-ddThh:mm:ssZ.", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "endDateTime", + "description": "Scene end UTC datetime (inclusive), sample format: yyyy-MM-dThh:mm:ssZ.", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxCloudCoveragePercentage", + "description": "Filter scenes with cloud coverage percentage less than max value. Range [0 to 100.0].", + "type": "number", + "format": "double", + "default": 100, + "maximum": 100, + "minimum": 0 + }, + { + "in": "query", + "name": "maxDarkPixelCoveragePercentage", + "description": "Filter scenes with dark pixel coverage percentage less than max value. Range [0 to 100.0].", + "type": "number", + "format": "double", + "default": 100, + "maximum": 100, + "minimum": 0 + }, + { + "in": "query", + "name": "imageNames", + "description": "List of image names to be filtered.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "imageResolutions", + "description": "List of image resolutions in meters to be filtered.", + "type": "array", + "items": { + "format": "double", + "type": "number" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "imageFormats", + "description": "List of image formats to be filtered.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "$maxPageSize", + "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.", + "type": "integer", + "format": "int32", + "default": 50, + "maximum": 1000, + "minimum": 10 + }, + { + "in": "query", + "name": "$skipToken", + "description": "Skip token for getting next set of results.", + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/SceneListResponse" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Scenes_List": { + "$ref": "./examples/Scenes_List.json" + } + } + } + }, + "/scenes/satellite/ingest-data/{jobId}": { + "put": { + "tags": [ + "Scenes" + ], + "description": "Create a satellite data ingestion job.", + "operationId": "Scenes_CreateSatelliteDataIngestionJob", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "jobId", + "description": "JobId provided by user.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + }, + { + "in": "body", + "name": "job", + "description": "Job parameters supplied by user.", + "schema": { + "$ref": "#/definitions/SatelliteDataIngestionJob" + } + } + ], + "responses": { + "202": { + "description": "Success", + "schema": { + "$ref": "#/definitions/SatelliteDataIngestionJob" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Scenes_CreateSatelliteDataIngestionJob": { + "$ref": "./examples/Scenes_CreateSatelliteDataIngestionJob.json" + } + } + }, + "get": { + "tags": [ + "Scenes" + ], + "description": "Get a satellite data ingestion job.", + "operationId": "Scenes_GetSatelliteDataIngestionJobDetails", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "jobId", + "description": "ID of the job.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/SatelliteDataIngestionJob" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Scenes_GetSatelliteDataIngestionJobDetails": { + "$ref": "./examples/Scenes_GetSatelliteDataIngestionJobDetails.json" + } + } + } + }, + "/scenes/downloadFiles": { + "get": { + "tags": [ + "Scenes" + ], + "description": "Downloads and returns file stream as response for the given input filePath.", + "operationId": "Scenes_Download", + "produces": [ + "application/octet-stream", + "application/json" + ], + "parameters": [ + { + "in": "query", + "name": "filePath", + "description": "cloud storage path of scene file.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "format": "binary", + "type": "file" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Scenes_Download": { + "$ref": "./examples/Scenes_Download.json" + } + } + } + }, + "/farmers/{farmerId}/seasonal-fields": { + "get": { + "tags": [ + "SeasonalFields" + ], + "description": "Returns a paginated list of seasonal field resources under a particular farmer.", + "operationId": "SeasonalFields_ListByFarmerId", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "farmerId", + "description": "ID of the associated farmer.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "farmIds", + "description": "Farm Ids of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "fieldIds", + "description": "Field Ids of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "seasonIds", + "description": "Season Ids of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "cropVarietyIds", + "description": "CropVarietyIds of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "cropIds", + "description": "Ids of the crop it belongs to.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "minAvgYieldValue", + "description": "Minimum average yield value of the seasonal field(inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "maxAvgYieldValue", + "description": "Maximum average yield value of the seasonal field(inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "avgYieldUnit", + "description": "Unit of the average yield value attribute.", + "type": "string" + }, + { + "in": "query", + "name": "minAvgSeedPopulationValue", + "description": "Minimum average seed population value of the seasonal field(inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "maxAvgSeedPopulationValue", + "description": "Maximum average seed population value of the seasonal field(inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "avgSeedPopulationUnit", + "description": "Unit of average seed population value attribute.", + "type": "string" + }, + { + "in": "query", + "name": "minPlantingDateTime", + "description": "Minimum planting datetime, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxPlantingDateTime", + "description": "Maximum planting datetime, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "ids", + "description": "Ids of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "names", + "description": "Names of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "propertyFilters", + "description": "Filters on key-value pairs within the Properties object.\r\neg. \"{testKey} eq {testValue}\".", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "statuses", + "description": "Statuses of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "minCreatedDateTime", + "description": "Minimum creation date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxCreatedDateTime", + "description": "Maximum creation date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "minLastModifiedDateTime", + "description": "Minimum last modified date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxLastModifiedDateTime", + "description": "Maximum last modified date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "$maxPageSize", + "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.", + "type": "integer", + "format": "int32", + "default": 50, + "maximum": 1000, + "minimum": 10 + }, + { + "in": "query", + "name": "$skipToken", + "description": "Skip token for getting next set of results.", + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/SeasonalFieldListResponse" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "SeasonalFields_ListByFarmerId": { + "$ref": "./examples/SeasonalFields_ListByFarmerId.json" + } + } + } + }, + "/seasonal-fields": { + "get": { + "tags": [ + "SeasonalFields" + ], + "description": "Returns a paginated list of seasonal field resources across all farmers.", + "operationId": "SeasonalFields_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "query", + "name": "farmIds", + "description": "Farm Ids of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "fieldIds", + "description": "Field Ids of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "seasonIds", + "description": "Season Ids of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "cropVarietyIds", + "description": "CropVarietyIds of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "cropIds", + "description": "Ids of the crop it belongs to.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "minAvgYieldValue", + "description": "Minimum average yield value of the seasonal field(inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "maxAvgYieldValue", + "description": "Maximum average yield value of the seasonal field(inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "avgYieldUnit", + "description": "Unit of the average yield value attribute.", + "type": "string" + }, + { + "in": "query", + "name": "minAvgSeedPopulationValue", + "description": "Minimum average seed population value of the seasonal field(inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "maxAvgSeedPopulationValue", + "description": "Maximum average seed population value of the seasonal field(inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "avgSeedPopulationUnit", + "description": "Unit of average seed population value attribute.", + "type": "string" + }, + { + "in": "query", + "name": "minPlantingDateTime", + "description": "Minimum planting datetime, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxPlantingDateTime", + "description": "Maximum planting datetime, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "ids", + "description": "Ids of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "names", + "description": "Names of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "propertyFilters", + "description": "Filters on key-value pairs within the Properties object.\r\neg. \"{testKey} eq {testValue}\".", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "statuses", + "description": "Statuses of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "minCreatedDateTime", + "description": "Minimum creation date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxCreatedDateTime", + "description": "Maximum creation date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "minLastModifiedDateTime", + "description": "Minimum last modified date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxLastModifiedDateTime", + "description": "Maximum last modified date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "$maxPageSize", + "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.", + "type": "integer", + "format": "int32", + "default": 50, + "maximum": 1000, + "minimum": 10 + }, + { + "in": "query", + "name": "$skipToken", + "description": "Skip token for getting next set of results.", + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/SeasonalFieldListResponse" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "SeasonalFields_List": { + "$ref": "./examples/SeasonalFields_List.json" + } + } + } + }, + "/farmers/{farmerId}/seasonal-fields/{seasonalFieldId}": { + "get": { + "tags": [ + "SeasonalFields" + ], + "description": "Gets a specified seasonal field resource under a particular farmer.", + "operationId": "SeasonalFields_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "farmerId", + "description": "ID of the associated farmer.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "seasonalFieldId", + "description": "ID of the seasonal field.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/SeasonalField" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "SeasonalFields_Get": { + "$ref": "./examples/SeasonalFields_Get.json" + } + } + }, + "patch": { + "tags": [ + "SeasonalFields" + ], + "description": "Creates or Updates a seasonal field resource under a particular farmer.", + "operationId": "SeasonalFields_CreateOrUpdate", + "consumes": [ + "application/merge-patch+json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "farmerId", + "description": "ID of the associated farmer resource.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "seasonalFieldId", + "description": "ID of the seasonal field resource.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + }, + { + "in": "body", + "name": "seasonalField", + "description": "Seasonal field resource payload to create or update.", + "schema": { + "$ref": "#/definitions/SeasonalField" + } + } + ], + "responses": { + "201": { + "description": "Success", + "schema": { + "$ref": "#/definitions/SeasonalField" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/SeasonalField" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "SeasonalFields_CreateOrUpdate": { + "$ref": "./examples/SeasonalFields_CreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "SeasonalFields" + ], + "description": "Deletes a specified seasonal-field resource under a particular farmer.", + "operationId": "SeasonalFields_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "farmerId", + "description": "ID of the farmer.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "seasonalFieldId", + "description": "ID of the seasonal field.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "Success" + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "SeasonalFields_Delete": { + "$ref": "./examples/SeasonalFields_Delete.json" + } + } + } + }, + "/seasonal-fields/cascade-delete/{jobId}": { + "get": { + "tags": [ + "SeasonalFields" + ], + "description": "Get cascade delete job for specified seasonal field.", + "operationId": "SeasonalFields_GetCascadeDeleteJobDetails", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "jobId", + "description": "ID of the job.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/CascadeDeleteJob" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "SeasonalFields_GetCascadeDeleteJobDetails": { + "$ref": "./examples/SeasonalFields_GetCascadeDeleteJobDetails.json" + } + } + }, + "put": { + "tags": [ + "SeasonalFields" + ], + "description": "Create a cascade delete job for specified seasonal field.", + "operationId": "SeasonalFields_CreateCascadeDeleteJob", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "jobId", + "description": "Job ID supplied by end user.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "farmerId", + "description": "ID of the associated farmer.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "seasonalFieldId", + "description": "ID of the seasonalField to be deleted.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Success", + "schema": { + "$ref": "#/definitions/CascadeDeleteJob" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "SeasonalFields_CreateCascadeDeleteJob": { + "$ref": "./examples/SeasonalFields_CreateCascadeDeleteJob.json" + } + } + } + }, + "/seasons": { + "get": { + "tags": [ + "Seasons" + ], + "description": "Returns a paginated list of season resources.", + "operationId": "Seasons_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "query", + "name": "minStartDateTime", + "description": "Minimum season start datetime, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxStartDateTime", + "description": "Maximum season start datetime, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "minEndDateTime", + "description": "Minimum season end datetime, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxEndDateTime", + "description": "Maximum season end datetime, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "years", + "description": "Years of the resource.", + "type": "array", + "items": { + "format": "int32", + "type": "integer" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "ids", + "description": "Ids of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "names", + "description": "Names of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "propertyFilters", + "description": "Filters on key-value pairs within the Properties object.\r\neg. \"{testKey} eq {testValue}\".", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "statuses", + "description": "Statuses of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "minCreatedDateTime", + "description": "Minimum creation date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxCreatedDateTime", + "description": "Maximum creation date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "minLastModifiedDateTime", + "description": "Minimum last modified date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxLastModifiedDateTime", + "description": "Maximum last modified date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "$maxPageSize", + "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.", + "type": "integer", + "format": "int32", + "default": 50, + "maximum": 1000, + "minimum": 10 + }, + { + "in": "query", + "name": "$skipToken", + "description": "Skip token for getting next set of results.", + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/SeasonListResponse" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Seasons_List": { + "$ref": "./examples/Seasons_List.json" + } + } + } + }, + "/seasons/{seasonId}": { + "get": { + "tags": [ + "Seasons" + ], + "description": "Gets a specified season resource.", + "operationId": "Seasons_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "seasonId", + "description": "ID of the season.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Season" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Seasons_Get": { + "$ref": "./examples/Seasons_Get.json" + } + } + }, + "patch": { + "tags": [ + "Seasons" + ], + "description": "Creates or updates a season resource.", + "operationId": "Seasons_CreateOrUpdate", + "consumes": [ + "application/merge-patch+json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "seasonId", + "description": "ID of the season resource.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + }, + { + "in": "body", + "name": "season", + "description": "Season resource payload to create or update.", + "schema": { + "$ref": "#/definitions/Season" + } + } + ], + "responses": { + "201": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Season" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Season" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Seasons_CreateOrUpdate": { + "$ref": "./examples/Seasons_CreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "Seasons" + ], + "description": "Deletes a specified season resource.", + "operationId": "Seasons_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "seasonId", + "description": "ID of the season.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "Success" + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Seasons_Delete": { + "$ref": "./examples/Seasons_Delete.json" + } + } + } + }, + "/farmers/{farmerId}/tillage-data": { + "get": { + "tags": [ + "TillageData" + ], + "description": "Returns a paginated list of tillage data resources under a particular farm.", + "operationId": "TillageData_ListByFarmerId", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "farmerId", + "description": "ID of the associated farmer.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "minTillageDepth", + "description": "Minimum measured tillage depth (inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "maxTillageDepth", + "description": "Maximum measured tillage depth (inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "minTillagePressure", + "description": "Minimum pressure applied by a tillage implement (inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "maxTillagePressure", + "description": "Maximum pressure applied by a tillage implement (inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "sources", + "description": "Sources of the operation data.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "associatedBoundaryIds", + "description": "Boundary IDs associated with operation data.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "operationBoundaryIds", + "description": "Operation boundary IDs associated with operation data.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "minOperationStartDateTime", + "description": "Minimum start date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxOperationStartDateTime", + "description": "Maximum start date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "minOperationEndDateTime", + "description": "Minimum end date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxOperationEndDateTime", + "description": "Maximum end date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "minOperationModifiedDateTime", + "description": "Minimum modified date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxOperationModifiedDateTime", + "description": "Maximum modified date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "minArea", + "description": "Minimum area for which operation was applied (inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "maxArea", + "description": "Maximum area for which operation was applied (inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "ids", + "description": "Ids of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "names", + "description": "Names of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "propertyFilters", + "description": "Filters on key-value pairs within the Properties object.\r\neg. \"{testKey} eq {testValue}\".", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "statuses", + "description": "Statuses of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "minCreatedDateTime", + "description": "Minimum creation date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxCreatedDateTime", + "description": "Maximum creation date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "minLastModifiedDateTime", + "description": "Minimum last modified date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxLastModifiedDateTime", + "description": "Maximum last modified date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "$maxPageSize", + "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.", + "type": "integer", + "format": "int32", + "default": 50, + "maximum": 1000, + "minimum": 10 + }, + { + "in": "query", + "name": "$skipToken", + "description": "Skip token for getting next set of results.", + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/TillageDataListResponse" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "TillageData_ListByFarmerId": { + "$ref": "./examples/TillageData_ListByFarmerId.json" + } + } + } + }, + "/tillage-data": { + "get": { + "tags": [ + "TillageData" + ], + "description": "Returns a paginated list of tillage data resources across all farmers.", + "operationId": "TillageData_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "query", + "name": "minTillageDepth", + "description": "Minimum measured tillage depth (inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "maxTillageDepth", + "description": "Maximum measured tillage depth (inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "minTillagePressure", + "description": "Minimum pressure applied by a tillage implement (inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "maxTillagePressure", + "description": "Maximum pressure applied by a tillage implement (inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "sources", + "description": "Sources of the operation data.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "associatedBoundaryIds", + "description": "Boundary IDs associated with operation data.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "operationBoundaryIds", + "description": "Operation boundary IDs associated with operation data.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "minOperationStartDateTime", + "description": "Minimum start date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxOperationStartDateTime", + "description": "Maximum start date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "minOperationEndDateTime", + "description": "Minimum end date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxOperationEndDateTime", + "description": "Maximum end date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "minOperationModifiedDateTime", + "description": "Minimum modified date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxOperationModifiedDateTime", + "description": "Maximum modified date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "minArea", + "description": "Minimum area for which operation was applied (inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "maxArea", + "description": "Maximum area for which operation was applied (inclusive).", + "type": "number", + "format": "double" + }, + { + "in": "query", + "name": "ids", + "description": "Ids of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "names", + "description": "Names of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "propertyFilters", + "description": "Filters on key-value pairs within the Properties object.\r\neg. \"{testKey} eq {testValue}\".", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "statuses", + "description": "Statuses of the resource.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "minCreatedDateTime", + "description": "Minimum creation date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxCreatedDateTime", + "description": "Maximum creation date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "minLastModifiedDateTime", + "description": "Minimum last modified date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "maxLastModifiedDateTime", + "description": "Maximum last modified date of resource (inclusive).", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "$maxPageSize", + "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.", + "type": "integer", + "format": "int32", + "default": 50, + "maximum": 1000, + "minimum": 10 + }, + { + "in": "query", + "name": "$skipToken", + "description": "Skip token for getting next set of results.", + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/TillageDataListResponse" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "TillageData_List": { + "$ref": "./examples/TillageData_List.json" + } + } + } + }, + "/farmers/{farmerId}/tillage-data/{tillageDataId}": { + "get": { + "tags": [ + "TillageData" + ], + "description": "Get a specified tillage data resource under a particular farmer.", + "operationId": "TillageData_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "farmerId", + "description": "ID of the associated farmer resource.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "tillageDataId", + "description": "ID of the tillage data resource.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/TillageData" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "TillageData_Get": { + "$ref": "./examples/TillageData_Get.json" + } + } + }, + "patch": { + "tags": [ + "TillageData" + ], + "description": "Creates or updates an tillage data resource under a particular farmer.", + "operationId": "TillageData_CreateOrUpdate", + "consumes": [ + "application/merge-patch+json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "farmerId", + "description": "ID of the associated farmer.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "tillageDataId", + "description": "ID of the tillage data resource.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + }, + { + "in": "body", + "name": "tillageData", + "description": "Tillage data resource payload to create or update.", + "schema": { + "$ref": "#/definitions/TillageData" + } + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/TillageData" + } + }, + "201": { + "description": "Success", + "schema": { + "$ref": "#/definitions/TillageData" + } + } + }, + "x-ms-examples": { + "TillageData_CreateOrUpdate": { + "$ref": "./examples/TillageData_CreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "TillageData" + ], + "description": "Deletes a specified tillage data resource under a particular farmer.", + "operationId": "TillageData_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "farmerId", + "description": "ID of the associated farmer resource.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "tillageDataId", + "description": "ID of the tillage data.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "Success" + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "TillageData_Delete": { + "$ref": "./examples/TillageData_Delete.json" + } + } + } + }, + "/weather": { + "get": { + "tags": [ + "Weather" + ], + "description": "Returns a paginated list of weather data.", + "operationId": "Weather_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "query", + "name": "farmerId", + "description": "Farmer ID.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "boundaryId", + "description": "Boundary ID.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "extensionId", + "description": "ID of the weather extension.", + "required": true, + "type": "string", + "pattern": "^[A-za-z]{3,50}[.][A-za-z]{3,100}$" + }, + { + "in": "query", + "name": "weatherDataType", + "description": "Type of weather data (forecast/historical).", + "required": true, + "type": "string", + "maxLength": 50, + "minLength": 0 + }, + { + "in": "query", + "name": "granularity", + "description": "Granularity of weather data (daily/hourly).", + "required": true, + "type": "string", + "maxLength": 50, + "minLength": 0 + }, + { + "in": "query", + "name": "startDateTime", + "description": "Weather data start UTC date-time (inclusive), sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "endDateTime", + "description": "Weather data end UTC date-time (inclusive), sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "$maxPageSize", + "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.", + "type": "integer", + "format": "int32", + "default": 50, + "maximum": 1000, + "minimum": 10 + }, + { + "in": "query", + "name": "$skipToken", + "description": "Skip token for getting next set of results.", + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/WeatherDataListResponse" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Weather_List": { + "$ref": "./examples/Weather_List.json" + } + } + } + }, + "/weather/ingest-data/{jobId}": { + "get": { + "tags": [ + "Weather" + ], + "description": "Get weather ingestion job.", + "operationId": "Weather_GetDataIngestionJobDetails", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "jobId", + "description": "ID of the job.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/WeatherDataIngestionJob" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Weather_GetDataIngestionJobDetails": { + "$ref": "./examples/Weather_GetDataIngestionJobDetails.json" + } + } + }, + "put": { + "tags": [ + "Weather" + ], + "description": "Create a weather data ingestion job.", + "operationId": "Weather_CreateDataIngestionJob", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "jobId", + "description": "Job id supplied by user.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + }, + { + "in": "body", + "name": "job", + "description": "Job parameters supplied by user.", + "schema": { + "$ref": "#/definitions/WeatherDataIngestionJob" + } + } + ], + "responses": { + "202": { + "description": "Success", + "schema": { + "$ref": "#/definitions/WeatherDataIngestionJob" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Weather_CreateDataIngestionJob": { + "$ref": "./examples/Weather_CreateDataIngestionJob.json" + } + } + } + }, + "/weather/delete-data/{jobId}": { + "get": { + "tags": [ + "Weather" + ], + "description": "Get weather data delete job.", + "operationId": "Weather_GetDataDeleteJobDetails", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "jobId", + "description": "ID of the job.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/WeatherDataDeleteJob" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Weather_GetDataDeleteJobDetails": { + "$ref": "./examples/Weather_GetDataDeleteJobDetails.json" + } + } + }, + "put": { + "tags": [ + "Weather" + ], + "description": "Create a weather data delete job.", + "operationId": "Weather_CreateDataDeleteJob", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "jobId", + "description": "Job ID supplied by end user.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The requested API version", + "required": true, + "type": "string" + }, + { + "in": "body", + "name": "job", + "description": "Job parameters supplied by user.", + "schema": { + "$ref": "#/definitions/WeatherDataDeleteJob" + } + } + ], + "responses": { + "202": { + "description": "Success", + "schema": { + "$ref": "#/definitions/WeatherDataDeleteJob" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Weather_CreateDataDeleteJob": { + "$ref": "./examples/Weather_CreateDataDeleteJob.json" + } + } + } + } + }, + "parameters": { + "Endpoint": { + "name": "Endpoint", + "description": "The endpoint of your FarmBeats resource (protocol and hostname, for example: https://{resourceName}.farmbeats.azure.net).", + "x-ms-parameter-location": "client", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true + } + }, + "definitions": { + "Measure": { + "description": "Schema for storing measurement reading and unit.", + "type": "object", + "properties": { + "unit": { + "description": "Data unit.", + "maxLength": 50, + "minLength": 1, + "type": "string" + }, + "value": { + "format": "double", + "description": "Data value.", + "type": "number" + } + } + }, + "ApplicationProductDetail": { + "description": "Schema of product used during application.", + "type": "object", + "properties": { + "productName": { + "description": "Name of the product applied.", + "maxLength": 100, + "minLength": 1, + "type": "string" + }, + "isCarrier": { + "description": "A flag indicating whether product is a carrier for a tank mix.", + "default": false, + "type": "boolean" + }, + "avgMaterial": { + "$ref": "#/definitions/Measure" + }, + "totalMaterial": { + "$ref": "#/definitions/Measure" + } + } + }, + "ApplicationData": { + "description": "Schema of application data resource.", + "type": "object", + "properties": { + "applicationProductDetails": { + "description": "Application product details.", + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationProductDetail" + } + }, + "avgMaterial": { + "$ref": "#/definitions/Measure" + }, + "totalMaterial": { + "$ref": "#/definitions/Measure" + }, + "area": { + "$ref": "#/definitions/Measure" + }, + "source": { + "description": "Source of the operation data.", + "maxLength": 100, + "minLength": 2, + "type": "string" + }, + "operationModifiedDateTime": { + "format": "date-time", + "description": "Modified date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ.\r\nNote: this will be specified by the source provider itself.", + "type": "string" + }, + "operationStartDateTime": { + "format": "date-time", + "description": "Start date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string" + }, + "operationEndDateTime": { + "format": "date-time", + "description": "End date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string" + }, + "attachmentsLink": { + "description": "Link for attachments.", + "type": "string", + "readOnly": true + }, + "associatedBoundaryId": { + "description": "Optional boundary ID of the field for which operation was applied.", + "type": "string" + }, + "operationBoundaryId": { + "description": "Optional boundary ID of the actual area for which operation was applied inside the specified field.", + "type": "string" + }, + "farmerId": { + "description": "Farmer ID which belongs to the operation data.", + "type": "string", + "readOnly": true + }, + "id": { + "description": "Unique resource ID.", + "type": "string", + "readOnly": true + }, + "eTag": { + "description": "The ETag value to implement optimistic concurrency.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "Status of the resource.", + "maxLength": 100, + "minLength": 0, + "type": "string" + }, + "createdDateTime": { + "format": "date-time", + "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "readOnly": true + }, + "modifiedDateTime": { + "format": "date-time", + "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name to identify resource.", + "maxLength": 100, + "minLength": 0, + "type": "string" + }, + "description": { + "description": "Textual description of the resource.", + "maxLength": 500, + "minLength": 0, + "type": "string" + }, + "properties": { + "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and only string and numeral values are supported.", + "type": "object", + "additionalProperties": { + "type": "object" + }, + "example": { + "key1": "value1", + "key2": 123.45 + } + } + } + }, + "ApplicationDataListResponse": { + "description": "Paged response contains list of requested objects and a URL link to get the next set of results.", + "type": "object", + "properties": { + "value": { + "description": "List of requested objects.", + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationData" + } + }, + "$skipToken": { + "description": "Token used in retrieving the next page. If null, there are no additional pages.", + "type": "string" + }, + "nextLink": { + "description": "Continuation link (absolute URI) to the next page of results in the list.", + "type": "string" + } + } + }, + "InnerError": { + "description": "Inner error containing list of errors.\r\nInnerError reference document.", + "type": "object", + "properties": { + "code": { + "description": "Specific error code than was provided by the\r\ncontaining error.", + "type": "string" + }, + "innererror": { + "$ref": "#/definitions/InnerError" + } + }, + "additionalProperties": { + "type": "object" + } + }, + "Error": { + "description": "An error from the Azure AgPlatform service.", + "type": "object", + "properties": { + "code": { + "description": "Server-defined set of error codes.", + "type": "string" + }, + "message": { + "description": "Human-readable representation of the error.", + "type": "string" + }, + "target": { + "description": "Target of the error.", + "type": "string" + }, + "details": { + "description": "Array of details about specific errors that led to this reported error.", + "type": "array", + "items": { + "$ref": "#/definitions/Error" + } + }, + "innererror": { + "$ref": "#/definitions/InnerError" + } + } + }, + "ErrorResponse": { + "description": "An error response from the Azure AgPlatform service.\r\nErrorResponse reference document..", + "type": "object", + "properties": { + "error": { + "$ref": "#/definitions/Error" + }, + "traceId": { + "description": "Unique trace ID.", + "type": "string" + } + } + }, + "Attachment": { + "description": "Schema of attachment resource.", + "type": "object", + "properties": { + "farmerId": { + "description": "Farmer id for this attachment.", + "type": "string", + "readOnly": true + }, + "resourceId": { + "description": "Associated Resource id for this attachment.", + "type": "string" + }, + "resourceType": { + "description": "Associated Resource type for this attachment\r\ni.e. Farmer, Farm, Field, SeasonalField, Boundary, FarmOperationApplicationData, HarvestData, TillageData, PlantingData.", + "type": "string" + }, + "originalFileName": { + "description": "Original File Name for this attachment.", + "type": "string", + "readOnly": true + }, + "id": { + "description": "Unique id.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "Status of the resource.", + "maxLength": 100, + "minLength": 0, + "type": "string" + }, + "createdDateTime": { + "format": "date-time", + "description": "Date when resource was created.", + "type": "string", + "readOnly": true + }, + "modifiedDateTime": { + "format": "date-time", + "description": "Date when resource was last modified.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name to identify resource.", + "maxLength": 100, + "minLength": 0, + "type": "string" + }, + "description": { + "description": "Textual description of resource.", + "maxLength": 500, + "minLength": 0, + "type": "string" + }, + "eTag": { + "description": "The ETag value to implement optimistic concurrency.", + "type": "string", + "readOnly": true + } + } + }, + "AttachmentListResponse": { + "description": "Paged response contains list of requested objects and a URL link to get the next set of results.", + "type": "object", + "properties": { + "value": { + "description": "List of requested objects.", + "type": "array", + "items": { + "$ref": "#/definitions/Attachment" + } + }, + "$skipToken": { + "description": "Token used in retrieving the next page. If null, there are no additional pages.", + "type": "string" + }, + "nextLink": { + "description": "Continuation link (absolute URI) to the next page of results in the list.", + "type": "string" + } + } + }, + "GeoJsonObjectType": { + "description": "GeoJSON object type.", + "enum": [ + "Point", + "Polygon", + "MultiPolygon" + ], + "type": "string", + "x-ms-enum": { + "name": "GeoJsonObjectType", + "modelAsString": true + } + }, + "GeoJsonObject": { + "description": "GeoJSON abstract class.", + "required": [ + "type" + ], + "type": "object", + "properties": { + "type": { + "$ref": "#/definitions/GeoJsonObjectType" + } + }, + "discriminator": "type" + }, + "Boundary": { + "description": "Schema of boundary resource.", + "type": "object", + "properties": { + "farmerId": { + "description": "Farmer ID.", + "type": "string", + "readOnly": true + }, + "parentId": { + "description": "ID of the parent(field or seasonalField) it belongs to.", + "type": "string" + }, + "geometry": { + "$ref": "#/definitions/GeoJsonObject" + }, + "isPrimary": { + "description": "Is the boundary primary.", + "type": "boolean" + }, + "acreage": { + "format": "double", + "description": "Boundary area in acres.", + "type": "number", + "readOnly": true + }, + "parentType": { + "description": "Type of the parent it belongs to.", + "type": "string", + "readOnly": true + }, + "id": { + "description": "Unique resource ID.", + "type": "string", + "readOnly": true + }, + "eTag": { + "description": "The ETag value to implement optimistic concurrency.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "Status of the resource.", + "maxLength": 100, + "minLength": 0, + "type": "string" + }, + "createdDateTime": { + "format": "date-time", + "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "readOnly": true + }, + "modifiedDateTime": { + "format": "date-time", + "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name to identify resource.", + "maxLength": 100, + "minLength": 0, + "type": "string" + }, + "description": { + "description": "Textual description of the resource.", + "maxLength": 500, + "minLength": 0, + "type": "string" + }, + "properties": { + "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and only string and numeral values are supported.", + "type": "object", + "additionalProperties": { + "type": "object" + } + } + }, + "example": { + "name": "string", + "description": "string", + "parentId": "string", + "isPrimary": false, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 73.70457172393799, + 20.545385304358106 + ], + [ + 73.70457172393799, + 20.545385304358106 + ], + [ + 73.70448589324951, + 20.542411534243367 + ], + [ + 73.70877742767334, + 20.541688176010233 + ], + [ + 73.71023654937744, + 20.545083911372505 + ], + [ + 73.70663166046143, + 20.546992723579137 + ], + [ + 73.70457172393799, + 20.545385304358106 + ] + ] + ] + } + } + }, + "BoundaryListResponse": { + "description": "Paged response contains list of requested objects and a URL link to get the next set of results.", + "type": "object", + "properties": { + "value": { + "description": "List of requested objects.", + "type": "array", + "items": { + "$ref": "#/definitions/Boundary" + } + }, + "$skipToken": { + "description": "Token used in retrieving the next page. If null, there are no additional pages.", + "type": "string" + }, + "nextLink": { + "description": "Continuation link (absolute URI) to the next page of results in the list.", + "type": "string" + } + } + }, + "SearchBoundaryQuery": { + "description": "SearchAllBoundaries and SearchBoundaries parameters.", + "type": "object", + "properties": { + "ids": { + "description": "Ids of the resource.", + "type": "array", + "items": { + "type": "string" + } + }, + "names": { + "description": "Names of the resource.", + "type": "array", + "items": { + "type": "string" + } + }, + "propertyFilters": { + "description": "Filters on key-value pairs within the Properties object.\r\neg. \"{testKey} eq {testValue}\".", + "type": "array", + "items": { + "type": "string" + } + }, + "statuses": { + "description": "Statuses of the resource.", + "type": "array", + "items": { + "type": "string" + } + }, + "minCreatedDateTime": { + "format": "date-time", + "description": "Minimum creation date of resource (inclusive).", + "type": "string" + }, + "maxCreatedDateTime": { + "format": "date-time", + "description": "Maximum creation date of resource (inclusive).", + "type": "string" + }, + "minLastModifiedDateTime": { + "format": "date-time", + "description": "Minimum last modified date of resource (inclusive).", + "type": "string" + }, + "maxLastModifiedDateTime": { + "format": "date-time", + "description": "Maximum last modified date of resource (inclusive).", + "type": "string" + }, + "$maxPageSize": { + "format": "int32", + "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.", + "default": 50, + "maximum": 1000, + "minimum": 10, + "type": "integer" + }, + "$skipToken": { + "description": "Skip token for getting next set of results.", + "type": "string" + }, + "isPrimary": { + "description": "Is the boundary primary.", + "type": "boolean" + }, + "parentType": { + "description": "Type of the parent it belongs to.", + "type": "string" + }, + "parentIds": { + "description": "Parent Ids of the resource.", + "type": "array", + "items": { + "type": "string" + } + }, + "minAcreage": { + "format": "double", + "description": "Minimum acreage of the boundary (inclusive).", + "type": "number" + }, + "maxAcreage": { + "format": "double", + "description": "Maximum acreage of the boundary (inclusive).", + "type": "number" + }, + "intersectsWithGeometry": { + "$ref": "#/definitions/GeoJsonObject" + } + } + }, + "CascadeDeleteJob": { + "description": "Schema of cascade delete job.", + "required": [ + "farmerId", + "resourceId", + "resourceType" + ], + "type": "object", + "properties": { + "farmerId": { + "description": "Farmer ID.", + "type": "string" + }, + "resourceId": { + "description": "The id of the resource.", + "type": "string" + }, + "resourceType": { + "description": "The type of the resource.", + "type": "string" + }, + "id": { + "description": "Unique job id.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "Status of the job.\r\nPossible values: 'Waiting', 'Running', 'Succeeded', 'Failed', 'Cancelled'.", + "type": "string", + "readOnly": true + }, + "durationInSeconds": { + "format": "double", + "description": "Duration of the job in seconds.", + "type": "number", + "readOnly": true + }, + "message": { + "description": "Status message to capture more details of the job.", + "type": "string", + "readOnly": true + }, + "createdDateTime": { + "format": "date-time", + "description": "Job created at dateTime. Sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "readOnly": true + }, + "lastActionDateTime": { + "format": "date-time", + "description": "Job was last acted upon at dateTime. Sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "readOnly": true + }, + "startTime": { + "format": "date-time", + "description": "Job start time when available. Sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "readOnly": true + }, + "endTime": { + "format": "date-time", + "description": "Job end time when available. Sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name to identify resource.", + "maxLength": 100, + "minLength": 0, + "type": "string" + }, + "description": { + "description": "Textual description of the resource.", + "maxLength": 500, + "minLength": 0, + "type": "string" + }, + "properties": { + "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and only string and numeral values are supported.", + "type": "object", + "additionalProperties": { + "type": "object" + }, + "example": { + "key1": "value1", + "key2": 123.45 + } + } + } + }, + "BoundaryOverlapResponse": { + "description": "Schema of boundary overlap response.", + "type": "object", + "properties": { + "boundaryAcreage": { + "format": "double", + "description": "Acreage of Main boundary.", + "type": "number" + }, + "otherBoundaryAcreage": { + "format": "double", + "description": "Acreage of other boundary.", + "type": "number" + }, + "intersectingAcreage": { + "format": "double", + "description": "Acreage of intersecting boundary.", + "type": "number" + } + } + }, + "Crop": { + "description": "Schema of crop resource.", + "type": "object", + "properties": { + "phenotype": { + "description": "Crop phenotype.", + "maxLength": 100, + "minLength": 0, + "type": "string" + }, + "id": { + "description": "Unique resource ID.", + "type": "string", + "readOnly": true + }, + "eTag": { + "description": "The ETag value to implement optimistic concurrency.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "Status of the resource.", + "maxLength": 100, + "minLength": 0, + "type": "string" + }, + "createdDateTime": { + "format": "date-time", + "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "readOnly": true + }, + "modifiedDateTime": { + "format": "date-time", + "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name to identify resource.", + "maxLength": 100, + "minLength": 0, + "type": "string" + }, + "description": { + "description": "Textual description of the resource.", + "maxLength": 500, + "minLength": 0, + "type": "string" + }, + "properties": { + "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and only string and numeral values are supported.", + "type": "object", + "additionalProperties": { + "type": "object" + }, + "example": { + "key1": "value1", + "key2": 123.45 + } + } + } + }, + "CropListResponse": { + "description": "Paged response contains list of requested objects and a URL link to get the next set of results.", + "type": "object", + "properties": { + "value": { + "description": "List of requested objects.", + "type": "array", + "items": { + "$ref": "#/definitions/Crop" + } + }, + "$skipToken": { + "description": "Token used in retrieving the next page. If null, there are no additional pages.", + "type": "string" + }, + "nextLink": { + "description": "Continuation link (absolute URI) to the next page of results in the list.", + "type": "string" + } + } + }, + "CropVariety": { + "description": "Schema of crop variety resource.", + "type": "object", + "properties": { + "cropId": { + "description": "ID of the crop it belongs to.", + "type": "string", + "readOnly": true + }, + "brand": { + "description": "CropVariety Brand.", + "maxLength": 100, + "minLength": 0, + "type": "string" + }, + "product": { + "description": "CropVariety product.", + "maxLength": 100, + "minLength": 0, + "type": "string" + }, + "id": { + "description": "Unique resource ID.", + "type": "string", + "readOnly": true + }, + "eTag": { + "description": "The ETag value to implement optimistic concurrency.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "Status of the resource.", + "maxLength": 100, + "minLength": 0, + "type": "string" + }, + "createdDateTime": { + "format": "date-time", + "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "readOnly": true + }, + "modifiedDateTime": { + "format": "date-time", + "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name to identify resource.", + "maxLength": 100, + "minLength": 0, + "type": "string" + }, + "description": { + "description": "Textual description of the resource.", + "maxLength": 500, + "minLength": 0, + "type": "string" + }, + "properties": { + "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and only string and numeral values are supported.", + "type": "object", + "additionalProperties": { + "type": "object" + }, + "example": { + "key1": "value1", + "key2": 123.45 + } + } + } + }, + "CropVarietyListResponse": { + "description": "Paged response contains list of requested objects and a URL link to get the next set of results.", + "type": "object", + "properties": { + "value": { + "description": "List of requested objects.", + "type": "array", + "items": { + "$ref": "#/definitions/CropVariety" + } + }, + "$skipToken": { + "description": "Token used in retrieving the next page. If null, there are no additional pages.", + "type": "string" + }, + "nextLink": { + "description": "Continuation link (absolute URI) to the next page of results in the list.", + "type": "string" + } + } + }, + "Farmer": { + "description": "Schema of farmer resource.", + "type": "object", + "properties": { + "id": { + "description": "Unique resource ID.", + "type": "string", + "readOnly": true + }, + "eTag": { + "description": "The ETag value to implement optimistic concurrency.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "Status of the resource.", + "maxLength": 100, + "minLength": 0, + "type": "string" + }, + "createdDateTime": { + "format": "date-time", + "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "readOnly": true + }, + "modifiedDateTime": { + "format": "date-time", + "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name to identify resource.", + "maxLength": 100, + "minLength": 0, + "type": "string" + }, + "description": { + "description": "Textual description of the resource.", + "maxLength": 500, + "minLength": 0, + "type": "string" + }, + "properties": { + "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and only string and numeral values are supported.", + "type": "object", + "additionalProperties": { + "type": "object" + }, + "example": { + "key1": "value1", + "key2": 123.45 + } + } + } + }, + "FarmerListResponse": { + "description": "Paged response contains list of requested objects and a URL link to get the next set of results.", + "type": "object", + "properties": { + "value": { + "description": "List of requested objects.", + "type": "array", + "items": { + "$ref": "#/definitions/Farmer" + } + }, + "$skipToken": { + "description": "Token used in retrieving the next page. If null, there are no additional pages.", + "type": "string" + }, + "nextLink": { + "description": "Continuation link (absolute URI) to the next page of results in the list.", + "type": "string" + } + } + }, + "FarmOperationDataIngestionJob": { + "description": "Schema of farm operation data ingestion job.", + "required": [ + "authProviderId", + "farmerId", + "startYear" + ], + "type": "object", + "properties": { + "farmerId": { + "description": "Farmer ID.", + "type": "string" + }, + "authProviderId": { + "description": "Authentication provider ID.", + "type": "string" + }, + "operations": { + "description": "List of operation types for which data needs to be downloaded. Available values: AllOperations, Application, Planting, Harvest, Tillage.", + "type": "array", + "items": { + "type": "string" + } + }, + "startYear": { + "format": "int32", + "description": "Start Year (Minimum = 2000, Maximum = CurrentYear).", + "type": "integer" + }, + "id": { + "description": "Unique job id.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "Status of the job.\r\nPossible values: 'Waiting', 'Running', 'Succeeded', 'Failed', 'Cancelled'.", + "type": "string", + "readOnly": true + }, + "durationInSeconds": { + "format": "double", + "description": "Duration of the job in seconds.", + "type": "number", + "readOnly": true + }, + "message": { + "description": "Status message to capture more details of the job.", + "type": "string", + "readOnly": true + }, + "createdDateTime": { + "format": "date-time", + "description": "Job created at dateTime. Sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "readOnly": true + }, + "lastActionDateTime": { + "format": "date-time", + "description": "Job was last acted upon at dateTime. Sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "readOnly": true + }, + "startTime": { + "format": "date-time", + "description": "Job start time when available. Sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "readOnly": true + }, + "endTime": { + "format": "date-time", + "description": "Job end time when available. Sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name to identify resource.", + "maxLength": 100, + "minLength": 0, + "type": "string" + }, + "description": { + "description": "Textual description of the resource.", + "maxLength": 500, + "minLength": 0, + "type": "string" + }, + "properties": { + "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and only string and numeral values are supported.", + "type": "object", + "additionalProperties": { + "type": "object" + }, + "example": { + "key1": "value1", + "key2": 123.45 + } + } + } + }, + "Farm": { + "description": "Schema of farm resource.", + "type": "object", + "properties": { + "farmerId": { + "description": "Farmer ID.", + "type": "string", + "readOnly": true + }, + "id": { + "description": "Unique resource ID.", + "type": "string", + "readOnly": true + }, + "eTag": { + "description": "The ETag value to implement optimistic concurrency.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "Status of the resource.", + "maxLength": 100, + "minLength": 0, + "type": "string" + }, + "createdDateTime": { + "format": "date-time", + "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "readOnly": true + }, + "modifiedDateTime": { + "format": "date-time", + "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name to identify resource.", + "maxLength": 100, + "minLength": 0, + "type": "string" + }, + "description": { + "description": "Textual description of the resource.", + "maxLength": 500, + "minLength": 0, + "type": "string" + }, + "properties": { + "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and only string and numeral values are supported.", + "type": "object", + "additionalProperties": { + "type": "object" + }, + "example": { + "key1": "value1", + "key2": 123.45 + } + } + } + }, + "FarmListResponse": { + "description": "Paged response contains list of requested objects and a URL link to get the next set of results.", + "type": "object", + "properties": { + "value": { + "description": "List of requested objects.", + "type": "array", + "items": { + "$ref": "#/definitions/Farm" + } + }, + "$skipToken": { + "description": "Token used in retrieving the next page. If null, there are no additional pages.", + "type": "string" + }, + "nextLink": { + "description": "Continuation link (absolute URI) to the next page of results in the list.", + "type": "string" + } + } + }, + "Field": { + "description": "Schema of field resource.", + "type": "object", + "properties": { + "farmId": { + "description": "ID of the associated Farm.", + "type": "string" + }, + "farmerId": { + "description": "Farmer ID.", + "type": "string", + "readOnly": true + }, + "primaryBoundaryId": { + "description": "Primary boundary id.", + "type": "string", + "readOnly": true + }, + "boundaryIds": { + "description": "Boundary Ids.", + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "id": { + "description": "Unique resource ID.", + "type": "string", + "readOnly": true + }, + "eTag": { + "description": "The ETag value to implement optimistic concurrency.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "Status of the resource.", + "maxLength": 100, + "minLength": 0, + "type": "string" + }, + "createdDateTime": { + "format": "date-time", + "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "readOnly": true + }, + "modifiedDateTime": { + "format": "date-time", + "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name to identify resource.", + "maxLength": 100, + "minLength": 0, + "type": "string" + }, + "description": { + "description": "Textual description of the resource.", + "maxLength": 500, + "minLength": 0, + "type": "string" + }, + "properties": { + "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and only string and numeral values are supported.", + "type": "object", + "additionalProperties": { + "type": "object" + }, + "example": { + "key1": "value1", + "key2": 123.45 + } + } + } + }, + "FieldListResponse": { + "description": "Paged response contains list of requested objects and a URL link to get the next set of results.", + "type": "object", + "properties": { + "value": { + "description": "List of requested objects.", + "type": "array", + "items": { + "$ref": "#/definitions/Field" + } + }, + "$skipToken": { + "description": "Token used in retrieving the next page. If null, there are no additional pages.", + "type": "string" + }, + "nextLink": { + "description": "Continuation link (absolute URI) to the next page of results in the list.", + "type": "string" + } + } + }, + "HarvestProductDetail": { + "description": "Schema of product used during harvesting.", + "type": "object", + "properties": { + "productName": { + "description": "Name of the product.", + "maxLength": 100, + "minLength": 1, + "type": "string" + }, + "area": { + "$ref": "#/definitions/Measure" + }, + "totalYield": { + "$ref": "#/definitions/Measure" + }, + "avgYield": { + "$ref": "#/definitions/Measure" + }, + "avgMoisture": { + "$ref": "#/definitions/Measure" + }, + "totalWetMass": { + "$ref": "#/definitions/Measure" + }, + "avgWetMass": { + "$ref": "#/definitions/Measure" + } + } + }, + "HarvestData": { + "description": "Schema of harvest data resource.", + "type": "object", + "properties": { + "totalYield": { + "$ref": "#/definitions/Measure" + }, + "avgYield": { + "$ref": "#/definitions/Measure" + }, + "totalWetMass": { + "$ref": "#/definitions/Measure" + }, + "avgWetMass": { + "$ref": "#/definitions/Measure" + }, + "avgMoisture": { + "$ref": "#/definitions/Measure" + }, + "avgSpeed": { + "$ref": "#/definitions/Measure" + }, + "harvestProductDetails": { + "description": "Harvest product details.", + "type": "array", + "items": { + "$ref": "#/definitions/HarvestProductDetail" + } + }, + "area": { + "$ref": "#/definitions/Measure" + }, + "source": { + "description": "Source of the operation data.", + "maxLength": 100, + "minLength": 2, + "type": "string" + }, + "operationModifiedDateTime": { + "format": "date-time", + "description": "Modified date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ.\r\nNote: this will be specified by the source provider itself.", + "type": "string" + }, + "operationStartDateTime": { + "format": "date-time", + "description": "Start date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string" + }, + "operationEndDateTime": { + "format": "date-time", + "description": "End date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string" + }, + "attachmentsLink": { + "description": "Link for attachments.", + "type": "string", + "readOnly": true + }, + "associatedBoundaryId": { + "description": "Optional boundary ID of the field for which operation was applied.", + "type": "string" + }, + "operationBoundaryId": { + "description": "Optional boundary ID of the actual area for which operation was applied inside the specified field.", + "type": "string" + }, + "farmerId": { + "description": "Farmer ID which belongs to the operation data.", + "type": "string", + "readOnly": true + }, + "id": { + "description": "Unique resource ID.", + "type": "string", + "readOnly": true + }, + "eTag": { + "description": "The ETag value to implement optimistic concurrency.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "Status of the resource.", + "maxLength": 100, + "minLength": 0, + "type": "string" + }, + "createdDateTime": { + "format": "date-time", + "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "readOnly": true + }, + "modifiedDateTime": { + "format": "date-time", + "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name to identify resource.", + "maxLength": 100, + "minLength": 0, + "type": "string" + }, + "description": { + "description": "Textual description of the resource.", + "maxLength": 500, + "minLength": 0, + "type": "string" + }, + "properties": { + "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and only string and numeral values are supported.", + "type": "object", + "additionalProperties": { + "type": "object" + }, + "example": { + "key1": "value1", + "key2": 123.45 + } + } + } + }, + "HarvestDataListResponse": { + "description": "Paged response contains list of requested objects and a URL link to get the next set of results.", + "type": "object", + "properties": { + "value": { + "description": "List of requested objects.", + "type": "array", + "items": { + "$ref": "#/definitions/HarvestData" + } + }, + "$skipToken": { + "description": "Token used in retrieving the next page. If null, there are no additional pages.", + "type": "string" + }, + "nextLink": { + "description": "Continuation link (absolute URI) to the next page of results in the list.", + "type": "string" + } + } + }, + "ImageProcessingRasterizeJob": { + "description": "ImageProcessingRasterizeJob.", + "required": [ + "farmerId", + "shapefileAttachmentId", + "shapefileColumnNames" + ], + "type": "object", + "properties": { + "farmerId": { + "description": "Farmer ID.", + "type": "string" + }, + "shapefileAttachmentId": { + "description": "Shapefile attachment ID.", + "type": "string" + }, + "shapefileColumnNames": { + "description": "List of shapefile column names to create raster attachments.", + "type": "array", + "items": { + "type": "string" + } + }, + "id": { + "description": "Unique job id.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "Status of the job.\r\nPossible values: 'Waiting', 'Running', 'Succeeded', 'Failed', 'Cancelled'.", + "type": "string", + "readOnly": true + }, + "durationInSeconds": { + "format": "double", + "description": "Duration of the job in seconds.", + "type": "number", + "readOnly": true + }, + "message": { + "description": "Status message to capture more details of the job.", + "type": "string", + "readOnly": true + }, + "createdDateTime": { + "format": "date-time", + "description": "Job created at dateTime. Sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "readOnly": true + }, + "lastActionDateTime": { + "format": "date-time", + "description": "Job was last acted upon at dateTime. Sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "readOnly": true + }, + "startTime": { + "format": "date-time", + "description": "Job start time when available. Sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "readOnly": true + }, + "endTime": { + "format": "date-time", + "description": "Job end time when available. Sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name to identify resource.", + "maxLength": 100, + "minLength": 0, + "type": "string" + }, + "description": { + "description": "Textual description of the resource.", + "maxLength": 500, + "minLength": 0, + "type": "string" + }, + "properties": { + "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and only string and numeral values are supported.", + "type": "object", + "additionalProperties": { + "type": "object" + }, + "example": { + "key1": "value1", + "key2": 123.45 + } + } + } + }, + "OAuthProvider": { + "description": "Schema of OAuth provider resource.", + "type": "object", + "properties": { + "appId": { + "description": "OAuth App ID for given OAuth Provider.", + "maxLength": 200, + "minLength": 2, + "type": "string" + }, + "appSecret": { + "description": "OAuth App secret for given Provider.\r\nNote: Won't be sent in response.", + "maxLength": 200, + "minLength": 2, + "type": "string" + }, + "apiKey": { + "description": "OAuth Api key for given Provider.\r\nNote: currently Applicable to Climate provider. Won't be sent in response.", + "maxLength": 200, + "minLength": 2, + "type": "string" + }, + "isProductionApp": { + "description": "An optional flag to determine if the App is ready to be used for Production scenarios in the provider side or not. (Default value: false)\r\nNote: Currently applicable for JohnDeere.", + "default": false, + "type": "boolean" + }, + "id": { + "description": "Unique OAuth provider ID.", + "type": "string", + "readOnly": true + }, + "eTag": { + "description": "The ETag value to implement optimistic concurrency.", + "type": "string", + "readOnly": true + }, + "createdDateTime": { + "format": "date-time", + "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "readOnly": true + }, + "modifiedDateTime": { + "format": "date-time", + "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name to identify resource.", + "maxLength": 100, + "minLength": 0, + "type": "string" + }, + "description": { + "description": "Textual description of the resource.", + "maxLength": 500, + "minLength": 0, + "type": "string" + }, + "properties": { + "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and only string and numeral values are supported.", + "type": "object", + "additionalProperties": { + "type": "object" + }, + "example": { + "key1": "value1", + "key2": 123.45 + } + } + } + }, + "OAuthProviderListResponse": { + "description": "Paged response contains list of requested objects and a URL link to get the next set of results.", + "type": "object", + "properties": { + "value": { + "description": "List of requested objects.", + "type": "array", + "items": { + "$ref": "#/definitions/OAuthProvider" + } + }, + "$skipToken": { + "description": "Token used in retrieving the next page. If null, there are no additional pages.", + "type": "string" + }, + "nextLink": { + "description": "Continuation link (absolute URI) to the next page of results in the list.", + "type": "string" + } + } + }, + "OAuthToken": { + "description": "Schema of OAuth token resource.", + "required": [ + "authProviderId", + "farmerId" + ], + "type": "object", + "properties": { + "farmerId": { + "description": "Farmer ID for this OAuth config.", + "type": "string" + }, + "authProviderId": { + "description": "ID of the OAuth provider resource containing app information.", + "type": "string" + }, + "isValid": { + "description": "An optional flag indicating whether the token is a valid or expired (Default value: true).", + "default": true, + "type": "boolean" + }, + "eTag": { + "description": "The ETag value to implement optimistic concurrency.", + "type": "string", + "readOnly": true + }, + "createdDateTime": { + "format": "date-time", + "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "readOnly": true + }, + "modifiedDateTime": { + "format": "date-time", + "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "readOnly": true + } + } + }, + "OAuthTokenListResponse": { + "description": "Paged response contains list of requested objects and a URL link to get the next set of results.", + "type": "object", + "properties": { + "value": { + "description": "List of requested objects.", + "type": "array", + "items": { + "$ref": "#/definitions/OAuthToken" + } + }, + "$skipToken": { + "description": "Token used in retrieving the next page. If null, there are no additional pages.", + "type": "string" + }, + "nextLink": { + "description": "Continuation link (absolute URI) to the next page of results in the list.", + "type": "string" + } + } + }, + "OAuthConnectRequest": { + "description": "Get OAuth config query parameters.", + "required": [ + "farmerId", + "oAuthProviderId", + "userRedirectLink" + ], + "type": "object", + "properties": { + "farmerId": { + "description": "ID of the farmer.", + "type": "string" + }, + "oAuthProviderId": { + "description": "ID of the OAuthProvider.", + "type": "string" + }, + "userRedirectLink": { + "description": "Link to redirect the user to, at the end of the oauth flow.", + "maxLength": 1000, + "minLength": 0, + "type": "string" + }, + "userRedirectState": { + "description": "State to provide back when redirecting the user, at the end of the oauth flow.", + "maxLength": 200, + "minLength": 0, + "type": "string" + } + } + }, + "PlantingProductDetail": { + "description": "Schema for Planting product detail.", + "type": "object", + "properties": { + "productName": { + "description": "Name of the product.", + "type": "string" + }, + "area": { + "$ref": "#/definitions/Measure" + }, + "totalMaterial": { + "$ref": "#/definitions/Measure" + }, + "avgMaterial": { + "$ref": "#/definitions/Measure" + } + } + }, + "PlantingData": { + "description": "Schema of planting data resource.", + "type": "object", + "properties": { + "avgPlantingRate": { + "$ref": "#/definitions/Measure" + }, + "totalMaterial": { + "$ref": "#/definitions/Measure" + }, + "avgMaterial": { + "$ref": "#/definitions/Measure" + }, + "plantingProductDetails": { + "description": "Planting product details.", + "type": "array", + "items": { + "$ref": "#/definitions/PlantingProductDetail" + } + }, + "area": { + "$ref": "#/definitions/Measure" + }, + "source": { + "description": "Source of the operation data.", + "maxLength": 100, + "minLength": 2, + "type": "string" + }, + "operationModifiedDateTime": { + "format": "date-time", + "description": "Modified date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ.\r\nNote: this will be specified by the source provider itself.", + "type": "string" + }, + "operationStartDateTime": { + "format": "date-time", + "description": "Start date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string" + }, + "operationEndDateTime": { + "format": "date-time", + "description": "End date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string" + }, + "attachmentsLink": { + "description": "Link for attachments.", + "type": "string", + "readOnly": true + }, + "associatedBoundaryId": { + "description": "Optional boundary ID of the field for which operation was applied.", + "type": "string" + }, + "operationBoundaryId": { + "description": "Optional boundary ID of the actual area for which operation was applied inside the specified field.", + "type": "string" + }, + "farmerId": { + "description": "Farmer ID which belongs to the operation data.", + "type": "string", + "readOnly": true + }, + "id": { + "description": "Unique resource ID.", + "type": "string", + "readOnly": true + }, + "eTag": { + "description": "The ETag value to implement optimistic concurrency.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "Status of the resource.", + "maxLength": 100, + "minLength": 0, + "type": "string" + }, + "createdDateTime": { + "format": "date-time", + "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "readOnly": true + }, + "modifiedDateTime": { + "format": "date-time", + "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name to identify resource.", + "maxLength": 100, + "minLength": 0, + "type": "string" + }, + "description": { + "description": "Textual description of the resource.", + "maxLength": 500, + "minLength": 0, + "type": "string" + }, + "properties": { + "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and only string and numeral values are supported.", + "type": "object", + "additionalProperties": { + "type": "object" + }, + "example": { + "key1": "value1", + "key2": 123.45 + } + } + } + }, + "PlantingDataListResponse": { + "description": "Paged response contains list of requested objects and a URL link to get the next set of results.", + "type": "object", + "properties": { + "value": { + "description": "List of requested objects.", + "type": "array", + "items": { + "$ref": "#/definitions/PlantingData" + } + }, + "$skipToken": { + "description": "Token used in retrieving the next page. If null, there are no additional pages.", + "type": "string" + }, + "nextLink": { + "description": "Continuation link (absolute URI) to the next page of results in the list.", + "type": "string" + } + } + }, + "ImageFormat": { + "description": "Supported image formats for scene resource.", + "enum": [ + "TIF" + ], + "type": "string", + "x-ms-enum": { + "name": "ImageFormat", + "modelAsString": true + } + }, + "ImageFile": { + "description": "Schema of image file resource.", + "required": [ + "name" + ], + "type": "object", + "properties": { + "fileLink": { + "description": "Link of the image file.", + "type": "string" + }, + "name": { + "description": "Name of the image file.", + "type": "string" + }, + "imageFormat": { + "$ref": "#/definitions/ImageFormat" + }, + "resolution": { + "format": "double", + "description": "Resolution of image file in meters.", + "type": "number" + } + } + }, + "Scene": { + "description": "Schema of scene resource.", + "type": "object", + "properties": { + "sceneDateTime": { + "format": "date-time", + "description": "Date-time of the scene, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string" + }, + "provider": { + "description": "Data provider of the scene.", + "maxLength": 100, + "minLength": 2, + "type": "string" + }, + "source": { + "description": "Data source of the scene.", + "maxLength": 100, + "minLength": 2, + "type": "string" + }, + "imageFiles": { + "description": "Collection of image files.", + "type": "array", + "items": { + "$ref": "#/definitions/ImageFile" + } + }, + "imageFormat": { + "$ref": "#/definitions/ImageFormat" + }, + "cloudCoverPercentage": { + "format": "double", + "description": "Cloud cover percentage of the scene.", + "maximum": 100, + "minimum": 0, + "type": "number" + }, + "darkPixelPercentage": { + "format": "double", + "description": "Dark pixel percentage of the scene.", + "maximum": 100, + "minimum": 0, + "type": "number" + }, + "ndviMedianValue": { + "format": "double", + "description": "Median of NDVI of the scene.", + "maximum": 1, + "minimum": 0, + "type": "number" + }, + "boundaryId": { + "description": "Boundary ID which belongs to the scene.", + "maxLength": 100, + "minLength": 2, + "type": "string" + }, + "farmerId": { + "description": "Farmer ID which belongs to the scene.", + "type": "string" + }, + "id": { + "description": "Unique scene resource ID.", + "type": "string" + }, + "eTag": { + "description": "The ETag value to implement optimistic concurrency.", + "type": "string", + "readOnly": true + } + } + }, + "SceneListResponse": { + "description": "Paged response contains list of requested objects and a URL link to get the next set of results.", + "type": "object", + "properties": { + "value": { + "description": "List of requested objects.", + "type": "array", + "items": { + "$ref": "#/definitions/Scene" + } + }, + "$skipToken": { + "description": "Token used in retrieving the next page. If null, there are no additional pages.", + "type": "string" + }, + "nextLink": { + "description": "Continuation link (absolute URI) to the next page of results in the list.", + "type": "string" + } + } + }, + "DataProvider": { + "description": "Provider of satellite data.", + "enum": [ + "Microsoft" + ], + "type": "string", + "x-ms-enum": { + "name": "DataProvider", + "modelAsString": true + } + }, + "Source": { + "description": "Source of satellite data.", + "enum": [ + "Sentinel_2_L2A" + ], + "type": "string", + "x-ms-enum": { + "name": "Source", + "modelAsString": true + } + }, + "SatelliteData": { + "description": "Data Model for SatelliteIngestionJobRequest.", + "type": "object", + "properties": { + "imageNames": { + "description": "List of ImageNames.", + "type": "array", + "items": { + "type": "string" + }, + "example": [ + "NDVI" + ] + }, + "imageFormats": { + "description": "List of ImageFormats. Available value: TIF.", + "type": "array", + "items": { + "type": "string" + }, + "example": [ + "TIF" + ] + }, + "imageResolutions": { + "description": "List of ImageResolutions in meters. Available values: 10, 20, 60.", + "type": "array", + "items": { + "format": "double", + "type": "number" + }, + "example": [ + 10 + ] + } + } + }, + "SatelliteDataIngestionJob": { + "description": "Schema of satellite data ingestion job.", + "required": [ + "boundaryId", + "endDateTime", + "farmerId", + "startDateTime" + ], + "type": "object", + "properties": { + "farmerId": { + "description": "Farmer ID.", + "type": "string" + }, + "boundaryId": { + "description": "The id of the boundary object for which satellite data is being fetched.", + "type": "string" + }, + "startDateTime": { + "format": "date-time", + "description": "Start Date.", + "type": "string" + }, + "endDateTime": { + "format": "date-time", + "description": "End Date.", + "type": "string" + }, + "provider": { + "$ref": "#/definitions/DataProvider" + }, + "source": { + "$ref": "#/definitions/Source" + }, + "data": { + "$ref": "#/definitions/SatelliteData" + }, + "id": { + "description": "Unique job id.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "Status of the job.\r\nPossible values: 'Waiting', 'Running', 'Succeeded', 'Failed', 'Cancelled'.", + "type": "string", + "readOnly": true + }, + "durationInSeconds": { + "format": "double", + "description": "Duration of the job in seconds.", + "type": "number", + "readOnly": true + }, + "message": { + "description": "Status message to capture more details of the job.", + "type": "string", + "readOnly": true + }, + "createdDateTime": { + "format": "date-time", + "description": "Job created at dateTime. Sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "readOnly": true + }, + "lastActionDateTime": { + "format": "date-time", + "description": "Job was last acted upon at dateTime. Sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "readOnly": true + }, + "startTime": { + "format": "date-time", + "description": "Job start time when available. Sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "readOnly": true + }, + "endTime": { + "format": "date-time", + "description": "Job end time when available. Sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name to identify resource.", + "maxLength": 100, + "minLength": 0, + "type": "string" + }, + "description": { + "description": "Textual description of the resource.", + "maxLength": 500, + "minLength": 0, + "type": "string" + }, + "properties": { + "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and only string and numeral values are supported.", + "type": "object", + "additionalProperties": { + "type": "object" + }, + "example": { + "key1": "value1", + "key2": 123.45 + } + } + } + }, + "SeasonalField": { + "description": "Schema of seasonal field resource.", + "type": "object", + "properties": { + "farmerId": { + "description": "Farmer ID.", + "type": "string", + "readOnly": true + }, + "primaryBoundaryId": { + "description": "Primary boundary id.", + "type": "string", + "readOnly": true + }, + "boundaryIds": { + "description": "Boundary Ids.", + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "farmId": { + "description": "ID of the associated Farm.", + "type": "string" + }, + "fieldId": { + "description": "ID of the associated Field.", + "type": "string" + }, + "seasonId": { + "description": "ID of the season it belongs to.", + "type": "string" + }, + "cropVarietyIds": { + "description": "CropVariety ids.", + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "cropId": { + "description": "ID of the crop it belongs to.", + "type": "string" + }, + "avgYieldValue": { + "format": "double", + "description": "Average yield value of the seasonal field.", + "type": "number" + }, + "avgYieldUnit": { + "description": "Unit of the average yield value attribute.", + "maxLength": 32, + "minLength": 2, + "type": "string" + }, + "avgSeedPopulationValue": { + "format": "double", + "description": "Average seed population value of the seasonal field.", + "type": "number" + }, + "avgSeedPopulationUnit": { + "description": "Unit of average seed population value attribute.", + "maxLength": 32, + "minLength": 2, + "type": "string" + }, + "plantingDateTime": { + "format": "date-time", + "description": "Planting datetime, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string" + }, + "id": { + "description": "Unique resource ID.", + "type": "string", + "readOnly": true + }, + "eTag": { + "description": "The ETag value to implement optimistic concurrency.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "Status of the resource.", + "maxLength": 100, + "minLength": 0, + "type": "string" + }, + "createdDateTime": { + "format": "date-time", + "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "readOnly": true + }, + "modifiedDateTime": { + "format": "date-time", + "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name to identify resource.", + "maxLength": 100, + "minLength": 0, + "type": "string" + }, + "description": { + "description": "Textual description of the resource.", + "maxLength": 500, + "minLength": 0, + "type": "string" + }, + "properties": { + "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and only string and numeral values are supported.", + "type": "object", + "additionalProperties": { + "type": "object" + }, + "example": { + "key1": "value1", + "key2": 123.45 + } + } + } + }, + "SeasonalFieldListResponse": { + "description": "Paged response contains list of requested objects and a URL link to get the next set of results.", + "type": "object", + "properties": { + "value": { + "description": "List of requested objects.", + "type": "array", + "items": { + "$ref": "#/definitions/SeasonalField" + } + }, + "$skipToken": { + "description": "Token used in retrieving the next page. If null, there are no additional pages.", + "type": "string" + }, + "nextLink": { + "description": "Continuation link (absolute URI) to the next page of results in the list.", + "type": "string" + } + } + }, + "Season": { + "description": "Schema of season resource.", + "type": "object", + "properties": { + "startDateTime": { + "format": "date-time", + "description": "Season start datetime, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string" + }, + "endDateTime": { + "format": "date-time", + "description": "Season end datetime, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string" + }, + "year": { + "format": "int32", + "description": "Season year.", + "type": "integer" + }, + "id": { + "description": "Unique resource ID.", + "type": "string", + "readOnly": true + }, + "eTag": { + "description": "The ETag value to implement optimistic concurrency.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "Status of the resource.", + "maxLength": 100, + "minLength": 0, + "type": "string" + }, + "createdDateTime": { + "format": "date-time", + "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "readOnly": true + }, + "modifiedDateTime": { + "format": "date-time", + "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name to identify resource.", + "maxLength": 100, + "minLength": 0, + "type": "string" + }, + "description": { + "description": "Textual description of the resource.", + "maxLength": 500, + "minLength": 0, + "type": "string" + }, + "properties": { + "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and only string and numeral values are supported.", + "type": "object", + "additionalProperties": { + "type": "object" + }, + "example": { + "key1": "value1", + "key2": 123.45 + } + } + } + }, + "SeasonListResponse": { + "description": "Paged response contains list of requested objects and a URL link to get the next set of results.", + "type": "object", + "properties": { + "value": { + "description": "List of requested objects.", + "type": "array", + "items": { + "$ref": "#/definitions/Season" + } + }, + "$skipToken": { + "description": "Token used in retrieving the next page. If null, there are no additional pages.", + "type": "string" + }, + "nextLink": { + "description": "Continuation link (absolute URI) to the next page of results in the list.", + "type": "string" + } + } + }, + "TillageData": { + "description": "Schema of tillage data resource.", + "type": "object", + "properties": { + "tillageDepth": { + "$ref": "#/definitions/Measure" + }, + "tillagePressure": { + "$ref": "#/definitions/Measure" + }, + "area": { + "$ref": "#/definitions/Measure" + }, + "source": { + "description": "Source of the operation data.", + "maxLength": 100, + "minLength": 2, + "type": "string" + }, + "operationModifiedDateTime": { + "format": "date-time", + "description": "Modified date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ.\r\nNote: this will be specified by the source provider itself.", + "type": "string" + }, + "operationStartDateTime": { + "format": "date-time", + "description": "Start date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string" + }, + "operationEndDateTime": { + "format": "date-time", + "description": "End date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string" + }, + "attachmentsLink": { + "description": "Link for attachments.", + "type": "string", + "readOnly": true + }, + "associatedBoundaryId": { + "description": "Optional boundary ID of the field for which operation was applied.", + "type": "string" + }, + "operationBoundaryId": { + "description": "Optional boundary ID of the actual area for which operation was applied inside the specified field.", + "type": "string" + }, + "farmerId": { + "description": "Farmer ID which belongs to the operation data.", + "type": "string", + "readOnly": true + }, + "id": { + "description": "Unique resource ID.", + "type": "string", + "readOnly": true + }, + "eTag": { + "description": "The ETag value to implement optimistic concurrency.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "Status of the resource.", + "maxLength": 100, + "minLength": 0, + "type": "string" + }, + "createdDateTime": { + "format": "date-time", + "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "readOnly": true + }, + "modifiedDateTime": { + "format": "date-time", + "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name to identify resource.", + "maxLength": 100, + "minLength": 0, + "type": "string" + }, + "description": { + "description": "Textual description of the resource.", + "maxLength": 500, + "minLength": 0, + "type": "string" + }, + "properties": { + "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and only string and numeral values are supported.", + "type": "object", + "additionalProperties": { + "type": "object" + }, + "example": { + "key1": "value1", + "key2": 123.45 + } + } + } + }, + "TillageDataListResponse": { + "description": "Paged response contains list of requested objects and a URL link to get the next set of results.", + "type": "object", + "properties": { + "value": { + "description": "List of requested objects.", + "type": "array", + "items": { + "$ref": "#/definitions/TillageData" + } + }, + "$skipToken": { + "description": "Token used in retrieving the next page. If null, there are no additional pages.", + "type": "string" + }, + "nextLink": { + "description": "Continuation link (absolute URI) to the next page of results in the list.", + "type": "string" + } + } + }, + "Location": { + "description": "Location model class.", + "required": [ + "latitude", + "longitude" + ], + "type": "object", + "properties": { + "latitude": { + "format": "double", + "description": "Latitude of the location.", + "maximum": 90, + "minimum": -90, + "type": "number" + }, + "longitude": { + "format": "double", + "description": "Longitude of the location.", + "maximum": 180, + "minimum": -180, + "type": "number" + } + } + }, + "WeatherData": { + "description": "Schema of weather data.", + "required": [ + "boundaryId", + "dateTime", + "extensionId", + "extensionVersion", + "farmerId", + "granularity", + "location", + "weatherDataType" + ], + "type": "object", + "properties": { + "farmerId": { + "description": "Farmer ID.", + "type": "string" + }, + "boundaryId": { + "description": "Boundary ID.", + "type": "string" + }, + "extensionId": { + "description": "ID of the weather extension.", + "type": "string" + }, + "location": { + "$ref": "#/definitions/Location" + }, + "dateTime": { + "format": "date-time", + "description": "Date-time of the weather data, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string" + }, + "unitSystemCode": { + "description": "Unit System like US/SI etc.", + "type": "string" + }, + "extensionVersion": { + "description": "Version of the weather data extension.", + "type": "string" + }, + "weatherDataType": { + "description": "Type of weather data (forecast/historical).", + "type": "string" + }, + "granularity": { + "description": "Granularity of weather data (daily/hourly).", + "type": "string" + }, + "cloudCover": { + "$ref": "#/definitions/Measure" + }, + "dewPoint": { + "$ref": "#/definitions/Measure" + }, + "growingDegreeDay": { + "$ref": "#/definitions/Measure" + }, + "precipitation": { + "$ref": "#/definitions/Measure" + }, + "pressure": { + "$ref": "#/definitions/Measure" + }, + "relativeHumidity": { + "$ref": "#/definitions/Measure" + }, + "soilMoisture": { + "$ref": "#/definitions/Measure" + }, + "soilTemperature": { + "$ref": "#/definitions/Measure" + }, + "temperature": { + "$ref": "#/definitions/Measure" + }, + "visibility": { + "$ref": "#/definitions/Measure" + }, + "wetBulbTemperature": { + "$ref": "#/definitions/Measure" + }, + "windChill": { + "$ref": "#/definitions/Measure" + }, + "windDirection": { + "$ref": "#/definitions/Measure" + }, + "windGust": { + "$ref": "#/definitions/Measure" + }, + "windSpeed": { + "$ref": "#/definitions/Measure" + }, + "id": { + "description": "Weather data ID.", + "type": "string" + }, + "eTag": { + "description": "The ETag value to implement optimistic concurrency.", + "type": "string", + "readOnly": true + }, + "createdDateTime": { + "format": "date-time", + "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "readOnly": true + }, + "modifiedDateTime": { + "format": "date-time", + "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "readOnly": true + }, + "properties": { + "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and only string and numeral values are supported.", + "type": "object", + "additionalProperties": { + "type": "object" + }, + "example": { + "key1": "value1", + "key2": 123.45 + } + } + } + }, + "WeatherDataListResponse": { + "description": "Paged response contains list of requested objects and a URL link to get the next set of results.", + "type": "object", + "properties": { + "value": { + "description": "List of requested objects.", + "type": "array", + "items": { + "$ref": "#/definitions/WeatherData" + } + }, + "$skipToken": { + "description": "Token used in retrieving the next page. If null, there are no additional pages.", + "type": "string" + }, + "nextLink": { + "description": "Continuation link (absolute URI) to the next page of results in the list.", + "type": "string" + } + } + }, + "WeatherDataIngestionJob": { + "description": "Schema of weather ingestion job.", + "required": [ + "boundaryId", + "extensionApiInput", + "extensionApiName", + "extensionId", + "farmerId" + ], + "type": "object", + "properties": { + "boundaryId": { + "description": "The id of the boundary object for which weather data is being fetched.", + "type": "string" + }, + "farmerId": { + "description": "The id of the farmer object for which weather data is being fetched.", + "type": "string" + }, + "extensionId": { + "description": "ID of the extension to be used for the providerInput. eg. DTN.ClearAg.", + "maxLength": 100, + "minLength": 2, + "pattern": "^[A-za-z]{3,50}[.][A-za-z]{3,100}$", + "type": "string" + }, + "extensionApiName": { + "description": "Extension api name to which request is to be made.", + "maxLength": 100, + "minLength": 2, + "type": "string" + }, + "extensionApiInput": { + "description": "Extension api input dictionary which would be used to feed request query/body/parameter information.", + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "extensionDataProviderAppId": { + "description": "App id of the weather data provider.", + "maxLength": 200, + "minLength": 2, + "type": "string" + }, + "extensionDataProviderApiKey": { + "description": "Api key of the weather data provider.", + "maxLength": 200, + "minLength": 2, + "type": "string" + }, + "id": { + "description": "Unique job id.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "Status of the job.\r\nPossible values: 'Waiting', 'Running', 'Succeeded', 'Failed', 'Cancelled'.", + "type": "string", + "readOnly": true + }, + "durationInSeconds": { + "format": "double", + "description": "Duration of the job in seconds.", + "type": "number", + "readOnly": true + }, + "message": { + "description": "Status message to capture more details of the job.", + "type": "string", + "readOnly": true + }, + "createdDateTime": { + "format": "date-time", + "description": "Job created at dateTime. Sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "readOnly": true + }, + "lastActionDateTime": { + "format": "date-time", + "description": "Job was last acted upon at dateTime. Sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "readOnly": true + }, + "startTime": { + "format": "date-time", + "description": "Job start time when available. Sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "readOnly": true + }, + "endTime": { + "format": "date-time", + "description": "Job end time when available. Sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name to identify resource.", + "maxLength": 100, + "minLength": 0, + "type": "string" + }, + "description": { + "description": "Textual description of the resource.", + "maxLength": 500, + "minLength": 0, + "type": "string" + }, + "properties": { + "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and only string and numeral values are supported.", + "type": "object", + "additionalProperties": { + "type": "object" + }, + "example": { + "key1": "value1", + "key2": 123.45 + } + } + } + }, + "WeatherDataDeleteJob": { + "description": "Schema of weather data delete job.", + "required": [ + "boundaryId", + "extensionId", + "farmerId" + ], + "type": "object", + "properties": { + "extensionId": { + "description": "ID of the extension to be used for the providerInput. eg. DTN.ClearAg.", + "maxLength": 100, + "minLength": 2, + "pattern": "^[A-za-z]{3,50}[.][A-za-z]{3,100}$", + "type": "string" + }, + "farmerId": { + "description": "The id of the farmer object for which weather data is being fetched.", + "type": "string" + }, + "boundaryId": { + "description": "The id of the boundary object for which weather data is being fetched.", + "type": "string" + }, + "weatherDataType": { + "description": "Type of weather data. Possible values include: 'forecast' , 'historical'.", + "type": "string" + }, + "granularity": { + "description": "Granularity of weather data. Possible values include: 'daily' , 'hourly'.", + "type": "string" + }, + "startDateTime": { + "format": "date-time", + "description": "Weather data start UTC date-time (inclusive), sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string" + }, + "endDateTime": { + "format": "date-time", + "description": "Weather data end UTC date-time (inclusive), sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string" + }, + "id": { + "description": "Unique job id.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "Status of the job.\r\nPossible values: 'Waiting', 'Running', 'Succeeded', 'Failed', 'Cancelled'.", + "type": "string", + "readOnly": true + }, + "durationInSeconds": { + "format": "double", + "description": "Duration of the job in seconds.", + "type": "number", + "readOnly": true + }, + "message": { + "description": "Status message to capture more details of the job.", + "type": "string", + "readOnly": true + }, + "createdDateTime": { + "format": "date-time", + "description": "Job created at dateTime. Sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "readOnly": true + }, + "lastActionDateTime": { + "format": "date-time", + "description": "Job was last acted upon at dateTime. Sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "readOnly": true + }, + "startTime": { + "format": "date-time", + "description": "Job start time when available. Sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "readOnly": true + }, + "endTime": { + "format": "date-time", + "description": "Job end time when available. Sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name to identify resource.", + "maxLength": 100, + "minLength": 0, + "type": "string" + }, + "description": { + "description": "Textual description of the resource.", + "maxLength": 500, + "minLength": 0, + "type": "string" + }, + "properties": { + "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and only string and numeral values are supported.", + "type": "object", + "additionalProperties": { + "type": "object" + }, + "example": { + "key1": "value1", + "key2": 123.45 + } + } + } + }, + "MultiPolygon": { + "description": "MultiPolygon geometry.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/GeoJsonObject" + }, + { + "$ref": "#/definitions/MultiPolygonCoordinates" + } + ], + "x-ms-discriminator-value": "MultiPolygon" + }, + "MultiPolygonCoordinates": { + "description": "Schema of multi polygon coordinates.", + "required": [ + "coordinates" + ], + "type": "object", + "properties": { + "coordinates": { + "description": "Gets or sets Coordinates of GeoJSON Object.\r\nIt must be an array of polygons, each polygon contains list of linear rings.\r\nFor Polygons with more than one of these rings, the first MUST be the exterior ring,\r\nand any others MUST be interior rings.", + "minLength": 1, + "type": "array", + "items": { + "type": "array", + "items": { + "type": "array", + "items": { + "type": "array", + "items": { + "format": "double", + "type": "number" + } + } + } + } + } + } + }, + "Point": { + "description": "Point geometry.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/GeoJsonObject" + }, + { + "$ref": "#/definitions/PointCoordinates" + } + ], + "x-ms-discriminator-value": "Point" + }, + "PointCoordinates": { + "description": "Schema of the coordinates of a point.", + "type": "object", + "required": [ + "coordinates" + ], + "properties": { + "coordinates": { + "description": "Gets or sets the coordinate of this point.\r\nIt must be an array of 2 or 3 elements for a 2D or 3D system.", + "maximum": 3, + "minimum": 2, + "type": "array", + "items": { + "format": "double", + "type": "number" + } + } + } + }, + "Polygon": { + "description": "Polygon geometry.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/GeoJsonObject" + }, + { + "$ref": "#/definitions/PolygonCoordinates" + } + ], + "x-ms-discriminator-value": "Polygon" + }, + "PolygonCoordinates": { + "description": "Schema of polygon coordinates.", + "required": [ + "coordinates" + ], + "type": "object", + "properties": { + "coordinates": { + "description": "Gets or sets type of the GeoJSON Object.\r\nIt must be an array of linear ring coordinate arrays.\r\nFor Polygons with more than one of these rings, the first MUST be the exterior ring,\r\nand any others MUST be interior rings.", + "minLength": 1, + "type": "array", + "items": { + "type": "array", + "items": { + "type": "array", + "items": { + "format": "double", + "type": "number" + } + } + } + } + } + } + }, + "securityDefinitions": { + "Bearer": { + "type": "apiKey", + "name": "Authorization", + "in": "header", + "description": "Please provide a valid bearer token for authorized API calls. Note that you might need to clear your browser cache if you tried un-authenticated calls before." + } + }, + "security": [ + { + "Bearer": [] + } + ] +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/ApplicationData_CreateOrUpdate.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/ApplicationData_CreateOrUpdate.json new file mode 100644 index 000000000000..57545922eeb1 --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/ApplicationData_CreateOrUpdate.json @@ -0,0 +1,149 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "farmerId": "FARMER123", + "applicationDataId": "APPLICATION123", + "api-version": "2021-03-31-preview", + "applicationData": { + "source": "Manual", + "name": "Application data for North Farm", + "description": "some description", + "status": "Active", + "operationStartDateTime": "2021-02-25T16:57:04Z", + "operationEndDateTime": "2021-02-27T10:13:06Z", + "operationModifiedDateTime": "2021-02-28T11:12:12Z", + "operationBoundaryId": "APPLICATIONOPBOUNDARY1", + "associatedBoundaryId": "NORTHFARM2021CORNBOUNDARY", + "area": { + "unit": "acre", + "value": 60 + }, + "totalMaterial": { + "unit": "kilos", + "value": 9 + }, + "avgMaterial": { + "unit": "kilosperacre", + "value": 0.15 + }, + "applicationProductDetails": [ + { + "productName": "POTASHVAR1", + "isCarrier": false, + "totalMaterial": { + "unit": "kilos", + "value": 4 + }, + "avgMaterial": { + "unit": "kilosperacre", + "value": 0.2 + } + } + ], + "properties": { + "Region": "Europe", + "CountyCode": 123 + } + } + }, + "responses": { + "200": { + "body": { + "farmerId": "FARMER123", + "id": "APPLICATION123", + "source": "Manual", + "name": "Application data for North Farm", + "description": "some description", + "status": "Active", + "operationStartDateTime": "2021-02-25T16:57:04Z", + "operationEndDateTime": "2021-02-27T10:13:06Z", + "operationModifiedDateTime": "2021-02-28T11:12:12Z", + "operationBoundaryId": "APPLICATIONOPBOUNDARY1", + "associatedBoundaryId": "NORTHFARM2021CORNBOUNDARY", + "area": { + "unit": "acre", + "value": 60 + }, + "totalMaterial": { + "unit": "kilos", + "value": 9 + }, + "avgMaterial": { + "unit": "kilosperacre", + "value": 0.15 + }, + "applicationProductDetails": [ + { + "productName": "POTASHVAR1", + "isCarrier": false, + "totalMaterial": { + "unit": "kilos", + "value": 4 + }, + "avgMaterial": { + "unit": "kilosperacre", + "value": 0.2 + } + } + ], + "properties": { + "Region": "Europe", + "CountyCode": 123 + }, + "attachmentsLink": "https://.farmbeats.azure.net/farmer/{{farmerId}}/attachments?api-version={{apiVersion}}&resourceIds={{applicationDataId}}&resourceTypes=ApplicationData", + "createdDateTime": "2021-02-29T04:57:04Z", + "modifiedDateTime": "2021-03-08T18:22:07Z", + "eTag": "cb00a3ac-0000-0100-0000-601d21ec0000" + } + }, + "201": { + "body": { + "farmerId": "FARMER123", + "id": "APPLICATION123", + "source": "Manual", + "name": "Application data for North Farm", + "description": "some description", + "status": "Active", + "operationStartDateTime": "2021-02-25T16:57:04Z", + "operationEndDateTime": "2021-02-27T10:13:06Z", + "operationModifiedDateTime": "2021-02-28T11:12:12Z", + "operationBoundaryId": "APPLICATIONOPBOUNDARY1", + "associatedBoundaryId": "NORTHFARM2021CORNBOUNDARY", + "area": { + "unit": "acre", + "value": 60 + }, + "totalMaterial": { + "unit": "kilos", + "value": 9 + }, + "avgMaterial": { + "unit": "kilosperacre", + "value": 0.15 + }, + "applicationProductDetails": [ + { + "productName": "POTASHVAR1", + "isCarrier": false, + "totalMaterial": { + "unit": "kilos", + "value": 4 + }, + "avgMaterial": { + "unit": "kilosperacre", + "value": 0.2 + } + } + ], + "properties": { + "Region": "Europe", + "CountyCode": 123 + }, + "attachmentsLink": "https://.farmbeats.azure.net/farmer/{{farmerId}}/attachments?api-version={{apiVersion}}&resourceIds={{applicationDataId}}&resourceTypes=ApplicationData", + "createdDateTime": "2021-02-29T04:57:04Z", + "modifiedDateTime": "2021-03-08T18:22:07Z", + "eTag": "cb00a3ac-0000-0100-0000-601d21ec0000" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/ApplicationData_Delete.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/ApplicationData_Delete.json new file mode 100644 index 000000000000..20dc9e559382 --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/ApplicationData_Delete.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "farmerId": "FARMER123", + "applicationDataId": "APPLICATION123", + "api-version": "2021-03-31-preview" + }, + "responses": { + "204": {} + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/ApplicationData_Get.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/ApplicationData_Get.json new file mode 100644 index 000000000000..b9daa7a1fd1f --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/ApplicationData_Get.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "farmerId": "FARMER123", + "applicationDataId": "APPLICATION123", + "api-version": "2021-03-31-preview" + }, + "responses": { + "200": { + "body": { + "farmerId": "FARMER123", + "id": "APPLICATION123", + "source": "Manual", + "name": "Application data for North Farm", + "description": "some description", + "status": "Active", + "operationStartDateTime": "2021-02-25T16:57:04Z", + "operationEndDateTime": "2021-02-27T10:13:06Z", + "operationModifiedDateTime": "2021-02-28T11:12:12Z", + "operationBoundaryId": "APPLICATIONOPBOUNDARY1", + "associatedBoundaryId": "NORTHFARM2021CORNBOUNDARY", + "area": { + "unit": "acre", + "value": 60 + }, + "totalMaterial": { + "unit": "kilos", + "value": 9 + }, + "avgMaterial": { + "unit": "kilosperacre", + "value": 0.15 + }, + "applicationProductDetails": [ + { + "productName": "POTASHVAR1", + "isCarrier": false, + "totalMaterial": { + "unit": "kilos", + "value": 4 + }, + "avgMaterial": { + "unit": "kilosperacre", + "value": 0.2 + } + } + ], + "properties": { + "Region": "Europe", + "CountyCode": 123 + }, + "attachmentsLink": "https://.farmbeats.azure.net/farmer/{{farmerId}}/attachments?api-version={{apiVersion}}&resourceIds={{applicationDataId}}&resourceTypes=ApplicationData", + "createdDateTime": "2021-02-29T04:57:04Z", + "modifiedDateTime": "2021-03-08T18:22:07Z", + "eTag": "cb00a3ac-0000-0100-0000-601d21ec0000" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/ApplicationData_List.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/ApplicationData_List.json new file mode 100644 index 000000000000..5f76b4ef2d0d --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/ApplicationData_List.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2021-03-31-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "farmerId": "FARMER123", + "id": "APPLICATION123", + "source": "Manual", + "name": "Application data for North Farm", + "description": "some description", + "status": "Active", + "operationStartDateTime": "2021-02-25T16:57:04Z", + "operationEndDateTime": "2021-02-27T10:13:06Z", + "operationModifiedDateTime": "2021-02-28T11:12:12Z", + "operationBoundaryId": "APPLICATIONOPBOUNDARY1", + "associatedBoundaryId": "NORTHFARM2021CORNBOUNDARY", + "area": { + "unit": "acre", + "value": 60 + }, + "totalMaterial": { + "unit": "kilos", + "value": 9 + }, + "avgMaterial": { + "unit": "kilosperacre", + "value": 0.15 + }, + "applicationProductDetails": [ + { + "productName": "POTASHVAR1", + "isCarrier": false, + "totalMaterial": { + "unit": "kilos", + "value": 4 + }, + "avgMaterial": { + "unit": "kilosperacre", + "value": 0.2 + } + } + ], + "properties": { + "Region": "Europe", + "CountyCode": 123 + }, + "attachmentsLink": "https://.farmbeats.azure.net/farmer/{{farmerId}}/attachments?api-version={{apiVersion}}&resourceIds={{applicationDataId}}&resourceTypes=ApplicationData", + "createdDateTime": "2021-02-29T04:57:04Z", + "modifiedDateTime": "2021-03-08T18:22:07Z", + "eTag": "cb00a3ac-0000-0100-0000-601d21ec0000" + } + ], + "$skipToken": "string", + "nextLink": "https://{{resourceName}}.farmbeats.azure.net/farmers/{{farmerId}}/seasonalFields/{{seasonalFieldId}}?api-version={{apiVersion}}&$skipToken=%5b%7b%22token%22%3a%22%2bRID%3a%7e23TRC%3a10%23ISA%3d%22%2c%22range%22%3a%7b%22min%22%3a%22%22%2c%22max%22%3a%22FF%22%7d%7d%5d" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/ApplicationData_ListByFarmerId.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/ApplicationData_ListByFarmerId.json new file mode 100644 index 000000000000..5b0d758e3ae4 --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/ApplicationData_ListByFarmerId.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "farmerId": "FARMER123", + "api-version": "2021-03-31-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "farmerId": "FARMER123", + "id": "APPLICATION123", + "source": "Manual", + "name": "Application data for North Farm", + "description": "some description", + "status": "Active", + "operationStartDateTime": "2021-02-25T16:57:04Z", + "operationEndDateTime": "2021-02-27T10:13:06Z", + "operationModifiedDateTime": "2021-02-28T11:12:12Z", + "operationBoundaryId": "APPLICATIONOPBOUNDARY1", + "associatedBoundaryId": "NORTHFARM2021CORNBOUNDARY", + "area": { + "unit": "acre", + "value": 60 + }, + "totalMaterial": { + "unit": "kilos", + "value": 9 + }, + "avgMaterial": { + "unit": "kilosperacre", + "value": 0.15 + }, + "applicationProductDetails": [ + { + "productName": "POTASHVAR1", + "isCarrier": false, + "totalMaterial": { + "unit": "kilos", + "value": 4 + }, + "avgMaterial": { + "unit": "kilosperacre", + "value": 0.2 + } + } + ], + "properties": { + "Region": "Europe", + "CountyCode": 123 + }, + "attachmentsLink": "https://.farmbeats.azure.net/farmer/{{farmerId}}/attachments?api-version={{apiVersion}}&resourceIds={{applicationDataId}}&resourceTypes=ApplicationData", + "createdDateTime": "2021-02-29T04:57:04Z", + "modifiedDateTime": "2021-03-08T18:22:07Z", + "eTag": "cb00a3ac-0000-0100-0000-601d21ec0000" + } + ], + "$skipToken": "string", + "nextLink": "https://{{resourceName}}.farmbeats.azure.net/farmers/{{farmerId}}/seasonalFields/{{seasonalFieldId}}?api-version={{apiVersion}}&$skipToken=%5b%7b%22token%22%3a%22%2bRID%3a%7e23TRC%3a10%23ISA%3d%22%2c%22range%22%3a%7b%22min%22%3a%22%22%2c%22max%22%3a%22FF%22%7d%7d%5d" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Attachments_CreateOrUpdate.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Attachments_CreateOrUpdate.json new file mode 100644 index 000000000000..690aa0d90592 --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Attachments_CreateOrUpdate.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "farmerId": "FARMER123", + "attachmentId": "ATTACHMENT123", + "api-version": "2021-03-31-preview", + "file": "101010101" + }, + "responses": { + "200": { + "body": { + "id": "ATTACHMENT123", + "farmerId": "FARMER123", + "resourceId": "FARMER123", + "resourceType": "farmer", + "originalFileName": "attachment-file", + "name": "John Smith's Field", + "status": "Active", + "description": "Some description", + "createdDateTime": "2021-04-21T06:49:30Z", + "modifiedDateTime": "2021-04-21T06:49:30Z", + "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e" + } + }, + "201": { + "body": { + "id": "ATTACHMENT123", + "farmerId": "FARMER123", + "resourceId": "FARMER123", + "resourceType": "farmer", + "originalFileName": "attachment-file", + "name": "John Smith's Field", + "status": "Active", + "description": "Some description", + "createdDateTime": "2021-04-21T06:49:30Z", + "modifiedDateTime": "2021-04-21T06:49:30Z", + "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Attachments_Delete.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Attachments_Delete.json new file mode 100644 index 000000000000..e6fddfaa62cf --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Attachments_Delete.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "farmerId": "FARMER123", + "attachmentId": "ATTACHMENT123", + "api-version": "2021-03-31-preview" + }, + "responses": { + "204": {} + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Attachments_Download.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Attachments_Download.json new file mode 100644 index 000000000000..75312a623832 --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Attachments_Download.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "farmerId": "FARMER123", + "attachmentId": "ATTACHMENT123", + "api-version": "2021-03-31-preview" + }, + "responses": { + "200": { + "body": "101010101" + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Attachments_Get.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Attachments_Get.json new file mode 100644 index 000000000000..635f927d9a43 --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Attachments_Get.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "farmerId": "FARMER123", + "attachmentId": "ATTACHMENT123", + "api-version": "2021-03-31-preview" + }, + "responses": { + "200": { + "body": { + "id": "ATTACHMENT123", + "farmerId": "FARMER123", + "resourceId": "FARMER123", + "resourceType": "farmer", + "originalFileName": "attachment-file", + "name": "John Smith's Field", + "status": "Active", + "description": "Some description", + "createdDateTime": "2021-04-21T06:49:30Z", + "modifiedDateTime": "2021-04-21T06:49:30Z", + "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Attachments_ListByFarmerId.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Attachments_ListByFarmerId.json new file mode 100644 index 000000000000..5fd6ec10225c --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Attachments_ListByFarmerId.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "farmerId": "FARMER123", + "api-version": "2021-03-31-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "ATTACHMENT123", + "farmerId": "FARMER123", + "resourceId": "FARMER123", + "resourceType": "farmer", + "originalFileName": "attachment-file", + "name": "John Smith's Field", + "status": "Active", + "description": "Some description", + "createdDateTime": "2021-04-21T06:49:30Z", + "modifiedDateTime": "2021-04-21T06:49:30Z", + "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e" + } + ], + "$skipToken": "string", + "nextLink": "https://{{resourceName}}.farmbeats.azure.net/farmers/{{farmerId}}/seasonalFields/{{seasonalFieldId}}?api-version={{apiVersion}}&$skipToken=%5b%7b%22token%22%3a%22%2bRID%3a%7e23TRC%3a10%23ISA%3d%22%2c%22range%22%3a%7b%22min%22%3a%22%22%2c%22max%22%3a%22FF%22%7d%7d%5d" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Boundaries_CreateCascadeDeleteJob.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Boundaries_CreateCascadeDeleteJob.json new file mode 100644 index 000000000000..09ce3d8c2053 --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Boundaries_CreateCascadeDeleteJob.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "farmerId": "FARMER123", + "boundaryId": "BOUNDARY123", + "api-version": "2021-03-31-preview", + "jobId": "JOB123" + }, + "responses": { + "202": { + "body": { + "id": "JOB123", + "status": "Succeeded", + "message": "Job completed successfully.", + "durationInSeconds": 14.7977857, + "createdDateTime": "2021-04-19T11:31:20Z", + "lastActionDateTime": "2021-04-19T11:31:34Z", + "startTime": "2021-04-19T11:31:19Z", + "endTime": "2021-04-19T11:31:34Z", + "farmerId": "FARMER123", + "resourceId": "BOUNDARY123", + "resourceType": "boundary", + "name": "John Smith's Boundary", + "description": "Some description", + "properties": { + "Irrigated": "Yes", + "RetailerId": "Retailer123" + } + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Boundaries_CreateOrUpdate.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Boundaries_CreateOrUpdate.json new file mode 100644 index 000000000000..25264c72321d --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Boundaries_CreateOrUpdate.json @@ -0,0 +1,137 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "farmerId": "FARMER123", + "boundaryId": "BOUNDARY123", + "api-version": "2021-03-31-preview", + "boundary": { + "parentId": "FIELD123", + "isPrimary": false, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 73.70457172393799, + 20.545385304358106 + ], + [ + 73.70457172393799, + 20.545385304358106 + ], + [ + 73.70448589324951, + 20.542411534243367 + ], + [ + 73.70877742767334, + 20.541688176010233 + ], + [ + 73.71023654937744, + 20.545083911372505 + ], + [ + 73.70663166046143, + 20.546992723579137 + ], + [ + 73.70457172393799, + 20.545385304358106 + ] + ] + ] + }, + "name": "John Smith's Boundary", + "description": "Some description" + } + }, + "responses": { + "200": { + "body": { + "parentId": "FIELD123", + "isPrimary": false, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 73.70457172393799, + 20.545385304358106 + ], + [ + 73.70457172393799, + 20.545385304358106 + ], + [ + 73.70448589324951, + 20.542411534243367 + ], + [ + 73.70877742767334, + 20.541688176010233 + ], + [ + 73.71023654937744, + 20.545083911372505 + ], + [ + 73.70663166046143, + 20.546992723579137 + ], + [ + 73.70457172393799, + 20.545385304358106 + ] + ] + ] + }, + "name": "John Smith's Boundary", + "description": "Some description" + } + }, + "201": { + "body": { + "parentId": "FIELD123", + "isPrimary": false, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 73.70457172393799, + 20.545385304358106 + ], + [ + 73.70457172393799, + 20.545385304358106 + ], + [ + 73.70448589324951, + 20.542411534243367 + ], + [ + 73.70877742767334, + 20.541688176010233 + ], + [ + 73.71023654937744, + 20.545083911372505 + ], + [ + 73.70663166046143, + 20.546992723579137 + ], + [ + 73.70457172393799, + 20.545385304358106 + ] + ] + ] + }, + "name": "John Smith's Boundary", + "description": "Some description" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Boundaries_Delete.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Boundaries_Delete.json new file mode 100644 index 000000000000..6f54f0c0e68b --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Boundaries_Delete.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "farmerId": "FARMER123", + "boundaryId": "BOUNDARY123", + "api-version": "2021-03-31-preview" + }, + "responses": { + "204": {} + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Boundaries_Get.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Boundaries_Get.json new file mode 100644 index 000000000000..8b367ca8b678 --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Boundaries_Get.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "farmerId": "FARMER123", + "boundaryId": "BOUNDARY123", + "api-version": "2021-03-31-preview" + }, + "responses": { + "200": { + "body": { + "parentId": "FIELD123", + "isPrimary": false, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 73.70457172393799, + 20.545385304358106 + ], + [ + 73.70457172393799, + 20.545385304358106 + ], + [ + 73.70448589324951, + 20.542411534243367 + ], + [ + 73.70877742767334, + 20.541688176010233 + ], + [ + 73.71023654937744, + 20.545083911372505 + ], + [ + 73.70663166046143, + 20.546992723579137 + ], + [ + 73.70457172393799, + 20.545385304358106 + ] + ] + ] + }, + "name": "John Smith's Boundary", + "description": "Some description" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Boundaries_GetCascadeDeleteJobDetails.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Boundaries_GetCascadeDeleteJobDetails.json new file mode 100644 index 000000000000..aa0fba378785 --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Boundaries_GetCascadeDeleteJobDetails.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2021-03-31-preview", + "jobId": "JOB123" + }, + "responses": { + "200": { + "body": { + "id": "JOB123", + "status": "Succeeded", + "message": "Job completed successfully.", + "durationInSeconds": 14.7977857, + "createdDateTime": "2021-04-19T11:31:20Z", + "lastActionDateTime": "2021-04-19T11:31:34Z", + "startTime": "2021-04-19T11:31:19Z", + "endTime": "2021-04-19T11:31:34Z", + "name": "John Smith's Boundary", + "description": "Some description", + "properties": { + "Irrigated": "Yes", + "RetailerId": "Retailer123" + }, + "farmerId": "FARMER123", + "resourceId": "BOUNDARY123", + "resourceType": "boundary" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Boundaries_GetOverlap.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Boundaries_GetOverlap.json new file mode 100644 index 000000000000..35d8e2ae0f84 --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Boundaries_GetOverlap.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "farmerId": "FARMER123", + "boundaryId": "BOUNDARY123", + "otherFarmerId": "FARMER456", + "otherBoundaryId": "BOUNDARY56", + "api-version": "2021-03-31-preview" + }, + "responses": { + "200": { + "body": { + "boundaryAcreage": 35, + "otherBoundaryAcreage": 25, + "intersectingAcreage": 10 + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Boundaries_List.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Boundaries_List.json new file mode 100644 index 000000000000..8ca2e70efba1 --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Boundaries_List.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2021-03-31-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "parentId": "FIELD123", + "isPrimary": false, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 73.70457172393799, + 20.545385304358106 + ], + [ + 73.70457172393799, + 20.545385304358106 + ], + [ + 73.70448589324951, + 20.542411534243367 + ], + [ + 73.70877742767334, + 20.541688176010233 + ], + [ + 73.71023654937744, + 20.545083911372505 + ], + [ + 73.70663166046143, + 20.546992723579137 + ], + [ + 73.70457172393799, + 20.545385304358106 + ] + ] + ] + }, + "name": "John Smith's Boundary", + "description": "Some description" + } + ], + "$skipToken": "string", + "nextLink": "https://{{resourceName}}.farmbeats.azure.net/farmers/{{farmerId}}/seasonalFields/{{seasonalFieldId}}?api-version={{apiVersion}}&$skipToken=%5b%7b%22token%22%3a%22%2bRID%3a%7e23TRC%3a10%23ISA%3d%22%2c%22range%22%3a%7b%22min%22%3a%22%22%2c%22max%22%3a%22FF%22%7d%7d%5d" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Boundaries_ListByFarmerId.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Boundaries_ListByFarmerId.json new file mode 100644 index 000000000000..d4779fd7e53b --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Boundaries_ListByFarmerId.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "farmerId": "FARMER123", + "api-version": "2021-03-31-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "parentId": "FIELD123", + "isPrimary": false, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 73.70457172393799, + 20.545385304358106 + ], + [ + 73.70457172393799, + 20.545385304358106 + ], + [ + 73.70448589324951, + 20.542411534243367 + ], + [ + 73.70877742767334, + 20.541688176010233 + ], + [ + 73.71023654937744, + 20.545083911372505 + ], + [ + 73.70663166046143, + 20.546992723579137 + ], + [ + 73.70457172393799, + 20.545385304358106 + ] + ] + ] + }, + "name": "John Smith's Boundary", + "description": "Some description" + } + ], + "$skipToken": "string", + "nextLink": "https://{{resourceName}}.farmbeats.azure.net/farmers/{{farmerId}}/seasonalFields/{{seasonalFieldId}}?api-version={{apiVersion}}&$skipToken=%5b%7b%22token%22%3a%22%2bRID%3a%7e23TRC%3a10%23ISA%3d%22%2c%22range%22%3a%7b%22min%22%3a%22%22%2c%22max%22%3a%22FF%22%7d%7d%5d" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Boundaries_Search.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Boundaries_Search.json new file mode 100644 index 000000000000..713d5e4f3859 --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Boundaries_Search.json @@ -0,0 +1,111 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2021-03-31-preview", + "body": { + "ids": [ + "BOUNDARY123" + ], + "names": [ + "John Smith's Boundary" + ], + "propertyFilters": [ + "RetailerId" + ], + "statuses": [ + "Active" + ], + "minCreatedDateTime": "2021-04-22T12:53:39Z", + "maxCreatedDateTime": "2021-04-22T12:53:39Z", + "minLastModifiedDateTime": "2021-04-22T12:53:39Z", + "maxLastModifiedDateTime": "2021-04-22T12:53:39Z", + "$maxPageSize": 50, + "$skipToken": "string", + "isPrimary": true, + "parentType": "field", + "parentIds": [ + "FIELD123" + ], + "minAcreage": 200, + "maxAcreage": 800, + "intersectsWithGeometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 10.98958969116211, + 45.284911882713146 + ], + [ + 11.004695892333984, + 45.284911882713146 + ], + [ + 11.004695892333984, + 45.29360722000945 + ], + [ + 10.98958969116211, + 45.29360722000945 + ], + [ + 10.98958969116211, + 45.284911882713146 + ] + ] + ] + } + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "parentId": "FIELD123", + "isPrimary": false, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 73.70457172393799, + 20.545385304358106 + ], + [ + 73.70457172393799, + 20.545385304358106 + ], + [ + 73.70448589324951, + 20.542411534243367 + ], + [ + 73.70877742767334, + 20.541688176010233 + ], + [ + 73.71023654937744, + 20.545083911372505 + ], + [ + 73.70663166046143, + 20.546992723579137 + ], + [ + 73.70457172393799, + 20.545385304358106 + ] + ] + ] + }, + "name": "John Smith's Boundary", + "description": "Some description" + } + ], + "$skipToken": "string", + "nextLink": "https://{{resourceName}}.farmbeats.azure.net/farmers/{{farmerId}}/seasonalFields/{{seasonalFieldId}}?api-version={{apiVersion}}&$skipToken=%5b%7b%22token%22%3a%22%2bRID%3a%7e23TRC%3a10%23ISA%3d%22%2c%22range%22%3a%7b%22min%22%3a%22%22%2c%22max%22%3a%22FF%22%7d%7d%5d" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Boundaries_SearchByFarmerId.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Boundaries_SearchByFarmerId.json new file mode 100644 index 000000000000..01153167765b --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Boundaries_SearchByFarmerId.json @@ -0,0 +1,112 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "farmerId": "FARMER123", + "api-version": "2021-03-31-preview", + "body": { + "ids": [ + "BOUNDARY123" + ], + "names": [ + "John Smith's Boundary" + ], + "propertyFilters": [ + "RetailerId" + ], + "statuses": [ + "Active" + ], + "minCreatedDateTime": "2021-04-22T12:53:39Z", + "maxCreatedDateTime": "2021-04-22T12:53:39Z", + "minLastModifiedDateTime": "2021-04-22T12:53:39Z", + "maxLastModifiedDateTime": "2021-04-22T12:53:39Z", + "$maxPageSize": 50, + "$skipToken": "string", + "isPrimary": true, + "parentType": "field", + "parentIds": [ + "FIELD123" + ], + "minAcreage": 200, + "maxAcreage": 800, + "intersectsWithGeometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 10.98958969116211, + 45.284911882713146 + ], + [ + 11.004695892333984, + 45.284911882713146 + ], + [ + 11.004695892333984, + 45.29360722000945 + ], + [ + 10.98958969116211, + 45.29360722000945 + ], + [ + 10.98958969116211, + 45.284911882713146 + ] + ] + ] + } + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "John Smith's Boundary", + "description": "Some description", + "parentId": "FIELD123", + "isPrimary": false, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 73.70457172393799, + 20.545385304358106 + ], + [ + 73.70457172393799, + 20.545385304358106 + ], + [ + 73.70448589324951, + 20.542411534243367 + ], + [ + 73.70877742767334, + 20.541688176010233 + ], + [ + 73.71023654937744, + 20.545083911372505 + ], + [ + 73.70663166046143, + 20.546992723579137 + ], + [ + 73.70457172393799, + 20.545385304358106 + ] + ] + ] + } + } + ], + "$skipToken": "string", + "nextLink": "https://{{resourceName}}.farmbeats.azure.net/farmers/{{farmerId}}/seasonalFields/{{seasonalFieldId}}?api-version={{apiVersion}}&$skipToken=%5b%7b%22token%22%3a%22%2bRID%3a%7e23TRC%3a10%23ISA%3d%22%2c%22range%22%3a%7b%22min%22%3a%22%22%2c%22max%22%3a%22FF%22%7d%7d%5d" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/CropVarieties_CreateOrUpdate.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/CropVarieties_CreateOrUpdate.json new file mode 100644 index 000000000000..b55ebb68da1a --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/CropVarieties_CreateOrUpdate.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2021-03-31-preview", + "cropId": "CORN123", + "cropVarietyId": "SEED123", + "cropVariety": { + "brand": "BRAND123", + "product": "AGTECH", + "status": "Active", + "name": "John Smith's Crop", + "description": "Some description", + "properties": { + "Irrigated": "Yes", + "RetailerId": "Retailer123" + } + } + }, + "responses": { + "200": { + "body": { + "id": "SEED123", + "cropId": "CORN123", + "brand": "BRAND123", + "product": "AGTECH", + "name": "John Smith's Crop", + "status": "Active", + "description": "Some description", + "properties": { + "Irrigated": "Yes", + "RetailerId": "Retailer123" + }, + "createdDateTime": "2021-04-21T06:49:30Z", + "modifiedDateTime": "2021-04-21T06:49:30Z", + "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e" + } + }, + "201": { + "body": { + "id": "SEED123", + "cropId": "CORN123", + "brand": "BRAND123", + "product": "AGTECH", + "name": "John Smith's Crop", + "status": "Active", + "description": "Some description", + "properties": { + "Irrigated": "Yes", + "RetailerId": "Retailer123" + }, + "createdDateTime": "2021-04-21T06:49:30Z", + "modifiedDateTime": "2021-04-21T06:49:30Z", + "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/CropVarieties_Delete.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/CropVarieties_Delete.json new file mode 100644 index 000000000000..c62fd820d5c2 --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/CropVarieties_Delete.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2021-03-31-preview", + "cropId": "CORN123", + "cropVarietyId": "SEED123" + }, + "responses": { + "204": {} + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/CropVarieties_Get.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/CropVarieties_Get.json new file mode 100644 index 000000000000..be3eca9dbfa1 --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/CropVarieties_Get.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2021-03-31-preview", + "cropId": "CORN123", + "cropVarietyId": "SEED123" + }, + "responses": { + "200": { + "body": { + "id": "SEED123", + "cropId": "CORN123", + "brand": "BRAND123", + "product": "AGTECH", + "name": "John Smith's Crop", + "status": "Active", + "description": "Some description", + "properties": { + "Irrigated": "Yes", + "RetailerId": "Retailer123" + }, + "createdDateTime": "2021-04-21T06:49:30Z", + "modifiedDateTime": "2021-04-21T06:49:30Z", + "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/CropVarieties_List.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/CropVarieties_List.json new file mode 100644 index 000000000000..ccde0d486bd2 --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/CropVarieties_List.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2021-03-31-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "SEED123", + "cropId": "CORN123", + "brand": "BRAND123", + "product": "AGTECH", + "name": "John Smith's Crop", + "status": "Active", + "description": "Some description", + "properties": { + "Irrigated": "Yes", + "RetailerId": "Retailer123" + }, + "createdDateTime": "2021-04-21T06:49:30Z", + "modifiedDateTime": "2021-04-21T06:49:30Z", + "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e" + } + ], + "$skipToken": "string", + "nextLink": "https://{{resourceName}}.farmbeats.azure.net/farmers/{{farmerId}}/seasonalFields/{{seasonalFieldId}}?api-version={{apiVersion}}&$skipToken=%5b%7b%22token%22%3a%22%2bRID%3a%7e23TRC%3a10%23ISA%3d%22%2c%22range%22%3a%7b%22min%22%3a%22%22%2c%22max%22%3a%22FF%22%7d%7d%5d" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/CropVarieties_ListByCropId.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/CropVarieties_ListByCropId.json new file mode 100644 index 000000000000..8eb7a9d2af11 --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/CropVarieties_ListByCropId.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2021-03-31-preview", + "cropId": "CORN123" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "SEED123", + "cropId": "CORN123", + "brand": "BRAND123", + "product": "AGTECH", + "name": "John Smith's Crop", + "status": "Active", + "description": "Some description", + "properties": { + "Irrigated": "Yes", + "RetailerId": "Retailer123" + }, + "createdDateTime": "2021-04-21T06:49:30Z", + "modifiedDateTime": "2021-04-21T06:49:30Z", + "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e" + } + ], + "$skipToken": "string", + "nextLink": "https://{{resourceName}}.farmbeats.azure.net/farmers/{{farmerId}}/seasonalFields/{{seasonalFieldId}}?api-version={{apiVersion}}&$skipToken=%5b%7b%22token%22%3a%22%2bRID%3a%7e23TRC%3a10%23ISA%3d%22%2c%22range%22%3a%7b%22min%22%3a%22%22%2c%22max%22%3a%22FF%22%7d%7d%5d" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Crops_CreateOrUpdate.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Crops_CreateOrUpdate.json new file mode 100644 index 000000000000..89db89d4104e --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Crops_CreateOrUpdate.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2021-03-31-preview", + "cropId": "CORN123", + "crop": { + "phenotype": "Corn", + "status": "Active", + "name": "John Smith's Crop", + "description": "Some description", + "properties": { + "Irrigated": "Yes", + "RetailerId": "Retailer123" + } + } + }, + "responses": { + "200": { + "body": { + "id": "CORN123", + "phenotype": "Corn", + "name": "John Smith's Crop", + "status": "Active", + "description": "Some description", + "properties": { + "Irrigated": "Yes", + "RetailerId": "Retailer123" + }, + "createdDateTime": "2021-04-21T06:49:30Z", + "modifiedDateTime": "2021-04-21T06:49:30Z", + "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e" + } + }, + "201": { + "body": { + "id": "CORN123", + "phenotype": "Corn", + "name": "John Smith's Crop", + "status": "Active", + "description": "Some description", + "properties": { + "Irrigated": "Yes", + "RetailerId": "Retailer123" + }, + "createdDateTime": "2021-04-21T06:49:30Z", + "modifiedDateTime": "2021-04-21T06:49:30Z", + "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Crops_Delete.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Crops_Delete.json new file mode 100644 index 000000000000..a096ebe1f94b --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Crops_Delete.json @@ -0,0 +1,10 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2021-03-31-preview", + "cropId": "CORN123" + }, + "responses": { + "204": {} + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Crops_Get.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Crops_Get.json new file mode 100644 index 000000000000..5caa58d6da6c --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Crops_Get.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2021-03-31-preview", + "cropId": "CORN123" + }, + "responses": { + "200": { + "body": { + "id": "CORN123", + "phenotype": "Corn", + "name": "John Smith's Crop", + "status": "Active", + "description": "Some description", + "properties": { + "Irrigated": "Yes", + "RetailerId": "Retailer123" + }, + "createdDateTime": "2021-04-21T06:49:30Z", + "modifiedDateTime": "2021-04-21T06:49:30Z", + "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Crops_List.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Crops_List.json new file mode 100644 index 000000000000..54f133d7d4e3 --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Crops_List.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2021-03-31-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "CORN123", + "phenotype": "Corn", + "name": "John Smith's Crop", + "status": "Active", + "description": "Some description", + "properties": { + "Irrigated": "Yes", + "RetailerId": "Retailer123" + }, + "createdDateTime": "2021-04-21T06:49:30Z", + "modifiedDateTime": "2021-04-21T06:49:30Z", + "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e" + } + ], + "$skipToken": "string", + "nextLink": "https://{{resourceName}}.farmbeats.azure.net/farmers/{{farmerId}}/seasonalFields/{{seasonalFieldId}}?api-version={{apiVersion}}&$skipToken=%5b%7b%22token%22%3a%22%2bRID%3a%7e23TRC%3a10%23ISA%3d%22%2c%22range%22%3a%7b%22min%22%3a%22%22%2c%22max%22%3a%22FF%22%7d%7d%5d" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/FarmOperations_CreateDataIngestionJob.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/FarmOperations_CreateDataIngestionJob.json new file mode 100644 index 000000000000..163cbf16f9e4 --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/FarmOperations_CreateDataIngestionJob.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "jobId": "JOB123", + "api-version": "2021-03-31-preview", + "body": { + "farmerId": "TEST-FARMER", + "authProviderId": "JOHNDEERE", + "operations": [ + "AllOperations" + ], + "startYear": 2012, + "name": "Farm Operations Job", + "description": "For TEST-FARMER", + "properties": { + "Operation": "All" + } + } + }, + "responses": { + "202": { + "body": { + "operations": [ + "AllOperations" + ], + "startYear": 2012, + "durationInSeconds": 14.79, + "id": "sdi-0916aeec-ad8d-41d0-9797-63924f818cd7", + "status": "Waiting", + "message": "string", + "createdDateTime": "2021-03-15T07:14:14Z", + "lastActionDateTime": "2021-03-15T07:14:14Z", + "startTime": "2021-03-15T07:14:14Z", + "endTime": "2021-03-15T07:14:14Z", + "name": "Farm Operations Job", + "description": "For TEST-FARMER", + "properties": { + "Operation": "All" + }, + "farmerId": "TEST-FARMER", + "authProviderId": "JOHNDEERE" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/FarmOperations_GetDataIngestionJobDetails.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/FarmOperations_GetDataIngestionJobDetails.json new file mode 100644 index 000000000000..19947892604d --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/FarmOperations_GetDataIngestionJobDetails.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "jobId": "JOB123", + "api-version": "2021-03-31-preview" + }, + "responses": { + "200": { + "body": { + "durationInSeconds": 11.2, + "id": "farm-operations-job", + "status": "Succeeded", + "message": "string", + "createdDateTime": "2021-04-16T08:24:50Z", + "lastActionDateTime": "2021-04-16T08:24:50Z", + "startTime": "2021-04-16T08:24:50Z", + "endTime": "2021-04-16T08:24:50Z", + "name": "Farm operations Job", + "description": "Test job", + "properties": { + "Region": "Asia" + }, + "farmerId": "FARMER123", + "authProviderId": "JOHNDEERE", + "operations": [ + "AllOperations" + ], + "startYear": 2012 + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Farmers_CreateCascadeDeleteJob.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Farmers_CreateCascadeDeleteJob.json new file mode 100644 index 000000000000..a7d2c1e25a5b --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Farmers_CreateCascadeDeleteJob.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "farmerId": "FARMER123", + "api-version": "2021-03-31-preview", + "jobId": "JOB123" + }, + "responses": { + "202": { + "body": { + "id": "JOB123", + "status": "Succeeded", + "message": "Job completed successfully.", + "durationInSeconds": 14.7977857, + "createdDateTime": "2021-04-19T11:31:20Z", + "lastActionDateTime": "2021-04-19T11:31:34Z", + "startTime": "2021-04-19T11:31:19Z", + "endTime": "2021-04-19T11:31:34Z", + "farmerId": "FARMER123", + "resourceId": "FARMER123", + "resourceType": "farmer", + "name": "John Smith", + "description": "Some description", + "properties": { + "Irrigated": "Yes", + "RetailerId": "Retailer123" + } + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Farmers_CreateOrUpdate.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Farmers_CreateOrUpdate.json new file mode 100644 index 000000000000..b0c8b228bc3b --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Farmers_CreateOrUpdate.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "farmerId": "FARMER123", + "api-version": "2021-03-31-preview", + "farmer": { + "status": "Active", + "name": "John Smith", + "description": "Some description", + "properties": { + "Irrigated": "Yes", + "RetailerId": "Retailer123" + } + } + }, + "responses": { + "200": { + "body": { + "id": "FARMER123", + "name": "John Smith", + "status": "Active", + "description": "Some description", + "properties": { + "Irrigated": "Yes", + "RetailerId": "Retailer123" + }, + "createdDateTime": "2021-04-21T06:49:30Z", + "modifiedDateTime": "2021-04-21T06:49:30Z", + "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e" + } + }, + "201": { + "body": { + "id": "FARMER123", + "name": "John Smith", + "status": "Active", + "description": "Some description", + "properties": { + "Irrigated": "Yes", + "RetailerId": "Retailer123" + }, + "createdDateTime": "2021-04-21T06:49:30Z", + "modifiedDateTime": "2021-04-21T06:49:30Z", + "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Farmers_Delete.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Farmers_Delete.json new file mode 100644 index 000000000000..eaa1e89032a9 --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Farmers_Delete.json @@ -0,0 +1,10 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "farmerId": "FARMER123", + "api-version": "2021-03-31-preview" + }, + "responses": { + "204": {} + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Farmers_Get.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Farmers_Get.json new file mode 100644 index 000000000000..606647a7877c --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Farmers_Get.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2021-03-31-preview", + "farmerId": "FARMER123" + }, + "responses": { + "200": { + "body": { + "id": "FARMER123", + "name": "John Smith", + "status": "Active", + "description": "Some description", + "properties": { + "Irrigated": "Yes", + "RetailerId": "Retailer123" + }, + "createdDateTime": "2021-04-21T06:49:30Z", + "modifiedDateTime": "2021-04-21T06:49:30Z", + "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Farmers_GetCascadeDeleteJobDetails.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Farmers_GetCascadeDeleteJobDetails.json new file mode 100644 index 000000000000..fa3c14969a1d --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Farmers_GetCascadeDeleteJobDetails.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2021-03-31-preview", + "jobId": "JOB123" + }, + "responses": { + "200": { + "body": { + "id": "JOB123", + "status": "Succeeded", + "message": "Job completed successfully.", + "durationInSeconds": 14.7977857, + "createdDateTime": "2021-04-19T11:31:20Z", + "lastActionDateTime": "2021-04-19T11:31:34Z", + "startTime": "2021-04-19T11:31:19Z", + "endTime": "2021-04-19T11:31:34Z", + "name": "John Smith", + "description": "Some description", + "properties": { + "Irrigated": "Yes", + "RetailerId": "Retailer123" + }, + "farmerId": "FARMER123", + "resourceId": "FARMER123", + "resourceType": "farmer" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Farmers_List.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Farmers_List.json new file mode 100644 index 000000000000..ddfbfa7bde25 --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Farmers_List.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2021-03-31-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "FARMER123", + "name": "John Smith", + "status": "Active", + "description": "Some description", + "properties": { + "Irrigated": "Yes", + "RetailerId": "Retailer123" + }, + "createdDateTime": "2021-04-21T06:49:30Z", + "modifiedDateTime": "2021-04-21T06:49:30Z", + "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e" + } + ], + "$skipToken": "string", + "nextLink": "https://{{resourceName}}.farmbeats.azure.net/farmers/{{farmerId}}/seasonalFields/{{seasonalFieldId}}?api-version={{apiVersion}}&$skipToken=%5b%7b%22token%22%3a%22%2bRID%3a%7e23TRC%3a10%23ISA%3d%22%2c%22range%22%3a%7b%22min%22%3a%22%22%2c%22max%22%3a%22FF%22%7d%7d%5d" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Farms_CreateCascadeDeleteJob.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Farms_CreateCascadeDeleteJob.json new file mode 100644 index 000000000000..4a26aca784c9 --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Farms_CreateCascadeDeleteJob.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "farmerId": "FARMER123", + "farmId": "FARM123", + "api-version": "2021-03-31-preview", + "jobId": "JOB123" + }, + "responses": { + "202": { + "body": { + "id": "JOB123", + "status": "Succeeded", + "message": "Job completed successfully.", + "durationInSeconds": 14.7977857, + "createdDateTime": "2021-04-19T11:31:20Z", + "lastActionDateTime": "2021-04-19T11:31:34Z", + "startTime": "2021-04-19T11:31:19Z", + "endTime": "2021-04-19T11:31:34Z", + "farmerId": "FARMER123", + "resourceId": "FARM123", + "resourceType": "farm", + "name": "John Smith's Field", + "description": "Some description", + "properties": { + "Irrigated": "Yes", + "RetailerId": "Retailer123" + } + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Farms_CreateOrUpdate.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Farms_CreateOrUpdate.json new file mode 100644 index 000000000000..5f1bb2f459ef --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Farms_CreateOrUpdate.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "farmerId": "FARMER123", + "farmId": "FARM123", + "api-version": "2021-03-31-preview", + "farm": { + "status": "Active", + "name": "John Smith's Farm", + "description": "Some description", + "properties": { + "Irrigated": "Yes", + "RetailerId": "Retailer123" + } + } + }, + "responses": { + "200": { + "body": { + "id": "FARM123", + "farmerId": "FARMER123", + "name": "John Smith's Farm", + "status": "Active", + "description": "Some description", + "properties": { + "Irrigated": "Yes", + "RetailerId": "Retailer123" + }, + "createdDateTime": "2021-04-21T06:49:30Z", + "modifiedDateTime": "2021-04-21T06:49:30Z", + "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e" + } + }, + "201": { + "body": { + "id": "FARM123", + "farmerId": "FARMER123", + "name": "John Smith's Farm", + "status": "Active", + "description": "Some description", + "properties": { + "Irrigated": "Yes", + "RetailerId": "Retailer123" + }, + "createdDateTime": "2021-04-21T06:49:30Z", + "modifiedDateTime": "2021-04-21T06:49:30Z", + "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Farms_Delete.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Farms_Delete.json new file mode 100644 index 000000000000..36d748d9f396 --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Farms_Delete.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "farmerId": "FARMER123", + "farmId": "FARM123", + "api-version": "2021-03-31-preview" + }, + "responses": { + "204": {} + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Farms_Get.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Farms_Get.json new file mode 100644 index 000000000000..d33a4ffeb592 --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Farms_Get.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2021-03-31-preview", + "farmerId": "FARMER123", + "farmId": "FARM123" + }, + "responses": { + "200": { + "body": { + "id": "FARM123", + "farmerId": "FARMER123", + "name": "John Smith's Farm", + "status": "Active", + "description": "Some description", + "properties": { + "Irrigated": "Yes", + "RetailerId": "Retailer123" + }, + "createdDateTime": "2021-04-21T06:49:30Z", + "modifiedDateTime": "2021-04-21T06:49:30Z", + "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Farms_GetCascadeDeleteJobDetails.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Farms_GetCascadeDeleteJobDetails.json new file mode 100644 index 000000000000..3721e59fb36c --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Farms_GetCascadeDeleteJobDetails.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2021-03-31-preview", + "jobId": "JOB123" + }, + "responses": { + "200": { + "body": { + "id": "JOB123", + "status": "Succeeded", + "message": "Job completed successfully.", + "durationInSeconds": 14.7977857, + "createdDateTime": "2021-04-19T11:31:20Z", + "lastActionDateTime": "2021-04-19T11:31:34Z", + "startTime": "2021-04-19T11:31:19Z", + "endTime": "2021-04-19T11:31:34Z", + "name": "John Smith's Farm", + "description": "Some description", + "properties": { + "Irrigated": "Yes", + "RetailerId": "Retailer123" + }, + "farmerId": "FARMER123", + "resourceId": "FARM123", + "resourceType": "farm" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Farms_List.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Farms_List.json new file mode 100644 index 000000000000..fc004b6a3578 --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Farms_List.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2021-03-31-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "FARM123", + "farmerId": "FARMER123", + "name": "John Smith's Farm", + "status": "Active", + "description": "Some description", + "properties": { + "Irrigated": "Yes", + "RetailerId": "Retailer123" + }, + "createdDateTime": "2021-04-21T06:49:30Z", + "modifiedDateTime": "2021-04-21T06:49:30Z", + "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e" + } + ], + "$skipToken": "string", + "nextLink": "https://{{resourceName}}.farmbeats.azure.net/farmers/{{farmerId}}/seasonalFields/{{seasonalFieldId}}?api-version={{apiVersion}}&$skipToken=%5b%7b%22token%22%3a%22%2bRID%3a%7e23TRC%3a10%23ISA%3d%22%2c%22range%22%3a%7b%22min%22%3a%22%22%2c%22max%22%3a%22FF%22%7d%7d%5d" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Farms_ListByFarmerId.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Farms_ListByFarmerId.json new file mode 100644 index 000000000000..79b77c8abd9e --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Farms_ListByFarmerId.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "farmerId": "FARMER123", + "api-version": "2021-03-31-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "FARM123", + "farmerId": "FARMER123", + "name": "John Smith's Farm", + "status": "Active", + "description": "Some description", + "properties": { + "Irrigated": "Yes", + "RetailerId": "Retailer123" + }, + "createdDateTime": "2021-04-21T06:49:30Z", + "modifiedDateTime": "2021-04-21T06:49:30Z", + "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e" + } + ], + "$skipToken": "string", + "nextLink": "https://{{resourceName}}.farmbeats.azure.net/farmers/{{farmerId}}/seasonalFields/{{seasonalFieldId}}?api-version={{apiVersion}}&$skipToken=%5b%7b%22token%22%3a%22%2bRID%3a%7e23TRC%3a10%23ISA%3d%22%2c%22range%22%3a%7b%22min%22%3a%22%22%2c%22max%22%3a%22FF%22%7d%7d%5d" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Fields_CreateCascadeDeleteJob.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Fields_CreateCascadeDeleteJob.json new file mode 100644 index 000000000000..3db893452b2a --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Fields_CreateCascadeDeleteJob.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "farmerId": "FARMER123", + "fieldId": "FIELD123", + "api-version": "2021-03-31-preview", + "jobId": "JOB123" + }, + "responses": { + "202": { + "body": { + "id": "JOB123", + "status": "Succeeded", + "message": "Job completed successfully.", + "durationInSeconds": 14.7977857, + "createdDateTime": "2021-04-19T11:31:20Z", + "lastActionDateTime": "2021-04-19T11:31:34Z", + "startTime": "2021-04-19T11:31:19Z", + "endTime": "2021-04-19T11:31:34Z", + "farmerId": "FARMER123", + "resourceId": "FIELD123", + "resourceType": "field", + "name": "John Smith's Field", + "description": "Some description", + "properties": { + "Irrigated": "Yes", + "RetailerId": "Retailer123" + } + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Fields_CreateOrUpdate.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Fields_CreateOrUpdate.json new file mode 100644 index 000000000000..3cdb24e13c4c --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Fields_CreateOrUpdate.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "farmerId": "FARMER123", + "fieldId": "FIELD123", + "api-version": "2021-03-31-preview", + "field": { + "farmId": "FARM123", + "status": "Active", + "name": "John Smith's Field", + "description": "Some description", + "properties": { + "Irrigated": "Yes", + "RetailerId": "Retailer123" + } + } + }, + "responses": { + "200": { + "body": { + "id": "FIELD123", + "farmerId": "FARMER123", + "farmId": "FARM123", + "primaryBoundaryId": "BOUNDARY123", + "boundaryIds": [ + "BOUNDARY123", + "BOUNDARY456" + ], + "name": "John Smith's Field", + "status": "Active", + "description": "Some description", + "properties": { + "Irrigated": "Yes", + "RetailerId": "Retailer123" + }, + "createdDateTime": "2021-04-21T06:49:30Z", + "modifiedDateTime": "2021-04-21T06:49:30Z", + "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e" + } + }, + "201": { + "body": { + "id": "FIELD123", + "farmerId": "FARMER123", + "farmId": "FARM123", + "primaryBoundaryId": "BOUNDARY123", + "boundaryIds": [ + "BOUNDARY123", + "BOUNDARY456" + ], + "name": "John Smith's Field", + "status": "Active", + "description": "Some description", + "properties": { + "Irrigated": "Yes", + "RetailerId": "Retailer123" + }, + "createdDateTime": "2021-04-21T06:49:30Z", + "modifiedDateTime": "2021-04-21T06:49:30Z", + "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Fields_Delete.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Fields_Delete.json new file mode 100644 index 000000000000..c47512aa50af --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Fields_Delete.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "farmerId": "FARMER123", + "fieldId": "FIELD123", + "api-version": "2021-03-31-preview" + }, + "responses": { + "204": {} + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Fields_Get.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Fields_Get.json new file mode 100644 index 000000000000..da17b84a03ac --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Fields_Get.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2021-03-31-preview", + "farmerId": "FARMER123", + "fieldId": "FIELD123" + }, + "responses": { + "200": { + "body": { + "id": "FIELD123", + "farmerId": "FARMER123", + "farmId": "FARM123", + "primaryBoundaryId": "BOUNDARY123", + "boundaryIds": [ + "BOUNDARY123", + "BOUNDARY456" + ], + "name": "John Smith's Field", + "status": "Active", + "description": "Some description", + "properties": { + "Irrigated": "Yes", + "RetailerId": "Retailer123" + }, + "createdDateTime": "2021-04-21T06:49:30Z", + "modifiedDateTime": "2021-04-21T06:49:30Z", + "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Fields_GetCascadeDeleteJobDetails.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Fields_GetCascadeDeleteJobDetails.json new file mode 100644 index 000000000000..fe5878968de1 --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Fields_GetCascadeDeleteJobDetails.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2021-03-31-preview", + "jobId": "JOB123" + }, + "responses": { + "200": { + "body": { + "id": "JOB123", + "status": "Succeeded", + "message": "Job completed successfully.", + "durationInSeconds": 14.7977857, + "createdDateTime": "2021-04-19T11:31:20Z", + "lastActionDateTime": "2021-04-19T11:31:34Z", + "startTime": "2021-04-19T11:31:19Z", + "endTime": "2021-04-19T11:31:34Z", + "name": "John Smith's Field", + "description": "Some description", + "properties": { + "Irrigated": "Yes", + "RetailerId": "Retailer123" + }, + "farmerId": "FARMER123", + "resourceId": "FIELD123", + "resourceType": "field" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Fields_List.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Fields_List.json new file mode 100644 index 000000000000..4978fe7edd6e --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Fields_List.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2021-03-31-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "FIELD123", + "farmerId": "FARMER123", + "farmId": "FARM123", + "primaryBoundaryId": "BOUNDARY123", + "boundaryIds": [ + "BOUNDARY123", + "BOUNDARY456" + ], + "name": "John Smith's Field", + "status": "Active", + "description": "Some description", + "properties": { + "Irrigated": "Yes", + "RetailerId": "Retailer123" + }, + "createdDateTime": "2021-04-21T06:49:30Z", + "modifiedDateTime": "2021-04-21T06:49:30Z", + "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e" + } + ], + "$skipToken": "string", + "nextLink": "https://{{resourceName}}.farmbeats.azure.net/farmers/{{farmerId}}/seasonalFields/{{seasonalFieldId}}?api-version={{apiVersion}}&$skipToken=%5b%7b%22token%22%3a%22%2bRID%3a%7e23TRC%3a10%23ISA%3d%22%2c%22range%22%3a%7b%22min%22%3a%22%22%2c%22max%22%3a%22FF%22%7d%7d%5d" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Fields_ListByFarmerId.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Fields_ListByFarmerId.json new file mode 100644 index 000000000000..bf218911d277 --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Fields_ListByFarmerId.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "farmerId": "FARMER123", + "api-version": "2021-03-31-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "FIELD123", + "farmerId": "FARMER123", + "farmId": "FARM123", + "primaryBoundaryId": "BOUNDARY123", + "boundaryIds": [ + "BOUNDARY123", + "BOUNDARY456" + ], + "name": "John Smith's Field", + "status": "Active", + "description": "Some description", + "properties": { + "Irrigated": "Yes", + "RetailerId": "Retailer123" + }, + "createdDateTime": "2021-04-21T06:49:30Z", + "modifiedDateTime": "2021-04-21T06:49:30Z", + "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e" + } + ], + "$skipToken": "string", + "nextLink": "https://{{resourceName}}.farmbeats.azure.net/farmers/{{farmerId}}/seasonalFields/{{seasonalFieldId}}?api-version={{apiVersion}}&$skipToken=%5b%7b%22token%22%3a%22%2bRID%3a%7e23TRC%3a10%23ISA%3d%22%2c%22range%22%3a%7b%22min%22%3a%22%22%2c%22max%22%3a%22FF%22%7d%7d%5d" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/HarvestData_CreateOrUpdate.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/HarvestData_CreateOrUpdate.json new file mode 100644 index 000000000000..1b81b715ffee --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/HarvestData_CreateOrUpdate.json @@ -0,0 +1,242 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2021-03-31-preview", + "farmerId": "FARMER123", + "harvestDataId": "HARVESTOP123", + "harvestData": { + "source": "Manual", + "name": "Harvest data for North Farm", + "description": "some description", + "status": "Active", + "operationStartDateTime": "2021-02-25T16:57:04Z", + "operationEndDateTime": "2021-02-27T10:13:06Z", + "operationModifiedDateTime": "2021-02-28T10:14:12Z", + "operationBoundaryId": "HARVESTOPBOUNDARY1", + "associatedBoundaryId": "NORTHFARM2021CORNBOUNDARY", + "area": { + "unit": "acre", + "value": 50 + }, + "totalYield": { + "unit": "kilos", + "value": 1400 + }, + "avgYield": { + "unit": "kilosperacre", + "value": 28 + }, + "totalWetMass": { + "unit": "kilos", + "value": 500 + }, + "avgWetMass": { + "unit": "kilosperacre", + "value": 10 + }, + "avgMoisture": { + "unit": "percent", + "value": 14.61 + }, + "avgSpeed": { + "unit": "kmsperhour", + "value": 7.2 + }, + "harvestProductDetails": [ + { + "productName": "VAR1", + "area": { + "unit": "acre", + "value": 30 + }, + "totalYield": { + "unit": "kilos", + "value": 900 + }, + "avgYield": { + "unit": "kilosperacre", + "value": 30 + }, + "totalWetMass": { + "unit": "kilos", + "value": 300 + }, + "avgWetMass": { + "unit": "kilosperacre", + "value": 10 + }, + "avgMoisture": { + "unit": "percent", + "value": 16.4 + } + } + ], + "properties": { + "Region": "Europe", + "CountyCode": 123 + } + } + }, + "responses": { + "200": { + "body": { + "farmerId": "FARMER123", + "id": "HARVESTOP123", + "source": "Manual", + "name": "Harvest data for North Farm", + "description": "some description", + "status": "Active", + "operationStartDateTime": "2021-02-25T16:57:04Z", + "operationEndDateTime": "2021-02-27T10:13:06Z", + "operationModifiedDateTime": "2021-02-28T10:12:12Z", + "operationBoundaryId": "HARVESTOPBOUNDARY1", + "associatedBoundaryId": "NORTHFARM2021CORNBOUNDARY", + "area": { + "unit": "acre", + "value": 50 + }, + "totalYield": { + "unit": "kilos", + "value": 1400 + }, + "avgYield": { + "unit": "kilosperacre", + "value": 28 + }, + "totalWetMass": { + "unit": "kilos", + "value": 500 + }, + "avgWetMass": { + "unit": "kilosperacre", + "value": 10 + }, + "avgMoisture": { + "unit": "percent", + "value": 14.61 + }, + "avgSpeed": { + "unit": "kmsperhour", + "value": 7.2 + }, + "harvestProductDetails": [ + { + "productName": "VAR1", + "area": { + "unit": "acre", + "value": 30 + }, + "totalYield": { + "unit": "kilos", + "value": 900 + }, + "avgYield": { + "unit": "kilosperacre", + "value": 30 + }, + "totalWetMass": { + "unit": "kilos", + "value": 300 + }, + "avgWetMass": { + "unit": "kilosperacre", + "value": 10 + }, + "avgMoisture": { + "unit": "percent", + "value": 16.4 + } + } + ], + "properties": { + "Region": "Europe", + "CountyCode": 123 + }, + "attachmentsLink": "https://.farmbeats.azure.net/farmer/{{farmerId}}/attachments?api-version={{apiVersion}}&resourceIds={{harvestDataId}}&resourceTypes=HarvestData", + "createdDateTime": "2021-02-29T04:57:04Z", + "modifiedDateTime": "2021-03-08T18:22:07Z", + "eTag": "cb00a3ac-0000-0100-0000-601d21ec0000" + } + }, + "201": { + "body": { + "farmerId": "FARMER123", + "id": "HARVESTOP123", + "source": "Manual", + "name": "Harvest data for North Farm", + "description": "some description", + "status": "Active", + "operationStartDateTime": "2021-02-25T16:57:04Z", + "operationEndDateTime": "2021-02-27T10:13:06Z", + "operationModifiedDateTime": "2021-02-28T10:12:12Z", + "operationBoundaryId": "HARVESTOPBOUNDARY1", + "associatedBoundaryId": "NORTHFARM2021CORNBOUNDARY", + "area": { + "unit": "acre", + "value": 50 + }, + "totalYield": { + "unit": "kilos", + "value": 1400 + }, + "avgYield": { + "unit": "kilosperacre", + "value": 28 + }, + "totalWetMass": { + "unit": "kilos", + "value": 500 + }, + "avgWetMass": { + "unit": "kilosperacre", + "value": 10 + }, + "avgMoisture": { + "unit": "percent", + "value": 14.61 + }, + "avgSpeed": { + "unit": "kmsperhour", + "value": 7.2 + }, + "harvestProductDetails": [ + { + "productName": "VAR1", + "area": { + "unit": "acre", + "value": 30 + }, + "totalYield": { + "unit": "kilos", + "value": 900 + }, + "avgYield": { + "unit": "kilosperacre", + "value": 30 + }, + "totalWetMass": { + "unit": "kilos", + "value": 300 + }, + "avgWetMass": { + "unit": "kilosperacre", + "value": 10 + }, + "avgMoisture": { + "unit": "percent", + "value": 16.4 + } + } + ], + "properties": { + "Region": "Europe", + "CountyCode": 123 + }, + "attachmentsLink": "https://.farmbeats.azure.net/farmer/{{farmerId}}/attachments?api-version={{apiVersion}}&resourceIds={{harvestDataId}}&resourceTypes=HarvestData", + "createdDateTime": "2021-02-29T04:57:04Z", + "modifiedDateTime": "2021-03-08T18:22:07Z", + "eTag": "cb00a3ac-0000-0100-0000-601d21ec0000" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/HarvestData_Delete.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/HarvestData_Delete.json new file mode 100644 index 000000000000..88c5785f4045 --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/HarvestData_Delete.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2021-03-31-preview", + "farmerId": "FARMER123", + "harvestDataId": "HARVESTOP123" + }, + "responses": { + "204": {} + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/HarvestData_Get.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/HarvestData_Get.json new file mode 100644 index 000000000000..caae9cb85c56 --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/HarvestData_Get.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2021-03-31-preview", + "farmerId": "FARMER123", + "harvestDataId": "HARVESTOP123" + }, + "responses": { + "200": { + "body": { + "farmerId": "FARMER123", + "id": "HARVESTOP123", + "source": "Manual", + "name": "Harvest data for North Farm", + "description": "some description", + "status": "Active", + "operationStartDateTime": "2021-02-25T16:57:04Z", + "operationEndDateTime": "2021-02-27T10:13:06Z", + "operationModifiedDateTime": "2021-02-28T10:12:12Z", + "operationBoundaryId": "HARVESTOPBOUNDARY1", + "associatedBoundaryId": "NORTHFARM2021CORNBOUNDARY", + "area": { + "unit": "acre", + "value": 50 + }, + "totalYield": { + "unit": "kilos", + "value": 1400 + }, + "avgYield": { + "unit": "kilosperacre", + "value": 28 + }, + "totalWetMass": { + "unit": "kilos", + "value": 500 + }, + "avgWetMass": { + "unit": "kilosperacre", + "value": 10 + }, + "avgMoisture": { + "unit": "percent", + "value": 14.61 + }, + "avgSpeed": { + "unit": "kmsperhour", + "value": 7.2 + }, + "harvestProductDetails": [ + { + "productName": "VAR1", + "area": { + "unit": "acre", + "value": 30 + }, + "totalYield": { + "unit": "kilos", + "value": 900 + }, + "avgYield": { + "unit": "kilosperacre", + "value": 30 + }, + "totalWetMass": { + "unit": "kilos", + "value": 300 + }, + "avgWetMass": { + "unit": "kilosperacre", + "value": 10 + }, + "avgMoisture": { + "unit": "percent", + "value": 16.4 + } + } + ], + "properties": { + "Region": "Europe", + "CountyCode": 123 + }, + "attachmentsLink": "https://.farmbeats.azure.net/farmer/{{farmerId}}/attachments?api-version={{apiVersion}}&resourceIds={{harvestDataId}}&resourceTypes=HarvestData", + "createdDateTime": "2021-02-29T04:57:04Z", + "modifiedDateTime": "2021-03-08T18:22:07Z", + "eTag": "cb00a3ac-0000-0100-0000-601d21ec0000" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/HarvestData_List.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/HarvestData_List.json new file mode 100644 index 000000000000..7eecebcce739 --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/HarvestData_List.json @@ -0,0 +1,94 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2021-03-31-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "farmerId": "FARMER123", + "id": "HARVESTOP123", + "source": "Manual", + "name": "Harvest data for North Farm", + "description": "some description", + "status": "Active", + "operationStartDateTime": "2021-02-25T16:57:04Z", + "operationEndDateTime": "2021-02-27T10:13:06Z", + "operationModifiedDateTime": "2021-02-28T10:14:12Z", + "operationBoundaryId": "HARVESTOPBOUNDARY1", + "associatedBoundaryId": "NORTHFARM2021CORNBOUNDARY", + "area": { + "unit": "acre", + "value": 50 + }, + "totalYield": { + "unit": "kilos", + "value": 1400 + }, + "avgYield": { + "unit": "kilosperacre", + "value": 28 + }, + "totalWetMass": { + "unit": "kilos", + "value": 500 + }, + "avgWetMass": { + "unit": "kilosperacre", + "value": 10 + }, + "avgMoisture": { + "unit": "percent", + "value": 14.61 + }, + "avgSpeed": { + "unit": "kmsperhour", + "value": 7.2 + }, + "harvestProductDetails": [ + { + "productName": "VAR1", + "area": { + "unit": "acre", + "value": 30 + }, + "totalYield": { + "unit": "kilos", + "value": 900 + }, + "avgYield": { + "unit": "kilosperacre", + "value": 30 + }, + "totalWetMass": { + "unit": "kilos", + "value": 300 + }, + "avgWetMass": { + "unit": "kilosperacre", + "value": 10 + }, + "avgMoisture": { + "unit": "percent", + "value": 16.4 + } + } + ], + "properties": { + "Region": "Europe", + "CountyCode": 123 + }, + "attachmentsLink": "https://.farmbeats.azure.net/farmer/{{farmerId}}/attachments?api-version={{apiVersion}}&resourceIds={{harvestDataId}}&resourceTypes=HarvestData", + "createdDateTime": "2021-02-29T04:57:04Z", + "modifiedDateTime": "2021-03-08T18:22:07Z", + "eTag": "cb00a3ac-0000-0100-0000-601d21ec0000" + } + ], + "$skipToken": "string", + "nextLink": "https:/{{resourceName}}.farmbeats.azure.net/farmers/{{farmerId}}/harvestData?api-version={{apiVersion}}&$skipToken=%5b%7b%22token%22%3a%22%2bRID%3a%7ehK8eAKzdo1MNnwcAAAAAAA%3d%3d%23RT%3a1%23TRC%3a10%23ISV%3a2%23IEO%3a65551%23FPC%3aAQ2fBwAAAAAAD58HAAAAAAA%3d%22%2c%22range%22%3a%7b%22min%22%3a%22%22%2c%22max%22%3a%22FF%22%7d%7d%5d" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/HarvestData_ListByFarmerId.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/HarvestData_ListByFarmerId.json new file mode 100644 index 000000000000..fdab67c54d14 --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/HarvestData_ListByFarmerId.json @@ -0,0 +1,95 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2021-03-31-preview", + "farmerId": "FARMER123" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "farmerId": "FARMER123", + "id": "HARVESTOP123", + "source": "Manual", + "name": "Harvest data for North Farm", + "description": "some description", + "status": "Active", + "operationStartDateTime": "2021-02-25T16:57:04Z", + "operationEndDateTime": "2021-02-27T10:13:06Z", + "operationModifiedDateTime": "2021-02-28T10:12:12Z", + "operationBoundaryId": "HARVESTOPBOUNDARY1", + "associatedBoundaryId": "NORTHFARM2021CORNBOUNDARY", + "area": { + "unit": "acre", + "value": 50 + }, + "totalYield": { + "unit": "kilos", + "value": 1400 + }, + "avgYield": { + "unit": "kilosperacre", + "value": 28 + }, + "totalWetMass": { + "unit": "kilos", + "value": 500 + }, + "avgWetMass": { + "unit": "kilosperacre", + "value": 10 + }, + "avgMoisture": { + "unit": "percent", + "value": 14.61 + }, + "avgSpeed": { + "unit": "kmsperhour", + "value": 7.2 + }, + "harvestProductDetails": [ + { + "productName": "VAR1", + "area": { + "unit": "acre", + "value": 30 + }, + "totalYield": { + "unit": "kilos", + "value": 900 + }, + "avgYield": { + "unit": "kilosperacre", + "value": 30 + }, + "totalWetMass": { + "unit": "kilos", + "value": 300 + }, + "avgWetMass": { + "unit": "kilosperacre", + "value": 10 + }, + "avgMoisture": { + "unit": "percent", + "value": 16.4 + } + } + ], + "properties": { + "Region": "Europe", + "CountyCode": 123 + }, + "attachmentsLink": "https://.farmbeats.azure.net/farmer/{{farmerId}}/attachments?api-version={{apiVersion}}&resourceIds={{harvestDataId}}&resourceTypes=HarvestData", + "createdDateTime": "2021-02-29T04:57:04Z", + "modifiedDateTime": "2021-03-08T18:22:07Z", + "eTag": "cb00a3ac-0000-0100-0000-601d21ec0000" + } + ], + "$skipToken": "string", + "nextLink": "https:/{{resourceName}}.farmbeats.azure.net/farmers/{{farmerId}}/harvestData?api-version={{apiVersion}}&$skipToken=%5b%7b%22token%22%3a%22%2bRID%3a%7ehK8eAKzdo1MNnwcAAAAAAA%3d%3d%23RT%3a1%23TRC%3a10%23ISV%3a2%23IEO%3a65551%23FPC%3aAQ2fBwAAAAAAD58HAAAAAAA%3d%22%2c%22range%22%3a%7b%22min%22%3a%22%22%2c%22max%22%3a%22FF%22%7d%7d%5d" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/ImageProcessing_CreateRasterizeJob.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/ImageProcessing_CreateRasterizeJob.json new file mode 100644 index 000000000000..b3dc595eb9bd --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/ImageProcessing_CreateRasterizeJob.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "jobId": "JOB123", + "api-version": "2021-03-31-preview", + "body": { + "farmerId": "test_farmer", + "shapefileAttachmentId": "harvesting_data_shapefile123", + "shapefileColumnNames": [ + "Wet_yield", + "Dry_yield" + ], + "name": "Harvest_Data_Rasterize_Job", + "description": "Rasterize harvest data shape file", + "properties": { + "region": "Asia" + } + } + }, + "responses": { + "202": { + "body": { + "durationInSeconds": 12.4, + "id": "weather-job", + "status": "Waiting", + "message": "Created job to fetch weather data for job name 'TestWeatherJob', farmer id 'test_farmer' and field id 'test_field'.", + "createdDateTime": "2021-04-16T11:33:45Z", + "lastActionDateTime": "2021-04-16T11:33:45Z", + "startTime": "2021-04-16T11:33:45Z", + "endTime": "2021-04-16T11:33:45Z", + "farmerId": "test_farmer", + "shapefileAttachmentId": "harvesting_data_shapefile123", + "shapefileColumnNames": [ + "Wet_yield", + "Dry_yield" + ], + "name": "Harvest_Data_Rasterize_Job", + "description": "Rasterize harvest data shape file", + "properties": { + "region": "Asia" + } + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/ImageProcessing_GetRasterizeJob.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/ImageProcessing_GetRasterizeJob.json new file mode 100644 index 000000000000..62face2583c2 --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/ImageProcessing_GetRasterizeJob.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "jobId": "JOB123", + "api-version": "2021-03-31-preview" + }, + "responses": { + "200": { + "body": { + "durationInSeconds": 12.4, + "id": "weather-job", + "status": "Succeeded", + "message": "Weather data is available for startTime to endTime", + "createdDateTime": "2021-04-16T08:24:50Z", + "lastActionDateTime": "2021-04-16T08:24:50Z", + "startTime": "2021-04-16T08:24:50Z", + "endTime": "2021-04-16T08:24:50Z", + "farmerId": "test_farmer", + "shapefileAttachmentId": "harvesting_data_shapefile123", + "shapefileColumnNames": [ + "Wet_yield", + "Dry_yield" + ], + "name": "Harvest_Data_Rasterize_Job", + "description": "Rasterize harvest data shape file", + "properties": { + "region": "Asia" + } + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/OAuthProviders_CreateOrUpdate.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/OAuthProviders_CreateOrUpdate.json new file mode 100644 index 000000000000..80139cdbf05e --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/OAuthProviders_CreateOrUpdate.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "oauthProviderId": "JOHNDEERE", + "api-version": "2021-03-31-preview", + "oauthProvider": { + "appId": "appId", + "appSecret": "appSecret", + "apiKey": "apiKey", + "isProductionApp": false, + "name": "JOHNDEERE", + "description": "some description", + "properties": { + "orgId": "ORG123" + } + } + }, + "responses": { + "200": { + "body": { + "id": "JOHNDEERE", + "appId": "appId", + "appSecret": "appSecret", + "apiKey": "apiKey", + "isProductionApp": false, + "name": "JOHNDEERE", + "description": "some description", + "properties": { + "orgId": "ORG123" + }, + "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e", + "createdDateTime": "2021-04-23T11:31:10Z", + "modifiedDateTime": "2021-04-23T11:31:10Z" + } + }, + "201": { + "body": { + "id": "JOHNDEERE", + "appId": "appId", + "appSecret": "appSecret", + "apiKey": "apiKey", + "isProductionApp": false, + "name": "JOHNDEERE", + "description": "some description", + "properties": { + "orgId": "ORG123" + }, + "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e", + "createdDateTime": "2021-04-23T11:31:10Z", + "modifiedDateTime": "2021-04-23T11:31:10Z" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/OAuthProviders_Delete.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/OAuthProviders_Delete.json new file mode 100644 index 000000000000..3a02f6d27ae6 --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/OAuthProviders_Delete.json @@ -0,0 +1,10 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "oauthProviderId": "JOHNDEERE", + "api-version": "2021-03-31-preview" + }, + "responses": { + "204": {} + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/OAuthProviders_Get.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/OAuthProviders_Get.json new file mode 100644 index 000000000000..994c7a7013be --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/OAuthProviders_Get.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "oauthProviderId": "JOHNDEERE", + "api-version": "2021-03-31-preview" + }, + "responses": { + "200": { + "body": { + "appId": "appId", + "appSecret": "appSecret", + "apiKey": "apiKey", + "isProductionApp": false, + "id": "JOHNDEERE", + "eTag": "f8fad5b-d9cb-469f-a165-70867728950e", + "createdDateTime": "2021-04-22T18:27:37Z", + "modifiedDateTime": "2021-04-22T18:27:37Z", + "name": "JD Integration", + "description": "Oauth Flow", + "properties": { + "Farmer": "123" + } + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/OAuthProviders_List.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/OAuthProviders_List.json new file mode 100644 index 000000000000..3777236bf4b3 --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/OAuthProviders_List.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2021-03-31-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "appId": "appId", + "appSecret": "appSecret", + "apiKey": "apiKey", + "isProductionApp": false, + "id": "JOHNDEERE", + "eTag": "f8fad5b-d9cb-469f-a165-70867728950e", + "createdDateTime": "2021-04-22T18:27:37Z", + "modifiedDateTime": "2021-04-22T18:27:37Z", + "name": "JD Integration", + "description": "Oauth Flow", + "properties": { + "Farmer": "123" + } + } + ], + "$skipToken": "string", + "nextLink": "https://{{resourceName}}.farmbeats.azure.net/farmers/{{farmerId}}/seasonalFields/{{seasonalFieldId}}?api-version={{apiVersion}}&$skipToken=%5b%7b%22token%22%3a%22%2bRID%3a%7e23TRC%3a10%23ISA%3d%22%2c%22range%22%3a%7b%22min%22%3a%22%22%2c%22max%22%3a%22FF%22%7d%7d%5d" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/OAuthTokens_CreateCascadeDeleteJob.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/OAuthTokens_CreateCascadeDeleteJob.json new file mode 100644 index 000000000000..65800d1eba15 --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/OAuthTokens_CreateCascadeDeleteJob.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "jobId": "JOBID123", + "farmerId": "FARMER123", + "oauthProviderId": "JOHNDEERE", + "api-version": "2021-03-31-preview" + }, + "responses": { + "202": { + "body": { + "farmerId": "FARMER123", + "resourceId": "JOHNDEERE", + "resourceType": "oauthtokeninfo", + "id": "JOBID123", + "status": "Waiting", + "message": "Created cascade delete job for 'oauthtokeninfo' resource with id 'JOHNDEERE' and farmerId 'FARMER123'.", + "createdDateTime": "2021-05-13T20:04:39Z", + "lastActionDateTime": "2021-05-13T20:04:39Z", + "startTime": "2021-05-13T20:04:37Z" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/OAuthTokens_GetCascadeDeleteJobDetails.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/OAuthTokens_GetCascadeDeleteJobDetails.json new file mode 100644 index 000000000000..9a263d908ddf --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/OAuthTokens_GetCascadeDeleteJobDetails.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "jobId": "JOBID123", + "api-version": "2021-03-31-preview" + }, + "responses": { + "200": { + "body": { + "farmerId": "FARMER123", + "resourceId": "JOHNDEERE", + "resourceType": "oauthtokeninfo", + "id": "JOBID123", + "status": "Waiting", + "message": "Created cascade delete job for 'oauthtokeninfo' resource with id 'JOHNDEERE' and farmerId 'FARMER123'.", + "createdDateTime": "2021-05-13T20:04:39Z", + "lastActionDateTime": "2021-05-13T20:04:39Z", + "startTime": "2021-05-13T20:04:37Z" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/OAuthTokens_GetOAuthConnectionLink.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/OAuthTokens_GetOAuthConnectionLink.json new file mode 100644 index 000000000000..31c435205661 --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/OAuthTokens_GetOAuthConnectionLink.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2021-03-31-preview", + "body": { + "farmerId": "FARMER123", + "oAuthProviderId": "JOHNDEERE", + "userRedirectLink": "https://docs.microsoft.com", + "userRedirectState": "code" + } + }, + "responses": { + "200": { + "body": "Connection string" + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/OAuthTokens_List.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/OAuthTokens_List.json new file mode 100644 index 000000000000..7ccb4143441b --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/OAuthTokens_List.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2021-03-31-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "farmerId": "FARMER123", + "authProviderId": "JOHNDEERE", + "isValid": true, + "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e", + "createdDateTime": "2021-04-22T18:49:25Z", + "modifiedDateTime": "2021-04-22T18:49:25Z" + } + ], + "$skipToken": "string", + "nextLink": "https://{{resourceName}}.farmbeats.azure.net/farmers/{{farmerId}}/seasonalFields/{{seasonalFieldId}}?api-version={{apiVersion}}&$skipToken=%5b%7b%22token%22%3a%22%2bRID%3a%7e23TRC%3a10%23ISA%3d%22%2c%22range%22%3a%7b%22min%22%3a%22%22%2c%22max%22%3a%22FF%22%7d%7d%5d" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/PlantingData_CreateOrUpdate.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/PlantingData_CreateOrUpdate.json new file mode 100644 index 000000000000..3c9dad916c1e --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/PlantingData_CreateOrUpdate.json @@ -0,0 +1,170 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2021-03-31-preview", + "farmerId": "FARMER123", + "plantingDataId": "PLANTINGOP123", + "plantingData": { + "source": "Manual", + "name": "Planting data for North Farm", + "description": "some description", + "status": "Active", + "operationStartDateTime": "2021-02-25T16:57:04Z", + "operationEndDateTime": "2021-02-27T10:13:06Z", + "operationModifiedDateTime": "2021-02-28T10:14:12Z", + "operationBoundaryId": "PLANTINGOPBOUNDARY1", + "associatedBoundaryId": "NORTHFARM2021CORNBOUNDARY", + "avgPlantingRate": { + "unit": "seedsperacre", + "value": 30 + }, + "area": { + "unit": "acre", + "value": 30 + }, + "totalMaterial": { + "unit": "seeds", + "value": 758814 + }, + "avgMaterial": { + "unit": "seedsperacre", + "value": 25293 + }, + "plantingProductDetails": [ + { + "productName": "VAR1", + "area": { + "unit": "acre", + "value": 20 + }, + "totalMaterial": { + "unit": "seeds", + "value": 389214 + }, + "avgMaterial": { + "unit": "seedsperacre", + "value": 19460 + } + } + ], + "properties": { + "Region": "Europe", + "CountyCode": 123 + } + } + }, + "responses": { + "200": { + "body": { + "farmerId": "FARMER123", + "id": "PLANTINGOP123", + "source": "Manual", + "name": "Planting data for North Farm", + "description": "some description", + "status": "Active", + "operationStartDateTime": "2021-02-25T16:57:04Z", + "operationEndDateTime": "2021-02-27T10:13:06Z", + "operationModifiedDateTime": "2021-02-28T10:14:12Z", + "operationBoundaryId": "PLANTINGOPBOUNDARY1", + "associatedBoundaryId": "NORTHFARM2021CORNBOUNDARY", + "avgPlantingRate": { + "unit": "seedsperacre", + "value": 30 + }, + "area": { + "unit": "acre", + "value": 30 + }, + "totalMaterial": { + "unit": "seeds", + "value": 758814 + }, + "avgMaterial": { + "unit": "seedsperacre", + "value": 25293 + }, + "plantingProductDetails": [ + { + "productName": "VAR1", + "area": { + "unit": "acre", + "value": 20 + }, + "totalMaterial": { + "unit": "seeds", + "value": 389214 + }, + "avgMaterial": { + "unit": "seedsperacre", + "value": 19460 + } + } + ], + "properties": { + "Region": "Europe", + "CountyCode": 123 + }, + "attachmentsLink": "https://.farmbeats.azure.net/farmer/{{farmerId}}/attachments?api-version={{apiVersion}}&resourceIds={{plantingDataId}}&resourceTypes=PlantingData", + "createdDateTime": "2021-02-29T04:57:04Z", + "modifiedDateTime": "2021-03-08T18:22:07Z", + "eTag": "cb00a3ac-0000-0100-0000-601d21ec0000" + } + }, + "201": { + "body": { + "farmerId": "FARMER123", + "id": "PLANTINGOP123", + "source": "Manual", + "name": "Planting data for North Farm", + "description": "some description", + "status": "Active", + "operationStartDateTime": "2021-02-25T16:57:04Z", + "operationEndDateTime": "2021-02-27T10:13:06Z", + "operationModifiedDateTime": "2021-02-28T10:14:12Z", + "operationBoundaryId": "PLANTINGOPBOUNDARY1", + "associatedBoundaryId": "NORTHFARM2021CORNBOUNDARY", + "avgPlantingRate": { + "unit": "seedsperacre", + "value": 30 + }, + "area": { + "unit": "acre", + "value": 30 + }, + "totalMaterial": { + "unit": "seeds", + "value": 758814 + }, + "avgMaterial": { + "unit": "seedsperacre", + "value": 25293 + }, + "plantingProductDetails": [ + { + "productName": "VAR1", + "area": { + "unit": "acre", + "value": 20 + }, + "totalMaterial": { + "unit": "seeds", + "value": 389214 + }, + "avgMaterial": { + "unit": "seedsperacre", + "value": 19460 + } + } + ], + "properties": { + "Region": "Europe", + "CountyCode": 123 + }, + "attachmentsLink": "https://.farmbeats.azure.net/farmer/{{farmerId}}/attachments?api-version={{apiVersion}}&resourceIds={{plantingDataId}}&resourceTypes=PlantingData", + "createdDateTime": "2021-02-29T04:57:04Z", + "modifiedDateTime": "2021-03-08T18:22:07Z", + "eTag": "cb00a3ac-0000-0100-0000-601d21ec0000" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/PlantingData_Delete.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/PlantingData_Delete.json new file mode 100644 index 000000000000..8b17313f1110 --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/PlantingData_Delete.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2021-03-31-preview", + "farmerId": "FARMER123", + "plantingDataId": "PLANTINGOP123" + }, + "responses": { + "204": {} + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/PlantingData_Get.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/PlantingData_Get.json new file mode 100644 index 000000000000..155712c370fd --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/PlantingData_Get.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2021-03-31-preview", + "farmerId": "FARMER123", + "plantingDataId": "PLANTINGOP123" + }, + "responses": { + "200": { + "body": { + "farmerId": "FARMER123", + "id": "PLANTINGOP123", + "source": "Manual", + "name": "Planting data for North Farm", + "description": "some description", + "status": "Active", + "operationStartDateTime": "2021-02-25T16:57:04Z", + "operationEndDateTime": "2021-02-27T10:13:06Z", + "operationModifiedDateTime": "2021-02-28T10:14:12Z", + "operationBoundaryId": "PLANTINGOPBOUNDARY1", + "associatedBoundaryId": "NORTHFARM2021CORNBOUNDARY", + "avgPlantingRate": { + "unit": "seedsperacre", + "value": 30 + }, + "area": { + "unit": "acre", + "value": 30 + }, + "totalMaterial": { + "unit": "seeds", + "value": 758814 + }, + "avgMaterial": { + "unit": "seedsperacre", + "value": 25293 + }, + "plantingProductDetails": [ + { + "productName": "VAR1", + "area": { + "unit": "acre", + "value": 20 + }, + "totalMaterial": { + "unit": "seeds", + "value": 389214 + }, + "avgMaterial": { + "unit": "seedsperacre", + "value": 19460 + } + } + ], + "properties": { + "Region": "Europe", + "CountyCode": 123 + }, + "attachmentsLink": "https://.farmbeats.azure.net/farmer/{{farmerId}}/attachments?api-version={{apiVersion}}&resourceIds={{plantingDataId}}&resourceTypes=PlantingData", + "createdDateTime": "2021-02-29T04:57:04Z", + "modifiedDateTime": "2021-03-08T18:22:07Z", + "eTag": "cb00a3ac-0000-0100-0000-601d21ec0000" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/PlantingData_List.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/PlantingData_List.json new file mode 100644 index 000000000000..b6c59eaee01a --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/PlantingData_List.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2021-03-31-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "farmerId": "FARMER123", + "id": "PLANTINGOP123", + "source": "Manual", + "name": "Planting data for North Farm", + "description": "some description", + "status": "Active", + "operationStartDateTime": "2021-02-25T16:57:04Z", + "operationEndDateTime": "2021-02-27T10:13:06Z", + "operationModifiedDateTime": "2021-02-28T10:14:12Z", + "operationBoundaryId": "PLANTINGOPBOUNDARY1", + "associatedBoundaryId": "NORTHFARM2021CORNBOUNDARY", + "avgPlantingRate": { + "unit": "seedsperacre", + "value": 30 + }, + "area": { + "unit": "acre", + "value": 30 + }, + "totalMaterial": { + "unit": "seeds", + "value": 758814 + }, + "avgMaterial": { + "unit": "seedsperacre", + "value": 25293 + }, + "plantingProductDetails": [ + { + "productName": "VAR1", + "area": { + "unit": "acre", + "value": 20 + }, + "totalMaterial": { + "unit": "seeds", + "value": 389214 + }, + "avgMaterial": { + "unit": "seedsperacre", + "value": 19460 + } + } + ], + "properties": { + "Region": "Europe", + "CountyCode": 123 + }, + "attachmentsLink": "https://.farmbeats.azure.net/farmer/{{farmerId}}/attachments?api-version={{apiVersion}}&resourceIds={{plantingDataId}}&resourceTypes=PlantingData", + "createdDateTime": "2021-02-29T04:57:04Z", + "modifiedDateTime": "2021-03-08T18:22:07Z", + "eTag": "cb00a3ac-0000-0100-0000-601d21ec0000" + } + ], + "$skipToken": "string", + "nextLink": "https:/{{resourceName}}.farmbeats.azure.net/farmers/{{farmerId}}/plantingData?api-version={{apiVersion}}&$skipToken=%5b%7b%22token%22%3a%22%2bRID%3a%7ehK8eAKzdo1MNnwcAAAAAAA%3d%3d%23RT%3a1%23TRC%3a10%23ISV%3a2%23IEO%3a65551%23FPC%3aAQ2fBwAAAAAAD58HAAAAAAA%3d%22%2c%22range%22%3a%7b%22min%22%3a%22%22%2c%22max%22%3a%22FF%22%7d%7d%5d" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/PlantingData_ListByFarmerId.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/PlantingData_ListByFarmerId.json new file mode 100644 index 000000000000..7bb636bba095 --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/PlantingData_ListByFarmerId.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2021-03-31-preview", + "farmerId": "FARMER123" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "farmerId": "FARMER123", + "id": "PLANTINGOP123", + "source": "Manual", + "name": "Planting data for North Farm", + "description": "some description", + "status": "Active", + "operationStartDateTime": "2021-02-25T16:57:04Z", + "operationEndDateTime": "2021-02-27T10:13:06Z", + "operationModifiedDateTime": "2021-02-28T10:14:12Z", + "operationBoundaryId": "PLANTINGOPBOUNDARY1", + "associatedBoundaryId": "NORTHFARM2021CORNBOUNDARY", + "avgPlantingRate": { + "unit": "seedsperacre", + "value": 30 + }, + "area": { + "unit": "acre", + "value": 30 + }, + "totalMaterial": { + "unit": "seeds", + "value": 758814 + }, + "avgMaterial": { + "unit": "seedsperacre", + "value": 25293 + }, + "plantingProductDetails": [ + { + "productName": "VAR1", + "area": { + "unit": "acre", + "value": 20 + }, + "totalMaterial": { + "unit": "seeds", + "value": 389214 + }, + "avgMaterial": { + "unit": "seedsperacre", + "value": 19460 + } + } + ], + "properties": { + "Region": "Europe", + "CountyCode": 123 + }, + "attachmentsLink": "https://.farmbeats.azure.net/farmer/{{farmerId}}/attachments?api-version={{apiVersion}}&resourceIds={{plantingDataId}}&resourceTypes=PlantingData", + "createdDateTime": "2021-02-29T04:57:04Z", + "modifiedDateTime": "2021-03-08T18:22:07Z", + "eTag": "cb00a3ac-0000-0100-0000-601d21ec0000" + } + ], + "$skipToken": "string", + "nextLink": "https:/{{resourceName}}.farmbeats.azure.net/farmers/{{farmerId}}/plantingData?api-version={{apiVersion}}&$skipToken=%5b%7b%22token%22%3a%22%2bRID%3a%7ehK8eAKzdo1MNnwcAAAAAAA%3d%3d%23RT%3a1%23TRC%3a10%23ISV%3a2%23IEO%3a65551%23FPC%3aAQ2fBwAAAAAAD58HAAAAAAA%3d%22%2c%22range%22%3a%7b%22min%22%3a%22%22%2c%22max%22%3a%22FF%22%7d%7d%5d" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Scenes_CreateSatelliteDataIngestionJob.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Scenes_CreateSatelliteDataIngestionJob.json new file mode 100644 index 000000000000..3e97b7391d97 --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Scenes_CreateSatelliteDataIngestionJob.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "jobId": "JOB123", + "api-version": "2021-03-31-preview", + "body": { + "boundaryId": "BOUNDARY123", + "farmerId": "FARMER123", + "startDateTime": "2020-04-16T10:14:12Z", + "endDateTime": "2021-04-16T10:14:12Z", + "provider": "Microsoft", + "source": "Sentinel_2_L2A", + "name": "North Farm 2019 satellite imagery", + "description": "Test job", + "data": { + "imageFormats": [ + "Tif" + ], + "imageNames": [ + "NDVI" + ], + "imageResolutions": [ + 10.0 + ] + }, + "properties": { + "Region": "Asia" + } + } + }, + "responses": { + "202": { + "body": { + "durationInSeconds": 12.4, + "id": "satellite-job", + "status": "Created", + "message": "Created job 'satellite-job' to fetch satellite data for boundary 'BOUNDARY123' for startDate '01/01/2019 00:00:00' and endDate '03/30/2019 00:00:00' (both inclusive)", + "createdDateTime": "2021-04-16T07:56:05Z", + "lastActionDateTime": "2021-04-16T07:56:05Z", + "startDateTime": "2021-04-16T07:56:05Z", + "endDateTime": "2021-04-16T07:56:05Z", + "farmerId": "FARMER123", + "boundaryId": "BOUNDARY123", + "name": "North Farm 2019 satellite imagery", + "description": "Test job", + "properties": { + "Region": "Asia" + } + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Scenes_Download.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Scenes_Download.json new file mode 100644 index 000000000000..0fe996302727 --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Scenes_Download.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "filePath": "https://filePath", + "api-version": "2021-03-31-preview" + }, + "responses": { + "200": { + "body": "101010101" + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Scenes_GetSatelliteDataIngestionJobDetails.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Scenes_GetSatelliteDataIngestionJobDetails.json new file mode 100644 index 000000000000..07ac177ebd7d --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Scenes_GetSatelliteDataIngestionJobDetails.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "jobId": "JOB123", + "api-version": "2021-03-31-preview" + }, + "responses": { + "200": { + "body": { + "durationInSeconds": 12.4, + "id": "satellite-job", + "status": "Succeeded", + "message": "Satellite data is available for 73 days from provider in the requested date range. Successfully fetched data for 73 days.", + "createdDateTime": "2021-04-16T08:24:50Z", + "lastActionDateTime": "2021-04-16T08:24:50Z", + "startTime": "2021-04-16T08:24:50Z", + "endTime": "2021-04-16T08:24:50Z", + "name": "North Farm 2019 satellite imagery", + "description": "Test job", + "properties": { + "Region": "Asia" + }, + "boundaryId": "BOUNDARY123", + "farmerId": "FARMER123", + "startDateTime": "2020-04-16T10:14:12Z", + "endDateTime": "2021-04-16T10:14:12Z", + "provider": "Microsoft", + "source": "Sentinel_2_L2A", + "data": { + "imageFormats": [ + "Tif" + ], + "imageNames": [ + "NDVI" + ], + "imageResolutions": [ + 10.0 + ] + } + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Scenes_List.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Scenes_List.json new file mode 100644 index 000000000000..cd555fe0682f --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Scenes_List.json @@ -0,0 +1,142 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "provider": "Microsoft", + "farmerId": "FARMER123", + "boundaryId": "BOUNDARY123", + "api-version": "2021-03-31-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "400e200f-ccc4-0cea-c120-3fdc6a41f99f", + "sceneDateTime": "2019-01-27T00:00:00Z", + "boundaryId": "BOUNDARY123", + "farmerId": "FARMER123", + "provider": "Microsoft", + "source": "Sentinel_2_L2A", + "cloudCoverPercentage": 67.2, + "darkPixelPercentage": 2.4, + "imageFormat": "TIF", + "imageFiles": [ + { + "name": "B08", + "resolution": 10.0, + "fileLink": "https://{{resourceName}}.farmbeats.azure.net/scenes/downloadFiles?api-version=2020-12-31-preview& filePath=microsoft/sentinel_2_l2a/FARMER123/BOUNDARY123/2019-01-27/00-00-00/b08_10.tif" + }, + { + "name": "B03", + "resolution": 10.0, + "fileLink": "https://{{resourceName}}.farmbeats.azure.net/scenes/downloadFiles?api-version=2020-12-31-preview& filePath=microsoft/sentinel_2_l2a/FARMER123/BOUNDARY123/2019-01-27/00-00-00/b03_10.tif" + }, + { + "name": "B11", + "resolution": 10.0, + "fileLink": "https://{{resourceName}}.farmbeats.azure.net/scenes/downloadFiles?api-version=2020-12-31-preview& filePath=microsoft/sentinel_2_l2a/FARMER123/BOUNDARY123/2019-01-27/00-00-00/b11_10.tif" + }, + { + "name": "SNW", + "resolution": 10.0, + "fileLink": "https://{{resourceName}}.farmbeats.azure.net/scenes/downloadFiles?api-version=2020-12-31-preview& filePath=microsoft/sentinel_2_l2a/FARMER123/BOUNDARY123/2019-01-27/00-00-00/snw_10.tif" + }, + { + "name": "B05", + "resolution": 10.0, + "fileLink": "https://{{resourceName}}.farmbeats.azure.net/scenes/downloadFiles?api-version=2020-12-31-preview& filePath=microsoft/sentinel_2_l2a/FARMER123/BOUNDARY123/2019-01-27/00-00-00/b05_10.tif" + }, + { + "name": "B06", + "resolution": 10.0, + "fileLink": "https://{{resourceName}}.farmbeats.azure.net/scenes/downloadFiles?api-version=2020-12-31-preview& filePath=microsoft/sentinel_2_l2a/FARMER123/BOUNDARY123/2019-01-27/00-00-00/b06_10.tif" + }, + { + "name": "dataMask", + "resolution": 10.0, + "fileLink": "https://{{resourceName}}.farmbeats.azure.net/scenes/downloadFiles?api-version=2020-12-31-preview& filePath=microsoft/sentinel_2_l2a/FARMER123/BOUNDARY123/2019-01-27/00-00-00/datamask_10.tif" + }, + { + "name": "B07", + "resolution": 10.0, + "fileLink": "https://{{resourceName}}.farmbeats.azure.net/scenes/downloadFiles?api-version=2020-12-31-preview& filePath=microsoft/sentinel_2_l2a/FARMER123/BOUNDARY123/2019-01-27/00-00-00/b07_10.tif" + }, + { + "name": "CLP", + "resolution": 10.0, + "fileLink": "https://{{resourceName}}.farmbeats.azure.net/scenes/downloadFiles?api-version=2020-12-31-preview& filePath=microsoft/sentinel_2_l2a/FARMER123/BOUNDARY123/2019-01-27/00-00-00/clp_10.tif" + }, + { + "name": "NDVI", + "resolution": 10.0, + "fileLink": "https://{{resourceName}}.farmbeats.azure.net/scenes/downloadFiles?api-version=2020-12-31-preview& filePath=microsoft/sentinel_2_l2a/FARMER123/BOUNDARY123/2019-01-27/00-00-00/ndvi_10.tif" + }, + { + "name": "SCL", + "resolution": 10.0, + "fileLink": "https://{{resourceName}}.farmbeats.azure.net/scenes/downloadFiles?api-version=2020-12-31-preview& filePath=microsoft/sentinel_2_l2a/FARMER123/BOUNDARY123/2019-01-27/00-00-00/scl_10.tif" + }, + { + "name": "B09", + "resolution": 10.0, + "fileLink": "https://{{resourceName}}.farmbeats.azure.net/scenes/downloadFiles?api-version=2020-12-31-preview& filePath=microsoft/sentinel_2_l2a/FARMER123/BOUNDARY123/2019-01-27/00-00-00/b09_10.tif" + }, + { + "name": "B01", + "resolution": 10.0, + "fileLink": "https://{{resourceName}}.farmbeats.azure.net/scenes/downloadFiles?api-version=2020-12-31-preview& filePath=microsoft/sentinel_2_l2a/FARMER123/BOUNDARY123/2019-01-27/00-00-00/b01_10.tif" + }, + { + "name": "NDWI", + "resolution": 10.0, + "fileLink": "https://{{resourceName}}.farmbeats.azure.net/scenes/downloadFiles?api-version=2020-12-31-preview& filePath=microsoft/sentinel_2_l2a/FARMER123/BOUNDARY123/2019-01-27/00-00-00/ndwi_10.tif" + }, + { + "name": "AOT", + "resolution": 10.0, + "fileLink": "https://{{resourceName}}.farmbeats.azure.net/scenes/downloadFiles?api-version=2020-12-31-preview& filePath=microsoft/sentinel_2_l2a/FARMER123/BOUNDARY123/2019-01-27/00-00-00/aot_10.tif" + }, + { + "name": "CLD", + "resolution": 10.0, + "fileLink": "https://{{resourceName}}.farmbeats.azure.net/scenes/downloadFiles?api-version=2020-12-31-preview& filePath=microsoft/sentinel_2_l2a/FARMER123/BOUNDARY123/2019-01-27/00-00-00/cld_10.tif" + }, + { + "name": "CLM", + "resolution": 10.0, + "fileLink": "https://{{resourceName}}.farmbeats.azure.net/scenes/downloadFiles?api-version=2020-12-31-preview& filePath=microsoft/sentinel_2_l2a/FARMER123/BOUNDARY123/2019-01-27/00-00-00/clm_10.tif" + }, + { + "name": "B02", + "resolution": 10.0, + "fileLink": "https://{{resourceName}}.farmbeats.azure.net/scenes/downloadFiles?api-version=2020-12-31-preview& filePath=microsoft/sentinel_2_l2a/FARMER123/BOUNDARY123/2019-01-27/00-00-00/b02_10.tif" + }, + { + "name": "B04", + "resolution": 10.0, + "fileLink": "https://{{resourceName}}.farmbeats.azure.net/scenes/downloadFiles?api-version=2020-12-31-preview& filePath=microsoft/sentinel_2_l2a/FARMER123/BOUNDARY123/2019-01-27/00-00-00/b04_10.tif" + }, + { + "name": "B8A", + "resolution": 10.0, + "fileLink": "https://{{resourceName}}.farmbeats.azure.net/scenes/downloadFiles?api-version=2020-12-31-preview& filePath=microsoft/sentinel_2_l2a/FARMER123/BOUNDARY123/2019-01-27/00-00-00/b8a_10.tif" + }, + { + "name": "EVI", + "resolution": 10.0, + "fileLink": "https://{{resourceName}}.farmbeats.azure.net/scenes/downloadFiles?api-version=2020-12-31-preview& filePath=microsoft/sentinel_2_l2a/FARMER123/BOUNDARY123/2019-01-27/00-00-00/evi_10.tif" + }, + { + "name": "B12", + "resolution": 10.0, + "fileLink": "https://{{resourceName}}.farmbeats.azure.net/scenes/downloadFiles?api-version=2020-12-31-preview& filePath=microsoft/sentinel_2_l2a/FARMER123/BOUNDARY123/2019-01-27/00-00-00/b12_10.tif" + } + ] + } + ], + "$skipToken": "string", + "nextLink": "https://{{resourceName}}.farmbeats.azure.net/scenes?provider=Microsoft&farmerId=FARMER123&boundaryId=BOUNDARY123&api-version=2020-10-16-preview&$skipToken=%5b%7b%22token%22%3a%22%2bRID%3a%7ehK8eAKzdo1PTnwcAAAAAAA%3d%3d%23RT%3a1%23TRC%3a10%23ISV%3a2%23IEO%3a65551%23FPC%3aAdOfBwAAAAAA7Z8HAAAAAAA%3d%22%2c%22range%22%3a%7b%22min%22%3a%22%22%2c%22max%22%3a%22FF%22%7d%7d%5d" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/SeasonalFields_CreateCascadeDeleteJob.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/SeasonalFields_CreateCascadeDeleteJob.json new file mode 100644 index 000000000000..85084ff521ed --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/SeasonalFields_CreateCascadeDeleteJob.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "farmerId": "FARMER123", + "seasonalFieldId": "SEASONALFIELD123", + "api-version": "2021-03-31-preview", + "jobId": "JOB123" + }, + "responses": { + "202": { + "body": { + "id": "JOB123", + "status": "Succeeded", + "message": "Job completed successfully.", + "durationInSeconds": 14.7977857, + "createdDateTime": "2021-04-19T11:31:20Z", + "lastActionDateTime": "2021-04-19T11:31:34Z", + "startTime": "2021-04-19T11:31:19Z", + "endTime": "2021-04-19T11:31:34Z", + "farmerId": "FARMER123", + "resourceId": "SEASONALFIELD123", + "resourceType": "seasonalfield" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/SeasonalFields_CreateOrUpdate.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/SeasonalFields_CreateOrUpdate.json new file mode 100644 index 000000000000..39d8f11403c7 --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/SeasonalFields_CreateOrUpdate.json @@ -0,0 +1,100 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "farmerId": "FARMER123", + "seasonalFieldId": "SEASONALFIELD123", + "api-version": "2021-03-31-preview", + "seasonalField": { + "farmId": "FARM123", + "fieldId": "FIELD123", + "seasonId": "WINTER_WHEAT_2021", + "cropId": "WHEAT", + "cropVarietyIds": [ + "WHEAT_VARIETY_123", + "WHEAT_VARIETY_456" + ], + "avgYieldValue": 321.6, + "avgYieldUnit": "Bushels per acre", + "avgSeedPopulationValue": 45, + "avgSeedPopulationUnit": "Kilogram per acre", + "plantingDateTime": "2021-04-21T06:49:30Z", + "name": "John Smith's Seasonal Field", + "status": "Active", + "description": "Some description", + "properties": { + "Irrigated": "Yes", + "RetailerId": "Retailer123" + } + } + }, + "responses": { + "200": { + "body": { + "id": "SEASONALFIELD123", + "farmerId": "FARMER123", + "farmId": "FARM123", + "fieldId": "FIELD123", + "seasonId": "WINTER_WHEAT_2021", + "cropId": "WHEAT", + "cropVarietyIds": [ + "WHEAT_VARIETY_123", + "WHEAT_VARIETY_456" + ], + "primaryBoundaryId": "BOUNDARY123", + "boundaryIds": [ + "BOUNDARY123", + "BOUNDARY456" + ], + "avgYieldValue": 321.6, + "avgYieldUnit": "Bushels per acre", + "avgSeedPopulationValue": 45, + "avgSeedPopulationUnit": "Kilogram per acre", + "plantingDateTime": "2021-04-21T06:49:30Z", + "name": "John Smith's Seasonal Field", + "status": "Active", + "description": "Some description", + "properties": { + "Irrigated": "Yes", + "RetailerId": "Retailer123" + }, + "createdDateTime": "2021-04-21T06:49:30Z", + "modifiedDateTime": "2021-04-21T06:49:30Z", + "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e" + } + }, + "201": { + "body": { + "id": "SEASONALFIELD123", + "farmerId": "FARMER123", + "farmId": "FARM123", + "fieldId": "FIELD123", + "seasonId": "WINTER_WHEAT_2021", + "cropId": "WHEAT", + "cropVarietyIds": [ + "WHEAT_VARIETY_123", + "WHEAT_VARIETY_456" + ], + "primaryBoundaryId": "BOUNDARY123", + "boundaryIds": [ + "BOUNDARY123", + "BOUNDARY456" + ], + "avgYieldValue": 321.6, + "avgYieldUnit": "Bushels per acre", + "avgSeedPopulationValue": 45, + "avgSeedPopulationUnit": "Kilogram per acre", + "plantingDateTime": "2021-04-21T06:49:30Z", + "name": "John Smith's Seasonal Field", + "status": "Active", + "description": "Some description", + "properties": { + "Irrigated": "Yes", + "RetailerId": "Retailer123" + }, + "createdDateTime": "2021-04-21T06:49:30Z", + "modifiedDateTime": "2021-04-21T06:49:30Z", + "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/SeasonalFields_Delete.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/SeasonalFields_Delete.json new file mode 100644 index 000000000000..e88c3e014d9d --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/SeasonalFields_Delete.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "farmerId": "FARMER123", + "seasonalFieldId": "SEASONALFIELD123", + "api-version": "2021-03-31-preview" + }, + "responses": { + "204": {} + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/SeasonalFields_Get.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/SeasonalFields_Get.json new file mode 100644 index 000000000000..531e3c81b5e5 --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/SeasonalFields_Get.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "farmerId": "FARMER123", + "seasonalFieldId": "SEASONALFIELD123", + "api-version": "2021-03-31-preview" + }, + "responses": { + "200": { + "body": { + "id": "SEASONALFIELD123", + "farmerId": "FARMER123", + "farmId": "FARM123", + "fieldId": "FIELD123", + "seasonId": "WINTER_WHEAT_2021", + "cropId": "WHEAT", + "cropVarietyIds": [ + "WHEAT_VARIETY_123", + "WHEAT_VARIETY_456" + ], + "primaryBoundaryId": "BOUNDARY123", + "boundaryIds": [ + "BOUNDARY123", + "BOUNDARY456" + ], + "avgYieldValue": 321.6, + "avgYieldUnit": "Bushels per acre", + "avgSeedPopulationValue": 45, + "avgSeedPopulationUnit": "Kilogram per acre", + "plantingDateTime": "2021-04-21T06:49:30Z", + "name": "John Smith's Seasonal Field", + "status": "Active", + "description": "Some description", + "properties": { + "Irrigated": "Yes", + "RetailerId": "Retailer123" + }, + "createdDateTime": "2021-04-21T06:49:30Z", + "modifiedDateTime": "2021-04-21T06:49:30Z", + "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/SeasonalFields_GetCascadeDeleteJobDetails.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/SeasonalFields_GetCascadeDeleteJobDetails.json new file mode 100644 index 000000000000..17a1d054dfe9 --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/SeasonalFields_GetCascadeDeleteJobDetails.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2021-03-31-preview", + "jobId": "JOB123" + }, + "responses": { + "200": { + "body": { + "id": "JOB123", + "status": "Succeeded", + "message": "Job completed successfully.", + "durationInSeconds": 14.7977857, + "createdDateTime": "2021-04-19T11:31:20Z", + "lastActionDateTime": "2021-04-19T11:31:34Z", + "startTime": "2021-04-19T11:31:19Z", + "endTime": "2021-04-19T11:31:34Z", + "farmerId": "FARMER123", + "resourceId": "SEASONALFIELD123", + "resourceType": "seasonalfield" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/SeasonalFields_List.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/SeasonalFields_List.json new file mode 100644 index 000000000000..e2df1c6e4d09 --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/SeasonalFields_List.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2021-03-31-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "SEASONALFIELD123", + "farmerId": "FARMER123", + "farmId": "FARM123", + "fieldId": "FIELD123", + "seasonId": "WINTER_WHEAT_2021", + "cropId": "WHEAT", + "cropVarietyIds": [ + "WHEAT_VARIETY_123", + "WHEAT_VARIETY_456" + ], + "primaryBoundaryId": "BOUNDARY123", + "boundaryIds": [ + "BOUNDARY123", + "BOUNDARY456" + ], + "avgYieldValue": 321.6, + "avgYieldUnit": "Bushels per acre", + "avgSeedPopulationValue": 45, + "avgSeedPopulationUnit": "Kilogram per acre", + "plantingDateTime": "2021-04-21T06:49:30Z", + "name": "John Smith's Seasonal Field", + "status": "Active", + "description": "Some description", + "properties": { + "Irrigated": "Yes", + "RetailerId": "Retailer123" + }, + "createdDateTime": "2021-04-21T06:49:30Z", + "modifiedDateTime": "2021-04-21T06:49:30Z", + "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e" + } + ], + "$skipToken": "string", + "nextLink": "https://{{resourceName}}.farmbeats.azure.net/farmers/{{farmerId}}/seasonalFields/{{seasonalFieldId}}?api-version={{apiVersion}}&$skipToken=%5b%7b%22token%22%3a%22%2bRID%3a%7e23TRC%3a10%23ISA%3d%22%2c%22range%22%3a%7b%22min%22%3a%22%22%2c%22max%22%3a%22FF%22%7d%7d%5d" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/SeasonalFields_ListByFarmerId.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/SeasonalFields_ListByFarmerId.json new file mode 100644 index 000000000000..1ff5c7b115ed --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/SeasonalFields_ListByFarmerId.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "farmerId": "FARMER123", + "api-version": "2021-03-31-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "SEASONALFIELD123", + "farmerId": "FARMER123", + "farmId": "FARM123", + "fieldId": "FIELD123", + "seasonId": "WINTER_WHEAT_2021", + "cropId": "WHEAT", + "cropVarietyIds": [ + "WHEAT_VARIETY_123", + "WHEAT_VARIETY_456" + ], + "primaryBoundaryId": "BOUNDARY123", + "boundaryIds": [ + "BOUNDARY123", + "BOUNDARY456" + ], + "avgYieldValue": 321.6, + "avgYieldUnit": "Bushels per acre", + "avgSeedPopulationValue": 45, + "avgSeedPopulationUnit": "Kilogram per acre", + "plantingDateTime": "2021-04-21T06:49:30Z", + "name": "John Smith's Seasonal Field", + "status": "Active", + "description": "Some description", + "properties": { + "Irrigated": "Yes", + "RetailerId": "Retailer123" + }, + "createdDateTime": "2021-04-21T06:49:30Z", + "modifiedDateTime": "2021-04-21T06:49:30Z", + "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e" + } + ], + "$skipToken": "string", + "nextLink": "https://{{resourceName}}.farmbeats.azure.net/farmers/{{farmerId}}/seasonalFields/{{seasonalFieldId}}?api-version={{apiVersion}}&$skipToken=%5b%7b%22token%22%3a%22%2bRID%3a%7e23TRC%3a10%23ISA%3d%22%2c%22range%22%3a%7b%22min%22%3a%22%22%2c%22max%22%3a%22FF%22%7d%7d%5d" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Seasons_CreateOrUpdate.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Seasons_CreateOrUpdate.json new file mode 100644 index 000000000000..b9233c24fb19 --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Seasons_CreateOrUpdate.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2021-03-31-preview", + "seasonId": "SEASON123", + "season": { + "startDateTime": "2021-04-22T17:56:28Z", + "endDateTime": "2021-04-22T17:56:28Z", + "year": 2012, + "status": "Active", + "name": "John Smith's Season", + "description": "Some description", + "properties": { + "Irrigated": "Yes", + "RetailerId": "Retailer123" + } + } + }, + "responses": { + "200": { + "body": { + "startDateTime": "2021-04-22T17:50:26Z", + "endDateTime": "2021-04-22T17:50:26Z", + "year": 2012, + "id": "SEASON123", + "name": "John Smith's Season", + "status": "Active", + "description": "Some description", + "properties": { + "Irrigated": "Yes", + "RetailerId": "Retailer123" + }, + "createdDateTime": "2021-04-21T06:49:30Z", + "modifiedDateTime": "2021-04-21T06:49:30Z", + "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e" + } + }, + "201": { + "body": { + "startDateTime": "2021-04-22T17:50:26Z", + "endDateTime": "2021-04-22T17:50:26Z", + "year": 2012, + "id": "SEASON123", + "name": "John Smith's Season", + "status": "Active", + "description": "Some description", + "properties": { + "Irrigated": "Yes", + "RetailerId": "Retailer123" + }, + "createdDateTime": "2021-04-21T06:49:30Z", + "modifiedDateTime": "2021-04-21T06:49:30Z", + "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Seasons_Delete.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Seasons_Delete.json new file mode 100644 index 000000000000..65b69d8f4cff --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Seasons_Delete.json @@ -0,0 +1,10 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2021-03-31-preview", + "seasonId": "SEASON123" + }, + "responses": { + "204": {} + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Seasons_Get.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Seasons_Get.json new file mode 100644 index 000000000000..bb211e68d035 --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Seasons_Get.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2021-03-31-preview", + "seasonId": "SEASON123" + }, + "responses": { + "200": { + "body": { + "startDateTime": "2021-04-22T17:50:26Z", + "endDateTime": "2021-04-22T17:50:26Z", + "year": 2012, + "id": "SEASON123", + "name": "John Smith's Season", + "status": "Active", + "description": "Some description", + "properties": { + "Irrigated": "Yes", + "RetailerId": "Retailer123" + }, + "createdDateTime": "2021-04-21T06:49:30Z", + "modifiedDateTime": "2021-04-21T06:49:30Z", + "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Seasons_List.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Seasons_List.json new file mode 100644 index 000000000000..5c0053b60f65 --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Seasons_List.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2021-03-31-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "startDateTime": "2021-04-22T17:50:26Z", + "endDateTime": "2021-04-22T17:50:26Z", + "year": 2012, + "id": "SEASON123", + "name": "John Smith's Season", + "status": "Active", + "description": "Some description", + "properties": { + "Irrigated": "Yes", + "RetailerId": "Retailer123" + }, + "createdDateTime": "2021-04-21T06:49:30Z", + "modifiedDateTime": "2021-04-21T06:49:30Z", + "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e" + } + ], + "$skipToken": "string", + "nextLink": "https://{{resourceName}}.farmbeats.azure.net/farmers/{{farmerId}}/seasonalFields/{{seasonalFieldId}}?api-version={{apiVersion}}&$skipToken=%5b%7b%22token%22%3a%22%2bRID%3a%7e23TRC%3a10%23ISA%3d%22%2c%22range%22%3a%7b%22min%22%3a%22%22%2c%22max%22%3a%22FF%22%7d%7d%5d" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/TillageData_CreateOrUpdate.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/TillageData_CreateOrUpdate.json new file mode 100644 index 000000000000..4dfc09b2a20b --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/TillageData_CreateOrUpdate.json @@ -0,0 +1,107 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2021-03-31-preview", + "farmerId": "FARMER123", + "tillageDataId": "TILLAGEOP123", + "tillageData": { + "source": "Manual", + "name": "Planting data for North Farm", + "description": "some description", + "status": "Active", + "operationStartDateTime": "2021-02-25T16:57:04Z", + "operationEndDateTime": "2021-02-27T10:13:06Z", + "operationModifiedDateTime": "2021-02-28T10:14:12Z", + "operationBoundaryId": "PLANTINGOPBOUNDARY1", + "associatedBoundaryId": "NORTHFARM2021CORNBOUNDARY", + "area": { + "unit": "acre", + "value": 30 + }, + "tillagePressure": { + "unit": "kg per sq cms", + "value": 950 + }, + "tillageDepth": { + "unit": "cms", + "value": 9.5 + }, + "properties": { + "Region": "Europe", + "CountyCode": 123 + } + } + }, + "responses": { + "200": { + "body": { + "farmerId": "FARMER123", + "id": "TILLAGEOP123", + "source": "Manual", + "name": "Planting data for North Farm", + "description": "some description", + "status": "Active", + "operationStartDateTime": "2021-02-25T16:57:04Z", + "operationEndDateTime": "2021-02-27T10:13:06Z", + "operationModifiedDateTime": "2021-02-28T10:12:12Z", + "operationBoundaryId": "PLANTINGOPBOUNDARY1", + "associatedBoundaryId": "NORTHFARM2021CORNBOUNDARY", + "area": { + "unit": "acre", + "value": 30 + }, + "tillagePressure": { + "unit": "kg per sq cms", + "value": 950 + }, + "tillageDepth": { + "unit": "cms", + "value": 9.5 + }, + "properties": { + "Region": "Europe", + "CountyCode": 123 + }, + "attachmentsLink": "https://.farmbeats.azure.net/farmer/{{farmerId}}/attachments?api-version={{apiVersion}}&resourceIds={{plantingDataId}}&resourceTypes=PlantingData", + "createdDateTime": "2021-02-29T04:57:04Z", + "modifiedDateTime": "2021-03-08T18:22:07Z", + "eTag": "cb00a3ac-0000-0100-0000-601d21ec0000" + } + }, + "201": { + "body": { + "farmerId": "FARMER123", + "id": "TILLAGEOP123", + "source": "Manual", + "name": "Planting data for North Farm", + "description": "some description", + "status": "Active", + "operationStartDateTime": "2021-02-25T16:57:04Z", + "operationEndDateTime": "2021-02-27T10:13:06Z", + "operationModifiedDateTime": "2021-02-28T10:12:12Z", + "operationBoundaryId": "PLANTINGOPBOUNDARY1", + "associatedBoundaryId": "NORTHFARM2021CORNBOUNDARY", + "area": { + "unit": "acre", + "value": 30 + }, + "tillagePressure": { + "unit": "kg per sq cms", + "value": 950 + }, + "tillageDepth": { + "unit": "cms", + "value": 9.5 + }, + "properties": { + "Region": "Europe", + "CountyCode": 123 + }, + "attachmentsLink": "https://.farmbeats.azure.net/farmer/{{farmerId}}/attachments?api-version={{apiVersion}}&resourceIds={{plantingDataId}}&resourceTypes=PlantingData", + "createdDateTime": "2021-02-29T04:57:04Z", + "modifiedDateTime": "2021-03-08T18:22:07Z", + "eTag": "cb00a3ac-0000-0100-0000-601d21ec0000" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/TillageData_Delete.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/TillageData_Delete.json new file mode 100644 index 000000000000..8ab38e14e5fb --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/TillageData_Delete.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2021-03-31-preview", + "farmerId": "FARMER123", + "tillageDataId": "TILLAGEOP123" + }, + "responses": { + "204": {} + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/TillageData_Get.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/TillageData_Get.json new file mode 100644 index 000000000000..a9499ed7990f --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/TillageData_Get.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2021-03-31-preview", + "farmerId": "FARMER123", + "tillageDataId": "TILLAGEOP123" + }, + "responses": { + "200": { + "body": { + "farmerId": "FARMER123", + "id": "TILLAGEOP123", + "source": "Manual", + "name": "Planting data for North Farm", + "description": "some description", + "status": "Active", + "operationStartDateTime": "2021-02-25T16:57:04Z", + "operationEndDateTime": "2021-02-27T10:13:06Z", + "operationModifiedDateTime": "2021-02-28T10:14:12Z", + "operationBoundaryId": "PLANTINGOPBOUNDARY1", + "associatedBoundaryId": "NORTHFARM2021CORNBOUNDARY", + "area": { + "unit": "acre", + "value": 30 + }, + "tillagePressure": { + "unit": "kg per sq cms", + "value": 950 + }, + "tillageDepth": { + "unit": "cms", + "value": 9.5 + }, + "properties": { + "Region": "Asia", + "CountyCode": 123 + }, + "attachmentsLink": "https://.farmbeats.azure.net/farmer/{{farmerId}}/attachments?api-version={{apiVersion}}&resourceIds={{plantingDataId}}&resourceTypes=PlantingData", + "createdDateTime": "2021-02-29T04:57:04Z", + "modifiedDateTime": "2021-03-08T18:22:07Z", + "eTag": "cb00a3ac-0000-0100-0000-601d21ec0000" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/TillageData_List.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/TillageData_List.json new file mode 100644 index 000000000000..52e57fe5de5e --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/TillageData_List.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2021-03-31-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "farmerId": "FARMER123", + "id": "TILLAGEOP123", + "source": "Manual", + "name": "Planting data for North Farm", + "description": "some description", + "status": "Active", + "operationStartDateTime": "2021-02-25T16:57:04Z", + "operationEndDateTime": "2021-02-27T10:13:06Z", + "operationModifiedDateTime": "2021-02-28T10:14:12Z", + "operationBoundaryId": "PLANTINGOPBOUNDARY1", + "associatedBoundaryId": "NORTHFARM2021CORNBOUNDARY", + "area": { + "unit": "acre", + "value": 30 + }, + "tillagePressure": { + "unit": "kg per sq cms", + "value": 950 + }, + "tillageDepth": { + "unit": "cms", + "value": 9.5 + }, + "properties": { + "Region": "Europe", + "CountyCode": 123 + }, + "attachmentsLink": "https://.farmbeats.azure.net/farmer/{{farmerId}}/attachments?api-version={{apiVersion}}&resourceIds={{plantingDataId}}&resourceTypes=PlantingData", + "createdDateTime": "2021-02-29T04:57:04Z", + "modifiedDateTime": "2021-03-08T18:22:07Z", + "eTag": "cb00a3ac-0000-0100-0000-601d21ec0000" + } + ], + "$skipToken": "string", + "nextLink": "https:/{{resourceName}}.farmbeats.azure.net/farmers/{{farmerId}}/plantingData?api-version={{apiVersion}}&$skipToken=%5b%7b%22token%22%3a%22%2bRID%3a%7ehK8eAKzdo1MNnwcAAAAAAA%3d%3d%23RT%3a1%23TRC%3a10%23ISV%3a2%23IEO%3a65551%23FPC%3aAQ2fBwAAAAAAD58HAAAAAAA%3d%22%2c%22range%22%3a%7b%22min%22%3a%22%22%2c%22max%22%3a%22FF%22%7d%7d%5d" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/TillageData_ListByFarmerId.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/TillageData_ListByFarmerId.json new file mode 100644 index 000000000000..240a3548c76b --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/TillageData_ListByFarmerId.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2021-03-31-preview", + "farmerId": "FARMER123" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "farmerId": "FARMER123", + "id": "TILLAGEOP123", + "source": "Manual", + "name": "Planting data for North Farm", + "description": "some description", + "status": "Active", + "operationStartDateTime": "2021-02-25T16:57:04Z", + "operationEndDateTime": "2021-02-27T10:13:06Z", + "operationModifiedDateTime": "2021-02-28T10:14:12Z", + "operationBoundaryId": "PLANTINGOPBOUNDARY1", + "associatedBoundaryId": "NORTHFARM2021CORNBOUNDARY", + "area": { + "unit": "acre", + "value": 30 + }, + "tillagePressure": { + "unit": "kg per sq cms", + "value": 950 + }, + "tillageDepth": { + "unit": "cms", + "value": 9.5 + }, + "properties": { + "Region": "Europe", + "CountyCode": 123 + }, + "attachmentsLink": "https://.farmbeats.azure.net/farmer/{{farmerId}}/attachments?api-version={{apiVersion}}&resourceIds={{plantingDataId}}&resourceTypes=PlantingData", + "createdDateTime": "2021-02-29T04:57:04Z", + "modifiedDateTime": "2021-03-08T18:22:07Z", + "eTag": "cb00a3ac-0000-0100-0000-601d21ec0000" + } + ], + "$skipToken": "string", + "nextLink": "https:/{{resourceName}}.farmbeats.azure.net/farmers/{{farmerId}}/plantingData?api-version={{apiVersion}}&$skipToken=%5b%7b%22token%22%3a%22%2bRID%3a%7ehK8eAKzdo1MNnwcAAAAAAA%3d%3d%23RT%3a1%23TRC%3a10%23ISV%3a2%23IEO%3a65551%23FPC%3aAQ2fBwAAAAAAD58HAAAAAAA%3d%22%2c%22range%22%3a%7b%22min%22%3a%22%22%2c%22max%22%3a%22FF%22%7d%7d%5d" + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Weather_CreateDataDeleteJob.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Weather_CreateDataDeleteJob.json new file mode 100644 index 000000000000..98a2a1267033 --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Weather_CreateDataDeleteJob.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "jobId": "JOB123", + "api-version": "2021-03-31-preview", + "body": { + "extensionId": "dtn.clearAg", + "farmerId": "test_farmer", + "boundaryId": "test_farmer", + "weatherDataType": "forecast", + "granularity": "daily", + "startDateTime": "2021-04-18T01:32:42Z", + "endDateTime": "2021-04-18T01:32:42Z", + "name": "Delete Job", + "description": "For extension dtn.clearAg", + "properties": { + "region": "US" + } + } + }, + "responses": { + "202": { + "body": { + "durationInSeconds": 12.4, + "id": "delete-weather-job", + "status": "Waiting", + "message": "Created job to delete weather data for job name 'delete-weather-job', farmer id 'test_farmer' and boundary id 'test_boundary'.", + "createdDateTime": "2021-04-16T11:33:45Z", + "lastActionDateTime": "2021-04-16T11:33:45Z", + "startTime": "2021-04-16T11:33:45Z", + "endTime": "2021-04-16T11:33:45Z", + "farmerId": "test_farmer", + "boundaryId": "test_farmer", + "extensionId": "dtn.clearAg", + "name": "Delete Job", + "description": "For extension dtn.clearAg", + "properties": { + "region": "US" + } + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Weather_CreateDataIngestionJob.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Weather_CreateDataIngestionJob.json new file mode 100644 index 000000000000..27b4b7a446cc --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Weather_CreateDataIngestionJob.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "jobId": "JOB123", + "api-version": "2021-03-31-preview", + "body": { + "farmerId": "test_farmer", + "boundaryId": "test_boundary", + "extensionId": "dtn.clearAg", + "extensionApiName": "dailyforecast", + "extensionApiInput": { + "start": 0, + "end": 5 + }, + "name": "TestWeatherJob", + "description": "Daily Forecast data for 5 days", + "properties": { + "region": "Asia" + } + } + }, + "responses": { + "202": { + "body": { + "durationInSeconds": 12.4, + "id": "weather-job", + "status": "Waiting", + "message": "Created job to fetch weather data for job name 'TestWeatherJob', farmer id 'test_farmer' and field id 'test_field'.", + "createdDateTime": "2021-04-16T11:33:45Z", + "lastActionDateTime": "2021-04-16T11:33:45Z", + "startTime": "2021-04-16T11:33:45Z", + "endTime": "2021-04-16T11:33:45Z", + "farmerId": "test_farmer", + "boundaryId": "test_boundary", + "extensionId": "dtn.clearAg", + "extensionApiName": "dailyforecast", + "extensionApiInput": { + "start": 0, + "end": 5 + }, + "name": "TestWeatherJob", + "description": "Daily Forecast data for 5 days", + "properties": { + "region": "Asia" + } + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Weather_GetDataDeleteJobDetails.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Weather_GetDataDeleteJobDetails.json new file mode 100644 index 000000000000..91bd4cb389ae --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Weather_GetDataDeleteJobDetails.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "jobId": "JOB123", + "api-version": "2021-03-31-preview" + }, + "responses": { + "200": { + "body": { + "durationInSeconds": 12.4, + "id": "weather-delete-job", + "status": "Succeeded", + "message": "Weather data is deleted for startTime to endTime", + "createdDateTime": "2021-04-16T08:24:50Z", + "lastActionDateTime": "2021-04-16T08:24:50Z", + "extensionId": "dtn.clearAg", + "farmerId": "test_farmer", + "boundaryId": "test_farmer", + "weatherDataType": "forecast", + "granularity": "daily", + "startDateTime": "2021-04-18T01:32:42Z", + "endDateTime": "2021-04-18T01:32:42Z", + "name": "Delete Job", + "description": "For extension dtn.clearAg", + "properties": { + "region": "US" + } + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Weather_GetDataIngestionJobDetails.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Weather_GetDataIngestionJobDetails.json new file mode 100644 index 000000000000..9b4a6f6ac0e9 --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Weather_GetDataIngestionJobDetails.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "jobId": "JOB123", + "api-version": "2021-03-31-preview" + }, + "responses": { + "200": { + "body": { + "durationInSeconds": 12.4, + "id": "weather-job", + "status": "Succeeded", + "message": "Weather data is available for startTime to endTime", + "createdDateTime": "2021-04-16T08:24:50Z", + "lastActionDateTime": "2021-04-16T08:24:50Z", + "startTime": "2021-04-16T08:24:50Z", + "endTime": "2021-04-16T08:24:50Z", + "farmerId": "test_farmer", + "boundaryId": "test_boundary", + "extensionId": "dtn.clearAg", + "extensionApiName": "dailyforecast", + "extensionApiInput": { + "start": 0, + "end": 5 + }, + "name": "TestWeatherJob", + "description": "Daily Forecast data for 5 days", + "properties": { + "region": "Asia" + } + } + } + } +} diff --git a/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Weather_List.json b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Weather_List.json new file mode 100644 index 000000000000..837c992aaa74 --- /dev/null +++ b/specification/agfood/data-plane/Microsoft.AgFoodPlatform/preview/2021-03-31-preview/examples/Weather_List.json @@ -0,0 +1,143 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "farmerId": "FARMER123", + "boundaryId": "BOUNDARY123", + "extensionId": "DTN.ClearAg", + "weatherDataType": "Historical", + "granularity": "Daily", + "api-version": "2021-03-31-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "ecd327e7-07f1-31b1-65ee-2162e193c055", + "farmerId": "test_farmer", + "boundaryId": "test_boundary", + "extensionId": "dtn.clearAg", + "location": { + "latitude": 77.75695801443568, + "longitude": 12.30932563432023 + }, + "dateTime": "2020-12-23T00:00:00Z", + "unitSystemCode": "us-std", + "extensionVersion": "1.0", + "weatherDataType": "forecast", + "granularity": "daily", + "cloudCover": { + "unit": "%", + "value": 81.1 + }, + "dewPoint": { + "unit": "F", + "value": 26.0 + }, + "precipitation": { + "unit": "in", + "value": 0.1 + }, + "relativeHumidity": { + "unit": "%", + "value": 74.0 + }, + "temperature": { + "unit": "F", + "value": 33.0 + }, + "windGust": { + "unit": "mph", + "value": 50.0 + }, + "windSpeed": { + "unit": "mph", + "value": 31.0 + }, + "eTag": "\"2b00a419-0000-0700-0000-5fe1ae4c0000\"", + "properties": { + "air_temp_max": { + "unit": "F", + "value": 36.0 + }, + "air_temp_min": "29", + "cloudCoverDescriptor": "Becoming Broken Overcast", + "precipitationDescriptor": "Light Snow Likely", + "weatherDescriptor": "Light Snow Likely", + "windDirectionDescriptor": "East", + "windTrendDescriptor": "None", + "dewPointMax": { + "unit": "F", + "value": 28.0 + }, + "dewPointMin": { + "unit": "F", + "value": 22.0 + }, + "iceAccPeriod": { + "unit": "in", + "value": 0.0 + }, + "liquidAccPeriod": { + "unit": "in", + "value": 0.0 + }, + "longWaveRadiationAvg": { + "unit": "W/m^2", + "value": 291.0 + }, + "petPeriod": { + "unit": "in", + "value": 0.04 + }, + "precipProb": { + "unit": "%", + "value": 75.0 + }, + "relativeHumidityMax": { + "unit": "%", + "value": 81.0 + }, + "relativeHumidityMin": { + "unit": "%", + "value": 69.0 + }, + "shortWaveRadiationAvg": { + "unit": "W/m^2", + "value": 0.0 + }, + "snowAccPeriod": { + "unit": "in", + "value": 0.7 + }, + "sunshineDuration": { + "unit": "hours", + "value": 0.0 + }, + "windSpeed2mAvg": { + "unit": "mph", + "value": 24.0 + }, + "windSpeed2mMax": { + "unit": "mph", + "value": 32.0 + }, + "windSpeed2mMin": { + "unit": "mph", + "value": 17.0 + }, + "windSpeedMax": { + "unit": "mph", + "value": 42.0 + }, + "windSpeedMin": { + "unit": "mph", + "value": 23.0 + } + } + } + ] + } + } + } +} diff --git a/specification/agfood/data-plane/readme.md b/specification/agfood/data-plane/readme.md new file mode 100644 index 000000000000..3d36db0e3711 --- /dev/null +++ b/specification/agfood/data-plane/readme.md @@ -0,0 +1,43 @@ +# agfood + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for agfood. + +## Getting Started + +To build the SDKs for My API, simply install AutoRest via `npm` (`npm install -g autorest`) and then run: + +> `autorest readme.md` + +To see additional help and options, run: + +> `autorest --help` + +For other options on installation see [Installing AutoRest](https://aka.ms/autorest/install) on the AutoRest github page. + +--- + +## Configuration + +### Basic Information + +These are the global settings for the agfood. + +```yaml +openapi-type: data-plane +tag: package-2021-03-31-preview + +directive: + - suppress: LongRunningResponseStatusCode + reason: The validation tools do not properly recognize 202 as a supported response code. +``` + +### Tag: package-2021-03-31-preview + +These settings apply only when `--tag=package-2021-03-31-preview` is specified on the command line. + +```yaml $(tag) == 'package-2021-03-31-preview' +input-file: + - Microsoft.AgFoodPlatform/preview/2021-03-31-preview/agfood.json +``` diff --git a/specification/agfood/resource-manager/Microsoft.AgFoodPlatform/preview/2020-05-12-preview/agfood.json b/specification/agfood/resource-manager/Microsoft.AgFoodPlatform/preview/2020-05-12-preview/agfood.json new file mode 100644 index 000000000000..4c4c7db32213 --- /dev/null +++ b/specification/agfood/resource-manager/Microsoft.AgFoodPlatform/preview/2020-05-12-preview/agfood.json @@ -0,0 +1,1200 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure AgFoodPlatform RP Service", + "description": "APIs documentation for Azure AgFoodPlatform Resource Provider Service.", + "version": "2020-05-12-preview" + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}/extensions/{extensionId}": { + "put": { + "tags": [ + "Extensions" + ], + "description": "Install extension.", + "operationId": "Extensions_Create", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ExtensionIdParameter" + }, + { + "$ref": "#/parameters/FarmBeatsResourceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Extension" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Extensions_Create": { + "$ref": "./examples/Extensions_Create.json" + } + } + }, + "get": { + "tags": [ + "Extensions" + ], + "description": "Get installed extension details by extension id.", + "operationId": "Extensions_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ExtensionIdParameter" + }, + { + "$ref": "#/parameters/FarmBeatsResourceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Extension" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Extensions_Get": { + "$ref": "./examples/Extensions_Get.json" + } + } + }, + "patch": { + "tags": [ + "Extensions" + ], + "description": "Upgrade to latest extension.", + "operationId": "Extensions_Update", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ExtensionIdParameter" + }, + { + "$ref": "#/parameters/FarmBeatsResourceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Extension" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Extensions_Update": { + "$ref": "./examples/Extensions_Update.json" + } + } + }, + "delete": { + "tags": [ + "Extensions" + ], + "description": "Uninstall extension.", + "operationId": "Extensions_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ExtensionIdParameter" + }, + { + "$ref": "#/parameters/FarmBeatsResourceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success" + }, + "204": { + "description": "Success" + }, + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Extensions_Delete": { + "$ref": "./examples/Extensions_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}/extensions": { + "get": { + "tags": [ + "Extensions" + ], + "description": "Get installed extensions details.", + "operationId": "Extensions_ListByFarmBeats", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/FarmBeatsResourceNameParameter" + }, + { + "in": "query", + "name": "extensionIds", + "description": "Installed extension ids.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "extensionCategories", + "description": "Installed extension categories.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "$maxPageSize", + "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.", + "type": "integer", + "format": "int32", + "default": 50, + "maximum": 1000, + "minimum": 10 + }, + { + "in": "query", + "name": "$skipToken", + "description": "Skip token for getting next set of results.", + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ExtensionListResponse" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Extensions_ListByFarmBeats": { + "$ref": "./examples/Extensions_ListByFarmBeats.json" + } + } + } + }, + "/providers/Microsoft.AgFoodPlatform/farmBeatsExtensionDefinitions": { + "get": { + "tags": [ + "FarmBeatsExtensions" + ], + "description": "Get list of farmBeats extension.", + "operationId": "FarmBeatsExtensions_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "query", + "name": "farmBeatsExtensionIds", + "description": "FarmBeatsExtension ids.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "farmBeatsExtensionNames", + "description": "FarmBeats extension names.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "extensionCategories", + "description": "Extension categories.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "publisherIds", + "description": "Publisher ids.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "$maxPageSize", + "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.", + "type": "integer", + "format": "int32", + "default": 50, + "maximum": 1000, + "minimum": 10 + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/FarmBeatsExtensionListResponse" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "FarmBeatsExtensions_List": { + "$ref": "./examples/FarmBeatsExtensions_List.json" + } + } + } + }, + "/providers/Microsoft.AgFoodPlatform/farmBeatsExtensionDefinitions/{farmBeatsExtensionId}": { + "get": { + "tags": [ + "FarmBeatsExtensions" + ], + "description": "Get farmBeats extension.", + "operationId": "FarmBeatsExtensions_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "farmBeatsExtensionId", + "description": "farmBeatsExtensionId to be queried.", + "required": true, + "type": "string", + "pattern": "^[A-za-z]{3,50}[.][A-za-z]{3,100}$" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/FarmBeatsExtension" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "FarmBeatsExtensions_Get": { + "$ref": "./examples/FarmBeatsExtensions_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}": { + "get": { + "tags": [ + "FarmBeatsModels" + ], + "description": "Get FarmBeats resource.", + "operationId": "FarmBeatsModels_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/FarmBeatsResourceNameParameter" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/FarmBeats" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "FarmBeatsModels_Get": { + "$ref": "./examples/FarmBeatsModels_Get.json" + } + } + }, + "put": { + "tags": [ + "FarmBeatsModels" + ], + "description": "Create or update FarmBeats resource.", + "operationId": "FarmBeatsModels_CreateOrUpdate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/FarmBeatsResourceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "body", + "description": "FarmBeats resource create or update request object.", + "required": true, + "schema": { + "$ref": "#/definitions/FarmBeats" + } + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/FarmBeats" + } + }, + "201": { + "description": "Success", + "schema": { + "$ref": "#/definitions/FarmBeats" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "FarmBeatsModels_CreateOrUpdate": { + "$ref": "./examples/FarmBeatsModels_CreateOrUpdate.json" + } + } + }, + "patch": { + "tags": [ + "FarmBeatsModels" + ], + "description": "Update a FarmBeats resource.", + "operationId": "FarmBeatsModels_Update", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/FarmBeatsResourceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "body", + "description": "Request object.", + "required": true, + "schema": { + "$ref": "#/definitions/FarmBeatsUpdateRequestModel" + } + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/FarmBeats" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "FarmBeatsModels_Update": { + "$ref": "./examples/FarmBeatsModels_Update.json" + } + } + }, + "delete": { + "tags": [ + "FarmBeatsModels" + ], + "description": "Delete a FarmBeats resource.", + "operationId": "FarmBeatsModels_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/FarmBeatsResourceNameParameter" + } + ], + "responses": { + "200": { + "description": "Success" + }, + "204": { + "description": "Success" + }, + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "FarmBeatsModels_Delete": { + "$ref": "./examples/FarmBeatsModels_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.AgFoodPlatform/farmBeats": { + "get": { + "tags": [ + "FarmBeatsModels" + ], + "description": "Lists the FarmBeats instances for a subscription.", + "operationId": "FarmBeatsModels_ListBySubscription", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "query", + "name": "$maxPageSize", + "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.", + "type": "integer", + "format": "int32", + "default": 50, + "maximum": 1000, + "minimum": 10 + }, + { + "in": "query", + "name": "$skipToken", + "description": "Skip token for getting next set of results.", + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/FarmBeatsListResponse" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "FarmBeatsModels_ListBySubscription": { + "$ref": "./examples/FarmBeatsModels_ListBySubscription.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats": { + "get": { + "tags": [ + "FarmBeatsModels" + ], + "description": "Lists the FarmBeats instances for a resource group.", + "operationId": "FarmBeatsModels_ListByResourceGroup", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "query", + "name": "$maxPageSize", + "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.", + "type": "integer", + "format": "int32", + "default": 50, + "maximum": 1000, + "minimum": 10 + }, + { + "in": "query", + "name": "$skipToken", + "description": "Continuation token for getting next set of results.", + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/FarmBeatsListResponse" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "FarmBeatsModels_ListByResourceGroup": { + "$ref": "./examples/FarmBeatsModels_ListByResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.AgFoodPlatform/checkNameAvailability": { + "post": { + "tags": [ + "Locations" + ], + "description": "Checks the name availability of the resource with requested resource name.", + "operationId": "Locations_CheckNameAvailability", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "body", + "description": "NameAvailabilityRequest object.", + "required": true, + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/CheckNameAvailabilityRequest" + } + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/CheckNameAvailabilityResponse" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Locations_CheckNameAvailability_AlreadyExists": { + "$ref": "./examples/Locations_CheckNameAvailability_AlreadyExists.json" + }, + "Locations_CheckNameAvailability_Available": { + "$ref": "./examples/Locations_CheckNameAvailability_Available.json" + } + } + } + }, + "/providers/Microsoft.AgFoodPlatform/operations": { + "get": { + "tags": [ + "Operations" + ], + "description": "Lists the available operations of Microsoft.AgFoodPlatform resource provider.", + "operationId": "Operations_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Operations_List": { + "$ref": "./examples/Operations_List.json" + } + } + } + } + }, + "definitions": { + "ExtensionProperties": { + "description": "Extension resource properties.", + "type": "object", + "properties": { + "extensionId": { + "description": "Extension Id.", + "pattern": "^[A-za-z]{3,50}[.][A-za-z]{3,100}$", + "type": "string", + "readOnly": true + }, + "extensionCategory": { + "description": "Extension category. e.g. weather/sensor/satellite.", + "type": "string", + "readOnly": true + }, + "installedExtensionVersion": { + "description": "Installed extension version.", + "pattern": "^([1-9]|10).\\d$", + "type": "string", + "readOnly": true + }, + "extensionAuthLink": { + "description": "Extension auth link.", + "type": "string", + "readOnly": true + }, + "extensionApiDocsLink": { + "description": "Extension api docs link.", + "type": "string", + "readOnly": true + } + } + }, + "Extension": { + "description": "Extension resource.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "systemData": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData" + }, + "properties": { + "$ref": "#/definitions/ExtensionProperties", + "x-ms-client-flatten": true + }, + "eTag": { + "description": "The ETag value to implement optimistic concurrency.", + "type": "string", + "readOnly": true + } + }, + "x-ms-azure-resource": true + }, + "ExtensionListResponse": { + "description": "Paged response contains list of requested objects and a URL link to get the next set of results.", + "type": "object", + "properties": { + "value": { + "description": "List of requested objects.", + "type": "array", + "items": { + "$ref": "#/definitions/Extension" + } + }, + "nextLink": { + "description": "Continuation link (absolute URI) to the next page of results in the list.", + "type": "string", + "readOnly": true + } + } + }, + "UnitSystemsInfo": { + "description": "Unit systems info for the data provider.", + "required": [ + "key", + "values" + ], + "type": "object", + "properties": { + "key": { + "description": "UnitSystem key sent as part of ProviderInput.", + "maxLength": 100, + "minLength": 2, + "type": "string" + }, + "values": { + "description": "List of unit systems supported by this data provider.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "DetailedInformation": { + "description": "Model to capture detailed information for farmBeatsExtensions.", + "type": "object", + "properties": { + "apiName": { + "description": "ApiName available for the farmBeatsExtension.", + "type": "string", + "example": "dailyforecast, dailyhistorical." + }, + "customParameters": { + "description": "List of customParameters.", + "type": "array", + "items": { + "type": "string" + } + }, + "platformParameters": { + "description": "List of platformParameters.", + "type": "array", + "items": { + "type": "string" + } + }, + "unitsSupported": { + "$ref": "#/definitions/UnitSystemsInfo" + }, + "apiInputParameters": { + "description": "List of apiInputParameters.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "FarmBeatsExtensionProperties": { + "description": "FarmBeatsExtension properties.", + "type": "object", + "properties": { + "targetResourceType": { + "description": "Target ResourceType of the farmBeatsExtension.", + "type": "string", + "readOnly": true + }, + "farmBeatsExtensionId": { + "description": "FarmBeatsExtension ID.", + "maxLength": 100, + "minLength": 2, + "pattern": "^[A-za-z]{3,50}[.][A-za-z]{3,100}$", + "type": "string", + "readOnly": true + }, + "farmBeatsExtensionName": { + "description": "FarmBeatsExtension name.", + "maxLength": 100, + "minLength": 2, + "type": "string", + "readOnly": true + }, + "farmBeatsExtensionVersion": { + "description": "FarmBeatsExtension version.", + "maxLength": 100, + "minLength": 2, + "pattern": "^([1-9]|10).\\d$", + "type": "string", + "readOnly": true + }, + "publisherId": { + "description": "Publisher ID.", + "maxLength": 100, + "minLength": 2, + "type": "string", + "readOnly": true + }, + "description": { + "description": "Textual description.", + "maxLength": 500, + "minLength": 2, + "type": "string", + "readOnly": true + }, + "extensionCategory": { + "description": "Category of the extension. e.g. weather/sensor/satellite.", + "maxLength": 100, + "minLength": 2, + "type": "string", + "readOnly": true + }, + "extensionAuthLink": { + "description": "FarmBeatsExtension auth link.", + "type": "string", + "readOnly": true + }, + "extensionApiDocsLink": { + "description": "FarmBeatsExtension api docs link.", + "type": "string", + "readOnly": true + }, + "detailedInformation": { + "description": "Detailed information which shows summary of requested data.\r\nUsed in descriptive get extension metadata call.\r\nInformation for weather category per api included are apisSupported,\r\ncustomParameters, PlatformParameters and Units supported.", + "type": "array", + "items": { + "$ref": "#/definitions/DetailedInformation" + }, + "readOnly": true + } + } + }, + "FarmBeatsExtension": { + "description": "FarmBeats extension resource.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "systemData": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData" + }, + "properties": { + "$ref": "#/definitions/FarmBeatsExtensionProperties", + "x-ms-client-flatten": true + } + }, + "x-ms-azure-resource": true + }, + "FarmBeatsExtensionListResponse": { + "description": "Paged response contains list of requested objects and a URL link to get the next set of results.", + "type": "object", + "properties": { + "value": { + "description": "List of requested objects.", + "type": "array", + "items": { + "$ref": "#/definitions/FarmBeatsExtension" + } + }, + "nextLink": { + "description": "Continuation link (absolute URI) to the next page of results in the list.", + "type": "string", + "readOnly": true + } + } + }, + "FarmBeatsProperties": { + "description": "FarmBeats ARM Resource properties.", + "type": "object", + "properties": { + "instanceUri": { + "format": "uri", + "description": "Uri of the FarmBeats instance.", + "type": "string", + "readOnly": true + }, + "provisioningState": { + "description": "FarmBeats instance provisioning state.", + "enum": [ + "Succeeded", + "Failed" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + } + } + }, + "FarmBeats": { + "description": "FarmBeats ARM Resource.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/TrackedResource" + } + ], + "properties": { + "systemData": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData" + }, + "properties": { + "$ref": "#/definitions/FarmBeatsProperties", + "x-ms-client-flatten": true + } + }, + "x-ms-azure-resource": true + }, + "FarmBeatsUpdateRequestModel": { + "description": "FarmBeats update request.", + "type": "object", + "properties": { + "location": { + "description": "Geo-location where the resource lives.", + "type": "string" + }, + "tags": { + "description": "Resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "FarmBeatsListResponse": { + "description": "Paged response contains list of requested objects and a URL link to get the next set of results.", + "type": "object", + "properties": { + "value": { + "description": "List of requested objects.", + "type": "array", + "uniqueItems": false, + "items": { + "$ref": "#/definitions/FarmBeats" + } + }, + "nextLink": { + "description": "Continuation link (absolute URI) to the next page of results in the list.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "FarmBeatsResourceNameParameter": { + "in": "path", + "name": "farmBeatsResourceName", + "description": "FarmBeats resource name.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ExtensionIdParameter": { + "in": "path", + "name": "extensionId", + "description": "Id of extension resource.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow." + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "host": "management.azure.com", + "schemes": [ + "https" + ], + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] +} diff --git a/specification/agfood/resource-manager/Microsoft.AgFoodPlatform/preview/2020-05-12-preview/examples/Extensions_Create.json b/specification/agfood/resource-manager/Microsoft.AgFoodPlatform/preview/2020-05-12-preview/examples/Extensions_Create.json new file mode 100644 index 000000000000..1bf3fe863980 --- /dev/null +++ b/specification/agfood/resource-manager/Microsoft.AgFoodPlatform/preview/2020-05-12-preview/examples/Extensions_Create.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2020-05-12-preview", + "subscriptionId": "11111111-2222-3333-4444-555555555555", + "resourceGroupName": "examples-rg", + "farmBeatsResourceName": "examples-farmbeatsResourceName", + "extensionId": "provider.extension" + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/examples-rg/Microsoft.AgFoodPlatform/farmBeats/examples-farmbeatsResourceName/extensions/provider.extension", + "name": "provider.extension", + "type": "Microsoft.AgFoodPlatform/farmBeats/extensions", + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + }, + "eTag": "7200b954-0000-0700-0000-603cbbc40000", + "properties": { + "extensionCategory": "Weather", + "installedExtensionVersion": "1.0", + "extensionAuthLink": "https://www.provider.com/extension/", + "extensionApiDocsLink": "https://docs.provider.com/documentation/extension" + } + } + } + } +} diff --git a/specification/agfood/resource-manager/Microsoft.AgFoodPlatform/preview/2020-05-12-preview/examples/Extensions_Delete.json b/specification/agfood/resource-manager/Microsoft.AgFoodPlatform/preview/2020-05-12-preview/examples/Extensions_Delete.json new file mode 100644 index 000000000000..acc12ece1dc8 --- /dev/null +++ b/specification/agfood/resource-manager/Microsoft.AgFoodPlatform/preview/2020-05-12-preview/examples/Extensions_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-05-12-preview", + "subscriptionId": "11111111-2222-3333-4444-555555555555", + "resourceGroupName": "examples-rg", + "farmBeatsResourceName": "examples-farmbeatsResourceName", + "extensionId": "provider.extension" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/agfood/resource-manager/Microsoft.AgFoodPlatform/preview/2020-05-12-preview/examples/Extensions_Get.json b/specification/agfood/resource-manager/Microsoft.AgFoodPlatform/preview/2020-05-12-preview/examples/Extensions_Get.json new file mode 100644 index 000000000000..a9fd49929933 --- /dev/null +++ b/specification/agfood/resource-manager/Microsoft.AgFoodPlatform/preview/2020-05-12-preview/examples/Extensions_Get.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2020-05-12-preview", + "subscriptionId": "11111111-2222-3333-4444-555555555555", + "resourceGroupName": "examples-rg", + "farmBeatsResourceName": "examples-farmbeatsResourceName", + "extensionId": "provider.extension" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/examples-rg/Microsoft.AgFoodPlatform/farmBeats/examples-farmbeatsResourceName/extensions/provider.extension", + "name": "provider.extension", + "type": "Microsoft.AgFoodPlatform/farmBeats/extensions", + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + }, + "eTag": "7200b954-0000-0700-0000-603cbbc40000", + "properties": { + "extensionCategory": "Weather", + "installedExtensionVersion": "1.0", + "extensionAuthLink": "https://www.provider.com/extension/", + "extensionApiDocsLink": "https://docs.provider.com/documentation/extension" + } + } + } + } +} diff --git a/specification/agfood/resource-manager/Microsoft.AgFoodPlatform/preview/2020-05-12-preview/examples/Extensions_ListByFarmBeats.json b/specification/agfood/resource-manager/Microsoft.AgFoodPlatform/preview/2020-05-12-preview/examples/Extensions_ListByFarmBeats.json new file mode 100644 index 000000000000..c3e1f3b78402 --- /dev/null +++ b/specification/agfood/resource-manager/Microsoft.AgFoodPlatform/preview/2020-05-12-preview/examples/Extensions_ListByFarmBeats.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2020-05-12-preview", + "subscriptionId": "11111111-2222-3333-4444-555555555555", + "resourceGroupName": "examples-rg", + "farmBeatsResourceName": "examples-farmbeatsResourceName" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/examples-rg/Microsoft.AgFoodPlatform/farmBeats/examples-farmbeatsResourceName/extensions/provider.extension", + "name": "provider.extension", + "type": "Microsoft.AgFoodPlatform/farmBeats/extensions", + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + }, + "eTag": "7200b954-0000-0700-0000-603cbbc40000", + "properties": { + "extensionCategory": "Weather", + "installedExtensionVersion": "1.0", + "extensionAuthLink": "https://www.provider.com/extension/", + "extensionApiDocsLink": "https://docs.provider.com/documentation/extension" + } + } + ] + } + } + } +} diff --git a/specification/agfood/resource-manager/Microsoft.AgFoodPlatform/preview/2020-05-12-preview/examples/Extensions_Update.json b/specification/agfood/resource-manager/Microsoft.AgFoodPlatform/preview/2020-05-12-preview/examples/Extensions_Update.json new file mode 100644 index 000000000000..2d08b1b5f6d3 --- /dev/null +++ b/specification/agfood/resource-manager/Microsoft.AgFoodPlatform/preview/2020-05-12-preview/examples/Extensions_Update.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2020-05-12-preview", + "subscriptionId": "11111111-2222-3333-4444-555555555555", + "resourceGroupName": "examples-rg", + "farmBeatsResourceName": "examples-farmbeatsResourceName", + "extensionId": "provider.extension" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/examples-rg/Microsoft.AgFoodPlatform/farmBeats/examples-farmbeatsResourceName/extensions/provider.extension", + "name": "provider.extension", + "type": "Microsoft.AgFoodPlatform/farmBeats/extensions", + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + }, + "eTag": "7200b954-0000-0700-0000-603cbbc40000", + "properties": { + "extensionCategory": "Weather", + "installedExtensionVersion": "2.0", + "extensionAuthLink": "https://www.provider.com/extension/", + "extensionApiDocsLink": "https://docs.provider.com/documentation/extension" + } + } + } + } +} diff --git a/specification/agfood/resource-manager/Microsoft.AgFoodPlatform/preview/2020-05-12-preview/examples/FarmBeatsExtensions_Get.json b/specification/agfood/resource-manager/Microsoft.AgFoodPlatform/preview/2020-05-12-preview/examples/FarmBeatsExtensions_Get.json new file mode 100644 index 000000000000..8a79dd9cf2b5 --- /dev/null +++ b/specification/agfood/resource-manager/Microsoft.AgFoodPlatform/preview/2020-05-12-preview/examples/FarmBeatsExtensions_Get.json @@ -0,0 +1,243 @@ +{ + "parameters": { + "api-version": "2020-05-12-preview", + "farmBeatsExtensionId": "DTN.ContentServices" + }, + "responses": { + "200": { + "body": { + "id": "Microsoft.AgFoodPlatform/farmBeatsExtensionDefinitions/DTN.ContentServices", + "type": "Microsoft.AgFoodPlatform/farmBeatsExtensionDefinitions", + "systemData": { + "createdAt": "2021-04-12T15:28:06Z", + "lastModifiedAt": "2021-04-12T15:30:01Z" + }, + "properties": { + "targetResourceType": "FarmBeats", + "farmBeatsExtensionId": "DTN.ContentServices", + "farmBeatsExtensionName": "DTN", + "farmBeatsExtensionVersion": "1.0", + "publisherId": "dtn", + "extensionCategory": "Weather", + "extensionAuthLink": "https://www.dtn.com/dtn-content-integration/", + "extensionApiDocsLink": "https://cs-docs.dtn.com/api/weather-observations-and-forecasts-rest-api/", + "detailedInformation": [ + { + "apiName": "GetDailyObservations", + "customParameters": [ + "stationId", + "stationLatitude", + "stationLongitude", + "timeZone", + "sunrise", + "sunset", + "weatherCode", + "weatherDescription", + "maxTemperature", + "minTemperature", + "avgHeatIndex", + "maxHeatIndex", + "minHeatIndex", + "maxWindChill", + "minWindChill", + "maxFeelsLike", + "minFeelsLike", + "avgFeelsLike", + "maxWindSpeed", + "avgWetBulbGlobeTemp", + "maxWetBulbGlobeTemp", + "minWetBulbGlobeTemp", + "minutesOfSunshine", + "cornHeatUnit", + "evapotranspiration" + ], + "platformParameters": [ + "cloudCover", + "dewPoint", + "growingDegreeDay", + "precipitation", + "pressure", + "relativeHumidity", + "temperature", + "wetBulbTemperature", + "dateTime", + "windChill", + "windSpeed", + "windDirection" + ], + "unitsSupported": { + "key": "units", + "values": [ + "us", + "si" + ] + }, + "apiInputParameters": [ + "stationId", + "lat", + "lon", + "days", + "units", + "precision", + "sector" + ] + }, + { + "apiName": "GetHourlyObservations", + "customParameters": [ + "stationId", + "stationLatitude", + "stationLongitude", + "timeZone", + "weatherCode", + "weatherDescription", + "feelsLike", + "visibilityWeatherCode", + "visibilityWeatherDescription", + "minutesOfSunshine" + ], + "platformParameters": [ + "cloudCover", + "dewPoint", + "precipitation", + "pressure", + "relativeHumidity", + "temperature", + "wetBulbTemperature", + "dateTime", + "visibility", + "windChill", + "windSpeed", + "windDirection", + "windGust" + ], + "unitsSupported": { + "key": "units", + "values": [ + "us", + "si" + ] + }, + "apiInputParameters": [ + "stationId", + "lat", + "lon", + "hours", + "units", + "precision", + "sector" + ] + }, + { + "apiName": "GetHourlyForecasts", + "customParameters": [ + "stationId", + "stationLatitude", + "stationLongitude", + "timeZone", + "weatherCode", + "weatherDescription", + "feelsLike", + "visibilityWeatherCode", + "visibilityWeatherDescription", + "minutesOfSunshine" + ], + "platformParameters": [ + "cloudCover", + "dewPoint", + "precipitation", + "pressure", + "relativeHumidity", + "temperature", + "wetBulbTemperature", + "dateTime", + "visibility", + "windChill", + "windSpeed", + "windDirection", + "windGust" + ], + "unitsSupported": { + "key": "units", + "values": [ + "us", + "si" + ] + }, + "apiInputParameters": [ + "stationId", + "lat", + "lon", + "days", + "units", + "precision", + "sector" + ] + }, + { + "apiName": "GetDailyForecasts", + "customParameters": [ + "stationId", + "stationLatitude", + "stationLongitude", + "timeZone", + "sunrise", + "sunset", + "weatherCode", + "weatherDescription", + "maxTemperature", + "minTemperature", + "avgHeatIndex", + "maxHeatIndex", + "minHeatIndex", + "maxWindChill", + "minWindChill", + "maxFeelsLike", + "minFeelsLike", + "avgFeelsLike", + "maxWindSpeed", + "avgWetBulbGlobeTemp", + "maxWetBulbGlobeTemp", + "minWetBulbGlobeTemp", + "minutesOfSunshine", + "cornHeatUnit", + "evapotranspiration" + ], + "platformParameters": [ + "cloudCover", + "dewPoint", + "growingDegreeDay", + "precipitation", + "pressure", + "relativeHumidity", + "temperature", + "wetBulbTemperature", + "dateTime", + "windChill", + "windSpeed", + "windDirection" + ], + "unitsSupported": { + "key": "units", + "values": [ + "us", + "si" + ] + }, + "apiInputParameters": [ + "stationId", + "lat", + "lon", + "days", + "units", + "precision", + "sector" + ] + } + ] + }, + "name": "DTN.ContentServices" + } + } + } +} diff --git a/specification/agfood/resource-manager/Microsoft.AgFoodPlatform/preview/2020-05-12-preview/examples/FarmBeatsExtensions_List.json b/specification/agfood/resource-manager/Microsoft.AgFoodPlatform/preview/2020-05-12-preview/examples/FarmBeatsExtensions_List.json new file mode 100644 index 000000000000..045a68ac341b --- /dev/null +++ b/specification/agfood/resource-manager/Microsoft.AgFoodPlatform/preview/2020-05-12-preview/examples/FarmBeatsExtensions_List.json @@ -0,0 +1,248 @@ +{ + "parameters": { + "api-version": "2020-05-12-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "Microsoft.AgFoodPlatform/farmBeatsExtensionDefinitions/DTN.ContentServices", + "type": "Microsoft.AgFoodPlatform/farmBeatsExtensionDefinitions", + "systemData": { + "createdAt": "2021-04-12T15:28:06Z", + "lastModifiedAt": "2021-04-12T15:30:01Z" + }, + "properties": { + "targetResourceType": "FarmBeats", + "farmBeatsExtensionId": "DTN.ContentServices", + "farmBeatsExtensionName": "DTN", + "farmBeatsExtensionVersion": "1.0", + "publisherId": "dtn", + "extensionCategory": "Weather", + "extensionAuthLink": "https://www.dtn.com/dtn-content-integration/", + "extensionApiDocsLink": "https://cs-docs.dtn.com/api/weather-observations-and-forecasts-rest-api/", + "detailedInformation": [ + { + "apiName": "GetDailyObservations", + "customParameters": [ + "stationId", + "stationLatitude", + "stationLongitude", + "timeZone", + "sunrise", + "sunset", + "weatherCode", + "weatherDescription", + "maxTemperature", + "minTemperature", + "avgHeatIndex", + "maxHeatIndex", + "minHeatIndex", + "maxWindChill", + "minWindChill", + "maxFeelsLike", + "minFeelsLike", + "avgFeelsLike", + "maxWindSpeed", + "avgWetBulbGlobeTemp", + "maxWetBulbGlobeTemp", + "minWetBulbGlobeTemp", + "minutesOfSunshine", + "cornHeatUnit", + "evapotranspiration" + ], + "platformParameters": [ + "cloudCover", + "dewPoint", + "growingDegreeDay", + "precipitation", + "pressure", + "relativeHumidity", + "temperature", + "wetBulbTemperature", + "dateTime", + "windChill", + "windSpeed", + "windDirection" + ], + "unitsSupported": { + "key": "units", + "values": [ + "us", + "si" + ] + }, + "apiInputParameters": [ + "stationId", + "lat", + "lon", + "days", + "units", + "precision", + "sector" + ] + }, + { + "apiName": "GetHourlyObservations", + "customParameters": [ + "stationId", + "stationLatitude", + "stationLongitude", + "timeZone", + "weatherCode", + "weatherDescription", + "feelsLike", + "visibilityWeatherCode", + "visibilityWeatherDescription", + "minutesOfSunshine" + ], + "platformParameters": [ + "cloudCover", + "dewPoint", + "precipitation", + "pressure", + "relativeHumidity", + "temperature", + "wetBulbTemperature", + "dateTime", + "visibility", + "windChill", + "windSpeed", + "windDirection", + "windGust" + ], + "unitsSupported": { + "key": "units", + "values": [ + "us", + "si" + ] + }, + "apiInputParameters": [ + "stationId", + "lat", + "lon", + "hours", + "units", + "precision", + "sector" + ] + }, + { + "apiName": "GetHourlyForecasts", + "customParameters": [ + "stationId", + "stationLatitude", + "stationLongitude", + "timeZone", + "weatherCode", + "weatherDescription", + "feelsLike", + "visibilityWeatherCode", + "visibilityWeatherDescription", + "minutesOfSunshine" + ], + "platformParameters": [ + "cloudCover", + "dewPoint", + "precipitation", + "pressure", + "relativeHumidity", + "temperature", + "wetBulbTemperature", + "dateTime", + "visibility", + "windChill", + "windSpeed", + "windDirection", + "windGust" + ], + "unitsSupported": { + "key": "units", + "values": [ + "us", + "si" + ] + }, + "apiInputParameters": [ + "stationId", + "lat", + "lon", + "days", + "units", + "precision", + "sector" + ] + }, + { + "apiName": "GetDailyForecasts", + "customParameters": [ + "stationId", + "stationLatitude", + "stationLongitude", + "timeZone", + "sunrise", + "sunset", + "weatherCode", + "weatherDescription", + "maxTemperature", + "minTemperature", + "avgHeatIndex", + "maxHeatIndex", + "minHeatIndex", + "maxWindChill", + "minWindChill", + "maxFeelsLike", + "minFeelsLike", + "avgFeelsLike", + "maxWindSpeed", + "avgWetBulbGlobeTemp", + "maxWetBulbGlobeTemp", + "minWetBulbGlobeTemp", + "minutesOfSunshine", + "cornHeatUnit", + "evapotranspiration" + ], + "platformParameters": [ + "cloudCover", + "dewPoint", + "growingDegreeDay", + "precipitation", + "pressure", + "relativeHumidity", + "temperature", + "wetBulbTemperature", + "dateTime", + "windChill", + "windSpeed", + "windDirection" + ], + "unitsSupported": { + "key": "units", + "values": [ + "us", + "si" + ] + }, + "apiInputParameters": [ + "stationId", + "lat", + "lon", + "days", + "units", + "precision", + "sector" + ] + } + ] + }, + "name": "DTN.ContentServices" + } + ], + "nextLink": "string" + } + } + } +} diff --git a/specification/agfood/resource-manager/Microsoft.AgFoodPlatform/preview/2020-05-12-preview/examples/FarmBeatsModels_CreateOrUpdate.json b/specification/agfood/resource-manager/Microsoft.AgFoodPlatform/preview/2020-05-12-preview/examples/FarmBeatsModels_CreateOrUpdate.json new file mode 100644 index 000000000000..5613d21df6f7 --- /dev/null +++ b/specification/agfood/resource-manager/Microsoft.AgFoodPlatform/preview/2020-05-12-preview/examples/FarmBeatsModels_CreateOrUpdate.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "api-version": "2020-05-12-preview", + "subscriptionId": "11111111-2222-3333-4444-555555555555", + "resourceGroupName": "examples-rg", + "farmBeatsResourceName": "examples-farmbeatsResourceName", + "body": { + "location": "eastus2", + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/examples-rg/Microsoft.AgFoodPlatform/farmBeats/examples-farmbeatsResourceName", + "name": "examples-farmbeatsResourceName", + "type": "Microsoft.AgFoodPlatform/farmBeats", + "location": "eastus2", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + }, + "properties": { + "instanceUri": "https://examples-farmbeatsResourceName.eastus2.farmbeats.azure.net", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/examples-rg/Microsoft.AgFoodPlatform/farmBeats/examples-farmbeatsResourceName", + "name": "examples-farmbeatsResourceName", + "type": "Microsoft.AgFoodPlatform/farmBeats", + "location": "eastus2", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + }, + "properties": { + "instanceUri": "https://examples-farmbeatsResourceName.eastus2.farmbeats.azure.net", + "provisioningState": "Failed" + } + } + } + } +} diff --git a/specification/agfood/resource-manager/Microsoft.AgFoodPlatform/preview/2020-05-12-preview/examples/FarmBeatsModels_Delete.json b/specification/agfood/resource-manager/Microsoft.AgFoodPlatform/preview/2020-05-12-preview/examples/FarmBeatsModels_Delete.json new file mode 100644 index 000000000000..ca960b71cfdf --- /dev/null +++ b/specification/agfood/resource-manager/Microsoft.AgFoodPlatform/preview/2020-05-12-preview/examples/FarmBeatsModels_Delete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2020-05-12-preview", + "subscriptionId": "11111111-2222-3333-4444-555555555555", + "resourceGroupName": "examples-rg", + "farmBeatsResourceName": "examples-farmBeatsResourceName" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/agfood/resource-manager/Microsoft.AgFoodPlatform/preview/2020-05-12-preview/examples/FarmBeatsModels_Get.json b/specification/agfood/resource-manager/Microsoft.AgFoodPlatform/preview/2020-05-12-preview/examples/FarmBeatsModels_Get.json new file mode 100644 index 000000000000..f15db77e4d33 --- /dev/null +++ b/specification/agfood/resource-manager/Microsoft.AgFoodPlatform/preview/2020-05-12-preview/examples/FarmBeatsModels_Get.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2020-05-12-preview", + "subscriptionId": "11111111-2222-3333-4444-555555555555", + "resourceGroupName": "examples-rg", + "farmBeatsResourceName": "examples-farmBeatsResourceName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/examples-rg/Microsoft.AgFoodPlatform/farmBeats/examples-farmbeatsResourceName", + "name": "examples-farmBeatsResourceName", + "type": "Microsoft.AgFoodPlatform/farmBeats", + "location": "eastus2", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + }, + "properties": { + "instanceUri": "https://examples-farmbeatsResourceName.eastus2.farmbeats.azure.net", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/agfood/resource-manager/Microsoft.AgFoodPlatform/preview/2020-05-12-preview/examples/FarmBeatsModels_ListByResourceGroup.json b/specification/agfood/resource-manager/Microsoft.AgFoodPlatform/preview/2020-05-12-preview/examples/FarmBeatsModels_ListByResourceGroup.json new file mode 100644 index 000000000000..69b66f5bec27 --- /dev/null +++ b/specification/agfood/resource-manager/Microsoft.AgFoodPlatform/preview/2020-05-12-preview/examples/FarmBeatsModels_ListByResourceGroup.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2020-05-12-preview", + "subscriptionId": "11111111-2222-3333-4444-555555555555", + "resourceGroupName": "examples-rg" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/examples-rg/Microsoft.AgFoodPlatform/farmBeats/examples-farmbeatsResourceName", + "name": "examples-farmBeatsResourceName", + "type": "Microsoft.AgFoodPlatform/farmBeats", + "location": "eastus2", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + }, + "properties": { + "instanceUri": "https://examples-farmbeatsResourceName.eastus2.farmbeats.azure.net", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/agfood/resource-manager/Microsoft.AgFoodPlatform/preview/2020-05-12-preview/examples/FarmBeatsModels_ListBySubscription.json b/specification/agfood/resource-manager/Microsoft.AgFoodPlatform/preview/2020-05-12-preview/examples/FarmBeatsModels_ListBySubscription.json new file mode 100644 index 000000000000..60ae3f9167ec --- /dev/null +++ b/specification/agfood/resource-manager/Microsoft.AgFoodPlatform/preview/2020-05-12-preview/examples/FarmBeatsModels_ListBySubscription.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2020-05-12-preview", + "subscriptionId": "11111111-2222-3333-4444-555555555555" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/examples-rg/Microsoft.AgFoodPlatform/farmBeats/examples-farmbeatsResourceName", + "name": "examples-farmBeatsResourceName", + "type": "Microsoft.AgFoodPlatform/farmBeats", + "location": "eastus2", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + }, + "properties": { + "instanceUri": "https://examples-farmbeatsResourceName.eastus2.farmbeats.azure.net", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/agfood/resource-manager/Microsoft.AgFoodPlatform/preview/2020-05-12-preview/examples/FarmBeatsModels_Update.json b/specification/agfood/resource-manager/Microsoft.AgFoodPlatform/preview/2020-05-12-preview/examples/FarmBeatsModels_Update.json new file mode 100644 index 000000000000..91916585be34 --- /dev/null +++ b/specification/agfood/resource-manager/Microsoft.AgFoodPlatform/preview/2020-05-12-preview/examples/FarmBeatsModels_Update.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2020-05-12-preview", + "subscriptionId": "11111111-2222-3333-4444-555555555555", + "resourceGroupName": "examples-rg", + "farmBeatsResourceName": "examples-farmBeatsResourceName", + "body": { + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/examples-rg/Microsoft.AgFoodPlatform/farmBeats/examples-farmbeatsResourceName", + "name": "examples-farmBeatsResourceName", + "type": "Microsoft.AgFoodPlatform/farmBeats", + "location": "eastus2", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + }, + "properties": { + "instanceUri": "https://examples-farmbeatsResourceName.eastus2.farmbeats.azure.net", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/agfood/resource-manager/Microsoft.AgFoodPlatform/preview/2020-05-12-preview/examples/Locations_CheckNameAvailability_AlreadyExists.json b/specification/agfood/resource-manager/Microsoft.AgFoodPlatform/preview/2020-05-12-preview/examples/Locations_CheckNameAvailability_AlreadyExists.json new file mode 100644 index 000000000000..67af64832527 --- /dev/null +++ b/specification/agfood/resource-manager/Microsoft.AgFoodPlatform/preview/2020-05-12-preview/examples/Locations_CheckNameAvailability_AlreadyExists.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2020-05-12-preview", + "subscriptionId": "11111111-2222-3333-4444-555555555555", + "body": { + "name": "existingaccountname", + "type": "Microsoft.AgFoodPlatform/farmBeats" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": false, + "reason": "AlreadyExists", + "message": "An account named 'existingaccountname' is already in use." + } + } + } +} diff --git a/specification/agfood/resource-manager/Microsoft.AgFoodPlatform/preview/2020-05-12-preview/examples/Locations_CheckNameAvailability_Available.json b/specification/agfood/resource-manager/Microsoft.AgFoodPlatform/preview/2020-05-12-preview/examples/Locations_CheckNameAvailability_Available.json new file mode 100644 index 000000000000..c515d3f3c2be --- /dev/null +++ b/specification/agfood/resource-manager/Microsoft.AgFoodPlatform/preview/2020-05-12-preview/examples/Locations_CheckNameAvailability_Available.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2020-05-12-preview", + "subscriptionId": "11111111-2222-3333-4444-555555555555", + "body": { + "name": "newaccountname", + "type": "Microsoft.AgFoodPlatform/farmBeats" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": true + } + } + } +} diff --git a/specification/agfood/resource-manager/Microsoft.AgFoodPlatform/preview/2020-05-12-preview/examples/Operations_List.json b/specification/agfood/resource-manager/Microsoft.AgFoodPlatform/preview/2020-05-12-preview/examples/Operations_List.json new file mode 100644 index 000000000000..a80bbb8e33d4 --- /dev/null +++ b/specification/agfood/resource-manager/Microsoft.AgFoodPlatform/preview/2020-05-12-preview/examples/Operations_List.json @@ -0,0 +1,94 @@ +{ + "parameters": { + "api-version": "2020-05-12-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.AgFoodPlatform/farmBeats/read", + "isDataAction": false, + "display": { + "provider": "Microsoft AgFoodPlatform", + "resource": "AgFoodPlatform FarmBeats", + "operation": "Get or List AgFoodPlatform FarmBeats resource(s).", + "description": "Gets or Lists existing AgFoodPlatform FarmBeats resource(s)." + } + }, + { + "name": "Microsoft.AgFoodPlatform/farmBeats/write", + "isDataAction": false, + "display": { + "provider": "Microsoft AgFoodPlatform", + "resource": "AgFoodPlatform FarmBeats", + "operation": "Create or Update AgFoodPlatform FarmBeats.", + "description": "Creates or Updates AgFoodPlatform FarmBeats." + } + }, + { + "name": "Microsoft.AgFoodPlatform/farmBeats/delete", + "isDataAction": false, + "display": { + "provider": "Microsoft AgFoodPlatform", + "resource": "AgFoodPlatform FarmBeats", + "operation": "Delete AgFoodPlatform FarmBeats resource.", + "description": "Deletes an existing AgFoodPlatform FarmBeats resource." + } + }, + { + "name": "Microsoft.AgFoodPlatform/locations/checkNameAvailability/action", + "isDataAction": false, + "display": { + "provider": "Microsoft AgFoodPlatform", + "resource": "Locations", + "operation": "Check Name Availability", + "description": "Checks that resource name is valid and is not in use." + } + }, + { + "name": "Microsoft.AgFoodPlatform/operations/read", + "isDataAction": false, + "display": { + "provider": "Microsoft AgFoodPlatform", + "resource": "List all operations in Microsoft AgFoodPlatform resource provider.", + "operation": "List all operations.", + "description": "List all operations in Microsoft AgFoodPlatform resource provider." + } + }, + { + "name": "Microsoft.AgFoodPlatform/farmBeats/extensions/read", + "isDataAction": false, + "display": { + "provider": "Microsoft AgFoodPlatform", + "resource": "AgFoodPlatform Extensions", + "operation": "Get or List AgFoodPlatform Extensions resource(s).", + "description": "Gets or Lists existing AgFoodPlatform Extensions resource(s)." + } + }, + { + "name": "Microsoft.AgFoodPlatform/farmBeats/extensions/write", + "isDataAction": false, + "display": { + "provider": "Microsoft AgFoodPlatform", + "resource": "AgFoodPlatform Extensions", + "operation": "Create or Update AgFoodPlatform Extensions.", + "description": "Creates or Updates AgFoodPlatform Extensions." + } + }, + { + "name": "Microsoft.AgFoodPlatform/farmBeats/extensions/delete", + "isDataAction": false, + "display": { + "provider": "Microsoft AgFoodPlatform", + "resource": "AgFoodPlatform Extensions", + "operation": "Delete AgFoodPlatform Extensions resource.", + "description": "Deletes an existing AgFoodPlatform Extensions resource." + } + } + ], + "nextLink": "https://management.azure.com/providers/Microsoft.AgFoodPlatform/operations?$skiptoken={token}" + } + } + } +} diff --git a/specification/agfood/resource-manager/readme.csharp.md b/specification/agfood/resource-manager/readme.csharp.md new file mode 100644 index 000000000000..9e64c3052486 --- /dev/null +++ b/specification/agfood/resource-manager/readme.csharp.md @@ -0,0 +1,15 @@ +## C# + +These settings apply only when `--csharp` is specified on the command line. +Please also specify `--csharp-sdks-folder=`. + +```yaml $(csharp) +csharp: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 1 + clear-output-folder: true + client-side-validation: false + namespace: Microsoft.AgFoodPlatform + output-folder: $(csharp-sdks-folder)/agfood/management/Microsoft.AgFoodPlatform/Generated +``` diff --git a/specification/agfood/resource-manager/readme.go.md b/specification/agfood/resource-manager/readme.go.md new file mode 100644 index 000000000000..056ea4b911ef --- /dev/null +++ b/specification/agfood/resource-manager/readme.go.md @@ -0,0 +1,11 @@ +## Go + +These settings apply only when `--go` is specified on the command line. + +```yaml $(go) && $(track2) +license-header: MICROSOFT_MIT_NO_VERSION +module-name: sdk/agfood/armagfood +module: github.com/Azure/azure-sdk-for-go/$(module-name) +output-folder: $(go-sdk-folder)/$(module-name) +azure-arm: true +``` diff --git a/specification/agfood/resource-manager/readme.md b/specification/agfood/resource-manager/readme.md new file mode 100644 index 000000000000..2798ac8e8a73 --- /dev/null +++ b/specification/agfood/resource-manager/readme.md @@ -0,0 +1,105 @@ +# agfood + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for agfood. + +## Getting Started + +To build the SDKs for My API, simply install AutoRest via `npm` (`npm install -g autorest`) and then run: + +> `autorest readme.md` + +To see additional help and options, run: + +> `autorest --help` + +For other options on installation see [Installing AutoRest](https://aka.ms/autorest/install) on the AutoRest github page. + +--- + +## Configuration + +### Basic Information + +These are the global settings for the agfood. + +```yaml +openapi-type: arm +tag: package-2020-05-12-preview +``` + +### Tag: package-2020-05-12-preview + +These settings apply only when `--tag=package-2020-05-12-preview` is specified on the command line. + +```yaml $(tag) == 'package-2020-05-12-preview' +input-file: + - Microsoft.AgFoodPlatform/preview/2020-05-12-preview/agfood.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-track2 + - repo: azure-sdk-for-js +``` +## Go + +See configuration in [readme.go.md](./readme.go.md) + +## Python + +See configuration in [readme.python.md](./readme.python.md) + +## TypeScript + +See configuration in [readme.typescript.md](./readme.typescript.md) + +## CSharp + +See configuration in [readme.csharp.md](./readme.csharp.md) + +## Suppression + +``` yaml +directive: + - from: agfood.json + suppress: R3006 # BodyTopLevelProperties + where: $.definitions.FarmBeats.properties + reason: Currently systemData is not allowed. + - from: agfood.json + suppress: R3006 # BodyTopLevelProperties + where: $.definitions.Extension.properties + reason: Currently systemData is not allowed. + - from: agfood.json + suppress: R3018 # EnumInsteadOfBoolean + where: + - $.definitions.Operation.properties.isDataAction + - $.definitions.CheckNameAvailabilityResult.properties.nameAvailable + reason: Booleans are used to indicate binary states of the property, enum is not appropriate. + - from: agfood.json + suppress: R4000 # DescriptionAndTitleMissing + where: + - $.definitions.Error.properties.innererror + - $.definitions.ErrorResponse.properties.error + - $.definitions.Extension.properties.properties + - $.definitions.Extension.properties.systemData + - $.definitions.FarmBeats.properties.properties + - $.definitions.FarmBeats.properties.systemData + - $.definitions.InnerError.properties.innererror + - $.definitions.Operation.properties.display + reason: Model has description added in it's schema. + - from: types.json + suppress: R4000 # DescriptionAndTitleMissing + where: $.definitions.Resource + reason: Common type models are inherited. +``` diff --git a/specification/agfood/resource-manager/readme.python.md b/specification/agfood/resource-manager/readme.python.md new file mode 100644 index 000000000000..f109f297029c --- /dev/null +++ b/specification/agfood/resource-manager/readme.python.md @@ -0,0 +1,23 @@ +## Python + +These settings apply only when `--python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(track2) +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +package-name: azure-mgmt-agfood +no-namespace-folders: true +package-version: 1.0.0b1 +clear-output-folder: true +``` + +``` yaml $(python-mode) == 'update' && $(track2) +no-namespace-folders: true +output-folder: $(python-sdks-folder)/agfood/azure-mgmt-agfood/azure/mgmt/agfood +``` + +``` yaml $(python-mode) == 'create' && $(track2) +basic-setup-py: true +output-folder: $(python-sdks-folder)/agfood/azure-mgmt-agfood +``` diff --git a/specification/agfood/resource-manager/readme.typescript.md b/specification/agfood/resource-manager/readme.typescript.md new file mode 100644 index 000000000000..c4ad9c4e1545 --- /dev/null +++ b/specification/agfood/resource-manager/readme.typescript.md @@ -0,0 +1,15 @@ +## TypeScript + +These settings apply only when `--typescript` is specified on the command line. +Please also specify `--typescript-sdks-folder=`. + +``` yaml $(typescript) +typescript: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + package-name: "@azure/arm-agfood" + output-folder: "$(typescript-sdks-folder)/sdk/agfood/arm-agfood" + payload-flattening-threshold: 1 + clear-output-folder: true + generate-metadata: true +``` diff --git a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/stable/2019-03-01/AlertsManagement.json b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/stable/2019-03-01/AlertsManagement.json index b5be751defbb..c7f52dfc4257 100644 --- a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/stable/2019-03-01/AlertsManagement.json +++ b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/stable/2019-03-01/AlertsManagement.json @@ -375,7 +375,7 @@ }, "subscriptionId": { "name": "subscriptionId", - "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.", + "description": "The Azure subscription Id.", "type": "string", "in": "path", "required": true diff --git a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/stable/2021-04-01/SmartDetectorAlertRulesApi.json b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/stable/2021-04-01/SmartDetectorAlertRulesApi.json new file mode 100644 index 000000000000..3b0b1f8c2644 --- /dev/null +++ b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/stable/2021-04-01/SmartDetectorAlertRulesApi.json @@ -0,0 +1,751 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Alerts Management Service Resource Provider", + "description": "APIs for Azure Smart Detector Alert Rules CRUD operations.", + "version": "2021-04-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/providers/microsoft.alertsManagement/smartDetectorAlertRules": { + "get": { + "tags": [ + "SmartDetectorAlertRules" + ], + "operationId": "SmartDetectorAlertRules_List", + "description": "List all the existing Smart Detector alert rules within the subscription.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ExpandDetectorParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/SmartDetectorErrorResponse" + } + }, + "200": { + "description": "Successful request to list Smart Detector alert rules.", + "schema": { + "$ref": "#/definitions/AlertRulesList" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Smart Detector alert rules": { + "$ref": "./examples/SmartDetectorAlertRule_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.alertsManagement/smartDetectorAlertRules": { + "get": { + "tags": [ + "SmartDetectorAlertRules" + ], + "operationId": "SmartDetectorAlertRules_ListByResourceGroup", + "description": "List all the existing Smart Detector alert rules within the subscription and resource group.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ExpandDetectorParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/SmartDetectorErrorResponse" + } + }, + "200": { + "description": "Successful request to list Smart Detector alert rules.", + "schema": { + "$ref": "#/definitions/AlertRulesList" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List alert rules": { + "$ref": "./examples/SmartDetectorAlertRule_ListByResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.alertsManagement/smartDetectorAlertRules/{alertRuleName}": { + "get": { + "tags": [ + "SmartDetectorAlertRules" + ], + "operationId": "SmartDetectorAlertRules_Get", + "description": "Get a specific Smart Detector alert rule.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AlertRuleNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ExpandDetectorParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/SmartDetectorErrorResponse" + } + }, + "200": { + "description": "Successful request to get Smart Detector alert rule.", + "schema": { + "$ref": "#/definitions/AlertRule" + } + } + }, + "x-ms-examples": { + "Get a Smart Detector alert rule": { + "$ref": "./examples/SmartDetectorAlertRule_Get.json" + } + } + }, + "put": { + "tags": [ + "SmartDetectorAlertRules" + ], + "operationId": "SmartDetectorAlertRules_CreateOrUpdate", + "description": "Create or update a Smart Detector alert rule.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AlertRuleNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "description": "Parameters supplied to the operation.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AlertRule" + } + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/SmartDetectorErrorResponse" + } + }, + "200": { + "description": "Successful request to update a Smart Detector alert rule.", + "schema": { + "$ref": "#/definitions/AlertRule" + } + }, + "201": { + "description": "Successful request to create a Smart Detector alert rule.", + "schema": { + "$ref": "#/definitions/AlertRule" + } + } + }, + "x-ms-examples": { + "Create or update a Smart Detector alert rule": { + "$ref": "./examples/SmartDetectorAlertRule_CreateOrUpdate.json" + } + } + }, + "patch": { + "tags": [ + "SmartDetectorAlertRules" + ], + "operationId": "SmartDetectorAlertRules_Patch", + "description": "Patch a specific Smart Detector alert rule.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AlertRuleNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "description": "Parameters supplied to the operation.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AlertRulePatchObject" + } + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/SmartDetectorErrorResponse" + } + }, + "200": { + "description": "Successful request to patch Smart Detector alert rule.", + "schema": { + "$ref": "#/definitions/AlertRule" + } + } + }, + "x-ms-examples": { + "Patch alert rules": { + "$ref": "./examples/SmartDetectorAlertRule_Patch.json" + } + } + }, + "delete": { + "tags": [ + "SmartDetectorAlertRules" + ], + "operationId": "SmartDetectorAlertRules_Delete", + "description": "Delete an existing Smart Detector alert rule.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AlertRuleNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/SmartDetectorErrorResponse" + } + }, + "200": { + "description": "Successful request to delete a Smart Detector alert rule." + }, + "204": { + "description": "The Smart Detector alert rule does not exist. It may have already been deleted." + } + }, + "x-ms-examples": { + "Delete a Smart Detector alert rule": { + "$ref": "./examples/SmartDetectorAlertRule_Delete.json" + } + } + } + } + }, + "definitions": { + "SmartDetectorErrorResponse": { + "description": "API error.", + "type": "object", + "properties": { + "error": { + "$ref": "#/definitions/SmartDetectorErrorResponseBody", + "description": "The API error body.", + "x-ms-client-flatten": true + } + } + }, + "SmartDetectorErrorResponseBody": { + "description": "API error body.", + "type": "object", + "properties": { + "code": { + "description": "Error code", + "type": "string" + }, + "message": { + "description": "Error message indicating why the operation failed.", + "type": "string" + } + } + }, + "ActionGroupsInformation": { + "properties": { + "customEmailSubject": { + "description": "An optional custom email subject to use in email notifications.", + "type": "string" + }, + "customWebhookPayload": { + "description": "An optional custom web-hook payload to use in web-hook notifications.", + "type": "string" + }, + "groupIds": { + "description": "The Action Group resource IDs.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "required": [ + "groupIds" + ], + "description": "The Action Groups information, used by the alert rule." + }, + "ThrottlingInformation": { + "properties": { + "duration": { + "description": "The required duration (in ISO8601 format) to wait before notifying on the alert rule again. The time granularity must be in minutes and minimum value is 0 minutes", + "type": "string", + "format": "duration" + } + }, + "description": "Optional throttling information for the alert rule." + }, + "AzureResource": { + "type": "object", + "properties": { + "id": { + "description": "The resource ID.", + "readOnly": true, + "type": "string" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "The resource type." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The resource name." + }, + "location": { + "type": "string", + "description": "The resource location.", + "default": "global" + }, + "tags": { + "type": "object", + "description": "The resource tags.", + "additionalProperties": { + "type": "string" + } + } + }, + "x-ms-azure-resource": true, + "description": "An Azure resource object" + }, + "AlertRule": { + "allOf": [ + { + "$ref": "#/definitions/AzureResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AlertRuleProperties", + "description": "The properties of the alert rule." + } + }, + "description": "The alert rule information" + }, + "AlertRulesList": { + "description": "List of Smart Detector alert rules.", + "properties": { + "value": { + "description": "List of Smart Detector alert rules.", + "type": "array", + "items": { + "$ref": "#/definitions/AlertRule" + } + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + } + }, + "AlertRulePatchObject": { + "properties": { + "id": { + "description": "The resource ID.", + "readOnly": true, + "type": "string" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "The resource type." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The resource name." + }, + "tags": { + "type": "object", + "description": "The resource tags.", + "additionalProperties": { + "type": "string" + } + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AlertRulePatchProperties", + "description": "The properties of the alert rule.", + "minProperties": 1 + } + }, + "description": "The alert rule patch information" + }, + "Detector": { + "properties": { + "id": { + "type": "string", + "description": "The detector id." + }, + "parameters": { + "description": "The detector's parameters.'", + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The Smart Detector name." + }, + "description": { + "type": "string", + "readOnly": true, + "description": "The Smart Detector description." + }, + "supportedResourceTypes": { + "type": "array", + "readOnly": true, + "items": { + "type": "string" + }, + "description": "The Smart Detector supported resource types." + }, + "imagePaths": { + "type": "array", + "readOnly": true, + "items": { + "type": "string" + }, + "description": "The Smart Detector image path. By default this is not populated, unless it's specified in expandDetector" + }, + "parameterDefinitions": { + "type": "array", + "readOnly": true, + "description": "The Smart Detector parameters definitions.'", + "items": { + "type": "object", + "$ref": "#/definitions/DetectorParameterDefinition" + } + }, + "supportedCadences": { + "type": "array", + "readOnly": true, + "description": "The Smart Detector supported cadences.", + "items": { + "type": "integer", + "format": "int32" + } + } + }, + "required": [ + "id" + ], + "description": "The detector information. By default this is not populated, unless it's specified in expandDetector" + }, + "AlertRuleProperties": { + "properties": { + "description": { + "description": "The alert rule description.", + "type": "string" + }, + "state": { + "description": "The alert rule state.", + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "AlertRuleState", + "modelAsString": true + } + }, + "severity": { + "description": "The alert rule severity.", + "type": "string", + "enum": [ + "Sev0", + "Sev1", + "Sev2", + "Sev3", + "Sev4" + ], + "x-ms-enum": { + "name": "Severity", + "modelAsString": true + } + }, + "frequency": { + "description": "The alert rule frequency in ISO8601 format. The time granularity must be in minutes and minimum value is 1 minute, depending on the detector.", + "type": "string", + "format": "duration" + }, + "detector": { + "description": "The alert rule's detector.", + "$ref": "#/definitions/Detector" + }, + "scope": { + "description": "The alert rule resources scope.", + "type": "array", + "items": { + "type": "string" + } + }, + "actionGroups": { + "description": "The alert rule actions.", + "$ref": "#/definitions/ActionGroupsInformation" + }, + "throttling": { + "description": "The alert rule throttling information.", + "$ref": "#/definitions/ThrottlingInformation" + } + }, + "required": [ + "state", + "severity", + "frequency", + "detector", + "scope", + "actionGroups" + ], + "description": "The alert rule properties." + }, + "AlertRulePatchProperties": { + "properties": { + "description": { + "description": "The alert rule description.", + "type": "string" + }, + "state": { + "description": "The alert rule state.", + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "AlertRuleState", + "modelAsString": true + } + }, + "severity": { + "description": "The alert rule severity.", + "type": "string", + "enum": [ + "Sev0", + "Sev1", + "Sev2", + "Sev3", + "Sev4" + ], + "x-ms-enum": { + "name": "Severity", + "modelAsString": true + } + }, + "frequency": { + "description": "The alert rule frequency in ISO8601 format. The time granularity must be in minutes and minimum value is 5 minutes.", + "type": "string", + "format": "duration" + }, + "actionGroups": { + "description": "The alert rule actions.", + "$ref": "#/definitions/ActionGroupsInformation" + }, + "throttling": { + "description": "The alert rule throttling information.", + "$ref": "#/definitions/ThrottlingInformation" + } + }, + "description": "The alert rule properties." + }, + "DetectorParameterDefinition": { + "type": "object", + "description": "The detector parameter definition.", + "properties": { + "name": { + "description": "The detector parameter name.", + "type": "string" + }, + "displayName": { + "description": "The detector parameter display name.", + "type": "string" + }, + "description": { + "description": "The detector parameter description.", + "type": "string" + }, + "type": { + "description": "The detector parameter type.", + "type": "string", + "enum": [ + "String", + "Integer", + "Double", + "Boolean", + "DateTime" + ], + "x-ms-enum": { + "name": "DetectorParameterType", + "values": [ + { + "value": "String", + "description": "Defines a string parameter." + }, + { + "value": "Integer", + "description": "Defines an integer parameter." + }, + { + "value": "Double", + "description": "Defines a double parameter." + }, + { + "value": "Boolean", + "description": "Defines a boolean parameter." + }, + { + "value": "DateTime", + "description": "Defines a DateTime parameter." + } + ], + "modelAsString": true + } + }, + "isMandatory": { + "description": "A value indicating whether this detector parameter is mandatory.", + "type": "boolean" + } + } + } + }, + "parameters": { + "subscriptionId": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The Azure subscription Id.", + "minLength": 1 + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group.", + "x-ms-parameter-location": "method" + }, + "AlertRuleNameParameter": { + "name": "alertRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the alert rule.", + "x-ms-parameter-location": "method" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client Api Version." + }, + "ExpandDetectorParameter": { + "name": "expandDetector", + "in": "query", + "type": "boolean", + "description": "Indicates if Smart Detector should be expanded.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/stable/2021-04-01/examples/SmartDetectorAlertRule_CreateOrUpdate.json b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/stable/2021-04-01/examples/SmartDetectorAlertRule_CreateOrUpdate.json new file mode 100644 index 000000000000..8eeb0cbc7eb1 --- /dev/null +++ b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/stable/2021-04-01/examples/SmartDetectorAlertRule_CreateOrUpdate.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "subscriptionId": "b368ca2f-e298-46b7-b0ab-012281956afa", + "resourceGroupName": "MyAlertRules", + "alertRuleName": "MyAlertRule", + "api-version": "2021-04-01", + "parameters": { + "properties": { + "description": "Sample smart detector alert rule description", + "state": "Enabled", + "severity": "Sev3", + "frequency": "PT5M", + "detector": { + "id": "VMMemoryLeak" + }, + "scope": [ + "/subscriptions/b368ca2f-e298-46b7-b0ab-012281956afa/resourceGroups/MyVms/providers/Microsoft.Compute/virtualMachines/vm1" + ], + "actionGroups": { + "customEmailSubject": "My custom email subject", + "customWebhookPayload": "{\"AlertRuleName\":\"#alertrulename\"}", + "groupIds": [ + "/subscriptions/b368ca2f-e298-46b7-b0ab-012281956afa/resourcegroups/actionGroups/providers/microsoft.insights/actiongroups/MyActionGroup" + ] + }, + "throttling": { + "duration": "PT20M" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/b368ca2f-e298-46b7-b0ab-012281956afa/resourceGroups/MyAlertRules/providers/microsoft.alertsManagement/smartDetectorAlertRules/MyAlertRule", + "type": "Microsoft.AlertsManagement/smartDetectorAlertRules", + "name": "MyAlertRule", + "location": "global", + "tags": {}, + "properties": { + "description": "Sample smart detector alert rule description", + "state": "Enabled", + "severity": "Sev3", + "frequency": "PT5M", + "detector": { + "id": "VMMemoryLeak" + }, + "scope": [ + "/subscriptions/b368ca2f-e298-46b7-b0ab-012281956afa/resourceGroups/MyVms/providers/Microsoft.Compute/virtualMachines/vm1" + ], + "actionGroups": [ + { + "actionGroupId": "/subscriptions/b368ca2f-e298-46b7-b0ab-012281956afa/resourcegroups/actionGroups/providers/microsoft.insights/actiongroups/MyActionGroup" + } + ], + "throttling": { + "duration": "PT20M" + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/b368ca2f-e298-46b7-b0ab-012281956afa/resourceGroups/MyAlertRules/providers/microsoft.alertsManagement/smartDetectorAlertRules/MyAlertRule", + "type": "Microsoft.AlertsManagement/smartDetectorAlertRules", + "name": "MyAlertRule", + "location": "global", + "tags": {}, + "properties": { + "description": "Sample smart detector alert rule description", + "state": "Enabled", + "severity": "Sev3", + "frequency": "PT5M", + "detector": { + "id": "VMMemoryLeak" + }, + "scope": [ + "/subscriptions/b368ca2f-e298-46b7-b0ab-012281956afa/resourceGroups/MyVms/providers/Microsoft.Compute/virtualMachines/vm1" + ], + "actionGroups": [ + { + "actionGroupId": "/subscriptions/b368ca2f-e298-46b7-b0ab-012281956afa/resourcegroups/actionGroups/providers/microsoft.insights/actiongroups/MyActionGroup" + } + ], + "throttling": { + "duration": "PT20M" + } + } + } + } + } +} diff --git a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/stable/2021-04-01/examples/SmartDetectorAlertRule_Delete.json b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/stable/2021-04-01/examples/SmartDetectorAlertRule_Delete.json new file mode 100644 index 000000000000..e643abd765c2 --- /dev/null +++ b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/stable/2021-04-01/examples/SmartDetectorAlertRule_Delete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "b368ca2f-e298-46b7-b0ab-012281956afa", + "resourceGroupName": "MyAlertRules", + "alertRuleName": "MyAlertRule", + "api-version": "2021-04-01" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/stable/2021-04-01/examples/SmartDetectorAlertRule_Get.json b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/stable/2021-04-01/examples/SmartDetectorAlertRule_Get.json new file mode 100644 index 000000000000..ce73878725a3 --- /dev/null +++ b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/stable/2021-04-01/examples/SmartDetectorAlertRule_Get.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "b368ca2f-e298-46b7-b0ab-012281956afa", + "resourceGroupName": "MyAlertRules", + "alertRuleName": "MyAlertRule", + "api-version": "2021-04-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/b368ca2f-e298-46b7-b0ab-012281956afa/resourceGroups/MyAlertRules/providers/microsoft.alertsManagement/smartDetectorAlertRules/MyAlertRule", + "type": "Microsoft.AlertsManagement/smartDetectorAlertRules", + "name": "MyAlertRule", + "location": "global", + "tags": {}, + "properties": { + "description": "Sample smart detector alert rule description", + "state": "Enabled", + "severity": "Sev3", + "frequency": "PT5M", + "detector": { + "id": "VMMemoryLeak", + "name": "Memory Leak in VM", + "description": "Alerts on a consistent increase in memory consumption over a long period of time", + "supportedCadences": [ + 1 + ], + "supportedResourceTypes": [ + "VirtualMachine" + ], + "parameterDefinitions": [] + }, + "scope": [ + "/subscriptions/b368ca2f-e298-46b7-b0ab-012281956afa/resourceGroups/MyVms/providers/Microsoft.Compute/virtualMachines/vm1" + ], + "actionGroups": [ + { + "actionGroupId": "/subscriptions/b368ca2f-e298-46b7-b0ab-012281956afa/resourcegroups/MyActionGroups/providers/microsoft.insights/actionGroups/MyActionGroup" + } + ], + "throttling": { + "duration": "PT20M" + } + } + } + } + } +} diff --git a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/stable/2021-04-01/examples/SmartDetectorAlertRule_List.json b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/stable/2021-04-01/examples/SmartDetectorAlertRule_List.json new file mode 100644 index 000000000000..44790632e009 --- /dev/null +++ b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/stable/2021-04-01/examples/SmartDetectorAlertRule_List.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "subscriptionId": "b368ca2f-e298-46b7-b0ab-012281956afa", + "resourceGroupName": "MyAlertRules", + "api-version": "2021-04-01" + }, + "responses": { + "200": { + "body": { + "nextLink": null, + "value": [ + { + "id": "/subscriptions/b368ca2f-e298-46b7-b0ab-012281956afa/resourceGroups/MyAlertRules/providers/microsoft.alertsManagement/smartDetectorAlertRules/MyAlertRule", + "type": "Microsoft.AlertsManagement/smartDetectorAlertRules", + "name": "MyAlertRule", + "location": "global", + "tags": {}, + "properties": { + "description": "Sample smart detector alert rule description", + "state": "Enabled", + "severity": "Sev3", + "frequency": "PT5M", + "detector": { + "id": "VMMemoryLeak" + }, + "scope": [ + "/subscriptions/b368ca2f-e298-46b7-b0ab-012281956afa/resourceGroups/vms/providers/Microsoft.Compute/virtualMachines/vm1" + ], + "actionGroups": [ + { + "actionGroupId": "/subscriptions/b368ca2f-e298-46b7-b0ab-012281956afa/resourcegroups/MyActionGroups/providers/microsoft.insights/actionGroups/MyActionGroup" + } + ], + "throttling": { + "duration": "PT20M" + } + } + }, + { + "id": "/subscriptions/b368ca2f-e298-46b7-b0ab-012281956afa/resourceGroups/MyAlertRules/providers/microsoft.alertsManagement/smartDetectorAlertRules/MySecondAlertRule", + "type": "Microsoft.AlertsManagement/smartDetectorAlertRules", + "name": "MySecondAlertRule", + "location": "global", + "tags": {}, + "properties": { + "description": "Sample smart detector alert rule description", + "state": "Disabled", + "severity": "Sev2", + "frequency": "PT15M", + "detector": { + "id": "VMMemoryLeak" + }, + "scope": [ + "/subscriptions/b368ca2f-e298-46b7-b0ab-012281956afa/resourceGroups/vms/providers/Microsoft.Compute/virtualMachines/vm2" + ], + "actionGroups": [ + { + "actionGroupId": "/subscriptions/b368ca2f-e298-46b7-b0ab-012281956afa/resourcegroups/MyActionGroups/providers/microsoft.insights/actionGroups/MyActionGroup" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/stable/2021-04-01/examples/SmartDetectorAlertRule_ListByResourceGroup.json b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/stable/2021-04-01/examples/SmartDetectorAlertRule_ListByResourceGroup.json new file mode 100644 index 000000000000..ab7783902c79 --- /dev/null +++ b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/stable/2021-04-01/examples/SmartDetectorAlertRule_ListByResourceGroup.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "subscriptionId": "b368ca2f-e298-46b7-b0ab-012281956afa", + "resourceGroupName": "MyAlertRules", + "api-version": "2021-04-01" + }, + "responses": { + "200": { + "body": { + "nextLink": null, + "value": [ + { + "id": "/subscriptions/b368ca2f-e298-46b7-b0ab-012281956afa/resourceGroups/MyAlertRules/providers/microsoft.alertsManagement/smartDetectorAlertRules/MyAlertRule", + "type": "Microsoft.AlertsManagement/smartDetectorAlertRules", + "name": "MyAlertRule", + "location": "global", + "tags": {}, + "properties": { + "description": "Sample smart detector alert rule description", + "state": "Enabled", + "severity": "Sev3", + "frequency": "PT5M", + "detector": { + "id": "VMMemoryLeak" + }, + "scope": [ + "/subscriptions/b324c52b-4073-4807-93af-e07d289c093e/resourceGroups/test/providers/Microsoft.Storage/storageAccounts/larryshoebox/blobServices/default" + ], + "actionGroups": [ + { + "actionGroupId": "/subscriptions/b368ca2f-e298-46b7-b0ab-012281956afa/resourcegroups/MyActionGroups/providers/microsoft.insights/actionGroups/MyActionGroup" + } + ], + "throttling": { + "duration": "PT20M" + } + } + }, + { + "id": "/subscriptions/b368ca2f-e298-46b7-b0ab-012281956afa/resourceGroups/MyAlertRules/providers/microsoft.alertsManagement/smartDetectorAlertRules/MySecondAlertRule", + "type": "Microsoft.AlertsManagement/smartDetectorAlertRules", + "name": "MySecondAlertRule", + "location": "global", + "tags": {}, + "properties": { + "description": "Sample smart detector alert rule description", + "state": "Disabled", + "severity": "Sev2", + "frequency": "PT15M", + "detector": { + "id": "VMMemoryLeak" + }, + "scope": [ + "/subscriptions/b324c52b-4073-4807-93af-e07d289c093e/resourceGroups/test/providers/Microsoft.Storage/storageAccounts/larryshoebox/blobServices/default" + ], + "actionGroups": [ + { + "actionGroupId": "/subscriptions/b368ca2f-e298-46b7-b0ab-012281956afa/resourcegroups/MyActionGroups/providers/microsoft.insights/actionGroups/MyActionGroup" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/stable/2021-04-01/examples/SmartDetectorAlertRule_Patch.json b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/stable/2021-04-01/examples/SmartDetectorAlertRule_Patch.json new file mode 100644 index 000000000000..9ece49807712 --- /dev/null +++ b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/stable/2021-04-01/examples/SmartDetectorAlertRule_Patch.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "b368ca2f-e298-46b7-b0ab-012281956afa", + "resourceGroupName": "MyAlertRules", + "alertRuleName": "MyAlertRule", + "api-version": "2021-04-01", + "parameters": { + "tags": { + "newKey": "newVal" + }, + "properties": { + "description": "New description for patching", + "frequency": "PT1M" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/b368ca2f-e298-46b7-b0ab-012281956afa/resourceGroups/MyAlertRules/providers/microsoft.alertsManagement/smartDetectorAlertRules/MyAlertRule", + "type": "Microsoft.AlertsManagement/smartDetectorAlertRules", + "name": "MyAlertRule", + "location": "global", + "tags": { + "newKey": "newVal" + }, + "properties": { + "description": "New description for patching", + "state": "Enabled", + "severity": "Sev3", + "frequency": "PT1M", + "detector": { + "id": "VMMemoryLeak" + }, + "scope": [ + "/subscriptions/b368ca2f-e298-46b7-b0ab-012281956afa/resourceGroups/MyVms/providers/Microsoft.Compute/virtualMachines/vm1" + ], + "actionGroups": [ + { + "actionGroupId": "/subscriptions/b368ca2f-e298-46b7-b0ab-012281956afa/resourcegroups/actionGroups/providers/microsoft.insights/actiongroups/MyActionGroup" + } + ], + "throttling": { + "duration": "PT20M" + } + } + } + } + } +} diff --git a/specification/alertsmanagement/resource-manager/readme.azureresourceschema.md b/specification/alertsmanagement/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 7ce77518edb5..000000000000 --- a/specification/alertsmanagement/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,101 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-alertsmanagement-2021-01-01-preview - - tag: schema-alertsmanagement-2020-08-04-preview - - tag: schema-alertsmanagement-2019-06-01 - - tag: schema-alertsmanagement-2019-05-05-preview - - tag: schema-alertsmanagement-2019-03-01 - - tag: schema-alertsmanagement-2018-05-05-preview - - tag: schema-alertsmanagement-2018-05-05 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-alertsmanagement-2021-01-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-alertsmanagement-2021-01-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.AlertsManagement/preview/2021-01-01-preview/AlertsManagement.json - - Microsoft.AlertsManagement/preview/2021-01-01-preview/MigrateFromSmartDetections.json - -``` - -### Tag: schema-alertsmanagement-2020-08-04-preview and azureresourceschema - -``` yaml $(tag) == 'schema-alertsmanagement-2020-08-04-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.AlertsManagement/preview/2020-08-04-preview/AlertsManagement.json - - Microsoft.AlertsManagement/preview/2020-08-04-preview/ResourceHealthAlertRules.json - -``` - -### Tag: schema-alertsmanagement-2019-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-alertsmanagement-2019-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.AlertsManagement/stable/2019-06-01/SmartDetectorAlertRulesApi.json - -``` - -### Tag: schema-alertsmanagement-2019-05-05-preview and azureresourceschema - -``` yaml $(tag) == 'schema-alertsmanagement-2019-05-05-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.AlertsManagement/preview/2019-05-05-preview/ActionRules.json - - Microsoft.AlertsManagement/preview/2019-05-05-preview/AlertsManagement.json - - Microsoft.AlertsManagement/preview/2019-05-05-preview/SmartGroups.json - -``` - -### Tag: schema-alertsmanagement-2019-03-01 and azureresourceschema - -``` yaml $(tag) == 'schema-alertsmanagement-2019-03-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.AlertsManagement/stable/2019-03-01/AlertsManagement.json - - Microsoft.AlertsManagement/stable/2019-03-01/SmartDetectorAlertRulesApi.json - -``` - -### Tag: schema-alertsmanagement-2018-05-05-preview and azureresourceschema - -``` yaml $(tag) == 'schema-alertsmanagement-2018-05-05-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.AlertsManagement/preview/2018-05-05-preview/AlertsManagement.json - -``` - -### Tag: schema-alertsmanagement-2018-05-05 and azureresourceschema - -``` yaml $(tag) == 'schema-alertsmanagement-2018-05-05' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.AlertsManagement/stable/2018-05-05/AlertsManagement.json - -``` diff --git a/specification/alertsmanagement/resource-manager/readme.go.md b/specification/alertsmanagement/resource-manager/readme.go.md index 5fa1c3add76b..25442dc4e52b 100644 --- a/specification/alertsmanagement/resource-manager/readme.go.md +++ b/specification/alertsmanagement/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: alertsmanagement clear-output-folder: true ``` diff --git a/specification/alertsmanagement/resource-manager/readme.md b/specification/alertsmanagement/resource-manager/readme.md index 61382bb09f41..fff705d11ce5 100644 --- a/specification/alertsmanagement/resource-manager/readme.md +++ b/specification/alertsmanagement/resource-manager/readme.md @@ -45,6 +45,16 @@ tag: package-2019-06-preview ``` + +### Tag: package-2021-04-only + +These settings apply only when `--tag=package-2021-04-only` is specified on the command line. + +```yaml $(tag) == 'package-2021-04-only' +input-file: + - Microsoft.AlertsManagement/stable/2019-03-01/AlertsManagement.json + - Microsoft.AlertsManagement/stable/2021-04-01/SmartDetectorAlertRulesApi.json +``` ### Tag: package-preview-2021-01 These settings apply only when `--tag=package-preview-2021-01` is specified on the command line. @@ -143,8 +153,6 @@ swagger-to-sdk: - repo: azure-sdk-for-go - repo: azure-sdk-for-trenton - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js alertsmanagement/resource-manager ``` ## C# @@ -175,7 +183,5 @@ See configuration in [readme.go.md](./readme.go.md) See configuration in [readme.java.md](./readme.java.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/alertsmanagement/resource-manager/readme.terraform.md b/specification/alertsmanagement/resource-manager/readme.terraform.md index c5379b2d06c2..7dc2171003dc 100644 --- a/specification/alertsmanagement/resource-manager/readme.terraform.md +++ b/specification/alertsmanagement/resource-manager/readme.terraform.md @@ -51,3 +51,22 @@ terraform: clear-output-folder: true output-folder: $(terraform-output-folder)/alertsmanagement ``` +``` yaml $(tag) == 'package-2019-06-preview' && $(terraform) +gosdk-folder: services/preview/alertsmanagement/mgmt/2019-06-01-preview/alertsmanagement +``` + +``` yaml $(tag) == 'package-preview-2019-05' && $(terraform) +gosdk-folder: services/preview/alertsmanagement/mgmt/2019-05-05-preview/alertsmanagement +``` + +``` yaml $(tag) == 'package-2019-03' && $(terraform) +gosdk-folder: services/alertsmanagement/mgmt/2019-03-01/alertsmanagement +``` + +``` yaml $(tag) == 'package-2018-05' && $(terraform) +gosdk-folder: services/alertsmanagement/mgmt/2018-05-05/alertsmanagement +``` + +``` yaml $(tag) == 'package-2018-05-preview' && $(terraform) +gosdk-folder: services/preview/alertsmanagement/mgmt/2018-05-05-preview/alertsmanagement +``` diff --git a/specification/analysisservices/resource-manager/readme.azureresourceschema.md b/specification/analysisservices/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index d89301b2b8b3..000000000000 --- a/specification/analysisservices/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,48 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-analysisservices-2017-08-01 - - tag: schema-analysisservices-2017-07-14 - - tag: schema-analysisservices-2016-05-16 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-analysisservices-2017-08-01 and azureresourceschema - -``` yaml $(tag) == 'schema-analysisservices-2017-08-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.AnalysisServices/stable/2017-08-01/analysisservices.json - -``` - -### Tag: schema-analysisservices-2017-07-14 and azureresourceschema - -``` yaml $(tag) == 'schema-analysisservices-2017-07-14' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.AnalysisServices/stable/2017-07-14/analysisservices.json - -``` - -### Tag: schema-analysisservices-2016-05-16 and azureresourceschema - -``` yaml $(tag) == 'schema-analysisservices-2016-05-16' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.AnalysisServices/stable/2016-05-16/analysisservices.json - -``` diff --git a/specification/analysisservices/resource-manager/readme.go.md b/specification/analysisservices/resource-manager/readme.go.md index 3fda4eff5122..02973b920b9e 100644 --- a/specification/analysisservices/resource-manager/readme.go.md +++ b/specification/analysisservices/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: analysisservices clear-output-folder: true ``` diff --git a/specification/analysisservices/resource-manager/readme.md b/specification/analysisservices/resource-manager/readme.md index 1e60c46b1f69..37c2cb8c62f6 100644 --- a/specification/analysisservices/resource-manager/readme.md +++ b/specification/analysisservices/resource-manager/readme.md @@ -85,8 +85,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_analysis_services'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js analysisservices/resource-manager ``` @@ -186,7 +184,5 @@ generate-interface: true -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2020-06-01-preview/apimdeployment.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2020-06-01-preview/apimdeployment.json index ad9da03f1dc6..abe72c31af51 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2020-06-01-preview/apimdeployment.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2020-06-01-preview/apimdeployment.json @@ -1521,7 +1521,7 @@ "properties": { "domainOwnershipIdentifier": { "type": "string", - "description": "The domain ownership identifer value.", + "description": "The domain ownership identifier value.", "readOnly": true } }, diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2021-01-01-preview/apimcontenttypes.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2021-01-01-preview/apimcontenttypes.json index 70b1f5dbff50..f566930f5e1f 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2021-01-01-preview/apimcontenttypes.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2021-01-01-preview/apimcontenttypes.json @@ -40,7 +40,7 @@ "ContentType" ], "operationId": "ContentType_ListByService", - "description": "Returns list of content types", + "description": "Lists the developer portal's content types. Content types describe content items' properties, validation rules, and constraints.", "x-ms-examples": { "ApiManagementListContentTypes": { "$ref": "./examples/ApiManagementListContentTypes.json" @@ -62,7 +62,7 @@ ], "responses": { "200": { - "description": "Lists a collection of content type entities.", + "description": "Returns a collection of the Content Type entities.", "schema": { "$ref": "./definitions.json#/definitions/ContentTypeCollection" } @@ -85,7 +85,7 @@ "ContentType" ], "operationId": "ContentType_Get", - "description": "Gets API Management content type details.", + "description": "Gets the details of the developer portal's content type. Content types describe content items' properties, validation rules, and constraints.", "x-ms-examples": { "ApiManagementGetContentType": { "$ref": "./examples/ApiManagementGetContentType.json" @@ -110,7 +110,7 @@ ], "responses": { "200": { - "description": "Get the details of the content type.", + "description": "Returns the details of the specified content type.", "schema": { "$ref": "./definitions.json#/definitions/ContentTypeContract" }, @@ -134,7 +134,7 @@ "ContentType" ], "operationId": "ContentType_CreateOrUpdate", - "description": "Creates or updates an Content Type.", + "description": "Creates or updates the developer portal's content type. Content types describe content items' properties, validation rules, and constraints. Custom content types' identifiers need to start with the `c-` prefix. Built-in content types can't be modified.", "x-ms-examples": { "ApiManagementCreateContentType": { "$ref": "./examples/ApiManagementCreateContentType.json" @@ -162,7 +162,7 @@ ], "responses": { "201": { - "description": "Content type was successfully created.", + "description": "The content type was successfully created.", "headers": { "ETag": { "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", @@ -198,7 +198,7 @@ "ContentType" ], "operationId": "ContentType_Delete", - "description": "Removes specified content type.", + "description": "Removes the specified developer portal's content type. Content types describe content items' properties, validation rules, and constraints. Built-in content types (with identifiers starting with the `c-` prefix) can't be removed.", "x-ms-examples": { "ApiManagementDeleteContentType": { "$ref": "./examples/ApiManagementDeleteContentType.json" @@ -246,7 +246,7 @@ "ContentTypeContentItem" ], "operationId": "ContentItem_ListByService", - "description": "Returns list of content items", + "description": "Lists developer portal's content items specified by the provided content type.", "x-ms-examples": { "ApiManagementListContentTypeContentItems": { "$ref": "./examples/ApiManagementListContentTypeContentItems.json" @@ -271,7 +271,7 @@ ], "responses": { "200": { - "description": "Lists a collection of Content Type entities.", + "description": "Returns a collection of Content Type entities.", "schema": { "$ref": "./definitions.json#/definitions/ContentItemCollection" } @@ -294,7 +294,7 @@ "ContentTypeContentItem" ], "operationId": "ContentItem_GetEntityTag", - "description": "Returns content item metadata", + "description": "Returns the entity state (ETag) version of the developer portal's content item specified by its identifier.", "x-ms-examples": { "ApiManagementHeadContentTypeContentItem": { "$ref": "./examples/ApiManagementHeadContentTypeContentItem.json" @@ -343,7 +343,7 @@ "ContentTypeContentItem" ], "operationId": "ContentItem_Get", - "description": "Returns content item details", + "description": "Returns the developer portal's content item specified by its identifier.", "x-ms-examples": { "ApiManagementGetContentTypeContentItem": { "$ref": "./examples/ApiManagementGetContentTypeContentItem.json" @@ -371,7 +371,7 @@ ], "responses": { "200": { - "description": "Get the details of the content item.", + "description": "Returns the content item.", "schema": { "$ref": "./definitions.json#/definitions/ContentItemContract" }, @@ -395,7 +395,7 @@ "ContentTypeContentItem" ], "operationId": "ContentItem_CreateOrUpdate", - "description": "Creates new content item", + "description": "Creates a new developer portal's content item specified by the provided content type.", "x-ms-examples": { "ApiManagementCreateContentTypeContentItem": { "$ref": "./examples/ApiManagementCreateContentTypeContentItem.json" @@ -426,7 +426,7 @@ ], "responses": { "201": { - "description": "Content item was successfully created.", + "description": "The content item was successfully created.", "headers": { "ETag": { "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", @@ -462,7 +462,7 @@ "ContentTypeContentItem" ], "operationId": "ContentItem_Delete", - "description": "Removes specified content item.", + "description": "Removes the specified developer portal's content item.", "x-ms-examples": { "ApiManagementDeleteContentTypeContentItem": { "$ref": "./examples/ApiManagementDeleteContentTypeContentItem.json" diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2021-01-01-preview/apimportalrevisions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2021-01-01-preview/apimportalrevisions.json index 6a1d3ea6cfba..c70f56bc6af2 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2021-01-01-preview/apimportalrevisions.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2021-01-01-preview/apimportalrevisions.json @@ -40,7 +40,7 @@ "PortalRevision" ], "operationId": "PortalRevision_ListByService", - "description": "Lists a collection of developer portal revision entities.", + "description": "Lists developer portal's revisions.", "x-ms-examples": { "ApiManagementListPortalRevisions": { "$ref": "./examples/ApiManagementListPortalRevisions.json" @@ -75,7 +75,7 @@ ], "responses": { "200": { - "description": "Lists a collection of developer portal revision entities.", + "description": "Lists portal's revisions.", "schema": { "$ref": "./definitions.json#/definitions/PortalRevisionCollection" } @@ -98,7 +98,7 @@ "PortalRevision" ], "operationId": "PortalRevision_GetEntityTag", - "description": "Gets developer portal revision specified by its identifier.", + "description": "Gets the developer portal revision specified by its identifier.", "x-ms-examples": { "ApiManagementHeadPortalRevision": { "$ref": "./examples/ApiManagementHeadPortalRevision.json" @@ -123,7 +123,7 @@ ], "responses": { "200": { - "description": "Specified Portal revision entity exists and current entity state version is present in the ETag header.", + "description": "The specified portal revision 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.", @@ -144,7 +144,7 @@ "PortalRevision" ], "operationId": "PortalRevision_Get", - "description": "Gets developer portal revision specified by its identifier.", + "description": "Gets the developer portal's revision specified by its identifier.", "x-ms-examples": { "ApiManagementGetPortalRevision": { "$ref": "./examples/ApiManagementGetPortalRevision.json" @@ -169,7 +169,7 @@ ], "responses": { "200": { - "description": "Gets the specified developer portal revision entity.", + "description": "Gets the specified portal's revision.", "schema": { "$ref": "./definitions.json#/definitions/PortalRevisionContract" }, @@ -193,7 +193,7 @@ "PortalRevision" ], "operationId": "PortalRevision_CreateOrUpdate", - "description": "Creates a new developer portal revision.", + "description": "Creates a new developer portal's revision by running the portal's publishing. The `isCurrent` property indicates if the revision is publicly accessible.", "x-ms-examples": { "ApiManagementCreatePortalRevision": { "$ref": "./examples/ApiManagementCreatePortalRevision.json" @@ -226,10 +226,10 @@ ], "responses": { "202": { - "description": "Request to create developer portal revision was accepted." + "description": "Request to create a developer portal revision was accepted." }, "201": { - "description": "Developer portal revision was successfully created.", + "description": "The developer portal revision was successfully created.", "schema": { "$ref": "./definitions.json#/definitions/PortalRevisionContract" }, diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2021-01-01-preview/definitions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2021-01-01-preview/definitions.json index 216fe4a2983a..d6d917f5d309 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2021-01-01-preview/definitions.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2021-01-01-preview/definitions.json @@ -231,14 +231,14 @@ "readOnly": true } }, - "description": "Paged Api list representation." + "description": "Paged API list representation." }, "ApiContract": { "properties": { "properties": { "x-ms-client-flatten": true, "$ref": "#/definitions/ApiContractProperties", - "description": "Api entity contract properties." + "description": "API entity contract properties." } }, "allOf": [ @@ -246,7 +246,7 @@ "$ref": "./apimanagement.json#/definitions/Resource" } ], - "description": "Api details." + "description": "API details." }, "ApiContractProperties": { "properties": { @@ -302,14 +302,14 @@ "required": [ "path" ], - "description": "Api Entity Properties" + "description": "API Entity Properties" }, "ApiCreateOrUpdateParameter": { "properties": { "properties": { "x-ms-client-flatten": true, "$ref": "#/definitions/ApiCreateOrUpdateProperties", - "description": "Api entity create of update properties." + "description": "API entity create of update properties." } }, "description": "API Create or Update Parameters." @@ -398,7 +398,7 @@ }, "apiType": { "type": "string", - "description": "Type of Api to create. \n * `http` creates a REST API \n * `soap` creates a SOAP pass-through API \n * `websocket` creates websocket API.", + "description": "Type of API to create. \n * `http` creates a REST API \n * `soap` creates a SOAP pass-through API \n * `websocket` creates websocket API.", "enum": [ "http", "soap", @@ -433,7 +433,7 @@ "$ref": "#/definitions/ApiContractProperties" } ], - "description": "Api Create or Update Properties." + "description": "API Create or Update Properties." }, "ApiEntityBaseContract": { "properties": { @@ -465,13 +465,13 @@ }, "apiRevision": { "type": "string", - "description": "Describes the Revision of the Api. If no value is provided, default revision 1 is created", + "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", + "description": "Indicates the version identifier of the API if the API is versioned", "maxLength": 100 }, "isCurrent": { @@ -485,12 +485,12 @@ }, "apiRevisionDescription": { "type": "string", - "description": "Description of the Api Revision.", + "description": "Description of the API Revision.", "maxLength": 256 }, "apiVersionDescription": { "type": "string", - "description": "Description of the Api Version.", + "description": "Description of the API Version.", "maxLength": 256 }, "apiVersionSetId": { @@ -569,31 +569,31 @@ "values": [ { "value": "swagger-link-json", - "description": "The Api Definition is exported in OpenApi Specification 2.0 format to the Storage Blob.", + "description": "The API Definition is exported in OpenAPI Specification 2.0 format to the Storage Blob.", "name": "Swagger" }, { "value": "wsdl-link+xml", - "description": "The Api Definition is exported in WSDL Schema to Storage Blob. This is only supported for APIs of Type `soap`", + "description": "The API Definition is exported in WSDL Schema to Storage Blob. This is only supported for APIs of Type `soap`", "name": "Wsdl" }, { "value": "wadl-link-json", - "description": "Export the Api Definition in WADL Schema to Storage Blob.", + "description": "Export the API Definition in WADL Schema to Storage Blob.", "name": "Wadl" }, { "value": "openapi-link", - "description": "Export the Api Definition in OpenApi Specification 3.0 to Storage Blob.", + "description": "Export the API Definition in OpenAPI Specification 3.0 to Storage Blob.", "name": "OpenApi" } ] }, - "description": "Format in which the Api Details are exported to the Storage Blob with Sas Key valid for 5 minutes." + "description": "Format in which the API Details are exported to the Storage Blob with Sas Key valid for 5 minutes." }, "value": { "type": "object", - "description": "The object defining the schema of the exported Api Detail", + "description": "The object defining the schema of the exported API Detail", "properties": { "link": { "type": "string", @@ -688,7 +688,7 @@ "readOnly": true } }, - "description": "Paged Api Revision list representation." + "description": "Paged API Revision list representation." }, "ApiRevisionContract": { "properties": { @@ -886,14 +886,14 @@ "description": "Next page link if any." } }, - "description": "Paged Api Version Set list representation." + "description": "Paged API Version Set list representation." }, "ApiVersionSetContract": { "properties": { "properties": { "x-ms-client-flatten": true, "$ref": "#/definitions/ApiVersionSetContractProperties", - "description": "Api VersionSet contract properties." + "description": "API VersionSet contract properties." } }, "allOf": [ @@ -901,7 +901,7 @@ "$ref": "./apimanagement.json#/definitions/Resource" } ], - "description": "Api Version Set Contract details." + "description": "API Version Set Contract details." }, "ApiVersionSetContractDetails": { "description": "An API Version Set contains the common configuration for a set of API Versions relating ", @@ -1003,17 +1003,17 @@ "maxLength": 100 } }, - "description": "Api Version set base parameters" + "description": "API Version set base parameters" }, "ApiVersionSetUpdateParameters": { "properties": { "properties": { "x-ms-client-flatten": true, "$ref": "#/definitions/ApiVersionSetUpdateParametersProperties", - "description": "Parameters to update or create an Api Version Set Contract." + "description": "Parameters to update or create an API Version Set Contract." } }, - "description": "Parameters to update or create an Api Version Set Contract." + "description": "Parameters to update or create an API Version Set Contract." }, "ApiVersionSetUpdateParametersProperties": { "properties": { @@ -1434,7 +1434,7 @@ }, "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.", + "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 }, @@ -2258,7 +2258,7 @@ }, "isDefault": { "type": "boolean", - "description": "Whether the template is the default template provided by Api Management or has been edited.", + "description": "Whether the template is the default template provided by API Management or has been edited.", "readOnly": true }, "parameters": { @@ -3020,7 +3020,7 @@ "properties": { "secretIdentifier": { "type": "string", - "description": "Key vault secret identifier for fetching secret. Providing a versioned secret will prevent auto-refresh. This requires Api Management service to be configured with aka.ms/apimmsi" + "description": "Key vault secret identifier for fetching secret. Providing a versioned secret will prevent auto-refresh. This requires API Management service to be configured with aka.ms/apimmsi" }, "identityClientId": { "type": "string", @@ -3441,7 +3441,7 @@ "$ref": "./apimanagement.json#/definitions/Resource" } ], - "description": "Api Operation details." + "description": "API Operation details." }, "OperationContractProperties": { "properties": { @@ -3508,9 +3508,24 @@ "description": "Operation Policies" } }, - "description": "Api Operation Entity Base Contract details." + "description": "API Operation Entity Base Contract details." }, "OperationResultContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/OperationResultContractProperties", + "description": "Properties of the Operation Contract." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Long Running Git Operation Results." + }, + "OperationResultContractProperties": { "properties": { "id": { "type": "string", @@ -3589,17 +3604,17 @@ }, "apiName": { "type": "string", - "description": "Api Name.", + "description": "API Name.", "readOnly": true }, "apiRevision": { "type": "string", - "description": "Api Revision.", + "description": "API Revision.", "readOnly": true }, "apiVersion": { "type": "string", - "description": "Api Version.", + "description": "API Version.", "readOnly": true }, "description": { @@ -3632,7 +3647,7 @@ "description": "Properties of the API Operation entity that can be updated." } }, - "description": "Api Operation Update Contract details." + "description": "API Operation Update Contract details." }, "OperationUpdateContractProperties": { "properties": { @@ -4922,7 +4937,7 @@ "items": { "$ref": "#/definitions/SchemaContract" }, - "description": "Api Schema Contract value.", + "description": "API Schema Contract value.", "readOnly": true }, "count": { @@ -5441,7 +5456,7 @@ }, "api": { "$ref": "#/definitions/ApiTagResourceContractProperties", - "description": "Api associated with the tag." + "description": "API associated with the tag." }, "operation": { "$ref": "#/definitions/OperationTagResourceContractProperties", @@ -5473,6 +5488,16 @@ "description": "Contract defining the Tag property in the Tag Resource Contract" }, "TenantConfigurationSyncStateContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/TenantConfigurationSyncStateContractProperties", + "description": "Properties returned Tenant Configuration Sync State check." + } + }, + "description": "Result of Tenant Configuration Sync State." + }, + "TenantConfigurationSyncStateContractProperties": { "properties": { "branch": { "type": "string", @@ -5503,6 +5528,10 @@ "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" + }, + "lastOperationId": { + "type": "string", + "description": "Most recent tenant configuration operation identifier" } }, "description": "Tenant Configuration Synchronization State." @@ -6324,19 +6353,19 @@ "readOnly": true } }, - "description": "Paged deleted Api Management Services List Representation." + "description": "Paged deleted API Management Services List Representation." }, "DeletedServiceContract": { "properties": { "properties": { "x-ms-client-flatten": true, "$ref": "#/definitions/DeletedServiceContractProperties", - "description": "Deleted Api Management Service details." + "description": "Deleted API Management Service details." }, "location": { "readOnly": true, "type": "string", - "description": "Api Management Service Master Location." + "description": "API Management Service Master Location." } }, "allOf": [ @@ -6344,7 +6373,7 @@ "$ref": "./apimanagement.json#/definitions/Resource" } ], - "description": "Deleted Api Management Service information." + "description": "Deleted API Management Service information." }, "DeletedServiceContractProperties": { "properties": { @@ -6395,7 +6424,7 @@ "$ref": "./apimanagement.json#/definitions/Resource" } ], - "description": "Portal revisions contract details." + "description": "Portal Revision's contract details." }, "PortalRevisionContractProperties": { "properties": { @@ -6412,7 +6441,7 @@ }, "status": { "type": "string", - "description": "Portal revision publishing status", + "description": "Status of the portal's revision.", "enum": [ "pending", "publishing", @@ -6425,19 +6454,19 @@ "values": [ { "value": "pending", - "description": "Portal revision publishing is pending" + "description": "Portal's revision has been queued." }, { "value": "publishing", - "description": "Portal revision is publishing" + "description": "Portal's revision is being published." }, { "value": "completed", - "description": "Portal revision publishing completed" + "description": "Portal's revision publishing completed." }, { "value": "failed", - "description": "Portal revision publishing failed" + "description": "Portal's revision publishing failed." } ] }, @@ -6445,13 +6474,13 @@ }, "isCurrent": { "type": "boolean", - "description": "Indicates if the Portal Revision is public." + "description": "Indicates if the portal's revision is public." }, "createdDateTime": { "type": "string", "readOnly": true, "format": "date-time", - "description": "Portal revision creation date and time." + "description": "Portal's revision creation date and time." }, "updatedDateTime": { "type": "string", diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2021-01-01-preview/examples/ApiManagementTenantAccessSyncState.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2021-01-01-preview/examples/ApiManagementTenantAccessSyncState.json index 53bd156c5d93..6f8c9ac6c604 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2021-01-01-preview/examples/ApiManagementTenantAccessSyncState.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2021-01-01-preview/examples/ApiManagementTenantAccessSyncState.json @@ -9,13 +9,19 @@ "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" + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tenant/configuration/syncState", + "type": "Microsoft.ApiManagement/service/tenant/syncState", + "name": "syncState", + "properties": { + "branch": "master", + "commitId": "de891c2342c7058dde45e5e624eae7e558c94683", + "isExport": true, + "isSynced": true, + "isGitEnabled": true, + "syncDate": "2021-04-13T01:15:53.9824995Z", + "configurationChangeDate": "2021-04-13T00:11:43.862781Z", + "lastOperationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tenant/configuration/operationResults/6074f0bd093a9d0dac3d7347" + } } } } diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2021-01-01-preview/examples/ApiManagementTenantConfigurationDeploy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2021-01-01-preview/examples/ApiManagementTenantConfigurationDeploy.json index bd2f272fc167..5b24da95aed7 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2021-01-01-preview/examples/ApiManagementTenantConfigurationDeploy.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2021-01-01-preview/examples/ApiManagementTenantConfigurationDeploy.json @@ -19,13 +19,17 @@ }, "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'" + "id": "6074e652093a9d0dac3d733c", + "type": "Microsoft.ApiManagement/service/tenant/operationResults", + "name": "6074e652093a9d0dac3d733c", + "properties": { + "status": "Failed", + "started": "2017-11-26T17:06:54.303Z", + "updated": "2017-11-26T17:07:21.777Z", + "error": { + "code": "ValidationError", + "message": "File not found: 'api-management/configuration.json'" + } } } } diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2021-01-01-preview/examples/ApiManagementTenantConfigurationSave.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2021-01-01-preview/examples/ApiManagementTenantConfigurationSave.json index 6c83c545ef74..e4e3a73dcfa1 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2021-01-01-preview/examples/ApiManagementTenantConfigurationSave.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2021-01-01-preview/examples/ApiManagementTenantConfigurationSave.json @@ -19,13 +19,16 @@ }, "200": { "body": { - "id": "5cae98acb597440f487b0d78", - "status": "Succeeded", - "started": "2019-04-11T01:30:20.883Z", - "updated": "2019-04-11T01:30:41.623Z", - "resultInfo": "The configuration was successfully saved to master as commit 709678560f72e689e469cf98ba9ba6d1b7736893.", - "error": null, - "actionLog": [] + "id": "6074e652093a9d0dac3d733c", + "type": "Microsoft.ApiManagement/service/tenant/operationResults", + "name": "6074e652093a9d0dac3d733c", + "properties": { + "status": "Succeeded", + "started": "2021-04-13T00:31:14.94Z", + "updated": "2021-04-13T00:31:27.59Z", + "resultInfo": "The configuration was successfully saved to master as commit c0ae274f6046912107bad734834cbf65918668b6.", + "actionLog": [] + } } } } diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2021-01-01-preview/examples/ApiManagementTenantConfigurationValidate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2021-01-01-preview/examples/ApiManagementTenantConfigurationValidate.json index 267a94abd4b5..ba05071933a3 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2021-01-01-preview/examples/ApiManagementTenantConfigurationValidate.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2021-01-01-preview/examples/ApiManagementTenantConfigurationValidate.json @@ -19,153 +19,16 @@ }, "200": { "body": { - "id": "5a1af64e2a6d2e0b688d751e", - "status": "Succeeded", - "started": "2019-04-11T01:30:51.767Z", - "updated": "2019-04-11T01:30:57.653Z", - "resultInfo": "Validation is successfull", - "actionLog": [ - { - "objectType": "ApiSpecificationContract", - "action": "Updated", - "objectKey": "57914cb351f68a16889be190;rev=1" - }, - { - "objectType": "ProductSpecificationContract", - "action": "Updated", - "objectKey": "5768181ea40f7eb6c49f6ac7" - }, - { - "objectType": "ProductSpecificationContract", - "action": "Updated", - "objectKey": "576819c9a40f7e86289fb3e3" - }, - { - "objectType": "ProductSpecificationContract", - "action": "Updated", - "objectKey": "576819f1a40f7e86289fb6de" - }, - { - "objectType": "ProductSpecificationContract", - "action": "Updated", - "objectKey": "57681a67a40f7e72b4132522" - }, - { - "objectType": "ProductSpecificationContract", - "action": "Updated", - "objectKey": "57681a73a40f7e72b413281d" - }, - { - "objectType": "ProductSpecificationContract", - "action": "Updated", - "objectKey": "57681a7ea40f7e72b4132b18" - }, - { - "objectType": "ProductSpecificationContract", - "action": "Updated", - "objectKey": "57681b88a40f7ea0f017f099" - }, - { - "objectType": "ProductSpecificationContract", - "action": "Updated", - "objectKey": "57681b9fa40f7ea0f017f682" - }, - { - "objectType": "ProductSpecificationContract", - "action": "Updated", - "objectKey": "57681bb5a40f7ea0f017fc6b" - }, - { - "objectType": "ProductSpecificationContract", - "action": "Updated", - "objectKey": "57681bcaa40f7ea0f0180254" - }, - { - "objectType": "ProductSpecificationContract", - "action": "Updated", - "objectKey": "57681bdfa40f7ea0f018083d" - }, - { - "objectType": "ProductSpecificationContract", - "action": "Updated", - "objectKey": "57681bf5a40f7ea0f0180e26" - }, - { - "objectType": "ProductSpecificationContract", - "action": "Updated", - "objectKey": "57681c0ea40f7ea0f018140f" - }, - { - "objectType": "ProductSpecificationContract", - "action": "Updated", - "objectKey": "57681c26a40f7ea0f01819f8" - }, - { - "objectType": "ProductSpecificationContract", - "action": "Updated", - "objectKey": "57681c83a40f7e85f44db237" - }, - { - "objectType": "ProductSpecificationContract", - "action": "Updated", - "objectKey": "57681cb2a40f7e85f44dbcd0" - }, - { - "objectType": "ProductSpecificationContract", - "action": "Updated", - "objectKey": "57681ce3a40f7e85f44dc769" - }, - { - "objectType": "ProductSpecificationContract", - "action": "Updated", - "objectKey": "57681d1fa40f7e85f44dd202" - }, - { - "objectType": "ProductSpecificationContract", - "action": "Updated", - "objectKey": "57681d60a40f7e85f44ddc9b" - }, - { - "objectType": "ProductSpecificationContract", - "action": "Updated", - "objectKey": "57681db4a40f7e85f44de735" - }, - { - "objectType": "ProductSpecificationContract", - "action": "Updated", - "objectKey": "57681e11a40f7e85f44df1ce" - }, - { - "objectType": "ProductSpecificationContract", - "action": "Updated", - "objectKey": "57681e73a40f7e85f44dfc67" - }, - { - "objectType": "ProductSpecificationContract", - "action": "Updated", - "objectKey": "57681f06a40f7e74ec07785c" - }, - { - "objectType": "ProductSpecificationContract", - "action": "Updated", - "objectKey": "5768211fa40f7e74ec07a74a" - }, - { - "objectType": "ProductSpecificationContract", - "action": "Updated", - "objectKey": "576823cfa40f7e74ec07d63a" - }, - { - "objectType": "ProductSpecificationContract", - "action": "Updated", - "objectKey": "5600b57e7e8880006a060001" - }, - { - "objectType": "ProductSpecificationContract", - "action": "Updated", - "objectKey": "5600b57e7e8880006a060002" - } - ] + "id": "6074ec02093a9d0dac3d7345", + "type": "Microsoft.ApiManagement/service/tenant/operationResults", + "name": "6074ec02093a9d0dac3d7345", + "properties": { + "status": "Succeeded", + "started": "2021-04-13T00:55:30.62Z", + "updated": "2021-04-13T00:55:39.857Z", + "resultInfo": "Validation is successfull", + "actionLog": [] + } } } } diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2020-12-01/apimcontenttypes.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2020-12-01/apimcontenttypes.json index 7e48ce96c972..a56dc685e138 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2020-12-01/apimcontenttypes.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2020-12-01/apimcontenttypes.json @@ -40,7 +40,7 @@ "ContentType" ], "operationId": "ContentType_ListByService", - "description": "Returns list of content types", + "description": "Lists the developer portal's content types. Content types describe content items' properties, validation rules, and constraints.", "x-ms-examples": { "ApiManagementListContentTypes": { "$ref": "./examples/ApiManagementListContentTypes.json" @@ -62,7 +62,7 @@ ], "responses": { "200": { - "description": "Lists a collection of content type entities.", + "description": "Returns a collection of the Content Type entities.", "schema": { "$ref": "./definitions.json#/definitions/ContentTypeCollection" } @@ -85,7 +85,7 @@ "ContentType" ], "operationId": "ContentType_Get", - "description": "Gets API Management content type details.", + "description": "Gets the details of the developer portal's content type. Content types describe content items' properties, validation rules, and constraints.", "x-ms-examples": { "ApiManagementGetContentType": { "$ref": "./examples/ApiManagementGetContentType.json" @@ -110,7 +110,7 @@ ], "responses": { "200": { - "description": "Get the details of the content type.", + "description": "Returns the details of the specified content type.", "schema": { "$ref": "./definitions.json#/definitions/ContentTypeContract" }, @@ -134,7 +134,7 @@ "ContentType" ], "operationId": "ContentType_CreateOrUpdate", - "description": "Creates or updates an Content Type.", + "description": "Creates or updates the developer portal's content type. Content types describe content items' properties, validation rules, and constraints. Custom content types' identifiers need to start with the `c-` prefix. Built-in content types can't be modified.", "x-ms-examples": { "ApiManagementCreateContentType": { "$ref": "./examples/ApiManagementCreateContentType.json" @@ -162,7 +162,7 @@ ], "responses": { "201": { - "description": "Content type was successfully created.", + "description": "The content type was successfully created.", "headers": { "ETag": { "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", @@ -198,7 +198,7 @@ "ContentType" ], "operationId": "ContentType_Delete", - "description": "Removes specified content type.", + "description": "Removes the specified developer portal's content type. Content types describe content items' properties, validation rules, and constraints. Built-in content types (with identifiers starting with the `c-` prefix) can't be removed.", "x-ms-examples": { "ApiManagementDeleteContentType": { "$ref": "./examples/ApiManagementDeleteContentType.json" @@ -246,7 +246,7 @@ "ContentTypeContentItem" ], "operationId": "ContentItem_ListByService", - "description": "Returns list of content items", + "description": "Lists developer portal's content items specified by the provided content type.", "x-ms-examples": { "ApiManagementListContentTypeContentItems": { "$ref": "./examples/ApiManagementListContentTypeContentItems.json" @@ -271,7 +271,7 @@ ], "responses": { "200": { - "description": "Lists a collection of Content Type entities.", + "description": "Returns a collection of Content Type entities.", "schema": { "$ref": "./definitions.json#/definitions/ContentItemCollection" } @@ -294,7 +294,7 @@ "ContentTypeContentItem" ], "operationId": "ContentItem_GetEntityTag", - "description": "Returns content item metadata", + "description": "Returns the entity state (ETag) version of the developer portal's content item specified by its identifier.", "x-ms-examples": { "ApiManagementHeadContentTypeContentItem": { "$ref": "./examples/ApiManagementHeadContentTypeContentItem.json" @@ -343,7 +343,7 @@ "ContentTypeContentItem" ], "operationId": "ContentItem_Get", - "description": "Returns content item details", + "description": "Returns the developer portal's content item specified by its identifier.", "x-ms-examples": { "ApiManagementGetContentTypeContentItem": { "$ref": "./examples/ApiManagementGetContentTypeContentItem.json" @@ -371,7 +371,7 @@ ], "responses": { "200": { - "description": "Get the details of the content item.", + "description": "Returns the content item.", "schema": { "$ref": "./definitions.json#/definitions/ContentItemContract" }, @@ -395,7 +395,7 @@ "ContentTypeContentItem" ], "operationId": "ContentItem_CreateOrUpdate", - "description": "Creates new content item", + "description": "Creates a new developer portal's content item specified by the provided content type.", "x-ms-examples": { "ApiManagementCreateContentTypeContentItem": { "$ref": "./examples/ApiManagementCreateContentTypeContentItem.json" @@ -426,7 +426,7 @@ ], "responses": { "201": { - "description": "Content item was successfully created.", + "description": "The content item was successfully created.", "headers": { "ETag": { "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", @@ -462,7 +462,7 @@ "ContentTypeContentItem" ], "operationId": "ContentItem_Delete", - "description": "Removes specified content item.", + "description": "Removes the specified developer portal's content item.", "x-ms-examples": { "ApiManagementDeleteContentTypeContentItem": { "$ref": "./examples/ApiManagementDeleteContentTypeContentItem.json" diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2020-12-01/apimportalrevisions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2020-12-01/apimportalrevisions.json index d9fd24b5f925..613cb5a414ba 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2020-12-01/apimportalrevisions.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2020-12-01/apimportalrevisions.json @@ -40,7 +40,7 @@ "PortalRevision" ], "operationId": "PortalRevision_ListByService", - "description": "Lists a collection of developer portal revision entities.", + "description": "Lists developer portal's revisions.", "x-ms-examples": { "ApiManagementListPortalRevisions": { "$ref": "./examples/ApiManagementListPortalRevisions.json" @@ -75,7 +75,7 @@ ], "responses": { "200": { - "description": "Lists a collection of developer portal revision entities.", + "description": "Lists portal's revisions.", "schema": { "$ref": "./definitions.json#/definitions/PortalRevisionCollection" } @@ -98,7 +98,7 @@ "PortalRevision" ], "operationId": "PortalRevision_GetEntityTag", - "description": "Gets developer portal revision specified by its identifier.", + "description": "Gets the developer portal revision specified by its identifier.", "x-ms-examples": { "ApiManagementHeadPortalRevision": { "$ref": "./examples/ApiManagementHeadPortalRevision.json" @@ -123,7 +123,7 @@ ], "responses": { "200": { - "description": "Specified Portal revision entity exists and current entity state version is present in the ETag header.", + "description": "The specified portal revision 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.", @@ -144,7 +144,7 @@ "PortalRevision" ], "operationId": "PortalRevision_Get", - "description": "Gets developer portal revision specified by its identifier.", + "description": "Gets the developer portal's revision specified by its identifier.", "x-ms-examples": { "ApiManagementGetPortalRevision": { "$ref": "./examples/ApiManagementGetPortalRevision.json" @@ -169,7 +169,7 @@ ], "responses": { "200": { - "description": "Gets the specified developer portal revision entity.", + "description": "Gets the specified portal's revision.", "schema": { "$ref": "./definitions.json#/definitions/PortalRevisionContract" }, @@ -193,7 +193,7 @@ "PortalRevision" ], "operationId": "PortalRevision_CreateOrUpdate", - "description": "Creates a new developer portal revision.", + "description": "Creates a new developer portal's revision by running the portal's publishing. The `isCurrent` property indicates if the revision is publicly accessible.", "x-ms-examples": { "ApiManagementCreatePortalRevision": { "$ref": "./examples/ApiManagementCreatePortalRevision.json" @@ -226,10 +226,10 @@ ], "responses": { "202": { - "description": "Request to create developer portal revision was accepted." + "description": "Request to create a developer portal revision was accepted." }, "201": { - "description": "Developer portal revision was successfully created.", + "description": "The developer portal revision was successfully created.", "schema": { "$ref": "./definitions.json#/definitions/PortalRevisionContract" }, diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2020-12-01/definitions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2020-12-01/definitions.json index 98cdbc97d91b..283ef09f07d1 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2020-12-01/definitions.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2020-12-01/definitions.json @@ -3454,6 +3454,21 @@ "description": "Api Operation Entity Base Contract details." }, "OperationResultContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/OperationResultContractProperties", + "description": "Properties of the Operation Contract." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Long Running Git Operation Results." + }, + "OperationResultContractProperties": { "properties": { "id": { "type": "string", @@ -5408,6 +5423,16 @@ "description": "Contract defining the Tag property in the Tag Resource Contract" }, "TenantConfigurationSyncStateContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/TenantConfigurationSyncStateContractProperties", + "description": "Properties returned Tenant Configuration Sync State check." + } + }, + "description": "Result of Tenant Configuration Sync State." + }, + "TenantConfigurationSyncStateContractProperties": { "properties": { "branch": { "type": "string", @@ -5438,6 +5463,10 @@ "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" + }, + "lastOperationId": { + "type": "string", + "description": "Most recent tenant configuration operation identifier" } }, "description": "Tenant Configuration Synchronization State." diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2020-12-01/examples/ApiManagementTenantAccessSyncState.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2020-12-01/examples/ApiManagementTenantAccessSyncState.json index d3c3d0ce2f4b..6c9ca32cfe67 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2020-12-01/examples/ApiManagementTenantAccessSyncState.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2020-12-01/examples/ApiManagementTenantAccessSyncState.json @@ -9,13 +9,19 @@ "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" + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tenant/configuration/syncState", + "type": "Microsoft.ApiManagement/service/tenant/syncState", + "name": "syncState", + "properties": { + "branch": "master", + "commitId": "de891c2342c7058dde45e5e624eae7e558c94683", + "isExport": true, + "isSynced": true, + "isGitEnabled": true, + "syncDate": "2021-04-13T01:15:53.9824995Z", + "configurationChangeDate": "2021-04-13T00:11:43.862781Z", + "lastOperationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tenant/configuration/operationResults/6074f0bd093a9d0dac3d7347" + } } } } diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2020-12-01/examples/ApiManagementTenantConfigurationDeploy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2020-12-01/examples/ApiManagementTenantConfigurationDeploy.json index 235d9be39638..3f8ede6f3909 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2020-12-01/examples/ApiManagementTenantConfigurationDeploy.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2020-12-01/examples/ApiManagementTenantConfigurationDeploy.json @@ -14,18 +14,22 @@ "responses": { "202": { "headers": { - "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tenant/operationResults/5a1af4ae2a6d2e0b688d7517?api-version=2020-12-01" + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tenant/operationResults/6074e652093a9d0dac3d733c?api-version=2020-12-01" } }, "200": { "body": { - "id": "5a1af4ae2a6d2e0b688d7517", - "status": "Failed", - "started": "2017-11-26T17:06:54.303Z", - "updated": "2017-11-26T17:07:21.777Z", - "error": { - "code": "ValidationError", - "message": "File not found: 'api-management/configuration.json'" + "id": "6074e652093a9d0dac3d733c", + "type": "Microsoft.ApiManagement/service/tenant/operationResults", + "name": "6074e652093a9d0dac3d733c", + "properties": { + "status": "Failed", + "started": "2017-11-26T17:06:54.303Z", + "updated": "2017-11-26T17:07:21.777Z", + "error": { + "code": "ValidationError", + "message": "File not found: 'api-management/configuration.json'" + } } } } diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2020-12-01/examples/ApiManagementTenantConfigurationSave.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2020-12-01/examples/ApiManagementTenantConfigurationSave.json index e1e5fbf5a24c..cc4af56c5e44 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2020-12-01/examples/ApiManagementTenantConfigurationSave.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2020-12-01/examples/ApiManagementTenantConfigurationSave.json @@ -14,18 +14,21 @@ "responses": { "202": { "headers": { - "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tenant/operationResults/5a1af57d2a6d2e0b688d751b?api-version=2020-12-01" + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tenant/operationResults/6074e652093a9d0dac3d733c?api-version=2020-12-01" } }, "200": { "body": { - "id": "5cae98acb597440f487b0d78", - "status": "Succeeded", - "started": "2019-04-11T01:30:20.883Z", - "updated": "2019-04-11T01:30:41.623Z", - "resultInfo": "The configuration was successfully saved to master as commit 709678560f72e689e469cf98ba9ba6d1b7736893.", - "error": null, - "actionLog": [] + "id": "6074e652093a9d0dac3d733c", + "type": "Microsoft.ApiManagement/service/tenant/operationResults", + "name": "6074e652093a9d0dac3d733c", + "properties": { + "status": "Succeeded", + "started": "2021-04-13T00:31:14.94Z", + "updated": "2021-04-13T00:31:27.59Z", + "resultInfo": "The configuration was successfully saved to master as commit c0ae274f6046912107bad734834cbf65918668b6.", + "actionLog": [] + } } } } diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2020-12-01/examples/ApiManagementTenantConfigurationValidate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2020-12-01/examples/ApiManagementTenantConfigurationValidate.json index ed20536c5a1c..7a0752cf8378 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2020-12-01/examples/ApiManagementTenantConfigurationValidate.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2020-12-01/examples/ApiManagementTenantConfigurationValidate.json @@ -19,153 +19,16 @@ }, "200": { "body": { - "id": "5a1af64e2a6d2e0b688d751e", - "status": "Succeeded", - "started": "2019-04-11T01:30:51.767Z", - "updated": "2019-04-11T01:30:57.653Z", - "resultInfo": "Validation is successfull", - "actionLog": [ - { - "objectType": "ApiSpecificationContract", - "action": "Updated", - "objectKey": "57914cb351f68a16889be190;rev=1" - }, - { - "objectType": "ProductSpecificationContract", - "action": "Updated", - "objectKey": "5768181ea40f7eb6c49f6ac7" - }, - { - "objectType": "ProductSpecificationContract", - "action": "Updated", - "objectKey": "576819c9a40f7e86289fb3e3" - }, - { - "objectType": "ProductSpecificationContract", - "action": "Updated", - "objectKey": "576819f1a40f7e86289fb6de" - }, - { - "objectType": "ProductSpecificationContract", - "action": "Updated", - "objectKey": "57681a67a40f7e72b4132522" - }, - { - "objectType": "ProductSpecificationContract", - "action": "Updated", - "objectKey": "57681a73a40f7e72b413281d" - }, - { - "objectType": "ProductSpecificationContract", - "action": "Updated", - "objectKey": "57681a7ea40f7e72b4132b18" - }, - { - "objectType": "ProductSpecificationContract", - "action": "Updated", - "objectKey": "57681b88a40f7ea0f017f099" - }, - { - "objectType": "ProductSpecificationContract", - "action": "Updated", - "objectKey": "57681b9fa40f7ea0f017f682" - }, - { - "objectType": "ProductSpecificationContract", - "action": "Updated", - "objectKey": "57681bb5a40f7ea0f017fc6b" - }, - { - "objectType": "ProductSpecificationContract", - "action": "Updated", - "objectKey": "57681bcaa40f7ea0f0180254" - }, - { - "objectType": "ProductSpecificationContract", - "action": "Updated", - "objectKey": "57681bdfa40f7ea0f018083d" - }, - { - "objectType": "ProductSpecificationContract", - "action": "Updated", - "objectKey": "57681bf5a40f7ea0f0180e26" - }, - { - "objectType": "ProductSpecificationContract", - "action": "Updated", - "objectKey": "57681c0ea40f7ea0f018140f" - }, - { - "objectType": "ProductSpecificationContract", - "action": "Updated", - "objectKey": "57681c26a40f7ea0f01819f8" - }, - { - "objectType": "ProductSpecificationContract", - "action": "Updated", - "objectKey": "57681c83a40f7e85f44db237" - }, - { - "objectType": "ProductSpecificationContract", - "action": "Updated", - "objectKey": "57681cb2a40f7e85f44dbcd0" - }, - { - "objectType": "ProductSpecificationContract", - "action": "Updated", - "objectKey": "57681ce3a40f7e85f44dc769" - }, - { - "objectType": "ProductSpecificationContract", - "action": "Updated", - "objectKey": "57681d1fa40f7e85f44dd202" - }, - { - "objectType": "ProductSpecificationContract", - "action": "Updated", - "objectKey": "57681d60a40f7e85f44ddc9b" - }, - { - "objectType": "ProductSpecificationContract", - "action": "Updated", - "objectKey": "57681db4a40f7e85f44de735" - }, - { - "objectType": "ProductSpecificationContract", - "action": "Updated", - "objectKey": "57681e11a40f7e85f44df1ce" - }, - { - "objectType": "ProductSpecificationContract", - "action": "Updated", - "objectKey": "57681e73a40f7e85f44dfc67" - }, - { - "objectType": "ProductSpecificationContract", - "action": "Updated", - "objectKey": "57681f06a40f7e74ec07785c" - }, - { - "objectType": "ProductSpecificationContract", - "action": "Updated", - "objectKey": "5768211fa40f7e74ec07a74a" - }, - { - "objectType": "ProductSpecificationContract", - "action": "Updated", - "objectKey": "576823cfa40f7e74ec07d63a" - }, - { - "objectType": "ProductSpecificationContract", - "action": "Updated", - "objectKey": "5600b57e7e8880006a060001" - }, - { - "objectType": "ProductSpecificationContract", - "action": "Updated", - "objectKey": "5600b57e7e8880006a060002" - } - ] + "id": "6074ec02093a9d0dac3d7345", + "type": "Microsoft.ApiManagement/service/tenant/operationResults", + "name": "6074ec02093a9d0dac3d7345", + "properties": { + "status": "Succeeded", + "started": "2021-04-13T00:55:30.62Z", + "updated": "2021-04-13T00:55:39.857Z", + "resultInfo": "Validation is successfull", + "actionLog": [] + } } } } diff --git a/specification/apimanagement/resource-manager/readme.azureresourceschema.md b/specification/apimanagement/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index b7c0f4b79ff1..000000000000 --- a/specification/apimanagement/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,405 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-apimanagement-2020-12-01 - - tag: schema-apimanagement-2020-06-01-preview - - tag: schema-apimanagement-2019-12-01-preview - - tag: schema-apimanagement-2019-12-01 - - tag: schema-apimanagement-2019-01-01 - - tag: schema-apimanagement-2018-06-01-preview - - tag: schema-apimanagement-2018-01-01 - - tag: schema-apimanagement-2017-03-01 - - tag: schema-apimanagement-2016-10-10 - - tag: schema-apimanagement-2016-07-07 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-apimanagement-2020-12-01 and azureresourceschema - -``` yaml $(tag) == 'schema-apimanagement-2020-12-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ApiManagement/stable/2020-12-01/apimanagement.json - - Microsoft.ApiManagement/stable/2020-12-01/apimapis.json - - Microsoft.ApiManagement/stable/2020-12-01/apimapisByTags.json - - Microsoft.ApiManagement/stable/2020-12-01/apimapiversionsets.json - - Microsoft.ApiManagement/stable/2020-12-01/apimauthorizationservers.json - - Microsoft.ApiManagement/stable/2020-12-01/apimbackends.json - - Microsoft.ApiManagement/stable/2020-12-01/apimcaches.json - - Microsoft.ApiManagement/stable/2020-12-01/apimcertificates.json - - Microsoft.ApiManagement/stable/2020-12-01/apimcontenttypes.json - - Microsoft.ApiManagement/stable/2020-12-01/apimdeletedservices.json - - Microsoft.ApiManagement/stable/2020-12-01/apimdeployment.json - - Microsoft.ApiManagement/stable/2020-12-01/apimdiagnostics.json - - Microsoft.ApiManagement/stable/2020-12-01/apimemailtemplates.json - - Microsoft.ApiManagement/stable/2020-12-01/apimgateways.json - - Microsoft.ApiManagement/stable/2020-12-01/apimgroups.json - - Microsoft.ApiManagement/stable/2020-12-01/apimidentityprovider.json - - Microsoft.ApiManagement/stable/2020-12-01/apimissues.json - - Microsoft.ApiManagement/stable/2020-12-01/apimloggers.json - - Microsoft.ApiManagement/stable/2020-12-01/apimnamedvalues.json - - Microsoft.ApiManagement/stable/2020-12-01/apimnetworkstatus.json - - Microsoft.ApiManagement/stable/2020-12-01/apimnotifications.json - - Microsoft.ApiManagement/stable/2020-12-01/apimopenidconnectproviders.json - - Microsoft.ApiManagement/stable/2020-12-01/apimpolicies.json - - Microsoft.ApiManagement/stable/2020-12-01/apimpolicydescriptions.json - - Microsoft.ApiManagement/stable/2020-12-01/apimportalrevisions.json - - Microsoft.ApiManagement/stable/2020-12-01/apimportalsettings.json - - Microsoft.ApiManagement/stable/2020-12-01/apimproducts.json - - Microsoft.ApiManagement/stable/2020-12-01/apimproductsByTags.json - - Microsoft.ApiManagement/stable/2020-12-01/apimquotas.json - - Microsoft.ApiManagement/stable/2020-12-01/apimregions.json - - Microsoft.ApiManagement/stable/2020-12-01/apimreports.json - - Microsoft.ApiManagement/stable/2020-12-01/apimsettings.json - - Microsoft.ApiManagement/stable/2020-12-01/apimskus.json - - Microsoft.ApiManagement/stable/2020-12-01/apimsubscriptions.json - - Microsoft.ApiManagement/stable/2020-12-01/apimtagresources.json - - Microsoft.ApiManagement/stable/2020-12-01/apimtags.json - - Microsoft.ApiManagement/stable/2020-12-01/apimtenant.json - - Microsoft.ApiManagement/stable/2020-12-01/apimusers.json - - Microsoft.ApiManagement/stable/2020-12-01/definitions.json - -``` - -### Tag: schema-apimanagement-2020-06-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-apimanagement-2020-06-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ApiManagement/preview/2020-06-01-preview/apimanagement.json - - Microsoft.ApiManagement/preview/2020-06-01-preview/apimapis.json - - Microsoft.ApiManagement/preview/2020-06-01-preview/apimapisByTags.json - - Microsoft.ApiManagement/preview/2020-06-01-preview/apimapiversionsets.json - - Microsoft.ApiManagement/preview/2020-06-01-preview/apimauthorizationservers.json - - Microsoft.ApiManagement/preview/2020-06-01-preview/apimbackends.json - - Microsoft.ApiManagement/preview/2020-06-01-preview/apimcaches.json - - Microsoft.ApiManagement/preview/2020-06-01-preview/apimcertificates.json - - Microsoft.ApiManagement/preview/2020-06-01-preview/apimcontenttypes.json - - Microsoft.ApiManagement/preview/2020-06-01-preview/apimdeletedservices.json - - Microsoft.ApiManagement/preview/2020-06-01-preview/apimdeployment.json - - Microsoft.ApiManagement/preview/2020-06-01-preview/apimdiagnostics.json - - Microsoft.ApiManagement/preview/2020-06-01-preview/apimemailtemplates.json - - Microsoft.ApiManagement/preview/2020-06-01-preview/apimgateways.json - - Microsoft.ApiManagement/preview/2020-06-01-preview/apimgroups.json - - Microsoft.ApiManagement/preview/2020-06-01-preview/apimidentityprovider.json - - Microsoft.ApiManagement/preview/2020-06-01-preview/apimissues.json - - Microsoft.ApiManagement/preview/2020-06-01-preview/apimloggers.json - - Microsoft.ApiManagement/preview/2020-06-01-preview/apimnamedvalues.json - - Microsoft.ApiManagement/preview/2020-06-01-preview/apimnetworkstatus.json - - Microsoft.ApiManagement/preview/2020-06-01-preview/apimnotifications.json - - Microsoft.ApiManagement/preview/2020-06-01-preview/apimopenidconnectproviders.json - - Microsoft.ApiManagement/preview/2020-06-01-preview/apimpolicies.json - - Microsoft.ApiManagement/preview/2020-06-01-preview/apimpolicydescriptions.json - - Microsoft.ApiManagement/preview/2020-06-01-preview/apimportalrevisions.json - - Microsoft.ApiManagement/preview/2020-06-01-preview/apimportalsettings.json - - Microsoft.ApiManagement/preview/2020-06-01-preview/apimproducts.json - - Microsoft.ApiManagement/preview/2020-06-01-preview/apimproductsByTags.json - - Microsoft.ApiManagement/preview/2020-06-01-preview/apimquotas.json - - Microsoft.ApiManagement/preview/2020-06-01-preview/apimregions.json - - Microsoft.ApiManagement/preview/2020-06-01-preview/apimreports.json - - Microsoft.ApiManagement/preview/2020-06-01-preview/apimsettings.json - - Microsoft.ApiManagement/preview/2020-06-01-preview/apimskus.json - - Microsoft.ApiManagement/preview/2020-06-01-preview/apimsubscriptions.json - - Microsoft.ApiManagement/preview/2020-06-01-preview/apimtagresources.json - - Microsoft.ApiManagement/preview/2020-06-01-preview/apimtags.json - - Microsoft.ApiManagement/preview/2020-06-01-preview/apimtenant.json - - Microsoft.ApiManagement/preview/2020-06-01-preview/apimusers.json - - Microsoft.ApiManagement/preview/2020-06-01-preview/definitions.json - -``` - -### Tag: schema-apimanagement-2019-12-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-apimanagement-2019-12-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ApiManagement/preview/2019-12-01-preview/apimanagement.json - - Microsoft.ApiManagement/preview/2019-12-01-preview/apimapis.json - - Microsoft.ApiManagement/preview/2019-12-01-preview/apimapisByTags.json - - Microsoft.ApiManagement/preview/2019-12-01-preview/apimapiversionsets.json - - Microsoft.ApiManagement/preview/2019-12-01-preview/apimauthorizationservers.json - - Microsoft.ApiManagement/preview/2019-12-01-preview/apimbackends.json - - Microsoft.ApiManagement/preview/2019-12-01-preview/apimcaches.json - - Microsoft.ApiManagement/preview/2019-12-01-preview/apimcertificates.json - - Microsoft.ApiManagement/preview/2019-12-01-preview/apimdeployment.json - - Microsoft.ApiManagement/preview/2019-12-01-preview/apimdiagnostics.json - - Microsoft.ApiManagement/preview/2019-12-01-preview/apimemailtemplates.json - - Microsoft.ApiManagement/preview/2019-12-01-preview/apimgateways.json - - Microsoft.ApiManagement/preview/2019-12-01-preview/apimgroups.json - - Microsoft.ApiManagement/preview/2019-12-01-preview/apimidentityprovider.json - - Microsoft.ApiManagement/preview/2019-12-01-preview/apimissues.json - - Microsoft.ApiManagement/preview/2019-12-01-preview/apimloggers.json - - Microsoft.ApiManagement/preview/2019-12-01-preview/apimnetworkstatus.json - - Microsoft.ApiManagement/preview/2019-12-01-preview/apimnotifications.json - - Microsoft.ApiManagement/preview/2019-12-01-preview/apimopenidconnectproviders.json - - Microsoft.ApiManagement/preview/2019-12-01-preview/apimpolicies.json - - Microsoft.ApiManagement/preview/2019-12-01-preview/apimpolicydescriptions.json - - Microsoft.ApiManagement/preview/2019-12-01-preview/apimportalsettings.json - - Microsoft.ApiManagement/preview/2019-12-01-preview/apimproducts.json - - Microsoft.ApiManagement/preview/2019-12-01-preview/apimproductsByTags.json - - Microsoft.ApiManagement/preview/2019-12-01-preview/apimnamedvalues.json - - Microsoft.ApiManagement/preview/2019-12-01-preview/apimquotas.json - - Microsoft.ApiManagement/preview/2019-12-01-preview/apimregions.json - - Microsoft.ApiManagement/preview/2019-12-01-preview/apimreports.json - - Microsoft.ApiManagement/preview/2019-12-01-preview/apimsubscriptions.json - - Microsoft.ApiManagement/preview/2019-12-01-preview/apimtagresources.json - - Microsoft.ApiManagement/preview/2019-12-01-preview/apimtags.json - - Microsoft.ApiManagement/preview/2019-12-01-preview/apimtenant.json - - Microsoft.ApiManagement/preview/2019-12-01-preview/apimusers.json - - Microsoft.ApiManagement/preview/2019-12-01-preview/definitions.json - -``` - -### Tag: schema-apimanagement-2019-12-01 and azureresourceschema - -``` yaml $(tag) == 'schema-apimanagement-2019-12-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ApiManagement/stable/2019-12-01/apimanagement.json - - Microsoft.ApiManagement/stable/2019-12-01/apimapis.json - - Microsoft.ApiManagement/stable/2019-12-01/apimapisByTags.json - - Microsoft.ApiManagement/stable/2019-12-01/apimapiversionsets.json - - Microsoft.ApiManagement/stable/2019-12-01/apimauthorizationservers.json - - Microsoft.ApiManagement/stable/2019-12-01/apimbackends.json - - Microsoft.ApiManagement/stable/2019-12-01/apimcaches.json - - Microsoft.ApiManagement/stable/2019-12-01/apimcertificates.json - - Microsoft.ApiManagement/stable/2019-12-01/apimcontenttypes.json - - Microsoft.ApiManagement/stable/2019-12-01/apimdeployment.json - - Microsoft.ApiManagement/stable/2019-12-01/apimdiagnostics.json - - Microsoft.ApiManagement/stable/2019-12-01/apimemailtemplates.json - - Microsoft.ApiManagement/stable/2019-12-01/apimgateways.json - - Microsoft.ApiManagement/stable/2019-12-01/apimgroups.json - - Microsoft.ApiManagement/stable/2019-12-01/apimidentityprovider.json - - Microsoft.ApiManagement/stable/2019-12-01/apimissues.json - - Microsoft.ApiManagement/stable/2019-12-01/apimloggers.json - - Microsoft.ApiManagement/stable/2019-12-01/apimnamedvalues.json - - Microsoft.ApiManagement/stable/2019-12-01/apimnetworkstatus.json - - Microsoft.ApiManagement/stable/2019-12-01/apimnotifications.json - - Microsoft.ApiManagement/stable/2019-12-01/apimopenidconnectproviders.json - - Microsoft.ApiManagement/stable/2019-12-01/apimpolicies.json - - Microsoft.ApiManagement/stable/2019-12-01/apimpolicydescriptions.json - - Microsoft.ApiManagement/stable/2019-12-01/apimportalsettings.json - - Microsoft.ApiManagement/stable/2019-12-01/apimproducts.json - - Microsoft.ApiManagement/stable/2019-12-01/apimproductsByTags.json - - Microsoft.ApiManagement/stable/2019-12-01/apimquotas.json - - Microsoft.ApiManagement/stable/2019-12-01/apimregions.json - - Microsoft.ApiManagement/stable/2019-12-01/apimreports.json - - Microsoft.ApiManagement/stable/2019-12-01/apimsubscriptions.json - - Microsoft.ApiManagement/stable/2019-12-01/apimtagresources.json - - Microsoft.ApiManagement/stable/2019-12-01/apimtags.json - - Microsoft.ApiManagement/stable/2019-12-01/apimtenant.json - - Microsoft.ApiManagement/stable/2019-12-01/apimusers.json - - Microsoft.ApiManagement/stable/2019-12-01/definitions.json - -``` - -### Tag: schema-apimanagement-2019-01-01 and azureresourceschema - -``` yaml $(tag) == 'schema-apimanagement-2019-01-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ApiManagement/stable/2019-01-01/apimanagement.json - - Microsoft.ApiManagement/stable/2019-01-01/apimapis.json - - Microsoft.ApiManagement/stable/2019-01-01/apimapisByTags.json - - Microsoft.ApiManagement/stable/2019-01-01/apimapiversionsets.json - - Microsoft.ApiManagement/stable/2019-01-01/apimauthorizationservers.json - - Microsoft.ApiManagement/stable/2019-01-01/apimbackends.json - - Microsoft.ApiManagement/stable/2019-01-01/apimcaches.json - - Microsoft.ApiManagement/stable/2019-01-01/apimcertificates.json - - Microsoft.ApiManagement/stable/2019-01-01/apimdeployment.json - - Microsoft.ApiManagement/stable/2019-01-01/apimdiagnostics.json - - Microsoft.ApiManagement/stable/2019-01-01/apimemailtemplates.json - - Microsoft.ApiManagement/stable/2019-01-01/apimgroups.json - - Microsoft.ApiManagement/stable/2019-01-01/apimidentityprovider.json - - Microsoft.ApiManagement/stable/2019-01-01/apimissues.json - - Microsoft.ApiManagement/stable/2019-01-01/apimloggers.json - - Microsoft.ApiManagement/stable/2019-01-01/apimnetworkstatus.json - - Microsoft.ApiManagement/stable/2019-01-01/apimnotifications.json - - Microsoft.ApiManagement/stable/2019-01-01/apimopenidconnectproviders.json - - Microsoft.ApiManagement/stable/2019-01-01/apimpolicies.json - - Microsoft.ApiManagement/stable/2019-01-01/apimpolicysnippets.json - - Microsoft.ApiManagement/stable/2019-01-01/apimportalsettings.json - - Microsoft.ApiManagement/stable/2019-01-01/apimproducts.json - - Microsoft.ApiManagement/stable/2019-01-01/apimproductsByTags.json - - Microsoft.ApiManagement/stable/2019-01-01/apimproperties.json - - Microsoft.ApiManagement/stable/2019-01-01/apimquotas.json - - Microsoft.ApiManagement/stable/2019-01-01/apimregions.json - - Microsoft.ApiManagement/stable/2019-01-01/apimreports.json - - Microsoft.ApiManagement/stable/2019-01-01/apimsubscriptions.json - - Microsoft.ApiManagement/stable/2019-01-01/apimtagresources.json - - Microsoft.ApiManagement/stable/2019-01-01/apimtags.json - - Microsoft.ApiManagement/stable/2019-01-01/apimtenant.json - - Microsoft.ApiManagement/stable/2019-01-01/apimusers.json - - Microsoft.ApiManagement/stable/2019-01-01/definitions.json - -``` - -### Tag: schema-apimanagement-2018-06-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-apimanagement-2018-06-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ApiManagement/preview/2018-06-01-preview/apimanagement.json - - Microsoft.ApiManagement/preview/2018-06-01-preview/apimapis.json - - Microsoft.ApiManagement/preview/2018-06-01-preview/apimapisByTags.json - - Microsoft.ApiManagement/preview/2018-06-01-preview/apimauthorizationservers.json - - Microsoft.ApiManagement/preview/2018-06-01-preview/apimbackends.json - - Microsoft.ApiManagement/preview/2018-06-01-preview/apimcaches.json - - Microsoft.ApiManagement/preview/2018-06-01-preview/apimcertificates.json - - Microsoft.ApiManagement/preview/2018-06-01-preview/apimdeployment.json - - Microsoft.ApiManagement/preview/2018-06-01-preview/apimdiagnostics.json - - Microsoft.ApiManagement/preview/2018-06-01-preview/apimemailtemplates.json - - Microsoft.ApiManagement/preview/2018-06-01-preview/apimgroups.json - - Microsoft.ApiManagement/preview/2018-06-01-preview/apimidentityprovider.json - - Microsoft.ApiManagement/preview/2018-06-01-preview/apimissues.json - - Microsoft.ApiManagement/preview/2018-06-01-preview/apimloggers.json - - Microsoft.ApiManagement/preview/2018-06-01-preview/apimnotifications.json - - Microsoft.ApiManagement/preview/2018-06-01-preview/apimnetworkstatus.json - - Microsoft.ApiManagement/preview/2018-06-01-preview/apimopenidconnectproviders.json - - Microsoft.ApiManagement/preview/2018-06-01-preview/apimpolicies.json - - Microsoft.ApiManagement/preview/2018-06-01-preview/apimpolicysnippets.json - - Microsoft.ApiManagement/preview/2018-06-01-preview/apimportalsettings.json - - Microsoft.ApiManagement/preview/2018-06-01-preview/apimproducts.json - - Microsoft.ApiManagement/preview/2018-06-01-preview/apimproductsByTags.json - - Microsoft.ApiManagement/preview/2018-06-01-preview/apimproperties.json - - Microsoft.ApiManagement/preview/2018-06-01-preview/apimquotas.json - - Microsoft.ApiManagement/preview/2018-06-01-preview/apimregions.json - - Microsoft.ApiManagement/preview/2018-06-01-preview/apimreports.json - - Microsoft.ApiManagement/preview/2018-06-01-preview/apimsubscriptions.json - - Microsoft.ApiManagement/preview/2018-06-01-preview/apimtagresources.json - - Microsoft.ApiManagement/preview/2018-06-01-preview/apimtags.json - - Microsoft.ApiManagement/preview/2018-06-01-preview/apimtenant.json - - Microsoft.ApiManagement/preview/2018-06-01-preview/apimusers.json - - Microsoft.ApiManagement/preview/2018-06-01-preview/apimapiversionsets.json - - Microsoft.ApiManagement/preview/2018-06-01-preview/definitions.json - -``` - -### Tag: schema-apimanagement-2018-01-01 and azureresourceschema - -``` yaml $(tag) == 'schema-apimanagement-2018-01-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ApiManagement/stable/2018-01-01/apimanagement.json - - Microsoft.ApiManagement/stable/2018-01-01/apimapis.json - - Microsoft.ApiManagement/stable/2018-01-01/apimauthorizationservers.json - - Microsoft.ApiManagement/stable/2018-01-01/apimbackends.json - - Microsoft.ApiManagement/stable/2018-01-01/apimcertificates.json - - Microsoft.ApiManagement/stable/2018-01-01/apimdeployment.json - - Microsoft.ApiManagement/stable/2018-01-01/apimdiagnostics.json - - Microsoft.ApiManagement/stable/2018-01-01/apimemailtemplate.json - - Microsoft.ApiManagement/stable/2018-01-01/apimgroups.json - - Microsoft.ApiManagement/stable/2018-01-01/apimidentityprovider.json - - Microsoft.ApiManagement/stable/2018-01-01/apimloggers.json - - Microsoft.ApiManagement/stable/2018-01-01/apimnotifications.json - - Microsoft.ApiManagement/stable/2018-01-01/apimnetworkstatus.json - - Microsoft.ApiManagement/stable/2018-01-01/apimopenidconnectproviders.json - - Microsoft.ApiManagement/stable/2018-01-01/apimportalsettings.json - - Microsoft.ApiManagement/stable/2018-01-01/apimproducts.json - - Microsoft.ApiManagement/stable/2018-01-01/apimproperties.json - - Microsoft.ApiManagement/stable/2018-01-01/apimquotas.json - - Microsoft.ApiManagement/stable/2018-01-01/apimreports.json - - Microsoft.ApiManagement/stable/2018-01-01/apimsubscriptions.json - - Microsoft.ApiManagement/stable/2018-01-01/apimtagresources.json - - Microsoft.ApiManagement/stable/2018-01-01/apimtags.json - - Microsoft.ApiManagement/stable/2018-01-01/apimtenant.json - - Microsoft.ApiManagement/stable/2018-01-01/apimusers.json - - Microsoft.ApiManagement/stable/2018-01-01/apimversionsets.json - -``` - -### Tag: schema-apimanagement-2017-03-01 and azureresourceschema - -``` yaml $(tag) == 'schema-apimanagement-2017-03-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ApiManagement/stable/2017-03-01/apimanagement.json - - Microsoft.ApiManagement/stable/2017-03-01/apimapis.json - - Microsoft.ApiManagement/stable/2017-03-01/apimauthorizationservers.json - - Microsoft.ApiManagement/stable/2017-03-01/apimbackends.json - - Microsoft.ApiManagement/stable/2017-03-01/apimcertificates.json - - Microsoft.ApiManagement/stable/2017-03-01/apimdeployment.json - - Microsoft.ApiManagement/stable/2017-03-01/apimdiagnostics.json - - Microsoft.ApiManagement/stable/2017-03-01/apimemailtemplate.json - - Microsoft.ApiManagement/stable/2017-03-01/apimgroups.json - - Microsoft.ApiManagement/stable/2017-03-01/apimidentityprovider.json - - Microsoft.ApiManagement/stable/2017-03-01/apimloggers.json - - Microsoft.ApiManagement/stable/2017-03-01/apimnotifications.json - - Microsoft.ApiManagement/stable/2017-03-01/apimnetworkstatus.json - - Microsoft.ApiManagement/stable/2017-03-01/apimopenidconnectproviders.json - - Microsoft.ApiManagement/stable/2017-03-01/apimportalsettings.json - - Microsoft.ApiManagement/stable/2017-03-01/apimproducts.json - - Microsoft.ApiManagement/stable/2017-03-01/apimproperties.json - - Microsoft.ApiManagement/stable/2017-03-01/apimquotas.json - - Microsoft.ApiManagement/stable/2017-03-01/apimreports.json - - Microsoft.ApiManagement/stable/2017-03-01/apimsubscriptions.json - - Microsoft.ApiManagement/stable/2017-03-01/apimtagresources.json - - Microsoft.ApiManagement/stable/2017-03-01/apimtags.json - - Microsoft.ApiManagement/stable/2017-03-01/apimtenant.json - - Microsoft.ApiManagement/stable/2017-03-01/apimusers.json - - Microsoft.ApiManagement/stable/2017-03-01/apimversionsets.json - -``` - -### Tag: schema-apimanagement-2016-10-10 and azureresourceschema - -``` yaml $(tag) == 'schema-apimanagement-2016-10-10' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ApiManagement/stable/2016-10-10/apimanagement.json - - Microsoft.ApiManagement/stable/2016-10-10/apimapis.json - - Microsoft.ApiManagement/stable/2016-10-10/apimauthorizationservers.json - - Microsoft.ApiManagement/stable/2016-10-10/apimbackends.json - - Microsoft.ApiManagement/stable/2016-10-10/apimcertificates.json - - Microsoft.ApiManagement/stable/2016-10-10/apimdeployment.json - - Microsoft.ApiManagement/stable/2016-10-10/apimgroups.json - - Microsoft.ApiManagement/stable/2016-10-10/apimidentityprovider.json - - Microsoft.ApiManagement/stable/2016-10-10/apimloggers.json - - Microsoft.ApiManagement/stable/2016-10-10/apimnetworkstatus.json - - Microsoft.ApiManagement/stable/2016-10-10/apimopenidconnectproviders.json - - Microsoft.ApiManagement/stable/2016-10-10/apimproducts.json - - Microsoft.ApiManagement/stable/2016-10-10/apimproperties.json - - Microsoft.ApiManagement/stable/2016-10-10/apimquotas.json - - Microsoft.ApiManagement/stable/2016-10-10/apimreports.json - - Microsoft.ApiManagement/stable/2016-10-10/apimsubscriptions.json - - Microsoft.ApiManagement/stable/2016-10-10/apimtenant.json - - Microsoft.ApiManagement/stable/2016-10-10/apimusers.json - -``` - -### Tag: schema-apimanagement-2016-07-07 and azureresourceschema - -``` yaml $(tag) == 'schema-apimanagement-2016-07-07' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ApiManagement/stable/2016-07-07/apimanagement.json - - Microsoft.ApiManagement/stable/2016-07-07/apimdeployment.json - -``` diff --git a/specification/apimanagement/resource-manager/readme.go.md b/specification/apimanagement/resource-manager/readme.go.md index fb7bd34fdc73..9a8ab0f515d6 100644 --- a/specification/apimanagement/resource-manager/readme.go.md +++ b/specification/apimanagement/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: apimanagement clear-output-folder: true ``` diff --git a/specification/apimanagement/resource-manager/readme.md b/specification/apimanagement/resource-manager/readme.md index 31b3296e3b88..5458143088a5 100644 --- a/specification/apimanagement/resource-manager/readme.md +++ b/specification/apimanagement/resource-manager/readme.md @@ -488,8 +488,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_api_management'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js apimanagement/resource-manager ``` ## C# @@ -518,9 +516,7 @@ See configuration in [readme.go.md](./readme.go.md) See configuration in [readme.java.md](./readme.java.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) ## Suppression diff --git a/specification/apimanagement/resource-manager/readme.python.md b/specification/apimanagement/resource-manager/readme.python.md index 4ebcc52b0767..4f77cb308462 100644 --- a/specification/apimanagement/resource-manager/readme.python.md +++ b/specification/apimanagement/resource-manager/readme.python.md @@ -12,6 +12,7 @@ python: payload-flattening-threshold: 2 namespace: azure.mgmt.apimanagement package-name: azure-mgmt-apimanagement + package-version: 0.1.0 clear-output-folder: true ``` ``` yaml $(python) && $(track2) @@ -20,6 +21,8 @@ azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION namespace: azure.mgmt.apimanagement package-name: azure-mgmt-apimanagement +package-version: 0.1.0 +clear-output-folder: true ``` ``` yaml $(python) && $(python-mode) == 'update' && !$(track2) python: diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/appconfiguration.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/appconfiguration.json new file mode 100644 index 000000000000..0607f2b84c9f --- /dev/null +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/appconfiguration.json @@ -0,0 +1,1966 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-03-01-preview", + "title": "AppConfigurationManagementClient" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.AppConfiguration/configurationStores": { + "get": { + "tags": [ + "ConfigurationStores" + ], + "description": "Lists the configuration stores for a given subscription.", + "operationId": "ConfigurationStores_List", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "$skipToken", + "in": "query", + "description": "A skip token is used to continue retrieving items after an operation returns a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skipToken parameter that specifies a starting point to use for subsequent calls.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/ConfigurationStoreListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ConfigurationStores_List": { + "$ref": "./examples/ConfigurationStoresList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppConfiguration/configurationStores": { + "get": { + "tags": [ + "ConfigurationStores" + ], + "description": "Lists the configuration stores for a given resource group.", + "operationId": "ConfigurationStores_ListByResourceGroup", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "$skipToken", + "in": "query", + "description": "A skip token is used to continue retrieving items after an operation returns a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skipToken parameter that specifies a starting point to use for subsequent calls.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/ConfigurationStoreListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ConfigurationStores_ListByResourceGroup": { + "$ref": "./examples/ConfigurationStoresListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppConfiguration/configurationStores/{configStoreName}": { + "get": { + "tags": [ + "ConfigurationStores" + ], + "description": "Gets the properties of the specified configuration store.", + "operationId": "ConfigurationStores_Get", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ConfigStoreNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/ConfigurationStore" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ConfigurationStores_Get": { + "$ref": "./examples/ConfigurationStoresGet.json" + } + } + }, + "put": { + "tags": [ + "ConfigurationStores" + ], + "description": "Creates a configuration store with the specified parameters.", + "operationId": "ConfigurationStores_Create", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ConfigStoreNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "configStoreCreationParameters", + "in": "body", + "description": "The parameters for creating a configuration store.", + "required": true, + "schema": { + "$ref": "#/definitions/ConfigurationStore" + } + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/ConfigurationStore" + } + }, + "201": { + "description": "The request was successfully accepted; the operation will complete asynchronously. The provisioning state of the resource should indicate the current state of the resource.", + "schema": { + "$ref": "#/definitions/ConfigurationStore" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ConfigurationStores_Create": { + "$ref": "./examples/ConfigurationStoresCreate.json" + }, + "ConfigurationStores_Create_With_Identity": { + "$ref": "./examples/ConfigurationStoresCreateWithIdentity.json" + }, + "ConfigurationStores_Create_With_Local_Auth_Disabled": { + "$ref": "./examples/ConfigurationStoresCreateWithLocalAuthDisabled.json" + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "ConfigurationStores" + ], + "description": "Deletes a configuration store.", + "operationId": "ConfigurationStores_Delete", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ConfigStoreNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly." + }, + "202": { + "description": "The request was successful; the operation will complete asynchronously." + }, + "204": { + "description": "No Content - the specified resource was not found." + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ConfigurationStores_Delete": { + "$ref": "./examples/ConfigurationStoresDelete.json" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "ConfigurationStores" + ], + "description": "Updates a configuration store with the specified parameters.", + "operationId": "ConfigurationStores_Update", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ConfigStoreNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "configStoreUpdateParameters", + "in": "body", + "description": "The parameters for updating a configuration store.", + "required": true, + "schema": { + "$ref": "#/definitions/ConfigurationStoreUpdateParameters" + } + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/ConfigurationStore" + } + }, + "201": { + "description": "The request was successfully accepted; the operation will complete asynchronously. The provisioning state of the resource should indicate the current state of the resource.", + "schema": { + "$ref": "#/definitions/ConfigurationStore" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ConfigurationStores_Update": { + "$ref": "./examples/ConfigurationStoresUpdate.json" + }, + "ConfigurationStores_Update_With_Identity": { + "$ref": "./examples/ConfigurationStoresUpdateWithIdentity.json" + }, + "ConfigurationStores_Update_Disable_Local_Auth": { + "$ref": "./examples/ConfigurationStoresUpdateDisableLocalAuth.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.AppConfiguration/checkNameAvailability": { + "post": { + "tags": [ + "Operations" + ], + "description": "Checks whether the configuration store name is available for use.", + "operationId": "Operations_CheckNameAvailability", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "checkNameAvailabilityParameters", + "in": "body", + "description": "The object containing information for the availability request.", + "required": true, + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityParameters" + } + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/NameAvailabilityStatus" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ConfigurationStores_CheckNameAvailable": { + "$ref": "./examples/CheckNameAvailable.json" + }, + "ConfigurationStores_CheckNameNotAvailable": { + "$ref": "./examples/CheckNameNotAvailable.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppConfiguration/configurationStores/{configStoreName}/listKeys": { + "post": { + "tags": [ + "ConfigurationStores" + ], + "description": "Lists the access key for the specified configuration store.", + "operationId": "ConfigurationStores_ListKeys", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ConfigStoreNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "$skipToken", + "in": "query", + "description": "A skip token is used to continue retrieving items after an operation returns a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skipToken parameter that specifies a starting point to use for subsequent calls.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/ApiKeyListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ConfigurationStores_ListKeys": { + "$ref": "./examples/ConfigurationStoresListKeys.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppConfiguration/configurationStores/{configStoreName}/regenerateKey": { + "post": { + "tags": [ + "ConfigurationStores" + ], + "description": "Regenerates an access key for the specified configuration store.", + "operationId": "ConfigurationStores_RegenerateKey", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ConfigStoreNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "regenerateKeyParameters", + "in": "body", + "description": "The parameters for regenerating an access key.", + "required": true, + "schema": { + "$ref": "#/definitions/RegenerateKeyParameters" + } + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/ApiKey" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ConfigurationStores_RegenerateKey": { + "$ref": "./examples/ConfigurationStoresRegenerateKey.json" + } + } + } + }, + "/providers/Microsoft.AppConfiguration/operations": { + "get": { + "tags": [ + "Operations" + ], + "description": "Lists the operations available from this provider.", + "operationId": "Operations_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "$skipToken", + "in": "query", + "description": "A skip token is used to continue retrieving items after an operation returns a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skipToken parameter that specifies a starting point to use for subsequent calls.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/OperationDefinitionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": {}, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppConfiguration/configurationStores/{configStoreName}/privateEndpointConnections": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_ListByConfigurationStore", + "description": "Lists all private endpoint connections for a configuration store.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ConfigStoreNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "PrivateEndpointConnection_List": { + "$ref": "./examples/ConfigurationStoresListPrivateEndpointConnections.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppConfiguration/configurationStores/{configStoreName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Get", + "description": "Gets the specified private endpoint connection associated with the configuration store.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ConfigStoreNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "Private endpoint connection name", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "PrivateEndpointConnection_GetConnection": { + "$ref": "./examples/ConfigurationStoresGetPrivateEndpointConnection.json" + } + } + }, + "put": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_CreateOrUpdate", + "description": "Update the state of the specified private endpoint connection associated with the configuration store.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ConfigStoreNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "Private endpoint connection name", + "required": true, + "type": "string" + }, + { + "name": "privateEndpointConnection", + "in": "body", + "description": "The private endpoint connection properties.", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "201": { + "description": "The request was successfully accepted; the operation will complete asynchronously. The provisioning state of the resource should indicate the current state of the resource.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "PrivateEndpointConnection_CreateOrUpdate": { + "$ref": "./examples/ConfigurationStoresCreatePrivateEndpointConnection.json" + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Deletes a private endpoint connection.", + "operationId": "PrivateEndpointConnections_Delete", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ConfigStoreNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "Private endpoint connection name", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly." + }, + "202": { + "description": "The request was successful; the operation will complete asynchronously." + }, + "204": { + "description": "No Content - the specified resource was not found." + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "PrivateEndpointConnections_Delete": { + "$ref": "./examples/ConfigurationStoresDeletePrivateEndpointConnection.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppConfiguration/configurationStores/{configStoreName}/privateLinkResources": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "operationId": "PrivateLinkResources_ListByConfigurationStore", + "description": "Gets the private link resources that need to be created for a configuration store.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ConfigStoreNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/PrivateLinkResourceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "PrivateLinkResources_ListGroupIds": { + "$ref": "./examples/PrivateLinkResourcesListByConfigurationStore.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppConfiguration/configurationStores/{configStoreName}/privateLinkResources/{groupName}": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "operationId": "PrivateLinkResources_Get", + "description": "Gets a private link resource that need to be created for a configuration store.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ConfigStoreNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "groupName", + "in": "path", + "description": "The name of the private link resource group.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/PrivateLinkResource" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "PrivateLinkResources_Get": { + "$ref": "./examples/PrivateLinkResourceGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppConfiguration/configurationStores/{configStoreName}/keyValues": { + "get": { + "tags": [ + "KeyValues" + ], + "description": "Lists the key-values for a given configuration store.", + "operationId": "KeyValues_ListByConfigurationStore", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ConfigStoreNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "$skipToken", + "in": "query", + "description": "A skip token is used to continue retrieving items after an operation returns a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skipToken parameter that specifies a starting point to use for subsequent calls.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/KeyValueListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "KeyValues_ListByConfigurationStore": { + "$ref": "./examples/ConfigurationStoresListKeyValues.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppConfiguration/configurationStores/{configStoreName}/keyValues/{keyValueName}": { + "get": { + "tags": [ + "KeyValues" + ], + "description": "Gets the properties of the specified key-value.", + "operationId": "KeyValues_Get", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ConfigStoreNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "keyValueName", + "in": "path", + "description": "Identifier of key and label combination. Key and label are joined by $ character. Label is optional.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/KeyValue" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "KeyValues_Get": { + "$ref": "./examples/ConfigurationStoresGetKeyValue.json" + } + } + }, + "put": { + "tags": [ + "KeyValues" + ], + "description": "Creates a key-value.", + "operationId": "KeyValues_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ConfigStoreNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "keyValueName", + "in": "path", + "description": "Identifier of key and label combination. Key and label are joined by $ character. Label is optional.", + "required": true, + "type": "string" + }, + { + "name": "keyValueParameters", + "in": "body", + "description": "The parameters for creating a key-value.", + "required": false, + "schema": { + "$ref": "#/definitions/KeyValue" + } + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/KeyValue" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "KeyValues_CreateOrUpdate": { + "$ref": "./examples/ConfigurationStoresCreateKeyValue.json" + } + } + }, + "delete": { + "tags": [ + "KeyValues" + ], + "description": "Deletes a key-value.", + "operationId": "KeyValues_Delete", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ConfigStoreNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "keyValueName", + "in": "path", + "description": "Identifier of key and label combination. Key and label are joined by $ character. Label is optional.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly." + }, + "202": { + "description": "The request was successful; the operation will complete asynchronously." + }, + "204": { + "description": "No Content - the specified resource was not found." + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "KeyValues_Delete": { + "$ref": "./examples/ConfigurationStoresDeleteKeyValue.json" + } + }, + "x-ms-long-running-operation": true + } + } + }, + "definitions": { + "ConfigurationStoreListResult": { + "description": "The result of a request to list configuration stores.", + "type": "object", + "properties": { + "value": { + "description": "The collection value.", + "type": "array", + "items": { + "$ref": "#/definitions/ConfigurationStore" + } + }, + "nextLink": { + "description": "The URI that can be used to request the next set of paged results.", + "type": "string" + } + } + }, + "ConfigurationStore": { + "description": "The configuration store along with all resource properties. The Configuration Store will have all information to begin utilizing it.", + "required": [ + "location", + "sku" + ], + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/TrackedResource" + } + ], + "properties": { + "identity": { + "$ref": "#/definitions/ResourceIdentity", + "description": "The managed identity information, if configured." + }, + "properties": { + "$ref": "#/definitions/ConfigurationStoreProperties", + "description": "The properties of a configuration store.", + "x-ms-client-flatten": true + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "The sku of the configuration store." + }, + "systemData": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData", + "description": "Resource system metadata." + } + } + }, + "ConfigurationStoreProperties": { + "description": "The properties of a configuration store.", + "type": "object", + "properties": { + "provisioningState": { + "description": "The provisioning state of the configuration store.", + "enum": [ + "Creating", + "Updating", + "Deleting", + "Succeeded", + "Failed", + "Canceled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "creationDate": { + "format": "date-time", + "description": "The creation date of configuration store.", + "type": "string", + "readOnly": true + }, + "endpoint": { + "description": "The DNS endpoint where the configuration store API will be available.", + "type": "string", + "readOnly": true + }, + "encryption": { + "$ref": "#/definitions/EncryptionProperties", + "description": "The encryption settings of the configuration store." + }, + "privateEndpointConnections": { + "description": "The list of private endpoint connections that are set up for this resource.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/PrivateEndpointConnectionReference" + } + }, + "publicNetworkAccess": { + "description": "Control permission for data plane traffic coming from public networks while private endpoint is enabled.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "PublicNetworkAccess", + "modelAsString": true + } + }, + "disableLocalAuth": { + "type": "boolean", + "description": "Disables all authentication methods other than AAD authentication." + } + } + }, + "EncryptionProperties": { + "type": "object", + "description": "The encryption settings for a configuration store.", + "properties": { + "keyVaultProperties": { + "$ref": "#/definitions/KeyVaultProperties", + "description": "Key vault properties." + } + } + }, + "PrivateEndpointConnectionReference": { + "type": "object", + "description": "A reference to a related private endpoint connection.", + "properties": { + "id": { + "description": "The resource ID.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The name of the resource.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The type of the resource.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "description": "The properties of a private endpoint connection.", + "x-ms-client-flatten": true + } + } + }, + "KeyVaultProperties": { + "type": "object", + "description": "Settings concerning key vault encryption for a configuration store.", + "properties": { + "keyIdentifier": { + "description": "The URI of the key vault key used to encrypt data.", + "type": "string" + }, + "identityClientId": { + "description": "The client id of the identity which will be used to access key vault.", + "type": "string" + } + } + }, + "ConfigurationStoreUpdateParameters": { + "description": "The parameters for updating a configuration store.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/ConfigurationStorePropertiesUpdateParameters", + "description": "The properties for updating a configuration store.", + "x-ms-client-flatten": true + }, + "identity": { + "$ref": "#/definitions/ResourceIdentity", + "description": "The managed identity information for the configuration store." + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "The SKU of the configuration store." + }, + "tags": { + "description": "The ARM resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "ConfigurationStorePropertiesUpdateParameters": { + "description": "The properties for updating a configuration store.", + "type": "object", + "properties": { + "encryption": { + "$ref": "#/definitions/EncryptionProperties", + "description": "The encryption settings of the configuration store." + }, + "disableLocalAuth": { + "type": "boolean", + "description": "Disables all authentication methods other than AAD authentication." + } + } + }, + "CheckNameAvailabilityParameters": { + "description": "Parameters used for checking whether a resource name is available.", + "required": [ + "name", + "type" + ], + "type": "object", + "properties": { + "name": { + "description": "The name to check for availability.", + "type": "string" + }, + "type": { + "description": "The resource type to check for name availability.", + "enum": [ + "Microsoft.AppConfiguration/configurationStores" + ], + "type": "string", + "x-ms-enum": { + "name": "ConfigurationResourceType", + "modelAsString": true + } + } + } + }, + "NameAvailabilityStatus": { + "description": "The result of a request to check the availability of a resource name.", + "type": "object", + "properties": { + "nameAvailable": { + "description": "The value indicating whether the resource name is available.", + "type": "boolean", + "readOnly": true + }, + "message": { + "description": "If any, the error message that provides more detail for the reason that the name is not available.", + "type": "string", + "readOnly": true + }, + "reason": { + "description": "If any, the reason that the name is not available.", + "type": "string", + "readOnly": true + } + } + }, + "ApiKeyListResult": { + "description": "The result of a request to list API keys.", + "type": "object", + "properties": { + "value": { + "description": "The collection value.", + "type": "array", + "items": { + "$ref": "#/definitions/ApiKey" + } + }, + "nextLink": { + "description": "The URI that can be used to request the next set of paged results.", + "type": "string" + } + } + }, + "ApiKey": { + "description": "An API key used for authenticating with a configuration store endpoint.", + "type": "object", + "properties": { + "id": { + "description": "The key ID.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "A name for the key describing its usage.", + "type": "string", + "readOnly": true + }, + "value": { + "description": "The value of the key that is used for authentication purposes.", + "type": "string", + "readOnly": true + }, + "connectionString": { + "description": "A connection string that can be used by supporting clients for authentication.", + "type": "string", + "readOnly": true + }, + "lastModified": { + "format": "date-time", + "description": "The last time any of the key's properties were modified.", + "type": "string", + "readOnly": true + }, + "readOnly": { + "description": "Whether this key can only be used for read operations.", + "type": "boolean", + "readOnly": true + } + } + }, + "RegenerateKeyParameters": { + "description": "The parameters used to regenerate an API key.", + "type": "object", + "properties": { + "id": { + "description": "The id of the key to regenerate.", + "type": "string" + } + } + }, + "KeyValueListResult": { + "description": "The result of a request to list key-values.", + "type": "object", + "properties": { + "value": { + "description": "The collection value.", + "type": "array", + "items": { + "$ref": "#/definitions/KeyValue" + } + }, + "nextLink": { + "description": "The URI that can be used to request the next set of paged results.", + "type": "string" + } + } + }, + "KeyValue": { + "description": "The key-value resource along with all resource properties.", + "type": "object", + "properties": { + "id": { + "description": "The resource ID.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The name of the resource.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The type of the resource.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/KeyValueProperties", + "description": "All key-value properties.", + "x-ms-client-flatten": true + } + }, + "x-ms-azure-resource": true + }, + "KeyValueProperties": { + "description": "All key-value properties.", + "type": "object", + "properties": { + "key": { + "description": "The primary identifier of a key-value.\r\nThe key is used in unison with the label to uniquely identify a key-value.", + "type": "string", + "readOnly": true + }, + "label": { + "description": "A value used to group key-values.\r\nThe label is used in unison with the key to uniquely identify a key-value.", + "type": "string", + "readOnly": true + }, + "value": { + "description": "The value of the key-value.", + "type": "string" + }, + "contentType": { + "description": "The content type of the key-value's value.\r\nProviding a proper content-type can enable transformations of values when they are retrieved by applications.", + "type": "string" + }, + "eTag": { + "description": "An ETag indicating the state of a key-value within a configuration store.", + "type": "string", + "readOnly": true + }, + "lastModified": { + "format": "date-time", + "description": "The last time a modifying operation was performed on the given key-value.", + "type": "string", + "readOnly": true + }, + "locked": { + "description": "A value indicating whether the key-value is locked.\r\nA locked key-value may not be modified until it is unlocked.", + "type": "boolean", + "readOnly": true + }, + "tags": { + "description": "A dictionary of tags that can help identify what a key-value may be applicable for.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "OperationDefinitionListResult": { + "description": "The result of a request to list configuration store operations.", + "type": "object", + "properties": { + "value": { + "description": "The collection value.", + "type": "array", + "items": { + "$ref": "#/definitions/OperationDefinition" + } + }, + "nextLink": { + "description": "The URI that can be used to request the next set of paged results.", + "type": "string" + } + } + }, + "OperationDefinition": { + "description": "The definition of a configuration store operation.", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}.", + "type": "string" + }, + "isDataAction": { + "description": "Indicates whether the operation is a data action", + "type": "boolean" + }, + "display": { + "$ref": "#/definitions/OperationDefinitionDisplay", + "description": "The display information for the configuration store operation." + }, + "origin": { + "description": "Origin of the operation", + "type": "string" + }, + "properties": { + "$ref": "#/definitions/OperationProperties", + "description": "Properties of the operation" + } + } + }, + "OperationDefinitionDisplay": { + "description": "The display information for a configuration store operation.", + "type": "object", + "properties": { + "provider": { + "description": "The resource provider name: Microsoft App Configuration.\"", + "type": "string", + "readOnly": true + }, + "resource": { + "description": "The resource on which the operation is performed.", + "type": "string" + }, + "operation": { + "description": "The operation that users can perform.", + "type": "string" + }, + "description": { + "description": "The description for the operation.", + "type": "string" + } + } + }, + "OperationProperties": { + "description": "Extra Operation properties", + "type": "object", + "properties": { + "serviceSpecification": { + "$ref": "#/definitions/ServiceSpecification", + "description": "Service specifications of the operation" + } + } + }, + "ServiceSpecification": { + "description": "Service specification payload", + "type": "object", + "properties": { + "logSpecifications": { + "description": "Specifications of the Log for Azure Monitoring", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/LogSpecification" + } + }, + "metricSpecifications": { + "description": "Specifications of the Metrics for Azure Monitoring", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/MetricSpecification" + } + } + } + }, + "LogSpecification": { + "description": "Specifications of the Log for Azure Monitoring", + "type": "object", + "properties": { + "name": { + "description": "Name of the log", + "type": "string" + }, + "displayName": { + "description": "Localized friendly display name of the log", + "type": "string" + }, + "blobDuration": { + "description": "Blob duration of the log", + "type": "string" + } + } + }, + "MetricSpecification": { + "description": "Specifications of the Metrics for Azure Monitoring", + "type": "object", + "properties": { + "name": { + "description": "Name of the metric", + "type": "string" + }, + "displayName": { + "description": "Localized friendly display name of the metric", + "type": "string" + }, + "displayDescription": { + "description": "Localized friendly description of the metric", + "type": "string" + }, + "unit": { + "description": "Unit that makes sense for the metric", + "type": "string" + }, + "aggregationType": { + "description": "Only provide one value for this field. Valid values: Average, Minimum, Maximum, Total, Count.", + "type": "string" + }, + "internalMetricName": { + "description": "Internal metric name.", + "type": "string" + }, + "dimensions": { + "description": "Dimensions of the metric", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/MetricDimension" + } + }, + "fillGapWithZero": { + "description": "Optional. If set to true, then zero will be returned for time duration where no metric is emitted/published.", + "type": "boolean" + } + } + }, + "MetricDimension": { + "description": "Specifications of the Dimension of metrics", + "type": "object", + "properties": { + "name": { + "description": "Name of the dimension", + "type": "string" + }, + "displayName": { + "description": "Localized friendly display name of the dimension", + "type": "string" + }, + "internalName": { + "description": "Internal name of the dimension.", + "type": "string" + } + } + }, + "ResourceIdentity": { + "type": "object", + "description": "An identity that can be associated with a resource.", + "properties": { + "type": { + "description": "The type of managed identity used. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user-assigned identities. The type 'None' will remove any identities.", + "enum": [ + "None", + "SystemAssigned", + "UserAssigned", + "SystemAssigned, UserAssigned" + ], + "type": "string", + "x-ms-enum": { + "name": "IdentityType", + "modelAsString": true + } + }, + "userAssignedIdentities": { + "description": "The list of user-assigned identities associated with the resource. The user-assigned identity dictionary keys will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/UserIdentity" + } + }, + "principalId": { + "description": "The principal id of the identity. This property will only be provided for a system-assigned identity.", + "type": "string", + "readOnly": true + }, + "tenantId": { + "description": "The tenant id associated with the resource's identity. This property will only be provided for a system-assigned identity.", + "type": "string", + "readOnly": true + } + } + }, + "UserIdentity": { + "type": "object", + "description": "A resource identity that is managed by the user of the service.", + "properties": { + "principalId": { + "description": "The principal ID of the user-assigned identity.", + "type": "string", + "readOnly": true + }, + "clientId": { + "description": "The client ID of the user-assigned identity.", + "type": "string", + "readOnly": true + } + } + }, + "Sku": { + "type": "object", + "required": [ + "name" + ], + "properties": { + "name": { + "description": "The SKU name of the configuration store.", + "type": "string" + } + }, + "description": "Describes a configuration store SKU." + }, + "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 + }, + "additionalInfo": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ErrorAdditionalInfo" + }, + "description": "The error additional info." + } + } + }, + "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" + } + } + }, + "ErrorAdditionalInfo": { + "properties": { + "type": { + "readOnly": true, + "type": "string", + "description": "The additional info type." + }, + "info": { + "readOnly": true, + "type": "object", + "description": "The additional info." + } + }, + "description": "The resource management error additional info." + }, + "PrivateEndpointConnectionListResult": { + "type": "object", + "description": "A list of private endpoint connections", + "properties": { + "value": { + "description": "The collection value.", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "nextLink": { + "description": "The URI that can be used to request the next set of paged results.", + "type": "string" + } + } + }, + "PrivateEndpointConnection": { + "description": "A private endpoint connection", + "type": "object", + "properties": { + "id": { + "description": "The resource ID.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The name of the resource.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The type of the resource.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "description": "The properties of a private endpoint.", + "x-ms-client-flatten": true + } + }, + "x-ms-azure-resource": true + }, + "PrivateEndpointConnectionProperties": { + "type": "object", + "description": "Properties of a private endpoint connection.", + "properties": { + "provisioningState": { + "enum": [ + "Creating", + "Updating", + "Deleting", + "Succeeded", + "Failed", + "Canceled" + ], + "type": "string", + "readOnly": true, + "description": "The provisioning status of the private endpoint connection.", + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpoint", + "description": "The resource of private endpoint." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionState", + "description": "A collection of information about the state of the connection between service consumer and provider." + } + }, + "required": [ + "privateLinkServiceConnectionState" + ] + }, + "PrivateEndpoint": { + "type": "object", + "description": "Private endpoint which a connection belongs to.", + "properties": { + "id": { + "description": "The resource Id for private endpoint", + "type": "string" + } + } + }, + "PrivateLinkServiceConnectionState": { + "description": "The state of a private link service connection.", + "type": "object", + "properties": { + "status": { + "enum": [ + "Pending", + "Approved", + "Rejected", + "Disconnected" + ], + "type": "string", + "description": "The private link service connection status.", + "x-ms-enum": { + "name": "ConnectionStatus", + "modelAsString": true + } + }, + "description": { + "type": "string", + "description": "The private link service connection description." + }, + "actionsRequired": { + "enum": [ + "None", + "Recreate" + ], + "type": "string", + "readOnly": true, + "description": "Any action that is required beyond basic workflow (approve/ reject/ disconnect)", + "x-ms-enum": { + "name": "ActionsRequired", + "modelAsString": true + } + } + } + }, + "PrivateLinkResourceListResult": { + "type": "object", + "description": "A list of private link resources.", + "properties": { + "value": { + "description": "The collection value.", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + } + }, + "nextLink": { + "description": "The URI that can be used to request the next set of paged results.", + "type": "string" + } + } + }, + "PrivateLinkResource": { + "type": "object", + "description": "A resource that supports private link capabilities.", + "properties": { + "id": { + "description": "The resource ID.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The name of the resource.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The type of the resource.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "Private link resource properties.", + "x-ms-client-flatten": true + } + } + }, + "PrivateLinkResourceProperties": { + "type": "object", + "properties": { + "groupId": { + "description": "The private link resource group id.", + "type": "string", + "readOnly": true + }, + "requiredMembers": { + "description": "The private link resource required member names.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "requiredZoneNames": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "description": "The list of required DNS zone names of the private link resource." + } + }, + "description": "Properties of a private link resource." + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "The Microsoft Azure subscription ID.", + "required": true, + "type": "string" + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group to which the container registry belongs.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ConfigStoreNameParameter": { + "name": "configStoreName", + "in": "path", + "description": "The name of the configuration store.", + "required": true, + "type": "string", + "maxLength": 50, + "minLength": 5, + "pattern": "^[a-zA-Z0-9_-]*$", + "x-ms-parameter-location": "method" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "The client API version.", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow" + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/CheckNameAvailable.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/CheckNameAvailable.json new file mode 100644 index 000000000000..542bf77cbb6f --- /dev/null +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/CheckNameAvailable.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "c80fb759-c965-4c6a-9110-9b2b2d038882", + "api-version": "2021-03-01-preview", + "checkNameAvailabilityParameters": { + "name": "contoso", + "type": "Microsoft.AppConfiguration/configurationStores" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": true, + "message": "The specified name is available.", + "reason": null + } + } + } +} diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/CheckNameNotAvailable.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/CheckNameNotAvailable.json new file mode 100644 index 000000000000..afee985c2aca --- /dev/null +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/CheckNameNotAvailable.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "c80fb759-c965-4c6a-9110-9b2b2d038882", + "api-version": "2021-03-01-preview", + "checkNameAvailabilityParameters": { + "name": "contoso", + "type": "Microsoft.AppConfiguration/configurationStores" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": false, + "reason": "AlreadyExists", + "message": "The specified name is already in use." + } + } + } +} diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresCreate.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresCreate.json new file mode 100644 index 000000000000..023e53d1d88a --- /dev/null +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresCreate.json @@ -0,0 +1,89 @@ +{ + "parameters": { + "subscriptionId": "c80fb759-c965-4c6a-9110-9b2b2d038882", + "resourceGroupName": "myResourceGroup", + "configStoreName": "contoso", + "api-version": "2021-03-01-preview", + "configStoreCreationParameters": { + "location": "westus", + "sku": { + "name": "Standard" + }, + "tags": { + "myTag": "myTagValue" + } + } + }, + "responses": { + "200": { + "body": { + "type": "Microsoft.AppConfiguration/configurationStores", + "properties": { + "provisioningState": "Succeeded", + "creationDate": "2018-04-24T16:30:55+00:00", + "endpoint": "https://contoso.azconfig.io", + "encryption": { + "keyVaultProperties": { + "keyIdentifier": null, + "identityClientId": null + } + }, + "disableLocalAuth": false, + "privateEndpointConnections": [] + }, + "systemData": { + "createdBy": "foo@contoso.com", + "createdByType": "User", + "createdAt": "2018-04-24T16:30:55+00:00", + "lastModifiedBy": "foo@contoso.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2018-04-24T16:30:55+00:00" + }, + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso", + "name": "contoso", + "location": "westus", + "tags": { + "myTag": "myTagValue" + } + } + }, + "201": { + "body": { + "type": "Microsoft.AppConfiguration/configurationStores", + "properties": { + "provisioningState": "Creating", + "creationDate": "2018-04-24T16:30:55+00:00", + "endpoint": "https://contoso.azconfig.io", + "encryption": { + "keyVaultProperties": { + "keyIdentifier": null, + "identityClientId": null + } + }, + "disableLocalAuth": false, + "privateEndpointConnections": [] + }, + "systemData": { + "createdBy": "foo@contoso.com", + "createdByType": "User", + "createdAt": "2018-04-24T16:30:55+00:00", + "lastModifiedBy": "foo@contoso.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2018-04-24T16:30:55+00:00" + }, + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso", + "name": "contoso", + "location": "westus", + "tags": { + "myTag": "myTagValue" + } + } + } + } +} diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresCreateKeyValue.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresCreateKeyValue.json new file mode 100644 index 000000000000..2b2a218ae999 --- /dev/null +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresCreateKeyValue.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "c80fb759-c965-4c6a-9110-9b2b2d038882", + "resourceGroupName": "myResourceGroup", + "configStoreName": "contoso", + "api-version": "2021-03-01-preview", + "keyValueName": "myKey$myLabel", + "keyValueParameters": { + "properties": { + "value": "myValue", + "tags": { + "tag1": "tagValue1", + "tag2": "tagValue2" + } + } + } + }, + "responses": { + "200": { + "body": { + "type": "Microsoft.AppConfiguration/configurationStores/keyValues", + "properties": { + "key": "myKey", + "label": "myLabel", + "value": "myValue", + "contentType": "", + "eTag": "IhDxoa8VkXxPsYsemBlxvV0d5fp", + "lastModified": "2020-06-23T06:42:24+00:00", + "locked": false, + "tags": { + "tag1": "tagValue1", + "tag2": "tagValue2" + } + }, + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso/keyValues/myKey$myLabel", + "name": "myKey$myLabel" + } + } + } +} diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresCreatePrivateEndpointConnection.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresCreatePrivateEndpointConnection.json new file mode 100644 index 000000000000..4d56f1bba2e7 --- /dev/null +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresCreatePrivateEndpointConnection.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "subscriptionId": "c80fb759-c965-4c6a-9110-9b2b2d038882", + "resourceGroupName": "myResourceGroup", + "configStoreName": "contoso", + "privateEndpointConnectionName": "myConnection", + "api-version": "2021-03-01-preview", + "privateEndpointConnection": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso/privateEndpointConnections/myConnection", + "name": "myConnection", + "type": "Microsoft.AppConfiguration/configurationStores/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/peexample01" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionsRequired": "None" + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso/privateEndpointConnections/myConnection", + "name": "myConnection", + "type": "Microsoft.AppConfiguration/configurationStores/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/peexample01" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresCreateWithIdentity.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresCreateWithIdentity.json new file mode 100644 index 000000000000..31f3bdc371eb --- /dev/null +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresCreateWithIdentity.json @@ -0,0 +1,117 @@ +{ + "parameters": { + "subscriptionId": "c80fb759-c965-4c6a-9110-9b2b2d038882", + "resourceGroupName": "myResourceGroup", + "configStoreName": "contoso", + "api-version": "2021-03-01-preview", + "configStoreCreationParameters": { + "location": "westus", + "sku": { + "name": "Standard" + }, + "tags": { + "myTag": "myTagValue" + }, + "identity": { + "type": "SystemAssigned, UserAssigned", + "userAssignedIdentities": { + "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourcegroups/myResourceGroup1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity2": {} + } + } + } + }, + "responses": { + "200": { + "body": { + "type": "Microsoft.AppConfiguration/configurationStores", + "properties": { + "provisioningState": "Succeeded", + "creationDate": "2018-04-24T16:30:55+00:00", + "endpoint": "https://contoso.azconfig.io", + "encryption": { + "keyVaultProperties": { + "keyIdentifier": null, + "identityClientId": null + } + }, + "disableLocalAuth": false, + "privateEndpointConnections": [] + }, + "systemData": { + "createdBy": "foo@contoso.com", + "createdByType": "User", + "createdAt": "2018-04-24T16:30:55+00:00", + "lastModifiedBy": "foo@contoso.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2018-04-24T16:30:55+00:00" + }, + "sku": { + "name": "Standard" + }, + "identity": { + "principalId": "AAAAAAAA-AAAA-AAAA-AAAA-AAAAAAAAAAAA", + "tenantId": "BBBBBBBB-BBBB-BBBB-BBBB-BBBBBBBBBBBB", + "type": "SystemAssigned, UserAssigned", + "userAssignedIdentities": { + "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourcegroups/myResourceGroup1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity2": { + "clientId": "CCCCCCCC-CCCC-CCCC-CCCC-CCCCCCCCCCCC", + "principalId": "DDDDDDDD-DDDD-DDDD-DDDD-DDDDDDDDDDDD" + } + } + }, + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso", + "name": "contoso", + "location": "westus", + "tags": { + "myTag": "myTagValue" + } + } + }, + "201": { + "body": { + "type": "Microsoft.AppConfiguration/configurationStores", + "properties": { + "provisioningState": "Creating", + "creationDate": "2018-04-24T16:30:55+00:00", + "endpoint": "https://contoso.azconfig.io", + "encryption": { + "keyVaultProperties": { + "keyIdentifier": null, + "identityClientId": null + } + }, + "disableLocalAuth": false, + "privateEndpointConnections": [] + }, + "systemData": { + "createdBy": "foo@contoso.com", + "createdByType": "User", + "createdAt": "2018-04-24T16:30:55+00:00", + "lastModifiedBy": "foo@contoso.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2018-04-24T16:30:55+00:00" + }, + "sku": { + "name": "Standard" + }, + "identity": { + "principalId": "AAAAAAAA-AAAA-AAAA-AAAA-AAAAAAAAAAAA", + "tenantId": "BBBBBBBB-BBBB-BBBB-BBBB-BBBBBBBBBBBB", + "type": "SystemAssigned, UserAssigned", + "userAssignedIdentities": { + "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourcegroups/myResourceGroup1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity2": { + "clientId": "CCCCCCCC-CCCC-CCCC-CCCC-CCCCCCCCCCCC", + "principalId": "DDDDDDDD-DDDD-DDDD-DDDD-DDDDDDDDDDDD" + } + } + }, + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso", + "name": "contoso", + "location": "westus", + "tags": { + "myTag": "myTagValue" + } + } + } + } +} diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresCreateWithLocalAuthDisabled.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresCreateWithLocalAuthDisabled.json new file mode 100644 index 000000000000..2f05858c93f6 --- /dev/null +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresCreateWithLocalAuthDisabled.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "subscriptionId": "c80fb759-c965-4c6a-9110-9b2b2d038882", + "resourceGroupName": "myResourceGroup", + "configStoreName": "contoso", + "api-version": "2021-03-01-preview", + "configStoreCreationParameters": { + "location": "westus", + "sku": { + "name": "Standard" + }, + "properties": { + "disableLocalAuth": true + } + } + }, + "responses": { + "200": { + "body": { + "type": "Microsoft.AppConfiguration/configurationStores", + "properties": { + "provisioningState": "Succeeded", + "creationDate": "2018-04-24T16:30:55+00:00", + "endpoint": "https://contoso.azconfig.io", + "encryption": { + "keyVaultProperties": { + "keyIdentifier": null, + "identityClientId": null + } + }, + "disableLocalAuth": true, + "privateEndpointConnections": [] + }, + "systemData": { + "createdBy": "foo@contoso.com", + "createdByType": "User", + "createdAt": "2018-04-24T16:30:55+00:00", + "lastModifiedBy": "foo@contoso.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2018-04-24T16:30:55+00:00" + }, + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso", + "name": "contoso", + "location": "westus", + "tags": {} + } + }, + "201": { + "body": { + "type": "Microsoft.AppConfiguration/configurationStores", + "properties": { + "provisioningState": "Creating", + "creationDate": "2018-04-24T16:30:55+00:00", + "endpoint": "https://contoso.azconfig.io", + "encryption": { + "keyVaultProperties": { + "keyIdentifier": null, + "identityClientId": null + } + }, + "disableLocalAuth": true, + "privateEndpointConnections": [] + }, + "systemData": { + "createdBy": "foo@contoso.com", + "createdByType": "User", + "createdAt": "2018-04-24T16:30:55+00:00", + "lastModifiedBy": "foo@contoso.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2018-04-24T16:30:55+00:00" + }, + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso", + "name": "contoso", + "location": "westus", + "tags": {} + } + } + } +} diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresDelete.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresDelete.json new file mode 100644 index 000000000000..0a477248976c --- /dev/null +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "c80fb759-c965-4c6a-9110-9b2b2d038882", + "resourceGroupName": "myResourceGroup", + "configStoreName": "contoso", + "api-version": "2021-03-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresDeleteKeyValue.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresDeleteKeyValue.json new file mode 100644 index 000000000000..943d8fc3f83c --- /dev/null +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresDeleteKeyValue.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "c80fb759-c965-4c6a-9110-9b2b2d038882", + "resourceGroupName": "myResourceGroup", + "configStoreName": "contoso", + "api-version": "2021-03-01-preview", + "keyValueName": "myKey$myLabel" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresDeletePrivateEndpointConnection.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresDeletePrivateEndpointConnection.json new file mode 100644 index 000000000000..dc7fb9468967 --- /dev/null +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresDeletePrivateEndpointConnection.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "c80fb759-c965-4c6a-9110-9b2b2d038882", + "resourceGroupName": "myResourceGroup", + "configStoreName": "contoso", + "privateEndpointConnectionName": "myConnection", + "api-version": "2021-03-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresGet.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresGet.json new file mode 100644 index 000000000000..c17e916b0782 --- /dev/null +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresGet.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "c80fb759-c965-4c6a-9110-9b2b2d038882", + "resourceGroupName": "myResourceGroup", + "configStoreName": "contoso", + "api-version": "2021-03-01-preview" + }, + "responses": { + "200": { + "body": { + "type": "Microsoft.AppConfiguration/configurationStores", + "properties": { + "provisioningState": "Succeeded", + "creationDate": "2018-04-24T16:30:55+00:00", + "endpoint": "https://contoso.azconfig.io", + "encryption": { + "keyVaultProperties": { + "keyIdentifier": null, + "identityClientId": null + } + }, + "disableLocalAuth": false, + "privateEndpointConnections": [], + "publicNetworkAccess": "Disabled" + }, + "systemData": { + "createdBy": "foo@contoso.com", + "createdByType": "User", + "createdAt": "2018-04-24T16:30:55+00:00", + "lastModifiedBy": "foo@contoso.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2018-04-24T16:30:55+00:00" + }, + "sku": { + "name": "Standard" + }, + "identity": { + "principalId": "AAAAAAAA-AAAA-AAAA-AAAA-AAAAAAAAAAAA", + "tenantId": "BBBBBBBB-BBBB-BBBB-BBBB-BBBBBBBBBBBB", + "type": "SystemAssigned" + }, + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso", + "name": "contoso", + "location": "westus", + "tags": {} + } + } + } +} diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresGetKeyValue.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresGetKeyValue.json new file mode 100644 index 000000000000..86a16ae5c725 --- /dev/null +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresGetKeyValue.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "c80fb759-c965-4c6a-9110-9b2b2d038882", + "resourceGroupName": "myResourceGroup", + "configStoreName": "contoso", + "api-version": "2021-03-01-preview", + "keyValueName": "myKey$myLabel" + }, + "responses": { + "200": { + "body": { + "type": "Microsoft.AppConfiguration/configurationStores/keyValues", + "properties": { + "key": "myKey", + "label": "myLabel", + "value": "myValue", + "contentType": "", + "eTag": "IhDxoa8VkXxPsYsemBlxvV0d5fp", + "lastModified": "2020-06-23T06:42:24+00:00", + "locked": false, + "tags": { + "tag1": "tagValue1", + "tag2": "tagValue2" + } + }, + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso/keyValues/myKey$myLabel", + "name": "myKey$myLabel" + } + } + } +} diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresGetPrivateEndpointConnection.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresGetPrivateEndpointConnection.json new file mode 100644 index 000000000000..f52033f58ee4 --- /dev/null +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresGetPrivateEndpointConnection.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "c80fb759-c965-4c6a-9110-9b2b2d038882", + "resourceGroupName": "myResourceGroup", + "configStoreName": "contoso", + "privateEndpointConnectionName": "myConnection", + "api-version": "2021-03-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso/privateEndpointConnections/myConnection", + "name": "myConnection", + "type": "Microsoft.AppConfiguration/configurationStores/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/peexample01" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresList.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresList.json new file mode 100644 index 000000000000..6346c606bbcc --- /dev/null +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresList.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "subscriptionId": "c80fb759-c965-4c6a-9110-9b2b2d038882", + "api-version": "2021-03-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "type": "Microsoft.AppConfiguration/configurationStores", + "properties": { + "provisioningState": "Succeeded", + "creationDate": "2018-04-24T16:30:55+00:00", + "endpoint": "https://contoso.azconfig.io", + "encryption": { + "keyVaultProperties": { + "keyIdentifier": null, + "identityClientId": null + } + }, + "disableLocalAuth": false, + "privateEndpointConnections": [], + "publicNetworkAccess": "Disabled" + }, + "systemData": { + "createdBy": "foo@contoso.com", + "createdByType": "User", + "createdAt": "2018-04-24T16:30:55+00:00", + "lastModifiedBy": "foo@contoso.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2018-04-24T16:30:55+00:00" + }, + "sku": { + "name": "Standard" + }, + "identity": { + "principalId": "AAAAAAAA-AAAA-AAAA-AAAA-AAAAAAAAAAAA", + "tenantId": "BBBBBBBB-BBBB-BBBB-BBBB-BBBBBBBBBBBB", + "type": "SystemAssigned" + }, + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso", + "name": "contoso", + "location": "westus", + "tags": {} + }, + { + "type": "Microsoft.AppConfiguration/configurationStores", + "properties": { + "provisioningState": "Succeeded", + "creationDate": "2018-04-24T23:06:59+00:00", + "endpoint": "https://contoso2.azconfig.io", + "encryption": { + "keyVaultProperties": { + "keyIdentifier": null, + "identityClientId": null + } + }, + "disableLocalAuth": false, + "privateEndpointConnections": [], + "publicNetworkAccess": "Disabled" + }, + "systemData": { + "createdBy": "foo@contoso.com", + "createdByType": "User", + "createdAt": "2018-04-24T16:30:55+00:00", + "lastModifiedBy": "foo@contoso.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2018-04-24T16:30:55+00:00" + }, + "sku": { + "name": "Standard" + }, + "identity": { + "principalId": "CCCCCCCC-CCCC-CCCC-CCCC-CCCCCCCCCCCC", + "tenantId": "BBBBBBBB-BBBB-BBBB-BBBB-BBBBBBBBBBBB", + "type": "SystemAssigned" + }, + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso2", + "name": "contoso2", + "location": "westus", + "tags": {} + } + ] + } + } + } +} diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresListByResourceGroup.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresListByResourceGroup.json new file mode 100644 index 000000000000..af82fa684bc3 --- /dev/null +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresListByResourceGroup.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "subscriptionId": "c80fb759-c965-4c6a-9110-9b2b2d038882", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "type": "Microsoft.AppConfiguration/configurationStores", + "properties": { + "provisioningState": "Succeeded", + "creationDate": "2018-04-24T16:30:55+00:00", + "endpoint": "https://contoso.azconfig.io", + "encryption": { + "keyVaultProperties": { + "keyIdentifier": null, + "identityClientId": null + } + }, + "disableLocalAuth": false, + "privateEndpointConnections": [], + "publicNetworkAccess": "Disabled" + }, + "systemData": { + "createdBy": "foo@contoso.com", + "createdByType": "User", + "createdAt": "2018-04-24T16:30:55+00:00", + "lastModifiedBy": "foo@contoso.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2018-04-24T16:30:55+00:00" + }, + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso", + "name": "contoso", + "location": "westus", + "tags": {} + }, + { + "type": "Microsoft.AppConfiguration/configurationStores", + "properties": { + "provisioningState": "Succeeded", + "creationDate": "2018-04-24T23:06:59+00:00", + "endpoint": "https://contoso2.azconfig.io", + "encryption": { + "keyVaultProperties": { + "keyIdentifier": null, + "identityClientId": null + } + }, + "disableLocalAuth": false, + "privateEndpointConnections": [], + "publicNetworkAccess": "Disabled" + }, + "systemData": { + "createdBy": "foo@contoso.com", + "createdByType": "User", + "createdAt": "2018-04-24T16:30:55+00:00", + "lastModifiedBy": "foo@contoso.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2018-04-24T16:30:55+00:00" + }, + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso2", + "name": "contoso2", + "location": "westus", + "tags": {} + } + ] + } + } + } +} diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresListKeyValues.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresListKeyValues.json new file mode 100644 index 000000000000..351b1600ac5f --- /dev/null +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresListKeyValues.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "subscriptionId": "c80fb759-c965-4c6a-9110-9b2b2d038882", + "resourceGroupName": "myResourceGroup", + "configStoreName": "contoso", + "api-version": "2021-03-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "type": "Microsoft.AppConfiguration/configurationStores/keyValues", + "properties": { + "key": "myKey", + "label": "myLabel", + "value": "myValue", + "contentType": "", + "eTag": "IhDxoa8VkXxPsYsemBlxvV0d5fp", + "lastModified": "2020-06-23T06:42:24+00:00", + "locked": false, + "tags": { + "tag1": "tagValue1", + "tag2": "tagValue2" + } + }, + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso/keyValues/myKey$myLabel", + "name": "myKey$myLabel" + }, + { + "type": "Microsoft.AppConfiguration/configurationStores/keyValues", + "properties": { + "key": "myKey2", + "label": "myLabel2", + "value": "myValue", + "contentType": "", + "eTag": "IfDxoa8VkXxPsYsemBlxvV0d5fp", + "lastModified": "2020-06-23T06:42:24+00:00", + "locked": false, + "tags": { + "tag1": "tagValue1", + "tag2": "tagValue2" + } + }, + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso/keyValues/myKey2$myLabel2", + "name": "myKey2$myLabel2" + } + ] + } + } + } +} diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresListKeys.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresListKeys.json new file mode 100644 index 000000000000..aacc39340a3d --- /dev/null +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresListKeys.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "c80fb759-c965-4c6a-9110-9b2b2d038882", + "resourceGroupName": "myResourceGroup", + "configStoreName": "contoso", + "api-version": "2021-03-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "439AD01B4BE67DB1", + "name": "Primary", + "value": "000000000000000000000000000000000000000000000000000000", + "connectionString": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx", + "lastModified": "2018-04-24T16:30:54+00:00", + "readOnly": false + }, + { + "id": "CB45E100456857B9", + "name": "Secondary", + "value": "000000000000000000000000000000000000000000000000000000", + "connectionString": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx", + "lastModified": "2018-04-24T16:30:54+00:00", + "readOnly": false + }, + { + "id": "B3AC55B7E71431A9", + "name": "Primary Read Only", + "value": "000000000000000000000000000000000000000000000000000000", + "connectionString": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx", + "lastModified": "2018-04-24T16:30:54+00:00", + "readOnly": true + }, + { + "id": "E2AF6A9A89DCC177", + "name": "Secondary Read Only", + "value": "000000000000000000000000000000000000000000000000000000", + "connectionString": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx", + "lastModified": "2018-04-24T16:30:54+00:00", + "readOnly": true + } + ] + } + } + } +} diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresListPrivateEndpointConnections.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresListPrivateEndpointConnections.json new file mode 100644 index 000000000000..4898c8b23017 --- /dev/null +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresListPrivateEndpointConnections.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "c80fb759-c965-4c6a-9110-9b2b2d038882", + "resourceGroupName": "myResourceGroup", + "configStoreName": "contoso", + "api-version": "2021-03-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso/privateEndpointConnections/myConnection", + "name": "myConnection", + "type": "Microsoft.AppConfiguration/configurationStores/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/peexample01" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionsRequired": "None" + } + } + } + ] + } + } + } +} diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresRegenerateKey.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresRegenerateKey.json new file mode 100644 index 000000000000..a694875bf16f --- /dev/null +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresRegenerateKey.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "c80fb759-c965-4c6a-9110-9b2b2d038882", + "resourceGroupName": "myResourceGroup", + "configStoreName": "contoso", + "api-version": "2021-03-01-preview", + "regenerateKeyParameters": { + "id": "439AD01B4BE67DB1" + } + }, + "responses": { + "200": { + "body": { + "id": "439AD01B4BE67DB1", + "name": "Primary", + "value": "000000000000000000000000000000000000000000000000000000", + "connectionString": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx", + "lastModified": "2018-04-26T22:59:24.2370906+00:00", + "readOnly": false + } + } + } +} diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresUpdate.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresUpdate.json new file mode 100644 index 000000000000..4ed926e41263 --- /dev/null +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresUpdate.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "subscriptionId": "c80fb759-c965-4c6a-9110-9b2b2d038882", + "resourceGroupName": "myResourceGroup", + "configStoreName": "contoso", + "api-version": "2021-03-01-preview", + "configStoreUpdateParameters": { + "tags": { + "Category": "Marketing" + }, + "sku": { + "name": "Standard" + } + } + }, + "responses": { + "200": { + "body": { + "type": "Microsoft.AppConfiguration/configurationStores", + "properties": { + "provisioningState": "Succeeded", + "creationDate": "2018-04-24T16:30:55+00:00", + "endpoint": "https://contoso.azconfig.io", + "encryption": { + "keyVaultProperties": { + "keyIdentifier": null, + "identityClientId": null + } + }, + "disableLocalAuth": false, + "privateEndpointConnections": [], + "publicNetworkAccess": "Disabled" + }, + "systemData": { + "createdBy": "foo@contoso.com", + "createdByType": "User", + "createdAt": "2018-04-24T16:30:55+00:00", + "lastModifiedBy": "foo@contoso.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2018-04-24T16:30:55+00:00" + }, + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso", + "name": "contoso", + "location": "westus", + "tags": { + "Category": "Marketing" + } + } + }, + "201": { + "body": { + "type": "Microsoft.AppConfiguration/configurationStores", + "properties": { + "provisioningState": "Updating", + "creationDate": "2018-04-24T16:30:55+00:00", + "endpoint": "https://contoso.azconfig.io", + "encryption": { + "keyVaultProperties": { + "keyIdentifier": null, + "identityClientId": null + } + }, + "disableLocalAuth": false, + "privateEndpointConnections": [], + "publicNetworkAccess": "Disabled" + }, + "systemData": { + "createdBy": "foo@contoso.com", + "createdByType": "User", + "createdAt": "2018-04-24T16:30:55+00:00", + "lastModifiedBy": "foo@contoso.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2018-04-24T16:30:55+00:00" + }, + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso", + "name": "contoso", + "location": "westus", + "tags": { + "Category": "Marketing" + } + } + } + } +} diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresUpdateDisableLocalAuth.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresUpdateDisableLocalAuth.json new file mode 100644 index 000000000000..24e6a0965146 --- /dev/null +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresUpdateDisableLocalAuth.json @@ -0,0 +1,86 @@ +{ + "parameters": { + "subscriptionId": "c80fb759-c965-4c6a-9110-9b2b2d038882", + "resourceGroupName": "myResourceGroup", + "configStoreName": "contoso", + "api-version": "2021-03-01-preview", + "configStoreUpdateParameters": { + "sku": { + "name": "Standard" + }, + "properties": { + "disableLocalAuth": true + } + } + }, + "responses": { + "200": { + "body": { + "type": "Microsoft.AppConfiguration/configurationStores", + "properties": { + "provisioningState": "Succeeded", + "creationDate": "2018-04-24T16:30:55+00:00", + "endpoint": "https://contoso.azconfig.io", + "encryption": { + "keyVaultProperties": { + "keyIdentifier": null, + "identityClientId": null + } + }, + "disableLocalAuth": true, + "privateEndpointConnections": [], + "publicNetworkAccess": "Disabled" + }, + "systemData": { + "createdBy": "foo@contoso.com", + "createdByType": "User", + "createdAt": "2018-04-24T16:30:55+00:00", + "lastModifiedBy": "foo@contoso.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2018-04-24T16:30:55+00:00" + }, + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso", + "name": "contoso", + "location": "westus", + "tags": {} + } + }, + "201": { + "body": { + "type": "Microsoft.AppConfiguration/configurationStores", + "properties": { + "provisioningState": "Updating", + "creationDate": "2018-04-24T16:30:55+00:00", + "endpoint": "https://contoso.azconfig.io", + "encryption": { + "keyVaultProperties": { + "keyIdentifier": null, + "identityClientId": null + } + }, + "disableLocalAuth": true, + "privateEndpointConnections": [], + "publicNetworkAccess": "Disabled" + }, + "systemData": { + "createdBy": "foo@contoso.com", + "createdByType": "User", + "createdAt": "2018-04-24T16:30:55+00:00", + "lastModifiedBy": "foo@contoso.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2018-04-24T16:30:55+00:00" + }, + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso", + "name": "contoso", + "location": "westus", + "tags": {} + } + } + } +} diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresUpdateWithIdentity.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresUpdateWithIdentity.json new file mode 100644 index 000000000000..716ddc4795f1 --- /dev/null +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/ConfigurationStoresUpdateWithIdentity.json @@ -0,0 +1,118 @@ +{ + "parameters": { + "subscriptionId": "c80fb759-c965-4c6a-9110-9b2b2d038882", + "resourceGroupName": "myResourceGroup", + "configStoreName": "contoso", + "api-version": "2021-03-01-preview", + "configStoreUpdateParameters": { + "tags": { + "Category": "Marketing" + }, + "sku": { + "name": "Standard" + }, + "identity": { + "type": "SystemAssigned, UserAssigned", + "userAssignedIdentities": { + "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourcegroups/myResourceGroup1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity2": {} + } + } + } + }, + "responses": { + "200": { + "body": { + "type": "Microsoft.AppConfiguration/configurationStores", + "properties": { + "provisioningState": "Succeeded", + "creationDate": "2018-04-24T16:30:55+00:00", + "endpoint": "https://contoso.azconfig.io", + "encryption": { + "keyVaultProperties": { + "keyIdentifier": null, + "identityClientId": null + } + }, + "disableLocalAuth": false, + "privateEndpointConnections": [], + "publicNetworkAccess": "Disabled" + }, + "systemData": { + "createdBy": "foo@contoso.com", + "createdByType": "User", + "createdAt": "2018-04-24T16:30:55+00:00", + "lastModifiedBy": "foo@contoso.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2018-04-24T16:30:55+00:00" + }, + "sku": { + "name": "Standard" + }, + "identity": { + "principalId": "AAAAAAAA-AAAA-AAAA-AAAA-AAAAAAAAAAAA", + "tenantId": "BBBBBBBB-BBBB-BBBB-BBBB-BBBBBBBBBBBB", + "type": "SystemAssigned, UserAssigned", + "userAssignedIdentities": { + "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourcegroups/myResourceGroup1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity2": { + "clientId": "CCCCCCCC-CCCC-CCCC-CCCC-CCCCCCCCCCCC", + "principalId": "DDDDDDDD-DDDD-DDDD-DDDD-DDDDDDDDDDDD" + } + } + }, + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso", + "name": "contoso", + "location": "westus", + "tags": { + "Category": "Marketing" + } + } + }, + "201": { + "body": { + "type": "Microsoft.AppConfiguration/configurationStores", + "properties": { + "provisioningState": "Updating", + "creationDate": "2018-04-24T16:30:55+00:00", + "endpoint": "https://contoso.azconfig.io", + "encryption": { + "keyVaultProperties": { + "keyIdentifier": null, + "identityClientId": null + } + }, + "disableLocalAuth": false, + "privateEndpointConnections": [], + "publicNetworkAccess": "Disabled" + }, + "systemData": { + "createdBy": "foo@contoso.com", + "createdByType": "User", + "createdAt": "2018-04-24T16:30:55+00:00", + "lastModifiedBy": "foo@contoso.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2018-04-24T16:30:55+00:00" + }, + "sku": { + "name": "Standard" + }, + "identity": { + "principalId": "AAAAAAAA-AAAA-AAAA-AAAA-AAAAAAAAAAAA", + "tenantId": "BBBBBBBB-BBBB-BBBB-BBBB-BBBBBBBBBBBB", + "type": "SystemAssigned, UserAssigned", + "userAssignedIdentities": { + "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourcegroups/myResourceGroup1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity2": { + "clientId": "CCCCCCCC-CCCC-CCCC-CCCC-CCCCCCCCCCCC", + "principalId": "DDDDDDDD-DDDD-DDDD-DDDD-DDDDDDDDDDDD" + } + } + }, + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso", + "name": "contoso", + "location": "westus", + "tags": { + "Category": "Marketing" + } + } + } + } +} diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/PrivateLinkResourceGet.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/PrivateLinkResourceGet.json new file mode 100644 index 000000000000..875efbf05cda --- /dev/null +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/PrivateLinkResourceGet.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "c80fb759-c965-4c6a-9110-9b2b2d038882", + "resourceGroupName": "myResourceGroup", + "configStoreName": "contoso", + "api-version": "2021-03-01-preview", + "groupName": "configurationStores" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso/privateLinkResources/configurationStores", + "name": "configurationStores", + "type": "Microsoft.AppConfiguraiton/configurationStores/privateLinkResources", + "properties": { + "groupId": "configurationStores", + "requiredMembers": [ + "configurationStores" + ], + "requiredZoneNames": [ + "privatelink.azconfig.io" + ] + } + } + } + } +} diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/PrivateLinkResourcesListByConfigurationStore.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/PrivateLinkResourcesListByConfigurationStore.json new file mode 100644 index 000000000000..d36a79276e0c --- /dev/null +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2021-03-01-preview/examples/PrivateLinkResourcesListByConfigurationStore.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "c80fb759-c965-4c6a-9110-9b2b2d038882", + "resourceGroupName": "myResourceGroup", + "configStoreName": "contoso", + "api-version": "2021-03-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso/privateLinkResources/configurationStores", + "name": "configurationStores", + "type": "Microsoft.AppConfiguraiton/configurationStores/privateLinkResources", + "properties": { + "groupId": "configurationStores", + "requiredMembers": [ + "configurationStores" + ], + "requiredZoneNames": [ + "privatelink.azconfig.io" + ] + } + } + ] + } + } + } +} diff --git a/specification/appconfiguration/resource-manager/readme.azureresourceschema.md b/specification/appconfiguration/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 96fcf4bd50da..000000000000 --- a/specification/appconfiguration/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,72 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-appconfiguration-2020-07-01-preview - - tag: schema-appconfiguration-2020-06-01 - - tag: schema-appconfiguration-2019-11-01-preview - - tag: schema-appconfiguration-2019-10-01 - - tag: schema-appconfiguration-2019-02-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-appconfiguration-2020-07-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-appconfiguration-2020-07-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.AppConfiguration/preview/2020-07-01-preview/appconfiguration.json - -``` - -### Tag: schema-appconfiguration-2020-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-appconfiguration-2020-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.AppConfiguration/stable/2020-06-01/appconfiguration.json - -``` - -### Tag: schema-appconfiguration-2019-11-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-appconfiguration-2019-11-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.AppConfiguration/preview/2019-11-01-preview/appconfiguration.json - -``` - -### Tag: schema-appconfiguration-2019-10-01 and azureresourceschema - -``` yaml $(tag) == 'schema-appconfiguration-2019-10-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.AppConfiguration/stable/2019-10-01/appconfiguration.json - -``` - -### Tag: schema-appconfiguration-2019-02-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-appconfiguration-2019-02-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.AppConfiguration/preview/2019-02-01-preview/appconfiguration.json - -``` diff --git a/specification/appconfiguration/resource-manager/readme.go.md b/specification/appconfiguration/resource-manager/readme.go.md index cdcf3496c0b5..e69b52caf805 100644 --- a/specification/appconfiguration/resource-manager/readme.go.md +++ b/specification/appconfiguration/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: appconfiguration clear-output-folder: true ``` @@ -13,6 +13,7 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-2021-03-01-preview - tag: package-2020-07-01-preview - tag: package-2020-06-01 - tag: package-2019-11-01-preview @@ -20,6 +21,15 @@ batch: - tag: package-2019-02-01-preview ``` +### Tag: package-2021-03-01-preview and go + +These settings apply only when `--tag=package-2021-03-01-preview --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2021-03-01-preview' && $(go) +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2021-03-01-preview/$(namespace) +``` + ### Tag: package-2020-07-01-preview and go These settings apply only when `--tag=package-2020-07-01-preview --go` is specified on the command line. diff --git a/specification/appconfiguration/resource-manager/readme.md b/specification/appconfiguration/resource-manager/readme.md index 52b3f08fda91..9ff6fa69e34d 100644 --- a/specification/appconfiguration/resource-manager/readme.md +++ b/specification/appconfiguration/resource-manager/readme.md @@ -26,7 +26,16 @@ These are the global settings for the AppConfiguration API. ``` yaml openapi-type: arm -tag: package-2020-07-01-preview +tag: package-2021-03-01-preview +``` + +### Tag: package-2021-03-01-preview + +These settings apply only when `--tag=2021-03-01-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2021-03-01-preview' +input-file: +- Microsoft.AppConfiguration/preview/2021-03-01-preview/appconfiguration.json ``` ### Tag: package-2020-07-01-preview @@ -96,8 +105,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_app_configuration'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js appconfiguration/resource-manager ``` ## C# @@ -140,9 +147,19 @@ directive: from: appconfiguration.json where: $.definitions.KeyValueProperties.properties.locked reason: This is data plane level information proxied through the RP and cannot be changed. + - suppress: EnumInsteadOfBoolean + from: appconfiguration.json + where: $.definitions.ConfigurationStoreProperties.properties.disableLocalAuth + reason: This is a standardized ARM API. + - suppress: EnumInsteadOfBoolean + from: appconfiguration.json + where: $.definitions.ConfigurationStorePropertiesUpdateParameters.properties.disableLocalAuth + reason: This is a standardized ARM API. + - suppress: EnumInsteadOfBoolean + from: appconfiguration.json + where: $.definitions.OperationDefinition.properties.isDataAction + reason: This is a standardized ARM API. ``` -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/applicationinsights/data-plane/Monitor.Exporters/preview/2020-09-15_Preview/swagger.json b/specification/applicationinsights/data-plane/Monitor.Exporters/preview/2020-09-15_Preview/swagger.json index ae3028af5321..1e150680fec3 100644 --- a/specification/applicationinsights/data-plane/Monitor.Exporters/preview/2020-09-15_Preview/swagger.json +++ b/specification/applicationinsights/data-plane/Monitor.Exporters/preview/2020-09-15_Preview/swagger.json @@ -6,7 +6,7 @@ "description": "This document describes the protocol for client requests and responses to the data collection endpoint." }, "x-ms-parameterized-host": { - "hostTemplate": "{Host}/v2/", + "hostTemplate": "{Host}/v2", "useSchemePrefix": false, "parameters": [ { diff --git a/specification/applicationinsights/data-plane/readme.go.md b/specification/applicationinsights/data-plane/readme.go.md index 3c88242b48d2..c9574f7cd0d1 100644 --- a/specification/applicationinsights/data-plane/readme.go.md +++ b/specification/applicationinsights/data-plane/readme.go.md @@ -3,7 +3,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: insights clear-output-folder: true ``` diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/components_API.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/components_API.json index d890209a607b..6930dd17bec0 100644 --- a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/components_API.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/components_API.json @@ -601,6 +601,14 @@ "name": "IngestionMode", "modelAsString": true } + }, + "DisableLocalAuth": { + "type": "boolean", + "description": "Disable Non-AAD based Auth." + }, + "ForceCustomerStorageForProfiler": { + "type": "boolean", + "description": "Force users to create their own storage account for profiler and debugger." } }, "required": [ diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-10-05-preview/examples/WebTestCreateBasic.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-10-05-preview/examples/WebTestCreateBasic.json new file mode 100644 index 000000000000..cb68f78aeadf --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-10-05-preview/examples/WebTestCreateBasic.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "api-version": "2020-10-05-preview", + "subscriptionId": "subid", + "resourceGroupName": "my-resource-group", + "webTestName": "my-webtest-my-component", + "WebTestDefinition": { + "location": "South Central US", + "properties": { + "Name": "my-webtest-my-component", + "SyntheticMonitorId": "my-webtest-my-component", + "Description": "Ping web test alert for mytestwebapp", + "Enabled": true, + "Frequency": 900, + "Timeout": 120, + "Kind": "basic", + "RetryEnabled": true, + "ValidationRules": { + "ExpectedHttpStatusCode": 200, + "SSLCheck": true + }, + "Request": { + "ParseDependentRequests": true, + "RequestUrl": "https://www.bing.com" + }, + "Locations": [ + { + "Id": "us-fl-mia-edge" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/webtests/my-webtest-my-component", + "name": "my-webtest-my-component", + "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.Web/sites/mytestwebapp": "Resource" + }, + "properties": { + "Name": "my-webtest-my-component", + "SyntheticMonitorId": "my-webtest-my-component", + "Description": "Ping web test alert for mytestwebapp", + "Enabled": true, + "Frequency": 900, + "Timeout": 120, + "Kind": "basic", + "RetryEnabled": true, + "Locations": [ + { + "Id": "us-fl-mia-edge" + } + ], + "ValidationRules": { + "ExpectedHttpStatusCode": 200, + "SSLCheck": true + }, + "Request": { + "ParseDependentRequests": true, + "RequestUrl": "https://www.bing.com" + }, + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-10-05-preview/examples/WebTestCreateStandard.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-10-05-preview/examples/WebTestCreateStandard.json new file mode 100644 index 000000000000..8c18b5e129f7 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-10-05-preview/examples/WebTestCreateStandard.json @@ -0,0 +1,94 @@ +{ + "parameters": { + "api-version": "2020-10-05-preview", + "subscriptionId": "subid", + "resourceGroupName": "my-resource-group", + "webTestName": "my-webtest-my-component", + "WebTestDefinition": { + "location": "South Central US", + "properties": { + "Name": "my-webtest-my-component", + "SyntheticMonitorId": "my-webtest-my-component", + "Description": "Ping web test alert for mytestwebapp", + "Enabled": true, + "Frequency": 900, + "Timeout": 120, + "Kind": "standard", + "RetryEnabled": true, + "Request": { + "RequestUrl": "https://bing.com", + "Headers": [ + { + "key": "Content-Language", + "value": "de-DE" + }, + { + "key": "Accept-Language", + "value": "de-DE" + } + ], + "HttpVerb": "POST", + "RequestBody": "SGVsbG8gd29ybGQ=" + }, + "ValidationRules": { + "SSLCheck": true, + "SSLCertRemainingLifetimeCheck": 100 + }, + "Locations": [ + { + "Id": "us-fl-mia-edge" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/webtests/my-webtest-my-component", + "name": "my-webtest-my-component", + "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.Web/sites/mytestwebapp": "Resource" + }, + "properties": { + "Name": "my-webtest-my-component", + "SyntheticMonitorId": "my-webtest-my-component", + "Description": "Ping web test alert for mytestwebapp", + "Enabled": true, + "Frequency": 900, + "Timeout": 120, + "Kind": "standard", + "RetryEnabled": true, + "Locations": [ + { + "Id": "us-fl-mia-edge" + } + ], + "Request": { + "RequestUrl": "https://bing.com", + "Headers": [ + { + "key": "Content-Language", + "value": "de-DE" + }, + { + "key": "Accept-Language", + "value": "de-DE" + } + ], + "HttpVerb": "POST", + "RequestBody": "SGVsbG8gd29ybGQ=" + }, + "ValidationRules": { + "SSLCheck": true, + "SSLCertRemainingLifetimeCheck": 100 + }, + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-10-05-preview/webTests_API.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-10-05-preview/webTests_API.json index cf128cdb0556..6bd7e2c28516 100644 --- a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-10-05-preview/webTests_API.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-10-05-preview/webTests_API.json @@ -175,6 +175,12 @@ "webTestCreate": { "$ref": "./examples/WebTestCreate.json" }, + "webTestCreateBasic": { + "$ref": "./examples/WebTestCreateBasic.json" + }, + "webTestCreateStandard": { + "$ref": "./examples/WebTestCreateStandard.json" + }, "webTestUpdate": { "$ref": "./examples/WebTestUpdate.json" } @@ -529,41 +535,47 @@ } } }, - "ContentValidation": { + "ValidationRules": { "type": "object", - "description": "The collection of content validation properties", + "description": "The collection of validation rule properties", "properties": { - "ContentMatch": { - "type": "string", - "description": "Content to look for in the return of the WebTest." + "ContentValidation": { + "type": "object", + "description": "The collection of content validation properties", + "properties": { + "ContentMatch": { + "type": "string", + "description": "Content to look for in the return of the WebTest. Must not be null or empty." + }, + "IgnoreCase": { + "type": "boolean", + "description": "When set, this value makes the ContentMatch validation case insensitive." + }, + "PassIfTextFound": { + "type": "boolean", + "description": "When true, validation will pass if there is a match for the ContentMatch string. If false, validation will fail if there is a match" + } + } }, - "IgnoreCase": { + "SSLCheck": { "type": "boolean", - "description": "When set, this value makes the ContentMatch validation case insensitive." + "description": "Checks to see if the SSL cert is still valid." }, - "PassIfTextFound": { + "SSLCertRemainingLifetimeCheck": { + "type": "integer", + "format": "int32", + "description": "A number of days to check still remain before the the existing SSL cert expires. Value must be positive and the SSLCheck must be set to true." + }, + "ExpectedHttpStatusCode": { + "type": "integer", + "format": "int32", + "description": "Validate that the WebTest returns the http status code provided." + }, + "IgnoreHttpsStatusCode": { "type": "boolean", - "description": "When true, validation will pass if there is a match for the ContentMatch string. If false, validation will fail if there is a match" + "description": "When set, validation will ignore the status code." } } - }, - "SSLCheck": { - "type": "boolean", - "description": "Checks to see if the SSL cert is still valid." - }, - "SSLCertRemainingLifetimeCheck": { - "type": "integer", - "format": "int32", - "description": "A number of days to check still remain before the the existing SSL cert expires." - }, - "ExpectedHttpStatusCode": { - "type": "integer", - "format": "int32", - "description": "Validate that the WebTest returns the http status code provided." - }, - "IgnoreHttpsStatusCode": { - "type": "boolean", - "description": "When set, validation will ignore the status code." } } }, diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2021-03-03-preview/diagnosticServicesToken_API.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2021-03-03-preview/diagnosticServicesToken_API.json new file mode 100644 index 000000000000..fb6feeac1045 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2021-03-03-preview/diagnosticServicesToken_API.json @@ -0,0 +1,134 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApplicationInsightsManagementClient", + "description": "Azure Application Insights client for application insights diagnostic services token.", + "version": "2021-03-03-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": { + "/{resourceUri}/providers/Microsoft.Insights/generateDiagnosticServiceReadOnlyToken": { + "post": { + "tags": [ + "generateDiagnosticServiceReadOnlyToken" + ], + "operationId": "DiagnosticServiceToken_GetReadOnly", + "description": "Gets an read-only access token for application insights diagnostic service data.", + "parameters": [ + { + "$ref": "#/parameters/ResourceUriParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed .", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Successful response containing the application insights diagnostic services token.", + "schema": { + "$ref": "#/definitions/DiagnosticServicesTokenResponse" + } + } + }, + "x-ms-examples": { + "Get diagnostic services read-only token for resource": { + "$ref": "./examples/DiagnosticServicesReadOnlyTokenPost.json" + } + } + } + }, + "/{resourceUri}/providers/Microsoft.Insights/generateDiagnosticServiceReadWriteToken": { + "post": { + "tags": [ + "generateDiagnosticServiceReadWriteToken" + ], + "operationId": "DiagnosticServiceToken_GetReadWrite", + "description": "Gets an read-write access token for application insights diagnostic service data.", + "parameters": [ + { + "$ref": "#/parameters/ResourceUriParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed .", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Successful response containing the application insights diagnostic services token.", + "schema": { + "$ref": "#/definitions/DiagnosticServicesTokenResponse" + } + } + }, + "x-ms-examples": { + "Get diagnostic services read-write token for resource": { + "$ref": "./examples/DiagnosticServicesReadWriteTokenPost.json" + } + } + } + } + }, + "definitions": { + "DiagnosticServicesTokenResponse": { + "type": "object", + "properties": { + "token": { + "x-ms-secret": true, + "type": "string", + "description": "JWT token for accessing application insights diagnostic service data." + } + }, + "description": "The response to a diagnostic services token query." + } + }, + "parameters": { + "ResourceUriParameter": { + "name": "resourceUri", + "in": "path", + "required": true, + "type": "string", + "description": "The identifier of the resource.", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2021-03-03-preview/examples/DiagnosticServicesReadOnlyTokenPost.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2021-03-03-preview/examples/DiagnosticServicesReadOnlyTokenPost.json new file mode 100644 index 000000000000..128e9d9f65bd --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2021-03-03-preview/examples/DiagnosticServicesReadOnlyTokenPost.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "resourceUri": "subscriptions/df602c9c-7aa0-407d-a6fb-eb20c8bd1192/resourceGroups/FabrikamFiberApp/providers/microsoft.insights/components/CustomAvailabilityTest/", + "api-version": "2021-03-03-preview" + }, + "responses": { + "200": { + "body": { + "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c" + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2021-03-03-preview/examples/DiagnosticServicesReadWriteTokenPost.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2021-03-03-preview/examples/DiagnosticServicesReadWriteTokenPost.json new file mode 100644 index 000000000000..128e9d9f65bd --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2021-03-03-preview/examples/DiagnosticServicesReadWriteTokenPost.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "resourceUri": "subscriptions/df602c9c-7aa0-407d-a6fb-eb20c8bd1192/resourceGroups/FabrikamFiberApp/providers/microsoft.insights/components/CustomAvailabilityTest/", + "api-version": "2021-03-03-preview" + }, + "responses": { + "200": { + "body": { + "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c" + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-02-02/components_API.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-02-02/components_API.json new file mode 100644 index 000000000000..e1a021011c4f --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-02-02/components_API.json @@ -0,0 +1,774 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApplicationInsightsManagementClient", + "description": "Azure Application Insights client for Components", + "version": "2020-02-02" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Insights/components": { + "get": { + "description": "Gets a list of all Application Insights components within a subscription.", + "operationId": "Components_List", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A list containing 0 or more Application Insights component definitions.", + "schema": { + "$ref": "#/definitions/ApplicationInsightsComponentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ComponentsList.json": { + "$ref": "./examples/ComponentsList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components": { + "get": { + "description": "Gets a list of Application Insights components within a resource group.", + "operationId": "Components_ListByResourceGroup", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A list containing 0 or more Application Insights component definitions.", + "schema": { + "$ref": "#/definitions/ApplicationInsightsComponentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ComponentListByResourceGroup": { + "$ref": "./examples/ComponentsListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}": { + "delete": { + "description": "Deletes an Application Insights component.", + "operationId": "Components_Delete", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + } + ], + "responses": { + "200": { + "description": "Successful request when deleting an Application Insights component." + }, + "204": { + "description": "The specified component does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ComponentsDelete": { + "$ref": "./examples/ComponentsDelete.json" + } + } + }, + "get": { + "description": "Returns an Application Insights component.", + "operationId": "Components_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + } + ], + "responses": { + "200": { + "description": "An Application Insights Component definition.", + "schema": { + "$ref": "#/definitions/ApplicationInsightsComponent" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ComponentGet": { + "$ref": "./examples/ComponentsGet.json" + } + } + }, + "put": { + "description": "Creates (or updates) an Application Insights component. Note: You cannot specify a different value for InstrumentationKey nor AppId in the Put operation.", + "operationId": "Components_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "InsightProperties", + "description": "Properties that need to be specified to create an Application Insights component.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationInsightsComponent" + } + } + ], + "responses": { + "200": { + "description": "Successful request when creating or updating an Application Insights component. The updated component is returned.", + "schema": { + "$ref": "#/definitions/ApplicationInsightsComponent" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ComponentCreate": { + "$ref": "./examples/ComponentsCreate.json" + }, + "ComponentUpdate": { + "$ref": "./examples/ComponentsUpdate.json" + } + } + }, + "patch": { + "description": "Updates an existing component's tags. To update other fields use the CreateOrUpdate method.", + "operationId": "Components_UpdateTags", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "ComponentTags", + "description": "Updated tag information to set into the component instance.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TagsResource" + } + } + ], + "responses": { + "200": { + "description": "Updating the Application Insights component's tags was successful. Component tags are updated and returned with the rest of the Component's object properties.", + "schema": { + "$ref": "#/definitions/ApplicationInsightsComponent" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ComponentUpdateTagsOnly": { + "$ref": "./examples/ComponentsUpdateTagsOnly.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}/purge": { + "post": { + "description": "Purges data in an Application Insights component by a set of user-defined filters.\n\nIn order to manage system resources, purge requests are throttled at 50 requests per hour. You should batch the execution of purge requests by sending a single command whose predicate includes all user identities that require purging. Use the in operator to specify multiple identities. You should run the query prior to using for a purge request to verify that the results are expected.", + "operationId": "Components_Purge", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "$ref": "#/parameters/ComponentPurgeParameter" + } + ], + "responses": { + "202": { + "description": "Accepted request for purging an Application Insights component.", + "schema": { + "$ref": "#/definitions/ComponentPurgeResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ComponentPurge": { + "$ref": "./examples/ComponentsPurge.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}/operations/{purgeId}": { + "get": { + "description": "Get status for an ongoing purge operation.", + "operationId": "Components_GetPurgeStatus", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "$ref": "#/parameters/ComponentPurgeIdParameter" + } + ], + "responses": { + "200": { + "description": "Returns status of purge operation in body of response. e.g.: running, completed.", + "schema": { + "$ref": "#/definitions/ComponentPurgeStatusResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ComponentPurge": { + "$ref": "./examples/ComponentsPurgeStatus.json" + } + } + } + } + }, + "definitions": { + "ComponentsResource": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "Azure resource Id" + }, + "name": { + "type": "string", + "description": "Azure resource name", + "readOnly": true + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Azure resource type" + }, + "location": { + "type": "string", + "description": "Resource location", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "tags": { + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "required": [ + "location" + ], + "x-ms-azure-resource": true, + "description": "An azure resource object" + }, + "TagsResource": { + "properties": { + "tags": { + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "description": "A container holding only the Tags for a resource, allowing the user to update the tags on a WebTest instance." + }, + "ApplicationInsightsComponent": { + "properties": { + "kind": { + "type": "string", + "description": "The kind of application that this component refers to, used to customize UI. This value is a freeform string, values should typically be one of the following: web, ios, other, store, java, phone." + }, + "etag": { + "type": "string", + "description": "Resource etag" + }, + "properties": { + "x-ms-client-flatten": true, + "description": "Properties that define an Application Insights component resource.", + "$ref": "#/definitions/ApplicationInsightsComponentProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ComponentsResource" + } + ], + "required": [ + "kind" + ], + "description": "An Application Insights component definition." + }, + "ApplicationInsightsComponentProperties": { + "description": "Properties that define an Application Insights component resource.", + "properties": { + "ApplicationId": { + "type": "string", + "description": "The unique ID of your application. This field mirrors the 'Name' field and cannot be changed.", + "readOnly": true + }, + "AppId": { + "type": "string", + "readOnly": true, + "description": "Application Insights Unique ID for your Application." + }, + "Name": { + "type": "string", + "readOnly": true, + "description": "Application name." + }, + "Application_Type": { + "type": "string", + "description": "Type of application being monitored.", + "default": "web", + "enum": [ + "web", + "other" + ], + "x-ms-enum": { + "name": "ApplicationType", + "modelAsString": true + }, + "x-ms-mutability": [ + "create", + "read" + ] + }, + "Flow_Type": { + "type": "string", + "description": "Used by the Application Insights system to determine what kind of flow this component was created by. This is to be set to 'Bluefield' when creating/updating a component via the REST API.", + "default": "Bluefield", + "enum": [ + "Bluefield" + ], + "x-ms-enum": { + "name": "FlowType", + "modelAsString": true + } + }, + "Request_Source": { + "type": "string", + "description": "Describes what tool created this Application Insights component. Customers using this API should set this to the default 'rest'.", + "default": "rest", + "enum": [ + "rest" + ], + "x-ms-enum": { + "name": "RequestSource", + "modelAsString": true + } + }, + "InstrumentationKey": { + "type": "string", + "readOnly": true, + "description": "Application Insights Instrumentation key. A read-only value that applications can use to identify the destination for all telemetry sent to Azure Application Insights. This value will be supplied upon construction of each new Application Insights component." + }, + "CreationDate": { + "type": "string", + "readOnly": true, + "description": "Creation Date for the Application Insights component, in ISO 8601 format.", + "format": "date-time" + }, + "TenantId": { + "type": "string", + "readOnly": true, + "description": "Azure Tenant Id." + }, + "HockeyAppId": { + "type": "string", + "description": "The unique application ID created when a new application is added to HockeyApp, used for communications with HockeyApp.", + "externalDocs": { + "url": "https://aka.ms/ewjuel" + } + }, + "HockeyAppToken": { + "type": "string", + "description": "Token used to authenticate communications with between Application Insights and HockeyApp.", + "readOnly": true, + "externalDocs": { + "url": "https://aka.ms/sls76s" + } + }, + "provisioningState": { + "type": "string", + "description": "Current state of this component: whether or not is has been provisioned within the resource group it is defined. Users cannot change this value but are able to read from it. Values will include Succeeded, Deploying, Canceled, and Failed.", + "readOnly": true + }, + "SamplingPercentage": { + "type": "number", + "format": "double", + "description": "Percentage of the data produced by the application being monitored that is being sampled for Application Insights telemetry.", + "externalDocs": { + "url": "https://aka.ms/sl0yqd" + } + }, + "ConnectionString": { + "type": "string", + "readOnly": true, + "description": "Application Insights component connection string." + }, + "RetentionInDays": { + "type": "integer", + "description": "Retention period in days.", + "readOnly": true + }, + "DisableIpMasking": { + "type": "boolean", + "description": "Disable IP masking." + }, + "ImmediatePurgeDataOn30Days": { + "type": "boolean", + "description": "Purge data immediately after 30 days." + }, + "WorkspaceResourceId": { + "type": "string", + "description": "Resource Id of the log analytics workspace which the data will be ingested to. This property is required to create an application with this API version. Applications from older versions will not have this property." + }, + "LaMigrationDate": { + "type": "string", + "readOnly": true, + "description": "The date which the component got migrated to LA, in ISO 8601 format.", + "format": "date-time" + }, + "PrivateLinkScopedResources": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkScopedResource" + }, + "description": "List of linked private link scope resources." + }, + "publicNetworkAccessForIngestion": { + "description": "The network access type for accessing Application Insights ingestion.", + "$ref": "#/definitions/PublicNetworkAccessType" + }, + "publicNetworkAccessForQuery": { + "description": "The network access type for accessing Application Insights query.", + "$ref": "#/definitions/PublicNetworkAccessType" + }, + "IngestionMode": { + "type": "string", + "description": "Indicates the flow of the ingestion.", + "default": "LogAnalytics", + "enum": [ + "ApplicationInsights", + "ApplicationInsightsWithDiagnosticSettings", + "LogAnalytics" + ], + "x-ms-enum": { + "name": "IngestionMode", + "modelAsString": true + } + }, + "DisableLocalAuth": { + "type": "boolean", + "description": "Disable Non-AAD based Auth." + }, + "ForceCustomerStorageForProfiler": { + "type": "boolean", + "description": "Force users to create their own storage account for profiler and debugger." + } + }, + "required": [ + "Application_Type" + ] + }, + "PrivateLinkScopedResource": { + "properties": { + "ResourceId": { + "type": "string", + "description": "The full resource Id of the private link scope resource." + }, + "ScopeId": { + "type": "string", + "description": "The private link scope unique Identifier." + } + }, + "description": "The private link scope resource reference." + }, + "ApplicationInsightsComponentListResult": { + "description": "Describes the list of Application Insights Resources.", + "required": [ + "value" + ], + "properties": { + "value": { + "type": "array", + "description": "List of Application Insights component definitions.", + "items": { + "$ref": "#/definitions/ApplicationInsightsComponent" + } + }, + "nextLink": { + "type": "string", + "description": "The URI to get the next set of Application Insights component definitions if too many components where returned in the result set." + } + } + }, + "ComponentPurgeBody": { + "description": "Describes the body of a purge request for an App Insights component", + "required": [ + "table", + "filters" + ], + "properties": { + "table": { + "type": "string", + "description": "Table from which to purge data." + }, + "filters": { + "type": "array", + "description": "The set of columns and filters (queries) to run over them to purge the resulting data.", + "items": { + "$ref": "#/definitions/ComponentPurgeBodyFilters" + } + } + } + }, + "ComponentPurgeBodyFilters": { + "description": "User-defined filters to return data which will be purged from the table.", + "properties": { + "column": { + "description": "The column of the table over which the given query should run", + "type": "string" + }, + "operator": { + "description": "A query operator to evaluate over the provided column and value(s). Supported operators are ==, =~, in, in~, >, >=, <, <=, between, and have the same behavior as they would in a KQL query.", + "type": "string" + }, + "value": { + "description": "the value for the operator to function over. This can be a number (e.g., > 100), a string (timestamp >= '2017-09-01') or array of values." + }, + "key": { + "description": "When filtering over custom dimensions, this key will be used as the name of the custom dimension.", + "type": "string" + } + } + }, + "ComponentPurgeResponse": { + "description": "Response containing operationId for a specific purge action.", + "properties": { + "operationId": { + "description": "Id to use when querying for status for a particular purge operation.", + "type": "string" + } + }, + "required": [ + "operationId" + ] + }, + "ComponentPurgeStatusResponse": { + "description": "Response containing status for a specific purge operation.", + "properties": { + "status": { + "description": "Status of the operation represented by the requested Id.", + "type": "string", + "enum": [ + "pending", + "completed" + ], + "x-ms-enum": { + "name": "PurgeState", + "modelAsString": true + } + } + }, + "required": [ + "status" + ] + }, + "PublicNetworkAccessType": { + "type": "string", + "description": "The network access type for operating on the Application Insights Component. By default it is Enabled", + "default": "Enabled", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "PublicNetworkAccessType", + "modelAsString": true, + "values": [ + { + "value": "Enabled", + "description": "Enables connectivity to Application Insights through public DNS." + }, + { + "value": "Disabled", + "description": "Disables public connectivity to Application Insights through public DNS." + } + ] + } + } + }, + "parameters": { + "ResourceNameParameter": { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Application Insights component resource.", + "x-ms-parameter-location": "method" + }, + "ComponentPurgeParameter": { + "name": "body", + "in": "body", + "description": "Describes the body of a request to purge data in a single table of an Application Insights component", + "required": true, + "schema": { + "$ref": "#/definitions/ComponentPurgeBody" + }, + "x-ms-parameter-location": "method" + }, + "ComponentPurgeIdParameter": { + "name": "purgeId", + "in": "path", + "required": true, + "type": "string", + "description": "In a purge status request, this is the Id of the operation the status of which is returned.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-02-02/examples/ComponentsCreate.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-02-02/examples/ComponentsCreate.json new file mode 100644 index 000000000000..e47be170ccc3 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-02-02/examples/ComponentsCreate.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2020-02-02", + "subscriptionId": "subid", + "resourceGroupName": "my-resource-group", + "resourceName": "my-component", + "InsightProperties": { + "location": "South Central US", + "kind": "web", + "properties": { + "Application_Type": "web", + "Flow_Type": "Bluefield", + "WorkspaceResourceId": "/subscriptions/subid/resourcegroups/my-resource-group/providers/microsoft.operationalinsights/workspaces/my-workspace", + "Request_Source": "rest" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component", + "name": "my-component", + "type": "Microsoft.Insights/components", + "location": "South Central US", + "tags": "", + "kind": "web", + "properties": { + "ApplicationId": "my-component", + "AppId": "887f4bfd-b5fd-40d7-9fc3-123456789abc", + "Application_Type": "web", + "Flow_Type": "Bluefield", + "Request_Source": "rest", + "InstrumentationKey": "bc095013-3cf2-45ac-ab47-123456789abc", + "CreationDate": "2017-01-24T01:05:38.5934061+00:00", + "TenantId": "f438d567-7177-4fe1-a5e3-123456789abc", + "HockeyAppId": "", + "HockeyAppToken": "", + "provisioningState": "Succeeded", + "SamplingPercentage": 100.0, + "WorkspaceResourceId": "/subscriptions/subid/resourcegroups/my-resource-group/providers/microsoft.operationalinsights/workspaces/my-workspace", + "ConnectionString": "InstrumentationKey=bc095013-3cf2-45ac-ab47-123456789abc", + "DisableIpMasking": false, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled", + "IngestionMode": "LogAnalytics" + } + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-02-02/examples/ComponentsDelete.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-02-02/examples/ComponentsDelete.json new file mode 100644 index 000000000000..2e8b78b498f1 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-02-02/examples/ComponentsDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2020-02-02", + "subscriptionId": "subid", + "resourceGroupName": "my-resource-group", + "resourceName": "my-component" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-02-02/examples/ComponentsGet.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-02-02/examples/ComponentsGet.json new file mode 100644 index 000000000000..92fc3f43beb7 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-02-02/examples/ComponentsGet.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2020-02-02", + "subscriptionId": "subid", + "resourceGroupName": "my-resource-group", + "resourceName": "my-component" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component", + "name": "my-component", + "type": "Microsoft.Insights/components", + "location": "South Central US", + "tags": "", + "kind": "web", + "properties": { + "ApplicationId": "my-component", + "AppId": "887f4bfd-b5fd-40d7-9fc3-123456789abc", + "Application_Type": "web", + "Flow_Type": "Bluefield", + "Request_Source": "rest", + "InstrumentationKey": "bc095013-3cf2-45ac-ab47-123456789abc", + "CreationDate": "2017-01-24T01:05:38.5934061+00:00", + "TenantId": "f438d567-7177-4fe1-a5e3-123456789abc", + "HockeyAppId": "", + "HockeyAppToken": "", + "provisioningState": "Succeeded", + "SamplingPercentage": 100.0, + "WorkspaceResourceId": "/subscriptions/subid/resourcegroups/my-resource-group/providers/microsoft.operationalinsights/workspaces/my-workspace", + "ConnectionString": "InstrumentationKey=bc095013-3cf2-45ac-ab47-123456789abc", + "DisableIpMasking": false, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled", + "IngestionMode": "LogAnalytics" + } + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-02-02/examples/ComponentsList.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-02-02/examples/ComponentsList.json new file mode 100644 index 000000000000..4d5b050bbcbc --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-02-02/examples/ComponentsList.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2020-02-02", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component", + "name": "my-component", + "type": "Microsoft.Insights/components", + "location": "South Central US", + "tags": "", + "kind": "web", + "properties": { + "ApplicationId": "my-component", + "AppId": "16526d1a-dfba-4362-a9e9-123456789abc", + "Application_Type": "web", + "Flow_Type": "Bluefield", + "Request_Source": "rest", + "InstrumentationKey": "dc5931c7-a7ad-4ad0-89d6-123456789abc", + "CreationDate": "2017-02-14T12:24:05.0041213+00:00", + "TenantId": "f438d567-7177-4fe1-a5e3-123456789abc", + "HockeyAppId": "", + "HockeyAppToken": "", + "provisioningState": "Succeeded", + "SamplingPercentage": 75.0, + "WorkspaceResourceId": "/subscriptions/subid/resourcegroups/my-resource-group/providers/microsoft.operationalinsights/workspaces/my-workspace", + "ConnectionString": "InstrumentationKey=dc5931c7-a7ad-4ad0-89d6-123456789abc", + "DisableIpMasking": false, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled", + "IngestionMode": "LogAnalytics" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/my-other-resource-group/providers/Microsoft.Insights/components/my-other-component", + "name": "my-other-component", + "type": "Microsoft.Insights/components", + "location": "South Central US", + "tags": "", + "kind": "web", + "properties": { + "ApplicationId": "my-other-component", + "AppId": "887f4bfd-b5fd-40d7-9fc3-123456789abc", + "Application_Type": "web", + "Flow_Type": "Bluefield", + "Request_Source": "rest", + "InstrumentationKey": "bc095013-3cf2-45ac-ab47-123456789abc", + "CreationDate": "2017-01-24T01:05:38.5934061+00:00", + "TenantId": "f438d567-7177-4fe1-a5e3-123456789abc", + "HockeyAppId": "", + "HockeyAppToken": "", + "provisioningState": "Succeeded", + "SamplingPercentage": 30.0, + "WorkspaceResourceId": "/subscriptions/subid/resourcegroups/my-resource-group/providers/microsoft.operationalinsights/workspaces/my-workspace", + "ConnectionString": "InstrumentationKey=bc095013-3cf2-45ac-ab47-123456789abc", + "DisableIpMasking": false, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled", + "IngestionMode": "LogAnalytics" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-02-02/examples/ComponentsListByResourceGroup.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-02-02/examples/ComponentsListByResourceGroup.json new file mode 100644 index 000000000000..e7cfff55f02e --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-02-02/examples/ComponentsListByResourceGroup.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "api-version": "2020-02-02", + "subscriptionId": "subid", + "resourceGroupName": "my-resource-group" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component", + "name": "my-component", + "type": "Microsoft.Insights/components", + "location": "South Central US", + "tags": "", + "kind": "web", + "properties": { + "ApplicationId": "my-component", + "AppId": "16526d1a-dfba-4362-a9e9-123456789abc", + "Application_Type": "web", + "Flow_Type": "Bluefield", + "Request_Source": "rest", + "InstrumentationKey": "dc5931c7-a7ad-4ad0-89d6-123456789abc", + "CreationDate": "2017-02-14T12:24:05.0041213+00:00", + "TenantId": "f438d567-7177-4fe1-a5e3-123456789abc", + "HockeyAppId": "", + "HockeyAppToken": "", + "provisioningState": "Succeeded", + "SamplingPercentage": 100.0, + "WorkspaceResourceId": "/subscriptions/subid/resourcegroups/my-resource-group/providers/microsoft.operationalinsights/workspaces/my-workspace", + "ConnectionString": "InstrumentationKey=dc5931c7-a7ad-4ad0-89d6-123456789abc", + "DisableIpMasking": false, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled", + "IngestionMode": "LogAnalytics" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/my-other-resource-group/providers/Microsoft.Insights/components/my-other-component", + "name": "my-other-component", + "type": "Microsoft.Insights/components", + "location": "South Central US", + "tags": "", + "kind": "web", + "properties": { + "ApplicationId": "my-other-component", + "AppId": "887f4bfd-b5fd-40d7-9fc3-123456789abc", + "Application_Type": "web", + "Flow_Type": "Bluefield", + "Request_Source": "rest", + "InstrumentationKey": "bc095013-3cf2-45ac-ab47-123456789abc", + "CreationDate": "2017-01-24T01:05:38.5934061+00:00", + "TenantId": "f438d567-7177-4fe1-a5e3-123456789abc", + "HockeyAppId": "", + "HockeyAppToken": "", + "provisioningState": "Succeeded", + "SamplingPercentage": 50.0, + "WorkspaceResourceId": "/subscriptions/subid/resourcegroups/my-resource-group/providers/microsoft.operationalinsights/workspaces/my-workspace", + "ConnectionString": "InstrumentationKey=bc095013-3cf2-45ac-ab47-123456789abc", + "DisableIpMasking": false, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled", + "IngestionMode": "LogAnalytics" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-02-02/examples/ComponentsPurge.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-02-02/examples/ComponentsPurge.json new file mode 100644 index 000000000000..8fa7612ae7f2 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-02-02/examples/ComponentsPurge.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "resourceGroupName": "OIAutoRest5123", + "resourceName": "aztest5048", + "api-version": "2020-02-02", + "subscriptionId": "00000000-0000-0000-0000-00000000000", + "body": { + "table": "Heartbeat", + "filters": [ + { + "column": "TimeGenerated", + "operator": ">", + "value": "2017-09-01T00:00:00" + } + ] + } + }, + "responses": { + "202": { + "headers": { + "x-ms-status-location": "https://management.azure.com/subscriptions/b96161de-b34a-480f-7343-59b099299283/resourceGroups/example/providers/microsoft.insights/components/test/operations/purge-970318e7-b859-4edb-8903-83b1b54d0b74?api-version=2015-05-01" + }, + "body": { + "operationId": "7d7cf277-9113-4ab3-8359-d0364b74d01d" + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-02-02/examples/ComponentsPurgeStatus.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-02-02/examples/ComponentsPurgeStatus.json new file mode 100644 index 000000000000..0f38ffa06709 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-02-02/examples/ComponentsPurgeStatus.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "resourceGroupName": "OIAutoRest5123", + "resourceName": "aztest5048", + "api-version": "2020-02-02", + "subscriptionId": "00000000-0000-0000-0000-00000000000", + "purgeId": "purge-970318e7-b859-4edb-8903-83b1b54d0b74" + }, + "responses": { + "200": { + "body": { + "status": "completed" + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-02-02/examples/ComponentsUpdate.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-02-02/examples/ComponentsUpdate.json new file mode 100644 index 000000000000..5130daaccc3c --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-02-02/examples/ComponentsUpdate.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "api-version": "2020-02-02", + "subscriptionId": "subid", + "resourceGroupName": "my-resource-group", + "resourceName": "my-component", + "InsightProperties": { + "location": "South Central US", + "kind": "web", + "tags": { + "ApplicationGatewayType": "Internal-Only", + "BillingEntity": "Self" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component", + "name": "my-component", + "type": "Microsoft.Insights/components", + "location": "South Central US", + "tags": { + "ApplicationGatewayType": "Internal-Only", + "BillingEntity": "Self" + }, + "kind": "web", + "properties": { + "ApplicationId": "my-component", + "AppId": "887f4bfd-b5fd-40d7-9fc3-123456789abc", + "Application_Type": "web", + "Flow_Type": "Bluefield", + "Request_Source": "rest", + "InstrumentationKey": "bc095013-3cf2-45ac-ab47-123456789abc", + "CreationDate": "2017-01-24T01:05:38.5934061+00:00", + "TenantId": "f438d567-7177-4fe1-a5e3-123456789abc", + "HockeyAppId": "", + "HockeyAppToken": "", + "provisioningState": "Succeeded", + "SamplingPercentage": 100.0, + "WorkspaceResourceId": "/subscriptions/subid/resourcegroups/my-resource-group/providers/microsoft.operationalinsights/workspaces/my-workspace", + "ConnectionString": "InstrumentationKey=bc095013-3cf2-45ac-ab47-123456789abc", + "DisableIpMasking": false, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled", + "IngestionMode": "LogAnalytics" + } + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-02-02/examples/ComponentsUpdateTagsOnly.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-02-02/examples/ComponentsUpdateTagsOnly.json new file mode 100644 index 000000000000..a01dea72ce89 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-02-02/examples/ComponentsUpdateTagsOnly.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2020-02-02", + "subscriptionId": "subid", + "resourceGroupName": "my-resource-group", + "resourceName": "my-component", + "ComponentTags": { + "tags": { + "ApplicationGatewayType": "Internal-Only", + "BillingEntity": "Self", + "Color": "AzureBlue", + "CustomField_01": "Custom text in some random field named randomly", + "NodeType": "Edge" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component", + "name": "my-component", + "type": "Microsoft.Insights/components", + "location": "South Central US", + "tags": { + "ApplicationGatewayType": "Internal-Only", + "BillingEntity": "Self", + "Color": "AzureBlue", + "CustomField_01": "Custom text in some random field named randomly", + "NodeType": "Edge" + }, + "kind": "web", + "properties": { + "ApplicationId": "my-component", + "AppId": "887f4bfd-b5fd-40d7-9fc3-123456789abc", + "Application_Type": "web", + "Flow_Type": "Bluefield", + "Request_Source": "rest", + "InstrumentationKey": "bc095013-3cf2-45ac-ab47-123456789abc", + "CreationDate": "2017-01-24T01:05:38.5934061+00:00", + "TenantId": "f438d567-7177-4fe1-a5e3-123456789abc", + "HockeyAppId": "", + "HockeyAppToken": "", + "provisioningState": "Succeeded", + "SamplingPercentage": 100.0, + "WorkspaceResourceId": "/subscriptions/subid/resourcegroups/my-resource-group/providers/microsoft.operationalinsights/workspaces/my-workspace", + "ConnectionString": "InstrumentationKey=bc095013-3cf2-45ac-ab47-123456789abc", + "DisableIpMasking": false, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled", + "IngestionMode": "LogAnalytics" + } + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-10-20/myworkbooks_API.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-10-20/myworkbooks_API.json index 8e0eeb3f9050..32705a23b87b 100644 --- a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-10-20/myworkbooks_API.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-10-20/myworkbooks_API.json @@ -322,7 +322,7 @@ "properties": { "identity": { "description": "Identity used for BYOS", - "$ref": "#/definitions/ManagedIdentity" + "$ref": "#/definitions/MyWorkbookManagedIdentity" }, "id": { "type": "string", @@ -512,11 +512,11 @@ } } }, - "ManagedIdentity": { + "MyWorkbookManagedIdentity": { "description": "Customer Managed Identity", "properties": { "userAssignedIdentities": { - "$ref": "#/definitions/UserAssignedIdentities" + "$ref": "#/definitions/MyWorkbookUserAssignedIdentities" }, "type": { "type": "string", @@ -528,7 +528,7 @@ } } }, - "UserAssignedIdentities": { + "MyWorkbookUserAssignedIdentities": { "description": "Customer Managed Identity", "properties": { "principalId": { diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-10-20/workbookOperations_API.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-10-20/workbookOperations_API.json index 64553e8f509f..696bb3de114e 100644 --- a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-10-20/workbookOperations_API.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-10-20/workbookOperations_API.json @@ -1,8 +1,8 @@ { "swagger": "2.0", "info": { - "title": "WorkbookClient", - "description": "Azure client for Workbook.", + "title": "ApplicationInsightsManagementClient", + "description": "Azure Application Insights client for web test based alerting.", "version": "2020-10-20" }, "host": "management.azure.com", diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-10-20/workbooks_API.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-10-20/workbooks_API.json index 8535d2e992ce..990e8ddf964e 100644 --- a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-10-20/workbooks_API.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-10-20/workbooks_API.json @@ -334,7 +334,7 @@ "properties": { "identity": { "description": "Identity used for BYOS", - "$ref": "#/definitions/ManagedIdentity" + "$ref": "#/definitions/WorkbookManagedIdentity" }, "id": { "type": "string", @@ -577,11 +577,11 @@ } } }, - "ManagedIdentity": { + "WorkbookManagedIdentity": { "description": "Customer Managed Identity", "properties": { "userAssignedIdentities": { - "$ref": "#/definitions/UserAssignedIdentities" + "$ref": "#/definitions/WorkbookUserAssignedIdentities" }, "type": { "type": "string", @@ -593,7 +593,7 @@ } } }, - "UserAssignedIdentities": { + "WorkbookUserAssignedIdentities": { "description": "Customer Managed Identity", "properties": { "principalId": { diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-11-20/examples/WorkbookTemplateAdd.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-11-20/examples/WorkbookTemplateAdd.json new file mode 100644 index 000000000000..8663f997ee22 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-11-20/examples/WorkbookTemplateAdd.json @@ -0,0 +1,151 @@ +{ + "parameters": { + "api-version": "2020-11-20", + "resourceGroupName": "my-resource-group", + "resourceName": "testtemplate2", + "subscriptionId": "subid", + "workbookTemplateProperties": { + "location": "west us", + "properties": { + "priority": 1, + "author": "Contoso", + "galleries": [ + { + "name": "Simple Template", + "category": "Failures", + "type": "tsg", + "resourceType": "microsoft.insights/components", + "order": 100 + } + ], + "templateData": { + "version": "Notebook/1.0", + "items": [ + { + "type": 1, + "content": { + "json": "## New workbook\n---\n\nWelcome to your new workbook. This area will display text formatted as markdown.\n\n\nWe've included a basic analytics query to get you started. Use the `Edit` button below each section to configure it or add more sections." + }, + "name": "text - 2" + }, + { + "type": 3, + "content": { + "version": "KqlItem/1.0", + "query": "union withsource=TableName *\n| summarize Count=count() by TableName\n| render barchart", + "size": 1, + "exportToExcelOptions": "visible", + "queryType": 0, + "resourceType": "microsoft.operationalinsights/workspaces" + }, + "name": "query - 2" + } + ], + "styleSettings": {}, + "$schema": "https://github.com/Microsoft/Application-Insights-Workbooks/blob/master/schema/workbook.json" + } + }, + "tags": null + } + }, + "responses": { + "200": { + "body": { + "name": "testtemplate2", + "location": "westeurope", + "tags": null, + "type": "microsoft.insights/workbooktemplates", + "id": "/subscriptions/50359d91-7b9d-4823-85af-eb298a61ba95/resourceGroups/testrg/providers/microsoft.insights/workbooktemplates/testtemplate2", + "properties": { + "priority": 1, + "author": "Contoso", + "templateData": { + "version": "Notebook/1.0", + "items": [ + { + "type": 1, + "content": { + "json": "## New workbook\n---\n\nWelcome to your new workbook. This area will display text formatted as markdown.\n\n\nWe've included a basic analytics query to get you started. Use the `Edit` button below each section to configure it or add more sections." + }, + "name": "text - 2" + }, + { + "type": 3, + "content": { + "version": "KqlItem/1.0", + "query": "union withsource=TableName *\n| summarize Count=count() by TableName\n| render barchart", + "size": 1, + "exportToExcelOptions": "visible", + "queryType": 0, + "resourceType": "microsoft.operationalinsights/workspaces" + }, + "name": "query - 2" + } + ], + "styleSettings": {}, + "$schema": "https://github.com/Microsoft/Application-Insights-Workbooks/blob/master/schema/workbook.json" + }, + "galleries": [ + { + "name": "Simple Template", + "category": "Failures", + "order": 100, + "type": "tsg", + "resourceType": "microsoft.insights/components" + } + ], + "localized": null + } + } + }, + "201": { + "body": { + "name": "testtemplate2", + "location": "westeurope", + "tags": null, + "type": "microsoft.insights/workbooktemplates", + "id": "/subscriptions/50359d91-7b9d-4823-85af-eb298a61ba95/resourceGroups/testrg/providers/microsoft.insights/workbooktemplates/testtemplate2", + "properties": { + "priority": 1, + "author": "Contoso", + "templateData": { + "version": "Notebook/1.0", + "items": [ + { + "type": 1, + "content": { + "json": "## New workbook\n---\n\nWelcome to your new workbook. This area will display text formatted as markdown.\n\n\nWe've included a basic analytics query to get you started. Use the `Edit` button below each section to configure it or add more sections." + }, + "name": "text - 2" + }, + { + "type": 3, + "content": { + "version": "KqlItem/1.0", + "query": "union withsource=TableName *\n| summarize Count=count() by TableName\n| render barchart", + "size": 1, + "exportToExcelOptions": "visible", + "queryType": 0, + "resourceType": "microsoft.operationalinsights/workspaces" + }, + "name": "query - 2" + } + ], + "styleSettings": {}, + "$schema": "https://github.com/Microsoft/Application-Insights-Workbooks/blob/master/schema/workbook.json" + }, + "galleries": [ + { + "name": "Simple Template", + "category": "Failures", + "order": 100, + "type": "tsg", + "resourceType": "microsoft.insights/components" + } + ], + "localized": null + } + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-11-20/examples/WorkbookTemplateDelete.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-11-20/examples/WorkbookTemplateDelete.json new file mode 100644 index 000000000000..64d42232a606 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-11-20/examples/WorkbookTemplateDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2020-11-20", + "subscriptionId": "subid", + "resourceGroupName": "my-resource-group", + "resourceName": "my-template-resource" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-11-20/examples/WorkbookTemplateGet.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-11-20/examples/WorkbookTemplateGet.json new file mode 100644 index 000000000000..a7d732cd4e0c --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-11-20/examples/WorkbookTemplateGet.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "api-version": "2020-11-20", + "subscriptionId": "6b643656-33eb-422f-aee8-3ac145d124af", + "resourceGroupName": "my-resource-group", + "resourceName": "my-resource-name" + }, + "responses": { + "200": { + "body": { + "name": "my-resource-name", + "type": "microsoft.insights/workbooktemplate", + "location": "westus", + "id": "/subscriptions/6b643656-33eb-422f-aee8-3ac145d124af/resourceGroups/my-resource-group/providers/microsoft.insights/workbooktemplates/my-resource-name", + "properties": { + "priority": 1, + "author": "Contoso", + "galleries": [ + { + "name": "Simple Template", + "category": "Failures", + "type": "tsg", + "resourceType": "microsoft.insights/components", + "order": 100 + } + ], + "templateData": { + "version": "Notebook/1.0", + "items": [ + { + "type": 1, + "content": { + "json": "## New workbook\n---\n\nWelcome to your new workbook. This area will display text formatted as markdown.\n\n\nWe've included a basic analytics query to get you started. Use the `Edit` button below each section to configure it or add more sections." + }, + "name": "text - 2" + }, + { + "type": 3, + "content": { + "version": "KqlItem/1.0", + "query": "union withsource=TableName *\n| summarize Count=count() by TableName\n| render barchart", + "size": 1, + "exportToExcelOptions": "visible", + "queryType": 0, + "resourceType": "microsoft.operationalinsights/workspaces" + }, + "name": "query - 2" + } + ], + "styleSettings": {}, + "$schema": "https://github.com/Microsoft/Application-Insights-Workbooks/blob/master/schema/workbook.json" + } + }, + "tags": null + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-11-20/examples/WorkbookTemplateUpdate.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-11-20/examples/WorkbookTemplateUpdate.json new file mode 100644 index 000000000000..4ed5d1eb0513 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-11-20/examples/WorkbookTemplateUpdate.json @@ -0,0 +1,104 @@ +{ + "parameters": { + "api-version": "2020-11-20", + "subscriptionId": "6b643656-33eb-422f-aee8-3ac145d124af", + "resourceGroupName": "my-resource-group", + "resourceName": "my-template-resource", + "workbookTemplateProperties": { + "name": "display-name-of-template", + "location": "west us", + "type": "microsoft.insights/workbooktemplates", + "properties": { + "priority": 1, + "author": "Contoso", + "galleries": [ + { + "name": "Simple Template", + "category": "Failures", + "type": "tsg", + "resourceType": "microsoft.insights/components", + "order": 100 + } + ], + "templateData": { + "version": "Notebook/1.0", + "items": [ + { + "type": 1, + "content": { + "json": "## New workbook\n---\n\nWelcome to your new workbook. This area will display text formatted as markdown.\n\n\nWe've included a basic analytics query to get you started. Use the `Edit` button below each section to configure it or add more sections." + }, + "name": "text - 2" + }, + { + "type": 3, + "content": { + "version": "KqlItem/1.0", + "query": "union withsource=TableName *\n| summarize Count=count() by TableName\n| render barchart", + "size": 1, + "exportToExcelOptions": "visible", + "queryType": 0, + "resourceType": "microsoft.operationalinsights/workspaces" + }, + "name": "query - 2" + } + ], + "styleSettings": {}, + "$schema": "https://github.com/Microsoft/Application-Insights-Workbooks/blob/master/schema/workbook.json" + } + }, + "tags": null + } + }, + "responses": { + "200": { + "body": { + "name": "testtemplate2", + "location": "westeurope", + "tags": null, + "type": "microsoft.insights/workbooktemplates", + "id": "/subscriptions/50359d91-7b9d-4823-85af-eb298a61ba95/resourceGroups/testrg/providers/microsoft.insights/workbooktemplates/testtemplate2", + "properties": { + "priority": 1, + "author": "Contoso", + "templateData": { + "version": "Notebook/1.0", + "items": [ + { + "type": 1, + "content": { + "json": "## New workbook\n---\n\nWelcome to your new workbook. This area will display text formatted as markdown.\n\n\nWe've included a basic analytics query to get you started. Use the `Edit` button below each section to configure it or add more sections." + }, + "name": "text - 2" + }, + { + "type": 3, + "content": { + "version": "KqlItem/1.0", + "query": "union withsource=TableName *\n| summarize Count=count() by TableName\n| render barchart", + "size": 1, + "exportToExcelOptions": "visible", + "queryType": 0, + "resourceType": "microsoft.operationalinsights/workspaces" + }, + "name": "query - 2" + } + ], + "styleSettings": {}, + "$schema": "https://github.com/Microsoft/Application-Insights-Workbooks/blob/master/schema/workbook.json" + }, + "galleries": [ + { + "name": "Simple Template", + "category": "Failures", + "order": 100, + "type": "tsg", + "resourceType": "microsoft.insights/components" + } + ], + "localized": null + } + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-11-20/examples/WorkbookTemplatesList.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-11-20/examples/WorkbookTemplatesList.json new file mode 100644 index 000000000000..3153adea2d45 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-11-20/examples/WorkbookTemplatesList.json @@ -0,0 +1,105 @@ +{ + "parameters": { + "api-version": "2020-11-20", + "subscriptionId": "6b643656-33eb-422f-aee8-3ac145d124af", + "resourceGroupName": "my-resource-group" + }, + "responses": { + "200": { + "body": [ + { + "name": "my-resource-name", + "type": "microsoft.insights/workbooktemplate", + "location": "westus", + "id": "/subscriptions/6b643656-33eb-422f-aee8-3ac145d124af/resourceGroups/my-resource-group/providers/microsoft.insights/workbooktemplates/my-resource-name", + "properties": { + "priority": 1, + "author": "Contoso", + "galleries": [ + { + "name": "Simple Template", + "category": "Failures", + "type": "tsg", + "resourceType": "microsoft.insights/components", + "order": 100 + } + ], + "templateData": { + "version": "Notebook/1.0", + "items": [ + { + "type": 1, + "content": { + "json": "## New workbook\n---\n\nWelcome to your new workbook. This area will display text formatted as markdown.\n\n\nWe've included a basic analytics query to get you started. Use the `Edit` button below each section to configure it or add more sections." + }, + "name": "text - 2" + }, + { + "type": 3, + "content": { + "version": "KqlItem/1.0", + "query": "union withsource=TableName *\n| summarize Count=count() by TableName\n| render barchart", + "size": 1, + "exportToExcelOptions": "visible", + "queryType": 0, + "resourceType": "microsoft.operationalinsights/workspaces" + }, + "name": "query - 2" + } + ], + "styleSettings": {}, + "$schema": "https://github.com/Microsoft/Application-Insights-Workbooks/blob/master/schema/workbook.json" + } + }, + "tags": null + }, + { + "name": "my-resource-name2", + "type": "microsoft.insights/workbooktemplate", + "location": "westus", + "id": "/subscriptions/6b643656-33eb-422f-aee8-3ac145d124af/resourceGroups/my-resource-group/providers/microsoft.insights/workbooktemplates/my-resource-name2", + "properties": { + "priority": 1, + "author": "Contoso", + "galleries": [ + { + "name": "Simple Template 2", + "category": "Failures", + "type": "tsg", + "resourceType": "microsoft.insights/components", + "order": 100 + } + ], + "templateData": { + "version": "Notebook/1.0", + "items": [ + { + "type": 1, + "content": { + "json": "## New workbook\n---\n\nWelcome to your new workbook. This area will display text formatted as markdown.\n\n\nWe've included a basic analytics query to get you started. Use the `Edit` button below each section to configure it or add more sections." + }, + "name": "text - 2" + }, + { + "type": 3, + "content": { + "version": "KqlItem/1.0", + "query": "union withsource=TableName *\n| summarize Count=count() by TableName\n| render barchart", + "size": 1, + "exportToExcelOptions": "visible", + "queryType": 0, + "resourceType": "microsoft.operationalinsights/workspaces" + }, + "name": "query - 2" + } + ], + "styleSettings": {}, + "$schema": "https://github.com/Microsoft/Application-Insights-Workbooks/blob/master/schema/workbook.json" + } + }, + "tags": null + } + ] + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-11-20/workbookTemplates_API.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-11-20/workbookTemplates_API.json new file mode 100644 index 000000000000..67f063f7dd1b --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2020-11-20/workbookTemplates_API.json @@ -0,0 +1,473 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApplicationInsightsManagementClient", + "description": "Azure Application Insights workbook template type.", + "version": "2020-11-20" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://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/workbooktemplates": { + "get": { + "description": "Get all Workbook templates defined within a specified resource group.", + "operationId": "WorkbookTemplates_ListByResourceGroup", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A list containing 0 or more workbook template definitions.", + "schema": { + "$ref": "#/definitions/WorkbookTemplatesListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/WorkbookTemplateError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "WorkbookTemplatesList": { + "$ref": "./examples/WorkbookTemplatesList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/workbooktemplates/{resourceName}": { + "get": { + "description": "Get a single workbook template by its resourceName.", + "operationId": "WorkbookTemplates_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkbookTemplateResourceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A workbook template definition.", + "schema": { + "$ref": "#/definitions/WorkbookTemplate" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/WorkbookTemplateError" + } + } + }, + "x-ms-examples": { + "WorkbookTemplateGet": { + "$ref": "./examples/WorkbookTemplateGet.json" + } + } + }, + "delete": { + "description": "Delete a workbook template.", + "operationId": "WorkbookTemplates_Delete", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkbookTemplateResourceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The workbook template has been successfully deleted." + }, + "204": { + "description": "The resource doesn't exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/WorkbookTemplateError" + } + } + }, + "x-ms-examples": { + "WorkbookTemplateDelete": { + "$ref": "./examples/WorkbookTemplateDelete.json" + } + } + }, + "put": { + "description": "Create a new workbook template.", + "operationId": "WorkbookTemplates_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkbookTemplateResourceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "workbookTemplateProperties", + "description": "Properties that need to be specified to create a new workbook.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/WorkbookTemplate" + } + } + ], + "responses": { + "200": { + "description": "The newly created workbook template.", + "schema": { + "$ref": "#/definitions/WorkbookTemplate" + } + }, + "201": { + "description": "The newly created workbook template.", + "schema": { + "$ref": "#/definitions/WorkbookTemplate" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/WorkbookTemplateError" + } + } + }, + "x-ms-examples": { + "WorkbookTemplateAdd": { + "$ref": "./examples/WorkbookTemplateAdd.json" + } + } + }, + "patch": { + "description": "Updates a workbook template that has already been added.", + "operationId": "WorkbookTemplates_Update", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkbookTemplateResourceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "WorkbookTemplateUpdateParameters", + "description": "Properties that need to be specified to patch a workbook template.", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/WorkbookTemplateUpdateParameters" + } + } + ], + "responses": { + "200": { + "description": "The workbook template definition updated.", + "schema": { + "$ref": "#/definitions/WorkbookTemplate" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/WorkbookTemplateError" + } + } + }, + "x-ms-examples": { + "WorkbookTemplateUpdate": { + "$ref": "./examples/WorkbookTemplateUpdate.json" + } + } + } + } + }, + "definitions": { + "WorkbookTemplateResource": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "Azure resource Id" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Azure resource name." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Azure resource type" + }, + "location": { + "type": "string", + "description": "Resource location", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "required": [ + "location" + ], + "x-ms-azure-resource": true, + "description": "An azure resource object" + }, + "WorkbookTemplatesListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/WorkbookTemplate" + }, + "description": "An array of workbook templates." + } + }, + "description": "WorkbookTemplate list result." + }, + "WorkbookTemplate": { + "description": "An Application Insights workbook template definition.", + "allOf": [ + { + "$ref": "#/definitions/WorkbookTemplateResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Metadata describing a workbook template for an Azure resource.", + "$ref": "#/definitions/WorkbookTemplateProperties" + } + } + }, + "WorkbookTemplateProperties": { + "description": "Properties that contain a workbook template.", + "required": [ + "templateData", + "galleries" + ], + "properties": { + "priority": { + "type": "integer", + "description": "Priority of the template. Determines which template to open when a workbook gallery is opened in viewer mode.", + "format": "int32" + }, + "author": { + "type": "string", + "description": "Information about the author of the workbook template." + }, + "templateData": { + "type": "object", + "description": "Valid JSON object containing workbook template payload." + }, + "galleries": { + "type": "array", + "description": "Workbook galleries supported by the template.", + "items": { + "$ref": "#/definitions/WorkbookTemplateGallery" + } + }, + "localized": { + "type": "object", + "description": "Key value pair of localized gallery. Each key is the locale code of languages supported by the Azure portal.", + "additionalProperties": { + "type": "array", + "items": { + "$ref": "#/definitions/WorkbookTemplateLocalizedGallery" + } + } + } + } + }, + "WorkbookTemplateGallery": { + "description": "Gallery information for a workbook template.", + "properties": { + "name": { + "type": "string", + "description": "Name of the workbook template in the gallery." + }, + "category": { + "type": "string", + "description": "Category for the gallery." + }, + "type": { + "type": "string", + "description": "Type of workbook supported by the workbook template." + }, + "order": { + "type": "integer", + "description": "Order of the template within the gallery.", + "format": "int32" + }, + "resourceType": { + "type": "string", + "description": "Azure resource type supported by the gallery." + } + } + }, + "WorkbookTemplateLocalizedGallery": { + "description": "Localized template data and gallery information.", + "properties": { + "templateData": { + "type": "object", + "description": "Valid JSON object containing workbook template payload." + }, + "galleries": { + "type": "array", + "description": "Workbook galleries supported by the template.", + "items": { + "$ref": "#/definitions/WorkbookTemplateGallery" + } + } + } + }, + "WorkbookTemplateUpdateParameters": { + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + }, + "properties": { + "x-ms-client-flatten": true, + "description": "Metadata describing a workbook for an Azure resource.", + "$ref": "#/definitions/WorkbookTemplateProperties" + } + }, + "description": "The parameters that can be provided when updating workbook template." + }, + "WorkbookTemplateErrorFieldContract": { + "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." + }, + "WorkbookTemplateError": { + "description": "Error message that will indicate why the operation failed.", + "properties": { + "error": { + "description": "Error message object that will indicate why the operation failed.", + "$ref": "#/definitions/WorkbookTemplateErrorBody" + } + } + }, + "WorkbookTemplateErrorBody": { + "description": "Error message body that will indicate why the operation failed.", + "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/WorkbookTemplateErrorFieldContract" + }, + "description": "The list of invalid fields send in request, in case of validation error." + } + } + } + }, + "parameters": { + "WorkbookTemplateResourceNameParameter": { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Application Insights component resource.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/MyWorkbookAdd.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/MyWorkbookAdd.json new file mode 100644 index 000000000000..39ef41be4f49 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/MyWorkbookAdd.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "api-version": "2021-03-08", + "resourceGroupName": "my-resource-group", + "resourceName": "deadb33f-8bee-4d3b-a059-9be8dac93960", + "subscriptionId": "00000000-0000-0000-0000-00000000", + "workbookProperties": { + "id": "c0deea5e-3344-40f2-96f8-6f8e1c3b5722", + "name": "deadb33f-8bee-4d3b-a059-9be8dac93960", + "location": "west us", + "kind": "user", + "properties": { + "sourceId": "/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/MyGroup/providers/Microsoft.Web/sites/MyTestApp-CodeLens", + "displayName": "Blah Blah Blah", + "serializedData": "{\"version\":\"Notebook/1.0\",\"items\":[{\"type\":1,\"content\":\"{\"json\":\"## New workbook\\r\\n---\\r\\n\\r\\nWelcome to your new workbook. This area will display text formatted as markdown.\\r\\n\\r\\n\\r\\nWe've included a basic analytics query to get you started. Use the `Edit` button below each section to configure it or add more sections.\"}\",\"halfWidth\":null,\"conditionalVisibility\":null},{\"type\":3,\"content\":\"{\"version\":\"KqlItem/1.0\",\"query\":\"union withsource=TableName *\\n| summarize Count=count() by TableName\\n| render barchart\",\"showQuery\":false,\"size\":1,\"aggregation\":0,\"showAnnotations\":false}\",\"halfWidth\":null,\"conditionalVisibility\":null}],\"isLocked\":false}", + "category": "workbook" + }, + "tags": [ + "TagSample01", + "TagSample02" + ] + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/my-resource-group/providers/Microsoft.Insights/myworkbooks/deadb33f-8bee-4d3b-a059-9be8dac93960", + "type": "Microsoft.Insights/myworkbooks", + "location": "westus", + "name": "deadb33f-8bee-4d3b-a059-9be8dac93960", + "kind": "user", + "properties": { + "sourceId": "/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/MyGroup/providers/Microsoft.Web/sites/MyTestApp-CodeLens", + "displayName": "Blah Blah Blah", + "serializedData": "{\"version\":\"Notebook/1.0\",\"items\":[{\"type\":1,\"content\":\"{\"json\":\"## New workbook\\r\\n---\\r\\n\\r\\nWelcome to your new workbook. This area will display text formatted as markdown.\\r\\n\\r\\n\\r\\nWe've included a basic analytics query to get you started. Use the `Edit` button below each section to configure it or add more sections.\"}\",\"halfWidth\":null,\"conditionalVisibility\":null},{\"type\":3,\"content\":\"{\"version\":\"KqlItem/1.0\",\"query\":\"union withsource=TableName *\\n| summarize Count=count() by TableName\\n| render barchart\",\"showQuery\":false,\"size\":1,\"aggregation\":0,\"showAnnotations\":false}\",\"halfWidth\":null,\"conditionalVisibility\":null}],\"isLocked\":false}", + "version": "ME", + "category": "workbook", + "storageUri": null + }, + "tags": [ + "TagSample01", + "TagSample02" + ] + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/my-resource-group/providers/Microsoft.Insights/myworkbooks/deadb33f-8bee-4d3b-a059-9be8dac93960", + "type": "", + "location": "westus", + "name": "deadb33f-8bee-4d3b-a059-9be8dac93960", + "kind": "user", + "properties": { + "sourceId": "/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/MyGroup/providers/Microsoft.Web/sites/MyTestApp-CodeLens", + "displayName": "Blah Blah Blah", + "serializedData": "{\"version\":\"Notebook/1.0\",\"items\":[{\"type\":1,\"content\":\"{\"json\":\"## New workbook\\r\\n---\\r\\n\\r\\nWelcome to your new workbook. This area will display text formatted as markdown.\\r\\n\\r\\n\\r\\nWe've included a basic analytics query to get you started. Use the `Edit` button below each section to configure it or add more sections.\"}\",\"halfWidth\":null,\"conditionalVisibility\":null},{\"type\":3,\"content\":\"{\"version\":\"KqlItem/1.0\",\"query\":\"union withsource=TableName *\\n| summarize Count=count() by TableName\\n| render barchart\",\"showQuery\":false,\"size\":1,\"aggregation\":0,\"showAnnotations\":false}\",\"halfWidth\":null,\"conditionalVisibility\":null}],\"isLocked\":false}", + "version": "ME", + "category": "workbook", + "storageUri": null + }, + "tags": [ + "TagSample01", + "TagSample02" + ] + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/MyWorkbookDelete.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/MyWorkbookDelete.json new file mode 100644 index 000000000000..6fe14177a4c3 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/MyWorkbookDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2021-03-08", + "subscriptionId": "subid", + "resourceGroupName": "my-resource-group", + "resourceName": "deadb33f-5e0d-4064-8ebb-1a4ed0313eb2" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/MyWorkbookGet.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/MyWorkbookGet.json new file mode 100644 index 000000000000..6385bf46b2b9 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/MyWorkbookGet.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2021-03-08", + "subscriptionId": "6b643656-33eb-422f-aee8-3ac145d124af", + "resourceGroupName": "my-resource-group", + "resourceName": "deadb33f-5e0d-4064-8ebb-1a4ed0313eb2" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/6b643656-33eb-422f-aee8-3ac145d124af/resourceGroups/my-resource-group/providers/Microsoft.Insights/myworkbooks/deadb33f-8bee-4d3b-a059-9be8dac93960", + "name": "deadb33f-8bee-4d3b-a059-9be8dac93960", + "type": "Microsoft.Insights/myworkbooks", + "location": "westus", + "kind": "user", + "properties": { + "displayName": "My New Workbook", + "sourceId": "/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/MyGroup/providers/Microsoft.Web/sites/MyTestApp-CodeLens", + "userId": "userId", + "serializedData": "{\"version\":\"Notebook/1.0\",\"items\":[{\"type\":1,\"content\":\"{\"json\":\"## New workbook\\r\\n---\\r\\n\\r\\nWelcome to your new workbook. This area will display text formatted as markdown.\\r\\n\\r\\n\\r\\nWe've included a basic analytics query to get you started. Use the `Edit` button below each section to configure it or add more sections.\"}\",\"halfWidth\":null,\"conditionalVisibility\":null},{\"type\":3,\"content\":\"{\"version\":\"KqlItem/1.0\",\"query\":\"union withsource=TableName *\\n| summarize Count=count() by TableName\\n| render barchart\",\"showQuery\":false,\"size\":1,\"aggregation\":0,\"showAnnotations\":false}\",\"halfWidth\":null,\"conditionalVisibility\":null}],\"isLocked\":false}", + "version": "ME", + "category": "workbook", + "timeModified": null, + "storageUri": null + }, + "tags": [ + "TagSample01", + "TagSample02" + ] + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/MyWorkbookUpdate.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/MyWorkbookUpdate.json new file mode 100644 index 000000000000..06990a02a99e --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/MyWorkbookUpdate.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2021-03-08", + "subscriptionId": "6b643656-33eb-422f-aee8-3ac145d124af", + "resourceGroupName": "my-resource-group", + "resourceName": "deadb33f-5e0d-4064-8ebb-1a4ed0313eb2", + "workbookProperties": { + "name": "deadb33f-8bee-4d3b-a059-9be8dac93960", + "location": "west us", + "tags": [ + "TagSample01", + "TagSample02" + ], + "kind": "user", + "properties": { + "displayName": "Blah Blah Blah", + "serializedData": "{\"version\":\"Notebook/1.0\",\"items\":[{\"type\":1,\"content\":\"{\"json\":\"## New workbook\\r\\n---\\r\\n\\r\\nWelcome to your new workbook. This area will display text formatted as markdown.\\r\\n\\r\\n\\r\\nWe've included a basic analytics query to get you started. Use the `Edit` button below each section to configure it or add more sections.\"}\",\"halfWidth\":null,\"conditionalVisibility\":null},{\"type\":3,\"content\":\"{\"version\":\"KqlItem/1.0\",\"query\":\"union withsource=TableName *\\n| summarize Count=count() by TableName\\n| render barchart\",\"showQuery\":false,\"size\":1,\"aggregation\":0,\"showAnnotations\":false}\",\"halfWidth\":null,\"conditionalVisibility\":null}],\"isLocked\":false}", + "version": "ME", + "sourceId": "/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/MyGroup/providers/Microsoft.Web/sites/MyTestApp-CodeLens", + "category": "workbook", + "storageUri": null + } + } + }, + "responses": { + "201": { + "body": { + "id": "c0deea5e-3344-40f2-96f8-6f8e1c3b5722", + "type": "Microsoft.Insights/myworkbooks", + "location": "westus", + "name": "deadb33f-8bee-4d3b-a059-9be8dac93960", + "tags": [ + "TagSample01", + "TagSample02" + ], + "kind": "user", + "properties": { + "displayName": "Blah Blah Blah", + "serializedData": "{\"version\":\"Notebook/1.0\",\"items\":[{\"type\":1,\"content\":\"{\"json\":\"## New workbook\\r\\n---\\r\\n\\r\\nWelcome to your new workbook. This area will display text formatted as markdown.\\r\\n\\r\\n\\r\\nWe've included a basic analytics query to get you started. Use the `Edit` button below each section to configure it or add more sections.\"}\",\"halfWidth\":null,\"conditionalVisibility\":null},{\"type\":3,\"content\":\"{\"version\":\"KqlItem/1.0\",\"query\":\"union withsource=TableName *\\n| summarize Count=count() by TableName\\n| render barchart\",\"showQuery\":false,\"size\":1,\"aggregation\":0,\"showAnnotations\":false}\",\"halfWidth\":null,\"conditionalVisibility\":null}],\"isLocked\":false}", + "version": "ME", + "sourceId": "/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/MyGroup/providers/Microsoft.Web/sites/MyTestApp-CodeLens", + "category": "workbook", + "storageUri": null + } + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/MyWorkbooksList.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/MyWorkbooksList.json new file mode 100644 index 000000000000..71cc5ed69865 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/MyWorkbooksList.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2021-03-08", + "subscriptionId": "6b643656-33eb-422f-aee8-3ac145d124af", + "resourceGroupName": "my-resource-group", + "category": "workbook" + }, + "responses": { + "200": { + "body": [ + { + "id": "/subscriptions/6b643656-33eb-422f-aee8-3ac145d124af/resourceGroups/my-resource-group/providers/Microsoft.Insights/myworkbooks/c0deea5e-3344-40f2-96f8-6f8e1c3b5722", + "type": "Microsoft.Insights/myworkbooks", + "location": "westus", + "name": "deadb33f-8bee-4d3b-a059-9be8dac93960", + "tags": [], + "kind": "user", + "properties": { + "displayName": "My Workbook 1", + "userId": "userId", + "serializedData": "{\"verion\":\"Notebook/1.0\",\"items\":[{\"type\":1,\"content\":\"{\"json\":\"## New workbook\\r\\n---\\r\\n\\r\\nWelcome to your new workbook. This area will display text formatted as markdown.\\r\\n\\r\\n\\r\\nWe've included a basic analytics query to get you started. Use the `Edit` button below each section to configure it or add more sections.\"}\",\"halfWidth\":null,\"conditionalVisibility\":null},{\"type\":3,\"content\":\"{\"version\":\"KqlItem/1.0\",\"query\":\"union withsource=TableName *\\n| summarize Count=count() by TableName\\n| render barchart\",\"showQuery\":false,\"size\":1,\"aggregation\":0,\"showAnnotations\":false}\",\"halfWidth\":null,\"conditionalVisibility\":null}],\"isLocked\":false}", + "version": "ME", + "sourceId": "/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/MyGroup/providers/Microsoft.Web/sites/MyTestApp-CodeLens", + "category": "workbook", + "timeModified": null, + "storageUri": null + } + }, + { + "id": "/subscriptions/6b643656-33eb-422f-aee8-3ac145d124af/resourceGroups/my-resource-group/providers/Microsoft.Insights/myworkbooks/c0deea5e-3344-40f2-96f8-6f8e1c3b5722", + "type": "Microsoft.Insights/myworkbooks", + "location": "westus", + "name": "deadb33f-8bee-4d3b-a059-9be8dac93960", + "kind": "user", + "tags": [ + "SampleTag01", + "SampleTag2" + ], + "properties": { + "displayName": "My Workbook 2", + "userId": "userId", + "serializedData": "{\"version\":\"Notebook/1.0\",\"items\":[{\"type\":1,\"content\":\"{\"json\":\"## New workbook\\r\\n---\\r\\n\\r\\nWelcome to your new workbook. This area will display text formatted as markdown.\\r\\n\\r\\n\\r\\nWe've included a basic analytics query to get you started. Use the `Edit` button below each section to configure it or add more sections.\"}\",\"halfWidth\":null,\"conditionalVisibility\":null},{\"type\":3,\"content\":\"{\"version\":\"KqlItem/1.0\",\"query\":\"union withsource=TableName *\\n| summarize Count=count() by TableName\\n| render barchart\",\"showQuery\":false,\"size\":1,\"aggregation\":0,\"showAnnotations\":false}\",\"halfWidth\":null,\"conditionalVisibility\":null}],\"isLocked\":false}", + "version": "ME", + "sourceId": "/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/MyGroup/providers/Microsoft.Web/sites/MyTestApp-CodeLens", + "category": "workbook", + "timeModified": null, + "storageUri": null + } + } + ], + "nextLink": null + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/MyWorkbooksList2.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/MyWorkbooksList2.json new file mode 100644 index 000000000000..4c664375c951 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/MyWorkbooksList2.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-03-08", + "subscriptionId": "6b643656-33eb-422f-aee8-3ac145d124af", + "resourceGroupName": "my-resource-group", + "category": "workbook" + }, + "responses": { + "200": { + "body": [], + "nextLink": null + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/WorkbookAdd.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/WorkbookAdd.json new file mode 100644 index 000000000000..daed083d4b6c --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/WorkbookAdd.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "api-version": "2021-03-08", + "resourceGroupName": "my-resource-group", + "resourceName": "deadb33f-8bee-4d3b-a059-9be8dac93960", + "subscriptionId": "subid", + "sourceId": "/subscriptions/00000000-0000-0000-0000-00000000/resourcegroups/MyGroup", + "workbookProperties": { + "id": "c0deea5e-3344-40f2-96f8-6f8e1c3b5722", + "location": "west us", + "name": "Blah Blah Blah", + "kind": "shared", + "properties": { + "displayName": "tttt", + "serializedData": "{\"version\":\"Notebook/1.0\",\"items\":[{\"type\":1,\"content\":\"{\"json\":\"## New workbook\\r\\n---\\r\\n\\r\\nWelcome to your new workbook. This area will display text formatted as markdown.\\r\\n\\r\\n\\r\\nWe've included a basic analytics query to get you started. Use the `Edit` button below each section to configure it or add more sections.\"}\",\"halfWidth\":null,\"conditionalVisibility\":null},{\"type\":3,\"content\":\"{\"version\":\"KqlItem/1.0\",\"query\":\"union withsource=TableName *\\n| summarize Count=count() by TableName\\n| render barchart\",\"showQuery\":false,\"size\":1,\"aggregation\":0,\"showAnnotations\":false}\",\"halfWidth\":null,\"conditionalVisibility\":null}],\"isLocked\":false}", + "category": "workbook", + "description": "Sample workbook" + }, + "tags": [ + "TagSample01", + "TagSample02" + ] + } + }, + "responses": { + "200": { + "body": { + "id": "c0deea5e-3344-40f2-96f8-6f8e1c3b5722", + "type": "", + "location": "westus", + "name": "deadb33f-8bee-4d3b-a059-9be8dac93960", + "kind": "shared", + "properties": { + "displayName": "Blah Blah Blah", + "userId": "userId", + "serializedData": "{\"version\":\"Notebook/1.0\",\"items\":[{\"type\":1,\"content\":\"{\"json\":\"## New workbook\\r\\n---\\r\\n\\r\\nWelcome to your new workbook. This area will display text formatted as markdown.\\r\\n\\r\\n\\r\\nWe've included a basic analytics query to get you started. Use the `Edit` button below each section to configure it or add more sections.\"}\",\"halfWidth\":null,\"conditionalVisibility\":null},{\"type\":3,\"content\":\"{\"version\":\"KqlItem/1.0\",\"query\":\"union withsource=TableName *\\n| summarize Count=count() by TableName\\n| render barchart\",\"showQuery\":false,\"size\":1,\"aggregation\":0,\"showAnnotations\":false}\",\"halfWidth\":null,\"conditionalVisibility\":null}],\"isLocked\":false}", + "version": "ME", + "category": "workbook", + "timeModified": null, + "storageUri": null, + "description": "Sample workbook", + "revision": "1e2f8435b98248febee70c64ac22e1bb" + }, + "tags": [ + "TagSample01", + "TagSample02" + ] + } + }, + "201": { + "body": { + "id": "c0deea5e-3344-40f2-96f8-6f8e1c3b5722", + "type": "", + "location": "westus", + "name": "deadb33f-8bee-4d3b-a059-9be8dac93960", + "kind": "shared", + "properties": { + "displayName": "Blah Blah Blah", + "userId": "userId", + "serializedData": "{\"version\":\"Notebook/1.0\",\"items\":[{\"type\":1,\"content\":\"{\"json\":\"## New workbook\\r\\n---\\r\\n\\r\\nWelcome to your new workbook. This area will display text formatted as markdown.\\r\\n\\r\\n\\r\\nWe've included a basic analytics query to get you started. Use the `Edit` button below each section to configure it or add more sections.\"}\",\"halfWidth\":null,\"conditionalVisibility\":null},{\"type\":3,\"content\":\"{\"version\":\"KqlItem/1.0\",\"query\":\"union withsource=TableName *\\n| summarize Count=count() by TableName\\n| render barchart\",\"showQuery\":false,\"size\":1,\"aggregation\":0,\"showAnnotations\":false}\",\"halfWidth\":null,\"conditionalVisibility\":null}],\"isLocked\":false}", + "version": "ME", + "category": "workbook", + "timeModified": null, + "storageUri": null, + "description": "Sample workbook", + "revision": "1e2f8435b98248febee70c64ac22e1bb" + }, + "tags": [ + "TagSample01", + "TagSample02" + ] + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/WorkbookDelete.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/WorkbookDelete.json new file mode 100644 index 000000000000..6fe14177a4c3 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/WorkbookDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2021-03-08", + "subscriptionId": "subid", + "resourceGroupName": "my-resource-group", + "resourceName": "deadb33f-5e0d-4064-8ebb-1a4ed0313eb2" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/WorkbookGet.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/WorkbookGet.json new file mode 100644 index 000000000000..cfd0adde20c0 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/WorkbookGet.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2021-03-08", + "subscriptionId": "6b643656-33eb-422f-aee8-3ac145d124af", + "resourceGroupName": "my-resource-group", + "resourceName": "deadb33f-5e0d-4064-8ebb-1a4ed0313eb2" + }, + "responses": { + "200": { + "body": { + "id": "c0deea5e-3344-40f2-96f8-6f8e1c3b5722", + "name": "deadb33f-8bee-4d3b-a059-9be8dac93960", + "type": "", + "location": "westus", + "kind": "shared", + "properties": { + "displayName": "My New Workbook", + "userId": "userId", + "serializedData": "{\"version\":\"Notebook/1.0\",\"items\":[{\"type\":1,\"content\":\"{\"json\":\"## New workbook\\r\\n---\\r\\n\\r\\nWelcome to your new workbook. This area will display text formatted as markdown.\\r\\n\\r\\n\\r\\nWe've included a basic analytics query to get you started. Use the `Edit` button below each section to configure it or add more sections.\"}\",\"halfWidth\":null,\"conditionalVisibility\":null},{\"type\":3,\"content\":\"{\"version\":\"KqlItem/1.0\",\"query\":\"union withsource=TableName *\\n| summarize Count=count() by TableName\\n| render barchart\",\"showQuery\":false,\"size\":1,\"aggregation\":0,\"showAnnotations\":false}\",\"halfWidth\":null,\"conditionalVisibility\":null}],\"isLocked\":false}", + "version": "ME", + "category": "workbook", + "timeModified": null, + "storageUri": null, + "description": "Sample workbook", + "revision": "1e2f8435b98248febee70c64ac22e1bb" + }, + "tags": [ + "TagSample01", + "TagSample02" + ] + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/WorkbookGet1.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/WorkbookGet1.json new file mode 100644 index 000000000000..ecb41edfce50 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/WorkbookGet1.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2021-03-08", + "subscriptionId": "6b643656-33eb-422f-aee8-3ac145d124af", + "resourceGroupName": "my-resource-group", + "resourceName": "deadb33f-5e0d-4064-8ebb-1a4ed0313eb2" + }, + "responses": { + "200": { + "body": { + "id": "c0deea5e-3344-40f2-96f8-6f8e1c3b5722", + "name": "deadb33f-8bee-4d3b-a059-9be8dac93960", + "type": "", + "location": "westus", + "kind": "shared", + "properties": { + "displayName": "My New Workbook", + "userId": "userId", + "serializedData": "{\"version\":\"Notebook/1.0\",\"items\":[{\"type\":1,\"content\":\"{\"json\":\"## New workbook\\r\\n---\\r\\n\\r\\nWelcome to your new workbook. This area will display text formatted as markdown.\\r\\n\\r\\n\\r\\nWe've included a basic analytics query to get you started. Use the `Edit` button below each section to configure it or add more sections.\"}\",\"halfWidth\":null,\"conditionalVisibility\":null},{\"type\":3,\"content\":\"{\"version\":\"KqlItem/1.0\",\"query\":\"union withsource=TableName *\\n| summarize Count=count() by TableName\\n| render barchart\",\"showQuery\":false,\"size\":1,\"aggregation\":0,\"showAnnotations\":false}\",\"halfWidth\":null,\"conditionalVisibility\":null}],\"isLocked\":false}", + "version": "ME", + "category": "workbook", + "timeModified": null, + "storageUri": null + }, + "tags": [ + "TagSample01", + "TagSample02" + ] + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/WorkbookManagedAdd.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/WorkbookManagedAdd.json new file mode 100644 index 000000000000..c503061bcbe9 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/WorkbookManagedAdd.json @@ -0,0 +1,106 @@ +{ + "parameters": { + "api-version": "2021-03-08", + "resourceGroupName": "my-resource-group", + "subscriptionId": "6b643656-33eb-422f-aee8-3ac145d124af", + "resourceName": "deadb33f-5e0d-4064-8ebb-1a4ed0313eb2", + "sourceId": "/subscriptions/00000000-0000-0000-0000-00000000/resourcegroups/MyGroup", + "workbookProperties": { + "id": "/subscriptions/00000000-0000-0000-0000-00000000/resourcegroups/MyGroup/providers/Microsoft.Insights/workbooks/e378d137-1243-4256-b5c4-ad2a937cae79", + "name": "e378d137-1243-4256-b5c4-ad2a937cae79", + "location": "westus", + "tags": { + "hidden-title": "tttt" + }, + "kind": "shared", + "etag": "\"4a00f78d-0000-0700-0000-5f8f616c1000\"", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/eu2cgroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": {} + } + }, + "properties": { + "displayName": "tttt", + "serializedData": "{\"version\":\"Notebook/1.0\",\"items\":[{\"type\":1,\"content\":{\"json\":\"test\"},\"name\":\"text - 0\"}],\"isLocked\":false,\"fallbackResourceIds\":[\"/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/MyGroup\"]}", + "version": "Notebook/1.0", + "category": "workbook", + "tags": [], + "description": "Sample workbook", + "storageUri": "/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/MyGroup/providers/Microsoft.Storage/storageAccounts/testStorage/blobServices/default/containers/testContainer" + } + } + }, + "responses": { + "200": { + "body": { + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/eu2cgroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": { + "clientId": "fbe75b66-01c5-4f87-a220-233af3270432", + "principalId": "075a0ca6-43f6-4434-9abf-c9b1b79f9x19" + } + } + }, + "id": "/subscriptions/00000000-0000-0000-0000-00000000/resourcegroups/MyGroup/providers/Microsoft.Insights/workbooks/72377f0c-b7e7-4044-a882-471bcbd9696e", + "name": "e378d137-1243-4256-b5c4-ad2a937cae79", + "type": "Microsoft.Insights/workbooks", + "location": "westus", + "tags": { + "hidden-title": "tttt" + }, + "kind": "user", + "etag": "\"4a00f85e-0000-0700-0000-5f8f5dfa0000\"", + "properties": { + "displayName": "tttt", + "serializedData": "{\"version\":\"Notebook/1.0\",\"items\":[],\"isLocked\":false,\"fallbackResourceIds\":[\"/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/MyGroup/providers/Microsoft.OperationalInsights/workspaces/test-ws\"]}", + "version": "Notebook/1.0", + "category": "workbook", + "userId": "70d90f65-8a70-4e42-b8d5-86gv25e0a90f", + "sourceId": "/subscriptions/00000000-0000-0000-0000-00000000/resourcegroups/MyGroup", + "timeModified": "2020-10-20T22:00:26.4229554Z", + "tags": [], + "description": "Sample workbook", + "revision": "1e2f8435b98248febee70c64ac22e1bb", + "storageUri": "/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/MyGroup/providers/Microsoft.Storage/storageAccounts/testStorage/blobServices/default/containers/testContainer" + } + } + }, + "201": { + "body": { + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/eu2cgroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": { + "clientId": "fbe75b66-01c5-4f87-a220-233af3270432", + "principalId": "075a0ca6-43f6-4434-9abf-c9b1b79f9x19" + } + } + }, + "id": "/subscriptions/00000000-0000-0000-0000-00000000/resourcegroups/MyGroup/providers/Microsoft.Insights/workbooks/72377f0c-b7e7-4044-a882-471bcbd9696e", + "name": "e378d137-1243-4256-b5c4-ad2a937cae79", + "type": "Microsoft.Insights/workbooks", + "location": "westus", + "tags": { + "hidden-title": "tttt" + }, + "kind": "user", + "etag": "\"4a00f85e-0000-0700-0000-5f8f5dfa0000\"", + "properties": { + "displayName": "tttt", + "serializedData": "{\"version\":\"Notebook/1.0\",\"items\":[],\"isLocked\":false,\"fallbackResourceIds\":[\"/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/MyGroup/providers/Microsoft.OperationalInsights/workspaces/test-ws\"]}", + "version": "Notebook/1.0", + "category": "workbook", + "userId": "70d90f65-8a70-4e42-b8d5-86gv25e0a90f", + "sourceId": "/subscriptions/00000000-0000-0000-0000-00000000/resourcegroups/MyGroup", + "timeModified": "2020-10-20T22:00:26.4229554Z", + "tags": [], + "description": "Sample workbook", + "revision": "1e2f8435b98248febee70c64ac22e1bb", + "storageUri": "/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/MyGroup/providers/Microsoft.Storage/storageAccounts/testStorage/blobServices/default/containers/testContainer" + } + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/WorkbookManagedGet.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/WorkbookManagedGet.json new file mode 100644 index 000000000000..7b451edb229a --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/WorkbookManagedGet.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2021-03-08", + "subscriptionId": "8980832b-9589-4ac2-b322-a6ae6a97f02b", + "resourceGroupName": "my-resource-group", + "resourceName": "deadb33f-5e0d-4064-8ebb-1a4ed0313eb2" + }, + "responses": { + "200": { + "body": { + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/eu2cgroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": { + "clientId": "fbe75b66-01c5-4f87-a220-233af3270432", + "principalId": "075a0ca6-43f6-4434-9abf-c9b1b79f9x19" + }, + "/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/eu2cgroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id2": { + "clientId": "47429305-c0d3-40bc-8595-6194sdfdf3dc", + "principalId": "bf9ebbc8-b92d-4752-8e66-c999d560326e0" + } + } + }, + "id": "/subscriptions/8980832b-9589-4ac2-b322-a6ae6a97f02b/resourcegroups/vutest1/providers/Microsoft.Insights/workbooks/76cb9d13-93c0-4939-ab7d-4a7bd959e1ad", + "name": "76cb9d13-93c0-4939-ab7d-4a7bd959e1ad", + "type": "Microsoft.Insights/workbooks", + "location": "westcentralus", + "tags": { + "hidden-title": "azuremon" + }, + "kind": "shared", + "etag": "\"0c003cb4-0000-0600-0000-5f5203c60000\"", + "properties": { + "displayName": "azuremon", + "serializedData": "{\"version\":\"Notebook/1.0\",\"items\":[{\"type\":1,\"content\":{\"json\":\"testing1\"},\"showPin\":false,\"name\":\"text - 0\"}],\"isLocked\":true,\"fallbackResourceIds\":[\"Azure Monitor\"]}", + "version": "Notebook/1.0", + "category": "workbook", + "userId": "51d1409c-d725-4550-ac03-98c0bef9ef07", + "sourceId": "azure monitor", + "timeModified": "2020-09-04T09:07:17.735638Z", + "tags": [], + "description": "Sample workbook", + "revision": "1e2f8435b98248febee70c64ac22e1bb", + "storageUri": "/subscriptions/8980832b-9589-4ac2-b322-a6ae6a97f02b/resourceGroups/VuTest1/providers/Microsoft.Storage/storageAccounts/vutest1/blobServices/default/containers/testcmk2" + } + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/WorkbookManagedUpdate.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/WorkbookManagedUpdate.json new file mode 100644 index 000000000000..70a82b300308 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/WorkbookManagedUpdate.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "api-version": "2021-03-08", + "subscriptionId": "6b643656-33eb-422f-aee8-3ac145d124af", + "resourceGroupName": "my-resource-group", + "resourceName": "deadb33f-5e0d-4064-8ebb-1a4ed0313eb2", + "sourceId": "/subscriptions/00000000-0000-0000-0000-00000000/resourcegroups/MyGroup", + "id": "e378d137-1243-4256-b5c4-562a937cae79", + "name": "e378d137-1243-4256-b5c4-562a937cae79", + "location": "westus", + "tags": null, + "type": "Microsoft.Insights/workbooks", + "kind": "shared", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/eu2cgroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": {}, + "/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/eu2cgroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id2": {} + } + }, + "properties": { + "displayName": "tttt", + "version": "Notebook/1.0", + "serializedData": "{\"version\":\"Notebook/1.0\",\"items\":[{\"type\":1,\"content\":{\"json\":\"test\"},\"name\":\"text - 0\"}],\"isLocked\":false,\"fallbackResourceIds\":[\"/subscriptions/8980832b-9589-4ac2-b322-a6ae6a97f02b/resourceGroups/MyGroup\"]}", + "category": "workbook", + "isPersisted": true, + "timeModified": "2020-10-20T22:00:26.4229554Z", + "tags": [], + "description": "Sample workbook", + "storageUri": "/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/MyGroup/providers/Microsoft.Storage/storageAccounts/testStorage/blobServices/default/containers/testContainer" + } + }, + "responses": { + "201": { + "body": { + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/eu2cgroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": { + "clientId": "fbe75b66-01c5-4f87-a220-233af3270432", + "principalId": "075a0ca6-43f6-4434-9abf-c9b1b79f9x19" + }, + "/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/eu2cgroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id2": { + "clientId": "47429305-c0d3-40bc-8595-6194sdfdf3dc", + "principalId": "bf9ebbc8-b92d-4752-8e66-c999d560326e0" + } + } + }, + "id": "/subscriptions/8980832b-9589-4ac2-b322-a6ae6a97f02b/resourcegroups/MyGroup/providers/Microsoft.Insights/workbooks/e378d137-1243-4256-b5c4-562a937cae79", + "name": "e378d137-1243-4256-b5c4-562a937cae79", + "type": "Microsoft.Insights/workbooks", + "location": "westus", + "tags": { + "hidden-title": "tttt" + }, + "kind": "shared", + "etag": "\"4a00f78d-0000-0700-0000-5f8f616c0000\"", + "properties": { + "displayName": "tttt", + "serializedData": "{\"version\":\"Notebook/1.0\",\"items\":[{\"type\":1,\"content\":{\"json\":\"test\"},\"name\":\"text - 0\"}],\"isLocked\":false,\"fallbackResourceIds\":[\"/subscriptions/8980832b-9589-4ac2-b322-a6ae6a97f02b/resourceGroups/MyGroup\"]}", + "version": "Notebook/1.0", + "category": "workbook", + "userId": "70d90f65-8a70-4e42-b8d5-863725e0a90f", + "sourceId": "/subscriptions/8980832b-9589-4ac2-b322-a6ae6a97f02b/resourcegroups/MyGroup", + "timeModified": "2020-10-20T22:15:08.1875458Z", + "tags": [], + "description": "Sample workbook", + "revision": "1e2f8435b98248febee70c64ac22e1bb", + "storageUri": "/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/MyGroup/providers/Microsoft.Storage/storageAccounts/testStorage/blobServices/default/containers/testContainer" + } + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/WorkbookRevisionGet.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/WorkbookRevisionGet.json new file mode 100644 index 000000000000..63a551267bc0 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/WorkbookRevisionGet.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2021-03-08", + "subscriptionId": "6b643656-33eb-422f-aee8-3ac145d124af", + "resourceGroupName": "my-resource-group", + "resourceName": "deadb33f-5e0d-4064-8ebb-1a4ed0313eb2", + "revisionId": "1e2f8435b98248febee70c64ac22e1ab" + }, + "responses": { + "200": { + "body": { + "id": "c0deea5e-3344-40f2-96f8-6f8e1c3b5722", + "name": "deadb33f-8bee-4d3b-a059-9be8dac93960", + "type": "", + "location": "westus", + "kind": "shared", + "properties": { + "displayName": "My New Workbook", + "userId": "userId", + "serializedData": "{\"version\":\"Notebook/1.0\",\"items\":[{\"type\":1,\"content\":\"{\"json\":\"## New workbook\\r\\n---\\r\\n\\r\\nWelcome to your new workbook. This area will display text formatted as markdown.\\r\\n\\r\\n\\r\\nWe've included a basic analytics query to get you started. Use the `Edit` button below each section to configure it or add more sections.\"}\",\"halfWidth\":null,\"conditionalVisibility\":null},{\"type\":3,\"content\":\"{\"version\":\"KqlItem/1.0\",\"query\":\"union withsource=TableName *\\n| summarize Count=count() by TableName\\n| render barchart\",\"showQuery\":false,\"size\":1,\"aggregation\":0,\"showAnnotations\":false}\",\"halfWidth\":null,\"conditionalVisibility\":null}],\"isLocked\":false}", + "version": "ME", + "category": "workbook", + "timeModified": null, + "storageUri": null, + "description": "Sample workbook", + "revision": "1e2f8435b98248febee70c64ac22e1ab" + }, + "tags": [ + "TagSample01", + "TagSample02" + ] + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/WorkbookRevisionsList.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/WorkbookRevisionsList.json new file mode 100644 index 000000000000..7f2b5b6311e3 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/WorkbookRevisionsList.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2021-03-08", + "subscriptionId": "6b643656-33eb-422f-aee8-3ac145d124af", + "resourceGroupName": "my-resource-group", + "resourceName": "deadb33f-5e0d-4064-8ebb-1a4ed0313eb2" + }, + "responses": { + "200": { + "body": [ + { + "id": "c0deea5e-3344-40f2-96f8-6f8e1c3b5722", + "type": "", + "location": "westus", + "name": "deadb33f-8bee-4d3b-a059-9be8dac93960", + "tags": [], + "properties": { + "name": "My Workbook 1", + "userId": "userId", + "sourceId": "Azure Monitor", + "serializedData": null, + "version": "ME", + "workbookId": "deadb33f-8bee-4d3b-a059-9be8dac93960", + "kind": "shared", + "category": "workbook", + "timeModified": null, + "storageUri": null, + "description": "Sample workbook", + "revision": "1e2f8435b98248febee70c64ac22e1ab" + } + }, + { + "id": "c0deea5e-3344-40f2-96f8-6f8e1c3b5722", + "type": "", + "location": "westus", + "name": "deadb33f-8bee-4d3b-a059-9be8dac93960", + "tags": [ + "SampleTag01", + "SampleTag2" + ], + "properties": { + "name": "My Workbook 2", + "userId": "userId", + "sourceId": "Azure Monitor", + "serializedData": null, + "version": "ME", + "workbookId": "deadb33f-8bee-4d3b-a059-9be8dac93960", + "kind": "shared", + "category": "workbook", + "timeModified": null, + "storageUri": null, + "description": "Sample workbook", + "revision": "1e2f8435b98248febee70c64ac22e1bb" + } + } + ], + "nextLink": null + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/WorkbookUpdate.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/WorkbookUpdate.json new file mode 100644 index 000000000000..3346fb2e2120 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/WorkbookUpdate.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2021-03-08", + "subscriptionId": "6b643656-33eb-422f-aee8-3ac145d124af", + "resourceGroupName": "my-resource-group", + "resourceName": "deadb33f-5e0d-4064-8ebb-1a4ed0313eb2", + "sourceId": "/subscriptions/ad2f1a83-caac-4e21-9d2a-9ca3f87105e2/resourceGroups/Default-Web-WestUS/providers/Microsoft.Web/sites/MyTestApp-CodeLens1", + "workbookProperties": { + "name": "deadb33f-8bee-4d3b-a059-9be8dac93960", + "location": "west us", + "kind": "shared", + "tags": [ + "TagSample01", + "TagSample02" + ], + "properties": { + "name": "Blah Blah Blah", + "userId": "userId", + "serializedData": "{\"version\":\"Notebook/1.0\",\"items\":[{\"type\":1,\"content\":\"{\"json\":\"## New workbook\\r\\n---\\r\\n\\r\\nWelcome to your new workbook. This area will display text formatted as markdown.\\r\\n\\r\\n\\r\\nWe've included a basic analytics query to get you started. Use the `Edit` button below each section to configure it or add more sections.\"}\",\"halfWidth\":null,\"conditionalVisibility\":null},{\"type\":3,\"content\":\"{\"version\":\"KqlItem/1.0\",\"query\":\"union withsource=TableName *\\n| summarize Count=count() by TableName\\n| render barchart\",\"showQuery\":false,\"size\":1,\"aggregation\":0,\"showAnnotations\":false}\",\"halfWidth\":null,\"conditionalVisibility\":null}],\"isLocked\":false}", + "version": "ME", + "workbookId": "deadb33f-8bee-4d3b-a059-9be8dac93960", + "category": "workbook", + "timeModified": null, + "description": "Sample workbook" + } + } + }, + "responses": { + "201": { + "body": { + "id": "c0deea5e-3344-40f2-96f8-6f8e1c3b5722", + "type": "", + "location": "westus", + "name": "deadb33f-8bee-4d3b-a059-9be8dac93960", + "kind": "shared", + "tags": [ + "TagSample01", + "TagSample02" + ], + "properties": { + "displayName": "Blah Blah Blah", + "userId": "userId", + "serializedData": "{\"version\":\"Notebook/1.0\",\"items\":[{\"type\":1,\"content\":\"{\"json\":\"## New workbook\\r\\n---\\r\\n\\r\\nWelcome to your new workbook. This area will display text formatted as markdown.\\r\\n\\r\\n\\r\\nWe've included a basic analytics query to get you started. Use the `Edit` button below each section to configure it or add more sections.\"}\",\"halfWidth\":null,\"conditionalVisibility\":null},{\"type\":3,\"content\":\"{\"version\":\"KqlItem/1.0\",\"query\":\"union withsource=TableName *\\n| summarize Count=count() by TableName\\n| render barchart\",\"showQuery\":false,\"size\":1,\"aggregation\":0,\"showAnnotations\":false}\",\"halfWidth\":null,\"conditionalVisibility\":null}],\"isLocked\":false}", + "version": "ME", + "category": "workbook", + "timeModified": null, + "storageUri": null, + "description": "Sample workbook", + "revision": "1e2f8435b98248febee70c64ac22e1bb" + } + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/WorkbooksList.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/WorkbooksList.json new file mode 100644 index 000000000000..88c54c67fe23 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/WorkbooksList.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "api-version": "2021-03-08", + "subscriptionId": "6b643656-33eb-422f-aee8-3ac145d124af", + "resourceGroupName": "my-resource-group", + "category": "workbook", + "sourceId": "/subscriptions/ad2f1a83-caac-4e21-9d2a-9ca3f87105e2/resourceGroups/Default-Web-WestUS/providers/Microsoft.Web/sites/MyTestApp-CodeLens1" + }, + "responses": { + "200": { + "body": [ + { + "id": "c0deea5e-3344-40f2-96f8-6f8e1c3b5722", + "type": "", + "location": "westus", + "name": "deadb33f-8bee-4d3b-a059-9be8dac93960", + "tags": [], + "properties": { + "name": "My Workbook 1", + "userId": "userId", + "sourceId": "Azure Monitor", + "serializedData": "{\"verion\":\"Notebook/1.0\",\"items\":[{\"type\":1,\"content\":\"{\"json\":\"## New workbook\\r\\n---\\r\\n\\r\\nWelcome to your new workbook. This area will display text formatted as markdown.\\r\\n\\r\\n\\r\\nWe've included a basic analytics query to get you started. Use the `Edit` button below each section to configure it or add more sections.\"}\",\"halfWidth\":null,\"conditionalVisibility\":null},{\"type\":3,\"content\":\"{\"version\":\"KqlItem/1.0\",\"query\":\"union withsource=TableName *\\n| summarize Count=count() by TableName\\n| render barchart\",\"showQuery\":false,\"size\":1,\"aggregation\":0,\"showAnnotations\":false}\",\"halfWidth\":null,\"conditionalVisibility\":null}],\"isLocked\":false}", + "version": "ME", + "workbookId": "deadb33f-8bee-4d3b-a059-9be8dac93960", + "kind": "shared", + "category": "workbook", + "timeModified": null, + "storageUri": null, + "description": "Sample workbook", + "revision": "1e2f8435b98248febee70c64ac22e1bb" + } + }, + { + "id": "c0deea5e-3344-40f2-96f8-6f8e1c3b5722", + "type": "", + "location": "westus", + "name": "deadb33f-8bee-4d3b-a059-9be8dac93960", + "tags": [ + "SampleTag01", + "SampleTag2" + ], + "properties": { + "name": "My Workbook 2", + "userId": "userId", + "sourceId": "Azure Monitor", + "serializedData": "{\"version\":\"Notebook/1.0\",\"items\":[{\"type\":1,\"content\":\"{\"json\":\"## New workbook\\r\\n---\\r\\n\\r\\nWelcome to your new workbook. This area will display text formatted as markdown.\\r\\n\\r\\n\\r\\nWe've included a basic analytics query to get you started. Use the `Edit` button below each section to configure it or add more sections.\"}\",\"halfWidth\":null,\"conditionalVisibility\":null},{\"type\":3,\"content\":\"{\"version\":\"KqlItem/1.0\",\"query\":\"union withsource=TableName *\\n| summarize Count=count() by TableName\\n| render barchart\",\"showQuery\":false,\"size\":1,\"aggregation\":0,\"showAnnotations\":false}\",\"halfWidth\":null,\"conditionalVisibility\":null}],\"isLocked\":false}", + "version": "ME", + "workbookId": "deadb33f-8bee-4d3b-a059-9be8dac93960", + "kind": "shared", + "category": "workbook", + "timeModified": null, + "storageUri": null, + "description": "Sample workbook", + "revision": "1e2f8435b98248febee70c64ac22e1bb" + } + } + ], + "nextLink": null + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/WorkbooksList2.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/WorkbooksList2.json new file mode 100644 index 000000000000..4c664375c951 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/WorkbooksList2.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-03-08", + "subscriptionId": "6b643656-33eb-422f-aee8-3ac145d124af", + "resourceGroupName": "my-resource-group", + "category": "workbook" + }, + "responses": { + "200": { + "body": [], + "nextLink": null + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/WorkbooksManagedList.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/WorkbooksManagedList.json new file mode 100644 index 000000000000..f21b223e3125 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/examples/WorkbooksManagedList.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2021-03-08", + "subscriptionId": "6b643656-33eb-422f-aee8-3ac119r124af", + "resourceGroupName": "my-resource-group", + "category": "workbook", + "sourceId": "/subscriptions/ad2f1a83-caac-4e21-9d2a-9ca3f87105e2/resourceGroups/Default-Web-WestUS/providers/Microsoft.Web/sites/MyTestApp-CodeLens1" + }, + "responses": { + "200": { + "body": [ + { + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/eu2cgroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": { + "clientId": "fbe75b66-01c5-4f87-a220-233af3270433", + "principalId": "075a0ca6-4326-4434-9abf-c9b1b79f9x19" + } + } + }, + "id": "c0deea5e-3344-40f2-96f8-6f8e1cdd5722", + "type": "", + "location": "westus", + "name": "deadb33f-8bee-4ddq-a059-9be8dac93960", + "tags": [], + "properties": { + "name": "My Workbook 1", + "userId": "userId", + "sourceId": "Azure Monitor", + "serializedData": "{\"verion\":\"Notebook/1.0\",\"items\":[{\"type\":1,\"content\":\"{\"json\":\"## New workbook\\r\\n---\\r\\n\\r\\nWelcome to your new workbook. This area will display text formatted as markdown.\\r\\n\\r\\n\\r\\nWe've included a basic analytics query to get you started. Use the `Edit` button below each section to configure it or add more sections.\"}\",\"halfWidth\":null,\"conditionalVisibility\":null},{\"type\":3,\"content\":\"{\"version\":\"KqlItem/1.0\",\"query\":\"union withsource=TableName *\\n| summarize Count=count() by TableName\\n| render barchart\",\"showQuery\":false,\"size\":1,\"aggregation\":0,\"showAnnotations\":false}\",\"halfWidth\":null,\"conditionalVisibility\":null}],\"isLocked\":false}", + "version": "ME", + "workbookId": "deadb33f-8bee-4ddq-a059-9be8dac93960", + "kind": "shared", + "category": "workbook", + "timeModified": null, + "description": "Sample workbook", + "revision": "1e2f8435b98248febee70c64ac22e1bb", + "storageUri": "/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/MyGroup/providers/Microsoft.Storage/storageAccounts/testStorage/blobServices/default/containers/testContainer" + } + }, + { + "id": "c0deea5e-3344-40f2-96f8-6f8e1cdd5722", + "type": "", + "location": "westus", + "name": "deadb33f-8bee-4ddq-a059-9be8dac93960", + "tags": [ + "SampleTag01", + "SampleTag2" + ], + "properties": { + "name": "My Workbook 2", + "userId": "userId", + "sourceId": "Azure Monitor", + "serializedData": "{\"version\":\"Notebook/1.0\",\"items\":[{\"type\":1,\"content\":\"{\"json\":\"## New workbook\\r\\n---\\r\\n\\r\\nWelcome to your new workbook. This area will display text formatted as markdown.\\r\\n\\r\\n\\r\\nWe've included a basic analytics query to get you started. Use the `Edit` button below each section to configure it or add more sections.\"}\",\"halfWidth\":null,\"conditionalVisibility\":null},{\"type\":3,\"content\":\"{\"version\":\"KqlItem/1.0\",\"query\":\"union withsource=TableName *\\n| summarize Count=count() by TableName\\n| render barchart\",\"showQuery\":false,\"size\":1,\"aggregation\":0,\"showAnnotations\":false}\",\"halfWidth\":null,\"conditionalVisibility\":null}],\"isLocked\":false}", + "version": "ME", + "workbookId": "deadb33f-8bee-4ddq-a059-9be8dac93960", + "kind": "shared", + "category": "workbook", + "timeModified": null, + "description": "Sample workbook", + "revision": "1e2f8435b98248febee70c64ac22e1bb", + "storageUri": "/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/MyGroup/providers/Microsoft.Storage/storageAccounts/testStorage/blobServices/default/containers/testContainer" + } + } + ] + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/myworkbooks_API.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/myworkbooks_API.json new file mode 100644 index 000000000000..6d2b747a1a88 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/myworkbooks_API.json @@ -0,0 +1,607 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApplicationInsightsManagementClient", + "description": "Azure Application Insights private workbook type.", + "version": "2021-03-08" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://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/myWorkbooks": { + "get": { + "description": "Get all private workbooks defined within a specified resource group and category.", + "operationId": "MyWorkbooks_ListByResourceGroup", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/CategoryParameter" + }, + { + "$ref": "#/parameters/TagsParameter" + }, + { + "$ref": "#/parameters/SourceIdParameter" + }, + { + "$ref": "#/parameters/CanFetchWorkbookContentParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A list containing 0 or more private workbook definitions.", + "schema": { + "$ref": "#/definitions/MyWorkbooksListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/MyWorkbookError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "WorkbooksList": { + "$ref": "./examples/MyWorkbooksList.json" + }, + "WorkbooksList2": { + "$ref": "./examples/MyWorkbooksList2.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Insights/myWorkbooks": { + "get": { + "description": "Get all private workbooks defined within a specified subscription and category.", + "operationId": "MyWorkbooks_ListBySubscription", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/CategoryParameter" + }, + { + "$ref": "#/parameters/TagsParameter" + }, + { + "$ref": "#/parameters/CanFetchWorkbookContentParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A list containing 0 or more private workbook definitions.", + "schema": { + "$ref": "#/definitions/MyWorkbooksListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/MyWorkbookError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "WorkbooksList": { + "$ref": "./examples/MyWorkbooksList.json" + }, + "WorkbooksList2": { + "$ref": "./examples/MyWorkbooksList2.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/myWorkbooks/{resourceName}": { + "get": { + "description": "Get a single private workbook by its resourceName.", + "operationId": "MyWorkbooks_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkbookResourceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A private workbook definition.", + "schema": { + "$ref": "#/definitions/MyWorkbook" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/MyWorkbookError" + } + } + }, + "x-ms-examples": { + "WorkbookGet": { + "$ref": "./examples/MyWorkbookGet.json" + } + } + }, + "delete": { + "description": "Delete a private workbook.", + "operationId": "MyWorkbooks_Delete", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkbookResourceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The private workbook has been successfully deleted." + }, + "204": { + "description": "The resource doesn't exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/MyWorkbookError" + } + } + }, + "x-ms-examples": { + "WorkbookDelete": { + "$ref": "./examples/MyWorkbookDelete.json" + } + } + }, + "put": { + "description": "Create a new private workbook.", + "operationId": "MyWorkbooks_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkbookResourceNameParameter" + }, + { + "$ref": "#/parameters/SourceIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "workbookProperties", + "description": "Properties that need to be specified to create a new private workbook.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/MyWorkbook" + } + } + ], + "responses": { + "200": { + "description": "The newly created private workbook.", + "schema": { + "$ref": "#/definitions/MyWorkbook" + } + }, + "201": { + "description": "The newly created private workbook.", + "schema": { + "$ref": "#/definitions/MyWorkbook" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/MyWorkbookError" + } + } + }, + "x-ms-examples": { + "WorkbookAdd": { + "$ref": "./examples/MyWorkbookAdd.json" + } + } + }, + "patch": { + "description": "Updates a private workbook that has already been added.", + "operationId": "MyWorkbooks_Update", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkbookResourceNameParameter" + }, + { + "$ref": "#/parameters/SourceIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "workbookProperties", + "description": "Properties that need to be specified to create a new private workbook.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/MyWorkbook" + } + } + ], + "responses": { + "201": { + "description": "The private workbook definition updated.", + "schema": { + "$ref": "#/definitions/MyWorkbook" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/MyWorkbookError" + } + } + }, + "x-ms-examples": { + "WorkbookUpdate": { + "$ref": "./examples/MyWorkbookUpdate.json" + } + } + } + } + }, + "definitions": { + "MyWorkbookResource": { + "properties": { + "identity": { + "description": "Identity used for BYOS", + "$ref": "#/definitions/MyWorkbookManagedIdentity" + }, + "id": { + "type": "string", + "description": "Azure resource Id", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "name": { + "type": "string", + "description": "Azure resource name", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "type": { + "type": "string", + "description": "Azure resource type", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "location": { + "type": "string", + "description": "Resource location", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "tags": { + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + }, + "etag": { + "additionalProperties": { + "type": "string" + }, + "description": "Resource etag" + } + }, + "x-ms-azure-resource": true, + "description": "An azure resource object" + }, + "MyWorkbooksListResult": { + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/MyWorkbook" + }, + "description": "An array of private workbooks." + }, + "nextLink": { + "type": "string" + } + }, + "description": "Workbook list result." + }, + "MyWorkbook": { + "description": "An Application Insights private workbook definition.", + "allOf": [ + { + "$ref": "#/definitions/MyWorkbookResource" + } + ], + "properties": { + "kind": { + "type": "string", + "description": "The kind of workbook. Choices are user and shared.", + "enum": [ + "user", + "shared" + ], + "x-ms-enum": { + "name": "kind", + "modelAsString": true + } + }, + "properties": { + "x-ms-client-flatten": true, + "description": "Metadata describing a workbook for an Azure resource.", + "$ref": "#/definitions/MyWorkbookProperties" + }, + "systemData": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData", + "readOnly": true + } + } + }, + "MyWorkbookProperties": { + "description": "Properties that contain a private workbook.", + "required": [ + "displayName", + "category", + "serializedData" + ], + "properties": { + "displayName": { + "type": "string", + "description": "The user-defined name of the private workbook." + }, + "serializedData": { + "type": "string", + "x-nullable": true, + "description": "Configuration of this particular private workbook. 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 private workbook." + }, + "timeModified": { + "type": "string", + "description": "Date and time in UTC of the last modification that was made to this private workbook definition.", + "readOnly": true + }, + "category": { + "type": "string", + "description": "Workbook category, as defined by the user at creation time." + }, + "tags": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of 0 or more tags that are associated with this private workbook definition" + }, + "userId": { + "type": "string", + "description": "Unique user id of the specific user that owns this private workbook.", + "readOnly": true + }, + "sourceId": { + "type": "string", + "description": "Optional resourceId for a source resource." + }, + "storageUri": { + "type": "string", + "x-nullable": true, + "description": "BYOS Storage Account URI" + } + } + }, + "MyWorkbookError": { + "description": "Error response.", + "properties": { + "error": { + "$ref": "#/definitions/ErrorDefinition", + "description": "The error details." + } + } + }, + "ErrorDefinition": { + "description": "Error definition.", + "properties": { + "code": { + "description": "Service specific error code which serves as the substatus for the HTTP error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "Description of the error.", + "type": "string", + "readOnly": true + }, + "innererror": { + "description": "Internal error details.", + "items": { + "$ref": "#/definitions/InnerErrorTrace" + }, + "readOnly": true + } + } + }, + "InnerErrorTrace": { + "description": "Error details", + "properties": { + "trace": { + "description": "detailed error trace", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + } + } + }, + "MyWorkbookManagedIdentity": { + "description": "Customer Managed Identity", + "properties": { + "userAssignedIdentities": { + "$ref": "#/definitions/MyWorkbookUserAssignedIdentities" + }, + "type": { + "type": "string", + "description": "The identity type.", + "enum": [ + "UserAssigned", + "None" + ] + } + } + }, + "MyWorkbookUserAssignedIdentities": { + "description": "Customer Managed 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." + } + } + } + }, + "parameters": { + "WorkbookResourceNameParameter": { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Application Insights component resource.", + "x-ms-parameter-location": "method" + }, + "CategoryParameter": { + "name": "category", + "in": "query", + "required": true, + "type": "string", + "enum": [ + "workbook", + "TSG", + "performance", + "retention" + ], + "x-ms-enum": { + "name": "CategoryType", + "modelAsString": true + }, + "description": "Category of workbook to return.", + "x-ms-parameter-location": "method" + }, + "SourceIdParameter": { + "name": "sourceId", + "in": "query", + "required": false, + "type": "string", + "description": "Azure Resource Id that will fetch all linked workbooks.", + "x-ms-parameter-location": "method" + }, + "CanFetchWorkbookContentParameter": { + "name": "canFetchContent", + "in": "query", + "required": false, + "type": "boolean", + "description": "Flag indicating whether or not to return the full content for each applicable workbook. If false, only return summary content for workbooks.", + "x-ms-parameter-location": "method" + }, + "TagsParameter": { + "name": "tags", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "csv", + "description": "Tags presents on each workbook returned.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/workbookOperations_API.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/workbookOperations_API.json new file mode 100644 index 000000000000..abcf9a510a93 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/workbookOperations_API.json @@ -0,0 +1,158 @@ +{ + "swagger": "2.0", + "info": { + "title": "WorkbookClient", + "description": "Azure client for Workbook.", + "version": "2021-03-08" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/providers/Microsoft.Insights/operations": { + "get": { + "tags": [ + "Operations" + ], + "description": "Lists all of the available insights REST API operations.", + "operationId": "Operations_List", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Insights error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + } + } + }, + "definitions": { + "ErrorResponse": { + "description": "Error response indicates Insights service is not able to process the incoming request. The reason is provided in the error message.", + "type": "object", + "properties": { + "code": { + "description": "Error code.", + "type": "string" + }, + "message": { + "description": "Error message indicating why the operation failed.", + "type": "string" + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ErrorFieldContract" + }, + "description": "The list of invalid fields send in request, in case of validation error." + } + } + }, + "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." + }, + "Operation": { + "description": "Azure Workbooks REST API operation", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}", + "type": "string" + }, + "display": { + "description": "The object that represents the operation.", + "properties": { + "provider": { + "description": "Service provider: Microsoft.Insights", + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed: Profile, endpoint, etc.", + "type": "string" + }, + "operation": { + "description": "Operation type: Read, write, delete, etc.", + "type": "string" + } + } + } + } + }, + "OperationListResult": { + "description": "Result of the request to list Azure Workbooks operations. It contains a list of operations and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "description": "List of Workbook operations supported by the Microsoft.Insights resource provider." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/workbooks_API.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/workbooks_API.json new file mode 100644 index 000000000000..1b6848a9216c --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2021-03-08/workbooks_API.json @@ -0,0 +1,792 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApplicationInsightsManagementClient", + "description": "Azure Application Insights workbook type.", + "version": "2021-03-08" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Insights/workbooks": { + "get": { + "description": "Get all private workbooks defined within a specified subscription and category.", + "operationId": "Workbooks_ListBySubscription", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/CategoryParameter" + }, + { + "$ref": "#/parameters/TagsParameter" + }, + { + "$ref": "#/parameters/CanFetchWorkbookContentParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A list containing 0 or more workbook definitions.", + "schema": { + "$ref": "#/definitions/WorkbooksListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/WorkbookError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "WorkbooksList": { + "$ref": "./examples/WorkbooksList.json" + }, + "WorkbooksList2": { + "$ref": "./examples/WorkbooksList2.json" + }, + "WorkbooksManagedList": { + "$ref": "./examples/WorkbooksManagedList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/workbooks": { + "get": { + "description": "Get all Workbooks defined within a specified resource group and category.", + "operationId": "Workbooks_ListByResourceGroup", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/CategoryParameter" + }, + { + "$ref": "#/parameters/TagsParameter" + }, + { + "$ref": "#/parameters/SourceIdParameter" + }, + { + "$ref": "#/parameters/CanFetchWorkbookContentParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A list containing 0 or more workbook definitions.", + "schema": { + "$ref": "#/definitions/WorkbooksListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/WorkbookError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "WorkbooksList": { + "$ref": "./examples/WorkbooksList.json" + }, + "WorkbooksManagedList": { + "$ref": "./examples/WorkbooksManagedList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/workbooks/{resourceName}": { + "get": { + "description": "Get a single workbook by its resourceName.", + "operationId": "Workbooks_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkbookResourceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A workbook definition.", + "schema": { + "$ref": "#/definitions/Workbook" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/WorkbookError" + } + } + }, + "x-ms-examples": { + "WorkbookGet": { + "$ref": "./examples/WorkbookGet.json" + }, + "WorkbookGet1": { + "$ref": "./examples/WorkbookGet1.json" + }, + "WorkbookManagedGet": { + "$ref": "./examples/WorkbookManagedGet.json" + } + } + }, + "delete": { + "description": "Delete a workbook.", + "operationId": "Workbooks_Delete", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkbookResourceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The workbook has been successfully deleted." + }, + "204": { + "description": "The resource doesn't exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/WorkbookError" + } + } + }, + "x-ms-examples": { + "WorkbookDelete": { + "$ref": "./examples/WorkbookDelete.json" + } + } + }, + "put": { + "description": "Create a new workbook.", + "operationId": "Workbooks_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkbookResourceNameParameter" + }, + { + "$ref": "#/parameters/SourceIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "workbookProperties", + "description": "Properties that need to be specified to create a new workbook.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Workbook" + } + } + ], + "responses": { + "200": { + "description": "The newly created workbook.", + "schema": { + "$ref": "#/definitions/Workbook" + } + }, + "201": { + "description": "The newly created workbook.", + "schema": { + "$ref": "#/definitions/Workbook" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/WorkbookError" + } + } + }, + "x-ms-examples": { + "WorkbookManagedAdd": { + "$ref": "./examples/WorkbookManagedAdd.json" + }, + "WorkbookAdd": { + "$ref": "./examples/WorkbookAdd.json" + } + } + }, + "patch": { + "description": "Updates a workbook that has already been added.", + "operationId": "Workbooks_Update", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkbookResourceNameParameter" + }, + { + "$ref": "#/parameters/SourceIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "WorkbookUpdateParameters", + "description": "Properties that need to be specified to create a new workbook.", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/WorkbookUpdateParameters" + } + } + ], + "responses": { + "201": { + "description": "The workbook definition updated.", + "schema": { + "$ref": "#/definitions/Workbook" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/WorkbookError" + } + } + }, + "x-ms-examples": { + "WorkbookManagedUpdate": { + "$ref": "./examples/WorkbookManagedUpdate.json" + }, + "WorkbookUpdate": { + "$ref": "./examples/WorkbookUpdate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/workbooks/{resourceName}/revisions": { + "get": { + "description": "Get the revisions for the workbook defined by its resourceName.", + "operationId": "Workbooks_RevisionsList", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkbookResourceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A list containing 0 or more workbook definitions.", + "schema": { + "$ref": "#/definitions/WorkbooksListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/WorkbookError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "WorkbookRevisionsList": { + "$ref": "./examples/WorkbookRevisionsList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/workbooks/{resourceName}/revisions/{revisionId}": { + "get": { + "description": "Get a single workbook revision defined by its revisionId.", + "operationId": "Workbooks_RevisionGet", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkbookResourceNameParameter" + }, + { + "$ref": "#/parameters/WorkbookRevisionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A workbook definition.", + "schema": { + "$ref": "#/definitions/Workbook" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/WorkbookError" + } + } + }, + "x-ms-examples": { + "WorkbookRevisionGet": { + "$ref": "./examples/WorkbookRevisionGet.json" + } + } + } + } + }, + "definitions": { + "Resource": { + "properties": { + "identity": { + "description": "Identity used for BYOS", + "$ref": "#/definitions/WorkbookManagedIdentity" + }, + "id": { + "type": "string", + "description": "Azure resource Id", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "name": { + "type": "string", + "description": "Azure resource name", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "type": { + "type": "string", + "description": "Azure resource type", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "location": { + "type": "string", + "description": "Resource location", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "tags": { + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + }, + "etag": { + "additionalProperties": { + "type": "string" + }, + "description": "Resource etag" + } + }, + "x-ms-azure-resource": true, + "description": "An azure resource object" + }, + "WorkbooksListResult": { + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Workbook" + }, + "description": "An array of workbooks." + }, + "nextLink": { + "type": "string" + } + }, + "description": "Workbook list result." + }, + "Workbook": { + "description": "An Application Insights workbook definition.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "kind": { + "type": "string", + "description": "The kind of workbook. Choices are user and shared.", + "enum": [ + "user", + "shared" + ], + "x-ms-enum": { + "name": "kind", + "modelAsString": true + } + }, + "properties": { + "x-ms-client-flatten": true, + "description": "Metadata describing a workbook for an Azure resource.", + "$ref": "#/definitions/WorkbookProperties" + }, + "systemData": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData", + "readOnly": true + } + } + }, + "WorkbookProperties": { + "description": "Properties that contain a workbook.", + "required": [ + "displayName", + "category", + "serializedData" + ], + "properties": { + "displayName": { + "type": "string", + "description": "The user-defined name (display name) of the workbook." + }, + "serializedData": { + "type": "string", + "x-nullable": true, + "description": "Configuration of this particular workbook. Configuration data is a string containing valid JSON" + }, + "version": { + "type": "string", + "description": "Workbook version" + }, + "timeModified": { + "type": "string", + "description": "Date and time in UTC of the last modification that was made to this workbook definition.", + "readOnly": true + }, + "category": { + "type": "string", + "description": "Workbook category, as defined by the user at creation time." + }, + "tags": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of 0 or more tags that are associated with this workbook definition" + }, + "userId": { + "type": "string", + "description": "Unique user id of the specific user that owns this workbook.", + "readOnly": true + }, + "sourceId": { + "type": "string", + "description": "ResourceId for a source resource." + }, + "storageUri": { + "type": "string", + "x-nullable": true, + "description": "BYOS Storage Account URI" + }, + "description": { + "type": "string", + "x-nullable": true, + "description": "The description of the workbook." + }, + "revision": { + "type": "string", + "x-nullable": true, + "description": "The unique revision id for this workbook definition" + } + } + }, + "WorkbookUpdateParameters": { + "properties": { + "kind": { + "type": "string", + "description": "The kind of workbook. Choices are user and shared.", + "enum": [ + "user", + "shared" + ], + "x-ms-enum": { + "name": "SharedTypeKind", + "modelAsString": true + } + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + }, + "properties": { + "x-ms-client-flatten": true, + "description": "Metadata describing a workbook for an Azure resource.", + "$ref": "#/definitions/WorkbookPropertiesUpdateParameters" + } + }, + "description": "The parameters that can be provided when updating workbook properties properties." + }, + "WorkbookPropertiesUpdateParameters": { + "description": "Properties that contain a workbook for PATCH operation.", + "properties": { + "displayName": { + "type": "string", + "description": "The user-defined name (display name) of the workbook." + }, + "serializedData": { + "type": "string", + "description": "Configuration of this particular workbook. Configuration data is a string containing valid JSON" + }, + "category": { + "type": "string", + "description": "Workbook category, as defined by the user at creation time." + }, + "tags": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of 0 or more tags that are associated with this workbook definition" + }, + "description": { + "type": "string", + "x-nullable": true, + "description": "The description of the workbook." + }, + "revision": { + "type": "string", + "x-nullable": true, + "description": "The unique revision id for this workbook definition" + } + } + }, + "WorkbookError": { + "description": "Error response.", + "properties": { + "error": { + "$ref": "#/definitions/ErrorDefinition", + "description": "The error details." + } + } + }, + "ErrorDefinition": { + "description": "Error definition.", + "properties": { + "code": { + "description": "Service specific error code which serves as the substatus for the HTTP error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "Description of the error.", + "type": "string", + "readOnly": true + }, + "innererror": { + "description": "Internal error details.", + "items": { + "$ref": "#/definitions/InnerErrorTrace" + }, + "readOnly": true + } + } + }, + "InnerErrorTrace": { + "description": "Error details", + "properties": { + "trace": { + "description": "detailed error trace", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + } + } + }, + "WorkbookManagedIdentity": { + "description": "Customer Managed Identity", + "properties": { + "userAssignedIdentities": { + "$ref": "#/definitions/WorkbookUserAssignedIdentities" + }, + "type": { + "type": "string", + "description": "The identity type.", + "enum": [ + "UserAssigned", + "None" + ] + } + } + }, + "WorkbookUserAssignedIdentities": { + "description": "Customer Managed 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." + }, + "clientId": { + "readOnly": true, + "type": "string", + "description": "The client ID of resource." + } + } + } + }, + "parameters": { + "WorkbookResourceNameParameter": { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Application Insights component resource.", + "x-ms-parameter-location": "method" + }, + "CategoryParameter": { + "name": "category", + "in": "query", + "required": true, + "type": "string", + "enum": [ + "workbook", + "TSG", + "performance", + "retention" + ], + "x-ms-enum": { + "name": "CategoryType", + "modelAsString": true + }, + "description": "Category of workbook to return.", + "x-ms-parameter-location": "method" + }, + "SourceIdParameter": { + "name": "sourceId", + "in": "query", + "required": false, + "type": "string", + "description": "Azure Resource Id that will fetch all linked workbooks.", + "x-ms-parameter-location": "method" + }, + "CanFetchWorkbookContentParameter": { + "name": "canFetchContent", + "in": "query", + "required": false, + "type": "boolean", + "description": "Flag indicating whether or not to return the full content for each applicable workbook. If false, only return summary content for workbooks.", + "x-ms-parameter-location": "method" + }, + "TagsParameter": { + "name": "tags", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "csv", + "description": "Tags presents on each workbook returned.", + "x-ms-parameter-location": "method" + }, + "WorkbookRevisionIdParameter": { + "name": "revisionId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the workbook's revision.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/applicationinsights/resource-manager/readme.azureresourceschema.md b/specification/applicationinsights/resource-manager/readme.azureresourceschema.md index 6f0621c3b69f..15fdfa11ba7a 100644 --- a/specification/applicationinsights/resource-manager/readme.azureresourceschema.md +++ b/specification/applicationinsights/resource-manager/readme.azureresourceschema.md @@ -6,6 +6,7 @@ These settings apply only when `--azureresourceschema` is specified on the comma ``` yaml $(azureresourceschema) && $(multiapi) batch: + - tag: schema-insights-2020-11-20 - tag: schema-insights-2020-10-20 - tag: schema-insights-2020-10-05-preview - tag: schema-insights-2020-06-02-preview @@ -22,6 +23,17 @@ batch: Please also specify `--azureresourceschema-folder=`. +### Tag: schema-insights-2020-11-20 and azureresourceschema + +``` yaml $(tag) == 'schema-insights-2020-11-20' && $(azureresourceschema) +output-folder: $(azureresourceschema-folder)/schemas + +# all the input files in this apiVersion +input-file: + - Microsoft.Insights/stable/2020-11-20/workbookTemplates_API.json + +``` + ### Tag: schema-insights-2020-10-20 and azureresourceschema ``` yaml $(tag) == 'schema-insights-2020-10-20' && $(azureresourceschema) diff --git a/specification/applicationinsights/resource-manager/readme.cli.md b/specification/applicationinsights/resource-manager/readme.cli.md index 34c495ce11c8..51401660db9e 100644 --- a/specification/applicationinsights/resource-manager/readme.cli.md +++ b/specification/applicationinsights/resource-manager/readme.cli.md @@ -19,7 +19,7 @@ cli: removed: true - select: 'operation' where: - operationGroup: 'APIkeys' + operationGroup: 'APIKeys' operation: 'create|delete' removed: true - select: 'operation' diff --git a/specification/applicationinsights/resource-manager/readme.go.md b/specification/applicationinsights/resource-manager/readme.go.md index 1fb4390be7b1..8d3ea9fc8783 100644 --- a/specification/applicationinsights/resource-manager/readme.go.md +++ b/specification/applicationinsights/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: insights clear-output-folder: true ``` diff --git a/specification/applicationinsights/resource-manager/readme.md b/specification/applicationinsights/resource-manager/readme.md index b4532edb0ce1..cb387c80b6fd 100644 --- a/specification/applicationinsights/resource-manager/readme.md +++ b/specification/applicationinsights/resource-manager/readme.md @@ -28,7 +28,7 @@ These are the global settings for the ApplicationInsights API. title: ApplicationInsightsManagementClient description: Composite Swagger for Application Insights Management Client openapi-type: arm -tag: package-preview-2020-10 +tag: package-2020-11-only ``` ### Suppression @@ -133,6 +133,12 @@ directive: - suppress: DefaultErrorResponseSchema from: workbooks_API.json reason: 'consistent with existing default error response' + - suppress: R4009 + from: workbookTemplates_API.json + reason: Existing APIs don't have systemData attribute. Suppressing so don't have to make breaking change + - suppress: R4017 + from: workbookTemplates_API.json + reason: Does not support list by subscription - suppress: DefaultErrorResponseSchema from: workbookOperations_API.json reason: 'consistent with existing default error response' @@ -201,57 +207,66 @@ directive: reason: 'get workbook list by subscription is not supported' - suppress: OperationsAPIImplementation reason: 'Previously implemented operation apis are using an incorrect RP case format which I cannot change.' + - suppress: SECRET_PROPERTY + from: diagnosticServicesToken_API.json + where: + - $.definitions.DiagnosticServicesTokenResponse.properties.token + reason: 'Secrets are OK to return in a POST response.' + - suppress: DefaultErrorResponseSchema + from: aiOperations_API + reason: 'consistent with existing default error response | owned by another team' + - suppress: OperationsApiResponseSchema + from: aiOperations_API + reason: 'consistent with existing response schema | owned by another team' + - suppress: RequiredReadOnlySystemData + ``` -### Tag: package-2020-02-12 +### Tag: package-2021-03-only -These settings apply only when `--tag=package-2020-02-12` is specified on the command line. +These settings apply only when `--tag=package-2021-03-only` is specified on the command line. -``` yaml $(tag) == 'package-2020-02-12' +``` yaml $(tag) == 'package-2021-03-only' input-file: - - Microsoft.Insights/stable/2015-05-01/analyticsItems_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 - - Microsoft.Insights/stable/2020-10-20/myworkbooks_API.json - - Microsoft.Insights/stable/2020-10-20/workbooks_API.json - - Microsoft.Insights/stable/2020-10-20/workbookOperations_API.json + - Microsoft.Insights/stable/2021-03-08/myworkbooks_API.json + - Microsoft.Insights/stable/2021-03-08/workbooks_API.json + - Microsoft.Insights/stable/2021-03-08/workbookOperations_API.json ``` -### Tag: package-2020-10-20 +### Tag: package-preview-2021-03-only -These settings apply only when `--tag=package-2020-10-20` is specified on the command line. +These settings apply only when `--tag=package-preview-2021-03-only` is specified on the command line. -``` yaml $(tag) == 'package-2020-10-20' +```yaml $(tag) == 'package-preview-2021-03-only' input-file: - - Microsoft.Insights/stable/2015-05-01/analyticsItems_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 + - Microsoft.Insights/preview/2021-03-03-preview/diagnosticServicesToken_API.json +``` + +### Tag: package-2020-11-only + +These settings apply only when `--tag=package-2020-11-only` is specified on the command line. + +``` yaml $(tag) == 'package-2020-11-only' +input-file: + - Microsoft.Insights/stable/2020-11-20/workbookTemplates_API.json +``` + +### Tag: package-2020-10-only + +These settings apply only when `--tag=package-2020-10-only` is specified on the command line. + +```yaml $(tag) == 'package-2020-10-only' +input-file: + - Microsoft.Insights/stable/2020-10-20/workbookOperations_API.json - Microsoft.Insights/stable/2020-10-20/myworkbooks_API.json - Microsoft.Insights/stable/2020-10-20/workbooks_API.json - - Microsoft.Insights/stable/2020-10-20/workbookOperations_API.json ``` -### Tag: package-preview-2020-10 +### Tag: package-preview-2020-10-only -These settings apply only when `--tag=package-preview-2020-10` is specified on the command line. +These settings apply only when `--tag=package-preview-2020-10-only` is specified on the command line. -```yaml $(tag) == 'package-preview-2020-10' +```yaml $(tag) == 'package-preview-2020-10-only' input-file: - Microsoft.Insights/preview/2020-10-05-preview/webTests_API.json ``` @@ -289,20 +304,11 @@ input-file: - Microsoft.Insights/preview/2020-06-02-preview/livetoken_API.json ``` -### Tag: package-preview-2020-02 - -These settings apply only when `--tag=package-preview-2020-02` is specified on the command line. - -``` yaml $(tag) == 'package-preview-2020-02' -input-file: - - Microsoft.Insights/preview/2020-02-10-preview/WebTestResults_API.json -``` - -### Tag: package-2015-05 +### Tag: package-2020-04 -These settings apply only when `--tag=package-2015-05` is specified on the command line. +These settings apply only when `--tag=package-2020-04` is specified on the command line. For Dotnet SDK generation. -``` yaml $(tag) == 'package-2015-05' +``` yaml $(tag) == 'package-2020-04' input-file: - Microsoft.Insights/stable/2015-05-01/aiOperations_API.json - Microsoft.Insights/stable/2015-05-01/componentAnnotations_API.json @@ -310,7 +316,6 @@ input-file: - 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 @@ -318,25 +323,44 @@ input-file: - Microsoft.Insights/stable/2015-05-01/analyticsItems_API.json - Microsoft.Insights/stable/2015-05-01/workbooks_API.json - Microsoft.Insights/stable/2015-05-01/myworkbooks_API.json +- Microsoft.Insights/preview/2018-05-01-preview/components_API.json +- Microsoft.Insights/preview/2020-03-01-preview/componentLinkedStorageAccounts_API.json ``` -### Tag: package-2017-10 +### Tag: package-2020-03-01-preview -These settings apply only when `--tag=package-2017-10` is specified on the command line. +These settings apply only when `--tag=package-2020-03-01-preview` is specified on the command line. -``` yaml $(tag) == 'package-2017-10' +``` yaml $(tag) == 'package-2020-03-01-preview' input-file: -- Microsoft.Insights/preview/2017-10-01/eaSubscriptionMigration_API.json -- Microsoft.Insights/preview/2017-10-01/componentFeaturesAndPricing_API.json +- Microsoft.Insights/preview/2020-03-01-preview/componentLinkedStorageAccounts_API.json ``` -### Tag: package-2018-06-17-preview +### Tag: package-preview-2020-02 -These settings apply only when `--tag=package-2018-06-17-preview` is specified on the command line. +These settings apply only when `--tag=package-preview-2020-02` is specified on the command line. -``` yaml $(tag) == 'package-2018-06-17-preview' +``` yaml $(tag) == 'package-preview-2020-02' input-file: -- Microsoft.Insights/preview/2018-06-17-preview/workbooks_API.json + - Microsoft.Insights/preview/2020-02-10-preview/WebTestResults_API.json +``` + +### Tag: package-2020-02-02-preview + +These settings apply only when `--tag=package-2020-02-02-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2020-02-02-preview' +input-file: +- Microsoft.Insights/preview/2020-02-02-preview/components_API.json +``` + +### Tag: package-2020-02-02 + +These settings apply only when `--tag=package-2020-02-02` is specified on the command line. + +``` yaml $(tag) == 'package-2020-02-02' +input-file: +- Microsoft.Insights/stable/2020-02-02/components_API.json ``` ### Tag: package-2019-10-17-preview @@ -348,39 +372,40 @@ input-file: - Microsoft.Insights/preview/2019-10-17-preview/workbookTemplates_API.json ``` -### Tag: package-2018-05-01-preview +### Tag: package-2018-06-17-preview -These settings apply only when `--tag=package-2018-05-01-preview` is specified on the command line. +These settings apply only when `--tag=package-2018-06-17-preview` is specified on the command line. -``` yaml $(tag) == 'package-2018-05-01-preview' +``` yaml $(tag) == 'package-2018-06-17-preview' input-file: -- Microsoft.Insights/preview/2018-05-01-preview/componentProactiveDetection_API.json -- Microsoft.Insights/preview/2018-05-01-preview/components_API.json +- Microsoft.Insights/preview/2018-06-17-preview/workbooks_API.json ``` -### Tag: package-2020-02-02-preview +### Tag: package-2018-05-01-preview -These settings apply only when `--tag=package-2020-02-02-preview` is specified on the command line. +These settings apply only when `--tag=package-2018-05-01-preview` is specified on the command line. -``` yaml $(tag) == 'package-2020-02-02-preview' +``` yaml $(tag) == 'package-2018-05-01-preview' input-file: -- Microsoft.Insights/preview/2020-02-02-preview/components_API.json +- Microsoft.Insights/preview/2018-05-01-preview/componentProactiveDetection_API.json +- Microsoft.Insights/preview/2018-05-01-preview/components_API.json ``` -### Tag: package-2020-03-01-preview +### Tag: package-2017-10 -These settings apply only when `--tag=package-2020-03-01-preview` is specified on the command line. +These settings apply only when `--tag=package-2017-10` is specified on the command line. -``` yaml $(tag) == 'package-2020-03-01-preview' +``` yaml $(tag) == 'package-2017-10' input-file: -- Microsoft.Insights/preview/2020-03-01-preview/componentLinkedStorageAccounts_API.json +- Microsoft.Insights/preview/2017-10-01/eaSubscriptionMigration_API.json +- Microsoft.Insights/preview/2017-10-01/componentFeaturesAndPricing_API.json ``` -### Tag: package-2020-04 +### Tag: package-2015-05 -These settings apply only when `--tag=package-2020-04` is specified on the command line. For Dotnet SDK generation. +These settings apply only when `--tag=package-2015-05` is specified on the command line. -``` yaml $(tag) == 'package-2020-04' +``` yaml $(tag) == 'package-2015-05' input-file: - Microsoft.Insights/stable/2015-05-01/aiOperations_API.json - Microsoft.Insights/stable/2015-05-01/componentAnnotations_API.json @@ -388,6 +413,7 @@ input-file: - 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 @@ -395,8 +421,6 @@ input-file: - Microsoft.Insights/stable/2015-05-01/analyticsItems_API.json - Microsoft.Insights/stable/2015-05-01/workbooks_API.json - Microsoft.Insights/stable/2015-05-01/myworkbooks_API.json -- Microsoft.Insights/preview/2018-05-01-preview/components_API.json -- Microsoft.Insights/preview/2020-03-01-preview/componentLinkedStorageAccounts_API.json ``` --- @@ -420,8 +444,6 @@ swagger-to-sdk: - repo: azure-sdk-for-js - repo: azure-sdk-for-node - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js applicationinsights/resource-manager ``` ## Go @@ -490,6 +512,4 @@ input-file: - Microsoft.Insights/preview/2018-06-17-preview/workbooks_API.json ``` -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/applicationinsights/resource-manager/readme.python.md b/specification/applicationinsights/resource-manager/readme.python.md index 2bef78bb287a..45b5df9fa171 100644 --- a/specification/applicationinsights/resource-manager/readme.python.md +++ b/specification/applicationinsights/resource-manager/readme.python.md @@ -33,6 +33,7 @@ batch: - tag: package-2018-06-17-preview - tag: package-2019-10-17-preview - tag: package-2020-02-02-preview + - tag: package-2020-02-02 - tag: package-2020-03-01-preview - tag: package-preview-2020-06-only ``` @@ -44,6 +45,7 @@ batch: - tag: package-2018-06-17-preview - tag: package-2019-10-17-preview - tag: package-2020-02-02-preview + - tag: package-2020-02-02 - tag: package-2020-03-01-preview - tag: package-preview-2020-06-only - multiapiscript: true @@ -160,7 +162,7 @@ These settings apply only when `--tag=package-preview-2020-06-only --python` is ``` yaml $(tag) == 'package-preview-2020-06-only' && $(python) && !$(track2) python: namespace: azure.mgmt.applicationinsights.v2020_06_02_preview - output-folder: $(python-sdks-folder)/applicationinsights/azure-mgmt-applicationinsights/azure/mgmt/applicationinsights/v2020_06_02-preview + output-folder: $(python-sdks-folder)/applicationinsights/azure-mgmt-applicationinsights/azure/mgmt/applicationinsights/v2020_06_02_preview ``` ``` yaml $(tag) == 'package-preview-2020-06-only' && $(python) && $(track2) namespace: azure.mgmt.applicationinsights.v2020_06_02_preview diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/appplatform.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/appplatform.json index 991c4729129d..4e06ef972f13 100644 --- a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/appplatform.json +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/appplatform.json @@ -2470,23 +2470,43 @@ "properties": { "serviceRuntimeSubnetId": { "description": "Fully qualified resource Id of the subnet to host Azure Spring Cloud Service Runtime", - "type": "string" + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] }, "appSubnetId": { "description": "Fully qualified resource Id of the subnet to host Azure Spring Cloud Apps", - "type": "string" + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] }, "serviceCidr": { "description": "Azure Spring Cloud service reserved CIDR", - "type": "string" + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] }, "serviceRuntimeNetworkResourceGroup": { "description": "Name of the resource group containing network resources of Azure Spring Cloud Service Runtime", - "type": "string" + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] }, "appNetworkResourceGroup": { "description": "Name of the resource group containing network resources of Azure Spring Cloud Apps", - "type": "string" + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] }, "outboundIPs": { "description": "Desired outbound IP resources for Azure Spring Cloud instance.", @@ -2818,11 +2838,16 @@ }, "fqdn": { "description": "Fully qualified dns Name.", - "type": "string" + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] }, "httpsOnly": { "description": "Indicate if only https is allowed.", - "type": "boolean" + "type": "boolean", + "default": false }, "createdTime": { "format": "date-time", @@ -2832,7 +2857,8 @@ }, "temporaryDisk": { "$ref": "#/definitions/TemporaryDisk", - "description": "Temporary disk settings" + "description": "Temporary disk settings", + "default": "/tmp" }, "persistentDisk": { "$ref": "#/definitions/PersistentDisk", @@ -3369,6 +3395,7 @@ }, "runtimeVersion": { "description": "Runtime version", + "default": "Java_8", "enum": [ "Java_8", "Java_11", diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2020-11-01-preview/appplatform.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2020-11-01-preview/appplatform.json index b8af027e3cb6..75f29e4dfae3 100644 --- a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2020-11-01-preview/appplatform.json +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2020-11-01-preview/appplatform.json @@ -3057,23 +3057,43 @@ "properties": { "serviceRuntimeSubnetId": { "description": "Fully qualified resource Id of the subnet to host Azure Spring Cloud Service Runtime", - "type": "string" + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] }, "appSubnetId": { "description": "Fully qualified resource Id of the subnet to host Azure Spring Cloud Apps", - "type": "string" + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] }, "serviceCidr": { "description": "Azure Spring Cloud service reserved CIDR", - "type": "string" + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] }, "serviceRuntimeNetworkResourceGroup": { "description": "Name of the resource group containing network resources of Azure Spring Cloud Service Runtime", - "type": "string" + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] }, "appNetworkResourceGroup": { "description": "Name of the resource group containing network resources of Azure Spring Cloud Apps", - "type": "string" + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] }, "outboundIPs": { "description": "Desired outbound IP resources for Azure Spring Cloud instance.", @@ -3404,11 +3424,16 @@ }, "fqdn": { "description": "Fully qualified dns Name.", - "type": "string" + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] }, "httpsOnly": { "description": "Indicate if only https is allowed.", - "type": "boolean" + "type": "boolean", + "default": false }, "createdTime": { "format": "date-time", @@ -3418,7 +3443,8 @@ }, "temporaryDisk": { "$ref": "#/definitions/TemporaryDisk", - "description": "Temporary disk settings" + "description": "Temporary disk settings", + "default": "/tmp" }, "persistentDisk": { "$ref": "#/definitions/PersistentDisk", @@ -3426,7 +3452,8 @@ }, "enableEndToEndTLS": { "description": "Indicate if end to end TLS is enabled.", - "type": "boolean" + "type": "boolean", + "default": false } } }, @@ -3952,6 +3979,7 @@ }, "runtimeVersion": { "description": "Runtime version", + "default": "Java_8", "enum": [ "Java_8", "Java_11", diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/appplatform.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/appplatform.json new file mode 100644 index 000000000000..6a0cd41ee4e0 --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/appplatform.json @@ -0,0 +1,4720 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-06-01-preview", + "title": "AppPlatformManagementClient", + "description": "REST API for Azure Spring Cloud" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppPlatform/Spring/{serviceName}": { + "get": { + "tags": [ + "AppPlatform" + ], + "description": "Get a Service and its properties.", + "operationId": "Services_Get", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describes the corresponding Service.", + "schema": { + "$ref": "#/definitions/ServiceResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Services_Get": { + "$ref": "./examples/Services_Get.json" + } + } + }, + "put": { + "tags": [ + "AppPlatform" + ], + "description": "Create a new Service or update an exiting Service.", + "operationId": "Services_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "name": "resource", + "in": "body", + "description": "Parameters for the create or update operation", + "required": true, + "schema": { + "$ref": "#/definitions/ServiceResource" + } + } + ], + "responses": { + "201": { + "description": "Created. The response describes the new Service and contains a Location header to query the\r\noperation result.", + "schema": { + "$ref": "#/definitions/ServiceResource" + } + }, + "200": { + "description": "Success. The response describes the updated Service.", + "schema": { + "$ref": "#/definitions/ServiceResource" + } + }, + "202": { + "description": "Accepted. The response indicates the exiting Service is now updating and contains a Location\r\nheader to query the operation result.", + "schema": { + "$ref": "#/definitions/ServiceResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Services_CreateOrUpdate": { + "$ref": "./examples/Services_CreateOrUpdate.json" + }, + "Services_CreateOrUpdate_VNetInjection": { + "$ref": "./examples/Services_CreateOrUpdate_VNetInjection.json" + } + } + }, + "delete": { + "tags": [ + "AppPlatform" + ], + "description": "Operation to delete a Service.", + "operationId": "Services_Delete", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + } + ], + "responses": { + "202": { + "description": "Accepted. The response indicates the delete operation is performed in the background." + }, + "204": { + "description": "Success. The response indicates the resource is already deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Services_Delete": { + "$ref": "./examples/Services_Delete.json" + } + } + }, + "patch": { + "tags": [ + "AppPlatform" + ], + "description": "Operation to update an exiting Service.", + "operationId": "Services_Update", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "name": "resource", + "in": "body", + "description": "Parameters for the update operation", + "required": true, + "schema": { + "$ref": "#/definitions/ServiceResource" + } + } + ], + "responses": { + "200": { + "description": "Success. The response describes the updated Service.", + "schema": { + "$ref": "#/definitions/ServiceResource" + } + }, + "202": { + "description": "Accepted. The response indicates the exiting Service is now updating and contains a Location\r\nheader to query the operation result.", + "schema": { + "$ref": "#/definitions/ServiceResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Services_Update": { + "$ref": "./examples/Services_Update.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppPlatform/Spring/{serviceName}/listTestKeys": { + "post": { + "tags": [ + "AppPlatform" + ], + "description": "List test keys for a Service.", + "operationId": "Services_ListTestKeys", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describes the test keys.", + "schema": { + "$ref": "#/definitions/TestKeys" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Services_ListTestKeys": { + "$ref": "./examples/Services_ListTestKeys.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppPlatform/Spring/{serviceName}/regenerateTestKey": { + "post": { + "tags": [ + "AppPlatform" + ], + "description": "Regenerate a test key for a Service.", + "operationId": "Services_RegenerateTestKey", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "name": "regenerateTestKeyRequest", + "in": "body", + "description": "Parameters for the operation", + "required": true, + "schema": { + "$ref": "#/definitions/RegenerateTestKeyRequestPayload" + } + } + ], + "responses": { + "200": { + "description": "Success.", + "schema": { + "$ref": "#/definitions/TestKeys" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Services_RegenerateTestKey": { + "$ref": "./examples/Services_RegenerateTestKey.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppPlatform/Spring/{serviceName}/disableTestEndpoint": { + "post": { + "tags": [ + "AppPlatform" + ], + "description": "Disable test endpoint functionality for a Service.", + "operationId": "Services_DisableTestEndpoint", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + } + ], + "responses": { + "200": { + "description": "Success" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Services_DisableTestEndpoint": { + "$ref": "./examples/Services_DisableTestEndpoint.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppPlatform/Spring/{serviceName}/enableTestEndpoint": { + "post": { + "tags": [ + "AppPlatform" + ], + "description": "Enable test endpoint functionality for a Service.", + "operationId": "Services_EnableTestEndpoint", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/TestKeys" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Services_EnableTestEndpoint": { + "$ref": "./examples/Services_EnableTestEndpoint.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppPlatform/Spring/{serviceName}/configServers/default": { + "get": { + "tags": [ + "AppPlatform" + ], + "description": "Get the config server and its properties.", + "operationId": "ConfigServers_Get", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describes the corresponding Config Server.", + "schema": { + "$ref": "#/definitions/ConfigServerResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ConfigServers_Get": { + "$ref": "./examples/ConfigServers_Get.json" + } + } + }, + "put": { + "tags": [ + "AppPlatform" + ], + "description": "Update the config server.", + "operationId": "ConfigServers_UpdatePut", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "name": "configServerResource", + "in": "body", + "description": "Parameters for the update operation", + "required": true, + "schema": { + "$ref": "#/definitions/ConfigServerResource" + } + } + ], + "responses": { + "200": { + "description": "Success. The response describes the updated Config Server.", + "schema": { + "$ref": "#/definitions/ConfigServerResource" + } + }, + "202": { + "description": "Accepted. The response indicates the exiting Config Server is now updating and contains a Location\r\nheader to query the operation result.", + "schema": { + "$ref": "#/definitions/ConfigServerResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "ConfigServers_UpdatePut": { + "$ref": "./examples/ConfigServers_UpdatePut.json" + } + } + }, + "patch": { + "tags": [ + "AppPlatform" + ], + "description": "Update the config server.", + "operationId": "ConfigServers_UpdatePatch", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "name": "configServerResource", + "in": "body", + "description": "Parameters for the update operation", + "required": true, + "schema": { + "$ref": "#/definitions/ConfigServerResource" + } + } + ], + "responses": { + "200": { + "description": "Success. The response describes the updated Config Server.", + "schema": { + "$ref": "#/definitions/ConfigServerResource" + } + }, + "202": { + "description": "Accepted. The response indicates the exiting Config Server is now updating and contains a Location\r\nheader to query the operation result.", + "schema": { + "$ref": "#/definitions/ConfigServerResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "ConfigServers_UpdatePatch": { + "$ref": "./examples/ConfigServers_UpdatePatch.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppPlatform/Spring/{serviceName}/configServers/validate": { + "post": { + "tags": [ + "AppPlatform" + ], + "description": "Check if the config server settings are valid.", + "operationId": "ConfigServers_Validate", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "name": "configServerSettings", + "in": "body", + "description": "Config server settings to be validated", + "required": true, + "schema": { + "$ref": "#/definitions/ConfigServerSettings" + } + } + ], + "responses": { + "200": { + "description": "Success. The response describes the validation result of Config Server.", + "schema": { + "$ref": "#/definitions/ConfigServerSettingsValidateResult" + } + }, + "202": { + "description": "Accepted. The response indicates the ConfigServerSetting is validating.", + "schema": { + "$ref": "#/definitions/ConfigServerSettingsValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "ConfigServers_Validate": { + "$ref": "./examples/ConfigServers_Validate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppPlatform/Spring/{serviceName}/monitoringSettings/default": { + "get": { + "tags": [ + "AppPlatform" + ], + "description": "Get the Monitoring Setting and its properties.", + "operationId": "MonitoringSettings_Get", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describes the corresponding Monitoring Setting.", + "schema": { + "$ref": "#/definitions/MonitoringSettingResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "MonitoringSettings_Get": { + "$ref": "./examples/MonitoringSettings_Get.json" + } + } + }, + "put": { + "tags": [ + "AppPlatform" + ], + "description": "Update the Monitoring Setting.", + "operationId": "MonitoringSettings_UpdatePut", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "name": "monitoringSettingResource", + "in": "body", + "description": "Parameters for the update operation", + "required": true, + "schema": { + "$ref": "#/definitions/MonitoringSettingResource" + } + } + ], + "responses": { + "200": { + "description": "Success. The response describes the updated Monitoring Setting.", + "schema": { + "$ref": "#/definitions/MonitoringSettingResource" + } + }, + "202": { + "description": "Accepted. The response indicates the exiting Monitoring Setting is now updating and contains a Location\r\nheader to query the operation result.", + "schema": { + "$ref": "#/definitions/MonitoringSettingResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "MonitoringSettings_UpdatePut": { + "$ref": "./examples/MonitoringSettings_UpdatePut.json" + } + } + }, + "patch": { + "tags": [ + "AppPlatform" + ], + "description": "Update the Monitoring Setting.", + "operationId": "MonitoringSettings_UpdatePatch", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "name": "monitoringSettingResource", + "in": "body", + "description": "Parameters for the update operation", + "required": true, + "schema": { + "$ref": "#/definitions/MonitoringSettingResource" + } + } + ], + "responses": { + "200": { + "description": "Success. The response describes the updated Monitoring Setting.", + "schema": { + "$ref": "#/definitions/MonitoringSettingResource" + } + }, + "202": { + "description": "Accepted. The response indicates the exiting Monitoring Setting is now updating and contains a Location\r\nheader to query the operation result.", + "schema": { + "$ref": "#/definitions/MonitoringSettingResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "MonitoringSettings_UpdatePatch": { + "$ref": "./examples/MonitoringSettings_UpdatePatch.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppPlatform/Spring/{serviceName}/apps/{appName}": { + "get": { + "tags": [ + "AppPlatform" + ], + "description": "Get an App and its properties.", + "operationId": "Apps_Get", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/AppNameParameter" + }, + { + "name": "syncStatus", + "in": "query", + "description": "Indicates whether sync status", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success. The response describes the corresponding App.", + "schema": { + "$ref": "#/definitions/AppResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Apps_Get": { + "$ref": "./examples/Apps_Get.json" + } + } + }, + "put": { + "tags": [ + "AppPlatform" + ], + "description": "Create a new App or update an exiting App.", + "operationId": "Apps_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/AppNameParameter" + }, + { + "name": "appResource", + "in": "body", + "description": "Parameters for the create or update operation", + "required": true, + "schema": { + "$ref": "#/definitions/AppResource" + } + } + ], + "responses": { + "200": { + "description": "Success. The response describes the updated App.", + "schema": { + "$ref": "#/definitions/AppResource" + } + }, + "201": { + "description": "Created. The response describes the new App and contains a Location header to query the operation result.", + "schema": { + "$ref": "#/definitions/AppResource" + } + }, + "202": { + "description": "Accepted. The response indicates the exiting App is now updating and contains a Location\r\nheader to query the operation result.", + "schema": { + "$ref": "#/definitions/AppResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Apps_CreateOrUpdate": { + "$ref": "./examples/Apps_CreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "AppPlatform" + ], + "description": "Operation to delete an App.", + "operationId": "Apps_Delete", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/AppNameParameter" + } + ], + "responses": { + "204": { + "description": "Success. The response indicates the resource doesn't exist." + }, + "200": { + "description": "Success. The response indicates the resource is deleted." + }, + "202": { + "description": "Accepted. The response indicates the delete operation is performed in the background." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Apps_Delete": { + "$ref": "./examples/Apps_Delete.json" + } + } + }, + "patch": { + "tags": [ + "AppPlatform" + ], + "description": "Operation to update an exiting App.", + "operationId": "Apps_Update", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/AppNameParameter" + }, + { + "name": "appResource", + "in": "body", + "description": "Parameters for the update operation", + "required": true, + "schema": { + "$ref": "#/definitions/AppResource" + } + } + ], + "responses": { + "200": { + "description": "Success. The response describes the updated App.", + "schema": { + "$ref": "#/definitions/AppResource" + } + }, + "202": { + "description": "Accepted. The response indicates the exiting App is now updating and contains a Location header to query the operation result.", + "schema": { + "$ref": "#/definitions/AppResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Apps_Update": { + "$ref": "./examples/Apps_Update.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppPlatform/Spring/{serviceName}/apps": { + "get": { + "tags": [ + "AppPlatform" + ], + "description": "Handles requests to list all resources in a Service.", + "operationId": "Apps_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describes the list of Apps in the Service.", + "schema": { + "$ref": "#/definitions/AppResourceCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Apps_List": { + "$ref": "./examples/Apps_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppPlatform/Spring/{serviceName}/apps/{appName}/getResourceUploadUrl": { + "post": { + "tags": [ + "AppPlatform" + ], + "description": "Get an resource upload URL for an App, which may be artifacts or source archive.", + "operationId": "Apps_GetResourceUploadUrl", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/AppNameParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describes the resource upload URL.", + "schema": { + "$ref": "#/definitions/ResourceUploadDefinition" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Apps_GetResourceUploadUrl": { + "$ref": "./examples/Apps_GetResourceUploadUrl.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppPlatform/Spring/{serviceName}/apps/{appName}/bindings/{bindingName}": { + "get": { + "tags": [ + "AppPlatform" + ], + "description": "Get a Binding and its properties.", + "operationId": "Bindings_Get", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/AppNameParameter" + }, + { + "$ref": "#/parameters/BindingNameParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describes the corresponding Binding.", + "schema": { + "$ref": "#/definitions/BindingResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Bindings_Get": { + "$ref": "./examples/Bindings_Get.json" + } + } + }, + "put": { + "tags": [ + "AppPlatform" + ], + "description": "Create a new Binding or update an exiting Binding.", + "operationId": "Bindings_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/AppNameParameter" + }, + { + "$ref": "#/parameters/BindingNameParameter" + }, + { + "name": "bindingResource", + "in": "body", + "description": "Parameters for the create or update operation", + "required": true, + "schema": { + "$ref": "#/definitions/BindingResource" + } + } + ], + "responses": { + "200": { + "description": "Success. The response describes the created or updated Binding.", + "schema": { + "$ref": "#/definitions/BindingResource" + } + }, + "201": { + "description": "Created. The response describes the new Binding and contains a Location header to query the\r\noperation result.", + "schema": { + "$ref": "#/definitions/BindingResource" + } + }, + "202": { + "description": "Accepted. The response indicates the exiting Binding is now updating and contains a Location\r\nheader to query the operation result.", + "schema": { + "$ref": "#/definitions/BindingResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Bindings_CreateOrUpdate": { + "$ref": "./examples/Bindings_CreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "AppPlatform" + ], + "description": "Operation to delete a Binding.", + "operationId": "Bindings_Delete", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/AppNameParameter" + }, + { + "$ref": "#/parameters/BindingNameParameter" + } + ], + "responses": { + "204": { + "description": "Success. The response indicates the resource doesn't exist." + }, + "202": { + "description": "Accepted. The response indicates the delete operation is performed in the background." + }, + "200": { + "description": "Success. The response indicates the resource is deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Bindings_Delete": { + "$ref": "./examples/Bindings_Delete.json" + } + } + }, + "patch": { + "tags": [ + "AppPlatform" + ], + "description": "Operation to update an exiting Binding.", + "operationId": "Bindings_Update", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/AppNameParameter" + }, + { + "$ref": "#/parameters/BindingNameParameter" + }, + { + "name": "bindingResource", + "in": "body", + "description": "Parameters for the update operation", + "required": true, + "schema": { + "$ref": "#/definitions/BindingResource" + } + } + ], + "responses": { + "200": { + "description": "Success. The response describes the updated Binding.", + "schema": { + "$ref": "#/definitions/BindingResource" + } + }, + "202": { + "description": "Accepted. The response indicates the exiting Binding is now updating and contains a Location\r\nheader to query the operation result.", + "schema": { + "$ref": "#/definitions/BindingResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Bindings_Update": { + "$ref": "./examples/Bindings_Update.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppPlatform/Spring/{serviceName}/apps/{appName}/bindings": { + "get": { + "tags": [ + "AppPlatform" + ], + "description": "Handles requests to list all resources in an App.", + "operationId": "Bindings_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/AppNameParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describes the list of Bindings in the App.", + "schema": { + "$ref": "#/definitions/BindingResourceCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Bindings_List": { + "$ref": "./examples/Bindings_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppPlatform/Spring/{serviceName}/certificates/{certificateName}": { + "get": { + "tags": [ + "AppPlatform" + ], + "description": "Get the certificate resource.", + "operationId": "Certificates_Get", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/CertificateNameParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describe the certificate.", + "schema": { + "$ref": "#/definitions/CertificateResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Certificates_Get": { + "$ref": "./examples/Certificates_Get.json" + } + } + }, + "put": { + "tags": [ + "AppPlatform" + ], + "description": "Create or update certificate resource.", + "operationId": "Certificates_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/CertificateNameParameter" + }, + { + "name": "certificateResource", + "in": "body", + "description": "Parameters for the create or update operation", + "required": true, + "schema": { + "$ref": "#/definitions/CertificateResource" + } + } + ], + "responses": { + "200": { + "description": "Success. The response describe the existed certificate updated.", + "schema": { + "$ref": "#/definitions/CertificateResource" + } + }, + "201": { + "description": "Created. The response describes the new certificate and contains a Location header to query the\r\noperation result.", + "schema": { + "$ref": "#/definitions/CertificateResource" + } + }, + "202": { + "description": "Accepted. The response indicates the exiting certificate is now updating and contains a Location\r\nheader to query the operation result.", + "schema": { + "$ref": "#/definitions/CertificateResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Certificates_CreateOrUpdate": { + "$ref": "./examples/Certificates_CreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "AppPlatform" + ], + "description": "Delete the certificate resource.", + "operationId": "Certificates_Delete", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/CertificateNameParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response indicates the certificate deleted." + }, + "202": { + "description": "Accepted. The response indicates the delete operation is performed in the background." + }, + "204": { + "description": "No content. The response indicates the certificate doesn't exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Certificates_Delete": { + "$ref": "./examples/Certificates_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppPlatform/Spring/{serviceName}/certificates": { + "get": { + "tags": [ + "AppPlatform" + ], + "description": "List all the certificates of one user.", + "operationId": "Certificates_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describe the custom domain resource list of one application.", + "schema": { + "$ref": "#/definitions/CertificateResourceCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Certificates_List": { + "$ref": "./examples/Certificates_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.AppPlatform/locations/{location}/checkNameAvailability": { + "post": { + "tags": [ + "AppPlatform" + ], + "description": "Checks that the resource name is valid and is not already in use.", + "operationId": "Services_CheckNameAvailability", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "location", + "in": "path", + "description": "the region", + "required": true, + "type": "string" + }, + { + "name": "availabilityParameters", + "in": "body", + "description": "Parameters supplied to the operation.", + "required": true, + "schema": { + "$ref": "#/definitions/NameAvailabilityParameters" + } + } + ], + "responses": { + "200": { + "description": "Success. The response describes the name availability.", + "schema": { + "$ref": "#/definitions/NameAvailability" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Services_CheckNameAvailability": { + "$ref": "./examples/Services_CheckNameAvailability.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppPlatform/Spring/{serviceName}/apps/{appName}/domains/{domainName}": { + "get": { + "tags": [ + "AppPlatform" + ], + "description": "Get the custom domain of one lifecycle application.", + "operationId": "CustomDomains_Get", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/AppNameParameter" + }, + { + "$ref": "#/parameters/CustomDomainNameParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describe the custom domain.", + "schema": { + "$ref": "#/definitions/CustomDomainResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "CustomDomains_Get": { + "$ref": "./examples/CustomDomains_Get.json" + } + } + }, + "put": { + "tags": [ + "AppPlatform" + ], + "description": "Create or update custom domain of one lifecycle application.", + "operationId": "CustomDomains_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/AppNameParameter" + }, + { + "$ref": "#/parameters/CustomDomainNameParameter" + }, + { + "name": "domainResource", + "in": "body", + "description": "Parameters for the create or update operation", + "required": true, + "schema": { + "$ref": "#/definitions/CustomDomainResource" + } + } + ], + "responses": { + "200": { + "description": "Success. The response describe the existed custom domain updated.", + "schema": { + "$ref": "#/definitions/CustomDomainResource" + } + }, + "201": { + "description": "Created. The response describes the new custom domain and contains a Location header to query the\r\noperation result.", + "schema": { + "$ref": "#/definitions/CustomDomainResource" + } + }, + "202": { + "description": "Accepted. The response indicates the exiting custom domain is now updating and contains a Location\r\nheader to query the operation result.", + "schema": { + "$ref": "#/definitions/CustomDomainResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "CustomDomains_CreateOrUpdate": { + "$ref": "./examples/CustomDomains_CreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "AppPlatform" + ], + "description": "Delete the custom domain of one lifecycle application.", + "operationId": "CustomDomains_Delete", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/AppNameParameter" + }, + { + "$ref": "#/parameters/CustomDomainNameParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response indicates the custom domain deleted." + }, + "202": { + "description": "Accepted. The response indicates the delete operation is performed in the background." + }, + "204": { + "description": "No content. The response indicates the custom domain doesn't exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "CustomDomains_Delete": { + "$ref": "./examples/CustomDomains_Delete.json" + } + } + }, + "patch": { + "tags": [ + "AppPlatform" + ], + "description": "Update custom domain of one lifecycle application.", + "operationId": "CustomDomains_Update", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/AppNameParameter" + }, + { + "$ref": "#/parameters/CustomDomainNameParameter" + }, + { + "name": "domainResource", + "in": "body", + "description": "Parameters for the create or update operation", + "required": true, + "schema": { + "$ref": "#/definitions/CustomDomainResource" + } + } + ], + "responses": { + "200": { + "description": "Success. The response describe the existed custom domain updated.", + "schema": { + "$ref": "#/definitions/CustomDomainResource" + } + }, + "202": { + "description": "Accepted. The response indicates the exiting custom domain is now updating and contains a Location\r\nheader to query the operation result.", + "schema": { + "$ref": "#/definitions/CustomDomainResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "CustomDomains_Update": { + "$ref": "./examples/CustomDomains_Update.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppPlatform/Spring/{serviceName}/apps/{appName}/domains": { + "get": { + "tags": [ + "AppPlatform" + ], + "description": "List the custom domains of one lifecycle application.", + "operationId": "CustomDomains_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/AppNameParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describe the custom domain resource list of one application.", + "schema": { + "$ref": "#/definitions/CustomDomainResourceCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "CustomDomains_List": { + "$ref": "./examples/CustomDomains_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppPlatform/Spring/{serviceName}/apps/{appName}/validateDomain": { + "post": { + "tags": [ + "AppPlatform" + ], + "description": "Check the resource name is valid as well as not in use.", + "operationId": "Apps_ValidateDomain", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/AppNameParameter" + }, + { + "name": "validatePayload", + "in": "body", + "description": "Custom domain payload to be validated", + "required": true, + "schema": { + "$ref": "#/definitions/CustomDomainValidatePayload" + } + } + ], + "responses": { + "200": { + "description": "Success. The response describe the name is available.", + "schema": { + "$ref": "#/definitions/CustomDomainValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Apps_ValidateDomain": { + "$ref": "./examples/Apps_ValidateDomain.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppPlatform/Spring/{serviceName}/apps/{appName}/deployments/{deploymentName}": { + "get": { + "tags": [ + "AppPlatform" + ], + "description": "Get a Deployment and its properties.", + "operationId": "Deployments_Get", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/AppNameParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describes the corresponding Deployment.", + "schema": { + "$ref": "#/definitions/DeploymentResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Deployments_Get": { + "$ref": "./examples/Deployments_Get.json" + }, + "Deployments_Get_CustomContainer": { + "$ref": "./examples/Deployments_Get_CustomContainer.json" + } + } + }, + "put": { + "tags": [ + "AppPlatform" + ], + "description": "Create a new Deployment or update an exiting Deployment.", + "operationId": "Deployments_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/AppNameParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "deploymentResource", + "in": "body", + "description": "Parameters for the create or update operation", + "required": true, + "schema": { + "$ref": "#/definitions/DeploymentResource" + } + } + ], + "responses": { + "201": { + "description": "Created. The response describes the new Deployment and contains a Location header to query the\r\noperation result.", + "schema": { + "$ref": "#/definitions/DeploymentResource" + } + }, + "200": { + "description": "Success. The response describes the updated Deployment.", + "schema": { + "$ref": "#/definitions/DeploymentResource" + } + }, + "202": { + "description": "Accepted. The response indicates the exiting Deployment is now updating and contains a Location\r\nheader to query the operation result.", + "schema": { + "$ref": "#/definitions/DeploymentResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Deployments_CreateOrUpdate": { + "$ref": "./examples/Deployments_CreateOrUpdate.json" + }, + "Deployments_CreateOrUpdate_CustomContainer": { + "$ref": "./examples/Deployments_CreateOrUpdate_CustomContainer.json" + } + } + }, + "delete": { + "tags": [ + "AppPlatform" + ], + "description": "Operation to delete a Deployment.", + "operationId": "Deployments_Delete", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/AppNameParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response indicates the resource is deleted." + }, + "204": { + "description": "Success. The response indicates the resource doesn't exist." + }, + "202": { + "description": "Accepted. The response indicates the delete operation is performed in the background." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Deployments_Delete": { + "$ref": "./examples/Deployments_Delete.json" + } + } + }, + "patch": { + "tags": [ + "AppPlatform" + ], + "description": "Operation to update an exiting Deployment.", + "operationId": "Deployments_Update", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/AppNameParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "deploymentResource", + "in": "body", + "description": "Parameters for the update operation", + "required": true, + "schema": { + "$ref": "#/definitions/DeploymentResource" + } + } + ], + "responses": { + "202": { + "description": "Accepted. The response indicates the exiting Deployment is now updating and contains a Location\r\nheader to query the operation result.", + "schema": { + "$ref": "#/definitions/DeploymentResource" + } + }, + "200": { + "description": "Success. The response describes the updated Deployment.", + "schema": { + "$ref": "#/definitions/DeploymentResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Deployments_Update": { + "$ref": "./examples/Deployments_Update.json" + }, + "Deployments_Update_CustomContainer": { + "$ref": "./examples/Deployments_Update_CustomContainer.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppPlatform/Spring/{serviceName}/apps/{appName}/deployments": { + "get": { + "tags": [ + "AppPlatform" + ], + "description": "Handles requests to list all resources in an App.", + "operationId": "Deployments_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/AppNameParameter" + }, + { + "name": "version", + "in": "query", + "description": "Version of the deployments to be listed", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi", + "uniqueItems": false + } + ], + "responses": { + "200": { + "description": "Success. The response describes the list of Deployments in the App.", + "schema": { + "$ref": "#/definitions/DeploymentResourceCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Deployments_List": { + "$ref": "./examples/Deployments_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppPlatform/Spring/{serviceName}/deployments": { + "get": { + "tags": [ + "AppPlatform" + ], + "description": "List deployments for a certain service", + "operationId": "Deployments_ListForCluster", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "name": "version", + "in": "query", + "description": "Version of the deployments to be listed", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi", + "uniqueItems": false + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeploymentResourceCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Deployments_ListForCluster": { + "$ref": "./examples/Deployments_ListForCluster.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppPlatform/Spring/{serviceName}/apps/{appName}/deployments/{deploymentName}/start": { + "post": { + "tags": [ + "AppPlatform" + ], + "description": "Start the deployment.", + "operationId": "Deployments_Start", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/AppNameParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + } + ], + "responses": { + "200": { + "description": "Success." + }, + "202": { + "description": "Accepted. The response indicates the Deployment is now starting and contains a Location header to\r\nquery the operation result." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Deployments_Start": { + "$ref": "./examples/Deployments_Start.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppPlatform/Spring/{serviceName}/apps/{appName}/deployments/{deploymentName}/stop": { + "post": { + "tags": [ + "AppPlatform" + ], + "description": "Stop the deployment.", + "operationId": "Deployments_Stop", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/AppNameParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + } + ], + "responses": { + "200": { + "description": "Success." + }, + "202": { + "description": "Accepted. The response indicates the Deployment is now stopping and contains a Location header to\r\nquery the operation result." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Deployments_Stop": { + "$ref": "./examples/Deployments_Stop.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppPlatform/Spring/{serviceName}/apps/{appName}/deployments/{deploymentName}/restart": { + "post": { + "tags": [ + "AppPlatform" + ], + "description": "Restart the deployment.", + "operationId": "Deployments_Restart", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/AppNameParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + } + ], + "responses": { + "200": { + "description": "Success." + }, + "202": { + "description": "Accepted. The response indicates the Deployment is now restarting and contains a Location header\r\nto query the operation result." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Deployments_Restart": { + "$ref": "./examples/Deployments_Restart.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppPlatform/Spring/{serviceName}/apps/{appName}/deployments/{deploymentName}/getLogFileUrl": { + "post": { + "tags": [ + "AppPlatform" + ], + "description": "Get deployment log file URL", + "operationId": "Deployments_GetLogFileUrl", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/AppNameParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response contains the log file URL.", + "schema": { + "$ref": "#/definitions/LogFileUrlResponse" + } + }, + "204": { + "description": "Success. The deployment does not have log file." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Deployments_GetLogFileUrl": { + "$ref": "./examples/Deployments_GetLogFileUrl.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.AppPlatform/Spring": { + "get": { + "tags": [ + "AppPlatform" + ], + "description": "Handles requests to list all resources in a subscription.", + "operationId": "Services_ListBySubscription", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describes the list of Services in the subscription.", + "schema": { + "$ref": "#/definitions/ServiceResourceList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Services_ListBySubscription": { + "$ref": "./examples/Services_ListBySubscription.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppPlatform/Spring": { + "get": { + "tags": [ + "AppPlatform" + ], + "description": "Handles requests to list all resources in a resource group.", + "operationId": "Services_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describes the list of Services in the resource group.", + "schema": { + "$ref": "#/definitions/ServiceResourceList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Services_List": { + "$ref": "./examples/Services_List.json" + } + } + } + }, + "/providers/Microsoft.AppPlatform/operations": { + "get": { + "tags": [ + "AppPlatform" + ], + "description": "Lists all of the available REST API operations of the Microsoft.AppPlatform provider.", + "operationId": "Operations_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describes the list of operations.", + "schema": { + "$ref": "#/definitions/AvailableOperations" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Operations_List": { + "$ref": "./examples/Operations_List.json" + } + } + } + }, + "/providers/Microsoft.AppPlatform/runtimeVersions": { + "get": { + "tags": [ + "AppPlatform" + ], + "description": "Lists all of the available runtime versions supported by Microsoft.AppPlatform provider.", + "operationId": "RuntimeVersions_ListRuntimeVersions", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describes the details of all supported deployment runtime versions.", + "schema": { + "$ref": "#/definitions/AvailableRuntimeVersions" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "RuntimeVersions_ListRuntimeVersions": { + "$ref": "./examples/RuntimeVersions_ListRuntimeVersions.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.AppPlatform/skus": { + "get": { + "tags": [ + "AppPlatform" + ], + "description": "Lists all of the available skus of the Microsoft.AppPlatform provider.", + "operationId": "Skus_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ResourceSkuCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Skus_List": { + "$ref": "./examples/Skus_List.json" + } + } + } + } + }, + "definitions": { + "ServiceResource": { + "description": "Service resource", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TrackedResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ClusterResourceProperties", + "description": "Properties of the Service resource", + "x-ms-client-flatten": false + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "Sku of the Service resource" + } + } + }, + "TrackedResource": { + "description": "The resource model definition for a ARM tracked top level resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "location": { + "description": "The GEO location of the resource.", + "type": "string" + }, + "tags": { + "description": "Tags of the service which is a list of key value pairs that describe the resource.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "Resource": { + "description": "The core properties of ARM resources.", + "type": "object", + "properties": { + "id": { + "description": "Fully qualified resource Id for the resource.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The name of the resource.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The type of the resource.", + "type": "string", + "readOnly": true + } + }, + "x-ms-azure-resource": true + }, + "ClusterResourceProperties": { + "description": "Service properties payload", + "type": "object", + "properties": { + "provisioningState": { + "description": "Provisioning state of the Service", + "enum": [ + "Creating", + "Updating", + "Deleting", + "Deleted", + "Succeeded", + "Failed", + "Moving", + "Moved", + "MoveFailed" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "networkProfile": { + "$ref": "#/definitions/NetworkProfile", + "description": "Network profile of the Service" + }, + "version": { + "format": "int32", + "description": "Version of the Service", + "type": "integer", + "readOnly": true + }, + "serviceId": { + "description": "ServiceInstanceEntity GUID which uniquely identifies a created resource", + "type": "string", + "readOnly": true + } + } + }, + "ManagedIdentityProperties": { + "description": "Managed identity properties retrieved from ARM request headers.", + "type": "object", + "properties": { + "type": { + "description": "Type of the managed identity", + "enum": [ + "None", + "SystemAssigned", + "UserAssigned", + "SystemAssigned,UserAssigned" + ], + "type": "string", + "x-ms-enum": { + "name": "ManagedIdentityType", + "modelAsString": true + } + }, + "principalId": { + "description": "Principal Id", + "type": "string" + }, + "tenantId": { + "description": "Tenant Id", + "type": "string" + } + } + }, + "Sku": { + "description": "Sku of Azure Spring Cloud", + "type": "object", + "properties": { + "name": { + "description": "Name of the Sku", + "type": "string", + "default": "S0" + }, + "tier": { + "description": "Tier of the Sku", + "type": "string", + "default": "Standard" + }, + "capacity": { + "format": "int32", + "description": "Current capacity of the target resource", + "type": "integer" + } + } + }, + "ConfigServerSettingsValidateResult": { + "description": "Validation result for config server settings", + "type": "object", + "properties": { + "isValid": { + "description": "Indicate if the config server settings are valid", + "type": "boolean" + }, + "details": { + "description": "The detail validation results", + "type": "array", + "items": { + "$ref": "#/definitions/ConfigServerSettingsErrorRecord" + } + } + } + }, + "ConfigServerSettingsErrorRecord": { + "description": "Error record of the config server settings", + "type": "object", + "properties": { + "name": { + "description": "The name of the config server settings error record", + "type": "string" + }, + "uri": { + "description": "The uri of the config server settings error record", + "type": "string" + }, + "messages": { + "description": "The detail error messages of the record", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "ConfigServerResource": { + "description": "Config Server resource", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ConfigServerProperties", + "description": "Properties of the Config Server resource", + "x-ms-client-flatten": false + } + } + }, + "ConfigServerProperties": { + "description": "Config server git properties payload", + "type": "object", + "properties": { + "provisioningState": { + "description": "State of the config server.", + "enum": [ + "NotAvailable", + "Deleted", + "Failed", + "Succeeded", + "Updating" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ConfigServerState", + "modelAsString": true + } + }, + "error": { + "$ref": "#/definitions/Error", + "description": "Error when apply config server settings." + }, + "configServer": { + "$ref": "#/definitions/ConfigServerSettings", + "description": "Settings of config server." + } + } + }, + "MonitoringSettingResource": { + "description": "Monitoring Setting resource", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/MonitoringSettingProperties", + "description": "Properties of the Monitoring Setting resource", + "x-ms-client-flatten": false + } + } + }, + "MonitoringSettingProperties": { + "description": "Monitoring Setting properties payload", + "type": "object", + "properties": { + "provisioningState": { + "description": "State of the Monitoring Setting.", + "enum": [ + "NotAvailable", + "Failed", + "Succeeded", + "Updating" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "MonitoringSettingState", + "modelAsString": true + } + }, + "error": { + "$ref": "#/definitions/Error", + "description": "Error when apply Monitoring Setting changes." + }, + "traceEnabled": { + "description": "Indicates whether enable the trace functionality, which will be deprecated since api version 2020-11-01-preview. Please leverage appInsightsInstrumentationKey to indicate if monitoringSettings enabled or not", + "type": "boolean" + }, + "appInsightsInstrumentationKey": { + "description": "Target application insight instrumentation key, null or whitespace include empty will disable monitoringSettings", + "type": "string" + }, + "appInsightsSamplingRate": { + "description": "Indicates the sampling rate of application insight agent, should be in range [0.0, 100.0]", + "format": "double", + "maximum": 100.0, + "minimum": 0.0, + "type": "number" + }, + "appInsightsAgentVersions": { + "$ref": "#/definitions/applicationInsightsAgentVersions", + "description": "Indicates the versions of application insight agent" + } + } + }, + "applicationInsightsAgentVersions": { + "description": "Application Insights agent versions properties payload", + "type": "object", + "properties": { + "java": { + "description": "Indicates the version of application insight java agent", + "type": "string", + "readOnly": true + } + } + }, + "NetworkProfile": { + "description": "Service network profile payload", + "type": "object", + "properties": { + "serviceRuntimeSubnetId": { + "description": "Fully qualified resource Id of the subnet to host Azure Spring Cloud Service Runtime", + "type": "string" + }, + "appSubnetId": { + "description": "Fully qualified resource Id of the subnet to host Azure Spring Cloud Apps", + "type": "string" + }, + "serviceCidr": { + "description": "Azure Spring Cloud service reserved CIDR", + "type": "string" + }, + "serviceRuntimeNetworkResourceGroup": { + "description": "Name of the resource group containing network resources of Azure Spring Cloud Service Runtime", + "type": "string" + }, + "appNetworkResourceGroup": { + "description": "Name of the resource group containing network resources of Azure Spring Cloud Apps", + "type": "string" + }, + "outboundIPs": { + "description": "Desired outbound IP resources for Azure Spring Cloud instance.", + "type": "object", + "readOnly": true, + "properties": { + "publicIPs": { + "type": "array", + "readOnly": true, + "items": { + "type": "string" + }, + "description": "A list of public IP addresses." + } + } + }, + "requiredTraffics": { + "description": "Required inbound or outbound traffics for Azure Spring Cloud instance.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/RequiredTraffic" + } + } + } + }, + "RequiredTraffic": { + "description": "Required inbound or outbound traffic for Azure Spring Cloud instance.", + "type": "object", + "properties": { + "protocol": { + "description": "The protocol of required traffic", + "type": "string", + "readOnly": true + }, + "port": { + "description": "The port of required traffic", + "type": "integer", + "format": "int32", + "readOnly": true + }, + "ips": { + "description": "The ip list of required traffic", + "type": "array", + "readOnly": true, + "items": { + "type": "string" + } + }, + "fqdns": { + "description": "The FQDN list of required traffic", + "type": "array", + "readOnly": true, + "items": { + "type": "string" + } + }, + "direction": { + "description": "The direction of required traffic", + "type": "string", + "readOnly": true, + "enum": [ + "Inbound", + "Outbound" + ], + "x-ms-enum": { + "name": "trafficDirection", + "modelAsString": true + } + } + } + }, + "Error": { + "description": "The error code compose of code and message.", + "type": "object", + "properties": { + "code": { + "description": "The code of error.", + "type": "string" + }, + "message": { + "description": "The message of error.", + "type": "string" + } + } + }, + "ConfigServerSettings": { + "description": "The settings of config server.", + "type": "object", + "properties": { + "gitProperty": { + "$ref": "#/definitions/ConfigServerGitProperty", + "description": "Property of git environment." + } + } + }, + "ConfigServerGitProperty": { + "description": "Property of git.", + "required": [ + "uri" + ], + "type": "object", + "properties": { + "repositories": { + "description": "Repositories of git.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/GitPatternRepository" + } + }, + "uri": { + "description": "URI of the repository", + "type": "string" + }, + "label": { + "description": "Label of the repository", + "type": "string" + }, + "searchPaths": { + "description": "Searching path of the repository", + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + } + }, + "username": { + "description": "Username of git repository basic auth.", + "type": "string" + }, + "password": { + "description": "Password of git repository basic auth.", + "type": "string" + }, + "hostKey": { + "description": "Public sshKey of git repository.", + "type": "string" + }, + "hostKeyAlgorithm": { + "description": "SshKey algorithm of git repository.", + "type": "string" + }, + "privateKey": { + "description": "Private sshKey algorithm of git repository.", + "type": "string" + }, + "strictHostKeyChecking": { + "description": "Strict host key checking or not.", + "type": "boolean" + } + } + }, + "GitPatternRepository": { + "description": "Git repository property payload", + "required": [ + "name", + "uri" + ], + "type": "object", + "properties": { + "name": { + "description": "Name of the repository", + "type": "string" + }, + "pattern": { + "description": "Collection of pattern of the repository", + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + } + }, + "uri": { + "description": "URI of the repository", + "type": "string" + }, + "label": { + "description": "Label of the repository", + "type": "string" + }, + "searchPaths": { + "description": "Searching path of the repository", + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + } + }, + "username": { + "description": "Username of git repository basic auth.", + "type": "string" + }, + "password": { + "description": "Password of git repository basic auth.", + "type": "string" + }, + "hostKey": { + "description": "Public sshKey of git repository.", + "type": "string" + }, + "hostKeyAlgorithm": { + "description": "SshKey algorithm of git repository.", + "type": "string" + }, + "privateKey": { + "description": "Private sshKey algorithm of git repository.", + "type": "string" + }, + "strictHostKeyChecking": { + "description": "Strict host key checking or not.", + "type": "boolean" + } + } + }, + "TestKeys": { + "description": "Test keys payload", + "type": "object", + "properties": { + "primaryKey": { + "description": "Primary key", + "type": "string" + }, + "secondaryKey": { + "description": "Secondary key", + "type": "string" + }, + "primaryTestEndpoint": { + "description": "Primary test endpoint", + "type": "string" + }, + "secondaryTestEndpoint": { + "description": "Secondary test endpoint", + "type": "string" + }, + "enabled": { + "description": "Indicates whether the test endpoint feature enabled or not", + "type": "boolean" + } + } + }, + "RegenerateTestKeyRequestPayload": { + "description": "Regenerate test key request payload", + "required": [ + "keyType" + ], + "type": "object", + "properties": { + "keyType": { + "description": "Type of the test key", + "enum": [ + "Primary", + "Secondary" + ], + "type": "string", + "x-ms-enum": { + "name": "TestKeyType", + "modelAsString": true + } + } + } + }, + "AppResource": { + "description": "App resource payload", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/AppResourceProperties", + "description": "Properties of the App resource", + "x-ms-client-flatten": false + }, + "identity": { + "$ref": "#/definitions/ManagedIdentityProperties", + "description": "The Managed Identity type of the app resource" + }, + "location": { + "description": "The GEO location of the application, always the same with its parent resource", + "type": "string" + } + } + }, + "ProxyResource": { + "description": "The resource model definition for a ARM proxy resource. It will have everything other than required location and tags.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": {} + }, + "AppResourceProperties": { + "description": "App resource properties payload", + "type": "object", + "properties": { + "public": { + "description": "Indicates whether the App exposes public endpoint", + "type": "boolean" + }, + "url": { + "description": "URL of the App", + "type": "string", + "readOnly": true + }, + "provisioningState": { + "description": "Provisioning state of the App", + "enum": [ + "Succeeded", + "Failed", + "Creating", + "Updating" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "AppResourceProvisioningState", + "modelAsString": true + } + }, + "activeDeploymentName": { + "description": "Name of the active deployment of the App", + "type": "string" + }, + "fqdn": { + "description": "Fully qualified dns Name.", + "type": "string" + }, + "httpsOnly": { + "description": "Indicate if only https is allowed.", + "type": "boolean" + }, + "createdTime": { + "format": "date-time", + "description": "Date time when the resource is created", + "type": "string", + "readOnly": true + }, + "temporaryDisk": { + "$ref": "#/definitions/TemporaryDisk", + "description": "Temporary disk settings" + }, + "persistentDisk": { + "$ref": "#/definitions/PersistentDisk", + "description": "Persistent disk settings" + }, + "enableEndToEndTLS": { + "description": "Indicate if end to end TLS is enabled.", + "type": "boolean" + } + } + }, + "TemporaryDisk": { + "description": "Temporary disk payload", + "type": "object", + "properties": { + "sizeInGB": { + "format": "int32", + "description": "Size of the temporary disk in GB", + "maximum": 5.0, + "minimum": 0.0, + "type": "integer" + }, + "mountPath": { + "description": "Mount path of the temporary disk", + "type": "string" + } + } + }, + "PersistentDisk": { + "description": "Persistent disk payload", + "type": "object", + "properties": { + "sizeInGB": { + "format": "int32", + "description": "Size of the persistent disk in GB", + "maximum": 50.0, + "minimum": 0.0, + "type": "integer" + }, + "usedInGB": { + "format": "int32", + "description": "Size of the used persistent disk in GB", + "maximum": 50.0, + "minimum": 0.0, + "type": "integer", + "readOnly": true + }, + "mountPath": { + "description": "Mount path of the persistent disk", + "type": "string" + } + } + }, + "AppResourceCollection": { + "description": "Object that includes an array of App resources and a possible link for next set", + "type": "object", + "properties": { + "value": { + "description": "Collection of App resources", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/AppResource" + } + }, + "nextLink": { + "description": "URL client should use to fetch the next page (per server side paging).\r\nIt's null for now, added for future use.", + "type": "string" + } + } + }, + "ResourceUploadDefinition": { + "description": "Resource upload definition payload", + "type": "object", + "properties": { + "relativePath": { + "description": "Source relative path", + "type": "string" + }, + "uploadUrl": { + "description": "Upload URL", + "type": "string" + } + } + }, + "BindingResource": { + "description": "Binding resource payload", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/BindingResourceProperties", + "description": "Properties of the Binding resource", + "x-ms-client-flatten": false + } + } + }, + "BindingResourceProperties": { + "description": "Binding resource properties payload", + "type": "object", + "properties": { + "resourceName": { + "description": "The name of the bound resource", + "type": "string", + "readOnly": true + }, + "resourceType": { + "description": "The standard Azure resource type of the bound resource", + "type": "string", + "readOnly": true + }, + "resourceId": { + "description": "The Azure resource id of the bound resource", + "type": "string" + }, + "key": { + "description": "The key of the bound resource", + "type": "string" + }, + "bindingParameters": { + "description": "Binding parameters of the Binding resource", + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "generatedProperties": { + "description": "The generated Spring Boot property file for this binding. The secret will be deducted.", + "type": "string", + "readOnly": true + }, + "createdAt": { + "description": "Creation time of the Binding resource", + "type": "string", + "readOnly": true + }, + "updatedAt": { + "description": "Update time of the Binding resource", + "type": "string", + "readOnly": true + } + } + }, + "BindingResourceCollection": { + "description": "Object that includes an array of Binding resources and a possible link for next set", + "type": "object", + "properties": { + "value": { + "description": "Collection of Binding resources", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/BindingResource" + } + }, + "nextLink": { + "description": "URL client should use to fetch the next page (per server side paging).\r\nIt's null for now, added for future use.", + "type": "string" + } + } + }, + "CertificateResource": { + "description": "Certificate resource payload.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/CertificateProperties", + "description": "Properties of the certificate resource payload.", + "x-ms-client-flatten": false + } + } + }, + "CertificateProperties": { + "description": "Certificate resource payload.", + "required": [ + "vaultUri", + "keyVaultCertName" + ], + "type": "object", + "properties": { + "thumbprint": { + "description": "The thumbprint of certificate.", + "type": "string", + "readOnly": true + }, + "vaultUri": { + "description": "The vault uri of user key vault.", + "type": "string" + }, + "keyVaultCertName": { + "description": "The certificate name of key vault.", + "type": "string" + }, + "certVersion": { + "description": "The certificate version of key vault.", + "type": "string" + }, + "issuer": { + "description": "The issuer of certificate.", + "type": "string", + "readOnly": true + }, + "issuedDate": { + "description": "The issue date of certificate.", + "type": "string", + "readOnly": true + }, + "expirationDate": { + "description": "The expiration date of certificate.", + "type": "string", + "readOnly": true + }, + "activateDate": { + "description": "The activate date of certificate.", + "type": "string", + "readOnly": true + }, + "subjectName": { + "description": "The subject name of certificate.", + "type": "string", + "readOnly": true + }, + "dnsNames": { + "description": "The domain list of certificate.", + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + } + } + }, + "CertificateResourceCollection": { + "description": "Collection compose of certificate resources list and a possible link for next page.", + "type": "object", + "properties": { + "value": { + "description": "The certificate resources list.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/CertificateResource" + } + }, + "nextLink": { + "description": "The link to next page of certificate list.", + "type": "string" + } + } + }, + "NameAvailabilityParameters": { + "description": "Name availability parameters payload", + "required": [ + "type", + "name" + ], + "type": "object", + "properties": { + "type": { + "description": "Type of the resource to check name availability", + "type": "string" + }, + "name": { + "description": "Name to be checked", + "type": "string" + } + } + }, + "NameAvailability": { + "description": "Name availability result payload", + "type": "object", + "properties": { + "nameAvailable": { + "description": "Indicates whether the name is available", + "type": "boolean" + }, + "reason": { + "description": "Reason why the name is not available", + "type": "string" + }, + "message": { + "description": "Message why the name is not available", + "type": "string" + } + }, + "readOnly": true + }, + "CustomDomainResource": { + "description": "Custom domain resource payload.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/CustomDomainProperties", + "description": "Properties of the custom domain resource.", + "x-ms-client-flatten": false + } + } + }, + "CustomDomainProperties": { + "description": "Custom domain of app resource payload.", + "type": "object", + "properties": { + "thumbprint": { + "description": "The thumbprint of bound certificate.", + "type": "string" + }, + "appName": { + "description": "The app name of domain.", + "type": "string", + "readOnly": true + }, + "certName": { + "description": "The bound certificate name of domain.", + "type": "string" + } + } + }, + "CustomDomainResourceCollection": { + "description": "Collection compose of a custom domain resources list and a possible link for next page.", + "type": "object", + "properties": { + "value": { + "description": "The custom domain resources list.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/CustomDomainResource" + } + }, + "nextLink": { + "description": "The link to next page of custom domain list.", + "type": "string" + } + } + }, + "CustomDomainValidatePayload": { + "description": "Custom domain validate payload.", + "required": [ + "name" + ], + "type": "object", + "properties": { + "name": { + "description": "Name to be validated", + "type": "string" + } + } + }, + "CustomDomainValidateResult": { + "description": "Validation result for custom domain.", + "type": "object", + "properties": { + "isValid": { + "description": "Indicates if domain name is valid.", + "type": "boolean" + }, + "message": { + "description": "Message of why domain name is invalid.", + "type": "string" + } + } + }, + "DeploymentResource": { + "description": "Deployment resource payload", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/DeploymentResourceProperties", + "description": "Properties of the Deployment resource", + "x-ms-client-flatten": false + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "Sku of the Deployment resource" + } + } + }, + "DeploymentResourceProperties": { + "description": "Deployment resource properties payload", + "type": "object", + "properties": { + "source": { + "$ref": "#/definitions/UserSourceInfo", + "description": "Uploaded source information of the deployment." + }, + "appName": { + "description": "App name of the deployment", + "type": "string", + "readOnly": true + }, + "deploymentSettings": { + "$ref": "#/definitions/DeploymentSettings", + "description": "Deployment settings of the Deployment" + }, + "provisioningState": { + "description": "Provisioning state of the Deployment", + "enum": [ + "Creating", + "Updating", + "Succeeded", + "Failed" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "DeploymentResourceProvisioningState", + "modelAsString": true + } + }, + "status": { + "description": "Status of the Deployment", + "enum": [ + "Unknown", + "Stopped", + "Running", + "Failed", + "Allocating", + "Upgrading", + "Compiling" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "DeploymentResourceStatus", + "modelAsString": true + } + }, + "active": { + "description": "Indicates whether the Deployment is active", + "type": "boolean", + "readOnly": true + }, + "createdTime": { + "format": "date-time", + "description": "Date time when the resource is created", + "type": "string", + "readOnly": true + }, + "instances": { + "description": "Collection of instances belong to the Deployment", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentInstance" + }, + "readOnly": true + } + } + }, + "UserSourceInfo": { + "description": "Source information for a deployment", + "type": "object", + "properties": { + "type": { + "description": "Type of the source uploaded", + "enum": [ + "Jar", + "NetCoreZip", + "Source", + "Container" + ], + "type": "string", + "x-ms-enum": { + "name": "UserSourceType", + "modelAsString": true + } + }, + "relativePath": { + "description": "Relative path of the storage which stores the source", + "type": "string" + }, + "version": { + "description": "Version of the source", + "type": "string" + }, + "artifactSelector": { + "description": "Selector for the artifact to be used for the deployment for multi-module projects. This should be\r\nthe relative path to the target module/project.", + "type": "string" + }, + "customContainer": { + "$ref": "#/definitions/CustomContainer", + "description": "Custom container payload" + } + } + }, + "CustomContainer": { + "description": "Custom container payload", + "type": "object", + "properties": { + "server": { + "type": "string", + "description": "The name of the registry that contains the container image" + }, + "containerImage": { + "type": "string", + "description": "Container image of the custom container. This should be in the form of : without the server name of the registry" + }, + "command": { + "description": "Entrypoint array. Not executed within a shell. The docker image's ENTRYPOINT is used if this is not provided.", + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + } + }, + "args": { + "description": "Arguments to the entrypoint. The docker image's CMD is used if this is not provided.", + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + } + }, + "imageRegistryCredential": { + "$ref": "#/definitions/ImageRegistryCredential", + "description": "Credential of the image registry" + } + } + }, + "ImageRegistryCredential": { + "description": "Credential of the image registry", + "type": "object", + "properties": { + "username": { + "type": "string", + "description": "The username of the image registry credential" + }, + "password": { + "type": "string", + "description": "The password of the image registry credential" + } + } + }, + "DeploymentSettings": { + "description": "Deployment settings payload", + "type": "object", + "properties": { + "cpu": { + "format": "int32", + "description": "Required CPU. This should be 1 for Basic tier, and in range [1, 4] for Standard tier. This is deprecated starting from API version 2021-06-01-preview. Please use the resourceRequests field to set the CPU size.", + "default": 1, + "type": "integer" + }, + "memoryInGB": { + "format": "int32", + "description": "Required Memory size in GB. This should be in range [1, 2] for Basic tier, and in range [1, 8] for Standard tier. This is deprecated starting from API version 2021-06-01-preview. Please use the resourceRequests field to set the the memory size.", + "default": 1, + "type": "integer" + }, + "resourceRequests": { + "$ref": "#/definitions/ResourceRequests", + "description": "The requested resource quantity for required CPU and Memory. It is recommended that using this field to represent the required CPU and Memory, the old field cpu and memoryInGB will be deprecated later." + }, + "jvmOptions": { + "description": "JVM parameter", + "type": "string" + }, + "netCoreMainEntryPath": { + "description": "The path to the .NET executable relative to zip root", + "type": "string" + }, + "environmentVariables": { + "description": "Collection of environment variables", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "runtimeVersion": { + "description": "Runtime version", + "enum": [ + "Java_8", + "Java_11", + "NetCore_31" + ], + "type": "string", + "x-ms-enum": { + "name": "RuntimeVersion", + "modelAsString": true + } + } + } + }, + "DeploymentInstance": { + "description": "Deployment instance payload", + "type": "object", + "properties": { + "name": { + "description": "Name of the deployment instance", + "type": "string", + "readOnly": true + }, + "status": { + "description": "Status of the deployment instance", + "type": "string", + "readOnly": true + }, + "reason": { + "description": "Failed reason of the deployment instance", + "type": "string", + "readOnly": true + }, + "discoveryStatus": { + "description": "Discovery status of the deployment instance", + "type": "string", + "readOnly": true + }, + "startTime": { + "description": "Start time of the deployment instance", + "type": "string", + "readOnly": true + } + } + }, + "DeploymentResourceCollection": { + "description": "Object that includes an array of App resources and a possible link for next set", + "type": "object", + "properties": { + "value": { + "description": "Collection of Deployment resources", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentResource" + } + }, + "nextLink": { + "description": "URL client should use to fetch the next page (per server side paging).\r\nIt's null for now, added for future use.", + "type": "string" + } + } + }, + "ResourceRequests": { + "description": "Deployment resource request payload", + "type": "object", + "properties": { + "cpu": { + "description": "Required CPU. 1 core can be represented by 1 or 1000m. This should be 500m or 1 for Basic tier, and {500m, 1, 2, 3, 4} for Standard tier.", + "type": "string" + }, + "memory": { + "description": "Required memory. 1 GB can be represented by 1Gi or 1024Mi. This should be {512Mi, 1Gi, 2Gi} for Basic tier, and {512Mi, 1Gi, 2Gi, ..., 8Gi} for Standard tier.", + "type": "string" + } + } + }, + "LogFileUrlResponse": { + "description": "Log file URL payload", + "required": [ + "url" + ], + "type": "object", + "properties": { + "url": { + "description": "URL of the log file", + "type": "string" + } + } + }, + "ServiceResourceList": { + "description": "Object that includes an array of Service resources and a possible link for next set", + "type": "object", + "properties": { + "value": { + "description": "Collection of Service resources", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/ServiceResource" + } + }, + "nextLink": { + "description": "URL client should use to fetch the next page (per server side paging).\r\nIt's null for now, added for future use.", + "type": "string" + } + } + }, + "AvailableOperations": { + "description": "Available operations of the service", + "type": "object", + "properties": { + "value": { + "description": "Collection of available operation details", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/OperationDetail" + } + }, + "nextLink": { + "description": "URL client should use to fetch the next page (per server side paging).\r\nIt's null for now, added for future use.", + "type": "string" + } + } + }, + "OperationDetail": { + "description": "Operation detail payload", + "type": "object", + "properties": { + "name": { + "description": "Name of the operation", + "type": "string" + }, + "isDataAction": { + "description": "Indicates whether the operation is a data action", + "type": "boolean" + }, + "display": { + "$ref": "#/definitions/OperationDisplay", + "description": "Display of the operation" + }, + "origin": { + "description": "Origin of the operation", + "type": "string" + }, + "properties": { + "$ref": "#/definitions/OperationProperties", + "description": "Properties of the operation" + } + } + }, + "OperationDisplay": { + "description": "Operation display payload", + "type": "object", + "properties": { + "provider": { + "description": "Resource provider of the operation", + "type": "string" + }, + "resource": { + "description": "Resource of the operation", + "type": "string" + }, + "operation": { + "description": "Localized friendly name for the operation", + "type": "string" + }, + "description": { + "description": "Localized friendly description for the operation", + "type": "string" + } + } + }, + "OperationProperties": { + "description": "Extra Operation properties", + "type": "object", + "properties": { + "serviceSpecification": { + "$ref": "#/definitions/ServiceSpecification", + "description": "Service specifications of the operation" + } + } + }, + "ServiceSpecification": { + "description": "Service specification payload", + "type": "object", + "properties": { + "logSpecifications": { + "description": "Specifications of the Log for Azure Monitoring", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/LogSpecification" + } + }, + "metricSpecifications": { + "description": "Specifications of the Metrics for Azure Monitoring", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/MetricSpecification" + } + } + } + }, + "LogSpecification": { + "description": "Specifications of the Log for Azure Monitoring", + "type": "object", + "properties": { + "name": { + "description": "Name of the log", + "type": "string" + }, + "displayName": { + "description": "Localized friendly display name of the log", + "type": "string" + }, + "blobDuration": { + "description": "Blob duration of the log", + "type": "string" + } + } + }, + "MetricSpecification": { + "description": "Specifications of the Metrics for Azure Monitoring", + "type": "object", + "properties": { + "name": { + "description": "Name of the metric", + "type": "string" + }, + "displayName": { + "description": "Localized friendly display name of the metric", + "type": "string" + }, + "displayDescription": { + "description": "Localized friendly description of the metric", + "type": "string" + }, + "unit": { + "description": "Unit that makes sense for the metric", + "type": "string" + }, + "category": { + "description": "Name of the metric category that the metric belongs to. A metric can only belong to a single category.", + "type": "string" + }, + "aggregationType": { + "description": "Only provide one value for this field. Valid values: Average, Minimum, Maximum, Total, Count.", + "type": "string" + }, + "supportedAggregationTypes": { + "description": "Supported aggregation types", + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + } + }, + "supportedTimeGrainTypes": { + "description": "Supported time grain types", + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + } + }, + "fillGapWithZero": { + "description": "Optional. If set to true, then zero will be returned for time duration where no metric is emitted/published.", + "type": "boolean" + }, + "dimensions": { + "description": "Dimensions of the metric", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/MetricDimension" + } + } + } + }, + "MetricDimension": { + "description": "Specifications of the Dimension of metrics", + "type": "object", + "properties": { + "name": { + "description": "Name of the dimension", + "type": "string" + }, + "displayName": { + "description": "Localized friendly display name of the dimension", + "type": "string" + } + } + }, + "ResourceSkuCollection": { + "description": "Object that includes an array of Azure Spring Cloud SKU and a possible link for next set", + "type": "object", + "properties": { + "value": { + "description": "Collection of resource SKU", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/ResourceSku" + } + }, + "nextLink": { + "description": "URL client should use to fetch the next page (per server side paging).\r\nIt's null for now, added for future use.", + "type": "string" + } + } + }, + "ResourceSku": { + "description": "Describes an available Azure Spring Cloud SKU.", + "type": "object", + "properties": { + "resourceType": { + "description": "Gets the type of resource the SKU applies to.", + "type": "string" + }, + "name": { + "description": "Gets the name of SKU.", + "type": "string" + }, + "tier": { + "description": "Gets the tier of SKU.", + "type": "string" + }, + "capacity": { + "$ref": "#/definitions/SkuCapacity", + "description": "Gets the capacity of SKU." + }, + "locations": { + "description": "Gets the set of locations that the SKU is available.", + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + } + }, + "locationInfo": { + "description": "Gets a list of locations and availability zones in those locations where the SKU is available.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/ResourceSkuLocationInfo" + } + }, + "restrictions": { + "description": "Gets the restrictions because of which SKU cannot be used. This is\r\nempty if there are no restrictions.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/ResourceSkuRestrictions" + } + } + } + }, + "SkuCapacity": { + "description": "The SKU capacity", + "required": [ + "minimum" + ], + "type": "object", + "properties": { + "minimum": { + "format": "int32", + "description": "Gets or sets the minimum.", + "type": "integer" + }, + "maximum": { + "format": "int32", + "description": "Gets or sets the maximum.", + "type": "integer" + }, + "default": { + "format": "int32", + "description": "Gets or sets the default.", + "type": "integer" + }, + "scaleType": { + "description": "Gets or sets the type of the scale.", + "enum": [ + "None", + "Manual", + "Automatic" + ], + "type": "string", + "x-ms-enum": { + "name": "SkuScaleType", + "modelAsString": true + } + } + } + }, + "ResourceSkuLocationInfo": { + "description": "Locations and availability zones where the SKU is available", + "type": "object", + "properties": { + "location": { + "description": "Gets location of the SKU", + "type": "string" + }, + "zones": { + "description": "Gets list of availability zones where the SKU is supported.", + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + } + }, + "zoneDetails": { + "description": "Gets details of capabilities available to a SKU in specific zones.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/ResourceSkuZoneDetails" + } + } + } + }, + "ResourceSkuRestrictions": { + "description": "Restrictions where the SKU cannot be used", + "type": "object", + "properties": { + "type": { + "description": "Gets the type of restrictions. Possible values include: 'Location', 'Zone'", + "enum": [ + "Location", + "Zone" + ], + "type": "string", + "x-ms-enum": { + "name": "ResourceSkuRestrictionsType", + "modelAsString": true + } + }, + "values": { + "description": "Gets the value of restrictions. If the restriction type is set to\r\nlocation. This would be different locations where the SKU is restricted.", + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + } + }, + "restrictionInfo": { + "$ref": "#/definitions/ResourceSkuRestrictionInfo", + "description": "Gets the information about the restriction where the SKU cannot be used." + }, + "reasonCode": { + "description": "Gets the reason for restriction. Possible values include: 'QuotaId', 'NotAvailableForSubscription'", + "enum": [ + "QuotaId", + "NotAvailableForSubscription" + ], + "type": "string", + "x-ms-enum": { + "name": "ResourceSkuRestrictionsReasonCode", + "modelAsString": true + } + } + } + }, + "ResourceSkuZoneDetails": { + "description": "Details of capabilities available to a SKU in specific zones", + "type": "object", + "properties": { + "name": { + "description": "Gets the set of zones that the SKU is available in with the\r\nspecified capabilities.", + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + } + }, + "capabilities": { + "description": "Gets a list of capabilities that are available for the SKU in the\r\nspecified list of zones.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/ResourceSkuCapabilities" + } + } + } + }, + "ResourceSkuRestrictionInfo": { + "description": "Information about the restriction where the SKU cannot be used", + "type": "object", + "properties": { + "locations": { + "description": "Gets locations where the SKU is restricted", + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + } + }, + "zones": { + "description": "Gets list of availability zones where the SKU is restricted.", + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "ResourceSkuCapabilities": { + "type": "object", + "properties": { + "name": { + "description": "Gets an invariant to describe the feature.", + "type": "string" + }, + "value": { + "description": "Gets an invariant if the feature is measured by quantity.", + "type": "string" + } + } + }, + "CloudError": { + "description": "An error response from the service.", + "properties": { + "error": { + "description": "An error response from the service.", + "$ref": "#/definitions/CloudErrorBody" + } + }, + "x-ms-external": true + }, + "CloudErrorBody": { + "description": "An error response from the service.", + "properties": { + "code": { + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically.", + "type": "string" + }, + "message": { + "description": "A message describing the error, intended to be suitable for display in a user interface.", + "type": "string" + }, + "target": { + "description": "The target of the particular error. For example, the name of the property in error.", + "type": "string" + }, + "details": { + "description": "A list of additional details about the error.", + "type": "array", + "items": { + "$ref": "#/definitions/CloudErrorBody" + } + } + }, + "x-ms-external": true + }, + "AvailableRuntimeVersions": { + "type": "object", + "properties": { + "value": { + "description": "A list of all supported runtime versions.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/SupportedRuntimeVersion" + }, + "readOnly": true + } + }, + "readOnly": true + }, + "SupportedRuntimeVersion": { + "description": "Supported deployment runtime version descriptor.", + "type": "object", + "properties": { + "value": { + "description": "The raw value which could be passed to deployment CRUD operations.", + "enum": [ + "Java_8", + "Java_11", + "NetCore_31" + ], + "type": "string", + "x-ms-enum": { + "name": "SupportedRuntimeValue", + "modelAsString": true + } + }, + "platform": { + "description": "The platform of this runtime version (possible values: \"Java\" or \".NET\").", + "enum": [ + "Java", + ".NET Core" + ], + "type": "string", + "x-ms-enum": { + "name": "SupportedRuntimePlatform", + "modelAsString": true + } + }, + "version": { + "description": "The detailed version (major.minor) of the platform.", + "type": "string" + } + }, + "readOnly": true + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "The API version to use for this operation.", + "required": true, + "type": "string", + "minLength": 1 + }, + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Gets subscription ID which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.", + "required": true, + "type": "string" + }, + "ResourceGroupNameParameter": { + "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" + }, + "ServiceNameParameter": { + "name": "serviceName", + "in": "path", + "description": "The name of the Service resource.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "AppNameParameter": { + "name": "appName", + "in": "path", + "description": "The name of the App resource.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "DeploymentNameParameter": { + "name": "deploymentName", + "in": "path", + "description": "The name of the Deployment resource.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "BindingNameParameter": { + "name": "bindingName", + "in": "path", + "description": "The name of the Binding resource.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "CustomDomainNameParameter": { + "name": "domainName", + "in": "path", + "description": "The name of the custom domain resource.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "CertificateNameParameter": { + "name": "certificateName", + "in": "path", + "description": "The name of the certificate resource.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + }, + "securityDefinitions": { + "azure_auth": { + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow" + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Apps_CreateOrUpdate.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Apps_CreateOrUpdate.json new file mode 100644 index 000000000000..7359f1fb4d42 --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Apps_CreateOrUpdate.json @@ -0,0 +1,123 @@ +{ + "parameters": { + "appResource": { + "properties": { + "public": true, + "activeDeploymentName": "mydeployment1", + "fqdn": "myapp.mydomain.com", + "httpsOnly": false, + "enableEndToEndTLS": false, + "temporaryDisk": { + "sizeInGB": 2, + "mountPath": "mytemporarydisk" + }, + "persistentDisk": { + "sizeInGB": 2, + "mountPath": "mypersistentdisk" + } + }, + "identity": null, + "location": "eastus" + }, + "api-version": "2021-06-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice", + "appName": "myapp" + }, + "responses": { + "200": { + "body": { + "properties": { + "public": true, + "url": "myapp.myservice.azuremicroservices.io", + "provisioningState": "Succeeded", + "activeDeploymentName": "mydeployment1", + "fqdn": "myapp.mydomain.com", + "httpsOnly": false, + "enableEndToEndTLS": false, + "temporaryDisk": { + "sizeInGB": 2, + "mountPath": "mytemporarydisk" + }, + "persistentDisk": { + "sizeInGB": 2, + "usedInGB": 1, + "mountPath": "mypersistentdisk" + } + }, + "type": "Microsoft.AppPlatform/Spring/apps", + "identity": { + "type": "SystemAssigned", + "principalId": "principalid", + "tenantId": "tenantid" + }, + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp", + "name": "myapp" + } + }, + "201": { + "body": { + "properties": { + "public": true, + "url": "myapp.myservice.azuremicroservices.io", + "provisioningState": "Creating", + "activeDeploymentName": "mydeployment1", + "fqdn": "myapp.mydomain.com", + "httpsOnly": false, + "enableEndToEndTLS": false, + "temporaryDisk": { + "sizeInGB": 2, + "mountPath": "mytemporarydisk" + }, + "persistentDisk": { + "sizeInGB": 2, + "usedInGB": 1, + "mountPath": "mypersistentdisk" + } + }, + "type": "Microsoft.AppPlatform/Spring/apps", + "identity": { + "type": "SystemAssigned", + "principalId": "principalid", + "tenantId": "tenantid" + }, + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp", + "name": "myapp" + } + }, + "202": { + "body": { + "properties": { + "public": true, + "url": "myapp.myservice.azuremicroservices.io", + "provisioningState": "Updating", + "activeDeploymentName": "mydeployment1", + "fqdn": "myapp.mydomain.com", + "httpsOnly": false, + "enableEndToEndTLS": false, + "temporaryDisk": { + "sizeInGB": 2, + "mountPath": "mytemporarydisk" + }, + "persistentDisk": { + "sizeInGB": 2, + "usedInGB": 1, + "mountPath": "mypersistentdisk" + } + }, + "type": "Microsoft.AppPlatform/Spring/apps", + "identity": { + "type": "SystemAssigned", + "principalId": "principalid", + "tenantId": "tenantid" + }, + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp", + "name": "myapp" + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Apps_Delete.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Apps_Delete.json new file mode 100644 index 000000000000..2a83ec3052b6 --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Apps_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-06-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice", + "appName": "myapp" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Apps_Get.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Apps_Get.json new file mode 100644 index 000000000000..de91aff81739 --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Apps_Get.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2021-06-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice", + "appName": "myapp" + }, + "responses": { + "200": { + "body": { + "properties": { + "public": true, + "url": "myapp.myservice.azuremicroservices.io", + "provisioningState": "Succeeded", + "activeDeploymentName": "mydeployment1", + "fqdn": "myapp.mydomain.com", + "httpsOnly": false, + "enableEndToEndTLS": false, + "temporaryDisk": { + "sizeInGB": 2, + "mountPath": "mytemporarydisk" + }, + "persistentDisk": { + "sizeInGB": 2, + "usedInGB": 1, + "mountPath": "mypersistentdisk" + } + }, + "type": "Microsoft.AppPlatform/Spring/apps", + "identity": { + "type": "SystemAssigned", + "principalId": "principalid", + "tenantId": "tenantid" + }, + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp", + "name": "myapp" + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Apps_GetResourceUploadUrl.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Apps_GetResourceUploadUrl.json new file mode 100644 index 000000000000..440dd309074f --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Apps_GetResourceUploadUrl.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2021-06-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice", + "appName": "myapp" + }, + "responses": { + "200": { + "body": { + "relativePath": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855-20190801-3ed9f4a2-986b-4bbd-b833-a42dccb2f777", + "uploadUrl": "https://springcloudstorageaccount.file.core.windows.net/bd172614181f42e2853f6fd90029cda8/e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855-20190801-3ed9f4a2-986b-4bbd-b833-a42dccb2f777?sv=2018-03-28&sr=f&sig=SampleSignature&se=2019-08-01T10%3A42%3A21Z&sp=w" + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Apps_List.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Apps_List.json new file mode 100644 index 000000000000..ea87852b56fb --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Apps_List.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2021-06-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "public": true, + "url": "myapp.myservice.azuremicroservices.io", + "provisioningState": "Succeeded", + "activeDeploymentName": "mydeployment1", + "fqdn": "myapp.mydomain.com", + "httpsOnly": false, + "enableEndToEndTLS": false, + "temporaryDisk": { + "sizeInGB": 2, + "mountPath": "mytemporarydisk" + }, + "persistentDisk": { + "sizeInGB": 2, + "usedInGB": 1, + "mountPath": "mypersistentdisk" + } + }, + "type": "Microsoft.AppPlatform/Spring/apps", + "identity": { + "type": "SystemAssigned", + "principalId": "principalid", + "tenantId": "tenantid" + }, + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp", + "name": "myapp" + } + ] + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Apps_Update.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Apps_Update.json new file mode 100644 index 000000000000..a103ecf7dd33 --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Apps_Update.json @@ -0,0 +1,96 @@ +{ + "parameters": { + "appResource": { + "properties": { + "public": true, + "activeDeploymentName": "mydeployment1", + "fqdn": "myapp.mydomain.com", + "httpsOnly": false, + "enableEndToEndTLS": false, + "temporaryDisk": { + "sizeInGB": 2, + "mountPath": "mytemporarydisk" + }, + "persistentDisk": { + "sizeInGB": 2, + "mountPath": "mypersistentdisk" + } + }, + "identity": { + "type": "SystemAssigned", + "principalId": null, + "tenantId": null + }, + "location": "eastus" + }, + "api-version": "2021-06-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice", + "appName": "myapp" + }, + "responses": { + "200": { + "body": { + "properties": { + "public": true, + "url": "myapp.myservice.azuremicroservices.io", + "provisioningState": "Succeeded", + "activeDeploymentName": "mydeployment1", + "fqdn": "myapp.mydomain.com", + "httpsOnly": false, + "enableEndToEndTLS": false, + "temporaryDisk": { + "sizeInGB": 2, + "mountPath": "mytemporarydisk" + }, + "persistentDisk": { + "sizeInGB": 2, + "usedInGB": 1, + "mountPath": "mypersistentdisk" + } + }, + "type": "Microsoft.AppPlatform/Spring/apps", + "identity": { + "type": "SystemAssigned", + "principalId": "principalid", + "tenantId": "tenantid" + }, + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp", + "name": "myapp" + } + }, + "202": { + "body": { + "properties": { + "public": true, + "url": "myapp.myservice.azuremicroservices.io", + "provisioningState": "Updating", + "activeDeploymentName": "mydeployment1", + "fqdn": "myapp.mydomain.com", + "httpsOnly": false, + "enableEndToEndTLS": false, + "temporaryDisk": { + "sizeInGB": 2, + "mountPath": "mytemporarydisk" + }, + "persistentDisk": { + "sizeInGB": 2, + "usedInGB": 1, + "mountPath": "mypersistentdisk" + } + }, + "type": "Microsoft.AppPlatform/Spring/apps", + "identity": { + "type": "SystemAssigned", + "principalId": "principalid", + "tenantId": "tenantid" + }, + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp", + "name": "myapp" + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Apps_ValidateDomain.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Apps_ValidateDomain.json new file mode 100644 index 000000000000..8225a28158c0 --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Apps_ValidateDomain.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "validatePayload": { + "name": "mydomain.io" + }, + "api-version": "2021-06-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice", + "appName": "myapp" + }, + "responses": { + "200": { + "body": { + "isValid": false, + "message": "Certificate is invalid, please check if it is a self signed cert or if it contains a suitable dns name" + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Bindings_CreateOrUpdate.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Bindings_CreateOrUpdate.json new file mode 100644 index 000000000000..af805b3241cf --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Bindings_CreateOrUpdate.json @@ -0,0 +1,82 @@ +{ + "parameters": { + "bindingResource": { + "properties": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.DocumentDB/databaseAccounts/my-cosmosdb-1", + "key": "xxxx", + "bindingParameters": { + "databaseName": "db1", + "apiType": "SQL" + }, + "generatedProperties": null, + "createdAt": null, + "updatedAt": null + } + }, + "api-version": "2021-06-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice", + "appName": "myapp", + "bindingName": "mybinding" + }, + "responses": { + "200": { + "body": { + "properties": { + "resourceName": "my-cosmosdb-1", + "resourceType": "Microsoft.DocumentDB", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.DocumentDB/databaseAccounts/my-cosmosdb-1", + "bindingParameters": { + "databaseName": "db1", + "apiType": "SQL" + }, + "generatedProperties": "spring.datasource.url=jdbc:mysql://localhost:3306/test\nspring.datasource.username=root\nspring.datasource.password=1****6", + "createdAt": "2019-01-01T12:34:56.000Z", + "updatedAt": "2019-01-01T12:34:56.000Z" + }, + "type": "Microsoft.AppPlatform/Spring/apps/bindings", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp/bindings/mybinding", + "name": "mybinding" + } + }, + "201": { + "body": { + "properties": { + "resourceName": "my-cosmosdb-1", + "resourceType": "Microsoft.DocumentDB", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.DocumentDB/databaseAccounts/my-cosmosdb-1", + "bindingParameters": { + "databaseName": "db1", + "apiType": "SQL" + }, + "generatedProperties": "spring.datasource.url=jdbc:mysql://localhost:3306/test\nspring.datasource.username=root\nspring.datasource.password=1****6", + "createdAt": "2019-01-01T12:34:56.000Z", + "updatedAt": "2019-01-01T12:34:56.000Z" + }, + "type": "Microsoft.AppPlatform/Spring/apps/bindings", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp/bindings/mybinding", + "name": "mybinding" + } + }, + "202": { + "body": { + "properties": { + "resourceName": "my-cosmosdb-1", + "resourceType": "Microsoft.DocumentDB", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.DocumentDB/databaseAccounts/my-cosmosdb-1", + "bindingParameters": { + "databaseName": "db1", + "apiType": "SQL" + }, + "generatedProperties": "spring.datasource.url=jdbc:mysql://localhost:3306/test\nspring.datasource.username=root\nspring.datasource.password=1****6", + "createdAt": "2019-01-01T12:34:56.000Z", + "updatedAt": "2019-01-01T12:34:56.000Z" + }, + "type": "Microsoft.AppPlatform/Spring/apps/bindings", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp/bindings/mybinding", + "name": "mybinding" + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Bindings_Delete.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Bindings_Delete.json new file mode 100644 index 000000000000..829eec03d533 --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Bindings_Delete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2021-06-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice", + "appName": "myapp", + "bindingName": "mybinding" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Bindings_Get.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Bindings_Get.json new file mode 100644 index 000000000000..eacde307530c --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Bindings_Get.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2021-06-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice", + "appName": "myapp", + "bindingName": "mybinding" + }, + "responses": { + "200": { + "body": { + "properties": { + "resourceName": "my-cosmosdb-1", + "resourceType": "Microsoft.DocumentDB", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.DocumentDB/databaseAccounts/my-cosmosdb-1", + "bindingParameters": { + "databaseName": "db1", + "apiType": "SQL" + }, + "generatedProperties": "spring.datasource.url=jdbc:mysql://localhost:3306/test\nspring.datasource.username=root\nspring.datasource.password=1****6", + "createdAt": "2019-01-01T12:34:56.000Z", + "updatedAt": "2019-01-01T12:34:56.000Z" + }, + "type": "Microsoft.AppPlatform/Spring/apps/bindings", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp/bindings/mybinding", + "name": "mybinding" + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Bindings_List.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Bindings_List.json new file mode 100644 index 000000000000..60ffe4552b9b --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Bindings_List.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2021-06-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice", + "appName": "myapp" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "resourceName": "my-cosmosdb-1", + "resourceType": "Microsoft.DocumentDB", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.DocumentDB/databaseAccounts/my-cosmosdb-1", + "bindingParameters": { + "databaseName": "db1", + "apiType": "SQL" + }, + "generatedProperties": "spring.datasource.url=jdbc:mysql://localhost:3306/test\nspring.datasource.username=root\nspring.datasource.password=1****6", + "createdAt": "2019-01-01T12:34:56.000Z", + "updatedAt": "2019-01-01T12:34:56.000Z" + }, + "type": "Microsoft.AppPlatform/Spring/apps/bindings", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp/bindings/mybinding", + "name": "mybinding" + } + ] + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Bindings_Update.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Bindings_Update.json new file mode 100644 index 000000000000..bc32fbe3425c --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Bindings_Update.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "bindingResource": { + "properties": { + "key": "xxxx", + "bindingParameters": { + "databaseName": "db1", + "apiType": "SQL" + }, + "generatedProperties": null, + "createdAt": null, + "updatedAt": null + } + }, + "api-version": "2021-06-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice", + "appName": "myapp", + "bindingName": "mybinding" + }, + "responses": { + "200": { + "body": { + "properties": { + "resourceName": "my-cosmosdb-1", + "resourceType": "Microsoft.DocumentDB", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.DocumentDB/databaseAccounts/my-cosmosdb-1", + "bindingParameters": { + "databaseName": "db1", + "apiType": "SQL" + }, + "generatedProperties": "spring.datasource.url=jdbc:mysql://localhost:3306/test\nspring.datasource.username=root\nspring.datasource.password=1****6", + "createdAt": "2019-01-01T12:34:56.000Z", + "updatedAt": "2019-01-01T12:34:56.000Z" + }, + "type": "Microsoft.AppPlatform/Spring/apps/bindings", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp/bindings/mybinding", + "name": "mybinding" + } + }, + "202": { + "body": { + "properties": { + "resourceName": "my-cosmosdb-1", + "resourceType": "Microsoft.DocumentDB", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.DocumentDB/databaseAccounts/my-cosmosdb-1", + "bindingParameters": { + "databaseName": "db1", + "apiType": "SQL" + }, + "generatedProperties": "spring.datasource.url=jdbc:mysql://localhost:3306/test\nspring.datasource.username=root\nspring.datasource.password=1****6", + "createdAt": "2019-01-01T12:34:56.000Z", + "updatedAt": "2019-01-01T12:34:56.000Z" + }, + "type": "Microsoft.AppPlatform/Spring/apps/bindings", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp/bindings/mybinding", + "name": "mybinding" + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Certificates_CreateOrUpdate.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Certificates_CreateOrUpdate.json new file mode 100644 index 000000000000..51c9800f8862 --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Certificates_CreateOrUpdate.json @@ -0,0 +1,87 @@ +{ + "parameters": { + "certificateResource": { + "properties": { + "vaultUri": "https://myvault.vault.azure.net", + "keyVaultCertName": "mycert", + "certVersion": "08a219d06d874795a96db47e06fbb01e" + } + }, + "api-version": "2021-06-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice", + "certificateName": "mycertificate" + }, + "responses": { + "200": { + "body": { + "properties": { + "thumbprint": "934367bf1c97033f877db0f15cb1b586957d3133", + "vaultUri": "https://myvault.vault.azure.net", + "keyVaultCertName": "mycert", + "certVersion": "08a219d06d874795a96db47e06fbb01e", + "issuer": "mydomain.com", + "issuedDate": "2019-02-20T07:40:42Z", + "expirationDate": "2019-02-21T07:40:42Z", + "activateDate": "2019-02-22T07:40:42Z", + "subjectName": "mysubjectname", + "dnsNames": [ + "mydomain.com", + "mydomain.net", + "mydomain.io" + ] + }, + "type": "Microsoft.AppPlatform/Spring/certificates", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/certificates/mycertificate", + "name": "mycertificate" + } + }, + "201": { + "body": { + "properties": { + "thumbprint": "934367bf1c97033f877db0f15cb1b586957d3133", + "vaultUri": "https://myvault.vault.azure.net", + "keyVaultCertName": "mycert", + "certVersion": "08a219d06d874795a96db47e06fbb01e", + "issuer": "mydomain.com", + "issuedDate": "2019-02-20T07:40:42Z", + "expirationDate": "2019-02-21T07:40:42Z", + "activateDate": "2019-02-22T07:40:42Z", + "subjectName": "mysubjectname", + "dnsNames": [ + "mydomain.com", + "mydomain.net", + "mydomain.io" + ] + }, + "type": "Microsoft.AppPlatform/Spring/certificates", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/certificates/mycertificate", + "name": "mycertificate" + } + }, + "202": { + "body": { + "properties": { + "thumbprint": "934367bf1c97033f877db0f15cb1b586957d3133", + "vaultUri": "https://myvault.vault.azure.net", + "keyVaultCertName": "mycert", + "certVersion": "08a219d06d874795a96db47e06fbb01e", + "issuer": "mydomain.com", + "issuedDate": "2019-02-20T07:40:42Z", + "expirationDate": "2019-02-21T07:40:42Z", + "activateDate": "2019-02-22T07:40:42Z", + "subjectName": "mysubjectname", + "dnsNames": [ + "mydomain.com", + "mydomain.net", + "mydomain.io" + ] + }, + "type": "Microsoft.AppPlatform/Spring/certificates", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/certificates/mycertificate", + "name": "mycertificate" + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Certificates_Delete.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Certificates_Delete.json new file mode 100644 index 000000000000..fbeb0c7a5329 --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Certificates_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-06-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice", + "certificateName": "mycertificate" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Certificates_Get.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Certificates_Get.json new file mode 100644 index 000000000000..359112afb9c1 --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Certificates_Get.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2021-06-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice", + "certificateName": "mycertificate" + }, + "responses": { + "200": { + "body": { + "properties": { + "thumbprint": "934367bf1c97033f877db0f15cb1b586957d3133", + "vaultUri": "https://myvault.vault.azure.net", + "keyVaultCertName": "mycert", + "certVersion": "08a219d06d874795a96db47e06fbb01e", + "issuer": "mydomain.com", + "issuedDate": "2019-02-20T07:40:42Z", + "expirationDate": "2019-02-21T07:40:42Z", + "activateDate": "2019-02-22T07:40:42Z", + "subjectName": "mysubjectname", + "dnsNames": [ + "mydomain.com", + "mydomain.net", + "mydomain.io" + ] + }, + "type": "Microsoft.AppPlatform/Spring/certificates", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/certificates/mycertificate", + "name": "mycertificate" + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Certificates_List.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Certificates_List.json new file mode 100644 index 000000000000..fa6156685750 --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Certificates_List.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2021-06-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myService" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "thumbprint": "934367bf1c97033f877db0f15cb1b586957d3133", + "vaultUri": "https://myvault.vault.azure.net", + "keyVaultCertName": "mycert", + "certVersion": "08a219d06d874795a96db47e06fbb01e", + "issuer": "mydomain.com", + "issuedDate": "2019-02-20T07:40:42Z", + "expirationDate": "2019-02-21T07:40:42Z", + "activateDate": "2019-02-22T07:40:42Z", + "subjectName": "mysubjectname", + "dnsNames": [ + "mydomain.com", + "mydomain.net", + "mydomain.io" + ] + }, + "type": "Microsoft.AppPlatform/Spring/certificates", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/certificates/mycertificate", + "name": "mycertificate" + } + ], + "nextLink": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/certificates?$page=2" + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/ConfigServers_Get.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/ConfigServers_Get.json new file mode 100644 index 000000000000..b6c38e511aed --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/ConfigServers_Get.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2021-06-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice" + }, + "responses": { + "200": { + "body": { + "properties": { + "provisioningState": "Succeeded", + "configServer": { + "gitProperty": { + "uri": "https://github.com/fake-user/fake-repository.git", + "label": "master", + "searchPaths": [ + "/" + ] + } + } + }, + "type": "Microsoft.AppPlatform/Spring/configServers", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/configServers/default", + "name": "default" + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/ConfigServers_UpdatePatch.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/ConfigServers_UpdatePatch.json new file mode 100644 index 000000000000..b973e1348d1a --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/ConfigServers_UpdatePatch.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "configServerResource": { + "properties": { + "configServer": { + "gitProperty": { + "uri": "https://github.com/fake-user/fake-repository.git", + "label": "master", + "searchPaths": [ + "/" + ] + } + } + } + }, + "api-version": "2021-06-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice" + }, + "responses": { + "202": { + "body": { + "properties": { + "provisioningState": "Updating", + "configServer": { + "gitProperty": { + "uri": "https://github.com/fake-user/fake-repository.git", + "label": "master", + "searchPaths": [ + "/" + ] + } + } + }, + "type": "Microsoft.AppPlatform/Spring/configServers", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/configServers/default", + "name": "default" + } + }, + "200": { + "body": { + "properties": { + "provisioningState": "Succeeded", + "configServer": { + "gitProperty": { + "uri": "https://github.com/fake-user/fake-repository.git", + "label": "master", + "searchPaths": [ + "/" + ] + } + } + }, + "type": "Microsoft.AppPlatform/Spring/configServers", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/configServers/default", + "name": "default" + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/ConfigServers_UpdatePut.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/ConfigServers_UpdatePut.json new file mode 100644 index 000000000000..b973e1348d1a --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/ConfigServers_UpdatePut.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "configServerResource": { + "properties": { + "configServer": { + "gitProperty": { + "uri": "https://github.com/fake-user/fake-repository.git", + "label": "master", + "searchPaths": [ + "/" + ] + } + } + } + }, + "api-version": "2021-06-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice" + }, + "responses": { + "202": { + "body": { + "properties": { + "provisioningState": "Updating", + "configServer": { + "gitProperty": { + "uri": "https://github.com/fake-user/fake-repository.git", + "label": "master", + "searchPaths": [ + "/" + ] + } + } + }, + "type": "Microsoft.AppPlatform/Spring/configServers", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/configServers/default", + "name": "default" + } + }, + "200": { + "body": { + "properties": { + "provisioningState": "Succeeded", + "configServer": { + "gitProperty": { + "uri": "https://github.com/fake-user/fake-repository.git", + "label": "master", + "searchPaths": [ + "/" + ] + } + } + }, + "type": "Microsoft.AppPlatform/Spring/configServers", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/configServers/default", + "name": "default" + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/ConfigServers_Validate.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/ConfigServers_Validate.json new file mode 100644 index 000000000000..f23c9eabc68d --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/ConfigServers_Validate.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "configServerSettings": { + "gitProperty": { + "uri": "https://github.com/fake-user/fake-repository.git", + "label": "master", + "searchPaths": [ + "/" + ] + } + }, + "api-version": "2021-06-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice" + }, + "responses": { + "200": { + "body": { + "isValid": true + } + }, + "202": { + "body": {} + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/CustomDomains_CreateOrUpdate.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/CustomDomains_CreateOrUpdate.json new file mode 100644 index 000000000000..8b0cb4adf521 --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/CustomDomains_CreateOrUpdate.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "domainResource": { + "properties": { + "thumbprint": "934367bf1c97033f877db0f15cb1b586957d3133", + "certName": "mycert" + } + }, + "api-version": "2021-06-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice", + "appName": "myapp", + "domainName": "mydomain.com" + }, + "responses": { + "200": { + "body": { + "properties": { + "thumbprint": "934367bf1c97033f877db0f15cb1b586957d3133", + "appName": "myapp", + "certName": "mycert" + }, + "type": "Microsoft.AppPlatform/Spring/apps/domains", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp/domains/mydomain.com", + "name": "mydomain.com" + } + }, + "201": { + "body": { + "properties": { + "thumbprint": "934367bf1c97033f877db0f15cb1b586957d3133", + "appName": "myapp", + "certName": "mycert" + }, + "type": "Microsoft.AppPlatform/Spring/apps/domains", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp/domains/mydomain.com", + "name": "mydomain.com" + } + }, + "202": { + "body": { + "properties": { + "thumbprint": "934367bf1c97033f877db0f15cb1b586957d3133", + "appName": "myapp", + "certName": "mycert" + }, + "type": "Microsoft.AppPlatform/Spring/apps/domains", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp/domains/mydomain.com", + "name": "mydomain.com" + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/CustomDomains_Delete.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/CustomDomains_Delete.json new file mode 100644 index 000000000000..7fbf6cf41528 --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/CustomDomains_Delete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2021-06-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice", + "appName": "myapp", + "domainName": "mydomain.com" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/CustomDomains_Get.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/CustomDomains_Get.json new file mode 100644 index 000000000000..705fea6363e2 --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/CustomDomains_Get.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2021-06-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice", + "appName": "myapp", + "domainName": "mydomain.com" + }, + "responses": { + "200": { + "body": { + "properties": { + "thumbprint": "934367bf1c97033f877db0f15cb1b586957d3133", + "appName": "myapp", + "certName": "mycert" + }, + "type": "Microsoft.AppPlatform/Spring/apps/domains", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp/domains/mydomain.com", + "name": "mydomain.com" + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/CustomDomains_List.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/CustomDomains_List.json new file mode 100644 index 000000000000..189f594e7e4d --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/CustomDomains_List.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2021-06-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice", + "appName": "myapp" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "thumbprint": "934367bf1c97033f877db0f15cb1b586957d3133", + "appName": "myapp", + "certName": "mycert" + }, + "type": "Microsoft.AppPlatform/Spring/apps/domains", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp/domains/mydomain.com", + "name": "mydomain.com" + } + ], + "nextLink": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp/domains?$page=2" + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/CustomDomains_Update.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/CustomDomains_Update.json new file mode 100644 index 000000000000..c4bd2d296b6e --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/CustomDomains_Update.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "domainResource": { + "properties": { + "thumbprint": "934367bf1c97033f877db0f15cb1b586957d3133", + "certName": "mycert" + } + }, + "api-version": "2021-06-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice", + "appName": "myapp", + "domainName": "mydomain.com" + }, + "responses": { + "200": { + "body": { + "properties": { + "thumbprint": "934367bf1c97033f877db0f15cb1b586957d3133", + "appName": "myapp", + "certName": "mycert" + }, + "type": "Microsoft.AppPlatform/Spring/apps/domains", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp/domains/mydomain.com", + "name": "mydomain.com" + } + }, + "202": { + "body": { + "properties": { + "thumbprint": "934367bf1c97033f877db0f15cb1b586957d3133", + "appName": "myapp", + "certName": "mycert" + }, + "type": "Microsoft.AppPlatform/Spring/apps/domains", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp/domains/mydomain.com", + "name": "mydomain.com" + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Deployments_CreateOrUpdate.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Deployments_CreateOrUpdate.json new file mode 100644 index 000000000000..7b00a461d09b --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Deployments_CreateOrUpdate.json @@ -0,0 +1,174 @@ +{ + "parameters": { + "deploymentResource": { + "properties": { + "source": { + "type": "Source", + "relativePath": "resources/a172cedcae47474b615c54d510a5d84a8dea3032e958587430b413538be3f333-2019082605-e3095339-1723-44b7-8b5e-31b1003978bc", + "version": "1.0", + "artifactSelector": "sub-module-1" + }, + "deploymentSettings": { + "resourceRequests": { + "cpu": "1000m", + "memory": "3Gi" + }, + "jvmOptions": "-Xms1G -Xmx3G", + "environmentVariables": { + "env": "test" + }, + "runtimeVersion": "Java_8" + }, + "instances": null + } + }, + "sku": { + "name": "S0", + "tier": "Standard", + "capacity": 1 + }, + "api-version": "2021-06-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice", + "appName": "myapp", + "deploymentName": "mydeployment" + }, + "responses": { + "201": { + "body": { + "properties": { + "source": { + "type": "Source", + "relativePath": "resources/a172cedcae47474b615c54d510a5d84a8dea3032e958587430b413538be3f333-2019082605-e3095339-1723-44b7-8b5e-31b1003978bc", + "version": "1.0", + "artifactSelector": "sub-module-1" + }, + "appName": "myapp", + "deploymentSettings": { + "cpu": 1, + "memoryInGB": 3, + "resourceRequests": { + "cpu": "1000m", + "memory": "3Gi" + }, + "jvmOptions": "-Xms1G -Xmx3G", + "environmentVariables": { + "env": "test" + }, + "runtimeVersion": "Java_8" + }, + "provisioningState": "Creating", + "status": "Running", + "active": false, + "instances": [ + { + "name": "instance1", + "status": "Running", + "discoveryStatus": "pending", + "startTime": "2020-08-26T01:55:02Z" + } + ] + }, + "sku": { + "name": "S0", + "tier": "Standard", + "capacity": 1 + }, + "type": "Microsoft.AppPlatform/Spring/apps/deployments", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp/deployments/mydeployment", + "name": "mydeployment" + } + }, + "200": { + "body": { + "properties": { + "source": { + "type": "Source", + "relativePath": "resources/a172cedcae47474b615c54d510a5d84a8dea3032e958587430b413538be3f333-2019082605-e3095339-1723-44b7-8b5e-31b1003978bc", + "version": "1.0", + "artifactSelector": "sub-module-1" + }, + "appName": "myapp", + "deploymentSettings": { + "cpu": 1, + "memoryInGB": 3, + "resourceRequests": { + "cpu": "1000m", + "memory": "3Gi" + }, + "jvmOptions": "-Xms1G -Xmx3G", + "environmentVariables": { + "env": "test" + }, + "runtimeVersion": "Java_8" + }, + "provisioningState": "Succeeded", + "status": "Running", + "active": false, + "instances": [ + { + "name": "instance1", + "status": "Running", + "discoveryStatus": "pending", + "startTime": "2020-08-26T01:55:02Z" + } + ] + }, + "sku": { + "name": "S0", + "tier": "Standard", + "capacity": 1 + }, + "type": "Microsoft.AppPlatform/Spring/apps/deployments", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp/deployments/mydeployment", + "name": "mydeployment" + } + }, + "202": { + "body": { + "properties": { + "source": { + "type": "Source", + "relativePath": "resources/a172cedcae47474b615c54d510a5d84a8dea3032e958587430b413538be3f333-2019082605-e3095339-1723-44b7-8b5e-31b1003978bc", + "version": "1.0", + "artifactSelector": "sub-module-1" + }, + "appName": "myapp", + "deploymentSettings": { + "cpu": 1, + "memoryInGB": 3, + "resourceRequests": { + "cpu": "1000m", + "memory": "3Gi" + }, + "jvmOptions": "-Xms1G -Xmx3G", + "environmentVariables": { + "env": "test" + }, + "runtimeVersion": "Java_8" + }, + "provisioningState": "Updating", + "status": "Running", + "active": false, + "instances": [ + { + "name": "instance1", + "status": "Running", + "discoveryStatus": "pending", + "startTime": "2020-08-26T01:55:02Z" + } + ] + }, + "sku": { + "name": "S0", + "tier": "Standard", + "capacity": 1 + }, + "type": "Microsoft.AppPlatform/Spring/apps/deployments", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp/deployments/mydeployment", + "name": "mydeployment" + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Deployments_CreateOrUpdate_CustomContainer.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Deployments_CreateOrUpdate_CustomContainer.json new file mode 100644 index 000000000000..dcfc365e5838 --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Deployments_CreateOrUpdate_CustomContainer.json @@ -0,0 +1,193 @@ +{ + "parameters": { + "deploymentResource": { + "properties": { + "source": { + "type": "Container", + "customContainer": { + "server": "myacr.azurecr.io", + "containerImage": "myContainerImage:v1", + "command": [ + "/bin/sh" + ], + "args": [ + "-c", + "while true; do echo hello; sleep 10;done" + ], + "imageRegistryCredential": { + "username": "myUsername", + "password": "myPassword" + } + } + }, + "deploymentSettings": { + "resourceRequests": { + "cpu": "1000m", + "memory": "3Gi" + }, + "environmentVariables": { + "env": "test" + } + }, + "instances": null + } + }, + "sku": { + "name": "S0", + "tier": "Standard", + "capacity": 1 + }, + "api-version": "2021-06-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice", + "appName": "myapp", + "deploymentName": "mydeployment" + }, + "responses": { + "201": { + "body": { + "properties": { + "source": { + "type": "Container", + "customContainer": { + "server": "myacr.azurecr.io", + "containerImage": "myContainerImage:v1", + "imageRegistryCredential": { + "username": "myUsername", + "password": "" + } + } + }, + "appName": "myapp", + "deploymentSettings": { + "cpu": 1, + "memoryInGB": 3, + "resourceRequests": { + "cpu": "1000m", + "memory": "3Gi" + }, + "environmentVariables": { + "env": "test" + } + }, + "provisioningState": "Creating", + "status": "Running", + "active": false, + "instances": [ + { + "name": "instance1", + "status": "Running", + "discoveryStatus": "N/A", + "startTime": "2020-08-26T01:55:02Z" + } + ] + }, + "sku": { + "name": "S0", + "tier": "Standard", + "capacity": 1 + }, + "type": "Microsoft.AppPlatform/Spring/apps/deployments", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp/deployments/mydeployment", + "name": "mydeployment" + } + }, + "200": { + "body": { + "properties": { + "source": { + "type": "Container", + "customContainer": { + "server": "myacr.azurecr.io", + "containerImage": "myContainerImage:v1", + "imageRegistryCredential": { + "username": "myUsername", + "password": "" + } + } + }, + "appName": "myapp", + "deploymentSettings": { + "cpu": 1, + "memoryInGB": 3, + "resourceRequests": { + "cpu": "1000m", + "memory": "3Gi" + }, + "environmentVariables": { + "env": "test" + } + }, + "provisioningState": "Succeeded", + "status": "Running", + "active": false, + "instances": [ + { + "name": "instance1", + "status": "Running", + "discoveryStatus": "N/A", + "startTime": "2020-08-26T01:55:02Z" + } + ] + }, + "sku": { + "name": "S0", + "tier": "Standard", + "capacity": 1 + }, + "type": "Microsoft.AppPlatform/Spring/apps/deployments", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp/deployments/mydeployment", + "name": "mydeployment" + } + }, + "202": { + "body": { + "properties": { + "source": { + "type": "Source", + "customContainer": { + "server": "myacr.azurecr.io", + "containerImage": "myContainerImage:v1", + "imageRegistryCredential": { + "username": "myUsername", + "password": "" + } + } + }, + "appName": "myapp", + "deploymentSettings": { + "cpu": 1, + "memoryInGB": 3, + "resourceRequests": { + "cpu": "1000m", + "memory": "3Gi" + }, + "environmentVariables": { + "env": "test" + } + }, + "provisioningState": "Updating", + "status": "Running", + "active": false, + "instances": [ + { + "name": "instance1", + "status": "Running", + "discoveryStatus": "N/A", + "startTime": "2020-08-26T01:55:02Z" + } + ] + }, + "sku": { + "name": "S0", + "tier": "Standard", + "capacity": 1 + }, + "type": "Microsoft.AppPlatform/Spring/apps/deployments", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp/deployments/mydeployment", + "name": "mydeployment" + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Deployments_Delete.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Deployments_Delete.json new file mode 100644 index 000000000000..9b38a0896f92 --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Deployments_Delete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2021-06-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice", + "appName": "myapp", + "deploymentName": "mydeployment" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Deployments_Get.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Deployments_Get.json new file mode 100644 index 000000000000..019b49f2d8d9 --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Deployments_Get.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2021-06-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice", + "appName": "myapp", + "deploymentName": "mydeployment" + }, + "responses": { + "200": { + "body": { + "properties": { + "source": { + "type": "Source", + "relativePath": "resources/a172cedcae47474b615c54d510a5d84a8dea3032e958587430b413538be3f333-2019082605-e3095339-1723-44b7-8b5e-31b1003978bc", + "version": "1.0", + "artifactSelector": "sub-module-1" + }, + "appName": "myapp", + "deploymentSettings": { + "cpu": 1, + "memoryInGB": 3, + "resourceRequests": { + "cpu": "1000m", + "memory": "3Gi" + }, + "jvmOptions": "-Xms1G -Xmx3G", + "environmentVariables": { + "env": "test" + }, + "runtimeVersion": "Java_8" + }, + "provisioningState": "Succeeded", + "status": "Running", + "active": false, + "instances": [ + { + "name": "instance1", + "status": "Running", + "discoveryStatus": "pending", + "startTime": "2020-08-26T01:55:02Z" + } + ] + }, + "sku": { + "name": "S0", + "tier": "Standard", + "capacity": 1 + }, + "type": "Microsoft.AppPlatform/Spring/apps/deployments", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp/deployments/mydeployment", + "name": "mydeployment" + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Deployments_GetLogFileUrl.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Deployments_GetLogFileUrl.json new file mode 100644 index 000000000000..2153466b71a3 --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Deployments_GetLogFileUrl.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2021-06-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice", + "appName": "myapp", + "deploymentName": "mydeployment" + }, + "responses": { + "200": { + "body": { + "url": "https://spring.blob.core.windows.net/logs/110ec0c337154d45b1f01daf2196c0bf/b58b0cb4ecdea3c65311b4ca8833fe47b6ae0a7500f87a8eb31e8379d3fe48f1-2019081312-42b7b90c-f108-4c09-b33d-1ea134f57f23?sv=2018-03-28&sr=b&sig=example-signature&se=2019-08-14T09%3A43%3A52Z&sp=r" + } + }, + "204": {} + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Deployments_Get_CustomContainer.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Deployments_Get_CustomContainer.json new file mode 100644 index 000000000000..a58ecd0bee69 --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Deployments_Get_CustomContainer.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "api-version": "2021-06-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice", + "appName": "myapp", + "deploymentName": "mydeployment" + }, + "responses": { + "200": { + "body": { + "properties": { + "source": { + "type": "Container", + "customContainer": { + "server": "myacr.azurecr.io", + "containerImage": "myContainerImage:v1", + "command": [ + "/bin/sh" + ], + "args": [ + "-c", + "while true; do echo hello; sleep 10;done" + ], + "imageRegistryCredential": { + "username": "myUsername", + "password": "" + } + } + }, + "appName": "myapp", + "deploymentSettings": { + "cpu": 1, + "memoryInGB": 3, + "resourceRequests": { + "cpu": "1000m", + "memory": "3Gi" + }, + "environmentVariables": { + "env": "test" + } + }, + "provisioningState": "Succeeded", + "status": "Running", + "active": false, + "instances": [ + { + "name": "instance1", + "status": "Running", + "discoveryStatus": "N/A", + "startTime": "2020-08-26T01:55:02Z" + } + ] + }, + "sku": { + "name": "S0", + "tier": "Standard", + "capacity": 1 + }, + "type": "Microsoft.AppPlatform/Spring/apps/deployments", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp/deployments/mydeployment", + "name": "mydeployment" + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Deployments_List.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Deployments_List.json new file mode 100644 index 000000000000..98aaab7f19b7 --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Deployments_List.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2021-06-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice", + "appName": "myapp" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "source": { + "type": "Source", + "relativePath": "resources/a172cedcae47474b615c54d510a5d84a8dea3032e958587430b413538be3f333-2019082605-e3095339-1723-44b7-8b5e-31b1003978bc", + "version": "1.0", + "artifactSelector": "sub-module-1" + }, + "appName": "myapp", + "deploymentSettings": { + "cpu": 1, + "memoryInGB": 3, + "resourceRequests": { + "cpu": "1000m", + "memory": "3Gi" + }, + "jvmOptions": "-Xms1G -Xmx3G", + "environmentVariables": { + "env": "test" + }, + "runtimeVersion": "Java_8" + }, + "provisioningState": "Succeeded", + "status": "Running", + "active": false, + "instances": [ + { + "name": "instance1", + "status": "Running", + "discoveryStatus": "pending", + "startTime": "2020-08-26T01:55:02Z" + } + ] + }, + "sku": { + "name": "S0", + "tier": "Standard", + "capacity": 1 + }, + "type": "Microsoft.AppPlatform/Spring/apps/deployments", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp/deployments/mydeployment", + "name": "mydeployment" + } + ] + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Deployments_ListForCluster.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Deployments_ListForCluster.json new file mode 100644 index 000000000000..98aaab7f19b7 --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Deployments_ListForCluster.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2021-06-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice", + "appName": "myapp" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "source": { + "type": "Source", + "relativePath": "resources/a172cedcae47474b615c54d510a5d84a8dea3032e958587430b413538be3f333-2019082605-e3095339-1723-44b7-8b5e-31b1003978bc", + "version": "1.0", + "artifactSelector": "sub-module-1" + }, + "appName": "myapp", + "deploymentSettings": { + "cpu": 1, + "memoryInGB": 3, + "resourceRequests": { + "cpu": "1000m", + "memory": "3Gi" + }, + "jvmOptions": "-Xms1G -Xmx3G", + "environmentVariables": { + "env": "test" + }, + "runtimeVersion": "Java_8" + }, + "provisioningState": "Succeeded", + "status": "Running", + "active": false, + "instances": [ + { + "name": "instance1", + "status": "Running", + "discoveryStatus": "pending", + "startTime": "2020-08-26T01:55:02Z" + } + ] + }, + "sku": { + "name": "S0", + "tier": "Standard", + "capacity": 1 + }, + "type": "Microsoft.AppPlatform/Spring/apps/deployments", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp/deployments/mydeployment", + "name": "mydeployment" + } + ] + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Deployments_Restart.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Deployments_Restart.json new file mode 100644 index 000000000000..1e748023262c --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Deployments_Restart.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2021-06-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice", + "appName": "myapp", + "deploymentName": "mydeployment" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.AppPlatform/...pathToOperationResult..." + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Deployments_Start.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Deployments_Start.json new file mode 100644 index 000000000000..1e748023262c --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Deployments_Start.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2021-06-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice", + "appName": "myapp", + "deploymentName": "mydeployment" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.AppPlatform/...pathToOperationResult..." + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Deployments_Stop.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Deployments_Stop.json new file mode 100644 index 000000000000..1e748023262c --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Deployments_Stop.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2021-06-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice", + "appName": "myapp", + "deploymentName": "mydeployment" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.AppPlatform/...pathToOperationResult..." + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Deployments_Update.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Deployments_Update.json new file mode 100644 index 000000000000..0494ba3034de --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Deployments_Update.json @@ -0,0 +1,113 @@ +{ + "parameters": { + "deploymentResource": { + "properties": { + "source": { + "type": "Source", + "relativePath": "resources/a172cedcae47474b615c54d510a5d84a8dea3032e958587430b413538be3f333-2019082605-e3095339-1723-44b7-8b5e-31b1003978bc", + "version": "1.0", + "artifactSelector": "sub-module-1" + }, + "instances": null + } + }, + "api-version": "2021-06-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice", + "appName": "myapp", + "deploymentName": "mydeployment" + }, + "responses": { + "200": { + "body": { + "properties": { + "source": { + "type": "Source", + "relativePath": "resources/a172cedcae47474b615c54d510a5d84a8dea3032e958587430b413538be3f333-2019082605-e3095339-1723-44b7-8b5e-31b1003978bc", + "version": "1.0", + "artifactSelector": "sub-module-1" + }, + "appName": "myapp", + "deploymentSettings": { + "cpu": 1, + "memoryInGB": 3, + "resourceRequests": { + "cpu": "1000m", + "memory": "3Gi" + }, + "jvmOptions": "-Xms1G -Xmx3G", + "environmentVariables": { + "env": "test" + }, + "runtimeVersion": "Java_8" + }, + "provisioningState": "Succeeded", + "status": "Running", + "active": false, + "instances": [ + { + "name": "instance1", + "status": "Running", + "discoveryStatus": "pending", + "startTime": "2020-08-26T01:55:02Z" + } + ] + }, + "sku": { + "name": "S0", + "tier": "Standard", + "capacity": 1 + }, + "type": "Microsoft.AppPlatform/Spring/apps/deployments", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp/deployments/mydeployment", + "name": "mydeployment" + } + }, + "202": { + "body": { + "properties": { + "source": { + "type": "Source", + "relativePath": "resources/a172cedcae47474b615c54d510a5d84a8dea3032e958587430b413538be3f333-2019082605-e3095339-1723-44b7-8b5e-31b1003978bc", + "version": "1.0", + "artifactSelector": "sub-module-1" + }, + "appName": "myapp", + "deploymentSettings": { + "cpu": 1, + "memoryInGB": 3, + "resourceRequests": { + "cpu": "1000m", + "memory": "3Gi" + }, + "jvmOptions": "-Xms1G -Xmx3G", + "environmentVariables": { + "env": "test" + }, + "runtimeVersion": "Java_8" + }, + "provisioningState": "Updating", + "status": "Running", + "active": false, + "instances": [ + { + "name": "instance1", + "status": "Running", + "discoveryStatus": "pending", + "startTime": "2020-08-26T01:55:02Z" + } + ] + }, + "sku": { + "name": "S0", + "tier": "Standard", + "capacity": 1 + }, + "type": "Microsoft.AppPlatform/Spring/apps/deployments", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp/deployments/mydeployment", + "name": "mydeployment" + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Deployments_Update_CustomContainer.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Deployments_Update_CustomContainer.json new file mode 100644 index 000000000000..55f438aa3506 --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Deployments_Update_CustomContainer.json @@ -0,0 +1,131 @@ +{ + "parameters": { + "deploymentResource": { + "properties": { + "source": { + "type": "Container", + "customContainer": { + "server": "mynewacr.azurecr.io", + "containerImage": "myNewContainerImage:v1", + "command": [ + "/bin/sh" + ], + "args": [ + "-c", + "while true; do echo hello; sleep 10;done" + ], + "imageRegistryCredential": { + "username": "myNewUsername", + "password": "" + } + } + }, + "instances": null + } + }, + "api-version": "2021-06-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice", + "appName": "myapp", + "deploymentName": "mydeployment" + }, + "responses": { + "200": { + "body": { + "properties": { + "source": { + "type": "Container", + "customContainer": { + "server": "mynewacr.azurecr.io", + "containerImage": "myNewContainerImage:v1", + "imageRegistryCredential": { + "username": "myNewUsername", + "password": "" + } + } + }, + "appName": "myapp", + "deploymentSettings": { + "cpu": 1, + "memoryInGB": 3, + "resourceRequests": { + "cpu": "1000m", + "memory": "3Gi" + }, + "environmentVariables": { + "env": "test" + } + }, + "provisioningState": "Succeeded", + "status": "Running", + "active": false, + "instances": [ + { + "name": "instance1", + "status": "Running", + "discoveryStatus": "N/A", + "startTime": "2020-08-26T01:55:02Z" + } + ] + }, + "sku": { + "name": "S0", + "tier": "Standard", + "capacity": 1 + }, + "type": "Microsoft.AppPlatform/Spring/apps/deployments", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp/deployments/mydeployment", + "name": "mydeployment" + } + }, + "202": { + "body": { + "properties": { + "source": { + "type": "Container", + "customContainer": { + "server": "mynewacr.azurecr.io", + "containerImage": "myNewContainerImage:v1", + "imageRegistryCredential": { + "username": "myNewUsername", + "password": "" + } + } + }, + "appName": "myapp", + "deploymentSettings": { + "cpu": 1, + "memoryInGB": 3, + "resourceRequests": { + "cpu": "1000m", + "memory": "3Gi" + }, + "environmentVariables": { + "env": "test" + } + }, + "provisioningState": "Updating", + "status": "Running", + "active": false, + "instances": [ + { + "name": "instance1", + "status": "Running", + "discoveryStatus": "N/A", + "startTime": "2020-08-26T01:55:02Z" + } + ] + }, + "sku": { + "name": "S0", + "tier": "Standard", + "capacity": 1 + }, + "type": "Microsoft.AppPlatform/Spring/apps/deployments", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp/deployments/mydeployment", + "name": "mydeployment" + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/MonitoringSettings_Get.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/MonitoringSettings_Get.json new file mode 100644 index 000000000000..ebdfa2968281 --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/MonitoringSettings_Get.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2021-06-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice" + }, + "responses": { + "200": { + "body": { + "properties": { + "provisioningState": "Succeeded", + "traceEnabled": true, + "appInsightsInstrumentationKey": "00000000-0000-0000-0000-000000000000", + "appInsightsSamplingRate": 10.0, + "appInsightsAgentVersions": { + "java": "3.0.0" + } + }, + "type": "Microsoft.AppPlatform/Spring/monitoringSettings", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/monitoringSettings/default", + "name": "default" + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/MonitoringSettings_UpdatePatch.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/MonitoringSettings_UpdatePatch.json new file mode 100644 index 000000000000..8afb0bb5f64c --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/MonitoringSettings_UpdatePatch.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "monitoringSettingResource": { + "properties": { + "traceEnabled": true, + "appInsightsInstrumentationKey": "00000000-0000-0000-0000-000000000000", + "appInsightsSamplingRate": 10.0 + } + }, + "api-version": "2021-06-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice" + }, + "responses": { + "202": { + "body": { + "properties": { + "provisioningState": "Updating", + "traceEnabled": true, + "appInsightsInstrumentationKey": "00000000-0000-0000-0000-000000000000", + "appInsightsSamplingRate": 10.0, + "appInsightsAgentVersions": { + "java": "3.0.0" + } + }, + "type": "Microsoft.AppPlatform/Spring/monitoringSettings", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/monitoringSettings/default", + "name": "default" + } + }, + "200": { + "body": { + "properties": { + "provisioningState": "Succeeded", + "traceEnabled": true, + "appInsightsInstrumentationKey": "00000000-0000-0000-0000-000000000000", + "appInsightsSamplingRate": 10.0, + "appInsightsAgentVersions": { + "java": "3.0.0" + } + }, + "type": "Microsoft.AppPlatform/Spring/monitoringSettings", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/monitoringSettings/default", + "name": "default" + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/MonitoringSettings_UpdatePut.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/MonitoringSettings_UpdatePut.json new file mode 100644 index 000000000000..8afb0bb5f64c --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/MonitoringSettings_UpdatePut.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "monitoringSettingResource": { + "properties": { + "traceEnabled": true, + "appInsightsInstrumentationKey": "00000000-0000-0000-0000-000000000000", + "appInsightsSamplingRate": 10.0 + } + }, + "api-version": "2021-06-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice" + }, + "responses": { + "202": { + "body": { + "properties": { + "provisioningState": "Updating", + "traceEnabled": true, + "appInsightsInstrumentationKey": "00000000-0000-0000-0000-000000000000", + "appInsightsSamplingRate": 10.0, + "appInsightsAgentVersions": { + "java": "3.0.0" + } + }, + "type": "Microsoft.AppPlatform/Spring/monitoringSettings", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/monitoringSettings/default", + "name": "default" + } + }, + "200": { + "body": { + "properties": { + "provisioningState": "Succeeded", + "traceEnabled": true, + "appInsightsInstrumentationKey": "00000000-0000-0000-0000-000000000000", + "appInsightsSamplingRate": 10.0, + "appInsightsAgentVersions": { + "java": "3.0.0" + } + }, + "type": "Microsoft.AppPlatform/Spring/monitoringSettings", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/monitoringSettings/default", + "name": "default" + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Operations_List.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Operations_List.json new file mode 100644 index 000000000000..39a498c8ad4a --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Operations_List.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2021-06-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.AppPlatform/Spring/read", + "isDataAction": false, + "display": { + "provider": "Microsoft Azure Distributed Managed Service for Spring", + "resource": "Managed Applications", + "operation": "Create or Update Managed Applications", + "description": "Create or Update Managed Applications" + }, + "origin": "user,system", + "properties": { + "serviceSpecification": null + } + } + ], + "nextLink": "providers/Microsoft.AppPlatform?$skipToken={opaqueString}" + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/RuntimeVersions_ListRuntimeVersions.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/RuntimeVersions_ListRuntimeVersions.json new file mode 100644 index 000000000000..19b6144f0f47 --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/RuntimeVersions_ListRuntimeVersions.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2021-06-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "value": "Java_8", + "platform": "Java", + "version": "8" + }, + { + "value": "Java_11", + "platform": "Java", + "version": "11" + }, + { + "value": "NetCore_31", + "platform": ".NET Core", + "version": "3.1" + } + ] + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Services_CheckNameAvailability.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Services_CheckNameAvailability.json new file mode 100644 index 000000000000..ae019a3f24c8 --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Services_CheckNameAvailability.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "location": "eastus", + "availabilityParameters": { + "type": "Microsoft.AppPlatform/Spring", + "name": "myservice" + }, + "api-version": "2021-06-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "nameAvailable": false, + "reason": "AlreadyExists", + "message": "The name is already used." + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Services_CreateOrUpdate.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Services_CreateOrUpdate.json new file mode 100644 index 000000000000..a07a2ee47c29 --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Services_CreateOrUpdate.json @@ -0,0 +1,189 @@ +{ + "parameters": { + "resource": { + "properties": {}, + "sku": { + "name": "S0", + "tier": "Standard" + }, + "location": "eastus", + "tags": { + "key1": "value1" + } + }, + "api-version": "2021-06-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice" + }, + "responses": { + "201": { + "body": { + "properties": { + "provisioningState": "Creating", + "serviceId": "12345678abcd1234abcd12345678abcd", + "networkProfile": { + "outboundIPs": { + "publicIPs": [ + "20.39.3.173", + "40.64.67.13" + ] + }, + "requiredTraffics": [ + { + "protocol": "TCP", + "port": 443, + "ips": [ + "20.62.211.25", + "52.188.47.226" + ], + "direction": "Outbound" + }, + { + "protocol": "UDP", + "port": 1194, + "ips": [ + "20.62.211.25", + "52.188.47.226" + ], + "direction": "Outbound" + }, + { + "protocol": "TCP", + "port": 9000, + "ips": [ + "20.62.211.25", + "52.188.47.226" + ], + "direction": "Outbound" + } + ] + } + }, + "type": "Microsoft.AppPlatform/Spring", + "sku": { + "name": "S0", + "tier": "Standard" + }, + "location": "eastus", + "tags": { + "key1": "value1" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice", + "name": "myservice" + } + }, + "200": { + "body": { + "properties": { + "provisioningState": "Succeeded", + "serviceId": "12345678abcd1234abcd12345678abcd", + "networkProfile": { + "outboundIPs": { + "publicIPs": [ + "20.39.3.173", + "40.64.67.13" + ] + }, + "requiredTraffics": [ + { + "protocol": "TCP", + "port": 443, + "ips": [ + "20.62.211.25", + "52.188.47.226" + ], + "direction": "Outbound" + }, + { + "protocol": "UDP", + "port": 1194, + "ips": [ + "20.62.211.25", + "52.188.47.226" + ], + "direction": "Outbound" + }, + { + "protocol": "TCP", + "port": 9000, + "ips": [ + "20.62.211.25", + "52.188.47.226" + ], + "direction": "Outbound" + } + ] + } + }, + "type": "Microsoft.AppPlatform/Spring", + "sku": { + "name": "S0", + "tier": "Standard" + }, + "location": "eastus", + "tags": { + "key1": "value1" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice", + "name": "myservice" + } + }, + "202": { + "body": { + "properties": { + "provisioningState": "Updating", + "serviceId": "12345678abcd1234abcd12345678abcd", + "networkProfile": { + "outboundIPs": { + "publicIPs": [ + "20.39.3.173", + "40.64.67.13" + ] + }, + "requiredTraffics": [ + { + "protocol": "TCP", + "port": 443, + "ips": [ + "20.62.211.25", + "52.188.47.226" + ], + "direction": "Outbound" + }, + { + "protocol": "UDP", + "port": 1194, + "ips": [ + "20.62.211.25", + "52.188.47.226" + ], + "direction": "Outbound" + }, + { + "protocol": "TCP", + "port": 9000, + "ips": [ + "20.62.211.25", + "52.188.47.226" + ], + "direction": "Outbound" + } + ] + } + }, + "type": "Microsoft.AppPlatform/Spring", + "sku": { + "name": "S0", + "tier": "Standard" + }, + "location": "eastus", + "tags": { + "key1": "value1" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice", + "name": "myservice" + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Services_CreateOrUpdate_VNetInjection.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Services_CreateOrUpdate_VNetInjection.json new file mode 100644 index 000000000000..9303cc5fa93c --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Services_CreateOrUpdate_VNetInjection.json @@ -0,0 +1,209 @@ +{ + "parameters": { + "resource": { + "properties": { + "networkProfile": { + "serviceRuntimeSubnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVirtualNetwork/subnets/serviceRuntime", + "appSubnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVirtualNetwork/subnets/apps", + "serviceCidr": "10.8.0.0/16,10.244.0.0/16,10.245.0.1/16", + "serviceRuntimeNetworkResourceGroup": "my-service-runtime-network-rg", + "appNetworkResourceGroup": "my-app-network-rg" + } + }, + "sku": { + "name": "S0", + "tier": "Standard" + }, + "location": "eastus", + "tags": { + "key1": "value1" + } + }, + "api-version": "2021-06-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice" + }, + "responses": { + "201": { + "body": { + "properties": { + "provisioningState": "Creating", + "networkProfile": { + "serviceRuntimeSubnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVirtualNetwork/subnets/serviceRuntime", + "appSubnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVirtualNetwork/subnets/apps", + "serviceCidr": "10.8.0.0/16,10.244.0.0/16,10.245.0.1/16", + "serviceRuntimeNetworkResourceGroup": "my-service-runtime-network-rg", + "appNetworkResourceGroup": "my-app-network-rg", + "outboundIPs": { + "publicIPs": [ + "40.64.67.13" + ] + }, + "requiredTraffics": [ + { + "protocol": "TCP", + "port": 443, + "ips": [ + "20.62.211.25", + "52.188.47.226" + ], + "direction": "Outbound" + }, + { + "protocol": "UDP", + "port": 1194, + "ips": [ + "20.62.211.25", + "52.188.47.226" + ], + "direction": "Outbound" + }, + { + "protocol": "TCP", + "port": 9000, + "ips": [ + "20.62.211.25", + "52.188.47.226" + ], + "direction": "Outbound" + } + ] + }, + "serviceId": "12345678abcd1234abcd12345678abcd" + }, + "type": "Microsoft.AppPlatform/Spring", + "sku": { + "name": "S0", + "tier": "Standard" + }, + "location": "eastus", + "tags": { + "key1": "value1" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice", + "name": "myservice" + } + }, + "200": { + "body": { + "properties": { + "provisioningState": "Succeeded", + "networkProfile": { + "serviceRuntimeSubnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVirtualNetwork/subnets/serviceRuntime", + "appSubnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVirtualNetwork/subnets/apps", + "serviceCidr": "10.8.0.0/16,10.244.0.0/16,10.245.0.1/16", + "serviceRuntimeNetworkResourceGroup": "my-service-runtime-network-rg", + "appNetworkResourceGroup": "my-app-network-rg", + "outboundIPs": { + "publicIPs": [ + "40.64.67.13" + ] + }, + "requiredTraffics": [ + { + "protocol": "TCP", + "port": 443, + "ips": [ + "20.62.211.25", + "52.188.47.226" + ], + "direction": "Outbound" + }, + { + "protocol": "UDP", + "port": 1194, + "ips": [ + "20.62.211.25", + "52.188.47.226" + ], + "direction": "Outbound" + }, + { + "protocol": "TCP", + "port": 9000, + "ips": [ + "20.62.211.25", + "52.188.47.226" + ], + "direction": "Outbound" + } + ] + }, + "serviceId": "12345678abcd1234abcd12345678abcd" + }, + "type": "Microsoft.AppPlatform/Spring", + "sku": { + "name": "S0", + "tier": "Standard" + }, + "location": "eastus", + "tags": { + "key1": "value1" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice", + "name": "myservice" + } + }, + "202": { + "body": { + "properties": { + "provisioningState": "Updating", + "networkProfile": { + "serviceRuntimeSubnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVirtualNetwork/subnets/serviceRuntime", + "appSubnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVirtualNetwork/subnets/apps", + "serviceCidr": "10.8.0.0/16,10.244.0.0/16,10.245.0.1/16", + "serviceRuntimeNetworkResourceGroup": "my-service-runtime-network-rg", + "appNetworkResourceGroup": "my-app-network-rg", + "outboundIPs": { + "publicIPs": [ + "40.64.67.13" + ] + }, + "requiredTraffics": [ + { + "protocol": "TCP", + "port": 443, + "ips": [ + "20.62.211.25", + "52.188.47.226" + ], + "direction": "Outbound" + }, + { + "protocol": "UDP", + "port": 1194, + "ips": [ + "20.62.211.25", + "52.188.47.226" + ], + "direction": "Outbound" + }, + { + "protocol": "TCP", + "port": 9000, + "ips": [ + "20.62.211.25", + "52.188.47.226" + ], + "direction": "Outbound" + } + ] + }, + "serviceId": "12345678abcd1234abcd12345678abcd" + }, + "type": "Microsoft.AppPlatform/Spring", + "sku": { + "name": "S0", + "tier": "Standard" + }, + "location": "eastus", + "tags": { + "key1": "value1" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice", + "name": "myservice" + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Services_Delete.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Services_Delete.json new file mode 100644 index 000000000000..486f5c38b2cc --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Services_Delete.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "api-version": "2021-06-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice" + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.AppPlatform/...pathToOperationResult..." + } + }, + "204": {} + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Services_DisableTestEndpoint.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Services_DisableTestEndpoint.json new file mode 100644 index 000000000000..fc1589aadf8a --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Services_DisableTestEndpoint.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "api-version": "2021-06-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice" + }, + "responses": { + "200": {} + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Services_EnableTestEndpoint.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Services_EnableTestEndpoint.json new file mode 100644 index 000000000000..60002b5803fd --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Services_EnableTestEndpoint.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2021-06-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice" + }, + "responses": { + "200": { + "body": { + "primaryKey": "", + "secondaryKey": "", + "primaryTestEndpoint": "", + "secondaryTestEndpoint": "", + "enabled": true + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Services_Get.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Services_Get.json new file mode 100644 index 000000000000..97884ce1ffdc --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Services_Get.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "api-version": "2021-06-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice" + }, + "responses": { + "200": { + "body": { + "properties": { + "provisioningState": "Succeeded", + "serviceId": "12345678abcd1234abcd12345678abcd", + "networkProfile": { + "outboundIPs": { + "publicIPs": [ + "20.39.3.173", + "40.64.67.13" + ] + }, + "requiredTraffics": [ + { + "protocol": "TCP", + "port": 443, + "ips": [ + "20.62.211.25", + "52.188.47.226" + ], + "direction": "Outbound" + }, + { + "protocol": "UDP", + "port": 1194, + "ips": [ + "20.62.211.25", + "52.188.47.226" + ], + "direction": "Outbound" + }, + { + "protocol": "TCP", + "port": 9000, + "ips": [ + "20.62.211.25", + "52.188.47.226" + ], + "direction": "Outbound" + } + ] + } + }, + "type": "Microsoft.AppPlatform/Spring", + "sku": { + "name": "S0", + "tier": "Standard" + }, + "location": "eastus", + "tags": { + "key1": "value1" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice", + "name": "myservice" + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Services_List.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Services_List.json new file mode 100644 index 000000000000..dbd3643a4724 --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Services_List.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2021-06-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "provisioningState": "Succeeded", + "serviceId": "12345678abcd1234abcd12345678abcd", + "networkProfile": { + "outboundIPs": { + "publicIPs": [ + "20.39.3.173", + "40.64.67.13" + ] + }, + "requiredTraffics": [ + { + "protocol": "TCP", + "port": 443, + "ips": [ + "20.62.211.25", + "52.188.47.226" + ], + "direction": "Outbound" + }, + { + "protocol": "UDP", + "port": 1194, + "ips": [ + "20.62.211.25", + "52.188.47.226" + ], + "direction": "Outbound" + }, + { + "protocol": "TCP", + "port": 9000, + "ips": [ + "20.62.211.25", + "52.188.47.226" + ], + "direction": "Outbound" + } + ] + } + }, + "type": "Microsoft.AppPlatform/Spring", + "sku": { + "name": "S0", + "tier": "Standard" + }, + "location": "eastus", + "tags": { + "key1": "value1" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice", + "name": "myservice" + } + ] + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Services_ListBySubscription.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Services_ListBySubscription.json new file mode 100644 index 000000000000..26a4f5de3737 --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Services_ListBySubscription.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "api-version": "2021-06-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "provisioningState": "Succeeded", + "serviceId": "12345678abcd1234abcd12345678abcd", + "networkProfile": { + "outboundIPs": { + "publicIPs": [ + "20.39.3.173", + "40.64.67.13" + ] + }, + "requiredTraffics": [ + { + "protocol": "TCP", + "port": 443, + "ips": [ + "20.62.211.25", + "52.188.47.226" + ], + "direction": "Outbound" + }, + { + "protocol": "UDP", + "port": 1194, + "ips": [ + "20.62.211.25", + "52.188.47.226" + ], + "direction": "Outbound" + }, + { + "protocol": "TCP", + "port": 9000, + "ips": [ + "20.62.211.25", + "52.188.47.226" + ], + "direction": "Outbound" + } + ] + } + }, + "type": "Microsoft.AppPlatform/Spring", + "sku": { + "name": "S0", + "tier": "Standard" + }, + "location": "eastus", + "tags": { + "key1": "value1" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice", + "name": "myservice" + } + ] + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Services_ListTestKeys.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Services_ListTestKeys.json new file mode 100644 index 000000000000..60002b5803fd --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Services_ListTestKeys.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2021-06-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice" + }, + "responses": { + "200": { + "body": { + "primaryKey": "", + "secondaryKey": "", + "primaryTestEndpoint": "", + "secondaryTestEndpoint": "", + "enabled": true + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Services_RegenerateTestKey.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Services_RegenerateTestKey.json new file mode 100644 index 000000000000..29133042d86a --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Services_RegenerateTestKey.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "regenerateTestKeyRequest": { + "keyType": "Primary" + }, + "api-version": "2021-06-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice" + }, + "responses": { + "200": { + "body": { + "primaryKey": "", + "secondaryKey": "", + "primaryTestEndpoint": "", + "secondaryTestEndpoint": "", + "enabled": true + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Services_Update.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Services_Update.json new file mode 100644 index 000000000000..8267bef0540d --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Services_Update.json @@ -0,0 +1,133 @@ +{ + "parameters": { + "resource": { + "properties": {}, + "sku": { + "name": "S0", + "tier": "Standard" + }, + "location": "eastus", + "tags": { + "key1": "value1" + } + }, + "api-version": "2021-06-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice" + }, + "responses": { + "202": { + "body": { + "properties": { + "provisioningState": "Updating", + "serviceId": "12345678abcd1234abcd12345678abcd", + "networkProfile": { + "outboundIPs": { + "publicIPs": [ + "20.39.3.173", + "40.64.67.13" + ] + }, + "requiredTraffics": [ + { + "protocol": "TCP", + "port": 443, + "ips": [ + "20.62.211.25", + "52.188.47.226" + ], + "direction": "Outbound" + }, + { + "protocol": "UDP", + "port": 1194, + "ips": [ + "20.62.211.25", + "52.188.47.226" + ], + "direction": "Outbound" + }, + { + "protocol": "TCP", + "port": 9000, + "ips": [ + "20.62.211.25", + "52.188.47.226" + ], + "direction": "Outbound" + } + ] + } + }, + "type": "Microsoft.AppPlatform/Spring", + "sku": { + "name": "S0", + "tier": "Standard" + }, + "location": "eastus", + "tags": { + "key1": "value1" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice", + "name": "myservice" + } + }, + "200": { + "body": { + "properties": { + "provisioningState": "Succeeded", + "serviceId": "12345678abcd1234abcd12345678abcd", + "networkProfile": { + "outboundIPs": { + "publicIPs": [ + "20.39.3.173", + "40.64.67.13" + ] + }, + "requiredTraffics": [ + { + "protocol": "TCP", + "port": 443, + "ips": [ + "20.62.211.25", + "52.188.47.226" + ], + "direction": "Outbound" + }, + { + "protocol": "UDP", + "port": 1194, + "ips": [ + "20.62.211.25", + "52.188.47.226" + ], + "direction": "Outbound" + }, + { + "protocol": "TCP", + "port": 9000, + "ips": [ + "20.62.211.25", + "52.188.47.226" + ], + "direction": "Outbound" + } + ] + } + }, + "type": "Microsoft.AppPlatform/Spring", + "sku": { + "name": "S0", + "tier": "Standard" + }, + "location": "eastus", + "tags": { + "key1": "value1" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice", + "name": "myservice" + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Skus_List.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Skus_List.json new file mode 100644 index 000000000000..1621bdfa76cc --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/examples/Skus_List.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2021-06-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "Spring", + "name": "B0", + "tier": "Basic", + "capacity": { + "minimum": 1, + "maximum": 20, + "default": 1, + "scaleType": "Automatic" + }, + "locations": [ + "eastus" + ], + "locationInfo": [ + { + "location": "eastus", + "zones": [], + "zoneDetails": [] + } + ], + "restrictions": [] + } + ] + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/stable/2020-07-01/appplatform.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/stable/2020-07-01/appplatform.json index cd6d6d773c55..d873f13edda8 100644 --- a/specification/appplatform/resource-manager/Microsoft.AppPlatform/stable/2020-07-01/appplatform.json +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/stable/2020-07-01/appplatform.json @@ -3033,23 +3033,43 @@ "properties": { "serviceRuntimeSubnetId": { "description": "Fully qualified resource Id of the subnet to host Azure Spring Cloud Service Runtime", - "type": "string" + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] }, "appSubnetId": { "description": "Fully qualified resource Id of the subnet to host Azure Spring Cloud Apps", - "type": "string" + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] }, "serviceCidr": { "description": "Azure Spring Cloud service reserved CIDR", - "type": "string" + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] }, "serviceRuntimeNetworkResourceGroup": { "description": "Name of the resource group containing network resources of Azure Spring Cloud Service Runtime", - "type": "string" + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] }, "appNetworkResourceGroup": { "description": "Name of the resource group containing network resources of Azure Spring Cloud Apps", - "type": "string" + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] }, "outboundIPs": { "description": "Desired outbound IP resources for Azure Spring Cloud instance.", @@ -3380,11 +3400,16 @@ }, "fqdn": { "description": "Fully qualified dns Name.", - "type": "string" + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] }, "httpsOnly": { "description": "Indicate if only https is allowed.", - "type": "boolean" + "type": "boolean", + "default": false }, "createdTime": { "format": "date-time", @@ -3394,7 +3419,8 @@ }, "temporaryDisk": { "$ref": "#/definitions/TemporaryDisk", - "description": "Temporary disk settings" + "description": "Temporary disk settings", + "default": "/tmp" }, "persistentDisk": { "$ref": "#/definitions/PersistentDisk", @@ -3924,6 +3950,7 @@ }, "runtimeVersion": { "description": "Runtime version", + "default": "Java_8", "enum": [ "Java_8", "Java_11", diff --git a/specification/appplatform/resource-manager/readme.azureresourceschema.md b/specification/appplatform/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index d2967f305b33..000000000000 --- a/specification/appplatform/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,48 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-appplatform-2020-11-01-preview - - tag: schema-appplatform-2020-07-01 - - tag: schema-appplatform-2019-05-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-appplatform-2020-11-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-appplatform-2020-11-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.AppPlatform/preview/2020-11-01-preview/appplatform.json - -``` - -### Tag: schema-appplatform-2020-07-01 and azureresourceschema - -``` yaml $(tag) == 'schema-appplatform-2020-07-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.AppPlatform/stable/2020-07-01/appplatform.json - -``` - -### Tag: schema-appplatform-2019-05-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-appplatform-2019-05-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.AppPlatform/preview/2019-05-01-preview/appplatform.json - -``` diff --git a/specification/appplatform/resource-manager/readme.go.md b/specification/appplatform/resource-manager/readme.go.md index 71e27fbfa375..d67828bed9ae 100644 --- a/specification/appplatform/resource-manager/readme.go.md +++ b/specification/appplatform/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: appplatform clear-output-folder: true ``` diff --git a/specification/appplatform/resource-manager/readme.md b/specification/appplatform/resource-manager/readme.md index 6c70a98ac544..11dd36545e4d 100644 --- a/specification/appplatform/resource-manager/readme.md +++ b/specification/appplatform/resource-manager/readme.md @@ -26,7 +26,7 @@ These are the global settings for the AppPlatform API. ``` yaml openapi-type: arm -tag: package-preview-2020-11 +tag: package-preview-2021-06 ``` ### Suppression @@ -44,20 +44,29 @@ directive: - suppress: R3021 from: appplatform.json reason: The resource type name 'Spring' is a trademark so cannot be changed to be camel-case - #where: + #where: # - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppPlatform/Spring/{serviceName}/configServers/default"] # - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppPlatform/Spring/{serviceName}/monitoringSettings/default"] ``` +### Tag: package-preview-2021-06 + +These settings apply only when `--tag=package-preview-2021-06` is specified on the command line. + +```yaml $(tag) == 'package-preview-2021-06' +input-file: + - Microsoft.AppPlatform/preview/2021-06-01-preview/appplatform.json +``` ### Tag: package-preview-2020-11 These settings apply only when `--tag=package-preview-2020-11` is specified on the command line. -```yaml $(tag) == 'package-preview-2020-11' +``` yaml $(tag) == 'package-preview-2020-11' input-file: - Microsoft.AppPlatform/preview/2020-11-01-preview/appplatform.json ``` + ### Tag: package-2020-07 These settings apply only when `--tag=package-2020-07` is specified on the command line. @@ -91,6 +100,7 @@ swagger-to-sdk: - repo: azure-sdk-for-python after_scripts: - python ./scripts/multiapi_init_gen.py azure-mgmt-appplatform + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-java - repo: azure-sdk-for-net - repo: azure-sdk-for-node @@ -100,14 +110,16 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_appplatform'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js appplatform/resource-manager ``` ## Go See configuration in [readme.go.md](./readme.go.md) +## Python + +See configuration in [readme.python.md](./readme.python.md) + ## Java See configuration in [readme.java.md](./readme.java.md) @@ -126,7 +138,3 @@ csharp: output-folder: $(csharp-sdks-folder)/appplatform/Microsoft.Azure.Management.AppPlatform/src/Generated clear-output-folder: true ``` - -## AzureResourceSchema - -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/attestation/data-plane/readme.go.md b/specification/attestation/data-plane/readme.go.md index b349ef5c93ef..f069e7379fc0 100644 --- a/specification/attestation/data-plane/readme.go.md +++ b/specification/attestation/data-plane/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: attestation clear-output-folder: true ``` diff --git a/specification/attestation/resource-manager/Microsoft.Attestation/stable/2018-09-01-preview/attestation.json b/specification/attestation/resource-manager/Microsoft.Attestation/stable/2018-09-01-preview/attestation.json index cf2fa31d9945..60c45a9d2d58 100644 --- a/specification/attestation/resource-manager/Microsoft.Attestation/stable/2018-09-01-preview/attestation.json +++ b/specification/attestation/resource-manager/Microsoft.Attestation/stable/2018-09-01-preview/attestation.json @@ -474,9 +474,6 @@ }, "AttestationProvider": { "description": "Attestation service response message.", - "required": [ - "properties" - ], "allOf": [ { "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/TrackedResource" diff --git a/specification/attestation/resource-manager/Microsoft.Attestation/stable/2020-10-01/attestation.json b/specification/attestation/resource-manager/Microsoft.Attestation/stable/2020-10-01/attestation.json index b5580e8bba18..7eab57d6a9be 100644 --- a/specification/attestation/resource-manager/Microsoft.Attestation/stable/2020-10-01/attestation.json +++ b/specification/attestation/resource-manager/Microsoft.Attestation/stable/2020-10-01/attestation.json @@ -664,9 +664,6 @@ }, "AttestationProvider": { "description": "Attestation service response message.", - "required": [ - "properties" - ], "allOf": [ { "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/TrackedResource" @@ -807,15 +804,6 @@ "$ref": "../../../../../common-types/rfcs/rfc7517.json#/definitions/JSONWebKeySet" } } - }, - "PrivateEndpointConnectionProperties": { - "properties": { - "provisioningState": { - "$ref": "../../../../../common-types/resource-management/v1/privatelinks.json#/definitions/PrivateEndpointConnectionProvisioningState", - "description": "Provisioning state of the private endpoint connection." - } - }, - "description": "Properties of the private endpoint connection resource." } }, "parameters": { diff --git a/specification/attestation/resource-manager/readme.azureresourceschema.md b/specification/attestation/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index bd437a256b68..000000000000 --- a/specification/attestation/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,36 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-attestation-2020-10-01 - - tag: schema-attestation-2018-09-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-attestation-2020-10-01 and azureresourceschema - -``` yaml $(tag) == 'schema-attestation-2020-10-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Attestation/stable/2020-10-01/attestation.json - -``` - -### Tag: schema-attestation-2018-09-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-attestation-2018-09-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Attestation/stable/2018-09-01-preview/attestation.json - -``` diff --git a/specification/attestation/resource-manager/readme.go.md b/specification/attestation/resource-manager/readme.go.md index df9014b877d0..1af74c55b165 100644 --- a/specification/attestation/resource-manager/readme.go.md +++ b/specification/attestation/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: attestation clear-output-folder: true ``` diff --git a/specification/attestation/resource-manager/readme.md b/specification/attestation/resource-manager/readme.md index f2099cd924dd..3c736ccdf1dd 100644 --- a/specification/attestation/resource-manager/readme.md +++ b/specification/attestation/resource-manager/readme.md @@ -65,8 +65,6 @@ swagger-to-sdk: - repo: azure-sdk-for-js - repo: azure-sdk-for-java - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js attestation/resource-manager ``` ## Python @@ -96,7 +94,5 @@ See configuration in [readme.go.md](./readme.go.md) See configuration in [readme.terraform.md](./readme.terraform.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/authorization-ClassicAdminCalls.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/authorization-ClassicAdminCalls.json deleted file mode 100644 index 15dfa0ddb9cc..000000000000 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/authorization-ClassicAdminCalls.json +++ /dev/null @@ -1,132 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "AuthorizationManagementClient", - "version": "2020-03-01-preview", - "description": "Role based access control provides you a way to apply granular level policy administration down to individual resources or resource groups. These operations enable you to manage role definitions and role assignments. A role definition describes the set of actions that can be performed on resources. A role assignment grants access to Azure Active Directory users." - }, - "host": "management.azure.com", - "schemes": [ - "https" - ], - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "security": [ - { - "azure_auth": [ - "user_impersonation" - ] - } - ], - "securityDefinitions": { - "azure_auth": { - "type": "oauth2", - "authorizationUrl": "https://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.Authorization/classicAdministrators": { - "get": { - "tags": [ - "ClassicAdministrators" - ], - "operationId": "ClassicAdministrators_List", - "description": "List service administrator, account administrator, and co-administrators for the subscription.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Returns an array of administrators.", - "schema": { - "$ref": "#/definitions/ClassicAdministratorListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-examples": { - "List classic administrators": { - "$ref": "./examples/ClassicAdministrators_List.json" - } - } - } - } - }, - "definitions": { - "ClassicAdministratorProperties": { - "properties": { - "emailAddress": { - "type": "string", - "description": "The email address of the administrator." - }, - "role": { - "type": "string", - "description": "The role of the administrator." - } - }, - "description": "Classic Administrator properties." - }, - "ClassicAdministrator": { - "properties": { - "id": { - "type": "string", - "description": "The ID of the administrator." - }, - "name": { - "type": "string", - "description": "The name of the administrator." - }, - "type": { - "type": "string", - "description": "The type of the administrator." - }, - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/ClassicAdministratorProperties", - "description": "Properties for the classic administrator." - } - }, - "description": "Classic Administrators" - }, - "ClassicAdministratorListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/ClassicAdministrator" - }, - "description": "An array of administrators." - }, - "nextLink": { - "readOnly": true, - "type": "string", - "description": "The URL to use for getting the next set of results." - } - }, - "description": "ClassicAdministrator list result information." - } - }, - "parameters": {} -} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/authorization-DenyAssignmentGetCalls.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/authorization-DenyAssignmentGetCalls.json deleted file mode 100644 index 63d3b9bbcd6c..000000000000 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/authorization-DenyAssignmentGetCalls.json +++ /dev/null @@ -1,677 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "AuthorizationManagementClient", - "version": "2020-03-01-preview", - "description": "Role based access control provides you a way to apply granular level policy administration down to individual resources or resource groups. These operations enable you to get deny assignments. A deny assignment describes the set of actions on resources that are denied for Azure Active Directory users." - }, - "host": "management.azure.com", - "schemes": [ - "https" - ], - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "security": [ - { - "azure_auth": [ - "user_impersonation" - ] - } - ], - "securityDefinitions": { - "azure_auth": { - "type": "oauth2", - "authorizationUrl": "https://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/{resourceProviderNamespace}/{resourceType}/{resourceName}/providers/Microsoft.Authorization/denyAssignments": { - "get": { - "tags": [ - "DenyAssignments" - ], - "operationId": "DenyAssignments_ListForResource", - "description": "List deny assignments for a resource.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "./common-types.json#/parameters/ResourceProviderNamespaceParameter" - }, - { - "$ref": "./common-types.json#/parameters/ResourceTypeParameter" - }, - { - "$ref": "./common-types.json#/parameters/ResourceNameParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/FilterParameter" - } - ], - "responses": { - "200": { - "description": "Returns an array of deny assignments.", - "schema": { - "$ref": "#/definitions/DenyAssignmentListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DenyAssignmentFilter", - "x-ms-examples": { - "List deny assignments for resource": { - "$ref": "./examples/DenyAssignments_ListForResource.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Authorization/denyAssignments": { - "get": { - "tags": [ - "DenyAssignments" - ], - "operationId": "DenyAssignments_ListForResourceGroup", - "description": "List deny assignments for a resource group.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/FilterParameter" - } - ], - "responses": { - "200": { - "description": "Returns an array of deny assignments.", - "schema": { - "$ref": "#/definitions/DenyAssignmentListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DenyAssignmentFilter", - "x-ms-examples": { - "List deny assignments for resource group": { - "$ref": "./examples/DenyAssignments_ListForResourceGroup.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/denyAssignments": { - "get": { - "tags": [ - "DenyAssignments" - ], - "operationId": "DenyAssignments_ListForSubscription", - "description": "List all deny assignments for the subscription.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/FilterParameter" - } - ], - "responses": { - "200": { - "description": "Returns an array of deny assignments.", - "schema": { - "$ref": "#/definitions/DenyAssignmentListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DenyAssignmentFilter", - "x-ms-examples": { - "List deny assignments for subscription": { - "$ref": "./examples/DenyAssignments_ListForSubscription.json" - } - } - } - }, - "/{scope}/providers/Microsoft.Authorization/denyAssignments/{denyAssignmentName}": { - "get": { - "operationId": "DenyAssignments_Get", - "tags": [ - "DenyAssignments" - ], - "description": "Get a deny assignment by scope and name.", - "parameters": [ - { - "$ref": "./common-types.json#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DenyAssignmentNameParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Returns the deny assignment.", - "schema": { - "$ref": "#/definitions/DenyAssignment" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-examples": { - "Get deny assignment by scope name": { - "$ref": "./examples/DenyAssignments_Get.json" - } - } - }, - "put": { - "tags": [ - "DenyAssignments" - ], - "operationId": "DenyAssignments_Create", - "description": "Create or update a deny assignment by scope and name.", - "parameters": [ - { - "$ref": "./common-types.json#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DenyAssignmentNameParameter" - }, - { - "$ref": "#/parameters/DenyAssignmentCreateParameters" - }, - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" - } - ], - "responses": { - "201": { - "description": "Returns the deny assignment.", - "schema": { - "$ref": "#/definitions/DenyAssignment" - } - }, - "200": { - "description": "Returns the deny assignment.", - "schema": { - "$ref": "#/definitions/DenyAssignment" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-examples": { - "Create deny assignment for subscription": { - "$ref": "./examples/DenyAssignments_CreateForSubscription.json" - }, - "Create deny assignment for resource group": { - "$ref": "./examples/DenyAssignments_CreateForResourceGroup.json" - }, - "Create deny assignment for resource": { - "$ref": "./examples/DenyAssignments_CreateForResource.json" - } - } - }, - "delete": { - "tags": [ - "DenyAssignments" - ], - "operationId": "DenyAssignments_Delete", - "description": "Delete a deny assignment by scope and name.", - "parameters": [ - { - "$ref": "./common-types.json#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DenyAssignmentNameParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Returns the deleted deny assignment.", - "schema": { - "$ref": "#/definitions/DenyAssignment" - } - }, - "204": { - "description": "Deny assignment was already deleted or does not exist." - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-examples": { - "Delete deny assignment": { - "$ref": "./examples/DenyAssignments_Delete.json" - } - } - } - }, - "/{scope}/providers/Microsoft.Authorization/denyAssignments": { - "get": { - "tags": [ - "DenyAssignments" - ], - "operationId": "DenyAssignments_ListForScope", - "description": "List deny assignments for a scope.", - "parameters": [ - { - "$ref": "./common-types.json#/parameters/ScopeParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/FilterParameter" - } - ], - "responses": { - "200": { - "description": "Returns an array of deny assignments.", - "schema": { - "$ref": "#/definitions/DenyAssignmentListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DenyAssignmentFilter", - "x-ms-examples": { - "List deny assignments for scope": { - "$ref": "./examples/DenyAssignments_ListForScope.json" - } - } - } - }, - "/{denyAssignmentId}": { - "get": { - "operationId": "DenyAssignments_GetById", - "tags": [ - "DenyAssignments" - ], - "description": "Get a deny assignment by ID.", - "parameters": [ - { - "$ref": "#/parameters/DenyAssignmentIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Returns the deny assignment.", - "schema": { - "$ref": "#/definitions/DenyAssignment" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-examples": { - "Get deny assignment by ID": { - "$ref": "./examples/DenyAssignments_GetById.json" - } - } - }, - "put": { - "tags": [ - "DenyAssignments" - ], - "operationId": "DenyAssignments_CreateById", - "description": "Create or update a deny assignment by ID.", - "parameters": [ - { - "$ref": "#/parameters/DenyAssignmentIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/DenyAssignmentCreateParameters" - } - ], - "responses": { - "201": { - "description": "Returns the deny assignment.", - "schema": { - "$ref": "#/definitions/DenyAssignment" - } - }, - "200": { - "description": "Returns the deny assignment.", - "schema": { - "$ref": "#/definitions/DenyAssignment" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-examples": { - "Create or update deny assignment by ID": { - "$ref": "./examples/DenyAssignments_CreateById.json" - } - } - }, - "delete": { - "tags": [ - "DenyAssignments" - ], - "operationId": "DenyAssignments_DeleteById", - "description": "Delete a deny assignment by ID.", - "parameters": [ - { - "$ref": "#/parameters/DenyAssignmentIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Returns the deleted deny assignment.", - "schema": { - "$ref": "#/definitions/DenyAssignment" - } - }, - "204": { - "description": "Deny assignment already deleted or does not exist." - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-examples": { - "Delete deny assignment by ID": { - "$ref": "./examples/DenyAssignments_DeleteById.json" - } - } - } - } - }, - "definitions": { - "DenyAssignmentFilter": { - "properties": { - "denyAssignmentName": { - "type": "string", - "description": "Return deny assignment with specified name." - }, - "principalId": { - "type": "string", - "description": "Return all deny assignments where the specified principal is listed in the principals list of deny assignments." - }, - "gdprExportPrincipalId": { - "type": "string", - "description": "Return all deny assignments where the specified principal is listed either in the principals list or exclude principals list of deny assignments." - } - }, - "description": "Deny Assignments filter" - }, - "DenyAssignmentProperties": { - "properties": { - "denyAssignmentName": { - "type": "string", - "description": "The display name of the deny assignment." - }, - "description": { - "type": "string", - "description": "The description of the deny assignment." - }, - "permissions": { - "type": "array", - "items": { - "$ref": "./common-types.json#/definitions/Permission" - }, - "description": "An array of permissions that are denied by the deny assignment." - }, - "doNotApplyToChildScopes": { - "type": "boolean", - "description": "Determines if the deny assignment applies to child scopes. Default value is false." - }, - "principals": { - "type": "array", - "items": { - "$ref": "#/definitions/Principal" - }, - "description": "Array of principals to which the deny assignment applies." - }, - "excludePrincipals": { - "type": "array", - "items": { - "$ref": "#/definitions/Principal" - }, - "description": "Array of principals to which the deny assignment does not apply." - }, - "isSystemProtected": { - "type": "boolean", - "description": "Specifies whether this deny assignment was created by Azure and cannot be edited or deleted." - }, - "condition": { - "type": "string", - "description": "The conditions on the role assignment. This limits the resources it can be assigned to. e.g.: @Resource[Microsoft.Storage/storageAccounts/blobServices/containers:ContainerName] StringEqualsIgnoreCase 'foo_storage_container'" - }, - "conditionVersion": { - "type": "string", - "description": "Version of the condition. Currently accepted value is '2.0'" - }, - "scope": { - "type": "string", - "description": "The deny assignment scope." - }, - "createdOn": { - "readOnly": true, - "type": "string", - "description": "Time it was created", - "format": "date-time" - }, - "updatedOn": { - "readOnly": true, - "type": "string", - "description": "Time it was updated", - "format": "date-time" - }, - "createdBy": { - "readOnly": true, - "type": "string", - "description": "Id of the user who created the assignment" - }, - "updatedBy": { - "readOnly": true, - "type": "string", - "description": "Id of the user who updated the assignment" - } - }, - "required": [ - "principals", - "permissions" - ], - "description": "Deny assignment properties." - }, - "DenyAssignment": { - "x-ms-azure-resource": true, - "properties": { - "id": { - "type": "string", - "readOnly": true, - "description": "The deny assignment ID." - }, - "name": { - "type": "string", - "readOnly": true, - "description": "The deny assignment name." - }, - "type": { - "type": "string", - "readOnly": true, - "description": "The deny assignment type." - }, - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/DenyAssignmentProperties", - "description": "Deny assignment properties." - } - }, - "description": "Deny Assignment" - }, - "DenyAssignmentListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/DenyAssignment" - }, - "description": "Deny assignment list." - }, - "nextLink": { - "type": "string", - "description": "The URL to use for getting the next set of results." - } - }, - "description": "Deny assignment list operation result." - }, - "Principal": { - "properties": { - "id": { - "type": "string", - "description": "Object ID of the Azure AD principal (user, group, or service principal) to which the deny assignment applies. An empty guid '00000000-0000-0000-0000-000000000000' as principal id and principal type as 'Everyone' represents all users, groups and service principals." - }, - "type": { - "type": "string", - "description": "Type of object represented by principal id (user, group, or service principal). An empty guid '00000000-0000-0000-0000-000000000000' as principal id and principal type as 'Everyone' represents all users, groups and service principals." - } - }, - "description": "Deny assignment principal." - }, - "DenyAssignmentCreateParameters": { - "properties": { - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/DenyAssignmentProperties", - "description": "Deny assignment properties." - } - }, - "required": [ - "properties" - ], - "description": "Deny assignment create parameters." - } - }, - "parameters": { - "FilterParameter": { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. Use $filter=atScope() to return all deny assignments at or above the scope. Use $filter=denyAssignmentName eq '{name}' to search deny assignments by name at specified scope. Use $filter=principalId eq '{id}' to return all deny assignments at, above and below the scope for the specified principal. Use $filter=gdprExportPrincipalId eq '{id}' to return all deny assignments at, above and below the scope for the specified principal. This filter is different from the principalId filter as it returns not only those deny assignments that contain the specified principal is the Principals list but also those deny assignments that contain the specified principal is the ExcludePrincipals list. Additionally, when gdprExportPrincipalId filter is used, only the deny assignment name and description properties are returned.", - "x-ms-parameter-location": "method" - }, - "DenyAssignmentNameParameter": { - "name": "denyAssignmentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deny assignment. It can be any valid GUID.", - "x-ms-skip-url-encoding": true, - "x-ms-parameter-location": "method" - }, - "DenyAssignmentIdParameter": { - "name": "denyAssignmentId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the deny assignment including scope, resource name, and resource type. Format: /{scope}/providers/Microsoft.Authorization/roleAssignments/{roleAssignmentName}. Example: /subscriptions//resourcegroups//providers/Microsoft.Authorization/roleAssignments/", - "x-ms-skip-url-encoding": true, - "x-ms-parameter-location": "method" - }, - "DenyAssignmentCreateParameters": { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/DenyAssignmentCreateParameters" - }, - "description": "Parameters for the deny assignment.", - "x-ms-parameter-location": "method" - } - } -} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/authorization-ElevateAccessCalls.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/authorization-ElevateAccessCalls.json deleted file mode 100644 index 8630ff29a7f5..000000000000 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/authorization-ElevateAccessCalls.json +++ /dev/null @@ -1,69 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "AuthorizationManagementClient", - "version": "2020-03-01-preview", - "description": "Role based access control provides you a way to apply granular level policy administration down to individual resources or resource groups. These operations enable you to manage role definitions and role assignments. A role definition describes the set of actions that can be performed on resources. A role assignment grants access to Azure Active Directory users." - }, - "host": "management.azure.com", - "schemes": [ - "https" - ], - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "security": [ - { - "azure_auth": [ - "user_impersonation" - ] - } - ], - "securityDefinitions": { - "azure_auth": { - "type": "oauth2", - "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.Authorization/elevateAccess": { - "post": { - "tags": [ - "ElevateAccess" - ], - "operationId": "GlobalAdministrator_ElevateAccess", - "description": "Elevate access for a Global Administrator.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Success." - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-examples": { - "Elevate access global administrator": { - "$ref": "./examples/GlobalAdministrator_ElevateAccess.json" - } - } - } - } - }, - "parameters": {} -} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/authorization-PermissionsCalls.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/authorization-PermissionsCalls.json deleted file mode 100644 index 0e22313c21b2..000000000000 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/authorization-PermissionsCalls.json +++ /dev/null @@ -1,190 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "AuthorizationManagementClient", - "version": "2020-03-01-preview", - "description": "Role based access control provides you a way to apply granular level policy administration down to individual resources or resource groups. These operations allow you to manage role definitions. A role definition describes the set of actions that can be performed on resources." - }, - "host": "management.azure.com", - "schemes": [ - "https" - ], - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "security": [ - { - "azure_auth": [ - "user_impersonation" - ] - } - ], - "securityDefinitions": { - "azure_auth": { - "type": "oauth2", - "authorizationUrl": "https://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.Authorization/permissions": { - "get": { - "tags": [ - "Permissions" - ], - "operationId": "Permissions_ListForSubscription", - "description": "List all permissions the caller has for a subscription.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Returns an array of permissions.", - "schema": { - "$ref": "#/definitions/PermissionGetResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-examples": { - "List permissions for subscription": { - "$ref": "./examples/Permissions_ListForSubscription.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Authorization/permissions": { - "get": { - "tags": [ - "Permissions" - ], - "operationId": "Permissions_ListForResourceGroup", - "description": "List all permissions the caller has for a resource group.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Returns an array of permissions.", - "schema": { - "$ref": "#/definitions/PermissionGetResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-examples": { - "List permissions for resource group": { - "$ref": "./examples/Permissions_ListForResourceGroup.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}/providers/Microsoft.Authorization/permissions": { - "get": { - "tags": [ - "Permissions" - ], - "operationId": "Permissions_ListForResource", - "description": "List all permissions the caller has for a resource.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "./common-types.json#/parameters/ResourceProviderNamespaceParameter" - }, - { - "$ref": "./common-types.json#/parameters/ResourceTypeParameter" - }, - { - "$ref": "./common-types.json#/parameters/ResourceNameParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Returns an array of permissions.", - "schema": { - "$ref": "#/definitions/PermissionGetResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-examples": { - "List permissions for resource": { - "$ref": "./examples/Permissions_ListForResource.json" - } - } - } - } - }, - "definitions": { - "PermissionGetResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "./common-types.json#/definitions/Permission" - }, - "description": "An array of permissions." - }, - "nextLink": { - "readOnly": true, - "type": "string", - "description": "The URL to use for getting the next set of results." - } - }, - "description": "Permissions information." - } - }, - "parameters": {} -} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/authorization-ProviderOperationsCalls.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/authorization-ProviderOperationsCalls.json deleted file mode 100644 index 96294439b5bc..000000000000 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/authorization-ProviderOperationsCalls.json +++ /dev/null @@ -1,231 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "AuthorizationManagementClient", - "version": "2020-03-01-preview", - "description": "Role based access control provides you a way to apply granular level policy administration down to individual resources or resource groups. These calls handle provider operations." - }, - "host": "management.azure.com", - "schemes": [ - "https" - ], - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "security": [ - { - "azure_auth": [ - "user_impersonation" - ] - } - ], - "securityDefinitions": { - "azure_auth": { - "type": "oauth2", - "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.Authorization/providerOperations/{resourceProviderNamespace}": { - "get": { - "tags": [ - "ProviderOperationsMetadata" - ], - "operationId": "ProviderOperationsMetadata_Get", - "description": "List provider operations metadata for the specified resource provider.", - "parameters": [ - { - "$ref": "./common-types.json#/parameters/ResourceProviderNamespaceParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/ExpandParameter" - } - ], - "responses": { - "200": { - "description": "Returns the operations metadata.", - "schema": { - "$ref": "#/definitions/ProviderOperationsMetadata" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-examples": { - "List provider operations metadata for resource provider": { - "$ref": "./examples/ProviderOperations_ListForRP.json" - } - } - } - }, - "/providers/Microsoft.Authorization/providerOperations": { - "get": { - "tags": [ - "ProviderOperationsMetadata" - ], - "operationId": "ProviderOperationsMetadata_List", - "description": "List provider operations metadata for all resource providers.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/ExpandParameter" - } - ], - "responses": { - "200": { - "description": "Returns an array of operations metadata.", - "schema": { - "$ref": "#/definitions/ProviderOperationsMetadataListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-examples": { - "List provider operations metadata for all resource providers": { - "$ref": "./examples/ProviderOperations_List.json" - } - } - } - } - }, - "definitions": { - "ResourceType": { - "properties": { - "name": { - "type": "string", - "description": "The resource type name." - }, - "displayName": { - "type": "string", - "description": "The resource type display name." - }, - "operations": { - "type": "array", - "items": { - "$ref": "#/definitions/ProviderOperation" - }, - "description": "The resource type operations." - } - }, - "description": "Resource Type" - }, - "ProviderOperation": { - "properties": { - "name": { - "type": "string", - "description": "The operation name." - }, - "displayName": { - "type": "string", - "description": "The operation display name." - }, - "description": { - "type": "string", - "description": "The operation description." - }, - "origin": { - "type": "string", - "description": "The operation origin." - }, - "properties": { - "type": "object", - "x-ms-client-flatten": true, - "description": "The operation properties." - }, - "isDataAction": { - "type": "boolean", - "description": "The dataAction flag to specify the operation type." - } - }, - "description": "Operation" - }, - "ProviderOperationsMetadata": { - "properties": { - "id": { - "type": "string", - "description": "The provider id." - }, - "name": { - "type": "string", - "description": "The provider name." - }, - "type": { - "type": "string", - "description": "The provider type." - }, - "displayName": { - "type": "string", - "description": "The provider display name." - }, - "resourceTypes": { - "type": "array", - "items": { - "$ref": "#/definitions/ResourceType" - }, - "description": "The provider resource types" - }, - "operations": { - "type": "array", - "items": { - "$ref": "#/definitions/ProviderOperation" - }, - "description": "The provider operations." - } - }, - "description": "Provider Operations metadata" - }, - "ProviderOperationsMetadataListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/ProviderOperationsMetadata" - }, - "description": "The list of providers." - }, - "nextLink": { - "readOnly": true, - "type": "string", - "description": "The URL to use for getting the next set of results." - } - }, - "description": "Provider operations metadata list" - } - }, - "parameters": { - "ExpandParameter": { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "default": "resourceTypes", - "description": "Specifies whether to expand the values.", - "x-ms-parameter-location": "method" - } - } -} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/authorization-RoleDefinitionsCalls.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/authorization-RoleDefinitionsCalls.json deleted file mode 100644 index 543e386d2cdf..000000000000 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/authorization-RoleDefinitionsCalls.json +++ /dev/null @@ -1,588 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "AuthorizationManagementClient", - "version": "2020-03-01-preview", - "description": "Role based access control provides you a way to apply granular level policy administration down to individual resources or resource groups. These operations allow you to manage role definitions. A role definition describes the set of actions that can be performed on resources." - }, - "host": "management.azure.com", - "schemes": [ - "https" - ], - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "security": [ - { - "azure_auth": [ - "user_impersonation" - ] - } - ], - "securityDefinitions": { - "azure_auth": { - "type": "oauth2", - "authorizationUrl": "https://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.Authorization/roleDefinitions": { - "get": { - "tags": [ - "RoleDefinitions" - ], - "operationId": "RoleDefinitions_ListForSubscription", - "description": "List all role definitions that apply to a subscription.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/RoleDefinitionFilterParameter" - } - ], - "responses": { - "200": { - "description": "Returns an array of role definitions.", - "schema": { - "$ref": "#/definitions/RoleDefinitionListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-odata": "#/definitions/RoleDefinitionFilter", - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-examples": { - "List role definitions for subscription": { - "$ref": "./examples/RoleDefinitions_ListForSubscription.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Authorization/roleDefinitions": { - "get": { - "tags": [ - "RoleDefinitions" - ], - "operationId": "RoleDefinitions_ListForResourceGroup", - "description": "List all role definitions that apply to a resource group.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/RoleDefinitionFilterParameter" - } - ], - "responses": { - "200": { - "description": "Returns an array of role definitions.", - "schema": { - "$ref": "#/definitions/RoleDefinitionListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-odata": "#/definitions/RoleDefinitionFilter", - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-examples": { - "List role definitions for resource group": { - "$ref": "./examples/RoleDefinitions_ListForResourceGroup.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}/providers/Microsoft.Authorization/roleDefinitions": { - "get": { - "tags": [ - "RoleDefinitions" - ], - "operationId": "RoleDefinitions_ListForResource", - "description": "List all role definitions that apply to a resource.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "./common-types.json#/parameters/ResourceProviderNamespaceParameter" - }, - { - "$ref": "./common-types.json#/parameters/ResourceTypeParameter" - }, - { - "$ref": "./common-types.json#/parameters/ResourceNameParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/RoleDefinitionFilterParameter" - } - ], - "responses": { - "200": { - "description": "Returns an array of role definitions.", - "schema": { - "$ref": "#/definitions/RoleDefinitionListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-odata": "#/definitions/RoleDefinitionFilter", - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-examples": { - "List role definitions for a resource": { - "$ref": "./examples/RoleDefinitions_ListForResource.json" - } - } - } - }, - "/{scope}/providers/Microsoft.Authorization/roleDefinitions/{roleDefinitionName}": { - "get": { - "tags": [ - "RoleDefinitions" - ], - "operationId": "RoleDefinitions_Get", - "description": "Get a role definition by scope and name.", - "parameters": [ - { - "$ref": "./common-types.json#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/RoleDefinitionNameParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Returns the role definition.", - "schema": { - "$ref": "#/definitions/RoleDefinition" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-examples": { - "Get role definition by scope and name": { - "$ref": "./examples/RoleDefinitions_Get.json" - } - } - }, - "put": { - "tags": [ - "RoleDefinitions" - ], - "operationId": "RoleDefinitions_Create", - "description": "Create or update a role definition by scope and name.", - "parameters": [ - { - "$ref": "./common-types.json#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/RoleDefinitionNameParameter" - }, - { - "$ref": "#/parameters/RoleDefinitionCreateParameters" - }, - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" - } - ], - "responses": { - "201": { - "description": "Returns the role definition.", - "schema": { - "$ref": "#/definitions/RoleDefinition" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-examples": { - "Create role definition for subscription": { - "$ref": "./examples/RoleDefinitions_CreateForSubscription.json" - }, - "Create role definition for resource group": { - "$ref": "./examples/RoleDefinitions_CreateForResourceGroup.json" - }, - "Create role definition for resource": { - "$ref": "./examples/RoleDefinitions_CreateForResource.json" - } - } - }, - "delete": { - "tags": [ - "RoleDefinitions" - ], - "operationId": "RoleDefinitions_Delete", - "description": "Delete a role definition by scope and name.", - "parameters": [ - { - "$ref": "./common-types.json#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/RoleDefinitionNameParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Returns the deleted role definition.", - "schema": { - "$ref": "#/definitions/RoleDefinition" - } - }, - "204": { - "description": "Role definition was already deleted or does not exist." - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-examples": { - "Delete role definition": { - "$ref": "./examples/RoleDefinitions_Delete.json" - } - } - } - }, - "/{scope}/providers/Microsoft.Authorization/roleDefinitions": { - "get": { - "tags": [ - "RoleDefinitions" - ], - "operationId": "RoleDefinitions_ListForScope", - "description": "List all role definitions that apply to a scope.", - "parameters": [ - { - "$ref": "./common-types.json#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/RoleDefinitionFilterParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Returns an array of role definitions.", - "schema": { - "$ref": "#/definitions/RoleDefinitionListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/RoleDefinitionFilter", - "x-ms-examples": { - "List role definitions for scope": { - "$ref": "./examples/RoleDefinitions_ListForScope.json" - } - } - } - }, - "/{roleDefinitionId}": { - "get": { - "tags": [ - "RoleDefinitions" - ], - "operationId": "RoleDefinitions_GetById", - "description": "Get a role definition by ID.", - "parameters": [ - { - "$ref": "#/parameters/RoleDefinitionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Returns the role definition.", - "schema": { - "$ref": "#/definitions/RoleDefinition" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-examples": { - "Get role definition by ID": { - "$ref": "./examples/RoleDefinitions_GetById.json" - } - } - }, - "put": { - "tags": [ - "RoleDefinitions" - ], - "operationId": "RoleDefinitions_CreateById", - "description": "Create or update a role definition by ID.", - "parameters": [ - { - "$ref": "#/parameters/RoleDefinitionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/RoleDefinitionCreateParameters" - } - ], - "responses": { - "201": { - "description": "Returns the role definition.", - "schema": { - "$ref": "#/definitions/RoleDefinition" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-examples": { - "Create or update role definition by ID": { - "$ref": "./examples/RoleDefinitions_CreateById.json" - } - } - }, - "delete": { - "tags": [ - "RoleDefinitions" - ], - "operationId": "RoleDefinitions_DeleteById", - "description": "Delete a role definition by ID.", - "parameters": [ - { - "$ref": "#/parameters/RoleDefinitionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Returns the deleted role definition.", - "schema": { - "$ref": "#/definitions/RoleDefinition" - } - }, - "204": { - "description": "Role definition already deleted or does not exist." - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-examples": { - "Delete role definition by ID": { - "$ref": "./examples/RoleDefinitions_DeleteById.json" - } - } - } - } - }, - "definitions": { - "RoleDefinitionFilter": { - "properties": { - "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" - }, - "RoleDefinitionProperties": { - "properties": { - "roleName": { - "type": "string", - "description": "The role name." - }, - "description": { - "type": "string", - "description": "The role definition description." - }, - "type": { - "type": "string", - "description": "The role type.", - "x-ms-client-name": "roleType" - }, - "permissions": { - "type": "array", - "items": { - "$ref": "./common-types.json#/definitions/Permission" - }, - "description": "Role definition permissions." - }, - "assignableScopes": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Role definition assignable scopes." - } - }, - "description": "Role definition properties." - }, - "RoleDefinition": { - "properties": { - "id": { - "type": "string", - "readOnly": true, - "description": "The role definition ID." - }, - "name": { - "type": "string", - "readOnly": true, - "description": "The role definition name." - }, - "type": { - "type": "string", - "readOnly": true, - "description": "The role definition type." - }, - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/RoleDefinitionProperties", - "description": "Role definition properties." - } - }, - "description": "Role definition." - }, - "RoleDefinitionListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/RoleDefinition" - }, - "description": "Role definition list." - }, - "nextLink": { - "readOnly": true, - "type": "string", - "description": "The URL to use for getting the next set of results." - } - }, - "description": "Role definition list operation result." - } - }, - "parameters": { - "RoleDefinitionFilterParameter": { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. Use $filter=atScope() to return all deny definitions at or above the scope. Use $filter=denyDefinitionName eq '{name}' to search deny definitions by name at specified scope. Use $filter=principalId eq '{id}' to return all deny definitions at, above and below the scope for the specified principal. Use $filter=gdprExportPrincipalId eq '{id}' to return all deny definitions at, above and below the scope for the specified principal. This filter is different from the principalId filter as it returns not only those deny definitions that contain the specified principal is the Principals list but also those deny definitions that contain the specified principal is the ExcludePrincipals list. Additionally, when gdprExportPrincipalId filter is used, only the deny definition name and description properties are returned.", - "x-ms-skip-url-encoding": true, - "x-ms-parameter-location": "method" - }, - "RoleDefinitionIdParameter": { - "name": "roleDefinitionId", - "in": "path", - "required": true, - "type": "string", - "description": "The ID of the role definition to delete.", - "x-ms-skip-url-encoding": true, - "x-ms-parameter-location": "method" - }, - "RoleDefinitionNameParameter": { - "name": "roleDefinitionName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the role definition to delete.", - "x-ms-skip-url-encoding": true, - "x-ms-parameter-location": "method" - }, - "RoleDefinitionCreateParameters": { - "name": "roleDefinition", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/RoleDefinition" - }, - "description": "Parameters for the role definition.", - "x-ms-parameter-location": "method" - } - } -} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/ClassicAdministrators_List.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/ClassicAdministrators_List.json deleted file mode 100644 index 37d24f11fc21..000000000000 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/ClassicAdministrators_List.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parameters": { - "subscriptionId": "a925f2f7-5c63-4b7b-8799-25a5f97bc3b2", - "api-version": "2020-03-01-preview" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "properties": { - "emailAddress": "test@test.com", - "role": "ServiceAdministrator;AccountAdministrator" - }, - "id": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/providers/Microsoft.Authorization/classicAdministrators/28832768-55e0-416e-9eb5-b3bf3d3f241a", - "type": "Microsoft.Authorization/classicAdministrators", - "name": "28832768-55e0-416e-9eb5-b3bf3d3f241a" - }, - { - "properties": { - "emailAddress": "coadmin@test.com", - "role": "CoAdministrator" - }, - "id": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/providers/Microsoft.Authorization/classicAdministrators/4806b958-2a27-448c-aa75-daf320dc80c6", - "type": "Microsoft.Authorization/classicAdministrators", - "name": "4806b958-2a27-448c-aa75-daf320dc80c6" - } - ] - } - } - } -} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/DenyAssignments_CreateById.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/DenyAssignments_CreateById.json deleted file mode 100644 index cffd481b320b..000000000000 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/DenyAssignments_CreateById.json +++ /dev/null @@ -1,90 +0,0 @@ -{ - "parameters": { - "denyAssignmentId": "subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/providers/Microsoft.Authorization/denyAssignments/05c5a614-a7d6-4502-b150-c2fb455033ff", - "api-version": "2020-03-01-preview", - "parameters": { - "properties": { - "permissions": [ - { - "actions": [ - "Microsoft.Storage/*/read", - "Microsoft.Network/*/read" - ], - "notActions": null - } - ], - "principals": [ - { - "id": "ce2ce14e-85d7-4629-bdbc-454d0519d987", - "type": "User" - } - ], - "description": "Test deny assignment" - } - } - }, - "responses": { - "201": { - "body": { - "properties": { - "permissions": [ - { - "actions": [ - "Microsoft.Storage/*/read", - "Microsoft.Network/*/read" - ], - "notActions": null - } - ], - "principals": [ - { - "id": "ce2ce14e-85d7-4629-bdbc-454d0519d987", - "type": "User" - } - ], - "scope": "subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2", - "description": "Test deny assignment", - "isSystemProtected": false, - "createdOn": "2021-02-02T23:41:35.1395931Z", - "updatedOn": "2021-02-02T23:41:35.1395931Z", - "createdBy": "", - "updatedBy": "" - }, - "id": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/providers/Microsoft.Authorization/denyAssignments/05c5a614-a7d6-4502-b150-c2fb455033ff", - "type": "Microsoft.Authorization/denyAssignments", - "name": "05c5a614-a7d6-4502-b150-c2fb455033ff" - } - }, - "200": { - "body": { - "properties": { - "permissions": [ - { - "actions": [ - "Microsoft.Storage/*/read", - "Microsoft.Network/*/read" - ], - "notActions": null - } - ], - "principals": [ - { - "id": "ce2ce14e-85d7-4629-bdbc-454d0519d987", - "type": "User" - } - ], - "scope": "subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2", - "description": "Test deny assignment", - "isSystemProtected": false, - "createdOn": "2021-02-02T23:41:35.1395931Z", - "updatedOn": "2021-02-02T23:41:35.1395931Z", - "createdBy": "", - "updatedBy": "" - }, - "id": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/providers/Microsoft.Authorization/denyAssignments/05c5a614-a7d6-4502-b150-c2fb455033ff", - "type": "Microsoft.Authorization/denyAssignments", - "name": "05c5a614-a7d6-4502-b150-c2fb455033ff" - } - } - } -} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/DenyAssignments_CreateForResource.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/DenyAssignments_CreateForResource.json deleted file mode 100644 index d6a3bed2276f..000000000000 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/DenyAssignments_CreateForResource.json +++ /dev/null @@ -1,91 +0,0 @@ -{ - "parameters": { - "scope": "subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/resourceGroups/testrg/providers/Microsoft.DocumentDb/databaseAccounts/test-db-account", - "denyAssignmentName": "05c5a614-a7d6-4502-b150-c2fb455033ff", - "api-version": "2020-03-01-preview", - "parameters": { - "properties": { - "permissions": [ - { - "actions": [ - "Microsoft.Storage/*/read", - "Microsoft.Network/*/read" - ], - "notActions": null - } - ], - "principals": [ - { - "id": "ce2ce14e-85d7-4629-bdbc-454d0519d987", - "type": "User" - } - ], - "description": "Test deny assignment" - } - } - }, - "responses": { - "201": { - "body": { - "properties": { - "permissions": [ - { - "actions": [ - "Microsoft.Storage/*/read", - "Microsoft.Network/*/read" - ], - "notActions": null - } - ], - "principals": [ - { - "id": "ce2ce14e-85d7-4629-bdbc-454d0519d987", - "type": "User" - } - ], - "scope": "subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/resourceGroups/testrg/providers/Microsoft.DocumentDb/databaseAccounts/test-db-account", - "description": "Test deny assignment", - "isSystemProtected": false, - "createdOn": "2021-02-02T23:41:35.1395931Z", - "updatedOn": "2021-02-02T23:41:35.1395931Z", - "createdBy": "", - "updatedBy": "" - }, - "id": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/resourceGroups/testrg/providers/Microsoft.DocumentDb/databaseAccounts/test-db-account/providers/Microsoft.Authorization/denyAssignments/05c5a614-a7d6-4502-b150-c2fb455033ff", - "type": "Microsoft.Authorization/denyAssignments", - "name": "05c5a614-a7d6-4502-b150-c2fb455033ff" - } - }, - "200": { - "body": { - "properties": { - "permissions": [ - { - "actions": [ - "Microsoft.Storage/*/read", - "Microsoft.Network/*/read" - ], - "notActions": null - } - ], - "principals": [ - { - "id": "ce2ce14e-85d7-4629-bdbc-454d0519d987", - "type": "User" - } - ], - "scope": "subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/resourceGroups/testrg/providers/Microsoft.DocumentDb/databaseAccounts/test-db-account", - "description": "Test deny assignment", - "isSystemProtected": false, - "createdOn": "2021-02-02T23:41:35.1395931Z", - "updatedOn": "2021-02-02T23:41:35.1395931Z", - "createdBy": "", - "updatedBy": "" - }, - "id": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/resourceGroups/testrg/providers/Microsoft.DocumentDb/databaseAccounts/test-db-account/providers/Microsoft.Authorization/denyAssignments/05c5a614-a7d6-4502-b150-c2fb455033ff", - "type": "Microsoft.Authorization/denyAssignments", - "name": "05c5a614-a7d6-4502-b150-c2fb455033ff" - } - } - } -} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/DenyAssignments_CreateForResourceGroup.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/DenyAssignments_CreateForResourceGroup.json deleted file mode 100644 index f76c62be6221..000000000000 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/DenyAssignments_CreateForResourceGroup.json +++ /dev/null @@ -1,91 +0,0 @@ -{ - "parameters": { - "scope": "subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/resourceGroups/testrg", - "denyAssignmentName": "05c5a614-a7d6-4502-b150-c2fb455033ff", - "api-version": "2020-03-01-preview", - "parameters": { - "properties": { - "permissions": [ - { - "actions": [ - "Microsoft.Storage/*/read", - "Microsoft.Network/*/read" - ], - "notActions": null - } - ], - "principals": [ - { - "id": "ce2ce14e-85d7-4629-bdbc-454d0519d987", - "type": "User" - } - ], - "description": "Test deny assignment" - } - } - }, - "responses": { - "201": { - "body": { - "properties": { - "permissions": [ - { - "actions": [ - "Microsoft.Storage/*/read", - "Microsoft.Network/*/read" - ], - "notActions": null - } - ], - "principals": [ - { - "id": "ce2ce14e-85d7-4629-bdbc-454d0519d987", - "type": "User" - } - ], - "scope": "subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/resourceGroups/testrg", - "description": "Test deny assignment", - "isSystemProtected": false, - "createdOn": "2021-02-02T23:41:35.1395931Z", - "updatedOn": "2021-02-02T23:41:35.1395931Z", - "createdBy": "", - "updatedBy": "" - }, - "id": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/resourceGroups/testrg/providers/Microsoft.Authorization/denyAssignments/05c5a614-a7d6-4502-b150-c2fb455033ff", - "type": "Microsoft.Authorization/denyAssignments", - "name": "05c5a614-a7d6-4502-b150-c2fb455033ff" - } - }, - "200": { - "body": { - "properties": { - "permissions": [ - { - "actions": [ - "Microsoft.Storage/*/read", - "Microsoft.Network/*/read" - ], - "notActions": null - } - ], - "principals": [ - { - "id": "ce2ce14e-85d7-4629-bdbc-454d0519d987", - "type": "User" - } - ], - "scope": "subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/resourceGroups/testrg", - "description": "Test deny assignment", - "isSystemProtected": false, - "createdOn": "2021-02-02T23:41:35.1395931Z", - "updatedOn": "2021-02-02T23:41:35.1395931Z", - "createdBy": "", - "updatedBy": "" - }, - "id": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/resourceGroups/testrg/providers/Microsoft.Authorization/denyAssignments/05c5a614-a7d6-4502-b150-c2fb455033ff", - "type": "Microsoft.Authorization/denyAssignments", - "name": "05c5a614-a7d6-4502-b150-c2fb455033ff" - } - } - } -} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/DenyAssignments_CreateForSubscription.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/DenyAssignments_CreateForSubscription.json deleted file mode 100644 index c78c80a2256d..000000000000 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/DenyAssignments_CreateForSubscription.json +++ /dev/null @@ -1,91 +0,0 @@ -{ - "parameters": { - "scope": "subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2", - "denyAssignmentName": "05c5a614-a7d6-4502-b150-c2fb455033ff", - "api-version": "2020-03-01-preview", - "parameters": { - "properties": { - "permissions": [ - { - "actions": [ - "Microsoft.Storage/*/read", - "Microsoft.Network/*/read" - ], - "notActions": null - } - ], - "principals": [ - { - "id": "ce2ce14e-85d7-4629-bdbc-454d0519d987", - "type": "User" - } - ], - "description": "Test deny assignment" - } - } - }, - "responses": { - "201": { - "body": { - "properties": { - "permissions": [ - { - "actions": [ - "Microsoft.Storage/*/read", - "Microsoft.Network/*/read" - ], - "notActions": null - } - ], - "principals": [ - { - "id": "ce2ce14e-85d7-4629-bdbc-454d0519d987", - "type": "User" - } - ], - "scope": "subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2", - "description": "Test deny assignment", - "isSystemProtected": false, - "createdOn": "2021-02-02T23:41:35.1395931Z", - "updatedOn": "2021-02-02T23:41:35.1395931Z", - "createdBy": "", - "updatedBy": "" - }, - "id": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/providers/Microsoft.Authorization/denyAssignments/05c5a614-a7d6-4502-b150-c2fb455033ff", - "type": "Microsoft.Authorization/denyAssignments", - "name": "05c5a614-a7d6-4502-b150-c2fb455033ff" - } - }, - "200": { - "body": { - "properties": { - "permissions": [ - { - "actions": [ - "Microsoft.Storage/*/read", - "Microsoft.Network/*/read" - ], - "notActions": null - } - ], - "principals": [ - { - "id": "ce2ce14e-85d7-4629-bdbc-454d0519d987", - "type": "User" - } - ], - "scope": "subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2", - "description": "Test deny assignment", - "isSystemProtected": false, - "createdOn": "2021-02-02T23:41:35.1395931Z", - "updatedOn": "2021-02-02T23:41:35.1395931Z", - "createdBy": "", - "updatedBy": "" - }, - "id": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/providers/Microsoft.Authorization/denyAssignments/05c5a614-a7d6-4502-b150-c2fb455033ff", - "type": "Microsoft.Authorization/denyAssignments", - "name": "05c5a614-a7d6-4502-b150-c2fb455033ff" - } - } - } -} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/DenyAssignments_Delete.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/DenyAssignments_Delete.json deleted file mode 100644 index e0885b6a2993..000000000000 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/DenyAssignments_Delete.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "parameters": { - "scope": "subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2", - "denyAssignmentName": "b0f43c54-e787-4862-89b1-a653fa9cf747", - "api-version": "2020-03-01-preview" - }, - "responses": { - "200": { - "body": { - "properties": { - "permissions": [ - { - "actions": [ - "Microsoft.Storage/*/read", - "Microsoft.Network/*/read" - ], - "notActions": null - } - ], - "principals": [ - { - "id": "ce2ce14e-85d7-4629-bdbc-454d0519d987", - "type": "User" - } - ], - "scope": "subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2", - "description": "Test deny assignment", - "isSystemProtected": false, - "createdOn": "2021-02-02T23:41:35.1395931Z", - "updatedOn": "2021-02-02T23:41:35.1395931Z", - "createdBy": "", - "updatedBy": "" - }, - "id": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/providers/Microsoft.Authorization/denyAssignments/05c5a614-a7d6-4502-b150-c2fb455033ff", - "type": "Microsoft.Authorization/denyAssignments", - "name": "05c5a614-a7d6-4502-b150-c2fb455033ff" - } - }, - "204": {} - } -} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/DenyAssignments_DeleteById.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/DenyAssignments_DeleteById.json deleted file mode 100644 index 8aa4acbe98f3..000000000000 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/DenyAssignments_DeleteById.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "parameters": { - "denyAssignmentId": "subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/providers/Microsoft.Authorization/denyAssignments/05c5a614-a7d6-4502-b150-c2fb455033ff", - "api-version": "2020-03-01-preview" - }, - "responses": { - "200": { - "body": { - "properties": { - "permissions": [ - { - "actions": [ - "Microsoft.Storage/*/read", - "Microsoft.Network/*/read" - ], - "notActions": null - } - ], - "principals": [ - { - "id": "ce2ce14e-85d7-4629-bdbc-454d0519d987", - "type": "User" - } - ], - "scope": "subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2", - "description": "Test deny assignment", - "isSystemProtected": false, - "createdOn": "2021-02-02T23:41:35.1395931Z", - "updatedOn": "2021-02-02T23:41:35.1395931Z", - "createdBy": "", - "updatedBy": "" - }, - "id": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/providers/Microsoft.Authorization/denyAssignments/05c5a614-a7d6-4502-b150-c2fb455033ff", - "type": "Microsoft.Authorization/denyAssignments", - "name": "05c5a614-a7d6-4502-b150-c2fb455033ff" - } - }, - "204": {} - } -} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/DenyAssignments_Get.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/DenyAssignments_Get.json deleted file mode 100644 index 699dc160c6f7..000000000000 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/DenyAssignments_Get.json +++ /dev/null @@ -1,48 +0,0 @@ -{ - "parameters": { - "scope": "subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/resourcegroups/testrg", - "denyAssignmentName": "0b5fe924-9a61-425c-96af-cfe6e287ca2d", - "api-version": "2020-03-01-preview" - }, - "responses": { - "200": { - "body": { - "properties": { - "denyAssignmentName": "Deny assignment name", - "description": "Deny assignment description", - "permissions": [ - { - "actions": [ - "*" - ], - "notActions": [ - "Microsoft.Authorization/*/Delete", - "Microsoft.Authorization/*/Write" - ], - "dataActions": [], - "notDataActions": [] - } - ], - "scope": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/resourcegroups/testrg", - "doNotApplyToChildScopes": false, - "principals": [ - { - "id": "principalId1", - "type": "principalType1" - } - ], - "excludePrincipals": [ - { - "id": "principalId2", - "type": "principalType2" - } - ], - "isSystemProtected": true - }, - "id": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/resourcegroups/testrg/providers/Microsoft.Authorization/denyAssignments/0b5fe924-9a61-425c-96af-cfe6e287ca2d", - "type": "Microsoft.Authorization/denyAssignments", - "name": "0b5fe924-9a61-425c-96af-cfe6e287ca2d" - } - } - } -} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/DenyAssignments_GetById.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/DenyAssignments_GetById.json deleted file mode 100644 index 7707a55df084..000000000000 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/DenyAssignments_GetById.json +++ /dev/null @@ -1,47 +0,0 @@ -{ - "parameters": { - "denyAssignmentId": "subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/resourcegroups/testrg/providers/Microsoft.Authorization/denyAssignments/0b5fe924-9a61-425c-96af-cfe6e287ca2d", - "api-version": "2020-03-01-preview" - }, - "responses": { - "200": { - "body": { - "properties": { - "denyAssignmentName": "Deny assignment name", - "description": "Deny assignment description", - "permissions": [ - { - "actions": [ - "*" - ], - "notActions": [ - "Microsoft.Authorization/*/Delete", - "Microsoft.Authorization/*/Write" - ], - "dataActions": [], - "notDataActions": [] - } - ], - "scope": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/resourcegroups/testrg", - "doNotApplyToChildScopes": false, - "principals": [ - { - "id": "principalId1", - "type": "principalType1" - } - ], - "excludePrincipals": [ - { - "id": "principalId2", - "type": "principalType2" - } - ], - "isSystemProtected": true - }, - "id": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/resourcegroups/testrg/providers/Microsoft.Authorization/denyAssignments/0b5fe924-9a61-425c-96af-cfe6e287ca2d", - "type": "Microsoft.Authorization/denyAssignments", - "name": "0b5fe924-9a61-425c-96af-cfe6e287ca2d" - } - } - } -} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/DenyAssignments_ListForResource.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/DenyAssignments_ListForResource.json deleted file mode 100644 index b90bf30669d5..000000000000 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/DenyAssignments_ListForResource.json +++ /dev/null @@ -1,57 +0,0 @@ -{ - "parameters": { - "subscriptionId": "a925f2f7-5c63-4b7b-8799-25a5f97bc3b2", - "resourceGroupName": "testrg", - "resourceProviderNamespace": "Microsoft.DocumentDb", - "resourceType": "databaseAccounts", - "resourceName": "test-db-account", - "api-version": "2020-03-01-preview" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "properties": { - "denyAssignmentName": "Deny assignment name", - "description": "Deny assignment description", - "permissions": [ - { - "actions": [ - "*" - ], - "notActions": [ - "Microsoft.Authorization/*/Delete", - "Microsoft.Authorization/*/Write" - ], - "dataActions": [ - "action" - ], - "notDataActions": [] - } - ], - "scope": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/resourcegroups/testrg/providers/Microsoft.DocumentDb/databaseAccounts/test-db-account", - "doNotApplyToChildScopes": false, - "principals": [ - { - "id": "00000000-0000-0000-0000-000000000000", - "type": "Everyone" - } - ], - "excludePrincipals": [ - { - "id": "2c2f5b3a-5bae-4b80-b4d0-eb75e484a2e8", - "type": "User" - } - ], - "isSystemProtected": true - }, - "id": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/resourcegroups/testrg/providers/Microsoft.DocumentDb/databaseAccounts/test-db-account/providers/Microsoft.Authorization/denyAssignments/0b5fe924-9a61-425c-96af-cfe6e287ca2d", - "type": "Microsoft.Authorization/denyAssignments", - "name": "0b5fe924-9a61-425c-96af-cfe6e287ca2d" - } - ] - } - } - } -} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/DenyAssignments_ListForResourceGroup.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/DenyAssignments_ListForResourceGroup.json deleted file mode 100644 index 8dcab3438cb4..000000000000 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/DenyAssignments_ListForResourceGroup.json +++ /dev/null @@ -1,54 +0,0 @@ -{ - "parameters": { - "subscriptionId": "a925f2f7-5c63-4b7b-8799-25a5f97bc3b2", - "resourceGroupName": "testrg", - "api-version": "2020-03-01-preview" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "properties": { - "denyAssignmentName": "Deny assignment name", - "description": "Deny assignment description", - "permissions": [ - { - "actions": [ - "*" - ], - "notActions": [ - "Microsoft.Authorization/*/Delete", - "Microsoft.Authorization/*/Write" - ], - "dataActions": [ - "action" - ], - "notDataActions": [] - } - ], - "scope": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/resourcegroups/testrg", - "doNotApplyToChildScopes": false, - "principals": [ - { - "id": "00000000-0000-0000-0000-000000000000", - "type": "Everyone" - } - ], - "excludePrincipals": [ - { - "id": "2c2f5b3a-5bae-4b80-b4d0-eb75e484a2e8", - "type": "User" - } - ], - "isSystemProtected": true - }, - "id": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/resourcegroups/testrg/providers/Microsoft.Authorization/denyAssignments/0b5fe924-9a61-425c-96af-cfe6e287ca2d", - "type": "Microsoft.Authorization/denyAssignments", - "name": "0b5fe924-9a61-425c-96af-cfe6e287ca2d" - } - ] - } - } - } -} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/DenyAssignments_ListForScope.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/DenyAssignments_ListForScope.json deleted file mode 100644 index 2a67dcba3881..000000000000 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/DenyAssignments_ListForScope.json +++ /dev/null @@ -1,53 +0,0 @@ -{ - "parameters": { - "scope": "subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/resourcegroups/testrg", - "api-version": "2020-03-01-preview" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "properties": { - "denyAssignmentName": "Deny assignment name", - "description": "Deny assignment description", - "permissions": [ - { - "actions": [ - "*" - ], - "notActions": [ - "Microsoft.Authorization/*/Delete", - "Microsoft.Authorization/*/Write" - ], - "dataActions": [ - "action" - ], - "notDataActions": [] - } - ], - "scope": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/resourcegroups/testrg", - "doNotApplyToChildScopes": false, - "principals": [ - { - "id": "00000000-0000-0000-0000-000000000000", - "type": "Everyone" - } - ], - "excludePrincipals": [ - { - "id": "2c2f5b3a-5bae-4b80-b4d0-eb75e484a2e8", - "type": "User" - } - ], - "isSystemProtected": true - }, - "id": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/resourcegroups/testrg/providers/Microsoft.Authorization/denyAssignments/0b5fe924-9a61-425c-96af-cfe6e287ca2d", - "type": "Microsoft.Authorization/denyAssignments", - "name": "0b5fe924-9a61-425c-96af-cfe6e287ca2d" - } - ] - } - } - } -} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/DenyAssignments_ListForSubscription.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/DenyAssignments_ListForSubscription.json deleted file mode 100644 index 812bfabd8b7e..000000000000 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/DenyAssignments_ListForSubscription.json +++ /dev/null @@ -1,53 +0,0 @@ -{ - "parameters": { - "subscriptionId": "a925f2f7-5c63-4b7b-8799-25a5f97bc3b2", - "api-version": "2020-03-01-preview" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "properties": { - "denyAssignmentName": "Deny assignment name", - "description": "Deny assignment description", - "permissions": [ - { - "actions": [ - "*" - ], - "notActions": [ - "Microsoft.Authorization/*/Delete", - "Microsoft.Authorization/*/Write" - ], - "dataActions": [ - "action" - ], - "notDataActions": [] - } - ], - "scope": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2", - "doNotApplyToChildScopes": false, - "principals": [ - { - "id": "00000000-0000-0000-0000-000000000000", - "type": "Everyone" - } - ], - "excludePrincipals": [ - { - "id": "2c2f5b3a-5bae-4b80-b4d0-eb75e484a2e8", - "type": "User" - } - ], - "isSystemProtected": true - }, - "id": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/providers/Microsoft.Authorization/denyAssignments/0b5fe924-9a61-425c-96af-cfe6e287ca2d", - "type": "Microsoft.Authorization/denyAssignments", - "name": "0b5fe924-9a61-425c-96af-cfe6e287ca2d" - } - ] - } - } - } -} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/GlobalAdministrator_ElevateAccess.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/GlobalAdministrator_ElevateAccess.json deleted file mode 100644 index 39c5a40e6794..000000000000 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/GlobalAdministrator_ElevateAccess.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "parameters": { - "api-version": "2020-03-01-preview" - }, - "responses": { - "200": {} - } -} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/Permissions_ListForResource.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/Permissions_ListForResource.json deleted file mode 100644 index 49a72fe4ba69..000000000000 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/Permissions_ListForResource.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "parameters": { - "subscriptionId": "a925f2f7-5c63-4b7b-8799-25a5f97bc3b2", - "resourceGroupName": "testrg", - "resourceProviderNamespace": "Microsoft.DocumentDb", - "resourceType": "databaseAccounts", - "resourceName": "test-db-account", - "api-version": "2020-03-01-preview" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "actions": [ - "*" - ], - "notActions": [ - "Microsoft.Authorization/*/Delete", - "Microsoft.Authorization/*/Write" - ], - "dataActions": [], - "notDataActions": [] - } - ] - } - } - } -} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/Permissions_ListForResourceGroup.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/Permissions_ListForResourceGroup.json deleted file mode 100644 index 2bde7f241927..000000000000 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/Permissions_ListForResourceGroup.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "parameters": { - "subscriptionId": "a925f2f7-5c63-4b7b-8799-25a5f97bc3b2", - "resourceGroupName": "testrg", - "api-version": "2020-03-01-preview" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "actions": [ - "*" - ], - "notActions": [ - "Microsoft.Authorization/*/Delete", - "Microsoft.Authorization/*/Write" - ], - "dataActions": [], - "notDataActions": [] - } - ] - } - } - } -} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/Permissions_ListForSubscription.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/Permissions_ListForSubscription.json deleted file mode 100644 index 25a484325417..000000000000 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/Permissions_ListForSubscription.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "parameters": { - "subscriptionId": "a925f2f7-5c63-4b7b-8799-25a5f97bc3b2", - "api-version": "2020-03-01-preview" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "actions": [ - "*" - ], - "notActions": [ - "Microsoft.Authorization/*/Delete", - "Microsoft.Authorization/*/Write" - ], - "dataActions": [], - "notDataActions": [] - } - ] - } - } - } -} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/ProviderOperations_List.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/ProviderOperations_List.json deleted file mode 100644 index 4ef73e990125..000000000000 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/ProviderOperations_List.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "parameters": { - "api-version": "2020-03-01-preview" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "id": "id", - "name": "name", - "type": "type", - "displayName": "displayName", - "resourceTypes": [ - { - "name": "name", - "displayName": "name", - "operations": [] - } - ], - "operations": [] - } - ] - } - } - } -} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/ProviderOperations_ListForRP.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/ProviderOperations_ListForRP.json deleted file mode 100644 index 378e116df681..000000000000 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/ProviderOperations_ListForRP.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "parameters": { - "resourceProviderNamespace": "Microsoft.DocumentDb", - "api-version": "2020-03-01-preview" - }, - "responses": { - "200": { - "body": { - "id": "id", - "name": "name", - "type": "type", - "displayName": "displayName", - "resourceTypes": [ - { - "name": "name", - "displayName": "name", - "operations": [] - } - ], - "operations": [] - } - } - } -} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/RoleDefinitions_CreateById.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/RoleDefinitions_CreateById.json deleted file mode 100644 index d5d3a716ff37..000000000000 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/RoleDefinitions_CreateById.json +++ /dev/null @@ -1,54 +0,0 @@ -{ - "parameters": { - "roleDefinitionId": "subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/providers/Microsoft.Authorization/roleDefinitions/05021abc-b46c-4ee8-b403-c7535f1bf1a5", - "api-version": "2020-03-01-preview", - "roleDefinition": { - "properties": { - "roleName": "Test Role", - "description": "Custom role to read Network and Storage services", - "assignableScopes": [ - "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2" - ], - "permissions": [ - { - "actions": [ - "Microsoft.Storage/*/read", - "Microsoft.Network/*/read" - ], - "notActions": [], - "dataActions": [], - "notDataActions": [] - } - ] - } - } - }, - "responses": { - "201": { - "body": { - "properties": { - "roleName": "Test Role", - "type": "customRole", - "description": "Custom role to read Network and Storage services", - "assignableScopes": [ - "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2" - ], - "permissions": [ - { - "actions": [ - "Microsoft.Storage/*/read", - "Microsoft.Network/*/read" - ], - "notActions": [], - "dataActions": [], - "notDataActions": [] - } - ] - }, - "id": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/providers/Microsoft.Authorization/roleDefinitions/05021abc-b46c-4ee8-b403-c7535f1bf1a5", - "type": "Microsoft.Authorization/roleDefinitions", - "name": "05021abc-b46c-4ee8-b403-c7535f1bf1a5" - } - } - } -} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/RoleDefinitions_CreateForResource.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/RoleDefinitions_CreateForResource.json deleted file mode 100644 index a8cbe4db9fb1..000000000000 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/RoleDefinitions_CreateForResource.json +++ /dev/null @@ -1,57 +0,0 @@ -{ - "parameters": { - "scope": "subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/resourceGroups/testrg/providers/Microsoft.DocumentDb/databaseAccounts/test-db-account", - "roleDefinitionName": "05021abc-b46c-4ee8-b403-c7535f1bf1a5", - "api-version": "2020-03-01-preview", - "roleDefinition": { - "properties": { - "roleName": "Test Role", - "description": "Custom role to read Network and Storage services", - "assignableScopes": [ - "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/resourceGroups/testrg/providers/Microsoft.DocumentDb/databaseAccounts/test-db-account", - "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/" - ], - "permissions": [ - { - "actions": [ - "Microsoft.Storage/*/read", - "Microsoft.Network/*/read" - ], - "notActions": [], - "dataActions": [], - "notDataActions": [] - } - ] - } - } - }, - "responses": { - "201": { - "body": { - "properties": { - "roleName": "Test Role", - "type": "customRole", - "description": "Custom role to read Network and Storage services", - "assignableScopes": [ - "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/resourceGroups/testrg/providers/Microsoft.DocumentDb/databaseAccounts/test-db-account", - "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/" - ], - "permissions": [ - { - "actions": [ - "Microsoft.Storage/*/read", - "Microsoft.Network/*/read" - ], - "notActions": [], - "dataActions": [], - "notDataActions": [] - } - ] - }, - "id": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/resourceGroups/testrg/providers/Microsoft.DocumentDb/databaseAccounts/test-db-account/providers/Microsoft.Authorization/roleDefinitions/05021abc-b46c-4ee8-b403-c7535f1bf1a5", - "type": "Microsoft.Authorization/roleDefinitions", - "name": "05021abc-b46c-4ee8-b403-c7535f1bf1a5" - } - } - } -} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/RoleDefinitions_CreateForResourceGroup.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/RoleDefinitions_CreateForResourceGroup.json deleted file mode 100644 index 5e700df34233..000000000000 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/RoleDefinitions_CreateForResourceGroup.json +++ /dev/null @@ -1,57 +0,0 @@ -{ - "parameters": { - "scope": "subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/resourceGroups/testrg", - "roleDefinitionName": "05021abc-b46c-4ee8-b403-c7535f1bf1a5", - "api-version": "2020-03-01-preview", - "roleDefinition": { - "properties": { - "roleName": "Test Role", - "description": "Custom role to read Network and Storage services", - "assignableScopes": [ - "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/resourceGroups/testrg", - "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2" - ], - "permissions": [ - { - "actions": [ - "Microsoft.Storage/*/read", - "Microsoft.Network/*/read" - ], - "notActions": [], - "dataActions": [], - "notDataActions": [] - } - ] - } - } - }, - "responses": { - "201": { - "body": { - "properties": { - "roleName": "Test Role", - "type": "customRole", - "description": "Custom role to read Network and Storage services", - "assignableScopes": [ - "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/resourceGroups/testrg", - "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2" - ], - "permissions": [ - { - "actions": [ - "Microsoft.Storage/*/read", - "Microsoft.Network/*/read" - ], - "notActions": [], - "dataActions": [], - "notDataActions": [] - } - ] - }, - "id": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/resourceGroups/testrg/providers/Microsoft.Authorization/roleDefinitions/05021abc-b46c-4ee8-b403-c7535f1bf1a5", - "type": "Microsoft.Authorization/roleDefinitions", - "name": "05021abc-b46c-4ee8-b403-c7535f1bf1a5" - } - } - } -} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/RoleDefinitions_CreateForSubscription.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/RoleDefinitions_CreateForSubscription.json deleted file mode 100644 index 14b28af8d743..000000000000 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/RoleDefinitions_CreateForSubscription.json +++ /dev/null @@ -1,55 +0,0 @@ -{ - "parameters": { - "scope": "subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2", - "roleDefinitionName": "05021abc-b46c-4ee8-b403-c7535f1bf1a5", - "api-version": "2020-03-01-preview", - "roleDefinition": { - "properties": { - "roleName": "Test Role", - "description": "Custom role to read Network and Storage services", - "assignableScopes": [ - "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2" - ], - "permissions": [ - { - "actions": [ - "Microsoft.Storage/*/read", - "Microsoft.Network/*/read" - ], - "notActions": [], - "dataActions": [], - "notDataActions": [] - } - ] - } - } - }, - "responses": { - "201": { - "body": { - "properties": { - "roleName": "Test Role", - "type": "customRole", - "description": "Custom role to read Network and Storage services", - "assignableScopes": [ - "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2" - ], - "permissions": [ - { - "actions": [ - "Microsoft.Storage/*/read", - "Microsoft.Network/*/read" - ], - "notActions": [], - "dataActions": [], - "notDataActions": [] - } - ] - }, - "id": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/providers/Microsoft.Authorization/roleDefinitions/05021abc-b46c-4ee8-b403-c7535f1bf1a5", - "type": "Microsoft.Authorization/roleDefinitions", - "name": "05021abc-b46c-4ee8-b403-c7535f1bf1a5" - } - } - } -} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/RoleDefinitions_Delete.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/RoleDefinitions_Delete.json deleted file mode 100644 index 633061f8407a..000000000000 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/RoleDefinitions_Delete.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "parameters": { - "scope": "subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2", - "roleDefinitionName": "05021abc-b46c-4ee8-b403-c7535f1bf1a5", - "api-version": "2020-03-01-preview" - }, - "responses": { - "200": { - "body": { - "properties": { - "roleName": "Test Role", - "type": "customRole", - "description": "Custom role to read Network and Storage services", - "assignableScopes": [ - "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2" - ], - "permissions": [ - { - "actions": [ - "Microsoft.Storage/*/read", - "Microsoft.Network/*/read" - ], - "notActions": [], - "dataActions": [], - "notDataActions": [] - } - ] - }, - "id": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/providers/Microsoft.Authorization/roleDefinitions/05021abc-b46c-4ee8-b403-c7535f1bf1a5", - "type": "Microsoft.Authorization/roleDefinitions", - "name": "05021abc-b46c-4ee8-b403-c7535f1bf1a5" - } - }, - "204": {} - } -} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/RoleDefinitions_DeleteById.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/RoleDefinitions_DeleteById.json deleted file mode 100644 index f397a327caee..000000000000 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/RoleDefinitions_DeleteById.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parameters": { - "roleDefinitionId": "subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/providers/Microsoft.Authorization/roleDefinitions/05021abc-b46c-4ee8-b403-c7535f1bf1a5", - "api-version": "2020-03-01-preview" - }, - "responses": { - "200": { - "body": { - "properties": { - "roleName": "Test Role", - "type": "customRole", - "description": "Custom role to read Network and Storage services", - "assignableScopes": [ - "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2" - ], - "permissions": [ - { - "actions": [ - "Microsoft.Storage/*/read", - "Microsoft.Network/*/read" - ], - "notActions": [], - "dataActions": [], - "notDataActions": [] - } - ] - }, - "id": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/providers/Microsoft.Authorization/roleDefinitions/05021abc-b46c-4ee8-b403-c7535f1bf1a5", - "type": "Microsoft.Authorization/roleDefinitions", - "name": "05021abc-b46c-4ee8-b403-c7535f1bf1a5" - } - }, - "204": {} - } -} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/RoleDefinitions_Get.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/RoleDefinitions_Get.json deleted file mode 100644 index 6a5428fcc555..000000000000 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/RoleDefinitions_Get.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parameters": { - "scope": "subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2", - "roleDefinitionName": "05021abc-b46c-4ee8-b403-c7535f1bf1a5", - "api-version": "2020-03-01-preview" - }, - "responses": { - "200": { - "body": { - "properties": { - "roleName": "Test Role", - "type": "customRole", - "description": "Custom role to read Network and Storage services", - "assignableScopes": [ - "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2" - ], - "permissions": [ - { - "actions": [ - "Microsoft.Storage/*/read", - "Microsoft.Network/*/read" - ], - "notActions": [], - "dataActions": [], - "notDataActions": [] - } - ] - }, - "id": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/providers/Microsoft.Authorization/roleDefinitions/05021abc-b46c-4ee8-b403-c7535f1bf1a5", - "type": "Microsoft.Authorization/roleDefinitions", - "name": "05021abc-b46c-4ee8-b403-c7535f1bf1a5" - } - } - } -} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/RoleDefinitions_GetById.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/RoleDefinitions_GetById.json deleted file mode 100644 index 3e607dbbd680..000000000000 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/RoleDefinitions_GetById.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "parameters": { - "roleDefinitionId": "subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/providers/Microsoft.Authorization/roleDefinitions/05021abc-b46c-4ee8-b403-c7535f1bf1a5", - "api-version": "2020-03-01-preview" - }, - "responses": { - "200": { - "body": { - "properties": { - "roleName": "Test Role", - "type": "customRole", - "description": "Custom role to read Network and Storage services", - "assignableScopes": [ - "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2" - ], - "permissions": [ - { - "actions": [ - "Microsoft.Storage/*/read", - "Microsoft.Network/*/read" - ], - "notActions": [], - "dataActions": [], - "notDataActions": [] - } - ] - }, - "id": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/providers/Microsoft.Authorization/roleDefinitions/05021abc-b46c-4ee8-b403-c7535f1bf1a5", - "type": "Microsoft.Authorization/roleDefinitions", - "name": "05021abc-b46c-4ee8-b403-c7535f1bf1a5" - } - } - } -} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/RoleDefinitions_ListForResource.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/RoleDefinitions_ListForResource.json deleted file mode 100644 index 8cbfce4e394d..000000000000 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/RoleDefinitions_ListForResource.json +++ /dev/null @@ -1,42 +0,0 @@ -{ - "parameters": { - "subscriptionId": "a925f2f7-5c63-4b7b-8799-25a5f97bc3b2", - "resourceGroupName": "testrg", - "resourceProviderNamespace": "Microsoft.DocumentDb", - "resourceType": "databaseAccounts", - "resourceName": "test-db-account", - "api-version": "2020-03-01-preview" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "properties": { - "roleName": "Test Role", - "type": "customRole", - "description": "Custom role to read Network and Storage services", - "assignableScopes": [ - "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/resourceGroups/testrg/providers/Microsoft.DocumentDb/databaseAccounts/test-db-account" - ], - "permissions": [ - { - "actions": [ - "Microsoft.Storage/*/read", - "Microsoft.Network/*/read" - ], - "notActions": [], - "dataActions": [], - "notDataActions": [] - } - ] - }, - "id": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/resourceGroups/testrg/providers/Microsoft.DocumentDb/databaseAccounts/test-db-account/providers/Microsoft.Authorization/roleDefinitions/05021abc-b46c-4ee8-b403-c7535f1bf1a5", - "type": "Microsoft.Authorization/roleDefinitions", - "name": "05021abc-b46c-4ee8-b403-c7535f1bf1a5" - } - ] - } - } - } -} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/RoleDefinitions_ListForResourceGroup.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/RoleDefinitions_ListForResourceGroup.json deleted file mode 100644 index f407a566c75c..000000000000 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/RoleDefinitions_ListForResourceGroup.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "parameters": { - "scope": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/resourceGroups/testrg", - "subscriptionId": "a925f2f7-5c63-4b7b-8799-25a5f97bc3b2", - "resourceGroupName": "testrg", - "api-version": "2020-03-01-preview" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "properties": { - "roleName": "Test Role", - "type": "customRole", - "description": "Custom role to read Network and Storage services", - "assignableScopes": [ - "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/resourceGroups/testrg" - ], - "permissions": [ - { - "actions": [ - "Microsoft.Storage/*/read", - "Microsoft.Network/*/read" - ], - "notActions": [], - "dataActions": [], - "notDataActions": [] - } - ] - }, - "id": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/resourceGroups/testrg/providers/Microsoft.Authorization/roleDefinitions/05021abc-b46c-4ee8-b403-c7535f1bf1a5", - "type": "Microsoft.Authorization/roleDefinitions", - "name": "05021abc-b46c-4ee8-b403-c7535f1bf1a5" - } - ] - } - } - } -} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/RoleDefinitions_ListForScope.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/RoleDefinitions_ListForScope.json deleted file mode 100644 index 27678f0f33ee..000000000000 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/RoleDefinitions_ListForScope.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "parameters": { - "scope": "subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2", - "api-version": "2020-03-01-preview" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "properties": { - "roleName": "Test Role", - "type": "customRole", - "description": "Custom role to read Network and Storage services", - "assignableScopes": [ - "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2" - ], - "permissions": [ - { - "actions": [ - "Microsoft.Storage/*/read", - "Microsoft.Network/*/read" - ], - "notActions": [], - "dataActions": [], - "notDataActions": [] - } - ] - }, - "id": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/providers/Microsoft.Authorization/roleDefinitions/05021abc-b46c-4ee8-b403-c7535f1bf1a5", - "type": "Microsoft.Authorization/roleDefinitions", - "name": "05021abc-b46c-4ee8-b403-c7535f1bf1a5" - } - ] - } - } - } -} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/RoleDefinitions_ListForSubscription.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/RoleDefinitions_ListForSubscription.json deleted file mode 100644 index 7caa4c2a0576..000000000000 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-03-01-preview/examples/RoleDefinitions_ListForSubscription.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "parameters": { - "subscriptionId": "a925f2f7-5c63-4b7b-8799-25a5f97bc3b2", - "api-version": "2020-03-01-preview" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "properties": { - "roleName": "Test Role", - "type": "customRole", - "description": "Custom role to read Network and Storage services", - "assignableScopes": [ - "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2" - ], - "permissions": [ - { - "actions": [ - "Microsoft.Storage/*/read", - "Microsoft.Network/*/read" - ], - "notActions": [], - "dataActions": [], - "notDataActions": [] - } - ] - }, - "id": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/providers/Microsoft.Authorization/roleDefinitions/05021abc-b46c-4ee8-b403-c7535f1bf1a5", - "type": "Microsoft.Authorization/roleDefinitions", - "name": "05021abc-b46c-4ee8-b403-c7535f1bf1a5" - } - ] - } - } - } -} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-04-01-preview/authorization-RoleAssignmentsCalls.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-04-01-preview/authorization-RoleAssignmentsCalls.json index 07214ae149cf..3e0e3a787eee 100644 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-04-01-preview/authorization-RoleAssignmentsCalls.json +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-04-01-preview/authorization-RoleAssignmentsCalls.json @@ -83,6 +83,9 @@ }, { "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/TenantIdQueryParameter" } ], "responses": { @@ -133,6 +136,9 @@ }, { "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/TenantIdQueryParameter" } ], "responses": { @@ -185,6 +191,9 @@ }, { "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/TenantIdQueryParameter" } ], "responses": { @@ -252,13 +261,6 @@ "$ref": "#/definitions/RoleAssignment" } }, - "500": { - "x-ms-error-response": true, - "description": "Error.", - "schema": { - "$ref": "#/definitions/CustomErrorResponse" - } - }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -296,6 +298,9 @@ }, { "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/TenantIdQueryParameter" } ], "responses": { @@ -337,6 +342,9 @@ }, { "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/TenantIdQueryParameter" } ], "responses": { @@ -397,13 +405,6 @@ "$ref": "#/definitions/RoleAssignment" } }, - "500": { - "x-ms-error-response": true, - "description": "Error.", - "schema": { - "$ref": "#/definitions/CustomErrorResponse" - } - }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -434,6 +435,9 @@ }, { "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/TenantIdQueryParameter" } ], "responses": { @@ -477,6 +481,9 @@ }, { "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/TenantIdQueryParameter" } ], "responses": { @@ -529,6 +536,9 @@ }, { "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/TenantIdQueryParameter" } ], "responses": { @@ -558,15 +568,6 @@ } }, "definitions": { - "CustomErrorResponse": { - "properties": { - "message": { - "type": "string", - "description": "Description of the error." - } - }, - "description": "Descriptive error response." - }, "RoleAssignmentFilter": { "properties": { "principalId": { @@ -776,6 +777,14 @@ "type": "string", "description": "The namespace of the resource provider.", "x-ms-parameter-location": "method" + }, + "TenantIdQueryParameter": { + "name": "tenantId", + "in": "query", + "required": false, + "type": "string", + "description": "Tenant ID for cross-tenant request", + "x-ms-parameter-location": "method" } } } diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-04-01-preview/examples/PutRoleAssignment.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-04-01-preview/examples/PutRoleAssignment.json index cd628b536a42..c87cfe4307e7 100644 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-04-01-preview/examples/PutRoleAssignment.json +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-04-01-preview/examples/PutRoleAssignment.json @@ -32,11 +32,6 @@ "type": "Microsoft.Authorization/roleAssignments", "name": "roleassignmentId" } - }, - "500": { - "body": { - "message": "Something went wrong." - } } } } diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-04-01-preview/examples/PutRoleAssignmentById.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-04-01-preview/examples/PutRoleAssignmentById.json index 7e84f0089ef7..965fb76e36b5 100644 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-04-01-preview/examples/PutRoleAssignmentById.json +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-04-01-preview/examples/PutRoleAssignmentById.json @@ -32,11 +32,6 @@ "type": "Microsoft.Authorization/roleAssignments", "name": "roleassignmentId" } - }, - "500": { - "body": { - "message": "Something went wrong." - } } } } diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-08-01-preview/authorization-RoleAssignmentsCalls.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-08-01-preview/authorization-RoleAssignmentsCalls.json index 7d9930ea99db..3dba0536d271 100644 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-08-01-preview/authorization-RoleAssignmentsCalls.json +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-08-01-preview/authorization-RoleAssignmentsCalls.json @@ -50,6 +50,9 @@ }, { "$ref": "#/parameters/RoleAssignmentFilterParameter" + }, + { + "$ref": "#/parameters/TenantIdQueryParameter" } ], "responses": { @@ -96,6 +99,9 @@ }, { "$ref": "#/parameters/RoleAssignmentFilterParameter" + }, + { + "$ref": "#/parameters/TenantIdQueryParameter" } ], "responses": { @@ -151,6 +157,9 @@ }, { "$ref": "#/parameters/RoleAssignmentFilterParameter" + }, + { + "$ref": "#/parameters/TenantIdQueryParameter" } ], "responses": { @@ -194,6 +203,9 @@ }, { "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/TenantIdQueryParameter" } ], "responses": { @@ -249,13 +261,6 @@ "$ref": "#/definitions/RoleAssignment" } }, - "500": { - "x-ms-error-response": true, - "description": "Error.", - "schema": { - "$ref": "#/definitions/CustomErrorResponse" - } - }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -290,6 +295,9 @@ }, { "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/TenantIdQueryParameter" } ], "responses": { @@ -344,13 +352,6 @@ "$ref": "#/definitions/ValidationResponse" } }, - "500": { - "x-ms-error-response": true, - "description": "Error.", - "schema": { - "$ref": "#/definitions/CustomErrorResponse" - } - }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -384,6 +385,9 @@ }, { "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/TenantIdQueryParameter" } ], "responses": { @@ -424,6 +428,9 @@ }, { "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/TenantIdQueryParameter" } ], "responses": { @@ -476,13 +483,6 @@ "$ref": "#/definitions/RoleAssignment" } }, - "500": { - "x-ms-error-response": true, - "description": "Error.", - "schema": { - "$ref": "#/definitions/CustomErrorResponse" - } - }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -508,6 +508,9 @@ }, { "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/TenantIdQueryParameter" } ], "responses": { @@ -559,13 +562,6 @@ "$ref": "#/definitions/ValidationResponse" } }, - "500": { - "x-ms-error-response": true, - "description": "Error.", - "schema": { - "$ref": "#/definitions/CustomErrorResponse" - } - }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -585,15 +581,6 @@ } }, "definitions": { - "CustomErrorResponse": { - "properties": { - "message": { - "type": "string", - "description": "Description of the error." - } - }, - "description": "Descriptive error response." - }, "ValidationResponseErrorInfo": { "description": "Failed validation result details", "properties": { @@ -617,7 +604,7 @@ "type": "boolean", "description": "Whether or not validation succeeded" }, - "validationErrorInfo": { + "errorInfo": { "description": "Failed validation result details", "$ref": "#/definitions/ValidationResponseErrorInfo" } @@ -652,6 +639,7 @@ "RoleAssignmentProperties": { "properties": { "scope": { + "readOnly": true, "type": "string", "description": "The role assignment scope." }, @@ -806,6 +794,14 @@ }, "description": "Parameters for the role assignment.", "x-ms-parameter-location": "method" + }, + "TenantIdQueryParameter": { + "name": "tenantId", + "in": "query", + "required": false, + "type": "string", + "description": "Tenant ID for cross-tenant request", + "x-ms-parameter-location": "method" } } } diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-08-01-preview/examples/RoleAssignments_CreateById.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-08-01-preview/examples/RoleAssignments_CreateById.json index 14c86b512f5d..db70d29fde30 100644 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-08-01-preview/examples/RoleAssignments_CreateById.json +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-08-01-preview/examples/RoleAssignments_CreateById.json @@ -36,11 +36,6 @@ "type": "Microsoft.Authorization/roleAssignments", "name": "b0f43c54-e787-4862-89b1-a653fa9cf747" } - }, - "500": { - "body": { - "message": "Something went wrong." - } } } } diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-08-01-preview/examples/RoleAssignments_CreateForResource.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-08-01-preview/examples/RoleAssignments_CreateForResource.json index 3b3da95c7a67..c14a6a74ad1a 100644 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-08-01-preview/examples/RoleAssignments_CreateForResource.json +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-08-01-preview/examples/RoleAssignments_CreateForResource.json @@ -37,11 +37,6 @@ "type": "Microsoft.Authorization/roleAssignments", "name": "05c5a614-a7d6-4502-b150-c2fb455033ff" } - }, - "500": { - "body": { - "message": "Something went wrong." - } } } } diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-08-01-preview/examples/RoleAssignments_CreateForResourceGroup.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-08-01-preview/examples/RoleAssignments_CreateForResourceGroup.json index 098d4bf9c675..1c73b97300de 100644 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-08-01-preview/examples/RoleAssignments_CreateForResourceGroup.json +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-08-01-preview/examples/RoleAssignments_CreateForResourceGroup.json @@ -37,11 +37,6 @@ "type": "Microsoft.Authorization/roleAssignments", "name": "05c5a614-a7d6-4502-b150-c2fb455033ff" } - }, - "500": { - "body": { - "message": "Something went wrong." - } } } } diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-08-01-preview/examples/RoleAssignments_CreateForSubscription.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-08-01-preview/examples/RoleAssignments_CreateForSubscription.json index 45948d92d258..92e2f9ea5c3d 100644 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-08-01-preview/examples/RoleAssignments_CreateForSubscription.json +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-08-01-preview/examples/RoleAssignments_CreateForSubscription.json @@ -37,11 +37,6 @@ "type": "Microsoft.Authorization/roleAssignments", "name": "05c5a614-a7d6-4502-b150-c2fb455033ff" } - }, - "500": { - "body": { - "message": "Something went wrong." - } } } } diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-08-01-preview/examples/RoleAssignments_ValidateByIdInvalid.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-08-01-preview/examples/RoleAssignments_ValidateByIdInvalid.json index cd0596c2b1fc..ad6912ac1313 100644 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-08-01-preview/examples/RoleAssignments_ValidateByIdInvalid.json +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-08-01-preview/examples/RoleAssignments_ValidateByIdInvalid.json @@ -14,16 +14,11 @@ "200": { "body": { "isValid": false, - "validationErrorInfo": { + "errorInfo": { "code": "InvalidRoleDefinitionId", "message": "The specified role definition with ID '0b5fe924-9a61-425c-96af-cfe6e287ca2d' does not exist." } } - }, - "500": { - "body": { - "message": "Something went wrong." - } } } } diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-08-01-preview/examples/RoleAssignments_ValidateByIdValid.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-08-01-preview/examples/RoleAssignments_ValidateByIdValid.json index 3c873017560a..b76e5990c2c3 100644 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-08-01-preview/examples/RoleAssignments_ValidateByIdValid.json +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-08-01-preview/examples/RoleAssignments_ValidateByIdValid.json @@ -15,11 +15,6 @@ "body": { "isValid": true } - }, - "500": { - "body": { - "message": "Something went wrong." - } } } } diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-08-01-preview/examples/RoleAssignments_ValidateInvalid.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-08-01-preview/examples/RoleAssignments_ValidateInvalid.json index e068332f2dcf..3479106a8dae 100644 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-08-01-preview/examples/RoleAssignments_ValidateInvalid.json +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-08-01-preview/examples/RoleAssignments_ValidateInvalid.json @@ -15,16 +15,11 @@ "200": { "body": { "isValid": false, - "validationErrorInfo": { + "errorInfo": { "code": "InvalidRoleDefinitionId", "message": "The specified role definition with ID '0b5fe924-9a61-425c-96af-cfe6e287ca2d' does not exist." } } - }, - "500": { - "body": { - "message": "Something went wrong." - } } } } diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-08-01-preview/examples/RoleAssignments_ValidateValid.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-08-01-preview/examples/RoleAssignments_ValidateValid.json index f2e66e0b9774..5893676e1f15 100644 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-08-01-preview/examples/RoleAssignments_ValidateValid.json +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-08-01-preview/examples/RoleAssignments_ValidateValid.json @@ -16,11 +16,6 @@ "body": { "isValid": true } - }, - "500": { - "body": { - "message": "Something went wrong." - } } } } diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/EligibleChildResources.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/EligibleChildResources.json new file mode 100644 index 000000000000..a2d955973b7d --- /dev/null +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/EligibleChildResources.json @@ -0,0 +1,159 @@ +{ + "swagger": "2.0", + "info": { + "title": "AuthorizationManagementClient", + "version": "2020-10-01-preview", + "description": "Role based access control provides you a way to apply granular level policy administration down to individual resources or resource groups. These operations enable you to manage role assignments. A role assignment grants access to Azure Active Directory users." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/{scope}/providers/Microsoft.Authorization/eligibleChildResources": { + "get": { + "tags": [ + "eligibleChildResources" + ], + "operationId": "EligibleChildResources_Get", + "description": "Get the child resources of a resource on which user has eligible access", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role management policy.", + "x-ms-skip-url-encoding": true + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. Use $filter=resourceType+eq+'Subscription' to filter on only resource of type = 'Subscription'. Use $filter=resourceType+eq+'subscription'+or+resourceType+eq+'resourcegroup' to filter on resource of type = 'Subscription' or 'ResourceGroup'" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the role management policy.", + "schema": { + "$ref": "#/definitions/EligibleChildResourcesListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetEligibleChildResourcesByScope": { + "$ref": "./examples/GetEligibleChildResourcesByScope.json" + } + } + } + } + }, + "definitions": { + "EligibleChildResourcesListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/EligibleChildResource" + }, + "description": "Eligible child resource list." + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "Eligible child resources list operation result." + }, + "EligibleChildResource": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The resource scope Id." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The resource name." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "The resource type." + } + }, + "description": "Eligible child resource" + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorBody" + } + }, + "description": "An error response from the service." + }, + "CloudErrorBody": { + "x-ms-external": true, + "properties": { + "code": { + "type": "string", + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "type": "string", + "description": "A message describing the error, intended to be suitable for display in a user interface." + } + }, + "description": "An error response from the service." + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for this operation." + } + } +} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/RoleAssignmentSchedule.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/RoleAssignmentSchedule.json index 3cd013219637..7e0a694c29fe 100644 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/RoleAssignmentSchedule.json +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/RoleAssignmentSchedule.json @@ -173,7 +173,15 @@ "enum": [ "User", "Group", - "ServicePrincipal" + "ServicePrincipal", + "Unknown", + "DirectoryRoleTemplate", + "ForeignGroup", + "Application", + "MSI", + "DirectoryObjectOrGroup", + "Everyone", + "Device" ], "x-ms-enum": { "name": "PrincipalType", diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/RoleAssignmentScheduleInstance.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/RoleAssignmentScheduleInstance.json index 02e12ca0b41c..d778f0c65e76 100644 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/RoleAssignmentScheduleInstance.json +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/RoleAssignmentScheduleInstance.json @@ -177,7 +177,15 @@ "enum": [ "User", "Group", - "ServicePrincipal" + "ServicePrincipal", + "Unknown", + "DirectoryRoleTemplate", + "ForeignGroup", + "Application", + "MSI", + "DirectoryObjectOrGroup", + "Everyone", + "Device" ], "x-ms-enum": { "name": "PrincipalType", diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/RoleAssignmentScheduleRequest.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/RoleAssignmentScheduleRequest.json index 27fe95288b0b..0c18a43bcdff 100644 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/RoleAssignmentScheduleRequest.json +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/RoleAssignmentScheduleRequest.json @@ -279,7 +279,15 @@ "enum": [ "User", "Group", - "ServicePrincipal" + "ServicePrincipal", + "Unknown", + "DirectoryRoleTemplate", + "ForeignGroup", + "Application", + "MSI", + "DirectoryObjectOrGroup", + "Everyone", + "Device" ], "x-ms-enum": { "name": "PrincipalType", diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/RoleEligibilitySchedule.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/RoleEligibilitySchedule.json index af5c1a7f6e99..d3d3bbb7e834 100644 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/RoleEligibilitySchedule.json +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/RoleEligibilitySchedule.json @@ -173,7 +173,15 @@ "enum": [ "User", "Group", - "ServicePrincipal" + "ServicePrincipal", + "Unknown", + "DirectoryRoleTemplate", + "ForeignGroup", + "Application", + "MSI", + "DirectoryObjectOrGroup", + "Everyone", + "Device" ], "x-ms-enum": { "name": "PrincipalType", diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/RoleEligibilityScheduleInstance.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/RoleEligibilityScheduleInstance.json index 55a772e0f5e2..30504594f0bd 100644 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/RoleEligibilityScheduleInstance.json +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/RoleEligibilityScheduleInstance.json @@ -177,7 +177,15 @@ "enum": [ "User", "Group", - "ServicePrincipal" + "ServicePrincipal", + "Unknown", + "DirectoryRoleTemplate", + "ForeignGroup", + "Application", + "MSI", + "DirectoryObjectOrGroup", + "Everyone", + "Device" ], "x-ms-enum": { "name": "PrincipalType", diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/RoleEligibilityScheduleRequest.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/RoleEligibilityScheduleRequest.json index 9a4a45238118..1ed4bb81ed6e 100644 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/RoleEligibilityScheduleRequest.json +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/RoleEligibilityScheduleRequest.json @@ -279,7 +279,15 @@ "enum": [ "User", "Group", - "ServicePrincipal" + "ServicePrincipal", + "Unknown", + "DirectoryRoleTemplate", + "ForeignGroup", + "Application", + "MSI", + "DirectoryObjectOrGroup", + "Everyone", + "Device" ], "x-ms-enum": { "name": "PrincipalType", diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/RoleManagementPolicy.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/RoleManagementPolicy.json index 2e59a4aa226f..32c1be6132fe 100644 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/RoleManagementPolicy.json +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/RoleManagementPolicy.json @@ -558,9 +558,9 @@ "type": "string", "description": "The notification level.", "enum": [ - "NONE", - "CRITICAL", - "ALL" + "None", + "Critical", + "All" ], "x-ms-enum": { "name": "NotificationLevel", diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/authorization-RoleAssignmentsCalls.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/authorization-RoleAssignmentsCalls.json new file mode 100644 index 000000000000..04835777fcf4 --- /dev/null +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/authorization-RoleAssignmentsCalls.json @@ -0,0 +1,808 @@ +{ + "swagger": "2.0", + "info": { + "title": "AuthorizationManagementClient", + "version": "2020-10-01-preview", + "description": "Role based access control provides you a way to apply granular level policy administration down to individual resources or resource groups. These operations enable you to manage role assignments. A role assignment grants access to Azure Active Directory users." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://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.Authorization/roleAssignments": { + "get": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_ListForSubscription", + "description": "List all role assignments that apply to a subscription.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/RoleAssignmentFilterParameter" + }, + { + "$ref": "#/parameters/TenantIdQueryParameter" + } + ], + "responses": { + "200": { + "description": "Returns an array of role assignments.", + "schema": { + "$ref": "#/definitions/RoleAssignmentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-odata": "#/definitions/RoleAssignmentFilter", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List role assignments for subscription": { + "$ref": "./examples/RoleAssignments_ListForSubscription.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Authorization/roleAssignments": { + "get": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_ListForResourceGroup", + "description": "List all role assignments that apply to a resource group.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/RoleAssignmentFilterParameter" + }, + { + "$ref": "#/parameters/TenantIdQueryParameter" + } + ], + "responses": { + "200": { + "description": "Returns an array of role assignments.", + "schema": { + "$ref": "#/definitions/RoleAssignmentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-odata": "#/definitions/RoleAssignmentFilter", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List role assignments for resource group": { + "$ref": "./examples/RoleAssignments_ListForResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}/providers/Microsoft.Authorization/roleAssignments": { + "get": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_ListForResource", + "description": "List all role assignments that apply to a resource.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./common-types.json#/parameters/ResourceProviderNamespaceParameter" + }, + { + "$ref": "./common-types.json#/parameters/ResourceTypeParameter" + }, + { + "$ref": "./common-types.json#/parameters/ResourceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/RoleAssignmentFilterParameter" + }, + { + "$ref": "#/parameters/TenantIdQueryParameter" + } + ], + "responses": { + "200": { + "description": "Returns an array of role assignments.", + "schema": { + "$ref": "#/definitions/RoleAssignmentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-odata": "#/definitions/RoleAssignmentFilter", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List role assignments for a resource": { + "$ref": "./examples/RoleAssignments_ListForResource.json" + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/roleAssignments/{roleAssignmentName}": { + "get": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_Get", + "description": "Get a role assignment by scope and name.", + "parameters": [ + { + "$ref": "./common-types.json#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/RoleAssignmentNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/TenantIdQueryParameter" + } + ], + "responses": { + "200": { + "description": "Returns the role assignment.", + "schema": { + "$ref": "#/definitions/RoleAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get role assignment by scope and name": { + "$ref": "./examples/RoleAssignments_Get.json" + } + } + }, + "put": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_Create", + "description": "Create or update a role assignment by scope and name.", + "parameters": [ + { + "$ref": "./common-types.json#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/RoleAssignmentNameParameter" + }, + { + "$ref": "#/parameters/RoleAssignmentCreateParameters" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Returns the role assignment.", + "schema": { + "$ref": "#/definitions/RoleAssignment" + } + }, + "200": { + "description": "Returns the role assignment.", + "schema": { + "$ref": "#/definitions/RoleAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create role assignment for subscription": { + "$ref": "./examples/RoleAssignments_CreateForSubscription.json" + }, + "Create role assignment for resource group": { + "$ref": "./examples/RoleAssignments_CreateForResourceGroup.json" + }, + "Create role assignment for resource": { + "$ref": "./examples/RoleAssignments_CreateForResource.json" + } + } + }, + "delete": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_Delete", + "description": "Delete a role assignment by scope and name.", + "parameters": [ + { + "$ref": "./common-types.json#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/RoleAssignmentNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/TenantIdQueryParameter" + } + ], + "responses": { + "200": { + "description": "Returns the deleted role assignment.", + "schema": { + "$ref": "#/definitions/RoleAssignment" + } + }, + "204": { + "description": "Role assignment was already deleted or does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete role assignment": { + "$ref": "./examples/RoleAssignments_Delete.json" + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/roleAssignments/{roleAssignmentName}/validate": { + "post": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_Validate", + "description": "Validate a role assignment create or update operation by scope and name.", + "parameters": [ + { + "$ref": "./common-types.json#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/RoleAssignmentNameParameter" + }, + { + "$ref": "#/parameters/RoleAssignmentCreateParameters" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Returns whether or not validation was successful.", + "schema": { + "$ref": "#/definitions/ValidationResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Validate a role assignment create or update operation with failed validation": { + "$ref": "./examples/RoleAssignments_ValidateInvalid.json" + }, + "Validate a role assignment create or update operation with successful validation": { + "$ref": "./examples/RoleAssignments_ValidateValid.json" + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/roleAssignments": { + "get": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_ListForScope", + "description": "List all role assignments that apply to a scope.", + "parameters": [ + { + "$ref": "./common-types.json#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/RoleAssignmentFilterParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/TenantIdQueryParameter" + } + ], + "responses": { + "200": { + "description": "Returns an array of role assignments.", + "schema": { + "$ref": "#/definitions/RoleAssignmentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/RoleAssignmentFilter", + "x-ms-examples": { + "List role assignments for scope": { + "$ref": "./examples/RoleAssignments_ListForScope.json" + } + } + } + }, + "/{roleAssignmentId}": { + "get": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_GetById", + "description": "Get a role assignment by ID.", + "parameters": [ + { + "$ref": "#/parameters/RoleAssignmentIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/TenantIdQueryParameter" + } + ], + "responses": { + "200": { + "description": "Returns the role assignment.", + "schema": { + "$ref": "#/definitions/RoleAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get role assignment by ID": { + "$ref": "./examples/RoleAssignments_GetById.json" + } + } + }, + "put": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_CreateById", + "description": "Create or update a role assignment by ID.", + "parameters": [ + { + "$ref": "#/parameters/RoleAssignmentIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/RoleAssignmentCreateParameters" + } + ], + "responses": { + "201": { + "description": "Returns the role assignment.", + "schema": { + "$ref": "#/definitions/RoleAssignment" + } + }, + "200": { + "description": "Returns the role assignment.", + "schema": { + "$ref": "#/definitions/RoleAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or update role assignment by ID": { + "$ref": "./examples/RoleAssignments_CreateById.json" + } + } + }, + "delete": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_DeleteById", + "description": "Delete a role assignment by ID.", + "parameters": [ + { + "$ref": "#/parameters/RoleAssignmentIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/TenantIdQueryParameter" + } + ], + "responses": { + "200": { + "description": "Returns the deleted role assignment.", + "schema": { + "$ref": "#/definitions/RoleAssignment" + } + }, + "204": { + "description": "Role assignment already deleted or does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete role assignment by ID": { + "$ref": "./examples/RoleAssignments_DeleteById.json" + } + } + } + }, + "/{roleAssignmentId}/validate": { + "post": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_ValidateById", + "description": "Validate a role assignment create or update operation by ID.", + "parameters": [ + { + "$ref": "#/parameters/RoleAssignmentIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/RoleAssignmentCreateParameters" + } + ], + "responses": { + "200": { + "description": "Returns the role assignment.", + "schema": { + "$ref": "#/definitions/ValidationResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Validate a role assignment create or update operation by ID with failed validation": { + "$ref": "./examples/RoleAssignments_ValidateByIdInvalid.json" + }, + "Validate a role assignment create or update operation by ID with successful validation": { + "$ref": "./examples/RoleAssignments_ValidateByIdValid.json" + } + } + } + } + }, + "definitions": { + "ValidationResponseErrorInfo": { + "description": "Failed validation result details", + "properties": { + "code": { + "readOnly": true, + "type": "string", + "description": "Error code indicating why validation failed" + }, + "message": { + "readOnly": true, + "type": "string", + "description": "Message indicating why validation failed" + } + } + }, + "ValidationResponse": { + "description": "Validation response", + "properties": { + "isValid": { + "readOnly": true, + "type": "boolean", + "description": "Whether or not validation succeeded" + }, + "errorInfo": { + "description": "Failed validation result details", + "$ref": "#/definitions/ValidationResponseErrorInfo" + } + } + }, + "RoleAssignmentFilter": { + "properties": { + "principalId": { + "type": "string", + "description": "Returns role assignment of the specific principal." + } + }, + "description": "Role Assignments filter" + }, + "RoleAssignmentListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RoleAssignment" + }, + "description": "Role assignment list." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "Role assignment list operation result." + }, + "RoleAssignmentProperties": { + "properties": { + "scope": { + "readOnly": true, + "type": "string", + "description": "The role assignment scope." + }, + "roleDefinitionId": { + "type": "string", + "description": "The role definition ID." + }, + "principalId": { + "type": "string", + "description": "The principal ID." + }, + "principalType": { + "type": "string", + "description": "The principal type of the assigned principal ID.", + "enum": [ + "User", + "Group", + "ServicePrincipal", + "Unknown", + "DirectoryRoleTemplate", + "ForeignGroup", + "Application", + "MSI", + "DirectoryObjectOrGroup", + "Everyone", + "Device" + ], + "default": "User", + "x-ms-enum": { + "name": "PrincipalType", + "modelAsString": true + } + }, + "description": { + "type": "string", + "description": "Description of role assignment" + }, + "condition": { + "type": "string", + "description": "The conditions on the role assignment. This limits the resources it can be assigned to. e.g.: @Resource[Microsoft.Storage/storageAccounts/blobServices/containers:ContainerName] StringEqualsIgnoreCase 'foo_storage_container'" + }, + "conditionVersion": { + "type": "string", + "description": "Version of the condition. Currently accepted value is '2.0'" + }, + "createdOn": { + "readOnly": true, + "type": "string", + "description": "Time it was created", + "format": "date-time" + }, + "updatedOn": { + "readOnly": true, + "type": "string", + "description": "Time it was updated", + "format": "date-time" + }, + "createdBy": { + "readOnly": true, + "type": "string", + "description": "Id of the user who created the assignment" + }, + "updatedBy": { + "readOnly": true, + "type": "string", + "description": "Id of the user who updated the assignment" + }, + "delegatedManagedIdentityResourceId": { + "type": "string", + "description": "Id of the delegated managed identity resource" + } + }, + "required": [ + "roleDefinitionId", + "principalId" + ], + "description": "Role assignment properties." + }, + "RoleAssignment": { + "x-ms-azure-resource": true, + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The role assignment ID." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The role assignment name." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "The role assignment type." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RoleAssignmentProperties", + "description": "Role assignment properties." + } + }, + "description": "Role Assignments" + }, + "RoleAssignmentCreateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RoleAssignmentProperties", + "description": "Role assignment properties." + } + }, + "required": [ + "properties" + ], + "description": "Role assignment create parameters." + } + }, + "parameters": { + "RoleAssignmentFilterParameter": { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. Use $filter=atScope() to return all role assignments at or above the scope. Use $filter=principalId eq {id} to return all role assignments at, above or below the scope for the specified principal.", + "x-ms-skip-url-encoding": true, + "x-ms-parameter-location": "method" + }, + "RoleAssignmentNameParameter": { + "name": "roleAssignmentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the role assignment. It can be any valid GUID.", + "x-ms-skip-url-encoding": true, + "x-ms-parameter-location": "method" + }, + "RoleAssignmentIdParameter": { + "name": "roleAssignmentId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the role assignment including scope, resource name, and resource type. Format: /{scope}/providers/Microsoft.Authorization/roleAssignments/{roleAssignmentName}. Example: /subscriptions//resourcegroups//providers/Microsoft.Authorization/roleAssignments/", + "x-ms-skip-url-encoding": true, + "x-ms-parameter-location": "method" + }, + "RoleAssignmentCreateParameters": { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RoleAssignmentCreateParameters" + }, + "description": "Parameters for the role assignment.", + "x-ms-parameter-location": "method" + }, + "TenantIdQueryParameter": { + "name": "tenantId", + "in": "query", + "required": false, + "type": "string", + "description": "Tenant ID for cross-tenant request", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/common-types.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/common-types.json new file mode 100644 index 000000000000..0b2370e84ffd --- /dev/null +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/common-types.json @@ -0,0 +1,81 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-10-01-preview", + "title": "Common types" + }, + "paths": {}, + "definitions": { + "Permission": { + "properties": { + "actions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Allowed actions." + }, + "notActions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Denied actions." + }, + "dataActions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Allowed Data actions." + }, + "notDataActions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Denied Data actions." + } + }, + "description": "Role definition permissions." + } + }, + "parameters": { + "ResourceProviderNamespaceParameter": { + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider.", + "x-ms-skip-url-encoding": true, + "x-ms-parameter-location": "method" + }, + "ResourceTypeParameter": { + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type name. For example the type name of a web app is 'sites' (from Microsoft.Web/sites).", + "x-ms-skip-url-encoding": true, + "x-ms-parameter-location": "method" + }, + "ResourceNameParameter": { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource name.", + "x-ms-skip-url-encoding": true, + "x-ms-parameter-location": "method" + }, + "ScopeParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the operation or resource. Valid scopes are: subscription (format: '/subscriptions/{subscriptionId}'), resource group (format: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}', or resource (format: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/[{parentResourcePath}/]{resourceType}/{resourceName}'", + "x-ms-skip-url-encoding": true, + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/GetEligibleChildResourcesByScope.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/GetEligibleChildResourcesByScope.json new file mode 100644 index 000000000000..76cb6f443086 --- /dev/null +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/GetEligibleChildResourcesByScope.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "scope": "providers/Microsoft.Subscription/subscriptions/dfa2a084-766f-4003-8ae1-c4aeb893a99f", + "api-version": "2020-10-01-preview", + "$filter": "resourceType+eq+'resourcegroup'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "RG-1", + "id": "/providers/Microsoft.Subscription/subscriptions/dfa2a084-766f-4003-8ae1-c4aeb893a99f/resourceGroups/RG-1", + "type": "resourcegroup" + }, + { + "name": "RG-2", + "id": "/providers/Microsoft.Subscription/subscriptions/dfa2a084-766f-4003-8ae1-c4aeb893a99f/resourceGroups/RG-2", + "type": "resourcegroup" + } + ] + } + } + } +} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/GetRoleAssignmentScheduleRequestByName.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/GetRoleAssignmentScheduleRequestByName.json index 5a42f7c91c0b..a9f0442b637f 100644 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/GetRoleAssignmentScheduleRequestByName.json +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/GetRoleAssignmentScheduleRequestByName.json @@ -22,7 +22,7 @@ "expiration": { "type": "AfterDuration", "endDateTime": null, - "duration": "08:00:00" + "duration": "PT8H" } }, "ticketInfo": { diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/GetRoleAssignmentScheduleRequestByScope.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/GetRoleAssignmentScheduleRequestByScope.json index d2bf887f553e..648555c7b6db 100644 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/GetRoleAssignmentScheduleRequestByScope.json +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/GetRoleAssignmentScheduleRequestByScope.json @@ -23,7 +23,7 @@ "expiration": { "type": "AfterDuration", "endDateTime": null, - "duration": "08:00:00" + "duration": "PT8H" } }, "ticketInfo": { diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/GetRoleEligibilityScheduleRequestByName.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/GetRoleEligibilityScheduleRequestByName.json index ba545cb998d6..53f10851ec93 100644 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/GetRoleEligibilityScheduleRequestByName.json +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/GetRoleEligibilityScheduleRequestByName.json @@ -22,7 +22,7 @@ "expiration": { "type": "AfterDuration", "endDateTime": null, - "duration": "365.00:00:00" + "duration": "P365D" } }, "ticketInfo": { diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/GetRoleEligibilityScheduleRequestByScope.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/GetRoleEligibilityScheduleRequestByScope.json index 9c150f1442c5..9bfca5590185 100644 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/GetRoleEligibilityScheduleRequestByScope.json +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/GetRoleEligibilityScheduleRequestByScope.json @@ -24,7 +24,7 @@ "expiration": { "type": "AfterDuration", "endDateTime": null, - "duration": "365.00:00:00" + "duration": "P365D" } }, "ticketInfo": { diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/GetRoleManagementPolicyAssignmentByName.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/GetRoleManagementPolicyAssignmentByName.json index a90275e3d77d..95d0531850d9 100644 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/GetRoleManagementPolicyAssignmentByName.json +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/GetRoleManagementPolicyAssignmentByName.json @@ -10,7 +10,7 @@ "properties": { "scope": "/subscriptions/129ff972-28f8-46b8-a726-e497be039368", "roleDefinitionId": "/subscriptions/129ff972-28f8-46b8-a726-e497be039368/providers/Microsoft.Authorization/roleDefinitions/a1705bd2-3a8f-45a5-8683-466fcfd5cc24", - "policyId": "/providers/Microsoft.Subscription/subscriptions/129ff972-28f8-46b8-a726-e497be039368/providers/Microsoft.Authorization/RoleManagementPolicies/b959d571-f0b5-4042-88a7-01be6cb22db9", + "policyId": "/providers/Microsoft.Subscription/subscriptions/129ff972-28f8-46b8-a726-e497be039368/providers/Microsoft.Authorization/roleManagementPolicies/b959d571-f0b5-4042-88a7-01be6cb22db9", "policyAssignmentProperties": { "scope": { "id": "/subscriptions/129ff972-28f8-46b8-a726-e497be039368", @@ -23,7 +23,7 @@ "type": "BuiltInRole" }, "policy": { - "id": "b959d571-f0b5-4042-88a7-01be6cb22db9", + "id": "/subscriptions/129ff972-28f8-46b8-a726-e497be039368/providers/Microsoft.Authorization/roleManagementPolicies/b959d571-f0b5-4042-88a7-01be6cb22db9", "lastModifiedBy": { "id": null, "displayName": "Admin", @@ -35,7 +35,7 @@ } }, "name": "b959d571-f0b5-4042-88a7-01be6cb22db9_a1705bd2-3a8f-45a5-8683-466fcfd5cc24", - "id": "/providers/Microsoft.Subscription/subscriptions/129ff972-28f8-46b8-a726-e497be039368/providers/Microsoft.Authorization/RoleManagementPolicyAssignment/b959d571-f0b5-4042-88a7-01be6cb22db9_a1705bd2-3a8f-45a5-8683-466fcfd5cc24", + "id": "/providers/Microsoft.Subscription/subscriptions/129ff972-28f8-46b8-a726-e497be039368/providers/Microsoft.Authorization/roleManagementPolicyAssignment/b959d571-f0b5-4042-88a7-01be6cb22db9_a1705bd2-3a8f-45a5-8683-466fcfd5cc24", "type": "Microsoft.Authorization/RoleManagementPolicyAssignment" } } diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/GetRoleManagementPolicyAssignmentByScope.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/GetRoleManagementPolicyAssignmentByScope.json index 9b8afdc2a135..37f17032cbb3 100644 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/GetRoleManagementPolicyAssignmentByScope.json +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/GetRoleManagementPolicyAssignmentByScope.json @@ -11,7 +11,7 @@ "properties": { "scope": "/subscriptions/129ff972-28f8-46b8-a726-e497be039368", "roleDefinitionId": "/subscriptions/129ff972-28f8-46b8-a726-e497be039368/providers/Microsoft.Authorization/roleDefinitions/a1705bd2-3a8f-45a5-8683-466fcfd5cc24", - "policyId": "/providers/Microsoft.Subscription/subscriptions/129ff972-28f8-46b8-a726-e497be039368/providers/Microsoft.Authorization/RoleManagementPolicies/b959d571-f0b5-4042-88a7-01be6cb22db9", + "policyId": "/providers/Microsoft.Subscription/subscriptions/129ff972-28f8-46b8-a726-e497be039368/providers/Microsoft.Authorization/roleManagementPolicies/b959d571-f0b5-4042-88a7-01be6cb22db9", "policyAssignmentProperties": { "scope": { "id": "/subscriptions/129ff972-28f8-46b8-a726-e497be039368", @@ -24,7 +24,7 @@ "type": "BuiltInRole" }, "policy": { - "id": "b959d571-f0b5-4042-88a7-01be6cb22db9", + "id": "/subscriptions/129ff972-28f8-46b8-a726-e497be039368/providers/Microsoft.Authorization/roleManagementPolicies/b959d571-f0b5-4042-88a7-01be6cb22db9", "lastModifiedBy": { "id": null, "displayName": "Admin", @@ -36,7 +36,7 @@ } }, "name": "b959d571-f0b5-4042-88a7-01be6cb22db9_a1705bd2-3a8f-45a5-8683-466fcfd5cc24", - "id": "/providers/Microsoft.Subscription/subscriptions/129ff972-28f8-46b8-a726-e497be039368/providers/Microsoft.Authorization/RoleManagementPolicyAssignment/b959d571-f0b5-4042-88a7-01be6cb22db9_a1705bd2-3a8f-45a5-8683-466fcfd5cc24", + "id": "/providers/Microsoft.Subscription/subscriptions/129ff972-28f8-46b8-a726-e497be039368/providers/Microsoft.Authorization/roleManagementPolicyAssignment/b959d571-f0b5-4042-88a7-01be6cb22db9_a1705bd2-3a8f-45a5-8683-466fcfd5cc24", "type": "Microsoft.Authorization/RoleManagementPolicyAssignment" } ] diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/GetRoleManagementPolicyByName.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/GetRoleManagementPolicyByName.json index 17412968b8db..24eb61daaa85 100644 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/GetRoleManagementPolicyByName.json +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/GetRoleManagementPolicyByName.json @@ -22,12 +22,12 @@ "rules": [ { "enabledRules": [], - "id": "Enablement_Admin_Eligible", + "id": "Enablement_Admin_Eligibility", "ruleType": "RoleManagementPolicyEnablementRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Eligibility", "targetObjects": null, @@ -38,12 +38,12 @@ { "isExpirationRequired": true, "maximumDuration": "P90D", - "id": "Expiration_Admin_Eligible", + "id": "Expiration_Admin_Eligibility", "ruleType": "RoleManagementPolicyExpirationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Eligibility", "targetObjects": null, @@ -55,16 +55,16 @@ "notificationType": "Email", "recipientType": "Admin", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "admin_admin_eligible@test.com" ], - "id": "Notification_Admin_Admin_Eligible", + "id": "Notification_Admin_Admin_Eligibility", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Eligibility", "targetObjects": null, @@ -76,16 +76,16 @@ "notificationType": "Email", "recipientType": "Requestor", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "requestor_admin_eligible@test.com" ], - "id": "Notification_Requestor_Admin_Eligible", + "id": "Notification_Requestor_Admin_Eligibility", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Eligibility", "targetObjects": null, @@ -97,16 +97,16 @@ "notificationType": "Email", "recipientType": "Approver", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "approver_admin_eligible@test.com" ], - "id": "Notification_Approver_Admin_Eligible", + "id": "Notification_Approver_Admin_Eligibility", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Eligibility", "targetObjects": null, @@ -119,12 +119,12 @@ "MultiFactorAuthentication", "Justification" ], - "id": "Enablement_Admin_Member", + "id": "Enablement_Admin_Assignment", "ruleType": "RoleManagementPolicyEnablementRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -135,12 +135,12 @@ { "isExpirationRequired": false, "maximumDuration": "P90D", - "id": "Expiration_Admin_Member", + "id": "Expiration_Admin_Assignment", "ruleType": "RoleManagementPolicyExpirationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -152,16 +152,16 @@ "notificationType": "Email", "recipientType": "Admin", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "admin_admin_member@test.com" ], - "id": "Notification_Admin_Admin_Member", + "id": "Notification_Admin_Admin_Assignment", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -173,16 +173,16 @@ "notificationType": "Email", "recipientType": "Requestor", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "requestor_admin_member@test.com" ], - "id": "Notification_Requestor_Admin_Member", + "id": "Notification_Requestor_Admin_Assignment", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -194,16 +194,16 @@ "notificationType": "Email", "recipientType": "Approver", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "approver_admin_member@test.com" ], - "id": "Notification_Approver_Admin_Member", + "id": "Notification_Approver_Admin_Assignment", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -241,12 +241,12 @@ } ] }, - "id": "Approval_EndUser_Member", + "id": "Approval_EndUser_Assignment", "ruleType": "RoleManagementPolicyApprovalRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -257,12 +257,12 @@ { "isEnabled": false, "claimValue": "", - "id": "AuthenticationContext_EndUser_Member", + "id": "AuthenticationContext_EndUser_Assignment", "ruleType": "RoleManagementPolicyAuthenticationContextRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -276,12 +276,12 @@ "Justification", "Ticketing" ], - "id": "Enablement_EndUser_Member", + "id": "Enablement_EndUser_Assignment", "ruleType": "RoleManagementPolicyEnablementRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -292,12 +292,12 @@ { "isExpirationRequired": true, "maximumDuration": "PT7H", - "id": "Expiration_EndUser_Member", + "id": "Expiration_EndUser_Assignment", "ruleType": "RoleManagementPolicyExpirationRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -309,16 +309,16 @@ "notificationType": "Email", "recipientType": "Admin", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "admin_enduser_member@test.com" ], - "id": "Notification_Admin_EndUser_Member", + "id": "Notification_Admin_EndUser_Assignment", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -330,16 +330,16 @@ "notificationType": "Email", "recipientType": "Requestor", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "requestor_enduser_member@test.com" ], - "id": "Notification_Requestor_EndUser_Member", + "id": "Notification_Requestor_EndUser_Assignment", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -351,14 +351,14 @@ "notificationType": "Email", "recipientType": "Approver", "isDefaultRecipientsEnabled": true, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": null, - "id": "Notification_Approver_EndUser_Member", + "id": "Notification_Approver_EndUser_Assignment", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -370,12 +370,12 @@ "effectiveRules": [ { "enabledRules": [], - "id": "Enablement_Admin_Eligible", + "id": "Enablement_Admin_Eligibility", "ruleType": "RoleManagementPolicyEnablementRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Eligibility", "targetObjects": null, @@ -386,12 +386,12 @@ { "isExpirationRequired": true, "maximumDuration": "P90D", - "id": "Expiration_Admin_Eligible", + "id": "Expiration_Admin_Eligibility", "ruleType": "RoleManagementPolicyExpirationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Eligibility", "targetObjects": null, @@ -403,16 +403,16 @@ "notificationType": "Email", "recipientType": "Admin", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "admin_admin_eligible@test.com" ], - "id": "Notification_Admin_Admin_Eligible", + "id": "Notification_Admin_Admin_Eligibility", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Eligibility", "targetObjects": null, @@ -424,16 +424,16 @@ "notificationType": "Email", "recipientType": "Requestor", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "requestor_admin_eligible@test.com" ], - "id": "Notification_Requestor_Admin_Eligible", + "id": "Notification_Requestor_Admin_Eligibility", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Eligibility", "targetObjects": null, @@ -445,16 +445,16 @@ "notificationType": "Email", "recipientType": "Approver", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "approver_admin_eligible@test.com" ], - "id": "Notification_Approver_Admin_Eligible", + "id": "Notification_Approver_Admin_Eligibility", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Eligibility", "targetObjects": null, @@ -467,12 +467,12 @@ "MultiFactorAuthentication", "Justification" ], - "id": "Enablement_Admin_Member", + "id": "Enablement_Admin_Assignment", "ruleType": "RoleManagementPolicyEnablementRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -483,12 +483,12 @@ { "isExpirationRequired": false, "maximumDuration": "P90D", - "id": "Expiration_Admin_Member", + "id": "Expiration_Admin_Assignment", "ruleType": "RoleManagementPolicyExpirationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -500,16 +500,16 @@ "notificationType": "Email", "recipientType": "Admin", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "admin_admin_member@test.com" ], - "id": "Notification_Admin_Admin_Member", + "id": "Notification_Admin_Admin_Assignment", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -521,16 +521,16 @@ "notificationType": "Email", "recipientType": "Requestor", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "requestor_admin_member@test.com" ], - "id": "Notification_Requestor_Admin_Member", + "id": "Notification_Requestor_Admin_Assignment", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -542,16 +542,16 @@ "notificationType": "Email", "recipientType": "Approver", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "approver_admin_member@test.com" ], - "id": "Notification_Approver_Admin_Member", + "id": "Notification_Approver_Admin_Assignment", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -589,12 +589,12 @@ } ] }, - "id": "Approval_EndUser_Member", + "id": "Approval_EndUser_Assignment", "ruleType": "RoleManagementPolicyApprovalRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -605,12 +605,12 @@ { "isEnabled": false, "claimValue": "", - "id": "AuthenticationContext_EndUser_Member", + "id": "AuthenticationContext_EndUser_Assignment", "ruleType": "RoleManagementPolicyAuthenticationContextRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -624,12 +624,12 @@ "Justification", "Ticketing" ], - "id": "Enablement_EndUser_Member", + "id": "Enablement_EndUser_Assignment", "ruleType": "RoleManagementPolicyEnablementRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -640,12 +640,12 @@ { "isExpirationRequired": true, "maximumDuration": "PT7H", - "id": "Expiration_EndUser_Member", + "id": "Expiration_EndUser_Assignment", "ruleType": "RoleManagementPolicyExpirationRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -657,16 +657,16 @@ "notificationType": "Email", "recipientType": "Admin", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "admin_enduser_member@test.com" ], - "id": "Notification_Admin_EndUser_Member", + "id": "Notification_Admin_EndUser_Assignment", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -678,16 +678,16 @@ "notificationType": "Email", "recipientType": "Requestor", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "requestor_enduser_member@test.com" ], - "id": "Notification_Requestor_EndUser_Member", + "id": "Notification_Requestor_EndUser_Assignment", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -699,14 +699,14 @@ "notificationType": "Email", "recipientType": "Approver", "isDefaultRecipientsEnabled": true, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": null, - "id": "Notification_Approver_EndUser_Member", + "id": "Notification_Approver_EndUser_Assignment", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -724,7 +724,7 @@ } }, "name": "570c3619-7688-4b34-b290-2b8bb3ccab2a", - "id": "/providers/Microsoft.Subscription/subscriptions/129ff972-28f8-46b8-a726-e497be039368/providers/Microsoft.Authorization/RoleManagementPolicies/570c3619-7688-4b34-b290-2b8bb3ccab2a", + "id": "/providers/Microsoft.Subscription/subscriptions/129ff972-28f8-46b8-a726-e497be039368/providers/Microsoft.Authorization/roleManagementPolicies/570c3619-7688-4b34-b290-2b8bb3ccab2a", "type": "Microsoft.Authorization/RoleManagementPolicies" } } diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/GetRoleManagementPolicyByScope.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/GetRoleManagementPolicyByScope.json index 4d146e6dfff5..7b12f8c8e2a0 100644 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/GetRoleManagementPolicyByScope.json +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/GetRoleManagementPolicyByScope.json @@ -23,12 +23,12 @@ "rules": [ { "enabledRules": [], - "id": "Enablement_Admin_Eligible", + "id": "Enablement_Admin_Eligibility", "ruleType": "RoleManagementPolicyEnablementRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Eligibility", "targetObjects": null, @@ -39,12 +39,12 @@ { "isExpirationRequired": true, "maximumDuration": "P90D", - "id": "Expiration_Admin_Eligible", + "id": "Expiration_Admin_Eligibility", "ruleType": "RoleManagementPolicyExpirationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Eligibility", "targetObjects": null, @@ -56,16 +56,16 @@ "notificationType": "Email", "recipientType": "Admin", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "admin_admin_eligible@test.com" ], - "id": "Notification_Admin_Admin_Eligible", + "id": "Notification_Admin_Admin_Eligibility", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Eligibility", "targetObjects": null, @@ -77,16 +77,16 @@ "notificationType": "Email", "recipientType": "Requestor", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "requestor_admin_eligible@test.com" ], - "id": "Notification_Requestor_Admin_Eligible", + "id": "Notification_Requestor_Admin_Eligibility", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Eligibility", "targetObjects": null, @@ -98,16 +98,16 @@ "notificationType": "Email", "recipientType": "Approver", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "approver_admin_eligible@test.com" ], - "id": "Notification_Approver_Admin_Eligible", + "id": "Notification_Approver_Admin_Eligibility", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Eligibility", "targetObjects": null, @@ -120,12 +120,12 @@ "MultiFactorAuthentication", "Justification" ], - "id": "Enablement_Admin_Member", + "id": "Enablement_Admin_Assignment", "ruleType": "RoleManagementPolicyEnablementRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -136,12 +136,12 @@ { "isExpirationRequired": false, "maximumDuration": "P90D", - "id": "Expiration_Admin_Member", + "id": "Expiration_Admin_Assignment", "ruleType": "RoleManagementPolicyExpirationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -153,16 +153,16 @@ "notificationType": "Email", "recipientType": "Admin", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "admin_admin_member@test.com" ], - "id": "Notification_Admin_Admin_Member", + "id": "Notification_Admin_Admin_Assignment", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -174,16 +174,16 @@ "notificationType": "Email", "recipientType": "Requestor", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "requestor_admin_member@test.com" ], - "id": "Notification_Requestor_Admin_Member", + "id": "Notification_Requestor_Admin_Assignment", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -195,16 +195,16 @@ "notificationType": "Email", "recipientType": "Approver", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "approver_admin_member@test.com" ], - "id": "Notification_Approver_Admin_Member", + "id": "Notification_Approver_Admin_Assignment", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -242,12 +242,12 @@ } ] }, - "id": "Approval_EndUser_Member", + "id": "Approval_EndUser_Assignment", "ruleType": "RoleManagementPolicyApprovalRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -258,12 +258,12 @@ { "isEnabled": false, "claimValue": "", - "id": "AuthenticationContext_EndUser_Member", + "id": "AuthenticationContext_EndUser_Assignment", "ruleType": "RoleManagementPolicyAuthenticationContextRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -277,12 +277,12 @@ "Justification", "Ticketing" ], - "id": "Enablement_EndUser_Member", + "id": "Enablement_EndUser_Assignment", "ruleType": "RoleManagementPolicyEnablementRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -293,12 +293,12 @@ { "isExpirationRequired": true, "maximumDuration": "PT7H", - "id": "Expiration_EndUser_Member", + "id": "Expiration_EndUser_Assignment", "ruleType": "RoleManagementPolicyExpirationRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -310,16 +310,16 @@ "notificationType": "Email", "recipientType": "Admin", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "admin_enduser_member@test.com" ], - "id": "Notification_Admin_EndUser_Member", + "id": "Notification_Admin_EndUser_Assignment", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -331,16 +331,16 @@ "notificationType": "Email", "recipientType": "Requestor", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "requestor_enduser_member@test.com" ], - "id": "Notification_Requestor_EndUser_Member", + "id": "Notification_Requestor_EndUser_Assignment", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -352,14 +352,14 @@ "notificationType": "Email", "recipientType": "Approver", "isDefaultRecipientsEnabled": true, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": null, - "id": "Notification_Approver_EndUser_Member", + "id": "Notification_Approver_EndUser_Assignment", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -371,12 +371,12 @@ "effectiveRules": [ { "enabledRules": [], - "id": "Enablement_Admin_Eligible", + "id": "Enablement_Admin_Eligibility", "ruleType": "RoleManagementPolicyEnablementRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Eligibility", "targetObjects": null, @@ -387,12 +387,12 @@ { "isExpirationRequired": true, "maximumDuration": "P90D", - "id": "Expiration_Admin_Eligible", + "id": "Expiration_Admin_Eligibility", "ruleType": "RoleManagementPolicyExpirationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Eligibility", "targetObjects": null, @@ -404,16 +404,16 @@ "notificationType": "Email", "recipientType": "Admin", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "admin_admin_eligible@test.com" ], - "id": "Notification_Admin_Admin_Eligible", + "id": "Notification_Admin_Admin_Eligibility", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Eligibility", "targetObjects": null, @@ -425,16 +425,16 @@ "notificationType": "Email", "recipientType": "Requestor", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "requestor_admin_eligible@test.com" ], - "id": "Notification_Requestor_Admin_Eligible", + "id": "Notification_Requestor_Admin_Eligibility", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Eligibility", "targetObjects": null, @@ -446,16 +446,16 @@ "notificationType": "Email", "recipientType": "Approver", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "approver_admin_eligible@test.com" ], - "id": "Notification_Approver_Admin_Eligible", + "id": "Notification_Approver_Admin_Eligibility", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Eligibility", "targetObjects": null, @@ -468,12 +468,12 @@ "MultiFactorAuthentication", "Justification" ], - "id": "Enablement_Admin_Member", + "id": "Enablement_Admin_Assignment", "ruleType": "RoleManagementPolicyEnablementRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -484,12 +484,12 @@ { "isExpirationRequired": false, "maximumDuration": "P90D", - "id": "Expiration_Admin_Member", + "id": "Expiration_Admin_Assignment", "ruleType": "RoleManagementPolicyExpirationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -501,16 +501,16 @@ "notificationType": "Email", "recipientType": "Admin", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "admin_admin_member@test.com" ], - "id": "Notification_Admin_Admin_Member", + "id": "Notification_Admin_Admin_Assignment", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -522,16 +522,16 @@ "notificationType": "Email", "recipientType": "Requestor", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "requestor_admin_member@test.com" ], - "id": "Notification_Requestor_Admin_Member", + "id": "Notification_Requestor_Admin_Assignment", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -543,16 +543,16 @@ "notificationType": "Email", "recipientType": "Approver", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "approver_admin_member@test.com" ], - "id": "Notification_Approver_Admin_Member", + "id": "Notification_Approver_Admin_Assignment", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -590,12 +590,12 @@ } ] }, - "id": "Approval_EndUser_Member", + "id": "Approval_EndUser_Assignment", "ruleType": "RoleManagementPolicyApprovalRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -606,12 +606,12 @@ { "isEnabled": false, "claimValue": "", - "id": "AuthenticationContext_EndUser_Member", + "id": "AuthenticationContext_EndUser_Assignment", "ruleType": "RoleManagementPolicyAuthenticationContextRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -625,12 +625,12 @@ "Justification", "Ticketing" ], - "id": "Enablement_EndUser_Member", + "id": "Enablement_EndUser_Assignment", "ruleType": "RoleManagementPolicyEnablementRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -641,12 +641,12 @@ { "isExpirationRequired": true, "maximumDuration": "PT7H", - "id": "Expiration_EndUser_Member", + "id": "Expiration_EndUser_Assignment", "ruleType": "RoleManagementPolicyExpirationRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -658,16 +658,16 @@ "notificationType": "Email", "recipientType": "Admin", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "admin_enduser_member@test.com" ], - "id": "Notification_Admin_EndUser_Member", + "id": "Notification_Admin_EndUser_Assignment", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -679,16 +679,16 @@ "notificationType": "Email", "recipientType": "Requestor", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "requestor_enduser_member@test.com" ], - "id": "Notification_Requestor_EndUser_Member", + "id": "Notification_Requestor_EndUser_Assignment", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -700,14 +700,14 @@ "notificationType": "Email", "recipientType": "Approver", "isDefaultRecipientsEnabled": true, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": null, - "id": "Notification_Approver_EndUser_Member", + "id": "Notification_Approver_EndUser_Assignment", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -725,7 +725,7 @@ } }, "name": "570c3619-7688-4b34-b290-2b8bb3ccab2a", - "id": "/providers/Microsoft.Subscription/subscriptions/129ff972-28f8-46b8-a726-e497be039368/providers/Microsoft.Authorization/RoleManagementPolicies/570c3619-7688-4b34-b290-2b8bb3ccab2a", + "id": "/providers/Microsoft.Subscription/subscriptions/129ff972-28f8-46b8-a726-e497be039368/providers/Microsoft.Authorization/roleManagementPolicies/570c3619-7688-4b34-b290-2b8bb3ccab2a", "type": "Microsoft.Authorization/RoleManagementPolicies" } ] diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/PatchPartialRoleManagementPolicy.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/PatchPartialRoleManagementPolicy.json index 303110a5f1b1..6b8c3ce11adc 100644 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/PatchPartialRoleManagementPolicy.json +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/PatchPartialRoleManagementPolicy.json @@ -9,12 +9,12 @@ { "isExpirationRequired": false, "maximumDuration": "P180D", - "id": "Expiration_Admin_Eligible", + "id": "Expiration_Admin_Eligibility", "ruleType": "RoleManagementPolicyExpirationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Eligibility", "targetObjects": null, @@ -26,16 +26,16 @@ "notificationType": "Email", "recipientType": "Admin", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "admin_admin_eligible@test.com" ], - "id": "Notification_Admin_Admin_Eligible", + "id": "Notification_Admin_Admin_Eligibility", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Eligibility", "targetObjects": null, @@ -66,12 +66,12 @@ { "isExpirationRequired": false, "maximumDuration": "P180D", - "id": "Expiration_Admin_Eligible", + "id": "Expiration_Admin_Eligibility", "ruleType": "RoleManagementPolicyExpirationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Eligibility", "targetObjects": null, @@ -83,16 +83,16 @@ "notificationType": "Email", "recipientType": "Admin", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "admin_admin_eligible@test.com" ], - "id": "Notification_Admin_Admin_Eligible", + "id": "Notification_Admin_Admin_Eligibility", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Eligibility", "targetObjects": null, @@ -104,16 +104,16 @@ "notificationType": "Email", "recipientType": "Requestor", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "requestor_admin_eligible@test.com" ], - "id": "Notification_Requestor_Admin_Eligible", + "id": "Notification_Requestor_Admin_Eligibility", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Eligibility", "targetObjects": null, @@ -125,16 +125,16 @@ "notificationType": "Email", "recipientType": "Approver", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "approver_admin_eligible@test.com" ], - "id": "Notification_Approver_Admin_Eligible", + "id": "Notification_Approver_Admin_Eligibility", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Eligibility", "targetObjects": null, @@ -144,12 +144,12 @@ }, { "enabledRules": [], - "id": "Enablement_Admin_Eligible", + "id": "Enablement_Admin_Eligibility", "ruleType": "RoleManagementPolicyEnablementRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Eligibility", "targetObjects": null, @@ -160,12 +160,12 @@ { "isExpirationRequired": false, "maximumDuration": "P90D", - "id": "Expiration_Admin_Member", + "id": "Expiration_Admin_Assignment", "ruleType": "RoleManagementPolicyExpirationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -178,12 +178,12 @@ "Justification", "MultiFactorAuthentication" ], - "id": "Enablement_Admin_Member", + "id": "Enablement_Admin_Assignment", "ruleType": "RoleManagementPolicyEnablementRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -195,16 +195,16 @@ "notificationType": "Email", "recipientType": "Admin", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "admin_admin_member@test.com" ], - "id": "Notification_Admin_Admin_Member", + "id": "Notification_Admin_Admin_Assignment", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -216,16 +216,16 @@ "notificationType": "Email", "recipientType": "Requestor", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "requestor_admin_member@test.com" ], - "id": "Notification_Requestor_Admin_Member", + "id": "Notification_Requestor_Admin_Assignment", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -237,16 +237,16 @@ "notificationType": "Email", "recipientType": "Approver", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "approver_admin_member@test.com" ], - "id": "Notification_Approver_Admin_Member", + "id": "Notification_Approver_Admin_Assignment", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -257,12 +257,12 @@ { "isExpirationRequired": true, "maximumDuration": "PT7H", - "id": "Expiration_EndUser_Member", + "id": "Expiration_EndUser_Assignment", "ruleType": "RoleManagementPolicyExpirationRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -276,12 +276,12 @@ "MultiFactorAuthentication", "Ticketing" ], - "id": "Enablement_EndUser_Member", + "id": "Enablement_EndUser_Assignment", "ruleType": "RoleManagementPolicyEnablementRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -319,12 +319,12 @@ } ] }, - "id": "Approval_EndUser_Member", + "id": "Approval_EndUser_Assignment", "ruleType": "RoleManagementPolicyApprovalRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -335,12 +335,12 @@ { "isEnabled": false, "claimValue": "", - "id": "AuthenticationContext_EndUser_Member", + "id": "AuthenticationContext_EndUser_Assignment", "ruleType": "RoleManagementPolicyAuthenticationContextRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -352,16 +352,16 @@ "notificationType": "Email", "recipientType": "Admin", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "admin_enduser_member@test.com" ], - "id": "Notification_Admin_EndUser_Member", + "id": "Notification_Admin_EndUser_Assignment", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -373,16 +373,16 @@ "notificationType": "Email", "recipientType": "Requestor", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "requestor_enduser_member@test.com" ], - "id": "Notification_Requestor_EndUser_Member", + "id": "Notification_Requestor_EndUser_Assignment", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -394,14 +394,14 @@ "notificationType": "Email", "recipientType": "Approver", "isDefaultRecipientsEnabled": true, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": null, - "id": "Notification_Approver_EndUser_Member", + "id": "Notification_Approver_EndUser_Assignment", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -414,12 +414,12 @@ { "isExpirationRequired": false, "maximumDuration": "P180D", - "id": "Expiration_Admin_Eligible", + "id": "Expiration_Admin_Eligibility", "ruleType": "RoleManagementPolicyExpirationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Eligibility", "targetObjects": null, @@ -431,16 +431,16 @@ "notificationType": "Email", "recipientType": "Admin", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "admin_admin_eligible@test.com" ], - "id": "Notification_Admin_Admin_Eligible", + "id": "Notification_Admin_Admin_Eligibility", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Eligibility", "targetObjects": null, @@ -452,16 +452,16 @@ "notificationType": "Email", "recipientType": "Requestor", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "requestor_admin_eligible@test.com" ], - "id": "Notification_Requestor_Admin_Eligible", + "id": "Notification_Requestor_Admin_Eligibility", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Eligibility", "targetObjects": null, @@ -473,16 +473,16 @@ "notificationType": "Email", "recipientType": "Approver", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "approver_admin_eligible@test.com" ], - "id": "Notification_Approver_Admin_Eligible", + "id": "Notification_Approver_Admin_Eligibility", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Eligibility", "targetObjects": null, @@ -492,12 +492,12 @@ }, { "enabledRules": [], - "id": "Enablement_Admin_Eligible", + "id": "Enablement_Admin_Eligibility", "ruleType": "RoleManagementPolicyEnablementRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Eligibility", "targetObjects": null, @@ -508,12 +508,12 @@ { "isExpirationRequired": false, "maximumDuration": "P90D", - "id": "Expiration_Admin_Member", + "id": "Expiration_Admin_Assignment", "ruleType": "RoleManagementPolicyExpirationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -526,12 +526,12 @@ "Justification", "MultiFactorAuthentication" ], - "id": "Enablement_Admin_Member", + "id": "Enablement_Admin_Assignment", "ruleType": "RoleManagementPolicyEnablementRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -543,16 +543,16 @@ "notificationType": "Email", "recipientType": "Admin", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "admin_admin_member@test.com" ], - "id": "Notification_Admin_Admin_Member", + "id": "Notification_Admin_Admin_Assignment", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -564,16 +564,16 @@ "notificationType": "Email", "recipientType": "Requestor", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "requestor_admin_member@test.com" ], - "id": "Notification_Requestor_Admin_Member", + "id": "Notification_Requestor_Admin_Assignment", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -585,16 +585,16 @@ "notificationType": "Email", "recipientType": "Approver", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "approver_admin_member@test.com" ], - "id": "Notification_Approver_Admin_Member", + "id": "Notification_Approver_Admin_Assignment", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -605,12 +605,12 @@ { "isExpirationRequired": true, "maximumDuration": "PT7H", - "id": "Expiration_EndUser_Member", + "id": "Expiration_EndUser_Assignment", "ruleType": "RoleManagementPolicyExpirationRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -624,12 +624,12 @@ "MultiFactorAuthentication", "Ticketing" ], - "id": "Enablement_EndUser_Member", + "id": "Enablement_EndUser_Assignment", "ruleType": "RoleManagementPolicyEnablementRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -667,12 +667,12 @@ } ] }, - "id": "Approval_EndUser_Member", + "id": "Approval_EndUser_Assignment", "ruleType": "RoleManagementPolicyApprovalRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -683,12 +683,12 @@ { "isEnabled": false, "claimValue": "", - "id": "AuthenticationContext_EndUser_Member", + "id": "AuthenticationContext_EndUser_Assignment", "ruleType": "RoleManagementPolicyAuthenticationContextRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -700,16 +700,16 @@ "notificationType": "Email", "recipientType": "Admin", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "admin_enduser_member@test.com" ], - "id": "Notification_Admin_EndUser_Member", + "id": "Notification_Admin_EndUser_Assignment", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -721,16 +721,16 @@ "notificationType": "Email", "recipientType": "Requestor", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "requestor_enduser_member@test.com" ], - "id": "Notification_Requestor_EndUser_Member", + "id": "Notification_Requestor_EndUser_Assignment", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -742,14 +742,14 @@ "notificationType": "Email", "recipientType": "Approver", "isDefaultRecipientsEnabled": true, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": null, - "id": "Notification_Approver_EndUser_Member", + "id": "Notification_Approver_EndUser_Assignment", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -767,7 +767,7 @@ } }, "name": "570c3619-7688-4b34-b290-2b8bb3ccab2a", - "id": "/providers/Microsoft.Subscription/subscriptions/129ff972-28f8-46b8-a726-e497be039368/providers/Microsoft.Authorization/RoleManagementPolicies/570c3619-7688-4b34-b290-2b8bb3ccab2a", + "id": "/providers/Microsoft.Subscription/subscriptions/129ff972-28f8-46b8-a726-e497be039368/providers/Microsoft.Authorization/roleManagementPolicies/570c3619-7688-4b34-b290-2b8bb3ccab2a", "type": "Microsoft.Authorization/RoleManagementPolicies" } } diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/PatchRoleManagementPolicy.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/PatchRoleManagementPolicy.json index a21a7cec9529..fa90678e6b8f 100644 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/PatchRoleManagementPolicy.json +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/PatchRoleManagementPolicy.json @@ -9,12 +9,12 @@ { "isExpirationRequired": false, "maximumDuration": "P180D", - "id": "Expiration_Admin_Eligible", + "id": "Expiration_Admin_Eligibility", "ruleType": "RoleManagementPolicyExpirationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Eligibility", "targetObjects": null, @@ -26,16 +26,16 @@ "notificationType": "Email", "recipientType": "Admin", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "admin_admin_eligible@test.com" ], - "id": "Notification_Admin_Admin_Eligible", + "id": "Notification_Admin_Admin_Eligibility", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Eligibility", "targetObjects": null, @@ -47,16 +47,16 @@ "notificationType": "Email", "recipientType": "Requestor", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "requestor_admin_eligible@test.com" ], - "id": "Notification_Requestor_Admin_Eligible", + "id": "Notification_Requestor_Admin_Eligibility", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Eligibility", "targetObjects": null, @@ -68,16 +68,16 @@ "notificationType": "Email", "recipientType": "Approver", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "approver_admin_eligible@test.com" ], - "id": "Notification_Approver_Admin_Eligible", + "id": "Notification_Approver_Admin_Eligibility", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Eligibility", "targetObjects": null, @@ -87,12 +87,12 @@ }, { "enabledRules": [], - "id": "Enablement_Admin_Eligible", + "id": "Enablement_Admin_Eligibility", "ruleType": "RoleManagementPolicyEnablementRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Eligibility", "targetObjects": null, @@ -103,12 +103,12 @@ { "isExpirationRequired": false, "maximumDuration": "P90D", - "id": "Expiration_Admin_Member", + "id": "Expiration_Admin_Assignment", "ruleType": "RoleManagementPolicyExpirationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -121,12 +121,12 @@ "Justification", "MultiFactorAuthentication" ], - "id": "Enablement_Admin_Member", + "id": "Enablement_Admin_Assignment", "ruleType": "RoleManagementPolicyEnablementRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -138,16 +138,16 @@ "notificationType": "Email", "recipientType": "Admin", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "admin_admin_member@test.com" ], - "id": "Notification_Admin_Admin_Member", + "id": "Notification_Admin_Admin_Assignment", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -159,16 +159,16 @@ "notificationType": "Email", "recipientType": "Requestor", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "requestor_admin_member@test.com" ], - "id": "Notification_Requestor_Admin_Member", + "id": "Notification_Requestor_Admin_Assignment", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -180,16 +180,16 @@ "notificationType": "Email", "recipientType": "Approver", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "approver_admin_member@test.com" ], - "id": "Notification_Approver_Admin_Member", + "id": "Notification_Approver_Admin_Assignment", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -200,12 +200,12 @@ { "isExpirationRequired": true, "maximumDuration": "PT7H", - "id": "Expiration_EndUser_Member", + "id": "Expiration_EndUser_Assignment", "ruleType": "RoleManagementPolicyExpirationRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -219,12 +219,12 @@ "MultiFactorAuthentication", "Ticketing" ], - "id": "Enablement_EndUser_Member", + "id": "Enablement_EndUser_Assignment", "ruleType": "RoleManagementPolicyEnablementRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -262,12 +262,12 @@ } ] }, - "id": "Approval_EndUser_Member", + "id": "Approval_EndUser_Assignment", "ruleType": "RoleManagementPolicyApprovalRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -278,12 +278,12 @@ { "isEnabled": false, "claimValue": "", - "id": "AuthenticationContext_EndUser_Member", + "id": "AuthenticationContext_EndUser_Assignment", "ruleType": "RoleManagementPolicyAuthenticationContextRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -295,16 +295,16 @@ "notificationType": "Email", "recipientType": "Admin", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "admin_enduser_member@test.com" ], - "id": "Notification_Admin_EndUser_Member", + "id": "Notification_Admin_EndUser_Assignment", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -316,16 +316,16 @@ "notificationType": "Email", "recipientType": "Requestor", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "requestor_enduser_member@test.com" ], - "id": "Notification_Requestor_EndUser_Member", + "id": "Notification_Requestor_EndUser_Assignment", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -337,14 +337,14 @@ "notificationType": "Email", "recipientType": "Approver", "isDefaultRecipientsEnabled": true, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": null, - "id": "Notification_Approver_EndUser_Member", + "id": "Notification_Approver_EndUser_Assignment", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -375,12 +375,12 @@ { "isExpirationRequired": false, "maximumDuration": "P180D", - "id": "Expiration_Admin_Eligible", + "id": "Expiration_Admin_Eligibility", "ruleType": "RoleManagementPolicyExpirationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Eligibility", "targetObjects": null, @@ -392,16 +392,16 @@ "notificationType": "Email", "recipientType": "Admin", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "admin_admin_eligible@test.com" ], - "id": "Notification_Admin_Admin_Eligible", + "id": "Notification_Admin_Admin_Eligibility", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Eligibility", "targetObjects": null, @@ -413,16 +413,16 @@ "notificationType": "Email", "recipientType": "Requestor", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "requestor_admin_eligible@test.com" ], - "id": "Notification_Requestor_Admin_Eligible", + "id": "Notification_Requestor_Admin_Eligibility", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Eligibility", "targetObjects": null, @@ -434,16 +434,16 @@ "notificationType": "Email", "recipientType": "Approver", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "approver_admin_eligible@test.com" ], - "id": "Notification_Approver_Admin_Eligible", + "id": "Notification_Approver_Admin_Eligibility", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Eligibility", "targetObjects": null, @@ -453,12 +453,12 @@ }, { "enabledRules": [], - "id": "Enablement_Admin_Eligible", + "id": "Enablement_Admin_Eligibility", "ruleType": "RoleManagementPolicyEnablementRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Eligibility", "targetObjects": null, @@ -469,12 +469,12 @@ { "isExpirationRequired": false, "maximumDuration": "P90D", - "id": "Expiration_Admin_Member", + "id": "Expiration_Admin_Assignment", "ruleType": "RoleManagementPolicyExpirationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -487,12 +487,12 @@ "Justification", "MultiFactorAuthentication" ], - "id": "Enablement_Admin_Member", + "id": "Enablement_Admin_Assignment", "ruleType": "RoleManagementPolicyEnablementRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -504,16 +504,16 @@ "notificationType": "Email", "recipientType": "Admin", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "admin_admin_member@test.com" ], - "id": "Notification_Admin_Admin_Member", + "id": "Notification_Admin_Admin_Assignment", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -525,16 +525,16 @@ "notificationType": "Email", "recipientType": "Requestor", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "requestor_admin_member@test.com" ], - "id": "Notification_Requestor_Admin_Member", + "id": "Notification_Requestor_Admin_Assignment", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -546,16 +546,16 @@ "notificationType": "Email", "recipientType": "Approver", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "approver_admin_member@test.com" ], - "id": "Notification_Approver_Admin_Member", + "id": "Notification_Approver_Admin_Assignment", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -566,12 +566,12 @@ { "isExpirationRequired": true, "maximumDuration": "PT7H", - "id": "Expiration_EndUser_Member", + "id": "Expiration_EndUser_Assignment", "ruleType": "RoleManagementPolicyExpirationRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -585,12 +585,12 @@ "MultiFactorAuthentication", "Ticketing" ], - "id": "Enablement_EndUser_Member", + "id": "Enablement_EndUser_Assignment", "ruleType": "RoleManagementPolicyEnablementRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -628,12 +628,12 @@ } ] }, - "id": "Approval_EndUser_Member", + "id": "Approval_EndUser_Assignment", "ruleType": "RoleManagementPolicyApprovalRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -644,12 +644,12 @@ { "isEnabled": false, "claimValue": "", - "id": "AuthenticationContext_EndUser_Member", + "id": "AuthenticationContext_EndUser_Assignment", "ruleType": "RoleManagementPolicyAuthenticationContextRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -661,16 +661,16 @@ "notificationType": "Email", "recipientType": "Admin", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "admin_enduser_member@test.com" ], - "id": "Notification_Admin_EndUser_Member", + "id": "Notification_Admin_EndUser_Assignment", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -682,16 +682,16 @@ "notificationType": "Email", "recipientType": "Requestor", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "requestor_enduser_member@test.com" ], - "id": "Notification_Requestor_EndUser_Member", + "id": "Notification_Requestor_EndUser_Assignment", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -703,14 +703,14 @@ "notificationType": "Email", "recipientType": "Approver", "isDefaultRecipientsEnabled": true, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": null, - "id": "Notification_Approver_EndUser_Member", + "id": "Notification_Approver_EndUser_Assignment", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -723,12 +723,12 @@ { "isExpirationRequired": false, "maximumDuration": "P180D", - "id": "Expiration_Admin_Eligible", + "id": "Expiration_Admin_Eligibility", "ruleType": "RoleManagementPolicyExpirationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Eligibility", "targetObjects": null, @@ -740,16 +740,16 @@ "notificationType": "Email", "recipientType": "Admin", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "admin_admin_eligible@test.com" ], - "id": "Notification_Admin_Admin_Eligible", + "id": "Notification_Admin_Admin_Eligibility", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Eligibility", "targetObjects": null, @@ -761,16 +761,16 @@ "notificationType": "Email", "recipientType": "Requestor", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "requestor_admin_eligible@test.com" ], - "id": "Notification_Requestor_Admin_Eligible", + "id": "Notification_Requestor_Admin_Eligibility", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Eligibility", "targetObjects": null, @@ -782,16 +782,16 @@ "notificationType": "Email", "recipientType": "Approver", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "approver_admin_eligible@test.com" ], - "id": "Notification_Approver_Admin_Eligible", + "id": "Notification_Approver_Admin_Eligibility", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Eligibility", "targetObjects": null, @@ -801,12 +801,12 @@ }, { "enabledRules": [], - "id": "Enablement_Admin_Eligible", + "id": "Enablement_Admin_Eligibility", "ruleType": "RoleManagementPolicyEnablementRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Eligibility", "targetObjects": null, @@ -817,12 +817,12 @@ { "isExpirationRequired": false, "maximumDuration": "P90D", - "id": "Expiration_Admin_Member", + "id": "Expiration_Admin_Assignment", "ruleType": "RoleManagementPolicyExpirationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -835,12 +835,12 @@ "Justification", "MultiFactorAuthentication" ], - "id": "Enablement_Admin_Member", + "id": "Enablement_Admin_Assignment", "ruleType": "RoleManagementPolicyEnablementRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -852,16 +852,16 @@ "notificationType": "Email", "recipientType": "Admin", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "admin_admin_member@test.com" ], - "id": "Notification_Admin_Admin_Member", + "id": "Notification_Admin_Admin_Assignment", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -873,16 +873,16 @@ "notificationType": "Email", "recipientType": "Requestor", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "requestor_admin_member@test.com" ], - "id": "Notification_Requestor_Admin_Member", + "id": "Notification_Requestor_Admin_Assignment", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -894,16 +894,16 @@ "notificationType": "Email", "recipientType": "Approver", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "approver_admin_member@test.com" ], - "id": "Notification_Approver_Admin_Member", + "id": "Notification_Approver_Admin_Assignment", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "Admin", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -914,12 +914,12 @@ { "isExpirationRequired": true, "maximumDuration": "PT7H", - "id": "Expiration_EndUser_Member", + "id": "Expiration_EndUser_Assignment", "ruleType": "RoleManagementPolicyExpirationRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -933,12 +933,12 @@ "MultiFactorAuthentication", "Ticketing" ], - "id": "Enablement_EndUser_Member", + "id": "Enablement_EndUser_Assignment", "ruleType": "RoleManagementPolicyEnablementRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -976,12 +976,12 @@ } ] }, - "id": "Approval_EndUser_Member", + "id": "Approval_EndUser_Assignment", "ruleType": "RoleManagementPolicyApprovalRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -992,12 +992,12 @@ { "isEnabled": false, "claimValue": "", - "id": "AuthenticationContext_EndUser_Member", + "id": "AuthenticationContext_EndUser_Assignment", "ruleType": "RoleManagementPolicyAuthenticationContextRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -1009,16 +1009,16 @@ "notificationType": "Email", "recipientType": "Admin", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "admin_enduser_member@test.com" ], - "id": "Notification_Admin_EndUser_Member", + "id": "Notification_Admin_EndUser_Assignment", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -1030,16 +1030,16 @@ "notificationType": "Email", "recipientType": "Requestor", "isDefaultRecipientsEnabled": false, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": [ "requestor_enduser_member@test.com" ], - "id": "Notification_Requestor_EndUser_Member", + "id": "Notification_Requestor_EndUser_Assignment", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -1051,14 +1051,14 @@ "notificationType": "Email", "recipientType": "Approver", "isDefaultRecipientsEnabled": true, - "notificationLevel": "CRITICAL", + "notificationLevel": "Critical", "notificationRecipients": null, - "id": "Notification_Approver_EndUser_Member", + "id": "Notification_Approver_EndUser_Assignment", "ruleType": "RoleManagementPolicyNotificationRule", "target": { "caller": "EndUser", "operations": [ - "ALL" + "All" ], "level": "Assignment", "targetObjects": null, @@ -1076,7 +1076,7 @@ } }, "name": "570c3619-7688-4b34-b290-2b8bb3ccab2a", - "id": "/providers/Microsoft.Subscription/subscriptions/129ff972-28f8-46b8-a726-e497be039368/providers/Microsoft.Authorization/RoleManagementPolicies/570c3619-7688-4b34-b290-2b8bb3ccab2a", + "id": "/providers/Microsoft.Subscription/subscriptions/129ff972-28f8-46b8-a726-e497be039368/providers/Microsoft.Authorization/roleManagementPolicies/570c3619-7688-4b34-b290-2b8bb3ccab2a", "type": "Microsoft.Authorization/RoleManagementPolicies" } } diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/PutRoleAssignmentScheduleRequest.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/PutRoleAssignmentScheduleRequest.json index 68331340cf0a..e374bb892137 100644 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/PutRoleAssignmentScheduleRequest.json +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/PutRoleAssignmentScheduleRequest.json @@ -13,7 +13,7 @@ "expiration": { "type": "AfterDuration", "endDateTime": null, - "duration": "08:00:00" + "duration": "PT8H" } }, "condition": "@Resource[Microsoft.Storage/storageAccounts/blobServices/containers:ContainerName] StringEqualsIgnoreCase 'foo_storage_container'", @@ -40,7 +40,7 @@ "expiration": { "type": "AfterDuration", "endDateTime": null, - "duration": "08:00:00" + "duration": "PT8H" } }, "ticketInfo": { diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/PutRoleEligibilityScheduleRequest.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/PutRoleEligibilityScheduleRequest.json index 062fcd509928..5d8dc971105d 100644 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/PutRoleEligibilityScheduleRequest.json +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/PutRoleEligibilityScheduleRequest.json @@ -12,7 +12,7 @@ "expiration": { "type": "AfterDuration", "endDateTime": null, - "duration": "365.00:00:00" + "duration": "P365D" } }, "condition": "@Resource[Microsoft.Storage/storageAccounts/blobServices/containers:ContainerName] StringEqualsIgnoreCase 'foo_storage_container'", @@ -39,7 +39,7 @@ "expiration": { "type": "AfterDuration", "endDateTime": null, - "duration": "365.00:00:00" + "duration": "P365D" } }, "ticketInfo": { diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/PutRoleManagementPolicyAssignment.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/PutRoleManagementPolicyAssignment.json index 4fc4bcad414e..54fd4ac29539 100644 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/PutRoleManagementPolicyAssignment.json +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/PutRoleManagementPolicyAssignment.json @@ -7,7 +7,7 @@ "properties": { "scope": "/subscriptions/129ff972-28f8-46b8-a726-e497be039368", "roleDefinitionId": "/subscriptions/129ff972-28f8-46b8-a726-e497be039368/providers/Microsoft.Authorization/roleDefinitions/a1705bd2-3a8f-45a5-8683-466fcfd5cc24", - "policyId": "/providers/Microsoft.Subscription/subscriptions/129ff972-28f8-46b8-a726-e497be039368/providers/Microsoft.Authorization/RoleManagementPolicies/b959d571-f0b5-4042-88a7-01be6cb22db9" + "policyId": "/providers/Microsoft.Subscription/subscriptions/129ff972-28f8-46b8-a726-e497be039368/providers/Microsoft.Authorization/roleManagementPolicies/b959d571-f0b5-4042-88a7-01be6cb22db9" } } }, @@ -17,7 +17,7 @@ "properties": { "scope": "/subscriptions/129ff972-28f8-46b8-a726-e497be039368", "roleDefinitionId": "/subscriptions/129ff972-28f8-46b8-a726-e497be039368/providers/Microsoft.Authorization/roleDefinitions/a1705bd2-3a8f-45a5-8683-466fcfd5cc24", - "policyId": "/providers/Microsoft.Subscription/subscriptions/129ff972-28f8-46b8-a726-e497be039368/providers/Microsoft.Authorization/RoleManagementPolicies/b959d571-f0b5-4042-88a7-01be6cb22db9", + "policyId": "/providers/Microsoft.Subscription/subscriptions/129ff972-28f8-46b8-a726-e497be039368/providers/Microsoft.Authorization/roleManagementPolicies/b959d571-f0b5-4042-88a7-01be6cb22db9", "policyAssignmentProperties": { "scope": { "id": "/subscriptions/129ff972-28f8-46b8-a726-e497be039368", @@ -30,14 +30,14 @@ "type": "BuiltInRole" }, "policy": { - "id": "b959d571-f0b5-4042-88a7-01be6cb22db9", + "id": "/subscriptions/129ff972-28f8-46b8-a726-e497be039368/providers/Microsoft.Authorization/roleManagementPolicies/b959d571-f0b5-4042-88a7-01be6cb22db9", "lastModifiedBy": null, "lastModifiedDateTime": null } } }, "name": "b959d571-f0b5-4042-88a7-01be6cb22db9_a1705bd2-3a8f-45a5-8683-466fcfd5cc24", - "id": "/providers/Microsoft.Subscription/subscriptions/129ff972-28f8-46b8-a726-e497be039368/providers/Microsoft.Authorization/RoleManagementPolicyAssignment/b959d571-f0b5-4042-88a7-01be6cb22db9_a1705bd2-3a8f-45a5-8683-466fcfd5cc24", + "id": "/providers/Microsoft.Subscription/subscriptions/129ff972-28f8-46b8-a726-e497be039368/providers/Microsoft.Authorization/roleManagementPolicyAssignment/b959d571-f0b5-4042-88a7-01be6cb22db9_a1705bd2-3a8f-45a5-8683-466fcfd5cc24", "type": "Microsoft.Authorization/RoleManagementPolicyAssignment" } } diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/RoleAssignments_CreateById.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/RoleAssignments_CreateById.json new file mode 100644 index 000000000000..b172307d1b28 --- /dev/null +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/RoleAssignments_CreateById.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "roleAssignmentId": "subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/providers/Microsoft.Authorization/roleAssignments/b0f43c54-e787-4862-89b1-a653fa9cf747", + "api-version": "2020-10-01-preview", + "parameters": { + "properties": { + "roleDefinitionId": "/providers/Microsoft.Authorization/roleDefinitions/0b5fe924-9a61-425c-96af-cfe6e287ca2d", + "principalId": "ce2ce14e-85d7-4629-bdbc-454d0519d987", + "principalType": "User" + } + } + }, + "responses": { + "201": { + "body": { + "properties": { + "roleDefinitionId": "/providers/Microsoft.Authorization/roleDefinitions/0b5fe924-9a61-425c-96af-cfe6e287ca2d", + "principalId": "ce2ce14e-85d7-4629-bdbc-454d0519d987", + "principalType": "User", + "scope": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2" + }, + "id": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/providers/Microsoft.Authorization/roleAssignments/b0f43c54-e787-4862-89b1-a653fa9cf747", + "type": "Microsoft.Authorization/roleAssignments", + "name": "b0f43c54-e787-4862-89b1-a653fa9cf747" + } + }, + "200": { + "body": { + "properties": { + "roleDefinitionId": "/providers/Microsoft.Authorization/roleDefinitions/0b5fe924-9a61-425c-96af-cfe6e287ca2d", + "principalId": "ce2ce14e-85d7-4629-bdbc-454d0519d987", + "principalType": "User", + "scope": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2" + }, + "id": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/providers/Microsoft.Authorization/roleAssignments/b0f43c54-e787-4862-89b1-a653fa9cf747", + "type": "Microsoft.Authorization/roleAssignments", + "name": "b0f43c54-e787-4862-89b1-a653fa9cf747" + } + } + } +} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/RoleAssignments_CreateForResource.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/RoleAssignments_CreateForResource.json new file mode 100644 index 000000000000..11ded8825d3a --- /dev/null +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/RoleAssignments_CreateForResource.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "scope": "subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/resourceGroups/testrg/providers/Microsoft.DocumentDb/databaseAccounts/test-db-account", + "roleAssignmentName": "05c5a614-a7d6-4502-b150-c2fb455033ff", + "api-version": "2020-10-01-preview", + "parameters": { + "properties": { + "roleDefinitionId": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/providers/Microsoft.Authorization/roleDefinitions/0b5fe924-9a61-425c-96af-cfe6e287ca2d", + "principalId": "ce2ce14e-85d7-4629-bdbc-454d0519d987", + "principalType": "User" + } + } + }, + "responses": { + "201": { + "body": { + "properties": { + "roleDefinitionId": "/providers/Microsoft.Authorization/roleDefinitions/0b5fe924-9a61-425c-96af-cfe6e287ca2d", + "principalId": "ce2ce14e-85d7-4629-bdbc-454d0519d987", + "principalType": "User", + "scope": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/resourceGroups/testrg/providers/Microsoft.DocumentDb/databaseAccounts/test-db-account" + }, + "id": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/resourceGroups/testrg/providers/Microsoft.DocumentDb/databaseAccounts/test-db-account/providers/Microsoft.Authorization/roleAssignments/05c5a614-a7d6-4502-b150-c2fb455033ff", + "type": "Microsoft.Authorization/roleAssignments", + "name": "05c5a614-a7d6-4502-b150-c2fb455033ff" + } + }, + "200": { + "body": { + "properties": { + "roleDefinitionId": "/providers/Microsoft.Authorization/roleDefinitions/0b5fe924-9a61-425c-96af-cfe6e287ca2d", + "principalId": "ce2ce14e-85d7-4629-bdbc-454d0519d987", + "principalType": "User", + "scope": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/resourceGroups/testrg/providers/Microsoft.DocumentDb/databaseAccounts/test-db-account" + }, + "id": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/resourceGroups/testrg/providers/Microsoft.DocumentDb/databaseAccounts/test-db-account/providers/Microsoft.Authorization/roleAssignments/05c5a614-a7d6-4502-b150-c2fb455033ff", + "type": "Microsoft.Authorization/roleAssignments", + "name": "05c5a614-a7d6-4502-b150-c2fb455033ff" + } + } + } +} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/RoleAssignments_CreateForResourceGroup.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/RoleAssignments_CreateForResourceGroup.json new file mode 100644 index 000000000000..37a69263995f --- /dev/null +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/RoleAssignments_CreateForResourceGroup.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "scope": "subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/resourceGroups/testrg", + "roleAssignmentName": "05c5a614-a7d6-4502-b150-c2fb455033ff", + "api-version": "2020-10-01-preview", + "parameters": { + "properties": { + "roleDefinitionId": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/providers/Microsoft.Authorization/roleDefinitions/0b5fe924-9a61-425c-96af-cfe6e287ca2d", + "principalId": "ce2ce14e-85d7-4629-bdbc-454d0519d987", + "principalType": "User" + } + } + }, + "responses": { + "201": { + "body": { + "properties": { + "roleDefinitionId": "/providers/Microsoft.Authorization/roleDefinitions/0b5fe924-9a61-425c-96af-cfe6e287ca2d", + "principalId": "ce2ce14e-85d7-4629-bdbc-454d0519d987", + "principalType": "User", + "scope": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/resourceGroups/testrg" + }, + "id": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/resourceGroups/testrg/providers/Microsoft.Authorization/roleAssignments/05c5a614-a7d6-4502-b150-c2fb455033ff", + "type": "Microsoft.Authorization/roleAssignments", + "name": "05c5a614-a7d6-4502-b150-c2fb455033ff" + } + }, + "200": { + "body": { + "properties": { + "roleDefinitionId": "/providers/Microsoft.Authorization/roleDefinitions/0b5fe924-9a61-425c-96af-cfe6e287ca2d", + "principalId": "ce2ce14e-85d7-4629-bdbc-454d0519d987", + "principalType": "User", + "scope": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/resourceGroups/testrg" + }, + "id": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/resourceGroups/testrg/providers/Microsoft.Authorization/roleAssignments/05c5a614-a7d6-4502-b150-c2fb455033ff", + "type": "Microsoft.Authorization/roleAssignments", + "name": "05c5a614-a7d6-4502-b150-c2fb455033ff" + } + } + } +} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/RoleAssignments_CreateForSubscription.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/RoleAssignments_CreateForSubscription.json new file mode 100644 index 000000000000..60c5abcccc2c --- /dev/null +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/RoleAssignments_CreateForSubscription.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "scope": "subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2", + "roleAssignmentName": "05c5a614-a7d6-4502-b150-c2fb455033ff", + "api-version": "2020-10-01-preview", + "parameters": { + "properties": { + "roleDefinitionId": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/providers/Microsoft.Authorization/roleDefinitions/0b5fe924-9a61-425c-96af-cfe6e287ca2d", + "principalId": "ce2ce14e-85d7-4629-bdbc-454d0519d987", + "principalType": "User" + } + } + }, + "responses": { + "201": { + "body": { + "properties": { + "roleDefinitionId": "/providers/Microsoft.Authorization/roleDefinitions/0b5fe924-9a61-425c-96af-cfe6e287ca2d", + "principalId": "ce2ce14e-85d7-4629-bdbc-454d0519d987", + "principalType": "User", + "scope": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2" + }, + "id": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/providers/Microsoft.Authorization/roleAssignments/05c5a614-a7d6-4502-b150-c2fb455033ff", + "type": "Microsoft.Authorization/roleAssignments", + "name": "05c5a614-a7d6-4502-b150-c2fb455033ff" + } + }, + "200": { + "body": { + "properties": { + "roleDefinitionId": "/providers/Microsoft.Authorization/roleDefinitions/0b5fe924-9a61-425c-96af-cfe6e287ca2d", + "principalId": "ce2ce14e-85d7-4629-bdbc-454d0519d987", + "principalType": "User", + "scope": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2" + }, + "id": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/providers/Microsoft.Authorization/roleAssignments/05c5a614-a7d6-4502-b150-c2fb455033ff", + "type": "Microsoft.Authorization/roleAssignments", + "name": "05c5a614-a7d6-4502-b150-c2fb455033ff" + } + } + } +} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/RoleAssignments_Delete.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/RoleAssignments_Delete.json new file mode 100644 index 000000000000..d8b002860e45 --- /dev/null +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/RoleAssignments_Delete.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "scope": "subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2", + "roleAssignmentName": "b0f43c54-e787-4862-89b1-a653fa9cf747", + "api-version": "2020-10-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "roleDefinitionId": "/providers/Microsoft.Authorization/roleDefinitions/0b5fe924-9a61-425c-96af-cfe6e287ca2d", + "principalId": "ce2ce14e-85d7-4629-bdbc-454d0519d987", + "principalType": "User", + "scope": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2" + }, + "id": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/providers/Microsoft.Authorization/roleAssignments/b0f43c54-e787-4862-89b1-a653fa9cf747", + "type": "Microsoft.Authorization/roleAssignments", + "name": "b0f43c54-e787-4862-89b1-a653fa9cf747" + } + }, + "204": {} + } +} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/RoleAssignments_DeleteById.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/RoleAssignments_DeleteById.json new file mode 100644 index 000000000000..a414596e76e5 --- /dev/null +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/RoleAssignments_DeleteById.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "roleAssignmentId": "subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/providers/Microsoft.Authorization/roleAssignments/b0f43c54-e787-4862-89b1-a653fa9cf747", + "api-version": "2020-10-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "roleDefinitionId": "/providers/Microsoft.Authorization/roleDefinitions/0b5fe924-9a61-425c-96af-cfe6e287ca2d", + "principalId": "ce2ce14e-85d7-4629-bdbc-454d0519d987", + "principalType": "User", + "scope": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2" + }, + "id": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/providers/Microsoft.Authorization/roleAssignments/b0f43c54-e787-4862-89b1-a653fa9cf747", + "type": "Microsoft.Authorization/roleAssignments", + "name": "b0f43c54-e787-4862-89b1-a653fa9cf747" + } + }, + "204": {} + } +} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/RoleAssignments_Get.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/RoleAssignments_Get.json new file mode 100644 index 000000000000..93052cf0c395 --- /dev/null +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/RoleAssignments_Get.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "scope": "subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2", + "roleAssignmentName": "b0f43c54-e787-4862-89b1-a653fa9cf747", + "api-version": "2020-10-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "roleDefinitionId": "/providers/Microsoft.Authorization/roleDefinitions/0b5fe924-9a61-425c-96af-cfe6e287ca2d", + "principalId": "ce2ce14e-85d7-4629-bdbc-454d0519d987", + "principalType": "User", + "scope": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2" + }, + "id": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/providers/Microsoft.Authorization/roleAssignments/b0f43c54-e787-4862-89b1-a653fa9cf747", + "type": "Microsoft.Authorization/roleAssignments", + "name": "b0f43c54-e787-4862-89b1-a653fa9cf747" + } + } + } +} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/RoleAssignments_GetById.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/RoleAssignments_GetById.json new file mode 100644 index 000000000000..a5d8de87a3ad --- /dev/null +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/RoleAssignments_GetById.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "roleAssignmentId": "subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/providers/Microsoft.Authorization/roleAssignments/b0f43c54-e787-4862-89b1-a653fa9cf747", + "api-version": "2020-10-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "roleDefinitionId": "/providers/Microsoft.Authorization/roleDefinitions/0b5fe924-9a61-425c-96af-cfe6e287ca2d", + "principalId": "ce2ce14e-85d7-4629-bdbc-454d0519d987", + "principalType": "User", + "scope": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2" + }, + "id": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/providers/Microsoft.Authorization/roleAssignments/b0f43c54-e787-4862-89b1-a653fa9cf747", + "type": "Microsoft.Authorization/roleAssignments", + "name": "b0f43c54-e787-4862-89b1-a653fa9cf747" + } + } + } +} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/RoleAssignments_ListForResource.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/RoleAssignments_ListForResource.json new file mode 100644 index 000000000000..85683823c41f --- /dev/null +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/RoleAssignments_ListForResource.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "a925f2f7-5c63-4b7b-8799-25a5f97bc3b2", + "resourceGroupName": "testrg", + "resourceProviderNamespace": "Microsoft.DocumentDb", + "resourceType": "databaseAccounts", + "resourceName": "test-db-account", + "api-version": "2020-10-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "roleDefinitionId": "/providers/Microsoft.Authorization/roleDefinitions/0b5fe924-9a61-425c-96af-cfe6e287ca2d", + "principalId": "ce2ce14e-85d7-4629-bdbc-454d0519d987", + "principalType": "User", + "scope": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2" + }, + "id": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/providers/Microsoft.Authorization/roleAssignments/b0f43c54-e787-4862-89b1-a653fa9cf747", + "type": "Microsoft.Authorization/roleAssignments", + "name": "b0f43c54-e787-4862-89b1-a653fa9cf747" + }, + { + "properties": { + "roleDefinitionId": "/providers/Microsoft.Authorization/roleDefinitions/0b5fe924-9a61-425c-96af-cfe6e287ca2d", + "principalId": "ce2ce14e-85d7-4629-bdbc-454d0519d987", + "principalType": "User", + "scope": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/resourceGroups/testrg" + }, + "id": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/resourceGroups/testrg/providers/Microsoft.Authorization/roleAssignments/96786e4b-dede-4c2e-8736-8ab911987f08", + "type": "Microsoft.Authorization/roleAssignments", + "name": "96786e4b-dede-4c2e-8736-8ab911987f08" + }, + { + "properties": { + "roleDefinitionId": "/providers/Microsoft.Authorization/roleDefinitions/0b5fe924-9a61-425c-96af-cfe6e287ca2d", + "principalId": "ce2ce14e-85d7-4629-bdbc-454d0519d987", + "principalType": "User", + "scope": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/resourceGroups/testrg/providers/Microsoft.DocumentDb/databaseAccounts/test-db-account" + }, + "id": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/resourceGroups/testrg/providers/Microsoft.DocumentDb/databaseAccounts/test-db-account/providers/Microsoft.Authorization/roleAssignments/05c5a614-a7d6-4502-b150-c2fb455033ff", + "type": "Microsoft.Authorization/roleAssignments", + "name": "05c5a614-a7d6-4502-b150-c2fb455033ff" + } + ] + } + } + } +} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/RoleAssignments_ListForResourceGroup.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/RoleAssignments_ListForResourceGroup.json new file mode 100644 index 000000000000..80054fb926d5 --- /dev/null +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/RoleAssignments_ListForResourceGroup.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "a925f2f7-5c63-4b7b-8799-25a5f97bc3b2", + "resourceGroupName": "testrg", + "api-version": "2020-10-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "roleDefinitionId": "/providers/Microsoft.Authorization/roleDefinitions/0b5fe924-9a61-425c-96af-cfe6e287ca2d", + "principalId": "ce2ce14e-85d7-4629-bdbc-454d0519d987", + "principalType": "User", + "scope": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2" + }, + "id": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/providers/Microsoft.Authorization/roleAssignments/b0f43c54-e787-4862-89b1-a653fa9cf747", + "type": "Microsoft.Authorization/roleAssignments", + "name": "b0f43c54-e787-4862-89b1-a653fa9cf747" + }, + { + "properties": { + "roleDefinitionId": "/providers/Microsoft.Authorization/roleDefinitions/0b5fe924-9a61-425c-96af-cfe6e287ca2d", + "principalId": "ce2ce14e-85d7-4629-bdbc-454d0519d987", + "principalType": "User", + "scope": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/resourceGroups/testrg" + }, + "id": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/resourceGroups/testrg/providers/Microsoft.Authorization/roleAssignments/96786e4b-dede-4c2e-8736-8ab911987f08", + "type": "Microsoft.Authorization/roleAssignments", + "name": "96786e4b-dede-4c2e-8736-8ab911987f08" + } + ] + } + } + } +} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/RoleAssignments_ListForScope.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/RoleAssignments_ListForScope.json new file mode 100644 index 000000000000..fde73619393d --- /dev/null +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/RoleAssignments_ListForScope.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "scope": "subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2", + "api-version": "2020-10-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "roleDefinitionId": "/providers/Microsoft.Authorization/roleDefinitions/0b5fe924-9a61-425c-96af-cfe6e287ca2d", + "principalId": "ce2ce14e-85d7-4629-bdbc-454d0519d987", + "principalType": "User", + "scope": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2" + }, + "id": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/providers/Microsoft.Authorization/roleAssignments/b0f43c54-e787-4862-89b1-a653fa9cf747", + "type": "Microsoft.Authorization/roleAssignments", + "name": "b0f43c54-e787-4862-89b1-a653fa9cf747" + } + ] + } + } + } +} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/RoleAssignments_ListForSubscription.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/RoleAssignments_ListForSubscription.json new file mode 100644 index 000000000000..91082f6498b2 --- /dev/null +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/RoleAssignments_ListForSubscription.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "a925f2f7-5c63-4b7b-8799-25a5f97bc3b2", + "api-version": "2020-10-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "roleDefinitionId": "/providers/Microsoft.Authorization/roleDefinitions/0b5fe924-9a61-425c-96af-cfe6e287ca2d", + "principalId": "ce2ce14e-85d7-4629-bdbc-454d0519d987", + "principalType": "User", + "scope": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2" + }, + "id": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/providers/Microsoft.Authorization/roleAssignments/b0f43c54-e787-4862-89b1-a653fa9cf747", + "type": "Microsoft.Authorization/roleAssignments", + "name": "b0f43c54-e787-4862-89b1-a653fa9cf747" + } + ] + } + } + } +} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/RoleAssignments_ValidateByIdInvalid.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/RoleAssignments_ValidateByIdInvalid.json new file mode 100644 index 000000000000..7f5a3391adf5 --- /dev/null +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/RoleAssignments_ValidateByIdInvalid.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "roleAssignmentId": "subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/providers/Microsoft.Authorization/roleAssignments/b0f43c54-e787-4862-89b1-a653fa9cf747", + "api-version": "2020-10-01-preview", + "parameters": { + "properties": { + "roleDefinitionId": "/providers/Microsoft.Authorization/roleDefinitions/0b5fe924-9a61-425c-96af-cfe6e287ca2d", + "principalId": "ce2ce14e-85d7-4629-bdbc-454d0519d987", + "principalType": "User" + } + } + }, + "responses": { + "200": { + "body": { + "isValid": false, + "errorInfo": { + "code": "InvalidRoleDefinitionId", + "message": "The specified role definition with ID '0b5fe924-9a61-425c-96af-cfe6e287ca2d' does not exist." + } + } + } + } +} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/RoleAssignments_ValidateByIdValid.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/RoleAssignments_ValidateByIdValid.json new file mode 100644 index 000000000000..e533ed6a6352 --- /dev/null +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/RoleAssignments_ValidateByIdValid.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "roleAssignmentId": "subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/providers/Microsoft.Authorization/roleAssignments/b0f43c54-e787-4862-89b1-a653fa9cf747", + "api-version": "2020-10-01-preview", + "parameters": { + "properties": { + "roleDefinitionId": "/providers/Microsoft.Authorization/roleDefinitions/0b5fe924-9a61-425c-96af-cfe6e287ca2d", + "principalId": "ce2ce14e-85d7-4629-bdbc-454d0519d987", + "principalType": "User" + } + } + }, + "responses": { + "200": { + "body": { + "isValid": true + } + } + } +} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/RoleAssignments_ValidateInvalid.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/RoleAssignments_ValidateInvalid.json new file mode 100644 index 000000000000..9fdd04ebcaf5 --- /dev/null +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/RoleAssignments_ValidateInvalid.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "scope": "subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2", + "roleAssignmentName": "05c5a614-a7d6-4502-b150-c2fb455033ff", + "api-version": "2020-10-01-preview", + "parameters": { + "properties": { + "roleDefinitionId": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/providers/Microsoft.Authorization/roleDefinitions/0b5fe924-9a61-425c-96af-cfe6e287ca2d", + "principalId": "ce2ce14e-85d7-4629-bdbc-454d0519d987", + "principalType": "User" + } + } + }, + "responses": { + "200": { + "body": { + "isValid": false, + "errorInfo": { + "code": "InvalidRoleDefinitionId", + "message": "The specified role definition with ID '0b5fe924-9a61-425c-96af-cfe6e287ca2d' does not exist." + } + } + } + } +} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/RoleAssignments_ValidateValid.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/RoleAssignments_ValidateValid.json new file mode 100644 index 000000000000..c6065de7bdae --- /dev/null +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2020-10-01-preview/examples/RoleAssignments_ValidateValid.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "scope": "subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2", + "roleAssignmentName": "05c5a614-a7d6-4502-b150-c2fb455033ff", + "api-version": "2020-10-01-preview", + "parameters": { + "properties": { + "roleDefinitionId": "/subscriptions/a925f2f7-5c63-4b7b-8799-25a5f97bc3b2/providers/Microsoft.Authorization/roleDefinitions/0b5fe924-9a61-425c-96af-cfe6e287ca2d", + "principalId": "ce2ce14e-85d7-4629-bdbc-454d0519d987", + "principalType": "User" + } + } + }, + "responses": { + "200": { + "body": { + "isValid": true + } + } + } +} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2021-03-01-preview/authorization-AccessReviewCalls.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2021-03-01-preview/authorization-AccessReviewCalls.json index 49df2a165880..15e3c1facb30 100644 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2021-03-01-preview/authorization-AccessReviewCalls.json +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2021-03-01-preview/authorization-AccessReviewCalls.json @@ -81,6 +81,9 @@ }, { "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/AccessReviewsFilterParameter" } ], "responses": { @@ -301,6 +304,9 @@ }, { "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/AccessReviewsFilterParameter" } ], "responses": { @@ -592,6 +598,9 @@ }, { "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/AccessReviewsFilterParameter" } ], "responses": { @@ -707,6 +716,9 @@ "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/AccessReviewsFilterParameter" } ], "responses": { @@ -750,6 +762,9 @@ }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/AccessReviewsFilterParameter" } ], "responses": { @@ -891,6 +906,9 @@ }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/AccessReviewsFilterParameter" } ], "responses": { @@ -1386,6 +1404,24 @@ "name": "AccessReviewScopePrincipalType", "modelAsString": true } + }, + "assignmentState": { + "type": "string", + "readOnly": true, + "description": "The role assignment state eligible/active to review", + "enum": [ + "eligible", + "active" + ], + "x-ms-enum": { + "name": "AccessReviewScopeAssignmentState", + "modelAsString": true + } + }, + "inactiveDuration": { + "type": "string", + "format": "duration", + "description": "Duration users are inactive for. The value should be in ISO 8601 format (http://en.wikipedia.org/wiki/ISO_8601#Durations).This code can be used to convert TimeSpan to a valid interval string: XmlConvert.ToString(new TimeSpan(hours, minutes, seconds))" } }, "description": "Descriptor for what needs to be reviewed" @@ -1824,6 +1860,15 @@ "required": true, "type": "string", "description": "The API version to be used with the HTTP request." + }, + "AccessReviewsFilterParameter": { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. Other than standard filters, one custom filter option is supported : 'assignedToMeToReview()'. When one specified $filter=assignedToMeToReview(), only items that are assigned to the calling user to review are returned", + "x-ms-skip-url-encoding": true, + "x-ms-parameter-location": "method" } } } diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2021-03-01-preview/examples/GetAccessReviewInstanceAssignedForMyApproval.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2021-03-01-preview/examples/GetAccessReviewInstanceAssignedForMyApproval.json index 21c7b4f65958..6a31c9a623a6 100644 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2021-03-01-preview/examples/GetAccessReviewInstanceAssignedForMyApproval.json +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2021-03-01-preview/examples/GetAccessReviewInstanceAssignedForMyApproval.json @@ -2,7 +2,8 @@ "parameters": { "api-version": "2021-03-01-preview", "scheduleDefinitionId": "488a6d0e-0a63-4946-86e3-1f5bbc934661", - "id": "4135f961-be78-4005-8101-c72a5af307a2" + "id": "4135f961-be78-4005-8101-c72a5af307a2", + "$filter": "assignedToMeToReview()" }, "responses": { "200": { diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2021-03-01-preview/examples/GetAccessReviewInstancesAssignedForMyApproval.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2021-03-01-preview/examples/GetAccessReviewInstancesAssignedForMyApproval.json index ecde1dabf322..106c6b99a13f 100644 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2021-03-01-preview/examples/GetAccessReviewInstancesAssignedForMyApproval.json +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2021-03-01-preview/examples/GetAccessReviewInstancesAssignedForMyApproval.json @@ -1,7 +1,8 @@ { "parameters": { "api-version": "2021-03-01-preview", - "scheduleDefinitionId": "488a6d0e-0a63-4946-86e3-1f5bbc934661" + "scheduleDefinitionId": "488a6d0e-0a63-4946-86e3-1f5bbc934661", + "$filter": "assignedToMeToReview()" }, "responses": { "200": { diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2021-03-01-preview/examples/GetAccessReviewScheduleDefinitionsAssignedForMyApproval.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2021-03-01-preview/examples/GetAccessReviewScheduleDefinitionsAssignedForMyApproval.json index e4225ed1bb8c..c45aa036bb0c 100644 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2021-03-01-preview/examples/GetAccessReviewScheduleDefinitionsAssignedForMyApproval.json +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2021-03-01-preview/examples/GetAccessReviewScheduleDefinitionsAssignedForMyApproval.json @@ -1,6 +1,7 @@ { "parameters": { - "api-version": "2021-03-01-preview" + "api-version": "2021-03-01-preview", + "$filter": "assignedToMeToReview()" }, "responses": { "200": { diff --git a/specification/authorization/resource-manager/readme.azureresourceschema.md b/specification/authorization/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index f667b0ddc104..000000000000 --- a/specification/authorization/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,175 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-authorization-2021-03-01-preview - - tag: schema-authorization-2021-01-01-preview - - tag: schema-authorization-2020-10-01-preview - - tag: schema-authorization-2020-04-01-preview - - tag: schema-authorization-2020-03-01-preview - - tag: schema-authorization-2018-09-01-preview - - tag: schema-authorization-2018-07-01-preview - - tag: schema-authorization-2018-05-01-preview - - tag: schema-authorization-2018-01-01-preview - - tag: schema-authorization-2017-10-01-preview - - tag: schema-authorization-2015-07-01 - - tag: schema-authorization-2015-06-01 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-authorization-2021-03-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-authorization-2021-03-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Authorization/preview/2021-03-01-preview/authorization-AccessReviewCalls.json - -``` - -### Tag: schema-authorization-2021-01-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-authorization-2021-01-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Authorization/preview/2021-01-01-preview/authorization-RoleAssignmentApprovalCalls.json - -``` - -### Tag: schema-authorization-2020-10-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-authorization-2020-10-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Authorization/preview/2020-10-01-preview/RoleAssignmentSchedule.json - - Microsoft.Authorization/preview/2020-10-01-preview/RoleAssignmentScheduleInstance.json - - Microsoft.Authorization/preview/2020-10-01-preview/RoleAssignmentScheduleRequest.json - - Microsoft.Authorization/preview/2020-10-01-preview/RoleEligibilitySchedule.json - - Microsoft.Authorization/preview/2020-10-01-preview/RoleEligibilityScheduleInstance.json - - Microsoft.Authorization/preview/2020-10-01-preview/RoleEligibilityScheduleRequest.json - - Microsoft.Authorization/preview/2020-10-01-preview/RoleManagementPolicy.json - - Microsoft.Authorization/preview/2020-10-01-preview/RoleManagementPolicyAssignment.json - -``` - -### Tag: schema-authorization-2020-04-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-authorization-2020-04-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Authorization/preview/2020-04-01-preview/authorization-RoleAssignmentsCalls.json - -``` - -### Tag: schema-authorization-2020-03-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-authorization-2020-03-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Authorization/preview/2020-03-01-preview/authorization-ClassicAdminCalls.json - - Microsoft.Authorization/preview/2020-03-01-preview/authorization-ElevateAccessCalls.json - - Microsoft.Authorization/preview/2020-03-01-preview/authorization-ProviderOperationsCalls.json - - Microsoft.Authorization/preview/2020-03-01-preview/authorization-RoleDefinitionsCalls.json - - Microsoft.Authorization/preview/2020-03-01-preview/authorization-DenyAssignmentGetCalls.json - - Microsoft.Authorization/preview/2020-03-01-preview/authorization-RoleAssignmentsCalls.json - - Microsoft.Authorization/preview/2020-03-01-preview/authorization-PermissionsCalls.json - -``` - -### Tag: schema-authorization-2018-09-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-authorization-2018-09-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Authorization/preview/2018-09-01-preview/authorization-RoleAssignmentsCalls.json - -``` - -### Tag: schema-authorization-2018-07-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-authorization-2018-07-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Authorization/preview/2018-07-01-preview/authorization-DenyAssignmentGetCalls.json - -``` - -### Tag: schema-authorization-2018-05-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-authorization-2018-05-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Authorization/preview/2018-05-01-preview/authorization-AccessReviewCalls.json - -``` - -### Tag: schema-authorization-2018-01-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-authorization-2018-01-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Authorization/preview/2018-01-01-preview/authorization-ProviderOperationsCalls.json - - Microsoft.Authorization/preview/2018-01-01-preview/authorization-RoleDefinitionsCalls.json - - Microsoft.Authorization/preview/2018-01-01-preview/authorization-RoleAssignmentsCalls.json - -``` - -### Tag: schema-authorization-2017-10-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-authorization-2017-10-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Authorization/preview/2017-10-01-preview/authorization-RoleAssignmentsCalls.json - -``` - -### Tag: schema-authorization-2015-07-01 and azureresourceschema - -``` yaml $(tag) == 'schema-authorization-2015-07-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Authorization/stable/2015-07-01/authorization-ElevateAccessCalls.json - - Microsoft.Authorization/stable/2015-07-01/authorization-RoleDefinitionsCalls.json - - Microsoft.Authorization/stable/2015-07-01/authorization-ProviderOperationsCalls.json - - Microsoft.Authorization/stable/2015-07-01/authorization-RoleAssignmentsCalls.json - - Microsoft.Authorization/stable/2015-07-01/authorization-ClassicAdminCalls.json - -``` - -### Tag: schema-authorization-2015-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-authorization-2015-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Authorization/preview/2015-06-01/authorization-ClassicAdminCalls.json - -``` diff --git a/specification/authorization/resource-manager/readme.csharp.md b/specification/authorization/resource-manager/readme.csharp.md index 98672bc03bc6..b2467c1c74d4 100644 --- a/specification/authorization/resource-manager/readme.csharp.md +++ b/specification/authorization/resource-manager/readme.csharp.md @@ -110,7 +110,7 @@ batch: - tag: profile-hybrid-2019-03-01 ``` - ### Profile: hybrid_2020_09_01 +### Profile: hybrid_2020_09_01 These settings apply only when `--csharp-profile=hybrid_2020_09_01` is specified on the command line. @@ -121,3 +121,15 @@ output-folder: $(csharp-sdks-folder)/$(csharp-profile)/Authorization/Management. batch: - tag: profile-hybrid-2020-09-01 ``` + +### Profile: profile_2020_10_01_preview + +These settings apply only when `--csharp-profile=profile_2020_10_01_preview` is specified on the command line. + + ``` yaml $(csharp-profile)=='profile_2020_10_01_preview' +namespace: Microsoft.Azure.Management.Profiles.$(csharp-profile).Authorization +output-folder: $(csharp-sdks-folder)/Authorization/Management.Authorization/$(csharp-profile)/Generated + +batch: + - tag: package-2020-10-01-preview + ``` \ No newline at end of file diff --git a/specification/authorization/resource-manager/readme.go.md b/specification/authorization/resource-manager/readme.go.md index 3ce8f0241d2b..5fc1395ba05f 100644 --- a/specification/authorization/resource-manager/readme.go.md +++ b/specification/authorization/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: authorization clear-output-folder: true ``` @@ -19,6 +19,7 @@ batch: - tag: package-2018-07-01-preview - tag: package-2018-09-01-preview - tag: package-2020-04-01-preview + - tag: package-2020-10-01-preview ``` ### Tag: package-2015-07-01 and go @@ -74,3 +75,12 @@ Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2020-10-01-preview' && $(go) +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2020-10-01-preview/$(namespace) +``` diff --git a/specification/authorization/resource-manager/readme.java.md b/specification/authorization/resource-manager/readme.java.md index 5ee034dfdb6e..be6d12d76089 100644 --- a/specification/authorization/resource-manager/readme.java.md +++ b/specification/authorization/resource-manager/readme.java.md @@ -20,6 +20,7 @@ batch: - tag: package-2018-07-01-preview-only - tag: package-2015-06-01-preview - tag: package-2018-05-01-preview + - tag: package-2020-10-01-preview - tag: package-2021-01-01-preview-only - tag: package-2021-03-01-preview-only ``` @@ -114,3 +115,16 @@ java: regenerate-manager: true generate-interface: true ``` + +### Tag: package-2020-10-01-preview and java + +These settings apply only when `--tag=package-2020-10-01-preview --java` is specified on he command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-2020-10-01-preview' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.authorization.v2020_10_01_preview + output-folder: $(azure-libraries-for-java-folder)/sdk/authorization/mgmt-v2020_10_01_preview +regenerate-manager: true +generate-interface: true +``` diff --git a/specification/authorization/resource-manager/readme.md b/specification/authorization/resource-manager/readme.md index 2dc43deb9bc3..b5b24935109a 100644 --- a/specification/authorization/resource-manager/readme.md +++ b/specification/authorization/resource-manager/readme.md @@ -77,6 +77,17 @@ directive: reason: Preview versions still in use - suppress: RequiredSystemDataInNewApiVersions reason: Existing APIs don't have this attribute. Suppressing so that we don't have to make changes to existing APIs + - suppress: RequiredReadOnlySystemData + reason: Existing APIs don't have this attribute. Suppressing so that we don't have to make changes to existing APIs + - suppress: XmsPathsMustOverloadPaths + from: authorization-RoleDefinitionsCalls.json + reason: x-ms-paths extension was previously required. Suppressing so that we don't have to make changes to existing APIs. + - suppress: AddedPropertyInResponse + from: authorization-AccessReviewCalls.json + reason: API documentation is not exposed yet. We're making some small changes before publishing documentation. + - suppress: AddingOptionalProperty + from: authorization-AccessReviewCalls.json + reason: API documentation is not exposed yet. We're making some small changes before publishing documentation. ``` ### Tag: package-2021-03-01-preview-only @@ -102,6 +113,8 @@ input-file: - Microsoft.Authorization/preview/2020-10-01-preview/RoleEligibilityScheduleRequest.json - Microsoft.Authorization/preview/2020-10-01-preview/RoleManagementPolicy.json - Microsoft.Authorization/preview/2020-10-01-preview/RoleManagementPolicyAssignment.json +- Microsoft.Authorization/preview/2020-10-01-preview/EligibleChildResources.json +- Microsoft.Authorization/preview/2020-10-01-preview/authorization-RoleAssignmentsCalls.json ``` ### Tag: package-2020-08-01-preview @@ -110,14 +123,13 @@ These settings apply only when `--tag=package-2020-08-01-preview` is specified o ``` yaml $(tag) == 'package-2020-08-01-preview' input-file: -- Microsoft.Authorization/preview/2020-03-01-preview/authorization-ClassicAdminCalls.json -- Microsoft.Authorization/preview/2020-03-01-preview/authorization-ElevateAccessCalls.json -- Microsoft.Authorization/preview/2020-03-01-preview/authorization-ProviderOperationsCalls.json -- Microsoft.Authorization/preview/2020-03-01-preview/authorization-RoleDefinitionsCalls.json -- Microsoft.Authorization/preview/2020-03-01-preview/authorization-DenyAssignmentGetCalls.json -- Microsoft.Authorization/preview/2020-03-01-preview/authorization-PermissionsCalls.json -- Microsoft.Authorization/preview/2020-08-01-preview/authorization-RoleAssignmentsCalls.json +- Microsoft.Authorization/preview/2015-06-01/authorization-ClassicAdminCalls.json +- Microsoft.Authorization/stable/2015-07-01/authorization-ElevateAccessCalls.json +- Microsoft.Authorization/preview/2018-01-01-preview/authorization-ProviderOperationsCalls.json +- Microsoft.Authorization/preview/2018-01-01-preview/authorization-RoleDefinitionsCalls.json +- Microsoft.Authorization/preview/2018-07-01-preview/authorization-DenyAssignmentGetCalls.json - Microsoft.Authorization/preview/2019-08-01-preview/authorization-UsageMetricsCalls.json +- Microsoft.Authorization/preview/2020-08-01-preview/authorization-RoleAssignmentsCalls.json ``` ### Tag: package-2020-04-01-preview @@ -131,8 +143,8 @@ input-file: - Microsoft.Authorization/preview/2018-01-01-preview/authorization-ProviderOperationsCalls.json - Microsoft.Authorization/preview/2018-01-01-preview/authorization-RoleDefinitionsCalls.json - Microsoft.Authorization/preview/2018-07-01-preview/authorization-DenyAssignmentGetCalls.json -- Microsoft.Authorization/preview/2020-04-01-preview/authorization-RoleAssignmentsCalls.json - Microsoft.Authorization/preview/2019-08-01-preview/authorization-UsageMetricsCalls.json +- Microsoft.Authorization/preview/2020-04-01-preview/authorization-RoleAssignmentsCalls.json ``` ### Tag: package-2020-04-01-preview-only @@ -150,13 +162,12 @@ These settings apply only when `--tag=package-2020-03-01-preview` is specified o ``` yaml $(tag) == 'package-2020-03-01-preview' input-file: -- Microsoft.Authorization/preview/2020-03-01-preview/authorization-ClassicAdminCalls.json -- Microsoft.Authorization/preview/2020-03-01-preview/authorization-ElevateAccessCalls.json -- Microsoft.Authorization/preview/2020-03-01-preview/authorization-ProviderOperationsCalls.json -- Microsoft.Authorization/preview/2020-03-01-preview/authorization-RoleDefinitionsCalls.json -- Microsoft.Authorization/preview/2020-03-01-preview/authorization-DenyAssignmentGetCalls.json +- Microsoft.Authorization/preview/2015-06-01/authorization-ClassicAdminCalls.json +- Microsoft.Authorization/stable/2015-07-01/authorization-ElevateAccessCalls.json +- Microsoft.Authorization/preview/2018-01-01-preview/authorization-ProviderOperationsCalls.json +- Microsoft.Authorization/preview/2018-01-01-preview/authorization-RoleDefinitionsCalls.json +- Microsoft.Authorization/preview/2018-07-01-preview/authorization-DenyAssignmentGetCalls.json - Microsoft.Authorization/preview/2020-03-01-preview/authorization-RoleAssignmentsCalls.json -- Microsoft.Authorization/preview/2020-03-01-preview/authorization-PermissionsCalls.json - Microsoft.Authorization/preview/2019-08-01-preview/authorization-UsageMetricsCalls.json ``` @@ -341,8 +352,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_authorization'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js authorization/resource-manager ``` ## Go @@ -353,7 +362,5 @@ See configuration in [readme.go.md](./readme.go.md) See configuration in [readme.java.md](./readme.java.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/authorization/resource-manager/readme.python.md b/specification/authorization/resource-manager/readme.python.md index abe572efba2c..f43554d6a8ea 100644 --- a/specification/authorization/resource-manager/readme.python.md +++ b/specification/authorization/resource-manager/readme.python.md @@ -24,6 +24,7 @@ batch: - tag: package-2021-03-01-preview-only - tag: package-2021-01-01-preview-only - tag: package-2020-04-01-preview-only + - tag: package-2020-10-01-preview - tag: package-2018-09-01-preview-only - tag: package-2018-07-01-preview-only - tag: package-2018-05-01-preview @@ -121,3 +122,12 @@ python: namespace: azure.mgmt.authorization.v2021_01_01_preview output-folder: $(python-sdks-folder)/authorization/azure-mgmt-authorization/azure/mgmt/authorization/v2021_01_01_preview ``` +### Tag: package-2020-10-01-preview and python + +These settings apply only when `--tag=package-2020-10-01-preview --python` is specified on the command line. + +``` yaml $(tag) == 'package-2020-10-01-preview' && $(python) +python: + namespace: azure.mgmt.authorization.v2020_10_01_preview + output-folder: $(python-sdks-folder)/authorization/azure-mgmt-authorization/azure/mgmt/authorization/v2020_10_01_preview +``` \ No newline at end of file diff --git a/specification/authorization/resource-manager/readme.ruby.md b/specification/authorization/resource-manager/readme.ruby.md index 17e0ca5f7794..f51bc0959efd 100644 --- a/specification/authorization/resource-manager/readme.ruby.md +++ b/specification/authorization/resource-manager/readme.ruby.md @@ -17,6 +17,7 @@ batch: - tag: package-2017-10-01-preview-only - tag: package-2018-01-01-preview-only - tag: package-2018-05-01-preview-only + - tag: package-2020-10-01-preview - tag: package-2021-01-01-preview-only - tag: package-2021-03-01-preview-only ``` @@ -72,6 +73,16 @@ namespace: "Azure::Authorization::Mgmt::V2018_05_01_preview" output-folder: $(ruby-sdks-folder)/management/azure_mgmt_authorization/lib ``` +### Tag: package-2020-10-01-preview and ruby + +These settings apply only when `--tag=package-2020-10-01-preview --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +``` yaml $(tag) == 'package-2020-10-01-preview' && $(ruby) +namespace: "Azure::Authorization::Mgmt::V2020_10_01_preview" +output-folder: $(ruby-sdks-folder)/management/azure_mgmt_authorization/lib +``` + ### Tag: package-2021-01-01-preview-only and ruby These settings apply only when `--tag=package-2021-01-01-preview-only --ruby` is specified on the command line. diff --git a/specification/authorization/resource-manager/readme.typescript.md b/specification/authorization/resource-manager/readme.typescript.md index 83a6872c020c..f491412a6532 100644 --- a/specification/authorization/resource-manager/readme.typescript.md +++ b/specification/authorization/resource-manager/readme.typescript.md @@ -44,3 +44,16 @@ typescript: batch: - tag: profile-hybrid-2020-09-01 ``` + +### Profile: package-2020-10-01-preview + +These settings apply only when `--profile=package-2020-10-01-preview` is specified on the command line. + +``` yaml $(profile)=='package-2020-10-01-preview' +typescript: + package-name: "@azure/arm-authorization-package-2020-10-01-preview" + output-folder: "$(typescript-sdks-folder)/sdk/authorization/arm-authorization-package-2020-10-01-preview" + clear-output-folder: true + batch: + - tag: package-2020-10-01-preview +``` diff --git a/specification/automanage/resource-manager/readme.azureresourceschema.md b/specification/automanage/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 4a51ecd85b66..000000000000 --- a/specification/automanage/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,24 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-automanage-2020-06-30-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-automanage-2020-06-30-preview and azureresourceschema - -``` yaml $(tag) == 'schema-automanage-2020-06-30-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Automanage/preview/2020-06-30-preview/automanage.json - -``` diff --git a/specification/automanage/resource-manager/readme.go.md b/specification/automanage/resource-manager/readme.go.md index 16cdc4f4805e..144acf22b68b 100644 --- a/specification/automanage/resource-manager/readme.go.md +++ b/specification/automanage/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: automanage clear-output-folder: true ``` diff --git a/specification/automanage/resource-manager/readme.md b/specification/automanage/resource-manager/readme.md index 4e54a1d44f3c..c2b15407698e 100644 --- a/specification/automanage/resource-manager/readme.md +++ b/specification/automanage/resource-manager/readme.md @@ -62,7 +62,6 @@ This is not used by Autorest itself. ``` yaml $(swagger-to-sdk) swagger-to-sdk: - repo: azure-sdk-for-net - - repo: azure-sdk-for-python - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-go - repo: azure-sdk-for-js @@ -72,6 +71,10 @@ swagger-to-sdk: - bundle install && rake arm:regen_all_profiles['azure_mgmt_automanage'] ``` +## Python + +See configuration in [readme.python.md](./readme.python.md) + ## C# These settings apply only when `--csharp` is specified on the command line. diff --git a/specification/automanage/resource-manager/readme.python.md b/specification/automanage/resource-manager/readme.python.md index caf9a094f45f..31f326689f7f 100644 --- a/specification/automanage/resource-manager/readme.python.md +++ b/specification/automanage/resource-manager/readme.python.md @@ -4,19 +4,8 @@ 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) && !$(track2) -python-mode: create -python: - azure-arm: true - license-header: MICROSOFT_MIT_NO_VERSION - payload-flattening-threshold: 2 - namespace: azure.mgmt.automanage - package-name: azure-mgmt-automanage - package-version: 0.1.0 - clear-output-folder: true -``` -```yaml $(python) && $(track2) +```yaml $(python) azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION package-name: azure-mgmt-automanage @@ -26,15 +15,11 @@ no-namespace-folders: true ``` ``` yaml $(python) && $(python-mode) == 'update' -python: - no-namespace-folders: true - output-folder: $(python-sdks-folder)/automanage/azure-mgmt-automanage/azure/mgmt/automanage +no-namespace-folders: true +output-folder: $(python-sdks-folder)/automanage/azure-mgmt-automanage/azure/mgmt/automanage ``` ``` yaml $(python) && $(python-mode) == 'create' -python: - basic-setup-py: true - output-folder: $(python-sdks-folder)/automanage/azure-mgmt-automanage basic-setup-py: true output-folder: $(python-sdks-folder)/automanage/azure-mgmt-automanage ``` diff --git a/specification/automation/resource-manager/readme.azureresourceschema.md b/specification/automation/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index f6041cfc7032..000000000000 --- a/specification/automation/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,159 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-automation-2020-01-13-preview - - tag: schema-automation-2019-06-01 - - tag: schema-automation-2018-06-30 - - tag: schema-automation-2018-01-15 - - tag: schema-automation-2017-05-15-preview - - tag: schema-automation-2015-10-31 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-automation-2020-01-13-preview and azureresourceschema - -``` yaml $(tag) == 'schema-automation-2020-01-13-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Automation/preview/2020-01-13-preview/privateEndpointConnection.json - - Microsoft.Automation/preview/2020-01-13-preview/privateLinkResources.json - - Microsoft.Automation/preview/2020-01-13-preview/python2package.json - - Microsoft.Automation/preview/2020-01-13-preview/dscNode.json - - Microsoft.Automation/preview/2020-01-13-preview/dscNodeConfiguration.json - - Microsoft.Automation/preview/2020-01-13-preview/dscCompilationJob.json - - Microsoft.Automation/preview/2020-01-13-preview/dscNodeCounts.json - - Microsoft.Automation/preview/2020-01-13-preview/sourceControl.json - - Microsoft.Automation/preview/2020-01-13-preview/sourceControlSyncJob.json - - Microsoft.Automation/preview/2020-01-13-preview/sourceControlSyncJobStreams.json - - Microsoft.Automation/preview/2020-01-13-preview/account.json - - Microsoft.Automation/preview/2020-01-13-preview/certificate.json - - Microsoft.Automation/preview/2020-01-13-preview/connection.json - - Microsoft.Automation/preview/2020-01-13-preview/connectionType.json - - Microsoft.Automation/preview/2020-01-13-preview/credential.json - - Microsoft.Automation/preview/2020-01-13-preview/hybridRunbookWorkerGroup.json - - Microsoft.Automation/preview/2020-01-13-preview/jobSchedule.json - - Microsoft.Automation/preview/2020-01-13-preview/linkedWorkspace.json - - Microsoft.Automation/preview/2020-01-13-preview/module.json - - Microsoft.Automation/preview/2020-01-13-preview/schedule.json - - Microsoft.Automation/preview/2020-01-13-preview/variable.json - - Microsoft.Automation/preview/2020-01-13-preview/watcher.json - -``` - -### Tag: schema-automation-2019-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-automation-2019-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Automation/stable/2019-06-01/runbook.json - - Microsoft.Automation/stable/2019-06-01/python2package.json - - Microsoft.Automation/stable/2019-06-01/dscNode.json - - Microsoft.Automation/stable/2019-06-01/dscCompilationJob.json - - Microsoft.Automation/stable/2019-06-01/dscNodeConfiguration.json - - Microsoft.Automation/stable/2019-06-01/dscNodeCounts.json - - Microsoft.Automation/stable/2019-06-01/softwareUpdateConfigurationRun.json - - Microsoft.Automation/stable/2019-06-01/softwareUpdateConfigurationMachineRun.json - - Microsoft.Automation/stable/2019-06-01/sourceControl.json - - Microsoft.Automation/stable/2019-06-01/sourceControlSyncJob.json - - Microsoft.Automation/stable/2019-06-01/sourceControlSyncJobStreams.json - - Microsoft.Automation/stable/2019-06-01/job.json - - Microsoft.Automation/stable/2019-06-01/account.json - - Microsoft.Automation/stable/2019-06-01/certificate.json - - Microsoft.Automation/stable/2019-06-01/connection.json - - Microsoft.Automation/stable/2019-06-01/connectionType.json - - Microsoft.Automation/stable/2019-06-01/credential.json - - Microsoft.Automation/stable/2019-06-01/dscConfiguration.json - - Microsoft.Automation/stable/2019-06-01/softwareUpdateConfiguration.json - - Microsoft.Automation/stable/2019-06-01/hybridRunbookWorkerGroup.json - - Microsoft.Automation/stable/2019-06-01/jobSchedule.json - - Microsoft.Automation/stable/2019-06-01/linkedWorkspace.json - - Microsoft.Automation/stable/2019-06-01/module.json - - Microsoft.Automation/stable/2019-06-01/operations.json - - Microsoft.Automation/stable/2019-06-01/schedule.json - - Microsoft.Automation/stable/2019-06-01/variable.json - - Microsoft.Automation/stable/2019-06-01/watcher.json - -``` - -### Tag: schema-automation-2018-06-30 and azureresourceschema - -``` yaml $(tag) == 'schema-automation-2018-06-30' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Automation/stable/2018-06-30/runbook.json - - Microsoft.Automation/stable/2018-06-30/python2package.json - -``` - -### Tag: schema-automation-2018-01-15 and azureresourceschema - -``` yaml $(tag) == 'schema-automation-2018-01-15' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Automation/stable/2018-01-15/dscNode.json - - Microsoft.Automation/stable/2018-01-15/dscCompilationJob.json - - Microsoft.Automation/stable/2018-01-15/dscNodeConfiguration.json - - Microsoft.Automation/stable/2018-01-15/dscNodeCounts.json - -``` - -### Tag: schema-automation-2017-05-15-preview and azureresourceschema - -``` yaml $(tag) == 'schema-automation-2017-05-15-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Automation/preview/2017-05-15-preview/softwareUpdateConfiguration.json - - Microsoft.Automation/preview/2017-05-15-preview/softwareUpdateConfigurationRun.json - - Microsoft.Automation/preview/2017-05-15-preview/softwareUpdateConfigurationMachineRun.json - - Microsoft.Automation/preview/2017-05-15-preview/sourceControl.json - - Microsoft.Automation/preview/2017-05-15-preview/sourceControlSyncJob.json - - Microsoft.Automation/preview/2017-05-15-preview/sourceControlSyncJobStreams.json - - Microsoft.Automation/preview/2017-05-15-preview/job.json - -``` - -### Tag: schema-automation-2015-10-31 and azureresourceschema - -``` yaml $(tag) == 'schema-automation-2015-10-31' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Automation/stable/2015-10-31/account.json - - Microsoft.Automation/stable/2015-10-31/certificate.json - - Microsoft.Automation/stable/2015-10-31/connection.json - - Microsoft.Automation/stable/2015-10-31/connectionType.json - - Microsoft.Automation/stable/2015-10-31/credential.json - - Microsoft.Automation/stable/2015-10-31/dscCompilationJob.json - - Microsoft.Automation/stable/2015-10-31/dscConfiguration.json - - Microsoft.Automation/stable/2015-10-31/dscNode.json - - Microsoft.Automation/stable/2015-10-31/dscNodeConfiguration.json - - Microsoft.Automation/stable/2015-10-31/hybridRunbookWorkerGroup.json - - Microsoft.Automation/stable/2015-10-31/job.json - - Microsoft.Automation/stable/2015-10-31/jobSchedule.json - - Microsoft.Automation/stable/2015-10-31/linkedWorkspace.json - - Microsoft.Automation/stable/2015-10-31/module.json - - Microsoft.Automation/stable/2015-10-31/runbook.json - - Microsoft.Automation/stable/2015-10-31/schedule.json - - Microsoft.Automation/stable/2015-10-31/variable.json - - Microsoft.Automation/stable/2015-10-31/watcher.json - - Microsoft.Automation/stable/2015-10-31/webhook.json - -``` diff --git a/specification/automation/resource-manager/readme.go.md b/specification/automation/resource-manager/readme.go.md index 4f5d97e67b1c..4e381bbc2169 100644 --- a/specification/automation/resource-manager/readme.go.md +++ b/specification/automation/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: automation clear-output-folder: true ``` diff --git a/specification/automation/resource-manager/readme.md b/specification/automation/resource-manager/readme.md index 214f68f64b46..333ec8249cba 100644 --- a/specification/automation/resource-manager/readme.md +++ b/specification/automation/resource-manager/readme.md @@ -225,9 +225,10 @@ input-file: - Microsoft.Automation/stable/2019-06-01/dscConfiguration.json - Microsoft.Automation/stable/2019-06-01/job.json - Microsoft.Automation/stable/2019-06-01/operations.json -- Microsoft.Automation/stable/2019-06-01/runbook.json +- Microsoft.Automation/stable/2019-06-01/softwareUpdateConfiguration.json - Microsoft.Automation/stable/2019-06-01/softwareUpdateConfigurationRun.json - Microsoft.Automation/stable/2019-06-01/softwareUpdateConfigurationMachineRun.json +- Microsoft.Automation/stable/2018-06-30/runbook.json - Microsoft.Automation/stable/2015-10-31/webhook.json ``` @@ -278,8 +279,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_automation'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js automation/resource-manager ``` @@ -341,7 +340,5 @@ generate-interface: true -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/azsadmin/resource-manager/azurebridge/Microsoft.AzureBridge.Admin/preview/2016-01-01/AzureBridge.json b/specification/azsadmin/resource-manager/azurebridge/Microsoft.AzureBridge.Admin/preview/2016-01-01/AzureBridge.json index fda858d423a4..905307916692 100644 --- a/specification/azsadmin/resource-manager/azurebridge/Microsoft.AzureBridge.Admin/preview/2016-01-01/AzureBridge.json +++ b/specification/azsadmin/resource-manager/azurebridge/Microsoft.AzureBridge.Admin/preview/2016-01-01/AzureBridge.json @@ -13,7 +13,7 @@ "/providers/Microsoft.AzureBridge.Admin/operations": { "get": { "x-ms-examples": { - "Returns the list of support REST operations.": { + "Returns the list of supported REST operations.": { "$ref": "./examples/Operations/List.json" } }, @@ -85,15 +85,26 @@ }, "Operation": { "description": "Describes the supported REST operation.", + "type": "object", "properties": { + "display": { + "description": "Contains the localized display information for this particular operation / action.", + "$ref": "#/definitions/Display", + "readOnly": true + }, + "isDataAction": { + "description": "Whether the operation applies to data-plane. This is \"true\" for data-plane operations and \"false\" for ARM/control-plane operations.", + "type": "boolean", + "readOnly": true + }, "name": { "description": "The name of the operation being performed on this particular object. This name should match the name that appears in RBAC or the event service.", "type": "string", "readOnly": true }, - "display": { - "description": "Contains the localized display information for this particular operation / action.", - "$ref": "#/definitions/Display", + "origin": { + "description": "Origin for the operation.", + "type": "string", "readOnly": true } } diff --git a/specification/azsadmin/resource-manager/commerce/Microsoft.Commerce.Admin/preview/2015-06-01-preview/Commerce.json b/specification/azsadmin/resource-manager/commerce/Microsoft.Commerce.Admin/preview/2015-06-01-preview/Commerce.json index 890c3b5b8fda..1cad4428fcff 100644 --- a/specification/azsadmin/resource-manager/commerce/Microsoft.Commerce.Admin/preview/2015-06-01-preview/Commerce.json +++ b/specification/azsadmin/resource-manager/commerce/Microsoft.Commerce.Admin/preview/2015-06-01-preview/Commerce.json @@ -39,6 +39,12 @@ "schema": { "$ref": "#/definitions/OperationList" } + }, + "default": { + "description": "Default Response.", + "schema": { + "$ref": "#/definitions/ExtendedErrorInfo" + } } }, "x-ms-pageable": { @@ -82,6 +88,12 @@ } ], "responses": { + "default": { + "description": "Default Response.", + "schema": { + "$ref": "#/definitions/ExtendedErrorInfo" + } + }, "200": { "description": "OK", "schema": { @@ -105,7 +117,7 @@ "tags": [ "Commerce" ], - "operationId": "UpdateEncryption", + "operationId": "Commerce_UpdateEncryption", "parameters": [ { "$ref": "#/parameters/SubscriptionIdParameter" @@ -115,6 +127,12 @@ } ], "responses": { + "default": { + "description": "Default Response.", + "schema": { + "$ref": "#/definitions/ExtendedErrorInfo" + } + }, "200": { "description": "OK" } @@ -225,14 +243,27 @@ }, "Operation": { "description": "Describes the supported REST operation.", + "type": "object", "properties": { + "display": { + "description": "Contains the localized display information for this particular operation or action.", + "$ref": "#/definitions/Display", + "readOnly": true + }, + "isDataAction": { + "description": "Whether the operation applies to data-plane. This is \"true\" for data-plane operations and \"false\" for ARM/control-plane operations.", + "type": "boolean", + "readOnly": true + }, "name": { "description": "The name of the operation performed on the object. The name should match the action name that appears in RBAC or the event service.", - "type": "string" + "type": "string", + "readOnly": true }, - "display": { - "description": "Contains the localized display information for this particular operation or action.", - "$ref": "#/definitions/Display" + "origin": { + "description": "Origin for the operation.", + "type": "string", + "readOnly": true } } }, @@ -240,20 +271,24 @@ "description": "Contains the localized display information for this particular operation / action.", "properties": { "provider": { - "description": "The localized, friendly version of the resource provider name. The provider name is expected to include the name of the publisher or company responsible. The provider name format should use title case and begin with \"Microsoft\" for first-party services. For example, the provider name may be\"Microsoft Monitoring Insights\" or \"Microsoft Compute\".", - "type": "string" + "description": "The localized friendly form of the resource provider name – it is expected to also include the publisher/company responsible. It should use Title Casing and begin with \"Microsoft\" for 1st party services. e.g. \"Microsoft Monitoring Insights\" or \"Microsoft Compute.\"", + "type": "string", + "readOnly": true }, "resource": { "description": "The localized, friendly version of the resource type related to this action or operation; the resource type should match the public documentation for the resource provider.", - "type": "string" + "type": "string", + "readOnly": true }, "operation": { - "description": "The localized, friendly name for the operation. Use the name as it will be displayed to the user.", - "type": "string" + "description": "The localized, friendly name for the operation. Use the name as it will displayed to the user.", + "type": "string", + "readOnly": true }, "description": { "description": "The localized, friendly description for the operation. The description will be displayed to the user. It should be thorough and concise for used in both tooltips and detailed views.", - "type": "string" + "type": "string", + "readOnly": true } } }, @@ -272,6 +307,40 @@ "type": "string" } } + }, + "ExtendedErrorInfo": { + "type": "object", + "description": "Error response.", + "properties": { + "error": { + "$ref": "#/definitions/ErrorDefinition", + "description": "The error details." + } + } + }, + "ErrorDefinition": { + "type": "object", + "description": "Error definition.", + "properties": { + "code": { + "description": "Service specific error code which serves as the substatus for the HTTP error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "Description of the error.", + "type": "string", + "readOnly": true + }, + "details": { + "description": "Internal error details.", + "type": "array", + "items": { + "$ref": "#/definitions/ErrorDefinition" + }, + "readOnly": true + } + } } }, "parameters": { diff --git a/specification/azsadmin/resource-manager/commerce/readme.md b/specification/azsadmin/resource-manager/commerce/readme.md index 7e36302807ea..907e67cbbf52 100644 --- a/specification/azsadmin/resource-manager/commerce/readme.md +++ b/specification/azsadmin/resource-manager/commerce/readme.md @@ -2,7 +2,7 @@ > see https://aka.ms/autorest -This is the AutoRest configuration file for Commerce Admin. +This is the AutoRest configuration file for Commerce Admin. We do not ship any language SDKs for AzureStack Administrator APIs and these APIs do not exist in azure. --- ## Getting Started @@ -39,16 +39,6 @@ input-file: --- # Code Generation -## Swagger to SDK - -This section describes what SDK should be generated by the automatic system. -This is not used by Autorest itself. Currently only the C# SDK is supported. - -``` yaml $(swagger-to-sdk) -swagger-to-sdk: - - repo: azure-sdk-for-sdk -``` - ## C# ``` yaml $(csharp) diff --git a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2015-12-01-preview/Compute.json b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2015-12-01-preview/Compute.json index 7a3968f659a9..3d95db7cc37c 100644 --- a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2015-12-01-preview/Compute.json +++ b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2015-12-01-preview/Compute.json @@ -38,6 +38,12 @@ "schema": { "$ref": "#/definitions/OperationList" } + }, + "default": { + "description": "Default Response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } } }, "x-ms-pageable": { @@ -94,8 +100,9 @@ "type": "string" }, "isDataAction": { - "description": "Gets or sets a value indicating whether the operation is a data action or not.", - "type": "boolean" + "description": "Whether the operation applies to data-plane. This is \"true\" for data-plane operations and \"false\" for ARM/control-plane operations.", + "type": "boolean", + "readOnly": true }, "display": { "description": "Contains the localized display information for this particular operation or action.", @@ -139,6 +146,37 @@ "type": "string" } } + }, + "ErrorDetails": { + "description": "Error details.", + "type": "object", + "properties": { + "error": { + "description": "Object containing error details.", + "$ref": "#/definitions/ErrorDetailsInternal" + } + } + }, + "ErrorDetailsInternal": { + "description": "Error details.", + "type": "object", + "properties": { + "code": { + "description": "The error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "The error message.", + "type": "string", + "readOnly": true + }, + "target": { + "description": "The target of the particular error.", + "type": "string", + "readOnly": true + } + } } }, "parameters": { diff --git a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2015-12-01-preview/PlatformImages.json b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2015-12-01-preview/PlatformImages.json index eeeac1dc49a7..8b46a0f33670 100644 --- a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2015-12-01-preview/PlatformImages.json +++ b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2015-12-01-preview/PlatformImages.json @@ -45,6 +45,12 @@ "schema": { "$ref": "#/definitions/PlatformImageList" } + }, + "default": { + "description": "Default Response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } } } } @@ -91,6 +97,12 @@ "schema": { "$ref": "#/definitions/PlatformImage" } + }, + "default": { + "description": "Default Response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } } } }, @@ -150,6 +162,12 @@ "schema": { "$ref": "#/definitions/PlatformImage" } + }, + "default": { + "description": "Default Response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } } }, "x-ms-long-running-operation": true @@ -190,6 +208,12 @@ } ], "responses": { + "default": { + "description": "Default Response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + }, "200": { "description": "OK" } @@ -307,6 +331,37 @@ "$ref": "#/definitions/PlatformImageProperties" } } + }, + "ErrorDetails": { + "description": "Error details.", + "type": "object", + "properties": { + "error": { + "description": "Object containing error details.", + "$ref": "#/definitions/ErrorDetailsInternal" + } + } + }, + "ErrorDetailsInternal": { + "description": "Error details.", + "type": "object", + "properties": { + "code": { + "description": "The error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "The error message.", + "type": "string", + "readOnly": true + }, + "target": { + "description": "The target of the particular error.", + "type": "string", + "readOnly": true + } + } } }, "parameters": { diff --git a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2015-12-01-preview/VMExtensions.json b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2015-12-01-preview/VMExtensions.json index 933404e75268..7a8c478f0d70 100644 --- a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2015-12-01-preview/VMExtensions.json +++ b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2015-12-01-preview/VMExtensions.json @@ -54,6 +54,12 @@ "schema": { "$ref": "#/definitions/VMExtension" } + }, + "default": { + "description": "Default Response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } } } }, @@ -110,6 +116,12 @@ "schema": { "$ref": "#/definitions/VMExtension" } + }, + "default": { + "description": "Default Response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } } } }, @@ -154,6 +166,12 @@ "responses": { "200": { "description": "OK" + }, + "default": { + "description": "Default Response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } } } } @@ -194,6 +212,12 @@ "schema": { "$ref": "#/definitions/VMExtensionList" } + }, + "default": { + "description": "Default Response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } } } } @@ -281,6 +305,37 @@ "$ref": "#/definitions/VMExtensionProperties" } } + }, + "ErrorDetails": { + "description": "Error details.", + "type": "object", + "properties": { + "error": { + "description": "Object containing error details.", + "$ref": "#/definitions/ErrorDetailsInternal" + } + } + }, + "ErrorDetailsInternal": { + "description": "Error details.", + "type": "object", + "properties": { + "code": { + "description": "The error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "The error message.", + "type": "string", + "readOnly": true + }, + "target": { + "description": "The target of the particular error.", + "type": "string", + "readOnly": true + } + } } }, "parameters": { diff --git a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2015-12-01-preview/examples/Operations/List.json b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2015-12-01-preview/examples/Operations/List.json index 023347b494d8..3c478352aa0f 100644 --- a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2015-12-01-preview/examples/Operations/List.json +++ b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2015-12-01-preview/examples/Operations/List.json @@ -114,9 +114,17 @@ "description": "Delete any VMExtension" } }, + { + "name": "Microsoft.Compute.Admin/locations/computeScaleUnits/read", + "display": { + "provider": "Microsoft Compute Admin", + "resource": "ScaleUnitView", + "operation": "Get scale unit view", + "description": "Get scale unit view" + } + }, { "name": "Microsoft.Compute.Admin/locations/Disks/read", - "isDataAction": false, "display": { "provider": "Microsoft Compute Admin", "resource": "Disks", @@ -126,7 +134,6 @@ }, { "name": "Microsoft.Compute.Admin/locations/DiskMigrationJobs/read", - "isDataAction": false, "display": { "provider": "Microsoft Compute Admin", "resource": "DiskMigrationJobs", @@ -136,7 +143,6 @@ }, { "name": "Microsoft.Compute.Admin/locations/DiskMigrationJobs/write", - "isDataAction": false, "display": { "provider": "Microsoft Compute Admin", "resource": "DiskMigrationJobs", @@ -146,7 +152,6 @@ }, { "name": "Microsoft.Compute.Admin/locations/DiskMigrationJobs/cancel/action", - "isDataAction": false, "display": { "provider": "Microsoft Compute Admin", "resource": "DiskMigrationJobs", diff --git a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2018-07-30-preview/DiskMigrationJobs.json b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2018-07-30-preview/DiskMigrationJobs.json index 2456dcf23c55..e4635d68b2e5 100644 --- a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2018-07-30-preview/DiskMigrationJobs.json +++ b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2018-07-30-preview/DiskMigrationJobs.json @@ -48,6 +48,12 @@ "schema": { "$ref": "DiskMigrationJobs.json#/definitions/DiskMigrationJobList" } + }, + "default": { + "description": "Default Response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } } }, "x-ms-pageable": { @@ -87,6 +93,12 @@ "schema": { "$ref": "DiskMigrationJobs.json#/definitions/DiskMigrationJob" } + }, + "default": { + "description": "Default Response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } } } }, @@ -133,6 +145,12 @@ "schema": { "$ref": "DiskMigrationJobs.json#/definitions/DiskMigrationJob" } + }, + "default": { + "description": "Default Response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } } } } @@ -169,6 +187,12 @@ "schema": { "$ref": "DiskMigrationJobs.json#/definitions/DiskMigrationJob" } + }, + "default": { + "description": "Default Response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } } } } @@ -361,6 +385,37 @@ "items": { "$ref": "Disks.json#/definitions/Disk" } + }, + "ErrorDetails": { + "description": "Error details.", + "type": "object", + "properties": { + "error": { + "description": "Object containing error details.", + "$ref": "#/definitions/ErrorDetailsInternal" + } + } + }, + "ErrorDetailsInternal": { + "description": "Error details.", + "type": "object", + "properties": { + "code": { + "description": "The error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "The error message.", + "type": "string", + "readOnly": true + }, + "target": { + "description": "The target of the particular error.", + "type": "string", + "readOnly": true + } + } } }, "parameters": { diff --git a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2018-07-30-preview/Disks.json b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2018-07-30-preview/Disks.json index b0bfd8aa99e9..cd4dd27b232a 100644 --- a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2018-07-30-preview/Disks.json +++ b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2018-07-30-preview/Disks.json @@ -66,6 +66,12 @@ "schema": { "$ref": "Disks.json#/definitions/DiskList" } + }, + "default": { + "description": "Default Response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } } }, "x-ms-pageable": { @@ -105,6 +111,12 @@ "schema": { "$ref": "Disks.json#/definitions/Disk" } + }, + "default": { + "description": "Default Response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } } } } @@ -245,6 +257,37 @@ "name": "AccountType", "modelAsString": true } + }, + "ErrorDetails": { + "description": "Error details.", + "type": "object", + "properties": { + "error": { + "description": "Object containing error details.", + "$ref": "#/definitions/ErrorDetailsInternal" + } + } + }, + "ErrorDetailsInternal": { + "description": "Error details.", + "type": "object", + "properties": { + "code": { + "description": "The error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "The error message.", + "type": "string", + "readOnly": true + }, + "target": { + "description": "The target of the particular error.", + "type": "string", + "readOnly": true + } + } } }, "parameters": { diff --git a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2018-07-30-preview/examples/DiskMigrationJobs/Create.json b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2018-07-30-preview/examples/DiskMigrationJobs/Create.json index 45b134eda4b3..504e0202d3d0 100644 --- a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2018-07-30-preview/examples/DiskMigrationJobs/Create.json +++ b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2018-07-30-preview/examples/DiskMigrationJobs/Create.json @@ -7,9 +7,6 @@ "targetShare": "\\\\SU1FileServer.mydomain.com\\SU1_ObjStore_1", "disks": [ { - "id": "/subscriptions/04666444-56f0-4d4f-afc5-dbd6b134b084/providers/Microsoft.Compute.Admin/locations/redmond/disks/423e4eb4-f791-4d13-ad5b-4d415733b0d6", - "name": "redmond/423e4eb4-f791-4d13-ad5b-4d415733b0d6", - "type": "Microsoft.Compute.Admin/locations/disks", "location": "redmond", "properties": { "diskId": "423e4eb4-f791-4d13-ad5b-4d415733b0d6", @@ -18,9 +15,6 @@ } }, { - "id": "/subscriptions/04666444-56f0-4d4f-afc5-dbd6b134b084/providers/Microsoft.Compute.Admin/locations/redmond/disks/48dc9b56-5883-4011-9dc3-0e527f33e6ab", - "name": "redmond/48dc9b56-5883-4011-9dc3-0e527f33e6ab", - "type": "Microsoft.Compute.Admin/locations/disks", "location": "redmond", "properties": { "diskId": "48dc9b56-5883-4011-9dc3-0e527f33e6ab", diff --git a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2020-11-01/Features.json b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2020-11-01/Features.json new file mode 100644 index 000000000000..08e49c717a68 --- /dev/null +++ b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2020-11-01/Features.json @@ -0,0 +1,473 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-11-01", + "title": "Compute Admin Client" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute.Admin/locations/{location}/features/{featureName}": { + "get": { + "x-ms-examples": { + "Get an existing feature.": { + "$ref": "examples/Features/Get.json" + } + }, + "tags": [ + "Features" + ], + "summary": "Returns the requested feature.", + "description": "Get an existing feature.", + "operationId": "Features_Get", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "Features.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "Features.json#/parameters/LocationParameter" + }, + { + "$ref": "Features.json#/parameters/FeatureParameter" + }, + { + "$ref": "Features.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "Features.json#/definitions/Feature" + } + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute.Admin/locations/{location}/features": { + "get": { + "x-ms-examples": { + "Get a list of existing features.": { + "$ref": "examples/Features/List.json" + } + }, + "tags": [ + "Features" + ], + "summary": "Lists all features.", + "description": "Get a list of existing features.", + "operationId": "Features_List", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "Features.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "Features.json#/parameters/LocationParameter" + }, + { + "$ref": "Features.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "Features.json#/definitions/FeatureList" + } + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute.Admin/locations/{location}/features/{featureName}/updateGlobalFeatureSettings": { + "post": { + "x-ms-examples": { + "Update the feature settings.": { + "$ref": "examples/Features/Update.json" + } + }, + "tags": [ + "Features" + ], + "summary": "Updates the global feature settings.", + "description": "Update the feature settings.", + "operationId": "UpdateGlobalFeatureSettings", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "Features.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "Features.json#/parameters/LocationParameter" + }, + { + "$ref": "Features.json#/parameters/FeatureParameter" + }, + { + "$ref": "Features.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "Features.json#/parameters/GlobalFeatureSettingsParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute.Admin/locations/{location}/features/{featureName}/enableTenantSubscriptionFeature": { + "post": { + "x-ms-examples": { + "Enable the tenant subscription feature.": { + "$ref": "examples/Features/Enable.json" + } + }, + "tags": [ + "Features" + ], + "summary": "Enables the requested feature in the tenant subscription.", + "description": "Enable the tenant subscription feature.", + "operationId": "EnableTenantSubscriptionFeature", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "Features.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "Features.json#/parameters/LocationParameter" + }, + { + "$ref": "Features.json#/parameters/FeatureParameter" + }, + { + "$ref": "Features.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "Features.json#/parameters/TenantSubscriptionFeatureSettingsParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute.Admin/locations/{location}/features/{featureName}/disableTenantSubscriptionFeature": { + "post": { + "x-ms-examples": { + "Disable the tenant subscription feature.": { + "$ref": "examples/Features/Disable.json" + } + }, + "tags": [ + "Features" + ], + "summary": "Disables the requested feature in the tenant subscription.", + "description": "Disable the tenant subscription feature.", + "operationId": "DisableTenantSubscriptionFeature", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "Features.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "Features.json#/parameters/LocationParameter" + }, + { + "$ref": "Features.json#/parameters/FeatureParameter" + }, + { + "$ref": "Features.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "Features.json#/parameters/TenantSubscriptionFeatureSettingsParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + } + } + } + }, + "definitions": { + "Feature": { + "description": "Subscription features that can be toggled.", + "type": "object", + "properties": { + "properties": { + "description": "Feature properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/FeatureProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ] + }, + "FeatureProperties": { + "description": "Properties of features.", + "type": "object", + "properties": { + "featureName": { + "description": "The name of the feature.", + "type": "string" + }, + "globalFeatureSettings": { + "description": "Higher-priority global feature flags.", + "$ref": "#/definitions/GlobalFeatureSettings" + }, + "enabledTenantSubscriptionIds": { + "description": "List of subscription identifiers which have the feature enabled.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "GlobalFeatureSettings": { + "description": "Higher-priority global feature flags.", + "type": "object", + "properties": { + "globalFeatureState": { + "description": "The state of the global feature.", + "$ref": "#/definitions/GlobalFeatureState" + } + } + }, + "GlobalFeatureState": { + "description": "The state of the global feature.", + "enum": [ + "TenantSubscriptionLevel", + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "GlobalFeatureState" + } + }, + "FeatureList": { + "type": "object", + "description": "List features.", + "properties": { + "value": { + "description": "List of features.", + "type": "array", + "items": { + "$ref": "Features.json#/definitions/Feature" + } + }, + "nextLink": { + "description": "URI to the next page.", + "type": "string" + } + } + }, + "TenantSubscriptionFeatureSettings": { + "type": "object", + "description": "The feature settings for the tenant subscription.", + "properties": { + "tenantSubscriptionId": { + "description": "The tenant subscription identifier.", + "type": "string" + } + } + }, + "ErrorDetails": { + "description": "Error details.", + "type": "object", + "properties": { + "error": { + "description": "Object containing error details.", + "$ref": "#/definitions/ErrorDetailsInternal" + } + } + }, + "ErrorDetailsInternal": { + "description": "Error details.", + "type": "object", + "properties": { + "code": { + "description": "The error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "The error message.", + "type": "string", + "readOnly": true + }, + "target": { + "description": "The target of the particular error.", + "type": "string", + "readOnly": true + } + } + }, + "Resource": { + "description": "Base resource object.", + "type": "object", + "properties": { + "id": { + "readOnly": true, + "description": "ID of the resource.", + "type": "string" + }, + "name": { + "readOnly": true, + "description": "Name of the resource.", + "type": "string" + }, + "type": { + "readOnly": true, + "description": "Type of Resource.", + "type": "string" + }, + "location": { + "description": "Location of the resource.", + "type": "string" + } + }, + "x-ms-azure-resource": true + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Subscription credentials that uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.", + "required": true, + "type": "string" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "Client API Version.", + "required": true, + "type": "string" + }, + "LocationParameter": { + "description": "Location of the resource.", + "name": "location", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "FeatureParameter": { + "description": "Name of the feature.", + "name": "featureName", + "type": "string", + "required": true, + "in": "path", + "x-ms-parameter-location": "method" + }, + "GlobalFeatureSettingsParameter": { + "description": "The global feature state to update.", + "name": "globalFeatureSettings", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GlobalFeatureSettings" + }, + "x-ms-parameter-location": "method" + }, + "TenantSubscriptionFeatureSettingsParameter": { + "description": "The tenant subscription feature settings to enable or disable.", + "name": "tenantSubscriptionFeatureSettings", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TenantSubscriptionFeatureSettings" + }, + "x-ms-parameter-location": "method" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Authorization uses an Azure Active Directory OAuth2 flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2020-11-01/examples/Features/Disable.json b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2020-11-01/examples/Features/Disable.json new file mode 100644 index 000000000000..dd161ae01d81 --- /dev/null +++ b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2020-11-01/examples/Features/Disable.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "location": "local", + "featureName": "imds", + "api-version": "2020-11-01", + "tenantSubscriptionFeatureSettings": { + "tenantSubscriptionId": "e4e827e5-2e03-4e00-b25a-99fc845eeb43" + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2020-11-01/examples/Features/Enable.json b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2020-11-01/examples/Features/Enable.json new file mode 100644 index 000000000000..dd161ae01d81 --- /dev/null +++ b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2020-11-01/examples/Features/Enable.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "location": "local", + "featureName": "imds", + "api-version": "2020-11-01", + "tenantSubscriptionFeatureSettings": { + "tenantSubscriptionId": "e4e827e5-2e03-4e00-b25a-99fc845eeb43" + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2020-11-01/examples/Features/Get.json b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2020-11-01/examples/Features/Get.json new file mode 100644 index 000000000000..b062e3a4d7a8 --- /dev/null +++ b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2020-11-01/examples/Features/Get.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "location": "local", + "featureName": "imds", + "api-version": "2020-11-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Compute.Admin/locations/local/features/imds", + "name": "imds", + "type": "Microsoft.Compute.Admin/locations/features", + "location": "local", + "properties": { + "enabledTenantSubscriptionIds": [ + "ad8f911f-ef2a-4c0e-ab84-63116c955940" + ], + "featureName": "imds", + "globalFeatureSettings": { + "globalFeatureState": "Enabled" + } + } + } + } + } +} diff --git a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2020-11-01/examples/Features/List.json b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2020-11-01/examples/Features/List.json new file mode 100644 index 000000000000..996addc9470c --- /dev/null +++ b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2020-11-01/examples/Features/List.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "location": "local", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Compute.Admin/locations/local/features/imds", + "name": "imds", + "type": "Microsoft.Compute.Admin/locations/features", + "location": "local", + "properties": { + "enabledTenantSubscriptionIds": [ + "ad8f911f-ef2a-4c0e-ab84-63116c955940" + ], + "featureName": "imds", + "globalFeatureSettings": { + "globalFeatureState": "Enabled" + } + } + } + ] + } + } + } +} diff --git a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2020-11-01/examples/Features/Update.json b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2020-11-01/examples/Features/Update.json new file mode 100644 index 000000000000..2f7539a18eec --- /dev/null +++ b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2020-11-01/examples/Features/Update.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "location": "local", + "featureName": "imds", + "api-version": "2020-11-01", + "globalFeatureSettings": { + "globalFeatureState": "Enabled" + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2021-01-01/Quotas.json b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2021-01-01/Quotas.json new file mode 100644 index 000000000000..a4b47d7f5cca --- /dev/null +++ b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2021-01-01/Quotas.json @@ -0,0 +1,411 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-01-01", + "title": "Compute Admin Client" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute.Admin/locations/{location}/quotas/{quotaName}": { + "get": { + "x-ms-examples": { + "Get an existing Compute Quota.": { + "$ref": "examples/Quotas/Get.json" + } + }, + "tags": [ + "Quotas" + ], + "summary": "Returns the requested Compute quota.", + "description": "Get an existing Compute Quota.", + "operationId": "Quotas_Get", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "Quotas.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "Quotas.json#/parameters/LocationParameter" + }, + { + "$ref": "Quotas.json#/parameters/QuotaParameter" + }, + { + "$ref": "Quotas.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "Quotas.json#/definitions/Quota" + } + }, + "default": { + "description": "Default Response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + } + }, + "put": { + "x-ms-examples": { + "Creates or Updates a Compute Quota.": { + "$ref": "examples/Quotas/Create.json" + } + }, + "tags": [ + "Quotas" + ], + "description": "Creates or Updates a Compute Quota with the provided quota parameters.", + "summary": "Creates or Updates a Compute Quota.", + "operationId": "Quotas_CreateOrUpdate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "Quotas.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "Quotas.json#/parameters/LocationParameter" + }, + { + "$ref": "Quotas.json#/parameters/QuotaParameter" + }, + { + "$ref": "Quotas.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "Quotas.json#/parameters/NewQuotaParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "Quotas.json#/definitions/Quota" + } + }, + "default": { + "description": "Default Response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + } + }, + "delete": { + "x-ms-examples": { + "Deletes specified Compute quota.": { + "$ref": "examples/Quotas/Delete.json" + } + }, + "tags": [ + "Quotas" + ], + "summary": "Deletes specified Compute quota", + "description": "Delete an existing Compute quota.", + "operationId": "Quotas_Delete", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "Quotas.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "Quotas.json#/parameters/LocationParameter" + }, + { + "$ref": "Quotas.json#/parameters/QuotaParameter" + }, + { + "$ref": "Quotas.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "default": { + "description": "Default Response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute.Admin/locations/{location}/quotas": { + "get": { + "x-ms-examples": { + "Get a list of existing Compute quotas.": { + "$ref": "examples/Quotas/List.json" + } + }, + "tags": [ + "Quotas" + ], + "summary": "Lists all Compute quotas.", + "description": "Get a list of existing Compute quotas.", + "operationId": "Quotas_List", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "Quotas.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "Quotas.json#/parameters/LocationParameter" + }, + { + "$ref": "Quotas.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "Quotas.json#/definitions/QuotaList" + } + }, + "default": { + "description": "Default Response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + } + }, + "definitions": { + "Quota": { + "description": "Holds Compute quota information used to control resource allocation.", + "type": "object", + "properties": { + "properties": { + "description": "Compute Quota properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/QuotaProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ] + }, + "QuotaProperties": { + "description": "Properties for a Compute Quota", + "type": "object", + "properties": { + "availabilitySetCount": { + "description": "Maximum number of availability sets allowed.", + "format": "int32", + "type": "integer", + "minimum": 0 + }, + "coresLimit": { + "description": "Maximum number of cores allowed.", + "format": "int32", + "type": "integer", + "minimum": 0 + }, + "virtualMachineCount": { + "description": "Maximum number of virtual machines allowed.", + "format": "int32", + "type": "integer", + "minimum": 0 + }, + "vmScaleSetCount": { + "description": "Maximum number of scale sets allowed.", + "format": "int32", + "type": "integer", + "minimum": 0 + }, + "maxAllocationStandardManagedDisksAndSnapshots": { + "description": "Maximum number of managed disks and snapshots of type standard allowed.", + "format": "int32", + "type": "integer", + "minimum": 0 + }, + "maxAllocationPremiumManagedDisksAndSnapshots": { + "description": "Maximum number of managed disks and snapshots of type premium allowed.", + "format": "int32", + "type": "integer", + "minimum": 0 + }, + "ddagpuCount": { + "description": "Maximum number of dda gpus allowed.", + "format": "int32", + "type": "integer", + "minimum": 0 + }, + "partitionedGpuCount": { + "description": "Maximum number of partitioned gpus allowed.", + "format": "int32", + "type": "integer", + "minimum": 0 + } + } + }, + "QuotaList": { + "description": "List of Compute quotas", + "type": "object", + "properties": { + "nextLink": { + "description": "URI to the next page.", + "type": "string" + }, + "value": { + "description": "List of Compute quotas", + "type": "array", + "items": { + "$ref": "Quotas.json#/definitions/Quota" + } + } + } + }, + "Resource": { + "description": "Base resource object.", + "type": "object", + "properties": { + "id": { + "readOnly": true, + "description": "ID of the resource.", + "type": "string" + }, + "name": { + "readOnly": true, + "description": "Name of the resource.", + "type": "string" + }, + "type": { + "readOnly": true, + "description": "Type of Resource.", + "type": "string" + }, + "location": { + "description": "Location of the resource.", + "type": "string" + } + }, + "x-ms-azure-resource": true + }, + "ErrorDetails": { + "description": "Error details.", + "type": "object", + "properties": { + "error": { + "description": "Object containing error details.", + "$ref": "#/definitions/ErrorDetailsInternal" + } + } + }, + "ErrorDetailsInternal": { + "description": "Error details.", + "type": "object", + "properties": { + "code": { + "description": "The error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "The error message.", + "type": "string", + "readOnly": true + }, + "target": { + "description": "The target of the particular error.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Subscription credentials that uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.", + "required": true, + "type": "string" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "Client API Version.", + "required": true, + "type": "string" + }, + "LocationParameter": { + "description": "Location of the resource.", + "name": "location", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "QuotaParameter": { + "description": "Name of the quota.", + "name": "quotaName", + "type": "string", + "required": true, + "in": "path", + "x-ms-parameter-location": "method" + }, + "NewQuotaParameter": { + "description": "New quota to create.", + "name": "newQuota", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Quota" + }, + "x-ms-parameter-location": "method" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Authorization uses an Azure Active Directory OAuth2 flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2021-01-01/examples/Quotas/Create.json b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2021-01-01/examples/Quotas/Create.json new file mode 100644 index 000000000000..868be64d2a34 --- /dev/null +++ b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2021-01-01/examples/Quotas/Create.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "location": "local", + "quotaName": "testQuotaCreateUpdateDelete", + "api-version": "2021-01-01", + "newQuota": { + "properties": { + "availabilitySetCount": 2, + "coresLimit": 2, + "virtualMachineCount": 2, + "vmScaleSetCount": 2, + "maxAllocationStandardManagedDisksAndSnapshots": 1024, + "maxAllocationPremiumManagedDisksAndSnapshots": 1024, + "ddagpuCount": 6, + "partitionedGpuCount": 0 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/8158498d-27b1-4ccf-9aa1-de0f925731e6/providers/Microsoft.Compute.Admin/locations/local/quotas/testQuotaCreateUpdateDelete", + "name": "testQuotaCreateUpdateDelete", + "type": "Microsoft.Compute.Admin/quotas", + "location": "local", + "properties": { + "virtualMachineCount": 2, + "coresLimit": 2, + "availabilitySetCount": 2, + "vmScaleSetCount": 2, + "maxAllocationStandardManagedDisksAndSnapshots": 1024, + "maxAllocationPremiumManagedDisksAndSnapshots": 1024, + "ddagpuCount": 6, + "partitionedGpuCount": 0 + } + } + } + } +} diff --git a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2021-01-01/examples/Quotas/Delete.json b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2021-01-01/examples/Quotas/Delete.json new file mode 100644 index 000000000000..10651bebf525 --- /dev/null +++ b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2021-01-01/examples/Quotas/Delete.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "location": "local", + "quotaName": "testQuotaCreateUpdateDelete", + "api-version": "2021-01-01" + }, + "responses": { + "200": {} + } +} diff --git a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2021-01-01/examples/Quotas/Get.json b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2021-01-01/examples/Quotas/Get.json new file mode 100644 index 000000000000..703136201c69 --- /dev/null +++ b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2021-01-01/examples/Quotas/Get.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "location": "local", + "quotaName": "testQuotaCreateUpdateDelete", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/8158498d-27b1-4ccf-9aa1-de0f925731e6/providers/Microsoft.Compute.Admin/locations/local/quotas/testQuotaCreateUpdateDelete", + "name": "testQuotaCreateUpdateDelete", + "type": "Microsoft.Compute.Admin/quotas", + "location": "local", + "properties": { + "virtualMachineCount": 1, + "coresLimit": 1, + "availabilitySetCount": 1, + "vmScaleSetCount": 1, + "maxAllocationStandardManagedDisksAndSnapshots": 1024, + "maxAllocationPremiumManagedDisksAndSnapshots": 1024, + "ddagpuCount": 6, + "partitionedGpuCount": 0 + } + } + } + } +} diff --git a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2021-01-01/examples/Quotas/List.json b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2021-01-01/examples/Quotas/List.json new file mode 100644 index 000000000000..0af3abbcb658 --- /dev/null +++ b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2021-01-01/examples/Quotas/List.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "location": "local", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/8158498d-27b1-4ccf-9aa1-de0f925731e6/providers/Microsoft.Compute.Admin/locations/local/quotas/Default Quota", + "name": "Default Quota", + "type": "Microsoft.Compute.Admin/quotas", + "location": "local", + "properties": { + "virtualMachineCount": 20, + "coresLimit": 50, + "availabilitySetCount": 10, + "vmScaleSetCount": 20, + "maxAllocationStandardManagedDisksAndSnapshots": 1024, + "maxAllocationPremiumManagedDisksAndSnapshots": 1024, + "ddagpuCount": 6, + "partitionedGpuCount": 0 + } + } + ] + } + } + } +} diff --git a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2021-03-30/ScaleUnits.json b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2021-03-30/ScaleUnits.json new file mode 100644 index 000000000000..4b58376db718 --- /dev/null +++ b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2021-03-30/ScaleUnits.json @@ -0,0 +1,289 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-03-30", + "title": "Compute Admin Client" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "paths": { + "/providers/Microsoft.Compute.Admin/locations/{location}/computeScaleUnits/{scaleUnitName}": { + "get": { + "x-ms-examples": { + "Get an existing scale set.": { + "$ref": "./examples/ScaleUnits/Get.json" + } + }, + "tags": [ + "ScaleUnits" + ], + "summary": "Returns the scale unit view.", + "description": "Get the scale unit view.", + "operationId": "ScaleUnits_Get", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "ScaleUnits.json#/parameters/LocationParameter" + }, + { + "$ref": "ScaleUnits.json#/parameters/ScaleUnitParameter" + }, + { + "$ref": "ScaleUnits.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "ScaleUnits.json#/definitions/ScaleUnit" + } + }, + "default": { + "description": "Default Response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + } + } + } + }, + "definitions": { + "ScaleUnit": { + "description": "The scale unit operator view.", + "type": "object", + "properties": { + "properties": { + "description": "The scale unit operator view properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ScaleUnitProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ] + }, + "ScaleUnitProperties": { + "description": "Properties for a scale unit", + "type": "object", + "properties": { + "scaleUnitName": { + "description": "The name of the scale unit.", + "type": "string" + }, + "lastUpdatedTime": { + "description": "The scale unit last update time (UTC).", + "type": "string" + }, + "nodes": { + "description": "The nodes of the scale unit.", + "type": "array", + "items": { + "$ref": "#/definitions/NodeView" + } + } + } + }, + "NodeView": { + "description": "Properties for a node", + "type": "object", + "properties": { + "nodeName": { + "description": "The name of the node.", + "type": "string" + }, + "lastUpdatedTime": { + "description": "The node last update time (UTC).", + "type": "string" + }, + "nodeHealthState": { + "description": "The node health state.", + "enum": [ + "Unknown", + "Up", + "Down", + "MaintenanceMode" + ], + "type": "string", + "x-ms-enum": { + "name": "NodeHealthState" + } + }, + "virtualMachines": { + "description": "The virtual machines on the node.", + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineView" + } + } + } + }, + "VirtualMachineView": { + "description": "Properties for a virtual machine", + "type": "object", + "properties": { + "vmName": { + "description": "The name of the virtual machine.", + "type": "string" + }, + "vmId": { + "description": "The identifier of the virtual machine.", + "type": "string" + }, + "subscriptionId": { + "description": "The identifier of the subscription.", + "type": "string" + }, + "resourceGroupName": { + "description": "The resource group name.", + "type": "string" + }, + "vmSize": { + "description": "The virtual machine size.", + "type": "string" + }, + "vmScaleSetName": { + "description": "The virtual machine scale set name.", + "type": "string" + }, + "lastProvisioningErrorMessage": { + "description": "The virtual machine last provisioning error message.", + "type": "string" + }, + "timeOfLastConfigurationChange": { + "description": "The time of last configuration change (UTC).", + "type": "string" + }, + "powerState": { + "description": "The fabric VM power state.", + "enum": [ + "Unknown", + "Stopped", + "Running", + "Paused", + "SavedState", + "Stopping", + "Starting", + "Pausing", + "Resuming", + "Saving" + ], + "type": "string", + "x-ms-enum": { + "name": "VmPowerState" + } + } + } + }, + "Resource": { + "description": "Base resource object.", + "type": "object", + "properties": { + "id": { + "readOnly": true, + "description": "ID of the resource.", + "type": "string" + }, + "name": { + "readOnly": true, + "description": "Name of the resource.", + "type": "string" + }, + "type": { + "readOnly": true, + "description": "Type of Resource.", + "type": "string" + }, + "location": { + "description": "Location of the resource.", + "type": "string" + } + }, + "x-ms-azure-resource": true + }, + "ErrorDetails": { + "description": "Error details.", + "type": "object", + "properties": { + "error": { + "description": "Object containing error details.", + "$ref": "#/definitions/ErrorDetailsInternal" + } + } + }, + "ErrorDetailsInternal": { + "description": "Error details.", + "type": "object", + "properties": { + "code": { + "description": "The error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "The error message.", + "type": "string", + "readOnly": true + }, + "target": { + "description": "The target of the particular error.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "Client API Version.", + "required": true, + "type": "string" + }, + "LocationParameter": { + "description": "Location of the resource.", + "name": "location", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ScaleUnitParameter": { + "description": "Name of the scale unit.", + "name": "scaleUnitName", + "type": "string", + "required": true, + "in": "path", + "x-ms-parameter-location": "method" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Authorization uses an Azure Active Directory OAuth2 flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2021-03-30/examples/ScaleUnits/Get.json b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2021-03-30/examples/ScaleUnits/Get.json new file mode 100644 index 000000000000..acc2a8970626 --- /dev/null +++ b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2021-03-30/examples/ScaleUnits/Get.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "location": "local", + "scaleUnitName": "s-cluster", + "api-version": "2021-03-30" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Compute.Admin/locations/local/computeScaleUnits/s-cluster", + "type": "Microsoft.Compute.Admin/locations/computeScaleUnits", + "location": "local", + "properties": { + "scaleUnitName": "s-cluster", + "lastUpdatedTime": "2021-03-30T12:34:00.00000Z", + "nodes": [ + { + "nodeName": "AzsNode1", + "lastUpdatedTime": "2021-03-30T12:34:00.00000Z", + "nodeHealthState": "Up", + "virtualMachines": [ + { + "vmName": "tenantVm1", + "vmId": "AE7920EF-2225-4D4B-965F-76D077278A92", + "subscriptionId": "CF82763A-3528-4776-9D4C-F0BF718900C7", + "resourceGroupName": "tenantRg1", + "vmSize": "Standard_A1", + "timeOfLastConfigurationChange": "2021-03-30T12:34:00.00000Z", + "powerState": "Running" + }, + { + "vmName": "tenantVmScaleSet_0", + "vmId": "6832C576-9F0B-438C-AC58-23BB540FD960", + "subscriptionId": "CF82763A-3528-4776-9D4C-F0BF718900C7", + "resourceGroupName": "tenantRg1", + "vmSize": "Standard_A1", + "vmScaleSetName": "tenantVmScaleSet", + "timeOfLastConfigurationChange": "2021-03-30T12:34:00.00000Z", + "powerState": "Running" + } + ] + } + ] + } + } + } + } +} diff --git a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2021-04-01/DiskMigrationJobs.json b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2021-04-01/DiskMigrationJobs.json new file mode 100644 index 000000000000..ebf93493cbd8 --- /dev/null +++ b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2021-04-01/DiskMigrationJobs.json @@ -0,0 +1,489 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-04-01", + "title": "ComputeDiskAdminManagementClient", + "description": "The Admin Compute Disk Management Client." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute.Admin/locations/{location}/diskmigrationjobs": { + "get": { + "x-ms-examples": { + "Returns a list of disk migration jobs.": { + "$ref": "./examples/DiskMigrationJobs/List.json" + } + }, + "tags": [ + "DiskMigrationJobs" + ], + "operationId": "DiskMigrationJobs_List", + "description": "Returns a list of disk migration jobs.", + "parameters": [ + { + "$ref": "Disks.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "Disks.json#/parameters/LocationParameter" + }, + { + "$ref": "DiskMigrationJobs.json#/parameters/MigrationJobStatusParameter" + }, + { + "$ref": "Disks.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + }, + "200": { + "description": "OK -- The list of disk migration jobs has been returned.", + "schema": { + "$ref": "DiskMigrationJobs.json#/definitions/DiskMigrationJobList" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute.Admin/locations/{location}/diskmigrationjobs/{migrationId}": { + "get": { + "x-ms-examples": { + "Returns the requested disk migration job.": { + "$ref": "./examples/DiskMigrationJobs/Get.json" + } + }, + "tags": [ + "DiskMigrationJobs" + ], + "operationId": "DiskMigrationJobs_Get", + "description": "Returns the requested disk migration job.", + "parameters": [ + { + "$ref": "Disks.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "Disks.json#/parameters/LocationParameter" + }, + { + "$ref": "DiskMigrationJobs.json#/parameters/MigrationIdParameter" + }, + { + "$ref": "Disks.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + }, + "200": { + "description": "OK -- The disk migration job has been returned.", + "schema": { + "$ref": "DiskMigrationJobs.json#/definitions/DiskMigrationJob" + } + } + } + }, + "put": { + "x-ms-examples": { + "Create a disk migration job.": { + "$ref": "./examples/DiskMigrationJobs/Create.json" + } + }, + "tags": [ + "DiskMigrationJobs" + ], + "operationId": "DiskMigrationJobs_Create", + "description": "Create a disk migration job.", + "parameters": [ + { + "$ref": "Disks.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "Disks.json#/parameters/LocationParameter" + }, + { + "$ref": "DiskMigrationJobs.json#/parameters/MigrationIdParameter" + }, + { + "$ref": "DiskMigrationJobs.json#/parameters/TargetShareParameter" + }, + { + "$ref": "DiskMigrationJobs.json#/parameters/TargetScaleUnitParameter" + }, + { + "$ref": "DiskMigrationJobs.json#/parameters/TargetVolumeLabelParameter" + }, + { + "$ref": "DiskMigrationJobs.json#/parameters/DiskListParameter" + }, + { + "$ref": "Disks.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + }, + "200": { + "description": "OK -- Disk migration job is created successfully.", + "schema": { + "$ref": "DiskMigrationJobs.json#/definitions/DiskMigrationJob" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute.Admin/locations/{location}/diskMigrationJobs/{migrationId}/cancel": { + "post": { + "x-ms-examples": { + "Cancel a disk migration job.": { + "$ref": "./examples/DiskMigrationJobs/Cancel.json" + } + }, + "tags": [ + "DiskMigrationJobs" + ], + "operationId": "DiskMigrationJobs_Cancel", + "description": "Cancel a disk migration job.", + "parameters": [ + { + "$ref": "Disks.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "Disks.json#/parameters/LocationParameter" + }, + { + "$ref": "DiskMigrationJobs.json#/parameters/MigrationIdParameter" + }, + { + "$ref": "Disks.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + }, + "200": { + "description": "OK -- Disk migration job cancellation is called.", + "schema": { + "$ref": "DiskMigrationJobs.json#/definitions/DiskMigrationJob" + } + } + } + } + } + }, + "definitions": { + "ErrorResponse": { + "description": "Error response.", + "properties": { + "error": { + "description": "Error definition.", + "$ref": "#/definitions/ErrorDefinition" + } + } + }, + "ErrorDefinition": { + "description": "Error definition.", + "readOnly": true, + "required": [ + "message", + "code" + ], + "properties": { + "code": { + "description": "Service specific error code which serves as the substatus for the HTTP error code.", + "type": "string", + "minimum": 100, + "maximum": 600 + }, + "message": { + "description": "Description of the error.", + "type": "string" + } + } + }, + "MigrationJobStatus": { + "description": "Migration job status.", + "type": "string", + "enum": [ + "Undefined", + "Running", + "Succeeded", + "Failed", + "Canceled", + "Pending" + ], + "x-ms-enum": { + "name": "MigrationJobStatus", + "modelAsString": true + } + }, + "MigrationSubTaskStatus": { + "description": "Migration child task status.", + "type": "string", + "enum": [ + "Undefined", + "Running", + "Succeeded", + "Failed", + "Canceled", + "Pending", + "Skipped" + ], + "x-ms-enum": { + "name": "MigrationSubTaskStatus", + "modelAsString": true + } + }, + "MigrationSubTaskProperties": { + "description": "Disk migration child task properties.", + "type": "object", + "properties": { + "migrationSubtaskStatus": { + "description": "The disk migration child task status.", + "$ref": "DiskMigrationJobs.json#/definitions/MigrationSubTaskStatus", + "readOnly": true + }, + "reason": { + "description": "The reason of task failure.", + "type": "string", + "readOnly": true + }, + "startTime": { + "description": "The task start time.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "endTime": { + "description": "The task end time.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "targetShare": { + "description": "The target share of migration task.", + "type": "string", + "readOnly": true + }, + "sourceShare": { + "description": "The source share of migration task.", + "type": "string", + "readOnly": true + }, + "targetDiskStateForMigration": { + "description": "The disk status.", + "$ref": "Disks.json#/definitions/DiskState", + "readOnly": true + }, + "diskId": { + "description": "The id of disk.", + "type": "string", + "readOnly": true + } + } + }, + "MigrationSubTaskList": { + "description": "List of disk migration tasks.", + "type": "array", + "items": { + "$ref": "DiskMigrationJobs.json#/definitions/MigrationSubTask" + } + }, + "MigrationSubTask": { + "description": "Disk migration child task.", + "type": "object", + "properties": { + "migrationSubTaskId": { + "description": "The id of migration child task.", + "type": "string", + "readOnly": true + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "DiskMigrationJobs.json#/definitions/MigrationSubTaskProperties", + "description": "Disk migration child task properties." + } + } + }, + "DiskMigrationJobProperties": { + "description": "Disk migration job properties.", + "type": "object", + "properties": { + "migrationId": { + "description": "The disk migration id.", + "type": "string" + }, + "status": { + "description": "The current status of disk migration job.", + "$ref": "DiskMigrationJobs.json#/definitions/MigrationJobStatus", + "readOnly": true + }, + "subtasks": { + "description": "The list of child migration tasks.", + "$ref": "DiskMigrationJobs.json#/definitions/MigrationSubTaskList", + "readOnly": true + }, + "creationTime": { + "description": "The job creation time.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "startTime": { + "description": "The job start time.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "endTime": { + "description": "The job end time.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "targetShare": { + "description": "The target share of migration job.", + "type": "string", + "readOnly": true + } + } + }, + "DiskMigrationJob": { + "description": "Disk migration job.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "DiskMigrationJobs.json#/definitions/DiskMigrationJobProperties", + "description": "Disk migration properties." + } + }, + "allOf": [ + { + "$ref": "../../preview/2015-12-01-preview/Compute.json#/definitions/Resource" + } + ] + }, + "DiskMigrationJobList": { + "type": "object", + "description": "List of disk migration jobs.", + "properties": { + "value": { + "description": "List of disk migration jobs.", + "type": "array", + "items": { + "$ref": "DiskMigrationJobs.json#/definitions/DiskMigrationJob" + } + }, + "nextLink": { + "description": "URI to the next page.", + "type": "string" + } + } + }, + "DiskListInput": { + "type": "array", + "description": "List of disks.", + "items": { + "$ref": "Disks.json#/definitions/Disk" + } + } + }, + "parameters": { + "MigrationJobStatusParameter": { + "description": "The parameters of disk migration job status.", + "name": "status", + "in": "query", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + "MigrationIdParameter": { + "description": "The migration job guid name.", + "name": "migrationId", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "TargetShareParameter": { + "description": "The target share name.", + "name": "targetShare", + "in": "query", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + "TargetScaleUnitParameter": { + "description": "The target scale unit name.", + "name": "targetScaleUnit", + "in": "query", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + "TargetVolumeLabelParameter": { + "description": "The target volume label.", + "name": "targetVolumeLabel", + "in": "query", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + "DiskListParameter": { + "description": "The parameters of disk list.", + "name": "disks", + "in": "body", + "required": true, + "schema": { + "$ref": "DiskMigrationJobs.json#/definitions/DiskListInput" + }, + "x-ms-parameter-location": "method" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Authorization uses an Azure Active Directory OAuth2 flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2021-04-01/Disks.json b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2021-04-01/Disks.json new file mode 100644 index 000000000000..575505b8c72d --- /dev/null +++ b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2021-04-01/Disks.json @@ -0,0 +1,447 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-04-01", + "title": "ComputeDiskAdminManagementClient", + "description": "The Admin Compute Disk Management Client." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute.Admin/locations/{location}/disks": { + "get": { + "x-ms-examples": { + "Returns a list of disks.": { + "$ref": "./examples/Disks/List.json" + } + }, + "tags": [ + "Disks" + ], + "operationId": "Disks_List", + "description": "Returns a list of disks.", + "parameters": [ + { + "$ref": "Disks.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "Disks.json#/parameters/LocationParameter" + }, + { + "$ref": "Disks.json#/parameters/UserSubscriptionIdParameter" + }, + { + "$ref": "Disks.json#/parameters/DiskStateParameter" + }, + { + "$ref": "Disks.json#/parameters/SourceSharePathParameter" + }, + { + "$ref": "Disks.json#/parameters/SourceScaleUnitParameter" + }, + { + "$ref": "Disks.json#/parameters/SourceVolumeLabelParameter" + }, + { + "$ref": "Disks.json#/parameters/DiskCountParameter" + }, + { + "$ref": "Disks.json#/parameters/DiskStartParameter" + }, + { + "$ref": "Disks.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + }, + "200": { + "description": "OK -- The list of disks has been returned.", + "schema": { + "$ref": "Disks.json#/definitions/DiskList" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute.Admin/locations/{location}/disks/{diskId}": { + "get": { + "x-ms-examples": { + "Returns the requested disk.": { + "$ref": "./examples/Disks/Get.json" + } + }, + "tags": [ + "Disks" + ], + "operationId": "Disks_Get", + "description": "Returns the disk.", + "parameters": [ + { + "$ref": "Disks.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "Disks.json#/parameters/LocationParameter" + }, + { + "$ref": "Disks.json#/parameters/DiskIdParameter" + }, + { + "$ref": "Disks.json#/parameters/DiskSizeDetailParameter" + }, + { + "$ref": "Disks.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + }, + "200": { + "description": "OK -- The disk has been returned.", + "schema": { + "$ref": "Disks.json#/definitions/Disk" + } + } + } + } + } + }, + "definitions": { + "ErrorResponse": { + "description": "Error response.", + "properties": { + "error": { + "description": "Error definition.", + "$ref": "#/definitions/ErrorDefinition" + } + } + }, + "ErrorDefinition": { + "description": "Error definition.", + "readOnly": true, + "required": [ + "message", + "code" + ], + "properties": { + "code": { + "description": "Service specific error code which serves as the substatus for the HTTP error code.", + "type": "string", + "minimum": 100, + "maximum": 600 + }, + "message": { + "description": "Description of the error.", + "type": "string" + } + } + }, + "DiskProperties": { + "description": "Managed disk properties.", + "type": "object", + "properties": { + "diskId": { + "description": "The disk id.", + "type": "string" + }, + "status": { + "description": "The disk status.", + "$ref": "Disks.json#/definitions/DiskState" + }, + "sharePath": { + "description": "The disk share path.", + "type": "string" + }, + "actualSizeGB": { + "description": "The actual size of disk in GB.", + "type": "integer", + "format": "int64", + "readOnly": true + }, + "provisionSizeGB": { + "description": "The provision size of disk in GB.", + "type": "integer", + "format": "int64", + "readOnly": true + }, + "managedBy": { + "description": "Compute resource Uri which owns this disk.", + "type": "string", + "readOnly": true + }, + "userResourceId": { + "description": "The disk resource Uri from user view.", + "type": "string", + "readOnly": true + }, + "diskType": { + "description": "The type of the disk resource.", + "$ref": "Disks.json#/definitions/DiskResourceType", + "readOnly": true + }, + "diskSku": { + "description": "the disk sku.", + "$ref": "Disks.json#/definitions/AccountType", + "readOnly": true + }, + "creationSourceUri": { + "description": "The disk creation source uri.", + "type": "string", + "readOnly": true + }, + "creationOption": { + "description": "The disk creation option.", + "$ref": "Disks.json#/definitions/DiskCreationOption", + "readOnly": true + }, + "exclusiveAllocatedSize": { + "description": "The exclusive allocated size for the disk.", + "type": "integer", + "format": "int64", + "readOnly": true + } + } + }, + "Disk": { + "description": "Managed Disk.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "Disks.json#/definitions/DiskProperties", + "description": "Disk properties." + } + }, + "allOf": [ + { + "$ref": "../../preview/2015-12-01-preview/Compute.json#/definitions/Resource" + } + ] + }, + "DiskList": { + "type": "object", + "description": "List of disks.", + "properties": { + "value": { + "description": "List of disks.", + "type": "array", + "items": { + "$ref": "Disks.json#/definitions/Disk" + } + }, + "nextLink": { + "description": "URI to the next page.", + "type": "string" + } + } + }, + "DiskState": { + "description": "Disk State.", + "type": "string", + "enum": [ + "Undefined", + "Unattached", + "Attached", + "Reserved", + "ActiveSAS", + "Unknown", + "All", + "Recommended", + "OfflineMigration", + "OnlineMigration" + ], + "x-ms-enum": { + "name": "DiskState", + "modelAsString": true + } + }, + "DiskResourceType": { + "description": "Disk resource type.", + "type": "string", + "enum": [ + "Undefined", + "Disk", + "Snapshot", + "RestorePoint", + "ManagedBlob" + ], + "x-ms-enum": { + "name": "DiskResourceType", + "modelAsString": true + } + }, + "AccountType": { + "description": "Disk Sku.", + "type": "string", + "enum": [ + "Standard_LRS", + "Standard_ZRS", + "Standard_GRS", + "Standard_RAGRS", + "Premium_LRS", + "StandardSSD_LRS", + "UltraSSD_LRS" + ], + "x-ms-enum": { + "name": "AccountType", + "modelAsString": true + } + }, + "DiskCreationOption": { + "description": "Disk creation option.", + "type": "string", + "enum": [ + "Empty", + "FromImage", + "Import", + "Copy", + "Restore", + "FromPreprovisioned", + "Undelete", + "Upload", + "RecoverFromBlob" + ], + "x-ms-enum": { + "name": "DiskCreationOption", + "modelAsString": true + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Subscription credentials that uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.", + "required": true, + "type": "string" + }, + "LocationParameter": { + "description": "Location of the resource.", + "name": "location", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "Client API Version.", + "required": true, + "type": "string", + "default": "2021-04-01" + }, + "UserSubscriptionIdParameter": { + "description": "User Subscription Id which the resource belongs to.", + "name": "userSubscriptionId", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "method" + }, + "DiskStateParameter": { + "description": "The parameters of disk state.", + "name": "status", + "in": "query", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + "SourceSharePathParameter": { + "description": "The share which the resource belongs to.", + "name": "sharePath", + "in": "query", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + "SourceScaleUnitParameter": { + "description": "The scale unit which the resource belongs to.", + "name": "scaleUnit", + "in": "query", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + "SourceVolumeLabelParameter": { + "description": "The volume label of the volume which the resource belongs to.", + "name": "volumeLabel", + "in": "query", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + "DiskCountParameter": { + "description": "The maximum number of disks to return.", + "name": "count", + "in": "query", + "type": "integer", + "format": "int32", + "required": false, + "x-ms-parameter-location": "method" + }, + "DiskStartParameter": { + "description": "The start index of disks in query.", + "name": "start", + "in": "query", + "type": "integer", + "format": "int32", + "required": false, + "x-ms-parameter-location": "method" + }, + "DiskIdParameter": { + "description": "The disk guid as identity.", + "name": "diskId", + "type": "string", + "in": "path", + "required": true, + "x-ms-parameter-location": "method" + }, + "DiskSizeDetailParameter": { + "description": "Switch for whether summary or detailed disk size information is returned.", + "name": "showSizeDetail", + "in": "query", + "required": false, + "type": "boolean", + "x-ms-parameter-location": "method", + "default": false + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Authorization uses an Azure Active Directory OAuth2 flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2021-04-01/examples/DiskMigrationJobs/Cancel.json b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2021-04-01/examples/DiskMigrationJobs/Cancel.json new file mode 100644 index 000000000000..7b856e0967ec --- /dev/null +++ b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2021-04-01/examples/DiskMigrationJobs/Cancel.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "subscriptionId": "04666444-56f0-4d4f-afc5-dbd6b134b084", + "location": "redmond", + "migrationId": "ec9f79cf-e4d7-4d37-926a-e69c2198be8a", + "api-version": "2021-04-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/04666444-56f0-4d4f-afc5-dbd6b134b084/providers/Microsoft.Compute.Admin/locations/redmond/diskmigrationjobs/ec9f79cf-e4d7-4d37-926a-e69c2198be8a", + "name": "redmond/ec9f79cf-e4d7-4d37-926a-e69c2198be8a", + "type": "Microsoft.Compute.Admin/locations/diskmigrationjobs", + "location": "redmond", + "properties": { + "migrationId": "ec9f79cf-e4d7-4d37-926a-e69c2198be8a", + "status": "Canceled", + "subtasks": [ + { + "migrationSubTaskId": "726dff1c-e765-44c6-b16d-f66f2c28e730", + "properties": { + "migrationSubtaskStatus": "Canceled", + "startTime": "2018-05-17T08:26:54.57146Z", + "endTime": "2018-05-17T08:27:35.0559255Z", + "targetShare": "\\\\SU1FileServer.mydomain.com\\SU1_ObjStore_1", + "sourceShare": "\\\\SU1FileServer.mydomain.com\\SU1_ObjStore_4", + "targetDiskStateForMigration": "Unattached", + "diskId": "423e4eb4-f791-4d13-ad5b-4d415733b0d6" + } + }, + { + "migrationSubTaskId": "d6ab496c-4a76-474f-9ee2-9031053f06e8", + "properties": { + "migrationSubtaskStatus": "Succeeded", + "startTime": "2018-05-17T08:27:35.0871773Z", + "endTime": "2018-05-17T08:28:15.2842678Z", + "targetShare": "\\\\SU1FileServer.mydomain.com\\SU1_ObjStore_1", + "sourceShare": "\\\\SU1FileServer.mydomain.com\\SU1_ObjStore_2", + "targetDiskStateForMigration": "Unattached", + "diskId": "48dc9b56-5883-4011-9dc3-0e527f33e6ab" + } + } + ], + "creationTime": "2018-05-17T08:26:54.4777279Z", + "startTime": "2018-05-17T08:26:54.5402097Z", + "endTime": "0001-01-01T08:00:00Z", + "targetShare": "\\\\SU1FileServer.mydomain.com\\SU1_ObjStore_1" + } + } + } + } +} diff --git a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2021-04-01/examples/DiskMigrationJobs/Create.json b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2021-04-01/examples/DiskMigrationJobs/Create.json new file mode 100644 index 000000000000..846f93895812 --- /dev/null +++ b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2021-04-01/examples/DiskMigrationJobs/Create.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "subscriptionId": "04666444-56f0-4d4f-afc5-dbd6b134b084", + "location": "redmond", + "migrationId": "ec9f79cf-e4d7-4d37-926a-e69c2198be8a", + "api-version": "2021-04-01", + "targetShare": "\\\\SU1FileServer.mydomain.com\\SU1_ObjStore_1", + "disks": [ + { + "location": "redmond", + "properties": { + "diskId": "423e4eb4-f791-4d13-ad5b-4d415733b0d6", + "status": "Unattached", + "sharePath": "\\\\SU1FileServer.mydomain.com\\SU1_ObjStore_4" + } + }, + { + "location": "redmond", + "properties": { + "diskId": "48dc9b56-5883-4011-9dc3-0e527f33e6ab", + "status": "Unattached", + "sharePath": "\\\\SU1FileServer.mydomain.com\\SU1_ObjStore_2" + } + } + ] + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/04666444-56f0-4d4f-afc5-dbd6b134b084/providers/Microsoft.Compute.Admin/locations/redmond/diskmigrationjobs/ec9f79cf-e4d7-4d37-926a-e69c2198be8a", + "name": "redmond/ec9f79cf-e4d7-4d37-926a-e69c2198be8a", + "type": "Microsoft.Compute.Admin/locations/diskmigrationjobs", + "location": "redmond", + "properties": { + "migrationId": "ec9f79cf-e4d7-4d37-926a-e69c2198be8a", + "status": "Pending", + "subtasks": [ + { + "migrationSubTaskId": "726dff1c-e765-44c6-b16d-f66f2c28e730", + "properties": { + "migrationSubtaskStatus": "Pending", + "startTime": "0001-01-01T08:00:00Z", + "endTime": "0001-01-01T08:00:00Z", + "targetShare": "\\\\SU1FileServer.mydomain.com\\SU1_ObjStore_1", + "sourceShare": "\\\\SU1FileServer.mydomain.com\\SU1_ObjStore_4", + "targetDiskStateForMigration": "Unattached", + "diskId": "423e4eb4-f791-4d13-ad5b-4d415733b0d6" + } + }, + { + "migrationSubTaskId": "d6ab496c-4a76-474f-9ee2-9031053f06e8", + "properties": { + "migrationSubtaskStatus": "Pending", + "startTime": "0001-01-01T08:00:00Z", + "endTime": "0001-01-01T08:00:00Z", + "targetShare": "\\\\SU1FileServer.mydomain.com\\SU1_ObjStore_1", + "sourceShare": "\\\\SU1FileServer.mydomain.com\\SU1_ObjStore_2", + "targetDiskStateForMigration": "Unattached", + "diskId": "48dc9b56-5883-4011-9dc3-0e527f33e6ab" + } + } + ], + "creationTime": "2018-05-17T08:26:54.4777279Z", + "startTime": "0001-01-01T08:00:00Z", + "endTime": "0001-01-01T08:00:00Z", + "targetShare": "\\\\SU1FileServer.mydomain.com\\SU1_ObjStore_1" + } + } + } + } +} diff --git a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2021-04-01/examples/DiskMigrationJobs/Get.json b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2021-04-01/examples/DiskMigrationJobs/Get.json new file mode 100644 index 000000000000..ea906e370aeb --- /dev/null +++ b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2021-04-01/examples/DiskMigrationJobs/Get.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "subscriptionId": "04666444-56f0-4d4f-afc5-dbd6b134b084", + "location": "redmond", + "migrationId": "ec9f79cf-e4d7-4d37-926a-e69c2198be8a", + "api-version": "2021-04-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/04666444-56f0-4d4f-afc5-dbd6b134b084/providers/Microsoft.Compute.Admin/locations/redmond/diskmigrationjobs/ec9f79cf-e4d7-4d37-926a-e69c2198be8a", + "name": "redmond/ec9f79cf-e4d7-4d37-926a-e69c2198be8a", + "type": "Microsoft.Compute.Admin/locations/diskmigrationjobs", + "location": "redmond", + "properties": { + "migrationId": "ec9f79cf-e4d7-4d37-926a-e69c2198be8a", + "status": "Running", + "subtasks": [ + { + "migrationSubTaskId": "726dff1c-e765-44c6-b16d-f66f2c28e730", + "properties": { + "migrationSubtaskStatus": "Succeeded", + "startTime": "2018-05-17T08:26:54.57146Z", + "endTime": "2018-05-17T08:27:35.0559255Z", + "targetShare": "\\\\SU1FileServer.mydomain.com\\SU1_ObjStore_1", + "sourceShare": "\\\\SU1FileServer.mydomain.com\\SU1_ObjStore_4", + "targetDiskStateForMigration": "Unattached", + "diskId": "423e4eb4-f791-4d13-ad5b-4d415733b0d6" + } + }, + { + "migrationSubTaskId": "d6ab496c-4a76-474f-9ee2-9031053f06e8", + "properties": { + "migrationSubtaskStatus": "Running", + "startTime": "2018-05-17T08:27:35.0871773Z", + "endTime": "0001-01-01T08:00:00Z", + "targetShare": "\\\\SU1FileServer.mydomain.com\\SU1_ObjStore_1", + "sourceShare": "\\\\SU1FileServer.mydomain.com\\SU1_ObjStore_2", + "targetDiskStateForMigration": "Unattached", + "diskId": "48dc9b56-5883-4011-9dc3-0e527f33e6ab" + } + } + ], + "creationTime": "2018-05-17T08:26:54.4777279Z", + "startTime": "2018-05-17T08:26:54.5402097Z", + "endTime": "0001-01-01T08:00:00Z", + "targetShare": "\\\\SU1FileServer.mydomain.com\\SU1_ObjStore_1" + } + } + } + } +} diff --git a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2021-04-01/examples/DiskMigrationJobs/List.json b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2021-04-01/examples/DiskMigrationJobs/List.json new file mode 100644 index 000000000000..63a0dd10ed85 --- /dev/null +++ b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2021-04-01/examples/DiskMigrationJobs/List.json @@ -0,0 +1,95 @@ +{ + "parameters": { + "subscriptionId": "04666444-56f0-4d4f-afc5-dbd6b134b084", + "location": "redmond", + "api-version": "2021-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/04666444-56f0-4d4f-afc5-dbd6b134b084/providers/Microsoft.Compute.Admin/locations/redmond/diskmigrationjobs/0050e481-63cd-4ad1-9c49-b8cbb992b75e", + "name": "redmond/0050e481-63cd-4ad1-9c49-b8cbb992b75e", + "type": "Microsoft.Compute.Admin/locations/diskmigrationjobs", + "location": "redmond", + "properties": { + "migrationId": "0050e481-63cd-4ad1-9c49-b8cbb992b75e", + "status": "Succeeded", + "subtasks": [ + { + "migrationSubTaskId": "607d1e44-48f5-418e-a263-ec60fb35d285", + "properties": { + "migrationSubtaskStatus": "Succeeded", + "startTime": "2018-05-17T09:29:36.1290315Z", + "endTime": "2018-05-17T09:30:16.3566829Z", + "targetShare": "\\\\SU1FileServer.mydomain.com\\SU1_ObjStore_2", + "sourceShare": "\\\\SU1FileServer.mydomain.com\\SU1_ObjStore_2", + "targetDiskStateForMigration": "Unattached", + "diskId": "5018f340-c41b-4e82-a553-248431c4df64" + } + }, + { + "migrationSubTaskId": "cfe7b95e-d45c-4515-af2a-3a889e70559a", + "properties": { + "migrationSubtaskStatus": "Succeeded", + "startTime": "2018-05-17T09:30:16.3723117Z", + "endTime": "2018-05-17T09:30:56.5945261Z", + "targetShare": "\\\\SU1FileServer.mydomain.com\\SU1_ObjStore_2", + "sourceShare": "\\\\SU1FileServer.mydomain.com\\SU1_ObjStore_4", + "targetDiskStateForMigration": "Unattached", + "diskId": "4d9c7dd9-50ea-473d-87be-f7a57acd8aae" + } + } + ], + "creationTime": "2018-05-17T09:29:36.0351498Z", + "startTime": "2018-05-17T09:29:36.0976561Z", + "endTime": "2018-05-17T09:31:06.6187954Z", + "targetShare": "\\\\SU1FileServer.mydomain.com\\SU1_ObjStore_2" + } + }, + { + "id": "/subscriptions/04666444-56f0-4d4f-afc5-dbd6b134b084/providers/Microsoft.Compute.Admin/locations/redmond/diskmigrationjobs/9fbb98b2-fe81-449a-9d71-61bccb0d0489", + "name": "redmond/9fbb98b2-fe81-449a-9d71-61bccb0d0489", + "type": "Microsoft.Compute.Admin/locations/diskmigrationjobs", + "location": "redmond", + "properties": { + "migrationId": "9fbb98b2-fe81-449a-9d71-61bccb0d0489", + "status": "Succeeded", + "subtasks": [ + { + "migrationSubTaskId": "5a76680f-3788-492c-9840-ffb4c9f95729", + "properties": { + "migrationSubtaskStatus": "Succeeded", + "startTime": "2018-05-18T02:18:49.1442797Z", + "endTime": "2018-05-18T02:19:29.4948624Z", + "targetShare": "\\\\SU1FileServer.mydomain.com\\SU1_ObjStore_2", + "sourceShare": "\\\\SU1FileServer.mydomain.com\\SU1_ObjStore_1", + "targetDiskStateForMigration": "Unattached", + "diskId": "48dc9b56-5883-4011-9dc3-0e527f33e6ab" + } + }, + { + "migrationSubTaskId": "c302a235-9e8c-431d-8a5e-8b1fc984b7ab", + "properties": { + "migrationSubtaskStatus": "Succeeded", + "startTime": "2018-05-18T02:19:29.5104777Z", + "endTime": "2018-05-18T02:20:09.7263314Z", + "targetShare": "\\\\SU1FileServer.mydomain.com\\SU1_ObjStore_2", + "sourceShare": "\\\\SU1FileServer.mydomain.com\\SU1_ObjStore_1", + "targetDiskStateForMigration": "Unattached", + "diskId": "423e4eb4-f791-4d13-ad5b-4d415733b0d6" + } + } + ], + "creationTime": "2018-05-18T02:18:49.0978853Z", + "startTime": "2018-05-18T02:18:49.1286583Z", + "endTime": "2018-05-18T02:20:19.7823733Z", + "targetShare": "\\\\SU1FileServer.mydomain.com\\SU1_ObjStore_2" + } + } + ] + } + } + } +} diff --git a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2021-04-01/examples/Disks/Get.json b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2021-04-01/examples/Disks/Get.json new file mode 100644 index 000000000000..0ff2b0d190d3 --- /dev/null +++ b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2021-04-01/examples/Disks/Get.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "04666444-56f0-4d4f-afc5-dbd6b134b084", + "location": "redmond", + "diskId": "423e4eb4-f791-4d13-ad5b-4d415733b0d6", + "api-version": "2021-04-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/04666444-56f0-4d4f-afc5-dbd6b134b084/providers/Microsoft.Compute.Admin/locations/redmond/disks/423e4eb4-f791-4d13-ad5b-4d415733b0d6", + "name": "redmond/423e4eb4-f791-4d13-ad5b-4d415733b0d6", + "type": "Microsoft.Compute.Admin/locations/disks", + "location": "redmond", + "properties": { + "diskId": "423e4eb4-f791-4d13-ad5b-4d415733b0d6", + "status": "Unattached", + "sharePath": "\\\\SU1FileServer.mydomain.com\\SU1_ObjStore_4", + "actualSizeGB": 183, + "provisionSizeGB": 200, + "userResourceId": "/subscriptions/4496690e-348e-4dc0-addc-17395c3966ba/resourceGroups/DISKRG6ECD14E6/providers/Microsoft.Compute/Disks/diskrptest9vb55sb15w", + "diskType": "Disk", + "diskSku": "Standard_LRS", + "creationSourceUri": "/subscriptions/4496690e-348e-4dc0-addc-17395c3966ba/resourceGroups/diskrptest/providers/Microsoft.Compute/disks/testmd01", + "creationOption": "Copy", + "exclusiveAllocatedSize": 1073741824 + } + } + } + } +} diff --git a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2021-04-01/examples/Disks/List.json b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2021-04-01/examples/Disks/List.json new file mode 100644 index 000000000000..77605b095156 --- /dev/null +++ b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/stable/2021-04-01/examples/Disks/List.json @@ -0,0 +1,143 @@ +{ + "parameters": { + "subscriptionId": "04666444-56f0-4d4f-afc5-dbd6b134b084", + "location": "redmond", + "api-version": "2021-04-01", + "start": 1, + "count": 100, + "status": "Unattached" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/04666444-56f0-4d4f-afc5-dbd6b134b084/providers/Microsoft.Compute.Admin/locations/redmond/disks/423e4eb4-f791-4d13-ad5b-4d415733b0d6", + "name": "redmond/423e4eb4-f791-4d13-ad5b-4d415733b0d6", + "type": "Microsoft.Compute.Admin/locations/disks", + "location": "redmond", + "properties": { + "diskId": "423e4eb4-f791-4d13-ad5b-4d415733b0d6", + "status": "Unattached", + "sharePath": "\\\\SU1FileServer.mydomain.com\\SU1_ObjStore_4", + "actualSizeGB": 183, + "provisionSizeGB": 200, + "userResourceId": "/subscriptions/4496690e-348e-4dc0-addc-17395c3966ba/resourceGroups/DISKRG6ECD14E6/providers/Microsoft.Compute/Disks/diskrptest9vb55sb15w", + "diskType": "Disk", + "diskSku": "Standard_LRS", + "creationSourceUri": "/subscriptions/4496690e-348e-4dc0-addc-17395c3966ba/resourceGroups/diskrptest/providers/Microsoft.Compute/disks/testmd01", + "creationOption": "Copy" + } + }, + { + "id": "/subscriptions/04666444-56f0-4d4f-afc5-dbd6b134b084/providers/Microsoft.Compute.Admin/locations/redmond/disks/48dc9b56-5883-4011-9dc3-0e527f33e6ab", + "name": "redmond/48dc9b56-5883-4011-9dc3-0e527f33e6ab", + "type": "Microsoft.Compute.Admin/locations/disks", + "location": "redmond", + "properties": { + "diskId": "48dc9b56-5883-4011-9dc3-0e527f33e6ab", + "status": "Unattached", + "sharePath": "\\\\SU1FileServer.mydomain.com\\SU1_ObjStore_2", + "actualSizeGB": 1, + "provisionSizeGB": 200, + "userResourceId": "/subscriptions/4496690e-348e-4dc0-addc-17395c3966ba/resourceGroups/DISKRG6ECD14E6/providers/Microsoft.Compute/Snapshots/diskrptestjrlt133h5g8t", + "diskType": "Snapshot", + "diskSku": "Standard_LRS", + "creationSourceUri": "/subscriptions/4496690e-348e-4dc0-addc-17395c3966ba/resourceGroups/diskrptest/providers/Microsoft.Compute/disks/testmd01", + "creationOption": "Copy" + } + }, + { + "id": "/subscriptions/04666444-56f0-4d4f-afc5-dbd6b134b084/providers/Microsoft.Compute.Admin/locations/redmond/disks/5018f340-c41b-4e82-a553-248431c4df64", + "name": "redmond/5018f340-c41b-4e82-a553-248431c4df64", + "type": "Microsoft.Compute.Admin/locations/disks", + "location": "redmond", + "properties": { + "diskId": "5018f340-c41b-4e82-a553-248431c4df64", + "status": "Unattached", + "sharePath": "", + "actualSizeGB": 0, + "provisionSizeGB": 200, + "userResourceId": "/subscriptions/4496690e-348e-4dc0-addc-17395c3966ba/resourceGroups/DISKRG6ECD14E6/providers/Microsoft.Compute/Snapshots/diskrptestlhy3gmrez379", + "diskType": "Snapshot", + "diskSku": "Standard_LRS", + "creationSourceUri": "/subscriptions/4496690e-348e-4dc0-addc-17395c3966ba/resourceGroups/diskrptest/providers/Microsoft.Compute/disks/testmd01", + "creationOption": "Copy" + } + }, + { + "id": "/subscriptions/04666444-56f0-4d4f-afc5-dbd6b134b084/providers/Microsoft.Compute.Admin/locations/redmond/disks/8b5a40f9-c5d0-4273-a5b2-7ec4be371e30", + "name": "redmond/8b5a40f9-c5d0-4273-a5b2-7ec4be371e30", + "type": "Microsoft.Compute.Admin/locations/disks", + "location": "redmond", + "properties": { + "diskId": "8b5a40f9-c5d0-4273-a5b2-7ec4be371e30", + "status": "Unattached", + "sharePath": "", + "actualSizeGB": 0, + "provisionSizeGB": 200, + "userResourceId": "/subscriptions/4496690e-348e-4dc0-addc-17395c3966ba/resourceGroups/DISKRG6ECD14E6/providers/Microsoft.Compute/Disks/diskrptest5wnmxirn", + "diskType": "Disk", + "diskSku": "Standard_LRS", + "creationSourceUri": "/subscriptions/4496690e-348e-4dc0-addc-17395c3966ba/resourceGroups/diskrptest/providers/Microsoft.Compute/disks/testmd01", + "creationOption": "Copy" + } + }, + { + "id": "/subscriptions/04666444-56f0-4d4f-afc5-dbd6b134b084/providers/Microsoft.Compute.Admin/locations/redmond/disks/9664bba5-dcc1-4481-a85d-8a2dfca26c55", + "name": "redmond/9664bba5-dcc1-4481-a85d-8a2dfca26c55", + "type": "Microsoft.Compute.Admin/locations/disks", + "location": "redmond", + "properties": { + "diskId": "9664bba5-dcc1-4481-a85d-8a2dfca26c55", + "status": "Unattached", + "sharePath": "", + "actualSizeGB": 0, + "userResourceId": "/subscriptions/4496690e-348e-4dc0-addc-17395c3966ba/resourceGroups/DISKRG6ECD14E6/providers/Microsoft.Compute/Snapshots/diskrptestj32ckp6df9v", + "diskType": "Snapshot", + "diskSku": "Standard_LRS", + "creationSourceUri": "/subscriptions/4496690e-348e-4dc0-addc-17395c3966ba/resourceGroups/diskrptest/providers/Microsoft.Compute/disks/testmd01", + "creationOption": "Copy" + } + }, + { + "id": "/subscriptions/04666444-56f0-4d4f-afc5-dbd6b134b084/providers/Microsoft.Compute.Admin/locations/redmond/disks/cc79941f-5f42-4ac7-8428-7553f5e47e4b", + "name": "redmond/cc79941f-5f42-4ac7-8428-7553f5e47e4b", + "type": "Microsoft.Compute.Admin/locations/disks", + "location": "redmond", + "properties": { + "diskId": "cc79941f-5f42-4ac7-8428-7553f5e47e4b", + "status": "Unattached", + "sharePath": "", + "actualSizeGB": 0, + "provisionSizeGB": 200, + "userResourceId": "/subscriptions/4496690e-348e-4dc0-addc-17395c3966ba/resourceGroups/DISKRG6ECD14E6/providers/Microsoft.Compute/Snapshots/diskrptestthml7uzd3hs2", + "diskType": "Snapshot", + "diskSku": "Standard_LRS", + "creationSourceUri": "/subscriptions/4496690e-348e-4dc0-addc-17395c3966ba/resourceGroups/diskrptest/providers/Microsoft.Compute/disks/testmd01", + "creationOption": "Copy" + } + }, + { + "id": "/subscriptions/04666444-56f0-4d4f-afc5-dbd6b134b084/providers/Microsoft.Compute.Admin/locations/redmond/disks/dfee6038-fc35-4e0f-acd9-597b097a0b52", + "name": "redmond/dfee6038-fc35-4e0f-acd9-597b097a0b52", + "type": "Microsoft.Compute.Admin/locations/disks", + "location": "redmond", + "properties": { + "diskId": "dfee6038-fc35-4e0f-acd9-597b097a0b52", + "status": "Unattached", + "sharePath": "", + "actualSizeGB": 0, + "provisionSizeGB": 200, + "userResourceId": "/subscriptions/4496690e-348e-4dc0-addc-17395c3966ba/resourceGroups/DISKRG6ECD14E6/providers/Microsoft.Compute/Snapshots/diskrptestn9wefmbaqiu", + "diskType": "Snapshot", + "diskSku": "Standard_LRS", + "creationSourceUri": "/subscriptions/4496690e-348e-4dc0-addc-17395c3966ba/resourceGroups/diskrptest/providers/Microsoft.Compute/disks/testmd01", + "creationOption": "Copy" + } + } + ] + } + } + } +} diff --git a/specification/azsadmin/resource-manager/compute/readme.azsautogen.md b/specification/azsadmin/resource-manager/compute/readme.azsautogen.md index 7376b5eb69c3..e37ff2fce66c 100644 --- a/specification/azsadmin/resource-manager/compute/readme.azsautogen.md +++ b/specification/azsadmin/resource-manager/compute/readme.azsautogen.md @@ -10,4 +10,6 @@ input-file: - Microsoft.Compute.Admin/preview/2015-12-01-preview/VMExtensions.json - Microsoft.Compute.Admin/preview/2018-07-30-preview/Disks.json - Microsoft.Compute.Admin/preview/2018-07-30-preview/DiskMigrationJobs.json + - Microsoft.Compute.Admin/stable/2021-04-01/Disks.json + - Microsoft.Compute.Admin/stable/2021-04-01/DiskMigrationJobs.json ``` diff --git a/specification/azsadmin/resource-manager/compute/readme.md b/specification/azsadmin/resource-manager/compute/readme.md index 6e2d95dd3738..209e6255a8de 100644 --- a/specification/azsadmin/resource-manager/compute/readme.md +++ b/specification/azsadmin/resource-manager/compute/readme.md @@ -17,6 +17,7 @@ To see additional help and options, run: ## Configuration + ### Basic Information These are the global settings for the Compute API. @@ -24,21 +25,23 @@ These are the global settings for the Compute API. title: ComputeAdminClient description: Compute Admin Client openapi-type: arm -tag: package-2018-02-09 +tag: package-2021-04-01 ``` -### Tag: package-2018-02-09 +### Tag: package-2021-03-30 -These settings apply only when `--tag=package-2018-02-09` is specified on the command line. +These settings apply only when `--tag=package-2021-04-01` is specified on the command line. -``` yaml $(tag) == 'package-2018-02-09' +``` yaml $(tag) == 'package-2021-04-01' input-file: - Microsoft.Compute.Admin/preview/2015-12-01-preview/Compute.json - Microsoft.Compute.Admin/preview/2015-12-01-preview/PlatformImages.json - - Microsoft.Compute.Admin/preview/2018-02-09/Quotas.json - Microsoft.Compute.Admin/preview/2015-12-01-preview/VMExtensions.json - - Microsoft.Compute.Admin/preview/2018-07-30-preview/Disks.json - - Microsoft.Compute.Admin/preview/2018-07-30-preview/DiskMigrationJobs.json + - Microsoft.Compute.Admin/stable/2020-11-01/Features.json + - Microsoft.Compute.Admin/stable/2021-01-01/Quotas.json + - Microsoft.Compute.Admin/stable/2021-03-30/ScaleUnits.json + - Microsoft.Compute.Admin/stable/2021-04-01/Disks.json + - Microsoft.Compute.Admin/stable/2021-04-01/DiskMigrationJobs.json ``` --- @@ -64,10 +67,11 @@ csharp: input-file: - Microsoft.Compute.Admin/preview/2015-12-01-preview/Compute.json - Microsoft.Compute.Admin/preview/2015-12-01-preview/PlatformImages.json - - Microsoft.Compute.Admin/preview/2018-02-09/Quotas.json - Microsoft.Compute.Admin/preview/2015-12-01-preview/VMExtensions.json - - Microsoft.Compute.Admin/preview/2018-07-30-preview/Disks.json - - Microsoft.Compute.Admin/preview/2018-07-30-preview/DiskMigrationJobs.json + - Microsoft.Compute.Admin/stable/2020-11-01/Features.json + - Microsoft.Compute.Admin/stable/2021-01-01/Quotas.json + - Microsoft.Compute.Admin/stable/2021-04-01/Disks.json + - Microsoft.Compute.Admin/stable/2021-04-01/DiskMigrationJobs.json ``` ## Multi-API/Profile support for AutoRest v3 generators @@ -88,6 +92,8 @@ input-file: - $(this-folder)/Microsoft.Compute.Admin/preview/2015-12-01-preview/VMExtensions.json - $(this-folder)/Microsoft.Compute.Admin/preview/2018-07-30-preview/Disks.json - $(this-folder)/Microsoft.Compute.Admin/preview/2018-07-30-preview/DiskMigrationJobs.json + - $(this-folder)/Microsoft.Compute.Admin/stable/2021-04-01/Disks.json + - $(this-folder)/Microsoft.Compute.Admin/stable/2021-04-01/DiskMigrationJobs.json ``` diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/AcquiredPlan.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/AcquiredPlan.json index 04acfa702958..b13dded3cdc6 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/AcquiredPlan.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/AcquiredPlan.json @@ -40,6 +40,12 @@ } ], "responses": { + "default": { + "description": "Unexpected Error", + "schema": { + "$ref": "Subscriptions.json#/definitions/Error" + } + }, "200": { "description": "OK", "schema": { @@ -79,6 +85,12 @@ } ], "responses": { + "default": { + "description": "Unexpected Error", + "schema": { + "$ref": "Subscriptions.json#/definitions/Error" + } + }, "200": { "description": "OK", "schema": { @@ -113,6 +125,12 @@ } ], "responses": { + "default": { + "description": "Unexpected Error", + "schema": { + "$ref": "Subscriptions.json#/definitions/Error" + } + }, "200": { "description": "OK" }, @@ -150,6 +168,12 @@ } ], "responses": { + "default": { + "description": "Unexpected Error", + "schema": { + "$ref": "Subscriptions.json#/definitions/Error" + } + }, "200": { "description": "OK", "schema": { diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/DelegatedProvider.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/DelegatedProvider.json index a9eeb6578fb2..e5cf8a300e4d 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/DelegatedProvider.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/DelegatedProvider.json @@ -37,6 +37,12 @@ } ], "responses": { + "default": { + "description": "Unexpected Error", + "schema": { + "$ref": "Subscriptions.json#/definitions/Error" + } + }, "200": { "description": "OK", "schema": { @@ -73,6 +79,12 @@ } ], "responses": { + "default": { + "description": "Unexpected Error", + "schema": { + "$ref": "Subscriptions.json#/definitions/Error" + } + }, "200": { "description": "OK", "schema": { diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/DelegatedProviderOffer.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/DelegatedProviderOffer.json index 11d3af7323ad..d196362ac6b4 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/DelegatedProviderOffer.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/DelegatedProviderOffer.json @@ -40,6 +40,12 @@ } ], "responses": { + "default": { + "description": "Unexpected Error", + "schema": { + "$ref": "Subscriptions.json#/definitions/Error" + } + }, "200": { "description": "OK", "schema": { @@ -79,6 +85,12 @@ } ], "responses": { + "default": { + "description": "Unexpected Error", + "schema": { + "$ref": "Subscriptions.json#/definitions/Error" + } + }, "200": { "description": "OK", "schema": { @@ -132,7 +144,8 @@ }, "subscriptionCount": { "description": "Current subscription count.", - "type": "integer" + "type": "integer", + "format": "int32" } } }, diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/DirectoryTenant.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/DirectoryTenant.json index 0c672375780e..4fd33ebd1858 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/DirectoryTenant.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/DirectoryTenant.json @@ -40,6 +40,12 @@ } ], "responses": { + "default": { + "description": "Unexpected Error", + "schema": { + "$ref": "Subscriptions.json#/definitions/Error" + } + }, "200": { "description": "OK", "schema": { @@ -79,6 +85,12 @@ } ], "responses": { + "default": { + "description": "Unexpected Error", + "schema": { + "$ref": "Subscriptions.json#/definitions/Error" + } + }, "200": { "description": "OK", "schema": { @@ -113,6 +125,12 @@ } ], "responses": { + "default": { + "description": "Unexpected Error", + "schema": { + "$ref": "Subscriptions.json#/definitions/Error" + } + }, "200": { "description": "OK" }, @@ -150,6 +168,12 @@ } ], "responses": { + "default": { + "description": "Unexpected Error", + "schema": { + "$ref": "Subscriptions.json#/definitions/Error" + } + }, "200": { "description": "OK", "schema": { diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Location.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Location.json index 434d8d0351fb..f562fca58111 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Location.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Location.json @@ -37,6 +37,12 @@ } ], "responses": { + "default": { + "description": "Unexpected Error", + "schema": { + "$ref": "Subscriptions.json#/definitions/Error" + } + }, "200": { "description": "OK", "schema": { @@ -73,6 +79,12 @@ } ], "responses": { + "default": { + "description": "Unexpected Error", + "schema": { + "$ref": "Subscriptions.json#/definitions/Error" + } + }, "200": { "description": "OK", "schema": { @@ -107,6 +119,12 @@ } ], "responses": { + "default": { + "description": "Unexpected Error", + "schema": { + "$ref": "Subscriptions.json#/definitions/Error" + } + }, "200": { "description": "OK", "schema": { @@ -143,6 +161,12 @@ } ], "responses": { + "default": { + "description": "Unexpected Error", + "schema": { + "$ref": "Subscriptions.json#/definitions/Error" + } + }, "200": { "description": "OK", "schema": { @@ -156,7 +180,8 @@ "description": "Not Content" }, "404": { - "description": "Not Found" + "description": "Not Found", + "x-ms-error-response": true } } } diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Manifest.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Manifest.json index 7745eb8e3f9b..0686534cfe04 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Manifest.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Manifest.json @@ -37,6 +37,12 @@ } ], "responses": { + "default": { + "description": "Unexpected Error", + "schema": { + "$ref": "Subscriptions.json#/definitions/Error" + } + }, "200": { "description": "OK", "schema": { @@ -73,6 +79,12 @@ } ], "responses": { + "default": { + "description": "Unexpected Error", + "schema": { + "$ref": "Subscriptions.json#/definitions/Error" + } + }, "200": { "description": "OK", "schema": { @@ -278,7 +290,8 @@ }, "obsoleteBundlesBitmask": { "description": "The obsolete bundles bitmask.", - "type": "integer" + "type": "integer", + "format": "int32" }, "resourceAccess": { "description": "The resource access.", @@ -827,7 +840,8 @@ }, "maxChildResourceConsistencyJobLimit": { "description": "The next child resource consistency job limit.", - "type": "integer" + "type": "integer", + "format": "int32" } } }, diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Offer.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Offer.json index 7bc9a7d831c5..7441a772afb3 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Offer.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Offer.json @@ -37,6 +37,12 @@ } ], "responses": { + "default": { + "description": "Unexpected Error", + "schema": { + "$ref": "Subscriptions.json#/definitions/Error" + } + }, "200": { "description": "OK", "schema": { @@ -73,6 +79,12 @@ } ], "responses": { + "default": { + "description": "Unexpected Error", + "schema": { + "$ref": "Subscriptions.json#/definitions/Error" + } + }, "200": { "description": "OK", "schema": { @@ -112,6 +124,12 @@ } ], "responses": { + "default": { + "description": "Unexpected Error", + "schema": { + "$ref": "Subscriptions.json#/definitions/Error" + } + }, "200": { "description": "OK", "schema": { @@ -149,6 +167,12 @@ } ], "responses": { + "default": { + "description": "Unexpected Error", + "schema": { + "$ref": "Subscriptions.json#/definitions/Error" + } + }, "201": { "description": "Created", "schema": { @@ -189,6 +213,12 @@ } ], "responses": { + "default": { + "description": "Unexpected Error", + "schema": { + "$ref": "Subscriptions.json#/definitions/Error" + } + }, "200": { "description": "OK" }, @@ -225,6 +255,12 @@ } ], "responses": { + "default": { + "description": "Unexpected Error", + "schema": { + "$ref": "Subscriptions.json#/definitions/Error" + } + }, "200": { "description": "OK", "schema": { @@ -261,6 +297,12 @@ } ], "responses": { + "default": { + "description": "Unexpected Error", + "schema": { + "$ref": "Subscriptions.json#/definitions/Error" + } + }, "200": { "description": "OK", "schema": { @@ -300,6 +342,12 @@ } ], "responses": { + "default": { + "description": "Unexpected Error", + "schema": { + "$ref": "Subscriptions.json#/definitions/Error" + } + }, "200": { "description": "OK", "schema": { @@ -339,6 +387,12 @@ } ], "responses": { + "default": { + "description": "Unexpected Error", + "schema": { + "$ref": "Subscriptions.json#/definitions/Error" + } + }, "200": { "description": "OK", "schema": { @@ -392,11 +446,13 @@ }, "subscriptionCount": { "description": "Current subscription count.", - "type": "integer" + "type": "integer", + "format": "int32" }, "maxSubscriptionsPerAccount": { "description": "Maximum subscriptions per account.", - "type": "integer" + "type": "integer", + "format": "int32" }, "basePlanIds": { "description": "Identifiers of the base plans that become available to the tenant immediately when a tenant subscribes to the offer.", @@ -454,7 +510,8 @@ }, "maxAcquisitionCount": { "description": "Maximum number of instances that can be acquired by a single subscription. If not specified, the assumed value is 1.", - "type": "integer" + "type": "integer", + "format": "int32" } } }, @@ -489,7 +546,8 @@ }, "maxAcquisitionCount": { "description": "The maximum acquisition count by subscribers", - "type": "integer" + "type": "integer", + "format": "int32" } } }, diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/OfferDelegation.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/OfferDelegation.json index 5835126620fc..e80068449932 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/OfferDelegation.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/OfferDelegation.json @@ -43,6 +43,12 @@ } ], "responses": { + "default": { + "description": "Unexpected Error", + "schema": { + "$ref": "Subscriptions.json#/definitions/Error" + } + }, "200": { "description": "OK", "schema": { @@ -85,6 +91,12 @@ } ], "responses": { + "default": { + "description": "Unexpected Error", + "schema": { + "$ref": "Subscriptions.json#/definitions/Error" + } + }, "200": { "description": "OK", "schema": { @@ -125,6 +137,12 @@ } ], "responses": { + "default": { + "description": "Unexpected Error", + "schema": { + "$ref": "Subscriptions.json#/definitions/Error" + } + }, "201": { "description": "Created", "schema": { @@ -168,6 +186,12 @@ } ], "responses": { + "default": { + "description": "Unexpected Error", + "schema": { + "$ref": "Subscriptions.json#/definitions/Error" + } + }, "200": { "description": "OK" }, diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Plan.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Plan.json index b07d900df529..03fc51e8a24d 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Plan.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Plan.json @@ -37,6 +37,12 @@ } ], "responses": { + "default": { + "description": "Unexpected Error", + "schema": { + "$ref": "Subscriptions.json#/definitions/Error" + } + }, "200": { "description": "OK", "schema": { @@ -73,6 +79,12 @@ } ], "responses": { + "default": { + "description": "Unexpected Error", + "schema": { + "$ref": "Subscriptions.json#/definitions/Error" + } + }, "200": { "description": "OK", "schema": { @@ -112,6 +124,12 @@ } ], "responses": { + "default": { + "description": "Unexpected Error", + "schema": { + "$ref": "Subscriptions.json#/definitions/Error" + } + }, "200": { "description": "OK", "schema": { @@ -149,6 +167,12 @@ } ], "responses": { + "default": { + "description": "Unexpected Error", + "schema": { + "$ref": "Subscriptions.json#/definitions/Error" + } + }, "201": { "description": "Created", "schema": { @@ -189,6 +213,12 @@ } ], "responses": { + "default": { + "description": "Unexpected Error", + "schema": { + "$ref": "Subscriptions.json#/definitions/Error" + } + }, "200": { "description": "OK" }, @@ -225,6 +255,12 @@ } ], "responses": { + "default": { + "description": "Unexpected Error", + "schema": { + "$ref": "Subscriptions.json#/definitions/Error" + } + }, "200": { "description": "OK", "schema": { @@ -261,6 +297,12 @@ } ], "responses": { + "default": { + "description": "Unexpected Error", + "schema": { + "$ref": "Subscriptions.json#/definitions/Error" + } + }, "200": { "description": "OK", "schema": { @@ -317,7 +359,8 @@ }, "subscriptionCount": { "description": "Subscription count.", - "type": "integer" + "type": "integer", + "format": "int32" }, "skuIds": { "description": "SKU identifiers.", diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Quota.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Quota.json index d1e97460e3cb..b84e366919a5 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Quota.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Quota.json @@ -40,6 +40,12 @@ } ], "responses": { + "default": { + "description": "Unexpected Error", + "schema": { + "$ref": "Subscriptions.json#/definitions/Error" + } + }, "200": { "description": "OK", "schema": { @@ -79,6 +85,12 @@ } ], "responses": { + "default": { + "description": "Unexpected Error", + "schema": { + "$ref": "Subscriptions.json#/definitions/Error" + } + }, "200": { "description": "OK", "schema": { diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Subscriptions.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Subscriptions.json index 144731619848..ea4e02c98122 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Subscriptions.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Subscriptions.json @@ -34,6 +34,12 @@ } ], "responses": { + "default": { + "description": "Unexpected Error", + "schema": { + "$ref": "Subscriptions.json#/definitions/Error" + } + }, "200": { "description": "OK", "schema": { @@ -54,7 +60,7 @@ "tags": [ "Subscriptions" ], - "operationId": "UpdateEncryption", + "operationId": "Subscriptions_UpdateEncryption", "parameters": [ { "$ref": "#/parameters/SubscriptionIdParameter" @@ -64,6 +70,12 @@ } ], "responses": { + "default": { + "description": "Unexpected Error", + "schema": { + "$ref": "Subscriptions.json#/definitions/Error" + } + }, "200": { "description": "OK" } @@ -81,7 +93,7 @@ "tags": [ "Subscriptions" ], - "operationId": "RestoreData", + "operationId": "Subscriptions_RestoreData", "parameters": [ { "$ref": "#/parameters/SubscriptionIdParameter" @@ -91,6 +103,12 @@ } ], "responses": { + "default": { + "description": "Unexpected Error", + "schema": { + "$ref": "Subscriptions.json#/definitions/Error" + } + }, "200": { "description": "OK", "schema": { @@ -111,7 +129,7 @@ "tags": [ "Subscriptions" ], - "operationId": "CheckIdentityHealth", + "operationId": "Subscriptions_CheckIdentityHealth", "parameters": [ { "$ref": "#/parameters/SubscriptionIdParameter" @@ -121,6 +139,12 @@ } ], "responses": { + "default": { + "description": "Unexpected Error", + "schema": { + "$ref": "Subscriptions.json#/definitions/Error" + } + }, "200": { "description": "OK", "schema": { @@ -157,6 +181,12 @@ } ], "responses": { + "default": { + "description": "Unexpected Error", + "schema": { + "$ref": "Subscriptions.json#/definitions/Error" + } + }, "204": { "description": "No Content -- The subscriptions were successfully moved to the target delegated provider offer." }, @@ -194,6 +224,12 @@ } ], "responses": { + "default": { + "description": "Unexpected Error", + "schema": { + "$ref": "Subscriptions.json#/definitions/Error" + } + }, "204": { "description": "No Content -- The subscriptions can be moved to the target delegated provider offer." }, @@ -228,6 +264,12 @@ } ], "responses": { + "default": { + "description": "Unexpected Error", + "schema": { + "$ref": "Subscriptions.json#/definitions/Error" + } + }, "200": { "description": "OK", "schema": { @@ -265,6 +307,12 @@ } ], "responses": { + "default": { + "description": "Unexpected Error", + "schema": { + "$ref": "Subscriptions.json#/definitions/Error" + } + }, "200": { "description": "OK", "schema": { @@ -298,6 +346,12 @@ } ], "responses": { + "default": { + "description": "Unexpected Error", + "schema": { + "$ref": "Subscriptions.json#/definitions/Error" + } + }, "200": { "description": "OK", "schema": { @@ -332,6 +386,12 @@ } ], "responses": { + "default": { + "description": "Unexpected Error", + "schema": { + "$ref": "Subscriptions.json#/definitions/Error" + } + }, "201": { "description": "Created", "schema": { @@ -369,6 +429,12 @@ } ], "responses": { + "default": { + "description": "Unexpected Error", + "schema": { + "$ref": "Subscriptions.json#/definitions/Error" + } + }, "200": { "description": "OK" }, @@ -414,35 +480,78 @@ }, "x-ms-azure-resource": true }, + "Error": { + "type": "object", + "description": "Error response.", + "properties": { + "error": { + "$ref": "#/definitions/ErrorDefinition", + "description": "The error details." + } + } + }, + "ErrorDefinition": { + "type": "object", + "description": "Error definition.", + "properties": { + "code": { + "description": "Service specific error code which serves as the substatus for the HTTP error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "Description of the error.", + "type": "string", + "readOnly": true + }, + "details": { + "description": "Internal error details.", + "type": "array", + "items": { + "$ref": "#/definitions/ErrorDefinition" + }, + "readOnly": true + } + } + }, + "Display": { + "description": "Contains the localized display information for this particular operation / action.", + "properties": { + "provider": { + "description": "The localized friendly form of the resource provider name – it is expected to also include the publisher/company responsible. It should use Title Casing and begin with \"Microsoft\" for 1st party services. e.g. \"Microsoft Monitoring Insights\" or \"Microsoft Compute.\"", + "type": "string", + "readOnly": true + }, + "resource": { + "description": "The localized, friendly version of the resource type related to this action or operation; the resource type should match the public documentation for the resource provider.", + "type": "string", + "readOnly": true + }, + "operation": { + "description": "The localized, friendly name for the operation. Use the name as it will displayed to the user.", + "type": "string", + "readOnly": true + }, + "description": { + "description": "The localized, friendly description for the operation. The description will be displayed to the user. It should be thorough and concise for used in both tooltips and detailed views.", + "type": "string", + "readOnly": true + } + } + }, "Operation": { "description": "Supported REST operation.", "type": "object", "properties": { "display": { "description": "Display information for the operation.", - "type": "object", - "properties": { - "description": { - "description": "Description for the operation.", - "type": "string", - "readOnly": true - }, - "operation": { - "description": "Display name of the operation.", - "type": "string", - "readOnly": true - }, - "provider": { - "description": "Resource provider display name.", - "type": "string", - "readOnly": true - }, - "resource": { - "description": "Resource type display name related to the operation.", - "type": "string", - "readOnly": true - } - } + "$ref": "#/definitions/Display", + "readOnly": true + }, + "isDataAction": { + "description": "Whether the operation applies to data-plane. This is \"true\" for data-plane operations and \"false\" for ARM/control-plane operations.", + "type": "boolean", + "readOnly": true }, "name": { "description": "Name of the operation being performed on an object.", @@ -811,7 +920,8 @@ "description": "Directory tenant identifier.", "type": "string" } - } + }, + "x-ms-azure-resource": true }, "SubscriptionList": { "description": "List of subscriptions.", @@ -990,7 +1100,8 @@ }, "count": { "description": "Number of measurements for metric sample period.", - "type": "integer" + "type": "integer", + "format": "int32" }, "properties": { "x-ms-client-name": "extendedProperties", diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/AcquiredPlan/Create.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/AcquiredPlan/Create.json index 09af66ca6cf8..faf9a37f4911 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/AcquiredPlan/Create.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/AcquiredPlan/Create.json @@ -6,11 +6,9 @@ "targetSubscriptionId": "8158498d-27b1-4ccf-9aa1-de0f925731e6", "planAcquisitionId": "718c7f7c-4868-479a-98ce-5caaa8f158c8", "acquiredPlanDefinition": { - "properties": { - "acquisitionId": "718c7f7c-4868-479a-98ce-5caaa8f158c8", - "id": "/subscriptions/8158498d-27b1-4ccf-9aa1-de0f925731e6/providers/Microsoft.Subscriptions/subscriptions/8158498d-27b1-4ccf-9aa1-de0f925731e6/acquiredPlans/718c7f7c-4868-479a-98ce-5caaa8f158c8", - "planId": "/subscriptions/8158498d-27b1-4ccf-9aa1-de0f925731e6/providers/Microsoft.Subscriptions/plans/balaplan" - } + "acquisitionId": "718c7f7c-4868-479a-98ce-5caaa8f158c8", + "id": "/subscriptions/8158498d-27b1-4ccf-9aa1-de0f925731e6/providers/Microsoft.Subscriptions/subscriptions/8158498d-27b1-4ccf-9aa1-de0f925731e6/acquiredPlans/718c7f7c-4868-479a-98ce-5caaa8f158c8", + "planId": "/subscriptions/8158498d-27b1-4ccf-9aa1-de0f925731e6/providers/Microsoft.Subscriptions/plans/balaplan" } }, "responses": { diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/DirectoryTenant/Create.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/DirectoryTenant/Create.json index 89ba4e050b7c..3bc372838c80 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/DirectoryTenant/Create.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/DirectoryTenant/Create.json @@ -4,7 +4,11 @@ "location": "local", "api-version": "2015-11-01", "tenant": "azurestackci05.onmicrosoft.in", - "tenantDefinition": "eb90516e-65d7-4bf6-8537-8322e9172832", + "tenantDefinition": { + "properties": { + "tenantId": "eb90516e-65d7-4bf6-8537-8322e9172832" + } + }, "resourceGroupName": "system.local" }, "responses": { diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Offer/Link.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Offer/Link.json index ab0c8034d565..e86bc763c83f 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Offer/Link.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Offer/Link.json @@ -6,10 +6,8 @@ "offer": "sampleoffer1", "resourceGroupName": "RG1", "planLink": { - "properties": { - "planName": "sampleplan1", - "planLinkType": "Addon" - } + "planName": "sampleplan1", + "planLinkType": "Addon" } }, "responses": { diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Offer/Unlink.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Offer/Unlink.json index 65bb4749f2b6..3a3de0b91bfc 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Offer/Unlink.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Offer/Unlink.json @@ -6,10 +6,8 @@ "offer": "sampleoffer1", "resourceGroupName": "RG1", "planLink": { - "properties": { - "planName": "SamplePlan", - "planLinkType": "Addon" - } + "planName": "SamplePlan", + "planLinkType": "Addon" } }, "responses": { diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/OfferDelegation/Create.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/OfferDelegation/Create.json index 7efb2b09b1e1..5ad01f1cee1e 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/OfferDelegation/Create.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/OfferDelegation/Create.json @@ -6,7 +6,11 @@ "resourceGroupName": "cnur9852subscrrg374", "offer": "cnur9852tenantoffer374", "offerDelegationName": "testOfferDelegation", - "offerDelegationDefinition": "newDelegationName" + "offerDelegationDefinition": { + "properties": { + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23" + } + } }, "responses": { "200": { diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/CheckNameAvailability.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/CheckNameAvailability.json index 418132807c68..3017713eb279 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/CheckNameAvailability.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/CheckNameAvailability.json @@ -5,10 +5,8 @@ "api-version": "2015-11-01", "name": "subname", "nameAvailabilityDefinition": { - "properties": { - "name": "subname", - "resourceType": "type" - } + "name": "subname", + "resourceType": "type" } }, "responses": { diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/Create.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/Create.json index f41b199e3eeb..7399b850fb03 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/Create.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/Create.json @@ -6,15 +6,13 @@ "api-version": "2015-11-01", "subscription": "test", "subscriptionDefinition": { - "properties": { - "delegatedProviderSubscriptionId": "d16dfcf0-44cc-4498-9937-08b94159d27b", - "displayName": "Test Subscription", - "id": "/subscriptions/d16dfcf0-44cc-4498-9937-08b94159d27b/providers/Microsoft.Subscriptions.Admin/subscriptions/c79389af-4480-48cc-8fa2-ee8ced8e843d", - "offerId": "/subscriptions/d16dfcf0-44cc-4498-9937-08b94159d27b/resourceGroups/planrg/providers/Microsoft.Subscriptions.Admin/offers/testoffer", - "owner": "tenantadmin1@msazurestack.onmicrosoft.com", - "routingResourceManagerType": "Default", - "state": "Enabled" - } + "delegatedProviderSubscriptionId": "d16dfcf0-44cc-4498-9937-08b94159d27b", + "displayName": "Test Subscription", + "id": "/subscriptions/d16dfcf0-44cc-4498-9937-08b94159d27b/providers/Microsoft.Subscriptions.Admin/subscriptions/c79389af-4480-48cc-8fa2-ee8ced8e843d", + "offerId": "/subscriptions/d16dfcf0-44cc-4498-9937-08b94159d27b/resourceGroups/planrg/providers/Microsoft.Subscriptions.Admin/offers/testoffer", + "owner": "tenantadmin1@msazurestack.onmicrosoft.com", + "routingResourceManagerType": "Default", + "state": "Enabled" } }, "responses": { diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/MoveSubscriptionsToDefaultProvider.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/MoveSubscriptionsToDefaultProvider.json index 5e09aaad2bc0..6a37a44de4d8 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/MoveSubscriptionsToDefaultProvider.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/MoveSubscriptionsToDefaultProvider.json @@ -3,13 +3,11 @@ "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", "api-version": "2015-11-01", "moveSubscriptionsDefinition": { - "properties": { - "targetDelegatedProviderOffer": null, - "resources": [ - "/subscriptions/8158498d-27b1-4ccf-9aa1-de0f925731e6/providers/Microsoft.Subscriptions.Admin/subscriptions/5144634d-7e4d-443b-a304-d27e44220fc6", - "/subscriptions/8158498d-27b1-4ccf-9aa1-de0f925731e6/providers/Microsoft.Subscriptions.Admin/subscriptions/55049d1c-9727-4f79-95b6-50d1f3ee2b28" - ] - } + "targetDelegatedProviderOffer": null, + "resources": [ + "/subscriptions/8158498d-27b1-4ccf-9aa1-de0f925731e6/providers/Microsoft.Subscriptions.Admin/subscriptions/5144634d-7e4d-443b-a304-d27e44220fc6", + "/subscriptions/8158498d-27b1-4ccf-9aa1-de0f925731e6/providers/Microsoft.Subscriptions.Admin/subscriptions/55049d1c-9727-4f79-95b6-50d1f3ee2b28" + ] } }, "responses": { diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/MoveSubscriptionsToDelegatedProvider.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/MoveSubscriptionsToDelegatedProvider.json index e3f47f51a33a..9e350aae7bed 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/MoveSubscriptionsToDelegatedProvider.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/MoveSubscriptionsToDelegatedProvider.json @@ -3,13 +3,11 @@ "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", "api-version": "2015-11-01", "moveSubscriptionsDefinition": { - "properties": { - "targetDelegatedProviderOffer": "/subscriptions/36a6bf33-6df4-4acd-a30e-7b92c1c7b322/providers/Microsoft.Subscriptions.Admin/delegatedProviders/8bb14c82-7b09-40f4-ade3-e5c71308cfcd/offers/del1", - "resources": [ - "/subscriptions/8158498d-27b1-4ccf-9aa1-de0f925731e6/providers/Microsoft.Subscriptions.Admin/subscriptions/5144634d-7e4d-443b-a304-d27e44220fc6", - "/subscriptions/8158498d-27b1-4ccf-9aa1-de0f925731e6/providers/Microsoft.Subscriptions.Admin/subscriptions/55049d1c-9727-4f79-95b6-50d1f3ee2b28" - ] - } + "targetDelegatedProviderOffer": "/subscriptions/36a6bf33-6df4-4acd-a30e-7b92c1c7b322/providers/Microsoft.Subscriptions.Admin/delegatedProviders/8bb14c82-7b09-40f4-ade3-e5c71308cfcd/offers/del1", + "resources": [ + "/subscriptions/8158498d-27b1-4ccf-9aa1-de0f925731e6/providers/Microsoft.Subscriptions.Admin/subscriptions/5144634d-7e4d-443b-a304-d27e44220fc6", + "/subscriptions/8158498d-27b1-4ccf-9aa1-de0f925731e6/providers/Microsoft.Subscriptions.Admin/subscriptions/55049d1c-9727-4f79-95b6-50d1f3ee2b28" + ] } }, "responses": { diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/ValidateMoveSubscriptionsToDefaultProvider.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/ValidateMoveSubscriptionsToDefaultProvider.json index 5e09aaad2bc0..6a37a44de4d8 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/ValidateMoveSubscriptionsToDefaultProvider.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/ValidateMoveSubscriptionsToDefaultProvider.json @@ -3,13 +3,11 @@ "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", "api-version": "2015-11-01", "moveSubscriptionsDefinition": { - "properties": { - "targetDelegatedProviderOffer": null, - "resources": [ - "/subscriptions/8158498d-27b1-4ccf-9aa1-de0f925731e6/providers/Microsoft.Subscriptions.Admin/subscriptions/5144634d-7e4d-443b-a304-d27e44220fc6", - "/subscriptions/8158498d-27b1-4ccf-9aa1-de0f925731e6/providers/Microsoft.Subscriptions.Admin/subscriptions/55049d1c-9727-4f79-95b6-50d1f3ee2b28" - ] - } + "targetDelegatedProviderOffer": null, + "resources": [ + "/subscriptions/8158498d-27b1-4ccf-9aa1-de0f925731e6/providers/Microsoft.Subscriptions.Admin/subscriptions/5144634d-7e4d-443b-a304-d27e44220fc6", + "/subscriptions/8158498d-27b1-4ccf-9aa1-de0f925731e6/providers/Microsoft.Subscriptions.Admin/subscriptions/55049d1c-9727-4f79-95b6-50d1f3ee2b28" + ] } }, "responses": { diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/ValidateMoveSubscriptionsToDelegatedProvider.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/ValidateMoveSubscriptionsToDelegatedProvider.json index e3f47f51a33a..9e350aae7bed 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/ValidateMoveSubscriptionsToDelegatedProvider.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/ValidateMoveSubscriptionsToDelegatedProvider.json @@ -3,13 +3,11 @@ "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", "api-version": "2015-11-01", "moveSubscriptionsDefinition": { - "properties": { - "targetDelegatedProviderOffer": "/subscriptions/36a6bf33-6df4-4acd-a30e-7b92c1c7b322/providers/Microsoft.Subscriptions.Admin/delegatedProviders/8bb14c82-7b09-40f4-ade3-e5c71308cfcd/offers/del1", - "resources": [ - "/subscriptions/8158498d-27b1-4ccf-9aa1-de0f925731e6/providers/Microsoft.Subscriptions.Admin/subscriptions/5144634d-7e4d-443b-a304-d27e44220fc6", - "/subscriptions/8158498d-27b1-4ccf-9aa1-de0f925731e6/providers/Microsoft.Subscriptions.Admin/subscriptions/55049d1c-9727-4f79-95b6-50d1f3ee2b28" - ] - } + "targetDelegatedProviderOffer": "/subscriptions/36a6bf33-6df4-4acd-a30e-7b92c1c7b322/providers/Microsoft.Subscriptions.Admin/delegatedProviders/8bb14c82-7b09-40f4-ade3-e5c71308cfcd/offers/del1", + "resources": [ + "/subscriptions/8158498d-27b1-4ccf-9aa1-de0f925731e6/providers/Microsoft.Subscriptions.Admin/subscriptions/5144634d-7e4d-443b-a304-d27e44220fc6", + "/subscriptions/8158498d-27b1-4ccf-9aa1-de0f925731e6/providers/Microsoft.Subscriptions.Admin/subscriptions/55049d1c-9727-4f79-95b6-50d1f3ee2b28" + ] } }, "responses": { diff --git a/specification/azsadmin/resource-manager/subscriptions/readme.md b/specification/azsadmin/resource-manager/subscriptions/readme.md index 4909aff7c0fd..2a61441dfc61 100644 --- a/specification/azsadmin/resource-manager/subscriptions/readme.md +++ b/specification/azsadmin/resource-manager/subscriptions/readme.md @@ -2,7 +2,8 @@ > see https://aka.ms/autorest -This is the AutoRest configuration file for Subscriptions Admin. +This is the AutoRest configuration file for Subscriptions Admin. We do not ship any language SDKs for AzureStack Administrator APIs and these APIs do not exist in azure. + --- ## Getting Started @@ -105,12 +106,6 @@ csharp: AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. -This block is updated by an automatic script. Edits may be lost! - -``` yaml -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../../profiles/readme.md - # all the input files across all versions input-file: - $(this-folder)/Microsoft.Subscriptions.Admin/preview/2015-11-01/Subscriptions.json diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoAttachedDatabaseConfigurationsCreateOrUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoAttachedDatabaseConfigurationsCreateOrUpdate.json new file mode 100644 index 000000000000..b61d98ac4c88 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoAttachedDatabaseConfigurationsCreateOrUpdate.json @@ -0,0 +1,141 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "attachedDatabaseConfigurationName": "attachedDatabaseConfigurations1", + "api-version": "2021-01-01", + "parameters": { + "location": "westus", + "properties": { + "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterLeader", + "databaseName": "kustodatabase", + "defaultPrincipalsModificationKind": "Union", + "tableLevelSharingProperties": { + "tablesToInclude": [ + "Table1" + ], + "tablesToExclude": [ + "Table2" + ], + "externalTablesToInclude": [ + "ExternalTable1" + ], + "externalTablesToExclude": [ + "ExternalTable2" + ], + "materializedViewsToInclude": [ + "MaterializedViewTable1" + ], + "materializedViewsToExclude": [ + "MaterializedViewTable2" + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/attachedDatabaseConfigurations/attachedDatabaseConfigurations1", + "name": "KustoClusterRPTest4/attachedDatabaseConfigurations1", + "type": "Microsoft.Kusto/Clusters/AttachedDatabaseConfigurations", + "location": "westus", + "properties": { + "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterLeader", + "databaseName": "db1", + "defaultPrincipalsModificationKind": "Union", + "tableLevelSharingProperties": { + "tablesToInclude": [ + "Table1" + ], + "tablesToExclude": [ + "Table2" + ], + "externalTablesToInclude": [ + "ExternalTable1" + ], + "externalTablesToExclude": [ + "ExternalTable2" + ], + "materializedViewsToInclude": [ + "MaterializedViewTable1" + ], + "materializedViewsToExclude": [ + "MaterializedViewTable2" + ] + }, + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/attachedDatabaseConfigurations/attachedDatabaseConfigurations1", + "name": "KustoClusterRPTest4/attachedDatabaseConfigurations1", + "type": "Microsoft.Kusto/Clusters/AttachedDatabaseConfigurations", + "location": "westus", + "properties": { + "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterLeader", + "databaseName": "db1", + "defaultPrincipalsModificationKind": "Union", + "tableLevelSharingProperties": { + "tablesToInclude": [ + "Table1" + ], + "tablesToExclude": [ + "Table2" + ], + "externalTablesToInclude": [ + "ExternalTable1" + ], + "externalTablesToExclude": [ + "ExternalTable2" + ], + "materializedViewsToInclude": [ + "MaterializedViewTable1" + ], + "materializedViewsToExclude": [ + "MaterializedViewTable2" + ] + }, + "provisioningState": "Creating" + } + } + }, + "202": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/attachedDatabaseConfigurations/attachedDatabaseConfigurations1", + "name": "KustoClusterRPTest4/attachedDatabaseConfigurations1", + "type": "Microsoft.Kusto/Clusters/AttachedDatabaseConfigurations", + "location": "westus", + "properties": { + "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterLeader", + "databaseName": "db1", + "defaultPrincipalsModificationKind": "Union", + "tableLevelSharingProperties": { + "tablesToInclude": [ + "Table1" + ], + "tablesToExclude": [ + "Table2" + ], + "externalTablesToInclude": [ + "ExternalTable1" + ], + "externalTablesToExclude": [ + "ExternalTable2" + ], + "materializedViewsToInclude": [ + "MaterializedViewTable1" + ], + "materializedViewsToExclude": [ + "MaterializedViewTable2" + ] + }, + "provisioningState": "Creating" + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoAttachedDatabaseConfigurationsDelete.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoAttachedDatabaseConfigurationsDelete.json new file mode 100644 index 000000000000..1dcf499b34f4 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoAttachedDatabaseConfigurationsDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "attachedDatabaseConfigurationName": "attachedDatabaseConfigurations1", + "api-version": "2021-01-01" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoAttachedDatabaseConfigurationsGet.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoAttachedDatabaseConfigurationsGet.json new file mode 100644 index 000000000000..c29f359ec919 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoAttachedDatabaseConfigurationsGet.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "attachedDatabaseConfigurationName": "attachedDatabaseConfigurations1", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/AttachedDatabaseConfigurations/attachedDatabaseConfigurations1", + "name": "KustoClusterRPTest4/attachedDatabaseConfigurations1", + "type": "Microsoft.Kusto/Clusters/AttachedDatabaseConfigurations", + "location": "westus", + "properties": { + "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4", + "databaseName": "*", + "defaultPrincipalsModificationKind": "Union", + "tableLevelSharingProperties": { + "tablesToInclude": [ + "Table1" + ], + "tablesToExclude": [ + "Table2" + ], + "externalTablesToInclude": [ + "ExternalTable1" + ], + "externalTablesToExclude": [ + "ExternalTable2" + ], + "materializedViewsToInclude": [ + "MaterializedViewTable1" + ], + "materializedViewsToExclude": [ + "MaterializedViewTable2" + ] + }, + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoAttachedDatabaseConfigurationsListByCluster.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoAttachedDatabaseConfigurationsListByCluster.json new file mode 100644 index 000000000000..a8aa3ab033c7 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoAttachedDatabaseConfigurationsListByCluster.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/AttachedDatabaseConfigurations/KustoDatabase8", + "name": "KustoClusterRPTest4/KustoDatabase8", + "type": "Microsoft.Kusto/Clusters/AttachedDatabaseConfigurations", + "location": "westus", + "properties": { + "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterLeader", + "databaseName": "db1", + "defaultPrincipalsModificationKind": "Union", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/AttachedDatabaseConfigurations/KustoDatabase9", + "name": "KustoClusterRPTest4/KustoDatabase9", + "type": "Microsoft.Kusto/Clusters/AttachedDatabaseConfigurations", + "location": "westus", + "properties": { + "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterLeader", + "databaseName": "db1", + "defaultPrincipalsModificationKind": "Union", + "tableLevelSharingProperties": { + "tablesToInclude": [ + "Table1" + ], + "tablesToExclude": [ + "Table2" + ], + "externalTablesToInclude": [ + "ExternalTable1" + ], + "externalTablesToExclude": [ + "ExternalTable2" + ], + "materializedViewsToInclude": [ + "MaterializedViewTable1" + ], + "materializedViewsToExclude": [ + "MaterializedViewTable2" + ] + }, + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClusterAddLanguageExtensions.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClusterAddLanguageExtensions.json new file mode 100644 index 000000000000..1a98a6c15a14 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClusterAddLanguageExtensions.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "api-version": "2021-01-01", + "languageExtensionsToAdd": { + "value": [ + { + "languageExtensionName": "PYTHON" + }, + { + "languageExtensionName": "R" + } + ] + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClusterDetachFollowerDatabases.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClusterDetachFollowerDatabases.json new file mode 100644 index 000000000000..ed6ab4256957 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClusterDetachFollowerDatabases.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "api-version": "2021-01-01", + "followerDatabaseToRemove": { + "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/clusters/leader4", + "attachedDatabaseConfigurationName": "myAttachedDatabaseConfiguration" + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClusterListFollowerDatabases.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClusterListFollowerDatabases.json new file mode 100644 index 000000000000..c6f3f3514d23 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClusterListFollowerDatabases.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "attachedDatabaseConfigurationName": "attachedDbConfiguration", + "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/clusters/follower1", + "databaseName": "*" + }, + { + "attachedDatabaseConfigurationName": "attachedDbConfiguration2", + "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/clusters/follower4", + "databaseName": "db1" + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClusterListLanguageExtensions.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClusterListLanguageExtensions.json new file mode 100644 index 000000000000..65dce448ceae --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClusterListLanguageExtensions.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "languageExtensionName": "PYTHON" + }, + { + "languageExtensionName": "R" + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClusterPrincipalAssignmentsCheckNameAvailability.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClusterPrincipalAssignmentsCheckNameAvailability.json new file mode 100644 index 000000000000..4b7b0e60934b --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClusterPrincipalAssignmentsCheckNameAvailability.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "principalAssignmentName": { + "name": "kustoprincipal1", + "type": "Microsoft.Kusto/clusters/principalAssignments" + }, + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "name": "kustoprincipal1", + "nameAvailable": false, + "message": "Name 'kustoprincipal1' is already taken. Please specify a different name" + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClusterPrincipalAssignmentsCreateOrUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClusterPrincipalAssignmentsCreateOrUpdate.json new file mode 100644 index 000000000000..7da3f78af218 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClusterPrincipalAssignmentsCreateOrUpdate.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "principalAssignmentName": "kustoprincipal1", + "api-version": "2021-01-01", + "parameters": { + "properties": { + "role": "AllDatabasesAdmin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/PrincipalAssignments/kustoprincipal1", + "name": "kustoclusterrptest4/kustoprincipal1", + "type": "Microsoft.Kusto/Clusters/PrincipalAssignments", + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123", + "tenantName": "tenantName", + "principalName": "TestApp", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/PrincipalAssignments/kustoprincipal1", + "name": "kustoclusterrptest4/kustoprincipal1", + "type": "Microsoft.Kusto/Clusters/PrincipalAssignments", + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123", + "tenantName": "tenantName", + "principalName": "TestApp", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClusterPrincipalAssignmentsDelete.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClusterPrincipalAssignmentsDelete.json new file mode 100644 index 000000000000..cef58f6587a0 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClusterPrincipalAssignmentsDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "principalAssignmentName": "kustoprincipal1", + "api-version": "2021-01-01" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClusterPrincipalAssignmentsGet.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClusterPrincipalAssignmentsGet.json new file mode 100644 index 000000000000..89ddc92f8807 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClusterPrincipalAssignmentsGet.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "principalAssignmentName": "kustoprincipal1", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/PrincipalAssignments/kustoprincipal1", + "name": "kustoclusterrptest4/kustoprincipal1", + "type": "Microsoft.Kusto/Clusters/PrincipalAssignments", + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123", + "tenantName": "tenantName", + "principalName": "TestApp", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClusterPrincipalAssignmentsList.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClusterPrincipalAssignmentsList.json new file mode 100644 index 000000000000..653625bbbdc5 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClusterPrincipalAssignmentsList.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "databaseName": "Kustodatabase8", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1", + "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal1", + "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments", + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123", + "tenantName": "tenantName", + "principalName": "TestApp", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1", + "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal2", + "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments", + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123", + "tenantName": "tenantName", + "principalName": "TestApp", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClusterRemoveLanguageExtensions.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClusterRemoveLanguageExtensions.json new file mode 100644 index 000000000000..a39763ab5a51 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClusterRemoveLanguageExtensions.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "api-version": "2021-01-01", + "languageExtensionsToRemove": { + "value": [ + { + "languageExtensionName": "PYTHON" + }, + { + "languageExtensionName": "R" + } + ] + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClustersCheckNameAvailability.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClustersCheckNameAvailability.json new file mode 100644 index 000000000000..44f208718f3d --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClustersCheckNameAvailability.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "api-version": "2021-01-01", + "location": "westus", + "clusterName": { + "name": "kustoclusterrptest4", + "type": "Microsoft.Kusto/clusters" + } + }, + "responses": { + "200": { + "body": { + "name": "kuskusprod", + "nameAvailable": false, + "message": "Name 'kuskusprod' is already taken. Please specify a different name" + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClustersCreateOrUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClustersCreateOrUpdate.json new file mode 100644 index 000000000000..0fc47abfdd8c --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClustersCreateOrUpdate.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "api-version": "2021-01-01", + "parameters": { + "location": "westus", + "sku": { + "name": "Standard_L8s", + "capacity": 2, + "tier": "Standard" + }, + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "enableStreamingIngest": true, + "enablePurge": true, + "enableDoubleEncryption": false + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4", + "name": "KustoClusterRPTest4", + "type": "Microsoft.Kusto/Clusters", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "enableDiskEncryption": false, + "enableStreamingIngest": true, + "enablePurge": true, + "enableDoubleEncryption": false, + "keyVaultProperties": { + "keyVaultUri": "https://dummy.keyvault.com", + "keyName": "keyName", + "keyVersion": "keyVersion" + }, + "engineType": "V2" + }, + "sku": { + "name": "Standard_L8s", + "capacity": 2, + "tier": "Standard" + }, + "identity": { + "type": "SystemAssigned", + "tenantId": "b932977f-6277-4ab7-a2cd-5bd21f07aaf4", + "principalId": "faabad1f-4876-463c-af9d-6ba2d2d2394c", + "userAssignedIdentities": {} + }, + "etag": "abcd" + } + }, + "201": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4", + "name": "KustoClusterRPTest4", + "type": "Microsoft.Kusto/Clusters", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "enableDiskEncryption": false, + "enableStreamingIngest": true, + "enablePurge": true, + "enableDoubleEncryption": false, + "keyVaultProperties": { + "keyVaultUri": "https://dummy.keyvault.com", + "keyName": "keyName", + "keyVersion": "keyVersion" + }, + "engineType": "V2" + }, + "sku": { + "name": "Standard_L8s", + "capacity": 2, + "tier": "Standard" + }, + "identity": { + "type": "SystemAssigned", + "tenantId": "b932977f-6277-4ab7-a2cd-5bd21f07aaf4", + "principalId": "faabad1f-4876-463c-af9d-6ba2d2d2394c", + "userAssignedIdentities": {} + }, + "etag": "abcd123" + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClustersDelete.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClustersDelete.json new file mode 100644 index 000000000000..9a8ef60227a4 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClustersDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "api-version": "2021-01-01" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClustersDiagnoseVirtualNetwork.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClustersDiagnoseVirtualNetwork.json new file mode 100644 index 000000000000..035a6ed45a64 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClustersDiagnoseVirtualNetwork.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "findings": [ + "Outbound dependency 'Storage:443' might not be satisfied (Outbound)" + ] + } + }, + "202": {} + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClustersGet.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClustersGet.json new file mode 100644 index 000000000000..6fec1ce678d6 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClustersGet.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4", + "name": "KustoClusterRPTest4", + "type": "Microsoft.Kusto/Clusters", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "enableDiskEncryption": false, + "enableStreamingIngest": true, + "enablePurge": false, + "keyVaultProperties": { + "keyVaultUri": "https://dummy.keyvault.com", + "keyName": "keyName", + "keyVersion": "keyVersion" + }, + "engineType": "V3" + }, + "sku": { + "name": "Standard_L8s", + "capacity": 2, + "tier": "Standard" + }, + "identity": { + "type": "SystemAssigned", + "tenantId": "b932977f-6277-4ab7-a2cd-5bd21f07aaf4", + "principalId": "faabad1f-4876-463c-af9d-6ba2d2d2394c", + "userAssignedIdentities": {} + }, + "etag": "abcd123" + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClustersList.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClustersList.json new file mode 100644 index 000000000000..d678a14f63c3 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClustersList.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4", + "name": "KustoClusterRPTest4", + "type": "Microsoft.Kusto/Clusters", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "enableDiskEncryption": false, + "enableStreamingIngest": true, + "keyVaultProperties": { + "keyVaultUri": "https://dummy.keyvault.com", + "keyName": "keyName", + "keyVersion": "keyVersion" + }, + "engineType": "V3" + }, + "sku": { + "name": "Standard_L8s", + "capacity": 2, + "tier": "Standard" + }, + "etag": "abcd123" + }, + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest3", + "name": "KustoClusterRPTest3", + "type": "Microsoft.Kusto/Clusters", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "enableDiskEncryption": true, + "enableStreamingIngest": true, + "engineType": "V2" + }, + "sku": { + "name": "Standard_L8s", + "capacity": 2, + "tier": "Standard" + }, + "etag": "abcd123" + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClustersListByResourceGroup.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClustersListByResourceGroup.json new file mode 100644 index 000000000000..c6458b49ecbb --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClustersListByResourceGroup.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4", + "name": "KustoClusterRPTest4", + "type": "Microsoft.Kusto/Clusters", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "enableDiskEncryption": false, + "enableStreamingIngest": true, + "keyVaultProperties": { + "keyVaultUri": "https://dummy.keyvault.com", + "keyName": "keyName", + "keyVersion": "keyVersion" + }, + "engineType": "V2" + }, + "sku": { + "name": "Standard_L8s", + "capacity": 2, + "tier": "Standard" + }, + "etag": "abcd123" + }, + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest3", + "name": "KustoClusterRPTest3", + "type": "Microsoft.Kusto/Clusters", + "location": "westus", + "properties": { + "enableDiskEncryption": true, + "enableStreamingIngest": true, + "engineType": "V3", + "provisioningState": "Succeeded" + }, + "sku": { + "name": "Standard_L8s", + "capacity": 2, + "tier": "Standard" + }, + "etag": "abcd123" + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClustersListResourceSkus.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClustersListResourceSkus.json new file mode 100644 index 000000000000..e1b679b3ceef --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClustersListResourceSkus.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "clusters", + "sku": { + "name": "Standard_D13_v2", + "tier": "Standard" + }, + "capacity": { + "minimum": 2, + "maximum": 100, + "default": 2, + "scaleType": "automatic" + } + }, + { + "resourceType": "clusters", + "sku": { + "name": "Standard_D14_v2", + "tier": "Standard" + }, + "capacity": { + "minimum": 2, + "maximum": 100, + "default": 2, + "scaleType": "automatic" + } + }, + { + "resourceType": "clusters", + "sku": { + "name": "Standard_L8s", + "tier": "Standard" + }, + "capacity": { + "minimum": 2, + "maximum": 100, + "default": 2, + "scaleType": "automatic" + } + }, + { + "resourceType": "clusters", + "sku": { + "name": "Standard_L16s", + "tier": "Standard" + }, + "capacity": { + "minimum": 2, + "maximum": 100, + "default": 2, + "scaleType": "automatic" + } + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClustersListSkus.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClustersListSkus.json new file mode 100644 index 000000000000..8d436ea814b1 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClustersListSkus.json @@ -0,0 +1,103 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Standard_D13_v2", + "tier": "Standard", + "locations": [ + "West US", + "West Europe" + ], + "locationInfo": [ + { + "location": "West US", + "zones": [ + "1", + "2", + "3" + ] + }, + { + "location": "West Europe", + "zones": [] + } + ] + }, + { + "name": "Standard_D14_v2", + "tier": "Standard", + "locations": [ + "West US", + "West Europe" + ], + "locationInfo": [ + { + "location": "West US", + "zones": [ + "1", + "2", + "3" + ] + }, + { + "location": "West Europe", + "zones": [] + } + ] + }, + { + "name": "L8", + "tier": "Standard", + "locations": [ + "West US", + "West Europe" + ], + "locationInfo": [ + { + "location": "West US", + "zones": [ + "1", + "2", + "3" + ] + }, + { + "location": "West Europe", + "zones": [] + } + ] + }, + { + "name": "L16", + "tier": "Standard", + "locations": [ + "West US", + "West Europe" + ], + "locationInfo": [ + { + "location": "West US", + "zones": [ + "1", + "2", + "3" + ] + }, + { + "location": "West Europe", + "zones": [] + } + ] + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClustersStart.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClustersStart.json new file mode 100644 index 000000000000..a9aa10a71f03 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClustersStart.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "api-version": "2021-01-01" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClustersStop.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClustersStop.json new file mode 100644 index 000000000000..a9aa10a71f03 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClustersStop.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "api-version": "2021-01-01" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClustersUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClustersUpdate.json new file mode 100644 index 000000000000..9b00a82d64f1 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoClustersUpdate.json @@ -0,0 +1,118 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "api-version": "2021-01-01", + "If-Match": "*", + "parameters": { + "location": "westus" + }, + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "enableStreamingIngest": true, + "enablePurge": true, + "keyVaultProperties": { + "keyVaultUri": "https://dummy.keyvault.com", + "keyName": "keyName", + "keyVersion": "keyVersion" + }, + "engineType": "V2" + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4", + "name": "KustoClusterRPTest4", + "type": "Microsoft.Kusto/Clusters", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "enableDiskEncryption": false, + "enableStreamingIngest": true, + "enablePurge": true, + "keyVaultProperties": { + "keyVaultUri": "https://dummy.keyvault.com", + "keyName": "keyName", + "keyVersion": "keyVersion" + }, + "engineType": "V2" + }, + "sku": { + "name": "Standard_L8s", + "capacity": 2, + "tier": "Standard" + }, + "identity": { + "type": "SystemAssigned", + "tenantId": "b932977f-6277-4ab7-a2cd-5bd21f07aaf4", + "principalId": "faabad1f-4876-463c-af9d-6ba2d2d2394c", + "userAssignedIdentities": {} + }, + "etag": "abcd123" + } + }, + "201": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4", + "name": "KustoClusterRPTest4", + "type": "Microsoft.Kusto/Clusters", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "enableDiskEncryption": false, + "enableStreamingIngest": true, + "enablePurge": true, + "keyVaultProperties": { + "keyVaultUri": "https://dummy.keyvault.com", + "keyName": "keyName", + "keyVersion": "keyVersion" + }, + "engineType": "V2" + }, + "sku": { + "name": "Standard_L8s", + "capacity": 2, + "tier": "Standard" + }, + "identity": { + "type": "SystemAssigned", + "tenantId": "b932977f-6277-4ab7-a2cd-5bd21f07aaf4", + "principalId": "faabad1f-4876-463c-af9d-6ba2d2d2394c", + "userAssignedIdentities": {} + }, + "etag": "abcd123" + } + }, + "202": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4", + "name": "KustoClusterRPTest4", + "type": "Microsoft.Kusto/Clusters", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "enableDiskEncryption": false, + "enableStreamingIngest": true, + "enablePurge": true, + "engineType": "V2" + }, + "sku": { + "name": "Standard_L8s", + "capacity": 2, + "tier": "Standard" + }, + "identity": { + "type": "SystemAssigned", + "tenantId": "b932977f-6277-4ab7-a2cd-5bd21f07aaf4", + "principalId": "faabad1f-4876-463c-af9d-6ba2d2d2394c", + "userAssignedIdentities": {} + }, + "etag": "abcd123" + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDataConnectionValidationAsync.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDataConnectionValidationAsync.json new file mode 100644 index 000000000000..aaffbd065ee5 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDataConnectionValidationAsync.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "databaseName": "KustoDatabase8", + "api-version": "2021-01-01", + "parameters": { + "dataConnectionName": "DataConnections8", + "properties": { + "kind": "EventHub", + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1", + "managedIdentityResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.ManagedIdentity/userAssignedIdentities/managedidentityTest1", + "consumerGroup": "testConsumerGroup1" + } + } + }, + "responses": { + "200": { + "body": [ + { + "errorMessage": "Event hub's namespace does not exist" + }, + { + "errorMessage": "Database does not exist" + } + ] + }, + "202": {} + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDataConnectionsCheckNameAvailability.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDataConnectionsCheckNameAvailability.json new file mode 100644 index 000000000000..3723219abdfa --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDataConnectionsCheckNameAvailability.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2021-01-01", + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "databaseName": "KustoDatabase8", + "dataConnectionName": { + "name": "DataConnections8", + "type": "Microsoft.Kusto/clusters/databases/dataConnections" + } + }, + "responses": { + "200": { + "body": { + "name": "DataConnections8", + "nameAvailable": false, + "message": "Name 'DataConnections8' is already taken. Please specify a different name.", + "reason": "AlreadyExists" + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDataConnectionsCreateOrUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDataConnectionsCreateOrUpdate.json new file mode 100644 index 000000000000..c5743460891f --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDataConnectionsCreateOrUpdate.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "databaseName": "KustoDatabase8", + "api-version": "2021-01-01", + "dataConnectionName": "DataConnections8", + "parameters": { + "location": "westus", + "kind": "EventHub", + "properties": { + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1", + "managedIdentityResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.ManagedIdentity/userAssignedIdentities/managedidentityTest1", + "consumerGroup": "testConsumerGroup1" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8", + "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8", + "type": "Microsoft.Kusto/Clusters/Databases/DataConnections", + "location": "westus", + "kind": "EventHub", + "properties": { + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1", + "managedIdentityResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.ManagedIdentity/userAssignedIdentities/managedidentityTest1", + "consumerGroup": "testConsumerGroup1", + "compression": "None" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8", + "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8", + "type": "Microsoft.Kusto/Clusters/Databases/DataConnections", + "location": "westus", + "kind": "EventHub", + "properties": { + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1", + "managedIdentityResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.ManagedIdentity/userAssignedIdentities/managedidentityTest1", + "consumerGroup": "testConsumerGroup1", + "compression": "None" + } + } + }, + "202": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8", + "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8", + "type": "Microsoft.Kusto/Clusters/Databases/DataConnections", + "location": "westus", + "kind": "EventHub", + "properties": { + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1", + "managedIdentityResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.ManagedIdentity/userAssignedIdentities/managedidentityTest1", + "consumerGroup": "testConsumerGroup1", + "compression": "None" + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDataConnectionsDelete.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDataConnectionsDelete.json new file mode 100644 index 000000000000..6dfdcd5972b1 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDataConnectionsDelete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "databaseName": "KustoDatabase8", + "api-version": "2021-01-01", + "dataConnectionName": "kustoeventhubconnection1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDataConnectionsGet.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDataConnectionsGet.json new file mode 100644 index 000000000000..f7badd34886e --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDataConnectionsGet.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "databaseName": "KustoDatabase8", + "api-version": "2021-01-01", + "dataConnectionName": "DataConnections8" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8", + "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8", + "type": "Microsoft.Kusto/Clusters/Databases/DataConnections", + "location": "westus", + "kind": "EventHub", + "properties": { + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1", + "managedIdentityResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.ManagedIdentity/userAssignedIdentities/managedidentityTest1", + "consumerGroup": "testConsumerGroup1", + "compression": "None" + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDataConnectionsListByDatabase.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDataConnectionsListByDatabase.json new file mode 100644 index 000000000000..62377ddc0872 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDataConnectionsListByDatabase.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "databaseName": "KustoDatabase8", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/KustoDataConnection8", + "name": "KustoClusterRPTest4/KustoDatabase8/KustoDataConnection8", + "type": "Microsoft.Kusto/Clusters/Databases/DataConnections", + "location": "westus", + "kind": "EventHub", + "properties": { + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1", + "managedIdentityResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.ManagedIdentity/userAssignedIdentities/managedidentityTest1", + "consumerGroup": "testConsumerGroup1", + "compression": "None" + } + }, + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase9/DataConnections/KustoDataConnection9", + "name": "KustoClusterRPTest4/KustoDatabase9/KustoDataConnection9", + "type": "Microsoft.Kusto/Clusters/Databases/DataConnections", + "location": "westus", + "kind": "EventHub", + "properties": { + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns2/eventhubs/eventhubTest2", + "managedIdentityResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.ManagedIdentity/userAssignedIdentities/managedidentityTest1", + "consumerGroup": "testConsumerGroup2", + "compression": "None" + } + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDataConnectionsUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDataConnectionsUpdate.json new file mode 100644 index 000000000000..c5743460891f --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDataConnectionsUpdate.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "databaseName": "KustoDatabase8", + "api-version": "2021-01-01", + "dataConnectionName": "DataConnections8", + "parameters": { + "location": "westus", + "kind": "EventHub", + "properties": { + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1", + "managedIdentityResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.ManagedIdentity/userAssignedIdentities/managedidentityTest1", + "consumerGroup": "testConsumerGroup1" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8", + "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8", + "type": "Microsoft.Kusto/Clusters/Databases/DataConnections", + "location": "westus", + "kind": "EventHub", + "properties": { + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1", + "managedIdentityResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.ManagedIdentity/userAssignedIdentities/managedidentityTest1", + "consumerGroup": "testConsumerGroup1", + "compression": "None" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8", + "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8", + "type": "Microsoft.Kusto/Clusters/Databases/DataConnections", + "location": "westus", + "kind": "EventHub", + "properties": { + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1", + "managedIdentityResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.ManagedIdentity/userAssignedIdentities/managedidentityTest1", + "consumerGroup": "testConsumerGroup1", + "compression": "None" + } + } + }, + "202": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8", + "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8", + "type": "Microsoft.Kusto/Clusters/Databases/DataConnections", + "location": "westus", + "kind": "EventHub", + "properties": { + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1", + "managedIdentityResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.ManagedIdentity/userAssignedIdentities/managedidentityTest1", + "consumerGroup": "testConsumerGroup1", + "compression": "None" + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDatabaseAddPrincipals.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDatabaseAddPrincipals.json new file mode 100644 index 000000000000..55d0e1fa0cba --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDatabaseAddPrincipals.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "databaseName": "KustoDatabase8", + "api-version": "2021-01-01", + "databasePrincipalsToAdd": { + "value": [ + { + "name": "Some User", + "role": "Admin", + "type": "User", + "fqn": "aaduser=some_guid", + "email": "user@microsoft.com", + "appId": "" + }, + { + "name": "Kusto", + "role": "Viewer", + "type": "Group", + "fqn": "aadgroup=some_guid", + "email": "kusto@microsoft.com", + "appId": "" + }, + { + "name": "SomeApp", + "role": "Admin", + "type": "App", + "fqn": "aadapp=some_guid_app_id", + "email": "", + "appId": "some_guid_app_id" + } + ] + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Some User", + "role": "Admin", + "type": "User", + "fqn": "aaduser=some_guid", + "email": "user@microsoft.com", + "appId": "" + }, + { + "name": "Kusto", + "role": "Viewer", + "type": "Group", + "fqn": "aadgroup=some_guid", + "email": "kusto@microsoft.com", + "appId": "" + }, + { + "name": "SomeApp", + "role": "Admin", + "type": "App", + "fqn": "aadapp=some_guid_app_id", + "email": "", + "appId": "some_guid_app_id" + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDatabaseListPrincipals.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDatabaseListPrincipals.json new file mode 100644 index 000000000000..c75aba18fc31 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDatabaseListPrincipals.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "databaseName": "KustoDatabase8", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Some User", + "role": "Admin", + "type": "User", + "fqn": "aaduser=some_guid", + "email": "user@microsoft.com", + "appId": "" + }, + { + "name": "Kusto", + "role": "Viewer", + "type": "Group", + "fqn": "aadgroup=some_guid", + "email": "kusto@microsoft.com", + "appId": "" + }, + { + "name": "SomeApp", + "role": "Admin", + "type": "App", + "fqn": "aadapp=some_guid_app_id", + "email": "", + "appId": "some_guid_app_id" + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDatabasePrincipalAssignmentsCheckNameAvailability.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDatabasePrincipalAssignmentsCheckNameAvailability.json new file mode 100644 index 000000000000..800c11e08b09 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDatabasePrincipalAssignmentsCheckNameAvailability.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "databaseName": "Kustodatabase8", + "principalAssignmentName": { + "name": "kustoprincipal1", + "type": "Microsoft.Kusto/clusters/databases/principalAssignments" + }, + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "name": "kustoprincipal1", + "nameAvailable": false, + "message": "Name 'kustoprincipal1' is already taken. Please specify a different name" + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDatabasePrincipalAssignmentsCreateOrUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDatabasePrincipalAssignmentsCreateOrUpdate.json new file mode 100644 index 000000000000..be4b391dbde5 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDatabasePrincipalAssignmentsCreateOrUpdate.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "databaseName": "Kustodatabase8", + "principalAssignmentName": "kustoprincipal1", + "api-version": "2021-01-01", + "parameters": { + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1", + "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal1", + "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments", + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123", + "tenantName": "tenantName", + "principalName": "TestApp", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1", + "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal1", + "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments", + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123", + "tenantName": "tenantName", + "principalName": "TestApp", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDatabasePrincipalAssignmentsDelete.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDatabasePrincipalAssignmentsDelete.json new file mode 100644 index 000000000000..a4760e4090db --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDatabasePrincipalAssignmentsDelete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "databaseName": "Kustodatabase8", + "principalAssignmentName": "kustoprincipal1", + "api-version": "2021-01-01" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDatabasePrincipalAssignmentsGet.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDatabasePrincipalAssignmentsGet.json new file mode 100644 index 000000000000..6d21c07b7e41 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDatabasePrincipalAssignmentsGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "databaseName": "Kustodatabase8", + "principalAssignmentName": "kustoprincipal1", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1", + "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal1", + "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments", + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123", + "tenantName": "tenantName", + "principalName": "TestApp", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDatabasePrincipalAssignmentsList.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDatabasePrincipalAssignmentsList.json new file mode 100644 index 000000000000..653625bbbdc5 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDatabasePrincipalAssignmentsList.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "databaseName": "Kustodatabase8", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1", + "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal1", + "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments", + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123", + "tenantName": "tenantName", + "principalName": "TestApp", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1", + "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal2", + "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments", + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123", + "tenantName": "tenantName", + "principalName": "TestApp", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDatabaseReadonlyUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDatabaseReadonlyUpdate.json new file mode 100644 index 000000000000..a39942b53be3 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDatabaseReadonlyUpdate.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "databaseName": "KustoreadOnlyDatabase", + "api-version": "2021-01-01", + "parameters": { + "location": "westus", + "kind": "ReadOnlyFollowing", + "properties": { + "hotCachePeriod": "P1D" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoreadOnlyDatabase", + "name": "KustoClusterRPTest4/KustoreadOnlyDatabase", + "type": "Microsoft.Kusto/Clusters/Databases", + "kind": "ReadOnlyFollowing", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoreadOnlyDatabase", + "name": "KustoClusterRPTest4/KustoreadOnlyDatabase", + "type": "Microsoft.Kusto/Clusters/Databases", + "location": "westus", + "kind": "ReadOnlyFollowing", + "properties": { + "hotCachePeriod": "P1D", + "provisioningState": "Succeeded" + } + } + }, + "202": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoreadOnlyDatabase", + "name": "KustoClusterRPTest4/KustoreadOnlyDatabase", + "type": "Microsoft.Kusto/Clusters/Databases", + "location": "westus", + "kind": "ReadOnlyFollowing", + "properties": { + "hotCachePeriod": "P1D", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDatabaseRemovePrincipals.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDatabaseRemovePrincipals.json new file mode 100644 index 000000000000..51c428d756ae --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDatabaseRemovePrincipals.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "databaseName": "KustoDatabase8", + "api-version": "2021-01-01", + "databasePrincipalsToRemove": { + "value": [ + { + "name": "Some User", + "role": "Admin", + "type": "User", + "fqn": "aaduser=some_guid", + "email": "user@microsoft.com", + "appId": "" + }, + { + "name": "Kusto", + "role": "Viewer", + "type": "Group", + "fqn": "aadgroup=some_guid", + "email": "kusto@microsoft.com", + "appId": "" + }, + { + "name": "SomeApp", + "role": "Admin", + "type": "App", + "fqn": "aadapp=some_guid_app_id", + "email": "", + "appId": "some_guid_app_id" + } + ] + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Some User", + "role": "Admin", + "type": "User", + "fqn": "aaduser=some_guid", + "email": "user@microsoft.com", + "appId": "" + }, + { + "name": "Kusto", + "role": "Viewer", + "type": "Group", + "fqn": "aadgroup=some_guid", + "email": "kusto@microsoft.com", + "appId": "" + }, + { + "name": "SomeApp", + "role": "Admin", + "type": "App", + "fqn": "aadapp=some_guid_app_id", + "email": "", + "appId": "some_guid_app_id" + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDatabasesCheckNameAvailability.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDatabasesCheckNameAvailability.json new file mode 100644 index 000000000000..667a957ad9a7 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDatabasesCheckNameAvailability.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "api-version": "2021-01-01", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "resourceName": { + "name": "kustoresourcename1", + "type": "Microsoft.Kusto/clusters/databases" + } + }, + "responses": { + "200": { + "body": { + "name": "kustoresourcename1", + "nameAvailable": false, + "message": "Name 'kuskus' is already taken. Please specify a different name" + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDatabasesCreateOrUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDatabasesCreateOrUpdate.json new file mode 100644 index 000000000000..13cca8dc50bc --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDatabasesCreateOrUpdate.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "databaseName": "KustoDatabase8", + "api-version": "2021-01-01", + "parameters": { + "location": "westus", + "properties": { + "softDeletePeriod": "P1D" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8", + "name": "KustoClusterRPTest4/KustoDatabase8", + "type": "Microsoft.Kusto/Clusters/Databases", + "kind": "ReadWrite", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8", + "name": "KustoClusterRPTest4/KustoDatabase8", + "type": "Microsoft.Kusto/Clusters/Databases", + "location": "westus", + "kind": "ReadWrite", + "properties": { + "softDeletePeriod": "P1D", + "provisioningState": "Succeeded" + } + } + }, + "202": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8", + "name": "KustoClusterRPTest4/KustoDatabase8", + "type": "Microsoft.Kusto/Clusters/Databases", + "location": "westus", + "kind": "ReadWrite", + "properties": { + "softDeletePeriod": "P1D", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDatabasesDelete.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDatabasesDelete.json new file mode 100644 index 000000000000..234ccea1ad10 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDatabasesDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "databaseName": "KustoDatabase8", + "api-version": "2021-01-01" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDatabasesGet.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDatabasesGet.json new file mode 100644 index 000000000000..654e328070e0 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDatabasesGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "databaseName": "KustoDatabase8", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8", + "name": "KustoClusterRPTest4/KustoDatabase8", + "type": "Microsoft.Kusto/Clusters/Databases", + "kind": "ReadWrite", + "location": "westus", + "properties": { + "softDeletePeriod": "P1D", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDatabasesListByCluster.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDatabasesListByCluster.json new file mode 100644 index 000000000000..0b583c40863c --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDatabasesListByCluster.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8", + "name": "KustoClusterRPTest4/KustoDatabase8", + "type": "Microsoft.Kusto/Clusters/Databases", + "location": "westus", + "kind": "ReadWrite", + "properties": { + "softDeletePeriod": "P1D", + "hotCachePeriod": "P1D", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase9", + "name": "KustoClusterRPTest4/KustoDatabase9", + "type": "Microsoft.Kusto/Clusters/Databases", + "location": "westus", + "kind": "ReadOnlyFollowing", + "properties": { + "softDeletePeriod": "P1D", + "hotCachePeriod": "P1D", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDatabasesUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDatabasesUpdate.json new file mode 100644 index 000000000000..b98fc04174b1 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoDatabasesUpdate.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "databaseName": "KustoDatabase8", + "api-version": "2021-01-01", + "parameters": { + "properties": { + "hotCachePeriod": "P1D" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8", + "name": "KustoClusterRPTest4/KustoDatabase8", + "type": "Microsoft.Kusto/Clusters/Databases", + "kind": "ReadWrite", + "location": "westus", + "properties": { + "hotCachePeriod": "P1D", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8", + "name": "KustoClusterRPTest4/KustoDatabase8", + "type": "Microsoft.Kusto/Clusters/Databases", + "kind": "ReadWrite", + "location": "westus", + "properties": { + "hotCachePeriod": "P1D", + "provisioningState": "Succeeded" + } + } + }, + "202": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8", + "name": "KustoClusterRPTest4/KustoDatabase8", + "type": "Microsoft.Kusto/Clusters/Databases", + "location": "westus", + "kind": "ReadWrite", + "properties": { + "hotCachePeriod": "P1D", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoOperationResultsGet.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoOperationResultsGet.json new file mode 100644 index 000000000000..e7379093974c --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoOperationResultsGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "location": "westus", + "operationId": "30972f1b-b61d-4fd8-bd34-3dcfa24670f3", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/providers/Microsoft.Kusto/locations/westus/operationresults/30972f1b-b61d-4fd8-bd34-3dcfa24670f3", + "name": "30972f1b-b61d-4fd8-bd34-3dcfa24670f3", + "status": "Failed", + "startTime": "2020-10-26T13:45:39.6554616Z", + "endTime": "2020-10-26T13:45:42.7025301Z", + "percentComplete": 1.0, + "properties": { + "operationKind": "FollowerDatabaseCreate", + "operationState": "BadInput" + }, + "error": { + "code": "CannotAlterFollowerDatabase", + "message": "[BadRequest] Cannot alter leader cluster 'test' for resource name 'adc'." + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoOperationsList.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoOperationsList.json new file mode 100644 index 000000000000..46064541b996 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoOperationsList.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "operationName", + "display": { + "provider": "providerName", + "resource": "resourceName", + "operation": "operationName", + "description": "operation description" + } + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoScriptsCheckNameAvailability.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoScriptsCheckNameAvailability.json new file mode 100644 index 000000000000..649488514407 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoScriptsCheckNameAvailability.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "api-version": "2021-01-01", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "databaseName": "db", + "scriptName": { + "name": "kustoScriptName1", + "type": "Microsoft.Kusto/clusters/databases/scripts" + } + }, + "responses": { + "200": { + "body": { + "name": "kustoScriptName1", + "nameAvailable": false, + "message": "Name 'kustoScriptName1' is already taken. Please specify a different name" + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoScriptsCreateOrUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoScriptsCreateOrUpdate.json new file mode 100644 index 000000000000..e6f823171526 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoScriptsCreateOrUpdate.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "databaseName": "KustoDatabase8", + "scriptName": "kustoScript1", + "api-version": "2021-01-01", + "parameters": { + "properties": { + "scriptUrl": "https://mysa.blob.core.windows.net/container/script.txt", + "scriptUrlSasToken": "?sv=2019-02-02&st=2019-04-29T22%3A18%3A26Z&se=2019-04-30T02%3A23%3A26Z&sr=b&sp=rw&sip=168.1.5.60-168.1.5.70&spr=https&sig=********************************", + "forceUpdateTag": "2bcf3c21-ffd1-4444-b9dd-e52e00ee53fe", + "continueOnErrors": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/Scripts/kustoScript1", + "name": "KustoClusterRPTest4/KustoDatabase8/kustoScript1", + "type": "Microsoft.Kusto/Clusters/Databases/Scripts", + "properties": { + "scriptUrl": "https://mysa.blob.core.windows.net/container/script.txt", + "forceUpdateTag": "2bcf3c21-ffd1-4444-b9dd-e52e00ee53fe", + "continueOnErrors": true + } + } + }, + "201": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/Scripts/kustoScript1", + "name": "KustoClusterRPTest4/KustoDatabase8/kustoScript1", + "type": "Microsoft.Kusto/Clusters/Databases/Scripts", + "properties": { + "scriptUrl": "https://mysa.blob.core.windows.net/container/script.txt", + "forceUpdateTag": "2bcf3c21-ffd1-4444-b9dd-e52e00ee53fe", + "continueOnErrors": true + } + } + }, + "202": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/Scripts/kustoScript1", + "name": "KustoClusterRPTest4/KustoDatabase8/kustoScript1", + "type": "Microsoft.Kusto/Clusters/Databases/Scripts", + "properties": { + "scriptUrl": "https://mysa.blob.core.windows.net/container/script.txt", + "forceUpdateTag": "2bcf3c21-ffd1-4444-b9dd-e52e00ee53fe", + "continueOnErrors": true + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoScriptsDelete.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoScriptsDelete.json new file mode 100644 index 000000000000..0d970154f8af --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoScriptsDelete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "databaseName": "KustoDatabase8", + "scriptName": "kustoScript1", + "api-version": "2021-01-01" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoScriptsGet.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoScriptsGet.json new file mode 100644 index 000000000000..8714ff58807e --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoScriptsGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "databaseName": "Kustodatabase8", + "scriptName": "kustoScript1", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/Scripts/kustoScript1", + "name": "kustoclusterrptest4/Kustodatabase8/kustoScript1", + "type": "Microsoft.Kusto/Clusters/Databases/Scripts", + "properties": { + "scriptUrl": "https://mysa.blob.core.windows.net/container/script.txt", + "forceUpdateTag": "2bcf3c21-ffd1-4444-b9dd-e52e00ee53fe", + "continueOnErrors": true + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoScriptsListByDatabase.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoScriptsListByDatabase.json new file mode 100644 index 000000000000..83a617fb2889 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoScriptsListByDatabase.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "databaseName": "Kustodatabase8", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/Scripts/kustoScript1", + "name": "kustoclusterrptest4/Kustodatabase8/kustoScript1", + "type": "Microsoft.Kusto/Clusters/Databases/Scripts", + "properties": { + "scriptUrl": "https://mysa.blob.core.windows.net/container/script.txt", + "forceUpdateTag": "2bcf3c21-ffd1-4444-b9dd-e52e00ee53fe", + "continueOnErrors": true + } + }, + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/Scripts/kustoScript2", + "name": "kustoclusterrptest4/Kustodatabase8/kustoScript2", + "type": "Microsoft.Kusto/Clusters/Databases/Scripts", + "properties": { + "scriptUrl": "https://mysa.blob.core.windows.net/container/script2.txt", + "forceUpdateTag": "2bcf3c21-ffd1-4444-b9dd-e52e00ee53fe", + "continueOnErrors": true + } + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoScriptsUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoScriptsUpdate.json new file mode 100644 index 000000000000..b7b89b654455 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/examples/KustoScriptsUpdate.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "databaseName": "KustoDatabase8", + "scriptName": "kustoScript1", + "api-version": "2021-01-01", + "parameters": { + "properties": { + "scriptUrl": "https://mysa.blob.core.windows.net/container/script.txt", + "scriptUrlSasToken": "?sv=2019-02-02&st=2019-04-29T22%3A18%3A26Z&se=2019-04-30T02%3A23%3A26Z&sr=b&sp=rw&sip=168.1.5.60-168.1.5.70&spr=https&sig=********************************", + "forceUpdateTag": "2bcf3c21-ffd1-4444-b9dd-e52e00ee53fe", + "continueOnErrors": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/Scripts/kustoScript1", + "name": "KustoClusterRPTest4/KustoDatabase8/kustoScript1", + "type": "Microsoft.Kusto/Clusters/Databases/Scripts", + "properties": { + "scriptUrl": "https://mysa.blob.core.windows.net/container/script.txt", + "forceUpdateTag": "2bcf3c21-ffd1-4444-b9dd-e52e00ee53fe", + "continueOnErrors": true + } + } + }, + "202": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/Scripts/kustoScript1", + "name": "KustoClusterRPTest4/KustoDatabase8/kustoScript1", + "type": "Microsoft.Kusto/Clusters/Databases/Scripts", + "properties": { + "scriptUrl": "https://mysa.blob.core.windows.net/container/script.txt", + "forceUpdateTag": "2bcf3c21-ffd1-4444-b9dd-e52e00ee53fe", + "continueOnErrors": true + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/kusto.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/kusto.json new file mode 100644 index 000000000000..c28870abff65 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2021-01-01/kusto.json @@ -0,0 +1,4935 @@ +{ + "swagger": "2.0", + "info": { + "title": "KustoManagementClient", + "version": "2021-01-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}": { + "get": { + "tags": [ + "Clusters" + ], + "operationId": "Clusters_Get", + "x-ms-examples": { + "KustoClustersGet": { + "$ref": "./examples/KustoClustersGet.json" + } + }, + "description": "Gets a Kusto cluster.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Kusto cluster.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Clusters" + ], + "operationId": "Clusters_CreateOrUpdate", + "x-ms-examples": { + "KustoClustersCreateOrUpdate": { + "$ref": "./examples/KustoClustersCreateOrUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Create or update a Kusto cluster.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Cluster" + }, + "description": "The Kusto cluster parameters supplied to the CreateOrUpdate operation." + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "x-ms-client-name": "IfMatch", + "description": "The ETag of the cluster. Omit this value to always overwrite the current cluster. Specify the last-seen ETag value to prevent accidentally overwriting concurrent changes." + }, + { + "name": "If-None-Match", + "in": "header", + "required": false, + "type": "string", + "x-ms-client-name": "IfNoneMatch", + "description": "Set to '*' to allow a new cluster to be created, but to prevent updating an existing cluster. Other values will result in a 412 Pre-condition Failed response." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the Cluster.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "201": { + "description": "Successfully created the cluster.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "patch": { + "tags": [ + "Clusters" + ], + "operationId": "Clusters_Update", + "x-ms-examples": { + "KustoClustersUpdate": { + "$ref": "./examples/KustoClustersUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Update a Kusto cluster.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ClusterUpdate" + }, + "description": "The Kusto cluster parameters supplied to the Update operation." + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "x-ms-client-name": "IfMatch", + "description": "The ETag of the cluster. Omit this value to always overwrite the current cluster. Specify the last-seen ETag value to prevent accidentally overwriting concurrent changes." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the Cluster.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "201": { + "description": "Successfully updated the cluster.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "202": { + "description": "Successfully updated the cluster.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "Clusters" + ], + "operationId": "Clusters_Delete", + "x-ms-examples": { + "KustoClustersDelete": { + "$ref": "./examples/KustoClustersDelete.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Deletes a Kusto cluster.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK -- cluster deleted successfully." + }, + "202": { + "description": "Accepted the delete cluster request." + }, + "204": { + "description": "NoContent -- cluster does not exist in the subscription." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/stop": { + "post": { + "tags": [ + "Clusters" + ], + "operationId": "Clusters_Stop", + "x-ms-examples": { + "KustoClustersStop": { + "$ref": "./examples/KustoClustersStop.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Stops a Kusto cluster.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/start": { + "post": { + "tags": [ + "Clusters" + ], + "operationId": "Clusters_Start", + "x-ms-examples": { + "KustoClustersStart": { + "$ref": "./examples/KustoClustersStart.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Starts a Kusto cluster.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "202": { + "description": "Accepted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/checkPrincipalAssignmentNameAvailability": { + "post": { + "tags": [ + "ClusterPrincipalAssignments" + ], + "operationId": "ClusterPrincipalAssignments_CheckNameAvailability", + "x-ms-examples": { + "KustoClusterPrincipalAssignmentsCheckNameAvailability": { + "$ref": "./examples/KustoClusterPrincipalAssignmentsCheckNameAvailability.json" + } + }, + "description": "Checks that the principal assignment name is valid and is not already in use.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "principalAssignmentName", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ClusterPrincipalAssignmentCheckNameRequest" + }, + "description": "The name of the principal assignment." + } + ], + "responses": { + "200": { + "description": "OK -- Operation to check the kusto resource name availability was successful.", + "schema": { + "$ref": "#/definitions/CheckNameResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/principalAssignments/{principalAssignmentName}": { + "get": { + "tags": [ + "ClusterPrincipalAssignments" + ], + "operationId": "ClusterPrincipalAssignments_Get", + "x-ms-examples": { + "KustoClusterPrincipalAssignmentsGet": { + "$ref": "./examples/KustoClusterPrincipalAssignmentsGet.json" + } + }, + "description": "Gets a Kusto cluster principalAssignment.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/PrincipalAssignmentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Kusto cluster principal assignment object.", + "schema": { + "$ref": "#/definitions/ClusterPrincipalAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "ClusterPrincipalAssignments" + ], + "operationId": "ClusterPrincipalAssignments_CreateOrUpdate", + "x-ms-examples": { + "KustoClusterPrincipalAssignmentsCreateOrUpdate": { + "$ref": "./examples/KustoClusterPrincipalAssignmentsCreateOrUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Create a Kusto cluster principalAssignment.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/PrincipalAssignmentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ClusterPrincipalAssignment" + }, + "description": "The Kusto cluster principalAssignment's parameters supplied for the operation." + } + ], + "responses": { + "200": { + "description": "Successfully updated the PrincipalAssignment.", + "schema": { + "$ref": "#/definitions/ClusterPrincipalAssignment" + } + }, + "201": { + "description": "Successfully created the principalAssignment.", + "schema": { + "$ref": "#/definitions/ClusterPrincipalAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "ClusterPrincipalAssignments" + ], + "operationId": "ClusterPrincipalAssignments_Delete", + "x-ms-examples": { + "KustoClusterPrincipalAssignmentsDelete": { + "$ref": "./examples/KustoClusterPrincipalAssignmentsDelete.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Deletes a Kusto cluster principalAssignment.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/PrincipalAssignmentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK -- principalAssignments deleted successfully." + }, + "202": { + "description": "Accepted the delete principalAssignments request." + }, + "204": { + "description": "NoContent -- principalAssignments does not exist in the subscription." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/principalAssignments": { + "get": { + "tags": [ + "ClusterPrincipalAssignments" + ], + "operationId": "ClusterPrincipalAssignments_List", + "x-ms-examples": { + "KustoPrincipalAssignmentsList": { + "$ref": "./examples/KustoClusterPrincipalAssignmentsList.json" + } + }, + "description": "Lists all Kusto cluster principalAssignments.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/ClusterPrincipalAssignmentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/listFollowerDatabases": { + "post": { + "tags": [ + "Clusters" + ], + "description": "Returns a list of databases that are owned by this cluster and were followed by another cluster.", + "operationId": "Clusters_ListFollowerDatabases", + "x-ms-examples": { + "KustoClusterListFollowerDatabases": { + "$ref": "./examples/KustoClusterListFollowerDatabases.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of followed databases.", + "schema": { + "$ref": "#/definitions/FollowerDatabaseListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/detachFollowerDatabases": { + "post": { + "tags": [ + "Clusters" + ], + "description": "Detaches all followers of a database owned by this cluster.", + "operationId": "Clusters_DetachFollowerDatabases", + "x-ms-examples": { + "KustoClusterDetachFollowerDatabases": { + "$ref": "./examples/KustoClusterDetachFollowerDatabases.json" + } + }, + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "followerDatabaseToRemove", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FollowerDatabaseDefinition" + }, + "description": "The follower databases properties to remove." + } + ], + "responses": { + "200": { + "description": "OK." + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/diagnoseVirtualNetwork": { + "post": { + "tags": [ + "Clusters" + ], + "description": "Diagnoses network connectivity status for external resources on which the service is dependent on.", + "operationId": "Clusters_DiagnoseVirtualNetwork", + "x-ms-examples": { + "KustoClusterDiagnoseVirtualNetwork": { + "$ref": "./examples/KustoClustersDiagnoseVirtualNetwork.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/DiagnoseVirtualNetworkResult" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters": { + "get": { + "tags": [ + "Clusters" + ], + "operationId": "Clusters_ListByResourceGroup", + "x-ms-examples": { + "KustoClustersListByResourceGroup": { + "$ref": "./examples/KustoClustersListByResourceGroup.json" + } + }, + "description": "Lists all Kusto clusters within a resource group.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/ClusterListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Kusto/clusters": { + "get": { + "tags": [ + "Clusters" + ], + "operationId": "Clusters_List", + "x-ms-examples": { + "KustoClustersList": { + "$ref": "./examples/KustoClustersList.json" + } + }, + "description": "Lists all Kusto clusters within a subscription.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/ClusterListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Kusto/skus": { + "get": { + "description": "Lists eligible SKUs for Kusto resource provider.", + "x-ms-examples": { + "KustoClustersListSkus": { + "$ref": "./examples/KustoClustersListSkus.json" + } + }, + "operationId": "Clusters_ListSkus", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/SkuDescriptionList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Kusto/locations/{location}/checkNameAvailability": { + "post": { + "tags": [ + "Clusters" + ], + "operationId": "Clusters_CheckNameAvailability", + "x-ms-examples": { + "KustoClustersCheckNameAvailability": { + "$ref": "./examples/KustoClustersCheckNameAvailability.json" + } + }, + "description": "Checks that the cluster name is valid and is not already in use.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/LocationNameParameter" + }, + { + "name": "clusterName", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ClusterCheckNameRequest" + }, + "description": "The name of the cluster." + } + ], + "responses": { + "200": { + "description": "OK -- Operation to check the kusto resource name availability was successful.", + "schema": { + "$ref": "#/definitions/CheckNameResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/checkNameAvailability": { + "post": { + "tags": [ + "Databases" + ], + "operationId": "Databases_CheckNameAvailability", + "x-ms-examples": { + "KustoDatabaseCheckNameAvailability": { + "$ref": "./examples/KustoDatabasesCheckNameAvailability.json" + } + }, + "description": "Checks that the database name is valid and is not already in use.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceName", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CheckNameRequest" + }, + "description": "The name of the resource." + } + ], + "responses": { + "200": { + "description": "OK -- Operation to check the kusto resource name availability was successful.", + "schema": { + "$ref": "#/definitions/CheckNameResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/skus": { + "get": { + "tags": [ + "Clusters" + ], + "operationId": "Clusters_ListSkusByResource", + "x-ms-examples": { + "KustoClustersListResourceSkus": { + "$ref": "./examples/KustoClustersListResourceSkus.json" + } + }, + "description": "Returns the SKUs available for the provided resource.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/ListResourceSkusResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases": { + "get": { + "tags": [ + "Databases" + ], + "description": "Returns the list of databases of the given Kusto cluster.", + "operationId": "Databases_ListByCluster", + "x-ms-examples": { + "KustoDatabasesListByCluster": { + "$ref": "./examples/KustoDatabasesListByCluster.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of databases.", + "schema": { + "$ref": "#/definitions/DatabaseListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases/{databaseName}": { + "get": { + "tags": [ + "Databases" + ], + "description": "Returns a database.", + "operationId": "Databases_Get", + "x-ms-examples": { + "KustoDatabasesGet": { + "$ref": "./examples/KustoDatabasesGet.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the specified database.", + "schema": { + "$ref": "#/definitions/Database" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Databases" + ], + "description": "Creates or updates a database.", + "operationId": "Databases_CreateOrUpdate", + "x-ms-examples": { + "Kusto ReadWrite database create or update": { + "$ref": "./examples/KustoDatabasesCreateOrUpdate.json" + }, + "Kusto ReadOnly database update": { + "$ref": "./examples/KustoDatabaseReadonlyUpdate.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Database" + }, + "description": "The database parameters supplied to the CreateOrUpdate operation." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the database.", + "schema": { + "$ref": "#/definitions/Database" + } + }, + "201": { + "description": "Successfully created the database.", + "schema": { + "$ref": "#/definitions/Database" + } + }, + "202": { + "description": "Accepted the create database request.", + "schema": { + "$ref": "#/definitions/Database" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "Databases" + ], + "description": "Updates a database.", + "operationId": "Databases_Update", + "x-ms-examples": { + "KustoDatabasesUpdate": { + "$ref": "./examples/KustoDatabasesUpdate.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Database" + }, + "description": "The database parameters supplied to the Update operation." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the database.", + "schema": { + "$ref": "#/definitions/Database" + } + }, + "201": { + "description": "Successfully updated the database.", + "schema": { + "$ref": "#/definitions/Database" + } + }, + "202": { + "description": "Accepted the update database request.", + "schema": { + "$ref": "#/definitions/Database" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "Databases" + ], + "description": "Deletes the database with the given name.", + "operationId": "Databases_Delete", + "x-ms-examples": { + "KustoDatabasesDelete": { + "$ref": "./examples/KustoDatabasesDelete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the database." + }, + "202": { + "description": "Accepted." + }, + "204": { + "description": "The specified database does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases/{databaseName}/checkPrincipalAssignmentNameAvailability": { + "post": { + "tags": [ + "DatabasePrincipalAssignments" + ], + "operationId": "DatabasePrincipalAssignments_CheckNameAvailability", + "x-ms-examples": { + "KustoDatabaseCheckNameAvailability": { + "$ref": "./examples/KustoDatabasePrincipalAssignmentsCheckNameAvailability.json" + } + }, + "description": "Checks that the database principal assignment is valid and is not already in use.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "principalAssignmentName", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DatabasePrincipalAssignmentCheckNameRequest" + }, + "description": "The name of the resource." + } + ], + "responses": { + "200": { + "description": "OK -- Operation to check the kusto resource name availability was successful.", + "schema": { + "$ref": "#/definitions/CheckNameResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases/{databaseName}/principalAssignments/{principalAssignmentName}": { + "get": { + "tags": [ + "DatabasePrincipalAssignments" + ], + "operationId": "DatabasePrincipalAssignments_Get", + "x-ms-examples": { + "KustoDatabasePrincipalAssignmentsGet": { + "$ref": "./examples/KustoDatabasePrincipalAssignmentsGet.json" + } + }, + "description": "Gets a Kusto cluster database principalAssignment.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/PrincipalAssignmentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Kusto cluster database principal assignment object.", + "schema": { + "$ref": "#/definitions/DatabasePrincipalAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "DatabasePrincipalAssignments" + ], + "operationId": "DatabasePrincipalAssignments_CreateOrUpdate", + "x-ms-examples": { + "KustoDatabasePrincipalAssignmentsCreateOrUpdate": { + "$ref": "./examples/KustoDatabasePrincipalAssignmentsCreateOrUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Creates a Kusto cluster database principalAssignment.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/PrincipalAssignmentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DatabasePrincipalAssignment" + }, + "description": "The Kusto principalAssignments parameters supplied for the operation." + } + ], + "responses": { + "200": { + "description": "Successfully updated the PrincipalAssignments.", + "schema": { + "$ref": "#/definitions/DatabasePrincipalAssignment" + } + }, + "201": { + "description": "Successfully created the principalAssignments.", + "schema": { + "$ref": "#/definitions/DatabasePrincipalAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "DatabasePrincipalAssignments" + ], + "operationId": "DatabasePrincipalAssignments_Delete", + "x-ms-examples": { + "KustoDatabasePrincipalAssignmentsDelete": { + "$ref": "./examples/KustoDatabasePrincipalAssignmentsDelete.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Deletes a Kusto principalAssignment.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/PrincipalAssignmentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK -- principalAssignments deleted successfully." + }, + "202": { + "description": "Accepted the delete principalAssignments request." + }, + "204": { + "description": "NoContent -- principalAssignments does not exist in the subscription." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases/{databaseName}/principalAssignments": { + "get": { + "tags": [ + "DatabasePrincipalAssignments" + ], + "operationId": "DatabasePrincipalAssignments_List", + "x-ms-examples": { + "KustoPrincipalAssignmentsList": { + "$ref": "./examples/KustoDatabasePrincipalAssignmentsList.json" + } + }, + "description": "Lists all Kusto cluster database principalAssignments.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/DatabasePrincipalAssignmentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases/{databaseName}/listPrincipals": { + "post": { + "tags": [ + "Databases" + ], + "description": "Returns a list of database principals of the given Kusto cluster and database.", + "operationId": "Databases_ListPrincipals", + "x-ms-examples": { + "KustoDatabaseListPrincipals": { + "$ref": "./examples/KustoDatabaseListPrincipals.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of database principals.", + "schema": { + "$ref": "#/definitions/DatabasePrincipalListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases/{databaseName}/addPrincipals": { + "post": { + "tags": [ + "Databases" + ], + "operationId": "Databases_AddPrincipals", + "x-ms-examples": { + "KustoDatabaseAddPrincipals": { + "$ref": "./examples/KustoDatabaseAddPrincipals.json" + } + }, + "description": "Add Database principals permissions.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "databasePrincipalsToAdd", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DatabasePrincipalListRequest" + }, + "description": "List of database principals to add." + } + ], + "responses": { + "200": { + "description": "OK -- Successfully added the list of database principals. Returns the updated list of principals.", + "schema": { + "$ref": "#/definitions/DatabasePrincipalListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases/{databaseName}/scripts": { + "get": { + "tags": [ + "scripts" + ], + "operationId": "Scripts_ListByDatabase", + "x-ms-examples": { + "KustoScriptsList": { + "$ref": "./examples/KustoScriptsListByDatabase.json" + } + }, + "description": "Returns the list of database scripts for given database.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The list result of Kusto database scripts.", + "schema": { + "$ref": "#/definitions/ScriptListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases/{databaseName}/scripts/{scriptName}": { + "get": { + "tags": [ + "Scripts" + ], + "operationId": "Scripts_Get", + "x-ms-examples": { + "KustoScriptsGet": { + "$ref": "./examples/KustoScriptsGet.json" + } + }, + "description": "Gets a Kusto cluster database script.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/ScriptNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Kusto cluster database script object.", + "schema": { + "$ref": "#/definitions/Script" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Scripts" + ], + "operationId": "Scripts_CreateOrUpdate", + "x-ms-examples": { + "KustoScriptsCreateOrUpdate": { + "$ref": "./examples/KustoScriptsCreateOrUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Creates a Kusto database script.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/ScriptNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Script" + }, + "description": "The Kusto Script parameters contains the KQL to run." + } + ], + "responses": { + "200": { + "description": "Successfully updated the Script.", + "schema": { + "$ref": "#/definitions/Script" + } + }, + "201": { + "description": "Successfully created the script.", + "schema": { + "$ref": "#/definitions/Script" + } + }, + "202": { + "description": "Successfully accepted the Script.", + "schema": { + "$ref": "#/definitions/Script" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "patch": { + "tags": [ + "Scripts" + ], + "operationId": "Scripts_Update", + "x-ms-examples": { + "KustoScriptsUpdate": { + "$ref": "./examples/KustoScriptsUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Updates a database script.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/ScriptNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Script" + }, + "description": "The Kusto Script parameters contains to the KQL to run." + } + ], + "responses": { + "200": { + "description": "Successfully updated the database script.", + "schema": { + "$ref": "#/definitions/Script" + } + }, + "202": { + "description": "Accepted the update request of the database script.", + "schema": { + "$ref": "#/definitions/Script" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "Scripts" + ], + "operationId": "Scripts_Delete", + "x-ms-examples": { + "KustoScriptsDelete": { + "$ref": "./examples/KustoScriptsDelete.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Deletes a Kusto principalAssignment.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/ScriptNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Script deleted successfully." + }, + "202": { + "description": "Accepted the delete Script request." + }, + "204": { + "description": "NoContent -- If the Script resource is already deleted, this is the expected status code." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/attachedDatabaseConfigurations": { + "get": { + "tags": [ + "AttachedDatabaseConfigurations" + ], + "description": "Returns the list of attached database configurations of the given Kusto cluster.", + "operationId": "AttachedDatabaseConfigurations_ListByCluster", + "x-ms-examples": { + "KustoAttachedDatabaseConfigurationsListByCluster": { + "$ref": "./examples/KustoAttachedDatabaseConfigurationsListByCluster.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of attached database configurations.", + "schema": { + "$ref": "#/definitions/AttachedDatabaseConfigurationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/attachedDatabaseConfigurations/{attachedDatabaseConfigurationName}": { + "get": { + "tags": [ + "AttachedDatabaseConfigurations" + ], + "description": "Returns an attached database configuration.", + "operationId": "AttachedDatabaseConfigurations_Get", + "x-ms-examples": { + "AttachedDatabaseConfigurationsGet": { + "$ref": "./examples/KustoAttachedDatabaseConfigurationsGet.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/AttachedDatabaseConfigurationNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the specified attached database configuration.", + "schema": { + "$ref": "#/definitions/AttachedDatabaseConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "AttachedDatabaseConfigurations" + ], + "description": "Creates or updates an attached database configuration.", + "operationId": "AttachedDatabaseConfigurations_CreateOrUpdate", + "x-ms-examples": { + "AttachedDatabaseConfigurationsCreateOrUpdate": { + "$ref": "./examples/KustoAttachedDatabaseConfigurationsCreateOrUpdate.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/AttachedDatabaseConfigurationNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AttachedDatabaseConfiguration" + }, + "description": "The database parameters supplied to the CreateOrUpdate operation." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the database.", + "schema": { + "$ref": "#/definitions/AttachedDatabaseConfiguration" + } + }, + "201": { + "description": "Successfully created the database.", + "schema": { + "$ref": "#/definitions/AttachedDatabaseConfiguration" + } + }, + "202": { + "description": "Accepted the create database request.", + "schema": { + "$ref": "#/definitions/AttachedDatabaseConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "AttachedDatabaseConfigurations" + ], + "description": "Deletes the attached database configuration with the given name.", + "operationId": "AttachedDatabaseConfigurations_Delete", + "x-ms-examples": { + "AttachedDatabaseConfigurationsDelete": { + "$ref": "./examples/KustoAttachedDatabaseConfigurationsDelete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/AttachedDatabaseConfigurationNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the database." + }, + "202": { + "description": "Accepted." + }, + "204": { + "description": "The specified database does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases/{databaseName}/removePrincipals": { + "post": { + "tags": [ + "Databases" + ], + "operationId": "Databases_RemovePrincipals", + "x-ms-examples": { + "KustoDatabaseRemovePrincipals": { + "$ref": "./examples/KustoDatabaseRemovePrincipals.json" + } + }, + "description": "Remove Database principals permissions.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "databasePrincipalsToRemove", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DatabasePrincipalListRequest" + }, + "description": "List of database principals to remove." + } + ], + "responses": { + "200": { + "description": "OK -- Successfully removed the list of database principals. Returns the updated list of principals.", + "schema": { + "$ref": "#/definitions/DatabasePrincipalListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases/{databaseName}/dataConnections": { + "get": { + "tags": [ + "DataConnections" + ], + "description": "Returns the list of data connections of the given Kusto database.", + "operationId": "DataConnections_ListByDatabase", + "x-ms-examples": { + "KustoDatabasesListByCluster": { + "$ref": "./examples/KustoDataConnectionsListByDatabase.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of data connections.", + "schema": { + "$ref": "#/definitions/DataConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases/{databaseName}/dataConnectionValidation": { + "post": { + "tags": [ + "DataConnections" + ], + "operationId": "DataConnections_dataConnectionValidation", + "x-ms-examples": { + "KustoDataConnectionValidation": { + "$ref": "./examples/KustoDataConnectionValidationAsync.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "description": "Checks that the data connection parameters are valid.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DataConnectionValidation" + }, + "description": "The data connection parameters supplied to the CreateOrUpdate operation." + } + ], + "responses": { + "200": { + "description": "OK -- Operation to check the kusto resource name availability was successful.", + "schema": { + "$ref": "#/definitions/DataConnectionValidationListResult" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases/{databaseName}/checkNameAvailability": { + "post": { + "tags": [ + "DataConnections" + ], + "operationId": "DataConnections_CheckNameAvailability", + "x-ms-examples": { + "KustoDataConnectionsCheckNameAvailability": { + "$ref": "./examples/KustoDataConnectionsCheckNameAvailability.json" + } + }, + "description": "Checks that the data connection name is valid and is not already in use.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "dataConnectionName", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DataConnectionCheckNameRequest" + }, + "description": "The name of the data connection." + } + ], + "responses": { + "200": { + "description": "OK -- Operation to check the Kusto resource name availability was successful.", + "schema": { + "$ref": "#/definitions/CheckNameResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases/{databaseName}/scriptsCheckNameAvailability": { + "post": { + "tags": [ + "Scripts" + ], + "operationId": "Scripts_CheckNameAvailability", + "x-ms-examples": { + "KustoScriptsCheckNameAvailability": { + "$ref": "./examples/KustoScriptsCheckNameAvailability.json" + } + }, + "description": "Checks that the script name is valid and is not already in use.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "scriptName", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScriptCheckNameRequest" + }, + "description": "The name of the script." + } + ], + "responses": { + "200": { + "description": "OK -- Operation to check the Kusto resource name availability was successful.", + "schema": { + "$ref": "#/definitions/CheckNameResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases/{databaseName}/dataConnections/{dataConnectionName}": { + "get": { + "tags": [ + "DataConnections" + ], + "description": "Returns a data connection.", + "operationId": "DataConnections_Get", + "x-ms-examples": { + "KustoDataConnectionsGet": { + "$ref": "./examples/KustoDataConnectionsGet.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/DataConnectionNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the specified data connection.", + "schema": { + "$ref": "#/definitions/DataConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "DataConnections" + ], + "description": "Creates or updates a data connection.", + "operationId": "DataConnections_CreateOrUpdate", + "x-ms-examples": { + "KustoDataConnectionsCreateOrUpdate": { + "$ref": "./examples/KustoDataConnectionsCreateOrUpdate.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/DataConnectionNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DataConnection" + }, + "description": "The data connection parameters supplied to the CreateOrUpdate operation." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the data connection.", + "schema": { + "$ref": "#/definitions/DataConnection" + } + }, + "201": { + "description": "Successfully created the data connection.", + "schema": { + "$ref": "#/definitions/DataConnection" + } + }, + "202": { + "description": "Accepted the create data connection request.", + "schema": { + "$ref": "#/definitions/DataConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "DataConnections" + ], + "description": "Updates a data connection.", + "operationId": "DataConnections_Update", + "x-ms-examples": { + "KustoDataConnectionsUpdate": { + "$ref": "./examples/KustoDataConnectionsUpdate.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/DataConnectionNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DataConnection" + }, + "description": "The data connection parameters supplied to the Update operation." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the data connection.", + "schema": { + "$ref": "#/definitions/DataConnection" + } + }, + "201": { + "description": "Successfully updated the data connection.", + "schema": { + "$ref": "#/definitions/DataConnection" + } + }, + "202": { + "description": "Accepted the update data connection request.", + "schema": { + "$ref": "#/definitions/DataConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "DataConnections" + ], + "description": "Deletes the data connection with the given name.", + "operationId": "DataConnections_Delete", + "x-ms-examples": { + "KustoDataConnectionsDelete": { + "$ref": "./examples/KustoDataConnectionsDelete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/DataConnectionNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the data connection." + }, + "202": { + "description": "Accepted." + }, + "204": { + "description": "The specified data connection does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/providers/Microsoft.Kusto/operations": { + "get": { + "tags": [ + "Operations" + ], + "operationId": "Operations_List", + "x-ms-examples": { + "KustoOperationsList": { + "$ref": "./examples/KustoOperationsList.json" + } + }, + "description": "Lists available operations for the Microsoft.Kusto provider.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful. The response contains the list of available operations.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/listLanguageExtensions": { + "post": { + "tags": [ + "Clusters" + ], + "description": "Returns a list of language extensions that can run within KQL queries.", + "operationId": "Clusters_ListLanguageExtensions", + "x-ms-examples": { + "KustoClusterListLanguageExtensions": { + "$ref": "./examples/KustoClusterListLanguageExtensions.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of language extensions.", + "schema": { + "$ref": "#/definitions/LanguageExtensionsList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/addLanguageExtensions": { + "post": { + "tags": [ + "Clusters" + ], + "description": "Add a list of language extensions that can run within KQL queries.", + "operationId": "Clusters_AddLanguageExtensions", + "x-ms-examples": { + "KustoClusterAddLanguageExtensions": { + "$ref": "./examples/KustoClusterAddLanguageExtensions.json" + } + }, + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "languageExtensionsToAdd", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/LanguageExtensionsList" + }, + "description": "The language extensions to add." + } + ], + "responses": { + "200": { + "description": "OK." + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/removeLanguageExtensions": { + "post": { + "tags": [ + "Clusters" + ], + "description": "Remove a list of language extensions that can run within KQL queries.", + "operationId": "Clusters_RemoveLanguageExtensions", + "x-ms-examples": { + "KustoClusterRemoveLanguageExtensions": { + "$ref": "./examples/KustoClusterRemoveLanguageExtensions.json" + } + }, + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "languageExtensionsToRemove", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/LanguageExtensionsList" + }, + "description": "The language extensions to remove." + } + ], + "responses": { + "200": { + "description": "OK." + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Kusto/locations/{location}/operationresults/{operationId}": { + "get": { + "tags": [ + "OperationResults" + ], + "description": "Returns operation results.", + "operationId": "OperationsResults_Get", + "x-ms-examples": { + "KustoOperationResultsGet": { + "$ref": "./examples/KustoOperationResultsGet.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/LocationNameParameter" + }, + { + "$ref": "#/parameters/OperationIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the operation result.", + "schema": { + "$ref": "#/definitions/OperationResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "ClusterProperties": { + "properties": { + "state": { + "type": "string", + "readOnly": true, + "description": "The state of the resource.", + "enum": [ + "Creating", + "Unavailable", + "Running", + "Deleting", + "Deleted", + "Stopping", + "Stopped", + "Starting", + "Updating" + ], + "x-ms-enum": { + "name": "State", + "modelAsString": true + } + }, + "provisioningState": { + "$ref": "#/definitions/ProvisioningState", + "description": "The provisioned state of the resource." + }, + "uri": { + "type": "string", + "readOnly": true, + "description": "The cluster URI." + }, + "dataIngestionUri": { + "type": "string", + "readOnly": true, + "description": "The cluster data ingestion URI." + }, + "stateReason": { + "type": "string", + "readOnly": true, + "description": "The reason for the cluster's current state." + }, + "trustedExternalTenants": { + "type": "array", + "items": { + "$ref": "#/definitions/TrustedExternalTenant" + }, + "description": "The cluster's external tenants." + }, + "optimizedAutoscale": { + "type": "object", + "$ref": "#/definitions/OptimizedAutoscale", + "description": "Optimized auto scale definition." + }, + "enableDiskEncryption": { + "description": "A boolean value that indicates if the cluster's disks are encrypted.", + "default": false, + "type": "boolean" + }, + "enableStreamingIngest": { + "description": "A boolean value that indicates if the streaming ingest is enabled.", + "default": false, + "type": "boolean" + }, + "virtualNetworkConfiguration": { + "type": "object", + "$ref": "#/definitions/VirtualNetworkConfiguration", + "description": "Virtual network definition." + }, + "keyVaultProperties": { + "type": "object", + "$ref": "#/definitions/KeyVaultProperties", + "description": "KeyVault properties for the cluster encryption." + }, + "enablePurge": { + "description": "A boolean value that indicates if the purge operations are enabled.", + "default": false, + "type": "boolean" + }, + "languageExtensions": { + "type": "object", + "$ref": "#/definitions/LanguageExtensionsList", + "readOnly": true, + "description": "List of the cluster's language extensions." + }, + "enableDoubleEncryption": { + "description": "A boolean value that indicates if double encryption is enabled.", + "default": false, + "type": "boolean" + }, + "engineType": { + "type": "string", + "description": "The engine type", + "enum": [ + "V2", + "V3" + ], + "x-ms-enum": { + "name": "EngineType", + "modelAsString": true + }, + "default": "V3" + } + }, + "description": "Class representing the Kusto cluster properties." + }, + "TrustedExternalTenant": { + "properties": { + "value": { + "type": "string", + "description": "GUID representing an external tenant." + } + }, + "description": "Represents a tenant ID that is trusted by the cluster." + }, + "AzureResourceSku": { + "properties": { + "resourceType": { + "type": "string", + "description": "Resource Namespace and Type." + }, + "sku": { + "$ref": "#/definitions/AzureSku", + "description": "The SKU details." + }, + "capacity": { + "$ref": "#/definitions/AzureCapacity", + "description": "The number of instances of the cluster." + } + }, + "description": "Azure resource SKU definition." + }, + "AzureCapacity": { + "type": "object", + "required": [ + "minimum", + "maximum", + "default", + "scaleType" + ], + "properties": { + "scaleType": { + "description": "Scale type.", + "type": "string", + "enum": [ + "automatic", + "manual", + "none" + ], + "x-ms-enum": { + "name": "AzureScaleType", + "modelAsString": true + } + }, + "minimum": { + "description": "Minimum allowed capacity.", + "type": "integer", + "format": "int32" + }, + "maximum": { + "description": "Maximum allowed capacity.", + "type": "integer", + "format": "int32" + }, + "default": { + "description": "The default capacity that would be used.", + "type": "integer", + "format": "int32" + } + }, + "description": "Azure capacity definition." + }, + "SkuDescriptionList": { + "description": "The list of the EngagementFabric SKU descriptions", + "type": "object", + "properties": { + "value": { + "description": "SKU descriptions", + "type": "array", + "items": { + "$ref": "#/definitions/SkuDescription" + }, + "readOnly": true + } + } + }, + "SkuDescription": { + "description": "The Kusto SKU description of given resource type", + "type": "object", + "properties": { + "resourceType": { + "description": "The resource type", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The name of the SKU", + "type": "string", + "readOnly": true + }, + "tier": { + "description": "The tier of the SKU", + "type": "string", + "readOnly": true + }, + "locations": { + "description": "The set of locations that the SKU is available", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "locationInfo": { + "description": "Locations and zones", + "type": "array", + "items": { + "$ref": "#/definitions/SkuLocationInfoItem" + }, + "readOnly": true + }, + "restrictions": { + "description": "The restrictions because of which SKU cannot be used", + "type": "array", + "items": { + "type": "object" + }, + "readOnly": true + } + } + }, + "SkuLocationInfoItem": { + "description": "The locations and zones info for SKU.", + "type": "object", + "required": [ + "location" + ], + "properties": { + "location": { + "description": "The available location of the SKU.", + "type": "string" + }, + "zones": { + "description": "The available zone of the SKU.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "AzureSku": { + "type": "object", + "required": [ + "name", + "tier" + ], + "properties": { + "name": { + "description": "SKU name.", + "type": "string", + "enum": [ + "Standard_DS13_v2+1TB_PS", + "Standard_DS13_v2+2TB_PS", + "Standard_DS14_v2+3TB_PS", + "Standard_DS14_v2+4TB_PS", + "Standard_D13_v2", + "Standard_D14_v2", + "Standard_L8s", + "Standard_L16s", + "Standard_L8s_v2", + "Standard_L16s_v2", + "Standard_D11_v2", + "Standard_D12_v2", + "Standard_L4s", + "Dev(No SLA)_Standard_D11_v2", + "Standard_E64i_v3", + "Standard_E80ids_v4", + "Standard_E2a_v4", + "Standard_E4a_v4", + "Standard_E8a_v4", + "Standard_E16a_v4", + "Standard_E8as_v4+1TB_PS", + "Standard_E8as_v4+2TB_PS", + "Standard_E16as_v4+3TB_PS", + "Standard_E16as_v4+4TB_PS", + "Dev(No SLA)_Standard_E2a_v4" + ], + "x-ms-enum": { + "name": "AzureSkuName", + "modelAsString": true + } + }, + "capacity": { + "description": "The number of instances of the cluster.", + "type": "integer", + "format": "int32" + }, + "tier": { + "description": "SKU tier.", + "type": "string", + "enum": [ + "Basic", + "Standard" + ], + "x-ms-enum": { + "name": "AzureSkuTier", + "modelAsString": true + } + } + }, + "description": "Azure SKU definition." + }, + "Zones": { + "description": "An array represents the availability zones of the cluster.", + "type": "array", + "items": { + "type": "string" + } + }, + "OptimizedAutoscale": { + "type": "object", + "required": [ + "version", + "isEnabled", + "minimum", + "maximum" + ], + "properties": { + "version": { + "description": "The version of the template defined, for instance 1.", + "type": "integer", + "format": "int32" + }, + "isEnabled": { + "description": "A boolean value that indicate if the optimized autoscale feature is enabled or not.", + "type": "boolean" + }, + "minimum": { + "description": "Minimum allowed instances count.", + "type": "integer", + "format": "int32" + }, + "maximum": { + "description": "Maximum allowed instances count.", + "type": "integer", + "format": "int32" + } + }, + "description": "A class that contains the optimized auto scale definition." + }, + "VirtualNetworkConfiguration": { + "type": "object", + "required": [ + "subnetId", + "enginePublicIpId", + "dataManagementPublicIpId" + ], + "properties": { + "subnetId": { + "description": "The subnet resource id.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "enginePublicIpId": { + "description": "Engine service's public IP address resource id.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "dataManagementPublicIpId": { + "description": "Data management's service public IP address resource id.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + } + }, + "description": "A class that contains virtual network definition." + }, + "DatabaseStatistics": { + "type": "object", + "readOnly": true, + "properties": { + "size": { + "type": "number", + "description": "The database size - the total size of compressed data and index in bytes." + } + }, + "description": "A class that contains database statistics information." + }, + "AttachedDatabaseConfigurationProperties": { + "properties": { + "provisioningState": { + "$ref": "#/definitions/ProvisioningState", + "description": "The provisioned state of the resource." + }, + "databaseName": { + "type": "string", + "description": "The name of the database which you would like to attach, use * if you want to follow all current and future databases." + }, + "clusterResourceId": { + "type": "string", + "description": "The resource id of the cluster where the databases you would like to attach reside." + }, + "attachedDatabaseNames": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "description": "The list of databases from the clusterResourceId which are currently attached to the cluster." + }, + "defaultPrincipalsModificationKind": { + "type": "string", + "enum": [ + "Union", + "Replace", + "None" + ], + "x-ms-enum": { + "name": "DefaultPrincipalsModificationKind", + "modelAsString": true + }, + "description": "The default principals modification kind" + }, + "tableLevelSharingProperties": { + "type": "object", + "$ref": "#/definitions/TableLevelSharingProperties", + "description": "Table level sharing specifications" + } + }, + "description": "Class representing the an attached database configuration properties of kind specific.", + "required": [ + "databaseName", + "clusterResourceId", + "defaultPrincipalsModificationKind" + ] + }, + "ReadWriteDatabaseProperties": { + "properties": { + "provisioningState": { + "$ref": "#/definitions/ProvisioningState", + "description": "The provisioned state of the resource." + }, + "softDeletePeriod": { + "type": "string", + "format": "duration", + "description": "The time the data should be kept before it stops being accessible to queries in TimeSpan." + }, + "hotCachePeriod": { + "type": "string", + "format": "duration", + "description": "The time the data should be kept in cache for fast queries in TimeSpan." + }, + "statistics": { + "$ref": "#/definitions/DatabaseStatistics", + "description": "The statistics of the database." + }, + "isFollowed": { + "type": "boolean", + "readOnly": true, + "description": "Indicates whether the database is followed." + } + }, + "description": "Class representing the Kusto database properties." + }, + "ReadOnlyFollowingDatabaseProperties": { + "properties": { + "provisioningState": { + "$ref": "#/definitions/ProvisioningState", + "description": "The provisioned state of the resource." + }, + "softDeletePeriod": { + "type": "string", + "readOnly": true, + "format": "duration", + "description": "The time the data should be kept before it stops being accessible to queries in TimeSpan." + }, + "hotCachePeriod": { + "type": "string", + "format": "duration", + "description": "The time the data should be kept in cache for fast queries in TimeSpan." + }, + "statistics": { + "$ref": "#/definitions/DatabaseStatistics", + "description": "The statistics of the database." + }, + "leaderClusterResourceId": { + "type": "string", + "readOnly": true, + "description": "The name of the leader cluster" + }, + "attachedDatabaseConfigurationName": { + "type": "string", + "readOnly": true, + "description": "The name of the attached database configuration cluster" + }, + "principalsModificationKind": { + "type": "string", + "readOnly": true, + "enum": [ + "Union", + "Replace", + "None" + ], + "x-ms-enum": { + "name": "PrincipalsModificationKind", + "modelAsString": true + }, + "description": "The principals modification kind of the database" + } + }, + "description": "Class representing the Kusto database properties." + }, + "EventHubConnectionProperties": { + "properties": { + "eventHubResourceId": { + "type": "string", + "description": "The resource ID of the event hub to be used to create a data connection." + }, + "consumerGroup": { + "type": "string", + "description": "The event hub consumer group." + }, + "tableName": { + "type": "string", + "description": "The table where the data should be ingested. Optionally the table information can be added to each message." + }, + "mappingRuleName": { + "type": "string", + "description": "The mapping rule to be used to ingest the data. Optionally the mapping information can be added to each message." + }, + "dataFormat": { + "$ref": "#/definitions/EventHubDataFormat", + "description": "The data format of the message. Optionally the data format can be added to each message." + }, + "eventSystemProperties": { + "type": "array", + "items": { + "type": "string" + }, + "description": "System properties of the event hub" + }, + "compression": { + "$ref": "#/definitions/Compression", + "description": "The event hub messages compression type" + }, + "provisioningState": { + "$ref": "#/definitions/ProvisioningState", + "description": "The provisioned state of the resource." + }, + "managedIdentityResourceId": { + "type": "string", + "description": "The resource ID of a managed identity (system or user assigned) to be used to authenticate with event hub." + } + }, + "required": [ + "eventHubResourceId", + "consumerGroup" + ], + "description": "Class representing the Kusto event hub connection properties." + }, + "IotHubConnectionProperties": { + "properties": { + "iotHubResourceId": { + "type": "string", + "description": "The resource ID of the Iot hub to be used to create a data connection." + }, + "consumerGroup": { + "type": "string", + "description": "The iot hub consumer group." + }, + "tableName": { + "type": "string", + "description": "The table where the data should be ingested. Optionally the table information can be added to each message." + }, + "mappingRuleName": { + "type": "string", + "description": "The mapping rule to be used to ingest the data. Optionally the mapping information can be added to each message." + }, + "dataFormat": { + "$ref": "#/definitions/IotHubDataFormat", + "description": "The data format of the message. Optionally the data format can be added to each message." + }, + "eventSystemProperties": { + "type": "array", + "items": { + "type": "string" + }, + "description": "System properties of the iot hub" + }, + "sharedAccessPolicyName": { + "type": "string", + "description": "The name of the share access policy" + }, + "provisioningState": { + "$ref": "#/definitions/ProvisioningState", + "description": "The provisioned state of the resource." + } + }, + "required": [ + "iotHubResourceId", + "consumerGroup", + "sharedAccessPolicyName" + ], + "description": "Class representing the Kusto Iot hub connection properties." + }, + "EventHubDataFormat": { + "description": "The data format of the message. Optionally the data format can be added to each message.", + "type": "string", + "enum": [ + "MULTIJSON", + "JSON", + "CSV", + "TSV", + "SCSV", + "SOHSV", + "PSV", + "TXT", + "RAW", + "SINGLEJSON", + "AVRO", + "TSVE", + "PARQUET", + "ORC", + "APACHEAVRO", + "W3CLOGFILE" + ], + "x-ms-enum": { + "name": "eventHubDataFormat", + "modelAsString": true + } + }, + "IotHubDataFormat": { + "description": "The data format of the message. Optionally the data format can be added to each message.", + "type": "string", + "enum": [ + "MULTIJSON", + "JSON", + "CSV", + "TSV", + "SCSV", + "SOHSV", + "PSV", + "TXT", + "RAW", + "SINGLEJSON", + "AVRO", + "TSVE", + "PARQUET", + "ORC", + "APACHEAVRO", + "W3CLOGFILE" + ], + "x-ms-enum": { + "name": "iotHubDataFormat", + "modelAsString": true + } + }, + "EventGridDataFormat": { + "description": "The data format of the message. Optionally the data format can be added to each message.", + "type": "string", + "enum": [ + "MULTIJSON", + "JSON", + "CSV", + "TSV", + "SCSV", + "SOHSV", + "PSV", + "TXT", + "RAW", + "SINGLEJSON", + "AVRO", + "TSVE", + "PARQUET", + "ORC", + "APACHEAVRO", + "W3CLOGFILE" + ], + "x-ms-enum": { + "name": "eventGridDataFormat", + "modelAsString": true + } + }, + "BlobStorageEventType": { + "description": "The name of blob storage event type to process.", + "type": "string", + "enum": [ + "Microsoft.Storage.BlobCreated", + "Microsoft.Storage.BlobRenamed" + ], + "x-ms-enum": { + "name": "blobStorageEventType", + "modelAsString": true + } + }, + "Compression": { + "description": "The compression type", + "type": "string", + "enum": [ + "None", + "GZip" + ], + "x-ms-enum": { + "name": "compression", + "modelAsString": true + }, + "default": "None" + }, + "EventGridConnectionProperties": { + "properties": { + "storageAccountResourceId": { + "type": "string", + "description": "The resource ID of the storage account where the data resides." + }, + "eventHubResourceId": { + "type": "string", + "description": "The resource ID where the event grid is configured to send events." + }, + "consumerGroup": { + "type": "string", + "description": "The event hub consumer group." + }, + "tableName": { + "type": "string", + "description": "The table where the data should be ingested. Optionally the table information can be added to each message." + }, + "mappingRuleName": { + "type": "string", + "description": "The mapping rule to be used to ingest the data. Optionally the mapping information can be added to each message." + }, + "dataFormat": { + "$ref": "#/definitions/EventGridDataFormat", + "description": "The data format of the message. Optionally the data format can be added to each message." + }, + "ignoreFirstRecord": { + "type": "boolean", + "description": "A Boolean value that, if set to true, indicates that ingestion should ignore the first record of every file" + }, + "blobStorageEventType": { + "$ref": "#/definitions/BlobStorageEventType", + "description": "The name of blob storage event type to process." + }, + "provisioningState": { + "$ref": "#/definitions/ProvisioningState", + "description": "The provisioned state of the resource." + } + }, + "required": [ + "storageAccountResourceId", + "eventHubResourceId", + "consumerGroup" + ], + "description": "Class representing the Kusto event grid connection properties." + }, + "Cluster": { + "required": [ + "sku" + ], + "properties": { + "sku": { + "$ref": "#/definitions/AzureSku", + "description": "The SKU of the cluster." + }, + "zones": { + "$ref": "#/definitions/Zones", + "description": "The availability zones of the cluster." + }, + "identity": { + "$ref": "#/definitions/Identity", + "description": "The identity of the cluster, if configured." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ClusterProperties", + "description": "The cluster properties." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/TrackedResource" + } + ], + "description": "Class representing a Kusto cluster." + }, + "ClusterUpdate": { + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-ms-mutability": [ + "read", + "create", + "update" + ], + "description": "Resource tags." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "sku": { + "$ref": "#/definitions/AzureSku", + "description": "The SKU of the cluster." + }, + "identity": { + "$ref": "#/definitions/Identity", + "description": "The identity of the cluster, if configured." + }, + "properties": { + "x-ms-client-flatten": true, + "description": "The cluster properties.", + "$ref": "#/definitions/ClusterProperties" + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "description": "Class representing an update to a Kusto cluster." + }, + "AttachedDatabaseConfigurationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AttachedDatabaseConfiguration" + }, + "description": "The list of attached database configurations." + } + }, + "description": "The list attached database configurations operation response." + }, + "AttachedDatabaseConfiguration": { + "properties": { + "location": { + "type": "string", + "description": "Resource location." + }, + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of the attached database configuration.", + "$ref": "#/definitions/AttachedDatabaseConfigurationProperties" + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "Class representing an attached database configuration." + }, + "Database": { + "required": [ + "kind" + ], + "properties": { + "location": { + "type": "string", + "description": "Resource location." + }, + "kind": { + "description": "Kind of the database", + "enum": [ + "ReadWrite", + "ReadOnlyFollowing" + ], + "type": "string", + "x-ms-enum": { + "name": "Kind", + "modelAsString": true + } + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "Class representing a Kusto database.", + "discriminator": "kind" + }, + "ReadWriteDatabase": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The database properties.", + "$ref": "#/definitions/ReadWriteDatabaseProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Database" + } + ], + "description": "Class representing a read write database.", + "x-ms-discriminator-value": "ReadWrite" + }, + "ReadOnlyFollowingDatabase": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The database properties.", + "$ref": "#/definitions/ReadOnlyFollowingDatabaseProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Database" + } + ], + "description": "Class representing a read only following database.", + "x-ms-discriminator-value": "ReadOnlyFollowing" + }, + "DatabasePrincipal": { + "type": "object", + "required": [ + "name", + "role", + "type" + ], + "properties": { + "role": { + "description": "Database principal role.", + "type": "string", + "enum": [ + "Admin", + "Ingestor", + "Monitor", + "User", + "UnrestrictedViewer", + "Viewer" + ], + "x-ms-enum": { + "name": "DatabasePrincipalRole", + "modelAsString": true + } + }, + "name": { + "description": "Database principal name.", + "type": "string" + }, + "type": { + "description": "Database principal type.", + "type": "string", + "enum": [ + "App", + "Group", + "User" + ], + "x-ms-enum": { + "name": "DatabasePrincipalType", + "modelAsString": true + } + }, + "fqn": { + "description": "Database principal fully qualified name.", + "type": "string" + }, + "email": { + "description": "Database principal email if exists.", + "type": "string" + }, + "appId": { + "description": "Application id - relevant only for application principal type.", + "type": "string" + }, + "tenantName": { + "type": "string", + "readOnly": true, + "description": "The tenant name of the principal" + } + }, + "description": "A class representing database principal entity." + }, + "DatabasePrincipalProperties": { + "type": "object", + "required": [ + "principalId", + "role", + "principalType" + ], + "properties": { + "principalId": { + "description": "The principal ID assigned to the database principal. It can be a user email, application ID, or security group name.", + "type": "string" + }, + "role": { + "description": "Database principal role.", + "type": "string", + "enum": [ + "Admin", + "Ingestor", + "Monitor", + "User", + "UnrestrictedViewer", + "Viewer" + ], + "x-ms-enum": { + "name": "DatabasePrincipalRole", + "modelAsString": true + } + }, + "tenantId": { + "type": "string", + "description": "The tenant id of the principal" + }, + "principalType": { + "description": "Principal type.", + "type": "string", + "enum": [ + "App", + "Group", + "User" + ], + "x-ms-enum": { + "name": "PrincipalType", + "modelAsString": true + } + }, + "tenantName": { + "type": "string", + "readOnly": true, + "description": "The tenant name of the principal" + }, + "principalName": { + "type": "string", + "readOnly": true, + "description": "The principal name" + }, + "provisioningState": { + "$ref": "#/definitions/ProvisioningState", + "description": "The provisioned state of the resource." + } + }, + "description": "A class representing database principal property." + }, + "ClusterPrincipalProperties": { + "type": "object", + "required": [ + "principalId", + "role", + "principalType" + ], + "properties": { + "principalId": { + "description": "The principal ID assigned to the cluster principal. It can be a user email, application ID, or security group name.", + "type": "string" + }, + "role": { + "description": "Cluster principal role.", + "type": "string", + "enum": [ + "AllDatabasesAdmin", + "AllDatabasesViewer" + ], + "x-ms-enum": { + "name": "ClusterPrincipalRole", + "modelAsString": true + } + }, + "tenantId": { + "type": "string", + "description": "The tenant id of the principal" + }, + "principalType": { + "description": "Principal type.", + "type": "string", + "enum": [ + "App", + "Group", + "User" + ], + "x-ms-enum": { + "name": "PrincipalType", + "modelAsString": true + } + }, + "tenantName": { + "type": "string", + "readOnly": true, + "description": "The tenant name of the principal" + }, + "principalName": { + "type": "string", + "readOnly": true, + "description": "The principal name" + }, + "provisioningState": { + "$ref": "#/definitions/ProvisioningState", + "description": "The provisioned state of the resource." + } + }, + "description": "A class representing cluster principal property." + }, + "ScriptProperties": { + "type": "object", + "required": [ + "scriptUrl", + "scriptUrlSasToken" + ], + "properties": { + "scriptUrl": { + "description": "The url to the KQL script blob file.", + "type": "string" + }, + "scriptUrlSasToken": { + "description": "The SaS token.", + "type": "string", + "x-ms-mutability": [ + "create" + ], + "x-ms-secret": true + }, + "forceUpdateTag": { + "description": "A unique string. If changed the script will be applied again.", + "type": "string" + }, + "continueOnErrors": { + "description": "Flag that indicates whether to continue if one of the command fails.", + "type": "boolean", + "default": false + }, + "provisioningState": { + "$ref": "#/definitions/ProvisioningState", + "description": "The provisioned state of the resource." + } + }, + "description": "A class representing database script property." + }, + "DatabasePrincipalAssignment": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DatabasePrincipalProperties", + "description": "The database principal." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "Class representing a database principal assignment." + }, + "ClusterPrincipalAssignment": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ClusterPrincipalProperties", + "description": "The cluster principal." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "Class representing a cluster principal assignment." + }, + "ScriptListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Script" + }, + "description": "The list of Kusto scripts." + } + }, + "description": "The list Kusto database script operation response." + }, + "Script": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ScriptProperties", + "description": "The database script." + }, + "systemData": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData", + "readOnly": true + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "Class representing a database script." + }, + "ClusterListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Cluster" + }, + "description": "The list of Kusto clusters." + } + }, + "description": "The list Kusto clusters operation response." + }, + "DatabaseListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Database" + }, + "description": "The list of Kusto databases." + } + }, + "description": "The list Kusto databases operation response." + }, + "DatabasePrincipalAssignmentListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DatabasePrincipalAssignment" + }, + "description": "The list of Kusto database principal assignments." + } + }, + "description": "The list Kusto database principal assignments operation response." + }, + "ClusterPrincipalAssignmentListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ClusterPrincipalAssignment" + }, + "description": "The list of Kusto cluster principal assignments." + } + }, + "description": "The list Kusto cluster principal assignments operation response." + }, + "DatabasePrincipalListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DatabasePrincipal" + }, + "description": "The list of Kusto database principals." + } + }, + "description": "The list Kusto database principals operation response." + }, + "FollowerDatabaseListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/FollowerDatabaseDefinition" + }, + "description": "The list of follower database result." + } + }, + "description": "The list Kusto database principals operation response." + }, + "DataConnection": { + "required": [ + "kind" + ], + "properties": { + "location": { + "type": "string", + "description": "Resource location." + }, + "kind": { + "description": "Kind of the endpoint for the data connection", + "enum": [ + "EventHub", + "EventGrid", + "IotHub" + ], + "type": "string", + "x-ms-enum": { + "name": "DataConnectionKind", + "modelAsString": true + } + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "Class representing an data connection.", + "discriminator": "kind" + }, + "DataConnectionValidationResult": { + "type": "object", + "properties": { + "errorMessage": { + "type": "string", + "description": "A message which indicates a problem in data connection validation." + } + }, + "description": "The result returned from a data connection validation request." + }, + "DatabasePrincipalListRequest": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DatabasePrincipal" + }, + "description": "The list of Kusto database principals." + } + }, + "description": "The list Kusto database principals operation request." + }, + "FollowerDatabaseDefinition": { + "type": "object", + "required": [ + "clusterResourceId", + "attachedDatabaseConfigurationName" + ], + "properties": { + "clusterResourceId": { + "type": "string", + "description": "Resource id of the cluster that follows a database owned by this cluster." + }, + "attachedDatabaseConfigurationName": { + "type": "string", + "description": "Resource name of the attached database configuration in the follower cluster." + }, + "databaseName": { + "type": "string", + "readOnly": true, + "description": "The database name owned by this cluster that was followed. * in case following all databases." + } + }, + "description": "A class representing follower database request." + }, + "DiagnoseVirtualNetworkResult": { + "properties": { + "findings": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of network connectivity diagnostic finding" + } + } + }, + "DataConnectionValidation": { + "properties": { + "dataConnectionName": { + "type": "string", + "description": "The name of the data connection." + }, + "properties": { + "$ref": "#/definitions/DataConnection", + "description": "The data connection properties to validate." + } + }, + "description": "Class representing an data connection validation." + }, + "EventHubDataConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The Event Hub data connection properties to validate.", + "$ref": "#/definitions/EventHubConnectionProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/DataConnection" + } + ], + "description": "Class representing an event hub data connection.", + "x-ms-discriminator-value": "EventHub" + }, + "IotHubDataConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The Iot Hub data connection properties.", + "$ref": "#/definitions/IotHubConnectionProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/DataConnection" + } + ], + "description": "Class representing an iot hub data connection.", + "x-ms-discriminator-value": "IotHub" + }, + "EventGridDataConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of the Event Grid data connection.", + "$ref": "#/definitions/EventGridConnectionProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/DataConnection" + } + ], + "description": "Class representing an Event Grid data connection.", + "x-ms-discriminator-value": "EventGrid" + }, + "DataConnectionValidationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DataConnectionValidationResult" + }, + "description": "The list of Kusto data connection validation errors." + } + }, + "description": "The list Kusto data connection validation result." + }, + "DataConnectionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DataConnection" + }, + "description": "The list of Kusto data connections." + } + }, + "description": "The list Kusto data connections operation response." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorBody", + "description": "An error response from Kusto." + } + }, + "description": "An error response from Kusto." + }, + "ClusterCheckNameRequest": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Cluster name." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Kusto/clusters" + ], + "x-ms-enum": { + "name": "ClusterType", + "modelAsString": false + }, + "description": "The type of resource, Microsoft.Kusto/clusters." + } + }, + "required": [ + "name", + "type" + ], + "description": "The result returned from a cluster check name availability request." + }, + "CheckNameRequest": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Resource name." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Kusto/clusters/databases", + "Microsoft.Kusto/clusters/attachedDatabaseConfigurations" + ], + "x-ms-enum": { + "name": "Type", + "modelAsString": false + }, + "description": "The type of resource, for instance Microsoft.Kusto/clusters/databases." + } + }, + "required": [ + "name", + "type" + ], + "description": "The result returned from a database check name availability request." + }, + "ClusterPrincipalAssignmentCheckNameRequest": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Principal Assignment resource name." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Kusto/clusters/principalAssignments" + ], + "x-ms-enum": { + "name": "PrincipalAssignmentType", + "modelAsString": false + }, + "description": "The type of resource, Microsoft.Kusto/clusters/principalAssignments." + } + }, + "required": [ + "name", + "type" + ], + "description": "A principal assignment check name availability request." + }, + "DataConnectionCheckNameRequest": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Data Connection name." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Kusto/clusters/databases/dataConnections" + ], + "x-ms-enum": { + "name": "DataConnectionType", + "modelAsString": false + }, + "description": "The type of resource, Microsoft.Kusto/clusters/databases/dataConnections." + } + }, + "required": [ + "name", + "type" + ], + "description": "A data connection check name availability request." + }, + "ScriptCheckNameRequest": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Script name." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Kusto/clusters/databases/scripts" + ], + "x-ms-enum": { + "name": "ScriptType", + "modelAsString": false + }, + "description": "The type of resource, Microsoft.Kusto/clusters/databases/scripts." + } + }, + "required": [ + "name", + "type" + ], + "description": "A script name availability request." + }, + "DatabasePrincipalAssignmentCheckNameRequest": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Principal Assignment resource name." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Kusto/clusters/databases/principalAssignments" + ], + "x-ms-enum": { + "name": "DatabasePrincipalAssignmentType", + "modelAsString": false + }, + "description": "The type of resource, Microsoft.Kusto/clusters/databases/principalAssignments." + } + }, + "required": [ + "name", + "type" + ], + "description": "A principal assignment check name availability request." + }, + "CheckNameResult": { + "type": "object", + "properties": { + "nameAvailable": { + "type": "boolean", + "description": "Specifies a Boolean value that indicates if the name is available." + }, + "name": { + "type": "string", + "description": "The name that was checked." + }, + "message": { + "type": "string", + "description": "Message indicating an unavailable name due to a conflict, or a description of the naming rules that are violated." + }, + "reason": { + "type": "string", + "enum": [ + "Invalid", + "AlreadyExists" + ], + "x-ms-enum": { + "name": "reason", + "modelAsString": true + }, + "description": "Message providing the reason why the given name is invalid." + } + }, + "description": "The result returned from a check name availability request." + }, + "ListResourceSkusResult": { + "description": "List of available SKUs for a Kusto Cluster.", + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureResourceSku" + }, + "description": "The collection of available SKUs for an existing resource." + } + } + }, + "CloudErrorBody": { + "x-ms-external": true, + "properties": { + "code": { + "type": "string", + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "type": "string", + "description": "A message describing the error, intended to be suitable for displaying in a user interface." + }, + "target": { + "type": "string", + "description": "The target of the particular error. For example, the name of the property in error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/CloudErrorBody" + }, + "description": "A list of additional details about the error." + } + }, + "description": "An error response from Kusto." + }, + "OperationListResult": { + "title": "Result of the request to list REST API operations. It contains a list of operations and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "title": "The list of operations supported by the resource provider." + }, + "nextLink": { + "type": "string", + "title": "The URL to get the next set of operation list results if there are any." + } + } + }, + "Operation": { + "title": "A REST API operation", + "type": "object", + "properties": { + "name": { + "title": "The operation name.", + "description": "This is of the format {provider}/{resource}/{operation}.", + "type": "string" + }, + "display": { + "title": "The object that describes the operation.", + "properties": { + "provider": { + "title": "Friendly name of the resource provider.", + "type": "string" + }, + "operation": { + "title": "The operation type.", + "description": "For example: read, write, delete.", + "type": "string" + }, + "resource": { + "title": "The resource type on which the operation is performed.", + "type": "string" + }, + "description": { + "title": "The friendly name of the operation.", + "type": "string" + } + } + }, + "origin": { + "title": "The intended executor of the operation.", + "type": "string" + }, + "properties": { + "title": "Properties of the operation.", + "type": "object", + "x-ms-client-flatten": true + } + } + }, + "Identity": { + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal ID of resource identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant ID of resource." + }, + "type": { + "type": "string", + "description": "The type of managed identity used. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user-assigned identities. The type 'None' will remove all identities.", + "enum": [ + "None", + "SystemAssigned", + "UserAssigned", + "SystemAssigned, UserAssigned" + ], + "x-ms-enum": { + "name": "IdentityType", + "modelAsString": true + } + }, + "userAssignedIdentities": { + "type": "object", + "additionalProperties": { + "type": "object", + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of user assigned identity." + }, + "clientId": { + "readOnly": true, + "type": "string", + "description": "The client id of user assigned identity." + } + } + }, + "description": "The list of user identities associated with the Kusto cluster. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'." + } + }, + "required": [ + "type" + ], + "description": "Identity for the resource." + }, + "KeyVaultProperties": { + "description": "Properties of the key vault.", + "required": [ + "keyName", + "keyVaultUri" + ], + "properties": { + "keyName": { + "type": "string", + "description": "The name of the key vault key.", + "x-ms-client-name": "KeyName" + }, + "keyVersion": { + "type": "string", + "description": "The version of the key vault key.", + "x-ms-client-name": "KeyVersion" + }, + "keyVaultUri": { + "type": "string", + "description": "The Uri of the key vault.", + "x-ms-client-name": "KeyVaultUri" + }, + "userIdentity": { + "type": "string", + "description": "The user assigned identity (ARM resource id) that has access to the key.", + "x-ms-client-name": "UserIdentity" + } + } + }, + "LanguageExtensionName": { + "description": "Language extension that can run within KQL query.", + "type": "string", + "enum": [ + "PYTHON", + "R" + ], + "x-ms-enum": { + "name": "languageExtensionName", + "modelAsString": true + } + }, + "LanguageExtension": { + "type": "object", + "description": "The language extension object.", + "properties": { + "languageExtensionName": { + "$ref": "#/definitions/LanguageExtensionName", + "description": "The language extension name." + } + } + }, + "LanguageExtensionsList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/LanguageExtension" + }, + "description": "The list of language extensions." + } + }, + "description": "The list of language extension objects." + }, + "ProvisioningState": { + "type": "string", + "readOnly": true, + "description": "The provisioned state of the resource.", + "enum": [ + "Running", + "Creating", + "Deleting", + "Succeeded", + "Failed", + "Moving" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "OperationResult": { + "description": "Operation Result Entity.", + "type": "object", + "properties": { + "id": { + "readOnly": true, + "description": "ID of the resource.", + "type": "string" + }, + "name": { + "readOnly": true, + "description": "Name of the resource.", + "type": "string" + }, + "status": { + "description": "status of the Operation result.", + "$ref": "#/definitions/Status" + }, + "startTime": { + "description": "The operation start time", + "type": "string", + "format": "date-time" + }, + "endTime": { + "description": "The operation end time", + "type": "string", + "format": "date-time" + }, + "percentComplete": { + "type": "number", + "format": "double", + "minimum": 0, + "maximum": 100, + "description": "Percentage completed." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/OperationResultProperties", + "description": "Properties of the operation results" + }, + "error": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/OperationResultErrorProperties", + "description": "Object that contains the error code and message if the operation failed." + } + } + }, + "Status": { + "readOnly": true, + "description": "The status of operation.", + "type": "string", + "enum": [ + "Succeeded", + "Canceled", + "Failed", + "Running" + ], + "x-ms-enum": { + "name": "Status", + "modelAsString": true + } + }, + "OperationResultProperties": { + "properties": { + "operationKind": { + "type": "string", + "description": "The kind of the operation." + }, + "operationState": { + "type": "string", + "description": "The state of the operation." + } + }, + "description": "Operation result properties" + }, + "OperationResultErrorProperties": { + "properties": { + "code": { + "type": "string", + "description": "The code of the error." + }, + "message": { + "type": "string", + "description": "The error message." + } + }, + "description": "Operation result error properties" + }, + "TableLevelSharingProperties": { + "properties": { + "tablesToInclude": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of tables to include in the follower database" + }, + "tablesToExclude": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of tables to exclude from the follower database" + }, + "externalTablesToInclude": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of external tables to include in the follower database" + }, + "externalTablesToExclude": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of external tables exclude from the follower database" + }, + "materializedViewsToInclude": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of materialized views to include in the follower database" + }, + "materializedViewsToExclude": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of materialized views exclude from the follower database" + } + }, + "description": "Tables that will be included and excluded in the follower database" + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Gets subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client API Version." + }, + "ClusterNameParameter": { + "name": "clusterName", + "in": "path", + "description": "The name of the Kusto cluster.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "LocationNameParameter": { + "name": "location", + "in": "path", + "description": "Azure location (region) name.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "AttachedDatabaseConfigurationNameParameter": { + "name": "attachedDatabaseConfigurationName", + "in": "path", + "description": "The name of the attached database configuration.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ResourceGroupParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group containing the Kusto cluster.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "DatabaseNameParameter": { + "name": "databaseName", + "in": "path", + "description": "The name of the database in the Kusto cluster.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "DataConnectionNameParameter": { + "name": "dataConnectionName", + "in": "path", + "description": "The name of the data connection.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "PrincipalAssignmentNameParameter": { + "name": "principalAssignmentName", + "in": "path", + "description": "The name of the Kusto principalAssignment.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ScriptNameParameter": { + "name": "scriptName", + "in": "path", + "description": "The name of the Kusto database script.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "OperationIdParameter": { + "name": "operationId", + "in": "path", + "description": "The Guid of the operation ID", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/readme.azureresourceschema.md b/specification/azure-kusto/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 46ee42dcd92b..000000000000 --- a/specification/azure-kusto/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,108 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-kusto-2020-09-18 - - tag: schema-kusto-2020-06-14 - - tag: schema-kusto-2020-02-15 - - tag: schema-kusto-2019-11-09 - - tag: schema-kusto-2019-09-07 - - tag: schema-kusto-2019-05-15 - - tag: schema-kusto-2019-01-21 - - tag: schema-kusto-2018-09-07-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-kusto-2020-09-18 and azureresourceschema - -``` yaml $(tag) == 'schema-kusto-2020-09-18' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Kusto/stable/2020-09-18/kusto.json - -``` - -### Tag: schema-kusto-2020-06-14 and azureresourceschema - -``` yaml $(tag) == 'schema-kusto-2020-06-14' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Kusto/stable/2020-06-14/kusto.json - -``` - -### Tag: schema-kusto-2020-02-15 and azureresourceschema - -``` yaml $(tag) == 'schema-kusto-2020-02-15' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Kusto/stable/2020-02-15/kusto.json - -``` - -### Tag: schema-kusto-2019-11-09 and azureresourceschema - -``` yaml $(tag) == 'schema-kusto-2019-11-09' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Kusto/stable/2019-11-09/kusto.json - -``` - -### Tag: schema-kusto-2019-09-07 and azureresourceschema - -``` yaml $(tag) == 'schema-kusto-2019-09-07' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Kusto/stable/2019-09-07/kusto.json - -``` - -### Tag: schema-kusto-2019-05-15 and azureresourceschema - -``` yaml $(tag) == 'schema-kusto-2019-05-15' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Kusto/stable/2019-05-15/kusto.json - -``` - -### Tag: schema-kusto-2019-01-21 and azureresourceschema - -``` yaml $(tag) == 'schema-kusto-2019-01-21' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Kusto/stable/2019-01-21/kusto.json - -``` - -### Tag: schema-kusto-2018-09-07-preview and azureresourceschema - -``` yaml $(tag) == 'schema-kusto-2018-09-07-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Kusto/preview/2018-09-07-preview/kusto.json - -``` diff --git a/specification/azure-kusto/resource-manager/readme.go.md b/specification/azure-kusto/resource-manager/readme.go.md index 53a36056359e..54358207664f 100644 --- a/specification/azure-kusto/resource-manager/readme.go.md +++ b/specification/azure-kusto/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: kusto clear-output-folder: true ``` @@ -13,6 +13,7 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-2021-01 - tag: package-2020-09-18 - tag: package-2018-09-07-preview - tag: package-2019-01-21 @@ -22,6 +23,14 @@ batch: - tag: package-2020-02-15 - tag: package-2020-06-14 ``` +### Tag: package-2021-01 and go + +These settings apply only when `--tag=package-2021-01 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2021-01' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2021-01-01/$(namespace) +``` ### Tag: package-2020-09-18 and go diff --git a/specification/azure-kusto/resource-manager/readme.md b/specification/azure-kusto/resource-manager/readme.md index c02cb62ac581..3df94ea80244 100644 --- a/specification/azure-kusto/resource-manager/readme.md +++ b/specification/azure-kusto/resource-manager/readme.md @@ -28,18 +28,27 @@ These are the global settings for the Kusto API. title: KustoManagementClient description: 'The Azure Kusto management API provides a RESTful set of web services that interact with Azure Kusto services to manage your clusters and databases. The API enables you to create, update, and delete clusters and databases.' openapi-type: arm -tag: package-2020-09-18 +tag: package-2021-01 ``` +### Tag: package-2021-01 + +These settings apply only when `--tag=package-2021-01` is specified on the command line. + +```yaml $(tag) == 'package-2021-01' +input-file: + - Microsoft.Kusto/stable/2021-01-01/kusto.json +``` ### Tag: package-2020-09-18 These settings apply only when `--tag=package-2020-09-18` is specified on the command line. -```yaml $(tag) == 'package-2020-09-18' +``` yaml $(tag) == 'package-2020-09-18' input-file: - Microsoft.Kusto/stable/2020-09-18/kusto.json ``` + ### Tag: package-2020-06-14 These settings apply only when `--tag=package-2020-06-14` is specified on the command line. @@ -185,8 +194,6 @@ swagger-to-sdk: - repo: azure-sdk-for-java - repo: azure-cli-extensions - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js azure-kusto/resource-manager ``` ## C# @@ -207,9 +214,7 @@ csharp: See configuration in [readme.java.md](./readme.java.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) ## Suppression diff --git a/specification/azureactivedirectory/resource-manager/readme.azureresourceschema.md b/specification/azureactivedirectory/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index b6bab336b329..000000000000 --- a/specification/azureactivedirectory/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,49 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-aadiam-2020-07-01-preview - - tag: schema-aadiam-2020-03-01-preview - - tag: schema-aadiam-2017-04-01 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-aadiam-2020-07-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-aadiam-2020-07-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Aadiam/preview/2020-07-01-preview/azureADMetrics.json - -``` - -### Tag: schema-aadiam-2020-03-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-aadiam-2020-03-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Aadiam/preview/2020-03-01-preview/privateLinkForAzureAD.json - - Microsoft.Aadiam/preview/2020-03-01-preview/privateLinkResources.json - -``` - -### Tag: schema-aadiam-2017-04-01 and azureresourceschema - -``` yaml $(tag) == 'schema-aadiam-2017-04-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Aadiam/stable/2017-04-01/azureactivedirectory.json - -``` diff --git a/specification/azureactivedirectory/resource-manager/readme.go.md b/specification/azureactivedirectory/resource-manager/readme.go.md index 481bfe010359..121aa76ab04c 100644 --- a/specification/azureactivedirectory/resource-manager/readme.go.md +++ b/specification/azureactivedirectory/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ```yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: aad clear-output-folder: true ``` diff --git a/specification/azureactivedirectory/resource-manager/readme.md b/specification/azureactivedirectory/resource-manager/readme.md index b84ecea4a6f7..d9d75520edba 100644 --- a/specification/azureactivedirectory/resource-manager/readme.md +++ b/specification/azureactivedirectory/resource-manager/readme.md @@ -96,8 +96,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_azureactivedirectory'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js azureactivedirectory/resource-manager ``` ## Go @@ -120,7 +118,5 @@ See configuration in [readme.typescript.md](./readme.typescript.md) See configuration in [readme.csharp.md](./readme.csharp.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/azuredata/resource-manager/readme.azureresourceschema.md b/specification/azuredata/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 9e9e3a071f7d..000000000000 --- a/specification/azuredata/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,24 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-azuredata-2019-07-24-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-azuredata-2019-07-24-preview and azureresourceschema - -``` yaml $(tag) == 'schema-azuredata-2019-07-24-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.AzureData/preview/2019-07-24-preview/azuredata.json - -``` diff --git a/specification/azuredata/resource-manager/readme.go.md b/specification/azuredata/resource-manager/readme.go.md index 844b0ee468c8..7fa9aea5d573 100644 --- a/specification/azuredata/resource-manager/readme.go.md +++ b/specification/azuredata/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ```yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION clear-output-folder: true namespace: azuredata ``` diff --git a/specification/azuredata/resource-manager/readme.md b/specification/azuredata/resource-manager/readme.md index c2582d6cd618..197ce3a68cca 100644 --- a/specification/azuredata/resource-manager/readme.md +++ b/specification/azuredata/resource-manager/readme.md @@ -66,8 +66,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_azuredata'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js azuredata/resource-manager ``` ## Go @@ -90,7 +88,5 @@ See configuration in [readme.typescript.md](./readme.typescript.md) See configuration in [readme.csharp.md](./readme.csharp.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/azurestack/resource-manager/readme.azureresourceschema.md b/specification/azurestack/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 9ea18acc5c17..000000000000 --- a/specification/azurestack/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,57 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-azurestack-2020-06-01-preview - - tag: schema-azurestack-2017-06-01 - - tag: schema-azurestack-2016-01-01 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-azurestack-2020-06-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-azurestack-2020-06-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.AzureStack/preview/2020-06-01-preview/AzureStack.json - - Microsoft.AzureStack/preview/2020-06-01-preview/CustomerSubscription.json - - Microsoft.AzureStack/preview/2020-06-01-preview/Product.json - - Microsoft.AzureStack/preview/2020-06-01-preview/Registration.json - - Microsoft.AzureStack/preview/2020-06-01-preview/LinkedSubscription.json - -``` - -### Tag: schema-azurestack-2017-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-azurestack-2017-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.AzureStack/stable/2017-06-01/AzureStack.json - - Microsoft.AzureStack/stable/2017-06-01/Product.json - - Microsoft.AzureStack/stable/2017-06-01/Registration.json - - Microsoft.AzureStack/stable/2017-06-01/CustomerSubscription.json - -``` - -### Tag: schema-azurestack-2016-01-01 and azureresourceschema - -``` yaml $(tag) == 'schema-azurestack-2016-01-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.AzureStack/stable/2016-01-01/AzureStack.json - - Microsoft.AzureStack/stable/2016-01-01/Product.json - - Microsoft.AzureStack/stable/2016-01-01/Registration.json - -``` diff --git a/specification/azurestack/resource-manager/readme.go.md b/specification/azurestack/resource-manager/readme.go.md index 6f8306627a08..be1be7876a38 100644 --- a/specification/azurestack/resource-manager/readme.go.md +++ b/specification/azurestack/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION clear-output-folder: true namespace: azurestack ``` diff --git a/specification/azurestack/resource-manager/readme.md b/specification/azurestack/resource-manager/readme.md index 3786abef6da1..1a330200bcbd 100644 --- a/specification/azurestack/resource-manager/readme.md +++ b/specification/azurestack/resource-manager/readme.md @@ -97,13 +97,12 @@ This is not used by Autorest itself. ``` yaml $(swagger-to-sdk) swagger-to-sdk: - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-java - repo: azure-sdk-for-go - repo: azure-sdk-for-js - repo: azure-sdk-for-node - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js azurestack/resource-manager ``` ## C# @@ -164,6 +163,4 @@ generate-interface: true See configuration in [readme.python.md](./readme.python.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/azurestack/resource-manager/readme.python.md b/specification/azurestack/resource-manager/readme.python.md index c2339e41165a..9a4e4bef6073 100644 --- a/specification/azurestack/resource-manager/readme.python.md +++ b/specification/azurestack/resource-manager/readme.python.md @@ -4,7 +4,7 @@ These settings apply only when `--python` is specified on the command line. Please also specify `--python-sdks-folder=`. Use `--python-mode=update` if you already have a setup.py and just want to update the code itself. -``` yaml $(python) +``` yaml $(python) && !$(track2) python-mode: create python: azure-arm: true @@ -15,14 +15,31 @@ python: package-version: 0.1.0 clear-output-folder: true ``` -``` yaml $(python) && $(python-mode) == 'update' +``` yaml $(python) && $(track2) +python-mode: create +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +namespace: azure.mgmt.azurestack +package-name: azure-mgmt-azurestack +package-version: 0.1.0 +clear-output-folder: true +``` + +``` yaml $(python) && $(python-mode) == 'update' && !$(track2) python: no-namespace-folders: true output-folder: $(python-sdks-folder)/azurestack/azure-mgmt-azurestack/azure/mgmt/azurestack ``` -``` yaml $(python) && $(python-mode) == 'create' +``` yaml $(python) && $(python-mode) == 'create' && !$(track2) python: basic-setup-py: true output-folder: $(python-sdks-folder)/azurestack/azure-mgmt-azurestack ``` - \ No newline at end of file +``` yaml $(python) && $(python-mode) == 'update' && $(track2) +no-namespace-folders: true +output-folder: $(python-sdks-folder)/azurestack/azure-mgmt-azurestack/azure/mgmt/azurestack +``` +``` yaml $(python) && $(python-mode) == 'create' && $(track2) +basic-setup-py: true +output-folder: $(python-sdks-folder)/azurestack/azure-mgmt-azurestack +``` \ No newline at end of file diff --git a/specification/azurestackhci/resource-manager/readme.azureresourceschema.md b/specification/azurestackhci/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 0997ca43ee8d..000000000000 --- a/specification/azurestackhci/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,36 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-azurestackhci-2020-10-01 - - tag: schema-azurestackhci-2020-03-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-azurestackhci-2020-10-01 and azureresourceschema - -``` yaml $(tag) == 'schema-azurestackhci-2020-10-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.AzureStackHCI/stable/2020-10-01/azurestackhci.json - -``` - -### Tag: schema-azurestackhci-2020-03-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-azurestackhci-2020-03-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.AzureStackHCI/preview/2020-03-01-preview/azurestackhci.json - -``` diff --git a/specification/azurestackhci/resource-manager/readme.go.md b/specification/azurestackhci/resource-manager/readme.go.md index 6d7b9a0233d3..a7f05b7c4929 100644 --- a/specification/azurestackhci/resource-manager/readme.go.md +++ b/specification/azurestackhci/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ```yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION clear-output-folder: true ``` diff --git a/specification/azurestackhci/resource-manager/readme.md b/specification/azurestackhci/resource-manager/readme.md index a11a60730b25..db260de2b2ec 100644 --- a/specification/azurestackhci/resource-manager/readme.md +++ b/specification/azurestackhci/resource-manager/readme.md @@ -70,7 +70,7 @@ This is not used by Autorest itself. ``` yaml $(swagger-to-sdk) swagger-to-sdk: - - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-java - repo: azure-sdk-for-go - repo: azure-sdk-for-js @@ -78,8 +78,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_azurestackhci'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js azurestackhci/resource-manager ``` ## Go @@ -106,6 +104,4 @@ See configuration in [readme.typescript.md](./readme.typescript.md) See configuration in [readme.csharp.md](./readme.csharp.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/azurestackhci/resource-manager/readme.python.md b/specification/azurestackhci/resource-manager/readme.python.md index af60fd690f3c..60ef8a5dcc18 100644 --- a/specification/azurestackhci/resource-manager/readme.python.md +++ b/specification/azurestackhci/resource-manager/readme.python.md @@ -3,24 +3,19 @@ These settings apply only when `--python` is specified on the command line. Please also specify `--python-sdks-folder=`. -```yaml $(python) -python-mode: create -python: - azure-arm: true - license-header: MICROSOFT_MIT_NO_VERSION - payload-flattening-threshold: 2 - namespace: azure.mgmt.azurestackhci - package-name: azure-mgmt-azurestackhci - package-version: 1.0.0rc1 - clear-output-folder: true +```yaml $(python) && $(track2) +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +package-name: azure-mgmt-azurestackhci +no-namespace-folders: true +package-version: 1.0.0b1 +clear-output-folder: true ``` -``` yaml $(python) && $(python-mode) == 'update' -python: - no-namespace-folders: true - output-folder: $(python-sdks-folder)/azurestackhci/azure-mgmt-azurestackhci/azure/mgmt/azurestackhci +``` yaml $(python) && $(python-mode) == 'update' && $(track2) +no-namespace-folders: true +output-folder: $(python-sdks-folder)/azurestackhci/azure-mgmt-azurestackhci/azure/mgmt/azurestackhci ``` -``` yaml $(python) && $(python-mode) == 'create' -python: - basic-setup-py: true - output-folder: $(python-sdks-folder)/azurestackhci/azure-mgmt-azurestackhci +``` yaml $(python) && $(python-mode) == 'create' && $(track2) +basic-setup-py: true +output-folder: $(python-sdks-folder)/azurestackhci/azure-mgmt-azurestackhci ``` diff --git a/specification/baremetalinfrastructure/resource-manager/readme.azureresourceschema.md b/specification/baremetalinfrastructure/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 0228f0a806a3..000000000000 --- a/specification/baremetalinfrastructure/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,24 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-baremetalinfrastructure-2020-08-06-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-baremetalinfrastructure-2020-08-06-preview and azureresourceschema - -``` yaml $(tag) == 'schema-baremetalinfrastructure-2020-08-06-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.BareMetalInfrastructure/preview/2020-08-06-preview/baremetalinfrastructure.json - -``` diff --git a/specification/baremetalinfrastructure/resource-manager/readme.go.md b/specification/baremetalinfrastructure/resource-manager/readme.go.md index 1677cc7854ec..3944151a092b 100644 --- a/specification/baremetalinfrastructure/resource-manager/readme.go.md +++ b/specification/baremetalinfrastructure/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ```yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION clear-output-folder: true ``` diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-09-01.12.0/BatchService.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-09-01.12.0/BatchService.json index 2e43550bd55e..4319673b393b 100644 --- a/specification/batch/data-plane/Microsoft.Batch/stable/2020-09-01.12.0/BatchService.json +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-09-01.12.0/BatchService.json @@ -7679,7 +7679,7 @@ } }, "summary": "Removes Compute Nodes from the specified Pool.", - "description": "This operation can only run when the allocation state of the Pool is steady. When this operation runs, the allocation state changes from steady to resizing.", + "description": "This operation can only run when the allocation state of the Pool is steady. When this operation runs, the allocation state changes from steady to resizing. Each request may remove up to 100 nodes.", "x-ms-request-id": "request-id", "parameters": [ { @@ -15862,7 +15862,8 @@ "items": { "type": "string" }, - "title": "A list containing the IDs of the Compute Nodes to be removed from the specified Pool." + "title": "A list containing the IDs of the Compute Nodes to be removed from the specified Pool.", + "description": "A maximum of 100 nodes may be removed per request." }, "resizeTimeout": { "type": "string", diff --git a/specification/batch/data-plane/readme.go.md b/specification/batch/data-plane/readme.go.md index 5b29ca656d0a..280a31def094 100644 --- a/specification/batch/data-plane/readme.go.md +++ b/specification/batch/data-plane/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION clear-output-folder: true namespace: batch ``` diff --git a/specification/batch/data-plane/readme.md b/specification/batch/data-plane/readme.md index d3d4c786623f..e5301ce18278 100644 --- a/specification/batch/data-plane/readme.md +++ b/specification/batch/data-plane/readme.md @@ -4,10 +4,10 @@ This is the AutoRest configuration file for Batch. - - --- + ## Getting Started + To build the SDK for Batch, simply [Install AutoRest](https://aka.ms/autorest/install) and in this folder, run: > `autorest` @@ -15,13 +15,13 @@ To build the SDK for Batch, simply [Install AutoRest](https://aka.ms/autorest/in To see additional help and options, run: > `autorest --help` + --- ## Configuration - - ### Basic Information + These are the global settings for the Batch API. ``` yaml @@ -113,6 +113,7 @@ input-file: ## Suppression Note that this setting should be removed once [this GitHub bug](https://github.com/Azure/azure-openapi-validator/issues/68) is fixed. + ``` yaml directive: - suppress: R2063 @@ -121,6 +122,7 @@ directive: ``` Note that this setting should be removed once [this GitHub bug](https://github.com/Azure/azure-openapi-validator/issues/69) is fixed. + ``` yaml directive: - suppress: R2064 @@ -216,6 +218,20 @@ directive: reason: The suggested casing of this property is worse than the casing that we're using ``` +``` yaml + - suppress: DefinitionsPropertiesNamesCamelCase + where: $.definitions.ImageInformation.properties.nodeAgentSKUId + from: BatchService.json + reason: Changing the casing of this property would be a breaking change +``` + +``` yaml + - suppress: AvoidNestedProperties + where: $.definitions.NodeFile.properties.properties + from: BatchService.json + reason: Switching to x-ms-client-flatten would be a breaking change to the SDKs +``` + ### Tag: package-2017-05.5.0 These settings apply only when `--tag=package-2017-05.5.0` is specified on the command line. @@ -225,7 +241,6 @@ input-file: - Microsoft.Batch/stable/2017-05-01.5.0/BatchService.json ``` - ### Tag: package-2017-01.4.0 These settings apply only when `--tag=package-2017-01.4.0` is specified on the command line. @@ -262,10 +277,9 @@ input-file: - Microsoft.Batch/stable/2015-12-01.2.2/BatchService.json ``` - --- -# Code Generation +# Code Generation ## Swagger to SDK @@ -311,11 +325,13 @@ python: package-name: azure-batch clear-output-folder: true ``` + ``` yaml $(python) && $(python-mode) == 'update' python: no-namespace-folders: true output-folder: $(python-sdks-folder)/azure-batch/azure/batch ``` + ``` yaml $(python) && $(python-mode) == 'create' python: basic-setup-py: true @@ -357,7 +373,7 @@ java: output-folder: $(azure-libraries-for-java-folder)/azure-batch ``` -## Multi-API/Profile support for AutoRest v3 generators +## Multi-API/Profile support for AutoRest v3 generators AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. @@ -386,11 +402,10 @@ input-file: ``` -If there are files that should not be in the `all-api-versions` set, +If there are files that should not be in the `all-api-versions` set, uncomment the `exclude-file` section below and add the file paths. ``` yaml $(tag) == 'all-api-versions' #exclude-file: # - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json ``` - diff --git a/specification/batch/resource-manager/readme.azureresourceschema.md b/specification/batch/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 5cbf338ceb18..000000000000 --- a/specification/batch/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,144 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-batch-2021-01-01 - - tag: schema-batch-2020-09-01 - - tag: schema-batch-2020-05-01 - - tag: schema-batch-2020-03-01 - - tag: schema-batch-2019-08-01 - - tag: schema-batch-2019-04-01 - - tag: schema-batch-2018-12-01 - - tag: schema-batch-2017-09-01 - - tag: schema-batch-2017-05-01 - - tag: schema-batch-2017-01-01 - - tag: schema-batch-2015-12-01 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-batch-2021-01-01 and azureresourceschema - -``` yaml $(tag) == 'schema-batch-2021-01-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Batch/stable/2021-01-01/BatchManagement.json - -``` - -### Tag: schema-batch-2020-09-01 and azureresourceschema - -``` yaml $(tag) == 'schema-batch-2020-09-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Batch/stable/2020-09-01/BatchManagement.json - -``` - -### Tag: schema-batch-2020-05-01 and azureresourceschema - -``` yaml $(tag) == 'schema-batch-2020-05-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Batch/stable/2020-05-01/BatchManagement.json - -``` - -### Tag: schema-batch-2020-03-01 and azureresourceschema - -``` yaml $(tag) == 'schema-batch-2020-03-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Batch/stable/2020-03-01/BatchManagement.json - -``` - -### Tag: schema-batch-2019-08-01 and azureresourceschema - -``` yaml $(tag) == 'schema-batch-2019-08-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Batch/stable/2019-08-01/BatchManagement.json - -``` - -### Tag: schema-batch-2019-04-01 and azureresourceschema - -``` yaml $(tag) == 'schema-batch-2019-04-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Batch/stable/2019-04-01/BatchManagement.json - -``` - -### Tag: schema-batch-2018-12-01 and azureresourceschema - -``` yaml $(tag) == 'schema-batch-2018-12-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Batch/stable/2018-12-01/BatchManagement.json - -``` - -### Tag: schema-batch-2017-09-01 and azureresourceschema - -``` yaml $(tag) == 'schema-batch-2017-09-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Batch/stable/2017-09-01/BatchManagement.json - -``` - -### Tag: schema-batch-2017-05-01 and azureresourceschema - -``` yaml $(tag) == 'schema-batch-2017-05-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Batch/stable/2017-05-01/BatchManagement.json - -``` - -### Tag: schema-batch-2017-01-01 and azureresourceschema - -``` yaml $(tag) == 'schema-batch-2017-01-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Batch/stable/2017-01-01/BatchManagement.json - -``` - -### Tag: schema-batch-2015-12-01 and azureresourceschema - -``` yaml $(tag) == 'schema-batch-2015-12-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Batch/stable/2015-12-01/BatchManagement.json - -``` diff --git a/specification/batch/resource-manager/readme.go.md b/specification/batch/resource-manager/readme.go.md index 39f4c0bb8b41..e209c4d48fa6 100644 --- a/specification/batch/resource-manager/readme.go.md +++ b/specification/batch/resource-manager/readme.go.md @@ -6,7 +6,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: batch clear-output-folder: true ``` diff --git a/specification/batch/resource-manager/readme.md b/specification/batch/resource-manager/readme.md index 998011198f19..6f8b4e786064 100644 --- a/specification/batch/resource-manager/readme.md +++ b/specification/batch/resource-manager/readme.md @@ -187,8 +187,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_batch'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js batch/resource-manager ``` ## C# @@ -289,7 +287,5 @@ generate-interface: true ` -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/batchai/resource-manager/Microsoft.BatchAI/stable/2018-05-01/BatchAI.json b/specification/batchai/resource-manager/Microsoft.BatchAI/stable/2018-05-01/BatchAI.json index 413ea519953c..2d368c2751f1 100644 --- a/specification/batchai/resource-manager/Microsoft.BatchAI/stable/2018-05-01/BatchAI.json +++ b/specification/batchai/resource-manager/Microsoft.BatchAI/stable/2018-05-01/BatchAI.json @@ -997,96 +997,6 @@ "$ref": "./examples/PutFileServer.json" } } - }, - "delete": { - "tags": [ - "FileServer" - ], - "operationId": "FileServers_Delete", - "description": "Deletes a File Server.", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/WorkspaceNameParameter" - }, - { - "$ref": "#/parameters/FileServerNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "The operation was successful." - }, - "202": { - "description": "The operation will be completed asynchronously." - }, - "204": { - "description": "No content." - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Delete a file server": { - "$ref": "./examples/DeleteFileServer.json" - } - } - }, - "get": { - "tags": [ - "FileServer" - ], - "operationId": "FileServers_Get", - "description": "Gets information about a File Server.", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/WorkspaceNameParameter" - }, - { - "$ref": "#/parameters/FileServerNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "The operation was successful. The response contains information about the FileServer.", - "schema": { - "$ref": "#/definitions/FileServer" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Get a file server's information": { - "$ref": "./examples/GetFileServer.json" - } - } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.BatchAI/workspaces/{workspaceName}/fileServers": { diff --git a/specification/batchai/resource-manager/Microsoft.BatchAI/stable/2018-05-01/examples/DeleteFileServer.json b/specification/batchai/resource-manager/Microsoft.BatchAI/stable/2018-05-01/examples/DeleteFileServer.json deleted file mode 100644 index 741481e08307..000000000000 --- a/specification/batchai/resource-manager/Microsoft.BatchAI/stable/2018-05-01/examples/DeleteFileServer.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "parameters": { - "resourceGroupName": "demo_resource_group", - "workspaceName": "demo_workspace", - "fileServerName": "demo_nfs", - "subscriptionId": "00000000-0000-0000-0000-000000000000", - "api-version": "2018-05-01" - }, - "responses": { - "202": { - "headers": { - "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.BatchAI/locations/eastus/operationresults/7e69f371-db62-4183-bba0-5ee577d43bd7?api-version=2018-05-01", - "Retry-After": 15 - } - }, - "200": {}, - "204": {} - } -} diff --git a/specification/batchai/resource-manager/Microsoft.BatchAI/stable/2018-05-01/examples/GetCluster.json b/specification/batchai/resource-manager/Microsoft.BatchAI/stable/2018-05-01/examples/GetCluster.json index bd49ded30a3d..2f6ebeb7d966 100644 --- a/specification/batchai/resource-manager/Microsoft.BatchAI/stable/2018-05-01/examples/GetCluster.json +++ b/specification/batchai/resource-manager/Microsoft.BatchAI/stable/2018-05-01/examples/GetCluster.json @@ -56,15 +56,6 @@ "fileMode": "0777", "directoryMode": "0777" } - ], - "fileServers": [ - { - "fileServer": { - "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/demo_resource_group/providers/Microsoft.BatchAI/workspaces/demo_workspace/fileservers/fileservercedd134b" - }, - "relativeMountPath": "nfs", - "mountOptions": "rw" - } ] } }, diff --git a/specification/batchai/resource-manager/Microsoft.BatchAI/stable/2018-05-01/examples/GetFileServer.json b/specification/batchai/resource-manager/Microsoft.BatchAI/stable/2018-05-01/examples/GetFileServer.json deleted file mode 100644 index 26728a96f575..000000000000 --- a/specification/batchai/resource-manager/Microsoft.BatchAI/stable/2018-05-01/examples/GetFileServer.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "parameters": { - "resourceGroupName": "demo_resource_group", - "workspaceName": "demo_workspace", - "fileServerName": "demo_nfs", - "subscriptionId": "00000000-0000-0000-0000-000000000000", - "api-version": "2018-05-01" - }, - "responses": { - "200": { - "body": { - "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/demo_resource_group/providers/Microsoft.BatchAI/workspaces/demo_workspace/fileservers/fileservercedd134b", - "name": "fileservercedd134b", - "type": "Microsoft.BatchAI/FileServers", - "properties": { - "provisioningState": "succeeded", - "creationTime": "2017-09-27T21:45:28.159Z", - "provisioningStateTransitionTime": "2017-09-27T21:49:25.416Z", - "vmSize": "STANDARD_NC6", - "sshConfiguration": { - "userAccountSettings": { - "adminUserName": "admin_user_name" - } - }, - "dataDisks": { - "diskSizeInGB": 10, - "cachingType": "none", - "diskCount": 2, - "storageAccountType": "Standard_LRS" - }, - "subnet": { - "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/demo_resource_group/providers/Microsoft.Network/virtualNetworks/7feb1976-8c31-4f1f-bea2-86cb1839a7bavnet/subnets/Subnet-1" - }, - "mountSettings": { - "mountPoint": "/mnt/data", - "fileServerPublicIP": "13.90.141.66", - "fileServerInternalIP": "10.0.0.4" - } - } - } - } - } -} diff --git a/specification/batchai/resource-manager/Microsoft.BatchAI/stable/2018-05-01/examples/ListOperation.json b/specification/batchai/resource-manager/Microsoft.BatchAI/stable/2018-05-01/examples/ListOperation.json index c5831fbdd03e..39c6ee54cbed 100644 --- a/specification/batchai/resource-manager/Microsoft.BatchAI/stable/2018-05-01/examples/ListOperation.json +++ b/specification/batchai/resource-manager/Microsoft.BatchAI/stable/2018-05-01/examples/ListOperation.json @@ -193,50 +193,6 @@ "origin": "user,system", "properties": null }, - { - "display": { - "description": "Lists Batch AI fileservers or gets the properties of a Batch AI fileserver", - "operation": "List or get Batch AI fileservers", - "provider": "Microsoft Batch AI", - "resource": "Batch AI Fileservers" - }, - "name": "Microsoft.BatchAI/fileservers/read", - "origin": "user,system", - "properties": null - }, - { - "display": { - "description": "Lists Batch AI fileservers or gets the properties of a Batch AI fileserver", - "operation": "List or get Batch AI fileservers", - "provider": "Microsoft Batch AI", - "resource": "Batch AI Fileservers" - }, - "name": "Microsoft.BatchAI/workspaces/fileservers/read", - "origin": "user,system", - "properties": null - }, - { - "display": { - "description": "Creates a new Batch AI fileserver or updates an existing Batch AI fileserver", - "operation": "Create or update Batch AI fileserver", - "provider": "Microsoft Batch AI", - "resource": "Batch AI Fileservers" - }, - "name": "Microsoft.BatchAI/workspaces/fileservers/write", - "origin": "user,system", - "properties": null - }, - { - "display": { - "description": "Deletes a Batch AI fileserver", - "operation": "Delete Batch AI filserver", - "provider": "Microsoft Batch AI", - "resource": "Batch AI Fileservers" - }, - "name": "Microsoft.BatchAI/workspaces/fileservers/delete", - "origin": "user,system", - "properties": null - }, { "display": { "description": "Gets Batch AI usages of the specified subscription at the specified Azure region", diff --git a/specification/batchai/resource-manager/Microsoft.BatchAI/stable/2018-05-01/examples/PutCluster.json b/specification/batchai/resource-manager/Microsoft.BatchAI/stable/2018-05-01/examples/PutCluster.json index f650ae903133..5bd81f4ee174 100644 --- a/specification/batchai/resource-manager/Microsoft.BatchAI/stable/2018-05-01/examples/PutCluster.json +++ b/specification/batchai/resource-manager/Microsoft.BatchAI/stable/2018-05-01/examples/PutCluster.json @@ -20,15 +20,6 @@ }, "nodeSetup": { "mountVolumes": { - "fileServers": [ - { - "fileServer": { - "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/demo_resource_group/providers/Microsoft.BatchAI/workspaces/demo_workspaces/fileservers/fileservercedd134b" - }, - "mountOptions": "rw", - "relativeMountPath": "nfs" - } - ], "azureFileShares": [ { "relativeMountPath": "azfiles", @@ -104,15 +95,6 @@ "fileMode": "0777", "directoryMode": "0777" } - ], - "fileServers": [ - { - "fileServer": { - "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/demo_resource_group/providers/Microsoft.BatchAI/workspaces/demo_workspaces/fileservers/fileservercedd134b" - }, - "relativeMountPath": "nfs", - "mountOptions": "rw" - } ] } }, diff --git a/specification/batchai/resource-manager/readme.azureresourceschema.md b/specification/batchai/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index da50d317d24b..000000000000 --- a/specification/batchai/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,48 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-batchai-2018-05-01 - - tag: schema-batchai-2018-03-01 - - tag: schema-batchai-2017-09-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-batchai-2018-05-01 and azureresourceschema - -``` yaml $(tag) == 'schema-batchai-2018-05-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.BatchAI/stable/2018-05-01/BatchAI.json - -``` - -### Tag: schema-batchai-2018-03-01 and azureresourceschema - -``` yaml $(tag) == 'schema-batchai-2018-03-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.BatchAI/stable/2018-03-01/BatchAI.json - -``` - -### Tag: schema-batchai-2017-09-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-batchai-2017-09-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.BatchAI/preview/2017-09-01-preview/BatchAI.json - -``` diff --git a/specification/batchai/resource-manager/readme.go.md b/specification/batchai/resource-manager/readme.go.md index f39789d1ee1b..b72de716abdf 100644 --- a/specification/batchai/resource-manager/readme.go.md +++ b/specification/batchai/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION clear-output-folder: true namespace: batchai ``` diff --git a/specification/batchai/resource-manager/readme.md b/specification/batchai/resource-manager/readme.md index 6c29bae8f5b6..29975b5fbe5a 100644 --- a/specification/batchai/resource-manager/readme.md +++ b/specification/batchai/resource-manager/readme.md @@ -67,14 +67,12 @@ This is not used by Autorest itself. ``` yaml $(swagger-to-sdk) swagger-to-sdk: - repo: azure-sdk-for-net - - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-java - repo: azure-sdk-for-go - repo: azure-sdk-for-js - repo: azure-sdk-for-node - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js batchai/resource-manager ``` @@ -95,30 +93,7 @@ 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 - license-header: MICROSOFT_MIT_NO_VERSION - payload-flattening-threshold: 2 - namespace: azure.mgmt.batchai - package-name: azure-mgmt-batchai - clear-output-folder: true -``` -``` yaml $(python) && $(python-mode) == 'update' -python: - no-namespace-folders: true - output-folder: $(python-sdks-folder)/azure-mgmt-batchai/azure/mgmt/batchai -``` -``` yaml $(python) && $(python-mode) == 'create' -python: - basic-setup-py: true - output-folder: $(python-sdks-folder)/azure-mgmt-batchai -``` +See configuration in [readme.python.md](./readme.python.md) ## Go @@ -186,7 +161,5 @@ regenerate-manager: true generate-interface: true ``` -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/batchai/resource-manager/readme.python.md b/specification/batchai/resource-manager/readme.python.md new file mode 100644 index 000000000000..ff5956c37e0d --- /dev/null +++ b/specification/batchai/resource-manager/readme.python.md @@ -0,0 +1,23 @@ +## Python + +These settings apply only when `--python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(track2) +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +package-name: azure-mgmt-batchai +no-namespace-folders: true +package-version: 1.0.0b1 +clear-output-folder: true +``` + +``` yaml $(python-mode) == 'update' && $(track2) +no-namespace-folders: true +output-folder: $(python-sdks-folder)/batchai/azure-mgmt-batchai/azure/mgmt/batchai +``` + +``` yaml $(python-mode) == 'create' && $(track2) +basic-setup-py: true +output-folder: $(python-sdks-folder)/batchai/azure-mgmt-batchai +``` diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2020-11-01-preview/billingPromotions.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2020-11-01-preview/billingPromotions.json new file mode 100644 index 000000000000..71d5830f954e --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2020-11-01-preview/billingPromotions.json @@ -0,0 +1,454 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-11-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/promotions/{promotionId}": { + "put": { + "summary": "Activate promotion", + "description": "Activate promotion and create promotion resource.", + "operationId": "Activate_Promotion", + "x-ms-examples": { + "PromotionActivation": { + "$ref": "./examples/PromotionActivation.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/promotionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PromotionCreateRequest" + }, + "description": "Request parameters that are provided to activate the promotion." + } + ], + "tags": [ + "Promotion, Activate" + ], + "responses": { + "200": { + "description": "The resource has been created", + "schema": { + "$ref": "#/definitions/PromotionResponse" + } + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "summary": "Get a specific Promotion.", + "description": "Get the details of the `Promotion`.", + "operationId": "Promotion_Get", + "x-ms-examples": { + "GetPromotion": { + "$ref": "./examples/PromotionDetails.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/promotionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "tags": [ + "Promotion" + ], + "responses": { + "200": { + "description": "Details of the `Promotion`.", + "schema": { + "$ref": "#/definitions/PromotionResponse" + } + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.Billing/promotions": { + "get": { + "summary": "Get all `Promotion`s.", + "description": "List of all the `Promotion`s that the user has access.", + "operationId": "Promotions_List", + "x-ms-examples": { + "PromotionList": { + "$ref": "./examples/GetPromotions.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "tags": [ + "Promotion" + ], + "responses": { + "200": { + "description": "List of `Promotion`s", + "schema": { + "$ref": "#/definitions/PromotionList" + } + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Billing/promotions/{promotionSkuId}/checkEligibility": { + "get": { + "tags": [ + "Promotion_CheckEligibility" + ], + "operationId": "Promotion_CheckEligibility", + "description": "Checks the eligibility of a subscription for all active promotions.", + "x-ms-examples": { + "PromotionCheckEligibility": { + "$ref": "./examples/PromotionCheckEligibility.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/promotionSkuId" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/PromotionCheckEligibilityResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "PromotionCreateRequest": { + "type": "object", + "x-ms-azure-resource": true, + "properties": { + "sku": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PromotionCreateSkuNameRequestProperties" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PromotionCreateRequestProperties" + } + } + }, + "PromotionCreateSkuNameRequestProperties": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "SKU Name of the promotion to activate" + } + } + }, + "PromotionCreateRequestProperties": { + "type": "object", + "properties": { + "displayName": { + "type": "string", + "description": "Friendly name for user to easily identified the promotion." + }, + "appliedScopes": { + "$ref": "#/definitions/AppliedScopes", + "description": "List of subscriptions getting the benefit of the promotion." + }, + "orderId": { + "type": "string", + "description": "Unique Id for the promotion order." + } + } + }, + "PromotionList": { + "description": "The list of promotions.", + "properties": { + "value": { + "description": "The list of promotions.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/PromotionResponse" + } + }, + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "PromotionResponse": { + "type": "object", + "x-ms-azure-resource": true, + "properties": { + "etag": { + "type": "integer", + "format": "int64" + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Identifier of the promotion" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Name of the promotion" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PromotionResponseProperties" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Type of resource. \"Microsoft.Billing/Promotions\"" + } + } + }, + "PromotionResponseProperties": { + "type": "object", + "properties": { + "displayName": { + "type": "string", + "description": "Friendly name for user to easily identified the promotion." + }, + "effectiveDateTime": { + "type": "string", + "format": "date-time", + "description": "This is the DateTime when the promotion would come in effect" + }, + "lastUpdatedDateTime": { + "type": "string", + "format": "date-time", + "description": "Last update time of the promotion resource." + }, + "expiryDate": { + "type": "string", + "format": "date", + "description": "This is the date when the Reservation will expire." + }, + "provisioningState": { + "type": "string", + "description": "Current state of the promotion." + }, + "appliedScopes": { + "$ref": "#/definitions/AppliedScopes", + "description": "List of subscriptions getting the benefit of the promotion." + } + } + }, + "AppliedScopes": { + "type": "array", + "description": "List of the subscriptions that the benefit will be applied.", + "items": { + "type": "string", + "minItems": 1, + "maxItems": 1 + } + }, + "PromotionCheckEligibilityResponse": { + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PromotionCheckEligibilityResponseProperties" + } + } + }, + "PromotionCheckEligibilityResponseProperties": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Name of the promotion" + }, + "name": { + "type": "string", + "description": "Name of the promotion" + }, + "eligible": { + "type": "boolean", + "description": "Specifies whether the subscription is eligible for the promotion" + }, + "reason": { + "type": "string", + "description": "Reason in case the subscription is not eligible for promotion." + }, + "eligibilitySubscriptionId": { + "type": "string", + "description": "Subscription Id on which the eligibility check was performed." + }, + "expiryDate": { + "type": "string", + "format": "date", + "description": "Date till when the promotion is available." + } + } + }, + "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" + } + } + }, + "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 + }, + "details": { + "description": "The sub details of the error.", + "readOnly": true, + "$ref": "#/definitions/ErrorSubDetails" + } + } + }, + "ErrorSubDetails": { + "type": "array", + "items": { + "type": "object", + "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 + } + } + } + } + }, + "parameters": { + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The version of the API to be used with the client request. The current version is 2019-10-01-preview." + }, + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "The ID that uniquely identifies an Azure subscription.", + "required": true, + "type": "string" + }, + "promotionIdParameter": { + "name": "promotionId", + "x-ms-parameter-location": "method", + "in": "path", + "required": true, + "type": "string", + "description": "Promotion Id" + }, + "promotionSkuId": { + "name": "promotionSkuId", + "x-ms-parameter-location": "method", + "in": "path", + "required": true, + "type": "string", + "description": "Promotion Sku Id" + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2020-11-01-preview/examples/GetPromotions.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2020-11-01-preview/examples/GetPromotions.json new file mode 100644 index 000000000000..b3661f72cdc0 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2020-11-01-preview/examples/GetPromotions.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2020-11-01-preview" + }, + "responses": { + "200": { + "body": [ + { + "id": "/providers/Microsoft.Billing/promotions/105363ba-c9e4-421e-a630-4968bdc3f217", + "type": "Microsoft.Billing/promotions", + "name": "105363ba-c9e4-421e-a630-4968bdc3f217", + "etag": 1, + "properties": { + "appliedScopes": [ + "/subscriptions/a4f60096-7846-4c87-9143-771e73ae26ce" + ], + "provisioningState": "Creating", + "displayName": "test-promo1", + "effectiveDateTime": "2020-10-19T21:03:19.9905904Z", + "lastUpdatedDateTime": "2020-10-19T21:03:19.9905904Z", + "expiryDate": "2021-01-31" + } + } + ] + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2020-11-01-preview/examples/PromotionActivation.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2020-11-01-preview/examples/PromotionActivation.json new file mode 100644 index 000000000000..0c6e578d3e2f --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2020-11-01-preview/examples/PromotionActivation.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2020-11-01-preview", + "promotionId": "ff0f1add-122a-43c1-a2ec-c2277781667d", + "parameters": { + "sku": { + "name": "wvd_promo_30p" + }, + "properties": { + "appliedScopes": [ + "/subscriptions/f6dc64c8-34bb-43d3-96b0-fd2b8c94f1c3" + ], + "displayName": "promotion-displayname", + "orderId": "ff0f1add-122a-43c1-a2ec-c2277781667d" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/promotions/ff0f1add-122a-43c1-a2ec-c2277781667d", + "type": "Microsoft.Billing/promotions", + "name": "ff0f1add-122a-43c1-a2ec-c2277781667d", + "properties": { + "appliedScopes": [ + "/subscriptions/a4f60096-7846-4c87-9143-771e73ae26ce" + ], + "provisioningState": "Succeeded", + "expiryDate": "2021-02-01", + "displayName": "promotion-displayname", + "effectiveDateTime": "2020-11-03T02:26:53.0006733Z" + } + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2020-11-01-preview/examples/PromotionCheckEligibility.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2020-11-01-preview/examples/PromotionCheckEligibility.json new file mode 100644 index 000000000000..dff19b032a57 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2020-11-01-preview/examples/PromotionCheckEligibility.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "api-version": "2020-11-01-preview", + "promotionSkuId": "wvd_promo_30p", + "subscriptionId": "f6dc64c8-34bb-43d3-96b0-fd2b8c94f1c3" + }, + "responses": { + "200": { + "body": { + "properties": { + "id": "wvd_promo_30p", + "name": "WVD 30 percent off", + "eligible": true, + "reason": "None", + "eligibilitySubscriptionId": "f6dc64c8-34bb-43d3-96b0-fd2b8c94f1c3", + "expiryDate": "2021-10-01" + } + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2020-11-01-preview/examples/PromotionDetails.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2020-11-01-preview/examples/PromotionDetails.json new file mode 100644 index 000000000000..28d606d89469 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2020-11-01-preview/examples/PromotionDetails.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2020-11-01-preview", + "promotionId": "{promotionId}" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/promotions/105363ba-c9e4-421e-a630-4968bdc3f217", + "type": "Microsoft.Billing/promotions", + "name": "105363ba-c9e4-421e-a630-4968bdc3f217", + "etag": 1, + "properties": { + "appliedScopes": [ + "/subscriptions/a4f60096-7846-4c87-9143-771e73ae26ce" + ], + "provisioningState": "Creating", + "displayName": "test-promo1", + "effectiveDateTime": "2020-10-19T21:03:19.9905904Z", + "lastUpdatedDateTime": "2020-10-19T21:03:19.9905904Z", + "expiryDate": "2020-10-19" + } + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2020-05-01/billing.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2020-05-01/billing.json index 347535b39c42..5256816c34ae 100644 --- a/specification/billing/resource-manager/Microsoft.Billing/stable/2020-05-01/billing.json +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2020-05-01/billing.json @@ -3561,6 +3561,143 @@ } } } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/reservations": { + "get": { + "tags": [ + "Reservations" + ], + "x-ms-examples": { + "ReservationsListByBillingAccount": { + "$ref": "./examples/ReservationsListByBillingAccount.json" + } + }, + "operationId": "Reservations_ListByBillingAccount", + "description": "Lists the reservations for a billing account and the roll up counts of reservations group by provisioning states.", + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/billingAccountNameParameter" + }, + { + "name": "$filter", + "description": "May be used to filter by reservation properties. The filter supports 'eq', 'or', and 'and'. It does not currently support 'ne', 'gt', 'le', 'ge', or 'not'.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "$orderby", + "description": "May be used to sort order by reservation properties.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "refreshSummary", + "description": "To indicate whether to refresh the roll up counts of the reservations group by provisioning states", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "selectedState", + "description": "The selected provisioning state", + "in": "query", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ReservationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/reservations": { + "get": { + "tags": [ + "Reservations" + ], + "x-ms-examples": { + "ReservationsListByBillingProfile": { + "$ref": "./examples/ReservationsListByBillingProfile.json" + } + }, + "operationId": "Reservations_ListByBillingProfile", + "description": "Lists the reservations for a billing profile and the roll up counts of reservations group by provisioning state.", + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/billingAccountNameParameter" + }, + { + "$ref": "#/parameters/billingProfileNameParameter" + }, + { + "name": "$filter", + "description": "May be used to filter by reservation properties. The filter supports 'eq', 'or', and 'and'. It does not currently support 'ne', 'gt', 'le', 'ge', or 'not'.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "$orderby", + "description": "May be used to sort order by reservation properties.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "refreshSummary", + "description": "To indicate whether to refresh the roll up counts of the reservations group by provisioning state", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "selectedState", + "description": "The selected provisioning state", + "in": "query", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ReservationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } } }, "definitions": { @@ -3575,6 +3712,12 @@ "$ref": "#/definitions/Customer" } }, + "totalCount": { + "description": "Total number of records.", + "type": "number", + "format": "int32", + "readOnly": true + }, "nextLink": { "description": "The link (url) to the next page of results.", "type": "string", @@ -3868,6 +4011,10 @@ "description": "Indicates whether user has read access to the billing account.", "type": "boolean", "readOnly": true + }, + "notificationEmailAddress": { + "description": "Notification email address, only for legacy accounts", + "type": "string" } } }, @@ -4092,7 +4239,7 @@ "type": "boolean", "readOnly": true }, - "marketplacesEnabled": { + "marketplaceEnabled": { "description": "The policy that controls whether Azure marketplace purchases are allowed in the enrollment.", "type": "boolean", "readOnly": true @@ -4175,6 +4322,10 @@ "description": "The owner of the enrollment account.", "type": "string" }, + "accountOwnerEmail": { + "description": "The enrollment account owner email address.", + "type": "string" + }, "status": { "description": "The status of the enrollment account.", "type": "string" @@ -4439,6 +4590,14 @@ "items": { "$ref": "#/definitions/TargetCloud" } + }, + "tags": { + "description": "Tags of billing profiles.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "maxItems": 1000 } } }, @@ -4470,6 +4629,10 @@ "description": "First name.", "type": "string" }, + "middleName": { + "description": "Middle name.", + "type": "string" + }, "lastName": { "description": "Last name.", "type": "string" @@ -4557,6 +4720,12 @@ "$ref": "#/definitions/InvoiceSection" } }, + "totalCount": { + "description": "Total number of records.", + "type": "number", + "format": "int32", + "readOnly": true + }, "nextLink": { "description": "The link (url) to the next page of results.", "type": "string", @@ -5395,6 +5564,12 @@ "$ref": "#/definitions/BillingSubscription" } }, + "totalCount": { + "description": "Total number of records.", + "type": "number", + "format": "int32", + "readOnly": true + }, "nextLink": { "description": "The link (url) to the next page of results.", "type": "string", @@ -5920,6 +6095,11 @@ "type": "string", "readOnly": true }, + "isDataAction": { + "description": "Identifies if the operation is a data operation.", + "type": "boolean", + "readOnly": true + }, "display": { "description": "The object that represents the operation.", "properties": { @@ -5937,6 +6117,11 @@ "description": "Operation type such as read, write and delete.", "type": "string", "readOnly": true + }, + "description": { + "description": "Description of operation.", + "type": "string", + "readOnly": true } } } @@ -6266,6 +6451,248 @@ "description": "The set of actions that the caller is not allowed to perform.", "type": "string", "readOnly": true + }, + "ReservationsListResult": { + "description": "The list of reservations and summary of roll out count of reservations in each state.", + "properties": { + "value": { + "description": "The list of reservations.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Reservation" + } + }, + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + }, + "summary": { + "description": "The roll out count summary of the reservations", + "type": "object", + "$ref": "#/definitions/ReservationSummary" + } + } + }, + "Reservation": { + "description": "The definition of the reservation.", + "properties": { + "id": { + "description": "The id of the reservation.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The name of the reservation.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The type of the reservation.", + "type": "string", + "readOnly": true + }, + "location": { + "description": "The location of the reservation.", + "type": "string", + "readOnly": true + }, + "sku": { + "description": "The sku information associated to this reservation ", + "type": "object", + "$ref": "#/definitions/ReservationSkuProperty" + }, + "properties": { + "description": "The properties associated to this reservation ", + "type": "object", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ReservationProperty" + } + } + }, + "ReservationSkuProperty": { + "description": "The property of reservation sku object.", + "properties": { + "name": { + "description": "The name of the reservation sku.", + "type": "string", + "readOnly": true + } + } + }, + "ReservationProperty": { + "description": "The property of reservation object.", + "properties": { + "appliedScopes": { + "description": "The array of applied scopes of a reservation. Will be null if the reservation is in Shared scope", + "type": "array", + "items": { + "$ref": "#/definitions/ReservationAppliedScope" + } + }, + "appliedScopeType": { + "description": "The applied scope type of the reservation.", + "type": "string", + "readOnly": true + }, + "reservedResourceType": { + "description": "The reserved source type of the reservation, e.g. virtual machine.", + "type": "string", + "readOnly": true + }, + "quantity": { + "description": "The number of the reservation.", + "type": "number", + "readOnly": true + }, + "provisioningState": { + "description": "The provisioning state of the reservation, e.g. Succeeded", + "type": "string", + "readOnly": true + }, + "expiryDate": { + "description": "The expiry date of the reservation", + "type": "string", + "readOnly": true + }, + "provisioningSubState": { + "description": "The provisioning state of the reservation, e.g. Succeeded", + "type": "string", + "readOnly": true + }, + "displayName": { + "description": "The display name of the reservation", + "type": "string", + "readOnly": true + }, + "displayProvisioningState": { + "description": "The provisioning state of the reservation for display, e.g. Succeeded", + "type": "string", + "readOnly": true + }, + "userFriendlyRenewState": { + "description": "The renew state of the reservation for display, e.g. On", + "type": "string", + "readOnly": true + }, + "userFriendlyAppliedScopeType": { + "description": "The applied scope type of the reservation for display, e.g. Shared", + "type": "string", + "readOnly": true + }, + "effectiveDateTime": { + "description": "The effective date time of the reservation", + "type": "string", + "readOnly": true + }, + "skuDescription": { + "description": "The sku description of the reservation", + "type": "string", + "readOnly": true + }, + "term": { + "description": "The term of the reservation, e.g. P1Y", + "type": "string", + "readOnly": true + }, + "renew": { + "description": "The renew state of the reservation", + "type": "boolean", + "readOnly": true + }, + "renewSource": { + "description": "The renew source of the reservation", + "type": "string", + "readOnly": true + }, + "utilization": { + "readOnly": true, + "type": "object", + "description": "Reservation utilization", + "properties": { + "trend": { + "description": "The number of days trend for a reservation", + "readOnly": true, + "type": "string" + }, + "aggregates": { + "description": "The array of aggregates of a reservation's utilization", + "type": "array", + "items": { + "$ref": "#/definitions/ReservationUtilizationAggregates" + } + } + } + } + } + }, + "ReservationAppliedScope": { + "readOnly": true, + "type": "string", + "description": "Reservation applied scope" + }, + "ReservationUtilizationAggregates": { + "description": "The aggregate values of reservation utilization", + "type": "object", + "properties": { + "grain": { + "description": "The grain of the aggregate", + "readOnly": true, + "type": "number" + }, + "grainUnit": { + "description": "The grain unit of the aggregate", + "readOnly": true, + "type": "string" + }, + "value": { + "description": "The aggregate value", + "readOnly": true, + "type": "number" + }, + "valueUnit": { + "description": "The aggregate value unit", + "readOnly": true, + "type": "string" + } + } + }, + "ReservationSummary": { + "description": "The roll up count summary of reservations in each state", + "type": "object", + "properties": { + "succeededCount": { + "description": "The number of reservation in Succeeded state", + "readOnly": true, + "type": "number" + }, + "failedCount": { + "description": "The number of reservation in Failed state", + "readOnly": true, + "type": "number" + }, + "expiringCount": { + "description": "The number of reservation in Expiring state", + "readOnly": true, + "type": "number" + }, + "expiredCount": { + "description": "The number of reservation in Expired state", + "readOnly": true, + "type": "number" + }, + "pendingCount": { + "description": "The number of reservation in Pending state", + "readOnly": true, + "type": "number" + }, + "cancelledCount": { + "description": "The number of reservation in Cancelled state", + "readOnly": true, + "type": "number" + } + } } }, "parameters": { diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2020-05-01/examples/BillingAccountsListWithExpandForEnrollmentDetails.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2020-05-01/examples/BillingAccountsListWithExpandForEnrollmentDetails.json index a546b96ac97f..4406026cef02 100644 --- a/specification/billing/resource-manager/Microsoft.Billing/stable/2020-05-01/examples/BillingAccountsListWithExpandForEnrollmentDetails.json +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2020-05-01/examples/BillingAccountsListWithExpandForEnrollmentDetails.json @@ -34,7 +34,7 @@ "policies": { "accountOwnerViewCharges": true, "departmentAdminViewCharges": true, - "marketplacesEnabled": true, + "marketplaceEnabled": true, "reservedInstancesEnabled": true } }, diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2020-05-01/examples/ReservationsListByBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2020-05-01/examples/ReservationsListByBillingAccount.json new file mode 100644 index 000000000000..af4f99587c4b --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2020-05-01/examples/ReservationsListByBillingAccount.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "api-version": "2020-05-01", + "billingAccountName": "{billingAccountName}", + "$filter": "properties/reservedResourceType eq 'VirtualMachines'", + "$orderby": "properties/userFriendlyAppliedScopeType asc", + "refreshsummary": "true", + "selectedState": "Succeeded" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/microsoft.capacity/reservationOrders/00000000-0000-0000-0000-000000000001/reservations/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000001/00000000-0000-0000-0000-000000000000", + "type": "Microsoft.Capacity/reservationOrders/reservations", + "location": "westus", + "sku": { + "name": "Standard_D1" + }, + "properties": { + "appliedScopes": null, + "appliedScopeType": "Shared", + "reservedResourceType": "VirtualMachines", + "quantity": 2, + "provisioningState": "Succeeded", + "expiryDate": "2023-07-21", + "provisioningSubState": null, + "displayName": "VM_RI_07-21-2020_12-06", + "displayProvisioningState": "Succeeded", + "userFriendlyRenewState": "Off", + "userFriendlyAppliedScopeType": "Shared", + "effectiveDateTime": "0001-01-01T00:00:00", + "skuDescription": null, + "term": null, + "renew": false, + "renewSource": null, + "utilization": { + "trend": "UP", + "aggregates": [ + { + "grain": 1.0, + "grainUnit": "days", + "value": 0.05, + "valueUnit": "percentage" + }, + { + "grain": 7.0, + "grainUnit": "days", + "value": 0.05, + "valueUnit": "percentage" + }, + { + "grain": 30.0, + "grainUnit": "days", + "value": 0.05, + "valueUnit": "percentage" + } + ] + } + } + } + ], + "summary": { + "succeededCount": 1, + "failedCount": 0, + "expiringCount": 0, + "expiredCount": 0, + "pendingCount": 0, + "cancelledCount": 0 + }, + "nextLink": null + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2020-05-01/examples/ReservationsListByBillingProfile.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2020-05-01/examples/ReservationsListByBillingProfile.json new file mode 100644 index 000000000000..f04d34b1da33 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2020-05-01/examples/ReservationsListByBillingProfile.json @@ -0,0 +1,78 @@ +{ + "parameters": { + "api-version": "2020-05-01", + "billingAccountName": "{billingAccountName}", + "billingProfileName": "{billingProfileName}", + "$filter": "properties/reservedResourceType eq 'VirtualMachines'", + "$orderby": "properties/userFriendlyAppliedScopeType asc", + "refreshsummary": "true", + "selectedState": "Succeeded" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/microsoft.capacity/reservationOrders/00000000-0000-0000-0000-000000000001/reservations/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000001/00000000-0000-0000-0000-000000000000", + "type": "Microsoft.Capacity/reservationOrders/reservations", + "location": "westus", + "sku": { + "name": "Standard_D1" + }, + "properties": { + "appliedScopes": null, + "appliedScopeType": "Shared", + "reservedResourceType": "VirtualMachines", + "quantity": 2, + "provisioningState": "Succeeded", + "expiryDate": "2023-07-21", + "provisioningSubState": null, + "displayName": "VM_RI_07-21-2020_12-06", + "displayProvisioningState": "Succeeded", + "userFriendlyRenewState": "Off", + "userFriendlyAppliedScopeType": "Shared", + "effectiveDateTime": "0001-01-01T00:00:00", + "skuDescription": null, + "term": null, + "renew": false, + "renewSource": "/providers/Microsoft.Capacity/reservationorders/00000000-0000-0000-0000-000000000002/reservations/00000000-0000-0000-0000-000000000003", + "utilization": { + "trend": "UP", + "aggregates": [ + { + "grain": 1.0, + "grainUnit": "days", + "value": 0.05, + "valueUnit": "percentage" + }, + { + "grain": 7.0, + "grainUnit": "days", + "value": 0.05, + "valueUnit": "percentage" + }, + { + "grain": 30.0, + "grainUnit": "days", + "value": 0.05, + "valueUnit": "percentage" + } + ] + } + } + } + ], + "summary": { + "succeededCount": 1, + "failedCount": 0, + "expiringCount": 0, + "expiredCount": 0, + "pendingCount": 0, + "cancelledCount": 0 + }, + "nextLink": null + } + } + } +} diff --git a/specification/billing/resource-manager/readme.az.md b/specification/billing/resource-manager/readme.az.md index 5b72c1e2e0af..46cac6393969 100644 --- a/specification/billing/resource-manager/readme.az.md +++ b/specification/billing/resource-manager/readme.az.md @@ -206,7 +206,7 @@ cli: groupExtensionMode: preview # -------- Invoice -------- - # customize for download command by manual for ungraceful implmentation by default + # customize for download command by manual for ungraceful implementation by default - where: group: Invoices op: DownloadInvoice @@ -223,7 +223,7 @@ cli: group: Invoices op: DownloadMultipleBillingSubscriptionInvoices hidden: true - # customize for series of get commands by manual for ungraceful implmentation by default + # customize for series of get commands by manual for ungraceful implementation by default - where: group: Invoices op: GetById diff --git a/specification/billing/resource-manager/readme.azureresourceschema.md b/specification/billing/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index e7e163b7b60e..000000000000 --- a/specification/billing/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,85 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-billing-2020-05-01 - - tag: schema-billing-2019-10-01-preview - - tag: schema-billing-2018-11-01-preview - - tag: schema-billing-2018-03-01-preview - - tag: schema-billing-2017-04-24-preview - - tag: schema-billing-2017-02-27-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-billing-2020-05-01 and azureresourceschema - -``` yaml $(tag) == 'schema-billing-2020-05-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Billing/stable/2020-05-01/billing.json - -``` - -### Tag: schema-billing-2019-10-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-billing-2019-10-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Billing/preview/2019-10-01-preview/billing.json - -``` - -### Tag: schema-billing-2018-11-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-billing-2018-11-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Billing/preview/2018-11-01-preview/billing.json - -``` - -### Tag: schema-billing-2018-03-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-billing-2018-03-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Billing/preview/2018-03-01-preview/billingV2.json - - Microsoft.Billing/preview/2018-03-01-preview/billing.json - -``` - -### Tag: schema-billing-2017-04-24-preview and azureresourceschema - -``` yaml $(tag) == 'schema-billing-2017-04-24-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Billing/preview/2017-04-24-preview/billing.json - -``` - -### Tag: schema-billing-2017-02-27-preview and azureresourceschema - -``` yaml $(tag) == 'schema-billing-2017-02-27-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Billing/preview/2017-02-27-preview/billing.json - -``` diff --git a/specification/billing/resource-manager/readme.go.md b/specification/billing/resource-manager/readme.go.md index f6bf507cb97e..3168650648d3 100644 --- a/specification/billing/resource-manager/readme.go.md +++ b/specification/billing/resource-manager/readme.go.md @@ -5,7 +5,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: billing clear-output-folder: true ``` @@ -17,7 +17,6 @@ batch: - tag: package-2018-11-preview - tag: package-2018-03-preview - tag: package-2017-04-preview - - tag: package-2017-02-preview ``` ### Tag: package-2020-05 and go diff --git a/specification/billing/resource-manager/readme.md b/specification/billing/resource-manager/readme.md index 54b10224deae..8cb5f3f3a9a5 100644 --- a/specification/billing/resource-manager/readme.md +++ b/specification/billing/resource-manager/readme.md @@ -38,6 +38,15 @@ input-file: - Microsoft.Billing/stable/2020-05-01/billing.json - Microsoft.Billing/preview/2018-03-01-preview/billingV2.json ``` +### Tag: package-2020-11-preview + +These settings apply only when `--tag=package-2020-11-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2020-11-preview' +input-file: +- Microsoft.Billing/stable/2020-05-01/billing.json +- Microsoft.Billing/preview/2020-11-01-preview/billingPromotions.json +``` ### Tag: package-2019-10-preview @@ -96,18 +105,16 @@ This is not used by Autorest itself. ``` yaml $(swagger-to-sdk) swagger-to-sdk: - repo: azure-sdk-for-net - - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-java - repo: azure-sdk-for-go - repo: azure-sdk-for-js - repo: azure-sdk-for-node - repo: azure-sdk-for-ruby - - repo: azure-cli-extensions after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_billing'] + - repo: azure-cli-extensions - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js billing/resource-manager ``` @@ -125,6 +132,10 @@ csharp: clear-output-folder: true ``` +## Python + +See configuration in [readme.python.md](./readme.python.md) + ## Go See configuration in [readme.go.md](./readme.go.md) @@ -235,6 +246,4 @@ generate-interface: true -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/billing/resource-manager/readme.python.md b/specification/billing/resource-manager/readme.python.md index 28fc27d0534c..829ed6a6c37d 100644 --- a/specification/billing/resource-manager/readme.python.md +++ b/specification/billing/resource-manager/readme.python.md @@ -6,22 +6,19 @@ Use `--python-mode=update` if you already have a setup.py and just want to updat ``` yaml $(python) python-mode: create -python: - azure-arm: true - license-header: MICROSOFT_MIT_NO_VERSION - payload-flattening-threshold: 2 - namespace: azure.mgmt.billing - package-name: azure-mgmt-billing - package-version: 0.3.0 - clear-output-folder: true +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +namespace: azure.mgmt.billing +package-name: azure-mgmt-billing +package-version: 0.3.0 +clear-output-folder: true ``` ``` yaml $(python) && $(python-mode) == 'update' -python: - no-namespace-folders: true - output-folder: $(python-sdks-folder)/billing/azure-mgmt-billing/azure/mgmt/billing +no-namespace-folders: true +output-folder: $(python-sdks-folder)/billing/azure-mgmt-billing/azure/mgmt/billing ``` + ``` yaml $(python) && $(python-mode) == 'create' -python: - basic-setup-py: true - output-folder: $(python-sdks-folder)/billing/azure-mgmt-billing +basic-setup-py: true +output-folder: $(python-sdks-folder)/billing/azure-mgmt-billing ``` diff --git a/specification/blockchain/resource-manager/readme.azureresourceschema.md b/specification/blockchain/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 01c28ae04c95..000000000000 --- a/specification/blockchain/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,24 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-blockchain-2018-06-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-blockchain-2018-06-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-blockchain-2018-06-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Blockchain/preview/2018-06-01-preview/blockchain.json - -``` diff --git a/specification/blockchain/resource-manager/readme.go.md b/specification/blockchain/resource-manager/readme.go.md index 2196eb656a1f..e7e9372c1006 100644 --- a/specification/blockchain/resource-manager/readme.go.md +++ b/specification/blockchain/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION clear-output-folder: true namespace: blockchain ``` diff --git a/specification/blockchain/resource-manager/readme.md b/specification/blockchain/resource-manager/readme.md index fda27f80fb64..314c4c624b3a 100644 --- a/specification/blockchain/resource-manager/readme.md +++ b/specification/blockchain/resource-manager/readme.md @@ -61,8 +61,6 @@ swagger-to-sdk: - bundle install && rake arm:regen_all_profiles['azure_mgmt_blockchain'] - repo: azure-cli-extensions - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js blockchain/resource-manager ``` ## C# @@ -90,7 +88,5 @@ See configuration in [readme.node.md](./readme.node.md) See configuration in [readme.ruby.md](./readme.ruby.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/blueprintDefinition.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/blueprintDefinition.json index 43616703c192..8c6cb466a66f 100644 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/blueprintDefinition.json +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/blueprintDefinition.json @@ -972,6 +972,7 @@ }, "layout": { "type": "object", + "readOnly": true, "description": "Layout view of the blueprint definition for UI reference." } }, diff --git a/specification/blueprint/resource-manager/readme.azureresourceschema.md b/specification/blueprint/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 4e9a1ed8e02a..000000000000 --- a/specification/blueprint/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,39 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-blueprint-2018-11-01-preview - - tag: schema-blueprint-2017-11-11-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-blueprint-2018-11-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-blueprint-2018-11-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Blueprint/preview/2018-11-01-preview/blueprintDefinition.json - - Microsoft.Blueprint/preview/2018-11-01-preview/blueprintAssignment.json - - Microsoft.Blueprint/preview/2018-11-01-preview/assignmentOperation.json - -``` - -### Tag: schema-blueprint-2017-11-11-preview and azureresourceschema - -``` yaml $(tag) == 'schema-blueprint-2017-11-11-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Blueprint/preview/2017-11-11-preview/blueprintDefinition.json - - Microsoft.Blueprint/preview/2017-11-11-preview/blueprintAssignment.json - -``` diff --git a/specification/blueprint/resource-manager/readme.go.md b/specification/blueprint/resource-manager/readme.go.md index 7bbbb41384ef..6a25ef352687 100644 --- a/specification/blueprint/resource-manager/readme.go.md +++ b/specification/blueprint/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: blueprint clear-output-folder: true ``` diff --git a/specification/blueprint/resource-manager/readme.md b/specification/blueprint/resource-manager/readme.md index e133f1b7ed9f..5d57c7587278 100644 --- a/specification/blueprint/resource-manager/readme.md +++ b/specification/blueprint/resource-manager/readme.md @@ -64,8 +64,6 @@ swagger-to-sdk: - repo: azure-sdk-for-js - repo: azure-sdk-for-python - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js blueprint/resource-manager ``` @@ -134,7 +132,5 @@ directive: reason: OperationsAPI for Microsoft.Management is out of scope. ``` -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/botservice.json b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/botservice.json new file mode 100644 index 000000000000..772e0a1c5d47 --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/botservice.json @@ -0,0 +1,2977 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Bot Service", + "description": "Azure Bot Service is a platform for creating smart conversational agents.", + "version": "2021-05-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.BotService/botServices/{resourceName}": { + "put": { + "tags": [ + "Bot" + ], + "description": "Creates a Bot Service. Bot Service is a resource group wide resource type.", + "operationId": "Bots_Create", + "x-ms-examples": { + "Create Bot": { + "$ref": "./examples/CreateBot.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/resourceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Bot" + }, + "description": "The parameters to provide for the created bot." + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "If resource is created successfully or already existed, the service should return 200 (OK).", + "schema": { + "$ref": "#/definitions/Bot" + } + }, + "201": { + "description": "If resource is created successfully, the service should return 201 (Created). Execution to continue asynchronously.", + "schema": { + "$ref": "#/definitions/Bot" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + } + }, + "patch": { + "tags": [ + "Bot" + ], + "description": "Updates a Bot Service", + "operationId": "Bots_Update", + "x-ms-examples": { + "Update Bot": { + "$ref": "./examples/UpdateBot.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/resourceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/Bot" + }, + "description": "The parameters to provide for the created bot." + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The resource provider should return 200 (OK) to indicate that the operation completed successfully. ", + "schema": { + "$ref": "#/definitions/Bot" + } + }, + "201": { + "description": "If resource is updated successfully, the service should return 201 (Created). Execution to continue asynchronously.", + "schema": { + "$ref": "#/definitions/Bot" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the resource group *or* resource does not exist, 404 (NotFound) should be returned.", + "schema": { + "$ref": "#/definitions/Error" + } + } + } + }, + "delete": { + "tags": [ + "Bot" + ], + "description": "Deletes a Bot Service from the resource group. ", + "operationId": "Bots_Delete", + "x-ms-examples": { + "Delete Bot": { + "$ref": "./examples/DeleteBot.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/resourceNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A 200 (OK) should be returned if the object exists and was deleted successfully;" + }, + "204": { + "description": "a 204 (NoContent) should be used if the resource does not exist and the request is well formed." + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + } + }, + "get": { + "tags": [ + "Bot" + ], + "description": "Returns a BotService specified by the parameters.", + "operationId": "Bots_Get", + "x-ms-examples": { + "Get Bot": { + "$ref": "./examples/GetBot.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/resourceNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The resource provider should return 200 (OK) to indicate that the operation completed successfully. ", + "schema": { + "$ref": "#/definitions/Bot" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the resource group *or* resource does not exist, 404 (NotFound) should be returned.", + "schema": { + "$ref": "#/definitions/Error" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.BotService/botServices": { + "get": { + "tags": [ + "Bot" + ], + "description": "Returns all the resources of a particular type belonging to a resource group", + "operationId": "Bots_ListByResourceGroup", + "x-ms-examples": { + "List Bots by Resource Group": { + "$ref": "./examples/ListBotsByResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The resource provider should return 200 (OK) to indicate that the operation completed successfully. For other errors (e.g. internal errors) use the appropriate HTTP error code.\nThe nextLink field is expected to point to the URL the client should use to fetch the next page (per server side paging). This matches the OData guidelines for paged responses here. If a resource provider does not support paging, it should return the same body (JSON object with “value” property) but omit nextLink entirely (or set to null, *not* empty string) for future compatibility.\nThe nextLink should be implemented using following query parameters:\n· skipToken: opaque token that allows the resource provider to skip resources already enumerated. This value is defined and returned by the RP after first request via nextLink.\n· top: the optional client query parameter which defines the maximum number of records to be returned by the server.\nImplementation details:\n· NextLink may include all the query parameters (specifically OData $filter) used by the client in the first query. \n· Server may return less records than requested with nextLink. Returning zero records with NextLink is an acceptable response. \nClients must fetch records until the nextLink is not returned back / null. Clients should never rely on number of returned records to determinate if pagination is completed.", + "schema": { + "$ref": "#/definitions/BotResponseList" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the resource group does not exist, 404 (NotFound) will be returned.", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.BotService/botServices": { + "get": { + "tags": [ + "Bot" + ], + "description": "Returns all the resources of a particular type belonging to a subscription.", + "operationId": "Bots_List", + "x-ms-examples": { + "List Bots by Subscription": { + "$ref": "./examples/ListBotsBySubscription.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The resource provider should return 200 (OK) to indicate that the operation completed successfully. For other errors (e.g. internal errors) use the appropriate HTTP error code.\nThe nextLink field is expected to point to the URL the client should use to fetch the next page (per server side paging). This matches the OData guidelines for paged responses. If a resource provider does not support paging, it should return the same body but leave nextLink empty for future compatibility.\nFor a detailed explanation of each field in the response body, please refer to the request body description in the PUT resource section. ", + "schema": { + "$ref": "#/definitions/BotResponseList" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.BotService/botServices/{resourceName}/channels/{channelName}": { + "put": { + "tags": [ + "Channel" + ], + "description": "Creates a Channel registration for a Bot Service", + "operationId": "Channels_Create", + "x-ms-examples": { + "Create Bot": { + "$ref": "./examples/PutChannel.json" + }, + "Create Alexa Bot": { + "$ref": "./examples/PutAlexaChannel.json" + }, + "Create Line Bot": { + "$ref": "./examples/PutLineChannel.json" + }, + "Create DirectLine Speech Bot": { + "$ref": "./examples/PutDirectLineSpeechChannel.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/resourceNameParameter" + }, + { + "$ref": "#/parameters/channelNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/BotChannel" + }, + "description": "The parameters to provide for the created bot." + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "If resource is created successfully or already existed, the service should return 200 (OK).", + "schema": { + "$ref": "#/definitions/BotChannel" + } + }, + "201": { + "description": "If resource is created successfully, the service should return 201 (Created). Execution to continue asynchronously.", + "schema": { + "$ref": "#/definitions/BotChannel" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + } + }, + "patch": { + "tags": [ + "Channel" + ], + "description": "Updates a Channel registration for a Bot Service", + "operationId": "Channels_Update", + "x-ms-examples": { + "Update Bot": { + "$ref": "./examples/UpdateChannel.json" + }, + "Update Alexa": { + "$ref": "./examples/UpdateAlexaChannel.json" + }, + "Update Line": { + "$ref": "./examples/UpdateLineChannel.json" + }, + "Update DirectLine Speech": { + "$ref": "./examples/UpdateDirectLineSpeechChannel.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/resourceNameParameter" + }, + { + "$ref": "#/parameters/channelNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/BotChannel" + }, + "description": "The parameters to provide for the created bot." + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The resource provider should return 200 (OK) to indicate that the operation completed successfully. ", + "schema": { + "$ref": "#/definitions/BotChannel" + } + }, + "201": { + "description": "If resource is updated successfully, the service should return 201 (Created). Execution to continue asynchronously.", + "schema": { + "$ref": "#/definitions/BotChannel" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the resource group *or* resource does not exist, 404 (NotFound) should be returned.", + "schema": { + "$ref": "#/definitions/Error" + } + } + } + }, + "delete": { + "tags": [ + "Channel" + ], + "description": "Deletes a Channel registration from a Bot Service", + "operationId": "Channels_Delete", + "x-ms-examples": { + "Delete Bot": { + "$ref": "./examples/DeleteChannel.json" + }, + "Delete DirectLine Speech Bot": { + "$ref": "./examples/DeleteDirectLineSpeechChannel.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/resourceNameParameter" + }, + { + "name": "channelName", + "in": "path", + "required": true, + "type": "string", + "maxLength": 64, + "minLength": 2, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_.-]*$", + "description": "The name of the Bot resource." + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A 200 (OK) should be returned if the object exists and was deleted successfully;" + }, + "204": { + "description": "a 204 (NoContent) should be used if the resource does not exist and the request is well formed." + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + } + }, + "get": { + "tags": [ + "Channel" + ], + "description": "Returns a BotService Channel registration specified by the parameters.", + "operationId": "Channels_Get", + "x-ms-examples": { + "Get Bot": { + "$ref": "./examples/GetChannel.json" + }, + "Get Alexa Bot": { + "$ref": "./examples/GetAlexaChannel.json" + }, + "Get Line Bot": { + "$ref": "./examples/GetLineChannel.json" + }, + "Get DirectLine Speech Bot": { + "$ref": "./examples/GetDirectLineSpeechChannel.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/resourceNameParameter" + }, + { + "name": "channelName", + "in": "path", + "required": true, + "type": "string", + "maxLength": 64, + "minLength": 2, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_.-]*$", + "description": "The name of the Bot resource." + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The resource provider should return 200 (OK) to indicate that the operation completed successfully. ", + "schema": { + "$ref": "#/definitions/BotChannel" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the resource group *or* resource does not exist, 404 (NotFound) should be returned.", + "schema": { + "$ref": "#/definitions/Error" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.BotService/botServices/{resourceName}/channels/{channelName}/listChannelWithKeys": { + "post": { + "tags": [ + "Channel" + ], + "description": "Lists a Channel registration for a Bot Service including secrets", + "operationId": "Channels_ListWithKeys", + "x-ms-examples": { + "List Channel": { + "$ref": "./examples/ListChannel.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/resourceNameParameter" + }, + { + "$ref": "#/parameters/channelNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "If resource is retrieved successfully, the service should return 200 (OK).", + "schema": { + "$ref": "#/definitions/BotChannel" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.BotService/botServices/{resourceName}/channels": { + "get": { + "tags": [ + "Channel" + ], + "description": "Returns all the Channel registrations of a particular BotService resource", + "operationId": "Channels_ListByResourceGroup", + "x-ms-examples": { + "List Bots by Resource Group": { + "$ref": "./examples/ListChannelsByBotService.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/resourceNameParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The resource provider should return 200 (OK) to indicate that the operation completed successfully. For other errors (e.g. internal errors) use the appropriate HTTP error code.\nThe nextLink field is expected to point to the URL the client should use to fetch the next page (per server side paging). This matches the OData guidelines for paged responses here. If a resource provider does not support paging, it should return the same body (JSON object with “value” property) but omit nextLink entirely (or set to null, *not* empty string) for future compatibility.\nThe nextLink should be implemented using following query parameters:\n· skipToken: opaque token that allows the resource provider to skip resources already enumerated. This value is defined and returned by the RP after first request via nextLink.\n· top: the optional client query parameter which defines the maximum number of records to be returned by the server.\nImplementation details:\n· NextLink may include all the query parameters (specifically OData $filter) used by the client in the first query. \n· Server may return less records than requested with nextLink. Returning zero records with NextLink is an acceptable response. \nClients must fetch records until the nextLink is not returned back / null. Clients should never rely on number of returned records to determinate if pagination is completed.", + "schema": { + "$ref": "#/definitions/ChannelResponseList" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the resource group does not exist, 404 (NotFound) will be returned.", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.BotService/botServices/{resourceName}/channels/{channelName}/regeneratekeys": { + "post": { + "tags": [ + "Channel" + ], + "description": "Regenerates secret keys and returns them for the DirectLine Channel of a particular BotService resource", + "operationId": "DirectLine_RegenerateKeys", + "x-ms-examples": { + "Regenerate Keys for DirectLine Channel Site": { + "$ref": "./examples/DirectlineRegenerateKeys.json" + }, + "Regenerate Keys for WebChat Channel Site": { + "$ref": "./examples/WebChatRegenerateKeys.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/resourceNameParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/regenerateKeyschannelNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SiteInfo" + }, + "description": "The parameters to provide for the created bot." + } + ], + "responses": { + "200": { + "description": "The resource provider should return 200 (OK) to indicate that the operation completed successfully. For other errors (e.g. internal errors) use the appropriate HTTP error code.\nThe nextLink field is expected to point to the URL the client should use to fetch the next page (per server side paging). This matches the OData guidelines for paged responses here. If a resource provider does not support paging, it should return the same body (JSON object with “value” property) but omit nextLink entirely (or set to null, *not* empty string) for future compatibility.\nThe nextLink should be implemented using following query parameters:\n· skipToken: opaque token that allows the resource provider to skip resources already enumerated. This value is defined and returned by the RP after first request via nextLink.\n· top: the optional client query parameter which defines the maximum number of records to be returned by the server.\nImplementation details:\n· NextLink may include all the query parameters (specifically OData $filter) used by the client in the first query. \n· Server may return less records than requested with nextLink. Returning zero records with NextLink is an acceptable response. \nClients must fetch records until the nextLink is not returned back / null. Clients should never rely on number of returned records to determinate if pagination is completed.", + "schema": { + "$ref": "#/definitions/BotChannel" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the resource group does not exist, 404 (NotFound) will be returned.", + "schema": { + "$ref": "#/definitions/Error" + } + } + } + } + }, + "/providers/Microsoft.BotService/checkNameAvailability": { + "post": { + "tags": [ + "Bot" + ], + "description": "Check whether a bot name is available.", + "operationId": "Bots_GetCheckNameAvailability", + "x-ms-examples": { + "check Name Availability": { + "$ref": "./examples/CheckNameAvailability.json" + } + }, + "parameters": [ + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityRequestBody" + }, + "description": "The request body parameters to provide for the check name availability request" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The resource provider should return 200 (OK) to indicate that the operation completed successfully. For other errors (e.g. internal errors) use the appropriate HTTP error code.\nThe nextLink field is expected to point to the URL the client should use to fetch the next page (per server side paging). This matches the OData guidelines for paged responses. If a resource provider does not support paging, it should return the same body but leave nextLink empty for future compatibility.\nFor a detailed explanation of each field in the response body, please refer to the request body description in the PUT resource section. ", + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityResponseBody" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + } + } + }, + "/providers/Microsoft.BotService/operations": { + "get": { + "tags": [ + "Operations" + ], + "description": "Lists all the available BotService operations.", + "operationId": "Operations_List", + "x-ms-examples": { + "Get Operations": { + "$ref": "./examples/GetOperations.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/OperationEntityListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.BotService/listAuthServiceProviders": { + "post": { + "tags": [ + "ListServiceProviders" + ], + "description": "Lists the available Service Providers for creating Connection Settings", + "operationId": "BotConnection_ListServiceProviders", + "x-ms-examples": { + "List Auth Service Providers": { + "$ref": "./examples/ListServiceProviders.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "If resource is retrieved successfully, the service should return 200 (OK).", + "schema": { + "$ref": "#/definitions/ServiceProviderResponseList" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.BotService/botServices/{resourceName}/connections/{connectionName}/listWithSecrets": { + "post": { + "tags": [ + "BotConnection" + ], + "x-ms-examples": { + "Update Connection Setting": { + "$ref": "./examples/GetConnection.json" + } + }, + "description": "Get a Connection Setting registration for a Bot Service", + "operationId": "BotConnection_ListWithSecrets", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/resourceNameParameter" + }, + { + "$ref": "#/parameters/connectionNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The resource provider should return 200 (OK) to indicate that the operation completed successfully. ", + "schema": { + "$ref": "#/definitions/ConnectionSetting" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the resource group *or* resource does not exist, 404 (NotFound) should be returned.", + "schema": { + "$ref": "#/definitions/Error" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.BotService/botServices/{resourceName}/connections/{connectionName}": { + "put": { + "tags": [ + "BotConnection" + ], + "description": "Register a new Auth Connection for a Bot Service", + "operationId": "BotConnection_Create", + "x-ms-examples": { + "Create Connection Setting": { + "$ref": "./examples/PutConnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/resourceNameParameter" + }, + { + "$ref": "#/parameters/connectionNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ConnectionSetting" + }, + "description": "The parameters to provide for creating the Connection Setting." + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "If resource is created successfully or already existed, the service should return 200 (OK).", + "schema": { + "$ref": "#/definitions/ConnectionSetting" + } + }, + "201": { + "description": "If resource is created successfully, the service should return 201 (Created). Execution to continue asynchronously.", + "schema": { + "$ref": "#/definitions/ConnectionSetting" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + } + }, + "patch": { + "tags": [ + "BotConnection" + ], + "description": "Updates a Connection Setting registration for a Bot Service", + "operationId": "BotConnection_Update", + "x-ms-examples": { + "Update Connection Setting": { + "$ref": "./examples/UpdateConnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/resourceNameParameter" + }, + { + "$ref": "#/parameters/connectionNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ConnectionSetting" + }, + "description": "The parameters to provide for updating the Connection Setting." + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "If resource is created successfully or already existed, the service should return 200 (OK).", + "schema": { + "$ref": "#/definitions/ConnectionSetting" + } + }, + "201": { + "description": "If resource is created successfully, the service should return 201 (Created). Execution to continue asynchronously.", + "schema": { + "$ref": "#/definitions/ConnectionSetting" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + } + }, + "get": { + "tags": [ + "BotConnection" + ], + "x-ms-examples": { + "Update Connection Setting": { + "$ref": "./examples/GetConnection.json" + } + }, + "description": "Get a Connection Setting registration for a Bot Service", + "operationId": "BotConnection_Get", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/resourceNameParameter" + }, + { + "$ref": "#/parameters/connectionNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The resource provider should return 200 (OK) to indicate that the operation completed successfully. ", + "schema": { + "$ref": "#/definitions/ConnectionSetting" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the resource group *or* resource does not exist, 404 (NotFound) should be returned.", + "schema": { + "$ref": "#/definitions/Error" + } + } + } + }, + "delete": { + "tags": [ + "BotConnection" + ], + "description": "Deletes a Connection Setting registration for a Bot Service", + "operationId": "BotConnection_Delete", + "x-ms-examples": { + "Update Connection Setting": { + "$ref": "./examples/DeleteConnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/resourceNameParameter" + }, + { + "$ref": "#/parameters/connectionNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A 200 (OK) should be returned if the object exists and was deleted successfully;" + }, + "204": { + "description": "a 204 (NoContent) should be used if the resource does not exist and the request is well formed." + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.BotService/botServices/{resourceName}/connections": { + "get": { + "tags": [ + "BotConnection" + ], + "description": "Returns all the Connection Settings registered to a particular BotService resource", + "operationId": "BotConnection_ListByBotService", + "x-ms-examples": { + "List Connection Settings": { + "$ref": "./examples/ListConnectionsByBotService.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/resourceNameParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The resource provider should return 200 (OK) to indicate that the operation completed successfully. For other errors (e.g. internal errors) use the appropriate HTTP error code.\nThe nextLink field is expected to point to the URL the client should use to fetch the next page (per server side paging). This matches the OData guidelines for paged responses here. If a resource provider does not support paging, it should return the same body (JSON object with “value” property) but omit nextLink entirely (or set to null, *not* empty string) for future compatibility.\nThe nextLink should be implemented using following query parameters:\n· skipToken: opaque token that allows the resource provider to skip resources already enumerated. This value is defined and returned by the RP after first request via nextLink.\n· top: the optional client query parameter which defines the maximum number of records to be returned by the server.\nImplementation details:\n· NextLink may include all the query parameters (specifically OData $filter) used by the client in the first query. \n· Server may return less records than requested with nextLink. Returning zero records with NextLink is an acceptable response. \nClients must fetch records until the nextLink is not returned back / null. Clients should never rely on number of returned records to determinate if pagination is completed.", + "schema": { + "$ref": "#/definitions/ConnectionSettingResponseList" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the resource group does not exist, 404 (NotFound) will be returned.", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.BotService/hostSettings": { + "get": { + "tags": [ + "BotHostSettings" + ], + "description": "Get per subscription settings needed to host bot in compute resource such as Azure App Service", + "operationId": "HostSettings_Get", + "x-ms-examples": { + "Get Bot Host Settings": { + "$ref": "./examples/GetHostSettings.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "If resource is retrieved successfully, the service should return 200 (OK).", + "schema": { + "$ref": "#/definitions/HostSettingsResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.BotService/operationresults/{operationResultId}": { + "get": { + "tags": [ + "OperationResults" + ], + "description": "Get the operation result for a long running operation.", + "operationId": "OperationResults_Get", + "x-ms-examples": { + "Get operation result": { + "$ref": "./examples/OperationResultsGet.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/operationResultIdParameter" + } + ], + "responses": { + "200": { + "description": "The body contains all of the properties of the operation result.", + "schema": { + "$ref": "#/definitions/OperationResultsDescription" + } + }, + "202": { + "description": "Accepted - Get request accepted; the operation will complete asynchronously." + }, + "default": { + "description": "Default error response", + "x-ms-error-response": true, + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.BotService/botServices/{resourceName}/privateEndpointConnections": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_List", + "description": "List all the private endpoint connections associated with the Bot.", + "x-ms-examples": { + "List Private Endpoint Connections": { + "$ref": "./examples/ListPrivateEndpointConnections.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/resourceNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Successfully retrieved private endpoint connections.", + "schema": { + "$ref": "./privatelinks.json#/definitions/PrivateEndpointConnectionListResult" + } + }, + "default": { + "description": "Default error response", + "x-ms-error-response": true, + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.BotService/botServices/{resourceName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Get", + "description": "Gets the specified private endpoint connection associated with the Bot.", + "x-ms-examples": { + "Get Private Endpoint Connection": { + "$ref": "./examples/GetPrivateEndpointConnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/resourceNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/privatelinks.json#/parameters/PrivateEndpointConnectionName" + } + ], + "responses": { + "200": { + "description": "OK -- Get the private endpoint connection properties successfully.", + "schema": { + "$ref": "./privatelinks.json#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "x-ms-error-response": true, + "schema": { + "$ref": "#/definitions/Error" + } + } + } + }, + "put": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Create", + "description": "Update the state of specified private endpoint connection associated with the Bot.", + "x-ms-examples": { + "Put Private Endpoint Connection": { + "$ref": "./examples/PutPrivateEndpointConnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/resourceNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/privatelinks.json#/parameters/PrivateEndpointConnectionName" + }, + { + "name": "properties", + "in": "body", + "required": true, + "schema": { + "$ref": "./privatelinks.json#/definitions/PrivateEndpointConnection" + }, + "description": "The private endpoint connection properties." + } + ], + "responses": { + "200": { + "description": "OK -- Update the private endpoint connection properties successfully.", + "schema": { + "$ref": "./privatelinks.json#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "x-ms-error-response": true, + "schema": { + "$ref": "#/definitions/Error" + } + } + } + }, + "delete": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Delete", + "description": "Deletes the specified private endpoint connection associated with the Bot.", + "x-ms-examples": { + "Delete Private Endpoint Connection": { + "$ref": "./examples/DeletePrivateEndpointConnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/resourceNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/privatelinks.json#/parameters/PrivateEndpointConnectionName" + } + ], + "responses": { + "200": { + "description": "OK -- Delete the private endpoint connection successfully." + }, + "204": { + "description": "No Content -- The private endpoint connection does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "x-ms-error-response": true, + "schema": { + "$ref": "#/definitions/Error" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.BotService/botServices/{resourceName}/privateLinkResources": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "operationId": "PrivateLinkResources_ListByBotResource", + "description": "Gets the private link resources that need to be created for a Bot.", + "x-ms-examples": { + "List Private Link Resources": { + "$ref": "./examples/ListPrivateLinkResources.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/resourceNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private link resources.", + "schema": { + "$ref": "./privatelinks.json#/definitions/PrivateLinkResourceListResult" + } + }, + "default": { + "description": "Default error response", + "x-ms-error-response": true, + "schema": { + "$ref": "#/definitions/Error" + } + } + } + } + } + }, + "definitions": { + "Resource": { + "description": "Azure resource", + "x-ms-azure-resource": true, + "properties": { + "id": { + "description": "Specifies the resource ID.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Specifies the name of the resource.", + "type": "string", + "readOnly": true + }, + "location": { + "description": "Specifies the location of the resource.", + "type": "string" + }, + "type": { + "description": "Specifies the type of the resource.", + "type": "string", + "readOnly": true + }, + "tags": { + "description": "Contains resource tags defined as key/value pairs.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "Gets or sets the SKU of the resource." + }, + "kind": { + "$ref": "#/definitions/Kind", + "description": "Required. Gets or sets the Kind of the resource." + }, + "etag": { + "type": "string", + "description": "Entity Tag" + } + } + }, + "Sku": { + "properties": { + "name": { + "$ref": "#/definitions/SkuName", + "description": "The sku name" + }, + "tier": { + "readOnly": true, + "type": "string", + "description": "Gets the sku tier. This is based on the SKU name.", + "enum": [ + "Free", + "Standard" + ], + "x-ms-enum": { + "name": "SkuTier", + "modelAsString": true + } + } + }, + "required": [ + "name" + ], + "description": "The SKU of the cognitive services account." + }, + "SkuName": { + "type": "string", + "description": "The name of SKU.", + "enum": [ + "F0", + "S1" + ], + "x-ms-enum": { + "name": "SkuName", + "modelAsString": true + } + }, + "Kind": { + "type": "string", + "description": "Indicates the type of bot service", + "enum": [ + "sdk", + "designer", + "bot", + "function", + "azurebot" + ], + "x-ms-enum": { + "name": "Kind", + "modelAsString": true + } + }, + "Bot": { + "type": "object", + "description": "Bot resource definition", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/BotProperties", + "description": "The set of properties specific to bot resource" + } + } + }, + "BotProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "The Name of the bot" + }, + "description": { + "type": "string", + "description": "The description of the bot" + }, + "iconUrl": { + "type": "string", + "description": "The Icon Url of the bot" + }, + "endpoint": { + "type": "string", + "description": "The bot's endpoint" + }, + "endpointVersion": { + "type": "string", + "readOnly": true, + "description": "The bot's endpoint version" + }, + "msaAppId": { + "type": "string", + "description": "Microsoft App Id for the bot" + }, + "configuredChannels": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "description": "Collection of channels for which the bot is configured" + }, + "enabledChannels": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "description": "Collection of channels for which the bot is enabled" + }, + "developerAppInsightKey": { + "type": "string", + "description": "The Application Insights key" + }, + "developerAppInsightsApiKey": { + "type": "string", + "description": "The Application Insights Api Key" + }, + "developerAppInsightsApplicationId": { + "type": "string", + "description": "The Application Insights App Id" + }, + "luisAppIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Collection of LUIS App Ids" + }, + "luisKey": { + "type": "string", + "description": "The LUIS Key" + }, + "isCmekEnabled": { + "type": "boolean", + "description": "Whether Cmek is enabled" + }, + "cmekKeyVaultUrl": { + "type": "string", + "description": "The CMK Url" + }, + "isIsolated": { + "type": "boolean", + "description": "Whether the bot is in an isolated network" + }, + "schemaTransformationVersion": { + "type": "string", + "description": "The channel schema transformation version for the bot" + } + }, + "description": "The parameters to provide for the Bot.", + "required": [ + "displayName", + "endpoint", + "msaAppId" + ] + }, + "BotResponseList": { + "properties": { + "nextLink": { + "description": "The link used to get the next page of bot service resources.", + "type": "string" + }, + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Bot" + }, + "description": "Gets the list of bot service results and their properties." + } + }, + "description": "The list of bot service operation response." + }, + "BotChannel": { + "type": "object", + "description": "Bot channel resource definition", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/Channel", + "description": "The set of properties specific to bot channel resource" + } + } + }, + "Channel": { + "type": "object", + "description": "Channel definition", + "discriminator": "channelName", + "properties": { + "channelName": { + "type": "string", + "description": "The channel name" + } + }, + "required": [ + "channelName" + ] + }, + "AlexaChannel": { + "type": "object", + "x-ms-discriminator-value": "AlexaChannel", + "description": "Alexa channel definition", + "allOf": [ + { + "$ref": "#/definitions/Channel" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/AlexaChannelProperties", + "description": "The set of properties specific to Alexa channel resource" + } + } + }, + "AlexaChannelProperties": { + "properties": { + "alexaSkillId": { + "type": "string", + "description": "The Alexa skill Id" + }, + "urlFragment": { + "type": "string", + "readOnly": true, + "description": "Url fragment used in part of the Uri configured in Alexa" + }, + "serviceEndpointUri": { + "type": "string", + "readOnly": true, + "description": "Full Uri used to configured the skill in Alexa" + }, + "isEnabled": { + "type": "boolean", + "description": "Whether this channel is enabled for the bot" + } + }, + "description": "The parameters to provide for the Alexa channel.", + "required": [ + "alexaSkillId", + "isEnabled" + ] + }, + "FacebookChannel": { + "type": "object", + "description": "Facebook channel definition", + "x-ms-discriminator-value": "FacebookChannel", + "allOf": [ + { + "$ref": "#/definitions/Channel" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/FacebookChannelProperties", + "description": "The set of properties specific to bot facebook channel" + } + } + }, + "FacebookChannelProperties": { + "properties": { + "verifyToken": { + "x-ms-secret": true, + "type": "string", + "readOnly": true, + "description": "Verify token. Value only returned through POST to the action Channel List API, otherwise empty." + }, + "pages": { + "type": "array", + "items": { + "$ref": "#/definitions/FacebookPage" + }, + "description": "The list of Facebook pages" + }, + "appId": { + "type": "string", + "description": "Facebook application id" + }, + "appSecret": { + "x-ms-secret": true, + "type": "string", + "description": "Facebook application secret. Value only returned through POST to the action Channel List API, otherwise empty." + }, + "callbackUrl": { + "type": "string", + "readOnly": true, + "description": "Callback Url" + }, + "isEnabled": { + "type": "boolean", + "description": "Whether this channel is enabled for the bot" + } + }, + "description": "The parameters to provide for the Facebook channel.", + "required": [ + "appId", + "isEnabled" + ] + }, + "FacebookPage": { + "properties": { + "id": { + "type": "string", + "description": "Page id" + }, + "accessToken": { + "x-ms-secret": true, + "type": "string", + "description": "Facebook application access token. Value only returned through POST to the action Channel List API, otherwise empty." + } + }, + "description": "A Facebook page for Facebook channel registration", + "required": [ + "id" + ] + }, + "EmailChannel": { + "type": "object", + "description": "Email channel definition", + "x-ms-discriminator-value": "EmailChannel", + "allOf": [ + { + "$ref": "#/definitions/Channel" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/EmailChannelProperties", + "description": "The set of properties specific to email channel resource" + } + } + }, + "EmailChannelProperties": { + "properties": { + "emailAddress": { + "type": "string", + "description": "The email address" + }, + "password": { + "type": "string", + "description": "The password for the email address. Value only returned through POST to the action Channel List API, otherwise empty." + }, + "isEnabled": { + "type": "boolean", + "description": "Whether this channel is enabled for the bot" + } + }, + "description": "The parameters to provide for the Email channel.", + "required": [ + "emailAddress", + "isEnabled" + ] + }, + "MsTeamsChannel": { + "type": "object", + "x-ms-discriminator-value": "MsTeamsChannel", + "description": "Microsoft Teams channel definition", + "allOf": [ + { + "$ref": "#/definitions/Channel" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/MsTeamsChannelProperties", + "description": "The set of properties specific to Microsoft Teams channel resource" + } + } + }, + "MsTeamsChannelProperties": { + "properties": { + "enableCalling": { + "type": "boolean", + "description": "Enable calling for Microsoft Teams channel" + }, + "callingWebHook": { + "type": "string", + "description": "Webhook for Microsoft Teams channel calls" + }, + "isEnabled": { + "type": "boolean", + "description": "Whether this channel is enabled for the bot" + } + }, + "description": "The parameters to provide for the Microsoft Teams channel.", + "required": [ + "isEnabled" + ] + }, + "SkypeChannel": { + "type": "object", + "description": "Skype channel definition", + "x-ms-discriminator-value": "SkypeChannel", + "allOf": [ + { + "$ref": "#/definitions/Channel" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/SkypeChannelProperties", + "description": "The set of properties specific to Skype channel resource" + } + } + }, + "SkypeChannelProperties": { + "properties": { + "enableMessaging": { + "type": "boolean", + "description": "Enable messaging for Skype channel" + }, + "enableMediaCards": { + "type": "boolean", + "description": "Enable media cards for Skype channel" + }, + "enableVideo": { + "type": "boolean", + "description": "Enable video for Skype channel" + }, + "enableCalling": { + "type": "boolean", + "description": "Enable calling for Skype channel" + }, + "enableScreenSharing": { + "type": "boolean", + "description": "Enable screen sharing for Skype channel" + }, + "enableGroups": { + "type": "boolean", + "description": "Enable groups for Skype channel" + }, + "groupsMode": { + "type": "string", + "description": "Group mode for Skype channel" + }, + "callingWebHook": { + "type": "string", + "description": "Calling web hook for Skype channel" + }, + "isEnabled": { + "type": "boolean", + "description": "Whether this channel is enabled for the bot" + } + }, + "description": "The parameters to provide for the Microsoft Teams channel.", + "required": [ + "isEnabled" + ] + }, + "KikChannel": { + "type": "object", + "x-ms-discriminator-value": "KikChannel", + "description": "Kik channel definition", + "allOf": [ + { + "$ref": "#/definitions/Channel" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/KikChannelProperties", + "description": "The set of properties specific to Kik channel resource" + } + } + }, + "KikChannelProperties": { + "properties": { + "userName": { + "type": "string", + "description": "The Kik user name" + }, + "apiKey": { + "type": "string", + "description": "Kik API key. Value only returned through POST to the action Channel List API, otherwise empty." + }, + "isValidated": { + "type": "boolean", + "description": "Whether this channel is validated for the bot" + }, + "isEnabled": { + "type": "boolean", + "description": "Whether this channel is enabled for the bot" + } + }, + "description": "The parameters to provide for the Kik channel.", + "required": [ + "userName", + "isEnabled" + ] + }, + "WebChatChannel": { + "type": "object", + "x-ms-discriminator-value": "WebChatChannel", + "description": "Web Chat channel definition", + "allOf": [ + { + "$ref": "#/definitions/Channel" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/WebChatChannelProperties", + "description": "The set of properties specific to Web Chat channel resource" + } + } + }, + "WebChatChannelProperties": { + "properties": { + "webChatEmbedCode": { + "type": "string", + "x-ms-mutability": [ + "read" + ], + "readOnly": true, + "description": "Web chat control embed code" + }, + "sites": { + "type": "array", + "items": { + "$ref": "#/definitions/WebChatSite" + }, + "description": "The list of Web Chat sites" + } + }, + "description": "The parameters to provide for the Web Chat channel." + }, + "DirectLineChannel": { + "type": "object", + "x-ms-discriminator-value": "DirectLineChannel", + "description": "Direct Line channel definition", + "allOf": [ + { + "$ref": "#/definitions/Channel" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/DirectLineChannelProperties", + "description": "The set of properties specific to Direct Line channel resource" + } + } + }, + "DirectLineChannelProperties": { + "properties": { + "sites": { + "type": "array", + "items": { + "$ref": "#/definitions/DirectLineSite" + }, + "description": "The list of Direct Line sites" + } + }, + "description": "The parameters to provide for the Direct Line channel." + }, + "TelegramChannel": { + "type": "object", + "description": "Telegram channel definition", + "x-ms-discriminator-value": "TelegramChannel", + "allOf": [ + { + "$ref": "#/definitions/Channel" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/TelegramChannelProperties", + "description": "The set of properties specific to Telegram channel resource" + } + } + }, + "TelegramChannelProperties": { + "properties": { + "accessToken": { + "x-ms-secret": true, + "type": "string", + "description": "The Telegram access token. Value only returned through POST to the action Channel List API, otherwise empty." + }, + "isValidated": { + "type": "boolean", + "description": "Whether this channel is validated for the bot" + }, + "isEnabled": { + "type": "boolean", + "description": "Whether this channel is enabled for the bot" + } + }, + "description": "The parameters to provide for the Telegram channel.", + "required": [ + "isEnabled" + ] + }, + "SmsChannel": { + "type": "object", + "description": "Sms channel definition", + "x-ms-discriminator-value": "SmsChannel", + "allOf": [ + { + "$ref": "#/definitions/Channel" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/SmsChannelProperties", + "description": "The set of properties specific to Sms channel resource" + } + } + }, + "SmsChannelProperties": { + "properties": { + "phone": { + "type": "string", + "description": "The Sms phone" + }, + "accountSID": { + "type": "string", + "description": "The Sms account SID. Value only returned through POST to the action Channel List API, otherwise empty." + }, + "authToken": { + "x-ms-secret": true, + "type": "string", + "description": "The Sms auth token. Value only returned through POST to the action Channel List API, otherwise empty." + }, + "isValidated": { + "type": "boolean", + "description": "Whether this channel is validated for the bot" + }, + "isEnabled": { + "type": "boolean", + "description": "Whether this channel is enabled for the bot" + } + }, + "description": "The parameters to provide for the Sms channel.", + "required": [ + "phone", + "accountSID", + "isEnabled" + ] + }, + "SlackChannel": { + "type": "object", + "description": "Slack channel definition", + "x-ms-discriminator-value": "SlackChannel", + "allOf": [ + { + "$ref": "#/definitions/Channel" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/SlackChannelProperties", + "description": "The set of properties specific to Slack channel resource" + } + } + }, + "SlackChannelProperties": { + "properties": { + "clientId": { + "type": "string", + "description": "The Slack client id" + }, + "clientSecret": { + "x-ms-secret": true, + "type": "string", + "description": "The Slack client secret. Value only returned through POST to the action Channel List API, otherwise empty." + }, + "verificationToken": { + "x-ms-secret": true, + "type": "string", + "description": "The Slack verification token. Value only returned through POST to the action Channel List API, otherwise empty." + }, + "landingPageUrl": { + "type": "string", + "description": "The Slack landing page Url" + }, + "redirectAction": { + "type": "string", + "description": "The Slack redirect action", + "readOnly": true + }, + "lastSubmissionId": { + "type": "string", + "description": "The Sms auth token", + "readOnly": true + }, + "registerBeforeOAuthFlow": { + "type": "boolean", + "description": "Whether to register the settings before OAuth validation is performed. Recommended to True.", + "readOnly": true + }, + "isValidated": { + "type": "boolean", + "description": "Whether this channel is validated for the bot", + "readOnly": true + }, + "signingSecret": { + "x-ms-secret": true, + "type": "string", + "description": "The Slack signing secret." + }, + "isEnabled": { + "type": "boolean", + "description": "Whether this channel is enabled for the bot" + } + }, + "description": "The parameters to provide for the Slack channel.", + "required": [ + "isEnabled" + ] + }, + "LineChannel": { + "type": "object", + "description": "Line channel definition", + "x-ms-discriminator-value": "LineChannel", + "allOf": [ + { + "$ref": "#/definitions/Channel" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/LineChannelProperties", + "description": "The set of properties specific to line channel resource" + } + } + }, + "LineChannelProperties": { + "properties": { + "lineRegistrations": { + "type": "array", + "description": "The list of line channel registrations", + "items": { + "$ref": "#/definitions/LineRegistration" + } + }, + "callbackUrl": { + "type": "string", + "description": "Callback Url to enter in line registration.", + "readOnly": true + }, + "isValidated": { + "type": "boolean", + "description": "Whether this channel is validated for the bot", + "readOnly": true + } + }, + "description": "The parameters to provide for the Line channel.", + "required": [ + "lineRegistrations" + ] + }, + "LineRegistration": { + "properties": { + "generatedId": { + "x-ms-mutability": [ + "read" + ], + "type": "string", + "description": "Id generated for the line channel registration", + "readOnly": true + }, + "channelSecret": { + "x-ms-secret": true, + "type": "string", + "description": "Secret for the line channel registration" + }, + "channelAccessToken": { + "x-ms-secret": true, + "type": "string", + "description": "Access token for the line channel registration" + } + }, + "description": "The properties corresponding to a line channel registration" + }, + "DirectLineSpeechChannel": { + "type": "object", + "description": "DirectLine Speech channel definition", + "x-ms-discriminator-value": "DirectLineSpeechChannel", + "allOf": [ + { + "$ref": "#/definitions/Channel" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/DirectLineSpeechChannelProperties", + "description": "The set of properties specific to DirectLine Speech channel resource" + } + } + }, + "DirectLineSpeechChannelProperties": { + "properties": { + "cognitiveServiceRegion": { + "type": "string", + "description": "The cognitive service region with this channel registration." + }, + "cognitiveServiceSubscriptionKey": { + "x-ms-secret": true, + "type": "string", + "description": "The cognitive service subscription key to use with this channel registration." + }, + "isEnabled": { + "type": "boolean", + "description": "Whether this channel is enabled or not." + }, + "customVoiceDeploymentId": { + "type": "string", + "description": "Custom speech model id (optional)." + }, + "customSpeechModelId": { + "type": "string", + "description": "Custom voice deployment id (optional)." + }, + "isDefaultBotForCogSvcAccount": { + "type": "boolean", + "description": "Make this a default bot for chosen cognitive service account." + } + }, + "description": "The parameters to provide for the DirectLine Speech channel.", + "required": [ + "cognitiveServiceRegion", + "cognitiveServiceSubscriptionKey" + ] + }, + "ChannelResponseList": { + "properties": { + "nextLink": { + "description": "The link used to get the next page of bot service channel resources.", + "type": "string" + }, + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/BotChannel" + }, + "description": "Gets the list of bot service channel results and their properties." + } + }, + "description": "The list of bot service channel operation response." + }, + "WebChatSite": { + "properties": { + "siteId": { + "type": "string", + "description": "Site Id", + "x-ms-mutability": [ + "read" + ], + "readOnly": true + }, + "siteName": { + "type": "string", + "description": "Site name" + }, + "key": { + "type": "string", + "description": "Primary key. Value only returned through POST to the action Channel List API, otherwise empty.", + "x-ms-mutability": [ + "read" + ], + "readOnly": true + }, + "key2": { + "type": "string", + "description": "Secondary key. Value only returned through POST to the action Channel List API, otherwise empty.", + "x-ms-mutability": [ + "read" + ], + "readOnly": true + }, + "isEnabled": { + "type": "boolean", + "description": "Whether this site is enabled for DirectLine channel" + }, + "enablePreview": { + "type": "boolean", + "description": "Whether this site is enabled for preview versions of Webchat" + } + }, + "required": [ + "siteName", + "isEnabled", + "enablePreview" + ], + "description": "A site for the Webchat channel" + }, + "DirectLineSite": { + "properties": { + "siteId": { + "x-ms-mutability": [ + "read" + ], + "type": "string", + "description": "Site Id", + "readOnly": true + }, + "siteName": { + "type": "string", + "description": "Site name" + }, + "key": { + "x-ms-mutability": [ + "read" + ], + "type": "string", + "description": "Primary key. Value only returned through POST to the action Channel List API, otherwise empty.", + "readOnly": true + }, + "key2": { + "x-ms-mutability": [ + "read" + ], + "type": "string", + "description": "Secondary key. Value only returned through POST to the action Channel List API, otherwise empty.", + "readOnly": true + }, + "isEnabled": { + "type": "boolean", + "description": "Whether this site is enabled for DirectLine channel." + }, + "isV1Enabled": { + "type": "boolean", + "description": "Whether this site is enabled for Bot Framework V1 protocol." + }, + "isV3Enabled": { + "type": "boolean", + "description": "Whether this site is enabled for Bot Framework V1 protocol." + }, + "isSecureSiteEnabled": { + "type": "boolean", + "description": "Whether this site is enabled for authentication with Bot Framework." + }, + "trustedOrigins": { + "type": "array", + "description": "List of Trusted Origin URLs for this site. This field is applicable only if isSecureSiteEnabled is True.", + "items": { + "type": "string" + } + } + }, + "description": "A site for the Direct Line channel", + "required": [ + "isV1Enabled", + "isV3Enabled", + "isEnabled", + "siteName" + ] + }, + "SiteInfo": { + "properties": { + "siteName": { + "type": "string", + "description": "The site name" + }, + "key": { + "type": "string", + "description": "Determines which key is to be regenerated", + "enum": [ + "key1", + "key2" + ], + "x-ms-enum": { + "name": "key", + "modelAsString": false + } + } + }, + "description": "Site information for WebChat or DirectLine Channels to identify which site to regenerate keys for.", + "type": "object", + "required": [ + "siteName", + "key" + ] + }, + "ConnectionItemName": { + "properties": { + "name": { + "type": "string", + "description": "Connection Item name that has been added in the API", + "readOnly": true + } + }, + "description": "The display name of a connection Item Setting registered with the Bot" + }, + "ConnectionSettingParameter": { + "properties": { + "key": { + "type": "string", + "description": "Key for the Connection Setting Parameter." + }, + "value": { + "type": "string", + "description": "Value associated with the Connection Setting Parameter." + } + }, + "description": "Extra Parameter in a Connection Setting Properties to indicate service provider specific properties" + }, + "ConnectionSettingProperties": { + "properties": { + "clientId": { + "type": "string", + "description": "Client Id associated with the Connection Setting." + }, + "settingId": { + "type": "string", + "description": "Setting Id set by the service for the Connection Setting.", + "readOnly": true + }, + "clientSecret": { + "x-ms-secret": true, + "type": "string", + "description": "Client Secret associated with the Connection Setting" + }, + "scopes": { + "type": "string", + "description": "Scopes associated with the Connection Setting" + }, + "serviceProviderId": { + "type": "string", + "description": "Service Provider Id associated with the Connection Setting" + }, + "serviceProviderDisplayName": { + "type": "string", + "description": "Service Provider Display Name associated with the Connection Setting" + }, + "parameters": { + "type": "array", + "description": "Service Provider Parameters associated with the Connection Setting", + "items": { + "$ref": "#/definitions/ConnectionSettingParameter" + } + } + }, + "description": "Properties for a Connection Setting Item" + }, + "ConnectionSetting": { + "type": "object", + "description": "Bot channel resource definition", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ConnectionSettingProperties", + "description": "The set of properties specific to bot channel resource" + } + } + }, + "ConnectionSettingResponseList": { + "properties": { + "nextLink": { + "description": "The link used to get the next page of bot service connection setting resources.", + "type": "string" + }, + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ConnectionSetting" + }, + "description": "Gets the list of bot service connection settings and their properties." + } + }, + "description": "The list of bot service connection settings response." + }, + "ServiceProviderResponseList": { + "properties": { + "nextLink": { + "description": "The link used to get the next page of bot service providers.", + "type": "string" + }, + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ServiceProvider" + }, + "description": "Gets the list of bot service providers and their properties." + } + }, + "description": "The list of bot service providers response." + }, + "ServiceProviderParameter": { + "properties": { + "name": { + "type": "string", + "description": "Name of the Service Provider", + "readOnly": true + }, + "type": { + "type": "string", + "description": "Type of the Service Provider", + "readOnly": true + }, + "displayName": { + "type": "string", + "description": "Display Name of the Service Provider", + "readOnly": true + }, + "description": { + "type": "string", + "description": "Description of the Service Provider", + "readOnly": true + }, + "helpUrl": { + "type": "string", + "description": "Help Url for the Service Provider", + "readOnly": true + }, + "default": { + "type": "string", + "description": "Default Name for the Service Provider", + "readOnly": true + } + }, + "description": "Extra Parameters specific to each Service Provider" + }, + "ServiceProviderProperties": { + "properties": { + "id": { + "type": "string", + "description": "Id for Service Provider", + "readOnly": true + }, + "displayName": { + "type": "string", + "description": "Display Name of the Service Provider", + "readOnly": true + }, + "serviceProviderName": { + "type": "string", + "description": "Display Name of the Service Provider", + "readOnly": true + }, + "devPortalUrl": { + "type": "string", + "description": "Display Name of the Service Provider", + "readOnly": true + }, + "iconUrl": { + "type": "string", + "description": "Display Name of the Service Provider", + "readOnly": true + }, + "parameters": { + "description": "The list of parameters for the Service Provider", + "type": "array", + "items": { + "$ref": "#/definitions/ServiceProviderParameter" + } + } + }, + "description": "The Object used to describe a Service Provider supported by Bot Service" + }, + "ServiceProvider": { + "type": "object", + "description": "Service Provider Definition", + "properties": { + "properties": { + "$ref": "#/definitions/ServiceProviderProperties", + "description": "The Properties of a Service Provider Object" + } + } + }, + "Error": { + "properties": { + "error": { + "$ref": "#/definitions/ErrorBody", + "description": "The error body." + } + }, + "description": "Bot Service error object." + }, + "ErrorBody": { + "properties": { + "code": { + "type": "string", + "description": "error code" + }, + "message": { + "type": "string", + "description": "error message" + } + }, + "description": "Bot Service error body.", + "required": [ + "code", + "message" + ] + }, + "OperationEntityListResult": { + "description": "The list of bot service operation response.", + "type": "object", + "properties": { + "nextLink": { + "description": "The link used to get the next page of operations.", + "type": "string" + }, + "value": { + "description": "The list of operations.", + "type": "array", + "items": { + "$ref": "#/definitions/OperationEntity" + } + } + } + }, + "OperationEntity": { + "description": "The operations supported by Bot Service Management.", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}.", + "type": "string" + }, + "display": { + "$ref": "#/definitions/OperationDisplayInfo", + "description": "The operation supported by Bot Service Management." + }, + "origin": { + "description": "The origin of the operation.", + "type": "string" + }, + "properties": { + "description": "Additional properties.", + "type": "object" + } + } + }, + "OperationDisplayInfo": { + "description": "The operation supported by Bot Service Management.", + "type": "object", + "properties": { + "description": { + "description": "The description of the operation.", + "type": "string" + }, + "operation": { + "description": "The action that users can perform, based on their permission level.", + "type": "string" + }, + "provider": { + "description": "Service provider: Microsoft Bot Service.", + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed.", + "type": "string" + } + } + }, + "CheckNameAvailabilityRequestBody": { + "description": "The request body for a request to Bot Service Management to check availability of a bot name.", + "type": "object", + "properties": { + "name": { + "description": "the name of the bot for which availability needs to be checked.", + "type": "string" + }, + "type": { + "description": "the type of the bot for which availability needs to be checked", + "type": "string" + } + } + }, + "CheckNameAvailabilityResponseBody": { + "description": "The response body returned for a request to Bot Service Management to check availability of a bot name.", + "type": "object", + "properties": { + "valid": { + "description": "indicates if the bot name is valid.", + "type": "boolean" + }, + "message": { + "description": "additional message from the bot management api showing why a bot name is not available", + "type": "string" + } + } + }, + "HostSettingsResponse": { + "description": "The response body returned for a request to Bot Service Management to check per subscription hostSettings", + "type": "object", + "properties": { + "OAuthUrl": { + "description": "For in-conversation bot user authentication", + "type": "string" + }, + "ToBotFromChannelOpenIdMetadataUrl": { + "description": "For verifying incoming tokens from the channels", + "type": "string" + }, + "ToBotFromChannelTokenIssuer": { + "description": "For verifying incoming tokens from the channels", + "type": "string" + }, + "ToBotFromEmulatorOpenIdMetadataUrl": { + "description": "For verifying incoming tokens from bot emulator", + "type": "string" + }, + "ToChannelFromBotLoginUrl": { + "description": "For getting access token to channels from bot host", + "type": "string" + }, + "ToChannelFromBotOAuthScope": { + "description": "For getting access token to channels from bot host", + "type": "string" + }, + "ValidateAuthority": { + "description": "Per cloud OAuth setting on whether authority is validated", + "type": "boolean" + }, + "BotOpenIdMetadata": { + "description": "Same as toBotFromChannelOpenIdMetadataUrl, used by SDK < v4.12", + "type": "string" + } + } + }, + "OperationResultsDescription": { + "description": "The properties indicating the operation result of an operation on a service.", + "type": "object", + "properties": { + "id": { + "description": "The ID of the operation returned.", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "The name of the operation result.", + "readOnly": true, + "type": "string" + }, + "status": { + "description": "The status of the operation being performed.", + "enum": [ + "Canceled", + "Succeeded", + "Failed", + "Requested", + "Running" + ], + "readOnly": true, + "type": "string", + "x-ms-enum": { + "name": "OperationResultStatus", + "modelAsString": true + } + }, + "startTime": { + "format": "date-time", + "description": "The time that the operation was started.", + "readOnly": true, + "type": "string" + } + } + } + }, + "parameters": { + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "x-ms-parameter-location": "method", + "in": "path", + "required": true, + "type": "string", + "maxLength": 64, + "minLength": 2, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_.-]*$", + "description": "The name of the Bot resource group in the user subscription." + }, + "resourceNameParameter": { + "name": "resourceName", + "x-ms-parameter-location": "method", + "in": "path", + "required": true, + "type": "string", + "maxLength": 64, + "minLength": 2, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_.-]*$", + "description": "The name of the Bot resource." + }, + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Azure Subscription ID.", + "required": true, + "type": "string" + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Version of the API to be used with the client request." + }, + "operationResultIdParameter": { + "name": "operationResultId", + "in": "path", + "description": "The ID of the operation result to get.", + "required": true, + "x-ms-parameter-location": "method", + "type": "string" + }, + "connectionNameParameter": { + "name": "connectionName", + "x-ms-parameter-location": "method", + "in": "path", + "required": true, + "type": "string", + "maxLength": 64, + "minLength": 2, + "pattern": "^[a-zA-Z0-9][\\sa-zA-Z0-9_.-]*$", + "description": "The name of the Bot Service Connection Setting resource." + }, + "channelNameParameter": { + "name": "channelName", + "x-ms-parameter-location": "method", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "AlexaChannel", + "FacebookChannel", + "EmailChannel", + "KikChannel", + "TelegramChannel", + "SlackChannel", + "MsTeamsChannel", + "SkypeChannel", + "WebChatChannel", + "DirectLineChannel", + "SmsChannel", + "LineChannel", + "DirectLineSpeechChannel" + ], + "x-ms-enum": { + "name": "channelName", + "modelAsString": false, + "values": [ + { + "value": "AlexaChannel" + }, + { + "value": "FacebookChannel" + }, + { + "value": "EmailChannel" + }, + { + "value": "KikChannel" + }, + { + "value": "TelegramChannel" + }, + { + "value": "SlackChannel" + }, + { + "value": "MsTeamsChannel" + }, + { + "value": "SkypeChannel" + }, + { + "value": "WebChatChannel" + }, + { + "value": "DirectLineChannel" + }, + { + "value": "SmsChannel" + }, + { + "value": "LineChannel" + }, + { + "value": "DirectLineSpeechChannel" + } + ] + }, + "description": "The name of the Channel resource." + }, + "regenerateKeyschannelNameParameter": { + "name": "channelName", + "x-ms-parameter-location": "method", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "WebChatChannel", + "DirectLineChannel" + ], + "x-ms-enum": { + "name": "regenerateKeysChannelName", + "modelAsString": false, + "values": [ + { + "value": "WebChatChannel" + }, + { + "value": "DirectLineChannel" + } + ] + }, + "description": "The name of the Channel resource for which keys are to be regenerated." + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/CheckNameAvailability.json b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/CheckNameAvailability.json new file mode 100644 index 000000000000..1cfee4911fe4 --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/CheckNameAvailability.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2021-05-01-preview", + "parameters": { + "name": "testbotname", + "type": "string" + } + }, + "responses": { + "200": { + "body": { + "valid": true, + "message": "custom message from server" + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/CreateBot.json b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/CreateBot.json new file mode 100644 index 000000000000..459eed1e7555 --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/CreateBot.json @@ -0,0 +1,117 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "api-version": "2021-05-01-preview", + "resourceName": "samplebotname", + "parameters": { + "location": "West US", + "sku": { + "name": "S1" + }, + "etag": "etag1", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "kind": "sdk", + "properties": { + "description": "The description of the bot", + "developerAppInsightKey": "appinsightskey", + "developerAppInsightsApiKey": "appinsightsapikey", + "developerAppInsightsApplicationId": "appinsightsappid", + "displayName": "The Name of the bot", + "endpoint": "http://mybot.coffee", + "iconUrl": "http://myicon", + "luisAppIds": [ + "luisappid1", + "luisappid2" + ], + "luisKey": "luiskey", + "msaAppId": "exampleappid", + "isCmekEnabled": true, + "cmekKeyVaultUrl": "https://myCmekKey", + "isIsolated": false, + "schemaTransformationVersion": "1.0" + } + } + }, + "responses": { + "200": { + "body": { + "location": "West US", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "name": "samplebotname", + "type": "Microsoft.BotService/botServices", + "id": "/subscriptions/subscription-id/resourceGroups/OneResourceGroupName/providers/Microsoft.BotService/botServices/samplebotname", + "kind": "sdk", + "etag": "etag1", + "properties": { + "description": "The description of the bot", + "developerAppInsightKey": "appinsightskey", + "developerAppInsightsApplicationId": "appinsightsappid", + "displayName": "The Name of the bot", + "endpoint": "http://mybot.coffee", + "endpointVersion": "version", + "iconUrl": "http://myicon", + "luisAppIds": [ + "luisappid1", + "luisappid2" + ], + "msaAppId": "msaappid", + "configuredChannels": [ + "facebook", + "groupme" + ], + "enabledChannels": [ + "facebook" + ], + "isCmekEnabled": true, + "cmekKeyVaultUrl": "https://myCmekKey", + "isIsolated": false, + "schemaTransformationVersion": "1.0" + } + } + }, + "201": { + "body": { + "location": "West US", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "name": "samplebotname", + "type": "Microsoft.BotService/botServices", + "id": "/subscriptions/subscription-id/resourceGroups/OneResourceGroupName/providers/Microsoft.BotService/botServices/samplebotname", + "kind": "sdk", + "properties": { + "description": "The description of the bot", + "developerAppInsightsApplicationId": "appinsightsappid", + "displayName": "The Name of the bot", + "endpoint": "http://mybot.coffee", + "endpointVersion": "version", + "iconUrl": "http://myicon", + "luisAppIds": [ + "luisappid1", + "luisappid2" + ], + "msaAppId": "msaappid", + "configuredChannels": [ + "facebook", + "groupme" + ], + "enabledChannels": [ + "facebook" + ], + "isCmekEnabled": true, + "cmekKeyVaultUrl": "https://myCmekKey", + "isIsolated": false, + "schemaTransformationVersion": "1.0" + } + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/DeleteBot.json b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/DeleteBot.json new file mode 100644 index 000000000000..b73a1f6633c8 --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/DeleteBot.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "api-version": "2021-05-01-preview", + "resourceName": "samplebotname" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/DeleteChannel.json b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/DeleteChannel.json new file mode 100644 index 000000000000..7f25eb68fb75 --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/DeleteChannel.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "api-version": "2021-05-01-preview", + "resourceName": "samplebotname", + "channelName": "EmailChannel" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/DeleteConnection.json b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/DeleteConnection.json new file mode 100644 index 000000000000..284ba06b13ee --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/DeleteConnection.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "api-version": "2021-05-01-preview", + "resourceName": "samplebotname", + "connectionName": "sampleConnection" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/DeleteDirectLineSpeechChannel.json b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/DeleteDirectLineSpeechChannel.json new file mode 100644 index 000000000000..3b5adfa79c50 --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/DeleteDirectLineSpeechChannel.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "api-version": "2021-05-01-preview", + "resourceName": "samplebotname", + "channelName": "DirectLineSpeechChannel" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/DeletePrivateEndpointConnection.json b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/DeletePrivateEndpointConnection.json new file mode 100644 index 000000000000..e17e3518d111 --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/DeletePrivateEndpointConnection.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res6977", + "resourceName": "sto2527", + "privateEndpointConnectionName": "{privateEndpointConnectionName}", + "api-version": "2021-05-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/DirectlineRegenerateKeys.json b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/DirectlineRegenerateKeys.json new file mode 100644 index 000000000000..1e173b3ef60c --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/DirectlineRegenerateKeys.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "api-version": "2021-05-01-preview", + "resourceName": "samplebotname", + "channelName": "DirectLineChannel", + "parameters": { + "siteName": "testSiteName", + "key": "key1" + } + }, + "responses": { + "200": { + "body": { + "location": "global", + "properties": { + "channelName": "DirectLineChannel", + "properties": { + "sites": [ + { + "siteId": "abcd", + "siteName": "Default Site", + "key": "key1", + "key2": "key2", + "isEnabled": true, + "isV1Enabled": true, + "isV3Enabled": true + } + ] + } + } + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/GetAlexaChannel.json b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/GetAlexaChannel.json new file mode 100644 index 000000000000..ec1622dbcb44 --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/GetAlexaChannel.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "api-version": "2021-05-01-preview", + "resourceName": "samplebotname", + "channelName": "AlexaChannel" + }, + "responses": { + "200": { + "body": { + "location": "global", + "properties": { + "channelName": "AlexaChannel", + "properties": { + "alexaSkillId": "alexa skill id", + "urlFragment": "XUrlFragmentX", + "serviceEndpointUri": "https://domain/XUrlFragmentX/botId", + "isEnabled": true + } + } + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/GetBot.json b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/GetBot.json new file mode 100644 index 000000000000..478fbb23654d --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/GetBot.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "api-version": "2021-05-01-preview", + "resourceName": "samplebotname" + }, + "responses": { + "200": { + "body": { + "location": "West US", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "name": "samplebotname", + "type": "Microsoft.BotService/botServices", + "id": "/subscriptions/subscription-id/resourceGroups/OneResourceGroupName/providers/Microsoft.BotService/botServices/samplebotname", + "kind": "sdk", + "etag": "etag1", + "properties": { + "description": "The description of the bot", + "developerAppInsightKey": "appinsightskey", + "developerAppInsightsApplicationId": "appinsightsappid", + "displayName": "The Name of the bot", + "endpoint": "http://mybot.coffee", + "endpointVersion": "version", + "iconUrl": "http://myicon", + "luisAppIds": [ + "luisappid1", + "luisappid2" + ], + "msaAppId": "msaappid", + "configuredChannels": [ + "facebook", + "groupme" + ], + "enabledChannels": [ + "facebook" + ], + "isCmekEnabled": true, + "cmekKeyVaultUrl": "https://myCmekKey", + "isIsolated": false, + "schemaTransformationVersion": "1.0" + } + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/GetChannel.json b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/GetChannel.json new file mode 100644 index 000000000000..0b35ac00f005 --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/GetChannel.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "api-version": "2021-05-01-preview", + "resourceName": "samplebotname", + "channelName": "EmailChannel" + }, + "responses": { + "200": { + "body": { + "location": "global", + "properties": { + "channelName": "EmailChannel", + "properties": { + "emailAddress": "a@b.com", + "password": "pwd", + "isEnabled": true + } + } + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/GetConnection.json b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/GetConnection.json new file mode 100644 index 000000000000..1616b5ec5080 --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/GetConnection.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "api-version": "2021-05-01-preview", + "resourceName": "samplebotname", + "connectionName": "sampleConnection" + }, + "responses": { + "200": { + "body": { + "location": "global", + "id": "/subscriptions/subscription-id/resourceGroups/OneResourceGroupName/providers/Microsoft.BotService/botServices/samplebotname/connections/sampleConnection", + "etag": "etag1", + "name": "sampleConnection", + "properties": { + "clientId": "sampleclientid", + "clientSecret": null, + "scopes": "samplescope", + "serviceProviderId": "serviceproviderid", + "serviceProviderDisplayName": "serviceProviderDisplayName", + "parameters": [ + { + "key": "key1", + "value": "value1" + }, + { + "key": "key2", + "value": "value2" + } + ] + } + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/GetDirectLineSpeechChannel.json b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/GetDirectLineSpeechChannel.json new file mode 100644 index 000000000000..9d436d21c838 --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/GetDirectLineSpeechChannel.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "api-version": "2021-05-01-preview", + "resourceName": "samplebotname", + "channelName": "DirectLineSpeechChannel" + }, + "responses": { + "200": { + "body": { + "location": "global", + "properties": { + "channelName": "DirectLineSpeechChannel", + "properties": { + "cognitiveServiceRegion": "Cognitive service region", + "customVoiceDeploymentId": "Custom voice deployment ID", + "customSpeechModelId": "Custom speech model ID", + "isDefaultBotForCogSvcAccount": true, + "isEnabled": true + } + } + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/GetHostSettings.json b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/GetHostSettings.json new file mode 100644 index 000000000000..0204d7e272a2 --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/GetHostSettings.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "api-version": "2021-05-01-preview" + }, + "responses": { + "200": { + "body": { + "BotOpenIdMetadata": "https://login.botframework.com/v1/.well-known/openidconfiguration", + "OAuthUrl": "https://token.botframework.com/", + "ToBotFromChannelOpenIdMetadataUrl": "https://login.botframework.com/v1/.well-known/openidconfiguration", + "ToBotFromChannelTokenIssuer": "https://api.botframework.com", + "ToBotFromEmulatorOpenIdMetadataUrl": "https://login.microsoftonline.com/botframework.com/v2.0/.well-known/openid-configuration", + "ToChannelFromBotLoginUrl": "https://login.microsoftonline.com/botframework.com", + "ToChannelFromBotOAuthScope": "https://api.botframework.com", + "ValidateAuthority": true + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/GetLineChannel.json b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/GetLineChannel.json new file mode 100644 index 000000000000..65daaf9a0f18 --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/GetLineChannel.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "api-version": "2021-05-01-preview", + "resourceName": "samplebotname", + "channelName": "LineChannel" + }, + "responses": { + "200": { + "body": { + "location": "global", + "properties": { + "channelName": "LineChannel", + "properties": { + "lineRegistrations": [ + { + "generatedId": "id", + "channelSecret": null, + "channelAccessToken": null + } + ], + "callbackUrl": "http://callbackUrl", + "isValidated": true + } + } + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/GetOperations.json b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/GetOperations.json new file mode 100644 index 000000000000..1d10c2634c29 --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/GetOperations.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2021-05-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.BotService/botService/read", + "display": { + "provider": "Microsoft Bot Service", + "resource": "Bot Service", + "operation": "Read Bot Service", + "description": "Read Bot Service" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.BotService/botService/write", + "display": { + "provider": "Microsoft Bot Service", + "resource": "Bot Service", + "operation": "Write Bot Service", + "description": "Writes Bot Service" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.BotService/botService/delete", + "display": { + "provider": "Microsoft Bot Service", + "resource": "Bot Service", + "operation": "Delete Bot Service", + "description": "Deletes Bot Service" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.BotService/botService/botName/read", + "display": { + "provider": "Microsoft Bot Service", + "resource": "Bot Service name availability", + "operation": "Check bot name availability", + "description": "Check bot name availability" + }, + "origin": "user,system" + } + ] + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/GetPrivateEndpointConnection.json b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/GetPrivateEndpointConnection.json new file mode 100644 index 000000000000..99cfb5068631 --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/GetPrivateEndpointConnection.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res6977", + "resourceName": "sto2527", + "privateEndpointConnectionName": "{privateEndpointConnectionName}", + "api-version": "2021-05-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.BotService/botServices/sto288/privateEndpointConnections/{privateEndpointConnectionName}", + "name": "{privateEndpointConnectionName}", + "type": "Microsoft.BotService/botServices/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.Network/privateEndpoints/petest01" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionRequired": "None" + } + } + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/ListBotsByResourceGroup.json b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/ListBotsByResourceGroup.json new file mode 100644 index 000000000000..07a253f7c039 --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/ListBotsByResourceGroup.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "api-version": "2021-05-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "location": "West US", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "name": "samplebotname", + "type": "Microsoft.BotService/botServices", + "id": "/subscriptions/subscription-id/resourceGroups/OneResourceGroupName/providers/Microsoft.BotService/botServices", + "etag": "etag1", + "kind": "sdk", + "properties": { + "description": "The description of the bot", + "developerAppInsightKey": "appinsightskey", + "developerAppInsightsApplicationId": "appinsightsappid", + "displayName": "The Name of the bot", + "endpoint": "http://mybot.coffee", + "endpointVersion": "version", + "iconUrl": "http://myicon", + "luisAppIds": [ + "luisappid1", + "luisappid2" + ], + "msaAppId": "msaappid", + "configuredChannels": [ + "facebook", + "groupme" + ], + "enabledChannels": [ + "facebook" + ], + "isCmekEnabled": true, + "cmekKeyVaultUrl": "https://myCmekKey", + "isIsolated": false, + "schemaTransformationVersion": "1.0" + } + } + ] + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/ListBotsBySubscription.json b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/ListBotsBySubscription.json new file mode 100644 index 000000000000..8988345f5d8c --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/ListBotsBySubscription.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "api-version": "2021-05-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "location": "West US", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "name": "samplebotname", + "type": "Microsoft.BotService/botServices", + "id": "/subscriptions/subscription-id/providers/Microsoft.BotService/botServices", + "kind": "sdk", + "etag": "etag1", + "properties": { + "description": "The description of the bot", + "developerAppInsightKey": "appinsightskey", + "developerAppInsightsApplicationId": "appinsightsappid", + "displayName": "The Name of the bot", + "endpoint": "http://mybot.coffee", + "endpointVersion": "version", + "iconUrl": "http://myicon", + "luisAppIds": [ + "luisappid1", + "luisappid2" + ], + "msaAppId": "msaappid", + "configuredChannels": [ + "facebook", + "groupme" + ], + "enabledChannels": [ + "facebook" + ], + "isCmekEnabled": true, + "cmekKeyVaultUrl": "https://myCmekKey", + "isIsolated": false, + "schemaTransformationVersion": "1.0" + } + } + ] + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/ListChannel.json b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/ListChannel.json new file mode 100644 index 000000000000..32ac3c958a19 --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/ListChannel.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "api-version": "2021-05-01-preview", + "resourceName": "samplebotname", + "channelName": "EmailChannel", + "parameters": { + "location": "global" + } + }, + "responses": { + "200": { + "body": { + "location": "global", + "properties": { + "channelName": "EmailChannel", + "properties": { + "emailAddress": "a@b.com", + "password": "pwd", + "isEnabled": true + } + } + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/ListChannelsByBotService.json b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/ListChannelsByBotService.json new file mode 100644 index 000000000000..3e3052172715 --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/ListChannelsByBotService.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "resourceName": "samplebotname", + "api-version": "2021-05-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "location": "global", + "properties": { + "channelName": "EmailChannel", + "properties": { + "emailAddress": "a@b.com", + "password": "pwd", + "isEnabled": true + } + } + }, + { + "location": "global", + "properties": { + "channelName": "FacebookChannel", + "properties": { + "verifyToken": "othertoken", + "appId": "id", + "appSecret": null, + "callbackUrl": "appid", + "isEnabled": true, + "pages": [ + { + "accessToken": null, + "id": "id" + } + ] + } + } + } + ] + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/ListConnectionsByBotService.json b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/ListConnectionsByBotService.json new file mode 100644 index 000000000000..afd346cba1d5 --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/ListConnectionsByBotService.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "api-version": "2021-05-01-preview", + "resourceName": "samplebotname" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "sampleConnection", + "properties": { + "clientId": "sampleclientid", + "clientSecret": null, + "scopes": "samplescope", + "serviceProviderId": "serviceproviderid", + "parameters": [ + { + "key": "key1", + "value": "value1" + }, + { + "key": "key2", + "value": "value2" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/ListPrivateEndpointConnections.json b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/ListPrivateEndpointConnections.json new file mode 100644 index 000000000000..7408d6fa87c6 --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/ListPrivateEndpointConnections.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res6977", + "resourceName": "sto2527", + "api-version": "2021-05-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.BotService/botServices/sto288/privateEndpointConnections/{privateEndpointConnectionName}", + "name": "{privateEndpointConnectionName}", + "type": "Microsoft.BotService/botServices/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.Network/privateEndpoints/petest01" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionRequired": "None" + } + } + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.BotService/botServices/sto288/privateEndpointConnections/{privateEndpointConnectionName}", + "name": "{privateEndpointConnectionName}", + "type": "Microsoft.BotService/botServices/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.Network/privateEndpoints/petest02" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionRequired": "None" + } + } + } + ] + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/ListPrivateLinkResources.json b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/ListPrivateLinkResources.json new file mode 100644 index 000000000000..cc9443d9f485 --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/ListPrivateLinkResources.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res6977", + "resourceName": "sto2527", + "api-version": "2021-05-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res6977/providers/Microsoft.BotService/botServices/sto2527/privateLinkResources/resource1", + "name": "resource1", + "type": "Microsoft.BotService/botServices/privateLinkResources", + "properties": { + "groupId": "bot", + "requiredMembers": [ + "bot" + ], + "requiredZoneNames": [ + "privatelink.botframework.com" + ] + } + } + ] + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/ListServiceProviders.json b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/ListServiceProviders.json new file mode 100644 index 000000000000..44a3a9842411 --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/ListServiceProviders.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "api-version": "2021-05-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "id": "sampleServiceProviderId", + "displayName": "sample service provider display name", + "serviceProviderName": "sampleServiceProvider", + "devPortalUrl": "sampleDevPortalUrl", + "iconUrl": "sampleIconUrl", + "parameters": [ + { + "name": "sampleParameterName", + "type": "sampleParameterType", + "displayName": "sampleDisplayName", + "description": "sampleDescription", + "helpUrl": "sampleHelpUrl", + "default": "sampleDefaultValue" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/OperationResultsGet.json b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/OperationResultsGet.json new file mode 100644 index 000000000000..40d3477e5bd0 --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/OperationResultsGet.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2021-05-01-preview", + "subscriptionId": "subid", + "operationResultId": "exampleid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.BotService/locations/westus/operationresults/exampleid", + "name": "servicename", + "status": "Requested", + "startTime": "2019-01-21T06:03:30.2716301Z" + } + }, + "202": {} + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/PutAlexaChannel.json b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/PutAlexaChannel.json new file mode 100644 index 000000000000..42e777326e0a --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/PutAlexaChannel.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "api-version": "2021-05-01-preview", + "resourceName": "samplebotname", + "channelName": "AlexaChannel", + "parameters": { + "location": "global", + "properties": { + "channelName": "AlexaChannel", + "properties": { + "alexaSkillId": "XAlexaSkillIdX", + "isEnabled": true + } + } + } + }, + "responses": { + "200": { + "body": { + "location": "global", + "properties": { + "channelName": "AlexaChannel", + "properties": { + "alexaSkillId": "alexa skill id", + "urlFragment": "XUrlFragmentX", + "serviceEndpointUri": "https://domain/XUrlFragmentX/botId", + "isEnabled": true + } + } + } + }, + "201": { + "body": { + "location": "global", + "properties": { + "channelName": "AlexaChannel", + "properties": { + "alexaSkillId": "alexa skill id", + "urlFragment": "XUrlFragmentX", + "serviceEndpointUri": "https://domain/XUrlFragmentX/botId", + "isEnabled": true + } + } + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/PutChannel.json b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/PutChannel.json new file mode 100644 index 000000000000..01a985afdab0 --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/PutChannel.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "api-version": "2021-05-01-preview", + "resourceName": "samplebotname", + "channelName": "EmailChannel", + "parameters": { + "location": "global", + "properties": { + "channelName": "EmailChannel", + "properties": { + "emailAddress": "a@b.com", + "password": "pwd", + "isEnabled": true + } + } + } + }, + "responses": { + "200": { + "body": { + "location": "global", + "properties": { + "channelName": "EmailChannel", + "properties": { + "emailAddress": "a@b.com", + "password": "pwd", + "isEnabled": true + } + } + } + }, + "201": { + "body": { + "location": "global", + "properties": { + "channelName": "EmailChannel", + "properties": { + "emailAddress": "a@b.com", + "password": "pwd", + "isEnabled": true + } + } + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/PutConnection.json b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/PutConnection.json new file mode 100644 index 000000000000..2704264ef06a --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/PutConnection.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "api-version": "2021-05-01-preview", + "resourceName": "samplebotname", + "connectionName": "sampleConnection", + "parameters": { + "location": "West US", + "etag": "etag1", + "properties": { + "clientId": "sampleclientid", + "clientSecret": "samplesecret", + "scopes": "samplescope", + "serviceProviderId": "serviceproviderid", + "parameters": [ + { + "key": "key1", + "value": "value1" + }, + { + "key": "key2", + "value": "value2" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "location": "global", + "id": "/subscriptions/subscription-id/resourceGroups/OneResourceGroupName/providers/Microsoft.BotService/botServices/samplebotname/connections/sampleConnection", + "etag": "etag1", + "name": "sampleConnection", + "properties": { + "clientId": "sampleclientid", + "clientSecret": null, + "scopes": "samplescope", + "serviceProviderId": "serviceproviderid", + "serviceProviderDisplayName": "serviceProviderDisplayName", + "parameters": [ + { + "key": "key1", + "value": "value1" + }, + { + "key": "key2", + "value": "value2" + } + ] + } + } + }, + "201": { + "body": { + "location": "global", + "id": "/subscriptions/subscription-id/resourceGroups/OneResourceGroupName/providers/Microsoft.BotService/botServices/samplebotname/connections/sampleConnection", + "etag": "etag1", + "name": "sampleConnection", + "properties": { + "clientId": "sampleclientid", + "clientSecret": null, + "scopes": "samplescope", + "serviceProviderId": "serviceproviderid", + "serviceProviderDisplayName": "serviceProviderDisplayName", + "parameters": [ + { + "key": "key1", + "value": "value1" + }, + { + "key": "key2", + "value": "value2" + } + ] + } + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/PutDirectLineSpeechChannel.json b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/PutDirectLineSpeechChannel.json new file mode 100644 index 000000000000..9d6e2319eb51 --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/PutDirectLineSpeechChannel.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "api-version": "2021-05-01-preview", + "resourceName": "samplebotname", + "channelName": "DirectLineSpeechChannel", + "parameters": { + "location": "global", + "properties": { + "channelName": "DirectLineSpeechChannel", + "properties": { + "cognitiveServiceRegion": "XcognitiveServiceRegionX", + "cognitiveServiceSubscriptionKey": "XcognitiveServiceSubscriptionKeyX", + "isEnabled": true + } + } + } + }, + "responses": { + "200": { + "body": { + "location": "global", + "properties": { + "channelName": "DirectLineSpeechChannel", + "properties": { + "cognitiveServiceRegion": "XcognitiveServiceRegionX", + "isEnabled": true + } + } + } + }, + "201": { + "body": { + "location": "global", + "properties": { + "channelName": "DirectLineSpeechChannel", + "properties": { + "cognitiveServiceRegion": "XcognitiveServiceRegionX", + "isEnabled": true + } + } + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/PutLineChannel.json b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/PutLineChannel.json new file mode 100644 index 000000000000..3c5b039c9a8f --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/PutLineChannel.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "api-version": "2021-05-01-preview", + "resourceName": "samplebotname", + "channelName": "LineChannel", + "parameters": { + "location": "global", + "properties": { + "channelName": "LineChannel", + "properties": { + "lineRegistrations": [ + { + "channelSecret": "channelSecret", + "channelAccessToken": "channelAccessToken" + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "location": "global", + "properties": { + "channelName": "LineChannel", + "properties": { + "lineRegistrations": [ + { + "generatedId": "id", + "channelSecret": null, + "channelAccessToken": null + } + ], + "callbackUrl": "http://callbackUrl", + "isValidated": true + } + } + } + }, + "201": { + "body": { + "location": "global", + "properties": { + "channelName": "LineChannel", + "properties": { + "lineRegistrations": [ + { + "generatedId": "id", + "channelSecret": null, + "channelAccessToken": null + } + ], + "callbackUrl": "http://callbackUrl", + "isValidated": true + } + } + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/PutPrivateEndpointConnection.json b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/PutPrivateEndpointConnection.json new file mode 100644 index 000000000000..0b79af4523d6 --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/PutPrivateEndpointConnection.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res7687", + "resourceName": "sto9699", + "privateEndpointConnectionName": "{privateEndpointConnectionName}", + "api-version": "2021-05-01-preview", + "properties": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.BotService/botServices/sto288/privateEndpointConnections/{privateEndpointConnectionName}", + "name": "{privateEndpointConnectionName}", + "type": "Microsoft.BotService/botServices/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.Network/privateEndpoints/petest01" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionRequired": "None" + } + } + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/UpdateAlexaChannel.json b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/UpdateAlexaChannel.json new file mode 100644 index 000000000000..0a9b3855da88 --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/UpdateAlexaChannel.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "api-version": "2021-05-01-preview", + "resourceName": "samplebotname", + "channelName": "AlexaChannel", + "parameters": { + "location": "global", + "properties": { + "channelName": "AlexaChannel", + "properties": { + "alexaSkillId": "XAlexaSkillIdX", + "isEnabled": true + } + } + } + }, + "responses": { + "200": { + "body": { + "location": "global", + "properties": { + "channelName": "AlexaChannel", + "properties": { + "alexaSkillId": "XAlexaSkillIdX", + "urlFragment": "XUrlFragmentX", + "serviceEndpointUri": "https://domain/XUrlFragmentX/botId", + "isEnabled": true + } + } + } + }, + "201": { + "body": { + "location": "global", + "properties": { + "channelName": "AlexaChannel", + "properties": { + "alexaSkillId": "XAlexaSkillIdX", + "urlFragment": "XUrlFragmentX", + "serviceEndpointUri": "https://domain/XUrlFragmentX/botId", + "isEnabled": true + } + } + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/UpdateBot.json b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/UpdateBot.json new file mode 100644 index 000000000000..d1a7719305c9 --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/UpdateBot.json @@ -0,0 +1,119 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "api-version": "2021-05-01-preview", + "resourceName": "samplebotname", + "parameters": { + "location": "West US", + "sku": { + "name": "S1" + }, + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "etag": "etag1", + "kind": "sdk", + "properties": { + "description": "The description of the bot", + "developerAppInsightKey": "appinsightskey", + "developerAppInsightsApiKey": "appinsightsapikey", + "developerAppInsightsApplicationId": "appinsightsappid", + "displayName": "The Name of the bot", + "endpoint": "http://mybot.coffee", + "iconUrl": "http://myicon", + "luisAppIds": [ + "luisappid1", + "luisappid2" + ], + "luisKey": "luiskey", + "msaAppId": "msaappid", + "isCmekEnabled": true, + "cmekKeyVaultUrl": "https://myCmekKey", + "isIsolated": false, + "schemaTransformationVersion": "1.0" + } + } + }, + "responses": { + "200": { + "body": { + "location": "West US", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "etag": "etag1", + "name": "samplebotname", + "type": "Microsoft.BotService/botServices", + "id": "/subscriptions/subscription-id/resourceGroups/OneResourceGroupName/providers/Microsoft.BotService/botServices/samplebotname", + "kind": "sdk", + "properties": { + "description": "The description of the bot", + "developerAppInsightKey": "appinsightskey", + "developerAppInsightsApplicationId": "appinsightsappid", + "displayName": "The Name of the bot", + "endpoint": "http://mybot.coffee", + "endpointVersion": "version", + "iconUrl": "http://myicon", + "luisAppIds": [ + "luisappid1", + "luisappid2" + ], + "msaAppId": "msaappid", + "configuredChannels": [ + "facebook", + "groupme" + ], + "enabledChannels": [ + "facebook" + ], + "isCmekEnabled": true, + "cmekKeyVaultUrl": "https://myCmekKey", + "isIsolated": false, + "schemaTransformationVersion": "1.0" + } + } + }, + "201": { + "body": { + "location": "West US", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "name": "samplebotname", + "type": "Microsoft.BotService/botServices", + "id": "/subscriptions/subscription-id/resourceGroups/OneResourceGroupName/providers/Microsoft.BotService/botServices/samplebotname", + "kind": "sdk", + "etag": "etag1", + "properties": { + "description": "The description of the bot", + "developerAppInsightKey": "appinsightskey", + "developerAppInsightsApplicationId": "appinsightsappid", + "displayName": "The Name of the bot", + "endpoint": "http://mybot.coffee", + "endpointVersion": "version", + "iconUrl": "http://myicon", + "luisAppIds": [ + "luisappid1", + "luisappid2" + ], + "msaAppId": "msaappid", + "configuredChannels": [ + "facebook", + "groupme" + ], + "enabledChannels": [ + "facebook" + ], + "isCmekEnabled": true, + "cmekKeyVaultUrl": "https://myCmekKey", + "isIsolated": false, + "schemaTransformationVersion": "1.0" + } + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/UpdateChannel.json b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/UpdateChannel.json new file mode 100644 index 000000000000..01a985afdab0 --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/UpdateChannel.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "api-version": "2021-05-01-preview", + "resourceName": "samplebotname", + "channelName": "EmailChannel", + "parameters": { + "location": "global", + "properties": { + "channelName": "EmailChannel", + "properties": { + "emailAddress": "a@b.com", + "password": "pwd", + "isEnabled": true + } + } + } + }, + "responses": { + "200": { + "body": { + "location": "global", + "properties": { + "channelName": "EmailChannel", + "properties": { + "emailAddress": "a@b.com", + "password": "pwd", + "isEnabled": true + } + } + } + }, + "201": { + "body": { + "location": "global", + "properties": { + "channelName": "EmailChannel", + "properties": { + "emailAddress": "a@b.com", + "password": "pwd", + "isEnabled": true + } + } + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/UpdateConnection.json b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/UpdateConnection.json new file mode 100644 index 000000000000..18ca007cae17 --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/UpdateConnection.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "api-version": "2021-05-01-preview", + "resourceName": "samplebotname", + "connectionName": "sampleConnection", + "parameters": { + "location": "global", + "etag": "etag1", + "properties": { + "clientId": "sampleclientid", + "clientSecret": "samplesecret", + "scopes": "samplescope", + "serviceProviderId": "serviceproviderid", + "serviceProviderDisplayName": "serviceProviderDisplayName", + "parameters": [ + { + "key": "key1", + "value": "value1" + }, + { + "key": "key2", + "value": "value2" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "location": "global", + "id": "/subscriptions/subscription-id/resourceGroups/OneResourceGroupName/providers/Microsoft.BotService/botServices/samplebotname/connections/sampleConnection", + "name": "sampleConnection", + "properties": { + "clientId": "sampleclientid", + "clientSecret": null, + "scopes": "samplescope", + "serviceProviderId": "serviceproviderid", + "serviceProviderDisplayName": "serviceProviderDisplayName", + "parameters": [ + { + "key": "key1", + "value": "value1" + }, + { + "key": "key2", + "value": "value2" + } + ] + } + } + }, + "201": { + "body": { + "location": "global", + "etag": "etag1", + "id": "/subscriptions/subscription-id/resourceGroups/OneResourceGroupName/providers/Microsoft.BotService/botServices/samplebotname/connections/sampleConnection", + "name": "sampleConnection", + "properties": { + "clientId": "sampleclientid", + "clientSecret": null, + "scopes": "samplescope", + "serviceProviderId": "serviceproviderid", + "serviceProviderDisplayName": "serviceProviderDisplayName", + "parameters": [ + { + "key": "key1", + "value": "value1" + }, + { + "key": "key2", + "value": "value2" + } + ] + } + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/UpdateDirectLineSpeechChannel.json b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/UpdateDirectLineSpeechChannel.json new file mode 100644 index 000000000000..9d6e2319eb51 --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/UpdateDirectLineSpeechChannel.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "api-version": "2021-05-01-preview", + "resourceName": "samplebotname", + "channelName": "DirectLineSpeechChannel", + "parameters": { + "location": "global", + "properties": { + "channelName": "DirectLineSpeechChannel", + "properties": { + "cognitiveServiceRegion": "XcognitiveServiceRegionX", + "cognitiveServiceSubscriptionKey": "XcognitiveServiceSubscriptionKeyX", + "isEnabled": true + } + } + } + }, + "responses": { + "200": { + "body": { + "location": "global", + "properties": { + "channelName": "DirectLineSpeechChannel", + "properties": { + "cognitiveServiceRegion": "XcognitiveServiceRegionX", + "isEnabled": true + } + } + } + }, + "201": { + "body": { + "location": "global", + "properties": { + "channelName": "DirectLineSpeechChannel", + "properties": { + "cognitiveServiceRegion": "XcognitiveServiceRegionX", + "isEnabled": true + } + } + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/UpdateLineChannel.json b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/UpdateLineChannel.json new file mode 100644 index 000000000000..3c5b039c9a8f --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/UpdateLineChannel.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "api-version": "2021-05-01-preview", + "resourceName": "samplebotname", + "channelName": "LineChannel", + "parameters": { + "location": "global", + "properties": { + "channelName": "LineChannel", + "properties": { + "lineRegistrations": [ + { + "channelSecret": "channelSecret", + "channelAccessToken": "channelAccessToken" + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "location": "global", + "properties": { + "channelName": "LineChannel", + "properties": { + "lineRegistrations": [ + { + "generatedId": "id", + "channelSecret": null, + "channelAccessToken": null + } + ], + "callbackUrl": "http://callbackUrl", + "isValidated": true + } + } + } + }, + "201": { + "body": { + "location": "global", + "properties": { + "channelName": "LineChannel", + "properties": { + "lineRegistrations": [ + { + "generatedId": "id", + "channelSecret": null, + "channelAccessToken": null + } + ], + "callbackUrl": "http://callbackUrl", + "isValidated": true + } + } + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/WebChatRegenerateKeys.json b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/WebChatRegenerateKeys.json new file mode 100644 index 000000000000..d5b2860150ae --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/examples/WebChatRegenerateKeys.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "api-version": "2021-05-01-preview", + "resourceName": "samplebotname", + "channelName": "WebChatChannel", + "parameters": { + "siteName": "testSiteName", + "key": "key1" + } + }, + "responses": { + "200": { + "body": { + "location": "global", + "properties": { + "channelName": "WebChatChannel", + "properties": { + "sites": [ + { + "siteId": "abcd", + "siteName": "Default Site", + "key": "key1", + "key2": "key2", + "isEnabled": true, + "enablePreview": true + } + ] + } + } + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/privatelinks.json b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/privatelinks.json new file mode 100644 index 000000000000..03d65e67e1b3 --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/preview/2021-05-01-preview/privatelinks.json @@ -0,0 +1,196 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-05-01-preview", + "title": "Common types" + }, + "paths": {}, + "definitions": { + "PrivateEndpoint": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ARM identifier for Private Endpoint" + } + }, + "description": "The Private Endpoint resource." + }, + "PrivateLinkResourceBase": { + "title": "Private Link Resource Base", + "description": "Common fields that are returned in the response for all BotService Private Link Resources", + "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. E.g. \"Microsoft.Compute/virtualMachines\" or \"Microsoft.Storage/storageAccounts\"" + } + }, + "x-ms-azure-resource": true + }, + "PrivateEndpointConnection": { + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "x-ms-client-flatten": true, + "description": "Resource properties." + } + }, + "allOf": [ + { + "$ref": "#/definitions/PrivateLinkResourceBase" + } + ], + "description": "The Private Endpoint Connection resource." + }, + "PrivateEndpointConnectionProperties": { + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpoint", + "description": "The resource of private end point." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionState", + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "provisioningState": { + "$ref": "#/definitions/PrivateEndpointConnectionProvisioningState", + "description": "The provisioning state of the private endpoint connection resource." + } + }, + "required": [ + "privateLinkServiceConnectionState" + ], + "description": "Properties of the PrivateEndpointConnectProperties." + }, + "PrivateLinkServiceConnectionState": { + "properties": { + "status": { + "$ref": "#/definitions/PrivateEndpointServiceConnectionStatus", + "description": "Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service." + }, + "description": { + "type": "string", + "description": "The reason for approval/rejection of the connection." + }, + "actionRequired": { + "type": "string", + "description": "A message indicating if changes on the service provider require any updates on the consumer." + } + }, + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "PrivateEndpointServiceConnectionStatus": { + "type": "string", + "description": "The private endpoint connection status.", + "enum": [ + "Pending", + "Approved", + "Rejected" + ], + "x-ms-enum": { + "name": "PrivateEndpointServiceConnectionStatus", + "modelAsString": true + } + }, + "PrivateEndpointConnectionProvisioningState": { + "type": "string", + "readOnly": true, + "description": "The current provisioning state.", + "enum": [ + "Succeeded", + "Creating", + "Deleting", + "Failed" + ], + "x-ms-enum": { + "name": "PrivateEndpointConnectionProvisioningState", + "modelAsString": true + } + }, + "PrivateLinkResource": { + "properties": { + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/PrivateLinkResourceBase" + } + ], + "description": "A private link resource" + }, + "PrivateLinkResourceProperties": { + "properties": { + "groupId": { + "description": "The private link resource group id.", + "type": "string", + "readOnly": true + }, + "requiredMembers": { + "description": "The private link resource required member names.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "requiredZoneNames": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The private link resource Private link DNS zone name." + } + }, + "description": "Properties of a private link resource." + }, + "PrivateEndpointConnectionListResult": { + "properties": { + "value": { + "type": "array", + "description": "Array of private endpoint connections", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + } + }, + "description": "List of private endpoint connection associated with the specified storage account" + }, + "PrivateLinkResourceListResult": { + "properties": { + "value": { + "type": "array", + "description": "Array of private link resources", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + } + } + }, + "description": "A list of private link resources" + } + }, + "parameters": { + "PrivateEndpointConnectionName": { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint connection associated with the Azure resource", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/botservice.json b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/botservice.json new file mode 100644 index 000000000000..5af0ff00991a --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/botservice.json @@ -0,0 +1,2655 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Bot Service", + "description": "Azure Bot Service is a platform for creating smart conversational agents.", + "version": "2021-03-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.BotService/botServices/{resourceName}": { + "put": { + "tags": [ + "Bot" + ], + "description": "Creates a Bot Service. Bot Service is a resource group wide resource type.", + "operationId": "Bots_Create", + "x-ms-examples": { + "Create Bot": { + "$ref": "./examples/CreateBot.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/resourceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Bot" + }, + "description": "The parameters to provide for the created bot." + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "If resource is created successfully or already existed, the service should return 200 (OK).", + "schema": { + "$ref": "#/definitions/Bot" + } + }, + "201": { + "description": "If resource is created successfully, the service should return 201 (Created). Execution to continue asynchronously.", + "schema": { + "$ref": "#/definitions/Bot" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + } + }, + "patch": { + "tags": [ + "Bot" + ], + "description": "Updates a Bot Service", + "operationId": "Bots_Update", + "x-ms-examples": { + "Update Bot": { + "$ref": "./examples/UpdateBot.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/resourceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/Bot" + }, + "description": "The parameters to provide for the created bot." + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The resource provider should return 200 (OK) to indicate that the operation completed successfully. ", + "schema": { + "$ref": "#/definitions/Bot" + } + }, + "201": { + "description": "If resource is updated successfully, the service should return 201 (Created). Execution to continue asynchronously.", + "schema": { + "$ref": "#/definitions/Bot" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the resource group *or* resource does not exist, 404 (NotFound) should be returned.", + "schema": { + "$ref": "#/definitions/Error" + } + } + } + }, + "delete": { + "tags": [ + "Bot" + ], + "description": "Deletes a Bot Service from the resource group. ", + "operationId": "Bots_Delete", + "x-ms-examples": { + "Delete Bot": { + "$ref": "./examples/DeleteBot.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/resourceNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A 200 (OK) should be returned if the object exists and was deleted successfully;" + }, + "204": { + "description": "a 204 (NoContent) should be used if the resource does not exist and the request is well formed." + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + } + }, + "get": { + "tags": [ + "Bot" + ], + "description": "Returns a BotService specified by the parameters.", + "operationId": "Bots_Get", + "x-ms-examples": { + "Get Bot": { + "$ref": "./examples/GetBot.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/resourceNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The resource provider should return 200 (OK) to indicate that the operation completed successfully. ", + "schema": { + "$ref": "#/definitions/Bot" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the resource group *or* resource does not exist, 404 (NotFound) should be returned.", + "schema": { + "$ref": "#/definitions/Error" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.BotService/botServices": { + "get": { + "tags": [ + "Bot" + ], + "description": "Returns all the resources of a particular type belonging to a resource group", + "operationId": "Bots_ListByResourceGroup", + "x-ms-examples": { + "List Bots by Resource Group": { + "$ref": "./examples/ListBotsByResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The resource provider should return 200 (OK) to indicate that the operation completed successfully. For other errors (e.g. internal errors) use the appropriate HTTP error code.\nThe nextLink field is expected to point to the URL the client should use to fetch the next page (per server side paging). This matches the OData guidelines for paged responses here. If a resource provider does not support paging, it should return the same body (JSON object with “value” property) but omit nextLink entirely (or set to null, *not* empty string) for future compatibility.\nThe nextLink should be implemented using following query parameters:\n· skipToken: opaque token that allows the resource provider to skip resources already enumerated. This value is defined and returned by the RP after first request via nextLink.\n· top: the optional client query parameter which defines the maximum number of records to be returned by the server.\nImplementation details:\n· NextLink may include all the query parameters (specifically OData $filter) used by the client in the first query. \n· Server may return less records than requested with nextLink. Returning zero records with NextLink is an acceptable response. \nClients must fetch records until the nextLink is not returned back / null. Clients should never rely on number of returned records to determinate if pagination is completed.", + "schema": { + "$ref": "#/definitions/BotResponseList" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the resource group does not exist, 404 (NotFound) will be returned.", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.BotService/botServices": { + "get": { + "tags": [ + "Bot" + ], + "description": "Returns all the resources of a particular type belonging to a subscription.", + "operationId": "Bots_List", + "x-ms-examples": { + "List Bots by Subscription": { + "$ref": "./examples/ListBotsBySubscription.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The resource provider should return 200 (OK) to indicate that the operation completed successfully. For other errors (e.g. internal errors) use the appropriate HTTP error code.\nThe nextLink field is expected to point to the URL the client should use to fetch the next page (per server side paging). This matches the OData guidelines for paged responses. If a resource provider does not support paging, it should return the same body but leave nextLink empty for future compatibility.\nFor a detailed explanation of each field in the response body, please refer to the request body description in the PUT resource section. ", + "schema": { + "$ref": "#/definitions/BotResponseList" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.BotService/botServices/{resourceName}/channels/{channelName}": { + "put": { + "tags": [ + "Channel" + ], + "description": "Creates a Channel registration for a Bot Service", + "operationId": "Channels_Create", + "x-ms-examples": { + "Create Bot": { + "$ref": "./examples/PutChannel.json" + }, + "Create Alexa Bot": { + "$ref": "./examples/PutAlexaChannel.json" + }, + "Create Line Bot": { + "$ref": "./examples/PutLineChannel.json" + }, + "Create DirectLine Speech Bot": { + "$ref": "./examples/PutDirectLineSpeechChannel.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/resourceNameParameter" + }, + { + "$ref": "#/parameters/channelNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/BotChannel" + }, + "description": "The parameters to provide for the created bot." + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "If resource is created successfully or already existed, the service should return 200 (OK).", + "schema": { + "$ref": "#/definitions/BotChannel" + } + }, + "201": { + "description": "If resource is created successfully, the service should return 201 (Created). Execution to continue asynchronously.", + "schema": { + "$ref": "#/definitions/BotChannel" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + } + }, + "patch": { + "tags": [ + "Channel" + ], + "description": "Updates a Channel registration for a Bot Service", + "operationId": "Channels_Update", + "x-ms-examples": { + "Update Bot": { + "$ref": "./examples/UpdateChannel.json" + }, + "Update Alexa": { + "$ref": "./examples/UpdateAlexaChannel.json" + }, + "Update Line": { + "$ref": "./examples/UpdateLineChannel.json" + }, + "Update DirectLine Speech": { + "$ref": "./examples/UpdateDirectLineSpeechChannel.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/resourceNameParameter" + }, + { + "$ref": "#/parameters/channelNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/BotChannel" + }, + "description": "The parameters to provide for the created bot." + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The resource provider should return 200 (OK) to indicate that the operation completed successfully. ", + "schema": { + "$ref": "#/definitions/BotChannel" + } + }, + "201": { + "description": "If resource is updated successfully, the service should return 201 (Created). Execution to continue asynchronously.", + "schema": { + "$ref": "#/definitions/BotChannel" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the resource group *or* resource does not exist, 404 (NotFound) should be returned.", + "schema": { + "$ref": "#/definitions/Error" + } + } + } + }, + "delete": { + "tags": [ + "Channel" + ], + "description": "Deletes a Channel registration from a Bot Service", + "operationId": "Channels_Delete", + "x-ms-examples": { + "Delete Bot": { + "$ref": "./examples/DeleteChannel.json" + }, + "Delete DirectLine Speech Bot": { + "$ref": "./examples/DeleteDirectLineSpeechChannel.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/resourceNameParameter" + }, + { + "name": "channelName", + "in": "path", + "required": true, + "type": "string", + "maxLength": 64, + "minLength": 2, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_.-]*$", + "description": "The name of the Bot resource." + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A 200 (OK) should be returned if the object exists and was deleted successfully;" + }, + "204": { + "description": "a 204 (NoContent) should be used if the resource does not exist and the request is well formed." + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + } + }, + "get": { + "tags": [ + "Channel" + ], + "description": "Returns a BotService Channel registration specified by the parameters.", + "operationId": "Channels_Get", + "x-ms-examples": { + "Get Bot": { + "$ref": "./examples/GetChannel.json" + }, + "Get Alexa Bot": { + "$ref": "./examples/GetAlexaChannel.json" + }, + "Get Line Bot": { + "$ref": "./examples/GetLineChannel.json" + }, + "Get DirectLine Speech Bot": { + "$ref": "./examples/GetDirectLineSpeechChannel.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/resourceNameParameter" + }, + { + "name": "channelName", + "in": "path", + "required": true, + "type": "string", + "maxLength": 64, + "minLength": 2, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_.-]*$", + "description": "The name of the Bot resource." + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The resource provider should return 200 (OK) to indicate that the operation completed successfully. ", + "schema": { + "$ref": "#/definitions/BotChannel" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the resource group *or* resource does not exist, 404 (NotFound) should be returned.", + "schema": { + "$ref": "#/definitions/Error" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.BotService/botServices/{resourceName}/channels/{channelName}/listChannelWithKeys": { + "post": { + "tags": [ + "Channel" + ], + "description": "Lists a Channel registration for a Bot Service including secrets", + "operationId": "Channels_ListWithKeys", + "x-ms-examples": { + "List Channel": { + "$ref": "./examples/ListChannel.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/resourceNameParameter" + }, + { + "$ref": "#/parameters/channelNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "If resource is retrieved successfully, the service should return 200 (OK).", + "schema": { + "$ref": "#/definitions/BotChannel" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.BotService/botServices/{resourceName}/channels": { + "get": { + "tags": [ + "Channel" + ], + "description": "Returns all the Channel registrations of a particular BotService resource", + "operationId": "Channels_ListByResourceGroup", + "x-ms-examples": { + "List Bots by Resource Group": { + "$ref": "./examples/ListChannelsByBotService.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/resourceNameParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The resource provider should return 200 (OK) to indicate that the operation completed successfully. For other errors (e.g. internal errors) use the appropriate HTTP error code.\nThe nextLink field is expected to point to the URL the client should use to fetch the next page (per server side paging). This matches the OData guidelines for paged responses here. If a resource provider does not support paging, it should return the same body (JSON object with “value” property) but omit nextLink entirely (or set to null, *not* empty string) for future compatibility.\nThe nextLink should be implemented using following query parameters:\n· skipToken: opaque token that allows the resource provider to skip resources already enumerated. This value is defined and returned by the RP after first request via nextLink.\n· top: the optional client query parameter which defines the maximum number of records to be returned by the server.\nImplementation details:\n· NextLink may include all the query parameters (specifically OData $filter) used by the client in the first query. \n· Server may return less records than requested with nextLink. Returning zero records with NextLink is an acceptable response. \nClients must fetch records until the nextLink is not returned back / null. Clients should never rely on number of returned records to determinate if pagination is completed.", + "schema": { + "$ref": "#/definitions/ChannelResponseList" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the resource group does not exist, 404 (NotFound) will be returned.", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.BotService/botServices/{resourceName}/channels/{channelName}/regeneratekeys": { + "post": { + "tags": [ + "Channel" + ], + "description": "Regenerates secret keys and returns them for the DirectLine Channel of a particular BotService resource", + "operationId": "DirectLine_RegenerateKeys", + "x-ms-examples": { + "Regenerate Keys for DirectLine Channel Site": { + "$ref": "./examples/DirectlineRegenerateKeys.json" + }, + "Regenerate Keys for WebChat Channel Site": { + "$ref": "./examples/WebChatRegenerateKeys.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/resourceNameParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/regenerateKeyschannelNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SiteInfo" + }, + "description": "The parameters to provide for the created bot." + } + ], + "responses": { + "200": { + "description": "The resource provider should return 200 (OK) to indicate that the operation completed successfully. For other errors (e.g. internal errors) use the appropriate HTTP error code.\nThe nextLink field is expected to point to the URL the client should use to fetch the next page (per server side paging). This matches the OData guidelines for paged responses here. If a resource provider does not support paging, it should return the same body (JSON object with “value” property) but omit nextLink entirely (or set to null, *not* empty string) for future compatibility.\nThe nextLink should be implemented using following query parameters:\n· skipToken: opaque token that allows the resource provider to skip resources already enumerated. This value is defined and returned by the RP after first request via nextLink.\n· top: the optional client query parameter which defines the maximum number of records to be returned by the server.\nImplementation details:\n· NextLink may include all the query parameters (specifically OData $filter) used by the client in the first query. \n· Server may return less records than requested with nextLink. Returning zero records with NextLink is an acceptable response. \nClients must fetch records until the nextLink is not returned back / null. Clients should never rely on number of returned records to determinate if pagination is completed.", + "schema": { + "$ref": "#/definitions/BotChannel" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the resource group does not exist, 404 (NotFound) will be returned.", + "schema": { + "$ref": "#/definitions/Error" + } + } + } + } + }, + "/providers/Microsoft.BotService/checkNameAvailability": { + "post": { + "tags": [ + "Bot" + ], + "description": "Check whether a bot name is available.", + "operationId": "Bots_GetCheckNameAvailability", + "x-ms-examples": { + "check Name Availability": { + "$ref": "./examples/CheckNameAvailability.json" + } + }, + "parameters": [ + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityRequestBody" + }, + "description": "The request body parameters to provide for the check name availability request" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The resource provider should return 200 (OK) to indicate that the operation completed successfully. For other errors (e.g. internal errors) use the appropriate HTTP error code.\nThe nextLink field is expected to point to the URL the client should use to fetch the next page (per server side paging). This matches the OData guidelines for paged responses. If a resource provider does not support paging, it should return the same body but leave nextLink empty for future compatibility.\nFor a detailed explanation of each field in the response body, please refer to the request body description in the PUT resource section. ", + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityResponseBody" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + } + } + }, + "/providers/Microsoft.BotService/operations": { + "get": { + "tags": [ + "Operations" + ], + "description": "Lists all the available BotService operations.", + "operationId": "Operations_List", + "x-ms-examples": { + "Get Operations": { + "$ref": "./examples/GetOperations.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/OperationEntityListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.BotService/listAuthServiceProviders": { + "post": { + "tags": [ + "ListServiceProviders" + ], + "description": "Lists the available Service Providers for creating Connection Settings", + "operationId": "BotConnection_ListServiceProviders", + "x-ms-examples": { + "List Auth Service Providers": { + "$ref": "./examples/ListServiceProviders.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "If resource is retrieved successfully, the service should return 200 (OK).", + "schema": { + "$ref": "#/definitions/ServiceProviderResponseList" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.BotService/botServices/{resourceName}/connections/{connectionName}/listWithSecrets": { + "post": { + "tags": [ + "BotConnection" + ], + "x-ms-examples": { + "Update Connection Setting": { + "$ref": "./examples/GetConnection.json" + } + }, + "description": "Get a Connection Setting registration for a Bot Service", + "operationId": "BotConnection_ListWithSecrets", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/resourceNameParameter" + }, + { + "$ref": "#/parameters/connectionNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The resource provider should return 200 (OK) to indicate that the operation completed successfully. ", + "schema": { + "$ref": "#/definitions/ConnectionSetting" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the resource group *or* resource does not exist, 404 (NotFound) should be returned.", + "schema": { + "$ref": "#/definitions/Error" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.BotService/botServices/{resourceName}/connections/{connectionName}": { + "put": { + "tags": [ + "BotConnection" + ], + "description": "Register a new Auth Connection for a Bot Service", + "operationId": "BotConnection_Create", + "x-ms-examples": { + "Create Connection Setting": { + "$ref": "./examples/PutConnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/resourceNameParameter" + }, + { + "$ref": "#/parameters/connectionNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ConnectionSetting" + }, + "description": "The parameters to provide for creating the Connection Setting." + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "If resource is created successfully or already existed, the service should return 200 (OK).", + "schema": { + "$ref": "#/definitions/ConnectionSetting" + } + }, + "201": { + "description": "If resource is created successfully, the service should return 201 (Created). Execution to continue asynchronously.", + "schema": { + "$ref": "#/definitions/ConnectionSetting" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + } + }, + "patch": { + "tags": [ + "BotConnection" + ], + "description": "Updates a Connection Setting registration for a Bot Service", + "operationId": "BotConnection_Update", + "x-ms-examples": { + "Update Connection Setting": { + "$ref": "./examples/UpdateConnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/resourceNameParameter" + }, + { + "$ref": "#/parameters/connectionNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ConnectionSetting" + }, + "description": "The parameters to provide for updating the Connection Setting." + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "If resource is created successfully or already existed, the service should return 200 (OK).", + "schema": { + "$ref": "#/definitions/ConnectionSetting" + } + }, + "201": { + "description": "If resource is created successfully, the service should return 201 (Created). Execution to continue asynchronously.", + "schema": { + "$ref": "#/definitions/ConnectionSetting" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + } + }, + "get": { + "tags": [ + "BotConnection" + ], + "x-ms-examples": { + "Update Connection Setting": { + "$ref": "./examples/GetConnection.json" + } + }, + "description": "Get a Connection Setting registration for a Bot Service", + "operationId": "BotConnection_Get", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/resourceNameParameter" + }, + { + "$ref": "#/parameters/connectionNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The resource provider should return 200 (OK) to indicate that the operation completed successfully. ", + "schema": { + "$ref": "#/definitions/ConnectionSetting" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the resource group *or* resource does not exist, 404 (NotFound) should be returned.", + "schema": { + "$ref": "#/definitions/Error" + } + } + } + }, + "delete": { + "tags": [ + "BotConnection" + ], + "description": "Deletes a Connection Setting registration for a Bot Service", + "operationId": "BotConnection_Delete", + "x-ms-examples": { + "Update Connection Setting": { + "$ref": "./examples/DeleteConnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/resourceNameParameter" + }, + { + "$ref": "#/parameters/connectionNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A 200 (OK) should be returned if the object exists and was deleted successfully;" + }, + "204": { + "description": "a 204 (NoContent) should be used if the resource does not exist and the request is well formed." + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.BotService/botServices/{resourceName}/connections": { + "get": { + "tags": [ + "BotConnection" + ], + "description": "Returns all the Connection Settings registered to a particular BotService resource", + "operationId": "BotConnection_ListByBotService", + "x-ms-examples": { + "List Connection Settings": { + "$ref": "./examples/ListConnectionsByBotService.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/resourceNameParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The resource provider should return 200 (OK) to indicate that the operation completed successfully. For other errors (e.g. internal errors) use the appropriate HTTP error code.\nThe nextLink field is expected to point to the URL the client should use to fetch the next page (per server side paging). This matches the OData guidelines for paged responses here. If a resource provider does not support paging, it should return the same body (JSON object with “value” property) but omit nextLink entirely (or set to null, *not* empty string) for future compatibility.\nThe nextLink should be implemented using following query parameters:\n· skipToken: opaque token that allows the resource provider to skip resources already enumerated. This value is defined and returned by the RP after first request via nextLink.\n· top: the optional client query parameter which defines the maximum number of records to be returned by the server.\nImplementation details:\n· NextLink may include all the query parameters (specifically OData $filter) used by the client in the first query. \n· Server may return less records than requested with nextLink. Returning zero records with NextLink is an acceptable response. \nClients must fetch records until the nextLink is not returned back / null. Clients should never rely on number of returned records to determinate if pagination is completed.", + "schema": { + "$ref": "#/definitions/ConnectionSettingResponseList" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the resource group does not exist, 404 (NotFound) will be returned.", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.BotService/hostSettings": { + "get": { + "tags": [ + "BotHostSettings" + ], + "description": "Get per subscription settings needed to host bot in compute resource such as Azure App Service", + "operationId": "HostSettings_Get", + "x-ms-examples": { + "Get Bot Host Settings": { + "$ref": "./examples/GetHostSettings.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "If resource is retrieved successfully, the service should return 200 (OK).", + "schema": { + "$ref": "#/definitions/HostSettingsResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + } + } + } + }, + "definitions": { + "Resource": { + "description": "Azure resource", + "x-ms-azure-resource": true, + "properties": { + "id": { + "description": "Specifies the resource ID.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Specifies the name of the resource.", + "type": "string", + "readOnly": true + }, + "location": { + "description": "Specifies the location of the resource.", + "type": "string" + }, + "type": { + "description": "Specifies the type of the resource.", + "type": "string", + "readOnly": true + }, + "tags": { + "description": "Contains resource tags defined as key/value pairs.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "Gets or sets the SKU of the resource." + }, + "kind": { + "$ref": "#/definitions/Kind", + "description": "Required. Gets or sets the Kind of the resource." + }, + "etag": { + "type": "string", + "description": "Entity Tag" + } + } + }, + "Sku": { + "properties": { + "name": { + "$ref": "#/definitions/SkuName", + "description": "The sku name" + }, + "tier": { + "readOnly": true, + "type": "string", + "description": "Gets the sku tier. This is based on the SKU name.", + "enum": [ + "Free", + "Standard" + ], + "x-ms-enum": { + "name": "SkuTier", + "modelAsString": true + } + } + }, + "required": [ + "name" + ], + "description": "The SKU of the cognitive services account." + }, + "SkuName": { + "type": "string", + "description": "The name of SKU.", + "enum": [ + "F0", + "S1" + ], + "x-ms-enum": { + "name": "SkuName", + "modelAsString": true + } + }, + "Kind": { + "type": "string", + "description": "Indicates the type of bot service", + "enum": [ + "sdk", + "designer", + "bot", + "function", + "azurebot" + ], + "x-ms-enum": { + "name": "Kind", + "modelAsString": true + } + }, + "Bot": { + "type": "object", + "description": "Bot resource definition", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/BotProperties", + "description": "The set of properties specific to bot resource" + } + } + }, + "BotProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "The Name of the bot" + }, + "description": { + "type": "string", + "description": "The description of the bot" + }, + "iconUrl": { + "type": "string", + "description": "The Icon Url of the bot" + }, + "endpoint": { + "type": "string", + "description": "The bot's endpoint" + }, + "endpointVersion": { + "type": "string", + "readOnly": true, + "description": "The bot's endpoint version" + }, + "msaAppId": { + "type": "string", + "description": "Microsoft App Id for the bot" + }, + "configuredChannels": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "description": "Collection of channels for which the bot is configured" + }, + "enabledChannels": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "description": "Collection of channels for which the bot is enabled" + }, + "developerAppInsightKey": { + "type": "string", + "description": "The Application Insights key" + }, + "developerAppInsightsApiKey": { + "type": "string", + "description": "The Application Insights Api Key" + }, + "developerAppInsightsApplicationId": { + "type": "string", + "description": "The Application Insights App Id" + }, + "luisAppIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Collection of LUIS App Ids" + }, + "luisKey": { + "type": "string", + "description": "The LUIS Key" + }, + "isCmekEnabled": { + "type": "boolean", + "description": "Whether Cmek is enabled" + }, + "cmekKeyVaultUrl": { + "type": "string", + "description": "The CMK Url" + }, + "isIsolated": { + "type": "boolean", + "description": "Whether the bot is in an isolated network" + }, + "schemaTransformationVersion": { + "type": "string", + "description": "The channel schema transformation version for the bot" + } + }, + "description": "The parameters to provide for the Bot.", + "required": [ + "displayName", + "endpoint", + "msaAppId" + ] + }, + "BotResponseList": { + "properties": { + "nextLink": { + "description": "The link used to get the next page of bot service resources.", + "type": "string" + }, + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Bot" + }, + "description": "Gets the list of bot service results and their properties." + } + }, + "description": "The list of bot service operation response." + }, + "BotChannel": { + "type": "object", + "description": "Bot channel resource definition", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/Channel", + "description": "The set of properties specific to bot channel resource" + } + } + }, + "Channel": { + "type": "object", + "description": "Channel definition", + "discriminator": "channelName", + "properties": { + "channelName": { + "type": "string", + "description": "The channel name" + } + }, + "required": [ + "channelName" + ] + }, + "AlexaChannel": { + "type": "object", + "x-ms-discriminator-value": "AlexaChannel", + "description": "Alexa channel definition", + "allOf": [ + { + "$ref": "#/definitions/Channel" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/AlexaChannelProperties", + "description": "The set of properties specific to Alexa channel resource" + } + } + }, + "AlexaChannelProperties": { + "properties": { + "alexaSkillId": { + "type": "string", + "description": "The Alexa skill Id" + }, + "urlFragment": { + "type": "string", + "readOnly": true, + "description": "Url fragment used in part of the Uri configured in Alexa" + }, + "serviceEndpointUri": { + "type": "string", + "readOnly": true, + "description": "Full Uri used to configured the skill in Alexa" + }, + "isEnabled": { + "type": "boolean", + "description": "Whether this channel is enabled for the bot" + } + }, + "description": "The parameters to provide for the Alexa channel.", + "required": [ + "alexaSkillId", + "isEnabled" + ] + }, + "FacebookChannel": { + "type": "object", + "description": "Facebook channel definition", + "x-ms-discriminator-value": "FacebookChannel", + "allOf": [ + { + "$ref": "#/definitions/Channel" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/FacebookChannelProperties", + "description": "The set of properties specific to bot facebook channel" + } + } + }, + "FacebookChannelProperties": { + "properties": { + "verifyToken": { + "x-ms-secret": true, + "type": "string", + "readOnly": true, + "description": "Verify token. Value only returned through POST to the action Channel List API, otherwise empty." + }, + "pages": { + "type": "array", + "items": { + "$ref": "#/definitions/FacebookPage" + }, + "description": "The list of Facebook pages" + }, + "appId": { + "type": "string", + "description": "Facebook application id" + }, + "appSecret": { + "x-ms-secret": true, + "type": "string", + "description": "Facebook application secret. Value only returned through POST to the action Channel List API, otherwise empty." + }, + "callbackUrl": { + "type": "string", + "readOnly": true, + "description": "Callback Url" + }, + "isEnabled": { + "type": "boolean", + "description": "Whether this channel is enabled for the bot" + } + }, + "description": "The parameters to provide for the Facebook channel.", + "required": [ + "appId", + "isEnabled" + ] + }, + "FacebookPage": { + "properties": { + "id": { + "type": "string", + "description": "Page id" + }, + "accessToken": { + "x-ms-secret": true, + "type": "string", + "description": "Facebook application access token. Value only returned through POST to the action Channel List API, otherwise empty." + } + }, + "description": "A Facebook page for Facebook channel registration", + "required": [ + "id" + ] + }, + "EmailChannel": { + "type": "object", + "description": "Email channel definition", + "x-ms-discriminator-value": "EmailChannel", + "allOf": [ + { + "$ref": "#/definitions/Channel" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/EmailChannelProperties", + "description": "The set of properties specific to email channel resource" + } + } + }, + "EmailChannelProperties": { + "properties": { + "emailAddress": { + "type": "string", + "description": "The email address" + }, + "password": { + "type": "string", + "description": "The password for the email address. Value only returned through POST to the action Channel List API, otherwise empty." + }, + "isEnabled": { + "type": "boolean", + "description": "Whether this channel is enabled for the bot" + } + }, + "description": "The parameters to provide for the Email channel.", + "required": [ + "emailAddress", + "isEnabled" + ] + }, + "MsTeamsChannel": { + "type": "object", + "x-ms-discriminator-value": "MsTeamsChannel", + "description": "Microsoft Teams channel definition", + "allOf": [ + { + "$ref": "#/definitions/Channel" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/MsTeamsChannelProperties", + "description": "The set of properties specific to Microsoft Teams channel resource" + } + } + }, + "MsTeamsChannelProperties": { + "properties": { + "enableCalling": { + "type": "boolean", + "description": "Enable calling for Microsoft Teams channel" + }, + "callingWebHook": { + "type": "string", + "description": "Webhook for Microsoft Teams channel calls" + }, + "isEnabled": { + "type": "boolean", + "description": "Whether this channel is enabled for the bot" + } + }, + "description": "The parameters to provide for the Microsoft Teams channel.", + "required": [ + "isEnabled" + ] + }, + "SkypeChannel": { + "type": "object", + "description": "Skype channel definition", + "x-ms-discriminator-value": "SkypeChannel", + "allOf": [ + { + "$ref": "#/definitions/Channel" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/SkypeChannelProperties", + "description": "The set of properties specific to Skype channel resource" + } + } + }, + "SkypeChannelProperties": { + "properties": { + "enableMessaging": { + "type": "boolean", + "description": "Enable messaging for Skype channel" + }, + "enableMediaCards": { + "type": "boolean", + "description": "Enable media cards for Skype channel" + }, + "enableVideo": { + "type": "boolean", + "description": "Enable video for Skype channel" + }, + "enableCalling": { + "type": "boolean", + "description": "Enable calling for Skype channel" + }, + "enableScreenSharing": { + "type": "boolean", + "description": "Enable screen sharing for Skype channel" + }, + "enableGroups": { + "type": "boolean", + "description": "Enable groups for Skype channel" + }, + "groupsMode": { + "type": "string", + "description": "Group mode for Skype channel" + }, + "callingWebHook": { + "type": "string", + "description": "Calling web hook for Skype channel" + }, + "isEnabled": { + "type": "boolean", + "description": "Whether this channel is enabled for the bot" + } + }, + "description": "The parameters to provide for the Microsoft Teams channel.", + "required": [ + "isEnabled" + ] + }, + "KikChannel": { + "type": "object", + "x-ms-discriminator-value": "KikChannel", + "description": "Kik channel definition", + "allOf": [ + { + "$ref": "#/definitions/Channel" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/KikChannelProperties", + "description": "The set of properties specific to Kik channel resource" + } + } + }, + "KikChannelProperties": { + "properties": { + "userName": { + "type": "string", + "description": "The Kik user name" + }, + "apiKey": { + "type": "string", + "description": "Kik API key. Value only returned through POST to the action Channel List API, otherwise empty." + }, + "isValidated": { + "type": "boolean", + "description": "Whether this channel is validated for the bot" + }, + "isEnabled": { + "type": "boolean", + "description": "Whether this channel is enabled for the bot" + } + }, + "description": "The parameters to provide for the Kik channel.", + "required": [ + "userName", + "isEnabled" + ] + }, + "WebChatChannel": { + "type": "object", + "x-ms-discriminator-value": "WebChatChannel", + "description": "Web Chat channel definition", + "allOf": [ + { + "$ref": "#/definitions/Channel" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/WebChatChannelProperties", + "description": "The set of properties specific to Web Chat channel resource" + } + } + }, + "WebChatChannelProperties": { + "properties": { + "webChatEmbedCode": { + "type": "string", + "x-ms-mutability": [ + "read" + ], + "readOnly": true, + "description": "Web chat control embed code" + }, + "sites": { + "type": "array", + "items": { + "$ref": "#/definitions/WebChatSite" + }, + "description": "The list of Web Chat sites" + } + }, + "description": "The parameters to provide for the Web Chat channel." + }, + "DirectLineChannel": { + "type": "object", + "x-ms-discriminator-value": "DirectLineChannel", + "description": "Direct Line channel definition", + "allOf": [ + { + "$ref": "#/definitions/Channel" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/DirectLineChannelProperties", + "description": "The set of properties specific to Direct Line channel resource" + } + } + }, + "DirectLineChannelProperties": { + "properties": { + "sites": { + "type": "array", + "items": { + "$ref": "#/definitions/DirectLineSite" + }, + "description": "The list of Direct Line sites" + } + }, + "description": "The parameters to provide for the Direct Line channel." + }, + "TelegramChannel": { + "type": "object", + "description": "Telegram channel definition", + "x-ms-discriminator-value": "TelegramChannel", + "allOf": [ + { + "$ref": "#/definitions/Channel" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/TelegramChannelProperties", + "description": "The set of properties specific to Telegram channel resource" + } + } + }, + "TelegramChannelProperties": { + "properties": { + "accessToken": { + "x-ms-secret": true, + "type": "string", + "description": "The Telegram access token. Value only returned through POST to the action Channel List API, otherwise empty." + }, + "isValidated": { + "type": "boolean", + "description": "Whether this channel is validated for the bot" + }, + "isEnabled": { + "type": "boolean", + "description": "Whether this channel is enabled for the bot" + } + }, + "description": "The parameters to provide for the Telegram channel.", + "required": [ + "isEnabled" + ] + }, + "SmsChannel": { + "type": "object", + "description": "Sms channel definition", + "x-ms-discriminator-value": "SmsChannel", + "allOf": [ + { + "$ref": "#/definitions/Channel" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/SmsChannelProperties", + "description": "The set of properties specific to Sms channel resource" + } + } + }, + "SmsChannelProperties": { + "properties": { + "phone": { + "type": "string", + "description": "The Sms phone" + }, + "accountSID": { + "type": "string", + "description": "The Sms account SID. Value only returned through POST to the action Channel List API, otherwise empty." + }, + "authToken": { + "x-ms-secret": true, + "type": "string", + "description": "The Sms auth token. Value only returned through POST to the action Channel List API, otherwise empty." + }, + "isValidated": { + "type": "boolean", + "description": "Whether this channel is validated for the bot" + }, + "isEnabled": { + "type": "boolean", + "description": "Whether this channel is enabled for the bot" + } + }, + "description": "The parameters to provide for the Sms channel.", + "required": [ + "phone", + "accountSID", + "isEnabled" + ] + }, + "SlackChannel": { + "type": "object", + "description": "Slack channel definition", + "x-ms-discriminator-value": "SlackChannel", + "allOf": [ + { + "$ref": "#/definitions/Channel" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/SlackChannelProperties", + "description": "The set of properties specific to Slack channel resource" + } + } + }, + "SlackChannelProperties": { + "properties": { + "clientId": { + "type": "string", + "description": "The Slack client id" + }, + "clientSecret": { + "x-ms-secret": true, + "type": "string", + "description": "The Slack client secret. Value only returned through POST to the action Channel List API, otherwise empty." + }, + "verificationToken": { + "x-ms-secret": true, + "type": "string", + "description": "The Slack verification token. Value only returned through POST to the action Channel List API, otherwise empty." + }, + "landingPageUrl": { + "type": "string", + "description": "The Slack landing page Url" + }, + "redirectAction": { + "type": "string", + "description": "The Slack redirect action", + "readOnly": true + }, + "lastSubmissionId": { + "type": "string", + "description": "The Sms auth token", + "readOnly": true + }, + "registerBeforeOAuthFlow": { + "type": "boolean", + "description": "Whether to register the settings before OAuth validation is performed. Recommended to True.", + "readOnly": true + }, + "isValidated": { + "type": "boolean", + "description": "Whether this channel is validated for the bot", + "readOnly": true + }, + "signingSecret": { + "x-ms-secret": true, + "type": "string", + "description": "The Slack signing secret." + }, + "isEnabled": { + "type": "boolean", + "description": "Whether this channel is enabled for the bot" + } + }, + "description": "The parameters to provide for the Slack channel.", + "required": [ + "isEnabled" + ] + }, + "LineChannel": { + "type": "object", + "description": "Line channel definition", + "x-ms-discriminator-value": "LineChannel", + "allOf": [ + { + "$ref": "#/definitions/Channel" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/LineChannelProperties", + "description": "The set of properties specific to line channel resource" + } + } + }, + "LineChannelProperties": { + "properties": { + "lineRegistrations": { + "type": "array", + "description": "The list of line channel registrations", + "items": { + "$ref": "#/definitions/LineRegistration" + } + }, + "callbackUrl": { + "type": "string", + "description": "Callback Url to enter in line registration.", + "readOnly": true + }, + "isValidated": { + "type": "boolean", + "description": "Whether this channel is validated for the bot", + "readOnly": true + } + }, + "description": "The parameters to provide for the Line channel.", + "required": [ + "lineRegistrations" + ] + }, + "LineRegistration": { + "properties": { + "generatedId": { + "x-ms-mutability": [ + "read" + ], + "type": "string", + "description": "Id generated for the line channel registration", + "readOnly": true + }, + "channelSecret": { + "x-ms-secret": true, + "type": "string", + "description": "Secret for the line channel registration" + }, + "channelAccessToken": { + "x-ms-secret": true, + "type": "string", + "description": "Access token for the line channel registration" + } + }, + "description": "The properties corresponding to a line channel registration" + }, + "DirectLineSpeechChannel": { + "type": "object", + "description": "DirectLine Speech channel definition", + "x-ms-discriminator-value": "DirectLineSpeechChannel", + "allOf": [ + { + "$ref": "#/definitions/Channel" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/DirectLineSpeechChannelProperties", + "description": "The set of properties specific to DirectLine Speech channel resource" + } + } + }, + "DirectLineSpeechChannelProperties": { + "properties": { + "cognitiveServiceRegion": { + "type": "string", + "description": "The cognitive service region with this channel registration." + }, + "cognitiveServiceSubscriptionKey": { + "x-ms-secret": true, + "type": "string", + "description": "The cognitive service subscription key to use with this channel registration." + }, + "isEnabled": { + "type": "boolean", + "description": "Whether this channel is enabled or not." + }, + "customVoiceDeploymentId": { + "type": "string", + "description": "Custom speech model id (optional)." + }, + "customSpeechModelId": { + "type": "string", + "description": "Custom voice deployment id (optional)." + }, + "isDefaultBotForCogSvcAccount": { + "type": "boolean", + "description": "Make this a default bot for chosen cognitive service account." + } + }, + "description": "The parameters to provide for the DirectLine Speech channel.", + "required": [ + "cognitiveServiceRegion", + "cognitiveServiceSubscriptionKey" + ] + }, + "ChannelResponseList": { + "properties": { + "nextLink": { + "description": "The link used to get the next page of bot service channel resources.", + "type": "string" + }, + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/BotChannel" + }, + "description": "Gets the list of bot service channel results and their properties." + } + }, + "description": "The list of bot service channel operation response." + }, + "WebChatSite": { + "properties": { + "siteId": { + "type": "string", + "description": "Site Id", + "x-ms-mutability": [ + "read" + ], + "readOnly": true + }, + "siteName": { + "type": "string", + "description": "Site name" + }, + "key": { + "type": "string", + "description": "Primary key. Value only returned through POST to the action Channel List API, otherwise empty.", + "x-ms-mutability": [ + "read" + ], + "readOnly": true + }, + "key2": { + "type": "string", + "description": "Secondary key. Value only returned through POST to the action Channel List API, otherwise empty.", + "x-ms-mutability": [ + "read" + ], + "readOnly": true + }, + "isEnabled": { + "type": "boolean", + "description": "Whether this site is enabled for DirectLine channel" + }, + "enablePreview": { + "type": "boolean", + "description": "Whether this site is enabled for preview versions of Webchat" + } + }, + "required": [ + "siteName", + "isEnabled", + "enablePreview" + ], + "description": "A site for the Webchat channel" + }, + "DirectLineSite": { + "properties": { + "siteId": { + "x-ms-mutability": [ + "read" + ], + "type": "string", + "description": "Site Id", + "readOnly": true + }, + "siteName": { + "type": "string", + "description": "Site name" + }, + "key": { + "x-ms-mutability": [ + "read" + ], + "type": "string", + "description": "Primary key. Value only returned through POST to the action Channel List API, otherwise empty.", + "readOnly": true + }, + "key2": { + "x-ms-mutability": [ + "read" + ], + "type": "string", + "description": "Secondary key. Value only returned through POST to the action Channel List API, otherwise empty.", + "readOnly": true + }, + "isEnabled": { + "type": "boolean", + "description": "Whether this site is enabled for DirectLine channel." + }, + "isV1Enabled": { + "type": "boolean", + "description": "Whether this site is enabled for Bot Framework V1 protocol." + }, + "isV3Enabled": { + "type": "boolean", + "description": "Whether this site is enabled for Bot Framework V1 protocol." + }, + "isSecureSiteEnabled": { + "type": "boolean", + "description": "Whether this site is enabled for authentication with Bot Framework." + }, + "trustedOrigins": { + "type": "array", + "description": "List of Trusted Origin URLs for this site. This field is applicable only if isSecureSiteEnabled is True.", + "items": { + "type": "string" + } + } + }, + "description": "A site for the Direct Line channel", + "required": [ + "isV1Enabled", + "isV3Enabled", + "isEnabled", + "siteName" + ] + }, + "SiteInfo": { + "properties": { + "siteName": { + "type": "string", + "description": "The site name" + }, + "key": { + "type": "string", + "description": "Determines which key is to be regenerated", + "enum": [ + "key1", + "key2" + ], + "x-ms-enum": { + "name": "key", + "modelAsString": false + } + } + }, + "description": "Site information for WebChat or DirectLine Channels to identify which site to regenerate keys for.", + "type": "object", + "required": [ + "siteName", + "key" + ] + }, + "ConnectionItemName": { + "properties": { + "name": { + "type": "string", + "description": "Connection Item name that has been added in the API", + "readOnly": true + } + }, + "description": "The display name of a connection Item Setting registered with the Bot" + }, + "ConnectionSettingParameter": { + "properties": { + "key": { + "type": "string", + "description": "Key for the Connection Setting Parameter." + }, + "value": { + "type": "string", + "description": "Value associated with the Connection Setting Parameter." + } + }, + "description": "Extra Parameter in a Connection Setting Properties to indicate service provider specific properties" + }, + "ConnectionSettingProperties": { + "properties": { + "clientId": { + "type": "string", + "description": "Client Id associated with the Connection Setting." + }, + "settingId": { + "type": "string", + "description": "Setting Id set by the service for the Connection Setting.", + "readOnly": true + }, + "clientSecret": { + "x-ms-secret": true, + "type": "string", + "description": "Client Secret associated with the Connection Setting" + }, + "scopes": { + "type": "string", + "description": "Scopes associated with the Connection Setting" + }, + "serviceProviderId": { + "type": "string", + "description": "Service Provider Id associated with the Connection Setting" + }, + "serviceProviderDisplayName": { + "type": "string", + "description": "Service Provider Display Name associated with the Connection Setting" + }, + "parameters": { + "type": "array", + "description": "Service Provider Parameters associated with the Connection Setting", + "items": { + "$ref": "#/definitions/ConnectionSettingParameter" + } + } + }, + "description": "Properties for a Connection Setting Item" + }, + "ConnectionSetting": { + "type": "object", + "description": "Bot channel resource definition", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ConnectionSettingProperties", + "description": "The set of properties specific to bot channel resource" + } + } + }, + "ConnectionSettingResponseList": { + "properties": { + "nextLink": { + "description": "The link used to get the next page of bot service connection setting resources.", + "type": "string" + }, + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ConnectionSetting" + }, + "description": "Gets the list of bot service connection settings and their properties." + } + }, + "description": "The list of bot service connection settings response." + }, + "ServiceProviderResponseList": { + "properties": { + "nextLink": { + "description": "The link used to get the next page of bot service providers.", + "type": "string" + }, + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ServiceProvider" + }, + "description": "Gets the list of bot service providers and their properties." + } + }, + "description": "The list of bot service providers response." + }, + "ServiceProviderParameter": { + "properties": { + "name": { + "type": "string", + "description": "Name of the Service Provider", + "readOnly": true + }, + "type": { + "type": "string", + "description": "Type of the Service Provider", + "readOnly": true + }, + "displayName": { + "type": "string", + "description": "Display Name of the Service Provider", + "readOnly": true + }, + "description": { + "type": "string", + "description": "Description of the Service Provider", + "readOnly": true + }, + "helpUrl": { + "type": "string", + "description": "Help Url for the Service Provider", + "readOnly": true + }, + "default": { + "type": "string", + "description": "Default Name for the Service Provider", + "readOnly": true + } + }, + "description": "Extra Parameters specific to each Service Provider" + }, + "ServiceProviderProperties": { + "properties": { + "id": { + "type": "string", + "description": "Id for Service Provider", + "readOnly": true + }, + "displayName": { + "type": "string", + "description": "Display Name of the Service Provider", + "readOnly": true + }, + "serviceProviderName": { + "type": "string", + "description": "Display Name of the Service Provider", + "readOnly": true + }, + "devPortalUrl": { + "type": "string", + "description": "Display Name of the Service Provider", + "readOnly": true + }, + "iconUrl": { + "type": "string", + "description": "Display Name of the Service Provider", + "readOnly": true + }, + "parameters": { + "description": "The list of parameters for the Service Provider", + "type": "array", + "items": { + "$ref": "#/definitions/ServiceProviderParameter" + } + } + }, + "description": "The Object used to describe a Service Provider supported by Bot Service" + }, + "ServiceProvider": { + "type": "object", + "description": "Service Provider Definition", + "properties": { + "properties": { + "$ref": "#/definitions/ServiceProviderProperties", + "description": "The Properties of a Service Provider Object" + } + } + }, + "Error": { + "properties": { + "error": { + "$ref": "#/definitions/ErrorBody", + "description": "The error body." + } + }, + "description": "Bot Service error object." + }, + "ErrorBody": { + "properties": { + "code": { + "type": "string", + "description": "error code" + }, + "message": { + "type": "string", + "description": "error message" + } + }, + "description": "Bot Service error body.", + "required": [ + "code", + "message" + ] + }, + "OperationEntityListResult": { + "description": "The list of bot service operation response.", + "type": "object", + "properties": { + "nextLink": { + "description": "The link used to get the next page of operations.", + "type": "string" + }, + "value": { + "description": "The list of operations.", + "type": "array", + "items": { + "$ref": "#/definitions/OperationEntity" + } + } + } + }, + "OperationEntity": { + "description": "The operations supported by Bot Service Management.", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}.", + "type": "string" + }, + "display": { + "$ref": "#/definitions/OperationDisplayInfo", + "description": "The operation supported by Bot Service Management." + }, + "origin": { + "description": "The origin of the operation.", + "type": "string" + }, + "properties": { + "description": "Additional properties.", + "type": "object" + } + } + }, + "OperationDisplayInfo": { + "description": "The operation supported by Bot Service Management.", + "type": "object", + "properties": { + "description": { + "description": "The description of the operation.", + "type": "string" + }, + "operation": { + "description": "The action that users can perform, based on their permission level.", + "type": "string" + }, + "provider": { + "description": "Service provider: Microsoft Bot Service.", + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed.", + "type": "string" + } + } + }, + "CheckNameAvailabilityRequestBody": { + "description": "The request body for a request to Bot Service Management to check availability of a bot name.", + "type": "object", + "properties": { + "name": { + "description": "the name of the bot for which availability needs to be checked.", + "type": "string" + }, + "type": { + "description": "the type of the bot for which availability needs to be checked", + "type": "string" + } + } + }, + "CheckNameAvailabilityResponseBody": { + "description": "The response body returned for a request to Bot Service Management to check availability of a bot name.", + "type": "object", + "properties": { + "valid": { + "description": "indicates if the bot name is valid.", + "type": "boolean" + }, + "message": { + "description": "additional message from the bot management api showing why a bot name is not available", + "type": "string" + } + } + }, + "HostSettingsResponse": { + "description": "The response body returned for a request to Bot Service Management to check per subscription hostSettings", + "type": "object", + "properties": { + "OAuthUrl": { + "description": "For in-conversation bot user authentication", + "type": "string" + }, + "ToBotFromChannelOpenIdMetadataUrl": { + "description": "For verifying incoming tokens from the channels", + "type": "string" + }, + "ToBotFromChannelTokenIssuer": { + "description": "For verifying incoming tokens from the channels", + "type": "string" + }, + "ToBotFromEmulatorOpenIdMetadataUrl": { + "description": "For verifying incoming tokens from bot emulator", + "type": "string" + }, + "ToChannelFromBotLoginUrl": { + "description": "For getting access token to channels from bot host", + "type": "string" + }, + "ToChannelFromBotOAuthScope": { + "description": "For getting access token to channels from bot host", + "type": "string" + }, + "ValidateAuthority": { + "description": "Per cloud OAuth setting on whether authority is validated", + "type": "boolean" + }, + "BotOpenIdMetadata": { + "description": "Same as ToBotFromChannelOpenIdMetadataUrl, used by SDK < v4.12", + "type": "string" + } + } + } + }, + "parameters": { + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "x-ms-parameter-location": "method", + "in": "path", + "required": true, + "type": "string", + "maxLength": 64, + "minLength": 2, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_.-]*$", + "description": "The name of the Bot resource group in the user subscription." + }, + "resourceNameParameter": { + "name": "resourceName", + "x-ms-parameter-location": "method", + "in": "path", + "required": true, + "type": "string", + "maxLength": 64, + "minLength": 2, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_.-]*$", + "description": "The name of the Bot resource." + }, + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Azure Subscription ID.", + "required": true, + "type": "string" + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Version of the API to be used with the client request." + }, + "connectionNameParameter": { + "name": "connectionName", + "x-ms-parameter-location": "method", + "in": "path", + "required": true, + "type": "string", + "maxLength": 64, + "minLength": 2, + "pattern": "^[a-zA-Z0-9][\\sa-zA-Z0-9_.-]*$", + "description": "The name of the Bot Service Connection Setting resource." + }, + "channelNameParameter": { + "name": "channelName", + "x-ms-parameter-location": "method", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "AlexaChannel", + "FacebookChannel", + "EmailChannel", + "KikChannel", + "TelegramChannel", + "SlackChannel", + "MsTeamsChannel", + "SkypeChannel", + "WebChatChannel", + "DirectLineChannel", + "SmsChannel", + "LineChannel", + "DirectLineSpeechChannel" + ], + "x-ms-enum": { + "name": "channelName", + "modelAsString": false, + "values": [ + { + "value": "AlexaChannel" + }, + { + "value": "FacebookChannel" + }, + { + "value": "EmailChannel" + }, + { + "value": "KikChannel" + }, + { + "value": "TelegramChannel" + }, + { + "value": "SlackChannel" + }, + { + "value": "MsTeamsChannel" + }, + { + "value": "SkypeChannel" + }, + { + "value": "WebChatChannel" + }, + { + "value": "DirectLineChannel" + }, + { + "value": "SmsChannel" + }, + { + "value": "LineChannel" + }, + { + "value": "DirectLineSpeechChannel" + } + ] + }, + "description": "The name of the Channel resource." + }, + "regenerateKeyschannelNameParameter": { + "name": "channelName", + "x-ms-parameter-location": "method", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "WebChatChannel", + "DirectLineChannel" + ], + "x-ms-enum": { + "name": "regenerateKeysChannelName", + "modelAsString": false, + "values": [ + { + "value": "WebChatChannel" + }, + { + "value": "DirectLineChannel" + } + ] + }, + "description": "The name of the Channel resource for which keys are to be regenerated." + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/CheckNameAvailability.json b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/CheckNameAvailability.json new file mode 100644 index 000000000000..a613c712ce16 --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/CheckNameAvailability.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "parameters": { + "name": "testbotname", + "type": "string" + } + }, + "responses": { + "200": { + "body": { + "valid": true, + "message": "custom message from server" + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/CreateBot.json b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/CreateBot.json new file mode 100644 index 000000000000..3b24c7a2df3a --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/CreateBot.json @@ -0,0 +1,117 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "api-version": "2021-03-01", + "resourceName": "samplebotname", + "parameters": { + "location": "West US", + "sku": { + "name": "S1" + }, + "etag": "etag1", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "kind": "sdk", + "properties": { + "description": "The description of the bot", + "developerAppInsightKey": "appinsightskey", + "developerAppInsightsApiKey": "appinsightsapikey", + "developerAppInsightsApplicationId": "appinsightsappid", + "displayName": "The Name of the bot", + "endpoint": "http://mybot.coffee", + "iconUrl": "http://myicon", + "luisAppIds": [ + "luisappid1", + "luisappid2" + ], + "luisKey": "luiskey", + "msaAppId": "exampleappid", + "isCmekEnabled": true, + "cmekKeyVaultUrl": "https://myCmekKey", + "isIsolated": false, + "schemaTransformationVersion": "1.0" + } + } + }, + "responses": { + "200": { + "body": { + "location": "West US", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "name": "samplebotname", + "type": "Microsoft.BotService/botServices", + "id": "/subscriptions/subscription-id/resourceGroups/OneResourceGroupName/providers/Microsoft.BotService/botServices/samplebotname", + "kind": "sdk", + "etag": "etag1", + "properties": { + "description": "The description of the bot", + "developerAppInsightKey": "appinsightskey", + "developerAppInsightsApplicationId": "appinsightsappid", + "displayName": "The Name of the bot", + "endpoint": "http://mybot.coffee", + "endpointVersion": "version", + "iconUrl": "http://myicon", + "luisAppIds": [ + "luisappid1", + "luisappid2" + ], + "msaAppId": "msaappid", + "configuredChannels": [ + "facebook", + "groupme" + ], + "enabledChannels": [ + "facebook" + ], + "isCmekEnabled": true, + "cmekKeyVaultUrl": "https://myCmekKey", + "isIsolated": false, + "schemaTransformationVersion": "1.0" + } + } + }, + "201": { + "body": { + "location": "West US", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "name": "samplebotname", + "type": "Microsoft.BotService/botServices", + "id": "/subscriptions/subscription-id/resourceGroups/OneResourceGroupName/providers/Microsoft.BotService/botServices/samplebotname", + "kind": "sdk", + "properties": { + "description": "The description of the bot", + "developerAppInsightsApplicationId": "appinsightsappid", + "displayName": "The Name of the bot", + "endpoint": "http://mybot.coffee", + "endpointVersion": "version", + "iconUrl": "http://myicon", + "luisAppIds": [ + "luisappid1", + "luisappid2" + ], + "msaAppId": "msaappid", + "configuredChannels": [ + "facebook", + "groupme" + ], + "enabledChannels": [ + "facebook" + ], + "isCmekEnabled": true, + "cmekKeyVaultUrl": "https://myCmekKey", + "isIsolated": false, + "schemaTransformationVersion": "1.0" + } + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/DeleteBot.json b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/DeleteBot.json new file mode 100644 index 000000000000..21195bf89105 --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/DeleteBot.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "api-version": "2021-03-01", + "resourceName": "samplebotname" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/DeleteChannel.json b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/DeleteChannel.json new file mode 100644 index 000000000000..63b0388b76e4 --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/DeleteChannel.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "api-version": "2021-03-01", + "resourceName": "samplebotname", + "channelName": "EmailChannel" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/DeleteConnection.json b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/DeleteConnection.json new file mode 100644 index 000000000000..cf67b01e11fa --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/DeleteConnection.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "api-version": "2021-03-01", + "resourceName": "samplebotname", + "connectionName": "sampleConnection" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/DeleteDirectLineSpeechChannel.json b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/DeleteDirectLineSpeechChannel.json new file mode 100644 index 000000000000..ff047c2ff355 --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/DeleteDirectLineSpeechChannel.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "api-version": "2021-03-01", + "resourceName": "samplebotname", + "channelName": "DirectLineSpeechChannel" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/DirectlineRegenerateKeys.json b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/DirectlineRegenerateKeys.json new file mode 100644 index 000000000000..50ef7e87500d --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/DirectlineRegenerateKeys.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "api-version": "2021-03-01", + "resourceName": "samplebotname", + "channelName": "DirectLineChannel", + "parameters": { + "siteName": "testSiteName", + "key": "key1" + } + }, + "responses": { + "200": { + "body": { + "location": "global", + "properties": { + "channelName": "DirectLineChannel", + "properties": { + "sites": [ + { + "siteId": "abcd", + "siteName": "Default Site", + "key": "key1", + "key2": "key2", + "isEnabled": true, + "isV1Enabled": true, + "isV3Enabled": true + } + ] + } + } + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/GetAlexaChannel.json b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/GetAlexaChannel.json new file mode 100644 index 000000000000..ce8e6dd0c0cc --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/GetAlexaChannel.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "api-version": "2021-03-01", + "resourceName": "samplebotname", + "channelName": "AlexaChannel" + }, + "responses": { + "200": { + "body": { + "location": "global", + "properties": { + "channelName": "AlexaChannel", + "properties": { + "alexaSkillId": "alexa skill id", + "urlFragment": "XUrlFragmentX", + "serviceEndpointUri": "https://domain/XUrlFragmentX/botId", + "isEnabled": true + } + } + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/GetBot.json b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/GetBot.json new file mode 100644 index 000000000000..189fc73fb9b3 --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/GetBot.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "api-version": "2021-03-01", + "resourceName": "samplebotname" + }, + "responses": { + "200": { + "body": { + "location": "West US", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "name": "samplebotname", + "type": "Microsoft.BotService/botServices", + "id": "/subscriptions/subscription-id/resourceGroups/OneResourceGroupName/providers/Microsoft.BotService/botServices/samplebotname", + "kind": "sdk", + "etag": "etag1", + "properties": { + "description": "The description of the bot", + "developerAppInsightKey": "appinsightskey", + "developerAppInsightsApplicationId": "appinsightsappid", + "displayName": "The Name of the bot", + "endpoint": "http://mybot.coffee", + "endpointVersion": "version", + "iconUrl": "http://myicon", + "luisAppIds": [ + "luisappid1", + "luisappid2" + ], + "msaAppId": "msaappid", + "configuredChannels": [ + "facebook", + "groupme" + ], + "enabledChannels": [ + "facebook" + ], + "isCmekEnabled": true, + "cmekKeyVaultUrl": "https://myCmekKey", + "isIsolated": false, + "schemaTransformationVersion": "1.0" + } + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/GetChannel.json b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/GetChannel.json new file mode 100644 index 000000000000..b89f02010de6 --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/GetChannel.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "api-version": "2021-03-01", + "resourceName": "samplebotname", + "channelName": "EmailChannel" + }, + "responses": { + "200": { + "body": { + "location": "global", + "properties": { + "channelName": "EmailChannel", + "properties": { + "emailAddress": "a@b.com", + "password": "pwd", + "isEnabled": true + } + } + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/GetConnection.json b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/GetConnection.json new file mode 100644 index 000000000000..b9c78ff824c4 --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/GetConnection.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "api-version": "2021-03-01", + "resourceName": "samplebotname", + "connectionName": "sampleConnection" + }, + "responses": { + "200": { + "body": { + "location": "global", + "id": "/subscriptions/subscription-id/resourceGroups/OneResourceGroupName/providers/Microsoft.BotService/botServices/samplebotname/connections/sampleConnection", + "etag": "etag1", + "name": "sampleConnection", + "properties": { + "clientId": "sampleclientid", + "clientSecret": null, + "scopes": "samplescope", + "serviceProviderId": "serviceproviderid", + "serviceProviderDisplayName": "serviceProviderDisplayName", + "parameters": [ + { + "key": "key1", + "value": "value1" + }, + { + "key": "key2", + "value": "value2" + } + ] + } + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/GetDirectLineSpeechChannel.json b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/GetDirectLineSpeechChannel.json new file mode 100644 index 000000000000..35110c6719ff --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/GetDirectLineSpeechChannel.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "api-version": "2021-03-01", + "resourceName": "samplebotname", + "channelName": "DirectLineSpeechChannel" + }, + "responses": { + "200": { + "body": { + "location": "global", + "properties": { + "channelName": "DirectLineSpeechChannel", + "properties": { + "cognitiveServiceRegion": "Cognitive service region", + "customVoiceDeploymentId": "Custom voice deployment ID", + "customSpeechModelId": "Custom speech model ID", + "isDefaultBotForCogSvcAccount": true, + "isEnabled": true + } + } + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/GetHostSettings.json b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/GetHostSettings.json new file mode 100644 index 000000000000..0eca7d306eac --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/GetHostSettings.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "api-version": "2021-03-01" + }, + "responses": { + "200": { + "body": { + "BotOpenIdMetadata": "https://login.botframework.com/v1/.well-known/openidconfiguration", + "OAuthUrl": "https://token.botframework.com/", + "ToBotFromChannelOpenIdMetadataUrl": "https://login.botframework.com/v1/.well-known/openidconfiguration", + "ToBotFromChannelTokenIssuer": "https://api.botframework.com", + "ToBotFromEmulatorOpenIdMetadataUrl": "https://login.microsoftonline.com/botframework.com/v2.0/.well-known/openid-configuration", + "ToChannelFromBotLoginUrl": "https://login.microsoftonline.com/botframework.com", + "ToChannelFromBotOAuthScope": "https://api.botframework.com", + "ValidateAuthority": true + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/GetLineChannel.json b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/GetLineChannel.json new file mode 100644 index 000000000000..8ea4e7ac3b97 --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/GetLineChannel.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "api-version": "2021-03-01", + "resourceName": "samplebotname", + "channelName": "LineChannel" + }, + "responses": { + "200": { + "body": { + "location": "global", + "properties": { + "channelName": "LineChannel", + "properties": { + "lineRegistrations": [ + { + "generatedId": "id", + "channelSecret": null, + "channelAccessToken": null + } + ], + "callbackUrl": "http://callbackUrl", + "isValidated": true + } + } + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/GetOperations.json b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/GetOperations.json new file mode 100644 index 000000000000..7ac86f5a9676 --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/GetOperations.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2021-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.BotService/botService/read", + "display": { + "provider": "Microsoft Bot Service", + "resource": "Bot Service", + "operation": "Read Bot Service", + "description": "Read Bot Service" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.BotService/botService/write", + "display": { + "provider": "Microsoft Bot Service", + "resource": "Bot Service", + "operation": "Write Bot Service", + "description": "Writes Bot Service" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.BotService/botService/delete", + "display": { + "provider": "Microsoft Bot Service", + "resource": "Bot Service", + "operation": "Delete Bot Service", + "description": "Deletes Bot Service" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.BotService/botService/botName/read", + "display": { + "provider": "Microsoft Bot Service", + "resource": "Bot Service name availability", + "operation": "Check bot name availability", + "description": "Check bot name availability" + }, + "origin": "user,system" + } + ] + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/ListBotsByResourceGroup.json b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/ListBotsByResourceGroup.json new file mode 100644 index 000000000000..0c25649703bd --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/ListBotsByResourceGroup.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "api-version": "2021-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "location": "West US", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "name": "samplebotname", + "type": "Microsoft.BotService/botServices", + "id": "/subscriptions/subscription-id/resourceGroups/OneResourceGroupName/providers/Microsoft.BotService/botServices", + "etag": "etag1", + "kind": "sdk", + "properties": { + "description": "The description of the bot", + "developerAppInsightKey": "appinsightskey", + "developerAppInsightsApplicationId": "appinsightsappid", + "displayName": "The Name of the bot", + "endpoint": "http://mybot.coffee", + "endpointVersion": "version", + "iconUrl": "http://myicon", + "luisAppIds": [ + "luisappid1", + "luisappid2" + ], + "msaAppId": "msaappid", + "configuredChannels": [ + "facebook", + "groupme" + ], + "enabledChannels": [ + "facebook" + ], + "isCmekEnabled": true, + "cmekKeyVaultUrl": "https://myCmekKey", + "isIsolated": false, + "schemaTransformationVersion": "1.0" + } + } + ] + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/ListBotsBySubscription.json b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/ListBotsBySubscription.json new file mode 100644 index 000000000000..ea64a7343666 --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/ListBotsBySubscription.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "api-version": "2021-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "location": "West US", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "name": "samplebotname", + "type": "Microsoft.BotService/botServices", + "id": "/subscriptions/subscription-id/providers/Microsoft.BotService/botServices", + "kind": "sdk", + "etag": "etag1", + "properties": { + "description": "The description of the bot", + "developerAppInsightKey": "appinsightskey", + "developerAppInsightsApplicationId": "appinsightsappid", + "displayName": "The Name of the bot", + "endpoint": "http://mybot.coffee", + "endpointVersion": "version", + "iconUrl": "http://myicon", + "luisAppIds": [ + "luisappid1", + "luisappid2" + ], + "msaAppId": "msaappid", + "configuredChannels": [ + "facebook", + "groupme" + ], + "enabledChannels": [ + "facebook" + ], + "isCmekEnabled": true, + "cmekKeyVaultUrl": "https://myCmekKey", + "isIsolated": false, + "schemaTransformationVersion": "1.0" + } + } + ] + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/ListChannel.json b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/ListChannel.json new file mode 100644 index 000000000000..de952f0543e8 --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/ListChannel.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "api-version": "2021-03-01", + "resourceName": "samplebotname", + "channelName": "EmailChannel", + "parameters": { + "location": "global" + } + }, + "responses": { + "200": { + "body": { + "location": "global", + "properties": { + "channelName": "EmailChannel", + "properties": { + "emailAddress": "a@b.com", + "password": "pwd", + "isEnabled": true + } + } + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/ListChannelsByBotService.json b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/ListChannelsByBotService.json new file mode 100644 index 000000000000..b18fbd8d15e8 --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/ListChannelsByBotService.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "resourceName": "samplebotname", + "api-version": "2021-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "location": "global", + "properties": { + "channelName": "EmailChannel", + "properties": { + "emailAddress": "a@b.com", + "password": "pwd", + "isEnabled": true + } + } + }, + { + "location": "global", + "properties": { + "channelName": "FacebookChannel", + "properties": { + "verifyToken": "othertoken", + "appId": "id", + "appSecret": null, + "callbackUrl": "appid", + "isEnabled": true, + "pages": [ + { + "accessToken": null, + "id": "id" + } + ] + } + } + } + ] + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/ListConnectionsByBotService.json b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/ListConnectionsByBotService.json new file mode 100644 index 000000000000..24f10ec90b1a --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/ListConnectionsByBotService.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "api-version": "2021-03-01", + "resourceName": "samplebotname" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "sampleConnection", + "properties": { + "clientId": "sampleclientid", + "clientSecret": null, + "scopes": "samplescope", + "serviceProviderId": "serviceproviderid", + "parameters": [ + { + "key": "key1", + "value": "value1" + }, + { + "key": "key2", + "value": "value2" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/ListServiceProviders.json b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/ListServiceProviders.json new file mode 100644 index 000000000000..c05785b4fbe0 --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/ListServiceProviders.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "api-version": "2021-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "id": "sampleServiceProviderId", + "displayName": "sample service provider display name", + "serviceProviderName": "sampleServiceProvider", + "devPortalUrl": "sampleDevPortalUrl", + "iconUrl": "sampleIconUrl", + "parameters": [ + { + "name": "sampleParameterName", + "type": "sampleParameterType", + "displayName": "sampleDisplayName", + "description": "sampleDescription", + "helpUrl": "sampleHelpUrl", + "default": "sampleDefaultValue" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/PutAlexaChannel.json b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/PutAlexaChannel.json new file mode 100644 index 000000000000..8bea9a75068f --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/PutAlexaChannel.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "api-version": "2021-03-01", + "resourceName": "samplebotname", + "channelName": "AlexaChannel", + "parameters": { + "location": "global", + "properties": { + "channelName": "AlexaChannel", + "properties": { + "alexaSkillId": "XAlexaSkillIdX", + "isEnabled": true + } + } + } + }, + "responses": { + "200": { + "body": { + "location": "global", + "properties": { + "channelName": "AlexaChannel", + "properties": { + "alexaSkillId": "alexa skill id", + "urlFragment": "XUrlFragmentX", + "serviceEndpointUri": "https://domain/XUrlFragmentX/botId", + "isEnabled": true + } + } + } + }, + "201": { + "body": { + "location": "global", + "properties": { + "channelName": "AlexaChannel", + "properties": { + "alexaSkillId": "alexa skill id", + "urlFragment": "XUrlFragmentX", + "serviceEndpointUri": "https://domain/XUrlFragmentX/botId", + "isEnabled": true + } + } + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/PutChannel.json b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/PutChannel.json new file mode 100644 index 000000000000..0db6722e455b --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/PutChannel.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "api-version": "2021-03-01", + "resourceName": "samplebotname", + "channelName": "EmailChannel", + "parameters": { + "location": "global", + "properties": { + "channelName": "EmailChannel", + "properties": { + "emailAddress": "a@b.com", + "password": "pwd", + "isEnabled": true + } + } + } + }, + "responses": { + "200": { + "body": { + "location": "global", + "properties": { + "channelName": "EmailChannel", + "properties": { + "emailAddress": "a@b.com", + "password": "pwd", + "isEnabled": true + } + } + } + }, + "201": { + "body": { + "location": "global", + "properties": { + "channelName": "EmailChannel", + "properties": { + "emailAddress": "a@b.com", + "password": "pwd", + "isEnabled": true + } + } + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/PutConnection.json b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/PutConnection.json new file mode 100644 index 000000000000..c755d979c945 --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/PutConnection.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "api-version": "2021-03-01", + "resourceName": "samplebotname", + "connectionName": "sampleConnection", + "parameters": { + "location": "West US", + "etag": "etag1", + "properties": { + "clientId": "sampleclientid", + "clientSecret": "samplesecret", + "scopes": "samplescope", + "serviceProviderId": "serviceproviderid", + "parameters": [ + { + "key": "key1", + "value": "value1" + }, + { + "key": "key2", + "value": "value2" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "location": "global", + "id": "/subscriptions/subscription-id/resourceGroups/OneResourceGroupName/providers/Microsoft.BotService/botServices/samplebotname/connections/sampleConnection", + "etag": "etag1", + "name": "sampleConnection", + "properties": { + "clientId": "sampleclientid", + "clientSecret": null, + "scopes": "samplescope", + "serviceProviderId": "serviceproviderid", + "serviceProviderDisplayName": "serviceProviderDisplayName", + "parameters": [ + { + "key": "key1", + "value": "value1" + }, + { + "key": "key2", + "value": "value2" + } + ] + } + } + }, + "201": { + "body": { + "location": "global", + "id": "/subscriptions/subscription-id/resourceGroups/OneResourceGroupName/providers/Microsoft.BotService/botServices/samplebotname/connections/sampleConnection", + "etag": "etag1", + "name": "sampleConnection", + "properties": { + "clientId": "sampleclientid", + "clientSecret": null, + "scopes": "samplescope", + "serviceProviderId": "serviceproviderid", + "serviceProviderDisplayName": "serviceProviderDisplayName", + "parameters": [ + { + "key": "key1", + "value": "value1" + }, + { + "key": "key2", + "value": "value2" + } + ] + } + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/PutDirectLineSpeechChannel.json b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/PutDirectLineSpeechChannel.json new file mode 100644 index 000000000000..0411ec285694 --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/PutDirectLineSpeechChannel.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "api-version": "2021-03-01", + "resourceName": "samplebotname", + "channelName": "DirectLineSpeechChannel", + "parameters": { + "location": "global", + "properties": { + "channelName": "DirectLineSpeechChannel", + "properties": { + "cognitiveServiceRegion": "XcognitiveServiceRegionX", + "cognitiveServiceSubscriptionKey": "XcognitiveServiceSubscriptionKeyX", + "isEnabled": true + } + } + } + }, + "responses": { + "200": { + "body": { + "location": "global", + "properties": { + "channelName": "DirectLineSpeechChannel", + "properties": { + "cognitiveServiceRegion": "XcognitiveServiceRegionX", + "isEnabled": true + } + } + } + }, + "201": { + "body": { + "location": "global", + "properties": { + "channelName": "DirectLineSpeechChannel", + "properties": { + "cognitiveServiceRegion": "XcognitiveServiceRegionX", + "isEnabled": true + } + } + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/PutLineChannel.json b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/PutLineChannel.json new file mode 100644 index 000000000000..33ba5d33aabd --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/PutLineChannel.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "api-version": "2021-03-01", + "resourceName": "samplebotname", + "channelName": "LineChannel", + "parameters": { + "location": "global", + "properties": { + "channelName": "LineChannel", + "properties": { + "lineRegistrations": [ + { + "channelSecret": "channelSecret", + "channelAccessToken": "channelAccessToken" + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "location": "global", + "properties": { + "channelName": "LineChannel", + "properties": { + "lineRegistrations": [ + { + "generatedId": "id", + "channelSecret": null, + "channelAccessToken": null + } + ], + "callbackUrl": "http://callbackUrl", + "isValidated": true + } + } + } + }, + "201": { + "body": { + "location": "global", + "properties": { + "channelName": "LineChannel", + "properties": { + "lineRegistrations": [ + { + "generatedId": "id", + "channelSecret": null, + "channelAccessToken": null + } + ], + "callbackUrl": "http://callbackUrl", + "isValidated": true + } + } + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/UpdateAlexaChannel.json b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/UpdateAlexaChannel.json new file mode 100644 index 000000000000..86267a4b33ad --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/UpdateAlexaChannel.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "api-version": "2021-03-01", + "resourceName": "samplebotname", + "channelName": "AlexaChannel", + "parameters": { + "location": "global", + "properties": { + "channelName": "AlexaChannel", + "properties": { + "alexaSkillId": "XAlexaSkillIdX", + "isEnabled": true + } + } + } + }, + "responses": { + "200": { + "body": { + "location": "global", + "properties": { + "channelName": "AlexaChannel", + "properties": { + "alexaSkillId": "XAlexaSkillIdX", + "urlFragment": "XUrlFragmentX", + "serviceEndpointUri": "https://domain/XUrlFragmentX/botId", + "isEnabled": true + } + } + } + }, + "201": { + "body": { + "location": "global", + "properties": { + "channelName": "AlexaChannel", + "properties": { + "alexaSkillId": "XAlexaSkillIdX", + "urlFragment": "XUrlFragmentX", + "serviceEndpointUri": "https://domain/XUrlFragmentX/botId", + "isEnabled": true + } + } + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/UpdateBot.json b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/UpdateBot.json new file mode 100644 index 000000000000..3997a188df7b --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/UpdateBot.json @@ -0,0 +1,119 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "api-version": "2021-03-01", + "resourceName": "samplebotname", + "parameters": { + "location": "West US", + "sku": { + "name": "S1" + }, + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "etag": "etag1", + "kind": "sdk", + "properties": { + "description": "The description of the bot", + "developerAppInsightKey": "appinsightskey", + "developerAppInsightsApiKey": "appinsightsapikey", + "developerAppInsightsApplicationId": "appinsightsappid", + "displayName": "The Name of the bot", + "endpoint": "http://mybot.coffee", + "iconUrl": "http://myicon", + "luisAppIds": [ + "luisappid1", + "luisappid2" + ], + "luisKey": "luiskey", + "msaAppId": "msaappid", + "isCmekEnabled": true, + "cmekKeyVaultUrl": "https://myCmekKey", + "isIsolated": false, + "schemaTransformationVersion": "1.0" + } + } + }, + "responses": { + "200": { + "body": { + "location": "West US", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "etag": "etag1", + "name": "samplebotname", + "type": "Microsoft.BotService/botServices", + "id": "/subscriptions/subscription-id/resourceGroups/OneResourceGroupName/providers/Microsoft.BotService/botServices/samplebotname", + "kind": "sdk", + "properties": { + "description": "The description of the bot", + "developerAppInsightKey": "appinsightskey", + "developerAppInsightsApplicationId": "appinsightsappid", + "displayName": "The Name of the bot", + "endpoint": "http://mybot.coffee", + "endpointVersion": "version", + "iconUrl": "http://myicon", + "luisAppIds": [ + "luisappid1", + "luisappid2" + ], + "msaAppId": "msaappid", + "configuredChannels": [ + "facebook", + "groupme" + ], + "enabledChannels": [ + "facebook" + ], + "isCmekEnabled": true, + "cmekKeyVaultUrl": "https://myCmekKey", + "isIsolated": false, + "schemaTransformationVersion": "1.0" + } + } + }, + "201": { + "body": { + "location": "West US", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "name": "samplebotname", + "type": "Microsoft.BotService/botServices", + "id": "/subscriptions/subscription-id/resourceGroups/OneResourceGroupName/providers/Microsoft.BotService/botServices/samplebotname", + "kind": "sdk", + "etag": "etag1", + "properties": { + "description": "The description of the bot", + "developerAppInsightKey": "appinsightskey", + "developerAppInsightsApplicationId": "appinsightsappid", + "displayName": "The Name of the bot", + "endpoint": "http://mybot.coffee", + "endpointVersion": "version", + "iconUrl": "http://myicon", + "luisAppIds": [ + "luisappid1", + "luisappid2" + ], + "msaAppId": "msaappid", + "configuredChannels": [ + "facebook", + "groupme" + ], + "enabledChannels": [ + "facebook" + ], + "isCmekEnabled": true, + "cmekKeyVaultUrl": "https://myCmekKey", + "isIsolated": false, + "schemaTransformationVersion": "1.0" + } + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/UpdateChannel.json b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/UpdateChannel.json new file mode 100644 index 000000000000..0db6722e455b --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/UpdateChannel.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "api-version": "2021-03-01", + "resourceName": "samplebotname", + "channelName": "EmailChannel", + "parameters": { + "location": "global", + "properties": { + "channelName": "EmailChannel", + "properties": { + "emailAddress": "a@b.com", + "password": "pwd", + "isEnabled": true + } + } + } + }, + "responses": { + "200": { + "body": { + "location": "global", + "properties": { + "channelName": "EmailChannel", + "properties": { + "emailAddress": "a@b.com", + "password": "pwd", + "isEnabled": true + } + } + } + }, + "201": { + "body": { + "location": "global", + "properties": { + "channelName": "EmailChannel", + "properties": { + "emailAddress": "a@b.com", + "password": "pwd", + "isEnabled": true + } + } + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/UpdateConnection.json b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/UpdateConnection.json new file mode 100644 index 000000000000..0120d612c32b --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/UpdateConnection.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "api-version": "2021-03-01", + "resourceName": "samplebotname", + "connectionName": "sampleConnection", + "parameters": { + "location": "global", + "etag": "etag1", + "properties": { + "clientId": "sampleclientid", + "clientSecret": "samplesecret", + "scopes": "samplescope", + "serviceProviderId": "serviceproviderid", + "serviceProviderDisplayName": "serviceProviderDisplayName", + "parameters": [ + { + "key": "key1", + "value": "value1" + }, + { + "key": "key2", + "value": "value2" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "location": "global", + "id": "/subscriptions/subscription-id/resourceGroups/OneResourceGroupName/providers/Microsoft.BotService/botServices/samplebotname/connections/sampleConnection", + "name": "sampleConnection", + "properties": { + "clientId": "sampleclientid", + "clientSecret": null, + "scopes": "samplescope", + "serviceProviderId": "serviceproviderid", + "serviceProviderDisplayName": "serviceProviderDisplayName", + "parameters": [ + { + "key": "key1", + "value": "value1" + }, + { + "key": "key2", + "value": "value2" + } + ] + } + } + }, + "201": { + "body": { + "location": "global", + "etag": "etag1", + "id": "/subscriptions/subscription-id/resourceGroups/OneResourceGroupName/providers/Microsoft.BotService/botServices/samplebotname/connections/sampleConnection", + "name": "sampleConnection", + "properties": { + "clientId": "sampleclientid", + "clientSecret": null, + "scopes": "samplescope", + "serviceProviderId": "serviceproviderid", + "serviceProviderDisplayName": "serviceProviderDisplayName", + "parameters": [ + { + "key": "key1", + "value": "value1" + }, + { + "key": "key2", + "value": "value2" + } + ] + } + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/UpdateDirectLineSpeechChannel.json b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/UpdateDirectLineSpeechChannel.json new file mode 100644 index 000000000000..0411ec285694 --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/UpdateDirectLineSpeechChannel.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "api-version": "2021-03-01", + "resourceName": "samplebotname", + "channelName": "DirectLineSpeechChannel", + "parameters": { + "location": "global", + "properties": { + "channelName": "DirectLineSpeechChannel", + "properties": { + "cognitiveServiceRegion": "XcognitiveServiceRegionX", + "cognitiveServiceSubscriptionKey": "XcognitiveServiceSubscriptionKeyX", + "isEnabled": true + } + } + } + }, + "responses": { + "200": { + "body": { + "location": "global", + "properties": { + "channelName": "DirectLineSpeechChannel", + "properties": { + "cognitiveServiceRegion": "XcognitiveServiceRegionX", + "isEnabled": true + } + } + } + }, + "201": { + "body": { + "location": "global", + "properties": { + "channelName": "DirectLineSpeechChannel", + "properties": { + "cognitiveServiceRegion": "XcognitiveServiceRegionX", + "isEnabled": true + } + } + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/UpdateLineChannel.json b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/UpdateLineChannel.json new file mode 100644 index 000000000000..33ba5d33aabd --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/UpdateLineChannel.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "api-version": "2021-03-01", + "resourceName": "samplebotname", + "channelName": "LineChannel", + "parameters": { + "location": "global", + "properties": { + "channelName": "LineChannel", + "properties": { + "lineRegistrations": [ + { + "channelSecret": "channelSecret", + "channelAccessToken": "channelAccessToken" + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "location": "global", + "properties": { + "channelName": "LineChannel", + "properties": { + "lineRegistrations": [ + { + "generatedId": "id", + "channelSecret": null, + "channelAccessToken": null + } + ], + "callbackUrl": "http://callbackUrl", + "isValidated": true + } + } + } + }, + "201": { + "body": { + "location": "global", + "properties": { + "channelName": "LineChannel", + "properties": { + "lineRegistrations": [ + { + "generatedId": "id", + "channelSecret": null, + "channelAccessToken": null + } + ], + "callbackUrl": "http://callbackUrl", + "isValidated": true + } + } + } + } + } +} diff --git a/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/WebChatRegenerateKeys.json b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/WebChatRegenerateKeys.json new file mode 100644 index 000000000000..025386ece0ff --- /dev/null +++ b/specification/botservice/resource-manager/Microsoft.BotService/stable/2021-03-01/examples/WebChatRegenerateKeys.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "subscription-id", + "resourceGroupName": "OneResourceGroupName", + "api-version": "2021-03-01", + "resourceName": "samplebotname", + "channelName": "WebChatChannel", + "parameters": { + "siteName": "testSiteName", + "key": "key1" + } + }, + "responses": { + "200": { + "body": { + "location": "global", + "properties": { + "channelName": "WebChatChannel", + "properties": { + "sites": [ + { + "siteId": "abcd", + "siteName": "Default Site", + "key": "key1", + "key2": "key2", + "isEnabled": true, + "enablePreview": true + } + ] + } + } + } + } + } +} diff --git a/specification/botservice/resource-manager/readme.azureresourceschema.md b/specification/botservice/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 3e03a113a69a..000000000000 --- a/specification/botservice/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,48 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-botservice-2020-06-02 - - tag: schema-botservice-2018-07-12 - - tag: schema-botservice-2017-12-01 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-botservice-2020-06-02 and azureresourceschema - -``` yaml $(tag) == 'schema-botservice-2020-06-02' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.BotService/stable/2020-06-02/botservice.json - -``` - -### Tag: schema-botservice-2018-07-12 and azureresourceschema - -``` yaml $(tag) == 'schema-botservice-2018-07-12' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.BotService/preview/2018-07-12/botservice.json - -``` - -### Tag: schema-botservice-2017-12-01 and azureresourceschema - -``` yaml $(tag) == 'schema-botservice-2017-12-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.BotService/preview/2017-12-01/botservice.json - -``` diff --git a/specification/botservice/resource-manager/readme.go.md b/specification/botservice/resource-manager/readme.go.md index cba88fc90ffa..97433ce5c511 100644 --- a/specification/botservice/resource-manager/readme.go.md +++ b/specification/botservice/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: botservice clear-output-folder: true ``` @@ -13,10 +13,20 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-2021-03-01 - tag: package-2017-12-01 - tag: package-2018-07-12 ``` +### Tag: package-2021-03-01 and go + +These settings apply only when `--tag=package-2021-03-01 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2021-03-01' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2021-03-01/$(namespace) +``` + ### Tag: package-2018-07-12 and go These settings apply only when `--tag=package-2018-07-12 --go` is specified on the command line. diff --git a/specification/botservice/resource-manager/readme.java.md b/specification/botservice/resource-manager/readme.java.md index 1b10ea0e95d7..b247b8f57638 100644 --- a/specification/botservice/resource-manager/readme.java.md +++ b/specification/botservice/resource-manager/readme.java.md @@ -10,6 +10,8 @@ namespace: com.microsoft.azure.management.botservice license-header: MICROSOFT_MIT_NO_CODEGEN payload-flattening-threshold: 1 output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-botservice + +service-name: BotService ``` ### Java multi-api diff --git a/specification/botservice/resource-manager/readme.md b/specification/botservice/resource-manager/readme.md index 6e1824037d67..fb9d9999abb2 100644 --- a/specification/botservice/resource-manager/readme.md +++ b/specification/botservice/resource-manager/readme.md @@ -26,15 +26,52 @@ These are the global settings for the BotService API. ``` yaml openapi-type: arm -tag: package-2020-06-02 +tag: package-preview-2021-05 ``` +### Tag: package-preview-2021-05 + +These settings apply only when `--tag=package-preview-2021-05` is specified on the command line. + +```yaml $(tag) == 'package-preview-2021-05' +input-file: + - Microsoft.BotService/preview/2021-05-01-preview/botservice.json +directive: + - suppress: R4009 + from: botservice.json + reason: We don not yet support systemdata + - suppress: R3016 + from: botservice.json + reason: app settings keys are case sensitive + - suppress: R3018 + from: botservice.json + reason: app settings for ValidateAuthority needs to be boolean +``` +### Tag: package-2021-03-01 + +These settings apply only when `--tag=package-2021-03-01` is specified on the command line. + +``` yaml $(tag) == 'package-2021-03-01' +input-file: +- Microsoft.BotService/stable/2021-03-01/botservice.json +directive: + - suppress: R4009 + from: botservice.json + reason: We don not yet support systemdata + - suppress: R3016 + from: botservice.json + reason: app settings keys are case sensitive + - suppress: R3018 + from: botservice.json + reason: app settings for ValidateAuthority needs to be boolean +``` + ### Tag: package-2020-06-02 These settings apply only when `--tag=package-2020-06-02` is specified on the command line. -```yaml $(tag) == 'package-2020-06-02' +``` yaml $(tag) == 'package-2020-06-02' input-file: - Microsoft.BotService/stable/2020-06-02/botservice.json directive: @@ -43,7 +80,6 @@ directive: reason: We do not yet support systemdata. ``` - ### Tag: package-2018-07-12 These settings apply only when `--tag=package-2018-07-12` is specified on the command line. @@ -101,16 +137,15 @@ This is not used by Autorest itself. swagger-to-sdk: - repo: azure-sdk-for-net - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-go - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js botservice/resource-manager - repo: azure-sdk-for-js ``` - ## Suppression -``` + +``` directive: - suppress: SECRET_PROPERTY from: botservice.json @@ -118,7 +153,6 @@ directive: reason: We do need to return verifyToken in FacebookChannelProperties. ``` - ## C# These settings apply only when `--csharp` is specified on the command line. @@ -143,9 +177,4 @@ See configuration in [readme.java.md](./readme.java.md) ## Python -See readme.python.md file. - -## AzureResourceSchema - -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) - +See configuration in [readme.python.md](./readme.python.md) diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-04-15/cdn.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-04-15/cdn.json index 72bfef245f21..6dff0ae76a06 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-04-15/cdn.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-04-15/cdn.json @@ -1642,7 +1642,8 @@ "$ref": "#/definitions/ErrorResponse" } } - } + }, + "x-ms-long-running-operation": true } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}/customDomains/{customDomainName}/enableCustomHttps": { @@ -1717,7 +1718,8 @@ "$ref": "#/definitions/ErrorResponse" } } - } + }, + "x-ms-long-running-operation": true } }, "/providers/Microsoft.Cdn/checkNameAvailability": { diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/cdn.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/cdn.json index 85e58bdd2080..768647aaadab 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/cdn.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/cdn.json @@ -1642,7 +1642,8 @@ "$ref": "#/definitions/ErrorResponse" } } - } + }, + "x-ms-long-running-operation": true } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}/customDomains/{customDomainName}/enableCustomHttps": { @@ -1717,7 +1718,8 @@ "$ref": "#/definitions/ErrorResponse" } } - } + }, + "x-ms-long-running-operation": true } }, "/providers/Microsoft.Cdn/checkNameAvailability": { diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-12-31/cdn.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-12-31/cdn.json index 985cc15ee100..7ea810593f26 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-12-31/cdn.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-12-31/cdn.json @@ -2110,7 +2110,8 @@ "$ref": "#/definitions/ErrorResponse" } } - } + }, + "x-ms-long-running-operation": true } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}/customDomains/{customDomainName}/enableCustomHttps": { @@ -2185,7 +2186,8 @@ "$ref": "#/definitions/ErrorResponse" } } - } + }, + "x-ms-long-running-operation": true } }, "/providers/Microsoft.Cdn/checkNameAvailability": { diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/cdn.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/cdn.json index 5b5bb55288fa..8c80108d158f 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/cdn.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/cdn.json @@ -2110,7 +2110,8 @@ "$ref": "#/definitions/ErrorResponse" } } - } + }, + "x-ms-long-running-operation": true } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}/customDomains/{customDomainName}/enableCustomHttps": { @@ -2185,7 +2186,8 @@ "$ref": "#/definitions/ErrorResponse" } } - } + }, + "x-ms-long-running-operation": true } }, "/providers/Microsoft.Cdn/checkNameAvailability": { diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/cdn.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/cdn.json index 24ba251127d2..51fa15d2fd67 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/cdn.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/cdn.json @@ -2110,7 +2110,8 @@ "$ref": "#/definitions/ErrorResponse" } } - } + }, + "x-ms-long-running-operation": true } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}/customDomains/{customDomainName}/enableCustomHttps": { @@ -2185,7 +2186,8 @@ "$ref": "#/definitions/ErrorResponse" } } - } + }, + "x-ms-long-running-operation": true } }, "/providers/Microsoft.Cdn/checkNameAvailability": { diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-09-01/cdn.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-09-01/cdn.json index 6b5dd994036b..0cc2ca2e464f 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-09-01/cdn.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-09-01/cdn.json @@ -2110,7 +2110,8 @@ "$ref": "#/definitions/ErrorResponse" } } - } + }, + "x-ms-long-running-operation": true } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}/customDomains/{customDomainName}/enableCustomHttps": { @@ -2185,7 +2186,8 @@ "$ref": "#/definitions/ErrorResponse" } } - } + }, + "x-ms-long-running-operation": true } }, "/providers/Microsoft.Cdn/checkNameAvailability": { diff --git a/specification/cdn/resource-manager/readme.azureresourceschema.md b/specification/cdn/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index b3be70364058..000000000000 --- a/specification/cdn/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,149 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-cdn-2020-09-01 - - tag: schema-cdn-2020-04-15 - - tag: schema-cdn-2019-12-31 - - tag: schema-cdn-2019-06-15-preview - - tag: schema-cdn-2019-06-15 - - tag: schema-cdn-2019-04-15 - - tag: schema-cdn-2017-10-12 - - tag: schema-cdn-2017-04-02 - - tag: schema-cdn-2016-10-02 - - tag: schema-cdn-2016-04-02 - - tag: schema-cdn-2015-06-01 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-cdn-2020-09-01 and azureresourceschema - -``` yaml $(tag) == 'schema-cdn-2020-09-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Cdn/stable/2020-09-01/cdn.json - - Microsoft.Cdn/stable/2020-09-01/afdx.json - - Microsoft.Cdn/stable/2020-09-01/cdnwebapplicationfirewall.json - -``` - -### Tag: schema-cdn-2020-04-15 and azureresourceschema - -``` yaml $(tag) == 'schema-cdn-2020-04-15' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Cdn/stable/2020-04-15/cdn.json - - Microsoft.Cdn/stable/2020-04-15/cdnwebapplicationfirewall.json - -``` - -### Tag: schema-cdn-2019-12-31 and azureresourceschema - -``` yaml $(tag) == 'schema-cdn-2019-12-31' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Cdn/stable/2019-12-31/cdn.json - -``` - -### Tag: schema-cdn-2019-06-15-preview and azureresourceschema - -``` yaml $(tag) == 'schema-cdn-2019-06-15-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Cdn/preview/2019-06-15-preview/cdn.json - - Microsoft.Cdn/preview/2019-06-15-preview/cdnwebapplicationfirewall.json - -``` - -### Tag: schema-cdn-2019-06-15 and azureresourceschema - -``` yaml $(tag) == 'schema-cdn-2019-06-15' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Cdn/stable/2019-06-15/cdn.json - - Microsoft.Cdn/stable/2019-06-15/cdnwebapplicationfirewall.json - -``` - -### Tag: schema-cdn-2019-04-15 and azureresourceschema - -``` yaml $(tag) == 'schema-cdn-2019-04-15' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Cdn/stable/2019-04-15/cdn.json - -``` - -### Tag: schema-cdn-2017-10-12 and azureresourceschema - -``` yaml $(tag) == 'schema-cdn-2017-10-12' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Cdn/stable/2017-10-12/cdn.json - -``` - -### Tag: schema-cdn-2017-04-02 and azureresourceschema - -``` yaml $(tag) == 'schema-cdn-2017-04-02' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Cdn/stable/2017-04-02/cdn.json - -``` - -### Tag: schema-cdn-2016-10-02 and azureresourceschema - -``` yaml $(tag) == 'schema-cdn-2016-10-02' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Cdn/stable/2016-10-02/cdn.json - -``` - -### Tag: schema-cdn-2016-04-02 and azureresourceschema - -``` yaml $(tag) == 'schema-cdn-2016-04-02' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Cdn/stable/2016-04-02/cdn.json - -``` - -### Tag: schema-cdn-2015-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-cdn-2015-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Cdn/stable/2015-06-01/cdn.json - -``` diff --git a/specification/cdn/resource-manager/readme.go.md b/specification/cdn/resource-manager/readme.go.md index 741124a99d6d..0e83e97655b2 100644 --- a/specification/cdn/resource-manager/readme.go.md +++ b/specification/cdn/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: cdn clear-output-folder: true ``` diff --git a/specification/cdn/resource-manager/readme.md b/specification/cdn/resource-manager/readme.md index 3ddcacbcf73e..1a97777e438b 100644 --- a/specification/cdn/resource-manager/readme.md +++ b/specification/cdn/resource-manager/readme.md @@ -152,7 +152,7 @@ This is not used by Autorest itself. ``` yaml $(swagger-to-sdk) swagger-to-sdk: - - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-java - repo: azure-sdk-for-go - repo: azure-sdk-for-net @@ -160,8 +160,6 @@ swagger-to-sdk: - repo: azure-sdk-for-node - repo: azure-sdk-for-ruby - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js cdn/resource-manager ``` @@ -189,7 +187,5 @@ See configuration in [readme.node.md](./readme.node.md) See configuration in [readme.ruby.md](./readme.ruby.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/cdn/resource-manager/readme.python.md b/specification/cdn/resource-manager/readme.python.md index a92bd7c26941..1c9f4aca69ef 100644 --- a/specification/cdn/resource-manager/readme.python.md +++ b/specification/cdn/resource-manager/readme.python.md @@ -4,24 +4,30 @@ These settings apply only when `--python` is specified on the command line. Please also specify `--python-sdks-folder=`. Use `--python-mode=update` if you already have a setup.py and just want to update the code itself. -``` yaml $(python) +``` yaml $(python) && $(track2) 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 +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +namespace: azure.mgmt.cdn +package-name: azure-mgmt-cdn +package-version: 2.0.0 +clear-output-folder: true +modelerfour: + lenient-model-deduplication: true +directive: + - from: swagger-document + where: $.definitions.DeliveryRuleAction.properties.name + transform: > + $['x-ms-enum'] = { + "name": "DeliveryRuleActionEnum", + "modelAsString": true + }; ``` -``` yaml $(python) && $(python-mode) == 'update' -python: - no-namespace-folders: true - output-folder: $(python-sdks-folder)/cdn/azure-mgmt-cdn/azure/mgmt/cdn +``` yaml $(python) && $(python-mode) == 'update' && $(track2) +no-namespace-folders: true +output-folder: $(python-sdks-folder)/cdn/azure-mgmt-cdn/azure/mgmt/cdn ``` -``` yaml $(python) && $(python-mode) == 'create' -python: - basic-setup-py: true - output-folder: $(python-sdks-folder)/cdn/azure-mgmt-cdn +``` yaml $(python) && $(python-mode) == 'create' && $(track2) +basic-setup-py: true +output-folder: $(python-sdks-folder)/cdn/azure-mgmt-cdn ``` diff --git a/specification/changeanalysis/resource-manager/readme.azureresourceschema.md b/specification/changeanalysis/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 1ff06754928a..000000000000 --- a/specification/changeanalysis/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,24 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-changeanalysis-2020-04-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-changeanalysis-2020-04-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-changeanalysis-2020-04-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ChangeAnalysis/preview/2020-04-01-preview/changeanalysis.json - -``` diff --git a/specification/changeanalysis/resource-manager/readme.go.md b/specification/changeanalysis/resource-manager/readme.go.md index 5af9d67116a1..7fbc3751498c 100644 --- a/specification/changeanalysis/resource-manager/readme.go.md +++ b/specification/changeanalysis/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ```yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: changeanalysis clear-output-folder: true ``` @@ -13,9 +13,20 @@ go: ```yaml $(go) && $(multiapi) batch: + - tag: package-2021-04-01 - tag: package-2020-04-01-preview ``` + +### Tag: package-2021-04-01 and go + +These settings apply only when `--tag=package-2021-04-01 --go` is specified on the command line. +Please also specify `--go-sdks-folder=`. + +```yaml $(tag) == 'package-2021-04-01' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2021-04-01/$(namespace) +``` + ### Tag: package-2020-04-01-preview and go These settings apply only when `--tag=package-2020-04-01-preview --go` is specified on the command line. diff --git a/specification/changeanalysis/resource-manager/readme.md b/specification/changeanalysis/resource-manager/readme.md index 6ffc3f742781..82e40f5667c7 100644 --- a/specification/changeanalysis/resource-manager/readme.md +++ b/specification/changeanalysis/resource-manager/readme.md @@ -58,7 +58,7 @@ This is not used by Autorest itself. ``` yaml $(swagger-to-sdk) swagger-to-sdk: - - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-java - repo: azure-sdk-for-go - repo: azure-sdk-for-js @@ -66,8 +66,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_changeanalysis'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js changeanalysis/resource-manager ``` ## Go @@ -125,7 +123,5 @@ directive: } ``` -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/changeanalysis/resource-manager/readme.python.md b/specification/changeanalysis/resource-manager/readme.python.md index 5bfa3618bd78..7fc459b3f738 100644 --- a/specification/changeanalysis/resource-manager/readme.python.md +++ b/specification/changeanalysis/resource-manager/readme.python.md @@ -3,19 +3,21 @@ These settings apply only when `--python` is specified on the command line. Please also specify `--python-sdks-folder=`. -```yaml $(python) -python: - azure-arm: true - license-header: MICROSOFT_MIT_NO_VERSION - payload-flattening-threshold: 2 - namespace: Microsoft.ChangeAnalysis - package-name: changeanalysis - package-version: 2020-04-01-preview - clear-output-folder: true +```yaml $(python) && $(track2) +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +namespace: Microsoft.ChangeAnalysis +package-name: azure-mgmt-changeanalysis +package-version: 1.0.0b1 +clear-output-folder: true ``` -```yaml $(python) -python: - no-namespace-folders: true - output-folder: $(python-sdks-folder)/azure-mgmt/changeanalysis +```yaml $(python-mode) == 'update' && $(track2) +no-namespace-folders: true +output-folder: $(python-sdks-folder)/changeanalysis/azure-mgmt-changeanalysis/azure/mgmt/changeanalysis +``` + +```yaml $(python-mode) == 'create' && $(track2) +basic-setup-py: true +output-folder: $(python-sdks-folder)/changeanalysis/azure-mgmt-changeanalysis ``` diff --git a/specification/changeanalysis/resource-manager/readme.typescript.md b/specification/changeanalysis/resource-manager/readme.typescript.md index 63e73c265818..297e1ddf6cfc 100644 --- a/specification/changeanalysis/resource-manager/readme.typescript.md +++ b/specification/changeanalysis/resource-manager/readme.typescript.md @@ -6,8 +6,8 @@ Please also specify `--typescript-sdks-folder=`. - -### Tag: schema-portal-2018-10-01 and azureresourceschema - -``` yaml $(tag) == 'schema-portal-2018-10-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Portal/stable/2018-10-01/CloudShell.json - -``` diff --git a/specification/cloudshell/resource-manager/readme.md b/specification/cloudshell/resource-manager/readme.md index d1f360640baa..cf3888a1d0c7 100644 --- a/specification/cloudshell/resource-manager/readme.md +++ b/specification/cloudshell/resource-manager/readme.md @@ -57,8 +57,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_cloudshell'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js cloudshell/resource-manager ``` ## Go @@ -149,7 +147,5 @@ csharp: namespace: Microsoft.CloudShell output-folder: $(csharp-sdks-folder)/CloudShell/management/Microsoft.CloudShell/GeneratedProtocol ``` -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/cognitiveservices/data-plane/AnomalyDetector/preview/v1.1-preview/AnomalyDetector.json b/specification/cognitiveservices/data-plane/AnomalyDetector/preview/v1.1-preview/AnomalyDetector.json new file mode 100644 index 000000000000..a0305e1b1dd0 --- /dev/null +++ b/specification/cognitiveservices/data-plane/AnomalyDetector/preview/v1.1-preview/AnomalyDetector.json @@ -0,0 +1,504 @@ +{ + "swagger": "2.0", + "info": { + "version": "1.1-preview", + "title": "Anomaly Detector Client", + "description": "The Anomaly Detector API detects anomalies automatically in time series data. It supports two kinds of mode, one is for stateless using, another is for stateful using. In stateless mode, there are three functionalities. Entire Detect is for detecting the whole series with model trained by the time series, Last Detect is detecting last point with model trained by points before. ChangePoint Detect is for detecting trend changes in time series. In stateful mode, user can store time series, the stored time series will be used for detection anomalies. Under this mode, user can still use the above three functionalities by only giving a time range without preparing time series in client side. Besides the above three functionalities, stateful model also provide group based detection and labeling service. By leveraging labeling service user can provide labels for each detection result, these labels will be used for retuning or regenerating detection models. Inconsistency detection is a kind of group based detection, this detection will find inconsistency ones in a set of time series. By using anomaly detector service, business customers can discover incidents and establish a logic flow for root cause analysis." + }, + "securityDefinitions": { + "apiKeyHeader": { + "type": "apiKey", + "name": "Ocp-Apim-Subscription-Key", + "in": "header" + } + }, + "security": [ + { + "apiKeyHeader": [] + } + ], + "x-ms-parameterized-host": { + "hostTemplate": "{Endpoint}/anomalydetector/v1.1-preview", + "useSchemePrefix": false, + "parameters": [ + { + "$ref": "#/parameters/Endpoint" + } + ] + }, + "paths": { + "/timeseries/entire/detect": { + "post": { + "summary": "Detect anomalies for the entire series in batch.", + "description": "This operation generates a model with an entire series, each point is detected with the same model. With this method, points before and after a certain point are used to determine whether it is an anomaly. The entire detection can give user an overall status of the time series.", + "operationId": "DetectEntireSeries", + "parameters": [ + { + "name": "body", + "in": "body", + "description": "Time series points and period if needed. Advanced model parameters can also be set in the request.", + "required": true, + "schema": { + "$ref": "#/definitions/DetectRequest" + } + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "Successful operation.", + "schema": { + "$ref": "#/definitions/EntireDetectResponse" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/AnomalyDetectorError" + } + } + }, + "x-ms-examples": { + "Find anomalies for the entire series in batch example": { + "$ref": "./examples/EntireDetect.json" + } + } + } + }, + "/timeseries/last/detect": { + "post": { + "summary": "Detect anomaly status of the latest point in time series.", + "description": "This operation generates a model using points before the latest one. With this method, only historical points are used to determine whether the target point is an anomaly. The latest point detecting operation matches the scenario of real-time monitoring of business metrics.", + "operationId": "DetectLastPoint", + "parameters": [ + { + "name": "body", + "in": "body", + "description": "Time series points and period if needed. Advanced model parameters can also be set in the request.", + "required": true, + "schema": { + "$ref": "#/definitions/DetectRequest" + } + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "Successful operation.", + "schema": { + "$ref": "#/definitions/LastDetectResponse" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/AnomalyDetectorError" + } + } + }, + "x-ms-examples": { + "Detect anomaly status of the latest point in time series example": { + "$ref": "./examples/LastDetect.json" + } + } + } + }, + "/timeseries/changepoint/detect": { + "post": { + "summary": "Detect change point for the entire series", + "description": "Evaluate change point score of every series point", + "operationId": "DetectChangePoint", + "parameters": [ + { + "name": "body", + "in": "body", + "description": "Time series points and granularity is needed. Advanced model parameters can also be set in the request if needed.", + "required": true, + "schema": { + "$ref": "#/definitions/ChangePointDetectRequest" + } + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "Successful operation.", + "schema": { + "$ref": "#/definitions/ChangePointDetectResponse" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/AnomalyDetectorError" + } + } + }, + "x-ms-examples": { + "Detect change point example": { + "$ref": "./examples/ChangePointDetect.json" + } + } + } + } + }, + "definitions": { + "AnomalyDetectorError": { + "type": "object", + "description": "Error information returned by the API.", + "properties": { + "code": { + "description": "The error code.", + "enum": [ + "InvalidCustomInterval", + "BadArgument", + "InvalidGranularity", + "InvalidPeriod", + "InvalidModelArgument", + "InvalidSeries", + "InvalidJsonFormat", + "RequiredGranularity", + "RequiredSeries" + ], + "x-ms-enum": { + "name": "AnomalyDetectorErrorCodes", + "modelAsString": true + } + }, + "message": { + "description": "A message explaining the error reported by the service.", + "type": "string" + } + } + }, + "TimeGranularity": { + "type": "string", + "description": "Optional argument, can be one of yearly, monthly, weekly, daily, hourly, minutely, secondly, microsecond or none. If granularity is not present, it will be none by default. If granularity is none, the timestamp property in time series point can be absent.", + "x-nullable": false, + "x-ms-enum": { + "name": "TimeGranularity", + "modelAsString": false, + "values": [ + { + "value": "yearly" + }, + { + "value": "monthly" + }, + { + "value": "weekly" + }, + { + "value": "daily" + }, + { + "value": "hourly" + }, + { + "name": "perMinute", + "value": "minutely" + }, + { + "name": "perSecond", + "value": "secondly" + }, + { + "value": "microsecond" + }, + { + "value": "none" + } + ] + }, + "enum": [ + "yearly", + "monthly", + "weekly", + "daily", + "hourly", + "minutely", + "secondly", + "microsecond", + "none" + ] + }, + "CustomInterval": { + "type": "integer", + "format": "int32", + "x-nullable": false, + "description": "Custom Interval is used to set non-standard time interval, for example, if the series is 5 minutes, request can be set as {\"granularity\":\"minutely\", \"customInterval\":5}." + }, + "DetectRequest": { + "type": "object", + "required": [ + "series" + ], + "properties": { + "series": { + "type": "array", + "description": "Time series data points. Points should be sorted by timestamp in ascending order to match the anomaly detection result. If the data is not sorted correctly or there is duplicated timestamp, the API will not work. In such case, an error message will be returned.", + "items": { + "$ref": "#/definitions/TimeSeriesPoint" + } + }, + "granularity": { + "$ref": "#/definitions/TimeGranularity" + }, + "customInterval": { + "description": "Custom Interval is used to set non-standard time interval, for example, if the series is 5 minutes, request can be set as {\"granularity\":\"minutely\", \"customInterval\":5}.", + "$ref": "#/definitions/CustomInterval" + }, + "period": { + "type": "integer", + "format": "int32", + "description": "Optional argument, periodic value of a time series. If the value is null or does not present, the API will determine the period automatically." + }, + "maxAnomalyRatio": { + "type": "number", + "format": "float", + "description": "Optional argument, advanced model parameter, max anomaly ratio in a time series." + }, + "sensitivity": { + "type": "integer", + "format": "int32", + "description": "Optional argument, advanced model parameter, between 0-99, the lower the value is, the larger the margin value will be which means less anomalies will be accepted." + } + } + }, + "TimeSeriesPoint": { + "type": "object", + "required": [ + "value" + ], + "properties": { + "timestamp": { + "type": "string", + "format": "date-time", + "description": "Optional argument, timestamp of a data point (ISO8601 format)." + }, + "value": { + "type": "number", + "format": "float", + "description": "The measurement of that point, should be float." + } + } + }, + "EntireDetectResponse": { + "type": "object", + "required": [ + "expectedValues", + "isAnomaly", + "isNegativeAnomaly", + "isPositiveAnomaly", + "lowerMargins", + "period", + "upperMargins" + ], + "properties": { + "period": { + "type": "integer", + "format": "int32", + "description": "Frequency extracted from the series, zero means no recurrent pattern has been found." + }, + "expectedValues": { + "type": "array", + "description": "ExpectedValues contain expected value for each input point. The index of the array is consistent with the input series.", + "items": { + "type": "number", + "format": "float", + "x-nullable": false + } + }, + "upperMargins": { + "type": "array", + "description": "UpperMargins contain upper margin of each input point. UpperMargin is used to calculate upperBoundary, which equals to expectedValue + (100 - marginScale)*upperMargin. Anomalies in response can be filtered by upperBoundary and lowerBoundary. By adjusting marginScale value, less significant anomalies can be filtered in client side. The index of the array is consistent with the input series.", + "items": { + "type": "number", + "format": "float", + "x-nullable": false + } + }, + "lowerMargins": { + "type": "array", + "description": "LowerMargins contain lower margin of each input point. LowerMargin is used to calculate lowerBoundary, which equals to expectedValue - (100 - marginScale)*lowerMargin. Points between the boundary can be marked as normal ones in client side. The index of the array is consistent with the input series.", + "items": { + "type": "number", + "format": "float", + "x-nullable": false + } + }, + "isAnomaly": { + "type": "array", + "description": "IsAnomaly contains anomaly properties for each input point. True means an anomaly either negative or positive has been detected. The index of the array is consistent with the input series.", + "items": { + "type": "boolean", + "x-nullable": false + } + }, + "isNegativeAnomaly": { + "type": "array", + "description": "IsNegativeAnomaly contains anomaly status in negative direction for each input point. True means a negative anomaly has been detected. A negative anomaly means the point is detected as an anomaly and its real value is smaller than the expected one. The index of the array is consistent with the input series.", + "items": { + "type": "boolean", + "x-nullable": false + } + }, + "isPositiveAnomaly": { + "type": "array", + "description": "IsPositiveAnomaly contain anomaly status in positive direction for each input point. True means a positive anomaly has been detected. A positive anomaly means the point is detected as an anomaly and its real value is larger than the expected one. The index of the array is consistent with the input series.", + "items": { + "type": "boolean", + "x-nullable": false + } + } + } + }, + "LastDetectResponse": { + "type": "object", + "required": [ + "expectedValue", + "isAnomaly", + "isNegativeAnomaly", + "isPositiveAnomaly", + "lowerMargin", + "period", + "upperMargin", + "suggestedWindow" + ], + "properties": { + "period": { + "type": "integer", + "format": "int32", + "description": "Frequency extracted from the series, zero means no recurrent pattern has been found." + }, + "suggestedWindow": { + "type": "integer", + "format": "int32", + "description": "Suggested input series points needed for detecting the latest point." + }, + "expectedValue": { + "type": "number", + "format": "float", + "description": "Expected value of the latest point." + }, + "upperMargin": { + "type": "number", + "format": "float", + "description": "Upper margin of the latest point. UpperMargin is used to calculate upperBoundary, which equals to expectedValue + (100 - marginScale)*upperMargin. If the value of latest point is between upperBoundary and lowerBoundary, it should be treated as normal value. By adjusting marginScale value, anomaly status of latest point can be changed." + }, + "lowerMargin": { + "type": "number", + "format": "float", + "description": "Lower margin of the latest point. LowerMargin is used to calculate lowerBoundary, which equals to expectedValue - (100 - marginScale)*lowerMargin. " + }, + "isAnomaly": { + "type": "boolean", + "description": "Anomaly status of the latest point, true means the latest point is an anomaly either in negative direction or positive direction." + }, + "isNegativeAnomaly": { + "type": "boolean", + "description": "Anomaly status in negative direction of the latest point. True means the latest point is an anomaly and its real value is smaller than the expected one." + }, + "isPositiveAnomaly": { + "type": "boolean", + "description": "Anomaly status in positive direction of the latest point. True means the latest point is an anomaly and its real value is larger than the expected one." + } + } + }, + "ChangePointDetectRequest": { + "type": "object", + "required": [ + "granularity", + "series" + ], + "properties": { + "series": { + "type": "array", + "description": "Time series data points. Points should be sorted by timestamp in ascending order to match the change point detection result.", + "items": { + "$ref": "#/definitions/TimeSeriesPoint" + } + }, + "granularity": { + "$ref": "#/definitions/TimeGranularity", + "description": "Can only be one of yearly, monthly, weekly, daily, hourly, minutely or secondly. Granularity is used for verify whether input series is valid." + }, + "customInterval": { + "description": "Custom Interval is used to set non-standard time interval, for example, if the series is 5 minutes, request can be set as {\"granularity\":\"minutely\", \"customInterval\":5}.", + "$ref": "#/definitions/CustomInterval" + }, + "period": { + "type": "integer", + "format": "int32", + "description": "Optional argument, periodic value of a time series. If the value is null or does not present, the API will determine the period automatically." + }, + "stableTrendWindow": { + "type": "integer", + "format": "int32", + "description": "Optional argument, advanced model parameter, a default stableTrendWindow will be used in detection." + }, + "threshold": { + "type": "number", + "format": "float", + "description": "Optional argument, advanced model parameter, between 0.0-1.0, the lower the value is, the larger the trend error will be which means less change point will be accepted." + } + } + }, + "ChangePointDetectResponse": { + "type": "object", + "properties": { + "period": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "Frequency extracted from the series, zero means no recurrent pattern has been found." + }, + "isChangePoint": { + "type": "array", + "description": "isChangePoint contains change point properties for each input point. True means an anomaly either negative or positive has been detected. The index of the array is consistent with the input series.", + "items": { + "type": "boolean", + "readOnly": true, + "x-nullable": false + } + }, + "confidenceScores": { + "type": "array", + "description": "the change point confidence of each point", + "items": { + "type": "number", + "format": "float", + "readOnly": true, + "x-nullable": false + } + } + } + } + }, + "parameters": { + "Endpoint": { + "name": "Endpoint", + "description": "Supported Cognitive Services endpoints (protocol and hostname, for example: https://westus2.api.cognitive.microsoft.com).", + "x-ms-parameter-location": "client", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true + } + } +} diff --git a/specification/cognitiveservices/data-plane/AnomalyDetector/preview/v1.1-preview/MultivariateAnomalyDetector.json b/specification/cognitiveservices/data-plane/AnomalyDetector/preview/v1.1-preview/MultivariateAnomalyDetector.json new file mode 100644 index 000000000000..efb9bd3355a5 --- /dev/null +++ b/specification/cognitiveservices/data-plane/AnomalyDetector/preview/v1.1-preview/MultivariateAnomalyDetector.json @@ -0,0 +1,1049 @@ +{ + "swagger": "2.0", + "info": { + "version": "1.1-preview", + "title": "Anomaly Detector Client", + "description": "The Anomaly Detector API detects anomalies automatically in time series data. It supports two kinds of mode, one is for stateless using, another is for stateful using. In stateless mode, there are three functionalities. Entire Detect is for detecting the whole series with model trained by the time series, Last Detect is detecting last point with model trained by points before. ChangePoint Detect is for detecting trend changes in time series. In stateful mode, user can store time series, the stored time series will be used for detection anomalies. Under this mode, user can still use the above three functionalities by only giving a time range without preparing time series in client side. Besides the above three functionalities, stateful model also provide group based detection and labeling service. By leveraging labeling service user can provide labels for each detection result, these labels will be used for retuning or regenerating detection models. Inconsistency detection is a kind of group based detection, this detection will find inconsistency ones in a set of time series. By using anomaly detector service, business customers can discover incidents and establish a logic flow for root cause analysis." + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + { + "name": "MultivariateAnomalyDetection" + } + ], + "securityDefinitions": { + "apiKeyHeader": { + "type": "apiKey", + "in": "header", + "name": "Ocp-Apim-Subscription-Key" + } + }, + "security": [ + { + "apiKeyHeader": [] + } + ], + "x-ms-parameterized-host": { + "hostTemplate": "{Endpoint}/anomalydetector/v1.1-preview", + "useSchemePrefix": false, + "parameters": [ + { + "$ref": "#/parameters/Endpoint" + } + ] + }, + "schemes": [ + "https" + ], + "paths": { + "/multivariate/models": { + "post": { + "responses": { + "201": { + "description": "Submit a multivariate model training task successfully.", + "headers": { + "Location": { + "type": "string", + "description": "Location and ID of the model being saved." + } + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "summary": "Train a Multivariate Anomaly Detection Model", + "operationId": "TrainMultivariateModel", + "parameters": [ + { + "name": "modelRequest", + "in": "body", + "required": true, + "description": "Training request", + "schema": { + "$ref": "#/definitions/ModelInfo" + } + } + ], + "tags": [ + "MultivariateAnomalyDetection" + ], + "x-ms-examples": { + "Train Multivariate model": { + "$ref": "./examples/TrainModel.json" + } + }, + "description": "Create and train a multivariate anomaly detection model. The request must include a source parameter to indicate an externally accessible Azure storage Uri (preferably a Shared Access Signature Uri). All time-series used in generate the model must be zipped into one single file. Each time-series will be in a single CSV file in which the first column is timestamp and the second column is value." + } + }, + "/multivariate/models/{modelId}": { + "parameters": [ + { + "name": "modelId", + "description": "Model identifier.", + "format": "uuid", + "in": "path", + "required": true, + "type": "string" + } + ], + "get": { + "responses": { + "200": { + "description": "Get multivariate model details successfully.", + "schema": { + "$ref": "#/definitions/Model" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "summary": "Get Multivariate Model", + "description": "Get detailed information of multivariate model, including the training status and variables used in the model.", + "operationId": "GetMultivariateModel", + "tags": [ + "MultivariateAnomalyDetection" + ], + "x-ms-examples": { + "Get multivariate model": { + "$ref": "./examples/GetModel.json" + } + } + }, + "delete": { + "responses": { + "204": { + "description": "Successfully marked model for deletion. Model will be removed within a predefined time period." + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete multivariate model": { + "$ref": "./examples/DeleteModel.json" + } + }, + "summary": "Delete Multivariate Model", + "description": "Delete an existing multivariate model according to the modelId", + "operationId": "DeleteMultivariateModel", + "tags": [ + "MultivariateAnomalyDetection" + ] + } + }, + "/multivariate/models/{modelId}/detect": { + "parameters": [ + { + "name": "modelId", + "description": "Model identifier.", + "in": "path", + "format": "uuid", + "required": true, + "type": "string" + } + ], + "post": { + "responses": { + "201": { + "description": "Submit a multivariate model detection task successfully.", + "headers": { + "Location": { + "type": "string", + "description": "Location and ID of the detection result being saved." + } + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "summary": "Detect Multivariate Anomaly", + "description": "Submit detection multivariate anomaly task with the trained model of modelId, the input schema should be the same with the training request. Thus request will be complete asynchronously and will return a resultId for querying the detection result.The request should be a source link to indicate an externally accessible Azure storage Uri (preferably a Shared Access Signature Uri). All time-series used in generate the model must be zipped into one single file. Each time-series will be as follows: the first column is timestamp and the second column is value.", + "operationId": "DetectAnomaly", + "x-ms-examples": { + "Detect anomaly with multivariate Model": { + "$ref": "./examples/DetectAnomaly.json" + } + }, + "parameters": [ + { + "name": "detectionRequest", + "description": "Detect anomaly request", + "required": true, + "in": "body", + "schema": { + "$ref": "#/definitions/DetectionRequest" + } + } + ], + "tags": [ + "MultivariateAnomalyDetection" + ] + } + }, + "/multivariate/results/{resultId}": { + "parameters": [ + { + "name": "resultId", + "description": "Result identifier.", + "in": "path", + "required": true, + "type": "string", + "format": "uuid" + } + ], + "get": { + "responses": { + "200": { + "description": "Get Multivariate Anomaly Detection Result by Result Id.", + "schema": { + "$ref": "#/definitions/DetectionResult" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get detection result": { + "$ref": "./examples/GetResult.json" + } + }, + "summary": "Get Multivariate Anomaly Detection Result", + "operationId": "GetDetectionResult", + "description": "Get multivariate anomaly detection result based on resultId returned by the DetectAnomalyAsync api", + "tags": [ + "MultivariateAnomalyDetection" + ] + } + }, + "/multivariate/models/{modelId}/export": { + "parameters": [ + { + "name": "modelId", + "description": "Model identifier.", + "in": "path", + "required": true, + "type": "string", + "format": "uuid" + } + ], + "get": { + "responses": { + "200": { + "description": "Export the multivariate model as a zip package.", + "headers": { + "content-type": { + "description": "application/zip", + "type": "string" + } + }, + "schema": { + "type": "object", + "format": "file" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get detection result": { + "$ref": "./examples/ExportModel.json" + } + }, + "summary": "Export Multivariate Anomaly Detection Model as Zip file", + "description": "Export multivariate anomaly detection model based on modelId", + "operationId": "ExportModel", + "produces": [ + "application/zip" + ], + "tags": [ + "MultivariateAnomalyDetection" + ] + } + } + }, + "x-ms-paths": { + "/multivariate/models?$skip=0&$top=5": { + "get": { + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ModelList" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "summary": "List Multivariate Models", + "operationId": "ListMultivariateModel", + "parameters": [ + { + "name": "$skip", + "in": "query", + "required": false, + "type": "integer", + "default": 0, + "description": "$skip indicates how many models will be skipped." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "default": 5, + "description": "$top indicates how many models will be fetched." + } + ], + "tags": [ + "MultivariateAnomalyDetection" + ], + "x-ms-examples": { + "List Multivariate model": { + "$ref": "./examples/ListModel.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink", + "itemName": "models" + }, + "description": "List models of a subscription" + } + } + }, + "definitions": { + "Model": { + "required": [ + "createdTime", + "lastUpdatedTime", + "modelId" + ], + "properties": { + "modelId": { + "type": "string", + "format": "uuid", + "description": "Model identifier.", + "example": "45aad126-aafd-11ea-b8fb-d89ef3400c5f" + }, + "createdTime": { + "type": "string", + "format": "date-time", + "description": "Date and time (UTC) when the model was created.", + "example": "2020-06-30T00:00:00Z" + }, + "lastUpdatedTime": { + "type": "string", + "format": "date-time", + "description": "Date and time (UTC) when the model was last updated.", + "example": "2020-06-30T00:00:00Z" + }, + "modelInfo": { + "description": "Training Status of the model.", + "$ref": "#/definitions/ModelInfo" + } + }, + "type": "object", + "description": "Response of get model." + }, + "ModelStatus": { + "type": "string", + "description": "Model training status.", + "x-nullable": false, + "x-ms-enum": { + "name": "modelStatus", + "modelAsString": false + }, + "example": "READY", + "readOnly": true, + "enum": [ + "CREATED", + "RUNNING", + "READY", + "FAILED" + ] + }, + "ModelInfo": { + "required": [ + "endTime", + "source", + "startTime" + ], + "properties": { + "slidingWindow": { + "type": "integer", + "description": "An optional field, indicates how many history points will be used to determine the anomaly score of one subsequent point.", + "example": 20 + }, + "alignPolicy": { + "description": "An optional field, since those multivariate need to be aligned in the same timestamp before starting the detection.", + "$ref": "#/definitions/AlignPolicy" + }, + "source": { + "type": "string", + "description": "source file link of the input variables, each variable will be a csv with two columns, the first column will be timestamp, the second column will be value.Besides these variable csv files, an extra meta.json can be included in th zip file if you would like to rename a variable.Be default, the file name of the variable will be used as the variable name.", + "example": "https://multiadsample.blob.core.windows.net/data/sample_data_2_1000.zip?sp=rl&st=2020-12-04T06:03:47Z&se=2022-12-05T06:03:00Z&sv=2019-12-12&sr=b&sig=AZTbvZ7fcp3MdqGY%2FvGHJXJjUgjS4DneCGl7U5omq5c%3D" + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "require field, start time of data be used for generating multivariate anomaly detection model, should be data-time", + "example": "2019-04-01T00:00:00Z" + }, + "endTime": { + "type": "string", + "format": "date-time", + "description": "require field, end time of data be used for generating multivariate anomaly detection model, should be data-time", + "example": "2019-04-02T00:00:00Z" + }, + "displayName": { + "type": "string", + "description": "optional field, name of the model", + "example": "DevOps-MultiAD", + "maxLength": 24 + }, + "status": { + "$ref": "#/definitions/ModelStatus" + }, + "errors": { + "type": "array", + "description": "Error message when fails to create a model.", + "readOnly": true, + "items": { + "$ref": "#/definitions/ErrorResponse" + } + }, + "diagnosticsInfo": { + "$ref": "#/definitions/DiagnosticsInfo", + "description": "Used for deep analysis model and variables" + } + }, + "type": "object", + "description": "Train result of a model including status, errors and diagnose info for model and variables." + }, + "ErrorResponse": { + "required": [ + "code", + "message" + ], + "properties": { + "code": { + "type": "string", + "x-nullable": false, + "description": "The error Code" + }, + "message": { + "type": "string", + "x-nullable": false, + "description": "A message explaining the error reported by the service." + } + }, + "type": "object" + }, + "DiagnosticsInfo": { + "properties": { + "modelState": { + "$ref": "#/definitions/ModelState" + }, + "variableStates": { + "type": "array", + "example": [ + { + "variable": "ad_input", + "filledNARatio": 0, + "effectiveCount": 1441, + "startTime": "2019-04-01T00:00:00Z", + "endTime": "2019-04-02T00:00:00Z", + "errors": [] + }, + { + "variable": "ad_on_timer_output", + "filledNARatio": 0, + "effectiveCount": 1441, + "startTime": "2019-04-01T00:00:00Z", + "endTime": "2019-04-02T00:00:00Z", + "errors": [] + }, + { + "variable": "ingestion", + "filledNARatio": 0, + "effectiveCount": 1441, + "startTime": "2019-04-01T00:00:00Z", + "endTime": "2019-04-02T00:00:00Z", + "errors": [] + }, + { + "variable": "data_in_speed", + "filledNARatio": 0, + "effectiveCount": 1441, + "startTime": "2019-04-01T00:00:00Z", + "endTime": "2019-04-02T00:00:00Z", + "errors": [] + }, + { + "variable": "cpu", + "filledNARatio": 0, + "effectiveCount": 1441, + "startTime": "2019-04-01T00:00:00Z", + "endTime": "2019-04-02T00:00:00Z", + "errors": [] + }, + { + "variable": "ad_series_init", + "filledNARatio": 0, + "effectiveCount": 1441, + "startTime": "2019-04-01T00:00:00Z", + "endTime": "2019-04-02T00:00:00Z", + "errors": [] + }, + { + "variable": "F-Link_last_check_point_duration", + "filledNARatio": 0, + "effectiveCount": 1441, + "startTime": "2019-04-01T00:00:00Z", + "endTime": "2019-04-02T00:00:00Z", + "errors": [] + }, + { + "variable": "data_out_speed", + "filledNARatio": 0, + "effectiveCount": 1441, + "startTime": "2019-04-01T00:00:00Z", + "endTime": "2019-04-02T00:00:00Z", + "errors": [] + }, + { + "variable": "ad_output", + "filledNARatio": 0, + "effectiveCount": 1441, + "startTime": "2019-04-01T00:00:00Z", + "endTime": "2019-04-02T00:00:00Z", + "errors": [] + } + ], + "items": { + "$ref": "#/definitions/VariableState" + } + } + }, + "readOnly": true, + "type": "object" + }, + "AlignPolicy": { + "properties": { + "alignMode": { + "type": "string", + "description": "An optional field, indicates how we align different variables into the same time-range which is required by the model.{Inner, Outer}", + "example": "Outer", + "enum": [ + "Inner", + "Outer" + ], + "x-ms-enum": { + "name": "alignMode", + "modelAsString": false + } + }, + "fillNAMethod": { + "type": "string", + "description": "An optional field, indicates how missed values will be filled with. Can not be set to NotFill, when alignMode is Outer.{Previous, Subsequent, Linear, Zero, Fix, NotFill}", + "example": "Linear", + "enum": [ + "Previous", + "Subsequent", + "Linear", + "Zero", + "Pad", + "NotFill" + ], + "x-ms-enum": { + "name": "fillNAMethod", + "modelAsString": false + } + }, + "paddingValue": { + "type": "integer", + "description": "optional field, only be useful if FillNAMethod is set to Pad." + } + }, + "type": "object" + }, + "ModelState": { + "properties": { + "epochIds": { + "type": "array", + "description": "Epoch id", + "example": [ + 10, + 20, + 30, + 40, + 50, + 60, + 70, + 80, + 90, + 100 + ], + "items": { + "type": "integer" + } + }, + "trainLosses": { + "type": "array", + "example": [ + 0.6291328072547913, + 0.1671326905488968, + 0.12354248017072678, + 0.10259664058685303, + 0.09584927558898926, + 0.09069952368736267, + 0.08686016499996185, + 0.08603022992610931, + 0.08287354558706284, + 0.08235538005828857 + ], + "items": { + "type": "number" + } + }, + "validationLosses": { + "type": "array", + "example": [ + 0.9573427438735962, + 0.3182229995727539, + 0.3402646481990814, + 0.27653488516807556, + 0.2574014365673065, + 0.26928603649139404, + 0.2637230455875397, + 0.2590833008289337, + 0.2597166895866394, + 0.25973501801490784 + ], + "items": { + "type": "number" + } + }, + "latenciesInSeconds": { + "type": "array", + "example": [ + 0.3398594856262207, + 0.3659665584564209, + 0.37360644340515137, + 0.35134077072143555, + 0.33703041076660156, + 0.31876277923583984, + 0.32833099365234375, + 0.3503587245941162, + 0.3080024719238281, + 0.3327946662902832 + ], + "items": { + "type": "number" + } + } + }, + "type": "object" + }, + "VariableState": { + "properties": { + "variable": { + "type": "string", + "description": "Variable name." + }, + "filledNARatio": { + "type": "number", + "description": "Merged NA ratio of a variable.", + "minimum": 0, + "maximum": 1 + }, + "effectiveCount": { + "type": "integer", + "description": "Effective time-series points count." + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "Start time of a variable" + }, + "endTime": { + "type": "string", + "format": "date-time", + "description": "End time of a variable" + }, + "errors": { + "type": "array", + "description": "Error message when parse variable", + "items": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "type": "object" + }, + "ModelSnapshot": { + "required": [ + "createdTime", + "lastUpdatedTime", + "modelId", + "status", + "variablesCount" + ], + "properties": { + "modelId": { + "type": "string", + "format": "uuid", + "description": "Model identifier.", + "example": "45aad126-aafd-11ea-b8fb-d89ef3400c5f" + }, + "createdTime": { + "type": "string", + "format": "date-time", + "description": "Date and time (UTC) when the model was created.", + "example": "2020-06-30T00:00:00Z" + }, + "lastUpdatedTime": { + "type": "string", + "format": "date-time", + "description": "Date and time (UTC) when the model was last updated.", + "example": "2020-06-30T00:00:00Z" + }, + "status": { + "$ref": "#/definitions/ModelStatus" + }, + "displayName": { + "type": "string", + "example": "DevOps-Test" + }, + "variablesCount": { + "type": "integer", + "description": "Count of variables", + "example": 18 + } + }, + "type": "object" + }, + "ModelList": { + "required": [ + "currentCount", + "maxCount", + "models" + ], + "properties": { + "models": { + "type": "array", + "description": "List of models", + "items": { + "$ref": "#/definitions/ModelSnapshot" + } + }, + "currentCount": { + "type": "integer", + "description": "Current count of trained multivariate models.", + "x-nullable": false, + "example": 10 + }, + "maxCount": { + "type": "integer", + "description": "Max number of models that can be trained for this subscription.", + "x-nullable": false, + "example": 20 + }, + "nextLink": { + "type": "string", + "description": "next link to fetch more models" + } + }, + "type": "object", + "description": "Response to the list models operation." + }, + "DetectionRequest": { + "required": [ + "source", + "endTime", + "startTime" + ], + "properties": { + "source": { + "type": "string", + "description": "source file link of the input variables, each variable will be a csv with two columns, the first column will be timestamp, the second column will be value.Besides these variable csv files, a extra meta.json can be included in th zip file if you would like to rename a variable.Be default, the file name of the variable will be used as the variable name. The variables used in detection should be consistent with variables in the model used for detection.", + "example": "https://multiadsample.blob.core.windows.net/data/sample_data_2_1000.zip?sp=rl&st=2020-12-04T06:03:47Z&se=2022-12-05T06:03:00Z&sv=2019-12-12&sr=b&sig=AZTbvZ7fcp3MdqGY%2FvGHJXJjUgjS4DneCGl7U5omq5c%3D" + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "A require field, start time of data be used for detection, should be date-time.", + "example": "2019-04-01T00:15:00Z" + }, + "endTime": { + "type": "string", + "format": "date-time", + "description": "A require field, end time of data be used for detection, should be date-time.", + "example": "2019-04-01T00:40:00Z" + } + }, + "type": "object", + "description": "Request to submit a detection." + }, + "DetectionResult": { + "required": [ + "resultId", + "results", + "summary" + ], + "properties": { + "resultId": { + "type": "string", + "format": "uuid", + "example": "45aad126-aafd-11ea-b8fb-d89ef3400c5f" + }, + "summary": { + "description": "Multivariate anomaly detection status", + "$ref": "#/definitions/DetectionResultSummary" + }, + "results": { + "type": "array", + "description": "anomaly status of each timestamp", + "items": { + "$ref": "#/definitions/AnomalyState" + } + } + }, + "type": "object", + "description": "Anomaly Response of one detection corresponds to a resultId." + }, + "DetectionResultSummary": { + "required": [ + "setupInfo", + "status" + ], + "properties": { + "status": { + "type": "string", + "description": "Multivariate anomaly detection status", + "example": "READY", + "enum": [ + "CREATED", + "RUNNING", + "READY", + "FAILED" + ], + "x-ms-enum": { + "name": "DetectionStatus", + "modelAsString": false + } + }, + "errors": { + "type": "array", + "description": "Error message when creating or training model fails.", + "items": { + "$ref": "#/definitions/ErrorResponse" + } + }, + "variableStates": { + "type": "array", + "example": [ + { + "variable": "ad_input", + "filledNARatio": 0, + "effectiveCount": 26, + "startTime": "2019-04-01T00:00:00Z", + "endTime": "2019-04-01T00:25:00Z", + "errors": [] + }, + { + "variable": "ad_on_timer_output", + "filledNARatio": 0, + "effectiveCount": 26, + "startTime": "2019-04-01T00:00:00Z", + "endTime": "2019-04-01T00:25:00Z", + "errors": [] + }, + { + "variable": "ad_output", + "filledNARatio": 0, + "effectiveCount": 26, + "startTime": "2019-04-01T00:00:00Z", + "endTime": "2019-04-01T00:25:00Z", + "errors": [] + }, + { + "variable": "ad_series_init", + "filledNARatio": 0, + "effectiveCount": 26, + "startTime": "2019-04-01T00:00:00Z", + "endTime": "2019-04-01T00:25:00Z", + "errors": [] + }, + { + "variable": "cpu", + "filledNARatio": 0, + "effectiveCount": 26, + "startTime": "2019-04-01T00:00:00Z", + "endTime": "2019-04-01T00:25:00Z", + "errors": [] + }, + { + "variable": "data_in_speed", + "filledNARatio": 0, + "effectiveCount": 26, + "startTime": "2019-04-01T00:00:00Z", + "endTime": "2019-04-01T00:25:00Z", + "errors": [] + }, + { + "variable": "data_out_speed", + "filledNARatio": 0, + "effectiveCount": 26, + "startTime": "2019-04-01T00:00:00Z", + "endTime": "2019-04-01T00:25:00Z", + "errors": [] + }, + { + "variable": "F-Link_last_check_point_duration", + "filledNARatio": 0, + "effectiveCount": 26, + "startTime": "2019-04-01T00:00:00Z", + "endTime": "2019-04-01T00:25:00Z", + "errors": [] + }, + { + "variable": "ingestion", + "filledNARatio": 0, + "effectiveCount": 26, + "startTime": "2019-04-01T00:00:00Z", + "endTime": "2019-04-01T00:25:00Z", + "errors": [] + } + ], + "items": { + "$ref": "#/definitions/VariableState" + } + }, + "setupInfo": { + "description": "Request when creating the model.", + "$ref": "#/definitions/DetectionRequest" + } + }, + "type": "object" + }, + "AnomalyState": { + "required": [ + "timestamp" + ], + "properties": { + "timestamp": { + "type": "string", + "format": "date-time", + "description": "timestamp", + "example": "2020-01-01T00:00:00Z" + }, + "value": { + "$ref": "#/definitions/AnomalyValue" + }, + "errors": { + "type": "array", + "description": "Error message when inference this timestamp", + "items": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "type": "object" + }, + "AnomalyValue": { + "required": [ + "isAnomaly", + "severity" + ], + "properties": { + "contributors": { + "type": "array", + "description": "If current timestamp is an anomaly, contributors will show potential root cause for thus anomaly. Contributors can help us understand why current timestamp has been detected as an anomaly.", + "items": { + "$ref": "#/definitions/AnomalyContributor" + } + }, + "isAnomaly": { + "type": "boolean", + "description": "To indicate whether current timestamp is anomaly or not", + "example": true + }, + "severity": { + "type": "number", + "description": "anomaly score of the current timestamp, the more significant an anomaly is, the higher the score will be", + "example": 0.8, + "minimum": 0, + "maximum": 1 + }, + "score": { + "type": "number", + "description": "anomaly score of the current timestamp, the more significant an anomaly is, the higher the score will be, score measures global significance", + "example": 0.1, + "minimum": 0, + "maximum": 2 + } + }, + "type": "object" + }, + "AnomalyContributor": { + "properties": { + "contributionScore": { + "type": "number", + "description": "The higher the contribution score is, the more likely the variable to be the root cause of a anomaly.", + "example": 0.6, + "minimum": 0, + "maximum": 2 + }, + "variable": { + "type": "string", + "description": "Variable name of a contributor", + "example": "ingestion" + } + }, + "type": "object" + } + }, + "parameters": { + "Endpoint": { + "name": "Endpoint", + "description": "Supported Cognitive Services endpoints (protocol and hostname, for example: https://westus2.api.cognitive.microsoft.com).", + "x-ms-parameter-location": "client", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true + } + } +} diff --git a/specification/cognitiveservices/data-plane/AnomalyDetector/preview/v1.1-preview/examples/ChangePointDetect.json b/specification/cognitiveservices/data-plane/AnomalyDetector/preview/v1.1-preview/examples/ChangePointDetect.json new file mode 100644 index 000000000000..e8866dadda32 --- /dev/null +++ b/specification/cognitiveservices/data-plane/AnomalyDetector/preview/v1.1-preview/examples/ChangePointDetect.json @@ -0,0 +1,1569 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "body": { + "series": [ + { + "timestamp": "2017-01-01T06:45:00Z", + "value": 1639196 + }, + { + "timestamp": "2017-01-01T06:50:00Z", + "value": 1639290 + }, + { + "timestamp": "2017-01-01T06:55:00Z", + "value": 1667293 + }, + { + "timestamp": "2017-01-01T07:00:00Z", + "value": 1703130 + }, + { + "timestamp": "2017-01-01T07:05:00Z", + "value": 1650912 + }, + { + "timestamp": "2017-01-01T07:10:00Z", + "value": 1653596 + }, + { + "timestamp": "2017-01-01T07:15:00Z", + "value": 1653793 + }, + { + "timestamp": "2017-01-01T07:20:00Z", + "value": 1653795 + }, + { + "timestamp": "2017-01-01T07:25:00Z", + "value": 1663471 + }, + { + "timestamp": "2017-01-01T07:30:00Z", + "value": 1662358 + }, + { + "timestamp": "2017-01-01T07:35:00Z", + "value": 1664320 + }, + { + "timestamp": "2017-01-01T07:40:00Z", + "value": 1664942 + }, + { + "timestamp": "2017-01-01T07:45:00Z", + "value": 1664966 + }, + { + "timestamp": "2017-01-01T07:50:00Z", + "value": 1724271 + }, + { + "timestamp": "2017-01-01T07:55:00Z", + "value": 1678720 + }, + { + "timestamp": "2017-01-01T08:00:00Z", + "value": 1672536 + }, + { + "timestamp": "2017-01-01T08:05:00Z", + "value": 1672544 + }, + { + "timestamp": "2017-01-01T08:10:00Z", + "value": 1672364 + }, + { + "timestamp": "2017-01-01T08:15:00Z", + "value": 1672912 + }, + { + "timestamp": "2017-01-01T08:20:00Z", + "value": 1672736 + }, + { + "timestamp": "2017-01-01T08:25:00Z", + "value": 1672725 + }, + { + "timestamp": "2017-01-01T08:30:00Z", + "value": 1673247 + }, + { + "timestamp": "2017-01-01T08:35:00Z", + "value": 1673109 + }, + { + "timestamp": "2017-01-01T08:40:00Z", + "value": 1690088 + }, + { + "timestamp": "2017-01-01T08:45:00Z", + "value": 1703865 + }, + { + "timestamp": "2017-01-01T08:50:00Z", + "value": 1703865 + }, + { + "timestamp": "2017-01-01T08:55:00Z", + "value": 1786581 + }, + { + "timestamp": "2017-01-01T09:00:00Z", + "value": 1800945 + }, + { + "timestamp": "2017-01-01T09:05:00Z", + "value": 1800957 + }, + { + "timestamp": "2017-01-01T09:10:00Z", + "value": 1801191 + }, + { + "timestamp": "2017-01-01T09:15:00Z", + "value": 1801412 + }, + { + "timestamp": "2017-01-01T09:20:00Z", + "value": 1801621 + }, + { + "timestamp": "2017-01-01T09:25:00Z", + "value": 1801621 + }, + { + "timestamp": "2017-01-01T09:30:00Z", + "value": 1801654 + }, + { + "timestamp": "2017-01-01T09:35:00Z", + "value": 1802105 + }, + { + "timestamp": "2017-01-01T09:40:00Z", + "value": 1801800 + }, + { + "timestamp": "2017-01-01T09:45:00Z", + "value": 1803040 + }, + { + "timestamp": "2017-01-01T09:50:00Z", + "value": 1803672 + }, + { + "timestamp": "2017-01-01T09:55:00Z", + "value": 1803535 + }, + { + "timestamp": "2017-01-01T10:00:00Z", + "value": 1803541 + }, + { + "timestamp": "2017-01-01T10:05:00Z", + "value": 1803545 + }, + { + "timestamp": "2017-01-01T10:10:00Z", + "value": 1803599 + }, + { + "timestamp": "2017-01-01T10:15:00Z", + "value": 1803616 + }, + { + "timestamp": "2017-01-01T10:20:00Z", + "value": 1803619 + }, + { + "timestamp": "2017-01-01T10:25:00Z", + "value": 1809942 + }, + { + "timestamp": "2017-01-01T10:30:00Z", + "value": 1802720 + }, + { + "timestamp": "2017-01-01T10:35:00Z", + "value": 1802720 + }, + { + "timestamp": "2017-01-01T10:40:00Z", + "value": 1802888 + }, + { + "timestamp": "2017-01-01T10:45:00Z", + "value": 1809574 + }, + { + "timestamp": "2017-01-01T10:50:00Z", + "value": 1803896 + }, + { + "timestamp": "2017-01-01T10:55:00Z", + "value": 1803850 + }, + { + "timestamp": "2017-01-01T11:00:00Z", + "value": 1803854 + }, + { + "timestamp": "2017-01-01T11:05:00Z", + "value": 1803854 + }, + { + "timestamp": "2017-01-01T11:10:00Z", + "value": 1803797 + }, + { + "timestamp": "2017-01-01T11:15:00Z", + "value": 1803921 + }, + { + "timestamp": "2017-01-01T11:20:00Z", + "value": 1803933 + }, + { + "timestamp": "2017-01-01T11:25:00Z", + "value": 1804040 + }, + { + "timestamp": "2017-01-01T11:30:00Z", + "value": 1804044 + }, + { + "timestamp": "2017-01-01T11:35:00Z", + "value": 1804070 + }, + { + "timestamp": "2017-01-01T11:40:00Z", + "value": 1804070 + }, + { + "timestamp": "2017-01-01T11:45:00Z", + "value": 1804068 + }, + { + "timestamp": "2017-01-01T11:50:00Z", + "value": 1804073 + }, + { + "timestamp": "2017-01-01T11:55:00Z", + "value": 1804101 + }, + { + "timestamp": "2017-01-01T12:00:00Z", + "value": 1804674 + }, + { + "timestamp": "2017-01-01T12:05:00Z", + "value": 1804714 + }, + { + "timestamp": "2017-01-01T12:10:00Z", + "value": 1804730 + }, + { + "timestamp": "2017-01-01T12:15:00Z", + "value": 1804816 + }, + { + "timestamp": "2017-01-01T12:20:00Z", + "value": 1803996 + }, + { + "timestamp": "2017-01-01T12:25:00Z", + "value": 1803998 + }, + { + "timestamp": "2017-01-01T12:30:00Z", + "value": 1804015 + }, + { + "timestamp": "2017-01-01T12:35:00Z", + "value": 1804047 + }, + { + "timestamp": "2017-01-01T12:40:00Z", + "value": 1804050 + }, + { + "timestamp": "2017-01-01T12:45:00Z", + "value": 1804218 + }, + { + "timestamp": "2017-01-01T12:50:00Z", + "value": 1804217 + }, + { + "timestamp": "2017-01-01T12:55:00Z", + "value": 1804217 + }, + { + "timestamp": "2017-01-01T13:00:00Z", + "value": 1804205 + }, + { + "timestamp": "2017-01-01T13:05:00Z", + "value": 1804728 + }, + { + "timestamp": "2017-01-01T13:10:00Z", + "value": 1804748 + }, + { + "timestamp": "2017-01-01T13:15:00Z", + "value": 1805232 + }, + { + "timestamp": "2017-01-01T13:20:00Z", + "value": 1814121 + }, + { + "timestamp": "2017-01-01T13:25:00Z", + "value": 1806789 + }, + { + "timestamp": "2017-01-01T13:30:00Z", + "value": 1806119 + }, + { + "timestamp": "2017-01-01T13:35:00Z", + "value": 1806329 + }, + { + "timestamp": "2017-01-01T13:40:00Z", + "value": 1806454 + }, + { + "timestamp": "2017-01-01T13:45:00Z", + "value": 1806852 + }, + { + "timestamp": "2017-01-01T13:50:00Z", + "value": 1807347 + }, + { + "timestamp": "2017-01-01T13:55:00Z", + "value": 1812144 + }, + { + "timestamp": "2017-01-01T14:00:00Z", + "value": 1807418 + }, + { + "timestamp": "2017-01-01T14:05:00Z", + "value": 1807418 + }, + { + "timestamp": "2017-01-01T14:10:00Z", + "value": 1807432 + }, + { + "timestamp": "2017-01-01T14:15:00Z", + "value": 1808540 + }, + { + "timestamp": "2017-01-01T14:20:00Z", + "value": 1808541 + }, + { + "timestamp": "2017-01-01T14:25:00Z", + "value": 1807831 + }, + { + "timestamp": "2017-01-01T14:30:00Z", + "value": 1807852 + }, + { + "timestamp": "2017-01-01T14:35:00Z", + "value": 1807811 + }, + { + "timestamp": "2017-01-01T14:40:00Z", + "value": 2214285 + }, + { + "timestamp": "2017-01-01T14:45:00Z", + "value": 2215019 + }, + { + "timestamp": "2017-01-01T14:50:00Z", + "value": 2215329 + }, + { + "timestamp": "2017-01-01T14:55:00Z", + "value": 2215097 + }, + { + "timestamp": "2017-01-01T15:00:00Z", + "value": 2215129 + }, + { + "timestamp": "2017-01-01T15:05:00Z", + "value": 2215120 + }, + { + "timestamp": "2017-01-01T15:10:00Z", + "value": 2217056 + }, + { + "timestamp": "2017-01-01T15:15:00Z", + "value": 2217056 + }, + { + "timestamp": "2017-01-01T15:20:00Z", + "value": 2222126 + }, + { + "timestamp": "2017-01-01T15:25:00Z", + "value": 2226472 + }, + { + "timestamp": "2017-01-01T15:30:00Z", + "value": 2226722 + }, + { + "timestamp": "2017-01-01T15:35:00Z", + "value": 2226729 + }, + { + "timestamp": "2017-01-01T15:40:00Z", + "value": 2226735 + }, + { + "timestamp": "2017-01-01T15:45:00Z", + "value": 2226735 + }, + { + "timestamp": "2017-01-01T15:50:00Z", + "value": 2226735 + }, + { + "timestamp": "2017-01-01T15:55:00Z", + "value": 2226952 + }, + { + "timestamp": "2017-01-01T16:00:00Z", + "value": 2226962 + }, + { + "timestamp": "2017-01-01T16:05:00Z", + "value": 2649337 + }, + { + "timestamp": "2017-01-01T16:10:00Z", + "value": 2092796 + }, + { + "timestamp": "2017-01-01T16:15:00Z", + "value": 2092839 + }, + { + "timestamp": "2017-01-01T16:20:00Z", + "value": 2092940 + }, + { + "timestamp": "2017-01-01T16:25:00Z", + "value": 2092940 + }, + { + "timestamp": "2017-01-01T16:30:00Z", + "value": 2092965 + }, + { + "timestamp": "2017-01-01T16:35:00Z", + "value": 2092979 + }, + { + "timestamp": "2017-01-01T16:40:00Z", + "value": 2095588 + }, + { + "timestamp": "2017-01-01T16:45:00Z", + "value": 2099586 + }, + { + "timestamp": "2017-01-01T16:50:00Z", + "value": 2102981 + }, + { + "timestamp": "2017-01-01T16:55:00Z", + "value": 2108053 + }, + { + "timestamp": "2017-01-01T17:00:00Z", + "value": 2107907 + }, + { + "timestamp": "2017-01-01T17:05:00Z", + "value": 2108241 + }, + { + "timestamp": "2017-01-01T17:10:00Z", + "value": 2100321 + }, + { + "timestamp": "2017-01-01T17:15:00Z", + "value": 2100448 + }, + { + "timestamp": "2017-01-01T17:20:00Z", + "value": 2100483 + }, + { + "timestamp": "2017-01-01T17:25:00Z", + "value": 2103042 + }, + { + "timestamp": "2017-01-01T17:30:00Z", + "value": 2103037 + }, + { + "timestamp": "2017-01-01T17:35:00Z", + "value": 2103040 + }, + { + "timestamp": "2017-01-01T17:40:00Z", + "value": 2103054 + }, + { + "timestamp": "2017-01-01T17:45:00Z", + "value": 2103058 + }, + { + "timestamp": "2017-01-01T17:50:00Z", + "value": 1830757 + }, + { + "timestamp": "2017-01-01T17:55:00Z", + "value": 1830855 + }, + { + "timestamp": "2017-01-01T18:00:00Z", + "value": 1831495 + }, + { + "timestamp": "2017-01-01T18:05:00Z", + "value": 1831463 + }, + { + "timestamp": "2017-01-01T18:10:00Z", + "value": 1831963 + }, + { + "timestamp": "2017-01-01T18:15:00Z", + "value": 1832046 + }, + { + "timestamp": "2017-01-01T18:20:00Z", + "value": 1832070 + }, + { + "timestamp": "2017-01-01T18:25:00Z", + "value": 1835511 + }, + { + "timestamp": "2017-01-01T18:30:00Z", + "value": 1835265 + }, + { + "timestamp": "2017-01-01T18:35:00Z", + "value": 1835481 + }, + { + "timestamp": "2017-01-01T18:40:00Z", + "value": 1835578 + }, + { + "timestamp": "2017-01-01T18:45:00Z", + "value": 1835611 + }, + { + "timestamp": "2017-01-01T18:50:00Z", + "value": 1836314 + }, + { + "timestamp": "2017-01-01T18:55:00Z", + "value": 1836369 + }, + { + "timestamp": "2017-01-01T19:00:00Z", + "value": 1837280 + }, + { + "timestamp": "2017-01-01T19:05:00Z", + "value": 1842939 + }, + { + "timestamp": "2017-01-01T19:10:00Z", + "value": 1843126 + }, + { + "timestamp": "2017-01-01T19:15:00Z", + "value": 1845840 + }, + { + "timestamp": "2017-01-01T19:20:00Z", + "value": 1842444 + }, + { + "timestamp": "2017-01-01T19:25:00Z", + "value": 1839891 + }, + { + "timestamp": "2017-01-01T19:30:00Z", + "value": 1839875 + }, + { + "timestamp": "2017-01-01T19:35:00Z", + "value": 1839870 + }, + { + "timestamp": "2017-01-01T19:40:00Z", + "value": 1840090 + }, + { + "timestamp": "2017-01-01T19:45:00Z", + "value": 1840479 + }, + { + "timestamp": "2017-01-01T19:50:00Z", + "value": 1840479 + }, + { + "timestamp": "2017-01-01T19:55:00Z", + "value": 1840482 + }, + { + "timestamp": "2017-01-01T20:00:00Z", + "value": 1841522 + }, + { + "timestamp": "2017-01-01T20:05:00Z", + "value": 1841836 + }, + { + "timestamp": "2017-01-01T20:10:00Z", + "value": 1842377 + }, + { + "timestamp": "2017-01-01T20:15:00Z", + "value": 1842388 + }, + { + "timestamp": "2017-01-01T20:20:00Z", + "value": 1842489 + }, + { + "timestamp": "2017-01-01T20:25:00Z", + "value": 1842489 + }, + { + "timestamp": "2017-01-01T20:30:00Z", + "value": 1842489 + }, + { + "timestamp": "2017-01-01T20:35:00Z", + "value": 1842496 + }, + { + "timestamp": "2017-01-01T20:40:00Z", + "value": 1842689 + }, + { + "timestamp": "2017-01-01T20:45:00Z", + "value": 1843117 + }, + { + "timestamp": "2017-01-01T20:50:00Z", + "value": 1843116 + }, + { + "timestamp": "2017-01-01T20:55:00Z", + "value": 1843227 + }, + { + "timestamp": "2017-01-01T21:00:00Z", + "value": 1843138 + }, + { + "timestamp": "2017-01-01T21:05:00Z", + "value": 1843141 + }, + { + "timestamp": "2017-01-01T21:10:00Z", + "value": 1843310 + }, + { + "timestamp": "2017-01-01T21:15:00Z", + "value": 1843310 + }, + { + "timestamp": "2017-01-01T21:20:00Z", + "value": 1843507 + }, + { + "timestamp": "2017-01-01T21:25:00Z", + "value": 1843953 + }, + { + "timestamp": "2017-01-01T21:30:00Z", + "value": 1844778 + }, + { + "timestamp": "2017-01-01T21:35:00Z", + "value": 1843918 + }, + { + "timestamp": "2017-01-01T21:40:00Z", + "value": 1882692 + }, + { + "timestamp": "2017-01-01T21:45:00Z", + "value": 1974888 + }, + { + "timestamp": "2017-01-01T21:50:00Z", + "value": 2157136 + }, + { + "timestamp": "2017-01-01T21:55:00Z", + "value": 2154987 + }, + { + "timestamp": "2017-01-01T22:00:00Z", + "value": 2155664 + }, + { + "timestamp": "2017-01-01T22:05:00Z", + "value": 2155660 + }, + { + "timestamp": "2017-01-01T22:10:00Z", + "value": 2155824 + }, + { + "timestamp": "2017-01-01T22:15:00Z", + "value": 2155824 + }, + { + "timestamp": "2017-01-01T22:20:00Z", + "value": 2156329 + }, + { + "timestamp": "2017-01-01T22:25:00Z", + "value": 2156479 + }, + { + "timestamp": "2017-01-01T22:30:00Z", + "value": 2165269 + }, + { + "timestamp": "2017-01-01T22:35:00Z", + "value": 2165433 + }, + { + "timestamp": "2017-01-01T22:40:00Z", + "value": 2165739 + }, + { + "timestamp": "2017-01-01T22:45:00Z", + "value": 2165931 + }, + { + "timestamp": "2017-01-01T22:50:00Z", + "value": 2165928 + }, + { + "timestamp": "2017-01-01T22:55:00Z", + "value": 2165989 + }, + { + "timestamp": "2017-01-01T23:00:00Z", + "value": 2228961 + }, + { + "timestamp": "2017-01-01T23:05:00Z", + "value": 2228961 + }, + { + "timestamp": "2017-01-01T23:10:00Z", + "value": 2228961 + }, + { + "timestamp": "2017-01-01T23:15:00Z", + "value": 2485802 + }, + { + "timestamp": "2017-01-01T23:20:00Z", + "value": 2485802 + }, + { + "timestamp": "2017-01-01T23:25:00Z", + "value": 2486021 + }, + { + "timestamp": "2017-01-01T23:30:00Z", + "value": 2485293 + }, + { + "timestamp": "2017-01-01T23:35:00Z", + "value": 2485293 + }, + { + "timestamp": "2017-01-01T23:40:00Z", + "value": 2485324 + }, + { + "timestamp": "2017-01-01T23:45:00Z", + "value": 2489142 + }, + { + "timestamp": "2017-01-01T23:50:00Z", + "value": 2526312 + }, + { + "timestamp": "2017-01-01T23:55:00Z", + "value": 2526313 + }, + { + "timestamp": "2017-01-02T00:00:00Z", + "value": 2526314 + }, + { + "timestamp": "2017-01-02T00:05:00Z", + "value": 2526324 + }, + { + "timestamp": "2017-01-02T00:10:00Z", + "value": 2526325 + }, + { + "timestamp": "2017-01-02T00:15:00Z", + "value": 2526205 + }, + { + "timestamp": "2017-01-02T00:20:00Z", + "value": 2526226 + }, + { + "timestamp": "2017-01-02T00:25:00Z", + "value": 2526475 + }, + { + "timestamp": "2017-01-02T00:30:00Z", + "value": 2526471 + }, + { + "timestamp": "2017-01-02T00:35:00Z", + "value": 2526471 + }, + { + "timestamp": "2017-01-02T00:40:00Z", + "value": 2526534 + }, + { + "timestamp": "2017-01-02T00:45:00Z", + "value": 2526646 + }, + { + "timestamp": "2017-01-02T00:50:00Z", + "value": 2526646 + }, + { + "timestamp": "2017-01-02T00:55:00Z", + "value": 2526648 + }, + { + "timestamp": "2017-01-02T01:00:00Z", + "value": 2526658 + }, + { + "timestamp": "2017-01-02T01:05:00Z", + "value": 2526771 + }, + { + "timestamp": "2017-01-02T01:10:00Z", + "value": 2526773 + }, + { + "timestamp": "2017-01-02T01:15:00Z", + "value": 2526793 + }, + { + "timestamp": "2017-01-02T01:20:00Z", + "value": 2527010 + }, + { + "timestamp": "2017-01-02T01:25:00Z", + "value": 2527031 + }, + { + "timestamp": "2017-01-02T01:30:00Z", + "value": 3178096 + }, + { + "timestamp": "2017-01-02T01:35:00Z", + "value": 3196305 + }, + { + "timestamp": "2017-01-02T01:40:00Z", + "value": 3196202 + }, + { + "timestamp": "2017-01-02T01:45:00Z", + "value": 3196202 + }, + { + "timestamp": "2017-01-02T01:50:00Z", + "value": 3196205 + }, + { + "timestamp": "2017-01-02T01:55:00Z", + "value": 3229232 + }, + { + "timestamp": "2017-01-02T02:00:00Z", + "value": 3230463 + }, + { + "timestamp": "2017-01-02T02:05:00Z", + "value": 3230468 + }, + { + "timestamp": "2017-01-02T02:10:00Z", + "value": 3230468 + }, + { + "timestamp": "2017-01-02T02:15:00Z", + "value": 3230468 + }, + { + "timestamp": "2017-01-02T02:20:00Z", + "value": 3230470 + }, + { + "timestamp": "2017-01-02T02:25:00Z", + "value": 3230467 + }, + { + "timestamp": "2017-01-02T02:30:00Z", + "value": 3230506 + }, + { + "timestamp": "2017-01-02T02:35:00Z", + "value": 3231536 + }, + { + "timestamp": "2017-01-02T02:40:00Z", + "value": 3230723 + }, + { + "timestamp": "2017-01-02T02:45:00Z", + "value": 3230727 + }, + { + "timestamp": "2017-01-02T02:50:00Z", + "value": 3230727 + }, + { + "timestamp": "2017-01-02T02:55:00Z", + "value": 3230727 + }, + { + "timestamp": "2017-01-02T03:00:00Z", + "value": 3231880 + }, + { + "timestamp": "2017-01-02T03:05:00Z", + "value": 3232283 + }, + { + "timestamp": "2017-01-02T03:10:00Z", + "value": 3232283 + }, + { + "timestamp": "2017-01-02T03:15:00Z", + "value": 3232283 + }, + { + "timestamp": "2017-01-02T03:20:00Z", + "value": 3232325 + }, + { + "timestamp": "2017-01-02T03:25:00Z", + "value": 3232323 + }, + { + "timestamp": "2017-01-02T03:30:00Z", + "value": 3232327 + }, + { + "timestamp": "2017-01-02T03:35:00Z", + "value": 3232340 + }, + { + "timestamp": "2017-01-02T03:40:00Z", + "value": 3232713 + }, + { + "timestamp": "2017-01-02T03:45:00Z", + "value": 3232729 + }, + { + "timestamp": "2017-01-02T03:50:00Z", + "value": 3232756 + }, + { + "timestamp": "2017-01-02T03:55:00Z", + "value": 3233500 + }, + { + "timestamp": "2017-01-02T04:00:00Z", + "value": 3233500 + }, + { + "timestamp": "2017-01-02T04:05:00Z", + "value": 3233500 + } + ], + "granularity": "minutely", + "customInterval": 5, + "stableTrendWindow": 10, + "threshold": 0.99, + "period": 0 + } + }, + "responses": { + "200": { + "body": { + "period": 0, + "confidenceScores": [ + 0.11841763735063232, + 0.014857199927548581, + 0.0887032374955278, + 0.07430314751946857, + 0.059903057543409355, + 0.04132288981790399, + 0.022742722092391268, + 0.0005683208474757854, + 0.0216060803974397, + 0.053248991089971616, + 0.08489190178249614, + 0.04322511558132514, + 0.085336620199234, + 0.05876047041512903, + 0.02673755265447302, + 0.005032027060762012, + 0.031323171543775764, + 0.06299774949197792, + 0.08944723025337244, + 0.11523169864554421, + 0.14288453512268834, + 0.001592562559717675, + 0.32637788222282893, + 0, + 7.37310752217245e-15, + 2.211932256651735e-14, + 1, + 0.015697015891758138, + 0.01242773215043403, + 0.016188579169534697, + 0.019537751864826272, + 0.022506917491993753, + 0.01885762668253081, + 0.016253355310429398, + 0.017227483829906676, + 0.023236706002118527, + 0.03906277743439327, + 0.0354134866249377, + 0.037084294769315296, + 0.038248426822850935, + 0.050274427573818385, + 0.046815140298421175, + 0.043292518511668716, + 0.041353259508804745, + 0.038242312045861385, + 0.0346880230034313, + 0.032717096744889713, + 0.033026212895129546, + 0.031055286636580585, + 0.0275326648498355, + 0.023883374040372555, + 0.021564107969369743, + 0.018706498551854727, + 0.01543721481052325, + 0.015176320358565887, + 0.011527029549110314, + 0.008004407762357859, + 0.004355116952902286, + 0.0007058261434393403, + 0.0030701336887340946, + 0.006592755475479178, + 0.010147044517909256, + 0.013701333560339335, + 0.016780613767597707, + 0.020366570065705403, + 0.024015860875168354, + 0.02757014991759106, + 0.03033275756808058, + 0.03068865378707081, + 0.03395793752839492, + 0.03760722833785786, + 0.04122485189164318, + 0.030433874112103007, + 0.032816474694461056, + 0.03602242392443729, + 0.03960838022253762, + 0.04268766042980336, + 0.04633695123926631, + 0.0346592903007527, + 0.010219725324164698, + 0.007218892441326965, + 0.006909776291079754, + 0.000049463551460760754, + 0.0016047901503119819, + 0.01042121060065547, + 0.009020294944303705, + 0.005371004134840759, + 0.0021650549048718984, + 0.010517653997227793, + 0.0075017083013172925, + 0.00385241749186172, + 0.0008681390516288423, + 0.019005920148370017, + 0.015388296594592068, + 0.12583612799160215, + 1, + 0.005055878353042495, + 0.007613932468790628, + 0.011913685646822731, + 0.0166567804043268, + 0.015351429327405014, + 0.034309821169245976, + 0.0292817211106433, + 0.02425362105202589, + 0.019225520993423218, + 0.01419742093482055, + 0.00916932087621788, + 0.004141220817600464, + 0.0008868792410022057, + 0.0059149792996048755, + 0.010943079358207547, + 0.015971179416810213, + 0.02099927947542763, + 1, + 0.11533376425564247, + 0.1207645081246342, + 0.025174230145423273, + 0.09422487163021387, + 0.08417070843230404, + 0.07411654523437947, + 0.06406238203646963, + 0.0540082188385598, + 0.04395405564064997, + 0.03500824639144218, + 0.024954083193532338, + 0.014899919995622513, + 0.004845756797712681, + 0.005208406400211895, + 0.015262569598121728, + 0.025316732796031558, + 0.03537089599394139, + 0.045425059191865964, + 0.05145748091871777, + 1, + 0.011663506282381296, + 0.0043856580970499884, + 0.002892190088273945, + 0.01017003827359788, + 0.01744788645892181, + 0.024725734644253115, + 0.03200358282957705, + 0.03928143101490098, + 0.046559279200224915, + 0.05383712738555622, + 0.060069956133518614, + 0.0450857235774741, + 0.050621872700536176, + 0.029050850963546225, + 0.045689493056171517, + 0.0385699811492357, + 0.03179880905474635, + 0.03082274474926925, + 0.03586345902254038, + 0.028585610837209074, + 0.021402764418918006, + 0.04705886213832124, + 0.049724532235770696, + 0.05957866937203304, + 0.052649160999162954, + 0.045371312813839014, + 0.03809346462851508, + 0.030815616443183775, + 0.023537768257859845, + 0.01945831289597576, + 0.012180464710644455, + 0.00490261652532052, + 0.002153560870260057, + 0.0033196287098028916, + 0.0029244412792105113, + 0.0043217396504358, + 0.010934575466529664, + 0.018117421884820732, + 0.02267188608187652, + 0.027321352045957807, + 0.03459920023128174, + 0.03563859904812146, + 0.02990120514994264, + 0.03607069938654979, + 0.017223061637835352, + 7.37310752217245e-15, + 1.47462150443449e-14, + 1, + 0.046440552438977135, + 0.012233652454378385, + 0.017033155644526038, + 0.05136672465183527, + 0.06970832954194527, + 0.09929181019761117, + 0.11281999222473732, + 0.11039622919405537, + 0.08125609011787617, + 0.05661270134791935, + 0.028264243663680723, + 0.005974323576610399, + 0.038471191754617544, + 0, + 0, + 0, + 0.020288532128574968, + 0.005041879493223223, + 0.009223088216122232, + 0.009332792637570532, + 0.024579445272937026, + 0.03289096891488949, + 0.050695883419617865, + 1, + 0.000748013913075547, + 0.002186373999917361, + 0.0009330173541465358, + 0.00032033929162428933, + 0.0012886906362965138, + 0.002542047282052593, + 0.0007963481454318109, + 0.0004886757560166365, + 0.0016470306347398486, + 0.001063686451208582, + 0.0011980222832366648, + 0.00008700161821178273, + 0.0013086910082902394, + 0.0022770423529624643, + 0.000016333637160404937, + 0.0012053557529180517, + 0.0018570345408140537, + 0.0037297360397815314, + 0.003109724507563151, + 0.22869458705263188, + 0.2293374323429407, + 0.1140021204394844, + 0.0012381896969537412, + 0.11340677603264777, + 1, + 0.011793249472519423, + 0.008293225072094536, + 0.00469819890465153, + 0.0010715054815308995, + 0.0025551879416044767, + 0.006118546853369862, + 0.008605219072110835, + 0.0053601180131874334, + 0.008860142413597574, + 0.01248683583673295, + 0.01611352925985358, + 0.005878587160222206, + 0.013145429690188892, + 0.022280640305150038, + 0.01865394688201466, + 0.015027253458894031, + 0.012033905149325846, + 0.009040556839742916, + 0.005445530672299909, + 0.0018505045048569009, + 0.001744521662600853, + 0.005339547830043862, + 0.008760404091259945, + 0.012181260352490777, + 0.009902010591734853, + 0.007622760830993676 + ], + "isChangePoint": [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ] + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/AnomalyDetector/preview/v1.1-preview/examples/DeleteModel.json b/specification/cognitiveservices/data-plane/AnomalyDetector/preview/v1.1-preview/examples/DeleteModel.json new file mode 100644 index 000000000000..3ef10b1e0a2f --- /dev/null +++ b/specification/cognitiveservices/data-plane/AnomalyDetector/preview/v1.1-preview/examples/DeleteModel.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "modelId": "45aad126-aafd-11ea-b8fb-d89ef3400c5f", + "body": {} + }, + "responses": { + "204": {} + } +} diff --git a/specification/cognitiveservices/data-plane/AnomalyDetector/preview/v1.1-preview/examples/DetectAnomaly.json b/specification/cognitiveservices/data-plane/AnomalyDetector/preview/v1.1-preview/examples/DetectAnomaly.json new file mode 100644 index 000000000000..105d392901b6 --- /dev/null +++ b/specification/cognitiveservices/data-plane/AnomalyDetector/preview/v1.1-preview/examples/DetectAnomaly.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "modelId": "45aad126-aafd-11ea-b8fb-d89ef3400c5f", + "detectionRequest": { + "source": "https://multiadsample.blob.core.windows.net/data/sample_data_2_1000.zip?sp=rl&st=2020-12-04T06:03:47Z&se=2022-12-05T06:03:00Z&sv=2019-12-12&sr=b&sig=AZTbvZ7fcp3MdqGY%2FvGHJXJjUgjS4DneCGl7U5omq5c%3D", + "startTime": "2019-04-01T00:15:00Z", + "endTime": "2019-04-01T00:40:00Z" + } + }, + "responses": { + "201": { + "headers": { + "Location": "{Endpoint}/anomalydetector/v1.1-preview/multivariate/results/{resultId}" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/AnomalyDetector/preview/v1.1-preview/examples/EntireDetect.json b/specification/cognitiveservices/data-plane/AnomalyDetector/preview/v1.1-preview/examples/EntireDetect.json new file mode 100644 index 000000000000..648f4393922e --- /dev/null +++ b/specification/cognitiveservices/data-plane/AnomalyDetector/preview/v1.1-preview/examples/EntireDetect.json @@ -0,0 +1,513 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "body": { + "series": [ + { + "timestamp": "1972-01-01T00:00:00Z", + "value": 826 + }, + { + "timestamp": "1972-02-01T00:00:00Z", + "value": 799 + }, + { + "timestamp": "1972-03-01T00:00:00Z", + "value": 890 + }, + { + "timestamp": "1972-04-01T00:00:00Z", + "value": 900 + }, + { + "timestamp": "1972-05-01T00:00:00Z", + "value": 961 + }, + { + "timestamp": "1972-06-01T00:00:00Z", + "value": 935 + }, + { + "timestamp": "1972-07-01T00:00:00Z", + "value": 894 + }, + { + "timestamp": "1972-08-01T00:00:00Z", + "value": 855 + }, + { + "timestamp": "1972-09-01T00:00:00Z", + "value": 809 + }, + { + "timestamp": "1972-10-01T00:00:00Z", + "value": 810 + }, + { + "timestamp": "1972-11-01T00:00:00Z", + "value": 766 + }, + { + "timestamp": "1972-12-01T00:00:00Z", + "value": 805 + }, + { + "timestamp": "1973-01-01T00:00:00Z", + "value": 821 + }, + { + "timestamp": "1973-02-01T00:00:00Z", + "value": 773 + }, + { + "timestamp": "1973-03-01T00:00:00Z", + "value": 883 + }, + { + "timestamp": "1973-04-01T00:00:00Z", + "value": 898 + }, + { + "timestamp": "1973-05-01T00:00:00Z", + "value": 957 + }, + { + "timestamp": "1973-06-01T00:00:00Z", + "value": 924 + }, + { + "timestamp": "1973-07-01T00:00:00Z", + "value": 881 + }, + { + "timestamp": "1973-08-01T00:00:00Z", + "value": 837 + }, + { + "timestamp": "1973-09-01T00:00:00Z", + "value": 784 + }, + { + "timestamp": "1973-10-01T00:00:00Z", + "value": 791 + }, + { + "timestamp": "1973-11-01T00:00:00Z", + "value": 760 + }, + { + "timestamp": "1973-12-01T00:00:00Z", + "value": 802 + }, + { + "timestamp": "1974-01-01T00:00:00Z", + "value": 828 + }, + { + "timestamp": "1974-02-01T00:00:00Z", + "value": 1030 + }, + { + "timestamp": "1974-03-01T00:00:00Z", + "value": 889 + }, + { + "timestamp": "1974-04-01T00:00:00Z", + "value": 902 + }, + { + "timestamp": "1974-05-01T00:00:00Z", + "value": 969 + }, + { + "timestamp": "1974-06-01T00:00:00Z", + "value": 947 + }, + { + "timestamp": "1974-07-01T00:00:00Z", + "value": 908 + }, + { + "timestamp": "1974-08-01T00:00:00Z", + "value": 867 + }, + { + "timestamp": "1974-09-01T00:00:00Z", + "value": 815 + }, + { + "timestamp": "1974-10-01T00:00:00Z", + "value": 812 + }, + { + "timestamp": "1974-11-01T00:00:00Z", + "value": 773 + }, + { + "timestamp": "1974-12-01T00:00:00Z", + "value": 813 + }, + { + "timestamp": "1975-01-01T00:00:00Z", + "value": 834 + }, + { + "timestamp": "1975-02-01T00:00:00Z", + "value": 782 + }, + { + "timestamp": "1975-03-01T00:00:00Z", + "value": 892 + }, + { + "timestamp": "1975-04-01T00:00:00Z", + "value": 903 + }, + { + "timestamp": "1975-05-01T00:00:00Z", + "value": 966 + }, + { + "timestamp": "1975-06-01T00:00:00Z", + "value": 937 + }, + { + "timestamp": "1975-07-01T00:00:00Z", + "value": 896 + }, + { + "timestamp": "1975-08-01T00:00:00Z", + "value": 858 + }, + { + "timestamp": "1975-09-01T00:00:00Z", + "value": 817 + }, + { + "timestamp": "1975-10-01T00:00:00Z", + "value": 827 + }, + { + "timestamp": "1975-11-01T00:00:00Z", + "value": 797 + }, + { + "timestamp": "1975-12-01T00:00:00Z", + "value": 843 + } + ], + "maxAnomalyRatio": 0.25, + "sensitivity": 95, + "granularity": "monthly" + } + }, + "responses": { + "200": { + "body": { + "isNegativeAnomaly": [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "expectedValues": [ + 827.79409082439679, + 798.91337746719273, + 888.60584318071892, + 900.5606407986661, + 962.83894263783043, + 933.25916063069542, + 891.07841047996658, + 856.17816013636968, + 809.89872279089411, + 807.375129007505, + 764.31966824485175, + 803.933498594564, + 823.59006208830579, + 794.09056413342876, + 883.164245249282, + 894.84190006909535, + 956.84305911012575, + 927.62850551901136, + 885.812983784303, + 851.6424797402517, + 806.0927886943216, + 804.68268153120289, + 762.74070738882, + 804.0251702513732, + 825.35236625795585, + 798.04041887249764, + 889.30165055776979, + 902.4226124345937, + 965.867078532635, + 937.32004957366951, + 896.17205247111019, + 862.00873684136559, + 816.46623420974231, + 814.42977455247092, + 771.8614479159354, + 811.859271346729, + 831.89982792155206, + 802.947544797165, + 892.56844074350829, + 904.54882145338092, + 966.85270638447071, + 937.31683910030426, + 895.180003672544, + 860.36495963566347, + 814.17072859690427, + 811.9054862686213, + 769.10837696107421, + 809.23280846597038 + ], + "isPositiveAnomaly": [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "lowerMargins": [ + 41.389704541219835, + 39.945668873359637, + 44.430292159035943, + 45.028032039933308, + 48.14194713189152, + 46.662958031534771, + 44.553920523998329, + 42.808908006818484, + 40.494936139544706, + 40.368756450375251, + 38.215983412242586, + 40.196674929728196, + 41.179503104415289, + 39.704528206671441, + 44.1582122624641, + 44.742095003454772, + 47.842152955506293, + 46.381425275950569, + 44.290649189215145, + 42.582123987012579, + 40.30463943471608, + 40.234134076560146, + 38.137035369441, + 40.201258512568664, + 41.267618312897795, + 39.902020943624883, + 44.465082527888491, + 45.121130621729684, + 48.293353926631752, + 46.866002478683477, + 44.808602623555508, + 43.100436842068284, + 40.823311710487111, + 40.721488727623544, + 38.593072395796774, + 40.592963567336447, + 41.5949913960776, + 40.147377239858251, + 44.628422037175412, + 45.227441072669045, + 48.34263531922354, + 46.865841955015213, + 44.759000183627194, + 43.018247981783169, + 40.708536429845211, + 40.595274313431062, + 38.455418848053711, + 40.461640423298519 + ], + "period": 12, + "upperMargins": [ + 41.389704541219835, + 39.945668873359637, + 44.430292159035943, + 45.028032039933308, + 48.14194713189152, + 46.662958031534771, + 44.553920523998329, + 42.808908006818484, + 40.494936139544706, + 40.368756450375251, + 38.215983412242586, + 40.196674929728196, + 41.179503104415289, + 39.704528206671441, + 44.1582122624641, + 44.742095003454772, + 47.842152955506293, + 46.381425275950569, + 44.290649189215145, + 42.582123987012579, + 40.30463943471608, + 40.234134076560146, + 38.137035369441, + 40.201258512568664, + 41.267618312897795, + 39.902020943624883, + 44.465082527888491, + 45.121130621729684, + 48.293353926631752, + 46.866002478683477, + 44.808602623555508, + 43.100436842068284, + 40.823311710487111, + 40.721488727623544, + 38.593072395796774, + 40.592963567336447, + 41.5949913960776, + 40.147377239858251, + 44.628422037175412, + 45.227441072669045, + 48.34263531922354, + 46.865841955015213, + 44.759000183627194, + 43.018247981783169, + 40.708536429845211, + 40.595274313431062, + 38.455418848053711, + 40.461640423298519 + ], + "isAnomaly": [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ] + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/AnomalyDetector/preview/v1.1-preview/examples/ExportModel.json b/specification/cognitiveservices/data-plane/AnomalyDetector/preview/v1.1-preview/examples/ExportModel.json new file mode 100644 index 000000000000..19674b32ad0b --- /dev/null +++ b/specification/cognitiveservices/data-plane/AnomalyDetector/preview/v1.1-preview/examples/ExportModel.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "modelId": "45aad126-aafd-11ea-b8fb-d89ef3400c5f", + "body": {} + }, + "responses": { + "200": { + "headers": { + "content-type": "application/zip" + }, + "body": "{Binary}" + } + } +} diff --git a/specification/cognitiveservices/data-plane/AnomalyDetector/preview/v1.1-preview/examples/GetModel.json b/specification/cognitiveservices/data-plane/AnomalyDetector/preview/v1.1-preview/examples/GetModel.json new file mode 100644 index 000000000000..949ea1e1a4be --- /dev/null +++ b/specification/cognitiveservices/data-plane/AnomalyDetector/preview/v1.1-preview/examples/GetModel.json @@ -0,0 +1,158 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "modelId": "45aad126-aafd-11ea-b8fb-d89ef3400c5f", + "body": {} + }, + "responses": { + "200": { + "body": { + "modelId": "45aad126-aafd-11ea-b8fb-d89ef3400c5f", + "createdTime": "2020-06-30T00:00:00Z", + "lastUpdatedTime": "2020-06-30T00:00:00Z", + "modelInfo": { + "slidingWindow": 20, + "alignPolicy": { + "alignMode": "Outer", + "fillNAMethod": "Linear", + "paddingValue": 0 + }, + "source": "https://multiadsample.blob.core.windows.net/data/sample_data_2_1000.zip?sp=rl&st=2020-12-04T06:03:47Z&se=2022-12-05T06:03:00Z&sv=2019-12-12&sr=b&sig=AZTbvZ7fcp3MdqGY%2FvGHJXJjUgjS4DneCGl7U5omq5c%3D", + "startTime": "2019-04-01T00:00:00Z", + "endTime": "2019-04-02T00:00:00Z", + "displayName": "Devops-MultiAD", + "status": "READY", + "errors": [], + "diagnosticsInfo": { + "modelState": { + "epochIds": [ + 10, + 20, + 30, + 40, + 50, + 60, + 70, + 80, + 90, + 100 + ], + "trainLosses": [ + 0.6291328072547913, + 0.1671326905488968, + 0.12354248017072678, + 0.10259664058685303, + 0.09584927558898926, + 0.09069952368736267, + 0.08686016499996185, + 0.08603022992610931, + 0.08287354558706284, + 0.08235538005828857 + ], + "validationLosses": [ + 1.9232804775238037, + 1.0645641088485718, + 0.6031560301780701, + 0.5302737951278687, + 0.46980252861976624, + 0.4395163357257843, + 0.41829314827919006, + 0.40579143166542053, + 0.405649870634079, + 0.38492488861083984 + ], + "latenciesInSeconds": [ + 0.3398594856262207, + 0.3659665584564209, + 0.37360644340515137, + 0.35134077072143555, + 0.33703041076660156, + 0.31876277923583984, + 0.32833099365234375, + 0.3503587245941162, + 0.3080024719238281, + 0.3327946662902832 + ] + }, + "variableStates": [ + { + "variable": "ad_input", + "filledNARatio": 0, + "effectiveCount": 1441, + "startTime": "2019-04-01T00:00:00Z", + "endTime": "2019-04-02T00:00:00Z", + "errors": [] + }, + { + "variable": "ad_ontimer_output", + "filledNARatio": 0, + "effectiveCount": 1441, + "startTime": "2019-04-01T00:00:00Z", + "endTime": "2019-04-02T00:00:00Z", + "errors": [] + }, + { + "variable": "ingestion", + "filledNARatio": 0, + "effectiveCount": 1441, + "startTime": "2019-04-01T00:00:00Z", + "endTime": "2019-04-02T00:00:00Z", + "errors": [] + }, + { + "variable": "data_in_speed", + "filledNARatio": 0, + "effectiveCount": 1441, + "startTime": "2019-04-01T00:00:00Z", + "endTime": "2019-04-02T00:00:00Z", + "errors": [] + }, + { + "variable": "cpu", + "filledNARatio": 0, + "effectiveCount": 1441, + "startTime": "2019-04-01T00:00:00Z", + "endTime": "2019-04-02T00:00:00Z", + "errors": [] + }, + { + "variable": "ad_series_init", + "filledNARatio": 0, + "effectiveCount": 1441, + "startTime": "2019-04-01T00:00:00Z", + "endTime": "2019-04-02T00:00:00Z", + "errors": [] + }, + { + "variable": "flink_last_ckpt_duration", + "filledNARatio": 0, + "effectiveCount": 1441, + "startTime": "2019-04-01T00:00:00Z", + "endTime": "2019-04-02T00:00:00Z", + "errors": [] + }, + { + "variable": "data_out_speed", + "filledNARatio": 0, + "effectiveCount": 1441, + "startTime": "2019-04-01T00:00:00Z", + "endTime": "2019-04-02T00:00:00Z", + "errors": [] + }, + { + "variable": "ad_output", + "filledNARatio": 0, + "effectiveCount": 1441, + "startTime": "2019-04-01T00:00:00Z", + "endTime": "2019-04-02T00:00:00Z", + "errors": [] + } + ] + } + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/AnomalyDetector/preview/v1.1-preview/examples/GetResult.json b/specification/cognitiveservices/data-plane/AnomalyDetector/preview/v1.1-preview/examples/GetResult.json new file mode 100644 index 000000000000..ec4e255ed7fa --- /dev/null +++ b/specification/cognitiveservices/data-plane/AnomalyDetector/preview/v1.1-preview/examples/GetResult.json @@ -0,0 +1,409 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "resultId": "663884e6-b117-11ea-b3de-0242ac130004", + "body": {} + }, + "responses": { + "200": { + "body": { + "resultId": "663884e6-b117-11ea-b3de-0242ac130004", + "summary": { + "status": "READY", + "errors": [], + "variableStates": [ + { + "variable": "ad_input", + "filledNARatio": 0, + "effectiveCount": 26, + "startTime": "2019-04-01T00:00:00Z", + "endTime": "2019-04-01T00:25:00Z", + "errors": [] + }, + { + "variable": "ad_ontimer_output", + "filledNARatio": 0, + "effectiveCount": 26, + "startTime": "2019-04-01T00:00:00Z", + "endTime": "2019-04-01T00:25:00Z", + "errors": [] + }, + { + "variable": "ad_output", + "filledNARatio": 0, + "effectiveCount": 26, + "startTime": "2019-04-01T00:00:00Z", + "endTime": "2019-04-01T00:25:00Z", + "errors": [] + }, + { + "variable": "ad_series_init", + "filledNARatio": 0, + "effectiveCount": 26, + "startTime": "2019-04-01T00:00:00Z", + "endTime": "2019-04-01T00:25:00Z", + "errors": [] + }, + { + "variable": "cpu", + "filledNARatio": 0, + "effectiveCount": 26, + "startTime": "2019-04-01T00:00:00Z", + "endTime": "2019-04-01T00:25:00Z", + "errors": [] + }, + { + "variable": "data_in_speed", + "filledNARatio": 0, + "effectiveCount": 26, + "startTime": "2019-04-01T00:00:00Z", + "endTime": "2019-04-01T00:25:00Z", + "errors": [] + }, + { + "variable": "data_out_speed", + "filledNARatio": 0, + "effectiveCount": 26, + "startTime": "2019-04-01T00:00:00Z", + "endTime": "2019-04-01T00:25:00Z", + "errors": [] + }, + { + "variable": "flink_last_ckpt_duration", + "filledNARatio": 0, + "effectiveCount": 26, + "startTime": "2019-04-01T00:00:00Z", + "endTime": "2019-04-01T00:25:00Z", + "errors": [] + }, + { + "variable": "ingestion", + "filledNARatio": 0, + "effectiveCount": 26, + "startTime": "2019-04-01T00:00:00Z", + "endTime": "2019-04-01T00:25:00Z", + "errors": [] + } + ], + "setupInfo": { + "source": "https://multiadsample.blob.core.windows.net/data/sample_data_2_1000.zip?sp=rl&st=2020-12-04T06:03:47Z&se=2022-12-05T06:03:00Z&sv=2019-12-12&sr=b&sig=AZTbvZ7fcp3MdqGY%2FvGHJXJjUgjS4DneCGl7U5omq5c%3D", + "startTime": "2019-04-01T00:15:00Z", + "endTime": "2019-04-01T00:40:00Z" + } + }, + "results": [ + { + "timestamp": "2019-04-01T00:15:00Z", + "errors": [ + { + "code": "InsufficientHistoricalData", + "message": "historical data is not enough." + } + ] + }, + { + "timestamp": "2019-04-01T00:16:00Z", + "errors": [ + { + "code": "InsufficientHistoricalData", + "message": "historical data is not enough." + } + ] + }, + { + "timestamp": "2019-04-01T00:17:00Z", + "errors": [ + { + "code": "InsufficientHistoricalData", + "message": "historical data is not enough." + } + ] + }, + { + "timestamp": "2019-04-01T00:18:00Z", + "errors": [ + { + "code": "InsufficientHistoricalData", + "message": "historical data is not enough." + } + ] + }, + { + "timestamp": "2019-04-01T00:19:00Z", + "errors": [ + { + "code": "InsufficientHistoricalData", + "message": "historical data is not enough." + } + ] + }, + { + "timestamp": "2019-04-01T00:20:00Z", + "value": { + "contributors": [], + "isAnomaly": false, + "severity": 0.3509107994398884, + "score": 1.509107994398884 + } + }, + { + "timestamp": "2019-04-01T00:21:00Z", + "value": { + "contributors": [], + "isAnomaly": false, + "severity": 0.3278919065826584, + "score": 1.278919065826584 + } + }, + { + "timestamp": "2019-04-01T00:22:00Z", + "value": { + "contributors": [], + "isAnomaly": false, + "severity": 0.08801055597123958, + "score": 0.8801055597123958 + } + }, + { + "timestamp": "2019-04-01T00:23:00Z", + "value": { + "contributors": [], + "isAnomaly": false, + "severity": 0.2633898400714136, + "score": 1.633898400714136 + } + }, + { + "timestamp": "2019-04-01T00:24:00Z", + "value": { + "contributors": [], + "isAnomaly": false, + "severity": 0.4072371051419143, + "score": 1.072371051419143 + } + }, + { + "timestamp": "2019-04-01T00:25:00Z", + "value": { + "contributors": [], + "isAnomaly": false, + "severity": 0.3396915278974237, + "score": 1.396915278974237 + } + }, + { + "timestamp": "2019-04-01T00:26:00Z", + "value": { + "contributors": [], + "isAnomaly": false, + "severity": 0.09766117467968274, + "score": 0.9766117467968274 + } + }, + { + "timestamp": "2019-04-01T00:27:00Z", + "value": { + "contributors": [ + { + "contributionScore": 0.0007775013367514271, + "variable": "ad_ontimer_output" + }, + { + "contributionScore": 0.0007989604079048129, + "variable": "ad_series_init" + }, + { + "contributionScore": 0.0008900927229851369, + "variable": "ingestion" + }, + { + "contributionScore": 0.008068144477478554, + "variable": "cpu" + }, + { + "contributionScore": 0.008222036467507165, + "variable": "data_in_speed" + }, + { + "contributionScore": 0.008674941549594993, + "variable": "ad_input" + }, + { + "contributionScore": 0.02232242629793674, + "variable": "ad_output" + }, + { + "contributionScore": 0.1583773213660846, + "variable": "flink_last_ckpt_duration" + }, + { + "contributionScore": 0.9816531517495176, + "variable": "data_out_speed" + } + ], + "isAnomaly": true, + "severity": 0.42135109874230336, + "score": 1.213510987423033 + } + }, + { + "timestamp": "2019-04-01T00:28:00Z", + "value": { + "contributors": [], + "isAnomaly": false, + "severity": 0.3816131949694057, + "score": 1.816131949694057 + } + }, + { + "timestamp": "2019-04-01T00:29:00Z", + "value": { + "contributors": [], + "isAnomaly": false, + "severity": 0.181157797150171, + "score": 1.81157797150171 + } + }, + { + "timestamp": "2019-04-01T00:30:00Z", + "value": { + "contributors": [], + "isAnomaly": false, + "severity": 0.14995278606288692, + "score": 1.4995278606288691 + } + }, + { + "timestamp": "2019-04-01T00:31:00Z", + "value": { + "contributors": [], + "isAnomaly": false, + "severity": 0.32239701546817856, + "score": 1.2239701546817856 + } + }, + { + "timestamp": "2019-04-01T00:32:00Z", + "value": { + "contributors": [], + "isAnomaly": false, + "severity": 0.1314609956762691, + "score": 1.314609956762691 + } + }, + { + "timestamp": "2019-04-01T00:33:00Z", + "value": { + "contributors": [], + "isAnomaly": false, + "severity": 0.2099233009703312, + "score": 1.0992330097033123 + } + }, + { + "timestamp": "2019-04-01T00:34:00Z", + "value": { + "contributors": [], + "isAnomaly": false, + "severity": 0.37511272238900906, + "score": 1.751127223890091 + } + }, + { + "timestamp": "2019-04-01T00:35:00Z", + "value": { + "contributors": [], + "isAnomaly": false, + "severity": 0.20627882459097507, + "score": 1.0627882459097506 + } + }, + { + "timestamp": "2019-04-01T00:36:00Z", + "value": { + "contributors": [], + "isAnomaly": false, + "severity": 0.3418639342833588, + "score": 1.418639342833588 + } + }, + { + "timestamp": "2019-04-01T00:37:00Z", + "value": { + "contributors": [], + "isAnomaly": false, + "severity": 0.29763266205488187, + "score": 1.976326620548819 + } + }, + { + "timestamp": "2019-04-01T00:38:00Z", + "value": { + "contributors": [ + { + "contributionScore": 0.000535489231067294, + "variable": "ad_ontimer_output" + }, + { + "contributionScore": 0.001135482610182779, + "variable": "ad_output" + }, + { + "contributionScore": 0.0012076366721519864, + "variable": "ad_input" + }, + { + "contributionScore": 0.0012659992776771212, + "variable": "ad_series_init" + }, + { + "contributionScore": 0.0012904544081908315, + "variable": "ingestion" + }, + { + "contributionScore": 0.00888920821096907, + "variable": "data_in_speed" + }, + { + "contributionScore": 0.009422195014322475, + "variable": "cpu" + }, + { + "contributionScore": 0.1299721634743041, + "variable": "flink_last_ckpt_duration" + }, + { + "contributionScore": 0.9582214244072471, + "variable": "data_out_speed" + } + ], + "isAnomaly": true, + "severity": 0.39260817146673, + "score": 1.9260817146673 + } + }, + { + "timestamp": "2019-04-01T00:39:00Z", + "value": { + "contributors": [], + "isAnomaly": false, + "severity": 0.14112255682016128, + "score": 1.4112255682016128 + } + }, + { + "timestamp": "2019-04-01T00:40:00Z", + "value": { + "contributors": [], + "isAnomaly": false, + "severity": 0.17805261260751692, + "score": 1.7805261260751692 + } + } + ] + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/AnomalyDetector/preview/v1.1-preview/examples/LastDetect.json b/specification/cognitiveservices/data-plane/AnomalyDetector/preview/v1.1-preview/examples/LastDetect.json new file mode 100644 index 000000000000..f6aee0843243 --- /dev/null +++ b/specification/cognitiveservices/data-plane/AnomalyDetector/preview/v1.1-preview/examples/LastDetect.json @@ -0,0 +1,220 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "body": { + "series": [ + { + "timestamp": "1972-01-01T00:00:00Z", + "value": 826 + }, + { + "timestamp": "1972-02-01T00:00:00Z", + "value": 799 + }, + { + "timestamp": "1972-03-01T00:00:00Z", + "value": 890 + }, + { + "timestamp": "1972-04-01T00:00:00Z", + "value": 900 + }, + { + "timestamp": "1972-05-01T00:00:00Z", + "value": 961 + }, + { + "timestamp": "1972-06-01T00:00:00Z", + "value": 935 + }, + { + "timestamp": "1972-07-01T00:00:00Z", + "value": 894 + }, + { + "timestamp": "1972-08-01T00:00:00Z", + "value": 855 + }, + { + "timestamp": "1972-09-01T00:00:00Z", + "value": 809 + }, + { + "timestamp": "1972-10-01T00:00:00Z", + "value": 810 + }, + { + "timestamp": "1972-11-01T00:00:00Z", + "value": 766 + }, + { + "timestamp": "1972-12-01T00:00:00Z", + "value": 805 + }, + { + "timestamp": "1973-01-01T00:00:00Z", + "value": 821 + }, + { + "timestamp": "1973-02-01T00:00:00Z", + "value": 773 + }, + { + "timestamp": "1973-03-01T00:00:00Z", + "value": 883 + }, + { + "timestamp": "1973-04-01T00:00:00Z", + "value": 898 + }, + { + "timestamp": "1973-05-01T00:00:00Z", + "value": 957 + }, + { + "timestamp": "1973-06-01T00:00:00Z", + "value": 924 + }, + { + "timestamp": "1973-07-01T00:00:00Z", + "value": 881 + }, + { + "timestamp": "1973-08-01T00:00:00Z", + "value": 837 + }, + { + "timestamp": "1973-09-01T00:00:00Z", + "value": 784 + }, + { + "timestamp": "1973-10-01T00:00:00Z", + "value": 791 + }, + { + "timestamp": "1973-11-01T00:00:00Z", + "value": 760 + }, + { + "timestamp": "1973-12-01T00:00:00Z", + "value": 802 + }, + { + "timestamp": "1974-01-01T00:00:00Z", + "value": 828 + }, + { + "timestamp": "1974-02-01T00:00:00Z", + "value": 1030 + }, + { + "timestamp": "1974-03-01T00:00:00Z", + "value": 889 + }, + { + "timestamp": "1974-04-01T00:00:00Z", + "value": 902 + }, + { + "timestamp": "1974-05-01T00:00:00Z", + "value": 969 + }, + { + "timestamp": "1974-06-01T00:00:00Z", + "value": 947 + }, + { + "timestamp": "1974-07-01T00:00:00Z", + "value": 908 + }, + { + "timestamp": "1974-08-01T00:00:00Z", + "value": 867 + }, + { + "timestamp": "1974-09-01T00:00:00Z", + "value": 815 + }, + { + "timestamp": "1974-10-01T00:00:00Z", + "value": 812 + }, + { + "timestamp": "1974-11-01T00:00:00Z", + "value": 773 + }, + { + "timestamp": "1974-12-01T00:00:00Z", + "value": 813 + }, + { + "timestamp": "1975-01-01T00:00:00Z", + "value": 834 + }, + { + "timestamp": "1975-02-01T00:00:00Z", + "value": 782 + }, + { + "timestamp": "1975-03-01T00:00:00Z", + "value": 892 + }, + { + "timestamp": "1975-04-01T00:00:00Z", + "value": 903 + }, + { + "timestamp": "1975-05-01T00:00:00Z", + "value": 966 + }, + { + "timestamp": "1975-06-01T00:00:00Z", + "value": 937 + }, + { + "timestamp": "1975-07-01T00:00:00Z", + "value": 896 + }, + { + "timestamp": "1975-08-01T00:00:00Z", + "value": 858 + }, + { + "timestamp": "1975-09-01T00:00:00Z", + "value": 817 + }, + { + "timestamp": "1975-10-01T00:00:00Z", + "value": 827 + }, + { + "timestamp": "1975-11-01T00:00:00Z", + "value": 797 + }, + { + "timestamp": "1975-12-01T00:00:00Z", + "value": 843 + } + ], + "maxAnomalyRatio": 0.25, + "sensitivity": 95, + "granularity": "monthly" + } + }, + "responses": { + "200": { + "body": { + "isAnomaly": false, + "isPositiveAnomaly": false, + "isNegativeAnomaly": false, + "period": 12, + "expectedValue": 809.23280846597038, + "upperMargin": 40.461640423298519, + "lowerMargin": 40.461640423298519, + "suggestedWindow": 49 + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/AnomalyDetector/preview/v1.1-preview/examples/ListModel.json b/specification/cognitiveservices/data-plane/AnomalyDetector/preview/v1.1-preview/examples/ListModel.json new file mode 100644 index 000000000000..2ed145f935b1 --- /dev/null +++ b/specification/cognitiveservices/data-plane/AnomalyDetector/preview/v1.1-preview/examples/ListModel.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "body": {} + }, + "responses": { + "200": { + "body": { + "models": [ + { + "modelId": "45aad126-aafd-11ea-b8fb-d89ef3400c5f", + "createdTime": "2020-06-30T00:00:00Z", + "lastUpdatedTime": "2020-06-30T00:00:00Z", + "status": "READY", + "displayName": "DevOps-MultiAD", + "variablesCount": 18 + } + ], + "currentCount": 1, + "maxCount": 20, + "nextLink": "" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/AnomalyDetector/preview/v1.1-preview/examples/TrainModel.json b/specification/cognitiveservices/data-plane/AnomalyDetector/preview/v1.1-preview/examples/TrainModel.json new file mode 100644 index 000000000000..d59b4c760d9c --- /dev/null +++ b/specification/cognitiveservices/data-plane/AnomalyDetector/preview/v1.1-preview/examples/TrainModel.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "modelRequest": { + "slidingWindow": 20, + "alignPolicy": { + "alignMode": "Outer", + "fillNAMethod": "Linear", + "paddingValue": 0 + }, + "source": "https://multiadsample.blob.core.windows.net/data/sample_data_2_1000.zip?sp=rl&st=2020-12-04T06:03:47Z&se=2022-12-05T06:03:00Z&sv=2019-12-12&sr=b&sig=AZTbvZ7fcp3MdqGY%2FvGHJXJjUgjS4DneCGl7U5omq5c%3D", + "startTime": "2019-04-01T00:00:00Z", + "endTime": "2019-04-02T00:00:00Z", + "displayName": "Devops-MultiAD" + } + }, + "responses": { + "201": { + "headers": { + "Location": "{Endpoint}/anomalydetector/v1.1-preview/multivariate/models/{modelId}" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/AnomalyDetector/readme.go.md b/specification/cognitiveservices/data-plane/AnomalyDetector/readme.go.md index c6d1e676d2f1..afc8e126a14d 100644 --- a/specification/cognitiveservices/data-plane/AnomalyDetector/readme.go.md +++ b/specification/cognitiveservices/data-plane/AnomalyDetector/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: anomalydetector clear-output-folder: true diff --git a/specification/cognitiveservices/data-plane/AnomalyDetector/readme.md b/specification/cognitiveservices/data-plane/AnomalyDetector/readme.md index b2cadf859aa1..c3c059c0cb7c 100644 --- a/specification/cognitiveservices/data-plane/AnomalyDetector/readme.md +++ b/specification/cognitiveservices/data-plane/AnomalyDetector/readme.md @@ -4,11 +4,10 @@ Configuration for generating Anomaly Detector SDK. -The current release is `release_1_0`. +The current release is `release_1_1_preview`. ``` yaml - -tag: release_1_0 +tag: release_1_1_preview add-credentials: true openapi-type: data-plane ``` @@ -22,6 +21,15 @@ These settings apply only when `--tag=release_1_0` is specified on the command l input-file: stable/v1.0/AnomalyDetector.json ``` +### Release 1.1-preview +These settings apply only when `--tag=release_1_1_preview` is specified on the command line. + +``` yaml $(tag) == 'release_1_1_preview' +input-file: + - preview/v1.1-preview/AnomalyDetector.json + - preview/v1.1-preview/MultivariateAnomalyDetector.json +``` + ## Swagger to SDK This section describes what SDK should be generated by the automatic system. @@ -42,14 +50,13 @@ swagger-to-sdk: These settings apply only when `--csharp` is specified on the command line. -``` yaml $(csharp) -csharp: - sync-methods: None - license-header: MICROSOFT_MIT_NO_VERSION - azure-arm: false - namespace: Microsoft.Azure.CognitiveServices.AnomalyDetector - output-folder: $(csharp-sdks-folder)/cognitiveservices/AnomalyDetector/src/Generated - clear-output-folder: true +```yaml $(csharp) +sync-methods: None +license-header: MICROSOFT_MIT_NO_VERSION +azure-arm: false +namespace: Microsoft.Azure.CognitiveServices.AnomalyDetector +output-folder: $(csharp-sdks-folder)/cognitiveservices/AnomalyDetector/src/Generated +clear-output-folder: true ``` ## Python @@ -65,19 +72,18 @@ See configuration in [readme.go.md](./readme.go.md) These settings apply only when `--java` is specified on the command line. Please also specify `--azure-libraries-for-java-folder=`. -``` yaml $(java) -java: - azure-arm: true - namespace: com.microsoft.azure.cognitiveservices.anomalydetector - license-header: MICROSOFT_MIT_NO_CODEGEN - payload-flattening-threshold: 1 - output-folder: $(azure-libraries-for-java-folder)/cognitiveservices/data-plane/anomalydetector - with-optional-parameters: true - with-single-async-method: true - regenerate-manager: true +```yaml $(java) +azure-arm: true +namespace: com.microsoft.azure.cognitiveservices.anomalydetector +license-header: MICROSOFT_MIT_NO_CODEGEN +payload-flattening-threshold: 1 +output-folder: $(azure-libraries-for-java-folder)/cognitiveservices/data-plane/anomalydetector +with-optional-parameters: true +with-single-async-method: true +regenerate-manager: true ``` -## Multi-API/Profile support for AutoRest v3 generators +## Multi-API/Profile support for AutoRest v3 generators AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. @@ -90,14 +96,13 @@ require: $(this-folder)/../../../../profiles/readme.md # all the input files across all versions input-file: - $(this-folder)/stable/v1.0/AnomalyDetector.json - + - $(this-folder)/preview/v1.1-preview/MultivariateAnomalyDetector.json ``` -If there are files that should not be in the `all-api-versions` set, +If there are files that should not be in the `all-api-versions` set, uncomment the `exclude-file` section below and add the file paths. ``` yaml $(tag) == 'all-api-versions' -#exclude-file: +#exclude-file: # - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json ``` - diff --git a/specification/cognitiveservices/data-plane/AnomalyDetector/readme.python.md b/specification/cognitiveservices/data-plane/AnomalyDetector/readme.python.md index f02d74f86624..de85be7e605a 100644 --- a/specification/cognitiveservices/data-plane/AnomalyDetector/readme.python.md +++ b/specification/cognitiveservices/data-plane/AnomalyDetector/readme.python.md @@ -4,7 +4,7 @@ These settings apply only when `--python` is specified on the command line. Please also specify `--python-sdks-folder=`. Use `--python-mode=update` if you already have a setup.py and just want to update the code itself. -``` yaml +```yaml $(python) python-mode: create license-header: MICROSOFT_MIT_NO_VERSION add-credentials: true @@ -16,11 +16,13 @@ package-name: azure-ai-anomalydetector package-version: 0.2.0 clear-output-folder: true ``` -``` yaml $(python-mode) == 'update' + +```yaml $(python) && $(python-mode) == 'update' no-namespace-folders: true output-folder: $(python-sdks-folder)/anomalydetector/azure-ai-anomalydetector/azure/ai/anomalydetector ``` -``` yaml $(python-mode) == 'create' + +```yaml $(python) && $(python-mode) == 'create' basic-setup-py: true output-folder: $(python-sdks-folder)/anomalydetector/azure-ai-anomalydetector ``` diff --git a/specification/cognitiveservices/data-plane/AnomalyDetector/readme.ruby.md b/specification/cognitiveservices/data-plane/AnomalyDetector/readme.ruby.md deleted file mode 100644 index 5ea0ff43e459..000000000000 --- a/specification/cognitiveservices/data-plane/AnomalyDetector/readme.ruby.md +++ /dev/null @@ -1,27 +0,0 @@ -## Ruby - -These settings apply only when `--ruby` is specified on the command line. - -``` yaml -package-name: azure_cognitiveservices_anomalydetector -package-version: "0.16.0" -azure-arm: true -``` - -### Ruby multi-api - -``` yaml $(ruby) && $(multiapi) -batch: - - tag: release_1_0 -``` - -### Tag: release_1_0 and ruby - -These settings apply only when `--tag=release_1_0 --ruby` is specified on the command line. -Please also specify `--ruby-sdks-folder=`. - -``` yaml $(tag) == 'release_1_0' && $(ruby) -namespace: "Azure::CognitiveServices::AnomalyDetector::V1_0" -output-folder: $(ruby-sdks-folder)/data/azure_cognitiveservices_anomalydetector/lib -title: "AnomalyDetectorClient" -``` diff --git a/specification/cognitiveservices/data-plane/AutoSuggest/readme.go.md b/specification/cognitiveservices/data-plane/AutoSuggest/readme.go.md index 51191370d554..d47b10ca71cc 100644 --- a/specification/cognitiveservices/data-plane/AutoSuggest/readme.go.md +++ b/specification/cognitiveservices/data-plane/AutoSuggest/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: autosuggest clear-output-folder: true ``` diff --git a/specification/cognitiveservices/data-plane/ComputerVision/readme.go.md b/specification/cognitiveservices/data-plane/ComputerVision/readme.go.md index 2ce01c4470c6..4010316f26f8 100644 --- a/specification/cognitiveservices/data-plane/ComputerVision/readme.go.md +++ b/specification/cognitiveservices/data-plane/ComputerVision/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: computervision clear-output-folder: true ``` diff --git a/specification/cognitiveservices/data-plane/ComputerVision/stable/v3.2/Ocr.json b/specification/cognitiveservices/data-plane/ComputerVision/stable/v3.2/Ocr.json index 69b91791d362..665d0e1f52d8 100644 --- a/specification/cognitiveservices/data-plane/ComputerVision/stable/v3.2/Ocr.json +++ b/specification/cognitiveservices/data-plane/ComputerVision/stable/v3.2/Ocr.json @@ -48,6 +48,9 @@ }, { "$ref": "#/parameters/OcrModelVersion" + }, + { + "$ref": "#/parameters/ReadingOrder" } ], "consumes": [ @@ -133,6 +136,12 @@ }, { "$ref": "#/parameters/Pages" + }, + { + "$ref": "#/parameters/OcrModelVersion" + }, + { + "$ref": "#/parameters/ReadingOrder" } ], "consumes": [ @@ -594,6 +603,15 @@ "type": "string", "pattern": "^(latest|\\d{4}-\\d{2}-\\d{2})(-preview)?$", "default": "latest" + }, + "ReadingOrder": { + "name": "readingOrder", + "in": "query", + "description": "Optional parameter to specify which reading order algorithm should be applied when ordering the extract text elements. Can be either 'basic' or 'natural'. Will default to 'basic' if not specified", + "required": false, + "x-ms-parameter-location": "method", + "type": "string", + "default": "basic" } } } diff --git a/specification/cognitiveservices/data-plane/ContentModerator/readme.go.md b/specification/cognitiveservices/data-plane/ContentModerator/readme.go.md index 554ae9bbae68..d4619807a82b 100644 --- a/specification/cognitiveservices/data-plane/ContentModerator/readme.go.md +++ b/specification/cognitiveservices/data-plane/ContentModerator/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: contentmoderator clear-output-folder: true ``` diff --git a/specification/cognitiveservices/data-plane/CustomImageSearch/readme.go.md b/specification/cognitiveservices/data-plane/CustomImageSearch/readme.go.md index 85b113782f7b..5b8cff16b279 100644 --- a/specification/cognitiveservices/data-plane/CustomImageSearch/readme.go.md +++ b/specification/cognitiveservices/data-plane/CustomImageSearch/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: customimagesearch clear-output-folder: true ``` diff --git a/specification/cognitiveservices/data-plane/CustomVision/Prediction/readme.go.md b/specification/cognitiveservices/data-plane/CustomVision/Prediction/readme.go.md index 94109533a0d7..2527f2f05fa9 100644 --- a/specification/cognitiveservices/data-plane/CustomVision/Prediction/readme.go.md +++ b/specification/cognitiveservices/data-plane/CustomVision/Prediction/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: prediction clear-output-folder: true ``` diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/readme.go.md b/specification/cognitiveservices/data-plane/CustomVision/Training/readme.go.md index e772a9b2b5db..ef79e0d52c45 100644 --- a/specification/cognitiveservices/data-plane/CustomVision/Training/readme.go.md +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: training clear-output-folder: true ``` diff --git a/specification/cognitiveservices/data-plane/CustomWebSearch/readme.go.md b/specification/cognitiveservices/data-plane/CustomWebSearch/readme.go.md index 98124fcd1a4f..8dc118576091 100644 --- a/specification/cognitiveservices/data-plane/CustomWebSearch/readme.go.md +++ b/specification/cognitiveservices/data-plane/CustomWebSearch/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: customsearch clear-output-folder: true ``` diff --git a/specification/cognitiveservices/data-plane/EntitySearch/readme.go.md b/specification/cognitiveservices/data-plane/EntitySearch/readme.go.md index af1d8fc4eddc..194916a7ba62 100644 --- a/specification/cognitiveservices/data-plane/EntitySearch/readme.go.md +++ b/specification/cognitiveservices/data-plane/EntitySearch/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: entitysearch clear-output-folder: true ``` diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/Face.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/Face.json new file mode 100644 index 000000000000..e7cef17c8c3f --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/Face.json @@ -0,0 +1,5548 @@ +{ + "swagger": "2.0", + "info": { + "version": "1.0-preview", + "title": "Face Client", + "description": "An API for face detection, verification, and identification." + }, + "securityDefinitions": { + "apim_key": { + "type": "apiKey", + "name": "Ocp-Apim-Subscription-Key", + "in": "header" + } + }, + "security": [ + { + "apim_key": [] + } + ], + "x-ms-parameterized-host": { + "hostTemplate": "{Endpoint}/face/v1.0-preview", + "useSchemePrefix": false, + "parameters": [ + { + "$ref": "#/parameters/Endpoint" + } + ] + }, + "paths": { + "/findsimilars": { + "post": { + "description": "Given query face's faceId, to search the similar-looking faces from a faceId array, a face list or a large face list. faceId array contains the faces created by [Face - Detect With Url](https://docs.microsoft.com/rest/api/faceapi/face/detectwithurl) or [Face - Detect With Stream](https://docs.microsoft.com/rest/api/faceapi/face/detectwithstream), which will expire at the time specified by faceIdTimeToLive after creation. A \"faceListId\" is created by [FaceList - Create](https://docs.microsoft.com/rest/api/faceapi/facelist/create) containing persistedFaceIds that will not expire. And a \"largeFaceListId\" is created by [LargeFaceList - Create](https://docs.microsoft.com/rest/api/faceapi/largefacelist/create) containing persistedFaceIds that will also not expire. Depending on the input the returned similar faces list contains faceIds or persistedFaceIds ranked by similarity.\n
Find similar has two working modes, \"matchPerson\" and \"matchFace\". \"matchPerson\" is the default mode that it tries to find faces of the same person as possible by using internal same-person thresholds. It is useful to find a known person's other photos. Note that an empty list will be returned if no faces pass the internal thresholds. \"matchFace\" mode ignores same-person thresholds and returns ranked similar faces anyway, even the similarity is low. It can be used in the cases like searching celebrity-looking faces.\n
The 'recognitionModel' associated with the query face's faceId should be the same as the 'recognitionModel' used by the target faceId array, face list or large face list.\n", + "operationId": "Face_FindSimilar", + "parameters": [ + { + "name": "body", + "in": "body", + "description": "Request body for Find Similar.", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/FindSimilarRequest" + } + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "A successful call returns an array of the most similar faces represented in faceId if the input parameter is faceIds or persistedFaceId if the input parameter is faceListId.", + "schema": { + "$ref": "#/definitions/SimilarFaces" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "Find similar results example": { + "$ref": "./examples/FindSimilar.json" + } + } + } + }, + "/group": { + "post": { + "description": "Divide candidate faces into groups based on face similarity.
\n* The output is one or more disjointed face groups and a messyGroup. A face group contains faces that have similar looking, often of the same person. Face groups are ranked by group size, i.e. number of faces. Notice that faces belonging to a same person might be split into several groups in the result.\n* MessyGroup is a special face group containing faces that cannot find any similar counterpart face from original faces. The messyGroup will not appear in the result if all faces found their counterparts.\n* Group API needs at least 2 candidate faces and 1000 at most. We suggest to try [Face - Verify](https://docs.microsoft.com/rest/api/faceapi/face/verifyfacetoface) when you only have 2 candidate faces.\n* The 'recognitionModel' associated with the query faces' faceIds should be the same.\n", + "operationId": "Face_Group", + "parameters": [ + { + "name": "body", + "description": "Request body for grouping.", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/GroupRequest" + } + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "A successful call returns one or more groups of similar faces (rank by group size) and a messyGroup.", + "schema": { + "$ref": "#/definitions/GroupResult" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "Group example": { + "$ref": "./examples/Group.json" + } + } + } + }, + "/identify": { + "post": { + "description": "1-to-many identification to find the closest matches of the specific query person face from a person group, large person group, person directory dynamic person group or person directory personIds array.\n
For each face in the faceIds array, Face Identify will compute similarities between the query face and all the faces in the person group (given by personGroupId) or large person group (given by largePersonGroupId), and return candidate person(s) for that face ranked by similarity confidence. The person group/large person group should be trained to make it ready for identification. See more in [PersonGroup - Train](https://docs.microsoft.com/rest/api/faceapi/persongroup/train) and [LargePersonGroup - Train](https://docs.microsoft.com/rest/api/faceapi/largepersongroup/train).\n
\n \nRemarks:
\n* The algorithm allows more than one face to be identified independently at the same request, but no more than 10 faces.\n* Each person in the person group/large person group could have more than one face, but no more than 248 faces.\n* Higher face image quality means better identification precision. Please consider high-quality faces: frontal, clear, and face size is 200x200 pixels (100 pixels between eyes) or bigger.\n* Number of candidates returned is restricted by maxNumOfCandidatesReturned and confidenceThreshold. If no person is identified, the returned candidates will be an empty array.\n* Try [Face - Find Similar](https://docs.microsoft.com/rest/api/faceapi/face/findsimilar) when you need to find similar faces from a face list/large face list instead of a person group/large person group.\n* The 'recognitionModel' associated with the query faces' faceIds should be the same as the 'recognitionModel' used by the target person group or large person group.\n", + "operationId": "Face_Identify", + "parameters": [ + { + "name": "body", + "description": "Request body for identify operation.", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/IdentifyRequest" + } + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "A successful call returns the identified candidate person(s) for each query face.", + "schema": { + "$ref": "#/definitions/IdentifyResults" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "Identify example": { + "$ref": "./examples/Identify.json" + } + } + } + }, + "/verify": { + "post": { + "description": "Verify whether two faces belong to a same person or whether one face belongs to a person.\n
\nRemarks:
\n* Higher face image quality means better identification precision. Please consider high-quality faces: frontal, clear, and face size is 200x200 pixels (100 pixels between eyes) or bigger.\n* For the scenarios that are sensitive to accuracy please make your own judgment.\n* The 'recognitionModel' associated with the query faces' faceIds should be the same as the 'recognitionModel' used by the target face, person group or large person group.\n", + "operationId": "Face_VerifyFaceToFace", + "parameters": [ + { + "name": "body", + "description": "Request body for face to face verification.", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/VerifyFaceToFaceRequest" + } + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "A successful call returns the verification result.", + "schema": { + "$ref": "#/definitions/VerifyResult" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "Verify faces example": { + "$ref": "./examples/VerifyFaceToFace.json" + } + } + } + }, + "/persongroups/{personGroupId}/persons": { + "post": { + "description": "Create a new person in a specified person group.", + "operationId": "PersonGroupPerson_Create", + "parameters": [ + { + "$ref": "#/parameters/personGroupId" + }, + { + "name": "body", + "description": "Request body for creating new person.", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/NameAndUserDataContract" + } + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "A successful call returns a new personId created.", + "schema": { + "$ref": "#/definitions/Person" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "Create new person for person group example": { + "$ref": "./examples/CreateNewPersonGroupPerson.json" + } + } + }, + "get": { + "description": "List all persons in a person group, and retrieve person information (including personId, name, userData and persistedFaceIds of registered faces of the person).", + "operationId": "PersonGroupPerson_List", + "parameters": [ + { + "$ref": "#/parameters/personGroupId" + }, + { + "name": "start", + "description": "Starting person id to return (used to list a range of persons).", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "top", + "description": "Number of persons to return starting with the person id indicated by the 'start' parameter.", + "in": "query", + "required": false, + "type": "integer", + "minimum": 1, + "maximum": 1000 + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "A successful call returns an array of person information that belong to the person group.", + "schema": { + "$ref": "#/definitions/Persons" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "List persons in person group": { + "$ref": "./examples/ListPersonGroupPersons.json" + } + } + } + }, + "/persongroups/{personGroupId}/persons/{personId}": { + "delete": { + "description": "Delete an existing person from a person group. The persistedFaceId, userData, person name and face feature in the person entry will all be deleted.", + "operationId": "PersonGroupPerson_Delete", + "parameters": [ + { + "$ref": "#/parameters/personGroupId" + }, + { + "$ref": "#/parameters/personId" + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "A successful call returns an empty response body." + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "Delete an existing person example": { + "$ref": "./examples/DeletePersonGroupPerson.json" + } + } + }, + "get": { + "description": "Retrieve a person's information, including registered persisted faces, name and userData.", + "operationId": "PersonGroupPerson_Get", + "parameters": [ + { + "$ref": "#/parameters/personGroupId" + }, + { + "$ref": "#/parameters/personId" + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "A successful call returns the person's information.", + "schema": { + "$ref": "#/definitions/Person" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "Get person example": { + "$ref": "./examples/GetPersonGroupPerson.json" + } + } + }, + "patch": { + "description": "Update name or userData of a person.", + "operationId": "PersonGroupPerson_Update", + "parameters": [ + { + "$ref": "#/parameters/personGroupId" + }, + { + "$ref": "#/parameters/personId" + }, + { + "name": "body", + "description": "Request body for person update operation.", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/NameAndUserDataContract" + } + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "A successful call returns an empty response body." + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "Update person example": { + "$ref": "./examples/UpdatePersonGroupPerson.json" + } + } + } + }, + "/persongroups/{personGroupId}/persons/{personId}/persistedfaces/{persistedFaceId}": { + "delete": { + "description": "Delete a face from a person in a person group by specified personGroupId, personId and persistedFaceId.\n
Adding/deleting faces to/from a same person will be processed sequentially. Adding/deleting faces to/from different persons are processed in parallel.", + "operationId": "PersonGroupPerson_DeleteFace", + "parameters": [ + { + "$ref": "#/parameters/personGroupId" + }, + { + "$ref": "#/parameters/personId" + }, + { + "$ref": "#/parameters/persistedFaceId" + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "A successful call returns an empty response body." + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "Delete face from person example": { + "$ref": "./examples/DeletePersonGroupPersonFace.json" + } + } + }, + "get": { + "description": "Retrieve information about a persisted face (specified by persistedFaceId, personId and its belonging personGroupId).", + "operationId": "PersonGroupPerson_GetFace", + "parameters": [ + { + "$ref": "#/parameters/personGroupId" + }, + { + "$ref": "#/parameters/personId" + }, + { + "$ref": "#/parameters/persistedFaceId" + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "A successful call returns target persisted face's information (persistedFaceId and userData).", + "schema": { + "$ref": "#/definitions/PersistedFace" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "Get persisted face example": { + "$ref": "./examples/GetPersonGroupPersistedFace.json" + } + } + }, + "patch": { + "description": "Add a face to a person into a person group for face identification or verification. To deal with an image contains multiple faces, input face can be specified as an image with a targetFace rectangle. It returns a persistedFaceId representing the added face. No image will be stored. Only the extracted face feature will be stored on server until [PersonGroup PersonFace - Delete](https://docs.microsoft.com/rest/api/faceapi/persongroupperson/deleteface), [PersonGroup Person - Delete](https://docs.microsoft.com/rest/api/faceapi/persongroupperson/delete) or [PersonGroup - Delete](https://docs.microsoft.com/rest/api/faceapi/persongroup/delete) is called.\n
Note persistedFaceId is different from faceId generated by [Face - Detect](https://docs.microsoft.com/rest/api/faceapi/face/detectwithurl).\n* Higher face image quality means better recognition precision. Please consider high-quality faces: frontal, clear, and face size is 200x200 pixels (100 pixels between eyes) or bigger.\n* Each person entry can hold up to 248 faces.\n* JPEG, PNG, GIF (the first frame), and BMP format are supported. The allowed image file size is from 1KB to 6MB.\n* \"targetFace\" rectangle should contain one face. Zero or multiple faces will be regarded as an error. If the provided \"targetFace\" rectangle is not returned from [Face - Detect](https://docs.microsoft.com/rest/api/faceapi/face/detectwithurl), there’s no guarantee to detect and add the face successfully.\n* Out of detectable face size (36x36 - 4096x4096 pixels), large head-pose, or large occlusions will cause failures.\n* Adding/deleting faces to/from a same person will be processed sequentially. Adding/deleting faces to/from different persons are processed in parallel.", + "operationId": "PersonGroupPerson_UpdateFace", + "parameters": [ + { + "$ref": "#/parameters/personGroupId" + }, + { + "$ref": "#/parameters/personId" + }, + { + "$ref": "#/parameters/persistedFaceId" + }, + { + "name": "body", + "description": "Request body for updating persisted face.", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/UpdateFaceRequest" + } + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "A successful call returns an empty response body." + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "Update person face example": { + "$ref": "./examples/UpdatePersonGroupPersonFace.json" + } + } + } + }, + "/persongroups/{personGroupId}": { + "put": { + "description": "Create a new person group with specified personGroupId, name, user-provided userData and recognitionModel.\n
A person group is the container of the uploaded person data, including face recognition features.\n
After creation, use [PersonGroup Person - Create](https://docs.microsoft.com/rest/api/faceapi/persongroupperson/create) to add persons into the group, and then call [PersonGroup - Train](https://docs.microsoft.com/rest/api/faceapi/persongroup/train) to get this group ready for [Face - Identify](https://docs.microsoft.com/rest/api/faceapi/face/identify).\n
No image will be stored. Only the person's extracted face features and userData will be stored on server until [PersonGroup Person - Delete](https://docs.microsoft.com/rest/api/faceapi/persongroupperson/delete) or [PersonGroup - Delete](https://docs.microsoft.com/rest/api/faceapi/persongroup/delete) is called.\n
'recognitionModel' should be specified to associate with this person group. The default value for 'recognitionModel' is 'recognition_01', if the latest model needed, please explicitly specify the model you need in this parameter. New faces that are added to an existing person group will use the recognition model that's already associated with the collection. Existing face features in a person group can't be updated to features extracted by another version of recognition model.\n\nPerson group quota:\n* Free-tier subscription quota: 1,000 person groups. Each holds up to 1,000 persons.\n* S0-tier subscription quota: 1,000,000 person groups. Each holds up to 10,000 persons.\n* to handle larger scale face identification problem, please consider using [LargePersonGroup](https://docs.microsoft.com/rest/api/faceapi/largepersongroup).", + "operationId": "PersonGroup_Create", + "parameters": [ + { + "$ref": "#/parameters/personGroupId" + }, + { + "name": "body", + "description": "Request body for creating new person group.", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/MetaDataContract" + } + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "A successful call returns an empty response body." + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "Create new person group example": { + "$ref": "./examples/CreateNewPersonGroup.json" + } + } + }, + "delete": { + "description": "Delete an existing person group. Persisted face features of all people in the person group will also be deleted.", + "operationId": "PersonGroup_Delete", + "parameters": [ + { + "$ref": "#/parameters/personGroupId" + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "A successful call returns an empty response body." + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "Delete a person group example": { + "$ref": "./examples/DeletePersonGroup.json" + } + } + }, + "get": { + "description": "Retrieve person group name, userData and recognitionModel. To get person information under this personGroup, use [PersonGroup Person - List](https://docs.microsoft.com/rest/api/faceapi/persongroupperson/list).", + "operationId": "PersonGroup_Get", + "parameters": [ + { + "$ref": "#/parameters/personGroupId" + }, + { + "$ref": "#/parameters/returnRecognitionModel" + } + ], + "responses": { + "200": { + "description": "A successful call returns the person group's information.", + "schema": { + "$ref": "#/definitions/PersonGroup" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get person group example": { + "$ref": "./examples/GetPersonGroup.json" + } + } + }, + "patch": { + "description": "Update an existing person group's display name and userData. The properties which does not appear in request body will not be updated.", + "operationId": "PersonGroup_Update", + "parameters": [ + { + "$ref": "#/parameters/personGroupId" + }, + { + "name": "body", + "description": "Request body for updating person group.", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/NameAndUserDataContract" + } + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "A successful call returns an empty response body." + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "Update person group example": { + "$ref": "./examples/UpdatePersonGroup.json" + } + } + } + }, + "/persongroups/{personGroupId}/training": { + "get": { + "description": "Retrieve the training status of a person group (completed or ongoing).", + "operationId": "PersonGroup_GetTrainingStatus", + "parameters": [ + { + "$ref": "#/parameters/personGroupId" + } + ], + "responses": { + "200": { + "description": "A successful call returns the person group's training status.", + "schema": { + "$ref": "#/definitions/TrainingStatus" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get person group's training status example": { + "$ref": "./examples/GetPersonGroupTrainingStatus.json" + } + } + } + }, + "/persongroups": { + "get": { + "description": "List person groups’ personGroupId, name, userData and recognitionModel.
\n* Person groups are stored in alphabetical order of personGroupId.\n* \"start\" parameter (string, optional) is a user-provided personGroupId value that returned entries have larger ids by string comparison. \"start\" set to empty to indicate return from the first item.\n* \"top\" parameter (int, optional) specifies the number of entries to return. A maximal of 1000 entries can be returned in one call. To fetch more, you can specify \"start\" with the last returned entry’s Id of the current call.\n
\nFor example, total 5 person groups: \"group1\", ..., \"group5\".\n
\"start=&top=\" will return all 5 groups.\n
\"start=&top=2\" will return \"group1\", \"group2\".\n
\"start=group2&top=3\" will return \"group3\", \"group4\", \"group5\".\n", + "operationId": "PersonGroup_List", + "parameters": [ + { + "name": "start", + "in": "query", + "required": false, + "description": "List person groups from the least personGroupId greater than the \"start\".", + "type": "string", + "maxLength": 64 + }, + { + "name": "top", + "in": "query", + "required": false, + "description": "The number of person groups to list.", + "type": "integer", + "minimum": 1, + "maximum": 1000, + "default": 1000 + }, + { + "$ref": "#/parameters/returnRecognitionModel" + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "A successful call returns an array of person groups and their information.", + "schema": { + "$ref": "#/definitions/PersonGroups" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "List person groups example": { + "$ref": "./examples/ListPersonGroups.json" + } + } + } + }, + "/persongroups/{personGroupId}/train": { + "post": { + "description": "Queue a person group training task, the training task may not be started immediately.", + "operationId": "PersonGroup_Train", + "parameters": [ + { + "$ref": "#/parameters/personGroupId" + } + ], + "produces": [ + "application/json" + ], + "responses": { + "202": { + "description": "The training task was queued successfully." + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "Queue person group training": { + "$ref": "./examples/QueuePersonGroupTraining.json" + } + } + } + }, + "/facelists/{faceListId}": { + "put": { + "description": "Create an empty face list with user-specified faceListId, name, an optional userData and recognitionModel. Up to 64 face lists are allowed in one subscription.\n
Face list is a list of faces, up to 1,000 faces, and used by [Face - Find Similar](https://docs.microsoft.com/rest/api/faceapi/face/findsimilar).\n
After creation, user should use [FaceList - Add Face](https://docs.microsoft.com/rest/api/faceapi/facelist/addfacefromurl) to import the faces. No image will be stored. Only the extracted face features are stored on server until [FaceList - Delete](https://docs.microsoft.com/rest/api/faceapi/facelist/delete) is called.\n
Find Similar is used for scenario like finding celebrity-like faces, similar face filtering, or as a light way face identification. But if the actual use is to identify person, please use [PersonGroup](https://docs.microsoft.com/rest/api/faceapi/persongroup) / [LargePersonGroup](https://docs.microsoft.com/rest/api/faceapi/largepersongroup) and [Face - Identify](https://docs.microsoft.com/rest/api/faceapi/face/identify).\n
Please consider [LargeFaceList](https://docs.microsoft.com/rest/api/faceapi/largefacelist) when the face number is large. It can support up to 1,000,000 faces.\n
'recognitionModel' should be specified to associate with this face list. The default value for 'recognitionModel' is 'recognition_01', if the latest model needed, please explicitly specify the model you need in this parameter. New faces that are added to an existing face list will use the recognition model that's already associated with the collection. Existing face features in a face list can't be updated to features extracted by another version of recognition model.\nPlease Refer to [Specify a face recognition model](https://docs.microsoft.com/azure/cognitive-services/face/face-api-how-to-topics/specify-recognition-model).", + "operationId": "FaceList_Create", + "parameters": [ + { + "$ref": "#/parameters/faceListId" + }, + { + "name": "body", + "description": "Request body for creating a face list.", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/MetaDataContract" + } + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "A successful call returns an empty response body." + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "Create new face list example": { + "$ref": "./examples/CreateNewFaceList.json" + } + } + }, + "get": { + "description": "Retrieve a face list’s faceListId, name, userData, recognitionModel and faces in the face list.\n", + "operationId": "FaceList_Get", + "parameters": [ + { + "$ref": "#/parameters/faceListId" + }, + { + "$ref": "#/parameters/returnRecognitionModel" + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "A successful call returns the face list's information.", + "schema": { + "$ref": "#/definitions/FaceList" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "Get Face list example": { + "$ref": "./examples/GetFaceList.json" + } + } + }, + "patch": { + "description": "Update information of a face list.", + "operationId": "FaceList_Update", + "parameters": [ + { + "$ref": "#/parameters/faceListId" + }, + { + "name": "body", + "description": "Request body for updating a face list.", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/NameAndUserDataContract" + } + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "A successful call returns an empty response body." + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "Update face list example": { + "$ref": "./examples/UpdateFaceList.json" + } + } + }, + "delete": { + "description": "Delete a specified face list.", + "operationId": "FaceList_Delete", + "parameters": [ + { + "$ref": "#/parameters/faceListId" + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "A successful call returns an empty response body." + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "Delete face list example": { + "$ref": "./examples/DeleteFaceList.json" + } + } + } + }, + "/facelists": { + "get": { + "description": "List face lists’ faceListId, name, userData and recognitionModel.
\nTo get face information inside faceList use [FaceList - Get](https://docs.microsoft.com/rest/api/faceapi/facelist/get)\n", + "operationId": "FaceList_List", + "parameters": [ + { + "$ref": "#/parameters/returnRecognitionModel" + } + ], + "responses": { + "200": { + "description": "A successful call returns an array of faceList.", + "schema": { + "$ref": "#/definitions/FaceLists" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "produces": [ + "application/json" + ], + "x-ms-examples": { + "List Face lists example": { + "$ref": "./examples/ListFaceLists.json" + } + } + } + }, + "/facelists/{faceListId}/persistedfaces/{persistedFaceId}": { + "delete": { + "description": "Delete a face from a face list by specified faceListId and persistedFaceId.\n
Adding/deleting faces to/from a same face list are processed sequentially and to/from different face lists are in parallel.", + "operationId": "FaceList_DeleteFace", + "parameters": [ + { + "$ref": "#/parameters/faceListId" + }, + { + "$ref": "#/parameters/persistedFaceId" + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "A successful call returns an empty response body." + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "Delete face in face list example": { + "$ref": "./examples/DeleteFaceListFace.json" + } + } + } + }, + "/persongroups/{personGroupId}/persons/{personId}/persistedfaces": { + "post": { + "description": "Add a face to a person into a person group for face identification or verification. To deal with an image contains multiple faces, input face can be specified as an image with a targetFace rectangle. It returns a persistedFaceId representing the added face. No image will be stored. Only the extracted face feature will be stored on server until [PersonGroup PersonFace - Delete](https://docs.microsoft.com/rest/api/faceapi/persongroupperson/deleteface), [PersonGroup Person - Delete](https://docs.microsoft.com/rest/api/faceapi/persongroupperson/delete) or [PersonGroup - Delete](https://docs.microsoft.com/rest/api/faceapi/persongroup/delete) is called.\n
Note persistedFaceId is different from faceId generated by [Face - Detect](https://docs.microsoft.com/rest/api/faceapi/face/detectwithurl).\n* Higher face image quality means better recognition precision. Please consider high-quality faces: frontal, clear, and face size is 200x200 pixels (100 pixels between eyes) or bigger.\n* Each person entry can hold up to 248 faces.\n* JPEG, PNG, GIF (the first frame), and BMP format are supported. The allowed image file size is from 1KB to 6MB.\n* \"targetFace\" rectangle should contain one face. Zero or multiple faces will be regarded as an error. If the provided \"targetFace\" rectangle is not returned from [Face - Detect](https://docs.microsoft.com/rest/api/faceapi/face/detectwithurl), there’s no guarantee to detect and add the face successfully.\n* Out of detectable face size (36x36 - 4096x4096 pixels), large head-pose, or large occlusions will cause failures.\n* Adding/deleting faces to/from a same person will be processed sequentially. Adding/deleting faces to/from different persons are processed in parallel.\n* The minimum detectable face size is 36x36 pixels in an image no larger than 1920x1080 pixels. Images with dimensions higher than 1920x1080 pixels will need a proportionally larger minimum face size.\n* Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to [How to specify a detection model](https://docs.microsoft.com/azure/cognitive-services/face/face-api-how-to-topics/specify-detection-model).", + "operationId": "PersonGroupPerson_AddFaceFromUrl", + "parameters": [ + { + "$ref": "#/parameters/personGroupId" + }, + { + "$ref": "#/parameters/personId" + }, + { + "$ref": "#/parameters/faceUserData" + }, + { + "$ref": "#/parameters/targetFace" + }, + { + "$ref": "../../../Common/Parameters.json#/parameters/ImageUrl" + }, + { + "$ref": "#/parameters/detectionModel" + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "A successful call returns the new persistedFaceId.", + "schema": { + "$ref": "#/definitions/PersistedFace" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "Add Person face example": { + "$ref": "./examples/AddPersonGroupPersonFaceFromUrl.json" + } + } + } + }, + "/detect": { + "post": { + "description": "Detect human faces in an image, return face rectangles, and optionally with faceIds, landmarks, and attributes.
\n* No image will be stored. Only the extracted face feature will be stored on server. The faceId is an identifier of the face feature and will be used in [Face - Identify](https://docs.microsoft.com/rest/api/faceapi/face/identify), [Face - Verify](https://docs.microsoft.com/rest/api/faceapi/face/verifyfacetoface), and [Face - Find Similar](https://docs.microsoft.com/rest/api/faceapi/face/findsimilar). The stored face feature(s) will expire and be deleted at the time specified by faceIdTimeToLive after the original detection call.\n* Optional parameters include faceId, landmarks, and attributes. Attributes include age, gender, headPose, smile, facialHair, glasses, emotion, hair, makeup, occlusion, accessories, blur, exposure, noise, and mask. Some of the results returned for specific attributes may not be highly accurate.\n* JPEG, PNG, GIF (the first frame), and BMP format are supported. The allowed image file size is from 1KB to 6MB.\n* Up to 100 faces can be returned for an image. Faces are ranked by face rectangle size from large to small.\n* For optimal results when querying [Face - Identify](https://docs.microsoft.com/rest/api/faceapi/face/identify), [Face - Verify](https://docs.microsoft.com/rest/api/faceapi/face/verifyfacetoface), and [Face - Find Similar](https://docs.microsoft.com/rest/api/faceapi/face/findsimilar) ('returnFaceId' is true), please use faces that are: frontal, clear, and with a minimum size of 200x200 pixels (100 pixels between eyes).\n* The minimum detectable face size is 36x36 pixels in an image no larger than 1920x1080 pixels. Images with dimensions higher than 1920x1080 pixels will need a proportionally larger minimum face size.\n* Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to [How to specify a detection model](https://docs.microsoft.com/azure/cognitive-services/face/face-api-how-to-topics/specify-detection-model).\n\n* Different 'recognitionModel' values are provided. If follow-up operations like Verify, Identify, Find Similar are needed, please specify the recognition model with 'recognitionModel' parameter. The default value for 'recognitionModel' is 'recognition_01', if latest model needed, please explicitly specify the model you need in this parameter. Once specified, the detected faceIds will be associated with the specified recognition model. More details, please refer to [Specify a recognition model](https://docs.microsoft.com/azure/cognitive-services/face/face-api-how-to-topics/specify-recognition-model).", + "operationId": "Face_DetectWithUrl", + "parameters": [ + { + "$ref": "#/parameters/returnFaceId" + }, + { + "$ref": "#/parameters/returnFaceLandmarks" + }, + { + "$ref": "#/parameters/returnFaceAttributes" + }, + { + "$ref": "../../../Common/Parameters.json#/parameters/ImageUrl" + }, + { + "$ref": "#/parameters/recognitionModel" + }, + { + "$ref": "#/parameters/returnRecognitionModel" + }, + { + "$ref": "#/parameters/detectionModel" + }, + { + "$ref": "#/parameters/faceIdTimeToLive" + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "A successful call returns an array of face entries ranked by face rectangle size in descending order. An empty response indicates no faces detected.", + "schema": { + "$ref": "#/definitions/DetectedFaces" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "Detect with url example": { + "$ref": "./examples/DetectWithUrl.json" + } + } + } + }, + "/facelists/{faceListId}/persistedfaces": { + "post": { + "description": "Add a face to a specified face list, up to 1,000 faces.\n
To deal with an image contains multiple faces, input face can be specified as an image with a targetFace rectangle. It returns a persistedFaceId representing the added face. No image will be stored. Only the extracted face feature will be stored on server until [FaceList - Delete Face](https://docs.microsoft.com/rest/api/faceapi/facelist/deleteface) or [FaceList - Delete](https://docs.microsoft.com/rest/api/faceapi/facelist/delete) is called.\n
Note persistedFaceId is different from faceId generated by [Face - Detect](https://docs.microsoft.com/rest/api/faceapi/face/detectwithurl).\n* Higher face image quality means better detection and recognition precision. Please consider high-quality faces: frontal, clear, and face size is 200x200 pixels (100 pixels between eyes) or bigger.\n* JPEG, PNG, GIF (the first frame), and BMP format are supported. The allowed image file size is from 1KB to 6MB.\n* \"targetFace\" rectangle should contain one face. Zero or multiple faces will be regarded as an error. If the provided \"targetFace\" rectangle is not returned from [Face - Detect](https://docs.microsoft.com/rest/api/faceapi/face/detectwithurl), there’s no guarantee to detect and add the face successfully.\n* Out of detectable face size (36x36 - 4096x4096 pixels), large head-pose, or large occlusions will cause failures.\n* Adding/deleting faces to/from a same face list are processed sequentially and to/from different face lists are in parallel.\n* The minimum detectable face size is 36x36 pixels in an image no larger than 1920x1080 pixels. Images with dimensions higher than 1920x1080 pixels will need a proportionally larger minimum face size.\n* Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to [How to specify a detection model](https://docs.microsoft.com/azure/cognitive-services/face/face-api-how-to-topics/specify-detection-model).", + "operationId": "FaceList_AddFaceFromUrl", + "parameters": [ + { + "$ref": "#/parameters/faceListId" + }, + { + "$ref": "#/parameters/faceUserData" + }, + { + "$ref": "#/parameters/targetFace" + }, + { + "$ref": "../../../Common/Parameters.json#/parameters/ImageUrl" + }, + { + "$ref": "#/parameters/detectionModel" + } + ], + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ], + "responses": { + "200": { + "description": "A successful call returns a new persistedFaceId.", + "schema": { + "$ref": "#/definitions/PersistedFace" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "Create face list face example": { + "$ref": "./examples/AddFaceListFaceFromUrl.json" + } + } + } + }, + "/largepersongroups/{largePersonGroupId}/persons": { + "post": { + "description": "Create a new person in a specified large person group.", + "operationId": "LargePersonGroupPerson_Create", + "parameters": [ + { + "$ref": "#/parameters/largePersonGroupId" + }, + { + "name": "body", + "description": "Request body for creating new person.", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/NameAndUserDataContract" + } + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "A successful call returns a new personId created.", + "schema": { + "$ref": "#/definitions/Person" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "Create new person for large person group example": { + "$ref": "./examples/CreateNewLargePersonGroupPerson.json" + } + } + }, + "get": { + "description": "List all persons in a large person group, and retrieve person information (including personId, name, userData and persistedFaceIds of registered faces of the person).", + "operationId": "LargePersonGroupPerson_List", + "parameters": [ + { + "$ref": "#/parameters/largePersonGroupId" + }, + { + "name": "start", + "description": "Starting person id to return (used to list a range of persons).", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "top", + "description": "Number of persons to return starting with the person id indicated by the 'start' parameter.", + "in": "query", + "required": false, + "type": "integer", + "minimum": 1, + "maximum": 1000 + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "A successful call returns an array of person information that belong to the large person group.", + "schema": { + "$ref": "#/definitions/Persons" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "List persons in person group": { + "$ref": "./examples/ListLargePersonGroupPersons.json" + } + } + } + }, + "/largepersongroups/{largePersonGroupId}/persons/{personId}": { + "delete": { + "description": "Delete an existing person from a large person group. The persistedFaceId, userData, person name and face feature in the person entry will all be deleted.", + "operationId": "LargePersonGroupPerson_Delete", + "parameters": [ + { + "$ref": "#/parameters/largePersonGroupId" + }, + { + "$ref": "#/parameters/personId" + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "A successful call returns an empty response body." + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "Delete an existing person example": { + "$ref": "./examples/DeleteLargePersonGroupPerson.json" + } + } + }, + "get": { + "description": "Retrieve a person's name and userData, and the persisted faceIds representing the registered person face feature.", + "operationId": "LargePersonGroupPerson_Get", + "parameters": [ + { + "$ref": "#/parameters/largePersonGroupId" + }, + { + "$ref": "#/parameters/personId" + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "A successful call returns the person's information.", + "schema": { + "$ref": "#/definitions/Person" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "Get person example": { + "$ref": "./examples/GetLargePersonGroupPerson.json" + } + } + }, + "patch": { + "description": "Update name or userData of a person.", + "operationId": "LargePersonGroupPerson_Update", + "parameters": [ + { + "$ref": "#/parameters/largePersonGroupId" + }, + { + "$ref": "#/parameters/personId" + }, + { + "name": "body", + "description": "Request body for person update operation.", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/NameAndUserDataContract" + } + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "A successful call returns an empty response body." + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "Update person example": { + "$ref": "./examples/UpdateLargePersonGroupPerson.json" + } + } + } + }, + "/largepersongroups/{largePersonGroupId}/persons/{personId}/persistedfaces/{persistedFaceId}": { + "delete": { + "description": "Delete a face from a person in a large person group by specified largePersonGroupId, personId and persistedFaceId.\n
Adding/deleting faces to/from a same person will be processed sequentially. Adding/deleting faces to/from different persons are processed in parallel.", + "operationId": "LargePersonGroupPerson_DeleteFace", + "parameters": [ + { + "$ref": "#/parameters/largePersonGroupId" + }, + { + "$ref": "#/parameters/personId" + }, + { + "$ref": "#/parameters/persistedFaceId" + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "A successful call returns an empty response body." + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "Delete face from person example": { + "$ref": "./examples/DeleteLargePersonGroupPersonFace.json" + } + } + }, + "get": { + "description": "Retrieve information about a persisted face (specified by persistedFaceId, personId and its belonging largePersonGroupId).", + "operationId": "LargePersonGroupPerson_GetFace", + "parameters": [ + { + "$ref": "#/parameters/largePersonGroupId" + }, + { + "$ref": "#/parameters/personId" + }, + { + "$ref": "#/parameters/persistedFaceId" + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "A successful call returns target persisted face's information (persistedFaceId and userData).", + "schema": { + "$ref": "#/definitions/PersistedFace" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "Get persisted face example": { + "$ref": "./examples/GetLargePersonGroupPersistedFace.json" + } + } + }, + "patch": { + "description": "Update a person persisted face's userData field.", + "operationId": "LargePersonGroupPerson_UpdateFace", + "parameters": [ + { + "$ref": "#/parameters/largePersonGroupId" + }, + { + "$ref": "#/parameters/personId" + }, + { + "$ref": "#/parameters/persistedFaceId" + }, + { + "name": "body", + "description": "Request body for updating persisted face.", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/UpdateFaceRequest" + } + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "A successful call returns an empty response body." + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "Update person face example": { + "$ref": "./examples/UpdateLargePersonGroupPersonFace.json" + } + } + } + }, + "/largepersongroups/{largePersonGroupId}": { + "put": { + "description": "Create a new large person group with user-specified largePersonGroupId, name, an optional userData and recognitionModel.\n
A large person group is the container of the uploaded person data, including face recognition feature, and up to 1,000,000\npeople.\n
After creation, use [LargePersonGroup Person - Create](https://docs.microsoft.com/rest/api/faceapi/largepersongroupperson/create) to add person into the group, and call [LargePersonGroup - Train](https://docs.microsoft.com/rest/api/faceapi/largepersongroup/train) to get this group ready for [Face - Identify](https://docs.microsoft.com/rest/api/faceapi/face/identify).\n
No image will be stored. Only the person's extracted face features and userData will be stored on server until [LargePersonGroup Person - Delete](https://docs.microsoft.com/rest/api/faceapi/largepersongroupperson/delete) or [LargePersonGroup - Delete](https://docs.microsoft.com/rest/api/faceapi/largepersongroup/delete) is called.\n
'recognitionModel' should be specified to associate with this large person group. The default value for 'recognitionModel' is 'recognition_01', if the latest model needed, please explicitly specify the model you need in this parameter. New faces that are added to an existing large person group will use the recognition model that's already associated with the collection. Existing face features in a large person group can't be updated to features extracted by another version of recognition model. Please refer to [Specify a face recognition model](https://docs.microsoft.com/azure/cognitive-services/face/face-api-how-to-topics/specify-recognition-model).\n\nLarge person group quota:\n* Free-tier subscription quota: 1,000 large person groups.\n* S0-tier subscription quota: 1,000,000 large person groups.", + "operationId": "LargePersonGroup_Create", + "parameters": [ + { + "$ref": "#/parameters/largePersonGroupId" + }, + { + "name": "body", + "description": "Request body for creating new large person group.", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/MetaDataContract" + } + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "A successful call returns an empty response body." + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "Create new large person group example": { + "$ref": "./examples/CreateNewLargePersonGroup.json" + } + } + }, + "delete": { + "description": "Delete an existing large person group. Persisted face features of all people in the large person group will also be deleted.", + "operationId": "LargePersonGroup_Delete", + "parameters": [ + { + "$ref": "#/parameters/largePersonGroupId" + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "A successful call returns an empty response body." + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "Delete a large person group example": { + "$ref": "./examples/DeleteLargePersonGroup.json" + } + } + }, + "get": { + "description": "Retrieve the information of a large person group, including its name, userData and recognitionModel. This API returns large person group information only, use [LargePersonGroup Person - List](https://docs.microsoft.com/rest/api/faceapi/largepersongroupperson/list) instead to retrieve person information under the large person group.\n", + "operationId": "LargePersonGroup_Get", + "parameters": [ + { + "$ref": "#/parameters/largePersonGroupId" + }, + { + "$ref": "#/parameters/returnRecognitionModel" + } + ], + "responses": { + "200": { + "description": "A successful call returns the large person group's information.", + "schema": { + "$ref": "#/definitions/LargePersonGroup" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get large person group example": { + "$ref": "./examples/GetLargePersonGroup.json" + } + } + }, + "patch": { + "description": "Update an existing large person group's display name and userData. The properties which does not appear in request body will not be updated.", + "operationId": "LargePersonGroup_Update", + "parameters": [ + { + "$ref": "#/parameters/largePersonGroupId" + }, + { + "name": "body", + "description": "Request body for updating large person group.", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/NameAndUserDataContract" + } + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "A successful call returns an empty response body." + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "Update large person group example": { + "$ref": "./examples/UpdateLargePersonGroup.json" + } + } + } + }, + "/largepersongroups/{largePersonGroupId}/training": { + "get": { + "description": "Retrieve the training status of a large person group (completed or ongoing).", + "operationId": "LargePersonGroup_GetTrainingStatus", + "parameters": [ + { + "$ref": "#/parameters/largePersonGroupId" + } + ], + "responses": { + "200": { + "description": "A successful call returns the large person group's training status.", + "schema": { + "$ref": "#/definitions/TrainingStatus" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get large person group's training status example": { + "$ref": "./examples/GetLargePersonGroupTrainingStatus.json" + } + } + } + }, + "/largepersongroups": { + "get": { + "description": "List all existing large person groups’ largePersonGroupId, name, userData and recognitionModel.
\n* Large person groups are stored in alphabetical order of largePersonGroupId.\n* \"start\" parameter (string, optional) is a user-provided largePersonGroupId value that returned entries have larger ids by string comparison. \"start\" set to empty to indicate return from the first item.\n* \"top\" parameter (int, optional) specifies the number of entries to return. A maximal of 1000 entries can be returned in one call. To fetch more, you can specify \"start\" with the last returned entry’s Id of the current call.\n
\nFor example, total 5 large person groups: \"group1\", ..., \"group5\".\n
\"start=&top=\" will return all 5 groups.\n
\"start=&top=2\" will return \"group1\", \"group2\".\n
\"start=group2&top=3\" will return \"group3\", \"group4\", \"group5\".\n", + "operationId": "LargePersonGroup_List", + "parameters": [ + { + "name": "start", + "in": "query", + "required": false, + "description": "List large person groups from the least largePersonGroupId greater than the \"start\".", + "type": "string", + "maxLength": 64 + }, + { + "name": "top", + "in": "query", + "required": false, + "description": "The number of large person groups to list.", + "type": "integer", + "minimum": 1, + "maximum": 1000, + "default": 1000 + }, + { + "$ref": "#/parameters/returnRecognitionModel" + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "A successful call returns an array of large person groups and their information.", + "schema": { + "$ref": "#/definitions/LargePersonGroups" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "List large person groups example": { + "$ref": "./examples/ListLargePersonGroups.json" + } + } + } + }, + "/largepersongroups/{largePersonGroupId}/train": { + "post": { + "description": "Queue a large person group training task, the training task may not be started immediately.", + "operationId": "LargePersonGroup_Train", + "parameters": [ + { + "$ref": "#/parameters/largePersonGroupId" + } + ], + "produces": [ + "application/json" + ], + "responses": { + "202": { + "description": "The training task was queued successfully." + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "Queue large person group training": { + "$ref": "./examples/QueueLargePersonGroupTraining.json" + } + } + } + }, + "/largepersongroups/{largePersonGroupId}/persons/{personId}/persistedfaces": { + "post": { + "description": "Add a face to a person into a large person group for face identification or verification. To deal with an image contains multiple faces, input face can be specified as an image with a targetFace rectangle. It returns a persistedFaceId representing the added face. No image will be stored. Only the extracted face feature will be stored on server until [LargePersonGroup PersonFace - Delete](https://docs.microsoft.com/rest/api/faceapi/largepersongroupperson/deleteface), [LargePersonGroup Person - Delete](https://docs.microsoft.com/rest/api/faceapi/largepersongroupperson/delete) or [LargePersonGroup - Delete](https://docs.microsoft.com/rest/api/faceapi/largepersongroup/delete) is called.\n
Note persistedFaceId is different from faceId generated by [Face - Detect](https://docs.microsoft.com/rest/api/faceapi/face/detectwithurl).\n* Higher face image quality means better recognition precision. Please consider high-quality faces: frontal, clear, and face size is 200x200 pixels (100 pixels between eyes) or bigger.\n* Each person entry can hold up to 248 faces.\n* JPEG, PNG, GIF (the first frame), and BMP format are supported. The allowed image file size is from 1KB to 6MB.\n* \"targetFace\" rectangle should contain one face. Zero or multiple faces will be regarded as an error. If the provided \"targetFace\" rectangle is not returned from [Face - Detect](https://docs.microsoft.com/rest/api/faceapi/face/detectwithurl), there’s no guarantee to detect and add the face successfully.\n* Out of detectable face size (36x36 - 4096x4096 pixels), large head-pose, or large occlusions will cause failures.\n* Adding/deleting faces to/from a same person will be processed sequentially. Adding/deleting faces to/from different persons are processed in parallel.\n* The minimum detectable face size is 36x36 pixels in an image no larger than 1920x1080 pixels. Images with dimensions higher than 1920x1080 pixels will need a proportionally larger minimum face size.\n* Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to [How to specify a detection model](https://docs.microsoft.com/azure/cognitive-services/face/face-api-how-to-topics/specify-detection-model)", + "operationId": "LargePersonGroupPerson_AddFaceFromUrl", + "parameters": [ + { + "$ref": "#/parameters/largePersonGroupId" + }, + { + "$ref": "#/parameters/personId" + }, + { + "$ref": "#/parameters/faceUserData" + }, + { + "$ref": "#/parameters/targetFace" + }, + { + "$ref": "../../../Common/Parameters.json#/parameters/ImageUrl" + }, + { + "$ref": "#/parameters/detectionModel" + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "A successful call returns the new persistedFaceId.", + "schema": { + "$ref": "#/definitions/PersistedFace" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "Add Person face example": { + "$ref": "./examples/AddLargePersonGroupPersonFaceFromUrl.json" + } + } + } + }, + "/largefacelists/{largeFaceListId}": { + "put": { + "description": "Create an empty large face list with user-specified largeFaceListId, name, an optional userData and recognitionModel.\n
Large face list is a list of faces, up to 1,000,000 faces, and used by [Face - Find Similar](https://docs.microsoft.com/rest/api/faceapi/face/findsimilar).\n
After creation, user should use [LargeFaceList Face - Add](https://docs.microsoft.com/rest/api/faceapi/largefacelist/addfacefromurl) to import the faces and [LargeFaceList - Train](https://docs.microsoft.com/rest/api/faceapi/largefacelist/train) to make it ready for [Face - Find Similar](https://docs.microsoft.com/rest/api/faceapi/face/findsimilar). No image will be stored. Only the extracted face features are stored on server until [LargeFaceList - Delete](https://docs.microsoft.com/rest/api/faceapi/largefacelist/delete) is called.\n
Find Similar is used for scenario like finding celebrity-like faces, similar face filtering, or as a light way face identification. But if the actual use is to identify person, please use [PersonGroup](https://docs.microsoft.com/rest/api/faceapi/persongroup) / [LargePersonGroup](https://docs.microsoft.com/rest/api/faceapi/largepersongroup) and [Face - Identify](https://docs.microsoft.com/rest/api/faceapi/face/identify).\n
'recognitionModel' should be specified to associate with this large face list. The default value for 'recognitionModel' is 'recognition_01', if the latest model needed, please explicitly specify the model you need in this parameter. New faces that are added to an existing large face list will use the recognition model that's already associated with the collection. Existing face features in a large face list can't be updated to features extracted by another version of recognition model. Please refer to [Specify a recognition model](https://docs.microsoft.com/azure/cognitive-services/face/face-api-how-to-topics/specify-recognition-model).\n\nLarge face list quota:\n* Free-tier subscription quota: 64 large face lists.\n* S0-tier subscription quota: 1,000,000 large face lists.", + "operationId": "LargeFaceList_Create", + "parameters": [ + { + "$ref": "#/parameters/largeFaceListId" + }, + { + "name": "body", + "description": "Request body for creating a large face list.", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/MetaDataContract" + } + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "A successful call returns an empty response body." + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "Create new large face list example": { + "$ref": "./examples/CreateNewLargeFaceList.json" + } + } + }, + "get": { + "description": "Retrieve a large face list’s largeFaceListId, name, userData and recognitionModel.", + "operationId": "LargeFaceList_Get", + "parameters": [ + { + "$ref": "#/parameters/largeFaceListId" + }, + { + "$ref": "#/parameters/returnRecognitionModel" + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "A successful call returns the large face list's information.", + "schema": { + "$ref": "#/definitions/LargeFaceList" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "Get large face list example": { + "$ref": "./examples/GetLargeFaceList.json" + } + } + }, + "patch": { + "description": "Update information of a large face list.", + "operationId": "LargeFaceList_Update", + "parameters": [ + { + "$ref": "#/parameters/largeFaceListId" + }, + { + "name": "body", + "description": "Request body for updating a large face list.", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/NameAndUserDataContract" + } + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "A successful call returns an empty response body." + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "Update large face list example": { + "$ref": "./examples/UpdateLargeFaceList.json" + } + } + }, + "delete": { + "description": "Delete a specified large face list.", + "operationId": "LargeFaceList_Delete", + "parameters": [ + { + "$ref": "#/parameters/largeFaceListId" + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "A successful call returns an empty response body." + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "Delete large face list example": { + "$ref": "./examples/DeleteLargeFaceList.json" + } + } + } + }, + "/largefacelists/{largeFaceListId}/training": { + "get": { + "description": "Retrieve the training status of a large face list (completed or ongoing).", + "operationId": "LargeFaceList_GetTrainingStatus", + "parameters": [ + { + "$ref": "#/parameters/largeFaceListId" + } + ], + "responses": { + "200": { + "description": "A successful call returns the large face list's training status.", + "schema": { + "$ref": "#/definitions/TrainingStatus" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get large face list's training status example": { + "$ref": "./examples/GetLargeFaceListTrainingStatus.json" + } + } + } + }, + "/largefacelists": { + "get": { + "description": "List large face lists’ information of largeFaceListId, name, userData and recognitionModel.
\nTo get face information inside largeFaceList use [LargeFaceList Face - Get](https://docs.microsoft.com/rest/api/faceapi/largefacelist/getface)
\n* Large face lists are stored in alphabetical order of largeFaceListId.\n* \"start\" parameter (string, optional) is a user-provided largeFaceListId value that returned entries have larger ids by string comparison. \"start\" set to empty to indicate return from the first item.\n* \"top\" parameter (int, optional) specifies the number of entries to return. A maximal of 1000 entries can be returned in one call. To fetch more, you can specify \"start\" with the last returned entry’s Id of the current call.\n
\nFor example, total 5 large person lists: \"list1\", ..., \"list5\".\n
\"start=&top=\" will return all 5 lists.\n
\"start=&top=2\" will return \"list1\", \"list2\".\n
\"start=list2&top=3\" will return \"list3\", \"list4\", \"list5\".\n", + "operationId": "LargeFaceList_List", + "parameters": [ + { + "$ref": "#/parameters/returnRecognitionModel" + } + ], + "responses": { + "200": { + "description": "A successful call returns an array of largeFaceList.", + "schema": { + "$ref": "#/definitions/LargeFaceLists" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "produces": [ + "application/json" + ], + "x-ms-examples": { + "List large face lists example": { + "$ref": "./examples/ListLargeFaceLists.json" + } + } + } + }, + "/largefacelists/{largeFaceListId}/train": { + "post": { + "description": "Queue a large face list training task, the training task may not be started immediately.", + "operationId": "LargeFaceList_Train", + "parameters": [ + { + "$ref": "#/parameters/largeFaceListId" + } + ], + "produces": [ + "application/json" + ], + "responses": { + "202": { + "description": "The training task was queued successfully." + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "Queue large face list training": { + "$ref": "./examples/QueueLargeFaceListTraining.json" + } + } + } + }, + "/largefacelists/{largeFaceListId}/persistedfaces/{persistedFaceId}": { + "delete": { + "description": "Delete a face from a large face list by specified largeFaceListId and persistedFaceId.\n
Adding/deleting faces to/from a same large face list are processed sequentially and to/from different large face lists are in parallel.", + "operationId": "LargeFaceList_DeleteFace", + "parameters": [ + { + "$ref": "#/parameters/largeFaceListId" + }, + { + "$ref": "#/parameters/persistedFaceId" + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "A successful call returns an empty response body." + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "Delete face in large face list example": { + "$ref": "./examples/DeleteLargeFaceListFace.json" + } + } + }, + "get": { + "description": "Retrieve information about a persisted face (specified by persistedFaceId and its belonging largeFaceListId).", + "operationId": "LargeFaceList_GetFace", + "parameters": [ + { + "$ref": "#/parameters/largeFaceListId" + }, + { + "$ref": "#/parameters/persistedFaceId" + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "A successful call returns target persisted face's information (persistedFaceId and userData).", + "schema": { + "$ref": "#/definitions/PersistedFace" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "Get persisted face example": { + "$ref": "./examples/GetLargeFaceListPersistedFace.json" + } + } + }, + "patch": { + "description": "Update a persisted face's userData field.", + "operationId": "LargeFaceList_UpdateFace", + "parameters": [ + { + "$ref": "#/parameters/largeFaceListId" + }, + { + "$ref": "#/parameters/persistedFaceId" + }, + { + "name": "body", + "description": "Request body for updating persisted face.", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/UpdateFaceRequest" + } + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "A successful call returns an empty response body." + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "Update face example": { + "$ref": "./examples/UpdateLargeFaceListFace.json" + } + } + } + }, + "/largefacelists/{largeFaceListId}/persistedfaces": { + "post": { + "description": "Add a face to a specified large face list, up to 1,000,000 faces.\n
To deal with an image contains multiple faces, input face can be specified as an image with a targetFace rectangle. It returns a persistedFaceId representing the added face. No image will be stored. Only the extracted face feature will be stored on server until [LargeFaceList Face - Delete](https://docs.microsoft.com/rest/api/faceapi/largefacelist/deleteface) or [LargeFaceList - Delete](https://docs.microsoft.com/rest/api/faceapi/largefacelist/delete) is called.\n
Note persistedFaceId is different from faceId generated by [Face - Detect](https://docs.microsoft.com/rest/api/faceapi/face/detectwithurl).\n* Higher face image quality means better recognition precision. Please consider high-quality faces: frontal, clear, and face size is 200x200 pixels (100 pixels between eyes) or bigger.\n* JPEG, PNG, GIF (the first frame), and BMP format are supported. The allowed image file size is from 1KB to 6MB.\n* \"targetFace\" rectangle should contain one face. Zero or multiple faces will be regarded as an error. If the provided \"targetFace\" rectangle is not returned from [Face - Detect](https://docs.microsoft.com/rest/api/faceapi/face/detectwithurl), there’s no guarantee to detect and add the face successfully.\n* Out of detectable face size (36x36 - 4096x4096 pixels), large head-pose, or large occlusions will cause failures.\n* Adding/deleting faces to/from a same face list are processed sequentially and to/from different face lists are in parallel.\n* The minimum detectable face size is 36x36 pixels in an image no larger than 1920x1080 pixels. Images with dimensions higher than 1920x1080 pixels will need a proportionally larger minimum face size.\n* Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to [How to specify a detection model](https://docs.microsoft.com/azure/cognitive-services/face/face-api-how-to-topics/specify-detection-model)\n\nQuota:\n* Free-tier subscription quota: 1,000 faces per large face list.\n* S0-tier subscription quota: 1,000,000 faces per large face list.", + "operationId": "LargeFaceList_AddFaceFromUrl", + "parameters": [ + { + "$ref": "#/parameters/largeFaceListId" + }, + { + "$ref": "#/parameters/faceUserData" + }, + { + "$ref": "#/parameters/targetFace" + }, + { + "$ref": "../../../Common/Parameters.json#/parameters/ImageUrl" + }, + { + "$ref": "#/parameters/detectionModel" + } + ], + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ], + "responses": { + "200": { + "description": "A successful call returns a new persistedFaceId.", + "schema": { + "$ref": "#/definitions/PersistedFace" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "Create large face list face example": { + "$ref": "./examples/AddLargeFaceListFaceFromUrl.json" + } + } + }, + "get": { + "description": "List all faces in a large face list, and retrieve face information (including userData and persistedFaceIds of registered faces of the face).", + "operationId": "LargeFaceList_ListFaces", + "parameters": [ + { + "$ref": "#/parameters/largeFaceListId" + }, + { + "name": "start", + "description": "Starting face id to return (used to list a range of faces).", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "top", + "description": "Number of faces to return starting with the face id indicated by the 'start' parameter.", + "in": "query", + "required": false, + "type": "integer", + "minimum": 1, + "maximum": 1000 + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "A successful call returns an array of face information that belong to the large face list.", + "schema": { + "$ref": "#/definitions/PersistedFaces" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "List faces in large face list": { + "$ref": "./examples/ListLargeFaceListFaces.json" + } + } + } + }, + "/snapshots": { + "post": { + "description": "Submit an operation to take a snapshot of face list, large face list, person group or large person group, with user-specified snapshot type, source object id, apply scope and an optional user data.
\nThe snapshot interfaces are for users to backup and restore their face data from one face subscription to another, inside same region or across regions. The workflow contains two phases, user first calls Snapshot - Take to create a copy of the source object and store it as a snapshot, then calls Snapshot - Apply to paste the snapshot to target subscription. The snapshots are stored in a centralized location (per Azure instance), so that they can be applied cross accounts and regions.
\nTaking snapshot is an asynchronous operation. An operation id can be obtained from the \"Operation-Location\" field in response header, to be used in OperationStatus - Get for tracking the progress of creating the snapshot. The snapshot id will be included in the \"resourceLocation\" field in OperationStatus - Get response when the operation status is \"succeeded\".
\nSnapshot taking time depends on the number of person and face entries in the source object. It could be in seconds, or up to several hours for 1,000,000 persons with multiple faces.
\nSnapshots will be automatically expired and cleaned in 48 hours after it is created by Snapshot - Take. User can delete the snapshot using Snapshot - Delete by themselves any time before expiration.
\nTaking snapshot for a certain object will not block any other operations against the object. All read-only operations (Get/List and Identify/FindSimilar/Verify) can be conducted as usual. For all writable operations, including Add/Update/Delete the source object or its persons/faces and Train, they are not blocked but not recommended because writable updates may not be reflected on the snapshot during its taking. After snapshot taking is completed, all readable and writable operations can work as normal. Snapshot will also include the training results of the source object, which means target subscription the snapshot applied to does not need re-train the target object before calling Identify/FindSimilar.
\n* Free-tier subscription quota: 100 take operations per month.\n* S0-tier subscription quota: 100 take operations per day.", + "operationId": "Snapshot_Take", + "parameters": [ + { + "name": "body", + "description": "Request body for taking a snapshot.", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/TakeSnapshotRequest" + } + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "202": { + "description": "The snapshot taking task was queued successfully.", + "headers": { + "Operation-Location": { + "description": "Operation location with an operation id used to track the progress of taking snapshot. The returned id is the operation id, rather than snapshot id. Snapshot id can be obtained only when the operation status becomes \"succeeded\" in OperationStatus - Get.", + "type": "string" + } + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "Take a snapshot example": { + "$ref": "./examples/TakeSnapshot.json" + } + } + }, + "get": { + "description": "List all accessible snapshots with related information, including snapshots that were taken by the user, or snapshots to be applied to the user (subscription id was included in the applyScope in Snapshot - Take).", + "operationId": "Snapshot_List", + "parameters": [ + { + "name": "type", + "description": "User specified object type as a search filter.", + "in": "query", + "required": false, + "type": "string", + "x-ms-enum": { + "name": "SnapshotObjectType", + "modelAsString": false + }, + "enum": [ + "FaceList", + "LargeFaceList", + "LargePersonGroup", + "PersonGroup" + ] + }, + { + "$ref": "#/parameters/applyScope" + } + ], + "responses": { + "200": { + "description": "A successful call returns an array of snapshots with snapshot information.", + "schema": { + "$ref": "#/definitions/Snapshots" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "produces": [ + "application/json" + ], + "x-ms-examples": { + "List snapshots example": { + "$ref": "./examples/ListSnapshots.json" + } + } + } + }, + "/snapshots/{snapshotId}": { + "get": { + "description": "Retrieve information about a snapshot. Snapshot is only accessible to the source subscription who took it, and target subscriptions included in the applyScope in Snapshot - Take.", + "operationId": "Snapshot_Get", + "parameters": [ + { + "$ref": "#/parameters/snapshotId" + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "A successful call returns the snapshot's information.", + "schema": { + "$ref": "#/definitions/Snapshot" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "Get snapshot example": { + "$ref": "./examples/GetSnapshot.json" + } + } + }, + "patch": { + "description": "Update the information of a snapshot. Only the source subscription who took the snapshot can update the snapshot.", + "operationId": "Snapshot_Update", + "parameters": [ + { + "$ref": "#/parameters/snapshotId" + }, + { + "name": "body", + "description": "Request body for updating a snapshot.", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/UpdateSnapshotRequest" + } + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "A successful call returns an empty response body." + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "Update snapshot example": { + "$ref": "./examples/UpdateSnapshot.json" + } + } + }, + "delete": { + "description": "Delete an existing snapshot according to the snapshotId. All object data and information in the snapshot will also be deleted. Only the source subscription who took the snapshot can delete the snapshot. If the user does not delete a snapshot with this API, the snapshot will still be automatically deleted in 48 hours after creation.", + "operationId": "Snapshot_Delete", + "parameters": [ + { + "$ref": "#/parameters/snapshotId" + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "A successful call returns an empty response body." + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "Delete snapshot example": { + "$ref": "./examples/DeleteSnapshot.json" + } + } + } + }, + "/snapshots/{snapshotId}/apply": { + "post": { + "description": "Submit an operation to apply a snapshot to current subscription. For each snapshot, only subscriptions included in the applyScope of Snapshot - Take can apply it.
\nThe snapshot interfaces are for users to backup and restore their face data from one face subscription to another, inside same region or across regions. The workflow contains two phases, user first calls Snapshot - Take to create a copy of the source object and store it as a snapshot, then calls Snapshot - Apply to paste the snapshot to target subscription. The snapshots are stored in a centralized location (per Azure instance), so that they can be applied cross accounts and regions.
\nApplying snapshot is an asynchronous operation. An operation id can be obtained from the \"Operation-Location\" field in response header, to be used in OperationStatus - Get for tracking the progress of applying the snapshot. The target object id will be included in the \"resourceLocation\" field in OperationStatus - Get response when the operation status is \"succeeded\".
\nSnapshot applying time depends on the number of person and face entries in the snapshot object. It could be in seconds, or up to 1 hour for 1,000,000 persons with multiple faces.
\nSnapshots will be automatically expired and cleaned in 48 hours after it is created by Snapshot - Take. So the target subscription is required to apply the snapshot in 48 hours since its creation.
\nApplying a snapshot will not block any other operations against the target object, however it is not recommended because the correctness cannot be guaranteed during snapshot applying. After snapshot applying is completed, all operations towards the target object can work as normal. Snapshot also includes the training results of the source object, which means target subscription the snapshot applied to does not need re-train the target object before calling Identify/FindSimilar.
\nOne snapshot can be applied multiple times in parallel, while currently only CreateNew apply mode is supported, which means the apply operation will fail if target subscription already contains an object of same type and using the same objectId. Users can specify the \"objectId\" in request body to avoid such conflicts.
\n* Free-tier subscription quota: 100 apply operations per month.\n* S0-tier subscription quota: 100 apply operations per day.", + "operationId": "Snapshot_Apply", + "parameters": [ + { + "$ref": "#/parameters/snapshotId" + }, + { + "name": "body", + "description": "Request body for applying a snapshot.", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/ApplySnapshotRequest" + } + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "202": { + "description": "The snapshot applying task was queued successfully.", + "headers": { + "Operation-Location": { + "description": "Operation location with an operation id used to track the progress of applying the snapshot by OperationStatus - Get.", + "type": "string" + } + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "Apply snapshot example": { + "$ref": "./examples/ApplySnapshot.json" + } + } + } + }, + "/operations/{operationId}": { + "get": { + "description": "Get status of a long running operation.", + "operationId": "Snapshot_GetOperationStatus", + "parameters": [ + { + "$ref": "#/parameters/operationId" + } + ], + "responses": { + "200": { + "description": "A successful call returns the operation's status.", + "schema": { + "$ref": "#/definitions/AsyncStatus" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get snapshot operation status example": { + "$ref": "./examples/GetSnapshotOperationStatus.json" + } + } + } + }, + "/persons": { + "get": { + "tags": [ + "PersonDirectory" + ], + "summary": "Retrieve list of person information in person directory.", + "operationId": "PersonDirectory_GetPersons", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "query", + "name": "start", + "type": "string" + }, + { + "in": "query", + "name": "top", + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/EnrollmentResponse" + } + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Get person directory persons example": { + "$ref": "./examples/GetPersonDirectoryPersons.json" + } + } + }, + "post": { + "tags": [ + "PersonDirectory" + ], + "summary": "Creates a new person in person directory.", + "operationId": "PersonDirectory_CreatePerson", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "body", + "name": "body", + "required": true, + "schema": { + "$ref": "#/definitions/EnrolledPerson" + } + } + ], + "responses": { + "202": { + "description": "Success", + "schema": { + "$ref": "#/definitions/PersonCreationResponse" + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Create person in person directory example": { + "$ref": "./examples/CreateNewPersonDirectoryPerson.json" + } + } + } + }, + "/persons/{personId}": { + "patch": { + "tags": [ + "PersonDirectory" + ], + "summary": "Update name or userData of a person.", + "operationId": "PersonDirectory_UpdatePerson", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "personId", + "required": true, + "type": "string" + }, + { + "in": "body", + "name": "body", + "required": true, + "schema": { + "$ref": "#/definitions/EnrollmentRequest" + } + } + ], + "responses": { + "200": { + "description": "Success" + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Create person in person directory example": { + "$ref": "./examples/UpdatePersonDirectoryPerson.json" + } + } + }, + "delete": { + "tags": [ + "PersonDirectory" + ], + "summary": "Delete an existing person from person directory. \r\nThe persistedFaceId, userData, person name and face feature(s) in the person entry will all be deleted.", + "operationId": "PersonDirectory_DeletePerson", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "personId", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Success" + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Delete person from person directory example": { + "$ref": "./examples/DeletePersonDirectoryPerson.json" + } + } + }, + "get": { + "tags": [ + "PersonDirectory" + ], + "summary": "Retrieve a person's name and userData, and the persisted faceIds representing the registered person face feature(s).", + "operationId": "PersonDirectory_GetPerson", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "personId", + "description": "Person id.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/EnrolledPerson" + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Get person from person directory example": { + "$ref": "./examples/GetPersonDirectoryPerson.json" + } + } + } + }, + "/persons/{personId}/recognitionModels/{recognitionModel}/persistedFaces": { + "post": { + "tags": [ + "PersonDirectory" + ], + "summary": "Add a new face to person.", + "operationId": "PersonDirectory_AddPersonFace", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "personId", + "description": "Person id.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "recognitionModel", + "description": "Recognition model string.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "detectionModel", + "description": "Detection model string.", + "type": "string" + }, + { + "in": "query", + "name": "userData", + "description": "User data of person face.", + "type": "string" + }, + { + "in": "query", + "name": "targetFace", + "description": "Target face.", + "type": "string" + } + ], + "responses": { + "202": { + "description": "Success", + "schema": { + "$ref": "#/definitions/EnrollmentPrintResponse" + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Add face to person in person directory example": { + "$ref": "./examples/AddPersonDirectoryPersonFaceFromUrl.json" + } + } + }, + "get": { + "tags": [ + "PersonDirectory" + ], + "summary": "Retrieve person face information. The persisted person face is specified by its personId and persistedFaceId.", + "operationId": "PersonDirectory_GetPersonFaces", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "personId", + "description": "Target person to get persistedFaceIds from.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "recognitionModel", + "description": "The 'recognitionModel' associated with this persisted face.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/PersonResponse" + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Get person face in person directory example": { + "$ref": "./examples/GetPersonDirectoryPersonFaces.json" + } + } + } + }, + "/persons/{personId}/recognitionModels/{recognitionModel}/persistedFaces/{persistedFaceId}": { + "delete": { + "tags": [ + "PersonDirectory" + ], + "summary": "Delete an existing person face from person directory. \r\nThe persistedFaceId, userData, and face feature in the person entry will all be deleted.", + "operationId": "PersonDirectory_DeletePersonFace", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "personId", + "description": "Person id.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "recognitionModel", + "description": "Recognition model string.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "persistedFaceId", + "description": "Persisted face id to delete.", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Success" + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Delete face from person directory person example": { + "$ref": "./examples/DeletePersonDirectoryPersonFace.json" + } + } + }, + "get": { + "tags": [ + "PersonDirectory" + ], + "summary": "Retrieve person face information. The persisted person face is specified by its personId and persistedFaceId.", + "operationId": "PersonDirectory_GetPersonFace", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "personId", + "description": "Target person to get face from.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "recognitionModel", + "description": "The 'recognitionModel' associated with this persisted face.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "persistedFaceId", + "description": "Target person face id to get.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/PersistedFaceResponse" + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Get person directory person face example": { + "$ref": "./examples/GetPersonDirectoryPersonFace.json" + } + } + }, + "patch": { + "tags": [ + "PersonDirectory" + ], + "summary": "Update the data of a person face.", + "operationId": "PersonDirectory_UpdatePersonFace", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "personId", + "description": "Target person to update face from.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "recognitionModel", + "description": "The 'recognitionModel' associated with this persisted face.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "persistedFaceId", + "description": "PersistedFaceId created from Person Face Create", + "required": true, + "type": "string" + }, + { + "in": "body", + "name": "body", + "description": "Target person face id to update.", + "required": true, + "schema": { + "$ref": "#/definitions/PersistedFaceWithType" + } + } + ], + "responses": { + "200": { + "description": "Success" + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Update face from person directory person example": { + "$ref": "./examples/UpdatePersonDirectoryPersonFace.json" + } + } + } + }, + "/dynamicpersongroups/{dynamicPersonGroupId}": { + "put": { + "tags": [ + "PersonDirectory" + ], + "summary": "Creates a new dynamic person group with specified dynamicPersonGroupId, name, and user-provided userData.\r\nA dynamic person group is a container that references persons.\r\nAfter creation, use \"DynamicPersonGroup - Update\" to add/remove persons into the search space.\r\nDynamicPersonGroup and UserData will be stored on server until DynamicPersonGroup Delete is called.", + "operationId": "PersonDirectory_CreateDynamicPersonGroup", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "dynamicPersonGroupId", + "description": "User provided dynamic person group Id. Valid format should be a string composed by numbers, English letters in lower case, '-', '_', and no longer than 64 characters.", + "required": true, + "type": "string" + }, + { + "in": "body", + "name": "body", + "description": "", + "required": true, + "schema": { + "$ref": "#/definitions/DynamicPersonGroupCreateRequest" + } + } + ], + "responses": { + "200": { + "description": "Success" + }, + "202": { + "description": "Success" + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Create dynamic person group example": { + "$ref": "./examples/CreateNewDynamicPersonGroup.json" + } + } + }, + "patch": { + "tags": [ + "PersonDirectory" + ], + "summary": "Updates an existing dynamic person group with specified dynamicPersonGroupId, name, and user-provided userData.", + "operationId": "PersonDirectory_UpdateDynamicPersonGroup", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "dynamicPersonGroupId", + "description": "User provided dynamic person group Id.", + "required": true, + "type": "string" + }, + { + "in": "body", + "name": "body", + "description": "", + "required": true, + "schema": { + "$ref": "#/definitions/DynamicPersonGroupUpdateRequest" + } + } + ], + "responses": { + "202": { + "description": "Success" + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Update dynamic person group example": { + "$ref": "./examples/UpdateDynamicPersonGroup.json" + } + } + }, + "get": { + "tags": [ + "PersonDirectory" + ], + "summary": "Get metadata on a dynamic person group.", + "operationId": "PersonDirectory_GetDynamicPersonGroup", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "dynamicPersonGroupId", + "description": "User provided dynamic person group id", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DynamicPersonGroupGetResponse" + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Get dynamic person group example": { + "$ref": "./examples/GetDynamicPersonGroup.json" + } + } + }, + "delete": { + "tags": [ + "PersonDirectory" + ], + "summary": "Delete an existing dynamic person group. \r\nNote that Persons are not deleted with this operation. To delete person call Person Delete.", + "operationId": "PersonDirectory_DeleteDynamicPersonGroup", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "dynamicPersonGroupId", + "description": "User provided dynamic person group Id.", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Success" + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Delete dynamic person group example": { + "$ref": "./examples/DeleteDynamicPersonGroup.json" + } + } + } + }, + "/dynamicpersongroups/{dynamicPersonGroupId}/persons": { + "get": { + "tags": [ + "PersonDirectory" + ], + "summary": "Retrieve list of persons referenced in a given DynamicPersonGroup person directory.", + "operationId": "PersonDirectory_ListDynamicPersonGroupPersons", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "dynamicPersonGroupId", + "description": "Dynamic person group Id to list persons from", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "start", + "description": "List persons from the least personId greater than the \"start\". It contains no more than 64 characters. Default is empty.", + "type": "string" + }, + { + "in": "query", + "name": "top", + "description": "The number of persons to list, ranging in [1, 1000]. Default is 1000.", + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DynamicPersonGroupListPersonsResponse" + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List dynamic person group persons example": { + "$ref": "./examples/ListDynamicPersonGroupPersons.json" + } + } + } + }, + "/dynamicpersongroups": { + "get": { + "tags": [ + "PersonDirectory" + ], + "summary": "Retrieve list of dynamic person groups in person directory.", + "operationId": "PersonDirectory_ListDynamicPersonGroups", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "query", + "name": "start", + "description": "List dynamicPersonGroupId from the least dynamicPersonGroupId greater than the \"start\". It contains no more than 64 characters. Default is empty.", + "type": "string" + }, + { + "in": "query", + "name": "top", + "description": "The number of dynamicPersonGroups to list, ranging in [1, 1000]. Default is 1000.", + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/DynamicPersonGroupGetResponse" + } + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List dynamic person groups example": { + "$ref": "./examples/ListDynamicPersonGroups.json" + } + } + } + }, + "/persons/{personId}/dynamicPersonGroupReferences": { + "get": { + "tags": [ + "PersonDirectory" + ], + "summary": "List the dynamic person groups that a person has been referenced in.", + "operationId": "PersonDirectory_ListDynamicPersonGroupPersonReferences", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "personId", + "description": "Valid PersonId created from Person Create.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "start", + "description": "List dynamic person group id from the least dynamicPersonGroupId greater than the \"start\". It contains no more than 64 characters. Default is empty.", + "type": "string" + }, + { + "in": "query", + "name": "top", + "description": "The number of dynamicPersonGroupId to list, ranging in [1, 1000]. Default is 1000.", + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/PersonDynamicPersonGroupReferenceResponse" + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List dynamic person group references example": { + "$ref": "./examples/ListDynamicPersonGroupReferences.json" + } + } + } + } + }, + "x-ms-paths": { + "/verify?overload=person": { + "post": { + "description": "Verify whether two faces belong to a same person. Compares a face Id with a Person Id", + "operationId": "Face_VerifyFaceToPerson", + "parameters": [ + { + "name": "body", + "description": "Request body for face to person verification.", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/VerifyFaceToPersonRequest" + } + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "A successful call returns the verification result.", + "schema": { + "$ref": "#/definitions/VerifyResult" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "Verify face to person example": { + "$ref": "./examples/VerifyFaceToPerson.json" + } + } + } + }, + "/detect?overload=stream": { + "post": { + "description": "Detect human faces in an image, return face rectangles, and optionally with faceIds, landmarks, and attributes.
\n* No image will be stored. Only the extracted face feature will be stored on server. The faceId is an identifier of the face feature and will be used in [Face - Identify](https://docs.microsoft.com/rest/api/faceapi/face/identify), [Face - Verify](https://docs.microsoft.com/rest/api/faceapi/face/verifyfacetoface), and [Face - Find Similar](https://docs.microsoft.com/rest/api/faceapi/face/findsimilar). The stored face feature(s) will expire and be deleted at the time specified by faceIdTimeToLive after the original detection call.\n* Optional parameters include faceId, landmarks, and attributes. Attributes include age, gender, headPose, smile, facialHair, glasses, emotion, hair, makeup, occlusion, accessories, blur, exposure, noise, and mask. Some of the results returned for specific attributes may not be highly accurate.\n* JPEG, PNG, GIF (the first frame), and BMP format are supported. The allowed image file size is from 1KB to 6MB.\n* Up to 100 faces can be returned for an image. Faces are ranked by face rectangle size from large to small.\n* For optimal results when querying [Face - Identify](https://docs.microsoft.com/rest/api/faceapi/face/identify), [Face - Verify](https://docs.microsoft.com/rest/api/faceapi/face/verifyfacetoface), and [Face - Find Similar](https://docs.microsoft.com/rest/api/faceapi/face/findsimilar) ('returnFaceId' is true), please use faces that are: frontal, clear, and with a minimum size of 200x200 pixels (100 pixels between eyes).\n* The minimum detectable face size is 36x36 pixels in an image no larger than 1920x1080 pixels. Images with dimensions higher than 1920x1080 pixels will need a proportionally larger minimum face size.\n* Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to [How to specify a detection model](https://docs.microsoft.com/azure/cognitive-services/face/face-api-how-to-topics/specify-detection-model)\n* Different 'recognitionModel' values are provided. If follow-up operations like Verify, Identify, Find Similar are needed, please specify the recognition model with 'recognitionModel' parameter. The default value for 'recognitionModel' is 'recognition_01', if latest model needed, please explicitly specify the model you need in this parameter. Once specified, the detected faceIds will be associated with the specified recognition model. More details, please refer to [Specify a recognition model](https://docs.microsoft.com/azure/cognitive-services/face/face-api-how-to-topics/specify-recognition-model).", + "operationId": "Face_DetectWithStream", + "parameters": [ + { + "$ref": "#/parameters/returnFaceId" + }, + { + "$ref": "#/parameters/returnFaceLandmarks" + }, + { + "$ref": "#/parameters/returnFaceAttributes" + }, + { + "$ref": "../../../Common/Parameters.json#/parameters/ImageStream" + }, + { + "$ref": "#/parameters/recognitionModel" + }, + { + "$ref": "#/parameters/returnRecognitionModel" + }, + { + "$ref": "#/parameters/detectionModel" + }, + { + "$ref": "#/parameters/faceIdTimeToLive" + } + ], + "consumes": [ + "application/octet-stream" + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "A successful call returns an array of face entries ranked by face rectangle size in descending order. An empty response indicates no faces detected.", + "schema": { + "$ref": "#/definitions/DetectedFaces" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "Detect with stream example": { + "$ref": "./examples/DetectWithStream.json" + } + } + } + }, + "/persongroups/{personGroupId}/persons/{personId}/persistedfaces?overload=stream": { + "post": { + "description": "Add a face to a person into a person group for face identification or verification. To deal with an image contains multiple faces, input face can be specified as an image with a targetFace rectangle. It returns a persistedFaceId representing the added face. No image will be stored. Only the extracted face feature will be stored on server until [PersonGroup PersonFace - Delete](https://docs.microsoft.com/rest/api/faceapi/persongroupperson/deleteface), [PersonGroup Person - Delete](https://docs.microsoft.com/rest/api/faceapi/persongroupperson/delete) or [PersonGroup - Delete](https://docs.microsoft.com/rest/api/faceapi/persongroup/delete) is called.\n
Note persistedFaceId is different from faceId generated by [Face - Detect](https://docs.microsoft.com/rest/api/faceapi/face/detectwithurl).\n* Higher face image quality means better recognition precision. Please consider high-quality faces: frontal, clear, and face size is 200x200 pixels (100 pixels between eyes) or bigger.\n* Each person entry can hold up to 248 faces.\n* JPEG, PNG, GIF (the first frame), and BMP format are supported. The allowed image file size is from 1KB to 6MB.\n* \"targetFace\" rectangle should contain one face. Zero or multiple faces will be regarded as an error. If the provided \"targetFace\" rectangle is not returned from [Face - Detect](https://docs.microsoft.com/rest/api/faceapi/face/detectwithurl), there’s no guarantee to detect and add the face successfully.\n* Out of detectable face size (36x36 - 4096x4096 pixels), large head-pose, or large occlusions will cause failures.\n* Adding/deleting faces to/from a same person will be processed sequentially. Adding/deleting faces to/from different persons are processed in parallel.\n* The minimum detectable face size is 36x36 pixels in an image no larger than 1920x1080 pixels. Images with dimensions higher than 1920x1080 pixels will need a proportionally larger minimum face size.\n* Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to [How to specify a detection model](https://docs.microsoft.com/azure/cognitive-services/face/face-api-how-to-topics/specify-detection-model).", + "operationId": "PersonGroupPerson_AddFaceFromStream", + "parameters": [ + { + "$ref": "#/parameters/personGroupId" + }, + { + "$ref": "#/parameters/personId" + }, + { + "$ref": "#/parameters/faceUserData" + }, + { + "$ref": "#/parameters/targetFace" + }, + { + "$ref": "../../../Common/Parameters.json#/parameters/ImageStream" + }, + { + "$ref": "#/parameters/detectionModel" + } + ], + "produces": [ + "application/json" + ], + "consumes": [ + "application/octet-stream" + ], + "responses": { + "200": { + "description": "A successful call returns the new persistedFaceId.", + "schema": { + "$ref": "#/definitions/PersistedFace" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "Add face to person with stream example": { + "$ref": "./examples/AddPersonGroupPersonFaceFromStream.json" + } + } + } + }, + "/facelists/{faceListId}/persistedfaces?overload=stream": { + "post": { + "description": "Add a face to a specified face list, up to 1,000 faces.\n
To deal with an image contains multiple faces, input face can be specified as an image with a targetFace rectangle. It returns a persistedFaceId representing the added face. No image will be stored. Only the extracted face feature will be stored on server until [FaceList - Delete Face](https://docs.microsoft.com/rest/api/faceapi/facelist/deleteface) or [FaceList - Delete](https://docs.microsoft.com/rest/api/faceapi/facelist/delete) is called.\n
Note persistedFaceId is different from faceId generated by [Face - Detect](https://docs.microsoft.com/rest/api/faceapi/face/detectwithurl).\n* Higher face image quality means better detection and recognition precision. Please consider high-quality faces: frontal, clear, and face size is 200x200 pixels (100 pixels between eyes) or bigger.\n* JPEG, PNG, GIF (the first frame), and BMP format are supported. The allowed image file size is from 1KB to 6MB.\n* \"targetFace\" rectangle should contain one face. Zero or multiple faces will be regarded as an error. If the provided \"targetFace\" rectangle is not returned from [Face - Detect](https://docs.microsoft.com/rest/api/faceapi/face/detectwithurl), there’s no guarantee to detect and add the face successfully.\n* Out of detectable face size (36x36 - 4096x4096 pixels), large head-pose, or large occlusions will cause failures.\n* Adding/deleting faces to/from a same face list are processed sequentially and to/from different face lists are in parallel.\n* The minimum detectable face size is 36x36 pixels in an image no larger than 1920x1080 pixels. Images with dimensions higher than 1920x1080 pixels will need a proportionally larger minimum face size.\n* Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to [How to specify a detection model](https://docs.microsoft.com/azure/cognitive-services/face/face-api-how-to-topics/specify-detection-model).", + "operationId": "FaceList_AddFaceFromStream", + "parameters": [ + { + "$ref": "#/parameters/faceListId" + }, + { + "$ref": "#/parameters/faceUserData" + }, + { + "$ref": "#/parameters/targetFace" + }, + { + "$ref": "../../../Common/Parameters.json#/parameters/ImageStream" + }, + { + "$ref": "#/parameters/detectionModel" + } + ], + "consumes": [ + "application/octet-stream" + ], + "responses": { + "200": { + "description": "A successful call returns a new persistedFaceId.", + "schema": { + "$ref": "#/definitions/PersistedFace" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Add face to face list from stream example": { + "$ref": "./examples/AddFaceListFaceFromStream.json" + } + } + } + }, + "/largepersongroups/{largePersonGroupId}/persons/{personId}/persistedfaces?overload=stream": { + "post": { + "description": "Add a face to a person into a large person group for face identification or verification. To deal with an image contains multiple faces, input face can be specified as an image with a targetFace rectangle. It returns a persistedFaceId representing the added face. No image will be stored. Only the extracted face feature will be stored on server until [LargePersonGroup PersonFace - Delete](https://docs.microsoft.com/rest/api/faceapi/largepersongroupperson/deleteface), [LargePersonGroup Person - Delete](https://docs.microsoft.com/rest/api/faceapi/largepersongroupperson/delete) or [LargePersonGroup - Delete](https://docs.microsoft.com/rest/api/faceapi/largepersongroup/delete) is called.\n
Note persistedFaceId is different from faceId generated by [Face - Detect](https://docs.microsoft.com/rest/api/faceapi/face/detectwithurl).\n* Higher face image quality means better recognition precision. Please consider high-quality faces: frontal, clear, and face size is 200x200 pixels (100 pixels between eyes) or bigger.\n* Each person entry can hold up to 248 faces.\n* JPEG, PNG, GIF (the first frame), and BMP format are supported. The allowed image file size is from 1KB to 6MB.\n* \"targetFace\" rectangle should contain one face. Zero or multiple faces will be regarded as an error. If the provided \"targetFace\" rectangle is not returned from [Face - Detect](https://docs.microsoft.com/rest/api/faceapi/face/detectwithurl), there’s no guarantee to detect and add the face successfully.\n* Out of detectable face size (36x36 - 4096x4096 pixels), large head-pose, or large occlusions will cause failures.\n* Adding/deleting faces to/from a same person will be processed sequentially. Adding/deleting faces to/from different persons are processed in parallel.\n* The minimum detectable face size is 36x36 pixels in an image no larger than 1920x1080 pixels. Images with dimensions higher than 1920x1080 pixels will need a proportionally larger minimum face size.\n* Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to [How to specify a detection model](https://docs.microsoft.com/azure/cognitive-services/face/face-api-how-to-topics/specify-detection-model).", + "operationId": "LargePersonGroupPerson_AddFaceFromStream", + "parameters": [ + { + "$ref": "#/parameters/largePersonGroupId" + }, + { + "$ref": "#/parameters/personId" + }, + { + "$ref": "#/parameters/faceUserData" + }, + { + "$ref": "#/parameters/targetFace" + }, + { + "$ref": "../../../Common/Parameters.json#/parameters/ImageStream" + }, + { + "$ref": "#/parameters/detectionModel" + } + ], + "produces": [ + "application/json" + ], + "consumes": [ + "application/octet-stream" + ], + "responses": { + "200": { + "description": "A successful call returns the new persistedFaceId.", + "schema": { + "$ref": "#/definitions/PersistedFace" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "x-ms-examples": { + "Add face to person with stream example": { + "$ref": "./examples/AddLargePersonGroupPersonFaceFromStream.json" + } + } + } + }, + "/largefacelists/{largeFaceListId}/persistedfaces?overload=stream": { + "post": { + "description": "Add a face to a specified large face list, up to 1,000,000 faces.\n
To deal with an image contains multiple faces, input face can be specified as an image with a targetFace rectangle. It returns a persistedFaceId representing the added face. No image will be stored. Only the extracted face feature will be stored on server until [LargeFaceList Face - Delete](https://docs.microsoft.com/rest/api/faceapi/largefacelist/deleteface) or [LargeFaceList - Delete](https://docs.microsoft.com/rest/api/faceapi/largefacelist/delete) is called.\n
Note persistedFaceId is different from faceId generated by [Face - Detect](https://docs.microsoft.com/rest/api/faceapi/face/detectwithurl).\n* Higher face image quality means better recognition precision. Please consider high-quality faces: frontal, clear, and face size is 200x200 pixels (100 pixels between eyes) or bigger.\n* JPEG, PNG, GIF (the first frame), and BMP format are supported. The allowed image file size is from 1KB to 6MB.\n* \"targetFace\" rectangle should contain one face. Zero or multiple faces will be regarded as an error. If the provided \"targetFace\" rectangle is not returned from [Face - Detect](https://docs.microsoft.com/rest/api/faceapi/face/detectwithurl), there’s no guarantee to detect and add the face successfully.\n* Out of detectable face size (36x36 - 4096x4096 pixels), large head-pose, or large occlusions will cause failures.\n* Adding/deleting faces to/from a same face list are processed sequentially and to/from different face lists are in parallel.\n* The minimum detectable face size is 36x36 pixels in an image no larger than 1920x1080 pixels. Images with dimensions higher than 1920x1080 pixels will need a proportionally larger minimum face size.\n* Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to [How to specify a detection model](https://docs.microsoft.com/azure/cognitive-services/face/face-api-how-to-topics/specify-detection-model).\n\nQuota:\n* Free-tier subscription quota: 1,000 faces per large face list.\n* S0-tier subscription quota: 1,000,000 faces per large face list.", + "operationId": "LargeFaceList_AddFaceFromStream", + "parameters": [ + { + "$ref": "#/parameters/largeFaceListId" + }, + { + "$ref": "#/parameters/faceUserData" + }, + { + "$ref": "#/parameters/targetFace" + }, + { + "$ref": "../../../Common/Parameters.json#/parameters/ImageStream" + }, + { + "$ref": "#/parameters/detectionModel" + } + ], + "consumes": [ + "application/octet-stream" + ], + "responses": { + "200": { + "description": "A successful call returns a new persistedFaceId.", + "schema": { + "$ref": "#/definitions/PersistedFace" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/APIError" + } + } + }, + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Add face to large face list from stream example": { + "$ref": "./examples/AddLargeFaceListFaceFromStream.json" + } + } + } + }, + "/persons/{personId}/recognitionModels/{recognitionModel}/persistedFaces?overload=stream": { + "post": { + "tags": [ + "PersonDirectory" + ], + "summary": "Add a new face to person.", + "operationId": "PersonDirectory_AddPersonFaceFromStream", + "produces": [ + "application/json" + ], + "consumes": [ + "application/octet-stream" + ], + "parameters": [ + { + "in": "path", + "name": "personId", + "description": "Person id.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "recognitionModel", + "description": "Recognition model string.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "detectionModel", + "description": "Detection model string.", + "type": "string" + }, + { + "in": "query", + "name": "userData", + "description": "User data of person face.", + "type": "string" + }, + { + "in": "query", + "name": "targetFace", + "description": "Target face.", + "type": "string" + }, + { + "$ref": "../../../Common/Parameters.json#/parameters/ImageStream" + } + ], + "responses": { + "202": { + "description": "Success", + "schema": { + "$ref": "#/definitions/EnrollmentPrintResponse" + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Add face to person directory person with stream example": { + "$ref": "./examples/AddPersonDirectoryPersonFaceFromStream.json" + } + } + } + } + }, + "definitions": { + "APIError": { + "type": "object", + "description": "Error information returned by the API", + "properties": { + "error": { + "$ref": "#/definitions/Error" + } + } + }, + "Error": { + "type": "object", + "description": "Error body.", + "properties": { + "code": { + "type": "string" + }, + "message": { + "type": "string" + } + } + }, + "DetectedFaces": { + "type": "array", + "items": { + "$ref": "#/definitions/DetectedFace" + } + }, + "DetectedFace": { + "type": "object", + "required": [ + "faceRectangle" + ], + "description": "Detected Face object.", + "properties": { + "faceId": { + "type": "string", + "format": "uuid" + }, + "recognitionModel": { + "$ref": "#/definitions/RecognitionModel" + }, + "faceRectangle": { + "$ref": "#/definitions/FaceRectangle" + }, + "faceLandmarks": { + "$ref": "#/definitions/FaceLandmarks" + }, + "faceAttributes": { + "$ref": "#/definitions/FaceAttributes" + } + } + }, + "FaceRectangle": { + "type": "object", + "required": [ + "width", + "height", + "left", + "top" + ], + "description": "A rectangle within which a face can be found", + "properties": { + "width": { + "type": "integer", + "format": "int32", + "description": "The width of the rectangle, in pixels." + }, + "height": { + "type": "integer", + "format": "int32", + "description": "The height of the rectangle, in pixels." + }, + "left": { + "type": "integer", + "format": "int32", + "description": "The distance from the left edge if the image to the left edge of the rectangle, in pixels." + }, + "top": { + "type": "integer", + "format": "int32", + "description": "The distance from the top edge if the image to the top edge of the rectangle, in pixels." + } + } + }, + "Coordinate": { + "type": "object", + "required": [ + "x", + "y" + ], + "description": "Coordinates within an image", + "properties": { + "x": { + "type": "number", + "description": "The horizontal component, in pixels." + }, + "y": { + "type": "number", + "description": "The vertical component, in pixels." + } + } + }, + "FaceLandmarks": { + "type": "object", + "description": "A collection of 27-point face landmarks pointing to the important positions of face components.", + "properties": { + "pupilLeft": { + "$ref": "#/definitions/Coordinate" + }, + "pupilRight": { + "$ref": "#/definitions/Coordinate" + }, + "noseTip": { + "$ref": "#/definitions/Coordinate" + }, + "mouthLeft": { + "$ref": "#/definitions/Coordinate" + }, + "mouthRight": { + "$ref": "#/definitions/Coordinate" + }, + "eyebrowLeftOuter": { + "$ref": "#/definitions/Coordinate" + }, + "eyebrowLeftInner": { + "$ref": "#/definitions/Coordinate" + }, + "eyeLeftOuter": { + "$ref": "#/definitions/Coordinate" + }, + "eyeLeftTop": { + "$ref": "#/definitions/Coordinate" + }, + "eyeLeftBottom": { + "$ref": "#/definitions/Coordinate" + }, + "eyeLeftInner": { + "$ref": "#/definitions/Coordinate" + }, + "eyebrowRightInner": { + "$ref": "#/definitions/Coordinate" + }, + "eyebrowRightOuter": { + "$ref": "#/definitions/Coordinate" + }, + "eyeRightInner": { + "$ref": "#/definitions/Coordinate" + }, + "eyeRightTop": { + "$ref": "#/definitions/Coordinate" + }, + "eyeRightBottom": { + "$ref": "#/definitions/Coordinate" + }, + "eyeRightOuter": { + "$ref": "#/definitions/Coordinate" + }, + "noseRootLeft": { + "$ref": "#/definitions/Coordinate" + }, + "noseRootRight": { + "$ref": "#/definitions/Coordinate" + }, + "noseLeftAlarTop": { + "$ref": "#/definitions/Coordinate" + }, + "noseRightAlarTop": { + "$ref": "#/definitions/Coordinate" + }, + "noseLeftAlarOutTip": { + "$ref": "#/definitions/Coordinate" + }, + "noseRightAlarOutTip": { + "$ref": "#/definitions/Coordinate" + }, + "upperLipTop": { + "$ref": "#/definitions/Coordinate" + }, + "upperLipBottom": { + "$ref": "#/definitions/Coordinate" + }, + "underLipTop": { + "$ref": "#/definitions/Coordinate" + }, + "underLipBottom": { + "$ref": "#/definitions/Coordinate" + } + } + }, + "FaceAttributes": { + "type": "object", + "description": "Face Attributes", + "properties": { + "age": { + "type": "number", + "description": "Age in years" + }, + "gender": { + "type": "string", + "description": "Possible gender of the face.", + "x-ms-enum": { + "name": "Gender", + "modelAsString": false + }, + "enum": [ + "male", + "female" + ] + }, + "smile": { + "description": "Smile intensity, a number between [0,1] ", + "$ref": "#/definitions/Level" + }, + "facialHair": { + "description": "Properties describing facial hair attributes.", + "$ref": "#/definitions/FacialHair" + }, + "glasses": { + "type": "string", + "description": "Glasses type if any of the face.", + "x-ms-enum": { + "name": "GlassesType", + "modelAsString": false + }, + "enum": [ + "noGlasses", + "readingGlasses", + "sunglasses", + "swimmingGoggles" + ] + }, + "headPose": { + "description": "Properties indicating head pose of the face.", + "$ref": "#/definitions/HeadPose" + }, + "emotion": { + "description": "Properties describing facial emotion in form of confidence ranging from 0 to 1.", + "$ref": "#/definitions/Emotion" + }, + "hair": { + "description": "Properties describing hair attributes.", + "$ref": "#/definitions/Hair" + }, + "makeup": { + "description": "Properties describing the presence of makeup on a given face.", + "$ref": "#/definitions/Makeup" + }, + "occlusion": { + "description": "Properties describing occlusions on a given face.", + "$ref": "#/definitions/Occlusion" + }, + "accessories": { + "description": "Properties describing any accessories on a given face.", + "$ref": "#/definitions/Accessories" + }, + "blur": { + "description": "Properties describing any presence of blur within the image.", + "$ref": "#/definitions/Blur" + }, + "exposure": { + "description": "Properties describing exposure level of the image.", + "$ref": "#/definitions/Exposure" + }, + "noise": { + "description": "Properties describing noise level of the image.", + "$ref": "#/definitions/Noise" + }, + "mask": { + "description": "Properties describing the presence of a mask on a given face.", + "$ref": "#/definitions/Mask" + } + } + }, + "FacialHair": { + "type": "object", + "description": "Properties describing facial hair attributes.", + "properties": { + "moustache": { + "x-nullable": false, + "$ref": "#/definitions/Confidence" + }, + "beard": { + "x-nullable": false, + "$ref": "#/definitions/Confidence" + }, + "sideburns": { + "x-nullable": false, + "$ref": "#/definitions/Confidence" + } + } + }, + "HeadPose": { + "type": "object", + "description": "Properties indicating head pose of the face.", + "properties": { + "roll": { + "type": "number", + "x-nullable": false + }, + "yaw": { + "type": "number", + "x-nullable": false + }, + "pitch": { + "type": "number", + "x-nullable": false + } + } + }, + "Emotion": { + "type": "object", + "description": "Properties describing facial emotion in form of confidence ranging from 0 to 1.", + "properties": { + "anger": { + "x-nullable": false, + "$ref": "#/definitions/Confidence" + }, + "contempt": { + "x-nullable": false, + "$ref": "#/definitions/Confidence" + }, + "disgust": { + "x-nullable": false, + "$ref": "#/definitions/Confidence" + }, + "fear": { + "x-nullable": false, + "$ref": "#/definitions/Confidence" + }, + "happiness": { + "x-nullable": false, + "$ref": "#/definitions/Confidence" + }, + "neutral": { + "x-nullable": false, + "$ref": "#/definitions/Confidence" + }, + "sadness": { + "x-nullable": false, + "$ref": "#/definitions/Confidence" + }, + "surprise": { + "x-nullable": false, + "$ref": "#/definitions/Confidence" + } + } + }, + "Hair": { + "type": "object", + "description": "Properties describing hair attributes.", + "properties": { + "bald": { + "description": "A number describing confidence level of whether the person is bald.", + "x-nullable": false, + "$ref": "#/definitions/Confidence" + }, + "invisible": { + "type": "boolean", + "description": "A boolean value describing whether the hair is visible in the image.", + "x-nullable": false + }, + "hairColor": { + "description": "An array of candidate colors and confidence level in the presence of each.", + "$ref": "#/definitions/HairColors" + } + } + }, + "HairColors": { + "type": "array", + "items": { + "$ref": "#/definitions/HairColor" + } + }, + "HairColor": { + "type": "object", + "description": "Hair color and associated confidence", + "properties": { + "color": { + "type": "string", + "description": "Name of the hair color.", + "x-nullable": false, + "x-ms-enum": { + "name": "HairColorType", + "modelAsString": false + }, + "enum": [ + "unknown", + "white", + "gray", + "blond", + "brown", + "red", + "black", + "other" + ] + }, + "confidence": { + "x-nullable": false, + "description": "Confidence level of the color", + "$ref": "#/definitions/Confidence" + } + } + }, + "Makeup": { + "type": "object", + "description": "Properties describing the presence of makeup on a given face.", + "properties": { + "eyeMakeup": { + "type": "boolean", + "description": "A boolean value describing whether eye makeup is present on a face.", + "x-nullable": false + }, + "lipMakeup": { + "type": "boolean", + "description": "A boolean value describing whether lip makeup is present on a face.", + "x-nullable": false + } + } + }, + "Occlusion": { + "type": "object", + "description": "Properties describing occlusions on a given face.", + "properties": { + "foreheadOccluded": { + "type": "boolean", + "description": "A boolean value indicating whether forehead is occluded.", + "x-nullable": false + }, + "eyeOccluded": { + "type": "boolean", + "description": "A boolean value indicating whether eyes are occluded.", + "x-nullable": false + }, + "mouthOccluded": { + "type": "boolean", + "description": "A boolean value indicating whether the mouth is occluded.", + "x-nullable": false + } + } + }, + "Accessories": { + "type": "array", + "description": "Properties describing any accessories on a given face.", + "items": { + "$ref": "#/definitions/Accessory" + } + }, + "Accessory": { + "type": "object", + "description": "Accessory item and corresponding confidence level.", + "properties": { + "type": { + "type": "string", + "description": "Type of an accessory", + "x-nullable": false, + "x-ms-enum": { + "name": "AccessoryType", + "modelAsString": false + }, + "enum": [ + "headWear", + "glasses", + "mask" + ] + }, + "confidence": { + "x-nullable": false, + "description": "Confidence level of an accessory", + "$ref": "#/definitions/Confidence" + } + } + }, + "Blur": { + "type": "object", + "description": "Properties describing any presence of blur within the image.", + "properties": { + "blurLevel": { + "type": "string", + "description": "An enum value indicating level of blurriness.", + "x-nullable": false, + "x-ms-enum": { + "name": "BlurLevel", + "modelAsString": false + }, + "enum": [ + "Low", + "Medium", + "High" + ] + }, + "value": { + "description": "A number indicating level of blurriness ranging from 0 to 1.", + "x-nullable": false, + "$ref": "#/definitions/Level" + } + } + }, + "Exposure": { + "type": "object", + "description": "Properties describing exposure level of the image.", + "properties": { + "exposureLevel": { + "type": "string", + "description": "An enum value indicating level of exposure.", + "x-nullable": false, + "x-ms-enum": { + "name": "ExposureLevel", + "modelAsString": false + }, + "enum": [ + "UnderExposure", + "GoodExposure", + "OverExposure" + ] + }, + "value": { + "description": "A number indicating level of exposure level ranging from 0 to 1. [0, 0.25) is under exposure. [0.25, 0.75) is good exposure. [0.75, 1] is over exposure.", + "x-nullable": false, + "$ref": "#/definitions/Level" + } + } + }, + "Noise": { + "type": "object", + "description": "Properties describing noise level of the image.", + "properties": { + "noiseLevel": { + "type": "string", + "description": "An enum value indicating level of noise.", + "x-nullable": false, + "x-ms-enum": { + "name": "NoiseLevel", + "modelAsString": false + }, + "enum": [ + "Low", + "Medium", + "High" + ] + }, + "value": { + "description": "A number indicating level of noise level ranging from 0 to 1. [0, 0.25) is under exposure. [0.25, 0.75) is good exposure. [0.75, 1] is over exposure. [0, 0.3) is low noise level. [0.3, 0.7) is medium noise level. [0.7, 1] is high noise level.", + "x-nullable": false, + "$ref": "#/definitions/Level" + } + } + }, + "Mask": { + "type": "object", + "description": "Properties describing the presence of a mask on a given face.", + "properties": { + "type": { + "type": "string", + "description": "Mask type if any of the face", + "x-nullable": false, + "x-ms-enum": { + "name": "MaskType", + "modelAsString": false + }, + "enum": [ + "noMask", + "faceMask", + "otherMaskOrOcclusion", + "uncertain" + ] + }, + "noseAndMouthCovered": { + "type": "boolean", + "description": "A boolean value indicating whether nose and mouth are covered.", + "x-nullable": false + } + } + }, + "FindSimilarRequest": { + "type": "object", + "required": [ + "faceId" + ], + "description": "Request body for find similar operation.", + "properties": { + "faceId": { + "type": "string", + "format": "uuid", + "description": "FaceId of the query face. User needs to call Face - Detect first to get a valid faceId. Note that this faceId is not persisted and will expire at the time specified by faceIdTimeToLive after the detection call" + }, + "faceListId": { + "type": "string", + "description": "An existing user-specified unique candidate face list, created in Face List - Create a Face List. Face list contains a set of persistedFaceIds which are persisted and will never expire. Parameter faceListId, largeFaceListId and faceIds should not be provided at the same time.", + "maxLength": 64, + "pattern": "^[a-z0-9-_]+$" + }, + "largeFaceListId": { + "type": "string", + "description": "An existing user-specified unique candidate large face list, created in LargeFaceList - Create. Large face list contains a set of persistedFaceIds which are persisted and will never expire. Parameter faceListId, largeFaceListId and faceIds should not be provided at the same time.", + "maxLength": 64, + "pattern": "^[a-z0-9-_]+$" + }, + "faceIds": { + "type": "array", + "description": "An array of candidate faceIds. All of them are created by Face - Detect and the faceIds will expire at the time specified by faceIdTimeToLive after the detection call. The number of faceIds is limited to 1000. Parameter faceListId, largeFaceListId and faceIds should not be provided at the same time.", + "maxItems": 1000, + "items": { + "type": "string", + "format": "uuid" + } + }, + "maxNumOfCandidatesReturned": { + "type": "integer", + "description": "The number of top similar faces returned. The valid range is [1, 1000].", + "default": 20, + "minimum": 1, + "maximum": 1000 + }, + "mode": { + "type": "string", + "description": "Similar face searching mode. It can be \"matchPerson\" or \"matchFace\".", + "default": "matchPerson", + "x-nullable": false, + "x-ms-enum": { + "name": "FindSimilarMatchMode", + "modelAsString": false + }, + "enum": [ + "matchPerson", + "matchFace" + ] + } + } + }, + "SimilarFaces": { + "type": "array", + "items": { + "$ref": "#/definitions/SimilarFace" + } + }, + "SimilarFace": { + "type": "object", + "required": [ + "confidence" + ], + "description": "Response body for find similar face operation.", + "properties": { + "faceId": { + "type": "string", + "format": "uuid", + "description": "FaceId of candidate face when find by faceIds. faceId is created by Face - Detect and will expire at the time specified by faceIdTimeToLive after the detection call" + }, + "persistedFaceId": { + "type": "string", + "format": "uuid", + "description": "PersistedFaceId of candidate face when find by faceListId. persistedFaceId in face list is persisted and will not expire. As showed in below response" + }, + "confidence": { + "description": "Similarity confidence of the candidate face. The higher confidence, the more similar. Range between [0,1].", + "$ref": "#/definitions/Confidence" + } + } + }, + "GroupRequest": { + "type": "object", + "required": [ + "faceIds" + ], + "description": "Request body for group request.", + "properties": { + "faceIds": { + "type": "array", + "description": "Array of candidate faceId created by Face - Detect. The maximum is 1000 faces", + "maxItems": 1000, + "items": { + "type": "string", + "format": "uuid", + "x-nullable": false + } + } + } + }, + "GroupResult": { + "type": "object", + "required": [ + "groups" + ], + "description": "An array of face groups based on face similarity.", + "properties": { + "groups": { + "type": "array", + "description": "A partition of the original faces based on face similarity. Groups are ranked by number of faces", + "items": { + "type": "array", + "items": { + "type": "string", + "format": "uuid", + "x-nullable": false + } + } + }, + "messyGroup": { + "type": "array", + "description": "Face ids array of faces that cannot find any similar faces from original faces.", + "items": { + "type": "string", + "format": "uuid", + "x-nullable": false + } + } + } + }, + "IdentifyRequest": { + "type": "object", + "required": [ + "faceIds" + ], + "description": "Request body for identify face operation.", + "properties": { + "faceIds": { + "type": "array", + "description": "Array of query faces faceIds, created by the Face - Detect. Each of the faces are identified independently. The valid number of faceIds is between [1, 10].", + "maxItems": 10, + "items": { + "type": "string", + "format": "uuid", + "x-nullable": false + } + }, + "personGroupId": { + "description": "PersonGroupId of the target person group, created by PersonGroup - Create. Parameter personGroupId, largePersonGroupId, dynamicPersonGroupId, or personIds should not be provided at the same time.", + "type": "string", + "maxLength": 64, + "pattern": "^[a-z0-9-_]+$" + }, + "largePersonGroupId": { + "description": "LargePersonGroupId of the target large person group, created by LargePersonGroup - Create. Parameter personGroupId, largePersonGroupId, dynamicPersonGroupId, or personIds should not be provided at the same time.", + "type": "string", + "maxLength": 64, + "pattern": "^[a-z0-9-_]+$" + }, + "dynamicPersonGroupId": { + "description": "DynamicPersonGroupId of the target PersonDirectory dynamic person group to match against. Parameter personGroupId, largePersonGroupId, dynamicPersonGroupId, or personIds should not be provided at the same time.", + "type": "string", + "maxLength": 64, + "pattern": "^[a-z0-9-_]+$" + }, + "personIds": { + "description": "Array of personIds created in PersonDirectory - PersonCreate. The valid number of personIds is between [1,30]. Providing a single '*' in the array identifies against all persons inside the PersonDirectory. Parameter personGroupId, largePersonGroupId, dynamicPersonGroupId, or personIds should not be provided at the same time.", + "type": "array", + "maxItems": 30, + "items": { + "type": "string", + "x-nullable": false + } + }, + "maxNumOfCandidatesReturned": { + "type": "integer", + "description": "The range of maxNumOfCandidatesReturned is between 1 and 5 (default is 1).", + "default": 1, + "minimum": 1, + "maximum": 5 + }, + "confidenceThreshold": { + "description": "Confidence threshold of identification, used to judge whether one face belong to one person. The range of confidenceThreshold is [0, 1] (default specified by algorithm).", + "$ref": "#/definitions/Confidence" + } + } + }, + "IdentifyResults": { + "type": "array", + "items": { + "$ref": "#/definitions/IdentifyResult" + } + }, + "IdentifyResult": { + "type": "object", + "required": [ + "faceId", + "candidates" + ], + "description": "Response body for identify face operation.", + "properties": { + "faceId": { + "type": "string", + "format": "uuid", + "description": "FaceId of the query face" + }, + "candidates": { + "type": "array", + "description": "Identified person candidates for that face (ranked by confidence). Array size should be no larger than input maxNumOfCandidatesReturned. If no person is identified, will return an empty array.", + "items": { + "$ref": "#/definitions/IdentifyCandidate" + } + } + } + }, + "IdentifyCandidate": { + "type": "object", + "required": [ + "personId", + "confidence" + ], + "description": "All possible faces that may qualify.", + "properties": { + "personId": { + "type": "string", + "format": "uuid", + "description": "Id of candidate" + }, + "confidence": { + "description": "Confidence threshold of identification, used to judge whether one face belong to one person. The range of confidenceThreshold is [0, 1] (default specified by algorithm).", + "$ref": "#/definitions/Confidence" + } + } + }, + "VerifyFaceToPersonRequest": { + "type": "object", + "required": [ + "faceId", + "personId" + ], + "description": "Request body for face to person verification.", + "properties": { + "faceId": { + "type": "string", + "format": "uuid", + "description": "FaceId of the face, comes from Face - Detect" + }, + "personGroupId": { + "description": "Using existing personGroupId and personId for fast loading a specified person. personGroupId is created in PersonGroup - Create. Parameter personGroupId and largePersonGroupId should not be provided at the same time.", + "type": "string", + "maxLength": 64, + "pattern": "^[a-z0-9-_]+$" + }, + "largePersonGroupId": { + "description": "Using existing largePersonGroupId and personId for fast loading a specified person. largePersonGroupId is created in LargePersonGroup - Create. Parameter personGroupId and largePersonGroupId should not be provided at the same time.", + "type": "string", + "maxLength": 64, + "pattern": "^[a-z0-9-_]+$" + }, + "personId": { + "type": "string", + "format": "uuid", + "description": "Specify a certain person in a person group, a large person group, or person directory (if personGroupId and largePersonGroupId are omitted). personId is created in PersonGroup Person - Create or LargePersonGroup Person - Create or PersonDirectory - Create." + } + } + }, + "VerifyFaceToFaceRequest": { + "type": "object", + "required": [ + "faceId1", + "faceId2" + ], + "description": "Request body for face to face verification.", + "properties": { + "faceId1": { + "type": "string", + "format": "uuid", + "description": "FaceId of the first face, comes from Face - Detect" + }, + "faceId2": { + "type": "string", + "format": "uuid", + "description": "FaceId of the second face, comes from Face - Detect" + } + } + }, + "VerifyResult": { + "type": "object", + "required": [ + "isIdentical", + "confidence" + ], + "description": "Result of the verify operation.", + "properties": { + "isIdentical": { + "type": "boolean", + "description": "True if the two faces belong to the same person or the face belongs to the person, otherwise false." + }, + "confidence": { + "description": "A number indicates the similarity confidence of whether two faces belong to the same person, or whether the face belongs to the person. By default, isIdentical is set to True if similarity confidence is greater than or equal to 0.5. This is useful for advanced users to override \"isIdentical\" and fine-tune the result on their own data.", + "$ref": "#/definitions/Confidence" + } + } + }, + "FaceList": { + "description": "Face list object.", + "type": "object", + "required": [ + "faceListId" + ], + "properties": { + "faceListId": { + "type": "string", + "description": "FaceListId of the target face list.", + "maxLength": 64, + "pattern": "^[a-z0-9-_]+$" + }, + "persistedFaces": { + "description": "Persisted faces within the face list.", + "$ref": "#/definitions/PersistedFaces" + } + }, + "allOf": [ + { + "$ref": "#/definitions/MetaDataContract" + } + ] + }, + "FaceLists": { + "type": "array", + "description": "An array of face list results, with fields of faceListId, name and userData", + "items": { + "$ref": "#/definitions/FaceList" + } + }, + "PersonGroup": { + "type": "object", + "required": [ + "personGroupId" + ], + "description": "Person group object.", + "properties": { + "personGroupId": { + "description": "PersonGroupId of the target person group.", + "type": "string", + "maxLength": 64, + "pattern": "^[a-z0-9-_]+$" + } + }, + "allOf": [ + { + "$ref": "#/definitions/MetaDataContract" + } + ] + }, + "PersonGroups": { + "type": "array", + "description": "An array of person groups.", + "items": { + "$ref": "#/definitions/PersonGroup" + } + }, + "Person": { + "type": "object", + "required": [ + "personId" + ], + "description": "Person object.", + "properties": { + "personId": { + "type": "string", + "format": "uuid", + "description": "PersonId of the target face list." + }, + "persistedFaceIds": { + "type": "array", + "description": "PersistedFaceIds of registered faces in the person. These persistedFaceIds are returned from Person - Add a Person Face, and will not expire.", + "items": { + "type": "string", + "format": "uuid", + "x-nullable": false + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/NameAndUserDataContract" + } + ] + }, + "Persons": { + "type": "array", + "description": "An array of Persons.", + "items": { + "$ref": "#/definitions/Person" + } + }, + "PersistedFace": { + "type": "object", + "required": [ + "persistedFaceId" + ], + "description": "PersonFace object.", + "properties": { + "persistedFaceId": { + "type": "string", + "format": "uuid", + "description": "The persistedFaceId of the target face, which is persisted and will not expire. Different from faceId created by Face - Detect and will expire in at the time specified by faceIdTimeToLive after the detection call." + }, + "userData": { + "type": "string", + "description": "User-provided data attached to the face. The size limit is 1KB.", + "maxLength": 1024 + } + } + }, + "PersistedFaces": { + "type": "array", + "description": "An array of persisted faces within the face list or large face list.", + "items": { + "$ref": "#/definitions/PersistedFace" + } + }, + "LargeFaceList": { + "description": "Large face list object.", + "type": "object", + "required": [ + "largeFaceListId" + ], + "properties": { + "largeFaceListId": { + "type": "string", + "description": "LargeFaceListId of the target large face list.", + "maxLength": 64, + "pattern": "^[a-z0-9-_]+$" + } + }, + "allOf": [ + { + "$ref": "#/definitions/MetaDataContract" + } + ] + }, + "LargeFaceLists": { + "type": "array", + "description": "An array of large face list results, with fields of largeFaceListId, name and userData", + "items": { + "$ref": "#/definitions/LargeFaceList" + } + }, + "LargePersonGroup": { + "type": "object", + "required": [ + "largePersonGroupId" + ], + "description": "Large person group object.", + "properties": { + "largePersonGroupId": { + "description": "LargePersonGroupId of the target large person groups", + "type": "string", + "maxLength": 64, + "pattern": "^[a-z0-9-_]+$" + } + }, + "allOf": [ + { + "$ref": "#/definitions/MetaDataContract" + } + ] + }, + "LargePersonGroups": { + "type": "array", + "description": "An array of large person groups.", + "items": { + "$ref": "#/definitions/LargePersonGroup" + } + }, + "UpdateFaceRequest": { + "type": "object", + "description": "Request to update face data.", + "properties": { + "userData": { + "type": "string", + "description": "User-provided data attached to the face. The size limit is 1KB.", + "maxLength": 1024 + } + } + }, + "TrainingStatus": { + "type": "object", + "required": [ + "status", + "createdDateTime" + ], + "description": "Training status object.", + "properties": { + "status": { + "type": "string", + "description": "Training status: notstarted, running, succeeded, failed. If the training process is waiting to perform, the status is notstarted. If the training is ongoing, the status is running. Status succeed means this person group or large person group is ready for Face - Identify, or this large face list is ready for Face - Find Similar. Status failed is often caused by no person or no persisted face exist in the person group or large person group, or no persisted face exist in the large face list.", + "x-ms-enum": { + "name": "TrainingStatusType", + "modelAsString": false + }, + "enum": [ + "nonstarted", + "running", + "succeeded", + "failed" + ] + }, + "createdDateTime": { + "type": "string", + "format": "date-time", + "description": "A combined UTC date and time string that describes the created time of the person group, large person group or large face list.", + "x-ms-client-name": "created" + }, + "lastActionDateTime": { + "type": "string", + "format": "date-time", + "description": "A combined UTC date and time string that describes the last modify time of the person group, large person group or large face list, could be null value when the group is not successfully trained.", + "x-ms-client-name": "lastAction" + }, + "lastSuccessfulTrainingDateTime": { + "type": "string", + "format": "date-time", + "description": "A combined UTC date and time string that describes the last successful training time of the person group, large person group or large face list.", + "x-ms-client-name": "lastSuccessfulTraining" + }, + "message": { + "type": "string", + "description": "Show failure message when training failed (omitted when training succeed)." + } + } + }, + "Confidence": { + "description": "A number ranging from 0 to 1 indicating a level of confidence associated with a property.", + "type": "number", + "minimum": 0, + "maximum": 1 + }, + "Level": { + "description": "A number ranging from 0 to 1 indicating the intensity level associated with a property.", + "type": "number", + "minimum": 0, + "maximum": 1 + }, + "NameAndUserDataContract": { + "type": "object", + "description": "A combination of user defined name and user specified data for the person, largePersonGroup/personGroup, and largeFaceList/faceList.", + "properties": { + "name": { + "type": "string", + "description": "User defined name, maximum length is 128.", + "maxLength": 128 + }, + "userData": { + "type": "string", + "description": "User specified data. Length should not exceed 16KB.", + "maxLength": 16384 + } + } + }, + "MetaDataContract": { + "type": "object", + "description": "A combination of user defined name and user specified data and recognition model name for largePersonGroup/personGroup, and largeFaceList/faceList.", + "properties": { + "recognitionModel": { + "$ref": "#/definitions/RecognitionModel" + } + }, + "allOf": [ + { + "$ref": "#/definitions/NameAndUserDataContract" + } + ] + }, + "RecognitionModel": { + "type": "string", + "description": "Name of recognition model. Recognition model is used when the face features are extracted and associated with detected faceIds, (Large)FaceList or (Large)PersonGroup. A recognition model name can be provided when performing Face - Detect or (Large)FaceList - Create or (Large)PersonGroup - Create. The default value is 'recognition_01', if latest model needed, please explicitly specify the model you need.", + "default": "recognition_01", + "x-nullable": false, + "x-ms-enum": { + "name": "RecognitionModel", + "modelAsString": true + }, + "enum": [ + "recognition_01", + "recognition_02", + "recognition_03", + "recognition_04" + ] + }, + "ApplyScope": { + "type": "array", + "description": "Array of the target Face subscription ids for the snapshot, specified by the user who created the snapshot when calling Snapshot - Take. For each snapshot, only subscriptions included in the applyScope of Snapshot - Take can apply it.", + "items": { + "type": "string", + "format": "uuid", + "x-nullable": false + } + }, + "ApplySnapshotRequest": { + "type": "object", + "required": [ + "objectId" + ], + "description": "Request body for applying snapshot operation.", + "properties": { + "objectId": { + "type": "string", + "description": "User specified target object id to be created from the snapshot.", + "maxLength": 64, + "pattern": "^[a-z0-9-_]+$" + }, + "mode": { + "type": "string", + "description": "Snapshot applying mode. Currently only CreateNew is supported, which means the apply operation will fail if target subscription already contains an object of same type and using the same objectId. Users can specify the \"objectId\" in request body to avoid such conflicts.", + "default": "CreateNew", + "x-nullable": false, + "x-ms-enum": { + "name": "SnapshotApplyMode", + "modelAsString": false + }, + "enum": [ + "CreateNew" + ] + } + } + }, + "Snapshots": { + "type": "array", + "description": "An array of snapshots.", + "items": { + "$ref": "#/definitions/Snapshot" + } + }, + "Snapshot": { + "type": "object", + "required": [ + "id", + "account", + "type", + "applyScope", + "createdTime", + "lastUpdateTime" + ], + "description": "Snapshot object.", + "properties": { + "id": { + "type": "string", + "format": "uuid", + "description": "Snapshot id." + }, + "account": { + "type": "string", + "description": "Azure Cognitive Service Face account id of the subscriber who created the snapshot by Snapshot - Take." + }, + "type": { + "type": "string", + "description": "Type of the source object in the snapshot, specified by the subscriber who created the snapshot when calling Snapshot - Take. Currently FaceList, PersonGroup, LargeFaceList and LargePersonGroup are supported.", + "x-ms-enum": { + "name": "SnapshotObjectType", + "modelAsString": false + }, + "enum": [ + "FaceList", + "LargeFaceList", + "LargePersonGroup", + "PersonGroup" + ] + }, + "applyScope": { + "description": "Array of the target Face subscription ids for the snapshot, specified by the user who created the snapshot when calling Snapshot - Take. For each snapshot, only subscriptions included in the applyScope of Snapshot - Take can apply it.", + "$ref": "#/definitions/ApplyScope" + }, + "userData": { + "type": "string", + "description": "User specified data about the snapshot for any purpose. Length should not exceed 16KB.", + "maxLength": 16384 + }, + "createdTime": { + "type": "string", + "format": "date-time", + "description": "A combined UTC date and time string that describes the created time of the snapshot. E.g. 2018-12-25T11:41:02.2331413Z." + }, + "lastUpdateTime": { + "type": "string", + "format": "date-time", + "description": "A combined UTC date and time string that describes the last time when the snapshot was created or updated by Snapshot - Update. E.g. 2018-12-25T11:51:27.8705696Z." + } + } + }, + "TakeSnapshotRequest": { + "type": "object", + "required": [ + "type", + "objectId", + "applyScope" + ], + "description": "Request body for taking snapshot operation.", + "properties": { + "type": { + "type": "string", + "description": "User specified type for the source object to take snapshot from. Currently FaceList, PersonGroup, LargeFaceList and LargePersonGroup are supported.", + "x-ms-enum": { + "name": "SnapshotObjectType", + "modelAsString": false + }, + "enum": [ + "FaceList", + "LargeFaceList", + "LargePersonGroup", + "PersonGroup" + ] + }, + "objectId": { + "type": "string", + "description": "User specified source object id to take snapshot from.", + "maxLength": 64, + "pattern": "^[a-z0-9-_]+$" + }, + "applyScope": { + "description": "User specified array of target Face subscription ids for the snapshot. For each snapshot, only subscriptions included in the applyScope of Snapshot - Take can apply it.", + "$ref": "#/definitions/ApplyScope" + }, + "userData": { + "type": "string", + "description": "User specified data about the snapshot for any purpose. Length should not exceed 16KB.", + "maxLength": 16384 + } + } + }, + "UpdateSnapshotRequest": { + "type": "object", + "description": "Request body for updating a snapshot, with a combination of user defined apply scope and user specified data.", + "properties": { + "applyScope": { + "description": "Array of the target Face subscription ids for the snapshot, specified by the user who created the snapshot when calling Snapshot - Take. For each snapshot, only subscriptions included in the applyScope of Snapshot - Take can apply it.", + "$ref": "#/definitions/ApplyScope" + }, + "userData": { + "type": "string", + "description": "User specified data about the snapshot for any purpose. Length should not exceed 16KB.", + "maxLength": 16384 + } + } + }, + "OperationStatus": { + "type": "object", + "required": [ + "status", + "createdTime" + ], + "description": "Operation status object. Operation refers to the asynchronous backend task including taking a snapshot and applying a snapshot.", + "properties": { + "status": { + "type": "string", + "description": "Operation status: notstarted, running, succeeded, failed. If the operation is requested and waiting to perform, the status is notstarted. If the operation is ongoing in backend, the status is running. Status succeeded means the operation is completed successfully, specifically for snapshot taking operation, it illustrates the snapshot is well taken and ready to apply, and for snapshot applying operation, it presents the target object has finished creating by the snapshot and ready to be used. Status failed is often caused by editing the source object while taking the snapshot or editing the target object while applying the snapshot before completion, see the field \"message\" to check the failure reason.", + "x-ms-enum": { + "name": "OperationStatusType", + "modelAsString": false + }, + "enum": [ + "notstarted", + "running", + "succeeded", + "failed" + ] + }, + "createdTime": { + "type": "string", + "format": "date-time", + "description": "A combined UTC date and time string that describes the time when the operation (take or apply a snapshot) is requested. E.g. 2018-12-25T11:41:02.2331413Z." + }, + "lastActionTime": { + "type": "string", + "format": "date-time", + "description": "A combined UTC date and time string that describes the last time the operation (take or apply a snapshot) is actively migrating data. The lastActionTime will keep increasing until the operation finishes. E.g. 2018-12-25T11:51:27.8705696Z." + }, + "resourceLocation": { + "type": "string", + "description": "When the operation succeeds successfully, for snapshot taking operation the snapshot id will be included in this field, and for snapshot applying operation, the path to get the target object will be returned in this field." + }, + "message": { + "type": "string", + "description": "Show failure message when operation fails (omitted when operation succeeds)." + } + } + }, + "PersistedFaceResponse": { + "type": "object", + "properties": { + "persistedFaceId": { + "format": "uuid", + "type": "string" + }, + "userData": { + "type": "string" + } + } + }, + "AsyncOperationStatus": { + "enum": [ + "notStarted", + "running", + "succeeded", + "failed" + ], + "type": "string" + }, + "AsyncStatus": { + "type": "object", + "properties": { + "status": { + "$ref": "#/definitions/AsyncOperationStatus" + }, + "createdTime": { + "format": "date-time", + "type": "string" + }, + "lastActionTime": { + "format": "date-time", + "type": "string" + }, + "finishedTime": { + "format": "date-time", + "type": "string" + }, + "resourceLocation": { + "type": "string" + }, + "message": { + "type": "string" + } + } + }, + "EnrollmentResponse": { + "type": "object", + "properties": { + "personId": { + "format": "uuid", + "type": "string" + }, + "name": { + "type": "string" + }, + "userData": { + "type": "string" + } + } + }, + "EnrolledPerson": { + "type": "object", + "properties": { + "personId": { + "format": "uuid", + "type": "string" + }, + "name": { + "type": "string" + }, + "userData": { + "type": "string" + } + } + }, + "PersonCreationResponse": { + "type": "object", + "properties": { + "personId": { + "format": "uuid", + "type": "string" + } + } + }, + "EnrollmentRequest": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "userData": { + "type": "string" + } + } + }, + "EnrollmentPrintResponse": { + "type": "object", + "properties": { + "persistedFaceId": { + "format": "uuid", + "type": "string" + }, + "recognitionModel": { + "type": "string" + }, + "userData": { + "type": "string" + } + } + }, + "PersonResponse": { + "type": "object", + "properties": { + "personId": { + "format": "uuid", + "type": "string" + }, + "persistedFaceIds": { + "type": "array", + "items": { + "format": "uuid", + "type": "string" + } + }, + "name": { + "type": "string" + }, + "userData": { + "type": "string" + } + } + }, + "DetectionModel": { + "enum": [ + "detection_01", + "detection_02", + "detection_03", + "detection_preview_1904", + "ir_detection_01", + "expression_01" + ], + "type": "string" + }, + "PersistedFaceWithType": { + "type": "object", + "properties": { + "detectionModel": { + "$ref": "#/definitions/DetectionModel" + }, + "faceFeature": { + "format": "byte", + "type": "string" + }, + "persistedFaceId": { + "format": "uuid", + "type": "string" + }, + "userData": { + "type": "string" + } + } + }, + "DynamicPersonGroupCreateRequest": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "userData": { + "type": "string" + }, + "addPersonIds": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "DynamicPersonGroupUpdateRequest": { + "type": "object", + "properties": { + "removePersonIds": { + "type": "array", + "items": { + "type": "string" + } + }, + "name": { + "type": "string" + }, + "userData": { + "type": "string" + }, + "addPersonIds": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "DynamicPersonGroupGetResponse": { + "type": "object", + "properties": { + "dynamicPersonGroupId": { + "type": "string" + }, + "name": { + "type": "string" + }, + "userData": { + "type": "string" + } + } + }, + "DynamicPersonGroupListPersonsResponse": { + "type": "object", + "properties": { + "personIds": { + "type": "array", + "items": { + "format": "uuid", + "type": "string" + } + } + } + }, + "PersonDynamicPersonGroupReferenceResponse": { + "type": "object", + "properties": { + "personId": { + "format": "uuid", + "type": "string" + }, + "dynamicPersonGroupIds": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + }, + "parameters": { + "returnFaceAttributes": { + "name": "returnFaceAttributes", + "in": "query", + "description": "Analyze and return the one or more specified face attributes in the comma-separated string like \"returnFaceAttributes=age,gender\". The available attributes depends on the 'detectionModel' specified. 'detection_01' supports age, gender, headPose, smile, facialHair, glasses, emotion, hair, makeup, occlusion, accessories, blur, exposure, and noise. While 'detection_02' does not support any attributes and 'detection_03' only supports mask. Note that each face attribute analysis has additional computational and time cost.", + "type": "array", + "x-ms-parameter-location": "method", + "required": false, + "collectionFormat": "csv", + "items": { + "type": "string", + "x-nullable": false, + "x-ms-enum": { + "name": "FaceAttributeType", + "modelAsString": false + }, + "enum": [ + "age", + "gender", + "headPose", + "smile", + "facialHair", + "glasses", + "emotion", + "hair", + "makeup", + "occlusion", + "accessories", + "blur", + "exposure", + "noise", + "mask" + ] + } + }, + "targetFace": { + "name": "targetFace", + "in": "query", + "description": "A face rectangle to specify the target face to be added to a person in the format of \"targetFace=left,top,width,height\". E.g. \"targetFace=10,10,100,100\". If there is more than one face in the image, targetFace is required to specify which face to add. No targetFace means there is only one face detected in the entire image.", + "type": "array", + "x-ms-parameter-location": "method", + "required": false, + "collectionFormat": "csv", + "items": { + "type": "integer", + "format": "int32", + "x-nullable": false, + "maxItems": 4, + "minItems": 4 + } + }, + "faceUserData": { + "name": "userData", + "in": "query", + "description": "User-specified data about the face for any purpose. The maximum length is 1KB.", + "type": "string", + "maxLength": 1024, + "x-ms-parameter-location": "method", + "required": false, + "collectionFormat": "csv" + }, + "faceListId": { + "name": "faceListId", + "in": "path", + "description": "Id referencing a particular face list.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "collectionFormat": "csv", + "maxLength": 64, + "pattern": "^[a-z0-9-_]+$" + }, + "personGroupId": { + "name": "personGroupId", + "in": "path", + "description": "Id referencing a particular person group.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "collectionFormat": "csv", + "maxLength": 64, + "pattern": "^[a-z0-9-_]+$" + }, + "largeFaceListId": { + "name": "largeFaceListId", + "in": "path", + "description": "Id referencing a particular large face list.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "collectionFormat": "csv", + "maxLength": 64, + "pattern": "^[a-z0-9-_]+$" + }, + "largePersonGroupId": { + "name": "largePersonGroupId", + "in": "path", + "description": "Id referencing a particular large person group.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "collectionFormat": "csv", + "maxLength": 64, + "pattern": "^[a-z0-9-_]+$" + }, + "personId": { + "name": "personId", + "in": "path", + "description": "Id referencing a particular person.", + "required": true, + "type": "string", + "format": "uuid", + "x-ms-parameter-location": "method", + "collectionFormat": "csv" + }, + "persistedFaceId": { + "name": "persistedFaceId", + "in": "path", + "description": "Id referencing a particular persistedFaceId of an existing face.", + "required": true, + "type": "string", + "format": "uuid", + "x-ms-parameter-location": "method", + "collectionFormat": "csv" + }, + "applyScope": { + "name": "applyScope", + "description": "User specified snapshot apply scopes as a search filter. ApplyScope is an array of the target Azure subscription ids for the snapshot, specified by the user who created the snapshot by Snapshot - Take.", + "in": "query", + "required": false, + "type": "array", + "x-ms-parameter-location": "method", + "collectionFormat": "csv", + "items": { + "type": "string", + "format": "uuid", + "x-nullable": false + } + }, + "operationId": { + "name": "operationId", + "in": "path", + "description": "Id referencing a particular take/apply snapshot operation.", + "required": true, + "type": "string", + "format": "uuid", + "x-ms-parameter-location": "method", + "collectionFormat": "csv" + }, + "snapshotId": { + "name": "snapshotId", + "in": "path", + "description": "Id referencing a particular snapshot.", + "required": true, + "type": "string", + "format": "uuid", + "x-ms-parameter-location": "method", + "collectionFormat": "csv" + }, + "Endpoint": { + "name": "Endpoint", + "description": "Supported Cognitive Services endpoints (protocol and hostname, for example: https://westus.api.cognitive.microsoft.com).", + "x-ms-parameter-location": "client", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true + }, + "recognitionModel": { + "name": "recognitionModel", + "description": "Name of recognition model. Recognition model is used when the face features are extracted and associated with detected faceIds, (Large)FaceList or (Large)PersonGroup. A recognition model name can be provided when performing Face - Detect or (Large)FaceList - Create or (Large)PersonGroup - Create. The default value is 'recognition_01', if latest model needed, please explicitly specify the model you need.", + "default": "recognition_01", + "required": false, + "type": "string", + "in": "query", + "x-ms-parameter-location": "method", + "x-nullable": false, + "x-ms-enum": { + "name": "RecognitionModel", + "modelAsString": true + }, + "enum": [ + "recognition_01", + "recognition_02", + "recognition_03", + "recognition_04" + ] + }, + "returnRecognitionModel": { + "name": "returnRecognitionModel", + "description": "A value indicating whether the operation should return 'recognitionModel' in response.", + "default": false, + "required": false, + "type": "boolean", + "in": "query", + "x-ms-parameter-location": "method" + }, + "detectionModel": { + "name": "detectionModel", + "description": "Name of detection model. Detection model is used to detect faces in the submitted image. A detection model name can be provided when performing Face - Detect or (Large)FaceList - Add Face or (Large)PersonGroup - Add Face. The default value is 'detection_01', if another model is needed, please explicitly specify it.", + "default": "detection_01", + "required": false, + "type": "string", + "in": "query", + "x-ms-parameter-location": "method", + "x-nullable": false, + "x-ms-enum": { + "name": "DetectionModel", + "modelAsString": true + }, + "enum": [ + "detection_01", + "detection_02", + "detection_03" + ] + }, + "returnFaceId": { + "name": "returnFaceId", + "in": "query", + "x-ms-parameter-location": "method", + "description": "A value indicating whether the operation should return faceIds of detected faces.", + "type": "boolean", + "default": true + }, + "returnFaceLandmarks": { + "name": "returnFaceLandmarks", + "in": "query", + "x-ms-parameter-location": "method", + "description": "A value indicating whether the operation should return landmarks of the detected faces.", + "type": "boolean", + "default": false + }, + "faceIdTimeToLive": { + "name": "faceIdTimeToLive", + "in": "query", + "x-ms-parameter-location": "method", + "description": "The number of seconds for the faceId being cached. Supported range from 60 seconds up to 86400 seconds. The default value is 86400 (24 hours).", + "type": "integer", + "default": 86400, + "minimum": 60, + "maximum": 86400 + } + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/AddFaceListFaceFromStream.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/AddFaceListFaceFromStream.json new file mode 100644 index 000000000000..ba03f3780650 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/AddFaceListFaceFromStream.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/octet-stream", + "Ocp-Apim-Subscription-Key": "{API key}", + "faceListId": "sample_face_list", + "userData": "{Customized user data}", + "targetFace": [ + 10, + 10, + 100, + 100 + ], + "Image": "{Image stream in base 64 encoded format}", + "detectionModel": "detection_01" + }, + "responses": { + "200": { + "body": { + "persistedFaceId": "B8D802CF-DD8F-4E61-B15C-9E6C5844CCBA" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/AddFaceListFaceFromUrl.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/AddFaceListFaceFromUrl.json new file mode 100644 index 000000000000..e54883e45ff6 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/AddFaceListFaceFromUrl.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "faceListId": "sample_face_list", + "userData": "{Customized user data}", + "targetFace": [ + 10, + 10, + 100, + 100 + ], + "ImageUrl": { + "url": "{Image Url here}" + }, + "detectionModel": "detection_01" + }, + "responses": { + "200": { + "body": { + "persistedFaceId": "B8D802CF-DD8F-4E61-B15C-9E6C5844CCBA" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/AddLargeFaceListFaceFromStream.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/AddLargeFaceListFaceFromStream.json new file mode 100644 index 000000000000..3435e5128732 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/AddLargeFaceListFaceFromStream.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/octet-stream", + "Ocp-Apim-Subscription-Key": "{API key}", + "largeFaceListId": "sample_face_list", + "userData": "{Customized user data}", + "targetFace": [ + 10, + 10, + 100, + 100 + ], + "Image": "{Image stream in base 64 encoded format}", + "detectionModel": "detection_01" + }, + "responses": { + "200": { + "body": { + "persistedFaceId": "B8D802CF-DD8F-4E61-B15C-9E6C5844CCBA" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/AddLargeFaceListFaceFromUrl.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/AddLargeFaceListFaceFromUrl.json new file mode 100644 index 000000000000..cfc48557fa4f --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/AddLargeFaceListFaceFromUrl.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "largeFaceListId": "sample_face_list", + "userData": "{Customized user data}", + "targetFace": [ + 10, + 10, + 100, + 100 + ], + "ImageUrl": { + "url": "{Image Url here}" + }, + "detectionModel": "detection_01" + }, + "responses": { + "200": { + "body": { + "persistedFaceId": "B8D802CF-DD8F-4E61-B15C-9E6C5844CCBA" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/AddLargePersonGroupPersonFaceFromStream.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/AddLargePersonGroupPersonFaceFromStream.json new file mode 100644 index 000000000000..c6993a8a95bc --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/AddLargePersonGroupPersonFaceFromStream.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/octet-stream", + "Ocp-Apim-Subscription-Key": "{API key}", + "largePersonGroupId": "abc", + "personId": "4caa25ee-3bc6-4e88-adf8-12455ce7aab0", + "userData": "{customized User data}", + "targetFace": [ + 10, + 10, + 100, + 100 + ], + "Image": "{Image stream in base 64 encoded format}", + "detectionModel": "detection_01" + }, + "responses": { + "200": { + "body": { + "persistedFaceId": "6e04c175-219e-42a2-9d26-0e7b790e1ef4" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/AddLargePersonGroupPersonFaceFromUrl.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/AddLargePersonGroupPersonFaceFromUrl.json new file mode 100644 index 000000000000..b8a1e3fc5d82 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/AddLargePersonGroupPersonFaceFromUrl.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "largePersonGroupId": "abc", + "personId": "4caa25ee-3bc6-4e88-adf8-12455ce7aab0", + "userData": "{customized User data}", + "targetFace": [ + 10, + 10, + 100, + 100 + ], + "ImageUrl": { + "url": "{Image Url here}" + }, + "detectionModel": "detection_01" + }, + "responses": { + "200": { + "body": { + "persistedFaceId": "6e04c175-219e-42a2-9d26-0e7b790e1ef4" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/AddPersonDirectoryPersonFaceFromStream.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/AddPersonDirectoryPersonFaceFromStream.json new file mode 100644 index 000000000000..a0472d1b8c6c --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/AddPersonDirectoryPersonFaceFromStream.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/octet-stream", + "Ocp-Apim-Subscription-Key": "{API key}", + "personId": "4caa25ee-3bc6-4e88-adf8-12455ce7aab0", + "userData": "{customized User data}", + "targetFace": "[10, 10, 100, 100]", + "Image": "{Image stream in base 64 encoded format}", + "recognitionModel": "recognition_02", + "detectionModel": "detection_01" + }, + "responses": { + "202": { + "body": { + "persistedFaceId": "6e04c175-219e-42a2-9d26-0e7b790e1ef4", + "recognitionModel": null, + "userData": null + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/AddPersonDirectoryPersonFaceFromUrl.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/AddPersonDirectoryPersonFaceFromUrl.json new file mode 100644 index 000000000000..67cfe0b4669b --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/AddPersonDirectoryPersonFaceFromUrl.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "personId": "4caa25ee-3bc6-4e88-adf8-12455ce7aab0", + "userData": "{customized User data}", + "targetFace": "[10, 10, 100, 100]", + "ImageUrl": { + "url": "{Image Url here}" + }, + "recognitionModel": "recognition_02", + "detectionModel": "detection_01" + }, + "responses": { + "202": { + "body": { + "persistedFaceId": "6e04c175-219e-42a2-9d26-0e7b790e1ef4", + "recognitionModel": null, + "userData": null + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/AddPersonGroupPersonFaceFromStream.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/AddPersonGroupPersonFaceFromStream.json new file mode 100644 index 000000000000..95fb0ffefa69 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/AddPersonGroupPersonFaceFromStream.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/octet-stream", + "Ocp-Apim-Subscription-Key": "{API key}", + "personGroupId": "abc", + "personId": "4caa25ee-3bc6-4e88-adf8-12455ce7aab0", + "userData": "{customized User data}", + "targetFace": [ + 10, + 10, + 100, + 100 + ], + "Image": "{Image stream in base 64 encoded format}", + "detectionModel": "detection_01" + }, + "responses": { + "200": { + "body": { + "persistedFaceId": "6e04c175-219e-42a2-9d26-0e7b790e1ef4" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/AddPersonGroupPersonFaceFromUrl.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/AddPersonGroupPersonFaceFromUrl.json new file mode 100644 index 000000000000..a5e102adc5cb --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/AddPersonGroupPersonFaceFromUrl.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "personGroupId": "abc", + "personId": "4caa25ee-3bc6-4e88-adf8-12455ce7aab0", + "userData": "{customized User data}", + "targetFace": [ + 10, + 10, + 100, + 100 + ], + "ImageUrl": { + "url": "{Image Url here}" + }, + "detectionModel": "detection_01" + }, + "responses": { + "200": { + "body": { + "persistedFaceId": "6e04c175-219e-42a2-9d26-0e7b790e1ef4" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/ApplySnapshot.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/ApplySnapshot.json new file mode 100644 index 000000000000..b6a9b3b07da6 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/ApplySnapshot.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "snapshotId": "e58b3f08-1e8b-4165-81df-aa9858f233dc", + "body": { + "objectId": "target-face-list-id", + "mode": "CreateNew" + } + }, + "responses": { + "202": { + "header": { + "Operation-Location": "/operations/84276574-2a2a-4540-a1b0-f65d834d225b" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/CreateNewDynamicPersonGroup.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/CreateNewDynamicPersonGroup.json new file mode 100644 index 000000000000..6b55410a2911 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/CreateNewDynamicPersonGroup.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "dynamicPersonGroupId": "abc", + "body": { + "name": "group1", + "userData": "user-provided data attached to the person group." + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/CreateNewFaceList.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/CreateNewFaceList.json new file mode 100644 index 000000000000..27b931726dc5 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/CreateNewFaceList.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "faceListId": "sample_face_list", + "body": { + "name": "sample_list", + "userData": "User-provided data attached to the face list.", + "recognitionModel": "recognition_01" + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/CreateNewLargeFaceList.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/CreateNewLargeFaceList.json new file mode 100644 index 000000000000..7d9471cc218b --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/CreateNewLargeFaceList.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "largeFaceListId": "sample_face_list", + "body": { + "name": "large-face-list-name", + "userData": "User-provided data attached to the large face list.", + "recognitionModel": "recognition_01" + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/CreateNewLargePersonGroup.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/CreateNewLargePersonGroup.json new file mode 100644 index 000000000000..213cca68a808 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/CreateNewLargePersonGroup.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "largePersonGroupId": "abc", + "body": { + "name": "large-person-group-name", + "userData": "User-provided data attached to the large person group.", + "recognitionModel": "recognition_01" + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/CreateNewLargePersonGroupPerson.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/CreateNewLargePersonGroupPerson.json new file mode 100644 index 000000000000..cd57744a82a0 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/CreateNewLargePersonGroupPerson.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "largePersonGroupId": "abc", + "body": { + "name": "mike", + "userData": "{additional data associated with mike}" + } + }, + "responses": { + "200": { + "body": { + "personId": "4caa25ee-3bc6-4e88-adf8-12455ce7aab0" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/CreateNewPersonDirectoryPerson.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/CreateNewPersonDirectoryPerson.json new file mode 100644 index 000000000000..712996b5f693 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/CreateNewPersonDirectoryPerson.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "body": { + "name": "mike", + "userData": "{additional data associated with mike}" + } + }, + "responses": { + "202": { + "body": { + "personId": "4caa25ee-3bc6-4e88-adf8-12455ce7aab0" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/CreateNewPersonGroup.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/CreateNewPersonGroup.json new file mode 100644 index 000000000000..47bac3dae296 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/CreateNewPersonGroup.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "personGroupId": "abc", + "body": { + "name": "group1", + "userData": "user-provided data attached to the person group.", + "recognitionModel": "recognition_01" + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/CreateNewPersonGroupPerson.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/CreateNewPersonGroupPerson.json new file mode 100644 index 000000000000..b62b3a2352ac --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/CreateNewPersonGroupPerson.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "personGroupId": "abc", + "body": { + "name": "mike", + "userData": "{additional data associated with mike}" + } + }, + "responses": { + "200": { + "body": { + "personId": "4caa25ee-3bc6-4e88-adf8-12455ce7aab0" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/DeleteDynamicPersonGroup.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/DeleteDynamicPersonGroup.json new file mode 100644 index 000000000000..bd318036ed6d --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/DeleteDynamicPersonGroup.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "dynamicPersonGroupId": "abc" + }, + "responses": { + "202": {} + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/DeleteFaceList.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/DeleteFaceList.json new file mode 100644 index 000000000000..8a56998fe56e --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/DeleteFaceList.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "faceListId": "sample_face_list" + }, + "responses": { + "200": {} + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/DeleteFaceListFace.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/DeleteFaceListFace.json new file mode 100644 index 000000000000..3c7cb6945fad --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/DeleteFaceListFace.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "faceListId": "sample_face_list", + "persistedFaceId": "62004fa7-1ac0-478e-9d5a-b38f9e7fbc68" + }, + "responses": { + "200": {} + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/DeleteLargeFaceList.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/DeleteLargeFaceList.json new file mode 100644 index 000000000000..a17660fd24a8 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/DeleteLargeFaceList.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "largeFaceListId": "sample_face_list" + }, + "responses": { + "200": {} + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/DeleteLargeFaceListFace.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/DeleteLargeFaceListFace.json new file mode 100644 index 000000000000..c51df9d7089e --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/DeleteLargeFaceListFace.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "largeFaceListId": "sample_face_list", + "persistedFaceId": "62004fa7-1ac0-478e-9d5a-b38f9e7fbc68" + }, + "responses": { + "200": {} + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/DeleteLargePersonGroup.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/DeleteLargePersonGroup.json new file mode 100644 index 000000000000..e9888166e026 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/DeleteLargePersonGroup.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "largePersonGroupId": "abc" + }, + "responses": { + "200": {} + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/DeleteLargePersonGroupPerson.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/DeleteLargePersonGroupPerson.json new file mode 100644 index 000000000000..f75102f3a28b --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/DeleteLargePersonGroupPerson.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "largePersonGroupId": "abc", + "personId": "25985303-c537-4467-b41d-bdb45cd95ca1" + }, + "responses": { + "200": {} + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/DeleteLargePersonGroupPersonFace.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/DeleteLargePersonGroupPersonFace.json new file mode 100644 index 000000000000..593ea9f58f47 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/DeleteLargePersonGroupPersonFace.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "largePersonGroupId": "abc", + "personId": "25985303-c537-4467-b41d-bdb45cd95ca1", + "persistedFaceId": "62004fa7-1ac0-478e-9d5a-b38f9e7fbc68" + }, + "responses": { + "200": {} + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/DeletePersonDirectoryPerson.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/DeletePersonDirectoryPerson.json new file mode 100644 index 000000000000..a2f224a8c305 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/DeletePersonDirectoryPerson.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "personId": "25985303-c537-4467-b41d-bdb45cd95ca1" + }, + "responses": { + "202": {} + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/DeletePersonDirectoryPersonFace.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/DeletePersonDirectoryPersonFace.json new file mode 100644 index 000000000000..626c7b5e3503 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/DeletePersonDirectoryPersonFace.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "personId": "25985303-c537-4467-b41d-bdb45cd95ca1", + "recognitionModel": "recognition_02", + "persistedFaceId": "62004fa7-1ac0-478e-9d5a-b38f9e7fbc68" + }, + "responses": { + "202": {} + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/DeletePersonGroup.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/DeletePersonGroup.json new file mode 100644 index 000000000000..f7c062c6a2e0 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/DeletePersonGroup.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "personGroupId": "abc" + }, + "responses": { + "200": {} + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/DeletePersonGroupPerson.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/DeletePersonGroupPerson.json new file mode 100644 index 000000000000..b9a3e416b947 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/DeletePersonGroupPerson.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "personGroupId": "abc", + "personId": "25985303-c537-4467-b41d-bdb45cd95ca1" + }, + "responses": { + "200": {} + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/DeletePersonGroupPersonFace.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/DeletePersonGroupPersonFace.json new file mode 100644 index 000000000000..459adbe3eda5 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/DeletePersonGroupPersonFace.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "personGroupId": "abc", + "personId": "25985303-c537-4467-b41d-bdb45cd95ca1", + "persistedFaceId": "62004fa7-1ac0-478e-9d5a-b38f9e7fbc68" + }, + "responses": { + "200": {} + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/DeleteSnapshot.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/DeleteSnapshot.json new file mode 100644 index 000000000000..48c5abc49858 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/DeleteSnapshot.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "snapshotId": "e58b3f08-1e8b-4165-81df-aa9858f233dc" + }, + "responses": { + "200": {} + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/DetectWithStream.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/DetectWithStream.json new file mode 100644 index 000000000000..3b532c60c099 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/DetectWithStream.json @@ -0,0 +1,244 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/octet-stream", + "Ocp-Apim-Subscription-Key": "{API key}", + "returnFaceAttributes": [ + "age", + "gender", + "headPose", + "smile", + "facialHair", + "glasses", + "emotion", + "hair", + "makeup", + "occlusion", + "accessories", + "blur", + "exposure", + "noise" + ], + "Image": "{Image binary in base 64 format}", + "recognitionModel": "recognition_01", + "returnRecognitionModel": true, + "detectionModel": "detection_01" + }, + "responses": { + "200": { + "body": [ + { + "faceId": "c5c24a82-6845-4031-9d5d-978df9175426", + "recognitionModel": "recognition_01", + "faceRectangle": { + "width": 78, + "height": 78, + "left": 394, + "top": 54 + }, + "faceLandmarks": { + "pupilLeft": { + "x": 412.7, + "y": 78.4 + }, + "pupilRight": { + "x": 446.8, + "y": 74.2 + }, + "noseTip": { + "x": 437.7, + "y": 92.4 + }, + "mouthLeft": { + "x": 417.8, + "y": 114.4 + }, + "mouthRight": { + "x": 451.3, + "y": 109.3 + }, + "eyebrowLeftOuter": { + "x": 397.9, + "y": 78.5 + }, + "eyebrowLeftInner": { + "x": 425.4, + "y": 70.5 + }, + "eyeLeftOuter": { + "x": 406.7, + "y": 80.6 + }, + "eyeLeftTop": { + "x": 412.2, + "y": 76.2 + }, + "eyeLeftBottom": { + "x": 413.0, + "y": 80.1 + }, + "eyeLeftInner": { + "x": 418.9, + "y": 78.0 + }, + "eyebrowRightInner": { + "x": 4.8, + "y": 69.7 + }, + "eyebrowRightOuter": { + "x": 5.5, + "y": 68.5 + }, + "eyeRightInner": { + "x": 441.5, + "y": 75.0 + }, + "eyeRightTop": { + "x": 446.4, + "y": 71.7 + }, + "eyeRightBottom": { + "x": 447.0, + "y": 75.3 + }, + "eyeRightOuter": { + "x": 451.7, + "y": 73.4 + }, + "noseRootLeft": { + "x": 428.0, + "y": 77.1 + }, + "noseRootRight": { + "x": 435.8, + "y": 75.6 + }, + "noseLeftAlarTop": { + "x": 428.3, + "y": 89.7 + }, + "noseRightAlarTop": { + "x": 442.2, + "y": 87.0 + }, + "noseLeftAlarOutTip": { + "x": 424.3, + "y": 96.4 + }, + "noseRightAlarOutTip": { + "x": 446.6, + "y": 92.5 + }, + "upperLipTop": { + "x": 437.6, + "y": 105.9 + }, + "upperLipBottom": { + "x": 437.6, + "y": 108.2 + }, + "underLipTop": { + "x": 436.8, + "y": 111.4 + }, + "underLipBottom": { + "x": 437.3, + "y": 114.5 + } + }, + "faceAttributes": { + "age": 71.0, + "gender": "male", + "smile": 0.88, + "facialHair": { + "moustache": 0.8, + "beard": 0.1, + "sideburns": 0.02 + }, + "glasses": "sunglasses", + "headPose": { + "roll": 2.1, + "yaw": 3, + "pitch": 1.6 + }, + "emotion": { + "anger": 0.575, + "contempt": 0, + "disgust": 0.006, + "fear": 0.008, + "happiness": 0.394, + "neutral": 0.013, + "sadness": 0, + "surprise": 0.004 + }, + "hair": { + "bald": 0.0, + "invisible": false, + "hairColor": [ + { + "color": "brown", + "confidence": 1.0 + }, + { + "color": "blond", + "confidence": 0.88 + }, + { + "color": "black", + "confidence": 0.48 + }, + { + "color": "other", + "confidence": 0.11 + }, + { + "color": "gray", + "confidence": 0.07 + }, + { + "color": "red", + "confidence": 0.03 + } + ] + }, + "makeup": { + "eyeMakeup": true, + "lipMakeup": false + }, + "occlusion": { + "foreheadOccluded": false, + "eyeOccluded": false, + "mouthOccluded": false + }, + "accessories": [ + { + "type": "headWear", + "confidence": 0.99 + }, + { + "type": "glasses", + "confidence": 1.0 + }, + { + "type": "mask", + "confidence": 0.87 + } + ], + "blur": { + "blurLevel": "Medium", + "value": 0.51 + }, + "exposure": { + "exposureLevel": "GoodExposure", + "value": 0.55 + }, + "noise": { + "noiseLevel": "Low", + "value": 0.12 + } + } + } + ] + } + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/DetectWithUrl.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/DetectWithUrl.json new file mode 100644 index 000000000000..693778906f3c --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/DetectWithUrl.json @@ -0,0 +1,246 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "returnFaceAttributes": [ + "age", + "gender", + "headPose", + "smile", + "facialHair", + "glasses", + "emotion", + "hair", + "makeup", + "occlusion", + "accessories", + "blur", + "exposure", + "noise" + ], + "ImageUrl": { + "url": "{Image Url here}" + }, + "recognitionModel": "recognition_01", + "returnRecognitionModel": true, + "detectionModel": "detection_01" + }, + "responses": { + "200": { + "body": [ + { + "faceId": "c5c24a82-6845-4031-9d5d-978df9175426", + "recognitionModel": "recognition_01", + "faceRectangle": { + "width": 78, + "height": 78, + "left": 394, + "top": 54 + }, + "faceLandmarks": { + "pupilLeft": { + "x": 412.7, + "y": 78.4 + }, + "pupilRight": { + "x": 446.8, + "y": 74.2 + }, + "noseTip": { + "x": 437.7, + "y": 92.4 + }, + "mouthLeft": { + "x": 417.8, + "y": 114.4 + }, + "mouthRight": { + "x": 451.3, + "y": 109.3 + }, + "eyebrowLeftOuter": { + "x": 397.9, + "y": 78.5 + }, + "eyebrowLeftInner": { + "x": 425.4, + "y": 70.5 + }, + "eyeLeftOuter": { + "x": 406.7, + "y": 80.6 + }, + "eyeLeftTop": { + "x": 412.2, + "y": 76.2 + }, + "eyeLeftBottom": { + "x": 413.0, + "y": 80.1 + }, + "eyeLeftInner": { + "x": 418.9, + "y": 78.0 + }, + "eyebrowRightInner": { + "x": 4.8, + "y": 69.7 + }, + "eyebrowRightOuter": { + "x": 5.5, + "y": 68.5 + }, + "eyeRightInner": { + "x": 441.5, + "y": 75.0 + }, + "eyeRightTop": { + "x": 446.4, + "y": 71.7 + }, + "eyeRightBottom": { + "x": 447.0, + "y": 75.3 + }, + "eyeRightOuter": { + "x": 451.7, + "y": 73.4 + }, + "noseRootLeft": { + "x": 428.0, + "y": 77.1 + }, + "noseRootRight": { + "x": 435.8, + "y": 75.6 + }, + "noseLeftAlarTop": { + "x": 428.3, + "y": 89.7 + }, + "noseRightAlarTop": { + "x": 442.2, + "y": 87.0 + }, + "noseLeftAlarOutTip": { + "x": 424.3, + "y": 96.4 + }, + "noseRightAlarOutTip": { + "x": 446.6, + "y": 92.5 + }, + "upperLipTop": { + "x": 437.6, + "y": 105.9 + }, + "upperLipBottom": { + "x": 437.6, + "y": 108.2 + }, + "underLipTop": { + "x": 436.8, + "y": 111.4 + }, + "underLipBottom": { + "x": 437.3, + "y": 114.5 + } + }, + "faceAttributes": { + "age": 71.0, + "gender": "male", + "smile": 0.88, + "facialHair": { + "moustache": 0.8, + "beard": 0.1, + "sideburns": 0.02 + }, + "glasses": "sunglasses", + "headPose": { + "roll": 2.1, + "yaw": 3, + "pitch": 1.6 + }, + "emotion": { + "anger": 0.575, + "contempt": 0, + "disgust": 0.006, + "fear": 0.008, + "happiness": 0.394, + "neutral": 0.013, + "sadness": 0, + "surprise": 0.004 + }, + "hair": { + "bald": 0.0, + "invisible": false, + "hairColor": [ + { + "color": "brown", + "confidence": 1.0 + }, + { + "color": "blond", + "confidence": 0.88 + }, + { + "color": "black", + "confidence": 0.48 + }, + { + "color": "other", + "confidence": 0.11 + }, + { + "color": "gray", + "confidence": 0.07 + }, + { + "color": "red", + "confidence": 0.03 + } + ] + }, + "makeup": { + "eyeMakeup": true, + "lipMakeup": false + }, + "occlusion": { + "foreheadOccluded": false, + "eyeOccluded": false, + "mouthOccluded": false + }, + "accessories": [ + { + "type": "headWear", + "confidence": 0.99 + }, + { + "type": "glasses", + "confidence": 1.0 + }, + { + "type": "mask", + "confidence": 0.87 + } + ], + "blur": { + "blurLevel": "Medium", + "value": 0.51 + }, + "exposure": { + "exposureLevel": "GoodExposure", + "value": 0.55 + }, + "noise": { + "noiseLevel": "Low", + "value": 0.12 + } + } + } + ] + } + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/FindSimilar.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/FindSimilar.json new file mode 100644 index 000000000000..f8acd5058618 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/FindSimilar.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "body": { + "faceId": "c5c24a82-6845-4031-9d5d-978df9175426", + "largeFaceListId": "sample_list", + "maxNumOfCandidatesReturned": 1, + "mode": "matchPerson" + } + }, + "responses": { + "200": { + "body": [ + { + "persistedFaceId": "015839fb-fbd9-4f79-ace9-7675fc2f1dd9", + "confidence": 0.82 + } + ] + } + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetDynamicPersonGroup.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetDynamicPersonGroup.json new file mode 100644 index 000000000000..751fe881a655 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetDynamicPersonGroup.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "dynamicPersonGroupId": "abc" + }, + "responses": { + "200": { + "body": { + "dynamicPersonGroupId": "abc", + "name": "DynamicPersonGroup1", + "userData": "User-provided data attached to the dynamic person group." + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetFaceList.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetFaceList.json new file mode 100644 index 000000000000..10afff68c1c3 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetFaceList.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "faceListId": "sample_face_list", + "returnRecognitionModel": true + }, + "responses": { + "200": { + "body": { + "faceListId": "sample_list", + "name": "list1", + "userData": "User-provided data attached to the face list.", + "recognitionModel": "recognition_01", + "persistedFaces": [ + { + "persistedFaceId": "B8D802CF-DD8F-4E61-B15C-9E6C5844CCBD", + "userData": "User-provided data attached to the face." + } + ] + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetLargeFaceList.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetLargeFaceList.json new file mode 100644 index 000000000000..7899fda502c2 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetLargeFaceList.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "largeFaceListId": "f92f6f1b-3258-4444-8fa2-c2df505cc7ac", + "returnRecognitionModel": true + }, + "responses": { + "200": { + "body": { + "largeFaceListId": "f92f6f1b-3258-4444-8fa2-c2df505cc7ac", + "name": "large-face-list-name", + "userData": "User-provided data attached to the large face list.", + "recognitionModel": "recognition_01" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetLargeFaceListPersistedFace.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetLargeFaceListPersistedFace.json new file mode 100644 index 000000000000..8cb9d3298ee1 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetLargeFaceListPersistedFace.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "largeFaceListId": "abc", + "persistedFaceId": "015839fb-fbd9-4f79-ace9-7675fc2f1dd9" + }, + "responses": { + "200": { + "body": { + "persistedFaceId": "015839fb-fbd9-4f79-ace9-7675fc2f1dd9", + "userData": "User-provided data attached to the face." + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetLargeFaceListTrainingStatus.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetLargeFaceListTrainingStatus.json new file mode 100644 index 000000000000..5581acaa52e6 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetLargeFaceListTrainingStatus.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "largeFaceListId": "abc" + }, + "responses": { + "200": { + "body": { + "status": "succeeded", + "createdDateTime": "2017-12-21T12:57:27.00Z", + "lastActionDateTime": "2017-12-21T12:57:30.00Z", + "lastSuccessfulTrainingDateTime": "2017-12-21T12:57:30.00Z", + "message": null + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetLargePersonGroup.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetLargePersonGroup.json new file mode 100644 index 000000000000..9642c6cd6579 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetLargePersonGroup.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "largePersonGroupId": "abc", + "returnRecognitionModel": true + }, + "responses": { + "200": { + "body": { + "largePersonGroupId": "d408cb4e-2f5f-4b4d-b99e-f0b72870e5b5", + "name": "large-person-group-name", + "userData": "User-provided data attached to the large person group.", + "recognitionModel": "recognition_01" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetLargePersonGroupPersistedFace.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetLargePersonGroupPersistedFace.json new file mode 100644 index 000000000000..ee1ea734c024 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetLargePersonGroupPersistedFace.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "largePersonGroupId": "abc", + "personId": "B8D802CF-DD8F-4E61-B15C-9E6C5844CCBA", + "persistedFaceId": "015839fb-fbd9-4f79-ace9-7675fc2f1dd9" + }, + "responses": { + "200": { + "body": { + "persistedFaceId": "015839fb-fbd9-4f79-ace9-7675fc2f1dd9", + "userData": "User-provided data attached to the person face." + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetLargePersonGroupPerson.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetLargePersonGroupPerson.json new file mode 100644 index 000000000000..00af2632ef7d --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetLargePersonGroupPerson.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "largePersonGroupId": "abc", + "personId": "25985303-c537-4467-b41d-bdb45cd95ca1" + }, + "responses": { + "200": { + "body": { + "personId": "25985303-c537-4467-b41d-bdb45cd95ca1", + "persistedFaceIds": [ + "015839fb-fbd9-4f79-ace9-7675fc2f1dd9", + "fce92aed-d578-4d2e-8114-068f8af4492e", + "b64d5e15-8257-4af2-b20a-5a750f8940e7" + ], + "name": "person-name", + "userData": "User-provided data attached to the person." + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetLargePersonGroupTrainingStatus.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetLargePersonGroupTrainingStatus.json new file mode 100644 index 000000000000..4fdd195db586 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetLargePersonGroupTrainingStatus.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "largePersonGroupId": "abc" + }, + "responses": { + "200": { + "body": { + "status": "succeeded", + "createdDateTime": "2017-12-21T12:57:27.00Z", + "lastActionDateTime": "2017-12-21T12:57:30.00Z", + "lastSuccessfulTrainingDateTime": "2017-12-21T12:57:30.00Z", + "message": null + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetPersonDirectoryPerson.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetPersonDirectoryPerson.json new file mode 100644 index 000000000000..982dc7a922e3 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetPersonDirectoryPerson.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "personId": "25985303-c537-4467-b41d-bdb45cd95ca1", + "recognitionModel": "recognition02" + }, + "responses": { + "200": { + "body": { + "personId": "25985303-c537-4467-b41d-bdb45cd95ca1", + "name": "Ryan", + "userData": "User-provided data attached to the person." + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetPersonDirectoryPersonFace.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetPersonDirectoryPersonFace.json new file mode 100644 index 000000000000..dc0d33d9bfff --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetPersonDirectoryPersonFace.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "personId": "4caa25ee-3bc6-4e88-adf8-12455ce7aab0", + "recognitionModel": "recognition_02", + "persistedFaceId": "6e04c175-219e-42a2-9d26-0e7b790e1ef4" + }, + "responses": { + "200": { + "body": { + "persistedFaceId": "6e04c175-219e-42a2-9d26-0e7b790e1ef4", + "userData": "User-provided data attached to the person face." + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetPersonDirectoryPersonFaces.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetPersonDirectoryPersonFaces.json new file mode 100644 index 000000000000..173bd40256c0 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetPersonDirectoryPersonFaces.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "personId": "4caa25ee-3bc6-4e88-adf8-12455ce7aab0", + "recognitionModel": "recognition_02" + }, + "responses": { + "200": { + "body": { + "personId": "4caa25ee-3bc6-4e88-adf8-12455ce7aab0", + "persistedFaceIds": [ + "015839fb-fbd9-4f79-ace9-7675fc2f1dd9", + "fce92aed-d578-4d2e-8114-068f8af4492e", + "b64d5e15-8257-4af2-b20a-5a750f8940e7" + ] + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetPersonDirectoryPersons.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetPersonDirectoryPersons.json new file mode 100644 index 000000000000..4227f78b78fa --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetPersonDirectoryPersons.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}" + }, + "responses": { + "200": { + "body": [ + { + "personId": "25985303-c537-4467-b41d-bdb45cd95ca1", + "name": "Ryan", + "userData": "User-provided data attached to the person." + }, + { + "personId": "2ae4935b-9659-44c3-977f-61fac20d0538", + "name": "David", + "userData": "User-provided data attached to the person." + } + ] + } + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetPersonGroup.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetPersonGroup.json new file mode 100644 index 000000000000..a1941cdb85f1 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetPersonGroup.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "personGroupId": "abc", + "returnRecognitionModel": true + }, + "responses": { + "200": { + "body": { + "personGroupId": "sample_group", + "name": "group1", + "userData": "User-provided data attached to the person group.", + "recognitionModel": "recognition_01" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetPersonGroupPersistedFace.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetPersonGroupPersistedFace.json new file mode 100644 index 000000000000..0c88343b90a9 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetPersonGroupPersistedFace.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "personGroupId": "abc", + "personId": "foobar", + "persistedFaceId": "asd" + }, + "responses": { + "200": { + "body": { + "persistedFaceId": "015839fb-fbd9-4f79-ace9-7675fc2f1dd9", + "userData": "User-provided data attached to the person face." + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetPersonGroupPerson.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetPersonGroupPerson.json new file mode 100644 index 000000000000..6b4d1cd7c157 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetPersonGroupPerson.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "personGroupId": "abc", + "personId": "25985303-c537-4467-b41d-bdb45cd95ca1" + }, + "responses": { + "200": { + "body": { + "personId": "25985303-c537-4467-b41d-bdb45cd95ca1", + "persistedFaceIds": [ + "015839fb-fbd9-4f79-ace9-7675fc2f1dd9", + "fce92aed-d578-4d2e-8114-068f8af4492e", + "b64d5e15-8257-4af2-b20a-5a750f8940e7" + ], + "name": "Ryan", + "userData": "User-provided data attached to the person." + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetPersonGroupTrainingStatus.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetPersonGroupTrainingStatus.json new file mode 100644 index 000000000000..2327573ef59e --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetPersonGroupTrainingStatus.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "personGroupId": "abc" + }, + "responses": { + "200": { + "body": { + "status": "succeeded", + "createdDateTime": "2017-12-21T12:57:27.00Z", + "lastActionDateTime": "2017-12-21T12:57:30.00Z", + "message": null + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetSnapshot.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetSnapshot.json new file mode 100644 index 000000000000..9ceced091c19 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetSnapshot.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "snapshotId": "e58b3f08-1e8b-4165-81df-aa9858f233dc" + }, + "responses": { + "200": { + "body": { + "id": "e58b3f08-1e8b-4165-81df-aa9858f233dc", + "account": "/subscriptions/f9b96b36-1f5e-4021-8959-51527e26e6d3/resourceGroups/TestRG/providers/Microsoft.CognitiveServices/accounts/FaceTest01", + "type": "FaceList", + "applyScope": [ + "35230F59-AA9C-45E0-AB5E-C859BF1A5429", + "64084E07-9B7F-4A98-BEA4-9986D3A1EDEB" + ], + "userData": "User-provided data attached to the snapshot.", + "createdTime": "2018-12-25T11:41:02.2331413Z", + "lastUpdateTime": "2018-12-25T11:51:27.8705696Z" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetSnapshotOperationStatus.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetSnapshotOperationStatus.json new file mode 100644 index 000000000000..ee817dafe4fd --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/GetSnapshotOperationStatus.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "operationId": "a63a3bdd-a1db-4d05-87b8-dbad6850062a" + }, + "responses": { + "200": { + "body": { + "status": "succeeded", + "createdTime": "2018-12-25T11:41:02.2331413Z", + "lastActionTime": "2018-12-25T11:51:27.8705696Z", + "resourceLocation": "/snapshots/e58b3f08-1e8b-4165-81df-aa9858f233dc", + "message": null + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/Group.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/Group.json new file mode 100644 index 000000000000..18e632e04c31 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/Group.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "body": { + "faceIds": [ + "c5c24a82-6845-4031-9d5d-978df9175426", + "015839fb-fbd9-4f79-ace9-7675fc2f1dd9", + "65d083d4-9447-47d1-af30-b626144bf0fb", + "fce92aed-d578-4d2e-8114-068f8af4492e", + "30ea1073-cc9e-4652-b1e3-d08fb7b95315", + "be386ab3-af91-4104-9e6d-4dae4c9fddb7", + "fbd2a038-dbff-452c-8e79-2ee81b1aa84e", + "b64d5e15-8257-4af2-b20a-5a750f8940e7" + ] + } + }, + "responses": { + "200": { + "body": { + "groups": [ + [ + "c5c24a82-6845-4031-9d5d-978df9175426", + "015839fb-fbd9-4f79-ace9-7675fc2f1dd9", + "fce92aed-d578-4d2e-8114-068f8af4492e", + "b64d5e15-8257-4af2-b20a-5a750f8940e7" + ], + [ + "65d083d4-9447-47d1-af30-b626144bf0fb", + "30ea1073-cc9e-4652-b1e3-d08fb7b95315" + ] + ], + "messyGroup": [ + "be386ab3-af91-4104-9e6d-4dae4c9fddb7" + ] + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/Identify.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/Identify.json new file mode 100644 index 000000000000..1398891645f3 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/Identify.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "body": { + "largePersonGroupId": "sample_group", + "faceIds": [ + "c5c24a82-6845-4031-9d5d-978df9175426", + "65d083d4-9447-47d1-af30-b626144bf0fb" + ], + "maxNumOfCandidatesReturned": 1, + "confidenceThreshold": 0.5 + } + }, + "responses": { + "200": { + "body": [ + { + "faceId": "c5c24a82-6845-4031-9d5d-978df9175426", + "candidates": [ + { + "personId": "25985303-c537-4467-b41d-bdb45cd95ca1", + "confidence": 0.92 + } + ] + }, + { + "faceId": "65d083d4-9447-47d1-af30-b626144bf0fb", + "candidates": [ + { + "personId": "2ae4935b-9659-44c3-977f-61fac20d0538", + "confidence": 0.89 + } + ] + } + ] + } + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/ListDynamicPersonGroupPersons.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/ListDynamicPersonGroupPersons.json new file mode 100644 index 000000000000..c6bde32fa828 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/ListDynamicPersonGroupPersons.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "dynamicPersonGroupId": "abc", + "start": "25985303-c537-4467-b41d-bdb45cd95ca1", + "top": "2" + }, + "responses": { + "200": { + "body": { + "personIds": [ + "25985303-c537-4467-b41d-bdb45cd95ca1", + "2ae4935b-9659-44c3-977f-61fac20d0538" + ] + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/ListDynamicPersonGroupReferences.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/ListDynamicPersonGroupReferences.json new file mode 100644 index 000000000000..22baa04d8fb9 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/ListDynamicPersonGroupReferences.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "personId": "1d44651f-fadb-41f5-8918-c30609964489" + }, + "responses": { + "200": { + "body": { + "personId": "1d44651f-fadb-41f5-8918-c30609964489", + "dynamicPersonGroupIds": [ + "dynamicPersonGroup1", + "dynamicPersonGroup2" + ] + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/ListDynamicPersonGroups.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/ListDynamicPersonGroups.json new file mode 100644 index 000000000000..d6da64768adc --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/ListDynamicPersonGroups.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Ocp-Apim-Subscription-Key": "{API key}", + "start": "sample_group", + "top": "2" + }, + "responses": { + "200": { + "body": [ + { + "dynamicPersonGroupId": "dynamicPersonGroup1", + "name": "name1", + "userData": "User-provided data attached to the DynamicPersonGroup." + }, + { + "dynamicPersonGroupId": "dynamicPersonGroup2", + "name": "name2", + "userData": "User-provided data attached to the DynamicPersonGroup." + } + ] + } + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/ListFaceLists.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/ListFaceLists.json new file mode 100644 index 000000000000..512e91939afd --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/ListFaceLists.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Ocp-Apim-Subscription-Key": "{API key}", + "returnRecognitionModel": true + }, + "responses": { + "200": { + "body": [ + { + "faceListId": "sample_face_list", + "name": "list1", + "userData": "User-provided data attached to the face list.", + "recognitionModel": "recognition_01" + } + ] + } + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/ListLargeFaceListFaces.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/ListLargeFaceListFaces.json new file mode 100644 index 000000000000..4eeb7d58cb1c --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/ListLargeFaceListFaces.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "largeFaceListId": "abc", + "start": "25985303-c537-4467-b41d-bdb45cd95ca1", + "top": 2 + }, + "responses": { + "200": { + "body": [ + { + "persistedFaceId": "8a887ac2-53fd-4f55-9024-1ec77eecd08e", + "userData": "User-provided data attached to the large face list face." + }, + { + "persistedFaceId": "f92f6f1b-3258-4444-8fa2-c2df505cc7ac", + "userData": "User-provided data attached to the large face list face." + } + ] + } + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/ListLargeFaceLists.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/ListLargeFaceLists.json new file mode 100644 index 000000000000..84c5a520c3d9 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/ListLargeFaceLists.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Ocp-Apim-Subscription-Key": "{API key}", + "returnRecognitionModel": true + }, + "responses": { + "200": { + "body": [ + { + "largeFaceListId": "f92f6f1b-3258-4444-8fa2-c2df505cc7ac", + "name": "large-face-list-name1", + "userData": "User-provided data attached to the large face list.", + "recognitionModel": "recognition_01" + }, + { + "largeFaceListId": "c76f7f13-0ed3-4d00-8a3e-2ad3d78f6c37", + "name": "large-face-list-name2", + "userData": "User-provided data attached to the large face list.", + "recognitionModel": "recognition_01" + } + ] + } + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/ListLargePersonGroupPersons.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/ListLargePersonGroupPersons.json new file mode 100644 index 000000000000..d5a6ba659d79 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/ListLargePersonGroupPersons.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "largePersonGroupId": "abc", + "start": "25985303-c537-4467-b41d-bdb45cd95ca1", + "top": 2 + }, + "responses": { + "200": { + "body": [ + { + "personId": "25985303-c537-4467-b41d-bdb45cd95ca1", + "name": "person-name1", + "userData": "User-provided data attached to the person.", + "persistedFaceIds": [ + "015839fb-fbd9-4f79-ace9-7675fc2f1dd9", + "fce92aed-d578-4d2e-8114-068f8af4492e", + "b64d5e15-8257-4af2-b20a-5a750f8940e7" + ] + }, + { + "personId": "2ae4935b-9659-44c3-977f-61fac20d0538", + "name": "person-name2", + "userData": "User-provided data attached to the person.", + "persistedFaceIds": [ + "30ea1073-cc9e-4652-b1e3-d08fb7b95315", + "fbd2a038-dbff-452c-8e79-2ee81b1aa84e" + ] + } + ] + } + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/ListLargePersonGroups.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/ListLargePersonGroups.json new file mode 100644 index 000000000000..fb01f364ecd0 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/ListLargePersonGroups.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Ocp-Apim-Subscription-Key": "{API key}", + "start": "sample_group", + "top": 2, + "returnRecognitionModel": true + }, + "responses": { + "200": { + "body": [ + { + "largePersonGroupId": "f92f6f1b-3258-4444-8fa2-c2df505cc7ac", + "name": "large-person-group-name1", + "userData": "User-provided data attached to the large person group.", + "recognitionModel": "recognition_01" + }, + { + "largePersonGroupId": "c76f7f13-0ed3-4d00-8a3e-2ad3d78f6c37", + "name": "large-person-group-name2", + "userData": "User-provided data attached to the large person group.", + "recognitionModel": "recognition_01" + } + ] + } + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/ListPersonGroupPersons.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/ListPersonGroupPersons.json new file mode 100644 index 000000000000..27011485903d --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/ListPersonGroupPersons.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "personGroupId": "abc", + "start": "25985303-c537-4467-b41d-bdb45cd95ca1", + "top": 2 + }, + "responses": { + "200": { + "body": [ + { + "personId": "25985303-c537-4467-b41d-bdb45cd95ca1", + "name": "Ryan", + "userData": "User-provided data attached to the person", + "persistedFaceIds": [ + "015839fb-fbd9-4f79-ace9-7675fc2f1dd9", + "fce92aed-d578-4d2e-8114-068f8af4492e", + "b64d5e15-8257-4af2-b20a-5a750f8940e7" + ] + }, + { + "personId": "2ae4935b-9659-44c3-977f-61fac20d0538", + "name": "David", + "userData": "User-provided data attached to the person", + "persistedFaceIds": [ + "30ea1073-cc9e-4652-b1e3-d08fb7b95315", + "fbd2a038-dbff-452c-8e79-2ee81b1aa84e" + ] + } + ] + } + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/ListPersonGroups.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/ListPersonGroups.json new file mode 100644 index 000000000000..276996afa6fc --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/ListPersonGroups.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Ocp-Apim-Subscription-Key": "{API key}", + "start": "sample_group", + "top": 2, + "returnRecognitionModel": true + }, + "responses": { + "200": { + "body": [ + { + "personGroupId": "sample_group", + "name": "group1", + "userData": "User-provided data attached to the person group.", + "recognitionModel": "recognition_01" + }, + { + "personGroupId": "sample_group2", + "name": "group2", + "userData": "User-provided data attached to the person group.", + "recognitionModel": "recognition_01" + } + ] + } + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/ListSnapshots.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/ListSnapshots.json new file mode 100644 index 000000000000..2dba0e2d4832 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/ListSnapshots.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "type": "FaceList", + "applyScope": [ + "64084E07-9B7F-4A98-BEA4-9986D3A1EDEB" + ] + }, + "responses": { + "200": { + "body": [ + { + "id": "e58b3f08-1e8b-4165-81df-aa9858f233dc", + "account": "/subscriptions/f9b96b36-1f5e-4021-8959-51527e26e6d3/resourceGroups/TestRG/providers/Microsoft.CognitiveServices/accounts/FaceTest01", + "type": "FaceList", + "applyScope": [ + "35230F59-AA9C-45E0-AB5E-C859BF1A5429", + "64084E07-9B7F-4A98-BEA4-9986D3A1EDEB" + ], + "userData": "User-provided data attached to the snapshot1.", + "createdTime": "2018-12-25T11:41:02.2331413Z", + "lastUpdateTime": "2018-12-25T11:51:27.8705696Z" + }, + { + "id": "a61e61e4-c3d1-4d33-8ae8-676e6104757d", + "account": "/subscriptions/6622996e-0149-4b22-9703-4216dc948d52/resourceGroups/TestRG/providers/Microsoft.CognitiveServices/accounts/FaceTest01", + "type": "FaceList", + "applyScope": [ + "64084E07-9B7F-4A98-BEA4-9986D3A1EDEB" + ], + "userData": "User-provided data attached to the snapshot2.", + "createdTime": "2018-12-29T17:09:32.3298483Z", + "lastUpdateTime": "2018-12-29T17:14:34.5645877Z" + } + ] + } + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/QueueLargeFaceListTraining.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/QueueLargeFaceListTraining.json new file mode 100644 index 000000000000..38b96eb8dd09 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/QueueLargeFaceListTraining.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "largeFaceListId": "abc" + }, + "responses": { + "202": {} + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/QueueLargePersonGroupTraining.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/QueueLargePersonGroupTraining.json new file mode 100644 index 000000000000..62cf89c96bc1 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/QueueLargePersonGroupTraining.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "largePersonGroupId": "abc" + }, + "responses": { + "202": {} + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/QueuePersonGroupTraining.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/QueuePersonGroupTraining.json new file mode 100644 index 000000000000..998a4eb523ea --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/QueuePersonGroupTraining.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "personGroupId": "abc" + }, + "responses": { + "202": {} + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/TakeSnapshot.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/TakeSnapshot.json new file mode 100644 index 000000000000..ef925f79b927 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/TakeSnapshot.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "body": { + "type": "FaceList", + "objectId": "source-face-list-id", + "applyScope": [ + "35230F59-AA9C-45E0-AB5E-C859BF1A5429", + "64084E07-9B7F-4A98-BEA4-9986D3A1EDEB" + ], + "userData": "User-provided data attached to the snapshot." + } + }, + "responses": { + "202": { + "header": { + "Operation-Location": "/operations/a63a3bdd-a1db-4d05-87b8-dbad6850062a" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/UpdateDynamicPersonGroup.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/UpdateDynamicPersonGroup.json new file mode 100644 index 000000000000..c76dd3808c39 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/UpdateDynamicPersonGroup.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "dynamicPersonGroupId": "abc", + "body": { + "name": "Display Name of Dynamic Person Group", + "userData": "User-provided data attached to the dynamic person group.", + "addPersonIds": [ + "25985303-c537-4467-b41d-bdb45cd95ca1", + "4caa25ee-3bc6-4e88-adf8-12455ce7aab0" + ], + "removePersonIds": [ + "2ae4935b-9659-44c3-977f-61fac20d0538" + ] + } + }, + "responses": { + "202": {} + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/UpdateFaceList.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/UpdateFaceList.json new file mode 100644 index 000000000000..78ec8efe493a --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/UpdateFaceList.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "faceListId": "sample_face_list", + "body": { + "name": "list1", + "userData": "User-provided data attached to the face list." + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/UpdateLargeFaceList.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/UpdateLargeFaceList.json new file mode 100644 index 000000000000..e1918aef1e28 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/UpdateLargeFaceList.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "largeFaceListId": "sample_face_list", + "body": { + "name": "large-face-list-name", + "userData": "User-provided data attached to the large face list." + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/UpdateLargeFaceListFace.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/UpdateLargeFaceListFace.json new file mode 100644 index 000000000000..fe742c9bb920 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/UpdateLargeFaceListFace.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "largeFaceListId": "abc", + "persistedFaceId": "62004fa7-1ac0-478e-9d5a-b38f9e7fbc68", + "body": { + "userData": "User-provided data attached to the face." + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/UpdateLargePersonGroup.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/UpdateLargePersonGroup.json new file mode 100644 index 000000000000..b15516c4b0f3 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/UpdateLargePersonGroup.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "largePersonGroupId": "abc", + "body": { + "name": "group1", + "userData": "user-provided data attached to the large person group." + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/UpdateLargePersonGroupPerson.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/UpdateLargePersonGroupPerson.json new file mode 100644 index 000000000000..eee119bf114b --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/UpdateLargePersonGroupPerson.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "largePersonGroupId": "abc", + "personId": "25985303-c537-4467-b41d-bdb45cd95ca1", + "body": { + "name": "mike", + "userData": "{additional data associated with mike}" + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/UpdateLargePersonGroupPersonFace.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/UpdateLargePersonGroupPersonFace.json new file mode 100644 index 000000000000..0b91ecb07efc --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/UpdateLargePersonGroupPersonFace.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "largePersonGroupId": "abc", + "personId": "25985303-c537-4467-b41d-bdb45cd95ca1", + "persistedFaceId": "62004fa7-1ac0-478e-9d5a-b38f9e7fbc68", + "body": { + "userData": "User-provided data attached to the face." + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/UpdatePersonDirectoryPerson.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/UpdatePersonDirectoryPerson.json new file mode 100644 index 000000000000..077cede90291 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/UpdatePersonDirectoryPerson.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "personId": "25985303-c537-4467-b41d-bdb45cd95ca1", + "body": { + "name": "mike", + "userData": "{additional data associated with mike}" + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/UpdatePersonDirectoryPersonFace.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/UpdatePersonDirectoryPersonFace.json new file mode 100644 index 000000000000..d8d550d88a32 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/UpdatePersonDirectoryPersonFace.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "personId": "25985303-c537-4467-b41d-bdb45cd95ca1", + "recognitionModel": "recognition_02", + "persistedFaceId": "62004fa7-1ac0-478e-9d5a-b38f9e7fbc68", + "body": { + "userData": "User-provided data attached to the face." + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/UpdatePersonGroup.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/UpdatePersonGroup.json new file mode 100644 index 000000000000..2ed80b8253cd --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/UpdatePersonGroup.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "personGroupId": "abc", + "body": { + "name": "group1", + "userData": "user-provided data attached to the person group." + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/UpdatePersonGroupPerson.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/UpdatePersonGroupPerson.json new file mode 100644 index 000000000000..76fc46fc4deb --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/UpdatePersonGroupPerson.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "personGroupId": "abc", + "personId": "25985303-c537-4467-b41d-bdb45cd95ca1", + "body": { + "name": "mike", + "userData": "{additional data associated with mike}" + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/UpdatePersonGroupPersonFace.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/UpdatePersonGroupPersonFace.json new file mode 100644 index 000000000000..b3e7b74542d5 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/UpdatePersonGroupPersonFace.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "personGroupId": "abc", + "personId": "25985303-c537-4467-b41d-bdb45cd95ca1", + "persistedFaceId": "62004fa7-1ac0-478e-9d5a-b38f9e7fbc68", + "body": { + "userData": "User-provided data attached to the face." + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/UpdateSnapshot.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/UpdateSnapshot.json new file mode 100644 index 000000000000..5d56c58b9de4 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/UpdateSnapshot.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "snapshotId": "e58b3f08-1e8b-4165-81df-aa9858f233dc", + "body": { + "applyScope": [ + "64084E07-9B7F-4A98-BEA4-9986D3A1EDEB" + ], + "userData": "User-provided data attached to the snapshot." + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/VerifyFaceToFace.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/VerifyFaceToFace.json new file mode 100644 index 000000000000..dd75941b7f41 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/VerifyFaceToFace.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "body": { + "faceId1": "c5c24a82-6845-4031-9d5d-978df9175426", + "faceId2": "815df99c-598f-4926-930a-a734b3fd651c" + } + }, + "responses": { + "200": { + "body": { + "isIdentical": true, + "confidence": 0.9 + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/VerifyFaceToPerson.json b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/VerifyFaceToPerson.json new file mode 100644 index 000000000000..7646c4e2b357 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/preview/v1.0-preview/examples/VerifyFaceToPerson.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "body": { + "faceId": "c5c24a82-6845-4031-9d5d-978df9175426", + "personId": "815df99c-598f-4926-930a-a734b3fd651c", + "largePersonGroupId": "sample_group" + } + }, + "responses": { + "200": { + "body": { + "isIdentical": true, + "confidence": 0.9 + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/Face/readme.go.md b/specification/cognitiveservices/data-plane/Face/readme.go.md index a5217486e00b..2344790cf38d 100644 --- a/specification/cognitiveservices/data-plane/Face/readme.go.md +++ b/specification/cognitiveservices/data-plane/Face/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: face clear-output-folder: true ``` @@ -23,4 +23,13 @@ Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'release_1_0' && $(go) +output-folder: $(go-sdk-folder)/services/cognitiveservices/v1.0-preview/$(namespace) ``` \ No newline at end of file diff --git a/specification/cognitiveservices/data-plane/Face/readme.md b/specification/cognitiveservices/data-plane/Face/readme.md index 94ccd041fce0..cb1b24f37af9 100644 --- a/specification/cognitiveservices/data-plane/Face/readme.md +++ b/specification/cognitiveservices/data-plane/Face/readme.md @@ -21,6 +21,13 @@ These settings apply only when `--tag=release_1_0` is specified on the command l input-file: stable/v1.0/Face.json ``` +### Release 1.0-preview +These settings apply only when `--tag=release_1_0_preview` is specified on the command line. + +``` yaml $(tag) == 'release_1_0_preview' +input-file: preview/v1.0-preview/Face.json +``` + ## Swagger to SDK This section describes what SDK should be generated by the automatic system. @@ -84,6 +91,7 @@ require: $(this-folder)/../../../../profiles/readme.md # all the input files across all versions input-file: - $(this-folder)/stable/v1.0/Face.json + - $(this-folder)/preview/v1.0-preview/Face.json ``` diff --git a/specification/cognitiveservices/data-plane/Face/readme.ruby.md b/specification/cognitiveservices/data-plane/Face/readme.ruby.md index 9f2a5a7123e8..77389ae603a9 100644 --- a/specification/cognitiveservices/data-plane/Face/readme.ruby.md +++ b/specification/cognitiveservices/data-plane/Face/readme.ruby.md @@ -25,3 +25,9 @@ namespace: "Azure::CognitiveServices::Face::V1_0" output-folder: $(ruby-sdks-folder)/data/azure_cognitiveservices_face/lib title: "FaceClient" ``` + +``` yaml $(tag) == 'release_1_0_preview' && $(ruby) +namespace: "Azure::CognitiveServices::Face::V1_0_preview" +output-folder: $(ruby-sdks-folder)/data/azure_cognitiveservices_face/lib +title: "FaceClient" +``` \ No newline at end of file diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/FormRecognizer.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/FormRecognizer.json new file mode 100644 index 000000000000..0083ed13d38e --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/FormRecognizer.json @@ -0,0 +1,2361 @@ +{ + "swagger": "2.0", + "info": { + "version": "2.1-preview.3", + "title": "Form Recognizer Client", + "description": "Extracts information from forms and images into structured data." + }, + "securityDefinitions": { + "apim_key": { + "type": "apiKey", + "name": "Ocp-Apim-Subscription-Key", + "in": "header" + } + }, + "security": [ + { + "apim_key": [] + } + ], + "x-ms-parameterized-host": { + "hostTemplate": "{endpoint}/formrecognizer/v2.1-preview.3", + "useSchemePrefix": false, + "parameters": [ + { + "$ref": "#/parameters/Endpoint" + } + ] + }, + "schemes": [ + "https" + ], + "paths": { + "/custom/models": { + "post": { + "summary": "Train Custom Model", + "description": "Create and train a custom model. The request must include a source parameter that is either an externally accessible Azure storage blob container Uri (preferably a Shared Access Signature Uri) or valid path to a data folder in a locally mounted drive. When local paths are specified, they must follow the Linux/Unix path format and be an absolute path rooted to the input mount configuration setting value e.g., if '{Mounts:Input}' configuration setting value is '/input' then a valid source path would be '/input/contosodataset'. All data to be trained is expected to be under the source folder or sub folders under it. Models are trained using documents that are of the following content type - 'application/pdf', 'image/jpeg', 'image/png', 'image/tiff' or 'image/bmp'. Other type of content is ignored.", + "operationId": "TrainCustomModelAsync", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "trainRequest", + "in": "body", + "description": "Training request parameters.", + "required": true, + "schema": { + "$ref": "#/definitions/TrainRequest" + } + } + ], + "responses": { + "201": { + "description": "Request is queued successfully.", + "headers": { + "Location": { + "type": "string", + "description": "Location and ID of the model being trained. The status of model training is specified in the status property at the model location." + } + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Train custom model": { + "$ref": "./examples/TrainBatch.json" + }, + "Train custom model with subfolder filter options": { + "$ref": "./examples/TrainBatchWithSubFolders.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/custom/models/{modelId}": { + "get": { + "summary": "Get Custom Model", + "description": "Get detailed information about a custom model.", + "operationId": "GetCustomModel", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "modelId", + "in": "path", + "description": "Model identifier.", + "required": true, + "type": "string", + "format": "uuid" + }, + { + "name": "includeKeys", + "in": "query", + "description": "Include list of extracted keys in model information.", + "required": false, + "default": false, + "type": "boolean", + "x-nullable": false + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Model" + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get custom model": { + "$ref": "./examples/GetModel.json" + } + } + }, + "delete": { + "summary": "Delete Custom Model", + "description": "Mark model for deletion. Model artifacts will be permanently removed within a predetermined period.", + "operationId": "DeleteCustomModel", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "modelId", + "in": "path", + "description": "Model identifier.", + "required": true, + "type": "string", + "format": "uuid" + } + ], + "responses": { + "204": { + "description": "Successfully marked model for deletion. Model artifacts will be removed within a predefined time period." + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete custom model": { + "$ref": "./examples/DeleteModel.json" + } + } + } + }, + "/custom/models/{modelId}/analyze": { + "post": { + "summary": "Analyze Form", + "description": "Extract key-value pairs, tables, and semantic values from a given document. The input document must be of one of the supported content types - 'application/pdf', 'image/jpeg', 'image/png', 'image/tiff' or 'image/bmp'. Alternatively, use 'application/json' type to specify the location (Uri or local path) of the document to be analyzed.", + "operationId": "AnalyzeWithCustomModel", + "consumes": [ + "application/pdf", + "application/json", + "image/jpeg", + "image/png", + "image/tiff", + "image/bmp" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "modelId", + "in": "path", + "description": "Model identifier.", + "required": true, + "type": "string", + "format": "uuid" + }, + { + "name": "includeTextDetails", + "in": "query", + "description": "Include text lines and element references in the result.", + "required": false, + "default": false, + "type": "boolean", + "x-nullable": false + }, + { + "$ref": "#/parameters/Pages" + }, + { + "$ref": "#/parameters/FileStream" + } + ], + "responses": { + "202": { + "description": "Request is queued successfully.", + "headers": { + "Operation-Location": { + "type": "string", + "description": "URL containing the resultId used to track the progress and obtain the result of the analyze operation." + } + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Analyze form with custom model": { + "$ref": "./examples/AnalyzeBatch.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/custom/models/{modelId}/analyzeResults/{resultId}": { + "get": { + "summary": "Get Analyze Form Result", + "description": "Obtain current status and the result of the analyze form operation.", + "operationId": "GetAnalyzeFormResult", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "modelId", + "in": "path", + "description": "Model identifier.", + "required": true, + "type": "string", + "format": "uuid" + }, + { + "name": "resultId", + "in": "path", + "description": "Analyze operation result identifier.", + "required": true, + "type": "string", + "format": "uuid" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/AnalyzeOperationResult" + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get analyze form result": { + "$ref": "./examples/AnalyzeOperationResult.json" + } + } + } + }, + "/custom/models/{modelId}/copy": { + "post": { + "summary": "Copy Custom Model", + "description": "Copy custom model stored in this resource (the source) to user specified target Form Recognizer resource.", + "operationId": "CopyCustomModel", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "modelId", + "in": "path", + "description": "Model identifier.", + "required": true, + "type": "string", + "format": "uuid" + }, + { + "name": "copyRequest", + "in": "body", + "description": "Copy request parameters.", + "required": true, + "schema": { + "$ref": "#/definitions/CopyRequest" + } + } + ], + "responses": { + "202": { + "description": "Copy request is queued successfully.", + "headers": { + "Operation-Location": { + "type": "string", + "description": "URL containing the resultId used to track the progress and obtain the result of the copy operation." + } + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Copy custom model": { + "$ref": "./examples/CopyModel.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/custom/models/{modelId}/copyResults/{resultId}": { + "get": { + "summary": "Get Custom Model Copy Result", + "description": "Obtain current status and the result of a custom model copy operation.", + "operationId": "GetCustomModelCopyResult", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "modelId", + "in": "path", + "description": "Model identifier.", + "required": true, + "type": "string", + "format": "uuid" + }, + { + "name": "resultId", + "in": "path", + "description": "Copy operation result identifier.", + "required": true, + "type": "string", + "format": "uuid" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/CopyOperationResult" + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get copy custom model result": { + "$ref": "./examples/CopyOperationResult.json" + }, + "Get copy custom model result with failures": { + "$ref": "./examples/CopyOperationResultWithErrors.json" + } + } + } + }, + "/custom/models/copyAuthorization": { + "post": { + "summary": "Generate Copy Authorization", + "description": "Generate authorization to copy a model into the target Form Recognizer resource.", + "operationId": "GenerateModelCopyAuthorization", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [], + "responses": { + "201": { + "description": "Copy request is authorized successfully.", + "headers": { + "Location": { + "type": "string", + "description": "Location and ID of the model being copied. The status of model copy is specified in the status property at the model location." + } + }, + "schema": { + "$ref": "#/definitions/CopyAuthorizationResult" + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Copy custom model": { + "$ref": "./examples/CopyModelAuthorization.json" + } + } + } + }, + "/custom/models/compose": { + "post": { + "tags": [ + "Form" + ], + "summary": "Compose trained with labels models into one composed model.", + "description": "Compose request would include list of models ids.\r\nIt would validate what all models either trained with labels model or composed model.\r\nIt would validate limit of models put together.", + "operationId": "ComposeCustomModelsAsync", + "consumes": [], + "produces": [ + "application/json", + "text/json" + ], + "parameters": [ + { + "name": "composeRequest", + "in": "body", + "description": "Compose models", + "required": true, + "schema": { + "$ref": "#/definitions/ComposeRequest" + } + } + ], + "responses": { + "201": { + "description": "Request is queued successfully.", + "headers": { + "Location": { + "type": "string", + "description": "Location and ID of the composed model. The status of composed model is specified in the status property at the model location." + } + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Compose custom models": { + "$ref": "./examples/ComposeModels.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/prebuilt/businessCard/analyze": { + "post": { + "summary": "Analyze Business Card", + "description": "Extract field text and semantic values from a given business card document. The input document must be of one of the supported content types - 'application/pdf', 'image/jpeg', 'image/png', 'image/tiff' or 'image/bmp'. Alternatively, use 'application/json' type to specify the location (Uri) of the document to be analyzed.", + "operationId": "AnalyzeBusinessCardAsync", + "consumes": [ + "application/pdf", + "application/json", + "image/jpeg", + "image/png", + "image/tiff", + "image/bmp" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "includeTextDetails", + "in": "query", + "description": "Include text lines and element references in the result.", + "required": false, + "default": false, + "type": "boolean", + "x-nullable": false + }, + { + "$ref": "#/parameters/Locale" + }, + { + "$ref": "#/parameters/Pages" + }, + { + "$ref": "#/parameters/FileStream" + } + ], + "responses": { + "202": { + "description": "Request is queued successfully.", + "headers": { + "Operation-Location": { + "type": "string", + "description": "URL containing the resultId used to track the progress and obtain the result of the analyze operation." + } + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Analyze Business Card": { + "$ref": "./examples/BusinessCardBatch.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/prebuilt/businessCard/analyzeResults/{resultId}": { + "get": { + "summary": "Get Analyze Business Card Result", + "description": "Track the progress and obtain the result of the analyze business card operation.", + "operationId": "GetAnalyzeBusinessCardResult", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "resultId", + "in": "path", + "description": "Analyze operation result identifier.", + "required": true, + "type": "string", + "format": "uuid" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/AnalyzeOperationResult" + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get analyze business card result": { + "$ref": "./examples/BusinessCardBatchResult.json" + } + } + } + }, + "/prebuilt/invoice/analyze": { + "post": { + "summary": "Analyze Invoice Document", + "description": "Extract field text and semantic values from a given invoice document. The input document must be of one of the supported content types - 'application/pdf', 'image/jpeg', 'image/png', 'image/tiff' or 'image/bmp'. Alternatively, use 'application/json' type to specify the location (Uri) of the document to be analyzed.", + "operationId": "AnalyzeInvoiceAsync", + "consumes": [ + "application/pdf", + "application/json", + "image/jpeg", + "image/png", + "image/tiff", + "image/bmp" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "includeTextDetails", + "in": "query", + "description": "Include text lines and element references in the result.", + "required": false, + "default": false, + "type": "boolean", + "x-nullable": false + }, + { + "$ref": "#/parameters/Locale" + }, + { + "$ref": "#/parameters/Pages" + }, + { + "$ref": "#/parameters/FileStream" + } + ], + "responses": { + "202": { + "description": "Request is queued successfully.", + "headers": { + "Operation-Location": { + "type": "string", + "description": "URL containing the resultId used to track the progress and obtain the result of the analyze operation." + } + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Analyze receipt": { + "$ref": "./examples/InvoiceBatch.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/prebuilt/invoice/analyzeResults/{resultId}": { + "get": { + "summary": "Get Analyze Invoice Result", + "description": "Track the progress and obtain the result of the analyze invoice operation.", + "operationId": "GetAnalyzeInvoiceResult", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "resultId", + "in": "path", + "description": "Analyze operation result identifier.", + "required": true, + "type": "string", + "format": "uuid" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/AnalyzeOperationResult" + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get analyze receipt result": { + "$ref": "./examples/InvoiceBatchResult.json" + } + } + } + }, + "/prebuilt/idDocument/analyze": { + "post": { + "summary": "Analyze ID Document", + "description": "Extract field text and semantic values from a given ID document. The input document must be of one of the supported content types - 'application/pdf', 'image/jpeg', 'image/png', 'image/tiff' or 'image/bmp'. Alternatively, use 'application/json' type to specify the location (Uri) of the document to be analyzed.", + "operationId": "AnalyzeIdDocumentAsync", + "consumes": [ + "application/pdf", + "application/json", + "image/jpeg", + "image/png", + "image/tiff", + "image/bmp" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "includeTextDetails", + "in": "query", + "description": "Include text lines and element references in the result.", + "required": false, + "default": false, + "type": "boolean", + "x-nullable": false + }, + { + "$ref": "#/parameters/Pages" + }, + { + "$ref": "#/parameters/FileStream" + } + ], + "responses": { + "202": { + "description": "Request is queued successfully.", + "headers": { + "Operation-Location": { + "type": "string", + "description": "URL containing the resultId used to track the progress and obtain the result of the analyze operation." + } + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Analyze ID": { + "$ref": "./examples/IDDocumentBatch.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/prebuilt/idDocument/analyzeResults/{resultId}": { + "get": { + "summary": "Get Analyze ID Document Result", + "description": "Track the progress and obtain the result of the analyze ID operation.", + "operationId": "GetAnalyzeIdDocumentResult", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "resultId", + "in": "path", + "description": "Analyze operation result identifier.", + "required": true, + "type": "string", + "format": "uuid" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/AnalyzeOperationResult" + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get analyze ID result": { + "$ref": "./examples/IDDocumentBatchResult.json" + } + } + } + }, + "/prebuilt/receipt/analyze": { + "post": { + "summary": "Analyze Receipt", + "description": "Extract field text and semantic values from a given receipt document. The input document must be of one of the supported content types - 'application/pdf', 'image/jpeg', 'image/png', 'image/tiff' or 'image/bmp'. Alternatively, use 'application/json' type to specify the location (Uri) of the document to be analyzed.", + "operationId": "AnalyzeReceiptAsync", + "consumes": [ + "application/pdf", + "application/json", + "image/jpeg", + "image/png", + "image/tiff", + "image/bmp" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "includeTextDetails", + "in": "query", + "description": "Include text lines and element references in the result.", + "required": false, + "default": false, + "type": "boolean", + "x-nullable": false + }, + { + "$ref": "#/parameters/Locale" + }, + { + "$ref": "#/parameters/Pages" + }, + { + "$ref": "#/parameters/FileStream" + } + ], + "responses": { + "202": { + "description": "Request is queued successfully.", + "headers": { + "Operation-Location": { + "type": "string", + "description": "URL containing the resultId used to track the progress and obtain the result of the analyze operation." + } + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Analyze receipt": { + "$ref": "./examples/ReceiptsBatch.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/prebuilt/receipt/analyzeResults/{resultId}": { + "get": { + "summary": "Get Analyze Receipt Result", + "description": "Track the progress and obtain the result of the analyze receipt operation.", + "operationId": "GetAnalyzeReceiptResult", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "resultId", + "in": "path", + "description": "Analyze operation result identifier.", + "required": true, + "type": "string", + "format": "uuid" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/AnalyzeOperationResult" + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get analyze receipt result": { + "$ref": "./examples/ReceiptsBatchResult.json" + } + } + } + }, + "/layout/analyze": { + "post": { + "summary": "Analyze Layout", + "description": "Extract text and layout information from a given document. The input document must be of one of the supported content types - 'application/pdf', 'image/jpeg', 'image/png', 'image/tiff' or 'image/bmp'. Alternatively, use 'application/json' type to specify the location (Uri or local path) of the document to be analyzed.", + "operationId": "AnalyzeLayoutAsync", + "consumes": [ + "application/pdf", + "application/json", + "image/jpeg", + "image/png", + "image/tiff", + "image/bmp" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/FileStream" + }, + { + "$ref": "#/parameters/Pages" + }, + { + "$ref": "#/parameters/Language" + }, + { + "$ref": "#/parameters/ReadingOrder" + } + ], + "responses": { + "202": { + "description": "Request is queued successfully.", + "headers": { + "Operation-Location": { + "type": "string", + "description": "URL containing the resultId used to track the progress and obtain the result of the analyze operation." + } + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Analyze layout": { + "$ref": "./examples/LayoutBatch.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/layout/analyzeResults/{resultId}": { + "get": { + "summary": "Get Analyze Layout Result", + "description": "Track the progress and obtain the result of the analyze layout operation", + "operationId": "GetAnalyzeLayoutResult", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "resultId", + "in": "path", + "description": "Analyze operation result identifier.", + "required": true, + "type": "string", + "format": "uuid" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/AnalyzeOperationResult" + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get analyze layout result": { + "$ref": "./examples/LayoutBatchResult.json" + } + } + } + } + }, + "x-ms-paths": { + "/custom/models?op=full": { + "get": { + "summary": "List Custom Models", + "description": "Get information about all custom models", + "operationId": "ListCustomModels", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "op", + "in": "query", + "description": "Specify whether to return summary or full list of models.", + "required": true, + "type": "string", + "enum": [ + "full" + ] + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Models" + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink", + "itemName": "modelList" + }, + "x-ms-examples": { + "List custom models": { + "$ref": "./examples/GetModels.json" + } + } + } + }, + "/custom/models?op=summary": { + "get": { + "summary": "Get Custom Models", + "description": "Get information about all custom models", + "operationId": "GetCustomModels", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "op", + "in": "query", + "description": "Specify whether to return summary or full list of models.", + "required": true, + "type": "string", + "enum": [ + "summary" + ] + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Models" + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get models summary": { + "$ref": "./examples/GetModelsSummary.json" + } + } + } + } + }, + "definitions": { + "OperationStatus": { + "type": "string", + "description": "Status of the queued operation.", + "enum": [ + "notStarted", + "running", + "succeeded", + "failed" + ], + "x-ms-enum": { + "name": "OperationStatus", + "modelAsString": false + }, + "x-nullable": false + }, + "CopyAuthorizationResult": { + "description": "Request parameter that contains authorization claims for copy operation.", + "required": [ + "modelId", + "accessToken", + "expirationDateTimeTicks" + ], + "type": "object", + "properties": { + "modelId": { + "description": "Model identifier.", + "type": "string" + }, + "accessToken": { + "description": "Token claim used to authorize the request.", + "type": "string" + }, + "expirationDateTimeTicks": { + "description": "The time when the access token expires. The date is represented as the number of seconds from 1970-01-01T0:0:0Z UTC until the expiration time.", + "type": "integer", + "format": "int64" + } + } + }, + "CopyRequest": { + "description": "Request parameter to copy an existing custom model from the source resource to a target resource referenced by the resource ID.", + "required": [ + "targetResourceId", + "targetResourceRegion", + "copyAuthorization" + ], + "type": "object", + "properties": { + "targetResourceId": { + "description": "Azure Resource Id of the target Form Recognizer resource where the model is copied to.", + "maxLength": 1024, + "type": "string", + "pattern": "^/subscriptions/[^/]*/resourceGroups/[^/]*/providers/Microsoft.CognitiveServices/accounts/[^/]*$", + "x-ms-azure-resource": true + }, + "targetResourceRegion": { + "description": "Location of the target Azure resource. A valid Azure region name supported by Cognitive Services.", + "type": "string", + "pattern": "^[a-z0-9]+$", + "minLength": 1, + "maxLength": 24 + }, + "copyAuthorization": { + "description": "Entity that encodes claims to authorize the copy request.", + "$ref": "#/definitions/CopyAuthorizationResult" + } + } + }, + "CopyOperationResult": { + "description": "Status and result of the queued copy operation.", + "type": "object", + "required": [ + "status", + "createdDateTime", + "lastUpdatedDateTime" + ], + "properties": { + "status": { + "description": "Operation status.", + "$ref": "#/definitions/OperationStatus" + }, + "createdDateTime": { + "format": "date-time", + "description": "Date and time (UTC) when the copy operation was submitted.", + "type": "string", + "x-nullable": false + }, + "lastUpdatedDateTime": { + "format": "date-time", + "description": "Date and time (UTC) when the status was last updated.", + "type": "string", + "x-nullable": false + }, + "copyResult": { + "description": "Results of the copy operation.", + "$ref": "#/definitions/CopyResult" + } + } + }, + "CopyResult": { + "description": "Custom model copy result.", + "type": "object", + "required": [ + "modelId" + ], + "properties": { + "modelId": { + "description": "Identifier of the target model.", + "type": "string", + "format": "uuid" + }, + "errors": { + "description": "Errors returned during the copy operation.", + "type": "array", + "items": { + "$ref": "#/definitions/ErrorInformation" + } + } + } + }, + "AnalyzeOperationResult": { + "description": "Status and result of the queued analyze operation.", + "type": "object", + "required": [ + "status", + "createdDateTime", + "lastUpdatedDateTime" + ], + "properties": { + "status": { + "description": "Operation status.", + "$ref": "#/definitions/OperationStatus" + }, + "createdDateTime": { + "format": "date-time", + "description": "Date and time (UTC) when the analyze operation was submitted.", + "type": "string", + "x-nullable": false + }, + "lastUpdatedDateTime": { + "format": "date-time", + "description": "Date and time (UTC) when the status was last updated.", + "type": "string", + "x-nullable": false + }, + "analyzeResult": { + "description": "Results of the analyze operation.", + "$ref": "#/definitions/AnalyzeResult" + } + } + }, + "ModelName": { + "description": "Optional user defined model name (max length: 1024).", + "type": "string", + "x-nullable": false + }, + "TrainRequest": { + "description": "Request parameter to train a new custom model.", + "required": [ + "source" + ], + "type": "object", + "properties": { + "source": { + "description": "Source path containing the training documents.", + "maxLength": 2048, + "minLength": 0, + "type": "string" + }, + "sourceFilter": { + "$ref": "#/definitions/TrainSourceFilter", + "description": "Filter to apply to the documents in the source path for training." + }, + "useLabelFile": { + "description": "Use label file for training a model.", + "type": "boolean", + "default": false + }, + "modelName": { + "$ref": "#/definitions/ModelName" + } + } + }, + "TrainSourceFilter": { + "description": "Filter to apply to the documents in the source path for training.", + "type": "object", + "properties": { + "prefix": { + "description": "A case-sensitive prefix string to filter documents in the source path for training. For example, when using a Azure storage blob Uri, use the prefix to restrict sub folders for training.", + "maxLength": 1024, + "minLength": 0, + "type": "string" + }, + "includeSubFolders": { + "description": "A flag to indicate if sub folders within the set of prefix folders will also need to be included when searching for content to be preprocessed.", + "type": "boolean", + "default": false, + "x-nullable": false + } + } + }, + "TrainResult": { + "description": "Custom model training result.", + "type": "object", + "required": [ + "trainingDocuments" + ], + "properties": { + "trainingDocuments": { + "description": "List of the documents used to train the model and any errors reported in each document.", + "type": "array", + "items": { + "$ref": "#/definitions/TrainingDocumentInfo" + } + }, + "fields": { + "description": "List of fields used to train the model and the train operation error reported by each.", + "type": "array", + "items": { + "$ref": "#/definitions/FormFieldsReport" + } + }, + "averageModelAccuracy": { + "description": "Average accuracy.", + "type": "number", + "x-nullable": false + }, + "modelId": { + "description": "Model identifier.", + "type": "string", + "format": "uuid", + "x-nullable": false + }, + "errors": { + "description": "Errors returned during the training operation.", + "type": "array", + "items": { + "$ref": "#/definitions/ErrorInformation" + } + } + } + }, + "SourcePath": { + "description": "Uri or local path to source data.", + "type": "object", + "properties": { + "source": { + "description": "File source path.", + "maxLength": 2048, + "minLength": 0, + "type": "string" + } + } + }, + "Attributes": { + "description": "Optional model attributes.", + "type": "object", + "properties": { + "isComposed": { + "description": "Is this model composed? (default: false).", + "type": "boolean", + "default": false, + "x-nullable": false + } + } + }, + "ModelInfo": { + "description": "Basic custom model information.", + "type": "object", + "required": [ + "modelId", + "status", + "createdDateTime", + "lastUpdatedDateTime" + ], + "properties": { + "modelId": { + "description": "Model identifier.", + "type": "string", + "format": "uuid", + "x-nullable": false + }, + "status": { + "description": "Status of the model.", + "enum": [ + "creating", + "ready", + "invalid" + ], + "type": "string", + "x-ms-enum": { + "name": "ModelStatus", + "modelAsString": false + }, + "x-nullable": false + }, + "createdDateTime": { + "format": "date-time", + "description": "Date and time (UTC) when the model was created.", + "type": "string", + "x-nullable": false + }, + "lastUpdatedDateTime": { + "format": "date-time", + "description": "Date and time (UTC) when the status was last updated.", + "type": "string", + "x-nullable": false + }, + "modelName": { + "$ref": "#/definitions/ModelName" + }, + "attributes": { + "$ref": "#/definitions/Attributes" + } + } + }, + "Models": { + "description": "Response to the list custom models operation.", + "type": "object", + "properties": { + "summary": { + "description": "Summary of all trained custom models.", + "type": "object", + "required": [ + "count", + "limit", + "lastUpdatedDateTime" + ], + "properties": { + "count": { + "description": "Current count of trained custom models.", + "type": "integer", + "x-nullable": false + }, + "limit": { + "description": "Max number of models that can be trained for this account.", + "type": "integer", + "x-nullable": false + }, + "lastUpdatedDateTime": { + "format": "date-time", + "description": "Date and time (UTC) when the summary was last updated.", + "type": "string", + "x-nullable": false + } + } + }, + "modelList": { + "description": "Collection of trained custom models.", + "type": "array", + "items": { + "$ref": "#/definitions/ModelInfo" + } + }, + "nextLink": { + "description": "Link to the next page of custom models.", + "type": "string" + } + } + }, + "Model": { + "description": "Response to the get custom model operation.", + "type": "object", + "required": [ + "modelInfo" + ], + "properties": { + "modelInfo": { + "$ref": "#/definitions/ModelInfo" + }, + "keys": { + "$ref": "#/definitions/KeysResult" + }, + "trainResult": { + "description": "Training result for custom model.", + "$ref": "#/definitions/TrainResult" + }, + "composedTrainResults": { + "type": "array", + "description": "Training result for composed model.", + "items": { + "$ref": "#/definitions/TrainResult" + } + } + } + }, + "KeysResult": { + "description": "Keys extracted by the custom model.", + "type": "object", + "required": [ + "clusters" + ], + "properties": { + "clusters": { + "description": "Object mapping clusterIds to a list of keys.", + "type": "object", + "additionalProperties": { + "type": "array", + "uniqueItems": true, + "items": { + "type": "string" + } + } + } + } + }, + "TrainingDocumentInfo": { + "description": "Report for a custom model training document.", + "type": "object", + "required": [ + "documentName", + "pages", + "errors", + "status" + ], + "properties": { + "documentName": { + "description": "Training document name.", + "type": "string" + }, + "pages": { + "format": "int32", + "description": "Total number of pages trained.", + "type": "integer", + "x-nullable": false + }, + "errors": { + "description": "List of errors.", + "type": "array", + "items": { + "$ref": "#/definitions/ErrorInformation" + } + }, + "status": { + "description": "Status of the training operation.", + "enum": [ + "succeeded", + "partiallySucceeded", + "failed" + ], + "type": "string", + "x-ms-enum": { + "name": "TrainStatus", + "modelAsString": false + }, + "x-nullable": false + } + } + }, + "FormFieldsReport": { + "description": "Report for a custom model training field.", + "type": "object", + "required": [ + "fieldName", + "accuracy" + ], + "properties": { + "fieldName": { + "description": "Training field name.", + "type": "string" + }, + "accuracy": { + "description": "Estimated extraction accuracy for this field.", + "type": "number", + "x-nullable": false + } + } + }, + "ErrorResponse": { + "type": "object", + "required": [ + "error" + ], + "properties": { + "error": { + "$ref": "#/definitions/ErrorInformation" + } + } + }, + "ErrorInformation": { + "type": "object", + "required": [ + "code", + "message" + ], + "properties": { + "code": { + "type": "string" + }, + "message": { + "type": "string" + } + } + }, + "ComposeRequest": { + "description": "Request contract for compose operation.", + "required": [ + "modelIds" + ], + "type": "object", + "properties": { + "modelIds": { + "description": "List of model ids to compose.", + "uniqueItems": false, + "type": "array", + "items": { + "type": "string", + "format": "uuid" + } + }, + "modelName": { + "$ref": "#/definitions/ModelName" + } + } + }, + "AnalyzeResult": { + "description": "Analyze operation result.", + "type": "object", + "required": [ + "version", + "readResults" + ], + "properties": { + "version": { + "description": "Version of schema used for this result.", + "type": "string" + }, + "readResults": { + "description": "Text extracted from the input.", + "type": "array", + "items": { + "$ref": "#/definitions/ReadResult" + } + }, + "pageResults": { + "description": "Page-level information extracted from the input.", + "type": "array", + "items": { + "$ref": "#/definitions/PageResult" + } + }, + "documentResults": { + "description": "Document-level information extracted from the input.", + "type": "array", + "items": { + "$ref": "#/definitions/DocumentResult" + } + }, + "errors": { + "description": "List of errors reported during the analyze operation.", + "type": "array", + "items": { + "$ref": "#/definitions/ErrorInformation" + } + } + } + }, + "ReadResult": { + "description": "Text extracted from a page in the input document.", + "type": "object", + "required": [ + "page", + "angle", + "width", + "height", + "unit" + ], + "properties": { + "page": { + "description": "The 1-based page number in the input document.", + "type": "integer", + "minimum": 1, + "x-nullable": false + }, + "angle": { + "description": "The general orientation of the text in clockwise direction, measured in degrees between (-180, 180].", + "type": "number", + "minimum": -180, + "maximum": 180, + "exclusiveMinimum": true, + "x-nullable": false + }, + "width": { + "description": "The width of the image/PDF in pixels/inches, respectively.", + "type": "number", + "minimum": 0, + "x-nullable": false + }, + "height": { + "description": "The height of the image/PDF in pixels/inches, respectively.", + "type": "number", + "minimum": 0, + "x-nullable": false + }, + "unit": { + "description": "The unit used by the width, height and boundingBox properties. For images, the unit is \"pixel\". For PDF, the unit is \"inch\".", + "type": "string", + "enum": [ + "pixel", + "inch" + ], + "x-ms-enum": { + "name": "LengthUnit", + "modelAsString": false + }, + "x-nullable": false + }, + "lines": { + "description": "When includeTextDetails is set to true, a list of recognized text lines. The maximum number of lines returned is 300 per page. The lines are sorted top to bottom, left to right, although in certain cases proximity is treated with higher priority. As the sorting order depends on the detected text, it may change across images and OCR version updates. Thus, business logic should be built upon the actual line location instead of order.", + "type": "array", + "items": { + "$ref": "#/definitions/TextLine" + } + }, + "selectionMarks": { + "description": "List of selection marks extracted from the page.", + "type": "array", + "items": { + "$ref": "#/definitions/SelectionMark" + } + } + } + }, + "TextLine": { + "description": "An object representing an extracted text line.", + "type": "object", + "required": [ + "text", + "boundingBox", + "words" + ], + "properties": { + "text": { + "description": "The text content of the line.", + "type": "string" + }, + "boundingBox": { + "description": "Bounding box of an extracted line.", + "$ref": "#/definitions/BoundingBox" + }, + "words": { + "description": "List of words in the text line.", + "type": "array", + "items": { + "$ref": "#/definitions/TextWord" + } + }, + "appearance": { + "description": "Text appearance properties.", + "$ref": "#/definitions/Appearance" + } + } + }, + "TextWord": { + "description": "An object representing a word.", + "type": "object", + "required": [ + "boundingBox", + "text" + ], + "properties": { + "text": { + "description": "The text content of the word.", + "type": "string" + }, + "boundingBox": { + "description": "Bounding box of an extracted word.", + "$ref": "#/definitions/BoundingBox" + }, + "confidence": { + "description": "Confidence value.", + "$ref": "#/definitions/Confidence" + } + } + }, + "BoundingBox": { + "description": "Quadrangle bounding box, with coordinates specified relative to the top-left of the original image. The eight numbers represent the four points, clockwise from the top-left corner relative to the text orientation. For image, the (x, y) coordinates are measured in pixels. For PDF, the (x, y) coordinates are measured in inches.", + "type": "array", + "minItems": 8, + "maxItems": 8, + "items": { + "type": "number", + "x-nullable": false + } + }, + "PageResult": { + "description": "Extracted information from a single page.", + "type": "object", + "required": [ + "page" + ], + "properties": { + "page": { + "description": "Page number.", + "type": "integer", + "format": "int32", + "minimum": 1, + "x-nullable": false + }, + "clusterId": { + "description": "Cluster identifier.", + "type": "integer", + "format": "int32", + "minimum": 0, + "x-nullable": false + }, + "keyValuePairs": { + "description": "List of key-value pairs extracted from the page.", + "type": "array", + "items": { + "$ref": "#/definitions/KeyValuePair" + } + }, + "tables": { + "description": "List of data tables extracted from the page.", + "type": "array", + "items": { + "$ref": "#/definitions/DataTable" + } + } + } + }, + "KeyValuePair": { + "description": "Information about the extracted key-value pair.", + "type": "object", + "required": [ + "key", + "value", + "confidence" + ], + "properties": { + "label": { + "description": "A user defined label for the key/value pair entry.", + "type": "string" + }, + "key": { + "description": "Information about the extracted key in a key-value pair.", + "$ref": "#/definitions/KeyValueElement" + }, + "value": { + "description": "Information about the extracted value in a key-value pair.", + "$ref": "#/definitions/KeyValueElement" + }, + "confidence": { + "description": "Confidence value.", + "$ref": "#/definitions/Confidence" + } + } + }, + "KeyValueElement": { + "description": "Information about the extracted key or value in a key-value pair.", + "type": "object", + "required": [ + "text" + ], + "properties": { + "type": { + "$ref": "#/definitions/KeyValueType" + }, + "text": { + "description": "The text content of the key or value.", + "type": "string" + }, + "boundingBox": { + "description": "Bounding box of the key or value.", + "$ref": "#/definitions/BoundingBox" + }, + "elements": { + "description": "When includeTextDetails is set to true, a list of references to the text elements constituting this key or value.", + "type": "array", + "items": { + "$ref": "#/definitions/ElementReference" + } + } + } + }, + "KeyValueType": { + "type": "string", + "description": "Semantic data type of the key value element.", + "enum": [ + "string", + "selectionMark" + ], + "x-ms-enum": { + "name": "KeyValueType", + "modelAsString": true + }, + "x-nullable": false + }, + "ElementReference": { + "description": "Reference to a line, word or selection mark.", + "type": "string" + }, + "SelectionMark": { + "description": "Information about the extracted selection mark.", + "type": "object", + "required": [ + "boundingBox", + "confidence", + "state" + ], + "properties": { + "boundingBox": { + "description": "Bounding box of the selection mark.", + "$ref": "#/definitions/BoundingBox" + }, + "confidence": { + "description": "Confidence value.", + "$ref": "#/definitions/Confidence" + }, + "state": { + "description": "State of the selection mark.", + "type": "string", + "enum": [ + "selected", + "unselected" + ] + } + } + }, + "DataTable": { + "description": "Information about the extracted table contained in a page.", + "type": "object", + "required": [ + "rows", + "columns", + "cells", + "boundingBox" + ], + "properties": { + "rows": { + "description": "Number of rows.", + "type": "integer", + "minimum": 1, + "x-nullable": false + }, + "columns": { + "description": "Number of columns.", + "type": "integer", + "minimum": 1, + "x-nullable": false + }, + "cells": { + "description": "List of cells contained in the table.", + "type": "array", + "items": { + "$ref": "#/definitions/DataTableCell" + } + }, + "boundingBox": { + "description": "Bounding box of the table.", + "$ref": "#/definitions/BoundingBox" + } + } + }, + "DataTableCell": { + "description": "Information about the extracted cell in a table.", + "type": "object", + "required": [ + "rowIndex", + "columnIndex", + "text", + "boundingBox", + "confidence" + ], + "properties": { + "rowIndex": { + "description": "Row index of the cell.", + "type": "integer", + "minimum": 0, + "x-nullable": false + }, + "columnIndex": { + "description": "Column index of the cell.", + "type": "integer", + "minimum": 0, + "x-nullable": false + }, + "rowSpan": { + "description": "Number of rows spanned by this cell.", + "type": "integer", + "minimum": 1, + "default": 1, + "x-nullable": false + }, + "columnSpan": { + "description": "Number of columns spanned by this cell.", + "type": "integer", + "minimum": 1, + "default": 1, + "x-nullable": false + }, + "text": { + "description": "Text content of the cell.", + "type": "string" + }, + "boundingBox": { + "description": "Bounding box of the cell.", + "$ref": "#/definitions/BoundingBox" + }, + "confidence": { + "description": "Confidence value.", + "$ref": "#/definitions/Confidence" + }, + "elements": { + "description": "When includeTextDetails is set to true, a list of references to the text elements constituting this table cell.", + "type": "array", + "items": { + "$ref": "#/definitions/ElementReference" + } + }, + "isHeader": { + "description": "Is the current cell a header cell?", + "type": "boolean", + "default": false, + "x-nullable": false + }, + "isFooter": { + "description": "Is the current cell a footer cell?", + "type": "boolean", + "default": false, + "x-nullable": false + } + } + }, + "DocumentResult": { + "description": "A set of extracted fields corresponding to the input document.", + "type": "object", + "required": [ + "docType", + "pageRange", + "fields" + ], + "properties": { + "docType": { + "description": "Document type.", + "type": "string" + }, + "modelId": { + "description": "Model identifier.", + "type": "string", + "format": "uuid", + "x-nullable": false + }, + "pageRange": { + "description": "First and last page number where the document is found.", + "type": "array", + "minItems": 2, + "maxItems": 2, + "items": { + "type": "integer", + "minimum": 1, + "x-nullable": false + } + }, + "docTypeConfidence": { + "description": "Predicted document type confidence.", + "$ref": "#/definitions/Confidence" + }, + "fields": { + "description": "Dictionary of named field values.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/FieldValue" + } + } + } + }, + "FieldValue": { + "description": "Recognized field value.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "description": "Type of field value.", + "$ref": "#/definitions/FieldValueType" + }, + "valueString": { + "description": "String value.", + "type": "string" + }, + "valueDate": { + "description": "Date value.", + "format": "date", + "type": "string", + "x-nullable": false + }, + "valueTime": { + "description": "Time value.", + "format": "time", + "type": "string", + "x-nullable": false + }, + "valuePhoneNumber": { + "description": "Phone number value.", + "type": "string" + }, + "valueNumber": { + "description": "Floating point value.", + "type": "number", + "x-nullable": false + }, + "valueInteger": { + "description": "Integer value.", + "type": "integer", + "x-nullable": false + }, + "valueArray": { + "description": "Array of field values.", + "type": "array", + "items": { + "$ref": "#/definitions/FieldValue" + } + }, + "valueObject": { + "description": "Dictionary of named field values.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/FieldValue" + } + }, + "valueSelectionMark": { + "description": "Selection mark value.", + "type": "string", + "enum": [ + "selected", + "unselected" + ], + "x-nullable": false + }, + "valueGender": { + "description": "Gender value: M, F, or X.", + "type": "string", + "enum": [ + "M", + "F", + "X" + ], + "x-nullable": false + }, + "valueCountry": { + "description": "3-letter country code (ISO 3166-1 alpha-3).", + "type": "string", + "x-nullable": false + }, + "text": { + "description": "Text content of the extracted field.", + "type": "string" + }, + "boundingBox": { + "description": "Bounding box of the field value, if appropriate.", + "$ref": "#/definitions/BoundingBox" + }, + "confidence": { + "description": "Confidence score.", + "$ref": "#/definitions/Confidence" + }, + "elements": { + "description": "When includeTextDetails is set to true, a list of references to the text elements constituting this field.", + "type": "array", + "items": { + "$ref": "#/definitions/ElementReference" + } + }, + "page": { + "description": "The 1-based page number in the input document.", + "type": "integer", + "minimum": 1, + "x-nullable": false + } + } + }, + "FieldValueType": { + "type": "string", + "description": "Semantic data type of the field value.", + "enum": [ + "string", + "date", + "time", + "phoneNumber", + "number", + "integer", + "array", + "object", + "selectionMark", + "gender", + "country" + ], + "x-ms-enum": { + "name": "FieldValueType", + "modelAsString": false + }, + "x-nullable": false + }, + "Confidence": { + "description": "Confidence value.", + "type": "number", + "minimum": 0, + "maximum": 1, + "x-nullable": false + }, + "Appearance": { + "description": "An object representing the appearance of the text line.", + "type": "object", + "required": [ + "style" + ], + "properties": { + "style": { + "description": "An object representing the style of the text line.", + "type": "object", + "$ref": "#/definitions/Style" + } + } + }, + "Style": { + "description": "An object representing the style of the text line.", + "type": "object", + "required": [ + "name", + "confidence" + ], + "properties": { + "name": { + "description": "The text line style name, including handwriting and other.", + "type": "string", + "x-ms-enum": { + "name": "TextStyle", + "modelAsString": true + }, + "enum": [ + "other", + "handwriting" + ] + }, + "confidence": { + "description": "The confidence of text line style.", + "type": "number", + "format": "float" + } + } + } + }, + "parameters": { + "Endpoint": { + "name": "endpoint", + "description": "Supported Cognitive Services endpoints (protocol and hostname, for example: https://westus2.api.cognitive.microsoft.com).", + "x-ms-parameter-location": "client", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true + }, + "FileStream": { + "name": "fileStream", + "description": ".json, .pdf, .jpg, .png, .tiff or .bmp type file stream.", + "x-ms-parameter-location": "method", + "in": "body", + "schema": { + "$ref": "#/definitions/SourcePath" + } + }, + "Pages": { + "name": "pages", + "in": "query", + "description": "Custom page numbers for multi-page documents(PDF/TIFF), input the number of the pages you want to get OCR result. For a range of pages, use a hyphen. Separate each page or range with a comma.", + "required": false, + "x-ms-parameter-location": "method", + "type": "array", + "items": { + "type": "string", + "pattern": "(^[0-9]+-[0-9]+$)|(^[0-9]+$)" + } + }, + "Locale": { + "name": "locale", + "in": "query", + "description": "Locale of the input document. Supported locales include: en-AU, en-CA, en-GB, en-IN, en-US(default).", + "required": false, + "x-ms-parameter-location": "method", + "type": "string", + "enum": [ + "en-AU", + "en-CA", + "en-GB", + "en-IN", + "en-US" + ], + "x-ms-enum": { + "name": "Locale", + "modelAsString": true + } + }, + "Language": { + "name": "language", + "in": "query", + "description": "Currently, only Afrikaans (‘af’), Albanian (‘sq’), Asturian (‘ast’), Basque (‘eu’), Bislama (‘bi’), Breton (‘br’), Catalan (‘ca’), Cebuano (‘ceb’), Chamorro (‘ch’), Cornish (‘kw’), Corsican (‘co’), Crimean Tatar - Latin script(‘crh’), Czech (‘cs’), Danish (‘da’), Dutch (‘nl’), English ('en'), Estonian (‘et’), Fijian (‘fj’), Filipino (‘fil’), Finnish (‘fi’), French (‘fr’), Friulian (‘fur’), Galician (‘gl’), German (‘de’), Gilbertese (‘gil’), Greenlandic (‘kl’), Haitian Creole (‘ht’), Hani (‘hni’), Hmong Daw (‘mww’), Hungarian (‘hu’), Indonesian (‘id’), Interlingua (‘ia’), Inuktitut (‘iu’), Irish (‘ga’), Italian (‘it’), Japanese (‘ja’), Javanese (‘jv’), Kabuverdianu (‘kea’), Kachin (‘kac’), Kara-Kalpak (‘kaa’), Kashubian (‘csb’), Khasi (‘kha’), Korean (‘ko’), Kurdish - Latin script (‘ku’), K’iche’ (‘quc’), Luxembourgish (‘lb’), Malay (‘ms’), Manx (‘gv’), Neapolitan (‘nap’), Norwegian (‘no’), Occitan (‘oc’), Polish (‘pl’), Portuguese (‘pt’), Romansh (‘rm’), Scots (‘sco’), Scottish Gaelic (‘gd’), simplified Chinese (‘zh-Hans’), Slovenian (‘sl’), Spanish (‘es’), Swahili (‘sw’), Swedish (‘sv’), Tatar - Latin script (‘tt’), Tetum (‘tet’), traditional Chinese (‘zh-Hant’), Turkish (‘tr’), Upper Sorbian (‘hsb’), Uzbek (‘uz’), Volapük (‘vo’), Walser (‘wae’), Western Frisian (‘fy’), Yucatec Maya (‘yua’), Zhuang (‘za’) and Zulu (‘zu’) are supported (print – seventy-three languages and handwritten – English only). Layout supports auto language identification and multi language documents, so only provide a language code if you would like to force the documented to be processed as that specific language.", + "required": false, + "x-ms-parameter-location": "method", + "type": "string", + "enum": [ + "af", + "ast", + "bi", + "br", + "ca", + "ceb", + "ch", + "co", + "crh", + "cs", + "csb", + "da", + "de", + "en", + "es", + "et", + "eu", + "fi", + "fil", + "fj", + "fr", + "fur", + "fy", + "ga", + "gd", + "gil", + "gl", + "gv", + "hni", + "hsb", + "ht", + "hu", + "ia", + "id", + "it", + "iu", + "ja", + "jv", + "kaa", + "kac", + "kea", + "kha", + "kl", + "ko", + "ku", + "kw", + "lb", + "ms", + "mww", + "nap", + "nl", + "no", + "oc", + "pl", + "pt", + "quc", + "rm", + "sco", + "sl", + "sq", + "sv", + "sw", + "tet", + "tr", + "tt", + "uz", + "vo", + "wae", + "yua", + "za", + "zh-Hans", + "zh-Hant", + "zu" + ], + "x-ms-enum": { + "name": "Language", + "modelAsString": true + } + }, + "ReadingOrder": { + "name": "readingOrder", + "in": "query", + "description": "Reading order algorithm to sort the text lines returned. Supported reading orders include: basic(default), natural.", + "required": false, + "x-ms-parameter-location": "method", + "default": "basic", + "type": "string", + "enum": [ + "basic", + "natural" + ], + "x-ms-enum": { + "name": "ReadingOrder", + "modelAsString": false + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/AnalyzeBatch.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/AnalyzeBatch.json new file mode 100644 index 000000000000..fb60f1c7873d --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/AnalyzeBatch.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "modelId": "{modelId}", + "body": {} + }, + "responses": { + "202": { + "headers": { + "Operation-Location": "{endpoint}/formrecognizer/v2.1-preview.3/custom/models/{modelId}/analyzeResults/{resultId}" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/AnalyzeOperationResult.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/AnalyzeOperationResult.json new file mode 100644 index 000000000000..5b8a65ac0a6b --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/AnalyzeOperationResult.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Ocp-Apim-Subscription-Key": "{API key}", + "modelId": "{modelId}", + "resultId": "{result Id}", + "body": {} + }, + "responses": { + "200": { + "body": { + "status": "running", + "createdDateTime": "2019-05-01T10:53:21Z", + "lastUpdatedDateTime": "2019-05-01T10:53:23Z", + "analyzeResult": { + "version": "v2.1", + "readResults": [], + "pageResults": [], + "documentResults": [], + "errors": [] + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/BusinessCardBatch.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/BusinessCardBatch.json new file mode 100644 index 000000000000..2060d64fd112 --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/BusinessCardBatch.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "body": { + "source": "http://www.example.com/image.jpg" + } + }, + "responses": { + "202": { + "headers": { + "Operation-Location": "{endpoint}/formrecognizer/v2.1-preview.3/prebuilt/businessCard/analyzeResults/{resultId}" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/BusinessCardBatchResult.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/BusinessCardBatchResult.json new file mode 100644 index 000000000000..2cf7aa15db22 --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/BusinessCardBatchResult.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Ocp-Apim-Subscription-Key": "{API key}", + "resultId": "{result Id}", + "body": {} + }, + "responses": { + "200": { + "body": { + "status": "running", + "createdDateTime": "2019-05-01T10:53:21Z", + "lastUpdatedDateTime": "2019-05-01T10:53:23Z", + "analyzeResult": { + "version": "v2.1", + "readResults": [], + "pageResults": [], + "documentResults": [], + "errors": [] + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/ComposeModels.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/ComposeModels.json new file mode 100644 index 000000000000..395c16efd5bf --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/ComposeModels.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "body": {}, + "composeRequest": { + "modelIds": [ + "4afb20d6-3ed0-4cde-ba40-dbd6207268dd", + "6f841356-aa32-42c9-a739-2182c47b79c9" + ] + } + }, + "responses": { + "201": { + "headers": { + "Location": "{endpoint}/formrecognizer/v2.1-preview.3/custom/models/{modelId}" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/CopyModel.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/CopyModel.json new file mode 100644 index 000000000000..1264bf7b56f6 --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/CopyModel.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "modelId": "{modelId}", + "body": {}, + "copyRequest": { + "targetResourceId": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CognitiveServices/accounts/{resourceName}", + "targetResourceRegion": "westus2", + "copyAuthorization": { + "modelId": "{modelId}", + "accessToken": "{accessToken}", + "expirationDateTimeTicks": 86400 + } + } + }, + "responses": { + "202": { + "headers": { + "Operation-Location": "{endpoint}/formrecognizer/v2.1-preview.3/custom/models/{modelId}/copyResults/{resultId}" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/CopyModelAuthorization.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/CopyModelAuthorization.json new file mode 100644 index 000000000000..80d47ae7b3b2 --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/CopyModelAuthorization.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "body": {} + }, + "responses": { + "201": { + "headers": { + "Location": "{endpoint}/formrecognizer/v2.1-preview.3/custom/models/{modelId}" + }, + "body": { + "modelId": "{modelId}", + "accessToken": "{accessToken}", + "expirationDateTimeTicks": 86400 + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/CopyOperationResult.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/CopyOperationResult.json new file mode 100644 index 000000000000..f7b7b1163884 --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/CopyOperationResult.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "modelId": "{modelId}", + "resultId": "{resultId}", + "body": {} + }, + "responses": { + "200": { + "body": { + "status": "succeeded", + "createdDateTime": "2020-01-01T00:00:00Z", + "lastUpdatedDateTime": "2020-01-01T00:01:00Z", + "copyResult": { + "modelId": "{modelId}", + "errors": [] + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/CopyOperationResultWithErrors.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/CopyOperationResultWithErrors.json new file mode 100644 index 000000000000..853dd73e595e --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/CopyOperationResultWithErrors.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "modelId": "{modelId}", + "resultId": "{resultId}", + "body": {} + }, + "responses": { + "200": { + "body": { + "status": "failed", + "createdDateTime": "2020-01-01T00:00:00Z", + "lastUpdatedDateTime": "2020-01-01T00:01:00Z", + "copyResult": { + "modelId": "{modelId}", + "errors": [ + { + "code": "ResourceResolverError", + "message": "{ErrorMessage}" + } + ] + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/DeleteModel.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/DeleteModel.json new file mode 100644 index 000000000000..c945ec953dd4 --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/DeleteModel.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Ocp-Apim-Subscription-Key": "{API key}", + "modelId": "{modelId}", + "body": {} + }, + "responses": { + "204": {} + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/GetModel.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/GetModel.json new file mode 100644 index 000000000000..df1c4b66b252 --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/GetModel.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "modelId": "{modelId}", + "body": {} + }, + "responses": { + "200": { + "body": { + "modelInfo": { + "modelId": "f973e3c1-1148-43bb-bea8-49d0603ab3a8", + "modelName": "my composed model", + "status": "ready", + "createdDateTime": "2019-05-01T10:53:21Z", + "lastUpdatedDateTime": "2019-05-01T10:53:23Z", + "attributes": { + "isComposed": true + } + }, + "keys": { + "clusters": { + "0": [ + "Invoice", + "123112313" + ], + "1": [ + "Please remit payment to:", + "Microsoft" + ] + } + }, + "trainResult": { + "trainingDocuments": [], + "fields": [], + "averageModelAccuracy": 0, + "errors": [] + }, + "composedTrainResults": [ + { + "modelId": "4afb20d6-3ed0-4cde-ba40-dbd6207268dd", + "trainingDocuments": [], + "fields": [], + "averageModelAccuracy": 0, + "errors": [] + }, + { + "modelId": "6f841356-aa32-42c9-a739-2182c47b79c9", + "trainingDocuments": [], + "fields": [], + "averageModelAccuracy": 0, + "errors": [] + } + ] + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/GetModels.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/GetModels.json new file mode 100644 index 000000000000..36ee11465e4f --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/GetModels.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "op": "full", + "body": {} + }, + "responses": { + "200": { + "body": { + "summary": { + "count": 2, + "limit": 5000, + "lastUpdatedDateTime": "2019-05-01T10:53:21Z" + }, + "modelList": [ + { + "modelId": "f973e3c1-1148-43bb-bea8-49d0603ab3a8", + "modelName": "test model 1", + "status": "ready", + "createdDateTime": "2019-05-01T10:53:21Z", + "lastUpdatedDateTime": "2019-05-01T10:53:23Z", + "attributes": { + "isComposed": false + } + }, + { + "modelId": "f973e3c1-0001-43bb-bea8-49d0603ab3a8", + "modelName": "test model 2", + "status": "ready", + "createdDateTime": "2019-05-01T10:53:21Z", + "lastUpdatedDateTime": "2019-05-01T10:53:23Z", + "attributes": { + "isComposed": true + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/GetModelsSummary.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/GetModelsSummary.json new file mode 100644 index 000000000000..507495b78206 --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/GetModelsSummary.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "op": "summary", + "body": {} + }, + "responses": { + "200": { + "body": { + "summary": { + "count": 5, + "limit": 5000, + "lastUpdatedDateTime": "2019-05-01T10:53:21Z" + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/IDDocumentBatch.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/IDDocumentBatch.json new file mode 100644 index 000000000000..bbda08e784f1 --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/IDDocumentBatch.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "body": {} + }, + "responses": { + "202": { + "headers": { + "Operation-Location": "{endpoint}/formrecognizer/v2.1-preview.3/prebuilt/idDocument/analyzeResults/{resultId}" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/IDDocumentBatchResult.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/IDDocumentBatchResult.json new file mode 100644 index 000000000000..2cf7aa15db22 --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/IDDocumentBatchResult.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Ocp-Apim-Subscription-Key": "{API key}", + "resultId": "{result Id}", + "body": {} + }, + "responses": { + "200": { + "body": { + "status": "running", + "createdDateTime": "2019-05-01T10:53:21Z", + "lastUpdatedDateTime": "2019-05-01T10:53:23Z", + "analyzeResult": { + "version": "v2.1", + "readResults": [], + "pageResults": [], + "documentResults": [], + "errors": [] + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/InvoiceBatch.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/InvoiceBatch.json new file mode 100644 index 000000000000..8714c17650d5 --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/InvoiceBatch.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "body": {} + }, + "responses": { + "202": { + "headers": { + "Operation-Location": "{endpoint}/formrecognizer/v2.1-preview.3/prebuilt/invoice/analyzeResults/{resultId}" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/InvoiceBatchResult.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/InvoiceBatchResult.json new file mode 100644 index 000000000000..2cf7aa15db22 --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/InvoiceBatchResult.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Ocp-Apim-Subscription-Key": "{API key}", + "resultId": "{result Id}", + "body": {} + }, + "responses": { + "200": { + "body": { + "status": "running", + "createdDateTime": "2019-05-01T10:53:21Z", + "lastUpdatedDateTime": "2019-05-01T10:53:23Z", + "analyzeResult": { + "version": "v2.1", + "readResults": [], + "pageResults": [], + "documentResults": [], + "errors": [] + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/LayoutBatch.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/LayoutBatch.json new file mode 100644 index 000000000000..a489c3a75e6f --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/LayoutBatch.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "language": "en", + "body": {} + }, + "responses": { + "202": { + "headers": { + "Operation-Location": "{endpoint}/formrecognizer/v2.1-preview.3/layout/analyzeResults/{resultId}" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/LayoutBatchResult.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/LayoutBatchResult.json new file mode 100644 index 000000000000..2a258bfe71bc --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/LayoutBatchResult.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Ocp-Apim-Subscription-Key": "{API key}", + "resultId": "{result Id}", + "body": {} + }, + "responses": { + "200": { + "body": { + "status": "succeeded", + "createdDateTime": "2019-05-01T10:53:21Z", + "lastUpdatedDateTime": "2019-05-01T10:53:23Z", + "analyzeResult": { + "version": "v2.1", + "readResults": [], + "pageResults": [] + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/ReceiptsBatch.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/ReceiptsBatch.json new file mode 100644 index 000000000000..18080f028272 --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/ReceiptsBatch.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "body": {} + }, + "responses": { + "202": { + "headers": { + "Operation-Location": "{endpoint}/formrecognizer/v2.1-preview.3/prebuilt/receipt/analyzeResults/{resultId}" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/ReceiptsBatchResult.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/ReceiptsBatchResult.json new file mode 100644 index 000000000000..2cf7aa15db22 --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/ReceiptsBatchResult.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Ocp-Apim-Subscription-Key": "{API key}", + "resultId": "{result Id}", + "body": {} + }, + "responses": { + "200": { + "body": { + "status": "running", + "createdDateTime": "2019-05-01T10:53:21Z", + "lastUpdatedDateTime": "2019-05-01T10:53:23Z", + "analyzeResult": { + "version": "v2.1", + "readResults": [], + "pageResults": [], + "documentResults": [], + "errors": [] + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/TrainBatch.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/TrainBatch.json new file mode 100644 index 000000000000..d1d689b0bf2a --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/TrainBatch.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "body": {}, + "trainRequest": { + "source": "{azure_blob_endpoint}/input/data1?sasToken" + } + }, + "responses": { + "201": { + "headers": { + "Location": "{endpoint}/formrecognizer/v2.1-preview.3/custom/models/{modelId}" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/TrainBatchWithSubFolders.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/TrainBatchWithSubFolders.json new file mode 100644 index 000000000000..e2b86256f2f8 --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.1-preview.3/examples/TrainBatchWithSubFolders.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "body": {}, + "trainRequest": { + "source": "{azure_blob_endpoint}/input/data1?sasToken", + "sourceFilter": { + "prefix": "", + "includeSubFolders": false + }, + "useLabelFile": false + } + }, + "responses": { + "201": { + "headers": { + "Location": "{endpoint}/formrecognizer/v2.1-preview.3/custom/models/{modelId}" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/readme.go.md b/specification/cognitiveservices/data-plane/FormRecognizer/readme.go.md index a3f839b98e64..fe5b98daf59b 100644 --- a/specification/cognitiveservices/data-plane/FormRecognizer/readme.go.md +++ b/specification/cognitiveservices/data-plane/FormRecognizer/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: formrecognizer clear-output-folder: true ``` diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/readme.md b/specification/cognitiveservices/data-plane/FormRecognizer/readme.md index 8dafb7c0ef9e..d42cba926ba2 100644 --- a/specification/cognitiveservices/data-plane/FormRecognizer/readme.md +++ b/specification/cognitiveservices/data-plane/FormRecognizer/readme.md @@ -4,17 +4,31 @@ Configuration for generating Form Recognizer SDK. -The current release is `release_2_0`. +The current release is `release_2_1`. ``` yaml -tag: release_2_0 +tag: release_2_1 add-credentials: true openapi-type: data-plane ``` # Releases +### Release 2.1 +These settings apply only when `--tag=release_2_1` is specified on the command line. +``` yaml $(tag) == 'release_2_1' +input-file: + - stable/v2.1/FormRecognizer.json +``` + +### Release 2.1-preview.3 +These settings apply only when `--tag=release_2_1_preview.3` is specified on the command line. +``` yaml $(tag) == 'release_2_1_preview.3' +input-file: + - preview/v2.1-preview.3/FormRecognizer.json +``` + ### Release 2.1-preview.2 These settings apply only when `--tag=release_2_1_preview.2` is specified on the command line. ``` yaml $(tag) == 'release_2_1_preview.2' @@ -63,7 +77,6 @@ This is not used by Autorest itself. ``` yaml $(swagger-to-sdk) swagger-to-sdk: - - repo: azure-sdk-for-python - repo: azure-sdk-for-java - repo: azure-sdk-for-go - repo: azure-sdk-for-node diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/readme.python.md b/specification/cognitiveservices/data-plane/FormRecognizer/readme.python.md index f129333bd856..a996460bdfcb 100644 --- a/specification/cognitiveservices/data-plane/FormRecognizer/readme.python.md +++ b/specification/cognitiveservices/data-plane/FormRecognizer/readme.python.md @@ -4,23 +4,38 @@ These settings apply only when `--python` is specified on the command line. Please also specify `--python-sdks-folder=`. Use `--python-mode=update` if you already have a setup.py and just want to update the code itself. -``` yaml $(python) -python-mode: create -python: - license-header: MICROSOFT_MIT_NO_VERSION - add-credentials: true - payload-flattening-threshold: 2 - namespace: azure.cognitiveservices.formrecognizer - package-name: azure-cognitiveservices-formrecognizer - clear-output-folder: true + +``` yaml +license-header: MICROSOFT_MIT_NO_VERSION +add-credentials: true +namespace: azure.ai.formrecognizer +package-name: azure-ai-formrecognizer +credential-scopes: https://cognitiveservices.azure.com/.default +clear-output-folder: true +no-namespace-folders: true +``` + +``` yaml $(tag) == 'release_2_0' +namespace: azure.ai.formrecognizer.v2_0 +output-folder: $(python-sdks-folder)/formrecognizer/azure-ai-formrecognizer/azure/ai/formrecognizer/_generated/v2_0 +``` + +``` yaml $(tag) == 'release_2_1_preview.3' +namespace: azure.ai.formrecognizer.v2_1_preview_3 +output-folder: $(python-sdks-folder)/formrecognizer/azure-ai-formrecognizer/azure/ai/formrecognizer/_generated/v2_1_preview_3 ``` -``` yaml $(python) && $(python-mode) == 'update' -python: - no-namespace-folders: true - output-folder: $(python-sdks-folder)/cognitiveservices/azure-cognitiveservices-formrecognizer/azure/cognitiveservices/formrecognizer + + +```yaml $(multiapi) +batch: + - tag: release_2_0 + - tag: release_2_1_preview.3 + - multiapiscript: true ``` -``` yaml $(python) && $(python-mode) == 'create' -python: - basic-setup-py: true - output-folder: $(python-sdks-folder)/cognitiveservices/azure-cognitiveservices-formrecognizer + +``` yaml $(multiapiscript) +output-folder: $(python-sdks-folder)/formrecognizer/azure-ai-formrecognizer/azure/ai/formrecognizer/_generated +clear-output-folder: false +perform-load: false +default-api: 2.1-preview.3 ``` diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/FormRecognizer.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/FormRecognizer.json new file mode 100644 index 000000000000..5500a2faae85 --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/FormRecognizer.json @@ -0,0 +1,2350 @@ +{ + "swagger": "2.0", + "info": { + "version": "2.1", + "title": "Form Recognizer Client", + "description": "Extracts information from forms and images into structured data." + }, + "securityDefinitions": { + "apim_key": { + "type": "apiKey", + "name": "Ocp-Apim-Subscription-Key", + "in": "header" + } + }, + "security": [ + { + "apim_key": [] + } + ], + "x-ms-parameterized-host": { + "hostTemplate": "{endpoint}/formrecognizer/v2.1", + "useSchemePrefix": false, + "parameters": [ + { + "$ref": "#/parameters/Endpoint" + } + ] + }, + "schemes": [ + "https" + ], + "paths": { + "/custom/models": { + "post": { + "summary": "Train Custom Model", + "description": "Create and train a custom model. The request must include a source parameter that is either an externally accessible Azure storage blob container Uri (preferably a Shared Access Signature Uri) or valid path to a data folder in a locally mounted drive. When local paths are specified, they must follow the Linux/Unix path format and be an absolute path rooted to the input mount configuration setting value e.g., if '{Mounts:Input}' configuration setting value is '/input' then a valid source path would be '/input/contosodataset'. All data to be trained is expected to be under the source folder or sub folders under it. Models are trained using documents that are of the following content type - 'application/pdf', 'image/jpeg', 'image/png', 'image/tiff' or 'image/bmp'. Other type of content is ignored.", + "operationId": "TrainCustomModelAsync", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "trainRequest", + "in": "body", + "description": "Training request parameters.", + "required": true, + "schema": { + "$ref": "#/definitions/TrainRequest" + } + } + ], + "responses": { + "201": { + "description": "Request is queued successfully.", + "headers": { + "Location": { + "type": "string", + "description": "Location and ID of the model being trained. The status of model training is specified in the status property at the model location." + } + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Train custom model": { + "$ref": "./examples/TrainBatch.json" + }, + "Train custom model with subfolder filter options": { + "$ref": "./examples/TrainBatchWithSubFolders.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/custom/models/{modelId}": { + "get": { + "summary": "Get Custom Model", + "description": "Get detailed information about a custom model.", + "operationId": "GetCustomModel", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "modelId", + "in": "path", + "description": "Model identifier.", + "required": true, + "type": "string", + "format": "uuid" + }, + { + "name": "includeKeys", + "in": "query", + "description": "Include list of extracted keys in model information.", + "required": false, + "default": false, + "type": "boolean", + "x-nullable": false + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Model" + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get custom model": { + "$ref": "./examples/GetModel.json" + } + } + }, + "delete": { + "summary": "Delete Custom Model", + "description": "Mark model for deletion. Model artifacts will be permanently removed within a predetermined period.", + "operationId": "DeleteCustomModel", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "modelId", + "in": "path", + "description": "Model identifier.", + "required": true, + "type": "string", + "format": "uuid" + } + ], + "responses": { + "204": { + "description": "Successfully marked model for deletion. Model artifacts will be removed within a predefined time period." + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete custom model": { + "$ref": "./examples/DeleteModel.json" + } + } + } + }, + "/custom/models/{modelId}/analyze": { + "post": { + "summary": "Analyze Form", + "description": "Extract key-value pairs, tables, and semantic values from a given document. The input document must be of one of the supported content types - 'application/pdf', 'image/jpeg', 'image/png', 'image/tiff' or 'image/bmp'. Alternatively, use 'application/json' type to specify the location (Uri or local path) of the document to be analyzed.", + "operationId": "AnalyzeWithCustomModel", + "consumes": [ + "application/pdf", + "application/json", + "image/jpeg", + "image/png", + "image/tiff", + "image/bmp" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "modelId", + "in": "path", + "description": "Model identifier.", + "required": true, + "type": "string", + "format": "uuid" + }, + { + "name": "includeTextDetails", + "in": "query", + "description": "Include text lines and element references in the result.", + "required": false, + "default": false, + "type": "boolean", + "x-nullable": false + }, + { + "$ref": "#/parameters/Pages" + }, + { + "$ref": "#/parameters/FileStream" + } + ], + "responses": { + "202": { + "description": "Request is queued successfully.", + "headers": { + "Operation-Location": { + "type": "string", + "description": "URL containing the resultId used to track the progress and obtain the result of the analyze operation." + } + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Analyze form with custom model": { + "$ref": "./examples/AnalyzeBatch.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/custom/models/{modelId}/analyzeResults/{resultId}": { + "get": { + "summary": "Get Analyze Form Result", + "description": "Obtain current status and the result of the analyze form operation.", + "operationId": "GetAnalyzeFormResult", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "modelId", + "in": "path", + "description": "Model identifier.", + "required": true, + "type": "string", + "format": "uuid" + }, + { + "name": "resultId", + "in": "path", + "description": "Analyze operation result identifier.", + "required": true, + "type": "string", + "format": "uuid" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/AnalyzeOperationResult" + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get analyze form result": { + "$ref": "./examples/AnalyzeOperationResult.json" + } + } + } + }, + "/custom/models/{modelId}/copy": { + "post": { + "summary": "Copy Custom Model", + "description": "Copy custom model stored in this resource (the source) to user specified target Form Recognizer resource.", + "operationId": "CopyCustomModel", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "modelId", + "in": "path", + "description": "Model identifier.", + "required": true, + "type": "string", + "format": "uuid" + }, + { + "name": "copyRequest", + "in": "body", + "description": "Copy request parameters.", + "required": true, + "schema": { + "$ref": "#/definitions/CopyRequest" + } + } + ], + "responses": { + "202": { + "description": "Copy request is queued successfully.", + "headers": { + "Operation-Location": { + "type": "string", + "description": "URL containing the resultId used to track the progress and obtain the result of the copy operation." + } + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Copy custom model": { + "$ref": "./examples/CopyModel.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/custom/models/{modelId}/copyResults/{resultId}": { + "get": { + "summary": "Get Custom Model Copy Result", + "description": "Obtain current status and the result of a custom model copy operation.", + "operationId": "GetCustomModelCopyResult", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "modelId", + "in": "path", + "description": "Model identifier.", + "required": true, + "type": "string", + "format": "uuid" + }, + { + "name": "resultId", + "in": "path", + "description": "Copy operation result identifier.", + "required": true, + "type": "string", + "format": "uuid" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/CopyOperationResult" + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get copy custom model result": { + "$ref": "./examples/CopyOperationResult.json" + }, + "Get copy custom model result with failures": { + "$ref": "./examples/CopyOperationResultWithErrors.json" + } + } + } + }, + "/custom/models/copyAuthorization": { + "post": { + "summary": "Generate Copy Authorization", + "description": "Generate authorization to copy a model into the target Form Recognizer resource.", + "operationId": "GenerateModelCopyAuthorization", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [], + "responses": { + "201": { + "description": "Copy request is authorized successfully.", + "headers": { + "Location": { + "type": "string", + "description": "Location and ID of the model being copied. The status of model copy is specified in the status property at the model location." + } + }, + "schema": { + "$ref": "#/definitions/CopyAuthorizationResult" + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Copy custom model": { + "$ref": "./examples/CopyModelAuthorization.json" + } + } + } + }, + "/custom/models/compose": { + "post": { + "tags": [ + "Form" + ], + "summary": "Compose trained with labels models into one composed model.", + "description": "Compose request would include list of models ids.\r\nIt would validate what all models either trained with labels model or composed model.\r\nIt would validate limit of models put together.", + "operationId": "ComposeCustomModelsAsync", + "consumes": [], + "produces": [ + "application/json", + "text/json" + ], + "parameters": [ + { + "name": "composeRequest", + "in": "body", + "description": "Compose models", + "required": true, + "schema": { + "$ref": "#/definitions/ComposeRequest" + } + } + ], + "responses": { + "201": { + "description": "Request is queued successfully.", + "headers": { + "Location": { + "type": "string", + "description": "Location and ID of the composed model. The status of composed model is specified in the status property at the model location." + } + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Compose custom models": { + "$ref": "./examples/ComposeModels.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/prebuilt/businessCard/analyze": { + "post": { + "summary": "Analyze Business Card", + "description": "Extract field text and semantic values from a given business card document. The input document must be of one of the supported content types - 'application/pdf', 'image/jpeg', 'image/png', 'image/tiff' or 'image/bmp'. Alternatively, use 'application/json' type to specify the location (Uri) of the document to be analyzed.", + "operationId": "AnalyzeBusinessCardAsync", + "consumes": [ + "application/pdf", + "application/json", + "image/jpeg", + "image/png", + "image/tiff", + "image/bmp" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "includeTextDetails", + "in": "query", + "description": "Include text lines and element references in the result.", + "required": false, + "default": false, + "type": "boolean", + "x-nullable": false + }, + { + "$ref": "#/parameters/Locale" + }, + { + "$ref": "#/parameters/Pages" + }, + { + "$ref": "#/parameters/FileStream" + } + ], + "responses": { + "202": { + "description": "Request is queued successfully.", + "headers": { + "Operation-Location": { + "type": "string", + "description": "URL containing the resultId used to track the progress and obtain the result of the analyze operation." + } + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Analyze Business Card": { + "$ref": "./examples/BusinessCardBatch.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/prebuilt/businessCard/analyzeResults/{resultId}": { + "get": { + "summary": "Get Analyze Business Card Result", + "description": "Track the progress and obtain the result of the analyze business card operation.", + "operationId": "GetAnalyzeBusinessCardResult", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "resultId", + "in": "path", + "description": "Analyze operation result identifier.", + "required": true, + "type": "string", + "format": "uuid" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/AnalyzeOperationResult" + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get analyze business card result": { + "$ref": "./examples/BusinessCardBatchResult.json" + } + } + } + }, + "/prebuilt/invoice/analyze": { + "post": { + "summary": "Analyze Invoice Document", + "description": "Extract field text and semantic values from a given invoice document. The input document must be of one of the supported content types - 'application/pdf', 'image/jpeg', 'image/png', 'image/tiff' or 'image/bmp'. Alternatively, use 'application/json' type to specify the location (Uri) of the document to be analyzed.", + "operationId": "AnalyzeInvoiceAsync", + "consumes": [ + "application/pdf", + "application/json", + "image/jpeg", + "image/png", + "image/tiff", + "image/bmp" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "includeTextDetails", + "in": "query", + "description": "Include text lines and element references in the result.", + "required": false, + "default": false, + "type": "boolean", + "x-nullable": false + }, + { + "$ref": "#/parameters/Locale" + }, + { + "$ref": "#/parameters/Pages" + }, + { + "$ref": "#/parameters/FileStream" + } + ], + "responses": { + "202": { + "description": "Request is queued successfully.", + "headers": { + "Operation-Location": { + "type": "string", + "description": "URL containing the resultId used to track the progress and obtain the result of the analyze operation." + } + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Analyze receipt": { + "$ref": "./examples/InvoiceBatch.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/prebuilt/invoice/analyzeResults/{resultId}": { + "get": { + "summary": "Get Analyze Invoice Result", + "description": "Track the progress and obtain the result of the analyze invoice operation.", + "operationId": "GetAnalyzeInvoiceResult", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "resultId", + "in": "path", + "description": "Analyze operation result identifier.", + "required": true, + "type": "string", + "format": "uuid" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/AnalyzeOperationResult" + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get analyze receipt result": { + "$ref": "./examples/InvoiceBatchResult.json" + } + } + } + }, + "/prebuilt/idDocument/analyze": { + "post": { + "summary": "Analyze ID Document", + "description": "Extract field text and semantic values from a given ID document. The input document must be of one of the supported content types - 'application/pdf', 'image/jpeg', 'image/png', 'image/tiff' or 'image/bmp'. Alternatively, use 'application/json' type to specify the location (Uri) of the document to be analyzed.", + "operationId": "AnalyzeIdDocumentAsync", + "consumes": [ + "application/pdf", + "application/json", + "image/jpeg", + "image/png", + "image/tiff", + "image/bmp" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "includeTextDetails", + "in": "query", + "description": "Include text lines and element references in the result.", + "required": false, + "default": false, + "type": "boolean", + "x-nullable": false + }, + { + "$ref": "#/parameters/Pages" + }, + { + "$ref": "#/parameters/FileStream" + } + ], + "responses": { + "202": { + "description": "Request is queued successfully.", + "headers": { + "Operation-Location": { + "type": "string", + "description": "URL containing the resultId used to track the progress and obtain the result of the analyze operation." + } + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Analyze ID": { + "$ref": "./examples/IDDocumentBatch.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/prebuilt/idDocument/analyzeResults/{resultId}": { + "get": { + "summary": "Get Analyze ID Document Result", + "description": "Track the progress and obtain the result of the analyze ID operation.", + "operationId": "GetAnalyzeIdDocumentResult", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "resultId", + "in": "path", + "description": "Analyze operation result identifier.", + "required": true, + "type": "string", + "format": "uuid" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/AnalyzeOperationResult" + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get analyze ID result": { + "$ref": "./examples/IDDocumentBatchResult.json" + } + } + } + }, + "/prebuilt/receipt/analyze": { + "post": { + "summary": "Analyze Receipt", + "description": "Extract field text and semantic values from a given receipt document. The input document must be of one of the supported content types - 'application/pdf', 'image/jpeg', 'image/png', 'image/tiff' or 'image/bmp'. Alternatively, use 'application/json' type to specify the location (Uri) of the document to be analyzed.", + "operationId": "AnalyzeReceiptAsync", + "consumes": [ + "application/pdf", + "application/json", + "image/jpeg", + "image/png", + "image/tiff", + "image/bmp" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "includeTextDetails", + "in": "query", + "description": "Include text lines and element references in the result.", + "required": false, + "default": false, + "type": "boolean", + "x-nullable": false + }, + { + "$ref": "#/parameters/Locale" + }, + { + "$ref": "#/parameters/Pages" + }, + { + "$ref": "#/parameters/FileStream" + } + ], + "responses": { + "202": { + "description": "Request is queued successfully.", + "headers": { + "Operation-Location": { + "type": "string", + "description": "URL containing the resultId used to track the progress and obtain the result of the analyze operation." + } + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Analyze receipt": { + "$ref": "./examples/ReceiptsBatch.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/prebuilt/receipt/analyzeResults/{resultId}": { + "get": { + "summary": "Get Analyze Receipt Result", + "description": "Track the progress and obtain the result of the analyze receipt operation.", + "operationId": "GetAnalyzeReceiptResult", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "resultId", + "in": "path", + "description": "Analyze operation result identifier.", + "required": true, + "type": "string", + "format": "uuid" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/AnalyzeOperationResult" + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get analyze receipt result": { + "$ref": "./examples/ReceiptsBatchResult.json" + } + } + } + }, + "/layout/analyze": { + "post": { + "summary": "Analyze Layout", + "description": "Extract text and layout information from a given document. The input document must be of one of the supported content types - 'application/pdf', 'image/jpeg', 'image/png', 'image/tiff' or 'image/bmp'. Alternatively, use 'application/json' type to specify the location (Uri or local path) of the document to be analyzed.", + "operationId": "AnalyzeLayoutAsync", + "consumes": [ + "application/pdf", + "application/json", + "image/jpeg", + "image/png", + "image/tiff", + "image/bmp" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/FileStream" + }, + { + "$ref": "#/parameters/Pages" + }, + { + "$ref": "#/parameters/Language" + }, + { + "$ref": "#/parameters/ReadingOrder" + } + ], + "responses": { + "202": { + "description": "Request is queued successfully.", + "headers": { + "Operation-Location": { + "type": "string", + "description": "URL containing the resultId used to track the progress and obtain the result of the analyze operation." + } + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Analyze layout": { + "$ref": "./examples/LayoutBatch.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/layout/analyzeResults/{resultId}": { + "get": { + "summary": "Get Analyze Layout Result", + "description": "Track the progress and obtain the result of the analyze layout operation", + "operationId": "GetAnalyzeLayoutResult", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "resultId", + "in": "path", + "description": "Analyze operation result identifier.", + "required": true, + "type": "string", + "format": "uuid" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/AnalyzeOperationResult" + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get analyze layout result": { + "$ref": "./examples/LayoutBatchResult.json" + } + } + } + } + }, + "x-ms-paths": { + "/custom/models?op=full": { + "get": { + "summary": "List Custom Models", + "description": "Get information about all custom models", + "operationId": "ListCustomModels", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "op", + "in": "query", + "description": "Specify whether to return summary or full list of models.", + "required": true, + "type": "string", + "enum": [ + "full" + ] + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Models" + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink", + "itemName": "modelList" + }, + "x-ms-examples": { + "List custom models": { + "$ref": "./examples/GetModels.json" + } + } + } + }, + "/custom/models?op=summary": { + "get": { + "summary": "Get Custom Models", + "description": "Get information about all custom models", + "operationId": "GetCustomModels", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "op", + "in": "query", + "description": "Specify whether to return summary or full list of models.", + "required": true, + "type": "string", + "enum": [ + "summary" + ] + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Models" + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get models summary": { + "$ref": "./examples/GetModelsSummary.json" + } + } + } + } + }, + "definitions": { + "OperationStatus": { + "type": "string", + "description": "Status of the queued operation.", + "enum": [ + "notStarted", + "running", + "succeeded", + "failed" + ], + "x-ms-enum": { + "name": "OperationStatus", + "modelAsString": false + }, + "x-nullable": false + }, + "CopyAuthorizationResult": { + "description": "Request parameter that contains authorization claims for copy operation.", + "required": [ + "modelId", + "accessToken", + "expirationDateTimeTicks" + ], + "type": "object", + "properties": { + "modelId": { + "description": "Model identifier.", + "type": "string" + }, + "accessToken": { + "description": "Token claim used to authorize the request.", + "type": "string" + }, + "expirationDateTimeTicks": { + "description": "The time when the access token expires. The date is represented as the number of seconds from 1970-01-01T0:0:0Z UTC until the expiration time.", + "type": "integer", + "format": "int64" + } + } + }, + "CopyRequest": { + "description": "Request parameter to copy an existing custom model from the source resource to a target resource referenced by the resource ID.", + "required": [ + "targetResourceId", + "targetResourceRegion", + "copyAuthorization" + ], + "type": "object", + "properties": { + "targetResourceId": { + "description": "Azure Resource Id of the target Form Recognizer resource where the model is copied to.", + "maxLength": 1024, + "type": "string", + "pattern": "^/subscriptions/[^/]*/resourceGroups/[^/]*/providers/Microsoft.CognitiveServices/accounts/[^/]*$", + "x-ms-azure-resource": true + }, + "targetResourceRegion": { + "description": "Location of the target Azure resource. A valid Azure region name supported by Cognitive Services.", + "type": "string", + "pattern": "^[a-z0-9]+$", + "minLength": 1, + "maxLength": 24 + }, + "copyAuthorization": { + "description": "Entity that encodes claims to authorize the copy request.", + "$ref": "#/definitions/CopyAuthorizationResult" + } + } + }, + "CopyOperationResult": { + "description": "Status and result of the queued copy operation.", + "type": "object", + "required": [ + "status", + "createdDateTime", + "lastUpdatedDateTime" + ], + "properties": { + "status": { + "description": "Operation status.", + "$ref": "#/definitions/OperationStatus" + }, + "createdDateTime": { + "format": "date-time", + "description": "Date and time (UTC) when the copy operation was submitted.", + "type": "string", + "x-nullable": false + }, + "lastUpdatedDateTime": { + "format": "date-time", + "description": "Date and time (UTC) when the status was last updated.", + "type": "string", + "x-nullable": false + }, + "copyResult": { + "description": "Results of the copy operation.", + "$ref": "#/definitions/CopyResult" + } + } + }, + "CopyResult": { + "description": "Custom model copy result.", + "type": "object", + "required": [ + "modelId" + ], + "properties": { + "modelId": { + "description": "Identifier of the target model.", + "type": "string", + "format": "uuid" + }, + "errors": { + "description": "Errors returned during the copy operation.", + "type": "array", + "items": { + "$ref": "#/definitions/ErrorInformation" + } + } + } + }, + "AnalyzeOperationResult": { + "description": "Status and result of the queued analyze operation.", + "type": "object", + "required": [ + "status", + "createdDateTime", + "lastUpdatedDateTime" + ], + "properties": { + "status": { + "description": "Operation status.", + "$ref": "#/definitions/OperationStatus" + }, + "createdDateTime": { + "format": "date-time", + "description": "Date and time (UTC) when the analyze operation was submitted.", + "type": "string", + "x-nullable": false + }, + "lastUpdatedDateTime": { + "format": "date-time", + "description": "Date and time (UTC) when the status was last updated.", + "type": "string", + "x-nullable": false + }, + "analyzeResult": { + "description": "Results of the analyze operation.", + "$ref": "#/definitions/AnalyzeResult" + } + } + }, + "ModelName": { + "description": "Optional user defined model name (max length: 1024).", + "type": "string", + "x-nullable": false + }, + "TrainRequest": { + "description": "Request parameter to train a new custom model.", + "required": [ + "source" + ], + "type": "object", + "properties": { + "source": { + "description": "Source path containing the training documents.", + "maxLength": 2048, + "minLength": 0, + "type": "string" + }, + "sourceFilter": { + "$ref": "#/definitions/TrainSourceFilter", + "description": "Filter to apply to the documents in the source path for training." + }, + "useLabelFile": { + "description": "Use label file for training a model.", + "type": "boolean", + "default": false + }, + "modelName": { + "$ref": "#/definitions/ModelName" + } + } + }, + "TrainSourceFilter": { + "description": "Filter to apply to the documents in the source path for training.", + "type": "object", + "properties": { + "prefix": { + "description": "A case-sensitive prefix string to filter documents in the source path for training. For example, when using a Azure storage blob Uri, use the prefix to restrict sub folders for training.", + "maxLength": 1024, + "minLength": 0, + "type": "string" + }, + "includeSubFolders": { + "description": "A flag to indicate if sub folders within the set of prefix folders will also need to be included when searching for content to be preprocessed.", + "type": "boolean", + "default": false, + "x-nullable": false + } + } + }, + "TrainResult": { + "description": "Custom model training result.", + "type": "object", + "required": [ + "trainingDocuments" + ], + "properties": { + "trainingDocuments": { + "description": "List of the documents used to train the model and any errors reported in each document.", + "type": "array", + "items": { + "$ref": "#/definitions/TrainingDocumentInfo" + } + }, + "fields": { + "description": "List of fields used to train the model and the train operation error reported by each.", + "type": "array", + "items": { + "$ref": "#/definitions/FormFieldsReport" + } + }, + "averageModelAccuracy": { + "description": "Average accuracy.", + "type": "number", + "x-nullable": false + }, + "modelId": { + "description": "Model identifier.", + "type": "string", + "format": "uuid", + "x-nullable": false + }, + "errors": { + "description": "Errors returned during the training operation.", + "type": "array", + "items": { + "$ref": "#/definitions/ErrorInformation" + } + } + } + }, + "SourcePath": { + "description": "Uri or local path to source data.", + "type": "object", + "properties": { + "source": { + "description": "File source path.", + "maxLength": 2048, + "minLength": 0, + "type": "string" + } + } + }, + "Attributes": { + "description": "Optional model attributes.", + "type": "object", + "properties": { + "isComposed": { + "description": "Is this model composed? (default: false).", + "type": "boolean", + "default": false, + "x-nullable": false + } + } + }, + "ModelInfo": { + "description": "Basic custom model information.", + "type": "object", + "required": [ + "modelId", + "status", + "createdDateTime", + "lastUpdatedDateTime" + ], + "properties": { + "modelId": { + "description": "Model identifier.", + "type": "string", + "format": "uuid", + "x-nullable": false + }, + "status": { + "description": "Status of the model.", + "enum": [ + "creating", + "ready", + "invalid" + ], + "type": "string", + "x-ms-enum": { + "name": "ModelStatus", + "modelAsString": false + }, + "x-nullable": false + }, + "createdDateTime": { + "format": "date-time", + "description": "Date and time (UTC) when the model was created.", + "type": "string", + "x-nullable": false + }, + "lastUpdatedDateTime": { + "format": "date-time", + "description": "Date and time (UTC) when the status was last updated.", + "type": "string", + "x-nullable": false + }, + "modelName": { + "$ref": "#/definitions/ModelName" + }, + "attributes": { + "$ref": "#/definitions/Attributes" + } + } + }, + "Models": { + "description": "Response to the list custom models operation.", + "type": "object", + "properties": { + "summary": { + "description": "Summary of all trained custom models.", + "type": "object", + "required": [ + "count", + "limit", + "lastUpdatedDateTime" + ], + "properties": { + "count": { + "description": "Current count of trained custom models.", + "type": "integer", + "x-nullable": false + }, + "limit": { + "description": "Max number of models that can be trained for this account.", + "type": "integer", + "x-nullable": false + }, + "lastUpdatedDateTime": { + "format": "date-time", + "description": "Date and time (UTC) when the summary was last updated.", + "type": "string", + "x-nullable": false + } + } + }, + "modelList": { + "description": "Collection of trained custom models.", + "type": "array", + "items": { + "$ref": "#/definitions/ModelInfo" + } + }, + "nextLink": { + "description": "Link to the next page of custom models.", + "type": "string" + } + } + }, + "Model": { + "description": "Response to the get custom model operation.", + "type": "object", + "required": [ + "modelInfo" + ], + "properties": { + "modelInfo": { + "$ref": "#/definitions/ModelInfo" + }, + "keys": { + "$ref": "#/definitions/KeysResult" + }, + "trainResult": { + "description": "Training result for custom model.", + "$ref": "#/definitions/TrainResult" + }, + "composedTrainResults": { + "type": "array", + "description": "Training result for composed model.", + "items": { + "$ref": "#/definitions/TrainResult" + } + } + } + }, + "KeysResult": { + "description": "Keys extracted by the custom model.", + "type": "object", + "required": [ + "clusters" + ], + "properties": { + "clusters": { + "description": "Object mapping clusterIds to a list of keys.", + "type": "object", + "additionalProperties": { + "type": "array", + "uniqueItems": true, + "items": { + "type": "string" + } + } + } + } + }, + "TrainingDocumentInfo": { + "description": "Report for a custom model training document.", + "type": "object", + "required": [ + "documentName", + "pages", + "errors", + "status" + ], + "properties": { + "documentName": { + "description": "Training document name.", + "type": "string" + }, + "pages": { + "format": "int32", + "description": "Total number of pages trained.", + "type": "integer", + "x-nullable": false + }, + "errors": { + "description": "List of errors.", + "type": "array", + "items": { + "$ref": "#/definitions/ErrorInformation" + } + }, + "status": { + "description": "Status of the training operation.", + "enum": [ + "succeeded", + "partiallySucceeded", + "failed" + ], + "type": "string", + "x-ms-enum": { + "name": "TrainStatus", + "modelAsString": false + }, + "x-nullable": false + } + } + }, + "FormFieldsReport": { + "description": "Report for a custom model training field.", + "type": "object", + "required": [ + "fieldName", + "accuracy" + ], + "properties": { + "fieldName": { + "description": "Training field name.", + "type": "string" + }, + "accuracy": { + "description": "Estimated extraction accuracy for this field.", + "type": "number", + "x-nullable": false + } + } + }, + "ErrorResponse": { + "type": "object", + "required": [ + "error" + ], + "properties": { + "error": { + "$ref": "#/definitions/ErrorInformation" + } + } + }, + "ErrorInformation": { + "type": "object", + "required": [ + "code", + "message" + ], + "properties": { + "code": { + "type": "string" + }, + "message": { + "type": "string" + } + } + }, + "ComposeRequest": { + "description": "Request contract for compose operation.", + "required": [ + "modelIds" + ], + "type": "object", + "properties": { + "modelIds": { + "description": "List of model ids to compose.", + "uniqueItems": false, + "type": "array", + "items": { + "type": "string", + "format": "uuid" + } + }, + "modelName": { + "$ref": "#/definitions/ModelName" + } + } + }, + "AnalyzeResult": { + "description": "Analyze operation result.", + "type": "object", + "required": [ + "version", + "readResults" + ], + "properties": { + "version": { + "description": "Version of schema used for this result.", + "type": "string" + }, + "readResults": { + "description": "Text extracted from the input.", + "type": "array", + "items": { + "$ref": "#/definitions/ReadResult" + } + }, + "pageResults": { + "description": "Page-level information extracted from the input.", + "type": "array", + "items": { + "$ref": "#/definitions/PageResult" + } + }, + "documentResults": { + "description": "Document-level information extracted from the input.", + "type": "array", + "items": { + "$ref": "#/definitions/DocumentResult" + } + }, + "errors": { + "description": "List of errors reported during the analyze operation.", + "type": "array", + "items": { + "$ref": "#/definitions/ErrorInformation" + } + } + } + }, + "ReadResult": { + "description": "Text extracted from a page in the input document.", + "type": "object", + "required": [ + "page", + "angle", + "width", + "height", + "unit" + ], + "properties": { + "page": { + "description": "The 1-based page number in the input document.", + "type": "integer", + "minimum": 1, + "x-nullable": false + }, + "angle": { + "description": "The general orientation of the text in clockwise direction, measured in degrees between (-180, 180].", + "type": "number", + "minimum": -180, + "maximum": 180, + "exclusiveMinimum": true, + "x-nullable": false + }, + "width": { + "description": "The width of the image/PDF in pixels/inches, respectively.", + "type": "number", + "minimum": 0, + "x-nullable": false + }, + "height": { + "description": "The height of the image/PDF in pixels/inches, respectively.", + "type": "number", + "minimum": 0, + "x-nullable": false + }, + "unit": { + "description": "The unit used by the width, height and boundingBox properties. For images, the unit is \"pixel\". For PDF, the unit is \"inch\".", + "type": "string", + "enum": [ + "pixel", + "inch" + ], + "x-ms-enum": { + "name": "LengthUnit", + "modelAsString": false + }, + "x-nullable": false + }, + "lines": { + "description": "When includeTextDetails is set to true, a list of recognized text lines. The maximum number of lines returned is 300 per page. The lines are sorted top to bottom, left to right, although in certain cases proximity is treated with higher priority. As the sorting order depends on the detected text, it may change across images and OCR version updates. Thus, business logic should be built upon the actual line location instead of order.", + "type": "array", + "items": { + "$ref": "#/definitions/TextLine" + } + }, + "selectionMarks": { + "description": "List of selection marks extracted from the page.", + "type": "array", + "items": { + "$ref": "#/definitions/SelectionMark" + } + } + } + }, + "TextLine": { + "description": "An object representing an extracted text line.", + "type": "object", + "required": [ + "text", + "boundingBox", + "words" + ], + "properties": { + "text": { + "description": "The text content of the line.", + "type": "string" + }, + "boundingBox": { + "description": "Bounding box of an extracted line.", + "$ref": "#/definitions/BoundingBox" + }, + "words": { + "description": "List of words in the text line.", + "type": "array", + "items": { + "$ref": "#/definitions/TextWord" + } + }, + "appearance": { + "description": "Text appearance properties.", + "$ref": "#/definitions/Appearance" + } + } + }, + "TextWord": { + "description": "An object representing a word.", + "type": "object", + "required": [ + "boundingBox", + "text" + ], + "properties": { + "text": { + "description": "The text content of the word.", + "type": "string" + }, + "boundingBox": { + "description": "Bounding box of an extracted word.", + "$ref": "#/definitions/BoundingBox" + }, + "confidence": { + "description": "Confidence value.", + "$ref": "#/definitions/Confidence" + } + } + }, + "BoundingBox": { + "description": "Quadrangle bounding box, with coordinates specified relative to the top-left of the original image. The eight numbers represent the four points, clockwise from the top-left corner relative to the text orientation. For image, the (x, y) coordinates are measured in pixels. For PDF, the (x, y) coordinates are measured in inches.", + "type": "array", + "minItems": 8, + "maxItems": 8, + "items": { + "type": "number", + "x-nullable": false + } + }, + "PageResult": { + "description": "Extracted information from a single page.", + "type": "object", + "required": [ + "page" + ], + "properties": { + "page": { + "description": "Page number.", + "type": "integer", + "format": "int32", + "minimum": 1, + "x-nullable": false + }, + "clusterId": { + "description": "Cluster identifier.", + "type": "integer", + "format": "int32", + "minimum": 0, + "x-nullable": false + }, + "keyValuePairs": { + "description": "List of key-value pairs extracted from the page.", + "type": "array", + "items": { + "$ref": "#/definitions/KeyValuePair" + } + }, + "tables": { + "description": "List of data tables extracted from the page.", + "type": "array", + "items": { + "$ref": "#/definitions/DataTable" + } + } + } + }, + "KeyValuePair": { + "description": "Information about the extracted key-value pair.", + "type": "object", + "required": [ + "key", + "value", + "confidence" + ], + "properties": { + "label": { + "description": "A user defined label for the key/value pair entry.", + "type": "string" + }, + "key": { + "description": "Information about the extracted key in a key-value pair.", + "$ref": "#/definitions/KeyValueElement" + }, + "value": { + "description": "Information about the extracted value in a key-value pair.", + "$ref": "#/definitions/KeyValueElement" + }, + "confidence": { + "description": "Confidence value.", + "$ref": "#/definitions/Confidence" + } + } + }, + "KeyValueElement": { + "description": "Information about the extracted key or value in a key-value pair.", + "type": "object", + "required": [ + "text" + ], + "properties": { + "type": { + "$ref": "#/definitions/KeyValueType" + }, + "text": { + "description": "The text content of the key or value.", + "type": "string" + }, + "boundingBox": { + "description": "Bounding box of the key or value.", + "$ref": "#/definitions/BoundingBox" + }, + "elements": { + "description": "When includeTextDetails is set to true, a list of references to the text elements constituting this key or value.", + "type": "array", + "items": { + "$ref": "#/definitions/ElementReference" + } + } + } + }, + "KeyValueType": { + "type": "string", + "description": "Semantic data type of the key value element.", + "enum": [ + "string", + "selectionMark" + ], + "x-ms-enum": { + "name": "KeyValueType", + "modelAsString": true + }, + "x-nullable": false + }, + "ElementReference": { + "description": "Reference to a line, word or selection mark.", + "type": "string" + }, + "SelectionMark": { + "description": "Information about the extracted selection mark.", + "type": "object", + "required": [ + "boundingBox", + "confidence", + "state" + ], + "properties": { + "boundingBox": { + "description": "Bounding box of the selection mark.", + "$ref": "#/definitions/BoundingBox" + }, + "confidence": { + "description": "Confidence value.", + "$ref": "#/definitions/Confidence" + }, + "state": { + "description": "State of the selection mark.", + "type": "string", + "enum": [ + "selected", + "unselected" + ] + } + } + }, + "DataTable": { + "description": "Information about the extracted table contained in a page.", + "type": "object", + "required": [ + "rows", + "columns", + "cells", + "boundingBox" + ], + "properties": { + "rows": { + "description": "Number of rows.", + "type": "integer", + "minimum": 1, + "x-nullable": false + }, + "columns": { + "description": "Number of columns.", + "type": "integer", + "minimum": 1, + "x-nullable": false + }, + "cells": { + "description": "List of cells contained in the table.", + "type": "array", + "items": { + "$ref": "#/definitions/DataTableCell" + } + }, + "boundingBox": { + "description": "Bounding box of the table.", + "$ref": "#/definitions/BoundingBox" + } + } + }, + "DataTableCell": { + "description": "Information about the extracted cell in a table.", + "type": "object", + "required": [ + "rowIndex", + "columnIndex", + "text", + "boundingBox", + "confidence" + ], + "properties": { + "rowIndex": { + "description": "Row index of the cell.", + "type": "integer", + "minimum": 0, + "x-nullable": false + }, + "columnIndex": { + "description": "Column index of the cell.", + "type": "integer", + "minimum": 0, + "x-nullable": false + }, + "rowSpan": { + "description": "Number of rows spanned by this cell.", + "type": "integer", + "minimum": 1, + "default": 1, + "x-nullable": false + }, + "columnSpan": { + "description": "Number of columns spanned by this cell.", + "type": "integer", + "minimum": 1, + "default": 1, + "x-nullable": false + }, + "text": { + "description": "Text content of the cell.", + "type": "string" + }, + "boundingBox": { + "description": "Bounding box of the cell.", + "$ref": "#/definitions/BoundingBox" + }, + "confidence": { + "description": "Confidence value.", + "$ref": "#/definitions/Confidence" + }, + "elements": { + "description": "When includeTextDetails is set to true, a list of references to the text elements constituting this table cell.", + "type": "array", + "items": { + "$ref": "#/definitions/ElementReference" + } + }, + "isHeader": { + "description": "Is the current cell a header cell?", + "type": "boolean", + "default": false, + "x-nullable": false + }, + "isFooter": { + "description": "Is the current cell a footer cell?", + "type": "boolean", + "default": false, + "x-nullable": false + } + } + }, + "DocumentResult": { + "description": "A set of extracted fields corresponding to the input document.", + "type": "object", + "required": [ + "docType", + "pageRange", + "fields" + ], + "properties": { + "docType": { + "description": "Document type.", + "type": "string" + }, + "modelId": { + "description": "Model identifier.", + "type": "string", + "format": "uuid", + "x-nullable": false + }, + "pageRange": { + "description": "First and last page number where the document is found.", + "type": "array", + "minItems": 2, + "maxItems": 2, + "items": { + "type": "integer", + "minimum": 1, + "x-nullable": false + } + }, + "docTypeConfidence": { + "description": "Predicted document type confidence.", + "$ref": "#/definitions/Confidence" + }, + "fields": { + "description": "Dictionary of named field values.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/FieldValue" + } + } + } + }, + "FieldValue": { + "description": "Recognized field value.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "description": "Type of field value.", + "$ref": "#/definitions/FieldValueType" + }, + "valueString": { + "description": "String value.", + "type": "string" + }, + "valueDate": { + "description": "Date value.", + "format": "date", + "type": "string", + "x-nullable": false + }, + "valueTime": { + "description": "Time value.", + "format": "time", + "type": "string", + "x-nullable": false + }, + "valuePhoneNumber": { + "description": "Phone number value.", + "type": "string" + }, + "valueNumber": { + "description": "Floating point value.", + "type": "number", + "x-nullable": false + }, + "valueInteger": { + "description": "Integer value.", + "type": "integer", + "x-nullable": false + }, + "valueArray": { + "description": "Array of field values.", + "type": "array", + "items": { + "$ref": "#/definitions/FieldValue" + } + }, + "valueObject": { + "description": "Dictionary of named field values.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/FieldValue" + } + }, + "valueSelectionMark": { + "description": "Selection mark value.", + "type": "string", + "enum": [ + "selected", + "unselected" + ], + "x-nullable": false + }, + "valueCountryRegion": { + "description": "3-letter country code (ISO 3166-1 alpha-3).", + "type": "string", + "x-nullable": false + }, + "text": { + "description": "Text content of the extracted field.", + "type": "string" + }, + "boundingBox": { + "description": "Bounding box of the field value, if appropriate.", + "$ref": "#/definitions/BoundingBox" + }, + "confidence": { + "description": "Confidence score.", + "$ref": "#/definitions/Confidence" + }, + "elements": { + "description": "When includeTextDetails is set to true, a list of references to the text elements constituting this field.", + "type": "array", + "items": { + "$ref": "#/definitions/ElementReference" + } + }, + "page": { + "description": "The 1-based page number in the input document.", + "type": "integer", + "minimum": 1, + "x-nullable": false + } + } + }, + "FieldValueType": { + "type": "string", + "description": "Semantic data type of the field value.", + "enum": [ + "string", + "date", + "time", + "phoneNumber", + "number", + "integer", + "array", + "object", + "selectionMark", + "countryRegion" + ], + "x-ms-enum": { + "name": "FieldValueType", + "modelAsString": false + }, + "x-nullable": false + }, + "Confidence": { + "description": "Confidence value.", + "type": "number", + "minimum": 0, + "maximum": 1, + "x-nullable": false + }, + "Appearance": { + "description": "An object representing the appearance of the text line.", + "type": "object", + "required": [ + "style" + ], + "properties": { + "style": { + "description": "An object representing the style of the text line.", + "type": "object", + "$ref": "#/definitions/Style" + } + } + }, + "Style": { + "description": "An object representing the style of the text line.", + "type": "object", + "required": [ + "name", + "confidence" + ], + "properties": { + "name": { + "description": "The text line style name, including handwriting and other.", + "type": "string", + "x-ms-enum": { + "name": "TextStyle", + "modelAsString": true + }, + "enum": [ + "other", + "handwriting" + ] + }, + "confidence": { + "description": "The confidence of text line style.", + "type": "number", + "format": "float" + } + } + } + }, + "parameters": { + "Endpoint": { + "name": "endpoint", + "description": "Supported Cognitive Services endpoints (protocol and hostname, for example: https://westus2.api.cognitive.microsoft.com).", + "x-ms-parameter-location": "client", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true + }, + "FileStream": { + "name": "fileStream", + "description": ".json, .pdf, .jpg, .png, .tiff or .bmp type file stream.", + "x-ms-parameter-location": "method", + "in": "body", + "schema": { + "$ref": "#/definitions/SourcePath" + } + }, + "Pages": { + "name": "pages", + "in": "query", + "description": "Custom page numbers for multi-page documents(PDF/TIFF), input the number of the pages you want to get OCR result. For a range of pages, use a hyphen. Separate each page or range with a comma.", + "required": false, + "x-ms-parameter-location": "method", + "type": "array", + "items": { + "type": "string", + "pattern": "(^[0-9]+-[0-9]+$)|(^[0-9]+$)" + } + }, + "Locale": { + "name": "locale", + "in": "query", + "description": "Locale of the input document. Supported locales include: en-AU, en-CA, en-GB, en-IN, en-US(default).", + "required": false, + "x-ms-parameter-location": "method", + "type": "string", + "enum": [ + "en-AU", + "en-CA", + "en-GB", + "en-IN", + "en-US" + ], + "x-ms-enum": { + "name": "Locale", + "modelAsString": true + } + }, + "Language": { + "name": "language", + "in": "query", + "description": "Currently, only Afrikaans (‘af’), Albanian (‘sq’), Asturian (‘ast’), Basque (‘eu’), Bislama (‘bi’), Breton (‘br’), Catalan (‘ca’), Cebuano (‘ceb’), Chamorro (‘ch’), Cornish (‘kw’), Corsican (‘co’), Crimean Tatar - Latin script(‘crh’), Czech (‘cs’), Danish (‘da’), Dutch (‘nl’), English ('en'), Estonian (‘et’), Fijian (‘fj’), Filipino (‘fil’), Finnish (‘fi’), French (‘fr’), Friulian (‘fur’), Galician (‘gl’), German (‘de’), Gilbertese (‘gil’), Greenlandic (‘kl’), Haitian Creole (‘ht’), Hani (‘hni’), Hmong Daw (‘mww’), Hungarian (‘hu’), Indonesian (‘id’), Interlingua (‘ia’), Inuktitut (‘iu’), Irish (‘ga’), Italian (‘it’), Japanese (‘ja’), Javanese (‘jv’), Kabuverdianu (‘kea’), Kachin (‘kac’), Kara-Kalpak (‘kaa’), Kashubian (‘csb’), Khasi (‘kha’), Korean (‘ko’), Kurdish - Latin script (‘ku’), K’iche’ (‘quc’), Luxembourgish (‘lb’), Malay (‘ms’), Manx (‘gv’), Neapolitan (‘nap’), Norwegian (‘no’), Occitan (‘oc’), Polish (‘pl’), Portuguese (‘pt’), Romansh (‘rm’), Scots (‘sco’), Scottish Gaelic (‘gd’), simplified Chinese (‘zh-Hans’), Slovenian (‘sl’), Spanish (‘es’), Swahili (‘sw’), Swedish (‘sv’), Tatar - Latin script (‘tt’), Tetum (‘tet’), traditional Chinese (‘zh-Hant’), Turkish (‘tr’), Upper Sorbian (‘hsb’), Uzbek (‘uz’), Volapük (‘vo’), Walser (‘wae’), Western Frisian (‘fy’), Yucatec Maya (‘yua’), Zhuang (‘za’) and Zulu (‘zu’) are supported (print – seventy-three languages and handwritten – English only). Layout supports auto language identification and multi language documents, so only provide a language code if you would like to force the documented to be processed as that specific language.", + "required": false, + "x-ms-parameter-location": "method", + "type": "string", + "enum": [ + "af", + "ast", + "bi", + "br", + "ca", + "ceb", + "ch", + "co", + "crh", + "cs", + "csb", + "da", + "de", + "en", + "es", + "et", + "eu", + "fi", + "fil", + "fj", + "fr", + "fur", + "fy", + "ga", + "gd", + "gil", + "gl", + "gv", + "hni", + "hsb", + "ht", + "hu", + "ia", + "id", + "it", + "iu", + "ja", + "jv", + "kaa", + "kac", + "kea", + "kha", + "kl", + "ko", + "ku", + "kw", + "lb", + "ms", + "mww", + "nap", + "nl", + "no", + "oc", + "pl", + "pt", + "quc", + "rm", + "sco", + "sl", + "sq", + "sv", + "sw", + "tet", + "tr", + "tt", + "uz", + "vo", + "wae", + "yua", + "za", + "zh-Hans", + "zh-Hant", + "zu" + ], + "x-ms-enum": { + "name": "Language", + "modelAsString": true + } + }, + "ReadingOrder": { + "name": "readingOrder", + "in": "query", + "description": "Reading order algorithm to sort the text lines returned. Supported reading orders include: basic(default), natural.", + "required": false, + "x-ms-parameter-location": "method", + "default": "basic", + "type": "string", + "enum": [ + "basic", + "natural" + ], + "x-ms-enum": { + "name": "ReadingOrder", + "modelAsString": false + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/AnalyzeBatch.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/AnalyzeBatch.json new file mode 100644 index 000000000000..760d436472fe --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/AnalyzeBatch.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "modelId": "{modelId}", + "body": {} + }, + "responses": { + "202": { + "headers": { + "Operation-Location": "{endpoint}/formrecognizer/v2.1/custom/models/{modelId}/analyzeResults/{resultId}" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/AnalyzeOperationResult.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/AnalyzeOperationResult.json new file mode 100644 index 000000000000..5b8a65ac0a6b --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/AnalyzeOperationResult.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Ocp-Apim-Subscription-Key": "{API key}", + "modelId": "{modelId}", + "resultId": "{result Id}", + "body": {} + }, + "responses": { + "200": { + "body": { + "status": "running", + "createdDateTime": "2019-05-01T10:53:21Z", + "lastUpdatedDateTime": "2019-05-01T10:53:23Z", + "analyzeResult": { + "version": "v2.1", + "readResults": [], + "pageResults": [], + "documentResults": [], + "errors": [] + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/BusinessCardBatch.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/BusinessCardBatch.json new file mode 100644 index 000000000000..7759a2ca1103 --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/BusinessCardBatch.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "body": { + "source": "http://www.example.com/image.jpg" + } + }, + "responses": { + "202": { + "headers": { + "Operation-Location": "{endpoint}/formrecognizer/v2.1/prebuilt/businessCard/analyzeResults/{resultId}" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/BusinessCardBatchResult.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/BusinessCardBatchResult.json new file mode 100644 index 000000000000..2cf7aa15db22 --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/BusinessCardBatchResult.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Ocp-Apim-Subscription-Key": "{API key}", + "resultId": "{result Id}", + "body": {} + }, + "responses": { + "200": { + "body": { + "status": "running", + "createdDateTime": "2019-05-01T10:53:21Z", + "lastUpdatedDateTime": "2019-05-01T10:53:23Z", + "analyzeResult": { + "version": "v2.1", + "readResults": [], + "pageResults": [], + "documentResults": [], + "errors": [] + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/ComposeModels.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/ComposeModels.json new file mode 100644 index 000000000000..2a971b054911 --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/ComposeModels.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "body": {}, + "composeRequest": { + "modelIds": [ + "4afb20d6-3ed0-4cde-ba40-dbd6207268dd", + "6f841356-aa32-42c9-a739-2182c47b79c9" + ] + } + }, + "responses": { + "201": { + "headers": { + "Location": "{endpoint}/formrecognizer/v2.1/custom/models/{modelId}" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/CopyModel.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/CopyModel.json new file mode 100644 index 000000000000..b75960514bd4 --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/CopyModel.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "modelId": "{modelId}", + "body": {}, + "copyRequest": { + "targetResourceId": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CognitiveServices/accounts/{resourceName}", + "targetResourceRegion": "westus2", + "copyAuthorization": { + "modelId": "{modelId}", + "accessToken": "{accessToken}", + "expirationDateTimeTicks": 86400 + } + } + }, + "responses": { + "202": { + "headers": { + "Operation-Location": "{endpoint}/formrecognizer/v2.1/custom/models/{modelId}/copyResults/{resultId}" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/CopyModelAuthorization.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/CopyModelAuthorization.json new file mode 100644 index 000000000000..8371ba8f28ea --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/CopyModelAuthorization.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "body": {} + }, + "responses": { + "201": { + "headers": { + "Location": "{endpoint}/formrecognizer/v2.1/custom/models/{modelId}" + }, + "body": { + "modelId": "{modelId}", + "accessToken": "{accessToken}", + "expirationDateTimeTicks": 86400 + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/CopyOperationResult.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/CopyOperationResult.json new file mode 100644 index 000000000000..f7b7b1163884 --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/CopyOperationResult.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "modelId": "{modelId}", + "resultId": "{resultId}", + "body": {} + }, + "responses": { + "200": { + "body": { + "status": "succeeded", + "createdDateTime": "2020-01-01T00:00:00Z", + "lastUpdatedDateTime": "2020-01-01T00:01:00Z", + "copyResult": { + "modelId": "{modelId}", + "errors": [] + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/CopyOperationResultWithErrors.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/CopyOperationResultWithErrors.json new file mode 100644 index 000000000000..853dd73e595e --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/CopyOperationResultWithErrors.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "modelId": "{modelId}", + "resultId": "{resultId}", + "body": {} + }, + "responses": { + "200": { + "body": { + "status": "failed", + "createdDateTime": "2020-01-01T00:00:00Z", + "lastUpdatedDateTime": "2020-01-01T00:01:00Z", + "copyResult": { + "modelId": "{modelId}", + "errors": [ + { + "code": "ResourceResolverError", + "message": "{ErrorMessage}" + } + ] + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/DeleteModel.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/DeleteModel.json new file mode 100644 index 000000000000..c945ec953dd4 --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/DeleteModel.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Ocp-Apim-Subscription-Key": "{API key}", + "modelId": "{modelId}", + "body": {} + }, + "responses": { + "204": {} + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/GetModel.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/GetModel.json new file mode 100644 index 000000000000..df1c4b66b252 --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/GetModel.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "modelId": "{modelId}", + "body": {} + }, + "responses": { + "200": { + "body": { + "modelInfo": { + "modelId": "f973e3c1-1148-43bb-bea8-49d0603ab3a8", + "modelName": "my composed model", + "status": "ready", + "createdDateTime": "2019-05-01T10:53:21Z", + "lastUpdatedDateTime": "2019-05-01T10:53:23Z", + "attributes": { + "isComposed": true + } + }, + "keys": { + "clusters": { + "0": [ + "Invoice", + "123112313" + ], + "1": [ + "Please remit payment to:", + "Microsoft" + ] + } + }, + "trainResult": { + "trainingDocuments": [], + "fields": [], + "averageModelAccuracy": 0, + "errors": [] + }, + "composedTrainResults": [ + { + "modelId": "4afb20d6-3ed0-4cde-ba40-dbd6207268dd", + "trainingDocuments": [], + "fields": [], + "averageModelAccuracy": 0, + "errors": [] + }, + { + "modelId": "6f841356-aa32-42c9-a739-2182c47b79c9", + "trainingDocuments": [], + "fields": [], + "averageModelAccuracy": 0, + "errors": [] + } + ] + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/GetModels.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/GetModels.json new file mode 100644 index 000000000000..36ee11465e4f --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/GetModels.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "op": "full", + "body": {} + }, + "responses": { + "200": { + "body": { + "summary": { + "count": 2, + "limit": 5000, + "lastUpdatedDateTime": "2019-05-01T10:53:21Z" + }, + "modelList": [ + { + "modelId": "f973e3c1-1148-43bb-bea8-49d0603ab3a8", + "modelName": "test model 1", + "status": "ready", + "createdDateTime": "2019-05-01T10:53:21Z", + "lastUpdatedDateTime": "2019-05-01T10:53:23Z", + "attributes": { + "isComposed": false + } + }, + { + "modelId": "f973e3c1-0001-43bb-bea8-49d0603ab3a8", + "modelName": "test model 2", + "status": "ready", + "createdDateTime": "2019-05-01T10:53:21Z", + "lastUpdatedDateTime": "2019-05-01T10:53:23Z", + "attributes": { + "isComposed": true + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/GetModelsSummary.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/GetModelsSummary.json new file mode 100644 index 000000000000..507495b78206 --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/GetModelsSummary.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "op": "summary", + "body": {} + }, + "responses": { + "200": { + "body": { + "summary": { + "count": 5, + "limit": 5000, + "lastUpdatedDateTime": "2019-05-01T10:53:21Z" + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/IDDocumentBatch.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/IDDocumentBatch.json new file mode 100644 index 000000000000..c5060291b85f --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/IDDocumentBatch.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "body": {} + }, + "responses": { + "202": { + "headers": { + "Operation-Location": "{endpoint}/formrecognizer/v2.1/prebuilt/idDocument/analyzeResults/{resultId}" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/IDDocumentBatchResult.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/IDDocumentBatchResult.json new file mode 100644 index 000000000000..2cf7aa15db22 --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/IDDocumentBatchResult.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Ocp-Apim-Subscription-Key": "{API key}", + "resultId": "{result Id}", + "body": {} + }, + "responses": { + "200": { + "body": { + "status": "running", + "createdDateTime": "2019-05-01T10:53:21Z", + "lastUpdatedDateTime": "2019-05-01T10:53:23Z", + "analyzeResult": { + "version": "v2.1", + "readResults": [], + "pageResults": [], + "documentResults": [], + "errors": [] + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/InvoiceBatch.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/InvoiceBatch.json new file mode 100644 index 000000000000..21661d716ddf --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/InvoiceBatch.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "body": {} + }, + "responses": { + "202": { + "headers": { + "Operation-Location": "{endpoint}/formrecognizer/v2.1/prebuilt/invoice/analyzeResults/{resultId}" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/InvoiceBatchResult.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/InvoiceBatchResult.json new file mode 100644 index 000000000000..2cf7aa15db22 --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/InvoiceBatchResult.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Ocp-Apim-Subscription-Key": "{API key}", + "resultId": "{result Id}", + "body": {} + }, + "responses": { + "200": { + "body": { + "status": "running", + "createdDateTime": "2019-05-01T10:53:21Z", + "lastUpdatedDateTime": "2019-05-01T10:53:23Z", + "analyzeResult": { + "version": "v2.1", + "readResults": [], + "pageResults": [], + "documentResults": [], + "errors": [] + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/LayoutBatch.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/LayoutBatch.json new file mode 100644 index 000000000000..01f3471041e3 --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/LayoutBatch.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "language": "en", + "body": {} + }, + "responses": { + "202": { + "headers": { + "Operation-Location": "{endpoint}/formrecognizer/v2.1/layout/analyzeResults/{resultId}" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/LayoutBatchResult.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/LayoutBatchResult.json new file mode 100644 index 000000000000..2a258bfe71bc --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/LayoutBatchResult.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Ocp-Apim-Subscription-Key": "{API key}", + "resultId": "{result Id}", + "body": {} + }, + "responses": { + "200": { + "body": { + "status": "succeeded", + "createdDateTime": "2019-05-01T10:53:21Z", + "lastUpdatedDateTime": "2019-05-01T10:53:23Z", + "analyzeResult": { + "version": "v2.1", + "readResults": [], + "pageResults": [] + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/ReceiptsBatch.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/ReceiptsBatch.json new file mode 100644 index 000000000000..a368b680bebe --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/ReceiptsBatch.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "body": {} + }, + "responses": { + "202": { + "headers": { + "Operation-Location": "{endpoint}/formrecognizer/v2.1/prebuilt/receipt/analyzeResults/{resultId}" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/ReceiptsBatchResult.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/ReceiptsBatchResult.json new file mode 100644 index 000000000000..2cf7aa15db22 --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/ReceiptsBatchResult.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Ocp-Apim-Subscription-Key": "{API key}", + "resultId": "{result Id}", + "body": {} + }, + "responses": { + "200": { + "body": { + "status": "running", + "createdDateTime": "2019-05-01T10:53:21Z", + "lastUpdatedDateTime": "2019-05-01T10:53:23Z", + "analyzeResult": { + "version": "v2.1", + "readResults": [], + "pageResults": [], + "documentResults": [], + "errors": [] + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/TrainBatch.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/TrainBatch.json new file mode 100644 index 000000000000..176d0f1ff9d7 --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/TrainBatch.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "body": {}, + "trainRequest": { + "source": "{azure_blob_endpoint}/input/data1?sasToken" + } + }, + "responses": { + "201": { + "headers": { + "Location": "{endpoint}/formrecognizer/v2.1/custom/models/{modelId}" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/TrainBatchWithSubFolders.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/TrainBatchWithSubFolders.json new file mode 100644 index 000000000000..0b8c310aca87 --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/v2.1/examples/TrainBatchWithSubFolders.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "body": {}, + "trainRequest": { + "source": "{azure_blob_endpoint}/input/data1?sasToken", + "sourceFilter": { + "prefix": "", + "includeSubFolders": false + }, + "useLabelFile": false + } + }, + "responses": { + "201": { + "headers": { + "Location": "{endpoint}/formrecognizer/v2.1/custom/models/{modelId}" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/ImageSearch/readme.go.md b/specification/cognitiveservices/data-plane/ImageSearch/readme.go.md index f05151358d5a..9d4b4bd7737f 100644 --- a/specification/cognitiveservices/data-plane/ImageSearch/readme.go.md +++ b/specification/cognitiveservices/data-plane/ImageSearch/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: imagesearch clear-output-folder: true ``` diff --git a/specification/cognitiveservices/data-plane/InkRecognizer/preview/v1.0/InkRecognizer.json b/specification/cognitiveservices/data-plane/InkRecognizer/preview/v1.0/InkRecognizer.json deleted file mode 100644 index 0c35b5809b15..000000000000 --- a/specification/cognitiveservices/data-plane/InkRecognizer/preview/v1.0/InkRecognizer.json +++ /dev/null @@ -1,688 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "version": "1.0", - "title": "Ink Recognizer Client", - "description": "The service is used to perform ink layout and recognition of written words and shapes. Ink strokes passed to the service are recognized and organized into recognition results in the response" - }, - "schemes": [ - "https" - ], - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "security": [ - { - "apim_key": [] - } - ], - "x-ms-parameterized-host": { - "hostTemplate": "{Endpoint}/inkrecognizer/v1.0-preview", - "parameters": [ - { - "$ref": "#/parameters/Endpoint" - } - ] - }, - "securityDefinitions": { - "apim_key": { - "type": "apiKey", - "name": "Ocp-Apim-Subscription-Key", - "in": "header" - } - }, - "paths": { - "/recognize": { - "put": { - "tags": [ - "InkRecognizer" - ], - "operationId": "InkRecognizer_Recognize", - "x-ms-examples": { - "Identify a word written in ink": { - "$ref": "./examples/InkWordRecognition.json" - } - }, - "description": "Ink Recognition operation is used to perform ink layout and recognition of written words and shapes. It allows passing the ink strokes to the service to get the recognition results in the response.", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "description": "The collection of stroke objects to send for analysis", - "schema": { - "$ref": "#/definitions/analysisRequest" - } - }, - { - "name": "x-ms-client-request-id", - "in": "header", - "description": "The request id used to uniquely identify each request during troubleshooting. This is an optional parameter useful for correlating logs and other artifacts.", - "required": false, - "type": "string", - "x-ms-client-request-id": true - } - ], - "responses": { - "200": { - "description": "The results were processed successfully.", - "schema": { - "$ref": "#/definitions/analysisResponse" - } - }, - "default": { - "description": "unexpected error", - "schema": { - "$ref": "#/definitions/errorModel" - } - } - } - } - } - }, - "definitions": { - "drawingAttributesPattern": { - "type": "object", - "description": "The properties to use when rendering ink", - "properties": { - "width": { - "type": "number", - "description": "The width of the stylus used to draw the stroke" - }, - "color": { - "type": "object", - "description": "This shows the components of the color in rgba format", - "properties": { - "r": { - "type": "number", - "description": "The red component of the color" - }, - "g": { - "type": "number", - "description": "The green component of the color" - }, - "b": { - "type": "number", - "description": "The blue component of the color" - }, - "a": { - "type": "number", - "description": "The alpha component of the color" - } - } - }, - "height": { - "type": "number", - "description": "The height of the stylus used to draw the stroke" - }, - "fitToCurve": { - "type": "boolean", - "description": " This indicates whether Bezier smoothing is used to render the stroke" - }, - "rasterOp": { - "type": "string", - "enum": [ - "noOperation", - "copyPen", - "maskPen" - ], - "x-ms-enum": { - "name": "rasterOp", - "modelAsString": true - } - }, - "ignorePressure": { - "type": "boolean", - "description": " This indicates whether the thickness of a rendered Stroke changes according the amount of pressure applied." - }, - "tip": { - "type": "string", - "description": "This specifies the tip to be used to draw a stroke", - "enum": [ - "ellipse", - "rectangle" - ], - "x-ms-enum": { - "name": "tip", - "modelAsString": true - } - } - } - }, - "pointDetailsPattern": { - "type": "object", - "description": "This holds all the properties of one point", - "properties": { - "x": { - "type": "number", - "description": "This represents the x coordinate of the point" - }, - "y": { - "type": "number", - "description": "This represents the y coordinate of the point" - } - }, - "required": [ - "x", - "y" - ] - }, - "shapePattern": { - "type": "string", - "description": "The category should be used to determines the field to read the recognition result. Recognized Object represents the shape that was recognized for the node with category as inkDrawing. For handwriting related nodes, recognizedText contains the actual recognition result.", - "enum": [ - "drawing", - "square", - "rectangle", - "circle", - "ellipse", - "triangle", - "isoscelesTriangle", - "equilateralTriangle", - "rightTriangle", - "quadrilateral", - "diamond", - "trapezoid", - "parallelogram", - "pentagon", - "hexagon", - "blockArrow", - "heart", - "starSimple", - "starCrossed", - "cloud", - "line", - "curve", - "polyLine" - ], - "x-ms-enum": { - "name": "shape", - "modelAsString": true - } - }, - "classPattern": { - "description": "The class represents the type of the recognition unit. A recognition unit can be a leaf node or a container node. Container nodes typically have leaf nodes as children.", - "type": "string", - "enum": [ - "container", - "leaf" - ] - }, - "categoryPattern": { - "type": "string", - "description": "The category of a recognition unit represents the type of content for that unit.", - "enum": [ - "root", - "writingRegion", - "paragraph", - "line", - "inkBullet", - "inkDrawing", - "inkWord", - "unknown" - ], - "x-ms-enum": { - "name": "category", - "modelAsString": true - } - }, - "containerCategoryPattern": { - "type": "string", - "description": "The category of recognition units that represent types that have children recognition units.", - "enum": [ - "root", - "writingRegion", - "paragraph", - "line" - ], - "x-ms-enum": { - "name": "container", - "modelAsString": true - } - }, - "leafCategoryPattern": { - "type": "string", - "description": "The category of recognition units that represent types that don't have children recognition units.", - "enum": [ - "inkDrawing", - "inkBullet", - "inkWord", - "unknown" - ], - "x-ms-enum": { - "name": "leaf", - "modelAsString": true - } - }, - "alternatePattern": { - "type": "array", - "description": "The list of alternates for the core recognition result. In case of handwriting related recognition units, this list includes other words that are close possibilities to the results provided as 'recognizedText'.", - "items": { - "properties": { - "category": { - "$ref": "#/definitions/leafCategoryPattern" - }, - "points": { - "description": "Array of point objects that represent points that are relevant to the type of recognition unit. For example, for leaf node of inkDrawing category that represents a triangle, points would include the x,y coordinates of the vertices of the recognized triangle. The points represent the coordinates of points used to create the perfectly drawn shape that is closest to the original input. They may not exactly match.", - "type": "array", - "items": { - "$ref": "#/definitions/pointDetailsPattern" - } - }, - "rotationAngle": { - "description": "The angular orientation of an object relative to the horizontal axis", - "type": "number" - }, - "confidence": { - "type": "number", - "description": "A number between 0 and 1 which indicates the confidence level in the result" - }, - "recognizedString": { - "type": "string", - "description": "The recognized string from an inkWord or the name of a recognized shape in an inkDrawing object" - } - }, - "required": [ - "category", - "recognizedString" - ], - "type": "object" - } - }, - "inkPointValueAttribute": { - "type": "object", - "description": "A container for the attributes of a value contained in the ink point object.", - "properties": { - "name": { - "type": "string", - "description": "The name of the point attribute." - }, - "logicalMinimum": { - "type": "number", - "description": "The minimum value for the attribute" - }, - "logicalMaximum": { - "type": "number", - "description": "The maximum value for the attribute" - } - } - }, - "inkPoint": { - "type": "object", - "description": "An object containing the properties of an point in the path of an ink stroke. The main properties are the x and y values. Other include tip pressure, x tilt etc. For the coordinate values, it is recommended to have a precision of 8 digits after the decimal to obtain most accurate recognition results. The origin (0,0) of the canvas is assumed to be at the top left corner of the canvas", - "properties": { - "x": { - "type": "number", - "description": "The x coordinate of the pen location on the writing surface." - }, - "y": { - "type": "number", - "description": "The y coordinate of the pen location on the writing surface." - }, - "z": { - "type": "number", - "description": "The z coordinate of the pen location on the writing space. This may not be used for recognition." - }, - "tipPressure": { - "type": "number", - "description": "The force exerted against the tablet surface by the transducer, typically a stylus. This may not be used for recognition." - }, - "barrelPressure": { - "type": "number", - "description": "The force exerted directly by the user on a transducer sensor, such as a pressure-sensitive button on the barrel of a stylus. This may not be used for recognition." - }, - "timestamp": { - "type": "number", - "description": "The time relative to the absolute time the transducer last became active. This may not be used for recognition." - }, - "xTilt": { - "type": "number", - "description": "The plane angle between the Y-Z plane and the plane containing the transducer axis and the Y axis. This may not be used for recognition." - }, - "yTilt": { - "type": "number", - "description": "The angle between the X-Z and transducer-X planes. A positive Y Tilt is toward the user. This may not be used for recognition." - }, - "width": { - "type": "number", - "description": "The width of the tip of the writing instrument. This is used by touch screen devices to report the width of the finger contact on the writing surface. This may not be used for recognition." - }, - "height": { - "type": "number", - "description": "The height of the tip of the writing instrument. This is used by touch screen devices to report the height of the finger contact on the writing surface. This may not be used for recognition." - }, - "tipSwitch": { - "type": "boolean", - "description": "A switch located on the tip of a stylus indicating contact of the stylus with a surface. This may not be used for recognition." - }, - "inverted": { - "type": "boolean", - "description": "A value that indicates that the currently sensed position originates from the end of a stylus opposite the tip switch. This may not be used for recognition." - }, - "barrelSwitch": { - "type": "boolean", - "description": "A non-tip button located on the barrel of a stylus. Its function is typically mapped to a system secondary button. This may not be used for recognition." - }, - "eraser": { - "type": "boolean", - "description": "The control is used for erasing objects. It is typically located opposite the writing end of a stylus. This may not be used for recognition." - }, - "secondaryTip": { - "type": "boolean", - "description": "A secondary switch used in conjunction with the tip switch to indicate pressure above a certain threshold applied with the stylus. This may not be used for recognition." - } - }, - "required": [ - "x", - "y" - ] - }, - "recognitionUnit": { - "items": { - "properties": { - "id": { - "type": "integer", - "description": "The identifier of the recognition unit. This id is used to indicate parent/child relationship between different recognition units." - }, - "category": { - "$ref": "#/definitions/categoryPattern" - }, - "alternates": { - "$ref": "#/definitions/alternatePattern" - }, - "center": { - "description": "The coordinates (x,y) of the center of the recognition unit.", - "$ref": "#/definitions/pointDetailsPattern" - }, - "points": { - "description": "Array of point objects that represent points that are relevant to the type of recognition unit. For example, for a leaf node of inkDrawing category that represents a triangle, points would include the x, y coordinates of the vertices of the recognized triangle. The points represent the coordinates used to create the perfectly drawn shape that is closest to the original input. They may not exactly match.", - "type": "array", - "items": { - "$ref": "#/definitions/pointDetailsPattern" - } - }, - "childIds": { - "description": "An array of integers representing the identifier of each child of the current recognition unit.", - "type": "array", - "items": { - "type": "integer" - } - }, - "class": { - "$ref": "#/definitions/classPattern" - }, - "parentId": { - "type": "integer", - "description": "The id of the parent node in the tree structure of the recognition results. parent = 0 indicates that there is no dedicated parent node for this unit." - }, - "boundingRectangle": { - "description": "The bounding rectangle of the recognition unit represented by the coordinates of the top left corner (topX,topY) along with width and height of the rectangle. Note that this rectangle is not rotated. So for rotated objects such as slanted handwriting, it will cover the entire object. The unit will be matched to the one specified in the original request (mm by default.) ", - "type": "object", - "properties": { - "topX": { - "type": "number", - "description": "This is the top left x coordinate" - }, - "topY": { - "type": "number", - "description": "This is the top left y coordinate" - }, - "width": { - "type": "number", - "description": "This is width of the bounding rectangle" - }, - "height": { - "type": "number", - "description": "The is the height of the bounding rectangle" - } - } - }, - "rotatedBoundingRectangle": { - "description": "This is the rotated bounding rectangle that covers the entire recognized object along the angle of rotation of the object. Note that this is NOT the same as rotating the boundingRectangle by the rotation angle.", - "type": "array", - "items": { - "$ref": "#/definitions/pointDetailsPattern" - } - }, - "strokeIds": { - "description": "This is an array of integers representing the list of stroke Identifiers from the input request body that belong to this recognition unit.", - "type": "array", - "items": { - "type": "integer" - } - }, - "recognizedText": { - "type": "string", - "description": "The string contains the text that was recognized. It can be an empty string if the recognizer cannot determine the text." - }, - "confidence": { - "type": "number", - "description": "A number between 0 and 1 which indicates the confidence level in the result." - }, - "rotationAngle": { - "type": "number", - "description": "This is the angle at which the unit is rotated in degrees with respect to the positive X axis." - }, - "recognizedObject": { - "$ref": "#/definitions/shapePattern" - } - }, - "required": [ - "category", - "parentId", - "strokeIds", - "class", - "id" - ], - "type": "object", - "description": "This identifies the recognized entity" - }, - "type": "array", - "description": "The list of recognition units based on the analysis of the ink strokes." - }, - "stroke": { - "type": "object", - "properties": { - "id": { - "type": "integer", - "description": "This is treated as a unique identifier for each stroke within a request. If the id is repeated within the same request, the service will return an error." - }, - "language": { - "type": "string", - "description": "The IETF BCP 47 language code (for ex. en-US, en-GB, hi-IN etc.) of the expected language for the handwritten content in this stroke. The response will include results from this language." - }, - "points": { - "type": "array", - "items": { - "$ref": "#/definitions/inkPoint" - } - }, - "drawingAttributes": { - "$ref": "#/definitions/drawingAttributesPattern" - }, - "kind": { - "type": "string", - "description": "This is an optional property which influences the decision about what the stroke kind is between inkWriting and inkDrawing. This property should be set ONLY if the type of user content is known ahead of time. Not setting this value implies the kind is not known ahead of time. Kind represents the type of content the stroke is a part of.", - "enum": [ - "inkDrawing", - "inkWriting" - ], - "x-ms-enum": { - "name": "kind", - "modelAsString": true - } - } - }, - "required": [ - "points", - "id" - ] - }, - "analysisResponse": { - "type": "object", - "description": "This shows the expected contents of a response from the service", - "properties": { - "unit": { - "type": "string", - "description": "This is the physical unit of the ink strokes. It is up to the application developer to decide how to convert the device specific units to physical units before calling the service. The conversion factor can be different based on the type of the device used.", - "enum": [ - "mm", - "cm", - "in" - ], - "x-ms-enum": { - "name": "unit", - "modelAsString": true - } - }, - "unitMultiple": { - "description": " This is a scaling factor to be applied to the point coordinates when interpreting them in the physical units specified.", - "type": "number" - }, - "language": { - "type": "string", - "description": "This is the language used for recognizing handwriting from the ink strokes in the request." - }, - "recognitionUnits": { - "$ref": "#/definitions/recognitionUnit" - } - }, - "required": [ - "recognitionUnits" - ] - }, - "errorModel": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "This represents the error code" - }, - "message": { - "type": "string", - "description": "This represents the error message" - }, - "target": { - "type": "string", - "description": "This represents the target of the error message" - }, - "details": { - "type": "array", - "description": "This gives details of the reason(s) for the error", - "items": { - "properties": { - "code": { - "type": "string", - "description": "This represents the error code" - }, - "message": { - "type": "string", - "description": "This represents the error message" - }, - "target": { - "type": "string", - "description": "This represents the target of the error message" - } - } - } - } - }, - "required": [ - "code", - "message" - ] - }, - "analysisRequest": { - "type": "object", - "description": "This shows the expected contents of a request", - "required": [ - "strokes", - "language" - ], - "properties": { - "applicationType": { - "type": "string", - "description": "This describes the domain of the client application", - "enum": [ - "drawing", - "writing", - "mixed" - ], - "x-ms-enum": { - "name": "application", - "modelAsString": true - } - }, - "inputDeviceKind": { - "type": "string", - "description": "This identifies the kind of device used as the writing instrument", - "enum": [ - "digitizer", - "pen", - "lightPen", - "touchScreen", - "touchPad", - "whiteBoard", - "3dDigitizer", - "stereoPlotter", - "articulatedArm", - "armature" - ], - "x-ms-enum": { - "name": "inputDevice", - "modelAsString": true - } - }, - "unit": { - "type": "string", - "description": "This is the physical unit of the ink strokes. It is up to the application developer to decide how to convert the device specific units to physical units before calling the service. The conversion factor can be different based on the type of the device used.", - "enum": [ - "mm", - "cm", - "in" - ], - "x-ms-enum": { - "name": "unit", - "modelAsString": true - } - }, - "unitMultiple": { - "description": " This is a scaling factor to be applied to the point coordinates when interpreting them in the physical units specified.", - "type": "number" - }, - "language": { - "type": "string", - "example": "en-US", - "description": "The IETF BCP 47 language code (for ex. en-US, en-GB, hi-IN etc.) of the expected language for the handwritten content in the ink strokes. The response will include results from this language." - }, - "inkPointValueAttributes": { - "type": "array", - "items": { - "$ref": "#/definitions/inkPointValueAttribute" - } - }, - "strokes": { - "type": "array", - "items": { - "$ref": "#/definitions/stroke" - }, - "description": "This is the array of strokes sent for recognition. Best results are produced when the order of strokes added in the array matches the order in which the user created them. Changing the stroke order may produce unexpected results." - } - } - } - }, - "parameters": { - "Endpoint": { - "name": "Endpoint", - "description": "Supported Cognitive Services endpoints (protocol and hostname, for example: https://api.cognitive.microsoft.com).", - "x-ms-parameter-location": "client", - "required": true, - "type": "string", - "in": "path", - "x-ms-skip-url-encoding": true - } - } -} diff --git a/specification/cognitiveservices/data-plane/InkRecognizer/preview/v1.0/examples/InkWordRecognition.json b/specification/cognitiveservices/data-plane/InkRecognizer/preview/v1.0/examples/InkWordRecognition.json deleted file mode 100644 index d82ecae40824..000000000000 --- a/specification/cognitiveservices/data-plane/InkRecognizer/preview/v1.0/examples/InkWordRecognition.json +++ /dev/null @@ -1,1917 +0,0 @@ -{ - "parameters": { - "Endpoint": "{Endpoint}", - "Content-Type": "application/json", - "Ocp-Apim-Subscription-Key": "{API key}", - "body": { - "language": "en-US", - "strokes": [ - { - "id": 1, - "kind": "inkWriting", - "points": [ - { - "x": 19.34498, - "y": 28.21327 - }, - { - "x": 19.34498, - "y": 27.93462 - }, - { - "x": 19.34498, - "y": 27.65597 - }, - { - "x": 19.0157, - "y": 27.65597 - }, - { - "x": 18.76874, - "y": 27.44698 - }, - { - "x": 18.27483, - "y": 27.44698 - }, - { - "x": 18.02787, - "y": 27.44698 - }, - { - "x": 17.45164, - "y": 27.44698 - }, - { - "x": 16.62845, - "y": 27.65597 - }, - { - "x": 15.88758, - "y": 27.93462 - }, - { - "x": 15.06439, - "y": 28.49191 - }, - { - "x": 14.32351, - "y": 28.97955 - }, - { - "x": 13.25337, - "y": 29.53685 - }, - { - "x": 11.36003, - "y": 31.41773 - }, - { - "x": 10.61916, - "y": 32.46267 - }, - { - "x": 9.795967, - "y": 33.50761 - }, - { - "x": 8.972776, - "y": 34.83119 - }, - { - "x": 8.231905, - "y": 35.87613 - }, - { - "x": 7.655672, - "y": 37.19971 - }, - { - "x": 7.161757, - "y": 38.24465 - }, - { - "x": 6.9148, - "y": 39.35925 - }, - { - "x": 6.9148, - "y": 40.12554 - }, - { - "x": 6.9148, - "y": 40.89182 - }, - { - "x": 6.9148, - "y": 41.72777 - }, - { - "x": 7.408715, - "y": 42.2154 - }, - { - "x": 7.902629, - "y": 42.49405 - }, - { - "x": 8.478863, - "y": 42.77271 - }, - { - "x": 8.972776, - "y": 43.05135 - }, - { - "x": 9.795967, - "y": 43.05135 - }, - { - "x": 10.28988, - "y": 43.05135 - }, - { - "x": 11.11307, - "y": 42.77271 - }, - { - "x": 11.93626, - "y": 42.2154 - }, - { - "x": 12.43018, - "y": 41.72777 - }, - { - "x": 13.25337, - "y": 41.17047 - }, - { - "x": 13.74728, - "y": 40.12554 - }, - { - "x": 14.57047, - "y": 39.0806 - }, - { - "x": 15.31134, - "y": 37.75701 - }, - { - "x": 15.88758, - "y": 36.15478 - }, - { - "x": 16.62845, - "y": 34.27389 - }, - { - "x": 17.20468, - "y": 32.46267 - }, - { - "x": 17.6986, - "y": 30.30314 - }, - { - "x": 18.27483, - "y": 28.21327 - }, - { - "x": 18.76874, - "y": 26.12339 - }, - { - "x": 19.34498, - "y": 23.96386 - }, - { - "x": 19.59193, - "y": 21.87399 - }, - { - "x": 19.83889, - "y": 19.9931 - }, - { - "x": 20.08585, - "y": 18.46053 - }, - { - "x": 20.08585, - "y": 17.13695 - }, - { - "x": 20.08585, - "y": 16.02235 - }, - { - "x": 20.08585, - "y": 14.97741 - }, - { - "x": 20.08585, - "y": 14.48978 - }, - { - "x": 20.08585, - "y": 13.93248 - }, - { - "x": 19.83889, - "y": 13.65383 - }, - { - "x": 19.83889, - "y": 13.65383 - }, - { - "x": 19.83889, - "y": 13.65383 - }, - { - "x": 19.59193, - "y": 13.65383 - }, - { - "x": 19.59193, - "y": 13.65383 - }, - { - "x": 19.34498, - "y": 14.21113 - }, - { - "x": 19.34498, - "y": 14.69876 - }, - { - "x": 19.0157, - "y": 15.25606 - }, - { - "x": 19.0157, - "y": 16.02235 - }, - { - "x": 18.76874, - "y": 17.13695 - }, - { - "x": 18.76874, - "y": 18.46053 - }, - { - "x": 18.52179, - "y": 19.78412 - }, - { - "x": 18.27483, - "y": 21.31669 - }, - { - "x": 18.02787, - "y": 22.91892 - }, - { - "x": 18.02787, - "y": 24.52116 - }, - { - "x": 17.6986, - "y": 26.33238 - }, - { - "x": 17.45164, - "y": 28.21327 - }, - { - "x": 17.20468, - "y": 30.09415 - }, - { - "x": 16.95773, - "y": 31.90537 - }, - { - "x": 16.62845, - "y": 33.50761 - }, - { - "x": 16.62845, - "y": 35.10984 - }, - { - "x": 16.62845, - "y": 36.71207 - }, - { - "x": 16.62845, - "y": 38.03566 - }, - { - "x": 16.95773, - "y": 39.0806 - }, - { - "x": 17.20468, - "y": 39.84688 - }, - { - "x": 17.45164, - "y": 40.68283 - }, - { - "x": 18.02787, - "y": 41.17047 - }, - { - "x": 18.52179, - "y": 41.72777 - }, - { - "x": 19.34498, - "y": 42.00642 - }, - { - "x": 19.83889, - "y": 42.00642 - }, - { - "x": 20.90904, - "y": 41.72777 - }, - { - "x": 21.73223, - "y": 41.44912 - }, - { - "x": 22.4731, - "y": 40.89182 - }, - { - "x": 23.54325, - "y": 40.12554 - }, - { - "x": 24.36644, - "y": 39.35925 - }, - { - "x": 25.10731, - "y": 38.5233 - }, - { - "x": 25.9305, - "y": 37.47836 - }, - { - "x": 26.75369, - "y": 36.71207 - }, - { - "x": 27.24761, - "y": 35.59748 - }, - { - "x": 27.49457, - "y": 34.55254 - }, - { - "x": 27.74152, - "y": 33.50761 - }, - { - "x": 28.0708, - "y": 32.46267 - }, - { - "x": 28.0708, - "y": 31.62672 - }, - { - "x": 28.0708, - "y": 30.86044 - }, - { - "x": 28.0708, - "y": 30.09415 - }, - { - "x": 27.74152, - "y": 29.53685 - }, - { - "x": 27.49457, - "y": 28.97955 - }, - { - "x": 27.24761, - "y": 28.77056 - }, - { - "x": 26.75369, - "y": 28.49191 - }, - { - "x": 26.42442, - "y": 28.49191 - }, - { - "x": 25.9305, - "y": 28.49191 - }, - { - "x": 25.43659, - "y": 28.97955 - }, - { - "x": 25.10731, - "y": 29.53685 - }, - { - "x": 24.6134, - "y": 30.09415 - }, - { - "x": 24.03716, - "y": 30.86044 - }, - { - "x": 23.79021, - "y": 31.90537 - }, - { - "x": 23.29629, - "y": 33.22896 - }, - { - "x": 23.04934, - "y": 34.27389 - }, - { - "x": 22.72006, - "y": 35.59748 - }, - { - "x": 22.72006, - "y": 36.71207 - }, - { - "x": 22.4731, - "y": 38.03566 - }, - { - "x": 22.72006, - "y": 39.0806 - }, - { - "x": 22.72006, - "y": 40.12554 - }, - { - "x": 23.04934, - "y": 40.89182 - }, - { - "x": 23.29629, - "y": 41.72777 - }, - { - "x": 23.79021, - "y": 42.2154 - }, - { - "x": 24.36644, - "y": 42.77271 - }, - { - "x": 24.86036, - "y": 43.05135 - }, - { - "x": 25.68354, - "y": 43.05135 - }, - { - "x": 26.42442, - "y": 43.05135 - }, - { - "x": 27.24761, - "y": 42.77271 - }, - { - "x": 28.31775, - "y": 42.2154 - }, - { - "x": 29.3879, - "y": 41.72777 - }, - { - "x": 30.45805, - "y": 40.89182 - }, - { - "x": 31.44588, - "y": 39.84688 - }, - { - "x": 32.8453, - "y": 38.80195 - }, - { - "x": 33.83313, - "y": 37.47836 - }, - { - "x": 35.15023, - "y": 35.87613 - }, - { - "x": 36.22039, - "y": 34.27389 - }, - { - "x": 37.29053, - "y": 32.46267 - }, - { - "x": 39.43083, - "y": 27.93462 - }, - { - "x": 40.50097, - "y": 25.5661 - }, - { - "x": 41.24184, - "y": 23.19757 - }, - { - "x": 41.81808, - "y": 20.82905 - }, - { - "x": 42.55895, - "y": 18.46053 - }, - { - "x": 42.88823, - "y": 16.301 - }, - { - "x": 43.38214, - "y": 14.48978 - }, - { - "x": 43.6291, - "y": 11.84261 - }, - { - "x": 43.6291, - "y": 10.72801 - }, - { - "x": 43.6291, - "y": 10.24037 - }, - { - "x": 43.38214, - "y": 9.96172 - }, - { - "x": 43.38214, - "y": 9.96172 - }, - { - "x": 43.13519, - "y": 9.96172 - }, - { - "x": 42.88823, - "y": 10.72801 - }, - { - "x": 42.31199, - "y": 12.60889 - }, - { - "x": 41.81808, - "y": 14.21113 - }, - { - "x": 41.24184, - "y": 16.02235 - }, - { - "x": 40.74793, - "y": 18.18188 - }, - { - "x": 40.25402, - "y": 20.5504 - }, - { - "x": 39.67778, - "y": 23.19757 - }, - { - "x": 39.43083, - "y": 25.84475 - }, - { - "x": 38.60764, - "y": 31.13909 - }, - { - "x": 38.36068, - "y": 33.78626 - }, - { - "x": 38.36068, - "y": 36.43343 - }, - { - "x": 38.11372, - "y": 38.80195 - }, - { - "x": 38.11372, - "y": 40.89182 - }, - { - "x": 38.11372, - "y": 43.05135 - }, - { - "x": 37.86677, - "y": 45.14123 - }, - { - "x": 37.53749, - "y": 48.62434 - }, - { - "x": 37.53749, - "y": 49.94793 - }, - { - "x": 37.29053, - "y": 51.27151 - }, - { - "x": 37.04358, - "y": 52.31645 - }, - { - "x": 36.79662, - "y": 53.08273 - }, - { - "x": 36.54966, - "y": 53.64004 - }, - { - "x": 35.97342, - "y": 53.84902 - }, - { - "x": 34.65633, - "y": 53.64004 - }, - { - "x": 33.83313, - "y": 53.08273 - }, - { - "x": 33.09226, - "y": 52.5951 - }, - { - "x": 32.26907, - "y": 51.75915 - }, - { - "x": 31.19892, - "y": 50.71421 - }, - { - "x": 30.45805, - "y": 49.66928 - }, - { - "x": 29.88182, - "y": 48.83333 - }, - { - "x": 28.56471, - "y": 47.02211 - }, - { - "x": 28.31775, - "y": 46.18616 - }, - { - "x": 28.0708, - "y": 45.69852 - }, - { - "x": 28.0708, - "y": 45.14123 - }, - { - "x": 28.31775, - "y": 44.37494 - }, - { - "x": 28.56471, - "y": 43.53899 - }, - { - "x": 29.88182, - "y": 42.2154 - }, - { - "x": 30.70501, - "y": 41.44912 - }, - { - "x": 31.77516, - "y": 40.68283 - }, - { - "x": 32.8453, - "y": 39.56823 - }, - { - "x": 35.47952, - "y": 37.75701 - }, - { - "x": 36.79662, - "y": 36.92107 - }, - { - "x": 39.67778, - "y": 35.38849 - }, - { - "x": 42.31199, - "y": 34.0649 - }, - { - "x": 43.6291, - "y": 33.50761 - }, - { - "x": 46.26331, - "y": 32.74132 - }, - { - "x": 47.33346, - "y": 32.46267 - }, - { - "x": 49.22679, - "y": 32.18402 - }, - { - "x": 49.72071, - "y": 31.90537 - }, - { - "x": 50.29694, - "y": 31.90537 - }, - { - "x": 50.79086, - "y": 31.90537 - }, - { - "x": 51.03782, - "y": 31.90537 - }, - { - "x": 51.03782, - "y": 31.90537 - }, - { - "x": 50.29694, - "y": 31.90537 - }, - { - "x": 49.96766, - "y": 32.18402 - }, - { - "x": 49.47375, - "y": 32.46267 - }, - { - "x": 48.65057, - "y": 32.74132 - }, - { - "x": 47.90969, - "y": 33.22896 - }, - { - "x": 47.0865, - "y": 33.78626 - }, - { - "x": 46.26331, - "y": 34.27389 - }, - { - "x": 44.69925, - "y": 35.87613 - }, - { - "x": 44.20533, - "y": 36.71207 - }, - { - "x": 43.95837, - "y": 37.75701 - }, - { - "x": 43.6291, - "y": 38.5233 - }, - { - "x": 43.38214, - "y": 39.84688 - }, - { - "x": 43.6291, - "y": 40.12554 - }, - { - "x": 43.95837, - "y": 40.40418 - }, - { - "x": 44.20533, - "y": 40.68283 - }, - { - "x": 45.27548, - "y": 40.40418 - }, - { - "x": 46.01635, - "y": 40.12554 - }, - { - "x": 46.59258, - "y": 39.56823 - }, - { - "x": 47.0865, - "y": 38.80195 - }, - { - "x": 47.90969, - "y": 38.03566 - }, - { - "x": 48.97984, - "y": 36.15478 - }, - { - "x": 49.47375, - "y": 35.10984 - }, - { - "x": 49.72071, - "y": 34.27389 - }, - { - "x": 49.96766, - "y": 33.50761 - }, - { - "x": 50.29694, - "y": 32.46267 - }, - { - "x": 50.5439, - "y": 31.90537 - }, - { - "x": 50.5439, - "y": 31.90537 - }, - { - "x": 50.29694, - "y": 32.18402 - }, - { - "x": 50.29694, - "y": 32.74132 - }, - { - "x": 49.96766, - "y": 33.22896 - }, - { - "x": 49.72071, - "y": 34.83119 - }, - { - "x": 49.47375, - "y": 35.87613 - }, - { - "x": 49.47375, - "y": 37.75701 - }, - { - "x": 49.47375, - "y": 38.5233 - }, - { - "x": 49.72071, - "y": 39.0806 - }, - { - "x": 49.72071, - "y": 39.35925 - }, - { - "x": 50.29694, - "y": 39.56823 - }, - { - "x": 50.79086, - "y": 39.56823 - }, - { - "x": 51.03782, - "y": 39.35925 - }, - { - "x": 51.61405, - "y": 38.80195 - }, - { - "x": 52.6842, - "y": 37.47836 - }, - { - "x": 53.1781, - "y": 36.71207 - }, - { - "x": 53.67202, - "y": 35.87613 - }, - { - "x": 54.24826, - "y": 35.10984 - }, - { - "x": 54.74217, - "y": 34.55254 - }, - { - "x": 55.3184, - "y": 33.50761 - }, - { - "x": 55.56536, - "y": 33.22896 - }, - { - "x": 55.56536, - "y": 32.95031 - }, - { - "x": 55.56536, - "y": 32.95031 - }, - { - "x": 55.56536, - "y": 33.78626 - }, - { - "x": 55.3184, - "y": 34.27389 - }, - { - "x": 55.07145, - "y": 35.38849 - }, - { - "x": 55.07145, - "y": 36.15478 - }, - { - "x": 55.07145, - "y": 36.92107 - }, - { - "x": 55.07145, - "y": 37.47836 - }, - { - "x": 55.3184, - "y": 38.03566 - }, - { - "x": 55.3184, - "y": 38.24465 - }, - { - "x": 55.56536, - "y": 38.5233 - }, - { - "x": 56.05928, - "y": 38.5233 - }, - { - "x": 56.38855, - "y": 38.24465 - }, - { - "x": 56.63551, - "y": 38.03566 - }, - { - "x": 57.12943, - "y": 37.75701 - }, - { - "x": 57.70565, - "y": 36.71207 - }, - { - "x": 58.19957, - "y": 36.15478 - }, - { - "x": 58.44653, - "y": 35.10984 - }, - { - "x": 58.77581, - "y": 34.55254 - }, - { - "x": 58.77581, - "y": 34.27389 - }, - { - "x": 59.02276, - "y": 34.0649 - }, - { - "x": 59.02276, - "y": 33.78626 - }, - { - "x": 59.02276, - "y": 33.78626 - }, - { - "x": 58.77581, - "y": 34.27389 - }, - { - "x": 58.77581, - "y": 34.55254 - }, - { - "x": 58.77581, - "y": 35.10984 - }, - { - "x": 58.77581, - "y": 35.38849 - }, - { - "x": 58.44653, - "y": 36.71207 - }, - { - "x": 58.77581, - "y": 37.47836 - }, - { - "x": 58.77581, - "y": 38.03566 - }, - { - "x": 59.02276, - "y": 38.80195 - }, - { - "x": 59.51667, - "y": 39.56823 - }, - { - "x": 60.09291, - "y": 39.84688 - }, - { - "x": 60.58682, - "y": 39.84688 - }, - { - "x": 61.08074, - "y": 39.56823 - }, - { - "x": 61.90393, - "y": 39.35925 - }, - { - "x": 63.46799, - "y": 38.24465 - }, - { - "x": 64.53814, - "y": 37.19971 - }, - { - "x": 65.60828, - "y": 36.15478 - }, - { - "x": 66.67844, - "y": 34.55254 - }, - { - "x": 68.48946, - "y": 31.41773 - }, - { - "x": 69.31265, - "y": 29.53685 - }, - { - "x": 70.62975, - "y": 25.5661 - }, - { - "x": 71.20598, - "y": 23.47622 - }, - { - "x": 71.45294, - "y": 21.87399 - }, - { - "x": 71.6999, - "y": 20.5504 - }, - { - "x": 71.6999, - "y": 18.18188 - }, - { - "x": 71.45294, - "y": 17.34593 - }, - { - "x": 70.8767, - "y": 16.57965 - }, - { - "x": 70.62975, - "y": 16.301 - }, - { - "x": 70.3828, - "y": 16.57965 - }, - { - "x": 69.88888, - "y": 16.8583 - }, - { - "x": 68.81873, - "y": 18.18188 - }, - { - "x": 68.24249, - "y": 19.22682 - }, - { - "x": 67.17235, - "y": 21.59534 - }, - { - "x": 66.43147, - "y": 22.91892 - }, - { - "x": 65.85524, - "y": 24.52116 - }, - { - "x": 65.60828, - "y": 26.12339 - }, - { - "x": 64.7851, - "y": 29.2582 - }, - { - "x": 64.53814, - "y": 30.58179 - }, - { - "x": 64.29118, - "y": 33.22896 - }, - { - "x": 64.53814, - "y": 34.55254 - }, - { - "x": 64.53814, - "y": 5.59748 - }, - { - "x": 64.7851, - "y": 36.71207 - }, - { - "x": 65.85524, - "y": 38.24465 - }, - { - "x": 66.43147, - "y": 38.80195 - }, - { - "x": 67.99554, - "y": 39.35925 - }, - { - "x": 68.81873, - "y": 39.56823 - }, - { - "x": 69.5596, - "y": 39.35925 - }, - { - "x": 70.62975, - "y": 39.0806 - }, - { - "x": 73.01699, - "y": 37.75701 - }, - { - "x": 74.33411, - "y": 36.71207 - }, - { - "x": 76.72135, - "y": 34.0649 - }, - { - "x": 78.03847, - "y": 32.18402 - }, - { - "x": 79.35557, - "y": 30.30314 - }, - { - "x": 80.67267, - "y": 28.21327 - }, - { - "x": 82.81297, - "y": 23.75487 - }, - { - "x": 83.88311, - "y": 21.31669 - }, - { - "x": 85.20022, - "y": 17.34593 - }, - { - "x": 85.69414, - "y": 15.53471 - }, - { - "x": 86.02341, - "y": 14.21113 - }, - { - "x": 86.27037, - "y": 13.16619 - }, - { - "x": 86.27037, - "y": 11.56396 - }, - { - "x": 86.27037, - "y": 11.28531 - }, - { - "x": 86.27037, - "y": 11.00666 - }, - { - "x": 86.02341, - "y": 11.28531 - }, - { - "x": 86.02341, - "y": 11.28531 - }, - { - "x": 86.02341, - "y": 11.84261 - }, - { - "x": 85.44718, - "y": 12.88754 - }, - { - "x": 85.44718, - "y": 13.65383 - }, - { - "x": 84.95326, - "y": 15.81336 - }, - { - "x": 84.70631, - "y": 16.8583 - }, - { - "x": 84.37703, - "y": 17.90323 - }, - { - "x": 83.88311, - "y": 19.22682 - }, - { - "x": 83.30688, - "y": 22.15264 - }, - { - "x": 82.81297, - "y": 23.75487 - }, - { - "x": 81.98978, - "y": 26.88968 - }, - { - "x": 81.49586, - "y": 28.49191 - }, - { - "x": 81.00195, - "y": 30.09415 - }, - { - "x": 80.67267, - "y": 31.62672 - }, - { - "x": 80.17876, - "y": 34.27389 - }, - { - "x": 79.9318, - "y": 35.38849 - }, - { - "x": 79.60252, - "y": 37.47836 - }, - { - "x": 79.60252, - "y": 38.24465 - }, - { - "x": 79.60252, - "y": 38.80195 - }, - { - "x": 79.9318, - "y": 39.35925 - }, - { - "x": 80.42571, - "y": 40.40418 - }, - { - "x": 81.00195, - "y": 40.68283 - }, - { - "x": 82.31906, - "y": 40.89182 - }, - { - "x": 83.05993, - "y": 40.89182 - }, - { - "x": 83.88311, - "y": 40.89182 - }, - { - "x": 84.95326, - "y": 40.68283 - }, - { - "x": 86.76428, - "y": 39.56823 - }, - { - "x": 87.58747, - "y": 39.0806 - }, - { - "x": 89.15154, - "y": 38.03566 - }, - { - "x": 89.72777, - "y": 37.19971 - }, - { - "x": 90.22169, - "y": 36.43343 - } - ] - }, - { - "id": 2, - "kind": "inkWriting", - "points": [ - { - "x": 80.17876, - "y": 20.27175 - }, - { - "x": 80.17876, - "y": 20.27175 - }, - { - "x": 80.17876, - "y": 20.27175 - }, - { - "x": 80.17876, - "y": 20.27175 - }, - { - "x": 80.17876, - "y": 20.5504 - }, - { - "x": 80.17876, - "y": 20.5504 - }, - { - "x": 80.17876, - "y": 20.5504 - }, - { - "x": 80.17876, - "y": 20.5504 - }, - { - "x": 80.42571, - "y": 20.5504 - }, - { - "x": 80.42571, - "y": 20.5504 - }, - { - "x": 80.67267, - "y": 20.5504 - }, - { - "x": 81.00195, - "y": 20.5504 - }, - { - "x": 81.49586, - "y": 20.5504 - }, - { - "x": 81.98978, - "y": 20.5504 - }, - { - "x": 82.56602, - "y": 20.5504 - }, - { - "x": 83.30688, - "y": 20.5504 - }, - { - "x": 84.13007, - "y": 20.5504 - }, - { - "x": 84.95326, - "y": 20.27175 - }, - { - "x": 86.02341, - "y": 20.27175 - }, - { - "x": 86.76428, - "y": 20.27175 - }, - { - "x": 87.58747, - "y": 20.27175 - }, - { - "x": 88.41067, - "y": 19.9931 - }, - { - "x": 89.15154, - "y": 19.9931 - }, - { - "x": 89.72777, - "y": 19.9931 - }, - { - "x": 90.22169, - "y": 19.78412 - }, - { - "x": 90.46864, - "y": 19.78412 - }, - { - "x": 90.7156, - "y": 19.78412 - }, - { - "x": 91.04487, - "y": 19.78412 - }, - { - "x": 91.29183, - "y": 19.78412 - }, - { - "x": 91.29183, - "y": 19.78412 - }, - { - "x": 91.29183, - "y": 19.78412 - }, - { - "x": 91.29183, - "y": 19.78412 - }, - { - "x": 91.29183, - "y": 19.78412 - }, - { - "x": 91.29183, - "y": 19.78412 - }, - { - "x": 91.29183, - "y": 19.78412 - }, - { - "x": 91.29183, - "y": 19.78412 - }, - { - "x": 91.29183, - "y": 19.78412 - }, - { - "x": 91.29183, - "y": 19.78412 - }, - { - "x": 91.29183, - "y": 19.78412 - }, - { - "x": 91.29183, - "y": 19.78412 - }, - { - "x": 91.29183, - "y": 19.78412 - }, - { - "x": 91.29183, - "y": 19.78412 - }, - { - "x": 91.53879, - "y": 19.78412 - }, - { - "x": 91.53879, - "y": 19.78412 - }, - { - "x": 91.78574, - "y": 19.78412 - } - ] - } - ] - } - }, - "responses": { - "200": { - "headers": {}, - "body": { - "recognitionUnits": [ - { - "alternates": [ - { - "category": "inkWord", - "recognizedString": "defaults" - }, - { - "category": "inkWord", - "recognizedString": "defiant" - }, - { - "category": "inkWord", - "recognizedString": "defaulter" - }, - { - "category": "inkWord", - "recognizedString": "default's" - }, - { - "category": "inkWord", - "recognizedString": "defaults'" - }, - { - "category": "inkWord", - "recognizedString": "defaulted" - }, - { - "category": "inkWord", - "recognizedString": "descant" - }, - { - "category": "inkWord", - "recognizedString": "decant" - }, - { - "category": "inkWord", - "recognizedString": "defat" - } - ], - "boundingRectangle": { - "height": 43.889999389648438, - "topX": 6.9099998474121094, - "topY": 9.9600000381469727, - "width": 84.879997253417969 - }, - "category": "inkWord", - "class": "leaf", - "id": 4, - "parentId": 3, - "recognizedText": "default", - "rotatedBoundingRectangle": [ - { - "x": 3.1800000667572021, - "y": 15.670000076293945 - }, - { - "x": 89.419998168945313, - "y": 3.3299999237060547 - }, - { - "x": 95.430000305175781, - "y": 45.330001831054688 - }, - { - "x": 9.1899995803833008, - "y": 57.669998168945313 - } - ], - "strokeIds": [ - 1, - 2 - ] - }, - { - "alternates": [ - { - "category": "inkWord", - "recognizedString": "defaults" - }, - { - "category": "inkWord", - "recognizedString": "defiant" - }, - { - "category": "inkWord", - "recognizedString": "defaulter" - }, - { - "category": "inkWord", - "recognizedString": "default's" - }, - { - "category": "inkWord", - "recognizedString": "defaults'" - }, - { - "category": "inkWord", - "recognizedString": "defaulted" - }, - { - "category": "inkWord", - "recognizedString": "descant" - }, - { - "category": "inkWord", - "recognizedString": "decant" - }, - { - "category": "inkWord", - "recognizedString": "defat" - } - ], - "boundingRectangle": { - "height": 43.889999389648438, - "topX": 6.9099998474121094, - "topY": 9.9600000381469727, - "width": 84.879997253417969 - }, - "category": "line", - "childIds": [ - 4 - ], - "class": "container", - "id": 3, - "parentId": 2, - "recognizedText": "default", - "rotatedBoundingRectangle": [ - { - "x": 3.1800000667572021, - "y": 15.670000076293945 - }, - { - "x": 89.419998168945313, - "y": 3.3299999237060547 - }, - { - "x": 95.430000305175781, - "y": 45.330001831054688 - }, - { - "x": 9.1899995803833008, - "y": 57.669998168945313 - } - ], - "strokeIds": [ - 1, - 2 - ] - }, - { - "boundingRectangle": { - "height": 43.889999389648438, - "topX": 6.9099998474121094, - "topY": 9.9600000381469727, - "width": 84.879997253417969 - }, - "category": "paragraph", - "childIds": [ - 3 - ], - "class": "container", - "id": 2, - "parentId": 1, - "rotatedBoundingRectangle": [ - { - "x": 3.1800000667572021, - "y": 15.670000076293945 - }, - { - "x": 89.419998168945313, - "y": 3.3299999237060547 - }, - { - "x": 95.430000305175781, - "y": 45.330001831054688 - }, - { - "x": 9.1899995803833008, - "y": 57.669998168945313 - } - ], - "strokeIds": [ - 1, - 2 - ] - }, - { - "boundingRectangle": { - "height": 43.889999389648438, - "topX": 6.9099998474121094, - "topY": 9.9600000381469727, - "width": 84.879997253417969 - }, - "category": "writingRegion", - "childIds": [ - 2 - ], - "class": "container", - "id": 1, - "parentId": 0, - "rotatedBoundingRectangle": [ - { - "x": 3.1800000667572021, - "y": 15.670000076293945 - }, - { - "x": 89.419998168945313, - "y": 3.3299999237060547 - }, - { - "x": 95.430000305175781, - "y": 45.330001831054688 - }, - { - "x": 9.1899995803833008, - "y": 57.669998168945313 - } - ], - "strokeIds": [ - 1, - 2 - ] - }, - { - "boundingRectangle": { - "height": 43.889999389648438, - "topX": 6.9099998474121094, - "topY": 9.9600000381469727, - "width": 84.879997253417969 - }, - "category": "root", - "childIds": [ - 1 - ], - "class": "container", - "id": 0, - "parentId": -1, - "rotatedBoundingRectangle": [ - { - "x": 6.9099998474121094, - "y": 9.9600000381469727 - }, - { - "x": 91.7899957275305, - "y": 9.9600000381469727 - }, - { - "x": 6.9099998474121094, - "y": 53.84999393463135 - }, - { - "x": 91.78999572753905, - "y": 53.84999393463135 - } - ], - "strokeIds": [ - 1, - 2 - ] - } - ] - } - } - } -} diff --git a/specification/cognitiveservices/data-plane/InkRecognizer/readme.csharp.md b/specification/cognitiveservices/data-plane/InkRecognizer/readme.csharp.md deleted file mode 100644 index a632ea692dda..000000000000 --- a/specification/cognitiveservices/data-plane/InkRecognizer/readme.csharp.md +++ /dev/null @@ -1,14 +0,0 @@ -## CSharp - -These settings apply only when `--csharp` is specified on the command line. -Please also specify `--csharp-sdks-folder=`. - -```yaml $(csharp) -csharp: - sync-methods: None - license-header: MICROSOFT_MIT_NO_VERSION - azure-arm: false - namespace: Microsoft.Azure.CognitiveServices.InkRecognizer - output-folder: $(csharp-sdks-folder)/CognitiveServices/dataPlane/InkRecognizer/InkRecognizer/Generated - clear-output-folder: true -``` diff --git a/specification/cognitiveservices/data-plane/InkRecognizer/readme.go.md b/specification/cognitiveservices/data-plane/InkRecognizer/readme.go.md deleted file mode 100644 index 633006836ac5..000000000000 --- a/specification/cognitiveservices/data-plane/InkRecognizer/readme.go.md +++ /dev/null @@ -1,27 +0,0 @@ -## Go - -These settings apply only when `--go` is specified on the command line. - -```yaml $(go) -go: - license-header: MICROSOFT_APACHE_NO_VERSION - namespace: inkrecognizer - clear-output-folder: true - -``` - -### Go multi-api - -```yaml $(go) && $(multiapi) -batch: - - tag: release_1_0 - -``` -### Tag: release_1_0 and go - -These settings apply only when `--tag=release_1_0 --go` is specified on the command line. -Please also specify `--go-sdk-folder=`. - -```yaml $(tag) == 'release_1_0' && $(go) -output-folder: $(go-sdk-folder)/services/preview/cognitiveservices/v1.0/$(namespace) -``` diff --git a/specification/cognitiveservices/data-plane/InkRecognizer/readme.md b/specification/cognitiveservices/data-plane/InkRecognizer/readme.md deleted file mode 100644 index 726cbbe9a406..000000000000 --- a/specification/cognitiveservices/data-plane/InkRecognizer/readme.md +++ /dev/null @@ -1,109 +0,0 @@ -# InkRecognizer - -> see https://aka.ms/autorest - -This is the AutoRest configuration file for InkRecognizer. - -## Getting Started - -To build the SDKs for My API, simply install AutoRest via `npm` (`npm install -g autorest`) and then run: - -> `autorest readme.md` - -To see additional help and options, run: - -> `autorest --help` - -For other options on installation see [Installing AutoRest](https://aka.ms/autorest/install) on the AutoRest github page. - ---- - -## Configuration - -### Basic Information - -These are the global settings for the InkRecognizer. - -```yaml -tag: release_1_0 -add-credentials: true -openapi-type: data-plane -``` - -### Tag: release_1_0 - -These settings apply only when `--tag=release_1_0` is specified on the command line. - -```yaml $(tag) == 'release_1_0' -input-file: - - preview/v1.0/InkRecognizer.json -``` - ---- - -# Code Generation - -## Swagger to SDK - -This section describes what SDK should be generated by the automatic system. -This is not used by Autorest itself. - -```yaml $(swagger-to-sdk) -swagger-to-sdk: - - repo: azure-sdk-for-python - - repo: azure-sdk-for-java - - repo: azure-sdk-for-go - - repo: azure-sdk-for-js - - repo: azure-sdk-for-ruby - after_scripts: - - bundle install && rake arm:regen_all_profiles['azure_cognitiveservices_inkrecognizer'] -``` - -## Go - -See configuration in [readme.go.md](./readme.go.md) - -## Python - -See configuration in [readme.python.md](./readme.python.md) - -## Ruby - -See configuration in [readme.ruby.md](./readme.ruby.md) - -## TypeScript - -See configuration in [readme.typescript.md](./readme.typescript.md) - -## CSharp - -See configuration in [readme.csharp.md](./readme.csharp.md) - -## NodeJS - -See configuration in [readme.nodejs.md](./readme.nodejs.md) - -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/preview/v1.0/InkRecognizer.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/cognitiveservices/data-plane/InkRecognizer/readme.nodejs.md b/specification/cognitiveservices/data-plane/InkRecognizer/readme.nodejs.md deleted file mode 100644 index 7b15d029e429..000000000000 --- a/specification/cognitiveservices/data-plane/InkRecognizer/readme.nodejs.md +++ /dev/null @@ -1,14 +0,0 @@ -## Node.js - -These settings apply only when `--nodejs` is specified on the command line. -Please also specify `--node-sdk-folder=`. - -```yaml $(nodejs) -nodejs: - package-name: azure-cognitiveservices-inkrecognizer - output-folder: $(node-sdks-folder)/lib/services/cognitiveServicesInkRecognizer - azure-arm: false - generate-license-txt: true - generate-package-json: true - generate-readme-md: false -``` diff --git a/specification/cognitiveservices/data-plane/InkRecognizer/readme.python.md b/specification/cognitiveservices/data-plane/InkRecognizer/readme.python.md deleted file mode 100644 index e0dbc6d3712e..000000000000 --- a/specification/cognitiveservices/data-plane/InkRecognizer/readme.python.md +++ /dev/null @@ -1,26 +0,0 @@ -## Python - -These settings apply only when `--python` is specified on the command line. -Please also specify `--python-sdks-folder=`. - -```yaml $(python) -python-mode: create -python: - license-header: MICROSOFT_MIT_NO_VERSION - add-credentials: true - payload-flattening-threshold: 2 - namespace: azure.cognitiveservices.inkrecognizer - package-name: azure-cognitiveservices-inkrecognizer - package-version: 0.2.0 - clear-output-folder: true -``` -``` yaml $(python) && $(python-mode) == 'update' -python: - no-namespace-folders: true - output-folder: $(python-sdks-folder)/cognitiveservices/azure-cognitiveservices-inkrecognizer/azure/cognitiveservices/inkrecognizer -``` -``` yaml $(python) && $(python-mode) == 'create' -python: - basic-setup-py: true - output-folder: $(python-sdks-folder)/cognitiveservices/azure-cognitiveservices-inkrecognizer -``` diff --git a/specification/cognitiveservices/data-plane/InkRecognizer/readme.ruby.md b/specification/cognitiveservices/data-plane/InkRecognizer/readme.ruby.md deleted file mode 100644 index 22b3b60b7fb5..000000000000 --- a/specification/cognitiveservices/data-plane/InkRecognizer/readme.ruby.md +++ /dev/null @@ -1,26 +0,0 @@ -## Ruby - -These settings apply only when `--ruby` is specified on the command line. - -```yaml -package-name: azure_cognitiveservices_inkrecognizer -package-version: "0.16.0" -azure-arm: true -``` -### Ruby multi-api - -``` yaml $(ruby) && $(multiapi) -batch: - - tag: release_1_0 -``` - -### Tag: release_1_0 and ruby - -These settings apply only when `--tag=release_1_0 --ruby` is specified on the command line. -Please also specify `--ruby-sdks-folder=`. - -``` yaml $(tag) == 'release_1_0' && $(ruby) -namespace: "Azure::CognitiveServices::InkRecognizer::V1_0" -output-folder: $(ruby-sdks-folder)/data/azure_cognitiveservices_inkrecognizer/lib -title: "InkRecognizerClient" -``` diff --git a/specification/cognitiveservices/data-plane/InkRecognizer/readme.typescript.md b/specification/cognitiveservices/data-plane/InkRecognizer/readme.typescript.md deleted file mode 100644 index dda74106e2c8..000000000000 --- a/specification/cognitiveservices/data-plane/InkRecognizer/readme.typescript.md +++ /dev/null @@ -1,12 +0,0 @@ -## TypeScript - -These settings apply only when `--typescript` is specified on the command line. -Please also specify `--typescript-sdks-folder=`. - -```yaml $(typescript) -typescript: - package-name: "@azure/cognitiveservices-inkrecognizer" - output-folder: "$(typescript-sdks-folder)/sdk/cognitiveservices/cognitiveservices-inkrecognizer" - azure-arm: false - generate-metadata: true -``` diff --git a/specification/cognitiveservices/data-plane/LUIS/Authoring/readme.go.md b/specification/cognitiveservices/data-plane/LUIS/Authoring/readme.go.md index a8c6c825e2bc..a32d57aebb46 100644 --- a/specification/cognitiveservices/data-plane/LUIS/Authoring/readme.go.md +++ b/specification/cognitiveservices/data-plane/LUIS/Authoring/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: authoring clear-output-folder: true ``` diff --git a/specification/cognitiveservices/data-plane/LUIS/Runtime/readme.go.md b/specification/cognitiveservices/data-plane/LUIS/Runtime/readme.go.md index 01f58b6c88ce..0d446227f131 100644 --- a/specification/cognitiveservices/data-plane/LUIS/Runtime/readme.go.md +++ b/specification/cognitiveservices/data-plane/LUIS/Runtime/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: runtime clear-output-folder: true ``` diff --git a/specification/cognitiveservices/data-plane/LocalSearch/readme.go.md b/specification/cognitiveservices/data-plane/LocalSearch/readme.go.md index 89b2d8281c88..c58f53cece74 100644 --- a/specification/cognitiveservices/data-plane/LocalSearch/readme.go.md +++ b/specification/cognitiveservices/data-plane/LocalSearch/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: localsearch clear-output-folder: true ``` diff --git a/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/MetricsAdvisor.json b/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/MetricsAdvisor.json index 87cc75e87320..0d5db509f29c 100644 --- a/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/MetricsAdvisor.json +++ b/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/MetricsAdvisor.json @@ -1,8 +1,8 @@ { "swagger": "2.0", "info": { - "title": "Azure Cognitive Service Metrics Advisor REST API (OpenAPI v2)", - "description": "Azure Cognitive Service Metrics Advisor REST API (OpenAPI v2)", + "title": "Microsoft Azure Metrics Advisor REST API (OpenAPI v2)", + "description": "Microsoft Azure Metrics Advisor REST API (OpenAPI v2)", "version": "1.0" }, "paths": { @@ -109,8 +109,11 @@ } ], "responses": { - "204": { - "description": "Success" + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/AnomalyAlertingConfiguration" + } }, "default": { "description": "Client error or server error (4xx or 5xx)", @@ -241,8 +244,8 @@ }, { "in": "query", - "name": "$top", - "description": "for paging, item number in response", + "name": "$maxpagesize", + "description": "the maximum number of items in one page", "type": "integer", "format": "int32" }, @@ -315,8 +318,8 @@ }, { "in": "query", - "name": "$top", - "description": "for paging, item number in response", + "name": "$maxpagesize", + "description": "the maximum number of items in one page", "type": "integer", "format": "int32" } @@ -380,8 +383,8 @@ }, { "in": "query", - "name": "$top", - "description": "for paging, item number in response", + "name": "$maxpagesize", + "description": "the maximum number of items in one page", "type": "integer", "format": "int32" } @@ -482,8 +485,11 @@ } ], "responses": { - "204": { - "description": "Success" + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/AnomalyDetectionConfiguration" + } }, "default": { "description": "Client error or server error (4xx or 5xx)", @@ -588,7 +594,7 @@ "tags": [ "AnomalyDetection" ], - "summary": "Query all anomaly alerting configurations for specific anomaly detection configuration", + "summary": "List all anomaly alerting configurations for specific anomaly detection configuration", "operationId": "getAnomalyAlertingConfigurationsByAnomalyDetectionConfiguration", "produces": [ "application/json" @@ -601,6 +607,20 @@ "required": true, "type": "string", "format": "uuid" + }, + { + "in": "query", + "name": "$skip", + "description": "for paging, skipped number", + "type": "integer", + "format": "int32" + }, + { + "in": "query", + "name": "$maxpagesize", + "description": "the maximum number of items in one page", + "type": "integer", + "format": "int32" } ], "responses": { @@ -617,8 +637,11 @@ } } }, + "x-ms-pageable": { + "nextLinkName": "@nextLink" + }, "x-ms-examples": { - "Query all anomaly alerting configurations for specific anomaly detection configuration": { + "List all anomaly alerting configurations for specific anomaly detection configuration": { "$ref": "./examples/getAnomalyAlertingConfigurationsByAnomalyDetectionConfiguration.json" } } @@ -708,8 +731,8 @@ }, { "in": "query", - "name": "$top", - "description": "for paging, item number in response", + "name": "$maxpagesize", + "description": "the maximum number of items in one page", "type": "integer", "format": "int32" }, @@ -778,8 +801,8 @@ }, { "in": "query", - "name": "$top", - "description": "for paging, item number in response", + "name": "$maxpagesize", + "description": "the maximum number of items in one page", "type": "integer", "format": "int32" }, @@ -841,8 +864,8 @@ }, { "in": "query", - "name": "$top", - "description": "for paging, item number in response", + "name": "$maxpagesize", + "description": "the maximum number of items in one page", "type": "integer", "format": "int32" }, @@ -899,8 +922,8 @@ }, { "in": "query", - "name": "$top", - "description": "for paging, item number in response", + "name": "$maxpagesize", + "description": "the maximum number of items in one page", "type": "integer", "format": "int32" }, @@ -983,6 +1006,230 @@ } } }, + "/credentials": { + "post": { + "tags": [ + "Credential" + ], + "summary": "Create a new data source credential", + "operationId": "createCredential", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "body", + "name": "body", + "description": "Create data source credential request", + "required": true, + "schema": { + "$ref": "#/definitions/DataSourceCredential" + } + } + ], + "responses": { + "201": { + "description": "Success", + "headers": { + "Location": { + "description": "Location of the newly created resource.", + "type": "string" + } + } + }, + "default": { + "description": "Client error or server error (4xx or 5xx)", + "schema": { + "$ref": "#/definitions/ErrorCode" + } + } + }, + "x-ms-examples": { + "Create a new data source credential": { + "$ref": "./examples/createCredential.json" + } + } + }, + "get": { + "tags": [ + "Credential" + ], + "summary": "List all credentials", + "operationId": "listCredentials", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "query", + "name": "$skip", + "description": "for paging, skipped number", + "type": "integer", + "format": "int32" + }, + { + "in": "query", + "name": "$maxpagesize", + "description": "the maximum number of items in one page", + "type": "integer", + "format": "int32" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DataSourceCredentialList" + } + }, + "default": { + "description": "Client error or server error (4xx or 5xx)", + "schema": { + "$ref": "#/definitions/ErrorCode" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "@nextLink" + }, + "x-ms-examples": { + "List all credentials": { + "$ref": "./examples/listCredentials.json" + } + } + } + }, + "/credentials/{credentialId}": { + "patch": { + "tags": [ + "Credential" + ], + "summary": "Update a data source credential", + "operationId": "updateCredential", + "consumes": [ + "application/merge-patch+json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "credentialId", + "description": "Data source credential unique ID", + "required": true, + "type": "string", + "format": "uuid" + }, + { + "in": "body", + "name": "body", + "description": "Update data source credential request", + "required": true, + "schema": { + "$ref": "#/definitions/DataSourceCredentialPatch" + } + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DataSourceCredential" + } + }, + "default": { + "description": "Client error or server error (4xx or 5xx)", + "schema": { + "$ref": "#/definitions/ErrorCode" + } + } + }, + "x-ms-examples": { + "Update a data source credential": { + "$ref": "./examples/updateCredential.json" + } + } + }, + "delete": { + "tags": [ + "Credential" + ], + "summary": "Delete a data source credential", + "operationId": "deleteCredential", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "credentialId", + "description": "Data source credential unique ID", + "required": true, + "type": "string", + "format": "uuid" + } + ], + "responses": { + "204": { + "description": "The resource is deleted successfully or does not exist." + }, + "default": { + "description": "Client error or server error (4xx or 5xx)", + "schema": { + "$ref": "#/definitions/ErrorCode" + } + } + }, + "x-ms-examples": { + "Delete a data source credential": { + "$ref": "./examples/deleteCredential.json" + } + } + }, + "get": { + "tags": [ + "Credential" + ], + "summary": "Get a data source credential", + "operationId": "getCredential", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "credentialId", + "description": "Data source credential unique ID", + "required": true, + "type": "string", + "format": "uuid" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DataSourceCredential" + } + }, + "default": { + "description": "Client error or server error (4xx or 5xx)", + "schema": { + "$ref": "#/definitions/ErrorCode" + } + } + }, + "x-ms-examples": { + "Get a data source credential": { + "$ref": "./examples/getCredential.json" + } + } + } + }, "/dataFeeds": { "get": { "tags": [ @@ -1011,9 +1258,9 @@ "AzureCosmosDB", "AzureDataExplorer", "AzureDataLakeStorageGen2", + "AzureEventHubs", + "AzureLogAnalytics", "AzureTable", - "Elasticsearch", - "HttpRequest", "InfluxDB", "MongoDB", "MySql", @@ -1037,7 +1284,6 @@ "Daily", "Hourly", "Minutely", - "Secondly", "Custom" ], "x-ms-enum": { @@ -1074,8 +1320,8 @@ }, { "in": "query", - "name": "$top", - "description": "for paging, item number in response", + "name": "$maxpagesize", + "description": "the maximum number of items in one page", "type": "integer", "format": "int32" } @@ -1222,8 +1468,11 @@ } ], "responses": { - "204": { - "description": "Success" + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DataFeedDetail" + } }, "default": { "description": "Client error or server error (4xx or 5xx)", @@ -1339,8 +1588,8 @@ }, { "in": "query", - "name": "$top", - "description": "for paging, item number in response", + "name": "$maxpagesize", + "description": "the maximum number of items in one page", "type": "integer", "format": "int32" }, @@ -1452,8 +1701,8 @@ }, { "in": "query", - "name": "$top", - "description": "for paging, item number in response", + "name": "$maxpagesize", + "description": "the maximum number of items in one page", "type": "integer", "format": "int32" } @@ -1600,8 +1849,11 @@ } ], "responses": { - "204": { - "description": "Success" + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/HookInfo" + } }, "default": { "description": "Client error or server error (4xx or 5xx)", @@ -1684,8 +1936,8 @@ }, { "in": "query", - "name": "$top", - "description": "for paging, item number in response", + "name": "$maxpagesize", + "description": "the maximum number of items in one page", "type": "integer", "format": "int32" }, @@ -1898,8 +2150,8 @@ }, { "in": "query", - "name": "$top", - "description": "for paging, item number in response", + "name": "$maxpagesize", + "description": "the maximum number of items in one page", "type": "integer", "format": "int32" }, @@ -1968,8 +2220,8 @@ }, { "in": "query", - "name": "$top", - "description": "for paging, item number in response", + "name": "$maxpagesize", + "description": "the maximum number of items in one page", "type": "integer", "format": "int32" }, @@ -2012,7 +2264,7 @@ "tags": [ "Metric" ], - "summary": "Query all anomaly detection configurations for specific metric", + "summary": "List all anomaly detection configurations for specific metric", "operationId": "getAnomalyDetectionConfigurationsByMetric", "produces": [ "application/json" @@ -2025,6 +2277,20 @@ "required": true, "type": "string", "format": "uuid" + }, + { + "in": "query", + "name": "$skip", + "description": "for paging, skipped number", + "type": "integer", + "format": "int32" + }, + { + "in": "query", + "name": "$maxpagesize", + "description": "the maximum number of items in one page", + "type": "integer", + "format": "int32" } ], "responses": { @@ -2041,8 +2307,11 @@ } } }, + "x-ms-pageable": { + "nextLinkName": "@nextLink" + }, "x-ms-examples": { - "Query all anomaly detection configurations for specific metric": { + "List all anomaly detection configurations for specific metric": { "$ref": "./examples/getAnomalyDetectionConfigurationsByMetric.json" } } @@ -2079,8 +2348,8 @@ }, { "in": "query", - "name": "$top", - "description": "for paging, item number in response", + "name": "$maxpagesize", + "description": "the maximum number of items in one page", "type": "integer", "format": "int32" }, @@ -2301,6 +2570,19 @@ "modelAsString": true } }, + "type": { + "description": "data used to implement value filter", + "default": "Value", + "enum": [ + "Value", + "Mean" + ], + "type": "string", + "x-ms-enum": { + "name": "ValueType", + "modelAsString": true + } + }, "metricId": { "format": "uuid", "description": "the other metric unique id used for value filter", @@ -2340,6 +2622,7 @@ }, "negationOperation": { "description": "Negation operation", + "default": false, "type": "boolean" }, "dimensionAnomalyScope": { @@ -2379,6 +2662,7 @@ }, "description": { "description": "anomaly alerting configuration description", + "default": "", "type": "string" }, "crossMetricsOperator": { @@ -2394,6 +2678,14 @@ "modelAsString": true } }, + "splitAlertByDimensions": { + "description": "dimensions used to split alert", + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, "hookIds": { "description": "hook unique ids", "uniqueItems": true, @@ -2454,7 +2746,8 @@ "valueFilter": { "lower": 0.0, "upper": 1000.0, - "direction": "Both" + "direction": "Both", + "type": "Value" } } ] @@ -2469,6 +2762,7 @@ }, "description": { "description": "anomaly alerting configuration description", + "default": "", "type": "string" }, "crossMetricsOperator": { @@ -2484,8 +2778,16 @@ "modelAsString": true } }, - "hookIds": { - "description": "hook unique ids", + "splitAlertByDimensions": { + "description": "dimensions used to split alert", + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "hookIds": { + "description": "hook unique ids", "uniqueItems": true, "type": "array", "items": { @@ -2666,6 +2968,18 @@ "name": "AnomalyStatus", "modelAsString": true } + }, + "value": { + "format": "double", + "description": "value of the anomaly", + "type": "number", + "readOnly": true + }, + "expectedValue": { + "format": "double", + "description": "expected value of the anomaly given by smart detector", + "type": "number", + "readOnly": true } } }, @@ -2677,6 +2991,12 @@ ], "type": "object", "properties": { + "dataFeedId": { + "format": "uuid", + "description": "data feed unique id\r\n\r\nonly return for alerting anomaly result", + "type": "string", + "readOnly": true + }, "metricId": { "format": "uuid", "description": "metric unique id\r\n\r\nonly return for alerting anomaly result", @@ -2782,6 +3102,18 @@ "name": "IncidentStatus", "modelAsString": true } + }, + "valueOfRootNode": { + "format": "double", + "description": "value of the root node", + "type": "number", + "readOnly": true + }, + "expectedValueOfRootNode": { + "format": "double", + "description": "expected value of the root node given by smart detector", + "type": "number", + "readOnly": true } } }, @@ -2795,6 +3127,12 @@ ], "type": "object", "properties": { + "dataFeedId": { + "format": "uuid", + "description": "data feed unique id\r\n\r\nonly return for alerting anomaly result", + "type": "string", + "readOnly": true + }, "metricId": { "format": "uuid", "description": "metric unique id\r\n\r\nonly return for alerting incident result", @@ -3084,6 +3422,7 @@ }, "description": { "description": "anomaly detection configuration description", + "default": "", "type": "string" }, "metricId": { @@ -3222,6 +3561,139 @@ ] } }, + "SuppressConditionPatch": { + "type": "object", + "properties": { + "minNumber": { + "format": "int32", + "description": "min point number, value range : [1, +∞)", + "type": "integer" + }, + "minRatio": { + "format": "double", + "description": "min point ratio, value range : (0, 100]", + "type": "number" + } + } + }, + "SmartDetectionConditionPatch": { + "type": "object", + "properties": { + "sensitivity": { + "format": "double", + "description": "sensitivity, value range : (0, 100]", + "type": "number" + }, + "anomalyDetectorDirection": { + "description": "detection direction", + "enum": [ + "Both", + "Down", + "Up" + ], + "type": "string", + "x-ms-enum": { + "name": "AnomalyDetectorDirection", + "modelAsString": true + } + }, + "suppressCondition": { + "$ref": "#/definitions/SuppressConditionPatch" + } + } + }, + "HardThresholdConditionPatch": { + "type": "object", + "properties": { + "lowerBound": { + "format": "double", + "description": "lower bound\r\n\r\nshould be specified when anomalyDetectorDirection is Both or Down", + "type": "number" + }, + "upperBound": { + "format": "double", + "description": "upper bound\r\n\r\nshould be specified when anomalyDetectorDirection is Both or Up", + "type": "number" + }, + "anomalyDetectorDirection": { + "description": "detection direction", + "enum": [ + "Both", + "Down", + "Up" + ], + "type": "string", + "x-ms-enum": { + "name": "AnomalyDetectorDirection", + "modelAsString": true + } + }, + "suppressCondition": { + "$ref": "#/definitions/SuppressConditionPatch" + } + } + }, + "ChangeThresholdConditionPatch": { + "type": "object", + "properties": { + "changePercentage": { + "format": "double", + "description": "change percentage, value range : [0, +∞)", + "type": "number" + }, + "shiftPoint": { + "format": "int32", + "description": "shift point, value range : [1, +∞)", + "type": "integer" + }, + "withinRange": { + "description": "if the withinRange = true, detected data is abnormal when the value falls in the range, in this case anomalyDetectorDirection must be Both\r\nif the withinRange = false, detected data is abnormal when the value falls out of the range", + "type": "boolean" + }, + "anomalyDetectorDirection": { + "description": "detection direction", + "enum": [ + "Both", + "Down", + "Up" + ], + "type": "string", + "x-ms-enum": { + "name": "AnomalyDetectorDirection", + "modelAsString": true + } + }, + "suppressCondition": { + "$ref": "#/definitions/SuppressConditionPatch" + } + } + }, + "WholeMetricConfigurationPatch": { + "type": "object", + "properties": { + "conditionOperator": { + "description": "condition operator\r\n\r\nshould be specified when combining multiple detection conditions", + "enum": [ + "AND", + "OR" + ], + "type": "string", + "x-ms-enum": { + "name": "AnomalyDetectionConfigurationLogicType", + "modelAsString": true + } + }, + "smartDetectionCondition": { + "$ref": "#/definitions/SmartDetectionConditionPatch" + }, + "hardThresholdCondition": { + "$ref": "#/definitions/HardThresholdConditionPatch" + }, + "changeThresholdCondition": { + "$ref": "#/definitions/ChangeThresholdConditionPatch" + } + } + }, "AnomalyDetectionConfigurationPatch": { "type": "object", "properties": { @@ -3231,10 +3703,11 @@ }, "description": { "description": "anomaly detection configuration description", + "default": "", "type": "string" }, "wholeMetricConfiguration": { - "$ref": "#/definitions/WholeMetricConfiguration" + "$ref": "#/definitions/WholeMetricConfigurationPatch" }, "dimensionGroupOverrideConfigurations": { "description": "detection configuration for series group", @@ -3254,184 +3727,84 @@ } }, "example": { - "name": "Anomaly detection configuration name", - "description": "Anomaly detection configuration description", "wholeMetricConfiguration": { - "conditionOperator": "AND", "smartDetectionCondition": { - "sensitivity": 91.0, - "anomalyDetectorDirection": "Both", - "suppressCondition": { - "minNumber": 1, - "minRatio": 100.0 - } - }, - "hardThresholdCondition": { - "lowerBound": 1.0, - "upperBound": 100.0, - "anomalyDetectorDirection": "Both", - "suppressCondition": { - "minNumber": 1, - "minRatio": 100.0 - } + "sensitivity": 91.0 + } + } + } + }, + "AnomalyAlertingConfigurationList": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AnomalyAlertingConfiguration" }, - "changeThresholdCondition": { - "changePercentage": 5.0, - "shiftPoint": 1, - "withinRange": false, - "anomalyDetectorDirection": "Both", - "suppressCondition": { - "minNumber": 1, - "minRatio": 100.0 + "readOnly": true + }, + "@nextLink": { + "type": "string", + "readOnly": true + } + } + }, + "DetectionSeriesQuery": { + "required": [ + "endTime", + "series", + "startTime" + ], + "type": "object", + "properties": { + "startTime": { + "format": "date-time", + "description": "This is inclusive. The maximum number of data points (series number * time range) is 10000.", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "This is exclusive. The maximum number of data points (series number * time range) is 10000.", + "type": "string" + }, + "series": { + "description": "The series to be queried. The identity must be able to define one single time series instead of a group of time series. The maximum number of series is 100.", + "uniqueItems": true, + "type": "array", + "items": { + "$ref": "#/definitions/SeriesIdentity" + } + } + }, + "example": { + "startTime": "2020-01-01T00:00:00Z", + "endTime": "2020-02-01T00:00:00Z", + "series": [ + { + "dimension": { + "category": "Jewelry", + "city": "Beijing" } } - }, - "dimensionGroupOverrideConfigurations": [ - { - "group": { - "dimension": { - "city": "Beijing" - } - }, - "conditionOperator": "AND", - "smartDetectionCondition": { - "sensitivity": 91.0, - "anomalyDetectorDirection": "Both", - "suppressCondition": { - "minNumber": 1, - "minRatio": 100.0 - } - }, - "hardThresholdCondition": { - "lowerBound": 1.0, - "upperBound": 100.0, - "anomalyDetectorDirection": "Both", - "suppressCondition": { - "minNumber": 1, - "minRatio": 100.0 - } - }, - "changeThresholdCondition": { - "changePercentage": 5.0, - "shiftPoint": 1, - "withinRange": false, - "anomalyDetectorDirection": "Both", - "suppressCondition": { - "minNumber": 1, - "minRatio": 100.0 - } - } - } - ], - "seriesOverrideConfigurations": [ - { - "series": { - "dimension": { - "category": "Jewelry", - "city": "Beijing" - } - }, - "conditionOperator": "AND", - "smartDetectionCondition": { - "sensitivity": 91.0, - "anomalyDetectorDirection": "Both", - "suppressCondition": { - "minNumber": 1, - "minRatio": 100.0 - } - }, - "hardThresholdCondition": { - "lowerBound": 1.0, - "upperBound": 100.0, - "anomalyDetectorDirection": "Both", - "suppressCondition": { - "minNumber": 1, - "minRatio": 100.0 - } - }, - "changeThresholdCondition": { - "changePercentage": 5.0, - "shiftPoint": 1, - "withinRange": false, - "anomalyDetectorDirection": "Both", - "suppressCondition": { - "minNumber": 1, - "minRatio": 100.0 - } - } - } - ] - } - }, - "AnomalyAlertingConfigurationList": { - "required": [ - "value" - ], - "type": "object", - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/AnomalyAlertingConfiguration" - } - } - } - }, - "DetectionSeriesQuery": { - "required": [ - "endTime", - "series", - "startTime" - ], - "type": "object", - "properties": { - "startTime": { - "format": "date-time", - "description": "start time", - "type": "string" - }, - "endTime": { - "format": "date-time", - "description": "end time", - "type": "string" - }, - "series": { - "description": "series", - "uniqueItems": true, - "type": "array", - "items": { - "$ref": "#/definitions/SeriesIdentity" - } - } - }, - "example": { - "startTime": "2020-01-01T00:00:00Z", - "endTime": "2020-02-01T00:00:00Z", - "series": [ - { - "dimension": { - "category": "Jewelry", - "city": "Beijing" - } - } - ] - } - }, - "SeriesResult": { - "required": [ - "expectedValueList", - "isAnomalyList", - "lowerBoundaryList", - "periodList", - "series", - "timestampList", - "upperBoundaryList", - "valueList" - ], - "type": "object", - "properties": { - "series": { - "$ref": "#/definitions/SeriesIdentity" + ] + } + }, + "SeriesResult": { + "required": [ + "expectedValueList", + "isAnomalyList", + "lowerBoundaryList", + "periodList", + "series", + "timestampList", + "upperBoundaryList", + "valueList" + ], + "type": "object", + "properties": { + "series": { + "$ref": "#/definitions/SeriesIdentity" }, "timestampList": { "description": "timestamps of the series", @@ -3741,100 +4114,459 @@ } } }, - "AzureApplicationInsightsParameter": { + "AzureSQLConnectionStringParam": { + "type": "object", + "properties": { + "connectionString": { + "description": "The connection string to access the Azure SQL.", + "type": "string" + } + } + }, + "DataSourceCredential": { "required": [ - "apiKey", - "applicationId", - "azureCloud", - "query" + "dataSourceCredentialName", + "dataSourceCredentialType" ], "type": "object", "properties": { - "azureCloud": { - "description": "Azure cloud environment", - "type": "string" + "dataSourceCredentialType": { + "description": "Type of data source credential", + "enum": [ + "AzureSQLConnectionString", + "DataLakeGen2SharedKey", + "ServicePrincipal", + "ServicePrincipalInKV" + ], + "type": "string", + "x-ms-enum": { + "name": "DataSourceCredentialType", + "modelAsString": true + } }, - "applicationId": { - "description": "Azure Application Insights ID", - "type": "string" + "dataSourceCredentialId": { + "format": "uuid", + "description": "Unique id of data source credential", + "type": "string", + "readOnly": true }, - "apiKey": { - "description": "API Key", + "dataSourceCredentialName": { + "description": "Name of data source credential", "type": "string" }, - "query": { - "description": "Query", + "dataSourceCredentialDescription": { + "description": "Description of data source credential", "type": "string" } + }, + "discriminator": "dataSourceCredentialType", + "example": { + "parameters": { + "clientId": "88888888-8888-8888-8888-888888888888", + "clientSecret": "fake-client-secret", + "tenantId": "12345678-1234-1234-1234-123456788888" + }, + "dataSourceCredentialName": "A data source credential", + "dataSourceCredentialDescription": "This is a data source credential", + "dataSourceCredentialType": "ServicePrincipal" } }, - "Metric": { + "AzureSQLConnectionStringCredential": { "required": [ - "metricName" + "parameters" ], "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSourceCredential" + } + ], "properties": { - "metricId": { - "format": "uuid", - "description": "metric id", - "type": "string", - "readOnly": true - }, - "metricName": { - "description": "metric name", + "parameters": { + "$ref": "#/definitions/AzureSQLConnectionStringParam" + } + }, + "x-ms-discriminator-value": "AzureSQLConnectionString" + }, + "DataLakeGen2SharedKeyParam": { + "type": "object", + "properties": { + "accountKey": { + "description": "The account key to access the Azure Data Lake Storage Gen2.", + "type": "string" + } + } + }, + "DataLakeGen2SharedKeyCredential": { + "required": [ + "parameters" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSourceCredential" + } + ], + "properties": { + "parameters": { + "$ref": "#/definitions/DataLakeGen2SharedKeyParam" + } + }, + "x-ms-discriminator-value": "DataLakeGen2SharedKey" + }, + "ServicePrincipalParam": { + "required": [ + "clientId", + "tenantId" + ], + "type": "object", + "properties": { + "clientId": { + "description": "The client id of the service principal.", "type": "string" }, - "metricDisplayName": { - "description": "metric display name", - "pattern": "[.a-zA-Z0-9_-]+", + "clientSecret": { + "description": "The client secret of the service principal.", "type": "string" }, - "metricDescription": { - "description": "metric description", + "tenantId": { + "description": "The tenant id of the service principal.", "type": "string" } } }, - "Dimension": { + "ServicePrincipalCredential": { "required": [ - "dimensionName" + "parameters" ], "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSourceCredential" + } + ], "properties": { - "dimensionName": { - "description": "dimension name", + "parameters": { + "$ref": "#/definitions/ServicePrincipalParam" + } + }, + "x-ms-discriminator-value": "ServicePrincipal" + }, + "ServicePrincipalInKVParam": { + "required": [ + "keyVaultClientId", + "keyVaultEndpoint", + "servicePrincipalIdNameInKV", + "servicePrincipalSecretNameInKV", + "tenantId" + ], + "type": "object", + "properties": { + "keyVaultEndpoint": { + "description": "The Key Vault endpoint that storing the service principal.", "type": "string" }, - "dimensionDisplayName": { - "description": "dimension display name", - "pattern": "[.a-zA-Z0-9_-]+", + "keyVaultClientId": { + "description": "The Client Id to access the Key Vault.", + "type": "string" + }, + "keyVaultClientSecret": { + "description": "The Client Secret to access the Key Vault.", + "type": "string" + }, + "servicePrincipalIdNameInKV": { + "description": "The secret name of the service principal's client Id in the Key Vault.", + "type": "string" + }, + "servicePrincipalSecretNameInKV": { + "description": "The secret name of the service principal's client secret in the Key Vault.", + "type": "string" + }, + "tenantId": { + "description": "The tenant id of your service principal.", "type": "string" } } }, - "DataFeedDetail": { + "ServicePrincipalInKVCredential": { "required": [ - "dataFeedName", - "dataSourceType", - "dataStartFrom", - "granularityName", - "metrics" + "parameters" ], "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSourceCredential" + } + ], "properties": { - "dataSourceType": { - "description": "data source type", - "enum": [ - "AzureApplicationInsights", - "AzureBlob", - "AzureCosmosDB", - "AzureDataExplorer", - "AzureDataLakeStorageGen2", - "AzureTable", - "Elasticsearch", - "HttpRequest", - "InfluxDB", - "MongoDB", + "parameters": { + "$ref": "#/definitions/ServicePrincipalInKVParam" + } + }, + "x-ms-discriminator-value": "ServicePrincipalInKV" + }, + "DataSourceCredentialList": { + "type": "object", + "properties": { + "@nextLink": { + "type": "string", + "readOnly": true + }, + "value": { + "uniqueItems": true, + "type": "array", + "items": { + "$ref": "#/definitions/DataSourceCredential" + }, + "readOnly": true + } + } + }, + "AzureSQLConnectionStringParamPatch": { + "type": "object", + "properties": { + "connectionString": { + "description": "The connection string to access the Azure SQL.", + "type": "string" + } + } + }, + "DataSourceCredentialPatch": { + "required": [ + "dataSourceCredentialType" + ], + "type": "object", + "properties": { + "dataSourceCredentialType": { + "description": "Type of data source credential", + "enum": [ + "AzureSQLConnectionString", + "DataLakeGen2SharedKey", + "ServicePrincipal", + "ServicePrincipalInKV" + ], + "type": "string", + "x-ms-enum": { + "name": "DataSourceCredentialType", + "modelAsString": true + } + }, + "dataSourceCredentialName": { + "description": "Name of data source credential", + "type": "string" + }, + "dataSourceCredentialDescription": { + "description": "Description of data source credential", + "type": "string" + } + }, + "discriminator": "dataSourceCredentialType", + "example": { + "dataSourceCredentialDescription": "This is a data source credential" + } + }, + "AzureSQLConnectionStringCredentialPatch": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSourceCredentialPatch" + } + ], + "properties": { + "parameters": { + "$ref": "#/definitions/AzureSQLConnectionStringParamPatch" + } + }, + "x-ms-discriminator-value": "AzureSQLConnectionString" + }, + "DataLakeGen2SharedKeyParamPatch": { + "type": "object", + "properties": { + "accountKey": { + "description": "The account key to access the Azure Data Lake Storage Gen2.", + "type": "string" + } + } + }, + "DataLakeGen2SharedKeyCredentialPatch": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSourceCredentialPatch" + } + ], + "properties": { + "parameters": { + "$ref": "#/definitions/DataLakeGen2SharedKeyParamPatch" + } + }, + "x-ms-discriminator-value": "DataLakeGen2SharedKey" + }, + "ServicePrincipalParamPatch": { + "type": "object", + "properties": { + "clientId": { + "description": "The client id of the service principal.", + "type": "string" + }, + "clientSecret": { + "description": "The client secret of the service principal.", + "type": "string" + }, + "tenantId": { + "description": "The tenant id of the service principal.", + "type": "string" + } + } + }, + "ServicePrincipalCredentialPatch": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSourceCredentialPatch" + } + ], + "properties": { + "parameters": { + "$ref": "#/definitions/ServicePrincipalParamPatch" + } + }, + "x-ms-discriminator-value": "ServicePrincipal" + }, + "ServicePrincipalInKVParamPatch": { + "type": "object", + "properties": { + "keyVaultEndpoint": { + "description": "The Key Vault endpoint that storing the service principal.", + "type": "string" + }, + "keyVaultClientId": { + "description": "The Client Id to access the Key Vault.", + "type": "string" + }, + "keyVaultClientSecret": { + "description": "The Client Secret to access the Key Vault.", + "type": "string" + }, + "servicePrincipalIdNameInKV": { + "description": "The secret name of the service principal's client Id in the Key Vault.", + "type": "string" + }, + "servicePrincipalSecretNameInKV": { + "description": "The secret name of the service principal's client secret in the Key Vault.", + "type": "string" + }, + "tenantId": { + "description": "The tenant id of your service principal.", + "type": "string" + } + } + }, + "ServicePrincipalInKVCredentialPatch": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSourceCredentialPatch" + } + ], + "properties": { + "parameters": { + "$ref": "#/definitions/ServicePrincipalInKVParamPatch" + } + }, + "x-ms-discriminator-value": "ServicePrincipalInKV" + }, + "AzureApplicationInsightsParameter": { + "required": [ + "query" + ], + "type": "object", + "properties": { + "azureCloud": { + "description": "The Azure cloud that this Azure Application Insights in", + "type": "string" + }, + "applicationId": { + "description": "The application id of this Azure Application Insights", + "type": "string" + }, + "apiKey": { + "description": "The API Key that can access this Azure Application Insights", + "type": "string" + }, + "query": { + "description": "The statement to query this Azure Application Insights", + "type": "string" + } + } + }, + "Metric": { + "required": [ + "metricName" + ], + "type": "object", + "properties": { + "metricId": { + "format": "uuid", + "description": "metric id", + "type": "string", + "readOnly": true + }, + "metricName": { + "description": "metric name", + "type": "string" + }, + "metricDisplayName": { + "description": "metric display name", + "pattern": "[.a-zA-Z0-9_-]+", + "type": "string" + }, + "metricDescription": { + "description": "metric description", + "type": "string" + } + } + }, + "Dimension": { + "required": [ + "dimensionName" + ], + "type": "object", + "properties": { + "dimensionName": { + "description": "dimension name", + "type": "string" + }, + "dimensionDisplayName": { + "description": "dimension display name", + "pattern": "[.a-zA-Z0-9_-]+", + "type": "string" + } + } + }, + "DataFeedDetail": { + "required": [ + "dataFeedName", + "dataSourceType", + "dataStartFrom", + "granularityName", + "metrics" + ], + "type": "object", + "properties": { + "dataSourceType": { + "description": "data source type", + "enum": [ + "AzureApplicationInsights", + "AzureBlob", + "AzureCosmosDB", + "AzureDataExplorer", + "AzureDataLakeStorageGen2", + "AzureEventHubs", + "AzureLogAnalytics", + "AzureTable", + "InfluxDB", + "MongoDB", "MySql", "PostgreSql", "SqlServer" @@ -3858,6 +4590,7 @@ }, "dataFeedDescription": { "description": "data feed description", + "default": "", "type": "string" }, "granularityName": { @@ -3869,7 +4602,6 @@ "Daily", "Hourly", "Minutely", - "Secondly", "Custom" ], "type": "string", @@ -3901,6 +4633,7 @@ }, "timestampColumn": { "description": "user-defined timestamp column. if timestampColumn is null, start time of every time slice will be used as default value.", + "default": "", "type": "string" }, "dataStartFrom": { @@ -3934,7 +4667,7 @@ }, "needRollup": { "description": "mark if the data feed need rollup", - "default": "NeedRollup", + "default": "NoRollup", "enum": [ "NoRollup", "NeedRollup", @@ -3948,6 +4681,7 @@ }, "rollUpMethod": { "description": "roll up method", + "default": "None", "enum": [ "None", "Sum", @@ -4054,13 +4788,35 @@ }, "actionLinkTemplate": { "description": "action link for alert", + "default": "", + "type": "string" + }, + "authenticationType": { + "description": "authentication type for corresponding data source", + "default": "Basic", + "enum": [ + "Basic", + "ManagedIdentity", + "AzureSQLConnectionString", + "DataLakeGen2SharedKey", + "ServicePrincipal", + "ServicePrincipalInKV" + ], + "type": "string", + "x-ms-enum": { + "name": "AuthenticationTypeEnum", + "modelAsString": true + } + }, + "credentialId": { + "description": "The credential entity id", "type": "string" } }, "discriminator": "dataSourceType", "example": { "dataSourceParameter": { - "connectionString": "Server=your_sql_server,1433;Initial Catalog=your_database;Persist Security Info=False;User ID=your_user;Password=your_password;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;", + "connectionString": "Server=PlaceholderSqlServer,1433;Initial Catalog=PlaceholderDatabase;User ID=PlaceholderUserName;Password=PlaceholderPassword;", "query": "select * from your_table where timestamp = @StartTime" }, "dataFeedName": "Sample - cost/revenue - city/category", @@ -4097,143 +4853,143 @@ "rollUpMethod": "Sum", "allUpIdentification": "__SUM__", "fillMissingPointType": "SmartFilling", - "viewMode": "Private" + "viewMode": "Private", + "authenticationType": "Basic" } }, "AzureApplicationInsightsDataFeed": { + "required": [ + "dataSourceParameter" + ], + "type": "object", "allOf": [ { "$ref": "#/definitions/DataFeedDetail" - }, - { - "type": "object", - "properties": { - "dataSourceParameter": { - "$ref": "#/definitions/AzureApplicationInsightsParameter" - } - } } ], + "properties": { + "dataSourceParameter": { + "$ref": "#/definitions/AzureApplicationInsightsParameter" + } + }, "x-ms-discriminator-value": "AzureApplicationInsights" }, "AzureBlobParameter": { "required": [ "blobTemplate", - "connectionString", "container" ], "type": "object", "properties": { "connectionString": { - "description": "Azure Blob connection string", + "description": "The connection string of this Azure Blob", "type": "string" }, "container": { - "description": "Container", + "description": "The container name in this Azure Blob", "type": "string" }, "blobTemplate": { - "description": "Blob Template", + "description": "The path template in this container", "type": "string" } } }, "AzureBlobDataFeed": { + "required": [ + "dataSourceParameter" + ], + "type": "object", "allOf": [ { "$ref": "#/definitions/DataFeedDetail" - }, - { - "type": "object", - "properties": { - "dataSourceParameter": { - "$ref": "#/definitions/AzureBlobParameter" - } - } } ], + "properties": { + "dataSourceParameter": { + "$ref": "#/definitions/AzureBlobParameter" + } + }, "x-ms-discriminator-value": "AzureBlob" }, "AzureCosmosDBParameter": { "required": [ "collectionId", - "connectionString", "database", "sqlQuery" ], "type": "object", "properties": { "connectionString": { - "description": "Azure CosmosDB connection string", + "description": "The connection string of this Azure CosmosDB", "type": "string" }, "sqlQuery": { - "description": "Query script", + "description": "The statement to query this collection", "type": "string" }, "database": { - "description": "Database name", + "description": "A database name in this Azure CosmosDB", "type": "string" }, "collectionId": { - "description": "Collection id", + "description": "A collection id in this database", "type": "string" } } }, "AzureCosmosDBDataFeed": { + "required": [ + "dataSourceParameter" + ], + "type": "object", "allOf": [ { "$ref": "#/definitions/DataFeedDetail" - }, - { - "type": "object", - "properties": { - "dataSourceParameter": { - "$ref": "#/definitions/AzureCosmosDBParameter" - } - } } ], + "properties": { + "dataSourceParameter": { + "$ref": "#/definitions/AzureCosmosDBParameter" + } + }, "x-ms-discriminator-value": "AzureCosmosDB" }, "SqlSourceParameter": { "required": [ - "connectionString", "query" ], "type": "object", "properties": { "connectionString": { - "description": "Database connection string", + "description": "The connection string of this database", "type": "string" }, "query": { - "description": "Query script", + "description": "The script to query this database", "type": "string" } } }, "AzureDataExplorerDataFeed": { + "required": [ + "dataSourceParameter" + ], + "type": "object", "allOf": [ { "$ref": "#/definitions/DataFeedDetail" - }, - { - "type": "object", - "properties": { - "dataSourceParameter": { - "$ref": "#/definitions/SqlSourceParameter" - } - } } ], + "properties": { + "dataSourceParameter": { + "$ref": "#/definitions/SqlSourceParameter" + } + }, "x-ms-discriminator-value": "AzureDataExplorer" }, "AzureDataLakeStorageGen2Parameter": { "required": [ - "accountKey", - "accountName", "directoryTemplate", "fileSystemName", "fileTemplate" @@ -4241,299 +4997,292 @@ "type": "object", "properties": { "accountName": { - "description": "Account name", + "description": "The account name of this Azure Data Lake", "type": "string" }, "accountKey": { - "description": "Account key", + "description": "The account key that can access this Azure Data Lake", "type": "string" }, "fileSystemName": { - "description": "File system name (Container)", + "description": "The file system (container) name in this Azure Data Lake", "type": "string" }, "directoryTemplate": { - "description": "Directory template", + "description": "The directory template under this file system", "type": "string" }, "fileTemplate": { - "description": "File template", + "description": "The file template", "type": "string" } } }, "AzureDataLakeStorageGen2DataFeed": { - "allOf": [ + "required": [ + "dataSourceParameter" + ], + "type": "object", + "allOf": [ { "$ref": "#/definitions/DataFeedDetail" - }, - { - "type": "object", - "properties": { - "dataSourceParameter": { - "$ref": "#/definitions/AzureDataLakeStorageGen2Parameter" - } - } } ], + "properties": { + "dataSourceParameter": { + "$ref": "#/definitions/AzureDataLakeStorageGen2Parameter" + } + }, "x-ms-discriminator-value": "AzureDataLakeStorageGen2" }, - "AzureTableParameter": { + "AzureEventHubsParameter": { "required": [ - "connectionString", - "query", - "table" + "consumerGroup" ], "type": "object", "properties": { "connectionString": { - "description": "Azure Table connection string", + "description": "The connection string of this Azure Event Hubs", "type": "string" }, - "table": { - "description": "Table name", - "type": "string" - }, - "query": { - "description": "Query script", + "consumerGroup": { + "description": "The consumer group to be used in this data feed", "type": "string" } } }, - "AzureTableDataFeed": { + "AzureEventHubsDataFeed": { + "required": [ + "dataSourceParameter" + ], + "type": "object", "allOf": [ { "$ref": "#/definitions/DataFeedDetail" - }, - { - "type": "object", - "properties": { - "dataSourceParameter": { - "$ref": "#/definitions/AzureTableParameter" - } - } } ], - "x-ms-discriminator-value": "AzureTable" + "properties": { + "dataSourceParameter": { + "$ref": "#/definitions/AzureEventHubsParameter" + } + }, + "x-ms-discriminator-value": "AzureEventHubs" }, - "ElasticsearchParameter": { + "AzureLogAnalyticsParameter": { "required": [ - "authHeader", - "host", - "port", - "query" + "query", + "workspaceId" ], "type": "object", "properties": { - "host": { - "description": "Host", + "tenantId": { + "description": "The tenant id of service principal that have access to this Log Analytics", + "type": "string" + }, + "clientId": { + "description": "The client id of service principal that have access to this Log Analytics", "type": "string" }, - "port": { - "description": "Port", + "clientSecret": { + "description": "The client secret of service principal that have access to this Log Analytics", "type": "string" }, - "authHeader": { - "description": "Authorization header", + "workspaceId": { + "description": "The workspace id of this Log Analytics", "type": "string" }, "query": { - "description": "Query", + "description": "The KQL (Kusto Query Language) query to fetch data from this Log Analytics", "type": "string" } } }, - "ElasticsearchDataFeed": { + "AzureLogAnalyticsDataFeed": { + "required": [ + "dataSourceParameter" + ], + "type": "object", "allOf": [ { "$ref": "#/definitions/DataFeedDetail" - }, - { - "type": "object", - "properties": { - "dataSourceParameter": { - "$ref": "#/definitions/ElasticsearchParameter" - } - } } ], - "x-ms-discriminator-value": "Elasticsearch" + "properties": { + "dataSourceParameter": { + "$ref": "#/definitions/AzureLogAnalyticsParameter" + } + }, + "x-ms-discriminator-value": "AzureLogAnalytics" }, - "HttpRequestParameter": { + "AzureTableParameter": { "required": [ - "httpHeader", - "httpMethod", - "payload", - "url" + "query", + "table" ], "type": "object", "properties": { - "url": { - "description": "HTTP URL", - "type": "string" - }, - "httpHeader": { - "description": "HTTP header", + "connectionString": { + "description": "The connection string of this Azure Table", "type": "string" }, - "httpMethod": { - "description": "HTTP method", + "table": { + "description": "A table name in this Azure Table", "type": "string" }, - "payload": { - "description": "HTTP request body", + "query": { + "description": "The statement to query this table. Please find syntax and details from Azure Table documents.", "type": "string" } } }, - "HttpRequestDataFeed": { + "AzureTableDataFeed": { + "required": [ + "dataSourceParameter" + ], + "type": "object", "allOf": [ { "$ref": "#/definitions/DataFeedDetail" - }, - { - "type": "object", - "properties": { - "dataSourceParameter": { - "$ref": "#/definitions/HttpRequestParameter" - } - } } ], - "x-ms-discriminator-value": "HttpRequest" + "properties": { + "dataSourceParameter": { + "$ref": "#/definitions/AzureTableParameter" + } + }, + "x-ms-discriminator-value": "AzureTable" }, "InfluxDBParameter": { "required": [ - "connectionString", - "database", - "password", - "query", - "userName" + "query" ], "type": "object", "properties": { "connectionString": { - "description": "InfluxDB connection string", + "description": "The connection string of this InfluxDB", "type": "string" }, "database": { - "description": "Database name", + "description": "A database name", "type": "string" }, "userName": { - "description": "Database access user", + "description": "The user name of the account that can access this database", "type": "string" }, "password": { - "description": "Database access password", + "description": "The password of the account that can access this database", "type": "string" }, "query": { - "description": "Query script", + "description": "The script to query this database", "type": "string" } } }, "InfluxDBDataFeed": { + "required": [ + "dataSourceParameter" + ], + "type": "object", "allOf": [ { "$ref": "#/definitions/DataFeedDetail" - }, - { - "type": "object", - "properties": { - "dataSourceParameter": { - "$ref": "#/definitions/InfluxDBParameter" - } - } } ], + "properties": { + "dataSourceParameter": { + "$ref": "#/definitions/InfluxDBParameter" + } + }, "x-ms-discriminator-value": "InfluxDB" }, "MySqlDataFeed": { + "required": [ + "dataSourceParameter" + ], + "type": "object", "allOf": [ { "$ref": "#/definitions/DataFeedDetail" - }, - { - "type": "object", - "properties": { - "dataSourceParameter": { - "$ref": "#/definitions/SqlSourceParameter" - } - } } ], + "properties": { + "dataSourceParameter": { + "$ref": "#/definitions/SqlSourceParameter" + } + }, "x-ms-discriminator-value": "MySql" }, "PostgreSqlDataFeed": { + "required": [ + "dataSourceParameter" + ], + "type": "object", "allOf": [ { "$ref": "#/definitions/DataFeedDetail" - }, - { - "type": "object", - "properties": { - "dataSourceParameter": { - "$ref": "#/definitions/SqlSourceParameter" - } - } } ], + "properties": { + "dataSourceParameter": { + "$ref": "#/definitions/SqlSourceParameter" + } + }, "x-ms-discriminator-value": "PostgreSql" }, "SQLServerDataFeed": { + "required": [ + "dataSourceParameter" + ], + "type": "object", "allOf": [ { "$ref": "#/definitions/DataFeedDetail" - }, - { - "type": "object", - "properties": { - "dataSourceParameter": { - "$ref": "#/definitions/SqlSourceParameter" - } - } } ], + "properties": { + "dataSourceParameter": { + "$ref": "#/definitions/SqlSourceParameter" + } + }, "x-ms-discriminator-value": "SqlServer" }, "MongoDBParameter": { "required": [ - "command", - "connectionString", - "database" + "command" ], "type": "object", "properties": { "connectionString": { - "description": "MongoDB connection string", + "description": "The connection string of this MongoDB", "type": "string" }, "database": { - "description": "Database name", + "description": "A database name in this MongoDB", "type": "string" }, "command": { - "description": "Query script", + "description": "The script to query this database", "type": "string" } } }, "MongoDBDataFeed": { + "required": [ + "dataSourceParameter" + ], + "type": "object", "allOf": [ { "$ref": "#/definitions/DataFeedDetail" - }, - { - "type": "object", - "properties": { - "dataSourceParameter": { - "$ref": "#/definitions/MongoDBParameter" - } - } } ], + "properties": { + "dataSourceParameter": { + "$ref": "#/definitions/MongoDBParameter" + } + }, "x-ms-discriminator-value": "MongoDB" }, "DataFeedList": { @@ -4552,6 +5301,27 @@ } } }, + "AzureApplicationInsightsParameterPatch": { + "type": "object", + "properties": { + "azureCloud": { + "description": "The Azure cloud that this Azure Application Insights in", + "type": "string" + }, + "applicationId": { + "description": "The application id of this Azure Application Insights", + "type": "string" + }, + "apiKey": { + "description": "The API Key that can access this Azure Application Insights", + "type": "string" + }, + "query": { + "description": "The statement to query this Azure Application Insights", + "type": "string" + } + } + }, "DataFeedDetailPatch": { "required": [ "dataSourceType" @@ -4566,9 +5336,9 @@ "AzureCosmosDB", "AzureDataExplorer", "AzureDataLakeStorageGen2", + "AzureEventHubs", + "AzureLogAnalytics", "AzureTable", - "Elasticsearch", - "HttpRequest", "InfluxDB", "MongoDB", "MySql", @@ -4721,222 +5491,386 @@ "actionLinkTemplate": { "description": "action link for alert", "type": "string" + }, + "authenticationType": { + "description": "authentication type for corresponding data source", + "enum": [ + "Basic", + "ManagedIdentity", + "AzureSQLConnectionString", + "DataLakeGen2SharedKey", + "ServicePrincipal", + "ServicePrincipalInKV" + ], + "type": "string", + "x-ms-enum": { + "name": "AuthenticationTypeEnum", + "modelAsString": true + } + }, + "credentialId": { + "description": "The credential entity id", + "type": "string" } }, "discriminator": "dataSourceType" }, "AzureApplicationInsightsDataFeedPatch": { + "type": "object", "allOf": [ { "$ref": "#/definitions/DataFeedDetailPatch" - }, - { - "type": "object", - "properties": { - "dataSourceParameter": { - "$ref": "#/definitions/AzureApplicationInsightsParameter" - } - } } ], + "properties": { + "dataSourceParameter": { + "$ref": "#/definitions/AzureApplicationInsightsParameterPatch" + } + }, "x-ms-discriminator-value": "AzureApplicationInsights" }, + "AzureBlobParameterPatch": { + "type": "object", + "properties": { + "connectionString": { + "description": "The connection string of this Azure Blob", + "type": "string" + }, + "container": { + "description": "The container name in this Azure Blob", + "type": "string" + }, + "blobTemplate": { + "description": "The path template in this container", + "type": "string" + } + } + }, "AzureBlobDataFeedPatch": { + "type": "object", "allOf": [ { "$ref": "#/definitions/DataFeedDetailPatch" - }, - { - "type": "object", - "properties": { - "dataSourceParameter": { - "$ref": "#/definitions/AzureBlobParameter" - } - } } ], + "properties": { + "dataSourceParameter": { + "$ref": "#/definitions/AzureBlobParameterPatch" + } + }, "x-ms-discriminator-value": "AzureBlob" }, + "AzureCosmosDBParameterPatch": { + "type": "object", + "properties": { + "connectionString": { + "description": "The connection string of this Azure CosmosDB", + "type": "string" + }, + "sqlQuery": { + "description": "The statement to query this collection", + "type": "string" + }, + "database": { + "description": "A database name in this Azure CosmosDB", + "type": "string" + }, + "collectionId": { + "description": "A collection id in this database", + "type": "string" + } + } + }, "AzureCosmosDBDataFeedPatch": { + "type": "object", "allOf": [ { "$ref": "#/definitions/DataFeedDetailPatch" - }, - { - "type": "object", - "properties": { - "dataSourceParameter": { - "$ref": "#/definitions/AzureCosmosDBParameter" - } - } } ], + "properties": { + "dataSourceParameter": { + "$ref": "#/definitions/AzureCosmosDBParameterPatch" + } + }, "x-ms-discriminator-value": "AzureCosmosDB" }, + "SQLSourceParameterPatch": { + "type": "object", + "properties": { + "connectionString": { + "description": "The connection string of this database", + "type": "string" + }, + "query": { + "description": "The script to query this database", + "type": "string" + } + } + }, "AzureDataExplorerDataFeedPatch": { + "type": "object", "allOf": [ { "$ref": "#/definitions/DataFeedDetailPatch" - }, - { - "type": "object", - "properties": { - "dataSourceParameter": { - "$ref": "#/definitions/SqlSourceParameter" - } - } } ], + "properties": { + "dataSourceParameter": { + "$ref": "#/definitions/SQLSourceParameterPatch" + } + }, "x-ms-discriminator-value": "AzureDataExplorer" }, + "AzureDataLakeStorageGen2ParameterPatch": { + "type": "object", + "properties": { + "accountName": { + "description": "The account name of this Azure Data Lake", + "type": "string" + }, + "accountKey": { + "description": "The account key that can access this Azure Data Lake", + "type": "string" + }, + "fileSystemName": { + "description": "The file system (container) name in this Azure Data Lake", + "type": "string" + }, + "directoryTemplate": { + "description": "The directory template under this file system", + "type": "string" + }, + "fileTemplate": { + "description": "The file template", + "type": "string" + } + } + }, "AzureDataLakeStorageGen2DataFeedPatch": { + "type": "object", "allOf": [ { "$ref": "#/definitions/DataFeedDetailPatch" - }, - { - "type": "object", - "properties": { - "dataSourceParameter": { - "$ref": "#/definitions/AzureDataLakeStorageGen2Parameter" - } - } } ], + "properties": { + "dataSourceParameter": { + "$ref": "#/definitions/AzureDataLakeStorageGen2ParameterPatch" + } + }, "x-ms-discriminator-value": "AzureDataLakeStorageGen2" }, - "AzureTableDataFeedPatch": { + "AzureEventHubsParameterPatch": { + "type": "object", + "properties": { + "connectionString": { + "description": "The connection string of this Azure Event Hubs", + "type": "string" + }, + "consumerGroup": { + "description": "The consumer group to be used in this data feed", + "type": "string" + } + } + }, + "AzureEventHubsDataFeedPatch": { + "type": "object", "allOf": [ { "$ref": "#/definitions/DataFeedDetailPatch" - }, - { - "type": "object", - "properties": { - "dataSourceParameter": { - "$ref": "#/definitions/AzureTableParameter" - } - } } ], - "x-ms-discriminator-value": "AzureTable" + "properties": { + "dataSourceParameter": { + "$ref": "#/definitions/AzureEventHubsParameterPatch" + } + }, + "x-ms-discriminator-value": "AzureEventHubs" + }, + "AzureLogAnalyticsParameterPatch": { + "type": "object", + "properties": { + "tenantId": { + "description": "The tenant id of service principal that have access to this Log Analytics", + "type": "string" + }, + "clientId": { + "description": "The client id of service principal that have access to this Log Analytics", + "type": "string" + }, + "clientSecret": { + "description": "The client secret of service principal that have access to this Log Analytics", + "type": "string" + }, + "workspaceId": { + "description": "The workspace id of this Log Analytics", + "type": "string" + }, + "query": { + "description": "The KQL (Kusto Query Language) query to fetch data from this Log Analytics", + "type": "string" + } + } }, - "ElasticsearchDataFeedPatch": { + "AzureLogAnalyticsDataFeedPatch": { + "type": "object", "allOf": [ { "$ref": "#/definitions/DataFeedDetailPatch" - }, - { - "type": "object", - "properties": { - "dataSourceParameter": { - "$ref": "#/definitions/ElasticsearchParameter" - } - } } ], - "x-ms-discriminator-value": "Elasticsearch" + "properties": { + "dataSourceParameter": { + "$ref": "#/definitions/AzureLogAnalyticsParameterPatch" + } + }, + "x-ms-discriminator-value": "AzureLogAnalytics" }, - "HttpRequestDataFeedPatch": { + "AzureTableParameterPatch": { + "type": "object", + "properties": { + "connectionString": { + "description": "The connection string of this Azure Table", + "type": "string" + }, + "table": { + "description": "A table name in this Azure Table", + "type": "string" + }, + "query": { + "description": "The statement to query this table. Please find syntax and details from Azure Table documents.", + "type": "string" + } + } + }, + "AzureTableDataFeedPatch": { + "type": "object", "allOf": [ { "$ref": "#/definitions/DataFeedDetailPatch" - }, - { - "type": "object", - "properties": { - "dataSourceParameter": { - "$ref": "#/definitions/HttpRequestParameter" - } - } } ], - "x-ms-discriminator-value": "HttpRequest" + "properties": { + "dataSourceParameter": { + "$ref": "#/definitions/AzureTableParameterPatch" + } + }, + "x-ms-discriminator-value": "AzureTable" + }, + "InfluxDBParameterPatch": { + "type": "object", + "properties": { + "connectionString": { + "description": "The connection string of this InfluxDB", + "type": "string" + }, + "database": { + "description": "A database name", + "type": "string" + }, + "userName": { + "description": "The user name of the account that can access this database", + "type": "string" + }, + "password": { + "description": "The password of the account that can access this database", + "type": "string" + }, + "query": { + "description": "The script to query this database", + "type": "string" + } + } }, "InfluxDBDataFeedPatch": { + "type": "object", "allOf": [ { "$ref": "#/definitions/DataFeedDetailPatch" - }, - { - "type": "object", - "properties": { - "dataSourceParameter": { - "$ref": "#/definitions/InfluxDBParameter" - } - } } ], + "properties": { + "dataSourceParameter": { + "$ref": "#/definitions/InfluxDBParameterPatch" + } + }, "x-ms-discriminator-value": "InfluxDB" }, "MySqlDataFeedPatch": { + "type": "object", "allOf": [ { "$ref": "#/definitions/DataFeedDetailPatch" - }, - { - "type": "object", - "properties": { - "dataSourceParameter": { - "$ref": "#/definitions/SqlSourceParameter" - } - } } ], + "properties": { + "dataSourceParameter": { + "$ref": "#/definitions/SQLSourceParameterPatch" + } + }, "x-ms-discriminator-value": "MySql" }, "PostgreSqlDataFeedPatch": { + "type": "object", "allOf": [ { "$ref": "#/definitions/DataFeedDetailPatch" - }, - { - "type": "object", - "properties": { - "dataSourceParameter": { - "$ref": "#/definitions/SqlSourceParameter" - } - } } ], + "properties": { + "dataSourceParameter": { + "$ref": "#/definitions/SQLSourceParameterPatch" + } + }, "x-ms-discriminator-value": "PostgreSql" }, "SQLServerDataFeedPatch": { + "type": "object", "allOf": [ { "$ref": "#/definitions/DataFeedDetailPatch" - }, - { - "type": "object", - "properties": { - "dataSourceParameter": { - "$ref": "#/definitions/SqlSourceParameter" - } - } } ], + "properties": { + "dataSourceParameter": { + "$ref": "#/definitions/SQLSourceParameterPatch" + } + }, "example": { - "dataFeedName": "Sample - cost/revenue - city/category (modified)", - "viewers": [ - "viewer@company.example" - ] + "dataFeedName": "Sample - cost/revenue - city/category" }, "x-ms-discriminator-value": "SqlServer" }, + "MongoDBParameterPatch": { + "type": "object", + "properties": { + "connectionString": { + "description": "The connection string of this MongoDB", + "type": "string" + }, + "database": { + "description": "A database name in this MongoDB", + "type": "string" + }, + "command": { + "description": "The script to query this database", + "type": "string" + } + } + }, "MongoDBDataFeedPatch": { + "type": "object", "allOf": [ { "$ref": "#/definitions/DataFeedDetailPatch" - }, - { - "type": "object", - "properties": { - "dataSourceParameter": { - "$ref": "#/definitions/MongoDBParameter" - } - } } ], + "properties": { + "dataSourceParameter": { + "$ref": "#/definitions/MongoDBParameterPatch" + } + }, "x-ms-discriminator-value": "MongoDB" }, "AnomalyFeedbackValue": { @@ -5025,37 +5959,40 @@ "discriminator": "feedbackType" }, "AnomalyFeedback": { + "required": [ + "endTime", + "startTime", + "value" + ], + "type": "object", "allOf": [ { "$ref": "#/definitions/MetricFeedback" - }, - { - "type": "object", - "properties": { - "startTime": { - "format": "date-time", - "description": "the start timestamp of feedback time range", - "type": "string" - }, - "endTime": { - "format": "date-time", - "description": "the end timestamp of feedback time range, when equals to startTime means only one timestamp", - "type": "string" - }, - "value": { - "$ref": "#/definitions/AnomalyFeedbackValue" - }, - "anomalyDetectionConfigurationId": { - "format": "uuid", - "description": "the corresponding anomaly detection configuration of this feedback", - "type": "string" - }, - "anomalyDetectionConfigurationSnapshot": { - "$ref": "#/definitions/AnomalyDetectionConfiguration" - } - } } ], + "properties": { + "startTime": { + "format": "date-time", + "description": "the start timestamp of feedback time range", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "the end timestamp of feedback time range, when equals to startTime means only one timestamp", + "type": "string" + }, + "value": { + "$ref": "#/definitions/AnomalyFeedbackValue" + }, + "anomalyDetectionConfigurationId": { + "format": "uuid", + "description": "the corresponding anomaly detection configuration of this feedback", + "type": "string" + }, + "anomalyDetectionConfigurationSnapshot": { + "$ref": "#/definitions/AnomalyDetectionConfiguration" + } + }, "example": { "startTime": "2020-01-01T00:00:00Z", "endTime": "2020-01-01T00:00:00Z", @@ -5094,29 +6031,32 @@ } }, "ChangePointFeedback": { + "required": [ + "endTime", + "startTime", + "value" + ], + "type": "object", "allOf": [ { "$ref": "#/definitions/MetricFeedback" - }, - { - "type": "object", - "properties": { - "startTime": { - "format": "date-time", - "description": "the start timestamp of feedback time range", - "type": "string" - }, - "endTime": { - "format": "date-time", - "description": "the end timestamp of feedback time range, when equals to startTime means only one timestamp", - "type": "string" - }, - "value": { - "$ref": "#/definitions/ChangePointFeedbackValue" - } - } } ], + "properties": { + "startTime": { + "format": "date-time", + "description": "the start timestamp of feedback time range", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "the end timestamp of feedback time range, when equals to startTime means only one timestamp", + "type": "string" + }, + "value": { + "$ref": "#/definitions/ChangePointFeedbackValue" + } + }, "x-ms-discriminator-value": "ChangePoint" }, "CommentFeedbackValue": { @@ -5132,29 +6072,30 @@ } }, "CommentFeedback": { + "required": [ + "value" + ], + "type": "object", "allOf": [ { "$ref": "#/definitions/MetricFeedback" - }, - { - "type": "object", - "properties": { - "startTime": { - "format": "date-time", - "description": "the start timestamp of feedback time range", - "type": "string" - }, - "endTime": { - "format": "date-time", - "description": "the end timestamp of feedback time range, when equals to startTime means only one timestamp", - "type": "string" - }, - "value": { - "$ref": "#/definitions/CommentFeedbackValue" - } - } } ], + "properties": { + "startTime": { + "format": "date-time", + "description": "the start timestamp of feedback time range", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "the end timestamp of feedback time range, when equals to startTime means only one timestamp", + "type": "string" + }, + "value": { + "$ref": "#/definitions/CommentFeedbackValue" + } + }, "x-ms-discriminator-value": "Comment" }, "PeriodFeedbackValue": { @@ -5185,19 +6126,20 @@ } }, "PeriodFeedback": { + "required": [ + "value" + ], + "type": "object", "allOf": [ { "$ref": "#/definitions/MetricFeedback" - }, - { - "type": "object", - "properties": { - "value": { - "$ref": "#/definitions/PeriodFeedbackValue" - } - } } ], + "properties": { + "value": { + "$ref": "#/definitions/PeriodFeedbackValue" + } + }, "x-ms-discriminator-value": "Period" }, "MetricFeedbackFilter": { @@ -5322,10 +6264,12 @@ }, "description": { "description": "hook description", + "default": "", "type": "string" }, "externalLink": { "description": "hook external link", + "default": "", "type": "string" }, "admins": { @@ -5334,26 +6278,26 @@ "type": "array", "items": { "type": "string" - }, - "readOnly": true + } } }, "discriminator": "hookType" }, "EmailHookInfo": { + "required": [ + "hookParameter" + ], + "type": "object", "allOf": [ { "$ref": "#/definitions/HookInfo" - }, - { - "type": "object", - "properties": { - "hookParameter": { - "$ref": "#/definitions/EmailHookParameter" - } - } } ], + "properties": { + "hookParameter": { + "$ref": "#/definitions/EmailHookParameter" + } + }, "x-ms-discriminator-value": "Email" }, "WebhookHookParameter": { @@ -5367,11 +6311,11 @@ "type": "string" }, "username": { - "description": "basic authentication", + "description": "(Deprecated) The username, if using basic authentication", "type": "string" }, "password": { - "description": "basic authentication", + "description": "(Deprecated) The password, if using basic authentication", "type": "string" }, "headers": { @@ -5382,29 +6326,30 @@ } }, "certificateKey": { - "description": "client certificate", + "description": "The certificate key/URL, if using client certificate, please read documents for more informations.", "type": "string" }, "certificatePassword": { - "description": "client certificate password", + "description": "The certificate password, if using client certificate, please read documents for more informations.", "type": "string" } } }, "WebhookHookInfo": { + "required": [ + "hookParameter" + ], + "type": "object", "allOf": [ { "$ref": "#/definitions/HookInfo" - }, - { - "type": "object", - "properties": { - "hookParameter": { - "$ref": "#/definitions/WebhookHookParameter" - } - } } ], + "properties": { + "hookParameter": { + "$ref": "#/definitions/WebhookHookParameter" + } + }, "example": { "hookParameter": { "endpoint": "https://localhost/demo/post" @@ -5433,6 +6378,19 @@ } } }, + "EmailHookParameterPatch": { + "type": "object", + "properties": { + "toList": { + "description": "Email TO: list.", + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + } + } + }, "HookInfoPatch": { "required": [ "hookType" @@ -5469,45 +6427,71 @@ "type": "array", "items": { "type": "string" - }, - "readOnly": true + } } }, "discriminator": "hookType" }, "EmailHookInfoPatch": { + "type": "object", "allOf": [ { "$ref": "#/definitions/HookInfoPatch" + } + ], + "properties": { + "hookParameter": { + "$ref": "#/definitions/EmailHookParameterPatch" + } + }, + "x-ms-discriminator-value": "Email" + }, + "WebhookHookParameterPatch": { + "type": "object", + "properties": { + "endpoint": { + "description": "API address, will be called when alert is triggered, only support POST method via SSL", + "type": "string" }, - { + "username": { + "description": "(Deprecated) The username, if using basic authentication", + "type": "string" + }, + "password": { + "description": "(Deprecated) The password, if using basic authentication", + "type": "string" + }, + "headers": { + "description": "custom headers in api call", "type": "object", - "properties": { - "hookParameter": { - "$ref": "#/definitions/EmailHookParameter" - } + "additionalProperties": { + "type": "string" } + }, + "certificateKey": { + "description": "The certificate key, if using client certificate", + "type": "string" + }, + "certificatePassword": { + "description": "The certificate password, if using client certificate", + "type": "string" } - ], - "x-ms-discriminator-value": "Email" + } }, "WebhookHookInfoPatch": { + "type": "object", "allOf": [ { "$ref": "#/definitions/HookInfoPatch" - }, - { - "type": "object", - "properties": { - "hookParameter": { - "$ref": "#/definitions/WebhookHookParameter" - } - } } ], + "properties": { + "hookParameter": { + "$ref": "#/definitions/WebhookHookParameterPatch" + } + }, "example": { - "hookName": "A webhook (modified)", - "description": "This is a webhook. (modified)" + "description": "This is a webhook." }, "x-ms-discriminator-value": "Webhook" }, @@ -5635,16 +6619,16 @@ "properties": { "startTime": { "format": "date-time", - "description": "start time of query a time series data, and format should be yyyy-MM-ddThh:mm:ssZ", + "description": "start time of query a time series data, and format should be yyyy-MM-ddThh:mm:ssZ. The maximum number of data points (series number * time range) is 10000.", "type": "string" }, "endTime": { "format": "date-time", - "description": "start time of query a time series data, and format should be yyyy-MM-ddThh:mm:ssZ", + "description": "start time of query a time series data, and format should be yyyy-MM-ddThh:mm:ssZ. The maximum number of data points (series number * time range) is 10000.", "type": "string" }, "series": { - "description": "query specific series", + "description": "query specific series. The maximum number of series is 100.", "type": "array", "items": { "type": "object", @@ -5806,16 +6790,18 @@ } }, "AnomalyDetectionConfigurationList": { - "required": [ - "value" - ], "type": "object", "properties": { "value": { "type": "array", "items": { "$ref": "#/definitions/AnomalyDetectionConfiguration" - } + }, + "readOnly": true + }, + "@nextLink": { + "type": "string", + "readOnly": true } } }, diff --git a/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/createAnomalyAlertingConfiguration.json b/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/createAnomalyAlertingConfiguration.json index 55bb7bc485c7..87c4aa248cb0 100644 --- a/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/createAnomalyAlertingConfiguration.json +++ b/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/createAnomalyAlertingConfiguration.json @@ -45,7 +45,8 @@ "valueFilter": { "lower": 0.0, "upper": 1000.0, - "direction": "Both" + "direction": "Both", + "type": "Value" } } ] diff --git a/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/createCredential.json b/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/createCredential.json new file mode 100644 index 000000000000..f0b149c802e1 --- /dev/null +++ b/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/createCredential.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Ocp-Apim-Subscription-Key": "{API key}", + "Content-Type": "application/json", + "body": { + "parameters": { + "clientId": "88888888-8888-8888-8888-888888888888", + "clientSecret": "fake-client-secret", + "tenantId": "12345678-1234-1234-1234-123456788888" + }, + "dataSourceCredentialName": "A data source credential", + "dataSourceCredentialDescription": "This is a data source credential", + "dataSourceCredentialType": "ServicePrincipal" + } + }, + "responses": { + "201": { + "headers": { + "Location": "" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/createDataFeed.json b/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/createDataFeed.json index 7db33d1dfd96..053fc92f966b 100644 --- a/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/createDataFeed.json +++ b/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/createDataFeed.json @@ -5,7 +5,7 @@ "Content-Type": "application/json", "body": { "dataSourceParameter": { - "connectionString": "Server=your_sql_server,1433;Initial Catalog=your_database;Persist Security Info=False;User ID=your_user;Password=your_password;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;", + "connectionString": "Server=PlaceholderSqlServer,1433;Initial Catalog=PlaceholderDatabase;User ID=PlaceholderUserName;Password=PlaceholderPassword;", "query": "select * from your_table where timestamp = @StartTime" }, "dataFeedName": "Sample - cost/revenue - city/category", @@ -42,7 +42,8 @@ "rollUpMethod": "Sum", "allUpIdentification": "__SUM__", "fillMissingPointType": "SmartFilling", - "viewMode": "Private" + "viewMode": "Private", + "authenticationType": "Basic" } }, "responses": { diff --git a/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/deleteCredential.json b/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/deleteCredential.json new file mode 100644 index 000000000000..11618b5e2118 --- /dev/null +++ b/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/deleteCredential.json @@ -0,0 +1,10 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Ocp-Apim-Subscription-Key": "{API key}", + "credentialId": "01234567-8901-2345-6789-012345678901" + }, + "responses": { + "204": {} + } +} diff --git a/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/getAnomaliesByAnomalyDetectionConfiguration.json b/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/getAnomaliesByAnomalyDetectionConfiguration.json index 0b2b7997cf68..2946dbc626e4 100644 --- a/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/getAnomaliesByAnomalyDetectionConfiguration.json +++ b/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/getAnomaliesByAnomalyDetectionConfiguration.json @@ -28,6 +28,7 @@ "body": { "value": [ { + "dataFeedId": "11111111-1111-1111-1111-000000000001", "metricId": "22222222-2222-2222-2222-000000000001", "anomalyDetectionConfigurationId": "33333333-3333-3333-3333-000000000001", "timestamp": "2020-01-01T00:00:00.000Z", @@ -39,7 +40,9 @@ }, "property": { "anomalySeverity": "High", - "anomalyStatus": "Active" + "anomalyStatus": "Active", + "value": 1.0, + "expectedValue": 100.0 } } ] diff --git a/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/getAnomaliesFromAlertByAnomalyAlertingConfiguration.json b/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/getAnomaliesFromAlertByAnomalyAlertingConfiguration.json index 4ff0ee79068c..8c180c49e4bb 100644 --- a/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/getAnomaliesFromAlertByAnomalyAlertingConfiguration.json +++ b/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/getAnomaliesFromAlertByAnomalyAlertingConfiguration.json @@ -11,6 +11,7 @@ "body": { "value": [ { + "dataFeedId": "11111111-1111-1111-1111-000000000001", "metricId": "22222222-2222-2222-2222-000000000001", "anomalyDetectionConfigurationId": "33333333-3333-3333-3333-000000000001", "timestamp": "2020-01-01T00:00:00.000Z", @@ -22,7 +23,9 @@ }, "property": { "anomalySeverity": "High", - "anomalyStatus": "Active" + "anomalyStatus": "Active", + "value": 1.0, + "expectedValue": 100.0 } } ] diff --git a/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/getCredential.json b/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/getCredential.json new file mode 100644 index 000000000000..1cb2a96171eb --- /dev/null +++ b/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/getCredential.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Ocp-Apim-Subscription-Key": "{API key}", + "credentialId": "01234567-8901-2345-6789-012345678901" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "parameters": { + "clientId": "88888888-8888-8888-8888-888888888888", + "clientSecret": "fake-client-secret", + "tenantId": "12345678-1234-1234-1234-123456788888" + }, + "dataSourceCredentialName": "A data source credential", + "dataSourceCredentialDescription": "This is a data source credential", + "dataSourceCredentialType": "ServicePrincipal" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/getDataFeedById.json b/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/getDataFeedById.json index c78cf89d8cfc..d59b03e0249c 100644 --- a/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/getDataFeedById.json +++ b/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/getDataFeedById.json @@ -9,7 +9,7 @@ "headers": {}, "body": { "dataSourceParameter": { - "connectionString": "Server=your_sql_server,1433;Initial Catalog=your_database;Persist Security Info=False;User ID=your_user;Password=your_password;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;", + "connectionString": "Server=PlaceholderSqlServer,1433;Initial Catalog=PlaceholderDatabase;User ID=PlaceholderUserName;Password=PlaceholderPassword;", "query": "select * from your_table where timestamp = @StartTime" }, "dataFeedId": "11111111-1111-1111-1111-000000000001", @@ -57,7 +57,8 @@ "isAdmin": true, "creator": "admin@company.example", "status": "Active", - "createdTime": "2020-03-01T00:00:00.000Z" + "createdTime": "2020-03-01T00:00:00.000Z", + "authenticationType": "Basic" } } } diff --git a/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/getDataFeedIngestionStatus.json b/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/getDataFeedIngestionStatus.json index a0a4eac1ec42..1f1be2f297cd 100644 --- a/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/getDataFeedIngestionStatus.json +++ b/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/getDataFeedIngestionStatus.json @@ -13,7 +13,7 @@ "200": { "headers": {}, "body": { - "@nextLink": "https://localhost/dataFeeds/01234567-8901-2345-6789-012345678901/ingestionStatus/query?$skip=2&$top=2", + "@nextLink": "https://localhost/dataFeeds/01234567-8901-2345-6789-012345678901/ingestionStatus/query?$skip=2&$maxpagesize=2", "value": [ { "timestamp": "2020-01-01T00:00:00.000Z", diff --git a/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/getEnrichmentStatusByMetric.json b/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/getEnrichmentStatusByMetric.json index d2b37e657ae7..cf52d7bd866f 100644 --- a/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/getEnrichmentStatusByMetric.json +++ b/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/getEnrichmentStatusByMetric.json @@ -13,7 +13,7 @@ "200": { "headers": {}, "body": { - "@nextLink": "https://localhost/metrics/22222222-2222-2222-2222-000000000001/status/enrichment/anomalyDetection/query?$skip=2&$top=2", + "@nextLink": "https://localhost/metrics/22222222-2222-2222-2222-000000000001/status/enrichment/anomalyDetection/query?$skip=2&$maxpagesize=2", "value": [ { "timestamp": "2020-01-01T00:00:00.000Z", diff --git a/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/getIncidentsByAnomalyDetectionConfiguration.json b/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/getIncidentsByAnomalyDetectionConfiguration.json index e2dc2b033536..3d1018da8b54 100644 --- a/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/getIncidentsByAnomalyDetectionConfiguration.json +++ b/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/getIncidentsByAnomalyDetectionConfiguration.json @@ -24,6 +24,7 @@ "body": { "value": [ { + "dataFeedId": "11111111-1111-1111-1111-000000000001", "metricId": "22222222-2222-2222-2222-000000000001", "anomalyDetectionConfigurationId": "33333333-3333-3333-3333-000000000001", "incidentId": "iiiiiiiiiiii", @@ -37,7 +38,9 @@ }, "property": { "maxSeverity": "High", - "incidentStatus": "Active" + "incidentStatus": "Active", + "valueOfRootNode": 1.0, + "expectedValueOfRootNode": 100.0 } } ] diff --git a/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/getIncidentsByAnomalyDetectionConfigurationNextPages.json b/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/getIncidentsByAnomalyDetectionConfigurationNextPages.json index ca486dff0444..35c20aa92f71 100644 --- a/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/getIncidentsByAnomalyDetectionConfigurationNextPages.json +++ b/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/getIncidentsByAnomalyDetectionConfigurationNextPages.json @@ -10,6 +10,7 @@ "body": { "value": [ { + "dataFeedId": "11111111-1111-1111-1111-000000000001", "metricId": "22222222-2222-2222-2222-000000000001", "anomalyDetectionConfigurationId": "33333333-3333-3333-3333-000000000001", "incidentId": "iiiiiiiiiiii", @@ -23,7 +24,9 @@ }, "property": { "maxSeverity": "High", - "incidentStatus": "Active" + "incidentStatus": "Active", + "valueOfRootNode": 1.0, + "expectedValueOfRootNode": 100.0 } } ] diff --git a/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/getIncidentsFromAlertByAnomalyAlertingConfiguration.json b/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/getIncidentsFromAlertByAnomalyAlertingConfiguration.json index 7338f495b54e..64d19d69a90e 100644 --- a/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/getIncidentsFromAlertByAnomalyAlertingConfiguration.json +++ b/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/getIncidentsFromAlertByAnomalyAlertingConfiguration.json @@ -11,6 +11,7 @@ "body": { "value": [ { + "dataFeedId": "11111111-1111-1111-1111-000000000001", "metricId": "22222222-2222-2222-2222-000000000001", "anomalyDetectionConfigurationId": "33333333-3333-3333-3333-000000000001", "incidentId": "iiiiiiiiiiii", @@ -24,7 +25,9 @@ }, "property": { "maxSeverity": "High", - "incidentStatus": "Active" + "incidentStatus": "Active", + "valueOfRootNode": 1.0, + "expectedValueOfRootNode": 100.0 } } ] diff --git a/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/getMetricDimension.json b/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/getMetricDimension.json index 5112c4b19a28..315c9039a372 100644 --- a/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/getMetricDimension.json +++ b/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/getMetricDimension.json @@ -12,7 +12,7 @@ "200": { "headers": {}, "body": { - "@nextLink": "https://localhost/metrics/22222222-2222-2222-2222-000000000001/dimension/query?$skip=2&$top=2", + "@nextLink": "https://localhost/metrics/22222222-2222-2222-2222-000000000001/dimension/query?$skip=2&$maxpagesize=2", "value": [ "__SUM__", "Beijing" diff --git a/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/getMetricSeries.json b/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/getMetricSeries.json index 9013cfa69a67..694dbc2f0027 100644 --- a/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/getMetricSeries.json +++ b/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/getMetricSeries.json @@ -17,7 +17,7 @@ "200": { "headers": {}, "body": { - "@nextLink": "https://localhost/metrics/22222222-2222-2222-2222-000000000001/series/query?$skip=2&$top=2", + "@nextLink": "https://localhost/metrics/22222222-2222-2222-2222-000000000001/series/query?$skip=2&$maxpagesize=2", "value": [ { "metricId": "22222222-2222-2222-2222-000000000001", diff --git a/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/listCredentials.json b/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/listCredentials.json new file mode 100644 index 000000000000..c4c401d36af7 --- /dev/null +++ b/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/listCredentials.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Ocp-Apim-Subscription-Key": "{API key}" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "@nextLink": "https://localhost/credentials?$skip=1&$maxpagesize=1", + "value": [ + { + "parameters": { + "clientId": "88888888-8888-8888-8888-888888888888", + "clientSecret": "fake-client-secret", + "tenantId": "12345678-1234-1234-1234-123456788888" + }, + "dataSourceCredentialId": "01234567-0000-0000-0000-000000000002", + "dataSourceCredentialName": "A data source credential", + "dataSourceCredentialDescription": "This is a data source credential", + "dataSourceCredentialType": "ServicePrincipal" + } + ] + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/listDataFeeds.json b/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/listDataFeeds.json index 29ac2cb33c03..5c4c10be8c67 100644 --- a/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/listDataFeeds.json +++ b/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/listDataFeeds.json @@ -12,11 +12,11 @@ "200": { "headers": {}, "body": { - "@nextLink": "https://localhost/dataFeeds?$skip=1&$top=1", + "@nextLink": "https://localhost/dataFeeds?$skip=1&$maxpagesize=1", "value": [ { "dataSourceParameter": { - "connectionString": "Server=your_sql_server,1433;Initial Catalog=your_database;Persist Security Info=False;User ID=your_user;Password=your_password;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;", + "connectionString": "Server=PlaceholderSqlServer,1433;Initial Catalog=PlaceholderDatabase;User ID=PlaceholderUserName;Password=PlaceholderPassword;", "query": "select * from your_table where timestamp = @StartTime" }, "dataFeedId": "11111111-1111-1111-1111-000000000001", @@ -64,7 +64,8 @@ "isAdmin": true, "creator": "admin@company.example", "status": "Active", - "createdTime": "2020-03-01T00:00:00.000Z" + "createdTime": "2020-03-01T00:00:00.000Z", + "authenticationType": "Basic" } ] } diff --git a/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/listHooks.json b/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/listHooks.json index b4f06320519f..b8edd629b046 100644 --- a/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/listHooks.json +++ b/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/listHooks.json @@ -8,7 +8,7 @@ "200": { "headers": {}, "body": { - "@nextLink": "https://localhost/hooks?$skip=1&$top=1", + "@nextLink": "https://localhost/hooks?$skip=1&$maxpagesize=1", "value": [ { "hookParameter": { diff --git a/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/listMetricFeedbacks.json b/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/listMetricFeedbacks.json index a7f095cd7bf6..b197dc06b113 100644 --- a/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/listMetricFeedbacks.json +++ b/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/listMetricFeedbacks.json @@ -15,7 +15,7 @@ "200": { "headers": {}, "body": { - "@nextLink": "https://localhost/feedback?$skip=1&$top=1", + "@nextLink": "https://localhost/feedback?$skip=1&$maxpagesize=1", "value": [ { "startTime": "2020-01-01T00:00:00.000Z", diff --git a/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/updateAnomalyAlertingConfiguration.json b/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/updateAnomalyAlertingConfiguration.json index 22d1df25b83d..0a5efd2f49d4 100644 --- a/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/updateAnomalyAlertingConfiguration.json +++ b/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/updateAnomalyAlertingConfiguration.json @@ -54,6 +54,57 @@ } }, "responses": { - "204": {} + "200": { + "headers": {}, + "body": { + "anomalyAlertingConfigurationId": "44444444-4444-4444-4444-000000000001", + "name": "alerting configuration name", + "description": "this is an anomaly alerting configuration", + "crossMetricsOperator": "AND", + "hookIds": [ + "00000000-0000-0000-0000-000000000001" + ], + "metricAlertingConfigurations": [ + { + "anomalyDetectionConfigurationId": "33333333-3333-3333-3333-000000000001", + "anomalyScopeType": "All", + "negationOperation": false, + "severityFilter": { + "minAlertSeverity": "Medium", + "maxAlertSeverity": "High" + }, + "snoozeFilter": { + "autoSnooze": 0, + "snoozeScope": "Series", + "onlyForSuccessive": true + } + }, + { + "anomalyDetectionConfigurationId": "33333333-3333-3333-3333-000000000002", + "anomalyScopeType": "Dimension", + "negationOperation": false, + "dimensionAnomalyScope": { + "dimension": { + "city": "Beijing" + } + }, + "severityFilter": { + "minAlertSeverity": "Low", + "maxAlertSeverity": "High" + }, + "snoozeFilter": { + "autoSnooze": 0, + "snoozeScope": "Series", + "onlyForSuccessive": true + }, + "valueFilter": { + "lower": 0.0, + "upper": 1000.0, + "direction": "Both" + } + } + ] + } + } } } diff --git a/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/updateAnomalyDetectionConfiguration.json b/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/updateAnomalyDetectionConfiguration.json index 638e88d5724a..47a9941dd059 100644 --- a/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/updateAnomalyDetectionConfiguration.json +++ b/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/updateAnomalyDetectionConfiguration.json @@ -5,45 +5,22 @@ "configurationId": "33333333-3333-3333-3333-000000000001", "Content-Type": "application/merge-patch+json", "body": { - "name": "Anomaly detection configuration name", - "description": "Anomaly detection configuration description", "wholeMetricConfiguration": { - "conditionOperator": "AND", "smartDetectionCondition": { - "sensitivity": 91.0, - "anomalyDetectorDirection": "Both", - "suppressCondition": { - "minNumber": 1, - "minRatio": 100.0 - } - }, - "hardThresholdCondition": { - "lowerBound": 1.0, - "upperBound": 100.0, - "anomalyDetectorDirection": "Both", - "suppressCondition": { - "minNumber": 1, - "minRatio": 100.0 - } - }, - "changeThresholdCondition": { - "changePercentage": 5.0, - "shiftPoint": 1, - "withinRange": false, - "anomalyDetectorDirection": "Both", - "suppressCondition": { - "minNumber": 1, - "minRatio": 100.0 - } + "sensitivity": 91.0 } - }, - "dimensionGroupOverrideConfigurations": [ - { - "group": { - "dimension": { - "city": "Beijing" - } - }, + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "anomalyDetectionConfigurationId": "33333333-3333-3333-3333-000000000001", + "name": "Anomaly detection configuration name", + "description": "Anomaly detection configuration description", + "metricId": "22222222-2222-2222-2222-000000000001", + "wholeMetricConfiguration": { "conditionOperator": "AND", "smartDetectionCondition": { "sensitivity": 91.0, @@ -72,49 +49,83 @@ "minRatio": 100.0 } } - } - ], - "seriesOverrideConfigurations": [ - { - "series": { - "dimension": { - "category": "Jewelry", - "city": "Beijing" - } - }, - "conditionOperator": "AND", - "smartDetectionCondition": { - "sensitivity": 91.0, - "anomalyDetectorDirection": "Both", - "suppressCondition": { - "minNumber": 1, - "minRatio": 100.0 - } - }, - "hardThresholdCondition": { - "lowerBound": 1.0, - "upperBound": 100.0, - "anomalyDetectorDirection": "Both", - "suppressCondition": { - "minNumber": 1, - "minRatio": 100.0 + }, + "dimensionGroupOverrideConfigurations": [ + { + "group": { + "dimension": { + "city": "Beijing" + } + }, + "conditionOperator": "AND", + "smartDetectionCondition": { + "sensitivity": 91.0, + "anomalyDetectorDirection": "Both", + "suppressCondition": { + "minNumber": 1, + "minRatio": 100.0 + } + }, + "hardThresholdCondition": { + "lowerBound": 1.0, + "upperBound": 100.0, + "anomalyDetectorDirection": "Both", + "suppressCondition": { + "minNumber": 1, + "minRatio": 100.0 + } + }, + "changeThresholdCondition": { + "changePercentage": 5.0, + "shiftPoint": 1, + "withinRange": false, + "anomalyDetectorDirection": "Both", + "suppressCondition": { + "minNumber": 1, + "minRatio": 100.0 + } } - }, - "changeThresholdCondition": { - "changePercentage": 5.0, - "shiftPoint": 1, - "withinRange": false, - "anomalyDetectorDirection": "Both", - "suppressCondition": { - "minNumber": 1, - "minRatio": 100.0 + } + ], + "seriesOverrideConfigurations": [ + { + "series": { + "dimension": { + "category": "Jewelry", + "city": "Beijing" + } + }, + "conditionOperator": "AND", + "smartDetectionCondition": { + "sensitivity": 91.0, + "anomalyDetectorDirection": "Both", + "suppressCondition": { + "minNumber": 1, + "minRatio": 100.0 + } + }, + "hardThresholdCondition": { + "lowerBound": 1.0, + "upperBound": 100.0, + "anomalyDetectorDirection": "Both", + "suppressCondition": { + "minNumber": 1, + "minRatio": 100.0 + } + }, + "changeThresholdCondition": { + "changePercentage": 5.0, + "shiftPoint": 1, + "withinRange": false, + "anomalyDetectorDirection": "Both", + "suppressCondition": { + "minNumber": 1, + "minRatio": 100.0 + } } } - } - ] + ] + } } - }, - "responses": { - "204": {} } } diff --git a/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/updateCredential.json b/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/updateCredential.json new file mode 100644 index 000000000000..d530227374e8 --- /dev/null +++ b/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/updateCredential.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Ocp-Apim-Subscription-Key": "{API key}", + "credentialId": "01234567-8901-2345-6789-012345678901", + "Content-Type": "application/merge-patch+json", + "body": { + "dataSourceCredentialDescription": "This is a data source credential" + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "parameters": { + "clientId": "88888888-8888-8888-8888-888888888888", + "clientSecret": "fake-client-secret", + "tenantId": "12345678-1234-1234-1234-123456788888" + }, + "dataSourceCredentialName": "A data source credential", + "dataSourceCredentialDescription": "This is a data source credential", + "dataSourceCredentialType": "ServicePrincipal" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/updateDataFeed.json b/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/updateDataFeed.json index 54febb327084..9201dbb3b951 100644 --- a/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/updateDataFeed.json +++ b/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/updateDataFeed.json @@ -5,13 +5,65 @@ "dataFeedId": "01234567-8901-2345-6789-012345678901", "Content-Type": "application/merge-patch+json", "body": { - "dataFeedName": "Sample - cost/revenue - city/category (modified)", - "viewers": [ - "viewer@company.example" - ] + "dataFeedName": "Sample - cost/revenue - city/category" } }, "responses": { - "204": {} + "200": { + "headers": {}, + "body": { + "dataSourceParameter": { + "connectionString": "Server=PlaceholderSqlServer,1433;Initial Catalog=PlaceholderDatabase;User ID=PlaceholderUserName;Password=PlaceholderPassword;", + "query": "select * from your_table where timestamp = @StartTime" + }, + "dataFeedId": "11111111-1111-1111-1111-000000000001", + "dataFeedName": "Sample - cost/revenue - city/category", + "dataFeedDescription": "This is a sample data feed.", + "granularityName": "Daily", + "metrics": [ + { + "metricId": "22222222-2222-2222-2222-000000000001", + "metricName": "cost", + "metricDisplayName": "cost" + }, + { + "metricId": "22222222-2222-2222-2222-000000000002", + "metricName": "revenue", + "metricDisplayName": "revenue" + } + ], + "dimension": [ + { + "dimensionName": "category", + "dimensionDisplayName": "category" + }, + { + "dimensionName": "city", + "dimensionDisplayName": "city" + } + ], + "timestampColumn": "timestamp", + "dataStartFrom": "2020-01-01T00:00:00.000Z", + "dataSourceType": "SqlServer", + "startOffsetInSeconds": 86400, + "maxConcurrency": 5, + "minRetryIntervalInSeconds": 3600, + "stopRetryAfterInSeconds": 604800, + "needRollup": "NeedRollup", + "rollUpMethod": "Sum", + "allUpIdentification": "__SUM__", + "fillMissingPointType": "SmartFilling", + "viewMode": "Private", + "admins": [ + "admin@company.example" + ], + "viewers": [], + "isAdmin": true, + "creator": "admin@company.example", + "status": "Active", + "createdTime": "2020-03-01T00:00:00.000Z", + "authenticationType": "Basic" + } + } } } diff --git a/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/updateHook.json b/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/updateHook.json index a6e131d7568e..03c526da7e45 100644 --- a/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/updateHook.json +++ b/specification/cognitiveservices/data-plane/MetricsAdvisor/preview/v1.0/examples/updateHook.json @@ -5,11 +5,25 @@ "hookId": "01234567-8901-2345-6789-012345678901", "Content-Type": "application/merge-patch+json", "body": { - "hookName": "A webhook (modified)", - "description": "This is a webhook. (modified)" + "description": "This is a webhook." } }, "responses": { - "204": {} + "200": { + "headers": {}, + "body": { + "hookParameter": { + "endpoint": "https://localhost/demo/post" + }, + "hookId": "00000000-0000-0000-0000-000000000001", + "hookName": "A webhook", + "hookType": "Webhook", + "description": "This is a webhook.", + "externalLink": "", + "admins": [ + "admin@company.example" + ] + } + } } } diff --git a/specification/cognitiveservices/data-plane/NewsSearch/readme.go.md b/specification/cognitiveservices/data-plane/NewsSearch/readme.go.md index 16b18ebe45f2..fdb2dbad735b 100644 --- a/specification/cognitiveservices/data-plane/NewsSearch/readme.go.md +++ b/specification/cognitiveservices/data-plane/NewsSearch/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: newssearch clear-output-folder: true ``` diff --git a/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/Personalizer.json b/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/Personalizer.json new file mode 100644 index 000000000000..ef0bf3bcda8a --- /dev/null +++ b/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/Personalizer.json @@ -0,0 +1,1843 @@ +{ + "swagger": "2.0", + "info": { + "title": "Personalizer Client v1.1-preview.1", + "description": "Personalizer Service is an Azure Cognitive Service that makes it easy to target content and experiences without complex pre-analysis or cleanup of past data. Given a context and featurized content, the Personalizer Service returns which content item to show to users in rewardActionId. As rewards are sent in response to the use of rewardActionId, the reinforcement learning algorithm will improve the model and improve performance of future rank calls.", + "version": "v1.1-preview.1" + }, + "host": "localhost:5001", + "basePath": "/personalizer/v1.1-preview.1", + "schemes": [ + "https" + ], + "paths": { + "/configurations/service": { + "put": { + "tags": [ + "ConfigurationsV1Dot1Preview1" + ], + "summary": "Update Service Configuration.", + "description": "Update the Personalizer service configuration.", + "operationId": "ServiceConfiguration_Update", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "body", + "name": "config", + "description": "The personalizer service configuration.", + "required": true, + "schema": { + "$ref": "#/definitions/ServiceConfiguration" + } + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ServiceConfiguration" + } + }, + "default": { + "description": "Updating defaultReward, rewardWaitTime and rewardAggregation when changing learning mode from Online to Apprentice mode and vice versa is not allowed. Make the mode change and then change the additional settings with an additional API call.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Successful ServiceConfiguration_Update request": { + "$ref": "./examples/ServiceConfiguration_Update.json" + } + } + }, + "get": { + "tags": [ + "ConfigurationsV1Dot1Preview1" + ], + "summary": "Get Service Configuration.", + "description": "Get the Personalizer service configuration.", + "operationId": "ServiceConfiguration_Get", + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ServiceConfiguration" + } + } + }, + "x-ms-examples": { + "Successful ServiceConfiguration_Get request": { + "$ref": "./examples/ServiceConfiguration_Get.json" + } + } + } + }, + "/configurations/policy": { + "get": { + "tags": [ + "ConfigurationsV1Dot1Preview1" + ], + "summary": "Get Policy.", + "description": "Get the Learning Settings currently used by the Personalizer service.", + "operationId": "Policy_Get", + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/PolicyContract" + } + } + }, + "x-ms-examples": { + "Successful Policy_Get request": { + "$ref": "./examples/Policy_Get.json" + } + } + }, + "put": { + "tags": [ + "ConfigurationsV1Dot1Preview1" + ], + "summary": "Update Policy.", + "description": "Update the Learning Settings that the Personalizer service will use to train models.", + "operationId": "Policy_Update", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "body", + "name": "policy", + "description": "The learning settings.", + "required": true, + "schema": { + "$ref": "#/definitions/PolicyContract" + } + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/PolicyContract" + } + }, + "default": { + "description": "Invalid policy configuration.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Successful Policy_Update request": { + "$ref": "./examples/Policy_Update.json" + } + } + }, + "delete": { + "tags": [ + "ConfigurationsV1Dot1Preview1" + ], + "summary": "Reset Policy.", + "description": "Resets the learning settings of the Personalizer service to default.", + "operationId": "Policy_Reset", + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/PolicyContract" + } + } + }, + "x-ms-examples": { + "Successful Policy_Reset request": { + "$ref": "./examples/Policy_Reset.json" + } + } + } + }, + "/configurations/applyFromEvaluation": { + "post": { + "tags": [ + "ConfigurationsV1Dot1Preview1" + ], + "summary": "Apply Learning Settings and model from a pre-existing Offline Evaluation, making them the current online Learning Settings and model and replacing the previous ones.", + "operationId": "Evaluation_Apply", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "body", + "name": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PolicyReferenceContract" + } + } + ], + "responses": { + "204": { + "description": "Success" + }, + "default": { + "description": "Learning Settings not found in evaluation.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Successful Evaluation_Apply request": { + "$ref": "./examples/Evaluation_Apply.json" + } + } + } + }, + "/evaluations/{evaluationId}": { + "delete": { + "tags": [ + "EvaluationsV1Dot1Preview1" + ], + "summary": "Delete Evaluation.", + "description": "Delete the Offline Evaluation associated with the Id.", + "operationId": "Evaluations_Delete", + "parameters": [ + { + "in": "path", + "name": "evaluationId", + "description": "Id of the Offline Evaluation to delete.", + "required": true, + "type": "string", + "maxLength": 256 + } + ], + "responses": { + "204": { + "description": "Success" + } + }, + "x-ms-examples": { + "Successful Evaluations_Delete request": { + "$ref": "./examples/Evaluations_Delete.json" + } + } + }, + "get": { + "tags": [ + "EvaluationsV1Dot1Preview1" + ], + "summary": "Get Evaluation.", + "description": "Get the Offline Evaluation associated with the Id.", + "operationId": "Evaluations_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "evaluationId", + "description": "Id of the Offline Evaluation.", + "required": true, + "type": "string", + "maxLength": 256 + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Evaluation" + } + }, + "default": { + "description": "Offline Evaluation not found.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Successful Evaluations_Get request": { + "$ref": "./examples/Evaluations_Get.json" + } + } + } + }, + "/evaluations": { + "get": { + "tags": [ + "EvaluationsV1Dot1Preview1" + ], + "summary": "List Offline Evaluations.", + "description": "List of all Offline Evaluations.", + "operationId": "Evaluations_List", + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/Evaluation" + } + } + } + }, + "x-ms-examples": { + "Successful Evaluations_List request": { + "$ref": "./examples/Evaluations_List.json" + } + } + }, + "post": { + "tags": [ + "EvaluationsV1Dot1Preview1" + ], + "summary": "Create Offline Evaluation.", + "description": "Submit a new Offline Evaluation job.", + "operationId": "Evaluations_Create", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "body", + "name": "evaluation", + "description": "The Offline Evaluation job definition.", + "required": true, + "schema": { + "$ref": "#/definitions/EvaluationContract" + } + } + ], + "responses": { + "201": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Evaluation" + }, + "headers": { + "Location": { + "description": "Location of the Offline Evaluation status and data.", + "type": "string" + } + } + }, + "default": { + "description": "Invalid evaluation contract.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Successful Evaluations_Create request": { + "$ref": "./examples/Evaluations_Create.json" + } + } + } + }, + "/events/{eventId}/reward": { + "post": { + "tags": [ + "Events" + ], + "summary": "Post Reward.", + "description": "Report reward between 0 and 1 that resulted from using the action specified in rewardActionId, for the specified event.", + "operationId": "Events_Reward", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "eventId", + "description": "The event id this reward applies to.", + "required": true, + "type": "string", + "maxLength": 256 + }, + { + "in": "body", + "name": "reward", + "description": "The reward should be a floating point number, typically between 0 and 1.", + "required": true, + "schema": { + "$ref": "#/definitions/RewardRequest" + } + } + ], + "responses": { + "204": { + "description": "Success" + }, + "default": { + "description": "Invalid reward request.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Successful Events_Reward request": { + "$ref": "./examples/Events_Reward.json" + } + } + } + }, + "/events/{eventId}/activate": { + "post": { + "tags": [ + "Events" + ], + "summary": "Activate Event.", + "description": "Report that the specified event was actually used (e.g. by being displayed to the user) and a reward should be expected for it.", + "operationId": "Events_Activate", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "eventId", + "description": "The event ID to be activated.", + "required": true, + "type": "string", + "maxLength": 256 + } + ], + "responses": { + "204": { + "description": "Success" + }, + "default": { + "description": "Invalid activate event request.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Successful Events_Activate request": { + "$ref": "./examples/Events_Activate.json" + } + } + } + }, + "/logs": { + "delete": { + "tags": [ + "Logs" + ], + "summary": "Deletes Logs.", + "description": "Delete all logs of Rank and Reward calls stored by Personalizer.", + "operationId": "Log_Delete", + "responses": { + "204": { + "description": "Success" + } + }, + "x-ms-examples": { + "Successful Log_Delete request": { + "$ref": "./examples/Log_Delete.json" + } + } + } + }, + "/logs/properties": { + "get": { + "tags": [ + "Logs" + ], + "summary": "Get Log Properties.", + "description": "Get properties of the Personalizer logs.", + "operationId": "Log_GetProperties", + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/LogsProperties" + } + }, + "default": { + "description": "Log properties not found.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Successful Log_GetProperties request": { + "$ref": "./examples/Log_GetProperties.json" + } + } + } + }, + "/model": { + "get": { + "tags": [ + "Model" + ], + "summary": "Get Model.", + "description": "Get the model file generated by Personalizer service.", + "operationId": "Model_Get", + "produces": [ + "application/octet-stream" + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "type": "file" + } + } + }, + "x-ms-examples": { + "Successful Model_Get request": { + "$ref": "./examples/Model_Get.json" + } + } + }, + "delete": { + "tags": [ + "Model" + ], + "summary": "Reset Model.", + "description": "Resets the model file generated by Personalizer service.", + "operationId": "Model_Reset", + "produces": [ + "application/json" + ], + "responses": { + "204": { + "description": "Success" + }, + "default": { + "description": "Model reset failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Successful Model_Reset request": { + "$ref": "./examples/Model_Reset.json" + } + } + } + }, + "/model/properties": { + "get": { + "tags": [ + "Model" + ], + "summary": "Get Model Properties.", + "description": "Get properties of the model file generated by Personalizer service.", + "operationId": "Model_GetProperties", + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ModelProperties" + } + } + }, + "x-ms-examples": { + "Successful Model_GetProperties request": { + "$ref": "./examples/Model_GetProperties.json" + } + } + } + }, + "/multislot/events/{eventId}/reward": { + "post": { + "tags": [ + "MultiSlotEvents" + ], + "summary": "Post multi-slot Rewards.", + "description": "Report reward that resulted from using the action specified in rewardActionId for the slot.", + "operationId": "MultiSlotEvents_Reward", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "eventId", + "description": "The event id this reward applies to.", + "required": true, + "type": "string", + "maxLength": 256 + }, + { + "in": "body", + "name": "body", + "description": "List of slot id and reward values. The reward should be a floating point number, typically between 0 and 1.", + "required": true, + "schema": { + "$ref": "#/definitions/MultiSlotRewardRequest" + } + } + ], + "responses": { + "204": { + "description": "Success" + }, + "default": { + "description": "Invalid reward request.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Successful MultiSlotEvents_Reward request": { + "$ref": "./examples/MultiSlotEvents_Reward.json" + } + } + } + }, + "/multislot/events/{eventId}/activate": { + "post": { + "tags": [ + "MultiSlotEvents" + ], + "summary": "Activate multi-slot Event.", + "description": "Report that the specified event was actually used or displayed to the user and a rewards should be expected for it.", + "operationId": "MultiSlotEvents_Activate", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "eventId", + "description": "The event ID this activation applies to.", + "required": true, + "type": "string", + "maxLength": 256 + } + ], + "responses": { + "204": { + "description": "Success" + }, + "default": { + "description": "Invalid activate event request.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Successful MultiSlotEvents_Activate request": { + "$ref": "./examples/MultiSlotEvents_Activate.json" + } + } + } + }, + "/multislot/rank": { + "post": { + "tags": [ + "MultiSlotRank" + ], + "summary": "Post multi-slot Rank.", + "description": "Submit a Personalizer multi-slot rank request. Receives a context, a list of actions, and a list of slots. Returns which of the provided actions should be used in each slot, in each rewardActionId.", + "operationId": "MultiSlot_Rank", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "body", + "name": "body", + "description": "A Personalizer multi-slot Rank request.", + "required": true, + "schema": { + "$ref": "#/definitions/MultiSlotRankRequest" + } + } + ], + "responses": { + "201": { + "description": "Success", + "schema": { + "$ref": "#/definitions/MultiSlotRankResponse" + } + }, + "default": { + "description": "Invalid request.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Successful MultiSlot_Rank request": { + "$ref": "./examples/MultiSlot_Rank.json" + } + } + } + }, + "/rank": { + "post": { + "tags": [ + "Rank" + ], + "summary": "Post Rank.", + "description": "Submit a Personalizer rank request. Receives a context and a list of actions. Returns which of the provided actions should be used by your application, in rewardActionId.", + "operationId": "Rank", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "body", + "name": "rankRequest", + "description": "A Personalizer Rank request.", + "required": true, + "schema": { + "$ref": "#/definitions/RankRequest" + } + } + ], + "responses": { + "201": { + "description": "Success", + "schema": { + "$ref": "#/definitions/RankResponse" + } + }, + "default": { + "description": "Invalid request.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Successful Rank request": { + "$ref": "./examples/Rank.json" + } + } + } + } + }, + "definitions": { + "ApprenticeLearningMetrics": { + "required": [ + "numberOfEvents", + "numberOfImitatedEvents", + "sumOfImitatedRewards", + "sumOfRewards" + ], + "type": "object", + "properties": { + "numberOfEvents": { + "format": "int64", + "type": "integer" + }, + "sumOfRewards": { + "format": "float", + "type": "number" + }, + "numberOfImitatedEvents": { + "format": "int64", + "type": "integer" + }, + "sumOfImitatedRewards": { + "format": "float", + "type": "number" + } + } + }, + "ApprenticeModeMetrics": { + "required": [ + "lastProcessedEventTime", + "numberOfEvents", + "numberOfImitatedEvents", + "startTime", + "sumOfImitatedRewards", + "sumOfRewards" + ], + "type": "object", + "properties": { + "startTime": { + "format": "date-time", + "type": "string" + }, + "lastProcessedEventTime": { + "format": "date-time", + "type": "string" + }, + "lastBatchMetrics": { + "$ref": "#/definitions/ApprenticeLearningMetrics" + }, + "numberOfEvents": { + "format": "int64", + "type": "integer" + }, + "sumOfRewards": { + "format": "float", + "type": "number" + }, + "numberOfImitatedEvents": { + "format": "int64", + "type": "integer" + }, + "sumOfImitatedRewards": { + "format": "float", + "type": "number" + } + } + }, + "ServiceConfiguration": { + "description": "The configuration of the service.", + "required": [ + "defaultReward", + "explorationPercentage", + "logRetentionDays", + "modelExportFrequency", + "rewardAggregation", + "rewardWaitTime" + ], + "type": "object", + "properties": { + "rewardWaitTime": { + "format": "duration", + "description": "The time span waited until a request is marked with the default reward\r\nand should be between 5 seconds and 2 days.\r\nFor example, PT5M (5 mins). For information about the time format,\r\nsee http://en.wikipedia.org/wiki/ISO_8601#Durations", + "type": "string" + }, + "defaultReward": { + "format": "float", + "description": "The reward given if a reward is not received within the specified wait time.", + "maximum": 1, + "minimum": -1, + "type": "number" + }, + "rewardAggregation": { + "description": "The function used to process rewards, if multiple reward scores are received before rewardWaitTime is over.", + "maxLength": 256, + "type": "string" + }, + "explorationPercentage": { + "format": "float", + "description": "The percentage of rank responses that will use exploration.", + "maximum": 1, + "minimum": 0, + "type": "number" + }, + "modelExportFrequency": { + "format": "duration", + "description": "Personalizer will start using the most updated trained model for online ranks automatically every specified time period.\r\nFor example, PT5M (5 mins). For information about the time format,\r\nsee http://en.wikipedia.org/wiki/ISO_8601#Durations", + "type": "string" + }, + "logMirrorEnabled": { + "description": "Flag indicates whether log mirroring is enabled.", + "type": "boolean" + }, + "logMirrorSasUri": { + "description": "Azure storage account container SAS URI for log mirroring.", + "type": "string" + }, + "logRetentionDays": { + "format": "int32", + "description": "Number of days historical logs are to be maintained. -1 implies the logs will never be deleted.", + "maximum": 2147483647, + "minimum": -1, + "type": "integer" + }, + "lastConfigurationEditDate": { + "format": "date-time", + "description": "Last time model training configuration was updated", + "type": "string" + }, + "learningMode": { + "description": "Learning Modes for Personalizer", + "enum": [ + "Online", + "Apprentice", + "LoggingOnly" + ], + "type": "string", + "x-ms-enum": { + "name": "LearningMode", + "modelAsString": true + } + }, + "latestApprenticeModeMetrics": { + "$ref": "#/definitions/ApprenticeModeMetrics" + }, + "isAutoOptimizationEnabled": { + "description": "Flag indicating whether Personalizer will automatically optimize Learning Settings by running Offline Evaluations periodically.", + "type": "boolean" + }, + "autoOptimizationFrequency": { + "format": "duration", + "description": "Frequency of automatic optimization. Only relevant if IsAutoOptimizationEnabled is true.\r\nFor example, PT5M (5 mins). For information about the time format,\r\n\\r\\nsee http://en.wikipedia.org/wiki/ISO_8601#Durations", + "type": "string" + }, + "autoOptimizationStartDate": { + "format": "date-time", + "description": "Date when the first automatic optimization evaluation must be performed. Only relevant if IsAutoOptimizationEnabled is true.", + "type": "string" + } + } + }, + "InternalError": { + "description": "An object containing more specific information than the parent object about the error.", + "type": "object", + "properties": { + "code": { + "description": "Detailed error code.", + "type": "string" + }, + "innererror": { + "$ref": "#/definitions/InternalError" + } + } + }, + "PersonalizerError": { + "description": "The error object.", + "required": [ + "code", + "message" + ], + "type": "object", + "properties": { + "code": { + "description": "Error Codes returned by Personalizer", + "enum": [ + "BadRequest", + "InvalidServiceConfiguration", + "InvalidLearningModeServiceConfiguration", + "InvalidPolicyConfiguration", + "InvalidPolicyContract", + "InvalidEvaluationContract", + "DuplicateCustomPolicyNames", + "NoLogsExistInDateRange", + "LogsSizeExceedAllowedLimit", + "InvalidRewardRequest", + "InvalidEventIdToActivate", + "InvalidRankRequest", + "InvalidExportLogsRequest", + "InvalidContainer", + "InvalidModelMetadata", + "ApprenticeModeNeverTurnedOn", + "MissingAppId", + "InvalidRewardWaitTime", + "InvalidMultiSlotApiAccess", + "ModelFileAccessDenied", + "ProblemTypeIncompatibleWithAutoOptimization", + "ResourceNotFound", + "FrontEndNotFound", + "EvaluationNotFound", + "LearningSettingsNotFound", + "EvaluationModelNotFound", + "LogsPropertiesNotFound", + "ModelRankingError", + "InternalServerError", + "RankNullResponse", + "UpdateConfigurationFailed", + "ModelResetFailed", + "ModelPublishFailed", + "ModelMetadataUpdateFailed", + "OperationNotAllowed" + ], + "type": "string", + "x-ms-enum": { + "name": "PersonalizerErrorCode", + "modelAsString": true, + "values": [ + { + "value": "BadRequest", + "description": "Request could not be understood by the server." + }, + { + "value": "InvalidServiceConfiguration", + "description": "Invalid service configuration." + }, + { + "value": "InvalidLearningModeServiceConfiguration", + "description": "Updating defaultReward, rewardWaitTime and rewardAggregation when changing learning mode from Online to Apprentice mode and vice versa is not allowed. Make the mode change and then change the additional settings with an additional API call." + }, + { + "value": "InvalidPolicyConfiguration", + "description": "Invalid policy configuration." + }, + { + "value": "InvalidPolicyContract", + "description": "Invalid policy contract." + }, + { + "value": "InvalidEvaluationContract", + "description": "Invalid evaluation contract." + }, + { + "value": "DuplicateCustomPolicyNames", + "description": "Custom policy names should be unique." + }, + { + "value": "NoLogsExistInDateRange", + "description": "No logs exist in date range." + }, + { + "value": "LogsSizeExceedAllowedLimit", + "description": "Total size of logs exceed allowed limit." + }, + { + "value": "InvalidRewardRequest", + "description": "Invalid reward request." + }, + { + "value": "InvalidEventIdToActivate", + "description": "Invalid activate event request." + }, + { + "value": "InvalidRankRequest", + "description": "Invalid request." + }, + { + "value": "InvalidExportLogsRequest", + "description": "Invalid request." + }, + { + "value": "InvalidContainer", + "description": "SAS Uri must be the Uri to a container that has write permissions." + }, + { + "value": "InvalidModelMetadata", + "description": "Invalid model metadata." + }, + { + "value": "ApprenticeModeNeverTurnedOn", + "description": "Apprentice mode never turned on." + }, + { + "value": "MissingAppId", + "description": "AppId is missing in the header." + }, + { + "value": "InvalidRewardWaitTime", + "description": "Reward wait time should be between 5 seconds and 2 days" + }, + { + "value": "InvalidMultiSlotApiAccess", + "description": "Multi-slot feature is currently disabled. Please follow multi-slot Personalizer documentation to update your loop settings to enable multi-slot functionality." + }, + { + "value": "ModelFileAccessDenied", + "description": "Key vault Key used for customer managed key cannot be accessed." + }, + { + "value": "ProblemTypeIncompatibleWithAutoOptimization", + "description": "Auto-optimization is not compatible with multi-slot personalization." + }, + { + "value": "ResourceNotFound", + "description": "Requested resource does not exist on the server." + }, + { + "value": "FrontEndNotFound", + "description": "Front end not found." + }, + { + "value": "EvaluationNotFound", + "description": "Offline Evaluation not found." + }, + { + "value": "LearningSettingsNotFound", + "description": "Learning Settings not found in evaluation." + }, + { + "value": "EvaluationModelNotFound", + "description": "Model not found in evaluation." + }, + { + "value": "LogsPropertiesNotFound", + "description": "Log properties not found." + }, + { + "value": "ModelRankingError", + "description": "Error while ranking actions using model. Please verify the learning settings are valid." + }, + { + "value": "InternalServerError", + "description": "A generic error has occurred on the server." + }, + { + "value": "RankNullResponse", + "description": "Rank call returned null response." + }, + { + "value": "UpdateConfigurationFailed", + "description": "Failed to update configuration." + }, + { + "value": "ModelResetFailed", + "description": "Model reset failed." + }, + { + "value": "ModelPublishFailed", + "description": "Model publish failed." + }, + { + "value": "ModelMetadataUpdateFailed", + "description": "Model metadata update failed." + }, + { + "value": "OperationNotAllowed", + "description": "This operation is not allowed at this time." + } + ] + } + }, + "message": { + "description": "A message explaining the error reported by the service.", + "type": "string" + }, + "target": { + "description": "Error source element.", + "type": "string" + }, + "details": { + "description": "An array of details about specific errors that led to this reported error.", + "type": "array", + "items": { + "$ref": "#/definitions/PersonalizerError" + } + }, + "innerError": { + "$ref": "#/definitions/InternalError" + } + } + }, + "ErrorResponse": { + "description": "Used to return an error to the client", + "required": [ + "error" + ], + "type": "object", + "properties": { + "error": { + "$ref": "#/definitions/PersonalizerError" + } + } + }, + "PolicyContract": { + "description": "Learning settings specifying how to train the model.", + "required": [ + "arguments", + "name" + ], + "type": "object", + "properties": { + "name": { + "description": "Name of the learning settings.", + "maxLength": 256, + "type": "string" + }, + "arguments": { + "description": "Arguments of the learning settings.", + "maxLength": 1024, + "type": "string" + } + } + }, + "PolicyReferenceContract": { + "description": "Reference to the policy within the evaluation.", + "required": [ + "evaluationId", + "policyName" + ], + "type": "object", + "properties": { + "evaluationId": { + "description": "Evaluation Id of the evaluation.", + "maxLength": 256, + "type": "string" + }, + "policyName": { + "description": "Name of the learning settings.", + "maxLength": 256, + "type": "string" + } + } + }, + "PolicyResultSummary": { + "description": "This class contains the summary of evaluating a policy on a counterfactual evaluation.", + "type": "object", + "properties": { + "timeStamp": { + "format": "date-time", + "description": "Timestamp of the aggregation.", + "type": "string", + "readOnly": true + }, + "ipsEstimatorNumerator": { + "format": "float", + "description": "Numerator for IPS estimator.", + "type": "number", + "readOnly": true + }, + "ipsEstimatorDenominator": { + "format": "float", + "description": "Denominator for IPS estimator.", + "type": "number", + "readOnly": true + }, + "snipsEstimatorDenominator": { + "format": "float", + "description": "Denominator for SNIPS estimator.", + "type": "number", + "readOnly": true + }, + "aggregateTimeWindow": { + "format": "duration", + "description": "Time window for aggregation.\r\nFor example, PT5M (5 mins). For information about the time format,\r\nsee http://en.wikipedia.org/wiki/ISO_8601#Durations", + "type": "string", + "readOnly": true + }, + "nonZeroProbability": { + "format": "float", + "description": "Probability of non-zero values for the Policy evaluation.", + "type": "number" + }, + "sumOfSquares": { + "format": "float", + "description": "Sum of Squares for the Policy evaluation results.", + "type": "number", + "readOnly": true + }, + "confidenceInterval": { + "format": "float", + "description": "Gaussian confidence interval for the Policy evaluation.", + "type": "number", + "readOnly": true + }, + "averageReward": { + "format": "float", + "description": "Average reward.", + "type": "number", + "readOnly": true + } + } + }, + "PolicyResult": { + "description": "This class contains the Learning Settings information and the results of the Offline Evaluation using that policy.", + "type": "object", + "properties": { + "name": { + "description": "The name of the Learning Settings.", + "type": "string", + "readOnly": true + }, + "arguments": { + "description": "The arguments of the Learning Settings.", + "type": "string", + "readOnly": true + }, + "policySource": { + "description": "The source of the Learning Settings.", + "enum": [ + "Online", + "Baseline", + "Random", + "Custom", + "OfflineExperimentation" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "PolicySource", + "modelAsString": true + } + }, + "summary": { + "description": "The aggregate results of the Offline Evaluation.", + "type": "array", + "items": { + "$ref": "#/definitions/PolicyResultSummary" + }, + "readOnly": true + }, + "totalSummary": { + "allOf": [ + { + "$ref": "#/definitions/PolicyResultSummary" + } + ], + "readOnly": true + } + } + }, + "Evaluation": { + "description": "A counterfactual evaluation.", + "type": "object", + "properties": { + "id": { + "description": "The ID of the evaluation.", + "maxLength": 256, + "type": "string", + "readOnly": true + }, + "name": { + "description": "The name of the evaluation.", + "maxLength": 256, + "type": "string", + "readOnly": true + }, + "startTime": { + "format": "date-time", + "description": "The start time of the evaluation.", + "type": "string", + "readOnly": true + }, + "endTime": { + "format": "date-time", + "description": "The end time of the evaluation.", + "type": "string", + "readOnly": true + }, + "jobId": { + "description": "The ID of the job processing the evaluation.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "The status of the job processing the evaluation.", + "enum": [ + "completed", + "pending", + "failed", + "notSubmitted", + "timeout", + "optimalPolicyApplied", + "onlinePolicyRetained" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "EvaluationJobStatus", + "modelAsString": true + } + }, + "policyResults": { + "description": "The results of the evaluation.", + "type": "array", + "items": { + "$ref": "#/definitions/PolicyResult" + } + }, + "featureImportance": { + "type": "array", + "items": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "evaluationType": { + "enum": [ + "Manual", + "Auto" + ], + "type": "string", + "x-ms-enum": { + "name": "EvaluationType", + "modelAsString": true + } + }, + "optimalPolicy": { + "type": "string" + }, + "creationTime": { + "format": "date-time", + "type": "string" + } + } + }, + "EvaluationContract": { + "description": "A counterfactual evaluation.", + "required": [ + "endTime", + "name", + "policies", + "startTime" + ], + "type": "object", + "properties": { + "enableOfflineExperimentation": { + "description": "True if the evaluation should explore for a more optimal learning settings.", + "type": "boolean" + }, + "name": { + "description": "The name of the evaluation.", + "maxLength": 256, + "type": "string" + }, + "startTime": { + "format": "date-time", + "description": "The start time of the evaluation.", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "The end time of the evaluation.", + "type": "string" + }, + "policies": { + "description": "Additional learning settings to evaluate.", + "type": "array", + "items": { + "$ref": "#/definitions/PolicyContract" + } + } + } + }, + "RewardRequest": { + "description": "Reward given to a rank response.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "format": "float", + "description": "Reward to be assigned to an action. Value is a float calculated by your application, typically between 0 and 1, and must be between -1 and 1.", + "type": "number" + } + } + }, + "DateRange": { + "description": "A date range starting at From and ending at To.", + "type": "object", + "properties": { + "from": { + "format": "date-time", + "description": "Start date for the range.", + "type": "string", + "readOnly": true + }, + "to": { + "format": "date-time", + "description": "End date for the range.", + "type": "string", + "readOnly": true + } + } + }, + "LogsProperties": { + "description": "Properties related to data used to train the model.", + "type": "object", + "properties": { + "dateRange": { + "allOf": [ + { + "$ref": "#/definitions/DateRange" + } + ], + "readOnly": true + } + } + }, + "ModelProperties": { + "description": "Properties related to the trained model.", + "type": "object", + "properties": { + "creationTime": { + "format": "date-time", + "description": "Creation time of the model.", + "type": "string", + "readOnly": true + }, + "lastModifiedTime": { + "format": "date-time", + "description": "Last time the model was modified.", + "type": "string", + "readOnly": true + } + } + }, + "SlotReward": { + "required": [ + "slotId", + "value" + ], + "type": "object", + "properties": { + "slotId": { + "description": "Slot id for which we are sending the reward.", + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "value": { + "format": "float", + "description": "Reward to be assigned to slotId. Value should be between -1 and 1 inclusive.", + "type": "number" + } + } + }, + "MultiSlotRewardRequest": { + "description": "Reward given to a list of slots.", + "required": [ + "reward" + ], + "type": "object", + "properties": { + "reward": { + "type": "array", + "items": { + "$ref": "#/definitions/SlotReward" + } + } + } + }, + "RankableAction": { + "description": "An action with its associated features used for ranking.", + "required": [ + "features", + "id" + ], + "type": "object", + "properties": { + "id": { + "description": "Id of the action.", + "maxLength": 256, + "type": "string" + }, + "features": { + "description": "List of dictionaries containing features.", + "type": "array", + "items": { + "type": "object" + } + } + } + }, + "SlotRequest": { + "description": "A slot with it's associated features and list of excluded actions", + "required": [ + "baselineAction", + "id" + ], + "type": "object", + "properties": { + "id": { + "description": "Slot ID", + "type": "string" + }, + "features": { + "description": "List of dictionaries containing slot features.", + "type": "array", + "items": { + "type": "object" + } + }, + "excludedActions": { + "description": "List of excluded action Ids.", + "type": "array", + "items": { + "type": "string" + } + }, + "baselineAction": { + "description": "The 'baseline action' ID for the slot.\r\nThe BaselineAction is the Id of the Action your application would use in that slot if Personalizer didn't exist.\r\nBaselineAction must be defined for every slot.\r\nBaselineAction should never be part of ExcludedActions.\r\nEach slot must have a unique BaselineAction which corresponds to an an action from the event's Actions list.", + "type": "string" + } + } + }, + "MultiSlotRankRequest": { + "required": [ + "actions", + "slots" + ], + "type": "object", + "properties": { + "contextFeatures": { + "description": "Features of the context used for Personalizer as a\r\ndictionary of dictionaries. This is determined by your application, and\r\ntypically includes features about the current user, their\r\ndevice, profile information, aggregated data about time and date, etc.\r\nFeatures should not include personally identifiable information (PII),\r\nunique UserIDs, or precise timestamps.", + "type": "array", + "items": { + "type": "object" + } + }, + "actions": { + "description": "The set of actions the Personalizer service can pick from.\r\nThe set should not contain more than 50 actions.\r\nThe order of the actions does not affect the rank result but the order\r\nshould match the sequence your application would have used to display them.\r\nThe first item in the array will be used as Baseline item in Offline Evaluations.", + "type": "array", + "items": { + "$ref": "#/definitions/RankableAction" + } + }, + "slots": { + "description": "The set of slots the Personalizer service should select actions for.\r\nThe set should not contain more than 50 slots.", + "type": "array", + "items": { + "$ref": "#/definitions/SlotRequest" + } + }, + "eventId": { + "description": "Optionally pass an eventId that uniquely identifies this Rank event.\r\nIf null, the service generates a unique eventId. The eventId will be used for\r\nassociating this request with its reward, as well as seeding the pseudo-random\r\ngenerator when making a Personalizer call.", + "maxLength": 256, + "type": "string" + }, + "deferActivation": { + "description": "Send false if it is certain the rewardActionId in rank results will be shown to the user, therefore\r\nPersonalizer will expect a Reward call, otherwise it will assign the default\r\nReward to the event. Send true if it is possible the user will not see the action specified in the rank results,\r\n(e.g. because the page is rendering later, or the Rank results may be overridden by code further downstream).\r\nYou must call the Activate Event API if the event output is shown to users, otherwise Rewards will be ignored.", + "default": false, + "type": "boolean" + } + } + }, + "SlotResponse": { + "required": [ + "id" + ], + "type": "object", + "properties": { + "id": { + "description": "Id is the slot ID.", + "maxLength": 256, + "type": "string" + }, + "rewardActionId": { + "description": "RewardActionID is the action ID recommended by Personalizer.", + "maxLength": 256, + "type": "string", + "readOnly": true + } + } + }, + "MultiSlotRankResponse": { + "type": "object", + "properties": { + "slots": { + "description": "Each slot has a corresponding rewardActionID which is the action ID recommended by Personalizer.", + "type": "array", + "items": { + "$ref": "#/definitions/SlotResponse" + }, + "readOnly": true + }, + "eventId": { + "description": "The eventId for the round trip from request to response.", + "maxLength": 256, + "type": "string", + "readOnly": true + } + } + }, + "RankRequest": { + "description": "Request a set of actions to be ranked by the Personalizer service.", + "required": [ + "actions" + ], + "type": "object", + "properties": { + "contextFeatures": { + "description": "Features of the context used for Personalizer as a\r\ndictionary of dictionaries. This is determined by your application, and\r\ntypically includes features about the current user, their\r\ndevice, profile information, aggregated data about time and date, etc.\r\nFeatures should not include personally identifiable information (PII),\r\nunique UserIDs, or precise timestamps.", + "type": "array", + "items": { + "type": "object" + } + }, + "actions": { + "description": "The set of actions the Personalizer service can pick from.\r\nThe set should not contain more than 50 actions.\r\nThe order of the actions does not affect the rank result but the order\r\nshould match the sequence your application would have used to display them.\r\nThe first item in the array will be used as Baseline item in Offline Evaluations.", + "type": "array", + "items": { + "$ref": "#/definitions/RankableAction" + } + }, + "excludedActions": { + "description": "The set of action ids to exclude from ranking.\r\nPersonalizer will consider the first non-excluded item in the array as the Baseline action when performing Offline Evaluations.", + "type": "array", + "items": { + "type": "string" + } + }, + "eventId": { + "description": "Optionally pass an eventId that uniquely identifies this Rank event.\r\nIf null, the service generates a unique eventId. The eventId will be used for\r\nassociating this request with its reward, as well as seeding the pseudo-random\r\ngenerator when making a Personalizer call.", + "maxLength": 256, + "type": "string" + }, + "deferActivation": { + "description": "Send false if it is certain the rewardActionId in rank results will be shown to the user, therefore\r\nPersonalizer will expect a Reward call, otherwise it will assign the default\r\nReward to the event. Send true if it is possible the user will not see the action specified in the rank results,\r\n(e.g. because the page is rendering later, or the Rank results may be overridden by code further downstream).\r\nYou must call the Activate Event API if the event output is shown to users, otherwise Rewards will be ignored.", + "default": false, + "type": "boolean" + } + } + }, + "RankedAction": { + "description": "A ranked action with its resulting probability.", + "type": "object", + "properties": { + "id": { + "description": "Id of the action", + "maxLength": 256, + "type": "string", + "readOnly": true + }, + "probability": { + "format": "float", + "description": "Probability of the action", + "maximum": 1, + "minimum": 0, + "type": "number", + "readOnly": true + } + } + }, + "RankResponse": { + "description": "Returns which action to use as rewardActionId, and additional information about each action as a result of a Rank request.", + "type": "object", + "properties": { + "ranking": { + "description": "The calculated ranking for the current request.", + "type": "array", + "items": { + "$ref": "#/definitions/RankedAction" + }, + "readOnly": true + }, + "eventId": { + "description": "The eventId for the round trip from request to response.", + "maxLength": 256, + "type": "string", + "readOnly": true + }, + "rewardActionId": { + "description": "The action chosen by the Personalizer service.\r\nThis is the action your application should display, and for which to report the reward.\r\nThis might not be the first found in 'ranking'.", + "maxLength": 256, + "type": "string", + "readOnly": true + } + } + }, + "ServiceStatus": { + "type": "object", + "properties": { + "service": { + "type": "string" + }, + "apiStatus": { + "type": "string" + }, + "apiStatusMessage": { + "type": "string" + } + } + } + }, + "parameters": { + "Endpoint": { + "in": "path", + "name": "Endpoint", + "description": "Supported Cognitive Services endpoint.", + "required": true, + "type": "string", + "x-ms-parameter-location": "client", + "x-ms-skip-url-encoding": true + } + }, + "securityDefinitions": { + "apim_key": { + "type": "apiKey", + "name": "Ocp-Apim-Subscription-Key", + "in": "header" + } + }, + "security": [ + { + "apim_key": [] + } + ], + "tags": [ + { + "name": "ConfigurationsV1Dot1Preview1", + "description": "Manages configuration operations." + }, + { + "name": "EvaluationsV1Dot1Preview1", + "description": "Manages counterfactual evaluation operations." + }, + { + "name": "MultiSlotEvents", + "description": "Manages multi-slot event operations." + }, + { + "name": "MultiSlotRank", + "description": "Manages multi-slot ranking operations." + }, + { + "name": "Events", + "description": "Manages event operations." + }, + { + "name": "Logs", + "description": "Manages reinforcement learning logs." + }, + { + "name": "Model", + "description": "Manages reinforcement learning configuration operations." + }, + { + "name": "Rank", + "description": "Manages ranking operations." + } + ], + "x-ms-parameterized-host": { + "hostTemplate": "{Endpoint}", + "useSchemePrefix": false, + "parameters": [ + { + "$ref": "#/parameters/Endpoint" + } + ] + } +} diff --git a/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/Evaluation_Apply.json b/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/Evaluation_Apply.json new file mode 100644 index 000000000000..17b6122af1f9 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/Evaluation_Apply.json @@ -0,0 +1,13 @@ +{ + "responses": { + "204": {} + }, + "parameters": { + "Endpoint": "{Endpoint}", + "body": { + "evaluationId": "b58c6d92-b727-48c1-9487-4be2782c9e0a", + "policyName": "online" + }, + "Ocp-Apim-Subscription-Key": "{API key}" + } +} diff --git a/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/Evaluations_Create.json b/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/Evaluations_Create.json new file mode 100644 index 000000000000..59151af299b1 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/Evaluations_Create.json @@ -0,0 +1,43 @@ +{ + "responses": { + "201": { + "headers": { + "Location": "{endpoint}/personalizer/v1.1-preview.1/evaluations/{evaluationId}" + }, + "body": { + "id": "b58c6d92-b727-48c1-9487-4be2782c9e0a", + "name": "myFirstEvaluation", + "startTime": "2018-12-19T00:00:00Z", + "endTime": "2019-01-19T00:00:00Z", + "status": "pending", + "policyResults": [ + { + "name": "Custom learning settings 1", + "arguments": "--cb_explore_adf --epsilon 0.2 --dsjson --cb_type ips -l 0.5 --l1 1E-07 --power_t 0.5", + "policySource": "Online" + } + ], + "featureImportance": [], + "evaluationType": "Manual", + "optimalPolicy": "", + "creationTime": "2019-01-20T00:00:00Z" + } + } + }, + "parameters": { + "Endpoint": "{Endpoint}", + "evaluation": { + "enableOfflineExperimentation": true, + "name": "myFirstEvaluation", + "startTime": "2018-12-19T00:00:00Z", + "endTime": "2019-01-19T00:00:00Z", + "policies": [ + { + "name": "Custom learning settings 1", + "arguments": "--cb_explore_adf --epsilon 0.2 --dsjson --cb_type ips -l 0.5 --l1 1E-07 --power_t 0.5" + } + ] + }, + "Ocp-Apim-Subscription-Key": "{API key}" + } +} diff --git a/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/Evaluations_Delete.json b/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/Evaluations_Delete.json new file mode 100644 index 000000000000..1b8773e08e38 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/Evaluations_Delete.json @@ -0,0 +1,10 @@ +{ + "responses": { + "204": {} + }, + "parameters": { + "evaluationId": "id", + "Endpoint": "{Endpoint}", + "Ocp-Apim-Subscription-Key": "{API key}" + } +} diff --git a/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/Evaluations_Get.json b/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/Evaluations_Get.json new file mode 100644 index 000000000000..11eb9fc459e3 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/Evaluations_Get.json @@ -0,0 +1,74 @@ +{ + "responses": { + "200": { + "headers": {}, + "body": { + "id": "b58c6d92-b727-48c1-9487-4be2782c9e0a", + "name": "myFirstEvaluation", + "startTime": "2018-12-19T00:00:00Z", + "endTime": "2019-01-19T00:00:00Z", + "status": "completed", + "policyResults": [ + { + "name": "Custom learning settings 1", + "arguments": "--cb_explore_adf --epsilon 0.2 --dsjson --cb_type ips -l 0.5 --l1 1E-07 --power_t 0.5", + "policySource": "Custom", + "summary": [ + { + "timeStamp": "2018-12-19T00:00:00Z", + "ipsEstimatorNumerator": 0.0, + "ipsEstimatorDenominator": 170.0, + "snipsEstimatorDenominator": 308.25, + "aggregateTimeWindow": "PT0S", + "nonZeroProbability": 64.0, + "sumOfSquares": 0.0, + "confidenceInterval": 0.0, + "averageReward": 0.0 + }, + { + "timeStamp": "2018-12-19T00:05:00Z", + "ipsEstimatorNumerator": 2.2, + "ipsEstimatorDenominator": 196.0, + "snipsEstimatorDenominator": 193.761, + "aggregateTimeWindow": "PT0S", + "nonZeroProbability": 68.0, + "sumOfSquares": 2.424, + "confidenceInterval": 0.015529361, + "averageReward": 0.01122449 + } + ], + "totalSummary": { + "timeStamp": "2019-01-19T00:00:00Z", + "ipsEstimatorNumerator": 22.2, + "ipsEstimatorDenominator": 1906.0, + "snipsEstimatorDenominator": 1993.761, + "aggregateTimeWindow": "PT0S", + "nonZeroProbability": 68.0, + "sumOfSquares": 2.484, + "confidenceInterval": 0.0015344538, + "averageReward": 0.011647429 + } + } + ], + "featureImportance": [ + [ + "f1", + "f2" + ], + [ + "f3", + "f4" + ] + ], + "evaluationType": "Manual", + "optimalPolicy": "Custom learning settings 1", + "creationTime": "2019-01-20T00:00:00Z" + } + } + }, + "parameters": { + "evaluationId": "id", + "Endpoint": "{Endpoint}", + "Ocp-Apim-Subscription-Key": "{API key}" + } +} diff --git a/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/Evaluations_List.json b/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/Evaluations_List.json new file mode 100644 index 000000000000..18fe22e94bf8 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/Evaluations_List.json @@ -0,0 +1,54 @@ +{ + "responses": { + "200": { + "headers": {}, + "body": [ + { + "id": "b58c6d92-b727-48c1-9487-4be2782c9e0a", + "name": "myFirstEvaluation", + "startTime": "2018-11-19T00:00:00Z", + "endTime": "2018-12-19T00:00:00Z", + "status": "completed", + "policyResults": [ + { + "name": "Custom learning settings 1", + "arguments": "--cb_explore_adf --epsilon 0.2 --dsjson --cb_type ips -l 0.5 --l1 1E-07 --power_t 0.5", + "policySource": "Online", + "totalSummary": { + "timeStamp": "2018-12-19T00:00:00Z", + "ipsEstimatorNumerator": 18.0, + "ipsEstimatorDenominator": 36.0, + "snipsEstimatorDenominator": 1.0, + "aggregateTimeWindow": "PT0S", + "nonZeroProbability": 1.1, + "sumOfSquares": 12.28, + "confidenceInterval": 0.100001775, + "averageReward": 0.5 + } + } + ], + "featureImportance": [], + "evaluationType": "Manual", + "optimalPolicy": "Custom learning settings 1", + "creationTime": "2019-01-19T00:00:00Z" + }, + { + "id": "21d03972-9130-4be9-8c8b-8ac3ec9b9dd1", + "name": "mySecondEvaluation", + "startTime": "2018-12-19T00:00:00Z", + "endTime": "2019-01-19T00:00:00Z", + "status": "pending", + "policyResults": [], + "featureImportance": [], + "evaluationType": "Manual", + "optimalPolicy": "", + "creationTime": "2019-01-19T00:00:00Z" + } + ] + } + }, + "parameters": { + "Ocp-Apim-Subscription-Key": "{API key}", + "Endpoint": "{Endpoint}" + } +} diff --git a/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/Events_Activate.json b/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/Events_Activate.json new file mode 100644 index 000000000000..5ad279ba6d85 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/Events_Activate.json @@ -0,0 +1,10 @@ +{ + "responses": { + "204": {} + }, + "parameters": { + "eventId": "id", + "Endpoint": "{Endpoint}", + "Ocp-Apim-Subscription-Key": "{API key}" + } +} diff --git a/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/Events_Reward.json b/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/Events_Reward.json new file mode 100644 index 000000000000..747305a2680f --- /dev/null +++ b/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/Events_Reward.json @@ -0,0 +1,13 @@ +{ + "responses": { + "204": {} + }, + "parameters": { + "eventId": "id", + "Endpoint": "{Endpoint}", + "reward": { + "value": 1.0 + }, + "Ocp-Apim-Subscription-Key": "{API key}" + } +} diff --git a/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/Log_Delete.json b/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/Log_Delete.json new file mode 100644 index 000000000000..3e1ff333b3b9 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/Log_Delete.json @@ -0,0 +1,9 @@ +{ + "responses": { + "204": {} + }, + "parameters": { + "Ocp-Apim-Subscription-Key": "{API key}", + "Endpoint": "{Endpoint}" + } +} diff --git a/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/Log_GetProperties.json b/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/Log_GetProperties.json new file mode 100644 index 000000000000..001264140641 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/Log_GetProperties.json @@ -0,0 +1,17 @@ +{ + "responses": { + "200": { + "headers": {}, + "body": { + "dateRange": { + "from": "2019-01-18T16:00:00-08:00", + "to": "2019-02-18T16:00:00-08:00" + } + } + } + }, + "parameters": { + "Ocp-Apim-Subscription-Key": "{API key}", + "Endpoint": "{Endpoint}" + } +} diff --git a/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/Model_Get.json b/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/Model_Get.json new file mode 100644 index 000000000000..97276daa2c84 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/Model_Get.json @@ -0,0 +1,12 @@ +{ + "responses": { + "200": { + "headers": {}, + "body": "" + } + }, + "parameters": { + "Ocp-Apim-Subscription-Key": "{API key}", + "Endpoint": "{Endpoint}" + } +} diff --git a/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/Model_GetProperties.json b/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/Model_GetProperties.json new file mode 100644 index 000000000000..b6e1f1c38d8a --- /dev/null +++ b/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/Model_GetProperties.json @@ -0,0 +1,15 @@ +{ + "responses": { + "200": { + "headers": {}, + "body": { + "creationTime": "2019-01-18T16:00:00-08:00", + "lastModifiedTime": "2019-01-18T16:00:00-08:00" + } + } + }, + "parameters": { + "Ocp-Apim-Subscription-Key": "{API key}", + "Endpoint": "{Endpoint}" + } +} diff --git a/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/Model_Reset.json b/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/Model_Reset.json new file mode 100644 index 000000000000..3e1ff333b3b9 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/Model_Reset.json @@ -0,0 +1,9 @@ +{ + "responses": { + "204": {} + }, + "parameters": { + "Ocp-Apim-Subscription-Key": "{API key}", + "Endpoint": "{Endpoint}" + } +} diff --git a/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/MultiSlotEvents_Activate.json b/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/MultiSlotEvents_Activate.json new file mode 100644 index 000000000000..5ad279ba6d85 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/MultiSlotEvents_Activate.json @@ -0,0 +1,10 @@ +{ + "responses": { + "204": {} + }, + "parameters": { + "eventId": "id", + "Endpoint": "{Endpoint}", + "Ocp-Apim-Subscription-Key": "{API key}" + } +} diff --git a/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/MultiSlotEvents_Reward.json b/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/MultiSlotEvents_Reward.json new file mode 100644 index 000000000000..ce9f5ef2badd --- /dev/null +++ b/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/MultiSlotEvents_Reward.json @@ -0,0 +1,22 @@ +{ + "responses": { + "204": {} + }, + "parameters": { + "eventId": "id", + "Endpoint": "{Endpoint}", + "body": { + "reward": [ + { + "slotId": "Heroposition", + "value": 0.5 + }, + { + "slotId": "SideBar", + "value": 0.6 + } + ] + }, + "Ocp-Apim-Subscription-Key": "{API key}" + } +} diff --git a/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/MultiSlot_Rank.json b/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/MultiSlot_Rank.json new file mode 100644 index 000000000000..5d8cd1ec1db2 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/MultiSlot_Rank.json @@ -0,0 +1,104 @@ +{ + "responses": { + "201": { + "headers": {}, + "body": { + "slots": [ + { + "id": "Main Article", + "rewardActionId": "EntertainmentArticle" + }, + { + "id": "Side Bar", + "rewardActionId": "SportsArticle" + } + ], + "eventId": "75269AD0-BFEE-4598-8196-C57383D38E10" + } + } + }, + "parameters": { + "Endpoint": "{Endpoint}", + "body": { + "contextFeatures": [ + { + "user": { + "profileType": "AnonymousUser", + "latLong": "47.6,-122.1" + } + }, + { + "environment": { + "dayOfMonth": "28", + "monthOfYear": "8", + "weather": "Sunny" + } + }, + { + "device": { + "mobile": true, + "windows": true + } + }, + { + "recentActivity": { + "itemsInCart": 3 + } + } + ], + "actions": [ + { + "id": "NewsArticle", + "features": [ + { + "type": "News" + } + ] + }, + { + "id": "SportsArticle", + "features": [ + { + "type": "Sports" + } + ] + }, + { + "id": "EntertainmentArticle", + "features": [ + { + "type": "Entertainment" + } + ] + } + ], + "slots": [ + { + "id": "Main Article", + "features": [ + { + "size": "Large", + "position": "Top Middle" + } + ], + "excludedActions": [ + "SportsArticle" + ], + "baselineAction": "EntertainmentArticle" + }, + { + "id": "Side Bar", + "features": [ + { + "size": "Small" + } + ], + "baselineAction": "NewsArticle" + } + ], + "eventId": "75269AD0-BFEE-4598-8196-C57383D38E10", + "deferActivation": false + }, + "Ocp-Apim-Subscription-Key": "{API key}" + } +} diff --git a/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/Policy_Get.json b/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/Policy_Get.json new file mode 100644 index 000000000000..a59c927b68dd --- /dev/null +++ b/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/Policy_Get.json @@ -0,0 +1,15 @@ +{ + "responses": { + "200": { + "headers": {}, + "body": { + "name": "myPersonalizer", + "arguments": "--cb_explore_adf --epsilon 0.2 --dsjson --cb_type ips -l 0.5 --l1 1E-07 --power_t 0.5" + } + } + }, + "parameters": { + "Ocp-Apim-Subscription-Key": "{API key}", + "Endpoint": "{Endpoint}" + } +} diff --git a/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/Policy_Reset.json b/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/Policy_Reset.json new file mode 100644 index 000000000000..a59c927b68dd --- /dev/null +++ b/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/Policy_Reset.json @@ -0,0 +1,15 @@ +{ + "responses": { + "200": { + "headers": {}, + "body": { + "name": "myPersonalizer", + "arguments": "--cb_explore_adf --epsilon 0.2 --dsjson --cb_type ips -l 0.5 --l1 1E-07 --power_t 0.5" + } + } + }, + "parameters": { + "Ocp-Apim-Subscription-Key": "{API key}", + "Endpoint": "{Endpoint}" + } +} diff --git a/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/Policy_Update.json b/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/Policy_Update.json new file mode 100644 index 000000000000..00236ae7214a --- /dev/null +++ b/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/Policy_Update.json @@ -0,0 +1,19 @@ +{ + "responses": { + "200": { + "headers": {}, + "body": { + "name": "myPersonalizer", + "arguments": "--cb_explore_adf --epsilon 0.2 --dsjson --cb_type ips -l 0.5 --l1 1E-07 --power_t 0.5" + } + } + }, + "parameters": { + "Endpoint": "{Endpoint}", + "policy": { + "name": "myPersonalizer", + "arguments": "--cb_explore_adf --epsilon 0.2 --dsjson --cb_type ips -l 0.5 --l1 1E-07 --power_t 0.5" + }, + "Ocp-Apim-Subscription-Key": "{API key}" + } +} diff --git a/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/Rank.json b/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/Rank.json new file mode 100644 index 000000000000..a3fd69260990 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/Rank.json @@ -0,0 +1,88 @@ +{ + "responses": { + "201": { + "headers": {}, + "body": { + "ranking": [ + { + "id": "EntertainmentArticle", + "probability": 0.8 + }, + { + "id": "SportsArticle", + "probability": 0.0 + }, + { + "id": "NewsArticle", + "probability": 0.2 + } + ], + "eventId": "75269AD0-BFEE-4598-8196-C57383D38E10", + "rewardActionId": "EntertainmentArticle" + } + } + }, + "parameters": { + "Endpoint": "{Endpoint}", + "rankRequest": { + "contextFeatures": [ + { + "user": { + "profileType": "AnonymousUser", + "latLong": "47.6,-122.1" + } + }, + { + "environment": { + "dayOfMonth": "28", + "monthOfYear": "8", + "weather": "Sunny" + } + }, + { + "device": { + "mobile": true, + "windows": true + } + }, + { + "recentActivity": { + "itemsInCart": 3 + } + } + ], + "actions": [ + { + "id": "NewsArticle", + "features": [ + { + "type": "News" + } + ] + }, + { + "id": "SportsArticle", + "features": [ + { + "type": "Sports" + } + ] + }, + { + "id": "EntertainmentArticle", + "features": [ + { + "type": "Entertainment" + } + ] + } + ], + "excludedActions": [ + "SportsArticle" + ], + "eventId": "75269AD0-BFEE-4598-8196-C57383D38E10", + "deferActivation": false + }, + "Ocp-Apim-Subscription-Key": "{API key}" + } +} diff --git a/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/ServiceConfiguration_Get.json b/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/ServiceConfiguration_Get.json new file mode 100644 index 000000000000..fd4a7629b683 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/ServiceConfiguration_Get.json @@ -0,0 +1,26 @@ +{ + "responses": { + "200": { + "headers": {}, + "body": { + "rewardWaitTime": "PT10M", + "defaultReward": 0.0, + "rewardAggregation": "earliest", + "explorationPercentage": 0.2, + "modelExportFrequency": "PT5M", + "logMirrorEnabled": true, + "logMirrorSasUri": "https://testblob.blob.core.windows.net/container?se=2020-08-13T00%3A00Z&sp=rwl&spr=https&sv=2018-11-09&sr=c&sig=signature", + "logRetentionDays": 7, + "lastConfigurationEditDate": "0001-01-01T00:00:00Z", + "learningMode": "Online", + "isAutoOptimizationEnabled": true, + "autoOptimizationFrequency": "P7D", + "autoOptimizationStartDate": "2019-01-19T00:00:00Z" + } + } + }, + "parameters": { + "Ocp-Apim-Subscription-Key": "{API key}", + "Endpoint": "{Endpoint}" + } +} diff --git a/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/ServiceConfiguration_Update.json b/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/ServiceConfiguration_Update.json new file mode 100644 index 000000000000..d7282c6809a4 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Personalizer/preview/v1.1-preview.1/examples/ServiceConfiguration_Update.json @@ -0,0 +1,41 @@ +{ + "responses": { + "200": { + "headers": {}, + "body": { + "rewardWaitTime": "PT10M", + "defaultReward": 0.0, + "rewardAggregation": "earliest", + "explorationPercentage": 0.2, + "modelExportFrequency": "PT5M", + "logMirrorEnabled": true, + "logMirrorSasUri": "https://testblob.blob.core.windows.net/container?se=2020-08-13T00%3A00Z&sp=rwl&spr=https&sv=2018-11-09&sr=c&sig=signature", + "logRetentionDays": 7, + "lastConfigurationEditDate": "0001-01-01T00:00:00Z", + "learningMode": "Online", + "isAutoOptimizationEnabled": true, + "autoOptimizationFrequency": "P7D", + "autoOptimizationStartDate": "2019-01-19T00:00:00Z" + } + } + }, + "parameters": { + "Endpoint": "{Endpoint}", + "config": { + "rewardWaitTime": "PT10M", + "defaultReward": 0.0, + "rewardAggregation": "earliest", + "explorationPercentage": 0.2, + "modelExportFrequency": "PT5M", + "logMirrorEnabled": true, + "logMirrorSasUri": "https://testblob.blob.core.windows.net/container?se=2020-08-13T00%3A00Z&sp=rwl&spr=https&sv=2018-11-09&sr=c&sig=signature", + "logRetentionDays": 7, + "lastConfigurationEditDate": "0001-01-01T00:00:00Z", + "learningMode": "Online", + "isAutoOptimizationEnabled": true, + "autoOptimizationFrequency": "P7D", + "autoOptimizationStartDate": "2019-01-19T00:00:00Z" + }, + "Ocp-Apim-Subscription-Key": "{API key}" + } +} diff --git a/specification/cognitiveservices/data-plane/Personalizer/readme.go.md b/specification/cognitiveservices/data-plane/Personalizer/readme.go.md index 840c1723868a..1bef9b08ae54 100644 --- a/specification/cognitiveservices/data-plane/Personalizer/readme.go.md +++ b/specification/cognitiveservices/data-plane/Personalizer/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ```yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: personalizer clear-output-folder: true diff --git a/specification/cognitiveservices/data-plane/Personalizer/readme.md b/specification/cognitiveservices/data-plane/Personalizer/readme.md index 888fcc5d55a7..612669f6ca1b 100644 --- a/specification/cognitiveservices/data-plane/Personalizer/readme.md +++ b/specification/cognitiveservices/data-plane/Personalizer/readme.md @@ -28,6 +28,14 @@ input-file: - preview/v1.0/Personalizer.json ``` +### Release 1.0-Preview +These settings apply only when `--tag=release_1_1_preview.1` is specified on the command line. + +``` yaml $(tag) == 'release_1_1_preview.1' +input-file: + - preview/v1.1-preview.1/Personalizer.json +``` + ## Swagger to SDK This section describes what SDK should be generated by the automatic system. diff --git a/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/QnAMaker.json b/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/QnAMaker.json new file mode 100644 index 000000000000..6d76a5e4131e --- /dev/null +++ b/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/QnAMaker.json @@ -0,0 +1,2090 @@ +{ + "swagger": "2.0", + "info": { + "version": "v5.0-preview.2", + "title": "QnAMaker Client", + "description": "An API for QnAMaker Service" + }, + "securityDefinitions": { + "apim_key": { + "type": "apiKey", + "name": "Ocp-Apim-Subscription-Key", + "in": "header" + } + }, + "security": [ + { + "apim_key": [] + } + ], + "x-ms-parameterized-host": { + "hostTemplate": "{Endpoint}/qnamaker/v5.0-preview.2", + "useSchemePrefix": false, + "parameters": [ + { + "$ref": "#/parameters/Endpoint" + } + ] + }, + "paths": { + "/endpointSettings": { + "get": { + "summary": "Gets endpoint settings for an endpoint.", + "operationId": "EndpointSettings_GetSettings", + "parameters": [], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "Response with endpoint settings info in it.", + "schema": { + "$ref": "#/definitions/EndpointSettingsDTO" + }, + "x-nullable": true + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Successful query": { + "$ref": "./examples/SuccessfulGetEpSettings.json" + } + } + }, + "patch": { + "tags": [ + "EndpointKeys" + ], + "summary": "Updates endpoint settings for an endpoint.", + "operationId": "EndpointSettings_UpdateSettings", + "parameters": [ + { + "$ref": "#/parameters/EndpointSettingsPayload" + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "204": { + "description": "HTTP 204 No Content." + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Successful query": { + "$ref": "./examples/SuccessfulSetEpSettings.json" + } + } + } + }, + "/endpointkeys": { + "get": { + "summary": "Gets endpoint keys for an endpoint", + "operationId": "EndpointKeys_GetKeys", + "parameters": [], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "Response with endpoint info in it.", + "schema": { + "$ref": "#/definitions/EndpointKeysDTO" + }, + "x-nullable": true + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Successful query": { + "$ref": "./examples/SuccessfulGetEpKeys.json" + } + } + } + }, + "/endpointkeys/{keyType}": { + "patch": { + "tags": [ + "EndpointKeys" + ], + "summary": "Re-generates an endpoint key.", + "operationId": "EndpointKeys_RefreshKeys", + "parameters": [ + { + "$ref": "#/parameters/KeyType" + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "Details of the endpoint keys generated.", + "schema": { + "$ref": "#/definitions/EndpointKeysDTO" + }, + "x-nullable": true + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Successful query": { + "$ref": "./examples/SuccessfulSetEpKeys.json" + } + } + } + }, + "/alterations": { + "get": { + "tags": [ + "Alterations" + ], + "summary": "Download alterations from runtime.", + "operationId": "Alterations_Get", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "Alterations data.", + "schema": { + "$ref": "#/definitions/WordAlterationsDTO" + }, + "x-nullable": true + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Successful query": { + "$ref": "./examples/SuccessfulGetAlts.json" + } + } + }, + "put": { + "tags": [ + "Alterations" + ], + "summary": "Replace alterations data.", + "operationId": "Alterations_Replace", + "parameters": [ + { + "$ref": "#/parameters/WordAlterations" + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "204": { + "description": "HTTP 204 No Content." + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Successful query": { + "$ref": "./examples/SuccessfulSetAlts.json" + } + } + } + }, + "/alterations/{kbId}": { + "get": { + "tags": [ + "Alterations" + ], + "summary": "Download alterations per Knowledgebase (QnAMaker Managed).", + "operationId": "Alterations_GetAlterationsForKb", + "parameters": [ + { + "$ref": "#/parameters/KbId" + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "Alterations data.", + "schema": { + "$ref": "#/definitions/WordAlterationsDTO" + }, + "x-nullable": true + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Successful query": { + "$ref": "./examples/SuccessfulGetAltsForKb.json" + } + } + }, + "put": { + "tags": [ + "Alterations" + ], + "summary": "Replace alterations data per Knowledgebase (QnAMaker Managed).", + "operationId": "Alterations_ReplaceAlterationsForKb", + "parameters": [ + { + "$ref": "#/parameters/KbId" + }, + { + "$ref": "#/parameters/WordAlterations" + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "204": { + "description": "HTTP 204 No Content." + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Successful query": { + "$ref": "./examples/SuccessfulSetAltsForKb.json" + } + } + } + }, + "/knowledgebases": { + "get": { + "tags": [ + "Knowledgebases" + ], + "summary": "Gets all knowledgebases for a user.", + "operationId": "Knowledgebase_ListAll", + "parameters": [], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "Collection of knowledgebases.", + "schema": { + "$ref": "#/definitions/KnowledgebasesDTO" + }, + "x-nullable": true + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Successful query": { + "$ref": "./examples/SuccessfulKbsResponse.json" + } + } + } + }, + "/operations/{operationId}": { + "get": { + "tags": [ + "Operations" + ], + "summary": "Gets details of a specific long running operation.", + "operationId": "Operations_GetDetails", + "parameters": [ + { + "$ref": "#/parameters/OperationId" + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "Details of the long running operation.", + "schema": { + "$ref": "#/definitions/Operation" + }, + "x-nullable": true, + "headers": { + "RetryAfter": { + "type": "integer", + "description": "Indicates how long the client should wait before sending a follow up request. The header will be present only if the operation is running or has not started yet." + } + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Successful query": { + "$ref": "./examples/SuccessfulGetOps.json" + } + } + } + }, + "/knowledgebases/{kbId}": { + "get": { + "tags": [ + "Knowledgebases" + ], + "summary": "Gets details of a specific knowledgebase.", + "operationId": "Knowledgebase_GetDetails", + "parameters": [ + { + "$ref": "#/parameters/KbId" + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "Details of the knowledgebase.", + "schema": { + "$ref": "#/definitions/KnowledgebaseDTO" + }, + "x-nullable": true + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Successful query": { + "$ref": "./examples/SuccessfulGetKb.json" + } + } + }, + "delete": { + "tags": [ + "Knowledgebases" + ], + "summary": "Deletes the knowledgebase and all its data.", + "operationId": "Knowledgebase_Delete", + "parameters": [ + { + "$ref": "#/parameters/KbId" + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "204": { + "description": "HTTP 204 No content." + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Successful query": { + "$ref": "./examples/SuccessfulDelKb.json" + } + } + }, + "post": { + "tags": [ + "Knowledgebases" + ], + "summary": "Publishes all changes in test index of a knowledgebase to its prod index.", + "operationId": "Knowledgebase_Publish", + "parameters": [ + { + "$ref": "#/parameters/KbId" + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "204": { + "description": "HTTP 204 No content." + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Successful query": { + "$ref": "./examples/SuccessfulPubKb.json" + } + } + }, + "put": { + "tags": [ + "Knowledgebases" + ], + "summary": "Replace knowledgebase contents.", + "operationId": "Knowledgebase_Replace", + "parameters": [ + { + "$ref": "#/parameters/KbId" + }, + { + "$ref": "#/parameters/ReplaceKb" + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "204": { + "description": "HTTP 204 No content." + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Successful query": { + "$ref": "./examples/SuccessfulRepKb.json" + } + } + }, + "patch": { + "tags": [ + "Knowledgebases" + ], + "summary": "Asynchronous operation to modify a knowledgebase.", + "operationId": "Knowledgebase_Update", + "parameters": [ + { + "$ref": "#/parameters/KbId" + }, + { + "$ref": "#/parameters/UpdateKb" + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "202": { + "description": "Details of the asynchronous operation.", + "schema": { + "$ref": "#/definitions/Operation" + }, + "x-nullable": true, + "headers": { + "Location": { + "type": "string", + "description": "Relative URI to the target location of the asynchronous operation. Client should poll this resource to get status of the operation." + } + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Successful query": { + "$ref": "./examples/SuccessfulUpdKb.json" + } + } + } + }, + "/knowledgebases/create": { + "post": { + "tags": [ + "Knowledgebases" + ], + "summary": "Asynchronous operation to create a new knowledgebase.", + "operationId": "Knowledgebase_Create", + "parameters": [ + { + "$ref": "#/parameters/CreateKbPayload" + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "202": { + "description": "Details of the asynchronous operation.", + "schema": { + "$ref": "#/definitions/Operation" + }, + "x-nullable": true + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Successful query": { + "$ref": "./examples/SuccessfulCreateKb.json" + } + } + } + }, + "/knowledgebases/{kbId}/{environment}/qna": { + "get": { + "tags": [ + "Knowledgebases" + ], + "summary": "Download the knowledgebase.", + "operationId": "Knowledgebase_Download", + "parameters": [ + { + "$ref": "#/parameters/KbId" + }, + { + "$ref": "#/parameters/Environment" + }, + { + "name": "source", + "in": "query", + "description": "The source property filter to apply.", + "required": false, + "type": "string" + }, + { + "name": "changedSince", + "in": "query", + "description": "The last changed status property filter to apply.", + "required": false, + "type": "string" + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "Collection of all Q-A in the knowledgebase.", + "schema": { + "$ref": "#/definitions/QnADocumentsDTO" + }, + "x-nullable": true + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Successful query": { + "$ref": "./examples/SuccessfulDownloadKb.json" + } + } + } + }, + "/knowledgebases/{kbId}/generateAnswer": { + "post": { + "tags": [ + "Knowledgebases" + ], + "summary": "GenerateAnswer call to query knowledgebase (QnA Maker Managed).", + "operationId": "Knowledgebase_GenerateAnswer", + "parameters": [ + { + "$ref": "#/parameters/KbId" + }, + { + "$ref": "#/parameters/GenerateAnswerPayload" + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "GenerateAnswer call response.", + "schema": { + "$ref": "#/definitions/QnASearchResultList" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Successful query": { + "$ref": "./examples/SuccessfulGenAns.json" + } + } + } + }, + "/knowledgebases/{kbId}/train": { + "post": { + "tags": [ + "Knowledgebases" + ], + "summary": "Train call to add suggestions to knowledgebase (QnAMaker Managed).", + "operationId": "Knowledgebase_Train", + "parameters": [ + { + "$ref": "#/parameters/KbId" + }, + { + "$ref": "#/parameters/TrainPayload" + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "204": { + "description": "HTTP 204 No Content." + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Successful query": { + "$ref": "./examples/SuccessfulTrain.json" + } + } + } + }, + "/generateAnswer": { + "post": { + "tags": [ + "Prebuilt" + ], + "summary": "GenerateAnswer call to query text in documents.", + "operationId": "Prebuilt_GenerateAnswer", + "parameters": [ + { + "$ref": "#/parameters/PrebuiltGenerateAnswerPayload" + }, + { + "$ref": "#/parameters/StringIndexType" + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "Prebuilt GenerateAnswer call response.", + "schema": { + "$ref": "#/definitions/GenerateAnswerBatchResult" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Successful query": { + "$ref": "./examples/SuccessfulPreBuiltGenAns.json" + } + } + } + } + }, + "definitions": { + "UpdateKbOperationDTO": { + "type": "object", + "description": "Contains list of QnAs to be updated", + "additionalProperties": false, + "properties": { + "add": { + "description": "An instance of CreateKbInputDTO for add operation", + "allOf": [ + { + "$ref": "#/definitions/CreateKbInputDTO" + } + ] + }, + "delete": { + "description": "An instance of DeleteKbContentsDTO for delete Operation", + "allOf": [ + { + "$ref": "#/definitions/DeleteKbContentsDTO" + } + ] + }, + "update": { + "description": "An instance of UpdateKbContentsDTO for Update Operation", + "allOf": [ + { + "$ref": "#/definitions/UpdateKbContentsDTO" + } + ] + }, + "enableHierarchicalExtraction": { + "type": "boolean", + "description": "Enable hierarchical extraction of Q-A from files and urls. The value set during KB creation will be used if this field is not present." + }, + "defaultAnswerUsedForExtraction": { + "type": "string", + "description": "Text string to be used as the answer in any Q-A which has no extracted answer from the document but has a hierarchy. Required when EnableHierarchicalExtraction field is set to True.", + "maxLength": 300, + "minLength": 1 + } + } + }, + "UpdateKbContentsDTO": { + "type": "object", + "description": "PATCH body schema for Update operation in Update Kb", + "additionalProperties": false, + "properties": { + "name": { + "type": "string", + "description": "Friendly name for the knowledgebase." + }, + "qnaList": { + "type": "array", + "description": "List of Q-A (UpdateQnaDTO) to be added to the knowledgebase.", + "items": { + "$ref": "#/definitions/UpdateQnaDTO" + } + }, + "urls": { + "type": "array", + "description": "List of existing URLs to be refreshed. The content will be extracted again and re-indexed.", + "maxLength": 10, + "items": { + "type": "string" + } + }, + "defaultAnswer": { + "type": "string", + "description": "Default answer sent to user if no good match is found in the KB.", + "maxLength": 300, + "minLength": 1 + } + } + }, + "UpdateQnaDTO": { + "type": "object", + "description": "PATCH Body schema for Update Qna List", + "additionalProperties": false, + "properties": { + "id": { + "type": "integer", + "description": "Unique id for the Q-A", + "format": "int32", + "maximum": 2147483647, + "minimum": 0 + }, + "answer": { + "type": "string", + "description": "Answer text" + }, + "source": { + "type": "string", + "description": "Source from which Q-A was indexed. eg. https://docs.microsoft.com/en-us/azure/cognitive-services/QnAMaker/FAQs", + "maxLength": 300 + }, + "questions": { + "description": "List of questions associated with the answer.", + "allOf": [ + { + "$ref": "#/definitions/UpdateQuestionsDTO" + } + ] + }, + "metadata": { + "description": "List of metadata associated with the answer to be updated", + "allOf": [ + { + "$ref": "#/definitions/UpdateMetadataDTO" + } + ] + }, + "context": { + "description": "Context associated with Qna to be updated.", + "allOf": [ + { + "$ref": "#/definitions/UpdateContextDTO" + } + ] + } + } + }, + "UpdateQuestionsDTO": { + "type": "object", + "description": "PATCH Body schema for Update Kb which contains list of questions to be added and deleted", + "additionalProperties": false, + "properties": { + "add": { + "type": "array", + "description": "List of questions to be added", + "maxLength": 100, + "items": { + "type": "string" + } + }, + "delete": { + "type": "array", + "description": "List of questions to be deleted.", + "maxLength": 100, + "items": { + "type": "string" + } + } + } + }, + "UpdateMetadataDTO": { + "type": "object", + "description": "PATCH Body schema to represent list of Metadata to be updated", + "additionalProperties": false, + "properties": { + "delete": { + "type": "array", + "description": "List of Metadata associated with answer to be deleted", + "maxLength": 100, + "items": { + "$ref": "#/definitions/MetadataDTO" + } + }, + "add": { + "type": "array", + "description": "List of metadata associated with answer to be added", + "maxLength": 100, + "items": { + "$ref": "#/definitions/MetadataDTO" + } + } + } + }, + "UpdateContextDTO": { + "type": "object", + "description": "Update Body schema to represent context to be updated", + "properties": { + "promptsToDelete": { + "type": "array", + "description": "List of prompts associated with qna to be deleted", + "items": { + "type": "integer", + "format": "int32" + } + }, + "promptsToAdd": { + "type": "array", + "description": "List of prompts to be added to the qna.", + "items": { + "$ref": "#/definitions/PromptDTO" + } + }, + "isContextOnly": { + "type": "boolean", + "description": "To mark if a prompt is relevant only with a previous question or not.\ntrue - Do not include this QnA as search result for queries without context\nfalse - ignores context and includes this QnA in search result" + } + } + }, + "DeleteKbContentsDTO": { + "type": "object", + "description": "PATCH body schema of Delete Operation in UpdateKb", + "additionalProperties": false, + "properties": { + "ids": { + "type": "array", + "description": "List of Qna Ids to be deleted", + "items": { + "type": "integer", + "format": "int32" + } + }, + "sources": { + "type": "array", + "description": "List of sources to be deleted from knowledgebase.", + "maxLength": 300, + "minLength": 1, + "items": { + "type": "string" + } + } + } + }, + "CreateKbInputDTO": { + "type": "object", + "description": "Input to create KB.", + "additionalProperties": false, + "properties": { + "qnaList": { + "type": "array", + "description": "List of QNA to be added to the index. Ids are generated by the service and should be omitted.", + "items": { + "$ref": "#/definitions/QnADTO" + } + }, + "urls": { + "type": "array", + "description": "List of URLs to be added to knowledgebase.", + "maxLength": 10, + "items": { + "type": "string" + } + }, + "files": { + "type": "array", + "description": "List of files to be added to knowledgebase.", + "maxLength": 10, + "items": { + "$ref": "#/definitions/FileDTO" + } + } + } + }, + "QnADocumentsDTO": { + "type": "object", + "description": "List of QnADTO", + "additionalProperties": false, + "properties": { + "qnaDocuments": { + "type": "array", + "description": "List of answers.", + "items": { + "$ref": "#/definitions/QnADTO" + } + } + } + }, + "CreateKbDTO": { + "type": "object", + "description": "Post body schema for CreateKb operation.", + "additionalProperties": false, + "required": [ + "name" + ], + "properties": { + "name": { + "type": "string", + "description": "Friendly name for the knowledgebase.", + "maxLength": 100, + "minLength": 1 + }, + "qnaList": { + "type": "array", + "description": "List of Q-A (QnADTO) to be added to the knowledgebase. Q-A Ids are assigned by the service and should be omitted.", + "maxLength": 1000, + "items": { + "$ref": "#/definitions/QnADTO" + } + }, + "urls": { + "type": "array", + "description": "List of URLs to be used for extracting Q-A.", + "maxLength": 10, + "items": { + "type": "string" + } + }, + "files": { + "type": "array", + "description": "List of files from which to Extract Q-A.", + "maxLength": 10, + "items": { + "$ref": "#/definitions/FileDTO" + } + }, + "enableHierarchicalExtraction": { + "type": "boolean", + "description": "Enable hierarchical extraction of Q-A from files and urls. Value to be considered False if this field is not present." + }, + "defaultAnswerUsedForExtraction": { + "type": "string", + "description": "Text string to be used as the answer in any Q-A which has no extracted answer from the document but has a hierarchy. Required when EnableHierarchicalExtraction field is set to True.", + "maxLength": 300, + "minLength": 1 + }, + "language": { + "type": "string", + "description": "Language of the knowledgebase. Please find the list of supported languages here.", + "maxLength": 100, + "minLength": 1 + }, + "enableMultipleLanguages": { + "type": "boolean", + "description": "Set to true to enable creating KBs in different languages for the same resource." + }, + "defaultAnswer": { + "type": "string", + "description": "Default answer sent to user if no good match is found in the KB.", + "maxLength": 300, + "minLength": 1 + } + } + }, + "FileDTO": { + "type": "object", + "description": "DTO to hold details of uploaded files.", + "additionalProperties": false, + "required": [ + "fileName", + "fileUri" + ], + "properties": { + "fileName": { + "type": "string", + "description": "File name. Supported file types are \".tsv\", \".pdf\", \".txt\", \".docx\", \".xlsx\".", + "maxLength": 200, + "minLength": 1 + }, + "fileUri": { + "type": "string", + "description": "Public URI of the file." + }, + "isUnstructured": { + "type": "boolean", + "description": "Optional Flag to specify if the given file is Unstructured." + } + } + }, + "ReplaceKbDTO": { + "type": "object", + "description": "Post body schema for Replace KB operation.", + "additionalProperties": false, + "required": [ + "qnAList" + ], + "properties": { + "qnAList": { + "type": "array", + "description": "List of Q-A (QnADTO) to be added to the knowledgebase. Q-A Ids are assigned by the service and should be omitted.", + "items": { + "$ref": "#/definitions/QnADTO" + } + } + } + }, + "QnADTO": { + "type": "object", + "description": "Q-A object.", + "additionalProperties": false, + "required": [ + "answer", + "questions" + ], + "properties": { + "id": { + "type": "integer", + "description": "Unique id for the Q-A.", + "format": "int32" + }, + "answer": { + "type": "string", + "description": "Answer text", + "maxLength": 25000, + "minLength": 1 + }, + "source": { + "type": "string", + "description": "Source from which Q-A was indexed. eg. https://docs.microsoft.com/en-us/azure/cognitive-services/QnAMaker/FAQs", + "maxLength": 300 + }, + "questions": { + "type": "array", + "description": "List of questions associated with the answer.", + "maxLength": 100, + "minLength": 1, + "items": { + "type": "string" + } + }, + "metadata": { + "type": "array", + "description": "List of metadata associated with the answer.", + "maxLength": 10, + "items": { + "$ref": "#/definitions/MetadataDTO" + } + }, + "context": { + "description": "Context of a QnA", + "allOf": [ + { + "$ref": "#/definitions/ContextDTO" + } + ] + }, + "lastUpdatedTimestamp": { + "type": "string", + "description": "Timestamp when the QnA was last updated.", + "maxLength": 300 + } + } + }, + "ContextDTO": { + "type": "object", + "description": "Context associated with Qna.", + "properties": { + "isContextOnly": { + "type": "boolean", + "description": "To mark if a prompt is relevant only with a previous question or not.\ntrue - Do not include this QnA as search result for queries without context\nfalse - ignores context and includes this QnA in search result" + }, + "prompts": { + "type": "array", + "description": "List of prompts associated with the answer.", + "maxItems": 20, + "items": { + "$ref": "#/definitions/PromptDTO" + } + } + } + }, + "PromptDTO": { + "type": "object", + "description": "Prompt for an answer.", + "properties": { + "displayOrder": { + "type": "integer", + "description": "Index of the prompt - used in ordering of the prompts", + "format": "int32" + }, + "qnaId": { + "type": "integer", + "description": "Qna id corresponding to the prompt - if QnaId is present, QnADTO object is ignored.", + "format": "int32" + }, + "qna": { + "description": "QnADTO - Either QnaId or QnADTO needs to be present in a PromptDTO object", + "allOf": [ + { + "$ref": "#/definitions/QnADTO" + } + ] + }, + "displayText": { + "type": "string", + "description": "Text displayed to represent a follow up question prompt", + "maxLength": 200 + } + } + }, + "MetadataDTO": { + "type": "object", + "description": "Name - value pair of metadata.", + "additionalProperties": false, + "required": [ + "name", + "value" + ], + "properties": { + "name": { + "type": "string", + "description": "Metadata name.", + "maxLength": 100, + "minLength": 1 + }, + "value": { + "type": "string", + "description": "Metadata value.", + "maxLength": 500, + "minLength": 1 + } + } + }, + "ErrorResponse": { + "type": "object", + "description": "Error response. As per Microsoft One API guidelines - https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses.", + "additionalProperties": false, + "properties": { + "error": { + "description": "The error object.", + "allOf": [ + { + "$ref": "#/definitions/Error" + } + ] + } + } + }, + "Error": { + "type": "object", + "description": "The error object. As per Microsoft One API guidelines - https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses.", + "additionalProperties": false, + "required": [ + "code" + ], + "properties": { + "code": { + "description": "One of a server-defined set of error codes.", + "$ref": "#/definitions/ErrorCode" + }, + "message": { + "type": "string", + "description": "A human-readable representation of the error." + }, + "target": { + "type": "string", + "description": "The target of the error." + }, + "details": { + "type": "array", + "description": "An array of details about specific errors that led to this reported error.", + "items": { + "$ref": "#/definitions/Error" + } + }, + "innerError": { + "description": "An object containing more specific information than the current object about the error.", + "$ref": "#/definitions/InnerErrorModel" + } + } + }, + "ErrorCode": { + "type": "string", + "description": "Human readable error code.", + "x-ms-enum": { + "name": "ErrorCodeType", + "modelAsString": true + }, + "enum": [ + "BadArgument", + "Forbidden", + "NotFound", + "KbNotFound", + "Unauthorized", + "Unspecified", + "EndpointKeysError", + "QuotaExceeded", + "QnaRuntimeError", + "SKULimitExceeded", + "OperationNotFound", + "ServiceError", + "ValidationFailure", + "ExtractionFailure" + ] + }, + "InnerErrorModel": { + "type": "object", + "description": "An object containing more specific information about the error. As per Microsoft One API guidelines - https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses.", + "additionalProperties": false, + "properties": { + "code": { + "type": "string", + "description": "A more specific error code than was provided by the containing error." + }, + "innerError": { + "description": "An object containing more specific information than the current object about the error.", + "$ref": "#/definitions/InnerErrorModel" + } + } + }, + "Operation": { + "type": "object", + "description": "Record to track long running operation.", + "additionalProperties": false, + "properties": { + "operationState": { + "description": "Operation state.", + "$ref": "#/definitions/OperationState" + }, + "createdTimestamp": { + "type": "string", + "description": "Timestamp when the operation was created." + }, + "lastActionTimestamp": { + "type": "string", + "description": "Timestamp when the current state was entered." + }, + "resourceLocation": { + "type": "string", + "description": "Relative URI to the target resource location for completed resources." + }, + "userId": { + "type": "string", + "description": "User Id" + }, + "operationId": { + "type": "string", + "description": "Operation Id." + }, + "errorResponse": { + "description": "Error details in case of failures.", + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "OperationState": { + "type": "string", + "description": "Enumeration of operation states.", + "x-ms-enum": { + "name": "OperationStateType", + "modelAsString": true + }, + "enum": [ + "Failed", + "NotStarted", + "Running", + "Succeeded" + ] + }, + "KnowledgebasesDTO": { + "type": "object", + "description": "Collection of knowledgebases owned by a user.", + "additionalProperties": false, + "properties": { + "knowledgebases": { + "type": "array", + "description": "Collection of knowledgebase records.", + "items": { + "$ref": "#/definitions/KnowledgebaseDTO" + } + } + } + }, + "KnowledgebaseDTO": { + "type": "object", + "description": "Response schema for CreateKb operation.", + "additionalProperties": false, + "properties": { + "id": { + "type": "string", + "description": "Unique id that identifies a knowledgebase." + }, + "hostName": { + "type": "string", + "description": "URL host name at which the knowledgebase is hosted." + }, + "lastAccessedTimestamp": { + "type": "string", + "description": "Time stamp at which the knowledgebase was last accessed (UTC)." + }, + "lastChangedTimestamp": { + "type": "string", + "description": "Time stamp at which the knowledgebase was last modified (UTC)." + }, + "lastPublishedTimestamp": { + "type": "string", + "description": "Time stamp at which the knowledgebase was last published (UTC)." + }, + "name": { + "type": "string", + "description": "Friendly name of the knowledgebase." + }, + "userId": { + "type": "string", + "description": "User who created / owns the knowledgebase." + }, + "urls": { + "type": "array", + "description": "URL sources from which Q-A were extracted and added to the knowledgebase.", + "items": { + "type": "string" + } + }, + "sources": { + "type": "array", + "description": "Custom sources from which Q-A were extracted or explicitly added to the knowledgebase.", + "items": { + "type": "string" + } + } + } + }, + "EndpointSettingsDTO": { + "type": "object", + "description": "Endpoint settings.", + "additionalProperties": false, + "properties": { + "activeLearning": { + "description": "Active Learning settings of the endpoint.", + "allOf": [ + { + "$ref": "#/definitions/ActiveLearningSettingsDTO" + } + ] + } + } + }, + "ActiveLearningSettingsDTO": { + "type": "object", + "description": "Active Learning settings of the endpoint.", + "additionalProperties": false, + "properties": { + "enable": { + "type": "string", + "description": "True/False string providing Active Learning" + } + } + }, + "WordAlterationsDTO": { + "type": "object", + "description": "Collection of word alterations.", + "additionalProperties": false, + "required": [ + "wordAlterations" + ], + "properties": { + "wordAlterations": { + "type": "array", + "description": "Collection of word alterations.", + "maxLength": 10000, + "items": { + "$ref": "#/definitions/AlterationsDTO" + } + } + } + }, + "AlterationsDTO": { + "type": "object", + "description": "Collection of words that are synonyms.", + "additionalProperties": false, + "required": [ + "alterations" + ], + "properties": { + "alterations": { + "type": "array", + "description": "Words that are synonymous with each other.", + "maxLength": 20, + "minLength": 1, + "items": { + "type": "string" + } + } + } + }, + "EndpointKeysDTO": { + "type": "object", + "description": "Schema for EndpointKeys generate/refresh operations.", + "additionalProperties": false, + "properties": { + "primaryEndpointKey": { + "type": "string", + "description": "Primary Access Key." + }, + "secondaryEndpointKey": { + "type": "string", + "description": "Secondary Access Key." + }, + "installedVersion": { + "type": "string", + "description": "Current version of runtime." + }, + "lastStableVersion": { + "type": "string", + "description": "Latest version of runtime." + }, + "language": { + "type": "string", + "description": "Language setting of runtime." + } + } + }, + "QueryDTO": { + "type": "object", + "description": "POST body schema to query the knowledgebase.", + "additionalProperties": false, + "properties": { + "qnaId": { + "type": "string", + "description": "Exact qnaId to fetch from the knowledgebase, this field takes priority over question." + }, + "question": { + "type": "string", + "description": "User question to query against the knowledge base." + }, + "top": { + "type": "integer", + "description": "Max number of answers to be returned for the question.", + "format": "int32" + }, + "userId": { + "type": "string", + "description": "Unique identifier for the user." + }, + "isTest": { + "type": "boolean", + "description": "Query against the test index." + }, + "scoreThreshold": { + "type": "number", + "description": "Minimum threshold score for answers." + }, + "context": { + "description": "Context object with previous QnA's information.", + "allOf": [ + { + "$ref": "#/definitions/QueryContextDTO" + } + ] + }, + "rankerType": { + "type": "string", + "description": "Optional field. Set to 'QuestionOnly' for using a question only Ranker." + }, + "strictFilters": { + "type": "array", + "description": "Find QnAs that are associated with the given list of metadata.", + "items": { + "$ref": "#/definitions/MetadataDTO" + } + }, + "strictFiltersCompoundOperationType": { + "type": "string", + "description": "Optional field. Set to 'OR' for using OR operation for strict filters.", + "x-ms-enum": { + "name": "StrictFiltersCompoundOperationType", + "modelAsString": true + }, + "enum": [ + "AND", + "OR" + ] + }, + "answerSpanRequest": { + "description": "To configure Answer span prediction feature.", + "allOf": [ + { + "$ref": "#/definitions/AnswerSpanRequestDTO" + } + ] + }, + "includeUnstructuredSources": { + "type": "boolean", + "description": "Optional Flag to enable Query over Unstructured Sources." + } + } + }, + "QueryContextDTO": { + "type": "object", + "description": "Context object with previous QnA's information.", + "additionalProperties": false, + "properties": { + "previousQnaId": { + "type": "integer", + "description": "Previous QnA Id - qnaId of the top result." + }, + "previousUserQuery": { + "type": "string", + "description": "Previous user query." + } + } + }, + "QnASearchResultList": { + "type": "object", + "description": "Represents List of Question Answers.", + "additionalProperties": false, + "properties": { + "answers": { + "type": "array", + "description": "Represents Search Result list.", + "items": { + "$ref": "#/definitions/QnASearchResult" + } + } + } + }, + "QnASearchResult": { + "type": "object", + "description": "Represents Search Result.", + "additionalProperties": false, + "properties": { + "questions": { + "type": "array", + "description": "List of questions.", + "items": { + "type": "string" + } + }, + "answer": { + "type": "string", + "description": "Answer." + }, + "score": { + "type": "number", + "description": "Search result score." + }, + "id": { + "type": "integer", + "description": "Id of the QnA result.", + "format": "int32" + }, + "source": { + "type": "string", + "description": "Source of QnA result." + }, + "metadata": { + "type": "array", + "description": "List of metadata.", + "items": { + "$ref": "#/definitions/MetadataDTO" + } + }, + "context": { + "type": "object", + "description": "Context object of the QnA", + "allOf": [ + { + "$ref": "#/definitions/ContextDTO" + } + ] + }, + "answerSpan": { + "type": "object", + "description": "Answer span object of QnA with respect to user's question.", + "allOf": [ + { + "$ref": "#/definitions/AnswerSpanResponseDTO" + } + ] + } + } + }, + "FeedbackRecordsDTO": { + "type": "object", + "description": "Active learning feedback records.", + "additionalProperties": false, + "properties": { + "feedbackRecords": { + "type": "array", + "description": "List of feedback records.", + "maxLength": 1000, + "items": { + "$ref": "#/definitions/FeedbackRecordDTO" + } + } + } + }, + "FeedbackRecordDTO": { + "type": "object", + "description": "Active learning feedback record.", + "additionalProperties": false, + "properties": { + "userId": { + "type": "string", + "description": "Unique identifier for the user." + }, + "userQuestion": { + "type": "string", + "description": "The suggested question being provided as feedback.", + "maxLength": 1000 + }, + "qnaId": { + "type": "integer", + "description": "The qnaId for which the suggested question is provided as feedback.", + "format": "int32" + } + } + }, + "AnswerSpanRequestDTO": { + "type": "object", + "description": "To configure Answer span prediction feature.", + "additionalProperties": false, + "properties": { + "enable": { + "type": "boolean", + "description": "Enable or Disable Answer Span prediction." + }, + "scoreThreshold": { + "type": "number", + "format": "double", + "description": "Minimum threshold score required to include an answer span." + }, + "topAnswersWithSpan": { + "type": "integer", + "description": "Number of Top answers to be considered for span prediction.", + "format": "int32", + "maximum": 10, + "minimum": 1 + } + } + }, + "AnswerSpanResponseDTO": { + "type": "object", + "description": "Answer span object of QnA.", + "additionalProperties": false, + "properties": { + "text": { + "type": "string", + "description": "Predicted text of answer span." + }, + "score": { + "type": "number", + "description": "Predicted score of answer span.", + "format": "double" + }, + "startIndex": { + "type": "integer", + "description": "Start index of answer span in answer.", + "format": "int32" + }, + "endIndex": { + "type": "integer", + "description": "End index of answer span in answer.", + "format": "int32" + } + } + }, + "PrebuiltQuery": { + "type": "object", + "description": "POST body schema to query the documents via Prebuilt Question Answering.", + "required": [ + "question", + "documents" + ], + "additionalProperties": false, + "properties": { + "question": { + "type": "string", + "description": "User question to query against the given documents." + }, + "documents": { + "type": "array", + "description": "Documents to be searched for given question.", + "items": { + "$ref": "#/definitions/TextInput" + } + }, + "language": { + "type": "string", + "description": "(Optional) Language of the documents. This is ISO 639-1 representation of a language. For example, use \"en\" for English; \"es\" for Spanish etc. If not set, use \"en\" for English as default.", + "maxLength": 100, + "minLength": 2 + } + } + }, + "GenerateAnswerBatchResult": { + "type": "object", + "description": "Represents List of Answer Results.", + "maxLength": 5, + "items": { + "$ref": "#/definitions/GenerateAnswerBatchResultItem" + } + }, + "GenerateAnswerBatchResultItem": { + "type": "object", + "description": "Represents Prebuilt Answer Result.", + "additionalProperties": false, + "properties": { + "answer": { + "type": "string", + "description": "Answer." + }, + "score": { + "type": "number", + "description": "Search result score." + }, + "id": { + "type": "string", + "description": "Document Id." + }, + "answerSpan": { + "type": "object", + "description": "Answer span object with respect to user's question.", + "allOf": [ + { + "$ref": "#/definitions/AnswerSpanResponseDTO" + } + ] + }, + "answerStartIndex": { + "type": "integer", + "description": "Start index of answer in document text.", + "format": "int32" + }, + "answerEndIndex": { + "type": "integer", + "description": "End index of answer in document text.", + "format": "int32" + } + } + }, + "TextInput": { + "type": "object", + "description": "List of documents to be queried over.", + "additionalProperties": false, + "required": [ + "id", + "text" + ], + "properties": { + "id": { + "type": "string", + "description": "Unique identifier for the document." + }, + "text": { + "type": "string", + "description": "Text contents of the document" + } + } + } + }, + "parameters": { + "Environment": { + "type": "string", + "name": "environment", + "in": "path", + "required": true, + "x-nullable": false, + "description": "Specifies whether environment is Test or Prod.", + "x-ms-enum": { + "name": "EnvironmentType", + "modelAsString": true + }, + "enum": [ + "Prod", + "Test" + ], + "x-ms-parameter-location": "method" + }, + "CreateKbPayload": { + "name": "createKbPayload", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CreateKbDTO" + }, + "x-nullable": true, + "description": "Post body of the request.", + "x-ms-parameter-location": "method" + }, + "UpdateKb": { + "name": "updateKb", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/UpdateKbOperationDTO" + }, + "x-nullable": true, + "description": "Post body of the request.", + "x-ms-parameter-location": "method" + }, + "ReplaceKb": { + "name": "replaceKb", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ReplaceKbDTO" + }, + "x-nullable": true, + "description": "An instance of ReplaceKbDTO which contains list of qnas to be uploaded", + "x-ms-parameter-location": "method" + }, + "KbId": { + "type": "string", + "name": "kbId", + "in": "path", + "required": true, + "x-nullable": false, + "description": "Knowledgebase id.", + "x-ms-parameter-location": "method" + }, + "OperationId": { + "type": "string", + "name": "operationId", + "in": "path", + "required": true, + "x-nullable": false, + "description": "Operation id.", + "x-ms-parameter-location": "method" + }, + "WordAlterations": { + "name": "wordAlterations", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/WordAlterationsDTO" + }, + "x-nullable": true, + "description": "New alterations data.", + "x-ms-parameter-location": "method" + }, + "KeyType": { + "type": "string", + "name": "keyType", + "in": "path", + "required": true, + "x-nullable": false, + "description": "Type of Key", + "x-ms-parameter-location": "method" + }, + "GenerateAnswerPayload": { + "name": "generateAnswerPayload", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/QueryDTO" + }, + "x-nullable": true, + "description": "Post body of the request.", + "x-ms-parameter-location": "method" + }, + "TrainPayload": { + "name": "trainPayload", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FeedbackRecordsDTO" + }, + "x-nullable": true, + "description": "Post body of the request.", + "x-ms-parameter-location": "method" + }, + "Endpoint": { + "name": "Endpoint", + "description": "Supported Cognitive Services endpoint (e.g., https://< qnamaker-resource-name >.api.cognitiveservices.azure.com).", + "x-ms-parameter-location": "client", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true + }, + "EndpointSettingsPayload": { + "name": "endpointSettingsPayload", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/EndpointSettingsDTO" + }, + "x-nullable": true, + "description": "Post body of the request.", + "x-ms-parameter-location": "method" + }, + "PrebuiltGenerateAnswerPayload": { + "name": "prebuiltGenerateAnswerPayload", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrebuiltQuery" + }, + "x-nullable": true, + "description": "Post body of the request.", + "x-ms-parameter-location": "method" + }, + "StringIndexType": { + "name": "stringIndexType", + "in": "query", + "type": "string", + "description": "(Optional) Specifies the method used to interpret string offsets. Defaults to Text Elements (Graphemes) according to Unicode v8.0.0.", + "default": "TextElements_v8", + "enum": [ + "TextElements_v8", + "UnicodeCodePoint", + "Utf16CodeUnit" + ], + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulCreateKb.json b/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulCreateKb.json new file mode 100644 index 000000000000..2f0bc8e9ee82 --- /dev/null +++ b/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulCreateKb.json @@ -0,0 +1,93 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "createKbPayload": { + "name": "QnA Maker FAQ", + "qnaList": [ + { + "id": 0, + "answer": "You can change the default message if you use the QnAMakerDialog. See this for details: https://docs.botframework.com/en-us/azure-bot-service/templates/qnamaker/#navtitle", + "source": "Custom Editorial", + "questions": [ + "How can I change the default message from QnA Maker?" + ], + "metadata": [] + }, + { + "id": 0, + "answer": "You can use our REST apis to create a KB. See here for details: https://docs.microsoft.com/en-us/rest/api/cognitiveservices/qnamaker/knowledgebase/create", + "source": "Custom Editorial", + "questions": [ + "How do I programmatically create a KB?" + ], + "metadata": [ + { + "name": "category", + "value": "api" + } + ], + "context": { + "isContextOnly": false, + "prompts": [ + { + "displayOrder": 1, + "displayText": "Update KB", + "qna": { + "answer": "You can use our REST apis to update your KB. See here for details: https://docs.microsoft.com/en-us/rest/api/cognitiveservices/qnamaker/knowledgebase/update", + "questions": [ + "How do I programmatically update my KB?" + ], + "metadata": [ + { + "name": "category", + "value": "api" + } + ], + "context": { + "isContextOnly": false, + "prompts": [ + { + "displayOrder": 1, + "displayText": "Refresh Endpoint Keys", + "qna": { + "answer": "You can use our REST apis to refresh endpoint keys. See here for details: https://docs.microsoft.com/en-us/rest/api/cognitiveservices/qnamaker/endpointkeys/refreshkeys", + "questions": [ + "How do I programmatically refresh endpoint keys?" + ] + } + } + ] + } + } + } + ] + } + } + ], + "urls": [ + "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", + "https://docs.microsoft.com/en-us/bot-framework/resources-bot-framework-faq" + ], + "files": [ + { + "fileName": "SurfaceManual.pdf", + "fileUri": "https://download.microsoft.com/download/2/9/B/29B20383-302C-4517-A006-B0186F04BE28/surface-pro-4-user-guide-EN.pdf" + } + ] + } + }, + "responses": { + "202": { + "headers": {}, + "body": { + "operationState": "NotStarted", + "createdTimestamp": "2018-03-19T07:38:46Z", + "lastActionTimestamp": "2018-03-19T07:39:29Z", + "userId": "86bb8390-56c0-42c2-9f81-3de161981191", + "operationId": "03a4f4ce-30a6-4ec6-b436-02bcdf6153e1" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulDelKb.json b/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulDelKb.json new file mode 100644 index 000000000000..bcd50173c37b --- /dev/null +++ b/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulDelKb.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "kbId": "9d091697-fb8c-4ed5-9ac0-35bf8273bfff" + }, + "responses": { + "204": {} + } +} diff --git a/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulDownloadKb.json b/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulDownloadKb.json new file mode 100644 index 000000000000..9c4bb3d38824 --- /dev/null +++ b/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulDownloadKb.json @@ -0,0 +1,96 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "kbId": "9d091697-fb8c-4ed5-9ac0-35bf8273bfff", + "environment": "Test" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "qnaDocuments": [ + { + "id": 1, + "answer": "You can change the default message if you use the QnAMakerDialog. See this for details: https://docs.botframework.com/en-us/azure-bot-service/templates/qnamaker/#navtitle", + "source": "Custom Editorial", + "questions": [ + "How can I change the default message from QnA Maker?" + ], + "metadata": [], + "context": { + "isContextOnly": false, + "prompts": [] + }, + "lastUpdatedTimestamp": "2020-08-27T16:00:30.272746+00:00" + }, + { + "id": 2, + "answer": "You can use our REST apis to create a KB. See here for details: https://docs.microsoft.com/en-us/rest/api/cognitiveservices/qnamaker/knowledgebase/create", + "source": "Custom Editorial", + "questions": [ + "How do I programmatically create a KB?" + ], + "metadata": [ + { + "name": "category", + "value": "api" + } + ], + "context": { + "isContextOnly": false, + "prompts": [ + { + "displayOrder": 1, + "qnaId": 3, + "displayText": "Update KB" + } + ] + }, + "lastUpdatedTimestamp": "2020-08-27T16:00:30.272746+00:00" + }, + { + "id": 3, + "answer": "You can use our REST apis to update your KB. See here for details: https://docs.microsoft.com/en-us/rest/api/cognitiveservices/qnamaker/knowledgebase/update", + "source": "Editorial", + "questions": [ + "How do I programmatically update my KB?" + ], + "metadata": [ + { + "name": "category", + "value": "api" + } + ], + "context": { + "isContextOnly": false, + "prompts": [ + { + "displayOrder": 1, + "qnaId": 4, + "displayText": "Refresh Endpoint Keys" + } + ] + }, + "lastUpdatedTimestamp": "2020-08-27T16:00:30.272746+00:00" + }, + { + "id": 4, + "answer": "You can use our REST apis to refresh endpoint keys. See here for details: https://docs.microsoft.com/en-us/rest/api/cognitiveservices/qnamaker/endpointkeys/refreshkeys", + "source": "Editorial", + "questions": [ + "How do I programmatically refresh endpoint keys?" + ], + "metadata": [], + "context": { + "isContextOnly": false, + "prompts": [] + }, + "lastUpdatedTimestamp": "2020-08-27T16:00:30.272746+00:00" + } + ] + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulGenAns.json b/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulGenAns.json new file mode 100644 index 000000000000..c225ade135db --- /dev/null +++ b/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulGenAns.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Ocp-Apim-Subscription-Key": "{API key}", + "Content-Type": "application/json", + "kbId": "9d091697-fb8c-4ed5-9ac0-35bf8273bfff", + "generateAnswerPayload": { + "question": "How much time it takes to complete quickstart guide?", + "top": 6, + "isTest": true, + "context": { + "previousQnaId": 9, + "previousUserQuery": "Where are QnA Maker quickstarts?" + }, + "scoreThreshold": 20, + "strictFilters": [ + { + "name": "category", + "value": "api" + } + ], + "answerSpanRequest": { + "enable": true, + "scoreThreshold": 25, + "topAnswersWithSpan": 1 + }, + "userId": "sd53lsY=" + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "answers": [ + { + "questions": [ + "Complete a quickstart" + ], + "answer": "We offer quickstarts in most popular programming languages, each designed to teach you basic design patterns, and have you running code in less than 10 minutes. See the following list for the quickstart for each feature.\n\n* [Get started with the LUIS client library](https://docs.microsoft.com/en-us/azure/cognitive-services/qnamaker/quickstarts/quickstart-sdk)\n\n* [Get started with the LUIS portal](https://docs.microsoft.com/en-us/azure/cognitive-services/qnamaker/quickstarts/create-publish-knowledge-base)\n\n* [Get started with the LUIS REST APis](https://docs.microsoft.com/en-us/azure/cognitive-services/qnamaker/quickstarts/quickstart-rest-curl)", + "score": 46.11, + "id": 9, + "source": "Editorial", + "metadata": [], + "context": { + "isContextOnly": false, + "prompts": [] + }, + "answerSpan": { + "text": "less than 10 minutes", + "score": 54.92, + "startIndex": 139, + "endIndex": 159 + } + } + ] + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulGetAlts.json b/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulGetAlts.json new file mode 100644 index 000000000000..465b1152950e --- /dev/null +++ b/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulGetAlts.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "wordAlterations": [ + { + "alterations": [ + "qnamaker", + "qna maker" + ] + }, + { + "alterations": [ + "botframework", + "bot framework" + ] + }, + { + "alterations": [ + "webchat", + "web chat" + ] + } + ] + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulGetAltsForKb.json b/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulGetAltsForKb.json new file mode 100644 index 000000000000..dcd63a18be30 --- /dev/null +++ b/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulGetAltsForKb.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "kbId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "wordAlterations": [ + { + "alterations": [ + "qnamaker", + "qna maker" + ] + }, + { + "alterations": [ + "botframework", + "bot framework" + ] + }, + { + "alterations": [ + "webchat", + "web chat" + ] + } + ] + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulGetEpKeys.json b/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulGetEpKeys.json new file mode 100644 index 000000000000..a32d6baa42de --- /dev/null +++ b/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulGetEpKeys.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "primaryEndpointKey": "73e88a14-694a-44d5-883b-184a68aa8530", + "secondaryEndpointKey": "b2c98c16-ca31-4294-8626-6c57454a5063", + "installedVersion": "4.0.5", + "lastStableVersion": "4.0.6" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulGetEpSettings.json b/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulGetEpSettings.json new file mode 100644 index 000000000000..97cc7fcac360 --- /dev/null +++ b/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulGetEpSettings.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "activeLearning": { + "enable": "True" + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulGetKb.json b/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulGetKb.json new file mode 100644 index 000000000000..fbec604c70f5 --- /dev/null +++ b/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulGetKb.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "kbId": "9d091697-fb8c-4ed5-9ac0-35bf8273bfff" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "9d091697-fb8c-4ed5-9ac0-35bf8273bfff", + "hostName": "https://myqnamakerbot.azurewebsites.net", + "lastAccessedTimestamp": "2018-03-16T10:59:46Z", + "lastChangedTimestamp": "2018-03-16T10:58:10Z", + "lastPublishedTimestamp": "2018-03-16T10:59:56Z", + "name": "My QnA Maker Bot", + "userId": "03a4f4ce-30a6-4ec6-b436-02bcdf6153e1", + "urls": [ + "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", + "https://docs.microsoft.com/en-us/bot-framework/resources-bot-framework-faq" + ], + "sources": [ + "Custom Editorial", + "SurfaceManual.pdf" + ] + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulGetOps.json b/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulGetOps.json new file mode 100644 index 000000000000..85e84d90aed9 --- /dev/null +++ b/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulGetOps.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "operationId": "03a4f4ce-30a6-4ec6-b436-02bcdf6153e1" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "operationState": "Succeeded", + "createdTimestamp": "2018-03-19T07:38:46Z", + "lastActionTimestamp": "2018-03-19T07:39:29Z", + "resourceLocation": "https://westus.api.cognitive.microsoft.com/qnamaker/v4.0/knowledgebases/9d091697-fb8c-4ed5-9ac0-35bf8273bfff", + "userId": "86bb8390-56c0-42c2-9f81-3de161981191", + "operationId": "03a4f4ce-30a6-4ec6-b436-02bcdf6153e1" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulKbsResponse.json b/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulKbsResponse.json new file mode 100644 index 000000000000..aab19445e730 --- /dev/null +++ b/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulKbsResponse.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "knowledgebases": [ + { + "id": "9d091697-fb8c-4ed5-9ac0-35bf8273bfff", + "hostName": "https://myqnamakerbot.azurewebsites.net", + "lastAccessedTimestamp": "2018-03-16T10:59:46Z", + "lastChangedTimestamp": "2018-03-16T10:58:10Z", + "lastPublishedTimestamp": "2018-03-16T10:59:56Z", + "name": "My QnA Maker Bot", + "userId": "03a4f4ce-30a6-4ec6-b436-02bcdf6153e1", + "urls": [ + "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", + "https://docs.microsoft.com/en-us/bot-framework/resources-bot-framework-faq" + ], + "sources": [ + "Custom Editorial", + "SurfaceManual.pdf" + ] + } + ] + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulPreBuiltGenAns.json b/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulPreBuiltGenAns.json new file mode 100644 index 000000000000..114745fb2259 --- /dev/null +++ b/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulPreBuiltGenAns.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Ocp-Apim-Subscription-Key": "{API key}", + "Content-Type": "application/json", + "prebuiltGenerateAnswerPayload": { + "question": "qna maker and luis", + "documents": [ + { + "text": "Graphics  Surprise, surprise -- our 4K Envy 13 came with a discrete graphics card. While the Nvidia GeForce MX250 GPU isn't meant for demanding gaming", + "id": "1" + }, + { + "text": "Graphics  Surprise, surprise -- our 4K Envy 13 came with a discrete graphics card. While the Nvidia GeForce MX250 GPU isn't meant for demanding gaming", + "id": "2" + } + ], + "language": "en" + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "answers": [ + { + "answer": "Graphics  Surprise, surprise -- our 4K Envy 13 came with a discrete graphics card. While the Nvidia GeForce MX250 GPU isn't meant for demanding gaming, it is a step up from integrated graphics as proven by comparing it to the UHD 620 GPU in the FHD model.", + "answerSpan": { + "endIndex": 82, + "startIndex": 60, + "text": "discrete graphics card", + "score": 0.0 + }, + "answerEndIndex": 655, + "answerStartIndex": 0, + "id": 1, + "score": 100.0 + } + ] + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulPubKb.json b/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulPubKb.json new file mode 100644 index 000000000000..bcd50173c37b --- /dev/null +++ b/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulPubKb.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "kbId": "9d091697-fb8c-4ed5-9ac0-35bf8273bfff" + }, + "responses": { + "204": {} + } +} diff --git a/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulRepKb.json b/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulRepKb.json new file mode 100644 index 000000000000..fd6ba1224539 --- /dev/null +++ b/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulRepKb.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "kbId": "9d091697-fb8c-4ed5-9ac0-35bf8273bfff", + "replaceKb": { + "qnAList": [ + { + "id": 0, + "answer": "You can change the default message if you use the QnAMakerDialog. See this for details: https://docs.botframework.com/en-us/azure-bot-service/templates/qnamaker/#navtitle", + "source": "Custom Editorial", + "questions": [ + "How can I change the default message from QnA Maker?" + ], + "metadata": [] + }, + { + "id": 0, + "answer": "You can use our REST apis to create a KB. See here for details: https://docs.microsoft.com/en-us/rest/api/cognitiveservices/qnamaker/knowledgebase/create", + "source": "Custom Editorial", + "questions": [ + "How do I programmatically create a KB?" + ], + "metadata": [ + { + "name": "category", + "value": "api" + } + ] + } + ] + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulSetAlts.json b/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulSetAlts.json new file mode 100644 index 000000000000..ba8facefde92 --- /dev/null +++ b/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulSetAlts.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "wordAlterations": { + "wordAlterations": [ + { + "alterations": [ + "qnamaker", + "qna maker" + ] + }, + { + "alterations": [ + "botframework", + "bot framework" + ] + }, + { + "alterations": [ + "webchat", + "web chat" + ] + } + ] + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulSetAltsForKb.json b/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulSetAltsForKb.json new file mode 100644 index 000000000000..6dc5ca492391 --- /dev/null +++ b/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulSetAltsForKb.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "kbId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "wordAlterations": { + "wordAlterations": [ + { + "alterations": [ + "qnamaker", + "qna maker" + ] + }, + { + "alterations": [ + "botframework", + "bot framework" + ] + }, + { + "alterations": [ + "webchat", + "web chat" + ] + } + ] + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulSetEpKeys.json b/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulSetEpKeys.json new file mode 100644 index 000000000000..925d4f65d77d --- /dev/null +++ b/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulSetEpKeys.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "keyType": "PrimaryKey" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "primaryEndpointKey": "73e88a14-694a-44d5-883b-184a68aa8530", + "secondaryEndpointKey": "b2c98c16-ca31-4294-8626-6c57454a5063", + "installedVersion": "4.0.5", + "lastStableVersion": "4.0.6" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulSetEpSettings.json b/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulSetEpSettings.json new file mode 100644 index 000000000000..468c0b59680a --- /dev/null +++ b/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulSetEpSettings.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "endpointSettingsPayload": { + "activeLearning": { + "enable": "True" + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulTrain.json b/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulTrain.json new file mode 100644 index 000000000000..4dabb5d81c35 --- /dev/null +++ b/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulTrain.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Ocp-Apim-Subscription-Key": "{Primary/Secondary Endpoint Key}", + "Content-Type": "application/json", + "kbId": "9d091697-fb8c-4ed5-9ac0-35bf8273bfff", + "trainPayload": { + "feedbackRecords": [ + { + "userId": "sd53lsY=", + "userQuestion": "qna maker with luis", + "qnaId": 4 + } + ] + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulUpdKb.json b/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulUpdKb.json new file mode 100644 index 000000000000..3c717ca27123 --- /dev/null +++ b/specification/cognitiveservices/data-plane/QnAMaker/preview/v5.0-preview.2/examples/SuccessfulUpdKb.json @@ -0,0 +1,155 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "kbId": "9d091697-fb8c-4ed5-9ac0-35bf8273bfff", + "updateKb": { + "add": { + "qnaList": [ + { + "id": 0, + "answer": "You can change the default message if you use the QnAMakerDialog. See this for details: https://docs.botframework.com/en-us/azure-bot-service/templates/qnamaker/#navtitle", + "source": "Custom Editorial", + "questions": [ + "How can I change the default message from QnA Maker?" + ], + "metadata": [] + } + ], + "urls": [ + "https://docs.microsoft.com/en-us/azure/cognitive-services/Emotion/FAQ" + ], + "files": [ + { + "fileName": "SurfaceManual.pdf", + "fileUri": "https://download.microsoft.com/download/2/9/B/29B20383-302C-4517-A006-B0186F04BE28/surface-pro-4-user-guide-EN.pdf" + } + ] + }, + "delete": { + "ids": [ + 13, + 35 + ] + }, + "update": { + "name": "QnA Maker FAQ Prompts Bot", + "qnaList": [ + { + "id": 2, + "answer": "You can use our REST apis to create a KB. See here for details: https://docs.microsoft.com/en-us/rest/api/cognitiveservices/qnamaker/knowledgebase/create", + "source": "Custom Editorial", + "questions": { + "add": [], + "delete": [] + }, + "metadata": { + "add": [], + "delete": [] + }, + "context": { + "isContextOnly": false, + "promptsToAdd": [ + { + "displayText": "Add Prompts", + "displayOrder": 0, + "qna": { + "id": 0, + "answer": "Click here to know more https://docs.microsoft.com/en-us/azure/cognitive-services/qnamaker/how-to/multiturn-conversation", + "source": "Editorial", + "questions": [ + "How can I add prompts?" + ], + "metadata": [], + "context": { + "isContextOnly": false, + "prompts": [] + } + }, + "qnaId": 0 + }, + { + "displayText": "Delete Prompts", + "displayOrder": 0, + "qna": { + "id": 0, + "answer": "Click here to know more https://docs.microsoft.com/en-us/azure/cognitive-services/qnamaker/how-to/multiturn-conversation", + "source": "Editorial", + "questions": [ + "How can I delete delete prompts?" + ], + "metadata": [], + "context": { + "isContextOnly": false, + "prompts": [] + } + }, + "qnaId": 0 + }, + { + "displayText": "Update Knowledgebase", + "displayOrder": 0, + "qna": null, + "qnaId": 3 + } + ], + "promptsToDelete": [ + 3 + ] + } + }, + { + "id": 3, + "answer": "You can use our REST apis to update your KB. See here for details: https://docs.microsoft.com/en-us/rest/api/cognitiveservices/qnamaker/knowledgebase/update", + "source": "Custom Editorial", + "questions": { + "add": [], + "delete": [] + }, + "metadata": { + "delete": [ + { + "name": "category", + "value": "api" + } + ], + "add": [ + { + "name": "category", + "value": "programmatic" + } + ] + }, + "context": { + "isContextOnly": false, + "promptsToAdd": [ + { + "displayText": "Regenerate Endpoint keys", + "displayOrder": 1, + "qna": null, + "qnaId": 4 + } + ], + "promptsToDelete": [ + 4 + ] + } + } + ] + } + } + }, + "responses": { + "202": { + "headers": {}, + "body": { + "operationState": "NotStarted", + "createdTimestamp": "2018-03-19T07:38:46Z", + "lastActionTimestamp": "2018-03-19T07:39:29Z", + "userId": "86bb8390-56c0-42c2-9f81-3de161981191", + "operationId": "03a4f4ce-30a6-4ec6-b436-02bcdf6153e1" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/QnAMaker/readme.go.md b/specification/cognitiveservices/data-plane/QnAMaker/readme.go.md index ac3d12f87b38..0b7db5b7d39a 100644 --- a/specification/cognitiveservices/data-plane/QnAMaker/readme.go.md +++ b/specification/cognitiveservices/data-plane/QnAMaker/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION clear-output-folder: true ``` @@ -15,6 +15,7 @@ batch: - tag: release_4_0 - tag: runtime_release_4_0 - tag: release_5_0_preview.1 + - tag: release_5_0_preview.2 ``` ### Tag: release_4_0 and go @@ -46,3 +47,13 @@ Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'release_5_0_preview.2' && $(go) +namespace: qnamaker +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/cognitiveservices/v5.0-preview.2/$(namespace) +``` diff --git a/specification/cognitiveservices/data-plane/QnAMaker/readme.md b/specification/cognitiveservices/data-plane/QnAMaker/readme.md index df7bb80d5701..e9fe9c5d81e9 100644 --- a/specification/cognitiveservices/data-plane/QnAMaker/readme.md +++ b/specification/cognitiveservices/data-plane/QnAMaker/readme.md @@ -9,7 +9,6 @@ A preview release `release_5_0_preview.1` is also available. ``` yaml - tag: release_4_0 add-credentials: true openapi-type: data-plane @@ -33,6 +32,18 @@ add-credentials: true openapi-type: data-plane ``` +``` yaml +tag: release_5_0_preview.2 +add-credentials: true +openapi-type: data-plane +``` + +``` yaml +tag: runtime_release_preview.2 +add-credentials: true +openapi-type: data-plane +``` + # Releases ### Release 4.0 @@ -56,11 +67,19 @@ These settings apply only when `--tag=release_5_0_preview.1` is specified on the input-file: preview/v5.0-preview.1/QnAMaker.json ``` -``` yaml +### Release 5.0-preview.2 +These settings apply only when `--tag=release_5_0_preview.2` is specified on the command line. + +``` yaml $(tag) == 'release_5_0_preview.2' +input-file: preview/v5.0-preview.2/QnAMaker.json +``` + +``` yaml $(multiapi) batch: - tag: release_4_0 - tag: runtime_release_4_0 - tag: release_5_0_preview.1 + - tag: release_5_0_preview.2 ``` ## Swagger to SDK @@ -117,6 +136,20 @@ csharp: clear-output-folder: true ``` +## CSharp Settings Release 5.0-preview.2 + +These settings apply only when `--csharp --tag=release_5_0_preview.2` is specified on the command line. + +``` yaml $(csharp) && $(tag) == 'release_5_0_preview.2' +csharp: + sync-methods: None + license-header: MICROSOFT_MIT_NO_VERSION + azure-arm: false + namespace: Microsoft.Azure.CognitiveServices.Knowledge.QnAMaker + output-folder: $(csharp-sdks-folder)/CognitiveServices/Knowledge.QnAMaker/preview/src/Generated + clear-output-folder: true +``` + ## Python See configuration in [readme.python.md](./readme.python.md) @@ -156,6 +189,21 @@ java: with-single-async-method: true ``` + +These settings apply only when `--java --tag=release_5_0_preview` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(java) && $(tag) == 'release_5_0_preview.2' +java: + azure-arm: true + namespace: com.microsoft.azure.cognitiveservices.knowledge.qnamaker + license-header: MICROSOFT_MIT_NO_CODEGEN + payload-flattening-threshold: 1 + output-folder: $(azure-libraries-for-java-folder)/cognitiveservices/data-plane/knowledge/qnamaker/preview + with-optional-parameters: true + with-single-async-method: true +``` + ## Multi-API/Profile support for AutoRest v3 generators AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. @@ -171,6 +219,7 @@ input-file: - $(this-folder)/stable/v4.0/QnAMaker.json - $(this-folder)/stable/v4.0/QnAMakerRuntime.json - $(this-folder)/preview/v5.0-preview.1/QnAMaker.json + - $(this-folder)/preview/v5.0-preview.2/QnAMaker.json ``` If there are files that should not be in the `all-api-versions` set, diff --git a/specification/cognitiveservices/data-plane/QnAMaker/readme.nodejs.md b/specification/cognitiveservices/data-plane/QnAMaker/readme.nodejs.md index 3f98fa061bd4..e20d2b6d8598 100644 --- a/specification/cognitiveservices/data-plane/QnAMaker/readme.nodejs.md +++ b/specification/cognitiveservices/data-plane/QnAMaker/readme.nodejs.md @@ -25,3 +25,16 @@ nodejs: generate-package-json: true generate-readme-md: true ``` + +These settings apply only when `--nodejs --tag=release_5_0_preview.2` is specified on the command line. +Please also specify `--node-sdks-folder=`. + +``` yaml $(tag) == 'release_5_0_preview.2' && $(nodejs) +nodejs: + package-name: azure-cognitiveservices-qnamaker-preview + output-folder: $(node-sdks-folder)/lib/services/cognitiveServicesQnAMaker/preview + azure-arm: false + generate-license-txt: true + generate-package-json: true + generate-readme-md: true +``` diff --git a/specification/cognitiveservices/data-plane/QnAMaker/readme.python.md b/specification/cognitiveservices/data-plane/QnAMaker/readme.python.md index 6be17bcb15d8..e3763b333423 100644 --- a/specification/cognitiveservices/data-plane/QnAMaker/readme.python.md +++ b/specification/cognitiveservices/data-plane/QnAMaker/readme.python.md @@ -27,3 +27,8 @@ output-folder: $(python-sdks-folder)/cognitiveservices/azure-cognitiveservices-k namespace: azure.cognitiveservices.knowledge.qnamaker.preview output-folder: $(python-sdks-folder)/cognitiveservices/azure-cognitiveservices-knowledge-qnamaker/azure/cognitiveservices/knowledge/qnamaker/preview/ ``` + +``` yaml $(tag) == 'release_5_0_preview.2' +namespace: azure.cognitiveservices.knowledge.qnamaker.preview +output-folder: $(python-sdks-folder)/cognitiveservices/azure-cognitiveservices-knowledge-qnamaker/azure/cognitiveservices/knowledge/qnamaker/preview/ +``` diff --git a/specification/cognitiveservices/data-plane/QnAMaker/readme.ruby.md b/specification/cognitiveservices/data-plane/QnAMaker/readme.ruby.md index cbcfc7220bdd..00c37293996f 100644 --- a/specification/cognitiveservices/data-plane/QnAMaker/readme.ruby.md +++ b/specification/cognitiveservices/data-plane/QnAMaker/readme.ruby.md @@ -14,6 +14,7 @@ azure-arm: true batch: - tag: release_4_0 - tag: release_5_0_preview.1 + - tag: release_5_0_preview.2 ``` ### Tag: release_4_0 and ruby @@ -35,4 +36,14 @@ Please also specify `--ruby-sdks-folder=`. + +``` yaml $(tag) == 'release_5_0_preview.2' && $(ruby) +namespace: "Azure::CognitiveServices::Qnamaker::V5_0_preview_2" +output-folder: $(ruby-sdks-folder)/data/azure_cognitiveservices_qnamaker/lib ``` \ No newline at end of file diff --git a/specification/cognitiveservices/data-plane/QnAMaker/readme.typescript.md b/specification/cognitiveservices/data-plane/QnAMaker/readme.typescript.md index 14a2b6368a71..3e59d378cb61 100644 --- a/specification/cognitiveservices/data-plane/QnAMaker/readme.typescript.md +++ b/specification/cognitiveservices/data-plane/QnAMaker/readme.typescript.md @@ -21,3 +21,14 @@ typescript: azure-arm: false generate-metadata: true ``` + +These settings apply only when `--typescript` is specified on the command line. +Please also specify `--typescript-sdks-folder=`. + +``` yaml $(tag) == 'release_5_0_preview.2' && $(typescript) +typescript: + package-name: "@azure/cognitiveservices-qnamaker" + output-folder: "$(typescript-sdks-folder)/sdk/cognitiveservices/cognitiveservices-qnamaker/preview" + azure-arm: false + generate-metadata: true +``` diff --git a/specification/cognitiveservices/data-plane/SpellCheck/readme.go.md b/specification/cognitiveservices/data-plane/SpellCheck/readme.go.md index 5aa5885a59fe..b5fa3e327ff5 100644 --- a/specification/cognitiveservices/data-plane/SpellCheck/readme.go.md +++ b/specification/cognitiveservices/data-plane/SpellCheck/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: spellcheck clear-output-folder: true ``` diff --git a/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.5/TextAnalytics.json b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.5/TextAnalytics.json new file mode 100644 index 000000000000..f45bd6164b6a --- /dev/null +++ b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.5/TextAnalytics.json @@ -0,0 +1,2961 @@ +{ + "swagger": "2.0", + "info": { + "version": "v3.1-preview.5", + "contact": { + "name": "Microsoft Cognitive Services", + "url": "https://azure.microsoft.com/en-us/services/cognitive-services/text-analytics/", + "email": "mlapi@microsoft.com" + }, + "title": "Text Analytics Client", + "description": "The Text Analytics API is a suite of natural language processing (NLP) services built with best-in-class Microsoft machine learning algorithms. The API can be used to analyze unstructured text for tasks such as sentiment analysis, key phrase extraction and language detection. Functionality for analysis of text specific to the healthcare domain and personal information are also available in the API. Further documentation can be found in https://docs.microsoft.com/en-us/azure/cognitive-services/text-analytics/overview" + }, + "securityDefinitions": { + "apim_key": { + "type": "apiKey", + "name": "Ocp-Apim-Subscription-Key", + "in": "header" + } + }, + "security": [ + { + "apim_key": [] + } + ], + "x-ms-parameterized-host": { + "hostTemplate": "{Endpoint}/text/analytics/v3.1-preview.5", + "useSchemePrefix": false, + "parameters": [ + { + "$ref": "#/parameters/Endpoint" + } + ] + }, + "paths": { + "/analyze": { + "post": { + "consumes": [ + "application/json", + "text/json" + ], + "produces": [ + "application/json", + "text/json" + ], + "description": "Submit a collection of text documents for analysis. Specify one or more unique tasks to be executed.", + "operationId": "Analyze", + "summary": "Submit analysis job", + "parameters": [ + { + "description": "Collection of documents to analyze and tasks to execute.", + "in": "body", + "name": "body", + "schema": { + "$ref": "#/definitions/AnalyzeBatchInput" + } + } + ], + "responses": { + "202": { + "description": "A successful call results with an Operation-Location header used to check the status of the analysis job.", + "headers": { + "Operation-Location": { + "type": "string" + } + } + }, + "400": { + "description": "Bad Request.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "500": { + "description": "Internal error response", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Successful Submit analysis job request": { + "$ref": ".//examples//SuccessfulAnalyzeRequest.json" + } + }, + "deprecated": false, + "x-ms-long-running-operation": true + } + }, + "/analyze/jobs/{jobId}": { + "get": { + "produces": [ + "application/json", + "text/json" + ], + "description": "Get the status of an analysis job. A job may consist of one or more tasks. Once all tasks are completed, the job will transition to the completed state and results will be available for each task.", + "operationId": "AnalyzeStatus", + "summary": "Get analysis status and results", + "parameters": [ + { + "$ref": "#/parameters/AnalyzeJobId" + }, + { + "$ref": "#/parameters/ShowStats" + }, + { + "default": 20, + "description": "(Optional) Set the maximum number of results per task. When both $top and $skip are specified, $skip is applied first.", + "in": "query", + "maximum": 50, + "minimum": 1, + "name": "$top", + "type": "integer" + }, + { + "default": 0, + "description": "(Optional) Set the number of elements to offset in the response. When both $top and $skip are specified, $skip is applied first.", + "in": "query", + "minimum": 0, + "name": "$skip", + "type": "integer" + } + ], + "responses": { + "200": { + "description": "Analysis job status and metadata.", + "schema": { + "$ref": "#/definitions/AnalyzeJobState" + } + }, + "404": { + "description": "Job ID not found.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "500": { + "description": "Internal error response", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Successful Get Analysis job status request": { + "$ref": ".//examples//SuccessfulAnalyzeStatusRequest.json" + } + }, + "deprecated": false + } + }, + "/entities/health/jobs/{jobId}": { + "get": { + "produces": [ + "application/json", + "text/json" + ], + "description": "Get details of the healthcare prediction job specified by the jobId.", + "operationId": "HealthStatus", + "summary": "Get healthcare analysis job status and results", + "parameters": [ + { + "$ref": "#/parameters/JobId" + }, + { + "default": 20, + "description": "(Optional) Set the maximum number of results per task. When both $top and $skip are specified, $skip is applied first.", + "in": "query", + "maximum": 50, + "minimum": 1, + "name": "$top", + "type": "integer" + }, + { + "default": 0, + "description": "(Optional) Set the number of elements to offset in the response. When both $top and $skip are specified, $skip is applied first.", + "in": "query", + "minimum": 0, + "name": "$skip", + "type": "integer" + }, + { + "$ref": "#/parameters/ShowStats" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/HealthcareJobState" + } + }, + "404": { + "description": "Job ID not found.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "500": { + "description": "Internal error response", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Successful Health request": { + "$ref": ".//examples//SuccessfulHealthStatusRequest.json" + } + }, + "deprecated": false + }, + "delete": { + "produces": [ + "application/json", + "text/json" + ], + "description": "Cancel healthcare prediction job.", + "operationId": "CancelHealthJob", + "summary": "Cancel healthcare prediction job", + "parameters": [ + { + "$ref": "#/parameters/JobId" + } + ], + "responses": { + "202": { + "description": "Cancel Job request has been received.", + "headers": { + "Operation-Location": { + "type": "string" + } + } + }, + "404": { + "description": "Job ID not found.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "500": { + "description": "Internal error response", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Successful Health request": { + "$ref": ".//examples//SuccessfulHealthDeleteRequest.json" + } + }, + "deprecated": false, + "x-ms-long-running-operation": true + } + }, + "/entities/health/jobs": { + "post": { + "summary": "Submit healthcare analysis job", + "description": "Start a healthcare analysis job to recognize healthcare related entities (drugs, conditions, symptoms, etc) and their relations.", + "operationId": "Health", + "consumes": [ + "application/json", + "text/json" + ], + "produces": [ + "application/json", + "text/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ModelVersion" + }, + { + "$ref": "#/parameters/StringIndexType" + }, + { + "$ref": "#/parameters/MultiLanguageInput" + }, + { + "$ref": "#/parameters/LoggingOptOut" + } + ], + "responses": { + "202": { + "description": "Accepted - call results in a link where the status of the submitted job can be checked via the GET operation.", + "headers": { + "Operation-Location": { + "type": "string" + } + } + }, + "400": { + "description": "Bad Request.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "500": { + "description": "Internal error response", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Successful Health request": { + "$ref": ".//examples//SuccessfulHealthRequest.json" + } + }, + "deprecated": false, + "x-ms-long-running-operation": true + } + }, + "/entities/recognition/general": { + "post": { + "summary": "Named Entity Recognition", + "description": "The API returns a list of general named entities in a given document. For the list of supported entity types, check Supported Entity Types in Text Analytics API. See the Supported languages in Text Analytics API for the list of enabled languages.", + "operationId": "EntitiesRecognitionGeneral", + "consumes": [ + "application/json", + "text/json" + ], + "produces": [ + "application/json", + "text/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ModelVersion" + }, + { + "$ref": "#/parameters/ShowStats" + }, + { + "$ref": "#/parameters/LoggingOptOut" + }, + { + "$ref": "#/parameters/StringIndexType" + }, + { + "$ref": "#/parameters/MultiLanguageInput" + } + ], + "responses": { + "200": { + "description": "A successful call results in a list of recognized entities returned for each valid document.", + "schema": { + "$ref": "#/definitions/EntitiesResult" + } + }, + "400": { + "description": "Bad Request.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "500": { + "description": "Internal error response", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Successful Entities request": { + "$ref": ".//examples//SuccessfulEntitiesRequest.json" + } + }, + "deprecated": false + } + }, + "/entities/recognition/pii": { + "post": { + "summary": "Entities containing personal information", + "description": "The API returns a list of entities with personal information (\\\"SSN\\\", \\\"Bank Account\\\" etc) in the document. For the list of supported entity types, check Supported Entity Types in Text Analytics API. See the Supported languages in Text Analytics API for the list of enabled languages.\n", + "operationId": "EntitiesRecognitionPii", + "consumes": [ + "application/json", + "text/json" + ], + "produces": [ + "application/json", + "text/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ModelVersion" + }, + { + "$ref": "#/parameters/ShowStats" + }, + { + "$ref": "#/parameters/LoggingOptOut" + }, + { + "name": "domain", + "in": "query", + "description": "(Optional) if specified, will set the PII domain to include only a subset of the entity categories. Possible values include: 'PHI', 'none'.", + "type": "string" + }, + { + "$ref": "#/parameters/StringIndexType" + }, + { + "$ref": "#/parameters/PiiCategories" + }, + { + "$ref": "#/parameters/MultiLanguageInput" + } + ], + "responses": { + "200": { + "description": "A successful call results in a list of entities containing personal information returned for each valid document", + "schema": { + "$ref": "#/definitions/PiiResult" + } + }, + "400": { + "description": "Bad Request.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "500": { + "description": "Internal error response", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Successful Entity PII request": { + "$ref": ".//examples//SuccessfulEntityPIIRequest.json" + } + }, + "deprecated": false + } + }, + "/entities/linking": { + "post": { + "summary": "Linked entities from a well known knowledge base", + "description": "The API returns a list of recognized entities with links to a well known knowledge base. See the Supported languages in Text Analytics API for the list of enabled languages.", + "operationId": "EntitiesLinking", + "consumes": [ + "application/json", + "text/json" + ], + "produces": [ + "application/json", + "text/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ModelVersion" + }, + { + "$ref": "#/parameters/ShowStats" + }, + { + "$ref": "#/parameters/LoggingOptOut" + }, + { + "$ref": "#/parameters/StringIndexType" + }, + { + "$ref": "#/parameters/MultiLanguageInput" + } + ], + "responses": { + "200": { + "description": "A successful call results in a list of recognized entities with links to a well known knowledge base returned for each valid document", + "schema": { + "$ref": "#/definitions/EntityLinkingResult" + } + }, + "400": { + "description": "Bad Request.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "500": { + "description": "Internal error response", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Successful Entity Linking request": { + "$ref": ".//examples//SuccessfulEntityLinkingRequest.json" + } + }, + "deprecated": false + } + }, + "/keyPhrases": { + "post": { + "summary": "Key Phrases", + "description": "The API returns a list of strings denoting the key phrases in the input text. See the Supported languages in Text Analytics API for the list of enabled languages.", + "operationId": "KeyPhrases", + "consumes": [ + "application/json", + "text/json" + ], + "produces": [ + "application/json", + "text/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ModelVersion" + }, + { + "$ref": "#/parameters/ShowStats" + }, + { + "$ref": "#/parameters/LoggingOptOut" + }, + { + "$ref": "#/parameters/MultiLanguageInput" + } + ], + "responses": { + "200": { + "description": "A successful response results in 0 or more key phrases identified in each valid document", + "schema": { + "$ref": "#/definitions/KeyPhraseResult" + } + }, + "400": { + "description": "Bad Request.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "500": { + "description": "Internal error response", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Successful Key Phrase request": { + "$ref": ".//examples//SuccessfulKeyPhrasesRequest.json" + } + }, + "deprecated": false + } + }, + "/languages": { + "post": { + "summary": "Detect Language", + "description": "The API returns the detected language and a numeric score between 0 and 1. Scores close to 1 indicate 100% certainty that the identified language is true. See the Supported languages in Text Analytics API for the list of enabled languages.", + "operationId": "Languages", + "consumes": [ + "application/json", + "text/json" + ], + "produces": [ + "application/json", + "text/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ModelVersion" + }, + { + "$ref": "#/parameters/ShowStats" + }, + { + "$ref": "#/parameters/LoggingOptOut" + }, + { + "$ref": "#/parameters/LanguageInput" + } + ], + "responses": { + "200": { + "description": "A successful call results in the detected language with the highest probability for each valid document", + "schema": { + "$ref": "#/definitions/LanguageResult" + } + }, + "400": { + "description": "Bad Request.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "500": { + "description": "Internal error response", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Successful Detect Language request": { + "$ref": ".//examples//SuccessfulLanguagesRequest.json" + } + }, + "deprecated": false + } + }, + "/sentiment": { + "post": { + "summary": "Sentiment", + "description": "The API returns a detailed sentiment analysis for the input text. The analysis is done in multiple levels of granularity, start from the a document level, down to sentence and key terms (targets and assessments).", + "operationId": "Sentiment", + "consumes": [ + "application/json", + "text/json" + ], + "produces": [ + "application/json", + "text/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ModelVersion" + }, + { + "$ref": "#/parameters/ShowStats" + }, + { + "$ref": "#/parameters/LoggingOptOut" + }, + { + "name": "opinionMining", + "in": "query", + "description": "(Optional) if set to true, response will contain not only sentiment prediction but also opinion mining (aspect-based sentiment analysis) results.", + "type": "boolean" + }, + { + "$ref": "#/parameters/StringIndexType" + }, + { + "$ref": "#/parameters/MultiLanguageInput" + } + ], + "responses": { + "200": { + "description": "A successful call results in a document sentiment prediction, as well as sentiment scores for each sentiment class (Positive, Negative, and Neutral)", + "schema": { + "$ref": "#/definitions/SentimentResponse" + } + }, + "400": { + "description": "Bad Request.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "500": { + "description": "Internal error response", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Successful Sentiment request": { + "$ref": ".//examples//SuccessfulSentimentRequest.json" + } + }, + "deprecated": false + } + } + }, + "definitions": { + "JobManifest": { + "properties": { + "tasks": { + "description": "The set of tasks to execute on the input documents. Cannot specify the same task more than once.", + "properties": { + "entityRecognitionTasks": { + "type": "array", + "items": { + "$ref": "#/definitions/EntitiesTask" + } + }, + "entityRecognitionPiiTasks": { + "type": "array", + "items": { + "$ref": "#/definitions/PiiTask" + } + }, + "keyPhraseExtractionTasks": { + "type": "array", + "items": { + "$ref": "#/definitions/KeyPhrasesTask" + } + }, + "entityLinkingTasks": { + "type": "array", + "items": { + "$ref": "#/definitions/EntityLinkingTask" + } + }, + "sentimentAnalysisTasks": { + "type": "array", + "items": { + "$ref": "#/definitions/SentimentAnalysisTask" + } + } + }, + "type": "object" + } + }, + "required": [ + "tasks" + ], + "type": "object" + }, + "MultiLanguageBatchInput": { + "type": "object", + "required": [ + "documents" + ], + "properties": { + "documents": { + "type": "array", + "description": "The set of documents to process as part of this batch.", + "items": { + "$ref": "#/definitions/MultiLanguageInput" + } + } + }, + "description": "Contains a set of input documents to be analyzed by the service." + }, + "MultiLanguageInput": { + "type": "object", + "required": [ + "id", + "text" + ], + "properties": { + "id": { + "type": "string", + "description": "A unique, non-empty document identifier." + }, + "text": { + "type": "string", + "description": "The input text to process." + }, + "language": { + "type": "string", + "description": "(Optional) This is the 2 letter ISO 639-1 representation of a language. For example, use \"en\" for English; \"es\" for Spanish etc. If not set, use \"en\" for English as default." + } + }, + "description": "Contains an input document to be analyzed by the service." + }, + "DocumentError": { + "type": "object", + "required": [ + "id", + "error" + ], + "properties": { + "id": { + "type": "string", + "description": "Document Id." + }, + "error": { + "type": "object", + "description": "Document Error.", + "$ref": "#/definitions/TextAnalyticsError" + } + } + }, + "ErrorResponse": { + "type": "object", + "required": [ + "error" + ], + "properties": { + "error": { + "type": "object", + "description": "Document Error.", + "$ref": "#/definitions/TextAnalyticsError" + } + } + }, + "TextAnalyticsError": { + "type": "object", + "required": [ + "code", + "message" + ], + "properties": { + "code": { + "type": "string", + "enum": [ + "InvalidRequest", + "InvalidArgument", + "InternalServerError", + "ServiceUnavailable", + "NotFound" + ], + "x-ms-enum": { + "name": "ErrorCodeValue", + "modelAsString": false + }, + "description": "Error code." + }, + "message": { + "type": "string", + "description": "Error message." + }, + "target": { + "type": "string", + "description": "Error target." + }, + "innererror": { + "$ref": "#/definitions/InnerError", + "description": "Inner error contains more specific information." + }, + "details": { + "type": "array", + "description": "Details about specific errors that led to this reported error.", + "items": { + "$ref": "#/definitions/TextAnalyticsError" + } + } + } + }, + "TextAnalyticsWarning": { + "type": "object", + "required": [ + "code", + "message" + ], + "properties": { + "code": { + "type": "string", + "enum": [ + "LongWordsInDocument", + "DocumentTruncated" + ], + "x-ms-enum": { + "name": "WarningCodeValue", + "modelAsString": true + }, + "description": "Error code." + }, + "message": { + "type": "string", + "description": "Warning message." + }, + "targetRef": { + "type": "string", + "description": "A JSON pointer reference indicating the target object." + } + } + }, + "PiiTask": { + "properties": { + "parameters": { + "properties": { + "domain": { + "default": "none", + "enum": [ + "phi", + "none" + ], + "type": "string" + }, + "model-version": { + "default": "latest", + "type": "string" + }, + "loggingOptOut": { + "default": true, + "type": "boolean" + }, + "pii-categories": { + "$ref": "#/definitions/PiiCategories" + }, + "stringIndexType": { + "$ref": "#/definitions/StringIndexType" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "EntitiesTask": { + "properties": { + "parameters": { + "properties": { + "model-version": { + "default": "latest", + "type": "string" + }, + "loggingOptOut": { + "default": false, + "type": "boolean" + }, + "stringIndexType": { + "$ref": "#/definitions/StringIndexType" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "SentimentAnalysisTask": { + "properties": { + "parameters": { + "properties": { + "model-version": { + "default": "latest", + "type": "string" + }, + "loggingOptOut": { + "default": false, + "type": "boolean" + }, + "opinionMining": { + "default": false, + "type": "boolean" + }, + "stringIndexType": { + "$ref": "#/definitions/StringIndexType" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "InnerError": { + "type": "object", + "required": [ + "code", + "message" + ], + "properties": { + "code": { + "type": "string", + "enum": [ + "InvalidParameterValue", + "InvalidRequestBodyFormat", + "EmptyRequest", + "MissingInputRecords", + "InvalidDocument", + "ModelVersionIncorrect", + "InvalidDocumentBatch", + "UnsupportedLanguageCode", + "InvalidCountryHint" + ], + "x-ms-enum": { + "name": "InnerErrorCodeValue", + "modelAsString": true + }, + "description": "Error code." + }, + "message": { + "type": "string", + "description": "Error message." + }, + "details": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Error details." + }, + "target": { + "type": "string", + "description": "Error target." + }, + "innererror": { + "$ref": "#/definitions/InnerError", + "description": "Inner error contains more specific information." + } + } + }, + "AnalyzeBatchInput": { + "allOf": [ + { + "$ref": "#/definitions/JobDescriptor" + }, + { + "$ref": "#/definitions/AnalysisInput" + }, + { + "$ref": "#/definitions/JobManifest" + } + ] + }, + "AnalyzeJobState": { + "allOf": [ + { + "$ref": "#/definitions/AnalyzeJobMetadata" + }, + { + "$ref": "#/definitions/TasksState" + }, + { + "$ref": "#/definitions/AnalyzeJobErrorsAndStatistics" + }, + { + "$ref": "#/definitions/Pagination" + } + ] + }, + "SentimentResponse": { + "type": "object", + "required": [ + "documents", + "errors", + "modelVersion" + ], + "properties": { + "documents": { + "type": "array", + "description": "Sentiment analysis per document.", + "items": { + "$ref": "#/definitions/DocumentSentiment" + } + }, + "errors": { + "type": "array", + "description": "Errors by document id.", + "items": { + "$ref": "#/definitions/DocumentError" + } + }, + "statistics": { + "$ref": "#/definitions/RequestStatistics" + }, + "modelVersion": { + "type": "string", + "description": "This field indicates which model is used for scoring." + } + } + }, + "TaskState": { + "properties": { + "lastUpdateDateTime": { + "format": "date-time", + "type": "string" + }, + "name": { + "type": "string" + }, + "status": { + "enum": [ + "notStarted", + "running", + "succeeded", + "failed", + "rejected", + "cancelled", + "cancelling" + ], + "x-ms-enum": { + "modelAsString": false, + "name": "State" + } + } + }, + "required": [ + "status", + "lastUpdateDateTime" + ], + "type": "object" + }, + "TasksState": { + "properties": { + "tasks": { + "properties": { + "details": { + "allOf": [ + { + "$ref": "#/definitions/TaskState" + } + ], + "type": "object" + }, + "completed": { + "type": "integer" + }, + "failed": { + "type": "integer" + }, + "inProgress": { + "type": "integer" + }, + "total": { + "type": "integer" + }, + "entityRecognitionTasks": { + "type": "array", + "items": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TaskState" + }, + { + "$ref": "#/definitions/EntitiesTaskResult" + } + ] + } + }, + "entityRecognitionPiiTasks": { + "type": "array", + "items": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TaskState" + }, + { + "$ref": "#/definitions/PiiTaskResult" + } + ] + } + }, + "keyPhraseExtractionTasks": { + "type": "array", + "items": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TaskState" + }, + { + "$ref": "#/definitions/KeyPhraseTaskResult" + } + ] + } + }, + "entityLinkingTasks": { + "type": "array", + "items": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TaskState" + }, + { + "$ref": "#/definitions/EntityLinkingTaskResult" + } + ] + } + }, + "sentimentAnalysisTasks": { + "type": "array", + "items": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TaskState" + }, + { + "$ref": "#/definitions/SentimentTaskResult" + } + ] + } + } + }, + "required": [ + "total", + "completed", + "failed", + "inProgress" + ], + "type": "object" + } + }, + "required": [ + "tasks" + ], + "type": "object" + }, + "DocumentSentiment": { + "type": "object", + "required": [ + "id", + "sentiment", + "confidenceScores", + "sentences", + "warnings" + ], + "properties": { + "id": { + "type": "string", + "description": "Unique, non-empty document identifier." + }, + "sentiment": { + "type": "string", + "description": "Predicted sentiment for document (Negative, Neutral, Positive, or Mixed).", + "enum": [ + "positive", + "neutral", + "negative", + "mixed" + ], + "x-ms-enum": { + "name": "DocumentSentimentValue", + "modelAsString": false + } + }, + "statistics": { + "$ref": "#/definitions/DocumentStatistics" + }, + "confidenceScores": { + "description": "Document level sentiment confidence scores between 0 and 1 for each sentiment class.", + "$ref": "#/definitions/SentimentConfidenceScorePerLabel" + }, + "sentences": { + "type": "array", + "description": "Sentence level sentiment analysis.", + "items": { + "$ref": "#/definitions/SentenceSentiment" + } + }, + "warnings": { + "type": "array", + "description": "Warnings encountered while processing document.", + "items": { + "$ref": "#/definitions/TextAnalyticsWarning" + } + } + } + }, + "RequestStatistics": { + "type": "object", + "required": [ + "documentsCount", + "validDocumentsCount", + "erroneousDocumentsCount", + "transactionsCount" + ], + "properties": { + "documentsCount": { + "type": "integer", + "format": "int32", + "description": "Number of documents submitted in the request." + }, + "validDocumentsCount": { + "type": "integer", + "format": "int32", + "description": "Number of valid documents. This excludes empty, over-size limit or non-supported languages documents." + }, + "erroneousDocumentsCount": { + "type": "integer", + "format": "int32", + "description": "Number of invalid documents. This includes empty, over-size limit or non-supported languages documents." + }, + "transactionsCount": { + "type": "integer", + "format": "int64", + "description": "Number of transactions for the request." + } + }, + "description": "if showStats=true was specified in the request this field will contain information about the request payload." + }, + "DocumentStatistics": { + "type": "object", + "required": [ + "charactersCount", + "transactionsCount" + ], + "properties": { + "charactersCount": { + "type": "integer", + "format": "int32", + "description": "Number of text elements recognized in the document." + }, + "transactionsCount": { + "type": "integer", + "format": "int32", + "description": "Number of transactions for the document." + } + }, + "description": "if showStats=true was specified in the request this field will contain information about the document payload." + }, + "SentimentConfidenceScorePerLabel": { + "type": "object", + "required": [ + "positive", + "neutral", + "negative" + ], + "properties": { + "positive": { + "type": "number", + "format": "double" + }, + "neutral": { + "type": "number", + "format": "double" + }, + "negative": { + "type": "number", + "format": "double" + } + }, + "description": "Represents the confidence scores between 0 and 1 across all sentiment classes: positive, neutral, negative." + }, + "SentenceSentiment": { + "type": "object", + "required": [ + "text", + "sentiment", + "confidenceScores", + "offset", + "length" + ], + "properties": { + "text": { + "type": "string", + "description": "The sentence text." + }, + "sentiment": { + "type": "string", + "description": "The predicted Sentiment for the sentence.", + "enum": [ + "positive", + "neutral", + "negative" + ], + "x-ms-enum": { + "name": "SentenceSentimentValue", + "modelAsString": false + } + }, + "confidenceScores": { + "description": "The sentiment confidence score between 0 and 1 for the sentence for all classes.", + "$ref": "#/definitions/SentimentConfidenceScorePerLabel" + }, + "offset": { + "type": "integer", + "format": "int32", + "description": "The sentence offset from the start of the document." + }, + "length": { + "type": "integer", + "format": "int32", + "description": "The length of the sentence." + }, + "targets": { + "type": "array", + "description": "The array of sentence targets for the sentence.", + "items": { + "$ref": "#/definitions/SentenceTarget" + } + }, + "assessments": { + "type": "array", + "description": "The array of assessments for the sentence.", + "items": { + "$ref": "#/definitions/SentenceAssessment" + } + } + } + }, + "SentenceTarget": { + "type": "object", + "required": [ + "confidenceScores", + "length", + "offset", + "relations", + "sentiment", + "text" + ], + "properties": { + "sentiment": { + "type": "string", + "enum": [ + "positive", + "mixed", + "negative" + ], + "x-ms-enum": { + "name": "TokenSentimentValue", + "modelAsString": false + }, + "description": "Targeted sentiment in the sentence." + }, + "confidenceScores": { + "description": "Target sentiment confidence scores for the target in the sentence.", + "$ref": "#/definitions/TargetConfidenceScoreLabel" + }, + "offset": { + "type": "integer", + "format": "int32", + "description": "The target offset from the start of the sentence." + }, + "length": { + "type": "integer", + "format": "int32", + "description": "The length of the target." + }, + "text": { + "type": "string", + "description": "The target text detected." + }, + "relations": { + "type": "array", + "description": "The array of either assessment or target objects which is related to the target.", + "items": { + "$ref": "#/definitions/TargetRelation" + } + } + } + }, + "SentenceAssessment": { + "type": "object", + "required": [ + "confidenceScores", + "isNegated", + "length", + "offset", + "sentiment", + "text" + ], + "properties": { + "sentiment": { + "type": "string", + "enum": [ + "positive", + "mixed", + "negative" + ], + "x-ms-enum": { + "name": "TokenSentimentValue", + "modelAsString": false + }, + "description": "Assessment sentiment in the sentence." + }, + "confidenceScores": { + "description": "Assessment sentiment confidence scores in the sentence.", + "$ref": "#/definitions/TargetConfidenceScoreLabel" + }, + "offset": { + "type": "integer", + "format": "int32", + "description": "The assessment offset from the start of the sentence." + }, + "length": { + "type": "integer", + "format": "int32", + "description": "The length of the assessment." + }, + "text": { + "type": "string", + "description": "The assessment text detected." + }, + "isNegated": { + "type": "boolean", + "description": "The indicator representing if the assessment is negated." + } + } + }, + "TargetRelation": { + "type": "object", + "required": [ + "ref", + "relationType" + ], + "properties": { + "relationType": { + "type": "string", + "enum": [ + "assessment", + "target" + ], + "x-ms-enum": { + "name": "TargetRelationType", + "modelAsString": false + }, + "description": "The type related to the target." + }, + "ref": { + "type": "string", + "description": "The JSON pointer indicating the linked object." + } + } + }, + "TargetConfidenceScoreLabel": { + "type": "object", + "required": [ + "negative", + "positive" + ], + "properties": { + "positive": { + "type": "number", + "format": "double" + }, + "negative": { + "type": "number", + "format": "double" + } + }, + "description": "Represents the confidence scores across all sentiment classes: positive, neutral, negative." + }, + "EntitiesResult": { + "type": "object", + "required": [ + "documents", + "errors", + "modelVersion" + ], + "properties": { + "documents": { + "type": "array", + "description": "Response by document", + "items": { + "$ref": "#/definitions/DocumentEntities" + } + }, + "errors": { + "type": "array", + "description": "Errors by document id.", + "items": { + "$ref": "#/definitions/DocumentError" + } + }, + "statistics": { + "$ref": "#/definitions/RequestStatistics" + }, + "modelVersion": { + "type": "string", + "description": "This field indicates which model is used for scoring." + } + } + }, + "DocumentEntities": { + "type": "object", + "required": [ + "id", + "entities", + "warnings" + ], + "properties": { + "id": { + "type": "string", + "description": "Unique, non-empty document identifier." + }, + "entities": { + "type": "array", + "description": "Recognized entities in the document.", + "items": { + "$ref": "#/definitions/Entity" + } + }, + "warnings": { + "type": "array", + "description": "Warnings encountered while processing document.", + "items": { + "$ref": "#/definitions/TextAnalyticsWarning" + } + }, + "statistics": { + "description": "if showStats=true was specified in the request this field will contain information about the document payload.", + "$ref": "#/definitions/DocumentStatistics" + } + } + }, + "PiiDocumentEntities": { + "type": "object", + "required": [ + "id", + "redactedText", + "entities", + "warnings" + ], + "properties": { + "id": { + "type": "string", + "description": "Unique, non-empty document identifier." + }, + "redactedText": { + "type": "string", + "description": "Returns redacted text." + }, + "entities": { + "type": "array", + "description": "Recognized entities in the document.", + "items": { + "$ref": "#/definitions/Entity" + } + }, + "warnings": { + "type": "array", + "description": "Warnings encountered while processing document.", + "items": { + "$ref": "#/definitions/TextAnalyticsWarning" + } + }, + "statistics": { + "description": "if showStats=true was specified in the request this field will contain information about the document payload.", + "$ref": "#/definitions/DocumentStatistics" + } + } + }, + "Entity": { + "type": "object", + "required": [ + "text", + "category", + "offset", + "length", + "confidenceScore" + ], + "properties": { + "text": { + "type": "string", + "description": "Entity text as appears in the request." + }, + "category": { + "type": "string", + "description": "Entity type." + }, + "subcategory": { + "type": "string", + "description": "(Optional) Entity sub type." + }, + "offset": { + "type": "integer", + "format": "int32", + "description": "Start position for the entity text. Use of different 'stringIndexType' values can affect the offset returned." + }, + "length": { + "type": "integer", + "format": "int32", + "description": "Length for the entity text. Use of different 'stringIndexType' values can affect the length returned." + }, + "confidenceScore": { + "type": "number", + "format": "double", + "description": "Confidence score between 0 and 1 of the extracted entity." + } + } + }, + "EntityLinkingResult": { + "type": "object", + "required": [ + "documents", + "errors", + "modelVersion" + ], + "properties": { + "documents": { + "type": "array", + "description": "Response by document", + "items": { + "$ref": "#/definitions/DocumentLinkedEntities" + } + }, + "errors": { + "type": "array", + "description": "Errors by document id.", + "items": { + "$ref": "#/definitions/DocumentError" + } + }, + "statistics": { + "$ref": "#/definitions/RequestStatistics" + }, + "modelVersion": { + "type": "string", + "description": "This field indicates which model is used for scoring." + } + } + }, + "DocumentLinkedEntities": { + "type": "object", + "required": [ + "id", + "entities", + "warnings" + ], + "properties": { + "id": { + "type": "string", + "description": "Unique, non-empty document identifier." + }, + "entities": { + "type": "array", + "description": "Recognized well known entities in the document.", + "items": { + "$ref": "#/definitions/LinkedEntity" + } + }, + "warnings": { + "type": "array", + "description": "Warnings encountered while processing document.", + "items": { + "$ref": "#/definitions/TextAnalyticsWarning" + } + }, + "statistics": { + "description": "if showStats=true was specified in the request this field will contain information about the document payload.", + "$ref": "#/definitions/DocumentStatistics" + } + } + }, + "HealthcareJobState": { + "allOf": [ + { + "$ref": "#/definitions/JobMetadata" + }, + { + "$ref": "#/definitions/HealthcareTaskResult" + }, + { + "$ref": "#/definitions/Pagination" + } + ] + }, + "HealthcareResult": { + "type": "object", + "required": [ + "documents", + "errors", + "modelVersion" + ], + "properties": { + "documents": { + "type": "array", + "description": "Response by document", + "items": { + "$ref": "#/definitions/DocumentHealthcareEntities" + } + }, + "errors": { + "type": "array", + "description": "Errors by document id.", + "items": { + "$ref": "#/definitions/DocumentError" + } + }, + "statistics": { + "$ref": "#/definitions/RequestStatistics" + }, + "modelVersion": { + "type": "string", + "description": "This field indicates which model is used for scoring." + } + } + }, + "DocumentHealthcareEntities": { + "type": "object", + "required": [ + "id", + "entities", + "relations", + "warnings" + ], + "properties": { + "id": { + "type": "string", + "description": "Unique, non-empty document identifier." + }, + "entities": { + "description": "Healthcare entities.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthcareEntity" + } + }, + "relations": { + "type": "array", + "description": "Healthcare entity relations.", + "items": { + "$ref": "#/definitions/HealthcareRelation" + } + }, + "warnings": { + "type": "array", + "description": "Warnings encountered while processing document.", + "items": { + "$ref": "#/definitions/TextAnalyticsWarning" + } + }, + "statistics": { + "description": "if showStats=true was specified in the request this field will contain information about the document payload.", + "$ref": "#/definitions/DocumentStatistics" + } + } + }, + "HealthcareEntity": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Entity" + }, + { + "$ref": "#/definitions/HealthcareLinkingProperties" + } + ] + }, + "HealthcareRelation": { + "type": "object", + "description": "Every relation is an entity graph of a certain relationType, where all entities are connected and have specific roles within the relation context.", + "required": [ + "relationType", + "entities" + ], + "properties": { + "relationType": { + "description": "Type of relation. Examples include: `DosageOfMedication` or 'FrequencyOfMedication', etc.", + "type": "string", + "enum": [ + "Abbreviation", + "DirectionOfBodyStructure", + "DirectionOfCondition", + "DirectionOfExamination", + "DirectionOfTreatment", + "DosageOfMedication", + "FormOfMedication", + "FrequencyOfMedication", + "FrequencyOfTreatment", + "QualifierOfCondition", + "RelationOfExamination", + "RouteOfMedication", + "TimeOfCondition", + "TimeOfEvent", + "TimeOfExamination", + "TimeOfMedication", + "TimeOfTreatment", + "UnitOfCondition", + "UnitOfExamination", + "ValueOfCondition", + "ValueOfExamination" + ], + "x-ms-enum": { + "name": "relationType", + "modelAsString": true + } + }, + "entities": { + "description": "The entities in the relation.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthcareRelationEntity" + } + } + } + }, + "HealthcareAssertion": { + "type": "object", + "properties": { + "conditionality": { + "description": "Describes any conditionality on the entity.", + "type": "string", + "enum": [ + "hypothetical", + "conditional" + ], + "x-ms-enum": { + "name": "Conditionality", + "modelAsString": false + } + }, + "certainty": { + "description": "Describes the entities certainty and polarity.", + "type": "string", + "enum": [ + "positive", + "positivePossible", + "neutralPossible", + "negativePossible", + "negative" + ], + "x-ms-enum": { + "name": "Certainty", + "modelAsString": false + } + }, + "association": { + "description": "Describes if the entity is the subject of the text or if it describes someone else.", + "type": "string", + "enum": [ + "subject", + "other" + ], + "x-ms-enum": { + "name": "Association", + "modelAsString": false + } + } + } + }, + "HealthcareRelationEntity": { + "type": "object", + "required": [ + "ref", + "role" + ], + "properties": { + "ref": { + "description": "Reference link object, using a JSON pointer RFC 6901 (URI Fragment Identifier Representation), pointing to the entity .", + "type": "string" + }, + "role": { + "description": "Role of entity in the relationship. For example: 'CD20-positive diffuse large B-cell lymphoma' has the following entities with their roles in parenthesis: CD20 (GeneOrProtein), Positive (Expression), diffuse large B-cell lymphoma (Diagnosis).", + "type": "string" + } + } + }, + "HealthcareEntityLink": { + "type": "object", + "required": [ + "dataSource", + "id" + ], + "properties": { + "dataSource": { + "description": "Entity Catalog. Examples include: UMLS, CHV, MSH, etc.", + "type": "string" + }, + "id": { + "description": "Entity id in the given source catalog.", + "type": "string" + } + } + }, + "HealthcareLinkingProperties": { + "properties": { + "assertion": { + "type": "object", + "$ref": "#/definitions/HealthcareAssertion" + }, + "name": { + "description": "Preferred name for the entity. Example: 'histologically' would have a 'name' of 'histologic'.", + "type": "string" + }, + "links": { + "description": "Entity references in known data sources.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthcareEntityLink" + } + } + } + }, + "LinkedEntity": { + "type": "object", + "required": [ + "name", + "matches", + "language", + "url", + "dataSource" + ], + "properties": { + "name": { + "type": "string", + "description": "Entity Linking formal name." + }, + "matches": { + "type": "array", + "description": "List of instances this entity appears in the text.", + "items": { + "$ref": "#/definitions/Match" + } + }, + "language": { + "type": "string", + "description": "Language used in the data source." + }, + "id": { + "type": "string", + "description": "Unique identifier of the recognized entity from the data source." + }, + "url": { + "type": "string", + "description": "URL for the entity's page from the data source." + }, + "dataSource": { + "type": "string", + "description": "Data source used to extract entity linking, such as Wiki/Bing etc." + }, + "bingId": { + "type": "string", + "description": "Bing Entity Search API unique identifier of the recognized entity." + } + } + }, + "Match": { + "type": "object", + "required": [ + "confidenceScore", + "text", + "offset", + "length" + ], + "properties": { + "confidenceScore": { + "type": "number", + "format": "double", + "description": "If a well known item is recognized, a decimal number denoting the confidence level between 0 and 1 will be returned." + }, + "text": { + "type": "string", + "description": "Entity text as appears in the request." + }, + "offset": { + "type": "integer", + "format": "int32", + "description": "Start position for the entity match text." + }, + "length": { + "type": "integer", + "format": "int32", + "description": "Length for the entity match text." + } + } + }, + "AnalysisInput": { + "type": "object", + "required": [ + "analysisInput" + ], + "properties": { + "analysisInput": { + "$ref": "#/definitions/MultiLanguageBatchInput" + } + } + }, + "EntitiesTaskResult": { + "type": "object", + "properties": { + "results": { + "$ref": "#/definitions/EntitiesResult" + } + } + }, + "PiiTaskResult": { + "type": "object", + "properties": { + "results": { + "$ref": "#/definitions/PiiResult" + } + } + }, + "KeyPhraseTaskResult": { + "type": "object", + "properties": { + "results": { + "$ref": "#/definitions/KeyPhraseResult" + } + } + }, + "EntityLinkingTaskResult": { + "type": "object", + "properties": { + "results": { + "$ref": "#/definitions/EntityLinkingResult" + } + } + }, + "SentimentTaskResult": { + "type": "object", + "properties": { + "results": { + "$ref": "#/definitions/SentimentResponse" + } + } + }, + "HealthcareTaskResult": { + "properties": { + "results": { + "$ref": "#/definitions/HealthcareResult" + }, + "errors": { + "items": { + "$ref": "#/definitions/TextAnalyticsError" + }, + "type": "array" + } + }, + "type": "object" + }, + "JobDescriptor": { + "properties": { + "displayName": { + "description": "Optional display name for the analysis job.", + "type": "string" + } + }, + "type": "object" + }, + "JobMetadata": { + "properties": { + "createdDateTime": { + "format": "date-time", + "type": "string" + }, + "expirationDateTime": { + "format": "date-time", + "type": "string" + }, + "jobId": { + "format": "uuid", + "type": "string" + }, + "lastUpdateDateTime": { + "format": "date-time", + "type": "string" + }, + "status": { + "enum": [ + "notStarted", + "running", + "succeeded", + "failed", + "cancelled", + "cancelling", + "partiallyCompleted" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": false, + "name": "State" + } + } + }, + "required": [ + "jobId", + "lastUpdateDateTime", + "createdDateTime", + "status" + ], + "type": "object" + }, + "AnalyzeJobDisplayName": { + "properties": { + "displayName": { + "type": "string" + } + } + }, + "AnalyzeJobMetadata": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/JobMetadata" + }, + { + "$ref": "#/definitions/AnalyzeJobDisplayName" + } + ] + }, + "AnalyzeJobErrorsAndStatistics": { + "properties": { + "errors": { + "items": { + "$ref": "#/definitions/TextAnalyticsError" + }, + "type": "array" + }, + "statistics": { + "$ref": "#/definitions/RequestStatistics" + } + }, + "type": "object" + }, + "KeyPhraseResult": { + "type": "object", + "required": [ + "documents", + "errors", + "modelVersion" + ], + "properties": { + "documents": { + "type": "array", + "description": "Response by document", + "items": { + "$ref": "#/definitions/DocumentKeyPhrases" + } + }, + "errors": { + "type": "array", + "description": "Errors by document id.", + "items": { + "$ref": "#/definitions/DocumentError" + } + }, + "statistics": { + "$ref": "#/definitions/RequestStatistics" + }, + "modelVersion": { + "type": "string", + "description": "This field indicates which model is used for scoring." + } + } + }, + "DocumentKeyPhrases": { + "type": "object", + "required": [ + "id", + "keyPhrases", + "warnings" + ], + "properties": { + "id": { + "type": "string", + "description": "Unique, non-empty document identifier." + }, + "keyPhrases": { + "type": "array", + "description": "A list of representative words or phrases. The number of key phrases returned is proportional to the number of words in the input document.", + "items": { + "type": "string" + } + }, + "warnings": { + "type": "array", + "description": "Warnings encountered while processing document.", + "items": { + "$ref": "#/definitions/TextAnalyticsWarning" + } + }, + "statistics": { + "description": "if showStats=true was specified in the request this field will contain information about the document payload.", + "$ref": "#/definitions/DocumentStatistics" + } + } + }, + "KeyPhrasesTask": { + "properties": { + "parameters": { + "properties": { + "model-version": { + "default": "latest", + "type": "string" + }, + "loggingOptOut": { + "default": false, + "type": "boolean" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "EntityLinkingTask": { + "properties": { + "parameters": { + "properties": { + "model-version": { + "default": "latest", + "type": "string" + }, + "loggingOptOut": { + "default": false, + "type": "boolean" + }, + "stringIndexType": { + "$ref": "#/definitions/StringIndexType" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "LanguageBatchInput": { + "type": "object", + "required": [ + "documents" + ], + "properties": { + "documents": { + "type": "array", + "items": { + "$ref": "#/definitions/LanguageInput" + } + } + } + }, + "LanguageInput": { + "type": "object", + "required": [ + "id", + "text" + ], + "properties": { + "id": { + "type": "string", + "description": "Unique, non-empty document identifier." + }, + "text": { + "type": "string" + }, + "countryHint": { + "type": "string" + } + } + }, + "Pagination": { + "properties": { + "@nextLink": { + "type": "string" + } + }, + "type": "object" + }, + "PiiResult": { + "type": "object", + "required": [ + "documents", + "errors", + "modelVersion" + ], + "properties": { + "documents": { + "type": "array", + "description": "Response by document", + "items": { + "$ref": "#/definitions/PiiDocumentEntities" + } + }, + "errors": { + "type": "array", + "description": "Errors by document id.", + "items": { + "$ref": "#/definitions/DocumentError" + } + }, + "statistics": { + "$ref": "#/definitions/RequestStatistics" + }, + "modelVersion": { + "type": "string", + "description": "This field indicates which model is used for scoring." + } + } + }, + "LanguageResult": { + "type": "object", + "required": [ + "documents", + "errors", + "modelVersion" + ], + "properties": { + "documents": { + "type": "array", + "description": "Response by document", + "items": { + "$ref": "#/definitions/DocumentLanguage" + } + }, + "errors": { + "type": "array", + "description": "Errors by document id.", + "items": { + "$ref": "#/definitions/DocumentError" + } + }, + "statistics": { + "$ref": "#/definitions/RequestStatistics" + }, + "modelVersion": { + "type": "string", + "description": "This field indicates which model is used for scoring." + } + } + }, + "DocumentLanguage": { + "type": "object", + "required": [ + "id", + "detectedLanguage", + "warnings" + ], + "properties": { + "id": { + "type": "string", + "description": "Unique, non-empty document identifier." + }, + "detectedLanguage": { + "description": "Detected Language.", + "$ref": "#/definitions/DetectedLanguage" + }, + "warnings": { + "type": "array", + "description": "Warnings encountered while processing document.", + "items": { + "$ref": "#/definitions/TextAnalyticsWarning" + } + }, + "statistics": { + "description": "if showStats=true was specified in the request this field will contain information about the document payload.", + "$ref": "#/definitions/DocumentStatistics" + } + } + }, + "DetectedLanguage": { + "type": "object", + "required": [ + "name", + "iso6391Name", + "confidenceScore" + ], + "properties": { + "name": { + "type": "string", + "description": "Long name of a detected language (e.g. English, French)." + }, + "iso6391Name": { + "type": "string", + "description": "A two letter representation of the detected language according to the ISO 639-1 standard (e.g. en, fr)." + }, + "confidenceScore": { + "type": "number", + "format": "double", + "description": "A confidence score between 0 and 1. Scores close to 1 indicate 100% certainty that the identified language is true." + } + } + }, + "StringIndexType": { + "default": "TextElement_v8", + "enum": [ + "TextElement_v8", + "UnicodeCodePoint", + "Utf16CodeUnit" + ], + "x-ms-enum": { + "name": "StringIndexType", + "modelAsString": true, + "values": [ + { + "value": "TextElement_v8", + "description": "Returned offset and length values will correspond to TextElements (Graphemes and Grapheme clusters) confirming to the Unicode 8.0.0 standard. Use this option if your application is written in .Net Framework or .Net Core and you will be using StringInfo." + }, + { + "value": "UnicodeCodePoint", + "description": "Returned offset and length values will correspond to Unicode code points. Use this option if your application is written in a language that support Unicode, for example Python." + }, + { + "value": "Utf16CodeUnit", + "description": "Returned offset and length values will correspond to UTF-16 code units. Use this option if your application is written in a language that support Unicode, for example Java, JavaScript." + } + ] + }, + "type": "string" + }, + "PiiCategories": { + "description": "(Optional) describes the PII categories to return", + "items": { + "type": "string", + "x-ms-enum": { + "name": "PiiCategory", + "modelAsString": true + }, + "enum": [ + "ABARoutingNumber", + "ARNationalIdentityNumber", + "AUBankAccountNumber", + "AUDriversLicenseNumber", + "AUMedicalAccountNumber", + "AUPassportNumber", + "AUTaxFileNumber", + "AUBusinessNumber", + "AUCompanyNumber", + "ATIdentityCard", + "ATTaxIdentificationNumber", + "ATValueAddedTaxNumber", + "AzureDocumentDBAuthKey", + "AzureIAASDatabaseConnectionAndSQLString", + "AzureIoTConnectionString", + "AzurePublishSettingPassword", + "AzureRedisCacheString", + "AzureSAS", + "AzureServiceBusString", + "AzureStorageAccountKey", + "AzureStorageAccountGeneric", + "BENationalNumber", + "BENationalNumberV2", + "BEValueAddedTaxNumber", + "BRCPFNumber", + "BRLegalEntityNumber", + "BRNationalIDRG", + "BGUniformCivilNumber", + "CABankAccountNumber", + "CADriversLicenseNumber", + "CAHealthServiceNumber", + "CAPassportNumber", + "CAPersonalHealthIdentification", + "CASocialInsuranceNumber", + "CLIdentityCardNumber", + "CNResidentIdentityCardNumber", + "CreditCardNumber", + "HRIdentityCardNumber", + "HRNationalIDNumber", + "HRPersonalIdentificationNumber", + "HRPersonalIdentificationOIBNumberV2", + "CYIdentityCard", + "CYTaxIdentificationNumber", + "CZPersonalIdentityNumber", + "CZPersonalIdentityV2", + "DKPersonalIdentificationNumber", + "DKPersonalIdentificationV2", + "DrugEnforcementAgencyNumber", + "EEPersonalIdentificationCode", + "EUDebitCardNumber", + "EUDriversLicenseNumber", + "EUGPSCoordinates", + "EUNationalIdentificationNumber", + "EUPassportNumber", + "EUSocialSecurityNumber", + "EUTaxIdentificationNumber", + "FIEuropeanHealthNumber", + "FINationalID", + "FINationalIDV2", + "FIPassportNumber", + "FRDriversLicenseNumber", + "FRHealthInsuranceNumber", + "FRNationalID", + "FRPassportNumber", + "FRSocialSecurityNumber", + "FRTaxIdentificationNumber", + "FRValueAddedTaxNumber", + "DEDriversLicenseNumber", + "DEPassportNumber", + "DEIdentityCardNumber", + "DETaxIdentificationNumber", + "DEValueAddedNumber", + "GRNationalIDCard", + "GRNationalIDV2", + "GRTaxIdentificationNumber", + "HKIdentityCardNumber", + "HUValueAddedNumber", + "HUPersonalIdentificationNumber", + "HUTaxIdentificationNumber", + "INPermanentAccount", + "INUniqueIdentificationNumber", + "IDIdentityCardNumber", + "InternationalBankingAccountNumber", + "IEPersonalPublicServiceNumber", + "IEPersonalPublicServiceNumberV2", + "ILBankAccountNumber", + "ILNationalID", + "ITDriversLicenseNumber", + "ITFiscalCode", + "ITValueAddedTaxNumber", + "JPBankAccountNumber", + "JPDriversLicenseNumber", + "JPPassportNumber", + "JPResidentRegistrationNumber", + "JPSocialInsuranceNumber", + "JPMyNumberCorporate", + "JPMyNumberPersonal", + "JPResidenceCardNumber", + "LVPersonalCode", + "LTPersonalCode", + "LUNationalIdentificationNumberNatural", + "LUNationalIdentificationNumberNonNatural", + "MYIdentityCardNumber", + "MTIdentityCardNumber", + "MTTaxIDNumber", + "NLCitizensServiceNumber", + "NLCitizensServiceNumberV2", + "NLTaxIdentificationNumber", + "NLValueAddedTaxNumber", + "NZBankAccountNumber", + "NZDriversLicenseNumber", + "NZInlandRevenueNumber", + "NZMinistryOfHealthNumber", + "NZSocialWelfareNumber", + "NOIdentityNumber", + "PHUnifiedMultiPurposeIDNumber", + "PLIdentityCard", + "PLNationalID", + "PLNationalIDV2", + "PLPassportNumber", + "PLTaxIdentificationNumber", + "PLREGONNumber", + "PTCitizenCardNumber", + "PTCitizenCardNumberV2", + "PTTaxIdentificationNumber", + "ROPersonalNumericalCode", + "RUPassportNumberDomestic", + "RUPassportNumberInternational", + "SANationalID", + "SGNationalRegistrationIdentityCardNumber", + "SKPersonalNumber", + "SITaxIdentificationNumber", + "SIUniqueMasterCitizenNumber", + "ZAIdentificationNumber", + "KRResidentRegistrationNumber", + "ESDNI", + "ESSocialSecurityNumber", + "ESTaxIdentificationNumber", + "SQLServerConnectionString", + "SENationalID", + "SENationalIDV2", + "SEPassportNumber", + "SETaxIdentificationNumber", + "SWIFTCode", + "CHSocialSecurityNumber", + "TWNationalID", + "TWPassportNumber", + "TWResidentCertificate", + "THPopulationIdentificationCode", + "TRNationalIdentificationNumber", + "UKDriversLicenseNumber", + "UKElectoralRollNumber", + "UKNationalHealthNumber", + "UKNationalInsuranceNumber", + "UKUniqueTaxpayerNumber", + "USUKPassportNumber", + "USBankAccountNumber", + "USDriversLicenseNumber", + "USIndividualTaxpayerIdentification", + "USSocialSecurityNumber", + "UAPassportNumberDomestic", + "UAPassportNumberInternational", + "Organization", + "Email", + "URL", + "Age", + "PhoneNumber", + "IPAddress", + "Date", + "Person", + "Address", + "All", + "Default" + ] + }, + "type": "array", + "uniqueItems": true + } + }, + "parameters": { + "Endpoint": { + "name": "Endpoint", + "description": "Supported Cognitive Services endpoints (protocol and hostname, for example: https://westus.api.cognitive.microsoft.com).", + "x-ms-parameter-location": "client", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true + }, + "StringIndexType": { + "name": "stringIndexType", + "in": "query", + "type": "string", + "description": "(Optional) Specifies the method used to interpret string offsets. Defaults to Text Elements (Graphemes) according to Unicode v8.0.0. For additional information see https://aka.ms/text-analytics-offsets", + "default": "TextElement_v8", + "enum": [ + "TextElement_v8", + "UnicodeCodePoint", + "Utf16CodeUnit" + ], + "x-ms-enum": { + "name": "StringIndexType", + "modelAsString": true, + "values": [ + { + "value": "TextElement_v8", + "description": "Returned offset and length values will correspond to TextElements (Graphemes and Grapheme clusters) confirming to the Unicode 8.0.0 standard. Use this option if your application is written in .Net Framework or .Net Core and you will be using StringInfo." + }, + { + "value": "UnicodeCodePoint", + "description": "Returned offset and length values will correspond to Unicode code points. Use this option if your application is written in a language that support Unicode, for example Python." + }, + { + "value": "Utf16CodeUnit", + "description": "Returned offset and length values will correspond to UTF-16 code units. Use this option if your application is written in a language that support Unicode, for example Java, JavaScript." + } + ] + }, + "x-ms-parameter-location": "method" + }, + "PiiCategories": { + "description": "(Optional) describes the PII categories to return", + "in": "query", + "collectionFormat": "csv", + "items": { + "type": "string", + "x-ms-enum": { + "name": "PiiCategory", + "modelAsString": true + }, + "enum": [ + "ABARoutingNumber", + "ARNationalIdentityNumber", + "AUBankAccountNumber", + "AUDriversLicenseNumber", + "AUMedicalAccountNumber", + "AUPassportNumber", + "AUTaxFileNumber", + "AUBusinessNumber", + "AUCompanyNumber", + "ATIdentityCard", + "ATTaxIdentificationNumber", + "ATValueAddedTaxNumber", + "AzureDocumentDBAuthKey", + "AzureIAASDatabaseConnectionAndSQLString", + "AzureIoTConnectionString", + "AzurePublishSettingPassword", + "AzureRedisCacheString", + "AzureSAS", + "AzureServiceBusString", + "AzureStorageAccountKey", + "AzureStorageAccountGeneric", + "BENationalNumber", + "BENationalNumberV2", + "BEValueAddedTaxNumber", + "BRCPFNumber", + "BRLegalEntityNumber", + "BRNationalIDRG", + "BGUniformCivilNumber", + "CABankAccountNumber", + "CADriversLicenseNumber", + "CAHealthServiceNumber", + "CAPassportNumber", + "CAPersonalHealthIdentification", + "CASocialInsuranceNumber", + "CLIdentityCardNumber", + "CNResidentIdentityCardNumber", + "CreditCardNumber", + "HRIdentityCardNumber", + "HRNationalIDNumber", + "HRPersonalIdentificationNumber", + "HRPersonalIdentificationOIBNumberV2", + "CYIdentityCard", + "CYTaxIdentificationNumber", + "CZPersonalIdentityNumber", + "CZPersonalIdentityV2", + "DKPersonalIdentificationNumber", + "DKPersonalIdentificationV2", + "DrugEnforcementAgencyNumber", + "EEPersonalIdentificationCode", + "EUDebitCardNumber", + "EUDriversLicenseNumber", + "EUGPSCoordinates", + "EUNationalIdentificationNumber", + "EUPassportNumber", + "EUSocialSecurityNumber", + "EUTaxIdentificationNumber", + "FIEuropeanHealthNumber", + "FINationalID", + "FINationalIDV2", + "FIPassportNumber", + "FRDriversLicenseNumber", + "FRHealthInsuranceNumber", + "FRNationalID", + "FRPassportNumber", + "FRSocialSecurityNumber", + "FRTaxIdentificationNumber", + "FRValueAddedTaxNumber", + "DEDriversLicenseNumber", + "DEPassportNumber", + "DEIdentityCardNumber", + "DETaxIdentificationNumber", + "DEValueAddedNumber", + "GRNationalIDCard", + "GRNationalIDV2", + "GRTaxIdentificationNumber", + "HKIdentityCardNumber", + "HUValueAddedNumber", + "HUPersonalIdentificationNumber", + "HUTaxIdentificationNumber", + "INPermanentAccount", + "INUniqueIdentificationNumber", + "IDIdentityCardNumber", + "InternationalBankingAccountNumber", + "IEPersonalPublicServiceNumber", + "IEPersonalPublicServiceNumberV2", + "ILBankAccountNumber", + "ILNationalID", + "ITDriversLicenseNumber", + "ITFiscalCode", + "ITValueAddedTaxNumber", + "JPBankAccountNumber", + "JPDriversLicenseNumber", + "JPPassportNumber", + "JPResidentRegistrationNumber", + "JPSocialInsuranceNumber", + "JPMyNumberCorporate", + "JPMyNumberPersonal", + "JPResidenceCardNumber", + "LVPersonalCode", + "LTPersonalCode", + "LUNationalIdentificationNumberNatural", + "LUNationalIdentificationNumberNonNatural", + "MYIdentityCardNumber", + "MTIdentityCardNumber", + "MTTaxIDNumber", + "NLCitizensServiceNumber", + "NLCitizensServiceNumberV2", + "NLTaxIdentificationNumber", + "NLValueAddedTaxNumber", + "NZBankAccountNumber", + "NZDriversLicenseNumber", + "NZInlandRevenueNumber", + "NZMinistryOfHealthNumber", + "NZSocialWelfareNumber", + "NOIdentityNumber", + "PHUnifiedMultiPurposeIDNumber", + "PLIdentityCard", + "PLNationalID", + "PLNationalIDV2", + "PLPassportNumber", + "PLTaxIdentificationNumber", + "PLREGONNumber", + "PTCitizenCardNumber", + "PTCitizenCardNumberV2", + "PTTaxIdentificationNumber", + "ROPersonalNumericalCode", + "RUPassportNumberDomestic", + "RUPassportNumberInternational", + "SANationalID", + "SGNationalRegistrationIdentityCardNumber", + "SKPersonalNumber", + "SITaxIdentificationNumber", + "SIUniqueMasterCitizenNumber", + "ZAIdentificationNumber", + "KRResidentRegistrationNumber", + "ESDNI", + "ESSocialSecurityNumber", + "ESTaxIdentificationNumber", + "SQLServerConnectionString", + "SENationalID", + "SENationalIDV2", + "SEPassportNumber", + "SETaxIdentificationNumber", + "SWIFTCode", + "CHSocialSecurityNumber", + "TWNationalID", + "TWPassportNumber", + "TWResidentCertificate", + "THPopulationIdentificationCode", + "TRNationalIdentificationNumber", + "UKDriversLicenseNumber", + "UKElectoralRollNumber", + "UKNationalHealthNumber", + "UKNationalInsuranceNumber", + "UKUniqueTaxpayerNumber", + "USUKPassportNumber", + "USBankAccountNumber", + "USDriversLicenseNumber", + "USIndividualTaxpayerIdentification", + "USSocialSecurityNumber", + "UAPassportNumberDomestic", + "UAPassportNumberInternational", + "Organization", + "Email", + "URL", + "Age", + "PhoneNumber", + "IPAddress", + "Date", + "Person", + "Address", + "All", + "Default" + ] + }, + "name": "piiCategories", + "required": false, + "type": "array", + "uniqueItems": true, + "x-ms-parameter-location": "method" + }, + "JobId": { + "description": "Job ID", + "format": "uuid", + "in": "path", + "name": "jobId", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "AnalyzeJobId": { + "description": "Job ID for Analyze", + "in": "path", + "name": "jobId", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ShowStats": { + "name": "showStats", + "in": "query", + "description": "(Optional) if set to true, response will contain request and document level statistics.", + "type": "boolean", + "required": false, + "x-ms-parameter-location": "method" + }, + "LoggingOptOut": { + "name": "loggingOptOut", + "in": "query", + "description": "(Optional) If set to true, you opt-out of having your text input logged for troubleshooting. By default, Text Analytics logs your input text for 48 hours, solely to allow for troubleshooting issues in providing you with the Text Analytics natural language processing functions. Setting this parameter to true, disables input logging and may limit our ability to remediate issues that occur. Please see Cognitive Services Compliance and Privacy notes at https://aka.ms/cs-compliance for additional details, and Microsoft Responsible AI principles at https://www.microsoft.com/en-us/ai/responsible-ai.", + "type": "boolean", + "required": false, + "x-ms-parameter-location": "method" + }, + "ModelVersion": { + "name": "model-version", + "in": "query", + "description": "(Optional) This value indicates which model will be used for scoring. If a model-version is not specified, the API should default to the latest, non-preview version. ", + "type": "string", + "required": false, + "x-ms-parameter-location": "method" + }, + "MultiLanguageInput": { + "in": "body", + "name": "input", + "description": "Collection of documents to analyze.", + "required": true, + "schema": { + "$ref": "#/definitions/MultiLanguageBatchInput" + }, + "x-ms-parameter-location": "method" + }, + "LanguageInput": { + "in": "body", + "name": "input", + "description": "Collection of documents to analyze for language endpoint.", + "required": true, + "schema": { + "$ref": "#/definitions/LanguageBatchInput" + }, + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.5/examples/SuccessfulAnalyzeRequest.json b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.5/examples/SuccessfulAnalyzeRequest.json new file mode 100644 index 000000000000..e1b8c498d32d --- /dev/null +++ b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.5/examples/SuccessfulAnalyzeRequest.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "Ocp-Apim-Subscription-Key": "{API key}", + "Endpoint": "{Endpoint}", + "jobId": "{Job ID}", + "input": { + "displayName": "Extracting Location & US Region", + "analysisInput": { + "documents": [ + { + "id": "1", + "language": "en", + "text": "I had a wonderful trip to Seattle last week." + }, + { + "id": "2", + "language": "en", + "text": "I'm flying to NYC tomorrow. See you there." + } + ] + }, + "tasks": { + "entityRecognitionTasks": [ + { + "parameters": { + "model-version": "latest" + } + } + ] + } + } + }, + "responses": { + "202": { + "headers": { + "Operation-Location": "{endpoint}/text/analytics/v3.1-preview.5/analyze/jobs/{jobId}" + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "InvalidRequest", + "message": "Invalid Request.", + "innererror": { + "code": "MissingInputRecords", + "message": "Missing input records." + } + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "InternalServerError", + "message": "Internal Server Error" + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.5/examples/SuccessfulAnalyzeStatusRequest.json b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.5/examples/SuccessfulAnalyzeStatusRequest.json new file mode 100644 index 000000000000..93d23bfe90a3 --- /dev/null +++ b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.5/examples/SuccessfulAnalyzeStatusRequest.json @@ -0,0 +1,112 @@ +{ + "parameters": { + "Ocp-Apim-Subscription-Key": "{API key}", + "Endpoint": "{Endpoint}", + "jobId": "{Job ID}" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "createdDateTime": "2020-10-01T15:00:45Z", + "displayName": "Extracting Location & US Region", + "expirationDateTime": "2020-10-03T15:01:03Z", + "jobId": "c0f2a446-05d9-48fc-ba8f-3ef4af8d0b18", + "lastUpdateDateTime": "2020-10-01T15:01:03Z", + "status": "succeeded", + "tasks": { + "completed": 2, + "failed": 0, + "inProgress": 0, + "total": 2, + "entityRecognitionTasks": [ + { + "name": "Recognize Entities (2020-04-01)", + "lastUpdateDateTime": "2020-10-01T15:01:03Z", + "status": "succeeded", + "results": { + "documents": [ + { + "entities": [ + { + "category": "Event", + "confidenceScore": 0.61, + "length": 4, + "offset": 18, + "text": "trip" + }, + { + "category": "Location", + "confidenceScore": 0.82, + "length": 7, + "offset": 26, + "subcategory": "GPE", + "text": "Seattle" + }, + { + "category": "DateTime", + "confidenceScore": 0.8, + "length": 9, + "offset": 34, + "subcategory": "DateRange", + "text": "last week" + } + ], + "id": "1", + "warnings": [] + }, + { + "entities": [ + { + "category": "Location", + "confidenceScore": 0.52, + "length": 3, + "offset": 14, + "subcategory": "GPE", + "text": "NYC" + }, + { + "category": "DateTime", + "confidenceScore": 0.8, + "length": 8, + "offset": 18, + "subcategory": "Date", + "text": "tomorrow" + } + ], + "id": "2", + "warnings": [] + } + ], + "errors": [], + "modelVersion": "2020-04-01" + } + } + ] + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "NotFound", + "message": "Not Found", + "innererror": { + "code": "JobIdNotFound", + "message": "Job ID not found." + } + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "InternalServerError", + "message": "Internal Server Error" + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.5/examples/SuccessfulEntitiesRequest.json b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.5/examples/SuccessfulEntitiesRequest.json new file mode 100644 index 000000000000..d6c9a0221153 --- /dev/null +++ b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.5/examples/SuccessfulEntitiesRequest.json @@ -0,0 +1,94 @@ +{ + "parameters": { + "Ocp-Apim-Subscription-Key": "{API key}", + "Endpoint": "{Endpoint}", + "input": { + "documents": [ + { + "id": "1", + "language": "en", + "text": "Microsoft was founded by Bill Gates and Paul Allen." + }, + { + "id": "2", + "language": "en", + "text": "Pike place market is my favorite Seattle attraction." + } + ] + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "documents": [ + { + "entities": [ + { + "category": "Organization", + "confidenceScore": 0.84, + "length": 9, + "offset": 0, + "text": "Microsoft" + }, + { + "category": "Person", + "confidenceScore": 0.85, + "length": 10, + "offset": 25, + "text": "Bill Gates" + }, + { + "category": "Person", + "confidenceScore": 0.9, + "length": 10, + "offset": 40, + "text": "Paul Allen" + } + ], + "id": "1", + "warnings": [] + }, + { + "entities": [ + { + "category": "Location", + "confidenceScore": 0.55, + "length": 7, + "offset": 33, + "subcategory": "GPE", + "text": "Seattle" + } + ], + "id": "2", + "warnings": [] + } + ], + "errors": [], + "modelVersion": "2020-04-01" + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "InvalidRequest", + "message": "Invalid Request.", + "innererror": { + "code": "MissingInputRecords", + "message": "Missing input records." + } + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "InternalServerError", + "message": "Internal Server Error" + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.5/examples/SuccessfulEntityLinkingRequest.json b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.5/examples/SuccessfulEntityLinkingRequest.json new file mode 100644 index 000000000000..998ac1d65bab --- /dev/null +++ b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.5/examples/SuccessfulEntityLinkingRequest.json @@ -0,0 +1,140 @@ +{ + "parameters": { + "Ocp-Apim-Subscription-Key": "{API key}", + "Endpoint": "{Endpoint}", + "input": { + "documents": [ + { + "id": "1", + "language": "en", + "text": "Microsoft was founded by Bill Gates and Paul Allen." + }, + { + "id": "2", + "language": "en", + "text": "Pike place market is my favorite Seattle attraction." + } + ] + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "documents": [ + { + "entities": [ + { + "dataSource": "Wikipedia", + "id": "Bill Gates", + "language": "en", + "matches": [ + { + "confidenceScore": 0.52, + "length": 10, + "offset": 25, + "text": "Bill Gates" + } + ], + "name": "Bill Gates", + "url": "https://en.wikipedia.org/wiki/Bill_Gates" + }, + { + "dataSource": "Wikipedia", + "id": "Paul Allen", + "language": "en", + "matches": [ + { + "confidenceScore": 0.54, + "length": 10, + "offset": 40, + "text": "Paul Allen" + } + ], + "name": "Paul Allen", + "url": "https://en.wikipedia.org/wiki/Paul_Allen" + }, + { + "dataSource": "Wikipedia", + "id": "Microsoft", + "language": "en", + "matches": [ + { + "confidenceScore": 0.49, + "length": 9, + "offset": 0, + "text": "Microsoft" + } + ], + "name": "Microsoft", + "url": "https://en.wikipedia.org/wiki/Microsoft" + } + ], + "id": "1", + "warnings": [] + }, + { + "entities": [ + { + "dataSource": "Wikipedia", + "id": "Pike Place Market", + "language": "en", + "matches": [ + { + "confidenceScore": 0.86, + "length": 17, + "offset": 0, + "text": "Pike place market" + } + ], + "name": "Pike Place Market", + "url": "https://en.wikipedia.org/wiki/Pike_Place_Market" + }, + { + "dataSource": "Wikipedia", + "id": "Seattle", + "language": "en", + "matches": [ + { + "confidenceScore": 0.27, + "length": 7, + "offset": 33, + "text": "Seattle" + } + ], + "name": "Seattle", + "url": "https://en.wikipedia.org/wiki/Seattle" + } + ], + "id": "2", + "warnings": [] + } + ], + "errors": [], + "modelVersion": "2020-02-01" + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "InvalidRequest", + "message": "Invalid Request.", + "innererror": { + "code": "MissingInputRecords", + "message": "Missing input records." + } + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "InternalServerError", + "message": "Internal Server Error" + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.5/examples/SuccessfulEntityPIIRequest.json b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.5/examples/SuccessfulEntityPIIRequest.json new file mode 100644 index 000000000000..d125525bda91 --- /dev/null +++ b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.5/examples/SuccessfulEntityPIIRequest.json @@ -0,0 +1,100 @@ +{ + "parameters": { + "Ocp-Apim-Subscription-Key": "{API key}", + "Endpoint": "{Endpoint}", + "input": { + "documents": [ + { + "id": "1", + "language": "en", + "text": "My SSN is 859-98-0987" + }, + { + "id": "2", + "language": "en", + "text": "Your ABA number - 111000025 - is the first 9 digits in the lower left hand corner of your personal check." + }, + { + "id": "3", + "language": "en", + "text": "Is 998.214.865-68 your Brazilian CPF number?" + } + ] + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "documents": [ + { + "id": "1", + "redactedText": "My SSN is ***********", + "entities": [ + { + "category": "U.S. Social Security Number (SSN)", + "confidenceScore": 0.65, + "length": 11, + "offset": 28, + "text": "859-98-0987" + } + ], + "warnings": [] + }, + { + "id": "2", + "redactedText": "Your ABA number - ********* - is the first 9 digits in the lower left hand corner of your personal check.", + "entities": [ + { + "category": "ABA Routing Number", + "confidenceScore": 0.75, + "length": 9, + "offset": 18, + "text": "111000025" + } + ], + "warnings": [] + }, + { + "id": "3", + "redactedText": "Is ************** your Brazilian CPF number?", + "entities": [ + { + "category": "Brazil CPF Number", + "confidenceScore": 0.85, + "length": 14, + "offset": 3, + "text": "998.214.865-68" + } + ], + "warnings": [] + } + ], + "errors": [], + "modelVersion": "2019-10-01" + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "InvalidRequest", + "message": "Invalid Request.", + "innererror": { + "code": "MissingInputRecords", + "message": "Missing input records." + } + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "InternalServerError", + "message": "Internal Server Error" + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.5/examples/SuccessfulHealthDeleteRequest.json b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.5/examples/SuccessfulHealthDeleteRequest.json new file mode 100644 index 000000000000..569ae75df649 --- /dev/null +++ b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.5/examples/SuccessfulHealthDeleteRequest.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "Ocp-Apim-Subscription-Key": "{API key}", + "Endpoint": "{Endpoint}", + "jobId": "{Job ID}" + }, + "responses": { + "202": { + "headers": { + "Operation-Location": "{endpoint}/text/analytics/v3.1-preview.5/entities/healthcare/jobs/{jobId}" + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "NotFound", + "message": "Not Found", + "innererror": { + "code": "JobIdNotFound", + "message": "Job ID not found." + } + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "InternalServerError", + "message": "Internal Server Error" + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.5/examples/SuccessfulHealthRequest.json b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.5/examples/SuccessfulHealthRequest.json new file mode 100644 index 000000000000..2fa1e9978902 --- /dev/null +++ b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.5/examples/SuccessfulHealthRequest.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "Ocp-Apim-Subscription-Key": "{API key}", + "Endpoint": "{Endpoint}", + "jobId": "{Job ID}", + "input": { + "documents": [ + { + "id": "1", + "language": "en", + "text": "Subject is taking 100mg of ibuprofen twice daily." + } + ] + } + }, + "responses": { + "202": { + "headers": { + "Operation-Location": "{endpoint}/text/analytics/v3.1-preview.5/entities/healthcare/jobs/{jobId}" + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "InvalidRequest", + "message": "Invalid Request.", + "innererror": { + "code": "MissingInputRecords", + "message": "Missing input records." + } + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "InternalServerError", + "message": "Internal Server Error" + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.5/examples/SuccessfulHealthStatusRequest.json b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.5/examples/SuccessfulHealthStatusRequest.json new file mode 100644 index 000000000000..1bb24e508072 --- /dev/null +++ b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.5/examples/SuccessfulHealthStatusRequest.json @@ -0,0 +1,227 @@ +{ + "parameters": { + "Ocp-Apim-Subscription-Key": "{API key}", + "Endpoint": "{Endpoint}", + "jobId": "{Job ID}" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "createdDateTime": "2020-10-01T15:01:03Z", + "expirationDateTime": "2020-10-03T15:01:03Z", + "jobId": "c0f2a446-05d9-48fc-ba8f-3ef4af8d0b18", + "lastUpdateDateTime": "2020-10-01T15:01:03Z", + "status": "succeeded", + "results": { + "documents": [ + { + "id": "1", + "entities": [ + { + "offset": 18, + "length": 5, + "text": "100mg", + "category": "Dosage", + "confidenceScore": 0.99 + }, + { + "offset": 27, + "length": 9, + "text": "ibuprofen", + "category": "MedicationName", + "confidenceScore": 1.0, + "assertion": { + "certainty": "positive" + }, + "links": [ + { + "id": "C0020740", + "dataSource": "UMLS" + }, + { + "id": "0000019879", + "dataSource": "AOD" + }, + { + "id": "M01AE01", + "dataSource": "ATC" + }, + { + "id": "0046165", + "dataSource": "CCPSS" + }, + { + "id": "0000006519", + "dataSource": "CHV" + }, + { + "id": "2270-2077", + "dataSource": "CSP" + }, + { + "id": "DB01050", + "dataSource": "DRUGBANK" + }, + { + "id": "1611", + "dataSource": "GS" + }, + { + "id": "sh97005926", + "dataSource": "LCH_NW" + }, + { + "id": "LP16165-0", + "dataSource": "LNC" + }, + { + "id": "40458", + "dataSource": "MEDCIN" + }, + { + "id": "d00015", + "dataSource": "MMSL" + }, + { + "id": "D007052", + "dataSource": "MSH" + }, + { + "id": "WK2XYI10QM", + "dataSource": "MTHSPL" + }, + { + "id": "C561", + "dataSource": "NCI" + }, + { + "id": "C561", + "dataSource": "NCI_CTRP" + }, + { + "id": "00803", + "dataSource": "NCI_DCP" + }, + { + "id": "NSC0256857", + "dataSource": "NCI_DTP" + }, + { + "id": "WK2XYI10QM", + "dataSource": "NCI_FDA" + }, + { + "id": "CDR0000613511", + "dataSource": "NCI_NCI-GLOSS" + }, + { + "id": "002377", + "dataSource": "NDDF" + }, + { + "id": "CDR0000040475", + "dataSource": "PDQ" + }, + { + "id": "x02MO", + "dataSource": "RCD" + }, + { + "id": "5640", + "dataSource": "RXNORM" + }, + { + "id": "E-7772", + "dataSource": "SNM" + }, + { + "id": "C-603C0", + "dataSource": "SNMI" + }, + { + "id": "387207008", + "dataSource": "SNOMEDCT_US" + }, + { + "id": "m39860", + "dataSource": "USP" + }, + { + "id": "MTHU000060", + "dataSource": "USPMG" + }, + { + "id": "4017840", + "dataSource": "VANDF" + } + ] + }, + { + "offset": 37, + "length": 11, + "text": "twice daily", + "category": "Frequency", + "confidenceScore": 1 + } + ], + "relations": [ + { + "relationType": "DosageOfMedication", + "entities": [ + { + "ref": "#/documents/0/entities/0", + "role": "Attribute" + }, + { + "ref": "#/documents/0/entities/1", + "role": "Entity" + } + ] + }, + { + "relationType": "FrequencyOfMedication", + "entities": [ + { + "ref": "#/documents/0/entities/2", + "role": "Attribute" + }, + { + "ref": "#/documents/0/entities/1", + "role": "Entity" + } + ] + } + ], + "warnings": [] + } + ], + "errors": [], + "modelVersion": "2020-05-08" + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "NotFound", + "message": "Not Found", + "innererror": { + "code": "JobIdNotFound", + "message": "Job ID not found." + } + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "InternalServerError", + "message": "Internal Server Error" + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.5/examples/SuccessfulKeyPhrasesRequest.json b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.5/examples/SuccessfulKeyPhrasesRequest.json new file mode 100644 index 000000000000..f45b74e027f5 --- /dev/null +++ b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.5/examples/SuccessfulKeyPhrasesRequest.json @@ -0,0 +1,83 @@ +{ + "parameters": { + "Ocp-Apim-Subscription-Key": "{API key}", + "Endpoint": "{Endpoint}", + "input": { + "documents": [ + { + "id": "1", + "language": "en", + "text": "Microsoft was founded by Bill Gates and Paul Allen." + }, + { + "id": "2", + "language": "en", + "text": "Text Analytics is one of the Azure Cognitive Services." + }, + { + "id": "3", + "language": "en", + "text": "My cat might need to see a veterinarian." + } + ] + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "documents": [ + { + "id": "1", + "keyPhrases": [ + "Bill Gates", + "Paul Allen", + "Microsoft" + ], + "warnings": [] + }, + { + "id": "2", + "keyPhrases": [ + "Azure Cognitive Services", + "Text Analytics" + ], + "warnings": [] + }, + { + "id": "3", + "keyPhrases": [ + "cat", + "veterinarian" + ], + "warnings": [] + } + ], + "errors": [], + "modelVersion": "2019-10-01" + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "InvalidRequest", + "message": "Invalid Request.", + "innererror": { + "code": "MissingInputRecords", + "message": "Missing input records." + } + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "InternalServerError", + "message": "Internal Server Error" + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.5/examples/SuccessfulLanguagesRequest.json b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.5/examples/SuccessfulLanguagesRequest.json new file mode 100644 index 000000000000..b1077b92db58 --- /dev/null +++ b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.5/examples/SuccessfulLanguagesRequest.json @@ -0,0 +1,82 @@ +{ + "parameters": { + "Ocp-Apim-Subscription-Key": "{API key}", + "Endpoint": "{Endpoint}", + "input": { + "documents": [ + { + "id": "1", + "text": "Hello world" + }, + { + "id": "2", + "text": "Bonjour tout le monde" + }, + { + "id": "3", + "text": "Hola mundo" + } + ] + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "documents": [ + { + "detectedLanguage": { + "confidenceScore": 1, + "iso6391Name": "en", + "name": "English" + }, + "id": "1", + "warnings": [] + }, + { + "detectedLanguage": { + "confidenceScore": 1, + "iso6391Name": "fr", + "name": "French" + }, + "id": "2", + "warnings": [] + }, + { + "detectedLanguage": { + "confidenceScore": 1, + "iso6391Name": "es", + "name": "Spanish" + }, + "id": "3", + "warnings": [] + } + ], + "errors": [], + "modelVersion": "2020-04-01" + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "InvalidRequest", + "message": "Invalid Request.", + "innererror": { + "code": "MissingInputRecords", + "message": "Missing input records." + } + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "InternalServerError", + "message": "Internal Server Error" + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.5/examples/SuccessfulSentimentRequest.json b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.5/examples/SuccessfulSentimentRequest.json new file mode 100644 index 000000000000..c751289f2ac1 --- /dev/null +++ b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.5/examples/SuccessfulSentimentRequest.json @@ -0,0 +1,160 @@ +{ + "parameters": { + "Ocp-Apim-Subscription-Key": "{API key}", + "Endpoint": "{Endpoint}", + "input": { + "documents": [ + { + "id": "1", + "language": "en", + "text": "Great atmosphere. Close to plenty of restaurants, hotels, and transit! Staff are friendly and helpful." + } + ] + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "documents": [ + { + "confidenceScores": { + "negative": 0, + "neutral": 0, + "positive": 1 + }, + "id": "1", + "sentences": [ + { + "targets": [ + { + "confidenceScores": { + "negative": 0, + "positive": 1 + }, + "length": 10, + "offset": 6, + "relations": [ + { + "ref": "#/documents/0/sentences/0/assessments/0", + "relationType": "assessment" + } + ], + "sentiment": "positive", + "text": "atmosphere" + } + ], + "confidenceScores": { + "negative": 0, + "neutral": 0, + "positive": 1 + }, + "length": 17, + "offset": 0, + "assessments": [ + { + "confidenceScores": { + "negative": 0, + "positive": 1 + }, + "isNegated": false, + "length": 5, + "offset": 0, + "sentiment": "positive", + "text": "great" + } + ], + "sentiment": "positive", + "text": "Great atmosphere." + }, + { + "targets": [ + { + "confidenceScores": { + "negative": 0.01, + "positive": 0.99 + }, + "length": 11, + "offset": 37, + "relations": [ + { + "ref": "#/documents/0/sentences/1/assessments/0", + "relationType": "assessment" + } + ], + "sentiment": "positive", + "text": "restaurants" + }, + { + "confidenceScores": { + "negative": 0.01, + "positive": 0.99 + }, + "length": 6, + "offset": 50, + "relations": [ + { + "ref": "#/documents/0/sentences/1/assessments/0", + "relationType": "assessment" + } + ], + "sentiment": "positive", + "text": "hotels" + } + ], + "confidenceScores": { + "negative": 0.01, + "neutral": 0.86, + "positive": 0.13 + }, + "length": 52, + "offset": 18, + "assessments": [ + { + "confidenceScores": { + "negative": 0.01, + "positive": 0.99 + }, + "isNegated": false, + "length": 15, + "offset": 18, + "sentiment": "positive", + "text": "Close to plenty" + } + ], + "sentiment": "neutral", + "text": "Close to plenty of restaurants, hotels, and transit!" + } + ], + "sentiment": "positive", + "warnings": [] + } + ], + "errors": [], + "modelVersion": "2020-04-01" + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "InvalidRequest", + "message": "Invalid Request.", + "innererror": { + "code": "MissingInputRecords", + "message": "Missing input records." + } + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "InternalServerError", + "message": "Internal Server Error" + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/TextAnalytics/readme.go.md b/specification/cognitiveservices/data-plane/TextAnalytics/readme.go.md index d7f271eeeebe..e93242e9705c 100644 --- a/specification/cognitiveservices/data-plane/TextAnalytics/readme.go.md +++ b/specification/cognitiveservices/data-plane/TextAnalytics/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: textanalytics clear-output-folder: true ``` diff --git a/specification/cognitiveservices/data-plane/TextAnalytics/readme.md b/specification/cognitiveservices/data-plane/TextAnalytics/readme.md index a349ea5f0210..3565ecfa5880 100644 --- a/specification/cognitiveservices/data-plane/TextAnalytics/readme.md +++ b/specification/cognitiveservices/data-plane/TextAnalytics/readme.md @@ -108,6 +108,14 @@ These settings apply only when `--tag=release_3_1_preview.4` is specified on the input-file: preview/v3.1-preview.4/TextAnalytics.json ``` +### Release 3.1-Preview.5 + +These settings apply only when `--tag=release_3_1_preview.5` is specified on the command line. + +```yaml $(tag) == 'release_3_1_preview.5' +input-file: preview/v3.1-preview.5/TextAnalytics.json +``` + ## Swagger to SDK This section describes what SDK should be generated by the automatic system. diff --git a/specification/cognitiveservices/data-plane/TextAnalytics/readme.python.md b/specification/cognitiveservices/data-plane/TextAnalytics/readme.python.md index f1f64c8a2a92..4a0a38e2519f 100644 --- a/specification/cognitiveservices/data-plane/TextAnalytics/readme.python.md +++ b/specification/cognitiveservices/data-plane/TextAnalytics/readme.python.md @@ -60,4 +60,10 @@ output-folder: $(python-sdks-folder)/textanalytics/azure-ai-textanalytics/azure/ ``` yaml $(tag) == 'release_3_1_preview.4' namespace: azure.ai.textanalytics.v3_1_preview_4 output-folder: $(python-sdks-folder)/textanalytics/azure-ai-textanalytics/azure/ai/textanalytics/v3_1_preview_4 +``` + +### Tag: release_3_1_preview_5 +``` yaml $(tag) == 'release_3_1_preview.5' +namespace: azure.ai.textanalytics.v3_1_preview_5 +output-folder: $(python-sdks-folder)/textanalytics/azure-ai-textanalytics/azure/ai/textanalytics/v3_1_preview_5 ``` \ No newline at end of file diff --git a/specification/cognitiveservices/data-plane/TranslatorText/preview/v1.0-preview.1/TranslatorBatch.json b/specification/cognitiveservices/data-plane/TranslatorText/preview/v1.0-preview.1/TranslatorBatch.json index 754fc38b80a1..a5bc7cadf0d3 100644 --- a/specification/cognitiveservices/data-plane/TranslatorText/preview/v1.0-preview.1/TranslatorBatch.json +++ b/specification/cognitiveservices/data-plane/TranslatorText/preview/v1.0-preview.1/TranslatorBatch.json @@ -12,7 +12,7 @@ ], "summary": "Submit a document translation request to the Document Translation service", "description": "Use this API to submit a bulk (batch) translation request to the Document Translation service.\r\nEach request can contain multiple documents and must contain a source and destination container for each document.\r\n \r\nThe prefix and suffix filter (if supplied) are used to filter folders. The prefix is applied to the subpath after the container name.\r\n \r\nGlossaries / Translation memory can be included in the request and are applied by the service when the document is translated.\r\n \r\nIf the glossary is invalid or unreachable during translation, an error is indicated in the document status.\r\nIf a file with the same name already exists at the destination, it will be overwritten. The targetUrl for each target language must be unique.", - "operationId": "DocumentTranslation_SubmitBatchRequest", + "operationId": "DocumentTranslation_StartTranslation", "consumes": [ "application/json", "text/json", @@ -23,11 +23,12 @@ ], "parameters": [ { + "required": true, "in": "body", "name": "body", "description": "request details", "schema": { - "$ref": "#/definitions/BatchSubmissionRequest" + "$ref": "#/definitions/StartTranslationDetails" } } ], @@ -45,7 +46,7 @@ "400": { "description": "Invalid request. Check input parameters", "schema": { - "$ref": "#/definitions/ErrorResponseV2" + "$ref": "#/definitions/TranslationErrorResponse" }, "examples": { "application/json": "{\r\n \"error\": {\r\n \"code\": \"InvalidRequest\",\r\n \"message\": \"Some argument is incorrect\",\r\n \"target\": \"batch\",\r\n \"innerError\": {\r\n \"code\": \"SASTokenInvalid\",\r\n \"message\": \"SAS token for storage is invalid\"\r\n }\r\n }\r\n}" @@ -55,7 +56,7 @@ "401": { "description": "Unauthorized. Please check your credentials", "schema": { - "$ref": "#/definitions/ErrorResponseV2" + "$ref": "#/definitions/TranslationErrorResponse" }, "examples": { "application/json": "{\r\n \"error\": {\r\n \"code\": \"Unauthorized\",\r\n \"message\": \"User is not authorized\",\r\n \"target\": \"batch\",\r\n \"innerError\": {\r\n \"code\": \"Unauthorized\",\r\n \"message\": \"Operation is not authorized\"\r\n }\r\n }\r\n}" @@ -65,7 +66,7 @@ "429": { "description": "Too many requests", "schema": { - "$ref": "#/definitions/ErrorResponseV2" + "$ref": "#/definitions/TranslationErrorResponse" }, "examples": { "application/json": "{\r\n \"error\": {\r\n \"code\": \"RequestRateTooHigh\",\r\n \"message\": \"User's request rate is too high\",\r\n \"target\": \"batch\",\r\n \"innerError\": {\r\n \"code\": \"RateTooHigh\",\r\n \"message\": \"Request rate is too high\"\r\n }\r\n }\r\n}" @@ -75,7 +76,7 @@ "500": { "description": "Internal Server Error", "schema": { - "$ref": "#/definitions/ErrorResponseV2" + "$ref": "#/definitions/TranslationErrorResponse" }, "examples": { "application/json": "{\r\n \"error\": {\r\n \"code\": \"InternalServerError\",\r\n \"message\": \"Internal Server Error\",\r\n \"target\": \"batch\",\r\n \"innerError\": {\r\n \"code\": \"InternalServerError\",\r\n \"message\": \"Unexpected internal server error has occurred\"\r\n }\r\n }\r\n}" @@ -85,7 +86,7 @@ "503": { "description": "Server temporary unavailable", "schema": { - "$ref": "#/definitions/ErrorResponseV2" + "$ref": "#/definitions/TranslationErrorResponse" }, "examples": { "application/json": "{\r\n \"error\": {\r\n \"code\": \"ServiceUnavailable\",\r\n \"message\": \"Service is temporary unavailable\",\r\n \"target\": \"batch\",\r\n \"innerError\": {\r\n \"code\": \"ServiceTemporaryUnavailable\",\r\n \"message\": \"Service is currently unavailable. Please try again later\"\r\n }\r\n }\r\n}" @@ -108,8 +109,8 @@ "Document Translation" ], "summary": "Returns a list of batch requests submitted and the status for each request", - "description": "Returns a list of batch requests submitted and the status for each request.\r\nThis list only contains batch requests submitted by the user (based on the subscription). The status for each request is sorted by id.\r\n \r\nIf the number of requests exceeds our paging limit, server-side paging is used. Paginated responses indicate a partial result and include a continuation token in the response.\r\nThe absence of a continuation token means that no additional pages are available.\r\n \r\n$top and $skip query parameters can be used to specify a number of results to return and an offset for the collection.\r\n \r\nThe server honors the values specified by the client. However, clients must be prepared to handle responses that contain a different page size or contain a continuation token.\r\n \r\nWhen both $top and $skip are included, the server should first apply $skip and then $top on the collection.\r\nNote: If the server can't honor $top and/or $skip, the server must return an error to the client informing about it instead of just ignoring the query options.\r\nThis reduces the risk of the client making assumptions about the data returned.", - "operationId": "DocumentTranslation_GetOperations", + "description": "Returns a list of batch requests submitted and the status for each request.\r\nThis list only contains batch requests submitted by the user (based on the resource).\r\n \r\nIf the number of requests exceeds our paging limit, server-side paging is used. Paginated responses indicate a partial result and include a continuation token in the response.\r\nThe absence of a continuation token means that no additional pages are available.\r\n \r\n$top, $skip and $maxpagesize query parameters can be used to specify a number of results to return and an offset for the collection.\r\n \r\n$top indicates the total number of records the user wants to be returned across all pages.\r\n$skip indicates the number of records to skip from the list of batches based on the sorting method specified. By default, we sort by descending start time.\r\n$maxpagesize is the maximum items returned in a page. If more items are requested via $top (or $top is not specified and there are more items to be returned), @nextLink will contain the link to the next page.\r\n \r\n$orderBy query parameter can be used to sort the returned list (ex \"$orderBy=createdDateTimeUtc asc\" or \"$orderBy=createdDateTimeUtc desc\").\r\nThe default sorting is descending by createdDateTimeUtc.\r\nSome query parameters can be used to filter the returned list (ex: \"status=Succeeded,Cancelled\") will only return succeeded and cancelled operations.\r\ncreatedDateTimeUtcStart and createdDateTimeUtcEnd can be used combined or separately to specify a range of datetime to filter the returned list by.\r\nThe supported filtering query parameters are (status, ids, createdDateTimeUtcStart, createdDateTimeUtcEnd).\r\n \r\nThe server honors the values specified by the client. However, clients must be prepared to handle responses that contain a different page size or contain a continuation token.\r\n \r\nWhen both $top and $skip are included, the server should first apply $skip and then $top on the collection.\r\nNote: If the server can't honor $top and/or $skip, the server must return an error to the client informing about it instead of just ignoring the query options.\r\nThis reduces the risk of the client making assumptions about the data returned.", + "operationId": "DocumentTranslation_GetTranslationsStatus", "produces": [ "application/json" ], @@ -117,29 +118,83 @@ { "in": "query", "name": "$top", - "description": "Take the $top entries in the collection\r\nWhen both $top and $skip are supplied, $skip is applied first", + "description": "$top indicates the total number of records the user wants to be returned across all pages.\r\n \r\nClients MAY use $top and $skip query parameters to specify a number of results to return and an offset into the collection.\r\nWhen both $top and $skip are given by a client, the server SHOULD first apply $skip and then $top on the collection.\r\n \r\nNote: If the server can't honor $top and/or $skip, the server MUST return an error to the client informing about it instead of just ignoring the query options.", "type": "integer", "format": "int32", - "default": 50, - "maximum": 100, - "minimum": 1 + "maximum": 2147483647, + "minimum": 0 }, { "in": "query", "name": "$skip", - "description": "Skip the $skip entries in the collection\r\nWhen both $top and $skip are supplied, $skip is applied first", + "description": "$skip indicates the number of records to skip from the list of records held by the server based on the sorting method specified. By default, we sort by descending start time.\r\n \r\nClients MAY use $top and $skip query parameters to specify a number of results to return and an offset into the collection.\r\nWhen both $top and $skip are given by a client, the server SHOULD first apply $skip and then $top on the collection.\r\n \r\nNote: If the server can't honor $top and/or $skip, the server MUST return an error to the client informing about it instead of just ignoring the query options.", "type": "integer", "format": "int32", "default": 0, "maximum": 2147483647, "minimum": 0 + }, + { + "in": "query", + "name": "$maxpagesize", + "description": "$maxpagesize is the maximum items returned in a page. If more items are requested via $top (or $top is not specified and there are more items to be returned), @nextLink will contain the link to the next page.\r\n \r\nClients MAY request server-driven paging with a specific page size by specifying a $maxpagesize preference. The server SHOULD honor this preference if the specified page size is smaller than the server's default page size.", + "type": "integer", + "format": "int32", + "default": 50, + "maximum": 100, + "minimum": 1 + }, + { + "in": "query", + "name": "ids", + "description": "Ids to use in filtering", + "type": "array", + "items": { + "format": "uuid", + "type": "string" + }, + "maxLength": 25 + }, + { + "in": "query", + "name": "statuses", + "description": "Statuses to use in filtering", + "type": "array", + "items": { + "type": "string" + }, + "maxLength": 5 + }, + { + "in": "query", + "name": "createdDateTimeUtcStart", + "description": "the start datetime to get items after", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "createdDateTimeUtcEnd", + "description": "the end datetime to get items before", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "$orderBy", + "description": "the sorting query for the collection (ex: 'CreatedDateTimeUtc asc', 'CreatedDateTimeUtc desc')", + "type": "array", + "items": { + "type": "string" + }, + "maxLength": 1 } ], "responses": { "200": { "description": "Successful request and returns the status of the all the operations", "schema": { - "$ref": "#/definitions/BatchStatusResponse" + "$ref": "#/definitions/TranslationsStatus" }, "headers": { "Retry-After": { @@ -157,7 +212,7 @@ "400": { "description": "Invalid request. Check input parameters", "schema": { - "$ref": "#/definitions/ErrorResponseV2" + "$ref": "#/definitions/TranslationErrorResponse" }, "examples": { "application/json": "{\r\n \"error\": {\r\n \"code\": \"InvalidRequest\",\r\n \"message\": \"Some argument is incorrect\",\r\n \"target\": \"batch\",\r\n \"innerError\": {\r\n \"code\": \"SASTokenInvalid\",\r\n \"message\": \"SAS token for storage is invalid\"\r\n }\r\n }\r\n}" @@ -167,7 +222,7 @@ "401": { "description": "Unauthorized. Please check your credentials", "schema": { - "$ref": "#/definitions/ErrorResponseV2" + "$ref": "#/definitions/TranslationErrorResponse" }, "examples": { "application/json": "{\r\n \"error\": {\r\n \"code\": \"Unauthorized\",\r\n \"message\": \"User is not authorized\",\r\n \"target\": \"batch\",\r\n \"innerError\": {\r\n \"code\": \"Unauthorized\",\r\n \"message\": \"Operation is not authorized\"\r\n }\r\n }\r\n}" @@ -177,7 +232,7 @@ "429": { "description": "Too many requests", "schema": { - "$ref": "#/definitions/ErrorResponseV2" + "$ref": "#/definitions/TranslationErrorResponse" }, "examples": { "application/json": "{\r\n \"error\": {\r\n \"code\": \"RequestRateTooHigh\",\r\n \"message\": \"User's request rate is too high\",\r\n \"target\": \"batch\",\r\n \"innerError\": {\r\n \"code\": \"RateTooHigh\",\r\n \"message\": \"Request rate is too high\"\r\n }\r\n }\r\n}" @@ -187,7 +242,7 @@ "500": { "description": "Internal Server Error", "schema": { - "$ref": "#/definitions/ErrorResponseV2" + "$ref": "#/definitions/TranslationErrorResponse" }, "examples": { "application/json": "{\r\n \"error\": {\r\n \"code\": \"InternalServerError\",\r\n \"message\": \"Internal Server Error\",\r\n \"target\": \"batch\",\r\n \"innerError\": {\r\n \"code\": \"InternalServerError\",\r\n \"message\": \"Unexpected internal server error has occurred\"\r\n }\r\n }\r\n}" @@ -197,7 +252,7 @@ "503": { "description": "Server temporary unavailable", "schema": { - "$ref": "#/definitions/ErrorResponseV2" + "$ref": "#/definitions/TranslationErrorResponse" }, "examples": { "application/json": "{\r\n \"error\": {\r\n \"code\": \"ServiceUnavailable\",\r\n \"message\": \"Service is temporary unavailable\",\r\n \"target\": \"batch\",\r\n \"innerError\": {\r\n \"code\": \"ServiceTemporaryUnavailable\",\r\n \"message\": \"Service is currently unavailable. Please try again later\"\r\n }\r\n }\r\n}" @@ -248,7 +303,7 @@ "200": { "description": "Successful request and it is accepted by the service. The operation details are returned", "schema": { - "$ref": "#/definitions/DocumentStatusDetail" + "$ref": "#/definitions/DocumentStatus" }, "headers": { "Retry-After": { @@ -266,7 +321,7 @@ "401": { "description": "Unauthorized. Please check your credentials", "schema": { - "$ref": "#/definitions/ErrorResponseV2" + "$ref": "#/definitions/TranslationErrorResponse" }, "examples": { "application/json": "{\r\n \"error\": {\r\n \"code\": \"Unauthorized\",\r\n \"message\": \"User is not authorized\",\r\n \"target\": \"document\",\r\n \"innerError\": {\r\n \"code\": \"Unauthorized\",\r\n \"message\": \"Operation is not authorized\"\r\n }\r\n }\r\n}" @@ -276,7 +331,7 @@ "404": { "description": "Resource is not found", "schema": { - "$ref": "#/definitions/ErrorResponseV2" + "$ref": "#/definitions/TranslationErrorResponse" }, "examples": { "application/json": "{\r\n \"error\": {\r\n \"code\": \"ResourceNotFound\",\r\n \"message\": \"id not found\",\r\n \"target\": \"document\",\r\n \"innerError\": {\r\n \"code\": \"ResourceNotFound\",\r\n \"message\": \"Resource requested is not found\"\r\n }\r\n }\r\n}" @@ -286,7 +341,7 @@ "429": { "description": "Too many requests", "schema": { - "$ref": "#/definitions/ErrorResponseV2" + "$ref": "#/definitions/TranslationErrorResponse" }, "examples": { "application/json": "{\r\n \"error\": {\r\n \"code\": \"RequestRateTooHigh\",\r\n \"message\": \"User's request rate is too high\",\r\n \"target\": \"document\",\r\n \"innerError\": {\r\n \"code\": \"RateTooHigh\",\r\n \"message\": \"Request rate is too high\"\r\n }\r\n }\r\n}" @@ -296,7 +351,7 @@ "500": { "description": "Internal Server Error", "schema": { - "$ref": "#/definitions/ErrorResponseV2" + "$ref": "#/definitions/TranslationErrorResponse" }, "examples": { "application/json": "{\r\n \"error\": {\r\n \"code\": \"InternalServerError\",\r\n \"message\": \"Internal Server Error\",\r\n \"target\": \"document\",\r\n \"innerError\": {\r\n \"code\": \"InternalServerError\",\r\n \"message\": \"Unexpected internal server error has occurred\"\r\n }\r\n }\r\n}" @@ -306,7 +361,7 @@ "503": { "description": "Server temporary unavailable", "schema": { - "$ref": "#/definitions/ErrorResponseV2" + "$ref": "#/definitions/TranslationErrorResponse" }, "examples": { "application/json": "{\r\n \"error\": {\r\n \"code\": \"ServiceUnavailable\",\r\n \"message\": \"Service is temporary unavailable\",\r\n \"target\": \"document\",\r\n \"innerError\": {\r\n \"code\": \"ServiceTemporaryUnavailable\",\r\n \"message\": \"Service is currently unavailable. Please try again later\"\r\n }\r\n }\r\n}" @@ -328,7 +383,7 @@ ], "summary": "Returns the status for a document translation request", "description": "Returns the status for a document translation request.\r\nThe status includes the overall request status, as well as the status for documents that are being translated as part of that request.", - "operationId": "DocumentTranslation_GetOperationStatus", + "operationId": "DocumentTranslation_GetTranslationStatus", "produces": [ "application/json" ], @@ -346,7 +401,7 @@ "200": { "description": "Successful request and returns the status of the batch translation operation", "schema": { - "$ref": "#/definitions/BatchStatusDetail" + "$ref": "#/definitions/TranslationStatus" }, "headers": { "Retry-After": { @@ -364,7 +419,7 @@ "401": { "description": "Unauthorized. Please check your credentials", "schema": { - "$ref": "#/definitions/ErrorResponseV2" + "$ref": "#/definitions/TranslationErrorResponse" }, "examples": { "application/json": "{\r\n \"error\": {\r\n \"code\": \"Unauthorized\",\r\n \"message\": \"User is not authorized\",\r\n \"target\": \"batch\",\r\n \"innerError\": {\r\n \"code\": \"Unauthorized\",\r\n \"message\": \"Operation is not authorized\"\r\n }\r\n }\r\n}" @@ -374,7 +429,7 @@ "404": { "description": "Resource is not found", "schema": { - "$ref": "#/definitions/ErrorResponseV2" + "$ref": "#/definitions/TranslationErrorResponse" }, "examples": { "application/json": "{\r\n \"error\": {\r\n \"code\": \"ResourceNotFound\",\r\n \"message\": \"id not found\",\r\n \"target\": \"batch\",\r\n \"innerError\": {\r\n \"code\": \"ResourceNotFound\",\r\n \"message\": \"Resource requested is not found\"\r\n }\r\n }\r\n}" @@ -384,7 +439,7 @@ "429": { "description": "Too many requests", "schema": { - "$ref": "#/definitions/ErrorResponseV2" + "$ref": "#/definitions/TranslationErrorResponse" }, "examples": { "application/json": "{\r\n \"error\": {\r\n \"code\": \"RequestRateTooHigh\",\r\n \"message\": \"User's request rate is too high\",\r\n \"target\": \"batch\",\r\n \"innerError\": {\r\n \"code\": \"RateTooHigh\",\r\n \"message\": \"Request rate is too high\"\r\n }\r\n }\r\n}" @@ -394,7 +449,7 @@ "500": { "description": "Internal Server Error", "schema": { - "$ref": "#/definitions/ErrorResponseV2" + "$ref": "#/definitions/TranslationErrorResponse" }, "examples": { "application/json": "{\r\n \"error\": {\r\n \"code\": \"InternalServerError\",\r\n \"message\": \"Internal Server Error\",\r\n \"target\": \"batch\",\r\n \"innerError\": {\r\n \"code\": \"InternalServerError\",\r\n \"message\": \"Unexpected internal server error has occurred\"\r\n }\r\n }\r\n}" @@ -404,7 +459,7 @@ "503": { "description": "Server temporary unavailable", "schema": { - "$ref": "#/definitions/ErrorResponseV2" + "$ref": "#/definitions/TranslationErrorResponse" }, "examples": { "application/json": "{\r\n \"error\": {\r\n \"code\": \"ServiceUnavailable\",\r\n \"message\": \"Service is temporary unavailable\",\r\n \"target\": \"batch\",\r\n \"innerError\": {\r\n \"code\": \"ServiceTemporaryUnavailable\",\r\n \"message\": \"Service is currently unavailable. Please try again later\"\r\n }\r\n }\r\n}" @@ -422,9 +477,9 @@ "tags": [ "Document Translation" ], - "summary": "Cancel a currently processing or queued operation", - "description": "Cancel a currently processing or queued operation.\r\nCancel a currently processing or queued operation.\r\nAn operation will not be cancelled if it is already completed or failed or cancelling. A bad request will be returned.\r\nAll documents that have completed translation will not be cancelled and will be charged.\r\nAll pending documents will be cancelled if possible.", - "operationId": "DocumentTranslation_CancelOperation", + "summary": "Cancel a currently processing or queued translation", + "description": "Cancel a currently processing or queued translation.\r\nCancel a currently processing or queued translation.\r\nA translation will not be cancelled if it is already completed or failed or cancelling. A bad request will be returned.\r\nAll documents that have completed translation will not be cancelled and will be charged.\r\nAll pending documents will be cancelled if possible.", + "operationId": "DocumentTranslation_CancelTranslation", "produces": [ "application/json" ], @@ -442,13 +497,13 @@ "200": { "description": "Cancel request has been submitted", "schema": { - "$ref": "#/definitions/BatchStatusDetail" + "$ref": "#/definitions/TranslationStatus" } }, "401": { "description": "Unauthorized. Please check your credentials", "schema": { - "$ref": "#/definitions/ErrorResponseV2" + "$ref": "#/definitions/TranslationErrorResponse" }, "examples": { "application/json": "{\r\n \"error\": {\r\n \"code\": \"Unauthorized\",\r\n \"message\": \"User is not authorized\",\r\n \"target\": \"batch\",\r\n \"innerError\": {\r\n \"code\": \"Unauthorized\",\r\n \"message\": \"Operation is not authorized\"\r\n }\r\n }\r\n}" @@ -458,7 +513,7 @@ "404": { "description": "Resource is not found", "schema": { - "$ref": "#/definitions/ErrorResponseV2" + "$ref": "#/definitions/TranslationErrorResponse" }, "examples": { "application/json": "{\r\n \"error\": {\r\n \"code\": \"ResourceNotFound\",\r\n \"message\": \"id not found\",\r\n \"target\": \"batch\",\r\n \"innerError\": {\r\n \"code\": \"ResourceNotFound\",\r\n \"message\": \"Resource requested is not found\"\r\n }\r\n }\r\n}" @@ -468,7 +523,7 @@ "429": { "description": "Too many requests", "schema": { - "$ref": "#/definitions/ErrorResponseV2" + "$ref": "#/definitions/TranslationErrorResponse" }, "examples": { "application/json": "{\r\n \"error\": {\r\n \"code\": \"RequestRateTooHigh\",\r\n \"message\": \"User's request rate is too high\",\r\n \"target\": \"batch\",\r\n \"innerError\": {\r\n \"code\": \"RateTooHigh\",\r\n \"message\": \"Request rate is too high\"\r\n }\r\n }\r\n}" @@ -478,7 +533,7 @@ "500": { "description": "Internal Server Error", "schema": { - "$ref": "#/definitions/ErrorResponseV2" + "$ref": "#/definitions/TranslationErrorResponse" }, "examples": { "application/json": "{\r\n \"error\": {\r\n \"code\": \"InternalServerError\",\r\n \"message\": \"Internal Server Error\",\r\n \"target\": \"batch\",\r\n \"innerError\": {\r\n \"code\": \"InternalServerError\",\r\n \"message\": \"Unexpected internal server error has occurred\"\r\n }\r\n }\r\n}" @@ -488,7 +543,7 @@ "503": { "description": "Server temporary unavailable", "schema": { - "$ref": "#/definitions/ErrorResponseV2" + "$ref": "#/definitions/TranslationErrorResponse" }, "examples": { "application/json": "{\r\n \"error\": {\r\n \"code\": \"ServiceUnavailable\",\r\n \"message\": \"Service is temporary unavailable\",\r\n \"target\": \"batch\",\r\n \"innerError\": {\r\n \"code\": \"ServiceTemporaryUnavailable\",\r\n \"message\": \"Service is currently unavailable. Please try again later\"\r\n }\r\n }\r\n}" @@ -509,8 +564,8 @@ "Document Translation" ], "summary": "Returns the status for all documents in a batch document translation request", - "description": "Returns the status for all documents in a batch document translation request.\r\n \r\nThe documents included in the response are sorted by document Id in descending order. If the number of documents in the response exceeds our paging limit, server-side paging is used.\r\nPaginated responses indicate a partial result and include a continuation token in the response. The absence of a continuation token means that no additional pages are available.\r\n \r\n$top and $skip query parameters can be used to specify a number of results to return and an offset for the collection.\r\nThe server honors the values specified by the client. However, clients must be prepared to handle responses that contain a different page size or contain a continuation token.\r\n \r\nWhen both $top and $skip are included, the server should first apply $skip and then $top on the collection.\r\nNote: If the server can't honor $top and/or $skip, the server must return an error to the client informing about it instead of just ignoring the query options.\r\nThis reduces the risk of the client making assumptions about the data returned.", - "operationId": "DocumentTranslation_GetOperationDocumentsStatus", + "description": "Returns the status for all documents in a batch document translation request.\r\n \r\nIf the number of documents in the response exceeds our paging limit, server-side paging is used.\r\nPaginated responses indicate a partial result and include a continuation token in the response. The absence of a continuation token means that no additional pages are available.\r\n \r\n$top, $skip and $maxpagesize query parameters can be used to specify a number of results to return and an offset for the collection.\r\n \r\n$top indicates the total number of records the user wants to be returned across all pages.\r\n$skip indicates the number of records to skip from the list of document status held by the server based on the sorting method specified. By default, we sort by descending start time.\r\n$maxpagesize is the maximum items returned in a page. If more items are requested via $top (or $top is not specified and there are more items to be returned), @nextLink will contain the link to the next page.\r\n \r\n$orderBy query parameter can be used to sort the returned list (ex \"$orderBy=createdDateTimeUtc asc\" or \"$orderBy=createdDateTimeUtc desc\").\r\nThe default sorting is descending by createdDateTimeUtc.\r\nSome query parameters can be used to filter the returned list (ex: \"status=Succeeded,Cancelled\") will only return succeeded and cancelled documents.\r\ncreatedDateTimeUtcStart and createdDateTimeUtcEnd can be used combined or separately to specify a range of datetime to filter the returned list by.\r\nThe supported filtering query parameters are (status, ids, createdDateTimeUtcStart, createdDateTimeUtcEnd).\r\n \r\nWhen both $top and $skip are included, the server should first apply $skip and then $top on the collection.\r\nNote: If the server can't honor $top and/or $skip, the server must return an error to the client informing about it instead of just ignoring the query options.\r\nThis reduces the risk of the client making assumptions about the data returned.", + "operationId": "DocumentTranslation_GetDocumentsStatus", "produces": [ "application/json" ], @@ -526,29 +581,83 @@ { "in": "query", "name": "$top", - "description": "Take the $top entries in the collection\r\nWhen both $top and $skip are supplied, $skip is applied first", + "description": "$top indicates the total number of records the user wants to be returned across all pages.\r\n \r\nClients MAY use $top and $skip query parameters to specify a number of results to return and an offset into the collection.\r\nWhen both $top and $skip are given by a client, the server SHOULD first apply $skip and then $top on the collection.\r\n \r\nNote: If the server can't honor $top and/or $skip, the server MUST return an error to the client informing about it instead of just ignoring the query options.", "type": "integer", "format": "int32", - "default": 50, - "maximum": 100, - "minimum": 1 + "maximum": 2147483647, + "minimum": 0 }, { "in": "query", "name": "$skip", - "description": "Skip the $skip entries in the collection\r\nWhen both $top and $skip are supplied, $skip is applied first", + "description": "$skip indicates the number of records to skip from the list of records held by the server based on the sorting method specified. By default, we sort by descending start time.\r\n \r\nClients MAY use $top and $skip query parameters to specify a number of results to return and an offset into the collection.\r\nWhen both $top and $skip are given by a client, the server SHOULD first apply $skip and then $top on the collection.\r\n \r\nNote: If the server can't honor $top and/or $skip, the server MUST return an error to the client informing about it instead of just ignoring the query options.", "type": "integer", "format": "int32", "default": 0, "maximum": 2147483647, "minimum": 0 + }, + { + "in": "query", + "name": "$maxpagesize", + "description": "$maxpagesize is the maximum items returned in a page. If more items are requested via $top (or $top is not specified and there are more items to be returned), @nextLink will contain the link to the next page.\r\n \r\nClients MAY request server-driven paging with a specific page size by specifying a $maxpagesize preference. The server SHOULD honor this preference if the specified page size is smaller than the server's default page size.", + "type": "integer", + "format": "int32", + "default": 50, + "maximum": 100, + "minimum": 1 + }, + { + "in": "query", + "name": "ids", + "description": "Ids to use in filtering", + "type": "array", + "items": { + "format": "uuid", + "type": "string" + }, + "maxLength": 25 + }, + { + "in": "query", + "name": "statuses", + "description": "Statuses to use in filtering", + "type": "array", + "items": { + "type": "string" + }, + "maxLength": 5 + }, + { + "in": "query", + "name": "createdDateTimeUtcStart", + "description": "the start datetime to get items after", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "createdDateTimeUtcEnd", + "description": "the end datetime to get items before", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "$orderBy", + "description": "the sorting query for the collection (ex: 'CreatedDateTimeUtc asc', 'CreatedDateTimeUtc desc')", + "type": "array", + "items": { + "type": "string" + }, + "maxLength": 1 } ], "responses": { "200": { "description": "Successful request and returns the status of the documents", "schema": { - "$ref": "#/definitions/DocumentStatusResponse" + "$ref": "#/definitions/DocumentsStatus" }, "headers": { "Retry-After": { @@ -566,7 +675,7 @@ "400": { "description": "Invalid request. Check input parameters", "schema": { - "$ref": "#/definitions/ErrorResponseV2" + "$ref": "#/definitions/TranslationErrorResponse" }, "examples": { "application/json": "{\r\n \"error\": {\r\n \"code\": \"InvalidRequest\",\r\n \"message\": \"Some argument is incorrect\",\r\n \"target\": \"document\",\r\n \"innerError\": {\r\n \"code\": \"SASTokenInvalid\",\r\n \"message\": \"SAS token for storage is invalid\"\r\n }\r\n }\r\n}" @@ -576,7 +685,7 @@ "401": { "description": "Unauthorized. Please check your credentials", "schema": { - "$ref": "#/definitions/ErrorResponseV2" + "$ref": "#/definitions/TranslationErrorResponse" }, "examples": { "application/json": "{\r\n \"error\": {\r\n \"code\": \"Unauthorized\",\r\n \"message\": \"User is not authorized\",\r\n \"target\": \"document\",\r\n \"innerError\": {\r\n \"code\": \"Unauthorized\",\r\n \"message\": \"Operation is not authorized\"\r\n }\r\n }\r\n}" @@ -586,7 +695,7 @@ "404": { "description": "Resource is not found", "schema": { - "$ref": "#/definitions/ErrorResponseV2" + "$ref": "#/definitions/TranslationErrorResponse" }, "examples": { "application/json": "{\r\n \"error\": {\r\n \"code\": \"ResourceNotFound\",\r\n \"message\": \"id not found\",\r\n \"target\": \"document\",\r\n \"innerError\": {\r\n \"code\": \"ResourceNotFound\",\r\n \"message\": \"Resource requested is not found\"\r\n }\r\n }\r\n}" @@ -596,7 +705,7 @@ "429": { "description": "Too many requests", "schema": { - "$ref": "#/definitions/ErrorResponseV2" + "$ref": "#/definitions/TranslationErrorResponse" }, "examples": { "application/json": "{\r\n \"error\": {\r\n \"code\": \"RequestRateTooHigh\",\r\n \"message\": \"User's request rate is too high\",\r\n \"target\": \"document\",\r\n \"innerError\": {\r\n \"code\": \"RateTooHigh\",\r\n \"message\": \"Request rate is too high\"\r\n }\r\n }\r\n}" @@ -606,7 +715,7 @@ "500": { "description": "Internal Server Error", "schema": { - "$ref": "#/definitions/ErrorResponseV2" + "$ref": "#/definitions/TranslationErrorResponse" }, "examples": { "application/json": "{\r\n \"error\": {\r\n \"code\": \"InternalServerError\",\r\n \"message\": \"Internal Server Error\",\r\n \"target\": \"document\",\r\n \"innerError\": {\r\n \"code\": \"InternalServerError\",\r\n \"message\": \"Unexpected internal server error has occurred\"\r\n }\r\n }\r\n}" @@ -616,7 +725,7 @@ "503": { "description": "Server temporary unavailable", "schema": { - "$ref": "#/definitions/ErrorResponseV2" + "$ref": "#/definitions/TranslationErrorResponse" }, "examples": { "application/json": "{\r\n \"error\": {\r\n \"code\": \"ServiceUnavailable\",\r\n \"message\": \"Service is temporary unavailable\",\r\n \"target\": \"document\",\r\n \"innerError\": {\r\n \"code\": \"ServiceTemporaryUnavailable\",\r\n \"message\": \"Service is currently unavailable. Please try again later\"\r\n }\r\n }\r\n}" @@ -641,7 +750,7 @@ ], "summary": "Returns a list of supported document formats", "description": "The list of supported document formats supported by the Document Translation service.\r\nThe list includes the common file extension, as well as the content-type if using the upload API.", - "operationId": "DocumentTranslation_GetDocumentFormats", + "operationId": "DocumentTranslation_GetSupportedDocumentFormats", "produces": [ "application/json" ], @@ -649,13 +758,20 @@ "200": { "description": "Returns the list of supported document file formats", "schema": { - "$ref": "#/definitions/FileFormatListResult" + "$ref": "#/definitions/SupportedFileFormats" + }, + "headers": { + "Retry-After": { + "description": "Indicates how long to wait before making a new request.", + "type": "integer", + "format": "int32" + } } }, "429": { "description": "Too many requests", "schema": { - "$ref": "#/definitions/ErrorResponseV2" + "$ref": "#/definitions/TranslationErrorResponse" }, "examples": { "application/json": "{\r\n \"error\": {\r\n \"code\": \"RequestRateTooHigh\",\r\n \"message\": \"User's request rate is too high\",\r\n \"target\": \"format\",\r\n \"innerError\": {\r\n \"code\": \"RateTooHigh\",\r\n \"message\": \"Request rate is too high\"\r\n }\r\n }\r\n}" @@ -665,7 +781,7 @@ "500": { "description": "Internal Server Error", "schema": { - "$ref": "#/definitions/ErrorResponseV2" + "$ref": "#/definitions/TranslationErrorResponse" }, "examples": { "application/json": "{\r\n \"error\": {\r\n \"code\": \"InternalServerError\",\r\n \"message\": \"Internal Server Error\",\r\n \"target\": \"format\",\r\n \"innerError\": {\r\n \"code\": \"InternalServerError\",\r\n \"message\": \"Unexpected internal server error has occurred\"\r\n }\r\n }\r\n}" @@ -675,7 +791,7 @@ "503": { "description": "Server temporary unavailable", "schema": { - "$ref": "#/definitions/ErrorResponseV2" + "$ref": "#/definitions/TranslationErrorResponse" }, "examples": { "application/json": "{\r\n \"error\": {\r\n \"code\": \"ServiceUnavailable\",\r\n \"message\": \"Service is temporary unavailable\",\r\n \"target\": \"format\",\r\n \"innerError\": {\r\n \"code\": \"ServiceTemporaryUnavailable\",\r\n \"message\": \"Service is currently unavailable. Please try again later\"\r\n }\r\n }\r\n}" @@ -697,7 +813,7 @@ ], "summary": "Returns the list of supported glossary formats", "description": "The list of supported glossary formats supported by the Document Translation service.\r\nThe list includes the common file extension used.", - "operationId": "DocumentTranslation_GetGlossaryFormats", + "operationId": "DocumentTranslation_GetSupportedGlossaryFormats", "produces": [ "application/json" ], @@ -705,13 +821,20 @@ "200": { "description": "Returns the list of supported glossary file formats", "schema": { - "$ref": "#/definitions/FileFormatListResult" + "$ref": "#/definitions/SupportedFileFormats" + }, + "headers": { + "Retry-After": { + "description": "Indicates how long to wait before making a new request.", + "type": "integer", + "format": "int32" + } } }, "429": { "description": "Too many requests", "schema": { - "$ref": "#/definitions/ErrorResponseV2" + "$ref": "#/definitions/TranslationErrorResponse" }, "examples": { "application/json": "{\r\n \"error\": {\r\n \"code\": \"RequestRateTooHigh\",\r\n \"message\": \"User's request rate is too high\",\r\n \"target\": \"format\",\r\n \"innerError\": {\r\n \"code\": \"RateTooHigh\",\r\n \"message\": \"Request rate is too high\"\r\n }\r\n }\r\n}" @@ -721,7 +844,7 @@ "500": { "description": "Internal Server Error", "schema": { - "$ref": "#/definitions/ErrorResponseV2" + "$ref": "#/definitions/TranslationErrorResponse" }, "examples": { "application/json": "{\r\n \"error\": {\r\n \"code\": \"InternalServerError\",\r\n \"message\": \"Internal Server Error\",\r\n \"target\": \"format\",\r\n \"innerError\": {\r\n \"code\": \"InternalServerError\",\r\n \"message\": \"Unexpected internal server error has occurred\"\r\n }\r\n }\r\n}" @@ -731,7 +854,7 @@ "503": { "description": "Server temporary unavailable", "schema": { - "$ref": "#/definitions/ErrorResponseV2" + "$ref": "#/definitions/TranslationErrorResponse" }, "examples": { "application/json": "{\r\n \"error\": {\r\n \"code\": \"ServiceUnavailable\",\r\n \"message\": \"Service is temporary unavailable\",\r\n \"target\": \"format\",\r\n \"innerError\": {\r\n \"code\": \"ServiceTemporaryUnavailable\",\r\n \"message\": \"Service is currently unavailable. Please try again later\"\r\n }\r\n }\r\n}" @@ -753,7 +876,7 @@ ], "summary": "Returns a list of supported storage sources", "description": "Returns a list of storage sources/options supported by the Document Translation service.", - "operationId": "DocumentTranslation_GetDocumentStorageSource", + "operationId": "DocumentTranslation_GetSupportedStorageSources", "produces": [ "application/json" ], @@ -761,13 +884,20 @@ "200": { "description": "Successful request and returns the list of storage sources", "schema": { - "$ref": "#/definitions/StorageSourceListResult" + "$ref": "#/definitions/SupportedStorageSources" + }, + "headers": { + "Retry-After": { + "description": "Indicates how long to wait before making a new request.", + "type": "integer", + "format": "int32" + } } }, "429": { "description": "Too many requests", "schema": { - "$ref": "#/definitions/ErrorResponseV2" + "$ref": "#/definitions/TranslationErrorResponse" }, "examples": { "application/json": "{\r\n \"error\": {\r\n \"code\": \"RequestRateTooHigh\",\r\n \"message\": \"User's request rate is too high\",\r\n \"target\": \"source\",\r\n \"innerError\": {\r\n \"code\": \"RateTooHigh\",\r\n \"message\": \"Request rate is too high\"\r\n }\r\n }\r\n}" @@ -777,7 +907,7 @@ "500": { "description": "Internal Server Error", "schema": { - "$ref": "#/definitions/ErrorResponseV2" + "$ref": "#/definitions/TranslationErrorResponse" }, "examples": { "application/json": "{\r\n \"error\": {\r\n \"code\": \"InternalServerError\",\r\n \"message\": \"Internal Server Error\",\r\n \"target\": \"source\",\r\n \"innerError\": {\r\n \"code\": \"InternalServerError\",\r\n \"message\": \"Unexpected internal server error has occurred\"\r\n }\r\n }\r\n}" @@ -787,7 +917,7 @@ "503": { "description": "Server temporary unavailable", "schema": { - "$ref": "#/definitions/ErrorResponseV2" + "$ref": "#/definitions/TranslationErrorResponse" }, "examples": { "application/json": "{\r\n \"error\": {\r\n \"code\": \"ServiceUnavailable\",\r\n \"message\": \"Service is temporary unavailable\",\r\n \"target\": \"source\",\r\n \"innerError\": {\r\n \"code\": \"ServiceTemporaryUnavailable\",\r\n \"message\": \"Service is currently unavailable. Please try again later\"\r\n }\r\n }\r\n}" @@ -863,6 +993,7 @@ "Glossary": { "description": "Glossary / translation memory for the request", "required": [ + "format", "glossaryUrl" ], "type": "object", @@ -878,7 +1009,7 @@ "example": "XLIFF" }, "version": { - "description": "Version", + "description": "Optional Version. If not specified, default is used.", "type": "string", "example": "2.0" }, @@ -965,8 +1096,8 @@ } } }, - "BatchSubmissionRequest": { - "description": "Job submission batch request", + "StartTranslationDetails": { + "description": "Translation job submission batch request", "required": [ "inputs" ], @@ -1021,7 +1152,7 @@ ] } }, - "ErrorCodeV2": { + "TranslationErrorCode": { "description": "Enums containing high level error codes.", "enum": [ "InvalidRequest", @@ -1034,7 +1165,7 @@ ], "type": "string", "x-ms-enum": { - "name": "ErrorCodeV2", + "name": "TranslationErrorCode", "modelAsString": true, "values": [ { @@ -1061,7 +1192,7 @@ ] } }, - "InnerErrorV2": { + "InnerTranslationError": { "description": "New Inner Error format which conforms to Cognitive Services API Guidelines which is available at https://microsoft.sharepoint.com/%3Aw%3A/t/CognitiveServicesPMO/EUoytcrjuJdKpeOKIK_QRC8BPtUYQpKBi8JsWyeDMRsWlQ?e=CPq8ow.\r\nThis contains required properties ErrorCode, message and optional properties target, details(key value pair), inner error(this can be nested).", "required": [ "code", @@ -1083,19 +1214,20 @@ "readOnly": true }, "innerError": { - "$ref": "#/definitions/InnerErrorV2" + "$ref": "#/definitions/InnerTranslationError" } } }, - "ErrorV2": { + "TranslationError": { "description": "This contains an outer error with error code, message, details, target and an inner error with more descriptive details.", "required": [ + "code", "message" ], "type": "object", "properties": { "code": { - "$ref": "#/definitions/ErrorCodeV2" + "$ref": "#/definitions/TranslationErrorCode" }, "message": { "description": "Gets high level error message.", @@ -1107,7 +1239,7 @@ "readOnly": true }, "innerError": { - "$ref": "#/definitions/InnerErrorV2" + "$ref": "#/definitions/InnerTranslationError" } } }, @@ -1166,8 +1298,8 @@ } } }, - "BatchStatusDetail": { - "description": "Job status response", + "TranslationStatus": { + "description": "Translation job status response", "required": [ "createdDateTimeUtc", "id", @@ -1199,15 +1331,15 @@ "$ref": "#/definitions/Status" }, "error": { - "$ref": "#/definitions/ErrorV2" + "$ref": "#/definitions/TranslationError" }, "summary": { "$ref": "#/definitions/StatusSummary" } } }, - "BatchStatusResponse": { - "description": "Document Status Response", + "TranslationsStatus": { + "description": "Translation job Status Response", "required": [ "value" ], @@ -1217,7 +1349,7 @@ "description": "The summary status of individual operation", "type": "array", "items": { - "$ref": "#/definitions/BatchStatusDetail" + "$ref": "#/definitions/TranslationStatus" } }, "@nextLink": { @@ -1227,13 +1359,14 @@ } } }, - "DocumentStatusDetail": { + "DocumentStatus": { + "description": "Document Status Response", "required": [ "createdDateTimeUtc", "id", "lastActionDateTimeUtc", - "path", "progress", + "sourcePath", "status", "to" ], @@ -1244,6 +1377,11 @@ "type": "string", "example": "https://myblob.blob.core.windows.net/mycontainer/fr/mydoc.txt" }, + "sourcePath": { + "description": "Location of the source document", + "type": "string", + "example": "https://myblob.blob.core.windows.net/mycontainer/fr/mydoc.txt" + }, "createdDateTimeUtc": { "format": "date-time", "description": "Operation created date time", @@ -1264,7 +1402,7 @@ "type": "string" }, "error": { - "$ref": "#/definitions/ErrorV2" + "$ref": "#/definitions/TranslationError" }, "progress": { "format": "float", @@ -1287,8 +1425,8 @@ } } }, - "DocumentStatusResponse": { - "description": "Document Status Response", + "DocumentsStatus": { + "description": "Documents Status Response", "required": [ "value" ], @@ -1298,7 +1436,7 @@ "description": "The detail status of individual documents", "type": "array", "items": { - "$ref": "#/definitions/DocumentStatusDetail" + "$ref": "#/definitions/DocumentStatus" } }, "@nextLink": { @@ -1309,6 +1447,11 @@ } }, "FileFormat": { + "required": [ + "contentTypes", + "fileExtensions", + "format" + ], "type": "object", "properties": { "format": { @@ -1330,6 +1473,10 @@ "type": "string" } }, + "defaultVersion": { + "description": "Default version if none is specified", + "type": "string" + }, "versions": { "description": "Supported Version", "type": "array", @@ -1339,7 +1486,7 @@ } } }, - "FileFormatListResult": { + "SupportedFileFormats": { "description": "Base type for List return in our api", "required": [ "value" @@ -1355,7 +1502,7 @@ } } }, - "StorageSourceListResult": { + "SupportedStorageSources": { "description": "Base type for List return in our api", "required": [ "value" @@ -1371,12 +1518,12 @@ } } }, - "ErrorResponseV2": { + "TranslationErrorResponse": { "description": "Contains unified error information used for HTTP responses across any Cognitive Service. Instances\r\ncan be created either through Microsoft.CloudAI.Containers.HttpStatusExceptionV2 or by returning it directly from\r\na controller.", "type": "object", "properties": { "error": { - "$ref": "#/definitions/ErrorV2" + "$ref": "#/definitions/TranslationError" } } } diff --git a/specification/cognitiveservices/data-plane/TranslatorText/preview/v1.0-preview.1/examples/batch.json b/specification/cognitiveservices/data-plane/TranslatorText/preview/v1.0-preview.1/examples/batch.json index 7108552c493f..aed28e872002 100644 --- a/specification/cognitiveservices/data-plane/TranslatorText/preview/v1.0-preview.1/examples/batch.json +++ b/specification/cognitiveservices/data-plane/TranslatorText/preview/v1.0-preview.1/examples/batch.json @@ -5,7 +5,7 @@ "resourceGroupName": "TestResourceGroup", "endpoint": "{endpoint}", "Ocp-Apim-Subscription-Key": "{API key}", - "batchRequest": { + "body": { "inputs": [ { "source": { @@ -25,7 +25,8 @@ "glossaries": [ { "glossaryUrl": "https://myblob.blob.core.windows.net/myglossary/en_fr_glossary.xlf", - "storageSource": "AzureBlob" + "storageSource": "AzureBlob", + "format": "XLIFF" } ], "storageSource": "AzureBlob" diff --git a/specification/cognitiveservices/data-plane/TranslatorText/preview/v1.0-preview.1/examples/document.json b/specification/cognitiveservices/data-plane/TranslatorText/preview/v1.0-preview.1/examples/document.json index f5f45731270f..76c2ce7ddd20 100644 --- a/specification/cognitiveservices/data-plane/TranslatorText/preview/v1.0-preview.1/examples/document.json +++ b/specification/cognitiveservices/data-plane/TranslatorText/preview/v1.0-preview.1/examples/document.json @@ -86,6 +86,7 @@ }, "body": { "path": "https://myblob.blob.core.windows.net/destinationContainer/fr/mydoc.txt", + "sourcePath": "https://myblob.blob.core.windows.net/sourceContainer/fr/mydoc.txt", "createdDateTimeUtc": "2020-03-26T00:00:00Z", "lastActionDateTimeUtc": "2020-03-26T01:00:00Z", "status": "Running", diff --git a/specification/cognitiveservices/data-plane/TranslatorText/preview/v1.0-preview.1/examples/documents.json b/specification/cognitiveservices/data-plane/TranslatorText/preview/v1.0-preview.1/examples/documents.json index c92c6b7ecd02..c46aac3ed75a 100644 --- a/specification/cognitiveservices/data-plane/TranslatorText/preview/v1.0-preview.1/examples/documents.json +++ b/specification/cognitiveservices/data-plane/TranslatorText/preview/v1.0-preview.1/examples/documents.json @@ -6,8 +6,19 @@ "endpoint": "{endpoint}", "Ocp-Apim-Subscription-Key": "{API key}", "id": "727BF148-F327-47A0-9481-ABAE6362F11E", - "$top": 5, - "$skip": 10 + "$top": 2, + "$skip": 0, + "$maxpagesize": 1, + "$orderBy": "CreatedDateTimeUtc asc", + "createdDateTimeUtcStart": "2021-03-23T07:03:38.0136316Z", + "createdDateTimeUtcEnd": "2021-03-25T07:03:38.0136316Z", + "statuses": [ + "Succeeded" + ], + "ids": [ + "273622bd-835c-4946-9798-fd8f19f6bbf2", + "511b6a66-a6f8-4640-83e1-48c325e9fa29" + ] }, "responses": { "401": { @@ -89,8 +100,9 @@ "value": [ { "path": "https://myblob.blob.core.windows.net/destinationContainer/fr/mydoc.txt", - "createdDateTimeUtc": "2020-03-26T00:00:00Z", - "lastActionDateTimeUtc": "2020-03-26T01:00:00Z", + "sourcePath": "https://myblob.blob.core.windows.net/sourceContainer/fr/mydoc.txt", + "createdDateTimeUtc": "2021-03-23T07:03:39.013631Z", + "lastActionDateTimeUtc": "2021-03-23T07:03:41.012452Z", "status": "Running", "to": "fr", "progress": 0.1, @@ -98,7 +110,7 @@ "characterCharged": 0 } ], - "@nextLink": "https://westus.cognitiveservices.azure.com/translator/text/batch/v1.0.preview.1/operation/0FA2822F-4C2A-4317-9C20-658C801E0E55/documents?$top=5&$skip=15" + "@nextLink": "https://westus.cognitiveservices.azure.com/translator/text/batch/v1.0.preview.1/operation/0FA2822F-4C2A-4317-9C20-658C801E0E55/documents?$top=1&$skip=1&$maxpagesize=1&$orderBy=CreatedDateTimeUtc%20asc&createdDateTimeUtcStart=2021-03-23T00:03:38.0136316Z&createdDateTimeUtcEnd=2021-03-25T00:03:38.0136316&statuses=Succeeded&ids=273622BD-835C-4946-9798-FD8F19F6BBF2,511B6A66-A6F8-4640-83E1-48C325E9FA29" } }, "400": { diff --git a/specification/cognitiveservices/data-plane/TranslatorText/preview/v1.0-preview.1/examples/format.json b/specification/cognitiveservices/data-plane/TranslatorText/preview/v1.0-preview.1/examples/format.json index fe48785fe1ae..75b787a30523 100644 --- a/specification/cognitiveservices/data-plane/TranslatorText/preview/v1.0-preview.1/examples/format.json +++ b/specification/cognitiveservices/data-plane/TranslatorText/preview/v1.0-preview.1/examples/format.json @@ -48,6 +48,7 @@ }, "200": { "headers": { + "retry-after": "30", "ETag": "686897696a7c876b7e" }, "body": { @@ -59,8 +60,7 @@ ], "contentTypes": [ "text/plain" - ], - "versions": [] + ] }, { "format": "PortableDocumentFormat", @@ -69,8 +69,16 @@ ], "contentTypes": [ "application/pdf" + ] + }, + { + "format": "OpenXmlWord", + "fileExtensions": [ + ".docx" ], - "versions": [] + "contentTypes": [ + "application/vnd.openxmlformats-officedocument.wordprocessingml.document" + ] }, { "format": "OpenXmlPresentation", @@ -79,8 +87,7 @@ ], "contentTypes": [ "application/vnd.openxmlformats-officedocument.presentationml.presentation" - ], - "versions": [] + ] }, { "format": "OpenXmlSpreadsheet", @@ -89,38 +96,17 @@ ], "contentTypes": [ "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" - ], - "versions": [] - }, - { - "format": "OutlookMailMessage", - "fileExtensions": [ - ".msg" - ], - "contentTypes": [ - "application/vnd.ms-outlook" - ], - "versions": [] + ] }, { "format": "HtmlFile", "fileExtensions": [ - ".html" + ".html", + ".htm" ], "contentTypes": [ "text/html" - ], - "versions": [] - }, - { - "format": "OpenXmlWord", - "fileExtensions": [ - ".docx" - ], - "contentTypes": [ - "application/vnd.openxmlformats-officedocument.wordprocessingml.document" - ], - "versions": [] + ] } ] } diff --git a/specification/cognitiveservices/data-plane/TranslatorText/preview/v1.0-preview.1/examples/glossary.json b/specification/cognitiveservices/data-plane/TranslatorText/preview/v1.0-preview.1/examples/glossary.json index ec73e440dbb8..0b638db5c8ac 100644 --- a/specification/cognitiveservices/data-plane/TranslatorText/preview/v1.0-preview.1/examples/glossary.json +++ b/specification/cognitiveservices/data-plane/TranslatorText/preview/v1.0-preview.1/examples/glossary.json @@ -48,6 +48,7 @@ }, "200": { "headers": { + "retry-after": "30", "ETag": "686897696a7c876b7e" }, "body": { @@ -60,6 +61,7 @@ "contentTypes": [ "application/xliff+xml" ], + "defaultVersion": "1.2", "versions": [ "1.0", "1.1", diff --git a/specification/cognitiveservices/data-plane/TranslatorText/preview/v1.0-preview.1/examples/operations.json b/specification/cognitiveservices/data-plane/TranslatorText/preview/v1.0-preview.1/examples/operations.json index be97db209ed7..0a03ff0e78f4 100644 --- a/specification/cognitiveservices/data-plane/TranslatorText/preview/v1.0-preview.1/examples/operations.json +++ b/specification/cognitiveservices/data-plane/TranslatorText/preview/v1.0-preview.1/examples/operations.json @@ -4,7 +4,19 @@ "subscriptionId": "EA19050C-51FC-4B55-84E5-9EA7283601DA", "resourceGroupName": "TestResourceGroup", "endpoint": "{endpoint}", - "Ocp-Apim-Subscription-Key": "{API key}" + "Ocp-Apim-Subscription-Key": "{API key}", + "$top": 1, + "$skip": 0, + "$maxpagesize": 10, + "$orderBy": "CreatedDateTime asc", + "createdDateTimeUtcStart": "2021-03-23T07:03:38.0136316Z", + "createdDateTimeUtcEnd": "2021-03-25T07:03:38.0136316Z", + "statuses": [ + "Succeeded" + ], + "ids": [ + "273622bd-835c-4946-9798-fd8f19f6bbf2" + ] }, "responses": { "401": { @@ -71,9 +83,9 @@ "body": { "value": [ { - "id": "727bf148-f327-47a0-9481-abae6362f11e", - "createdDateTimeUtc": "2020-03-26T00:00:00Z", - "lastActionDateTimeUtc": "2020-03-26T01:00:00Z", + "id": "273622bd-835c-4946-9798-fd8f19f6bbf2", + "createdDateTimeUtc": "2021-03-23T07:03:30.013631Z", + "lastActionDateTimeUtc": "2021-03-26T01:00:00Z", "status": "Succeeded", "summary": { "total": 10, @@ -82,7 +94,7 @@ "inProgress": 0, "notYetStarted": 0, "cancelled": 0, - "totalCharacterCharged": 0 + "totalCharacterCharged": 1000 } } ] diff --git a/specification/cognitiveservices/data-plane/TranslatorText/preview/v1.0-preview.1/examples/storage.json b/specification/cognitiveservices/data-plane/TranslatorText/preview/v1.0-preview.1/examples/storage.json index 3a3064ae73c1..1180d718fd99 100644 --- a/specification/cognitiveservices/data-plane/TranslatorText/preview/v1.0-preview.1/examples/storage.json +++ b/specification/cognitiveservices/data-plane/TranslatorText/preview/v1.0-preview.1/examples/storage.json @@ -48,6 +48,7 @@ }, "200": { "headers": { + "retry-after": "30", "ETag": "686897696a7c876b7e" }, "body": { diff --git a/specification/cognitiveservices/data-plane/TranslatorText/readme.go.md b/specification/cognitiveservices/data-plane/TranslatorText/readme.go.md index 22c2a7d8b8de..aa26e5b80025 100644 --- a/specification/cognitiveservices/data-plane/TranslatorText/readme.go.md +++ b/specification/cognitiveservices/data-plane/TranslatorText/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: translatortext clear-output-folder: true ``` diff --git a/specification/cognitiveservices/data-plane/TranslatorText/readme.md b/specification/cognitiveservices/data-plane/TranslatorText/readme.md index 707bf7b6e9af..7d14eb5dd61d 100644 --- a/specification/cognitiveservices/data-plane/TranslatorText/readme.md +++ b/specification/cognitiveservices/data-plane/TranslatorText/readme.md @@ -21,7 +21,12 @@ tag: release_1_0_preview.1 add-credentials: true openapi-type: data-plane ``` +``` yaml +tag: release_1_0 +add-credentials: true +openapi-type: data-plane +``` # Releases ### Preview 1.0 @@ -30,6 +35,12 @@ This setting is for batch document translator and only applied when `--tag=relea input-file: preview/v1.0-preview.1/TranslatorBatch.json ``` +### 1.0 Batch API +This setting is for batch document translator and only applied when `--tag=release_1_0` is specified on the command line. +``` yaml $(tag) == 'release_1_0' +input-file: stable/v1.0/TranslatorBatch.json +``` + ### Release 3.0 These settings apply only when `--tag=release_3_0` is specified on the command line. @@ -106,6 +117,14 @@ These settings apply only when `--tag=release_1_0_preview.1 --nodejs` is specifi package-version: 1.0.1 ``` +### Tag: release_1_0 and nodejs + +These settings apply only when `--tag=release_1_0 --nodejs` is specified on the command line. + +``` yaml $(tag) == 'release_1_0' && $(nodejs) + package-version: 1.0 +``` + ### Tag: release_3_0 and go These settings apply only when `--tag=release_3_0 --nodejs` is specified on the command line. diff --git a/specification/cognitiveservices/data-plane/TranslatorText/stable/v1.0/TranslatorBatch.json b/specification/cognitiveservices/data-plane/TranslatorText/stable/v1.0/TranslatorBatch.json new file mode 100644 index 000000000000..c2e8963456e5 --- /dev/null +++ b/specification/cognitiveservices/data-plane/TranslatorText/stable/v1.0/TranslatorBatch.json @@ -0,0 +1,1559 @@ +{ + "swagger": "2.0", + "info": { + "title": "Batch Document Translation Client", + "version": "v1.0" + }, + "paths": { + "/batches": { + "post": { + "tags": [ + "Document Translation" + ], + "summary": "Submit a document translation request to the Document Translation service", + "description": "Use this API to submit a bulk (batch) translation request to the Document Translation service.\r\nEach request can contain multiple documents and must contain a source and destination container for each document.\r\n \r\nThe prefix and suffix filter (if supplied) are used to filter folders. The prefix is applied to the subpath after the container name.\r\n \r\nGlossaries / Translation memory can be included in the request and are applied by the service when the document is translated.\r\n \r\nIf the glossary is invalid or unreachable during translation, an error is indicated in the document status.\r\nIf a file with the same name already exists at the destination, it will be overwritten. The targetUrl for each target language must be unique.", + "operationId": "DocumentTranslation_StartTranslation", + "consumes": [ + "application/json", + "text/json", + "application/*+json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "required": true, + "in": "body", + "name": "body", + "description": "request details", + "schema": { + "$ref": "#/definitions/StartTranslationDetails" + } + } + ], + "responses": { + "202": { + "description": "Successful request and the batch request is created by the service. The header Operation-Location will indicate a status url with the operation id.", + "headers": { + "Operation-Location": { + "description": "Location of batch the operation", + "type": "string", + "format": "" + } + } + }, + "400": { + "description": "Invalid request. Check input parameters", + "schema": { + "$ref": "#/definitions/TranslationErrorResponse" + }, + "examples": { + "application/json": "{\r\n \"error\": {\r\n \"code\": \"InvalidRequest\",\r\n \"message\": \"Some argument is incorrect\",\r\n \"target\": \"batch\",\r\n \"innerError\": {\r\n \"code\": \"SASTokenInvalid\",\r\n \"message\": \"SAS token for storage is invalid\"\r\n }\r\n }\r\n}" + }, + "x-ms-error-response": true + }, + "401": { + "description": "Unauthorized. Please check your credentials", + "schema": { + "$ref": "#/definitions/TranslationErrorResponse" + }, + "examples": { + "application/json": "{\r\n \"error\": {\r\n \"code\": \"Unauthorized\",\r\n \"message\": \"User is not authorized\",\r\n \"target\": \"batch\",\r\n \"innerError\": {\r\n \"code\": \"Unauthorized\",\r\n \"message\": \"Operation is not authorized\"\r\n }\r\n }\r\n}" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests", + "schema": { + "$ref": "#/definitions/TranslationErrorResponse" + }, + "examples": { + "application/json": "{\r\n \"error\": {\r\n \"code\": \"RequestRateTooHigh\",\r\n \"message\": \"User's request rate is too high\",\r\n \"target\": \"batch\",\r\n \"innerError\": {\r\n \"code\": \"RateTooHigh\",\r\n \"message\": \"Request rate is too high\"\r\n }\r\n }\r\n}" + }, + "x-ms-error-response": true + }, + "500": { + "description": "Internal Server Error", + "schema": { + "$ref": "#/definitions/TranslationErrorResponse" + }, + "examples": { + "application/json": "{\r\n \"error\": {\r\n \"code\": \"InternalServerError\",\r\n \"message\": \"Internal Server Error\",\r\n \"target\": \"batch\",\r\n \"innerError\": {\r\n \"code\": \"InternalServerError\",\r\n \"message\": \"Unexpected internal server error has occurred\"\r\n }\r\n }\r\n}" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Server temporary unavailable", + "schema": { + "$ref": "#/definitions/TranslationErrorResponse" + }, + "examples": { + "application/json": "{\r\n \"error\": {\r\n \"code\": \"ServiceUnavailable\",\r\n \"message\": \"Service is temporary unavailable\",\r\n \"target\": \"batch\",\r\n \"innerError\": {\r\n \"code\": \"ServiceTemporaryUnavailable\",\r\n \"message\": \"Service is currently unavailable. Please try again later\"\r\n }\r\n }\r\n}" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Batch Submit": { + "$ref": "./examples/batch.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "Document Translation" + ], + "summary": "Returns a list of batch requests submitted and the status for each request", + "description": "Returns a list of batch requests submitted and the status for each request.\r\nThis list only contains batch requests submitted by the user (based on the resource).\r\n \r\nIf the number of requests exceeds our paging limit, server-side paging is used. Paginated responses indicate a partial result and include a continuation token in the response.\r\nThe absence of a continuation token means that no additional pages are available.\r\n \r\n$top, $skip and $maxpagesize query parameters can be used to specify a number of results to return and an offset for the collection.\r\n \r\n$top indicates the total number of records the user wants to be returned across all pages.\r\n$skip indicates the number of records to skip from the list of batches based on the sorting method specified. By default, we sort by descending start time.\r\n$maxpagesize is the maximum items returned in a page. If more items are requested via $top (or $top is not specified and there are more items to be returned), @nextLink will contain the link to the next page.\r\n \r\n$orderBy query parameter can be used to sort the returned list (ex \"$orderBy=createdDateTimeUtc asc\" or \"$orderBy=createdDateTimeUtc desc\").\r\nThe default sorting is descending by createdDateTimeUtc.\r\nSome query parameters can be used to filter the returned list (ex: \"status=Succeeded,Cancelled\") will only return succeeded and cancelled operations.\r\ncreatedDateTimeUtcStart and createdDateTimeUtcEnd can be used combined or separately to specify a range of datetime to filter the returned list by.\r\nThe supported filtering query parameters are (status, ids, createdDateTimeUtcStart, createdDateTimeUtcEnd).\r\n \r\nThe server honors the values specified by the client. However, clients must be prepared to handle responses that contain a different page size or contain a continuation token.\r\n \r\nWhen both $top and $skip are included, the server should first apply $skip and then $top on the collection.\r\nNote: If the server can't honor $top and/or $skip, the server must return an error to the client informing about it instead of just ignoring the query options.\r\nThis reduces the risk of the client making assumptions about the data returned.", + "operationId": "DocumentTranslation_GetTranslationsStatus", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "query", + "name": "$top", + "description": "$top indicates the total number of records the user wants to be returned across all pages.\r\n \r\nClients MAY use $top and $skip query parameters to specify a number of results to return and an offset into the collection.\r\nWhen both $top and $skip are given by a client, the server SHOULD first apply $skip and then $top on the collection.\r\n \r\nNote: If the server can't honor $top and/or $skip, the server MUST return an error to the client informing about it instead of just ignoring the query options.", + "type": "integer", + "format": "int32", + "maximum": 2147483647, + "minimum": 0 + }, + { + "in": "query", + "name": "$skip", + "description": "$skip indicates the number of records to skip from the list of records held by the server based on the sorting method specified. By default, we sort by descending start time.\r\n \r\nClients MAY use $top and $skip query parameters to specify a number of results to return and an offset into the collection.\r\nWhen both $top and $skip are given by a client, the server SHOULD first apply $skip and then $top on the collection.\r\n \r\nNote: If the server can't honor $top and/or $skip, the server MUST return an error to the client informing about it instead of just ignoring the query options.", + "type": "integer", + "format": "int32", + "default": 0, + "maximum": 2147483647, + "minimum": 0 + }, + { + "in": "query", + "name": "$maxpagesize", + "description": "$maxpagesize is the maximum items returned in a page. If more items are requested via $top (or $top is not specified and there are more items to be returned), @nextLink will contain the link to the next page.\r\n \r\nClients MAY request server-driven paging with a specific page size by specifying a $maxpagesize preference. The server SHOULD honor this preference if the specified page size is smaller than the server's default page size.", + "type": "integer", + "format": "int32", + "default": 50, + "maximum": 100, + "minimum": 1 + }, + { + "in": "query", + "name": "ids", + "description": "Ids to use in filtering", + "type": "array", + "items": { + "format": "uuid", + "type": "string" + }, + "maxLength": 25 + }, + { + "in": "query", + "name": "statuses", + "description": "Statuses to use in filtering", + "type": "array", + "items": { + "type": "string" + }, + "maxLength": 5 + }, + { + "in": "query", + "name": "createdDateTimeUtcStart", + "description": "the start datetime to get items after", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "createdDateTimeUtcEnd", + "description": "the end datetime to get items before", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "$orderBy", + "description": "the sorting query for the collection (ex: 'CreatedDateTimeUtc asc', 'CreatedDateTimeUtc desc')", + "type": "array", + "items": { + "type": "string" + }, + "maxLength": 1 + } + ], + "responses": { + "200": { + "description": "Successful request and returns the status of the all the operations", + "schema": { + "$ref": "#/definitions/TranslationsStatus" + }, + "headers": { + "Retry-After": { + "description": "Indicates how long to wait before making a new request.", + "type": "integer", + "format": "int32" + }, + "ETag": { + "description": "The ETag response-header field provides the current value of the entity tag for the requested variant. Used with If-Match, If-None-Match and If-Range to implement optimistic concurrency control.", + "type": "string", + "format": "" + } + } + }, + "400": { + "description": "Invalid request. Check input parameters", + "schema": { + "$ref": "#/definitions/TranslationErrorResponse" + }, + "examples": { + "application/json": "{\r\n \"error\": {\r\n \"code\": \"InvalidRequest\",\r\n \"message\": \"Some argument is incorrect\",\r\n \"target\": \"batch\",\r\n \"innerError\": {\r\n \"code\": \"SASTokenInvalid\",\r\n \"message\": \"SAS token for storage is invalid\"\r\n }\r\n }\r\n}" + }, + "x-ms-error-response": true + }, + "401": { + "description": "Unauthorized. Please check your credentials", + "schema": { + "$ref": "#/definitions/TranslationErrorResponse" + }, + "examples": { + "application/json": "{\r\n \"error\": {\r\n \"code\": \"Unauthorized\",\r\n \"message\": \"User is not authorized\",\r\n \"target\": \"batch\",\r\n \"innerError\": {\r\n \"code\": \"Unauthorized\",\r\n \"message\": \"Operation is not authorized\"\r\n }\r\n }\r\n}" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests", + "schema": { + "$ref": "#/definitions/TranslationErrorResponse" + }, + "examples": { + "application/json": "{\r\n \"error\": {\r\n \"code\": \"RequestRateTooHigh\",\r\n \"message\": \"User's request rate is too high\",\r\n \"target\": \"batch\",\r\n \"innerError\": {\r\n \"code\": \"RateTooHigh\",\r\n \"message\": \"Request rate is too high\"\r\n }\r\n }\r\n}" + }, + "x-ms-error-response": true + }, + "500": { + "description": "Internal Server Error", + "schema": { + "$ref": "#/definitions/TranslationErrorResponse" + }, + "examples": { + "application/json": "{\r\n \"error\": {\r\n \"code\": \"InternalServerError\",\r\n \"message\": \"Internal Server Error\",\r\n \"target\": \"batch\",\r\n \"innerError\": {\r\n \"code\": \"InternalServerError\",\r\n \"message\": \"Unexpected internal server error has occurred\"\r\n }\r\n }\r\n}" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Server temporary unavailable", + "schema": { + "$ref": "#/definitions/TranslationErrorResponse" + }, + "examples": { + "application/json": "{\r\n \"error\": {\r\n \"code\": \"ServiceUnavailable\",\r\n \"message\": \"Service is temporary unavailable\",\r\n \"target\": \"batch\",\r\n \"innerError\": {\r\n \"code\": \"ServiceTemporaryUnavailable\",\r\n \"message\": \"Service is currently unavailable. Please try again later\"\r\n }\r\n }\r\n}" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Get status for batch operations": { + "$ref": "./examples/operations.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "@nextLink" + } + } + }, + "/batches/{id}/documents/{documentId}": { + "get": { + "tags": [ + "Document Translation" + ], + "summary": "Returns the status for a specific document", + "description": "Returns the translation status for a specific document based on the request Id and document Id.", + "operationId": "DocumentTranslation_GetDocumentStatus", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "id", + "description": "Format - uuid. The batch id", + "required": true, + "type": "string", + "format": "uuid" + }, + { + "in": "path", + "name": "documentId", + "description": "Format - uuid. The document id", + "required": true, + "type": "string", + "format": "uuid" + } + ], + "responses": { + "200": { + "description": "Successful request and it is accepted by the service. The operation details are returned", + "schema": { + "$ref": "#/definitions/DocumentStatus" + }, + "headers": { + "Retry-After": { + "description": "Indicates how long to wait before making a new request.", + "type": "integer", + "format": "int32" + }, + "ETag": { + "description": "The ETag response-header field provides the current value of the entity tag for the requested variant. Used with If-Match, If-None-Match and If-Range to implement optimistic concurrency control.", + "type": "string", + "format": "" + } + } + }, + "401": { + "description": "Unauthorized. Please check your credentials", + "schema": { + "$ref": "#/definitions/TranslationErrorResponse" + }, + "examples": { + "application/json": "{\r\n \"error\": {\r\n \"code\": \"Unauthorized\",\r\n \"message\": \"User is not authorized\",\r\n \"target\": \"document\",\r\n \"innerError\": {\r\n \"code\": \"Unauthorized\",\r\n \"message\": \"Operation is not authorized\"\r\n }\r\n }\r\n}" + }, + "x-ms-error-response": true + }, + "404": { + "description": "Resource is not found", + "schema": { + "$ref": "#/definitions/TranslationErrorResponse" + }, + "examples": { + "application/json": "{\r\n \"error\": {\r\n \"code\": \"ResourceNotFound\",\r\n \"message\": \"id not found\",\r\n \"target\": \"document\",\r\n \"innerError\": {\r\n \"code\": \"ResourceNotFound\",\r\n \"message\": \"Resource requested is not found\"\r\n }\r\n }\r\n}" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests", + "schema": { + "$ref": "#/definitions/TranslationErrorResponse" + }, + "examples": { + "application/json": "{\r\n \"error\": {\r\n \"code\": \"RequestRateTooHigh\",\r\n \"message\": \"User's request rate is too high\",\r\n \"target\": \"document\",\r\n \"innerError\": {\r\n \"code\": \"RateTooHigh\",\r\n \"message\": \"Request rate is too high\"\r\n }\r\n }\r\n}" + }, + "x-ms-error-response": true + }, + "500": { + "description": "Internal Server Error", + "schema": { + "$ref": "#/definitions/TranslationErrorResponse" + }, + "examples": { + "application/json": "{\r\n \"error\": {\r\n \"code\": \"InternalServerError\",\r\n \"message\": \"Internal Server Error\",\r\n \"target\": \"document\",\r\n \"innerError\": {\r\n \"code\": \"InternalServerError\",\r\n \"message\": \"Unexpected internal server error has occurred\"\r\n }\r\n }\r\n}" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Server temporary unavailable", + "schema": { + "$ref": "#/definitions/TranslationErrorResponse" + }, + "examples": { + "application/json": "{\r\n \"error\": {\r\n \"code\": \"ServiceUnavailable\",\r\n \"message\": \"Service is temporary unavailable\",\r\n \"target\": \"document\",\r\n \"innerError\": {\r\n \"code\": \"ServiceTemporaryUnavailable\",\r\n \"message\": \"Service is currently unavailable. Please try again later\"\r\n }\r\n }\r\n}" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Get Document Status": { + "$ref": "./examples/document.json" + } + } + } + }, + "/batches/{id}": { + "get": { + "tags": [ + "Document Translation" + ], + "summary": "Returns the status for a document translation request", + "description": "Returns the status for a document translation request.\r\nThe status includes the overall request status, as well as the status for documents that are being translated as part of that request.", + "operationId": "DocumentTranslation_GetTranslationStatus", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "id", + "description": "Format - uuid. The operation id", + "required": true, + "type": "string", + "format": "uuid" + } + ], + "responses": { + "200": { + "description": "Successful request and returns the status of the batch translation operation", + "schema": { + "$ref": "#/definitions/TranslationStatus" + }, + "headers": { + "Retry-After": { + "description": "Indicates how long to wait before making a new request.", + "type": "integer", + "format": "int32" + }, + "ETag": { + "description": "The ETag response-header field provides the current value of the entity tag for the requested variant. Used with If-Match, If-None-Match and If-Range to implement optimistic concurrency control.", + "type": "string", + "format": "" + } + } + }, + "401": { + "description": "Unauthorized. Please check your credentials", + "schema": { + "$ref": "#/definitions/TranslationErrorResponse" + }, + "examples": { + "application/json": "{\r\n \"error\": {\r\n \"code\": \"Unauthorized\",\r\n \"message\": \"User is not authorized\",\r\n \"target\": \"batch\",\r\n \"innerError\": {\r\n \"code\": \"Unauthorized\",\r\n \"message\": \"Operation is not authorized\"\r\n }\r\n }\r\n}" + }, + "x-ms-error-response": true + }, + "404": { + "description": "Resource is not found", + "schema": { + "$ref": "#/definitions/TranslationErrorResponse" + }, + "examples": { + "application/json": "{\r\n \"error\": {\r\n \"code\": \"ResourceNotFound\",\r\n \"message\": \"id not found\",\r\n \"target\": \"batch\",\r\n \"innerError\": {\r\n \"code\": \"ResourceNotFound\",\r\n \"message\": \"Resource requested is not found\"\r\n }\r\n }\r\n}" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests", + "schema": { + "$ref": "#/definitions/TranslationErrorResponse" + }, + "examples": { + "application/json": "{\r\n \"error\": {\r\n \"code\": \"RequestRateTooHigh\",\r\n \"message\": \"User's request rate is too high\",\r\n \"target\": \"batch\",\r\n \"innerError\": {\r\n \"code\": \"RateTooHigh\",\r\n \"message\": \"Request rate is too high\"\r\n }\r\n }\r\n}" + }, + "x-ms-error-response": true + }, + "500": { + "description": "Internal Server Error", + "schema": { + "$ref": "#/definitions/TranslationErrorResponse" + }, + "examples": { + "application/json": "{\r\n \"error\": {\r\n \"code\": \"InternalServerError\",\r\n \"message\": \"Internal Server Error\",\r\n \"target\": \"batch\",\r\n \"innerError\": {\r\n \"code\": \"InternalServerError\",\r\n \"message\": \"Unexpected internal server error has occurred\"\r\n }\r\n }\r\n}" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Server temporary unavailable", + "schema": { + "$ref": "#/definitions/TranslationErrorResponse" + }, + "examples": { + "application/json": "{\r\n \"error\": {\r\n \"code\": \"ServiceUnavailable\",\r\n \"message\": \"Service is temporary unavailable\",\r\n \"target\": \"batch\",\r\n \"innerError\": {\r\n \"code\": \"ServiceTemporaryUnavailable\",\r\n \"message\": \"Service is currently unavailable. Please try again later\"\r\n }\r\n }\r\n}" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Get Batch Operation Status": { + "$ref": "./examples/operation.json" + } + } + }, + "delete": { + "tags": [ + "Document Translation" + ], + "summary": "Cancel a currently processing or queued translation", + "description": "Cancel a currently processing or queued translation.\r\nCancel a currently processing or queued translation.\r\nA translation will not be cancelled if it is already completed or failed or cancelling. A bad request will be returned.\r\nAll documents that have completed translation will not be cancelled and will be charged.\r\nAll pending documents will be cancelled if possible.", + "operationId": "DocumentTranslation_CancelTranslation", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "id", + "description": "Format - uuid. The operation-id", + "required": true, + "type": "string", + "format": "uuid" + } + ], + "responses": { + "200": { + "description": "Cancel request has been submitted", + "schema": { + "$ref": "#/definitions/TranslationStatus" + } + }, + "401": { + "description": "Unauthorized. Please check your credentials", + "schema": { + "$ref": "#/definitions/TranslationErrorResponse" + }, + "examples": { + "application/json": "{\r\n \"error\": {\r\n \"code\": \"Unauthorized\",\r\n \"message\": \"User is not authorized\",\r\n \"target\": \"batch\",\r\n \"innerError\": {\r\n \"code\": \"Unauthorized\",\r\n \"message\": \"Operation is not authorized\"\r\n }\r\n }\r\n}" + }, + "x-ms-error-response": true + }, + "404": { + "description": "Resource is not found", + "schema": { + "$ref": "#/definitions/TranslationErrorResponse" + }, + "examples": { + "application/json": "{\r\n \"error\": {\r\n \"code\": \"ResourceNotFound\",\r\n \"message\": \"id not found\",\r\n \"target\": \"batch\",\r\n \"innerError\": {\r\n \"code\": \"ResourceNotFound\",\r\n \"message\": \"Resource requested is not found\"\r\n }\r\n }\r\n}" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests", + "schema": { + "$ref": "#/definitions/TranslationErrorResponse" + }, + "examples": { + "application/json": "{\r\n \"error\": {\r\n \"code\": \"RequestRateTooHigh\",\r\n \"message\": \"User's request rate is too high\",\r\n \"target\": \"batch\",\r\n \"innerError\": {\r\n \"code\": \"RateTooHigh\",\r\n \"message\": \"Request rate is too high\"\r\n }\r\n }\r\n}" + }, + "x-ms-error-response": true + }, + "500": { + "description": "Internal Server Error", + "schema": { + "$ref": "#/definitions/TranslationErrorResponse" + }, + "examples": { + "application/json": "{\r\n \"error\": {\r\n \"code\": \"InternalServerError\",\r\n \"message\": \"Internal Server Error\",\r\n \"target\": \"batch\",\r\n \"innerError\": {\r\n \"code\": \"InternalServerError\",\r\n \"message\": \"Unexpected internal server error has occurred\"\r\n }\r\n }\r\n}" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Server temporary unavailable", + "schema": { + "$ref": "#/definitions/TranslationErrorResponse" + }, + "examples": { + "application/json": "{\r\n \"error\": {\r\n \"code\": \"ServiceUnavailable\",\r\n \"message\": \"Service is temporary unavailable\",\r\n \"target\": \"batch\",\r\n \"innerError\": {\r\n \"code\": \"ServiceTemporaryUnavailable\",\r\n \"message\": \"Service is currently unavailable. Please try again later\"\r\n }\r\n }\r\n}" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Cancel a batch operation example": { + "$ref": "./examples/cancel.json" + } + } + } + }, + "/batches/{id}/documents": { + "get": { + "tags": [ + "Document Translation" + ], + "summary": "Returns the status for all documents in a batch document translation request", + "description": "Returns the status for all documents in a batch document translation request.\r\n \r\nIf the number of documents in the response exceeds our paging limit, server-side paging is used.\r\nPaginated responses indicate a partial result and include a continuation token in the response. The absence of a continuation token means that no additional pages are available.\r\n \r\n$top, $skip and $maxpagesize query parameters can be used to specify a number of results to return and an offset for the collection.\r\n \r\n$top indicates the total number of records the user wants to be returned across all pages.\r\n$skip indicates the number of records to skip from the list of document status held by the server based on the sorting method specified. By default, we sort by descending start time.\r\n$maxpagesize is the maximum items returned in a page. If more items are requested via $top (or $top is not specified and there are more items to be returned), @nextLink will contain the link to the next page.\r\n \r\n$orderBy query parameter can be used to sort the returned list (ex \"$orderBy=createdDateTimeUtc asc\" or \"$orderBy=createdDateTimeUtc desc\").\r\nThe default sorting is descending by createdDateTimeUtc.\r\nSome query parameters can be used to filter the returned list (ex: \"status=Succeeded,Cancelled\") will only return succeeded and cancelled documents.\r\ncreatedDateTimeUtcStart and createdDateTimeUtcEnd can be used combined or separately to specify a range of datetime to filter the returned list by.\r\nThe supported filtering query parameters are (status, ids, createdDateTimeUtcStart, createdDateTimeUtcEnd).\r\n \r\nWhen both $top and $skip are included, the server should first apply $skip and then $top on the collection.\r\nNote: If the server can't honor $top and/or $skip, the server must return an error to the client informing about it instead of just ignoring the query options.\r\nThis reduces the risk of the client making assumptions about the data returned.", + "operationId": "DocumentTranslation_GetDocumentsStatus", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "id", + "description": "Format - uuid. The operation id", + "required": true, + "type": "string", + "format": "uuid" + }, + { + "in": "query", + "name": "$top", + "description": "$top indicates the total number of records the user wants to be returned across all pages.\r\n \r\nClients MAY use $top and $skip query parameters to specify a number of results to return and an offset into the collection.\r\nWhen both $top and $skip are given by a client, the server SHOULD first apply $skip and then $top on the collection.\r\n \r\nNote: If the server can't honor $top and/or $skip, the server MUST return an error to the client informing about it instead of just ignoring the query options.", + "type": "integer", + "format": "int32", + "maximum": 2147483647, + "minimum": 0 + }, + { + "in": "query", + "name": "$skip", + "description": "$skip indicates the number of records to skip from the list of records held by the server based on the sorting method specified. By default, we sort by descending start time.\r\n \r\nClients MAY use $top and $skip query parameters to specify a number of results to return and an offset into the collection.\r\nWhen both $top and $skip are given by a client, the server SHOULD first apply $skip and then $top on the collection.\r\n \r\nNote: If the server can't honor $top and/or $skip, the server MUST return an error to the client informing about it instead of just ignoring the query options.", + "type": "integer", + "format": "int32", + "default": 0, + "maximum": 2147483647, + "minimum": 0 + }, + { + "in": "query", + "name": "$maxpagesize", + "description": "$maxpagesize is the maximum items returned in a page. If more items are requested via $top (or $top is not specified and there are more items to be returned), @nextLink will contain the link to the next page.\r\n \r\nClients MAY request server-driven paging with a specific page size by specifying a $maxpagesize preference. The server SHOULD honor this preference if the specified page size is smaller than the server's default page size.", + "type": "integer", + "format": "int32", + "default": 50, + "maximum": 100, + "minimum": 1 + }, + { + "in": "query", + "name": "ids", + "description": "Ids to use in filtering", + "type": "array", + "items": { + "format": "uuid", + "type": "string" + }, + "maxLength": 25 + }, + { + "in": "query", + "name": "statuses", + "description": "Statuses to use in filtering", + "type": "array", + "items": { + "type": "string" + }, + "maxLength": 5 + }, + { + "in": "query", + "name": "createdDateTimeUtcStart", + "description": "the start datetime to get items after", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "createdDateTimeUtcEnd", + "description": "the end datetime to get items before", + "type": "string", + "format": "date-time" + }, + { + "in": "query", + "name": "$orderBy", + "description": "the sorting query for the collection (ex: 'CreatedDateTimeUtc asc', 'CreatedDateTimeUtc desc')", + "type": "array", + "items": { + "type": "string" + }, + "maxLength": 1 + } + ], + "responses": { + "200": { + "description": "Successful request and returns the status of the documents", + "schema": { + "$ref": "#/definitions/DocumentsStatus" + }, + "headers": { + "Retry-After": { + "description": "Indicates how long to wait before making a new request.", + "type": "integer", + "format": "int32" + }, + "ETag": { + "description": "The ETag response-header field provides the current value of the entity tag for the requested variant. Used with If-Match, If-None-Match and If-Range to implement optimistic concurrency control.", + "type": "string", + "format": "" + } + } + }, + "400": { + "description": "Invalid request. Check input parameters", + "schema": { + "$ref": "#/definitions/TranslationErrorResponse" + }, + "examples": { + "application/json": "{\r\n \"error\": {\r\n \"code\": \"InvalidRequest\",\r\n \"message\": \"Some argument is incorrect\",\r\n \"target\": \"document\",\r\n \"innerError\": {\r\n \"code\": \"SASTokenInvalid\",\r\n \"message\": \"SAS token for storage is invalid\"\r\n }\r\n }\r\n}" + }, + "x-ms-error-response": true + }, + "401": { + "description": "Unauthorized. Please check your credentials", + "schema": { + "$ref": "#/definitions/TranslationErrorResponse" + }, + "examples": { + "application/json": "{\r\n \"error\": {\r\n \"code\": \"Unauthorized\",\r\n \"message\": \"User is not authorized\",\r\n \"target\": \"document\",\r\n \"innerError\": {\r\n \"code\": \"Unauthorized\",\r\n \"message\": \"Operation is not authorized\"\r\n }\r\n }\r\n}" + }, + "x-ms-error-response": true + }, + "404": { + "description": "Resource is not found", + "schema": { + "$ref": "#/definitions/TranslationErrorResponse" + }, + "examples": { + "application/json": "{\r\n \"error\": {\r\n \"code\": \"ResourceNotFound\",\r\n \"message\": \"id not found\",\r\n \"target\": \"document\",\r\n \"innerError\": {\r\n \"code\": \"ResourceNotFound\",\r\n \"message\": \"Resource requested is not found\"\r\n }\r\n }\r\n}" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests", + "schema": { + "$ref": "#/definitions/TranslationErrorResponse" + }, + "examples": { + "application/json": "{\r\n \"error\": {\r\n \"code\": \"RequestRateTooHigh\",\r\n \"message\": \"User's request rate is too high\",\r\n \"target\": \"document\",\r\n \"innerError\": {\r\n \"code\": \"RateTooHigh\",\r\n \"message\": \"Request rate is too high\"\r\n }\r\n }\r\n}" + }, + "x-ms-error-response": true + }, + "500": { + "description": "Internal Server Error", + "schema": { + "$ref": "#/definitions/TranslationErrorResponse" + }, + "examples": { + "application/json": "{\r\n \"error\": {\r\n \"code\": \"InternalServerError\",\r\n \"message\": \"Internal Server Error\",\r\n \"target\": \"document\",\r\n \"innerError\": {\r\n \"code\": \"InternalServerError\",\r\n \"message\": \"Unexpected internal server error has occurred\"\r\n }\r\n }\r\n}" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Server temporary unavailable", + "schema": { + "$ref": "#/definitions/TranslationErrorResponse" + }, + "examples": { + "application/json": "{\r\n \"error\": {\r\n \"code\": \"ServiceUnavailable\",\r\n \"message\": \"Service is temporary unavailable\",\r\n \"target\": \"document\",\r\n \"innerError\": {\r\n \"code\": \"ServiceTemporaryUnavailable\",\r\n \"message\": \"Service is currently unavailable. Please try again later\"\r\n }\r\n }\r\n}" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Get Documents Status for the operation batch id": { + "$ref": "./examples/documents.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "@nextLink" + } + } + }, + "/documents/formats": { + "get": { + "tags": [ + "Document Translation" + ], + "summary": "Returns a list of supported document formats", + "description": "The list of supported document formats supported by the Document Translation service.\r\nThe list includes the common file extension, as well as the content-type if using the upload API.", + "operationId": "DocumentTranslation_GetSupportedDocumentFormats", + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "Returns the list of supported document file formats", + "schema": { + "$ref": "#/definitions/SupportedFileFormats" + }, + "headers": { + "Retry-After": { + "description": "Indicates how long to wait before making a new request.", + "type": "integer", + "format": "int32" + } + } + }, + "429": { + "description": "Too many requests", + "schema": { + "$ref": "#/definitions/TranslationErrorResponse" + }, + "examples": { + "application/json": "{\r\n \"error\": {\r\n \"code\": \"RequestRateTooHigh\",\r\n \"message\": \"User's request rate is too high\",\r\n \"target\": \"format\",\r\n \"innerError\": {\r\n \"code\": \"RateTooHigh\",\r\n \"message\": \"Request rate is too high\"\r\n }\r\n }\r\n}" + }, + "x-ms-error-response": true + }, + "500": { + "description": "Internal Server Error", + "schema": { + "$ref": "#/definitions/TranslationErrorResponse" + }, + "examples": { + "application/json": "{\r\n \"error\": {\r\n \"code\": \"InternalServerError\",\r\n \"message\": \"Internal Server Error\",\r\n \"target\": \"format\",\r\n \"innerError\": {\r\n \"code\": \"InternalServerError\",\r\n \"message\": \"Unexpected internal server error has occurred\"\r\n }\r\n }\r\n}" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Server temporary unavailable", + "schema": { + "$ref": "#/definitions/TranslationErrorResponse" + }, + "examples": { + "application/json": "{\r\n \"error\": {\r\n \"code\": \"ServiceUnavailable\",\r\n \"message\": \"Service is temporary unavailable\",\r\n \"target\": \"format\",\r\n \"innerError\": {\r\n \"code\": \"ServiceTemporaryUnavailable\",\r\n \"message\": \"Service is currently unavailable. Please try again later\"\r\n }\r\n }\r\n}" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Get Document Formats": { + "$ref": "./examples/format.json" + } + } + } + }, + "/glossaries/formats": { + "get": { + "tags": [ + "Document Translation" + ], + "summary": "Returns the list of supported glossary formats", + "description": "The list of supported glossary formats supported by the Document Translation service.\r\nThe list includes the common file extension used.", + "operationId": "DocumentTranslation_GetSupportedGlossaryFormats", + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "Returns the list of supported glossary file formats", + "schema": { + "$ref": "#/definitions/SupportedFileFormats" + }, + "headers": { + "Retry-After": { + "description": "Indicates how long to wait before making a new request.", + "type": "integer", + "format": "int32" + } + } + }, + "429": { + "description": "Too many requests", + "schema": { + "$ref": "#/definitions/TranslationErrorResponse" + }, + "examples": { + "application/json": "{\r\n \"error\": {\r\n \"code\": \"RequestRateTooHigh\",\r\n \"message\": \"User's request rate is too high\",\r\n \"target\": \"format\",\r\n \"innerError\": {\r\n \"code\": \"RateTooHigh\",\r\n \"message\": \"Request rate is too high\"\r\n }\r\n }\r\n}" + }, + "x-ms-error-response": true + }, + "500": { + "description": "Internal Server Error", + "schema": { + "$ref": "#/definitions/TranslationErrorResponse" + }, + "examples": { + "application/json": "{\r\n \"error\": {\r\n \"code\": \"InternalServerError\",\r\n \"message\": \"Internal Server Error\",\r\n \"target\": \"format\",\r\n \"innerError\": {\r\n \"code\": \"InternalServerError\",\r\n \"message\": \"Unexpected internal server error has occurred\"\r\n }\r\n }\r\n}" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Server temporary unavailable", + "schema": { + "$ref": "#/definitions/TranslationErrorResponse" + }, + "examples": { + "application/json": "{\r\n \"error\": {\r\n \"code\": \"ServiceUnavailable\",\r\n \"message\": \"Service is temporary unavailable\",\r\n \"target\": \"format\",\r\n \"innerError\": {\r\n \"code\": \"ServiceTemporaryUnavailable\",\r\n \"message\": \"Service is currently unavailable. Please try again later\"\r\n }\r\n }\r\n}" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Get Glossary Formats": { + "$ref": "./examples/glossary.json" + } + } + } + }, + "/storagesources": { + "get": { + "tags": [ + "Document Translation" + ], + "summary": "Returns a list of supported storage sources", + "description": "Returns a list of storage sources/options supported by the Document Translation service.", + "operationId": "DocumentTranslation_GetSupportedStorageSources", + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "Successful request and returns the list of storage sources", + "schema": { + "$ref": "#/definitions/SupportedStorageSources" + }, + "headers": { + "Retry-After": { + "description": "Indicates how long to wait before making a new request.", + "type": "integer", + "format": "int32" + } + } + }, + "429": { + "description": "Too many requests", + "schema": { + "$ref": "#/definitions/TranslationErrorResponse" + }, + "examples": { + "application/json": "{\r\n \"error\": {\r\n \"code\": \"RequestRateTooHigh\",\r\n \"message\": \"User's request rate is too high\",\r\n \"target\": \"source\",\r\n \"innerError\": {\r\n \"code\": \"RateTooHigh\",\r\n \"message\": \"Request rate is too high\"\r\n }\r\n }\r\n}" + }, + "x-ms-error-response": true + }, + "500": { + "description": "Internal Server Error", + "schema": { + "$ref": "#/definitions/TranslationErrorResponse" + }, + "examples": { + "application/json": "{\r\n \"error\": {\r\n \"code\": \"InternalServerError\",\r\n \"message\": \"Internal Server Error\",\r\n \"target\": \"source\",\r\n \"innerError\": {\r\n \"code\": \"InternalServerError\",\r\n \"message\": \"Unexpected internal server error has occurred\"\r\n }\r\n }\r\n}" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Server temporary unavailable", + "schema": { + "$ref": "#/definitions/TranslationErrorResponse" + }, + "examples": { + "application/json": "{\r\n \"error\": {\r\n \"code\": \"ServiceUnavailable\",\r\n \"message\": \"Service is temporary unavailable\",\r\n \"target\": \"source\",\r\n \"innerError\": {\r\n \"code\": \"ServiceTemporaryUnavailable\",\r\n \"message\": \"Service is currently unavailable. Please try again later\"\r\n }\r\n }\r\n}" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Get Document Storage Sources": { + "$ref": "./examples/storage.json" + } + } + } + } + }, + "definitions": { + "DocumentFilter": { + "type": "object", + "properties": { + "prefix": { + "description": "A case-sensitive prefix string to filter documents in the source path for translation. \r\nFor example, when using a Azure storage blob Uri, use the prefix to restrict sub folders for translation.", + "type": "string", + "example": "FolderA" + }, + "suffix": { + "description": "A case-sensitive suffix string to filter documents in the source path for translation. \r\nThis is most often use for file extensions", + "type": "string", + "example": ".txt" + } + } + }, + "StorageSource": { + "description": "Storage Source", + "enum": [ + "AzureBlob" + ], + "type": "string", + "x-ms-enum": { + "name": "StorageSource", + "modelAsString": true, + "values": [ + { + "value": "AzureBlob" + } + ] + } + }, + "SourceInput": { + "description": "Source of the input documents", + "required": [ + "sourceUrl" + ], + "type": "object", + "properties": { + "sourceUrl": { + "description": "Location of the folder / container or single file with your documents", + "type": "string", + "example": "https://myblob.blob.core.windows.net/Container/" + }, + "filter": { + "$ref": "#/definitions/DocumentFilter" + }, + "language": { + "description": "Language code\r\nIf none is specified, we will perform auto detect on the document", + "type": "string", + "example": "en" + }, + "storageSource": { + "$ref": "#/definitions/StorageSource" + } + } + }, + "Glossary": { + "description": "Glossary / translation memory for the request", + "required": [ + "format", + "glossaryUrl" + ], + "type": "object", + "properties": { + "glossaryUrl": { + "description": "Location of the glossary. \r\nWe will use the file extension to extract the formatting if the format parameter is not supplied.\r\n\r\nIf the translation language pair is not present in the glossary, it will not be applied", + "type": "string", + "example": "https://myblob.blob.core.windows.net/Container/myglossary.tsv" + }, + "format": { + "description": "Format", + "type": "string", + "example": "XLIFF" + }, + "version": { + "description": "Optional Version. If not specified, default is used.", + "type": "string", + "example": "2.0" + }, + "storageSource": { + "$ref": "#/definitions/StorageSource" + } + } + }, + "TargetInput": { + "description": "Destination for the finished translated documents", + "required": [ + "language", + "targetUrl" + ], + "type": "object", + "properties": { + "targetUrl": { + "description": "Location of the folder / container with your documents", + "type": "string", + "example": "https://myblob.blob.core.windows.net/TargetUrl/" + }, + "category": { + "description": "Category / custom system for translation request", + "type": "string", + "example": "general" + }, + "language": { + "description": "Target Language", + "type": "string", + "example": "fr" + }, + "glossaries": { + "description": "List of Glossary", + "type": "array", + "items": { + "$ref": "#/definitions/Glossary" + } + }, + "storageSource": { + "$ref": "#/definitions/StorageSource" + } + } + }, + "StorageInputType": { + "description": "Storage type of the input documents source string", + "enum": [ + "Folder", + "File" + ], + "type": "string", + "x-ms-enum": { + "name": "StorageInputType", + "modelAsString": true, + "values": [ + { + "value": "Folder" + }, + { + "value": "File" + } + ] + } + }, + "BatchRequest": { + "description": "Definition for the input batch translation request", + "required": [ + "source", + "targets" + ], + "type": "object", + "properties": { + "source": { + "$ref": "#/definitions/SourceInput" + }, + "targets": { + "description": "Location of the destination for the output", + "type": "array", + "items": { + "$ref": "#/definitions/TargetInput" + } + }, + "storageType": { + "$ref": "#/definitions/StorageInputType" + } + } + }, + "StartTranslationDetails": { + "description": "Translation job submission batch request", + "required": [ + "inputs" + ], + "type": "object", + "properties": { + "inputs": { + "description": "The input list of documents or folders containing documents", + "type": "array", + "items": { + "$ref": "#/definitions/BatchRequest" + } + } + } + }, + "Status": { + "description": "List of possible statuses for job or document", + "enum": [ + "NotStarted", + "Running", + "Succeeded", + "Failed", + "Cancelled", + "Cancelling", + "ValidationFailed" + ], + "type": "string", + "x-ms-enum": { + "name": "Status", + "modelAsString": true, + "values": [ + { + "value": "NotStarted" + }, + { + "value": "Running" + }, + { + "value": "Succeeded" + }, + { + "value": "Failed" + }, + { + "value": "Cancelled" + }, + { + "value": "Cancelling" + }, + { + "value": "ValidationFailed" + } + ] + } + }, + "TranslationErrorCode": { + "description": "Enums containing high level error codes.", + "enum": [ + "InvalidRequest", + "InvalidArgument", + "InternalServerError", + "ServiceUnavailable", + "ResourceNotFound", + "Unauthorized", + "RequestRateTooHigh" + ], + "type": "string", + "x-ms-enum": { + "name": "TranslationErrorCode", + "modelAsString": true, + "values": [ + { + "value": "InvalidRequest" + }, + { + "value": "InvalidArgument" + }, + { + "value": "InternalServerError" + }, + { + "value": "ServiceUnavailable" + }, + { + "value": "ResourceNotFound" + }, + { + "value": "Unauthorized" + }, + { + "value": "RequestRateTooHigh" + } + ] + } + }, + "InnerTranslationError": { + "description": "New Inner Error format which conforms to Cognitive Services API Guidelines which is available at https://microsoft.sharepoint.com/%3Aw%3A/t/CognitiveServicesPMO/EUoytcrjuJdKpeOKIK_QRC8BPtUYQpKBi8JsWyeDMRsWlQ?e=CPq8ow.\r\nThis contains required properties ErrorCode, message and optional properties target, details(key value pair), inner error(this can be nested).", + "required": [ + "code", + "message" + ], + "type": "object", + "properties": { + "code": { + "description": "Gets code error string.", + "type": "string" + }, + "message": { + "description": "Gets high level error message.", + "type": "string" + }, + "target": { + "description": "Gets the source of the error. \r\nFor example it would be \"documents\" or \"document id\" in case of invalid document.", + "type": "string", + "readOnly": true + }, + "innerError": { + "$ref": "#/definitions/InnerTranslationError" + } + } + }, + "TranslationError": { + "description": "This contains an outer error with error code, message, details, target and an inner error with more descriptive details.", + "required": [ + "code", + "message" + ], + "type": "object", + "properties": { + "code": { + "$ref": "#/definitions/TranslationErrorCode" + }, + "message": { + "description": "Gets high level error message.", + "type": "string" + }, + "target": { + "description": "Gets the source of the error. \r\nFor example it would be \"documents\" or \"document id\" in case of invalid document.", + "type": "string", + "readOnly": true + }, + "innerError": { + "$ref": "#/definitions/InnerTranslationError" + } + } + }, + "StatusSummary": { + "required": [ + "cancelled", + "failed", + "inProgress", + "notYetStarted", + "success", + "total", + "totalCharacterCharged" + ], + "type": "object", + "properties": { + "total": { + "format": "int32", + "description": "Total count", + "type": "integer", + "example": 1 + }, + "failed": { + "format": "int32", + "description": "Failed count", + "type": "integer", + "example": 0 + }, + "success": { + "format": "int32", + "description": "Number of Success", + "type": "integer", + "example": 1 + }, + "inProgress": { + "format": "int32", + "description": "Number of in progress", + "type": "integer", + "example": 0 + }, + "notYetStarted": { + "format": "int32", + "description": "Count of not yet started", + "type": "integer", + "example": 0 + }, + "cancelled": { + "format": "int32", + "description": "Number of cancelled", + "type": "integer", + "example": 0 + }, + "totalCharacterCharged": { + "format": "int64", + "description": "Total characters charged by the API", + "type": "integer" + } + } + }, + "TranslationStatus": { + "description": "Translation job status response", + "required": [ + "createdDateTimeUtc", + "id", + "lastActionDateTimeUtc", + "status", + "summary" + ], + "type": "object", + "properties": { + "id": { + "format": "uuid", + "description": "Id of the operation.", + "type": "string", + "example": "36724748-f7a0-4db7-b7fd-f041ddc75033" + }, + "createdDateTimeUtc": { + "format": "date-time", + "description": "Operation created date time", + "type": "string", + "example": "2020-01-20T11:40:07.7010000-08:00" + }, + "lastActionDateTimeUtc": { + "format": "date-time", + "description": "Date time in which the operation's status has been updated", + "type": "string", + "example": "2020-01-20T11:41:07.7010000-08:00" + }, + "status": { + "$ref": "#/definitions/Status" + }, + "error": { + "$ref": "#/definitions/TranslationError" + }, + "summary": { + "$ref": "#/definitions/StatusSummary" + } + } + }, + "TranslationsStatus": { + "description": "Translation job Status Response", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "The summary status of individual operation", + "type": "array", + "items": { + "$ref": "#/definitions/TranslationStatus" + } + }, + "@nextLink": { + "description": "Url for the next page. Null if no more pages available", + "type": "string", + "example": "https://westus.cognitiveservices.azure.com/translator/text/batch/v1.0/operations?$top=5&$skip=15" + } + } + }, + "DocumentStatus": { + "description": "Document Status Response", + "required": [ + "createdDateTimeUtc", + "id", + "lastActionDateTimeUtc", + "progress", + "sourcePath", + "status", + "to" + ], + "type": "object", + "properties": { + "path": { + "description": "Location of the document or folder", + "type": "string", + "example": "https://myblob.blob.core.windows.net/mycontainer/fr/mydoc.txt" + }, + "sourcePath": { + "description": "Location of the source document", + "type": "string", + "example": "https://myblob.blob.core.windows.net/mycontainer/fr/mydoc.txt" + }, + "createdDateTimeUtc": { + "format": "date-time", + "description": "Operation created date time", + "type": "string", + "example": "2020-01-20T11:40:07.7010000-08:00" + }, + "lastActionDateTimeUtc": { + "format": "date-time", + "description": "Date time in which the operation's status has been updated", + "type": "string", + "example": "2020-01-20T11:41:07.7010000-08:00" + }, + "status": { + "$ref": "#/definitions/Status" + }, + "to": { + "description": "To language", + "type": "string" + }, + "error": { + "$ref": "#/definitions/TranslationError" + }, + "progress": { + "format": "float", + "description": "Progress of the translation if available", + "maximum": 1, + "minimum": 0, + "type": "number", + "example": 0.5 + }, + "id": { + "format": "uuid", + "description": "Document Id", + "type": "string", + "example": "1c7399a7-6913-4f20-bb43-e2fe2ba1a67d" + }, + "characterCharged": { + "format": "int64", + "description": "Character charged by the API", + "type": "integer" + } + } + }, + "DocumentsStatus": { + "description": "Documents Status Response", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "The detail status of individual documents", + "type": "array", + "items": { + "$ref": "#/definitions/DocumentStatus" + } + }, + "@nextLink": { + "description": "Url for the next page. Null if no more pages available", + "type": "string", + "example": "https://westus.cognitiveservices.azure.com/translator/text/batch/v1.0/operations/727BF148-F327-47A0-9481-ABAE6362F11E/documents?$top=5&$skip=15" + } + } + }, + "FileFormat": { + "required": [ + "contentTypes", + "fileExtensions", + "format" + ], + "type": "object", + "properties": { + "format": { + "description": "Name of the format", + "type": "string", + "example": "PlainText" + }, + "fileExtensions": { + "description": "Supported file extension for this format", + "type": "array", + "items": { + "type": "string" + } + }, + "contentTypes": { + "description": "Supported Content-Types for this format", + "type": "array", + "items": { + "type": "string" + } + }, + "defaultVersion": { + "description": "Default version if none is specified", + "type": "string" + }, + "versions": { + "description": "Supported Version", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "SupportedFileFormats": { + "description": "Base type for List return in our api", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "list of objects", + "type": "array", + "items": { + "$ref": "#/definitions/FileFormat" + } + } + } + }, + "SupportedStorageSources": { + "description": "Base type for List return in our api", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "list of objects", + "type": "array", + "items": { + "$ref": "#/definitions/StorageSource" + } + } + } + }, + "TranslationErrorResponse": { + "description": "Contains unified error information used for HTTP responses across any Cognitive Service. Instances\r\ncan be created either through Microsoft.CloudAI.Containers.HttpStatusExceptionV2 or by returning it directly from\r\na controller.", + "type": "object", + "properties": { + "error": { + "$ref": "#/definitions/TranslationError" + } + } + } + }, + "securityDefinitions": { + "subscription_key": { + "type": "apiKey", + "name": "Ocp-Apim-Subscription-Key", + "in": "header", + "description": "Provide your cognitive services subscription key here." + } + }, + "security": [ + { + "subscription_key": [] + } + ], + "x-ms-parameterized-host": { + "hostTemplate": "{endpoint}/translator/text/batch/v1.0", + "useSchemePrefix": false, + "parameters": [ + { + "in": "path", + "name": "endpoint", + "description": "Supported Cognitive Services endpoints (protocol and hostname, for example: https://westus.api.cognitive.microsoft.com).", + "required": true, + "type": "string", + "x-ms-parameter-location": "client", + "x-ms-skip-url-encoding": true + } + ] + } +} diff --git a/specification/cognitiveservices/data-plane/TranslatorText/stable/v1.0/examples/batch.json b/specification/cognitiveservices/data-plane/TranslatorText/stable/v1.0/examples/batch.json new file mode 100644 index 000000000000..a3701c732f22 --- /dev/null +++ b/specification/cognitiveservices/data-plane/TranslatorText/stable/v1.0/examples/batch.json @@ -0,0 +1,118 @@ +{ + "parameters": { + "api-version": "v1.0", + "subscriptionId": "EA19050C-51FC-4B55-84E5-9EA7283601DA", + "resourceGroupName": "TestResourceGroup", + "endpoint": "{endpoint}", + "Ocp-Apim-Subscription-Key": "{API key}", + "body": { + "inputs": [ + { + "source": { + "sourceUrl": "https://myblob.blob.core.windows.net/sourceContainer", + "filter": { + "prefix": "pre", + "suffix": ".txt" + }, + "language": "en", + "storageSource": "AzureBlob" + }, + "targets": [ + { + "targetUrl": "https://myblob.blob.core.windows.net/destinationContainer1", + "category": "general", + "language": "fr", + "glossaries": [ + { + "glossaryUrl": "https://myblob.blob.core.windows.net/myglossary/en_fr_glossary.xlf", + "storageSource": "AzureBlob", + "format": "XLIFF" + } + ], + "storageSource": "AzureBlob" + }, + { + "targetUrl": "https://myblob.blob.core.windows.net/destinationContainer2", + "category": "general", + "language": "es", + "storageSource": "AzureBlob" + } + ], + "storageType": "Folder" + } + ] + } + }, + "responses": { + "401": { + "headers": {}, + "body": { + "error": { + "code": "Unauthorized", + "message": "User is not authorized", + "innerError": { + "code": "Unauthorized", + "message": "Operation is not authorized" + } + } + } + }, + "429": { + "headers": {}, + "body": { + "error": { + "code": "RequestRateTooHigh", + "message": "User's request rate is too high", + "innerError": { + "code": "RateTooHigh", + "message": "Request rate is too high" + } + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "InternalServerError", + "message": "Internal Server Error", + "innerError": { + "code": "InternalServerError", + "message": "Unexpected internal server error has occurred" + } + } + } + }, + "503": { + "headers": {}, + "body": { + "error": { + "code": "ServiceUnavailable", + "message": "Service is temporary unavailable", + "innerError": { + "code": "ServiceTemporaryUnavailable", + "message": "Service is currently unavailable. Please try again later" + } + } + } + }, + "202": { + "headers": { + "Operation-Location": "https://westus.cognitiveservices.azure.com/translator/text/batch/v1.0/operation/0FA2822F-4C2A-4317-9C20-658C801E0E55" + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "InvalidRequest", + "message": "Some argument is incorrect", + "innerError": { + "code": "SASTokenInvalid", + "message": "SAS token for storage is invalid" + } + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/TranslatorText/stable/v1.0/examples/cancel.json b/specification/cognitiveservices/data-plane/TranslatorText/stable/v1.0/examples/cancel.json new file mode 100644 index 000000000000..e3bd0a028009 --- /dev/null +++ b/specification/cognitiveservices/data-plane/TranslatorText/stable/v1.0/examples/cancel.json @@ -0,0 +1,100 @@ +{ + "parameters": { + "api-version": "v1.0", + "subscriptionId": "EA19050C-51FC-4B55-84E5-9EA7283601DA", + "resourceGroupName": "TestResourceGroup", + "endpoint": "{endpoint}", + "Ocp-Apim-Subscription-Key": "{API key}", + "id": "727BF148-F327-47A0-9481-ABAE6362F11E" + }, + "responses": { + "401": { + "headers": {}, + "body": { + "error": { + "code": "Unauthorized", + "message": "User is not authorized", + "target": "Operation", + "innerError": { + "code": "Unauthorized", + "message": "Operation is not authorized" + } + } + } + }, + "429": { + "headers": {}, + "body": { + "error": { + "code": "RequestRateTooHigh", + "message": "User's request rate is too high", + "target": "Operation", + "innerError": { + "code": "RateTooHigh", + "message": "Request rate is too high" + } + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "InternalServerError", + "message": "Internal Server Error", + "target": "Operation", + "innerError": { + "code": "InternalServerError", + "message": "Unexpected internal server error has occurred" + } + } + } + }, + "503": { + "headers": {}, + "body": { + "error": { + "code": "ServiceUnavailable", + "message": "Service is temporary unavailable", + "target": "Operation", + "innerError": { + "code": "ServiceTemporaryUnavailable", + "message": "Service is currently unavailable. Please try again later" + } + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "ResourceNotFound", + "message": "id not found", + "target": "Operation", + "innerError": { + "code": "ResourceNotFound", + "message": "Resource requested is not found" + } + } + } + }, + "200": { + "headers": {}, + "body": { + "id": "727bf148-f327-47a0-9481-abae6362f11e", + "createdDateTimeUtc": "2020-03-26T00:00:00Z", + "lastActionDateTimeUtc": "2020-03-26T01:00:00Z", + "status": "Succeeded", + "summary": { + "total": 10, + "failed": 1, + "success": 9, + "inProgress": 0, + "notYetStarted": 0, + "cancelled": 0, + "totalCharacterCharged": 0 + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/TranslatorText/stable/v1.0/examples/document.json b/specification/cognitiveservices/data-plane/TranslatorText/stable/v1.0/examples/document.json new file mode 100644 index 000000000000..f466f9a5aee8 --- /dev/null +++ b/specification/cognitiveservices/data-plane/TranslatorText/stable/v1.0/examples/document.json @@ -0,0 +1,100 @@ +{ + "parameters": { + "api-version": "v1.0", + "subscriptionId": "EA19050C-51FC-4B55-84E5-9EA7283601DA", + "resourceGroupName": "TestResourceGroup", + "endpoint": "{endpoint}", + "Ocp-Apim-Subscription-Key": "{API key}", + "id": "727BF148-F327-47A0-9481-ABAE6362F11E", + "documentId": 199800 + }, + "responses": { + "401": { + "headers": {}, + "body": { + "error": { + "code": "Unauthorized", + "message": "User is not authorized", + "target": "Document", + "innerError": { + "code": "Unauthorized", + "message": "Operation is not authorized" + } + } + } + }, + "429": { + "headers": {}, + "body": { + "error": { + "code": "RequestRateTooHigh", + "message": "User's request rate is too high", + "target": "Document", + "innerError": { + "code": "RateTooHigh", + "message": "Request rate is too high" + } + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "InternalServerError", + "message": "Internal Server Error", + "target": "Document", + "innerError": { + "code": "InternalServerError", + "message": "Unexpected internal server error has occurred" + } + } + } + }, + "503": { + "headers": {}, + "body": { + "error": { + "code": "ServiceUnavailable", + "message": "Service is temporary unavailable", + "target": "Document", + "innerError": { + "code": "ServiceTemporaryUnavailable", + "message": "Service is currently unavailable. Please try again later" + } + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "ResourceNotFound", + "message": "id not found", + "target": "Document", + "innerError": { + "code": "ResourceNotFound", + "message": "Resource requested is not found" + } + } + } + }, + "200": { + "headers": { + "retry-after": "30", + "ETag": "686897696a7c876b7e" + }, + "body": { + "path": "https://myblob.blob.core.windows.net/destinationContainer/fr/mydoc.txt", + "sourcePath": "https://myblob.blob.core.windows.net/sourceContainer/fr/mydoc.txt", + "createdDateTimeUtc": "2020-03-26T00:00:00Z", + "lastActionDateTimeUtc": "2020-03-26T01:00:00Z", + "status": "Running", + "to": "fr", + "progress": 0.1, + "id": "273622bd-835c-4946-9798-fd8f19f6bbf2", + "characterCharged": 0 + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/TranslatorText/stable/v1.0/examples/documents.json b/specification/cognitiveservices/data-plane/TranslatorText/stable/v1.0/examples/documents.json new file mode 100644 index 000000000000..772a471893a4 --- /dev/null +++ b/specification/cognitiveservices/data-plane/TranslatorText/stable/v1.0/examples/documents.json @@ -0,0 +1,131 @@ +{ + "parameters": { + "api-version": "v1.0", + "subscriptionId": "EA19050C-51FC-4B55-84E5-9EA7283601DA", + "resourceGroupName": "TestResourceGroup", + "endpoint": "{endpoint}", + "Ocp-Apim-Subscription-Key": "{API key}", + "id": "727BF148-F327-47A0-9481-ABAE6362F11E", + "$top": 2, + "$skip": 0, + "$maxpagesize": 1, + "$orderBy": "CreatedDateTimeUtc asc", + "createdDateTimeUtcStart": "2021-03-23T07:03:38.0136316Z", + "createdDateTimeUtcEnd": "2021-03-25T07:03:38.0136316Z", + "statuses": [ + "Succeeded" + ], + "ids": [ + "273622bd-835c-4946-9798-fd8f19f6bbf2", + "511b6a66-a6f8-4640-83e1-48c325e9fa29" + ] + }, + "responses": { + "401": { + "headers": {}, + "body": { + "error": { + "code": "Unauthorized", + "message": "User is not authorized", + "target": "Document", + "innerError": { + "code": "Unauthorized", + "message": "Operation is not authorized" + } + } + } + }, + "429": { + "headers": {}, + "body": { + "error": { + "code": "RequestRateTooHigh", + "message": "User's request rate is too high", + "target": "Document", + "innerError": { + "code": "RateTooHigh", + "message": "Request rate is too high" + } + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "InternalServerError", + "message": "Internal Server Error", + "target": "Document", + "innerError": { + "code": "InternalServerError", + "message": "Unexpected internal server error has occurred" + } + } + } + }, + "503": { + "headers": {}, + "body": { + "error": { + "code": "ServiceUnavailable", + "message": "Service is temporary unavailable", + "target": "Document", + "innerError": { + "code": "ServiceTemporaryUnavailable", + "message": "Service is currently unavailable. Please try again later" + } + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "ResourceNotFound", + "message": "id not found", + "target": "Document", + "innerError": { + "code": "ResourceNotFound", + "message": "Resource requested is not found" + } + } + } + }, + "200": { + "headers": { + "retry-after": "30", + "ETag": "686897696a7c876b7e" + }, + "body": { + "value": [ + { + "path": "https://myblob.blob.core.windows.net/destinationContainer/fr/mydoc.txt", + "sourcePath": "https://myblob.blob.core.windows.net/sourceContainer/fr/mydoc.txt", + "createdDateTimeUtc": "2021-03-23T07:03:39.013631Z", + "lastActionDateTimeUtc": "2021-03-23T07:03:41.012452Z", + "status": "Running", + "to": "fr", + "progress": 0.1, + "id": "273622bd-835c-4946-9798-fd8f19f6bbf2", + "characterCharged": 0 + } + ], + "@nextLink": "https://westus.cognitiveservices.azure.com/translator/text/batch/v1.0/operation/0FA2822F-4C2A-4317-9C20-658C801E0E55/documents?$top=1&$skip=1&$maxpagesize=1&$orderBy=CreatedDateTimeUtc%20asc&createdDateTimeUtcStart=2021-03-23T00:03:38.0136316Z&createdDateTimeUtcEnd=2021-03-25T00:03:38.0136316&statuses=Succeeded&ids=273622BD-835C-4946-9798-FD8F19F6BBF2,511B6A66-A6F8-4640-83E1-48C325E9FA29" + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "InvalidRequest", + "message": "Some argument is incorrect", + "target": "Document", + "innerError": { + "code": "SASTokenInvalid", + "message": "SAS token for storage is invalid" + } + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/TranslatorText/stable/v1.0/examples/format.json b/specification/cognitiveservices/data-plane/TranslatorText/stable/v1.0/examples/format.json new file mode 100644 index 000000000000..98b62ce43ae4 --- /dev/null +++ b/specification/cognitiveservices/data-plane/TranslatorText/stable/v1.0/examples/format.json @@ -0,0 +1,115 @@ +{ + "parameters": { + "api-version": "v1.0", + "subscriptionId": "EA19050C-51FC-4B55-84E5-9EA7283601DA", + "resourceGroupName": "TestResourceGroup", + "endpoint": "{endpoint}", + "Ocp-Apim-Subscription-Key": "{API key}" + }, + "responses": { + "429": { + "headers": {}, + "body": { + "error": { + "code": "RequestRateTooHigh", + "message": "User's request rate is too high", + "innerError": { + "code": "RateTooHigh", + "message": "Request rate is too high" + } + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "InternalServerError", + "message": "Internal Server Error", + "innerError": { + "code": "InternalServerError", + "message": "Unexpected internal server error has occurred" + } + } + } + }, + "503": { + "headers": {}, + "body": { + "error": { + "code": "ServiceUnavailable", + "message": "Service is temporary unavailable", + "innerError": { + "code": "ServiceTemporaryUnavailable", + "message": "Service is currently unavailable. Please try again later" + } + } + } + }, + "200": { + "headers": { + "retry-after": "30", + "ETag": "686897696a7c876b7e" + }, + "body": { + "value": [ + { + "format": "PlainText", + "fileExtensions": [ + ".txt" + ], + "contentTypes": [ + "text/plain" + ] + }, + { + "format": "PortableDocumentFormat", + "fileExtensions": [ + ".pdf" + ], + "contentTypes": [ + "application/pdf" + ] + }, + { + "format": "OpenXmlWord", + "fileExtensions": [ + ".docx" + ], + "contentTypes": [ + "application/vnd.openxmlformats-officedocument.wordprocessingml.document" + ] + }, + { + "format": "OpenXmlPresentation", + "fileExtensions": [ + ".pptx" + ], + "contentTypes": [ + "application/vnd.openxmlformats-officedocument.presentationml.presentation" + ] + }, + { + "format": "OpenXmlSpreadsheet", + "fileExtensions": [ + ".xlsx" + ], + "contentTypes": [ + "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" + ] + }, + { + "format": "HtmlFile", + "fileExtensions": [ + ".html", + ".htm" + ], + "contentTypes": [ + "text/html" + ] + } + ] + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/TranslatorText/stable/v1.0/examples/glossary.json b/specification/cognitiveservices/data-plane/TranslatorText/stable/v1.0/examples/glossary.json new file mode 100644 index 000000000000..631be37c43d7 --- /dev/null +++ b/specification/cognitiveservices/data-plane/TranslatorText/stable/v1.0/examples/glossary.json @@ -0,0 +1,89 @@ +{ + "parameters": { + "api-version": "v1.0", + "subscriptionId": "EA19050C-51FC-4B55-84E5-9EA7283601DA", + "resourceGroupName": "TestResourceGroup", + "endpoint": "{endpoint}", + "Ocp-Apim-Subscription-Key": "{API key}" + }, + "responses": { + "429": { + "headers": {}, + "body": { + "error": { + "code": "RequestRateTooHigh", + "message": "User's request rate is too high", + "innerError": { + "code": "RateTooHigh", + "message": "Request rate is too high" + } + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "InternalServerError", + "message": "Internal Server Error", + "innerError": { + "code": "InternalServerError", + "message": "Unexpected internal server error has occurred" + } + } + } + }, + "503": { + "headers": {}, + "body": { + "error": { + "code": "ServiceUnavailable", + "message": "Service is temporary unavailable", + "innerError": { + "code": "ServiceTemporaryUnavailable", + "message": "Service is currently unavailable. Please try again later" + } + } + } + }, + "200": { + "headers": { + "retry-after": "30", + "ETag": "686897696a7c876b7e" + }, + "body": { + "value": [ + { + "format": "XLIFF", + "fileExtensions": [ + ".xlf" + ], + "contentTypes": [ + "application/xliff+xml" + ], + "defaultVersion": "1.2", + "versions": [ + "1.0", + "1.1", + "1.2" + ] + }, + { + "format": "TMX", + "fileExtensions": [ + ".tmx" + ], + "contentTypes": [], + "versions": [ + "1.0", + "1.1", + "1.2", + "1.3", + "1.4" + ] + } + ] + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/TranslatorText/stable/v1.0/examples/operation.json b/specification/cognitiveservices/data-plane/TranslatorText/stable/v1.0/examples/operation.json new file mode 100644 index 000000000000..ec846c209d3c --- /dev/null +++ b/specification/cognitiveservices/data-plane/TranslatorText/stable/v1.0/examples/operation.json @@ -0,0 +1,103 @@ +{ + "parameters": { + "api-version": "v1.0", + "subscriptionId": "EA19050C-51FC-4B55-84E5-9EA7283601DA", + "resourceGroupName": "TestResourceGroup", + "endpoint": "{endpoint}", + "Ocp-Apim-Subscription-Key": "{API key}", + "id": "727BF148-F327-47A0-9481-ABAE6362F11E" + }, + "responses": { + "401": { + "headers": {}, + "body": { + "error": { + "code": "Unauthorized", + "message": "User is not authorized", + "target": "Operation", + "innerError": { + "code": "Unauthorized", + "message": "Operation is not authorized" + } + } + } + }, + "429": { + "headers": {}, + "body": { + "error": { + "code": "RequestRateTooHigh", + "message": "User's request rate is too high", + "target": "Operation", + "innerError": { + "code": "RateTooHigh", + "message": "Request rate is too high" + } + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "InternalServerError", + "message": "Internal Server Error", + "target": "Operation", + "innerError": { + "code": "InternalServerError", + "message": "Unexpected internal server error has occurred" + } + } + } + }, + "503": { + "headers": {}, + "body": { + "error": { + "code": "ServiceUnavailable", + "message": "Service is temporary unavailable", + "target": "Operation", + "innerError": { + "code": "ServiceTemporaryUnavailable", + "message": "Service is currently unavailable. Please try again later" + } + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "ResourceNotFound", + "message": "id not found", + "target": "Operation", + "innerError": { + "code": "ResourceNotFound", + "message": "Resource requested is not found" + } + } + } + }, + "200": { + "headers": { + "retry-after": "30", + "ETag": "686897696a7c876b7e" + }, + "body": { + "id": "727bf148-f327-47a0-9481-abae6362f11e", + "createdDateTimeUtc": "2020-03-26T00:00:00Z", + "lastActionDateTimeUtc": "2020-03-26T01:00:00Z", + "status": "Succeeded", + "summary": { + "total": 10, + "failed": 1, + "success": 9, + "inProgress": 0, + "notYetStarted": 0, + "cancelled": 0, + "totalCharacterCharged": 0 + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/TranslatorText/stable/v1.0/examples/operations.json b/specification/cognitiveservices/data-plane/TranslatorText/stable/v1.0/examples/operations.json new file mode 100644 index 000000000000..acd4ee3ed53f --- /dev/null +++ b/specification/cognitiveservices/data-plane/TranslatorText/stable/v1.0/examples/operations.json @@ -0,0 +1,118 @@ +{ + "parameters": { + "api-version": "v1.0", + "subscriptionId": "EA19050C-51FC-4B55-84E5-9EA7283601DA", + "resourceGroupName": "TestResourceGroup", + "endpoint": "{endpoint}", + "Ocp-Apim-Subscription-Key": "{API key}", + "$top": 1, + "$skip": 0, + "$maxpagesize": 10, + "$orderBy": "CreatedDateTime asc", + "createdDateTimeUtcStart": "2021-03-23T07:03:38.0136316Z", + "createdDateTimeUtcEnd": "2021-03-25T07:03:38.0136316Z", + "statuses": [ + "Succeeded" + ], + "ids": [ + "273622bd-835c-4946-9798-fd8f19f6bbf2" + ] + }, + "responses": { + "401": { + "headers": {}, + "body": { + "error": { + "code": "Unauthorized", + "message": "User is not authorized", + "target": "Operation", + "innerError": { + "code": "Unauthorized", + "message": "Operation is not authorized" + } + } + } + }, + "429": { + "headers": {}, + "body": { + "error": { + "code": "RequestRateTooHigh", + "message": "User's request rate is too high", + "target": "Operation", + "innerError": { + "code": "RateTooHigh", + "message": "Request rate is too high" + } + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "InternalServerError", + "message": "Internal Server Error", + "target": "Operation", + "innerError": { + "code": "InternalServerError", + "message": "Unexpected internal server error has occurred" + } + } + } + }, + "503": { + "headers": {}, + "body": { + "error": { + "code": "ServiceUnavailable", + "message": "Service is temporary unavailable", + "target": "Operation", + "innerError": { + "code": "ServiceTemporaryUnavailable", + "message": "Service is currently unavailable. Please try again later" + } + } + } + }, + "200": { + "headers": { + "retry-after": "30", + "ETag": "686897696a7c876b7e" + }, + "body": { + "value": [ + { + "id": "273622bd-835c-4946-9798-fd8f19f6bbf2", + "createdDateTimeUtc": "2021-03-23T07:03:30.013631Z", + "lastActionDateTimeUtc": "2021-03-26T01:00:00Z", + "status": "Succeeded", + "summary": { + "total": 10, + "failed": 1, + "success": 9, + "inProgress": 0, + "notYetStarted": 0, + "cancelled": 0, + "totalCharacterCharged": 1000 + } + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "InvalidRequest", + "message": "Some argument is incorrect", + "target": "Operation", + "innerError": { + "code": "SASTokenInvalid", + "message": "SAS token for storage is invalid" + } + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/TranslatorText/stable/v1.0/examples/storage.json b/specification/cognitiveservices/data-plane/TranslatorText/stable/v1.0/examples/storage.json new file mode 100644 index 000000000000..d0739bb4a322 --- /dev/null +++ b/specification/cognitiveservices/data-plane/TranslatorText/stable/v1.0/examples/storage.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "api-version": "v1.0", + "subscriptionId": "EA19050C-51FC-4B55-84E5-9EA7283601DA", + "resourceGroupName": "TestResourceGroup", + "endpoint": "{endpoint}", + "Ocp-Apim-Subscription-Key": "{API key}" + }, + "responses": { + "429": { + "headers": {}, + "body": { + "error": { + "code": "RequestRateTooHigh", + "message": "User's request rate is too high", + "innerError": { + "code": "RateTooHigh", + "message": "Request rate is too high" + } + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "InternalServerError", + "message": "Internal Server Error", + "innerError": { + "code": "InternalServerError", + "message": "Unexpected internal server error has occurred" + } + } + } + }, + "503": { + "headers": {}, + "body": { + "error": { + "code": "ServiceUnavailable", + "message": "Service is temporary unavailable", + "innerError": { + "code": "ServiceTemporaryUnavailable", + "message": "Service is currently unavailable. Please try again later" + } + } + } + }, + "200": { + "headers": { + "retry-after": "30", + "ETag": "686897696a7c876b7e" + }, + "body": { + "value": [ + "AzureBlob" + ] + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/VideoSearch/readme.go.md b/specification/cognitiveservices/data-plane/VideoSearch/readme.go.md index c61ebf23aa63..ec355d39a83f 100644 --- a/specification/cognitiveservices/data-plane/VideoSearch/readme.go.md +++ b/specification/cognitiveservices/data-plane/VideoSearch/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: videosearch clear-output-folder: true ``` diff --git a/specification/cognitiveservices/data-plane/VisualSearch/readme.go.md b/specification/cognitiveservices/data-plane/VisualSearch/readme.go.md index f5241d4cf945..a3ce5d91a779 100644 --- a/specification/cognitiveservices/data-plane/VisualSearch/readme.go.md +++ b/specification/cognitiveservices/data-plane/VisualSearch/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: visualsearch clear-output-folder: true ``` diff --git a/specification/cognitiveservices/data-plane/WebSearch/readme.go.md b/specification/cognitiveservices/data-plane/WebSearch/readme.go.md index f610feae8594..273198c3586a 100644 --- a/specification/cognitiveservices/data-plane/WebSearch/readme.go.md +++ b/specification/cognitiveservices/data-plane/WebSearch/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: websearch clear-output-folder: true ``` diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/CheckSkuAvailability.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/CheckSkuAvailability.json index d8e7bd7b7cb7..5ff30f99d648 100644 --- a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/CheckSkuAvailability.json +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/CheckSkuAvailability.json @@ -5,7 +5,7 @@ "location": "westus", "parameters": { "skus": [ - "S0" + "S" ], "kind": "Face", "type": "Microsoft.CognitiveServices/accounts" diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/GetSkus.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/GetSkus.json index b44ab00bba73..1daed7ba8a3c 100644 --- a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/GetSkus.json +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/GetSkus.json @@ -329,47 +329,7 @@ }, { "resourceType": "accounts", - "name": "S0", - "tier": "Standard", - "kind": "TextAnalytics", - "locations": [ - "AUSTRALIAEAST" - ], - "restrictions": [] - }, - { - "resourceType": "accounts", - "name": "S1", - "tier": "Standard", - "kind": "TextAnalytics", - "locations": [ - "AUSTRALIAEAST" - ], - "restrictions": [] - }, - { - "resourceType": "accounts", - "name": "S2", - "tier": "Standard", - "kind": "TextAnalytics", - "locations": [ - "AUSTRALIAEAST" - ], - "restrictions": [] - }, - { - "resourceType": "accounts", - "name": "S3", - "tier": "Standard", - "kind": "TextAnalytics", - "locations": [ - "AUSTRALIAEAST" - ], - "restrictions": [] - }, - { - "resourceType": "accounts", - "name": "S4", + "name": "S", "tier": "Standard", "kind": "TextAnalytics", "locations": [ @@ -469,47 +429,7 @@ }, { "resourceType": "accounts", - "name": "S0", - "tier": "Standard", - "kind": "TextAnalytics", - "locations": [ - "BRAZILSOUTH" - ], - "restrictions": [] - }, - { - "resourceType": "accounts", - "name": "S1", - "tier": "Standard", - "kind": "TextAnalytics", - "locations": [ - "BRAZILSOUTH" - ], - "restrictions": [] - }, - { - "resourceType": "accounts", - "name": "S2", - "tier": "Standard", - "kind": "TextAnalytics", - "locations": [ - "BRAZILSOUTH" - ], - "restrictions": [] - }, - { - "resourceType": "accounts", - "name": "S3", - "tier": "Standard", - "kind": "TextAnalytics", - "locations": [ - "BRAZILSOUTH" - ], - "restrictions": [] - }, - { - "resourceType": "accounts", - "name": "S4", + "name": "S", "tier": "Standard", "kind": "TextAnalytics", "locations": [ @@ -589,47 +509,7 @@ }, { "resourceType": "accounts", - "name": "S0", - "tier": "Standard", - "kind": "TextAnalytics", - "locations": [ - "CENTRALUSEUAP" - ], - "restrictions": [] - }, - { - "resourceType": "accounts", - "name": "S1", - "tier": "Standard", - "kind": "TextAnalytics", - "locations": [ - "CENTRALUSEUAP" - ], - "restrictions": [] - }, - { - "resourceType": "accounts", - "name": "S2", - "tier": "Standard", - "kind": "TextAnalytics", - "locations": [ - "CENTRALUSEUAP" - ], - "restrictions": [] - }, - { - "resourceType": "accounts", - "name": "S3", - "tier": "Standard", - "kind": "TextAnalytics", - "locations": [ - "CENTRALUSEUAP" - ], - "restrictions": [] - }, - { - "resourceType": "accounts", - "name": "S4", + "name": "S", "tier": "Standard", "kind": "TextAnalytics", "locations": [ @@ -749,47 +629,7 @@ }, { "resourceType": "accounts", - "name": "S0", - "tier": "Standard", - "kind": "TextAnalytics", - "locations": [ - "WESTUS" - ], - "restrictions": [] - }, - { - "resourceType": "accounts", - "name": "S1", - "tier": "Standard", - "kind": "TextAnalytics", - "locations": [ - "WESTUS" - ], - "restrictions": [] - }, - { - "resourceType": "accounts", - "name": "S2", - "tier": "Standard", - "kind": "TextAnalytics", - "locations": [ - "WESTUS" - ], - "restrictions": [] - }, - { - "resourceType": "accounts", - "name": "S3", - "tier": "Standard", - "kind": "TextAnalytics", - "locations": [ - "WESTUS" - ], - "restrictions": [] - }, - { - "resourceType": "accounts", - "name": "S4", + "name": "S", "tier": "Standard", "kind": "TextAnalytics", "locations": [ @@ -929,47 +769,7 @@ }, { "resourceType": "accounts", - "name": "S0", - "tier": "Standard", - "kind": "TextAnalytics", - "locations": [ - "WESTUS2" - ], - "restrictions": [] - }, - { - "resourceType": "accounts", - "name": "S1", - "tier": "Standard", - "kind": "TextAnalytics", - "locations": [ - "WESTUS2" - ], - "restrictions": [] - }, - { - "resourceType": "accounts", - "name": "S2", - "tier": "Standard", - "kind": "TextAnalytics", - "locations": [ - "WESTUS2" - ], - "restrictions": [] - }, - { - "resourceType": "accounts", - "name": "S3", - "tier": "Standard", - "kind": "TextAnalytics", - "locations": [ - "WESTUS2" - ], - "restrictions": [] - }, - { - "resourceType": "accounts", - "name": "S4", + "name": "S", "tier": "Standard", "kind": "TextAnalytics", "locations": [ @@ -1089,7 +889,7 @@ }, { "resourceType": "accounts", - "name": "S0", + "name": "S", "tier": "Standard", "kind": "TextAnalytics", "locations": [ @@ -1099,41 +899,41 @@ }, { "resourceType": "accounts", - "name": "S1", - "tier": "Standard", - "kind": "TextAnalytics", + "name": "F0", + "tier": "Free", + "kind": "Face", "locations": [ - "WESTEUROPE" + "NORTHEUROPE" ], "restrictions": [] }, { "resourceType": "accounts", - "name": "S2", + "name": "S0", "tier": "Standard", - "kind": "TextAnalytics", + "kind": "Face", "locations": [ - "WESTEUROPE" + "NORTHEUROPE" ], "restrictions": [] }, { "resourceType": "accounts", - "name": "S3", - "tier": "Standard", - "kind": "TextAnalytics", + "name": "F0", + "tier": "Free", + "kind": "ComputerVision", "locations": [ - "WESTEUROPE" + "NORTHEUROPE" ], "restrictions": [] }, { "resourceType": "accounts", - "name": "S4", + "name": "S1", "tier": "Standard", - "kind": "TextAnalytics", + "kind": "ComputerVision", "locations": [ - "WESTEUROPE" + "NORTHEUROPE" ], "restrictions": [] }, @@ -1141,7 +941,7 @@ "resourceType": "accounts", "name": "F0", "tier": "Free", - "kind": "Face", + "kind": "ContentModerator", "locations": [ "NORTHEUROPE" ], @@ -1151,7 +951,7 @@ "resourceType": "accounts", "name": "S0", "tier": "Standard", - "kind": "Face", + "kind": "ContentModerator", "locations": [ "NORTHEUROPE" ], @@ -1161,7 +961,7 @@ "resourceType": "accounts", "name": "F0", "tier": "Free", - "kind": "ComputerVision", + "kind": "TextAnalytics", "locations": [ "NORTHEUROPE" ], @@ -1169,9 +969,9 @@ }, { "resourceType": "accounts", - "name": "S1", + "name": "S", "tier": "Standard", - "kind": "ComputerVision", + "kind": "TextAnalytics", "locations": [ "NORTHEUROPE" ], @@ -1181,7 +981,7 @@ "resourceType": "accounts", "name": "F0", "tier": "Free", - "kind": "ContentModerator", + "kind": "LUIS", "locations": [ "NORTHEUROPE" ], @@ -1191,7 +991,7 @@ "resourceType": "accounts", "name": "S0", "tier": "Standard", - "kind": "ContentModerator", + "kind": "LUIS", "locations": [ "NORTHEUROPE" ], @@ -1201,9 +1001,9 @@ "resourceType": "accounts", "name": "F0", "tier": "Free", - "kind": "TextAnalytics", + "kind": "Face", "locations": [ - "NORTHEUROPE" + "SOUTHEASTASIA" ], "restrictions": [] }, @@ -1211,89 +1011,9 @@ "resourceType": "accounts", "name": "S0", "tier": "Standard", - "kind": "TextAnalytics", + "kind": "Face", "locations": [ - "NORTHEUROPE" - ], - "restrictions": [] - }, - { - "resourceType": "accounts", - "name": "S1", - "tier": "Standard", - "kind": "TextAnalytics", - "locations": [ - "NORTHEUROPE" - ], - "restrictions": [] - }, - { - "resourceType": "accounts", - "name": "S2", - "tier": "Standard", - "kind": "TextAnalytics", - "locations": [ - "NORTHEUROPE" - ], - "restrictions": [] - }, - { - "resourceType": "accounts", - "name": "S3", - "tier": "Standard", - "kind": "TextAnalytics", - "locations": [ - "NORTHEUROPE" - ], - "restrictions": [] - }, - { - "resourceType": "accounts", - "name": "S4", - "tier": "Standard", - "kind": "TextAnalytics", - "locations": [ - "NORTHEUROPE" - ], - "restrictions": [] - }, - { - "resourceType": "accounts", - "name": "F0", - "tier": "Free", - "kind": "LUIS", - "locations": [ - "NORTHEUROPE" - ], - "restrictions": [] - }, - { - "resourceType": "accounts", - "name": "S0", - "tier": "Standard", - "kind": "LUIS", - "locations": [ - "NORTHEUROPE" - ], - "restrictions": [] - }, - { - "resourceType": "accounts", - "name": "F0", - "tier": "Free", - "kind": "Face", - "locations": [ - "SOUTHEASTASIA" - ], - "restrictions": [] - }, - { - "resourceType": "accounts", - "name": "S0", - "tier": "Standard", - "kind": "Face", - "locations": [ - "SOUTHEASTASIA" + "SOUTHEASTASIA" ], "restrictions": [] }, @@ -1369,47 +1089,7 @@ }, { "resourceType": "accounts", - "name": "S0", - "tier": "Standard", - "kind": "TextAnalytics", - "locations": [ - "SOUTHEASTASIA" - ], - "restrictions": [] - }, - { - "resourceType": "accounts", - "name": "S1", - "tier": "Standard", - "kind": "TextAnalytics", - "locations": [ - "SOUTHEASTASIA" - ], - "restrictions": [] - }, - { - "resourceType": "accounts", - "name": "S2", - "tier": "Standard", - "kind": "TextAnalytics", - "locations": [ - "SOUTHEASTASIA" - ], - "restrictions": [] - }, - { - "resourceType": "accounts", - "name": "S3", - "tier": "Standard", - "kind": "TextAnalytics", - "locations": [ - "SOUTHEASTASIA" - ], - "restrictions": [] - }, - { - "resourceType": "accounts", - "name": "S4", + "name": "S", "tier": "Standard", "kind": "TextAnalytics", "locations": [ @@ -1489,47 +1169,7 @@ }, { "resourceType": "accounts", - "name": "S0", - "tier": "Standard", - "kind": "TextAnalytics", - "locations": [ - "EASTASIA" - ], - "restrictions": [] - }, - { - "resourceType": "accounts", - "name": "S1", - "tier": "Standard", - "kind": "TextAnalytics", - "locations": [ - "EASTASIA" - ], - "restrictions": [] - }, - { - "resourceType": "accounts", - "name": "S2", - "tier": "Standard", - "kind": "TextAnalytics", - "locations": [ - "EASTASIA" - ], - "restrictions": [] - }, - { - "resourceType": "accounts", - "name": "S3", - "tier": "Standard", - "kind": "TextAnalytics", - "locations": [ - "EASTASIA" - ], - "restrictions": [] - }, - { - "resourceType": "accounts", - "name": "S4", + "name": "S", "tier": "Standard", "kind": "TextAnalytics", "locations": [ @@ -1649,47 +1289,7 @@ }, { "resourceType": "accounts", - "name": "S0", - "tier": "Standard", - "kind": "TextAnalytics", - "locations": [ - "WESTCENTRALUS" - ], - "restrictions": [] - }, - { - "resourceType": "accounts", - "name": "S1", - "tier": "Standard", - "kind": "TextAnalytics", - "locations": [ - "WESTCENTRALUS" - ], - "restrictions": [] - }, - { - "resourceType": "accounts", - "name": "S2", - "tier": "Standard", - "kind": "TextAnalytics", - "locations": [ - "WESTCENTRALUS" - ], - "restrictions": [] - }, - { - "resourceType": "accounts", - "name": "S3", - "tier": "Standard", - "kind": "TextAnalytics", - "locations": [ - "WESTCENTRALUS" - ], - "restrictions": [] - }, - { - "resourceType": "accounts", - "name": "S4", + "name": "S", "tier": "Standard", "kind": "TextAnalytics", "locations": [ @@ -1769,47 +1369,7 @@ }, { "resourceType": "accounts", - "name": "S0", - "tier": "Standard", - "kind": "TextAnalytics", - "locations": [ - "SOUTHCENTRALUS" - ], - "restrictions": [] - }, - { - "resourceType": "accounts", - "name": "S1", - "tier": "Standard", - "kind": "TextAnalytics", - "locations": [ - "SOUTHCENTRALUS" - ], - "restrictions": [] - }, - { - "resourceType": "accounts", - "name": "S2", - "tier": "Standard", - "kind": "TextAnalytics", - "locations": [ - "SOUTHCENTRALUS" - ], - "restrictions": [] - }, - { - "resourceType": "accounts", - "name": "S3", - "tier": "Standard", - "kind": "TextAnalytics", - "locations": [ - "SOUTHCENTRALUS" - ], - "restrictions": [] - }, - { - "resourceType": "accounts", - "name": "S4", + "name": "S", "tier": "Standard", "kind": "TextAnalytics", "locations": [ @@ -1949,7 +1509,7 @@ }, { "resourceType": "accounts", - "name": "S0", + "name": "S", "tier": "Standard", "kind": "TextAnalytics", "locations": [ @@ -1957,56 +1517,6 @@ ], "restrictions": [] }, - { - "resourceType": "accounts", - "name": "S1", - "tier": "Standard", - "kind": "TextAnalytics", - "locations": [ - "EASTUS" - ], - "restrictions": [] - }, - { - "resourceType": "accounts", - "name": "S2", - "tier": "Standard", - "kind": "TextAnalytics", - "locations": [ - "EASTUS" - ], - "restrictions": [] - }, - { - "resourceType": "accounts", - "name": "S3", - "tier": "Standard", - "kind": "TextAnalytics", - "locations": [ - "EASTUS" - ], - "restrictions": [] - }, - { - "resourceType": "accounts", - "name": "S4", - "tier": "Standard", - "kind": "TextAnalytics", - "locations": [ - "EASTUS" - ], - "restrictions": [] - }, - { - "resourceType": "accounts", - "name": "F0", - "tier": "Free", - "kind": "LUIS", - "locations": [ - "EASTUS" - ], - "restrictions": [] - }, { "resourceType": "accounts", "name": "S0", @@ -2109,47 +1619,7 @@ }, { "resourceType": "accounts", - "name": "S0", - "tier": "Standard", - "kind": "TextAnalytics", - "locations": [ - "EASTUS2" - ], - "restrictions": [] - }, - { - "resourceType": "accounts", - "name": "S1", - "tier": "Standard", - "kind": "TextAnalytics", - "locations": [ - "EASTUS2" - ], - "restrictions": [] - }, - { - "resourceType": "accounts", - "name": "S2", - "tier": "Standard", - "kind": "TextAnalytics", - "locations": [ - "EASTUS2" - ], - "restrictions": [] - }, - { - "resourceType": "accounts", - "name": "S3", - "tier": "Standard", - "kind": "TextAnalytics", - "locations": [ - "EASTUS2" - ], - "restrictions": [] - }, - { - "resourceType": "accounts", - "name": "S4", + "name": "S", "tier": "Standard", "kind": "TextAnalytics", "locations": [ diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/cognitiveservices.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/cognitiveservices.json new file mode 100644 index 000000000000..93a179e56746 --- /dev/null +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/cognitiveservices.json @@ -0,0 +1,2166 @@ +{ + "swagger": "2.0", + "info": { + "title": "CognitiveServicesManagementClient", + "description": "Cognitive Services Management Client", + "version": "2021-04-30" + }, + "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.CognitiveServices/accounts/{accountName}": { + "put": { + "tags": [ + "CognitiveServicesAccounts" + ], + "description": "Create Cognitive Services Account. Accounts is a resource group wide resource type. It holds the keys for developer to access intelligent APIs. It's also the resource type for billing.", + "operationId": "Accounts_Create", + "x-ms-examples": { + "Create Account": { + "$ref": "./examples/CreateAccount.json" + }, + "Create Account Min": { + "$ref": "./examples/CreateAccountMin.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "name": "account", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Account" + }, + "description": "The parameters to provide for the created account." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "If resource is created successfully or already existed, the service should return 200 (OK).", + "schema": { + "$ref": "#/definitions/Account" + } + }, + "201": { + "description": "If resource is created successfully, the service should return 201 (OK).", + "schema": { + "$ref": "#/definitions/Account" + } + }, + "202": { + "description": "HTTP 202 (Accepted) if the operation was successfully started and will complete asynchronously.", + "schema": { + "$ref": "#/definitions/Account" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "CognitiveServicesAccounts" + ], + "description": "Updates a Cognitive Services account", + "operationId": "Accounts_Update", + "x-ms-examples": { + "Update Account": { + "$ref": "./examples/UpdateAccount.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "name": "account", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Account" + }, + "description": "The parameters to provide for the created account." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The resource provider should return 200 (OK) to indicate that the operation completed successfully. ", + "schema": { + "$ref": "#/definitions/Account" + } + }, + "202": { + "description": "HTTP 202 (Accepted) if the operation was successfully started and will complete asynchronously.", + "schema": { + "$ref": "#/definitions/Account" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the resource group *or* resource does not exist, 404 (NotFound) should be returned.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "CognitiveServicesAccounts" + ], + "description": "Deletes a Cognitive Services account from the resource group. ", + "operationId": "Accounts_Delete", + "x-ms-examples": { + "Delete Account": { + "$ref": "./examples/DeleteAccount.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A 200 (OK) should be returned if the object exists and was deleted successfully;" + }, + "202": { + "description": "HTTP 202 (Accepted) if the operation was successfully started and will complete asynchronously." + }, + "204": { + "description": "a 204 (NoContent) should be used if the resource does not exist and the request is well formed." + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "CognitiveServicesAccounts" + ], + "description": "Returns a Cognitive Services account specified by the parameters.", + "operationId": "Accounts_Get", + "x-ms-examples": { + "Get Account": { + "$ref": "./examples/GetAccount.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The resource provider should return 200 (OK) to indicate that the operation completed successfully.\nFor a detailed explanation of each field in the response body, please refer to the request body description in the PUT resource section. The only GET specific properties are \"name,\" \"type\" and \"id.\"\nField\tDescription\nKind\trequired. String.\n\tThe API set for this API account. It can be \n\t· a single API, for example: Face API, Vision API, Speech API. \n\ta bundle of APIs: Face + Speech, Vision + Emotion, etc.\nsku.name\tRequired.\n\tThe pricing tier/plan of this API. Could be: \n\tF0 - Free\n\tB0 - Basic\n\tS0 - Standard\n\tP0 - Premium\n", + "schema": { + "$ref": "#/definitions/Account" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the resource does not exist, 404 (NotFound) should be returned.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.CognitiveServices/locations/{location}/resourceGroups/{resourceGroupName}/deletedAccounts/{accountName}": { + "get": { + "tags": [ + "CognitiveServicesAccounts" + ], + "description": "Returns a Cognitive Services account specified by the parameters.", + "operationId": "DeletedAccounts_Get", + "x-ms-examples": { + "Get Account": { + "$ref": "./examples/GetDeletedAccount.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/locationParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The resource provider should return 200 (OK) to indicate that the operation completed successfully.\nFor a detailed explanation of each field in the response body, please refer to the request body description in the PUT resource section. The only GET specific properties are \"name,\" \"type\" and \"id.\"\nField\tDescription\nKind\trequired. String.\n\tThe API set for this API account. It can be \n\t· a single API, for example: Face API, Vision API, Speech API. \n\ta bundle of APIs: Face + Speech, Vision + Emotion, etc.\nsku.name\tRequired.\n\tThe pricing tier/plan of this API. Could be: \n\tF0 - Free\n\tB0 - Basic\n\tS0 - Standard\n\tP0 - Premium\n", + "schema": { + "$ref": "#/definitions/Account" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the resource does not exist, 404 (NotFound) should be returned.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "CognitiveServicesAccounts" + ], + "description": "Deletes a Cognitive Services account from the resource group. ", + "operationId": "DeletedAccounts_Purge", + "x-ms-examples": { + "Delete Account": { + "$ref": "./examples/PurgeDeletedAccount.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/locationParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A 200 (OK) should be returned if the object exists and was deleted successfully;" + }, + "202": { + "description": "HTTP 202 (Accepted) if the operation was successfully started and will complete asynchronously." + }, + "204": { + "description": "a 204 (NoContent) should be used if the resource does not exist and the request is well formed." + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CognitiveServices/accounts": { + "get": { + "tags": [ + "CognitiveServicesAccounts" + ], + "description": "Returns all the resources of a particular type belonging to a resource group", + "operationId": "Accounts_ListByResourceGroup", + "x-ms-examples": { + "List Accounts by Resource Group": { + "$ref": "./examples/ListAccountsByResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The resource provider should return 200 (OK) to indicate that the operation completed successfully. For other errors (e.g. internal errors) use the appropriate HTTP error code.\nThe nextLink field is expected to point to the URL the client should use to fetch the next page (per server side paging). This matches the OData guidelines for paged responses here. If a resource provider does not support paging, it should return the same body (JSON object with \"value\" property) but omit nextLink entirely (or set to null, *not* empty string) for future compatibility.\nThe nextLink should be implemented using following query parameters:\n· skipToken: opaque token that allows the resource provider to skip resources already enumerated. This value is defined and returned by the RP after first request via nextLink.\n· top: the optional client query parameter which defines the maximum number of records to be returned by the server.\nImplementation details:\n· NextLink may include all the query parameters (specifically OData $filter) used by the client in the first query. \n· Server may return less records than requested with nextLink. Returning zero records with NextLink is an acceptable response. \nClients must fetch records until the nextLink is not returned back / null. Clients should never rely on number of returned records to determinate if pagination is completed.", + "schema": { + "$ref": "#/definitions/AccountListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the resource group does not exist, 404 (NotFound) will be returned.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.CognitiveServices/accounts": { + "get": { + "tags": [ + "CognitiveServicesAccounts" + ], + "description": "Returns all the resources of a particular type belonging to a subscription.", + "operationId": "Accounts_List", + "x-ms-examples": { + "List Accounts by Subscription": { + "$ref": "./examples/ListAccountsBySubscription.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The resource provider should return 200 (OK) to indicate that the operation completed successfully. For other errors (e.g. internal errors) use the appropriate HTTP error code.\nThe nextLink field is expected to point to the URL the client should use to fetch the next page (per server side paging). This matches the OData guidelines for paged responses. If a resource provider does not support paging, it should return the same body but leave nextLink empty for future compatibility.\nFor a detailed explanation of each field in the response body, please refer to the request body description in the PUT resource section. ", + "schema": { + "$ref": "#/definitions/AccountListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.CognitiveServices/deletedAccounts": { + "get": { + "tags": [ + "CognitiveServicesAccounts" + ], + "description": "Returns all the resources of a particular type belonging to a subscription.", + "operationId": "DeletedAccounts_List", + "x-ms-examples": { + "List Deleted Accounts by Subscription": { + "$ref": "./examples/ListAccountsBySubscription.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The resource provider should return 200 (OK) to indicate that the operation completed successfully. For other errors (e.g. internal errors) use the appropriate HTTP error code.\nThe nextLink field is expected to point to the URL the client should use to fetch the next page (per server side paging). This matches the OData guidelines for paged responses. If a resource provider does not support paging, it should return the same body but leave nextLink empty for future compatibility.\nFor a detailed explanation of each field in the response body, please refer to the request body description in the PUT resource section. ", + "schema": { + "$ref": "#/definitions/AccountListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CognitiveServices/accounts/{accountName}/listKeys": { + "post": { + "tags": [ + "CognitiveServicesAccounts" + ], + "operationId": "Accounts_ListKeys", + "description": "Lists the account keys for the specified Cognitive Services account.", + "x-ms-examples": { + "List Keys": { + "$ref": "./examples/ListKeys.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Returns with a response body containing the subscription keys for the resource: key1\nThe first API key for authentication when client calls the API endpoint.\n\nkey2\nThe second API key for authentication when client calls the API endpoint.", + "schema": { + "$ref": "#/definitions/ApiKeys" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CognitiveServices/accounts/{accountName}/regenerateKey": { + "post": { + "tags": [ + "CognitiveServicesAccounts" + ], + "operationId": "Accounts_RegenerateKey", + "description": "Regenerates the specified account key for the specified Cognitive Services account.", + "x-ms-examples": { + "Regenerate Keys": { + "$ref": "./examples/RegenerateKey.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/RegenerateKeyParameters" + }, + "description": "regenerate key parameters." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/ApiKeys" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.CognitiveServices/skus": { + "get": { + "tags": [ + "Skus", + "CognitiveServicesAccounts" + ], + "operationId": "ResourceSkus_List", + "description": "Gets the list of Microsoft.CognitiveServices SKUs available for your Subscription.", + "x-ms-examples": { + "Regenerate Keys": { + "$ref": "./examples/GetSkus.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ResourceSkuListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CognitiveServices/accounts/{accountName}/skus": { + "get": { + "tags": [ + "CognitiveServicesAccounts" + ], + "description": "List available SKUs for the requested Cognitive Services account", + "x-ms-examples": { + "List SKUs": { + "$ref": "./examples/ListSkus.json" + } + }, + "operationId": "Accounts_ListSkus", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The resource provider should return 200 (OK) to indicate that the operation completed successfully.\nFor a detailed explanation of each field in the response body, please refer to the request body description in the PUT resource section. The only GET specific properties are \"name,\" \"type\" and \"id.\"\nField\tDescription\nsku\tRequired, object\n\tThe exact set of keys that define this sku. This matches the fields on the respective resource.\nsku.name\tRequired, string\n\tThe name of the SKU. This is typically a letter + number code, such as A0 or P3\nsku.tier\tRequired, string\n\tThe tier of this particular SKU. Typically one of:\n\t· Free\n\t· Basic\n\t· Standard\n\t· Premium\n", + "schema": { + "$ref": "#/definitions/AccountSkuListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the resource does not exist, 404 (NotFound) will be returned.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/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_ListUsages", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/usageFilterParameter" + } + ], + "responses": { + "200": { + "description": "The usages for Cognitive Services account were retrieved successfully.", + "schema": { + "$ref": "#/definitions/UsageListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the resource does not exist, 404 (NotFound) will be returned.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.CognitiveServices/operations": { + "get": { + "tags": [ + "Operations" + ], + "description": "Lists all the available Cognitive Services account operations.", + "operationId": "Operations_List", + "x-ms-examples": { + "Get Operations": { + "$ref": "./examples/GetOperations.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.CognitiveServices/locations/{location}/checkSkuAvailability": { + "post": { + "tags": [ + "CognitiveServicesAccounts" + ], + "operationId": "CheckSkuAvailability", + "description": "Check available SKUs.", + "x-ms-examples": { + "Check SKU Availability": { + "$ref": "./examples/CheckSkuAvailability.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/locationParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/CheckSkuAvailabilityParameter" + }, + "description": "Check SKU Availability POST body." + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/SkuAvailabilityListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.CognitiveServices/checkDomainAvailability": { + "post": { + "tags": [ + "CognitiveServicesAccounts" + ], + "operationId": "CheckDomainAvailability", + "description": "Check whether a domain is available.", + "x-ms-examples": { + "Check SKU Availability": { + "$ref": "./examples/CheckDomainAvailability.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/CheckDomainAvailabilityParameter" + }, + "description": "Check Domain Availability parameter." + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/DomainAvailability" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CognitiveServices/accounts/{accountName}/privateEndpointConnections": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_List", + "description": "Gets the private endpoint connections associated with the Cognitive Services account.", + "x-ms-examples": { + "GetPrivateEndpointConnection": { + "$ref": "./examples/ListPrivateEndpointConnections.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private endpoint connections.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CognitiveServices/accounts/{accountName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Get", + "description": "Gets the specified private endpoint connection associated with the Cognitive Services account.", + "x-ms-examples": { + "GetPrivateEndpointConnection": { + "$ref": "./examples/GetPrivateEndpointConnection.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/privateEndpointConnectionNameParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Get the private endpoint connection properties successfully.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_CreateOrUpdate", + "description": "Update the state of specified private endpoint connection associated with the Cognitive Services account.", + "x-ms-examples": { + "PutPrivateEndpointConnection": { + "$ref": "./examples/PutPrivateEndpointConnection.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/privateEndpointConnectionNameParameter" + }, + { + "name": "properties", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "The private endpoint connection properties." + } + ], + "responses": { + "200": { + "description": "OK -- Update the private endpoint connection properties successfully.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "202": { + "description": "HTTP 202 (Accepted) if the operation was successfully started and will complete asynchronously.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Delete", + "description": "Deletes the specified private endpoint connection associated with the Cognitive Services account.", + "x-ms-examples": { + "DeletePrivateEndpointConnection": { + "$ref": "./examples/DeletePrivateEndpointConnection.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/privateEndpointConnectionNameParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Delete the private endpoint connection successfully." + }, + "202": { + "description": "Accepted -- the operation was successfully started and will complete asynchronously." + }, + "204": { + "description": "No Content -- The private endpoint connection does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CognitiveServices/accounts/{accountName}/privateLinkResources": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "operationId": "PrivateLinkResources_List", + "description": "Gets the private link resources that need to be created for a Cognitive Services account.", + "x-ms-examples": { + "ListPrivateLinkResources": { + "$ref": "./examples/ListPrivateLinkResources.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private link resources.", + "schema": { + "$ref": "#/definitions/PrivateLinkResourceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "Kind": { + "type": "string", + "description": "The kind (type) of cognitive service account." + }, + "Sku": { + "description": "The resource model definition representing SKU", + "properties": { + "name": { + "type": "string", + "description": "The name of the SKU. Ex - P3. It is typically a letter+number code" + }, + "tier": { + "type": "string", + "enum": [ + "Free", + "Basic", + "Standard", + "Premium", + "Enterprise" + ], + "x-ms-enum": { + "name": "SkuTier", + "modelAsString": true + }, + "description": "This field is required to be implemented by the Resource Provider if the service has more than one tier, but is not required on a PUT." + }, + "size": { + "type": "string", + "description": "The SKU size. When the name field is the combination of tier and some other value, this would be the standalone code. " + }, + "family": { + "type": "string", + "description": "If the service has different generations of hardware, for the same SKU, then that can be captured here." + }, + "capacity": { + "type": "integer", + "format": "int32", + "description": "If the SKU supports scale out/in then the capacity integer should be included. If scale out/in is not possible for the resource this may be omitted." + } + }, + "required": [ + "name" + ] + }, + "SkuName": { + "type": "string", + "description": "The name of SKU." + }, + "Account": { + "description": "Cognitive Services account is an Azure resource representing the provisioned account, it's type, location and SKU.", + "type": "object", + "properties": { + "kind": { + "$ref": "#/definitions/Kind", + "description": "The Kind of the resource." + }, + "sku": { + "$ref": "#/definitions/Sku" + }, + "identity": { + "$ref": "#/definitions/Identity" + }, + "systemData": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData", + "readOnly": true + }, + "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" + }, + "properties": { + "$ref": "#/definitions/AccountProperties", + "description": "Properties of Cognitive Services account." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/AzureEntityResource" + } + ] + }, + "AccountListResult": { + "type": "object", + "properties": { + "nextLink": { + "description": "The link used to get the next page of accounts.", + "type": "string" + }, + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Account" + }, + "description": "Gets the list of Cognitive Services accounts and their properties." + } + }, + "description": "The list of cognitive services accounts operation response." + }, + "AccountProperties": { + "type": "object", + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "Gets the status of the cognitive services account at the time the operation was called.", + "enum": [ + "Accepted", + "Creating", + "Deleting", + "Moving", + "Failed", + "Succeeded", + "ResolvingDNS" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "endpoint": { + "type": "string", + "description": "Endpoint of the created account.", + "readOnly": true + }, + "internalId": { + "type": "string", + "description": "The internal identifier (deprecated, do not use this property).", + "readOnly": true + }, + "capabilities": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SkuCapability" + }, + "description": "Gets the capabilities of the cognitive services account. Each item indicates the capability of a specific feature. The values are read-only and for reference only." + }, + "isMigrated": { + "type": "boolean", + "description": "If the resource is migrated from an existing key.", + "readOnly": true + }, + "migrationToken": { + "type": "string", + "description": "Resource migration token." + }, + "skuChangeInfo": { + "$ref": "#/definitions/SkuChangeInfo", + "description": "Sku change info of account.", + "readOnly": true + }, + "customSubDomainName": { + "type": "string", + "description": "Optional subdomain name used for token-based authentication." + }, + "networkAcls": { + "$ref": "#/definitions/NetworkRuleSet", + "description": "A collection of rules governing the accessibility from specific network locations." + }, + "encryption": { + "$ref": "#/definitions/Encryption", + "description": "The encryption properties for this resource." + }, + "userOwnedStorage": { + "type": "array", + "items": { + "$ref": "#/definitions/UserOwnedStorage" + }, + "description": "The storage accounts for this resource." + }, + "privateEndpointConnections": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "The private endpoint connection associated with the Cognitive Services account." + }, + "publicNetworkAccess": { + "type": "string", + "description": "Whether or not public endpoint access is allowed for this account. Value is optional but if passed in, must be 'Enabled' or 'Disabled'", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "PublicNetworkAccess", + "modelAsString": true + } + }, + "apiProperties": { + "$ref": "#/definitions/ApiProperties", + "description": "The api properties for special APIs." + }, + "dateCreated": { + "readOnly": true, + "type": "string", + "description": "Gets the date of cognitive services account creation." + }, + "callRateLimit": { + "readOnly": true, + "$ref": "#/definitions/CallRateLimit" + }, + "quotaLimit": { + "readOnly": true, + "$ref": "#/definitions/QuotaLimit" + }, + "restrictOutboundNetworkAccess": { + "type": "boolean" + }, + "allowedFqdnList": { + "type": "array", + "items": { + "type": "string" + } + }, + "disableLocalAuth": { + "type": "boolean" + }, + "endpoints": { + "readOnly": true, + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "restore": { + "type": "boolean" + } + }, + "description": "Properties of Cognitive Services account." + }, + "ApiProperties": { + "type": "object", + "additionalProperties": { + "type": "object" + }, + "properties": { + "qnaRuntimeEndpoint": { + "type": "string", + "description": "(QnAMaker Only) The runtime endpoint of QnAMaker." + }, + "qnaAzureSearchEndpointKey": { + "type": "string", + "description": "(QnAMaker Only) The Azure Search endpoint key of QnAMaker." + }, + "qnaAzureSearchEndpointId": { + "type": "string", + "description": "(QnAMaker Only) The Azure Search endpoint id of QnAMaker." + }, + "statisticsEnabled": { + "type": "boolean", + "description": "(Bing Search Only) The flag to enable statistics of Bing Search." + }, + "eventHubConnectionString": { + "type": "string", + "description": "(Personalization Only) The flag to enable statistics of Bing Search.", + "pattern": "^( *)Endpoint=sb://(.*);( *)SharedAccessKeyName=(.*);( *)SharedAccessKey=(.*)$", + "maxLength": 1000 + }, + "storageAccountConnectionString": { + "type": "string", + "description": "(Personalization Only) The storage account connection string.", + "pattern": "^(( *)DefaultEndpointsProtocol=(http|https)( *);( *))?AccountName=(.*)AccountKey=(.*)EndpointSuffix=(.*)$", + "maxLength": 1000 + }, + "aadClientId": { + "type": "string", + "description": "(Metrics Advisor Only) The Azure AD Client Id (Application Id).", + "maxLength": 500 + }, + "aadTenantId": { + "type": "string", + "description": "(Metrics Advisor Only) The Azure AD Tenant Id.", + "maxLength": 500 + }, + "superUser": { + "type": "string", + "description": "(Metrics Advisor Only) The super user of Metrics Advisor.", + "maxLength": 500 + }, + "websiteName": { + "type": "string", + "description": "(Metrics Advisor Only) The website name of Metrics Advisor.", + "maxLength": 500 + } + }, + "description": "The api properties for special APIs." + }, + "CallRateLimit": { + "type": "object", + "properties": { + "count": { + "type": "number", + "description": "The count value of Call Rate Limit." + }, + "renewalPeriod": { + "type": "number", + "description": "The renewal period in seconds of Call Rate Limit." + }, + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/ThrottlingRule" + } + } + }, + "description": "The call rate limit Cognitive Services account." + }, + "QuotaLimit": { + "type": "object", + "properties": { + "count": { + "type": "number" + }, + "renewalPeriod": { + "type": "number" + }, + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/ThrottlingRule" + } + } + } + }, + "ThrottlingRule": { + "type": "object", + "properties": { + "key": { + "type": "string" + }, + "renewalPeriod": { + "type": "number" + }, + "count": { + "type": "number" + }, + "minCount": { + "type": "number" + }, + "dynamicThrottlingEnabled": { + "type": "boolean" + }, + "matchPatterns": { + "type": "array", + "items": { + "$ref": "#/definitions/RequestMatchPattern" + } + } + } + }, + "RequestMatchPattern": { + "type": "object", + "properties": { + "path": { + "type": "string" + }, + "method": { + "type": "string" + } + } + }, + "ApiKeys": { + "type": "object", + "properties": { + "key1": { + "type": "string", + "description": "Gets the value of key 1." + }, + "key2": { + "type": "string", + "description": "Gets the value of key 2." + } + }, + "description": "The access keys for the cognitive services account." + }, + "SkuChangeInfo": { + "type": "object", + "properties": { + "countOfDowngrades": { + "type": "number", + "description": "Gets the count of downgrades." + }, + "countOfUpgradesAfterDowngrades": { + "type": "number", + "description": "Gets the count of upgrades after downgrades." + }, + "lastChangeDate": { + "type": "string", + "description": "Gets the last change date." + } + }, + "description": "Sku change info of account." + }, + "RegenerateKeyParameters": { + "type": "object", + "properties": { + "keyName": { + "type": "string", + "description": "key name to generate (Key1|Key2)", + "enum": [ + "Key1", + "Key2" + ], + "x-ms-enum": { + "name": "KeyName", + "modelAsString": false + } + } + }, + "required": [ + "keyName" + ], + "description": "Regenerate key parameters." + }, + "AccountSkuListResult": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AccountSku" + }, + "description": "Gets the list of Cognitive Services accounts and their properties." + } + }, + "description": "The list of cognitive services accounts operation response." + }, + "AccountSku": { + "type": "object", + "properties": { + "resourceType": { + "type": "string", + "description": "Resource Namespace and Type" + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "The SKU of Cognitive Services account." + } + }, + "description": "Cognitive Services resource type and SKU." + }, + "UsageListResult": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Usage" + }, + "description": "The list of usages for Cognitive Service account." + } + }, + "description": "The response to a list usage request." + }, + "Usage": { + "type": "object", + "properties": { + "unit": { + "description": "The unit of the metric.", + "$ref": "#/definitions/UnitType" + }, + "name": { + "$ref": "#/definitions/MetricName", + "description": "The name information for the metric." + }, + "quotaPeriod": { + "type": "string", + "description": "The quota period used to summarize the usage values." + }, + "limit": { + "type": "number", + "format": "double", + "description": "Maximum value for this metric." + }, + "currentValue": { + "type": "number", + "format": "double", + "description": "Current value for this metric." + }, + "nextResetTime": { + "type": "string", + "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": { + "type": "object", + "properties": { + "value": { + "type": "string", + "description": "The name of the metric." + }, + "localizedValue": { + "type": "string", + "description": "The friendly name of the metric." + } + }, + "description": "A metric name." + }, + "UnitType": { + "type": "string", + "description": "The unit of the metric.", + "enum": [ + "Count", + "Bytes", + "Seconds", + "Percent", + "CountPerSecond", + "BytesPerSecond", + "Milliseconds" + ], + "x-ms-enum": { + "modelAsString": true, + "name": "UnitType" + } + }, + "CheckSkuAvailabilityParameter": { + "type": "object", + "description": "Check SKU availability parameter.", + "properties": { + "skus": { + "type": "array", + "items": { + "$ref": "#/definitions/SkuName" + }, + "description": "The SKU of the resource." + }, + "kind": { + "$ref": "#/definitions/Kind", + "description": "The Kind of the resource." + }, + "type": { + "type": "string", + "description": "The Type of the resource." + } + }, + "required": [ + "skus", + "kind", + "type" + ] + }, + "SkuAvailabilityListResult": { + "type": "object", + "description": "Check SKU availability result list.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SkuAvailability" + }, + "description": "Check SKU availability result list." + } + } + }, + "SkuAvailability": { + "type": "object", + "description": "SKU availability.", + "properties": { + "kind": { + "$ref": "#/definitions/Kind", + "description": "The Kind of the resource." + }, + "type": { + "type": "string", + "description": "The Type of the resource." + }, + "skuName": { + "$ref": "#/definitions/SkuName", + "description": "The SKU of Cognitive Services account." + }, + "skuAvailable": { + "type": "boolean", + "description": "Indicates the given SKU is available or not." + }, + "reason": { + "type": "string", + "description": "Reason why the SKU is not available." + }, + "message": { + "type": "string", + "description": "Additional error message." + } + } + }, + "SkuCapability": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the SkuCapability." + }, + "value": { + "type": "string", + "description": "The value of the SkuCapability." + } + }, + "description": "SkuCapability indicates the capability of a certain feature." + }, + "CheckDomainAvailabilityParameter": { + "type": "object", + "description": "Check Domain availability parameter.", + "properties": { + "subdomainName": { + "type": "string", + "description": "The subdomain name to use." + }, + "type": { + "type": "string", + "description": "The Type of the resource." + } + }, + "required": [ + "subdomainName", + "type" + ] + }, + "DomainAvailability": { + "type": "object", + "description": "Domain availability.", + "properties": { + "isSubdomainAvailable": { + "type": "boolean", + "description": "Indicates the given SKU is available or not." + }, + "reason": { + "type": "string", + "description": "Reason why the SKU is not available." + }, + "subdomainName": { + "type": "string", + "description": "The subdomain name to use." + }, + "type": { + "type": "string", + "description": "The Type of the resource." + } + } + }, + "ResourceSkuRestrictions": { + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "The type of restrictions.", + "enum": [ + "Location", + "Zone" + ], + "x-ms-enum": { + "name": "ResourceSkuRestrictionsType", + "modelAsString": false + } + }, + "values": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The value of restrictions. If the restriction type is set to location. This would be different locations where the SKU is restricted." + }, + "restrictionInfo": { + "$ref": "#/definitions/ResourceSkuRestrictionInfo", + "description": "The information about the restriction where the SKU cannot be used." + }, + "reasonCode": { + "type": "string", + "description": "The reason for restriction.", + "enum": [ + "QuotaId", + "NotAvailableForSubscription" + ], + "x-ms-enum": { + "name": "ResourceSkuRestrictionsReasonCode", + "modelAsString": true + } + } + }, + "description": "Describes restrictions of a SKU." + }, + "ResourceSku": { + "type": "object", + "properties": { + "resourceType": { + "type": "string", + "description": "The type of resource the SKU applies to." + }, + "name": { + "type": "string", + "description": "The name of SKU." + }, + "tier": { + "type": "string", + "description": "Specifies the tier of Cognitive Services account." + }, + "kind": { + "type": "string", + "description": "The Kind of resources that are supported in this SKU." + }, + "locations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The set of locations that the SKU is available." + }, + "restrictions": { + "type": "array", + "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 Cognitive Services SKU." + }, + "ResourceSkuRestrictionInfo": { + "type": "object", + "properties": { + "locations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Locations where the SKU is restricted" + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of availability zones where the SKU is restricted." + } + } + }, + "ResourceSkuListResult": { + "type": "object", + "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 Skus." + } + }, + "required": [ + "value" + ], + "description": "The Get Skus operation response." + }, + "NetworkRuleSet": { + "type": "object", + "properties": { + "defaultAction": { + "type": "string", + "description": "The default action when no rule from ipRules and from virtualNetworkRules match. This is only used after the bypass property has been evaluated.", + "enum": [ + "Allow", + "Deny" + ], + "x-ms-enum": { + "name": "NetworkRuleAction", + "modelAsString": true + } + }, + "ipRules": { + "type": "array", + "items": { + "$ref": "#/definitions/IpRule" + }, + "description": "The list of IP address rules." + }, + "virtualNetworkRules": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkRule" + }, + "description": "The list of virtual network rules." + } + }, + "description": "A set of rules governing the network accessibility." + }, + "IpRule": { + "type": "object", + "properties": { + "value": { + "type": "string", + "description": "An IPv4 address range in CIDR notation, such as '124.56.78.91' (simple IP address) or '124.56.78.0/24' (all addresses that start with 124.56.78)." + } + }, + "required": [ + "value" + ], + "description": "A rule governing the accessibility from a specific ip address or ip range." + }, + "VirtualNetworkRule": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Full resource id of a vnet subnet, such as '/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1'." + }, + "state": { + "type": "string", + "description": "Gets the state of virtual network rule." + }, + "ignoreMissingVnetServiceEndpoint": { + "type": "boolean", + "description": "Ignore missing vnet service endpoint or not." + } + }, + "required": [ + "id" + ], + "description": "A rule governing the accessibility from a specific virtual network." + }, + "Identity": { + "type": "object", + "description": "Identity for the resource.", + "properties": { + "type": { + "type": "string", + "description": "The identity type.", + "enum": [ + "None", + "SystemAssigned", + "UserAssigned", + "SystemAssigned, UserAssigned" + ], + "x-ms-enum": { + "name": "ResourceIdentityType", + "modelAsString": false + } + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant ID of resource." + }, + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal ID of resource identity." + }, + "userAssignedIdentities": { + "description": "The list of user assigned identities associated with the resource. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}", + "type": "object", + "additionalProperties": { + "description": "User-assigned managed identity.", + "$ref": "#/definitions/UserAssignedIdentity" + } + } + } + }, + "UserAssignedIdentity": { + "type": "object", + "description": "User-assigned managed identity.", + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "Azure Active Directory principal ID associated with this Identity." + }, + "clientId": { + "readOnly": true, + "type": "string", + "description": "Client App Id associated with this identity." + } + } + }, + "Encryption": { + "type": "object", + "properties": { + "keyVaultProperties": { + "$ref": "#/definitions/KeyVaultProperties", + "description": "Properties of KeyVault" + }, + "keySource": { + "type": "string", + "description": "Enumerates the possible value of keySource for Encryption", + "default": "Microsoft.KeyVault", + "enum": [ + "Microsoft.CognitiveServices", + "Microsoft.KeyVault" + ], + "x-ms-enum": { + "name": "keySource", + "modelAsString": true + } + } + }, + "description": "Properties to configure Encryption" + }, + "KeyVaultProperties": { + "type": "object", + "properties": { + "keyName": { + "type": "string", + "description": "Name of the Key from KeyVault" + }, + "keyVersion": { + "type": "string", + "description": "Version of the Key from KeyVault" + }, + "keyVaultUri": { + "type": "string", + "description": "Uri of KeyVault" + }, + "identityClientId": { + "type": "string" + } + }, + "description": "Properties to configure keyVault Properties" + }, + "UserOwnedStorage": { + "type": "object", + "properties": { + "resourceId": { + "type": "string", + "description": "Full resource id of a Microsoft.Storage resource." + }, + "identityClientId": { + "type": "string" + } + }, + "description": "The user owned storage for Cognitive Services account." + }, + "PrivateEndpointConnectionListResult": { + "type": "object", + "properties": { + "value": { + "type": "array", + "description": "Array of private endpoint connections", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + } + }, + "description": "A list of private endpoint connections" + }, + "PrivateEndpointConnection": { + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "description": "Resource properties." + }, + "systemData": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData", + "readOnly": true + }, + "location": { + "type": "string", + "description": "The location of the private endpoint connection" + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/AzureEntityResource" + } + ], + "description": "The Private Endpoint Connection resource." + }, + "PrivateEndpointConnectionProperties": { + "type": "object", + "properties": { + "privateEndpoint": { + "$ref": "../../../../../common-types/resource-management/v2/privatelinks.json#/definitions/PrivateEndpoint", + "description": "The resource of private end point." + }, + "privateLinkServiceConnectionState": { + "$ref": "../../../../../common-types/resource-management/v2/privatelinks.json#/definitions/PrivateLinkServiceConnectionState", + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "provisioningState": { + "$ref": "../../../../../common-types/resource-management/v2/privatelinks.json#/definitions/PrivateEndpointConnectionProvisioningState", + "description": "The provisioning state of the private endpoint connection resource." + }, + "groupIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The private link resource group ids." + } + }, + "required": [ + "privateLinkServiceConnectionState" + ], + "description": "Properties of the PrivateEndpointConnectProperties." + }, + "PrivateLinkResourceListResult": { + "type": "object", + "properties": { + "value": { + "type": "array", + "description": "Array of private link resources", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + } + } + }, + "description": "A list of private link resources" + }, + "PrivateLinkResource": { + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "Resource properties." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/Resource" + } + ], + "description": "A private link resource" + }, + "PrivateLinkResourceProperties": { + "type": "object", + "properties": { + "groupId": { + "description": "The private link resource group id.", + "type": "string", + "readOnly": true + }, + "requiredMembers": { + "description": "The private link resource required member names.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "requiredZoneNames": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The private link resource Private link DNS zone name." + }, + "displayName": { + "description": "The private link resource display name.", + "type": "string", + "readOnly": true + } + }, + "description": "Properties of a private link resource." + } + }, + "parameters": { + "accountNameParameter": { + "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.", + "x-ms-parameter-location": "method" + }, + "locationParameter": { + "name": "location", + "in": "path", + "description": "Resource location.", + "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": "method" + }, + "privateEndpointConnectionNameParameter": { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint connection associated with the Cognitive Services Account", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/CheckDomainAvailability.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/CheckDomainAvailability.json new file mode 100644 index 000000000000..fd28b9feb382 --- /dev/null +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/CheckDomainAvailability.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "api-version": "2021-04-30", + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "location": "westus", + "parameters": { + "subdomainName": "contosodemoapp1", + "type": "Microsoft.CognitiveServices/accounts" + } + }, + "responses": { + "200": { + "body": { + "isSubdomainAvailable": false, + "reason": "Sub domain name 'contosodemoapp1' is not valid", + "subdomainName": "contosodemoapp1", + "type": "Microsoft.CognitiveServices/accounts" + } + } + } +} diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/CheckSkuAvailability.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/CheckSkuAvailability.json new file mode 100644 index 000000000000..5048c5ca5ddb --- /dev/null +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/CheckSkuAvailability.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2021-04-30", + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "location": "westus", + "parameters": { + "skus": [ + "S0" + ], + "kind": "Face", + "type": "Microsoft.CognitiveServices/accounts" + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "kind": "Face", + "type": "Microsoft.CognitiveServices/accounts", + "skuName": "S0", + "skuAvailable": true, + "reason": null, + "message": null + } + ] + } + } + } +} diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/CreateAccount.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/CreateAccount.json new file mode 100644 index 000000000000..c0abce84738d --- /dev/null +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/CreateAccount.json @@ -0,0 +1,140 @@ +{ + "parameters": { + "api-version": "2021-04-30", + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "myResourceGroup", + "accountName": "testCreate1", + "account": { + "location": "West US", + "kind": "Emotion", + "sku": { + "name": "S0" + }, + "properties": { + "encryption": { + "keyVaultProperties": { + "keyName": "KeyName", + "keyVersion": "891CF236-D241-4738-9462-D506AF493DFA", + "keyVaultUri": "https://pltfrmscrts-use-pc-dev.vault.azure.net/" + }, + "keySource": "Microsoft.KeyVault" + }, + "userOwnedStorage": [ + { + "resourceId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount" + } + ] + }, + "identity": { + "type": "SystemAssigned" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.CognitiveServices/accounts/testCreate1", + "name": "testCreate1", + "type": "Microsoft.CognitiveServices/accounts", + "location": "West US", + "sku": { + "name": "S0" + }, + "kind": "Emotion", + "etag": "W/\"datetime'2017-04-10T08%3A00%3A05.445595Z'\"", + "properties": { + "endpoint": "https://westus.api.cognitive.microsoft.com/emotion/v1.0", + "provisioningState": "Succeeded", + "encryption": { + "keySource": "Microsoft.KeyVault", + "keyVaultProperties": { + "keyName": "FakeKeyName", + "keyVersion": "891CF236-D241-4738-9462-D506AF493DFA", + "keyVaultUri": "https://pltfrmscrts-use-pc-dev.vault.azure.net/" + } + }, + "userOwnedStorage": [ + { + "resourceId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount" + } + ] + }, + "identity": { + "principalId": "b5cf119e-a5c2-42c7-802f-592e0efb169f", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.CognitiveServices/accounts/testCreate1", + "name": "testCreate1", + "type": "Microsoft.CognitiveServices/accounts", + "location": "West US", + "sku": { + "name": "S0" + }, + "kind": "Emotion", + "etag": "W/\"datetime'2017-04-10T07%3A57%3A48.4582781Z'\"", + "properties": { + "endpoint": "https://westus.api.cognitive.microsoft.com/emotion/v1.0", + "provisioningState": "Succeeded", + "encryption": { + "keySource": "Microsoft.KeyVault", + "keyVaultProperties": { + "keyName": "FakeKeyName", + "keyVersion": "891CF236-D241-4738-9462-D506AF493DFA", + "keyVaultUri": "https://pltfrmscrts-use-pc-dev.vault.azure.net/" + } + }, + "userOwnedStorage": [ + { + "resourceId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount" + } + ] + }, + "identity": { + "principalId": "b5cf119e-a5c2-42c7-802f-592e0efb169f", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + } + } + }, + "202": { + "body": { + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.CognitiveServices/accounts/testCreate1", + "name": "testCreate1", + "type": "Microsoft.CognitiveServices/accounts", + "location": "West US", + "sku": { + "name": "S0" + }, + "kind": "Emotion", + "etag": "W/\"datetime'2017-04-10T07%3A57%3A48.4582781Z'\"", + "properties": { + "endpoint": "https://westus.api.cognitive.microsoft.com/emotion/v1.0", + "provisioningState": "Succeeded", + "encryption": { + "keySource": "Microsoft.KeyVault", + "keyVaultProperties": { + "keyName": "FakeKeyName", + "keyVersion": "891CF236-D241-4738-9462-D506AF493DFA", + "keyVaultUri": "https://pltfrmscrts-use-pc-dev.vault.azure.net/" + } + }, + "userOwnedStorage": [ + { + "resourceId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount" + } + ] + }, + "identity": { + "principalId": "b5cf119e-a5c2-42c7-802f-592e0efb169f", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + } + } + } + } +} diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/CreateAccountMin.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/CreateAccountMin.json new file mode 100644 index 000000000000..4f70576cc046 --- /dev/null +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/CreateAccountMin.json @@ -0,0 +1,87 @@ +{ + "parameters": { + "api-version": "2021-04-30", + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "myResourceGroup", + "accountName": "testCreate1", + "account": { + "location": "West US", + "kind": "CognitiveServices", + "sku": { + "name": "S0" + }, + "properties": {}, + "identity": { + "type": "SystemAssigned" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.CognitiveServices/accounts/testCreate1", + "name": "testCreate1", + "type": "Microsoft.CognitiveServices/accounts", + "location": "West US", + "sku": { + "name": "S0" + }, + "kind": "Emotion", + "etag": "W/\"datetime'2017-04-10T08%3A00%3A05.445595Z'\"", + "properties": { + "endpoint": "https://westus.api.cognitive.microsoft.com/emotion/v1.0", + "provisioningState": "Succeeded" + }, + "identity": { + "principalId": "b5cf119e-a5c2-42c7-802f-592e0efb169f", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.CognitiveServices/accounts/testCreate1", + "name": "testCreate1", + "type": "Microsoft.CognitiveServices/accounts", + "location": "West US", + "sku": { + "name": "S0" + }, + "kind": "Emotion", + "etag": "W/\"datetime'2017-04-10T07%3A57%3A48.4582781Z'\"", + "properties": { + "endpoint": "https://westus.api.cognitive.microsoft.com/emotion/v1.0", + "provisioningState": "Succeeded" + }, + "identity": { + "principalId": "b5cf119e-a5c2-42c7-802f-592e0efb169f", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + } + } + }, + "202": { + "body": { + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.CognitiveServices/accounts/testCreate1", + "name": "testCreate1", + "type": "Microsoft.CognitiveServices/accounts", + "location": "West US", + "sku": { + "name": "S0" + }, + "kind": "Emotion", + "etag": "W/\"datetime'2017-04-10T07%3A57%3A48.4582781Z'\"", + "properties": { + "endpoint": "https://westus.api.cognitive.microsoft.com/emotion/v1.0", + "provisioningState": "Succeeded" + }, + "identity": { + "principalId": "b5cf119e-a5c2-42c7-802f-592e0efb169f", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + } + } + } + } +} diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/DeleteAccount.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/DeleteAccount.json new file mode 100644 index 000000000000..9ef6f2cfe52e --- /dev/null +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/DeleteAccount.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-04-30", + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "myResourceGroup", + "accountName": "PropTest01" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/DeletePrivateEndpointConnection.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/DeletePrivateEndpointConnection.json new file mode 100644 index 000000000000..a66b35c8dab7 --- /dev/null +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/DeletePrivateEndpointConnection.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res6977", + "accountName": "sto2527", + "privateEndpointConnectionName": "{privateEndpointConnectionName}", + "api-version": "2021-04-30", + "monitor": "true" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/GetAccount.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/GetAccount.json new file mode 100644 index 000000000000..759986188a6f --- /dev/null +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/GetAccount.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2021-04-30", + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "myResourceGroup", + "accountName": "myAccount" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.CognitiveServices/accounts/myAccount", + "name": "myAccount", + "type": "Microsoft.CognitiveServices/accounts", + "location": "westus", + "sku": { + "name": "F0" + }, + "kind": "Emotion", + "tags": { + "Owner": "felixwa", + "ExpiredDate": "2017/09/01" + }, + "etag": "W/\"datetime'2017-04-10T04%3A42%3A19.7067387Z'\"", + "properties": { + "endpoint": "https://westus.api.cognitive.microsoft.com/emotion/v1.0", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/GetDeletedAccount.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/GetDeletedAccount.json new file mode 100644 index 000000000000..55e033d774a0 --- /dev/null +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/GetDeletedAccount.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2021-04-30", + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "myResourceGroup", + "accountName": "myAccount", + "location": "westus" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.CognitiveServices/locations/westus/resourceGroups/myResourceGroup/deletedAccounts/myAccount", + "name": "myAccount", + "type": "Microsoft.CognitiveServices/accounts", + "location": "westus", + "sku": { + "name": "F0" + }, + "kind": "Emotion", + "tags": { + "Owner": "felixwa", + "ExpiredDate": "2017/09/01" + }, + "etag": "W/\"datetime'2017-04-10T04%3A42%3A19.7067387Z'\"", + "properties": { + "endpoint": "https://westus.api.cognitive.microsoft.com/emotion/v1.0", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/GetOperations.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/GetOperations.json new file mode 100644 index 000000000000..feeb95c2bdb5 --- /dev/null +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/GetOperations.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2021-04-30" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.CognitiveServices/accounts/read", + "display": { + "provider": "Microsoft Cognitive Services", + "resource": "Cognitive Services API Account", + "operation": "Read API Account", + "description": "Reads API accounts." + }, + "origin": "user,system" + }, + { + "name": "Microsoft.CognitiveServices/accounts/write", + "display": { + "provider": "Microsoft Cognitive Services", + "resource": "Cognitive Services API Account", + "operation": "Write API Account", + "description": "Writes API Accounts." + }, + "origin": "user,system" + }, + { + "name": "Microsoft.CognitiveServices/accounts/delete", + "display": { + "provider": "Microsoft Cognitive Services", + "resource": "Cognitive Services API Account", + "operation": "Delete API Account", + "description": "Deletes API accounts" + }, + "origin": "user,system" + } + ] + } + } + } +} diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/GetPrivateEndpointConnection.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/GetPrivateEndpointConnection.json new file mode 100644 index 000000000000..ca5b42f2d4da --- /dev/null +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/GetPrivateEndpointConnection.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res6977", + "accountName": "sto2527", + "privateEndpointConnectionName": "{privateEndpointConnectionName}", + "api-version": "2021-04-30", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.CognitiveServices/accounts/sto288/privateEndpointConnections/{privateEndpointConnectionName}", + "name": "{privateEndpointConnectionName}", + "type": "Microsoft.CognitiveServices/accounts/privateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.Network/privateEndpoints/petest01" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/GetSkus.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/GetSkus.json new file mode 100644 index 000000000000..d8afa28a033a --- /dev/null +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/GetSkus.json @@ -0,0 +1,2164 @@ +{ + "parameters": { + "api-version": "2021-04-30", + "subscriptionId": "f1c637e4-72ec-4f89-8d2b-0f933c036002" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "Bing.Speech", + "locations": [ + "GLOBAL" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "Bing.Speech", + "locations": [ + "GLOBAL" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "SpeechTranslation", + "locations": [ + "GLOBAL" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S1", + "tier": "Standard", + "kind": "SpeechTranslation", + "locations": [ + "GLOBAL" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S2", + "tier": "Standard", + "kind": "SpeechTranslation", + "locations": [ + "GLOBAL" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S3", + "tier": "Standard", + "kind": "SpeechTranslation", + "locations": [ + "GLOBAL" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S4", + "tier": "Standard", + "kind": "SpeechTranslation", + "locations": [ + "GLOBAL" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "TextTranslation", + "locations": [ + "GLOBAL" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S1", + "tier": "Standard", + "kind": "TextTranslation", + "locations": [ + "GLOBAL" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S2", + "tier": "Standard", + "kind": "TextTranslation", + "locations": [ + "GLOBAL" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S3", + "tier": "Standard", + "kind": "TextTranslation", + "locations": [ + "GLOBAL" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S4", + "tier": "Standard", + "kind": "TextTranslation", + "locations": [ + "GLOBAL" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S1", + "tier": "Standard", + "kind": "Bing.Search.v7", + "locations": [ + "GLOBAL" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S2", + "tier": "Standard", + "kind": "Bing.Search.v7", + "locations": [ + "GLOBAL" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S3", + "tier": "Standard", + "kind": "Bing.Search.v7", + "locations": [ + "GLOBAL" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S4", + "tier": "Standard", + "kind": "Bing.Search.v7", + "locations": [ + "GLOBAL" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S5", + "tier": "Standard", + "kind": "Bing.Search.v7", + "locations": [ + "GLOBAL" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S6", + "tier": "Standard", + "kind": "Bing.Search.v7", + "locations": [ + "GLOBAL" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S7", + "tier": "Standard", + "kind": "Bing.Search.v7", + "locations": [ + "GLOBAL" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S8", + "tier": "Standard", + "kind": "Bing.Search.v7", + "locations": [ + "GLOBAL" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S1", + "tier": "Standard", + "kind": "Bing.Autosuggest.v7", + "locations": [ + "GLOBAL" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S1", + "tier": "Standard", + "kind": "Bing.CustomSearch", + "locations": [ + "GLOBAL" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S1", + "tier": "Standard", + "kind": "Bing.SpellCheck.v7", + "locations": [ + "GLOBAL" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "Bing.EntitySearch", + "locations": [ + "GLOBAL" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S1", + "tier": "Standard", + "kind": "Bing.EntitySearch", + "locations": [ + "GLOBAL" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "Face", + "locations": [ + "AUSTRALIAEAST" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "Face", + "locations": [ + "AUSTRALIAEAST" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "ComputerVision", + "locations": [ + "AUSTRALIAEAST" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S1", + "tier": "Standard", + "kind": "ComputerVision", + "locations": [ + "AUSTRALIAEAST" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "ContentModerator", + "locations": [ + "AUSTRALIAEAST" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "ContentModerator", + "locations": [ + "AUSTRALIAEAST" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "TextAnalytics", + "locations": [ + "AUSTRALIAEAST" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "AUSTRALIAEAST" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S1", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "AUSTRALIAEAST" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S2", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "AUSTRALIAEAST" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S3", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "AUSTRALIAEAST" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S4", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "AUSTRALIAEAST" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "LUIS", + "locations": [ + "AUSTRALIAEAST" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "LUIS", + "locations": [ + "AUSTRALIAEAST" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "Face", + "locations": [ + "BRAZILSOUTH" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "Face", + "locations": [ + "BRAZILSOUTH" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "ComputerVision", + "locations": [ + "BRAZILSOUTH" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S1", + "tier": "Standard", + "kind": "ComputerVision", + "locations": [ + "BRAZILSOUTH" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "ContentModerator", + "locations": [ + "BRAZILSOUTH" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "ContentModerator", + "locations": [ + "BRAZILSOUTH" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "TextAnalytics", + "locations": [ + "BRAZILSOUTH" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "BRAZILSOUTH" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S1", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "BRAZILSOUTH" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S2", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "BRAZILSOUTH" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S3", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "BRAZILSOUTH" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S4", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "BRAZILSOUTH" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "LUIS", + "locations": [ + "BRAZILSOUTH" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "LUIS", + "locations": [ + "BRAZILSOUTH" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "Face", + "locations": [ + "CENTRALUSEUAP" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "Face", + "locations": [ + "CENTRALUSEUAP" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "ComputerVision", + "locations": [ + "CENTRALUSEUAP" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S1", + "tier": "Standard", + "kind": "ComputerVision", + "locations": [ + "CENTRALUSEUAP" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "TextAnalytics", + "locations": [ + "CENTRALUSEUAP" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "CENTRALUSEUAP" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S1", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "CENTRALUSEUAP" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S2", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "CENTRALUSEUAP" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S3", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "CENTRALUSEUAP" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S4", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "CENTRALUSEUAP" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "ContentModerator", + "locations": [ + "CENTRALUSEUAP" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "ContentModerator", + "locations": [ + "CENTRALUSEUAP" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "LUIS", + "locations": [ + "CENTRALUSEUAP" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "LUIS", + "locations": [ + "CENTRALUSEUAP" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "ContentModerator", + "locations": [ + "WESTUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "ContentModerator", + "locations": [ + "WESTUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "LUIS", + "locations": [ + "WESTUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "LUIS", + "locations": [ + "WESTUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "Face", + "locations": [ + "WESTUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "Face", + "locations": [ + "WESTUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "TextAnalytics", + "locations": [ + "WESTUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "WESTUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S1", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "WESTUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S2", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "WESTUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S3", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "WESTUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S4", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "WESTUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "SpeakerRecognition", + "locations": [ + "WESTUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "SpeakerRecognition", + "locations": [ + "WESTUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "CustomSpeech", + "locations": [ + "WESTUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S2", + "tier": "Standard", + "kind": "CustomSpeech", + "locations": [ + "WESTUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "ComputerVision", + "locations": [ + "WESTUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S1", + "tier": "Standard", + "kind": "ComputerVision", + "locations": [ + "WESTUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "Face", + "locations": [ + "WESTUS2" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "Face", + "locations": [ + "WESTUS2" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "ComputerVision", + "locations": [ + "WESTUS2" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S1", + "tier": "Standard", + "kind": "ComputerVision", + "locations": [ + "WESTUS2" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "ContentModerator", + "locations": [ + "WESTUS2" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "ContentModerator", + "locations": [ + "WESTUS2" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "TextAnalytics", + "locations": [ + "WESTUS2" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "WESTUS2" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S1", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "WESTUS2" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S2", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "WESTUS2" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S3", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "WESTUS2" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S4", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "WESTUS2" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "LUIS", + "locations": [ + "WESTUS2" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "LUIS", + "locations": [ + "WESTUS2" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "Face", + "locations": [ + "WESTEUROPE" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "Face", + "locations": [ + "WESTEUROPE" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "LUIS", + "locations": [ + "WESTEUROPE" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "LUIS", + "locations": [ + "WESTEUROPE" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "ContentModerator", + "locations": [ + "WESTEUROPE" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "ContentModerator", + "locations": [ + "WESTEUROPE" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "ComputerVision", + "locations": [ + "WESTEUROPE" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S1", + "tier": "Standard", + "kind": "ComputerVision", + "locations": [ + "WESTEUROPE" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "TextAnalytics", + "locations": [ + "WESTEUROPE" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "WESTEUROPE" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S1", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "WESTEUROPE" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S2", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "WESTEUROPE" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S3", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "WESTEUROPE" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S4", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "WESTEUROPE" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "Face", + "locations": [ + "NORTHEUROPE" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "Face", + "locations": [ + "NORTHEUROPE" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "ComputerVision", + "locations": [ + "NORTHEUROPE" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S1", + "tier": "Standard", + "kind": "ComputerVision", + "locations": [ + "NORTHEUROPE" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "ContentModerator", + "locations": [ + "NORTHEUROPE" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "ContentModerator", + "locations": [ + "NORTHEUROPE" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "TextAnalytics", + "locations": [ + "NORTHEUROPE" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "NORTHEUROPE" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S1", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "NORTHEUROPE" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S2", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "NORTHEUROPE" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S3", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "NORTHEUROPE" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S4", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "NORTHEUROPE" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "LUIS", + "locations": [ + "NORTHEUROPE" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "LUIS", + "locations": [ + "NORTHEUROPE" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "Face", + "locations": [ + "SOUTHEASTASIA" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "Face", + "locations": [ + "SOUTHEASTASIA" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "ContentModerator", + "locations": [ + "SOUTHEASTASIA" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "ContentModerator", + "locations": [ + "SOUTHEASTASIA" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "LUIS", + "locations": [ + "SOUTHEASTASIA" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "LUIS", + "locations": [ + "SOUTHEASTASIA" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "ComputerVision", + "locations": [ + "SOUTHEASTASIA" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S1", + "tier": "Standard", + "kind": "ComputerVision", + "locations": [ + "SOUTHEASTASIA" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "TextAnalytics", + "locations": [ + "SOUTHEASTASIA" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "SOUTHEASTASIA" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S1", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "SOUTHEASTASIA" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S2", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "SOUTHEASTASIA" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S3", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "SOUTHEASTASIA" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S4", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "SOUTHEASTASIA" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "Face", + "locations": [ + "EASTASIA" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "Face", + "locations": [ + "EASTASIA" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "ComputerVision", + "locations": [ + "EASTASIA" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S1", + "tier": "Standard", + "kind": "ComputerVision", + "locations": [ + "EASTASIA" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "ContentModerator", + "locations": [ + "EASTASIA" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "ContentModerator", + "locations": [ + "EASTASIA" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "TextAnalytics", + "locations": [ + "EASTASIA" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "EASTASIA" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S1", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "EASTASIA" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S2", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "EASTASIA" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S3", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "EASTASIA" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S4", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "EASTASIA" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "LUIS", + "locations": [ + "EASTASIA" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "LUIS", + "locations": [ + "EASTASIA" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "Face", + "locations": [ + "WESTCENTRALUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "Face", + "locations": [ + "WESTCENTRALUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "ContentModerator", + "locations": [ + "WESTCENTRALUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "ContentModerator", + "locations": [ + "WESTCENTRALUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "LUIS", + "locations": [ + "WESTCENTRALUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "LUIS", + "locations": [ + "WESTCENTRALUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "ComputerVision", + "locations": [ + "WESTCENTRALUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S1", + "tier": "Standard", + "kind": "ComputerVision", + "locations": [ + "WESTCENTRALUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "TextAnalytics", + "locations": [ + "WESTCENTRALUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "WESTCENTRALUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S1", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "WESTCENTRALUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S2", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "WESTCENTRALUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S3", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "WESTCENTRALUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S4", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "WESTCENTRALUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "Face", + "locations": [ + "SOUTHCENTRALUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "Face", + "locations": [ + "SOUTHCENTRALUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "ComputerVision", + "locations": [ + "SOUTHCENTRALUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S1", + "tier": "Standard", + "kind": "ComputerVision", + "locations": [ + "SOUTHCENTRALUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "ContentModerator", + "locations": [ + "SOUTHCENTRALUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "ContentModerator", + "locations": [ + "SOUTHCENTRALUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "TextAnalytics", + "locations": [ + "SOUTHCENTRALUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "SOUTHCENTRALUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S1", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "SOUTHCENTRALUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S2", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "SOUTHCENTRALUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S3", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "SOUTHCENTRALUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S4", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "SOUTHCENTRALUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "LUIS", + "locations": [ + "SOUTHCENTRALUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "LUIS", + "locations": [ + "SOUTHCENTRALUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "CustomVision.Training", + "locations": [ + "SOUTHCENTRALUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "CustomVision.Training", + "locations": [ + "SOUTHCENTRALUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "CustomVision.Prediction", + "locations": [ + "SOUTHCENTRALUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "CustomVision.Prediction", + "locations": [ + "SOUTHCENTRALUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "Face", + "locations": [ + "EASTUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "Face", + "locations": [ + "EASTUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "ComputerVision", + "locations": [ + "EASTUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S1", + "tier": "Standard", + "kind": "ComputerVision", + "locations": [ + "EASTUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "ContentModerator", + "locations": [ + "EASTUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "ContentModerator", + "locations": [ + "EASTUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "TextAnalytics", + "locations": [ + "EASTUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "EASTUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S1", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "EASTUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S2", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "EASTUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S3", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "EASTUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S4", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "EASTUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "LUIS", + "locations": [ + "EASTUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "LUIS", + "locations": [ + "EASTUS" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "ContentModerator", + "locations": [ + "EASTUS2" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "ContentModerator", + "locations": [ + "EASTUS2" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "Face", + "locations": [ + "EASTUS2" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "Face", + "locations": [ + "EASTUS2" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "LUIS", + "locations": [ + "EASTUS2" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "LUIS", + "locations": [ + "EASTUS2" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "ComputerVision", + "locations": [ + "EASTUS2" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S1", + "tier": "Standard", + "kind": "ComputerVision", + "locations": [ + "EASTUS2" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "F0", + "tier": "Free", + "kind": "TextAnalytics", + "locations": [ + "EASTUS2" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S0", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "EASTUS2" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S1", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "EASTUS2" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S2", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "EASTUS2" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S3", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "EASTUS2" + ], + "restrictions": [] + }, + { + "resourceType": "accounts", + "name": "S4", + "tier": "Standard", + "kind": "TextAnalytics", + "locations": [ + "EASTUS2" + ], + "restrictions": [] + } + ] + } + } + } +} diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/GetUsages.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/GetUsages.json new file mode 100644 index 000000000000..10c730650e04 --- /dev/null +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/GetUsages.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2021-04-30", + "subscriptionId": "5a4f5c2e-6983-4ccb-bd34-2196d5b5bbd3", + "resourceGroupName": "myResourceGroup", + "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" + } + ] + } + } + } +} diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/ListAccountsByResourceGroup.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/ListAccountsByResourceGroup.json new file mode 100644 index 000000000000..5f08b2196518 --- /dev/null +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/ListAccountsByResourceGroup.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2021-04-30", + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "myResourceGroup" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.CognitiveServices/accounts/myAccount", + "name": "myAccount", + "type": "Microsoft.CognitiveServices/accounts", + "location": "westus", + "sku": { + "name": "F0" + }, + "kind": "Emotion", + "tags": { + "Owner": "felixwa", + "ExpiredDate": "2017/09/01" + }, + "etag": "W/\"datetime'2017-04-10T04%3A42%3A19.7067387Z'\"", + "properties": { + "endpoint": "https://westus.api.cognitive.microsoft.com/emotion/v1.0", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.CognitiveServices/accounts/TestPropertyWU2", + "name": "TestPropertyWU2", + "type": "Microsoft.CognitiveServices/accounts", + "location": "westus", + "sku": { + "name": "S0" + }, + "kind": "Face", + "tags": {}, + "etag": "W/\"datetime'2017-04-07T04%3A32%3A38.9187216Z'\"", + "properties": { + "endpoint": "https://westus.api.cognitive.microsoft.com/face/v1.0", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/ListAccountsBySubscription.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/ListAccountsBySubscription.json new file mode 100644 index 000000000000..2596697fac3c --- /dev/null +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/ListAccountsBySubscription.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "api-version": "2021-04-30", + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/bvttest/providers/Microsoft.CognitiveServices/accounts/bingSearch", + "name": "bingSearch", + "type": "Microsoft.CognitiveServices/accounts", + "location": "global", + "sku": { + "name": "S1" + }, + "kind": "Bing.Search", + "etag": "W/\"datetime'2017-03-27T11%3A19%3A08.762494Z'\"", + "properties": { + "endpoint": "https://api.cognitive.microsoft.com/bing/v5.0", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/bvttest/providers/Microsoft.CognitiveServices/accounts/CrisProd", + "name": "CrisProd", + "type": "Microsoft.CognitiveServices/accounts", + "location": "westus", + "sku": { + "name": "S0" + }, + "kind": "CRIS", + "tags": { + "can't delete it successfully": "v-yunjin" + }, + "etag": "W/\"datetime'2017-03-31T08%3A57%3A07.4499566Z'\"", + "properties": { + "endpoint": "https://westus.api.cognitive.microsoft.com/sts/v1.0", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/bvttest/providers/Microsoft.CognitiveServices/accounts/rayrptest0308", + "name": "rayrptest0308", + "type": "Microsoft.CognitiveServices/accounts", + "location": "westus", + "sku": { + "name": "S0" + }, + "kind": "Face", + "etag": "W/\"datetime'2017-03-27T11%3A15%3A23.5232645Z'\"", + "properties": { + "endpoint": "https://westus.api.cognitive.microsoft.com/face/v1.0", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/bvttest/providers/Microsoft.CognitiveServices/accounts/raytest02", + "name": "raytest02", + "type": "Microsoft.CognitiveServices/accounts", + "location": "westus", + "sku": { + "name": "S0" + }, + "kind": "Emotion", + "etag": "W/\"datetime'2017-04-04T02%3A07%3A07.3957572Z'\"", + "properties": { + "endpoint": "https://westus.api.cognitive.microsoft.com/emotion/v1.0", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/ListKeys.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/ListKeys.json new file mode 100644 index 000000000000..2a03c0e64aa7 --- /dev/null +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/ListKeys.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "api-version": "2021-04-30", + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "myResourceGroup", + "accountName": "myAccount" + }, + "responses": { + "200": { + "body": { + "key1": "KEY1", + "key2": "KEY2" + } + } + } +} diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/ListPrivateEndpointConnections.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/ListPrivateEndpointConnections.json new file mode 100644 index 000000000000..039a1894fc6f --- /dev/null +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/ListPrivateEndpointConnections.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res6977", + "accountName": "sto2527", + "api-version": "2021-04-30" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.CognitiveServices/accounts/sto288/privateEndpointConnections/{privateEndpointConnectionName}", + "name": "{privateEndpointConnectionName}", + "type": "Microsoft.CognitiveServices/accounts/privateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.Network/privateEndpoints/petest01" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionsRequired": "None" + } + } + } + ] + } + } + } +} diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/ListPrivateLinkResources.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/ListPrivateLinkResources.json new file mode 100644 index 000000000000..c3a4f2766585 --- /dev/null +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/ListPrivateLinkResources.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res6977", + "accountName": "sto2527", + "api-version": "2021-04-30" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res6977/providers/Microsoft.CognitiveServices/accounts/sto2527/privateLinkResources/account", + "name": "blob", + "type": "Microsoft.CognitiveServices/accounts/privateLinkResources", + "properties": { + "groupId": "account", + "requiredMembers": [ + "default" + ], + "requiredZoneNames": [ + "privatelink.cognitiveservices.azure.com" + ] + } + } + ] + } + } + } +} diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/ListSkus.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/ListSkus.json new file mode 100644 index 000000000000..94d0f63205e3 --- /dev/null +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/ListSkus.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2021-04-30", + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "myResourceGroup", + "accountName": "myAccount" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "Microsoft.CognitiveServices/accounts", + "sku": { + "name": "F0", + "tier": "Free" + } + }, + { + "resourceType": "Microsoft.CognitiveServices/accounts", + "sku": { + "name": "S0", + "tier": "Standard" + } + } + ] + } + } + } +} diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/PurgeDeletedAccount.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/PurgeDeletedAccount.json new file mode 100644 index 000000000000..5a439ad8c41f --- /dev/null +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/PurgeDeletedAccount.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-04-30", + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "myResourceGroup", + "accountName": "PropTest01", + "location": "westus" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/PutPrivateEndpointConnection.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/PutPrivateEndpointConnection.json new file mode 100644 index 000000000000..a6f8a1a23f40 --- /dev/null +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/PutPrivateEndpointConnection.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res7687", + "accountName": "sto9699", + "privateEndpointConnectionName": "{privateEndpointConnectionName}", + "api-version": "2021-04-30", + "monitor": "true", + "properties": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.CognitiveServices/accounts/sto288/privateEndpointConnections/{privateEndpointConnectionName}", + "name": "{privateEndpointConnectionName}", + "type": "Microsoft.CognitiveServices/accounts/privateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.Network/privateEndpoints/petest01" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionsRequired": "None" + } + } + } + }, + "202": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.CognitiveServices/accounts/sto288/privateEndpointConnections/{privateEndpointConnectionName}", + "name": "{privateEndpointConnectionName}", + "type": "Microsoft.CognitiveServices/accounts/privateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.Network/privateEndpoints/petest01" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/RegenerateKey.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/RegenerateKey.json new file mode 100644 index 000000000000..6f2c8b9acb41 --- /dev/null +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/RegenerateKey.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2021-04-30", + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "myResourceGroup", + "accountName": "myAccount", + "parameters": { + "keyName": "Key2" + } + }, + "responses": { + "200": { + "body": { + "key1": "KEY1", + "key2": "KEY2" + } + } + } +} diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/UpdateAccount.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/UpdateAccount.json new file mode 100644 index 000000000000..d2cfec18c150 --- /dev/null +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2021-04-30/examples/UpdateAccount.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2021-04-30", + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "bvttest", + "accountName": "bingSearch", + "account": { + "location": "global", + "sku": { + "name": "S2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/bvttest/providers/Microsoft.CognitiveServices/accounts/bingSearch", + "name": "bingSearch", + "type": "Microsoft.CognitiveServices/accounts", + "location": "global", + "sku": { + "name": "S2" + }, + "kind": "Bing.Search", + "etag": "W/\"datetime'2017-04-10T07%3A46%3A21.5618831Z'\"", + "properties": { + "endpoint": "https://api.cognitive.microsoft.com/bing/v5.0", + "provisioningState": "Succeeded" + } + } + }, + "202": { + "body": { + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/bvttest/providers/Microsoft.CognitiveServices/accounts/bingSearch", + "name": "bingSearch", + "type": "Microsoft.CognitiveServices/accounts", + "location": "global", + "sku": { + "name": "S2" + }, + "kind": "Bing.Search", + "etag": "W/\"datetime'2017-04-10T07%3A46%3A21.5618831Z'\"", + "properties": { + "endpoint": "https://api.cognitive.microsoft.com/bing/v5.0", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/cognitiveservices/resource-manager/readme.azureresourceschema.md b/specification/cognitiveservices/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index b39fda607747..000000000000 --- a/specification/cognitiveservices/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,36 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-cognitiveservices-2017-04-18 - - tag: schema-cognitiveservices-2016-02-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-cognitiveservices-2017-04-18 and azureresourceschema - -``` yaml $(tag) == 'schema-cognitiveservices-2017-04-18' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.CognitiveServices/stable/2017-04-18/cognitiveservices.json - -``` - -### Tag: schema-cognitiveservices-2016-02-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-cognitiveservices-2016-02-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.CognitiveServices/preview/2016-02-01-preview/cognitiveservices.json - -``` diff --git a/specification/cognitiveservices/resource-manager/readme.go.md b/specification/cognitiveservices/resource-manager/readme.go.md index 53b03ae33d05..4b6500b266ac 100644 --- a/specification/cognitiveservices/resource-manager/readme.go.md +++ b/specification/cognitiveservices/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: cognitiveservices clear-output-folder: true ``` @@ -13,10 +13,20 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-2021-04 - tag: package-2017-04 - tag: package-2016-02-preview ``` +### Tag: package-2021-04 and go + +These settings apply only when `--tag=package-2021-04 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2021-04' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2021-04-30/$(namespace) +``` + ### Tag: package-2017-04 and go These settings apply only when `--tag=package-2017-04 --go` is specified on the command line. diff --git a/specification/cognitiveservices/resource-manager/readme.md b/specification/cognitiveservices/resource-manager/readme.md index 6a6be724ecc5..fe2aad3a95f4 100644 --- a/specification/cognitiveservices/resource-manager/readme.md +++ b/specification/cognitiveservices/resource-manager/readme.md @@ -27,10 +27,19 @@ These are the global settings for the CognitiveServices API. ``` yaml openapi-type: arm -tag: package-2017-04 +tag: package-2021-04 ``` +### Tag: package-2021-04 + +These settings apply only when `--tag=package-2021-04` is specified on the command line. + +``` yaml $(tag) == 'package-2021-04' +input-file: +- Microsoft.CognitiveServices/stable/2021-04-30/cognitiveservices.json +``` + ### Tag: package-2017-04 These settings apply only when `--tag=package-2017-04` is specified on the command line. @@ -63,6 +72,7 @@ This is not used by Autorest itself. swagger-to-sdk: - repo: azure-sdk-for-net - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-java - repo: azure-sdk-for-go - repo: azure-sdk-for-js @@ -71,8 +81,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_cognitive_services'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js cognitiveservices/resource-manager ``` @@ -90,6 +98,10 @@ csharp: clear-output-folder: true ``` +## Python + +See configuration in [readme.python.md](./readme.python.md) + ## Go See configuration in [readme.go.md](./readme.go.md) @@ -144,7 +156,5 @@ generate-interface: true -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/commerce/resource-manager/readme.azureresourceschema.md b/specification/commerce/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 10ddf94097fb..000000000000 --- a/specification/commerce/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,24 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-commerce-2015-06-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-commerce-2015-06-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-commerce-2015-06-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Commerce/preview/2015-06-01-preview/commerce.json - -``` diff --git a/specification/commerce/resource-manager/readme.go.md b/specification/commerce/resource-manager/readme.go.md index b3764e08ef61..59cf7e8db97f 100644 --- a/specification/commerce/resource-manager/readme.go.md +++ b/specification/commerce/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: commerce clear-output-folder: true ``` diff --git a/specification/commerce/resource-manager/readme.md b/specification/commerce/resource-manager/readme.md index ac7b98eabc54..78eeba4be483 100644 --- a/specification/commerce/resource-manager/readme.md +++ b/specification/commerce/resource-manager/readme.md @@ -70,8 +70,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_commerce'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js commerce/resource-manager ``` @@ -155,7 +153,5 @@ generate-interface: true -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/common-types/resource-management/v2/privatelinks.json b/specification/common-types/resource-management/v2/privatelinks.json new file mode 100644 index 000000000000..be415f3555ea --- /dev/null +++ b/specification/common-types/resource-management/v2/privatelinks.json @@ -0,0 +1,174 @@ +{ + "swagger": "2.0", + "info": { + "version": "2.0", + "title": "Common types" + }, + "paths": {}, + "definitions": { + "PrivateEndpoint": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ARM identifier for Private Endpoint" + } + }, + "description": "The Private Endpoint resource." + }, + "PrivateEndpointConnection": { + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "x-ms-client-flatten": true, + "description": "Resource properties." + } + }, + "allOf": [ + { + "$ref": "./types.json#/definitions/Resource" + } + ], + "description": "The Private Endpoint Connection resource." + }, + "PrivateEndpointConnectionProperties": { + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpoint", + "description": "The resource of private end point." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionState", + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "provisioningState": { + "$ref": "#/definitions/PrivateEndpointConnectionProvisioningState", + "description": "The provisioning state of the private endpoint connection resource." + } + }, + "required": [ + "privateLinkServiceConnectionState" + ], + "description": "Properties of the PrivateEndpointConnectProperties." + }, + "PrivateLinkServiceConnectionState": { + "properties": { + "status": { + "$ref": "#/definitions/PrivateEndpointServiceConnectionStatus", + "description": "Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service." + }, + "description": { + "type": "string", + "description": "The reason for approval/rejection of the connection." + }, + "actionsRequired": { + "type": "string", + "description": "A message indicating if changes on the service provider require any updates on the consumer." + } + }, + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "PrivateEndpointServiceConnectionStatus": { + "type": "string", + "description": "The private endpoint connection status.", + "enum": [ + "Pending", + "Approved", + "Rejected" + ], + "x-ms-enum": { + "name": "PrivateEndpointServiceConnectionStatus", + "modelAsString": true + } + }, + "PrivateEndpointConnectionProvisioningState": { + "type": "string", + "readOnly": true, + "description": "The current provisioning state.", + "enum": [ + "Succeeded", + "Creating", + "Deleting", + "Failed" + ], + "x-ms-enum": { + "name": "PrivateEndpointConnectionProvisioningState", + "modelAsString": true + } + }, + "PrivateLinkResource": { + "properties": { + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "./types.json#/definitions/Resource" + } + ], + "description": "A private link resource" + }, + "PrivateLinkResourceProperties": { + "properties": { + "groupId": { + "description": "The private link resource group id.", + "type": "string", + "readOnly": true + }, + "requiredMembers": { + "description": "The private link resource required member names.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "requiredZoneNames": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The private link resource Private link DNS zone name." + } + }, + "description": "Properties of a private link resource." + }, + "PrivateEndpointConnectionListResult": { + "properties": { + "value": { + "type": "array", + "description": "Array of private endpoint connections", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + } + }, + "description": "List of private endpoint connection associated with the specified storage account" + }, + "PrivateLinkResourceListResult": { + "properties": { + "value": { + "type": "array", + "description": "Array of private link resources", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + } + } + }, + "description": "A list of private link resources" + } + }, + "parameters": { + "PrivateEndpointConnectionName": { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint connection associated with the Azure resource", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/communicationserviceschat.json b/specification/communication/data-plane/Chat/preview/2020-09-21-preview2/communicationserviceschat.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/communicationserviceschat.json rename to specification/communication/data-plane/Chat/preview/2020-09-21-preview2/communicationserviceschat.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Conversations_ListChatReadReceipts.json b/specification/communication/data-plane/Chat/preview/2020-09-21-preview2/examples/Conversations_ListChatReadReceipts.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Conversations_ListChatReadReceipts.json rename to specification/communication/data-plane/Chat/preview/2020-09-21-preview2/examples/Conversations_ListChatReadReceipts.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Conversations_SendChatReadReceipt.json b/specification/communication/data-plane/Chat/preview/2020-09-21-preview2/examples/Conversations_SendChatReadReceipt.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Conversations_SendChatReadReceipt.json rename to specification/communication/data-plane/Chat/preview/2020-09-21-preview2/examples/Conversations_SendChatReadReceipt.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Messages_DeleteChatMessage.json b/specification/communication/data-plane/Chat/preview/2020-09-21-preview2/examples/Messages_DeleteChatMessage.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Messages_DeleteChatMessage.json rename to specification/communication/data-plane/Chat/preview/2020-09-21-preview2/examples/Messages_DeleteChatMessage.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Messages_GetChatMessage.json b/specification/communication/data-plane/Chat/preview/2020-09-21-preview2/examples/Messages_GetChatMessage.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Messages_GetChatMessage.json rename to specification/communication/data-plane/Chat/preview/2020-09-21-preview2/examples/Messages_GetChatMessage.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Messages_ListChatMessagesWithPageSize.json b/specification/communication/data-plane/Chat/preview/2020-09-21-preview2/examples/Messages_ListChatMessagesWithPageSize.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Messages_ListChatMessagesWithPageSize.json rename to specification/communication/data-plane/Chat/preview/2020-09-21-preview2/examples/Messages_ListChatMessagesWithPageSize.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Messages_SendChatMessage.json b/specification/communication/data-plane/Chat/preview/2020-09-21-preview2/examples/Messages_SendChatMessage.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Messages_SendChatMessage.json rename to specification/communication/data-plane/Chat/preview/2020-09-21-preview2/examples/Messages_SendChatMessage.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Messages_SendTypingNotification.json b/specification/communication/data-plane/Chat/preview/2020-09-21-preview2/examples/Messages_SendTypingNotification.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Messages_SendTypingNotification.json rename to specification/communication/data-plane/Chat/preview/2020-09-21-preview2/examples/Messages_SendTypingNotification.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Messages_UpdateChatMessage.json b/specification/communication/data-plane/Chat/preview/2020-09-21-preview2/examples/Messages_UpdateChatMessage.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Messages_UpdateChatMessage.json rename to specification/communication/data-plane/Chat/preview/2020-09-21-preview2/examples/Messages_UpdateChatMessage.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/ThreadMembers_AddChatThreadMembers.json b/specification/communication/data-plane/Chat/preview/2020-09-21-preview2/examples/ThreadMembers_AddChatThreadMembers.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/ThreadMembers_AddChatThreadMembers.json rename to specification/communication/data-plane/Chat/preview/2020-09-21-preview2/examples/ThreadMembers_AddChatThreadMembers.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/ThreadMembers_ListChatThreadMembers.json b/specification/communication/data-plane/Chat/preview/2020-09-21-preview2/examples/ThreadMembers_ListChatThreadMembers.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/ThreadMembers_ListChatThreadMembers.json rename to specification/communication/data-plane/Chat/preview/2020-09-21-preview2/examples/ThreadMembers_ListChatThreadMembers.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/ThreadMembers_RemoveChatThreadMember.json b/specification/communication/data-plane/Chat/preview/2020-09-21-preview2/examples/ThreadMembers_RemoveChatThreadMember.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/ThreadMembers_RemoveChatThreadMember.json rename to specification/communication/data-plane/Chat/preview/2020-09-21-preview2/examples/ThreadMembers_RemoveChatThreadMember.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Threads_CreateChatThread.json b/specification/communication/data-plane/Chat/preview/2020-09-21-preview2/examples/Threads_CreateChatThread.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Threads_CreateChatThread.json rename to specification/communication/data-plane/Chat/preview/2020-09-21-preview2/examples/Threads_CreateChatThread.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Threads_DeleteChatThread.json b/specification/communication/data-plane/Chat/preview/2020-09-21-preview2/examples/Threads_DeleteChatThread.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Threads_DeleteChatThread.json rename to specification/communication/data-plane/Chat/preview/2020-09-21-preview2/examples/Threads_DeleteChatThread.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Threads_GetChatThread.json b/specification/communication/data-plane/Chat/preview/2020-09-21-preview2/examples/Threads_GetChatThread.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Threads_GetChatThread.json rename to specification/communication/data-plane/Chat/preview/2020-09-21-preview2/examples/Threads_GetChatThread.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Threads_ListChatThreadsWithPageSize.json b/specification/communication/data-plane/Chat/preview/2020-09-21-preview2/examples/Threads_ListChatThreadsWithPageSize.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Threads_ListChatThreadsWithPageSize.json rename to specification/communication/data-plane/Chat/preview/2020-09-21-preview2/examples/Threads_ListChatThreadsWithPageSize.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Threads_UpdateChatThreadTopic.json b/specification/communication/data-plane/Chat/preview/2020-09-21-preview2/examples/Threads_UpdateChatThreadTopic.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Threads_UpdateChatThreadTopic.json rename to specification/communication/data-plane/Chat/preview/2020-09-21-preview2/examples/Threads_UpdateChatThreadTopic.json diff --git a/specification/communication/data-plane/Chat/preview/2020-11-01-preview3/communicationserviceschat.json b/specification/communication/data-plane/Chat/preview/2020-11-01-preview3/communicationserviceschat.json new file mode 100644 index 000000000000..ca14efb9e7ce --- /dev/null +++ b/specification/communication/data-plane/Chat/preview/2020-11-01-preview3/communicationserviceschat.json @@ -0,0 +1,1703 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Communication Chat Service", + "description": "Azure Communication Chat Service", + "version": "2020-11-01-preview3" + }, + "paths": { + "/chat/threads/{chatThreadId}/readReceipts": { + "get": { + "tags": [ + "Threads" + ], + "summary": "Gets chat message read receipts for a thread.", + "operationId": "ChatThread_ListChatReadReceipts", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "Thread id to get the chat message read receipts for.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "maxPageSize", + "description": "The maximum number of chat message read receipts to be returned per page.", + "type": "integer", + "format": "int32" + }, + { + "in": "query", + "name": "skip", + "description": "Skips chat message read receipts up to a specified position in response.", + "type": "integer", + "format": "int32" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The action returns the requested `ChatMessageReadReceipt` resources.", + "schema": { + "$ref": "#/definitions/ChatMessageReadReceiptsCollection" + } + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Get thread read receipts with pagination (max page size)": { + "$ref": "./examples/Conversations_ListChatReadReceiptsWithPageSize.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink", + "itemName": "value" + } + }, + "post": { + "tags": [ + "Threads" + ], + "summary": "Sends a read receipt event to a thread, on behalf of a user.", + "operationId": "ChatThread_SendChatReadReceipt", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "Thread id to send the read receipt event to.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "sendReadReceiptRequest", + "description": "Read receipt details.", + "required": true, + "schema": { + "$ref": "#/definitions/SendReadReceiptRequest" + } + } + ], + "responses": { + "200": { + "description": "Request successful." + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Send read receipt": { + "$ref": "./examples/Conversations_SendChatReadReceipt.json" + } + } + } + }, + "/chat/threads/{chatThreadId}/messages": { + "post": { + "tags": [ + "Messages" + ], + "summary": "Sends a message to a thread.", + "operationId": "ChatThread_SendChatMessage", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "The thread id to send the message to.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "sendChatMessageRequest", + "description": "Details of the message to send.", + "required": true, + "schema": { + "$ref": "#/definitions/SendChatMessageRequest" + } + } + ], + "responses": { + "201": { + "description": "Message sent, the `Location` header contains the URL for the newly sent message.", + "schema": { + "$ref": "#/definitions/SendChatMessageResult" + } + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Send Message": { + "$ref": "./examples/Messages_SendChatMessage.json" + } + } + }, + "get": { + "tags": [ + "Messages" + ], + "summary": "Gets a list of messages from a thread.", + "operationId": "ChatThread_ListChatMessages", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "The thread id of the message.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "maxPageSize", + "description": "The maximum number of messages to be returned per page.", + "type": "integer", + "format": "int32" + }, + { + "in": "query", + "name": "startTime", + "description": "The earliest point in time to get messages up to. The timestamp should be in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "format": "date-time" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ChatMessagesCollection" + } + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Get messages with pagination (max page size)": { + "$ref": "./examples/Messages_ListChatMessagesWithPageSize.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink", + "itemName": "value" + } + } + }, + "/chat/threads/{chatThreadId}/messages/{chatMessageId}": { + "get": { + "tags": [ + "Messages" + ], + "summary": "Gets a message by id.", + "operationId": "ChatThread_GetChatMessage", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "The thread id to which the message was sent.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "chatMessageId", + "description": "The message id.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The action returns a `Message` resource.", + "schema": { + "$ref": "#/definitions/ChatMessage" + } + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Get Message": { + "$ref": "./examples/Messages_GetChatMessage.json" + } + } + }, + "patch": { + "tags": [ + "Messages" + ], + "summary": "Updates a message.", + "operationId": "ChatThread_UpdateChatMessage", + "consumes": [ + "application/merge-patch+json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "The thread id to which the message was sent.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "chatMessageId", + "description": "The message id.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "updateChatMessageRequest", + "description": "Details of the request to update the message.", + "required": true, + "schema": { + "$ref": "#/definitions/UpdateChatMessageRequest" + } + } + ], + "responses": { + "204": { + "description": "Message is successfully updated." + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Update message content": { + "$ref": "./examples/Messages_UpdateChatMessage.json" + } + } + }, + "delete": { + "tags": [ + "Messages" + ], + "summary": "Deletes a message.", + "operationId": "ChatThread_DeleteChatMessage", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "The thread id to which the message was sent.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "chatMessageId", + "description": "The message id.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "Request successful." + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Delete message": { + "$ref": "./examples/Messages_DeleteChatMessage.json" + } + } + } + }, + "/chat/threads/{chatThreadId}/typing": { + "post": { + "tags": [ + "Messages" + ], + "summary": "Posts a typing event to a thread, on behalf of a user.", + "operationId": "ChatThread_SendTypingNotification", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "Id of the thread.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful." + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Post typing event to a thread": { + "$ref": "./examples/Messages_SendTypingNotification.json" + } + } + } + }, + "/chat/threads/{chatThreadId}/participants": { + "get": { + "tags": [ + "Participants" + ], + "summary": "Gets the participants of a thread.", + "operationId": "ChatThread_ListChatParticipants", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "Thread id to get participants for.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "maxPageSize", + "description": "The maximum number of participants to be returned per page.", + "type": "integer", + "format": "int32" + }, + { + "in": "query", + "name": "skip", + "description": "Skips participants up to a specified position in response.", + "type": "integer", + "format": "int32" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The action returns the participants of a thread.", + "schema": { + "$ref": "#/definitions/ChatParticipantsCollection" + } + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Get participants with pagination (max page size)": { + "$ref": "./examples/Participants_ListChatParticipantsWithPageSize.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink", + "itemName": "value" + } + } + }, + "/chat/threads/{chatThreadId}/participants/{chatParticipantId}": { + "delete": { + "tags": [ + "Participants" + ], + "summary": "Remove a participant from a thread.", + "operationId": "ChatThread_RemoveChatParticipant", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "Thread id to remove the participant from.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "chatParticipantId", + "description": "Id of the thread participant to remove from the thread.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "Request successful." + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Remove participant": { + "$ref": "./examples/Participants_RemoveChatParticipant.json" + } + } + } + }, + "/chat/threads/{chatThreadId}/participants/:add": { + "post": { + "tags": [ + "Participants" + ], + "summary": "Adds thread participants to a thread. If participants already exist, no change occurs.", + "operationId": "ChatThread_AddChatParticipants", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "Id of the thread to add participants to.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "addChatParticipantsRequest", + "description": "Thread participants to be added to the thread.", + "required": true, + "schema": { + "$ref": "#/definitions/AddChatParticipantsRequest" + } + } + ], + "responses": { + "201": { + "description": "The participants were successfully added.", + "schema": { + "$ref": "#/definitions/AddChatParticipantsResult" + } + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Add participants": { + "$ref": "./examples/Participants_AddChatParticipants.json" + } + } + } + }, + "/chat/threads": { + "post": { + "tags": [ + "Threads" + ], + "summary": "Creates a chat thread.", + "operationId": "Chat_CreateChatThread", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "header", + "name": "repeatability-Request-ID", + "description": "If specified, the client directs that the request is repeatable; that is, that the client can make the request multiple times with the same Repeatability-Request-ID and get back an appropriate response without the server executing the request multiple times. The value of the Repeatability-Request-ID is an opaque string representing a client-generated, globally unique for all time, identifier for the request. It is recommended to use version 4 (random) UUIDs.", + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "createChatThreadRequest", + "description": "Request payload for creating a chat thread.", + "required": true, + "schema": { + "$ref": "#/definitions/CreateChatThreadRequest" + } + } + ], + "responses": { + "201": { + "description": "Thread created, the `Location` header would contain the URL for the newly created thread.", + "schema": { + "$ref": "#/definitions/CreateChatThreadResult" + } + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Create chat thread": { + "$ref": "./examples/Threads_CreateChatThread.json" + }, + "Create chat thread with repeatability request id header": { + "$ref": "./examples/Threads_CreateChatThreadWithRepeatabilityRequestId.json" + } + } + }, + "get": { + "tags": [ + "Threads" + ], + "summary": "Gets the list of chat threads of a user.", + "operationId": "Chat_ListChatThreads", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "query", + "name": "maxPageSize", + "description": "The maximum number of chat threads returned per page.", + "type": "integer", + "format": "int32" + }, + { + "in": "query", + "name": "startTime", + "description": "The earliest point in time to get chat threads up to. The timestamp should be in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "format": "date-time" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The action returns a `GetThreadsResponse` resource.", + "schema": { + "$ref": "#/definitions/ChatThreadsInfoCollection" + } + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Get threads with pagination (Max Page Size)": { + "$ref": "./examples/Threads_ListChatThreadsWithPageSize.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink", + "itemName": "value" + } + } + }, + "/chat/threads/{chatThreadId}": { + "patch": { + "tags": [ + "Threads" + ], + "summary": "Updates a thread's properties.", + "operationId": "ChatThread_UpdateChatThread", + "consumes": [ + "application/merge-patch+json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "The id of the thread to update.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "updateChatThreadRequest", + "description": "Request payload for updating a chat thread.", + "required": true, + "schema": { + "$ref": "#/definitions/UpdateChatThreadRequest" + } + } + ], + "responses": { + "204": { + "description": "Thread was successfully updated." + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Update chat thread topic": { + "$ref": "./examples/Threads_UpdateChatThreadTopic.json" + } + } + }, + "get": { + "tags": [ + "Threads" + ], + "summary": "Gets a chat thread.", + "operationId": "Chat_GetChatThread", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "Id of the thread.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The action returns a chat thread.", + "schema": { + "$ref": "#/definitions/ChatThread" + } + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Get chat thread": { + "$ref": "./examples/Threads_GetChatThread.json" + } + } + }, + "delete": { + "tags": [ + "Threads" + ], + "summary": "Deletes a thread.", + "operationId": "Chat_DeleteChatThread", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "Id of the thread to be deleted.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "Request successful." + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Delete chat thread": { + "$ref": "./examples/Threads_DeleteChatThread.json" + } + } + } + } + }, + "definitions": { + "ChatMessageReadReceipt": { + "description": "A chat message read receipt indicates the time a chat message was read by a recipient.", + "required": [ + "chatMessageId", + "readOn", + "senderId" + ], + "type": "object", + "properties": { + "senderId": { + "description": "Id of the participant who read the message.", + "type": "string", + "example": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b" + }, + "chatMessageId": { + "description": "Id of the chat message that has been read. This id is generated by the server.", + "type": "string", + "example": "1591137790240" + }, + "readOn": { + "format": "date-time", + "description": "The time at which the message was read. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "example": "2020-10-30T10:50:50Z" + } + } + }, + "ChatMessageReadReceiptsCollection": { + "description": "A paged collection of chat message read receipts.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of chat message read receipts.", + "type": "array", + "items": { + "$ref": "#/definitions/ChatMessageReadReceipt" + } + }, + "nextLink": { + "description": "If there are more chat message read receipts that can be retrieved, the next link will be populated.", + "type": "string", + "readOnly": true + } + } + }, + "Error": { + "$ref": "../../../Common/preview/2020-11-19-preview1/common.json#/definitions/CommunicationError" + }, + "ErrorResponse": { + "$ref": "../../../Common/preview/2020-11-19-preview1/common.json#/definitions/CommunicationErrorResponse" + }, + "SendReadReceiptRequest": { + "description": "Request payload for sending a read receipt.", + "required": [ + "chatMessageId" + ], + "type": "object", + "properties": { + "chatMessageId": { + "description": "Id of the latest chat message read by the user.", + "type": "string", + "example": "1592435762364" + } + } + }, + "ChatMessageType": { + "description": "The chat message type.", + "enum": [ + "text", + "html", + "topicUpdated", + "participantAdded", + "participantRemoved" + ], + "type": "string", + "x-ms-enum": { + "name": "ChatMessageType", + "modelAsString": true + } + }, + "SendChatMessageRequest": { + "description": "Details of the message to send.", + "required": [ + "content" + ], + "type": "object", + "properties": { + "content": { + "description": "Chat message content.", + "type": "string", + "example": "Come one guys, lets go for lunch together." + }, + "senderDisplayName": { + "description": "The display name of the chat message sender. This property is used to populate sender name for push notifications.", + "type": "string", + "example": "Bob Admin" + }, + "type": { + "$ref": "#/definitions/ChatMessageType" + } + } + }, + "SendChatMessageResult": { + "description": "Result of the send message operation.", + "required": [ + "id" + ], + "type": "object", + "properties": { + "id": { + "description": "A server-generated message id.", + "type": "string", + "example": "123456789" + } + } + }, + "ChatParticipant": { + "description": "A participant of the chat thread.", + "required": [ + "id" + ], + "type": "object", + "properties": { + "id": { + "description": "The id of the chat participant.", + "type": "string", + "example": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b" + }, + "displayName": { + "description": "Display name for the chat participant.", + "type": "string", + "example": "Bob" + }, + "shareHistoryTime": { + "format": "date-time", + "description": "Time from which the chat history is shared with the participant. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "example": "2020-10-30T10:50:50Z" + } + } + }, + "ChatMessageContent": { + "description": "Content of a chat message.", + "type": "object", + "properties": { + "message": { + "description": "Chat message content for messages of types text or html.", + "type": "string", + "example": "Come one guys, lets go for lunch together." + }, + "topic": { + "description": "Chat message content for messages of type topicUpdated.", + "type": "string", + "example": "Lunch Chat thread" + }, + "participants": { + "description": "Chat message content for messages of types participantAdded or participantRemoved.", + "type": "array", + "items": { + "$ref": "#/definitions/ChatParticipant" + } + }, + "initiator": { + "description": "Chat message content for messages of types participantAdded or participantRemoved.", + "type": "string", + "example": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b" + } + } + }, + "ChatMessage": { + "description": "Chat message.", + "required": [ + "createdOn", + "id", + "sequenceId", + "type", + "version" + ], + "type": "object", + "properties": { + "id": { + "description": "The id of the chat message. This id is server generated.", + "type": "string", + "example": "123456789" + }, + "type": { + "$ref": "#/definitions/ChatMessageType" + }, + "sequenceId": { + "description": "Sequence of the chat message in the conversation.", + "type": "string" + }, + "version": { + "description": "Version of the chat message.", + "type": "string" + }, + "content": { + "$ref": "#/definitions/ChatMessageContent" + }, + "senderDisplayName": { + "description": "The display name of the chat message sender. This property is used to populate sender name for push notifications.", + "type": "string", + "example": "Jane" + }, + "createdOn": { + "format": "date-time", + "description": "The timestamp when the chat message arrived at the server. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "example": "2020-10-30T10:50:50Z" + }, + "senderId": { + "description": "The id of the chat message sender.", + "type": "string", + "example": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b" + }, + "deletedOn": { + "format": "date-time", + "description": "The timestamp (if applicable) when the message was deleted. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "example": "2020-10-30T10:50:50Z" + }, + "editedOn": { + "format": "date-time", + "description": "The last timestamp (if applicable) when the message was edited. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "example": "2020-10-30T10:50:50Z" + } + } + }, + "ChatMessagesCollection": { + "description": "Collection of chat messages for a particular chat thread.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of chat messages.", + "type": "array", + "items": { + "$ref": "#/definitions/ChatMessage" + } + }, + "nextLink": { + "description": "If there are more chat messages that can be retrieved, the next link will be populated.", + "type": "string", + "readOnly": true + } + } + }, + "UpdateChatMessageRequest": { + "description": "Request payload for updating a chat message.", + "type": "object", + "properties": { + "content": { + "description": "Chat message content.", + "type": "string", + "example": "Let's go for lunch together." + } + } + }, + "ChatParticipantsCollection": { + "description": "Collection of participants belong to a particular thread.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Chat participants.", + "type": "array", + "items": { + "$ref": "#/definitions/ChatParticipant" + } + }, + "nextLink": { + "description": "If there are more chat participants that can be retrieved, the next link will be populated.", + "type": "string", + "readOnly": true + } + } + }, + "AddChatParticipantsRequest": { + "description": "Participants to be added to the thread.", + "required": [ + "participants" + ], + "type": "object", + "properties": { + "participants": { + "description": "Participants to add to a chat thread.", + "type": "array", + "items": { + "$ref": "#/definitions/ChatParticipant" + } + } + } + }, + "AddChatParticipantsErrors": { + "description": "Errors encountered during the addition of the chat participant to the chat thread.", + "required": [ + "invalidParticipants" + ], + "type": "object", + "properties": { + "invalidParticipants": { + "description": "The participants that failed to be added to the chat thread.", + "type": "array", + "items": { + "$ref": "#/definitions/Error" + } + } + } + }, + "AddChatParticipantsResult": { + "description": "Result of the add chat participants operation.", + "type": "object", + "properties": { + "errors": { + "$ref": "#/definitions/AddChatParticipantsErrors" + } + } + }, + "CreateChatThreadRequest": { + "description": "Request payload for creating a chat thread.", + "required": [ + "participants", + "topic" + ], + "type": "object", + "properties": { + "topic": { + "description": "The chat thread topic.", + "type": "string", + "example": "Lunch Thread" + }, + "participants": { + "description": "Participants to be added to the chat thread.", + "type": "array", + "items": { + "$ref": "#/definitions/ChatParticipant" + } + } + } + }, + "ChatThread": { + "description": "Chat thread.", + "required": [ + "createdBy", + "createdOn", + "id", + "topic" + ], + "type": "object", + "properties": { + "id": { + "description": "Chat thread id.", + "type": "string", + "example": "19:uni01_uy5ucb66ugp3lrhe7pxso6xx4hsmm3dl6eyjfefv2n6x3rrurpea@thread.v2" + }, + "topic": { + "description": "Chat thread topic.", + "type": "string", + "example": "Lunch Chat thread" + }, + "createdOn": { + "format": "date-time", + "description": "The timestamp when the chat thread was created. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "example": "2020-10-30T10:50:50Z" + }, + "createdBy": { + "description": "Id of the chat thread owner.", + "type": "string", + "example": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b" + }, + "deletedOn": { + "format": "date-time", + "description": "The timestamp when the chat thread was deleted. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "example": "2020-10-30T10:50:50Z" + } + } + }, + "CreateChatThreadErrors": { + "description": "Errors encountered during the creation of the chat thread.", + "type": "object", + "properties": { + "invalidParticipants": { + "description": "The participants that failed to be added to the chat thread.", + "type": "array", + "items": { + "$ref": "#/definitions/Error" + }, + "readOnly": true + } + } + }, + "CreateChatThreadResult": { + "description": "Result of the create chat thread operation.", + "type": "object", + "properties": { + "chatThread": { + "$ref": "#/definitions/ChatThread" + }, + "errors": { + "$ref": "#/definitions/CreateChatThreadErrors" + } + } + }, + "ChatThreadInfo": { + "description": "Summary information of a chat thread.", + "required": [ + "id", + "topic" + ], + "type": "object", + "properties": { + "id": { + "description": "Chat thread id.", + "type": "string", + "example": "19:uni01_uy5ucb66ugp3lrhe7pxso6xx4hsmm3dl6eyjfefv2n6x3rrurpea@thread.v2" + }, + "topic": { + "description": "Chat thread topic.", + "type": "string", + "example": "Lunch Chat thread" + }, + "deletedOn": { + "format": "date-time", + "description": "The timestamp when the chat thread was deleted. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "example": "2020-10-30T10:50:50Z" + }, + "lastMessageReceivedOn": { + "format": "date-time", + "description": "The timestamp when the last message arrived at the server. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "readOnly": true, + "example": "2020-10-30T10:50:50Z" + } + } + }, + "ChatThreadsInfoCollection": { + "description": "Collection of chat threads.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of chat threads.", + "type": "array", + "items": { + "$ref": "#/definitions/ChatThreadInfo" + } + }, + "nextLink": { + "description": "If there are more chat threads that can be retrieved, the next link will be populated.", + "type": "string", + "readOnly": true + } + } + }, + "UpdateChatThreadRequest": { + "description": "Request payload for updating a chat thread.", + "type": "object", + "properties": { + "topic": { + "description": "Chat thread topic.", + "type": "string", + "example": "Lunch Thread" + } + } + } + }, + "parameters": { + "ApiVersionParameter": { + "in": "query", + "name": "api-version", + "description": "Version of API to invoke.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "Endpoint": { + "in": "path", + "name": "endpoint", + "description": "The endpoint of the Azure Communication resource.", + "required": true, + "type": "string", + "x-ms-skip-url-encoding": true, + "x-ms-parameter-location": "client" + } + }, + "securityDefinitions": { + "Authorization": { + "type": "apiKey", + "name": "Authorization", + "in": "header", + "description": "An ACS (Azure Communication Services) user access token." + } + }, + "security": [ + { + "Authorization": [] + } + ], + "x-ms-parameterized-host": { + "hostTemplate": "{endpoint}", + "useSchemePrefix": false, + "parameters": [ + { + "$ref": "#/parameters/Endpoint" + } + ] + } +} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-11-01-preview3/examples/Conversations_ListChatReadReceiptsWithPageSize.json b/specification/communication/data-plane/Chat/preview/2020-11-01-preview3/examples/Conversations_ListChatReadReceiptsWithPageSize.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-11-01-preview3/examples/Conversations_ListChatReadReceiptsWithPageSize.json rename to specification/communication/data-plane/Chat/preview/2020-11-01-preview3/examples/Conversations_ListChatReadReceiptsWithPageSize.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-11-01-preview3/examples/Conversations_SendChatReadReceipt.json b/specification/communication/data-plane/Chat/preview/2020-11-01-preview3/examples/Conversations_SendChatReadReceipt.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-11-01-preview3/examples/Conversations_SendChatReadReceipt.json rename to specification/communication/data-plane/Chat/preview/2020-11-01-preview3/examples/Conversations_SendChatReadReceipt.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-11-01-preview3/examples/Messages_DeleteChatMessage.json b/specification/communication/data-plane/Chat/preview/2020-11-01-preview3/examples/Messages_DeleteChatMessage.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-11-01-preview3/examples/Messages_DeleteChatMessage.json rename to specification/communication/data-plane/Chat/preview/2020-11-01-preview3/examples/Messages_DeleteChatMessage.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-11-01-preview3/examples/Messages_GetChatMessage.json b/specification/communication/data-plane/Chat/preview/2020-11-01-preview3/examples/Messages_GetChatMessage.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-11-01-preview3/examples/Messages_GetChatMessage.json rename to specification/communication/data-plane/Chat/preview/2020-11-01-preview3/examples/Messages_GetChatMessage.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-11-01-preview3/examples/Messages_ListChatMessagesWithPageSize.json b/specification/communication/data-plane/Chat/preview/2020-11-01-preview3/examples/Messages_ListChatMessagesWithPageSize.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-11-01-preview3/examples/Messages_ListChatMessagesWithPageSize.json rename to specification/communication/data-plane/Chat/preview/2020-11-01-preview3/examples/Messages_ListChatMessagesWithPageSize.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-11-01-preview3/examples/Messages_SendChatMessage.json b/specification/communication/data-plane/Chat/preview/2020-11-01-preview3/examples/Messages_SendChatMessage.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-11-01-preview3/examples/Messages_SendChatMessage.json rename to specification/communication/data-plane/Chat/preview/2020-11-01-preview3/examples/Messages_SendChatMessage.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-11-01-preview3/examples/Messages_SendTypingNotification.json b/specification/communication/data-plane/Chat/preview/2020-11-01-preview3/examples/Messages_SendTypingNotification.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-11-01-preview3/examples/Messages_SendTypingNotification.json rename to specification/communication/data-plane/Chat/preview/2020-11-01-preview3/examples/Messages_SendTypingNotification.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-11-01-preview3/examples/Messages_UpdateChatMessage.json b/specification/communication/data-plane/Chat/preview/2020-11-01-preview3/examples/Messages_UpdateChatMessage.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-11-01-preview3/examples/Messages_UpdateChatMessage.json rename to specification/communication/data-plane/Chat/preview/2020-11-01-preview3/examples/Messages_UpdateChatMessage.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-11-01-preview3/examples/Participants_AddChatParticipants.json b/specification/communication/data-plane/Chat/preview/2020-11-01-preview3/examples/Participants_AddChatParticipants.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-11-01-preview3/examples/Participants_AddChatParticipants.json rename to specification/communication/data-plane/Chat/preview/2020-11-01-preview3/examples/Participants_AddChatParticipants.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-11-01-preview3/examples/Participants_ListChatParticipantsWithPageSize.json b/specification/communication/data-plane/Chat/preview/2020-11-01-preview3/examples/Participants_ListChatParticipantsWithPageSize.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-11-01-preview3/examples/Participants_ListChatParticipantsWithPageSize.json rename to specification/communication/data-plane/Chat/preview/2020-11-01-preview3/examples/Participants_ListChatParticipantsWithPageSize.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-11-01-preview3/examples/Participants_RemoveChatParticipant.json b/specification/communication/data-plane/Chat/preview/2020-11-01-preview3/examples/Participants_RemoveChatParticipant.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-11-01-preview3/examples/Participants_RemoveChatParticipant.json rename to specification/communication/data-plane/Chat/preview/2020-11-01-preview3/examples/Participants_RemoveChatParticipant.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-11-01-preview3/examples/Threads_CreateChatThread.json b/specification/communication/data-plane/Chat/preview/2020-11-01-preview3/examples/Threads_CreateChatThread.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-11-01-preview3/examples/Threads_CreateChatThread.json rename to specification/communication/data-plane/Chat/preview/2020-11-01-preview3/examples/Threads_CreateChatThread.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-11-01-preview3/examples/Threads_CreateChatThreadWithRepeatabilityRequestId.json b/specification/communication/data-plane/Chat/preview/2020-11-01-preview3/examples/Threads_CreateChatThreadWithRepeatabilityRequestId.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-11-01-preview3/examples/Threads_CreateChatThreadWithRepeatabilityRequestId.json rename to specification/communication/data-plane/Chat/preview/2020-11-01-preview3/examples/Threads_CreateChatThreadWithRepeatabilityRequestId.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-11-01-preview3/examples/Threads_DeleteChatThread.json b/specification/communication/data-plane/Chat/preview/2020-11-01-preview3/examples/Threads_DeleteChatThread.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-11-01-preview3/examples/Threads_DeleteChatThread.json rename to specification/communication/data-plane/Chat/preview/2020-11-01-preview3/examples/Threads_DeleteChatThread.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-11-01-preview3/examples/Threads_GetChatThread.json b/specification/communication/data-plane/Chat/preview/2020-11-01-preview3/examples/Threads_GetChatThread.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-11-01-preview3/examples/Threads_GetChatThread.json rename to specification/communication/data-plane/Chat/preview/2020-11-01-preview3/examples/Threads_GetChatThread.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-11-01-preview3/examples/Threads_ListChatThreadsWithPageSize.json b/specification/communication/data-plane/Chat/preview/2020-11-01-preview3/examples/Threads_ListChatThreadsWithPageSize.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-11-01-preview3/examples/Threads_ListChatThreadsWithPageSize.json rename to specification/communication/data-plane/Chat/preview/2020-11-01-preview3/examples/Threads_ListChatThreadsWithPageSize.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-11-01-preview3/examples/Threads_UpdateChatThreadTopic.json b/specification/communication/data-plane/Chat/preview/2020-11-01-preview3/examples/Threads_UpdateChatThreadTopic.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-11-01-preview3/examples/Threads_UpdateChatThreadTopic.json rename to specification/communication/data-plane/Chat/preview/2020-11-01-preview3/examples/Threads_UpdateChatThreadTopic.json diff --git a/specification/communication/data-plane/Chat/preview/2021-01-27-preview4/communicationserviceschat.json b/specification/communication/data-plane/Chat/preview/2021-01-27-preview4/communicationserviceschat.json new file mode 100644 index 000000000000..5a8591949517 --- /dev/null +++ b/specification/communication/data-plane/Chat/preview/2021-01-27-preview4/communicationserviceschat.json @@ -0,0 +1,1711 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Communication Chat Service", + "description": "Azure Communication Chat Service", + "version": "2021-01-27-preview4" + }, + "paths": { + "/chat/threads/{chatThreadId}/readReceipts": { + "get": { + "tags": [ + "Threads" + ], + "summary": "Gets chat message read receipts for a thread.", + "operationId": "ChatThread_ListChatReadReceipts", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "Thread id to get the chat message read receipts for.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "maxPageSize", + "description": "The maximum number of chat message read receipts to be returned per page.", + "type": "integer", + "format": "int32" + }, + { + "in": "query", + "name": "skip", + "description": "Skips chat message read receipts up to a specified position in response.", + "type": "integer", + "format": "int32" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The action returns the requested `ChatMessageReadReceipt` resources.", + "schema": { + "$ref": "#/definitions/ChatMessageReadReceiptsCollection" + } + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Get thread read receipts with pagination (max page size)": { + "$ref": "./examples/Conversations_ListChatReadReceiptsWithPageSize.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink", + "itemName": "value" + } + }, + "post": { + "tags": [ + "Threads" + ], + "summary": "Sends a read receipt event to a thread, on behalf of a user.", + "operationId": "ChatThread_SendChatReadReceipt", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "Thread id to send the read receipt event to.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "sendReadReceiptRequest", + "description": "Read receipt details.", + "required": true, + "schema": { + "$ref": "#/definitions/SendReadReceiptRequest" + } + } + ], + "responses": { + "200": { + "description": "Request successful." + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Send read receipt": { + "$ref": "./examples/Conversations_SendChatReadReceipt.json" + } + } + } + }, + "/chat/threads/{chatThreadId}/messages": { + "post": { + "tags": [ + "Messages" + ], + "summary": "Sends a message to a thread.", + "operationId": "ChatThread_SendChatMessage", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "The thread id to send the message to.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "sendChatMessageRequest", + "description": "Details of the message to send.", + "required": true, + "schema": { + "$ref": "#/definitions/SendChatMessageRequest" + } + } + ], + "responses": { + "201": { + "description": "Message sent, the `Location` header contains the URL for the newly sent message.", + "schema": { + "$ref": "#/definitions/SendChatMessageResult" + } + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Send Message": { + "$ref": "./examples/Messages_SendChatMessage.json" + } + } + }, + "get": { + "tags": [ + "Messages" + ], + "summary": "Gets a list of messages from a thread.", + "operationId": "ChatThread_ListChatMessages", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "The thread id of the message.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "maxPageSize", + "description": "The maximum number of messages to be returned per page.", + "type": "integer", + "format": "int32" + }, + { + "in": "query", + "name": "startTime", + "description": "The earliest point in time to get messages up to. The timestamp should be in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "format": "date-time" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ChatMessagesCollection" + } + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Get messages with pagination (max page size)": { + "$ref": "./examples/Messages_ListChatMessagesWithPageSize.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink", + "itemName": "value" + } + } + }, + "/chat/threads/{chatThreadId}/messages/{chatMessageId}": { + "get": { + "tags": [ + "Messages" + ], + "summary": "Gets a message by id.", + "operationId": "ChatThread_GetChatMessage", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "The thread id to which the message was sent.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "chatMessageId", + "description": "The message id.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The action returns a `Message` resource.", + "schema": { + "$ref": "#/definitions/ChatMessage" + } + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Get Message": { + "$ref": "./examples/Messages_GetChatMessage.json" + } + } + }, + "patch": { + "tags": [ + "Messages" + ], + "summary": "Updates a message.", + "operationId": "ChatThread_UpdateChatMessage", + "consumes": [ + "application/merge-patch+json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "The thread id to which the message was sent.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "chatMessageId", + "description": "The message id.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "updateChatMessageRequest", + "description": "Details of the request to update the message.", + "required": true, + "schema": { + "$ref": "#/definitions/UpdateChatMessageRequest" + } + } + ], + "responses": { + "204": { + "description": "Message is successfully updated." + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Update message content": { + "$ref": "./examples/Messages_UpdateChatMessage.json" + } + } + }, + "delete": { + "tags": [ + "Messages" + ], + "summary": "Deletes a message.", + "operationId": "ChatThread_DeleteChatMessage", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "The thread id to which the message was sent.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "chatMessageId", + "description": "The message id.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "Request successful." + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Delete message": { + "$ref": "./examples/Messages_DeleteChatMessage.json" + } + } + } + }, + "/chat/threads/{chatThreadId}/typing": { + "post": { + "tags": [ + "Messages" + ], + "summary": "Posts a typing event to a thread, on behalf of a user.", + "operationId": "ChatThread_SendTypingNotification", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "Id of the thread.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful." + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Post typing event to a thread": { + "$ref": "./examples/Messages_SendTypingNotification.json" + } + } + } + }, + "/chat/threads/{chatThreadId}/participants": { + "get": { + "tags": [ + "Participants" + ], + "summary": "Gets the participants of a thread.", + "operationId": "ChatThread_ListChatParticipants", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "Thread id to get participants for.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "maxPageSize", + "description": "The maximum number of participants to be returned per page.", + "type": "integer", + "format": "int32" + }, + { + "in": "query", + "name": "skip", + "description": "Skips participants up to a specified position in response.", + "type": "integer", + "format": "int32" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The action returns the participants of a thread.", + "schema": { + "$ref": "#/definitions/ChatParticipantsCollection" + } + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Get participants with pagination (max page size)": { + "$ref": "./examples/Participants_ListChatParticipantsWithPageSize.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink", + "itemName": "value" + } + } + }, + "/chat/threads/{chatThreadId}/participants/:remove": { + "post": { + "tags": [ + "Participants" + ], + "summary": "Remove a participant from a thread.", + "operationId": "ChatThread_RemoveChatParticipant", + "consumes": [ + "application/json", + "application/merge-patch+json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "Thread id to remove the participant from.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "participantCommunicationIdentifier", + "description": "Id of the thread participant to remove from the thread.", + "required": true, + "schema": { + "$ref": "#/definitions/CommunicationIdentifierModel" + } + } + ], + "responses": { + "204": { + "description": "Request successful." + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Remove participant": { + "$ref": "./examples/Participants_RemoveChatParticipant.json" + } + } + } + }, + "/chat/threads/{chatThreadId}/participants/:add": { + "post": { + "tags": [ + "Participants" + ], + "summary": "Adds thread participants to a thread. If participants already exist, no change occurs.", + "operationId": "ChatThread_AddChatParticipants", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "Id of the thread to add participants to.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "addChatParticipantsRequest", + "description": "Thread participants to be added to the thread.", + "required": true, + "schema": { + "$ref": "#/definitions/AddChatParticipantsRequest" + } + } + ], + "responses": { + "201": { + "description": "The participants were successfully added.", + "schema": { + "$ref": "#/definitions/AddChatParticipantsResult" + } + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Add participants": { + "$ref": "./examples/Participants_AddChatParticipants.json" + } + } + } + }, + "/chat/threads": { + "post": { + "tags": [ + "Threads" + ], + "summary": "Creates a chat thread.", + "operationId": "Chat_CreateChatThread", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "header", + "name": "repeatability-Request-Id", + "description": "If specified, the client directs that the request is repeatable; that is, that the client can make the request multiple times with the same Repeatability-Request-Id and get back an appropriate response without the server executing the request multiple times. The value of the Repeatability-Request-Id is an opaque string representing a client-generated, globally unique for all time, identifier for the request. It is recommended to use version 4 (random) UUIDs.", + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "createChatThreadRequest", + "description": "Request payload for creating a chat thread.", + "required": true, + "schema": { + "$ref": "#/definitions/CreateChatThreadRequest" + } + } + ], + "responses": { + "201": { + "description": "Thread created, the `Location` header would contain the URL for the newly created thread.", + "schema": { + "$ref": "#/definitions/CreateChatThreadResult" + } + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Create chat thread": { + "$ref": "./examples/Threads_CreateChatThread.json" + }, + "Create chat thread with repeatability request id header": { + "$ref": "./examples/Threads_CreateChatThreadWithRepeatabilityRequestId.json" + } + } + }, + "get": { + "tags": [ + "Threads" + ], + "summary": "Gets the list of chat threads of a user.", + "operationId": "Chat_ListChatThreads", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "query", + "name": "maxPageSize", + "description": "The maximum number of chat threads returned per page.", + "type": "integer", + "format": "int32" + }, + { + "in": "query", + "name": "startTime", + "description": "The earliest point in time to get chat threads up to. The timestamp should be in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "format": "date-time" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The action returns a `GetThreadsResponse` resource.", + "schema": { + "$ref": "#/definitions/ChatThreadsInfoCollection" + } + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Get threads with pagination (Max Page Size)": { + "$ref": "./examples/Threads_ListChatThreadsWithPageSize.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink", + "itemName": "value" + } + } + }, + "/chat/threads/{chatThreadId}": { + "patch": { + "tags": [ + "Threads" + ], + "summary": "Updates a thread's properties.", + "operationId": "ChatThread_UpdateChatThread", + "consumes": [ + "application/merge-patch+json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "The id of the thread to update.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "updateChatThreadRequest", + "description": "Request payload for updating a chat thread.", + "required": true, + "schema": { + "$ref": "#/definitions/UpdateChatThreadRequest" + } + } + ], + "responses": { + "204": { + "description": "Thread was successfully updated." + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Update chat thread topic": { + "$ref": "./examples/Threads_UpdateChatThreadTopic.json" + } + } + }, + "get": { + "tags": [ + "Threads" + ], + "summary": "Gets a chat thread.", + "operationId": "Chat_GetChatThread", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "Id of the thread.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The action returns a chat thread.", + "schema": { + "$ref": "#/definitions/ChatThread" + } + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Get chat thread": { + "$ref": "./examples/Threads_GetChatThread.json" + } + } + }, + "delete": { + "tags": [ + "Threads" + ], + "summary": "Deletes a thread.", + "operationId": "Chat_DeleteChatThread", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "Id of the thread to be deleted.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "Request successful." + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Delete chat thread": { + "$ref": "./examples/Threads_DeleteChatThread.json" + } + } + } + } + }, + "definitions": { + "CommunicationUserIdentifierModel": { + "$ref": "../../../Common/stable/2021-03-07/common.json#/definitions/CommunicationUserIdentifierModel" + }, + "CommunicationCloudEnvironment": { + "$ref": "../../../Common/stable/2021-03-07/common.json#/definitions/CommunicationCloudEnvironmentModel" + }, + "MicrosoftTeamsUserIdentifierModel": { + "$ref": "../../../Common/stable/2021-03-07/common.json#/definitions/MicrosoftTeamsUserIdentifierModel" + }, + "CommunicationIdentifierModel": { + "$ref": "../../../Common/stable/2021-03-07/common.json#/definitions/CommunicationIdentifierModel" + }, + "ChatMessageReadReceipt": { + "description": "A chat message read receipt indicates the time a chat message was read by a recipient.", + "required": [ + "chatMessageId", + "readOn", + "senderCommunicationIdentifier" + ], + "type": "object", + "properties": { + "senderCommunicationIdentifier": { + "$ref": "#/definitions/CommunicationIdentifierModel" + }, + "chatMessageId": { + "description": "Id of the chat message that has been read. This id is generated by the server.", + "type": "string", + "example": "1591137790240" + }, + "readOn": { + "format": "date-time", + "description": "The time at which the message was read. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "example": "2020-10-30T10:50:50Z" + } + } + }, + "ChatMessageReadReceiptsCollection": { + "description": "A paged collection of chat message read receipts.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of chat message read receipts.", + "type": "array", + "items": { + "$ref": "#/definitions/ChatMessageReadReceipt" + } + }, + "nextLink": { + "description": "If there are more chat message read receipts that can be retrieved, the next link will be populated.", + "type": "string", + "readOnly": true + } + } + }, + "Error": { + "$ref": "../../../Common/stable/2021-03-07/common.json#/definitions/CommunicationError" + }, + "ErrorResponse": { + "$ref": "../../../Common/stable/2021-03-07/common.json#/definitions/CommunicationErrorResponse" + }, + "SendReadReceiptRequest": { + "description": "Request payload for sending a read receipt.", + "required": [ + "chatMessageId" + ], + "type": "object", + "properties": { + "chatMessageId": { + "description": "Id of the latest chat message read by the user.", + "type": "string", + "example": "1592435762364" + } + } + }, + "ChatMessageType": { + "description": "The chat message type.", + "enum": [ + "text", + "html", + "topicUpdated", + "participantAdded", + "participantRemoved" + ], + "type": "string", + "x-ms-enum": { + "name": "ChatMessageType", + "modelAsString": true + } + }, + "SendChatMessageRequest": { + "description": "Details of the message to send.", + "required": [ + "content" + ], + "type": "object", + "properties": { + "content": { + "description": "Chat message content.", + "type": "string", + "example": "Come one guys, lets go for lunch together." + }, + "senderDisplayName": { + "description": "The display name of the chat message sender. This property is used to populate sender name for push notifications.", + "type": "string", + "example": "Bob Admin" + }, + "type": { + "$ref": "#/definitions/ChatMessageType" + } + } + }, + "SendChatMessageResult": { + "description": "Result of the send message operation.", + "required": [ + "id" + ], + "type": "object", + "properties": { + "id": { + "description": "A server-generated message id.", + "type": "string", + "example": "123456789" + } + } + }, + "ChatParticipant": { + "description": "A participant of the chat thread.", + "required": [ + "communicationIdentifier" + ], + "type": "object", + "properties": { + "communicationIdentifier": { + "$ref": "#/definitions/CommunicationIdentifierModel" + }, + "displayName": { + "description": "Display name for the chat participant.", + "type": "string", + "example": "Bob" + }, + "shareHistoryTime": { + "format": "date-time", + "description": "Time from which the chat history is shared with the participant. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "example": "2020-10-30T10:50:50Z" + } + } + }, + "ChatMessageContent": { + "description": "Content of a chat message.", + "type": "object", + "properties": { + "message": { + "description": "Chat message content for messages of types text or html.", + "type": "string", + "example": "Come one guys, lets go for lunch together." + }, + "topic": { + "description": "Chat message content for messages of type topicUpdated.", + "type": "string", + "example": "Lunch Chat thread" + }, + "participants": { + "description": "Chat message content for messages of types participantAdded or participantRemoved.", + "type": "array", + "items": { + "$ref": "#/definitions/ChatParticipant" + } + }, + "initiatorCommunicationIdentifier": { + "$ref": "#/definitions/CommunicationIdentifierModel" + } + } + }, + "ChatMessage": { + "description": "Chat message.", + "required": [ + "createdOn", + "id", + "sequenceId", + "type", + "version" + ], + "type": "object", + "properties": { + "id": { + "description": "The id of the chat message. This id is server generated.", + "type": "string", + "example": "123456789" + }, + "type": { + "$ref": "#/definitions/ChatMessageType" + }, + "sequenceId": { + "description": "Sequence of the chat message in the conversation.", + "type": "string" + }, + "version": { + "description": "Version of the chat message.", + "type": "string" + }, + "content": { + "$ref": "#/definitions/ChatMessageContent" + }, + "senderDisplayName": { + "description": "The display name of the chat message sender. This property is used to populate sender name for push notifications.", + "type": "string", + "example": "Jane" + }, + "createdOn": { + "format": "date-time", + "description": "The timestamp when the chat message arrived at the server. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "example": "2020-10-30T10:50:50Z" + }, + "senderCommunicationIdentifier": { + "$ref": "#/definitions/CommunicationIdentifierModel" + }, + "deletedOn": { + "format": "date-time", + "description": "The timestamp (if applicable) when the message was deleted. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "example": "2020-10-30T10:50:50Z" + }, + "editedOn": { + "format": "date-time", + "description": "The last timestamp (if applicable) when the message was edited. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "example": "2020-10-30T10:50:50Z" + } + } + }, + "ChatMessagesCollection": { + "description": "Collection of chat messages for a particular chat thread.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of chat messages.", + "type": "array", + "items": { + "$ref": "#/definitions/ChatMessage" + } + }, + "nextLink": { + "description": "If there are more chat messages that can be retrieved, the next link will be populated.", + "type": "string", + "readOnly": true + } + } + }, + "UpdateChatMessageRequest": { + "description": "Request payload for updating a chat message.", + "type": "object", + "properties": { + "content": { + "description": "Chat message content.", + "type": "string", + "example": "Let's go for lunch together." + } + } + }, + "ChatParticipantsCollection": { + "description": "Collection of participants belong to a particular thread.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Chat participants.", + "type": "array", + "items": { + "$ref": "#/definitions/ChatParticipant" + } + }, + "nextLink": { + "description": "If there are more chat participants that can be retrieved, the next link will be populated.", + "type": "string", + "readOnly": true + } + } + }, + "AddChatParticipantsRequest": { + "description": "Participants to be added to the thread.", + "required": [ + "participants" + ], + "type": "object", + "properties": { + "participants": { + "description": "Participants to add to a chat thread.", + "type": "array", + "items": { + "$ref": "#/definitions/ChatParticipant" + } + } + } + }, + "AddChatParticipantsErrors": { + "description": "Errors encountered during the addition of the chat participant to the chat thread.", + "required": [ + "invalidParticipants" + ], + "type": "object", + "properties": { + "invalidParticipants": { + "description": "The participants that failed to be added to the chat thread.", + "type": "array", + "items": { + "$ref": "#/definitions/Error" + } + } + } + }, + "AddChatParticipantsResult": { + "description": "Result of the add chat participants operation.", + "type": "object", + "properties": { + "errors": { + "$ref": "#/definitions/AddChatParticipantsErrors" + } + } + }, + "CreateChatThreadRequest": { + "description": "Request payload for creating a chat thread.", + "required": [ + "participants", + "topic" + ], + "type": "object", + "properties": { + "topic": { + "description": "The chat thread topic.", + "type": "string", + "example": "Lunch Thread" + }, + "participants": { + "description": "Participants to be added to the chat thread.", + "type": "array", + "items": { + "$ref": "#/definitions/ChatParticipant" + } + } + } + }, + "ChatThread": { + "description": "Chat thread.", + "required": [ + "createdByCommunicationIdentifier", + "createdOn", + "id", + "topic" + ], + "type": "object", + "properties": { + "id": { + "description": "Chat thread id.", + "type": "string", + "example": "19:uni01_uy5ucb66ugp3lrhe7pxso6xx4hsmm3dl6eyjfefv2n6x3rrurpea@thread.v2" + }, + "topic": { + "description": "Chat thread topic.", + "type": "string", + "example": "Lunch Chat thread" + }, + "createdOn": { + "format": "date-time", + "description": "The timestamp when the chat thread was created. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "example": "2020-10-30T10:50:50Z" + }, + "createdByCommunicationIdentifier": { + "$ref": "#/definitions/CommunicationIdentifierModel" + }, + "deletedOn": { + "format": "date-time", + "description": "The timestamp when the chat thread was deleted. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "example": "2020-10-30T10:50:50Z" + } + } + }, + "CreateChatThreadErrors": { + "description": "Errors encountered during the creation of the chat thread.", + "type": "object", + "properties": { + "invalidParticipants": { + "description": "The participants that failed to be added to the chat thread.", + "type": "array", + "items": { + "$ref": "#/definitions/Error" + }, + "readOnly": true + } + } + }, + "CreateChatThreadResult": { + "description": "Result of the create chat thread operation.", + "type": "object", + "properties": { + "chatThread": { + "$ref": "#/definitions/ChatThread" + }, + "errors": { + "$ref": "#/definitions/CreateChatThreadErrors" + } + } + }, + "ChatThreadInfo": { + "description": "Summary information of a chat thread.", + "required": [ + "id", + "topic" + ], + "type": "object", + "properties": { + "id": { + "description": "Chat thread id.", + "type": "string", + "example": "19:uni01_uy5ucb66ugp3lrhe7pxso6xx4hsmm3dl6eyjfefv2n6x3rrurpea@thread.v2" + }, + "topic": { + "description": "Chat thread topic.", + "type": "string", + "example": "Lunch Chat thread" + }, + "deletedOn": { + "format": "date-time", + "description": "The timestamp when the chat thread was deleted. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "example": "2020-10-30T10:50:50Z" + }, + "lastMessageReceivedOn": { + "format": "date-time", + "description": "The timestamp when the last message arrived at the server. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "readOnly": true, + "example": "2020-10-30T10:50:50Z" + } + } + }, + "ChatThreadsInfoCollection": { + "description": "Collection of chat threads.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of chat threads.", + "type": "array", + "items": { + "$ref": "#/definitions/ChatThreadInfo" + } + }, + "nextLink": { + "description": "If there are more chat threads that can be retrieved, the next link will be populated.", + "type": "string", + "readOnly": true + } + } + }, + "UpdateChatThreadRequest": { + "description": "Request payload for updating a chat thread.", + "type": "object", + "properties": { + "topic": { + "description": "Chat thread topic.", + "type": "string", + "example": "Lunch Thread" + } + } + } + }, + "parameters": { + "ApiVersionParameter": { + "in": "query", + "name": "api-version", + "description": "Version of API to invoke.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "Endpoint": { + "in": "path", + "name": "endpoint", + "description": "The endpoint of the Azure Communication resource.", + "required": true, + "type": "string", + "x-ms-skip-url-encoding": true, + "x-ms-parameter-location": "client" + } + }, + "securityDefinitions": { + "Authorization": { + "type": "apiKey", + "name": "Authorization", + "in": "header", + "description": "An ACS (Azure Communication Services) user access token." + } + }, + "security": [ + { + "Authorization": [] + } + ], + "x-ms-parameterized-host": { + "hostTemplate": "{endpoint}", + "useSchemePrefix": false, + "parameters": [ + { + "$ref": "#/parameters/Endpoint" + } + ] + } +} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-01-27-preview4/examples/Conversations_ListChatReadReceiptsWithPageSize.json b/specification/communication/data-plane/Chat/preview/2021-01-27-preview4/examples/Conversations_ListChatReadReceiptsWithPageSize.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-01-27-preview4/examples/Conversations_ListChatReadReceiptsWithPageSize.json rename to specification/communication/data-plane/Chat/preview/2021-01-27-preview4/examples/Conversations_ListChatReadReceiptsWithPageSize.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-01-27-preview4/examples/Conversations_SendChatReadReceipt.json b/specification/communication/data-plane/Chat/preview/2021-01-27-preview4/examples/Conversations_SendChatReadReceipt.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-01-27-preview4/examples/Conversations_SendChatReadReceipt.json rename to specification/communication/data-plane/Chat/preview/2021-01-27-preview4/examples/Conversations_SendChatReadReceipt.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-01-27-preview4/examples/Messages_DeleteChatMessage.json b/specification/communication/data-plane/Chat/preview/2021-01-27-preview4/examples/Messages_DeleteChatMessage.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-01-27-preview4/examples/Messages_DeleteChatMessage.json rename to specification/communication/data-plane/Chat/preview/2021-01-27-preview4/examples/Messages_DeleteChatMessage.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-01-27-preview4/examples/Messages_GetChatMessage.json b/specification/communication/data-plane/Chat/preview/2021-01-27-preview4/examples/Messages_GetChatMessage.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-01-27-preview4/examples/Messages_GetChatMessage.json rename to specification/communication/data-plane/Chat/preview/2021-01-27-preview4/examples/Messages_GetChatMessage.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-01-27-preview4/examples/Messages_ListChatMessagesWithPageSize.json b/specification/communication/data-plane/Chat/preview/2021-01-27-preview4/examples/Messages_ListChatMessagesWithPageSize.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-01-27-preview4/examples/Messages_ListChatMessagesWithPageSize.json rename to specification/communication/data-plane/Chat/preview/2021-01-27-preview4/examples/Messages_ListChatMessagesWithPageSize.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-01-27-preview4/examples/Messages_SendChatMessage.json b/specification/communication/data-plane/Chat/preview/2021-01-27-preview4/examples/Messages_SendChatMessage.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-01-27-preview4/examples/Messages_SendChatMessage.json rename to specification/communication/data-plane/Chat/preview/2021-01-27-preview4/examples/Messages_SendChatMessage.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-01-27-preview4/examples/Messages_SendTypingNotification.json b/specification/communication/data-plane/Chat/preview/2021-01-27-preview4/examples/Messages_SendTypingNotification.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-01-27-preview4/examples/Messages_SendTypingNotification.json rename to specification/communication/data-plane/Chat/preview/2021-01-27-preview4/examples/Messages_SendTypingNotification.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-01-27-preview4/examples/Messages_UpdateChatMessage.json b/specification/communication/data-plane/Chat/preview/2021-01-27-preview4/examples/Messages_UpdateChatMessage.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-01-27-preview4/examples/Messages_UpdateChatMessage.json rename to specification/communication/data-plane/Chat/preview/2021-01-27-preview4/examples/Messages_UpdateChatMessage.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-01-27-preview4/examples/Participants_AddChatParticipants.json b/specification/communication/data-plane/Chat/preview/2021-01-27-preview4/examples/Participants_AddChatParticipants.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-01-27-preview4/examples/Participants_AddChatParticipants.json rename to specification/communication/data-plane/Chat/preview/2021-01-27-preview4/examples/Participants_AddChatParticipants.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-01-27-preview4/examples/Participants_ListChatParticipantsWithPageSize.json b/specification/communication/data-plane/Chat/preview/2021-01-27-preview4/examples/Participants_ListChatParticipantsWithPageSize.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-01-27-preview4/examples/Participants_ListChatParticipantsWithPageSize.json rename to specification/communication/data-plane/Chat/preview/2021-01-27-preview4/examples/Participants_ListChatParticipantsWithPageSize.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-01-27-preview4/examples/Participants_RemoveChatParticipant.json b/specification/communication/data-plane/Chat/preview/2021-01-27-preview4/examples/Participants_RemoveChatParticipant.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-01-27-preview4/examples/Participants_RemoveChatParticipant.json rename to specification/communication/data-plane/Chat/preview/2021-01-27-preview4/examples/Participants_RemoveChatParticipant.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-01-27-preview4/examples/Threads_CreateChatThread.json b/specification/communication/data-plane/Chat/preview/2021-01-27-preview4/examples/Threads_CreateChatThread.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-01-27-preview4/examples/Threads_CreateChatThread.json rename to specification/communication/data-plane/Chat/preview/2021-01-27-preview4/examples/Threads_CreateChatThread.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-01-27-preview4/examples/Threads_CreateChatThreadWithRepeatabilityRequestId.json b/specification/communication/data-plane/Chat/preview/2021-01-27-preview4/examples/Threads_CreateChatThreadWithRepeatabilityRequestId.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-01-27-preview4/examples/Threads_CreateChatThreadWithRepeatabilityRequestId.json rename to specification/communication/data-plane/Chat/preview/2021-01-27-preview4/examples/Threads_CreateChatThreadWithRepeatabilityRequestId.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-01-27-preview4/examples/Threads_DeleteChatThread.json b/specification/communication/data-plane/Chat/preview/2021-01-27-preview4/examples/Threads_DeleteChatThread.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-01-27-preview4/examples/Threads_DeleteChatThread.json rename to specification/communication/data-plane/Chat/preview/2021-01-27-preview4/examples/Threads_DeleteChatThread.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-01-27-preview4/examples/Threads_GetChatThread.json b/specification/communication/data-plane/Chat/preview/2021-01-27-preview4/examples/Threads_GetChatThread.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-01-27-preview4/examples/Threads_GetChatThread.json rename to specification/communication/data-plane/Chat/preview/2021-01-27-preview4/examples/Threads_GetChatThread.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-01-27-preview4/examples/Threads_ListChatThreadsWithPageSize.json b/specification/communication/data-plane/Chat/preview/2021-01-27-preview4/examples/Threads_ListChatThreadsWithPageSize.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-01-27-preview4/examples/Threads_ListChatThreadsWithPageSize.json rename to specification/communication/data-plane/Chat/preview/2021-01-27-preview4/examples/Threads_ListChatThreadsWithPageSize.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-01-27-preview4/examples/Threads_UpdateChatThreadTopic.json b/specification/communication/data-plane/Chat/preview/2021-01-27-preview4/examples/Threads_UpdateChatThreadTopic.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-01-27-preview4/examples/Threads_UpdateChatThreadTopic.json rename to specification/communication/data-plane/Chat/preview/2021-01-27-preview4/examples/Threads_UpdateChatThreadTopic.json diff --git a/specification/communication/data-plane/Chat/preview/2021-03-01-preview5/communicationserviceschat.json b/specification/communication/data-plane/Chat/preview/2021-03-01-preview5/communicationserviceschat.json new file mode 100644 index 000000000000..2455fb4586e4 --- /dev/null +++ b/specification/communication/data-plane/Chat/preview/2021-03-01-preview5/communicationserviceschat.json @@ -0,0 +1,1690 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Communication Chat Service", + "description": "Azure Communication Chat Service", + "version": "2021-03-01-preview5" + }, + "paths": { + "/chat/threads/{chatThreadId}/readReceipts": { + "get": { + "tags": [ + "Threads" + ], + "summary": "Gets chat message read receipts for a thread.", + "operationId": "ChatThread_ListChatReadReceipts", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "Thread id to get the chat message read receipts for.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "maxPageSize", + "description": "The maximum number of chat message read receipts to be returned per page.", + "type": "integer", + "format": "int32" + }, + { + "in": "query", + "name": "skip", + "description": "Skips chat message read receipts up to a specified position in response.", + "type": "integer", + "format": "int32" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The action returns the requested `ChatMessageReadReceipt` resources.", + "schema": { + "$ref": "#/definitions/ChatMessageReadReceiptsCollection" + } + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Get thread read receipts with pagination (max page size)": { + "$ref": "./examples/Conversations_ListChatReadReceiptsWithPageSize.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink", + "itemName": "value" + } + }, + "post": { + "tags": [ + "Threads" + ], + "summary": "Sends a read receipt event to a thread, on behalf of a user.", + "operationId": "ChatThread_SendChatReadReceipt", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "Thread id to send the read receipt event to.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "sendReadReceiptRequest", + "description": "Read receipt details.", + "required": true, + "schema": { + "$ref": "#/definitions/SendReadReceiptRequest" + } + } + ], + "responses": { + "200": { + "description": "Request successful." + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Send read receipt": { + "$ref": "./examples/Conversations_SendChatReadReceipt.json" + } + } + } + }, + "/chat/threads/{chatThreadId}/messages": { + "post": { + "tags": [ + "Messages" + ], + "summary": "Sends a message to a thread.", + "operationId": "ChatThread_SendChatMessage", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "The thread id to send the message to.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "sendChatMessageRequest", + "description": "Details of the message to send.", + "required": true, + "schema": { + "$ref": "#/definitions/SendChatMessageRequest" + } + } + ], + "responses": { + "201": { + "description": "Message sent, the `Location` header contains the URL for the newly sent message.", + "schema": { + "$ref": "#/definitions/SendChatMessageResult" + } + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Send Message": { + "$ref": "./examples/Messages_SendChatMessage.json" + } + } + }, + "get": { + "tags": [ + "Messages" + ], + "summary": "Gets a list of messages from a thread.", + "operationId": "ChatThread_ListChatMessages", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "The thread id of the message.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "maxPageSize", + "description": "The maximum number of messages to be returned per page.", + "type": "integer", + "format": "int32" + }, + { + "in": "query", + "name": "startTime", + "description": "The earliest point in time to get messages up to. The timestamp should be in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "format": "date-time" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ChatMessagesCollection" + } + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Get messages with pagination (max page size)": { + "$ref": "./examples/Messages_ListChatMessagesWithPageSize.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink", + "itemName": "value" + } + } + }, + "/chat/threads/{chatThreadId}/messages/{chatMessageId}": { + "get": { + "tags": [ + "Messages" + ], + "summary": "Gets a message by id.", + "operationId": "ChatThread_GetChatMessage", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "The thread id to which the message was sent.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "chatMessageId", + "description": "The message id.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The action returns a `Message` resource.", + "schema": { + "$ref": "#/definitions/ChatMessage" + } + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Get Message": { + "$ref": "./examples/Messages_GetChatMessage.json" + } + } + }, + "patch": { + "tags": [ + "Messages" + ], + "summary": "Updates a message.", + "operationId": "ChatThread_UpdateChatMessage", + "consumes": [ + "application/merge-patch+json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "The thread id to which the message was sent.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "chatMessageId", + "description": "The message id.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "updateChatMessageRequest", + "description": "Details of the request to update the message.", + "required": true, + "schema": { + "$ref": "#/definitions/UpdateChatMessageRequest" + } + } + ], + "responses": { + "204": { + "description": "Message is successfully updated." + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Update message content": { + "$ref": "./examples/Messages_UpdateChatMessage.json" + } + } + }, + "delete": { + "tags": [ + "Messages" + ], + "summary": "Deletes a message.", + "operationId": "ChatThread_DeleteChatMessage", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "The thread id to which the message was sent.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "chatMessageId", + "description": "The message id.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "Request successful." + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Delete message": { + "$ref": "./examples/Messages_DeleteChatMessage.json" + } + } + } + }, + "/chat/threads/{chatThreadId}/typing": { + "post": { + "tags": [ + "Messages" + ], + "summary": "Posts a typing event to a thread, on behalf of a user.", + "operationId": "ChatThread_SendTypingNotification", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "Id of the thread.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful." + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Post typing event to a thread": { + "$ref": "./examples/Messages_SendTypingNotification.json" + } + } + } + }, + "/chat/threads/{chatThreadId}/participants": { + "get": { + "tags": [ + "Participants" + ], + "summary": "Gets the participants of a thread.", + "operationId": "ChatThread_ListChatParticipants", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "Thread id to get participants for.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "maxPageSize", + "description": "The maximum number of participants to be returned per page.", + "type": "integer", + "format": "int32" + }, + { + "in": "query", + "name": "skip", + "description": "Skips participants up to a specified position in response.", + "type": "integer", + "format": "int32" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The action returns the participants of a thread.", + "schema": { + "$ref": "#/definitions/ChatParticipantsCollection" + } + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Get participants with pagination (max page size)": { + "$ref": "./examples/Participants_ListChatParticipantsWithPageSize.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink", + "itemName": "value" + } + } + }, + "/chat/threads/{chatThreadId}/participants/:remove": { + "post": { + "tags": [ + "Participants" + ], + "summary": "Remove a participant from a thread.", + "operationId": "ChatThread_RemoveChatParticipant", + "consumes": [ + "application/json", + "application/merge-patch+json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "Thread id to remove the participant from.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "participantCommunicationIdentifier", + "description": "Id of the thread participant to remove from the thread.", + "required": true, + "schema": { + "$ref": "#/definitions/CommunicationIdentifierModel" + } + } + ], + "responses": { + "204": { + "description": "Request successful." + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Remove participant": { + "$ref": "./examples/Participants_RemoveChatParticipant.json" + } + } + } + }, + "/chat/threads/{chatThreadId}/participants/:add": { + "post": { + "tags": [ + "Participants" + ], + "summary": "Adds thread participants to a thread. If participants already exist, no change occurs.", + "operationId": "ChatThread_AddChatParticipants", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "Id of the thread to add participants to.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "addChatParticipantsRequest", + "description": "Thread participants to be added to the thread.", + "required": true, + "schema": { + "$ref": "#/definitions/AddChatParticipantsRequest" + } + } + ], + "responses": { + "201": { + "description": "The participants were successfully added.", + "schema": { + "$ref": "#/definitions/AddChatParticipantsResult" + } + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Add participants": { + "$ref": "./examples/Participants_AddChatParticipants.json" + } + } + } + }, + "/chat/threads": { + "post": { + "tags": [ + "Threads" + ], + "summary": "Creates a chat thread.", + "operationId": "Chat_CreateChatThread", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "header", + "name": "idempotency-token", + "description": "If specified, the client directs that the request is repeatable; that is, that the client can make the request multiple times with the same Idempotency-Token and get back an appropriate response without the server executing the request multiple times. The value of the Idempotency-Token is an opaque string representing a client-generated, globally unique for all time, identifier for the request. It is recommended to use version 4 (random) UUIDs.", + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "createChatThreadRequest", + "description": "Request payload for creating a chat thread.", + "required": true, + "schema": { + "$ref": "#/definitions/CreateChatThreadRequest" + } + } + ], + "responses": { + "201": { + "description": "Thread created, the `Location` header would contain the URL for the newly created thread.", + "schema": { + "$ref": "#/definitions/CreateChatThreadResult" + } + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Create chat thread": { + "$ref": "./examples/Threads_CreateChatThread.json" + }, + "Create chat thread with repeatability request id header": { + "$ref": "./examples/Threads_CreateChatThreadWithIdempotencyToken.json" + } + } + }, + "get": { + "tags": [ + "Threads" + ], + "summary": "Gets the list of chat threads of a user.", + "operationId": "Chat_ListChatThreads", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "query", + "name": "maxPageSize", + "description": "The maximum number of chat threads returned per page.", + "type": "integer", + "format": "int32" + }, + { + "in": "query", + "name": "startTime", + "description": "The earliest point in time to get chat threads up to. The timestamp should be in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "format": "date-time" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The action returns a `GetThreadsResponse` resource.", + "schema": { + "$ref": "#/definitions/ChatThreadsItemCollection" + } + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Get threads with pagination (Max Page Size)": { + "$ref": "./examples/Threads_ListChatThreadsWithPageSize.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink", + "itemName": "value" + } + } + }, + "/chat/threads/{chatThreadId}": { + "patch": { + "tags": [ + "Threads" + ], + "summary": "Updates a thread's properties.", + "operationId": "ChatThread_UpdateChatThreadProperties", + "consumes": [ + "application/merge-patch+json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "The id of the thread to update.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "updateChatThreadRequest", + "description": "Request payload for updating a chat thread.", + "required": true, + "schema": { + "$ref": "#/definitions/UpdateChatThreadRequest" + } + } + ], + "responses": { + "204": { + "description": "Thread was successfully updated." + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Update chat thread topic": { + "$ref": "./examples/Threads_UpdateChatThreadTopic.json" + } + } + }, + "get": { + "tags": [ + "Threads" + ], + "summary": "Gets a chat thread's properties.", + "operationId": "ChatThread_GetChatThreadProperties", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "Id of the thread.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The action returns a chat thread.", + "schema": { + "$ref": "#/definitions/ChatThreadProperties" + } + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Get chat thread": { + "$ref": "./examples/Threads_GetChatThread.json" + } + } + }, + "delete": { + "tags": [ + "Threads" + ], + "summary": "Deletes a thread.", + "operationId": "Chat_DeleteChatThread", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "Id of the thread to be deleted.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "Request successful." + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Delete chat thread": { + "$ref": "./examples/Threads_DeleteChatThread.json" + } + } + } + } + }, + "definitions": { + "CommunicationUserIdentifierModel": { + "$ref": "../../../Common/stable/2021-03-07/common.json#/definitions/CommunicationUserIdentifierModel" + }, + "CommunicationCloudEnvironment": { + "$ref": "../../../Common/stable/2021-03-07/common.json#/definitions/CommunicationCloudEnvironmentModel" + }, + "MicrosoftTeamsUserIdentifierModel": { + "$ref": "../../../Common/stable/2021-03-07/common.json#/definitions/MicrosoftTeamsUserIdentifierModel" + }, + "CommunicationIdentifierModel": { + "$ref": "../../../Common/stable/2021-03-07/common.json#/definitions/CommunicationIdentifierModel" + }, + "ChatMessageReadReceipt": { + "description": "A chat message read receipt indicates the time a chat message was read by a recipient.", + "required": [ + "chatMessageId", + "readOn", + "senderCommunicationIdentifier" + ], + "type": "object", + "properties": { + "senderCommunicationIdentifier": { + "$ref": "#/definitions/CommunicationIdentifierModel" + }, + "chatMessageId": { + "description": "Id of the chat message that has been read. This id is generated by the server.", + "type": "string", + "example": "1591137790240" + }, + "readOn": { + "format": "date-time", + "description": "The time at which the message was read. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "example": "2020-10-30T10:50:50Z" + } + } + }, + "ChatMessageReadReceiptsCollection": { + "description": "A paged collection of chat message read receipts.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of chat message read receipts.", + "type": "array", + "items": { + "$ref": "#/definitions/ChatMessageReadReceipt" + } + }, + "nextLink": { + "description": "If there are more chat message read receipts that can be retrieved, the next link will be populated.", + "type": "string", + "readOnly": true + } + } + }, + "CommunicationError": { + "$ref": "../../../Common/stable/2021-03-07/common.json#/definitions/CommunicationError" + }, + "CommunicationErrorResponse": { + "$ref": "../../../Common/stable/2021-03-07/common.json#/definitions/CommunicationErrorResponse" + }, + "SendReadReceiptRequest": { + "description": "Request payload for sending a read receipt.", + "required": [ + "chatMessageId" + ], + "type": "object", + "properties": { + "chatMessageId": { + "description": "Id of the latest chat message read by the user.", + "type": "string", + "example": "1592435762364" + } + } + }, + "ChatMessageType": { + "description": "The chat message type.", + "enum": [ + "text", + "html", + "topicUpdated", + "participantAdded", + "participantRemoved" + ], + "type": "string", + "x-ms-enum": { + "name": "ChatMessageType", + "modelAsString": true + } + }, + "SendChatMessageRequest": { + "description": "Details of the message to send.", + "required": [ + "content" + ], + "type": "object", + "properties": { + "content": { + "description": "Chat message content.", + "type": "string", + "example": "Come one guys, lets go for lunch together." + }, + "senderDisplayName": { + "description": "The display name of the chat message sender. This property is used to populate sender name for push notifications.", + "type": "string", + "example": "Bob Admin" + }, + "type": { + "$ref": "#/definitions/ChatMessageType" + } + } + }, + "SendChatMessageResult": { + "description": "Result of the send message operation.", + "required": [ + "id" + ], + "type": "object", + "properties": { + "id": { + "description": "A server-generated message id.", + "type": "string", + "example": "123456789" + } + } + }, + "ChatParticipant": { + "description": "A participant of the chat thread.", + "required": [ + "communicationIdentifier" + ], + "type": "object", + "properties": { + "communicationIdentifier": { + "$ref": "#/definitions/CommunicationIdentifierModel" + }, + "displayName": { + "description": "Display name for the chat participant.", + "type": "string", + "example": "Bob" + }, + "shareHistoryTime": { + "format": "date-time", + "description": "Time from which the chat history is shared with the participant. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "example": "2020-10-30T10:50:50Z" + } + } + }, + "ChatMessageContent": { + "description": "Content of a chat message.", + "type": "object", + "properties": { + "message": { + "description": "Chat message content for messages of types text or html.", + "type": "string", + "example": "Come one guys, lets go for lunch together." + }, + "topic": { + "description": "Chat message content for messages of type topicUpdated.", + "type": "string", + "example": "Lunch Chat thread" + }, + "participants": { + "description": "Chat message content for messages of types participantAdded or participantRemoved.", + "type": "array", + "items": { + "$ref": "#/definitions/ChatParticipant" + } + }, + "initiatorCommunicationIdentifier": { + "$ref": "#/definitions/CommunicationIdentifierModel" + } + } + }, + "ChatMessage": { + "description": "Chat message.", + "required": [ + "createdOn", + "id", + "sequenceId", + "type", + "version" + ], + "type": "object", + "properties": { + "id": { + "description": "The id of the chat message. This id is server generated.", + "type": "string", + "example": "123456789" + }, + "type": { + "$ref": "#/definitions/ChatMessageType" + }, + "sequenceId": { + "description": "Sequence of the chat message in the conversation.", + "type": "string" + }, + "version": { + "description": "Version of the chat message.", + "type": "string" + }, + "content": { + "$ref": "#/definitions/ChatMessageContent" + }, + "senderDisplayName": { + "description": "The display name of the chat message sender. This property is used to populate sender name for push notifications.", + "type": "string", + "example": "Jane" + }, + "createdOn": { + "format": "date-time", + "description": "The timestamp when the chat message arrived at the server. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "example": "2020-10-30T10:50:50Z" + }, + "senderCommunicationIdentifier": { + "$ref": "#/definitions/CommunicationIdentifierModel" + }, + "deletedOn": { + "format": "date-time", + "description": "The timestamp (if applicable) when the message was deleted. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "example": "2020-10-30T10:50:50Z" + }, + "editedOn": { + "format": "date-time", + "description": "The last timestamp (if applicable) when the message was edited. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "example": "2020-10-30T10:50:50Z" + } + } + }, + "ChatMessagesCollection": { + "description": "Collection of chat messages for a particular chat thread.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of chat messages.", + "type": "array", + "items": { + "$ref": "#/definitions/ChatMessage" + } + }, + "nextLink": { + "description": "If there are more chat messages that can be retrieved, the next link will be populated.", + "type": "string", + "readOnly": true + } + } + }, + "UpdateChatMessageRequest": { + "description": "Request payload for updating a chat message.", + "type": "object", + "properties": { + "content": { + "description": "Chat message content.", + "type": "string", + "example": "Let's go for lunch together." + } + } + }, + "ChatParticipantsCollection": { + "description": "Collection of participants belong to a particular thread.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Chat participants.", + "type": "array", + "items": { + "$ref": "#/definitions/ChatParticipant" + } + }, + "nextLink": { + "description": "If there are more chat participants that can be retrieved, the next link will be populated.", + "type": "string", + "readOnly": true + } + } + }, + "AddChatParticipantsRequest": { + "description": "Participants to be added to the thread.", + "required": [ + "participants" + ], + "type": "object", + "properties": { + "participants": { + "description": "Participants to add to a chat thread.", + "type": "array", + "items": { + "$ref": "#/definitions/ChatParticipant" + } + } + } + }, + "AddChatParticipantsResult": { + "description": "Result of the add chat participants operation.", + "type": "object", + "properties": { + "invalidParticipants": { + "description": "The participants that failed to be added to the chat thread.", + "type": "array", + "items": { + "$ref": "#/definitions/CommunicationError" + }, + "readOnly": true + } + } + }, + "CreateChatThreadRequest": { + "description": "Request payload for creating a chat thread.", + "required": [ + "topic" + ], + "type": "object", + "properties": { + "topic": { + "description": "The chat thread topic.", + "type": "string", + "example": "Lunch Thread" + }, + "participants": { + "description": "Participants to be added to the chat thread.", + "type": "array", + "items": { + "$ref": "#/definitions/ChatParticipant" + } + } + } + }, + "ChatThreadProperties": { + "description": "Chat thread.", + "required": [ + "createdByCommunicationIdentifier", + "createdOn", + "id", + "topic" + ], + "type": "object", + "properties": { + "id": { + "description": "Chat thread id.", + "type": "string", + "example": "19:uni01_uy5ucb66ugp3lrhe7pxso6xx4hsmm3dl6eyjfefv2n6x3rrurpea@thread.v2" + }, + "topic": { + "description": "Chat thread topic.", + "type": "string", + "example": "Lunch Chat thread" + }, + "createdOn": { + "format": "date-time", + "description": "The timestamp when the chat thread was created. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "example": "2020-10-30T10:50:50Z" + }, + "createdByCommunicationIdentifier": { + "$ref": "#/definitions/CommunicationIdentifierModel" + }, + "deletedOn": { + "format": "date-time", + "description": "The timestamp when the chat thread was deleted. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "example": "2020-10-30T10:50:50Z" + } + } + }, + "CreateChatThreadResult": { + "description": "Result of the create chat thread operation.", + "type": "object", + "properties": { + "chatThread": { + "$ref": "#/definitions/ChatThreadProperties" + }, + "invalidParticipants": { + "description": "The participants that failed to be added to the chat thread.", + "type": "array", + "items": { + "$ref": "#/definitions/CommunicationError" + }, + "readOnly": true + } + } + }, + "ChatThreadItem": { + "description": "Summary information of a chat thread.", + "required": [ + "id", + "topic" + ], + "type": "object", + "properties": { + "id": { + "description": "Chat thread id.", + "type": "string", + "example": "19:uni01_uy5ucb66ugp3lrhe7pxso6xx4hsmm3dl6eyjfefv2n6x3rrurpea@thread.v2" + }, + "topic": { + "description": "Chat thread topic.", + "type": "string", + "example": "Lunch Chat thread" + }, + "deletedOn": { + "format": "date-time", + "description": "The timestamp when the chat thread was deleted. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "example": "2020-10-30T10:50:50Z" + }, + "lastMessageReceivedOn": { + "format": "date-time", + "description": "The timestamp when the last message arrived at the server. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "readOnly": true, + "example": "2020-10-30T10:50:50Z" + } + } + }, + "ChatThreadsItemCollection": { + "description": "Collection of chat threads.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of chat threads.", + "type": "array", + "items": { + "$ref": "#/definitions/ChatThreadItem" + } + }, + "nextLink": { + "description": "If there are more chat threads that can be retrieved, the next link will be populated.", + "type": "string", + "readOnly": true + } + } + }, + "UpdateChatThreadRequest": { + "description": "Request payload for updating a chat thread.", + "type": "object", + "properties": { + "topic": { + "description": "Chat thread topic.", + "type": "string", + "example": "Lunch Thread" + } + } + } + }, + "parameters": { + "ApiVersionParameter": { + "in": "query", + "name": "api-version", + "description": "Version of API to invoke.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "Endpoint": { + "in": "path", + "name": "endpoint", + "description": "The endpoint of the Azure Communication resource.", + "required": true, + "type": "string", + "x-ms-skip-url-encoding": true, + "x-ms-parameter-location": "client" + } + }, + "securityDefinitions": { + "Authorization": { + "type": "apiKey", + "name": "Authorization", + "in": "header", + "description": "An ACS (Azure Communication Services) user access token." + } + }, + "security": [ + { + "Authorization": [] + } + ], + "x-ms-parameterized-host": { + "hostTemplate": "{endpoint}", + "useSchemePrefix": false, + "parameters": [ + { + "$ref": "#/parameters/Endpoint" + } + ] + } +} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-03-01-preview5/examples/Conversations_ListChatReadReceiptsWithPageSize.json b/specification/communication/data-plane/Chat/preview/2021-03-01-preview5/examples/Conversations_ListChatReadReceiptsWithPageSize.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-03-01-preview5/examples/Conversations_ListChatReadReceiptsWithPageSize.json rename to specification/communication/data-plane/Chat/preview/2021-03-01-preview5/examples/Conversations_ListChatReadReceiptsWithPageSize.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-03-01-preview5/examples/Conversations_SendChatReadReceipt.json b/specification/communication/data-plane/Chat/preview/2021-03-01-preview5/examples/Conversations_SendChatReadReceipt.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-03-01-preview5/examples/Conversations_SendChatReadReceipt.json rename to specification/communication/data-plane/Chat/preview/2021-03-01-preview5/examples/Conversations_SendChatReadReceipt.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-03-01-preview5/examples/Messages_DeleteChatMessage.json b/specification/communication/data-plane/Chat/preview/2021-03-01-preview5/examples/Messages_DeleteChatMessage.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-03-01-preview5/examples/Messages_DeleteChatMessage.json rename to specification/communication/data-plane/Chat/preview/2021-03-01-preview5/examples/Messages_DeleteChatMessage.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-03-01-preview5/examples/Messages_GetChatMessage.json b/specification/communication/data-plane/Chat/preview/2021-03-01-preview5/examples/Messages_GetChatMessage.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-03-01-preview5/examples/Messages_GetChatMessage.json rename to specification/communication/data-plane/Chat/preview/2021-03-01-preview5/examples/Messages_GetChatMessage.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-03-01-preview5/examples/Messages_ListChatMessagesWithPageSize.json b/specification/communication/data-plane/Chat/preview/2021-03-01-preview5/examples/Messages_ListChatMessagesWithPageSize.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-03-01-preview5/examples/Messages_ListChatMessagesWithPageSize.json rename to specification/communication/data-plane/Chat/preview/2021-03-01-preview5/examples/Messages_ListChatMessagesWithPageSize.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-03-01-preview5/examples/Messages_SendChatMessage.json b/specification/communication/data-plane/Chat/preview/2021-03-01-preview5/examples/Messages_SendChatMessage.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-03-01-preview5/examples/Messages_SendChatMessage.json rename to specification/communication/data-plane/Chat/preview/2021-03-01-preview5/examples/Messages_SendChatMessage.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-03-01-preview5/examples/Messages_SendTypingNotification.json b/specification/communication/data-plane/Chat/preview/2021-03-01-preview5/examples/Messages_SendTypingNotification.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-03-01-preview5/examples/Messages_SendTypingNotification.json rename to specification/communication/data-plane/Chat/preview/2021-03-01-preview5/examples/Messages_SendTypingNotification.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-03-01-preview5/examples/Messages_UpdateChatMessage.json b/specification/communication/data-plane/Chat/preview/2021-03-01-preview5/examples/Messages_UpdateChatMessage.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-03-01-preview5/examples/Messages_UpdateChatMessage.json rename to specification/communication/data-plane/Chat/preview/2021-03-01-preview5/examples/Messages_UpdateChatMessage.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-03-01-preview5/examples/Participants_AddChatParticipants.json b/specification/communication/data-plane/Chat/preview/2021-03-01-preview5/examples/Participants_AddChatParticipants.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-03-01-preview5/examples/Participants_AddChatParticipants.json rename to specification/communication/data-plane/Chat/preview/2021-03-01-preview5/examples/Participants_AddChatParticipants.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-03-01-preview5/examples/Participants_ListChatParticipantsWithPageSize.json b/specification/communication/data-plane/Chat/preview/2021-03-01-preview5/examples/Participants_ListChatParticipantsWithPageSize.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-03-01-preview5/examples/Participants_ListChatParticipantsWithPageSize.json rename to specification/communication/data-plane/Chat/preview/2021-03-01-preview5/examples/Participants_ListChatParticipantsWithPageSize.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-03-01-preview5/examples/Participants_RemoveChatParticipant.json b/specification/communication/data-plane/Chat/preview/2021-03-01-preview5/examples/Participants_RemoveChatParticipant.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-03-01-preview5/examples/Participants_RemoveChatParticipant.json rename to specification/communication/data-plane/Chat/preview/2021-03-01-preview5/examples/Participants_RemoveChatParticipant.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-03-01-preview5/examples/Threads_CreateChatThread.json b/specification/communication/data-plane/Chat/preview/2021-03-01-preview5/examples/Threads_CreateChatThread.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-03-01-preview5/examples/Threads_CreateChatThread.json rename to specification/communication/data-plane/Chat/preview/2021-03-01-preview5/examples/Threads_CreateChatThread.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-03-01-preview5/examples/Threads_CreateChatThreadWithIdempotencyToken.json b/specification/communication/data-plane/Chat/preview/2021-03-01-preview5/examples/Threads_CreateChatThreadWithIdempotencyToken.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-03-01-preview5/examples/Threads_CreateChatThreadWithIdempotencyToken.json rename to specification/communication/data-plane/Chat/preview/2021-03-01-preview5/examples/Threads_CreateChatThreadWithIdempotencyToken.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-03-01-preview5/examples/Threads_DeleteChatThread.json b/specification/communication/data-plane/Chat/preview/2021-03-01-preview5/examples/Threads_DeleteChatThread.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-03-01-preview5/examples/Threads_DeleteChatThread.json rename to specification/communication/data-plane/Chat/preview/2021-03-01-preview5/examples/Threads_DeleteChatThread.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-03-01-preview5/examples/Threads_GetChatThread.json b/specification/communication/data-plane/Chat/preview/2021-03-01-preview5/examples/Threads_GetChatThread.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-03-01-preview5/examples/Threads_GetChatThread.json rename to specification/communication/data-plane/Chat/preview/2021-03-01-preview5/examples/Threads_GetChatThread.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-03-01-preview5/examples/Threads_ListChatThreadsWithPageSize.json b/specification/communication/data-plane/Chat/preview/2021-03-01-preview5/examples/Threads_ListChatThreadsWithPageSize.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-03-01-preview5/examples/Threads_ListChatThreadsWithPageSize.json rename to specification/communication/data-plane/Chat/preview/2021-03-01-preview5/examples/Threads_ListChatThreadsWithPageSize.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-03-01-preview5/examples/Threads_UpdateChatThreadTopic.json b/specification/communication/data-plane/Chat/preview/2021-03-01-preview5/examples/Threads_UpdateChatThreadTopic.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-03-01-preview5/examples/Threads_UpdateChatThreadTopic.json rename to specification/communication/data-plane/Chat/preview/2021-03-01-preview5/examples/Threads_UpdateChatThreadTopic.json diff --git a/specification/communication/data-plane/Chat/preview/2021-04-05-preview6/communicationserviceschat.json b/specification/communication/data-plane/Chat/preview/2021-04-05-preview6/communicationserviceschat.json new file mode 100644 index 000000000000..667c70287e62 --- /dev/null +++ b/specification/communication/data-plane/Chat/preview/2021-04-05-preview6/communicationserviceschat.json @@ -0,0 +1,1711 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Communication Chat Service", + "description": "Azure Communication Chat Service", + "version": "2021-04-05-preview6" + }, + "paths": { + "/chat/threads/{chatThreadId}/readReceipts": { + "get": { + "tags": [ + "Threads" + ], + "summary": "Gets chat message read receipts for a thread.", + "operationId": "ChatThread_ListChatReadReceipts", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "Thread id to get the chat message read receipts for.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "maxPageSize", + "description": "The maximum number of chat message read receipts to be returned per page.", + "type": "integer", + "format": "int32" + }, + { + "in": "query", + "name": "skip", + "description": "Skips chat message read receipts up to a specified position in response.", + "type": "integer", + "format": "int32" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The action returns the requested `ChatMessageReadReceipt` resources.", + "schema": { + "$ref": "#/definitions/ChatMessageReadReceiptsCollection" + } + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Get thread read receipts with pagination (max page size)": { + "$ref": "./examples/Conversations_ListChatReadReceiptsWithPageSize.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink", + "itemName": "value" + } + }, + "post": { + "tags": [ + "Threads" + ], + "summary": "Sends a read receipt event to a thread, on behalf of a user.", + "operationId": "ChatThread_SendChatReadReceipt", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "Thread id to send the read receipt event to.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "sendReadReceiptRequest", + "description": "Read receipt details.", + "required": true, + "schema": { + "$ref": "#/definitions/SendReadReceiptRequest" + } + } + ], + "responses": { + "200": { + "description": "Request successful." + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Send read receipt": { + "$ref": "./examples/Conversations_SendChatReadReceipt.json" + } + } + } + }, + "/chat/threads/{chatThreadId}/messages": { + "post": { + "tags": [ + "Messages" + ], + "summary": "Sends a message to a thread.", + "operationId": "ChatThread_SendChatMessage", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "The thread id to send the message to.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "sendChatMessageRequest", + "description": "Details of the message to send.", + "required": true, + "schema": { + "$ref": "#/definitions/SendChatMessageRequest" + } + } + ], + "responses": { + "201": { + "description": "Message sent, the `Location` header contains the URL for the newly sent message.", + "schema": { + "$ref": "#/definitions/SendChatMessageResult" + } + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Send Message": { + "$ref": "./examples/Messages_SendChatMessage.json" + } + } + }, + "get": { + "tags": [ + "Messages" + ], + "summary": "Gets a list of messages from a thread.", + "operationId": "ChatThread_ListChatMessages", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "The thread id of the message.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "maxPageSize", + "description": "The maximum number of messages to be returned per page.", + "type": "integer", + "format": "int32" + }, + { + "in": "query", + "name": "startTime", + "description": "The earliest point in time to get messages up to. The timestamp should be in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "format": "date-time" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ChatMessagesCollection" + } + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Get messages with pagination (max page size)": { + "$ref": "./examples/Messages_ListChatMessagesWithPageSize.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink", + "itemName": "value" + } + } + }, + "/chat/threads/{chatThreadId}/messages/{chatMessageId}": { + "get": { + "tags": [ + "Messages" + ], + "summary": "Gets a message by id.", + "operationId": "ChatThread_GetChatMessage", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "The thread id to which the message was sent.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "chatMessageId", + "description": "The message id.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The action returns a `Message` resource.", + "schema": { + "$ref": "#/definitions/ChatMessage" + } + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Get Message": { + "$ref": "./examples/Messages_GetChatMessage.json" + } + } + }, + "patch": { + "tags": [ + "Messages" + ], + "summary": "Updates a message.", + "operationId": "ChatThread_UpdateChatMessage", + "consumes": [ + "application/merge-patch+json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "The thread id to which the message was sent.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "chatMessageId", + "description": "The message id.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "updateChatMessageRequest", + "description": "Details of the request to update the message.", + "required": true, + "schema": { + "$ref": "#/definitions/UpdateChatMessageRequest" + } + } + ], + "responses": { + "204": { + "description": "Message is successfully updated." + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Update message content": { + "$ref": "./examples/Messages_UpdateChatMessage.json" + } + } + }, + "delete": { + "tags": [ + "Messages" + ], + "summary": "Deletes a message.", + "operationId": "ChatThread_DeleteChatMessage", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "The thread id to which the message was sent.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "chatMessageId", + "description": "The message id.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "Request successful." + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Delete message": { + "$ref": "./examples/Messages_DeleteChatMessage.json" + } + } + } + }, + "/chat/threads/{chatThreadId}/typing": { + "post": { + "tags": [ + "Messages" + ], + "summary": "Posts a typing event to a thread, on behalf of a user.", + "operationId": "ChatThread_SendTypingNotification", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "Id of the thread.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful." + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Post typing event to a thread": { + "$ref": "./examples/Messages_SendTypingNotification.json" + } + } + } + }, + "/chat/threads/{chatThreadId}/participants": { + "get": { + "tags": [ + "Participants" + ], + "summary": "Gets the participants of a thread.", + "operationId": "ChatThread_ListChatParticipants", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "Thread id to get participants for.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "maxPageSize", + "description": "The maximum number of participants to be returned per page.", + "type": "integer", + "format": "int32" + }, + { + "in": "query", + "name": "skip", + "description": "Skips participants up to a specified position in response.", + "type": "integer", + "format": "int32" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The action returns the participants of a thread.", + "schema": { + "$ref": "#/definitions/ChatParticipantsCollection" + } + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Get participants with pagination (max page size)": { + "$ref": "./examples/Participants_ListChatParticipantsWithPageSize.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink", + "itemName": "value" + } + } + }, + "/chat/threads/{chatThreadId}/participants/:remove": { + "post": { + "tags": [ + "Participants" + ], + "summary": "Remove a participant from a thread.", + "operationId": "ChatThread_RemoveChatParticipant", + "consumes": [ + "application/json", + "application/merge-patch+json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "Thread id to remove the participant from.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "participantCommunicationIdentifier", + "description": "Id of the thread participant to remove from the thread.", + "required": true, + "schema": { + "$ref": "#/definitions/CommunicationIdentifierModel" + } + } + ], + "responses": { + "204": { + "description": "Request successful." + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Remove participant": { + "$ref": "./examples/Participants_RemoveChatParticipant.json" + } + } + } + }, + "/chat/threads/{chatThreadId}/participants/:add": { + "post": { + "tags": [ + "Participants" + ], + "summary": "Adds thread participants to a thread. If participants already exist, no change occurs.", + "operationId": "ChatThread_AddChatParticipants", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "Id of the thread to add participants to.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "addChatParticipantsRequest", + "description": "Thread participants to be added to the thread.", + "required": true, + "schema": { + "$ref": "#/definitions/AddChatParticipantsRequest" + } + } + ], + "responses": { + "201": { + "description": "The participants were successfully added.", + "schema": { + "$ref": "#/definitions/AddChatParticipantsResult" + } + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Add participants": { + "$ref": "./examples/Participants_AddChatParticipants.json" + } + } + } + }, + "/chat/threads": { + "post": { + "tags": [ + "Threads" + ], + "summary": "Creates a chat thread.", + "operationId": "Chat_CreateChatThread", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "header", + "name": "repeatability-request-id", + "description": "If specified, the client directs that the request is repeatable; that is, that the client can make the request multiple times with the same Repeatability-Request-Id and get back an appropriate response without the server executing the request multiple times. The value of the Repeatability-Request-Id is an opaque string representing a client-generated, globally unique for all time, identifier for the request. It is recommended to use version 4 (random) UUIDs.", + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "createChatThreadRequest", + "description": "Request payload for creating a chat thread.", + "required": true, + "schema": { + "$ref": "#/definitions/CreateChatThreadRequest" + } + } + ], + "responses": { + "201": { + "description": "Thread created, the `Location` header would contain the URL for the newly created thread.", + "schema": { + "$ref": "#/definitions/CreateChatThreadResult" + } + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Create chat thread": { + "$ref": "./examples/Threads_CreateChatThread.json" + }, + "Create chat thread with repeatability request id header": { + "$ref": "./examples/Threads_CreateChatThreadWithIdempotencyToken.json" + } + } + }, + "get": { + "tags": [ + "Threads" + ], + "summary": "Gets the list of chat threads of a user.", + "operationId": "Chat_ListChatThreads", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "query", + "name": "maxPageSize", + "description": "The maximum number of chat threads returned per page.", + "type": "integer", + "format": "int32" + }, + { + "in": "query", + "name": "startTime", + "description": "The earliest point in time to get chat threads up to. The timestamp should be in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "format": "date-time" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The action returns a `GetThreadsResponse` resource.", + "schema": { + "$ref": "#/definitions/ChatThreadsItemCollection" + } + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Get threads with pagination (Max Page Size)": { + "$ref": "./examples/Threads_ListChatThreadsWithPageSize.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink", + "itemName": "value" + } + } + }, + "/chat/threads/{chatThreadId}": { + "patch": { + "tags": [ + "Threads" + ], + "summary": "Updates a thread's properties.", + "operationId": "ChatThread_UpdateChatThreadProperties", + "consumes": [ + "application/merge-patch+json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "The id of the thread to update.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "updateChatThreadRequest", + "description": "Request payload for updating a chat thread.", + "required": true, + "schema": { + "$ref": "#/definitions/UpdateChatThreadRequest" + } + } + ], + "responses": { + "204": { + "description": "Thread was successfully updated." + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Update chat thread topic": { + "$ref": "./examples/Threads_UpdateChatThreadTopic.json" + } + } + }, + "get": { + "tags": [ + "Threads" + ], + "summary": "Gets a chat thread's properties.", + "operationId": "ChatThread_GetChatThreadProperties", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "Id of the thread.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The action returns a chat thread.", + "schema": { + "$ref": "#/definitions/ChatThreadProperties" + } + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Get chat thread": { + "$ref": "./examples/Threads_GetChatThread.json" + } + } + }, + "delete": { + "tags": [ + "Threads" + ], + "summary": "Deletes a thread.", + "operationId": "Chat_DeleteChatThread", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "Id of the thread to be deleted.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "Request successful." + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Delete chat thread": { + "$ref": "./examples/Threads_DeleteChatThread.json" + } + } + } + } + }, + "definitions": { + "CommunicationUserIdentifierModel": { + "$ref": "../../../Common/stable/2021-03-07/common.json#/definitions/CommunicationUserIdentifierModel" + }, + "CommunicationCloudEnvironment": { + "$ref": "../../../Common/stable/2021-03-07/common.json#/definitions/CommunicationCloudEnvironmentModel" + }, + "MicrosoftTeamsUserIdentifierModel": { + "$ref": "../../../Common/stable/2021-03-07/common.json#/definitions/MicrosoftTeamsUserIdentifierModel" + }, + "CommunicationIdentifierModel": { + "$ref": "../../../Common/stable/2021-03-07/common.json#/definitions/CommunicationIdentifierModel" + }, + "ChatMessageReadReceipt": { + "description": "A chat message read receipt indicates the time a chat message was read by a recipient.", + "required": [ + "chatMessageId", + "readOn", + "senderCommunicationIdentifier" + ], + "type": "object", + "properties": { + "senderCommunicationIdentifier": { + "$ref": "#/definitions/CommunicationIdentifierModel" + }, + "chatMessageId": { + "description": "Id of the chat message that has been read. This id is generated by the server.", + "type": "string", + "example": "1591137790240" + }, + "readOn": { + "format": "date-time", + "description": "The time at which the message was read. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "example": "2020-10-30T10:50:50Z" + } + } + }, + "ChatMessageReadReceiptsCollection": { + "description": "A paged collection of chat message read receipts.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of chat message read receipts.", + "type": "array", + "items": { + "$ref": "#/definitions/ChatMessageReadReceipt" + } + }, + "nextLink": { + "description": "If there are more chat message read receipts that can be retrieved, the next link will be populated.", + "type": "string", + "readOnly": true + } + } + }, + "CommunicationError": { + "$ref": "../../../Common/stable/2021-03-07/common.json#/definitions/CommunicationError" + }, + "CommunicationErrorResponse": { + "$ref": "../../../Common/stable/2021-03-07/common.json#/definitions/CommunicationErrorResponse" + }, + "SendReadReceiptRequest": { + "description": "Request payload for sending a read receipt.", + "required": [ + "chatMessageId" + ], + "type": "object", + "properties": { + "chatMessageId": { + "description": "Id of the latest chat message read by the user.", + "type": "string", + "example": "1592435762364" + } + } + }, + "ChatMessageType": { + "description": "The chat message type.", + "enum": [ + "text", + "html", + "topicUpdated", + "participantAdded", + "participantRemoved" + ], + "type": "string", + "x-ms-enum": { + "name": "ChatMessageType", + "modelAsString": true + } + }, + "SendChatMessageRequest": { + "description": "Details of the message to send.", + "required": [ + "content" + ], + "type": "object", + "properties": { + "content": { + "description": "Chat message content.", + "type": "string", + "example": "Come one guys, lets go for lunch together." + }, + "senderDisplayName": { + "description": "The display name of the chat message sender. This property is used to populate sender name for push notifications.", + "type": "string", + "example": "Bob Admin" + }, + "type": { + "$ref": "#/definitions/ChatMessageType" + }, + "metadata": { + "description": "Message metadata.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "SendChatMessageResult": { + "description": "Result of the send message operation.", + "required": [ + "id" + ], + "type": "object", + "properties": { + "id": { + "description": "A server-generated message id.", + "type": "string", + "example": "123456789" + } + } + }, + "ChatParticipant": { + "description": "A participant of the chat thread.", + "required": [ + "communicationIdentifier" + ], + "type": "object", + "properties": { + "communicationIdentifier": { + "$ref": "#/definitions/CommunicationIdentifierModel" + }, + "displayName": { + "description": "Display name for the chat participant.", + "type": "string", + "example": "Bob" + }, + "shareHistoryTime": { + "format": "date-time", + "description": "Time from which the chat history is shared with the participant. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "example": "2020-10-30T10:50:50Z" + } + } + }, + "ChatMessageContent": { + "description": "Content of a chat message.", + "type": "object", + "properties": { + "message": { + "description": "Chat message content for messages of types text or html.", + "type": "string", + "example": "Come one guys, lets go for lunch together." + }, + "topic": { + "description": "Chat message content for messages of type topicUpdated.", + "type": "string", + "example": "Lunch Chat thread" + }, + "participants": { + "description": "Chat message content for messages of types participantAdded or participantRemoved.", + "type": "array", + "items": { + "$ref": "#/definitions/ChatParticipant" + } + }, + "initiatorCommunicationIdentifier": { + "$ref": "#/definitions/CommunicationIdentifierModel" + } + } + }, + "ChatMessage": { + "description": "Chat message.", + "required": [ + "createdOn", + "id", + "sequenceId", + "type", + "version" + ], + "type": "object", + "properties": { + "id": { + "description": "The id of the chat message. This id is server generated.", + "type": "string", + "example": "123456789" + }, + "type": { + "$ref": "#/definitions/ChatMessageType" + }, + "sequenceId": { + "description": "Sequence of the chat message in the conversation.", + "type": "string" + }, + "version": { + "description": "Version of the chat message.", + "type": "string" + }, + "content": { + "$ref": "#/definitions/ChatMessageContent" + }, + "senderDisplayName": { + "description": "The display name of the chat message sender. This property is used to populate sender name for push notifications.", + "type": "string", + "example": "Jane" + }, + "createdOn": { + "format": "date-time", + "description": "The timestamp when the chat message arrived at the server. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "example": "2020-10-30T10:50:50Z" + }, + "senderCommunicationIdentifier": { + "$ref": "#/definitions/CommunicationIdentifierModel" + }, + "deletedOn": { + "format": "date-time", + "description": "The timestamp (if applicable) when the message was deleted. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "example": "2020-10-30T10:50:50Z" + }, + "editedOn": { + "format": "date-time", + "description": "The last timestamp (if applicable) when the message was edited. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "example": "2020-10-30T10:50:50Z" + }, + "metadata": { + "description": "Message metadata.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "ChatMessagesCollection": { + "description": "Collection of chat messages for a particular chat thread.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of chat messages.", + "type": "array", + "items": { + "$ref": "#/definitions/ChatMessage" + } + }, + "nextLink": { + "description": "If there are more chat messages that can be retrieved, the next link will be populated.", + "type": "string", + "readOnly": true + } + } + }, + "UpdateChatMessageRequest": { + "description": "Request payload for updating a chat message.", + "type": "object", + "properties": { + "content": { + "description": "Chat message content.", + "type": "string", + "example": "Let's go for lunch together." + }, + "metadata": { + "description": "Message metadata.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "ChatParticipantsCollection": { + "description": "Collection of participants belong to a particular thread.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Chat participants.", + "type": "array", + "items": { + "$ref": "#/definitions/ChatParticipant" + } + }, + "nextLink": { + "description": "If there are more chat participants that can be retrieved, the next link will be populated.", + "type": "string", + "readOnly": true + } + } + }, + "AddChatParticipantsRequest": { + "description": "Participants to be added to the thread.", + "required": [ + "participants" + ], + "type": "object", + "properties": { + "participants": { + "description": "Participants to add to a chat thread.", + "type": "array", + "items": { + "$ref": "#/definitions/ChatParticipant" + } + } + } + }, + "AddChatParticipantsResult": { + "description": "Result of the add chat participants operation.", + "type": "object", + "properties": { + "invalidParticipants": { + "description": "The participants that failed to be added to the chat thread.", + "type": "array", + "items": { + "$ref": "#/definitions/CommunicationError" + }, + "readOnly": true + } + } + }, + "CreateChatThreadRequest": { + "description": "Request payload for creating a chat thread.", + "required": [ + "topic" + ], + "type": "object", + "properties": { + "topic": { + "description": "The chat thread topic.", + "type": "string", + "example": "Lunch Thread" + }, + "participants": { + "description": "Participants to be added to the chat thread.", + "type": "array", + "items": { + "$ref": "#/definitions/ChatParticipant" + } + } + } + }, + "ChatThreadProperties": { + "description": "Chat thread.", + "required": [ + "createdByCommunicationIdentifier", + "createdOn", + "id", + "topic" + ], + "type": "object", + "properties": { + "id": { + "description": "Chat thread id.", + "type": "string", + "example": "19:uni01_uy5ucb66ugp3lrhe7pxso6xx4hsmm3dl6eyjfefv2n6x3rrurpea@thread.v2" + }, + "topic": { + "description": "Chat thread topic.", + "type": "string", + "example": "Lunch Chat thread" + }, + "createdOn": { + "format": "date-time", + "description": "The timestamp when the chat thread was created. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "example": "2020-10-30T10:50:50Z" + }, + "createdByCommunicationIdentifier": { + "$ref": "#/definitions/CommunicationIdentifierModel" + }, + "deletedOn": { + "format": "date-time", + "description": "The timestamp when the chat thread was deleted. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "example": "2020-10-30T10:50:50Z" + } + } + }, + "CreateChatThreadResult": { + "description": "Result of the create chat thread operation.", + "type": "object", + "properties": { + "chatThread": { + "$ref": "#/definitions/ChatThreadProperties" + }, + "invalidParticipants": { + "description": "The participants that failed to be added to the chat thread.", + "type": "array", + "items": { + "$ref": "#/definitions/CommunicationError" + }, + "readOnly": true + } + } + }, + "ChatThreadItem": { + "description": "Summary information of a chat thread.", + "required": [ + "id", + "topic" + ], + "type": "object", + "properties": { + "id": { + "description": "Chat thread id.", + "type": "string", + "example": "19:uni01_uy5ucb66ugp3lrhe7pxso6xx4hsmm3dl6eyjfefv2n6x3rrurpea@thread.v2" + }, + "topic": { + "description": "Chat thread topic.", + "type": "string", + "example": "Lunch Chat thread" + }, + "deletedOn": { + "format": "date-time", + "description": "The timestamp when the chat thread was deleted. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "example": "2020-10-30T10:50:50Z" + }, + "lastMessageReceivedOn": { + "format": "date-time", + "description": "The timestamp when the last message arrived at the server. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "readOnly": true, + "example": "2020-10-30T10:50:50Z" + } + } + }, + "ChatThreadsItemCollection": { + "description": "Collection of chat threads.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of chat threads.", + "type": "array", + "items": { + "$ref": "#/definitions/ChatThreadItem" + } + }, + "nextLink": { + "description": "If there are more chat threads that can be retrieved, the next link will be populated.", + "type": "string", + "readOnly": true + } + } + }, + "UpdateChatThreadRequest": { + "description": "Request payload for updating a chat thread.", + "type": "object", + "properties": { + "topic": { + "description": "Chat thread topic.", + "type": "string", + "example": "Lunch Thread" + } + } + } + }, + "parameters": { + "ApiVersionParameter": { + "in": "query", + "name": "api-version", + "description": "Version of API to invoke.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "Endpoint": { + "in": "path", + "name": "endpoint", + "description": "The endpoint of the Azure Communication resource.", + "required": true, + "type": "string", + "x-ms-skip-url-encoding": true, + "x-ms-parameter-location": "client" + } + }, + "securityDefinitions": { + "Authorization": { + "type": "apiKey", + "name": "Authorization", + "in": "header", + "description": "An ACS (Azure Communication Services) user access token." + } + }, + "security": [ + { + "Authorization": [] + } + ], + "x-ms-parameterized-host": { + "hostTemplate": "{endpoint}", + "useSchemePrefix": false, + "parameters": [ + { + "$ref": "#/parameters/Endpoint" + } + ] + } +} diff --git a/specification/communication/data-plane/Chat/preview/2021-04-05-preview6/examples/Conversations_ListChatReadReceiptsWithPageSize.json b/specification/communication/data-plane/Chat/preview/2021-04-05-preview6/examples/Conversations_ListChatReadReceiptsWithPageSize.json new file mode 100644 index 000000000000..9386c3cf4fb7 --- /dev/null +++ b/specification/communication/data-plane/Chat/preview/2021-04-05-preview6/examples/Conversations_ListChatReadReceiptsWithPageSize.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "endpoint": "https://contoso.westus.communications.azure.com", + "api-version": "2021-04-05-preview6", + "chatThreadId": "19:uni01_zbnh3nt2dfuffezc3sox7dog7wfhk6y5qe2rwlnfhlhdzirihdpq@thread.v2", + "maxPageSize": 2 + }, + "responses": { + "200": { + "body": { + "value": [ + { + "senderCommunicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b" + } + }, + "chatMessageId": "1591137790240", + "readOn": "2020-06-06T05:55:41.6460000Z" + }, + { + "senderCommunicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10a", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10a" + } + }, + "chatMessageId": "1591768249318", + "readOn": "2020-06-06T05:55:41.6460000Z" + } + ], + "nextLink": "https://contoso.westus.communications.azure.com/chat/threads/19:453dafb77b26481ea2e73bcada0324af@thread.v2/readReceipts?skip=2&maxPageSize=2&api-version=2021-04-05-preview6" + } + }, + "401": { + "body": { + "error": { + "code": "Unauthorized", + "message": "Request is not authorized." + } + } + }, + "403": { + "body": { + "error": { + "code": "Forbidden", + "message": "User is not allowed to perform specified action." + } + } + }, + "429": { + "body": { + "error": { + "code": "TooManyRequests", + "message": "Rate limit exceeded." + } + } + }, + "503": { + "body": { + "error": { + "code": "ServiceUnavailable", + "message": "The server is currently unable to handle the request." + } + } + } + } +} diff --git a/specification/communication/data-plane/Chat/preview/2021-04-05-preview6/examples/Conversations_SendChatReadReceipt.json b/specification/communication/data-plane/Chat/preview/2021-04-05-preview6/examples/Conversations_SendChatReadReceipt.json new file mode 100644 index 000000000000..5697ceb4b422 --- /dev/null +++ b/specification/communication/data-plane/Chat/preview/2021-04-05-preview6/examples/Conversations_SendChatReadReceipt.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "endpoint": "https://contoso.westus.communications.azure.com", + "api-version": "2021-04-05-preview6", + "chatThreadId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "sendReadReceiptRequest": { + "chatMessageId": "1591137790240" + } + }, + "responses": { + "200": {}, + "401": { + "body": { + "error": { + "code": "Unauthorized", + "message": "Request is not authorized." + } + } + }, + "403": { + "body": { + "error": { + "code": "Forbidden", + "message": "User is not allowed to perform specified action." + } + } + }, + "429": { + "body": { + "error": { + "code": "TooManyRequests", + "message": "Rate limit exceeded." + } + } + }, + "503": { + "body": { + "error": { + "code": "ServiceUnavailable", + "message": "The server is currently unable to handle the request." + } + } + } + } +} diff --git a/specification/communication/data-plane/Chat/preview/2021-04-05-preview6/examples/Messages_DeleteChatMessage.json b/specification/communication/data-plane/Chat/preview/2021-04-05-preview6/examples/Messages_DeleteChatMessage.json new file mode 100644 index 000000000000..7392dbd0ce13 --- /dev/null +++ b/specification/communication/data-plane/Chat/preview/2021-04-05-preview6/examples/Messages_DeleteChatMessage.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "endpoint": "https://contoso.westus.communications.azure.com", + "api-version": "2021-04-05-preview6", + "chatThreadId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "chatMessageId": "1591768249318" + }, + "responses": { + "204": {}, + "401": { + "body": { + "error": { + "code": "Unauthorized", + "message": "Request is not authorized." + } + } + }, + "403": { + "body": { + "error": { + "code": "Forbidden", + "message": "User is not allowed to perform specified action." + } + } + }, + "429": { + "body": { + "error": { + "code": "TooManyRequests", + "message": "Rate limit exceeded." + } + } + }, + "503": { + "body": { + "error": { + "code": "ServiceUnavailable", + "message": "The server is currently unable to handle the request." + } + } + } + } +} diff --git a/specification/communication/data-plane/Chat/preview/2021-04-05-preview6/examples/Messages_GetChatMessage.json b/specification/communication/data-plane/Chat/preview/2021-04-05-preview6/examples/Messages_GetChatMessage.json new file mode 100644 index 000000000000..d6b113c08006 --- /dev/null +++ b/specification/communication/data-plane/Chat/preview/2021-04-05-preview6/examples/Messages_GetChatMessage.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "endpoint": "https://contoso.westus.communications.azure.com", + "api-version": "2021-04-05-preview6", + "chatThreadId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "chatMessageId": "1591768249318" + }, + "responses": { + "200": { + "body": { + "id": "1591768249318", + "sequenceId": "1", + "type": "text", + "version": "1599016601134", + "content": { + "message": "Let's head out for lunch in 15 minutes." + }, + "senderDisplayName": "Jane", + "createdOn": "2020-06-10T05:50:49.3180000Z", + "senderCommunicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b" + } + }, + "metadata": { + "someKey1": "someValue1", + "someKey2": "someValue2" + } + } + }, + "401": { + "body": { + "error": { + "code": "Unauthorized", + "message": "Request is not authorized." + } + } + }, + "403": { + "body": { + "error": { + "code": "Forbidden", + "message": "User is not allowed to perform specified action." + } + } + }, + "429": { + "body": { + "error": { + "code": "TooManyRequests", + "message": "Rate limit exceeded." + } + } + }, + "503": { + "body": { + "error": { + "code": "ServiceUnavailable", + "message": "The server is currently unable to handle the request." + } + } + } + } +} diff --git a/specification/communication/data-plane/Chat/preview/2021-04-05-preview6/examples/Messages_ListChatMessagesWithPageSize.json b/specification/communication/data-plane/Chat/preview/2021-04-05-preview6/examples/Messages_ListChatMessagesWithPageSize.json new file mode 100644 index 000000000000..8be72a33e4d0 --- /dev/null +++ b/specification/communication/data-plane/Chat/preview/2021-04-05-preview6/examples/Messages_ListChatMessagesWithPageSize.json @@ -0,0 +1,157 @@ +{ + "parameters": { + "endpoint": "https://contoso.westus.communications.azure.com", + "api-version": "2021-04-05-preview6", + "chatThreadId": "19:453dafb77b26481ea2e73bcada0324af@thread.v2", + "maxPageSize": 5 + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "1593107077690", + "type": "text", + "version": "1593107077683", + "sequenceId": "5", + "content": { + "message": "So where should we get lunch from today?" + }, + "senderDisplayName": "Jane", + "createdOn": "2020-06-25T17:44:37.6830000Z", + "senderCommunicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b" + } + } + }, + { + "id": "1593107077683", + "type": "text", + "sequenceId": "4", + "version": "1593107077683", + "content": { + "message": "Let's use this chat to decide what to get for lunch today." + }, + "senderDisplayName": "Jane", + "createdOn": "2020-06-25T17:44:37.6830000Z", + "senderCommunicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b" + } + } + }, + { + "id": "1593107046498", + "type": "text", + "sequenceId": "3", + "version": "1593107046498", + "content": { + "message": "Good morning everyone!" + }, + "senderDisplayName": "Jane", + "createdOn": "2020-06-25T17:44:06.4980000Z", + "senderCommunicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b" + } + } + }, + { + "id": "1593106976785", + "type": "topicUpdated", + "sequenceId": "2", + "version": "1593106976785", + "content": { + "initiatorCommunicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b" + } + }, + "topic": "Lunch" + }, + "createdOn": "2020-06-25T17:42:56.7850000Z" + }, + { + "id": "1593106976753", + "type": "participantAdded", + "version": "1593106976753", + "sequenceId": "1", + "content": { + "initiatorCommunicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b" + } + }, + "participants": [ + { + "communicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b" + } + } + }, + { + "communicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10c", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10c" + } + } + }, + { + "communicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10d", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10d" + } + } + } + ] + }, + "createdOn": "2020-06-25T17:42:56.7530000Z" + } + ], + "nextLink": "https://contoso.westus.communications.azure.com/chat/threads/19:453dafb77b26481ea2e73bcada0324af@thread.v2/messages?syncState=3e4700000031393a756e6930315f7a626e68336e74326466756666657a6333736f7837646f67377766686b36793571653272776c6e66686c68647a69726968647071407468726561642e763201451fe6e77201000004357fea72010000&startTime=0&maxPageSize=5&api-version=2021-04-05-preview6" + } + }, + "401": { + "body": { + "error": { + "code": "Unauthorized", + "message": "Request is not authorized." + } + } + }, + "403": { + "body": { + "error": { + "code": "Forbidden", + "message": "User is not allowed to perform specified action." + } + } + }, + "429": { + "body": { + "error": { + "code": "TooManyRequests", + "message": "Rate limit exceeded." + } + } + }, + "503": { + "body": { + "error": { + "code": "ServiceUnavailable", + "message": "The server is currently unable to handle the request." + } + } + } + } +} diff --git a/specification/communication/data-plane/Chat/preview/2021-04-05-preview6/examples/Messages_SendChatMessage.json b/specification/communication/data-plane/Chat/preview/2021-04-05-preview6/examples/Messages_SendChatMessage.json new file mode 100644 index 000000000000..00efc9913c6a --- /dev/null +++ b/specification/communication/data-plane/Chat/preview/2021-04-05-preview6/examples/Messages_SendChatMessage.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "endpoint": "https://contoso.westus.communications.azure.com", + "api-version": "2021-04-05-preview6", + "chatThreadId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "sendChatMessageRequest": { + "content": "Let's head out for lunch in 15 minutes.", + "senderDisplayName": "Jane", + "metadata": { + "someKey1": "someValue1", + "someKey2": "someValue2" + } + } + }, + "responses": { + "201": { + "headers": { + "Location": "https://contoso.westus.communications.azure.com/chat/threads/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/messages/1593072104708" + }, + "body": { + "id": "1593072104708" + } + }, + "401": { + "body": { + "error": { + "code": "Unauthorized", + "message": "Request is not authorized." + } + } + }, + "403": { + "body": { + "error": { + "code": "Forbidden", + "message": "User is not allowed to perform specified action." + } + } + }, + "429": { + "body": { + "error": { + "code": "TooManyRequests", + "message": "Rate limit exceeded." + } + } + }, + "503": { + "body": { + "error": { + "code": "ServiceUnavailable", + "message": "The server is currently unable to handle the request." + } + } + } + } +} diff --git a/specification/communication/data-plane/Chat/preview/2021-04-05-preview6/examples/Messages_SendTypingNotification.json b/specification/communication/data-plane/Chat/preview/2021-04-05-preview6/examples/Messages_SendTypingNotification.json new file mode 100644 index 000000000000..c49f8efc76e7 --- /dev/null +++ b/specification/communication/data-plane/Chat/preview/2021-04-05-preview6/examples/Messages_SendTypingNotification.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "endpoint": "https://contoso.westus.communications.azure.com", + "api-version": "2021-04-05-preview6", + "chatThreadId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345" + }, + "responses": { + "200": {}, + "401": { + "body": { + "error": { + "code": "Unauthorized", + "message": "Request is not authorized." + } + } + }, + "403": { + "body": { + "error": { + "code": "Forbidden", + "message": "User is not allowed to perform specified action." + } + } + }, + "429": { + "body": { + "error": { + "code": "TooManyRequests", + "message": "Rate limit exceeded." + } + } + }, + "503": { + "body": { + "error": { + "code": "ServiceUnavailable", + "message": "The server is currently unable to handle the request." + } + } + } + } +} diff --git a/specification/communication/data-plane/Chat/preview/2021-04-05-preview6/examples/Messages_UpdateChatMessage.json b/specification/communication/data-plane/Chat/preview/2021-04-05-preview6/examples/Messages_UpdateChatMessage.json new file mode 100644 index 000000000000..fec6af7a20ed --- /dev/null +++ b/specification/communication/data-plane/Chat/preview/2021-04-05-preview6/examples/Messages_UpdateChatMessage.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "endpoint": "https://contoso.westus.communications.azure.com", + "content-type": "application/merge-patch+json", + "api-version": "2021-04-05-preview6", + "chatThreadId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "chatMessageId": "1591768249318", + "updateChatMessageRequest": { + "content": "Updated message content", + "metadata": { + "someKey1": "someValue1", + "someKey2": "someValue2" + } + } + }, + "responses": { + "204": {}, + "401": { + "body": { + "error": { + "code": "Unauthorized", + "message": "Request is not authorized." + } + } + }, + "403": { + "body": { + "error": { + "code": "Forbidden", + "message": "User is not allowed to perform specified action." + } + } + }, + "429": { + "body": { + "error": { + "code": "TooManyRequests", + "message": "Rate limit exceeded." + } + } + }, + "503": { + "body": { + "error": { + "code": "ServiceUnavailable", + "message": "The server is currently unable to handle the request." + } + } + } + } +} diff --git a/specification/communication/data-plane/Chat/preview/2021-04-05-preview6/examples/Participants_AddChatParticipants.json b/specification/communication/data-plane/Chat/preview/2021-04-05-preview6/examples/Participants_AddChatParticipants.json new file mode 100644 index 000000000000..2c5550f803f9 --- /dev/null +++ b/specification/communication/data-plane/Chat/preview/2021-04-05-preview6/examples/Participants_AddChatParticipants.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "endpoint": "https://contoso.westus.communications.azure.com", + "api-version": "2021-04-05-preview6", + "chatThreadId": "19:f2167429acf6482880c6b7790a9086c1@thread.v2", + "addChatParticipantsRequest": { + "participants": [ + { + "communicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10a", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10a" + } + }, + "displayName": "Alex", + "shareHistoryTime": "2020-06-06T05:55:41Z" + }, + { + "communicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b" + } + }, + "displayName": "Peter", + "shareHistoryTime": "2020-06-06T05:55:41Z" + }, + { + "communicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10c", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10c" + } + }, + "displayName": "Rama", + "shareHistoryTime": "2020-06-06T05:55:41Z" + } + ] + } + }, + "responses": { + "201": { + "body": { + "invalidParticipants": [ + { + "target": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10c", + "code": "403", + "message": "Permissions check failed" + }, + { + "target": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10a", + "code": "404", + "message": "Not found" + } + ] + } + }, + "401": { + "body": { + "error": { + "code": "Unauthorized", + "message": "Request is not authorized." + } + } + }, + "403": { + "body": { + "error": { + "code": "Forbidden", + "message": "User is not allowed to perform specified action." + } + } + }, + "429": { + "body": { + "error": { + "code": "TooManyRequests", + "message": "Rate limit exceeded." + } + } + }, + "503": { + "body": { + "error": { + "code": "ServiceUnavailable", + "message": "The server is currently unable to handle the request." + } + } + } + } +} diff --git a/specification/communication/data-plane/Chat/preview/2021-04-05-preview6/examples/Participants_ListChatParticipantsWithPageSize.json b/specification/communication/data-plane/Chat/preview/2021-04-05-preview6/examples/Participants_ListChatParticipantsWithPageSize.json new file mode 100644 index 000000000000..822ef846c3e8 --- /dev/null +++ b/specification/communication/data-plane/Chat/preview/2021-04-05-preview6/examples/Participants_ListChatParticipantsWithPageSize.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "endpoint": "https://contoso.westus.communications.azure.com", + "api-version": "2021-04-05-preview6", + "chatThreadId": "19:f2167429acf6482880c6b7790a9086c1@thread.v2", + "maxPageSize": 2 + }, + "responses": { + "200": { + "body": { + "value": [ + { + "communicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10a", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10a" + } + }, + "displayName": "Jane", + "shareHistoryTime": "2020-06-06T05:55:41Z" + }, + { + "communicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b" + } + }, + "displayName": "Alex", + "shareHistoryTime": "2020-06-06T05:55:41Z" + } + ], + "nextLink": "https://contoso.westus.communications.azure.com/chat/threads/19:453dafb77b26481ea2e73bcada0324af@thread.v2/participants?skip=2&maxPageSize=2&api-version=2021-04-05-preview6" + } + }, + "401": { + "body": { + "error": { + "code": "Unauthorized", + "message": "Request is not authorized." + } + } + }, + "403": { + "body": { + "error": { + "code": "Forbidden", + "message": "User is not allowed to perform specified action." + } + } + }, + "429": { + "body": { + "error": { + "code": "TooManyRequests", + "message": "Rate limit exceeded." + } + } + }, + "503": { + "body": { + "error": { + "code": "ServiceUnavailable", + "message": "The server is currently unable to handle the request." + } + } + } + } +} diff --git a/specification/communication/data-plane/Chat/preview/2021-04-05-preview6/examples/Participants_RemoveChatParticipant.json b/specification/communication/data-plane/Chat/preview/2021-04-05-preview6/examples/Participants_RemoveChatParticipant.json new file mode 100644 index 000000000000..89802e325387 --- /dev/null +++ b/specification/communication/data-plane/Chat/preview/2021-04-05-preview6/examples/Participants_RemoveChatParticipant.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "endpoint": "https://contoso.westus.communications.azure.com", + "api-version": "2021-04-05-preview6", + "chatThreadId": "19:f2167429acf6482880c6b7790a9086c1@thread.v2", + "participantCommunicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b" + } + } + }, + "responses": { + "204": {}, + "401": { + "body": { + "error": { + "code": "Unauthorized", + "message": "Request is not authorized." + } + } + }, + "403": { + "body": { + "error": { + "code": "Forbidden", + "message": "User is not allowed to perform specified action." + } + } + }, + "429": { + "body": { + "error": { + "code": "TooManyRequests", + "message": "Rate limit exceeded." + } + } + }, + "503": { + "body": { + "error": { + "code": "ServiceUnavailable", + "message": "The server is currently unable to handle the request." + } + } + } + } +} diff --git a/specification/communication/data-plane/Chat/preview/2021-04-05-preview6/examples/Threads_CreateChatThread.json b/specification/communication/data-plane/Chat/preview/2021-04-05-preview6/examples/Threads_CreateChatThread.json new file mode 100644 index 000000000000..1632996cfa2a --- /dev/null +++ b/specification/communication/data-plane/Chat/preview/2021-04-05-preview6/examples/Threads_CreateChatThread.json @@ -0,0 +1,111 @@ +{ + "parameters": { + "endpoint": "https://contoso.westus.communications.azure.com", + "api-version": "2021-04-05-preview6", + "createChatThreadRequest": { + "topic": "Lunch", + "participants": [ + { + "communicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10a", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10a" + } + }, + "displayName": "Jane" + }, + { + "communicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b" + } + }, + "displayName": "Alex" + }, + { + "communicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10c", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10c" + } + }, + "displayName": "Bob" + }, + { + "communicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10d", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10d" + } + }, + "displayName": "Peter" + } + ] + } + }, + "responses": { + "201": { + "headers": { + "Location": "https://contoso.westus.communications.azure.com/chat/threads/19%3Auni01_zbnh3nt2dfuffezc3sox7dog7wfhk6y5qe2rwlnfhlhdzirihdpq@thread.v2" + }, + "body": { + "chatThread": { + "id": "19:uni01_zbnh3nt2dfuffezc3sox7dog7wfhk6y5qe2rwlnfhlhdzirihdpq@thread.v2", + "topic": "Lunch", + "createdOn": "2020-06-06T05:55:41.6460000Z", + "createdByCommunicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10a", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10a" + } + } + }, + "invalidParticipants": [ + { + "target": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10c", + "code": "403", + "message": "Permissions check failed" + }, + { + "target": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10d", + "code": "404", + "message": "Not found" + } + ] + } + }, + "401": { + "body": { + "error": { + "code": "Unauthorized", + "message": "Request is not authorized." + } + } + }, + "403": { + "body": { + "error": { + "code": "Forbidden", + "message": "User is not allowed to perform specified action." + } + } + }, + "429": { + "body": { + "error": { + "code": "TooManyRequests", + "message": "Rate limit exceeded." + } + } + }, + "503": { + "body": { + "error": { + "code": "ServiceUnavailable", + "message": "The server is currently unable to handle the request." + } + } + } + } +} diff --git a/specification/communication/data-plane/Chat/preview/2021-04-05-preview6/examples/Threads_CreateChatThreadWithIdempotencyToken.json b/specification/communication/data-plane/Chat/preview/2021-04-05-preview6/examples/Threads_CreateChatThreadWithIdempotencyToken.json new file mode 100644 index 000000000000..4bd465bfb78e --- /dev/null +++ b/specification/communication/data-plane/Chat/preview/2021-04-05-preview6/examples/Threads_CreateChatThreadWithIdempotencyToken.json @@ -0,0 +1,112 @@ +{ + "parameters": { + "endpoint": "https://contoso.westus.communications.azure.com", + "api-version": "2021-04-05-preview6", + "idempotency-token": "35dd6e71-251b-5e29-8376-ba93d09c3fbf", + "createChatThreadRequest": { + "topic": "Lunch", + "participants": [ + { + "communicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10a", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10a" + } + }, + "displayName": "Jane" + }, + { + "communicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b" + } + }, + "displayName": "Alex" + }, + { + "communicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10c", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10c" + } + }, + "displayName": "Bob" + }, + { + "communicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10d", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10d" + } + }, + "displayName": "Peter" + } + ] + } + }, + "responses": { + "201": { + "headers": { + "Location": "https://contoso.westus.communications.azure.com/chat/threads/19%3Auni01_zbnh3nt2dfuffezc3sox7dog7wfhk6y5qe2rwlnfhlhdzirihdpq@thread.v2" + }, + "body": { + "chatThread": { + "id": "19:uni01_zbnh3nt2dfuffezc3sox7dog7wfhk6y5qe2rwlnfhlhdzirihdpq@thread.v2", + "topic": "Lunch", + "createdOn": "2020-06-06T05:55:41.6460000Z", + "createdByCommunicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10a", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10a" + } + } + }, + "invalidParticipants": [ + { + "target": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10c", + "code": "403", + "message": "Permissions check failed" + }, + { + "target": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10d", + "code": "404", + "message": "Not found" + } + ] + } + }, + "401": { + "body": { + "error": { + "code": "Unauthorized", + "message": "Request is not authorized." + } + } + }, + "403": { + "body": { + "error": { + "code": "Forbidden", + "message": "User is not allowed to perform specified action." + } + } + }, + "429": { + "body": { + "error": { + "code": "TooManyRequests", + "message": "Rate limit exceeded." + } + } + }, + "503": { + "body": { + "error": { + "code": "ServiceUnavailable", + "message": "The server is currently unable to handle the request." + } + } + } + } +} diff --git a/specification/communication/data-plane/Chat/preview/2021-04-05-preview6/examples/Threads_DeleteChatThread.json b/specification/communication/data-plane/Chat/preview/2021-04-05-preview6/examples/Threads_DeleteChatThread.json new file mode 100644 index 000000000000..21f2d9b6d6f2 --- /dev/null +++ b/specification/communication/data-plane/Chat/preview/2021-04-05-preview6/examples/Threads_DeleteChatThread.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "endpoint": "https://contoso.westus.communications.azure.com", + "api-version": "2021-04-05-preview6", + "chatThreadId": "19:9525281ac1f947fc884bcee1a9f983c2@thread.v2" + }, + "responses": { + "204": {}, + "401": { + "body": { + "error": { + "code": "Unauthorized", + "message": "Request is not authorized." + } + } + }, + "403": { + "body": { + "error": { + "code": "Forbidden", + "message": "User is not allowed to perform specified action." + } + } + }, + "429": { + "body": { + "error": { + "code": "TooManyRequests", + "message": "Rate limit exceeded." + } + } + }, + "503": { + "body": { + "error": { + "code": "ServiceUnavailable", + "message": "The server is currently unable to handle the request." + } + } + } + } +} diff --git a/specification/communication/data-plane/Chat/preview/2021-04-05-preview6/examples/Threads_GetChatThread.json b/specification/communication/data-plane/Chat/preview/2021-04-05-preview6/examples/Threads_GetChatThread.json new file mode 100644 index 000000000000..bc0611625ca8 --- /dev/null +++ b/specification/communication/data-plane/Chat/preview/2021-04-05-preview6/examples/Threads_GetChatThread.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "endpoint": "https://contoso.westus.communications.azure.com", + "api-version": "2021-04-05-preview6", + "chatThreadId": "19:uni01_zbnh3nt2dfuffezc3sox7dog7wfhk6y5qe2rwlnfhlhdzirihdpq@thread.v2" + }, + "responses": { + "200": { + "body": { + "id": "19:uni01_zbnh3nt2dfuffezc3sox7dog7wfhk6y5qe2rwlnfhlhdzirihdpq@thread.v2", + "topic": "Lunch", + "createdOn": "2020-06-06T05:55:41.6460000Z", + "createdByCommunicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b" + } + } + } + }, + "401": { + "body": { + "error": { + "code": "Unauthorized", + "message": "Request is not authorized." + } + } + }, + "403": { + "body": { + "error": { + "code": "Forbidden", + "message": "User is not allowed to perform specified action." + } + } + }, + "429": { + "body": { + "error": { + "code": "TooManyRequests", + "message": "Rate limit exceeded." + } + } + }, + "503": { + "body": { + "error": { + "code": "ServiceUnavailable", + "message": "The server is currently unable to handle the request." + } + } + } + } +} diff --git a/specification/communication/data-plane/Chat/preview/2021-04-05-preview6/examples/Threads_ListChatThreadsWithPageSize.json b/specification/communication/data-plane/Chat/preview/2021-04-05-preview6/examples/Threads_ListChatThreadsWithPageSize.json new file mode 100644 index 000000000000..6698ae1b3a48 --- /dev/null +++ b/specification/communication/data-plane/Chat/preview/2021-04-05-preview6/examples/Threads_ListChatThreadsWithPageSize.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "endpoint": "https://contoso.westus.communications.azure.com", + "api-version": "2021-04-05-preview6", + "maxPageSize": 5 + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "19:uni01_zbnh3nt2dfuffezc3sox7dog7wfhk6y5qe2rwlnfhlhdzirihdpq@thread.v2", + "topic": "Chat with Samantha", + "lastMessageReceivedOn": "2020-06-06T05:55:41.6460000Z" + }, + { + "id": "19:a0dfe5fc10e04a7f8d8a64d455f4196d@thread.v2", + "topic": "Presentation Brainstorming", + "lastMessageReceivedOn": "2020-06-06T05:55:41.6460000Z" + }, + { + "id": "19:uni01_n242d2bzammtwxiib7pbjtozeevjqzavzn654ku3dajocexfo2na@thread.v2", + "topic": "Chat with Alex", + "lastMessageReceivedOn": "2020-06-06T05:55:41.6460000Z" + }, + { + "id": "19:0062022a28be4e0983734f7e45cd8566@thread.v2", + "topic": "Lunch", + "deletedOn": "2020-07-07T05:55:41.6460000Z", + "lastMessageReceivedOn": "2020-06-06T05:55:41.6460000Z" + }, + { + "id": "19:uni01_zbnh3nt2dfuffezc3sox7dog7wfhk6y5qe2rwlnfhlhdzirihdpe@thread.v2", + "topic": "Chat with Bob", + "lastMessageReceivedOn": "2020-06-06T05:55:41.6460000Z" + } + ], + "nextLink": "https://contoso.westus.communications.azure.com/chat/threads?syncState=W3sic3RhcnQiOiIyMDIwLTA2LTIzVDIzOjMyOjQ3LjMwNSswMDowMCIsImVuZCI6IjIwMjAtMDYtMjVUMDY6NTY6MjMuNjk2KzAwOjAwIn0seyJzdGFydCI6IjE5NzAtMDEtMDFUMDA6MDA6MDArMDA6MDAiLCJlbmQiOiIxOTcwLTAxLTAxVDAwOjAwOjAwKzAwOjAwIn1d&api-version=2021-04-05-preview6&maxPageSize=5" + } + }, + "401": { + "body": { + "error": { + "code": "Unauthorized", + "message": "Request is not authorized." + } + } + }, + "403": { + "body": { + "error": { + "code": "Forbidden", + "message": "User is not allowed to perform specified action." + } + } + }, + "429": { + "body": { + "error": { + "code": "TooManyRequests", + "message": "Rate limit exceeded." + } + } + }, + "503": { + "body": { + "error": { + "code": "ServiceUnavailable", + "message": "The server is currently unable to handle the request." + } + } + } + } +} diff --git a/specification/communication/data-plane/Chat/preview/2021-04-05-preview6/examples/Threads_UpdateChatThreadTopic.json b/specification/communication/data-plane/Chat/preview/2021-04-05-preview6/examples/Threads_UpdateChatThreadTopic.json new file mode 100644 index 000000000000..854159ac7dfc --- /dev/null +++ b/specification/communication/data-plane/Chat/preview/2021-04-05-preview6/examples/Threads_UpdateChatThreadTopic.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "endpoint": "https://contoso.westus.communications.azure.com", + "content-type": "application/merge-patch+json", + "api-version": "2021-04-05-preview6", + "chatThreadId": "19:uni01_zbnh3nt2dfuffezc3sox7dog7wfhk6y5qe2rwlnfhlhdzirihdpq@thread.v2", + "updateChatThreadRequest": { + "topic": "Updated Thread Topic" + } + }, + "responses": { + "204": {}, + "401": { + "body": { + "error": { + "code": "Unauthorized", + "message": "Request is not authorized." + } + } + }, + "403": { + "body": { + "error": { + "code": "Forbidden", + "message": "User is not allowed to perform specified action." + } + } + }, + "429": { + "body": { + "error": { + "code": "TooManyRequests", + "message": "Rate limit exceeded." + } + } + }, + "503": { + "body": { + "error": { + "code": "ServiceUnavailable", + "message": "The server is currently unable to handle the request." + } + } + } + } +} diff --git a/specification/communication/data-plane/readme.csharp.md b/specification/communication/data-plane/Chat/readme.csharp.md similarity index 100% rename from specification/communication/data-plane/readme.csharp.md rename to specification/communication/data-plane/Chat/readme.csharp.md diff --git a/specification/communication/data-plane/Chat/readme.md b/specification/communication/data-plane/Chat/readme.md new file mode 100644 index 000000000000..d16ec6148aad --- /dev/null +++ b/specification/communication/data-plane/Chat/readme.md @@ -0,0 +1,151 @@ +# communicationservices + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for communicationservices. + +## Getting Started + +To build the SDKs for My API, simply install AutoRest via `npm` (`npm install -g autorest`) and then run: + +> `autorest readme.md` + +To see additional help and options, run: + +> `autorest --help` + +For other options on installation see [Installing AutoRest](https://aka.ms/autorest/install) on the AutoRest github page. + +--- + +## Configuration + +### Basic Information + +These are the global settings for the communicationservices. + +```yaml +openapi-type: data-plane +tag: package-chat-2021-03-07 +``` + +### Tag: package-2020-09-21-preview2 + +These settings apply only when `--tag=package-2020-09-21-preview2` is specified on the command line. + +```yaml $(tag) == 'package-2020-09-21-preview2' +input-file: + - preview/2020-09-21-preview2/communicationserviceschat.json +title: + Azure Communication Services +``` + +### Tag: package-2020-11-01-preview3 + +These settings apply only when `--tag=package-2020-11-01-preview3` is specified on the command line. + +```yaml $(tag) == 'package-2020-11-01-preview3' +input-file: + - preview/2020-11-01-preview3/communicationserviceschat.json +title: + Azure Communication Services +``` + +### Tag: package-2021-01-27-preview4 + +These settings apply only when `--tag=package-2021-01-27-preview4` is specified on the command line. + +```yaml $(tag) == 'package-2021-01-27-preview4' +input-file: + - preview/2021-01-27-preview4/communicationserviceschat.json +title: + Azure Communication Services +``` + +### Tag: package-2021-03-01-preview5 + +These settings apply only when `--tag=package-2021-03-01-preview5` is specified on the command line. + +```yaml $(tag) == 'package-2021-03-01-preview5' +input-file: + - preview/2021-03-01-preview5/communicationserviceschat.json +title: + Azure Communication Services +``` + +### Tag: package-chat-2021-03-07 + +These settings apply only when `--tag=package-chat-2021-03-07` is specified on the command line. + +```yaml $(tag) == 'package-chat-2021-03-07' +input-file: + - stable/2021-03-07/communicationserviceschat.json +title: + Azure Communication Services +``` + +### Tag: package-chat-2021-04-05-preview6 + +These settings apply only when `--tag=package-2021-04-05-preview6` is specified on the command line. + +```yaml $(tag) == 'package-chat-2021-04-05-preview6' +input-file: + - preview/2021-04-05-preview6/communicationserviceschat.json +title: + Azure Communication Services +``` + +--- + +# Code Generation + +## Swagger to SDK + +This section describes what SDK should be generated by the automatic system. +This is not used by Autorest itself. + +## Python + +See configuration in [readme.python.md](./readme.python.md) + +## Ruby + +See configuration in [readme.ruby.md](./readme.ruby.md) + +## TypeScript + +See configuration in [readme.typescript.md](./readme.typescript.md) + +## CSharp + +See configuration in [readme.csharp.md](./readme.csharp.md) + +## Swift + +These settings apply only when `--swift` is specified on the command line. + +```yaml $(swift) +clear-output-folder: false +namespace: AzureCommunicationChat +title: AzureCommunicationChat +package-name: AzureCommunicationChat +package-version: 1.0.0 +license-header: MICROSOFT_MIT_NO_VERSION +add-credential: true +generate-as-internal: > + AzureCommunicationChatClient=ChatClientInternal + CreateChatThreadResult=CreateChatThreadResultInternal + CreateChatThreadRequest=CreateChatThreadRequestInternal + ChatMessage=ChatMessageInternal + ChatMessageContent=ChatMessageContentInternal + ChatParticipant=ChatParticipantInternal + ChatMessageReadReceipt=ChatMessageReadReceiptInternal + ChatThreadProperties=ChatThreadPropertiesInternal +directive: +# Rename CommunicationError to ChatError +- from: swagger-document + where: '$.definitions.CommunicationError' + transform: > + $["x-ms-client-name"] = "ChatError"; +``` + diff --git a/specification/communication/data-plane/readme.python.md b/specification/communication/data-plane/Chat/readme.python.md similarity index 100% rename from specification/communication/data-plane/readme.python.md rename to specification/communication/data-plane/Chat/readme.python.md diff --git a/specification/communication/data-plane/readme.ruby.md b/specification/communication/data-plane/Chat/readme.ruby.md similarity index 100% rename from specification/communication/data-plane/readme.ruby.md rename to specification/communication/data-plane/Chat/readme.ruby.md diff --git a/specification/communication/data-plane/readme.typescript.md b/specification/communication/data-plane/Chat/readme.typescript.md similarity index 100% rename from specification/communication/data-plane/readme.typescript.md rename to specification/communication/data-plane/Chat/readme.typescript.md diff --git a/specification/communication/data-plane/Chat/stable/2021-03-07/communicationserviceschat.json b/specification/communication/data-plane/Chat/stable/2021-03-07/communicationserviceschat.json new file mode 100644 index 000000000000..9587acc5cf5e --- /dev/null +++ b/specification/communication/data-plane/Chat/stable/2021-03-07/communicationserviceschat.json @@ -0,0 +1,1690 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Communication Chat Service", + "description": "Azure Communication Chat Service", + "version": "2021-03-07" + }, + "paths": { + "/chat/threads/{chatThreadId}/readReceipts": { + "get": { + "tags": [ + "Threads" + ], + "summary": "Gets chat message read receipts for a thread.", + "operationId": "ChatThread_ListChatReadReceipts", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "Thread id to get the chat message read receipts for.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "maxPageSize", + "description": "The maximum number of chat message read receipts to be returned per page.", + "type": "integer", + "format": "int32" + }, + { + "in": "query", + "name": "skip", + "description": "Skips chat message read receipts up to a specified position in response.", + "type": "integer", + "format": "int32" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The action returns the requested `ChatMessageReadReceipt` resources.", + "schema": { + "$ref": "#/definitions/ChatMessageReadReceiptsCollection" + } + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Get thread read receipts with pagination (max page size)": { + "$ref": "./examples/Conversations_ListChatReadReceiptsWithPageSize.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink", + "itemName": "value" + } + }, + "post": { + "tags": [ + "Threads" + ], + "summary": "Sends a read receipt event to a thread, on behalf of a user.", + "operationId": "ChatThread_SendChatReadReceipt", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "Thread id to send the read receipt event to.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "sendReadReceiptRequest", + "description": "Read receipt details.", + "required": true, + "schema": { + "$ref": "#/definitions/SendReadReceiptRequest" + } + } + ], + "responses": { + "200": { + "description": "Request successful." + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Send read receipt": { + "$ref": "./examples/Conversations_SendChatReadReceipt.json" + } + } + } + }, + "/chat/threads/{chatThreadId}/messages": { + "post": { + "tags": [ + "Messages" + ], + "summary": "Sends a message to a thread.", + "operationId": "ChatThread_SendChatMessage", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "The thread id to send the message to.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "sendChatMessageRequest", + "description": "Details of the message to send.", + "required": true, + "schema": { + "$ref": "#/definitions/SendChatMessageRequest" + } + } + ], + "responses": { + "201": { + "description": "Message sent, the `Location` header contains the URL for the newly sent message.", + "schema": { + "$ref": "#/definitions/SendChatMessageResult" + } + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Send Message": { + "$ref": "./examples/Messages_SendChatMessage.json" + } + } + }, + "get": { + "tags": [ + "Messages" + ], + "summary": "Gets a list of messages from a thread.", + "operationId": "ChatThread_ListChatMessages", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "The thread id of the message.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "maxPageSize", + "description": "The maximum number of messages to be returned per page.", + "type": "integer", + "format": "int32" + }, + { + "in": "query", + "name": "startTime", + "description": "The earliest point in time to get messages up to. The timestamp should be in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "format": "date-time" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ChatMessagesCollection" + } + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Get messages with pagination (max page size)": { + "$ref": "./examples/Messages_ListChatMessagesWithPageSize.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink", + "itemName": "value" + } + } + }, + "/chat/threads/{chatThreadId}/messages/{chatMessageId}": { + "get": { + "tags": [ + "Messages" + ], + "summary": "Gets a message by id.", + "operationId": "ChatThread_GetChatMessage", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "The thread id to which the message was sent.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "chatMessageId", + "description": "The message id.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The action returns a `Message` resource.", + "schema": { + "$ref": "#/definitions/ChatMessage" + } + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Get Message": { + "$ref": "./examples/Messages_GetChatMessage.json" + } + } + }, + "patch": { + "tags": [ + "Messages" + ], + "summary": "Updates a message.", + "operationId": "ChatThread_UpdateChatMessage", + "consumes": [ + "application/merge-patch+json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "The thread id to which the message was sent.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "chatMessageId", + "description": "The message id.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "updateChatMessageRequest", + "description": "Details of the request to update the message.", + "required": true, + "schema": { + "$ref": "#/definitions/UpdateChatMessageRequest" + } + } + ], + "responses": { + "204": { + "description": "Message is successfully updated." + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Update message content": { + "$ref": "./examples/Messages_UpdateChatMessage.json" + } + } + }, + "delete": { + "tags": [ + "Messages" + ], + "summary": "Deletes a message.", + "operationId": "ChatThread_DeleteChatMessage", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "The thread id to which the message was sent.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "chatMessageId", + "description": "The message id.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "Request successful." + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Delete message": { + "$ref": "./examples/Messages_DeleteChatMessage.json" + } + } + } + }, + "/chat/threads/{chatThreadId}/typing": { + "post": { + "tags": [ + "Messages" + ], + "summary": "Posts a typing event to a thread, on behalf of a user.", + "operationId": "ChatThread_SendTypingNotification", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "Id of the thread.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful." + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Post typing event to a thread": { + "$ref": "./examples/Messages_SendTypingNotification.json" + } + } + } + }, + "/chat/threads/{chatThreadId}/participants": { + "get": { + "tags": [ + "Participants" + ], + "summary": "Gets the participants of a thread.", + "operationId": "ChatThread_ListChatParticipants", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "Thread id to get participants for.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "maxPageSize", + "description": "The maximum number of participants to be returned per page.", + "type": "integer", + "format": "int32" + }, + { + "in": "query", + "name": "skip", + "description": "Skips participants up to a specified position in response.", + "type": "integer", + "format": "int32" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The action returns the participants of a thread.", + "schema": { + "$ref": "#/definitions/ChatParticipantsCollection" + } + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Get participants with pagination (max page size)": { + "$ref": "./examples/Participants_ListChatParticipantsWithPageSize.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink", + "itemName": "value" + } + } + }, + "/chat/threads/{chatThreadId}/participants/:remove": { + "post": { + "tags": [ + "Participants" + ], + "summary": "Remove a participant from a thread.", + "operationId": "ChatThread_RemoveChatParticipant", + "consumes": [ + "application/json", + "application/merge-patch+json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "Thread id to remove the participant from.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "participantCommunicationIdentifier", + "description": "Id of the thread participant to remove from the thread.", + "required": true, + "schema": { + "$ref": "#/definitions/CommunicationIdentifierModel" + } + } + ], + "responses": { + "204": { + "description": "Request successful." + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Remove participant": { + "$ref": "./examples/Participants_RemoveChatParticipant.json" + } + } + } + }, + "/chat/threads/{chatThreadId}/participants/:add": { + "post": { + "tags": [ + "Participants" + ], + "summary": "Adds thread participants to a thread. If participants already exist, no change occurs.", + "operationId": "ChatThread_AddChatParticipants", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "Id of the thread to add participants to.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "addChatParticipantsRequest", + "description": "Thread participants to be added to the thread.", + "required": true, + "schema": { + "$ref": "#/definitions/AddChatParticipantsRequest" + } + } + ], + "responses": { + "201": { + "description": "The participants were successfully added.", + "schema": { + "$ref": "#/definitions/AddChatParticipantsResult" + } + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Add participants": { + "$ref": "./examples/Participants_AddChatParticipants.json" + } + } + } + }, + "/chat/threads": { + "post": { + "tags": [ + "Threads" + ], + "summary": "Creates a chat thread.", + "operationId": "Chat_CreateChatThread", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "header", + "name": "repeatability-request-id", + "description": "If specified, the client directs that the request is repeatable; that is, that the client can make the request multiple times with the same Repeatability-Request-Id and get back an appropriate response without the server executing the request multiple times. The value of the Repeatability-Request-Id is an opaque string representing a client-generated, globally unique for all time, identifier for the request. It is recommended to use version 4 (random) UUIDs.", + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "createChatThreadRequest", + "description": "Request payload for creating a chat thread.", + "required": true, + "schema": { + "$ref": "#/definitions/CreateChatThreadRequest" + } + } + ], + "responses": { + "201": { + "description": "Thread created, the `Location` header would contain the URL for the newly created thread.", + "schema": { + "$ref": "#/definitions/CreateChatThreadResult" + } + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Create chat thread": { + "$ref": "./examples/Threads_CreateChatThread.json" + }, + "Create chat thread with repeatability request id header": { + "$ref": "./examples/Threads_CreateChatThreadWithIdempotencyToken.json" + } + } + }, + "get": { + "tags": [ + "Threads" + ], + "summary": "Gets the list of chat threads of a user.", + "operationId": "Chat_ListChatThreads", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "query", + "name": "maxPageSize", + "description": "The maximum number of chat threads returned per page.", + "type": "integer", + "format": "int32" + }, + { + "in": "query", + "name": "startTime", + "description": "The earliest point in time to get chat threads up to. The timestamp should be in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "format": "date-time" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The action returns a `GetThreadsResponse` resource.", + "schema": { + "$ref": "#/definitions/ChatThreadsItemCollection" + } + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Get threads with pagination (Max Page Size)": { + "$ref": "./examples/Threads_ListChatThreadsWithPageSize.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink", + "itemName": "value" + } + } + }, + "/chat/threads/{chatThreadId}": { + "patch": { + "tags": [ + "Threads" + ], + "summary": "Updates a thread's properties.", + "operationId": "ChatThread_UpdateChatThreadProperties", + "consumes": [ + "application/merge-patch+json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "The id of the thread to update.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "updateChatThreadRequest", + "description": "Request payload for updating a chat thread.", + "required": true, + "schema": { + "$ref": "#/definitions/UpdateChatThreadRequest" + } + } + ], + "responses": { + "204": { + "description": "Thread was successfully updated." + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Update chat thread topic": { + "$ref": "./examples/Threads_UpdateChatThreadTopic.json" + } + } + }, + "get": { + "tags": [ + "Threads" + ], + "summary": "Gets a chat thread's properties.", + "operationId": "ChatThread_GetChatThreadProperties", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "Id of the thread.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The action returns a chat thread.", + "schema": { + "$ref": "#/definitions/ChatThreadProperties" + } + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Get chat thread": { + "$ref": "./examples/Threads_GetChatThread.json" + } + } + }, + "delete": { + "tags": [ + "Threads" + ], + "summary": "Deletes a thread.", + "operationId": "Chat_DeleteChatThread", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "Id of the thread to be deleted.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "Request successful." + }, + "401": { + "description": "Unauthorized.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable.", + "schema": { + "$ref": "#/definitions/CommunicationErrorResponse" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Delete chat thread": { + "$ref": "./examples/Threads_DeleteChatThread.json" + } + } + } + } + }, + "definitions": { + "CommunicationUserIdentifierModel": { + "$ref": "../../../Common/stable/2021-03-07/common.json#/definitions/CommunicationUserIdentifierModel" + }, + "CommunicationCloudEnvironment": { + "$ref": "../../../Common/stable/2021-03-07/common.json#/definitions/CommunicationCloudEnvironmentModel" + }, + "MicrosoftTeamsUserIdentifierModel": { + "$ref": "../../../Common/stable/2021-03-07/common.json#/definitions/MicrosoftTeamsUserIdentifierModel" + }, + "CommunicationIdentifierModel": { + "$ref": "../../../Common/stable/2021-03-07/common.json#/definitions/CommunicationIdentifierModel" + }, + "ChatMessageReadReceipt": { + "description": "A chat message read receipt indicates the time a chat message was read by a recipient.", + "required": [ + "chatMessageId", + "readOn", + "senderCommunicationIdentifier" + ], + "type": "object", + "properties": { + "senderCommunicationIdentifier": { + "$ref": "#/definitions/CommunicationIdentifierModel" + }, + "chatMessageId": { + "description": "Id of the chat message that has been read. This id is generated by the server.", + "type": "string", + "example": "1591137790240" + }, + "readOn": { + "format": "date-time", + "description": "The time at which the message was read. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "example": "2020-10-30T10:50:50Z" + } + } + }, + "ChatMessageReadReceiptsCollection": { + "description": "A paged collection of chat message read receipts.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of chat message read receipts.", + "type": "array", + "items": { + "$ref": "#/definitions/ChatMessageReadReceipt" + } + }, + "nextLink": { + "description": "If there are more chat message read receipts that can be retrieved, the next link will be populated.", + "type": "string", + "readOnly": true + } + } + }, + "CommunicationError": { + "$ref": "../../../Common/stable/2021-03-07/common.json#/definitions/CommunicationError" + }, + "CommunicationErrorResponse": { + "$ref": "../../../Common/stable/2021-03-07/common.json#/definitions/CommunicationErrorResponse" + }, + "SendReadReceiptRequest": { + "description": "Request payload for sending a read receipt.", + "required": [ + "chatMessageId" + ], + "type": "object", + "properties": { + "chatMessageId": { + "description": "Id of the latest chat message read by the user.", + "type": "string", + "example": "1592435762364" + } + } + }, + "ChatMessageType": { + "description": "The chat message type.", + "enum": [ + "text", + "html", + "topicUpdated", + "participantAdded", + "participantRemoved" + ], + "type": "string", + "x-ms-enum": { + "name": "ChatMessageType", + "modelAsString": true + } + }, + "SendChatMessageRequest": { + "description": "Details of the message to send.", + "required": [ + "content" + ], + "type": "object", + "properties": { + "content": { + "description": "Chat message content.", + "type": "string", + "example": "Come one guys, lets go for lunch together." + }, + "senderDisplayName": { + "description": "The display name of the chat message sender. This property is used to populate sender name for push notifications.", + "type": "string", + "example": "Bob Admin" + }, + "type": { + "$ref": "#/definitions/ChatMessageType" + } + } + }, + "SendChatMessageResult": { + "description": "Result of the send message operation.", + "required": [ + "id" + ], + "type": "object", + "properties": { + "id": { + "description": "A server-generated message id.", + "type": "string", + "example": "123456789" + } + } + }, + "ChatParticipant": { + "description": "A participant of the chat thread.", + "required": [ + "communicationIdentifier" + ], + "type": "object", + "properties": { + "communicationIdentifier": { + "$ref": "#/definitions/CommunicationIdentifierModel" + }, + "displayName": { + "description": "Display name for the chat participant.", + "type": "string", + "example": "Bob" + }, + "shareHistoryTime": { + "format": "date-time", + "description": "Time from which the chat history is shared with the participant. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "example": "2020-10-30T10:50:50Z" + } + } + }, + "ChatMessageContent": { + "description": "Content of a chat message.", + "type": "object", + "properties": { + "message": { + "description": "Chat message content for messages of types text or html.", + "type": "string", + "example": "Come one guys, lets go for lunch together." + }, + "topic": { + "description": "Chat message content for messages of type topicUpdated.", + "type": "string", + "example": "Lunch Chat thread" + }, + "participants": { + "description": "Chat message content for messages of types participantAdded or participantRemoved.", + "type": "array", + "items": { + "$ref": "#/definitions/ChatParticipant" + } + }, + "initiatorCommunicationIdentifier": { + "$ref": "#/definitions/CommunicationIdentifierModel" + } + } + }, + "ChatMessage": { + "description": "Chat message.", + "required": [ + "createdOn", + "id", + "sequenceId", + "type", + "version" + ], + "type": "object", + "properties": { + "id": { + "description": "The id of the chat message. This id is server generated.", + "type": "string", + "example": "123456789" + }, + "type": { + "$ref": "#/definitions/ChatMessageType" + }, + "sequenceId": { + "description": "Sequence of the chat message in the conversation.", + "type": "string" + }, + "version": { + "description": "Version of the chat message.", + "type": "string" + }, + "content": { + "$ref": "#/definitions/ChatMessageContent" + }, + "senderDisplayName": { + "description": "The display name of the chat message sender. This property is used to populate sender name for push notifications.", + "type": "string", + "example": "Jane" + }, + "createdOn": { + "format": "date-time", + "description": "The timestamp when the chat message arrived at the server. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "example": "2020-10-30T10:50:50Z" + }, + "senderCommunicationIdentifier": { + "$ref": "#/definitions/CommunicationIdentifierModel" + }, + "deletedOn": { + "format": "date-time", + "description": "The timestamp (if applicable) when the message was deleted. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "example": "2020-10-30T10:50:50Z" + }, + "editedOn": { + "format": "date-time", + "description": "The last timestamp (if applicable) when the message was edited. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "example": "2020-10-30T10:50:50Z" + } + } + }, + "ChatMessagesCollection": { + "description": "Collection of chat messages for a particular chat thread.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of chat messages.", + "type": "array", + "items": { + "$ref": "#/definitions/ChatMessage" + } + }, + "nextLink": { + "description": "If there are more chat messages that can be retrieved, the next link will be populated.", + "type": "string", + "readOnly": true + } + } + }, + "UpdateChatMessageRequest": { + "description": "Request payload for updating a chat message.", + "type": "object", + "properties": { + "content": { + "description": "Chat message content.", + "type": "string", + "example": "Let's go for lunch together." + } + } + }, + "ChatParticipantsCollection": { + "description": "Collection of participants belong to a particular thread.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Chat participants.", + "type": "array", + "items": { + "$ref": "#/definitions/ChatParticipant" + } + }, + "nextLink": { + "description": "If there are more chat participants that can be retrieved, the next link will be populated.", + "type": "string", + "readOnly": true + } + } + }, + "AddChatParticipantsRequest": { + "description": "Participants to be added to the thread.", + "required": [ + "participants" + ], + "type": "object", + "properties": { + "participants": { + "description": "Participants to add to a chat thread.", + "type": "array", + "items": { + "$ref": "#/definitions/ChatParticipant" + } + } + } + }, + "AddChatParticipantsResult": { + "description": "Result of the add chat participants operation.", + "type": "object", + "properties": { + "invalidParticipants": { + "description": "The participants that failed to be added to the chat thread.", + "type": "array", + "items": { + "$ref": "#/definitions/CommunicationError" + }, + "readOnly": true + } + } + }, + "CreateChatThreadRequest": { + "description": "Request payload for creating a chat thread.", + "required": [ + "topic" + ], + "type": "object", + "properties": { + "topic": { + "description": "The chat thread topic.", + "type": "string", + "example": "Lunch Thread" + }, + "participants": { + "description": "Participants to be added to the chat thread.", + "type": "array", + "items": { + "$ref": "#/definitions/ChatParticipant" + } + } + } + }, + "ChatThreadProperties": { + "description": "Chat thread.", + "required": [ + "createdByCommunicationIdentifier", + "createdOn", + "id", + "topic" + ], + "type": "object", + "properties": { + "id": { + "description": "Chat thread id.", + "type": "string", + "example": "19:uni01_uy5ucb66ugp3lrhe7pxso6xx4hsmm3dl6eyjfefv2n6x3rrurpea@thread.v2" + }, + "topic": { + "description": "Chat thread topic.", + "type": "string", + "example": "Lunch Chat thread" + }, + "createdOn": { + "format": "date-time", + "description": "The timestamp when the chat thread was created. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "example": "2020-10-30T10:50:50Z" + }, + "createdByCommunicationIdentifier": { + "$ref": "#/definitions/CommunicationIdentifierModel" + }, + "deletedOn": { + "format": "date-time", + "description": "The timestamp when the chat thread was deleted. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "example": "2020-10-30T10:50:50Z" + } + } + }, + "CreateChatThreadResult": { + "description": "Result of the create chat thread operation.", + "type": "object", + "properties": { + "chatThread": { + "$ref": "#/definitions/ChatThreadProperties" + }, + "invalidParticipants": { + "description": "The participants that failed to be added to the chat thread.", + "type": "array", + "items": { + "$ref": "#/definitions/CommunicationError" + }, + "readOnly": true + } + } + }, + "ChatThreadItem": { + "description": "Summary information of a chat thread.", + "required": [ + "id", + "topic" + ], + "type": "object", + "properties": { + "id": { + "description": "Chat thread id.", + "type": "string", + "example": "19:uni01_uy5ucb66ugp3lrhe7pxso6xx4hsmm3dl6eyjfefv2n6x3rrurpea@thread.v2" + }, + "topic": { + "description": "Chat thread topic.", + "type": "string", + "example": "Lunch Chat thread" + }, + "deletedOn": { + "format": "date-time", + "description": "The timestamp when the chat thread was deleted. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "example": "2020-10-30T10:50:50Z" + }, + "lastMessageReceivedOn": { + "format": "date-time", + "description": "The timestamp when the last message arrived at the server. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "readOnly": true, + "example": "2020-10-30T10:50:50Z" + } + } + }, + "ChatThreadsItemCollection": { + "description": "Collection of chat threads.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of chat threads.", + "type": "array", + "items": { + "$ref": "#/definitions/ChatThreadItem" + } + }, + "nextLink": { + "description": "If there are more chat threads that can be retrieved, the next link will be populated.", + "type": "string", + "readOnly": true + } + } + }, + "UpdateChatThreadRequest": { + "description": "Request payload for updating a chat thread.", + "type": "object", + "properties": { + "topic": { + "description": "Chat thread topic.", + "type": "string", + "example": "Lunch Thread" + } + } + } + }, + "parameters": { + "ApiVersionParameter": { + "in": "query", + "name": "api-version", + "description": "Version of API to invoke.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "Endpoint": { + "in": "path", + "name": "endpoint", + "description": "The endpoint of the Azure Communication resource.", + "required": true, + "type": "string", + "x-ms-skip-url-encoding": true, + "x-ms-parameter-location": "client" + } + }, + "securityDefinitions": { + "Authorization": { + "type": "apiKey", + "name": "Authorization", + "in": "header", + "description": "An ACS (Azure Communication Services) user access token." + } + }, + "security": [ + { + "Authorization": [] + } + ], + "x-ms-parameterized-host": { + "hostTemplate": "{endpoint}", + "useSchemePrefix": false, + "parameters": [ + { + "$ref": "#/parameters/Endpoint" + } + ] + } +} diff --git a/specification/communication/data-plane/Chat/stable/2021-03-07/examples/Conversations_ListChatReadReceiptsWithPageSize.json b/specification/communication/data-plane/Chat/stable/2021-03-07/examples/Conversations_ListChatReadReceiptsWithPageSize.json new file mode 100644 index 000000000000..5fb65c3e97be --- /dev/null +++ b/specification/communication/data-plane/Chat/stable/2021-03-07/examples/Conversations_ListChatReadReceiptsWithPageSize.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "endpoint": "https://contoso.westus.communications.azure.com", + "api-version": "2021-03-07", + "chatThreadId": "19:uni01_zbnh3nt2dfuffezc3sox7dog7wfhk6y5qe2rwlnfhlhdzirihdpq@thread.v2", + "maxPageSize": 2 + }, + "responses": { + "200": { + "body": { + "value": [ + { + "senderCommunicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b" + } + }, + "chatMessageId": "1591137790240", + "readOn": "2020-06-06T05:55:41.6460000Z" + }, + { + "senderCommunicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10a", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10a" + } + }, + "chatMessageId": "1591768249318", + "readOn": "2020-06-06T05:55:41.6460000Z" + } + ], + "nextLink": "https://contoso.westus.communications.azure.com/chat/threads/19:453dafb77b26481ea2e73bcada0324af@thread.v2/readReceipts?skip=2&maxPageSize=2&api-version=2021-03-07" + } + }, + "401": { + "body": { + "error": { + "code": "Unauthorized", + "message": "Request is not authorized." + } + } + }, + "403": { + "body": { + "error": { + "code": "Forbidden", + "message": "User is not allowed to perform specified action." + } + } + }, + "429": { + "body": { + "error": { + "code": "TooManyRequests", + "message": "Rate limit exceeded." + } + } + }, + "503": { + "body": { + "error": { + "code": "ServiceUnavailable", + "message": "The server is currently unable to handle the request." + } + } + } + } +} diff --git a/specification/communication/data-plane/Chat/stable/2021-03-07/examples/Conversations_SendChatReadReceipt.json b/specification/communication/data-plane/Chat/stable/2021-03-07/examples/Conversations_SendChatReadReceipt.json new file mode 100644 index 000000000000..b505a8d48088 --- /dev/null +++ b/specification/communication/data-plane/Chat/stable/2021-03-07/examples/Conversations_SendChatReadReceipt.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "endpoint": "https://contoso.westus.communications.azure.com", + "api-version": "2021-03-07", + "chatThreadId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "sendReadReceiptRequest": { + "chatMessageId": "1591137790240" + } + }, + "responses": { + "200": {}, + "401": { + "body": { + "error": { + "code": "Unauthorized", + "message": "Request is not authorized." + } + } + }, + "403": { + "body": { + "error": { + "code": "Forbidden", + "message": "User is not allowed to perform specified action." + } + } + }, + "429": { + "body": { + "error": { + "code": "TooManyRequests", + "message": "Rate limit exceeded." + } + } + }, + "503": { + "body": { + "error": { + "code": "ServiceUnavailable", + "message": "The server is currently unable to handle the request." + } + } + } + } +} diff --git a/specification/communication/data-plane/Chat/stable/2021-03-07/examples/Messages_DeleteChatMessage.json b/specification/communication/data-plane/Chat/stable/2021-03-07/examples/Messages_DeleteChatMessage.json new file mode 100644 index 000000000000..1191655f34ba --- /dev/null +++ b/specification/communication/data-plane/Chat/stable/2021-03-07/examples/Messages_DeleteChatMessage.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "endpoint": "https://contoso.westus.communications.azure.com", + "api-version": "2021-03-07", + "chatThreadId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "chatMessageId": "1591768249318" + }, + "responses": { + "204": {}, + "401": { + "body": { + "error": { + "code": "Unauthorized", + "message": "Request is not authorized." + } + } + }, + "403": { + "body": { + "error": { + "code": "Forbidden", + "message": "User is not allowed to perform specified action." + } + } + }, + "429": { + "body": { + "error": { + "code": "TooManyRequests", + "message": "Rate limit exceeded." + } + } + }, + "503": { + "body": { + "error": { + "code": "ServiceUnavailable", + "message": "The server is currently unable to handle the request." + } + } + } + } +} diff --git a/specification/communication/data-plane/Chat/stable/2021-03-07/examples/Messages_GetChatMessage.json b/specification/communication/data-plane/Chat/stable/2021-03-07/examples/Messages_GetChatMessage.json new file mode 100644 index 000000000000..f4a565e64394 --- /dev/null +++ b/specification/communication/data-plane/Chat/stable/2021-03-07/examples/Messages_GetChatMessage.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "endpoint": "https://contoso.westus.communications.azure.com", + "api-version": "2021-03-07", + "chatThreadId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "chatMessageId": "1591768249318" + }, + "responses": { + "200": { + "body": { + "id": "1591768249318", + "sequenceId": "1", + "type": "text", + "version": "1599016601134", + "content": { + "message": "Let's head out for lunch in 15 minutes." + }, + "senderDisplayName": "Jane", + "createdOn": "2020-06-10T05:50:49.3180000Z", + "senderCommunicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b" + } + } + } + }, + "401": { + "body": { + "error": { + "code": "Unauthorized", + "message": "Request is not authorized." + } + } + }, + "403": { + "body": { + "error": { + "code": "Forbidden", + "message": "User is not allowed to perform specified action." + } + } + }, + "429": { + "body": { + "error": { + "code": "TooManyRequests", + "message": "Rate limit exceeded." + } + } + }, + "503": { + "body": { + "error": { + "code": "ServiceUnavailable", + "message": "The server is currently unable to handle the request." + } + } + } + } +} diff --git a/specification/communication/data-plane/Chat/stable/2021-03-07/examples/Messages_ListChatMessagesWithPageSize.json b/specification/communication/data-plane/Chat/stable/2021-03-07/examples/Messages_ListChatMessagesWithPageSize.json new file mode 100644 index 000000000000..3d2a1c4c3350 --- /dev/null +++ b/specification/communication/data-plane/Chat/stable/2021-03-07/examples/Messages_ListChatMessagesWithPageSize.json @@ -0,0 +1,157 @@ +{ + "parameters": { + "endpoint": "https://contoso.westus.communications.azure.com", + "api-version": "2021-03-07", + "chatThreadId": "19:453dafb77b26481ea2e73bcada0324af@thread.v2", + "maxPageSize": 5 + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "1593107077690", + "type": "text", + "version": "1593107077683", + "sequenceId": "5", + "content": { + "message": "So where should we get lunch from today?" + }, + "senderDisplayName": "Jane", + "createdOn": "2020-06-25T17:44:37.6830000Z", + "senderCommunicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b" + } + } + }, + { + "id": "1593107077683", + "type": "text", + "sequenceId": "4", + "version": "1593107077683", + "content": { + "message": "Let's use this chat to decide what to get for lunch today." + }, + "senderDisplayName": "Jane", + "createdOn": "2020-06-25T17:44:37.6830000Z", + "senderCommunicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b" + } + } + }, + { + "id": "1593107046498", + "type": "text", + "sequenceId": "3", + "version": "1593107046498", + "content": { + "message": "Good morning everyone!" + }, + "senderDisplayName": "Jane", + "createdOn": "2020-06-25T17:44:06.4980000Z", + "senderCommunicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b" + } + } + }, + { + "id": "1593106976785", + "type": "topicUpdated", + "sequenceId": "2", + "version": "1593106976785", + "content": { + "initiatorCommunicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b" + } + }, + "topic": "Lunch" + }, + "createdOn": "2020-06-25T17:42:56.7850000Z" + }, + { + "id": "1593106976753", + "type": "participantAdded", + "version": "1593106976753", + "sequenceId": "1", + "content": { + "initiatorCommunicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b" + } + }, + "participants": [ + { + "communicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b" + } + } + }, + { + "communicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10c", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10c" + } + } + }, + { + "communicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10d", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10d" + } + } + } + ] + }, + "createdOn": "2020-06-25T17:42:56.7530000Z" + } + ], + "nextLink": "https://contoso.westus.communications.azure.com/chat/threads/19:453dafb77b26481ea2e73bcada0324af@thread.v2/messages?syncState=3e4700000031393a756e6930315f7a626e68336e74326466756666657a6333736f7837646f67377766686b36793571653272776c6e66686c68647a69726968647071407468726561642e763201451fe6e77201000004357fea72010000&startTime=0&maxPageSize=5&api-version=2021-03-07" + } + }, + "401": { + "body": { + "error": { + "code": "Unauthorized", + "message": "Request is not authorized." + } + } + }, + "403": { + "body": { + "error": { + "code": "Forbidden", + "message": "User is not allowed to perform specified action." + } + } + }, + "429": { + "body": { + "error": { + "code": "TooManyRequests", + "message": "Rate limit exceeded." + } + } + }, + "503": { + "body": { + "error": { + "code": "ServiceUnavailable", + "message": "The server is currently unable to handle the request." + } + } + } + } +} diff --git a/specification/communication/data-plane/Chat/stable/2021-03-07/examples/Messages_SendChatMessage.json b/specification/communication/data-plane/Chat/stable/2021-03-07/examples/Messages_SendChatMessage.json new file mode 100644 index 000000000000..83dcc18fc952 --- /dev/null +++ b/specification/communication/data-plane/Chat/stable/2021-03-07/examples/Messages_SendChatMessage.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "endpoint": "https://contoso.westus.communications.azure.com", + "api-version": "2021-03-07", + "chatThreadId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "sendChatMessageRequest": { + "content": "Let's head out for lunch in 15 minutes.", + "senderDisplayName": "Jane" + } + }, + "responses": { + "201": { + "headers": { + "Location": "https://contoso.westus.communications.azure.com/chat/threads/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/messages/1593072104708" + }, + "body": { + "id": "1593072104708" + } + }, + "401": { + "body": { + "error": { + "code": "Unauthorized", + "message": "Request is not authorized." + } + } + }, + "403": { + "body": { + "error": { + "code": "Forbidden", + "message": "User is not allowed to perform specified action." + } + } + }, + "429": { + "body": { + "error": { + "code": "TooManyRequests", + "message": "Rate limit exceeded." + } + } + }, + "503": { + "body": { + "error": { + "code": "ServiceUnavailable", + "message": "The server is currently unable to handle the request." + } + } + } + } +} diff --git a/specification/communication/data-plane/Chat/stable/2021-03-07/examples/Messages_SendTypingNotification.json b/specification/communication/data-plane/Chat/stable/2021-03-07/examples/Messages_SendTypingNotification.json new file mode 100644 index 000000000000..4696afc1f66e --- /dev/null +++ b/specification/communication/data-plane/Chat/stable/2021-03-07/examples/Messages_SendTypingNotification.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "endpoint": "https://contoso.westus.communications.azure.com", + "api-version": "2021-03-07", + "chatThreadId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345" + }, + "responses": { + "200": {}, + "401": { + "body": { + "error": { + "code": "Unauthorized", + "message": "Request is not authorized." + } + } + }, + "403": { + "body": { + "error": { + "code": "Forbidden", + "message": "User is not allowed to perform specified action." + } + } + }, + "429": { + "body": { + "error": { + "code": "TooManyRequests", + "message": "Rate limit exceeded." + } + } + }, + "503": { + "body": { + "error": { + "code": "ServiceUnavailable", + "message": "The server is currently unable to handle the request." + } + } + } + } +} diff --git a/specification/communication/data-plane/Chat/stable/2021-03-07/examples/Messages_UpdateChatMessage.json b/specification/communication/data-plane/Chat/stable/2021-03-07/examples/Messages_UpdateChatMessage.json new file mode 100644 index 000000000000..179dc57bee1d --- /dev/null +++ b/specification/communication/data-plane/Chat/stable/2021-03-07/examples/Messages_UpdateChatMessage.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "endpoint": "https://contoso.westus.communications.azure.com", + "content-type": "application/merge-patch+json", + "api-version": "2021-03-07", + "chatThreadId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "chatMessageId": "1591768249318", + "updateChatMessageRequest": { + "content": "Updated message content" + } + }, + "responses": { + "204": {}, + "401": { + "body": { + "error": { + "code": "Unauthorized", + "message": "Request is not authorized." + } + } + }, + "403": { + "body": { + "error": { + "code": "Forbidden", + "message": "User is not allowed to perform specified action." + } + } + }, + "429": { + "body": { + "error": { + "code": "TooManyRequests", + "message": "Rate limit exceeded." + } + } + }, + "503": { + "body": { + "error": { + "code": "ServiceUnavailable", + "message": "The server is currently unable to handle the request." + } + } + } + } +} diff --git a/specification/communication/data-plane/Chat/stable/2021-03-07/examples/Participants_AddChatParticipants.json b/specification/communication/data-plane/Chat/stable/2021-03-07/examples/Participants_AddChatParticipants.json new file mode 100644 index 000000000000..368397462927 --- /dev/null +++ b/specification/communication/data-plane/Chat/stable/2021-03-07/examples/Participants_AddChatParticipants.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "endpoint": "https://contoso.westus.communications.azure.com", + "api-version": "2021-03-07", + "chatThreadId": "19:f2167429acf6482880c6b7790a9086c1@thread.v2", + "addChatParticipantsRequest": { + "participants": [ + { + "communicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10a", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10a" + } + }, + "displayName": "Alex", + "shareHistoryTime": "2020-06-06T05:55:41Z" + }, + { + "communicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b" + } + }, + "displayName": "Peter", + "shareHistoryTime": "2020-06-06T05:55:41Z" + }, + { + "communicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10c", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10c" + } + }, + "displayName": "Rama", + "shareHistoryTime": "2020-06-06T05:55:41Z" + } + ] + } + }, + "responses": { + "201": { + "body": { + "invalidParticipants": [ + { + "target": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10c", + "code": "403", + "message": "Permissions check failed" + }, + { + "target": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10a", + "code": "404", + "message": "Not found" + } + ] + } + }, + "401": { + "body": { + "error": { + "code": "Unauthorized", + "message": "Request is not authorized." + } + } + }, + "403": { + "body": { + "error": { + "code": "Forbidden", + "message": "User is not allowed to perform specified action." + } + } + }, + "429": { + "body": { + "error": { + "code": "TooManyRequests", + "message": "Rate limit exceeded." + } + } + }, + "503": { + "body": { + "error": { + "code": "ServiceUnavailable", + "message": "The server is currently unable to handle the request." + } + } + } + } +} diff --git a/specification/communication/data-plane/Chat/stable/2021-03-07/examples/Participants_ListChatParticipantsWithPageSize.json b/specification/communication/data-plane/Chat/stable/2021-03-07/examples/Participants_ListChatParticipantsWithPageSize.json new file mode 100644 index 000000000000..cad3c8837aa7 --- /dev/null +++ b/specification/communication/data-plane/Chat/stable/2021-03-07/examples/Participants_ListChatParticipantsWithPageSize.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "endpoint": "https://contoso.westus.communications.azure.com", + "api-version": "2021-03-07", + "chatThreadId": "19:f2167429acf6482880c6b7790a9086c1@thread.v2", + "maxPageSize": 2 + }, + "responses": { + "200": { + "body": { + "value": [ + { + "communicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10a", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10a" + } + }, + "displayName": "Jane", + "shareHistoryTime": "2020-06-06T05:55:41Z" + }, + { + "communicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b" + } + }, + "displayName": "Alex", + "shareHistoryTime": "2020-06-06T05:55:41Z" + } + ], + "nextLink": "https://contoso.westus.communications.azure.com/chat/threads/19:453dafb77b26481ea2e73bcada0324af@thread.v2/participants?skip=2&maxPageSize=2&api-version=2021-03-07" + } + }, + "401": { + "body": { + "error": { + "code": "Unauthorized", + "message": "Request is not authorized." + } + } + }, + "403": { + "body": { + "error": { + "code": "Forbidden", + "message": "User is not allowed to perform specified action." + } + } + }, + "429": { + "body": { + "error": { + "code": "TooManyRequests", + "message": "Rate limit exceeded." + } + } + }, + "503": { + "body": { + "error": { + "code": "ServiceUnavailable", + "message": "The server is currently unable to handle the request." + } + } + } + } +} diff --git a/specification/communication/data-plane/Chat/stable/2021-03-07/examples/Participants_RemoveChatParticipant.json b/specification/communication/data-plane/Chat/stable/2021-03-07/examples/Participants_RemoveChatParticipant.json new file mode 100644 index 000000000000..78d56f1fbe1a --- /dev/null +++ b/specification/communication/data-plane/Chat/stable/2021-03-07/examples/Participants_RemoveChatParticipant.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "endpoint": "https://contoso.westus.communications.azure.com", + "api-version": "2021-03-07", + "chatThreadId": "19:f2167429acf6482880c6b7790a9086c1@thread.v2", + "participantCommunicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b" + } + } + }, + "responses": { + "204": {}, + "401": { + "body": { + "error": { + "code": "Unauthorized", + "message": "Request is not authorized." + } + } + }, + "403": { + "body": { + "error": { + "code": "Forbidden", + "message": "User is not allowed to perform specified action." + } + } + }, + "429": { + "body": { + "error": { + "code": "TooManyRequests", + "message": "Rate limit exceeded." + } + } + }, + "503": { + "body": { + "error": { + "code": "ServiceUnavailable", + "message": "The server is currently unable to handle the request." + } + } + } + } +} diff --git a/specification/communication/data-plane/Chat/stable/2021-03-07/examples/Threads_CreateChatThread.json b/specification/communication/data-plane/Chat/stable/2021-03-07/examples/Threads_CreateChatThread.json new file mode 100644 index 000000000000..c70d938d26a2 --- /dev/null +++ b/specification/communication/data-plane/Chat/stable/2021-03-07/examples/Threads_CreateChatThread.json @@ -0,0 +1,111 @@ +{ + "parameters": { + "endpoint": "https://contoso.westus.communications.azure.com", + "api-version": "2021-03-07", + "createChatThreadRequest": { + "topic": "Lunch", + "participants": [ + { + "communicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10a", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10a" + } + }, + "displayName": "Jane" + }, + { + "communicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b" + } + }, + "displayName": "Alex" + }, + { + "communicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10c", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10c" + } + }, + "displayName": "Bob" + }, + { + "communicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10d", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10d" + } + }, + "displayName": "Peter" + } + ] + } + }, + "responses": { + "201": { + "headers": { + "Location": "https://contoso.westus.communications.azure.com/chat/threads/19%3Auni01_zbnh3nt2dfuffezc3sox7dog7wfhk6y5qe2rwlnfhlhdzirihdpq@thread.v2" + }, + "body": { + "chatThread": { + "id": "19:uni01_zbnh3nt2dfuffezc3sox7dog7wfhk6y5qe2rwlnfhlhdzirihdpq@thread.v2", + "topic": "Lunch", + "createdOn": "2020-06-06T05:55:41.6460000Z", + "createdByCommunicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10a", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10a" + } + } + }, + "invalidParticipants": [ + { + "target": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10c", + "code": "403", + "message": "Permissions check failed" + }, + { + "target": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10d", + "code": "404", + "message": "Not found" + } + ] + } + }, + "401": { + "body": { + "error": { + "code": "Unauthorized", + "message": "Request is not authorized." + } + } + }, + "403": { + "body": { + "error": { + "code": "Forbidden", + "message": "User is not allowed to perform specified action." + } + } + }, + "429": { + "body": { + "error": { + "code": "TooManyRequests", + "message": "Rate limit exceeded." + } + } + }, + "503": { + "body": { + "error": { + "code": "ServiceUnavailable", + "message": "The server is currently unable to handle the request." + } + } + } + } +} diff --git a/specification/communication/data-plane/Chat/stable/2021-03-07/examples/Threads_CreateChatThreadWithIdempotencyToken.json b/specification/communication/data-plane/Chat/stable/2021-03-07/examples/Threads_CreateChatThreadWithIdempotencyToken.json new file mode 100644 index 000000000000..bfd032aa4013 --- /dev/null +++ b/specification/communication/data-plane/Chat/stable/2021-03-07/examples/Threads_CreateChatThreadWithIdempotencyToken.json @@ -0,0 +1,112 @@ +{ + "parameters": { + "endpoint": "https://contoso.westus.communications.azure.com", + "api-version": "2021-03-07", + "idempotency-token": "35dd6e71-251b-5e29-8376-ba93d09c3fbf", + "createChatThreadRequest": { + "topic": "Lunch", + "participants": [ + { + "communicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10a", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10a" + } + }, + "displayName": "Jane" + }, + { + "communicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b" + } + }, + "displayName": "Alex" + }, + { + "communicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10c", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10c" + } + }, + "displayName": "Bob" + }, + { + "communicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10d", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10d" + } + }, + "displayName": "Peter" + } + ] + } + }, + "responses": { + "201": { + "headers": { + "Location": "https://contoso.westus.communications.azure.com/chat/threads/19%3Auni01_zbnh3nt2dfuffezc3sox7dog7wfhk6y5qe2rwlnfhlhdzirihdpq@thread.v2" + }, + "body": { + "chatThread": { + "id": "19:uni01_zbnh3nt2dfuffezc3sox7dog7wfhk6y5qe2rwlnfhlhdzirihdpq@thread.v2", + "topic": "Lunch", + "createdOn": "2020-06-06T05:55:41.6460000Z", + "createdByCommunicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10a", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10a" + } + } + }, + "invalidParticipants": [ + { + "target": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10c", + "code": "403", + "message": "Permissions check failed" + }, + { + "target": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10d", + "code": "404", + "message": "Not found" + } + ] + } + }, + "401": { + "body": { + "error": { + "code": "Unauthorized", + "message": "Request is not authorized." + } + } + }, + "403": { + "body": { + "error": { + "code": "Forbidden", + "message": "User is not allowed to perform specified action." + } + } + }, + "429": { + "body": { + "error": { + "code": "TooManyRequests", + "message": "Rate limit exceeded." + } + } + }, + "503": { + "body": { + "error": { + "code": "ServiceUnavailable", + "message": "The server is currently unable to handle the request." + } + } + } + } +} diff --git a/specification/communication/data-plane/Chat/stable/2021-03-07/examples/Threads_DeleteChatThread.json b/specification/communication/data-plane/Chat/stable/2021-03-07/examples/Threads_DeleteChatThread.json new file mode 100644 index 000000000000..5ac0fa6b697b --- /dev/null +++ b/specification/communication/data-plane/Chat/stable/2021-03-07/examples/Threads_DeleteChatThread.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "endpoint": "https://contoso.westus.communications.azure.com", + "api-version": "2021-03-07", + "chatThreadId": "19:9525281ac1f947fc884bcee1a9f983c2@thread.v2" + }, + "responses": { + "204": {}, + "401": { + "body": { + "error": { + "code": "Unauthorized", + "message": "Request is not authorized." + } + } + }, + "403": { + "body": { + "error": { + "code": "Forbidden", + "message": "User is not allowed to perform specified action." + } + } + }, + "429": { + "body": { + "error": { + "code": "TooManyRequests", + "message": "Rate limit exceeded." + } + } + }, + "503": { + "body": { + "error": { + "code": "ServiceUnavailable", + "message": "The server is currently unable to handle the request." + } + } + } + } +} diff --git a/specification/communication/data-plane/Chat/stable/2021-03-07/examples/Threads_GetChatThread.json b/specification/communication/data-plane/Chat/stable/2021-03-07/examples/Threads_GetChatThread.json new file mode 100644 index 000000000000..d4dfad2644b1 --- /dev/null +++ b/specification/communication/data-plane/Chat/stable/2021-03-07/examples/Threads_GetChatThread.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "endpoint": "https://contoso.westus.communications.azure.com", + "api-version": "2021-03-07", + "chatThreadId": "19:uni01_zbnh3nt2dfuffezc3sox7dog7wfhk6y5qe2rwlnfhlhdzirihdpq@thread.v2" + }, + "responses": { + "200": { + "body": { + "id": "19:uni01_zbnh3nt2dfuffezc3sox7dog7wfhk6y5qe2rwlnfhlhdzirihdpq@thread.v2", + "topic": "Lunch", + "createdOn": "2020-06-06T05:55:41.6460000Z", + "createdByCommunicationIdentifier": { + "rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b", + "communicationUser": { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b" + } + } + } + }, + "401": { + "body": { + "error": { + "code": "Unauthorized", + "message": "Request is not authorized." + } + } + }, + "403": { + "body": { + "error": { + "code": "Forbidden", + "message": "User is not allowed to perform specified action." + } + } + }, + "429": { + "body": { + "error": { + "code": "TooManyRequests", + "message": "Rate limit exceeded." + } + } + }, + "503": { + "body": { + "error": { + "code": "ServiceUnavailable", + "message": "The server is currently unable to handle the request." + } + } + } + } +} diff --git a/specification/communication/data-plane/Chat/stable/2021-03-07/examples/Threads_ListChatThreadsWithPageSize.json b/specification/communication/data-plane/Chat/stable/2021-03-07/examples/Threads_ListChatThreadsWithPageSize.json new file mode 100644 index 000000000000..77962edadd53 --- /dev/null +++ b/specification/communication/data-plane/Chat/stable/2021-03-07/examples/Threads_ListChatThreadsWithPageSize.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "endpoint": "https://contoso.westus.communications.azure.com", + "api-version": "2021-03-07", + "maxPageSize": 5 + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "19:uni01_zbnh3nt2dfuffezc3sox7dog7wfhk6y5qe2rwlnfhlhdzirihdpq@thread.v2", + "topic": "Chat with Samantha", + "lastMessageReceivedOn": "2020-06-06T05:55:41.6460000Z" + }, + { + "id": "19:a0dfe5fc10e04a7f8d8a64d455f4196d@thread.v2", + "topic": "Presentation Brainstorming", + "lastMessageReceivedOn": "2020-06-06T05:55:41.6460000Z" + }, + { + "id": "19:uni01_n242d2bzammtwxiib7pbjtozeevjqzavzn654ku3dajocexfo2na@thread.v2", + "topic": "Chat with Alex", + "lastMessageReceivedOn": "2020-06-06T05:55:41.6460000Z" + }, + { + "id": "19:0062022a28be4e0983734f7e45cd8566@thread.v2", + "topic": "Lunch", + "deletedOn": "2020-07-07T05:55:41.6460000Z", + "lastMessageReceivedOn": "2020-06-06T05:55:41.6460000Z" + }, + { + "id": "19:uni01_zbnh3nt2dfuffezc3sox7dog7wfhk6y5qe2rwlnfhlhdzirihdpe@thread.v2", + "topic": "Chat with Bob", + "lastMessageReceivedOn": "2020-06-06T05:55:41.6460000Z" + } + ], + "nextLink": "https://contoso.westus.communications.azure.com/chat/threads?syncState=W3sic3RhcnQiOiIyMDIwLTA2LTIzVDIzOjMyOjQ3LjMwNSswMDowMCIsImVuZCI6IjIwMjAtMDYtMjVUMDY6NTY6MjMuNjk2KzAwOjAwIn0seyJzdGFydCI6IjE5NzAtMDEtMDFUMDA6MDA6MDArMDA6MDAiLCJlbmQiOiIxOTcwLTAxLTAxVDAwOjAwOjAwKzAwOjAwIn1d&api-version=2021-03-07&maxPageSize=5" + } + }, + "401": { + "body": { + "error": { + "code": "Unauthorized", + "message": "Request is not authorized." + } + } + }, + "403": { + "body": { + "error": { + "code": "Forbidden", + "message": "User is not allowed to perform specified action." + } + } + }, + "429": { + "body": { + "error": { + "code": "TooManyRequests", + "message": "Rate limit exceeded." + } + } + }, + "503": { + "body": { + "error": { + "code": "ServiceUnavailable", + "message": "The server is currently unable to handle the request." + } + } + } + } +} diff --git a/specification/communication/data-plane/Chat/stable/2021-03-07/examples/Threads_UpdateChatThreadTopic.json b/specification/communication/data-plane/Chat/stable/2021-03-07/examples/Threads_UpdateChatThreadTopic.json new file mode 100644 index 000000000000..3f184ec3f16f --- /dev/null +++ b/specification/communication/data-plane/Chat/stable/2021-03-07/examples/Threads_UpdateChatThreadTopic.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "endpoint": "https://contoso.westus.communications.azure.com", + "content-type": "application/merge-patch+json", + "api-version": "2021-03-07", + "chatThreadId": "19:uni01_zbnh3nt2dfuffezc3sox7dog7wfhk6y5qe2rwlnfhlhdzirihdpq@thread.v2", + "updateChatThreadRequest": { + "topic": "Updated Thread Topic" + } + }, + "responses": { + "204": {}, + "401": { + "body": { + "error": { + "code": "Unauthorized", + "message": "Request is not authorized." + } + } + }, + "403": { + "body": { + "error": { + "code": "Forbidden", + "message": "User is not allowed to perform specified action." + } + } + }, + "429": { + "body": { + "error": { + "code": "TooManyRequests", + "message": "Rate limit exceeded." + } + } + }, + "503": { + "body": { + "error": { + "code": "ServiceUnavailable", + "message": "The server is currently unable to handle the request." + } + } + } + } +} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesCommon/preview/2020-11-19-preview1/common.json b/specification/communication/data-plane/Common/preview/2020-11-19-preview1/common.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesCommon/preview/2020-11-19-preview1/common.json rename to specification/communication/data-plane/Common/preview/2020-11-19-preview1/common.json diff --git a/specification/communication/data-plane/Common/readme.csharp.md b/specification/communication/data-plane/Common/readme.csharp.md new file mode 100644 index 000000000000..2efd3715cdc3 --- /dev/null +++ b/specification/communication/data-plane/Common/readme.csharp.md @@ -0,0 +1,15 @@ +## C + +These settings apply only when `--csharp` is specified on the command line. +Please also specify `--csharp-sdks-folder=`. + +```yaml $(csharp) +csharp: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 1 + clear-output-folder: true + client-side-validation: false + namespace: Microsoft.CommunicationServices + output-folder: $(csharp-sdks-folder)/communicationservices/management/Microsoft.CommunicationServices/GeneratedProtocol +``` diff --git a/specification/communication/data-plane/Common/readme.md b/specification/communication/data-plane/Common/readme.md new file mode 100644 index 000000000000..1acbf9c0e495 --- /dev/null +++ b/specification/communication/data-plane/Common/readme.md @@ -0,0 +1,73 @@ +# communicationservices + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for communicationservices. + +## Getting Started + +To build the SDKs for My API, simply install AutoRest via `npm` (`npm install -g autorest`) and then run: + +> `autorest readme.md` + +To see additional help and options, run: + +> `autorest --help` + +For other options on installation see [Installing AutoRest](https://aka.ms/autorest/install) on the AutoRest github page. + +--- + +## Configuration + +### Basic Information + +These are the global settings for the communicationservices. + +```yaml +openapi-type: data-plane +tag: package-2020-07-20-preview1 +``` + + +### Tag: package-common-2020-11-19-preview1 + +These settings apply only when `--tag=package-common-2020-11-19-preview1` is specified on the command line. + +```yaml $(tag) == 'package-common-2020-11-19-preview1' +input-file: + - preview/2020-11-19-preview1/common.json +``` + +### Tag: package-2021-03-07-stable +These settings apply only when `--tag=package-2021-03-07-stable` is specified on the command line. + +```yaml $(tag) == 'package-2020-11-19-preview1' +input-file: + - stable/2021-03-07/common.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. + +## Python + +See configuration in [readme.python.md](./readme.python.md) + +## Ruby + +See configuration in [readme.ruby.md](./readme.ruby.md) + +## TypeScript + +See configuration in [readme.typescript.md](./readme.typescript.md) + +## CSharp + +See configuration in [readme.csharp.md](./readme.csharp.md) diff --git a/specification/communication/data-plane/Common/readme.python.md b/specification/communication/data-plane/Common/readme.python.md new file mode 100644 index 000000000000..f7f55ff2159b --- /dev/null +++ b/specification/communication/data-plane/Common/readme.python.md @@ -0,0 +1,21 @@ +## Python + +These settings apply only when `--python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +```yaml $(python) +python: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 2 + namespace: Microsoft.CommunicationServices + package-name: communicationservices + package-version: 2020-04-16-privatepreview + clear-output-folder: true +``` + +```yaml $(python) +python: + no-namespace-folders: true + output-folder: $(python-sdks-folder)/azure-mgmt/communicationservices +``` diff --git a/specification/communication/data-plane/Common/readme.ruby.md b/specification/communication/data-plane/Common/readme.ruby.md new file mode 100644 index 000000000000..f521ab44dbf5 --- /dev/null +++ b/specification/communication/data-plane/Common/readme.ruby.md @@ -0,0 +1,19 @@ +## Ruby + +These settings apply only when `--ruby` is specified on the command line. + +```yaml +package-name: azure_mgmt_communicationservices +package-version: 2020-04-16-privatepreview +azure-arm: true +``` + +### Tag: package-2020-04-16-privatepreview and ruby + +These settings apply only when `--tag=package-2020-04-16-privatepreview --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +```yaml $(tag) == 'package-2020-04-16-privatepreview' && $(ruby) +namespace: Microsoft.CommunicationServices +output-folder: $(ruby-sdks-folder)/communicationservices +``` diff --git a/specification/communication/data-plane/Common/readme.typescript.md b/specification/communication/data-plane/Common/readme.typescript.md new file mode 100644 index 000000000000..be9f877fd1c2 --- /dev/null +++ b/specification/communication/data-plane/Common/readme.typescript.md @@ -0,0 +1,13 @@ +## TypeScript + +These settings apply only when `--typescript` is specified on the command line. +Please also specify `--typescript-sdks-folder=`. + +```yaml $(typescript) +typescript: + azure-arm: true + package-name: "communicationservices" + output-folder: "$(typescript-sdks-folder)/packages/communicationservices" + payload-flattening-threshold: 1 + generate-metadata: true +``` diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesCommon/stable/2021-03-07/common.json b/specification/communication/data-plane/Common/stable/2021-03-07/common.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesCommon/stable/2021-03-07/common.json rename to specification/communication/data-plane/Common/stable/2021-03-07/common.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesIdentity/preview/2020-07-20-preview2/CommunicationIdentity.json b/specification/communication/data-plane/Identity/preview/2020-07-20-preview2/CommunicationIdentity.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesIdentity/preview/2020-07-20-preview2/CommunicationIdentity.json rename to specification/communication/data-plane/Identity/preview/2020-07-20-preview2/CommunicationIdentity.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesIdentity/preview/2020-07-20-preview2/examples/CreateIdentity.json b/specification/communication/data-plane/Identity/preview/2020-07-20-preview2/examples/CreateIdentity.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesIdentity/preview/2020-07-20-preview2/examples/CreateIdentity.json rename to specification/communication/data-plane/Identity/preview/2020-07-20-preview2/examples/CreateIdentity.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesIdentity/preview/2020-07-20-preview2/examples/DeleteIdentity.json b/specification/communication/data-plane/Identity/preview/2020-07-20-preview2/examples/DeleteIdentity.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesIdentity/preview/2020-07-20-preview2/examples/DeleteIdentity.json rename to specification/communication/data-plane/Identity/preview/2020-07-20-preview2/examples/DeleteIdentity.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesIdentity/preview/2020-07-20-preview2/examples/IssueToken.json b/specification/communication/data-plane/Identity/preview/2020-07-20-preview2/examples/IssueToken.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesIdentity/preview/2020-07-20-preview2/examples/IssueToken.json rename to specification/communication/data-plane/Identity/preview/2020-07-20-preview2/examples/IssueToken.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesIdentity/preview/2020-07-20-preview2/examples/UpdateIdentity.json b/specification/communication/data-plane/Identity/preview/2020-07-20-preview2/examples/UpdateIdentity.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesIdentity/preview/2020-07-20-preview2/examples/UpdateIdentity.json rename to specification/communication/data-plane/Identity/preview/2020-07-20-preview2/examples/UpdateIdentity.json diff --git a/specification/communication/data-plane/Identity/preview/2021-02-22-preview1/CommunicationIdentity.json b/specification/communication/data-plane/Identity/preview/2021-02-22-preview1/CommunicationIdentity.json new file mode 100644 index 000000000000..d74310e9d361 --- /dev/null +++ b/specification/communication/data-plane/Identity/preview/2021-02-22-preview1/CommunicationIdentity.json @@ -0,0 +1,313 @@ +{ + "swagger": "2.0", + "info": { + "title": "CommunicationIdentityClient", + "description": "Azure Communication Identity Service", + "version": "2021-02-22-preview1" + }, + "paths": { + "/identities": { + "post": { + "tags": [ + "Identity" + ], + "summary": "Create a new identity.", + "operationId": "CommunicationIdentity_Create", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "body", + "schema": { + "$ref": "#/definitions/CommunicationIdentityCreateRequest" + } + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../Common/stable/2021-03-07/common.json#/definitions/CommunicationErrorResponse" + } + }, + "201": { + "description": "Created - Returns the created identity.", + "schema": { + "$ref": "#/definitions/CommunicationIdentityAccessTokenResult" + } + } + }, + "x-ms-examples": { + "Create an Identity": { + "$ref": "./examples/CreateIdentity.json" + } + } + } + }, + "/identities/{id}": { + "delete": { + "tags": [ + "Identity" + ], + "summary": "Delete the identity, revoke all tokens for the identity and delete all associated data.", + "operationId": "CommunicationIdentity_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "id", + "description": "Identifier of the identity to be deleted.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../Common/stable/2021-03-07/common.json#/definitions/CommunicationErrorResponse" + } + }, + "204": { + "description": "Success" + } + }, + "x-ms-examples": { + "Delete an identity": { + "$ref": "./examples/DeleteIdentity.json" + } + } + } + }, + "/identities/{id}/:revokeAccessTokens": { + "post": { + "tags": [ + "Identity" + ], + "summary": "Revoke all access tokens for the specific identity.", + "operationId": "CommunicationIdentity_RevokeAccessTokens", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "id", + "description": "Identifier of the identity.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../Common/stable/2021-03-07/common.json#/definitions/CommunicationErrorResponse" + } + }, + "204": { + "description": "Success" + } + }, + "x-ms-examples": { + "Revoke access tokens": { + "$ref": "./examples/RevokeAccessTokens.json" + } + } + } + }, + "/identities/{id}/:issueAccessToken": { + "post": { + "tags": [ + "Token" + ], + "summary": "Issue a new token for an identity.", + "operationId": "CommunicationIdentity_IssueAccessToken", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "id", + "description": "Identifier of the identity to issue token for.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "body", + "description": "Requesting scopes for the new token.", + "required": true, + "schema": { + "$ref": "#/definitions/CommunicationIdentityAccessTokenRequest" + } + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../Common/stable/2021-03-07/common.json#/definitions/CommunicationErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/CommunicationIdentityAccessToken" + } + } + }, + "x-ms-examples": { + "Issue an access token": { + "$ref": "./examples/IssueAccessToken.json" + } + } + } + } + }, + "definitions": { + "CommunicationIdentityTokenScope": { + "description": "List of scopes for an access token.", + "enum": [ + "chat", + "voip" + ], + "type": "string", + "x-ms-enum": { + "name": "CommunicationIdentityTokenScope", + "modelAsString": true + } + }, + "CommunicationIdentityCreateRequest": { + "type": "object", + "properties": { + "createTokenWithScopes": { + "description": "Also create access token for the created identity.", + "type": "array", + "items": { + "$ref": "#/definitions/CommunicationIdentityTokenScope" + } + } + } + }, + "CommunicationIdentity": { + "description": "A communication identity.", + "required": [ + "id" + ], + "type": "object", + "properties": { + "id": { + "description": "Identifier of the identity.", + "type": "string" + } + } + }, + "CommunicationIdentityAccessToken": { + "description": "An access token.", + "required": [ + "expiresOn", + "token" + ], + "type": "object", + "properties": { + "token": { + "description": "The access token issued for the identity.", + "type": "string" + }, + "expiresOn": { + "format": "date-time", + "description": "The expiry time of the token.", + "type": "string" + } + } + }, + "CommunicationIdentityAccessTokenResult": { + "description": "A communication identity with access token.", + "required": [ + "identity" + ], + "type": "object", + "properties": { + "identity": { + "$ref": "#/definitions/CommunicationIdentity" + }, + "accessToken": { + "$ref": "#/definitions/CommunicationIdentityAccessToken" + } + } + }, + "CommunicationIdentityAccessTokenRequest": { + "required": [ + "scopes" + ], + "type": "object", + "properties": { + "scopes": { + "description": "List of scopes attached to the token.", + "type": "array", + "items": { + "$ref": "#/definitions/CommunicationIdentityTokenScope" + } + } + } + } + }, + "parameters": { + "ApiVersionParameter": { + "in": "query", + "name": "api-version", + "description": "Version of API to invoke.", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "x-ms-parameterized-host": { + "hostTemplate": "{endpoint}", + "useSchemePrefix": false, + "parameters": [ + { + "name": "endpoint", + "description": "The communication resource, for example https://my-resource.communication.azure.com", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true, + "x-ms-parameter-location": "client" + } + ] + } +} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesIdentity/preview/2021-02-22-preview1/examples/CreateIdentity.json b/specification/communication/data-plane/Identity/preview/2021-02-22-preview1/examples/CreateIdentity.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesIdentity/preview/2021-02-22-preview1/examples/CreateIdentity.json rename to specification/communication/data-plane/Identity/preview/2021-02-22-preview1/examples/CreateIdentity.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesIdentity/preview/2021-02-22-preview1/examples/DeleteIdentity.json b/specification/communication/data-plane/Identity/preview/2021-02-22-preview1/examples/DeleteIdentity.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesIdentity/preview/2021-02-22-preview1/examples/DeleteIdentity.json rename to specification/communication/data-plane/Identity/preview/2021-02-22-preview1/examples/DeleteIdentity.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesIdentity/preview/2021-02-22-preview1/examples/IssueAccessToken.json b/specification/communication/data-plane/Identity/preview/2021-02-22-preview1/examples/IssueAccessToken.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesIdentity/preview/2021-02-22-preview1/examples/IssueAccessToken.json rename to specification/communication/data-plane/Identity/preview/2021-02-22-preview1/examples/IssueAccessToken.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesIdentity/preview/2021-02-22-preview1/examples/RevokeAccessTokens.json b/specification/communication/data-plane/Identity/preview/2021-02-22-preview1/examples/RevokeAccessTokens.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesIdentity/preview/2021-02-22-preview1/examples/RevokeAccessTokens.json rename to specification/communication/data-plane/Identity/preview/2021-02-22-preview1/examples/RevokeAccessTokens.json diff --git a/specification/communication/data-plane/Identity/preview/2021-03-31-preview1/CommunicationIdentity.json b/specification/communication/data-plane/Identity/preview/2021-03-31-preview1/CommunicationIdentity.json new file mode 100644 index 000000000000..733c00773e78 --- /dev/null +++ b/specification/communication/data-plane/Identity/preview/2021-03-31-preview1/CommunicationIdentity.json @@ -0,0 +1,372 @@ +{ + "swagger": "2.0", + "info": { + "title": "CommunicationIdentityClient", + "description": "Azure Communication Identity Service", + "version": "2021-03-31-preview1" + }, + "paths": { + "/identities": { + "post": { + "tags": [ + "Identity" + ], + "summary": "Create a new identity.", + "operationId": "CommunicationIdentity_Create", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "body", + "schema": { + "$ref": "#/definitions/CommunicationIdentityCreateRequest" + } + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../Common/stable/2021-03-07/common.json#/definitions/CommunicationErrorResponse" + } + }, + "201": { + "description": "Created - Returns the created identity.", + "schema": { + "$ref": "#/definitions/CommunicationIdentityAccessTokenResult" + } + } + }, + "x-ms-examples": { + "Create an Identity": { + "$ref": "./examples/CreateIdentity.json" + } + } + } + }, + "/identities/{id}": { + "delete": { + "tags": [ + "Identity" + ], + "summary": "Delete the identity, revoke all tokens for the identity and delete all associated data.", + "operationId": "CommunicationIdentity_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "id", + "description": "Identifier of the identity to be deleted.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../Common/stable/2021-03-07/common.json#/definitions/CommunicationErrorResponse" + } + }, + "204": { + "description": "Success" + } + }, + "x-ms-examples": { + "Delete an identity": { + "$ref": "./examples/DeleteIdentity.json" + } + } + } + }, + "/identities/{id}/:revokeAccessTokens": { + "post": { + "tags": [ + "Identity" + ], + "summary": "Revoke all access tokens for the specific identity.", + "operationId": "CommunicationIdentity_RevokeAccessTokens", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "id", + "description": "Identifier of the identity.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../Common/stable/2021-03-07/common.json#/definitions/CommunicationErrorResponse" + } + }, + "204": { + "description": "Success" + } + }, + "x-ms-examples": { + "Revoke access tokens": { + "$ref": "./examples/RevokeAccessTokens.json" + } + } + } + }, + "/teamsUser/:exchangeAccessToken": { + "post": { + "tags": [ + "TeamsUser" + ], + "summary": "Exchange an AAD access token of a Teams user for a new ACS access token.", + "operationId": "CommunicationIdentity_ExchangeTeamsUserAccessToken", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TeamsUserAccessTokenRequest" + } + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../Common/stable/2021-03-07/common.json#/definitions/CommunicationErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/CommunicationIdentityAccessToken" + } + } + }, + "x-ms-examples": { + "Exchange a Teams user access token": { + "$ref": "./examples/ExchangeTeamsUserAccessToken.json" + } + } + } + }, + "/identities/{id}/:issueAccessToken": { + "post": { + "tags": [ + "Token" + ], + "summary": "Issue a new token for an identity.", + "operationId": "CommunicationIdentity_IssueAccessToken", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "id", + "description": "Identifier of the identity to issue token for.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "body", + "description": "Requesting scopes for the new token.", + "required": true, + "schema": { + "$ref": "#/definitions/CommunicationIdentityAccessTokenRequest" + } + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../Common/stable/2021-03-07/common.json#/definitions/CommunicationErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/CommunicationIdentityAccessToken" + } + } + }, + "x-ms-examples": { + "Issue an access token": { + "$ref": "./examples/IssueAccessToken.json" + } + } + } + } + }, + "definitions": { + "CommunicationIdentityTokenScope": { + "description": "List of scopes for an access token.", + "enum": [ + "chat", + "voip" + ], + "type": "string", + "x-ms-enum": { + "name": "CommunicationIdentityTokenScope", + "modelAsString": true + } + }, + "CommunicationIdentityCreateRequest": { + "type": "object", + "properties": { + "createTokenWithScopes": { + "description": "Also create access token for the created identity.", + "type": "array", + "items": { + "$ref": "#/definitions/CommunicationIdentityTokenScope" + } + } + } + }, + "CommunicationIdentity": { + "description": "A communication identity.", + "required": [ + "id" + ], + "type": "object", + "properties": { + "id": { + "description": "Identifier of the identity.", + "type": "string" + } + } + }, + "CommunicationIdentityAccessToken": { + "description": "An access token.", + "required": [ + "expiresOn", + "token" + ], + "type": "object", + "properties": { + "token": { + "description": "The access token issued for the identity.", + "type": "string" + }, + "expiresOn": { + "format": "date-time", + "description": "The expiry time of the token.", + "type": "string" + } + } + }, + "CommunicationIdentityAccessTokenResult": { + "description": "A communication identity with access token.", + "required": [ + "identity" + ], + "type": "object", + "properties": { + "identity": { + "$ref": "#/definitions/CommunicationIdentity" + }, + "accessToken": { + "$ref": "#/definitions/CommunicationIdentityAccessToken" + } + } + }, + "TeamsUserAccessTokenRequest": { + "required": [ + "token" + ], + "type": "object", + "properties": { + "token": { + "description": "Azure Active Directory access token to acquire a new ACS access token.", + "type": "string" + } + } + }, + "CommunicationIdentityAccessTokenRequest": { + "required": [ + "scopes" + ], + "type": "object", + "properties": { + "scopes": { + "description": "List of scopes attached to the token.", + "type": "array", + "items": { + "$ref": "#/definitions/CommunicationIdentityTokenScope" + } + } + } + } + }, + "parameters": { + "ApiVersionParameter": { + "in": "query", + "name": "api-version", + "description": "Version of API to invoke.", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "x-ms-parameterized-host": { + "hostTemplate": "{endpoint}", + "useSchemePrefix": false, + "parameters": [ + { + "name": "endpoint", + "description": "The communication resource, for example https://my-resource.communication.azure.com", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true, + "x-ms-parameter-location": "client" + } + ] + } +} diff --git a/specification/communication/data-plane/Identity/preview/2021-03-31-preview1/examples/CreateIdentity.json b/specification/communication/data-plane/Identity/preview/2021-03-31-preview1/examples/CreateIdentity.json new file mode 100644 index 000000000000..fd3b8f812f0d --- /dev/null +++ b/specification/communication/data-plane/Identity/preview/2021-03-31-preview1/examples/CreateIdentity.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2021-03-31-preview1", + "content-type": "application/json", + "endpoint": "https://my-resource.communication.azure.com", + "body": { + "createTokenWithScopes": [ + "chat" + ] + } + }, + "responses": { + "201": { + "body": { + "identity": { + "id": "8:acs:2dee53b4-368b-45b4-ab52-8493fb117652_00000005-14a2-493b-8a72-5a3a0d000081" + }, + "accessToken": { + "token": "token", + "expiresOn": "2020-09-10T21:39:39.3244584+00:00" + } + } + } + } +} diff --git a/specification/communication/data-plane/Identity/preview/2021-03-31-preview1/examples/DeleteIdentity.json b/specification/communication/data-plane/Identity/preview/2021-03-31-preview1/examples/DeleteIdentity.json new file mode 100644 index 000000000000..2ba1552f0ae2 --- /dev/null +++ b/specification/communication/data-plane/Identity/preview/2021-03-31-preview1/examples/DeleteIdentity.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "api-version": "2021-03-31-preview1", + "content-type": "application/json", + "id": "8:acs:2dee53b4-368b-45b4-ab52-8493fb117652_00000005-14a2-493b-8a72-5a3a0d000081", + "endpoint": "https://my-resource.communication.azure.com" + }, + "responses": { + "204": {} + } +} diff --git a/specification/communication/data-plane/Identity/preview/2021-03-31-preview1/examples/ExchangeTeamsUserAccessToken.json b/specification/communication/data-plane/Identity/preview/2021-03-31-preview1/examples/ExchangeTeamsUserAccessToken.json new file mode 100644 index 000000000000..0113f1fa21da --- /dev/null +++ b/specification/communication/data-plane/Identity/preview/2021-03-31-preview1/examples/ExchangeTeamsUserAccessToken.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2021-03-31-preview1", + "content-type": "application/json", + "body": { + "token": "AadAccessToken" + }, + "endpoint": "https://my-resource.communication.azure.com" + }, + "responses": { + "200": { + "body": { + "token": "M365AccessToken", + "expiresOn": "2021-09-10T21:39:39.3244584+00:00" + } + } + } +} diff --git a/specification/communication/data-plane/Identity/preview/2021-03-31-preview1/examples/IssueAccessToken.json b/specification/communication/data-plane/Identity/preview/2021-03-31-preview1/examples/IssueAccessToken.json new file mode 100644 index 000000000000..4e48b234be4a --- /dev/null +++ b/specification/communication/data-plane/Identity/preview/2021-03-31-preview1/examples/IssueAccessToken.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "api-version": "2021-03-31-preview1", + "content-type": "application/json", + "id": "8:acs:2dee53b4-368b-45b4-ab52-8493fb117652_00000005-14a2-493b-8a72-5a3a0d000081", + "body": { + "scopes": [ + "chat" + ] + }, + "endpoint": "https://my-resource.communication.azure.com" + }, + "responses": { + "200": { + "body": { + "token": "token", + "expiresOn": "2020-09-10T21:39:39.3244584+00:00" + } + } + } +} diff --git a/specification/communication/data-plane/Identity/preview/2021-03-31-preview1/examples/RevokeAccessTokens.json b/specification/communication/data-plane/Identity/preview/2021-03-31-preview1/examples/RevokeAccessTokens.json new file mode 100644 index 000000000000..2ba1552f0ae2 --- /dev/null +++ b/specification/communication/data-plane/Identity/preview/2021-03-31-preview1/examples/RevokeAccessTokens.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "api-version": "2021-03-31-preview1", + "content-type": "application/json", + "id": "8:acs:2dee53b4-368b-45b4-ab52-8493fb117652_00000005-14a2-493b-8a72-5a3a0d000081", + "endpoint": "https://my-resource.communication.azure.com" + }, + "responses": { + "204": {} + } +} diff --git a/specification/communication/data-plane/Identity/readme.csharp.md b/specification/communication/data-plane/Identity/readme.csharp.md new file mode 100644 index 000000000000..210c5e5fb22a --- /dev/null +++ b/specification/communication/data-plane/Identity/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: false + license-header: MICROSOFT_MIT_NO_VERSION + clear-output-folder: true + client-side-validation: false + namespace: Microsoft.CommunicationServices + output-folder: $(csharp-sdks-folder)/communicationservices/management/Microsoft.CommunicationServices/GeneratedProtocol +``` diff --git a/specification/communication/data-plane/Identity/readme.md b/specification/communication/data-plane/Identity/readme.md new file mode 100644 index 000000000000..753ada23c611 --- /dev/null +++ b/specification/communication/data-plane/Identity/readme.md @@ -0,0 +1,94 @@ +# communicationservices + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for communicationservices. + +## Getting Started + +To build the SDKs for My API, simply install AutoRest via `npm` (`npm install -g autorest`) and then run: + +> `autorest readme.md` + +To see additional help and options, run: + +> `autorest --help` + +For other options on installation see [Installing AutoRest](https://aka.ms/autorest/install) on the AutoRest github page. + +--- + +## Configuration + +### Basic Information + +These are the global settings for the communicationservices. + +```yaml +openapi-type: data-plane +tag: package-2020-07-20-preview1 +``` + + +### Tag: package-2020-07-20-preview2 + +These settings apply only when `--tag=package-2020-07-20-preview2` is specified on the command line. + +```yaml $(tag) == 'package-2020-07-20-preview2' +input-file: + - preview/2020-07-20-preview2/CommunicationIdentity.json +``` + +### Tag: package-2021-03-07 + +These settings apply only when `--tag=package-2021-03-07` is specified on the command line. + +```yaml $(tag) == 'package-2021-03-07' +input-file: + - stable/2021-03-07/CommunicationIdentity.json +title: + Azure Communication Services +``` + +### Tag: package-2021-02-22-preview1 + +These settings apply only when `--tag=package-2021-02-22-preview1` is specified on the command line. + +```yaml $(tag) == 'package-2021-02-22-preview1' +input-file: + - preview/2021-02-22-preview1/CommunicationIdentity.json +``` + +### Tag: package-2021-03-31-preview1 + +These settings apply only when `--tag=package-2021-03-31-preview1` is specified on the command line. + +```yaml $(tag) == 'package-2021-03-31-preview1' +input-file: + - preview/2021-03-31-preview1/CommunicationIdentity.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. + +## Python + +See configuration in [readme.python.md](./readme.python.md) + +## Ruby + +See configuration in [readme.ruby.md](./readme.ruby.md) + +## TypeScript + +See configuration in [readme.typescript.md](./readme.typescript.md) + +## CSharp + +See configuration in [readme.csharp.md](./readme.csharp.md) diff --git a/specification/communication/data-plane/Identity/readme.python.md b/specification/communication/data-plane/Identity/readme.python.md new file mode 100644 index 000000000000..f7f55ff2159b --- /dev/null +++ b/specification/communication/data-plane/Identity/readme.python.md @@ -0,0 +1,21 @@ +## Python + +These settings apply only when `--python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +```yaml $(python) +python: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 2 + namespace: Microsoft.CommunicationServices + package-name: communicationservices + package-version: 2020-04-16-privatepreview + clear-output-folder: true +``` + +```yaml $(python) +python: + no-namespace-folders: true + output-folder: $(python-sdks-folder)/azure-mgmt/communicationservices +``` diff --git a/specification/communication/data-plane/Identity/readme.ruby.md b/specification/communication/data-plane/Identity/readme.ruby.md new file mode 100644 index 000000000000..f521ab44dbf5 --- /dev/null +++ b/specification/communication/data-plane/Identity/readme.ruby.md @@ -0,0 +1,19 @@ +## Ruby + +These settings apply only when `--ruby` is specified on the command line. + +```yaml +package-name: azure_mgmt_communicationservices +package-version: 2020-04-16-privatepreview +azure-arm: true +``` + +### Tag: package-2020-04-16-privatepreview and ruby + +These settings apply only when `--tag=package-2020-04-16-privatepreview --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +```yaml $(tag) == 'package-2020-04-16-privatepreview' && $(ruby) +namespace: Microsoft.CommunicationServices +output-folder: $(ruby-sdks-folder)/communicationservices +``` diff --git a/specification/communication/data-plane/Identity/readme.typescript.md b/specification/communication/data-plane/Identity/readme.typescript.md new file mode 100644 index 000000000000..be9f877fd1c2 --- /dev/null +++ b/specification/communication/data-plane/Identity/readme.typescript.md @@ -0,0 +1,13 @@ +## TypeScript + +These settings apply only when `--typescript` is specified on the command line. +Please also specify `--typescript-sdks-folder=`. + +```yaml $(typescript) +typescript: + azure-arm: true + package-name: "communicationservices" + output-folder: "$(typescript-sdks-folder)/packages/communicationservices" + payload-flattening-threshold: 1 + generate-metadata: true +``` diff --git a/specification/communication/data-plane/Identity/stable/2021-03-07/CommunicationIdentity.json b/specification/communication/data-plane/Identity/stable/2021-03-07/CommunicationIdentity.json new file mode 100644 index 000000000000..f5fe62ef79e5 --- /dev/null +++ b/specification/communication/data-plane/Identity/stable/2021-03-07/CommunicationIdentity.json @@ -0,0 +1,313 @@ +{ + "swagger": "2.0", + "info": { + "title": "CommunicationIdentityClient", + "description": "Azure Communication Identity Service", + "version": "2021-03-07" + }, + "paths": { + "/identities": { + "post": { + "tags": [ + "Identity" + ], + "summary": "Create a new identity.", + "operationId": "CommunicationIdentity_Create", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "body", + "schema": { + "$ref": "#/definitions/CommunicationIdentityCreateRequest" + } + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../Common/stable/2021-03-07/common.json#/definitions/CommunicationErrorResponse" + } + }, + "201": { + "description": "Created - Returns the created identity.", + "schema": { + "$ref": "#/definitions/CommunicationIdentityAccessTokenResult" + } + } + }, + "x-ms-examples": { + "Create an Identity": { + "$ref": "./examples/CreateIdentity.json" + } + } + } + }, + "/identities/{id}": { + "delete": { + "tags": [ + "Identity" + ], + "summary": "Delete the identity, revoke all tokens for the identity and delete all associated data.", + "operationId": "CommunicationIdentity_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "id", + "description": "Identifier of the identity to be deleted.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../Common/stable/2021-03-07/common.json#/definitions/CommunicationErrorResponse" + } + }, + "204": { + "description": "Success" + } + }, + "x-ms-examples": { + "Delete an identity": { + "$ref": "./examples/DeleteIdentity.json" + } + } + } + }, + "/identities/{id}/:revokeAccessTokens": { + "post": { + "tags": [ + "Identity" + ], + "summary": "Revoke all access tokens for the specific identity.", + "operationId": "CommunicationIdentity_RevokeAccessTokens", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "id", + "description": "Identifier of the identity.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../Common/stable/2021-03-07/common.json#/definitions/CommunicationErrorResponse" + } + }, + "204": { + "description": "Success" + } + }, + "x-ms-examples": { + "Revoke access tokens": { + "$ref": "./examples/RevokeAccessTokens.json" + } + } + } + }, + "/identities/{id}/:issueAccessToken": { + "post": { + "tags": [ + "Token" + ], + "summary": "Issue a new token for an identity.", + "operationId": "CommunicationIdentity_IssueAccessToken", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "id", + "description": "Identifier of the identity to issue token for.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "body", + "description": "Requesting scopes for the new token.", + "required": true, + "schema": { + "$ref": "#/definitions/CommunicationIdentityAccessTokenRequest" + } + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../Common/stable/2021-03-07/common.json#/definitions/CommunicationErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/CommunicationIdentityAccessToken" + } + } + }, + "x-ms-examples": { + "Issue an access token": { + "$ref": "./examples/IssueAccessToken.json" + } + } + } + } + }, + "definitions": { + "CommunicationIdentityTokenScope": { + "description": "List of scopes for an access token.", + "enum": [ + "chat", + "voip" + ], + "type": "string", + "x-ms-enum": { + "name": "CommunicationIdentityTokenScope", + "modelAsString": true + } + }, + "CommunicationIdentityCreateRequest": { + "type": "object", + "properties": { + "createTokenWithScopes": { + "description": "Also create access token for the created identity.", + "type": "array", + "items": { + "$ref": "#/definitions/CommunicationIdentityTokenScope" + } + } + } + }, + "CommunicationIdentity": { + "description": "A communication identity.", + "required": [ + "id" + ], + "type": "object", + "properties": { + "id": { + "description": "Identifier of the identity.", + "type": "string" + } + } + }, + "CommunicationIdentityAccessToken": { + "description": "An access token.", + "required": [ + "expiresOn", + "token" + ], + "type": "object", + "properties": { + "token": { + "description": "The access token issued for the identity.", + "type": "string" + }, + "expiresOn": { + "format": "date-time", + "description": "The expiry time of the token.", + "type": "string" + } + } + }, + "CommunicationIdentityAccessTokenResult": { + "description": "A communication identity with access token.", + "required": [ + "identity" + ], + "type": "object", + "properties": { + "identity": { + "$ref": "#/definitions/CommunicationIdentity" + }, + "accessToken": { + "$ref": "#/definitions/CommunicationIdentityAccessToken" + } + } + }, + "CommunicationIdentityAccessTokenRequest": { + "required": [ + "scopes" + ], + "type": "object", + "properties": { + "scopes": { + "description": "List of scopes attached to the token.", + "type": "array", + "items": { + "$ref": "#/definitions/CommunicationIdentityTokenScope" + } + } + } + } + }, + "parameters": { + "ApiVersionParameter": { + "in": "query", + "name": "api-version", + "description": "Version of API to invoke.", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "x-ms-parameterized-host": { + "hostTemplate": "{endpoint}", + "useSchemePrefix": false, + "parameters": [ + { + "name": "endpoint", + "description": "The communication resource, for example https://my-resource.communication.azure.com", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true, + "x-ms-parameter-location": "client" + } + ] + } +} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesIdentity/stable/2021-03-07/examples/CreateIdentity.json b/specification/communication/data-plane/Identity/stable/2021-03-07/examples/CreateIdentity.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesIdentity/stable/2021-03-07/examples/CreateIdentity.json rename to specification/communication/data-plane/Identity/stable/2021-03-07/examples/CreateIdentity.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesIdentity/stable/2021-03-07/examples/DeleteIdentity.json b/specification/communication/data-plane/Identity/stable/2021-03-07/examples/DeleteIdentity.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesIdentity/stable/2021-03-07/examples/DeleteIdentity.json rename to specification/communication/data-plane/Identity/stable/2021-03-07/examples/DeleteIdentity.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesIdentity/stable/2021-03-07/examples/IssueAccessToken.json b/specification/communication/data-plane/Identity/stable/2021-03-07/examples/IssueAccessToken.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesIdentity/stable/2021-03-07/examples/IssueAccessToken.json rename to specification/communication/data-plane/Identity/stable/2021-03-07/examples/IssueAccessToken.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesIdentity/stable/2021-03-07/examples/RevokeAccessTokens.json b/specification/communication/data-plane/Identity/stable/2021-03-07/examples/RevokeAccessTokens.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesIdentity/stable/2021-03-07/examples/RevokeAccessTokens.json rename to specification/communication/data-plane/Identity/stable/2021-03-07/examples/RevokeAccessTokens.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/communicationservicesadministration.json b/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/communicationservicesadministration.json deleted file mode 100644 index 84d87cd2c9b0..000000000000 --- a/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/communicationservicesadministration.json +++ /dev/null @@ -1,2056 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "Phone Number Administration Service", - "description": "Phone Number Administration Service", - "contact": { - "email": "acsdevexdisc@microsoft.com" - }, - "version": "2020-07-20-preview1" - }, - "paths": { - "/administration/phonenumbers/phonenumbers": { - "get": { - "tags": [ - "AcquiredNumbers" - ], - "summary": "Gets the list of the acquired phone numbers.", - "operationId": "PhoneNumberAdministration_GetAllPhoneNumbers", - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "query", - "name": "locale", - "description": "A language-locale pairing which will be used to localize the names of countries", - "type": "string", - "default": "en-US" - }, - { - "in": "query", - "name": "skip", - "description": "An optional parameter for how many entries to skip, for pagination purposes.", - "type": "integer", - "format": "int32", - "default": 0 - }, - { - "in": "query", - "name": "take", - "description": "An optional parameter for how many entries to return, for pagination purposes.", - "type": "integer", - "format": "int32", - "default": 100 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/AcquiredPhoneNumbers" - } - }, - "default": { - "description": "Failure", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink", - "itemName": "phoneNumbers" - }, - "x-ms-examples": { - "List acquired phone numbers": { - "$ref": "./examples/GetAcquiredPhoneNumbersAsync.json" - } - } - } - }, - "/administration/phonenumbers/countries/{countryCode}/areacodes": { - "post": { - "tags": [ - "AreaCodes" - ], - "summary": "Gets a list of the supported area codes", - "operationId": "PhoneNumberAdministration_GetAllAreaCodes", - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "query", - "name": "locationType", - "description": "The type of location information required by the plan.", - "required": true, - "type": "string" - }, - { - "in": "path", - "name": "countryCode", - "description": "The ISO 3166-2 country code", - "required": true, - "type": "string" - }, - { - "in": "query", - "name": "phonePlanId", - "description": "The plan id from which to search area codes.", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "in": "body", - "name": "body", - "description": "Location options for when location type is selection.", - "schema": { - "$ref": "#/definitions/LocationOptionsQueries" - } - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/AreaCodes" - } - }, - "default": { - "description": "Failure", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "x-ms-examples": { - "Get area codes": { - "$ref": "./examples/GetAreaCodesAsync.json" - } - } - } - }, - "/administration/phonenumbers/capabilities/{capabilitiesUpdateId}": { - "get": { - "tags": [ - "Capabilities" - ], - "summary": "Get capabilities by capabilities update id.", - "operationId": "PhoneNumberAdministration_GetCapabilitiesUpdate", - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "capabilitiesUpdateId", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/UpdatePhoneNumberCapabilitiesResponse" - } - }, - "default": { - "description": "Failure", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "x-ms-examples": { - "Get number capabilities update": { - "$ref": "./examples/GetNumberCapabilitiesUpdateAsync.json" - } - } - } - }, - "/administration/phonenumbers/capabilities": { - "post": { - "tags": [ - "Capabilities" - ], - "summary": "Adds or removes phone number capabilities", - "operationId": "PhoneNumberAdministration_UpdateCapabilities", - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "in": "body", - "name": "body", - "description": "", - "schema": { - "$ref": "#/definitions/UpdateNumberCapabilitiesRequest" - } - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/UpdateNumberCapabilitiesResponse" - } - }, - "default": { - "description": "Failure", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "x-ms-examples": { - "Update number capabilities": { - "$ref": "./examples/UpdateNumberCapabilitiesAsync.json" - } - } - } - }, - "/administration/phonenumbers/countries": { - "get": { - "tags": [ - "Countries" - ], - "summary": "Gets a list of supported countries", - "operationId": "PhoneNumberAdministration_GetAllSupportedCountries", - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "query", - "name": "locale", - "description": "A language-locale pairing which will be used to localize the names of countries", - "type": "string", - "default": "en-US" - }, - { - "in": "query", - "name": "skip", - "description": "An optional parameter for how many entries to skip, for pagination purposes.", - "type": "integer", - "format": "int32", - "default": 0 - }, - { - "in": "query", - "name": "take", - "description": "An optional parameter for how many entries to return, for pagination purposes.", - "type": "integer", - "format": "int32", - "default": 100 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/PhoneNumberCountries" - } - }, - "default": { - "description": "Failure", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink", - "itemName": "countries" - }, - "x-ms-examples": { - "Get countries": { - "$ref": "./examples/GetCountriesAsync.json" - } - } - } - }, - "/administration/phonenumbers/numberconfiguration": { - "post": { - "tags": [ - "NumberConfiguration" - ], - "summary": "Endpoint for getting number configurations", - "operationId": "PhoneNumberAdministration_GetNumberConfiguration", - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "in": "body", - "name": "body", - "description": "The phone number whose configuration is to be fetched", - "schema": { - "$ref": "#/definitions/NumberConfigurationPhoneNumber" - } - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/NumberConfigurationResponse" - } - }, - "default": { - "description": "Failure", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "x-ms-examples": { - "Get number configuration for phone number": { - "$ref": "./examples/GetNumberConfigurationAsync.json" - } - } - } - }, - "/administration/phonenumbers/numberconfiguration/configure": { - "patch": { - "tags": [ - "NumberConfiguration" - ], - "summary": "Endpoint for configuring a pstn number", - "operationId": "PhoneNumberAdministration_ConfigureNumber", - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "in": "body", - "name": "body", - "description": "Details of pstn number configuration of the given phoneNumber", - "schema": { - "$ref": "#/definitions/NumberConfiguration" - } - } - ], - "responses": { - "200": { - "description": "Success" - }, - "default": { - "description": "Failure", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "x-ms-examples": { - "Configure phone number": { - "$ref": "./examples/ConfigurePhoneNumberAsync.json" - } - } - } - }, - "/administration/phonenumbers/numberconfiguration/unconfigure": { - "patch": { - "tags": [ - "NumberConfiguration" - ], - "summary": "Endpoint for unconfiguring a pstn number by removing the configuration", - "operationId": "PhoneNumberAdministration_UnconfigureNumber", - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "in": "body", - "name": "body", - "description": "The phone number to un-configure", - "schema": { - "$ref": "#/definitions/NumberConfigurationPhoneNumber" - } - } - ], - "responses": { - "200": { - "description": "Success" - }, - "default": { - "description": "Failure", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "x-ms-examples": { - "Unconfigure phone number": { - "$ref": "./examples/UnconfigurePhoneNumberAsync.json" - } - } - } - }, - "/administration/phonenumbers/countries/{countryCode}/phoneplangroups": { - "get": { - "tags": [ - "Plans" - ], - "summary": "Gets a list of phone plan groups for the given country", - "operationId": "PhoneNumberAdministration_GetPhonePlanGroups", - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "countryCode", - "description": "The ISO 3166-2 country code.", - "required": true, - "type": "string" - }, - { - "in": "query", - "name": "locale", - "description": "A language-locale pairing which will be used to localize the names of countries", - "type": "string", - "default": "en-US" - }, - { - "in": "query", - "name": "includeRateInformation", - "type": "boolean", - "default": false - }, - { - "in": "query", - "name": "skip", - "description": "An optional parameter for how many entries to skip, for pagination purposes.", - "type": "integer", - "format": "int32", - "default": 0 - }, - { - "in": "query", - "name": "take", - "description": "An optional parameter for how many entries to return, for pagination purposes.", - "type": "integer", - "format": "int32", - "default": 100 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/PhonePlanGroups" - } - }, - "default": { - "description": "Failure", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink", - "itemName": "phonePlanGroups" - }, - "x-ms-examples": { - "Get plans": { - "$ref": "./examples/GetPhonePlanGroupsAsync.json" - } - } - } - }, - "/administration/phonenumbers/countries/{countryCode}/phoneplangroups/{phonePlanGroupId}/phoneplans": { - "get": { - "tags": [ - "Plans" - ], - "summary": "Gets a list of phone plans for a phone plan group", - "operationId": "PhoneNumberAdministration_GetPhonePlans", - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "countryCode", - "description": "The ISO 3166-2 country code.", - "required": true, - "type": "string" - }, - { - "in": "path", - "name": "phonePlanGroupId", - "required": true, - "type": "string" - }, - { - "in": "query", - "name": "locale", - "description": "A language-locale pairing which will be used to localize the names of countries", - "type": "string", - "default": "en-US" - }, - { - "in": "query", - "name": "skip", - "description": "An optional parameter for how many entries to skip, for pagination purposes.", - "type": "integer", - "format": "int32", - "default": 0 - }, - { - "in": "query", - "name": "take", - "description": "An optional parameter for how many entries to return, for pagination purposes.", - "type": "integer", - "format": "int32", - "default": 100 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/PhonePlansResponse" - } - }, - "default": { - "description": "Failure", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink", - "itemName": "phonePlans" - }, - "x-ms-examples": { - "Get plans": { - "$ref": "./examples/GetPhonePlansAsync.json" - } - } - } - }, - "/administration/phonenumbers/countries/{countryCode}/phoneplangroups/{phonePlanGroupId}/phoneplans/{phonePlanId}/locationoptions": { - "get": { - "tags": [ - "Plans" - ], - "summary": "Gets a list of location options for a phone plan", - "operationId": "PhoneNumberAdministration_GetPhonePlanLocationOptions", - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "countryCode", - "description": "The ISO 3166-2 country code.", - "required": true, - "type": "string" - }, - { - "in": "path", - "name": "phonePlanGroupId", - "required": true, - "type": "string" - }, - { - "in": "path", - "name": "phonePlanId", - "required": true, - "type": "string" - }, - { - "in": "query", - "name": "locale", - "description": "A language-locale pairing which will be used to localize the names of countries", - "type": "string", - "default": "en-US" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/LocationOptionsResponse" - } - }, - "default": { - "description": "Failure", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "x-ms-examples": { - "Get plans": { - "$ref": "./examples/GetLocationOptionsAsync.json" - } - } - } - }, - "/administration/phonenumbers/releases/{releaseId}": { - "get": { - "tags": [ - "Release" - ], - "summary": "Gets a release by a release id", - "operationId": "PhoneNumberAdministration_GetReleaseById", - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "releaseId", - "description": "Represents the release id", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/PhoneNumberRelease" - } - }, - "default": { - "description": "Failure", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "x-ms-examples": { - "Get release by id": { - "$ref": "./examples/GetReleaseByIdAsync.json" - } - } - } - }, - "/administration/phonenumbers/releases": { - "post": { - "tags": [ - "Release" - ], - "summary": "Creates a release for the given phone numbers", - "operationId": "PhoneNumberAdministration_ReleasePhoneNumbers", - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "in": "body", - "name": "body", - "description": "Config api Release request", - "schema": { - "$ref": "#/definitions/ReleaseRequest" - } - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/ReleaseResponse" - } - }, - "default": { - "description": "Failure", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "x-ms-examples": { - "Get release": { - "$ref": "./examples/CreateReleaseAsync.json" - } - } - }, - "get": { - "tags": [ - "Release" - ], - "summary": "Gets a list of all releases", - "operationId": "PhoneNumberAdministration_GetAllReleases", - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "query", - "name": "skip", - "description": "An optional parameter for how many entries to skip, for pagination purposes.", - "type": "integer", - "format": "int32", - "default": 0 - }, - { - "in": "query", - "name": "take", - "description": "An optional parameter for how many entries to return, for pagination purposes.", - "type": "integer", - "format": "int32", - "default": 100 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/PhoneNumberEntities" - } - }, - "default": { - "description": "Failure", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink", - "itemName": "entities" - }, - "x-ms-examples": { - "Get all releases": { - "$ref": "./examples/GetAllReleasesAsync.json" - } - } - } - }, - "/administration/phonenumbers/searches/{searchId}": { - "get": { - "tags": [ - "Search" - ], - "summary": "Get search by search id", - "operationId": "PhoneNumberAdministration_GetSearchById", - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "searchId", - "description": "The search id to be searched for", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/PhoneNumberSearch" - } - }, - "default": { - "description": "Failure", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "x-ms-examples": { - "Get search by search id": { - "$ref": "./examples/GetSearchByIdAsync.json" - } - } - } - }, - "/administration/phonenumbers/searches": { - "post": { - "tags": [ - "Search" - ], - "summary": "Creates a phone number search", - "operationId": "PhoneNumberAdministration_CreateSearch", - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "in": "body", - "name": "body", - "description": "Defines the search options", - "schema": { - "$ref": "#/definitions/CreateSearchOptions" - } - } - ], - "responses": { - "201": { - "description": "Success", - "schema": { - "$ref": "#/definitions/CreateSearchResponse" - } - }, - "default": { - "description": "Failure", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "x-ms-examples": { - "Create search": { - "$ref": "./examples/CreateSearchAsync.json" - } - } - }, - "get": { - "tags": [ - "Search" - ], - "summary": "Gets a list of all searches", - "operationId": "PhoneNumberAdministration_GetAllSearches", - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "query", - "name": "skip", - "description": "An optional parameter for how many entries to skip, for pagination purposes.", - "type": "integer", - "format": "int32", - "default": 0 - }, - { - "in": "query", - "name": "take", - "description": "An optional parameter for how many entries to return, for pagination purposes.", - "type": "integer", - "format": "int32", - "default": 100 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/PhoneNumberEntities" - } - }, - "default": { - "description": "Failure", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink", - "itemName": "entities" - }, - "x-ms-examples": { - "Get all searches": { - "$ref": "./examples/GetAllSearchesAsync.json" - } - } - } - }, - "/administration/phonenumbers/searches/{searchId}/cancel": { - "post": { - "tags": [ - "Search" - ], - "summary": "Cancels the search. This means existing numbers in the search will be made available.", - "operationId": "PhoneNumberAdministration_CancelSearch", - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "searchId", - "description": "The search id to be canceled", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "202": { - "description": "Success" - }, - "default": { - "description": "Failure", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "x-ms-examples": { - "Cancel phone number search": { - "$ref": "./examples/CancelSearchAsync.json" - } - } - } - }, - "/administration/phonenumbers/searches/{searchId}/purchase": { - "post": { - "tags": [ - "Search" - ], - "summary": "Purchases the phone number search.", - "operationId": "PhoneNumberAdministration_PurchaseSearch", - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "searchId", - "description": "The search id to be purchased", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "202": { - "description": "Success" - }, - "default": { - "description": "Failure", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "x-ms-examples": { - "Purchase phone number search": { - "$ref": "./examples/PurchaseSearchAsync.json" - } - } - } - } - }, - "definitions": { - "AcquiredPhoneNumber": { - "description": "Represents an acquired phone number.", - "required": [ - "acquiredCapabilities", - "availableCapabilities", - "phoneNumber" - ], - "type": "object", - "properties": { - "phoneNumber": { - "description": "String of the E.164 format of the phone number", - "type": "string" - }, - "acquiredCapabilities": { - "description": "The set of all acquired capabilities of the phone number.", - "type": "array", - "items": { - "description": "Represents the capabilities of a phone number.", - "enum": [ - "UserAssignment", - "FirstPartyVoiceAppAssignment", - "ConferenceAssignment", - "P2PSmsEnabled", - "Geographic", - "NonGeographic", - "TollCalling", - "TollFreeCalling", - "Premium", - "P2PSmsCapable", - "A2PSmsCapable", - "A2PSmsEnabled", - "Calling", - "TollFree", - "FirstPartyAppAssignment", - "ThirdPartyAppAssignment", - "Azure", - "Office365", - "InboundCalling", - "OutboundCalling", - "InboundA2PSms", - "OutboundA2PSms", - "InboundP2PSms", - "OutboundP2PSms" - ], - "type": "string", - "x-ms-enum": { - "name": "Capability", - "modelAsString": true - } - } - }, - "availableCapabilities": { - "description": "The set of all available capabilities that can be acquired for this phone number.", - "type": "array", - "items": { - "description": "Represents the capabilities of a phone number.", - "enum": [ - "UserAssignment", - "FirstPartyVoiceAppAssignment", - "ConferenceAssignment", - "P2PSmsEnabled", - "Geographic", - "NonGeographic", - "TollCalling", - "TollFreeCalling", - "Premium", - "P2PSmsCapable", - "A2PSmsCapable", - "A2PSmsEnabled", - "Calling", - "TollFree", - "FirstPartyAppAssignment", - "ThirdPartyAppAssignment", - "Azure", - "Office365", - "InboundCalling", - "OutboundCalling", - "InboundA2PSms", - "OutboundA2PSms", - "InboundP2PSms", - "OutboundP2PSms" - ], - "type": "string", - "x-ms-enum": { - "name": "Capability", - "modelAsString": true - } - } - }, - "assignmentStatus": { - "description": "The assignment status of the phone number. Conveys what type of entity the number is assigned to.", - "enum": [ - "Unassigned", - "Unknown", - "UserAssigned", - "ConferenceAssigned", - "FirstPartyAppAssigned", - "ThirdPartyAppAssigned" - ], - "type": "string", - "x-ms-enum": { - "name": "AssignmentStatus", - "modelAsString": true - } - }, - "placeName": { - "description": "The name of the place of the phone number.", - "type": "string" - }, - "activationState": { - "description": "The activation state of the phone number. Can be \"Activated\", \"AssignmentPending\", \"AssignmentFailed\", \"UpdatePending\", \"UpdateFailed\"", - "enum": [ - "Activated", - "AssignmentPending", - "AssignmentFailed", - "UpdatePending", - "UpdateFailed" - ], - "type": "string", - "x-ms-enum": { - "name": "ActivationState", - "modelAsString": true - } - } - } - }, - "AcquiredPhoneNumbers": { - "description": "A wrapper of list of phone numbers", - "type": "object", - "properties": { - "phoneNumbers": { - "description": "Represents a list of phone numbers", - "type": "array", - "items": { - "$ref": "#/definitions/AcquiredPhoneNumber" - } - }, - "nextLink": { - "description": "Represents the URL link to the next page", - "type": "string" - } - } - }, - "ErrorBody": { - "description": "Represents a service error response body.", - "type": "object", - "properties": { - "code": { - "description": "The error code in the error response.", - "type": "string" - }, - "message": { - "description": "The error message in the error response.", - "type": "string" - } - } - }, - "ErrorResponse": { - "description": "Represents a service error response.", - "type": "object", - "properties": { - "error": { - "$ref": "#/definitions/ErrorBody" - } - } - }, - "LocationOptionsQuery": { - "description": "Represents a location options parameter, used for fetching area codes.", - "type": "object", - "properties": { - "labelId": { - "description": "Represents the location option label id, returned from the GetLocationOptions API.", - "type": "string" - }, - "optionsValue": { - "description": "Represents the location options value, returned from the GetLocationOptions API.", - "type": "string" - } - } - }, - "LocationOptionsQueries": { - "description": "Represents a list of location option queries, used for fetching area codes.", - "type": "object", - "properties": { - "locationOptions": { - "description": "Represents the underlying list of countries.", - "type": "array", - "items": { - "$ref": "#/definitions/LocationOptionsQuery" - } - } - } - }, - "AreaCodes": { - "description": "Represents a list of area codes.", - "type": "object", - "properties": { - "primaryAreaCodes": { - "description": "Represents the list of primary area codes.", - "type": "array", - "items": { - "type": "string" - } - }, - "secondaryAreaCodes": { - "description": "Represents the list of secondary area codes.", - "type": "array", - "items": { - "type": "string" - } - }, - "nextLink": { - "description": "Represents the URL link to the next page", - "type": "string" - } - } - }, - "NumberUpdateCapabilities": { - "description": "Represents an individual number capabilities update request", - "type": "object", - "properties": { - "add": { - "description": "Capabilities to be added to a phone number", - "type": "array", - "items": { - "description": "Represents the capabilities of a phone number.", - "enum": [ - "UserAssignment", - "FirstPartyVoiceAppAssignment", - "ConferenceAssignment", - "P2PSmsEnabled", - "Geographic", - "NonGeographic", - "TollCalling", - "TollFreeCalling", - "Premium", - "P2PSmsCapable", - "A2PSmsCapable", - "A2PSmsEnabled", - "Calling", - "TollFree", - "FirstPartyAppAssignment", - "ThirdPartyAppAssignment", - "Azure", - "Office365", - "InboundCalling", - "OutboundCalling", - "InboundA2PSms", - "OutboundA2PSms", - "InboundP2PSms", - "OutboundP2PSms" - ], - "type": "string", - "x-ms-enum": { - "name": "Capability", - "modelAsString": true - } - } - }, - "remove": { - "description": "Capabilities to be removed from a phone number", - "type": "array", - "items": { - "description": "Represents the capabilities of a phone number.", - "enum": [ - "UserAssignment", - "FirstPartyVoiceAppAssignment", - "ConferenceAssignment", - "P2PSmsEnabled", - "Geographic", - "NonGeographic", - "TollCalling", - "TollFreeCalling", - "Premium", - "P2PSmsCapable", - "A2PSmsCapable", - "A2PSmsEnabled", - "Calling", - "TollFree", - "FirstPartyAppAssignment", - "ThirdPartyAppAssignment", - "Azure", - "Office365", - "InboundCalling", - "OutboundCalling", - "InboundA2PSms", - "OutboundA2PSms", - "InboundP2PSms", - "OutboundP2PSms" - ], - "type": "string", - "x-ms-enum": { - "name": "Capability", - "modelAsString": true - } - } - } - } - }, - "UpdatePhoneNumberCapabilitiesResponse": { - "description": "Response for getting a phone number update capabilities.", - "type": "object", - "properties": { - "capabilitiesUpdateId": { - "description": "The id of the phone number capabilities update", - "type": "string" - }, - "createdAt": { - "format": "date-time", - "description": "The time the capabilities update was created", - "type": "string" - }, - "capabilitiesUpdateStatus": { - "description": "Status of the capabilities update.", - "enum": [ - "Pending", - "InProgress", - "Complete", - "Error" - ], - "type": "string", - "x-ms-enum": { - "name": "CapabilitiesUpdateStatus", - "modelAsString": true - } - }, - "phoneNumberCapabilitiesUpdates": { - "description": "The capabilities update for each of a set of phone numbers.", - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/NumberUpdateCapabilities" - } - } - } - }, - "UpdateNumberCapabilitiesRequest": { - "description": "Represents a numbers capabilities update request", - "required": [ - "phoneNumberCapabilitiesUpdate" - ], - "type": "object", - "properties": { - "phoneNumberCapabilitiesUpdate": { - "description": "The map of phone numbers to the capabilities update applied to the phone number.", - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/NumberUpdateCapabilities" - } - } - } - }, - "UpdateNumberCapabilitiesResponse": { - "description": "Represents a number capability update response.", - "required": [ - "capabilitiesUpdateId" - ], - "type": "object", - "properties": { - "capabilitiesUpdateId": { - "description": "The capabilities id", - "type": "string" - } - } - }, - "PhoneNumberCountry": { - "description": "Represents a country.", - "required": [ - "countryCode", - "localizedName" - ], - "type": "object", - "properties": { - "localizedName": { - "description": "Represents the name of the country.", - "type": "string" - }, - "countryCode": { - "description": "Represents the abbreviated name of the country.", - "type": "string" - } - } - }, - "PhoneNumberCountries": { - "description": "Represents a wrapper around a list of countries.", - "type": "object", - "properties": { - "countries": { - "description": "Represents the underlying list of countries.", - "type": "array", - "items": { - "$ref": "#/definitions/PhoneNumberCountry" - } - }, - "nextLink": { - "description": "Represents the URL link to the next page", - "type": "string" - } - } - }, - "NumberConfigurationPhoneNumber": { - "description": "The phone number wrapper representing a number configuration request", - "required": [ - "phoneNumber" - ], - "type": "object", - "properties": { - "phoneNumber": { - "description": "The phone number in the E.164 format", - "type": "string" - } - } - }, - "PstnConfiguration": { - "description": "Definition for pstn number configuration", - "required": [ - "callbackUrl" - ], - "type": "object", - "properties": { - "callbackUrl": { - "description": "The webhook URL on the phone number configuration.", - "type": "string" - }, - "applicationId": { - "description": "The application id of the application to which to configure", - "type": "string" - } - } - }, - "NumberConfigurationResponse": { - "description": "Definition for number configuration", - "required": [ - "pstnConfiguration" - ], - "type": "object", - "properties": { - "pstnConfiguration": { - "$ref": "#/definitions/PstnConfiguration" - } - } - }, - "NumberConfiguration": { - "description": "Definition for number configuration", - "required": [ - "phoneNumber", - "pstnConfiguration" - ], - "type": "object", - "properties": { - "pstnConfiguration": { - "$ref": "#/definitions/PstnConfiguration" - }, - "phoneNumber": { - "description": "The phone number to configure", - "type": "string" - } - } - }, - "CarrierDetails": { - "description": "Represents carrier details.", - "type": "object", - "properties": { - "name": { - "description": "Name of carrier details", - "type": "string" - }, - "localizedName": { - "description": "Display name of carrier details", - "type": "string" - } - } - }, - "RateInformation": { - "description": "Represents a wrapper of rate information", - "type": "object", - "properties": { - "monthlyRate": { - "format": "double", - "description": "The monthly rate of a phone plan group", - "type": "number" - }, - "currencyType": { - "description": "The currency of a phone plan group", - "enum": [ - "USD" - ], - "type": "string", - "x-ms-enum": { - "name": "CurrencyType", - "modelAsString": true - } - }, - "rateErrorMessage": { - "description": "The error code of a phone plan group", - "type": "string" - } - } - }, - "PhonePlanGroup": { - "description": "Represents a plan group.", - "required": [ - "localizedDescription", - "localizedName", - "phonePlanGroupId" - ], - "type": "object", - "properties": { - "phonePlanGroupId": { - "description": "The id of the plan group", - "type": "string" - }, - "phoneNumberType": { - "description": "The phone number type of the plan group", - "enum": [ - "Unknown", - "Geographic", - "TollFree", - "Indirect" - ], - "type": "string", - "x-ms-enum": { - "name": "PhoneNumberType", - "modelAsString": true - } - }, - "localizedName": { - "description": "The name of the plan group.", - "type": "string" - }, - "localizedDescription": { - "description": "The description of the plan group.", - "type": "string" - }, - "carrierDetails": { - "$ref": "#/definitions/CarrierDetails" - }, - "rateInformation": { - "$ref": "#/definitions/RateInformation" - } - } - }, - "PhonePlanGroups": { - "description": "Represents a wrapper of list of plan groups.", - "type": "object", - "properties": { - "phonePlanGroups": { - "description": "The underlying list of phone plan groups.", - "type": "array", - "items": { - "$ref": "#/definitions/PhonePlanGroup" - } - }, - "nextLink": { - "description": "Represents the URL link to the next page", - "type": "string" - } - } - }, - "PhonePlan": { - "description": "Represents a phone plan.", - "required": [ - "localizedName", - "locationType", - "phonePlanId" - ], - "type": "object", - "properties": { - "phonePlanId": { - "description": "The phone plan id", - "type": "string" - }, - "localizedName": { - "description": "The name of the phone plan", - "type": "string" - }, - "locationType": { - "description": "The location type of the phone plan.", - "enum": [ - "CivicAddress", - "NotRequired", - "Selection" - ], - "type": "string", - "x-ms-enum": { - "name": "LocationType", - "modelAsString": true - } - }, - "areaCodes": { - "description": "The list of available area codes in the phone plan.", - "type": "array", - "items": { - "type": "string" - } - }, - "capabilities": { - "description": "Capabilities of the phone plan.", - "type": "array", - "items": { - "description": "Represents the capabilities of a phone number.", - "enum": [ - "UserAssignment", - "FirstPartyVoiceAppAssignment", - "ConferenceAssignment", - "P2PSmsEnabled", - "Geographic", - "NonGeographic", - "TollCalling", - "TollFreeCalling", - "Premium", - "P2PSmsCapable", - "A2PSmsCapable", - "A2PSmsEnabled", - "Calling", - "TollFree", - "FirstPartyAppAssignment", - "ThirdPartyAppAssignment", - "Azure", - "Office365", - "InboundCalling", - "OutboundCalling", - "InboundA2PSms", - "OutboundA2PSms", - "InboundP2PSms", - "OutboundP2PSms" - ], - "type": "string", - "x-ms-enum": { - "name": "Capability", - "modelAsString": true - } - } - }, - "maximumSearchSize": { - "format": "int32", - "description": "The maximum number of phone numbers one can acquire in a search in this phone plan.", - "type": "integer" - } - } - }, - "PhonePlansResponse": { - "description": "Represents a wrapper around a list of countries.", - "type": "object", - "properties": { - "phonePlans": { - "description": "Represents the underlying list of phone plans.", - "type": "array", - "items": { - "$ref": "#/definitions/PhonePlan" - } - }, - "nextLink": { - "description": "Represents the URL link to the next page", - "type": "string" - } - } - }, - "LocationOptionsDetails": { - "description": "Represents location options details.", - "type": "object", - "properties": { - "name": { - "description": "The name of the location options", - "type": "string" - }, - "value": { - "description": "The abbreviated name of the location options", - "type": "string" - }, - "locationOptions": { - "description": "The underlying location options", - "type": "array", - "items": { - "$ref": "#/definitions/LocationOptions" - } - } - } - }, - "LocationOptions": { - "description": "Represents a location options.", - "type": "object", - "properties": { - "labelId": { - "description": "The label id of the location.", - "type": "string" - }, - "labelName": { - "description": "The display name of the location.", - "type": "string" - }, - "options": { - "description": "The underlying location option details.", - "type": "array", - "items": { - "$ref": "#/definitions/LocationOptionsDetails" - } - } - } - }, - "LocationOptionsResponse": { - "description": "Represents a wrapper around a list of location options.", - "type": "object", - "properties": { - "locationOptions": { - "$ref": "#/definitions/LocationOptions" - } - } - }, - "PhoneNumberReleaseDetails": { - "type": "object", - "properties": { - "status": { - "description": "The release status of a phone number.", - "enum": [ - "Pending", - "Success", - "Error", - "InProgress" - ], - "type": "string", - "x-ms-enum": { - "name": "PhoneNumberReleaseStatus", - "modelAsString": true - } - }, - "errorCode": { - "format": "int32", - "description": "The error code in the case the status is error.", - "type": "integer" - } - } - }, - "PhoneNumberRelease": { - "description": "Represents a release", - "type": "object", - "properties": { - "releaseId": { - "description": "The id of the release.", - "type": "string" - }, - "createdAt": { - "format": "date-time", - "description": "The creation time of the release.", - "type": "string" - }, - "status": { - "description": "The release status.", - "enum": [ - "Pending", - "InProgress", - "Complete", - "Failed", - "Expired" - ], - "type": "string", - "x-ms-enum": { - "name": "ReleaseStatus", - "modelAsString": true - } - }, - "errorMessage": { - "description": "The underlying error message of a release.", - "type": "string" - }, - "phoneNumberReleaseStatusDetails": { - "description": "The list of phone numbers in the release, mapped to its individual statuses.", - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/PhoneNumberReleaseDetails" - } - } - } - }, - "ReleaseRequest": { - "description": "Represents a release request.", - "required": [ - "phoneNumbers" - ], - "type": "object", - "properties": { - "phoneNumbers": { - "description": "The list of phone numbers in the release request.", - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "ReleaseResponse": { - "description": "Represents a release response.", - "required": [ - "releaseId" - ], - "type": "object", - "properties": { - "releaseId": { - "description": "The release id of a created release.", - "type": "string" - } - } - }, - "PhoneNumberEntity": { - "description": "Represents a phone number entity, as part of the response when calling get all searches or releases.", - "type": "object", - "properties": { - "id": { - "description": "The id of the entity. It is the search id of a search. It is the release id of a release.", - "type": "string" - }, - "createdAt": { - "format": "date-time", - "description": "Date and time the entity is created.", - "type": "string" - }, - "displayName": { - "description": "Name of the entity.", - "type": "string" - }, - "quantity": { - "format": "int32", - "description": "Quantity of requested phone numbers in the entity.", - "type": "integer" - }, - "quantityObtained": { - "format": "int32", - "description": "Quantity of acquired phone numbers in the entity.", - "type": "integer" - }, - "status": { - "description": "Status of the entity.", - "type": "string" - }, - "focDate": { - "format": "date-time", - "description": "The Firm Order Confirmation date of the phone number entity.", - "type": "string" - } - } - }, - "PhoneNumberEntities": { - "description": "Represents a list of searches or releases, as part of the response when fetching all searches or releases.", - "type": "object", - "properties": { - "entities": { - "description": "The underlying list of entities.", - "type": "array", - "items": { - "$ref": "#/definitions/PhoneNumberEntity" - } - }, - "nextLink": { - "description": "Represents the URL link to the next page", - "type": "string" - } - } - }, - "PhoneNumberSearch": { - "description": "Represents a phone number search", - "type": "object", - "properties": { - "searchId": { - "description": "The id of the search.", - "type": "string" - }, - "displayName": { - "description": "The name of the search.", - "type": "string" - }, - "createdAt": { - "format": "date-time", - "description": "The creation time of the search.", - "type": "string" - }, - "description": { - "description": "The description of the search.", - "type": "string" - }, - "phonePlanIds": { - "description": "The phone plan ids of the search.", - "type": "array", - "items": { - "type": "string" - } - }, - "areaCode": { - "description": "The area code of the search.", - "type": "string" - }, - "quantity": { - "format": "int32", - "description": "The quantity of phone numbers in the search.", - "type": "integer" - }, - "locationOptions": { - "description": "The location options of the search.", - "type": "array", - "items": { - "$ref": "#/definitions/LocationOptionsDetails" - } - }, - "status": { - "description": "The status of the search.", - "enum": [ - "Pending", - "InProgress", - "Reserved", - "Expired", - "Expiring", - "Completing", - "Refreshing", - "Success", - "Manual", - "Cancelled", - "Cancelling", - "Error", - "PurchasePending" - ], - "type": "string", - "x-ms-enum": { - "name": "SearchStatus", - "modelAsString": true - } - }, - "phoneNumbers": { - "description": "The list of phone numbers in the search, in the case the status is reserved or success.", - "type": "array", - "items": { - "type": "string" - } - }, - "reservationExpiryDate": { - "format": "date-time", - "description": "The date that search expires and the numbers become available.", - "type": "string" - }, - "errorCode": { - "format": "int32", - "description": "The error code of the search.", - "type": "integer" - } - } - }, - "CreateSearchOptions": { - "description": "Represents a search creation option.", - "required": [ - "areaCode", - "description", - "displayName", - "phonePlanIds" - ], - "type": "object", - "properties": { - "displayName": { - "description": "Display name of the search.", - "maxLength": 255, - "type": "string" - }, - "description": { - "description": "Description of the search.", - "maxLength": 255, - "type": "string" - }, - "phonePlanIds": { - "description": "The plan subtype ids from which to create the search.", - "type": "array", - "items": { - "type": "string" - } - }, - "areaCode": { - "description": "The area code from which to create the search.", - "type": "string" - }, - "quantity": { - "format": "int32", - "description": "The quantity of phone numbers to request.", - "maximum": 2147483647, - "minimum": 1, - "type": "integer" - }, - "locationOptions": { - "description": "The location options of the search.", - "type": "array", - "items": { - "$ref": "#/definitions/LocationOptionsDetails" - } - } - } - }, - "CreateSearchResponse": { - "description": "Represents a search creation response.", - "required": [ - "searchId" - ], - "type": "object", - "properties": { - "searchId": { - "description": "The search id of the search that was created.", - "type": "string" - } - } - } - }, - "parameters": { - "ApiVersionParameter": { - "in": "query", - "name": "api-version", - "description": "Version of API to invoke", - "required": true, - "type": "string" - }, - "Endpoint": { - "in": "path", - "name": "endpoint", - "description": "The endpoint of the Azure Communication resource.", - "required": true, - "type": "string", - "x-ms-skip-url-encoding": true, - "x-ms-parameter-location": "client" - } - }, - "securityDefinitions": { - "azure_auth": { - "type": "oauth2", - "flow": "implicit", - "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", - "scopes": { - "user_impersonation": "impersonate your user account" - }, - "description": "Azure Active Directory OAuth2 Flow" - } - }, - "x-ms-parameterized-host": { - "hostTemplate": "{endpoint}", - "useSchemePrefix": false, - "parameters": [ - { - "$ref": "#/parameters/Endpoint" - } - ] - } -} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/CancelSearchAsync.json b/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/CancelSearchAsync.json deleted file mode 100644 index 0d393b557bc5..000000000000 --- a/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/CancelSearchAsync.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "parameters": { - "api-version": "2020-07-20-preview1", - "endpoint": "https://resourcename.communications.azure.net/", - "searchId": "0cc077cd-333a-39fd-90f7-560b1e06c63e" - }, - "responses": { - "202": {} - } -} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/ConfigurePhoneNumberAsync.json b/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/ConfigurePhoneNumberAsync.json deleted file mode 100644 index d95a9053bddb..000000000000 --- a/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/ConfigurePhoneNumberAsync.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "parameters": { - "api-version": "2020-07-20-preview1", - "body": { - "phoneNumber": "+11234567890", - "pstnConfiguration": { - "callbackUrl": "www.callback.com", - "applicationId": "abc123" - } - }, - "endpoint": "https://resourcename.communications.azure.net/" - }, - "responses": { - "200": {} - } -} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/CreateReleaseAsync.json b/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/CreateReleaseAsync.json deleted file mode 100644 index b1c75ce1facd..000000000000 --- a/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/CreateReleaseAsync.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "parameters": { - "api-version": "2020-07-20-preview1", - "body": { - "phoneNumbers": [ - "+11234567890" - ] - }, - "endpoint": "https://resourcename.communications.azure.net/" - }, - "responses": { - "200": { - "headers": {}, - "body": { - "releaseId": "0cc077cd-333a-39fd-90f7-560b1e06c63e" - } - } - } -} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/CreateSearchAsync.json b/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/CreateSearchAsync.json deleted file mode 100644 index 2e253c17abc1..000000000000 --- a/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/CreateSearchAsync.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "parameters": { - "api-version": "2020-07-20-preview1", - "body": { - "displayName": "Name", - "description": "Search Description", - "phonePlanIds": [ - "0cc077cd-333a-39fd-90f7-560b1e06c63e" - ], - "areaCode": "425", - "quantity": 2, - "locationOptions": [ - { - "name": "state", - "value": "WA" - } - ] - }, - "endpoint": "https://resourcename.communications.azure.net/" - }, - "responses": { - "201": { - "headers": {}, - "body": { - "searchId": "0cc077cd-5337-7msf-964e-560b1e06c63e" - } - } - } -} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/GetAcquiredPhoneNumbersAsync.json b/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/GetAcquiredPhoneNumbersAsync.json deleted file mode 100644 index 3ad4280fe83a..000000000000 --- a/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/GetAcquiredPhoneNumbersAsync.json +++ /dev/null @@ -1,42 +0,0 @@ -{ - "parameters": { - "api-version": "2020-07-20-preview1", - "endpoint": "https://resourcename.communications.azure.net/", - "locale": "en-us" - }, - "responses": { - "200": { - "headers": {}, - "body": { - "phoneNumbers": [ - { - "phoneNumber": "+11234567890", - "acquiredCapabilities": [ - "FirstPartyAppAssignment" - ], - "availableCapabilities": [ - "FirstPartyAppAssignment", - "UserAssignment" - ], - "assignmentStatus": "Unassigned", - "placeName": "Toll-Free, United States", - "activationState": "Activated" - }, - { - "phoneNumber": "+18003456789", - "acquiredCapabilities": [ - "FirstPartyAppAssignment" - ], - "availableCapabilities": [ - "FirstPartyAppAssignment", - "UserAssignment" - ], - "assignmentStatus": "Unassigned", - "placeName": "Toll-Free, United States", - "activationState": "Activated" - } - ] - } - } - } -} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/GetAllReleasesAsync.json b/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/GetAllReleasesAsync.json deleted file mode 100644 index 29a8ddb4979e..000000000000 --- a/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/GetAllReleasesAsync.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "parameters": { - "api-version": "2020-07-20-preview1", - "endpoint": "https://resourcename.communications.azure.net/" - }, - "responses": { - "200": { - "headers": {}, - "body": { - "entities": [ - { - "id": "0cc077cd-333a-39fd-90f7-560b1e06c63e", - "displayName": "Numbers for Vancouver Office", - "createdAt": "2020-06-18T17:11:52.5005818+00:00", - "quantity": 1, - "quantityObtained": 1, - "status": "completed", - "focDate": "2020-06-18T17:11:52.5005818+00:00" - } - ] - } - } - } -} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/GetAllSearchesAsync.json b/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/GetAllSearchesAsync.json deleted file mode 100644 index 29a8ddb4979e..000000000000 --- a/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/GetAllSearchesAsync.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "parameters": { - "api-version": "2020-07-20-preview1", - "endpoint": "https://resourcename.communications.azure.net/" - }, - "responses": { - "200": { - "headers": {}, - "body": { - "entities": [ - { - "id": "0cc077cd-333a-39fd-90f7-560b1e06c63e", - "displayName": "Numbers for Vancouver Office", - "createdAt": "2020-06-18T17:11:52.5005818+00:00", - "quantity": 1, - "quantityObtained": 1, - "status": "completed", - "focDate": "2020-06-18T17:11:52.5005818+00:00" - } - ] - } - } - } -} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/GetAreaCodesAsync.json b/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/GetAreaCodesAsync.json deleted file mode 100644 index 1288173209cc..000000000000 --- a/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/GetAreaCodesAsync.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "parameters": { - "api-version": "2020-07-20-preview1", - "endpoint": "https://resourcename.communications.azure.net/", - "locationType": "Selection", - "countryCode": "CA", - "phonePlanId": "0cc077cd-333a-39fd-90f7-560b1e06c63e" - }, - "responses": { - "200": { - "headers": {}, - "body": { - "primaryAreaCodes": [ - "236", - "604", - "778" - ], - "secondaryAreaCodes": [] - } - } - } -} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/GetCountriesAsync.json b/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/GetCountriesAsync.json deleted file mode 100644 index fe4dbb0b999f..000000000000 --- a/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/GetCountriesAsync.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "parameters": { - "api-version": "2020-07-20-preview1", - "endpoint": "https://resourcename.communications.azure.net/", - "locale": "en-us" - }, - "responses": { - "200": { - "headers": {}, - "body": { - "countries": [ - { - "localizedName": "Australia", - "countryCode": "AU" - }, - { - "localizedName": "Japan", - "countryCode": "JP" - }, - { - "localizedName": "United States", - "countryCode": "US" - } - ] - } - } - } -} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/GetLocationOptionsAsync.json b/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/GetLocationOptionsAsync.json deleted file mode 100644 index b551fa840089..000000000000 --- a/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/GetLocationOptionsAsync.json +++ /dev/null @@ -1,66 +0,0 @@ -{ - "parameters": { - "api-version": "2020-07-20-preview1", - "countryCode": "US", - "endpoint": "https://resourcename.communications.azure.net/", - "phonePlanGroupId": "671ee064-662f-4c3b-82a9-af2ab200dd5c", - "phonePlanId": "27b53eec-8ff4-4070-8900-fbeaabfd158a" - }, - "responses": { - "200": { - "headers": {}, - "body": { - "locationOptions": { - "labelId": "state", - "labelName": "State", - "options": [ - { - "name": "AK", - "value": "AK", - "locationOptions": [ - { - "labelId": "city", - "labelName": "City", - "options": [ - { - "name": "Anchorage", - "value": "NOAM-US-AK-AN" - } - ] - } - ] - }, - { - "name": "AL", - "value": "AL", - "locationOptions": [ - { - "labelId": "city", - "labelName": "City", - "options": [ - { - "name": "Birmingham", - "value": "NOAM-US-AL-BI" - }, - { - "name": "Huntsville", - "value": "NOAM-US-AL-HN" - }, - { - "name": "Mobile", - "value": "NOAM-US-AL-MO" - }, - { - "name": "Montgomery", - "value": "NOAM-US-AL-MN" - } - ] - } - ] - } - ] - } - } - } - } -} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/GetNumberCapabilitiesUpdateAsync.json b/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/GetNumberCapabilitiesUpdateAsync.json deleted file mode 100644 index 11949cff84a3..000000000000 --- a/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/GetNumberCapabilitiesUpdateAsync.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "parameters": { - "api-version": "2020-07-20-preview1", - "endpoint": "https://resourcename.communications.azure.net/", - "capabilitiesUpdateId": "0cc077cd-333a-39fd-90f7-560b1e06c63e" - }, - "responses": { - "200": { - "headers": {}, - "body": { - "capabilitiesUpdateId": "0cc077cd-333a-39fd-90f7-560b1e06c63e", - "createdAt": "2020-06-18T17:11:52.5005818+00:00", - "capabilitiesUpdateStatus": "Complete", - "phoneNumberCapabilitiesUpdates": { - "12345878991": { - "add": [], - "remove": [ - "InboundA2PSms", - "OutboundA2PSms" - ] - } - } - } - } - } -} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/GetNumberConfigurationAsync.json b/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/GetNumberConfigurationAsync.json deleted file mode 100644 index 573d697b2934..000000000000 --- a/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/GetNumberConfigurationAsync.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "parameters": { - "api-version": "2020-07-20-preview1", - "body": { - "phoneNumber": "+11234567890" - }, - "endpoint": "https://resourcename.communications.azure.net/" - }, - "responses": { - "200": { - "headers": {}, - "body": { - "pstnConfiguration": { - "callbackUrl": "www.callback.com", - "applicationId": "abc123" - } - } - } - } -} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/GetPhonePlanGroupsAsync.json b/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/GetPhonePlanGroupsAsync.json deleted file mode 100644 index f418ffd2ff23..000000000000 --- a/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/GetPhonePlanGroupsAsync.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "parameters": { - "api-version": "2020-07-20-preview1", - "countryCode": "US", - "endpoint": "https://resourcename.communications.azure.net/", - "locale": "en-us" - }, - "responses": { - "200": { - "headers": {}, - "body": { - "phonePlanGroups": [ - { - "phonePlanGroupId": "671ee064-662f-4c3b-82a9-af2ab200dd5c", - "phoneNumberType": "Geographic", - "localizedName": "Geographic", - "localizedDescription": "These are Toll numbers", - "rateInformation": { - "monthlyRate": 2.0, - "currencyType": "USD" - } - }, - { - "phonePlanGroupId": "d47a0cdc-8dc1-4e82-a29b-39067f7fc317", - "phoneNumberType": "TollFree", - "localizedName": "TollFree", - "localizedDescription": "These are toll free numbers used by Azure resources.", - "rateInformation": { - "monthlyRate": 1.0, - "currencyType": "USD" - } - } - ] - } - } - } -} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/GetPhonePlansAsync.json b/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/GetPhonePlansAsync.json deleted file mode 100644 index 88ed446f84e8..000000000000 --- a/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/GetPhonePlansAsync.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "parameters": { - "api-version": "2020-07-20-preview1", - "countryCode": "US", - "endpoint": "https://resourcename.communications.azure.net/", - "phonePlanGroupId": "671ee064-662f-4c3b-82a9-af2ab200dd5c" - }, - "responses": { - "200": { - "headers": {}, - "body": { - "phonePlans": [ - { - "phonePlanId": "27b53eec-8ff4-4070-8900-fbeaabfd158a", - "localizedName": "Outbound Only PSTN - Geographic", - "locationType": "Selection", - "capabilities": [ - "Azure", - "OutboundCalling", - "ThirdPartyAppAssignment", - "Geographic" - ], - "maximumSearchSize": 100 - } - ] - } - } - } -} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/GetReleaseByIdAsync.json b/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/GetReleaseByIdAsync.json deleted file mode 100644 index 10813ab35c36..000000000000 --- a/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/GetReleaseByIdAsync.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "parameters": { - "api-version": "2020-07-20-preview1", - "endpoint": "https://resourcename.communications.azure.net/", - "releaseId": "0cc077cd-333a-39fd-90f7-560b1e06c63e" - }, - "responses": { - "200": { - "headers": {}, - "body": { - "releaseId": "0cc077cd-333a-39fd-90f7-560b1e06c63e" - } - } - } -} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/GetSearchByIdAsync.json b/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/GetSearchByIdAsync.json deleted file mode 100644 index a0e892008493..000000000000 --- a/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/GetSearchByIdAsync.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "parameters": { - "api-version": "2020-07-20-preview1", - "endpoint": "https://resourcename.communications.azure.net/", - "searchId": "0cc077cd-333a-39fd-90f7-560b1e06c63e" - }, - "responses": { - "200": { - "headers": {}, - "body": { - "searchId": "0cc077cd-333a-39fd-90f7-560b1e06c63e", - "displayName": "Numbers for Vancouver Office", - "createdAt": "2020-06-18T17:11:52.5005818+00:00", - "description": "Get some new numbers for our office in Vancouver", - "phonePlanIds": [ - "0cc077cd-333a-39fd-90f7-560b1e06c63e" - ], - "areaCode": "604", - "quantity": 1, - "locationOptions": [], - "status": "completed", - "phoneNumbers": [] - } - } - } -} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/PurchaseSearchAsync.json b/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/PurchaseSearchAsync.json deleted file mode 100644 index 0d393b557bc5..000000000000 --- a/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/PurchaseSearchAsync.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "parameters": { - "api-version": "2020-07-20-preview1", - "endpoint": "https://resourcename.communications.azure.net/", - "searchId": "0cc077cd-333a-39fd-90f7-560b1e06c63e" - }, - "responses": { - "202": {} - } -} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/UnconfigurePhoneNumberAsync.json b/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/UnconfigurePhoneNumberAsync.json deleted file mode 100644 index e8da11cf3109..000000000000 --- a/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/UnconfigurePhoneNumberAsync.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parameters": { - "api-version": "2020-07-20-preview1", - "body": { - "phoneNumber": "+11234567890" - }, - "endpoint": "https://resourcename.communications.azure.net/" - }, - "responses": { - "200": {} - } -} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/UpdateNumberCapabilitiesAsync.json b/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/UpdateNumberCapabilitiesAsync.json deleted file mode 100644 index 612b5f2b2740..000000000000 --- a/specification/communication/data-plane/Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/examples/UpdateNumberCapabilitiesAsync.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parameters": { - "api-version": "2020-07-20-preview1", - "body": { - "phoneNumberCapabilitiesUpdate": { - "12345878981": { - "add": [ - "InboundA2PSms", - "OutboundA2PSms" - ], - "remove": [] - }, - "12345878991": { - "add": [], - "remove": [ - "InboundA2PSms", - "OutboundA2PSms" - ] - } - } - }, - "endpoint": "https://resourcename.communications.azure.net/" - }, - "responses": { - "200": { - "headers": {}, - "body": { - "capabilitiesUpdateId": "0cc077cd-5337-7msf-964e-560b1e06c63e" - } - } - } -} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-11-01-preview3/communicationserviceschat.json b/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-11-01-preview3/communicationserviceschat.json deleted file mode 100644 index f3230a2353df..000000000000 --- a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-11-01-preview3/communicationserviceschat.json +++ /dev/null @@ -1,1703 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "Azure Communication Chat Service", - "description": "Azure Communication Chat Service", - "version": "2020-11-01-preview3" - }, - "paths": { - "/chat/threads/{chatThreadId}/readReceipts": { - "get": { - "tags": [ - "Threads" - ], - "summary": "Gets chat message read receipts for a thread.", - "operationId": "ChatThread_ListChatReadReceipts", - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "chatThreadId", - "description": "Thread id to get the chat message read receipts for.", - "required": true, - "type": "string" - }, - { - "in": "query", - "name": "maxPageSize", - "description": "The maximum number of chat message read receipts to be returned per page.", - "type": "integer", - "format": "int32" - }, - { - "in": "query", - "name": "skip", - "description": "Skips chat message read receipts up to a specified position in response.", - "type": "integer", - "format": "int32" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Request successful. The action returns the requested `ChatMessageReadReceipt` resources.", - "schema": { - "$ref": "#/definitions/ChatMessageReadReceiptsCollection" - } - }, - "401": { - "description": "Unauthorized.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "403": { - "description": "Forbidden.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "429": { - "description": "Too many requests.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "503": { - "description": "Service unavailable.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - } - }, - "x-ms-examples": { - "Get thread read receipts with pagination (max page size)": { - "$ref": "./examples/Conversations_ListChatReadReceiptsWithPageSize.json" - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink", - "itemName": "value" - } - }, - "post": { - "tags": [ - "Threads" - ], - "summary": "Sends a read receipt event to a thread, on behalf of a user.", - "operationId": "ChatThread_SendChatReadReceipt", - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "chatThreadId", - "description": "Thread id to send the read receipt event to.", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "in": "body", - "name": "sendReadReceiptRequest", - "description": "Read receipt details.", - "required": true, - "schema": { - "$ref": "#/definitions/SendReadReceiptRequest" - } - } - ], - "responses": { - "200": { - "description": "Request successful." - }, - "401": { - "description": "Unauthorized.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "403": { - "description": "Forbidden.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "429": { - "description": "Too many requests.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "503": { - "description": "Service unavailable.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - } - }, - "x-ms-examples": { - "Send read receipt": { - "$ref": "./examples/Conversations_SendChatReadReceipt.json" - } - } - } - }, - "/chat/threads/{chatThreadId}/messages": { - "post": { - "tags": [ - "Messages" - ], - "summary": "Sends a message to a thread.", - "operationId": "ChatThread_SendChatMessage", - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "chatThreadId", - "description": "The thread id to send the message to.", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "in": "body", - "name": "sendChatMessageRequest", - "description": "Details of the message to send.", - "required": true, - "schema": { - "$ref": "#/definitions/SendChatMessageRequest" - } - } - ], - "responses": { - "201": { - "description": "Message sent, the `Location` header contains the URL for the newly sent message.", - "schema": { - "$ref": "#/definitions/SendChatMessageResult" - } - }, - "401": { - "description": "Unauthorized.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "403": { - "description": "Forbidden.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "429": { - "description": "Too many requests.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "503": { - "description": "Service unavailable.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - } - }, - "x-ms-examples": { - "Send Message": { - "$ref": "./examples/Messages_SendChatMessage.json" - } - } - }, - "get": { - "tags": [ - "Messages" - ], - "summary": "Gets a list of messages from a thread.", - "operationId": "ChatThread_ListChatMessages", - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "chatThreadId", - "description": "The thread id of the message.", - "required": true, - "type": "string" - }, - { - "in": "query", - "name": "maxPageSize", - "description": "The maximum number of messages to be returned per page.", - "type": "integer", - "format": "int32" - }, - { - "in": "query", - "name": "startTime", - "description": "The earliest point in time to get messages up to. The timestamp should be in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", - "type": "string", - "format": "date-time" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/ChatMessagesCollection" - } - }, - "401": { - "description": "Unauthorized.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "403": { - "description": "Forbidden.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "429": { - "description": "Too many requests.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "503": { - "description": "Service unavailable.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - } - }, - "x-ms-examples": { - "Get messages with pagination (max page size)": { - "$ref": "./examples/Messages_ListChatMessagesWithPageSize.json" - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink", - "itemName": "value" - } - } - }, - "/chat/threads/{chatThreadId}/messages/{chatMessageId}": { - "get": { - "tags": [ - "Messages" - ], - "summary": "Gets a message by id.", - "operationId": "ChatThread_GetChatMessage", - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "chatThreadId", - "description": "The thread id to which the message was sent.", - "required": true, - "type": "string" - }, - { - "in": "path", - "name": "chatMessageId", - "description": "The message id.", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Request successful. The action returns a `Message` resource.", - "schema": { - "$ref": "#/definitions/ChatMessage" - } - }, - "401": { - "description": "Unauthorized.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "403": { - "description": "Forbidden.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "429": { - "description": "Too many requests.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "503": { - "description": "Service unavailable.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - } - }, - "x-ms-examples": { - "Get Message": { - "$ref": "./examples/Messages_GetChatMessage.json" - } - } - }, - "patch": { - "tags": [ - "Messages" - ], - "summary": "Updates a message.", - "operationId": "ChatThread_UpdateChatMessage", - "consumes": [ - "application/merge-patch+json" - ], - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "chatThreadId", - "description": "The thread id to which the message was sent.", - "required": true, - "type": "string" - }, - { - "in": "path", - "name": "chatMessageId", - "description": "The message id.", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "in": "body", - "name": "updateChatMessageRequest", - "description": "Details of the request to update the message.", - "required": true, - "schema": { - "$ref": "#/definitions/UpdateChatMessageRequest" - } - } - ], - "responses": { - "204": { - "description": "Message is successfully updated." - }, - "401": { - "description": "Unauthorized.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "403": { - "description": "Forbidden.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "429": { - "description": "Too many requests.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "503": { - "description": "Service unavailable.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - } - }, - "x-ms-examples": { - "Update message content": { - "$ref": "./examples/Messages_UpdateChatMessage.json" - } - } - }, - "delete": { - "tags": [ - "Messages" - ], - "summary": "Deletes a message.", - "operationId": "ChatThread_DeleteChatMessage", - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "chatThreadId", - "description": "The thread id to which the message was sent.", - "required": true, - "type": "string" - }, - { - "in": "path", - "name": "chatMessageId", - "description": "The message id.", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "204": { - "description": "Request successful." - }, - "401": { - "description": "Unauthorized.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "403": { - "description": "Forbidden.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "429": { - "description": "Too many requests.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "503": { - "description": "Service unavailable.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - } - }, - "x-ms-examples": { - "Delete message": { - "$ref": "./examples/Messages_DeleteChatMessage.json" - } - } - } - }, - "/chat/threads/{chatThreadId}/typing": { - "post": { - "tags": [ - "Messages" - ], - "summary": "Posts a typing event to a thread, on behalf of a user.", - "operationId": "ChatThread_SendTypingNotification", - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "chatThreadId", - "description": "Id of the thread.", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Request successful." - }, - "401": { - "description": "Unauthorized.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "403": { - "description": "Forbidden.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "429": { - "description": "Too many requests.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "503": { - "description": "Service unavailable.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - } - }, - "x-ms-examples": { - "Post typing event to a thread": { - "$ref": "./examples/Messages_SendTypingNotification.json" - } - } - } - }, - "/chat/threads/{chatThreadId}/participants": { - "get": { - "tags": [ - "Participants" - ], - "summary": "Gets the participants of a thread.", - "operationId": "ChatThread_ListChatParticipants", - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "chatThreadId", - "description": "Thread id to get participants for.", - "required": true, - "type": "string" - }, - { - "in": "query", - "name": "maxPageSize", - "description": "The maximum number of participants to be returned per page.", - "type": "integer", - "format": "int32" - }, - { - "in": "query", - "name": "skip", - "description": "Skips participants up to a specified position in response.", - "type": "integer", - "format": "int32" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Request successful. The action returns the participants of a thread.", - "schema": { - "$ref": "#/definitions/ChatParticipantsCollection" - } - }, - "401": { - "description": "Unauthorized.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "403": { - "description": "Forbidden.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "429": { - "description": "Too many requests.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "503": { - "description": "Service unavailable.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - } - }, - "x-ms-examples": { - "Get participants with pagination (max page size)": { - "$ref": "./examples/Participants_ListChatParticipantsWithPageSize.json" - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink", - "itemName": "value" - } - } - }, - "/chat/threads/{chatThreadId}/participants/{chatParticipantId}": { - "delete": { - "tags": [ - "Participants" - ], - "summary": "Remove a participant from a thread.", - "operationId": "ChatThread_RemoveChatParticipant", - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "chatThreadId", - "description": "Thread id to remove the participant from.", - "required": true, - "type": "string" - }, - { - "in": "path", - "name": "chatParticipantId", - "description": "Id of the thread participant to remove from the thread.", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "204": { - "description": "Request successful." - }, - "401": { - "description": "Unauthorized.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "403": { - "description": "Forbidden.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "429": { - "description": "Too many requests.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "503": { - "description": "Service unavailable.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - } - }, - "x-ms-examples": { - "Remove participant": { - "$ref": "./examples/Participants_RemoveChatParticipant.json" - } - } - } - }, - "/chat/threads/{chatThreadId}/participants/:add": { - "post": { - "tags": [ - "Participants" - ], - "summary": "Adds thread participants to a thread. If participants already exist, no change occurs.", - "operationId": "ChatThread_AddChatParticipants", - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "chatThreadId", - "description": "Id of the thread to add participants to.", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "in": "body", - "name": "addChatParticipantsRequest", - "description": "Thread participants to be added to the thread.", - "required": true, - "schema": { - "$ref": "#/definitions/AddChatParticipantsRequest" - } - } - ], - "responses": { - "201": { - "description": "The participants were successfully added.", - "schema": { - "$ref": "#/definitions/AddChatParticipantsResult" - } - }, - "401": { - "description": "Unauthorized.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "403": { - "description": "Forbidden.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "429": { - "description": "Too many requests.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "503": { - "description": "Service unavailable.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - } - }, - "x-ms-examples": { - "Add participants": { - "$ref": "./examples/Participants_AddChatParticipants.json" - } - } - } - }, - "/chat/threads": { - "post": { - "tags": [ - "Threads" - ], - "summary": "Creates a chat thread.", - "operationId": "Chat_CreateChatThread", - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "header", - "name": "repeatability-Request-ID", - "description": "If specified, the client directs that the request is repeatable; that is, that the client can make the request multiple times with the same Repeatability-Request-ID and get back an appropriate response without the server executing the request multiple times. The value of the Repeatability-Request-ID is an opaque string representing a client-generated, globally unique for all time, identifier for the request. It is recommended to use version 4 (random) UUIDs.", - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "in": "body", - "name": "createChatThreadRequest", - "description": "Request payload for creating a chat thread.", - "required": true, - "schema": { - "$ref": "#/definitions/CreateChatThreadRequest" - } - } - ], - "responses": { - "201": { - "description": "Thread created, the `Location` header would contain the URL for the newly created thread.", - "schema": { - "$ref": "#/definitions/CreateChatThreadResult" - } - }, - "401": { - "description": "Unauthorized.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "403": { - "description": "Forbidden.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "429": { - "description": "Too many requests.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "503": { - "description": "Service unavailable.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - } - }, - "x-ms-examples": { - "Create chat thread": { - "$ref": "./examples/Threads_CreateChatThread.json" - }, - "Create chat thread with repeatability request id header": { - "$ref": "./examples/Threads_CreateChatThreadWithRepeatabilityRequestId.json" - } - } - }, - "get": { - "tags": [ - "Threads" - ], - "summary": "Gets the list of chat threads of a user.", - "operationId": "Chat_ListChatThreads", - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "query", - "name": "maxPageSize", - "description": "The maximum number of chat threads returned per page.", - "type": "integer", - "format": "int32" - }, - { - "in": "query", - "name": "startTime", - "description": "The earliest point in time to get chat threads up to. The timestamp should be in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", - "type": "string", - "format": "date-time" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Request successful. The action returns a `GetThreadsResponse` resource.", - "schema": { - "$ref": "#/definitions/ChatThreadsInfoCollection" - } - }, - "401": { - "description": "Unauthorized.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "403": { - "description": "Forbidden.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "429": { - "description": "Too many requests.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "503": { - "description": "Service unavailable.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - } - }, - "x-ms-examples": { - "Get threads with pagination (Max Page Size)": { - "$ref": "./examples/Threads_ListChatThreadsWithPageSize.json" - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink", - "itemName": "value" - } - } - }, - "/chat/threads/{chatThreadId}": { - "patch": { - "tags": [ - "Threads" - ], - "summary": "Updates a thread's properties.", - "operationId": "ChatThread_UpdateChatThread", - "consumes": [ - "application/merge-patch+json" - ], - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "chatThreadId", - "description": "The id of the thread to update.", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "in": "body", - "name": "updateChatThreadRequest", - "description": "Request payload for updating a chat thread.", - "required": true, - "schema": { - "$ref": "#/definitions/UpdateChatThreadRequest" - } - } - ], - "responses": { - "204": { - "description": "Thread was successfully updated." - }, - "401": { - "description": "Unauthorized.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "403": { - "description": "Forbidden.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "429": { - "description": "Too many requests.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "503": { - "description": "Service unavailable.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - } - }, - "x-ms-examples": { - "Update chat thread topic": { - "$ref": "./examples/Threads_UpdateChatThreadTopic.json" - } - } - }, - "get": { - "tags": [ - "Threads" - ], - "summary": "Gets a chat thread.", - "operationId": "Chat_GetChatThread", - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "chatThreadId", - "description": "Id of the thread.", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Request successful. The action returns a chat thread.", - "schema": { - "$ref": "#/definitions/ChatThread" - } - }, - "401": { - "description": "Unauthorized.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "403": { - "description": "Forbidden.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "429": { - "description": "Too many requests.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "503": { - "description": "Service unavailable.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - } - }, - "x-ms-examples": { - "Get chat thread": { - "$ref": "./examples/Threads_GetChatThread.json" - } - } - }, - "delete": { - "tags": [ - "Threads" - ], - "summary": "Deletes a thread.", - "operationId": "Chat_DeleteChatThread", - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "chatThreadId", - "description": "Id of the thread to be deleted.", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "204": { - "description": "Request successful." - }, - "401": { - "description": "Unauthorized.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "403": { - "description": "Forbidden.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "429": { - "description": "Too many requests.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "503": { - "description": "Service unavailable.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - } - }, - "x-ms-examples": { - "Delete chat thread": { - "$ref": "./examples/Threads_DeleteChatThread.json" - } - } - } - } - }, - "definitions": { - "ChatMessageReadReceipt": { - "description": "A chat message read receipt indicates the time a chat message was read by a recipient.", - "required": [ - "chatMessageId", - "readOn", - "senderId" - ], - "type": "object", - "properties": { - "senderId": { - "description": "Id of the participant who read the message.", - "type": "string", - "example": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b" - }, - "chatMessageId": { - "description": "Id of the chat message that has been read. This id is generated by the server.", - "type": "string", - "example": "1591137790240" - }, - "readOn": { - "format": "date-time", - "description": "The time at which the message was read. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", - "type": "string", - "example": "2020-10-30T10:50:50Z" - } - } - }, - "ChatMessageReadReceiptsCollection": { - "description": "A paged collection of chat message read receipts.", - "required": [ - "value" - ], - "type": "object", - "properties": { - "value": { - "description": "Collection of chat message read receipts.", - "type": "array", - "items": { - "$ref": "#/definitions/ChatMessageReadReceipt" - } - }, - "nextLink": { - "description": "If there are more chat message read receipts that can be retrieved, the next link will be populated.", - "type": "string", - "readOnly": true - } - } - }, - "Error": { - "$ref": "../../../Microsoft.CommunicationServicesCommon/preview/2020-11-19-preview1/common.json#/definitions/CommunicationError" - }, - "ErrorResponse": { - "$ref": "../../../Microsoft.CommunicationServicesCommon/preview/2020-11-19-preview1/common.json#/definitions/CommunicationErrorResponse" - }, - "SendReadReceiptRequest": { - "description": "Request payload for sending a read receipt.", - "required": [ - "chatMessageId" - ], - "type": "object", - "properties": { - "chatMessageId": { - "description": "Id of the latest chat message read by the user.", - "type": "string", - "example": "1592435762364" - } - } - }, - "ChatMessageType": { - "description": "The chat message type.", - "enum": [ - "text", - "html", - "topicUpdated", - "participantAdded", - "participantRemoved" - ], - "type": "string", - "x-ms-enum": { - "name": "ChatMessageType", - "modelAsString": true - } - }, - "SendChatMessageRequest": { - "description": "Details of the message to send.", - "required": [ - "content" - ], - "type": "object", - "properties": { - "content": { - "description": "Chat message content.", - "type": "string", - "example": "Come one guys, lets go for lunch together." - }, - "senderDisplayName": { - "description": "The display name of the chat message sender. This property is used to populate sender name for push notifications.", - "type": "string", - "example": "Bob Admin" - }, - "type": { - "$ref": "#/definitions/ChatMessageType" - } - } - }, - "SendChatMessageResult": { - "description": "Result of the send message operation.", - "required": [ - "id" - ], - "type": "object", - "properties": { - "id": { - "description": "A server-generated message id.", - "type": "string", - "example": "123456789" - } - } - }, - "ChatParticipant": { - "description": "A participant of the chat thread.", - "required": [ - "id" - ], - "type": "object", - "properties": { - "id": { - "description": "The id of the chat participant.", - "type": "string", - "example": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b" - }, - "displayName": { - "description": "Display name for the chat participant.", - "type": "string", - "example": "Bob" - }, - "shareHistoryTime": { - "format": "date-time", - "description": "Time from which the chat history is shared with the participant. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", - "type": "string", - "example": "2020-10-30T10:50:50Z" - } - } - }, - "ChatMessageContent": { - "description": "Content of a chat message.", - "type": "object", - "properties": { - "message": { - "description": "Chat message content for messages of types text or html.", - "type": "string", - "example": "Come one guys, lets go for lunch together." - }, - "topic": { - "description": "Chat message content for messages of type topicUpdated.", - "type": "string", - "example": "Lunch Chat thread" - }, - "participants": { - "description": "Chat message content for messages of types participantAdded or participantRemoved.", - "type": "array", - "items": { - "$ref": "#/definitions/ChatParticipant" - } - }, - "initiator": { - "description": "Chat message content for messages of types participantAdded or participantRemoved.", - "type": "string", - "example": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b" - } - } - }, - "ChatMessage": { - "description": "Chat message.", - "required": [ - "createdOn", - "id", - "sequenceId", - "type", - "version" - ], - "type": "object", - "properties": { - "id": { - "description": "The id of the chat message. This id is server generated.", - "type": "string", - "example": "123456789" - }, - "type": { - "$ref": "#/definitions/ChatMessageType" - }, - "sequenceId": { - "description": "Sequence of the chat message in the conversation.", - "type": "string" - }, - "version": { - "description": "Version of the chat message.", - "type": "string" - }, - "content": { - "$ref": "#/definitions/ChatMessageContent" - }, - "senderDisplayName": { - "description": "The display name of the chat message sender. This property is used to populate sender name for push notifications.", - "type": "string", - "example": "Jane" - }, - "createdOn": { - "format": "date-time", - "description": "The timestamp when the chat message arrived at the server. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", - "type": "string", - "example": "2020-10-30T10:50:50Z" - }, - "senderId": { - "description": "The id of the chat message sender.", - "type": "string", - "example": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b" - }, - "deletedOn": { - "format": "date-time", - "description": "The timestamp (if applicable) when the message was deleted. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", - "type": "string", - "example": "2020-10-30T10:50:50Z" - }, - "editedOn": { - "format": "date-time", - "description": "The last timestamp (if applicable) when the message was edited. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", - "type": "string", - "example": "2020-10-30T10:50:50Z" - } - } - }, - "ChatMessagesCollection": { - "description": "Collection of chat messages for a particular chat thread.", - "required": [ - "value" - ], - "type": "object", - "properties": { - "value": { - "description": "Collection of chat messages.", - "type": "array", - "items": { - "$ref": "#/definitions/ChatMessage" - } - }, - "nextLink": { - "description": "If there are more chat messages that can be retrieved, the next link will be populated.", - "type": "string", - "readOnly": true - } - } - }, - "UpdateChatMessageRequest": { - "description": "Request payload for updating a chat message.", - "type": "object", - "properties": { - "content": { - "description": "Chat message content.", - "type": "string", - "example": "Let's go for lunch together." - } - } - }, - "ChatParticipantsCollection": { - "description": "Collection of participants belong to a particular thread.", - "required": [ - "value" - ], - "type": "object", - "properties": { - "value": { - "description": "Chat participants.", - "type": "array", - "items": { - "$ref": "#/definitions/ChatParticipant" - } - }, - "nextLink": { - "description": "If there are more chat participants that can be retrieved, the next link will be populated.", - "type": "string", - "readOnly": true - } - } - }, - "AddChatParticipantsRequest": { - "description": "Participants to be added to the thread.", - "required": [ - "participants" - ], - "type": "object", - "properties": { - "participants": { - "description": "Participants to add to a chat thread.", - "type": "array", - "items": { - "$ref": "#/definitions/ChatParticipant" - } - } - } - }, - "AddChatParticipantsErrors": { - "description": "Errors encountered during the addition of the chat participant to the chat thread.", - "required": [ - "invalidParticipants" - ], - "type": "object", - "properties": { - "invalidParticipants": { - "description": "The participants that failed to be added to the chat thread.", - "type": "array", - "items": { - "$ref": "#/definitions/Error" - } - } - } - }, - "AddChatParticipantsResult": { - "description": "Result of the add chat participants operation.", - "type": "object", - "properties": { - "errors": { - "$ref": "#/definitions/AddChatParticipantsErrors" - } - } - }, - "CreateChatThreadRequest": { - "description": "Request payload for creating a chat thread.", - "required": [ - "participants", - "topic" - ], - "type": "object", - "properties": { - "topic": { - "description": "The chat thread topic.", - "type": "string", - "example": "Lunch Thread" - }, - "participants": { - "description": "Participants to be added to the chat thread.", - "type": "array", - "items": { - "$ref": "#/definitions/ChatParticipant" - } - } - } - }, - "ChatThread": { - "description": "Chat thread.", - "required": [ - "createdBy", - "createdOn", - "id", - "topic" - ], - "type": "object", - "properties": { - "id": { - "description": "Chat thread id.", - "type": "string", - "example": "19:uni01_uy5ucb66ugp3lrhe7pxso6xx4hsmm3dl6eyjfefv2n6x3rrurpea@thread.v2" - }, - "topic": { - "description": "Chat thread topic.", - "type": "string", - "example": "Lunch Chat thread" - }, - "createdOn": { - "format": "date-time", - "description": "The timestamp when the chat thread was created. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", - "type": "string", - "example": "2020-10-30T10:50:50Z" - }, - "createdBy": { - "description": "Id of the chat thread owner.", - "type": "string", - "example": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b" - }, - "deletedOn": { - "format": "date-time", - "description": "The timestamp when the chat thread was deleted. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", - "type": "string", - "example": "2020-10-30T10:50:50Z" - } - } - }, - "CreateChatThreadErrors": { - "description": "Errors encountered during the creation of the chat thread.", - "type": "object", - "properties": { - "invalidParticipants": { - "description": "The participants that failed to be added to the chat thread.", - "type": "array", - "items": { - "$ref": "#/definitions/Error" - }, - "readOnly": true - } - } - }, - "CreateChatThreadResult": { - "description": "Result of the create chat thread operation.", - "type": "object", - "properties": { - "chatThread": { - "$ref": "#/definitions/ChatThread" - }, - "errors": { - "$ref": "#/definitions/CreateChatThreadErrors" - } - } - }, - "ChatThreadInfo": { - "description": "Summary information of a chat thread.", - "required": [ - "id", - "topic" - ], - "type": "object", - "properties": { - "id": { - "description": "Chat thread id.", - "type": "string", - "example": "19:uni01_uy5ucb66ugp3lrhe7pxso6xx4hsmm3dl6eyjfefv2n6x3rrurpea@thread.v2" - }, - "topic": { - "description": "Chat thread topic.", - "type": "string", - "example": "Lunch Chat thread" - }, - "deletedOn": { - "format": "date-time", - "description": "The timestamp when the chat thread was deleted. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", - "type": "string", - "example": "2020-10-30T10:50:50Z" - }, - "lastMessageReceivedOn": { - "format": "date-time", - "description": "The timestamp when the last message arrived at the server. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", - "type": "string", - "readOnly": true, - "example": "2020-10-30T10:50:50Z" - } - } - }, - "ChatThreadsInfoCollection": { - "description": "Collection of chat threads.", - "required": [ - "value" - ], - "type": "object", - "properties": { - "value": { - "description": "Collection of chat threads.", - "type": "array", - "items": { - "$ref": "#/definitions/ChatThreadInfo" - } - }, - "nextLink": { - "description": "If there are more chat threads that can be retrieved, the next link will be populated.", - "type": "string", - "readOnly": true - } - } - }, - "UpdateChatThreadRequest": { - "description": "Request payload for updating a chat thread.", - "type": "object", - "properties": { - "topic": { - "description": "Chat thread topic.", - "type": "string", - "example": "Lunch Thread" - } - } - } - }, - "parameters": { - "ApiVersionParameter": { - "in": "query", - "name": "api-version", - "description": "Version of API to invoke.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - }, - "Endpoint": { - "in": "path", - "name": "endpoint", - "description": "The endpoint of the Azure Communication resource.", - "required": true, - "type": "string", - "x-ms-skip-url-encoding": true, - "x-ms-parameter-location": "client" - } - }, - "securityDefinitions": { - "Authorization": { - "type": "apiKey", - "name": "Authorization", - "in": "header", - "description": "An ACS (Azure Communication Services) user access token." - } - }, - "security": [ - { - "Authorization": [] - } - ], - "x-ms-parameterized-host": { - "hostTemplate": "{endpoint}", - "useSchemePrefix": false, - "parameters": [ - { - "$ref": "#/parameters/Endpoint" - } - ] - } -} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-01-27-preview4/communicationserviceschat.json b/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-01-27-preview4/communicationserviceschat.json deleted file mode 100644 index 7398a44a652e..000000000000 --- a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-01-27-preview4/communicationserviceschat.json +++ /dev/null @@ -1,1711 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "Azure Communication Chat Service", - "description": "Azure Communication Chat Service", - "version": "2021-01-27-preview4" - }, - "paths": { - "/chat/threads/{chatThreadId}/readReceipts": { - "get": { - "tags": [ - "Threads" - ], - "summary": "Gets chat message read receipts for a thread.", - "operationId": "ChatThread_ListChatReadReceipts", - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "chatThreadId", - "description": "Thread id to get the chat message read receipts for.", - "required": true, - "type": "string" - }, - { - "in": "query", - "name": "maxPageSize", - "description": "The maximum number of chat message read receipts to be returned per page.", - "type": "integer", - "format": "int32" - }, - { - "in": "query", - "name": "skip", - "description": "Skips chat message read receipts up to a specified position in response.", - "type": "integer", - "format": "int32" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Request successful. The action returns the requested `ChatMessageReadReceipt` resources.", - "schema": { - "$ref": "#/definitions/ChatMessageReadReceiptsCollection" - } - }, - "401": { - "description": "Unauthorized.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "403": { - "description": "Forbidden.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "429": { - "description": "Too many requests.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "503": { - "description": "Service unavailable.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - } - }, - "x-ms-examples": { - "Get thread read receipts with pagination (max page size)": { - "$ref": "./examples/Conversations_ListChatReadReceiptsWithPageSize.json" - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink", - "itemName": "value" - } - }, - "post": { - "tags": [ - "Threads" - ], - "summary": "Sends a read receipt event to a thread, on behalf of a user.", - "operationId": "ChatThread_SendChatReadReceipt", - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "chatThreadId", - "description": "Thread id to send the read receipt event to.", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "in": "body", - "name": "sendReadReceiptRequest", - "description": "Read receipt details.", - "required": true, - "schema": { - "$ref": "#/definitions/SendReadReceiptRequest" - } - } - ], - "responses": { - "200": { - "description": "Request successful." - }, - "401": { - "description": "Unauthorized.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "403": { - "description": "Forbidden.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "429": { - "description": "Too many requests.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "503": { - "description": "Service unavailable.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - } - }, - "x-ms-examples": { - "Send read receipt": { - "$ref": "./examples/Conversations_SendChatReadReceipt.json" - } - } - } - }, - "/chat/threads/{chatThreadId}/messages": { - "post": { - "tags": [ - "Messages" - ], - "summary": "Sends a message to a thread.", - "operationId": "ChatThread_SendChatMessage", - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "chatThreadId", - "description": "The thread id to send the message to.", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "in": "body", - "name": "sendChatMessageRequest", - "description": "Details of the message to send.", - "required": true, - "schema": { - "$ref": "#/definitions/SendChatMessageRequest" - } - } - ], - "responses": { - "201": { - "description": "Message sent, the `Location` header contains the URL for the newly sent message.", - "schema": { - "$ref": "#/definitions/SendChatMessageResult" - } - }, - "401": { - "description": "Unauthorized.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "403": { - "description": "Forbidden.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "429": { - "description": "Too many requests.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "503": { - "description": "Service unavailable.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - } - }, - "x-ms-examples": { - "Send Message": { - "$ref": "./examples/Messages_SendChatMessage.json" - } - } - }, - "get": { - "tags": [ - "Messages" - ], - "summary": "Gets a list of messages from a thread.", - "operationId": "ChatThread_ListChatMessages", - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "chatThreadId", - "description": "The thread id of the message.", - "required": true, - "type": "string" - }, - { - "in": "query", - "name": "maxPageSize", - "description": "The maximum number of messages to be returned per page.", - "type": "integer", - "format": "int32" - }, - { - "in": "query", - "name": "startTime", - "description": "The earliest point in time to get messages up to. The timestamp should be in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", - "type": "string", - "format": "date-time" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/ChatMessagesCollection" - } - }, - "401": { - "description": "Unauthorized.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "403": { - "description": "Forbidden.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "429": { - "description": "Too many requests.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "503": { - "description": "Service unavailable.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - } - }, - "x-ms-examples": { - "Get messages with pagination (max page size)": { - "$ref": "./examples/Messages_ListChatMessagesWithPageSize.json" - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink", - "itemName": "value" - } - } - }, - "/chat/threads/{chatThreadId}/messages/{chatMessageId}": { - "get": { - "tags": [ - "Messages" - ], - "summary": "Gets a message by id.", - "operationId": "ChatThread_GetChatMessage", - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "chatThreadId", - "description": "The thread id to which the message was sent.", - "required": true, - "type": "string" - }, - { - "in": "path", - "name": "chatMessageId", - "description": "The message id.", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Request successful. The action returns a `Message` resource.", - "schema": { - "$ref": "#/definitions/ChatMessage" - } - }, - "401": { - "description": "Unauthorized.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "403": { - "description": "Forbidden.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "429": { - "description": "Too many requests.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "503": { - "description": "Service unavailable.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - } - }, - "x-ms-examples": { - "Get Message": { - "$ref": "./examples/Messages_GetChatMessage.json" - } - } - }, - "patch": { - "tags": [ - "Messages" - ], - "summary": "Updates a message.", - "operationId": "ChatThread_UpdateChatMessage", - "consumes": [ - "application/merge-patch+json" - ], - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "chatThreadId", - "description": "The thread id to which the message was sent.", - "required": true, - "type": "string" - }, - { - "in": "path", - "name": "chatMessageId", - "description": "The message id.", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "in": "body", - "name": "updateChatMessageRequest", - "description": "Details of the request to update the message.", - "required": true, - "schema": { - "$ref": "#/definitions/UpdateChatMessageRequest" - } - } - ], - "responses": { - "204": { - "description": "Message is successfully updated." - }, - "401": { - "description": "Unauthorized.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "403": { - "description": "Forbidden.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "429": { - "description": "Too many requests.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "503": { - "description": "Service unavailable.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - } - }, - "x-ms-examples": { - "Update message content": { - "$ref": "./examples/Messages_UpdateChatMessage.json" - } - } - }, - "delete": { - "tags": [ - "Messages" - ], - "summary": "Deletes a message.", - "operationId": "ChatThread_DeleteChatMessage", - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "chatThreadId", - "description": "The thread id to which the message was sent.", - "required": true, - "type": "string" - }, - { - "in": "path", - "name": "chatMessageId", - "description": "The message id.", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "204": { - "description": "Request successful." - }, - "401": { - "description": "Unauthorized.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "403": { - "description": "Forbidden.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "429": { - "description": "Too many requests.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "503": { - "description": "Service unavailable.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - } - }, - "x-ms-examples": { - "Delete message": { - "$ref": "./examples/Messages_DeleteChatMessage.json" - } - } - } - }, - "/chat/threads/{chatThreadId}/typing": { - "post": { - "tags": [ - "Messages" - ], - "summary": "Posts a typing event to a thread, on behalf of a user.", - "operationId": "ChatThread_SendTypingNotification", - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "chatThreadId", - "description": "Id of the thread.", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Request successful." - }, - "401": { - "description": "Unauthorized.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "403": { - "description": "Forbidden.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "429": { - "description": "Too many requests.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "503": { - "description": "Service unavailable.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - } - }, - "x-ms-examples": { - "Post typing event to a thread": { - "$ref": "./examples/Messages_SendTypingNotification.json" - } - } - } - }, - "/chat/threads/{chatThreadId}/participants": { - "get": { - "tags": [ - "Participants" - ], - "summary": "Gets the participants of a thread.", - "operationId": "ChatThread_ListChatParticipants", - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "chatThreadId", - "description": "Thread id to get participants for.", - "required": true, - "type": "string" - }, - { - "in": "query", - "name": "maxPageSize", - "description": "The maximum number of participants to be returned per page.", - "type": "integer", - "format": "int32" - }, - { - "in": "query", - "name": "skip", - "description": "Skips participants up to a specified position in response.", - "type": "integer", - "format": "int32" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Request successful. The action returns the participants of a thread.", - "schema": { - "$ref": "#/definitions/ChatParticipantsCollection" - } - }, - "401": { - "description": "Unauthorized.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "403": { - "description": "Forbidden.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "429": { - "description": "Too many requests.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "503": { - "description": "Service unavailable.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - } - }, - "x-ms-examples": { - "Get participants with pagination (max page size)": { - "$ref": "./examples/Participants_ListChatParticipantsWithPageSize.json" - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink", - "itemName": "value" - } - } - }, - "/chat/threads/{chatThreadId}/participants/:remove": { - "post": { - "tags": [ - "Participants" - ], - "summary": "Remove a participant from a thread.", - "operationId": "ChatThread_RemoveChatParticipant", - "consumes": [ - "application/json", - "application/merge-patch+json" - ], - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "chatThreadId", - "description": "Thread id to remove the participant from.", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "in": "body", - "name": "participantCommunicationIdentifier", - "description": "Id of the thread participant to remove from the thread.", - "required": true, - "schema": { - "$ref": "#/definitions/CommunicationIdentifierModel" - } - } - ], - "responses": { - "204": { - "description": "Request successful." - }, - "401": { - "description": "Unauthorized.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "403": { - "description": "Forbidden.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "429": { - "description": "Too many requests.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "503": { - "description": "Service unavailable.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - } - }, - "x-ms-examples": { - "Remove participant": { - "$ref": "./examples/Participants_RemoveChatParticipant.json" - } - } - } - }, - "/chat/threads/{chatThreadId}/participants/:add": { - "post": { - "tags": [ - "Participants" - ], - "summary": "Adds thread participants to a thread. If participants already exist, no change occurs.", - "operationId": "ChatThread_AddChatParticipants", - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "chatThreadId", - "description": "Id of the thread to add participants to.", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "in": "body", - "name": "addChatParticipantsRequest", - "description": "Thread participants to be added to the thread.", - "required": true, - "schema": { - "$ref": "#/definitions/AddChatParticipantsRequest" - } - } - ], - "responses": { - "201": { - "description": "The participants were successfully added.", - "schema": { - "$ref": "#/definitions/AddChatParticipantsResult" - } - }, - "401": { - "description": "Unauthorized.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "403": { - "description": "Forbidden.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "429": { - "description": "Too many requests.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "503": { - "description": "Service unavailable.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - } - }, - "x-ms-examples": { - "Add participants": { - "$ref": "./examples/Participants_AddChatParticipants.json" - } - } - } - }, - "/chat/threads": { - "post": { - "tags": [ - "Threads" - ], - "summary": "Creates a chat thread.", - "operationId": "Chat_CreateChatThread", - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "header", - "name": "repeatability-Request-Id", - "description": "If specified, the client directs that the request is repeatable; that is, that the client can make the request multiple times with the same Repeatability-Request-Id and get back an appropriate response without the server executing the request multiple times. The value of the Repeatability-Request-Id is an opaque string representing a client-generated, globally unique for all time, identifier for the request. It is recommended to use version 4 (random) UUIDs.", - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "in": "body", - "name": "createChatThreadRequest", - "description": "Request payload for creating a chat thread.", - "required": true, - "schema": { - "$ref": "#/definitions/CreateChatThreadRequest" - } - } - ], - "responses": { - "201": { - "description": "Thread created, the `Location` header would contain the URL for the newly created thread.", - "schema": { - "$ref": "#/definitions/CreateChatThreadResult" - } - }, - "401": { - "description": "Unauthorized.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "403": { - "description": "Forbidden.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "429": { - "description": "Too many requests.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "503": { - "description": "Service unavailable.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - } - }, - "x-ms-examples": { - "Create chat thread": { - "$ref": "./examples/Threads_CreateChatThread.json" - }, - "Create chat thread with repeatability request id header": { - "$ref": "./examples/Threads_CreateChatThreadWithRepeatabilityRequestId.json" - } - } - }, - "get": { - "tags": [ - "Threads" - ], - "summary": "Gets the list of chat threads of a user.", - "operationId": "Chat_ListChatThreads", - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "query", - "name": "maxPageSize", - "description": "The maximum number of chat threads returned per page.", - "type": "integer", - "format": "int32" - }, - { - "in": "query", - "name": "startTime", - "description": "The earliest point in time to get chat threads up to. The timestamp should be in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", - "type": "string", - "format": "date-time" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Request successful. The action returns a `GetThreadsResponse` resource.", - "schema": { - "$ref": "#/definitions/ChatThreadsInfoCollection" - } - }, - "401": { - "description": "Unauthorized.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "403": { - "description": "Forbidden.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "429": { - "description": "Too many requests.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "503": { - "description": "Service unavailable.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - } - }, - "x-ms-examples": { - "Get threads with pagination (Max Page Size)": { - "$ref": "./examples/Threads_ListChatThreadsWithPageSize.json" - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink", - "itemName": "value" - } - } - }, - "/chat/threads/{chatThreadId}": { - "patch": { - "tags": [ - "Threads" - ], - "summary": "Updates a thread's properties.", - "operationId": "ChatThread_UpdateChatThread", - "consumes": [ - "application/merge-patch+json" - ], - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "chatThreadId", - "description": "The id of the thread to update.", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "in": "body", - "name": "updateChatThreadRequest", - "description": "Request payload for updating a chat thread.", - "required": true, - "schema": { - "$ref": "#/definitions/UpdateChatThreadRequest" - } - } - ], - "responses": { - "204": { - "description": "Thread was successfully updated." - }, - "401": { - "description": "Unauthorized.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "403": { - "description": "Forbidden.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "429": { - "description": "Too many requests.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "503": { - "description": "Service unavailable.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - } - }, - "x-ms-examples": { - "Update chat thread topic": { - "$ref": "./examples/Threads_UpdateChatThreadTopic.json" - } - } - }, - "get": { - "tags": [ - "Threads" - ], - "summary": "Gets a chat thread.", - "operationId": "Chat_GetChatThread", - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "chatThreadId", - "description": "Id of the thread.", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Request successful. The action returns a chat thread.", - "schema": { - "$ref": "#/definitions/ChatThread" - } - }, - "401": { - "description": "Unauthorized.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "403": { - "description": "Forbidden.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "429": { - "description": "Too many requests.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "503": { - "description": "Service unavailable.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - } - }, - "x-ms-examples": { - "Get chat thread": { - "$ref": "./examples/Threads_GetChatThread.json" - } - } - }, - "delete": { - "tags": [ - "Threads" - ], - "summary": "Deletes a thread.", - "operationId": "Chat_DeleteChatThread", - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "chatThreadId", - "description": "Id of the thread to be deleted.", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "204": { - "description": "Request successful." - }, - "401": { - "description": "Unauthorized.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "403": { - "description": "Forbidden.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "429": { - "description": "Too many requests.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - }, - "503": { - "description": "Service unavailable.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - }, - "x-ms-error-response": true - } - }, - "x-ms-examples": { - "Delete chat thread": { - "$ref": "./examples/Threads_DeleteChatThread.json" - } - } - } - } - }, - "definitions": { - "CommunicationUserIdentifierModel": { - "$ref": "../../../Microsoft.CommunicationServicesCommon/stable/2021-03-07/common.json#/definitions/CommunicationUserIdentifierModel" - }, - "CommunicationCloudEnvironment": { - "$ref": "../../../Microsoft.CommunicationServicesCommon/stable/2021-03-07/common.json#/definitions/CommunicationCloudEnvironmentModel" - }, - "MicrosoftTeamsUserIdentifierModel": { - "$ref": "../../../Microsoft.CommunicationServicesCommon/stable/2021-03-07/common.json#/definitions/MicrosoftTeamsUserIdentifierModel" - }, - "CommunicationIdentifierModel": { - "$ref": "../../../Microsoft.CommunicationServicesCommon/stable/2021-03-07/common.json#/definitions/CommunicationIdentifierModel" - }, - "ChatMessageReadReceipt": { - "description": "A chat message read receipt indicates the time a chat message was read by a recipient.", - "required": [ - "chatMessageId", - "readOn", - "senderCommunicationIdentifier" - ], - "type": "object", - "properties": { - "senderCommunicationIdentifier": { - "$ref": "#/definitions/CommunicationIdentifierModel" - }, - "chatMessageId": { - "description": "Id of the chat message that has been read. This id is generated by the server.", - "type": "string", - "example": "1591137790240" - }, - "readOn": { - "format": "date-time", - "description": "The time at which the message was read. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", - "type": "string", - "example": "2020-10-30T10:50:50Z" - } - } - }, - "ChatMessageReadReceiptsCollection": { - "description": "A paged collection of chat message read receipts.", - "required": [ - "value" - ], - "type": "object", - "properties": { - "value": { - "description": "Collection of chat message read receipts.", - "type": "array", - "items": { - "$ref": "#/definitions/ChatMessageReadReceipt" - } - }, - "nextLink": { - "description": "If there are more chat message read receipts that can be retrieved, the next link will be populated.", - "type": "string", - "readOnly": true - } - } - }, - "Error": { - "$ref": "../../../Microsoft.CommunicationServicesCommon/stable/2021-03-07/common.json#/definitions/CommunicationError" - }, - "ErrorResponse": { - "$ref": "../../../Microsoft.CommunicationServicesCommon/stable/2021-03-07/common.json#/definitions/CommunicationErrorResponse" - }, - "SendReadReceiptRequest": { - "description": "Request payload for sending a read receipt.", - "required": [ - "chatMessageId" - ], - "type": "object", - "properties": { - "chatMessageId": { - "description": "Id of the latest chat message read by the user.", - "type": "string", - "example": "1592435762364" - } - } - }, - "ChatMessageType": { - "description": "The chat message type.", - "enum": [ - "text", - "html", - "topicUpdated", - "participantAdded", - "participantRemoved" - ], - "type": "string", - "x-ms-enum": { - "name": "ChatMessageType", - "modelAsString": true - } - }, - "SendChatMessageRequest": { - "description": "Details of the message to send.", - "required": [ - "content" - ], - "type": "object", - "properties": { - "content": { - "description": "Chat message content.", - "type": "string", - "example": "Come one guys, lets go for lunch together." - }, - "senderDisplayName": { - "description": "The display name of the chat message sender. This property is used to populate sender name for push notifications.", - "type": "string", - "example": "Bob Admin" - }, - "type": { - "$ref": "#/definitions/ChatMessageType" - } - } - }, - "SendChatMessageResult": { - "description": "Result of the send message operation.", - "required": [ - "id" - ], - "type": "object", - "properties": { - "id": { - "description": "A server-generated message id.", - "type": "string", - "example": "123456789" - } - } - }, - "ChatParticipant": { - "description": "A participant of the chat thread.", - "required": [ - "communicationIdentifier" - ], - "type": "object", - "properties": { - "communicationIdentifier": { - "$ref": "#/definitions/CommunicationIdentifierModel" - }, - "displayName": { - "description": "Display name for the chat participant.", - "type": "string", - "example": "Bob" - }, - "shareHistoryTime": { - "format": "date-time", - "description": "Time from which the chat history is shared with the participant. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", - "type": "string", - "example": "2020-10-30T10:50:50Z" - } - } - }, - "ChatMessageContent": { - "description": "Content of a chat message.", - "type": "object", - "properties": { - "message": { - "description": "Chat message content for messages of types text or html.", - "type": "string", - "example": "Come one guys, lets go for lunch together." - }, - "topic": { - "description": "Chat message content for messages of type topicUpdated.", - "type": "string", - "example": "Lunch Chat thread" - }, - "participants": { - "description": "Chat message content for messages of types participantAdded or participantRemoved.", - "type": "array", - "items": { - "$ref": "#/definitions/ChatParticipant" - } - }, - "initiatorCommunicationIdentifier": { - "$ref": "#/definitions/CommunicationIdentifierModel" - } - } - }, - "ChatMessage": { - "description": "Chat message.", - "required": [ - "createdOn", - "id", - "sequenceId", - "type", - "version" - ], - "type": "object", - "properties": { - "id": { - "description": "The id of the chat message. This id is server generated.", - "type": "string", - "example": "123456789" - }, - "type": { - "$ref": "#/definitions/ChatMessageType" - }, - "sequenceId": { - "description": "Sequence of the chat message in the conversation.", - "type": "string" - }, - "version": { - "description": "Version of the chat message.", - "type": "string" - }, - "content": { - "$ref": "#/definitions/ChatMessageContent" - }, - "senderDisplayName": { - "description": "The display name of the chat message sender. This property is used to populate sender name for push notifications.", - "type": "string", - "example": "Jane" - }, - "createdOn": { - "format": "date-time", - "description": "The timestamp when the chat message arrived at the server. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", - "type": "string", - "example": "2020-10-30T10:50:50Z" - }, - "senderCommunicationIdentifier": { - "$ref": "#/definitions/CommunicationIdentifierModel" - }, - "deletedOn": { - "format": "date-time", - "description": "The timestamp (if applicable) when the message was deleted. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", - "type": "string", - "example": "2020-10-30T10:50:50Z" - }, - "editedOn": { - "format": "date-time", - "description": "The last timestamp (if applicable) when the message was edited. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", - "type": "string", - "example": "2020-10-30T10:50:50Z" - } - } - }, - "ChatMessagesCollection": { - "description": "Collection of chat messages for a particular chat thread.", - "required": [ - "value" - ], - "type": "object", - "properties": { - "value": { - "description": "Collection of chat messages.", - "type": "array", - "items": { - "$ref": "#/definitions/ChatMessage" - } - }, - "nextLink": { - "description": "If there are more chat messages that can be retrieved, the next link will be populated.", - "type": "string", - "readOnly": true - } - } - }, - "UpdateChatMessageRequest": { - "description": "Request payload for updating a chat message.", - "type": "object", - "properties": { - "content": { - "description": "Chat message content.", - "type": "string", - "example": "Let's go for lunch together." - } - } - }, - "ChatParticipantsCollection": { - "description": "Collection of participants belong to a particular thread.", - "required": [ - "value" - ], - "type": "object", - "properties": { - "value": { - "description": "Chat participants.", - "type": "array", - "items": { - "$ref": "#/definitions/ChatParticipant" - } - }, - "nextLink": { - "description": "If there are more chat participants that can be retrieved, the next link will be populated.", - "type": "string", - "readOnly": true - } - } - }, - "AddChatParticipantsRequest": { - "description": "Participants to be added to the thread.", - "required": [ - "participants" - ], - "type": "object", - "properties": { - "participants": { - "description": "Participants to add to a chat thread.", - "type": "array", - "items": { - "$ref": "#/definitions/ChatParticipant" - } - } - } - }, - "AddChatParticipantsErrors": { - "description": "Errors encountered during the addition of the chat participant to the chat thread.", - "required": [ - "invalidParticipants" - ], - "type": "object", - "properties": { - "invalidParticipants": { - "description": "The participants that failed to be added to the chat thread.", - "type": "array", - "items": { - "$ref": "#/definitions/Error" - } - } - } - }, - "AddChatParticipantsResult": { - "description": "Result of the add chat participants operation.", - "type": "object", - "properties": { - "errors": { - "$ref": "#/definitions/AddChatParticipantsErrors" - } - } - }, - "CreateChatThreadRequest": { - "description": "Request payload for creating a chat thread.", - "required": [ - "participants", - "topic" - ], - "type": "object", - "properties": { - "topic": { - "description": "The chat thread topic.", - "type": "string", - "example": "Lunch Thread" - }, - "participants": { - "description": "Participants to be added to the chat thread.", - "type": "array", - "items": { - "$ref": "#/definitions/ChatParticipant" - } - } - } - }, - "ChatThread": { - "description": "Chat thread.", - "required": [ - "createdByCommunicationIdentifier", - "createdOn", - "id", - "topic" - ], - "type": "object", - "properties": { - "id": { - "description": "Chat thread id.", - "type": "string", - "example": "19:uni01_uy5ucb66ugp3lrhe7pxso6xx4hsmm3dl6eyjfefv2n6x3rrurpea@thread.v2" - }, - "topic": { - "description": "Chat thread topic.", - "type": "string", - "example": "Lunch Chat thread" - }, - "createdOn": { - "format": "date-time", - "description": "The timestamp when the chat thread was created. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", - "type": "string", - "example": "2020-10-30T10:50:50Z" - }, - "createdByCommunicationIdentifier": { - "$ref": "#/definitions/CommunicationIdentifierModel" - }, - "deletedOn": { - "format": "date-time", - "description": "The timestamp when the chat thread was deleted. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", - "type": "string", - "example": "2020-10-30T10:50:50Z" - } - } - }, - "CreateChatThreadErrors": { - "description": "Errors encountered during the creation of the chat thread.", - "type": "object", - "properties": { - "invalidParticipants": { - "description": "The participants that failed to be added to the chat thread.", - "type": "array", - "items": { - "$ref": "#/definitions/Error" - }, - "readOnly": true - } - } - }, - "CreateChatThreadResult": { - "description": "Result of the create chat thread operation.", - "type": "object", - "properties": { - "chatThread": { - "$ref": "#/definitions/ChatThread" - }, - "errors": { - "$ref": "#/definitions/CreateChatThreadErrors" - } - } - }, - "ChatThreadInfo": { - "description": "Summary information of a chat thread.", - "required": [ - "id", - "topic" - ], - "type": "object", - "properties": { - "id": { - "description": "Chat thread id.", - "type": "string", - "example": "19:uni01_uy5ucb66ugp3lrhe7pxso6xx4hsmm3dl6eyjfefv2n6x3rrurpea@thread.v2" - }, - "topic": { - "description": "Chat thread topic.", - "type": "string", - "example": "Lunch Chat thread" - }, - "deletedOn": { - "format": "date-time", - "description": "The timestamp when the chat thread was deleted. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", - "type": "string", - "example": "2020-10-30T10:50:50Z" - }, - "lastMessageReceivedOn": { - "format": "date-time", - "description": "The timestamp when the last message arrived at the server. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", - "type": "string", - "readOnly": true, - "example": "2020-10-30T10:50:50Z" - } - } - }, - "ChatThreadsInfoCollection": { - "description": "Collection of chat threads.", - "required": [ - "value" - ], - "type": "object", - "properties": { - "value": { - "description": "Collection of chat threads.", - "type": "array", - "items": { - "$ref": "#/definitions/ChatThreadInfo" - } - }, - "nextLink": { - "description": "If there are more chat threads that can be retrieved, the next link will be populated.", - "type": "string", - "readOnly": true - } - } - }, - "UpdateChatThreadRequest": { - "description": "Request payload for updating a chat thread.", - "type": "object", - "properties": { - "topic": { - "description": "Chat thread topic.", - "type": "string", - "example": "Lunch Thread" - } - } - } - }, - "parameters": { - "ApiVersionParameter": { - "in": "query", - "name": "api-version", - "description": "Version of API to invoke.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - }, - "Endpoint": { - "in": "path", - "name": "endpoint", - "description": "The endpoint of the Azure Communication resource.", - "required": true, - "type": "string", - "x-ms-skip-url-encoding": true, - "x-ms-parameter-location": "client" - } - }, - "securityDefinitions": { - "Authorization": { - "type": "apiKey", - "name": "Authorization", - "in": "header", - "description": "An ACS (Azure Communication Services) user access token." - } - }, - "security": [ - { - "Authorization": [] - } - ], - "x-ms-parameterized-host": { - "hostTemplate": "{endpoint}", - "useSchemePrefix": false, - "parameters": [ - { - "$ref": "#/parameters/Endpoint" - } - ] - } -} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-03-01-preview5/communicationserviceschat.json b/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-03-01-preview5/communicationserviceschat.json deleted file mode 100644 index 73b36b427f09..000000000000 --- a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2021-03-01-preview5/communicationserviceschat.json +++ /dev/null @@ -1,1690 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "Azure Communication Chat Service", - "description": "Azure Communication Chat Service", - "version": "2021-03-01-preview5" - }, - "paths": { - "/chat/threads/{chatThreadId}/readReceipts": { - "get": { - "tags": [ - "Threads" - ], - "summary": "Gets chat message read receipts for a thread.", - "operationId": "ChatThread_ListChatReadReceipts", - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "chatThreadId", - "description": "Thread id to get the chat message read receipts for.", - "required": true, - "type": "string" - }, - { - "in": "query", - "name": "maxPageSize", - "description": "The maximum number of chat message read receipts to be returned per page.", - "type": "integer", - "format": "int32" - }, - { - "in": "query", - "name": "skip", - "description": "Skips chat message read receipts up to a specified position in response.", - "type": "integer", - "format": "int32" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Request successful. The action returns the requested `ChatMessageReadReceipt` resources.", - "schema": { - "$ref": "#/definitions/ChatMessageReadReceiptsCollection" - } - }, - "401": { - "description": "Unauthorized.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - }, - "403": { - "description": "Forbidden.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - }, - "429": { - "description": "Too many requests.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - }, - "503": { - "description": "Service unavailable.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - } - }, - "x-ms-examples": { - "Get thread read receipts with pagination (max page size)": { - "$ref": "./examples/Conversations_ListChatReadReceiptsWithPageSize.json" - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink", - "itemName": "value" - } - }, - "post": { - "tags": [ - "Threads" - ], - "summary": "Sends a read receipt event to a thread, on behalf of a user.", - "operationId": "ChatThread_SendChatReadReceipt", - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "chatThreadId", - "description": "Thread id to send the read receipt event to.", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "in": "body", - "name": "sendReadReceiptRequest", - "description": "Read receipt details.", - "required": true, - "schema": { - "$ref": "#/definitions/SendReadReceiptRequest" - } - } - ], - "responses": { - "200": { - "description": "Request successful." - }, - "401": { - "description": "Unauthorized.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - }, - "403": { - "description": "Forbidden.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - }, - "429": { - "description": "Too many requests.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - }, - "503": { - "description": "Service unavailable.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - } - }, - "x-ms-examples": { - "Send read receipt": { - "$ref": "./examples/Conversations_SendChatReadReceipt.json" - } - } - } - }, - "/chat/threads/{chatThreadId}/messages": { - "post": { - "tags": [ - "Messages" - ], - "summary": "Sends a message to a thread.", - "operationId": "ChatThread_SendChatMessage", - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "chatThreadId", - "description": "The thread id to send the message to.", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "in": "body", - "name": "sendChatMessageRequest", - "description": "Details of the message to send.", - "required": true, - "schema": { - "$ref": "#/definitions/SendChatMessageRequest" - } - } - ], - "responses": { - "201": { - "description": "Message sent, the `Location` header contains the URL for the newly sent message.", - "schema": { - "$ref": "#/definitions/SendChatMessageResult" - } - }, - "401": { - "description": "Unauthorized.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - }, - "403": { - "description": "Forbidden.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - }, - "429": { - "description": "Too many requests.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - }, - "503": { - "description": "Service unavailable.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - } - }, - "x-ms-examples": { - "Send Message": { - "$ref": "./examples/Messages_SendChatMessage.json" - } - } - }, - "get": { - "tags": [ - "Messages" - ], - "summary": "Gets a list of messages from a thread.", - "operationId": "ChatThread_ListChatMessages", - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "chatThreadId", - "description": "The thread id of the message.", - "required": true, - "type": "string" - }, - { - "in": "query", - "name": "maxPageSize", - "description": "The maximum number of messages to be returned per page.", - "type": "integer", - "format": "int32" - }, - { - "in": "query", - "name": "startTime", - "description": "The earliest point in time to get messages up to. The timestamp should be in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", - "type": "string", - "format": "date-time" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/ChatMessagesCollection" - } - }, - "401": { - "description": "Unauthorized.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - }, - "403": { - "description": "Forbidden.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - }, - "429": { - "description": "Too many requests.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - }, - "503": { - "description": "Service unavailable.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - } - }, - "x-ms-examples": { - "Get messages with pagination (max page size)": { - "$ref": "./examples/Messages_ListChatMessagesWithPageSize.json" - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink", - "itemName": "value" - } - } - }, - "/chat/threads/{chatThreadId}/messages/{chatMessageId}": { - "get": { - "tags": [ - "Messages" - ], - "summary": "Gets a message by id.", - "operationId": "ChatThread_GetChatMessage", - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "chatThreadId", - "description": "The thread id to which the message was sent.", - "required": true, - "type": "string" - }, - { - "in": "path", - "name": "chatMessageId", - "description": "The message id.", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Request successful. The action returns a `Message` resource.", - "schema": { - "$ref": "#/definitions/ChatMessage" - } - }, - "401": { - "description": "Unauthorized.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - }, - "403": { - "description": "Forbidden.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - }, - "429": { - "description": "Too many requests.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - }, - "503": { - "description": "Service unavailable.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - } - }, - "x-ms-examples": { - "Get Message": { - "$ref": "./examples/Messages_GetChatMessage.json" - } - } - }, - "patch": { - "tags": [ - "Messages" - ], - "summary": "Updates a message.", - "operationId": "ChatThread_UpdateChatMessage", - "consumes": [ - "application/merge-patch+json" - ], - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "chatThreadId", - "description": "The thread id to which the message was sent.", - "required": true, - "type": "string" - }, - { - "in": "path", - "name": "chatMessageId", - "description": "The message id.", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "in": "body", - "name": "updateChatMessageRequest", - "description": "Details of the request to update the message.", - "required": true, - "schema": { - "$ref": "#/definitions/UpdateChatMessageRequest" - } - } - ], - "responses": { - "204": { - "description": "Message is successfully updated." - }, - "401": { - "description": "Unauthorized.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - }, - "403": { - "description": "Forbidden.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - }, - "429": { - "description": "Too many requests.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - }, - "503": { - "description": "Service unavailable.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - } - }, - "x-ms-examples": { - "Update message content": { - "$ref": "./examples/Messages_UpdateChatMessage.json" - } - } - }, - "delete": { - "tags": [ - "Messages" - ], - "summary": "Deletes a message.", - "operationId": "ChatThread_DeleteChatMessage", - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "chatThreadId", - "description": "The thread id to which the message was sent.", - "required": true, - "type": "string" - }, - { - "in": "path", - "name": "chatMessageId", - "description": "The message id.", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "204": { - "description": "Request successful." - }, - "401": { - "description": "Unauthorized.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - }, - "403": { - "description": "Forbidden.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - }, - "429": { - "description": "Too many requests.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - }, - "503": { - "description": "Service unavailable.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - } - }, - "x-ms-examples": { - "Delete message": { - "$ref": "./examples/Messages_DeleteChatMessage.json" - } - } - } - }, - "/chat/threads/{chatThreadId}/typing": { - "post": { - "tags": [ - "Messages" - ], - "summary": "Posts a typing event to a thread, on behalf of a user.", - "operationId": "ChatThread_SendTypingNotification", - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "chatThreadId", - "description": "Id of the thread.", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Request successful." - }, - "401": { - "description": "Unauthorized.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - }, - "403": { - "description": "Forbidden.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - }, - "429": { - "description": "Too many requests.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - }, - "503": { - "description": "Service unavailable.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - } - }, - "x-ms-examples": { - "Post typing event to a thread": { - "$ref": "./examples/Messages_SendTypingNotification.json" - } - } - } - }, - "/chat/threads/{chatThreadId}/participants": { - "get": { - "tags": [ - "Participants" - ], - "summary": "Gets the participants of a thread.", - "operationId": "ChatThread_ListChatParticipants", - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "chatThreadId", - "description": "Thread id to get participants for.", - "required": true, - "type": "string" - }, - { - "in": "query", - "name": "maxPageSize", - "description": "The maximum number of participants to be returned per page.", - "type": "integer", - "format": "int32" - }, - { - "in": "query", - "name": "skip", - "description": "Skips participants up to a specified position in response.", - "type": "integer", - "format": "int32" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Request successful. The action returns the participants of a thread.", - "schema": { - "$ref": "#/definitions/ChatParticipantsCollection" - } - }, - "401": { - "description": "Unauthorized.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - }, - "403": { - "description": "Forbidden.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - }, - "429": { - "description": "Too many requests.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - }, - "503": { - "description": "Service unavailable.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - } - }, - "x-ms-examples": { - "Get participants with pagination (max page size)": { - "$ref": "./examples/Participants_ListChatParticipantsWithPageSize.json" - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink", - "itemName": "value" - } - } - }, - "/chat/threads/{chatThreadId}/participants/:remove": { - "post": { - "tags": [ - "Participants" - ], - "summary": "Remove a participant from a thread.", - "operationId": "ChatThread_RemoveChatParticipant", - "consumes": [ - "application/json", - "application/merge-patch+json" - ], - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "chatThreadId", - "description": "Thread id to remove the participant from.", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "in": "body", - "name": "participantCommunicationIdentifier", - "description": "Id of the thread participant to remove from the thread.", - "required": true, - "schema": { - "$ref": "#/definitions/CommunicationIdentifierModel" - } - } - ], - "responses": { - "204": { - "description": "Request successful." - }, - "401": { - "description": "Unauthorized.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - }, - "403": { - "description": "Forbidden.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - }, - "429": { - "description": "Too many requests.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - }, - "503": { - "description": "Service unavailable.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - } - }, - "x-ms-examples": { - "Remove participant": { - "$ref": "./examples/Participants_RemoveChatParticipant.json" - } - } - } - }, - "/chat/threads/{chatThreadId}/participants/:add": { - "post": { - "tags": [ - "Participants" - ], - "summary": "Adds thread participants to a thread. If participants already exist, no change occurs.", - "operationId": "ChatThread_AddChatParticipants", - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "chatThreadId", - "description": "Id of the thread to add participants to.", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "in": "body", - "name": "addChatParticipantsRequest", - "description": "Thread participants to be added to the thread.", - "required": true, - "schema": { - "$ref": "#/definitions/AddChatParticipantsRequest" - } - } - ], - "responses": { - "201": { - "description": "The participants were successfully added.", - "schema": { - "$ref": "#/definitions/AddChatParticipantsResult" - } - }, - "401": { - "description": "Unauthorized.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - }, - "403": { - "description": "Forbidden.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - }, - "429": { - "description": "Too many requests.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - }, - "503": { - "description": "Service unavailable.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - } - }, - "x-ms-examples": { - "Add participants": { - "$ref": "./examples/Participants_AddChatParticipants.json" - } - } - } - }, - "/chat/threads": { - "post": { - "tags": [ - "Threads" - ], - "summary": "Creates a chat thread.", - "operationId": "Chat_CreateChatThread", - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "header", - "name": "idempotency-token", - "description": "If specified, the client directs that the request is repeatable; that is, that the client can make the request multiple times with the same Idempotency-Token and get back an appropriate response without the server executing the request multiple times. The value of the Idempotency-Token is an opaque string representing a client-generated, globally unique for all time, identifier for the request. It is recommended to use version 4 (random) UUIDs.", - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "in": "body", - "name": "createChatThreadRequest", - "description": "Request payload for creating a chat thread.", - "required": true, - "schema": { - "$ref": "#/definitions/CreateChatThreadRequest" - } - } - ], - "responses": { - "201": { - "description": "Thread created, the `Location` header would contain the URL for the newly created thread.", - "schema": { - "$ref": "#/definitions/CreateChatThreadResult" - } - }, - "401": { - "description": "Unauthorized.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - }, - "403": { - "description": "Forbidden.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - }, - "429": { - "description": "Too many requests.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - }, - "503": { - "description": "Service unavailable.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - } - }, - "x-ms-examples": { - "Create chat thread": { - "$ref": "./examples/Threads_CreateChatThread.json" - }, - "Create chat thread with repeatability request id header": { - "$ref": "./examples/Threads_CreateChatThreadWithIdempotencyToken.json" - } - } - }, - "get": { - "tags": [ - "Threads" - ], - "summary": "Gets the list of chat threads of a user.", - "operationId": "Chat_ListChatThreads", - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "query", - "name": "maxPageSize", - "description": "The maximum number of chat threads returned per page.", - "type": "integer", - "format": "int32" - }, - { - "in": "query", - "name": "startTime", - "description": "The earliest point in time to get chat threads up to. The timestamp should be in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", - "type": "string", - "format": "date-time" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Request successful. The action returns a `GetThreadsResponse` resource.", - "schema": { - "$ref": "#/definitions/ChatThreadsItemCollection" - } - }, - "401": { - "description": "Unauthorized.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - }, - "403": { - "description": "Forbidden.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - }, - "429": { - "description": "Too many requests.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - }, - "503": { - "description": "Service unavailable.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - } - }, - "x-ms-examples": { - "Get threads with pagination (Max Page Size)": { - "$ref": "./examples/Threads_ListChatThreadsWithPageSize.json" - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink", - "itemName": "value" - } - } - }, - "/chat/threads/{chatThreadId}": { - "patch": { - "tags": [ - "Threads" - ], - "summary": "Updates a thread's properties.", - "operationId": "ChatThread_UpdateChatThreadProperties", - "consumes": [ - "application/merge-patch+json" - ], - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "chatThreadId", - "description": "The id of the thread to update.", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "in": "body", - "name": "updateChatThreadRequest", - "description": "Request payload for updating a chat thread.", - "required": true, - "schema": { - "$ref": "#/definitions/UpdateChatThreadRequest" - } - } - ], - "responses": { - "204": { - "description": "Thread was successfully updated." - }, - "401": { - "description": "Unauthorized.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - }, - "403": { - "description": "Forbidden.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - }, - "429": { - "description": "Too many requests.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - }, - "503": { - "description": "Service unavailable.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - } - }, - "x-ms-examples": { - "Update chat thread topic": { - "$ref": "./examples/Threads_UpdateChatThreadTopic.json" - } - } - }, - "get": { - "tags": [ - "Threads" - ], - "summary": "Gets a chat thread's properties.", - "operationId": "ChatThread_GetChatThreadProperties", - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "chatThreadId", - "description": "Id of the thread.", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Request successful. The action returns a chat thread.", - "schema": { - "$ref": "#/definitions/ChatThreadProperties" - } - }, - "401": { - "description": "Unauthorized.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - }, - "403": { - "description": "Forbidden.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - }, - "429": { - "description": "Too many requests.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - }, - "503": { - "description": "Service unavailable.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - } - }, - "x-ms-examples": { - "Get chat thread": { - "$ref": "./examples/Threads_GetChatThread.json" - } - } - }, - "delete": { - "tags": [ - "Threads" - ], - "summary": "Deletes a thread.", - "operationId": "Chat_DeleteChatThread", - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "chatThreadId", - "description": "Id of the thread to be deleted.", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "204": { - "description": "Request successful." - }, - "401": { - "description": "Unauthorized.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - }, - "403": { - "description": "Forbidden.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - }, - "429": { - "description": "Too many requests.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - }, - "503": { - "description": "Service unavailable.", - "schema": { - "$ref": "#/definitions/CommunicationErrorResponse" - }, - "x-ms-error-response": true - } - }, - "x-ms-examples": { - "Delete chat thread": { - "$ref": "./examples/Threads_DeleteChatThread.json" - } - } - } - } - }, - "definitions": { - "CommunicationUserIdentifierModel": { - "$ref": "../../../Microsoft.CommunicationServicesCommon/stable/2021-03-07/common.json#/definitions/CommunicationUserIdentifierModel" - }, - "CommunicationCloudEnvironment": { - "$ref": "../../../Microsoft.CommunicationServicesCommon/stable/2021-03-07/common.json#/definitions/CommunicationCloudEnvironmentModel" - }, - "MicrosoftTeamsUserIdentifierModel": { - "$ref": "../../../Microsoft.CommunicationServicesCommon/stable/2021-03-07/common.json#/definitions/MicrosoftTeamsUserIdentifierModel" - }, - "CommunicationIdentifierModel": { - "$ref": "../../../Microsoft.CommunicationServicesCommon/stable/2021-03-07/common.json#/definitions/CommunicationIdentifierModel" - }, - "ChatMessageReadReceipt": { - "description": "A chat message read receipt indicates the time a chat message was read by a recipient.", - "required": [ - "chatMessageId", - "readOn", - "senderCommunicationIdentifier" - ], - "type": "object", - "properties": { - "senderCommunicationIdentifier": { - "$ref": "#/definitions/CommunicationIdentifierModel" - }, - "chatMessageId": { - "description": "Id of the chat message that has been read. This id is generated by the server.", - "type": "string", - "example": "1591137790240" - }, - "readOn": { - "format": "date-time", - "description": "The time at which the message was read. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", - "type": "string", - "example": "2020-10-30T10:50:50Z" - } - } - }, - "ChatMessageReadReceiptsCollection": { - "description": "A paged collection of chat message read receipts.", - "required": [ - "value" - ], - "type": "object", - "properties": { - "value": { - "description": "Collection of chat message read receipts.", - "type": "array", - "items": { - "$ref": "#/definitions/ChatMessageReadReceipt" - } - }, - "nextLink": { - "description": "If there are more chat message read receipts that can be retrieved, the next link will be populated.", - "type": "string", - "readOnly": true - } - } - }, - "CommunicationError": { - "$ref": "../../../Microsoft.CommunicationServicesCommon/stable/2021-03-07/common.json#/definitions/CommunicationError" - }, - "CommunicationErrorResponse": { - "$ref": "../../../Microsoft.CommunicationServicesCommon/stable/2021-03-07/common.json#/definitions/CommunicationErrorResponse" - }, - "SendReadReceiptRequest": { - "description": "Request payload for sending a read receipt.", - "required": [ - "chatMessageId" - ], - "type": "object", - "properties": { - "chatMessageId": { - "description": "Id of the latest chat message read by the user.", - "type": "string", - "example": "1592435762364" - } - } - }, - "ChatMessageType": { - "description": "The chat message type.", - "enum": [ - "text", - "html", - "topicUpdated", - "participantAdded", - "participantRemoved" - ], - "type": "string", - "x-ms-enum": { - "name": "ChatMessageType", - "modelAsString": true - } - }, - "SendChatMessageRequest": { - "description": "Details of the message to send.", - "required": [ - "content" - ], - "type": "object", - "properties": { - "content": { - "description": "Chat message content.", - "type": "string", - "example": "Come one guys, lets go for lunch together." - }, - "senderDisplayName": { - "description": "The display name of the chat message sender. This property is used to populate sender name for push notifications.", - "type": "string", - "example": "Bob Admin" - }, - "type": { - "$ref": "#/definitions/ChatMessageType" - } - } - }, - "SendChatMessageResult": { - "description": "Result of the send message operation.", - "required": [ - "id" - ], - "type": "object", - "properties": { - "id": { - "description": "A server-generated message id.", - "type": "string", - "example": "123456789" - } - } - }, - "ChatParticipant": { - "description": "A participant of the chat thread.", - "required": [ - "communicationIdentifier" - ], - "type": "object", - "properties": { - "communicationIdentifier": { - "$ref": "#/definitions/CommunicationIdentifierModel" - }, - "displayName": { - "description": "Display name for the chat participant.", - "type": "string", - "example": "Bob" - }, - "shareHistoryTime": { - "format": "date-time", - "description": "Time from which the chat history is shared with the participant. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", - "type": "string", - "example": "2020-10-30T10:50:50Z" - } - } - }, - "ChatMessageContent": { - "description": "Content of a chat message.", - "type": "object", - "properties": { - "message": { - "description": "Chat message content for messages of types text or html.", - "type": "string", - "example": "Come one guys, lets go for lunch together." - }, - "topic": { - "description": "Chat message content for messages of type topicUpdated.", - "type": "string", - "example": "Lunch Chat thread" - }, - "participants": { - "description": "Chat message content for messages of types participantAdded or participantRemoved.", - "type": "array", - "items": { - "$ref": "#/definitions/ChatParticipant" - } - }, - "initiatorCommunicationIdentifier": { - "$ref": "#/definitions/CommunicationIdentifierModel" - } - } - }, - "ChatMessage": { - "description": "Chat message.", - "required": [ - "createdOn", - "id", - "sequenceId", - "type", - "version" - ], - "type": "object", - "properties": { - "id": { - "description": "The id of the chat message. This id is server generated.", - "type": "string", - "example": "123456789" - }, - "type": { - "$ref": "#/definitions/ChatMessageType" - }, - "sequenceId": { - "description": "Sequence of the chat message in the conversation.", - "type": "string" - }, - "version": { - "description": "Version of the chat message.", - "type": "string" - }, - "content": { - "$ref": "#/definitions/ChatMessageContent" - }, - "senderDisplayName": { - "description": "The display name of the chat message sender. This property is used to populate sender name for push notifications.", - "type": "string", - "example": "Jane" - }, - "createdOn": { - "format": "date-time", - "description": "The timestamp when the chat message arrived at the server. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", - "type": "string", - "example": "2020-10-30T10:50:50Z" - }, - "senderCommunicationIdentifier": { - "$ref": "#/definitions/CommunicationIdentifierModel" - }, - "deletedOn": { - "format": "date-time", - "description": "The timestamp (if applicable) when the message was deleted. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", - "type": "string", - "example": "2020-10-30T10:50:50Z" - }, - "editedOn": { - "format": "date-time", - "description": "The last timestamp (if applicable) when the message was edited. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", - "type": "string", - "example": "2020-10-30T10:50:50Z" - } - } - }, - "ChatMessagesCollection": { - "description": "Collection of chat messages for a particular chat thread.", - "required": [ - "value" - ], - "type": "object", - "properties": { - "value": { - "description": "Collection of chat messages.", - "type": "array", - "items": { - "$ref": "#/definitions/ChatMessage" - } - }, - "nextLink": { - "description": "If there are more chat messages that can be retrieved, the next link will be populated.", - "type": "string", - "readOnly": true - } - } - }, - "UpdateChatMessageRequest": { - "description": "Request payload for updating a chat message.", - "type": "object", - "properties": { - "content": { - "description": "Chat message content.", - "type": "string", - "example": "Let's go for lunch together." - } - } - }, - "ChatParticipantsCollection": { - "description": "Collection of participants belong to a particular thread.", - "required": [ - "value" - ], - "type": "object", - "properties": { - "value": { - "description": "Chat participants.", - "type": "array", - "items": { - "$ref": "#/definitions/ChatParticipant" - } - }, - "nextLink": { - "description": "If there are more chat participants that can be retrieved, the next link will be populated.", - "type": "string", - "readOnly": true - } - } - }, - "AddChatParticipantsRequest": { - "description": "Participants to be added to the thread.", - "required": [ - "participants" - ], - "type": "object", - "properties": { - "participants": { - "description": "Participants to add to a chat thread.", - "type": "array", - "items": { - "$ref": "#/definitions/ChatParticipant" - } - } - } - }, - "AddChatParticipantsResult": { - "description": "Result of the add chat participants operation.", - "type": "object", - "properties": { - "invalidParticipants": { - "description": "The participants that failed to be added to the chat thread.", - "type": "array", - "items": { - "$ref": "#/definitions/CommunicationError" - }, - "readOnly": true - } - } - }, - "CreateChatThreadRequest": { - "description": "Request payload for creating a chat thread.", - "required": [ - "topic" - ], - "type": "object", - "properties": { - "topic": { - "description": "The chat thread topic.", - "type": "string", - "example": "Lunch Thread" - }, - "participants": { - "description": "Participants to be added to the chat thread.", - "type": "array", - "items": { - "$ref": "#/definitions/ChatParticipant" - } - } - } - }, - "ChatThreadProperties": { - "description": "Chat thread.", - "required": [ - "createdByCommunicationIdentifier", - "createdOn", - "id", - "topic" - ], - "type": "object", - "properties": { - "id": { - "description": "Chat thread id.", - "type": "string", - "example": "19:uni01_uy5ucb66ugp3lrhe7pxso6xx4hsmm3dl6eyjfefv2n6x3rrurpea@thread.v2" - }, - "topic": { - "description": "Chat thread topic.", - "type": "string", - "example": "Lunch Chat thread" - }, - "createdOn": { - "format": "date-time", - "description": "The timestamp when the chat thread was created. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", - "type": "string", - "example": "2020-10-30T10:50:50Z" - }, - "createdByCommunicationIdentifier": { - "$ref": "#/definitions/CommunicationIdentifierModel" - }, - "deletedOn": { - "format": "date-time", - "description": "The timestamp when the chat thread was deleted. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", - "type": "string", - "example": "2020-10-30T10:50:50Z" - } - } - }, - "CreateChatThreadResult": { - "description": "Result of the create chat thread operation.", - "type": "object", - "properties": { - "chatThread": { - "$ref": "#/definitions/ChatThreadProperties" - }, - "invalidParticipants": { - "description": "The participants that failed to be added to the chat thread.", - "type": "array", - "items": { - "$ref": "#/definitions/CommunicationError" - }, - "readOnly": true - } - } - }, - "ChatThreadItem": { - "description": "Summary information of a chat thread.", - "required": [ - "id", - "topic" - ], - "type": "object", - "properties": { - "id": { - "description": "Chat thread id.", - "type": "string", - "example": "19:uni01_uy5ucb66ugp3lrhe7pxso6xx4hsmm3dl6eyjfefv2n6x3rrurpea@thread.v2" - }, - "topic": { - "description": "Chat thread topic.", - "type": "string", - "example": "Lunch Chat thread" - }, - "deletedOn": { - "format": "date-time", - "description": "The timestamp when the chat thread was deleted. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", - "type": "string", - "example": "2020-10-30T10:50:50Z" - }, - "lastMessageReceivedOn": { - "format": "date-time", - "description": "The timestamp when the last message arrived at the server. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.", - "type": "string", - "readOnly": true, - "example": "2020-10-30T10:50:50Z" - } - } - }, - "ChatThreadsItemCollection": { - "description": "Collection of chat threads.", - "required": [ - "value" - ], - "type": "object", - "properties": { - "value": { - "description": "Collection of chat threads.", - "type": "array", - "items": { - "$ref": "#/definitions/ChatThreadItem" - } - }, - "nextLink": { - "description": "If there are more chat threads that can be retrieved, the next link will be populated.", - "type": "string", - "readOnly": true - } - } - }, - "UpdateChatThreadRequest": { - "description": "Request payload for updating a chat thread.", - "type": "object", - "properties": { - "topic": { - "description": "Chat thread topic.", - "type": "string", - "example": "Lunch Thread" - } - } - } - }, - "parameters": { - "ApiVersionParameter": { - "in": "query", - "name": "api-version", - "description": "Version of API to invoke.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - }, - "Endpoint": { - "in": "path", - "name": "endpoint", - "description": "The endpoint of the Azure Communication resource.", - "required": true, - "type": "string", - "x-ms-skip-url-encoding": true, - "x-ms-parameter-location": "client" - } - }, - "securityDefinitions": { - "Authorization": { - "type": "apiKey", - "name": "Authorization", - "in": "header", - "description": "An ACS (Azure Communication Services) user access token." - } - }, - "security": [ - { - "Authorization": [] - } - ], - "x-ms-parameterized-host": { - "hostTemplate": "{endpoint}", - "useSchemePrefix": false, - "parameters": [ - { - "$ref": "#/parameters/Endpoint" - } - ] - } -} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesIdentity/preview/2021-02-22-preview1/CommunicationIdentity.json b/specification/communication/data-plane/Microsoft.CommunicationServicesIdentity/preview/2021-02-22-preview1/CommunicationIdentity.json deleted file mode 100644 index 3a1d05a954ca..000000000000 --- a/specification/communication/data-plane/Microsoft.CommunicationServicesIdentity/preview/2021-02-22-preview1/CommunicationIdentity.json +++ /dev/null @@ -1,313 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "CommunicationIdentityClient", - "description": "Azure Communication Identity Service", - "version": "2021-02-22-preview1" - }, - "paths": { - "/identities": { - "post": { - "tags": [ - "Identity" - ], - "summary": "Create a new identity.", - "operationId": "CommunicationIdentity_Create", - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "in": "body", - "name": "body", - "schema": { - "$ref": "#/definitions/CommunicationIdentityCreateRequest" - } - } - ], - "responses": { - "default": { - "description": "Error", - "schema": { - "$ref": "../../../Microsoft.CommunicationServicesCommon/stable/2021-03-07/common.json#/definitions/CommunicationErrorResponse" - } - }, - "201": { - "description": "Created - Returns the created identity.", - "schema": { - "$ref": "#/definitions/CommunicationIdentityAccessTokenResult" - } - } - }, - "x-ms-examples": { - "Create an Identity": { - "$ref": "./examples/CreateIdentity.json" - } - } - } - }, - "/identities/{id}": { - "delete": { - "tags": [ - "Identity" - ], - "summary": "Delete the identity, revoke all tokens for the identity and delete all associated data.", - "operationId": "CommunicationIdentity_Delete", - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "id", - "description": "Identifier of the identity to be deleted.", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "default": { - "description": "Error", - "schema": { - "$ref": "../../../Microsoft.CommunicationServicesCommon/stable/2021-03-07/common.json#/definitions/CommunicationErrorResponse" - } - }, - "204": { - "description": "Success" - } - }, - "x-ms-examples": { - "Delete an identity": { - "$ref": "./examples/DeleteIdentity.json" - } - } - } - }, - "/identities/{id}/:revokeAccessTokens": { - "post": { - "tags": [ - "Identity" - ], - "summary": "Revoke all access tokens for the specific identity.", - "operationId": "CommunicationIdentity_RevokeAccessTokens", - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "id", - "description": "Identifier of the identity.", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "default": { - "description": "Error", - "schema": { - "$ref": "../../../Microsoft.CommunicationServicesCommon/stable/2021-03-07/common.json#/definitions/CommunicationErrorResponse" - } - }, - "204": { - "description": "Success" - } - }, - "x-ms-examples": { - "Revoke access tokens": { - "$ref": "./examples/RevokeAccessTokens.json" - } - } - } - }, - "/identities/{id}/:issueAccessToken": { - "post": { - "tags": [ - "Token" - ], - "summary": "Issue a new token for an identity.", - "operationId": "CommunicationIdentity_IssueAccessToken", - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "id", - "description": "Identifier of the identity to issue token for.", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "in": "body", - "name": "body", - "description": "Requesting scopes for the new token.", - "required": true, - "schema": { - "$ref": "#/definitions/CommunicationIdentityAccessTokenRequest" - } - } - ], - "responses": { - "default": { - "description": "Error", - "schema": { - "$ref": "../../../Microsoft.CommunicationServicesCommon/stable/2021-03-07/common.json#/definitions/CommunicationErrorResponse" - } - }, - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/CommunicationIdentityAccessToken" - } - } - }, - "x-ms-examples": { - "Issue an access token": { - "$ref": "./examples/IssueAccessToken.json" - } - } - } - } - }, - "definitions": { - "CommunicationIdentityTokenScope": { - "description": "List of scopes for an access token.", - "enum": [ - "chat", - "voip" - ], - "type": "string", - "x-ms-enum": { - "name": "CommunicationIdentityTokenScope", - "modelAsString": true - } - }, - "CommunicationIdentityCreateRequest": { - "type": "object", - "properties": { - "createTokenWithScopes": { - "description": "Also create access token for the created identity.", - "type": "array", - "items": { - "$ref": "#/definitions/CommunicationIdentityTokenScope" - } - } - } - }, - "CommunicationIdentity": { - "description": "A communication identity.", - "required": [ - "id" - ], - "type": "object", - "properties": { - "id": { - "description": "Identifier of the identity.", - "type": "string" - } - } - }, - "CommunicationIdentityAccessToken": { - "description": "An access token.", - "required": [ - "expiresOn", - "token" - ], - "type": "object", - "properties": { - "token": { - "description": "The access token issued for the identity.", - "type": "string" - }, - "expiresOn": { - "format": "date-time", - "description": "The expiry time of the token.", - "type": "string" - } - } - }, - "CommunicationIdentityAccessTokenResult": { - "description": "A communication identity with access token.", - "required": [ - "identity" - ], - "type": "object", - "properties": { - "identity": { - "$ref": "#/definitions/CommunicationIdentity" - }, - "accessToken": { - "$ref": "#/definitions/CommunicationIdentityAccessToken" - } - } - }, - "CommunicationIdentityAccessTokenRequest": { - "required": [ - "scopes" - ], - "type": "object", - "properties": { - "scopes": { - "description": "List of scopes attached to the token.", - "type": "array", - "items": { - "$ref": "#/definitions/CommunicationIdentityTokenScope" - } - } - } - } - }, - "parameters": { - "ApiVersionParameter": { - "in": "query", - "name": "api-version", - "description": "Version of API to invoke.", - "required": true, - "type": "string" - } - }, - "securityDefinitions": { - "azure_auth": { - "type": "oauth2", - "flow": "implicit", - "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", - "scopes": { - "user_impersonation": "impersonate your user account" - } - } - }, - "x-ms-parameterized-host": { - "hostTemplate": "{endpoint}", - "useSchemePrefix": false, - "parameters": [ - { - "name": "endpoint", - "description": "The communication resource, for example https://my-resource.communication.azure.com", - "required": true, - "type": "string", - "in": "path", - "x-ms-skip-url-encoding": true, - "x-ms-parameter-location": "client" - } - ] - } -} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesIdentity/stable/2021-03-07/CommunicationIdentity.json b/specification/communication/data-plane/Microsoft.CommunicationServicesIdentity/stable/2021-03-07/CommunicationIdentity.json deleted file mode 100644 index e227da9f4637..000000000000 --- a/specification/communication/data-plane/Microsoft.CommunicationServicesIdentity/stable/2021-03-07/CommunicationIdentity.json +++ /dev/null @@ -1,313 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "CommunicationIdentityClient", - "description": "Azure Communication Identity Service", - "version": "2021-03-07" - }, - "paths": { - "/identities": { - "post": { - "tags": [ - "Identity" - ], - "summary": "Create a new identity.", - "operationId": "CommunicationIdentity_Create", - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "in": "body", - "name": "body", - "schema": { - "$ref": "#/definitions/CommunicationIdentityCreateRequest" - } - } - ], - "responses": { - "default": { - "description": "Error", - "schema": { - "$ref": "../../../Microsoft.CommunicationServicesCommon/stable/2021-03-07/common.json#/definitions/CommunicationErrorResponse" - } - }, - "201": { - "description": "Created - Returns the created identity.", - "schema": { - "$ref": "#/definitions/CommunicationIdentityAccessTokenResult" - } - } - }, - "x-ms-examples": { - "Create an Identity": { - "$ref": "./examples/CreateIdentity.json" - } - } - } - }, - "/identities/{id}": { - "delete": { - "tags": [ - "Identity" - ], - "summary": "Delete the identity, revoke all tokens for the identity and delete all associated data.", - "operationId": "CommunicationIdentity_Delete", - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "id", - "description": "Identifier of the identity to be deleted.", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "default": { - "description": "Error", - "schema": { - "$ref": "../../../Microsoft.CommunicationServicesCommon/stable/2021-03-07/common.json#/definitions/CommunicationErrorResponse" - } - }, - "204": { - "description": "Success" - } - }, - "x-ms-examples": { - "Delete an identity": { - "$ref": "./examples/DeleteIdentity.json" - } - } - } - }, - "/identities/{id}/:revokeAccessTokens": { - "post": { - "tags": [ - "Identity" - ], - "summary": "Revoke all access tokens for the specific identity.", - "operationId": "CommunicationIdentity_RevokeAccessTokens", - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "id", - "description": "Identifier of the identity.", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "default": { - "description": "Error", - "schema": { - "$ref": "../../../Microsoft.CommunicationServicesCommon/stable/2021-03-07/common.json#/definitions/CommunicationErrorResponse" - } - }, - "204": { - "description": "Success" - } - }, - "x-ms-examples": { - "Revoke access tokens": { - "$ref": "./examples/RevokeAccessTokens.json" - } - } - } - }, - "/identities/{id}/:issueAccessToken": { - "post": { - "tags": [ - "Token" - ], - "summary": "Issue a new token for an identity.", - "operationId": "CommunicationIdentity_IssueAccessToken", - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "path", - "name": "id", - "description": "Identifier of the identity to issue token for.", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "in": "body", - "name": "body", - "description": "Requesting scopes for the new token.", - "required": true, - "schema": { - "$ref": "#/definitions/CommunicationIdentityAccessTokenRequest" - } - } - ], - "responses": { - "default": { - "description": "Error", - "schema": { - "$ref": "../../../Microsoft.CommunicationServicesCommon/stable/2021-03-07/common.json#/definitions/CommunicationErrorResponse" - } - }, - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/CommunicationIdentityAccessToken" - } - } - }, - "x-ms-examples": { - "Issue an access token": { - "$ref": "./examples/IssueAccessToken.json" - } - } - } - } - }, - "definitions": { - "CommunicationIdentityTokenScope": { - "description": "List of scopes for an access token.", - "enum": [ - "chat", - "voip" - ], - "type": "string", - "x-ms-enum": { - "name": "CommunicationIdentityTokenScope", - "modelAsString": true - } - }, - "CommunicationIdentityCreateRequest": { - "type": "object", - "properties": { - "createTokenWithScopes": { - "description": "Also create access token for the created identity.", - "type": "array", - "items": { - "$ref": "#/definitions/CommunicationIdentityTokenScope" - } - } - } - }, - "CommunicationIdentity": { - "description": "A communication identity.", - "required": [ - "id" - ], - "type": "object", - "properties": { - "id": { - "description": "Identifier of the identity.", - "type": "string" - } - } - }, - "CommunicationIdentityAccessToken": { - "description": "An access token.", - "required": [ - "expiresOn", - "token" - ], - "type": "object", - "properties": { - "token": { - "description": "The access token issued for the identity.", - "type": "string" - }, - "expiresOn": { - "format": "date-time", - "description": "The expiry time of the token.", - "type": "string" - } - } - }, - "CommunicationIdentityAccessTokenResult": { - "description": "A communication identity with access token.", - "required": [ - "identity" - ], - "type": "object", - "properties": { - "identity": { - "$ref": "#/definitions/CommunicationIdentity" - }, - "accessToken": { - "$ref": "#/definitions/CommunicationIdentityAccessToken" - } - } - }, - "CommunicationIdentityAccessTokenRequest": { - "required": [ - "scopes" - ], - "type": "object", - "properties": { - "scopes": { - "description": "List of scopes attached to the token.", - "type": "array", - "items": { - "$ref": "#/definitions/CommunicationIdentityTokenScope" - } - } - } - } - }, - "parameters": { - "ApiVersionParameter": { - "in": "query", - "name": "api-version", - "description": "Version of API to invoke.", - "required": true, - "type": "string" - } - }, - "securityDefinitions": { - "azure_auth": { - "type": "oauth2", - "flow": "implicit", - "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", - "scopes": { - "user_impersonation": "impersonate your user account" - } - } - }, - "x-ms-parameterized-host": { - "hostTemplate": "{endpoint}", - "useSchemePrefix": false, - "parameters": [ - { - "name": "endpoint", - "description": "The communication resource, for example https://my-resource.communication.azure.com", - "required": true, - "type": "string", - "in": "path", - "x-ms-skip-url-encoding": true, - "x-ms-parameter-location": "client" - } - ] - } -} diff --git a/specification/communication/data-plane/PhoneNumbers/readme.csharp.md b/specification/communication/data-plane/PhoneNumbers/readme.csharp.md new file mode 100644 index 000000000000..2efd3715cdc3 --- /dev/null +++ b/specification/communication/data-plane/PhoneNumbers/readme.csharp.md @@ -0,0 +1,15 @@ +## C + +These settings apply only when `--csharp` is specified on the command line. +Please also specify `--csharp-sdks-folder=`. + +```yaml $(csharp) +csharp: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 1 + clear-output-folder: true + client-side-validation: false + namespace: Microsoft.CommunicationServices + output-folder: $(csharp-sdks-folder)/communicationservices/management/Microsoft.CommunicationServices/GeneratedProtocol +``` diff --git a/specification/communication/data-plane/PhoneNumbers/readme.md b/specification/communication/data-plane/PhoneNumbers/readme.md new file mode 100644 index 000000000000..69bedd68901b --- /dev/null +++ b/specification/communication/data-plane/PhoneNumbers/readme.md @@ -0,0 +1,77 @@ +# communicationservices + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for communicationservices. + +## Getting Started + +To build the SDKs for My API, simply install AutoRest via `npm` (`npm install -g autorest`) and then run: + +> `autorest readme.md` + +To see additional help and options, run: + +> `autorest --help` + +For other options on installation see [Installing AutoRest](https://aka.ms/autorest/install) on the AutoRest github page. + +--- + +## Configuration + +### Basic Information + +These are the global settings for the communicationservices. + +```yaml +openapi-type: data-plane +tag: package-2020-07-20-preview1 +``` + +### Tag: package-phonenumber-2021-03-07 + +These settings apply only when `--tag=package-phonenumber-2021-03-07` is specified on the command line. + +```yaml $(tag) == 'package-phonenumber-2021-03-07' +input-file: + - stable/2021-03-07/phonenumbers.json +title: + Azure Communication Services +``` + +## Supression +``` yaml +directive: + - from: + - phonenumbers.json + suppress: + - R2005 #Long running operation status code + reason: + - Approval from Azure review board that Long Running Operations can return 202s. +``` + +--- + +# Code Generation + +## Swagger to SDK + +This section describes what SDK should be generated by the automatic system. +This is not used by Autorest itself. + +## Python + +See configuration in [readme.python.md](./readme.python.md) + +## Ruby + +See configuration in [readme.ruby.md](./readme.ruby.md) + +## TypeScript + +See configuration in [readme.typescript.md](./readme.typescript.md) + +## CSharp + +See configuration in [readme.csharp.md](./readme.csharp.md) diff --git a/specification/communication/data-plane/PhoneNumbers/readme.python.md b/specification/communication/data-plane/PhoneNumbers/readme.python.md new file mode 100644 index 000000000000..f7f55ff2159b --- /dev/null +++ b/specification/communication/data-plane/PhoneNumbers/readme.python.md @@ -0,0 +1,21 @@ +## Python + +These settings apply only when `--python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +```yaml $(python) +python: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 2 + namespace: Microsoft.CommunicationServices + package-name: communicationservices + package-version: 2020-04-16-privatepreview + clear-output-folder: true +``` + +```yaml $(python) +python: + no-namespace-folders: true + output-folder: $(python-sdks-folder)/azure-mgmt/communicationservices +``` diff --git a/specification/communication/data-plane/PhoneNumbers/readme.ruby.md b/specification/communication/data-plane/PhoneNumbers/readme.ruby.md new file mode 100644 index 000000000000..f521ab44dbf5 --- /dev/null +++ b/specification/communication/data-plane/PhoneNumbers/readme.ruby.md @@ -0,0 +1,19 @@ +## Ruby + +These settings apply only when `--ruby` is specified on the command line. + +```yaml +package-name: azure_mgmt_communicationservices +package-version: 2020-04-16-privatepreview +azure-arm: true +``` + +### Tag: package-2020-04-16-privatepreview and ruby + +These settings apply only when `--tag=package-2020-04-16-privatepreview --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +```yaml $(tag) == 'package-2020-04-16-privatepreview' && $(ruby) +namespace: Microsoft.CommunicationServices +output-folder: $(ruby-sdks-folder)/communicationservices +``` diff --git a/specification/communication/data-plane/PhoneNumbers/readme.typescript.md b/specification/communication/data-plane/PhoneNumbers/readme.typescript.md new file mode 100644 index 000000000000..be9f877fd1c2 --- /dev/null +++ b/specification/communication/data-plane/PhoneNumbers/readme.typescript.md @@ -0,0 +1,13 @@ +## TypeScript + +These settings apply only when `--typescript` is specified on the command line. +Please also specify `--typescript-sdks-folder=`. + +```yaml $(typescript) +typescript: + azure-arm: true + package-name: "communicationservices" + output-folder: "$(typescript-sdks-folder)/packages/communicationservices" + payload-flattening-threshold: 1 + generate-metadata: true +``` diff --git a/specification/communication/data-plane/PhoneNumbers/stable/2021-03-07/examples/DeleteOperation.json b/specification/communication/data-plane/PhoneNumbers/stable/2021-03-07/examples/DeleteOperation.json new file mode 100644 index 000000000000..8b7aa415b069 --- /dev/null +++ b/specification/communication/data-plane/PhoneNumbers/stable/2021-03-07/examples/DeleteOperation.json @@ -0,0 +1,10 @@ +{ + "parameters": { + "api-version": "2021-03-07", + "endpoint": "https://resourcename.communication.azure.com/", + "operationId": "search_my-operation-id" + }, + "responses": { + "204": {} + } +} diff --git a/specification/communication/data-plane/PhoneNumbers/stable/2021-03-07/examples/GetOperation.json b/specification/communication/data-plane/PhoneNumbers/stable/2021-03-07/examples/GetOperation.json new file mode 100644 index 000000000000..1f4568fd1b96 --- /dev/null +++ b/specification/communication/data-plane/PhoneNumbers/stable/2021-03-07/examples/GetOperation.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2021-03-07", + "endpoint": "https://resourcename.communication.azure.com/", + "operationId": "search-my-operation-id" + }, + "responses": { + "200": { + "headers": { + "Location": "/availablePhoneNumbers/searchResults/378ddf60-81be-452a-ba4f-613198ea6c28" + }, + "body": { + "status": "succeeded", + "resourceLocation": "", + "createdDateTime": "2020-11-19T16:31:49.048Z", + "id": "search-my-operation-id", + "operationType": "search", + "lastActionDateTime": "2020-11-19T22:31:49.048Z" + } + } + } +} diff --git a/specification/communication/data-plane/PhoneNumbers/stable/2021-03-07/examples/GetPhoneNumber.json b/specification/communication/data-plane/PhoneNumbers/stable/2021-03-07/examples/GetPhoneNumber.json new file mode 100644 index 000000000000..ab3c6f51bcc6 --- /dev/null +++ b/specification/communication/data-plane/PhoneNumbers/stable/2021-03-07/examples/GetPhoneNumber.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2021-03-07", + "endpoint": "https://resourcename.communication.azure.com/", + "phoneNumber": "+11234567890" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "11234567890", + "phoneNumber": "+11234567890", + "countryCode": "US", + "assignmentType": "user", + "phoneNumberType": "geographic", + "capabilities": { + "calling": "inbound+outbound", + "sms": "inbound" + }, + "purchaseDate": "2020-11-19T16:31:49.048Z", + "cost": { + "amount": 0.8, + "currencyCode": "USD", + "billingFrequency": "monthly" + } + } + } + } +} diff --git a/specification/communication/data-plane/PhoneNumbers/stable/2021-03-07/examples/GetPhoneNumberSearchResult.json b/specification/communication/data-plane/PhoneNumbers/stable/2021-03-07/examples/GetPhoneNumberSearchResult.json new file mode 100644 index 000000000000..c3468b2f8b53 --- /dev/null +++ b/specification/communication/data-plane/PhoneNumbers/stable/2021-03-07/examples/GetPhoneNumberSearchResult.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2021-03-07", + "searchId": "378ddf60-81be-452a-ba4f-613198ea6c28", + "endpoint": "https://resourcename.communication.azure.com/" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "searchId": "378ddf60-81be-452a-ba4f-613198ea6c28", + "phoneNumbers": [ + "+18001212121" + ], + "phoneNumberType": "tollFree", + "assignmentType": "application", + "capabilities": { + "sms": "inbound+outbound", + "calling": "none" + }, + "cost": { + "amount": 1.2, + "currencyCode": "USD", + "billingFrequency": "monthly" + }, + "searchExpiresBy": "2020-11-19T16:31:49.048Z" + } + } + } +} diff --git a/specification/communication/data-plane/PhoneNumbers/stable/2021-03-07/examples/GetPhoneNumbers.json b/specification/communication/data-plane/PhoneNumbers/stable/2021-03-07/examples/GetPhoneNumbers.json new file mode 100644 index 000000000000..92b9e1eee063 --- /dev/null +++ b/specification/communication/data-plane/PhoneNumbers/stable/2021-03-07/examples/GetPhoneNumbers.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2021-03-07", + "endpoint": "https://resourcename.communication.azure.com/", + "phoneNumber": "+11234567890" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "phoneNumbers": [ + { + "id": "11234567890", + "phoneNumber": "+11234567890", + "countryCode": "US", + "assignmentType": "user", + "phoneNumberType": "geographic", + "capabilities": { + "calling": "inbound+outbound", + "sms": "inbound" + }, + "purchaseDate": "2020-11-19T16:31:49.048Z", + "cost": { + "amount": 0.8, + "currencyCode": "USD", + "billingFrequency": "monthly" + } + } + ] + } + } + } +} diff --git a/specification/communication/data-plane/PhoneNumbers/stable/2021-03-07/examples/PurchasePhoneNumbers.json b/specification/communication/data-plane/PhoneNumbers/stable/2021-03-07/examples/PurchasePhoneNumbers.json new file mode 100644 index 000000000000..8885cfdb2973 --- /dev/null +++ b/specification/communication/data-plane/PhoneNumbers/stable/2021-03-07/examples/PurchasePhoneNumbers.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2021-03-07", + "endpoint": "https://resourcename.communication.azure.com/", + "body": { + "searchId": "378ddf60-81be-452a-ba4f-613198ea6c28" + } + }, + "responses": { + "202": { + "headers": { + "Operation-Location": "/phoneNumbers/operations/purchase_378ddf60-81be-452a-ba4f-613198ea6c28", + "operation-id": "purchase_378ddf60-81be-452a-ba4f-613198ea6c28", + "purchase-id": "378ddf60-81be-452a-ba4f-613198ea6c28" + } + } + } +} diff --git a/specification/communication/data-plane/PhoneNumbers/stable/2021-03-07/examples/ReleasePhoneNumber.json b/specification/communication/data-plane/PhoneNumbers/stable/2021-03-07/examples/ReleasePhoneNumber.json new file mode 100644 index 000000000000..9514610c1f89 --- /dev/null +++ b/specification/communication/data-plane/PhoneNumbers/stable/2021-03-07/examples/ReleasePhoneNumber.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "api-version": "2021-03-07", + "phoneNumber": "+11234567890", + "endpoint": "https://resourcename.communication.azure.com/" + }, + "responses": { + "202": { + "headers": { + "Operation-Location": "/phoneNumbers/operations/release_378ddf60-81be-452a-ba4f-613198ea6c28", + "operation-id": "release_378ddf60-81be-452a-ba4f-613198ea6c28", + "release-id": "378ddf60-81be-452a-ba4f-613198ea6c28" + } + } + } +} diff --git a/specification/communication/data-plane/PhoneNumbers/stable/2021-03-07/examples/SearchPhoneNumbers.json b/specification/communication/data-plane/PhoneNumbers/stable/2021-03-07/examples/SearchPhoneNumbers.json new file mode 100644 index 000000000000..20e5c220ef55 --- /dev/null +++ b/specification/communication/data-plane/PhoneNumbers/stable/2021-03-07/examples/SearchPhoneNumbers.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2021-03-07", + "body": { + "phoneNumberType": "tollFree", + "assignmentType": "application", + "capabilities": { + "sms": "inbound+outbound", + "calling": "none" + }, + "areaCode": "425", + "quantity": 1 + }, + "countryCode": "US", + "endpoint": "https://resourcename.communication.azure.com/" + }, + "responses": { + "202": { + "headers": { + "Operation-Location": "/phoneNumbers/operations/search_378ddf60-81be-452a-ba4f-613198ea6c28", + "Location": "/availablePhoneNumbers/searchResults/378ddf60-81be-452a-ba4f-613198ea6c28", + "operation-id": "search_378ddf60-81be-452a-ba4f-613198ea6c28", + "search-id": "378ddf60-81be-452a-ba4f-613198ea6c28" + }, + "body": { + "searchId": "378ddf60-81be-452a-ba4f-613198ea6c28", + "phoneNumbers": [ + "+18001212121" + ], + "phoneNumberType": "tollFree", + "assignmentType": "application", + "capabilities": { + "sms": "inbound+outbound", + "calling": "none" + }, + "cost": { + "amount": 1.2, + "currencyCode": "USD", + "billingFrequency": "monthly" + }, + "searchExpiresBy": "2020-11-19T16:31:49.048Z" + } + } + } +} diff --git a/specification/communication/data-plane/PhoneNumbers/stable/2021-03-07/examples/UpdatePhoneNumberCapabilities.json b/specification/communication/data-plane/PhoneNumbers/stable/2021-03-07/examples/UpdatePhoneNumberCapabilities.json new file mode 100644 index 000000000000..8c78283781f6 --- /dev/null +++ b/specification/communication/data-plane/PhoneNumbers/stable/2021-03-07/examples/UpdatePhoneNumberCapabilities.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2021-03-07", + "endpoint": "https://resourcename.communication.azure.com/", + "phoneNumber": "+14792000102", + "body": { + "calling": "inbound+outbound", + "sms": "none" + } + }, + "responses": { + "202": { + "headers": { + "Operation-Location": "/phoneNumbers/operations/capabilities_378ddf60-81be-452a-ba4f-613198ea6c28", + "Location": "/phoneNumbers/%2b14792000102", + "operation-id": "capabilities_378ddf60-81be-452a-ba4f-613198ea6c28", + "capabilities-id": "378ddf60-81be-452a-ba4f-613198ea6c28" + }, + "body": { + "id": "14792000102", + "phoneNumber": "+14792000102", + "countryCode": "US", + "assignmentType": "person", + "phoneNumberType": "geographic", + "capabilities": { + "calling": "inbound+outbound", + "sms": "none" + }, + "purchaseDate": "2020-11-19T16:31:49.048Z", + "cost": { + "amount": 0.8, + "currencyCode": "USD", + "billingFrequency": "monthly" + } + } + } + } +} diff --git a/specification/communication/data-plane/PhoneNumbers/stable/2021-03-07/phonenumbers.json b/specification/communication/data-plane/PhoneNumbers/stable/2021-03-07/phonenumbers.json new file mode 100644 index 000000000000..2579210b70f5 --- /dev/null +++ b/specification/communication/data-plane/PhoneNumbers/stable/2021-03-07/phonenumbers.json @@ -0,0 +1,914 @@ +{ + "swagger": "2.0", + "info": { + "title": "PhoneNumbersClient", + "description": "The phone numbers client uses Azure Communication Services to purchase and manage phone numbers.", + "version": "2021-03-07" + }, + "paths": { + "/availablePhoneNumbers/countries/{countryCode}/:search": { + "post": { + "tags": [ + "Find and purchase available phone numbers" + ], + "summary": "Search for available phone numbers to purchase.", + "operationId": "PhoneNumbers_SearchAvailablePhoneNumbers", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "countryCode", + "description": "The ISO 3166-2 country code, e.g. US.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "body", + "description": "The phone number search request.", + "required": true, + "schema": { + "$ref": "#/definitions/PhoneNumberSearchRequest" + } + } + ], + "responses": { + "202": { + "description": "The service has accepted the request and will start processing later. It will return 'Accepted' immediately and include an 'Operation-Location' and 'Location' headers. Client side should further query the operation status using the URL specified in 'Operation-Location' header. When operation completes successfully query final result using URL specified in 'Location' header.", + "schema": { + "$ref": "#/definitions/PhoneNumberSearchResult" + }, + "headers": { + "Location": { + "description": "URL to retrieve the final result after operation completes.", + "type": "string" + }, + "Operation-Location": { + "description": "URL to query for status of the operation.", + "type": "string" + }, + "operation-id": { + "description": "The operation id.", + "type": "string" + }, + "search-id": { + "description": "The search operation id.", + "type": "string" + } + } + }, + "default": { + "description": "Failure", + "schema": { + "$ref": "../../../Common/stable/2021-03-07/common.json#/definitions/CommunicationErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Search for phone numbers": { + "$ref": "./examples/SearchPhoneNumbers.json" + } + } + } + }, + "/availablePhoneNumbers/searchResults/{searchId}": { + "get": { + "tags": [ + "Find and purchase available phone numbers" + ], + "summary": "Gets a phone number search result by search id.", + "operationId": "PhoneNumbers_GetSearchResult", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "searchId", + "description": "The search Id.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/PhoneNumberSearchResult" + } + }, + "default": { + "description": "Failure", + "schema": { + "$ref": "../../../Common/stable/2021-03-07/common.json#/definitions/CommunicationErrorResponse" + } + } + }, + "x-ms-examples": { + "Get PhoneNumber Search Result": { + "$ref": "./examples/GetPhoneNumberSearchResult.json" + } + } + } + }, + "/availablePhoneNumbers/:purchase": { + "post": { + "tags": [ + "Find and purchase available phone numbers" + ], + "summary": "Purchases phone numbers.", + "operationId": "PhoneNumbers_PurchasePhoneNumbers", + "consumes": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "body", + "description": "The phone number purchase request", + "required": true, + "schema": { + "$ref": "#/definitions/PhoneNumberPurchaseRequest" + } + } + ], + "responses": { + "202": { + "description": "The service has accepted the request and will start processing later. It will return 'Accepted' immediately and include an 'Operation-Location' and 'Location' headers. Client side should further query the operation status using the URL specified in 'Operation-Location' header. When operation completes successfully query final result using URL specified in 'Location' header.", + "headers": { + "Operation-Location": { + "description": "URL to query for status of the operation.", + "type": "string" + }, + "operation-id": { + "description": "The operation id.", + "type": "string" + }, + "purchase-id": { + "description": "The purchase operation id.", + "type": "string" + } + } + }, + "default": { + "description": "Failure", + "schema": { + "$ref": "../../../Common/stable/2021-03-07/common.json#/definitions/CommunicationErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Purchase phone numbers": { + "$ref": "./examples/PurchasePhoneNumbers.json" + } + }, + "produces": [ + "application/json" + ] + } + }, + "/phoneNumbers/operations/{operationId}": { + "get": { + "tags": [ + "Long running operations" + ], + "summary": "Gets an operation by its id.", + "operationId": "PhoneNumbers_GetOperation", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "operationId", + "description": "The id of the operation", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "When the operation is completed, query the final result of the operation using the URL specified in the 'Location' attribute in the response header.", + "schema": { + "$ref": "#/definitions/PhoneNumberOperation" + }, + "headers": { + "Location": { + "description": "Url to retrieve the final result after operation completes.", + "type": "string" + } + } + }, + "default": { + "description": "Failure", + "schema": { + "$ref": "../../../Common/stable/2021-03-07/common.json#/definitions/CommunicationErrorResponse" + } + } + }, + "x-ms-examples": { + "Get long running operation status by operation id": { + "$ref": "./examples/GetOperation.json" + } + } + }, + "delete": { + "tags": [ + "Long running operations" + ], + "summary": "Cancels an operation by its id.", + "operationId": "PhoneNumbers_CancelOperation", + "parameters": [ + { + "in": "path", + "name": "operationId", + "description": "The id of the operation", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "Success" + }, + "default": { + "description": "Failure", + "schema": { + "$ref": "../../../Common/stable/2021-03-07/common.json#/definitions/CommunicationErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete long running operation with the given operation id": { + "$ref": "./examples/DeleteOperation.json" + } + }, + "produces": [ + "application/json" + ] + } + }, + "/phoneNumbers/{phoneNumber}/capabilities": { + "patch": { + "tags": [ + "Manage purchased phone numbers" + ], + "summary": "Updates the capabilities of a phone number.", + "operationId": "PhoneNumbers_UpdateCapabilities", + "consumes": [ + "application/merge-patch+json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "phoneNumber", + "description": "The phone number id in E.164 format. The leading plus can be either + or encoded as %2B, e.g. +11234567890.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "body", + "description": "Defines the update capabilities request.", + "schema": { + "$ref": "#/definitions/PhoneNumberCapabilitiesRequest" + } + } + ], + "responses": { + "202": { + "description": "The service has accepted the request and will start processing later. It will return 'Accepted' immediately and include an 'Operation-Location' and 'Location' headers. Client side should further query the operation status using the URL specified in 'Operation-Location' header. When operation completes successfully query final result using URL specified in 'Location' header.", + "schema": { + "$ref": "#/definitions/PurchasedPhoneNumber" + }, + "headers": { + "Location": { + "description": "URL to retrieve the final result after operation completes.", + "type": "string" + }, + "Operation-Location": { + "description": "URL to query for status of the operation.", + "type": "string" + }, + "operation-id": { + "description": "The operation id.", + "type": "string" + }, + "capabilities-id": { + "description": "The capabilities operation id.", + "type": "string" + } + } + }, + "default": { + "description": "Failure", + "schema": { + "$ref": "../../../Common/stable/2021-03-07/common.json#/definitions/CommunicationErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Update phoneNumber capabilities": { + "$ref": "./examples/UpdatePhoneNumberCapabilities.json" + } + } + } + }, + "/phoneNumbers/{phoneNumber}": { + "get": { + "tags": [ + "Manage purchased phone numbers" + ], + "summary": "Gets the details of the given purchased phone number.", + "operationId": "PhoneNumbers_GetByNumber", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "phoneNumber", + "description": "The purchased phone number whose details are to be fetched in E.164 format, e.g. +11234567890.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/PurchasedPhoneNumber" + } + }, + "default": { + "description": "Failure", + "schema": { + "$ref": "../../../Common/stable/2021-03-07/common.json#/definitions/CommunicationErrorResponse" + } + } + }, + "x-ms-examples": { + "Fetch purchased phone number": { + "$ref": "./examples/GetPhoneNumber.json" + } + } + }, + "delete": { + "tags": [ + "Manage purchased phone numbers" + ], + "summary": "Releases a purchased phone number.", + "operationId": "PhoneNumbers_ReleasePhoneNumber", + "parameters": [ + { + "in": "path", + "name": "phoneNumber", + "description": "Phone number to be released, e.g. +11234567890.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The service has accepted the request and will start processing later. It will return 'Accepted' immediately and include an 'Operation-Location' and 'Location' headers. Client side should further query the operation status using the URL specified in 'Operation-Location' header. When operation completes successfully query final result using URL specified in 'Location' header.", + "headers": { + "Operation-Location": { + "description": "URL to query for status of the operation.", + "type": "string" + }, + "operation-id": { + "description": "The operation id.", + "type": "string" + }, + "release-id": { + "description": "The release operation id.", + "type": "string" + } + } + }, + "default": { + "description": "Failure", + "schema": { + "$ref": "../../../Common/stable/2021-03-07/common.json#/definitions/CommunicationErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Release phone number": { + "$ref": "./examples/ReleasePhoneNumber.json" + } + }, + "produces": [ + "application/json" + ] + } + }, + "/phoneNumbers": { + "get": { + "tags": [ + "Manage purchased phone numbers" + ], + "summary": "Gets the list of all purchased phone numbers.", + "operationId": "PhoneNumbers_ListPhoneNumbers", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "query", + "name": "skip", + "description": "An optional parameter for how many entries to skip, for pagination purposes. The default value is 0.", + "type": "integer", + "format": "int32", + "default": 0 + }, + { + "in": "query", + "name": "top", + "description": "An optional parameter for how many entries to return, for pagination purposes. The default value is 100.", + "type": "integer", + "format": "int32", + "default": 100 + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/PurchasedPhoneNumbers" + } + }, + "default": { + "description": "Failure", + "schema": { + "$ref": "../../../Common/stable/2021-03-07/common.json#/definitions/CommunicationErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink", + "itemName": "phoneNumbers" + }, + "x-ms-examples": { + "List purchased phone numbers": { + "$ref": "./examples/GetPhoneNumbers.json" + } + } + } + } + }, + "definitions": { + "PhoneNumberCapabilities": { + "description": "Capabilities of a phone number.", + "required": [ + "calling", + "sms" + ], + "type": "object", + "properties": { + "calling": { + "description": "Capability value for calling.", + "enum": [ + "none", + "inbound", + "outbound", + "inbound+outbound" + ], + "type": "string", + "x-ms-enum": { + "name": "PhoneNumberCapabilityType", + "modelAsString": true + } + }, + "sms": { + "description": "Capability value for SMS.", + "enum": [ + "none", + "inbound", + "outbound", + "inbound+outbound" + ], + "type": "string", + "x-ms-enum": { + "name": "PhoneNumberCapabilityType", + "modelAsString": true + } + } + } + }, + "PhoneNumberSearchRequest": { + "description": "Represents a phone number search request to find phone numbers. Found phone numbers are temporarily held for a following purchase.", + "required": [ + "assignmentType", + "capabilities", + "phoneNumberType" + ], + "type": "object", + "properties": { + "phoneNumberType": { + "description": "The type of phone numbers to search for, e.g. geographic, or tollFree.", + "enum": [ + "geographic", + "tollFree" + ], + "type": "string", + "x-ms-enum": { + "name": "PhoneNumberType", + "modelAsString": true + } + }, + "assignmentType": { + "description": "The assignment type of the phone numbers to search for. A phone number can be assigned to a person, or to an application.", + "enum": [ + "person", + "application" + ], + "type": "string", + "x-ms-enum": { + "name": "PhoneNumberAssignmentType", + "modelAsString": true + } + }, + "capabilities": { + "$ref": "#/definitions/PhoneNumberCapabilities" + }, + "areaCode": { + "description": "The area code of the desired phone number, e.g. 425.", + "type": "string" + }, + "quantity": { + "format": "int32", + "description": "The quantity of desired phone numbers. The default value is 1.", + "default": 1, + "maximum": 2147483647, + "minimum": 1, + "type": "integer" + } + } + }, + "PhoneNumberCost": { + "description": "The incurred cost for a single phone number.", + "required": [ + "amount", + "billingFrequency", + "currencyCode" + ], + "type": "object", + "properties": { + "amount": { + "format": "double", + "description": "The cost amount.", + "type": "number" + }, + "currencyCode": { + "description": "The ISO 4217 currency code for the cost amount, e.g. USD.", + "type": "string" + }, + "billingFrequency": { + "description": "The frequency with which the cost gets billed.", + "enum": [ + "monthly" + ], + "type": "string", + "x-ms-enum": { + "name": "BillingFrequency", + "modelAsString": true + } + } + } + }, + "PhoneNumberSearchResult": { + "description": "The result of a phone number search operation.", + "required": [ + "assignmentType", + "capabilities", + "cost", + "phoneNumbers", + "phoneNumberType", + "searchExpiresBy", + "searchId" + ], + "type": "object", + "properties": { + "searchId": { + "description": "The search id.", + "type": "string" + }, + "phoneNumbers": { + "description": "The phone numbers that are available. Can be fewer than the desired search quantity.", + "type": "array", + "items": { + "type": "string" + } + }, + "phoneNumberType": { + "description": "The phone number's type, e.g. geographic, or tollFree.", + "enum": [ + "geographic", + "tollFree" + ], + "type": "string", + "x-ms-enum": { + "name": "PhoneNumberType", + "modelAsString": true + } + }, + "assignmentType": { + "description": "Phone number's assignment type.", + "enum": [ + "person", + "application" + ], + "type": "string", + "x-ms-enum": { + "name": "PhoneNumberAssignmentType", + "modelAsString": true + } + }, + "capabilities": { + "$ref": "#/definitions/PhoneNumberCapabilities" + }, + "cost": { + "$ref": "#/definitions/PhoneNumberCost" + }, + "searchExpiresBy": { + "format": "date-time", + "description": "The date that this search result expires and phone numbers are no longer on hold. A search result expires in less than 15min, e.g. 2020-11-19T16:31:49.048Z.", + "type": "string" + } + } + }, + "PhoneNumberPurchaseRequest": { + "description": "The phone number search purchase request.", + "type": "object", + "properties": { + "searchId": { + "description": "The search id.", + "type": "string" + } + } + }, + "PhoneNumberOperation": { + "description": "Long running operation.", + "required": [ + "createdDateTime", + "id", + "operationType", + "status" + ], + "type": "object", + "properties": { + "status": { + "description": "Status of operation.", + "enum": [ + "notStarted", + "running", + "succeeded", + "failed" + ], + "type": "string", + "x-ms-enum": { + "name": "PhoneNumberOperationStatus", + "modelAsString": true + } + }, + "resourceLocation": { + "description": "URL for retrieving the result of the operation, if any.", + "type": "string" + }, + "createdDateTime": { + "format": "date-time", + "description": "The date that the operation was created.", + "type": "string" + }, + "error": { + "$ref": "../../../Common/stable/2021-03-07/common.json#/definitions/CommunicationError" + }, + "id": { + "description": "Id of operation.", + "type": "string" + }, + "operationType": { + "description": "The type of operation, e.g. Search", + "enum": [ + "purchase", + "releasePhoneNumber", + "search", + "updatePhoneNumberCapabilities" + ], + "type": "string", + "x-ms-enum": { + "name": "PhoneNumberOperationType", + "modelAsString": true + } + }, + "lastActionDateTime": { + "format": "date-time", + "description": "The most recent date that the operation was changed.", + "type": "string", + "readOnly": true + } + } + }, + "PhoneNumberCapabilitiesRequest": { + "description": "Capabilities of a phone number.", + "type": "object", + "properties": { + "calling": { + "description": "Capability value for calling.", + "enum": [ + "none", + "inbound", + "outbound", + "inbound+outbound" + ], + "type": "string", + "x-ms-enum": { + "name": "PhoneNumberCapabilityType", + "modelAsString": true + } + }, + "sms": { + "description": "Capability value for SMS.", + "enum": [ + "none", + "inbound", + "outbound", + "inbound+outbound" + ], + "type": "string", + "x-ms-enum": { + "name": "PhoneNumberCapabilityType", + "modelAsString": true + } + } + } + }, + "PurchasedPhoneNumber": { + "description": "Represents a purchased phone number.", + "required": [ + "assignmentType", + "capabilities", + "cost", + "countryCode", + "id", + "phoneNumber", + "phoneNumberType", + "purchaseDate" + ], + "type": "object", + "properties": { + "id": { + "description": "The id of the phone number, e.g. 11234567890.", + "type": "string" + }, + "phoneNumber": { + "description": "String of the E.164 format of the phone number, e.g. +11234567890.", + "type": "string" + }, + "countryCode": { + "description": "The ISO 3166-2 code of the phone number's country, e.g. US.", + "type": "string" + }, + "phoneNumberType": { + "description": "The phone number's type, e.g. Geographic, TollFree.", + "enum": [ + "geographic", + "tollFree" + ], + "type": "string", + "x-ms-enum": { + "name": "PhoneNumberType", + "modelAsString": true + } + }, + "capabilities": { + "$ref": "#/definitions/PhoneNumberCapabilities" + }, + "assignmentType": { + "description": "The assignment type of the phone number. A phone number can be assigned to a person, or to an application.", + "enum": [ + "person", + "application" + ], + "type": "string", + "x-ms-enum": { + "name": "PhoneNumberAssignmentType", + "modelAsString": true + } + }, + "purchaseDate": { + "format": "date-time", + "description": "The date and time that the phone number was purchased.", + "type": "string" + }, + "cost": { + "$ref": "#/definitions/PhoneNumberCost" + } + } + }, + "PurchasedPhoneNumbers": { + "description": "The list of purchased phone numbers.", + "required": [ + "phoneNumbers" + ], + "type": "object", + "properties": { + "phoneNumbers": { + "description": "Represents a list of phone numbers.", + "type": "array", + "items": { + "$ref": "#/definitions/PurchasedPhoneNumber" + } + }, + "nextLink": { + "description": "Represents the URL link to the next page of phone number results.", + "type": "string" + } + } + } + }, + "parameters": { + "ApiVersionParameter": { + "in": "query", + "name": "api-version", + "description": "Version of API to invoke.", + "required": true, + "type": "string" + }, + "Endpoint": { + "in": "path", + "name": "endpoint", + "description": "The communication resource, for example https://resourcename.communication.azure.com.", + "required": true, + "type": "string", + "x-ms-skip-url-encoding": true, + "x-ms-parameter-location": "client" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow" + } + }, + "x-ms-parameterized-host": { + "hostTemplate": "{endpoint}", + "useSchemePrefix": false, + "parameters": [ + { + "$ref": "#/parameters/Endpoint" + } + ] + } +} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesSms/preview/2020-07-20-preview1/communicationservicessms.json b/specification/communication/data-plane/Sms/preview/2020-07-20-preview1/communicationservicessms.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesSms/preview/2020-07-20-preview1/communicationservicessms.json rename to specification/communication/data-plane/Sms/preview/2020-07-20-preview1/communicationservicessms.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesSms/preview/2020-07-20-preview1/examples/send.json b/specification/communication/data-plane/Sms/preview/2020-07-20-preview1/examples/send.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesSms/preview/2020-07-20-preview1/examples/send.json rename to specification/communication/data-plane/Sms/preview/2020-07-20-preview1/examples/send.json diff --git a/specification/communication/data-plane/Sms/readme.csharp.md b/specification/communication/data-plane/Sms/readme.csharp.md new file mode 100644 index 000000000000..2efd3715cdc3 --- /dev/null +++ b/specification/communication/data-plane/Sms/readme.csharp.md @@ -0,0 +1,15 @@ +## C + +These settings apply only when `--csharp` is specified on the command line. +Please also specify `--csharp-sdks-folder=`. + +```yaml $(csharp) +csharp: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 1 + clear-output-folder: true + client-side-validation: false + namespace: Microsoft.CommunicationServices + output-folder: $(csharp-sdks-folder)/communicationservices/management/Microsoft.CommunicationServices/GeneratedProtocol +``` diff --git a/specification/communication/data-plane/Sms/readme.md b/specification/communication/data-plane/Sms/readme.md new file mode 100644 index 000000000000..d4cf1160c110 --- /dev/null +++ b/specification/communication/data-plane/Sms/readme.md @@ -0,0 +1,77 @@ +# communicationservices + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for communicationservices. + +## Getting Started + +To build the SDKs for My API, simply install AutoRest via `npm` (`npm install -g autorest`) and then run: + +> `autorest readme.md` + +To see additional help and options, run: + +> `autorest --help` + +For other options on installation see [Installing AutoRest](https://aka.ms/autorest/install) on the AutoRest github page. + +--- + +## Configuration + +### Basic Information + +These are the global settings for the communicationservices. + +```yaml +openapi-type: data-plane +tag: package-2020-07-20-preview1 +``` + +### Tag: package-2020-07-20-preview1 + +These settings apply only when `--tag=package-2020-07-20-preview1` is specified on the command line. + +```yaml $(tag) == 'package-2020-07-20-preview1' +input-file: + - preview/2020-07-20-preview1/communicationservicessms.json +title: + Azure Communication Services +``` + +### Tag: package-sms-2021-03-07 + +These settings apply only when `--tag=package-sms-2021-03-07` is specified on the command line. + +```yaml $(tag) == 'package-sms-2021-03-07' +input-file: + - stable/2021-03-07/communicationservicessms.json +title: + Azure Communication Services +``` + +--- + +# Code Generation + +## Swagger to SDK + +This section describes what SDK should be generated by the automatic system. +This is not used by Autorest itself. + +## Python + +See configuration in [readme.python.md](./readme.python.md) + +## Ruby + +See configuration in [readme.ruby.md](./readme.ruby.md) + +## TypeScript + +See configuration in [readme.typescript.md](./readme.typescript.md) + +## CSharp + +See configuration in [readme.csharp.md](./readme.csharp.md) diff --git a/specification/communication/data-plane/Sms/readme.python.md b/specification/communication/data-plane/Sms/readme.python.md new file mode 100644 index 000000000000..f7f55ff2159b --- /dev/null +++ b/specification/communication/data-plane/Sms/readme.python.md @@ -0,0 +1,21 @@ +## Python + +These settings apply only when `--python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +```yaml $(python) +python: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 2 + namespace: Microsoft.CommunicationServices + package-name: communicationservices + package-version: 2020-04-16-privatepreview + clear-output-folder: true +``` + +```yaml $(python) +python: + no-namespace-folders: true + output-folder: $(python-sdks-folder)/azure-mgmt/communicationservices +``` diff --git a/specification/communication/data-plane/Sms/readme.ruby.md b/specification/communication/data-plane/Sms/readme.ruby.md new file mode 100644 index 000000000000..f521ab44dbf5 --- /dev/null +++ b/specification/communication/data-plane/Sms/readme.ruby.md @@ -0,0 +1,19 @@ +## Ruby + +These settings apply only when `--ruby` is specified on the command line. + +```yaml +package-name: azure_mgmt_communicationservices +package-version: 2020-04-16-privatepreview +azure-arm: true +``` + +### Tag: package-2020-04-16-privatepreview and ruby + +These settings apply only when `--tag=package-2020-04-16-privatepreview --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +```yaml $(tag) == 'package-2020-04-16-privatepreview' && $(ruby) +namespace: Microsoft.CommunicationServices +output-folder: $(ruby-sdks-folder)/communicationservices +``` diff --git a/specification/communication/data-plane/Sms/readme.typescript.md b/specification/communication/data-plane/Sms/readme.typescript.md new file mode 100644 index 000000000000..be9f877fd1c2 --- /dev/null +++ b/specification/communication/data-plane/Sms/readme.typescript.md @@ -0,0 +1,13 @@ +## TypeScript + +These settings apply only when `--typescript` is specified on the command line. +Please also specify `--typescript-sdks-folder=`. + +```yaml $(typescript) +typescript: + azure-arm: true + package-name: "communicationservices" + output-folder: "$(typescript-sdks-folder)/packages/communicationservices" + payload-flattening-threshold: 1 + generate-metadata: true +``` diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesSms/stable/2021-03-07/communicationservicessms.json b/specification/communication/data-plane/Sms/stable/2021-03-07/communicationservicessms.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesSms/stable/2021-03-07/communicationservicessms.json rename to specification/communication/data-plane/Sms/stable/2021-03-07/communicationservicessms.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesSms/stable/2021-03-07/examples/send.json b/specification/communication/data-plane/Sms/stable/2021-03-07/examples/send.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesSms/stable/2021-03-07/examples/send.json rename to specification/communication/data-plane/Sms/stable/2021-03-07/examples/send.json diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesTurn/preview/2021-02-22-preview1/CommunicationTurn.json b/specification/communication/data-plane/Turn/preview/2021-02-22-preview1/CommunicationTurn.json similarity index 93% rename from specification/communication/data-plane/Microsoft.CommunicationServicesTurn/preview/2021-02-22-preview1/CommunicationTurn.json rename to specification/communication/data-plane/Turn/preview/2021-02-22-preview1/CommunicationTurn.json index d9dba569baa5..462437eca5d9 100644 --- a/specification/communication/data-plane/Microsoft.CommunicationServicesTurn/preview/2021-02-22-preview1/CommunicationTurn.json +++ b/specification/communication/data-plane/Turn/preview/2021-02-22-preview1/CommunicationTurn.json @@ -1,8 +1,8 @@ { "swagger": "2.0", "info": { - "title": "CommunicationIdentityClient", - "description": "Azure Communication Relay Service", + "title": "CommunicationNetworkingClient", + "description": "Azure Communication Networking Service", "version": "2021-02-22-preview1" }, "paths": { @@ -32,7 +32,7 @@ "default": { "description": "Error", "schema": { - "$ref": "../../../Microsoft.CommunicationServicesCommon/stable/2021-03-07/common.json#/definitions/CommunicationErrorResponse" + "$ref": "../../../Common/stable/2021-03-07/common.json#/definitions/CommunicationErrorResponse" } }, "200": { diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesTurn/preview/2021-02-22-preview1/examples/IssueTurnCredentials.json b/specification/communication/data-plane/Turn/preview/2021-02-22-preview1/examples/IssueTurnCredentials.json similarity index 100% rename from specification/communication/data-plane/Microsoft.CommunicationServicesTurn/preview/2021-02-22-preview1/examples/IssueTurnCredentials.json rename to specification/communication/data-plane/Turn/preview/2021-02-22-preview1/examples/IssueTurnCredentials.json diff --git a/specification/communication/data-plane/Turn/readme.csharp.md b/specification/communication/data-plane/Turn/readme.csharp.md new file mode 100644 index 000000000000..2efd3715cdc3 --- /dev/null +++ b/specification/communication/data-plane/Turn/readme.csharp.md @@ -0,0 +1,15 @@ +## C + +These settings apply only when `--csharp` is specified on the command line. +Please also specify `--csharp-sdks-folder=`. + +```yaml $(csharp) +csharp: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 1 + clear-output-folder: true + client-side-validation: false + namespace: Microsoft.CommunicationServices + output-folder: $(csharp-sdks-folder)/communicationservices/management/Microsoft.CommunicationServices/GeneratedProtocol +``` diff --git a/specification/communication/data-plane/Turn/readme.md b/specification/communication/data-plane/Turn/readme.md new file mode 100644 index 000000000000..ef1a1f47ba50 --- /dev/null +++ b/specification/communication/data-plane/Turn/readme.md @@ -0,0 +1,66 @@ +# communicationservices + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for communicationservices. + +## Getting Started + +To build the SDKs for My API, simply install AutoRest via `npm` (`npm install -g autorest`) and then run: + +> `autorest readme.md` + +To see additional help and options, run: + +> `autorest --help` + +For other options on installation see [Installing AutoRest](https://aka.ms/autorest/install) on the AutoRest github page. + +--- + +## Configuration + +### Basic Information + +These are the global settings for the communicationservices. + +```yaml +openapi-type: data-plane +tag: package-2020-07-20-preview1 +``` + +### Tag: package-2021-02-22-preview1 + +These settings apply only when `--tag=package-2021-02-22-preview1` is specified on the command line. + +```yaml $(tag) == 'package-2021-02-22-preview1' +input-file: + - preview/2021-02-22-preview1/CommunicationTurn.json +title: + Azure Communication Services +``` + +--- + +# Code Generation + +## Swagger to SDK + +This section describes what SDK should be generated by the automatic system. +This is not used by Autorest itself. + +## Python + +See configuration in [readme.python.md](./readme.python.md) + +## Ruby + +See configuration in [readme.ruby.md](./readme.ruby.md) + +## TypeScript + +See configuration in [readme.typescript.md](./readme.typescript.md) + +## CSharp + +See configuration in [readme.csharp.md](./readme.csharp.md) diff --git a/specification/communication/data-plane/Turn/readme.python.md b/specification/communication/data-plane/Turn/readme.python.md new file mode 100644 index 000000000000..f7f55ff2159b --- /dev/null +++ b/specification/communication/data-plane/Turn/readme.python.md @@ -0,0 +1,21 @@ +## Python + +These settings apply only when `--python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +```yaml $(python) +python: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 2 + namespace: Microsoft.CommunicationServices + package-name: communicationservices + package-version: 2020-04-16-privatepreview + clear-output-folder: true +``` + +```yaml $(python) +python: + no-namespace-folders: true + output-folder: $(python-sdks-folder)/azure-mgmt/communicationservices +``` diff --git a/specification/communication/data-plane/Turn/readme.ruby.md b/specification/communication/data-plane/Turn/readme.ruby.md new file mode 100644 index 000000000000..f521ab44dbf5 --- /dev/null +++ b/specification/communication/data-plane/Turn/readme.ruby.md @@ -0,0 +1,19 @@ +## Ruby + +These settings apply only when `--ruby` is specified on the command line. + +```yaml +package-name: azure_mgmt_communicationservices +package-version: 2020-04-16-privatepreview +azure-arm: true +``` + +### Tag: package-2020-04-16-privatepreview and ruby + +These settings apply only when `--tag=package-2020-04-16-privatepreview --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +```yaml $(tag) == 'package-2020-04-16-privatepreview' && $(ruby) +namespace: Microsoft.CommunicationServices +output-folder: $(ruby-sdks-folder)/communicationservices +``` diff --git a/specification/communication/data-plane/Turn/readme.typescript.md b/specification/communication/data-plane/Turn/readme.typescript.md new file mode 100644 index 000000000000..be9f877fd1c2 --- /dev/null +++ b/specification/communication/data-plane/Turn/readme.typescript.md @@ -0,0 +1,13 @@ +## TypeScript + +These settings apply only when `--typescript` is specified on the command line. +Please also specify `--typescript-sdks-folder=`. + +```yaml $(typescript) +typescript: + azure-arm: true + package-name: "communicationservices" + output-folder: "$(typescript-sdks-folder)/packages/communicationservices" + payload-flattening-threshold: 1 + generate-metadata: true +``` diff --git a/specification/communication/data-plane/readme.md b/specification/communication/data-plane/readme.md deleted file mode 100644 index f3a8495b44db..000000000000 --- a/specification/communication/data-plane/readme.md +++ /dev/null @@ -1,166 +0,0 @@ -# communicationservices - -> see https://aka.ms/autorest - -This is the AutoRest configuration file for communicationservices. - -## Getting Started - -To build the SDKs for My API, simply install AutoRest via `npm` (`npm install -g autorest`) and then run: - -> `autorest readme.md` - -To see additional help and options, run: - -> `autorest --help` - -For other options on installation see [Installing AutoRest](https://aka.ms/autorest/install) on the AutoRest github page. - ---- - -## Configuration - -### Basic Information - -These are the global settings for the communicationservices. - -```yaml -openapi-type: data-plane -tag: package-2020-07-20-preview1 -``` - -### Tag: package-2020-07-20-preview1 - -These settings apply only when `--tag=package-2020-07-20-preview1` is specified on the command line. - -```yaml $(tag) == 'package-2020-07-20-preview1' -input-file: - - Microsoft.CommunicationServicesAdministration/preview/2020-07-20-preview1/communicationservicesadministration.json - - Microsoft.CommunicationServicesSms/preview/2020-07-20-preview1/communicationservicessms.json -title: - Azure Communication Services -``` - -```yaml -openapi-type: data-plane -tag: package-2020-09-21-preview2 -``` - -### Tag: package-2020-09-21-preview2 - -These settings apply only when `--tag=package-2020-09-21-preview2` is specified on the command line. - -```yaml $(tag) == 'package-2020-09-21-preview2' -input-file: - - Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/communicationserviceschat.json -title: - Azure Communication Services -``` - -### Tag: package-2020-11-01-preview3 - -These settings apply only when `--tag=package-2020-11-01-preview3` is specified on the command line. - -```yaml $(tag) == 'package-2020-11-01-preview3' -input-file: - - Microsoft.CommunicationServicesChat/preview/2020-11-01-preview3/communicationserviceschat.json -title: - Azure Communication Services -``` - -### Tag: package-2021-01-27-preview4 - -These settings apply only when `--tag=package-2021-01-27-preview4` is specified on the command line. - -```yaml $(tag) == 'package-2021-01-27-preview4' -input-file: - - Microsoft.CommunicationServicesChat/preview/2021-01-27-preview4/communicationserviceschat.json -title: - Azure Communication Services -``` - -### Tag: package-2021-03-01-preview5 - -These settings apply only when `--tag=package-2021-03-01-preview5` is specified on the command line. - -```yaml $(tag) == 'package-2021-03-01-preview5' -input-file: - - Microsoft.CommunicationServicesChat/preview/2021-03-01-preview5/communicationserviceschat.json -title: - Azure Communication Services -``` - -### Tag: package-2020-07-20-preview2 - -These settings apply only when `--tag=package-2020-07-20-preview2` is specified on the command line. - -```yaml $(tag) == 'package-2020-07-20-preview2' -input-file: - - Microsoft.CommunicationServicesIdentity/preview/2020-07-20-preview2/CommunicationIdentity.json -``` - -### Tag: package-2021-03-07 - -These settings apply only when `--tag=package-2021-03-07` is specified on the command line. - -```yaml $(tag) == 'package-2021-03-07' -input-file: - - Microsoft.CommunicationServicesIdentity/stable/2021-03-07/CommunicationIdentity.json -title: - Azure Communication Services -``` - -### Tag: package-sms-2021-03-07 - -These settings apply only when `--tag=package-sms-2021-03-07` is specified on the command line. - -```yaml $(tag) == 'package-sms-2021-03-07' -input-file: - - Microsoft.CommunicationServicesSms/stable/2021-03-07/communicationservicessms.json -title: - Azure Communication Services -``` - -### Tag: package-2021-02-22-preview1 - -These settings apply only when `--tag=package-2021-02-22-preview1` is specified on the command line. - -```yaml $(tag) == 'package-2021-02-22-preview1' -input-file: - - Microsoft.CommunicationServicesTurn/preview/2021-02-22-preview1/CommunicationTurn.json - - Microsoft.CommunicationServicesIdentity/preview/2021-02-22-preview1/CommunicationIdentity.json -``` - -### Tag: package-2020-11-19-preview1 - -These settings apply only when `--tag=package-2020-11-19-preview1` is specified on the command line. - -```yaml $(tag) == 'package-2020-11-19-preview1' -input-file: - - Microsoft.CommunicationServicesCommon/preview/2020-11-19-preview1/common.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. - -## Python - -See configuration in [readme.python.md](./readme.python.md) - -## Ruby - -See configuration in [readme.ruby.md](./readme.ruby.md) - -## TypeScript - -See configuration in [readme.typescript.md](./readme.typescript.md) - -## CSharp - -See configuration in [readme.csharp.md](./readme.csharp.md) diff --git a/specification/communication/resource-manager/Microsoft.Communication/stable/2020-08-20/CommunicationService.json b/specification/communication/resource-manager/Microsoft.Communication/stable/2020-08-20/CommunicationService.json index 84f2d286939b..d9b39b604428 100644 --- a/specification/communication/resource-manager/Microsoft.Communication/stable/2020-08-20/CommunicationService.json +++ b/specification/communication/resource-manager/Microsoft.Communication/stable/2020-08-20/CommunicationService.json @@ -173,52 +173,6 @@ } } }, - "/providers/Microsoft.Communication/locations/{location}/operationStatuses/{operationId}": { - "get": { - "description": "Gets the current status of an async operation.", - "operationId": "OperationStatuses_Get", - "summary": "Get Operation Status", - "tags": [ - "OperationStatus" - ], - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/LocationParameter" - }, - { - "$ref": "#/parameters/OperationIdParameter" - } - ], - "consumes": [ - "application/json" - ], - "responses": { - "200": { - "description": "The requested operation status", - "schema": { - "$ref": "#/definitions/OperationStatus" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "produces": [ - "application/json" - ], - "x-ms-examples": { - "Get OperationStatus": { - "$ref": "./examples/getOperationStatus.json" - } - } - } - }, "/subscriptions/{subscriptionId}/providers/Microsoft.Communication/communicationServices": { "get": { "description": "Handles requests to list all resources in a subscription.", @@ -703,58 +657,6 @@ } } }, - "OperationStatus": { - "description": "The current status of an async operation", - "type": "object", - "properties": { - "id": { - "description": "Fully qualified ID for the operation status.", - "type": "string", - "readOnly": true - }, - "status": { - "description": "Provisioning state of the resource.", - "enum": [ - "Succeeded", - "Failed", - "Canceled", - "Creating", - "Deleting", - "Moving" - ], - "type": "string", - "readOnly": true, - "x-ms-enum": { - "name": "Status", - "modelAsString": true - } - }, - "startTime": { - "description": "The start time of the operation", - "type": "string", - "readOnly": true, - "format": "date-time" - }, - "endTime": { - "description": "The end time of the operation", - "type": "string", - "readOnly": true, - "format": "date-time" - }, - "percentComplete": { - "description": "Percent of the operation that is complete", - "type": "number", - "readOnly": true, - "minimum": 0, - "maximum": 100 - }, - "error": { - "description": "Operation Error message", - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse", - "x-ms-client-flatten": true - } - } - }, "CommunicationServiceResourceList": { "description": "Object that includes an array of CommunicationServices and a possible link for next set.", "type": "object", @@ -938,22 +840,6 @@ "required": true, "type": "string", "x-ms-parameter-location": "method" - }, - "LocationParameter": { - "name": "location", - "in": "path", - "description": "The Azure region", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - }, - "OperationIdParameter": { - "name": "operationId", - "in": "path", - "description": "The ID of an ongoing async operation", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" } } } diff --git a/specification/communication/resource-manager/Microsoft.Communication/stable/2020-08-20/examples/getOperationStatus.json b/specification/communication/resource-manager/Microsoft.Communication/stable/2020-08-20/examples/getOperationStatus.json deleted file mode 100644 index fc9587705dd9..000000000000 --- a/specification/communication/resource-manager/Microsoft.Communication/stable/2020-08-20/examples/getOperationStatus.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "parameters": { - "location": "westus2", - "operationId": "db5f291f-284d-46e9-9152-d5c83f7c14b8", - "api-version": "2020-08-20" - }, - "responses": { - "200": { - "body": { - "id": "db5f291f-284d-46e9-9152-d5c83f7c14b8", - "status": "Succeeded", - "startTime": "2020-07-06T17:06:26.100Z", - "endTime": "2020-07-06T17:06:42.800Z", - "percentComplete": 100 - } - }, - "default": { - "body": { - "error": { - "code": "OperationNotFound", - "message": "The requested async operation was not found" - } - } - } - } -} diff --git a/specification/communication/resource-manager/readme.az.md b/specification/communication/resource-manager/readme.az.md index 100de551bd7f..4597fca59d0c 100644 --- a/specification/communication/resource-manager/readme.az.md +++ b/specification/communication/resource-manager/readme.az.md @@ -7,9 +7,10 @@ az: extensions: communication namespace: azure.mgmt.communication package-name: azure-mgmt-communication + randomize-names: true az-output-folder: $(azure-cli-extension-folder)/src/communication python-sdk-output-folder: "$(az-output-folder)/azext_communication/vendored_sdks/communication" -# add additinal configuration here specific for Azure CLI +# add additional configuration here specific for Azure CLI # refer to the faq.md for more details ``` @@ -18,14 +19,18 @@ python-sdk-output-folder: "$(az-output-folder)/azext_communication/vendored_sdks ``` yaml extension-mode: preview +directive: + - where: + group: communication communication-service + set: + group: communication + - where: + command: communication operation-statuses show + set: + command: communication show-status + cli: cli-directive: - -# -------- CommunicationService -------- - - where: - group: CommunicationService - set: - name: service - where: group: CommunicationService param: CommunicationServiceName @@ -33,10 +38,4 @@ cli: alias: - name - n - -# -------- OperationStatuses -------- - - where: - group: OperationStatuses - set: - name: status ``` diff --git a/specification/communication/resource-manager/readme.azureresourceschema.md b/specification/communication/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 447921f5ed6b..000000000000 --- a/specification/communication/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,36 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-communication-2020-08-20 - - tag: schema-communication-2020-08-20-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-communication-2020-08-20 and azureresourceschema - -``` yaml $(tag) == 'schema-communication-2020-08-20' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Communication/stable/2020-08-20/CommunicationService.json - -``` - -### Tag: schema-communication-2020-08-20-preview and azureresourceschema - -``` yaml $(tag) == 'schema-communication-2020-08-20-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Communication/preview/2020-08-20-preview/CommunicationService.json - -``` diff --git a/specification/communication/resource-manager/readme.go.md b/specification/communication/resource-manager/readme.go.md index d1113c532b23..7f440b90e41d 100644 --- a/specification/communication/resource-manager/readme.go.md +++ b/specification/communication/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: communication clear-output-folder: true ``` diff --git a/specification/communication/resource-manager/readme.md b/specification/communication/resource-manager/readme.md index 45d697427a39..c013a2460dd4 100644 --- a/specification/communication/resource-manager/readme.md +++ b/specification/communication/resource-manager/readme.md @@ -60,7 +60,6 @@ This is not used by Autorest itself. swagger-to-sdk: - repo: azure-powershell - repo: azure-sdk-for-net - - repo: azure-sdk-for-python - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-go - repo: azure-sdk-for-js diff --git a/specification/communication/resource-manager/readme.python.md b/specification/communication/resource-manager/readme.python.md index 94ed970f40ac..8ca7562f6b9e 100644 --- a/specification/communication/resource-manager/readme.python.md +++ b/specification/communication/resource-manager/readme.python.md @@ -3,33 +3,6 @@ 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 !$(track2) -python-mode: create -python: - azure-arm: true - license-header: MICROSOFT_MIT_NO_VERSION - payload-flattening-threshold: 2 - namespace: azure.mgmt.communication - package-name: azure-mgmt-communication - package-version: 1.0.0 - clear-output-folder: true -``` - -``` yaml $(python) && $(python-mode) == 'update' && !$(track2) -python: - no-namespace-folders: true - output-folder: $(python-sdks-folder)/communication/azure-mgmt-communication/azure/mgmt/communication -``` - -``` yaml $(python) && $(python-mode) == 'create' && !$(track2) -python: - basic-setup-py: true - output-folder: $(python-sdks-folder)/communication/azure/mgmt/communication -``` - - These settings apply only when `--track2` is specified on the command line. ``` yaml $(track2) diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/AddToSharingProfileInAGallery.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/AddToSharingProfileInAGallery.json new file mode 100644 index 000000000000..2b58d146d876 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/AddToSharingProfileInAGallery.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-09-30", + "galleryName": "myGalleryName", + "sharingUpdate": { + "operationType": "Add", + "groups": [ + { + "type": "Subscriptions", + "ids": [ + "34a4ab42-0d72-47d9-bd1a-aed207386dac", + "380fd389-260b-41aa-bad9-0a83108c370b" + ] + }, + { + "type": "AADTenants", + "ids": [ + "c24c76aa-8897-4027-9b03-8f7928b54ff6" + ] + } + ] + } + }, + "responses": { + "200": { + "body": { + "operationType": "Add", + "groups": [ + { + "type": "Subscriptions", + "ids": [ + "34a4ab42-0d72-47d9-bd1a-aed207386dac", + "380fd389-260b-41aa-bad9-0a83108c370b" + ] + }, + { + "type": "AADTenants", + "ids": [ + "c24c76aa-8897-4027-9b03-8f7928b54ff6" + ] + } + ] + } + }, + "202": { + "body": { + "operationType": "Add", + "groups": [ + { + "type": "Subscriptions", + "ids": [ + "34a4ab42-0d72-47d9-bd1a-aed207386dac", + "380fd389-260b-41aa-bad9-0a83108c370b" + ] + }, + { + "type": "AADTenants", + "ids": [ + "c24c76aa-8897-4027-9b03-8f7928b54ff6" + ] + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/CreateOrUpdateASimpleGallery.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/CreateOrUpdateASimpleGallery.json new file mode 100644 index 000000000000..be3c726713ed --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/CreateOrUpdateASimpleGallery.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-09-30", + "galleryName": "myGalleryName", + "gallery": { + "location": "West US", + "properties": { + "description": "This is the gallery description." + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "description": "This is the gallery description.", + "identifier": { + "uniqueName": "{subscription-id}-MYGALLERYNAME" + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myGalleryName" + } + }, + "201": { + "body": { + "properties": { + "description": "This is the gallery description.", + "identifier": { + "uniqueName": "{subscription-id}-MYGALLERYNAME" + }, + "provisioningState": "Creating" + }, + "location": "West US", + "name": "myGalleryName" + } + }, + "202": { + "body": { + "properties": { + "description": "This is the gallery description.", + "identifier": { + "uniqueName": "{subscription-id}-MYGALLERYNAME" + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myGalleryName" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/CreateOrUpdateASimpleGalleryApplication.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/CreateOrUpdateASimpleGalleryApplication.json new file mode 100644 index 000000000000..d4f969d2d11e --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/CreateOrUpdateASimpleGalleryApplication.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-09-30", + "galleryName": "myGalleryName", + "galleryApplicationName": "myGalleryApplicationName", + "galleryApplication": { + "location": "West US", + "properties": { + "description": "This is the gallery application description.", + "eula": "This is the gallery application EULA.", + "privacyStatementUri": "myPrivacyStatementUri}", + "releaseNoteUri": "myReleaseNoteUri", + "supportedOSType": "Windows" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "description": "This is the gallery application description.", + "eula": "This is the gallery application EULA.", + "privacyStatementUri": "myPrivacyStatementUri}", + "releaseNoteUri": "myReleaseNoteUri", + "supportedOSType": "Windows" + }, + "location": "West US", + "name": "myGalleryApplicationName", + "type": "Microsoft.Compute/galleries", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/myGalleryName/applications/myGalleryApplicationName" + } + }, + "201": { + "body": { + "properties": { + "description": "This is the gallery application description.", + "eula": "This is the gallery application EULA.", + "privacyStatementUri": "myPrivacyStatementUri}", + "releaseNoteUri": "myReleaseNoteUri", + "supportedOSType": "Windows" + }, + "location": "West US", + "name": "myGalleryApplicationName", + "type": "Microsoft.Compute/galleries", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/myGalleryName/applications/myGalleryApplicationName" + } + }, + "202": { + "body": { + "properties": { + "description": "This is the gallery application description.", + "eula": "This is the gallery application EULA.", + "privacyStatementUri": "myPrivacyStatementUri}", + "releaseNoteUri": "myReleaseNoteUri", + "supportedOSType": "Windows" + }, + "location": "West US", + "name": "myGalleryApplicationName", + "type": "Microsoft.Compute/galleries", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/myGalleryName/applications/myGalleryApplicationName" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/CreateOrUpdateASimpleGalleryApplicationVersion.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/CreateOrUpdateASimpleGalleryApplicationVersion.json new file mode 100644 index 000000000000..079b456f748a --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/CreateOrUpdateASimpleGalleryApplicationVersion.json @@ -0,0 +1,135 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-09-30", + "galleryName": "myGalleryName", + "galleryApplicationName": "myGalleryApplicationName", + "galleryApplicationVersionName": "1.0.0", + "galleryApplicationVersion": { + "location": "West US", + "properties": { + "publishingProfile": { + "source": { + "mediaLink": "https://mystorageaccount.blob.core.windows.net/mycontainer/package.zip?{sasKey}" + }, + "manageActions": { + "install": "powershell -command \"Expand-Archive -Path package.zip -DestinationPath C:\\package\"", + "remove": "del C:\\package " + }, + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "storageAccountType": "Standard_LRS" + } + ], + "replicaCount": 1, + "endOfLifeDate": "2019-07-01T07:00:00Z", + "storageAccountType": "Standard_LRS" + } + } + } + }, + "responses": { + "200": { + "body": { + "location": "West US", + "name": "1.0.0", + "type": "Microsoft.Compute/galleries/applications/versions", + "id": "/subscriptions/01523d7c-60da-455e-adef-521b547922c4/resourceGroups/galleryPsTestRg98/providers/Microsoft.Compute/galleries/galleryPsTestGallery6165/applications/galleryPsTestGalleryApplication7825/versions/1.0.0", + "properties": { + "publishingProfile": { + "source": { + "mediaLink": "https://mystorageaccount.blob.core.windows.net/mycontainer/package.zip?{sasKey}" + }, + "manageActions": { + "install": "powershell -command \"Expand-Archive -Path package.zip -DestinationPath C:\\package\"", + "remove": "del C:\\package " + }, + "enableHealthCheck": false, + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "storageAccountType": "Standard_LRS" + } + ], + "replicaCount": 1, + "excludeFromLatest": false, + "publishedDate": "2019-06-21T17:13:57.5972568+00:00", + "endOfLifeDate": "2019-07-01T07:00:00+00:00", + "storageAccountType": "Standard_LRS" + }, + "provisioningState": "Updating" + } + } + }, + "201": { + "body": { + "location": "West US", + "name": "1.0.0", + "type": "Microsoft.Compute/galleries/applications/versions", + "id": "/subscriptions/01523d7c-60da-455e-adef-521b547922c4/resourceGroups/galleryPsTestRg98/providers/Microsoft.Compute/galleries/galleryPsTestGallery6165/applications/galleryPsTestGalleryApplication7825/versions/1.0.0", + "properties": { + "publishingProfile": { + "source": { + "mediaLink": "https://mystorageaccount.blob.core.windows.net/mycontainer/package.zip?{sasKey}" + }, + "manageActions": { + "install": "powershell -command \"Expand-Archive -Path package.zip -DestinationPath C:\\package\"", + "remove": "del C:\\package " + }, + "enableHealthCheck": false, + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "storageAccountType": "Standard_LRS" + } + ], + "replicaCount": 1, + "excludeFromLatest": false, + "publishedDate": "2019-06-21T17:13:57.5972568+00:00", + "endOfLifeDate": "2019-07-01T07:00:00+00:00", + "storageAccountType": "Standard_LRS" + }, + "provisioningState": "Creating" + } + } + }, + "202": { + "body": { + "location": "West US", + "name": "1.0.0", + "type": "Microsoft.Compute/galleries/applications/versions", + "id": "/subscriptions/01523d7c-60da-455e-adef-521b547922c4/resourceGroups/galleryPsTestRg98/providers/Microsoft.Compute/galleries/galleryPsTestGallery6165/applications/galleryPsTestGalleryApplication7825/versions/1.0.0", + "properties": { + "publishingProfile": { + "source": { + "mediaLink": "https://mystorageaccount.blob.core.windows.net/mycontainer/package.zip?{sasKey}" + }, + "manageActions": { + "install": "powershell -command \"Expand-Archive -Path package.zip -DestinationPath C:\\package\"", + "remove": "del C:\\package " + }, + "enableHealthCheck": false, + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "storageAccountType": "Standard_LRS" + } + ], + "replicaCount": 1, + "excludeFromLatest": false, + "publishedDate": "2019-06-21T17:13:57.5972568+00:00", + "endOfLifeDate": "2019-07-01T07:00:00+00:00", + "storageAccountType": "Standard_LRS" + }, + "provisioningState": "Updating" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/CreateOrUpdateASimpleGalleryImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/CreateOrUpdateASimpleGalleryImage.json new file mode 100644 index 000000000000..13f9b61d3641 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/CreateOrUpdateASimpleGalleryImage.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-09-30", + "galleryName": "myGalleryName", + "galleryImageName": "myGalleryImageName", + "galleryImage": { + "location": "West US", + "properties": { + "osType": "Windows", + "osState": "Generalized", + "hyperVGeneration": "V1", + "identifier": { + "publisher": "myPublisherName", + "offer": "myOfferName", + "sku": "mySkuName" + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "osType": "Windows", + "osState": "Generalized", + "hyperVGeneration": "V1", + "identifier": { + "publisher": "myPublisherName", + "offer": "myOfferName", + "sku": "mySkuName" + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myGalleryImageName" + } + }, + "201": { + "body": { + "properties": { + "osType": "Windows", + "osState": "Generalized", + "hyperVGeneration": "V1", + "identifier": { + "publisher": "myPublisherName", + "offer": "myOfferName", + "sku": "mySkuName" + }, + "provisioningState": "Creating" + }, + "location": "West US", + "name": "myGalleryImageName" + } + }, + "202": { + "body": { + "properties": { + "osType": "Windows", + "osState": "Generalized", + "hyperVGeneration": "V1", + "identifier": { + "publisher": "myPublisherName", + "offer": "myOfferName", + "sku": "mySkuName" + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myGalleryImageName" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/CreateOrUpdateASimpleGalleryImageVersion.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/CreateOrUpdateASimpleGalleryImageVersion.json new file mode 100644 index 000000000000..fee5dac0bd98 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/CreateOrUpdateASimpleGalleryImageVersion.json @@ -0,0 +1,281 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-09-30", + "galleryName": "myGalleryName", + "galleryImageName": "myGalleryImageName", + "galleryImageVersionName": "1.0.0", + "galleryImageVersion": { + "location": "West US", + "properties": { + "publishingProfile": { + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myWestUSDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "lun": 0, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myOtherWestUSDiskEncryptionSet" + }, + { + "lun": 1, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myWestUSDiskEncryptionSet" + } + ] + } + }, + { + "name": "East US", + "regionalReplicaCount": 2, + "storageAccountType": "Standard_ZRS", + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myEastUSDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "lun": 0, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myOtherEastUSDiskEncryptionSet" + }, + { + "lun": 1, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myEastUSDiskEncryptionSet" + } + ] + } + } + ] + }, + "storageProfile": { + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/images/{imageName}" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "publishingProfile": { + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "storageAccountType": "Standard_LRS", + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myWestUSDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "lun": 0, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myOtherWestUSDiskEncryptionSet" + }, + { + "lun": 1, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myWestUSDiskEncryptionSet" + } + ] + } + }, + { + "name": "East US", + "regionalReplicaCount": 2, + "storageAccountType": "Standard_ZRS", + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myEastUSDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "lun": 0, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myOtherEastUSDiskEncryptionSet" + }, + { + "lun": 1, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myEastUSDiskEncryptionSet" + } + ] + } + } + ], + "replicaCount": 1, + "publishedDate": "2018-01-01T00:00:00Z", + "storageAccountType": "Standard_LRS" + }, + "storageProfile": { + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/images/{imageName}" + }, + "osDiskImage": { + "sizeInGB": 10, + "hostCaching": "ReadOnly" + }, + "dataDiskImages": [ + { + "lun": 1, + "sizeInGB": 10, + "hostCaching": "None" + } + ] + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "1.0.0" + } + }, + "201": { + "body": { + "properties": { + "publishingProfile": { + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "storageAccountType": "Standard_LRS", + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myWestUSDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "lun": 0, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myOtherWestUSDiskEncryptionSet" + }, + { + "lun": 1, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myWestUSDiskEncryptionSet" + } + ] + } + }, + { + "name": "East US", + "regionalReplicaCount": 2, + "storageAccountType": "Standard_ZRS", + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myEastUSDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "lun": 0, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myOtherEastUSDiskEncryptionSet" + }, + { + "lun": 1, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myEastUSDiskEncryptionSet" + } + ] + } + } + ], + "replicaCount": 1, + "publishedDate": "2018-01-01T00:00:00Z", + "storageAccountType": "Standard_LRS" + }, + "storageProfile": { + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/images/{imageName}" + }, + "osDiskImage": { + "sizeInGB": 10, + "hostCaching": "ReadOnly" + }, + "dataDiskImages": [ + { + "lun": 1, + "sizeInGB": 10, + "hostCaching": "None" + } + ] + }, + "provisioningState": "Creating" + }, + "location": "West US", + "name": "1.0.0" + } + }, + "202": { + "body": { + "properties": { + "publishingProfile": { + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "storageAccountType": "Standard_LRS", + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myWestUSDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "lun": 0, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myOtherWestUSDiskEncryptionSet" + }, + { + "lun": 1, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myWestUSDiskEncryptionSet" + } + ] + } + }, + { + "name": "East US", + "regionalReplicaCount": 2, + "storageAccountType": "Standard_ZRS", + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myEastUSDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "lun": 0, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myOtherEastUSDiskEncryptionSet" + }, + { + "lun": 1, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myEastUSDiskEncryptionSet" + } + ] + } + } + ], + "replicaCount": 1, + "publishedDate": "2018-01-01T00:00:00Z", + "storageAccountType": "Standard_LRS" + }, + "storageProfile": { + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/images/{imageName}" + }, + "osDiskImage": { + "sizeInGB": 10, + "hostCaching": "ReadOnly" + }, + "dataDiskImages": [ + { + "lun": 1, + "sizeInGB": 10, + "hostCaching": "None" + } + ] + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "1.0.0" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/CreateOrUpdateASimpleGalleryImageVersionWithImageVersionAsSource.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/CreateOrUpdateASimpleGalleryImageVersionWithImageVersionAsSource.json new file mode 100644 index 000000000000..1f76f9daaf64 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/CreateOrUpdateASimpleGalleryImageVersionWithImageVersionAsSource.json @@ -0,0 +1,281 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-09-30", + "galleryName": "myGalleryName", + "galleryImageName": "myGalleryImageName", + "galleryImageVersionName": "1.0.0", + "galleryImageVersion": { + "location": "West US", + "properties": { + "publishingProfile": { + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myWestUSDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "lun": 0, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myOtherWestUSDiskEncryptionSet" + }, + { + "lun": 1, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myWestUSDiskEncryptionSet" + } + ] + } + }, + { + "name": "East US", + "regionalReplicaCount": 2, + "storageAccountType": "Standard_ZRS", + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myEastUSDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "lun": 0, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myOtherEastUSDiskEncryptionSet" + }, + { + "lun": 1, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myEastUSDiskEncryptionSet" + } + ] + } + } + ] + }, + "storageProfile": { + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/galleries/{galleryName}/images/{imageDefinitionName}/versions/{versionName}" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "publishingProfile": { + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "storageAccountType": "Standard_LRS", + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myWestUSDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "lun": 0, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myOtherWestUSDiskEncryptionSet" + }, + { + "lun": 1, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myWestUSDiskEncryptionSet" + } + ] + } + }, + { + "name": "East US", + "regionalReplicaCount": 2, + "storageAccountType": "Standard_ZRS", + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myEastUSDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "lun": 0, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myOtherEastUSDiskEncryptionSet" + }, + { + "lun": 1, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myEastUSDiskEncryptionSet" + } + ] + } + } + ], + "replicaCount": 1, + "publishedDate": "2018-01-01T00:00:00Z", + "storageAccountType": "Standard_LRS" + }, + "storageProfile": { + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/galleries/{galleryName}/images/{imageDefinitionName}/versions/{versionName}" + }, + "osDiskImage": { + "sizeInGB": 10, + "hostCaching": "ReadOnly" + }, + "dataDiskImages": [ + { + "lun": 1, + "sizeInGB": 10, + "hostCaching": "None" + } + ] + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "1.0.0" + } + }, + "201": { + "body": { + "properties": { + "publishingProfile": { + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "storageAccountType": "Standard_LRS", + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myWestUSDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "lun": 0, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myOtherWestUSDiskEncryptionSet" + }, + { + "lun": 1, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myWestUSDiskEncryptionSet" + } + ] + } + }, + { + "name": "East US", + "regionalReplicaCount": 2, + "storageAccountType": "Standard_ZRS", + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myEastUSDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "lun": 0, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myOtherEastUSDiskEncryptionSet" + }, + { + "lun": 1, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myEastUSDiskEncryptionSet" + } + ] + } + } + ], + "replicaCount": 1, + "publishedDate": "2018-01-01T00:00:00Z", + "storageAccountType": "Standard_LRS" + }, + "storageProfile": { + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/galleries/{galleryName}/images/{imageDefinitionName}/versions/{versionName}" + }, + "osDiskImage": { + "sizeInGB": 10, + "hostCaching": "ReadOnly" + }, + "dataDiskImages": [ + { + "lun": 1, + "sizeInGB": 10, + "hostCaching": "None" + } + ] + }, + "provisioningState": "Creating" + }, + "location": "West US", + "name": "1.0.0" + } + }, + "202": { + "body": { + "properties": { + "publishingProfile": { + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "storageAccountType": "Standard_LRS", + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myWestUSDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "lun": 0, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myOtherWestUSDiskEncryptionSet" + }, + { + "lun": 1, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myWestUSDiskEncryptionSet" + } + ] + } + }, + { + "name": "East US", + "regionalReplicaCount": 2, + "storageAccountType": "Standard_ZRS", + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myEastUSDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "lun": 0, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myOtherEastUSDiskEncryptionSet" + }, + { + "lun": 1, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myEastUSDiskEncryptionSet" + } + ] + } + } + ], + "replicaCount": 1, + "publishedDate": "2018-01-01T00:00:00Z", + "storageAccountType": "Standard_LRS" + }, + "storageProfile": { + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/galleries/{galleryName}/images/{imageDefinitionName}/versions/{versionName}" + }, + "osDiskImage": { + "sizeInGB": 10, + "hostCaching": "ReadOnly" + }, + "dataDiskImages": [ + { + "lun": 1, + "sizeInGB": 10, + "hostCaching": "None" + } + ] + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "1.0.0" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/CreateOrUpdateASimpleGalleryImageVersionWithSnapshotsAsSource.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/CreateOrUpdateASimpleGalleryImageVersionWithSnapshotsAsSource.json new file mode 100644 index 000000000000..d6faf2af5ac0 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/CreateOrUpdateASimpleGalleryImageVersionWithSnapshotsAsSource.json @@ -0,0 +1,270 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-09-30", + "galleryName": "myGalleryName", + "galleryImageName": "myGalleryImageName", + "galleryImageVersionName": "1.0.0", + "galleryImageVersion": { + "location": "West US", + "properties": { + "publishingProfile": { + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myWestUSDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "lun": 1, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myWestUSDiskEncryptionSet" + } + ] + } + }, + { + "name": "East US", + "regionalReplicaCount": 2, + "storageAccountType": "Standard_ZRS", + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myEastUSDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "lun": 1, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myEastUSDiskEncryptionSet" + } + ] + } + } + ] + }, + "storageProfile": { + "osDiskImage": { + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/snapshots/{osSnapshotName}" + }, + "hostCaching": "ReadOnly" + }, + "dataDiskImages": [ + { + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/disks/{dataDiskName}" + }, + "lun": 1, + "hostCaching": "None" + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "publishingProfile": { + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "storageAccountType": "Standard_LRS", + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myWestUSDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "lun": 1, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myWestUSDiskEncryptionSet" + } + ] + } + }, + { + "name": "East US", + "regionalReplicaCount": 2, + "storageAccountType": "Standard_ZRS", + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myEastUSDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "lun": 1, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myEastUSDiskEncryptionSet" + } + ] + } + } + ], + "replicaCount": 1, + "publishedDate": "2018-01-01T00:00:00Z", + "storageAccountType": "Standard_LRS" + }, + "storageProfile": { + "osDiskImage": { + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/snapshots/{osSnapshotName}" + }, + "sizeInGB": 10, + "hostCaching": "ReadOnly" + }, + "dataDiskImages": [ + { + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/disks/{dataDiskName}" + }, + "lun": 1, + "sizeInGB": 10, + "hostCaching": "None" + } + ] + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "1.0.0" + } + }, + "201": { + "body": { + "properties": { + "publishingProfile": { + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "storageAccountType": "Standard_LRS", + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myWestUSDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "lun": 1, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myWestUSDiskEncryptionSet" + } + ] + } + }, + { + "name": "East US", + "regionalReplicaCount": 2, + "storageAccountType": "Standard_ZRS", + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myEastUSDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "lun": 1, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myEastUSDiskEncryptionSet" + } + ] + } + } + ], + "replicaCount": 1, + "publishedDate": "2018-01-01T00:00:00Z", + "storageAccountType": "Standard_LRS" + }, + "storageProfile": { + "osDiskImage": { + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/snapshots/{osSnapshotName}" + }, + "sizeInGB": 10, + "hostCaching": "ReadOnly" + }, + "dataDiskImages": [ + { + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/disks/{dataDiskName}" + }, + "lun": 1, + "sizeInGB": 10, + "hostCaching": "None" + } + ] + }, + "provisioningState": "Creating" + }, + "location": "West US", + "name": "1.0.0" + } + }, + "202": { + "body": { + "properties": { + "publishingProfile": { + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "storageAccountType": "Standard_LRS", + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myWestUSDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "lun": 1, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myWestUSDiskEncryptionSet" + } + ] + } + }, + { + "name": "East US", + "regionalReplicaCount": 2, + "storageAccountType": "Standard_ZRS", + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myEastUSDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "lun": 1, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myEastUSDiskEncryptionSet" + } + ] + } + } + ], + "replicaCount": 1, + "publishedDate": "2018-01-01T00:00:00Z", + "storageAccountType": "Standard_LRS" + }, + "storageProfile": { + "osDiskImage": { + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/snapshots/{osSnapshotName}" + }, + "sizeInGB": 10, + "hostCaching": "ReadOnly" + }, + "dataDiskImages": [ + { + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/disks/{dataDiskName}" + }, + "lun": 1, + "sizeInGB": 10, + "hostCaching": "None" + } + ] + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "1.0.0" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/CreateOrUpdateASimpleGalleryImageVersionWithVHD.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/CreateOrUpdateASimpleGalleryImageVersionWithVHD.json new file mode 100644 index 000000000000..e40f5781080c --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/CreateOrUpdateASimpleGalleryImageVersionWithVHD.json @@ -0,0 +1,228 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-09-30", + "galleryName": "myGalleryName", + "galleryImageName": "myGalleryImageName", + "galleryImageVersionName": "1.0.0", + "galleryImageVersion": { + "location": "West US", + "properties": { + "publishingProfile": { + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myOtherDiskEncryptionSet", + "lun": 1 + } + ] + } + }, + { + "name": "East US", + "regionalReplicaCount": 2, + "storageAccountType": "Standard_ZRS" + } + ] + }, + "storageProfile": { + "osDiskImage": { + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/{storageAccount}", + "uri": "https://gallerysourcencus.blob.core.windows.net/myvhds/Windows-Server-2012-R2-20171216-en.us-128GB.vhd" + }, + "hostCaching": "ReadOnly" + }, + "dataDiskImages": [ + { + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/{storageAccount}", + "uri": "https://gallerysourcencus.blob.core.windows.net/myvhds/Windows-Server-2012-R2-20171216-en.us-128GB.vhd" + }, + "lun": 1, + "hostCaching": "None" + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "publishingProfile": { + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "storageAccountType": "Standard_LRS", + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "lun": 1, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myOtherDiskEncryptionSet" + } + ] + } + }, + { + "name": "East US", + "regionalReplicaCount": 2, + "storageAccountType": "Standard_ZRS" + } + ], + "replicaCount": 1, + "publishedDate": "2018-01-01T00:00:00Z", + "storageAccountType": "Standard_LRS" + }, + "storageProfile": { + "osDiskImage": { + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/{storageAccount}", + "uri": "https://gallerysourcencus.blob.core.windows.net/myvhds/Windows-Server-2012-R2-20171216-en.us-128GB.vhd" + }, + "hostCaching": "ReadOnly" + }, + "dataDiskImages": [ + { + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/{storageAccount}", + "uri": "https://gallerysourcencus.blob.core.windows.net/myvhds/Windows-Server-2012-R2-20171216-en.us-128GB.vhd" + }, + "lun": 1, + "hostCaching": "None" + } + ] + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "1.0.0" + } + }, + "201": { + "body": { + "properties": { + "publishingProfile": { + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "storageAccountType": "Standard_LRS", + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "lun": 1, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myOtherDiskEncryptionSet" + } + ] + } + }, + { + "name": "East US", + "regionalReplicaCount": 2, + "storageAccountType": "Standard_ZRS" + } + ], + "replicaCount": 1, + "publishedDate": "2018-01-01T00:00:00Z", + "storageAccountType": "Standard_LRS" + }, + "storageProfile": { + "osDiskImage": { + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/{storageAccount}", + "uri": "https://gallerysourcencus.blob.core.windows.net/myvhds/Windows-Server-2012-R2-20171216-en.us-128GB.vhd" + }, + "hostCaching": "ReadOnly" + }, + "dataDiskImages": [ + { + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/{storageAccount}", + "uri": "https://gallerysourcencus.blob.core.windows.net/myvhds/Windows-Server-2012-R2-20171216-en.us-128GB.vhd" + }, + "lun": 1, + "hostCaching": "None" + } + ] + }, + "provisioningState": "Creating" + }, + "location": "West US", + "name": "1.0.0" + } + }, + "202": { + "body": { + "properties": { + "publishingProfile": { + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "storageAccountType": "Standard_LRS", + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "lun": 1, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myOtherDiskEncryptionSet" + } + ] + } + }, + { + "name": "East US", + "regionalReplicaCount": 2, + "storageAccountType": "Standard_ZRS" + } + ], + "replicaCount": 1, + "publishedDate": "2018-01-01T00:00:00Z", + "storageAccountType": "Standard_LRS" + }, + "storageProfile": { + "osDiskImage": { + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/{storageAccount}", + "uri": "https://gallerysourcencus.blob.core.windows.net/myvhds/Windows-Server-2012-R2-20171216-en.us-128GB.vhd" + }, + "hostCaching": "ReadOnly" + }, + "dataDiskImages": [ + { + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/{storageAccount}", + "uri": "https://gallerysourcencus.blob.core.windows.net/myvhds/Windows-Server-2012-R2-20171216-en.us-128GB.vhd" + }, + "lun": 1, + "hostCaching": "None" + } + ] + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "1.0.0" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/CreateOrUpdateASimpleGalleryImageVersionWithVMAsSource.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/CreateOrUpdateASimpleGalleryImageVersionWithVMAsSource.json new file mode 100644 index 000000000000..58255556f36b --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/CreateOrUpdateASimpleGalleryImageVersionWithVMAsSource.json @@ -0,0 +1,281 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-09-30", + "galleryName": "myGalleryName", + "galleryImageName": "myGalleryImageName", + "galleryImageVersionName": "1.0.0", + "galleryImageVersion": { + "location": "West US", + "properties": { + "publishingProfile": { + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myWestUSDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "lun": 0, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myOtherWestUSDiskEncryptionSet" + }, + { + "lun": 1, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myWestUSDiskEncryptionSet" + } + ] + } + }, + { + "name": "East US", + "regionalReplicaCount": 2, + "storageAccountType": "Standard_ZRS", + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myEastUSDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "lun": 0, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myOtherEastUSDiskEncryptionSet" + }, + { + "lun": 1, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myEastUSDiskEncryptionSet" + } + ] + } + } + ] + }, + "storageProfile": { + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/virtualMachines/{vmName}" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "publishingProfile": { + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "storageAccountType": "Standard_LRS", + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myWestUSDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "lun": 0, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myOtherWestUSDiskEncryptionSet" + }, + { + "lun": 1, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myWestUSDiskEncryptionSet" + } + ] + } + }, + { + "name": "East US", + "regionalReplicaCount": 2, + "storageAccountType": "Standard_ZRS", + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myEastUSDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "lun": 0, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myOtherEastUSDiskEncryptionSet" + }, + { + "lun": 1, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myEastUSDiskEncryptionSet" + } + ] + } + } + ], + "replicaCount": 1, + "publishedDate": "2018-01-01T00:00:00Z", + "storageAccountType": "Standard_LRS" + }, + "storageProfile": { + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/virtualMachines/{vmName}" + }, + "osDiskImage": { + "sizeInGB": 10, + "hostCaching": "ReadOnly" + }, + "dataDiskImages": [ + { + "lun": 1, + "sizeInGB": 10, + "hostCaching": "None" + } + ] + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "1.0.0" + } + }, + "201": { + "body": { + "properties": { + "publishingProfile": { + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "storageAccountType": "Standard_LRS", + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myWestUSDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "lun": 0, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myOtherWestUSDiskEncryptionSet" + }, + { + "lun": 1, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myWestUSDiskEncryptionSet" + } + ] + } + }, + { + "name": "East US", + "regionalReplicaCount": 2, + "storageAccountType": "Standard_ZRS", + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myEastUSDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "lun": 0, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myOtherEastUSDiskEncryptionSet" + }, + { + "lun": 1, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myEastUSDiskEncryptionSet" + } + ] + } + } + ], + "replicaCount": 1, + "publishedDate": "2018-01-01T00:00:00Z", + "storageAccountType": "Standard_LRS" + }, + "storageProfile": { + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/virtualMachines/{vmName}" + }, + "osDiskImage": { + "sizeInGB": 10, + "hostCaching": "ReadOnly" + }, + "dataDiskImages": [ + { + "lun": 1, + "sizeInGB": 10, + "hostCaching": "None" + } + ] + }, + "provisioningState": "Creating" + }, + "location": "West US", + "name": "1.0.0" + } + }, + "202": { + "body": { + "properties": { + "publishingProfile": { + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "storageAccountType": "Standard_LRS", + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myWestUSDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "lun": 0, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myOtherWestUSDiskEncryptionSet" + }, + { + "lun": 1, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myWestUSDiskEncryptionSet" + } + ] + } + }, + { + "name": "East US", + "regionalReplicaCount": 2, + "storageAccountType": "Standard_ZRS", + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myEastUSDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "lun": 0, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myOtherEastUSDiskEncryptionSet" + }, + { + "lun": 1, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myEastUSDiskEncryptionSet" + } + ] + } + } + ], + "replicaCount": 1, + "publishedDate": "2018-01-01T00:00:00Z", + "storageAccountType": "Standard_LRS" + }, + "storageProfile": { + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/virtualMachines/{vmName}" + }, + "osDiskImage": { + "sizeInGB": 10, + "hostCaching": "ReadOnly" + }, + "dataDiskImages": [ + { + "lun": 1, + "sizeInGB": 10, + "hostCaching": "None" + } + ] + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "1.0.0" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/CreateOrUpdateASimpleGalleryWithSharingProfile.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/CreateOrUpdateASimpleGalleryWithSharingProfile.json new file mode 100644 index 000000000000..b9852f7f8548 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/CreateOrUpdateASimpleGalleryWithSharingProfile.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-09-30", + "galleryName": "myGalleryName", + "gallery": { + "location": "West US", + "properties": { + "description": "This is the gallery description.", + "sharingProfile": { + "permissions": "Groups" + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "description": "This is the gallery description.", + "identifier": { + "uniqueName": "{subscription-id}-MYGALLERYNAME" + }, + "provisioningState": "Updating", + "sharingProfile": { + "permissions": "Groups" + } + }, + "location": "West US", + "name": "myGalleryName" + } + }, + "201": { + "body": { + "properties": { + "description": "This is the gallery description.", + "identifier": { + "uniqueName": "{subscription-id}-MYGALLERYNAME" + }, + "provisioningState": "Creating", + "sharingProfile": { + "permissions": "Groups" + } + }, + "location": "West US", + "name": "myGalleryName" + } + }, + "202": { + "body": { + "properties": { + "description": "This is the gallery description.", + "identifier": { + "uniqueName": "{subscription-id}-MYGALLERYNAME" + }, + "provisioningState": "Updating", + "sharingProfile": { + "permissions": "Groups" + } + }, + "location": "West US", + "name": "myGalleryName" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/DeleteAGallery.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/DeleteAGallery.json new file mode 100644 index 000000000000..2abe4517a561 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/DeleteAGallery.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-09-30", + "galleryName": "myGalleryName" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/DeleteAGalleryApplication.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/DeleteAGalleryApplication.json new file mode 100644 index 000000000000..f1014e7b7f78 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/DeleteAGalleryApplication.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-09-30", + "galleryName": "myGalleryName", + "galleryApplicationName": "myGalleryApplicationName" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/DeleteAGalleryApplicationVersion.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/DeleteAGalleryApplicationVersion.json new file mode 100644 index 000000000000..e4a43f69b126 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/DeleteAGalleryApplicationVersion.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-09-30", + "galleryName": "myGalleryName", + "galleryApplicationName": "myGalleryApplicationName", + "galleryApplicationVersionName": "1.0.0" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/DeleteAGalleryImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/DeleteAGalleryImage.json new file mode 100644 index 000000000000..6d760641d7b4 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/DeleteAGalleryImage.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-09-30", + "galleryName": "myGalleryName", + "galleryImageName": "myGalleryImageName" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/DeleteAGalleryImageVersion.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/DeleteAGalleryImageVersion.json new file mode 100644 index 000000000000..76001cffb9b2 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/DeleteAGalleryImageVersion.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-09-30", + "galleryName": "myGalleryName", + "galleryImageName": "myGalleryImageName", + "galleryImageVersionName": "1.0.0" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/GetAGallery.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/GetAGallery.json new file mode 100644 index 000000000000..7ef46189bfcc --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/GetAGallery.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-09-30", + "galleryName": "myGalleryName" + }, + "responses": { + "200": { + "body": { + "properties": { + "description": "This is the gallery description.", + "identifier": { + "uniqueName": "{subscription-id}-MYGALLERYNAME" + }, + "provisioningState": "Succeeded" + }, + "location": "West US", + "name": "myGalleryName" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/GetAGalleryApplication.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/GetAGalleryApplication.json new file mode 100644 index 000000000000..37c4d1d42a00 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/GetAGalleryApplication.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-09-30", + "galleryName": "myGalleryName", + "galleryApplicationName": "myGalleryApplicationName" + }, + "responses": { + "200": { + "body": { + "properties": { + "description": "This is the gallery application description.", + "eula": "This is the gallery application EULA.", + "privacyStatementUri": "myPrivacyStatementUri}", + "releaseNoteUri": "myReleaseNoteUri", + "supportedOSType": "Windows" + }, + "location": "West US", + "name": "myGalleryApplicationName" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/GetAGalleryApplicationVersion.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/GetAGalleryApplicationVersion.json new file mode 100644 index 000000000000..0affffec2e45 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/GetAGalleryApplicationVersion.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-09-30", + "galleryName": "myGalleryName", + "galleryApplicationName": "myGalleryApplicationName", + "galleryApplicationVersionName": "1.0.0" + }, + "responses": { + "200": { + "body": { + "location": "West US", + "name": "1.0.0", + "type": "Microsoft.Compute/galleries/applications/versions", + "id": "/subscriptions/01523d7c-60da-455e-adef-521b547922c4/resourceGroups/galleryPsTestRg98/providers/Microsoft.Compute/galleries/galleryPsTestGallery6165/applications/galleryPsTestGalleryApplication7825/versions/1.0.0", + "properties": { + "publishingProfile": { + "source": { + "mediaLink": "https://mystorageaccount.blob.core.windows.net/mycontainer/package.zip?{sasKey}" + }, + "manageActions": { + "install": "powershell -command \"Expand-Archive -Path package.zip -DestinationPath C:\\package\"", + "remove": "del C:\\package " + }, + "enableHealthCheck": false, + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "storageAccountType": "Standard_LRS" + } + ], + "replicaCount": 1, + "excludeFromLatest": false, + "publishedDate": "2019-06-21T17:13:57.5972568+00:00", + "endOfLifeDate": "2019-07-01T07:00:00+00:00", + "storageAccountType": "Standard_LRS" + }, + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/GetAGalleryApplicationVersionWithReplicationStatus.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/GetAGalleryApplicationVersionWithReplicationStatus.json new file mode 100644 index 000000000000..776ea72e0c03 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/GetAGalleryApplicationVersionWithReplicationStatus.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-09-30", + "galleryName": "myGalleryName", + "galleryApplicationName": "myGalleryApplicationName", + "galleryApplicationVersionName": "1.0.0", + "$expand": "ReplicationStatus" + }, + "responses": { + "200": { + "body": { + "properties": { + "publishingProfile": { + "source": { + "mediaLink": "https://mystorageaccount.blob.core.windows.net/mycontainer/package.zip?{sasKey}" + }, + "manageActions": { + "install": "powershell -command \"Expand-Archive -Path package.zip -DestinationPath C:\\package\"", + "remove": "del C:\\package " + }, + "enableHealthCheck": false, + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "storageAccountType": "Standard_LRS" + } + ], + "replicaCount": 1, + "excludeFromLatest": false, + "publishedDate": "2019-06-21T17:13:57.5972568+00:00", + "endOfLifeDate": "2019-07-01T07:00:00+00:00", + "storageAccountType": "Standard_LRS" + }, + "replicationStatus": { + "aggregatedState": "Completed", + "summary": [ + { + "region": "West US", + "state": "Completed", + "details": "", + "progress": 100 + } + ] + }, + "provisioningState": "Succeeded" + }, + "location": "West US", + "name": "1.0.0" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/GetAGalleryImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/GetAGalleryImage.json new file mode 100644 index 000000000000..8e4305e0148c --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/GetAGalleryImage.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-09-30", + "galleryName": "myGalleryName", + "galleryImageName": "myGalleryImageName" + }, + "responses": { + "200": { + "body": { + "properties": { + "osType": "Windows", + "osState": "Generalized", + "hyperVGeneration": "V1", + "identifier": { + "publisher": "myPublisherName", + "offer": "myOfferName", + "sku": "mySkuName" + }, + "provisioningState": "Succeeded" + }, + "location": "West US", + "name": "myGalleryImageName" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/GetAGalleryImageVersion.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/GetAGalleryImageVersion.json new file mode 100644 index 000000000000..c65d0cc43058 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/GetAGalleryImageVersion.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-09-30", + "galleryName": "myGalleryName", + "galleryImageName": "myGalleryImageName", + "galleryImageVersionName": "1.0.0" + }, + "responses": { + "200": { + "body": { + "properties": { + "publishingProfile": { + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "storageAccountType": "Standard_LRS", + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "lun": 0, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myOtherDiskEncryptionSet" + }, + { + "lun": 1, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myDiskEncryptionSet" + } + ] + } + }, + { + "name": "East US", + "regionalReplicaCount": 2, + "storageAccountType": "Standard_LRS" + } + ], + "replicaCount": 1, + "publishedDate": "2018-01-01T00:00:00Z", + "storageAccountType": "Standard_LRS" + }, + "storageProfile": { + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/images/{imageName}" + }, + "osDiskImage": { + "sizeInGB": 10, + "hostCaching": "ReadOnly" + }, + "dataDiskImages": [ + { + "lun": 1, + "sizeInGB": 10, + "hostCaching": "None" + } + ] + }, + "provisioningState": "Succeeded" + }, + "location": "West US", + "name": "1.0.0" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/GetAGalleryImageVersionWithReplicationStatus.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/GetAGalleryImageVersionWithReplicationStatus.json new file mode 100644 index 000000000000..7462407b0222 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/GetAGalleryImageVersionWithReplicationStatus.json @@ -0,0 +1,87 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-09-30", + "galleryName": "myGalleryName", + "galleryImageName": "myGalleryImageName", + "galleryImageVersionName": "1.0.0", + "$expand": "ReplicationStatus" + }, + "responses": { + "200": { + "body": { + "properties": { + "publishingProfile": { + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "storageAccountType": "Standard_LRS", + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "lun": 0, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myOtherDiskEncryptionSet" + }, + { + "lun": 1, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myDiskEncryptionSet" + } + ] + } + }, + { + "name": "East US", + "regionalReplicaCount": 2, + "storageAccountType": "Standard_LRS" + } + ], + "replicaCount": 1, + "publishedDate": "2018-01-01T00:00:00Z", + "storageAccountType": "Standard_LRS" + }, + "storageProfile": { + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/images/{imageName}" + }, + "osDiskImage": { + "sizeInGB": 10, + "hostCaching": "ReadOnly" + }, + "dataDiskImages": [ + { + "lun": 1, + "sizeInGB": 10, + "hostCaching": "None" + } + ] + }, + "replicationStatus": { + "aggregatedState": "Completed", + "summary": [ + { + "region": "West US", + "state": "Completed", + "details": "", + "progress": 100 + }, + { + "region": "East US", + "state": "Completed", + "details": "", + "progress": 100 + } + ] + }, + "provisioningState": "Succeeded" + }, + "location": "West US", + "name": "1.0.0" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/GetAGalleryImageVersionWithSnapshotsAsSource.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/GetAGalleryImageVersionWithSnapshotsAsSource.json new file mode 100644 index 000000000000..a0184d882337 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/GetAGalleryImageVersionWithSnapshotsAsSource.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-09-30", + "galleryName": "myGalleryName", + "galleryImageName": "myGalleryImageName", + "galleryImageVersionName": "1.0.0" + }, + "responses": { + "200": { + "body": { + "properties": { + "publishingProfile": { + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "storageAccountType": "Standard_LRS", + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "lun": 1, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myDiskEncryptionSet" + } + ] + } + }, + { + "name": "East US", + "regionalReplicaCount": 2, + "storageAccountType": "Standard_LRS" + } + ], + "replicaCount": 1, + "publishedDate": "2018-01-01T00:00:00Z", + "storageAccountType": "Standard_LRS" + }, + "storageProfile": { + "osDiskImage": { + "source": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/snapshots/{snapshotName}", + "sizeInGB": 10, + "hostCaching": "ReadOnly" + }, + "dataDiskImages": [ + { + "source": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/snapshots/{diskSnapshotName}", + "lun": 1, + "sizeInGB": 10, + "hostCaching": "None" + } + ] + }, + "provisioningState": "Succeeded" + }, + "location": "West US", + "name": "1.0.0" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/GetAGalleryImageVersionWithVhdAsSource.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/GetAGalleryImageVersionWithVhdAsSource.json new file mode 100644 index 000000000000..e2bc75d1c2bd --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/GetAGalleryImageVersionWithVhdAsSource.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-09-30", + "galleryName": "myGalleryName", + "galleryImageName": "myGalleryImageName", + "galleryImageVersionName": "1.0.0" + }, + "responses": { + "200": { + "body": { + "properties": { + "publishingProfile": { + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "storageAccountType": "Standard_LRS", + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "lun": 1, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myDiskEncryptionSet" + } + ] + } + }, + { + "name": "East US", + "regionalReplicaCount": 2, + "storageAccountType": "Standard_LRS" + } + ], + "replicaCount": 1, + "publishedDate": "2018-01-01T00:00:00Z", + "storageAccountType": "Standard_LRS" + }, + "storageProfile": { + "osDiskImage": { + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/{storageAccount}", + "uri": "https://gallerysourcencus.blob.core.windows.net/myvhds/Windows-Server-2012-R2-20171216-en.us-128GB.vhd" + }, + "hostCaching": "ReadOnly" + }, + "dataDiskImages": [ + { + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/{storageAccount}", + "uri": "https://gallerysourcencus.blob.core.windows.net/myvhds/Windows-Server-2012-R2-20171216-en.us-128GB.vhd" + }, + "lun": 1, + "hostCaching": "None" + } + ] + }, + "provisioningState": "Succeeded" + }, + "location": "West US", + "name": "1.0.0" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/GetAGalleryWithSelectPermissions.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/GetAGalleryWithSelectPermissions.json new file mode 100644 index 000000000000..b58ca89c0bc1 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/GetAGalleryWithSelectPermissions.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-09-30", + "galleryName": "myGalleryName", + "$select": "Permissions" + }, + "responses": { + "200": { + "body": { + "properties": { + "sharingProfile": { + "permissions": "Groups", + "groups": [ + { + "type": "Subscriptions", + "ids": [ + "34a4ab42-0d72-47d9-bd1a-aed207386dac", + "380fd389-260b-41aa-bad9-0a83108c370b" + ] + }, + { + "type": "AADTenants", + "ids": [ + "c24c76aa-8897-4027-9b03-8f7928b54ff6" + ] + } + ] + } + }, + "location": "West US", + "name": "myGalleryName" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/GetASharedGallery.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/GetASharedGallery.json new file mode 100644 index 000000000000..9615b8456462 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/GetASharedGallery.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "location": "myLocation", + "api-version": "2020-09-30", + "galleryUniqueName": "galleryUniqueName" + }, + "responses": { + "200": { + "body": { + "location": "myLocation", + "name": "myGalleryName", + "identifier": { + "uniqueId": "/SharedGalleries/galleryUniqueName" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/GetASharedGalleryImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/GetASharedGalleryImage.json new file mode 100644 index 000000000000..ab78ae46c4f0 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/GetASharedGalleryImage.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "location": "myLocation", + "api-version": "2020-09-30", + "galleryUniqueName": "galleryUniqueName", + "galleryImageName": "myGalleryImageName" + }, + "responses": { + "200": { + "body": { + "properties": { + "osType": "Windows", + "osState": "Generalized", + "hyperVGeneration": "V1", + "identifier": { + "publisher": "myPublisherName", + "offer": "myOfferName", + "sku": "mySkuName" + } + }, + "location": "myLocation", + "name": "myGalleryImageName", + "identifier": { + "uniqueId": "/SharedGalleries/galleryUniqueName/Images/myGalleryImageName" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/GetASharedGalleryImageVersion.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/GetASharedGalleryImageVersion.json new file mode 100644 index 000000000000..7e20e0f45d65 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/GetASharedGalleryImageVersion.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "location": "myLocation", + "api-version": "2020-09-30", + "galleryUniqueName": "galleryUniqueName", + "galleryImageName": "myGalleryImageName", + "galleryImageVersionName": "myGalleryImageVersionName" + }, + "responses": { + "200": { + "body": { + "properties": { + "publishedDate": "2018-03-20T09:12:28Z", + "endOfLifeDate": "2022-03-20T09:12:28Z" + }, + "location": "myLocation", + "name": "myGalleryImageVersionName", + "identifier": { + "uniqueId": "/SharedGalleries/galleryUniqueName/Images/myGalleryImageName/Versions/myGalleryImageVersionName" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/ListGalleriesInAResourceGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/ListGalleriesInAResourceGroup.json new file mode 100644 index 000000000000..756c512dd1fe --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/ListGalleriesInAResourceGroup.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-09-30" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "description": "This is the gallery description.", + "identifier": { + "uniqueName": "{subscription-id}-MYGALLERYNAME" + }, + "provisioningState": "Succeeded" + }, + "location": "West US", + "name": "myGalleryName", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/myGalleryName" + } + ], + "nextLink": "http://svchost:99/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries?$skiptoken={token}/Subscriptions/{subscriptionId}/ResourceGroups/myResourceGroup/galleries/myGalleryName" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/ListGalleriesInASubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/ListGalleriesInASubscription.json new file mode 100644 index 000000000000..280325678dd3 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/ListGalleriesInASubscription.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2020-09-30" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "description": "This is the gallery description.", + "identifier": { + "uniqueName": "{subscription-id}-MYGALLERYNAME" + }, + "provisioningState": "Succeeded" + }, + "location": "West US", + "name": "myGalleryName", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/myGalleryName" + } + ], + "nextLink": "http://svchost:99/subscriptions/{subscriptionId}/providers/Microsoft.Compute/galleries?$skiptoken={token}/Subscriptions/{subscriptionId}/ResourceGroups/myResourceGroup/galleries/myGalleryName" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/ListGalleryApplicationVersionsInAGalleryApplication.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/ListGalleryApplicationVersionsInAGalleryApplication.json new file mode 100644 index 000000000000..b0ea6bfdba57 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/ListGalleryApplicationVersionsInAGalleryApplication.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-09-30", + "galleryName": "myGalleryName", + "galleryApplicationName": "myGalleryApplicationName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "location": "West US", + "name": "1.0.0", + "type": "Microsoft.Compute/galleries/applications/versions", + "id": "/subscriptions/01523d7c-60da-455e-adef-521b547922c4/resourceGroups/galleryPsTestRg98/providers/Microsoft.Compute/galleries/galleryPsTestGallery6165/applications/galleryPsTestGalleryApplication7825/versions/1.0.0", + "properties": { + "publishingProfile": { + "source": { + "mediaLink": "https://mystorageaccount.blob.core.windows.net/mycontainer/package.zip?{sasKey}" + }, + "manageActions": { + "install": "powershell -command \"Expand-Archive -Path package.zip -DestinationPath C:\\package\"", + "remove": "del C:\\package " + }, + "enableHealthCheck": false, + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "storageAccountType": "Standard_LRS" + } + ], + "replicaCount": 1, + "excludeFromLatest": false, + "publishedDate": "2019-06-21T17:13:57.5972568+00:00", + "endOfLifeDate": "2019-07-01T07:00:00+00:00", + "storageAccountType": "Standard_LRS" + }, + "provisioningState": "Succeeded" + } + } + ], + "nextLink": "http://svchost:99/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/myGalleryName/applications/myGalleryApplicationName/versions?$skiptoken={token}/Subscriptions/{subscriptionId}/ResourceGroups/myResourceGroup/galleries/myGalleryName/applications/myGalleryApplicationName/versions/myGalleryApplicationVersionName" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/ListGalleryApplicationsInAGallery.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/ListGalleryApplicationsInAGallery.json new file mode 100644 index 000000000000..d21b58c493ff --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/ListGalleryApplicationsInAGallery.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-09-30", + "galleryName": "myGalleryName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "description": "This is the gallery application description.", + "eula": "This is the gallery application EULA.", + "privacyStatementUri": "myPrivacyStatementUri}", + "releaseNoteUri": "myReleaseNoteUri", + "supportedOSType": "Windows" + }, + "location": "West US", + "name": "myGalleryApplicationName" + } + ], + "nextLink": "http://svchost:99/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/myGalleryName/applications?$skiptoken={token}/Subscriptions/{subscriptionId}/ResourceGroups/myResourceGroup/galleries/myGalleryName/applications/myGalleryApplicationName" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/ListGalleryImageVersionsInAGalleryImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/ListGalleryImageVersionsInAGalleryImage.json new file mode 100644 index 000000000000..499ad4e6366f --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/ListGalleryImageVersionsInAGalleryImage.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-09-30", + "galleryName": "myGalleryName", + "galleryImageName": "myGalleryImageName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "publishingProfile": { + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "storageAccountType": "Standard_LRS", + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "lun": 0, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myOtherDiskEncryptionSet" + }, + { + "lun": 1, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myDiskEncryptionSet" + } + ] + } + }, + { + "name": "East US", + "regionalReplicaCount": 2, + "storageAccountType": "Standard_LRS" + } + ], + "replicaCount": 1, + "publishedDate": "2018-01-01T00:00:00Z", + "storageAccountType": "Standard_LRS" + }, + "storageProfile": { + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/images/{imageName}" + }, + "osDiskImage": { + "sizeInGB": 10, + "hostCaching": "ReadOnly" + }, + "dataDiskImages": [ + { + "lun": 1, + "sizeInGB": 10, + "hostCaching": "None" + } + ] + }, + "provisioningState": "Succeeded" + }, + "location": "West US", + "name": "1.0.0" + } + ], + "nextLink": "http://svchost:99/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/myGalleryName/images/myGalleryImageName/versions?$skiptoken={token}/Subscriptions/{subscriptionId}/ResourceGroups/myResourceGroup/galleries/myGalleryName/images/myGalleryImageName/versions/myGalleryImageVersionName" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/ListGalleryImagesInAGallery.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/ListGalleryImagesInAGallery.json new file mode 100644 index 000000000000..570fc0e39b6f --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/ListGalleryImagesInAGallery.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-09-30", + "galleryName": "myGalleryName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "osType": "Windows", + "osState": "Generalized", + "hyperVGeneration": "V1", + "identifier": { + "publisher": "myPublisherName", + "offer": "myOfferName", + "sku": "mySkuName" + }, + "provisioningState": "Succeeded" + }, + "location": "West US", + "name": "myGalleryImageName" + } + ], + "nextLink": "http://svchost:99/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/myGalleryName/images?$skiptoken={token}/Subscriptions/{subscriptionId}/ResourceGroups/myResourceGroup/galleries/myGalleryName/images/myGalleryImageName" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/ListSharedGalleries.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/ListSharedGalleries.json new file mode 100644 index 000000000000..baebdfed7d93 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/ListSharedGalleries.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "location": "myLocation", + "api-version": "2020-09-30" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "location": "myLocation", + "name": "galleryUniqueName", + "identifier": { + "uniqueId": "/SharedGalleries/galleryUniqueName" + } + } + ], + "nextLink": "http://svchost:99/subscriptions/{subscriptionId}/providers/Microsoft.Compute/sharedGalleries?$skiptoken={token}/Subscriptions/{subscriptionId}/galleries/galleryUniqueName" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/ListSharedGalleryImageVersions.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/ListSharedGalleryImageVersions.json new file mode 100644 index 000000000000..95baa0b1144f --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/ListSharedGalleryImageVersions.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "location": "myLocation", + "api-version": "2020-09-30", + "galleryUniqueName": "galleryUniqueName", + "galleryImageName": "myGalleryImageName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "publishedDate": "2018-03-20T09:12:28Z", + "endOfLifeDate": "2022-03-20T09:12:28Z" + }, + "location": "myLocation", + "name": "myGalleryImageVersionName", + "identifier": { + "uniqueId": "/SharedGalleries/galleryUniqueName/Images/myGalleryImageName/Versions/myGalleryImageVersionName" + } + } + ], + "nextLink": "http://svchost:99/subscriptions/{subscription-Id}/providers/Microsoft.Compute/sharedGalleries/galleryUniqueName/images/myGalleryImageName/versions?$skiptoken={token}/Subscriptions/{subscription-Id}/galleries/galleryUniqueName/images/myGalleryImageName/versions/myGalleryImageVersionName" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/ListSharedGalleryImages.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/ListSharedGalleryImages.json new file mode 100644 index 000000000000..47a2b4ac926a --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/ListSharedGalleryImages.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "location": "myLocation", + "api-version": "2020-09-30", + "galleryUniqueName": "galleryUniqueName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "osType": "Windows", + "osState": "Generalized", + "hyperVGeneration": "V1", + "identifier": { + "publisher": "myPublisherName", + "offer": "myOfferName", + "sku": "mySkuName" + } + }, + "location": "myLocation", + "name": "myGalleryImageName", + "identifier": { + "uniqueId": "/SharedGalleries/galleryUniqueName/Images/myGalleryImageName" + } + } + ], + "nextLink": "http://svchost:99/subscriptions/{subscription-Id}/providers/Microsoft.Compute/sharedGalleries/galleryUniqueName/images?$skiptoken={token}/Subscriptions/{subscription-Id}/galleries/galleryUniqueName/images/myGalleryImageName" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/ResetSharingProfileInAGallery.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/ResetSharingProfileInAGallery.json new file mode 100644 index 000000000000..98c4a29b2a29 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/ResetSharingProfileInAGallery.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-09-30", + "galleryName": "myGalleryName", + "sharingUpdate": { + "operationType": "Reset" + } + }, + "responses": { + "200": { + "body": { + "operationType": "Reset" + } + }, + "202": { + "body": { + "operationType": "Reset" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/UpdateASimpleGallery.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/UpdateASimpleGallery.json new file mode 100644 index 000000000000..d3618117f15c --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/UpdateASimpleGallery.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-09-30", + "galleryName": "myGalleryName", + "gallery": { + "properties": { + "description": "This is the gallery description." + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "description": "This is the gallery description.", + "identifier": { + "uniqueName": "{subscription-id}-MYGALLERYNAME" + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myGalleryName" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/UpdateASimpleGalleryApplication.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/UpdateASimpleGalleryApplication.json new file mode 100644 index 000000000000..0bb889c29a26 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/UpdateASimpleGalleryApplication.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-09-30", + "galleryName": "myGalleryName", + "galleryApplicationName": "myGalleryApplicationName", + "galleryApplication": { + "properties": { + "description": "This is the gallery application description.", + "eula": "This is the gallery application EULA.", + "privacyStatementUri": "myPrivacyStatementUri}", + "releaseNoteUri": "myReleaseNoteUri", + "supportedOSType": "Windows" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "description": "This is the gallery application description.", + "eula": "This is the gallery application EULA.", + "privacyStatementUri": "myPrivacyStatementUri}", + "releaseNoteUri": "myReleaseNoteUri", + "supportedOSType": "Windows" + }, + "location": "West US", + "name": "myGalleryApplicationName", + "type": "Microsoft.Compute/galleries", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/myGalleryName/applications/myGalleryApplicationName" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/UpdateASimpleGalleryApplicationVersion.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/UpdateASimpleGalleryApplicationVersion.json new file mode 100644 index 000000000000..9933e2d8d709 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/UpdateASimpleGalleryApplicationVersion.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-09-30", + "galleryName": "myGalleryName", + "galleryApplicationName": "myGalleryApplicationName", + "galleryApplicationVersionName": "1.0.0", + "galleryApplicationVersion": { + "properties": { + "publishingProfile": { + "source": { + "mediaLink": "https://mystorageaccount.blob.core.windows.net/mycontainer/package.zip?{sasKey}" + }, + "manageActions": { + "install": "powershell -command \"Expand-Archive -Path package.zip -DestinationPath C:\\package\"", + "remove": "del C:\\package " + }, + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "storageAccountType": "Standard_LRS" + } + ], + "replicaCount": 1, + "endOfLifeDate": "2019-07-01T07:00:00Z", + "storageAccountType": "Standard_LRS" + } + } + } + }, + "responses": { + "200": { + "body": { + "location": "West US", + "name": "1.0.0", + "type": "Microsoft.Compute/galleries/applications/versions", + "id": "/subscriptions/01523d7c-60da-455e-adef-521b547922c4/resourceGroups/galleryPsTestRg98/providers/Microsoft.Compute/galleries/galleryPsTestGallery6165/applications/galleryPsTestGalleryApplication7825/versions/1.0.0", + "properties": { + "publishingProfile": { + "source": { + "mediaLink": "https://mystorageaccount.blob.core.windows.net/mycontainer/package.zip?{sasKey}" + }, + "manageActions": { + "install": "powershell -command \"Expand-Archive -Path package.zip -DestinationPath C:\\package\"", + "remove": "del C:\\package " + }, + "enableHealthCheck": false, + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "storageAccountType": "Standard_LRS" + } + ], + "replicaCount": 1, + "excludeFromLatest": false, + "publishedDate": "2019-06-21T17:13:57.5972568+00:00", + "endOfLifeDate": "2019-07-01T07:00:00+00:00", + "storageAccountType": "Standard_LRS" + }, + "provisioningState": "Updating" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/UpdateASimpleGalleryImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/UpdateASimpleGalleryImage.json new file mode 100644 index 000000000000..ebfd473f7e95 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/UpdateASimpleGalleryImage.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-09-30", + "galleryName": "myGalleryName", + "galleryImageName": "myGalleryImageName", + "galleryImage": { + "properties": { + "osType": "Windows", + "osState": "Generalized", + "hyperVGeneration": "V1", + "identifier": { + "publisher": "myPublisherName", + "offer": "myOfferName", + "sku": "mySkuName" + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "osType": "Windows", + "osState": "Generalized", + "hyperVGeneration": "V1", + "identifier": { + "publisher": "myPublisherName", + "offer": "myOfferName", + "sku": "mySkuName" + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myGalleryImageName" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/UpdateASimpleGalleryImageVersion.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/UpdateASimpleGalleryImageVersion.json new file mode 100644 index 000000000000..5cf4547abad1 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/UpdateASimpleGalleryImageVersion.json @@ -0,0 +1,87 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-09-30", + "galleryName": "myGalleryName", + "galleryImageName": "myGalleryImageName", + "galleryImageVersionName": "1.0.0", + "galleryImageVersion": { + "properties": { + "publishingProfile": { + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1 + }, + { + "name": "East US", + "regionalReplicaCount": 2, + "storageAccountType": "Standard_ZRS" + } + ] + }, + "storageProfile": { + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/images/{imageName}" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "publishingProfile": { + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "storageAccountType": "Standard_LRS", + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "lun": 1, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myDiskEncryptionSet" + } + ] + } + }, + { + "name": "East US", + "regionalReplicaCount": 2, + "storageAccountType": "Standard_ZRS" + } + ], + "replicaCount": 1, + "publishedDate": "2018-01-01T00:00:00Z", + "storageAccountType": "Standard_LRS" + }, + "storageProfile": { + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/images/{imageName}" + }, + "osDiskImage": { + "sizeInGB": 10, + "hostCaching": "ReadOnly" + }, + "dataDiskImages": [ + { + "lun": 1, + "sizeInGB": 10, + "hostCaching": "None" + } + ] + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "1.0.0" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/UpdateASimpleGalleryImageVersionWithoutSourceId.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/UpdateASimpleGalleryImageVersionWithoutSourceId.json new file mode 100644 index 000000000000..c02831e28f92 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/examples/UpdateASimpleGalleryImageVersionWithoutSourceId.json @@ -0,0 +1,83 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-09-30", + "galleryName": "myGalleryName", + "galleryImageName": "myGalleryImageName", + "galleryImageVersionName": "1.0.0", + "galleryImageVersion": { + "properties": { + "publishingProfile": { + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1 + }, + { + "name": "East US", + "regionalReplicaCount": 2, + "storageAccountType": "Standard_ZRS" + } + ] + }, + "storageProfile": {} + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "publishingProfile": { + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "storageAccountType": "Standard_LRS", + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "lun": 1, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myDiskEncryptionSet" + } + ] + } + }, + { + "name": "East US", + "regionalReplicaCount": 2, + "storageAccountType": "Standard_ZRS" + } + ], + "replicaCount": 1, + "publishedDate": "2018-01-01T00:00:00Z", + "storageAccountType": "Standard_LRS" + }, + "storageProfile": { + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/images/{imageName}" + }, + "osDiskImage": { + "sizeInGB": 10, + "hostCaching": "ReadOnly" + }, + "dataDiskImages": [ + { + "lun": 1, + "sizeInGB": 10, + "hostCaching": "None" + } + ] + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "1.0.0" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/gallery.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/gallery.json new file mode 100644 index 000000000000..d1cfed5ba1c3 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/gallery.json @@ -0,0 +1,2876 @@ +{ + "swagger": "2.0", + "info": { + "title": "SharedImageGalleryServiceClient", + "description": "Shared Image Gallery Service Client.", + "version": "2020-09-30" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://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/galleries/{galleryName}": { + "put": { + "tags": [ + "Galleries" + ], + "operationId": "Galleries_CreateOrUpdate", + "description": "Create or update a Shared Image Gallery.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "galleryName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Image Gallery. The allowed characters are alphabets and numbers with dots and periods allowed in the middle. The maximum length is 80 characters." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "gallery", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Gallery" + }, + "description": "Parameters supplied to the create or update Shared Image Gallery operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Gallery" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/Gallery" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/Gallery" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create or update a simple gallery.": { + "$ref": "./examples/CreateOrUpdateASimpleGallery.json" + }, + "Create or update a simple gallery with sharing profile.": { + "$ref": "./examples/CreateOrUpdateASimpleGalleryWithSharingProfile.json" + } + } + }, + "patch": { + "tags": [ + "Galleries" + ], + "operationId": "Galleries_Update", + "description": "Update a Shared Image Gallery.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "galleryName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Image Gallery. The allowed characters are alphabets and numbers with dots and periods allowed in the middle. The maximum length is 80 characters." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "gallery", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GalleryUpdate" + }, + "description": "Parameters supplied to the update Shared Image Gallery operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Gallery" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update a simple gallery.": { + "$ref": "./examples/UpdateASimpleGallery.json" + } + } + }, + "get": { + "tags": [ + "Galleries" + ], + "operationId": "Galleries_Get", + "description": "Retrieves information about a Shared Image Gallery.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "galleryName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Image Gallery." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "$select", + "in": "query", + "required": false, + "type": "string", + "description": "The select expression to apply on the operation.", + "enum": [ + "Permissions" + ], + "x-ms-enum": { + "name": "SelectPermissions", + "modelAsString": true + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Gallery" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get a gallery.": { + "$ref": "./examples/GetAGallery.json" + }, + "Get a gallery with select permissions.": { + "$ref": "./examples/GetAGalleryWithSelectPermissions.json" + } + } + }, + "delete": { + "tags": [ + "Galleries" + ], + "operationId": "Galleries_Delete", + "description": "Delete a Shared Image Gallery.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "galleryName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Image Gallery to be deleted." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete a gallery.": { + "$ref": "./examples/DeleteAGallery.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/images/{galleryImageName}": { + "put": { + "tags": [ + "GalleryImages" + ], + "operationId": "GalleryImages_CreateOrUpdate", + "description": "Create or update a gallery image definition.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "galleryName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Image Gallery in which the Image Definition is to be created." + }, + { + "name": "galleryImageName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gallery image definition to be created or updated. The allowed characters are alphabets and numbers with dots, dashes, and periods allowed in the middle. The maximum length is 80 characters." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "galleryImage", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GalleryImage" + }, + "description": "Parameters supplied to the create or update gallery image operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GalleryImage" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/GalleryImage" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/GalleryImage" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create or update a simple gallery image.": { + "$ref": "./examples/CreateOrUpdateASimpleGalleryImage.json" + } + } + }, + "patch": { + "tags": [ + "GalleryImages" + ], + "operationId": "GalleryImages_Update", + "description": "Update a gallery image definition.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "galleryName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Image Gallery in which the Image Definition is to be updated." + }, + { + "name": "galleryImageName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gallery image definition to be updated. The allowed characters are alphabets and numbers with dots, dashes, and periods allowed in the middle. The maximum length is 80 characters." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "galleryImage", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GalleryImageUpdate" + }, + "description": "Parameters supplied to the update gallery image operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GalleryImage" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update a simple gallery image.": { + "$ref": "./examples/UpdateASimpleGalleryImage.json" + } + } + }, + "get": { + "tags": [ + "GalleryImages" + ], + "operationId": "GalleryImages_Get", + "description": "Retrieves information about a gallery image definition.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "galleryName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Image Gallery from which the Image Definitions are to be retrieved." + }, + { + "name": "galleryImageName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gallery image definition to be retrieved." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GalleryImage" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get a gallery image.": { + "$ref": "./examples/GetAGalleryImage.json" + } + } + }, + "delete": { + "tags": [ + "GalleryImages" + ], + "operationId": "GalleryImages_Delete", + "description": "Delete a gallery image.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "galleryName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Image Gallery in which the Image Definition is to be deleted." + }, + { + "name": "galleryImageName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gallery image definition to be deleted." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete a gallery image.": { + "$ref": "./examples/DeleteAGalleryImage.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/images/{galleryImageName}/versions/{galleryImageVersionName}": { + "put": { + "tags": [ + "GalleryImageVersions" + ], + "operationId": "GalleryImageVersions_CreateOrUpdate", + "description": "Create or update a gallery image version.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "galleryName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Image Gallery in which the Image Definition resides." + }, + { + "name": "galleryImageName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gallery image definition in which the Image Version is to be created." + }, + { + "name": "galleryImageVersionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gallery image version to be created. Needs to follow semantic version name pattern: The allowed characters are digit and period. Digits must be within the range of a 32-bit integer. Format: .." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "galleryImageVersion", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GalleryImageVersion" + }, + "description": "Parameters supplied to the create or update gallery image version operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GalleryImageVersion" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/GalleryImageVersion" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/GalleryImageVersion" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create or update a simple Gallery Image Version using managed image as source.": { + "$ref": "./examples/CreateOrUpdateASimpleGalleryImageVersion.json" + }, + "Create or update a simple Gallery Image Version using snapshots as a source.": { + "$ref": "./examples/CreateOrUpdateASimpleGalleryImageVersionWithSnapshotsAsSource.json" + }, + "Create or update a simple Gallery Image Version using VM as source.": { + "$ref": "./examples/CreateOrUpdateASimpleGalleryImageVersionWithVMAsSource.json" + }, + "Create or update a simple Gallery Image Version using shared image as source.": { + "$ref": "./examples/CreateOrUpdateASimpleGalleryImageVersionWithImageVersionAsSource.json" + }, + "Create or update a simple Gallery Image Version using mix of disks and snapshots as a source.": { + "$ref": "./examples/CreateOrUpdateASimpleGalleryImageVersionWithSnapshotsAsSource.json" + }, + "Create or update a simple Gallery Image Version using vhd as a source.": { + "$ref": "./examples/CreateOrUpdateASimpleGalleryImageVersionWithVHD.json" + } + } + }, + "patch": { + "tags": [ + "GalleryImageVersions" + ], + "operationId": "GalleryImageVersions_Update", + "description": "Update a gallery image version.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "galleryName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Image Gallery in which the Image Definition resides." + }, + { + "name": "galleryImageName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gallery image definition in which the Image Version is to be updated." + }, + { + "name": "galleryImageVersionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gallery image version to be updated. Needs to follow semantic version name pattern: The allowed characters are digit and period. Digits must be within the range of a 32-bit integer. Format: .." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "galleryImageVersion", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GalleryImageVersionUpdate" + }, + "description": "Parameters supplied to the update gallery image version operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GalleryImageVersion" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update a simple Gallery Image Version (Managed Image as source).": { + "$ref": "./examples/UpdateASimpleGalleryImageVersion.json" + }, + "Update a simple Gallery Image Version without source id.": { + "$ref": "./examples/UpdateASimpleGalleryImageVersionWithoutSourceId.json" + } + } + }, + "get": { + "tags": [ + "GalleryImageVersions" + ], + "operationId": "GalleryImageVersions_Get", + "description": "Retrieves information about a gallery image version.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "galleryName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Image Gallery in which the Image Definition resides." + }, + { + "name": "galleryImageName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gallery image definition in which the Image Version resides." + }, + { + "name": "galleryImageVersionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gallery image version to be retrieved." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation.", + "enum": [ + "ReplicationStatus" + ], + "x-ms-enum": { + "name": "ReplicationStatusTypes", + "modelAsString": true + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GalleryImageVersion" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get a gallery image version.": { + "$ref": "./examples/GetAGalleryImageVersion.json" + }, + "Get a gallery image version with replication status.": { + "$ref": "./examples/GetAGalleryImageVersionWithReplicationStatus.json" + }, + "Get a gallery image version with snapshots as a source.": { + "$ref": "./examples/GetAGalleryImageVersionWithSnapshotsAsSource.json" + }, + "Get a gallery image version with vhd as a source.": { + "$ref": "./examples/GetAGalleryImageVersionWithVhdAsSource.json" + } + } + }, + "delete": { + "tags": [ + "GalleryImageVersions" + ], + "operationId": "GalleryImageVersions_Delete", + "description": "Delete a gallery image version.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "galleryName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Image Gallery in which the Image Definition resides." + }, + { + "name": "galleryImageName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gallery image definition in which the Image Version resides." + }, + { + "name": "galleryImageVersionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gallery image version to be deleted." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete a gallery image version.": { + "$ref": "./examples/DeleteAGalleryImageVersion.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/applications/{galleryApplicationName}": { + "put": { + "tags": [ + "GalleryApplications" + ], + "operationId": "GalleryApplications_CreateOrUpdate", + "description": "Create or update a gallery Application Definition.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "galleryName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Application Gallery in which the Application Definition is to be created." + }, + { + "name": "galleryApplicationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gallery Application Definition to be created or updated. The allowed characters are alphabets and numbers with dots, dashes, and periods allowed in the middle. The maximum length is 80 characters." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "galleryApplication", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GalleryApplication" + }, + "description": "Parameters supplied to the create or update gallery Application operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GalleryApplication" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/GalleryApplication" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/GalleryApplication" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create or update a simple gallery Application.": { + "$ref": "./examples/CreateOrUpdateASimpleGalleryApplication.json" + } + } + }, + "patch": { + "tags": [ + "GalleryApplications" + ], + "operationId": "GalleryApplications_Update", + "description": "Update a gallery Application Definition.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "galleryName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Application Gallery in which the Application Definition is to be updated." + }, + { + "name": "galleryApplicationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gallery Application Definition to be updated. The allowed characters are alphabets and numbers with dots, dashes, and periods allowed in the middle. The maximum length is 80 characters." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "galleryApplication", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GalleryApplicationUpdate" + }, + "description": "Parameters supplied to the update gallery Application operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GalleryApplication" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update a simple gallery Application.": { + "$ref": "./examples/UpdateASimpleGalleryApplication.json" + } + } + }, + "get": { + "tags": [ + "GalleryApplications" + ], + "operationId": "GalleryApplications_Get", + "description": "Retrieves information about a gallery Application Definition.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "galleryName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Application Gallery from which the Application Definitions are to be retrieved." + }, + { + "name": "galleryApplicationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gallery Application Definition to be retrieved." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GalleryApplication" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get a gallery Application.": { + "$ref": "./examples/GetAGalleryApplication.json" + } + } + }, + "delete": { + "tags": [ + "GalleryApplications" + ], + "operationId": "GalleryApplications_Delete", + "description": "Delete a gallery Application.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "galleryName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Application Gallery in which the Application Definition is to be deleted." + }, + { + "name": "galleryApplicationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gallery Application Definition to be deleted." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete a gallery Application.": { + "$ref": "./examples/DeleteAGalleryApplication.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/applications/{galleryApplicationName}/versions/{galleryApplicationVersionName}": { + "put": { + "tags": [ + "GalleryApplicationVersions" + ], + "operationId": "GalleryApplicationVersions_CreateOrUpdate", + "description": "Create or update a gallery Application Version.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "galleryName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Application Gallery in which the Application Definition resides." + }, + { + "name": "galleryApplicationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gallery Application Definition in which the Application Version is to be created." + }, + { + "name": "galleryApplicationVersionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gallery Application Version to be created. Needs to follow semantic version name pattern: The allowed characters are digit and period. Digits must be within the range of a 32-bit integer. Format: .." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "galleryApplicationVersion", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GalleryApplicationVersion" + }, + "description": "Parameters supplied to the create or update gallery Application Version operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GalleryApplicationVersion" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/GalleryApplicationVersion" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/GalleryApplicationVersion" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create or update a simple gallery Application Version.": { + "$ref": "./examples/CreateOrUpdateASimpleGalleryApplicationVersion.json" + } + } + }, + "patch": { + "tags": [ + "GalleryApplicationVersions" + ], + "operationId": "GalleryApplicationVersions_Update", + "description": "Update a gallery Application Version.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "galleryName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Application Gallery in which the Application Definition resides." + }, + { + "name": "galleryApplicationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gallery Application Definition in which the Application Version is to be updated." + }, + { + "name": "galleryApplicationVersionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gallery Application Version to be updated. Needs to follow semantic version name pattern: The allowed characters are digit and period. Digits must be within the range of a 32-bit integer. Format: .." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "galleryApplicationVersion", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GalleryApplicationVersionUpdate" + }, + "description": "Parameters supplied to the update gallery Application Version operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GalleryApplicationVersion" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update a simple gallery Application Version.": { + "$ref": "./examples/UpdateASimpleGalleryApplicationVersion.json" + } + } + }, + "get": { + "tags": [ + "GalleryApplicationVersions" + ], + "operationId": "GalleryApplicationVersions_Get", + "description": "Retrieves information about a gallery Application Version.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "galleryName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Application Gallery in which the Application Definition resides." + }, + { + "name": "galleryApplicationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gallery Application Definition in which the Application Version resides." + }, + { + "name": "galleryApplicationVersionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gallery Application Version to be retrieved." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation.", + "enum": [ + "ReplicationStatus" + ], + "x-ms-enum": { + "name": "ReplicationStatusTypes", + "modelAsString": true + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GalleryApplicationVersion" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get a gallery Application Version.": { + "$ref": "./examples/GetAGalleryApplicationVersion.json" + }, + "Get a gallery Application Version with replication status.": { + "$ref": "./examples/GetAGalleryApplicationVersionWithReplicationStatus.json" + } + } + }, + "delete": { + "tags": [ + "GalleryApplicationVersions" + ], + "operationId": "GalleryApplicationVersions_Delete", + "description": "Delete a gallery Application Version.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "galleryName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Application Gallery in which the Application Definition resides." + }, + { + "name": "galleryApplicationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gallery Application Definition in which the Application Version resides." + }, + { + "name": "galleryApplicationVersionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gallery Application Version to be deleted." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete a gallery Application Version.": { + "$ref": "./examples/DeleteAGalleryApplicationVersion.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/galleries": { + "get": { + "tags": [ + "Galleries" + ], + "operationId": "Galleries_ListByResourceGroup", + "description": "List galleries under a resource group.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GalleryList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List galleries in a resource group.": { + "$ref": "./examples/ListGalleriesInAResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/galleries": { + "get": { + "tags": [ + "Galleries" + ], + "operationId": "Galleries_List", + "description": "List galleries under a subscription.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GalleryList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List galleries in a subscription.": { + "$ref": "./examples/ListGalleriesInASubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/images": { + "get": { + "tags": [ + "GalleryImages" + ], + "operationId": "GalleryImages_ListByGallery", + "description": "List gallery image definitions in a gallery.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "galleryName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Image Gallery from which Image Definitions are to be listed." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GalleryImageList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List gallery images in a gallery.": { + "$ref": "./examples/ListGalleryImagesInAGallery.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/images/{galleryImageName}/versions": { + "get": { + "tags": [ + "GalleryImageVersions" + ], + "operationId": "GalleryImageVersions_ListByGalleryImage", + "description": "List gallery image versions in a gallery image definition.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "galleryName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Image Gallery in which the Image Definition resides." + }, + { + "name": "galleryImageName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Image Gallery Image Definition from which the Image Versions are to be listed." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GalleryImageVersionList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List gallery image versions in a gallery image definition.": { + "$ref": "./examples/ListGalleryImageVersionsInAGalleryImage.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/applications": { + "get": { + "tags": [ + "GalleryApplications" + ], + "operationId": "GalleryApplications_ListByGallery", + "description": "List gallery Application Definitions in a gallery.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "galleryName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Application Gallery from which Application Definitions are to be listed." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GalleryApplicationList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List gallery Applications in a gallery.": { + "$ref": "./examples/ListGalleryApplicationsInAGallery.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/applications/{galleryApplicationName}/versions": { + "get": { + "tags": [ + "GalleryApplicationVersions" + ], + "operationId": "GalleryApplicationVersions_ListByGalleryApplication", + "description": "List gallery Application Versions in a gallery Application Definition.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "galleryName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Application Gallery in which the Application Definition resides." + }, + { + "name": "galleryApplicationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Application Gallery Application Definition from which the Application Versions are to be listed." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GalleryApplicationVersionList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List gallery Application Versions in a gallery Application Definition.": { + "$ref": "./examples/ListGalleryApplicationVersionsInAGalleryApplication.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/share": { + "post": { + "tags": [ + "GallerySharingUpdate" + ], + "operationId": "GallerySharingProfile_Update", + "description": "Update sharing profile of a gallery.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "galleryName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Image Gallery." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "sharingUpdate", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SharingUpdate" + }, + "description": "Parameters supplied to the update gallery sharing profile." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SharingUpdate" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/SharingUpdate" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Add sharing id to the sharing profile of a gallery.": { + "$ref": "./examples/AddToSharingProfileInAGallery.json" + }, + "reset sharing profile of a gallery.": { + "$ref": "./examples/ResetSharingProfileInAGallery.json" + } + } + } + } + }, + "definitions": { + "Gallery": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/GalleryProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Specifies information about the Shared Image Gallery that you want to create or update." + }, + "GalleryUpdate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/GalleryProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/UpdateResourceDefinition" + } + ], + "description": "Specifies information about the Shared Image Gallery that you want to update." + }, + "GalleryProperties": { + "properties": { + "description": { + "type": "string", + "description": "The description of this Shared Image Gallery resource. This property is updatable." + }, + "identifier": { + "$ref": "#/definitions/GalleryIdentifier" + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "title": "The current state of the gallery.", + "description": "The provisioning state, which only appears in the response.", + "enum": [ + "Creating", + "Updating", + "Failed", + "Succeeded", + "Deleting", + "Migrating" + ] + }, + "sharingProfile": { + "$ref": "#/definitions/SharingProfile" + } + }, + "description": "Describes the properties of a Shared Image Gallery." + }, + "GalleryIdentifier": { + "properties": { + "uniqueName": { + "readOnly": true, + "type": "string", + "description": "The unique name of the Shared Image Gallery. This name is generated automatically by Azure." + } + }, + "description": "Describes the gallery unique name." + }, + "SharingProfile": { + "description": "Profile for gallery sharing to subscription or tenant", + "properties": { + "permissions": { + "type": "string", + "description": "This property allows you to specify the permission of sharing gallery.

Possible values are:

**Private**

**Groups**", + "enum": [ + "Private", + "Groups" + ], + "x-ms-enum": { + "name": "GallerySharingPermissionTypes", + "modelAsString": true + } + }, + "groups": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SharingProfileGroup" + }, + "description": "A list of sharing profile groups." + } + } + }, + "SharingProfileGroup": { + "description": "Group of the gallery sharing profile", + "properties": { + "type": { + "type": "string", + "description": "This property allows you to specify the type of sharing group.

Possible values are:

**Subscriptions**

**AADTenants**", + "enum": [ + "Subscriptions", + "AADTenants" + ], + "x-ms-enum": { + "name": "SharingProfileGroupTypes", + "modelAsString": true + } + }, + "ids": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of subscription/tenant ids the gallery is aimed to be shared to." + } + } + }, + "GalleryApplication": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/GalleryApplicationProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Specifies information about the gallery Application Definition that you want to create or update." + }, + "GalleryApplicationUpdate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/GalleryApplicationProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/UpdateResourceDefinition" + } + ], + "description": "Specifies information about the gallery Application Definition that you want to update." + }, + "GalleryApplicationProperties": { + "properties": { + "description": { + "type": "string", + "description": "The description of this gallery Application Definition resource. This property is updatable." + }, + "eula": { + "type": "string", + "description": "The Eula agreement for the gallery Application Definition." + }, + "privacyStatementUri": { + "type": "string", + "description": "The privacy statement uri." + }, + "releaseNoteUri": { + "type": "string", + "description": "The release note uri." + }, + "endOfLifeDate": { + "type": "string", + "format": "date-time", + "description": "The end of life date of the gallery Application Definition. This property can be used for decommissioning purposes. This property is updatable." + }, + "supportedOSType": { + "type": "string", + "description": "This property allows you to specify the supported type of the OS that application is built for.

Possible values are:

**Windows**

**Linux**", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": false + } + } + }, + "required": [ + "supportedOSType" + ], + "description": "Describes the properties of a gallery Application Definition." + }, + "GalleryApplicationVersion": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/GalleryApplicationVersionProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Specifies information about the gallery Application Version that you want to create or update." + }, + "GalleryApplicationVersionUpdate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/GalleryApplicationVersionProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/UpdateResourceDefinition" + } + ], + "description": "Specifies information about the gallery Application Version that you want to update." + }, + "GalleryApplicationVersionProperties": { + "properties": { + "publishingProfile": { + "$ref": "#/definitions/GalleryApplicationVersionPublishingProfile" + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "title": "The current state of the gallery Application Version.", + "description": "The provisioning state, which only appears in the response.", + "enum": [ + "Creating", + "Updating", + "Failed", + "Succeeded", + "Deleting", + "Migrating" + ] + }, + "replicationStatus": { + "readOnly": true, + "$ref": "#/definitions/ReplicationStatus" + } + }, + "required": [ + "publishingProfile" + ], + "description": "Describes the properties of a gallery image version." + }, + "GalleryApplicationVersionPublishingProfile": { + "properties": { + "source": { + "$ref": "#/definitions/UserArtifactSource" + }, + "manageActions": { + "$ref": "#/definitions/UserArtifactManage" + }, + "enableHealthCheck": { + "type": "boolean", + "description": "Optional. Whether or not this application reports health." + } + }, + "allOf": [ + { + "$ref": "#/definitions/GalleryArtifactPublishingProfileBase" + } + ], + "required": [ + "source" + ], + "description": "The publishing profile of a gallery image version." + }, + "UserArtifactSource": { + "properties": { + "mediaLink": { + "type": "string", + "description": "Required. The mediaLink of the artifact, must be a readable storage page blob." + }, + "defaultConfigurationLink": { + "type": "string", + "description": "Optional. The defaultConfigurationLink of the artifact, must be a readable storage page blob." + } + }, + "required": [ + "mediaLink" + ], + "description": "The source image from which the Image Version is going to be created." + }, + "UserArtifactManage": { + "properties": { + "install": { + "type": "string", + "description": "Required. The path and arguments to install the gallery application. This is limited to 4096 characters." + }, + "remove": { + "type": "string", + "description": "Required. The path and arguments to remove the gallery application. This is limited to 4096 characters." + }, + "update": { + "type": "string", + "description": "Optional. The path and arguments to update the gallery application. If not present, then update operation will invoke remove command on the previous version and install command on the current version of the gallery application. This is limited to 4096 characters." + } + }, + "required": [ + "install", + "remove" + ] + }, + "GalleryImage": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/GalleryImageProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Specifies information about the gallery image definition that you want to create or update." + }, + "GalleryImageUpdate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/GalleryImageProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/UpdateResourceDefinition" + } + ], + "description": "Specifies information about the gallery image definition that you want to update." + }, + "GalleryImageProperties": { + "properties": { + "description": { + "type": "string", + "description": "The description of this gallery image definition resource. This property is updatable." + }, + "eula": { + "type": "string", + "description": "The Eula agreement for the gallery image definition." + }, + "privacyStatementUri": { + "type": "string", + "description": "The privacy statement uri." + }, + "releaseNoteUri": { + "type": "string", + "description": "The release note uri." + }, + "osType": { + "type": "string", + "description": "This property allows you to specify the type of the OS that is included in the disk when creating a VM from a managed image.

Possible values are:

**Windows**

**Linux**", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": false + } + }, + "osState": { + "type": "string", + "description": "This property allows the user to specify whether the virtual machines created under this image are 'Generalized' or 'Specialized'.", + "enum": [ + "Generalized", + "Specialized" + ], + "x-ms-enum": { + "name": "OperatingSystemStateTypes", + "modelAsString": false + } + }, + "hyperVGeneration": { + "type": "string", + "description": "The hypervisor generation of the Virtual Machine. Applicable to OS disks only.", + "enum": [ + "V1", + "V2" + ], + "x-ms-enum": { + "name": "HyperVGeneration", + "modelAsString": true + } + }, + "endOfLifeDate": { + "type": "string", + "format": "date-time", + "description": "The end of life date of the gallery image definition. This property can be used for decommissioning purposes. This property is updatable." + }, + "identifier": { + "$ref": "#/definitions/GalleryImageIdentifier" + }, + "recommended": { + "$ref": "#/definitions/RecommendedMachineConfiguration" + }, + "disallowed": { + "$ref": "#/definitions/Disallowed" + }, + "purchasePlan": { + "$ref": "#/definitions/ImagePurchasePlan" + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "title": "The current state of the gallery image definition.", + "description": "The provisioning state, which only appears in the response.", + "enum": [ + "Creating", + "Updating", + "Failed", + "Succeeded", + "Deleting", + "Migrating" + ] + }, + "features": { + "type": "array", + "items": { + "$ref": "#/definitions/GalleryImageFeature" + }, + "description": "A list of gallery image features." + } + }, + "required": [ + "osType", + "osState", + "identifier" + ], + "description": "Describes the properties of a gallery image definition." + }, + "GalleryImageFeature": { + "properties": { + "name": { + "type": "string", + "description": "The name of the gallery image feature." + }, + "value": { + "type": "string", + "description": "The value of the gallery image feature." + } + }, + "description": "A feature for gallery image." + }, + "GalleryImageIdentifier": { + "properties": { + "publisher": { + "type": "string", + "description": "The name of the gallery image definition publisher." + }, + "offer": { + "type": "string", + "description": "The name of the gallery image definition offer." + }, + "sku": { + "type": "string", + "description": "The name of the gallery image definition SKU." + } + }, + "required": [ + "publisher", + "offer", + "sku" + ], + "description": "This is the gallery image definition identifier." + }, + "RecommendedMachineConfiguration": { + "properties": { + "vCPUs": { + "$ref": "#/definitions/ResourceRange" + }, + "memory": { + "$ref": "#/definitions/ResourceRange" + } + }, + "description": "The properties describe the recommended machine configuration for this Image Definition. These properties are updatable." + }, + "ResourceRange": { + "properties": { + "min": { + "type": "integer", + "format": "int32", + "description": "The minimum number of the resource." + }, + "max": { + "type": "integer", + "format": "int32", + "description": "The maximum number of the resource." + } + }, + "description": "Describes the resource range." + }, + "Disallowed": { + "properties": { + "diskTypes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of disk types." + } + }, + "description": "Describes the disallowed disk types." + }, + "ImagePurchasePlan": { + "properties": { + "name": { + "type": "string", + "description": "The plan ID." + }, + "publisher": { + "type": "string", + "description": "The publisher ID." + }, + "product": { + "type": "string", + "description": "The product ID." + } + }, + "description": "Describes the gallery image definition purchase plan. This is used by marketplace images." + }, + "GalleryImageVersion": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/GalleryImageVersionProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Specifies information about the gallery image version that you want to create or update." + }, + "GalleryImageVersionUpdate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/GalleryImageVersionProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/UpdateResourceDefinition" + } + ], + "description": "Specifies information about the gallery image version that you want to update." + }, + "GalleryImageVersionProperties": { + "properties": { + "publishingProfile": { + "$ref": "#/definitions/GalleryImageVersionPublishingProfile" + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "title": "The current state of the gallery image version.", + "description": "The provisioning state, which only appears in the response.", + "enum": [ + "Creating", + "Updating", + "Failed", + "Succeeded", + "Deleting", + "Migrating" + ] + }, + "storageProfile": { + "$ref": "#/definitions/GalleryImageVersionStorageProfile" + }, + "replicationStatus": { + "readOnly": true, + "$ref": "#/definitions/ReplicationStatus" + } + }, + "required": [ + "storageProfile" + ], + "description": "Describes the properties of a gallery image version." + }, + "GalleryArtifactPublishingProfileBase": { + "properties": { + "targetRegions": { + "type": "array", + "items": { + "$ref": "#/definitions/TargetRegion" + }, + "description": "The target regions where the Image Version is going to be replicated to. This property is updatable." + }, + "replicaCount": { + "type": "integer", + "format": "int32", + "description": "The number of replicas of the Image Version to be created per region. This property would take effect for a region when regionalReplicaCount is not specified. This property is updatable." + }, + "excludeFromLatest": { + "type": "boolean", + "description": "If set to true, Virtual Machines deployed from the latest version of the Image Definition won't use this Image Version." + }, + "publishedDate": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The timestamp for when the gallery image version is published." + }, + "endOfLifeDate": { + "type": "string", + "format": "date-time", + "description": "The end of life date of the gallery image version. This property can be used for decommissioning purposes. This property is updatable." + }, + "storageAccountType": { + "type": "string", + "description": "Specifies the storage account type to be used to store the image. This property is not updatable.", + "enum": [ + "Standard_LRS", + "Standard_ZRS", + "Premium_LRS" + ], + "x-ms-enum": { + "name": "StorageAccountType", + "modelAsString": true + } + } + }, + "description": "Describes the basic gallery artifact publishing profile." + }, + "TargetRegion": { + "properties": { + "name": { + "type": "string", + "description": "The name of the region." + }, + "regionalReplicaCount": { + "type": "integer", + "format": "int32", + "description": "The number of replicas of the Image Version to be created per region. This property is updatable." + }, + "storageAccountType": { + "type": "string", + "description": "Specifies the storage account type to be used to store the image. This property is not updatable.", + "enum": [ + "Standard_LRS", + "Standard_ZRS", + "Premium_LRS" + ], + "x-ms-enum": { + "name": "StorageAccountType", + "modelAsString": true + } + }, + "encryption": { + "$ref": "#/definitions/EncryptionImages" + } + }, + "required": [ + "name" + ], + "description": "Describes the target region information." + }, + "EncryptionImages": { + "properties": { + "osDiskImage": { + "$ref": "#/definitions/OSDiskImageEncryption" + }, + "dataDiskImages": { + "type": "array", + "items": { + "$ref": "#/definitions/DataDiskImageEncryption" + }, + "description": "A list of encryption specifications for data disk images." + } + }, + "description": "Optional. Allows users to provide customer managed keys for encrypting the OS and data disks in the gallery artifact." + }, + "OSDiskImageEncryption": { + "allOf": [ + { + "$ref": "#/definitions/DiskImageEncryption" + } + ], + "description": "Contains encryption settings for an OS disk image." + }, + "DataDiskImageEncryption": { + "properties": { + "lun": { + "type": "integer", + "format": "int32", + "description": "This property specifies the logical unit number of the data disk. This value is used to identify data disks within the Virtual Machine and therefore must be unique for each data disk attached to the Virtual Machine." + } + }, + "allOf": [ + { + "$ref": "#/definitions/DiskImageEncryption" + } + ], + "required": [ + "lun" + ], + "description": "Contains encryption settings for a data disk image." + }, + "DiskImageEncryption": { + "properties": { + "diskEncryptionSetId": { + "type": "string", + "description": "A relative URI containing the resource ID of the disk encryption set." + } + }, + "description": "This is the disk image encryption base class." + }, + "GalleryArtifactSource": { + "properties": { + "managedImage": { + "$ref": "#/definitions/ManagedArtifact" + } + }, + "required": [ + "managedImage" + ], + "description": "The source image from which the Image Version is going to be created." + }, + "ManagedArtifact": { + "properties": { + "id": { + "type": "string", + "description": "The managed artifact id." + } + }, + "required": [ + "id" + ], + "description": "The managed artifact." + }, + "GalleryImageVersionPublishingProfile": { + "allOf": [ + { + "$ref": "#/definitions/GalleryArtifactPublishingProfileBase" + } + ], + "description": "The publishing profile of a gallery image Version." + }, + "GalleryImageVersionStorageProfile": { + "properties": { + "source": { + "$ref": "#/definitions/GalleryArtifactVersionSource" + }, + "osDiskImage": { + "$ref": "#/definitions/GalleryOSDiskImage" + }, + "dataDiskImages": { + "type": "array", + "items": { + "$ref": "#/definitions/GalleryDataDiskImage" + }, + "description": "A list of data disk images." + } + }, + "description": "This is the storage profile of a Gallery Image Version." + }, + "GalleryArtifactVersionSource": { + "properties": { + "id": { + "type": "string", + "description": "The id of the gallery artifact version source. Can specify a disk uri, snapshot uri, user image or storage account resource." + }, + "uri": { + "type": "string", + "description": "The uri of the gallery artifact version source. Currently used to specify vhd/blob source." + } + }, + "description": "The gallery artifact version source." + }, + "GalleryOSDiskImage": { + "allOf": [ + { + "$ref": "#/definitions/GalleryDiskImage" + } + ], + "description": "This is the OS disk image." + }, + "GalleryDataDiskImage": { + "properties": { + "lun": { + "type": "integer", + "format": "int32", + "description": "This property specifies the logical unit number of the data disk. This value is used to identify data disks within the Virtual Machine and therefore must be unique for each data disk attached to the Virtual Machine." + } + }, + "allOf": [ + { + "$ref": "#/definitions/GalleryDiskImage" + } + ], + "required": [ + "lun" + ], + "description": "This is the data disk image." + }, + "GalleryDiskImage": { + "properties": { + "sizeInGB": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "This property indicates the size of the VHD to be created." + }, + "hostCaching": { + "type": "string", + "description": "The host caching of the disk. Valid values are 'None', 'ReadOnly', and 'ReadWrite'", + "enum": [ + "None", + "ReadOnly", + "ReadWrite" + ], + "x-ms-enum": { + "name": "HostCaching", + "modelAsString": false + } + }, + "source": { + "$ref": "#/definitions/GalleryArtifactVersionSource" + } + }, + "description": "This is the disk image base class." + }, + "ReplicationStatus": { + "properties": { + "aggregatedState": { + "readOnly": true, + "type": "string", + "description": "This is the aggregated replication status based on all the regional replication status flags.", + "enum": [ + "Unknown", + "InProgress", + "Completed", + "Failed" + ], + "x-ms-enum": { + "name": "AggregatedReplicationState", + "modelAsString": true + } + }, + "summary": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/RegionalReplicationStatus" + }, + "description": "This is a summary of replication status for each region." + } + }, + "description": "This is the replication status of the gallery image version." + }, + "RegionalReplicationStatus": { + "properties": { + "region": { + "readOnly": true, + "type": "string", + "description": "The region to which the gallery image version is being replicated to." + }, + "state": { + "readOnly": true, + "type": "string", + "description": "This is the regional replication state.", + "enum": [ + "Unknown", + "Replicating", + "Completed", + "Failed" + ], + "x-ms-enum": { + "name": "ReplicationState", + "modelAsString": true + } + }, + "details": { + "readOnly": true, + "type": "string", + "description": "The details of the replication status." + }, + "progress": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "It indicates progress of the replication job." + } + }, + "description": "This is the regional replication status." + }, + "GalleryList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Gallery" + }, + "description": "A list of galleries." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of galleries. Call ListNext() with this to fetch the next page of galleries." + } + }, + "required": [ + "value" + ], + "description": "The List Galleries operation response." + }, + "GalleryImageList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/GalleryImage" + }, + "description": "A list of Shared Image Gallery images." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of Image Definitions in the Shared Image Gallery. Call ListNext() with this to fetch the next page of gallery image definitions." + } + }, + "required": [ + "value" + ], + "description": "The List Gallery Images operation response." + }, + "GalleryImageVersionList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/GalleryImageVersion" + }, + "description": "A list of gallery image versions." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of gallery image versions. Call ListNext() with this to fetch the next page of gallery image versions." + } + }, + "required": [ + "value" + ], + "description": "The List Gallery Image version operation response." + }, + "GalleryApplicationList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/GalleryApplication" + }, + "description": "A list of Gallery Applications." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of Application Definitions in the Application Gallery. Call ListNext() with this to fetch the next page of gallery Application Definitions." + } + }, + "required": [ + "value" + ], + "description": "The List Gallery Applications operation response." + }, + "GalleryApplicationVersionList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/GalleryApplicationVersion" + }, + "description": "A list of gallery Application Versions." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of gallery Application Versions. Call ListNext() with this to fetch the next page of gallery Application Versions." + } + }, + "required": [ + "value" + ], + "description": "The List Gallery Application version operation response." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/ApiError" + } + }, + "description": "An error response from the Compute service." + }, + "ApiError": { + "properties": { + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ApiErrorBase" + }, + "description": "The Api error details" + }, + "innererror": { + "$ref": "#/definitions/InnerError", + "description": "The Api inner error" + }, + "code": { + "type": "string", + "description": "The error code." + }, + "target": { + "type": "string", + "description": "The target of the particular error." + }, + "message": { + "type": "string", + "description": "The error message." + } + }, + "description": "Api error." + }, + "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." + }, + "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 + }, + "UpdateResourceDefinition": { + "description": "The Update 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": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "x-ms-azure-resource": true + }, + "SharingUpdate": { + "description": "Specifies information about the gallery sharing profile update.", + "properties": { + "operationType": { + "type": "string", + "description": "This property allows you to specify the operation type of gallery sharing update.

Possible values are:

**Add**

**Remove**

**Reset**", + "enum": [ + "Add", + "Remove", + "Reset" + ], + "x-ms-enum": { + "name": "SharingUpdateOperationTypes", + "modelAsString": true + } + }, + "groups": { + "type": "array", + "items": { + "$ref": "#/definitions/SharingProfileGroup" + }, + "description": "A list of sharing profile groups." + } + }, + "required": [ + "operationType" + ], + "x-ms-azure-resource": true + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "The name of the resource group." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client Api Version." + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/sharedGallery.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/sharedGallery.json new file mode 100644 index 000000000000..9867716e318a --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-09-30/sharedGallery.json @@ -0,0 +1,786 @@ +{ + "swagger": "2.0", + "info": { + "title": "SharedGalleryServiceClient", + "description": "Shared Gallery Service Client.", + "version": "2020-09-30" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/sharedGalleries": { + "get": { + "tags": [ + "SharedGalleries" + ], + "operationId": "SharedGalleries_List", + "description": "List shared galleries by subscription id or tenant id.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/LocationNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "sharedTo", + "in": "query", + "required": false, + "type": "string", + "description": "The query parameter to decide what shared galleries to fetch when doing listing operations.", + "enum": [ + "tenant" + ], + "x-ms-enum": { + "name": "SharedToValues", + "modelAsString": true + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SharedGalleryList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get a gallery.": { + "$ref": "./examples/ListSharedGalleries.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/sharedGalleries/{galleryUniqueName}/images": { + "get": { + "tags": [ + "SharedGalleryImages" + ], + "operationId": "SharedGalleryImages_List", + "description": "List shared gallery images by subscription id or tenant id.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/LocationNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "galleryUniqueName", + "in": "path", + "required": true, + "type": "string", + "description": "The unique name of the Shared Gallery." + }, + { + "name": "sharedTo", + "in": "query", + "required": false, + "type": "string", + "description": "The query parameter to decide what shared galleries to fetch when doing listing operations.", + "enum": [ + "tenant" + ], + "x-ms-enum": { + "name": "SharedToValues", + "modelAsString": true + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SharedGalleryImageList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get a gallery.": { + "$ref": "./examples/ListSharedGalleryImages.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/sharedGalleries/{galleryUniqueName}/images/{galleryImageName}/versions": { + "get": { + "tags": [ + "SharedGalleryImageVersions" + ], + "operationId": "SharedGalleryImageVersions_List", + "description": "List shared gallery image versions by subscription id or tenant id.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/LocationNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "galleryUniqueName", + "in": "path", + "required": true, + "type": "string", + "description": "The unique name of the Shared Gallery." + }, + { + "name": "galleryImageName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Gallery Image Definition from which the Image Versions are to be listed." + }, + { + "name": "sharedTo", + "in": "query", + "required": false, + "type": "string", + "description": "The query parameter to decide what shared galleries to fetch when doing listing operations.", + "enum": [ + "tenant" + ], + "x-ms-enum": { + "name": "SharedToValues", + "modelAsString": true + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SharedGalleryImageVersionList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get a gallery.": { + "$ref": "./examples/ListSharedGalleryImageVersions.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/sharedGalleries/{galleryUniqueName}": { + "get": { + "tags": [ + "SharedGalleries" + ], + "operationId": "SharedGalleries_Get", + "description": "Get a shared gallery by subscription id or tenant id.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/LocationNameParameter" + }, + { + "name": "galleryUniqueName", + "in": "path", + "required": true, + "type": "string", + "description": "The unique name of the Shared Gallery." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SharedGallery" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get a gallery.": { + "$ref": "./examples/GetASharedGallery.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/sharedGalleries/{galleryUniqueName}/images/{galleryImageName}": { + "get": { + "tags": [ + "SharedGalleryImages" + ], + "operationId": "SharedGalleryImages_Get", + "description": "Get a shared gallery image by subscription id or tenant id.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/LocationNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "galleryUniqueName", + "in": "path", + "required": true, + "type": "string", + "description": "The unique name of the Shared Gallery." + }, + { + "name": "galleryImageName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Gallery Image Definition from which the Image Versions are to be listed." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SharedGalleryImage" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get a gallery.": { + "$ref": "./examples/GetASharedGalleryImage.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/sharedGalleries/{galleryUniqueName}/images/{galleryImageName}/versions/{galleryImageVersionName}": { + "get": { + "tags": [ + "SharedGalleryImageVersions" + ], + "operationId": "SharedGalleryImageVersions_Get", + "description": "Get a shared gallery image version by subscription id or tenant id.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/LocationNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "galleryUniqueName", + "in": "path", + "required": true, + "type": "string", + "description": "The unique name of the Shared Gallery." + }, + { + "name": "galleryImageName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Gallery Image Definition from which the Image Versions are to be listed." + }, + { + "name": "galleryImageVersionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gallery image version to be created. Needs to follow semantic version name pattern: The allowed characters are digit and period. Digits must be within the range of a 32-bit integer. Format: .." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SharedGalleryImageVersion" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get a gallery.": { + "$ref": "./examples/GetASharedGalleryImageVersion.json" + } + } + } + } + }, + "definitions": { + "PirResource": { + "description": "The Resource model definition.", + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "Resource name" + }, + "location": { + "readOnly": true, + "type": "string", + "description": "Resource location" + } + } + }, + "PirSharedGalleryResource": { + "properties": { + "identifier": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SharedGalleryIdentifier" + } + }, + "allOf": [ + { + "$ref": "#/definitions/PirResource" + } + ], + "description": "Base information about the shared gallery resource in pir." + }, + "SharedGalleryIdentifier": { + "properties": { + "uniqueId": { + "type": "string", + "description": "The unique id of this shared gallery." + } + }, + "description": "The identifier information of shared gallery." + }, + "SharedGalleryList": { + "description": "The List Shared Galleries operation response.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SharedGallery" + }, + "description": "A list of shared galleries." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of shared galleries. Call ListNext() with this to fetch the next page of shared galleries." + } + }, + "required": [ + "value" + ] + }, + "SharedGallery": { + "properties": {}, + "allOf": [ + { + "$ref": "#/definitions/PirSharedGalleryResource" + } + ], + "description": "Specifies information about the Shared Gallery that you want to create or update." + }, + "SharedGalleryImageList": { + "description": "The List Shared Gallery Images operation response.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SharedGalleryImage" + }, + "description": "A list of shared gallery images." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of shared gallery images. Call ListNext() with this to fetch the next page of shared gallery images." + } + }, + "required": [ + "value" + ] + }, + "SharedGalleryImage": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SharedGalleryImageProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/PirSharedGalleryResource" + } + ], + "description": "Specifies information about the gallery image definition that you want to create or update." + }, + "SharedGalleryImageProperties": { + "properties": { + "osType": { + "type": "string", + "description": "This property allows you to specify the type of the OS that is included in the disk when creating a VM from a managed image.

Possible values are:

**Windows**

**Linux**", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": false + } + }, + "osState": { + "type": "string", + "description": "This property allows the user to specify whether the virtual machines created under this image are 'Generalized' or 'Specialized'.", + "enum": [ + "Generalized", + "Specialized" + ], + "x-ms-enum": { + "name": "OperatingSystemStateTypes", + "modelAsString": false + } + }, + "endOfLifeDate": { + "type": "string", + "format": "date-time", + "description": "The end of life date of the gallery image definition. This property can be used for decommissioning purposes. This property is updatable." + }, + "identifier": { + "$ref": "#/definitions/GalleryImageIdentifier" + }, + "recommended": { + "$ref": "#/definitions/RecommendedMachineConfiguration" + }, + "disallowed": { + "$ref": "#/definitions/Disallowed" + }, + "hyperVGeneration": { + "type": "string", + "description": "The hypervisor generation of the Virtual Machine. Applicable to OS disks only.", + "enum": [ + "V1", + "V2" + ], + "x-ms-enum": { + "name": "HyperVGeneration", + "modelAsString": true + } + }, + "features": { + "type": "array", + "items": { + "$ref": "#/definitions/GalleryImageFeature" + }, + "description": "A list of gallery image features." + }, + "purchasePlan": { + "$ref": "#/definitions/ImagePurchasePlan" + } + }, + "required": [ + "osType", + "osState", + "identifier" + ], + "description": "Describes the properties of a gallery image definition." + }, + "GalleryImageFeature": { + "properties": { + "name": { + "type": "string", + "description": "The name of the gallery image feature." + }, + "value": { + "type": "string", + "description": "The value of the gallery image feature." + } + }, + "description": "A feature for gallery image." + }, + "GalleryImageIdentifier": { + "properties": { + "publisher": { + "type": "string", + "description": "The name of the gallery image definition publisher." + }, + "offer": { + "type": "string", + "description": "The name of the gallery image definition offer." + }, + "sku": { + "type": "string", + "description": "The name of the gallery image definition SKU." + } + }, + "required": [ + "publisher", + "offer", + "sku" + ], + "description": "This is the gallery image definition identifier." + }, + "RecommendedMachineConfiguration": { + "properties": { + "vCPUs": { + "$ref": "#/definitions/ResourceRange" + }, + "memory": { + "$ref": "#/definitions/ResourceRange" + } + }, + "description": "The properties describe the recommended machine configuration for this Image Definition. These properties are updatable." + }, + "ResourceRange": { + "properties": { + "min": { + "type": "integer", + "format": "int32", + "description": "The minimum number of the resource." + }, + "max": { + "type": "integer", + "format": "int32", + "description": "The maximum number of the resource." + } + }, + "description": "Describes the resource range." + }, + "Disallowed": { + "properties": { + "diskTypes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of disk types." + } + }, + "description": "Describes the disallowed disk types." + }, + "ImagePurchasePlan": { + "properties": { + "name": { + "type": "string", + "description": "The plan ID." + }, + "publisher": { + "type": "string", + "description": "The publisher ID." + }, + "product": { + "type": "string", + "description": "The product ID." + } + }, + "description": "Describes the gallery image definition purchase plan. This is used by marketplace images." + }, + "SharedGalleryImageVersionList": { + "description": "The List Shared Gallery Image versions operation response.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SharedGalleryImageVersion" + }, + "description": "A list of shared gallery images versions." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of shared gallery image versions. Call ListNext() with this to fetch the next page of shared gallery image versions." + } + }, + "required": [ + "value" + ] + }, + "SharedGalleryImageVersion": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SharedGalleryImageVersionProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/PirSharedGalleryResource" + } + ], + "description": "Specifies information about the gallery image version that you want to create or update." + }, + "SharedGalleryImageVersionProperties": { + "properties": { + "publishedDate": { + "type": "string", + "format": "date-time", + "description": "The published date of the gallery image version Definition. This property can be used for decommissioning purposes. This property is updatable." + }, + "endOfLifeDate": { + "type": "string", + "format": "date-time", + "description": "The end of life date of the gallery image version Definition. This property can be used for decommissioning purposes. This property is updatable." + } + }, + "description": "Describes the properties of a gallery image version." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/ApiError" + } + }, + "description": "An error response from the Compute service." + }, + "ApiError": { + "properties": { + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ApiErrorBase" + }, + "description": "The Api error details" + }, + "innererror": { + "$ref": "#/definitions/InnerError", + "description": "The Api inner error" + }, + "code": { + "type": "string", + "description": "The error code." + }, + "target": { + "type": "string", + "description": "The target of the particular error." + }, + "message": { + "type": "string", + "description": "The error message." + } + }, + "description": "Api error." + }, + "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." + } + }, + "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." + }, + "LocationNameParameter": { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Resource location." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client Api Version." + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-12-01/disk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-12-01/disk.json index 17e3b33cf33e..57e581920d07 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-12-01/disk.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-12-01/disk.json @@ -1668,6 +1668,122 @@ "nextLinkName": "nextLink" } } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/restorePointCollections/{restorePointCollectionName}/restorePoints/{vmRestorePointName}/diskRestorePoints/{diskRestorePointName}/beginGetAccess": { + "post": { + "tags": [ + "IncrementalRestorePoints" + ], + "operationId": "DiskRestorePoint_GrantAccess", + "description": "Grants access to a diskRestorePoint.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/RestorePointCollectionNameParameter" + }, + { + "$ref": "#/parameters/VmRestorePointNameParameter" + }, + { + "$ref": "#/parameters/DiskRestorePointNameParameter" + }, + { + "$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" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Grants access to a diskRestorePoint.": { + "$ref": "./examples/BeginGetAccessDiskRestorePoint.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/restorePointCollections/{restorePointCollectionName}/restorePoints/{vmRestorePointName}/diskRestorePoints/{diskRestorePointName}/endGetAccess": { + "post": { + "tags": [ + "IncrementalRestorePoints" + ], + "operationId": "DiskRestorePoint_RevokeAccess", + "description": "Revokes access to a diskRestorePoint.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/RestorePointCollectionNameParameter" + }, + { + "$ref": "#/parameters/VmRestorePointNameParameter" + }, + { + "$ref": "#/parameters/DiskRestorePointNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Revokes access to a diskRestorePoint.": { + "$ref": "./examples/EndGetAccessDiskRestorePoint.json" + } + } + } } }, "definitions": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-12-01/examples/BeginGetAccessDiskRestorePoint.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-12-01/examples/BeginGetAccessDiskRestorePoint.json new file mode 100644 index 000000000000..39574d184aa7 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-12-01/examples/BeginGetAccessDiskRestorePoint.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "restorePointCollectionName": "rpc", + "vmRestorePointName": "vmrp", + "diskRestorePointName": "TestDisk45ceb03433006d1baee0_b70cd924-3362-4a80-93c2-9415eaa12745", + "api-version": "2020-12-01", + "grantAccessData": { + "access": "Read", + "durationInSeconds": 300 + } + }, + "responses": { + "200": { + "body": { + "accessSAS": "https://md-gpvmcxzlzxgd.partition.blob.storage.azure.net/xx3cqcx53f0v/abcd?sv=2014-02-14&sr=b&sk=key1&sig=XXX&st=2021-05-24T18:02:34Z&se=2021-05-24T18:19:14Z&sp=r" + } + }, + "202": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-12-01/examples/EndGetAccessDiskRestorePoint.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-12-01/examples/EndGetAccessDiskRestorePoint.json new file mode 100644 index 000000000000..2527d728d056 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-12-01/examples/EndGetAccessDiskRestorePoint.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "restorePointCollectionName": "rpc", + "vmRestorePointName": "vmrp", + "diskRestorePointName": "TestDisk45ceb03433006d1baee0_b70cd924-3362-4a80-93c2-9415eaa12745", + "api-version": "2020-12-01" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/cloudService.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/cloudService.json index fc8b803a8813..44de229cd1d6 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/cloudService.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/cloudService.json @@ -103,10 +103,11 @@ { "in": "query", "name": "$expand", - "description": "The expand expression to apply to the operation.", + "description": "The expand expression to apply to the operation. 'UserData' is not supported for cloud services.", "type": "string", "enum": [ - "instanceView" + "instanceView", + "userData" ], "x-ms-enum": { "name": "InstanceViewTypes", @@ -219,10 +220,11 @@ { "in": "query", "name": "$expand", - "description": "The expand expression to apply to the operation.", + "description": "The expand expression to apply to the operation. 'UserData' is not supported for cloud services.", "type": "string", "enum": [ - "instanceView" + "instanceView", + "userData" ], "x-ms-enum": { "name": "InstanceViewTypes", diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/compute.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/compute.json new file mode 100644 index 000000000000..5cfd2ded350b --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/compute.json @@ -0,0 +1,14037 @@ +{ + "swagger": "2.0", + "info": { + "title": "ComputeManagementClient", + "description": "The Compute Management Client.", + "version": "2021-03-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/providers/Microsoft.Compute/operations": { + "get": { + "tags": [ + "ComputeOperations" + ], + "operationId": "Operations_List", + "description": "Gets a list of compute operations.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ComputeOperationListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}": { + "put": { + "tags": [ + "AvailabilitySets" + ], + "operationId": "AvailabilitySets_CreateOrUpdate", + "description": "Create or update an availability set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "availabilitySetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the availability set." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AvailabilitySet" + }, + "description": "Parameters supplied to the Create Availability Set operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AvailabilitySet" + } + } + }, + "x-ms-examples": { + "Create an availability set.": { + "$ref": "./examples/CreateAnAvailabilitySet.json" + } + } + }, + "patch": { + "tags": [ + "AvailabilitySets" + ], + "operationId": "AvailabilitySets_Update", + "description": "Update an availability set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "availabilitySetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the availability set." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AvailabilitySetUpdate" + }, + "description": "Parameters supplied to the Update Availability Set operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AvailabilitySet" + } + } + } + }, + "delete": { + "tags": [ + "AvailabilitySets" + ], + "operationId": "AvailabilitySets_Delete", + "description": "Delete an availability set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "availabilitySetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the availability set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "No Content" + } + } + }, + "get": { + "tags": [ + "AvailabilitySets" + ], + "operationId": "AvailabilitySets_Get", + "description": "Retrieves information about an availability set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "availabilitySetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the availability set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AvailabilitySet" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/availabilitySets": { + "get": { + "tags": [ + "AvailabilitySets" + ], + "operationId": "AvailabilitySets_ListBySubscription", + "description": "Lists all availability sets in a subscription.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply to the operation. Allowed values are 'instanceView'." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AvailabilitySetListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List availability sets in a subscription.": { + "$ref": "./examples/ListAvailabilitySetsInASubscription.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets": { + "get": { + "tags": [ + "AvailabilitySets" + ], + "operationId": "AvailabilitySets_List", + "description": "Lists all availability sets in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AvailabilitySetListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}/vmSizes": { + "get": { + "tags": [ + "AvailabilitySets" + ], + "operationId": "AvailabilitySets_ListAvailableSizes", + "description": "Lists all available virtual machine sizes that can be used to create a new virtual machine in an existing availability set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "availabilitySetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the availability set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineSizeListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/proximityPlacementGroups/{proximityPlacementGroupName}": { + "put": { + "tags": [ + "ProximityPlacementGroups" + ], + "operationId": "ProximityPlacementGroups_CreateOrUpdate", + "description": "Create or update a proximity placement group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "proximityPlacementGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the proximity placement group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ProximityPlacementGroup" + }, + "description": "Parameters supplied to the Create Proximity Placement Group operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProximityPlacementGroup" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/ProximityPlacementGroup" + } + } + }, + "x-ms-examples": { + "Create or Update a proximity placement group.": { + "$ref": "./examples/CreateOrUpdateAProximityPlacementGroup.json" + } + } + }, + "patch": { + "tags": [ + "ProximityPlacementGroups" + ], + "operationId": "ProximityPlacementGroups_Update", + "description": "Update a proximity placement group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "proximityPlacementGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the proximity placement group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ProximityPlacementGroupUpdate" + }, + "description": "Parameters supplied to the Update Proximity Placement Group operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProximityPlacementGroup" + } + } + }, + "x-ms-examples": { + "Create a proximity placement group.": { + "$ref": "./examples/PatchAProximityPlacementGroup.json" + } + } + }, + "delete": { + "tags": [ + "ProximityPlacementGroups" + ], + "operationId": "ProximityPlacementGroups_Delete", + "description": "Delete a proximity placement group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "proximityPlacementGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the proximity placement group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "x-ms-examples": { + "Create a proximity placement group.": { + "$ref": "./examples/DeleteAProximityPlacementGroup.json" + } + } + }, + "get": { + "tags": [ + "ProximityPlacementGroups" + ], + "operationId": "ProximityPlacementGroups_Get", + "description": "Retrieves information about a proximity placement group .", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "proximityPlacementGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the proximity placement group." + }, + { + "name": "includeColocationStatus", + "in": "query", + "required": false, + "type": "string", + "description": "includeColocationStatus=true enables fetching the colocation status of all the resources in the proximity placement group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProximityPlacementGroup" + } + } + }, + "x-ms-examples": { + "Create a proximity placement group.": { + "$ref": "./examples/GetAProximityPlacementGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/proximityPlacementGroups": { + "get": { + "tags": [ + "ProximityPlacementGroups" + ], + "operationId": "ProximityPlacementGroups_ListBySubscription", + "description": "Lists all proximity placement groups in a subscription.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProximityPlacementGroupListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Create a proximity placement group.": { + "$ref": "./examples/ListProximityPlacementGroupsInASubscription.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/proximityPlacementGroups": { + "get": { + "tags": [ + "ProximityPlacementGroups" + ], + "operationId": "ProximityPlacementGroups_ListByResourceGroup", + "description": "Lists all proximity placement groups in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProximityPlacementGroupListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Create a proximity placement group.": { + "$ref": "./examples/ListProximityPlacementGroupsInAResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}": { + "put": { + "tags": [ + "DedicatedHostGroups" + ], + "operationId": "DedicatedHostGroups_CreateOrUpdate", + "description": "Create or update a dedicated host group. For details of Dedicated Host and Dedicated Host Groups please see [Dedicated Host Documentation] (https://go.microsoft.com/fwlink/?linkid=2082596)", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "hostGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the dedicated host group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DedicatedHostGroup" + }, + "description": "Parameters supplied to the Create Dedicated Host Group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DedicatedHostGroup" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/DedicatedHostGroup" + } + } + }, + "x-ms-examples": { + "Create or update a dedicated host group.": { + "$ref": "./examples/CreateOrUpdateADedicatedHostGroup.json" + } + } + }, + "patch": { + "tags": [ + "DedicatedHostGroups" + ], + "operationId": "DedicatedHostGroups_Update", + "description": "Update an dedicated host group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "hostGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the dedicated host group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DedicatedHostGroupUpdate" + }, + "description": "Parameters supplied to the Update Dedicated Host Group operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DedicatedHostGroup" + } + } + } + }, + "delete": { + "tags": [ + "DedicatedHostGroups" + ], + "operationId": "DedicatedHostGroups_Delete", + "description": "Delete a dedicated host group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "hostGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the dedicated host group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "No Content" + } + } + }, + "get": { + "tags": [ + "DedicatedHostGroups" + ], + "operationId": "DedicatedHostGroups_Get", + "description": "Retrieves information about a dedicated host group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "hostGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the dedicated host group." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation. 'InstanceView' will retrieve the list of instance views of the dedicated hosts under the dedicated host group. 'UserData' is not supported for dedicated host group.", + "enum": [ + "instanceView", + "userData" + ], + "x-ms-enum": { + "name": "InstanceViewTypes", + "modelAsString": false + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DedicatedHostGroup" + } + } + }, + "x-ms-examples": { + "Create a dedicated host group.": { + "$ref": "./examples/GetADedicatedHostGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups": { + "get": { + "tags": [ + "DedicatedHostGroups" + ], + "operationId": "DedicatedHostGroups_ListByResourceGroup", + "description": "Lists all of the dedicated host groups in the specified resource group. Use the nextLink property in the response to get the next page of dedicated host groups.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DedicatedHostGroupListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/hostGroups": { + "get": { + "tags": [ + "DedicatedHostGroups" + ], + "operationId": "DedicatedHostGroups_ListBySubscription", + "description": "Lists all of the dedicated host groups in the subscription. Use the nextLink property in the response to get the next page of dedicated host groups.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DedicatedHostGroupListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}/hosts/{hostName}": { + "put": { + "tags": [ + "DedicatedHosts" + ], + "operationId": "DedicatedHosts_CreateOrUpdate", + "description": "Create or update a dedicated host .", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "hostGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the dedicated host group." + }, + { + "name": "hostName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the dedicated host ." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DedicatedHost" + }, + "description": "Parameters supplied to the Create Dedicated Host." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DedicatedHost" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/DedicatedHost" + } + } + }, + "x-ms-examples": { + "Create or update a dedicated host .": { + "$ref": "./examples/CreateOrUpdateADedicatedHost.json" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "DedicatedHosts" + ], + "operationId": "DedicatedHosts_Update", + "description": "Update an dedicated host .", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "hostGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the dedicated host group." + }, + { + "name": "hostName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the dedicated host ." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DedicatedHostUpdate" + }, + "description": "Parameters supplied to the Update Dedicated Host operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DedicatedHost" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "DedicatedHosts" + ], + "operationId": "DedicatedHosts_Delete", + "description": "Delete a dedicated host.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "hostGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the dedicated host group." + }, + { + "name": "hostName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the dedicated host." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "DedicatedHosts" + ], + "operationId": "DedicatedHosts_Get", + "description": "Retrieves information about a dedicated host.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "hostGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the dedicated host group." + }, + { + "name": "hostName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the dedicated host." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation. 'InstanceView' will retrieve the list of instance views of the dedicated host. 'UserData' is not supported for dedicated host.", + "enum": [ + "instanceView", + "userData" + ], + "x-ms-enum": { + "name": "InstanceViewTypes", + "modelAsString": false + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DedicatedHost" + } + } + }, + "x-ms-examples": { + "Get a dedicated host.": { + "$ref": "./examples/GetADedicatedHost.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}/hosts": { + "get": { + "tags": [ + "DedicatedHost" + ], + "operationId": "DedicatedHosts_ListByHostGroup", + "description": "Lists all of the dedicated hosts in the specified dedicated host group. Use the nextLink property in the response to get the next page of dedicated hosts.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "hostGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the dedicated host group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DedicatedHostListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/sshPublicKeys": { + "get": { + "tags": [ + "SshPublicKeys" + ], + "operationId": "SshPublicKeys_ListBySubscription", + "description": "Lists all of the SSH public keys in the subscription. Use the nextLink property in the response to get the next page of SSH public keys.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SshPublicKeysGroupListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/sshPublicKeys": { + "get": { + "tags": [ + "SshPublicKeys" + ], + "operationId": "SshPublicKeys_ListByResourceGroup", + "description": "Lists all of the SSH public keys in the specified resource group. Use the nextLink property in the response to get the next page of SSH public keys.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SshPublicKeysGroupListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/sshPublicKeys/{sshPublicKeyName}": { + "put": { + "tags": [ + "SshPublicKeys" + ], + "operationId": "SshPublicKeys_Create", + "description": "Creates a new SSH public key resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "sshPublicKeyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the SSH public key." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SshPublicKeyResource" + }, + "description": "Parameters supplied to create the SSH public key." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SshPublicKeyResource" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/SshPublicKeyResource" + } + } + }, + "x-ms-examples": { + "Create a new SSH public key resource.": { + "$ref": "./examples/CreateAnSshPublicKey.json" + } + } + }, + "patch": { + "tags": [ + "SshPublicKeys" + ], + "operationId": "SshPublicKeys_Update", + "description": "Updates a new SSH public key resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "sshPublicKeyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the SSH public key." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SshPublicKeyUpdateResource" + }, + "description": "Parameters supplied to update the SSH public key." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SshPublicKeyResource" + } + } + } + }, + "delete": { + "tags": [ + "SshPublicKeys" + ], + "operationId": "SshPublicKeys_Delete", + "description": "Delete an SSH public key.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "sshPublicKeyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the SSH public key." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "No Content" + } + } + }, + "get": { + "tags": [ + "SshPublicKeys" + ], + "operationId": "SshPublicKeys_Get", + "description": "Retrieves information about an SSH public key.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "sshPublicKeyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the SSH public key." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SshPublicKeyResource" + } + } + }, + "x-ms-examples": { + "Get an ssh public key.": { + "$ref": "./examples/GetAnSshPublicKey.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/sshPublicKeys/{sshPublicKeyName}/generateKeyPair": { + "post": { + "tags": [ + "SshPublicKeys" + ], + "operationId": "SshPublicKeys_GenerateKeyPair", + "description": "Generates and returns a public/private key pair and populates the SSH public key resource with the public key. The length of the key will be 3072 bits. This operation can only be performed once per SSH public key resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "sshPublicKeyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the SSH public key." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SshPublicKeyGenerateKeyPairResult" + } + } + }, + "x-ms-examples": { + "Generate an SSH key pair.": { + "$ref": "./examples/GenerateSshKeyPair.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmextension/types/{type}/versions/{version}": { + "get": { + "tags": [ + "VirtualMachineExtensionImages" + ], + "operationId": "VirtualMachineExtensionImages_Get", + "description": "Gets a virtual machine extension image.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The name of a supported Azure region." + }, + { + "name": "publisherName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "type", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "version", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineExtensionImage" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmextension/types": { + "get": { + "tags": [ + "VirtualMachineExtensionImages" + ], + "operationId": "VirtualMachineExtensionImages_ListTypes", + "description": "Gets a list of virtual machine extension image types.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The name of a supported Azure region." + }, + { + "name": "publisherName", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineExtensionImage" + } + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmextension/types/{type}/versions": { + "get": { + "tags": [ + "VirtualMachineExtensionImages" + ], + "operationId": "VirtualMachineExtensionImages_ListVersions", + "description": "Gets a list of virtual machine extension image versions.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The name of a supported Azure region." + }, + { + "name": "publisherName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "type", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "name": "$orderby", + "in": "query", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineExtensionImage" + } + } + } + }, + "x-ms-odata": "#/definitions/VirtualMachineExtensionImage" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/extensions/{vmExtensionName}": { + "put": { + "tags": [ + "VirtualMachineExtensions" + ], + "operationId": "VirtualMachineExtensions_CreateOrUpdate", + "description": "The operation to create or update the extension.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine where the extension should be created or updated." + }, + { + "name": "vmExtensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine extension." + }, + { + "name": "extensionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineExtension" + }, + "description": "Parameters supplied to the Create Virtual Machine Extension operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineExtension" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/VirtualMachineExtension" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "VirtualMachineExtensions" + ], + "operationId": "VirtualMachineExtensions_Update", + "description": "The operation to update the extension.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine where the extension should be updated." + }, + { + "name": "vmExtensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine extension." + }, + { + "name": "extensionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineExtensionUpdate" + }, + "description": "Parameters supplied to the Update Virtual Machine Extension operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineExtension" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "VirtualMachineExtensions" + ], + "operationId": "VirtualMachineExtensions_Delete", + "description": "The operation to delete the extension.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine where the extension should be deleted." + }, + { + "name": "vmExtensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine extension." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "VirtualMachineExtensions" + ], + "operationId": "VirtualMachineExtensions_Get", + "description": "The operation to get the extension.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine containing the extension." + }, + { + "name": "vmExtensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine extension." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineExtension" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/extensions": { + "get": { + "tags": [ + "VirtualMachineExtensions" + ], + "operationId": "VirtualMachineExtensions_List", + "description": "The operation to get all extensions of a Virtual Machine.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine containing the extension." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineExtensionsListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmimage/offers/{offer}/skus/{skus}/versions/{version}": { + "get": { + "tags": [ + "VirtualMachineImages" + ], + "operationId": "VirtualMachineImages_Get", + "description": "Gets a virtual machine image.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The name of a supported Azure region." + }, + { + "name": "publisherName", + "in": "path", + "required": true, + "type": "string", + "description": "A valid image publisher." + }, + { + "name": "offer", + "in": "path", + "required": true, + "type": "string", + "description": "A valid image publisher offer." + }, + { + "name": "skus", + "in": "path", + "required": true, + "type": "string", + "description": "A valid image SKU." + }, + { + "name": "version", + "in": "path", + "required": true, + "type": "string", + "description": "A valid image SKU version." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineImage" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmimage/offers/{offer}/skus/{skus}/versions": { + "get": { + "tags": [ + "VirtualMachineImages" + ], + "operationId": "VirtualMachineImages_List", + "description": "Gets a list of all virtual machine image versions for the specified location, publisher, offer, and SKU.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The name of a supported Azure region." + }, + { + "name": "publisherName", + "in": "path", + "required": true, + "type": "string", + "description": "A valid image publisher." + }, + { + "name": "offer", + "in": "path", + "required": true, + "type": "string", + "description": "A valid image publisher offer." + }, + { + "name": "skus", + "in": "path", + "required": true, + "type": "string", + "description": "A valid image SKU." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "name": "$orderby", + "in": "query", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineImageResource" + } + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmimage/offers": { + "get": { + "tags": [ + "VirtualMachineImages" + ], + "operationId": "VirtualMachineImages_ListOffers", + "description": "Gets a list of virtual machine image offers for the specified location and publisher.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The name of a supported Azure region." + }, + { + "name": "publisherName", + "in": "path", + "required": true, + "type": "string", + "description": "A valid image publisher." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineImageResource" + } + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers": { + "get": { + "tags": [ + "VirtualMachineImages" + ], + "operationId": "VirtualMachineImages_ListPublishers", + "description": "Gets a list of virtual machine image publishers for the specified Azure location.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The name of a supported Azure region." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineImageResource" + } + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmimage/offers/{offer}/skus": { + "get": { + "tags": [ + "VirtualMachineImages" + ], + "operationId": "VirtualMachineImages_ListSkus", + "description": "Gets a list of virtual machine image SKUs for the specified location, publisher, and offer.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The name of a supported Azure region." + }, + { + "name": "publisherName", + "in": "path", + "required": true, + "type": "string", + "description": "A valid image publisher." + }, + { + "name": "offer", + "in": "path", + "required": true, + "type": "string", + "description": "A valid image publisher offer." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineImageResource" + } + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/edgeZones/{edgeZone}/publishers/{publisherName}/artifacttypes/vmimage/offers/{offer}/skus/{skus}/versions/{version}": { + "get": { + "tags": [ + "VirtualMachineImages" + ], + "operationId": "VirtualMachineImagesEdgeZone_Get", + "description": "Gets a virtual machine image in an edge zone.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The name of a supported Azure region." + }, + { + "name": "edgeZone", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the edge zone." + }, + { + "name": "publisherName", + "in": "path", + "required": true, + "type": "string", + "description": "A valid image publisher." + }, + { + "name": "offer", + "in": "path", + "required": true, + "type": "string", + "description": "A valid image publisher offer." + }, + { + "name": "skus", + "in": "path", + "required": true, + "type": "string", + "description": "A valid image SKU." + }, + { + "name": "version", + "in": "path", + "required": true, + "type": "string", + "description": "A valid image SKU version." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineImage" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/edgeZones/{edgeZone}/publishers/{publisherName}/artifacttypes/vmimage/offers/{offer}/skus/{skus}/versions": { + "get": { + "tags": [ + "VirtualMachineImages" + ], + "operationId": "VirtualMachineImagesEdgeZone_List", + "description": "Gets a list of all virtual machine image versions for the specified location, edge zone, publisher, offer, and SKU.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The name of a supported Azure region." + }, + { + "name": "edgeZone", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the edge zone." + }, + { + "name": "publisherName", + "in": "path", + "required": true, + "type": "string", + "description": "A valid image publisher." + }, + { + "name": "offer", + "in": "path", + "required": true, + "type": "string", + "description": "A valid image publisher offer." + }, + { + "name": "skus", + "in": "path", + "required": true, + "type": "string", + "description": "A valid image SKU." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "An integer value specifying the number of images to return that matches supplied values." + }, + { + "name": "$orderby", + "in": "query", + "required": false, + "type": "string", + "description": "Specifies the order of the results returned. Formatted as an OData query." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineImageResource" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/edgeZones/{edgeZone}/publishers/{publisherName}/artifacttypes/vmimage/offers": { + "get": { + "tags": [ + "VirtualMachineImages" + ], + "operationId": "VirtualMachineImagesEdgeZone_ListOffers", + "description": "Gets a list of virtual machine image offers for the specified location, edge zone and publisher.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The name of a supported Azure region." + }, + { + "name": "edgeZone", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the edge zone." + }, + { + "name": "publisherName", + "in": "path", + "required": true, + "type": "string", + "description": "A valid image publisher." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineImageResource" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/edgeZones/{edgeZone}/publishers": { + "get": { + "tags": [ + "VirtualMachineImages" + ], + "operationId": "VirtualMachineImagesEdgeZone_ListPublishers", + "description": "Gets a list of virtual machine image publishers for the specified Azure location and edge zone.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The name of a supported Azure region." + }, + { + "name": "edgeZone", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the edge zone." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineImageResource" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/edgeZones/{edgeZone}/publishers/{publisherName}/artifacttypes/vmimage/offers/{offer}/skus": { + "get": { + "tags": [ + "VirtualMachineImages" + ], + "operationId": "VirtualMachineImagesEdgeZone_ListSkus", + "description": "Gets a list of virtual machine image SKUs for the specified location, edge zone, publisher, and offer.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The name of a supported Azure region." + }, + { + "name": "edgeZone", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the edge zone." + }, + { + "name": "publisherName", + "in": "path", + "required": true, + "type": "string", + "description": "A valid image publisher." + }, + { + "name": "offer", + "in": "path", + "required": true, + "type": "string", + "description": "A valid image publisher offer." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineImageResource" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/usages": { + "get": { + "tags": [ + "Usage" + ], + "operationId": "Usage_List", + "description": "Gets, for the specified location, the current compute resource usage information as well as the limits for compute resources under the subscription.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location for which resource usage is queried.", + "pattern": "^[-\\w\\._]+$" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ListUsagesResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/virtualMachines": { + "get": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_ListByLocation", + "description": "Gets all the virtual machines under the specified subscription for the specified location.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location for which virtual machines under the subscription are queried.", + "pattern": "^[-\\w\\._]+$" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineListResult" + } + } + }, + "x-ms-examples": { + "Lists all the virtual machines under the specified subscription for the specified location.": { + "$ref": "./examples/ListVirtualMachinesInASubscriptionByLocation.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/virtualMachineScaleSets": { + "get": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_ListByLocation", + "description": "Gets all the VM scale sets under the specified subscription for the specified location.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location for which VM scale sets under the subscription are queried.", + "pattern": "^[-\\w\\._]+$" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Lists all the VM scale sets under the specified subscription for the specified location.": { + "$ref": "./examples/ListVirtualMachineScaleSetsInASubscriptionByLocation.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/vmSizes": { + "get": { + "tags": [ + "VirtualMachineSizes" + ], + "operationId": "VirtualMachineSizes_List", + "description": "This API is deprecated. Use [Resources Skus](https://docs.microsoft.com/rest/api/compute/resourceskus/list)", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location upon which virtual-machine-sizes is queried.", + "pattern": "^[-\\w\\._]+$" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineSizeListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/images/{imageName}": { + "put": { + "tags": [ + "Images" + ], + "operationId": "Images_CreateOrUpdate", + "description": "Create or update an image.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "imageName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the image." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Image" + }, + "description": "Parameters supplied to the Create Image operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Image" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/Image" + } + } + }, + "x-ms-examples": { + "Create a virtual machine image from a blob.": { + "$ref": "./examples/CreateAnImageFromABlob.json" + }, + "Create a virtual machine image from a snapshot.": { + "$ref": "./examples/CreateAnImageFromASnapshot.json" + }, + "Create a virtual machine image from a managed disk.": { + "$ref": "./examples/CreateAnImageFromAManagedDisk.json" + }, + "Create a virtual machine image from an existing virtual machine.": { + "$ref": "./examples/CreateAnImageFromAVM.json" + }, + "Create a virtual machine image that includes a data disk from a blob.": { + "$ref": "./examples/CreateAnImageThatIncludesADataDiskFromABlob.json" + }, + "Create a virtual machine image that includes a data disk from a snapshot.": { + "$ref": "./examples/CreateAnImageThatIncludesADataDiskFromASnapshot.json" + }, + "Create a virtual machine image that includes a data disk from a managed disk.": { + "$ref": "./examples/CreateAnImageThatIncludesADataDiskFromAManagedDisk.json" + }, + "Create a virtual machine image from a blob with DiskEncryptionSet resource.": { + "$ref": "./examples/CreateAnImageFromABlobWithDiskEncryptionSet.json" + }, + "Create a virtual machine image from a snapshot with DiskEncryptionSet resource.": { + "$ref": "./examples/CreateAnImageFromASnapshotWithDiskEncryptionSet.json" + }, + "Create a virtual machine image from a managed disk with DiskEncryptionSet resource.": { + "$ref": "./examples/CreateAnImageFromAManagedDiskWithDiskEncryptionSet.json" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "Images" + ], + "operationId": "Images_Update", + "description": "Update an image.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "imageName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the image." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ImageUpdate" + }, + "description": "Parameters supplied to the Update Image operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Image" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/Image" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Updates tags of an Image.": { + "$ref": "./examples/UpdateImage.json" + } + } + }, + "delete": { + "tags": [ + "Images" + ], + "operationId": "Images_Delete", + "description": "Deletes an Image.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "imageName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the image." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Images" + ], + "operationId": "Images_Get", + "description": "Gets an image.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "imageName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the image." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Image" + } + } + }, + "x-ms-examples": { + "Get information about a virtual machine image.": { + "$ref": "./examples/GetInformationAboutAnImage.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/images": { + "get": { + "tags": [ + "Images" + ], + "operationId": "Images_ListByResourceGroup", + "description": "Gets the list of images under a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ImageListResult" + } + } + }, + "x-ms-examples": { + "List all virtual machine images in a resource group.": { + "$ref": "./examples/ListImagesInAResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/images": { + "get": { + "tags": [ + "Images" + ], + "operationId": "Images_List", + "description": "Gets the list of Images in the subscription. Use nextLink property in the response to get the next page of Images. Do this till nextLink is null to fetch all the Images.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ImageListResult" + } + } + }, + "x-ms-examples": { + "List all virtual machine images in a subscription.": { + "$ref": "./examples/ListImagesInASubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/capture": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_Capture", + "description": "Captures the VM by copying virtual hard disks of the VM and outputs a template that can be used to create similar VMs.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineCaptureParameters" + }, + "description": "Parameters supplied to the Capture Virtual Machine operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineCaptureResult" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}": { + "put": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_CreateOrUpdate", + "description": "The operation to create or update a virtual machine. Please note some properties can be set only during virtual machine creation.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachine" + }, + "description": "Parameters supplied to the Create Virtual Machine operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachine" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/VirtualMachine" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create a vm with password authentication.": { + "$ref": "./examples/CreateAVmWithPasswordAuthentication.json" + }, + "Create a vm with ssh authentication.": { + "$ref": "./examples/CreateAVmWithSshAuthentication.json" + }, + "Create a vm with premium storage.": { + "$ref": "./examples/CreateAVmWithPremiumStorage.json" + }, + "Create a vm in a Virtual Machine Scale Set with customer assigned platformFaultDomain.": { + "$ref": "./examples/CreateAVmInAVirtualMachineScaleSetWithCustomerAssignedPlatformFaultDomain.json" + }, + "Create a vm in an availability set.": { + "$ref": "./examples/CreateAVmInAnAvailabilitySet.json" + }, + "Create a vm with Scheduled Events Profile": { + "$ref": "./examples/CreateAVmWithScheduledEventsProfile.json" + }, + "Create a vm with boot diagnostics.": { + "$ref": "./examples/CreateAVmWithBootDiagnostics.json" + }, + "Create a vm with managed boot diagnostics.": { + "$ref": "./examples/CreateAVmWithManagedBootDiagnostics.json" + }, + "Create a vm with empty data disks.": { + "$ref": "./examples/CreateAVmWithEmptyDataDisks.json" + }, + "Create a vm with a marketplace image plan.": { + "$ref": "./examples/CreateAVmWithAMarketplaceImagePlan.json" + }, + "Create a vm from a custom image.": { + "$ref": "./examples/CreateAVmFromACustomImage.json" + }, + "Create a platform-image vm with unmanaged os and data disks.": { + "$ref": "./examples/CreateAPlatformImageVmWithUnmanagedOsAndDataDisks.json" + }, + "Create a custom-image vm from an unmanaged generalized os image.": { + "$ref": "./examples/CreateACustomImageVmFromAnUnmanagedGeneralizedOsImage.json" + }, + "Create a vm with ephemeral os disk.": { + "$ref": "./examples/CreateAVmWithADiffOsDisk.json" + }, + "Create a vm with DiskEncryptionSet resource id in the os disk and data disk.": { + "$ref": "./examples/CreateAVmWithDiskEncryptionSetResource.json" + }, + "Create a vm with ephemeral os disk provisioning in Resource disk using placement property.": { + "$ref": "./examples/CreateAVmWithADiffOsDiskUsingDiffDiskPlacementAsResourceDisk.json" + }, + "Create a vm with ephemeral os disk provisioning in Cache disk using placement property.": { + "$ref": "./examples/CreateAVmWithADiffOsDiskUsingDiffDiskPlacementAsCacheDisk.json" + }, + "Create a vm with Host Encryption using encryptionAtHost property.": { + "$ref": "./examples/CreateAVmWithEncryptionAtHost.json" + }, + "Create a Windows vm with a patch setting patchMode of AutomaticByOS.": { + "$ref": "./examples/CreateAWindowsVmWithPatchSettingModeOfAutomaticByOS.json" + }, + "Create a Windows vm with patch settings patchMode and assessmentMode set to AutomaticByPlatform.": { + "$ref": "./examples/CreateAWindowsVmWithPatchSettingModesOfAutomaticByPlatform.json" + }, + "Create a Windows vm with a patch setting patchMode of Manual.": { + "$ref": "./examples/CreateAWindowsVmWithPatchSettingModeOfManual.json" + }, + "Create a Windows vm with a patch setting assessmentMode of ImageDefault.": { + "$ref": "./examples/CreateAWindowsVmWithPatchSettingAssessmentModeOfImageDefault.json" + }, + "Create a Windows vm with a patch setting patchMode of AutomaticByPlatform and enableHotpatching set to true.": { + "$ref": "./examples/CreateAWindowsVmWithPatchSettingModeOfAutomaticByPlatformAndEnableHotPatchingTrue.json" + }, + "Create a Linux vm with a patch settings patchMode and assessmentMode set to AutomaticByPlatform.": { + "$ref": "./examples/CreateALinuxVmWithPatchSettingModesOfAutomaticByPlatform.json" + }, + "Create a Linux vm with a patch setting patchMode of ImageDefault.": { + "$ref": "./examples/CreateALinuxVmWithPatchSettingModeOfImageDefault.json" + }, + "Create a Linux vm with a patch setting assessmentMode of ImageDefault.": { + "$ref": "./examples/CreateALinuxVmWithPatchSettingAssessmentModeOfImageDefault.json" + }, + "Create a vm with an extensions time budget.": { + "$ref": "./examples/CreateAVmWithExtensionsTimeBudget.json" + }, + "Create a VM with Uefi Settings of secureBoot and vTPM.": { + "$ref": "./examples/CreateAVmWithUefiSettings.json" + }, + "Create a vm from a generalized shared image.": { + "$ref": "./examples/CreateAVmFromAGeneralizedSharedImage.json" + }, + "Create a vm from a specialized shared image.": { + "$ref": "./examples/CreateAVmFromASpecializedSharedImage.json" + }, + "Create a VM with network interface configuration": { + "$ref": "./examples/CreateAVmWithNetworkInterfaceConfiguration.json" + }, + "Create a VM with UserData": { + "$ref": "./examples/CreateOrUpdateAVmWithUserData.json" + } + } + }, + "patch": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_Update", + "description": "The operation to update a virtual machine.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineUpdate" + }, + "description": "Parameters supplied to the Update Virtual Machine operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachine" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update a VM by detaching data disk": { + "$ref": "./examples/UpdateVMDetachDataDiskUsingToBeDetachedProperty.json" + }, + "Update a VM by force-detaching data disk": { + "$ref": "./examples/UpdateVMForceDetachDataDisk.json" + } + } + }, + "delete": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_Delete", + "description": "The operation to delete a virtual machine.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "name": "forceDeletion", + "in": "query", + "required": false, + "type": "boolean", + "description": "Optional parameter to force delete virtual machines.(Feature in Preview)" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Force delete a VM": { + "$ref": "./examples/ForceDeleteVirtualMachine.json" + } + } + }, + "get": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_Get", + "description": "Retrieves information about the model view or the instance view of a virtual machine.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation. 'InstanceView' retrieves a snapshot of the runtime properties of the virtual machine that is managed by the platform and can change outside of control plane operations. 'UserData' retrieves the UserData property as part of the VM model view that was provided by the user during the VM Create/Update operation.", + "enum": [ + "instanceView", + "userData" + ], + "x-ms-enum": { + "name": "InstanceViewTypes", + "modelAsString": false + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachine" + } + } + }, + "x-ms-examples": { + "Get a Virtual Machine.": { + "$ref": "./examples/GetVirtualMachine.json" + }, + "Get a virtual machine placed on a dedicated host group through automatic placement": { + "$ref": "./examples/GetVirtualMachineAutoPlacedOnDedicatedHostGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/instanceView": { + "get": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_InstanceView", + "description": "Retrieves information about the run-time state of a virtual machine.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineInstanceView" + } + } + }, + "x-ms-examples": { + "Get Virtual Machine Instance View.": { + "$ref": "./examples/GetVirtualMachineInstanceView.json" + }, + "Get instance view of a virtual machine placed on a dedicated host group through automatic placement.": { + "$ref": "./examples/GetVirtualMachineInstanceViewAutoPlacedOnDedicatedHostGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/convertToManagedDisks": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_ConvertToManagedDisks", + "description": "Converts virtual machine disks from blob-based to managed disks. Virtual machine must be stop-deallocated before invoking this operation.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/deallocate": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_Deallocate", + "description": "Shuts down the virtual machine and releases the compute resources. You are not billed for the compute resources that this virtual machine uses.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/generalize": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_Generalize", + "description": "Sets the OS state of the virtual machine to generalized. It is recommended to sysprep the virtual machine before performing this operation.
For Windows, please refer to [Create a managed image of a generalized VM in Azure](https://docs.microsoft.com/azure/virtual-machines/windows/capture-image-resource).
For Linux, please refer to [How to create an image of a virtual machine or VHD](https://docs.microsoft.com/azure/virtual-machines/linux/capture-image).", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "x-ms-examples": { + "Generalize a Virtual Machine.": { + "$ref": "./examples/GeneralizeVirtualMachine.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines": { + "get": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_List", + "description": "Lists all of the virtual machines in the specified resource group. Use the nextLink property in the response to get the next page of virtual machines.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/virtualMachines": { + "get": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_ListAll", + "description": "Lists all of the virtual machines in the specified subscription. Use the nextLink property in the response to get the next page of virtual machines.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "statusOnly", + "in": "query", + "required": false, + "type": "string", + "description": "statusOnly=true enables fetching run time status of all Virtual Machines in the subscription." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/restorePointCollections/{restorePointCollectionName}": { + "put": { + "tags": [ + "RestorePointCollections" + ], + "operationId": "RestorePointCollections_CreateOrUpdate", + "description": "The operation to create or update the restore point collection. Please refer to https://aka.ms/RestorePoints for more details. When updating a restore point collection, only tags may be modified.", + "x-ms-examples": { + "Create or update a restore point collection.": { + "$ref": "./examples/CreateOrUpdateARestorePointCollection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "restorePointCollectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the restore point collection." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RestorePointCollection" + }, + "description": "Parameters supplied to the Create or Update restore point collection operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RestorePointCollection" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/RestorePointCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "patch": { + "tags": [ + "RestorePointCollections" + ], + "operationId": "RestorePointCollections_Update", + "description": "The operation to update the restore point collection.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "restorePointCollectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the restore point collection." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RestorePointCollectionUpdate" + }, + "description": "Parameters supplied to the Update restore point collection operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RestorePointCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "RestorePointCollections" + ], + "operationId": "RestorePointCollections_Delete", + "description": "The operation to delete the restore point collection. This operation will also delete all the contained restore points.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "restorePointCollectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Restore Point Collection." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "RestorePointCollections" + ], + "operationId": "RestorePointCollections_Get", + "description": "The operation to get the restore point collection.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "restorePointCollectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the restore point collection." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation. If expand=restorePoints, server will return all contained restore points in the restorePointCollection.", + "enum": [ + "restorePoints" + ], + "x-ms-enum": { + "name": "RestorePointCollectionExpandOptions", + "modelAsString": true + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Get a restore point collection (but not the restore points contained in the restore point collection)": { + "$ref": "./examples/GetRestorePointCollection.json" + }, + "Get a restore point collection, including the restore points contained in the restore point collection": { + "$ref": "./examples/GetRestorePointCollectionWithContainedRestorePoints.json" + } + }, + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RestorePointCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/restorePointCollections": { + "get": { + "tags": [ + "RestorePointCollections" + ], + "operationId": "RestorePointCollections_List", + "description": "Gets the list of restore point collections in a resource group.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Gets the list of restore point collections in a resource group.": { + "$ref": "./examples/GetRestorePointCollectionsInAResourceGroup.json" + } + }, + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RestorePointCollectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/restorePointCollections": { + "get": { + "tags": [ + "RestorePointCollections" + ], + "operationId": "RestorePointCollections_ListAll", + "description": "Gets the list of restore point collections in the subscription. Use nextLink property in the response to get the next page of restore point collections. Do this till nextLink is not null to fetch all the restore point collections.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RestorePointCollectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Gets the list of restore point collections in a subscription": { + "$ref": "./examples/GetRestorePointCollectionsInASubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/restorePointCollections/{restorePointCollectionName}/restorePoints/{restorePointName}": { + "put": { + "operationId": "RestorePoints_Create", + "description": "The operation to create the restore point. Updating properties of an existing restore point is not allowed", + "x-ms-examples": { + "Create a restore point": { + "$ref": "./examples/CreateARestorePoint.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "restorePointCollectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the restore point collection." + }, + { + "name": "restorePointName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the restore point." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RestorePoint" + }, + "description": "Parameters supplied to the Create restore point operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/RestorePoint" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "operationId": "RestorePoints_Delete", + "description": "The operation to delete the restore point.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "restorePointCollectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Restore Point Collection." + }, + { + "name": "restorePointName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the restore point." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "operationId": "RestorePoints_Get", + "description": "The operation to get the restore point.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "restorePointCollectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the restore point collection." + }, + { + "name": "restorePointName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the restore point." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Get a restore point": { + "$ref": "./examples/GetRestorePoint.json" + } + }, + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RestorePoint" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/vmSizes": { + "get": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_ListAvailableSizes", + "description": "Lists all available virtual machine sizes to which the specified virtual machine can be resized.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineSizeListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "Lists all available virtual machine sizes to which the specified virtual machine can be resized": { + "$ref": "./examples/ListAvailableVmSizes_VirtualMachines.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/powerOff": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_PowerOff", + "description": "The operation to power off (stop) a virtual machine. The virtual machine can be restarted with the same provisioned resources. You are still charged for this virtual machine.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "name": "skipShutdown", + "in": "query", + "required": false, + "type": "boolean", + "default": false, + "description": "The parameter to request non-graceful VM shutdown. True value for this flag indicates non-graceful shutdown whereas false indicates otherwise. Default value for this flag is false if not specified" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/reapply": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_Reapply", + "description": "The operation to reapply a virtual machine's state.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Reapply the state of a virtual machine.": { + "$ref": "./examples/ReapplyVirtualMachine.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/restart": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_Restart", + "description": "The operation to restart a virtual machine.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/start": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_Start", + "description": "The operation to start a virtual machine.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/redeploy": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_Redeploy", + "description": "Shuts down the virtual machine, moves it to a new node, and powers it back on.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/reimage": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_Reimage", + "description": "Reimages the virtual machine which has an ephemeral OS disk back to its initial state.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "name": "parameters", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VirtualMachineReimageParameters" + }, + "description": "Parameters supplied to the Reimage Virtual Machine operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Reimage a Virtual Machine.": { + "$ref": "./examples/ReimageVirtualMachine.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/retrieveBootDiagnosticsData": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_RetrieveBootDiagnosticsData", + "description": "The operation to retrieve SAS URIs for a virtual machine's boot diagnostic logs.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "name": "sasUriExpirationTimeInMinutes", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "Expiration duration in minutes for the SAS URIs with a value between 1 to 1440 minutes.

NOTE: If not specified, SAS URIs will be generated with a default expiration duration of 120 minutes." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RetrieveBootDiagnosticsDataResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": false, + "x-ms-examples": { + "RetrieveBootDiagnosticsData of a virtual machine.": { + "$ref": "./examples/RetrieveBootDiagnosticsDataVirtualMachine.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/performMaintenance": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_PerformMaintenance", + "description": "The operation to perform maintenance on a virtual machine.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/simulateEviction": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_SimulateEviction", + "description": "The operation to simulate the eviction of spot virtual machine.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + } + }, + "x-ms-long-running-operation": false, + "x-ms-examples": { + "Simulate Eviction a virtual machine.": { + "$ref": "./examples/SimulateEvictionOfVM.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/assessPatches": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_AssessPatches", + "x-ms-examples": { + "Assess patch state of a virtual machine.": { + "$ref": "./examples/VirtualMachineAssessPatches.json" + } + }, + "description": "Assess patches on the VM.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineAssessPatchesResult" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/installPatches": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_InstallPatches", + "description": "Installs patches on the VM.", + "x-ms-examples": { + "Install patch state of a virtual machine.": { + "$ref": "./examples/VirtualMachineInstallPatches.json" + } + }, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "name": "installPatchesInput", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineInstallPatchesParameters" + }, + "description": "Input for InstallPatches as directly received by the API" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineInstallPatchesResult" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}": { + "put": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_CreateOrUpdate", + "description": "Create or update a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set to create or update." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSet" + }, + "description": "The scale set object." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSet" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSet" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create a scale set with password authentication.": { + "$ref": "./examples/CreateAScaleSetWithPasswordAuthentication.json" + }, + "Create a scale set with ssh authentication.": { + "$ref": "./examples/CreateAScaleSetWithSshAuthentication.json" + }, + "Create a scale set with premium storage.": { + "$ref": "./examples/CreateAScaleSetWithPremiumStorage.json" + }, + "Create a scale set with empty data disks on each vm.": { + "$ref": "./examples/CreateAScaleSetWithEmptyDataDisksOnEachVm.json" + }, + "Create a scale set with an azure load balancer.": { + "$ref": "./examples/CreateAScaleSetWithAnAzureLoadBalancer.json" + }, + "Create a scale set with an azure application gateway.": { + "$ref": "./examples/CreateAScaleSetWithAnAzureApplicationGateway.json" + }, + "Create a scale set with boot diagnostics.": { + "$ref": "./examples/CreateAScaleSetWithBootDiagnostics.json" + }, + "Create a scale set with managed boot diagnostics.": { + "$ref": "./examples/CreateAScaleSetWithManagedBootDiagnostics.json" + }, + "Create a scale set with a marketplace image plan.": { + "$ref": "./examples/CreateAScaleSetWithAMarketplaceImagePlan.json" + }, + "Create a scale set from a custom image.": { + "$ref": "./examples/CreateAScaleSetFromACustomImage.json" + }, + "Create a platform-image scale set with unmanaged os disks.": { + "$ref": "./examples/CreateAPlatformImageScaleSetWithUnmanagedOsDisks.json" + }, + "Create a custom-image scale set from an unmanaged generalized os image.": { + "$ref": "./examples/CreateACustomImageScaleSetFromAnUnmanagedGeneralizedOsImage.json" + }, + "Create a scale set with virtual machines in different zones.": { + "$ref": "./examples/CreateAScaleSetWithVMsInDifferentZones.json" + }, + "Create a scale set with ephemeral os disks.": { + "$ref": "./examples/CreateAScaleSetWithDiffOsDisk.json" + }, + "Create a scale set with terminate scheduled events enabled.": { + "$ref": "./examples/CreateAScaleSetWithTerminateScheduledEventEnabled.json" + }, + "Create a scale set with automatic repairs enabled": { + "$ref": "./examples/CreateAScaleSetWithAutomaticRepairs.json" + }, + "Create a scale set with DiskEncryptionSet resource in os disk and data disk.": { + "$ref": "./examples/CreateAScalesetWithDiskEncryptionSetResource.json" + }, + "Create a scale set with ephemeral os disks using placement property.": { + "$ref": "./examples/CreateAScaleSetWithDiffOsDiskUsingDiffDiskPlacement.json" + }, + "Create a scale set with extension time budget.": { + "$ref": "./examples/CreateAScaleSetWithExtensionsTimeBudget.json" + }, + "Create a scale set with Host Encryption using encryptionAtHost property.": { + "$ref": "./examples/CreateAScaleSetWithEncryptionAtHost.json" + }, + "Create a scale set with Fpga Network Interfaces.": { + "$ref": "./examples/CreateAScaleSetFromWithFpgaNetworkInterface.json" + }, + "Create a scale set with Uefi Settings of secureBoot and vTPM.": { + "$ref": "./examples/CreateAScaleSetWithUefiSettings.json" + }, + "Create a scale set from a generalized shared image.": { + "$ref": "./examples/CreateAScaleSetFromAGeneralizedSharedImage.json" + }, + "Create a scale set from a specialized shared image.": { + "$ref": "./examples/CreateAScaleSetFromASpecializedSharedImage.json" + }, + "Create a scale set with userData.": { + "$ref": "./examples/CreateOrUpdateAScaleSetWithUserData.json" + } + } + }, + "patch": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_Update", + "description": "Update a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set to create or update." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetUpdate" + }, + "description": "The scale set object." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSet" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_Delete", + "description": "Deletes a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "forceDeletion", + "in": "query", + "required": false, + "type": "boolean", + "description": "Optional parameter to force delete a VM scale set. (Feature in Preview)" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Force Delete a VM scale set.": { + "$ref": "./examples/ForceDeleteVirtualMachineScaleSets.json" + } + } + }, + "get": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_Get", + "description": "Display information about a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation. 'UserData' retrieves the UserData property of the VM scale set that was provided by the user during the VM scale set Create/Update operation", + "enum": [ + "userData" + ], + "x-ms-enum": { + "name": "ExpandTypesForGetVMScaleSets", + "modelAsString": true + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSet" + } + } + }, + "x-ms-examples": { + "Get a virtual machine scale set placed on a dedicated host group through automatic placement.": { + "$ref": "./examples/GetVirtualMachineScaleSetAutoPlacedOnDedicatedHostGroup.json" + }, + "Get a virtual machine scale set with UserData": { + "$ref": "./examples/GetVirtualMachineScaleSetWithUserData.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/deallocate": { + "post": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_Deallocate", + "description": "Deallocates specific virtual machines in a VM scale set. Shuts down the virtual machines and releases the compute resources. You are not billed for the compute resources that this virtual machine scale set deallocates.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "vmInstanceIDs", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceIDs" + }, + "description": "A list of virtual machine instance IDs from the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/delete": { + "post": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_DeleteInstances", + "description": "Deletes virtual machines in a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "vmInstanceIDs", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceRequiredIDs" + }, + "description": "A list of virtual machine instance IDs from the VM scale set." + }, + { + "name": "forceDeletion", + "in": "query", + "required": false, + "type": "boolean", + "description": "Optional parameter to force delete virtual machines from the VM scale set. (Feature in Preview)" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/instanceView": { + "get": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_GetInstanceView", + "description": "Gets the status of a VM scale set instance.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetInstanceView" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets": { + "get": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_List", + "description": "Gets a list of all VM scale sets under a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/extensions/{vmssExtensionName}": { + "put": { + "tags": [ + "VirtualMachineScaleSetExtensions" + ], + "operationId": "VirtualMachineScaleSetExtensions_CreateOrUpdate", + "description": "The operation to create or update an extension.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set where the extension should be create or updated." + }, + { + "name": "vmssExtensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set extension." + }, + { + "name": "extensionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetExtension" + }, + "description": "Parameters supplied to the Create VM scale set Extension operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetExtension" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetExtension" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "VirtualMachineScaleSetExtensions" + ], + "operationId": "VirtualMachineScaleSetExtensions_Update", + "description": "The operation to update an extension.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set where the extension should be updated." + }, + { + "name": "vmssExtensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set extension." + }, + { + "name": "extensionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetExtensionUpdate" + }, + "description": "Parameters supplied to the Update VM scale set Extension operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetExtension" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetExtension" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "VirtualMachineScaleSetExtensions" + ], + "operationId": "VirtualMachineScaleSetExtensions_Delete", + "description": "The operation to delete the extension.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set where the extension should be deleted." + }, + { + "name": "vmssExtensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set extension." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "VirtualMachineScaleSetExtensions" + ], + "operationId": "VirtualMachineScaleSetExtensions_Get", + "description": "The operation to get the extension.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set containing the extension." + }, + { + "name": "vmssExtensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set extension." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetExtension" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/extensions": { + "get": { + "tags": [ + "VirtualMachineScaleSetExtensions" + ], + "operationId": "VirtualMachineScaleSetExtensions_List", + "description": "Gets a list of all extensions in a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set containing the extension." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetExtensionListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/virtualMachineScaleSets": { + "get": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_ListAll", + "description": "Gets a list of all VM Scale Sets in the subscription, regardless of the associated resource group. Use nextLink property in the response to get the next page of VM Scale Sets. Do this till nextLink is null to fetch all the VM Scale Sets.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetListWithLinkResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/skus": { + "get": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_ListSkus", + "description": "Gets a list of SKUs available for your VM scale set, including the minimum and maximum VM instances allowed for each SKU.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetListSkusResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/osUpgradeHistory": { + "get": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_GetOSUpgradeHistory", + "description": "Gets list of OS upgrades on a VM scale set instance.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetListOSUpgradeHistory" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/poweroff": { + "post": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_PowerOff", + "description": "Power off (stop) one or more virtual machines in a VM scale set. Note that resources are still attached and you are getting charged for the resources. Instead, use deallocate to release resources and avoid charges.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "vmInstanceIDs", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceIDs" + }, + "description": "A list of virtual machine instance IDs from the VM scale set." + }, + { + "name": "skipShutdown", + "in": "query", + "required": false, + "type": "boolean", + "default": false, + "description": "The parameter to request non-graceful VM shutdown. True value for this flag indicates non-graceful shutdown whereas false indicates otherwise. Default value for this flag is false if not specified" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/restart": { + "post": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_Restart", + "description": "Restarts one or more virtual machines in a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "vmInstanceIDs", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceIDs" + }, + "description": "A list of virtual machine instance IDs from the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/start": { + "post": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_Start", + "description": "Starts one or more virtual machines in a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "vmInstanceIDs", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceIDs" + }, + "description": "A list of virtual machine instance IDs from the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/redeploy": { + "post": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_Redeploy", + "description": "Shuts down all the virtual machines in the virtual machine scale set, moves them to a new node, and powers them back on.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "vmInstanceIDs", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceIDs" + }, + "description": "A list of virtual machine instance IDs from the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/performMaintenance": { + "post": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_PerformMaintenance", + "description": "Perform maintenance on one or more virtual machines in a VM scale set. Operation on instances which are not eligible for perform maintenance will be failed. Please refer to best practices for more details: https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-maintenance-notifications", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "vmInstanceIDs", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceIDs" + }, + "description": "A list of virtual machine instance IDs from the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/manualupgrade": { + "post": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_UpdateInstances", + "description": "Upgrades one or more virtual machines to the latest SKU set in the VM scale set model.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "vmInstanceIDs", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceRequiredIDs" + }, + "description": "A list of virtual machine instance IDs from the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/reimage": { + "post": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_Reimage", + "description": "Reimages (upgrade the operating system) one or more virtual machines in a VM scale set which don't have a ephemeral OS disk, for virtual machines who have a ephemeral OS disk the virtual machine is reset to initial state.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "vmScaleSetReimageInput", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetReimageParameters" + }, + "description": "Parameters for Reimaging VM ScaleSet." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/reimageall": { + "post": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_ReimageAll", + "description": "Reimages all the disks ( including data disks ) in the virtual machines in a VM scale set. This operation is only supported for managed disks.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "vmInstanceIDs", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceIDs" + }, + "description": "A list of virtual machine instance IDs from the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/rollingUpgrades/cancel": { + "post": { + "tags": [ + "VirtualMachineScaleSetRollingUpgrades" + ], + "operationId": "VirtualMachineScaleSetRollingUpgrades_Cancel", + "description": "Cancels the current virtual machine scale set rolling upgrade.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/osRollingUpgrade": { + "post": { + "tags": [ + "VirtualMachineScaleSetRollingUpgrades" + ], + "operationId": "VirtualMachineScaleSetRollingUpgrades_StartOSUpgrade", + "description": "Starts a rolling upgrade to move all virtual machine scale set instances to the latest available Platform Image OS version. Instances which are already running the latest available OS version are not affected.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/extensionRollingUpgrade": { + "post": { + "tags": [ + "VirtualMachineScaleSetRollingUpgrades" + ], + "operationId": "VirtualMachineScaleSetRollingUpgrades_StartExtensionUpgrade", + "description": "Starts a rolling upgrade to move all extensions for all virtual machine scale set instances to the latest available extension version. Instances which are already running the latest extension versions are not affected.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Start an extension rolling upgrade.": { + "$ref": "./examples/VMScaleSetExtensionRollingUpgrade.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/rollingUpgrades/latest": { + "get": { + "tags": [ + "VirtualMachineScaleSetRollingUpgrades" + ], + "operationId": "VirtualMachineScaleSetRollingUpgrades_GetLatest", + "description": "Gets the status of the latest virtual machine scale set rolling upgrade.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RollingUpgradeStatusInfo" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/forceRecoveryServiceFabricPlatformUpdateDomainWalk": { + "post": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_ForceRecoveryServiceFabricPlatformUpdateDomainWalk", + "description": "Manual platform update domain walk to update virtual machines in a service fabric virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "platformUpdateDomain", + "in": "query", + "required": true, + "type": "integer", + "description": "The platform update domain for which a manual recovery walk is requested" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoveryWalkResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/convertToSinglePlacementGroup": { + "post": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_ConvertToSinglePlacementGroup", + "description": "Converts SinglePlacementGroup property to false for a existing virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set to create or update." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VMScaleSetConvertToSinglePlacementGroupInput" + }, + "description": "The input object for ConvertToSinglePlacementGroup API." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/setOrchestrationServiceState": { + "post": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_SetOrchestrationServiceState", + "description": "Changes ServiceState property for a given service", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set to create or update." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/OrchestrationServiceStateInput" + }, + "description": "The input object for SetOrchestrationServiceState API." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}/extensions/{vmExtensionName}": { + "put": { + "tags": [ + "VirtualMachineScaleSetVMExtensions" + ], + "operationId": "VirtualMachineScaleSetVMExtensions_CreateOrUpdate", + "description": "The operation to create or update the VMSS VM extension.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "name": "vmExtensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine extension." + }, + { + "name": "extensionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMExtension" + }, + "description": "Parameters supplied to the Create Virtual Machine Extension operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMExtension" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMExtension" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create VirtualMachineScaleSet VM extension.": { + "$ref": "./examples/CreateOrUpdateVirtualMachineScaleSetVMExtensions.json" + } + } + }, + "patch": { + "tags": [ + "VirtualMachineScaleSetVMExtensions" + ], + "operationId": "VirtualMachineScaleSetVMExtensions_Update", + "description": "The operation to update the VMSS VM extension.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "name": "vmExtensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine extension." + }, + { + "name": "extensionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMExtensionUpdate" + }, + "description": "Parameters supplied to the Update Virtual Machine Extension operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMExtension" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update VirtualMachineScaleSet VM extension.": { + "$ref": "./examples/UpdateVirtualMachineScaleSetVMExtensions.json" + } + } + }, + "delete": { + "tags": [ + "VirtualMachineScaleSetVMExtensions" + ], + "operationId": "VirtualMachineScaleSetVMExtensions_Delete", + "description": "The operation to delete the VMSS VM extension.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "name": "vmExtensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine extension." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete VirtualMachineScaleSet VM extension.": { + "$ref": "./examples/DeleteVirtualMachineScaleSetVMExtensions.json" + } + } + }, + "get": { + "tags": [ + "VirtualMachineScaleSetVMExtensions" + ], + "operationId": "VirtualMachineScaleSetVMExtensions_Get", + "description": "The operation to get the VMSS VM extension.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "name": "vmExtensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine extension." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMExtension" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get VirtualMachineScaleSet VM extension.": { + "$ref": "./examples/GetVirtualMachineScaleSetVMExtensions.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}/extensions": { + "get": { + "tags": [ + "VirtualMachineScaleSetVMExtensions" + ], + "operationId": "VirtualMachineScaleSetVMExtensions_List", + "description": "The operation to get all extensions of an instance in Virtual Machine Scaleset.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMExtensionsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List extensions in Vmss instance.": { + "$ref": "./examples/ListVirtualMachineScaleSetVMExtensions.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/reimage": { + "post": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_Reimage", + "description": "Reimages (upgrade the operating system) a specific virtual machine in a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "name": "vmScaleSetVMReimageInput", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMReimageParameters" + }, + "description": "Parameters for the Reimaging Virtual machine in ScaleSet." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/reimageall": { + "post": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_ReimageAll", + "description": "Allows you to re-image all the disks ( including data disks ) in the a VM scale set instance. This operation is only supported for managed disks.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/deallocate": { + "post": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_Deallocate", + "description": "Deallocates a specific virtual machine in a VM scale set. Shuts down the virtual machine and releases the compute resources it uses. You are not billed for the compute resources of this virtual machine once it is deallocated.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}": { + "put": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_Update", + "description": "Updates a virtual machine of a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set where the extension should be create or updated." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVM" + }, + "description": "Parameters supplied to the Update Virtual Machine Scale Sets VM operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVM" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVM" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_Delete", + "description": "Deletes a virtual machine from a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "name": "forceDeletion", + "in": "query", + "required": false, + "type": "boolean", + "description": "Optional parameter to force delete a virtual machine from a VM scale set. (Feature in Preview)" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Force Delete a virtual machine from a VM scale set.": { + "$ref": "./examples/ForceDeleteVirtualMachineScaleSetVM.json" + } + } + }, + "get": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_Get", + "description": "Gets a virtual machine from a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation. 'InstanceView' will retrieve the instance view of the virtual machine. 'UserData' will retrieve the UserData of the virtual machine.", + "enum": [ + "instanceView", + "userData" + ], + "x-ms-enum": { + "name": "InstanceViewTypes", + "modelAsString": false + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVM" + } + } + }, + "x-ms-examples": { + "Get VM scale set VM with UserData": { + "$ref": "./examples/GetVirtualMachineScaleSetVMWithUserData.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/instanceView": { + "get": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_GetInstanceView", + "description": "Gets the status of a virtual machine from a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceView" + } + } + }, + "x-ms-examples": { + "Get instance view of a virtual machine from a VM scale set placed on a dedicated host group through automatic placement.": { + "$ref": "./examples/GetVirtualMachineScaleSetVMInstanceViewAutoPlacedOnDedicatedHostGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines": { + "get": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_List", + "description": "Gets a list of all virtual machines in a VM scale sets.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply to the operation. Allowed values are 'startswith(instanceView/statuses/code, 'PowerState') eq true', 'properties/latestModelApplied eq true', 'properties/latestModelApplied eq false'." + }, + { + "name": "$select", + "in": "query", + "required": false, + "type": "string", + "description": "The list parameters. Allowed values are 'instanceView', 'instanceView/statuses'." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply to the operation. Allowed values are 'instanceView'." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/VirtualMachineScaleSetVM" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/poweroff": { + "post": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_PowerOff", + "description": "Power off (stop) a virtual machine in a VM scale set. Note that resources are still attached and you are getting charged for the resources. Instead, use deallocate to release resources and avoid charges.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "name": "skipShutdown", + "in": "query", + "required": false, + "type": "boolean", + "default": false, + "description": "The parameter to request non-graceful VM shutdown. True value for this flag indicates non-graceful shutdown whereas false indicates otherwise. Default value for this flag is false if not specified" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/restart": { + "post": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_Restart", + "description": "Restarts a virtual machine in a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/start": { + "post": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_Start", + "description": "Starts a virtual machine in a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/redeploy": { + "post": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_Redeploy", + "description": "Shuts down the virtual machine in the virtual machine scale set, moves it to a new node, and powers it back on.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/retrieveBootDiagnosticsData": { + "post": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_RetrieveBootDiagnosticsData", + "description": "The operation to retrieve SAS URIs of boot diagnostic logs for a virtual machine in a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "name": "sasUriExpirationTimeInMinutes", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "Expiration duration in minutes for the SAS URIs with a value between 1 to 1440 minutes.

NOTE: If not specified, SAS URIs will be generated with a default expiration duration of 120 minutes." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RetrieveBootDiagnosticsDataResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": false, + "x-ms-examples": { + "RetrieveBootDiagnosticsData of a virtual machine.": { + "$ref": "./examples/RetrieveBootDiagnosticsDataVMScaleSetVM.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/performMaintenance": { + "post": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_PerformMaintenance", + "description": "Performs maintenance on a virtual machine in a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}/simulateEviction": { + "post": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_SimulateEviction", + "description": "The operation to simulate the eviction of spot virtual machine in a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + } + }, + "x-ms-long-running-operation": false, + "x-ms-examples": { + "Simulate Eviction a virtual machine.": { + "$ref": "./examples/SimulateEvictionOfVmssVM.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/logAnalytics/apiAccess/getRequestRateByInterval": { + "post": { + "tags": [ + "LogAnalytics" + ], + "operationId": "LogAnalytics_ExportRequestRateByInterval", + "x-ms-examples": { + "Export logs which contain all Api requests made to Compute Resource Provider within the given time period broken down by intervals.": { + "$ref": "./examples/LogAnalyticsRequestRateByInterval.json" + } + }, + "description": "Export logs that show Api requests made by this subscription in the given time window to show throttling activities.", + "parameters": [ + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RequestRateByIntervalInput" + }, + "description": "Parameters supplied to the LogAnalytics getRequestRateByInterval Api." + }, + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location upon which virtual-machine-sizes is queried.", + "pattern": "^[-\\w\\._]+$" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/LogAnalyticsOperationResult" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/logAnalytics/apiAccess/getThrottledRequests": { + "post": { + "tags": [ + "LogAnalytics" + ], + "operationId": "LogAnalytics_ExportThrottledRequests", + "x-ms-examples": { + "Export logs which contain all throttled Api requests made to Compute Resource Provider within the given time period.": { + "$ref": "./examples/LogAnalyticsThrottledRequests.json" + } + }, + "description": "Export logs that show total throttled Api requests for this subscription in the given time window.", + "parameters": [ + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThrottledRequestsInput" + }, + "description": "Parameters supplied to the LogAnalytics getThrottledRequests Api." + }, + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location upon which virtual-machine-sizes is queried.", + "pattern": "^[-\\w\\._]+$" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/LogAnalyticsOperationResult" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + } + }, + "definitions": { + "RestorePointCollectionSourceProperties": { + "properties": { + "location": { + "type": "string", + "readOnly": true, + "description": "Location of the source resource used to create this restore point collection." + }, + "id": { + "type": "string", + "description": "Resource Id of the source resource used to create this restore point collection" + } + }, + "description": "The properties of the source resource that this restore point collection is created from." + }, + "RestorePointCollectionProperties": { + "properties": { + "source": { + "$ref": "#/definitions/RestorePointCollectionSourceProperties" + }, + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "The provisioning state of the restore point collection." + }, + "restorePointCollectionId": { + "type": "string", + "readOnly": true, + "description": "The unique id of the restore point collection." + }, + "restorePoints": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/RestorePoint" + }, + "description": "A list containing all restore points created under this restore point collection." + } + }, + "description": "The restore point collection properties." + }, + "RestorePointCollection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RestorePointCollectionProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Create or update Restore Point collection parameters." + }, + "RestorePointCollectionUpdate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RestorePointCollectionProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/UpdateResource" + } + ], + "description": "Update Restore Point collection parameters." + }, + "RestorePointCollectionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RestorePointCollection" + }, + "description": "Gets the list of restore point collections." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of RestorePointCollections. Call ListNext() with this to fetch the next page of RestorePointCollections" + } + }, + "description": "The List restore point collection operation response." + }, + "RestorePointSourceMetadata": { + "properties": { + "hardwareProfile": { + "$ref": "#/definitions/HardwareProfile", + "description": "Gets the hardware profile." + }, + "storageProfile": { + "$ref": "#/definitions/RestorePointSourceVMStorageProfile", + "description": "Gets the storage profile." + }, + "osProfile": { + "$ref": "#/definitions/OSProfile", + "description": "Gets the OS profile." + }, + "diagnosticsProfile": { + "$ref": "#/definitions/DiagnosticsProfile", + "description": "Gets the diagnostics profile." + }, + "licenseType": { + "type": "string", + "description": "Gets the license type, which is for bring your own license scenario." + }, + "vmId": { + "type": "string", + "description": "Gets the virtual machine unique id." + }, + "securityProfile": { + "$ref": "#/definitions/SecurityProfile", + "description": "Gets the security profile." + } + }, + "description": "Describes the properties of the Virtual Machine for which the restore point was created. The properties provided are a subset and the snapshot of the overall Virtual Machine properties captured at the time of the restore point creation." + }, + "RestorePointSourceVMStorageProfile": { + "properties": { + "osDisk": { + "$ref": "#/definitions/RestorePointSourceVMOSDisk", + "description": "Gets the OS disk of the VM captured at the time of the restore point creation." + }, + "dataDisks": { + "type": "array", + "items": { + "$ref": "#/definitions/RestorePointSourceVMDataDisk" + }, + "description": "Gets the data disks of the VM captured at the time of the restore point creation." + } + }, + "description": "Describes the storage profile." + }, + "RestorePointSourceVMOSDisk": { + "properties": { + "osType": { + "type": "string", + "description": "Gets the Operating System type.", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemType", + "modelAsString": true + } + }, + "encryptionSettings": { + "$ref": "#/definitions/DiskEncryptionSettings", + "description": "Gets the disk encryption settings." + }, + "name": { + "type": "string", + "description": "Gets the disk name." + }, + "caching": { + "$ref": "#/definitions/Caching", + "description": "Gets the caching type." + }, + "diskSizeGB": { + "type": "integer", + "format": "int32", + "description": "Gets the disk size in GB." + }, + "managedDisk": { + "$ref": "#/definitions/ManagedDiskParameters", + "description": "Gets the managed disk details" + }, + "diskRestorePoint": { + "$ref": "#/definitions/ApiEntityReference", + "description": "Gets the disk restore point Id." + } + }, + "description": "Describes an Operating System disk." + }, + "RestorePointSourceVMDataDisk": { + "properties": { + "lun": { + "type": "integer", + "format": "int32", + "description": "Gets the logical unit number." + }, + "name": { + "type": "string", + "description": "Gets the disk name." + }, + "caching": { + "$ref": "#/definitions/Caching", + "description": "Gets the caching type." + }, + "diskSizeGB": { + "type": "integer", + "format": "int32", + "description": "Gets the initial disk size in GB for blank data disks, and the new desired size for existing OS and Data disks." + }, + "managedDisk": { + "$ref": "#/definitions/ManagedDiskParameters", + "description": "Gets the managed disk details" + }, + "diskRestorePoint": { + "$ref": "#/definitions/ApiEntityReference", + "description": "Gets the disk restore point Id." + } + }, + "description": "Describes a data disk." + }, + "RestorePointProvisioningDetails": { + "properties": { + "creationTime": { + "type": "string", + "format": "date-time", + "description": "Gets the creation time of the restore point." + }, + "totalUsedSizeInBytes": { + "type": "integer", + "format": "int64", + "description": "Gets the total size of the data in all the disks which are part of the restore point." + }, + "statusCode": { + "type": "integer", + "format": "int32", + "description": "Gets the status of the Create restore point operation." + }, + "statusMessage": { + "type": "string", + "description": "Gets the status message of the Create restore point operation." + } + }, + "description": "Restore Point Provisioning details." + }, + "RestorePoint": { + "properties": { + "sourceMetadata": { + "readOnly": true, + "$ref": "#/definitions/RestorePointSourceMetadata", + "description": "Gets the details of the VM captured at the time of the restore point creation." + }, + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "Gets the provisioning state of the restore point." + }, + "consistencyMode": { + "type": "string", + "readOnly": true, + "enum": [ + "CrashConsistent", + "FileSystemConsistent", + "ApplicationConsistent" + ], + "x-ms-enum": { + "name": "ConsistencyModeTypes", + "modelAsString": true + }, + "description": "Gets the consistency mode for the restore point. Please refer to https://aka.ms/RestorePoints for more details." + }, + "provisioningDetails": { + "$ref": "#/definitions/RestorePointProvisioningDetails", + "readOnly": true, + "description": "Gets the provisioning details set by the server during Create restore point operation." + }, + "excludeDisks": { + "type": "array", + "items": { + "$ref": "#/definitions/ApiEntityReference" + }, + "description": "List of disk resource ids that the customer wishes to exclude from the restore point. If no disks are specified, all disks will be included." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "description": "Restore Point details." + }, + "ComputeOperationListResult": { + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ComputeOperationValue" + }, + "description": "The list of compute operations" + } + }, + "description": "The List Compute Operation operation response." + }, + "ComputeOperationValue": { + "properties": { + "origin": { + "type": "string", + "readOnly": true, + "description": "The origin of the compute operation." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the compute operation." + }, + "display": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ComputeOperationValueDisplay" + } + }, + "description": "Describes the properties of a Compute Operation value." + }, + "ComputeOperationValueDisplay": { + "properties": { + "operation": { + "type": "string", + "readOnly": true, + "description": "The display name of the compute operation." + }, + "resource": { + "type": "string", + "readOnly": true, + "description": "The display name of the resource the operation applies to." + }, + "description": { + "type": "string", + "readOnly": true, + "description": "The description of the operation." + }, + "provider": { + "type": "string", + "readOnly": true, + "description": "The resource provider for the operation." + } + }, + "description": "Describes the properties of a Compute Operation Value Display." + }, + "DisallowedConfiguration": { + "properties": { + "vmDiskType": { + "type": "string", + "description": "VM disk types which are disallowed.", + "enum": [ + "None", + "Unmanaged" + ], + "x-ms-enum": { + "name": "VmDiskTypes", + "modelAsString": true + } + } + }, + "description": "Specifies the disallowed configuration for a virtual machine image." + }, + "RetrieveBootDiagnosticsDataResult": { + "properties": { + "consoleScreenshotBlobUri": { + "type": "string", + "readOnly": true, + "description": "The console screenshot blob URI" + }, + "serialConsoleLogBlobUri": { + "type": "string", + "readOnly": true, + "description": "The serial console log blob URI." + } + }, + "description": "The SAS URIs of the console screenshot and serial log blobs." + }, + "HyperVGenerationType": { + "type": "string", + "description": "Specifies the HyperVGeneration Type", + "enum": [ + "V1", + "V2" + ], + "x-ms-enum": { + "name": "HyperVGenerationTypes", + "modelAsString": true + } + }, + "InstanceViewStatus": { + "properties": { + "code": { + "type": "string", + "description": "The status code." + }, + "level": { + "type": "string", + "description": "The level code.", + "enum": [ + "Info", + "Warning", + "Error" + ], + "x-ms-enum": { + "name": "StatusLevelTypes", + "modelAsString": false + } + }, + "displayStatus": { + "type": "string", + "description": "The short localizable label for the status." + }, + "message": { + "type": "string", + "description": "The detailed status message, including for alerts and error messages." + }, + "time": { + "type": "string", + "format": "date-time", + "description": "The time of the status." + } + }, + "description": "Instance view status." + }, + "AvailabilitySetProperties": { + "properties": { + "platformUpdateDomainCount": { + "type": "integer", + "format": "int32", + "description": "Update Domain count." + }, + "platformFaultDomainCount": { + "type": "integer", + "format": "int32", + "description": "Fault Domain count." + }, + "virtualMachines": { + "type": "array", + "items": { + "$ref": "#/definitions/SubResource" + }, + "description": "A list of references to all virtual machines in the availability set." + }, + "proximityPlacementGroup": { + "$ref": "#/definitions/SubResource", + "description": "Specifies information about the proximity placement group that the availability set should be assigned to.

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

For more information on Azure planned maintenance, see [Maintenance and updates for Virtual Machines in Azure](https://docs.microsoft.com/azure/virtual-machines/maintenance-and-updates)

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

Possible values are:

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

**Ultra** : For future use.", + "enum": [ + "Standard", + "Ultra" + ], + "x-ms-enum": { + "name": "ProximityPlacementGroupType", + "modelAsString": true + } + }, + "virtualMachines": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SubResourceWithColocationStatus" + }, + "description": "A list of references to all virtual machines in the proximity placement group." + }, + "virtualMachineScaleSets": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SubResourceWithColocationStatus" + }, + "description": "A list of references to all virtual machine scale sets in the proximity placement group." + }, + "availabilitySets": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SubResourceWithColocationStatus" + }, + "description": "A list of references to all availability sets in the proximity placement group." + }, + "colocationStatus": { + "$ref": "#/definitions/InstanceViewStatus", + "description": "Describes colocation status of the Proximity Placement Group." + } + }, + "description": "Describes the properties of a Proximity Placement Group." + }, + "ProximityPlacementGroup": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ProximityPlacementGroupProperties", + "description": "Describes the properties of a Proximity Placement Group." + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Specifies information about the proximity placement group." + }, + "ProximityPlacementGroupUpdate": { + "allOf": [ + { + "$ref": "#/definitions/UpdateResource" + } + ], + "description": "Specifies information about the proximity placement group." + }, + "ProximityPlacementGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ProximityPlacementGroup" + }, + "description": "The list of proximity placement groups" + }, + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of proximity placement groups." + } + }, + "required": [ + "value" + ], + "description": "The List Proximity Placement Group operation response." + }, + "DedicatedHostGroupInstanceView": { + "properties": { + "hosts": { + "type": "array", + "items": { + "$ref": "#/definitions/DedicatedHostInstanceViewWithName" + }, + "description": "List of instance view of the dedicated hosts under the dedicated host group." + } + } + }, + "DedicatedHostGroupProperties": { + "properties": { + "platformFaultDomainCount": { + "type": "integer", + "format": "int32", + "minimum": 1, + "description": "Number of fault domains that the host group can span." + }, + "hosts": { + "type": "array", + "items": { + "$ref": "#/definitions/SubResourceReadOnly" + }, + "readOnly": true, + "description": "A list of references to all dedicated hosts in the dedicated host group." + }, + "instanceView": { + "$ref": "#/definitions/DedicatedHostGroupInstanceView", + "readOnly": true, + "description": "The dedicated host group instance view, which has the list of instance view of the dedicated hosts under the dedicated host group." + }, + "supportAutomaticPlacement": { + "type": "boolean", + "description": "Specifies whether virtual machines or virtual machine scale sets can be placed automatically on the dedicated host group. Automatic placement means resources are allocated on dedicated hosts, that are chosen by Azure, under the dedicated host group. The value is defaulted to 'false' when not provided.

Minimum api-version: 2020-06-01." + } + }, + "required": [ + "platformFaultDomainCount" + ], + "description": "Dedicated Host Group Properties." + }, + "DedicatedHostGroup": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DedicatedHostGroupProperties" + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Availability Zone to use for this host group. Only single zone is supported. The zone can be assigned only during creation. If not provided, the group supports all zones in the region. If provided, enforces each host in the group to be in the same zone." + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Specifies information about the dedicated host group that the dedicated hosts should be assigned to.

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

Possible values are:

**None**

**Windows_Server_Hybrid**

**Windows_Server_Perpetual**

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

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

Possible values are:

**None**

**Windows_Server_Hybrid**

**Windows_Server_Perpetual**

Default: **None**" + }, + "provisioningTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The date when the host was first provisioned." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state, which only appears in the response." + }, + "instanceView": { + "$ref": "#/definitions/DedicatedHostInstanceView", + "readOnly": true, + "description": "The dedicated host instance view." + } + }, + "description": "Properties of the dedicated host." + }, + "DedicatedHost": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DedicatedHostProperties" + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "SKU of the dedicated host for Hardware Generation and VM family. Only name is required to be set. List Microsoft.Compute SKUs for a list of possible values." + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "required": [ + "sku" + ], + "description": "Specifies information about the Dedicated host." + }, + "DedicatedHostUpdate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DedicatedHostProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/UpdateResource" + } + ], + "description": "Specifies information about the dedicated host. Only tags, autoReplaceOnFailure and licenseType may be updated." + }, + "DedicatedHostListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DedicatedHost" + }, + "description": "The list of dedicated hosts" + }, + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of dedicated hosts. Call ListNext() with this URI to fetch the next page of dedicated hosts." + } + }, + "required": [ + "value" + ], + "description": "The list dedicated host operation response." + }, + "SshPublicKeyGenerateKeyPairResult": { + "properties": { + "privateKey": { + "type": "string", + "description": "Private key portion of the key pair used to authenticate to a virtual machine through ssh. The private key is returned in RFC3447 format and should be treated as a secret." + }, + "publicKey": { + "type": "string", + "description": "Public key portion of the key pair used to authenticate to a virtual machine through ssh. The public key is in ssh-rsa format." + }, + "id": { + "type": "string", + "description": "The ARM resource id in the form of /subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/providers/Microsoft.Compute/sshPublicKeys/{SshPublicKeyName}" + } + }, + "required": [ + "privateKey", + "publicKey", + "id" + ], + "description": "Response from generation of an SSH key pair." + }, + "SshPublicKeyResourceProperties": { + "properties": { + "publicKey": { + "type": "string", + "description": "SSH public key used to authenticate to a virtual machine through ssh. If this property is not initially provided when the resource is created, the publicKey property will be populated when generateKeyPair is called. If the public key is provided upon resource creation, the provided public key needs to be at least 2048-bit and in ssh-rsa format." + } + }, + "description": "Properties of the SSH public key." + }, + "SshPublicKeyResource": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SshPublicKeyResourceProperties", + "description": "Properties of the SSH public key." + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Specifies information about the SSH public key." + }, + "SshPublicKeyUpdateResource": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SshPublicKeyResourceProperties", + "description": "Properties of the SSH public key." + } + }, + "allOf": [ + { + "$ref": "#/definitions/UpdateResource" + } + ], + "description": "Specifies information about the SSH public key." + }, + "SshPublicKeysGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SshPublicKeyResource" + }, + "description": "The list of SSH public keys" + }, + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of SSH public keys. Call ListNext() with this URI to fetch the next page of SSH public keys." + } + }, + "required": [ + "value" + ], + "description": "The list SSH public keys operation response." + }, + "VirtualMachineSize": { + "properties": { + "name": { + "type": "string", + "description": "The name of the virtual machine size." + }, + "numberOfCores": { + "type": "integer", + "format": "int32", + "description": "The number of cores supported by the virtual machine size. For Constrained vCPU capable VM sizes, this number represents the total vCPUs of quota that the VM uses. For accurate vCPU count, please refer to https://docs.microsoft.com/azure/virtual-machines/constrained-vcpu or https://docs.microsoft.com/rest/api/compute/resourceskus/list" + }, + "osDiskSizeInMB": { + "type": "integer", + "format": "int32", + "description": "The OS disk size, in MB, allowed by the virtual machine size." + }, + "resourceDiskSizeInMB": { + "type": "integer", + "format": "int32", + "description": "The resource disk size, in MB, allowed by the virtual machine size." + }, + "memoryInMB": { + "type": "integer", + "format": "int32", + "description": "The amount of memory, in MB, supported by the virtual machine size." + }, + "maxDataDiskCount": { + "type": "integer", + "format": "int32", + "description": "The maximum number of data disks that can be attached to the virtual machine size." + } + }, + "description": "Describes the properties of a VM size." + }, + "VirtualMachineSizeListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineSize" + }, + "description": "The list of virtual machine sizes." + } + }, + "description": "The List Virtual Machine operation response." + }, + "VirtualMachineExtensionImageProperties": { + "properties": { + "operatingSystem": { + "type": "string", + "description": "The operating system this extension supports." + }, + "computeRole": { + "type": "string", + "description": "The type of role (IaaS or PaaS) this extension supports." + }, + "handlerSchema": { + "type": "string", + "description": "The schema defined by publisher, where extension consumers should provide settings in a matching schema." + }, + "vmScaleSetEnabled": { + "type": "boolean", + "description": "Whether the extension can be used on xRP VMScaleSets. By default existing extensions are usable on scalesets, but there might be cases where a publisher wants to explicitly indicate the extension is only enabled for CRP VMs but not VMSS." + }, + "supportsMultipleExtensions": { + "type": "boolean", + "description": "Whether the handler can support multiple extensions." + } + }, + "required": [ + "operatingSystem", + "computeRole", + "handlerSchema" + ], + "description": "Describes the properties of a Virtual Machine Extension Image." + }, + "VirtualMachineExtensionImage": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineExtensionImageProperties" + } + }, + "required": [ + "name", + "location" + ], + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Describes a Virtual Machine Extension Image." + }, + "VirtualMachineImageResource": { + "properties": { + "name": { + "type": "string", + "description": "The name of the resource." + }, + "location": { + "type": "string", + "description": "The supported Azure location of the resource." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Specifies the tags that are assigned to the virtual machine. For more information about using tags, see [Using tags to organize your Azure resources](https://docs.microsoft.com/azure/azure-resource-manager/resource-group-using-tags.md)." + }, + "extendedLocation": { + "$ref": "#/definitions/ExtendedLocation", + "description": "The extended location of the Virtual Machine." + } + }, + "required": [ + "name", + "location" + ], + "allOf": [ + { + "$ref": "#/definitions/SubResource" + } + ], + "description": "Virtual machine image resource information." + }, + "VirtualMachineExtensionInstanceView": { + "properties": { + "name": { + "type": "string", + "description": "The virtual machine extension name." + }, + "type": { + "type": "string", + "description": "Specifies the type of the extension; an example is \"CustomScriptExtension\"." + }, + "typeHandlerVersion": { + "type": "string", + "description": "Specifies the version of the script handler." + }, + "substatuses": { + "type": "array", + "items": { + "$ref": "#/definitions/InstanceViewStatus" + }, + "description": "The resource status information." + }, + "statuses": { + "type": "array", + "items": { + "$ref": "#/definitions/InstanceViewStatus" + }, + "description": "The resource status information." + } + }, + "description": "The instance view of a virtual machine extension." + }, + "VirtualMachineExtensionProperties": { + "properties": { + "forceUpdateTag": { + "type": "string", + "description": "How the extension handler should be forced to update even if the extension configuration has not changed." + }, + "publisher": { + "type": "string", + "description": "The name of the extension handler publisher." + }, + "type": { + "type": "string", + "description": "Specifies the type of the extension; an example is \"CustomScriptExtension\"." + }, + "typeHandlerVersion": { + "type": "string", + "description": "Specifies the version of the script handler." + }, + "autoUpgradeMinorVersion": { + "type": "boolean", + "description": "Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true." + }, + "enableAutomaticUpgrade": { + "type": "boolean", + "description": "Indicates whether the extension should be automatically upgraded by the platform if there is a newer version of the extension available." + }, + "settings": { + "type": "object", + "description": "Json formatted public settings for the extension." + }, + "protectedSettings": { + "type": "object", + "description": "The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state, which only appears in the response." + }, + "instanceView": { + "$ref": "#/definitions/VirtualMachineExtensionInstanceView", + "description": "The virtual machine extension instance view." + } + }, + "description": "Describes the properties of a Virtual Machine Extension." + }, + "VirtualMachineExtensionUpdateProperties": { + "properties": { + "forceUpdateTag": { + "type": "string", + "description": "How the extension handler should be forced to update even if the extension configuration has not changed." + }, + "publisher": { + "type": "string", + "description": "The name of the extension handler publisher." + }, + "type": { + "type": "string", + "description": "Specifies the type of the extension; an example is \"CustomScriptExtension\"." + }, + "typeHandlerVersion": { + "type": "string", + "description": "Specifies the version of the script handler." + }, + "autoUpgradeMinorVersion": { + "type": "boolean", + "description": "Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true." + }, + "enableAutomaticUpgrade": { + "type": "boolean", + "description": "Indicates whether the extension should be automatically upgraded by the platform if there is a newer version of the extension available." + }, + "settings": { + "type": "object", + "description": "Json formatted public settings for the extension." + }, + "protectedSettings": { + "type": "object", + "description": "The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all." + } + }, + "description": "Describes the properties of a Virtual Machine Extension." + }, + "VirtualMachineExtension": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineExtensionProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Describes a Virtual Machine Extension." + }, + "VirtualMachineScaleSetVMExtension": { + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the extension." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineExtensionProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/SubResourceReadOnly" + } + ], + "description": "Describes a VMSS VM Extension." + }, + "VirtualMachineExtensionUpdate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineExtensionUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/UpdateResource" + } + ], + "description": "Describes a Virtual Machine Extension." + }, + "VirtualMachineScaleSetVMExtensionUpdate": { + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the extension." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineExtensionUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/SubResourceReadOnly" + } + ], + "description": "Describes a VMSS VM Extension." + }, + "VirtualMachineExtensionsListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineExtension" + }, + "description": "The list of extensions" + } + }, + "description": "The List Extension operation response" + }, + "VirtualMachineScaleSetVMExtensionsListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineScaleSetVMExtension" + }, + "description": "The list of VMSS VM extensions" + } + }, + "description": "The List VMSS VM Extension operation response" + }, + "VirtualMachineSoftwarePatchProperties": { + "properties": { + "patchId": { + "type": "string", + "readOnly": true, + "description": "A unique identifier for the patch." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The friendly name of the patch." + }, + "version": { + "type": "string", + "readOnly": true, + "description": "The version number of the patch. This property applies only to Linux patches." + }, + "kbId": { + "type": "string", + "readOnly": true, + "description": "The KBID of the patch. Only applies to Windows patches." + }, + "classifications": { + "type": "array", + "readOnly": true, + "items": { + "type": "string" + }, + "description": "The classification(s) of the patch as provided by the patch publisher." + }, + "rebootBehavior": { + "type": "string", + "readOnly": true, + "description": "Describes the reboot requirements of the patch.", + "enum": [ + "Unknown", + "NeverReboots", + "AlwaysRequiresReboot", + "CanRequestReboot" + ], + "x-ms-enum": { + "name": "VMGuestPatchRebootBehavior", + "modelAsString": true + } + }, + "activityId": { + "type": "string", + "readOnly": true, + "description": "The activity ID of the operation that produced this result. It is used to correlate across CRP and extension logs." + }, + "publishedDate": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The UTC timestamp when the repository published this patch." + }, + "lastModifiedDateTime": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The UTC timestamp of the last update to this patch record." + }, + "assessmentState": { + "type": "string", + "readOnly": true, + "description": "Describes the availability of a given patch.", + "enum": [ + "Unknown", + "Available" + ], + "x-ms-enum": { + "name": "PatchAssessmentState", + "modelAsString": true + } + } + }, + "description": "Describes the properties of a Virtual Machine software patch." + }, + "VirtualMachineAssessPatchesResult": { + "properties": { + "status": { + "type": "string", + "readOnly": true, + "description": "The overall success or failure status of the operation. It remains \"InProgress\" until the operation completes. At that point it will become \"Unknown\", \"Failed\", \"Succeeded\", or \"CompletedWithWarnings.\"", + "enum": [ + "Unknown", + "InProgress", + "Failed", + "Succeeded", + "CompletedWithWarnings" + ], + "x-ms-enum": { + "name": "PatchOperationStatus", + "modelAsString": true + } + }, + "assessmentActivityId": { + "type": "string", + "readOnly": true, + "description": "The activity ID of the operation that produced this result. It is used to correlate across CRP and extension logs." + }, + "rebootPending": { + "type": "boolean", + "readOnly": true, + "description": "The overall reboot status of the VM. It will be true when partially installed patches require a reboot to complete installation but the reboot has not yet occurred." + }, + "criticalAndSecurityPatchCount": { + "type": "integer", + "readOnly": true, + "format": "int32", + "description": "The number of critical or security patches that have been detected as available and not yet installed." + }, + "otherPatchCount": { + "type": "integer", + "readOnly": true, + "format": "int32", + "description": "The number of all available patches excluding critical and security." + }, + "startDateTime": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The UTC timestamp when the operation began." + }, + "availablePatches": { + "type": "array", + "readOnly": true, + "items": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineSoftwarePatchProperties" + }, + "description": "The list of patches that have been detected as available for installation." + }, + "error": { + "$ref": "#/definitions/ApiError", + "readOnly": true, + "description": "The errors that were encountered during execution of the operation. The details array contains the list of them." + } + }, + "description": "Describes the properties of an AssessPatches result." + }, + "VirtualMachineInstallPatchesParameters": { + "properties": { + "maximumDuration": { + "type": "string", + "description": "Specifies the maximum amount of time that the operation will run. It must be an ISO 8601-compliant duration string such as PT4H (4 hours)" + }, + "rebootSetting": { + "type": "string", + "description": "Defines when it is acceptable to reboot a VM during a software update operation.", + "enum": [ + "IfRequired", + "Never", + "Always" + ], + "x-ms-enum": { + "name": "VMGuestPatchRebootSetting", + "modelAsString": true + } + }, + "windowsParameters": { + "$ref": "#/definitions/WindowsParameters", + "description": "Input for InstallPatches on a Windows VM, as directly received by the API" + }, + "linuxParameters": { + "$ref": "#/definitions/LinuxParameters", + "description": "Input for InstallPatches on a Linux VM, as directly received by the API" + } + }, + "required": [ + "maximumDuration", + "rebootSetting" + ], + "description": "Input for InstallPatches as directly received by the API" + }, + "WindowsParameters": { + "properties": { + "classificationsToInclude": { + "type": "array", + "description": "The update classifications to select when installing patches for Windows.", + "items": { + "type": "string", + "enum": [ + "Critical", + "Security", + "UpdateRollUp", + "FeaturePack", + "ServicePack", + "Definition", + "Tools", + "Updates" + ], + "x-ms-enum": { + "name": "VMGuestPatchClassification_Windows", + "modelAsString": true + } + } + }, + "kbNumbersToInclude": { + "type": "array", + "description": "Kbs to include in the patch operation", + "items": { + "type": "string" + } + }, + "kbNumbersToExclude": { + "type": "array", + "description": "Kbs to exclude in the patch operation", + "items": { + "type": "string" + } + }, + "excludeKbsRequiringReboot": { + "type": "boolean", + "description": "Filters out Kbs that don't have an InstallationRebootBehavior of 'NeverReboots' when this is set to true." + }, + "maxPatchPublishDate": { + "type": "string", + "format": "date-time", + "description": "This is used to install patches that were published on or before this given max published date." + } + }, + "description": "Input for InstallPatches on a Windows VM, as directly received by the API" + }, + "LinuxParameters": { + "properties": { + "classificationsToInclude": { + "type": "array", + "description": "The update classifications to select when installing patches for Linux.", + "items": { + "type": "string", + "enum": [ + "Critical", + "Security", + "Other" + ], + "x-ms-enum": { + "name": "VMGuestPatchClassification_Linux", + "modelAsString": true + } + } + }, + "packageNameMasksToInclude": { + "type": "array", + "description": "packages to include in the patch operation. Format: packageName_packageVersion", + "items": { + "type": "string" + } + }, + "packageNameMasksToExclude": { + "type": "array", + "description": "packages to exclude in the patch operation. Format: packageName_packageVersion", + "items": { + "type": "string" + } + }, + "maintenanceRunId": { + "type": "string", + "description": "This is used as a maintenance run identifier for Auto VM Guest Patching in Linux." + } + }, + "description": "Input for InstallPatches on a Linux VM, as directly received by the API" + }, + "VirtualMachineInstallPatchesResult": { + "properties": { + "status": { + "type": "string", + "readOnly": true, + "description": "The overall success or failure status of the operation. It remains \"InProgress\" until the operation completes. At that point it will become \"Failed\", \"Succeeded\", \"Unknown\" or \"CompletedWithWarnings.\"", + "enum": [ + "Unknown", + "InProgress", + "Failed", + "Succeeded", + "CompletedWithWarnings" + ], + "x-ms-enum": { + "name": "PatchOperationStatus", + "modelAsString": true + } + }, + "installationActivityId": { + "type": "string", + "readOnly": true, + "description": "The activity ID of the operation that produced this result. It is used to correlate across CRP and extension logs." + }, + "rebootStatus": { + "type": "string", + "readOnly": true, + "description": "The reboot state of the VM following completion of the operation.", + "enum": [ + "Unknown", + "NotNeeded", + "Required", + "Started", + "Failed", + "Completed" + ], + "x-ms-enum": { + "name": "VMGuestPatchRebootStatus", + "modelAsString": true + } + }, + "maintenanceWindowExceeded": { + "type": "boolean", + "readOnly": true, + "description": "Whether the operation ran out of time before it completed all its intended actions." + }, + "excludedPatchCount": { + "type": "integer", + "readOnly": true, + "format": "int32", + "description": "The number of patches that were not installed due to the user blocking their installation." + }, + "notSelectedPatchCount": { + "type": "integer", + "readOnly": true, + "format": "int32", + "description": "The number of patches that were detected as available for install, but did not meet the operation's criteria." + }, + "pendingPatchCount": { + "type": "integer", + "readOnly": true, + "format": "int32", + "description": "The number of patches that were identified as meeting the installation criteria, but were not able to be installed. Typically this happens when maintenanceWindowExceeded == true." + }, + "installedPatchCount": { + "type": "integer", + "readOnly": true, + "format": "int32", + "description": "The number of patches successfully installed." + }, + "failedPatchCount": { + "type": "integer", + "readOnly": true, + "format": "int32", + "description": "The number of patches that could not be installed due to some issue. See errors for details." + }, + "patches": { + "type": "array", + "readOnly": true, + "items": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PatchInstallationDetail" + }, + "description": "The patches that were installed during the operation." + }, + "startDateTime": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The UTC timestamp when the operation began." + }, + "error": { + "$ref": "#/definitions/ApiError", + "readOnly": true, + "description": "The errors that were encountered during execution of the operation. The details array contains the list of them." + } + }, + "description": "The result summary of an installation operation." + }, + "PatchInstallationDetail": { + "properties": { + "patchId": { + "type": "string", + "readOnly": true, + "description": "A unique identifier for the patch." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The friendly name of the patch." + }, + "version": { + "type": "string", + "readOnly": true, + "description": "The version string of the package. It may conform to Semantic Versioning. Only applies to Linux." + }, + "kbId": { + "type": "string", + "readOnly": true, + "description": "The KBID of the patch. Only applies to Windows patches." + }, + "classifications": { + "type": "array", + "readOnly": true, + "items": { + "type": "string" + }, + "description": "The classification(s) of the patch as provided by the patch publisher." + }, + "installationState": { + "type": "string", + "readOnly": true, + "description": "The state of the patch after the installation operation completed.", + "enum": [ + "Unknown", + "Installed", + "Failed", + "Excluded", + "NotSelected", + "Pending" + ], + "x-ms-enum": { + "name": "PatchInstallationState", + "modelAsString": true + } + } + }, + "description": "Information about a specific patch that was encountered during an installation action." + }, + "PurchasePlan": { + "properties": { + "publisher": { + "type": "string", + "description": "The publisher ID." + }, + "name": { + "type": "string", + "description": "The plan ID." + }, + "product": { + "type": "string", + "description": "Specifies the product of the image from the marketplace. This is the same value as Offer under the imageReference element." + } + }, + "required": [ + "publisher", + "name", + "product" + ], + "description": "Used for establishing the purchase context of any 3rd Party artifact through MarketPlace." + }, + "OSDiskImage": { + "properties": { + "operatingSystem": { + "type": "string", + "description": "The operating system of the osDiskImage.", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": false + } + } + }, + "required": [ + "operatingSystem" + ], + "description": "Contains the os disk image information." + }, + "DataDiskImage": { + "properties": { + "lun": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "Specifies the logical unit number of the data disk. This value is used to identify data disks within the VM and therefore must be unique for each data disk attached to a VM." + } + }, + "description": "Contains the data disk images information." + }, + "AutomaticOSUpgradeProperties": { + "properties": { + "automaticOSUpgradeSupported": { + "type": "boolean", + "description": "Specifies whether automatic OS upgrade is supported on the image." + } + }, + "required": [ + "automaticOSUpgradeSupported" + ], + "description": "Describes automatic OS upgrade properties on the image." + }, + "VirtualMachineImageFeature": { + "properties": { + "name": { + "type": "string", + "description": "The name of the feature." + }, + "value": { + "type": "string", + "description": "The corresponding value for the feature." + } + }, + "description": "Specifies additional capabilities supported by the image" + }, + "VirtualMachineImageProperties": { + "properties": { + "plan": { + "$ref": "#/definitions/PurchasePlan" + }, + "osDiskImage": { + "$ref": "#/definitions/OSDiskImage" + }, + "dataDiskImages": { + "type": "array", + "items": { + "$ref": "#/definitions/DataDiskImage" + } + }, + "automaticOSUpgradeProperties": { + "$ref": "#/definitions/AutomaticOSUpgradeProperties" + }, + "hyperVGeneration": { + "$ref": "#/definitions/HyperVGenerationType" + }, + "disallowed": { + "$ref": "#/definitions/DisallowedConfiguration", + "description": "Specifies disallowed configuration for the VirtualMachine created from the image" + }, + "features": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineImageFeature" + } + } + }, + "description": "Describes the properties of a Virtual Machine Image." + }, + "VirtualMachineImage": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineImageProperties" + } + }, + "required": [ + "name", + "location" + ], + "allOf": [ + { + "$ref": "#/definitions/VirtualMachineImageResource" + } + ], + "description": "Describes a Virtual Machine Image." + }, + "UsageName": { + "properties": { + "value": { + "type": "string", + "description": "The name of the resource." + }, + "localizedValue": { + "type": "string", + "description": "The localized name of the resource." + } + }, + "description": "The Usage Names." + }, + "Usage": { + "properties": { + "unit": { + "type": "string", + "description": "An enum describing the unit of usage measurement.", + "enum": [ + "Count" + ], + "x-ms-enum": { + "name": "UsageUnit", + "modelAsString": false + } + }, + "currentValue": { + "type": "integer", + "format": "int32", + "description": "The current usage of the resource." + }, + "limit": { + "type": "integer", + "format": "int64", + "description": "The maximum permitted usage of the resource." + }, + "name": { + "$ref": "#/definitions/UsageName", + "description": "The name of the type of usage." + } + }, + "required": [ + "unit", + "currentValue", + "limit", + "name" + ], + "description": "Describes Compute Resource Usage." + }, + "ListUsagesResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Usage" + }, + "description": "The list of compute resource usages." + }, + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of compute resource usage information. Call ListNext() with this to fetch the next page of compute resource usage information." + } + }, + "required": [ + "value" + ], + "description": "The List Usages operation response." + }, + "VirtualMachineReimageParameters": { + "properties": { + "tempDisk": { + "type": "boolean", + "description": "Specifies whether to reimage temp disk. Default value: false. Note: This temp disk reimage parameter is only supported for VM/VMSS with Ephemeral OS disk." + } + }, + "description": "Parameters for Reimaging Virtual Machine. NOTE: Virtual Machine OS disk will always be reimaged" + }, + "VirtualMachineCaptureParameters": { + "properties": { + "vhdPrefix": { + "type": "string", + "description": "The captured virtual hard disk's name prefix." + }, + "destinationContainerName": { + "type": "string", + "description": "The destination container name." + }, + "overwriteVhds": { + "type": "boolean", + "description": "Specifies whether to overwrite the destination virtual hard disk, in case of conflict." + } + }, + "required": [ + "vhdPrefix", + "destinationContainerName", + "overwriteVhds" + ], + "description": "Capture Virtual Machine parameters." + }, + "VirtualMachineCaptureResult": { + "properties": { + "$schema": { + "readOnly": true, + "type": "string", + "description": "the schema of the captured virtual machine" + }, + "contentVersion": { + "readOnly": true, + "type": "string", + "description": "the version of the content" + }, + "parameters": { + "readOnly": true, + "type": "object", + "description": "parameters of the captured virtual machine" + }, + "resources": { + "readOnly": true, + "type": "array", + "items": { + "type": "object", + "description": "resource item" + }, + "description": "a list of resource items of the captured virtual machine" + } + }, + "allOf": [ + { + "$ref": "#/definitions/SubResource" + } + ], + "description": "Output of virtual machine capture operation." + }, + "Plan": { + "properties": { + "name": { + "type": "string", + "description": "The plan ID." + }, + "publisher": { + "type": "string", + "description": "The publisher ID." + }, + "product": { + "type": "string", + "description": "Specifies the product of the image from the marketplace. This is the same value as Offer under the imageReference element." + }, + "promotionCode": { + "type": "string", + "description": "The promotion code." + } + }, + "description": "Specifies information about the marketplace image used to create the virtual machine. This element is only used for marketplace images. Before you can use a marketplace image from an API, you must enable the image for programmatic use. In the Azure portal, find the marketplace image that you want to use and then click **Want to deploy programmatically, Get Started ->**. Enter any required information and then click **Save**." + }, + "HardwareProfile": { + "properties": { + "vmSize": { + "type": "string", + "description": "Specifies the size of the virtual machine.

The enum data type is currently deprecated and will be removed by December 23rd 2023.

Recommended way to get the list of available sizes is using these APIs:

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

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

[List all available virtual machine sizes for resizing](https://docs.microsoft.com/rest/api/compute/virtualmachines/listavailablesizes). For more information about virtual machine sizes, see [Sizes for virtual machines](https://docs.microsoft.com/azure/virtual-machines/sizes).

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

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

Possible values are:

**None**

**ReadOnly**

**ReadWrite**

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

Possible values are:

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

**FromImage** \\u2013 This value is used when you are using an image to create the virtual machine. If you are using a platform image, you also use the imageReference element described above. If you are using a marketplace image, you also use the plan element previously described.", + "enum": [ + "FromImage", + "Empty", + "Attach" + ], + "x-ms-enum": { + "name": "DiskCreateOptionTypes", + "modelAsString": true + } + }, + "DetachOption": { + "type": "string", + "description": "Specifies the detach behavior to be used while detaching a disk or which is already in the process of detachment from the virtual machine. Supported values: **ForceDetach**.

detachOption: **ForceDetach** is applicable only for managed data disks. If a previous detachment attempt of the data disk did not complete due to an unexpected failure from the virtual machine and the disk is still not released then use force-detach as a last resort option to detach the disk forcibly from the VM. All writes might not have been flushed when using this detach behavior.

This feature is still in preview mode and is not supported for VirtualMachineScaleSet. To force-detach a data disk update toBeDetached to 'true' along with setting detachOption: 'ForceDetach'.", + "enum": [ + "ForceDetach" + ], + "x-ms-enum": { + "name": "DiskDetachOptionTypes", + "modelAsString": true + } + }, + "DeleteOption": { + "type": "string", + "description": "Specifies the behavior of the managed disk when the VM gets deleted i.e whether the managed disk is deleted or detached. Supported values:

**Delete** If this value is used, the managed disk is deleted when VM gets deleted.

**Detach** If this value is used, the managed disk is retained after VM gets deleted.

Minimum api-version: 2021-03-01", + "enum": [ + "Delete", + "Detach" + ], + "x-ms-enum": { + "name": "DiskDeleteOptionTypes", + "modelAsString": true + } + }, + "StorageAccountType": { + "type": "string", + "description": "Specifies the storage account type for the managed disk. Managed OS disk storage account type can only be set when you create the scale set. NOTE: UltraSSD_LRS can only be used with data disks. It cannot be used with OS Disk. Standard_LRS uses Standard HDD. StandardSSD_LRS uses Standard SSD. Premium_LRS uses Premium SSD. UltraSSD_LRS uses Ultra disk. Premium_ZRS uses Premium SSD zone redundant storage. StandardSSD_ZRS uses Standard SSD zone redundant storage. For more information regarding disks supported for Windows Virtual Machines, refer to https://docs.microsoft.com/azure/virtual-machines/windows/disks-types and, for Linux Virtual Machines, refer to https://docs.microsoft.com/azure/virtual-machines/linux/disks-types", + "enum": [ + "Standard_LRS", + "Premium_LRS", + "StandardSSD_LRS", + "UltraSSD_LRS", + "Premium_ZRS", + "StandardSSD_ZRS" + ], + "x-ms-enum": { + "name": "StorageAccountTypes", + "modelAsString": true + } + }, + "DiffDiskOption": { + "type": "string", + "description": "Specifies the ephemeral disk option for operating system disk.", + "enum": [ + "Local" + ], + "x-ms-enum": { + "name": "DiffDiskOptions", + "modelAsString": true + } + }, + "DiffDiskPlacement": { + "type": "string", + "description": "Specifies the ephemeral disk placement for operating system disk. This property can be used by user in the request to choose the location i.e, cache disk or resource disk space for Ephemeral OS disk provisioning. For more information on Ephemeral OS disk size requirements, please refer Ephemeral OS disk size requirements for Windows VM at https://docs.microsoft.com/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements and Linux VM at https://docs.microsoft.com/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements", + "enum": [ + "CacheDisk", + "ResourceDisk" + ], + "x-ms-enum": { + "name": "DiffDiskPlacement", + "modelAsString": true + } + }, + "DiffDiskSettings": { + "properties": { + "option": { + "$ref": "#/definitions/DiffDiskOption", + "description": "Specifies the ephemeral disk settings for operating system disk." + }, + "placement": { + "$ref": "#/definitions/DiffDiskPlacement", + "description": "Specifies the ephemeral disk placement for operating system disk.

Possible values are:

**CacheDisk**

**ResourceDisk**

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

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

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

Possible values are:

**Windows**

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

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

Possible values are:

**None**

**ReadOnly**

**ReadWrite**

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

Possible values are:

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

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

This value cannot be larger than 1023 GB" + }, + "managedDisk": { + "description": "The managed disk parameters.", + "$ref": "#/definitions/ManagedDiskParameters" + }, + "deleteOption": { + "$ref": "#/definitions/DeleteOption", + "description": "Specifies whether OS Disk should be deleted or detached upon VM deletion.

Possible values:

**Delete** If this value is used, the OS disk is deleted when VM is deleted.

**Detach** If this value is used, the os disk is retained after VM is deleted.

The default value is set to **detach**. For an ephemeral OS Disk, the default value is set to **Delete**. User cannot change the delete option for ephemeral OS Disk." + } + }, + "required": [ + "createOption" + ], + "description": "Specifies information about the operating system disk used by the virtual machine.

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

Possible values are:

**None**

**ReadOnly**

**ReadWrite**

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

Possible values are:

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

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

This value cannot be larger than 1023 GB" + }, + "managedDisk": { + "description": "The managed disk parameters.", + "$ref": "#/definitions/ManagedDiskParameters" + }, + "toBeDetached": { + "type": "boolean", + "description": "Specifies whether the data disk is in process of detachment from the VirtualMachine/VirtualMachineScaleset" + }, + "diskIOPSReadWrite": { + "type": "integer", + "readOnly": true, + "format": "int64", + "description": "Specifies the Read-Write IOPS for the managed disk when StorageAccountType is UltraSSD_LRS. Returned only for VirtualMachine ScaleSet VM disks. Can be updated only via updates to the VirtualMachine Scale Set." + }, + "diskMBpsReadWrite": { + "type": "integer", + "readOnly": true, + "format": "int64", + "description": "Specifies the bandwidth in MB per second for the managed disk when StorageAccountType is UltraSSD_LRS. Returned only for VirtualMachine ScaleSet VM disks. Can be updated only via updates to the VirtualMachine Scale Set." + }, + "detachOption": { + "$ref": "#/definitions/DetachOption", + "description": "Specifies the detach behavior to be used while detaching a disk or which is already in the process of detachment from the virtual machine. Supported values: **ForceDetach**.

detachOption: **ForceDetach** is applicable only for managed data disks. If a previous detachment attempt of the data disk did not complete due to an unexpected failure from the virtual machine and the disk is still not released then use force-detach as a last resort option to detach the disk forcibly from the VM. All writes might not have been flushed when using this detach behavior.

This feature is still in preview mode and is not supported for VirtualMachineScaleSet. To force-detach a data disk update toBeDetached to 'true' along with setting detachOption: 'ForceDetach'." + }, + "deleteOption": { + "$ref": "#/definitions/DeleteOption", + "description": "Specifies whether data disk should be deleted or detached upon VM deletion.

Possible values:

**Delete** If this value is used, the data disk is deleted when VM is deleted.

**Detach** If this value is used, the data disk is retained after VM is deleted.

The default value is set to **detach**" + } + }, + "required": [ + "lun", + "createOption" + ], + "description": "Describes a data disk." + }, + "StorageProfile": { + "properties": { + "imageReference": { + "$ref": "#/definitions/ImageReference", + "description": "Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations." + }, + "osDisk": { + "$ref": "#/definitions/OSDisk", + "description": "Specifies information about the operating system disk used by the virtual machine.

For more information about disks, see [About disks and VHDs for Azure virtual machines](https://docs.microsoft.com/azure/virtual-machines/managed-disks-overview)." + }, + "dataDisks": { + "type": "array", + "items": { + "$ref": "#/definitions/DataDisk" + }, + "description": "Specifies the parameters that are used to add a data disk to a virtual machine.

For more information about disks, see [About disks and VHDs for Azure virtual machines](https://docs.microsoft.com/azure/virtual-machines/managed-disks-overview)." + } + }, + "description": "Specifies the storage settings for the virtual machine disks." + }, + "UefiSettings": { + "properties": { + "secureBootEnabled": { + "type": "boolean", + "description": "Specifies whether secure boot should be enabled on the virtual machine.

Minimum api-version: 2020-12-01" + }, + "vTpmEnabled": { + "type": "boolean", + "description": "Specifies whether vTPM should be enabled on the virtual machine.

Minimum api-version: 2020-12-01" + } + }, + "description": "Specifies the security settings like secure boot and vTPM used while creating the virtual machine.

Minimum api-version: 2020-12-01" + }, + "SecurityProfile": { + "properties": { + "uefiSettings": { + "$ref": "#/definitions/UefiSettings", + "description": "Specifies the security settings like secure boot and vTPM used while creating the virtual machine.

Minimum api-version: 2020-12-01" + }, + "encryptionAtHost": { + "type": "boolean", + "description": "This property can be used by user in the request to enable or disable the Host Encryption for the virtual machine or virtual machine scale set. This will enable the encryption for all the disks including Resource/Temp disk at host itself.

Default: The Encryption at host will be disabled unless this property is set to true for the resource." + }, + "securityType": { + "type": "string", + "description": "Specifies the SecurityType of the virtual machine. It is set as TrustedLaunch to enable UefiSettings.

Default: UefiSettings will not be enabled unless this property is set as TrustedLaunch.", + "enum": [ + "TrustedLaunch" + ], + "x-ms-enum": { + "name": "SecurityTypes", + "modelAsString": false + } + } + }, + "description": "Specifies the Security profile settings for the virtual machine or virtual machine scale set." + }, + "AdditionalCapabilities": { + "properties": { + "ultraSSDEnabled": { + "type": "boolean", + "description": "The flag that enables or disables a capability to have one or more managed data disks with UltraSSD_LRS storage account type on the VM or VMSS. Managed disks with storage account type UltraSSD_LRS can be added to a virtual machine or virtual machine scale set only if this property is enabled." + } + }, + "description": "Enables or disables a capability on the virtual machine or virtual machine scale set." + }, + "AdditionalUnattendContent": { + "properties": { + "passName": { + "type": "string", + "description": "The pass name. Currently, the only allowable value is OobeSystem.", + "enum": [ + "OobeSystem" + ], + "x-ms-enum": { + "name": "PassNames", + "modelAsString": false + } + }, + "componentName": { + "type": "string", + "description": "The component name. Currently, the only allowable value is Microsoft-Windows-Shell-Setup.", + "enum": [ + "Microsoft-Windows-Shell-Setup" + ], + "x-ms-enum": { + "name": "ComponentNames", + "modelAsString": false + } + }, + "settingName": { + "type": "string", + "description": "Specifies the name of the setting to which the content applies. Possible values are: FirstLogonCommands and AutoLogon.", + "enum": [ + "AutoLogon", + "FirstLogonCommands" + ], + "x-ms-enum": { + "name": "SettingNames", + "modelAsString": false + } + }, + "content": { + "type": "string", + "description": "Specifies the XML formatted content that is added to the unattend.xml file for the specified path and component. The XML must be less than 4KB and must include the root element for the setting or feature that is being inserted." + } + }, + "description": "Specifies additional XML formatted information that can be included in the Unattend.xml file, which is used by Windows Setup. Contents are defined by setting name, component name, and the pass in which the content is applied." + }, + "WinRMListener": { + "properties": { + "protocol": { + "type": "string", + "description": "Specifies the protocol of WinRM listener.

Possible values are:
**http**

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

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

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

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

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

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

When this property is not specified in the request body, default behavior is to set it to true. This will ensure that VM Agent is installed on the VM so that extensions can be added to the VM later." + }, + "patchSettings": { + "$ref": "#/definitions/LinuxPatchSettings", + "description": "[Preview Feature] Specifies settings related to VM Guest Patching on Linux." + } + }, + "description": "Specifies the Linux operating system settings on the virtual machine.

For a list of supported Linux distributions, see [Linux on Azure-Endorsed Distributions](https://docs.microsoft.com/azure/virtual-machines/linux/endorsed-distros)." + }, + "VaultCertificate": { + "properties": { + "certificateUrl": { + "type": "string", + "description": "This is the URL of a certificate that has been uploaded to Key Vault as a secret. For adding a secret to the Key Vault, see [Add a key or secret to the key vault](https://docs.microsoft.com/azure/key-vault/key-vault-get-started/#add). In this case, your certificate needs to be It is the Base64 encoding of the following JSON Object which is encoded in UTF-8:

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

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

This name cannot be updated after the VM is created.

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

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

For naming conventions and restrictions see [Azure infrastructure services implementation guidelines](https://docs.microsoft.com/azure/azure-resource-manager/management/resource-name-rules)." + }, + "adminUsername": { + "type": "string", + "description": "Specifies the name of the administrator account.

This property cannot be updated after the VM is created.

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

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

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

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

**Max-length (Windows):** 20 characters." + }, + "adminPassword": { + "type": "string", + "description": "Specifies the password of the administrator account.

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

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

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

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

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

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

For resetting the password, see [How to reset the Remote Desktop service or its login password in a Windows VM](https://docs.microsoft.com/troubleshoot/azure/virtual-machines/reset-rdp)

For resetting root password, see [Manage users, SSH, and check or repair disks on Azure Linux VMs using the VMAccess Extension](https://docs.microsoft.com/troubleshoot/azure/virtual-machines/troubleshoot-ssh-connection)" + }, + "customData": { + "type": "string", + "description": "Specifies a base-64 encoded string of custom data. The base-64 encoded string is decoded to a binary array that is saved as a file on the Virtual Machine. The maximum length of the binary array is 65535 bytes.

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

This property cannot be updated after the VM is created.

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

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

For a list of supported Linux distributions, see [Linux on Azure-Endorsed Distributions](https://docs.microsoft.com/azure/virtual-machines/linux/endorsed-distros)." + }, + "secrets": { + "type": "array", + "items": { + "$ref": "#/definitions/VaultSecretGroup" + }, + "description": "Specifies set of certificates that should be installed onto the virtual machine." + }, + "allowExtensionOperations": { + "type": "boolean", + "description": "Specifies whether extension operations should be allowed on the virtual machine.

This may only be set to False when no extensions are present on the virtual machine." + }, + "requireGuestProvisionSignal": { + "type": "boolean", + "description": "Specifies whether the guest provision signal is required to infer provision success of the virtual machine. **Note: This property is for private testing only, and all customers must not set the property to false.**" + } + }, + "description": "Specifies the operating system settings for the virtual machine. Some of the settings cannot be changed once VM is provisioned." + }, + "AutomaticRepairsPolicy": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Specifies whether automatic repairs should be enabled on the virtual machine scale set. The default value is false." + }, + "gracePeriod": { + "type": "string", + "description": "The amount of time for which automatic repairs are suspended due to a state change on VM. The grace time starts after the state change has completed. This helps avoid premature or accidental repairs. The time duration should be specified in ISO 8601 format. The minimum allowed grace period is 30 minutes (PT30M), which is also the default value. The maximum allowed grace period is 90 minutes (PT90M)." + } + }, + "description": "Specifies the configuration parameters for automatic repairs on the virtual machine scale set." + }, + "NetworkInterfaceReferenceProperties": { + "properties": { + "primary": { + "type": "boolean", + "description": "Specifies the primary network interface in case the virtual machine has more than 1 network interface." + }, + "deleteOption": { + "type": "string", + "description": "Specify what happens to the network interface when the VM is deleted", + "enum": [ + "Delete", + "Detach" + ], + "x-ms-enum": { + "name": "DeleteOptions", + "modelAsString": true + } + } + }, + "description": "Describes a network interface reference properties." + }, + "NetworkInterfaceReference": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkInterfaceReferenceProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/SubResource" + } + ], + "description": "Describes a network interface reference." + }, + "VirtualMachineIpTag": { + "properties": { + "ipTagType": { + "type": "string", + "description": "IP tag type. Example: FirstPartyUsage." + }, + "tag": { + "type": "string", + "description": "IP tag associated with the public IP. Example: SQL, Storage etc." + } + }, + "description": "Contains the IP tag associated with the public IP address." + }, + "VirtualMachinePublicIPAddressDnsSettingsConfiguration": { + "properties": { + "domainNameLabel": { + "type": "string", + "description": "The Domain name label prefix of the PublicIPAddress resources that will be created. The generated name label is the concatenation of the domain name label and vm network profile unique ID." + } + }, + "required": [ + "domainNameLabel" + ], + "description": "Describes a virtual machines network configuration's DNS settings." + }, + "VirtualMachinePublicIPAddressConfigurationProperties": { + "properties": { + "idleTimeoutInMinutes": { + "type": "integer", + "format": "int32", + "description": "The idle timeout of the public IP address." + }, + "deleteOption": { + "type": "string", + "description": "Specify what happens to the public IP address when the VM is deleted", + "enum": [ + "Delete", + "Detach" + ], + "x-ms-enum": { + "name": "DeleteOptions", + "modelAsString": true + } + }, + "dnsSettings": { + "$ref": "#/definitions/VirtualMachinePublicIPAddressDnsSettingsConfiguration", + "description": "The dns settings to be applied on the publicIP addresses ." + }, + "ipTags": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineIpTag" + }, + "description": "The list of IP tags associated with the public IP address." + }, + "publicIPPrefix": { + "$ref": "#/definitions/SubResource", + "description": "The PublicIPPrefix from which to allocate publicIP addresses." + }, + "publicIPAddressVersion": { + "type": "string", + "description": "Available from Api-Version 2019-07-01 onwards, it represents whether the specific ipconfiguration is IPv4 or IPv6. Default is taken as IPv4. Possible values are: 'IPv4' and 'IPv6'.", + "enum": [ + "IPv4", + "IPv6" + ], + "x-ms-enum": { + "name": "IPVersions", + "modelAsString": true + } + }, + "publicIPAllocationMethod": { + "type": "string", + "description": "Specify the public IP allocation type", + "enum": [ + "Dynamic", + "Static" + ], + "x-ms-enum": { + "name": "PublicIPAllocationMethod", + "modelAsString": true + } + } + }, + "description": "Describes a virtual machines IP Configuration's PublicIPAddress configuration" + }, + "PublicIPAddressSku": { + "properties": { + "publicIPAddressSkuName": { + "type": "string", + "description": "Specify public IP sku name", + "enum": [ + "Basic", + "Standard" + ], + "x-ms-enum": { + "name": "PublicIPAddressSkuName", + "modelAsString": true + } + }, + "publicIPAddressSkuTier": { + "type": "string", + "description": "Specify public IP sku tier", + "enum": [ + "Regional", + "Global" + ], + "x-ms-enum": { + "name": "PublicIPAddressSkuTier", + "modelAsString": true + } + } + }, + "required": [ + "publicIPAddressSkuName" + ], + "description": "Describes the public IP Sku" + }, + "VirtualMachinePublicIPAddressConfiguration": { + "properties": { + "name": { + "type": "string", + "description": "The publicIP address configuration name." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachinePublicIPAddressConfigurationProperties" + }, + "sku": { + "$ref": "#/definitions/PublicIPAddressSku" + } + }, + "required": [ + "name" + ], + "description": "Describes a virtual machines IP Configuration's PublicIPAddress configuration" + }, + "VirtualMachineNetworkInterfaceIPConfigurationProperties": { + "properties": { + "subnet": { + "$ref": "#/definitions/SubResource", + "description": "Specifies the identifier of the subnet." + }, + "primary": { + "type": "boolean", + "description": "Specifies the primary network interface in case the virtual machine has more than 1 network interface." + }, + "publicIPAddressConfiguration": { + "$ref": "#/definitions/VirtualMachinePublicIPAddressConfiguration", + "description": "The publicIPAddressConfiguration." + }, + "privateIPAddressVersion": { + "type": "string", + "description": "Available from Api-Version 2017-03-30 onwards, it represents whether the specific ipconfiguration is IPv4 or IPv6. Default is taken as IPv4. Possible values are: 'IPv4' and 'IPv6'.", + "enum": [ + "IPv4", + "IPv6" + ], + "x-ms-enum": { + "name": "IPVersions", + "modelAsString": true + } + }, + "applicationSecurityGroups": { + "type": "array", + "items": { + "$ref": "#/definitions/SubResource" + }, + "description": "Specifies an array of references to application security group." + }, + "applicationGatewayBackendAddressPools": { + "type": "array", + "items": { + "$ref": "#/definitions/SubResource" + }, + "description": "Specifies an array of references to backend address pools of application gateways. A virtual machine can reference backend address pools of multiple application gateways. Multiple virtual machines cannot use the same application gateway." + }, + "loadBalancerBackendAddressPools": { + "type": "array", + "items": { + "$ref": "#/definitions/SubResource" + }, + "description": "Specifies an array of references to backend address pools of load balancers. A virtual machine can reference backend address pools of one public and one internal load balancer. [Multiple virtual machines cannot use the same basic sku load balancer]." + } + }, + "description": "Describes a virtual machine network interface IP configuration properties." + }, + "VirtualMachineNetworkInterfaceIPConfiguration": { + "properties": { + "name": { + "type": "string", + "description": "The IP configuration name." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineNetworkInterfaceIPConfigurationProperties" + } + }, + "required": [ + "name" + ], + "description": "Describes a virtual machine network profile's IP configuration." + }, + "VirtualMachineNetworkInterfaceDnsSettingsConfiguration": { + "properties": { + "dnsServers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of DNS servers IP addresses" + } + }, + "description": "Describes a virtual machines network configuration's DNS settings." + }, + "VirtualMachineNetworkInterfaceConfigurationProperties": { + "properties": { + "primary": { + "type": "boolean", + "description": "Specifies the primary network interface in case the virtual machine has more than 1 network interface." + }, + "deleteOption": { + "type": "string", + "description": "Specify what happens to the network interface when the VM is deleted", + "enum": [ + "Delete", + "Detach" + ], + "x-ms-enum": { + "name": "DeleteOptions", + "modelAsString": true + } + }, + "enableAcceleratedNetworking": { + "type": "boolean", + "description": "Specifies whether the network interface is accelerated networking-enabled." + }, + "enableFpga": { + "type": "boolean", + "description": "Specifies whether the network interface is FPGA networking-enabled." + }, + "enableIPForwarding": { + "type": "boolean", + "description": "Whether IP forwarding enabled on this NIC." + }, + "networkSecurityGroup": { + "$ref": "#/definitions/SubResource", + "description": "The network security group." + }, + "dnsSettings": { + "$ref": "#/definitions/VirtualMachineNetworkInterfaceDnsSettingsConfiguration", + "description": "The dns settings to be applied on the network interfaces." + }, + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineNetworkInterfaceIPConfiguration" + }, + "description": "Specifies the IP configurations of the network interface." + }, + "dscpConfiguration": { + "$ref": "#/definitions/SubResource" + } + }, + "required": [ + "ipConfigurations" + ], + "description": "Describes a virtual machine network profile's IP configuration." + }, + "VirtualMachineNetworkInterfaceConfiguration": { + "properties": { + "name": { + "type": "string", + "description": "The network interface configuration name." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineNetworkInterfaceConfigurationProperties" + } + }, + "required": [ + "name" + ], + "description": "Describes a virtual machine network interface configurations." + }, + "NetworkProfile": { + "properties": { + "networkInterfaces": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkInterfaceReference" + }, + "description": "Specifies the list of resource Ids for the network interfaces associated with the virtual machine." + }, + "networkApiVersion": { + "type": "string", + "description": "specifies the Microsoft.Network API version used when creating networking resources in the Network Interface Configurations", + "enum": [ + "2020-11-01" + ], + "x-ms-enum": { + "name": "NetworkApiVersion", + "modelAsString": true + } + }, + "networkInterfaceConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineNetworkInterfaceConfiguration" + }, + "description": "Specifies the networking configurations that will be used to create the virtual machine networking resources." + } + }, + "description": "Specifies the network interfaces or the networking configuration of the virtual machine." + }, + "BootDiagnostics": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Whether boot diagnostics should be enabled on the Virtual Machine." + }, + "storageUri": { + "type": "string", + "description": "Uri of the storage account to use for placing the console output and screenshot.

If storageUri is not specified while enabling boot diagnostics, managed storage will be used." + } + }, + "description": "Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status.

You can easily view the output of your console log.

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

You can easily view the output of your console log.

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

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

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

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

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

Possible values are:

- Any decimal value greater than zero. Example: 0.01538

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

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

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

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

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

NOTE: This will **not** be set if boot diagnostics is currently enabled with managed storage." + }, + "serialConsoleLogBlobUri": { + "readOnly": true, + "type": "string", + "description": "The serial console log blob Uri.

NOTE: This will **not** be set if boot diagnostics is currently enabled with managed storage." + }, + "status": { + "readOnly": true, + "$ref": "#/definitions/InstanceViewStatus", + "description": "The boot diagnostics status information for the VM.

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

You can easily view the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor." + }, + "assignedHost": { + "type": "string", + "readOnly": true, + "description": "Resource id of the dedicated host, on which the virtual machine is allocated through automatic placement, when the virtual machine is associated with a dedicated host group that has automatic placement enabled.

Minimum api-version: 2020-06-01." + }, + "statuses": { + "type": "array", + "items": { + "$ref": "#/definitions/InstanceViewStatus" + }, + "description": "The resource status information." + }, + "patchStatus": { + "$ref": "#/definitions/VirtualMachinePatchStatus", + "description": "[Preview Feature] The status of virtual machine patch operations." + } + }, + "description": "The instance view of a virtual machine." + }, + "VirtualMachineProperties": { + "properties": { + "hardwareProfile": { + "$ref": "#/definitions/HardwareProfile", + "description": "Specifies the hardware settings for the virtual machine." + }, + "storageProfile": { + "$ref": "#/definitions/StorageProfile", + "description": "Specifies the storage settings for the virtual machine disks." + }, + "additionalCapabilities": { + "$ref": "#/definitions/AdditionalCapabilities", + "description": "Specifies additional capabilities enabled or disabled on the virtual machine." + }, + "osProfile": { + "$ref": "#/definitions/OSProfile", + "description": "Specifies the operating system settings used while creating the virtual machine. Some of the settings cannot be changed once VM is provisioned." + }, + "networkProfile": { + "$ref": "#/definitions/NetworkProfile", + "description": "Specifies the network interfaces of the virtual machine." + }, + "securityProfile": { + "$ref": "#/definitions/SecurityProfile", + "description": "Specifies the Security related profile settings for the virtual machine." + }, + "diagnosticsProfile": { + "$ref": "#/definitions/DiagnosticsProfile", + "description": "Specifies the boot diagnostic settings state.

Minimum api-version: 2015-06-15." + }, + "availabilitySet": { + "$ref": "#/definitions/SubResource", + "description": "Specifies information about the availability set that the virtual machine should be assigned to. Virtual machines specified in the same availability set are allocated to different nodes to maximize availability. For more information about availability sets, see [Availability sets overview](https://docs.microsoft.com/azure/virtual-machines/availability-set-overview).

For more information on Azure planned maintenance, see [Maintenance and updates for Virtual Machines in Azure](https://docs.microsoft.com/azure/virtual-machines/maintenance-and-updates)

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

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

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

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

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

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

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

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

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

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

Minimum api-version: 2020-06-01.

NOTE: User cannot specify both host and hostGroup properties." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state, which only appears in the response." + }, + "instanceView": { + "$ref": "#/definitions/VirtualMachineInstanceView", + "readOnly": true, + "description": "The virtual machine instance view." + }, + "licenseType": { + "type": "string", + "description": "Specifies that the image or disk that is being used was licensed on-premises.

Possible values for Windows Server operating system are:

Windows_Client

Windows_Server

Possible values for Linux Server operating system are:

RHEL_BYOS (for RHEL)

SLES_BYOS (for SUSE)

For more information, see [Azure Hybrid Use Benefit for Windows Server](https://docs.microsoft.com/azure/virtual-machines/windows/hybrid-use-benefit-licensing)

[Azure Hybrid Use Benefit for Linux Server](https://docs.microsoft.com/azure/virtual-machines/linux/azure-hybrid-benefit-linux)

Minimum api-version: 2015-06-15" + }, + "vmId": { + "readOnly": true, + "type": "string", + "description": "Specifies the VM unique ID which is a 128-bits identifier that is encoded and stored in all Azure IaaS VMs SMBIOS and can be read using platform BIOS commands." + }, + "extensionsTimeBudget": { + "type": "string", + "description": "Specifies the time alloted for all extensions to start. The time duration should be between 15 minutes and 120 minutes (inclusive) and should be specified in ISO 8601 format. The default value is 90 minutes (PT1H30M).

Minimum api-version: 2020-06-01" + }, + "platformFaultDomain": { + "type": "integer", + "format": "int32", + "description": "Specifies the scale set logical fault domain into which the Virtual Machine will be created. By default, the Virtual Machine will by automatically assigned to a fault domain that best maintains balance across available fault domains.
  • This is applicable only if the 'virtualMachineScaleSet' property of this Virtual Machine is set.
  • The Virtual Machine Scale Set that is referenced, must have 'platformFaultDomainCount' > 1.
  • This property cannot be updated once the Virtual Machine is created.
  • Fault domain assignment can be viewed in the Virtual Machine Instance View.

    Minimum api‐version: 2020‐12‐01" + }, + "scheduledEventsProfile": { + "$ref": "#/definitions/ScheduledEventsProfile", + "description": "Specifies Scheduled Event related configurations." + }, + "userData": { + "type": "string", + "description": "UserData for the VM, which must be base-64 encoded. Customer should not pass any secrets in here.

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

    Possible Values:

    **Standard**

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

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

    Possible values are:

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

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

    Possible values are:

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

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

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

    " + } + }, + "description": "Describes a scale-in policy for a virtual machine scale set." + }, + "OrchestrationMode": { + "type": "string", + "description": "Specifies the orchestration mode for the virtual machine scale set.", + "enum": [ + "Uniform", + "Flexible" + ], + "x-ms-enum": { + "name": "OrchestrationMode", + "modelAsString": true + } + }, + "ImageOSDisk": { + "properties": { + "osType": { + "type": "string", + "description": "This property allows you to specify the type of the OS that is included in the disk if creating a VM from a custom image.

    Possible values are:

    **Windows**

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

    Possible values are:

    **None**

    **ReadOnly**

    **ReadWrite**

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

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

    For more information about disks, see [About disks and VHDs for Azure virtual machines](https://docs.microsoft.com/azure/virtual-machines/managed-disks-overview)." + }, + "dataDisks": { + "type": "array", + "items": { + "$ref": "#/definitions/ImageDataDisk" + }, + "description": "Specifies the parameters that are used to add a data disk to a virtual machine.

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

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

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

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

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

    **Max-length (Windows):** 20 characters" + }, + "adminPassword": { + "type": "string", + "description": "Specifies the password of the administrator account.

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

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

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

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

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

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

    For resetting the password, see [How to reset the Remote Desktop service or its login password in a Windows VM](https://docs.microsoft.com/troubleshoot/azure/virtual-machines/reset-rdp)

    For resetting root password, see [Manage users, SSH, and check or repair disks on Azure Linux VMs using the VMAccess Extension](https://docs.microsoft.com/troubleshoot/azure/virtual-machines/troubleshoot-ssh-connection)" + }, + "customData": { + "type": "string", + "description": "Specifies a base-64 encoded string of custom data. The base-64 encoded string is decoded to a binary array that is saved as a file on the Virtual Machine. The maximum length of the binary array is 65535 bytes.

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

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

    Possible values are:

    **None**

    **ReadOnly**

    **ReadWrite**

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

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

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

    Possible values are:

    **Windows**

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

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

    Possible values are:

    **None**

    **ReadOnly**

    **ReadWrite**

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

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

    For more information about disks, see [About disks and VHDs for Azure virtual machines](https://docs.microsoft.com/azure/virtual-machines/managed-disks-overview)." + }, + "dataDisks": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineScaleSetDataDisk" + }, + "description": "Specifies the parameters that are used to add data disks to the virtual machines in the scale set.

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

    Minimum api-version: 2020-06-01" + } + }, + "description": "Describes a virtual machine scale set extension profile." + }, + "VirtualMachineScaleSetVMProfile": { + "properties": { + "osProfile": { + "$ref": "#/definitions/VirtualMachineScaleSetOSProfile", + "description": "Specifies the operating system settings for the virtual machines in the scale set." + }, + "storageProfile": { + "$ref": "#/definitions/VirtualMachineScaleSetStorageProfile", + "description": "Specifies the storage settings for the virtual machine disks." + }, + "networkProfile": { + "$ref": "#/definitions/VirtualMachineScaleSetNetworkProfile", + "description": "Specifies properties of the network interfaces of the virtual machines in the scale set." + }, + "securityProfile": { + "$ref": "#/definitions/SecurityProfile", + "description": "Specifies the Security related profile settings for the virtual machines in the scale set." + }, + "diagnosticsProfile": { + "$ref": "#/definitions/DiagnosticsProfile", + "description": "Specifies the boot diagnostic settings state.

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

    Possible values for Windows Server operating system are:

    Windows_Client

    Windows_Server

    Possible values for Linux Server operating system are:

    RHEL_BYOS (for RHEL)

    SLES_BYOS (for SUSE)

    For more information, see [Azure Hybrid Use Benefit for Windows Server](https://docs.microsoft.com/azure/virtual-machines/windows/hybrid-use-benefit-licensing)

    [Azure Hybrid Use Benefit for Linux Server](https://docs.microsoft.com/azure/virtual-machines/linux/azure-hybrid-benefit-linux)

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

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

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

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

    Minimum api-version: 2019-03-01." + }, + "scheduledEventsProfile": { + "$ref": "#/definitions/ScheduledEventsProfile", + "description": "Specifies Scheduled Event related configurations." + }, + "userData": { + "type": "string", + "description": "UserData for the virtual machines in the scale set, which must be base-64 encoded. Customer should not pass any secrets in here.

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

    Minimum api-version: 2019-03-01." + }, + "scheduledEventsProfile": { + "$ref": "#/definitions/ScheduledEventsProfile", + "description": "Specifies Scheduled Event related configurations." + }, + "userData": { + "type": "string", + "description": "UserData for the VM, which must be base-64 encoded. Customer should not pass any secrets in here.

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

    Minimum api-version: 2018-04-01." + }, + "hostGroup": { + "$ref": "#/definitions/SubResource", + "description": "Specifies information about the dedicated host group that the virtual machine scale set resides in.

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

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

    Minimum api-version: 2015-06-15." + }, + "availabilitySet": { + "$ref": "#/definitions/SubResource", + "description": "Specifies information about the availability set that the virtual machine should be assigned to. Virtual machines specified in the same availability set are allocated to different nodes to maximize availability. For more information about availability sets, see [Availability sets overview](https://docs.microsoft.com/azure/virtual-machines/availability-set-overview).

    For more information on Azure planned maintenance, see [Maintenance and updates for Virtual Machines in Azure](https://docs.microsoft.com/azure/virtual-machines/maintenance-and-updates)

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

    Possible values for Windows Server operating system are:

    Windows_Client

    Windows_Server

    Possible values for Linux Server operating system are:

    RHEL_BYOS (for RHEL)

    SLES_BYOS (for SUSE)

    For more information, see [Azure Hybrid Use Benefit for Windows Server](https://docs.microsoft.com/azure/virtual-machines/windows/hybrid-use-benefit-licensing)

    [Azure Hybrid Use Benefit for Linux Server](https://docs.microsoft.com/azure/virtual-machines/linux/azure-hybrid-benefit-linux)

    Minimum api-version: 2015-06-15" + }, + "modelDefinitionApplied": { + "readOnly": true, + "type": "string", + "description": "Specifies whether the model applied to the virtual machine is the model of the virtual machine scale set or the customized model for the virtual machine." + }, + "protectionPolicy": { + "$ref": "#/definitions/VirtualMachineScaleSetVMProtectionPolicy", + "description": "Specifies the protection policy of the virtual machine." + }, + "userData": { + "type": "string", + "description": "UserData for the VM, which must be base-64 encoded. Customer should not pass any secrets in here.

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

    You can easily view the output of your console log.

    Azure also enables you to see a screenshot of the VM from the hypervisor." + }, + "statuses": { + "type": "array", + "items": { + "$ref": "#/definitions/InstanceViewStatus" + }, + "description": "The resource status information." + }, + "assignedHost": { + "type": "string", + "readOnly": true, + "description": "Resource id of the dedicated host, on which the virtual machine is allocated through automatic placement, when the virtual machine is associated with a dedicated host group that has automatic placement enabled.

    Minimum api-version: 2020-06-01." + }, + "placementGroupId": { + "type": "string", + "description": "The placement group in which the VM is running. If the VM is deallocated it will not have a placementGroupId." + } + }, + "description": "The instance view of a virtual machine scale set VM." + }, + "VirtualMachineScaleSetVMNetworkProfileConfiguration": { + "properties": { + "networkInterfaceConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineScaleSetNetworkConfiguration" + }, + "description": "The list of network configurations." + } + }, + "description": "Describes a virtual machine scale set VM network profile." + }, + "VirtualMachineScaleSetVMProtectionPolicy": { + "properties": { + "protectFromScaleIn": { + "type": "boolean", + "description": "Indicates that the virtual machine scale set VM shouldn't be considered for deletion during a scale-in operation." + }, + "protectFromScaleSetActions": { + "type": "boolean", + "description": "Indicates that model updates or actions (including scale-in) initiated on the virtual machine scale set should not be applied to the virtual machine scale set VM." + } + }, + "description": "The protection policy of a virtual machine scale set VM." + }, + "ScheduledEventsProfile": { + "type": "object", + "properties": { + "terminateNotificationProfile": { + "$ref": "#/definitions/TerminateNotificationProfile", + "description": "Specifies Terminate Scheduled Event related configurations." + } + } + }, + "TerminateNotificationProfile": { + "type": "object", + "properties": { + "notBeforeTimeout": { + "type": "string", + "description": "Configurable length of time a Virtual Machine being deleted will have to potentially approve the Terminate Scheduled Event before the event is auto approved (timed out). The configuration must be specified in ISO 8601 format, the default value is 5 minutes (PT5M)" + }, + "enable": { + "type": "boolean", + "description": "Specifies whether the Terminate Scheduled event is enabled or disabled." + } + } + }, + "VirtualMachineHealthStatus": { + "properties": { + "status": { + "readOnly": true, + "$ref": "#/definitions/InstanceViewStatus", + "description": "The health status information for the VM." + } + }, + "description": "The health status of the VM." + }, + "VirtualMachineScaleSetVMListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineScaleSetVM" + }, + "description": "The list of virtual machine scale sets VMs." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of Virtual Machine Scale Set VMs. Call ListNext() with this to fetch the next page of VMSS VMs" + } + }, + "required": [ + "value" + ], + "description": "The List Virtual Machine Scale Set VMs operation response." + }, + "RollingUpgradeStatusInfo": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RollingUpgradeStatusInfoProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "The status of the latest virtual machine scale set rolling upgrade." + }, + "RollingUpgradeStatusInfoProperties": { + "properties": { + "policy": { + "readOnly": true, + "$ref": "#/definitions/RollingUpgradePolicy", + "description": "The rolling upgrade policies applied for this upgrade." + }, + "runningStatus": { + "readOnly": true, + "$ref": "#/definitions/RollingUpgradeRunningStatus", + "description": "Information about the current running state of the overall upgrade." + }, + "progress": { + "readOnly": true, + "$ref": "#/definitions/RollingUpgradeProgressInfo", + "description": "Information about the number of virtual machine instances in each upgrade state." + }, + "error": { + "readOnly": true, + "$ref": "#/definitions/ApiError", + "description": "Error details for this upgrade, if there are any." + } + }, + "description": "The status of the latest virtual machine scale set rolling upgrade." + }, + "RollingUpgradeRunningStatus": { + "properties": { + "code": { + "type": "string", + "readOnly": true, + "description": "Code indicating the current status of the upgrade.", + "enum": [ + "RollingForward", + "Cancelled", + "Completed", + "Faulted" + ], + "x-ms-enum": { + "name": "RollingUpgradeStatusCode", + "modelAsString": false + } + }, + "startTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "Start time of the upgrade." + }, + "lastAction": { + "type": "string", + "readOnly": true, + "description": "The last action performed on the rolling upgrade.", + "enum": [ + "Start", + "Cancel" + ], + "x-ms-enum": { + "name": "RollingUpgradeActionType", + "modelAsString": false + } + }, + "lastActionTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "Last action time of the upgrade." + } + }, + "description": "Information about the current running state of the overall upgrade." + }, + "RollingUpgradeProgressInfo": { + "properties": { + "successfulInstanceCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The number of instances that have been successfully upgraded." + }, + "failedInstanceCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The number of instances that have failed to be upgraded successfully." + }, + "inProgressInstanceCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The number of instances that are currently being upgraded." + }, + "pendingInstanceCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The number of instances that have not yet begun to be upgraded." + } + }, + "description": "Information about the number of virtual machine instances in each upgrade state." + }, + "ApiErrorBase": { + "properties": { + "code": { + "type": "string", + "description": "The error code." + }, + "target": { + "type": "string", + "description": "The target of the particular error." + }, + "message": { + "type": "string", + "description": "The error message." + } + }, + "description": "Api error base." + }, + "InnerError": { + "properties": { + "exceptiontype": { + "type": "string", + "description": "The exception type." + }, + "errordetail": { + "type": "string", + "description": "The internal error message or exception dump." + } + }, + "description": "Inner error details." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/ApiError" + } + }, + "description": "An error response from the Compute service." + }, + "ApiError": { + "properties": { + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ApiErrorBase" + }, + "description": "The Api error details" + }, + "innererror": { + "$ref": "#/definitions/InnerError", + "description": "The Api inner error" + }, + "code": { + "type": "string", + "description": "The error code." + }, + "target": { + "type": "string", + "description": "The target of the particular error." + }, + "message": { + "type": "string", + "description": "The error message." + } + }, + "description": "Api error." + }, + "ProxyResource": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource Id" + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Resource name" + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type" + } + }, + "description": "The resource model definition for an Azure Resource Manager proxy resource. It will not have tags and a location", + "x-ms-azure-resource": 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" + }, + "location": { + "type": "string", + "description": "Resource location" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "required": [ + "location" + ], + "x-ms-azure-resource": true + }, + "UpdateResource": { + "description": "The Update Resource model definition.", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + } + }, + "SubResource": { + "properties": { + "id": { + "type": "string", + "description": "Resource Id" + } + }, + "x-ms-azure-resource": true + }, + "SubResourceReadOnly": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource Id" + } + }, + "x-ms-azure-resource": true + }, + "ExtendedLocationType": { + "type": "string", + "description": "The type of extendedLocation.", + "enum": [ + "EdgeZone" + ], + "x-ms-enum": { + "name": "ExtendedLocationTypes", + "modelAsString": true + } + }, + "ExtendedLocation": { + "description": "The complex type of the extended location.", + "properties": { + "name": { + "type": "string", + "description": "The name of the extended location." + }, + "type": { + "$ref": "#/definitions/ExtendedLocationType", + "description": "The type of the extended location." + } + } + }, + "RecoveryWalkResponse": { + "properties": { + "walkPerformed": { + "type": "boolean", + "readOnly": true, + "description": "Whether the recovery walk was performed" + }, + "nextPlatformUpdateDomain": { + "type": "integer", + "readOnly": true, + "description": "The next update domain that needs to be walked. Null means walk spanning all update domains has been completed" + } + }, + "description": "Response after calling a manual recovery walk" + }, + "RequestRateByIntervalInput": { + "properties": { + "intervalLength": { + "type": "string", + "description": "Interval value in minutes used to create LogAnalytics call rate logs.", + "enum": [ + "ThreeMins", + "FiveMins", + "ThirtyMins", + "SixtyMins" + ], + "x-ms-enum": { + "name": "IntervalInMins", + "modelAsString": false + } + } + }, + "required": [ + "intervalLength" + ], + "allOf": [ + { + "$ref": "#/definitions/LogAnalyticsInputBase" + } + ], + "description": "Api request input for LogAnalytics getRequestRateByInterval Api." + }, + "ThrottledRequestsInput": { + "allOf": [ + { + "$ref": "#/definitions/LogAnalyticsInputBase" + } + ], + "description": "Api request input for LogAnalytics getThrottledRequests Api." + }, + "LogAnalyticsInputBase": { + "properties": { + "blobContainerSasUri": { + "type": "string", + "description": "SAS Uri of the logging blob container to which LogAnalytics Api writes output logs to." + }, + "fromTime": { + "type": "string", + "format": "date-time", + "description": "From time of the query" + }, + "toTime": { + "type": "string", + "format": "date-time", + "description": "To time of the query" + }, + "groupByThrottlePolicy": { + "type": "boolean", + "description": "Group query result by Throttle Policy applied." + }, + "groupByOperationName": { + "type": "boolean", + "description": "Group query result by Operation Name." + }, + "groupByResourceName": { + "type": "boolean", + "description": "Group query result by Resource Name." + }, + "groupByClientApplicationId": { + "type": "boolean", + "description": "Group query result by Client Application ID." + }, + "groupByUserAgent": { + "type": "boolean", + "description": "Group query result by User Agent." + } + }, + "required": [ + "blobContainerSasUri", + "fromTime", + "toTime" + ], + "description": "Api input base class for LogAnalytics Api." + }, + "LogAnalyticsOperationResult": { + "properties": { + "properties": { + "readOnly": true, + "$ref": "#/definitions/LogAnalyticsOutput", + "description": "LogAnalyticsOutput" + } + }, + "description": "LogAnalytics operation status response" + }, + "LogAnalyticsOutput": { + "properties": { + "output": { + "readOnly": true, + "type": "string", + "description": "Output file Uri path to blob container." + } + }, + "description": "LogAnalytics output properties" + }, + "VMScaleSetConvertToSinglePlacementGroupInput": { + "properties": { + "activePlacementGroupId": { + "type": "string", + "description": "Id of the placement group in which you want future virtual machine instances to be placed. To query placement group Id, please use Virtual Machine Scale Set VMs - Get API. If not provided, the platform will choose one with maximum number of virtual machine instances." + } + } + }, + "OrchestrationServiceStateInput": { + "properties": { + "serviceName": { + "type": "string", + "description": "The name of the service.", + "enum": [ + "AutomaticRepairs" + ], + "x-ms-enum": { + "name": "OrchestrationServiceNames", + "modelAsString": true + } + }, + "action": { + "type": "string", + "description": "The action to be performed.", + "enum": [ + "Resume", + "Suspend" + ], + "x-ms-enum": { + "name": "OrchestrationServiceStateAction", + "modelAsString": true + } + } + }, + "description": "The input for OrchestrationServiceState", + "required": [ + "serviceName", + "action" + ] + }, + "PatchSettings": { + "properties": { + "patchMode": { + "type": "string", + "description": "Specifies the mode of VM Guest Patching to IaaS virtual machine or virtual machines associated to virtual machine scale set with OrchestrationMode as Flexible.

    Possible values are:

    **Manual** - You control the application of patches to a virtual machine. You do this by applying patches manually inside the VM. In this mode, automatic updates are disabled; the property WindowsConfiguration.enableAutomaticUpdates must be false

    **AutomaticByOS** - The virtual machine will automatically be updated by the OS. The property WindowsConfiguration.enableAutomaticUpdates must be true.

    **AutomaticByPlatform** - the virtual machine will automatically updated by the platform. The properties provisionVMAgent and WindowsConfiguration.enableAutomaticUpdates must be true ", + "enum": [ + "Manual", + "AutomaticByOS", + "AutomaticByPlatform" + ], + "x-ms-enum": { + "name": "WindowsVMGuestPatchMode", + "modelAsString": true + } + }, + "enableHotpatching": { + "type": "boolean", + "description": "Enables customers to patch their Azure VMs without requiring a reboot. For enableHotpatching, the 'provisionVMAgent' must be set to true and 'patchMode' must be set to 'AutomaticByPlatform'." + }, + "assessmentMode": { + "type": "string", + "description": "Specifies the mode of VM Guest patch assessment for the IaaS virtual machine.

    Possible values are:

    **ImageDefault** - You control the timing of patch assessments on a virtual machine.

    **AutomaticByPlatform** - The platform will trigger periodic patch assessments. The property provisionVMAgent must be true. ", + "enum": [ + "ImageDefault", + "AutomaticByPlatform" + ], + "x-ms-enum": { + "name": "WindowsPatchAssessmentMode", + "modelAsString": true + } + } + }, + "description": "Specifies settings related to VM Guest Patching on Windows." + }, + "LinuxPatchSettings": { + "properties": { + "patchMode": { + "type": "string", + "description": "Specifies the mode of VM Guest Patching to IaaS virtual machine or virtual machines associated to virtual machine scale set with OrchestrationMode as Flexible.

    Possible values are:

    **ImageDefault** - The virtual machine's default patching configuration is used.

    **AutomaticByPlatform** - The virtual machine will be automatically updated by the platform. The property provisionVMAgent must be true", + "enum": [ + "ImageDefault", + "AutomaticByPlatform" + ], + "x-ms-enum": { + "name": "LinuxVMGuestPatchMode", + "modelAsString": true + } + }, + "assessmentMode": { + "type": "string", + "description": "Specifies the mode of VM Guest Patch Assessment for the IaaS virtual machine.

    Possible values are:

    **ImageDefault** - You control the timing of patch assessments on a virtual machine.

    **AutomaticByPlatform** - The platform will trigger periodic patch assessments. The property provisionVMAgent must be true.", + "enum": [ + "ImageDefault", + "AutomaticByPlatform" + ], + "x-ms-enum": { + "name": "LinuxPatchAssessmentMode", + "modelAsString": true + } + } + }, + "description": "Specifies settings related to VM Guest Patching on Linux." + }, + "VirtualMachinePatchStatus": { + "properties": { + "availablePatchSummary": { + "$ref": "#/definitions/AvailablePatchSummary", + "description": "The available patch summary of the latest assessment operation for the virtual machine." + }, + "lastPatchInstallationSummary": { + "$ref": "#/definitions/LastPatchInstallationSummary", + "description": "The installation summary of the latest installation operation for the virtual machine." + }, + "configurationStatuses": { + "description": "The enablement status of the specified patchMode", + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/InstanceViewStatus" + } + } + }, + "description": "The status of virtual machine patch operations." + }, + "AvailablePatchSummary": { + "properties": { + "status": { + "type": "string", + "readOnly": true, + "description": "The overall success or failure status of the operation. It remains \"InProgress\" until the operation completes. At that point it will become \"Unknown\", \"Failed\", \"Succeeded\", or \"CompletedWithWarnings.\"", + "enum": [ + "Unknown", + "InProgress", + "Failed", + "Succeeded", + "CompletedWithWarnings" + ], + "x-ms-enum": { + "name": "PatchOperationStatus", + "modelAsString": true + } + }, + "assessmentActivityId": { + "type": "string", + "readOnly": true, + "description": "The activity ID of the operation that produced this result. It is used to correlate across CRP and extension logs." + }, + "rebootPending": { + "type": "boolean", + "readOnly": true, + "description": "The overall reboot status of the VM. It will be true when partially installed patches require a reboot to complete installation but the reboot has not yet occurred." + }, + "criticalAndSecurityPatchCount": { + "type": "integer", + "readOnly": true, + "format": "int32", + "description": "The number of critical or security patches that have been detected as available and not yet installed." + }, + "otherPatchCount": { + "type": "integer", + "readOnly": true, + "format": "int32", + "description": "The number of all available patches excluding critical and security." + }, + "startTime": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The UTC timestamp when the operation began." + }, + "lastModifiedTime": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The UTC timestamp when the operation began." + }, + "error": { + "$ref": "#/definitions/ApiError", + "readOnly": true, + "description": "The errors that were encountered during execution of the operation. The details array contains the list of them." + } + }, + "description": "Describes the properties of an virtual machine instance view for available patch summary." + }, + "LastPatchInstallationSummary": { + "properties": { + "status": { + "type": "string", + "readOnly": true, + "description": "The overall success or failure status of the operation. It remains \"InProgress\" until the operation completes. At that point it will become \"Unknown\", \"Failed\", \"Succeeded\", or \"CompletedWithWarnings.\"", + "enum": [ + "Unknown", + "InProgress", + "Failed", + "Succeeded", + "CompletedWithWarnings" + ], + "x-ms-enum": { + "name": "PatchOperationStatus", + "modelAsString": true + } + }, + "installationActivityId": { + "type": "string", + "readOnly": true, + "description": "The activity ID of the operation that produced this result. It is used to correlate across CRP and extension logs." + }, + "maintenanceWindowExceeded": { + "type": "boolean", + "readOnly": true, + "description": "Describes whether the operation ran out of time before it completed all its intended actions" + }, + "notSelectedPatchCount": { + "type": "integer", + "readOnly": true, + "format": "int32", + "description": "The number of all available patches but not going to be installed because it didn't match a classification or inclusion list entry." + }, + "excludedPatchCount": { + "type": "integer", + "readOnly": true, + "format": "int32", + "description": "The number of all available patches but excluded explicitly by a customer-specified exclusion list match." + }, + "pendingPatchCount": { + "type": "integer", + "readOnly": true, + "format": "int32", + "description": "The number of all available patches expected to be installed over the course of the patch installation operation." + }, + "installedPatchCount": { + "type": "integer", + "readOnly": true, + "format": "int32", + "description": "The count of patches that successfully installed." + }, + "failedPatchCount": { + "type": "integer", + "readOnly": true, + "format": "int32", + "description": "The count of patches that failed installation." + }, + "startTime": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The UTC timestamp when the operation began." + }, + "lastModifiedTime": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The UTC timestamp when the operation began." + }, + "error": { + "$ref": "#/definitions/ApiError", + "readOnly": true, + "description": "The errors that were encountered during execution of the operation. The details array contains the list of them." + } + }, + "description": "Describes the properties of the last installed patch summary." + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client Api Version." + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateACustomImageScaleSetFromAnUnmanagedGeneralizedOsImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateACustomImageScaleSetFromAnUnmanagedGeneralizedOsImage.json new file mode 100644 index 000000000000..90b20e4d23a9 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateACustomImageScaleSetFromAnUnmanagedGeneralizedOsImage.json @@ -0,0 +1,202 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2021-03-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "osDisk": { + "caching": "ReadWrite", + "image": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/{existing-container-name}/{existing-generalized-os-image-blob-name}.vhd" + }, + "createOption": "FromImage", + "name": "osDisk" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "d6e9ab29-f8c9-4792-978c-ae2c07b98f17", + "virtualMachineProfile": { + "storageProfile": { + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "image": { + "uri": "https://{existing-storage-account-name}.blob.core.windows.net/system/Microsoft.Compute/Images/vhds/{existing-generalized-os-image-blob-name}.vhd" + }, + "createOption": "FromImage", + "name": "osDisk" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "d6e9ab29-f8c9-4792-978c-ae2c07b98f17", + "virtualMachineProfile": { + "storageProfile": { + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "image": { + "uri": "https://{existing-storage-account-name}.blob.core.windows.net/system/Microsoft.Compute/Images/vhds/{existing-generalized-os-image-blob-name}.vhd" + }, + "createOption": "FromImage", + "name": "osDisk" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateACustomImageVmFromAnUnmanagedGeneralizedOsImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateACustomImageVmFromAnUnmanagedGeneralizedOsImage.json new file mode 100644 index 000000000000..b98f40727aff --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateACustomImageVmFromAnUnmanagedGeneralizedOsImage.json @@ -0,0 +1,145 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "{vm-name}", + "api-version": "2021-03-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "storageProfile": { + "osDisk": { + "name": "myVMosdisk", + "image": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/{existing-container-name}/{existing-generalized-os-image-blob-name}.vhd" + }, + "osType": "Windows", + "createOption": "FromImage", + "caching": "ReadWrite", + "vhd": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/{existing-container-name}/myDisk.vhd" + } + } + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "osDisk": { + "name": "myVMosdisk", + "image": { + "uri": "https://{existing-storage-account-name}.blob.core.windows.net/system/Microsoft.Compute/Images/vhds/{existing-generalized-os-image-blob-name}.vhd" + }, + "caching": "ReadWrite", + "createOption": "FromImage", + "osType": "Windows", + "vhd": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/vhds/myDisk.vhd" + } + }, + "dataDisks": [] + }, + "vmId": "926cd555-a07c-4ff5-b214-4aa4dd09d79b", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "osDisk": { + "name": "myVMosdisk", + "image": { + "uri": "https://{existing-storage-account-name}.blob.core.windows.net/system/Microsoft.Compute/Images/vhds/{existing-generalized-os-image-blob-name}.vhd" + }, + "caching": "ReadWrite", + "createOption": "FromImage", + "osType": "Windows", + "vhd": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/vhds/myDisk.vhd" + } + }, + "dataDisks": [] + }, + "vmId": "926cd555-a07c-4ff5-b214-4aa4dd09d79b", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateALinuxVmWithPatchSettingAssessmentModeOfImageDefault.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateALinuxVmWithPatchSettingAssessmentModeOfImageDefault.json new file mode 100644 index 000000000000..dae6769a8129 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateALinuxVmWithPatchSettingAssessmentModeOfImageDefault.json @@ -0,0 +1,163 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2021-03-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D2s_v3" + }, + "storageProfile": { + "imageReference": { + "sku": "16.04-LTS", + "publisher": "Canonical", + "version": "latest", + "offer": "UbuntuServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Premium_LRS" + }, + "name": "myVMosdisk", + "createOption": "FromImage" + } + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}", + "linuxConfiguration": { + "provisionVMAgent": true, + "patchSettings": { + "assessmentMode": "ImageDefault" + } + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "linuxConfiguration": { + "provisionVMAgent": true, + "patchSettings": { + "assessmentMode": "ImageDefault" + } + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "16.04-LTS", + "publisher": "Canonical", + "version": "latest", + "offer": "UbuntuServer" + }, + "osDisk": { + "osType": "Linux", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Premium_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "a149cd25-409f-41af-8088-275f5486bc93", + "hardwareProfile": { + "vmSize": "Standard_D2s_v3" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "linuxConfiguration": { + "provisionVMAgent": true, + "patchSettings": { + "assessmentMode": "ImageDefault" + } + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "16.04-LTS", + "publisher": "Canonical", + "version": "latest", + "offer": "UbuntuServer" + }, + "osDisk": { + "osType": "Linux", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Premium_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "a149cd25-409f-41af-8088-275f5486bc93", + "hardwareProfile": { + "vmSize": "Standard_D2s_v3" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateALinuxVmWithPatchSettingModeOfImageDefault.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateALinuxVmWithPatchSettingModeOfImageDefault.json new file mode 100644 index 000000000000..ba98cf2f2a47 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateALinuxVmWithPatchSettingModeOfImageDefault.json @@ -0,0 +1,163 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2021-03-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D2s_v3" + }, + "storageProfile": { + "imageReference": { + "sku": "16.04-LTS", + "publisher": "Canonical", + "version": "latest", + "offer": "UbuntuServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Premium_LRS" + }, + "name": "myVMosdisk", + "createOption": "FromImage" + } + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}", + "linuxConfiguration": { + "provisionVMAgent": true, + "patchSettings": { + "patchMode": "ImageDefault" + } + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "linuxConfiguration": { + "provisionVMAgent": true, + "patchSettings": { + "patchMode": "ImageDefault" + } + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "16.04-LTS", + "publisher": "Canonical", + "version": "latest", + "offer": "UbuntuServer" + }, + "osDisk": { + "osType": "Linux", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Premium_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "a149cd25-409f-41af-8088-275f5486bc93", + "hardwareProfile": { + "vmSize": "Standard_D2s_v3" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "linuxConfiguration": { + "provisionVMAgent": true, + "patchSettings": { + "patchMode": "ImageDefault" + } + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "16.04-LTS", + "publisher": "Canonical", + "version": "latest", + "offer": "UbuntuServer" + }, + "osDisk": { + "osType": "Linux", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Premium_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "a149cd25-409f-41af-8088-275f5486bc93", + "hardwareProfile": { + "vmSize": "Standard_D2s_v3" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateALinuxVmWithPatchSettingModesOfAutomaticByPlatform.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateALinuxVmWithPatchSettingModesOfAutomaticByPlatform.json new file mode 100644 index 000000000000..b6392794ed92 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateALinuxVmWithPatchSettingModesOfAutomaticByPlatform.json @@ -0,0 +1,166 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2021-03-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D2s_v3" + }, + "storageProfile": { + "imageReference": { + "sku": "16.04-LTS", + "publisher": "Canonical", + "version": "latest", + "offer": "UbuntuServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Premium_LRS" + }, + "name": "myVMosdisk", + "createOption": "FromImage" + } + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}", + "linuxConfiguration": { + "provisionVMAgent": true, + "patchSettings": { + "patchMode": "AutomaticByPlatform", + "assessmentMode": "AutomaticByPlatform" + } + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "linuxConfiguration": { + "provisionVMAgent": true, + "patchSettings": { + "patchMode": "AutomaticByPlatform", + "assessmentMode": "AutomaticByPlatform" + } + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "16.04-LTS", + "publisher": "Canonical", + "version": "latest", + "offer": "UbuntuServer" + }, + "osDisk": { + "osType": "Linux", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Premium_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "a149cd25-409f-41af-8088-275f5486bc93", + "hardwareProfile": { + "vmSize": "Standard_D2s_v3" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "linuxConfiguration": { + "provisionVMAgent": true, + "patchSettings": { + "patchMode": "AutomaticByPlatform", + "assessmentMode": "AutomaticByPlatform" + } + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "16.04-LTS", + "publisher": "Canonical", + "version": "latest", + "offer": "UbuntuServer" + }, + "osDisk": { + "osType": "Linux", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Premium_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "a149cd25-409f-41af-8088-275f5486bc93", + "hardwareProfile": { + "vmSize": "Standard_D2s_v3" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAPlatformImageScaleSetWithUnmanagedOsDisks.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAPlatformImageScaleSetWithUnmanagedOsDisks.json new file mode 100644 index 000000000000..630f5f90eccc --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAPlatformImageScaleSetWithUnmanagedOsDisks.json @@ -0,0 +1,222 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2021-03-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "osDisk", + "vhdContainers": [ + "http://{existing-storage-account-name-0}.blob.core.windows.net/vhdContainer", + "http://{existing-storage-account-name-1}.blob.core.windows.net/vhdContainer", + "http://{existing-storage-account-name-2}.blob.core.windows.net/vhdContainer", + "http://{existing-storage-account-name-3}.blob.core.windows.net/vhdContainer", + "http://{existing-storage-account-name-4}.blob.core.windows.net/vhdContainer" + ] + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "77b7df9a-32fe-45e3-8911-60ac9c9b9c64", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "vhdContainers": [ + "http://{existing-storage-account-name}.blob.core.windows.net/vhds" + ], + "name": "osDisk", + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "77b7df9a-32fe-45e3-8911-60ac9c9b9c64", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "vhdContainers": [ + "http://{existing-storage-account-name}.blob.core.windows.net/vhds" + ], + "name": "osDisk", + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAPlatformImageVmWithUnmanagedOsAndDataDisks.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAPlatformImageVmWithUnmanagedOsAndDataDisks.json new file mode 100644 index 000000000000..9cb9446d20e3 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAPlatformImageVmWithUnmanagedOsAndDataDisks.json @@ -0,0 +1,213 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "{vm-name}", + "api-version": "2021-03-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D2_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "vhd": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/{existing-container-name}/myDisk.vhd" + }, + "createOption": "FromImage", + "name": "myVMosdisk" + }, + "dataDisks": [ + { + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 0, + "vhd": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/{existing-container-name}/myDisk0.vhd" + } + }, + { + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 1, + "vhd": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/{existing-container-name}/myDisk1.vhd" + } + } + ] + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "vhd": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/vhds/myDisk.vhd" + }, + "createOption": "FromImage", + "name": "myVMosdisk", + "caching": "ReadWrite" + }, + "dataDisks": [ + { + "name": "dataDisk0", + "diskSizeGB": 1023, + "createOption": "Empty", + "caching": "None", + "vhd": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/vhds/myDisk0.vhd" + }, + "lun": 0 + }, + { + "name": "dataDisk1", + "diskSizeGB": 1023, + "createOption": "Empty", + "caching": "None", + "vhd": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/vhds/myDisk1.vhd" + }, + "lun": 1 + } + ] + }, + "vmId": "5230a749-2f68-4830-900b-702182d32e63", + "hardwareProfile": { + "vmSize": "Standard_D2_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "vhd": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/vhds/myDisk.vhd" + }, + "createOption": "FromImage", + "name": "myVMosdisk", + "caching": "ReadWrite" + }, + "dataDisks": [ + { + "name": "dataDisk0", + "diskSizeGB": 1023, + "createOption": "Empty", + "caching": "None", + "vhd": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/vhds/myDisk0.vhd" + }, + "lun": 0 + }, + { + "name": "dataDisk1", + "diskSizeGB": 1023, + "createOption": "Empty", + "caching": "None", + "vhd": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/vhds/myDisk1.vhd" + }, + "lun": 1 + } + ] + }, + "vmId": "5230a749-2f68-4830-900b-702182d32e63", + "hardwareProfile": { + "vmSize": "Standard_D2_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateARestorePoint.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateARestorePoint.json new file mode 100644 index 000000000000..3053bee70ba9 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateARestorePoint.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "restorePointCollectionName": "rpcName", + "restorePointName": "rpName", + "vmName": "myVM", + "api-version": "2021-03-01", + "parameters": { + "excludeDisks": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vm8768_disk2_fe6ffde4f69b491ca33fb984d5bcd89f" + } + ] + } + }, + "responses": { + "201": { + "body": { + "name": "rpName", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/rpcName/restorePoints/rpName", + "sourceMetadata": { + "vmId": "76d6541e-80bd-4dc1-932b-3cae4cfb80e7", + "hardwareProfile": { + "vmSize": "Standard_B1s" + }, + "storageProfile": { + "osDisk": { + "osType": "Windows", + "name": "testingexcludedisk_OsDisk_1_74cdaedcea50483d9833c96adefa100f", + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/testingexcludedisk_OsDisk_1_74cdaedcea50483d9833c96adefa100f" + }, + "diskRestorePoint": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/rpcName/restorePoints/rpName/diskRestorePoints/testingexcludedisk_OsDisk_1_74cdaedcea50483d9833c96adefa100f_22b4bdfe-6c54-4f72-84d8-85d8860f0c57" + } + }, + "dataDisks": [ + { + "lun": 1, + "name": "testingexcludedisk_DataDisk_1", + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS", + "id": "/subscriptions/{subscription-id}/resourceGroups/userdata/providers/Microsoft.Compute/disks/testingexcludedisk_DataDisk_1" + }, + "diskRestorePoint": { + "id": "/subscriptions/{subscription-id}/resourceGroups/userdata/providers/Microsoft.Compute/restorePointCollections/mynewrpc/restorePoints/restorepointtwo/diskRestorePoints/testingexcludedisk_DataDisk_1_68785190-1acb-4d5e-a8ae-705b45f3dca5" + } + } + ] + }, + "osProfile": { + "computerName": "computerName", + "adminUsername": "admin", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + }, + "secrets": [], + "allowExtensionOperations": true, + "requireGuestProvisionSignal": true + }, + "diagnosticsProfile": { + "bootDiagnostics": { + "enabled": true + } + } + }, + "provisioningState": "Succeeded", + "consistencyMode": "ApplicationConsistent", + "provisioningDetails": { + "creationTime": "2021-01-27T20:35:05.8401519+00:00", + "totalUsedSizeInBytes": 10835349504, + "statusCode": 0, + "statusMessage": "{\"jobMessage\":\"\",\"messageStr\":\"1/27/2021 8:35:56 PM , snapshotCreator=guestExtension, hostStatusCodePreSnapshot=200, Plugin enable Succeeded (command: Snapshot) Snapshot command completed \",\"snapshotConsistency\":2}" + }, + "excludeDisks": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vm8768_disk2_fe6ffde4f69b491ca33fb984d5bcd89f" + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetFromACustomImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetFromACustomImage.json new file mode 100644 index 000000000000..dc1ca51f3c6a --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetFromACustomImage.json @@ -0,0 +1,204 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2021-03-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/{existing-custom-image-name}" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "afa2afa8-9e49-48fb-9d18-c86323b5d064", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/nsgcustom" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "linuxConfiguration": { + "disablePasswordAuthentication": false + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "afa2afa8-9e49-48fb-9d18-c86323b5d064", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/nsgcustom" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "linuxConfiguration": { + "disablePasswordAuthentication": false + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetFromAGeneralizedSharedImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetFromAGeneralizedSharedImage.json new file mode 100644 index 000000000000..6f88913a3616 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetFromAGeneralizedSharedImage.json @@ -0,0 +1,204 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2021-03-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/mySharedGallery/images/mySharedImage" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "afa2afa8-9e49-48fb-9d18-c86323b5d064", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/mySharedGallery/images/mySharedImage" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "linuxConfiguration": { + "disablePasswordAuthentication": false + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "afa2afa8-9e49-48fb-9d18-c86323b5d064", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/mySharedGallery/images/mySharedImage" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "linuxConfiguration": { + "disablePasswordAuthentication": false + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetFromASpecializedSharedImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetFromASpecializedSharedImage.json new file mode 100644 index 000000000000..2f8f261ccd83 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetFromASpecializedSharedImage.json @@ -0,0 +1,183 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2021-03-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/mySharedGallery/images/mySharedImage" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "afa2afa8-9e49-48fb-9d18-c86323b5d064", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/mySharedGallery/images/mySharedImage" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "afa2afa8-9e49-48fb-9d18-c86323b5d064", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/mySharedGallery/images/mySharedImage" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetFromWithFpgaNetworkInterface.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetFromWithFpgaNetworkInterface.json new file mode 100644 index 000000000000..8f42a47d4e05 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetFromWithFpgaNetworkInterface.json @@ -0,0 +1,271 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2021-03-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/{existing-custom-image-name}" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + }, + { + "name": "{fpgaNic-Name}", + "properties": { + "primary": false, + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "enableFpga": true, + "ipConfigurations": [ + { + "name": "{fpgaNic-Name}", + "properties": { + "primary": true, + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-fpga-subnet-name}" + }, + "privateIPAddressVersion": "IPv4" + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "afa2afa8-9e49-48fb-9d18-c86323b5d064", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/nsgcustom" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "linuxConfiguration": { + "disablePasswordAuthentication": false + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + }, + { + "name": "{fpgaNic-Name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": false, + "enableFpga": true, + "ipConfigurations": [ + { + "name": "{fpgaNic-Name}", + "properties": { + "primary": true, + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-fpga-subnet-name}" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "afa2afa8-9e49-48fb-9d18-c86323b5d064", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/nsgcustom" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "linuxConfiguration": { + "disablePasswordAuthentication": false + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + }, + { + "name": "{fpgaNic-Name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": false, + "enableFpga": true, + "ipConfigurations": [ + { + "name": "{fpgaNic-Name}", + "properties": { + "primary": true, + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-fpga-subnet-name}" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetWithAMarketplaceImagePlan.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetWithAMarketplaceImagePlan.json new file mode 100644 index 000000000000..4247a34d10b8 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetWithAMarketplaceImagePlan.json @@ -0,0 +1,230 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2021-03-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "windows2016", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "windows-data-science-vm" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + }, + "plan": { + "publisher": "microsoft-ads", + "product": "windows-data-science-vm", + "name": "windows2016" + }, + "location": "westus" + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}", + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachineScaleSets", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "b9e23088-6ffc-46e0-9e02-b0a6eeef47db", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}", + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachineScaleSets", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "b9e23088-6ffc-46e0-9e02-b0a6eeef47db", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetWithAnAzureApplicationGateway.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetWithAnAzureApplicationGateway.json new file mode 100644 index 000000000000..e47666649a77 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetWithAnAzureApplicationGateway.json @@ -0,0 +1,230 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2021-03-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "applicationGatewayBackendAddressPools": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/applicationGateways/{existing-application-gateway-name}/backendAddressPools/{existing-backend-address-pool-name}" + } + ], + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "a0134477-b9d9-484b-b0e3-205c1c089ffa", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "applicationGatewayBackendAddressPools": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/applicationGateways/nsgExistingAppGw/backendAddressPools/appGatewayBackendPool" + } + ], + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "a0134477-b9d9-484b-b0e3-205c1c089ffa", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "applicationGatewayBackendAddressPools": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/applicationGateways/nsgExistingAppGw/backendAddressPools/appGatewayBackendPool" + } + ], + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetWithAnAzureLoadBalancer.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetWithAnAzureLoadBalancer.json new file mode 100644 index 000000000000..251fd8c076e1 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetWithAnAzureLoadBalancer.json @@ -0,0 +1,251 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2021-03-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + }, + "publicIPAddressConfiguration": { + "name": "{vmss-name}", + "properties": { + "publicIPAddressVersion": "IPv4" + } + }, + "loadBalancerInboundNatPools": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/loadBalancers/{existing-load-balancer-name}/inboundNatPools/{existing-nat-pool-name}" + } + ], + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/loadBalancers/{existing-load-balancer-name}/backendAddressPools/{existing-backend-address-pool-name}" + } + ] + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "ec0b21ca-51ec-414b-9323-f236ffc21479", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "loadBalancerInboundNatPools": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/loadBalancers/myLb/inboundNatPools/lbNatPool" + } + ], + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/loadBalancers/myLb/backendAddressPools/lbBackendPool" + } + ], + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "ec0b21ca-51ec-414b-9323-f236ffc21479", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "loadBalancerInboundNatPools": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/loadBalancers/myLb/inboundNatPools/lbNatPool" + } + ], + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/loadBalancers/myLb/backendAddressPools/lbBackendPool" + } + ], + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetWithAutomaticRepairs.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetWithAutomaticRepairs.json new file mode 100644 index 000000000000..226d37037ffd --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetWithAutomaticRepairs.json @@ -0,0 +1,227 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2021-03-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "automaticRepairsPolicy": { + "enabled": true, + "gracePeriod": "PT30M" + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "automaticRepairsPolicy": { + "enabled": true, + "gracePeriod": "PT30M" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "automaticRepairsPolicy": { + "enabled": true, + "gracePeriod": "PT30M" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetWithBootDiagnostics.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetWithBootDiagnostics.json new file mode 100644 index 000000000000..9574a5afebf2 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetWithBootDiagnostics.json @@ -0,0 +1,233 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2021-03-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "diagnosticsProfile": { + "bootDiagnostics": { + "storageUri": "http://{existing-storage-account-name}.blob.core.windows.net", + "enabled": true + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "diagnosticsProfile": { + "bootDiagnostics": { + "storageUri": "http://nsgdiagnostic.blob.core.windows.net", + "enabled": true + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "diagnosticsProfile": { + "bootDiagnostics": { + "storageUri": "http://nsgdiagnostic.blob.core.windows.net", + "enabled": true + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetWithDiffOsDisk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetWithDiffOsDisk.json new file mode 100644 index 000000000000..cf150bee42ff --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetWithDiffOsDisk.json @@ -0,0 +1,239 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2021-03-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_DS1_v2" + }, + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "windows2016", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "windows-data-science-vm" + }, + "osDisk": { + "caching": "ReadOnly", + "diffDiskSettings": { + "option": "Local" + }, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + }, + "plan": { + "publisher": "microsoft-ads", + "product": "windows-data-science-vm", + "name": "windows2016" + }, + "location": "westus" + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_DS1_v2" + }, + "name": "{vmss-name}", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}", + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachineScaleSets", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "b9e23088-6ffc-46e0-9e02-b0a6eeef47db", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "caching": "ReadOnly", + "diffDiskSettings": { + "option": "Local" + }, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_DS1_v2" + }, + "name": "{vmss-name}", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}", + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachineScaleSets", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "b9e23088-6ffc-46e0-9e02-b0a6eeef47db", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "caching": "ReadOnly", + "diffDiskSettings": { + "option": "Local" + }, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetWithDiffOsDiskUsingDiffDiskPlacement.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetWithDiffOsDiskUsingDiffDiskPlacement.json new file mode 100644 index 000000000000..3196e53ffd40 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetWithDiffOsDiskUsingDiffDiskPlacement.json @@ -0,0 +1,242 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2021-03-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_DS1_v2" + }, + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "windows2016", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "windows-data-science-vm" + }, + "osDisk": { + "caching": "ReadOnly", + "diffDiskSettings": { + "option": "Local", + "placement": "ResourceDisk" + }, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + }, + "plan": { + "publisher": "microsoft-ads", + "product": "windows-data-science-vm", + "name": "windows2016" + }, + "location": "westus" + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_DS1_v2" + }, + "name": "{vmss-name}", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}", + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachineScaleSets", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "b9e23088-6ffc-46e0-9e02-b0a6eeef47db", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "caching": "ReadOnly", + "diffDiskSettings": { + "option": "Local", + "placement": "ResourceDisk" + }, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_DS1_v2" + }, + "name": "{vmss-name}", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}", + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachineScaleSets", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "b9e23088-6ffc-46e0-9e02-b0a6eeef47db", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "caching": "ReadOnly", + "diffDiskSettings": { + "option": "Local", + "placement": "ResourceDisk" + }, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetWithEmptyDataDisksOnEachVm.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetWithEmptyDataDisksOnEachVm.json new file mode 100644 index 000000000000..8d0fd9cdb0c7 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetWithEmptyDataDisksOnEachVm.json @@ -0,0 +1,270 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2021-03-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D2_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "diskSizeGB": 512 + }, + "dataDisks": [ + { + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 0 + }, + { + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 1 + } + ] + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D2_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "8042c376-4690-4c47-9fa2-fbdad70e32fa", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "diskSizeGB": 512 + }, + "dataDisks": [ + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 0, + "diskSizeGB": 1023 + }, + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 1, + "diskSizeGB": 1023 + } + ] + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Succeeded" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D2_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "8042c376-4690-4c47-9fa2-fbdad70e32fa", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "diskSizeGB": 512 + }, + "dataDisks": [ + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 0, + "diskSizeGB": 1023 + }, + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 1, + "diskSizeGB": 1023 + } + ] + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetWithEncryptionAtHost.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetWithEncryptionAtHost.json new file mode 100644 index 000000000000..b2f37e5d2ad7 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetWithEncryptionAtHost.json @@ -0,0 +1,239 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2021-03-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_DS1_v2" + }, + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "windows2016", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "windows-data-science-vm" + }, + "osDisk": { + "caching": "ReadOnly", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "securityProfile": { + "encryptionAtHost": true + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + }, + "plan": { + "publisher": "microsoft-ads", + "product": "windows-data-science-vm", + "name": "windows2016" + }, + "location": "westus" + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_DS1_v2" + }, + "name": "{vmss-name}", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}", + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachineScaleSets", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "b9e23088-6ffc-46e0-9e02-b0a6eeef47db", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "caching": "ReadOnly", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "securityProfile": { + "encryptionAtHost": true + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_DS1_v2" + }, + "name": "{vmss-name}", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}", + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachineScaleSets", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "b9e23088-6ffc-46e0-9e02-b0a6eeef47db", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "caching": "ReadOnly", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "securityProfile": { + "encryptionAtHost": true + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetWithExtensionsTimeBudget.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetWithExtensionsTimeBudget.json new file mode 100644 index 000000000000..eb77ecc2251c --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetWithExtensionsTimeBudget.json @@ -0,0 +1,278 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2021-03-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "diagnosticsProfile": { + "bootDiagnostics": { + "storageUri": "http://{existing-storage-account-name}.blob.core.windows.net", + "enabled": true + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "extensionProfile": { + "extensions": [ + { + "name": "{extension-name}", + "properties": { + "autoUpgradeMinorVersion": false, + "publisher": "{extension-Publisher}", + "type": "{extension-Type}", + "typeHandlerVersion": "{handler-version}", + "settings": {} + } + } + ], + "extensionsTimeBudget": "PT1H20M" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "diagnosticsProfile": { + "bootDiagnostics": { + "storageUri": "http://nsgdiagnostic.blob.core.windows.net", + "enabled": true + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "extensionProfile": { + "extensions": [ + { + "name": "{extension-name}", + "properties": { + "autoUpgradeMinorVersion": false, + "publisher": "{extension-Publisher}", + "type": "{extension-Type}", + "typeHandlerVersion": "{handler-version}", + "settings": {} + } + } + ], + "extensionsTimeBudget": "PT1H20M" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "diagnosticsProfile": { + "bootDiagnostics": { + "storageUri": "http://nsgdiagnostic.blob.core.windows.net", + "enabled": true + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "extensionProfile": { + "extensions": [ + { + "name": "{extension-name}", + "properties": { + "autoUpgradeMinorVersion": false, + "publisher": "{extension-Publisher}", + "type": "{extension-Type}", + "typeHandlerVersion": "{handler-version}", + "settings": {} + } + } + ], + "extensionsTimeBudget": "PT1H20M" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetWithManagedBootDiagnostics.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetWithManagedBootDiagnostics.json new file mode 100644 index 000000000000..76a3f07f7718 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetWithManagedBootDiagnostics.json @@ -0,0 +1,230 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2021-03-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "diagnosticsProfile": { + "bootDiagnostics": { + "enabled": true + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "diagnosticsProfile": { + "bootDiagnostics": { + "enabled": true + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "diagnosticsProfile": { + "bootDiagnostics": { + "enabled": true + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetWithPasswordAuthentication.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetWithPasswordAuthentication.json new file mode 100644 index 000000000000..f2b1d4749c89 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetWithPasswordAuthentication.json @@ -0,0 +1,215 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2021-03-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "ffb27c5c-39a5-4d4e-b307-b32598689813", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "ffb27c5c-39a5-4d4e-b307-b32598689813", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetWithPremiumStorage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetWithPremiumStorage.json new file mode 100644 index 000000000000..1fa74bb1f394 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetWithPremiumStorage.json @@ -0,0 +1,215 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2021-03-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Premium_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_DS1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "19fd38a2-f50a-42c6-9dc7-3f9cf3791225", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Premium_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_DS1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "19fd38a2-f50a-42c6-9dc7-3f9cf3791225", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Premium_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetWithSshAuthentication.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetWithSshAuthentication.json new file mode 100644 index 000000000000..51320853b305 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetWithSshAuthentication.json @@ -0,0 +1,239 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2021-03-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "linuxConfiguration": { + "ssh": { + "publicKeys": [ + { + "path": "/home/{your-username}/.ssh/authorized_keys", + "keyData": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCeClRAk2ipUs/l5voIsDC5q9RI+YSRd1Bvd/O+axgY4WiBzG+4FwJWZm/mLLe5DoOdHQwmU2FrKXZSW4w2sYE70KeWnrFViCOX5MTVvJgPE8ClugNl8RWth/tU849DvM9sT7vFgfVSHcAS2yDRyDlueii+8nF2ym8XWAPltFVCyLHRsyBp5YPqK8JFYIa1eybKsY3hEAxRCA+/7bq8et+Gj3coOsuRmrehav7rE6N12Pb80I6ofa6SM5XNYq4Xk0iYNx7R3kdz0Jj9XgZYWjAHjJmT0gTRoOnt6upOuxK7xI/ykWrllgpXrCPu3Ymz+c+ujaqcxDopnAl2lmf69/J1" + } + ] + }, + "disablePasswordAuthentication": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "fb73af19-0090-467c-9ced-b00bceab1c45", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "16.04-LTS", + "publisher": "Canonical", + "version": "latest", + "offer": "UbuntuServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "linuxConfiguration": { + "ssh": { + "publicKeys": [ + { + "path": "/home/{your-username}/.ssh/authorized_keys", + "keyData": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCeClRAk2ipUs/l5voIsDC5q9RI+YSRd1Bvd/O+axgY4WiBzG+4FwJWZm/mLLe5DoOdHQwmU2FrKXZSW4w2sYE70KeWnrFViCOX5MTVvJgPE8ClugNl8RWth/tU849DvM9sT7vFgfVSHcAS2yDRyDlueii+8nF2ym8XWAPltFVCyLHRsyBp5YPqK8JFYIa1eybKsY3hEAxRCA+/7bq8et+Gj3coOsuRmrehav7rE6N12Pb80I6ofa6SM5XNYq4Xk0iYNx7R3kdz0Jj9XgZYWjAHjJmT0gTRoOnt6upOuxK7xI/ykWrllgpXrCPu3Ymz+c+ujaqcxDopnAl2lmf69/J1" + } + ] + }, + "disablePasswordAuthentication": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "fb73af19-0090-467c-9ced-b00bceab1c45", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "16.04-LTS", + "publisher": "Canonical", + "version": "latest", + "offer": "UbuntuServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "linuxConfiguration": { + "ssh": { + "publicKeys": [ + { + "path": "/home/{your-username}/.ssh/authorized_keys", + "keyData": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCeClRAk2ipUs/l5voIsDC5q9RI+YSRd1Bvd/O+axgY4WiBzG+4FwJWZm/mLLe5DoOdHQwmU2FrKXZSW4w2sYE70KeWnrFViCOX5MTVvJgPE8ClugNl8RWth/tU849DvM9sT7vFgfVSHcAS2yDRyDlueii+8nF2ym8XWAPltFVCyLHRsyBp5YPqK8JFYIa1eybKsY3hEAxRCA+/7bq8et+Gj3coOsuRmrehav7rE6N12Pb80I6ofa6SM5XNYq4Xk0iYNx7R3kdz0Jj9XgZYWjAHjJmT0gTRoOnt6upOuxK7xI/ykWrllgpXrCPu3Ymz+c+ujaqcxDopnAl2lmf69/J1" + } + ] + }, + "disablePasswordAuthentication": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetWithTerminateScheduledEventEnabled.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetWithTerminateScheduledEventEnabled.json new file mode 100644 index 000000000000..4202e9442235 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetWithTerminateScheduledEventEnabled.json @@ -0,0 +1,233 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2021-03-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + }, + "scheduledEventsProfile": { + "terminateNotificationProfile": { + "enable": true, + "notBeforeTimeout": "PT5M" + } + } + }, + "upgradePolicy": { + "mode": "Manual" + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + }, + "scheduledEventsProfile": { + "terminateNotificationProfile": { + "enable": true, + "notBeforeTimeout": "PT5M" + } + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + }, + "scheduledEventsProfile": { + "terminateNotificationProfile": { + "enable": true, + "notBeforeTimeout": "PT5M" + } + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetWithUefiSettings.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetWithUefiSettings.json new file mode 100644 index 000000000000..40660755ca31 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetWithUefiSettings.json @@ -0,0 +1,236 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2021-03-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D2s_v3" + }, + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "windows10-tvm", + "publisher": "MicrosoftWindowsServer", + "version": "18363.592.2001092016", + "offer": "windowsserver-gen2preview-preview" + }, + "osDisk": { + "caching": "ReadOnly", + "managedDisk": { + "storageAccountType": "StandardSSD_LRS" + }, + "createOption": "FromImage" + } + }, + "securityProfile": { + "uefiSettings": { + "secureBootEnabled": true, + "vTpmEnabled": true + }, + "securityType": "TrustedLaunch" + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + }, + "location": "westus" + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D2s_v3" + }, + "name": "{vmss-name}", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "b9e23088-6ffc-46e0-9e02-b0a6eeef47db", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "windows10-tvm", + "publisher": "MicrosoftWindowsServer", + "version": "18363.592.2001092016", + "offer": "windowsserver-gen2preview-preview" + }, + "osDisk": { + "caching": "ReadOnly", + "managedDisk": { + "storageAccountType": "StandardSSD_LRS" + }, + "createOption": "FromImage" + } + }, + "securityProfile": { + "uefiSettings": { + "secureBootEnabled": true, + "vTpmEnabled": true + }, + "securityType": "TrustedLaunch" + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D2s_v3" + }, + "name": "{vmss-name}", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "b9e23088-6ffc-46e0-9e02-b0a6eeef47db", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "windows10-tvm", + "publisher": "MicrosoftWindowsServer", + "version": "18363.592.2001092016", + "offer": "windowsserver-gen2preview-preview" + }, + "osDisk": { + "caching": "ReadOnly", + "managedDisk": { + "storageAccountType": "StandardSSD_LRS" + }, + "createOption": "FromImage" + } + }, + "securityProfile": { + "uefiSettings": { + "secureBootEnabled": true, + "vTpmEnabled": true + }, + "securityType": "TrustedLaunch" + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetWithVMsInDifferentZones.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetWithVMsInDifferentZones.json new file mode 100644 index 000000000000..eb3aa2ca73d5 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScaleSetWithVMsInDifferentZones.json @@ -0,0 +1,284 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2021-03-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 2, + "name": "Standard_A1_v2" + }, + "location": "centralus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "diskSizeGB": 512 + }, + "dataDisks": [ + { + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 0 + }, + { + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 1 + } + ] + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Automatic" + } + }, + "zones": [ + "1", + "3" + ] + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 2, + "name": "Standard_A1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": false, + "overprovision": true, + "uniqueId": "8042c376-4690-4c47-9fa2-fbdad70e32fa", + "zoneBalance": false, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "diskSizeGB": 512 + }, + "dataDisks": [ + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 0, + "diskSizeGB": 1023 + }, + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 1, + "diskSizeGB": 1023 + } + ] + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Automatic" + }, + "provisioningState": "Succeeded" + }, + "zones": [ + "1", + "3" + ], + "location": "centralus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 2, + "name": "Standard_A1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": false, + "overprovision": true, + "uniqueId": "8042c376-4690-4c47-9fa2-fbdad70e32fa", + "zoneBalance": false, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "diskSizeGB": 512 + }, + "dataDisks": [ + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 0, + "diskSizeGB": 1023 + }, + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 1, + "diskSizeGB": 1023 + } + ] + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Automatic" + }, + "provisioningState": "Creating" + }, + "zones": [ + "1", + "3" + ], + "location": "centralus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScalesetWithDiskEncryptionSetResource.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScalesetWithDiskEncryptionSetResource.json new file mode 100644 index 000000000000..e86a41f031f7 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAScalesetWithDiskEncryptionSetResource.json @@ -0,0 +1,255 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2021-03-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_DS1_v2" + }, + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/{existing-custom-image-name}" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "createOption": "FromImage" + }, + "dataDisks": [ + { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 0 + } + ] + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + }, + "location": "westus" + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "afa2afa8-9e49-48fb-9d18-c86323b5d064", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/nsgcustom" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "createOption": "FromImage" + }, + "dataDisks": [ + { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 0 + } + ] + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "linuxConfiguration": { + "disablePasswordAuthentication": false + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "afa2afa8-9e49-48fb-9d18-c86323b5d064", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/nsgcustom" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "createOption": "FromImage" + }, + "dataDisks": [ + { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 0 + } + ] + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "linuxConfiguration": { + "disablePasswordAuthentication": false + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmFromACustomImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmFromACustomImage.json new file mode 100644 index 000000000000..0256e694051a --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmFromACustomImage.json @@ -0,0 +1,144 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2021-03-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/{existing-custom-image-name}" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "name": "myVMosdisk", + "createOption": "FromImage" + } + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "linuxConfiguration": { + "disablePasswordAuthentication": false + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/nsgcustom" + }, + "osDisk": { + "name": "myVMosdisk", + "diskSizeGB": 30, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "caching": "ReadWrite", + "createOption": "FromImage", + "osType": "Linux" + }, + "dataDisks": [] + }, + "vmId": "71aa3d5a-d73d-4970-9182-8580433b2865", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "linuxConfiguration": { + "disablePasswordAuthentication": false + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/nsgcustom" + }, + "osDisk": { + "name": "myVMosdisk", + "diskSizeGB": 30, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "caching": "ReadWrite", + "createOption": "FromImage", + "osType": "Linux" + }, + "dataDisks": [] + }, + "vmId": "71aa3d5a-d73d-4970-9182-8580433b2865", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmFromAGeneralizedSharedImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmFromAGeneralizedSharedImage.json new file mode 100644 index 000000000000..3d6eef823bf3 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmFromAGeneralizedSharedImage.json @@ -0,0 +1,144 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2021-03-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/mySharedGallery/images/mySharedImage" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "name": "myVMosdisk", + "createOption": "FromImage" + } + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "linuxConfiguration": { + "disablePasswordAuthentication": false + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/mySharedGallery/images/mySharedImage" + }, + "osDisk": { + "name": "myVMosdisk", + "diskSizeGB": 30, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "caching": "ReadWrite", + "createOption": "FromImage", + "osType": "Linux" + }, + "dataDisks": [] + }, + "vmId": "71aa3d5a-d73d-4970-9182-8580433b2865", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "linuxConfiguration": { + "disablePasswordAuthentication": false + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/mySharedGallery/images/mySharedImage" + }, + "osDisk": { + "name": "myVMosdisk", + "diskSizeGB": 30, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "caching": "ReadWrite", + "createOption": "FromImage", + "osType": "Linux" + }, + "dataDisks": [] + }, + "vmId": "71aa3d5a-d73d-4970-9182-8580433b2865", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmFromASpecializedSharedImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmFromASpecializedSharedImage.json new file mode 100644 index 000000000000..a05801b0937a --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmFromASpecializedSharedImage.json @@ -0,0 +1,123 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2021-03-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/mySharedGallery/images/mySharedImage" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "name": "myVMosdisk", + "createOption": "FromImage" + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/mySharedGallery/images/mySharedImage" + }, + "osDisk": { + "name": "myVMosdisk", + "diskSizeGB": 30, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "caching": "ReadWrite", + "createOption": "FromImage", + "osType": "Linux" + }, + "dataDisks": [] + }, + "vmId": "71aa3d5a-d73d-4970-9182-8580433b2865", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/mySharedGallery/images/mySharedImage" + }, + "osDisk": { + "name": "myVMosdisk", + "diskSizeGB": 30, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "caching": "ReadWrite", + "createOption": "FromImage", + "osType": "Linux" + }, + "dataDisks": [] + }, + "vmId": "71aa3d5a-d73d-4970-9182-8580433b2865", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmInAVirtualMachineScaleSetWithCustomerAssignedPlatformFaultDomain.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmInAVirtualMachineScaleSetWithCustomerAssignedPlatformFaultDomain.json new file mode 100644 index 000000000000..fdf185a8b808 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmInAVirtualMachineScaleSetWithCustomerAssignedPlatformFaultDomain.json @@ -0,0 +1,165 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2021-03-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "name": "myVMosdisk", + "createOption": "FromImage" + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "virtualMachineScaleSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{existing-flex-vmss-name-with-platformFaultDomainCount-greater-than-1}" + }, + "platformFaultDomain": 1 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "7cce54f2-ecd3-4ddd-a8d9-50984faa3918", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "virtualMachineScaleSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myExistingFlexVmss" + }, + "platformFaultDomain": 1, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "7cce54f2-ecd3-4ddd-a8d9-50984faa3918", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "virtualMachineScaleSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myExistingFlexVmss" + }, + "platformFaultDomain": 1, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmInAnAvailabilitySet.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmInAnAvailabilitySet.json new file mode 100644 index 000000000000..df234833d88a --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmInAnAvailabilitySet.json @@ -0,0 +1,162 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2021-03-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "name": "myVMosdisk", + "createOption": "FromImage" + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "availabilitySet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/availabilitySets/{existing-availability-set-name}" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "b7a098cc-b0b8-46e8-a205-62f301a62a8f", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "availabilitySet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/availabilitySets/NSGEXISTINGAS" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "b7a098cc-b0b8-46e8-a205-62f301a62a8f", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "availabilitySet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/availabilitySets/NSGEXISTINGAS" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmWithADiffOsDisk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmWithADiffOsDisk.json new file mode 100644 index 000000000000..f6d53aad93e7 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmWithADiffOsDisk.json @@ -0,0 +1,177 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2021-03-01", + "parameters": { + "location": "westus", + "plan": { + "publisher": "microsoft-ads", + "product": "windows-data-science-vm", + "name": "windows2016" + }, + "properties": { + "hardwareProfile": { + "vmSize": "Standard_DS1_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "windows2016", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "windows-data-science-vm" + }, + "osDisk": { + "caching": "ReadOnly", + "diffDiskSettings": { + "option": "Local" + }, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "name": "myVMosdisk" + } + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "myVM", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadOnly", + "diffDiskSettings": { + "option": "Local" + }, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "name": "myVMosdisk" + }, + "dataDisks": [] + }, + "vmId": "5c0d55a7-c407-4ed6-bf7d-ddb810267c85", + "hardwareProfile": { + "vmSize": "Standard_DS1_v2" + }, + "provisioningState": "Creating" + }, + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachines", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "location": "westus" + } + }, + "201": { + "body": { + "name": "myVM", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadOnly", + "diffDiskSettings": { + "option": "Local" + }, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "name": "myVMosdisk" + }, + "dataDisks": [] + }, + "vmId": "5c0d55a7-c407-4ed6-bf7d-ddb810267c85", + "hardwareProfile": { + "vmSize": "Standard_DS1_v2" + }, + "provisioningState": "Creating" + }, + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachines", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmWithADiffOsDiskUsingDiffDiskPlacementAsCacheDisk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmWithADiffOsDiskUsingDiffDiskPlacementAsCacheDisk.json new file mode 100644 index 000000000000..ecf20ec9c30c --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmWithADiffOsDiskUsingDiffDiskPlacementAsCacheDisk.json @@ -0,0 +1,180 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2021-03-01", + "parameters": { + "location": "westus", + "plan": { + "publisher": "microsoft-ads", + "product": "windows-data-science-vm", + "name": "windows2016" + }, + "properties": { + "hardwareProfile": { + "vmSize": "Standard_DS1_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "windows2016", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "windows-data-science-vm" + }, + "osDisk": { + "caching": "ReadOnly", + "diffDiskSettings": { + "option": "Local", + "placement": "CacheDisk" + }, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "name": "myVMosdisk" + } + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "myVM", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadOnly", + "diffDiskSettings": { + "option": "Local", + "placement": "CacheDisk" + }, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "name": "myVMosdisk" + }, + "dataDisks": [] + }, + "vmId": "5c0d55a7-c407-4ed6-bf7d-ddb810267c85", + "hardwareProfile": { + "vmSize": "Standard_DS1_v2" + }, + "provisioningState": "Creating" + }, + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachines", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "location": "westus" + } + }, + "201": { + "body": { + "name": "myVM", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadOnly", + "diffDiskSettings": { + "option": "Local", + "placement": "CacheDisk" + }, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "name": "myVMosdisk" + }, + "dataDisks": [] + }, + "vmId": "5c0d55a7-c407-4ed6-bf7d-ddb810267c85", + "hardwareProfile": { + "vmSize": "Standard_DS1_v2" + }, + "provisioningState": "Creating" + }, + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachines", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmWithADiffOsDiskUsingDiffDiskPlacementAsResourceDisk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmWithADiffOsDiskUsingDiffDiskPlacementAsResourceDisk.json new file mode 100644 index 000000000000..47b7931d7e53 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmWithADiffOsDiskUsingDiffDiskPlacementAsResourceDisk.json @@ -0,0 +1,180 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2021-03-01", + "parameters": { + "location": "westus", + "plan": { + "publisher": "microsoft-ads", + "product": "windows-data-science-vm", + "name": "windows2016" + }, + "properties": { + "hardwareProfile": { + "vmSize": "Standard_DS1_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "windows2016", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "windows-data-science-vm" + }, + "osDisk": { + "caching": "ReadOnly", + "diffDiskSettings": { + "option": "Local", + "placement": "ResourceDisk" + }, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "name": "myVMosdisk" + } + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "myVM", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadOnly", + "diffDiskSettings": { + "option": "Local", + "placement": "ResourceDisk" + }, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "name": "myVMosdisk" + }, + "dataDisks": [] + }, + "vmId": "5c0d55a7-c407-4ed6-bf7d-ddb810267c85", + "hardwareProfile": { + "vmSize": "Standard_DS1_v2" + }, + "provisioningState": "Creating" + }, + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachines", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "location": "westus" + } + }, + "201": { + "body": { + "name": "myVM", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadOnly", + "diffDiskSettings": { + "option": "Local", + "placement": "ResourceDisk" + }, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "name": "myVMosdisk" + }, + "dataDisks": [] + }, + "vmId": "5c0d55a7-c407-4ed6-bf7d-ddb810267c85", + "hardwareProfile": { + "vmSize": "Standard_DS1_v2" + }, + "provisioningState": "Creating" + }, + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachines", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmWithAMarketplaceImagePlan.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmWithAMarketplaceImagePlan.json new file mode 100644 index 000000000000..cf0ec79faf5d --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmWithAMarketplaceImagePlan.json @@ -0,0 +1,168 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2021-03-01", + "parameters": { + "location": "westus", + "plan": { + "publisher": "microsoft-ads", + "product": "windows-data-science-vm", + "name": "windows2016" + }, + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "windows2016", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "windows-data-science-vm" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "name": "myVMosdisk", + "createOption": "FromImage" + } + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "myVM", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "5c0d55a7-c407-4ed6-bf7d-ddb810267c85", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachines", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "location": "westus" + } + }, + "201": { + "body": { + "name": "myVM", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "5c0d55a7-c407-4ed6-bf7d-ddb810267c85", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachines", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmWithBootDiagnostics.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmWithBootDiagnostics.json new file mode 100644 index 000000000000..cae9bc2816ba --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmWithBootDiagnostics.json @@ -0,0 +1,171 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2021-03-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "name": "myVMosdisk", + "createOption": "FromImage" + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "diagnosticsProfile": { + "bootDiagnostics": { + "storageUri": "http://{existing-storage-account-name}.blob.core.windows.net", + "enabled": true + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [] + }, + "diagnosticsProfile": { + "bootDiagnostics": { + "storageUri": "http://nsgdiagnostic.blob.core.windows.net", + "enabled": true + } + }, + "vmId": "676420ba-7a24-4bfe-80bd-9c841ee184fa", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [] + }, + "diagnosticsProfile": { + "bootDiagnostics": { + "storageUri": "http://nsgdiagnostic.blob.core.windows.net", + "enabled": true + } + }, + "vmId": "676420ba-7a24-4bfe-80bd-9c841ee184fa", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmWithDiskEncryptionSetResource.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmWithDiskEncryptionSetResource.json new file mode 100644 index 000000000000..d34e71f2943a --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmWithDiskEncryptionSetResource.json @@ -0,0 +1,229 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2021-03-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/{existing-custom-image-name}" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "name": "myVMosdisk", + "createOption": "FromImage" + }, + "dataDisks": [ + { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 0 + }, + { + "caching": "ReadWrite", + "managedDisk": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/{existing-managed-disk-name}", + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "diskSizeGB": 1023, + "createOption": "Attach", + "lun": 1 + } + ] + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "linuxConfiguration": { + "disablePasswordAuthentication": false + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/nsgcustom" + }, + "osDisk": { + "name": "myVMosdisk", + "diskSizeGB": 30, + "managedDisk": { + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskencryptionset-name}" + } + }, + "caching": "ReadWrite", + "createOption": "FromImage", + "osType": "Linux" + }, + "dataDisks": [ + { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 0 + }, + { + "caching": "ReadWrite", + "managedDisk": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/{existing-managed-disk-name}", + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "diskSizeGB": 1023, + "createOption": "Attach", + "lun": 1 + } + ] + }, + "vmId": "71aa3d5a-d73d-4970-9182-8580433b2865", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "linuxConfiguration": { + "disablePasswordAuthentication": false + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/nsgcustom" + }, + "osDisk": { + "name": "myVMosdisk", + "diskSizeGB": 30, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "caching": "ReadWrite", + "createOption": "FromImage", + "osType": "Linux" + }, + "dataDisks": [ + { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 0 + }, + { + "caching": "ReadWrite", + "managedDisk": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/{existing-managed-disk-name}", + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "diskSizeGB": 1023, + "createOption": "Attach", + "lun": 1 + } + ] + }, + "vmId": "71aa3d5a-d73d-4970-9182-8580433b2865", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmWithEmptyDataDisks.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmWithEmptyDataDisks.json new file mode 100644 index 000000000000..406d0ef3b854 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmWithEmptyDataDisks.json @@ -0,0 +1,205 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2021-03-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D2_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "name": "myVMosdisk", + "createOption": "FromImage" + }, + "dataDisks": [ + { + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 0 + }, + { + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 1 + } + ] + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [ + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 0, + "diskSizeGB": 1023 + }, + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 1, + "diskSizeGB": 1023 + } + ] + }, + "vmId": "3906fef9-a1e5-4b83-a8a8-540858b41df0", + "hardwareProfile": { + "vmSize": "Standard_D2_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [ + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 0, + "diskSizeGB": 1023, + "toBeDetached": false + }, + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 1, + "diskSizeGB": 1023, + "toBeDetached": false + } + ] + }, + "vmId": "3906fef9-a1e5-4b83-a8a8-540858b41df0", + "hardwareProfile": { + "vmSize": "Standard_D2_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmWithEncryptionAtHost.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmWithEncryptionAtHost.json new file mode 100644 index 000000000000..304b430f7256 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmWithEncryptionAtHost.json @@ -0,0 +1,177 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2021-03-01", + "parameters": { + "location": "westus", + "plan": { + "publisher": "microsoft-ads", + "product": "windows-data-science-vm", + "name": "windows2016" + }, + "properties": { + "hardwareProfile": { + "vmSize": "Standard_DS1_v2" + }, + "securityProfile": { + "encryptionAtHost": true + }, + "storageProfile": { + "imageReference": { + "sku": "windows2016", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "windows-data-science-vm" + }, + "osDisk": { + "caching": "ReadOnly", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "name": "myVMosdisk" + } + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "myVM", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadOnly", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "name": "myVMosdisk" + }, + "dataDisks": [] + }, + "securityProfile": { + "encryptionAtHost": true + }, + "vmId": "5c0d55a7-c407-4ed6-bf7d-ddb810267c85", + "hardwareProfile": { + "vmSize": "Standard_DS1_v2" + }, + "provisioningState": "Creating" + }, + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachines", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "location": "westus" + } + }, + "201": { + "body": { + "name": "myVM", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadOnly", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "name": "myVMosdisk" + }, + "dataDisks": [] + }, + "securityProfile": { + "encryptionAtHost": true + }, + "vmId": "5c0d55a7-c407-4ed6-bf7d-ddb810267c85", + "hardwareProfile": { + "vmSize": "Standard_DS1_v2" + }, + "provisioningState": "Creating" + }, + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachines", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmWithExtensionsTimeBudget.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmWithExtensionsTimeBudget.json new file mode 100644 index 000000000000..c30021310573 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmWithExtensionsTimeBudget.json @@ -0,0 +1,174 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2021-03-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "name": "myVMosdisk", + "createOption": "FromImage" + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "diagnosticsProfile": { + "bootDiagnostics": { + "storageUri": "http://{existing-storage-account-name}.blob.core.windows.net", + "enabled": true + } + }, + "extensionsTimeBudget": "PT30M" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [] + }, + "diagnosticsProfile": { + "bootDiagnostics": { + "storageUri": "http://nsgdiagnostic.blob.core.windows.net", + "enabled": true + } + }, + "vmId": "676420ba-7a24-4bfe-80bd-9c841ee184fa", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "extensionsTimeBudget": "PT30M", + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [] + }, + "diagnosticsProfile": { + "bootDiagnostics": { + "storageUri": "http://nsgdiagnostic.blob.core.windows.net", + "enabled": true + } + }, + "vmId": "676420ba-7a24-4bfe-80bd-9c841ee184fa", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "extensionsTimeBudget": "PT30M", + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmWithManagedBootDiagnostics.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmWithManagedBootDiagnostics.json new file mode 100644 index 000000000000..c4034613d6f7 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmWithManagedBootDiagnostics.json @@ -0,0 +1,168 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2021-03-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "name": "myVMosdisk", + "createOption": "FromImage" + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "diagnosticsProfile": { + "bootDiagnostics": { + "enabled": true + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [] + }, + "diagnosticsProfile": { + "bootDiagnostics": { + "enabled": true + } + }, + "vmId": "676420ba-7a24-4bfe-80bd-9c841ee184fa", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [] + }, + "diagnosticsProfile": { + "bootDiagnostics": { + "enabled": true + } + }, + "vmId": "676420ba-7a24-4bfe-80bd-9c841ee184fa", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmWithNetworkInterfaceConfiguration.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmWithNetworkInterfaceConfiguration.json new file mode 100644 index 000000000000..75cb4f765ab2 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmWithNetworkInterfaceConfiguration.json @@ -0,0 +1,174 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2021-03-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "name": "myVMosdisk", + "createOption": "FromImage" + } + }, + "networkProfile": { + "networkApiVersion": "2020-11-01", + "networkInterfaceConfigurations": [ + { + "name": "{nic-config-name}", + "properties": { + "primary": true, + "deleteOption": "Delete", + "ipConfigurations": [ + { + "name": "{ip-config-name}", + "properties": { + "primary": true, + "publicIPAddressConfiguration": { + "name": "{publicIP-config-name}", + "sku": { + "publicIPAddressSkuName": "Basic", + "publicIPAddressSkuTier": "Global" + }, + "properties": { + "deleteOption": "Detach", + "publicIPAllocationMethod": "Static" + } + } + } + } + ] + } + } + ] + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/toBeCreatedNetworkInterface", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "b7a098cc-b0b8-46e8-a205-62f301a62a8f", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/toBeCreatedNetworkInterface", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "b7a098cc-b0b8-46e8-a205-62f301a62a8f", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmWithPasswordAuthentication.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmWithPasswordAuthentication.json new file mode 100644 index 000000000000..8aef0f02a149 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmWithPasswordAuthentication.json @@ -0,0 +1,153 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2021-03-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "name": "myVMosdisk", + "createOption": "FromImage" + } + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "b248db33-62ba-4d2d-b791-811e075ee0f5", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "b248db33-62ba-4d2d-b791-811e075ee0f5", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmWithPremiumStorage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmWithPremiumStorage.json new file mode 100644 index 000000000000..cfb38698394f --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmWithPremiumStorage.json @@ -0,0 +1,153 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2021-03-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Premium_LRS" + }, + "name": "myVMosdisk", + "createOption": "FromImage" + } + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Premium_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "a149cd25-409f-41af-8088-275f5486bc93", + "hardwareProfile": { + "vmSize": "Standard_DS1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Premium_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "a149cd25-409f-41af-8088-275f5486bc93", + "hardwareProfile": { + "vmSize": "Standard_DS1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmWithScheduledEventsProfile.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmWithScheduledEventsProfile.json new file mode 100644 index 000000000000..0a117902f077 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmWithScheduledEventsProfile.json @@ -0,0 +1,189 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2021-03-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "name": "myVMosdisk", + "createOption": "FromImage" + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "diagnosticsProfile": { + "bootDiagnostics": { + "storageUri": "http://{existing-storage-account-name}.blob.core.windows.net", + "enabled": true + } + }, + "scheduledEventsProfile": { + "terminateNotificationProfile": { + "notBeforeTimeout": "PT10M", + "enable": true + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [] + }, + "diagnosticsProfile": { + "bootDiagnostics": { + "storageUri": "http://nsgdiagnostic.blob.core.windows.net", + "enabled": true + } + }, + "vmId": "676420ba-7a24-4bfe-80bd-9c841ee184fa", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "scheduledEventsProfile": { + "terminateNotificationProfile": { + "notBeforeTimeout": "PT10M", + "enable": true + } + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [] + }, + "diagnosticsProfile": { + "bootDiagnostics": { + "storageUri": "http://nsgdiagnostic.blob.core.windows.net", + "enabled": true + } + }, + "vmId": "676420ba-7a24-4bfe-80bd-9c841ee184fa", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "scheduledEventsProfile": { + "terminateNotificationProfile": { + "notBeforeTimeout": "PT10M", + "enable": true + } + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmWithSshAuthentication.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmWithSshAuthentication.json new file mode 100644 index 000000000000..b735f88f551f --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmWithSshAuthentication.json @@ -0,0 +1,177 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2021-03-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "{image_sku}", + "publisher": "{image_publisher}", + "version": "latest", + "offer": "{image_offer}" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "name": "myVMosdisk", + "createOption": "FromImage" + } + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "linuxConfiguration": { + "ssh": { + "publicKeys": [ + { + "path": "/home/{your-username}/.ssh/authorized_keys", + "keyData": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCeClRAk2ipUs/l5voIsDC5q9RI+YSRd1Bvd/O+axgY4WiBzG+4FwJWZm/mLLe5DoOdHQwmU2FrKXZSW4w2sYE70KeWnrFViCOX5MTVvJgPE8ClugNl8RWth/tU849DvM9sT7vFgfVSHcAS2yDRyDlueii+8nF2ym8XWAPltFVCyLHRsyBp5YPqK8JFYIa1eybKsY3hEAxRCA+/7bq8et+Gj3coOsuRmrehav7rE6N12Pb80I6ofa6SM5XNYq4Xk0iYNx7R3kdz0Jj9XgZYWjAHjJmT0gTRoOnt6upOuxK7xI/ykWrllgpXrCPu3Ymz+c+ujaqcxDopnAl2lmf69/J1" + } + ] + }, + "disablePasswordAuthentication": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "linuxConfiguration": { + "ssh": { + "publicKeys": [ + { + "path": "/home/{your-username}/.ssh/authorized_keys", + "keyData": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCeClRAk2ipUs/l5voIsDC5q9RI+YSRd1Bvd/O+axgY4WiBzG+4FwJWZm/mLLe5DoOdHQwmU2FrKXZSW4w2sYE70KeWnrFViCOX5MTVvJgPE8ClugNl8RWth/tU849DvM9sT7vFgfVSHcAS2yDRyDlueii+8nF2ym8XWAPltFVCyLHRsyBp5YPqK8JFYIa1eybKsY3hEAxRCA+/7bq8et+Gj3coOsuRmrehav7rE6N12Pb80I6ofa6SM5XNYq4Xk0iYNx7R3kdz0Jj9XgZYWjAHjJmT0gTRoOnt6upOuxK7xI/ykWrllgpXrCPu3Ymz+c+ujaqcxDopnAl2lmf69/J1" + } + ] + }, + "disablePasswordAuthentication": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "16.04-LTS", + "publisher": "Canonical", + "version": "latest", + "offer": "UbuntuServer" + }, + "osDisk": { + "osType": "Linux", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "e0de9b84-a506-4b95-9623-00a425d05c90", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "linuxConfiguration": { + "ssh": { + "publicKeys": [ + { + "path": "/home/{your-username}/.ssh/authorized_keys", + "keyData": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCeClRAk2ipUs/l5voIsDC5q9RI+YSRd1Bvd/O+axgY4WiBzG+4FwJWZm/mLLe5DoOdHQwmU2FrKXZSW4w2sYE70KeWnrFViCOX5MTVvJgPE8ClugNl8RWth/tU849DvM9sT7vFgfVSHcAS2yDRyDlueii+8nF2ym8XWAPltFVCyLHRsyBp5YPqK8JFYIa1eybKsY3hEAxRCA+/7bq8et+Gj3coOsuRmrehav7rE6N12Pb80I6ofa6SM5XNYq4Xk0iYNx7R3kdz0Jj9XgZYWjAHjJmT0gTRoOnt6upOuxK7xI/ykWrllgpXrCPu3Ymz+c+ujaqcxDopnAl2lmf69/J1" + } + ] + }, + "disablePasswordAuthentication": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "16.04-LTS", + "publisher": "Canonical", + "version": "latest", + "offer": "UbuntuServer" + }, + "osDisk": { + "osType": "Linux", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "e0de9b84-a506-4b95-9623-00a425d05c90", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmWithUefiSettings.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmWithUefiSettings.json new file mode 100644 index 000000000000..5cd06ed6c09a --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAVmWithUefiSettings.json @@ -0,0 +1,174 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2021-03-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D2s_v3" + }, + "securityProfile": { + "uefiSettings": { + "secureBootEnabled": true, + "vTpmEnabled": true + }, + "securityType": "TrustedLaunch" + }, + "storageProfile": { + "imageReference": { + "sku": "windows10-tvm", + "publisher": "MicrosoftWindowsServer", + "version": "18363.592.2001092016", + "offer": "windowsserver-gen2preview-preview" + }, + "osDisk": { + "caching": "ReadOnly", + "managedDisk": { + "storageAccountType": "StandardSSD_LRS" + }, + "createOption": "FromImage", + "name": "myVMosdisk" + } + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "myVM", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "windows10-tvm", + "publisher": "MicrosoftWindowsServer", + "version": "18363.592.2001092016", + "offer": "windowsserver-gen2preview-preview" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadOnly", + "managedDisk": { + "storageAccountType": "StandardSSD_LRS" + }, + "createOption": "FromImage", + "name": "myVMosdisk" + }, + "dataDisks": [] + }, + "securityProfile": { + "uefiSettings": { + "secureBootEnabled": true, + "vTpmEnabled": true + }, + "securityType": "TrustedLaunch" + }, + "vmId": "5c0d55a7-c407-4ed6-bf7d-ddb810267c85", + "hardwareProfile": { + "vmSize": "Standard_D2s_v3" + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/virtualMachines", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "location": "westus" + } + }, + "201": { + "body": { + "name": "myVM", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "windows10-tvm", + "publisher": "MicrosoftWindowsServer", + "version": "18363.592.2001092016", + "offer": "windowsserver-gen2preview-preview" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadOnly", + "managedDisk": { + "storageAccountType": "StandardSSD_LRS" + }, + "createOption": "FromImage", + "name": "myVMosdisk" + }, + "dataDisks": [] + }, + "securityProfile": { + "uefiSettings": { + "secureBootEnabled": true, + "vTpmEnabled": true + }, + "securityType": "TrustedLaunch" + }, + "vmId": "5c0d55a7-c407-4ed6-bf7d-ddb810267c85", + "hardwareProfile": { + "vmSize": "Standard_D2s_v3" + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/virtualMachines", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAWindowsVmWithPatchSettingAssessmentModeOfImageDefault.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAWindowsVmWithPatchSettingAssessmentModeOfImageDefault.json new file mode 100644 index 000000000000..fcff98e4cbf8 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAWindowsVmWithPatchSettingAssessmentModeOfImageDefault.json @@ -0,0 +1,166 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2021-03-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Premium_LRS" + }, + "name": "myVMosdisk", + "createOption": "FromImage" + } + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true, + "patchSettings": { + "assessmentMode": "ImageDefault" + } + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true, + "patchSettings": { + "assessmentMode": "ImageDefault" + } + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Premium_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "a149cd25-409f-41af-8088-275f5486bc93", + "hardwareProfile": { + "vmSize": "Standard_DS1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": false, + "patchSettings": { + "assessmentMode": "ImageDefault" + } + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Premium_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "a149cd25-409f-41af-8088-275f5486bc93", + "hardwareProfile": { + "vmSize": "Standard_DS1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAWindowsVmWithPatchSettingModeOfAutomaticByOS.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAWindowsVmWithPatchSettingModeOfAutomaticByOS.json new file mode 100644 index 000000000000..fad6a4470f1b --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAWindowsVmWithPatchSettingModeOfAutomaticByOS.json @@ -0,0 +1,166 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2021-03-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Premium_LRS" + }, + "name": "myVMosdisk", + "createOption": "FromImage" + } + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true, + "patchSettings": { + "patchMode": "AutomaticByOS" + } + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true, + "patchSettings": { + "patchMode": "AutomaticByOS" + } + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Premium_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "a149cd25-409f-41af-8088-275f5486bc93", + "hardwareProfile": { + "vmSize": "Standard_DS1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true, + "patchSettings": { + "patchMode": "AutomaticByOS" + } + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Premium_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "a149cd25-409f-41af-8088-275f5486bc93", + "hardwareProfile": { + "vmSize": "Standard_DS1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAWindowsVmWithPatchSettingModeOfAutomaticByPlatformAndEnableHotPatchingTrue.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAWindowsVmWithPatchSettingModeOfAutomaticByPlatformAndEnableHotPatchingTrue.json new file mode 100644 index 000000000000..63bbeb50181e --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAWindowsVmWithPatchSettingModeOfAutomaticByPlatformAndEnableHotPatchingTrue.json @@ -0,0 +1,169 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2020-06-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Premium_LRS" + }, + "name": "myVMosdisk", + "createOption": "FromImage" + } + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true, + "patchSettings": { + "patchMode": "AutomaticByPlatform", + "enableHotpatching": true + } + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true, + "patchSettings": { + "patchMode": "AutomaticByPlatform", + "enableHotpatching": true + } + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Premium_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "a149cd25-409f-41af-8088-275f5486bc93", + "hardwareProfile": { + "vmSize": "Standard_DS1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true, + "patchSettings": { + "patchMode": "AutomaticByPlatform", + "enableHotpatching": true + } + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Premium_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "a149cd25-409f-41af-8088-275f5486bc93", + "hardwareProfile": { + "vmSize": "Standard_DS1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAWindowsVmWithPatchSettingModeOfManual.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAWindowsVmWithPatchSettingModeOfManual.json new file mode 100644 index 000000000000..d6f3b3da0b93 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAWindowsVmWithPatchSettingModeOfManual.json @@ -0,0 +1,166 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2021-03-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Premium_LRS" + }, + "name": "myVMosdisk", + "createOption": "FromImage" + } + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true, + "patchSettings": { + "patchMode": "Manual" + } + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true, + "patchSettings": { + "patchMode": "Manual" + } + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Premium_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "a149cd25-409f-41af-8088-275f5486bc93", + "hardwareProfile": { + "vmSize": "Standard_DS1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": false, + "patchSettings": { + "patchMode": "Manual" + } + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Premium_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "a149cd25-409f-41af-8088-275f5486bc93", + "hardwareProfile": { + "vmSize": "Standard_DS1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAWindowsVmWithPatchSettingModesOfAutomaticByPlatform.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAWindowsVmWithPatchSettingModesOfAutomaticByPlatform.json new file mode 100644 index 000000000000..cfcdbaf8bd7d --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAWindowsVmWithPatchSettingModesOfAutomaticByPlatform.json @@ -0,0 +1,169 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2021-03-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Premium_LRS" + }, + "name": "myVMosdisk", + "createOption": "FromImage" + } + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true, + "patchSettings": { + "patchMode": "AutomaticByPlatform", + "assessmentMode": "AutomaticByPlatform" + } + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true, + "patchSettings": { + "patchMode": "AutomaticByPlatform", + "assessmentMode": "AutomaticByPlatform" + } + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Premium_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "a149cd25-409f-41af-8088-275f5486bc93", + "hardwareProfile": { + "vmSize": "Standard_DS1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true, + "patchSettings": { + "patchMode": "AutomaticByPlatform", + "assessmentMode": "AutomaticByPlatform" + } + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Premium_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "a149cd25-409f-41af-8088-275f5486bc93", + "hardwareProfile": { + "vmSize": "Standard_DS1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAnAvailabilitySet.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAnAvailabilitySet.json new file mode 100644 index 000000000000..b6886857c627 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAnAvailabilitySet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-01", + "availabilitySetName": "myAvailabilitySet", + "parameters": { + "location": "westus", + "properties": { + "platformFaultDomainCount": 2, + "platformUpdateDomainCount": 20 + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "Classic" + }, + "name": "myAvailabilitySet", + "properties": { + "platformFaultDomainCount": 2, + "platformUpdateDomainCount": 20 + }, + "location": "westus", + "type": "Microsoft.Compute/availabilitySets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/availabilitySets/myAvailabilitySet" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAnImageFromABlob.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAnImageFromABlob.json new file mode 100644 index 000000000000..5b4466dff562 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAnImageFromABlob.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-01", + "imageName": "myImage", + "parameters": { + "location": "West US", + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "osState": "Generalized" + }, + "zoneResilient": true + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "osState": "Generalized", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "caching": "ReadWrite" + }, + "dataDisks": [], + "zoneResilient": true + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + }, + "201": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "osState": "Generalized", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "caching": "ReadWrite" + }, + "dataDisks": [], + "zoneResilient": true + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAnImageFromABlobWithDiskEncryptionSet.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAnImageFromABlobWithDiskEncryptionSet.json new file mode 100644 index 000000000000..fa4af00fae4e --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAnImageFromABlobWithDiskEncryptionSet.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-01", + "imageName": "myImage", + "parameters": { + "location": "West US", + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + }, + "osState": "Generalized" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "osState": "Generalized", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + }, + "caching": "ReadWrite" + }, + "dataDisks": [] + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + }, + "201": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "osState": "Generalized", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + }, + "caching": "ReadWrite" + }, + "dataDisks": [] + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAnImageFromAManagedDisk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAnImageFromAManagedDisk.json new file mode 100644 index 000000000000..dff16bda6e02 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAnImageFromAManagedDisk.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-01", + "imageName": "myImage", + "parameters": { + "location": "West US", + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "managedDisk": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk" + }, + "osState": "Generalized" + }, + "zoneResilient": true + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "managedDisk": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk" + }, + "osState": "Generalized", + "caching": "ReadWrite" + }, + "dataDisks": [], + "zoneResilient": true + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + }, + "201": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "managedDisk": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk" + }, + "osState": "Generalized", + "caching": "ReadWrite" + }, + "dataDisks": [], + "zoneResilient": true + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAnImageFromAManagedDiskWithDiskEncryptionSet.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAnImageFromAManagedDiskWithDiskEncryptionSet.json new file mode 100644 index 000000000000..b7c1ce411fa6 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAnImageFromAManagedDiskWithDiskEncryptionSet.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-01", + "imageName": "myImage", + "parameters": { + "location": "West US", + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "managedDisk": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk" + }, + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + }, + "osState": "Generalized" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "managedDisk": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk" + }, + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + }, + "osState": "Generalized", + "caching": "ReadWrite" + }, + "dataDisks": [] + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + }, + "201": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "managedDisk": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk" + }, + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + }, + "osState": "Generalized", + "caching": "ReadWrite" + }, + "dataDisks": [] + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAnImageFromASnapshot.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAnImageFromASnapshot.json new file mode 100644 index 000000000000..e5e7fc71a2a4 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAnImageFromASnapshot.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-01", + "imageName": "myImage", + "parameters": { + "location": "West US", + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "snapshot": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + }, + "osState": "Generalized" + }, + "zoneResilient": false + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "snapshot": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + }, + "osState": "Generalized", + "caching": "ReadWrite" + }, + "dataDisks": [], + "zoneResilient": false + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + }, + "201": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "snapshot": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + }, + "osState": "Generalized", + "caching": "ReadWrite" + }, + "dataDisks": [], + "zoneResilient": false + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAnImageFromASnapshotWithDiskEncryptionSet.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAnImageFromASnapshotWithDiskEncryptionSet.json new file mode 100644 index 000000000000..b28aeeca150c --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAnImageFromASnapshotWithDiskEncryptionSet.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-01", + "imageName": "myImage", + "parameters": { + "location": "West US", + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "snapshot": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + }, + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + }, + "osState": "Generalized" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "snapshot": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + }, + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + }, + "osState": "Generalized", + "caching": "ReadWrite" + }, + "dataDisks": [] + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + }, + "201": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "snapshot": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + }, + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + }, + "osState": "Generalized", + "caching": "ReadWrite" + }, + "dataDisks": [] + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAnImageFromAVM.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAnImageFromAVM.json new file mode 100644 index 000000000000..df8ddde51490 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAnImageFromAVM.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-01", + "imageName": "myImage", + "parameters": { + "location": "West US", + "properties": { + "sourceVirtualMachine": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM" + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "sourceVirtualMachine": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM" + }, + "storageProfile": { + "osDisk": { + "osType": "Linux", + "osState": "Generalized", + "managedDisk": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myVM_OsDisk_1_6dc293b7d811433196903acf92665022" + }, + "caching": "ReadWrite" + }, + "dataDisks": [], + "zoneResilient": false + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + }, + "201": { + "body": { + "properties": { + "sourceVirtualMachine": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM" + }, + "storageProfile": { + "osDisk": { + "osType": "Linux", + "osState": "Generalized", + "managedDisk": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myVM_OsDisk_1_6dc293b7d811433196903acf92665022" + }, + "caching": "ReadWrite" + }, + "dataDisks": [], + "zoneResilient": false + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAnImageThatIncludesADataDiskFromABlob.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAnImageThatIncludesADataDiskFromABlob.json new file mode 100644 index 000000000000..87ed27dd9137 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAnImageThatIncludesADataDiskFromABlob.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-01", + "imageName": "myImage", + "parameters": { + "location": "West US", + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "osState": "Generalized" + }, + "dataDisks": [ + { + "lun": 1, + "blobUri": "https://mystorageaccount.blob.core.windows.net/dataimages/dataimage.vhd" + } + ], + "zoneResilient": false + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "osState": "Generalized", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "caching": "ReadWrite" + }, + "dataDisks": [ + { + "lun": 1, + "blobUri": "https://mystorageaccount.blob.core.windows.net/dataimages/dataimage.vhd" + } + ], + "zoneResilient": false + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + }, + "201": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "osState": "Generalized", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "caching": "ReadWrite" + }, + "dataDisks": [ + { + "lun": 1, + "blobUri": "https://mystorageaccount.blob.core.windows.net/dataimages/dataimage.vhd" + } + ], + "zoneResilient": false + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAnImageThatIncludesADataDiskFromAManagedDisk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAnImageThatIncludesADataDiskFromAManagedDisk.json new file mode 100644 index 000000000000..27fc3c4006dc --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAnImageThatIncludesADataDiskFromAManagedDisk.json @@ -0,0 +1,93 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-01", + "imageName": "myImage", + "parameters": { + "location": "West US", + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "managedDisk": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk" + }, + "osState": "Generalized" + }, + "dataDisks": [ + { + "lun": 1, + "managedDisk": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk2" + } + } + ], + "zoneResilient": false + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "managedDisk": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk" + }, + "osState": "Generalized", + "caching": "ReadWrite" + }, + "dataDisks": [ + { + "lun": 1, + "managedDisk": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk2" + } + } + ], + "zoneResilient": false + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + }, + "201": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "managedDisk": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk" + }, + "osState": "Generalized", + "caching": "ReadWrite" + }, + "dataDisks": [ + { + "lun": 1, + "managedDisk": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk2" + } + } + ], + "zoneResilient": false + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAnImageThatIncludesADataDiskFromASnapshot.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAnImageThatIncludesADataDiskFromASnapshot.json new file mode 100644 index 000000000000..9f5ed2a8bf0c --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAnImageThatIncludesADataDiskFromASnapshot.json @@ -0,0 +1,93 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-01", + "imageName": "myImage", + "parameters": { + "location": "West US", + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "snapshot": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + }, + "osState": "Generalized" + }, + "dataDisks": [ + { + "lun": 1, + "snapshot": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2" + } + } + ], + "zoneResilient": true + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "snapshot": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + }, + "osState": "Generalized", + "caching": "ReadWrite" + }, + "dataDisks": [ + { + "lun": 1, + "snapshot": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2" + } + } + ], + "zoneResilient": true + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + }, + "201": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "snapshot": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + }, + "osState": "Generalized", + "caching": "ReadWrite" + }, + "dataDisks": [ + { + "lun": 1, + "snapshot": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2" + } + } + ], + "zoneResilient": true + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAnSshPublicKey.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAnSshPublicKey.json new file mode 100644 index 000000000000..78d0c61c4a31 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateAnSshPublicKey.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-01", + "sshPublicKeyName": "mySshPublicKeyName", + "parameters": { + "location": "westus", + "properties": { + "publicKey": "{ssh-rsa public key}" + } + } + }, + "responses": { + "200": { + "body": { + "name": "mySshPublicKeyName", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/sshPublicKeys/mySshPublicKeyName", + "properties": { + "publicKey": "{ssh-rsa public key}" + } + } + }, + "201": { + "body": { + "name": "mySshPublicKeyName", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/sshPublicKeys/mySshPublicKeyName", + "properties": { + "publicKey": "{ssh-rsa public key}" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateOrUpdateADedicatedHost.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateOrUpdateADedicatedHost.json new file mode 100644 index 000000000000..be99526847e4 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateOrUpdateADedicatedHost.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-10-01", + "parameters": { + "location": "westus", + "tags": { + "department": "HR" + }, + "properties": { + "platformFaultDomain": 1 + }, + "sku": { + "name": "DSv3-Type1" + } + }, + "hostGroupName": "myDedicatedHostGroup", + "hostName": "myDedicatedHost" + }, + "responses": { + "201": { + "body": { + "name": "myDedicatedHost", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/HostGroups/myDedicatedHostGroup/hosts/myDedicatedHost", + "tags": { + "department": "HR" + }, + "sku": { + "name": "DSv3-Type1" + }, + "properties": { + "platformFaultDomain": 1, + "autoReplaceOnFailure": true, + "hostId": "{GUID}" + } + } + }, + "200": { + "body": { + "properties": { + "platformFaultDomain": 1, + "autoReplaceOnFailure": false, + "licenseType": "Windows_Server_Hybrid", + "hostId": "{GUID}" + }, + "location": "westus", + "tags": { + "department": "HR" + }, + "name": "myDedicatedHost", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/HostGroups/myDedicatedHostGroup/hosts/myDedicatedHost", + "sku": { + "name": "DSv3-Type1" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateOrUpdateADedicatedHostGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateOrUpdateADedicatedHostGroup.json new file mode 100644 index 000000000000..09004ff33237 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateOrUpdateADedicatedHostGroup.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-01", + "hostGroupName": "myDedicatedHostGroup", + "parameters": { + "location": "westus", + "tags": { + "department": "finance" + }, + "zones": [ + "1" + ], + "properties": { + "platformFaultDomainCount": 3, + "supportAutomaticPlacement": true + } + } + }, + "responses": { + "201": { + "body": { + "name": "myDedicatedHostGroup", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/HostGroups/myDedicatedHostGroup", + "tags": { + "department": "finance" + }, + "zones": [ + "1" + ], + "properties": { + "platformFaultDomainCount": 3, + "supportAutomaticPlacement": true + } + } + }, + "200": { + "body": { + "properties": { + "platformFaultDomainCount": 3, + "supportAutomaticPlacement": true + }, + "location": "westus", + "tags": { + "department": "finance", + "owner": "myCompany" + }, + "name": "myDedicatedHostGroup", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/HostGroups/myDedicatedHostGroup", + "zones": [ + "1" + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateOrUpdateAProximityPlacementGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateOrUpdateAProximityPlacementGroup.json new file mode 100644 index 000000000000..d948ce838bdf --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateOrUpdateAProximityPlacementGroup.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-01", + "proximityPlacementGroupName": "myProximityPlacementGroup", + "parameters": { + "location": "westus", + "properties": { + "proximityPlacementGroupType": "Standard" + } + } + }, + "responses": { + "200": { + "body": { + "name": "myProximityPlacementGroup", + "properties": { + "proximityPlacementGroupType": "Standard" + }, + "location": "westus", + "type": "Microsoft.Compute/proximityPlacementGroups", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/proximityPlacementGroups/myProximityPlacementGroup" + } + }, + "201": { + "body": { + "name": "myProximityPlacementGroup", + "properties": { + "proximityPlacementGroupType": "Standard" + }, + "location": "westus", + "type": "Microsoft.Compute/proximityPlacementGroups", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/proximityPlacementGroups/myProximityPlacementGroup" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateOrUpdateARestorePointCollection.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateOrUpdateARestorePointCollection.json new file mode 100644 index 000000000000..b073df954152 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateOrUpdateARestorePointCollection.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "restorePointCollectionName": "myRpc", + "api-version": "2021-03-01", + "parameters": { + "location": "norwayeast", + "properties": { + "source": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM" + } + }, + "tags": { + "myTag1": "tagValue1" + } + } + }, + "responses": { + "200": { + "body": { + "name": "myRpc", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/myRpc", + "type": "Microsoft.Compute/restorePointCollections", + "location": "norwayeast", + "tags": { + "myTag1": "tagValue1" + }, + "properties": { + "source": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "location": "eastus" + }, + "restorePointCollectionId": "638f052b-a7c2-450c-89e7-6a3b8f1d6a7c", + "provisioningState": "Successful" + } + } + }, + "201": { + "body": { + "name": "myRpc", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/myRpc", + "type": "Microsoft.Compute/restorePointCollections", + "location": "norwayeast", + "tags": { + "myTag1": "tagValue1" + }, + "properties": { + "source": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "location": "eastus" + }, + "restorePointCollectionId": "638f052b-a7c2-450c-89e7-6a3b8f1d6a7c", + "provisioningState": "Successful" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateOrUpdateAScaleSetWithUserData.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateOrUpdateAScaleSetWithUserData.json new file mode 100644 index 000000000000..36638bf047b3 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateOrUpdateAScaleSetWithUserData.json @@ -0,0 +1,228 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2021-03-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "upgradePolicy": { + "mode": "Manual" + }, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "userData": "RXhhbXBsZSBVc2VyRGF0YQ==", + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "diagnosticsProfile": { + "bootDiagnostics": { + "storageUri": "http://nsgdiagnostic.blob.core.windows.net", + "enabled": true + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "diagnosticsProfile": { + "bootDiagnostics": { + "storageUri": "http://nsgdiagnostic.blob.core.windows.net", + "enabled": true + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateOrUpdateAVmWithUserData.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateOrUpdateAVmWithUserData.json new file mode 100644 index 000000000000..1d5a128c007c --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateOrUpdateAVmWithUserData.json @@ -0,0 +1,172 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "{vm-name}", + "api-version": "2021-03-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "name": "vmOSdisk", + "createOption": "FromImage" + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "{vm-name}", + "adminPassword": "{your-password}" + }, + "diagnosticsProfile": { + "bootDiagnostics": { + "storageUri": "http://{existing-storage-account-name}.blob.core.windows.net", + "enabled": true + } + }, + "userData": "RXhhbXBsZSBVc2VyRGF0YQ==" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/{vm-name}", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "{vm-name}", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "vmOSdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [] + }, + "diagnosticsProfile": { + "bootDiagnostics": { + "storageUri": "http://nsgdiagnostic.blob.core.windows.net", + "enabled": true + } + }, + "vmId": "676420ba-7a24-4bfe-80bd-9c841ee184fa", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "{vm-name}", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/{vm-name}", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "{vm-name}", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "vmOSdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [] + }, + "diagnosticsProfile": { + "bootDiagnostics": { + "storageUri": "http://nsgdiagnostic.blob.core.windows.net", + "enabled": true + } + }, + "vmId": "676420ba-7a24-4bfe-80bd-9c841ee184fa", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "{vm-name}", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateOrUpdateRunCommand.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateOrUpdateRunCommand.json new file mode 100644 index 000000000000..d79faf7ba790 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateOrUpdateRunCommand.json @@ -0,0 +1,95 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "runCommandName": "myRunCommand", + "api-version": "2021-03-01", + "runCommand": { + "location": "West US", + "properties": { + "source": { + "script": "Write-Host Hello World!" + }, + "parameters": [ + { + "name": "param1", + "value": "value1" + }, + { + "name": "param2", + "value": "value2" + } + ], + "asyncExecution": false, + "runAsUser": "user1", + "runAsPassword": "", + "timeoutInSeconds": 3600 + } + } + }, + "responses": { + "200": { + "body": { + "name": "myRunCommand", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM/runCommands/myRunCommand", + "type": "Microsoft.Compute/virtualMachines/runCommands", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "source": { + "script": "Write-Host Hello World!" + }, + "parameters": [ + { + "name": "param1", + "value": "value1" + }, + { + "name": "param2", + "value": "value2" + } + ], + "asyncExecution": false, + "runAsUser": "user1", + "timeoutInSeconds": 3600, + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "name": "myRunCommand", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM/runCommands/myRunCommand", + "type": "Microsoft.Compute/virtualMachines/runCommands", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "source": { + "script": "Write-Host Hello World!" + }, + "parameters": [ + { + "name": "param1", + "value": "value1" + }, + { + "name": "param2", + "value": "value2" + } + ], + "asyncExecution": false, + "runAsUser": "user1", + "timeoutInSeconds": 3600, + "provisioningState": "Creating" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateOrUpdateVirtualMachineScaleSetVMExtensions.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateOrUpdateVirtualMachineScaleSetVMExtensions.json new file mode 100644 index 000000000000..6b1e025380fd --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateOrUpdateVirtualMachineScaleSetVMExtensions.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "myvmScaleSet", + "instanceId": "0", + "vmExtensionName": "myVMExtension", + "api-version": "2021-03-01", + "extensionParameters": { + "properties": { + "autoUpgradeMinorVersion": true, + "publisher": "extPublisher", + "type": "extType", + "typeHandlerVersion": "1.2", + "settings": { + "UserName": "xyz@microsoft.com" + } + } + } + }, + "responses": { + "201": { + "body": { + "name": "myVMExtension", + "type": "Microsoft.Compute/virtualMachineScaleSets/virtualMachines/extensions", + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myvmScaleSet/virtualMachines/0/extensions/myVMExtension", + "properties": { + "autoUpgradeMinorVersion": true, + "provisioningState": "Creating", + "publisher": "extPublisher", + "type": "extType", + "typeHandlerVersion": "1.2", + "settings": { + "UserName": "xyz@microsoft.com" + } + } + } + }, + "200": { + "body": { + "name": "myVMExtension", + "type": "Microsoft.Compute/virtualMachineScaleSets/virtualMachines/extensions", + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myvmScaleSet/virtualMachines/0/extensions/myVMExtension", + "properties": { + "autoUpgradeMinorVersion": true, + "provisioningState": "Creating", + "publisher": "extPublisher", + "type": "extType", + "typeHandlerVersion": "1.2", + "settings": { + "UserName": "xyz@microsoft.com" + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateOrUpdateVirtualMachineScaleSetVMRunCommands.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateOrUpdateVirtualMachineScaleSetVMRunCommands.json new file mode 100644 index 000000000000..1a45c6be2aa8 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateOrUpdateVirtualMachineScaleSetVMRunCommands.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "myvmScaleSet", + "instanceId": "0", + "runCommandName": "myRunCommand", + "api-version": "2021-03-01", + "runCommand": { + "location": "West US", + "properties": { + "source": { + "script": "Write-Host Hello World!" + }, + "parameters": [ + { + "name": "param1", + "value": "value1" + }, + { + "name": "param2", + "value": "value2" + } + ], + "asyncExecution": false, + "runAsUser": "user1", + "runAsPassword": "", + "timeoutInSeconds": 3600 + } + } + }, + "responses": { + "200": { + "body": { + "name": "myRunCommand", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myvmScaleSet/virtualMachines/0/runCommands/myRunCommand", + "type": "Microsoft.Compute/virtualMachineScaleSets/virtualMachines/runCommands", + "location": "westus", + "properties": { + "source": { + "script": "Write-Host Hello World!" + }, + "parameters": [ + { + "name": "param1", + "value": "value1" + }, + { + "name": "param2", + "value": "value2" + } + ], + "asyncExecution": false, + "runAsUser": "user1", + "timeoutInSeconds": 3600, + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "name": "myRunCommand", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myvmScaleSet/virtualMachines/0/runCommands/myRunCommand", + "type": "Microsoft.Compute/virtualMachineScaleSets/virtualMachines/runCommands", + "location": "westus", + "properties": { + "source": { + "script": "Write-Host Hello World!" + }, + "parameters": [ + { + "name": "param1", + "value": "value1" + }, + { + "name": "param2", + "value": "value2" + } + ], + "asyncExecution": false, + "runAsUser": "user1", + "timeoutInSeconds": 3600, + "provisioningState": "Creating" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/DeleteAProximityPlacementGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/DeleteAProximityPlacementGroup.json new file mode 100644 index 000000000000..ea7544dbef46 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/DeleteAProximityPlacementGroup.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-01", + "proximityPlacementGroupName": "myProximityPlacementGroup", + "parameters": {} + }, + "responses": { + "200": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/DeleteRunCommand.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/DeleteRunCommand.json new file mode 100644 index 000000000000..e6e6ee07d2f5 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/DeleteRunCommand.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "runCommandName": "myRunCommand", + "api-version": "2021-03-01" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/DeleteVirtualMachineScaleSetVMExtensions.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/DeleteVirtualMachineScaleSetVMExtensions.json new file mode 100644 index 000000000000..ffb80fa86722 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/DeleteVirtualMachineScaleSetVMExtensions.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "myvmScaleSet", + "instanceId": "0", + "vmExtensionName": "myVMExtension", + "api-version": "2021-03-01" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/DeleteVirtualMachineScaleSetVMRunCommands.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/DeleteVirtualMachineScaleSetVMRunCommands.json new file mode 100644 index 000000000000..59c712586736 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/DeleteVirtualMachineScaleSetVMRunCommands.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "myvmScaleSet", + "instanceId": "0", + "runCommandName": "myRunCommand", + "api-version": "2021-03-01" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ForceDeleteVirtualMachine.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ForceDeleteVirtualMachine.json new file mode 100644 index 000000000000..fe81bdcf60cf --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ForceDeleteVirtualMachine.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "forceDeletion": "true", + "api-version": "2020-06-01" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ForceDeleteVirtualMachineScaleSetVM.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ForceDeleteVirtualMachineScaleSetVM.json new file mode 100644 index 000000000000..af6a7fe2f677 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ForceDeleteVirtualMachineScaleSetVM.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "myvmScaleSet", + "instanceId": "0", + "forceDeletion": "true", + "api-version": "2020-06-01" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ForceDeleteVirtualMachineScaleSets.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ForceDeleteVirtualMachineScaleSets.json new file mode 100644 index 000000000000..6ffa91047b7a --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ForceDeleteVirtualMachineScaleSets.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "myvmScaleSet", + "forceDeletion": "true", + "api-version": "2020-06-01" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GeneralizeVirtualMachine.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GeneralizeVirtualMachine.json new file mode 100644 index 000000000000..58e271ed105a --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GeneralizeVirtualMachine.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-01", + "vmName": "myVMName" + }, + "responses": { + "200": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GenerateSshKeyPair.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GenerateSshKeyPair.json new file mode 100644 index 000000000000..e6788da6a11c --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GenerateSshKeyPair.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-01", + "sshPublicKeyName": "mySshPublicKeyName" + }, + "responses": { + "200": { + "body": { + "privateKey": "{ssh private key}", + "publicKey": "{ssh-rsa public key}", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/SshPublicKeys/mySshPublicKeyName" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetADedicatedHost.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetADedicatedHost.json new file mode 100644 index 000000000000..0da47da294d4 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetADedicatedHost.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-10-01", + "hostGroupName": "myDedicatedHostGroup", + "hostName": "myHost" + }, + "responses": { + "200": { + "body": { + "properties": { + "platformFaultDomain": 1, + "autoReplaceOnFailure": true, + "hostId": "{GUID}", + "provisioningTime": "2019-06-27T01:02:38.3138469+00:00", + "virtualMachines": [ + { + "id": "/subscriptions/subId/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/vm1" + } + ], + "provisioningState": "Succeeded", + "instanceView": { + "assetId": "eb3f58b8-b4e8-4882-b69f-301a01812407", + "availableCapacity": { + "allocatableVMs": [ + { + "vmSize": "Standard_A1", + "count": 10 + } + ] + }, + "statuses": [ + { + "code": "ProvisioningState/succeeded", + "level": "Info", + "displayStatus": "Provisioning succeeded" + }, + { + "code": "HealthState/available", + "level": "Info", + "displayStatus": "Host available" + } + ] + } + }, + "location": "westus", + "tags": { + "department": "HR" + }, + "sku": { + "name": "DSv3-Type1" + }, + "name": "myHost" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetADedicatedHostGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetADedicatedHostGroup.json new file mode 100644 index 000000000000..23f39079fee4 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetADedicatedHostGroup.json @@ -0,0 +1,87 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-01", + "hostGroupName": "myDedicatedHostGroup", + "expand": "instanceView" + }, + "responses": { + "200": { + "body": { + "properties": { + "platformFaultDomainCount": 3, + "hosts": [ + { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/myDedicatedHostGroup/myHostGroup/Hosts/myHost1" + }, + { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/myDedicatedHostGroup/myHostGroup/Hosts/myHost2" + } + ], + "supportAutomaticPlacement": true, + "instanceView": { + "hosts": [ + { + "name": "myHost1", + "assetId": "eb3f58b8-b4e8-4882-b69f-301a01812407", + "availableCapacity": { + "allocatableVMs": [ + { + "vmSize": "Standard_A1", + "count": 10 + } + ] + }, + "statuses": [ + { + "code": "ProvisioningState/succeeded", + "level": "Info", + "displayStatus": "Provisioning succeeded" + }, + { + "code": "HealthState/available", + "level": "Info", + "displayStatus": "Host available" + } + ] + }, + { + "name": "myHost2", + "assetId": "f293d4ac-5eea-4be2-b0c0-0fcaa09aebf8", + "availableCapacity": { + "allocatableVMs": [ + { + "vmSize": "Standard_A1", + "count": 10 + } + ] + }, + "statuses": [ + { + "code": "ProvisioningState/succeeded", + "level": "Info", + "displayStatus": "Provisioning succeeded" + }, + { + "code": "HealthState/available", + "level": "Info", + "displayStatus": "Host available" + } + ] + } + ] + } + }, + "location": "westus", + "tags": { + "{tagName}": "{tagValue}" + }, + "name": "myDedicatedHostGroup", + "zones": [ + "3" + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetAProximityPlacementGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetAProximityPlacementGroup.json new file mode 100644 index 000000000000..bb38cc14ed83 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetAProximityPlacementGroup.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-01", + "proximityPlacementGroupName": "myProximityPlacementGroup", + "parameters": {} + }, + "responses": { + "200": { + "body": { + "name": "myProximityPlacementGroup", + "properties": { + "proximityPlacementGroupType": "Standard", + "virtualMachines": [ + { + "id": "string" + } + ], + "virtualMachineScaleSets": [ + { + "id": "string" + } + ], + "availabilitySets": [ + { + "id": "string" + } + ] + }, + "location": "westus", + "type": "Microsoft.Compute/proximityPlacementGroups", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/proximityPlacementGroups/myProximityPlacementGroup" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetAnSshPublicKey.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetAnSshPublicKey.json new file mode 100644 index 000000000000..5f700cb1a6dc --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetAnSshPublicKey.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-01", + "sshPublicKeyName": "mySshPublicKeyName" + }, + "responses": { + "200": { + "body": { + "name": "mySshPublicKeyName", + "location": "westus", + "tags": { + "{tagName}": "{tagValue}" + }, + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/SshPublicKeys/mySshPublicKeyName", + "properties": { + "publicKey": "{ssh-rsa public key}" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetInformationAboutAnImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetInformationAboutAnImage.json new file mode 100644 index 000000000000..99c3067a9e36 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetInformationAboutAnImage.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-01", + "imageName": "myImage" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/myImage", + "name": "myImage", + "type": "Microsoft.Compute/images", + "location": "West US", + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Windows", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "snapshot": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + }, + "managedDisk": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk1" + }, + "osState": "Generalized", + "storageAccountType": "Standard_LRS", + "diskSizeGB": 20 + }, + "dataDisks": [ + { + "lun": 1, + "blobUri": "https://mystorageaccount.blob.core.windows.net/dataimages/dataimage.vhd", + "snapshot": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2" + }, + "managedDisk": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk2" + }, + "storageAccountType": "Standard_LRS" + } + ], + "zoneResilient": true + }, + "provisioningState": "created" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetRestorePoint.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetRestorePoint.json new file mode 100644 index 000000000000..e10b1fa5653f --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetRestorePoint.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "restorePointCollectionName": "rpcName", + "restorePointName": "rpName", + "api-version": "2021-03-01" + }, + "responses": { + "200": { + "body": { + "name": "rpName", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/rpcName/restorePoints/rpName", + "sourceMetadata": { + "vmId": "76d6541e-80bd-4dc1-932b-3cae4cfb80e7", + "hardwareProfile": { + "vmSize": "Standard_B1s" + }, + "storageProfile": { + "osDisk": { + "osType": "Windows", + "name": "testingexcludedisk_OsDisk_1_74cdaedcea50483d9833c96adefa100f", + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/testingexcludedisk_OsDisk_1_74cdaedcea50483d9833c96adefa100f" + }, + "diskRestorePoint": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/rpcName/restorePoints/rpName/diskRestorePoints/testingexcludedisk_OsDisk_1_74cdaedcea50483d9833c96adefa100f_22b4bdfe-6c54-4f72-84d8-85d8860f0c57" + } + }, + "dataDisks": [ + { + "lun": 1, + "name": "testingexcludedisk_DataDisk_1", + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS", + "id": "/subscriptions/{subscription-id}/resourceGroups/userdata/providers/Microsoft.Compute/disks/testingexcludedisk_DataDisk_1" + }, + "diskRestorePoint": { + "id": "/subscriptions/{subscription-id}/resourceGroups/userdata/providers/Microsoft.Compute/restorePointCollections/mynewrpc/restorePoints/restorepointtwo/diskRestorePoints/testingexcludedisk_DataDisk_1_68785190-1acb-4d5e-a8ae-705b45f3dca5" + } + } + ] + }, + "osProfile": { + "computerName": "computerName", + "adminUsername": "admin", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + }, + "secrets": [], + "allowExtensionOperations": true, + "requireGuestProvisionSignal": true + }, + "diagnosticsProfile": { + "bootDiagnostics": { + "enabled": true + } + } + }, + "provisioningState": "Succeeded", + "consistencyMode": "ApplicationConsistent", + "provisioningDetails": { + "creationTime": "2021-01-27T20:35:05.8401519+00:00", + "totalUsedSizeInBytes": 10835349504, + "statusCode": 0, + "statusMessage": "{\"jobMessage\":\"\",\"messageStr\":\"1/27/2021 8:35:56 PM , snapshotCreator=guestExtension, hostStatusCodePreSnapshot=200, Plugin enable Succeeded (command: Snapshot) Snapshot command completed \",\"snapshotConsistency\":2}" + }, + "excludeDisks": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vm8768_disk2_fe6ffde4f69b491ca33fb984d5bcd89f" + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetRestorePointCollection.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetRestorePointCollection.json new file mode 100644 index 000000000000..63cf8efb6ca6 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetRestorePointCollection.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "restorePointCollectionName": "myRpc", + "api-version": "2021-03-01" + }, + "responses": { + "200": { + "body": { + "name": "myRpc", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/myRpc", + "type": "Microsoft.Compute/restorePointCollections", + "location": "West US", + "tags": { + "myTag1": "tagValue1" + }, + "properties": { + "source": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/myRpc", + "location": "eastus" + }, + "restorePointCollectionId": "59f04a5d-f783-4200-a1bd-d3f464e8c4b4", + "provisioningState": "Successful" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetRestorePointCollectionWithContainedRestorePoints.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetRestorePointCollectionWithContainedRestorePoints.json new file mode 100644 index 000000000000..4aa7fc88b198 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetRestorePointCollectionWithContainedRestorePoints.json @@ -0,0 +1,99 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "restorePointCollectionName": "rpcName", + "api-version": "2021-03-01", + "expand": "restorePoints" + }, + "responses": { + "200": { + "body": { + "name": "rpcName", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/rpcName", + "type": "Microsoft.Compute/restorePointCollections", + "location": "West US", + "tags": { + "myTag1": "tagValue1" + }, + "properties": { + "source": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "location": "eastus" + }, + "restorePointCollectionId": "59f04a5d-f783-4200-a1bd-d3f464e8c4b4", + "provisioningState": "Successful", + "restorePoints": [ + { + "name": "restorePointName", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/rpcName/restorePoints/restorePointName", + "sourceMetadata": { + "vmId": "76d6541e-80bd-4dc1-932b-3cae4cfb80e7", + "hardwareProfile": { + "vmSize": "Standard_B1s" + }, + "storageProfile": { + "osDisk": { + "osType": "Windows", + "name": "testingexcludedisk_OsDisk_1_74cdaedcea50483d9833c96adefa100f", + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/testingexcludedisk_OsDisk_1_74cdaedcea50483d9833c96adefa100f" + }, + "diskRestorePoint": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/rpcName/restorePoints/restorePointName/diskRestorePoints/testingexcludedisk_OsDisk_1_74cdaedcea50483d9833c96adefa100f_22b4bdfe-6c54-4f72-84d8-85d8860f0c57" + } + }, + "dataDisks": [ + { + "lun": 1, + "name": "testingexcludedisk_DataDisk_1", + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/testingexcludedisk_DataDisk_1" + }, + "diskRestorePoint": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/rpcName/restorePoints/restorePointName/diskRestorePoints/testingexcludedisk_DataDisk_1_68785190-1acb-4d5e-a8ae-705b45f3dca5" + } + } + ] + }, + "osProfile": { + "computerName": "computerName", + "adminUsername": "admin", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + }, + "secrets": [], + "allowExtensionOperations": true, + "requireGuestProvisionSignal": true + }, + "diagnosticsProfile": { + "bootDiagnostics": { + "enabled": true + } + } + }, + "provisioningState": "Succeeded", + "consistencyMode": "ApplicationConsistent", + "provisioningDetails": { + "creationTime": "2021-01-27T20:35:05.8401519+00:00", + "totalUsedSizeInBytes": 10835349504, + "statusCode": 0, + "statusMessage": "{\"jobMessage\":\"\",\"messageStr\":\"1/27/2021 8:35:56 PM , snapshotCreator=guestExtension, hostStatusCodePreSnapshot=200, Plugin enable Succeeded (command: Snapshot) Snapshot command completed \",\"snapshotConsistency\":2}" + }, + "excludeDisks": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vm8768_disk2_fe6ffde4f69b491ca33fb984d5bcd89f" + } + ] + } + ] + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetRestorePointCollectionsInAResourceGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetRestorePointCollectionsInAResourceGroup.json new file mode 100644 index 000000000000..ece3579969d2 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetRestorePointCollectionsInAResourceGroup.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "restorePointCollection1", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/restorePointCollection1", + "type": "Microsoft.Compute/restorePointCollections", + "location": "West US", + "tags": { + "myTag1": "tagValue1" + }, + "properties": { + "source": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/restorePointCollection1", + "location": "West US" + }, + "restorePointCollectionId": "59f04a5d-f783-4200-a1bd-d3f464e8c4b4", + "provisioningState": "Successful" + } + }, + { + "name": "restorePointCollection2", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/restorePointCollection2", + "type": "Microsoft.Compute/restorePointCollections", + "location": "West US", + "tags": { + "myTag1": "tagValue1" + }, + "properties": { + "source": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/restorePointCollection2", + "location": "West US" + }, + "restorePointCollectionId": "2875c590-e337-4102-9668-4f5b7e3f98a4", + "provisioningState": "Deleting" + } + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetRestorePointCollectionsInASubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetRestorePointCollectionsInASubscription.json new file mode 100644 index 000000000000..0216a257babc --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetRestorePointCollectionsInASubscription.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2021-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "restorePointCollection1", + "id": "/subscriptions/{subscription-id}/resourceGroups/resourceGroup1/providers/Microsoft.Compute/restorePointCollections/restorePointCollection1", + "type": "Microsoft.Compute/restorePointCollections", + "location": "West US", + "tags": { + "myTag1": "tagValue1" + }, + "properties": { + "source": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/VM_Test", + "location": "West US" + }, + "restorePointCollectionId": "59f04a5d-f783-4200-a1bd-d3f464e8c4b4", + "provisioningState": "Successful" + } + }, + { + "name": "restorePointCollection2", + "id": "/subscriptions/{subscription-id}/resourceGroups/resourceGroup2/providers/Microsoft.Compute/restorePointCollections/restorePointCollection2", + "type": "Microsoft.Compute/restorePointCollections", + "location": "West US", + "tags": { + "myTag1": "tagValue1" + }, + "properties": { + "source": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/VM_Prod", + "location": "West US" + }, + "restorePointCollectionId": "2875c590-e337-4102-9668-4f5b7e3f98a4", + "provisioningState": "Deleting" + } + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetRunCommand.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetRunCommand.json new file mode 100644 index 000000000000..c9f4b2bad674 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetRunCommand.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "runCommandName": "myRunCommand", + "api-version": "2021-03-01" + }, + "responses": { + "200": { + "body": { + "name": "myRunCommand", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM/runCommands/myRunCommand", + "type": "Microsoft.Compute/virtualMachines/runCommands", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "source": { + "script": "Write-Host Hello World!" + }, + "parameters": [ + { + "name": "param1", + "value": "value1" + }, + { + "name": "param2", + "value": "value2" + } + ], + "asyncExecution": false, + "runAsUser": "user1", + "timeoutInSeconds": 3600, + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetVirtualMachine.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetVirtualMachine.json new file mode 100644 index 000000000000..ff97c7c0bb99 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetVirtualMachine.json @@ -0,0 +1,121 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2021-03-01", + "expand": "UserData" + }, + "responses": { + "200": { + "body": { + "name": "myVM", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "location": "West US", + "tags": { + "myTag1": "tagValue1" + }, + "properties": { + "vmId": "0f47b100-583c-48e3-a4c0-aefc2c9bbcc1", + "availabilitySet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/availabilitySets/my-AvailabilitySet" + }, + "proximityPlacementGroup": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/proximityPlacementGroups/my-ppg01" + }, + "hardwareProfile": { + "vmSize": "Standard_DS3_v2" + }, + "storageProfile": { + "imageReference": { + "publisher": "MicrosoftWindowsServer", + "offer": "WindowsServer", + "sku": "2016-Datacenter", + "version": "latest" + }, + "osDisk": { + "osType": "Windows", + "name": "myOsDisk", + "createOption": "FromImage", + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Premium_LRS", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myOsDisk" + }, + "diskSizeGB": 30 + }, + "dataDisks": [ + { + "lun": 0, + "name": "myDataDisk0", + "createOption": "Empty", + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Premium_LRS", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDataDisk0" + }, + "diskSizeGB": 30 + }, + { + "lun": 1, + "name": "myDataDisk1", + "createOption": "Attach", + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Premium_LRS", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDataDisk1" + }, + "diskSizeGB": 100 + } + ] + }, + "userData": "RXhhbXBsZSBVc2VyRGF0YQ==", + "osProfile": { + "computerName": "myVM", + "adminUsername": "admin", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": false + }, + "secrets": [] + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{myNIC}" + } + ] + }, + "diagnosticsProfile": { + "bootDiagnostics": { + "enabled": true, + "storageUri": "http://{myStorageAccount}.blob.core.windows.net" + } + }, + "extensionsTimeBudget": "PT50M", + "provisioningState": "Succeeded" + }, + "resources": [ + { + "name": "CustomScriptExtension-DSC", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM/extensions/CustomScriptExtension-DSC", + "type": "Microsoft.Compute/virtualMachines/extensions", + "location": "west us", + "tags": { + "displayName": "CustomScriptExtension-DSC" + }, + "properties": { + "autoUpgradeMinorVersion": true, + "provisioningState": "Succeeded", + "publisher": "Microsoft.Compute", + "type": "CustomScriptExtension", + "typeHandlerVersion": "1.9", + "settings": {} + } + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetVirtualMachineAutoPlacedOnDedicatedHostGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetVirtualMachineAutoPlacedOnDedicatedHostGroup.json new file mode 100644 index 000000000000..4c2f04c25d49 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetVirtualMachineAutoPlacedOnDedicatedHostGroup.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2021-03-01" + }, + "responses": { + "200": { + "body": { + "name": "myVM", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "location": "West US", + "tags": { + "myTag1": "tagValue1" + }, + "properties": { + "vmId": "0f47b100-583c-48e3-a4c0-aefc2c9bbcc1", + "hostGroup": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/hostGroups/myHostGroup" + }, + "hardwareProfile": { + "vmSize": "Standard_D2s_v3" + }, + "storageProfile": { + "imageReference": { + "publisher": "MicrosoftWindowsServer", + "offer": "WindowsServer", + "sku": "2016-Datacenter", + "version": "latest" + }, + "osDisk": { + "osType": "Windows", + "name": "myOsDisk", + "createOption": "FromImage", + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Premium_LRS", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myOsDisk" + }, + "diskSizeGB": 30 + }, + "dataDisks": [] + }, + "osProfile": { + "computerName": "myVM", + "adminUsername": "admin", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": false + }, + "secrets": [] + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{myNIC}" + } + ] + }, + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetVirtualMachineInstanceView.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetVirtualMachineInstanceView.json new file mode 100644 index 000000000000..c28ec41f5629 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetVirtualMachineInstanceView.json @@ -0,0 +1,144 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-01", + "vmName": "myVM" + }, + "responses": { + "200": { + "body": { + "platformUpdateDomain": 1, + "platformFaultDomain": 1, + "computerName": "myVM", + "osName": "Windows Server 2016 Datacenter", + "osVersion": "Microsoft Windows NT 10.0.14393.0", + "vmAgent": { + "vmAgentVersion": "2.7.41491.949", + "statuses": [ + { + "code": "ProvisioningState/succeeded", + "level": "Info", + "displayStatus": "Ready", + "message": "GuestAgent is running and accepting new configurations.", + "time": "2019-10-14T23:11:22+00:00" + } + ], + "extensionHandlers": [ + { + "type": "Microsoft.Azure.Security.IaaSAntimalware", + "typeHandlerVersion": "1.5.5.9", + "status": { + "code": "ProvisioningState/succeeded", + "level": "Info", + "displayStatus": "Ready" + } + } + ] + }, + "disks": [ + { + "name": "myOsDisk", + "statuses": [ + { + "code": "ProvisioningState/succeeded", + "level": "Info", + "displayStatus": "Provisioning succeeded", + "time": "2019-10-14T21:29:47.477089+00:00" + } + ] + }, + { + "name": "myDataDisk0", + "statuses": [ + { + "code": "ProvisioningState/succeeded", + "level": "Info", + "displayStatus": "Provisioning succeeded", + "time": "2019-10-14T21:29:47.461517+00:00" + } + ] + } + ], + "bootDiagnostics": { + "consoleScreenshotBlobUri": "https://{myStorageAccount}.blob.core.windows.net/bootdiagnostics-myOsDisk/myOsDisk.screenshot.bmp", + "serialConsoleLogBlobUri": "https://{myStorageAccount}.blob.core.windows.net/bootdiagnostics-myOsDisk/myOsDisk.serialconsole.log" + }, + "extensions": [ + { + "name": "IaaSAntiMalware-ext0", + "type": "Microsoft.Azure.Security.IaaSAntimalware", + "typeHandlerVersion": "1.5.5.9", + "statuses": [ + { + "code": "ProvisioningState/succeeded", + "level": "Info", + "displayStatus": "Provisioning succeeded", + "message": "Microsoft Antimalware enabled" + } + ] + } + ], + "hyperVGeneration": "V1", + "patchStatus": { + "availablePatchSummary": { + "status": "Succeeded", + "assessmentActivityId": "68f8b292-dfc2-4646-9781-33cc88631968", + "rebootPending": true, + "criticalAndSecurityPatchCount": 1, + "otherPatchCount": 2, + "startTime": "2020-04-24T21:02:04.2556154Z", + "lastModifiedTime": "2020-04-24T21:02:04.2556154Z", + "error": null + }, + "lastPatchInstallationSummary": { + "status": "Succeeded", + "installationActivityId": "68f8b292-dfc2-4646-9981-33cc88631968", + "maintenanceWindowExceeded": false, + "notSelectedPatchCount": 1, + "excludedPatchCount": 1, + "pendingPatchCount": 1, + "installedPatchCount": 1, + "failedPatchCount": 1, + "startTime": "2020-04-24T21:02:04.2556154Z", + "lastModifiedTime": "2020-04-24T21:02:04.2556154Z", + "error": null + }, + "configurationStatuses": [ + { + "code": "PatchModeConfigurationState/Ready", + "level": "Info", + "displayStatus": "Status_PatchModeConfigurationState_Ready", + "time": "2020-04-24T21:02:04.2556154Z" + }, + { + "code": "PatchModeConfigurationState/Pending", + "level": "Info", + "displayStatus": "Status_PatchModeConfigurationState_Pending", + "time": "2020-04-24T21:02:04.2556154Z" + }, + { + "code": "AssessmentModeConfigurationState/Pending", + "level": "Info", + "displayStatus": "Status_AssessmentModeConfigurationState_Pending", + "time": "2020-04-24T21:02:04.2556154Z" + } + ] + }, + "statuses": [ + { + "code": "ProvisioningState/succeeded", + "level": "Info", + "displayStatus": "Provisioning succeeded", + "time": "2019-10-14T21:30:12.8051917+00:00" + }, + { + "code": "PowerState/running", + "level": "Info", + "displayStatus": "VM running" + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetVirtualMachineInstanceViewAutoPlacedOnDedicatedHostGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetVirtualMachineInstanceViewAutoPlacedOnDedicatedHostGroup.json new file mode 100644 index 000000000000..8d4ddff7d1b4 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetVirtualMachineInstanceViewAutoPlacedOnDedicatedHostGroup.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-01", + "vmName": "myVM" + }, + "responses": { + "200": { + "body": { + "computerName": "myVM", + "osName": "Windows Server 2016 Datacenter", + "osVersion": "Microsoft Windows NT 10.0.14393.0", + "vmAgent": { + "vmAgentVersion": "2.7.41491.949", + "statuses": [ + { + "code": "ProvisioningState/succeeded", + "level": "Info", + "displayStatus": "Ready", + "message": "GuestAgent is running and accepting new configurations.", + "time": "2021-03-01T23:11:22+00:00" + } + ] + }, + "disks": [ + { + "name": "myOsDisk", + "statuses": [ + { + "code": "ProvisioningState/succeeded", + "level": "Info", + "displayStatus": "Provisioning succeeded", + "time": "2021-03-01T21:29:47.477089+00:00" + } + ] + } + ], + "hyperVGeneration": "V1", + "assignedHost": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/hostGroups/myHostGroup/hosts/myHost", + "statuses": [ + { + "code": "ProvisioningState/succeeded", + "level": "Info", + "displayStatus": "Provisioning succeeded", + "time": "2021-03-01T21:30:12.8051917+00:00" + }, + { + "code": "PowerState/running", + "level": "Info", + "displayStatus": "VM running" + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetVirtualMachineScaleSetAutoPlacedOnDedicatedHostGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetVirtualMachineScaleSetAutoPlacedOnDedicatedHostGroup.json new file mode 100644 index 000000000000..34497dbdc9f9 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetVirtualMachineScaleSetAutoPlacedOnDedicatedHostGroup.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "myVirtualMachineScaleSet", + "api-version": "2021-03-01" + }, + "responses": { + "200": { + "body": { + "name": "myVirtualMachineScaleSet", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVirtualMachineScaleSet", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "location": "West US", + "tags": { + "myTag1": "tagValue1" + }, + "sku": { + "name": "Standard_D2s_v3", + "tier": "Standard", + "capacity": 4 + }, + "properties": { + "singlePlacementGroup": false, + "upgradePolicy": { + "mode": "Automatic", + "automaticOSUpgradePolicy": { + "enableAutomaticOSUpgrade": false + } + }, + "virtualMachineProfile": { + "storageProfile": { + "osDisk": { + "createOption": "FromImage", + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Premium_LRS" + }, + "diskSizeGB": 30 + }, + "imageReference": { + "publisher": "azuredatabricks", + "offer": "databricks", + "sku": "databricksworker", + "version": "3.15.2" + }, + "dataDisks": [] + }, + "osProfile": { + "computerNamePrefix": "myVirtualMachineScaleSet", + "adminUsername": "admin", + "linuxConfiguration": { + "disablePasswordAuthentication": false + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "myNic", + "properties": { + "primary": true, + "ipConfigurations": [ + { + "name": "myIPConfig", + "properties": { + "primary": true, + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVNet/subnets/mySubnet" + } + } + } + ], + "networkSecurityGroup": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkSecurityGroups/myNetworkSecurityGroup" + } + } + } + ] + } + }, + "provisioningState": "succeeded", + "overprovision": false, + "doNotRunExtensionsOnOverprovisionedVMs": false, + "platformFaultDomainCount": 1, + "hostGroup": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/hostGroups/myHostGroup" + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetVirtualMachineScaleSetVMExtensions.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetVirtualMachineScaleSetVMExtensions.json new file mode 100644 index 000000000000..e8b886094942 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetVirtualMachineScaleSetVMExtensions.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "myvmScaleSet", + "instanceId": "0", + "vmExtensionName": "myVMExtension", + "api-version": "2021-03-01" + }, + "responses": { + "200": { + "body": { + "properties": { + "autoUpgradeMinorVersion": true, + "provisioningState": "Creating", + "publisher": "extPublisher", + "type": "extType", + "typeHandlerVersion": "1.2", + "settings": { + "UserName": "xyz@microsoft.com" + } + }, + "name": "myVMExtension", + "type": "Microsoft.Compute/virtualMachineScaleSets/virtualMachines/extensions", + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myvmScaleSet/virtualMachines/0/extensions/myVMExtension" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetVirtualMachineScaleSetVMInstanceViewAutoPlacedOnDedicatedHostGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetVirtualMachineScaleSetVMInstanceViewAutoPlacedOnDedicatedHostGroup.json new file mode 100644 index 000000000000..23640afc065a --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetVirtualMachineScaleSetVMInstanceViewAutoPlacedOnDedicatedHostGroup.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "myVirtualMachineScaleSet", + "instanceId": "0", + "api-version": "2021-03-01" + }, + "responses": { + "200": { + "body": { + "platformUpdateDomain": 0, + "platformFaultDomain": 0, + "rdpThumbPrint": null, + "vmAgent": { + "vmAgentVersion": "Unknown", + "statuses": [ + { + "code": "ProvisioningState/Unavailable", + "level": "Warning", + "displayStatus": "Not Ready", + "message": "VM status blob is found but not yet populated.", + "time": "2021-03-01T05:00:32+00:00" + } + ], + "extensionHandlers": null + }, + "disks": [ + { + "name": "myOSDisk", + "encryptionSettings": null, + "statuses": [ + { + "code": "ProvisioningState/succeeded", + "level": "Info", + "displayStatus": "Provisioning succeeded", + "message": null, + "time": "2021-03-01T04:58:58.0882815+00:00" + } + ] + } + ], + "extensions": null, + "assignedHost": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/hostGroups/myHostGroup/hosts/myHost", + "bootDiagnostics": null, + "statuses": [ + { + "code": "ProvisioningState/succeeded", + "level": "Info", + "displayStatus": "Provisioning succeeded", + "message": null, + "time": "2020-06-05T04:59:58.1852966+00:00" + }, + { + "code": "PowerState/running", + "level": "Info", + "displayStatus": "VM running", + "message": null, + "time": null + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetVirtualMachineScaleSetVMRunCommands.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetVirtualMachineScaleSetVMRunCommands.json new file mode 100644 index 000000000000..486763d63f23 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetVirtualMachineScaleSetVMRunCommands.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "myvmScaleSet", + "instanceId": "0", + "runCommandName": "myRunCommand", + "api-version": "2021-03-01" + }, + "responses": { + "200": { + "body": { + "name": "myRunCommand", + "type": "Microsoft.Compute/virtualMachineScaleSets/virtualMachines/runCommands", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myvmScaleSet/virtualMachines/0/runCommands/myRunCommand", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "source": { + "script": "Write-Host Hello World!" + }, + "parameters": [ + { + "name": "param1", + "value": "value1" + }, + { + "name": "param2", + "value": "value2" + } + ], + "asyncExecution": false, + "runAsUser": "user1", + "timeoutInSeconds": 3600, + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetVirtualMachineScaleSetVMWithUserData.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetVirtualMachineScaleSetVMWithUserData.json new file mode 100644 index 000000000000..c3dfdc7addf1 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetVirtualMachineScaleSetVMWithUserData.json @@ -0,0 +1,133 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "instanceId": "0", + "api-version": "2021-03-01", + "expand": "UserData" + }, + "responses": { + "200": { + "body": { + "name": "{vmss-vm-name}", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}/virtualMachines/0", + "type": "Microsoft.Compute/virtualMachines", + "location": "West US", + "tags": { + "myTag1": "tagValue1" + }, + "properties": { + "latestModelApplied": true, + "modelDefinitionApplied": "VirtualMachineScaleSet", + "networkProfileConfiguration": { + "networkInterfaceConfigurations": [ + { + "name": "vmsstestnetconfig5415", + "properties": { + "primary": true, + "enableAcceleratedNetworking": false, + "dnsSettings": { + "dnsServers": [] + }, + "enableIPForwarding": false, + "ipConfigurations": [ + { + "name": "vmsstestnetconfig9693", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/vn4071/subnets/sn5503" + }, + "privateIPAddressVersion": "IPv4" + } + } + ] + } + } + ] + }, + "vmId": "42af9fdf-b906-4ad7-9905-8316209ff619", + "hardwareProfile": {}, + "storageProfile": { + "imageReference": { + "publisher": "MicrosoftWindowsServer", + "offer": "WindowsServer", + "sku": "2012-R2-Datacenter", + "version": "4.127.20180315", + "exactVersion": "4.127.20180315" + }, + "osDisk": { + "osType": "Windows", + "name": "vmss3176_vmss3176_0_OsDisk_1_6d72b805e50e4de6830303c5055077fc", + "createOption": "FromImage", + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_0_OsDisk_1_6d72b805e50e4de6830303c5055077fc" + }, + "diskSizeGB": 127 + }, + "dataDisks": [ + { + "lun": 1, + "name": "vmss3176_vmss3176_0_disk2_6c4f554bdafa49baa780eb2d128ff39d", + "createOption": "Empty", + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_0_disk2_6c4f554bdafa49baa780eb2d128ff39d" + }, + "diskSizeGB": 128, + "toBeDetached": false + } + ] + }, + "osProfile": { + "computerName": "test000000", + "adminUsername": "Foo12", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + }, + "secrets": [], + "allowExtensionOperations": true, + "requireGuestProvisionSignal": true + }, + "userData": "RXhhbXBsZSBVc2VyRGF0YQ==", + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}/virtualMachines/0/networkInterfaces/vmsstestnetconfig5415" + } + ] + }, + "diagnosticsProfile": { + "bootDiagnostics": { + "enabled": true + } + }, + "provisioningState": "Succeeded" + }, + "resources": [ + { + "name": "CustomScriptExtension-DSC", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM/extensions/CustomScriptExtension-DSC", + "type": "Microsoft.Compute/virtualMachines/extensions", + "location": "west us", + "tags": { + "displayName": "CustomScriptExtension-DSC" + }, + "properties": { + "autoUpgradeMinorVersion": true, + "provisioningState": "Succeeded", + "publisher": "Microsoft.Compute", + "type": "CustomScriptExtension", + "typeHandlerVersion": "1.9", + "settings": {} + } + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetVirtualMachineScaleSetWithUserData.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetVirtualMachineScaleSetWithUserData.json new file mode 100644 index 000000000000..b609dfbee505 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetVirtualMachineScaleSetWithUserData.json @@ -0,0 +1,94 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "myVirtualMachineScaleSet", + "api-version": "2021-03-01", + "expand": "userData" + }, + "responses": { + "200": { + "body": { + "name": "myVirtualMachineScaleSet", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVirtualMachineScaleSet", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "location": "West US", + "tags": { + "myTag1": "tagValue1" + }, + "sku": { + "name": "Standard_D2s_v3", + "tier": "Standard", + "capacity": 4 + }, + "properties": { + "singlePlacementGroup": false, + "upgradePolicy": { + "mode": "Automatic", + "automaticOSUpgradePolicy": { + "enableAutomaticOSUpgrade": false + } + }, + "virtualMachineProfile": { + "storageProfile": { + "osDisk": { + "createOption": "FromImage", + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Premium_LRS" + }, + "diskSizeGB": 30 + }, + "imageReference": { + "publisher": "azuredatabricks", + "offer": "databricks", + "sku": "databricksworker", + "version": "3.15.2" + }, + "dataDisks": [] + }, + "userData": "RXhhbXBsZSBVc2VyRGF0YQ==", + "osProfile": { + "computerNamePrefix": "myVirtualMachineScaleSet", + "adminUsername": "admin", + "linuxConfiguration": { + "disablePasswordAuthentication": false + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "myNic", + "properties": { + "primary": true, + "ipConfigurations": [ + { + "name": "myIPConfig", + "properties": { + "primary": true, + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVNet/subnets/mySubnet" + } + } + } + ], + "networkSecurityGroup": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkSecurityGroups/myNetworkSecurityGroup" + } + } + } + ] + } + }, + "provisioningState": "succeeded", + "overprovision": false, + "doNotRunExtensionsOnOverprovisionedVMs": false, + "platformFaultDomainCount": 1, + "hostGroup": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/hostGroups/myHostGroup" + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ListAvailabilitySetsInASubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ListAvailabilitySetsInASubscription.json new file mode 100644 index 000000000000..55399d01e3f1 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ListAvailabilitySetsInASubscription.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "api-version": "2021-03-01", + "$expand": "virtualMachines\\$ref" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "{availabilitySetName}", + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", + "type": "Microsoft.Compute/availabilitySets", + "location": "australiasoutheast", + "properties": { + "platformUpdateDomainCount": 5, + "platformFaultDomainCount": 3, + "virtualMachines": [ + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}" + } + ] + }, + "sku": { + "name": "Classic" + } + }, + { + "name": "{availabilitySetName}", + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", + "type": "Microsoft.Compute/availabilitySets", + "location": "australiasoutheast", + "properties": { + "platformUpdateDomainCount": 5, + "platformFaultDomainCount": 3, + "virtualMachines": [ + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}" + } + ] + }, + "sku": { + "name": "Classic" + } + }, + { + "name": "{availabilitySetName}", + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", + "type": "Microsoft.Compute/availabilitySets", + "location": "westcentralus", + "tags": { + "{tagName}": "{tagValue}" + }, + "properties": { + "platformUpdateDomainCount": 5, + "platformFaultDomainCount": 3, + "virtualMachines": [] + }, + "sku": { + "name": "Classic" + } + }, + { + "name": "{availabilitySetName}", + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", + "type": "Microsoft.Compute/availabilitySets", + "location": "westcentralus", + "tags": { + "{tagName}": "{tagValue}" + }, + "properties": { + "platformUpdateDomainCount": 5, + "platformFaultDomainCount": 3, + "virtualMachines": [] + }, + "sku": { + "name": "Classic" + } + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ListAvailableVmSizes_VirtualMachines.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ListAvailableVmSizes_VirtualMachines.json new file mode 100644 index 000000000000..99dfbb638034 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ListAvailableVmSizes_VirtualMachines.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVmName", + "api-version": "2021-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Standard_A1_V2", + "numberOfCores": 1, + "osDiskSizeInMB": 1047552, + "resourceDiskSizeInMB": 10240, + "memoryInMB": 2048, + "maxDataDiskCount": 2 + }, + { + "name": "Standard_A2_V2", + "numberOfCores": 2, + "osDiskSizeInMB": 1047552, + "resourceDiskSizeInMB": 20480, + "memoryInMB": 4096, + "maxDataDiskCount": 4 + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ListImagesInAResourceGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ListImagesInAResourceGroup.json new file mode 100644 index 000000000000..55c5b198e705 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ListImagesInAResourceGroup.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/myImage", + "name": "myImage", + "type": "Microsoft.Compute/images", + "location": "West US", + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Windows", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "snapshot": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + }, + "managedDisk": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk1" + }, + "osState": "Generalized", + "storageAccountType": "Standard_LRS" + }, + "dataDisks": [ + { + "lun": 1, + "blobUri": "https://mystorageaccount.blob.core.windows.net/dataimages/dataimage.vhd", + "snapshot": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2" + }, + "managedDisk": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk2" + }, + "storageAccountType": "Standard_LRS" + } + ] + }, + "provisioningState": "created" + } + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ListImagesInASubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ListImagesInASubscription.json new file mode 100644 index 000000000000..f62cff5bd721 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ListImagesInASubscription.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2021-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/myImage", + "name": "myImage", + "type": "Microsoft.Compute/images", + "location": "West US", + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Windows", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "snapshot": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + }, + "managedDisk": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk1" + }, + "osState": "Generalized", + "storageAccountType": "Standard_LRS" + }, + "dataDisks": [ + { + "lun": 1, + "blobUri": "https://mystorageaccount.blob.core.windows.net/dataimages/dataimage.vhd", + "snapshot": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2" + }, + "managedDisk": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk2" + }, + "storageAccountType": "Standard_LRS" + } + ] + }, + "provisioningState": "created" + } + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ListProximityPlacementGroupsInAResourceGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ListProximityPlacementGroupsInAResourceGroup.json new file mode 100644 index 000000000000..c364608ac6b8 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ListProximityPlacementGroupsInAResourceGroup.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-01", + "parameters": {} + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "myProximityPlacementGroup", + "properties": { + "proximityPlacementGroupType": "Standard", + "virtualMachines": [ + { + "id": "string" + } + ], + "virtualMachineScaleSets": [ + { + "id": "string" + } + ], + "availabilitySets": [ + { + "id": "string" + } + ] + }, + "location": "westus", + "type": "Microsoft.Compute/proximityPlacementGroups", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/proximityPlacementGroups/myProximityPlacementGroup" + } + ], + "nextLink": "string" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ListProximityPlacementGroupsInASubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ListProximityPlacementGroupsInASubscription.json new file mode 100644 index 000000000000..e32ae0b8a952 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ListProximityPlacementGroupsInASubscription.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2021-03-01", + "parameters": {} + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "myProximityPlacementGroup", + "properties": { + "proximityPlacementGroupType": "Standard", + "virtualMachines": [ + { + "id": "string" + } + ], + "virtualMachineScaleSets": [ + { + "id": "string" + } + ], + "availabilitySets": [ + { + "id": "string" + } + ] + }, + "location": "westus", + "type": "Microsoft.Compute/proximityPlacementGroups", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/proximityPlacementGroups/myProximityPlacementGroup" + } + ], + "nextLink": "string" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ListRunCommandsInVM.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ListRunCommandsInVM.json new file mode 100644 index 000000000000..f5b6b3ff0001 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ListRunCommandsInVM.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2021-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "myRunCommand", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM/runCommands/myRunCommand", + "type": "Microsoft.Compute/virtualMachines/runCommands", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "source": { + "script": "Write-Host Hello World!" + }, + "parameters": [ + { + "name": "param1", + "value": "value1" + }, + { + "name": "param2", + "value": "value2" + } + ], + "asyncExecution": false, + "runAsUser": "user1", + "timeoutInSeconds": 0, + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ListVirtualMachineScaleSetVMExtensions.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ListVirtualMachineScaleSetVMExtensions.json new file mode 100644 index 000000000000..42a5a22bf930 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ListVirtualMachineScaleSetVMExtensions.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "myvmScaleSet", + "instanceId": "0", + "api-version": "2021-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "autoUpgradeMinorVersion": true, + "provisioningState": "Succeeded", + "publisher": "extPublisher", + "type": "extType", + "typeHandlerVersion": "1.2", + "settings": { + "UserName": "xyz@microsoft.com" + } + }, + "name": "myVMExtension", + "type": "Microsoft.Compute/virtualMachineScaleSets/virtualMachines/extensions", + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myvmScaleSet/virtualMachines/0/extensions/myVMExtension" + }, + { + "properties": { + "autoUpgradeMinorVersion": true, + "provisioningState": "Succeeded", + "publisher": "extPublisher1", + "type": "extType1", + "typeHandlerVersion": "1.0", + "settings": { + "UserName": "xyz@microsoft.com" + } + }, + "name": "myVMExtension1", + "type": "Microsoft.Compute/virtualMachineScaleSets/virtualMachines/extensions", + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myvmScaleSet/virtualMachines/0/extensions/myVMExtension1" + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ListVirtualMachineScaleSetVMRunCommands.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ListVirtualMachineScaleSetVMRunCommands.json new file mode 100644 index 000000000000..6bbe70a53924 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ListVirtualMachineScaleSetVMRunCommands.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "myvmScaleSet", + "instanceId": "0", + "api-version": "2021-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "myRunCommand", + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets/virtualMachines/runCommands", + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myvmScaleSet/virtualMachines/0/runCommands/myRunCommand", + "properties": { + "source": { + "script": "Write-Host Hello World!" + }, + "parameters": [ + { + "name": "param1", + "value": "value1" + }, + { + "name": "param2", + "value": "value2" + } + ], + "asyncExecution": false, + "runAsUser": "user1", + "timeoutInSeconds": 0, + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ListVirtualMachineScaleSetsInASubscriptionByLocation.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ListVirtualMachineScaleSetsInASubscriptionByLocation.json new file mode 100644 index 000000000000..048d49bfabfb --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ListVirtualMachineScaleSetsInASubscriptionByLocation.json @@ -0,0 +1,169 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "location": "eastus", + "api-version": "2020-06-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "{virtualMachineScaleSetName}", + "id": "/subscriptions/{subscription-id}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "location": "eastus", + "tags": { + "myTag1": "tagValue1" + }, + "sku": { + "name": "Standard_D2s_v3", + "tier": "Standard", + "capacity": 4 + }, + "properties": { + "singlePlacementGroup": false, + "upgradePolicy": { + "mode": "Automatic", + "automaticOSUpgradePolicy": { + "enableAutomaticOSUpgrade": false + } + }, + "virtualMachineProfile": { + "storageProfile": { + "osDisk": { + "createOption": "FromImage", + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Premium_LRS" + }, + "diskSizeGB": 30 + }, + "imageReference": { + "publisher": "azuredatabricks", + "offer": "databricks", + "sku": "databricksworker", + "version": "3.15.2" + }, + "dataDisks": [] + }, + "osProfile": { + "computerNamePrefix": "{virtualMachineScaleSetName}", + "adminUsername": "admin", + "linuxConfiguration": { + "disablePasswordAuthentication": false + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "myNic", + "properties": { + "primary": true, + "ipConfigurations": [ + { + "name": "myIPConfig", + "properties": { + "primary": true, + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/myVNet/subnets/mySubnet" + } + } + } + ], + "networkSecurityGroup": { + "id": "/subscriptions/{subscription-id}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/myNetworkSecurityGroup" + } + } + } + ] + } + }, + "provisioningState": "succeeded", + "overprovision": false, + "doNotRunExtensionsOnOverprovisionedVMs": false, + "platformFaultDomainCount": 1 + } + }, + { + "name": "{virtualMachineScaleSetName}", + "id": "/subscriptions/{subscription-id}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}1", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "location": "eastus", + "tags": { + "myTag1": "tagValue2" + }, + "sku": { + "name": "Standard_D2s_v3", + "tier": "Standard", + "capacity": 4 + }, + "properties": { + "singlePlacementGroup": false, + "upgradePolicy": { + "mode": "Automatic", + "automaticOSUpgradePolicy": { + "enableAutomaticOSUpgrade": false + } + }, + "virtualMachineProfile": { + "storageProfile": { + "osDisk": { + "createOption": "FromImage", + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Premium_LRS" + }, + "diskSizeGB": 30 + }, + "imageReference": { + "publisher": "azuredatabricks", + "offer": "databricks", + "sku": "databricksworker", + "version": "3.15.2" + }, + "dataDisks": [] + }, + "osProfile": { + "computerNamePrefix": "{virtualMachineScaleSetName}", + "adminUsername": "admin", + "linuxConfiguration": { + "disablePasswordAuthentication": false + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "myNic1", + "properties": { + "primary": true, + "ipConfigurations": [ + { + "name": "myIPConfig", + "properties": { + "primary": true, + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/myVNet/subnets/mySubnet" + } + } + } + ], + "networkSecurityGroup": { + "id": "/subscriptions/{subscription-id}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/myNetworkSecurityGroup" + } + } + } + ] + } + }, + "provisioningState": "succeeded", + "overprovision": false, + "doNotRunExtensionsOnOverprovisionedVMs": false, + "platformFaultDomainCount": 1 + } + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ListVirtualMachinesInASubscriptionByLocation.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ListVirtualMachinesInASubscriptionByLocation.json new file mode 100644 index 000000000000..3b251b0b57ec --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ListVirtualMachinesInASubscriptionByLocation.json @@ -0,0 +1,127 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "location": "eastus", + "api-version": "2021-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "vmId": "{vmId}", + "availabilitySet": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}" + }, + "hardwareProfile": { + "vmSize": "Standard_A0" + }, + "storageProfile": { + "imageReference": { + "publisher": "MicrosoftWindowsServer", + "offer": "WindowsServer", + "sku": "2012-R2-Datacenter", + "version": "4.127.20170406" + }, + "osDisk": { + "osType": "Windows", + "name": "test", + "createOption": "FromImage", + "vhd": { + "uri": "https://{storageAccountName}.blob.core.windows.net/{containerName}/{vhdName}.vhd" + }, + "caching": "None", + "diskSizeGB": 127 + }, + "dataDisks": [] + }, + "osProfile": { + "computerName": "Test", + "adminUsername": "Foo12", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + }, + "secrets": [], + "allowExtensionOperations": true + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}" + } + ] + }, + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/virtualMachines", + "location": "eastus", + "tags": { + "RG": "rg", + "testTag": "1" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{virtualMachineName}", + "name": "{virtualMachineName}" + }, + { + "properties": { + "vmId": "{vmId}", + "availabilitySet": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}" + }, + "hardwareProfile": { + "vmSize": "Standard_A0" + }, + "storageProfile": { + "imageReference": { + "publisher": "MicrosoftWindowsServer", + "offer": "WindowsServer", + "sku": "2012-R2-Datacenter", + "version": "4.127.20170406" + }, + "osDisk": { + "osType": "Windows", + "name": "test", + "createOption": "FromImage", + "vhd": { + "uri": "https://{storageAccountName}.blob.core.windows.net/{containerName}/{vhdName}.vhd" + }, + "caching": "None", + "diskSizeGB": 127 + }, + "dataDisks": [] + }, + "osProfile": { + "computerName": "Test", + "adminUsername": "Foo12", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + }, + "secrets": [], + "allowExtensionOperations": true + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}" + } + ] + }, + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/virtualMachines", + "location": "eastus", + "tags": { + "RG": "rg", + "testTag": "1" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{virtualMachineName}", + "name": "{virtualMachineName}" + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/LogAnalyticsRequestRateByInterval.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/LogAnalyticsRequestRateByInterval.json new file mode 100644 index 000000000000..c7964817305b --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/LogAnalyticsRequestRateByInterval.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "location": "westus", + "api-version": "2021-03-01", + "parameters": { + "intervalLength": "FiveMins", + "blobContainerSasUri": "https://somesasuri", + "fromTime": "2018-01-21T01:54:06.862601Z", + "toTime": "2018-01-23T01:54:06.862601Z", + "groupByResourceName": true + } + }, + "responses": { + "200": { + "body": { + "properties": { + "output": "https://crptestar4227.blob.core.windows.net:443/sascontainer/RequestRateByInterval_20180121-0154_20180123-0154.csv" + } + } + }, + "202": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/LogAnalyticsThrottledRequests.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/LogAnalyticsThrottledRequests.json new file mode 100644 index 000000000000..38714863c854 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/LogAnalyticsThrottledRequests.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "location": "westus", + "api-version": "2021-03-01", + "parameters": { + "blobContainerSasUri": "https://somesasuri", + "fromTime": "2018-01-21T01:54:06.862601Z", + "toTime": "2018-01-23T01:54:06.862601Z", + "groupByOperationName": true, + "groupByResourceName": false, + "groupByClientApplicationId": false, + "groupByUserAgent": false + } + }, + "responses": { + "200": { + "body": { + "properties": { + "output": "https://crptestar4227.blob.core.windows.net:443/sascontainer/ThrottledRequests_20180121-0154_20180123-0154.csv" + } + } + }, + "202": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/PatchAProximityPlacementGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/PatchAProximityPlacementGroup.json new file mode 100644 index 000000000000..446dcf6b0107 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/PatchAProximityPlacementGroup.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-01", + "proximityPlacementGroupName": "myProximityPlacementGroup", + "parameters": { + "tags": { + "additionalProp1": "string" + } + } + }, + "responses": { + "200": { + "body": { + "name": "myProximityPlacementGroup", + "properties": { + "proximityPlacementGroupType": "Standard" + }, + "location": "westus", + "type": "Microsoft.Compute/proximityPlacementGroups", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/proximityPlacementGroups/myProximityPlacementGroup" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ReapplyVirtualMachine.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ReapplyVirtualMachine.json new file mode 100644 index 000000000000..4f3d5df136b0 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ReapplyVirtualMachine.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "ResourceGroup", + "api-version": "2021-03-01", + "vmName": "VMName" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ReimageVirtualMachine.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ReimageVirtualMachine.json new file mode 100644 index 000000000000..d6e194182101 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ReimageVirtualMachine.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-01", + "vmName": "myVMName", + "parameters": { + "tempDisk": true + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/RetrieveBootDiagnosticsDataVMScaleSetVM.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/RetrieveBootDiagnosticsDataVMScaleSetVM.json new file mode 100644 index 000000000000..fbdaf0092afb --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/RetrieveBootDiagnosticsDataVMScaleSetVM.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "ResourceGroup", + "api-version": "2021-03-01", + "vmScaleSetName": "myvmScaleSet", + "instanceId": "0", + "sasUriExpirationTimeInMinutes": 60 + }, + "responses": { + "200": { + "body": { + "consoleScreenshotBlobUri": "https://storageuri/myvmScaleSetinstance.screenshot.bmp?{saskey}", + "serialConsoleLogBlobUri": "https://storageuri/myvmScaleSetinstance.serialconsole.log?{saskey}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/RetrieveBootDiagnosticsDataVirtualMachine.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/RetrieveBootDiagnosticsDataVirtualMachine.json new file mode 100644 index 000000000000..363b753a50f5 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/RetrieveBootDiagnosticsDataVirtualMachine.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "ResourceGroup", + "api-version": "2021-03-01", + "vmName": "VMName", + "sasUriExpirationTimeInMinutes": 60 + }, + "responses": { + "200": { + "body": { + "consoleScreenshotBlobUri": "https://storageuri/vm.screenshot.bmp?{sasKey}", + "serialConsoleLogBlobUri": "https://storageuri/vm.serialconsole.log?{sasKey}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/SimulateEvictionOfVM.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/SimulateEvictionOfVM.json new file mode 100644 index 000000000000..5b6ed9ee4471 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/SimulateEvictionOfVM.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "ResourceGroup", + "api-version": "2021-03-01", + "vmName": "VMName" + }, + "responses": { + "204": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/SimulateEvictionOfVmssVM.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/SimulateEvictionOfVmssVM.json new file mode 100644 index 000000000000..fbe4fdd545f5 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/SimulateEvictionOfVmssVM.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "ResourceGroup", + "vmScaleSetName": "VmScaleSetName", + "api-version": "2021-03-01", + "instanceId": "InstanceId" + }, + "responses": { + "204": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/UpdateImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/UpdateImage.json new file mode 100644 index 000000000000..4e22f8cec250 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/UpdateImage.json @@ -0,0 +1,107 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-01", + "imageName": "myImage", + "parameters": { + "properties": { + "sourceVirtualMachine": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM" + }, + "hyperVGeneration": "V1" + }, + "tags": { + "department": "HR" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/myImage", + "name": "myImage", + "type": "Microsoft.Compute/images", + "location": "West US", + "tags": { + "department": "HR" + }, + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Windows", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "snapshot": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + }, + "managedDisk": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk1" + }, + "osState": "Generalized", + "storageAccountType": "Standard_LRS", + "diskSizeGB": 20 + }, + "dataDisks": [ + { + "lun": 1, + "blobUri": "https://mystorageaccount.blob.core.windows.net/dataimages/dataimage.vhd", + "snapshot": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2" + }, + "managedDisk": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk2" + }, + "storageAccountType": "Standard_LRS" + } + ], + "zoneResilient": true + }, + "provisioningState": "created" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/myImage", + "name": "myImage", + "type": "Microsoft.Compute/images", + "location": "West US", + "tags": { + "department": "HR" + }, + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Windows", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "snapshot": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + }, + "managedDisk": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk1" + }, + "osState": "Generalized", + "storageAccountType": "Standard_LRS", + "diskSizeGB": 20 + }, + "dataDisks": [ + { + "lun": 1, + "blobUri": "https://mystorageaccount.blob.core.windows.net/dataimages/dataimage.vhd", + "snapshot": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2" + }, + "managedDisk": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk2" + }, + "storageAccountType": "Standard_LRS" + } + ], + "zoneResilient": true + }, + "provisioningState": "created" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/UpdateRunCommand.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/UpdateRunCommand.json new file mode 100644 index 000000000000..2168b2d62f8a --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/UpdateRunCommand.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "runCommandName": "myRunCommand", + "api-version": "2021-03-01", + "runCommand": { + "properties": { + "source": { + "script": "Write-Host Script Source Updated!" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "myRunCommand", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM/runCommands/myRunCommand", + "type": "Microsoft.Compute/virtualMachines/runCommands", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "source": { + "script": "Write-Host Script Source Updated!" + }, + "parameters": [ + { + "name": "param1", + "value": "value1" + }, + { + "name": "param2", + "value": "value2" + } + ], + "asyncExecution": false, + "runAsUser": "user1", + "timeoutInSeconds": 3600, + "provisioningState": "Updating" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/UpdateVMDetachDataDiskUsingToBeDetachedProperty.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/UpdateVMDetachDataDiskUsingToBeDetachedProperty.json new file mode 100644 index 000000000000..439117287e95 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/UpdateVMDetachDataDiskUsingToBeDetachedProperty.json @@ -0,0 +1,135 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2021-03-01", + "parameters": { + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D2_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "name": "myVMosdisk", + "createOption": "FromImage" + }, + "dataDisks": [ + { + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 0, + "toBeDetached": true + }, + { + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 1, + "toBeDetached": false + } + ] + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [ + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 0, + "diskSizeGB": 1023, + "toBeDetached": true + }, + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 1, + "diskSizeGB": 1023, + "toBeDetached": false + } + ] + }, + "vmId": "3906fef9-a1e5-4b83-a8a8-540858b41df0", + "hardwareProfile": { + "vmSize": "Standard_D2_v2" + }, + "provisioningState": "Updating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/UpdateVMForceDetachDataDisk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/UpdateVMForceDetachDataDisk.json new file mode 100644 index 000000000000..d8fb811cb88c --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/UpdateVMForceDetachDataDisk.json @@ -0,0 +1,137 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2021-03-01", + "parameters": { + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D2_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "name": "myVMosdisk", + "createOption": "FromImage" + }, + "dataDisks": [ + { + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 0, + "toBeDetached": true, + "detachOption": "ForceDetach" + }, + { + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 1, + "toBeDetached": false + } + ] + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [ + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 0, + "diskSizeGB": 1023, + "toBeDetached": true, + "detachOption": "ForceDetach" + }, + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 1, + "diskSizeGB": 1023, + "toBeDetached": false + } + ] + }, + "vmId": "3906fef9-a1e5-4b83-a8a8-540858b41df0", + "hardwareProfile": { + "vmSize": "Standard_D2_v2" + }, + "provisioningState": "Updating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/UpdateVirtualMachineScaleSetVMExtensions.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/UpdateVirtualMachineScaleSetVMExtensions.json new file mode 100644 index 000000000000..96664dcb1ace --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/UpdateVirtualMachineScaleSetVMExtensions.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "myvmScaleSet", + "instanceId": "0", + "vmExtensionName": "myVMExtension", + "api-version": "2021-03-01", + "extensionParameters": { + "properties": { + "autoUpgradeMinorVersion": true, + "publisher": "extPublisher", + "type": "extType", + "typeHandlerVersion": "1.2", + "settings": { + "UserName": "xyz@microsoft.com" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "myVMExtension", + "type": "Microsoft.Compute/virtualMachineScaleSets/virtualMachines/extensions", + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myvmScaleSet/virtualMachines/0/extensions/myVMExtension", + "properties": { + "autoUpgradeMinorVersion": true, + "provisioningState": "Creating", + "publisher": "extPublisher", + "type": "extType", + "typeHandlerVersion": "1.2", + "settings": { + "UserName": "xyz@microsoft.com" + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/UpdateVirtualMachineScaleSetVMRunCommands.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/UpdateVirtualMachineScaleSetVMRunCommands.json new file mode 100644 index 000000000000..025ec498ab13 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/UpdateVirtualMachineScaleSetVMRunCommands.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "myvmScaleSet", + "instanceId": "0", + "runCommandName": "myRunCommand", + "api-version": "2021-03-01", + "runCommand": { + "properties": { + "source": { + "script": "Write-Host Script Source Updated!" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "myRunCommand", + "type": "Microsoft.Compute/virtualMachineScaleSets/virtualMachines/runCommands", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myvmScaleSet/virtualMachines/0/runCommands/myRunCommand", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "source": { + "script": "Write-Host Script Source Updated!" + }, + "parameters": [ + { + "name": "param1", + "value": "value1" + }, + { + "name": "param2", + "value": "value2" + } + ], + "asyncExecution": false, + "runAsUser": "user1", + "timeoutInSeconds": 3600, + "provisioningState": "Updating" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/VMScaleSetExtensionRollingUpgrade.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/VMScaleSetExtensionRollingUpgrade.json new file mode 100644 index 000000000000..4a0869f43354 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/VMScaleSetExtensionRollingUpgrade.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2021-03-01" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/VMScaleSetRunCommand.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/VMScaleSetRunCommand.json new file mode 100644 index 000000000000..f4708018979b --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/VMScaleSetRunCommand.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "myVirtualMachineScaleSet", + "instanceId": "0", + "api-version": "2021-03-01", + "parameters": { + "commandId": "RunPowerShellScript", + "script": [ + "Write-Host Hello World!" + ] + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "code": "ComponentStatus/StdOut/succeeded", + "level": "Info", + "displayStatus": "Provisioning succeeded", + "message": "Hello World!" + }, + { + "code": "ComponentStatus/StdErr/succeeded", + "level": "Info", + "displayStatus": "Provisioning succeeded", + "message": "" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/VirtualMachineAssessPatches.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/VirtualMachineAssessPatches.json new file mode 100644 index 000000000000..698ae3cf24f2 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/VirtualMachineAssessPatches.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroupName", + "vmName": "myVMName", + "api-version": "2021-03-01" + }, + "responses": { + "200": { + "body": { + "status": "Succeeded", + "assessmentActivityId": "68f8b292-dfc2-4646-9781-33cc88631968", + "rebootPending": true, + "criticalAndSecurityPatchCount": 1, + "otherPatchCount": 2, + "startDateTime": "2020-04-24T21:02:04.2556154Z", + "availablePatches": [ + { + "patchId": "35428702-5784-4ba4-a6e0-5222258b5411", + "name": "Definition Update for Windows Defender Antivirus - KB2267602 (Definition 1.279.1373.0)", + "version": "", + "kbId": "2267602", + "classifications": [ + "Definition Updates" + ], + "rebootBehavior": "NeverReboots", + "activityId": "68f8b292-dfc2-4646-9781-33cc88631968", + "publishedDate": "2018-11-07T00:00:00Z", + "lastModifiedDateTime": "2020-04-24T21:18:45.2830263Z", + "assessmentState": "Available" + }, + { + "patchId": "39f9cdd1-795c-4d0e-8c0a-73ab3f31746d", + "name": "Windows Malicious Software Removal Tool x64 - October 2018 (KB890830)", + "version": "", + "kbId": "890830", + "classifications": [ + "Update Rollups" + ], + "rebootBehavior": "CanRequestReboot", + "activityId": "68f8b292-dfc2-4646-9781-33cc88631968", + "publishedDate": "2018-11-07T00:00:00Z", + "lastModifiedDateTime": "2020-04-24T21:18:45.2830263Z", + "assessmentState": "Available" + } + ], + "error": null + } + }, + "202": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/VirtualMachineInstallPatches.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/VirtualMachineInstallPatches.json new file mode 100644 index 000000000000..8e4b701ceedc --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/VirtualMachineInstallPatches.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroupName", + "vmName": "myVMName", + "api-version": "2021-03-01", + "installPatchesInput": { + "maximumDuration": "PT4H", + "rebootSetting": "IfRequired", + "windowsParameters": { + "classificationsToInclude": [ + "Critical", + "Security" + ], + "maxPatchPublishDate": "2020-11-19T02:36:43.0539904+00:00" + } + } + }, + "responses": { + "200": { + "body": { + "status": "Succeeded", + "installationActivityId": "68f8b292-dfc2-4646-9781-33cc88631968", + "rebootStatus": "Completed", + "maintenanceWindowExceeded": false, + "excludedPatchCount": 0, + "notSelectedPatchCount": 0, + "pendingPatchCount": 2, + "installedPatchCount": 3, + "failedPatchCount": 0, + "startDateTime": "2020-04-24T21:02:04.2556154Z", + "patches": [ + { + "patchId": "35428702-5784-4ba4-a6e0-5222258b5411", + "name": "Definition Update for Windows Defender Antivirus - KB2267602 (Definition 1.279.1373.0)", + "version": "", + "kbId": "2267602", + "classifications": [ + "Definition Updates" + ], + "installationState": "Installed" + }, + { + "patchId": "39f9cdd1-795c-4d0e-8c0a-73ab3f31746d", + "name": "Windows Malicious Software Removal Tool x64 - October 2018 (KB890830)", + "version": "", + "kbId": "890830", + "classifications": [ + "Update Rollups" + ], + "installationState": "Pending" + } + ], + "error": null + } + }, + "202": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/VirtualMachineRunCommand.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/VirtualMachineRunCommand.json new file mode 100644 index 000000000000..3f186bc983e4 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/VirtualMachineRunCommand.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "24fb23e3-6ba3-41f0-9b6e-e41131d5d61e", + "resourceGroupName": "crptestar98131", + "vmName": "vm3036", + "$top": 1, + "api-version": "2021-03-01", + "monitor": "true", + "parameters": { + "commandId": "RunPowerShellScript" + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "code": "ComponentStatus/StdOut/succeeded", + "level": "Info", + "displayStatus": "Provisioning succeeded", + "message": "This is a sample script with parameters value1 value2" + }, + { + "code": "ComponentStatus/StdErr/succeeded", + "level": "Info", + "displayStatus": "Provisioning succeeded", + "message": "" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/VirtualMachineRunCommandGet.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/VirtualMachineRunCommandGet.json new file mode 100644 index 000000000000..991e95ca4d78 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/VirtualMachineRunCommandGet.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "24fb23e3-6ba3-41f0-9b6e-e41131d5d61e", + "location": "SoutheastAsia", + "commandId": "RunPowerShellScript", + "api-version": "2021-03-01" + }, + "responses": { + "200": { + "body": { + "script": [ + "param(", + " [string]$arg1,", + " [string]$arg2", + ")", + "Write-Host This is a sample script with parameters $arg1 $arg2" + ], + "parameters": [ + { + "name": "arg1", + "type": "string", + "defaultValue": "value1" + }, + { + "name": "arg2", + "type": "string", + "defaultValue": "value2" + } + ], + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "id": "RunPowerShellScript", + "osType": "Windows", + "label": "Executes a PowerShell script", + "description": "Custom multiline PowerShell script should be defined in script property. Optional parameters can be set in parameters property." + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/VirtualMachineRunCommandList.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/VirtualMachineRunCommandList.json new file mode 100644 index 000000000000..86bcb9132b74 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/VirtualMachineRunCommandList.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "subscriptionId": "subid", + "location": "SoutheastAsia", + "api-version": "2021-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "id": "EnableRemotePS", + "osType": "Windows", + "label": "Enable remote PowerShell", + "description": "Configure the machine to enable remote PowerShell." + }, + { + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "id": "IPConfig", + "osType": "Windows", + "label": "List IP configuration", + "description": "Shows detailed information for the IP address, subnet mask and default gateway for each adapter bound to TCP/IP." + }, + { + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "id": "RunPowerShellScript", + "osType": "Windows", + "label": "Executes a PowerShell script", + "description": "Custom multiline PowerShell script should be defined in script property. Optional parameters can be set in parameters property." + }, + { + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "id": "RunShellScript", + "osType": "Linux", + "label": "Executes a Linux shell script", + "description": "Custom multiline shell script should be defined in script property. Optional parameters can be set in parameters property." + }, + { + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "id": "ifconfig", + "osType": "Linux", + "label": "List network configuration", + "description": "Get the configuration of all network interfaces." + }, + { + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "id": "EnableAdminAccount", + "osType": "Windows", + "label": "Enable administrator account", + "description": "Checks if the local Administrator account is disabled, and if so enables it." + }, + { + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "id": "ResetAccountPassword", + "osType": "Windows", + "label": "Reset built-in Administrator account password", + "description": "Reset built-in Administrator account password." + }, + { + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "id": "RDPSettings", + "osType": "Windows", + "label": "Verify RDP Listener Settings", + "description": "Checks registry settings and domain policy settings. Suggests policy actions if machine is part of a domain or modifies the settings to default values." + }, + { + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "id": "SetRDPPort", + "osType": "Windows", + "label": "Set Remote Desktop port", + "description": "Sets the default or user specified port number for Remote Desktop connections. Enables firewall rule for inbound access to the port." + }, + { + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "id": "ResetRDPCert", + "osType": "Windows", + "label": "Restore RDP Authentication mode to defaults", + "description": "Removes the SSL certificate tied to the RDP listener and restores the RDP listerner security to default. Use this script if you see any issues with the certificate." + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/runCommands.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/runCommands.json new file mode 100644 index 000000000000..09fef5bae540 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/runCommands.json @@ -0,0 +1,1438 @@ +{ + "swagger": "2.0", + "info": { + "title": "RunCommandsClient", + "description": "The Run Commands Client.", + "version": "2021-03-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json", + "text/json" + ], + "produces": [ + "application/json", + "text/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/runCommands": { + "get": { + "tags": [ + "VirtualMachineRunCommands" + ], + "operationId": "VirtualMachineRunCommands_List", + "x-ms-examples": { + "VirtualMachineRunCommandList": { + "$ref": "./examples/VirtualMachineRunCommandList.json" + } + }, + "description": "Lists all available run commands for a subscription in a location.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location upon which run commands is queried.", + "pattern": "^[-\\w\\._]+$" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RunCommandListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/runCommands/{commandId}": { + "get": { + "tags": [ + "VirtualMachineRunCommands" + ], + "operationId": "VirtualMachineRunCommands_Get", + "x-ms-examples": { + "VirtualMachineRunCommandGet": { + "$ref": "./examples/VirtualMachineRunCommandGet.json" + } + }, + "description": "Gets specific run command for a subscription in a location.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location upon which run commands is queried.", + "pattern": "^[-\\w\\._]+$" + }, + { + "name": "commandId", + "in": "path", + "required": true, + "type": "string", + "description": "The command id." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RunCommandDocument" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/runCommand": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_RunCommand", + "x-ms-examples": { + "VirtualMachineRunCommand": { + "$ref": "./examples/VirtualMachineRunCommand.json" + } + }, + "description": "Run command on the VM.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RunCommandInput" + }, + "description": "Parameters supplied to the Run command operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RunCommandResult" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/runCommand": { + "post": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_RunCommand", + "x-ms-examples": { + "VirtualMachineScaleSetVMs_RunCommand": { + "$ref": "./examples/VMScaleSetRunCommand.json" + } + }, + "description": "Run command on a virtual machine in a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RunCommandInput" + }, + "description": "Parameters supplied to the Run command operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RunCommandResult" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/runCommands/{runCommandName}": { + "put": { + "tags": [ + "VirtualMachineRunCommands" + ], + "operationId": "VirtualMachineRunCommands_CreateOrUpdate", + "description": "The operation to create or update the run command.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine where the run command should be created or updated." + }, + { + "name": "runCommandName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine run command." + }, + { + "name": "runCommand", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineRunCommand" + }, + "description": "Parameters supplied to the Create Virtual Machine RunCommand operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineRunCommand" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/VirtualMachineRunCommand" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create or update a run command.": { + "$ref": "./examples/CreateOrUpdateRunCommand.json" + } + } + }, + "patch": { + "tags": [ + "VirtualMachineRunCommands" + ], + "operationId": "VirtualMachineRunCommands_Update", + "description": "The operation to update the run command.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine where the run command should be updated." + }, + { + "name": "runCommandName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine run command." + }, + { + "name": "runCommand", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineRunCommandUpdate" + }, + "description": "Parameters supplied to the Update Virtual Machine RunCommand operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineRunCommand" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update a run command.": { + "$ref": "./examples/UpdateRunCommand.json" + } + } + }, + "delete": { + "tags": [ + "VirtualMachineRunCommands" + ], + "operationId": "VirtualMachineRunCommands_Delete", + "description": "The operation to delete the run command.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine where the run command should be deleted." + }, + { + "name": "runCommandName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine run command." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete a run command.": { + "$ref": "./examples/DeleteRunCommand.json" + } + } + }, + "get": { + "tags": [ + "VirtualMachineRunCommands" + ], + "operationId": "VirtualMachineRunCommands_GetByVirtualMachine", + "description": "The operation to get the run command.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine containing the run command." + }, + { + "name": "runCommandName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine run command." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineRunCommand" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get a run command.": { + "$ref": "./examples/GetRunCommand.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/runCommands": { + "get": { + "tags": [ + "VirtualMachineRunCommands" + ], + "operationId": "VirtualMachineRunCommands_ListByVirtualMachine", + "description": "The operation to get all run commands of a Virtual Machine.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine containing the run command." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineRunCommandsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List run commands in a Virtual Machine.": { + "$ref": "./examples/ListRunCommandsInVM.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}/runCommands/{runCommandName}": { + "put": { + "tags": [ + "VirtualMachineScaleSetVMRunCommands" + ], + "operationId": "VirtualMachineScaleSetVMRunCommands_CreateOrUpdate", + "description": "The operation to create or update the VMSS VM run command.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "name": "runCommandName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine run command." + }, + { + "name": "runCommand", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineRunCommand" + }, + "description": "Parameters supplied to the Create Virtual Machine RunCommand operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineRunCommand" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/VirtualMachineRunCommand" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create VirtualMachineScaleSet VM run command.": { + "$ref": "./examples/CreateOrUpdateVirtualMachineScaleSetVMRunCommands.json" + } + } + }, + "patch": { + "tags": [ + "VirtualMachineScaleSetVMRunCommands" + ], + "operationId": "VirtualMachineScaleSetVMRunCommands_Update", + "description": "The operation to update the VMSS VM run command.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "name": "runCommandName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine run command." + }, + { + "name": "runCommand", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineRunCommandUpdate" + }, + "description": "Parameters supplied to the Update Virtual Machine RunCommand operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineRunCommand" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update VirtualMachineScaleSet VM run command.": { + "$ref": "./examples/UpdateVirtualMachineScaleSetVMRunCommands.json" + } + } + }, + "delete": { + "tags": [ + "VirtualMachineScaleSetVMRunCommands" + ], + "operationId": "VirtualMachineScaleSetVMRunCommands_Delete", + "description": "The operation to delete the VMSS VM run command.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "name": "runCommandName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine run command." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete VirtualMachineScaleSet VM run command.": { + "$ref": "./examples/DeleteVirtualMachineScaleSetVMRunCommands.json" + } + } + }, + "get": { + "tags": [ + "VirtualMachineScaleSetVMRunCommands" + ], + "operationId": "VirtualMachineScaleSetVMRunCommands_Get", + "description": "The operation to get the VMSS VM run command.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "name": "runCommandName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine run command." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineRunCommand" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get VirtualMachineScaleSet VM run commands.": { + "$ref": "./examples/GetVirtualMachineScaleSetVMRunCommands.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}/runCommands": { + "get": { + "tags": [ + "VirtualMachineScaleSetVMRunCommands" + ], + "operationId": "VirtualMachineScaleSetVMRunCommands_List", + "description": "The operation to get all run commands of an instance in Virtual Machine Scaleset.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineRunCommandsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List run commands in Vmss instance.": { + "$ref": "./examples/ListVirtualMachineScaleSetVMRunCommands.json" + } + } + } + } + }, + "definitions": { + "RunCommandInputParameter": { + "properties": { + "name": { + "type": "string", + "description": "The run command parameter name." + }, + "value": { + "type": "string", + "description": "The run command parameter value." + } + }, + "required": [ + "name", + "value" + ], + "description": "Describes the properties of a run command parameter." + }, + "RunCommandInput": { + "properties": { + "commandId": { + "type": "string", + "description": "The run command id." + }, + "script": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Optional. The script to be executed. When this value is given, the given script will override the default script of the command." + }, + "parameters": { + "type": "array", + "items": { + "$ref": "#/definitions/RunCommandInputParameter" + }, + "description": "The run command parameters." + } + }, + "required": [ + "commandId" + ], + "description": "Capture Virtual Machine parameters." + }, + "RunCommandParameterDefinition": { + "properties": { + "name": { + "type": "string", + "description": "The run command parameter name." + }, + "type": { + "type": "string", + "description": "The run command parameter type." + }, + "defaultValue": { + "type": "string", + "description": "The run command parameter default value." + }, + "required": { + "type": "boolean", + "description": "The run command parameter required.", + "default": false + } + }, + "required": [ + "name", + "type" + ], + "description": "Describes the properties of a run command parameter." + }, + "RunCommandDocumentBase": { + "properties": { + "$schema": { + "type": "string", + "description": "The VM run command schema." + }, + "id": { + "type": "string", + "description": "The VM run command id." + }, + "osType": { + "type": "string", + "description": "The Operating System type.", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": false + } + }, + "label": { + "type": "string", + "description": "The VM run command label." + }, + "description": { + "type": "string", + "description": "The VM run command description." + } + }, + "required": [ + "$schema", + "id", + "osType", + "label", + "description" + ], + "description": "Describes the properties of a Run Command metadata." + }, + "RunCommandDocument": { + "allOf": [ + { + "$ref": "#/definitions/RunCommandDocumentBase" + } + ], + "properties": { + "script": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The script to be executed." + }, + "parameters": { + "type": "array", + "items": { + "$ref": "#/definitions/RunCommandParameterDefinition" + }, + "description": "The parameters used by the script." + } + }, + "required": [ + "script" + ], + "description": "Describes the properties of a Run Command." + }, + "RunCommandListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RunCommandDocumentBase" + }, + "description": "The list of virtual machine run commands." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of run commands. Call ListNext() with this to fetch the next page of run commands." + } + }, + "required": [ + "value" + ], + "description": "The List Virtual Machine operation response." + }, + "InstanceViewStatus": { + "properties": { + "code": { + "type": "string", + "description": "The status code." + }, + "level": { + "type": "string", + "description": "The level code.", + "enum": [ + "Info", + "Warning", + "Error" + ], + "x-ms-enum": { + "name": "StatusLevelTypes", + "modelAsString": false + } + }, + "displayStatus": { + "type": "string", + "description": "The short localizable label for the status." + }, + "message": { + "type": "string", + "description": "The detailed status message, including for alerts and error messages." + }, + "time": { + "type": "string", + "format": "date-time", + "description": "The time of the status." + } + }, + "description": "Instance view status." + }, + "RunCommandResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/InstanceViewStatus" + }, + "description": "Run command operation response." + } + } + }, + "VirtualMachineRunCommandInstanceView": { + "properties": { + "executionState": { + "type": "string", + "description": "Script execution status.", + "enum": [ + "Unknown", + "Pending", + "Running", + "Failed", + "Succeeded", + "TimedOut", + "Canceled" + ], + "x-ms-enum": { + "name": "ExecutionState", + "modelAsString": true + } + }, + "executionMessage": { + "type": "string", + "description": "Communicate script configuration errors or execution messages." + }, + "exitCode": { + "type": "integer", + "format": "int32", + "description": "Exit code returned from script execution." + }, + "output": { + "type": "string", + "description": "Script output stream." + }, + "error": { + "type": "string", + "description": "Script error stream." + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "Script start time." + }, + "endTime": { + "type": "string", + "format": "date-time", + "description": "Script end time." + }, + "statuses": { + "type": "array", + "items": { + "$ref": "#/definitions/InstanceViewStatus" + }, + "description": "The resource status information." + } + }, + "description": "The instance view of a virtual machine run command." + }, + "VirtualMachineRunCommandScriptSource": { + "properties": { + "script": { + "type": "string", + "description": "Specifies the script content to be executed on the VM." + }, + "scriptUri": { + "type": "string", + "description": "Specifies the script download location." + }, + "commandId": { + "type": "string", + "description": "Specifies a commandId of predefined built-in script." + } + }, + "description": "Describes the script sources for run command." + }, + "VirtualMachineRunCommandProperties": { + "properties": { + "source": { + "$ref": "#/definitions/VirtualMachineRunCommandScriptSource", + "description": "The source of the run command script." + }, + "parameters": { + "type": "array", + "items": { + "$ref": "#/definitions/RunCommandInputParameter" + }, + "description": "The parameters used by the script." + }, + "protectedParameters": { + "type": "array", + "items": { + "$ref": "#/definitions/RunCommandInputParameter" + }, + "description": "The parameters used by the script." + }, + "asyncExecution": { + "type": "boolean", + "description": "Optional. If set to true, provisioning will complete as soon as the script starts and will not wait for script to complete.", + "default": false + }, + "runAsUser": { + "type": "string", + "description": "Specifies the user account on the VM when executing the run command." + }, + "runAsPassword": { + "type": "string", + "description": "Specifies the user account password on the VM when executing the run command." + }, + "timeoutInSeconds": { + "type": "integer", + "format": "int32", + "description": "The timeout in seconds to execute the run command." + }, + "outputBlobUri": { + "type": "string", + "description": "Specifies the Azure storage blob where script output stream will be uploaded." + }, + "errorBlobUri": { + "type": "string", + "description": "Specifies the Azure storage blob where script error stream will be uploaded." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state, which only appears in the response." + }, + "instanceView": { + "readOnly": true, + "$ref": "#/definitions/VirtualMachineRunCommandInstanceView", + "description": "The virtual machine run command instance view." + } + }, + "description": "Describes the properties of a Virtual Machine run command." + }, + "VirtualMachineRunCommand": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineRunCommandProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Describes a Virtual Machine run command." + }, + "VirtualMachineRunCommandUpdate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineRunCommandProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/UpdateResource" + } + ], + "description": "Describes a Virtual Machine run command." + }, + "VirtualMachineRunCommandsListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineRunCommand" + }, + "description": "The list of run commands" + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of run commands." + } + }, + "required": [ + "value" + ], + "description": "The List run command 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." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/ApiError" + } + }, + "description": "An error response from the Compute service." + }, + "ApiError": { + "properties": { + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ApiErrorBase" + }, + "description": "The Api error details" + }, + "innererror": { + "$ref": "#/definitions/InnerError", + "description": "The Api inner error" + }, + "code": { + "type": "string", + "description": "The error code." + }, + "target": { + "type": "string", + "description": "The target of the particular error." + }, + "message": { + "type": "string", + "description": "The error message." + } + }, + "description": "Api error." + }, + "Resource": { + "description": "The Resource model definition.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource Id" + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Resource name" + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type" + }, + "location": { + "type": "string", + "description": "Resource location" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "required": [ + "location" + ], + "x-ms-azure-resource": true + }, + "UpdateResource": { + "description": "The Update Resource model definition.", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client Api Version." + } + } +} diff --git a/specification/compute/resource-manager/readme.azureresourceschema.md b/specification/compute/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index a7370a636445..000000000000 --- a/specification/compute/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,334 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-containerservice-2017-01-31 - - tag: schema-containerservice-2016-09-30 - - tag: schema-containerservice-2016-03-30 - - tag: schema-containerservice-2015-11-01-preview - - tag: schema-compute-2020-12-01 - - tag: schema-compute-2020-10-01-preview - - tag: schema-compute-2020-09-30 - - tag: schema-compute-2020-06-30 - - tag: schema-compute-2020-06-01 - - tag: schema-compute-2020-05-01 - - tag: schema-compute-2019-12-01 - - tag: schema-compute-2019-11-01 - - tag: schema-compute-2019-07-01 - - tag: schema-compute-2019-04-01 - - tag: schema-compute-2019-03-01 - - tag: schema-compute-2018-10-01 - - tag: schema-compute-2018-09-30 - - tag: schema-compute-2018-06-01 - - tag: schema-compute-2018-04-01 - - tag: schema-compute-2017-12-01 - - tag: schema-compute-2017-09-01 - - tag: schema-compute-2017-03-30 - - tag: schema-compute-2016-04-30-preview - - tag: schema-compute-2016-03-30 - - tag: schema-compute-2015-06-15 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-containerservice-2017-01-31 and azureresourceschema - -``` yaml $(tag) == 'schema-containerservice-2017-01-31' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerService/stable/2017-01-31/containerService.json - -``` - -### Tag: schema-containerservice-2016-09-30 and azureresourceschema - -``` yaml $(tag) == 'schema-containerservice-2016-09-30' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerService/stable/2016-09-30/containerService.json - -``` - -### Tag: schema-containerservice-2016-03-30 and azureresourceschema - -``` yaml $(tag) == 'schema-containerservice-2016-03-30' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerService/stable/2016-03-30/containerService.json - -``` - -### Tag: schema-containerservice-2015-11-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-containerservice-2015-11-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerService/preview/2015-11-01-preview/containerService.json - -``` - -### Tag: schema-compute-2020-12-01 and azureresourceschema - -``` yaml $(tag) == 'schema-compute-2020-12-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Compute/stable/2020-12-01/compute.json - - Microsoft.Compute/stable/2020-12-01/runCommands.json - -``` - -### Tag: schema-compute-2020-10-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-compute-2020-10-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Compute/preview/2020-10-01-preview/cloudService.json - -``` - -### Tag: schema-compute-2020-09-30 and azureresourceschema - -``` yaml $(tag) == 'schema-compute-2020-09-30' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Compute/stable/2020-09-30/disk.json - - Microsoft.Compute/preview/2020-09-30/gallery.json - - Microsoft.Compute/preview/2020-09-30/sharedGallery.json - -``` - -### Tag: schema-compute-2020-06-30 and azureresourceschema - -``` yaml $(tag) == 'schema-compute-2020-06-30' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Compute/stable/2020-06-30/disk.json - -``` - -### Tag: schema-compute-2020-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-compute-2020-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Compute/stable/2020-06-01/compute.json - - Microsoft.Compute/stable/2020-06-01/runCommands.json - -``` - -### Tag: schema-compute-2020-05-01 and azureresourceschema - -``` yaml $(tag) == 'schema-compute-2020-05-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Compute/stable/2020-05-01/disk.json - -``` - -### Tag: schema-compute-2019-12-01 and azureresourceschema - -``` yaml $(tag) == 'schema-compute-2019-12-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Compute/stable/2019-12-01/gallery.json - - Microsoft.Compute/stable/2019-12-01/compute.json - - Microsoft.Compute/stable/2019-12-01/runCommands.json - -``` - -### Tag: schema-compute-2019-11-01 and azureresourceschema - -``` yaml $(tag) == 'schema-compute-2019-11-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Compute/stable/2019-11-01/disk.json - -``` - -### Tag: schema-compute-2019-07-01 and azureresourceschema - -``` yaml $(tag) == 'schema-compute-2019-07-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Compute/stable/2019-07-01/compute.json - - Microsoft.Compute/stable/2019-07-01/runCommands.json - - Microsoft.Compute/stable/2019-07-01/gallery.json - - Microsoft.Compute/stable/2019-07-01/disk.json - -``` - -### Tag: schema-compute-2019-04-01 and azureresourceschema - -``` yaml $(tag) == 'schema-compute-2019-04-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Compute/stable/2019-04-01/skus.json - -``` - -### Tag: schema-compute-2019-03-01 and azureresourceschema - -``` yaml $(tag) == 'schema-compute-2019-03-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Compute/stable/2019-03-01/compute.json - - Microsoft.Compute/stable/2019-03-01/runCommands.json - - Microsoft.Compute/stable/2019-03-01/disk.json - - Microsoft.Compute/stable/2019-03-01/gallery.json - -``` - -### Tag: schema-compute-2018-10-01 and azureresourceschema - -``` yaml $(tag) == 'schema-compute-2018-10-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Compute/stable/2018-10-01/compute.json - - Microsoft.Compute/stable/2018-10-01/runCommands.json - -``` - -### Tag: schema-compute-2018-09-30 and azureresourceschema - -``` yaml $(tag) == 'schema-compute-2018-09-30' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Compute/stable/2018-09-30/disk.json - -``` - -### Tag: schema-compute-2018-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-compute-2018-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Compute/stable/2018-06-01/gallery.json - - Microsoft.Compute/stable/2018-06-01/disk.json - - Microsoft.Compute/stable/2018-06-01/compute.json - - Microsoft.Compute/stable/2018-06-01/runCommands.json - -``` - -### Tag: schema-compute-2018-04-01 and azureresourceschema - -``` yaml $(tag) == 'schema-compute-2018-04-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Compute/stable/2018-04-01/compute.json - - Microsoft.Compute/stable/2018-04-01/runCommands.json - - Microsoft.Compute/stable/2018-04-01/disk.json - -``` - -### Tag: schema-compute-2017-12-01 and azureresourceschema - -``` yaml $(tag) == 'schema-compute-2017-12-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Compute/stable/2017-12-01/compute.json - - Microsoft.Compute/stable/2017-12-01/runCommands.json - -``` - -### Tag: schema-compute-2017-09-01 and azureresourceschema - -``` yaml $(tag) == 'schema-compute-2017-09-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Compute/stable/2017-09-01/skus.json - -``` - -### Tag: schema-compute-2017-03-30 and azureresourceschema - -``` yaml $(tag) == 'schema-compute-2017-03-30' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Compute/stable/2017-03-30/disk.json - - Microsoft.Compute/stable/2017-03-30/compute.json - - Microsoft.Compute/stable/2017-03-30/runCommands.json - -``` - -### Tag: schema-compute-2016-04-30-preview and azureresourceschema - -``` yaml $(tag) == 'schema-compute-2016-04-30-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Compute/preview/2016-04-30-preview/compute.json - - Microsoft.Compute/preview/2016-04-30-preview/disk.json - -``` - -### Tag: schema-compute-2016-03-30 and azureresourceschema - -``` yaml $(tag) == 'schema-compute-2016-03-30' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Compute/stable/2016-03-30/compute.json - -``` - -### Tag: schema-compute-2015-06-15 and azureresourceschema - -``` yaml $(tag) == 'schema-compute-2015-06-15' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Compute/stable/2015-06-15/compute.json - -``` diff --git a/specification/compute/resource-manager/readme.go.md b/specification/compute/resource-manager/readme.go.md index caf87f7f9240..5144774ed3b6 100644 --- a/specification/compute/resource-manager/readme.go.md +++ b/specification/compute/resource-manager/readme.go.md @@ -2,9 +2,9 @@ These settings apply only when `--go` is specified on the command line. -```yaml $(go) +```yaml $(go) && !(track2) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION clear-output-folder: true directive: @@ -27,10 +27,25 @@ directive: replace(/, 'DummyOrchestrationServiceName'/,''); ``` +``` yaml $(go) && $(track2) +license-header: MICROSOFT_MIT_NO_VERSION +module-name: sdk/compute/armcompute +module: github.com/Azure/azure-sdk-for-go/$(module-name) +output-folder: $(go-sdk-folder)/$(module-name) +azure-arm: true + +directive: + - from: disk.json + where: "$.definitions.PurchasePlan" + transform: > + $["x-ms-client-name"] = "DiskPurchasePlan"; +``` + ### Go multi-api ```yaml $(go) && $(multiapi) batch: + - tag: package-2021-03-01 - tag: package-2020-12-01 - tag: package-2020-10-01-preview - tag: profile-hybrid-2020-09-01 @@ -54,6 +69,16 @@ batch: - tag: package-container-service-2015-11-preview ``` +### Tag: package-2021-03-01 and go + +These settings apply only when `--tag=package-2021-03-01 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +```yaml $(tag)=='package-2021-03-01' && $(go) +namespace: compute +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2021-03-01/$(namespace) +``` + ### Tag: package-2020-12-01 and go These settings apply only when `--tag=package-2020-12-01 --go` is specified on the command line. diff --git a/specification/compute/resource-manager/readme.md b/specification/compute/resource-manager/readme.md index 5dce0a650bf4..1f07309b64ab 100644 --- a/specification/compute/resource-manager/readme.md +++ b/specification/compute/resource-manager/readme.md @@ -61,6 +61,16 @@ directive: - $.definitions.Snapshot.properties suppress: - BodyTopLevelProperties + - where: + - $.definitions.RestorePointCreate.properties + suppress: + - BodyTopLevelProperties + reason: + - CRP has already been using existing ‘RestorePoint’ model definition with these properties as top level properties for many years now. + - where: + - $.definitions.RestorePoint.properties + suppress: + - BodyTopLevelProperties - where: - $.definitions.VirtualMachineScaleSetExtension suppress: @@ -212,7 +222,12 @@ directive: suppress: - D5001 reason: The API response has binary format and file type which is valid Swagger format. However, the example must be a JSON file which does not support specifying this response format. - + - where: + - $.definitions.RestorePoint + suppress: + - NestedResourcesMustHaveListOperation + reason: + - CRP supports the list /restorePoint operation by allowing customers to call Get RestorePointCollection with $expand=RestorePoints ``` ### Tag: package-2021-03-01 @@ -220,11 +235,12 @@ These settings apply only when `--tag=package-2021-03-01` is specified on the co ``` yaml $(tag) == 'package-2021-03-01' input-file: -- Microsoft.Compute/stable/2020-12-01/compute.json -- Microsoft.Compute/stable/2020-12-01/runCommands.json +- Microsoft.Compute/stable/2021-03-01/compute.json +- Microsoft.Compute/stable/2021-03-01/runCommands.json - Microsoft.Compute/stable/2019-04-01/skus.json - Microsoft.Compute/stable/2020-12-01/disk.json -- Microsoft.Compute/stable/2019-12-01/gallery.json +- Microsoft.Compute/stable/2020-09-30/gallery.json +- Microsoft.Compute/stable/2020-09-30/sharedGallery.json - Microsoft.Compute/stable/2021-03-01/cloudService.json ``` @@ -235,6 +251,8 @@ These settings apply only when `--tag=package-2021-03-01-only` is specified on t ``` yaml $(tag) == 'package-2021-03-01-only' input-file: - Microsoft.Compute/stable/2021-03-01/cloudService.json +- Microsoft.Compute/stable/2021-03-01/compute.json +- Microsoft.Compute/stable/2021-03-01/runCommands.json ``` ### Tag: package-2020-12-01 @@ -833,8 +851,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_compute'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js compute/resource-manager ``` ## Go @@ -856,6 +872,4 @@ input-file: - Microsoft.Compute/stable/2019-07-01/disk.json ``` -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/compute/resource-manager/readme.python.md b/specification/compute/resource-manager/readme.python.md index fa136eda202b..69726bc4ee7d 100644 --- a/specification/compute/resource-manager/readme.python.md +++ b/specification/compute/resource-manager/readme.python.md @@ -7,6 +7,7 @@ azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION package-name: azure-mgmt-compute no-namespace-folders: true +package-version: 1.0.0b1 modelerfour: lenient-model-deduplication: true @@ -35,7 +36,7 @@ Generate all API versions currently shipped for this package ```yaml $(multiapi) clear-output-folder: true batch: - - tag: package-2021-03-01 + - tag: package-2021-03-01-only - tag: package-2020-12-01-only - tag: package-2020-10-01-preview-only - tag: package-2020-09-30-only @@ -66,12 +67,12 @@ clear-output-folder: false perform-load: false ``` -### Tag: package-2021-03-01 +### Tag: package-2021-03-01-only -These settings apply only when `--tag=package-2021-03-01 --python` is specified on the command line. +These settings apply only when `--tag=package-2021-03-01-only --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2021-03-01' +``` yaml $(tag) == 'package-2021-03-01-only' namespace: azure.mgmt.compute.v2021_03_01 output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2021_03_01 ``` diff --git a/specification/confidentialledger/data-plane/Microsoft.ConfidentialLedger/preview/0.1-preview/common.json b/specification/confidentialledger/data-plane/Microsoft.ConfidentialLedger/preview/0.1-preview/common.json new file mode 100644 index 000000000000..f65debdd3282 --- /dev/null +++ b/specification/confidentialledger/data-plane/Microsoft.ConfidentialLedger/preview/0.1-preview/common.json @@ -0,0 +1,69 @@ +{ + "swagger": "2.0", + "info": { + "version": "0.1-preview", + "title": "ConfidentialLedgerClient", + "description": "The ConfidentialLedgerClient writes and retrieves ledger entries against the Confidential Ledger service." + }, + "paths": {}, + "definitions": { + "ConfidentialLedgerError": { + "description": "An error response from Confidential Ledger.", + "properties": { + "error": { + "readOnly": true, + "$ref": "#/definitions/ConfidentialLedgerErrorBody" + } + }, + "type": "object" + }, + "ConfidentialLedgerErrorBody": { + "description": "An error response from Confidential Ledger.", + "properties": { + "code": { + "type": "string", + "readOnly": true, + "description": "The error code." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The error message." + }, + "innererror": { + "x-ms-client-name": "innerError", + "readOnly": true, + "$ref": "#/definitions/ConfidentialLedgerErrorBody" + } + }, + "x-nullable": true, + "type": "object" + }, + "ConfidentialLedgerInnerError": { + "description": "An inner error response from Confidential Ledger.", + "properties": { + "code": { + "type": "string", + "readOnly": true, + "description": "The error code." + }, + "innererror": { + "x-ms-client-name": "innerError", + "readOnly": true, + "$ref": "#/definitions/ConfidentialLedgerErrorBody" + } + }, + "x-nullable": true, + "type": "object" + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to be used with the HTTP request." + } + } +} diff --git a/specification/confidentialledger/data-plane/Microsoft.ConfidentialLedger/preview/0.1-preview/confidentialledger.json b/specification/confidentialledger/data-plane/Microsoft.ConfidentialLedger/preview/0.1-preview/confidentialledger.json new file mode 100644 index 000000000000..07c6317a8f9b --- /dev/null +++ b/specification/confidentialledger/data-plane/Microsoft.ConfidentialLedger/preview/0.1-preview/confidentialledger.json @@ -0,0 +1,863 @@ +{ + "swagger": "2.0", + "info": { + "version": "0.1-preview", + "title": "ConfidentialLedgerClient", + "description": "The ConfidentialLedgerClient writes and retrieves ledger entries against the Confidential Ledger service." + }, + "x-ms-parameterized-host": { + "hostTemplate": "{ledgerUri}", + "useSchemePrefix": false, + "positionInOperation": "first", + "parameters": [ + { + "name": "ledgerUri", + "description": "The Confidential Ledger URL, for example https://contoso.confidentialledger.azure.com", + "required": true, + "type": "string", + "in": "path", + "format": "url", + "x-ms-skip-url-encoding": true, + "x-ms-parameter-location": "client" + } + ] + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/app/governance/constitution": { + "get": { + "operationId": "ConfidentialLedger_GetConstitution", + "x-ms-examples": { + "GetConstitution": { + "$ref": "./examples/ledger/GetConstitution.json" + } + }, + "summary": "Gets the constitution used for governance.", + "description": "The constitution is a script that assesses and applies proposals from consortium members.", + "parameters": [ + { + "$ref": "common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The constitution.", + "schema": { + "$ref": "#/definitions/Constitution" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/ConfidentialLedgerError" + } + } + } + } + }, + "/app/governance/members": { + "get": { + "operationId": "ConfidentialLedger_GetConsortiumMembers", + "x-ms-examples": { + "GetConsortiumMembers": { + "$ref": "./examples/ledger/GetConsortiumMembers.json" + } + }, + "summary": "Gets the consortium members.", + "description": "Consortium members can manage the Confidential Ledger.", + "parameters": [ + { + "$ref": "common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "List of consortium members.", + "schema": { + "$ref": "#/definitions/Consortium" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/ConfidentialLedgerError" + } + } + } + } + }, + "/app/enclaveQuotes": { + "get": { + "operationId": "ConfidentialLedger_GetEnclaveQuotes", + "x-ms-examples": { + "GetEnclaveQuotes": { + "$ref": "./examples/ledger/GetEnclaveQuotes.json" + } + }, + "summary": "Gets quotes for all nodes of the Confidential Ledger.", + "description": "A quote is an SGX enclave measurement that can be used to verify the validity of a node and its enclave.", + "parameters": [ + { + "$ref": "common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Response containing enclave quotes.", + "schema": { + "$ref": "#/definitions/ConfidentialLedgerEnclaves" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "common.json#/definitions/ConfidentialLedgerError" + } + } + } + } + }, + "/app/transactions": { + "get": { + "operationId": "ConfidentialLedger_GetLedgerEntries", + "x-ms-examples": { + "GetLedgerEntries": { + "$ref": "./examples/ledger/GetLedgerEntries.json" + } + }, + "x-ms-pageable": { + "itemName": "entries", + "nextLinkName": "@nextLink" + }, + "summary": "Gets ledger entries from a sub-ledger corresponding to a range.", + "description": "A sub-ledger id may optionally be specified. Only entries in the specified (or default) sub-ledger will be returned.", + "parameters": [ + { + "$ref": "common.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubLedgerIdParameter" + }, + { + "$ref": "#/parameters/TransactionIdFromParameter" + }, + { + "$ref": "#/parameters/TransactionIdToParameter" + } + ], + "responses": { + "200": { + "description": "Ledger entries in the specified range.", + "schema": { + "$ref": "#/definitions/PagedLedgerEntries" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "common.json#/definitions/ConfidentialLedgerError" + } + } + } + }, + "post": { + "operationId": "ConfidentialLedger_PostLedgerEntry", + "x-ms-examples": { + "PostLedgerEntry": { + "$ref": "./examples/ledger/PostLedgerEntry.json" + } + }, + "summary": "Writes a ledger entry.", + "description": "A sub-ledger id may optionally be specified.", + "parameters": [ + { + "$ref": "common.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubLedgerIdParameter" + }, + { + "in": "body", + "name": "entry", + "description": "Ledger entry.", + "schema": { + "$ref": "#/definitions/LedgerEntry" + } + } + ], + "responses": { + "200": { + "description": "Returns the transaction id at which the write will be durably stored.", + "headers": { + "x-ms-ccf-transaction-id": { + "type": "string", + "description": "The transaction id at which this write will become durable." + } + }, + "schema": { + "$ref": "#/definitions/LedgerWriteResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "common.json#/definitions/ConfidentialLedgerError" + } + } + } + } + }, + "/app/transactions/{transactionId}": { + "get": { + "operationId": "ConfidentialLedger_GetLedgerEntry", + "x-ms-examples": { + "GetLedgerEntry": { + "$ref": "./examples/ledger/GetLedgerEntry.json" + } + }, + "summary": "Gets the ledger entry at the specified transaction id. A sub-ledger id may optionally be specified to indicate the sub-ledger from which to fetch the value.", + "description": "To return older ledger entries, the relevant sections of the ledger must be read from disk and validated. To prevent blocking within the enclave, the response will indicate whether the entry is ready and part of the response, or if the loading is still ongoing.", + "parameters": [ + { + "$ref": "common.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubLedgerIdParameter" + }, + { + "$ref": "#/parameters/TransactionIdParameter" + } + ], + "responses": { + "200": { + "description": "The result of querying the Confidential Ledger.", + "schema": { + "$ref": "#/definitions/LedgerQueryResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/ConfidentialLedgerError" + } + } + } + } + }, + "/app/transactions/{transactionId}/receipt": { + "get": { + "operationId": "ConfidentialLedger_GetReceipt", + "x-ms-examples": { + "GetReceipt": { + "$ref": "./examples/ledger/GetReceipt.json" + } + }, + "summary": "Gets a receipt certifying ledger contents at a particular transaction id.", + "parameters": [ + { + "$ref": "common.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/TransactionIdParameter" + } + ], + "responses": { + "200": { + "description": "The receipt for the write occurring at the transaction id.", + "schema": { + "$ref": "#/definitions/TransactionReceipt" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "common.json#/definitions/ConfidentialLedgerError" + } + } + } + } + }, + "/app/transactions/{transactionId}/status": { + "get": { + "operationId": "ConfidentialLedger_GetTransactionStatus", + "x-ms-examples": { + "GetTransactionStatus": { + "$ref": "./examples/ledger/GetTransactionStatus.json" + } + }, + "summary": "Gets the status of an entry identified by a transaction id.", + "parameters": [ + { + "$ref": "common.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/TransactionIdParameter" + } + ], + "responses": { + "200": { + "description": "The status of the entry recorded at the specified transaction id.", + "schema": { + "$ref": "#/definitions/TransactionStatus" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "common.json#/definitions/ConfidentialLedgerError" + } + } + } + } + }, + "/app/transactions/current": { + "get": { + "operationId": "ConfidentialLedger_GetCurrentLedgerEntry", + "x-ms-examples": { + "GetCurrentLedgerEntry": { + "$ref": "./examples/ledger/GetCurrentLedgerEntry.json" + } + }, + "summary": "Gets the current value available in the ledger.", + "description": "A sub-ledger id may optionally be specified.", + "parameters": [ + { + "$ref": "common.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubLedgerIdParameter" + } + ], + "responses": { + "200": { + "description": "The current ledger entry available on the receiving node. Non-primary nodes may return older values.", + "schema": { + "$ref": "#/definitions/LedgerEntry" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "common.json#/definitions/ConfidentialLedgerError" + } + } + } + } + }, + "/app/users/{userId}": { + "delete": { + "operationId": "ConfidentialLedger_DeleteUser", + "x-ms-examples": { + "DeleteUser": { + "$ref": "./examples/ledger/DeleteUser.json" + } + }, + "summary": "Deletes a user from the Confidential Ledger.", + "parameters": [ + { + "$ref": "common.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/UserIdParameter" + } + ], + "responses": { + "204": { + "description": "The specified user is deleted." + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "common.json#/definitions/ConfidentialLedgerError" + } + } + } + }, + "get": { + "operationId": "ConfidentialLedger_GetUser", + "x-ms-examples": { + "GetUser": { + "$ref": "./examples/ledger/GetUser.json" + } + }, + "summary": "Gets a user.", + "parameters": [ + { + "$ref": "common.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/UserIdParameter" + } + ], + "responses": { + "200": { + "description": "Details about the specified user.", + "schema": { + "$ref": "#/definitions/LedgerUser" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "common.json#/definitions/ConfidentialLedgerError" + } + } + } + }, + "patch": { + "operationId": "ConfidentialLedger_CreateOrUpdateUser", + "x-ms-examples": { + "CreateOrUpdateUser": { + "$ref": "./examples/ledger/CreateOrUpdateUser.json" + } + }, + "summary": "Adds a user or updates a user's fields.", + "description": "A JSON merge patch is applied for existing users", + "parameters": [ + { + "$ref": "common.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/UserIdParameter" + }, + { + "$ref": "#/parameters/UserDetailsParameter" + } + ], + "responses": { + "200": { + "description": "User created or updated successfully.", + "schema": { + "$ref": "#/definitions/LedgerUser" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "common.json#/definitions/ConfidentialLedgerError" + } + } + } + } + } + }, + "definitions": { + "ConfidentialLedgerEnclaves": { + "description": "Information about the enclaves running the Confidential Ledger.", + "required": [ + "currentNodeId", + "enclaveQuotes" + ], + "properties": { + "currentNodeId": { + "description": "Id of the Confidential Ledger node responding to the request.", + "$ref": "#/definitions/EntityId" + }, + "enclaveQuotes": { + "$ref": "#/definitions/EnclaveQuotes" + } + }, + "type": "object" + }, + "Consortium": { + "description": "List of members in the consortium.", + "required": [ + "members" + ], + "properties": { + "members": { + "type": "array", + "items": { + "$ref": "#/definitions/ConsortiumMember" + } + } + }, + "type": "object" + }, + "ConsortiumMember": { + "description": "Describes a member of the consortium.", + "required": [ + "certificate", + "id" + ], + "properties": { + "certificate": { + "type": "string", + "description": "PEM-encoded certificate associated with the member." + }, + "id": { + "description": "Identifier assigned to the member.", + "$ref": "#/definitions/EntityId" + } + }, + "type": "object" + }, + "Constitution": { + "description": "The governance script for the application.", + "required": [ + "digest", + "script" + ], + "properties": { + "digest": { + "description": "SHA256 digest of the constitution script.", + "type": "string" + }, + "script": { + "description": "Contents of the constitution.", + "type": "string" + } + }, + "type": "object" + }, + "EnclaveQuote": { + "description": "Contains the enclave quote.", + "required": [ + "nodeId", + "quoteVersion", + "raw" + ], + "properties": { + "nodeId": { + "description": "ID assigned to this node.", + "$ref": "#/definitions/EntityId" + }, + "mrenclave": { + "description": "MRENCLAVE value of the code running in the enclave.", + "type": "string" + }, + "quoteVersion": { + "description": "Version of the quote presented.", + "type": "string" + }, + "raw": { + "description": "Raw SGX quote, parsable by tools like Open Enclave's oeverify.", + "type": "string" + } + }, + "type": "object" + }, + "EnclaveQuotes": { + "description": "Dictionary of enclave quotes, indexed by node id.", + "additionalProperties": { + "$ref": "#/definitions/EnclaveQuote" + }, + "type": "object" + }, + "EntityId": { + "description": "Identifier for an entity.", + "type": "string" + }, + "LedgerEntries": { + "description": "Array of ledger entries.", + "type": "array", + "items": { + "$ref": "#/definitions/LedgerEntry" + } + }, + "LedgerEntry": { + "description": "An entry in the ledger.", + "required": [ + "contents" + ], + "properties": { + "contents": { + "type": "string", + "description": "Contents of the ledger entry." + }, + "subLedgerId": { + "$ref": "#/definitions/SubLedgerId", + "readOnly": true + }, + "transactionId": { + "$ref": "#/definitions/TransactionId", + "readOnly": true + } + }, + "type": "object" + }, + "LedgerQueryResult": { + "description": "The result of querying for a ledger entry from an older transaction id. The ledger entry is available in the response only if the returned state is Ready.", + "required": [ + "state" + ], + "properties": { + "state": { + "$ref": "#/definitions/LedgerQueryState" + }, + "entry": { + "description": "The ledger entry found as a result of the query. This is only available if the query is in Ready state.", + "$ref": "#/definitions/LedgerEntry" + } + }, + "type": "object" + }, + "LedgerQueryState": { + "description": "State of a ledger query.", + "type": "string", + "enum": [ + "Loading", + "Ready" + ], + "x-ms-enum": { + "name": "ConfidentialLedgerQueryState", + "modelAsString": true + } + }, + "LedgerUser": { + "description": "Details about a Confidential Ledger user.", + "required": [ + "assignedRole" + ], + "properties": { + "assignedRole": { + "$ref": "#/definitions/LedgerUserRole" + }, + "userId": { + "$ref": "#/definitions/UserId", + "readOnly": true + } + }, + "type": "object" + }, + "LedgerUserRole": { + "type": "string", + "description": "Represents an assignable role.", + "enum": [ + "Administrator", + "Contributor", + "Reader" + ], + "x-ms-enum": { + "name": "ConfidentialLedgerUserRoleName", + "modelAsString": true + } + }, + "LedgerWriteResult": { + "description": "Returned as a result of a write to the Confidential Ledger, the transaction id in the response indicates when the write will become durable.", + "required": [ + "subLedgerId" + ], + "properties": { + "subLedgerId": { + "$ref": "#/definitions/SubLedgerId" + } + }, + "type": "object" + }, + "MerkleProof": { + "description": "The Merkle proof verifying a transaction.", + "type": "array", + "items": { + "$ref": "#/definitions/MerkleProofElement" + } + }, + "MerkleProofElement": { + "description": "An item in the Merkle proof.", + "type": "object", + "properties": { + "left": { + "type": "string" + }, + "right": { + "type": "string" + } + } + }, + "PagedLedgerEntries": { + "description": "Paginated ledger entries returned in response to a query.", + "type": "object", + "required": [ + "state", + "entries" + ], + "properties": { + "state": { + "$ref": "#/definitions/LedgerQueryState" + }, + "@nextLink": { + "description": "Path from which to retrieve the next page of results.", + "type": "string" + }, + "entries": { + "$ref": "#/definitions/LedgerEntries" + } + } + }, + "ReceiptContents": { + "description": "A receipt certifying the transaction at the specified id.", + "required": [ + "leaf", + "nodeId", + "proof", + "root", + "signature" + ], + "type": "object", + "properties": { + "leaf": { + "description": "Merkle tree leaf for this transaction.", + "type": "string" + }, + "nodeId": { + "description": "Id of the node returning the receipt.", + "$ref": "#/definitions/EntityId" + }, + "proof": { + "description": "Merkle proof.", + "$ref": "#/definitions/MerkleProof" + }, + "root": { + "description": "Root of the Merkle tree at the time the transaction was recorded.", + "type": "string" + }, + "signature": { + "description": "Signature by the node, with its certificate, over the Merkle root.", + "type": "string" + } + } + }, + "RoleAssignment": { + "description": "Object for assigning a role to a user.", + "required": [ + "roleName" + ], + "properties": { + "roleName": { + "$ref": "#/definitions/LedgerUserRole" + }, + "description": { + "description": "Description of the role.", + "type": "string" + } + }, + "type": "object" + }, + "SubLedgerId": { + "description": "Identifier for sub-ledgers.", + "type": "string" + }, + "TransactionId": { + "description": "A unique identifier for the state of the ledger. If returned as part of a LedgerEntry, it indicates the state from which the entry was read.", + "type": "string" + }, + "TransactionReceipt": { + "description": "A receipt certifying the transaction at the specified id.", + "required": [ + "state", + "transactionId" + ], + "properties": { + "receipt": { + "$ref": "#/definitions/ReceiptContents" + }, + "state": { + "$ref": "#/definitions/LedgerQueryState" + }, + "transactionId": { + "$ref": "#/definitions/TransactionId" + } + }, + "type": "object" + }, + "TransactionState": { + "type": "string", + "description": "Represents the state of the transaction.", + "enum": [ + "Committed", + "Pending" + ], + "x-ms-enum": { + "name": "TransactionState", + "modelAsString": true + } + }, + "TransactionStatus": { + "description": "Response returned to a query for the transaction status", + "required": [ + "state", + "transactionId" + ], + "properties": { + "state": { + "$ref": "#/definitions/TransactionState" + }, + "transactionId": { + "$ref": "#/definitions/TransactionId" + } + }, + "type": "object" + }, + "UserId": { + "description": "Identifier for the user. This must either be an AAD object id or a certificate fingerprint.", + "type": "string" + } + }, + "parameters": { + "CommitParameter": { + "name": "commit", + "in": "query", + "required": true, + "x-ms-parameter-location": "method", + "maximum": 9223372036854775807, + "minimum": -9223372036854775808, + "type": "integer", + "description": "The commit in the consensus protocol." + }, + "SubLedgerIdParameter": { + "name": "subLedgerId", + "in": "query", + "required": false, + "x-ms-parameter-location": "method", + "description": "The sub-ledger id.", + "type": "string" + }, + "TransactionIdParameter": { + "name": "transactionId", + "in": "path", + "required": true, + "x-ms-parameter-location": "method", + "description": "Identifies a write transaction.", + "type": "string" + }, + "TransactionIdFromParameter": { + "name": "fromTransactionId", + "in": "query", + "required": false, + "x-ms-parameter-location": "method", + "description": "Specify the first transaction ID in a range.", + "type": "string" + }, + "TransactionIdToParameter": { + "name": "toTransactionId", + "in": "query", + "required": false, + "x-ms-parameter-location": "method", + "description": "Specify the last transaction ID in a range.", + "type": "string" + }, + "UserDetailsParameter": { + "name": "userDetails", + "description": "Details about a Confidential Ledger user.", + "in": "body", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/LedgerUser" + } + }, + "UserIdParameter": { + "name": "userId", + "in": "path", + "required": true, + "description": "The user id, either an AAD object ID or certificate fingerprint.", + "type": "string", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/confidentialledger/data-plane/Microsoft.ConfidentialLedger/preview/0.1-preview/examples/identity/GetLedgerIdentity.json b/specification/confidentialledger/data-plane/Microsoft.ConfidentialLedger/preview/0.1-preview/examples/identity/GetLedgerIdentity.json new file mode 100644 index 000000000000..04393814b433 --- /dev/null +++ b/specification/confidentialledger/data-plane/Microsoft.ConfidentialLedger/preview/0.1-preview/examples/identity/GetLedgerIdentity.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "0.1-preview", + "ledgerId": "contoso-ledger-12345", + "identityServiceUri": "identity.accledger.azure.com" + }, + "responses": { + "200": { + "body": { + "ledgerTlsCertificate": "-----BEGIN CERTIFICATE-----\nMIIBvjCCAUKgAwIBAgIQVL+0VqZp3VzMyFKqD4Cs8zAMBggqhkjOPQQDAwUAMBYx\nFDASBgNVBAMMC0NDRiBOZXR3b3JrMB4XDTE5MTEwMTAwMDAwMFoXDTIxMTIzMTIz\nNTk1OVowFjEUMBIGA1UEAwwLQ0NGIE5ldHdvcmswdjAQBgcqhkjOPQIBBgUrgQQA\nIgNiAATBm4jNV4Kyj6bc/iMKDEXTCyU6P6U1KWAiDodl+Jd8aDJsBwLimtg4QCug\n1mpHnVPmcbPAbNM11+xrLHuFEfuZlS3DI+CCX8FUB2VvDVT3SfWLDVmr1xLStTDH\nuN4YjBOjUzBRMA8GA1UdEwQIMAYBAf8CAQAwHQYDVR0OBBYEFGSdsThwxrTOEQxb\nZ2NsslNvJRYkMB8GA1UdIwQYMBaAFGSdsThwxrTOEQxbZ2NsslNvJRYkMAwGCCqG\nSM49BAMDBQADaAAwZQIwJLLWllNZ83ym/HQuvtGGSdF/RCZwUoh+yhad/vUfVnhE\n2dYLDDEJOORpxpEIVfXgAjEA/CLcRwSZxzEmLDYe1y4puXKuSDCUiu+bKYgdvRLj\nRQJgTygutcTdI64sSweqPveK\n-----END CERTIFICATE-----\n\u0000" + } + } + } +} diff --git a/specification/confidentialledger/data-plane/Microsoft.ConfidentialLedger/preview/0.1-preview/examples/ledger/CreateOrUpdateUser.json b/specification/confidentialledger/data-plane/Microsoft.ConfidentialLedger/preview/0.1-preview/examples/ledger/CreateOrUpdateUser.json new file mode 100644 index 000000000000..eedc93237de6 --- /dev/null +++ b/specification/confidentialledger/data-plane/Microsoft.ConfidentialLedger/preview/0.1-preview/examples/ledger/CreateOrUpdateUser.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "0.1-preview", + "ledgerUri": "myledger.eastus.cloudapp.azure.com", + "userId": "AAD object id", + "userDetails": { + "assignedRole": "Reader" + } + }, + "responses": { + "200": { + "body": { + "assignedRole": "Reader", + "userId": "AAD object id" + } + } + } +} diff --git a/specification/confidentialledger/data-plane/Microsoft.ConfidentialLedger/preview/0.1-preview/examples/ledger/DeleteUser.json b/specification/confidentialledger/data-plane/Microsoft.ConfidentialLedger/preview/0.1-preview/examples/ledger/DeleteUser.json new file mode 100644 index 000000000000..7b091f1351c6 --- /dev/null +++ b/specification/confidentialledger/data-plane/Microsoft.ConfidentialLedger/preview/0.1-preview/examples/ledger/DeleteUser.json @@ -0,0 +1,10 @@ +{ + "parameters": { + "api-version": "0.1-preview", + "ledgerUri": "myledger.eastus.cloudapp.azure.com", + "userId": "AAD object id" + }, + "responses": { + "204": {} + } +} diff --git a/specification/confidentialledger/data-plane/Microsoft.ConfidentialLedger/preview/0.1-preview/examples/ledger/GetConsortiumMembers.json b/specification/confidentialledger/data-plane/Microsoft.ConfidentialLedger/preview/0.1-preview/examples/ledger/GetConsortiumMembers.json new file mode 100644 index 000000000000..f52b3045404a --- /dev/null +++ b/specification/confidentialledger/data-plane/Microsoft.ConfidentialLedger/preview/0.1-preview/examples/ledger/GetConsortiumMembers.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "0.1-preview", + "ledgerUri": "myledger.eastus.cloudapp.azure.com" + }, + "responses": { + "200": { + "body": { + "members": [ + { + "certificate": "", + "id": "0" + } + ] + } + } + } +} diff --git a/specification/confidentialledger/data-plane/Microsoft.ConfidentialLedger/preview/0.1-preview/examples/ledger/GetConstitution.json b/specification/confidentialledger/data-plane/Microsoft.ConfidentialLedger/preview/0.1-preview/examples/ledger/GetConstitution.json new file mode 100644 index 000000000000..0dc392c47715 --- /dev/null +++ b/specification/confidentialledger/data-plane/Microsoft.ConfidentialLedger/preview/0.1-preview/examples/ledger/GetConstitution.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "0.1-preview", + "ledgerUri": "myledger.eastus.cloudapp.azure.com" + }, + "responses": { + "200": { + "body": { + "digest": "cd04f484d93a13df44eab4235c14df37e20907b3216c5a37b9e484a363a76c8e", + "script": "" + } + } + } +} diff --git a/specification/confidentialledger/data-plane/Microsoft.ConfidentialLedger/preview/0.1-preview/examples/ledger/GetCurrentLedgerEntry.json b/specification/confidentialledger/data-plane/Microsoft.ConfidentialLedger/preview/0.1-preview/examples/ledger/GetCurrentLedgerEntry.json new file mode 100644 index 000000000000..274026447b12 --- /dev/null +++ b/specification/confidentialledger/data-plane/Microsoft.ConfidentialLedger/preview/0.1-preview/examples/ledger/GetCurrentLedgerEntry.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "0.1-preview", + "ledgerUri": "myledger.eastus.cloudapp.azure.com" + }, + "responses": { + "200": { + "body": { + "contents": "Current ledger entry contents.", + "subLedgerId": "DEFAULT_SUBLEDGER", + "transactionId": "4.2" + } + } + } +} diff --git a/specification/confidentialledger/data-plane/Microsoft.ConfidentialLedger/preview/0.1-preview/examples/ledger/GetEnclaveQuotes.json b/specification/confidentialledger/data-plane/Microsoft.ConfidentialLedger/preview/0.1-preview/examples/ledger/GetEnclaveQuotes.json new file mode 100644 index 000000000000..51ffbf7b1b3d --- /dev/null +++ b/specification/confidentialledger/data-plane/Microsoft.ConfidentialLedger/preview/0.1-preview/examples/ledger/GetEnclaveQuotes.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "0.1-preview", + "ledgerUri": "myledger.eastus.cloudapp.azure.com" + }, + "responses": { + "200": { + "body": { + "currentNodeId": "0", + "enclaveQuotes": { + "0": { + "mrenclave": "9b4b6890a5fff10854e3ca4fa5af5801dae57a46bfef3f23749bf47a61a1b1d7", + "nodeId": "0", + "raw": "0100000002000000e811000000000000030002000000000005000a00939a7233f79c4ca9940a0db3957f06074b17f6b893ef49abff5c9b689576dc08000000000f0f0305ff80060000000000000000000000000000000000000000000000000000000000000000000000000000000000050000000000000007000000000000009b4b6890a5fff10854e3ca4fa5af5801dae57a46bfef3f23749bf47a61a1b1d700000000000000000000000000000000000000000000000000000000000000005bebf77a60c142b06ec46417957f4374b42102092d2ac7465daa3af9a62fcd7f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002a7c7f007fe7242cb20ad7d6eda114b47dfd92b1f615ae728a777852ce1377e2000000000000000000000000000000000000000000000000000000000000000034100000014d855131f932a590d06f9d6d6e0f2ade47054c7a9c5de61d38ccc2f35f4c00aa83ec2b3c3642af9aa050555a23c1272c1cdb0563a4e4264552a6a8514f5671378f81f331f54a8a2965275d64c061246d64c18df5b3383a498d3b5a4e997734bb35a09b0e8374bb039889dc168523251a90d8d96d921f697efb342a6534333c0f0f0305ff8006000000000000000000000000000000000000000000000000000000000000000000000000000000000015000000000000000700000000000000cdcadfb7db22ada5fd603455cde1bf9fa258fa5f284dcd6e0c63392f633a110500000000000000000000000000000000000000000000000000000000000000008c4f5775d796503e96137f77c68a829a0056ac8ded70140b081b094490c57bff000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010005000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004cb3dda245424884c47313c09366c2103703cbdef3a75f20316a2796d9243e6b0000000000000000000000000000000000000000000000000000000000000000326e8be8be9b1e8f3fb3a44d8743ca30d4cde23750294f51f282401adf08334ff280afdb1b6d912b39e2c7931837f2ac91f17689ca9cb943f5a491d60bb314332000000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f0500cc0d00002d2d2d2d2d424547494e2043455254494649434154452d2d2d2d2d0a4d494945674443434243616741774942416749555576735257764147614b502b724b36424449515776477948656a6777436759494b6f5a497a6a3045417749770a6354456a4d4345474131554541777761535735305a577767553064594946424453794251636d396a5a584e7a6233496751304578476a415942674e5642416f4d0a45556c756447567349454e76636e4276636d4630615739754d5251774567594456515148444174545957353059534244624746795954454c4d416b47413155450a4341774351304578437a414a42674e5642415954416c56544d423458445449774d4459784f4441774d5449304f466f58445449334d4459784f4441774d5449300a4f466f77634445694d434147413155454177775a535735305a5777675530645949464244537942445a584a3061575a70593246305a5445614d426747413155450a43677752535735305a577767513239796347397959585270623234784644415342674e564241634d43314e68626e526849454e7359584a684d517377435159440a5651514944414a445154454c4d416b474131554542684d4356564d775754415442676371686b6a4f5051494242676771686b6a4f50514d4242774e43414154570a663645447136324762714844326677574564656538645853645179694e665039493945594a59472b3770475a586b326173775370374f3876456d58425a52345a0a6b713075452f65687233435935793774323246786f3449436d7a434341706377487759445652306a42426777466f4155304f6971326e58582b53354a463567380a6578526c304e587957553077587759445652306642466777566a42556f464b6755495a4f6148523063484d364c79396863476b7564484a316333526c5a484e6c0a636e5a705932567a4c6d6c75644756734c6d4e766253397a5a3367765932567964476c6d61574e6864476c76626939324d6939775932746a636d772f593245390a63484a765932567a633239794d4230474131556444675157424253334b5969495a66795a7449432b4f4b7a4c365142446c5465384144414f42674e56485138420a4166384542414d434273417744415944565230544151482f42414977414443434164514743537147534962345451454e4151534341635577676748424d4234470a43697147534962345451454e415145454547462f622f39427666662b6c75427a75747a6d646d34776767466b42676f71686b69472b453042445145434d4949420a5644415142677371686b69472b4530424451454341514942447a415142677371686b69472b4530424451454341674942447a415142677371686b69472b4530420a4451454341774942416a415142677371686b69472b45304244514543424149424244415142677371686b69472b453042445145434251494241544152426773710a686b69472b4530424451454342674943414941774541594c4b6f5a496876684e4151304241676343415159774541594c4b6f5a496876684e41513042416767430a415141774541594c4b6f5a496876684e4151304241676b43415141774541594c4b6f5a496876684e4151304241676f43415141774541594c4b6f5a496876684e0a4151304241677343415141774541594c4b6f5a496876684e4151304241677743415141774541594c4b6f5a496876684e4151304241673043415141774541594c0a4b6f5a496876684e4151304241673443415141774541594c4b6f5a496876684e4151304241673843415141774541594c4b6f5a496876684e41513042416841430a415141774541594c4b6f5a496876684e415130424168454341516f774877594c4b6f5a496876684e4151304241684945454138504167514267415941414141410a41414141414141774541594b4b6f5a496876684e4151304241775143414141774641594b4b6f5a496876684e4151304242415147414a4275315141414d4138470a43697147534962345451454e4151554b41514177436759494b6f5a497a6a3045417749445341417752514968414b582b324343704b525652654d2b4d7543366a0a7477634d502b2b4645396667365a4f696d55464a55474478416941684d6a743258323651662b4247344965456f665547537070364f792b68494e704d48626d7a0a4f4a596279513d3d0a2d2d2d2d2d454e442043455254494649434154452d2d2d2d2d0a2d2d2d2d2d424547494e2043455254494649434154452d2d2d2d2d0a4d4949436c7a4343416a36674177494241674956414e446f71747031312f6b7553526559504873555a644456386c6c4e4d416f4743437147534d343942414d430a4d476778476a415942674e5642414d4d45556c756447567349464e48574342536232393049454e424d526f77474159445651514b4442464a626e526c624342440a62334a7762334a6864476c76626a45554d424947413155454277774c553246756447456751327868636d4578437a414a42674e564241674d416b4e424d5173770a435159445651514745774a56557a4165467730784f4441314d6a45784d4451314d4468614677307a4d7a41314d6a45784d4451314d4468614d484578497a41680a42674e5642414d4d476b6c756447567349464e48574342515130736755484a765932567a6332397949454e424d526f77474159445651514b4442464a626e526c0a6243424462334a7762334a6864476c76626a45554d424947413155454277774c553246756447456751327868636d4578437a414a42674e564241674d416b4e420a4d517377435159445651514745774a56557a425a4d424d4742797147534d34394167454743437147534d34394177454841304941424c39712b4e4d7032494f670a74646c31626b2f75575a352b5447516d38614369387a373866732b664b435133642b75447a586e56544154325a68444369667949754a77764e33774e427039690a484253534d4a4d4a72424f6a6762737767626777487759445652306a42426777466f4155496d554d316c71644e496e7a6737535655723951477a6b6e427177770a556759445652306642457377535442486f45576751345a426148523063484d364c79396a5a584a3061575a70593246305a584d7564484a316333526c5a484e6c0a636e5a705932567a4c6d6c75644756734c6d4e766253394a626e526c62464e4857464a76623352445153356a636d7777485159445652304f42425945464e446f0a71747031312f6b7553526559504873555a644456386c6c4e4d41344741315564447745422f77514541774942426a415342674e5648524d4241663845434441470a4151482f416745414d416f4743437147534d343942414d43413063414d45514349432f396a2b3834542b487a74564f2f734f5142574a6253642b2f327565784b0a342b6141306a6346424c63704169413364684d72463563443532743646714d764149706a385864476d79326265656c6a4c4a4b2b707a706352413d3d0a2d2d2d2d2d454e442043455254494649434154452d2d2d2d2d0a2d2d2d2d2d424547494e2043455254494649434154452d2d2d2d2d0a4d4949436a6a4343416a53674177494241674955496d554d316c71644e496e7a6737535655723951477a6b6e42717777436759494b6f5a497a6a3045417749770a614445614d4267474131554541777752535735305a5777675530645949464a766233516751304578476a415942674e5642416f4d45556c756447567349454e760a636e4276636d4630615739754d5251774567594456515148444174545957353059534244624746795954454c4d416b47413155454341774351304578437a414a0a42674e5642415954416c56544d423458445445344d4455794d5445774e4445784d566f5844544d7a4d4455794d5445774e4445784d466f77614445614d4267470a4131554541777752535735305a5777675530645949464a766233516751304578476a415942674e5642416f4d45556c756447567349454e76636e4276636d46300a615739754d5251774567594456515148444174545957353059534244624746795954454c4d416b47413155454341774351304578437a414a42674e56424159540a416c56544d466b77457759484b6f5a497a6a3043415159494b6f5a497a6a3044415163445167414543366e45774d4449595a4f6a2f69505773437a61454b69370a314f694f534c52466857476a626e42564a66566e6b59347533496a6b4459594c304d784f346d717379596a6c42616c54565978465032734a424b357a6c4b4f420a757a43427544416642674e5648534d4547444157674251695a517a575770303069664f44744a5653763141624f5363477244425342674e5648523845537a424a0a4d45656752614244686b466f64485277637a6f764c324e6c636e52705a6d6c6a5958526c63793530636e567a6447566b63325679646d6c6a5a584d75615735300a5a577775593239744c306c756447567355306459556d397664454e424c6d4e796244416442674e564851344546675155496d554d316c71644e496e7a673753560a55723951477a6b6e4271777744675944565230504151482f42415144416745474d42494741315564457745422f7751494d4159424166384341514577436759490a4b6f5a497a6a30454177494453414177525149675151732f30387279636450617543466b3855505158434d416c736c6f4265374e7761514754636470613045430a495143557438534776784b6d6a70634d2f7a3057503944766f3868326b3564753169574464426b416e2b306969413d3d0a2d2d2d2d2d454e442043455254494649434154452d2d2d2d2d0a00", + "quoteVersion": "sgx-quote-1" + }, + "1": { + "mrenclave": "9b4b6890a5fff10854e3ca4fa5af5801dae57a46bfef3f23749bf47a61a1b1d7", + "nodeId": "1", + "raw": "0100000002000000e811000000000000030002000000000005000a00939a7233f79c4ca9940a0db3957f06074b17f6b893ef49abff5c9b689576dc08000000000f0f0305ff80060000000000000000000000000000000000000000000000000000000000000000000000000000000000050000000000000007000000000000009b4b6890a5fff10854e3ca4fa5af5801dae57a46bfef3f23749bf47a61a1b1d700000000000000000000000000000000000000000000000000000000000000005bebf77a60c142b06ec46417957f4374b42102092d2ac7465daa3af9a62fcd7f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002a7c7f007fe7242cb20ad7d6eda114b47dfd92b1f615ae728a777852ce1377e2000000000000000000000000000000000000000000000000000000000000000034100000014d855131f932a590d06f9d6d6e0f2ade47054c7a9c5de61d38ccc2f35f4c00aa83ec2b3c3642af9aa050555a23c1272c1cdb0563a4e4264552a6a8514f5671378f81f331f54a8a2965275d64c061246d64c18df5b3383a498d3b5a4e997734bb35a09b0e8374bb039889dc168523251a90d8d96d921f697efb342a6534333c0f0f0305ff8006000000000000000000000000000000000000000000000000000000000000000000000000000000000015000000000000000700000000000000cdcadfb7db22ada5fd603455cde1bf9fa258fa5f284dcd6e0c63392f633a110500000000000000000000000000000000000000000000000000000000000000008c4f5775d796503e96137f77c68a829a0056ac8ded70140b081b094490c57bff000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010005000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004cb3dda245424884c47313c09366c2103703cbdef3a75f20316a2796d9243e6b0000000000000000000000000000000000000000000000000000000000000000326e8be8be9b1e8f3fb3a44d8743ca30d4cde23750294f51f282401adf08334ff280afdb1b6d912b39e2c7931837f2ac91f17689ca9cb943f5a491d60bb314332000000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f0500cc0d00002d2d2d2d2d424547494e2043455254494649434154452d2d2d2d2d0a4d494945674443434243616741774942416749555576735257764147614b502b724b36424449515776477948656a6777436759494b6f5a497a6a3045417749770a6354456a4d4345474131554541777761535735305a577767553064594946424453794251636d396a5a584e7a6233496751304578476a415942674e5642416f4d0a45556c756447567349454e76636e4276636d4630615739754d5251774567594456515148444174545957353059534244624746795954454c4d416b47413155450a4341774351304578437a414a42674e5642415954416c56544d423458445449774d4459784f4441774d5449304f466f58445449334d4459784f4441774d5449300a4f466f77634445694d434147413155454177775a535735305a5777675530645949464244537942445a584a3061575a70593246305a5445614d426747413155450a43677752535735305a577767513239796347397959585270623234784644415342674e564241634d43314e68626e526849454e7359584a684d517377435159440a5651514944414a445154454c4d416b474131554542684d4356564d775754415442676371686b6a4f5051494242676771686b6a4f50514d4242774e43414154570a663645447136324762714844326677574564656538645853645179694e665039493945594a59472b3770475a586b326173775370374f3876456d58425a52345a0a6b713075452f65687233435935793774323246786f3449436d7a434341706377487759445652306a42426777466f4155304f6971326e58582b53354a463567380a6578526c304e587957553077587759445652306642466777566a42556f464b6755495a4f6148523063484d364c79396863476b7564484a316333526c5a484e6c0a636e5a705932567a4c6d6c75644756734c6d4e766253397a5a3367765932567964476c6d61574e6864476c76626939324d6939775932746a636d772f593245390a63484a765932567a633239794d4230474131556444675157424253334b5969495a66795a7449432b4f4b7a4c365142446c5465384144414f42674e56485138420a4166384542414d434273417744415944565230544151482f42414977414443434164514743537147534962345451454e4151534341635577676748424d4234470a43697147534962345451454e415145454547462f622f39427666662b6c75427a75747a6d646d34776767466b42676f71686b69472b453042445145434d4949420a5644415142677371686b69472b4530424451454341514942447a415142677371686b69472b4530424451454341674942447a415142677371686b69472b4530420a4451454341774942416a415142677371686b69472b45304244514543424149424244415142677371686b69472b453042445145434251494241544152426773710a686b69472b4530424451454342674943414941774541594c4b6f5a496876684e4151304241676343415159774541594c4b6f5a496876684e41513042416767430a415141774541594c4b6f5a496876684e4151304241676b43415141774541594c4b6f5a496876684e4151304241676f43415141774541594c4b6f5a496876684e0a4151304241677343415141774541594c4b6f5a496876684e4151304241677743415141774541594c4b6f5a496876684e4151304241673043415141774541594c0a4b6f5a496876684e4151304241673443415141774541594c4b6f5a496876684e4151304241673843415141774541594c4b6f5a496876684e41513042416841430a415141774541594c4b6f5a496876684e415130424168454341516f774877594c4b6f5a496876684e4151304241684945454138504167514267415941414141410a41414141414141774541594b4b6f5a496876684e4151304241775143414141774641594b4b6f5a496876684e4151304242415147414a4275315141414d4138470a43697147534962345451454e4151554b41514177436759494b6f5a497a6a3045417749445341417752514968414b582b324343704b525652654d2b4d7543366a0a7477634d502b2b4645396667365a4f696d55464a55474478416941684d6a743258323651662b4247344965456f665547537070364f792b68494e704d48626d7a0a4f4a596279513d3d0a2d2d2d2d2d454e442043455254494649434154452d2d2d2d2d0a2d2d2d2d2d424547494e2043455254494649434154452d2d2d2d2d0a4d4949436c7a4343416a36674177494241674956414e446f71747031312f6b7553526559504873555a644456386c6c4e4d416f4743437147534d343942414d430a4d476778476a415942674e5642414d4d45556c756447567349464e48574342536232393049454e424d526f77474159445651514b4442464a626e526c624342440a62334a7762334a6864476c76626a45554d424947413155454277774c553246756447456751327868636d4578437a414a42674e564241674d416b4e424d5173770a435159445651514745774a56557a4165467730784f4441314d6a45784d4451314d4468614677307a4d7a41314d6a45784d4451314d4468614d484578497a41680a42674e5642414d4d476b6c756447567349464e48574342515130736755484a765932567a6332397949454e424d526f77474159445651514b4442464a626e526c0a6243424462334a7762334a6864476c76626a45554d424947413155454277774c553246756447456751327868636d4578437a414a42674e564241674d416b4e420a4d517377435159445651514745774a56557a425a4d424d4742797147534d34394167454743437147534d34394177454841304941424c39712b4e4d7032494f670a74646c31626b2f75575a352b5447516d38614369387a373866732b664b435133642b75447a586e56544154325a68444369667949754a77764e33774e427039690a484253534d4a4d4a72424f6a6762737767626777487759445652306a42426777466f4155496d554d316c71644e496e7a6737535655723951477a6b6e427177770a556759445652306642457377535442486f45576751345a426148523063484d364c79396a5a584a3061575a70593246305a584d7564484a316333526c5a484e6c0a636e5a705932567a4c6d6c75644756734c6d4e766253394a626e526c62464e4857464a76623352445153356a636d7777485159445652304f42425945464e446f0a71747031312f6b7553526559504873555a644456386c6c4e4d41344741315564447745422f77514541774942426a415342674e5648524d4241663845434441470a4151482f416745414d416f4743437147534d343942414d43413063414d45514349432f396a2b3834542b487a74564f2f734f5142574a6253642b2f327565784b0a342b6141306a6346424c63704169413364684d72463563443532743646714d764149706a385864476d79326265656c6a4c4a4b2b707a706352413d3d0a2d2d2d2d2d454e442043455254494649434154452d2d2d2d2d0a2d2d2d2d2d424547494e2043455254494649434154452d2d2d2d2d0a4d4949436a6a4343416a53674177494241674955496d554d316c71644e496e7a6737535655723951477a6b6e42717777436759494b6f5a497a6a3045417749770a614445614d4267474131554541777752535735305a5777675530645949464a766233516751304578476a415942674e5642416f4d45556c756447567349454e760a636e4276636d4630615739754d5251774567594456515148444174545957353059534244624746795954454c4d416b47413155454341774351304578437a414a0a42674e5642415954416c56544d423458445445344d4455794d5445774e4445784d566f5844544d7a4d4455794d5445774e4445784d466f77614445614d4267470a4131554541777752535735305a5777675530645949464a766233516751304578476a415942674e5642416f4d45556c756447567349454e76636e4276636d46300a615739754d5251774567594456515148444174545957353059534244624746795954454c4d416b47413155454341774351304578437a414a42674e56424159540a416c56544d466b77457759484b6f5a497a6a3043415159494b6f5a497a6a3044415163445167414543366e45774d4449595a4f6a2f69505773437a61454b69370a314f694f534c52466857476a626e42564a66566e6b59347533496a6b4459594c304d784f346d717379596a6c42616c54565978465032734a424b357a6c4b4f420a757a43427544416642674e5648534d4547444157674251695a517a575770303069664f44744a5653763141624f5363477244425342674e5648523845537a424a0a4d45656752614244686b466f64485277637a6f764c324e6c636e52705a6d6c6a5958526c63793530636e567a6447566b63325679646d6c6a5a584d75615735300a5a577775593239744c306c756447567355306459556d397664454e424c6d4e796244416442674e564851344546675155496d554d316c71644e496e7a673753560a55723951477a6b6e4271777744675944565230504151482f42415144416745474d42494741315564457745422f7751494d4159424166384341514577436759490a4b6f5a497a6a30454177494453414177525149675151732f30387279636450617543466b3855505158434d416c736c6f4265374e7761514754636470613045430a495143557438534776784b6d6a70634d2f7a3057503944766f3868326b3564753169574464426b416e2b306969413d3d0a2d2d2d2d2d454e442043455254494649434154452d2d2d2d2d0a00", + "quoteVersion": "sgx-quote-1" + } + } + } + } + } +} diff --git a/specification/confidentialledger/data-plane/Microsoft.ConfidentialLedger/preview/0.1-preview/examples/ledger/GetLedgerEntries.json b/specification/confidentialledger/data-plane/Microsoft.ConfidentialLedger/preview/0.1-preview/examples/ledger/GetLedgerEntries.json new file mode 100644 index 000000000000..1c52c46af185 --- /dev/null +++ b/specification/confidentialledger/data-plane/Microsoft.ConfidentialLedger/preview/0.1-preview/examples/ledger/GetLedgerEntries.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "0.1-preview", + "fromTransactionId": "3.14", + "toTransactionId": "3.42", + "ledgerUri": "myledger.eastus.cloudapp.azure.com" + }, + "responses": { + "200": { + "body": { + "state": "Ready", + "@nextLink": "/app/transactions?fromTransactionId=3.15&toTransactionId=3.42&subLedgerId=0&api-version=0.1-preview", + "entries": [ + { + "contents": "Ledger entry contents at transaction id 3.14.", + "subLedgerId": "DEFAULT_SUBLEDGER", + "transactionId": "3.14" + } + ] + } + } + } +} diff --git a/specification/confidentialledger/data-plane/Microsoft.ConfidentialLedger/preview/0.1-preview/examples/ledger/GetLedgerEntry.json b/specification/confidentialledger/data-plane/Microsoft.ConfidentialLedger/preview/0.1-preview/examples/ledger/GetLedgerEntry.json new file mode 100644 index 000000000000..4e9599d7321d --- /dev/null +++ b/specification/confidentialledger/data-plane/Microsoft.ConfidentialLedger/preview/0.1-preview/examples/ledger/GetLedgerEntry.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "0.1-preview", + "transactionId": "3.14", + "ledgerUri": "myledger.eastus.cloudapp.azure.com" + }, + "responses": { + "200": { + "body": { + "state": "Ready", + "entry": { + "contents": "Ledger entry contents at transaction id 3.14.", + "subLedgerId": "DEFAULT_SUBLEDGER", + "transactionId": "3.14" + } + } + } + } +} diff --git a/specification/confidentialledger/data-plane/Microsoft.ConfidentialLedger/preview/0.1-preview/examples/ledger/GetReceipt.json b/specification/confidentialledger/data-plane/Microsoft.ConfidentialLedger/preview/0.1-preview/examples/ledger/GetReceipt.json new file mode 100644 index 000000000000..fb0051de4bb6 --- /dev/null +++ b/specification/confidentialledger/data-plane/Microsoft.ConfidentialLedger/preview/0.1-preview/examples/ledger/GetReceipt.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "0.1-preview", + "ledgerUri": "myledger.eastus.cloudapp.azure.com", + "transactionId": "3.14" + }, + "responses": { + "200": { + "body": { + "state": "Ready", + "receipt": { + "leaf": "fdc977c49d3a8bdf986176984e9432a09b5f6fe0c04e0b1c2dd177c03fdca9ec", + "nodeId": "682c161e1bc0aec694cac58a6ea456e1caa6c9c56d8dd873da9455c341947065", + "proof": [ + { + "left": "f847e5efe3965b0dacb5c15c666602807a11fdecd465d0976779eed27121ffa3" + }, + { + "left": "a56ce9efb73957f561f12d60513281fd2aaf16440234e2fd56e7d3d2ff4be8b0" + }, + { + "left": "d91c982f525302244b13b6add92cd0925e1e0fb621ff2a7bb408ecc51be8528e" + }, + { + "left": "6d87faceda763ce65914f95dfcc04b37ea3f26bc552764752a0f2720039f76be" + }, + { + "left": "e0cc83ea2fae6c535fc44605fb25ba9fdfb319e0e577b3541760f9a3565c549b" + }, + { + "left": "f0e95ed85f5f6c0197aed4f6685b93dc56edd823a2532bd717558a5ab77267cb" + } + ], + "root": "06fef62c80b6471c7005c1b114166fd1b0e077845f5ad544ad4eea4fb1d31f78", + "signature": "MGQCMACklXqd0ge+gBS8WzewrwtwzRzSKy+bfrLZVx0YHmQvtsqs7dExYESsqrUrB8ZcKwIwS3NPKaGq0w2QlPlCqUC3vQoQvhcZgPHPu2GkFYa7JEOdSKLknNPHaCRv80zx2RGF" + }, + "transactionId": "3.14" + } + } + } +} diff --git a/specification/confidentialledger/data-plane/Microsoft.ConfidentialLedger/preview/0.1-preview/examples/ledger/GetTransactionStatus.json b/specification/confidentialledger/data-plane/Microsoft.ConfidentialLedger/preview/0.1-preview/examples/ledger/GetTransactionStatus.json new file mode 100644 index 000000000000..5757ebfd4a70 --- /dev/null +++ b/specification/confidentialledger/data-plane/Microsoft.ConfidentialLedger/preview/0.1-preview/examples/ledger/GetTransactionStatus.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "0.1-preview", + "ledgerUri": "myledger.eastus.cloudapp.azure.com", + "transactionId": "4.2" + }, + "responses": { + "200": { + "body": { + "state": "Committed", + "transactionId": "4.2" + } + } + } +} diff --git a/specification/confidentialledger/data-plane/Microsoft.ConfidentialLedger/preview/0.1-preview/examples/ledger/GetUser.json b/specification/confidentialledger/data-plane/Microsoft.ConfidentialLedger/preview/0.1-preview/examples/ledger/GetUser.json new file mode 100644 index 000000000000..33efee958309 --- /dev/null +++ b/specification/confidentialledger/data-plane/Microsoft.ConfidentialLedger/preview/0.1-preview/examples/ledger/GetUser.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "0.1-preview", + "ledgerUri": "myledger.eastus.cloudapp.azure.com", + "userId": "AAD object id" + }, + "responses": { + "200": { + "body": { + "assignedRole": "Administrator", + "userId": "AAD object id" + } + } + } +} diff --git a/specification/confidentialledger/data-plane/Microsoft.ConfidentialLedger/preview/0.1-preview/examples/ledger/PostLedgerEntry.json b/specification/confidentialledger/data-plane/Microsoft.ConfidentialLedger/preview/0.1-preview/examples/ledger/PostLedgerEntry.json new file mode 100644 index 000000000000..4dc6d4ae22bb --- /dev/null +++ b/specification/confidentialledger/data-plane/Microsoft.ConfidentialLedger/preview/0.1-preview/examples/ledger/PostLedgerEntry.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "0.1-preview", + "ledgerUri": "myledger.eastus.cloudapp.azure.com", + "contents": "New ledger entry contents." + }, + "responses": { + "200": { + "headers": { + "x-ms-ccf-transaction-id": "19.2" + }, + "body": { + "subLedgerId": "DEFAULT_SUBLEDGER" + } + } + } +} diff --git a/specification/confidentialledger/data-plane/Microsoft.ConfidentialLedger/preview/0.1-preview/identityservice.json b/specification/confidentialledger/data-plane/Microsoft.ConfidentialLedger/preview/0.1-preview/identityservice.json new file mode 100644 index 000000000000..f92d50b983c8 --- /dev/null +++ b/specification/confidentialledger/data-plane/Microsoft.ConfidentialLedger/preview/0.1-preview/identityservice.json @@ -0,0 +1,90 @@ +{ + "swagger": "2.0", + "info": { + "version": "0.1-preview", + "title": "ConfidentialLedgerIdentityServiceClient", + "description": "The ConfidentialLedgerIdentityServiceClient is used to retrieve the TLS certificate required for connecting to a Confidential Ledger." + }, + "x-ms-parameterized-host": { + "hostTemplate": "{identityServiceUri}", + "useSchemePrefix": false, + "positionInOperation": "first", + "parameters": [ + { + "name": "identityServiceUri", + "description": "The Identity Service URL, for example https://identity.accledger.azure.com", + "required": true, + "type": "string", + "in": "path", + "format": "url", + "x-ms-skip-url-encoding": true, + "x-ms-parameter-location": "client" + } + ] + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/ledgerIdentity/{ledgerId}": { + "get": { + "operationId": "ConfidentialLedgerIdentityService_GetLedgerIdentity", + "x-ms-examples": { + "GetLedgerIdentity": { + "$ref": "./examples/identity/GetLedgerIdentity.json" + } + }, + "summary": "Gets identity information for a Confidential Ledger instance.", + "parameters": [ + { + "$ref": "common.json#/parameters/ApiVersionParameter" + }, + { + "in": "path", + "name": "ledgerId", + "description": "Id of the Confidential Ledger instance to get information for", + "type": "string", + "required": true + } + ], + "responses": { + "200": { + "description": "Returns ledger information.", + "schema": { + "$ref": "#/definitions/LedgerIdentityInformation" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "common.json#/definitions/ConfidentialLedgerError" + } + } + } + } + } + }, + "definitions": { + "LedgerIdentityInformation": { + "description": "Contains the information about a Confidential Ledger.", + "required": [ + "ledgerTlsCertificate" + ], + "properties": { + "ledgerId": { + "description": "Id for the ledger.", + "type": "string", + "readOnly": true + }, + "ledgerTlsCertificate": { + "description": "PEM-encoded certificate used for TLS by the Confidential Ledger.", + "type": "string" + } + }, + "type": "object" + } + } +} diff --git a/specification/confidentialledger/data-plane/notes.md b/specification/confidentialledger/data-plane/notes.md new file mode 100644 index 000000000000..b360bf1fc5bb --- /dev/null +++ b/specification/confidentialledger/data-plane/notes.md @@ -0,0 +1 @@ +[MutualTLS is not available until Openapi 3.1.0](https://github.com/OAI/OpenAPI-Specification/pull/1764). How do we express cert-based auth? \ No newline at end of file diff --git a/specification/confidentialledger/data-plane/readme.csharp.md b/specification/confidentialledger/data-plane/readme.csharp.md new file mode 100644 index 000000000000..a578cc10c495 --- /dev/null +++ b/specification/confidentialledger/data-plane/readme.csharp.md @@ -0,0 +1,15 @@ +## C + +These settings apply only when `--csharp` is specified on the command line. +Please also specify `--csharp-sdks-folder=`. + +```yaml $(csharp) +csharp: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 1 + clear-output-folder: true + client-side-validation: false + namespace: Microsoft.ConfidentialLedger + output-folder: $(csharp-sdks-folder)/confidentialledger/management/Microsoft.ConfidentialLedger/GeneratedProtocol +``` diff --git a/specification/confidentialledger/data-plane/readme.go.md b/specification/confidentialledger/data-plane/readme.go.md new file mode 100644 index 000000000000..096f5fa37eeb --- /dev/null +++ b/specification/confidentialledger/data-plane/readme.go.md @@ -0,0 +1,19 @@ +## Go + +These settings apply only when `--go` is specified on the command line. + +```yaml $(go) +go: + license-header: MICROSOFT_APACHE_NO_VERSION + clear-output-folder: true + namespace: confidentialledger +``` + +### Tag: package-0.1-preview and go + +These settings apply only when `--tag=package-0.1-preview --go` is specified on the command line. +Please also specify `--go-sdks-folder=`. + +```yaml $(tag) == 'package-0.1-preview' && $(go) +output-folder: $(go-sdks-folder)/confidentialledger/Generated +``` diff --git a/specification/confidentialledger/data-plane/readme.md b/specification/confidentialledger/data-plane/readme.md new file mode 100644 index 000000000000..e4424c1d3516 --- /dev/null +++ b/specification/confidentialledger/data-plane/readme.md @@ -0,0 +1,91 @@ +# confidentialledger + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for confidentialledger. + +## Getting Started + +To build the SDKs for My API, simply install AutoRest via `npm` (`npm install -g autorest`) and then run: + +> `autorest readme.md` + +To see additional help and options, run: + +> `autorest --help` + +For other options on installation see [Installing AutoRest](https://aka.ms/autorest/install) on the AutoRest github page. + +--- + +## Configuration + +### Basic Information + +These are the global settings for the confidentialledger. + +```yaml +openapi-type: data-plane +vanilla: true +``` + +### Tag: package-0.1-preview-ledger + +These settings apply only when `--tag=package-0.1-preview-ledger` is specified on the command line. + +```yaml $(tag) == 'package-0.1-preview-ledger' +input-file: + - Microsoft.ConfidentialLedger/preview/0.1-preview/confidentialledger.json +``` + +### Tag: package-0.1-preview-identity + +These settings apply only when `--tag=package-0.1-preview-identity` is specified on the command line. + +```yaml $(tag) == 'package-0.1-preview-identity' +input-file: + - Microsoft.ConfidentialLedger/preview/0.1-preview/identityservice.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 + autorest_options: + use: "@autorest/python@5.1.0-preview.4" + version: "3.0.6320" + - repo: azure-sdk-for-java + - repo: azure-sdk-for-go + - repo: azure-sdk-for-js + - repo: azure-sdk-for-ruby + after_scripts: + - bundle install && rake arm:regen_all_profiles['azure_mgmt_confidentialledger'] +``` + +## Go + +See configuration in [readme.go.md](./readme.go.md) + +## Python + +See configuration in [readme.python.md](./readme.python.md) + +## Ruby + +See configuration in [readme.ruby.md](./readme.ruby.md) + +## TypeScript + +See configuration in [readme.typescript.md](./readme.typescript.md) + +## CSharp + +See configuration in [readme.csharp.md](./readme.csharp.md) diff --git a/specification/confidentialledger/data-plane/readme.python.md b/specification/confidentialledger/data-plane/readme.python.md new file mode 100644 index 000000000000..5ee1853d7418 --- /dev/null +++ b/specification/confidentialledger/data-plane/readme.python.md @@ -0,0 +1,73 @@ +## Python + +These settings apply only when `--python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +```yaml !$(track2) +python: + clear-output-folder: true + license-header: MICROSOFT_MIT_NO_VERSION + no-namespace-folders: true + package-version: "0.1" +``` + +```yaml $(track2) +license-header: MICROSOFT_MIT_NO_VERSION +no-namespace-folders: true +package-name: azure-confidentialledger +package-version: "0.1" +payload-flattening-threshold: 2 +``` + +### Python multi-api + +Generate all API versions currently shipped for this package + +```yaml $(multiapi) && !$(track2) +batch: + - tag: package-0.1-preview-ledger + - tag: package-0.1-preview-identity +``` + +```yaml $(multiapi) && $(track2) +clear-output-folder: true +batch: + - tag: package-0.1-preview-ledger + - multiapiscriptledger: true + - tag: package-0.1-preview-identity + - multiapiscriptidentity: true +``` + +### Multi-api script + +```yaml $(multiapiscriptidentity) +multiapiscript: true +output-folder: $(python-sdks-folder)/confidentialledger/azure-confidentialledger/azure/confidentialledger/_generated/_generated_identity +clear-output-folder: false +keep-version-file: true +perform-load: false +``` + +```yaml $(multiapiscriptledger) +multiapiscript: true +output-folder: $(python-sdks-folder)/confidentialledger/azure-confidentialledger/azure/confidentialledger/_generated/_generated_ledger +clear-output-folder: false +keep-version-file: true +perform-load: false +``` + +### Tag: package-0.1-preview-identity and python + +These settings apply only when `--tag=package-0.1-preview-identity --python` is specified on the command line. +```yaml $(tag) == 'package-0.1-preview-identity' +namespace: azure.confidentialledger._generated/_generated_identity.v0_1_preview +output-folder: $(python-sdks-folder)/confidentialledger/azure-confidentialledger/azure/confidentialledger/_generated/_generated_identity/v0_1_preview +``` + +### Tag: package-0.1-preview-ledger and python + +These settings apply only when `--tag=package-0.1-preview-ledger --python` is specified on the command line. +```yaml $(tag) == 'package-0.1-preview-ledger' +namespace: azure.confidentialledger._generated/_generated_ledger.v0_1_preview +output-folder: $(python-sdks-folder)/confidentialledger/azure-confidentialledger/azure/confidentialledger/_generated/_generated_ledger/v0_1_preview +``` diff --git a/specification/confidentialledger/data-plane/readme.ruby.md b/specification/confidentialledger/data-plane/readme.ruby.md new file mode 100644 index 000000000000..9d30c4ed61c6 --- /dev/null +++ b/specification/confidentialledger/data-plane/readme.ruby.md @@ -0,0 +1,19 @@ +## Ruby + +These settings apply only when `--ruby` is specified on the command line. + +```yaml +package-name: azure_mgmt_confidentialledger +package-version: 0.1-preview +azure-arm: true +``` + +### Tag: package-0.1-preview and ruby + +These settings apply only when `--tag=package-0.1-preview --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +```yaml $(tag) == 'package-0.1-preview' && $(ruby) +namespace: Microsoft.ConfidentialLedger +output-folder: $(ruby-sdks-folder)/confidentialledger +``` diff --git a/specification/confidentialledger/data-plane/readme.typescript.md b/specification/confidentialledger/data-plane/readme.typescript.md new file mode 100644 index 000000000000..34331189d8c1 --- /dev/null +++ b/specification/confidentialledger/data-plane/readme.typescript.md @@ -0,0 +1,13 @@ +## TypeScript + +These settings apply only when `--typescript` is specified on the command line. +Please also specify `--typescript-sdks-folder=`. + +```yaml $(typescript) +typescript: + azure-arm: true + package-name: "confidentialledger" + output-folder: "$(typescript-sdks-folder)/packages/confidentialledger" + payload-flattening-threshold: 1 + generate-metadata: true +``` diff --git a/specification/confidentialledger/resource-manager/readme.azureresourceschema.md b/specification/confidentialledger/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index a6448185cf94..000000000000 --- a/specification/confidentialledger/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,24 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-confidentialledger-2020-12-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-confidentialledger-2020-12-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-confidentialledger-2020-12-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ConfidentialLedger/preview/2020-12-01-preview/confidentialledger.json - -``` diff --git a/specification/confidentialledger/resource-manager/readme.go.md b/specification/confidentialledger/resource-manager/readme.go.md index ed8c8abe0c2c..44efe957d751 100644 --- a/specification/confidentialledger/resource-manager/readme.go.md +++ b/specification/confidentialledger/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ```yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: confidentialledger clear-output-folder: true ``` diff --git a/specification/confidentialledger/resource-manager/readme.md b/specification/confidentialledger/resource-manager/readme.md index 46c7af381c97..b34f5f14c2cb 100644 --- a/specification/confidentialledger/resource-manager/readme.md +++ b/specification/confidentialledger/resource-manager/readme.md @@ -51,7 +51,7 @@ This is not used by Autorest itself. ```yaml $(swagger-to-sdk) swagger-to-sdk: - repo: azure-sdk-for-net - - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-java - repo: azure-sdk-for-go - repo: azure-sdk-for-js diff --git a/specification/confidentialledger/resource-manager/readme.python.md b/specification/confidentialledger/resource-manager/readme.python.md index d51e32acadda..aef6ed5ec919 100644 --- a/specification/confidentialledger/resource-manager/readme.python.md +++ b/specification/confidentialledger/resource-manager/readme.python.md @@ -3,19 +3,21 @@ These settings apply only when `--python` is specified on the command line. Please also specify `--python-sdks-folder=`. -```yaml $(python) -python: - azure-arm: true - license-header: MICROSOFT_MIT_NO_VERSION - payload-flattening-threshold: 2 - namespace: microsoft.confidentialledger - package-name: azure-mgmt-confidentialledger - package-version: 0.0.1 - clear-output-folder: true +``` yaml $(track2) +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +package-name: azure-mgmt-confidentialledger +no-namespace-folders: true +package-version: 1.0.0b1 +clear-output-folder: true ``` -```yaml $(python) -python: - no-namespace-folders: true - output-folder: $(python-sdks-folder)/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger +``` yaml $(python-mode) == 'update' && $(track2) +no-namespace-folders: true +output-folder: $(python-sdks-folder)/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger +``` + +``` yaml $(python-mode) == 'create' && $(track2) +basic-setup-py: true +output-folder: $(python-sdks-folder)/confidentialledger/azure-mgmt-confidentialledger ``` diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/preview/2021-03-01-preview/confluent.json b/specification/confluent/resource-manager/Microsoft.Confluent/preview/2021-03-01-preview/confluent.json new file mode 100644 index 000000000000..4d5f7093dada --- /dev/null +++ b/specification/confluent/resource-manager/Microsoft.Confluent/preview/2021-03-01-preview/confluent.json @@ -0,0 +1,971 @@ +{ + "swagger": "2.0", + "info": { + "title": "Microsoft.Confluent", + "version": "2021-03-01-preview" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Confluent/agreements": { + "get": { + "tags": [ + "Agreements" + ], + "summary": "List Confluent marketplace agreements in the subscription.", + "operationId": "MarketplaceAgreements_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ConfluentAgreementResourceListResponse" + } + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "#/definitions/ResourceProviderDefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "MarketplaceAgreements_List": { + "$ref": "./examples/MarketplaceAgreements_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Confluent/agreements/default": { + "put": { + "tags": [ + "Agreements" + ], + "summary": "Create Confluent Marketplace agreement in the subscription.", + "operationId": "MarketplaceAgreements_Create", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "in": "body", + "name": "body", + "description": "Confluent Marketplace Agreement resource", + "schema": { + "$ref": "#/definitions/ConfluentAgreementResource" + } + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ConfluentAgreementResource" + } + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "#/definitions/ResourceProviderDefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "MarketplaceAgreements_Create": { + "$ref": "./examples/MarketplaceAgreements_Create.json" + } + } + } + }, + "/providers/Microsoft.Confluent/operations": { + "get": { + "tags": [ + "Organization" + ], + "summary": "List all operations provided by Microsoft.Confluent.", + "operationId": "OrganizationOperations_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "#/definitions/ResourceProviderDefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "OrganizationOperations_List": { + "$ref": "./examples/OrganizationOperations_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Confluent/organizations": { + "get": { + "tags": [ + "Organization" + ], + "summary": "List all organizations under the specified subscription.", + "operationId": "Organization_ListBySubscription", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/OrganizationResourceListResult" + } + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "#/definitions/ResourceProviderDefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Organization_ListBySubscription": { + "$ref": "./examples/Organization_ListBySubscription.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Confluent/organizations": { + "get": { + "tags": [ + "Organization" + ], + "summary": "List all Organizations under the specified resource group.", + "operationId": "Organization_ListByResourceGroup", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/OrganizationResourceListResult" + } + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "#/definitions/ResourceProviderDefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Organization_ListByResourceGroup": { + "$ref": "./examples/Organization_ListByResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Confluent/organizations/{organizationName}": { + "get": { + "tags": [ + "Organization" + ], + "summary": "Get the properties of a specific Organization resource.", + "operationId": "Organization_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/OrganizationResourceNameParameter" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/OrganizationResource" + } + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "#/definitions/ResourceProviderDefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Organization_Get": { + "$ref": "./examples/Organization_Get.json" + } + } + }, + "put": { + "tags": [ + "Organization" + ], + "summary": "Create Organization resource", + "operationId": "Organization_Create", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/OrganizationResourceNameParameter" + }, + { + "in": "body", + "name": "body", + "description": "Organization resource model", + "schema": { + "$ref": "#/definitions/OrganizationResource" + } + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/OrganizationResource" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/OrganizationResource" + } + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "#/definitions/ResourceProviderDefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Organization_Create": { + "$ref": "./examples/Organization_Create.json" + } + } + }, + "patch": { + "tags": [ + "Organization" + ], + "summary": "Update Organization resource", + "operationId": "Organization_Update", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/OrganizationResourceNameParameter" + }, + { + "in": "body", + "name": "body", + "description": "Updated Organization resource", + "schema": { + "$ref": "#/definitions/OrganizationResourceUpdate" + } + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/OrganizationResource" + } + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "#/definitions/ResourceProviderDefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Confluent_Update": { + "$ref": "./examples/Organization_Update.json" + } + } + }, + "delete": { + "tags": [ + "Organization" + ], + "summary": "Delete Organization resource", + "operationId": "Organization_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/OrganizationResourceNameParameter" + } + ], + "responses": { + "200": { + "description": "Success" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "The specified confluent resource does not exist in the subscription." + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "#/definitions/ResourceProviderDefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Confluent_Delete": { + "$ref": "./examples/Organization_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Confluent/validations/{organizationName}/orgvalidate": { + "post": { + "tags": [ + "Validations" + ], + "summary": "Organization Validate proxy resource", + "operationId": "Validations_ValidateOrganization", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/OrganizationResourceNameParameter" + }, + { + "in": "body", + "name": "body", + "required": true, + "description": "Organization resource model", + "schema": { + "$ref": "#/definitions/OrganizationResource" + } + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/OrganizationResource" + } + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "#/definitions/ResourceProviderDefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Validations_ValidateOrganizations": { + "$ref": "./examples/Validations_ValidateOrganizations.json" + } + } + } + } + }, + "definitions": { + "ConfluentAgreementProperties": { + "description": "Terms properties for Marketplace and Confluent.", + "type": "object", + "properties": { + "publisher": { + "description": "Publisher identifier string.", + "type": "string" + }, + "product": { + "description": "Product identifier string.", + "type": "string" + }, + "plan": { + "description": "Plan identifier string.", + "type": "string" + }, + "licenseTextLink": { + "description": "Link to HTML with Microsoft and Publisher terms.", + "type": "string" + }, + "privacyPolicyLink": { + "description": "Link to the privacy policy of the publisher.", + "type": "string" + }, + "retrieveDatetime": { + "format": "date-time", + "description": "Date and time in UTC of when the terms were accepted. This is empty if Accepted is false.", + "type": "string" + }, + "signature": { + "description": "Terms signature.", + "type": "string" + }, + "accepted": { + "description": "If any version of the terms have been accepted, otherwise false.", + "type": "boolean" + } + } + }, + "ConfluentAgreementResource": { + "description": "Agreement Terms definition", + "type": "object", + "x-ms-azure-resource": true, + "properties": { + "id": { + "description": "The ARM id of the resource.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The name of the agreement.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The type of the agreement.", + "type": "string", + "readOnly": true + }, + "systemData": { + "description": "Metadata pertaining to creation and last modification of the resource", + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData", + "readOnly": true + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ConfluentAgreementProperties", + "description": "Represents the properties of the resource." + } + } + }, + "ConfluentAgreementResourceListResponse": { + "description": "Response of a list operation.", + "type": "object", + "properties": { + "value": { + "description": "Results of a list operation.", + "type": "array", + "items": { + "$ref": "#/definitions/ConfluentAgreementResource" + } + }, + "nextLink": { + "description": "Link to the next set of results, if any.", + "type": "string" + } + } + }, + "OperationDisplay": { + "description": "The object that represents the operation.", + "type": "object", + "properties": { + "provider": { + "description": "Service provider: Microsoft.Confluent", + "type": "string" + }, + "resource": { + "description": "Type on which the operation is performed, e.g., 'clusters'.", + "type": "string" + }, + "operation": { + "description": "Operation type, e.g., read, write, delete, etc.", + "type": "string" + }, + "description": { + "description": "Description of the operation, e.g., 'Write confluent'.", + "type": "string" + } + } + }, + "OperationResult": { + "description": "An Confluent REST API operation.", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}", + "type": "string" + }, + "display": { + "description": "The object that represents the operation.", + "$ref": "#/definitions/OperationDisplay" + }, + "isDataAction": { + "description": "Indicates whether the operation is a data action", + "type": "boolean" + } + } + }, + "OperationListResult": { + "description": "Result of GET request to list Confluent operations.", + "type": "object", + "properties": { + "value": { + "description": "List of Confluent operations supported by the Microsoft.Confluent provider.", + "type": "array", + "items": { + "$ref": "#/definitions/OperationResult" + } + }, + "nextLink": { + "description": "URL to get the next set of operation list results if there are any.", + "type": "string" + } + } + }, + "ErrorResponseBody": { + "description": "Response body of Error", + "title": "ErrorResponseBody", + "type": "object", + "properties": { + "code": { + "description": "Error code", + "type": "string", + "readOnly": true + }, + "message": { + "description": "Error message", + "type": "string", + "readOnly": true + }, + "target": { + "description": "Error target", + "type": "string", + "readOnly": true + }, + "details": { + "description": "Error detail", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ErrorResponseBody" + } + } + } + }, + "ResourceProviderDefaultErrorResponse": { + "type": "object", + "description": "Default error response for resource provider", + "title": "ResourceProviderDefaultErrorResponse", + "properties": { + "error": { + "description": "Response body of Error", + "readOnly": true, + "$ref": "#/definitions/ErrorResponseBody" + } + } + }, + "ProvisioningState": { + "enum": [ + "Accepted", + "Creating", + "Updating", + "Deleting", + "Succeeded", + "Failed", + "Canceled", + "Deleted", + "NotSpecified" + ], + "type": "string", + "description": "Provision states for confluent RP", + "title": "ProvisioningState", + "x-ms-enum": { + "name": "ProvisionState", + "modelAsString": true + } + }, + "SaaSOfferStatus": { + "enum": [ + "Started", + "PendingFulfillmentStart", + "InProgress", + "Subscribed", + "Suspended", + "Reinstated", + "Succeeded", + "Failed", + "Unsubscribed", + "Updating" + ], + "type": "string", + "description": "SaaS Offer Status for confluent RP", + "title": "SaaSOfferStatus", + "x-ms-enum": { + "modelAsString": true, + "name": "SaaSOfferStatus" + } + }, + "OfferDetail": { + "description": "Confluent Offer detail", + "type": "object", + "required": [ + "publisherId", + "id", + "planId", + "planName", + "termUnit" + ], + "properties": { + "publisherId": { + "description": "Publisher Id", + "maxLength": 50, + "type": "string" + }, + "id": { + "description": "Offer Id", + "maxLength": 50, + "type": "string" + }, + "planId": { + "description": "Offer Plan Id", + "maxLength": 50, + "type": "string" + }, + "planName": { + "description": "Offer Plan Name", + "maxLength": 50, + "type": "string" + }, + "termUnit": { + "description": "Offer Plan Term unit", + "maxLength": 25, + "type": "string" + }, + "status": { + "description": "SaaS Offer Status", + "$ref": "#/definitions/SaaSOfferStatus" + } + } + }, + "UserDetail": { + "description": "Subscriber detail", + "type": "object", + "required": [ + "emailAddress" + ], + "properties": { + "firstName": { + "description": "First name", + "maxLength": 50, + "type": "string" + }, + "lastName": { + "description": "Last name", + "maxLength": 50, + "type": "string" + }, + "emailAddress": { + "description": "Email address", + "pattern": "^\\S+@\\S+\\.\\S+$", + "type": "string" + } + } + }, + "OrganizationResourceProperties": { + "description": "Organization resource property", + "type": "object", + "required": [ + "offerDetail", + "userDetail" + ], + "properties": { + "createdTime": { + "format": "date-time", + "description": "The creation time of the resource.", + "type": "string", + "readOnly": true + }, + "provisioningState": { + "description": "Provision states for confluent RP", + "$ref": "#/definitions/ProvisioningState", + "readOnly": true + }, + "organizationId": { + "description": "Id of the Confluent organization.", + "type": "string", + "readOnly": true + }, + "ssoUrl": { + "description": "SSO url for the Confluent organization.", + "type": "string", + "readOnly": true + }, + "offerDetail": { + "description": "Confluent offer detail", + "$ref": "#/definitions/OfferDetail" + }, + "userDetail": { + "description": "Subscriber detail", + "$ref": "#/definitions/UserDetail" + } + } + }, + "OrganizationResource": { + "description": "Organization resource.", + "type": "object", + "x-ms-azure-resource": true, + "required": [ + "properties" + ], + "properties": { + "id": { + "description": "The ARM id of the resource.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The name of the resource.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The type of the resource.", + "type": "string", + "readOnly": true + }, + "systemData": { + "description": "Metadata pertaining to creation and last modification of the resource", + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData", + "readOnly": true + }, + "properties": { + "x-ms-client-flatten": true, + "description": "Organization resource properties", + "$ref": "#/definitions/OrganizationResourceProperties" + }, + "tags": { + "type": "object", + "description": "Organization resource tags", + "additionalProperties": { + "type": "string" + } + }, + "location": { + "description": "Location of Organization resource", + "type": "string" + } + } + }, + "OrganizationResourceListResult": { + "description": "The response of a list operation.", + "type": "object", + "properties": { + "value": { + "description": "Result of a list operation.", + "type": "array", + "items": { + "$ref": "#/definitions/OrganizationResource" + } + }, + "nextLink": { + "description": "Link to the next set of results, if any.", + "type": "string" + } + } + }, + "OrganizationResourceUpdate": { + "description": "Organization Resource update", + "type": "object", + "properties": { + "tags": { + "description": "ARM resource tags", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "Client Api Version.", + "required": true, + "type": "string", + "enum": [ + "2021-03-01-preview" + ] + }, + "SubscriptionIdParameter": { + "in": "path", + "name": "subscriptionId", + "description": "Microsoft Azure subscription id", + "required": true, + "type": "string" + }, + "ResourceGroupParameter": { + "in": "path", + "name": "resourceGroupName", + "description": "Resource group name", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "OrganizationResourceNameParameter": { + "in": "path", + "name": "organizationName", + "description": "Organization resource name", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/preview/2021-03-01-preview/examples/MarketplaceAgreements_Create.json b/specification/confluent/resource-manager/Microsoft.Confluent/preview/2021-03-01-preview/examples/MarketplaceAgreements_Create.json new file mode 100644 index 000000000000..c97b60bf951d --- /dev/null +++ b/specification/confluent/resource-manager/Microsoft.Confluent/preview/2021-03-01-preview/examples/MarketplaceAgreements_Create.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "requestBody": { + "properties": { + "accepted": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Confluent/agreements/default", + "name": "default", + "type": "Microsoft.Confluent/agreements", + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2020-05-09T14:28:47.284Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-05-09T14:28:47.284Z" + }, + "properties": { + "publisher": "pubid1", + "product": "offid1", + "plan": "planid1", + "licenseTextLink": "test.licenseLink1", + "privacyPolicyLink": "test.privacyPolicyLink1", + "retrieveDatetime": "2020-11-05T17:33:07.12132Z", + "signature": "YKWOQOKH2BCKZ46O7SCKHANWEENRFRU5WB4LXDFUYWCBWTS4AG4SGQXCOZYIR5ZJCZTXRMZKYZMO2BJSL5YKPLAR4LBFRUNS6CRYE7A", + "accepted": true + } + } + } + } +} diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/preview/2021-03-01-preview/examples/MarketplaceAgreements_List.json b/specification/confluent/resource-manager/Microsoft.Confluent/preview/2021-03-01-preview/examples/MarketplaceAgreements_List.json new file mode 100644 index 000000000000..13940b0a4ca9 --- /dev/null +++ b/specification/confluent/resource-manager/Microsoft.Confluent/preview/2021-03-01-preview/examples/MarketplaceAgreements_List.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Confluent/agreements/default", + "name": "planid1", + "type": "Microsoft.Confluent/agreements", + "properties": { + "publisher": "pubid1", + "product": "offid1", + "plan": "planid1", + "licenseTextLink": "test.licenseLink1", + "privacyPolicyLink": "test.privacyPolicyLink1", + "retrieveDatetime": "2017-08-15T11:33:07.12132Z", + "signature": "ASDFSDAFWEFASDGWERLWER", + "accepted": true + } + }, + { + "id": "id2", + "name": "planid2", + "type": "Microsoft.MarketplaceOrdering/offertypes", + "properties": { + "publisher": "pubid2", + "product": "offid2", + "plan": "planid2", + "licenseTextLink": "test.licenseLin2k", + "privacyPolicyLink": "test.privacyPolicyLink2", + "retrieveDatetime": "2017-08-14T11:33:07.12132Z", + "signature": "ASDFSDAFWEFASDGWERLWER", + "accepted": true + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/preview/2021-03-01-preview/examples/OrganizationOperations_List.json b/specification/confluent/resource-manager/Microsoft.Confluent/preview/2021-03-01-preview/examples/OrganizationOperations_List.json new file mode 100644 index 000000000000..26cd3ee55012 --- /dev/null +++ b/specification/confluent/resource-manager/Microsoft.Confluent/preview/2021-03-01-preview/examples/OrganizationOperations_List.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Confluent/organizations/Read", + "isDataAction": false, + "display": { + "provider": "Microsoft.Confluent", + "resource": "organizations", + "operation": "Get/List organization resources", + "description": "Read organization" + } + }, + { + "name": "Microsoft.Confluent/organizations/Write", + "isDataAction": false, + "display": { + "provider": "Microsoft.Confluent", + "resource": "organizations", + "operation": "Create/Update organization resources", + "description": "Write organization" + } + }, + { + "name": "Microsoft.Confluent/organizations/Delete", + "isDataAction": false, + "display": { + "provider": "Microsoft.Confluent", + "resource": "organizations", + "operation": "Delete organization resources", + "description": "Delete organization" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/preview/2021-03-01-preview/examples/Organization_Create.json b/specification/confluent/resource-manager/Microsoft.Confluent/preview/2021-03-01-preview/examples/Organization_Create.json new file mode 100644 index 000000000000..d1b7232194e5 --- /dev/null +++ b/specification/confluent/resource-manager/Microsoft.Confluent/preview/2021-03-01-preview/examples/Organization_Create.json @@ -0,0 +1,98 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "organizationName": "myOrganization", + "body": { + "properties": { + "offerDetail": { + "publisherId": "string", + "id": "string", + "planId": "string", + "planName": "string", + "termUnit": "string" + }, + "userDetail": { + "firstName": "string", + "lastName": "string", + "emailAddress": "contoso@microsoft.com" + } + }, + "tags": { + "Environment": "Dev" + }, + "location": "West US" + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Confluent/organizations/myOrganization", + "name": "myOrganization", + "type": "Microsoft.Confluent/organizations", + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2020-05-09T14:28:47.284Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-05-09T14:28:47.284Z" + }, + "properties": { + "createdTime": "2020-05-09T14:28:47.284Z", + "provisioningState": "Succeeded", + "organizationId": "string", + "ssoUrl": "string", + "offerDetail": { + "publisherId": "string", + "id": "string", + "planId": "string", + "planName": "string", + "termUnit": "string", + "status": "Started" + }, + "userDetail": { + "firstName": "string", + "lastName": "string", + "emailAddress": "contoso@microsoft.com" + } + }, + "tags": { + "Environment": "Dev" + }, + "location": "West US" + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Confluent/organizations/myOrganization", + "name": "myOrganization", + "type": "Microsoft.Confluent/organizations", + "properties": { + "createdTime": "2020-05-09T14:28:47.284Z", + "provisioningState": "Accepted", + "organizationId": "string", + "ssoUrl": "string", + "offerDetail": { + "publisherId": "string", + "id": "string", + "planId": "string", + "planName": "string", + "termUnit": "string", + "status": "Started" + }, + "userDetail": { + "firstName": "string", + "lastName": "string", + "emailAddress": "contoso@microsoft.com" + } + }, + "tags": { + "Environment": "Dev" + }, + "location": "West US" + } + } + } +} diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/preview/2021-03-01-preview/examples/Organization_Delete.json b/specification/confluent/resource-manager/Microsoft.Confluent/preview/2021-03-01-preview/examples/Organization_Delete.json new file mode 100644 index 000000000000..e701a7776bfa --- /dev/null +++ b/specification/confluent/resource-manager/Microsoft.Confluent/preview/2021-03-01-preview/examples/Organization_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "organizationName": "myOrganization" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/preview/2021-03-01-preview/examples/Organization_Get.json b/specification/confluent/resource-manager/Microsoft.Confluent/preview/2021-03-01-preview/examples/Organization_Get.json new file mode 100644 index 000000000000..be75cb6ba27d --- /dev/null +++ b/specification/confluent/resource-manager/Microsoft.Confluent/preview/2021-03-01-preview/examples/Organization_Get.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "organizationName": "myOrganization" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Confluent/organizations/myOrganization", + "name": "myOrganization", + "type": "Microsoft.Confluent/organizations", + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2020-05-09T14:28:47.284Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-05-09T14:28:47.284Z" + }, + "properties": { + "createdTime": "2020-05-09T14:28:47.284Z", + "provisioningState": "Accepted", + "organizationId": "string", + "ssoUrl": "string", + "offerDetail": { + "publisherId": "string", + "id": "string", + "planId": "string", + "planName": "string", + "termUnit": "string", + "status": "Started" + }, + "userDetail": { + "firstName": "string", + "lastName": "string", + "emailAddress": "contoso@microsoft.com" + } + }, + "tags": { + "Environment": "Dev" + }, + "location": "West US" + } + } + } +} diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/preview/2021-03-01-preview/examples/Organization_ListByResourceGroup.json b/specification/confluent/resource-manager/Microsoft.Confluent/preview/2021-03-01-preview/examples/Organization_ListByResourceGroup.json new file mode 100644 index 000000000000..4b67b32e1bbd --- /dev/null +++ b/specification/confluent/resource-manager/Microsoft.Confluent/preview/2021-03-01-preview/examples/Organization_ListByResourceGroup.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Confluent/organizations/myOrganizations", + "name": "myOrganizations", + "type": "Microsoft.Confluent/organizations", + "properties": { + "createdTime": "2020-05-09T14:28:47.284Z", + "provisioningState": "Accepted", + "organizationId": "string", + "ssoUrl": "string", + "offerDetail": { + "publisherId": "string", + "id": "string", + "planId": "string", + "planName": "string", + "termUnit": "string", + "status": "Started" + }, + "userDetail": { + "firstName": "string", + "lastName": "string", + "emailAddress": "contoso@microsoft.com" + } + }, + "tags": { + "Environment": "Dev" + }, + "location": "West US" + } + ], + "nextLink": "string" + } + } + } +} diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/preview/2021-03-01-preview/examples/Organization_ListBySubscription.json b/specification/confluent/resource-manager/Microsoft.Confluent/preview/2021-03-01-preview/examples/Organization_ListBySubscription.json new file mode 100644 index 000000000000..cbc559f4816b --- /dev/null +++ b/specification/confluent/resource-manager/Microsoft.Confluent/preview/2021-03-01-preview/examples/Organization_ListBySubscription.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Confluent/organizations/myOrganizations", + "name": "myOrganizations", + "type": "Microsoft.Confluent/organizations", + "properties": { + "createdTime": "2020-05-09T14:28:47.284Z", + "provisioningState": "Accepted", + "organizationId": "string", + "ssoUrl": "string", + "offerDetail": { + "publisherId": "string", + "id": "string", + "planId": "string", + "planName": "string", + "termUnit": "string", + "status": "Started" + }, + "userDetail": { + "firstName": "string", + "lastName": "string", + "emailAddress": "contoso@microsoft.com" + } + }, + "tags": { + "Environment": "Dev" + }, + "location": "West US" + } + ], + "nextLink": "string" + } + } + } +} diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/preview/2021-03-01-preview/examples/Organization_Update.json b/specification/confluent/resource-manager/Microsoft.Confluent/preview/2021-03-01-preview/examples/Organization_Update.json new file mode 100644 index 000000000000..ca990b4db79e --- /dev/null +++ b/specification/confluent/resource-manager/Microsoft.Confluent/preview/2021-03-01-preview/examples/Organization_Update.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "organizationName": "myOrganization", + "body": { + "tags": { + "env": "dev", + "client": "dev-client" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Confluent/organizations/myOrganization", + "name": "myOrganization", + "type": "Microsoft.Confluent/organizations", + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2020-05-09T14:28:47.284Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-05-09T14:28:47.284Z" + }, + "properties": { + "createdTime": "2020-05-09T14:28:47.284Z", + "provisioningState": "Succeeded", + "organizationId": "string", + "ssoUrl": "string", + "offerDetail": { + "publisherId": "string", + "id": "string", + "planId": "string", + "planName": "string", + "termUnit": "string", + "status": "Started" + }, + "userDetail": { + "firstName": "string", + "lastName": "string", + "emailAddress": "contoso@microsoft.com" + } + }, + "tags": { + "Environment": "Dev" + }, + "location": "West US" + } + } + } +} diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/preview/2021-03-01-preview/examples/Validations_ValidateOrganizations.json b/specification/confluent/resource-manager/Microsoft.Confluent/preview/2021-03-01-preview/examples/Validations_ValidateOrganizations.json new file mode 100644 index 000000000000..5a5fe44f966d --- /dev/null +++ b/specification/confluent/resource-manager/Microsoft.Confluent/preview/2021-03-01-preview/examples/Validations_ValidateOrganizations.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "organizationName": "myOrganization", + "body": { + "properties": { + "offerDetail": { + "publisherId": "string", + "id": "string", + "planId": "string", + "planName": "string", + "termUnit": "string" + }, + "userDetail": { + "firstName": "string", + "lastName": "string", + "emailAddress": "abc@microsoft.com" + } + }, + "tags": { + "Environment": "Dev" + }, + "location": "West US" + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Confluent/organizations/myOrganization", + "name": "myOrganization", + "type": "Microsoft.Confluent/organizations", + "properties": { + "createdTime": "2020-05-09T14:28:47.284Z", + "provisioningState": "Succeeded", + "organizationId": "string", + "ssoUrl": "string", + "offerDetail": { + "publisherId": "string", + "id": "string", + "planId": "string", + "planName": "string", + "termUnit": "string", + "status": "Started" + }, + "userDetail": { + "firstName": "string", + "lastName": "string", + "emailAddress": "abc@microsoft.com" + } + }, + "tags": { + "Environment": "Dev" + }, + "location": "West US" + } + } + } +} diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/stable/2020-03-01/confluent.json b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2020-03-01/confluent.json index ca70806c77f9..a5d955874d8a 100644 --- a/specification/confluent/resource-manager/Microsoft.Confluent/stable/2020-03-01/confluent.json +++ b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2020-03-01/confluent.json @@ -602,6 +602,7 @@ }, "nextLink": { "description": "URL to get the next set of operation list results if there are any.", + "readOnly": true, "type": "string" } } @@ -720,7 +721,8 @@ }, "status": { "description": "SaaS Offer Status", - "$ref": "#/definitions/SaaSOfferStatus" + "$ref": "#/definitions/SaaSOfferStatus", + "readOnly": true } } }, diff --git a/specification/confluent/resource-manager/readme.az.md b/specification/confluent/resource-manager/readme.az.md index 237bedf87dc8..8f107728791a 100644 --- a/specification/confluent/resource-manager/readme.az.md +++ b/specification/confluent/resource-manager/readme.az.md @@ -30,4 +30,3 @@ cli: param: provisioningState hidden: true ``` - diff --git a/specification/confluent/resource-manager/readme.azureresourceschema.md b/specification/confluent/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 6397c3480fd8..000000000000 --- a/specification/confluent/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,36 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-confluent-2020-03-01-preview - - tag: schema-confluent-2020-03-01 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-confluent-2020-03-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-confluent-2020-03-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Confluent/preview/2020-03-01-preview/confluent.json - -``` - -### Tag: schema-confluent-2020-03-01 and azureresourceschema - -``` yaml $(tag) == 'schema-confluent-2020-03-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Confluent/stable/2020-03-01/confluent.json - -``` diff --git a/specification/confluent/resource-manager/readme.go.md b/specification/confluent/resource-manager/readme.go.md index 588e443f83b9..d137ad529b23 100644 --- a/specification/confluent/resource-manager/readme.go.md +++ b/specification/confluent/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: confluent clear-output-folder: true ``` @@ -15,6 +15,7 @@ go: batch: - tag: package-2020-03-01 - tag: package-2020-03-01-preview + - tag: package-2021-03-01-preview ``` ### Tag: package-2020-03-01 and go @@ -34,3 +35,12 @@ Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2021-03-01-preview' && $(go) +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2021-03-01-preview/$(namespace) +``` \ No newline at end of file diff --git a/specification/confluent/resource-manager/readme.java.md b/specification/confluent/resource-manager/readme.java.md index 2a58f61cd27a..462a9e89969d 100644 --- a/specification/confluent/resource-manager/readme.java.md +++ b/specification/confluent/resource-manager/readme.java.md @@ -18,6 +18,7 @@ output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-confluent batch: - tag: package-2020-03-01 - tag: package-2020-03-01-preview + - tag: package-2021-03-01-preview ``` ### Tag: package-2020-03-01 and java @@ -45,3 +46,16 @@ java: regenerate-manager: true generate-interface: true ``` + +### Tag: package-2021-03-01-preview and java + +These settings apply only when `--tag=package-2021-03-01-preview --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2021-03-01-preview' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.confluent.v2021_03_01_preview + output-folder: $(azure-libraries-for-java-folder)/sdk/confluent/mgmt-v2021_03_01_preview +regenerate-manager: true +generate-interface: true +``` \ No newline at end of file diff --git a/specification/confluent/resource-manager/readme.md b/specification/confluent/resource-manager/readme.md index ecbe0f6c59e1..8780a27ab0d6 100644 --- a/specification/confluent/resource-manager/readme.md +++ b/specification/confluent/resource-manager/readme.md @@ -28,7 +28,7 @@ These are the global settings for the Confluent API. title: ConfluentManagementClient openapi-type: arm openapi-subtype: rpaas -tag: package-2020-03-01 +tag: package-2021-03-01-preview ``` ### Tag: package-2020-03-01 @@ -49,6 +49,15 @@ input-file: - Microsoft.Confluent/preview/2020-03-01-preview/confluent.json ``` +### Tag: package-2021-03-01-preview + +These settings apply only when `--tag=package-2021-03-01-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2021-03-01-preview' +input-file: +- Microsoft.Confluent/preview/2021-03-01-preview/confluent.json +``` + # Code Generation ## Swagger to SDK @@ -58,7 +67,6 @@ This is not used by Autorest itself. ``` yaml $(swagger-to-sdk) swagger-to-sdk: - - repo: azure-powershell - repo: azure-sdk-for-net - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-java @@ -70,8 +78,6 @@ swagger-to-sdk: - bundle install && rake arm:regen_all_profiles['azure_mgmt_confluent'] - repo: azure-cli-extensions - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js confluent/resource-manager ``` ## C# @@ -102,31 +108,3 @@ See configuration in [readme.ruby.md](./readme.ruby.md) See configuration in [readme.typescript.md](./readme.typescript.md) -## AzureResourceSchema - -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) - -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.Confluent/stable/2020-03-01/confluent.json - - $(this-folder)/Microsoft.Confluent/preview/2020-03-01-preview/confluent.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` diff --git a/specification/confluent/resource-manager/readme.python.md b/specification/confluent/resource-manager/readme.python.md index b7652ef0ee6d..f1ba121d7ba2 100644 --- a/specification/confluent/resource-manager/readme.python.md +++ b/specification/confluent/resource-manager/readme.python.md @@ -11,6 +11,8 @@ namespace: azure.mgmt.confluent package-name: azure-mgmt-confluent package-version: 1.0.0b1 clear-output-folder: true +modelerfour: + lenient-model-deduplication: true ``` ``` yaml $(python) && $(python-mode) == 'update' diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-05-01/consumption.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-05-01/consumption.json index cf4aa8cbfb30..0841d3f791ef 100644 --- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-05-01/consumption.json +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-05-01/consumption.json @@ -332,7 +332,7 @@ "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.", + "description": "The operation to create or update a budget. You can optionally provide an eTag if desired as a form of concurrency control. To obtain the latest eTag for a given budget, perform a get operation prior to your put operation.", "externalDocs": { "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" }, @@ -1151,7 +1151,7 @@ ], "x-ms-odata": "#/definitions/Forecast", "operationId": "Forecasts_List", - "description": "Lists the forecast charges by subscriptionId.", + "description": "Lists the forecast charges for scope defined. Please note that this API is no longer actively under development. We recommend using our new Forecast API moving forward: https://docs.microsoft.com/en-us/rest/api/cost-management/forecast/usage.", "externalDocs": { "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" }, @@ -2360,10 +2360,10 @@ "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 period. 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.", + "filter": { + "description": "May be used to filter budgets by user-specified dimensions and/or tags.", "type": "object", - "$ref": "#/definitions/Filters" + "$ref": "#/definitions/Filter" }, "currentSpend": { "description": "The current amount of cost which is being tracked for a budget.", @@ -2405,8 +2405,8 @@ "startDate" ] }, - "Filters": { - "description": "May be used to filter budgets by resource group, resource, or meter.", + "Filter": { + "description": "May be used to filter budgets by user-specified dimensions and/or tags.", "properties": { "resourceGroups": { "description": "The list of filters on resource groups, allowed at subscription level only.", @@ -2492,12 +2492,12 @@ "format": "decimal" }, "contactEmails": { - "description": "Email addresses to send the budget notification to when the threshold is exceeded.", + "description": "Email addresses to send the budget notification to when the threshold is exceeded. Must have at least one contact email or contact group specified at the Subscription or Resource Group scopes. All other scopes must have at least one contact email specified.", "type": "array", "items": { "type": "string" }, - "minItems": 1, + "minItems": 0, "maxItems": 50 }, "contactRoles": { @@ -2508,13 +2508,25 @@ } }, "contactGroups": { - "description": "Action groups to send the budget notification to when the threshold is exceeded.", + "description": "Action groups to send the budget notification to when the threshold is exceeded. Must be provided as a fully qualified Azure resource id. Only supported at Subscription or Resource Group scopes.", "type": "array", "items": { "type": "string" }, "minItems": 0, "maxItems": 50 + }, + "thresholdType": { + "description": "The type of threshold", + "type": "string", + "enum": [ + "Actual" + ], + "x-ms-enum": { + "name": "ThresholdType", + "modelAsString": true + }, + "default": "Actual" } }, "required": [ @@ -2651,7 +2663,7 @@ "readOnly": true }, "grain": { - "description": "The granularity of forecast.", + "description": "The granularity of forecast. Please note that Yearly is not currently supported in this API. The API will provide responses in the Monthly grain if Yearly is selected. To get yearly grain data, please use our newer Forecast API.", "type": "string", "enum": [ "Daily", diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-05-01/examples/Budget.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-05-01/examples/Budget.json index be9537a6b425..dcc41dfe7566 100644 --- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-05-01/examples/Budget.json +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-05-01/examples/Budget.json @@ -21,7 +21,7 @@ "startDate": "2017-10-01T00:00:00Z", "endDate": "2018-10-31T00:00:00Z" }, - "filters": { + "filter": { "resourceGroups": [ "MPDEVTESTRG" ], diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-05-01/examples/BudgetsList.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-05-01/examples/BudgetsList.json index 9ec90134c5e8..fc56055d00d5 100644 --- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-05-01/examples/BudgetsList.json +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-05-01/examples/BudgetsList.json @@ -22,7 +22,7 @@ "startDate": "2017-10-01T00:00:00Z", "endDate": "2018-10-31T00:00:00Z" }, - "filters": { + "filter": { "resourceGroups": [ "MYDEVTESTRG" ], @@ -94,7 +94,7 @@ "startDate": "2017-10-01T00:00:00Z", "endDate": "2018-10-31T00:00:00Z" }, - "filters": { + "filter": { "resourceGroups": [ "MYDEVTESTRG" ], diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-05-01/examples/CreateOrUpdateBudget.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-05-01/examples/CreateOrUpdateBudget.json index ca3c4cd7030c..e68d7bf8adef 100644 --- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-05-01/examples/CreateOrUpdateBudget.json +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-05-01/examples/CreateOrUpdateBudget.json @@ -15,7 +15,7 @@ "startDate": "2017-10-01T00:00:00Z", "endDate": "2018-10-31T00:00:00Z" }, - "filters": { + "filter": { "resourceGroups": [ "MYDEVTESTRG" ], @@ -73,7 +73,7 @@ "startDate": "2017-10-01T00:00:00Z", "endDate": "2018-10-31T00:00:00Z" }, - "filters": { + "filter": { "resourceGroups": [ "MPDEVTESTRG" ], @@ -134,7 +134,7 @@ "startDate": "2017-10-01T00:00:00Z", "endDate": "2018-10-31T00:00:00Z" }, - "filters": { + "filter": { "resourceGroups": [ "MPDEVTESTRG" ], diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/consumption.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/consumption.json index 021a511d7f31..c566b00a8d9a 100644 --- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/consumption.json +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/consumption.json @@ -40,7 +40,7 @@ "UsageDetails" ], "operationId": "UsageDetails_List", - "description": "Lists the usage details for the defined scope. Usage details are available via this API only for May 1, 2014 or later.", + "description": "Lists the usage details for the defined scope. Usage details are available via this API only for May 1, 2014 or later. For more information on using this API, including how to specify a date range, please see: https://docs.microsoft.com/en-us/azure/cost-management-billing/costs/manage-automation", "externalDocs": { "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" }, @@ -116,7 +116,7 @@ }, { "name": "$filter", - "description": "May be used to filter usageDetails by properties/resourceGroup, properties/resourceName, properties/resourceId, properties/chargeType, properties/reservationId, properties/publisherType or tags. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value is separated by a colon (:). PublisherType Filter accepts two values azure and marketplace and it is currently supported for Web Direct Offer Type", + "description": "May be used to filter usageDetails by properties/resourceGroup, properties/instanceName, properties/resourceId, properties/chargeType, properties/reservationId, properties/publisherType or tags. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value is separated by a colon (:). PublisherType Filter accepts two values azure and marketplace and it is currently supported for Web Direct Offer Type", "in": "query", "required": false, "type": "string" @@ -620,7 +620,7 @@ } } }, - "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/providers/Microsoft.Billing/billingPeriods/{billingPeriodName}/providers/Microsoft.Consumption/balances": { + "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingPeriods/{billingPeriodName}/providers/Microsoft.Consumption/balances": { "get": { "tags": [ "Balances" @@ -1596,7 +1596,7 @@ } } }, - "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/providers/Microsoft.Consumption/events": { + "/{scope}/providers/Microsoft.Consumption/events": { "get": { "tags": [ "Events" @@ -1609,15 +1609,12 @@ "x-ms-examples": { "EventsListByBillingProfile": { "$ref": "./examples/EventsListByBillingProfile.json" + }, + "EventsList-Modern": { + "$ref": "./examples/EventsListByCustomer.json" } }, "parameters": [ - { - "$ref": "#/parameters/billingAccountIdParameter" - }, - { - "$ref": "#/parameters/billingProfileIdParameter" - }, { "$ref": "#/parameters/apiVersionParameter" }, @@ -1626,6 +1623,9 @@ }, { "$ref": "#/parameters/endDateParameter" + }, + { + "$ref": "#/parameters/scopeEventsParameter" } ], "responses": { @@ -1647,7 +1647,7 @@ } } }, - "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/providers/Microsoft.Consumption/lots": { + "/{scope}/providers/Microsoft.Consumption/lots": { "get": { "tags": [ "Lots" @@ -1658,16 +1658,16 @@ "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" }, "x-ms-examples": { - "EventsListByBillingProfile": { + "LotsListByBillingProfile": { "$ref": "./examples/LotsListByBillingProfile.json" + }, + "LotsList-Modern": { + "$ref": "./examples/LotsListByCustomer.json" } }, "parameters": [ { - "$ref": "#/parameters/billingAccountIdParameter" - }, - { - "$ref": "#/parameters/billingProfileIdParameter" + "$ref": "#/parameters/scopeLotsParameter" }, { "$ref": "#/parameters/apiVersionParameter" @@ -1692,7 +1692,7 @@ } } }, - "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/providers/Microsoft.Consumption/credits/balanceSummary": { + "/{scope}/providers/Microsoft.Consumption/credits/balanceSummary": { "get": { "tags": [ "Credits" @@ -1703,19 +1703,19 @@ "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" }, "x-ms-examples": { - "CreditSummaryByBillingProfile": { + "CreditsBalanceSummaryByBillingProfile": { "$ref": "./examples/CreditSummaryByBillingProfile.json" + }, + "CreditsBalanceSummary-Modern": { + "$ref": "./examples/CreditSummaryByCustomer.json" } }, "parameters": [ { - "$ref": "#/parameters/billingAccountIdParameter" - }, - { - "$ref": "#/parameters/billingProfileIdParameter" + "$ref": "#/parameters/apiVersionParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "#/parameters/scopeCreditsParameter" } ], "responses": { @@ -3013,9 +3013,9 @@ "type": "string", "description": "Resource sku" }, - "etag": { + "eTag": { "type": "string", - "description": "Resource etag." + "description": "Resource eTag." }, "properties": { "x-ms-client-flatten": true, @@ -3227,6 +3227,11 @@ "description": "The link (url) to the previous page of results.", "type": "string", "readOnly": true + }, + "totalCost": { + "description": "The total amount of cost.", + "type": "string", + "readOnly": true } } }, @@ -3393,6 +3398,11 @@ "description": "Properties for modern reservation recommendation", "$ref": "#/definitions/ModernReservationRecommendationProperties", "x-ms-client-flatten": true + }, + "eTag": { + "description": "Resource eTag.", + "type": "string", + "readOnly": true } }, "allOf": [ @@ -3493,6 +3503,16 @@ "description": "This is the ARM Sku name.", "type": "string", "readOnly": true + }, + "resourceType": { + "description": "The Azure resource type.", + "type": "string", + "readOnly": true + }, + "subscriptionId": { + "description": "The Azure subscription ID.", + "type": "string", + "readOnly": true } } }, @@ -4848,6 +4868,16 @@ "EventProperties": { "description": "The event properties.", "properties": { + "creditCurrency": { + "description": "Credit Currency", + "type": "string", + "readOnly": true + }, + "billingCurrency": { + "description": "Billing Currency.", + "type": "string", + "readOnly": true + }, "transactionDate": { "description": "Transaction date.", "type": "string", @@ -4864,26 +4894,51 @@ "readOnly": true, "$ref": "#/definitions/amount" }, + "newCreditInBillingCurrency": { + "description": "Current balance.", + "readOnly": true, + "$ref": "#/definitions/AmountWithExchangeRate" + }, "adjustments": { "description": "Adjustments amount.", "readOnly": true, "$ref": "#/definitions/amount" }, + "adjustmentsInBillingCurrency": { + "description": "Current balance.", + "readOnly": true, + "$ref": "#/definitions/AmountWithExchangeRate" + }, "creditExpired": { "description": "Credit expired.", "readOnly": true, "$ref": "#/definitions/amount" }, + "creditExpiredInBillingCurrency": { + "description": "Current balance.", + "readOnly": true, + "$ref": "#/definitions/AmountWithExchangeRate" + }, "charges": { "description": "Charges amount.", "readOnly": true, "$ref": "#/definitions/amount" }, + "chargesInBillingCurrency": { + "description": "Current balance.", + "readOnly": true, + "$ref": "#/definitions/AmountWithExchangeRate" + }, "closedBalance": { "description": "Closed balance.", "readOnly": true, "$ref": "#/definitions/amount" }, + "closedBalanceInBillingCurrency": { + "description": "Current balance.", + "readOnly": true, + "$ref": "#/definitions/AmountWithExchangeRate" + }, "eventType": { "description": "The type of event.", "type": "string", @@ -4905,6 +4960,11 @@ "description": "Invoice number.", "type": "string", "readOnly": true + }, + "reseller": { + "description": "Reseller details.", + "readOnly": true, + "$ref": "#/definitions/Reseller" } } }, @@ -4945,16 +5005,36 @@ "LotProperties": { "description": "The lot properties.", "properties": { + "creditCurrency": { + "description": "Credit Currency", + "type": "string", + "readOnly": true + }, + "billingCurrency": { + "description": "Billing Currency.", + "type": "string", + "readOnly": true + }, "originalAmount": { "description": "Original amount.", "readOnly": true, "$ref": "#/definitions/amount" }, + "originalAmountInBillingCurrency": { + "description": "Current balance.", + "readOnly": true, + "$ref": "#/definitions/AmountWithExchangeRate" + }, "closedBalance": { "description": "Closed balance.", "readOnly": true, "$ref": "#/definitions/amount" }, + "closedBalanceInBillingCurrency": { + "description": "Current balance.", + "readOnly": true, + "$ref": "#/definitions/AmountWithExchangeRate" + }, "source": { "description": "Lot source.", "type": "string", @@ -4984,6 +5064,11 @@ "description": "PO number.", "type": "string", "readOnly": true + }, + "reseller": { + "description": "Reseller details.", + "readOnly": true, + "$ref": "#/definitions/Reseller" } } }, @@ -5007,6 +5092,16 @@ "description": "The properties of the credit summary.", "type": "object", "properties": { + "creditCurrency": { + "description": "Credit Currency", + "type": "string", + "readOnly": true + }, + "billingCurrency": { + "description": "Billing Currency.", + "type": "string", + "readOnly": true + }, "balanceSummary": { "description": "Summary of balances associated with this credit summary.", "readOnly": true, @@ -5026,6 +5121,11 @@ "description": "Pending eligible charges.", "readOnly": true, "$ref": "#/definitions/amount" + }, + "reseller": { + "description": "Reseller details.", + "readOnly": true, + "$ref": "#/definitions/Reseller" } } }, @@ -5041,6 +5141,16 @@ "description": "Current balance.", "readOnly": true, "$ref": "#/definitions/amount" + }, + "estimatedBalanceInBillingCurrency": { + "description": "Current balance.", + "readOnly": true, + "$ref": "#/definitions/AmountWithExchangeRate" + }, + "currentBalanceInBillingCurrency": { + "description": "Current balance.", + "readOnly": true, + "$ref": "#/definitions/AmountWithExchangeRate" } } }, @@ -5060,6 +5170,42 @@ } } }, + "AmountWithExchangeRate": { + "description": "Reseller details", + "allOf": [ + { + "$ref": "#/definitions/amount" + } + ], + "properties": { + "exchangeRate": { + "description": "Exchange Rate.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "exchangeRateMonth": { + "description": "Exchange rate month.", + "type": "number", + "readOnly": true + } + } + }, + "Reseller": { + "description": "Reseller details", + "properties": { + "resellerId": { + "description": "Reseller id.", + "type": "string", + "readOnly": true + }, + "resellerDescription": { + "description": "Reseller Description.", + "type": "string", + "readOnly": true + } + } + }, "Resource": { "description": "The Resource model definition.", "properties": { @@ -5174,6 +5320,33 @@ "x-ms-parameter-location": "method", "x-ms-skip-url-encoding": true }, + "scopeCreditsParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope associated with credits operations. This includes '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfile/{billingProfileId}' for Billing Profile scope, and 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/customers/{customerId}' specific for partners.", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, + "scopeEventsParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope associated with events operations. This includes '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfile/{billingProfileId}' for Billing Profile scope, and 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/customers/{customerId}' specific for partners.", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, + "scopeLotsParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope associated with Lots operations. This includes '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfile/{billingProfileId}' for Billing Profile scope, and 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/customers/{customerId}' specific for partners.", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, "scopeUsageDetailsParameter": { "name": "scope", "in": "path", diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/CreditSummaryByBillingProfile.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/CreditSummaryByBillingProfile.json index 77dd075699c9..d1a10bbde661 100644 --- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/CreditSummaryByBillingProfile.json +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/CreditSummaryByBillingProfile.json @@ -1,8 +1,7 @@ { "parameters": { "api-version": "2019-10-01", - "billingAccountId": "1234:5678", - "billingProfileId": "2468" + "scope": "providers/Microsoft.Billing/billingAccounts/1234:5678/billingProfiles/2468" }, "responses": { "200": { diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/CreditSummaryByCustomer.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/CreditSummaryByCustomer.json new file mode 100644 index 000000000000..0dc6315f17fe --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/CreditSummaryByCustomer.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "scope": "providers/Microsoft.Billing/billingAccounts/1234:5678/customers/2468" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/1234:5678/customers/2468/providers/Microsoft.Consumption/credits/balanceSummary1", + "name": "balanceSummary1", + "type": "Microsoft.Consumption/credits/balanceSummary", + "properties": { + "creditCurrency": "USD", + "billingCurrency": "USD", + "balanceSummary": { + "estimatedBalance": { + "currency": "USD", + "value": 600.00 + }, + "estimatedBalanceInBillingCurrency": { + "exchangeRate": 72.34625000000003, + "exchangeRateMonth": 202103, + "currency": "", + "value": 5486.739600000003 + }, + "currentBalance": { + "currency": "USD", + "value": 100.00 + }, + "currentBalanceInBillingCurrency": { + "exchangeRate": 0, + "exchangeRateMonth": 202101, + "currency": "", + "value": 7342.250000000026 + } + }, + "pendingCreditAdjustments": { + "currency": "USD", + "value": 500.00 + }, + "expiredCredit": { + "currency": "USD", + "value": 0.00 + }, + "pendingEligibleCharges": { + "currency": "USD", + "value": 0.00 + }, + "reseller": { + "resellerId": "55258", + "resellerDescription": "Reseller" + } + } + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/EventsListByBillingProfile.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/EventsListByBillingProfile.json index 636924d3b392..c19fbf0f2a98 100644 --- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/EventsListByBillingProfile.json +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/EventsListByBillingProfile.json @@ -1,8 +1,7 @@ { "parameters": { "api-version": "2019-10-01", - "billingAccountId": "1234:5678", - "billingProfileId": "4268", + "scope": "providers/Microsoft.Billing/billingAccounts/1234:5678/billingProfiles/4268", "startDate": "2019-09-01", "endDate": "2019-10-31" }, diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/EventsListByCustomer.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/EventsListByCustomer.json new file mode 100644 index 000000000000..a5ff114bfa66 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/EventsListByCustomer.json @@ -0,0 +1,150 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "scope": "providers/Microsoft.Billing/billingAccounts/1234:5678/customers/4268", + "startDate": "2019-09-01", + "endDate": "2019-10-31" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/1234:5678/customers/4268/providers/Microsoft.Consumption/events/event1", + "name": "event1", + "type": "Microsoft.Consumption/events", + "properties": { + "transactionDate": "2021-03-09T00:00:00Z", + "description": "", + "creditCurrency": "USD", + "billingCurrency": "USD", + "reseller": { + "resellerId": "123558", + "resellerDescription": "Reseller" + }, + "newCredit": { + "currency": "USD", + "value": 0 + }, + "newCreditInBillingCurrency": { + "exchangeRate": 72.34625000000003, + "exchangeRateMonth": 202103, + "currency": "USD", + "value": 0 + }, + "adjustments": { + "currency": "USD", + "value": 0 + }, + "adjustmentsInBillingCurrency": { + "exchangeRate": 72.34625000000003, + "exchangeRateMonth": 202103, + "currency": "USD", + "value": 0 + }, + "creditExpired": { + "currency": "USD", + "value": 0 + }, + "creditExpiredInBillingCurrency": { + "exchangeRate": 72.34625000000003, + "exchangeRateMonth": 202103, + "currency": "USD", + "value": 0 + }, + "charges": { + "currency": "USD", + "value": -24.16 + }, + "chargesInBillingCurrency": { + "exchangeRate": 72.34625000000003, + "exchangeRateMonth": 202103, + "currency": "USD", + "value": -1747.8854000000008 + }, + "closedBalance": { + "currency": "USD", + "value": 75.84 + }, + "closedBalanceInBillingCurrency": { + "exchangeRate": 72.34625000000003, + "exchangeRateMonth": 202103, + "currency": "USD", + "value": 5594.364600000025 + }, + "eventType": "PendingCharges", + "invoiceNumber": "D9875F908" + } + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/1234:5678/customers/4268/providers/Microsoft.Consumption/events/event2", + "name": "event2", + "type": "Microsoft.Consumption/events", + "properties": { + "transactionDate": "2021-03-09T00:00:00Z", + "description": "", + "creditCurrency": "USD", + "billingCurrency": "USD", + "reseller": { + "resellerId": "123558", + "resellerDescription": "Reseller" + }, + "newCredit": { + "currency": "USD", + "value": 0 + }, + "newCreditInBillingCurrency": { + "exchangeRate": 72.34625000000003, + "exchangeRateMonth": 202103, + "currency": "USD", + "value": 0 + }, + "adjustments": { + "currency": "USD", + "value": 0 + }, + "adjustmentsInBillingCurrency": { + "exchangeRate": 72.34625000000003, + "exchangeRateMonth": 202103, + "currency": "USD", + "value": 0 + }, + "creditExpired": { + "currency": "USD", + "value": 0 + }, + "creditExpiredInBillingCurrency": { + "exchangeRate": 72.34625000000003, + "exchangeRateMonth": 202103, + "currency": "USD", + "value": 0 + }, + "charges": { + "currency": "USD", + "value": -24.16 + }, + "chargesInBillingCurrency": { + "exchangeRate": 72.34625000000003, + "exchangeRateMonth": 202103, + "currency": "USD", + "value": -1747.8854000000008 + }, + "closedBalance": { + "currency": "USD", + "value": 75.84 + }, + "closedBalanceInBillingCurrency": { + "exchangeRate": 72.34625000000003, + "exchangeRateMonth": 202103, + "currency": "USD", + "value": 5594.364600000025 + }, + "eventType": "PendingCharges", + "invoiceNumber": "D9875F908" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/LotsListByBillingProfile.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/LotsListByBillingProfile.json index 323660d282cd..6a158689af87 100644 --- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/LotsListByBillingProfile.json +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/LotsListByBillingProfile.json @@ -1,8 +1,7 @@ { "parameters": { "api-version": "2019-10-01", - "billingAccountId": "1234:5678", - "billingProfileId": "2468" + "scope": "providers/Microsoft.Billing/billingAccounts/1234:5678/billingProfiles/2468" }, "responses": { "200": { diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/LotsListByCustomer.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/LotsListByCustomer.json new file mode 100644 index 000000000000..5e66e677f170 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/LotsListByCustomer.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "scope": "providers/Microsoft.Billing/billingAccounts/1234:5678/customers/2468" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/1234:5678/billingProficustomersles/2468/providers/Microsoft.Consumption/lots/lot1", + "name": "lot1", + "type": "Microsoft.Consumption/lots", + "properties": { + "originalAmount": { + "currency": "USD", + "value": 5000.00 + }, + "originalAmountInBillingCurrency": { + "exchangeRate": 73.42250000000027, + "exchangeRateMonth": 202101, + "currency": "", + "value": 7342.250000000026 + }, + "closedBalance": { + "currency": "USD", + "value": 60.90 + }, + "closedBalanceInBillingCurrency": { + "exchangeRate": 73.42250000000027, + "exchangeRateMonth": 202101, + "currency": "", + "value": 7342.250000000026 + }, + "source": "PurchasedCredit", + "startDate": "2019-10-01T00:00:00Z", + "expirationDate": "2019-11-01T00:00:00Z", + "poNumber": "3524" + } + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/1234:5678/billingProfiles/2468/providers/Microsoft.Consumption/lots/lot2", + "name": "lot2", + "type": "Microsoft.Consumption/lots", + "properties": { + "originalAmount": { + "currency": "USD", + "value": 6000.00 + }, + "originalAmountInBillingCurrency": { + "exchangeRate": 73.42250000000027, + "exchangeRateMonth": 202101, + "currency": "", + "value": 7342.250000000026 + }, + "closedBalance": { + "currency": "USD", + "value": 80.90 + }, + "closedBalanceInBillingCurrency": { + "exchangeRate": 73.42250000000027, + "exchangeRateMonth": 202101, + "currency": "", + "value": 7342.250000000026 + }, + "source": "PurchasedCredit", + "startDate": "2019-11-01T00:00:00Z", + "expirationDate": "2019-12-31T00:00:00Z", + "poNumber": "31224" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-11-01/consumption.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-11-01/consumption.json index 1c18c75f4073..55e47eaf75b6 100644 --- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-11-01/consumption.json +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-11-01/consumption.json @@ -40,7 +40,7 @@ "UsageDetails" ], "operationId": "UsageDetails_List", - "description": "Lists the usage details for the defined scope. Usage details are available via this API only for May 1, 2014 or later.", + "description": "Lists the usage details for the defined scope. Usage details are available via this API only for May 1, 2014 or later. For more information on using this API, including how to specify a date range, please see: https://docs.microsoft.com/en-us/azure/cost-management-billing/costs/manage-automation", "externalDocs": { "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" }, diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/consumption.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/consumption.json new file mode 100644 index 000000000000..5c1741141c2a --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/consumption.json @@ -0,0 +1,5782 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-05-01", + "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": { + "/{scope}/providers/Microsoft.Consumption/usageDetails": { + "get": { + "tags": [ + "UsageDetails" + ], + "operationId": "UsageDetails_List", + "description": "Lists the usage details for the defined scope. 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-Legacy": { + "$ref": "./examples/UsageDetailsList.json" + }, + "UsageDetailsListFilterByTag-Legacy": { + "$ref": "./examples/UsageDetailsListFilterByTag.json" + }, + "UsageDetailsListForBillingPeriod-Legacy": { + "$ref": "./examples/UsageDetailsListForBillingPeriod.json" + }, + "UsageDetailsExpand-Legacy": { + "$ref": "./examples/UsageDetailsExpand.json" + }, + "UsageDetailsListByMetricActualCost-Legacy": { + "$ref": "./examples/UsageDetailsListByMetricActualCost.json" + }, + "UsageDetailsListByMetricAmortizedCost-Legacy": { + "$ref": "./examples/UsageDetailsListByMetricAmortizedCost.json" + }, + "UsageDetailsListByMetricUsage-Legacy": { + "$ref": "./examples/UsageDetailsListByMetricUsage.json" + }, + "BillingAccountUsageDetailsList-Legacy": { + "$ref": "./examples/UsageDetailsListByBillingAccount.json" + }, + "BillingAccountUsageDetailsListForBillingPeriod-Legacy": { + "$ref": "./examples/UsageDetailsListForBillingPeriodByBillingAccount.json" + }, + "DepartmentUsageDetailsList-Legacy": { + "$ref": "./examples/UsageDetailsListByDepartment.json" + }, + "DepartmentUsageDetailsListForBillingPeriod-Legacy": { + "$ref": "./examples/UsageDetailsListForBillingPeriodByDepartment.json" + }, + "EnrollmentAccountUsageDetailsList-Legacy": { + "$ref": "./examples/UsageDetailsListByEnrollmentAccount.json" + }, + "EnrollmentAccountUsageDetailsListForBillingPeriod-Legacy": { + "$ref": "./examples/UsageDetailsListForBillingPeriodByEnrollmentAccount.json" + }, + "ManagementGroupUsageDetailsList-Legacy": { + "$ref": "./examples/UsageDetailsListByManagementGroup.json" + }, + "ManagementGroupUsageDetailsListForBillingPeriod-Legacy": { + "$ref": "./examples/UsageDetailsListForBillingPeriodByManagementGroup.json" + }, + "BillingAccountUsageDetailsList-Modern": { + "$ref": "./examples/UsageDetailsListByMCABillingAccount.json" + }, + "BillingProfileUsageDetailsList-Modern": { + "$ref": "./examples/UsageDetailsListByMCABillingProfile.json" + }, + "InvoiceSectionUsageDetailsList-Modern": { + "$ref": "./examples/UsageDetailsListByMCAInvoiceSection.json" + }, + "CustomerUsageDetailsList-Modern": { + "$ref": "./examples/UsageDetailsListByMCACustomer.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeUsageDetailsParameter" + }, + { + "name": "$expand", + "description": "May be used to expand the properties/additionalInfo 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/resourceGroup, properties/resourceName, properties/resourceId, properties/chargeType, properties/reservationId, properties/publisherType or tags. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value is separated by a colon (:). PublisherType Filter accepts two values azure and marketplace and it is currently supported for Web Direct Offer Type", + "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", + "format": "int32", + "minimum": 1, + "maximum": 1000 + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/metricParameter" + } + ], + "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" + } + } + }, + "/{scope}/providers/Microsoft.Consumption/marketplaces": { + "get": { + "tags": [ + "Marketplaces" + ], + "x-ms-odata": "#/definitions/Marketplace", + "operationId": "Marketplaces_List", + "description": "Lists the marketplaces for a scope at the defined scope. 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": { + "SubscriptionMarketplacesList": { + "$ref": "./examples/MarketplacesList.json" + }, + "SubscriptionMarketplacesListForBillingPeriod": { + "$ref": "./examples/MarketplacesListForBillingPeriod.json" + }, + "BillingAccountMarketplacesList": { + "$ref": "./examples/MarketplacesByBillingAccountList.json" + }, + "BillingAccountMarketplacesListForBillingPeriod": { + "$ref": "./examples/MarketplacesByBillingAccountListForBillingPeriod.json" + }, + "DepartmentMarketplacesList": { + "$ref": "./examples/MarketplacesByDepartmentList.json" + }, + "DepartmentMarketplacesListForBillingPeriod": { + "$ref": "./examples/MarketplacesByDepartment_ListByBillingPeriod.json" + }, + "EnrollmentAccountMarketplacesList": { + "$ref": "./examples/MarketplacesByEnrollmentAccountList.json" + }, + "EnrollmentAccountMarketplacesListForBillingPeriod": { + "$ref": "./examples/MarketplacesByEnrollmentAccounts_ListByBillingPeriod.json" + }, + "ManagementGroupMarketplacesList": { + "$ref": "./examples/MarketplacesByManagementGroupList.json" + }, + "ManagementGroupMarketplacesListForBillingPeriod": { + "$ref": "./examples/MarketplacesByManagementGroup_ListForBillingPeriod.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", + "format": "int32", + "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/scopeMarketplaceParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "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" + } + } + }, + "/{scope}/providers/Microsoft.Consumption/budgets": { + "get": { + "tags": [ + "Budgets" + ], + "operationId": "Budgets_List", + "description": "Lists all budgets for the defined scope.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "BudgetsList": { + "$ref": "./examples/BudgetsList.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeBudgetParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "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" + } + } + }, + "/{scope}/providers/Microsoft.Consumption/budgets/{budgetName}": { + "get": { + "tags": [ + "Budgets" + ], + "operationId": "Budgets_Get", + "description": "Gets the budget for the scope 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/scopeBudgetParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$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. You can optionally provide an eTag if desired as a form of concurrency control. To obtain the latest eTag for a given budget, perform a get operation prior to your put operation.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "CreateOrUpdateBudget": { + "$ref": "./examples/CreateOrUpdateBudget.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeBudgetParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$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/scopeBudgetParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/budgetNameParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Consumption/tags": { + "get": { + "tags": [ + "Tags" + ], + "operationId": "Tags_Get", + "description": "Get all available tag keys for the defined scope", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "Tags_Get": { + "$ref": "./examples/Tags.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeTagsParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/TagsResult" + } + }, + "204": { + "description": "An empty response is sent when there is no information available within the selected scope." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Consumption/charges": { + "get": { + "tags": [ + "Charges" + ], + "operationId": "Charges_List", + "description": "Lists the charges based for the defined scope.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "ChargesListForEnrollmentAccount-Legacy": { + "$ref": "./examples/ChargesListForEnrollmentAccountFilterByStartEndDate.json" + }, + "ChangesForBillingPeriodByEnrollmentAccount-Legacy": { + "$ref": "./examples/ChargesForBillingPeriodByEnrollmentAccount.json" + }, + "ChargesListByDepartment-Legacy": { + "$ref": "./examples/ChargesListForDepartmentFilterByStartEndDate.json" + }, + "ChangesForBillingPeriodByDepartment-Legacy": { + "$ref": "./examples/ChargesForBillingPeriodByDepartment.json" + }, + "ChargesListByBillingAccount-Modern": { + "$ref": "./examples/ChargesListByModernBillingAccount.json" + }, + "ChargesListByBillingAccountGroupByBillingProfileId-Modern": { + "$ref": "./examples/ChargesListByModernBillingAccountGroupByBillingProfileId.json" + }, + "ChargesListByBillingAccountGroupByInvoiceSectionId-Modern": { + "$ref": "./examples/ChargesListByModernBillingAccountGroupByInvoiceSectionId.json" + }, + "ChargesListByBillingAccountGroupByCustomerId-Modern": { + "$ref": "./examples/ChargesListByModernBillingAccountGroupByCustomerId.json" + }, + "ChargesListByBillingProfile-Modern": { + "$ref": "./examples/ChargesListByModernBillingProfile.json" + }, + "ChargesListByBillingProfileInvoiceSection-Modern": { + "$ref": "./examples/ChargesListByModernBillingProfileInvoiceSection.json" + }, + "ChargesListByBillingProfileGroupByInvoiceSectionId-Modern": { + "$ref": "./examples/ChargesListByModernBillingProfileGroupByInvoiceSectionId.json" + }, + "ChargesListByInvoiceSectionId-Modern": { + "$ref": "./examples/ChargesListByModernInvoiceSectionId.json" + }, + "ChargesListByCustomer-Modern": { + "$ref": "./examples/ChargesListByModernCustomer.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeChargesParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "startDate", + "in": "query", + "description": "Start date", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + { + "name": "endDate", + "in": "query", + "description": "End date", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + { + "name": "$filter", + "description": "May be used to filter charges by properties/usageEnd (Utc time), properties/usageStart (Utc time). The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value is separated by a colon (:).", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "$apply", + "description": "May be used to group charges for billingAccount scope by properties/billingProfileId, properties/invoiceSectionId, properties/customerId (specific for Partner Led), or for billingProfile scope by properties/invoiceSectionId.", + "in": "query", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ChargesListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/providers/Microsoft.Consumption/balances": { + "get": { + "tags": [ + "Balances" + ], + "operationId": "Balances_GetByBillingAccount", + "description": "Gets the balances for a scope by billingAccountId. Balances 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": { + "Balances": { + "$ref": "./examples/BalancesByBillingAccount.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/billingAccountIdParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Balance" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/providers/Microsoft.Billing/billingPeriods/{billingPeriodName}/providers/Microsoft.Consumption/balances": { + "get": { + "tags": [ + "Balances" + ], + "operationId": "Balances_GetForBillingPeriodByBillingAccount", + "description": "Gets the balances for a scope by billing period and billingAccountId. Balances 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": { + "Balances": { + "$ref": "./examples/BalancesByBillingAccountForBillingPeriod.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/billingAccountIdParameter" + }, + { + "$ref": "#/parameters/billingPeriodNameParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Balance" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.Capacity/reservationorders/{reservationOrderId}/providers/Microsoft.Consumption/reservationSummaries": { + "get": { + "tags": [ + "ReservationSummaries" + ], + "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": [ + "ReservationSummaries" + ], + "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" + } + } + }, + "/{scope}/providers/Microsoft.Consumption/reservationSummaries": { + "get": { + "tags": [ + "ReservationSummaries" + ], + "operationId": "ReservationsSummaries_List", + "description": "Lists the reservations summaries for the defined scope daily or monthly grain.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "ReservationSummariesDailyWithBillingAccountId": { + "$ref": "./examples/ReservationSummariesDailyWithBillingAccountId.json" + }, + "ReservationSummariesMonthlyWithBillingAccountId": { + "$ref": "./examples/ReservationSummariesMonthlyWithBillingAccountId.json" + }, + "ReservationSummariesDailyWithBillingProfileId": { + "$ref": "./examples/ReservationSummariesDailyWithBillingProfileId.json" + }, + "ReservationSummariesMonthlyWithBillingProfileId": { + "$ref": "./examples/ReservationSummariesMonthlyWithBillingProfileId.json" + }, + "ReservationSummariesMonthlyWithBillingProfileIdReservationId": { + "$ref": "./examples/ReservationSummariesMonthlyWithBillingProfileIdReservationId.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeReservationsSummariesParameter" + }, + { + "$ref": "#/parameters/grainParameter" + }, + { + "name": "startDate", + "in": "query", + "description": "Start date. Only applicable when querying with billing profile", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + { + "name": "endDate", + "in": "query", + "description": "End date. Only applicable when querying with billing profile", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + { + "name": "$filter", + "description": "Required only for daily grain. The properties/UsageDate for start date and end date. The filter supports 'le' and 'ge'. Not applicable when querying with billing profile", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "reservationId", + "in": "query", + "description": "Reservation Id GUID. Only valid if reservationOrderId is also provided. Filter to a specific reservation", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + { + "name": "reservationOrderId", + "in": "query", + "description": "Reservation Order Id GUID. Required if reservationId is provided. Filter to a specific reservation order", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + { + "$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": [ + "ReservationDetails" + ], + "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": [ + "ReservationDetails" + ], + "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" + } + } + }, + "/{scope}/providers/Microsoft.Consumption/reservationDetails": { + "get": { + "tags": [ + "ReservationDetails" + ], + "operationId": "ReservationsDetails_List", + "description": "Lists the reservations details for the defined scope and provided date range.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "ReservationDetailsByBillingAccountId": { + "$ref": "./examples/ReservationDetailsByBillingAccountId.json" + }, + "ReservationDetailsByBillingProfileId": { + "$ref": "./examples/ReservationDetailsByBillingProfileId.json" + }, + "ReservationDetailsByBillingProfileIdReservationId": { + "$ref": "./examples/ReservationDetailsByBillingProfileIdReservationId.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeReservationDetailsParameter" + }, + { + "name": "startDate", + "in": "query", + "description": "Start date. Only applicable when querying with billing profile", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + { + "name": "endDate", + "in": "query", + "description": "End date. Only applicable when querying with billing profile", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + { + "name": "$filter", + "description": "Filter reservation details by date range. The properties/UsageDate for start date and end date. The filter supports 'le' and 'ge'. Not applicable when querying with billing profile", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "reservationId", + "in": "query", + "description": "Reservation Id GUID. Only valid if reservationOrderId is also provided. Filter to a specific reservation", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + { + "name": "reservationOrderId", + "in": "query", + "description": "Reservation Order Id GUID. Required if reservationId is provided. Filter to a specific reservation order", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + { + "$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" + } + } + }, + "/{scope}/providers/Microsoft.Consumption/reservationRecommendations": { + "get": { + "tags": [ + "ReservationRecommendations" + ], + "operationId": "ReservationRecommendations_List", + "description": "List of recommendations for purchasing reserved instances.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "ReservationRecommendationsBySubscription-Legacy": { + "$ref": "./examples/ReservationRecommendationsBySubscription.json" + }, + "ReservationRecommendationsByResourceGroup-Legacy": { + "$ref": "./examples/ReservationRecommendationsByResourceGroup.json" + }, + "ReservationRecommendationsFilterBySubscriptionForScopeLookBackPeriod-Legacy": { + "$ref": "./examples/ReservationRecommendationsFilterBySubscriptionForScopeLookBackPeriod.json" + }, + "ReservationRecommendationsByBillingAccount-Legacy": { + "$ref": "./examples/ReservationRecommendationsByBillingAccount.json" + }, + "ReservationRecommendationsByBillingProfile-Modern": { + "$ref": "./examples/ReservationRecommendationsByBillingProfile.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/filterParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/scopeReservationRecommendationsParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ReservationRecommendationsListResult" + } + }, + "204": { + "description": "An empty response is sent when there are no recommendations." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/{scope}/providers/Microsoft.Consumption/reservationRecommendationDetails": { + "get": { + "tags": [ + "ReservationRecommendationDetails" + ], + "operationId": "ReservationRecommendationDetails_Get", + "description": "Details of a reservation recommendation for what-if analysis of reserved instances.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "ReservationRecommendationsBySubscription-Legacy": { + "$ref": "./examples/ReservationRecommendationDetailsBySubscription.json" + }, + "ReservationRecommendationsByResourceGroup-Legacy": { + "$ref": "./examples/ReservationRecommendationDetailsByResourceGroup.json" + }, + "ReservationRecommendationsByBillingAccount-Legacy": { + "$ref": "./examples/ReservationRecommendationDetailsByBillingAccount.json" + }, + "ReservationRecommendationsByBillingProfile-Modern": { + "$ref": "./examples/ReservationRecommendationDetailsByBillingProfile.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/scopeReservationRecommendationDetailsParameter" + }, + { + "$ref": "#/parameters/scopeParameter" + }, + { + "$ref": "#/parameters/regionParameter" + }, + { + "$ref": "#/parameters/termParameter" + }, + { + "$ref": "#/parameters/lookBackPeriodParameter" + }, + { + "$ref": "#/parameters/productParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ReservationRecommendationDetailsModel" + } + }, + "204": { + "description": "An empty response is sent when there are no recommendation details." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/HighCasedErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/providers/Microsoft.Consumption/reservationTransactions": { + "get": { + "tags": [ + "ReservationTransactions" + ], + "operationId": "ReservationTransactions_List", + "description": "List of transactions for reserved instances on billing account scope", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "ReservationTransactionsByEnrollmentNumber": { + "$ref": "./examples/ReservationTransactionsListByEnrollmentNumber.json" + } + }, + "parameters": [ + { + "name": "$filter", + "description": "Filter reservation transactions by date range. The properties/EventDate for start date and end date. The filter supports 'le' and 'ge' ", + "in": "query", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/billingAccountIdParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ReservationTransactionsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/providers/Microsoft.Consumption/reservationTransactions": { + "get": { + "tags": [ + "ReservationTransactions" + ], + "operationId": "ReservationTransactions_ListByBillingProfile", + "description": "List of transactions for reserved instances on billing account scope", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "ReservationTransactionsByBillingProfileId": { + "$ref": "./examples/ReservationTransactionsListByBillingProfileId.json" + } + }, + "parameters": [ + { + "name": "$filter", + "description": "Filter reservation transactions by date range. The properties/EventDate for start date and end date. The filter supports 'le' and 'ge' ", + "in": "query", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/billingAccountIdParameter" + }, + { + "$ref": "#/parameters/billingProfileIdParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ModernReservationTransactionsListResult" + } + }, + "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 subscription. 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", + "format": "int32", + "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", + "format": "int32", + "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" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Consumption/forecasts": { + "get": { + "tags": [ + "Forecasts" + ], + "x-ms-odata": "#/definitions/Forecast", + "operationId": "Forecasts_List", + "description": "Lists the forecast charges for scope defined. Please note that this API is no longer actively under development. We recommend using our new Forecast API moving forward: https://docs.microsoft.com/en-us/rest/api/cost-management/forecast/usage.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "ForecastsList": { + "$ref": "./examples/ForecastsList.json" + }, + "ForecastsListFilterByGrain": { + "$ref": "./examples/ForecastsListFilterByGrain.json" + }, + "ForecastsListFilterByDates": { + "$ref": "./examples/ForecastsListFilterByDates.json" + } + }, + "parameters": [ + { + "name": "$filter", + "description": "May be used to filter forecasts by properties/usageDate (Utc time), properties/chargeType or properties/grain. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'.", + "in": "query", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ForecastsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/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" + } + } + }, + "/providers/Microsoft.Management/managementGroups/{managementGroupId}/providers/Microsoft.Consumption/aggregatedcost": { + "get": { + "tags": [ + "AggregatedCost" + ], + "operationId": "AggregatedCost_GetByManagementGroup", + "description": "Provides the aggregate cost of a management group and all child management groups by current billing period.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "AggregatedCostByManagementGroup": { + "$ref": "./examples/AggregatedCostByManagementGroup.json" + }, + "AggregatedCostByManagementGroupFilterByDate": { + "$ref": "./examples/AggregatedCostByManagementGroupFilterByDate.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/managementGroupIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$filter", + "description": "May be used to filter aggregated cost by properties/usageStart (Utc time), properties/usageEnd (Utc time). The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value is separated by a colon (:).", + "in": "query", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ManagementGroupAggregatedCostResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{managementGroupId}/providers/Microsoft.Billing/billingPeriods/{billingPeriodName}/Microsoft.Consumption/aggregatedCost": { + "get": { + "tags": [ + "AggregatedCost" + ], + "operationId": "AggregatedCost_GetForBillingPeriodByManagementGroup", + "description": "Provides the aggregate cost of a management group and all child management groups by specified billing period", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "AggregatedCostListForBillingPeriodByManagementGroup": { + "$ref": "./examples/AggregatedCostForBillingPeriodByManagementGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/managementGroupIdParameter" + }, + { + "$ref": "#/parameters/billingPeriodNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ManagementGroupAggregatedCostResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/providers/Microsoft.Consumption/events": { + "get": { + "tags": [ + "Events" + ], + "operationId": "Events_ListByBillingProfile", + "description": "Lists the events that decrements Azure credits or Microsoft Azure consumption commitment for a billing account or a billing profile for a given start and end date.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "EventsListByBillingProfile": { + "$ref": "./examples/EventsListByBillingProfile.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/billingAccountIdParameter" + }, + { + "$ref": "#/parameters/billingProfileIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/startDateParameter" + }, + { + "$ref": "#/parameters/endDateParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Events" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/providers/Microsoft.Consumption/events": { + "get": { + "tags": [ + "Events" + ], + "operationId": "Events_ListByBillingAccount", + "description": "Lists the events that decrements Azure credits or Microsoft Azure consumption commitment for a billing account or a billing profile for a given start and end date.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "EventsGetByBillingAccount": { + "$ref": "./examples/EventsGetByBillingAccount.json" + }, + "EventsGetByBillingAccountWithFilters": { + "$ref": "./examples/EventsGetByBillingAccountWithFilters.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/billingAccountIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$filter", + "description": "May be used to filter the events by lotId, lotSource etc. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value is separated by a colon (:).", + "in": "query", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Events" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/providers/Microsoft.Consumption/lots": { + "get": { + "tags": [ + "Lots" + ], + "operationId": "Lots_ListByBillingProfile", + "description": "Lists all Azure credits and Microsoft Azure consumption commitments for a billing account or a billing profile. Microsoft Azure consumption commitments are only supported for the billing account scope.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "EventsListByBillingProfile": { + "$ref": "./examples/LotsListByBillingProfile.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/billingAccountIdParameter" + }, + { + "$ref": "#/parameters/billingProfileIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Lots" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/providers/Microsoft.Consumption/lots": { + "get": { + "tags": [ + "Lots" + ], + "operationId": "Lots_ListByBillingAccount", + "description": "Lists all Azure credits and Microsoft Azure consumption commitments for a billing account or a billing profile. Microsoft Azure consumption commitments are only supported for the billing account scope.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "LotsListByBillingAccount": { + "$ref": "./examples/LotsListByBillingAccount.json" + }, + "LotsListByBillingAccountWithStatusFilter": { + "$ref": "./examples/LotsListByBillingAccountWithFilters.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/billingAccountIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$filter", + "description": "May be used to filter the lots by Status, Source etc. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value is separated by a colon (:).", + "in": "query", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Lots" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/providers/Microsoft.Consumption/credits/balanceSummary": { + "get": { + "tags": [ + "Credits" + ], + "operationId": "Credits_Get", + "description": "The credit summary by billingAccountId and billingProfileId.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "CreditSummaryByBillingProfile": { + "$ref": "./examples/CreditSummaryByBillingProfile.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/billingAccountIdParameter" + }, + { + "$ref": "#/parameters/billingProfileIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/CreditSummary" + } + }, + "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 + }, + "serviceName": { + "description": "The name of the service.", + "type": "string", + "readOnly": true + }, + "serviceTier": { + "description": "The service tier.", + "type": "string", + "readOnly": true + } + } + }, + "UsageDetail": { + "type": "object", + "discriminator": "kind", + "description": "An usage detail resource.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "kind": { + "type": "string", + "description": "Specifies the kind of usage details.", + "enum": [ + "legacy", + "modern" + ], + "x-ms-enum": { + "name": "UsageDetailsKind", + "modelAsString": true + } + } + }, + "required": [ + "kind" + ] + }, + "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 + } + } + }, + "LegacyUsageDetail": { + "description": "Legacy usage detail.", + "type": "object", + "x-ms-discriminator-value": "legacy", + "properties": { + "properties": { + "description": "Properties for legacy usage details", + "$ref": "#/definitions/LegacyUsageDetailProperties", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/UsageDetail" + } + ], + "required": [ + "properties" + ] + }, + "LegacyUsageDetailProperties": { + "description": "The properties of the legacy usage detail.", + "properties": { + "billingAccountId": { + "description": "Billing Account identifier.", + "type": "string", + "readOnly": true + }, + "billingAccountName": { + "description": "Billing Account Name.", + "type": "string", + "readOnly": true + }, + "billingPeriodStartDate": { + "description": "The billing period start date.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "billingPeriodEndDate": { + "description": "The billing period end date.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "billingProfileId": { + "description": "Billing Profile identifier.", + "type": "string", + "readOnly": true + }, + "billingProfileName": { + "description": "Billing Profile Name.", + "type": "string", + "readOnly": true + }, + "accountOwnerId": { + "description": "Account Owner Id.", + "type": "string", + "readOnly": true + }, + "accountName": { + "description": "Account Name.", + "type": "string", + "readOnly": true + }, + "subscriptionId": { + "description": "Subscription guid.", + "type": "string", + "readOnly": true + }, + "subscriptionName": { + "description": "Subscription name.", + "type": "string", + "readOnly": true + }, + "date": { + "description": "Date for the usage record.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "product": { + "description": "Product name for the consumed service or purchase. Not available for Marketplace.", + "type": "string", + "readOnly": true + }, + "partNumber": { + "description": "Part Number of the service used. Can be used to join with the price sheet. Not available for marketplace.", + "type": "string", + "readOnly": true + }, + "meterId": { + "description": "The meter id (GUID). Not available for marketplace. For reserved instance this represents the primary meter for which the reservation was purchased. For the actual VM Size for which the reservation is purchased see productOrderName.", + "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/MeterDetailsResponse", + "readOnly": true + }, + "quantity": { + "description": "The usage quantity.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "effectivePrice": { + "description": "Effective Price that's charged for the usage.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "cost": { + "description": "The amount of cost before tax.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "unitPrice": { + "description": "Unit Price is the price applicable to you. (your EA or other contract price).", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "billingCurrency": { + "description": "Billing Currency.", + "type": "string", + "readOnly": true + }, + "resourceLocation": { + "description": "Resource Location.", + "type": "string", + "readOnly": true + }, + "consumedService": { + "description": "Consumed service name. Name of the azure resource provider that emits the usage or was purchased. This value is not provided for marketplace usage.", + "type": "string", + "readOnly": true + }, + "resourceId": { + "description": "Unique identifier of the Azure Resource Manager usage detail resource.", + "type": "string", + "readOnly": true + }, + "resourceName": { + "description": "Resource Name.", + "type": "string", + "readOnly": true + }, + "serviceInfo1": { + "description": "Service-specific metadata.", + "type": "string", + "readOnly": true + }, + "serviceInfo2": { + "description": "Legacy field with optional service-specific metadata.", + "type": "string", + "readOnly": true + }, + "additionalInfo": { + "description": "Additional details of this usage item. By default this is not populated, unless it's specified in $expand. Use this field to get usage line item specific details such as the actual VM Size (ServiceType) or the ratio in which the reservation discount is applied.", + "type": "string", + "readOnly": true + }, + "invoiceSection": { + "description": "Invoice Section Name.", + "type": "string", + "readOnly": true + }, + "costCenter": { + "description": "The cost center of this department if it is a department and a cost center is provided.", + "type": "string", + "readOnly": true + }, + "resourceGroup": { + "description": "Resource Group Name.", + "type": "string", + "readOnly": true + }, + "reservationId": { + "description": "ARM resource id of the reservation. Only applies to records relevant to reservations.", + "type": "string", + "readOnly": true + }, + "reservationName": { + "description": "User provided display name of the reservation. Last known name for a particular day is populated in the daily data. Only applies to records relevant to reservations.", + "type": "string", + "readOnly": true + }, + "productOrderId": { + "description": "Product Order Id. For reservations this is the Reservation Order ID.", + "type": "string", + "readOnly": true + }, + "productOrderName": { + "description": "Product Order Name. For reservations this is the SKU that was purchased.", + "type": "string", + "readOnly": true + }, + "offerId": { + "description": "Offer Id. Ex: MS-AZR-0017P, MS-AZR-0148P.", + "type": "string", + "readOnly": true + }, + "isAzureCreditEligible": { + "description": "Is Azure Credit Eligible.", + "type": "boolean", + "readOnly": true + }, + "term": { + "description": "Term (in months). 1 month for monthly recurring purchase. 12 months for a 1 year reservation. 36 months for a 3 year reservation.", + "type": "string", + "readOnly": true + }, + "publisherName": { + "description": "Publisher Name.", + "type": "string", + "readOnly": true + }, + "publisherType": { + "description": "Publisher Type.", + "type": "string", + "readOnly": true + }, + "planName": { + "description": "Plan Name.", + "type": "string", + "readOnly": true + }, + "chargeType": { + "description": "Indicates a charge represents credits, usage, a Marketplace purchase, a reservation fee, or a refund.", + "type": "string", + "readOnly": true + }, + "frequency": { + "description": "Indicates how frequently this charge will occur. OneTime for purchases which only happen once, Monthly for fees which recur every month, and UsageBased for charges based on how much a service is used.", + "type": "string", + "readOnly": true + } + } + }, + "ModernUsageDetail": { + "description": "Modern usage detail.", + "type": "object", + "x-ms-discriminator-value": "modern", + "properties": { + "properties": { + "description": "Properties for modern usage details", + "$ref": "#/definitions/ModernUsageDetailProperties", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/UsageDetail" + } + ], + "required": [ + "properties" + ] + }, + "ModernUsageDetailProperties": { + "description": "The properties of the usage detail.", + "properties": { + "billingAccountId": { + "description": "Billing Account identifier.", + "type": "string", + "readOnly": true + }, + "billingAccountName": { + "description": "Name of the Billing Account.", + "type": "string", + "readOnly": true + }, + "billingPeriodStartDate": { + "description": "Billing Period Start Date as in the invoice.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "billingPeriodEndDate": { + "description": "Billing Period End Date as in the invoice.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "billingProfileId": { + "description": "Identifier for the billing profile that groups costs across invoices in the a singular billing currency across across the customers who have onboarded the Microsoft customer agreement and the customers in CSP who have made entitlement purchases like SaaS, Marketplace, RI, etc.", + "type": "string", + "readOnly": true + }, + "billingProfileName": { + "description": "Name of the billing profile that groups costs across invoices in the a singular billing currency across across the customers who have onboarded the Microsoft customer agreement and the customers in CSP who have made entitlement purchases like SaaS, Marketplace, RI, etc.", + "type": "string", + "readOnly": true + }, + "subscriptionGuid": { + "description": "Unique Microsoft generated identifier for the Azure Subscription.", + "type": "string", + "readOnly": true + }, + "subscriptionName": { + "description": "Name of the Azure Subscription.", + "type": "string", + "readOnly": true + }, + "date": { + "description": "Date for the usage record.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "product": { + "description": "Name of the product that has accrued charges by consumption or purchase as listed in the invoice. Not available for Marketplace.", + "type": "string", + "readOnly": true + }, + "meterId": { + "description": "The meter id (GUID). Not available for marketplace. For reserved instance this represents the primary meter for which the reservation was purchased. For the actual VM Size for which the reservation is purchased see productOrderName.", + "type": "string", + "format": "uuid", + "readOnly": true + }, + "meterName": { + "description": "Identifies the name of the meter against which consumption is measured.", + "type": "string", + "readOnly": true + }, + "meterRegion": { + "description": "Identifies the location of the datacenter for certain services that are priced based on datacenter location.", + "type": "string", + "readOnly": true + }, + "meterCategory": { + "description": "Identifies the top-level service for the usage.", + "type": "string", + "readOnly": true + }, + "meterSubCategory": { + "description": "Defines the type or sub-category of Azure service that can affect the rate.", + "type": "string", + "readOnly": true + }, + "serviceFamily": { + "description": "List the service family for the product purchased or charged (Example: Storage ; Compute).", + "type": "string", + "readOnly": true + }, + "quantity": { + "description": "Measure the quantity purchased or consumed.The amount of the meter used during the billing period.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "unitOfMeasure": { + "description": "Identifies the Unit that the service is charged in. For example, GB, hours, 10,000 s.", + "type": "string", + "readOnly": true + }, + "instanceName": { + "description": "Instance Name.", + "type": "string", + "readOnly": true + }, + "costInUSD": { + "description": "Estimated extendedCost or blended cost before tax in USD.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "unitPrice": { + "description": "Unit Price is the price applicable to you. (your EA or other contract price).", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "billingCurrencyCode": { + "description": "The currency defining the billed cost.", + "type": "string", + "readOnly": true + }, + "resourceLocation": { + "description": "Name of the resource location.", + "type": "string", + "readOnly": true + }, + "consumedService": { + "description": "Consumed service name. Name of the azure resource provider that emits the usage or was purchased. This value is not provided for marketplace usage.", + "type": "string", + "readOnly": true + }, + "serviceInfo1": { + "description": "Service-specific metadata.", + "type": "string", + "readOnly": true + }, + "serviceInfo2": { + "description": "Legacy field with optional service-specific metadata.", + "type": "string", + "readOnly": true + }, + "additionalInfo": { + "description": "Additional details of this usage item. Use this field to get usage line item specific details such as the actual VM Size (ServiceType) or the ratio in which the reservation discount is applied.", + "type": "string", + "readOnly": true + }, + "invoiceSectionId": { + "description": "Identifier of the project that is being charged in the invoice. Not applicable for Microsoft Customer Agreements onboarded by partners.", + "type": "string", + "readOnly": true + }, + "invoiceSectionName": { + "description": "Name of the project that is being charged in the invoice. Not applicable for Microsoft Customer Agreements onboarded by partners.", + "type": "string", + "readOnly": true + }, + "costCenter": { + "description": "The cost center of this department if it is a department and a cost center is provided.", + "type": "string", + "readOnly": true + }, + "resourceGroup": { + "description": "Name of the Azure resource group used for cohesive lifecycle management of resources.", + "type": "string", + "readOnly": true + }, + "reservationId": { + "description": "ARM resource id of the reservation. Only applies to records relevant to reservations.", + "type": "string", + "readOnly": true + }, + "reservationName": { + "description": "User provided display name of the reservation. Last known name for a particular day is populated in the daily data. Only applies to records relevant to reservations.", + "type": "string", + "readOnly": true + }, + "productOrderId": { + "description": "The identifier for the asset or Azure plan name that the subscription belongs to. For example: Azure Plan. For reservations this is the Reservation Order ID.", + "type": "string", + "readOnly": true + }, + "productOrderName": { + "description": "Product Order Name. For reservations this is the SKU that was purchased.", + "type": "string", + "readOnly": true + }, + "isAzureCreditEligible": { + "description": "Determines if the cost is eligible to be paid for using Azure credits.", + "type": "boolean", + "readOnly": true + }, + "term": { + "description": "Term (in months). Displays the term for the validity of the offer. For example. In case of reserved instances it displays 12 months for yearly term of reserved instance. For one time purchases or recurring purchases, the terms displays 1 month; This is not applicable for Azure consumption.", + "type": "string", + "readOnly": true + }, + "publisherName": { + "description": "Name of the publisher of the service including Microsoft or Third Party publishers.", + "type": "string", + "readOnly": true + }, + "publisherType": { + "description": "Type of publisher that identifies if the publisher is first party, third party reseller or third party agency.", + "type": "string", + "readOnly": true + }, + "chargeType": { + "description": "Indicates a charge represents credits, usage, a Marketplace purchase, a reservation fee, or a refund.", + "type": "string", + "readOnly": true + }, + "frequency": { + "description": "Indicates how frequently this charge will occur. OneTime for purchases which only happen once, Monthly for fees which recur every month, and UsageBased for charges based on how much a service is used.", + "type": "string", + "readOnly": true + }, + "costInBillingCurrency": { + "description": "ExtendedCost or blended cost before tax in billed currency.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "costInPricingCurrency": { + "description": "ExtendedCost or blended cost before tax in pricing currency to correlate with prices.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "exchangeRate": { + "description": "Exchange rate used in conversion from pricing currency to billing currency.", + "type": "string", + "readOnly": true + }, + "exchangeRateDate": { + "description": "Date on which exchange rate used in conversion from pricing currency to billing currency.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "invoiceId": { + "description": "Invoice ID as on the invoice where the specific transaction appears.", + "type": "string", + "readOnly": true + }, + "previousInvoiceId": { + "description": "Reference to an original invoice there is a refund (negative cost). This is populated only when there is a refund.", + "type": "string", + "readOnly": true + }, + "pricingCurrencyCode": { + "description": "Pricing Billing Currency.", + "type": "string", + "readOnly": true + }, + "productIdentifier": { + "description": "Identifier for the product that has accrued charges by consumption or purchase . This is the concatenated key of productId and SkuId in partner center.", + "type": "string", + "readOnly": true + }, + "resourceLocationNormalized": { + "description": "Resource Location Normalized.", + "type": "string", + "readOnly": true + }, + "servicePeriodStartDate": { + "description": "Start date for the rating period when the service usage was rated for charges. The prices for Azure services are determined for the rating period.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "servicePeriodEndDate": { + "description": "End date for the period when the service usage was rated for charges. The prices for Azure services are determined based on the rating period.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "customerTenantId": { + "description": "Identifier of the customer's AAD tenant.", + "type": "string", + "readOnly": true + }, + "customerName": { + "description": "Name of the customer's AAD tenant.", + "type": "string", + "readOnly": true + }, + "partnerTenantId": { + "description": "Identifier for the partner's AAD tenant.", + "type": "string", + "readOnly": true + }, + "partnerName": { + "description": "Name of the partner' AAD tenant.", + "type": "string", + "readOnly": true + }, + "resellerMpnId": { + "description": "MPNId for the reseller associated with the subscription.", + "type": "string", + "readOnly": true + }, + "resellerName": { + "description": "Reseller Name.", + "type": "string", + "readOnly": true + }, + "publisherId": { + "description": "Publisher Id.", + "type": "string", + "readOnly": true + }, + "marketPrice": { + "description": "Market Price that's charged for the usage.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "exchangeRatePricingToBilling": { + "description": "Exchange Rate from pricing currency to billing currency.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "paygCostInBillingCurrency": { + "description": "The amount of PayG cost before tax in billing currency.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "paygCostInUSD": { + "description": "The amount of PayG cost before tax in US Dollar currency.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "partnerEarnedCreditRate": { + "description": "Rate of discount applied if there is a partner earned credit (PEC) based on partner admin link access.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "partnerEarnedCreditApplied": { + "description": "Flag to indicate if partner earned credit has been applied or not.", + "type": "string", + "readOnly": true + }, + "payGPrice": { + "description": "Retail price for the resource.", + "type": "number", + "format": "decimal", + "readOnly": true + } + } + }, + "Marketplace": { + "description": "A 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 + }, + "additionalInfo": { + "description": "Additional information.", + "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 + }, + "isRecurringCharge": { + "description": "Flag indicating whether this is a recurring charge or not.", + "type": "boolean", + "readOnly": true + } + } + }, + "Balance": { + "description": "A balance resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/BalanceProperties", + "title": "Balance properties" + } + } + }, + "BalanceProperties": { + "description": "The properties of the balance.", + "type": "object", + "properties": { + "currency": { + "description": "The ISO currency in which the meter is charged, for example, USD.", + "type": "string", + "readOnly": true + }, + "beginningBalance": { + "description": "The beginning balance for the billing period.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "endingBalance": { + "description": "The ending balance for the billing period (for open periods this will be updated daily).", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "newPurchases": { + "description": "Total new purchase amount.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "adjustments": { + "description": "Total adjustment amount.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "utilized": { + "description": "Total Commitment usage.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "serviceOverage": { + "description": "Overage for Azure services.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "chargesBilledSeparately": { + "description": "Charges Billed separately.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "totalOverage": { + "description": "serviceOverage + chargesBilledSeparately.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "totalUsage": { + "description": "Azure service commitment + total Overage.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "azureMarketplaceServiceCharges": { + "description": "Total charges for Azure Marketplace.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "billingFrequency": { + "description": "The billing frequency.", + "type": "string", + "enum": [ + "Month", + "Quarter", + "Year" + ], + "x-ms-enum": { + "name": "BillingFrequency", + "modelAsString": true + } + }, + "priceHidden": { + "description": "Price is hidden or not.", + "type": "boolean", + "readOnly": true + }, + "newPurchasesDetails": { + "description": "List of new purchases.", + "type": "array", + "items": { + "type": "object", + "properties": { + "name": { + "description": "the name of new purchase.", + "type": "string", + "readOnly": true + }, + "value": { + "description": "the value of new purchase.", + "type": "number", + "format": "decimal", + "readOnly": true + } + } + }, + "readOnly": true + }, + "adjustmentDetails": { + "description": "List of Adjustments (Promo credit, SIE credit etc.).", + "type": "array", + "items": { + "type": "object", + "properties": { + "name": { + "description": "the name of new adjustment.", + "type": "string", + "readOnly": true + }, + "value": { + "description": "the value of new adjustment.", + "type": "number", + "format": "decimal", + "readOnly": true + } + } + }, + "readOnly": true + } + } + }, + "ReservationSummary": { + "description": "reservation summary resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ReservationSummaryProperties", + "title": "Reservation Summary properties" + } + } + }, + "ReservationSummariesListResult": { + "description": "Result of listing reservation summaries.", + "properties": { + "value": { + "description": "The list of reservation summaries.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ReservationSummary" + } + }, + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "ReservationSummaryProperties": { + "description": "The properties of the reservation summary.", + "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 additional info 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 + }, + "kind": { + "description": "The reservation kind.", + "type": "string", + "readOnly": true + }, + "purchasedQuantity": { + "description": "This is the purchased quantity for the reservationId.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "remainingQuantity": { + "description": "This is the remaining quantity for the reservationId.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "totalReservedQuantity": { + "description": "This is the total count of instances that are reserved for the reservationId.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "usedQuantity": { + "description": "This is the used quantity for the reservationId.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "utilizedPercentage": { + "description": "This is the utilized percentage for the reservation Id.", + "type": "number", + "format": "decimal", + "readOnly": true + } + } + }, + "ReservationDetail": { + "description": "reservation detail resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ReservationDetailProperties", + "title": "Reservation Detail properties" + } + } + }, + "ReservationDetailsListResult": { + "description": "Result of listing reservation details.", + "properties": { + "value": { + "description": "The list of reservation details.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ReservationDetail" + } + }, + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "ReservationDetailProperties": { + "description": "The properties of the reservation detail.", + "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 + }, + "instanceFlexibilityRatio": { + "description": "The instance Flexibility Ratio.", + "type": "string", + "readOnly": true + }, + "instanceFlexibilityGroup": { + "description": "The instance Flexibility Group.", + "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 additional info 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 + }, + "kind": { + "description": "The reservation kind.", + "type": "string", + "readOnly": true + } + } + }, + "ReservationRecommendationDetailsModel": { + "description": "Reservation recommendation details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "location": { + "type": "string", + "description": "Resource Location." + }, + "sku": { + "type": "string", + "description": "Resource sku" + }, + "etag": { + "type": "string", + "description": "Resource etag." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ReservationRecommendationDetailsProperties", + "title": "Reservation Recommendation details properties" + } + } + }, + "ReservationRecommendationDetailsProperties": { + "description": "The properties of the reservation recommendation.", + "properties": { + "currency": { + "description": "An ISO 4217 currency code identifier for the costs and savings ", + "type": "string", + "readOnly": true + }, + "resource": { + "description": "Resource specific properties.", + "$ref": "#/definitions/ReservationRecommendationDetailsResourceProperties", + "readOnly": true + }, + "resourceGroup": { + "description": "Resource Group.", + "type": "string", + "readOnly": true + }, + "savings": { + "description": "Savings information for the recommendation.", + "$ref": "#/definitions/ReservationRecommendationDetailsSavingsProperties", + "readOnly": true + }, + "scope": { + "description": "Scope of the reservation, ex: Single or Shared.", + "type": "string", + "readOnly": true + }, + "usage": { + "description": "Historical usage details used to calculate the estimated savings.", + "$ref": "#/definitions/ReservationRecommendationDetailsUsageProperties", + "readOnly": true + } + } + }, + "ReservationRecommendationDetailsCalculatedSavingsProperties": { + "description": "Details of estimated savings.", + "properties": { + "onDemandCost": { + "description": "The cost without reservation.", + "type": "number", + "readOnly": true + }, + "overageCost": { + "description": "The difference between total reservation cost and reservation cost.", + "type": "number", + "readOnly": true + }, + "quantity": { + "description": "The quantity for calculated savings.", + "type": "number", + "readOnly": true + }, + "reservationCost": { + "description": "The exact cost of the estimated usage using reservation.", + "type": "number", + "readOnly": true + }, + "totalReservationCost": { + "description": "The cost of the suggested quantity.", + "type": "number", + "readOnly": true + }, + "reservedUnitCount": { + "description": "The number of reserved units used to calculate savings. Always 1 for virtual machines.", + "type": "number" + }, + "savings": { + "description": "The amount saved by purchasing the recommended quantity of reservation.", + "type": "number", + "readOnly": true + } + } + }, + "ReservationRecommendationDetailsResourceProperties": { + "description": "Details of the resource.", + "properties": { + "appliedScopes": { + "description": "List of subscriptions for which the reservation is applied.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "onDemandRate": { + "description": "On demand rate of the resource.", + "type": "number", + "readOnly": true + }, + "product": { + "description": "Azure product ex: Standard_E8s_v3 etc.", + "type": "string", + "readOnly": true + }, + "region": { + "description": "Azure resource region ex:EastUS, WestUS etc.", + "type": "string", + "readOnly": true + }, + "reservationRate": { + "description": "Reservation rate of the resource.", + "type": "number", + "readOnly": true + }, + "resourceType": { + "description": "The azure resource type.", + "type": "string", + "readOnly": true + } + } + }, + "ReservationRecommendationDetailsSavingsProperties": { + "description": "Details of the estimated savings.", + "properties": { + "calculatedSavings": { + "description": "List of calculated savings.", + "type": "array", + "items": { + "$ref": "#/definitions/ReservationRecommendationDetailsCalculatedSavingsProperties" + } + }, + "lookBackPeriod": { + "description": "Number of days of usage to look back used for computing the recommendation.", + "type": "integer", + "format": "int32", + "readOnly": true + }, + "recommendedQuantity": { + "description": "Number of recommended units of the resource.", + "type": "number", + "readOnly": true + }, + "reservationOrderTerm": { + "description": "Term period of the reservation, ex: P1Y or P3Y.", + "type": "string", + "readOnly": true + }, + "savingsType": { + "description": "Type of savings, ex: instance.", + "type": "string", + "readOnly": true + }, + "unitOfMeasure": { + "description": "Measurement unit ex: hour etc.", + "type": "string", + "readOnly": true + } + } + }, + "ReservationRecommendationDetailsUsageProperties": { + "description": "Details about historical usage data that has been used for computing the recommendation.", + "properties": { + "firstConsumptionDate": { + "description": "The first usage date used for looking back for computing the recommendation.", + "type": "string", + "readOnly": true + }, + "lastConsumptionDate": { + "description": "The last usage date used for looking back for computing the recommendation.", + "type": "string", + "readOnly": true + }, + "lookBackUnitType": { + "description": "What the usage data values represent ex: virtual machine instance.", + "type": "string", + "readOnly": true + }, + "usageData": { + "description": "The breakdown of historical resource usage. The values are in the order of usage between the firstConsumptionDate and the lastConsumptionDate.", + "type": "array", + "items": { + "type": "number" + }, + "readOnly": true + }, + "usageGrain": { + "description": "The grain of the values represented in the usage data ex: hourly.", + "type": "string", + "readOnly": true + } + } + }, + "ReservationRecommendationsListResult": { + "description": "Result of listing reservation recommendations.", + "properties": { + "value": { + "description": "The list of reservation recommendations.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ReservationRecommendation" + } + }, + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + }, + "previousLink": { + "description": "The link (url) to the previous page of results.", + "type": "string", + "readOnly": true + } + } + }, + "ReservationRecommendation": { + "description": "A reservation recommendation resource.", + "type": "object", + "discriminator": "kind", + "allOf": [ + { + "$ref": "#/definitions/Resource" + }, + { + "$ref": "#/definitions/ResourceAttributes" + } + ], + "properties": { + "kind": { + "type": "string", + "description": "Specifies the kind of reservation recommendation.", + "enum": [ + "legacy", + "modern" + ], + "x-ms-enum": { + "name": "ReservationRecommendationKind", + "modelAsString": true + } + } + }, + "required": [ + "kind" + ] + }, + "LegacyReservationRecommendation": { + "description": "Legacy reservation recommendation.", + "type": "object", + "x-ms-discriminator-value": "legacy", + "properties": { + "properties": { + "description": "Properties for legacy reservation recommendation", + "$ref": "#/definitions/LegacyReservationRecommendationProperties", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/ReservationRecommendation" + } + ], + "required": [ + "properties" + ] + }, + "LegacyReservationRecommendationProperties": { + "description": "The properties of the reservation recommendation.", + "properties": { + "lookBackPeriod": { + "description": "The number of days of usage to look back for recommendation.", + "type": "string", + "readOnly": true + }, + "instanceFlexibilityRatio": { + "description": "The instance Flexibility Ratio.", + "type": "number", + "readOnly": true + }, + "instanceFlexibilityGroup": { + "description": "The instance Flexibility Group.", + "type": "string", + "readOnly": true + }, + "normalizedSize": { + "description": "The normalized Size.", + "type": "string", + "readOnly": true + }, + "recommendedQuantityNormalized": { + "description": "The recommended Quantity Normalized.", + "type": "number", + "readOnly": true + }, + "meterId": { + "description": "The meter id (GUID)", + "type": "string", + "format": "uuid", + "readOnly": true + }, + "resourceType": { + "description": "The azure resource type.", + "type": "string", + "readOnly": true + }, + "term": { + "description": "RI recommendations in one or three year terms.", + "type": "string", + "readOnly": true + }, + "costWithNoReservedInstances": { + "description": "The total amount of cost without reserved instances.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "recommendedQuantity": { + "description": "Recommended quality for reserved instances.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "totalCostWithReservedInstances": { + "description": "The total amount of cost with reserved instances.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "netSavings": { + "description": "Total estimated savings with reserved instances.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "firstUsageDate": { + "description": "The usage date for looking back.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "scope": { + "description": "Shared or single recommendation.", + "type": "string", + "readOnly": true + }, + "skuProperties": { + "description": "List of sku properties", + "type": "array", + "items": { + "$ref": "#/definitions/SkuProperty" + }, + "readOnly": true + } + } + }, + "SkuProperty": { + "description": "The Sku property", + "properties": { + "name": { + "description": "The name of sku property.", + "type": "string", + "readOnly": true + }, + "value": { + "description": "The value of sku property.", + "type": "string", + "readOnly": true + } + } + }, + "ModernReservationRecommendation": { + "description": "Modern reservation recommendation.", + "type": "object", + "x-ms-discriminator-value": "modern", + "properties": { + "properties": { + "description": "Properties for modern reservation recommendation", + "$ref": "#/definitions/ModernReservationRecommendationProperties", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/ReservationRecommendation" + } + ], + "required": [ + "properties" + ] + }, + "ModernReservationRecommendationProperties": { + "description": "The properties of the reservation recommendation.", + "properties": { + "location": { + "type": "string", + "description": "Resource Location.", + "readOnly": true + }, + "lookBackPeriod": { + "description": "The number of days of usage to look back for recommendation.", + "type": "integer", + "format": "int32", + "readOnly": true + }, + "instanceFlexibilityRatio": { + "description": "The instance Flexibility Ratio.", + "type": "number", + "readOnly": true + }, + "instanceFlexibilityGroup": { + "description": "The instance Flexibility Group.", + "type": "string", + "readOnly": true + }, + "normalizedSize": { + "description": "The normalized Size.", + "type": "string", + "readOnly": true + }, + "recommendedQuantityNormalized": { + "description": "The recommended Quantity Normalized.", + "type": "number", + "readOnly": true + }, + "meterId": { + "description": "The meter id (GUID)", + "type": "string", + "format": "uuid", + "readOnly": true + }, + "term": { + "description": "RI recommendations in one or three year terms.", + "type": "string", + "readOnly": true + }, + "costWithNoReservedInstances": { + "description": "The total amount of cost without reserved instances.", + "$ref": "#/definitions/amount", + "readOnly": true + }, + "recommendedQuantity": { + "description": "Recommended quality for reserved instances.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "totalCostWithReservedInstances": { + "description": "The total amount of cost with reserved instances.", + "$ref": "#/definitions/amount", + "readOnly": true + }, + "netSavings": { + "description": "Total estimated savings with reserved instances.", + "$ref": "#/definitions/amount", + "readOnly": true + }, + "firstUsageDate": { + "description": "The usage date for looking back.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "scope": { + "description": "Shared or single recommendation.", + "type": "string", + "readOnly": true + }, + "skuProperties": { + "description": "List of sku properties", + "type": "array", + "items": { + "$ref": "#/definitions/SkuProperty" + }, + "readOnly": true + }, + "skuName": { + "description": "This is the ARM Sku name.", + "type": "string", + "readOnly": true + } + } + }, + "ModernReservationTransactionProperties": { + "description": "The properties of a modern reservation transaction.", + "properties": { + "amount": { + "description": "The charge of the transaction.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "armSkuName": { + "description": "This is the ARM Sku name. It can be used to join with the serviceType field in additional info in usage records.", + "type": "string", + "readOnly": true + }, + "billingFrequency": { + "description": "The billing frequency, which can be either one-time or recurring.", + "type": "string", + "readOnly": true + }, + "billingProfileId": { + "description": "Billing profile Id.", + "type": "string", + "readOnly": true + }, + "billingProfileName": { + "description": "Billing profile name.", + "type": "string", + "readOnly": true + }, + "currency": { + "description": "The ISO currency in which the transaction is charged, for example, USD.", + "type": "string", + "readOnly": true + }, + "description": { + "description": "The description of the transaction.", + "type": "string", + "readOnly": true + }, + "eventDate": { + "description": "The date of the transaction", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "eventType": { + "description": "The type of the transaction (Purchase, Cancel, etc.)", + "type": "string", + "readOnly": true + }, + "invoice": { + "description": "Invoice Number", + "type": "string", + "readOnly": true + }, + "invoiceId": { + "description": "Invoice Id as on the invoice where the specific transaction appears.", + "type": "string", + "readOnly": true + }, + "invoiceSectionId": { + "description": "Invoice Section Id", + "type": "string", + "readOnly": true + }, + "invoiceSectionName": { + "description": "Invoice Section Name.", + "type": "string", + "readOnly": true + }, + "purchasingSubscriptionGuid": { + "description": "The subscription guid that makes the transaction.", + "type": "string", + "format": "uuid", + "readOnly": true + }, + "purchasingSubscriptionName": { + "description": "The subscription name that makes the transaction.", + "type": "string", + "readOnly": true + }, + "quantity": { + "description": "The quantity of the transaction.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "region": { + "description": "The region of the transaction.", + "type": "string", + "readOnly": true + }, + "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 + }, + "reservationOrderName": { + "description": "The name of the reservation order.", + "type": "string", + "readOnly": true + }, + "term": { + "description": "This is the term of the transaction.", + "type": "string", + "readOnly": true + } + } + }, + "ModernReservationTransaction": { + "description": "Modern Reservation transaction resource.", + "type": "object", + "x-ms-discriminator-value": "Modern", + "allOf": [ + { + "$ref": "#/definitions/ReservationTransactionResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ModernReservationTransactionProperties", + "title": "Reservation Transaction properties" + } + }, + "required": [ + "properties" + ] + }, + "LegacyReservationTransaction": { + "description": "Legacy Reservation transaction resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ReservationTransaction" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/LegacyReservationTransactionProperties", + "title": "Reservation Transaction properties" + } + }, + "required": [ + "properties" + ] + }, + "LegacyReservationTransactionProperties": { + "description": "The properties of a legacy reservation transaction.", + "properties": { + "eventDate": { + "description": "The date of the transaction", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "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 + }, + "description": { + "description": "The description of the transaction.", + "type": "string", + "readOnly": true + }, + "eventType": { + "description": "The type of the transaction (Purchase, Cancel, etc.)", + "type": "string", + "readOnly": true + }, + "quantity": { + "description": "The quantity of the transaction.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "amount": { + "description": "The charge of the transaction.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "currency": { + "description": "The ISO currency in which the transaction is charged, for example, USD.", + "type": "string", + "readOnly": true + }, + "reservationOrderName": { + "description": "The name of the reservation order.", + "type": "string", + "readOnly": true + }, + "purchasingEnrollment": { + "description": "The purchasing enrollment.", + "type": "string", + "readOnly": true + }, + "purchasingSubscriptionGuid": { + "description": "The subscription guid that makes the transaction.", + "type": "string", + "format": "uuid", + "readOnly": true + }, + "purchasingSubscriptionName": { + "description": "The subscription name that makes the transaction.", + "type": "string", + "readOnly": true + }, + "armSkuName": { + "description": "This is the ARM Sku name. It can be used to join with the serviceType field in additional info in usage records.", + "type": "string", + "readOnly": true + }, + "term": { + "description": "This is the term of the transaction.", + "type": "string", + "readOnly": true + }, + "region": { + "description": "The region of the transaction.", + "type": "string", + "readOnly": true + }, + "accountName": { + "description": "The name of the account that makes the transaction.", + "type": "string", + "readOnly": true + }, + "accountOwnerEmail": { + "description": "The email of the account owner that makes the transaction.", + "type": "string", + "readOnly": true + }, + "departmentName": { + "description": "The department name.", + "type": "string", + "readOnly": true + }, + "costCenter": { + "description": "The cost center of this department if it is a department and a cost center is provided.", + "type": "string", + "readOnly": true + }, + "currentEnrollment": { + "description": "The current enrollment.", + "type": "string", + "readOnly": true + }, + "billingFrequency": { + "description": "The billing frequency, which can be either one-time or recurring.", + "type": "string", + "readOnly": true + } + } + }, + "ReservationTransaction": { + "description": "Reservation transaction resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ReservationTransactionResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/LegacyReservationTransactionProperties", + "title": "Reservation Transaction properties" + } + } + }, + "ReservationTransactionsListResult": { + "description": "Result of listing reservation recommendations.", + "properties": { + "value": { + "description": "The list of reservation recommendations.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ReservationTransaction" + } + }, + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "ModernReservationTransactionsListResult": { + "description": "Result of listing reservation recommendations.", + "properties": { + "value": { + "description": "The list of reservation recommendations.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ModernReservationTransaction" + } + }, + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "TagsResult": { + "description": "A resource listing all tags.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/TagProperties", + "title": "Tag properties" + } + } + }, + "TagProperties": { + "description": "The properties of the tag.", + "properties": { + "tags": { + "description": "A list of Tag.", + "type": "array", + "items": { + "$ref": "#/definitions/Tag" + } + }, + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + }, + "previousLink": { + "description": "The link (url) to the previous page of results.", + "type": "string", + "readOnly": true + } + } + }, + "Tag": { + "description": "The tag resource.", + "properties": { + "key": { + "description": "Tag key.", + "type": "string" + }, + "value": { + "description": "Tag values.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "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" + ], + "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. BillingMonth, BillingQuarter, and BillingAnnual are only supported by WD customers", + "type": "string", + "enum": [ + "Monthly", + "Quarterly", + "Annually", + "BillingMonth", + "BillingQuarter", + "BillingAnnual" + ], + "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 twelve months. Past start date should be selected within the timegrain period. There are no restrictions on the end date.", + "$ref": "#/definitions/BudgetTimePeriod" + }, + "filter": { + "description": "May be used to filter budgets by user-specified dimensions and/or tags.", + "type": "object", + "$ref": "#/definitions/BudgetFilter" + }, + "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 + }, + "forecastSpend": { + "description": "The forecasted cost which is being tracked for a budget.", + "$ref": "#/definitions/ForecastSpend", + "readOnly": true + } + }, + "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" + ] + }, + "BudgetFilter": { + "description": "May be used to filter budgets by resource group, resource, or meter.", + "properties": { + "and": { + "description": "The logical \"AND\" expression. Must have at least 2 items.", + "type": "array", + "items": { + "$ref": "#/definitions/BudgetFilterProperties" + }, + "minItems": 0 + }, + "not": { + "description": "The logical \"NOT\" expression.", + "$ref": "#/definitions/BudgetFilterProperties" + }, + "dimensions": { + "description": "Has comparison expression for a dimension", + "$ref": "#/definitions/BudgetComparisonExpression" + }, + "tags": { + "description": "Has comparison expression for a tag", + "$ref": "#/definitions/BudgetComparisonExpression" + } + } + }, + "BudgetFilterProperties": { + "description": "The Dimensions or Tags to filter a budget by.", + "properties": { + "dimensions": { + "description": "Has comparison expression for a dimension", + "$ref": "#/definitions/BudgetComparisonExpression" + }, + "tags": { + "description": "Has comparison expression for a tag", + "$ref": "#/definitions/BudgetComparisonExpression" + } + } + }, + "BudgetComparisonExpression": { + "description": "The comparison expression to be used in the budgets.", + "properties": { + "name": { + "description": "The name of the column to use in comparison.", + "type": "string" + }, + "operator": { + "description": "The operator to use for comparison.", + "type": "string", + "enum": [ + "In" + ], + "x-ms-enum": { + "name": "BudgetOperatorType", + "modelAsString": true + } + }, + "values": { + "description": "Array of values to use for comparison", + "type": "array", + "items": { + "type": "string" + }, + "minItems": 0 + } + }, + "required": [ + "name", + "operator", + "values" + ] + }, + "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 + } + } + }, + "ForecastSpend": { + "description": "The forecasted cost which is being tracked for a budget.", + "properties": { + "amount": { + "description": "The forecasted cost for the total time period which is being tracked by the budget. This value is only provided if the budget contains a forecast alert type.", + "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. Must have at least one contact email or contact group specified at the Subscription or Resource Group scopes. All other scopes must have at least one contact email specified.", + "type": "array", + "items": { + "type": "string" + }, + "minItems": 0, + "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. Must be provided as a fully qualified Azure resource id. Only supported at Subscription or Resource Group scopes.", + "type": "array", + "items": { + "type": "string" + }, + "minItems": 0, + "maxItems": 50 + }, + "thresholdType": { + "description": "The type of threshold", + "type": "string", + "enum": [ + "Actual" + ], + "x-ms-enum": { + "name": "ThresholdType", + "modelAsString": true + }, + "default": "Actual" + } + }, + "required": [ + "enabled", + "operator", + "threshold", + "contactEmails" + ] + }, + "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 + }, + "download": { + "description": "Pricesheet download details.", + "$ref": "#/definitions/MeterDetails", + "readOnly": true + } + } + }, + "DownloadProperties": { + "description": "The properties of the price sheet download.", + "properties": { + "downloadUrl": { + "description": "The link (url) to download the pricesheet.", + "type": "string", + "readOnly": true + }, + "validTill": { + "description": "Download link validity.", + "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 + }, + "offerId": { + "description": "Offer Id", + "type": "string", + "readOnly": true + } + } + }, + "Forecast": { + "description": "A forecast resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ForecastProperties", + "title": "Forecast properties" + } + } + }, + "ForecastsListResult": { + "description": "Result of listing forecasts. It contains a list of available forecasts.", + "type": "object", + "properties": { + "value": { + "description": "The list of forecasts.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Forecast" + } + } + } + }, + "ForecastProperties": { + "description": "The properties of the forecast charge.", + "type": "object", + "properties": { + "usageDate": { + "description": "The usage date of the forecast.", + "type": "string", + "readOnly": true + }, + "grain": { + "description": "The granularity of forecast. Please note that Yearly is not currently supported in this API. The API will provide responses in the Monthly grain if Yearly is selected. To get yearly grain data, please use our newer Forecast API.", + "type": "string", + "enum": [ + "Daily", + "Monthly", + "Yearly" + ], + "x-ms-enum": { + "name": "Grain", + "modelAsString": true + } + }, + "charge": { + "description": "The amount of charge", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "currency": { + "description": "The ISO currency in which the meter is charged, for example, USD.", + "type": "string", + "readOnly": true + }, + "chargeType": { + "description": "The type of the charge. Could be actual or forecast", + "type": "string", + "enum": [ + "Actual", + "Forecast" + ], + "x-ms-enum": { + "name": "ChargeType", + "modelAsString": true + } + }, + "confidenceLevels": { + "description": "The details about the forecast confidence levels. This is populated only when chargeType is Forecast.", + "type": "array", + "items": { + "type": "object", + "properties": { + "percentage": { + "description": "The percentage level of the confidence", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "bound": { + "description": "The boundary of the percentage, values could be 'Upper' or 'Lower'", + "type": "string", + "enum": [ + "Upper", + "Lower" + ], + "x-ms-enum": { + "name": "Bound", + "modelAsString": true + } + }, + "value": { + "description": "The amount of forecast within the percentage level", + "type": "number", + "format": "decimal", + "readOnly": true + } + } + }, + "readOnly": true + } + } + }, + "ManagementGroupAggregatedCostResult": { + "description": "A management group aggregated cost resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ManagementGroupAggregatedCostProperties", + "title": "Management Group Aggregated Cost properties" + } + } + }, + "ManagementGroupAggregatedCostProperties": { + "description": "The properties of the Management Group Aggregated Cost.", + "type": "object", + "properties": { + "billingPeriodId": { + "description": "The id of the billing period resource that the aggregated cost belongs to.", + "type": "string", + "readOnly": true + }, + "usageStart": { + "description": "The start of the date time range covered by aggregated cost.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "usageEnd": { + "description": "The end of the date time range covered by the aggregated cost.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "azureCharges": { + "description": "Azure Charges.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "marketplaceCharges": { + "description": "Marketplace Charges.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "chargesBilledSeparately": { + "description": "Charges Billed Separately.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "currency": { + "description": "The ISO currency in which the meter is charged, for example, USD.", + "type": "string", + "readOnly": true + }, + "children": { + "description": "Children of a management group", + "type": "array", + "items": { + "$ref": "#/definitions/ManagementGroupAggregatedCostResult" + } + }, + "includedSubscriptions": { + "description": "List of subscription Guids included in the calculation of aggregated cost", + "type": "array", + "items": { + "type": "string" + } + }, + "excludedSubscriptions": { + "description": "List of subscription Guids excluded from the calculation of aggregated cost", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "ChargesListResult": { + "description": "Result of listing charge summary.", + "properties": { + "value": { + "description": "The list of charge summary", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ChargeSummary" + } + } + } + }, + "ChargeSummary": { + "description": "A charge summary resource.", + "type": "object", + "discriminator": "kind", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "kind": { + "type": "string", + "description": "Specifies the kind of charge summary.", + "enum": [ + "legacy", + "modern" + ], + "x-ms-enum": { + "name": "ChargeSummaryKind", + "modelAsString": true + } + } + }, + "required": [ + "kind" + ] + }, + "LegacyChargeSummary": { + "description": "Legacy charge summary.", + "type": "object", + "x-ms-discriminator-value": "legacy", + "properties": { + "properties": { + "description": "Properties for legacy charge summary", + "$ref": "#/definitions/LegacyChargeSummaryProperties", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/ChargeSummary" + } + ], + "required": [ + "properties" + ] + }, + "LegacyChargeSummaryProperties": { + "description": "The properties of legacy charge summary.", + "type": "object", + "properties": { + "billingPeriodId": { + "description": "The id of the billing period resource that the charge belongs to.", + "type": "string", + "readOnly": true + }, + "usageStart": { + "description": "Usage start date.", + "type": "string", + "readOnly": true + }, + "usageEnd": { + "description": "Usage end date.", + "type": "string", + "readOnly": true + }, + "azureCharges": { + "description": "Azure Charges.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "chargesBilledSeparately": { + "description": "Charges Billed separately.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "marketplaceCharges": { + "description": "Marketplace Charges.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "currency": { + "description": "Currency Code", + "type": "string", + "readOnly": true + } + } + }, + "ModernChargeSummary": { + "description": "Modern charge summary.", + "type": "object", + "x-ms-discriminator-value": "modern", + "properties": { + "properties": { + "description": "Properties for modern charge summary", + "$ref": "#/definitions/ModernChargeSummaryProperties", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/ChargeSummary" + } + ], + "required": [ + "properties" + ] + }, + "ModernChargeSummaryProperties": { + "description": "The properties of modern charge summary.", + "type": "object", + "properties": { + "billingPeriodId": { + "description": "The id of the billing period resource that the charge belongs to.", + "type": "string", + "readOnly": true + }, + "usageStart": { + "description": "Usage start date.", + "type": "string", + "readOnly": true + }, + "usageEnd": { + "description": "Usage end date.", + "type": "string", + "readOnly": true + }, + "azureCharges": { + "description": "Azure Charges.", + "readOnly": true, + "$ref": "#/definitions/amount" + }, + "chargesBilledSeparately": { + "description": "Charges Billed separately.", + "readOnly": true, + "$ref": "#/definitions/amount" + }, + "marketplaceCharges": { + "description": "Marketplace Charges.", + "readOnly": true, + "$ref": "#/definitions/amount" + }, + "billingAccountId": { + "description": "Billing Account Id", + "type": "string", + "readOnly": true + }, + "billingProfileId": { + "description": "Billing Profile Id", + "type": "string", + "readOnly": true + }, + "invoiceSectionId": { + "description": "Invoice Section Id", + "type": "string", + "readOnly": true + }, + "customerId": { + "description": "Customer Id", + "type": "string", + "readOnly": true + }, + "isInvoiced": { + "description": "Is charge Invoiced", + "type": "boolean", + "readOnly": true + } + } + }, + "MeterDetailsResponse": { + "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 + }, + "unitOfMeasure": { + "description": "The unit in which the meter consumption is charged, for example, 'Hours', 'GB', etc.", + "type": "string", + "readOnly": true + }, + "serviceFamily": { + "description": "The service family.", + "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 + } + } + }, + "HighCasedErrorDetails": { + "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 + } + } + }, + "HighCasedErrorResponse": { + "description": "Error response indicates that the service is not able to process the incoming request. The reason is provided in the error message. \n\nSome Error responses: \n\n * 429 TooManyRequests - Request is throttled. Retry after waiting for the time specified in the \"x-ms-ratelimit-microsoft.consumption-retry-after\" header. \n\n * 503 ServiceUnavailable - Service is temporarily unavailable. Retry after waiting for the time specified in the \"Retry-After\" header.", + "type": "object", + "properties": { + "error": { + "description": "The details of the error.", + "$ref": "#/definitions/HighCasedErrorDetails" + } + } + }, + "ErrorResponse": { + "description": "Error response indicates that the service is not able to process the incoming request. The reason is provided in the error message. \n\nSome Error responses: \n\n * 429 TooManyRequests - Request is throttled. Retry after waiting for the time specified in the \"x-ms-ratelimit-microsoft.consumption-retry-after\" header. \n\n * 503 ServiceUnavailable - Service is temporarily unavailable. Retry after waiting for the time specified in the \"Retry-After\" header.", + "type": "object", + "properties": { + "error": { + "description": "The details of the error.", + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "Operation": { + "description": "A Consumption REST API operation.", + "type": "object", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Operation Id." + }, + "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 + }, + "description": { + "description": "Description of the operation.", + "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 + } + } + }, + "Events": { + "description": "Result of listing event summary.", + "properties": { + "value": { + "description": "The list of event summary.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/EventSummary" + } + }, + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "EventSummary": { + "description": "An event summary resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/EventProperties", + "title": "Event summary properties" + } + } + }, + "EventProperties": { + "description": "The event properties.", + "properties": { + "transactionDate": { + "description": "The date of the event.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "description": { + "description": "The description of the event.", + "type": "string", + "readOnly": true + }, + "newCredit": { + "description": "The amount of new credit or commitment for NewCredit or SettleCharges event.", + "readOnly": true, + "$ref": "#/definitions/amount" + }, + "adjustments": { + "description": "The amount of balance adjustment. The property is not available for ConsumptionCommitment lots.", + "readOnly": true, + "$ref": "#/definitions/amount" + }, + "creditExpired": { + "description": "The amount of expired credit or commitment for NewCredit or SettleCharges event.", + "readOnly": true, + "$ref": "#/definitions/amount" + }, + "charges": { + "description": "The amount of charges for events of type SettleCharges and PendingEligibleCharges. ", + "readOnly": true, + "$ref": "#/definitions/amount" + }, + "closedBalance": { + "description": "The balance after the event. ", + "readOnly": true, + "$ref": "#/definitions/amount" + }, + "eventType": { + "description": "Identifies the type of the event.", + "type": "string", + "enum": [ + "SettledCharges", + "PendingCharges", + "PendingAdjustments", + "PendingNewCredit", + "PendingExpiredCredit", + "UnKnown", + "NewCredit" + ], + "x-ms-enum": { + "name": "EventType", + "modelAsString": true + } + }, + "invoiceNumber": { + "description": "The number which uniquely identifies the invoice on which the event was billed. This will be empty for unbilled events.", + "type": "string", + "readOnly": true + }, + "billingProfileId": { + "description": "The ID that uniquely identifies the billing profile for which the event happened. The property is only available for billing account of type MicrosoftCustomerAgreement. ", + "type": "string", + "readOnly": true + }, + "billingProfileDisplayName": { + "description": "The display name of the billing profile for which the event happened. The property is only available for billing account of type MicrosoftCustomerAgreement.", + "type": "string", + "readOnly": true + }, + "lotId": { + "description": "The ID that uniquely identifies the lot for which the event happened.", + "type": "string", + "readOnly": true + }, + "lotSource": { + "description": "Identifies the source of the lot for which the event happened. ", + "type": "string", + "readOnly": true + }, + "canceledCredit": { + "description": "Amount of canceled credit.", + "readOnly": true, + "$ref": "#/definitions/amount" + }, + "creditCurrency": { + "description": "The credit currency of the event.", + "type": "string", + "readOnly": true + }, + "billingCurrency": { + "description": "The billing currency of the event.", + "type": "string", + "readOnly": true + }, + "reseller": { + "description": "The reseller of the event.", + "readOnly": true, + "$ref": "#/definitions/Reseller" + }, + "creditExpiredInBillingCurrency": { + "description": "The amount of expired credit or commitment for NewCredit or SettleCharges event in billing currency.", + "readOnly": true, + "$ref": "#/definitions/AmountWithExchangeRate" + }, + "newCreditInBillingCurrency": { + "description": "The amount of new credit or commitment for NewCredit or SettleCharges event in billing currency.", + "readOnly": true, + "$ref": "#/definitions/AmountWithExchangeRate" + }, + "adjustmentsInBillingCurrency": { + "description": "The amount of balance adjustment in billing currency.", + "readOnly": true, + "$ref": "#/definitions/AmountWithExchangeRate" + }, + "chargesInBillingCurrency": { + "description": "The amount of charges for events of type SettleCharges and PendingEligibleCharges in billing currency.", + "readOnly": true, + "$ref": "#/definitions/AmountWithExchangeRate" + }, + "closedBalanceInBillingCurrency": { + "description": "The balance in billing currency after the event.", + "readOnly": true, + "$ref": "#/definitions/AmountWithExchangeRate" + } + } + }, + "Lots": { + "description": "Result of listing lot summary.", + "properties": { + "value": { + "description": "The list of lot summary.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/LotSummary" + } + }, + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "LotSummary": { + "description": "A lot summary resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/LotProperties", + "title": "Lot summary properties" + } + } + }, + "LotProperties": { + "description": "The lot properties.", + "properties": { + "originalAmount": { + "description": "The original amount of a lot.", + "readOnly": true, + "$ref": "#/definitions/amount" + }, + "closedBalance": { + "description": "The balance as of the last invoice.", + "readOnly": true, + "$ref": "#/definitions/amount" + }, + "source": { + "description": "The source of the lot.", + "type": "string", + "enum": [ + "PurchasedCredit", + "PromotionalCredit", + "ConsumptionCommitment" + ], + "x-ms-enum": { + "name": "LotSource", + "modelAsString": true + }, + "readOnly": true + }, + "startDate": { + "description": "The date when the lot became effective.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "expirationDate": { + "description": "The expiration date of a lot.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "poNumber": { + "description": "The po number of the invoice on which the lot was added. This property is not available for ConsumptionCommitment lots.", + "type": "string", + "readOnly": true + }, + "purchaseDate": { + "description": "The date when the lot was added.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "status": { + "description": "The status of the lot.", + "type": "string", + "enum": [ + "None", + "Active", + "Inactive", + "Expired", + "Complete", + "Canceled" + ], + "readOnly": true, + "x-ms-enum": { + "name": "Status", + "modelAsString": true + } + }, + "creditCurrency": { + "description": "The currency of the lot.", + "type": "string", + "readOnly": true + }, + "billingCurrency": { + "description": "The billing currency of the lot.", + "type": "string", + "readOnly": true + }, + "originalAmountInBillingCurrency": { + "description": "The original amount of a lot in billing currency.", + "readOnly": true, + "$ref": "#/definitions/AmountWithExchangeRate" + }, + "closedBalanceInBillingCurrency": { + "description": "The balance as of the last invoice in billing currency.", + "readOnly": true, + "$ref": "#/definitions/AmountWithExchangeRate" + }, + "reseller": { + "description": "The reseller of the lot.", + "readOnly": true, + "$ref": "#/definitions/Reseller" + } + } + }, + "CreditSummary": { + "description": "A credit summary resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/CreditSummaryProperties", + "title": "Credit summary properties" + } + } + }, + "CreditSummaryProperties": { + "description": "The properties of the credit summary.", + "type": "object", + "properties": { + "balanceSummary": { + "description": "Summary of balances associated with this credit summary.", + "readOnly": true, + "$ref": "#/definitions/CreditBalanceSummary" + }, + "pendingCreditAdjustments": { + "description": "Pending credit adjustments.", + "readOnly": true, + "$ref": "#/definitions/amount" + }, + "expiredCredit": { + "description": "Expired credit.", + "readOnly": true, + "$ref": "#/definitions/amount" + }, + "pendingEligibleCharges": { + "description": "Pending eligible charges.", + "readOnly": true, + "$ref": "#/definitions/amount" + }, + "creditCurrency": { + "description": "The credit currency.", + "type": "string", + "readOnly": true + }, + "billingCurrency": { + "description": "The billing currency.", + "type": "string", + "readOnly": true + }, + "reseller": { + "description": "Credit's reseller.", + "readOnly": true, + "$ref": "#/definitions/Reseller" + } + } + }, + "CreditBalanceSummary": { + "description": "Summary of credit balances.", + "properties": { + "estimatedBalance": { + "description": "Estimated balance.", + "readOnly": true, + "$ref": "#/definitions/amount" + }, + "currentBalance": { + "description": "Current balance.", + "readOnly": true, + "$ref": "#/definitions/amount" + }, + "estimatedBalanceInBillingCurrency": { + "description": "Estimated balance in billing currency.", + "readOnly": true, + "$ref": "#/definitions/AmountWithExchangeRate" + } + } + }, + "amount": { + "description": "The amount plus currency .", + "properties": { + "currency": { + "readOnly": true, + "type": "string", + "description": "Amount currency." + }, + "value": { + "readOnly": true, + "type": "number", + "format": "decimal", + "description": "Amount." + } + } + }, + "Resource": { + "description": "The Resource model definition.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The full qualified ARM ID of an event." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The ID that uniquely identifies an event. " + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "The etag for the resource." + }, + "tags": { + "readOnly": true, + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "x-ms-azure-resource": true + }, + "ReservationTransactionResource": { + "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": "array", + "items": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "x-ms-azure-resource": true + }, + "ResourceAttributes": { + "description": "The Resource model definition.", + "properties": { + "location": { + "readOnly": true, + "type": "string", + "description": "Resource location" + }, + "sku": { + "readOnly": true, + "type": "string", + "description": "Resource sku" + } + } + }, + "ProxyResource": { + "description": "The Resource model definition.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource Id." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Resource name." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + }, + "eTag": { + "type": "string", + "description": "eTag of the resource. To handle concurrent update scenario, this field will be used to determine whether the user is updating the latest version or not." + } + }, + "x-ms-azure-resource": true + }, + "AmountWithExchangeRate": { + "description": "The amount with exchange rate.", + "properties": { + "exchangeRate": { + "description": "The exchange rate.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "exchangeRateMonth": { + "description": "The exchange rate month.", + "type": "integer", + "format": "int32", + "readOnly": true + } + } + }, + "Reseller": { + "description": "The reseller properties.", + "type": "object", + "properties": { + "resellerId": { + "description": "The reseller property ID.", + "type": "string", + "readOnly": true + }, + "resellerDescription": { + "description": "The reseller property description.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "scopeChargesParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope associated with charges operations. This includes '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}' for Department scope, and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/enrollmentAccounts/{enrollmentAccountId}' for EnrollmentAccount scope. For department and enrollment accounts, you can also add billing period to the scope using '/providers/Microsoft.Billing/billingPeriods/{billingPeriodName}'. For e.g. to specify billing period at department scope use '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}/providers/Microsoft.Billing/billingPeriods/{billingPeriodName}'. Also, Modern Commerce Account scopes are '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for billingAccount scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for billingProfile scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/invoiceSections/{invoiceSectionId}' for invoiceSection scope, and 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/customers/{customerId}' specific for partners.", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, + "scopeUsageDetailsParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope associated with usage details operations. This includes '/subscriptions/{subscriptionId}/' for subscription scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for Billing Account scope, '/providers/Microsoft.Billing/departments/{departmentId}' for Department scope, '/providers/Microsoft.Billing/enrollmentAccounts/{enrollmentAccountId}' for EnrollmentAccount scope and '/providers/Microsoft.Management/managementGroups/{managementGroupId}' for Management Group scope. For subscription, billing account, department, enrollment account and management group, you can also add billing period to the scope using '/providers/Microsoft.Billing/billingPeriods/{billingPeriodName}'. For e.g. to specify billing period at department scope use '/providers/Microsoft.Billing/departments/{departmentId}/providers/Microsoft.Billing/billingPeriods/{billingPeriodName}'. Also, Modern Commerce Account scopes are '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for billingAccount scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for billingProfile scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/invoiceSections/{invoiceSectionId}' for invoiceSection scope, and 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/customers/{customerId}' specific for partners.", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, + "scopeMarketplaceParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope associated with marketplace operations. This includes '/subscriptions/{subscriptionId}/' for subscription scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for Billing Account scope, '/providers/Microsoft.Billing/departments/{departmentId}' for Department scope, '/providers/Microsoft.Billing/enrollmentAccounts/{enrollmentAccountId}' for EnrollmentAccount scope and '/providers/Microsoft.Management/managementGroups/{managementGroupId}' for Management Group scope. For subscription, billing account, department, enrollment account and ManagementGroup, you can also add billing period to the scope using '/providers/Microsoft.Billing/billingPeriods/{billingPeriodName}'. For e.g. to specify billing period at department scope use '/providers/Microsoft.Billing/departments/{departmentId}/providers/Microsoft.Billing/billingPeriods/{billingPeriodName}'", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, + "scopeBudgetParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope associated with budget operations. This includes '/subscriptions/{subscriptionId}/' for subscription scope, '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for resourceGroup scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for Billing Account scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}' for Department scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/enrollmentAccounts/{enrollmentAccountId}' for EnrollmentAccount scope, '/providers/Microsoft.Management/managementGroups/{managementGroupId}' for Management Group scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for billingProfile scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/invoiceSections/{invoiceSectionId}' for invoiceSection scope.", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, + "scopeTagsParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope associated with tags operations. This includes '/subscriptions/{subscriptionId}/' for subscription scope, '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for resourceGroup scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for Billing Account scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}' for Department scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/enrollmentAccounts/{enrollmentAccountId}' for EnrollmentAccount scope and '/providers/Microsoft.Management/managementGroups/{managementGroupId}' for Management Group scope..", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, + "scopeReservationsSummariesParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope associated with reservations summaries operations. This includes '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for BillingAccount scope (legacy), and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for BillingProfile scope (modern). ", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, + "scopeReservationDetailsParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope associated with reservations details operations. This includes '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for BillingAccount scope (legacy), and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for BillingProfile scope (modern). ", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, + "scopeReservationRecommendationsParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope associated with reservation recommendations operations. This includes '/subscriptions/{subscriptionId}/' for subscription scope, '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for resource group scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for BillingAccount scope, and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for billingProfile scope", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, + "scopeReservationRecommendationDetailsParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope associated with reservation recommendation details operations. This includes '/subscriptions/{subscriptionId}/' for subscription scope, '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for resource group scope, /providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for BillingAccount scope, and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for billingProfile scope", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, + "scopeReservationTransactionsParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope associated with reservation transactions operations. This includes '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for BillingAccount/Enrollment scope, and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for billingProfile scope", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Version of the API to be used with the client request. The current version is 2021-05-01." + }, + "billingAccountIdParameter": { + "name": "billingAccountId", + "in": "path", + "description": "BillingAccount ID", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "departmentIdParameter": { + "name": "departmentId", + "in": "path", + "description": "Department ID", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "enrollmentAccountIdParameter": { + "name": "enrollmentAccountId", + "in": "path", + "description": "EnrollmentAccount ID", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "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", + "x-ms-parameter-location": "method", + "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" + } + ] + } + }, + "managementGroupIdParameter": { + "name": "managementGroupId", + "in": "path", + "description": "Azure Management Group ID.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "billingProfileIdParameter": { + "name": "billingProfileId", + "in": "path", + "description": "Azure Billing Profile ID.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "invoiceSectionIdParameter": { + "name": "invoiceSectionId", + "in": "path", + "description": "Azure Invoice Section ID.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "startDateParameter": { + "name": "startDate", + "in": "query", + "description": "Start date", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "endDateParameter": { + "name": "endDate", + "in": "query", + "description": "End date", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "metricParameter": { + "name": "metric", + "in": "query", + "description": "Allows to select different type of cost/usage records.", + "required": false, + "type": "string", + "x-ms-parameter-location": "method", + "enum": [ + "actualcost", + "amortizedcost", + "usage" + ], + "x-ms-enum": { + "name": "metrictype", + "modelAsString": true, + "values": [ + { + "value": "actualcost", + "description": "Actual cost data.", + "name": "ActualCostMetricType" + }, + { + "value": "amortizedcost", + "description": "Amortized cost data.", + "name": "AmortizedCostMetricType" + }, + { + "value": "usage", + "description": "Usage data.", + "name": "UsageMetricType" + } + ] + } + }, + "filterParameter": { + "name": "$filter", + "in": "query", + "description": "May be used to filter reservationRecommendations by: properties/scope with allowed values ['Single', 'Shared'] and default value 'Single'; properties/resourceType with allowed values ['VirtualMachines', 'SQLDatabases', 'PostgreSQL', 'ManagedDisk', 'MySQL', 'RedHat', 'MariaDB', 'RedisCache', 'CosmosDB', 'SqlDataWarehouse', 'SUSELinux', 'AppService', 'BlockBlob', 'AzureDataExplorer', 'VMwareCloudSimple'] and default value 'VirtualMachines'; and properties/lookBackPeriod with allowed values ['Last7Days', 'Last30Days', 'Last60Days'] and default value 'Last7Days'.", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + "termParameter": { + "description": "Specify length of reservation recommendation term.", + "type": "string", + "in": "query", + "required": true, + "name": "term", + "x-ms-parameter-location": "method", + "enum": [ + "P1Y", + "P3Y" + ], + "x-ms-enum": { + "name": "term", + "modelAsString": true, + "values": [ + { + "value": "P1Y", + "description": "1 year reservation term", + "name": "P1Y" + }, + { + "value": "P3Y", + "description": "3 year reservation term", + "name": "P3Y" + } + ] + } + }, + "regionParameter": { + "name": "region", + "in": "query", + "description": "Used to select the region the recommendation should be generated for.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "lookBackPeriodParameter": { + "name": "lookBackPeriod", + "in": "query", + "description": "Filter the time period on which reservation recommendation results are based.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "enum": [ + "Last7Days", + "Last30Days", + "Last60Days" + ], + "x-ms-enum": { + "name": "lookBackPeriod", + "modelAsString": true, + "values": [ + { + "value": "Last7Days", + "description": "Use 7 days of data for recommendations", + "name": "Last07Days" + }, + { + "value": "Last30Days", + "description": "Use 30 days of data for recommendations", + "name": "Last30Days" + }, + { + "value": "Last60Days", + "description": "Use 60 days of data for recommendations", + "name": "Last60Days" + } + ] + } + }, + "productParameter": { + "name": "product", + "in": "query", + "description": "Filter the products for which reservation recommendation results are generated. Examples: Standard_DS1_v2 (for VM), Premium_SSD_Managed_Disks_P30 (for Managed Disks)", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "scopeParameter": { + "description": "Scope of the reservation.", + "type": "string", + "name": "scope", + "in": "query", + "required": true, + "x-ms-parameter-location": "method", + "enum": [ + "Single", + "Shared" + ], + "x-ms-enum": { + "name": "scope", + "modelAsString": true + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/AggregatedCostByManagementGroup.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/AggregatedCostByManagementGroup.json new file mode 100644 index 000000000000..be57cb991c08 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/AggregatedCostByManagementGroup.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "managementGroupId": "managementGroupForTest" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Management/managementGroups/managementGroupForTest/providers/Microsoft.Consumption/aggregatedcostId1", + "name": "aggregatedcostId1", + "type": "Microsoft.Consumption/aggregatedcost", + "properties": { + "includedSubscriptions": [ + "1caaa5a3-2b66-438e-8ab4-bce37d518c5d" + ], + "excludedSubscriptions": [], + "usageStart": "2021-05-01T00:00:00.0000000Z", + "usageEnd": "2018-10-31T00:00:00.0000000Z", + "azureCharges": 250.9876, + "marketplaceCharges": 150.786, + "chargesBilledSeparately": 120.345, + "currency": "USD", + "children": [ + { + "id": "/providers/Microsoft.Management/managementGroups/managementGroupChildForTest/providers/Microsoft.Consumption/aggregatedcostId2", + "name": "aggregatedcostId2", + "type": "Microsoft.Consumption/aggregatedcost", + "properties": { + "includedSubscriptions": [ + "c349567d-c83a-48c9-ab0e-578c69dc97a4" + ], + "excludedSubscriptions": [], + "usageStart": "2021-05-01T00:00:00.0000000Z", + "usageEnd": "2018-10-31T00:00:00.0000000Z", + "azureCharges": 150.0, + "marketplaceCharges": 50.786, + "chargesBilledSeparately": 30.345, + "currency": "USD", + "children": [] + } + } + ] + } + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/AggregatedCostByManagementGroupFilterByDate.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/AggregatedCostByManagementGroupFilterByDate.json new file mode 100644 index 000000000000..b647ff0a0e11 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/AggregatedCostByManagementGroupFilterByDate.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "managementGroupId": "managementGroupForTest", + "$filter": "usageStart ge '2018-08-15' and properties/usageStart le '2018-08-31'" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Management/managementGroups/managementGroupForTest/providers/Microsoft.Consumption/aggregatedcostId1", + "name": "aggregatedcostId1", + "type": "Microsoft.Consumption/aggregatedcost", + "properties": { + "includedSubscriptions": [ + "1caaa5a3-2b66-438e-8ab4-bce37d518c5d" + ], + "excludedSubscriptions": [], + "usageStart": "2018-08-15T00:00:00.0000000Z", + "usageEnd": "2018-08-31T00:00:00.0000000Z", + "azureCharges": 150.9876, + "marketplaceCharges": 80.786, + "chargesBilledSeparately": 90.345, + "currency": "USD", + "children": [ + { + "id": "/providers/Microsoft.Management/managementGroups/managementGroupChildForTest/providers/Microsoft.Consumption/aggregatedcostId2", + "name": "aggregatedcostId2", + "type": "Microsoft.Consumption/aggregatedcost", + "properties": { + "includedSubscriptions": [ + "c349567d-c83a-48c9-ab0e-578c69dc97a4" + ], + "excludedSubscriptions": [], + "usageStart": "2018-08-15T00:00:00.0000000Z", + "usageEnd": "2018-08-31T00:00:00.0000000Z", + "azureCharges": 50.0, + "marketplaceCharges": 10.786, + "chargesBilledSeparately": 30.345, + "currency": "USD", + "children": [] + } + } + ] + } + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/AggregatedCostForBillingPeriodByManagementGroup.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/AggregatedCostForBillingPeriodByManagementGroup.json new file mode 100644 index 000000000000..91b26fbf9039 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/AggregatedCostForBillingPeriodByManagementGroup.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "managementGroupId": "managementGroupForTest", + "billingPeriodName": "201807" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Management/managementGroups/managementGroupForTest/providers/Microsoft.Consumption/aggregatedcostId1", + "name": "aggregatedcostId1", + "type": "Microsoft.Consumption/aggregatedcost", + "properties": { + "usageStart": "2018-07-01T00:00:00.0000000Z", + "usageEnd": "2018-07-31T00:00:00.0000000Z", + "azureCharges": 250.9876, + "marketplaceCharges": 150.786, + "chargesBilledSeparately": 120.345, + "currency": "USD", + "children": [ + { + "id": "/providers/Microsoft.Management/managementGroups/managementGroupChildForTest/providers/Microsoft.Consumption/aggregatedcostId2", + "name": "aggregatedcostId2", + "type": "Microsoft.Consumption/aggregatedcost", + "properties": { + "usageStart": "2018-07-01T00:00:00.0000000Z", + "usageEnd": "2018-07-31T00:00:00.0000000Z", + "azureCharges": 150.0, + "marketplaceCharges": 50.786, + "chargesBilledSeparately": 30.345, + "currency": "USD", + "children": [] + } + } + ] + } + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/BalancesByBillingAccount.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/BalancesByBillingAccount.json new file mode 100644 index 000000000000..6e47b4c5058a --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/BalancesByBillingAccount.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "billingAccountId": "123456" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/123456/providers/Microsoft.Billing/billingPeriods/201702/providers/Microsoft.Consumption/balances/balanceId1", + "name": "balanceId1", + "type": "Microsoft.Consumption/balances", + "properties": { + "currency": "USD ", + "beginningBalance": 3396469.19, + "endingBalance": 2922371.02, + "newPurchases": 0, + "adjustments": 0, + "utilized": 474098.17, + "serviceOverage": 0, + "chargesBilledSeparately": 0, + "totalOverage": 0, + "totalUsage": 474098.17, + "azureMarketplaceServiceCharges": 609.82, + "billingFrequency": "Month", + "priceHidden": false, + "newPurchasesDetails": [ + { + "name": "Promo Purchase", + "value": 1 + } + ], + "adjustmentDetails": [ + { + "name": "Promo Credit", + "value": 1.1 + }, + { + "name": "SIE Credit", + "value": 1.0 + } + ] + } + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/BalancesByBillingAccountForBillingPeriod.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/BalancesByBillingAccountForBillingPeriod.json new file mode 100644 index 000000000000..c970e6d92021 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/BalancesByBillingAccountForBillingPeriod.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "billingAccountId": "123456", + "billingPeriodName": "201702" + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/123456/providers/Microsoft.Billing/billingPeriods/201702/providers/Microsoft.Consumption/balances/balanceId1", + "name": "balanceId1", + "type": "Microsoft.Consumption/balances", + "properties": { + "currency": "USD ", + "beginningBalance": 3396469.19, + "endingBalance": 2922371.02, + "newPurchases": 0, + "adjustments": 0, + "utilized": 474098.17, + "serviceOverage": 0, + "chargesBilledSeparately": 0, + "totalOverage": 0, + "totalUsage": 474098.17, + "azureMarketplaceServiceCharges": 609.82, + "billingFrequency": "Month", + "priceHidden": false, + "newPurchasesDetails": [ + { + "name": "Promo Purchase", + "value": 1 + } + ], + "adjustmentDetails": [ + { + "name": "Promo Credit", + "value": 1.1 + }, + { + "name": "SIE Credit", + "value": 1.0 + } + ] + } + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/Budget.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/Budget.json new file mode 100644 index 000000000000..70870307b5f4 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/Budget.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "MYDEVTESTRG", + "budgetName": "TestBudget", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/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" + }, + "filter": { + "and": [ + { + "dimensions": { + "name": "ResourceId", + "operator": "In", + "values": [ + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/MSVM2", + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/platformcloudplatformGeneric1" + ] + } + }, + { + "tags": { + "name": "category", + "operator": "In", + "values": [ + "Dev", + "Prod" + ] + } + }, + { + "tags": { + "name": "department", + "operator": "In", + "values": [ + "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/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/microsoft.insights/actionGroups/SampleActionGroup" + ], + "thresholdType": "Actual" + } + } + } + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/BudgetsList.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/BudgetsList.json new file mode 100644 index 000000000000..592bd3890550 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/BudgetsList.json @@ -0,0 +1,186 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "resourceGroupName": "MYDEVTESTRG" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/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" + }, + "filter": { + "and": [ + { + "dimensions": { + "name": "ResourceId", + "operator": "In", + "values": [ + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/MSVM2", + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/platformcloudplatformGeneric1" + ] + } + }, + { + "tags": { + "name": "category", + "operator": "In", + "values": [ + "Dev", + "Prod" + ] + } + }, + { + "tags": { + "name": "department", + "operator": "In", + "values": [ + "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/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/microsoft.insights/actionGroups/SampleActionGroup" + ] + }, + "thresholdType": "Actual" + } + } + }, + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/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" + }, + "filter": { + "and": [ + { + "dimensions": { + "name": "ResourceId", + "operator": "In", + "values": [ + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/MSVM2", + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/platformcloudplatformGeneric1" + ] + } + }, + { + "tags": { + "name": "category", + "operator": "In", + "values": [ + "Dev", + "Prod" + ] + } + }, + { + "tags": { + "name": "department", + "operator": "In", + "values": [ + "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/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/microsoft.insights/actionGroups/SampleActionGroup" + ], + "thresholdType": "Actual" + } + } + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ChargesForBillingPeriodByDepartment.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ChargesForBillingPeriodByDepartment.json new file mode 100644 index 000000000000..873a4eb05928 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ChargesForBillingPeriodByDepartment.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "billingPeriodName": "201804", + "scope": "providers/Microsoft.Billing/BillingAccounts/1234/departments/42425" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/BillingAccounts/1234/departments/42425/providers/Microsoft.Consumption/charges/chargeSummaryId1", + "name": "chargeSummaryId1", + "type": "Microsoft.Consumption/charges", + "kind": "legacy", + "properties": { + "billingPeriodId": "/providers/Microsoft.Billing/BillingAccounts/1234/providers/Microsoft.Billing/billingPeriods/201804", + "usageStart": "2018-04-01", + "usageEnd": "2018-04-30", + "azureCharges": 5000.00, + "chargesBilledSeparately": 60.90, + "marketplaceCharges": 100.00, + "currency": "USD" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ChargesForBillingPeriodByEnrollmentAccount.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ChargesForBillingPeriodByEnrollmentAccount.json new file mode 100644 index 000000000000..9615b4074248 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ChargesForBillingPeriodByEnrollmentAccount.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "billingPeriodName": "201804", + "scope": "providers/Microsoft.Billing/BillingAccounts/1234/enrollmentAccounts/42425" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/BillingAccounts/1234/enrollmentAccounts/42425/providers/Microsoft.Consumption/charges/chargeSummaryId1", + "name": "chargeSummaryId1", + "type": "Microsoft.Consumption/charges", + "kind": "legacy", + "properties": { + "billingPeriodId": "/providers/Microsoft.Billing/BillingAccounts/1234/providers/Microsoft.Billing/billingPeriods/201804", + "usageStart": "2018-04-01", + "usageEnd": "2018-04-30", + "azureCharges": 5000.00, + "chargesBilledSeparately": 60.90, + "marketplaceCharges": 100.00, + "currency": "USD" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ChargesListByModernBillingAccount.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ChargesListByModernBillingAccount.json new file mode 100644 index 000000000000..d4942a957690 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ChargesListByModernBillingAccount.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "startDate": "2019-09-01", + "endDate": "2019-10-31", + "scope": "providers/Microsoft.Billing/billingAccounts/1234:56789" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/1234:56789/providers/Microsoft.Consumption/charges/chargeSummaryId1", + "name": "chargeSummaryId1", + "type": "Microsoft.Consumption/charges", + "kind": "modern", + "properties": { + "isInvoiced": false, + "billingPeriodId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/providers/Microsoft.Billing/billingPeriods/201910", + "usageStart": "2021-05-01", + "usageEnd": "2019-10-31", + "azureCharges": { + "currency": "USD", + "value": 0.0 + }, + "chargesBilledSeparately": { + "currency": "USD", + "value": 265.09 + }, + "marketplaceCharges": { + "currency": "USD", + "value": 0.0 + }, + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/1234:56789", + "billingProfileId": null, + "invoiceSectionId": null + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ChargesListByModernBillingAccountGroupByBillingProfileId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ChargesListByModernBillingAccountGroupByBillingProfileId.json new file mode 100644 index 000000000000..e0743125364f --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ChargesListByModernBillingAccountGroupByBillingProfileId.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "scope": "providers/Microsoft.Billing/billingAccounts/1234:56789", + "startDate": "2019-09-01", + "endDate": "2019-09-30", + "$apply": "groupby((properties/billingProfileId))" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/1234:56789/providers/Microsoft.Consumption/charges/chargeSummaryId1", + "name": "chargeSummaryId1", + "type": "Microsoft.Consumption/charges", + "kind": "modern", + "properties": { + "isInvoiced": false, + "billingPeriodId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/123456/providers/Microsoft.Billing/billingPeriods/201909", + "usageStart": "2019-09-01", + "usageEnd": "2019-09-30", + "azureCharges": { + "currency": "USD", + "value": 5000.00 + }, + "chargesBilledSeparately": { + "currency": "USD", + "value": 60.90 + }, + "marketplaceCharges": { + "currency": "USD", + "value": 100.00 + }, + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/1234:56789", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/123456" + } + }, + { + "id": "/providers/Microsoft.Billing/BillingAccounts/1234:56789/billingProfiles/42425/providers/Microsoft.Consumption/charges/chargeSummaryId2", + "name": "chargeSummaryId2", + "type": "Microsoft.Consumption/charges", + "kind": "modern", + "properties": { + "billingPeriodId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/providers/Microsoft.Billing/billingPeriods/201909", + "usageStart": "2019-09-01", + "usageEnd": "2019-09-30", + "azureCharges": { + "currency": "USD", + "value": 5000.00 + }, + "chargesBilledSeparately": { + "currency": "USD", + "value": 60.90 + }, + "marketplaceCharges": { + "currency": "USD", + "value": 100.00 + }, + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/1234:56789", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/42425" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ChargesListByModernBillingAccountGroupByCustomerId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ChargesListByModernBillingAccountGroupByCustomerId.json new file mode 100644 index 000000000000..b89c9e52f9c9 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ChargesListByModernBillingAccountGroupByCustomerId.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "scope": "providers/Microsoft.Billing/billingAccounts/1234:56789", + "startDate": "2019-09-01", + "endDate": "2019-09-30", + "$apply": "groupby((properties/customerId))" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/1234:56789/customers/67890/providers/Microsoft.Consumption/charges/chargeSummaryId1", + "name": "chargeSummaryId1", + "type": "Microsoft.Consumption/charges", + "kind": "modern", + "properties": { + "customerId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/customers/67890", + "isInvoiced": false, + "billingPeriodId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/providers/Microsoft.Billing/billingPeriods/201909", + "usageStart": "2019-09-01", + "usageEnd": "2019-09-30", + "azureCharges": { + "currency": "USD", + "value": 5000.00 + }, + "chargesBilledSeparately": { + "currency": "USD", + "value": 60.90 + }, + "marketplaceCharges": { + "currency": "USD", + "value": 100.00 + }, + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/1234:56789", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/42425", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/invoiceSections/67890" + } + }, + { + "id": "/providers/Microsoft.Billing/BillingAccounts/1234:56789/customers/123456/providers/Microsoft.Consumption/charges/chargeSummaryId2", + "name": "chargeSummaryId2", + "type": "Microsoft.Consumption/charges", + "kind": "modern", + "properties": { + "customerId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/customers/123456", + "isInvoiced": false, + "billingPeriodId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/providers/Microsoft.Billing/billingPeriods/201909", + "usageStart": "2019-09-01", + "usageEnd": "2019-09-30", + "azureCharges": { + "currency": "USD", + "value": 5000.00 + }, + "chargesBilledSeparately": { + "currency": "USD", + "value": 60.90 + }, + "marketplaceCharges": { + "currency": "USD", + "value": 100.00 + }, + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/1234:56789", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/42425", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/invoiceSections/67890" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ChargesListByModernBillingAccountGroupByInvoiceSectionId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ChargesListByModernBillingAccountGroupByInvoiceSectionId.json new file mode 100644 index 000000000000..6d9144c6535f --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ChargesListByModernBillingAccountGroupByInvoiceSectionId.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "scope": "providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/42425", + "startDate": "2019-09-01", + "endDate": "2019-09-30", + "$apply": "groupby((properties/invoiceSectionId))" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/42425/invoiceSections/4567/providers/Microsoft.Consumption/charges/chargeSummaryId1", + "name": "chargeSummaryId1", + "type": "Microsoft.Consumption/charges", + "kind": "modern", + "properties": { + "isInvoiced": false, + "billingPeriodId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/providers/Microsoft.Billing/billingPeriods/201909", + "usageStart": "2019-09-01", + "usageEnd": "2019-09-30", + "azureCharges": { + "currency": "USD", + "value": 5000.00 + }, + "chargesBilledSeparately": { + "currency": "USD", + "value": 60.90 + }, + "marketplaceCharges": { + "currency": "USD", + "value": 100.00 + }, + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/1234:56789", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/42425", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/invoiceSections/4567" + } + }, + { + "id": "/providers/Microsoft.Billing/BillingAccounts/1234:56789//billingProfiles/42425/invoiceSections/67890/providers/Microsoft.Consumption/charges/chargeSummaryId2", + "name": "chargeSummaryId2", + "type": "Microsoft.Consumption/charges", + "kind": "modern", + "properties": { + "isInvoiced": false, + "billingPeriodId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/providers/Microsoft.Billing/billingPeriods/201909", + "usageStart": "2019-09-01", + "usageEnd": "2019-09-30", + "azureCharges": { + "currency": "USD", + "value": 5000.00 + }, + "chargesBilledSeparately": { + "currency": "USD", + "value": 60.90 + }, + "marketplaceCharges": { + "currency": "USD", + "value": 100.00 + }, + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/1234:56789", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/42425", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/invoiceSections/67890" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ChargesListByModernBillingProfile.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ChargesListByModernBillingProfile.json new file mode 100644 index 000000000000..bdc42cbd9e11 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ChargesListByModernBillingProfile.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "scope": "providers/Microsoft.Billing/BillingAccounts/1234:56789/billingProfiles/2460" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/2460/providers/Microsoft.Consumption/charges/chargeSummaryId1", + "name": "chargeSummaryId1", + "type": "Microsoft.Consumption/charges", + "kind": "modern", + "properties": { + "isInvoiced": false, + "billingPeriodId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/providers/Microsoft.Billing/billingPeriods/201910", + "usageStart": "2021-05-01", + "usageEnd": "2019-10-31", + "azureCharges": { + "currency": "USD", + "value": 0.0 + }, + "chargesBilledSeparately": { + "currency": "USD", + "value": 265.09 + }, + "marketplaceCharges": { + "currency": "USD", + "value": 0.0 + }, + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/1234:56789", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/2460", + "invoiceSectionId": null + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ChargesListByModernBillingProfileGroupByInvoiceSectionId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ChargesListByModernBillingProfileGroupByInvoiceSectionId.json new file mode 100644 index 000000000000..6d9144c6535f --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ChargesListByModernBillingProfileGroupByInvoiceSectionId.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "scope": "providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/42425", + "startDate": "2019-09-01", + "endDate": "2019-09-30", + "$apply": "groupby((properties/invoiceSectionId))" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/42425/invoiceSections/4567/providers/Microsoft.Consumption/charges/chargeSummaryId1", + "name": "chargeSummaryId1", + "type": "Microsoft.Consumption/charges", + "kind": "modern", + "properties": { + "isInvoiced": false, + "billingPeriodId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/providers/Microsoft.Billing/billingPeriods/201909", + "usageStart": "2019-09-01", + "usageEnd": "2019-09-30", + "azureCharges": { + "currency": "USD", + "value": 5000.00 + }, + "chargesBilledSeparately": { + "currency": "USD", + "value": 60.90 + }, + "marketplaceCharges": { + "currency": "USD", + "value": 100.00 + }, + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/1234:56789", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/42425", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/invoiceSections/4567" + } + }, + { + "id": "/providers/Microsoft.Billing/BillingAccounts/1234:56789//billingProfiles/42425/invoiceSections/67890/providers/Microsoft.Consumption/charges/chargeSummaryId2", + "name": "chargeSummaryId2", + "type": "Microsoft.Consumption/charges", + "kind": "modern", + "properties": { + "isInvoiced": false, + "billingPeriodId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/providers/Microsoft.Billing/billingPeriods/201909", + "usageStart": "2019-09-01", + "usageEnd": "2019-09-30", + "azureCharges": { + "currency": "USD", + "value": 5000.00 + }, + "chargesBilledSeparately": { + "currency": "USD", + "value": 60.90 + }, + "marketplaceCharges": { + "currency": "USD", + "value": 100.00 + }, + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/1234:56789", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/42425", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/invoiceSections/67890" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ChargesListByModernBillingProfileInvoiceSection.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ChargesListByModernBillingProfileInvoiceSection.json new file mode 100644 index 000000000000..0cc080d5a52c --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ChargesListByModernBillingProfileInvoiceSection.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "startDate": "2019-09-01", + "endDate": "2019-10-31", + "scope": "providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/42425/invoiceSections/67890" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/42425/invoiceSections/67890/providers/Microsoft.Consumption/charges/chargeSummaryId1", + "name": "chargeSummaryId1", + "type": "Microsoft.Consumption/charges", + "kind": "modern", + "properties": { + "isInvoiced": false, + "billingPeriodId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/providers/Microsoft.Billing/billingPeriods/201909", + "usageStart": "2019-09-01", + "usageEnd": "2019-09-30", + "azureCharges": { + "currency": "USD", + "value": 5000.00 + }, + "chargesBilledSeparately": { + "currency": "USD", + "value": 60.90 + }, + "marketplaceCharges": { + "currency": "USD", + "value": 100.00 + }, + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/1234:56789", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/42425", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/42425/invoiceSections/4567" + } + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/42425/invoiceSections/67890/providers/Microsoft.Consumption/charges/chargeSummaryId2", + "name": "chargeSummaryId2", + "type": "Microsoft.Consumption/charges", + "kind": "modern", + "properties": { + "isInvoiced": false, + "billingPeriodId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/providers/Microsoft.Billing/billingPeriods/201910", + "usageStart": "2021-05-01", + "usageEnd": "2019-10-31", + "azureCharges": { + "currency": "USD", + "value": 5000.00 + }, + "chargesBilledSeparately": { + "currency": "USD", + "value": 60.90 + }, + "marketplaceCharges": { + "currency": "USD", + "value": 100.00 + }, + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/1234:56789", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/42425", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/42425/invoiceSections/4567" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ChargesListByModernCustomer.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ChargesListByModernCustomer.json new file mode 100644 index 000000000000..1679b8171de5 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ChargesListByModernCustomer.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "scope": "providers/Microsoft.Billing/BillingAccounts/1234:56789/customers/67890" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/1234:56789/customers/67890/providers/Microsoft.Consumption/charges/chargeSummaryId1", + "name": "chargeSummaryId1", + "type": "Microsoft.Consumption/charges", + "kind": "modern", + "properties": { + "isInvoiced": false, + "billingPeriodId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/providers/Microsoft.Billing/billingPeriods/201910", + "usageStart": "2021-05-01", + "usageEnd": "2019-10-31", + "azureCharges": { + "currency": "USD", + "value": 0.0 + }, + "chargesBilledSeparately": { + "currency": "USD", + "value": 265.09 + }, + "marketplaceCharges": { + "currency": "USD", + "value": 0.0 + }, + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/1234:56789", + "billingProfileId": null, + "invoiceSectionId": null + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ChargesListByModernInvoiceSectionId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ChargesListByModernInvoiceSectionId.json new file mode 100644 index 000000000000..0f78358c8d3e --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ChargesListByModernInvoiceSectionId.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "scope": "providers/Microsoft.Billing/BillingAccounts/1234:56789/invoiceSections/97531" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/2460/invoiceSections/97531/providers/Microsoft.Consumption/charges/chargeSummaryId1", + "name": "chargeSummaryId1", + "type": "Microsoft.Consumption/charges", + "kind": "modern", + "properties": { + "isInvoiced": false, + "billingPeriodId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/providers/Microsoft.Billing/billingPeriods/201910", + "usageStart": "2021-05-01", + "usageEnd": "2019-10-31", + "azureCharges": { + "currency": "USD", + "value": 12.0 + }, + "chargesBilledSeparately": { + "currency": "USD", + "value": 0.0 + }, + "marketplaceCharges": { + "currency": "USD", + "value": 0.0 + }, + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/1234:56789", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/2460", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/2460/invoiceSections/97531" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ChargesListForDepartmentFilterByStartEndDate.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ChargesListForDepartmentFilterByStartEndDate.json new file mode 100644 index 000000000000..7bdb13aeb586 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ChargesListForDepartmentFilterByStartEndDate.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "scope": "providers/Microsoft.Billing/BillingAccounts/1234/departments/42425", + "$filter": "usageStart eq '2018-04-01' AND usageEnd eq '2018-05-30'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/BillingAccounts/1234/departments/42425/providers/Microsoft.Consumption/charges/chargeSummaryId1", + "name": "chargeSummaryId1", + "type": "Microsoft.Consumption/charges", + "kind": "legacy", + "properties": { + "billingPeriodId": "/providers/Microsoft.Billing/BillingAccounts/1234/providers/Microsoft.Billing/billingPeriods/201804", + "usageStart": "2018-04-01", + "usageEnd": "2018-04-30", + "azureCharges": 5000.00, + "chargesBilledSeparately": 60.90, + "marketplaceCharges": 100.00, + "currency": "USD" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ChargesListForEnrollmentAccountFilterByStartEndDate.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ChargesListForEnrollmentAccountFilterByStartEndDate.json new file mode 100644 index 000000000000..f1fbd6b15a44 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ChargesListForEnrollmentAccountFilterByStartEndDate.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "scope": "providers/Microsoft.Billing/BillingAccounts/1234/enrollmentAccounts/42425" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/BillingAccounts/1234/enrollmentAccounts/42425/providers/Microsoft.Consumption/charges/chargeSummaryId1", + "name": "chargeSummaryId1", + "type": "Microsoft.Consumption/charges", + "kind": "legacy", + "properties": { + "billingPeriodId": "/providers/Microsoft.Billing/BillingAccounts/1234/providers/Microsoft.Billing/billingPeriods/201804", + "usageStart": "2018-04-01", + "usageEnd": "2018-04-30", + "azureCharges": 5000.00, + "chargesBilledSeparately": 60.90, + "marketplaceCharges": 100.00, + "currency": "USD" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/CreateOrUpdateBudget.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/CreateOrUpdateBudget.json new file mode 100644 index 000000000000..3234cfdab295 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/CreateOrUpdateBudget.json @@ -0,0 +1,224 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "MYDEVTESTRG", + "budgetName": "TestBudget", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "parameters": { + "eTag": "\"1d34d016a593709\"", + "properties": { + "category": "Cost", + "amount": 100.65, + "timeGrain": "Monthly", + "timePeriod": { + "startDate": "2017-10-01T00:00:00Z", + "endDate": "2018-10-31T00:00:00Z" + }, + "filter": { + "and": [ + { + "dimensions": { + "name": "ResourceId", + "operator": "In", + "values": [ + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/MSVM2", + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/platformcloudplatformGeneric1" + ] + } + }, + { + "tags": { + "name": "category", + "operator": "In", + "values": [ + "Dev", + "Prod" + ] + } + }, + { + "tags": { + "name": "department", + "operator": "In", + "values": [ + "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/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/microsoft.insights/actionGroups/SampleActionGroup" + ], + "thresholdType": "Actual" + } + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/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" + }, + "filter": { + "and": [ + { + "dimensions": { + "name": "ResourceId", + "operator": "In", + "values": [ + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/MSVM2", + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/platformcloudplatformGeneric1" + ] + } + }, + { + "tags": { + "name": "category", + "operator": "In", + "values": [ + "Dev", + "Prod" + ] + } + }, + { + "tags": { + "name": "department", + "operator": "In", + "values": [ + "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/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/microsoft.insights/actionGroups/SampleActionGroup" + ], + "thresholdType": "Actual" + } + } + } + } + }, + "200": { + "body": { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/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" + }, + "filter": { + "and": [ + { + "dimensions": { + "name": "ResourceId", + "operator": "In", + "values": [ + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/MSVM2", + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/platformcloudplatformGeneric1" + ] + } + }, + { + "tags": { + "name": "category", + "operator": "In", + "values": [ + "Dev", + "Prod" + ] + } + }, + { + "tags": { + "name": "department", + "operator": "In", + "values": [ + "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/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/microsoft.insights/actionGroups/SampleActionGroup" + ], + "thresholdType": "Actual" + } + } + } + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/CreditSummaryByBillingProfile.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/CreditSummaryByBillingProfile.json new file mode 100644 index 000000000000..1fb696218838 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/CreditSummaryByBillingProfile.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "billingAccountId": "1234:5678", + "billingProfileId": "2468" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/1234:5678/billingProfiles/2468/providers/Microsoft.Consumption/credits/balanceSummary1", + "name": "balanceSummary1", + "type": "Microsoft.Consumption/credits/balanceSummary", + "properties": { + "creditCurrency": "USD", + "billingCurrency": "USD", + "balanceSummary": { + "estimatedBalance": { + "currency": "USD", + "value": 600.00 + }, + "currentBalance": { + "currency": "USD", + "value": 100.00 + } + }, + "pendingCreditAdjustments": { + "currency": "USD", + "value": 500.00 + }, + "expiredCredit": { + "currency": "USD", + "value": 0.00 + }, + "pendingEligibleCharges": { + "currency": "USD", + "value": 0.00 + }, + "reseller": { + "resellerId": "/providers/Microsoft.Billing/billingAccounts/1234:5678/billingProfiles/2468/providers/Microsoft.Consumption/reseller/reseller1", + "resellerDescription": "Reseller information." + } + } + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/DeleteBudget.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/DeleteBudget.json new file mode 100644 index 000000000000..fb77c5180c45 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/DeleteBudget.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "MYDEVTESTRG", + "budgetName": "TestBudget", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": {} + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/EventsGetByBillingAccount.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/EventsGetByBillingAccount.json new file mode 100644 index 000000000000..3bd360a4972e --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/EventsGetByBillingAccount.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "billingAccountId": "1234:5678" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/1234:56789/providers/Microsoft.Consumption/events/eventId1", + "name": "eventId1", + "type": "Microsoft.Consumption/events", + "properties": { + "lotSource": "ConsumptionCommitment", + "lotId": "/providers/Microsoft.Billing/billingAccounts/1234:5678/Microsoft.Consumption/lots/G202001083926600XXXXX", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/X3TD-KVTT-BG7-TGB", + "billingProfileDisplayName": "Contoso Operations Billing", + "transactionDate": "2019-07-01T00:00:00Z", + "description": "New MACC Added", + "charges": { + "currency": "USD", + "value": 500 + }, + "newCredit": { + "currency": "USD", + "value": 500 + }, + "closedBalance": { + "currency": "USD", + "value": 500 + }, + "invoiceNumber": "3304", + "eventType": "NewCredit" + } + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/1234:56789/providers/Microsoft.Consumption/events/eventId2", + "name": "eventId2", + "type": "Microsoft.Consumption/events", + "properties": { + "lotSource": "AzurePrepayment", + "lotId": "/providers/Microsoft.Billing/billingAccounts/1234:5678/Microsoft.Consumption/lots/7004bc39-974d-482e-8e45-caf91dba0870", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/X3TD-KVTT-BG7-TGB", + "billingProfileDisplayName": "Contoso Operations Billing", + "transactionDate": "2019-07-01T00:00:00Z", + "description": "Balance after invoice 3304", + "charges": { + "currency": "USD", + "value": 500 + }, + "closedBalance": { + "currency": "USD", + "value": 500 + }, + "invoiceNumber": "3304", + "eventType": "SettledCharges" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/EventsGetByBillingAccountWithFilters.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/EventsGetByBillingAccountWithFilters.json new file mode 100644 index 000000000000..9f3abbc8588b --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/EventsGetByBillingAccountWithFilters.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "billingAccountId": "1234:5678", + "$filter": "lotid eq 'G202001083926600XXXXX' AND lotsource eq 'consumptioncommitment'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/1234:56789/providers/Microsoft.Consumption/events/eventId1", + "name": "eventId1", + "type": "Microsoft.Consumption/events", + "properties": { + "lotSource": "ConsumptionCommitment", + "lotId": "/providers/Microsoft.Billing/billingAccounts/1234:5678/Microsoft.Consumption/lots/G202001083926600XXXXX", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/X3TD-KVTT-BG7-TGB", + "billingProfileDisplayName": "Contoso Operations Billing", + "transactionDate": "2019-07-01T00:00:00Z", + "description": "MACC Canceled", + "canceledCredit": { + "currency": "USD", + "value": 200 + }, + "closedBalance": { + "currency": "USD", + "value": 500 + }, + "invoiceNumber": "3304", + "eventType": "CanceledCredit" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/EventsListByBillingProfile.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/EventsListByBillingProfile.json new file mode 100644 index 000000000000..737140b05560 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/EventsListByBillingProfile.json @@ -0,0 +1,257 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "billingAccountId": "1234:5678", + "billingProfileId": "4268", + "startDate": "2019-09-01", + "endDate": "2019-10-31" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/1234:5678/billingProfiles/4268/providers/Microsoft.Consumption/events/event1", + "name": "event1", + "type": "Microsoft.Consumption/events", + "properties": { + "transactionDate": "2019-07-01T00:00:00Z", + "description": "Settled invoice #312033", + "creditCurrency": "USD", + "reseller": { + "resellerId": "/providers/Microsoft.Billing/billingAccounts/1234:5678/billingProfiles/2468/providers/Microsoft.Consumption/reseller/reseller1", + "resellerDescription": "Reseller information" + }, + "billingCurrency": "USD", + "newCredit": { + "currency": "USD", + "value": 0.00 + }, + "newCreditInBillingCurrency": { + "exchangeRate": 5000.00, + "exchangeRateMonth": 1 + }, + "adjustments": { + "currency": "USD", + "value": 0.00 + }, + "adjustmentsInBillingCurrency": { + "exchangeRate": 5000.00, + "exchangeRateMonth": 1 + }, + "creditExpired": { + "currency": "USD", + "value": 0.00 + }, + "creditExpiredInBillingCurrency": { + "exchangeRate": 5000.00, + "exchangeRateMonth": 1 + }, + "charges": { + "currency": "USD", + "value": 500.00 + }, + "chargesInBillingCurrency": { + "exchangeRate": 5000.00, + "exchangeRateMonth": 1 + }, + "closedBalance": { + "currency": "USD", + "value": 500.00 + }, + "closedBalanceInBillingCurrency": { + "exchangeRate": 5000.00, + "exchangeRateMonth": 1 + }, + "eventType": "SettledCharges", + "invoiceNumber": "3301" + } + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/1234:5678/billingProfiles/4268/providers/Microsoft.Consumption/events/event2", + "name": "event2", + "type": "Microsoft.Consumption/events", + "properties": { + "transactionDate": "2019-08-01T00:00:00Z", + "description": "New credits added", + "creditCurrency": "USD", + "reseller": { + "resellerId": "/providers/Microsoft.Billing/billingAccounts/1234:5678/billingProfiles/2468/providers/Microsoft.Consumption/reseller/reseller1", + "resellerDescription": "Reseller information" + }, + "billingCurrency": "USD", + "newCredit": { + "currency": "USD", + "value": 400.00 + }, + "newCreditInBillingCurrency": { + "exchangeRate": 5000.00, + "exchangeRateMonth": 1 + }, + "canceledCredit": { + "currency": "USD", + "value": 5000 + }, + "adjustments": { + "currency": "USD", + "value": 0.00 + }, + "adjustmentsInBillingCurrency": { + "exchangeRate": 5000.00, + "exchangeRateMonth": 1 + }, + "creditExpired": { + "currency": "USD", + "value": 0.00 + }, + "creditExpiredInBillingCurrency": { + "exchangeRate": 5000.00, + "exchangeRateMonth": 1 + }, + "charges": { + "currency": "USD", + "value": 0.00 + }, + "chargesInBillingCurrency": { + "exchangeRate": 5000.00, + "exchangeRateMonth": 1 + }, + "closedBalance": { + "currency": "USD", + "value": 900.00 + }, + "closedBalanceInBillingCurrency": { + "exchangeRate": 5000.00, + "exchangeRateMonth": 1 + }, + "eventType": "NewCredit", + "invoiceNumber": "3302" + } + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/1234:5678/billingProfiles/4268/providers/Microsoft.Consumption/events/event3", + "name": "event3", + "type": "Microsoft.Consumption/events", + "properties": { + "transactionDate": "2019-09-01T00:00:00Z", + "description": "Credits Expired", + "creditCurrency": "USD", + "reseller": { + "resellerId": "/providers/Microsoft.Billing/billingAccounts/1234:5678/billingProfiles/2468/providers/Microsoft.Consumption/reseller/reseller1", + "resellerDescription": "Reseller information" + }, + "billingCurrency": "USD", + "newCredit": { + "currency": "USD", + "value": 0.00 + }, + "newCreditInBillingCurrency": { + "exchangeRate": 5000.00, + "exchangeRateMonth": 1 + }, + "canceledCredit": { + "currency": "USD", + "value": 5000 + }, + "adjustments": { + "currency": "USD", + "value": 0.00 + }, + "adjustmentsInBillingCurrency": { + "exchangeRate": 5000.00, + "exchangeRateMonth": 1 + }, + "creditExpired": { + "currency": "USD", + "value": 300.00 + }, + "creditExpiredInBillingCurrency": { + "exchangeRate": 5000.00, + "exchangeRateMonth": 1 + }, + "charges": { + "currency": "USD", + "value": 0.00 + }, + "chargesInBillingCurrency": { + "exchangeRate": 5000.00, + "exchangeRateMonth": 1 + }, + "closedBalance": { + "currency": "USD", + "value": 600.00 + }, + "closedBalanceInBillingCurrency": { + "exchangeRate": 5000.00, + "exchangeRateMonth": 1 + }, + "eventType": "ExpiredCredit", + "invoiceNumber": "" + } + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/1234:5678/billingProfiles/4268/providers/Microsoft.Consumption/events/event4", + "name": "event4", + "type": "Microsoft.Consumption/events", + "properties": { + "transactionDate": "2021-05-01T00:00:00Z", + "description": "Settled invoice #212033", + "creditCurrency": "USD", + "reseller": { + "resellerId": "/providers/Microsoft.Billing/billingAccounts/1234:5678/billingProfiles/2468/providers/Microsoft.Consumption/reseller/reseller1", + "resellerDescription": "Reseller information" + }, + "billingCurrency": "USD", + "newCredit": { + "currency": "USD", + "value": 300.00 + }, + "newCreditInBillingCurrency": { + "exchangeRate": 5000.00, + "exchangeRateMonth": 1 + }, + "canceledCredit": { + "currency": "USD", + "value": 5000 + }, + "adjustments": { + "currency": "USD", + "value": -200.00 + }, + "adjustmentsInBillingCurrency": { + "exchangeRate": 5000.00, + "exchangeRateMonth": 1 + }, + "creditExpired": { + "currency": "USD", + "value": 100.00 + }, + "creditExpiredInBillingCurrency": { + "exchangeRate": 5000.00, + "exchangeRateMonth": 1 + }, + "charges": { + "currency": "USD", + "value": 300.00 + }, + "chargesInBillingCurrency": { + "exchangeRate": 5000.00, + "exchangeRateMonth": 1 + }, + "closedBalance": { + "currency": "USD", + "value": 700.00 + }, + "closedBalanceInBillingCurrency": { + "exchangeRate": 5000.00, + "exchangeRateMonth": 1 + }, + "eventType": "SettledCharges", + "invoiceNumber": "3303" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ForecastsList.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ForecastsList.json new file mode 100644 index 000000000000..90f4742fb897 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ForecastsList.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/providers/Microsoft.Consumption/forecasts/forecastId1", + "name": "forecastId1", + "type": "Microsoft.Consumption/forecasts", + "properties": { + "usageDate": "2018-04-01", + "grain": "Daily", + "charge": 752.000000, + "currency": "USD", + "chargeType": "Actual", + "confidenceLevels": null + } + }, + { + "id": "/subscriptions/subid/providers/Microsoft.Consumption/forecasts/forecastId2", + "name": "forecastId2", + "type": "Microsoft.Consumption/forecasts", + "properties": { + "usageDate": "2018-04-02", + "grain": "Daily", + "charge": 753.809074, + "currency": "USD", + "chargeType": "Forecast", + "confidenceLevels": [ + { + "percentage": 95, + "bound": "Upper", + "value": 1165.951737 + }, + { + "percentage": 95, + "bound": "Lower", + "value": 340.753404 + } + ] + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ForecastsListFilterByDates.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ForecastsListFilterByDates.json new file mode 100644 index 000000000000..72cd1be8ebb3 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ForecastsListFilterByDates.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "$filter": "properties/usagedate ge '2018-04-01' AND properties/usagedate le '2018-04-02'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/providers/Microsoft.Consumption/forecasts/forecastId1", + "name": "forecastId1", + "type": "Microsoft.Consumption/forecasts", + "properties": { + "usageDate": "2018-04-01", + "grain": "Daily", + "charge": 752.000000, + "currency": "USD", + "chargeType": "Actual", + "confidenceLevels": null + } + }, + { + "id": "/subscriptions/subid/providers/Microsoft.Consumption/forecasts/forecastId2", + "name": "forecastId2", + "type": "Microsoft.Consumption/forecasts", + "properties": { + "usageDate": "2018-04-02", + "grain": "Daily", + "charge": 753.809074, + "currency": "USD", + "chargeType": "Forecast", + "confidenceLevels": [ + { + "percentage": 95, + "bound": "Upper", + "value": 1165.951737 + }, + { + "percentage": 95, + "bound": "Lower", + "value": 340.753404 + } + ] + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ForecastsListFilterByGrain.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ForecastsListFilterByGrain.json new file mode 100644 index 000000000000..8b429c10c874 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ForecastsListFilterByGrain.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "$filter": "properties/Grain eq 'Monthly'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/providers/Microsoft.Consumption/forecasts/forecastId1", + "name": "forecastId1", + "type": "Microsoft.Consumption/forecasts", + "properties": { + "usageDate": "2018-04-01", + "grain": "Monthly", + "charge": 752.000000, + "currency": "USD", + "chargeType": "Actual", + "confidenceLevels": null + } + }, + { + "id": "/subscriptions/subid/providers/Microsoft.Consumption/forecasts/forecastId2", + "name": "forecastId2", + "type": "Microsoft.Consumption/forecasts", + "properties": { + "usageDate": "2018-05-01", + "grain": "Monthly", + "charge": 753.809074, + "currency": "USD", + "chargeType": "Forecast", + "confidenceLevels": [ + { + "percentage": 95, + "bound": "Upper", + "value": 1165.951737 + }, + { + "percentage": 95, + "bound": "Lower", + "value": 340.753404 + } + ] + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/LotsListByBillingAccount.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/LotsListByBillingAccount.json new file mode 100644 index 000000000000..46577725a184 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/LotsListByBillingAccount.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "billingAccountId": "1234:5678" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/1234:5678/billingProfiles/2468/providers/Microsoft.Consumption/lots/lot1", + "name": "lot1", + "type": "Microsoft.Consumption/lots", + "properties": { + "originalAmount": { + "currency": "USD", + "value": 5000.00 + }, + "closedBalance": { + "currency": "USD", + "value": 60.90 + }, + "source": "ConsumptionCommitment", + "startDate": "2019-10-01T00:00:00Z", + "expirationDate": "2019-11-01T00:00:00Z", + "purchaseDate": "2019-09-01T00:00:00Z", + "status": "Active" + } + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/1234:5678/billingProfiles/2468/providers/Microsoft.Consumption/lots/lot2", + "name": "lot2", + "type": "Microsoft.Consumption/lots", + "properties": { + "originalAmount": { + "currency": "USD", + "value": 6000.00 + }, + "closedBalance": { + "currency": "USD", + "value": 80.90 + }, + "source": "ConsumptionCommitment", + "startDate": "2019-11-01T00:00:00Z", + "expirationDate": "2019-12-31T00:00:00Z", + "purchaseDate": "2019-09-01T00:00:00Z", + "status": "Expired" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/LotsListByBillingAccountWithFilters.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/LotsListByBillingAccountWithFilters.json new file mode 100644 index 000000000000..bdc9acf1bd18 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/LotsListByBillingAccountWithFilters.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "billingAccountId": "1234:5678", + "$filter": "status eq 'active' AND source eq 'consumptioncommitment'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/1234:5678/billingProfiles/2468/providers/Microsoft.Consumption/lots/lot1", + "name": "lot1", + "type": "Microsoft.Consumption/lots", + "properties": { + "originalAmount": { + "currency": "USD", + "value": 5000.00 + }, + "closedBalance": { + "currency": "USD", + "value": 60.90 + }, + "source": "ConsumptionCommitment", + "startDate": "2019-10-01T00:00:00Z", + "expirationDate": "2019-11-01T00:00:00Z", + "purchaseDate": "2019-09-01T00:00:00Z", + "status": "Active" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/LotsListByBillingProfile.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/LotsListByBillingProfile.json new file mode 100644 index 000000000000..9d7a66b8aa02 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/LotsListByBillingProfile.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "billingAccountId": "1234:5678", + "billingProfileId": "2468" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/1234:5678/billingProfiles/2468/providers/Microsoft.Consumption/lots/lot1", + "name": "lot1", + "type": "Microsoft.Consumption/lots", + "properties": { + "creditCurrency": "USD", + "billingCurrency": "USD", + "originalAmount": { + "currency": "USD", + "value": 5000.00 + }, + "originalAmountInBillingCurrency": { + "exchangeRate": 5000.00, + "exchangeRateMonth": 1 + }, + "closedBalance": { + "currency": "USD", + "value": 60.90 + }, + "closedBalanceInBillingCurrency": { + "exchangeRate": 5000.00, + "exchangeRateMonth": 1 + }, + "reseller": { + "resellerId": "/providers/Microsoft.Billing/billingAccounts/1234:5678/billingProfiles/2468/providers/Microsoft.Consumption/reseller/reseller1", + "resellerDescription": "Reseller information." + }, + "source": "PurchasedCredit", + "startDate": "2021-05-01T00:00:00Z", + "expirationDate": "2021-05-01T00:00:00Z", + "poNumber": "3524" + } + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/1234:5678/billingProfiles/2468/providers/Microsoft.Consumption/lots/lot2", + "name": "lot2", + "type": "Microsoft.Consumption/lots", + "properties": { + "creditCurrency": "USD", + "billingCurrency": "USD", + "originalAmount": { + "currency": "USD", + "value": 6000.00 + }, + "originalAmountInBillingCurrency": { + "exchangeRate": 5000.00, + "exchangeRateMonth": 1 + }, + "closedBalance": { + "currency": "USD", + "value": 80.90 + }, + "closedBalanceInBillingCurrency": { + "exchangeRate": 5000.00, + "exchangeRateMonth": 1 + }, + "reseller": { + "resellerId": "/providers/Microsoft.Billing/billingAccounts/1234:5678/billingProfiles/2468/providers/Microsoft.Consumption/reseller/reseller2", + "resellerDescription": "Reseller information." + }, + "source": "PurchasedCredit", + "startDate": "2021-05-01T00:00:00Z", + "expirationDate": "2019-12-31T00:00:00Z", + "poNumber": "31224" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/MarketplacesByBillingAccountList.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/MarketplacesByBillingAccountList.json new file mode 100644 index 000000000000..3473968bd0dd --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/MarketplacesByBillingAccountList.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "scope": "providers/Microsoft.Billing/billingAccounts/123456", + "billingAccountId": "123456" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/123456/providers/Microsoft.Billing/billingPeriods/201702/providers/Microsoft.Consumption/marketplaces/marketplaceId1", + "name": "marketplaceId1", + "type": "Microsoft.Consumption/marketPlaces", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "accountName": "Account1", + "additionalProperties": "additionalProperties", + "costCenter": "Center1", + "departmentName": "Department1", + "billingPeriodId": "/providers/Microsoft.Billing/billingAccounts/123456/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", + "unitOfMeasure": "10 Hours", + "isRecurringCharge": false + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/MarketplacesByBillingAccountListForBillingPeriod.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/MarketplacesByBillingAccountListForBillingPeriod.json new file mode 100644 index 000000000000..2a23d5961918 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/MarketplacesByBillingAccountListForBillingPeriod.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "billingAccountId": "123456", + "scope": "providers/Microsoft.Billing/billingAccounts/123456", + "billingPeriodName": "201702" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Billing/billingAccounts/123456/providers/Microsoft.Billing/billingPeriods/201702/providers/Microsoft.Consumption/marketplaces/marketplaceId1", + "name": "marketplacesId1", + "type": "Microsoft.Consumption/marketPlaces", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "accountName": "Account1", + "additionalProperties": "additionalProperties", + "costCenter": "Center1", + "departmentName": "Department1", + "billingPeriodId": "/providers/Microsoft.Billing/billingAccounts/123456/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", + "unitOfMeasure": "10 Hours", + "isRecurringCharge": false + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/MarketplacesByDepartmentList.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/MarketplacesByDepartmentList.json new file mode 100644 index 000000000000..192b0437a76a --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/MarketplacesByDepartmentList.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "departmentId": "123456", + "billingPeriodName": "201702", + "scope": "providers/Microsoft.Billing/departments/123456" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/departments/123456/providers/Microsoft.Billing/billingPeriods/201702/providers/Microsoft.Consumption/marketplaces/marketplaceId1", + "name": "marketplacesId1", + "type": "Microsoft.Consumption/marketPlaces", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "accountName": "Account1", + "additionalProperties": "additionalProperties", + "costCenter": "Center1", + "departmentName": "Department1", + "billingPeriodId": "/providers/Microsoft.Billing/departments/123456/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", + "unitOfMeasure": "10 Hours", + "isRecurringCharge": false + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/MarketplacesByDepartment_ListByBillingPeriod.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/MarketplacesByDepartment_ListByBillingPeriod.json new file mode 100644 index 000000000000..192b0437a76a --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/MarketplacesByDepartment_ListByBillingPeriod.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "departmentId": "123456", + "billingPeriodName": "201702", + "scope": "providers/Microsoft.Billing/departments/123456" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/departments/123456/providers/Microsoft.Billing/billingPeriods/201702/providers/Microsoft.Consumption/marketplaces/marketplaceId1", + "name": "marketplacesId1", + "type": "Microsoft.Consumption/marketPlaces", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "accountName": "Account1", + "additionalProperties": "additionalProperties", + "costCenter": "Center1", + "departmentName": "Department1", + "billingPeriodId": "/providers/Microsoft.Billing/departments/123456/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", + "unitOfMeasure": "10 Hours", + "isRecurringCharge": false + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/MarketplacesByEnrollmentAccountList.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/MarketplacesByEnrollmentAccountList.json new file mode 100644 index 000000000000..553d9e3c14a5 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/MarketplacesByEnrollmentAccountList.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "enrollmentAccountId": "123456", + "billingPeriodName": "201702", + "scope": "providers/Microsoft.Billing/enrollmentAccounts/123456" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/enrollmentAccounts/123456/providers/Microsoft.Billing/billingPeriods/201702/providers/Microsoft.Consumption/marketplaces/marketplaceId1", + "name": "marketplacesId1", + "type": "Microsoft.Consumption/marketPlaces", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "accountName": "Account1", + "additionalProperties": "additionalProperties", + "costCenter": "Center1", + "departmentName": "Department1", + "billingPeriodId": "/providers/Microsoft.Billing/enrollmentAccounts/123456/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", + "unitOfMeasure": "10 Hours", + "isRecurringCharge": false + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/MarketplacesByEnrollmentAccounts_ListByBillingPeriod.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/MarketplacesByEnrollmentAccounts_ListByBillingPeriod.json new file mode 100644 index 000000000000..553d9e3c14a5 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/MarketplacesByEnrollmentAccounts_ListByBillingPeriod.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "enrollmentAccountId": "123456", + "billingPeriodName": "201702", + "scope": "providers/Microsoft.Billing/enrollmentAccounts/123456" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/enrollmentAccounts/123456/providers/Microsoft.Billing/billingPeriods/201702/providers/Microsoft.Consumption/marketplaces/marketplaceId1", + "name": "marketplacesId1", + "type": "Microsoft.Consumption/marketPlaces", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "accountName": "Account1", + "additionalProperties": "additionalProperties", + "costCenter": "Center1", + "departmentName": "Department1", + "billingPeriodId": "/providers/Microsoft.Billing/enrollmentAccounts/123456/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", + "unitOfMeasure": "10 Hours", + "isRecurringCharge": false + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/MarketplacesByManagementGroupList.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/MarketplacesByManagementGroupList.json new file mode 100644 index 000000000000..cbe1148b9d7c --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/MarketplacesByManagementGroupList.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "managementGroupId": "managementGroupForTest", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201810/providers/Microsoft.Consumption/marketplaces/marketplaceId1", + "name": "marketplacesId1", + "type": "Microsoft.Consumption/marketPlaces", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "accountName": "Account1", + "additionalProperties": "additionalProperties", + "costCenter": "Center1", + "departmentName": "Department1", + "billingPeriodId": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201810", + "usageStart": "2018-10-13T00:00:00Z", + "usageEnd": "2018-10-13T23:59:59Z", + "instanceName": "shared1", + "instanceId": "/subscriptions/00000000-0000-0000-0000-000000000000/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", + "unitOfMeasure": "10 Hours", + "isRecurringCharge": false + } + }, + { + "id": "/subscriptions/11111111-1111-1111-1111-111111111111/providers/Microsoft.Billing/billingPeriods/201810/providers/Microsoft.Consumption/marketplaces/marketplaceId2", + "name": "marketplacesId2", + "type": "Microsoft.Consumption/marketPlaces", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "accountName": "Account2", + "additionalProperties": "additionalProperties", + "costCenter": "Center2", + "departmentName": "Department2", + "billingPeriodId": "/subscriptions/11111111-1111-1111-1111-111111111111/providers/Microsoft.Billing/billingPeriods/201810", + "usageStart": "2018-10-13T00:00:00Z", + "usageEnd": "2018-10-13T23:59:59Z", + "instanceName": "shared2", + "instanceId": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/Default-Web-eastasia/providers/Microsoft.Web/sites/shared2", + "currency": "USD", + "consumedQuantity": 0.00328, + "pretaxCost": 0.67, + "isEstimated": false, + "meterId": "11111111-1111-1111-1111-111111111111", + "offerName": "offer1", + "resourceGroup": "TEST", + "orderNumber": "11111111-1111-1111-1111-111111111111", + "publisherName": "xyz", + "planName": "plan2", + "resourceRate": 0.24, + "subscriptionGuid": "11111111-1111-1111-1111-111111111111", + "subscriptionName": "azure subscription", + "unitOfMeasure": "10 Hours", + "isRecurringCharge": false + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/MarketplacesByManagementGroup_ListForBillingPeriod.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/MarketplacesByManagementGroup_ListForBillingPeriod.json new file mode 100644 index 000000000000..c34b8a7402e8 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/MarketplacesByManagementGroup_ListForBillingPeriod.json @@ -0,0 +1,86 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "managementGroupId": "managementGroupForTest", + "billingPeriodName": "201808", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201808/providers/Microsoft.Consumption/marketplaces/marketplaceId1", + "name": "marketplacesId1", + "type": "Microsoft.Consumption/marketPlaces", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "accountName": "Account1", + "additionalProperties": "additionalProperties", + "costCenter": "Center1", + "departmentName": "Department1", + "billingPeriodId": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201808", + "usageStart": "2018-08-13T00:00:00Z", + "usageEnd": "2018-08-13T23:59:59Z", + "instanceName": "shared1", + "instanceId": "/subscriptions/00000000-0000-0000-0000-000000000000/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", + "unitOfMeasure": "10 Hours", + "isRecurringCharge": false + } + }, + { + "id": "/subscriptions/11111111-1111-1111-1111-111111111111/providers/Microsoft.Billing/billingPeriods/201808/providers/Microsoft.Consumption/marketplaces/marketplaceId2", + "name": "marketplacesId2", + "type": "Microsoft.Consumption/marketPlaces", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "accountName": "Account2", + "additionalProperties": "additionalProperties", + "costCenter": "Center2", + "departmentName": "Department2", + "billingPeriodId": "/subscriptions/11111111-1111-1111-1111-111111111111/providers/Microsoft.Billing/billingPeriods/201810", + "usageStart": "2018-08-13T00:00:00Z", + "usageEnd": "2018-08-13T23:59:59Z", + "instanceName": "shared2", + "instanceId": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/Default-Web-eastasia/providers/Microsoft.Web/sites/shared2", + "currency": "USD", + "consumedQuantity": 0.00328, + "pretaxCost": 0.67, + "isEstimated": false, + "meterId": "11111111-1111-1111-1111-111111111111", + "offerName": "offer1", + "resourceGroup": "TEST", + "orderNumber": "11111111-1111-1111-1111-111111111111", + "publisherName": "xyz", + "planName": "plan2", + "resourceRate": 0.24, + "subscriptionGuid": "11111111-1111-1111-1111-111111111111", + "subscriptionName": "azure subscription", + "unitOfMeasure": "10 Hours", + "isRecurringCharge": false + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/MarketplacesList.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/MarketplacesList.json new file mode 100644 index 000000000000..733dcd10e04d --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/MarketplacesList.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "subscriptionId": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201702/providers/Microsoft.Consumption/marketPlaces/marketplaceId1", + "name": "marketplaceId1", + "type": "Microsoft.Consumption/marketPlaces", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "accountName": "Account1", + "additionalProperties": "additionalProperties", + "costCenter": "Center1", + "departmentName": "Department1", + "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", + "unitOfMeasure": "10 Hours", + "isRecurringCharge": false + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/MarketplacesListForBillingPeriod.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/MarketplacesListForBillingPeriod.json new file mode 100644 index 000000000000..482c424be9e0 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/MarketplacesListForBillingPeriod.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "scope": "subscriptions/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": { + "accountName": "Account1", + "additionalProperties": "additionalProperties", + "costCenter": "Center1", + "departmentName": "Department1", + "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", + "unitOfMeasure": "10 Hours", + "isRecurringCharge": false + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/PriceSheet.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/PriceSheet.json new file mode 100644 index 000000000000..2d38dba7fac5 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/PriceSheet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000" + }, + "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", + "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", + "offerId": "OfferId 1" + } + ] + } + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/PriceSheetExpand.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/PriceSheetExpand.json new file mode 100644 index 000000000000..88401034ad86 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/PriceSheetExpand.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "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", + "offerId": "OfferId 1", + "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/2021-05-01/examples/PriceSheetForBillingPeriod.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/PriceSheetForBillingPeriod.json new file mode 100644 index 000000000000..0fdc581b9c17 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/PriceSheetForBillingPeriod.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "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", + "offerId": "OfferId 1" + } + ] + } + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationDetails.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationDetails.json new file mode 100644 index 000000000000..6771de392f70 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationDetails.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "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, + "instanceFlexibilityGroup": "DSv2 Series", + "instanceFlexibilityRatio": "0.25" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationDetailsByBillingAccountId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationDetailsByBillingAccountId.json new file mode 100644 index 000000000000..fb65f5948dd2 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationDetailsByBillingAccountId.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "scope": "providers/Microsoft.Billing/billingAccounts/12345", + "$filter": "properties/usageDate ge 2017-10-01 AND properties/usageDate le 2017-12-05" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/12345/providers/Microsoft.Consumption/reservationDetails/reservationDetails_Id1", + "name": "reservationDetails_Id1", + "type": "Microsoft.Consumption/reservationDetails", + "tags": null, + "properties": { + "reservationOrderId": "00000000-0000-0000-0000-000000000000", + "reservationId": "00000000-0000-0000-0000-000000000000", + "usageDate": "2017-11-30T00:00:00-08:00", + "skuName": "Standard_D2s_v3", + "instanceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sqlh1/providers/microsoft.compute/virtualmachines/sqlh1", + "totalReservedQuantity": 0, + "reservedHours": 48, + "usedHours": 0.6, + "instanceFlexibilityGroup": "DSv3 Series", + "instanceFlexibilityRatio": "1" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationDetailsByBillingProfileId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationDetailsByBillingProfileId.json new file mode 100644 index 000000000000..116a474262ff --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationDetailsByBillingProfileId.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "scope": "providers/Microsoft.Billing/billingAccounts/12345:2468/billingProfiles/13579", + "startDate": "2019-09-01", + "endDate": "2019-10-31" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/12345:2468/billingProfiles/13579/providers/Microsoft.Consumption/reservationDetails/reservationDetails_Id1", + "name": "reservationDetails_Id1", + "type": "Microsoft.Consumption/reservationDetails", + "tags": null, + "properties": { + "reservationOrderId": "00000000-0000-0000-0000-000000000000", + "reservationId": "00000000-0000-0000-0000-000000000000", + "usageDate": "2019-09-30T00:00:00-08:00", + "skuName": "Standard_D2s_v3", + "instanceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sqlh1/providers/microsoft.compute/virtualmachines/sqlh1", + "totalReservedQuantity": 0, + "reservedHours": 48, + "usedHours": 0.6, + "instanceFlexibilityGroup": "DSv3 Series", + "instanceFlexibilityRatio": "1" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationDetailsByBillingProfileIdReservationId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationDetailsByBillingProfileIdReservationId.json new file mode 100644 index 000000000000..89072831186f --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationDetailsByBillingProfileIdReservationId.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "scope": "providers/Microsoft.Billing/billingAccounts/12345:2468/billingProfiles/13579", + "startDate": "2019-09-01", + "endDate": "2019-10-31", + "reservationId": "1c6b6358-709f-484c-85f1-72e862a0cf3b", + "reservationOrderId": "9f39ba10-794f-4dcb-8f4b-8d0cb47c27dc" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/12345:2468/billingProfiles/13579/providers/Microsoft.Consumption/reservationDetails/reservationDetails_Id1", + "name": "reservationDetails_Id1", + "type": "Microsoft.Consumption/reservationDetails", + "tags": null, + "properties": { + "reservationOrderId": "9f39ba10-794f-4dcb-8f4b-8d0cb47c27dc", + "reservationId": "1c6b6358-709f-484c-85f1-72e862a0cf3b", + "usageDate": "2019-09-30T00:00:00-08:00", + "skuName": "Standard_D2s_v3", + "instanceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sqlh1/providers/microsoft.compute/virtualmachines/sqlh1", + "totalReservedQuantity": 0, + "reservedHours": 48, + "usedHours": 0.6, + "instanceFlexibilityGroup": "DSv3 Series", + "instanceFlexibilityRatio": "1" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationDetailsWithReservationId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationDetailsWithReservationId.json new file mode 100644 index 000000000000..66a263a066a1 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationDetailsWithReservationId.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "reservationOrderId": "00000000-0000-0000-0000-000000000000", + "reservationId": "00000000-0000-0000-0000-000000000000", + "$filter": "properties/usageDate ge 2017-10-01 AND properties/usageDate le 2017-12-05" + }, + "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, + "kind": "Reservation", + "instanceFlexibilityGroup": "D2v2 Series", + "instanceFlexibilityRatio": "1" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationRecommendationDetailsByBillingAccount.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationRecommendationDetailsByBillingAccount.json new file mode 100644 index 000000000000..897311774e29 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationRecommendationDetailsByBillingAccount.json @@ -0,0 +1,104 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "billingScope": "providers/Microsoft.Billing/billingAccounts/000000", + "lookBackPeriod": "Last60Days", + "product": "Standard_DS14_v2", + "region": "eastus", + "scope": "Shared", + "term": "P1Y" + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/00000000/providers/microsoft.consumption/reservationrecommendationdetails", + "name": "reservationRecommendationDetails", + "type": "Microsoft.Consumption/ReservationRecommendationDetails", + "properties": { + "currency": "USD", + "resource": { + "appliedScopes": [ + "00000000-0000-0000-0000-00000000", + "00000000-0000-0000-0000-00000000" + ], + "onDemandRate": 1.482, + "product": "Standard_DS14_v2", + "region": "eastus", + "reservationRate": 0.70570776255707, + "resourceType": "virtualmachines" + }, + "resourceGroup": null, + "savings": { + "calculatedSavings": [ + { + "onDemandCost": 529550.326618951, + "overageCost": 63253.5935111345, + "quantity": 220, + "reservationCost": 223102.452054792, + "totalReservationCost": 286356.045565927, + "savings": 243194.281053024 + }, + { + "onDemandCost": 529550.326618950, + "overageCost": 149335.025050147, + "quantity": 179, + "reservationCost": 181524.267808217, + "totalReservationCost": 330859.292858364, + "savings": 198691.033760586 + }, + { + "onDemandCost": 529550.326618950, + "overageCost": 195942.319606957, + "quantity": 157, + "reservationCost": 159214.022602738, + "totalReservationCost": 355156.342209695, + "savings": 174393.984409255 + }, + { + "onDemandCost": 529550.326618950, + "overageCost": 30975.2311896299, + "quantity": 241, + "reservationCost": 244398.595205477, + "totalReservationCost": 275373.826395107, + "savings": 254176.500223843 + } + ], + "lookBackPeriod": 60, + "recommendedQuantity": 253.0, + "reservationOrderTerm": "P1Y", + "savingsType": "instance", + "unitOfMeasure": "hour" + }, + "scope": "Shared", + "usage": { + "firstConsumptionDate": "2019-11-27T00:00:00", + "lastConsumptionDate": "2020-01-25T21:00:00", + "lookBackUnitType": "virtualMachine quantity", + "usageData": [ + 275.95003899999995, + 275.916705, + 276.0, + 276.0, + 275.916725, + 275.916705, + 275.98335299999997, + 276.0, + 276.0, + 276.0, + 276.0, + 276.0, + 275.98335299999997, + 276.0, + 276.0, + 276.0, + 276.0, + 275.933352 + ], + "usageGrain": "hourly" + } + } + } + }, + "204": {} + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationRecommendationDetailsByBillingProfile.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationRecommendationDetailsByBillingProfile.json new file mode 100644 index 000000000000..67805947cde8 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationRecommendationDetailsByBillingProfile.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "billingScope": "providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-00000000:00000000-0000-0000-0000-00000000/billingProfiles/00000000-0000-0000-0000-00000000", + "lookBackPeriod": "Last7Days", + "product": "Standard_B2s", + "region": "australiaeast", + "scope": "Shared", + "term": "P1Y" + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-00000000:00000000-0000-0000-0000-00000000/billingProfiles/00000000-0000-0000-0000-00000000/providers/microsoft.consumption/reservationrecommendationdetails", + "name": "reservationRecommendationDetails", + "type": "Microsoft.Consumption/ReservationRecommendationDetails", + "properties": { + "currency": "AUD", + "resource": { + "appliedScopes": [ + "00000000-0000-0000-0000-00000000" + ], + "onDemandRate": 0.0725, + "product": "Standard_B2s", + "region": "australiaeast", + "reservationRate": 0.044141665317880413, + "resourceType": "virtualmachines" + }, + "resourceGroup": null, + "savings": { + "calculatedSavings": [ + { + "onDemandCost": 632.884472049689441, + "overageCost": 0.0, + "quantity": 1, + "reservationCost": 387.740388152261739, + "totalReservationCost": 387.740388152261739, + "savings": 245.144083897427702 + } + ], + "lookBackPeriod": 7, + "recommendedQuantity": 1.0, + "reservationOrderTerm": "P1Y", + "savingsType": "instance", + "unitOfMeasure": "hour" + }, + "scope": "Shared", + "usage": { + "firstConsumptionDate": "2020-01-19T00:00:00", + "lastConsumptionDate": "2020-01-25T17:00:00", + "lookBackUnitType": "virtualMachine quantity", + "usageData": [ + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 0.0 + ], + "usageGrain": "hourly" + } + } + } + }, + "204": {} + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationRecommendationDetailsByResourceGroup.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationRecommendationDetailsByResourceGroup.json new file mode 100644 index 000000000000..f7dc2f12c28f --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationRecommendationDetailsByResourceGroup.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "billingScope": "subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/testGroup", + "lookBackPeriod": "Last30Days", + "product": "Standard_DS13_v2", + "region": "westus", + "scope": "Single", + "term": "P3Y" + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/testGroup/providers/microsoft.consumption/reservationrecommendationdetails", + "name": "reservationRecommendationDetails", + "type": "Microsoft.Consumption/ReservationRecommendationDetails", + "properties": { + "currency": "USD", + "resource": { + "appliedScopes": [ + "00000000-0000-0000-0000-00000000", + "testGroup" + ], + "onDemandRate": 0.519, + "product": "Standard_DS13_v2", + "region": "westus", + "reservationRate": 0.302549467275493, + "resourceType": "virtualmachines" + }, + "resourceGroup": "testGroup", + "savings": { + "calculatedSavings": [ + { + "onDemandCost": 368.4813602070006, + "overageCost": 0.0, + "quantity": 2, + "reservationCost": 429.01514459665, + "totalReservationCost": 429.01514459665, + "savings": -60.5337843896494 + }, + { + "onDemandCost": 368.481360207000, + "overageCost": 1.557, + "quantity": 1, + "reservationCost": 214.507572298325, + "totalReservationCost": 216.064572298325, + "savings": 152.416787908675 + } + ], + "lookBackPeriod": 30, + "recommendedQuantity": 1.0, + "reservationOrderTerm": "P3Y", + "savingsType": "instance", + "unitOfMeasure": "hour" + }, + "scope": "Single", + "usage": { + "firstConsumptionDate": "2020-02-03T00:00:00", + "lastConsumptionDate": "2020-03-03T13:00:00", + "lookBackUnitType": "virtualMachine quantity", + "usageData": [ + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0 + ], + "usageGrain": "hourly" + } + } + } + }, + "204": {} + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationRecommendationDetailsBySubscription.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationRecommendationDetailsBySubscription.json new file mode 100644 index 000000000000..641cfeaf3564 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationRecommendationDetailsBySubscription.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "billingScope": "subscriptions/00000000-0000-0000-0000-00000000", + "lookBackPeriod": "Last30Days", + "product": "Standard_DS13_v2", + "region": "westus", + "scope": "Single", + "term": "P3Y" + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/00000000-0000-0000-0000-00000000/providers/microsoft.consumption/reservationrecommendationdetails", + "name": "reservationRecommendationDetails", + "type": "Microsoft.Consumption/ReservationRecommendationDetails", + "properties": { + "currency": "USD", + "resource": { + "appliedScopes": [ + "00000000-0000-0000-0000-00000000" + ], + "onDemandRate": 0.519, + "product": "Standard_DS13_v2", + "region": "westus", + "reservationRate": 0.302549467275493, + "resourceType": "virtualmachines" + }, + "resourceGroup": null, + "savings": { + "calculatedSavings": [ + { + "onDemandCost": 368.4813602070006, + "overageCost": 0.0, + "quantity": 2, + "reservationCost": 429.01514459665, + "totalReservationCost": 429.01514459665, + "savings": -60.5337843896494 + }, + { + "onDemandCost": 368.481360207000, + "overageCost": 1.557, + "quantity": 1, + "reservationCost": 214.507572298325, + "totalReservationCost": 216.064572298325, + "savings": 152.416787908675 + } + ], + "lookBackPeriod": 30, + "recommendedQuantity": 1.0, + "reservationOrderTerm": "P3Y", + "savingsType": "instance", + "unitOfMeasure": "hour" + }, + "scope": "Single", + "usage": { + "firstConsumptionDate": "2020-02-03T00:00:00", + "lastConsumptionDate": "2020-03-03T13:00:00", + "lookBackUnitType": "virtualMachine quantity", + "usageData": [ + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0 + ], + "usageGrain": "hourly" + } + } + } + }, + "204": {} + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationRecommendationsByBillingAccount.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationRecommendationsByBillingAccount.json new file mode 100644 index 000000000000..d4df17576ee1 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationRecommendationsByBillingAccount.json @@ -0,0 +1,82 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "scope": "providers/Microsoft.Billing/billingAccounts/123456" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "billingAccount/123456/providers/Microsoft.Consumption/reservationRecommendations/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "type": "Microsoft.Consumption/reservationRecommendations", + "location": "westus", + "sku": "Standard_DS1_v2", + "kind": "legacy", + "properties": { + "meterId": "00000000-0000-0000-0000-000000000000", + "term": "P1Y", + "costWithNoReservedInstances": 12.0785105, + "recommendedQuantity": 1, + "totalCostWithReservedInstances": 11.4899644807748, + "netSavings": 0.588546019225182, + "firstUsageDate": "2019-07-07T00:00:00-07:00", + "scope": "Shared", + "lookBackPeriod": "Last7Days", + "instanceFlexibilityRatio": 1, + "instanceFlexibilityGroup": "DSv2 Series", + "normalizedSize": "Standard_DS1_v2", + "recommendedQuantityNormalized": 1, + "skuProperties": [ + { + "name": "Cores", + "value": "1" + }, + { + "name": "Ram", + "value": "1" + } + ] + } + }, + { + "id": "billingAccount/123456/providers/Microsoft.Consumption/reservationRecommendations/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "type": "Microsoft.Consumption/reservationRecommendations", + "location": "westus", + "sku": "Standard_DS1_v2", + "kind": "legacy", + "properties": { + "meterId": "00000000-0000-0000-0000-000000000000", + "term": "P1Y", + "costWithNoReservedInstances": 10.0785105, + "recommendedQuantity": 1, + "totalCostWithReservedInstances": 13.48, + "netSavings": 0.68, + "firstUsageDate": "2019-07-07T00:00:00-07:00", + "scope": "Shared", + "lookBackPeriod": "Last7Days", + "instanceFlexibilityRatio": 1, + "instanceFlexibilityGroup": "DSv2 Series", + "normalizedSize": "Standard_DS1", + "recommendedQuantityNormalized": 1.2, + "skuProperties": [ + { + "name": "SkuDisplayName", + "value": "B" + }, + { + "name": "CPU", + "value": "1" + } + ] + } + } + ], + "nextLink": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/reservationRecommendations?api-version=2021-05-01&$skiptoken=AQAAAA%3D%3D&" + } + }, + "204": {} + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationRecommendationsByBillingProfile.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationRecommendationsByBillingProfile.json new file mode 100644 index 000000000000..3c21ebae9734 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationRecommendationsByBillingProfile.json @@ -0,0 +1,100 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "scope": "providers/Microsoft.Billing/billingAccounts/123456/billingProfiles/6420" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/123456/billingProfiles/6420/providers/Microsoft.Consumption/reservationRecommendations/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "type": "Microsoft.Consumption/reservationRecommendations", + "location": "westus", + "sku": "Standard_DS1_v2", + "kind": "modern", + "properties": { + "meterId": "00000000-0000-0000-0000-000000000000", + "term": "P1Y", + "costWithNoReservedInstances": { + "currency": "USD", + "value": 1.4749000882 + }, + "recommendedQuantity": 1, + "totalCostWithReservedInstances": { + "currency": "USD", + "value": 1.07665757024628 + }, + "netSavings": { + "currency": "USD", + "value": 0.39824251795372 + }, + "firstUsageDate": "2019-07-07T00:00:00-07:00", + "scope": "Shared", + "lookBackPeriod": 7, + "instanceFlexibilityRatio": 1, + "instanceFlexibilityGroup": "DSv2 Series", + "normalizedSize": "Standard_DS1_v2", + "recommendedQuantityNormalized": 1, + "skuProperties": [ + { + "name": "Cores", + "value": "1" + }, + { + "name": "Ram", + "value": "1" + } + ] + } + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/123456/billingProfiles/6420/providers/Microsoft.Consumption/reservationRecommendations/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "type": "Microsoft.Consumption/reservationRecommendations", + "location": "westus", + "sku": "Standard_DS1_v2", + "kind": "modern", + "properties": { + "meterId": "00000000-0000-0000-0000-000000000000", + "term": "P1Y", + "costWithNoReservedInstances": { + "currency": "USD", + "value": 1.4896 + }, + "recommendedQuantity": 1, + "totalCostWithReservedInstances": { + "currency": "USD", + "value": 1.08265753424628 + }, + "netSavings": { + "currency": "USD", + "value": 0.40694246575372 + }, + "firstUsageDate": "2019-07-07T00:00:00-07:00", + "scope": "Shared", + "lookBackPeriod": 7, + "instanceFlexibilityRatio": 1, + "instanceFlexibilityGroup": "DSv2 Series", + "normalizedSize": "Standard_DS1", + "recommendedQuantityNormalized": 1.2, + "skuProperties": [ + { + "name": "SkuDisplayName", + "value": "B" + }, + { + "name": "CPU", + "value": "1" + } + ] + } + } + ], + "nextLink": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/reservationRecommendations?api-version=2021-05-01&$skiptoken=AQAAAA%3D%3D&" + } + }, + "204": {} + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationRecommendationsByResourceGroup.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationRecommendationsByResourceGroup.json new file mode 100644 index 000000000000..c82cda4bb1b5 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationRecommendationsByResourceGroup.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testGroup" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGrouups/testGroup/providers/Microsoft.Consumption/reservationRecommendations/reservationRecommendations1", + "name": "reservationRecommendations1", + "type": "Microsoft.Consumption/reservationRecommendations", + "sku": "Standard_DS1_v2", + "location": "northeurope", + "kind": "legacy", + "properties": { + "lookBackPeriod": "Last7Days", + "meterId": "00000000-0000-0000-0000-000000000000", + "term": "P1Y", + "costWithNoReservedInstances": 0.0, + "recommendedQuantity": 1, + "totalCostWithReservedInstances": 0.0, + "netSavings": 4.634521202630137, + "firstUsageDate": "2018-03-06T00:00:00Z", + "scope": "Single" + } + }, + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testGroup/providers/Microsoft.Consumption/reservationRecommendations/reservationRecommendations2", + "name": "reservationRecommendations2", + "type": "Microsoft.Consumption/reservationRecommendations", + "sku": "Standard_DS1_v2", + "location": "northeurope", + "kind": "legacy", + "properties": { + "lookBackPeriod": "Last7Days", + "meterId": "00000000-0000-0000-0000-000000000000", + "term": "P3Y", + "costWithNoReservedInstances": 0.0, + "recommendedQuantity": 1, + "totalCostWithReservedInstances": 0.0, + "netSavings": 7.2893157231780812, + "firstUsageDate": "2018-03-06T00:00:00Z", + "scope": "Single" + } + } + ], + "nextLink": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testGroup/providers/Microsoft.Consumption/reservationRecommendations?api-version=2021-05-01&$skiptoken=AQAAAA%3D%3D&" + } + }, + "204": {} + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationRecommendationsBySubscription.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationRecommendationsBySubscription.json new file mode 100644 index 000000000000..0afd29edb4b5 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationRecommendationsBySubscription.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/reservationRecommendations/reservationRecommendations1", + "name": "reservationRecommendations1", + "type": "Microsoft.Consumption/reservationRecommendations", + "sku": "Standard_DS1_v2", + "location": "northeurope", + "kind": "legacy", + "properties": { + "lookBackPeriod": "Last7Days", + "meterId": "00000000-0000-0000-0000-000000000000", + "term": "P1Y", + "costWithNoReservedInstances": 0.0, + "recommendedQuantity": 1, + "totalCostWithReservedInstances": 0.0, + "netSavings": 4.634521202630137, + "firstUsageDate": "2018-03-06T00:00:00Z", + "scope": "Single" + } + }, + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/reservationRecommendations/reservationRecommendations2", + "name": "reservationRecommendations2", + "type": "Microsoft.Consumption/reservationRecommendations", + "sku": "Standard_DS1_v2", + "location": "northeurope", + "kind": "legacy", + "properties": { + "lookBackPeriod": "Last7Days", + "meterId": "00000000-0000-0000-0000-000000000000", + "term": "P3Y", + "costWithNoReservedInstances": 0.0, + "recommendedQuantity": 1, + "totalCostWithReservedInstances": 0.0, + "netSavings": 7.2893157231780812, + "firstUsageDate": "2018-03-06T00:00:00Z", + "scope": "Single" + } + } + ], + "nextLink": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/reservationRecommendations?api-version=2021-05-01&$skiptoken=AQAAAA%3D%3D&" + } + }, + "204": {} + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationRecommendationsFilterBySubscriptionForScopeLookBackPeriod.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationRecommendationsFilterBySubscriptionForScopeLookBackPeriod.json new file mode 100644 index 000000000000..9a504b04f6a8 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationRecommendationsFilterBySubscriptionForScopeLookBackPeriod.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "$filter": "properties/scope eq 'Single' AND properties/lookBackPeriod eq 'Last7Days'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/reservationRecommendations/reservationRecommendations1", + "name": "reservationRecommendations1", + "type": "Microsoft.Consumption/reservationRecommendations", + "sku": "Standard_DS1_v2", + "location": "northeurope", + "kind": "legacy", + "properties": { + "lookBackPeriod": "Last7Days", + "meterId": "00000000-0000-0000-0000-000000000000", + "term": "P1Y", + "costWithNoReservedInstances": 0.0, + "recommendedQuantity": 1, + "totalCostWithReservedInstances": 0.0, + "netSavings": 4.634521202630137, + "firstUsageDate": "2018-03-06T00:00:00Z", + "scope": "Single", + "skuProperties": [ + { + "name": "Cores", + "value": "1" + }, + { + "name": "Ram", + "value": "1" + } + ] + } + }, + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/reservationRecommendations/reservationRecommendations2", + "name": "reservationRecommendations2", + "type": "Microsoft.Consumption/reservationRecommendations", + "sku": "Standard_DS1_v2", + "location": "northeurope", + "kind": "legacy", + "properties": { + "lookBackPeriod": "Last7Days", + "meterId": "00000000-0000-0000-0000-000000000000", + "term": "P3Y", + "costWithNoReservedInstances": 0.0, + "recommendedQuantity": 1, + "totalCostWithReservedInstances": 0.0, + "netSavings": 7.2893157231780812, + "firstUsageDate": "2018-03-06T00:00:00Z", + "scope": "Single", + "skuProperties": [ + { + "name": "SkuDisplayName", + "value": "B" + }, + { + "name": "CPU", + "value": "1" + } + ] + } + } + ], + "nextLink": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/reservationRecommendations?api-version=2021-05-01&$filter=properties/scope+eq+'Single'+AND+properties/lookBackPeriod+eq+'Last7Days'&$skiptoken=AQAAAA%3D%3D&" + } + }, + "204": {} + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationSummariesDaily.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationSummariesDaily.json new file mode 100644 index 000000000000..26b226eddf83 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationSummariesDaily.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "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", + "kind": "Reservation", + "reservedHours": 0.0, + "usageDate": "2017-10-01T00:00:00Z", + "usedHours": 0.0, + "minUtilizationPercentage": 0.0, + "avgUtilizationPercentage": 0.0, + "maxUtilizationPercentage": 0.0, + "purchasedQuantity": 0, + "remainingQuantity": 0, + "totalReservedQuantity": 155, + "usedQuantity": 0, + "utilizedPercentage": 0 + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationSummariesDailyWithBillingAccountId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationSummariesDailyWithBillingAccountId.json new file mode 100644 index 000000000000..fe7cacb30d3e --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationSummariesDailyWithBillingAccountId.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "scope": "providers/Microsoft.Billing/billingAccounts/12345", + "grain": "daily", + "$filter": "properties/usageDate ge 2017-10-01 AND properties/usageDate le 2017-11-20" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/12345/providers/Microsoft.Consumption/reservationSummaries/reservationSummaries_Id1", + "name": "reservationSummaries_Id1", + "type": "Microsoft.Consumption/reservationSummaries", + "tags": null, + "properties": { + "reservationOrderId": "00000000-0000-0000-0000-000000000000", + "reservationId": "00000000-0000-0000-0000-000000000000", + "skuName": "Standard_B1s", + "reservedHours": 720, + "usageDate": "2018-09-01T00:00:00-07:00", + "usedHours": 0, + "minUtilizationPercentage": 0, + "avgUtilizationPercentage": 0, + "maxUtilizationPercentage": 0 + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationSummariesDailyWithBillingProfileId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationSummariesDailyWithBillingProfileId.json new file mode 100644 index 000000000000..33c337b71a4e --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationSummariesDailyWithBillingProfileId.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "scope": "providers/Microsoft.Billing/billingAccounts/12345:2468/billingProfiles/13579", + "grain": "daily", + "startDate": "2017-10-01", + "endDate": "2017-11-20" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/12345:2468/billingProfiles/13579/providers/Microsoft.Consumption/reservationSummaries/reservationSummaries_Id1", + "name": "reservationSummaries_Id1", + "type": "Microsoft.Consumption/reservationSummaries", + "tags": null, + "properties": { + "reservationOrderId": "00000000-0000-0000-0000-000000000000", + "reservationId": "00000000-0000-0000-0000-000000000000", + "skuName": "Standard_B1s", + "reservedHours": 720, + "usageDate": "2018-09-01T00:00:00-07:00", + "usedHours": 0, + "minUtilizationPercentage": 0, + "avgUtilizationPercentage": 0, + "maxUtilizationPercentage": 0 + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationSummariesDailyWithReservationId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationSummariesDailyWithReservationId.json new file mode 100644 index 000000000000..8d78b546686c --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationSummariesDailyWithReservationId.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "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", + "kind": "Reservation", + "reservedHours": 0.0, + "usageDate": "2017-10-01T00:00:00Z", + "usedHours": 0.0, + "minUtilizationPercentage": 0.0, + "avgUtilizationPercentage": 0.0, + "maxUtilizationPercentage": 0.0, + "purchasedQuantity": 0, + "remainingQuantity": 0, + "totalReservedQuantity": 155, + "usedQuantity": 0, + "utilizedPercentage": 0 + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationSummariesMonthly.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationSummariesMonthly.json new file mode 100644 index 000000000000..4453e7a3c6b1 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationSummariesMonthly.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "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", + "kind": "Reservation", + "reservedHours": 0.0, + "usageDate": "2017-10-01T00:00:00Z", + "usedHours": 0.0, + "minUtilizationPercentage": 0.0, + "avgUtilizationPercentage": 0.0, + "maxUtilizationPercentage": 0.0, + "purchasedQuantity": 0, + "remainingQuantity": 0, + "totalReservedQuantity": 155, + "usedQuantity": 0, + "utilizedPercentage": 0 + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationSummariesMonthlyWithBillingAccountId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationSummariesMonthlyWithBillingAccountId.json new file mode 100644 index 000000000000..2954e2887bd0 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationSummariesMonthlyWithBillingAccountId.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "scope": "providers/Microsoft.Billing/billingAccounts/12345", + "grain": "monthly" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/12345/providers/Microsoft.Consumption/reservationSummaries/reservationSummaries_Id1", + "name": "reservationSummaries_Id1", + "type": "Microsoft.Consumption/reservationSummaries", + "tags": null, + "properties": { + "reservationOrderId": "00000000-0000-0000-0000-000000000000", + "reservationId": "00000000-0000-0000-0000-000000000000", + "skuName": "Standard_B1s", + "reservedHours": 720, + "usageDate": "2018-09-01T00:00:00-07:00", + "usedHours": 0, + "minUtilizationPercentage": 0, + "avgUtilizationPercentage": 0, + "maxUtilizationPercentage": 0 + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationSummariesMonthlyWithBillingProfileId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationSummariesMonthlyWithBillingProfileId.json new file mode 100644 index 000000000000..230f7f969082 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationSummariesMonthlyWithBillingProfileId.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "scope": "providers/Microsoft.Billing/billingAccounts/12345:2468/billingProfiles/13579", + "grain": "monthly" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/12345:2468/billingProfiles/13579/providers/Microsoft.Consumption/reservationSummaries/reservationSummaries_Id1", + "name": "reservationSummaries_Id1", + "type": "Microsoft.Consumption/reservationSummaries", + "tags": null, + "properties": { + "reservationOrderId": "00000000-0000-0000-0000-000000000000", + "reservationId": "00000000-0000-0000-0000-000000000000", + "skuName": "Standard_B1s", + "reservedHours": 720, + "usageDate": "2018-09-01T00:00:00-07:00", + "usedHours": 0, + "minUtilizationPercentage": 0, + "avgUtilizationPercentage": 0, + "maxUtilizationPercentage": 0 + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationSummariesMonthlyWithBillingProfileIdReservationId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationSummariesMonthlyWithBillingProfileIdReservationId.json new file mode 100644 index 000000000000..c8f562720f51 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationSummariesMonthlyWithBillingProfileIdReservationId.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "scope": "providers/Microsoft.Billing/billingAccounts/12345:2468/billingProfiles/13579", + "grain": "monthly", + "reservationId": "1c6b6358-709f-484c-85f1-72e862a0cf3b", + "reservationOrderId": "9f39ba10-794f-4dcb-8f4b-8d0cb47c27dc" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/12345:2468/billingProfiles/13579/providers/Microsoft.Consumption/reservationSummaries/reservationSummaries_Id1", + "name": "reservationSummaries_Id1", + "type": "Microsoft.Consumption/reservationSummaries", + "tags": null, + "properties": { + "reservationOrderId": "9f39ba10-794f-4dcb-8f4b-8d0cb47c27dc", + "reservationId": "1c6b6358-709f-484c-85f1-72e862a0cf3b", + "skuName": "Standard_B1s", + "reservedHours": 720, + "usageDate": "2018-09-01T00:00:00-07:00", + "usedHours": 0, + "minUtilizationPercentage": 0, + "avgUtilizationPercentage": 0, + "maxUtilizationPercentage": 0 + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationSummariesMonthlyWithReservationId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationSummariesMonthlyWithReservationId.json new file mode 100644 index 000000000000..8d9c190aeeca --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationSummariesMonthlyWithReservationId.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "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", + "kind": "Reservation", + "reservedHours": 0.0, + "usageDate": "2017-10-01T00:00:00Z", + "usedHours": 0.0, + "minUtilizationPercentage": 0.0, + "avgUtilizationPercentage": 0.0, + "maxUtilizationPercentage": 0.0, + "purchasedQuantity": 0, + "remainingQuantity": 0, + "totalReservedQuantity": 155, + "usedQuantity": 0, + "utilizedPercentage": 0 + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationTransactionsListByBillingProfileId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationTransactionsListByBillingProfileId.json new file mode 100644 index 000000000000..b925a92a0214 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationTransactionsListByBillingProfileId.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "$filter": "properties/eventDate+ge+2020-05-20+AND+properties/eventDate+le+2020-05-30", + "billingAccountId": "fcebaabc-fced-4284-a83d-79f83dee183c:45796ba8-988f-45ad-bea9-7b71fc6c7513_2018-09-30", + "billingProfileId": "Z76D-SGAF-BG7-TGB" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/fcebaabc-fced-4284-a83d-79f83dee183c:45796ba8-988f-45ad-bea9-7b71fc6c7513_2018-09-30/billingProfiles/Z76D-SGAF-BG7-TGB/providers/Microsoft.Consumption/reservationTransactions", + "name": "a838a8c3-a408-49e1-ac90-42cb95bff9b2", + "type": "Microsoft.Consumption/reservationTransactions", + "properties": { + "eventDate": "2020-04-25T21:21:38Z", + "reservationOrderId": "a838a8c3-a408-49e1-ac90-42cb95bff9b2", + "description": "Reserved VM Instance, Standard_B1ls, US East, 3 Years", + "eventType": "Purchase", + "quantity": 1, + "amount": 1.44, + "currency": "USD", + "reservationOrderName": "VM_RI_03-25-2020_14-18", + "armSkuName": "Standard_B1ls", + "billingFrequency": "Recurring", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/fcebaabc-fced-4284-a83d-79f83dee183c:45796ba8-988f-45ad-bea9-7b71fc6c7513_2018-09-30/billingProfiles/Z76D-SGAF-BG7-TGB", + "billingProfileName": "IT Department*", + "invoice": "T000456437", + "invoiceId": "/providers/Microsoft.Billing/billingAccounts/fcebaabc-fced-4284-a83d-79f83dee183c:45796ba8-988f-45ad-bea9-7b71fc6c7513_2018-09-30/billingProfiles/Z76D-SGAF-BG7-TGB/invoices/T000456437", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/fcebaabc-fced-4284-a83d-79f83dee183c:45796ba8-988f-45ad-bea9-7b71fc6c7513_2018-09-30/invoiceSections/QBTB-EYAK-PJA-TGB", + "invoiceSectionName": "IT Department", + "purchasingSubscriptionGuid": "d924ad15-4a3d-4047-971d-c8b1b300a97b", + "purchasingSubscriptionName": "contoso", + "region": "eastus", + "term": "P3Y" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationTransactionsListByEnrollmentNumber.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationTransactionsListByEnrollmentNumber.json new file mode 100644 index 000000000000..9e2bfc259508 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/ReservationTransactionsListByEnrollmentNumber.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "$filter": "properties/eventDate+ge+2020-05-20+AND+properties/eventDate+le+2020-05-30", + "billingAccountId": "123456" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/billingAccounts/123456/providers/Microsoft.Consumption/reservationtransactions/201909091919", + "name": "201909091919", + "type": "Microsoft.Consumption/reservationTransactions", + "tags": [], + "properties": { + "eventDate": "2019-09-09T19:19:04Z", + "reservationOrderId": "00000000-0000-0000-0000-000000000000", + "description": "Standard_DS1_v2 westus 1 Year", + "eventType": "Cancel", + "quantity": 1, + "amount": -21.000000000000000, + "currency": "USD", + "reservationOrderName": "Transaction-DS1_v2", + "purchasingEnrollment": "123456", + "armSkuName": "Standard_DS1_v2", + "term": "P1Y", + "region": "westus", + "purchasingSubscriptionGuid": "11111111-1111-1111-1111-11111111111", + "purchasingSubscriptionName": "Infrastructure Subscription", + "accountName": "Microsoft Infrastructure", + "accountOwnerEmail": "admin@microsoft.com", + "departmentName": "Unassigned", + "costCenter": "", + "currentEnrollment": "123456", + "billingFrequency": "recurring" + } + }, + { + "id": "/billingAccounts/123456/providers/Microsoft.Consumption/reservationtransactions/201909091919", + "name": "201909091919", + "type": "Microsoft.Consumption/reservationTransactions", + "tags": [], + "properties": { + "eventDate": "2019-09-09T19:19:04Z", + "reservationOrderId": "00000000-0000-0000-0000-000000000000", + "description": "Standard_DS1_v2 westus 1 Year", + "eventType": "Purchase", + "quantity": 1, + "amount": 21.000000000000000, + "currency": "USD", + "reservationOrderName": "Transaction-DS1_v2", + "purchasingEnrollment": "123456", + "armSkuName": "Standard_DS1_v2", + "term": "P1Y", + "region": "westus", + "purchasingSubscriptionGuid": "11111111-1111-1111-1111-11111111111", + "purchasingSubscriptionName": "Infrastructure Subscription", + "accountName": "Microsoft Infrastructure", + "accountOwnerEmail": "admin@microsoft.com", + "departmentName": "Unassigned", + "costCenter": "", + "currentEnrollment": "123456", + "billingFrequency": "recurring" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/Tags.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/Tags.json new file mode 100644 index 000000000000..9ccf2be6db1f --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/Tags.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "billingAccountId": "12345", + "scope": "providers/Microsoft.CostManagement/billingAccounts/1234" + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.CostManagement/billingAccounts/{billingaccount-id}/providers/Microsoft.Consumption/tags/tags1", + "name": "tags1", + "type": "Microsoft.Consumption/tags", + "eTag": "\"1d34d012214157f\"", + "properties": { + "tags": [ + { + "key": "Department" + }, + { + "key": "CostCenter" + }, + { + "key": "Portal" + }, + { + "key": "OrgName" + }, + { + "key": "Namespace" + }, + { + "key": "resourceType" + }, + { + "key": "Subsystem" + }, + { + "key": "Environment" + }, + { + "key": "clusterName" + } + ], + "nextLink": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/{billingaccount-id}/providers/Microsoft.Consumption/tags/?$expand=properties/tags/value&api-version=2021-05-01&startDate=2020-12-01&endDate=2020-12-31&$top=1000&$skiptoken=AwAAAA%3D%3D", + "previousLink": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/{billingaccount-id}/providers/Microsoft.Consumption/tags/?$expand=properties/tags/value&api-version=2021-05-01&startDate=2020-12-01&endDate=2020-12-31&$top=1000&$skiptoken=AQAAAA%3D%3D" + } + } + }, + "204": {} + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsExpand.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsExpand.json new file mode 100644 index 000000000000..02d280745f4c --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsExpand.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "billingPeriodName": "201903", + "$expand": "meterDetails,additionalInfo", + "$filter": "tags eq 'dev:tools'", + "$top": 1 + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201903/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1", + "name": "usageDetails_Id1", + "type": "Microsoft.Consumption/usageDetails", + "kind": "legacy", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "billingAccountId": "xxxxxxxx", + "billingAccountName": "Account Name 1", + "billingPeriodStartDate": "2019-03-01T00:00:00.0000000Z", + "billingPeriodEndDate": "2019-03-31T00:00:00.0000000Z", + "billingProfileId": "xxxxxxxx", + "billingProfileName": "Account Name 1", + "accountName": "Account Name 1", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "Subscription Name 1", + "date": "2019-03-30T00:00:00.0000000Z", + "product": "Product Name 1", + "partNumber": "Part Number 1", + "meterId": "00000000-0000-0000-0000-000000000000", + "meterDetails": { + "meterName": "Data Transfer Out (GB)", + "meterCategory": "Networking", + "meterSubCategory": "ExpressRoute", + "unitOfMeasure": "GB", + "serviceFamily": "Compute" + }, + "quantity": 0.8234, + "effectivePrice": 0.010464556322455, + "cost": 0.000342194841184, + "unitPrice": 3.54, + "billingCurrency": "CAD", + "resourceLocation": "USEast", + "consumedService": "Microsoft.Storage", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource Group 1/providers/Microsoft.Storage/storageAccounts/Resource Name 1", + "resourceName": "Resource Name 1", + "invoiceSection": "Invoice Section 1", + "costCenter": "DEV", + "resourceGroup": "Resource Group 1", + "offerId": "Offer Id 1", + "isAzureCreditEligible": false, + "chargeType": "Usage", + "frequency": "UsageBased", + "additionalInfo": "{\"MyType\":\"\",\"ServiceType\":\"\",\"VMName\":\"\",\"UsageType\":\"MyUsage\"}" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsList.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsList.json new file mode 100644 index 000000000000..f112c83a4938 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsList.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "billingPeriodName": "201903" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201903/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1", + "name": "usageDetails_Id1", + "type": "Microsoft.Consumption/usageDetails", + "kind": "legacy", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "billingAccountId": "xxxxxxxx", + "billingAccountName": "Customer Name 1", + "billingPeriodStartDate": "2019-04-01T00:00:00.0000000Z", + "billingPeriodEndDate": "2019-04-30T00:00:00.0000000Z", + "billingProfileId": "xxxxxxxx", + "billingProfileName": "Customer Name 1", + "accountName": "AccountName", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "SubscriptionName 1", + "date": "2019-04-09T00:00:00.0000000Z", + "product": "Product1", + "partNumber": "Part Number 1", + "meterId": "00000000-0000-0000-0000-000000000000", + "meterDetails": null, + "quantity": 0.000036, + "effectivePrice": 0.054693034210767, + "cost": 0.000001980949998, + "unitPrice": 5.47, + "billingCurrency": "CAD", + "resourceLocation": "uswest", + "consumedService": "Microsoft.ClassicStorage", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource-Group-westus/providers/Microsoft.ClassicStorage/storageAccounts/ResourceName1", + "resourceName": "ResourceName1", + "invoiceSection": "Invoice Section 1", + "costCenter": "BAS", + "resourceGroup": "Resource-Group-westus", + "offerId": "Offer Id 1", + "isAzureCreditEligible": false, + "chargeType": "Usage", + "frequency": "UsageBased" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsListByBillingAccount.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsListByBillingAccount.json new file mode 100644 index 000000000000..723710d00211 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsListByBillingAccount.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2021-05-01-preview", + "scope": "providers/Microsoft.Billing/BillingAccounts/1234", + "billingPeriodName": "201903" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/BillingAccounts/1234/providers/Microsoft.Billing/billingPeriods/201903/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1", + "name": "usageDetails_Id1", + "type": "Microsoft.Consumption/usageDetails", + "kind": "legacy", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "billingAccountId": "xxxxxxxx", + "billingAccountName": "Account Name 1", + "billingPeriodStartDate": "2019-03-01T00:00:00.0000000Z", + "billingPeriodEndDate": "2019-03-31T00:00:00.0000000Z", + "billingProfileId": "xxxxxxxx", + "billingProfileName": "Account Name 1", + "accountName": "Account Name 1", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "Subscription Name 1", + "date": "2019-03-30T00:00:00.0000000Z", + "product": "Product Name 1", + "partNumber": "Part Number 1", + "meterId": "00000000-0000-0000-0000-000000000000", + "meterDetails": null, + "quantity": 0.7329, + "effectivePrice": 0.000402776395232, + "cost": 0.000295194820065, + "unitPrice": 4.38, + "billingCurrency": "CAD", + "resourceLocation": "USEast", + "consumedService": "Microsoft.Storage", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource Group 1/providers/Microsoft.Storage/storageAccounts/Resource Name 1", + "resourceName": "Resource Name 1", + "invoiceSection": "Invoice Section 1", + "costCenter": "DEV", + "resourceGroup": "Resource Group 1", + "offerId": "Offer Id 1", + "isAzureCreditEligible": false, + "chargeType": "Usage" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsListByDepartment.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsListByDepartment.json new file mode 100644 index 000000000000..3bdd774d88a0 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsListByDepartment.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "scope": "providers/Microsoft.Billing/Departments/1234", + "billingPeriodName": "201903" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/Departments/1234/providers/Microsoft.Billing/billingPeriods/201903/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1", + "name": "usageDetails_Id1", + "type": "Microsoft.Consumption/usageDetails", + "kind": "legacy", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "billingAccountId": "xxxxxxxx", + "billingAccountName": "Account Name 1", + "billingPeriodStartDate": "2019-03-01T00:00:00.0000000Z", + "billingPeriodEndDate": "2019-03-31T00:00:00.0000000Z", + "billingProfileId": "xxxxxxxx", + "billingProfileName": "Account Name 1", + "accountName": "Account Name 1", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "Subscription Name 1", + "date": "2019-03-30T00:00:00.0000000Z", + "product": "Product Name 1", + "partNumber": "Part Number 1", + "meterId": "00000000-0000-0000-0000-000000000000", + "meterDetails": null, + "quantity": 0.7329, + "effectivePrice": 0.000402776395232, + "cost": 0.000295194820065, + "unitPrice": 4.38, + "billingCurrency": "CAD", + "resourceLocation": "USEast", + "consumedService": "Microsoft.Storage", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource Group 1/providers/Microsoft.Storage/storageAccounts/Resource Name 1", + "resourceName": "Resource Name 1", + "invoiceSection": "Invoice Section 1", + "costCenter": "DEV", + "resourceGroup": "Resource Group 1", + "offerId": "Offer Id 1", + "isAzureCreditEligible": false, + "chargeType": "Usage" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsListByEnrollmentAccount.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsListByEnrollmentAccount.json new file mode 100644 index 000000000000..4aab1de03dc3 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsListByEnrollmentAccount.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "scope": "providers/Microsoft.Billing/EnrollmentAccounts/1234", + "billingPeriodName": "201903" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/EnrollmentAccounts/1234/providers/Microsoft.Billing/billingPeriods/201903/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1", + "name": "usageDetails_Id1", + "type": "Microsoft.Consumption/usageDetails", + "kind": "legacy", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "billingAccountId": "xxxxxxxx", + "billingAccountName": "Account Name 1", + "billingPeriodStartDate": "2019-03-01T00:00:00.0000000Z", + "billingPeriodEndDate": "2019-03-31T00:00:00.0000000Z", + "billingProfileId": "xxxxxxxx", + "billingProfileName": "Account Name 1", + "accountName": "Account Name 1", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "Subscription Name 1", + "date": "2019-03-30T00:00:00.0000000Z", + "product": "Product Name 1", + "partNumber": "Part Number 1", + "meterId": "00000000-0000-0000-0000-000000000000", + "meterDetails": null, + "quantity": 0.7329, + "effectivePrice": 0.000402776395232, + "cost": 0.000295194820065, + "unitPrice": 4.38, + "billingCurrency": "CAD", + "resourceLocation": "USEast", + "consumedService": "Microsoft.Storage", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource Group 1/providers/Microsoft.Storage/storageAccounts/Resource Name 1", + "resourceName": "Resource Name 1", + "invoiceSection": "Invoice Section 1", + "costCenter": "DEV", + "resourceGroup": "Resource Group 1", + "offerId": "Offer Id 1", + "isAzureCreditEligible": false, + "chargeType": "Usage" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsListByMCABillingAccount.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsListByMCABillingAccount.json new file mode 100644 index 000000000000..d28b2bf6a49f --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsListByMCABillingAccount.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "scope": "providers/Microsoft.Billing/BillingAccounts/1234:56789" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/BillingAccounts/1234:56789/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1", + "name": "usageDetails_Id1", + "type": "Microsoft.Consumption/usageDetails", + "kind": "modern", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "billingAccountId": "1234:56789", + "billingAccountName": "Account Name 1", + "billingPeriodStartDate": "2021-05-01T00:00:00.0000000Z", + "billingPeriodEndDate": "2019-10-31T00:00:00.0000000Z", + "billingProfileId": "2468", + "billingProfileName": "Account Name 1", + "subscriptionGuid": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "Subscription Name 1", + "date": "2019-10-30T00:00:00.0000000Z", + "meterId": "00000000-0000-0000-0000-000000000000", + "quantity": 0.7329, + "unitPrice": 4.38, + "billingCurrencyCode": "USD", + "resourceLocation": "USEast", + "consumedService": "Microsoft.Storage", + "instanceName": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource Group 1/providers/Microsoft.Storage/storageAccounts/Resource Name 1", + "invoiceSectionId": "98765", + "invoiceSectionName": "Invoice Section 1", + "costCenter": "DEV", + "resourceGroup": "Resource Group 1", + "isAzureCreditEligible": false, + "chargeType": "Usage", + "additionalInfo": "{ \"UsageType\": \"ComputeHR\", \"ImageType\": \"Windows Client BYOL\", \"ServiceType\": \"Standard_D1\", \"VMName\": null, \"VMProperties\": null, \"VCPUs\": 1, \"CPUs\": 0}", + "costInBillingCurrency": 1.84763819095477, + "costInPricingCurrency": 1.84763819095477, + "exchangeRate": "1", + "exchangeRateDate": "2021-05-01T00:00:00Z", + "invoiceId": "", + "previousInvoiceId": "", + "pricingCurrencyCode": "USD", + "product": "Virtual Machines D Series - D1 - US East", + "productIdentifier": "DZH318Z0BQ4B00FV", + "productOrderId": "a3db7880-70eb-4b4c-6a79-1425a058df5a", + "productOrderName": "Azure plan", + "publisherName": "Microsoft", + "publisherType": "1PP", + "resourceLocationNormalized": "US East", + "serviceInfo1": "", + "serviceInfo2": "Windows Client BYOL", + "servicePeriodEndDate": "2019-12-01T00:00:00Z", + "servicePeriodStartDate": "2021-05-01T00:00:00Z", + "customerTenantId": "00000000-0000-0000-0000-000000000000", + "customerName": "Modern Azure Customer 1", + "partnerTenantId": "00000000-0000-0000-0000-000000000000", + "partnerName": "Partner Name 1", + "resellerMpnId": "", + "resellerName": "Reseller Name 1", + "publisherId": "", + "reservationId": "", + "reservationName": "", + "frequency": "UsageBased", + "term": "", + "marketPrice": 0.077, + "costInUSD": 1.84763819095477, + "paygCostInBillingCurrency": 1.848, + "paygCostInUSD": 1.848, + "exchangeRatePricingToBilling": 0.077, + "partnerEarnedCreditRate": 0.077, + "partnerEarnedCreditApplied": "0" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsListByMCABillingProfile.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsListByMCABillingProfile.json new file mode 100644 index 000000000000..4341b93e62ee --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsListByMCABillingProfile.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "scope": "providers/Microsoft.Billing/BillingAccounts/1234:56789/billingProfiles/2468" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/BillingAccounts/1234:56789/billingProfiles/2468/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1", + "name": "usageDetails_Id1", + "type": "Microsoft.Consumption/usageDetails", + "kind": "modern", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "billingAccountId": "1234:56789", + "billingAccountName": "Account Name 1", + "billingPeriodStartDate": "2021-05-01T00:00:00.0000000Z", + "billingPeriodEndDate": "2019-10-31T00:00:00.0000000Z", + "billingProfileId": "2468", + "billingProfileName": "Account Name 1", + "subscriptionGuid": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "Subscription Name 1", + "date": "2019-10-30T00:00:00.0000000Z", + "meterId": "00000000-0000-0000-0000-000000000000", + "quantity": 0.7329, + "unitPrice": 4.38, + "billingCurrencyCode": "USD", + "resourceLocation": "USEast", + "consumedService": "Microsoft.Storage", + "instanceName": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource Group 1/providers/Microsoft.Storage/storageAccounts/Resource Name 1", + "invoiceSectionId": "98765", + "invoiceSectionName": "Invoice Section 1", + "costCenter": "DEV", + "resourceGroup": "Resource Group 1", + "isAzureCreditEligible": false, + "chargeType": "Usage", + "additionalInfo": "{ \"UsageType\": \"ComputeHR\", \"ImageType\": \"Windows Client BYOL\", \"ServiceType\": \"Standard_D1\", \"VMName\": null, \"VMProperties\": null, \"VCPUs\": 1, \"CPUs\": 0}", + "costInBillingCurrency": 1.84763819095477, + "costInPricingCurrency": 1.84763819095477, + "exchangeRate": "1", + "exchangeRateDate": "2021-05-01T00:00:00Z", + "invoiceId": "", + "previousInvoiceId": "", + "pricingCurrencyCode": "USD", + "product": "Virtual Machines D Series - D1 - US East", + "productIdentifier": "DZH318Z0BQ4B00FV", + "productOrderId": "a3db7880-70eb-4b4c-6a79-1425a058df5a", + "productOrderName": "Azure plan", + "publisherName": "Microsoft", + "publisherType": "1PP", + "resourceLocationNormalized": "US East", + "serviceInfo1": "", + "serviceInfo2": "Windows Client BYOL", + "servicePeriodEndDate": "2019-12-01T00:00:00Z", + "servicePeriodStartDate": "2021-05-01T00:00:00Z", + "customerTenantId": "00000000-0000-0000-0000-000000000000", + "customerName": "Modern Azure Customer 1", + "partnerTenantId": "00000000-0000-0000-0000-000000000000", + "partnerName": "Partner Name 1", + "resellerMpnId": "", + "resellerName": "Reseller Name 1", + "publisherId": "", + "reservationId": "", + "reservationName": "", + "frequency": "UsageBased", + "term": "", + "marketPrice": 0.077, + "costInUSD": 1.84763819095477, + "paygCostInBillingCurrency": 1.848, + "paygCostInUSD": 1.848, + "exchangeRatePricingToBilling": 0.077, + "partnerEarnedCreditRate": 0.077, + "partnerEarnedCreditApplied": "0" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsListByMCACustomer.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsListByMCACustomer.json new file mode 100644 index 000000000000..b0149a6908db --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsListByMCACustomer.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "scope": "providers/Microsoft.Billing/BillingAccounts/1234:56789/customers/00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/BillingAccounts/1234:56789/customers/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1", + "name": "usageDetails_Id1", + "type": "Microsoft.Consumption/usageDetails", + "kind": "modern", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "billingAccountId": "1234:56789", + "billingAccountName": "Account Name 1", + "billingPeriodStartDate": "2021-05-01T00:00:00.0000000Z", + "billingPeriodEndDate": "2019-10-31T00:00:00.0000000Z", + "billingProfileId": "2468", + "billingProfileName": "Account Name 1", + "subscriptionGuid": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "Subscription Name 1", + "date": "2019-10-30T00:00:00.0000000Z", + "meterId": "00000000-0000-0000-0000-000000000000", + "quantity": 0.7329, + "unitPrice": 4.38, + "billingCurrencyCode": "USD", + "resourceLocation": "USEast", + "consumedService": "Microsoft.Storage", + "instanceName": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource Group 1/providers/Microsoft.Storage/storageAccounts/Resource Name 1", + "invoiceSectionId": "98765", + "invoiceSectionName": "Invoice Section 1", + "costCenter": "DEV", + "resourceGroup": "Resource Group 1", + "isAzureCreditEligible": false, + "chargeType": "Usage", + "additionalInfo": "{ \"UsageType\": \"ComputeHR\", \"ImageType\": \"Windows Client BYOL\", \"ServiceType\": \"Standard_D1\", \"VMName\": null, \"VMProperties\": null, \"VCPUs\": 1, \"CPUs\": 0}", + "costInBillingCurrency": 1.84763819095477, + "costInPricingCurrency": 1.84763819095477, + "exchangeRate": "1", + "exchangeRateDate": "2021-05-01T00:00:00Z", + "invoiceId": "", + "previousInvoiceId": "", + "pricingCurrencyCode": "USD", + "product": "Virtual Machines D Series - D1 - US East", + "productIdentifier": "DZH318Z0BQ4B00FV", + "productOrderId": "a3db7880-70eb-4b4c-6a79-1425a058df5a", + "productOrderName": "Azure plan", + "publisherName": "Microsoft", + "publisherType": "1PP", + "resourceLocationNormalized": "US East", + "serviceInfo1": "", + "serviceInfo2": "Windows Client BYOL", + "servicePeriodEndDate": "2019-12-01T00:00:00Z", + "servicePeriodStartDate": "2021-05-01T00:00:00Z", + "customerTenantId": "00000000-0000-0000-0000-000000000000", + "customerName": "Modern Azure Customer 1", + "partnerTenantId": "00000000-0000-0000-0000-000000000000", + "partnerName": "Partner Name 1", + "resellerMpnId": "", + "resellerName": "Reseller Name 1", + "publisherId": "", + "reservationId": "", + "reservationName": "", + "frequency": "UsageBased", + "term": "", + "marketPrice": 0.077, + "costInUSD": 1.84763819095477, + "paygCostInBillingCurrency": 1.848, + "paygCostInUSD": 1.848, + "exchangeRatePricingToBilling": 0.077, + "partnerEarnedCreditRate": 0.077, + "partnerEarnedCreditApplied": "0" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsListByMCAInvoiceSection.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsListByMCAInvoiceSection.json new file mode 100644 index 000000000000..f3134c8dd55d --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsListByMCAInvoiceSection.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "scope": "providers/Microsoft.Billing/BillingAccounts/1234:56789/invoiceSections/98765" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/BillingAccounts/1234:56789/invoiceSections/98765/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1", + "name": "usageDetails_Id1", + "type": "Microsoft.Consumption/usageDetails", + "kind": "modern", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "billingAccountId": "1234:56789", + "billingAccountName": "Account Name 1", + "billingPeriodStartDate": "2021-05-01T00:00:00.0000000Z", + "billingPeriodEndDate": "2019-10-31T00:00:00.0000000Z", + "billingProfileId": "2468", + "billingProfileName": "Account Name 1", + "subscriptionGuid": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "Subscription Name 1", + "date": "2019-10-30T00:00:00.0000000Z", + "meterId": "00000000-0000-0000-0000-000000000000", + "quantity": 0.7329, + "unitPrice": 4.38, + "billingCurrencyCode": "USD", + "resourceLocation": "USEast", + "consumedService": "Microsoft.Storage", + "instanceName": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource Group 1/providers/Microsoft.Storage/storageAccounts/Resource Name 1", + "invoiceSectionId": "98765", + "invoiceSectionName": "Invoice Section 1", + "costCenter": "DEV", + "resourceGroup": "Resource Group 1", + "isAzureCreditEligible": false, + "chargeType": "Usage", + "additionalInfo": "{ \"UsageType\": \"ComputeHR\", \"ImageType\": \"Windows Client BYOL\", \"ServiceType\": \"Standard_D1\", \"VMName\": null, \"VMProperties\": null, \"VCPUs\": 1, \"CPUs\": 0}", + "costInBillingCurrency": 1.84763819095477, + "costInPricingCurrency": 1.84763819095477, + "exchangeRate": "1", + "exchangeRateDate": "2021-05-01T00:00:00Z", + "invoiceId": "", + "previousInvoiceId": "", + "pricingCurrencyCode": "USD", + "product": "Virtual Machines D Series - D1 - US East", + "productIdentifier": "DZH318Z0BQ4B00FV", + "productOrderId": "a3db7880-70eb-4b4c-6a79-1425a058df5a", + "productOrderName": "Azure plan", + "publisherName": "Microsoft", + "publisherType": "1PP", + "resourceLocationNormalized": "US East", + "serviceInfo1": "", + "serviceInfo2": "Windows Client BYOL", + "servicePeriodEndDate": "2019-12-01T00:00:00Z", + "servicePeriodStartDate": "2021-05-01T00:00:00Z", + "customerTenantId": "00000000-0000-0000-0000-000000000000", + "customerName": "Modern Azure Customer 1", + "partnerTenantId": "00000000-0000-0000-0000-000000000000", + "partnerName": "Partner Name 1", + "resellerMpnId": "", + "resellerName": "Reseller Name 1", + "publisherId": "", + "reservationId": "", + "reservationName": "", + "frequency": "UsageBased", + "term": "", + "marketPrice": 0.077, + "costInUSD": 1.84763819095477, + "paygCostInBillingCurrency": 1.848, + "paygCostInUSD": 1.848, + "exchangeRatePricingToBilling": 0.077, + "partnerEarnedCreditRate": 0.077, + "partnerEarnedCreditApplied": "0" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsListByManagementGroup.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsListByManagementGroup.json new file mode 100644 index 000000000000..a2f7f4cbcd28 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsListByManagementGroup.json @@ -0,0 +1,98 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "managementGroupId": "managementGroupForTest", + "billingPeriodName": "201903", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201903/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1", + "name": "usageDetails_Id1", + "type": "Microsoft.Consumption/usageDetails", + "kind": "legacy", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "billingAccountId": "xxxxxxxx", + "billingAccountName": "Account Name 1", + "billingPeriodStartDate": "2019-03-01T00:00:00.0000000Z", + "billingPeriodEndDate": "2019-03-31T00:00:00.0000000Z", + "billingProfileId": "xxxxxxxx", + "billingProfileName": "Account Name 1", + "accountName": "Account Name 1", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "Subscription Name 1", + "date": "2019-03-30T00:00:00.0000000Z", + "product": "Product Name 1", + "partNumber": "Part Number 1", + "meterId": "00000000-0000-0000-0000-000000000000", + "meterDetails": null, + "quantity": 0.8234, + "effectivePrice": 0.010534556373432, + "cost": 0.000342194841184, + "unitPrice": 3.74, + "billingCurrency": "CAD", + "resourceLocation": "USEast", + "consumedService": "Microsoft.Storage", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource Group 1/providers/Microsoft.Storage/storageAccounts/Resource Name 1", + "resourceName": "Resource Name 1", + "invoiceSection": "Invoice Section 1", + "costCenter": "DEV", + "resourceGroup": "Resource Group 1", + "offerId": "Offer Id 1", + "isAzureCreditEligible": false, + "chargeType": "Usage" + } + }, + { + "id": "/scope/providers/Microsoft.Billing/billingPeriods/20180801/providers/Microsoft.Consumption/usageDetails/usageDetails_Id2", + "name": "usageDetails_Id2", + "type": "Microsoft.Consumption/usageDetails", + "kind": "legacy", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "billingAccountId": "xxxxxxxx", + "billingAccountName": "Account Name 2", + "billingPeriodStartDate": "2019-03-01T00:00:00.0000000Z", + "billingPeriodEndDate": "2019-03-31T00:00:00.0000000Z", + "billingProfileId": "xxxxxxxx", + "billingProfileName": "Account Name 2", + "accountName": "Account Name 1", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "Subscription Name 1", + "date": "2019-03-30T00:00:00.0000000Z", + "product": "Product Name 2", + "partNumber": "Part Number 2", + "meterId": "11111111-1111-1111-1111-111111111111", + "meterDetails": null, + "quantity": 0.7329, + "effectivePrice": 0.000402776395232, + "cost": 0.000295194820065, + "unitPrice": 4.38, + "billingCurrency": "CAD", + "resourceLocation": "USEast", + "consumedService": "Microsoft.Storage", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource Group 2/providers/Microsoft.Storage/storageAccounts/Resource Name 2", + "resourceName": "Resource Name 2", + "invoiceSection": "Invoice Section 2", + "costCenter": "DEV", + "resourceGroup": "Resource Group 2", + "offerId": "Offer Id 2", + "isAzureCreditEligible": false, + "chargeType": "Usage" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsListByMetricActualCost.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsListByMetricActualCost.json new file mode 100644 index 000000000000..61fcb754698f --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsListByMetricActualCost.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "metric": "actualcost", + "billingPeriodName": "201903" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201903/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1", + "name": "usageDetails_Id1", + "type": "Microsoft.Consumption/usageDetails", + "kind": "legacy", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "billingAccountId": "xxxxxxxx", + "billingAccountName": "Customer Name 1", + "billingPeriodStartDate": "2019-04-01T00:00:00.0000000Z", + "billingPeriodEndDate": "2019-04-30T00:00:00.0000000Z", + "billingProfileId": "xxxxxxxx", + "billingProfileName": "Customer Name 1", + "accountName": "AccountName", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "SubscriptionName 1", + "date": "2019-04-09T00:00:00.0000000Z", + "product": "Product1", + "partNumber": "Part Number 1", + "meterId": "00000000-0000-0000-0000-000000000000", + "meterDetails": null, + "quantity": 0.000036, + "effectivePrice": 0.054693055510767, + "cost": 0.000001968949998, + "unitPrice": 5.47, + "billingCurrency": "CAD", + "resourceLocation": "uswest", + "consumedService": "Microsoft.ClassicStorage", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource-Group-westus/providers/Microsoft.ClassicStorage/storageAccounts/ResourceName1", + "resourceName": "ResourceName1", + "invoiceSection": "Invoice Section 1", + "costCenter": "BAS", + "resourceGroup": "Resource-Group-westus", + "offerId": "Offer Id 1", + "isAzureCreditEligible": false, + "chargeType": "Usage" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsListByMetricAmortizedCost.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsListByMetricAmortizedCost.json new file mode 100644 index 000000000000..5e5cfdcbba2b --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsListByMetricAmortizedCost.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "metric": "amortizedcost", + "billingPeriodName": "201903" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201903/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1", + "name": "usageDetails_Id1", + "type": "Microsoft.Consumption/usageDetails", + "kind": "legacy", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "billingAccountId": "xxxxxxxx", + "billingAccountName": "Customer Name 1", + "billingPeriodStartDate": "2019-04-01T00:00:00.0000000Z", + "billingPeriodEndDate": "2019-04-30T00:00:00.0000000Z", + "billingProfileId": "xxxxxxxx", + "billingProfileName": "Customer Name 1", + "accountName": "AccountName", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "SubscriptionName 1", + "date": "2019-04-09T00:00:00.0000000Z", + "product": "Product1", + "partNumber": "Part Number 1", + "meterId": "00000000-0000-0000-0000-000000000000", + "meterDetails": null, + "quantity": 0.000036, + "effectivePrice": 0.054693055510767, + "cost": 0.000001968949998, + "unitPrice": 5.47, + "billingCurrency": "CAD", + "resourceLocation": "uswest", + "consumedService": "Microsoft.ClassicStorage", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource-Group-westus/providers/Microsoft.ClassicStorage/storageAccounts/ResourceName1", + "resourceName": "ResourceName1", + "invoiceSection": "Invoice Section 1", + "costCenter": "BAS", + "resourceGroup": "Resource-Group-westus", + "offerId": "Offer Id 1", + "isAzureCreditEligible": false, + "chargeType": "Usage", + "frequency": "UsageBased" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsListByMetricUsage.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsListByMetricUsage.json new file mode 100644 index 000000000000..c6f4f078a56d --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsListByMetricUsage.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "metric": "usage", + "billingPeriodName": "201903" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201903/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1", + "name": "usageDetails_Id1", + "type": "Microsoft.Consumption/usageDetails", + "kind": "legacy", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "billingAccountId": "xxxxxxxx", + "billingAccountName": "Customer Name 1", + "billingPeriodStartDate": "2019-04-01T00:00:00.0000000Z", + "billingPeriodEndDate": "2019-04-30T00:00:00.0000000Z", + "billingProfileId": "xxxxxxxx", + "billingProfileName": "Customer Name 1", + "accountName": "AccountName", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "SubscriptionName 1", + "date": "2019-04-09T00:00:00.0000000Z", + "product": "Product1", + "partNumber": "Part Number 1", + "meterId": "00000000-0000-0000-0000-000000000000", + "meterDetails": null, + "quantity": 0.000036, + "effectivePrice": 0.054693055510767, + "cost": 0.000001968949998, + "unitPrice": 5.47, + "billingCurrency": "CAD", + "resourceLocation": "uswest", + "consumedService": "Microsoft.ClassicStorage", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource-Group-westus/providers/Microsoft.ClassicStorage/storageAccounts/ResourceName1", + "resourceName": "ResourceName1", + "invoiceSection": "Invoice Section 1", + "costCenter": "BAS", + "resourceGroup": "Resource-Group-westus", + "offerId": "Offer Id 1", + "isAzureCreditEligible": false, + "chargeType": "Usage" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsListFilterByTag.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsListFilterByTag.json new file mode 100644 index 000000000000..56b17b4e360e --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsListFilterByTag.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "$filter": "tags eq 'dev:tools'", + "billingPeriodName": "201903" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201903/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1", + "name": "usageDetails_Id1", + "type": "Microsoft.Consumption/usageDetails", + "kind": "legacy", + "tags": { + "dev": "tools" + }, + "properties": { + "billingAccountId": "xxxxxxxx", + "billingAccountName": "Account Name 1", + "billingPeriodStartDate": "2019-03-01T00:00:00.0000000Z", + "billingPeriodEndDate": "2019-03-31T00:00:00.0000000Z", + "billingProfileId": "xxxxxxxx", + "billingProfileName": "Account Name 1", + "accountName": "Account Name 1", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "Subscription Name 1", + "date": "2019-03-30T00:00:00.0000000Z", + "product": "Product Name 1", + "partNumber": "Part Number 1", + "meterId": "00000000-0000-0000-0000-000000000000", + "meterDetails": null, + "quantity": 0.8234, + "effectivePrice": 0.010534556373432, + "cost": 0.000342194841184, + "unitPrice": 3.74, + "billingCurrency": "CAD", + "resourceLocation": "USEast", + "consumedService": "Microsoft.Storage", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource Group 1/providers/Microsoft.Storage/storageAccounts/Resource Name 1", + "resourceName": "Resource Name 1", + "invoiceSection": "Invoice Section 1", + "costCenter": "DEV", + "resourceGroup": "Resource Group 1", + "offerId": "Offer Id 1", + "isAzureCreditEligible": false, + "chargeType": "Usage" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsListForBillingPeriod.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsListForBillingPeriod.json new file mode 100644 index 000000000000..09b6f2ab1bfd --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsListForBillingPeriod.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "billingPeriodName": "201903" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201903/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1", + "name": "usageDetails_Id1", + "type": "Microsoft.Consumption/usageDetails", + "kind": "legacy", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "billingAccountId": "xxxxxxxx", + "billingAccountName": "Account Name 1", + "billingPeriodStartDate": "2019-03-01T00:00:00.0000000Z", + "billingPeriodEndDate": "2019-03-31T00:00:00.0000000Z", + "billingProfileId": "xxxxxxxx", + "billingProfileName": "Account Name 1", + "accountName": "Account Name 1", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "Subscription Name 1", + "date": "2019-03-30T00:00:00.0000000Z", + "product": "Product Name 1", + "partNumber": "Part Number 1", + "meterId": "00000000-0000-0000-0000-000000000000", + "meterDetails": null, + "quantity": 0.8234, + "effectivePrice": 0.010534556373432, + "cost": 0.000342194841184, + "unitPrice": 3.74, + "billingCurrency": "CAD", + "resourceLocation": "USEast", + "consumedService": "Microsoft.Storage", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource Group 1/providers/Microsoft.Storage/storageAccounts/Resource Name 1", + "resourceName": "Resource Name 1", + "invoiceSection": "Invoice Section 1", + "costCenter": "DEV", + "resourceGroup": "Resource Group 1", + "offerId": "Offer Id 1", + "isAzureCreditEligible": false, + "chargeType": "Usage" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsListForBillingPeriodByBillingAccount.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsListForBillingPeriodByBillingAccount.json new file mode 100644 index 000000000000..ae7240b71ba8 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsListForBillingPeriodByBillingAccount.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "scope": "providers/Microsoft.Billing/BillingAccounts/1234", + "billingPeriodName": "201903" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/BillingAccounts/1234/providers/Microsoft.Billing/billingPeriods/201903/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1", + "name": "usageDetails_Id1", + "type": "Microsoft.Consumption/usageDetails", + "kind": "legacy", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "billingAccountId": "xxxxxxxx", + "billingAccountName": "Account Name 1", + "billingPeriodStartDate": "2019-03-01T00:00:00.0000000Z", + "billingPeriodEndDate": "2019-03-31T00:00:00.0000000Z", + "billingProfileId": "xxxxxxxx", + "billingProfileName": "Account Name 1", + "accountName": "Account Name 1", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "Subscription Name 1", + "date": "2019-03-30T00:00:00.0000000Z", + "product": "Product Name 1", + "partNumber": "Part Number 1", + "meterId": "00000000-0000-0000-0000-000000000000", + "meterDetails": null, + "quantity": 0.8234, + "effectivePrice": 0.010534556373432, + "cost": 0.000342194841184, + "unitPrice": 3.74, + "billingCurrency": "CAD", + "resourceLocation": "USEast", + "consumedService": "Microsoft.Storage", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource Group 1/providers/Microsoft.Storage/storageAccounts/Resource Name 1", + "resourceName": "Resource Name 1", + "invoiceSection": "Invoice Section 1", + "costCenter": "DEV", + "resourceGroup": "Resource Group 1", + "offerId": "Offer Id 1", + "isAzureCreditEligible": false, + "chargeType": "Usage" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsListForBillingPeriodByDepartment.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsListForBillingPeriodByDepartment.json new file mode 100644 index 000000000000..2399d177f671 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsListForBillingPeriodByDepartment.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "scope": "providers/Microsoft.Billing/Departments/1234", + "billingPeriodName": "201903" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/Departments/1234/providers/Microsoft.Billing/billingPeriods/201903/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1", + "name": "usageDetails_Id1", + "type": "Microsoft.Consumption/usageDetails", + "kind": "legacy", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "billingAccountId": "xxxxxxxx", + "billingAccountName": "Account Name 1", + "billingPeriodStartDate": "2019-03-01T00:00:00.0000000Z", + "billingPeriodEndDate": "2019-03-31T00:00:00.0000000Z", + "billingProfileId": "xxxxxxxx", + "billingProfileName": "Account Name 1", + "accountName": "Account Name 1", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "Subscription Name 1", + "date": "2019-03-30T00:00:00.0000000Z", + "product": "Product Name 1", + "partNumber": "Part Number 1", + "meterId": "00000000-0000-0000-0000-000000000000", + "meterDetails": null, + "quantity": 0.8234, + "effectivePrice": 0.010534556373432, + "cost": 0.000342194841184, + "unitPrice": 3.74, + "billingCurrency": "CAD", + "resourceLocation": "USEast", + "consumedService": "Microsoft.Storage", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource Group 1/providers/Microsoft.Storage/storageAccounts/Resource Name 1", + "resourceName": "Resource Name 1", + "invoiceSection": "Invoice Section 1", + "costCenter": "DEV", + "resourceGroup": "Resource Group 1", + "offerId": "Offer Id 1", + "isAzureCreditEligible": false, + "chargeType": "Usage" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsListForBillingPeriodByEnrollmentAccount.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsListForBillingPeriodByEnrollmentAccount.json new file mode 100644 index 000000000000..d6d2a1cb9b16 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsListForBillingPeriodByEnrollmentAccount.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "scope": "providers/Microsoft.Billing/EnrollmentAccounts/1234", + "billingPeriodName": "201903" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/EnrollmentAccounts/1234/providers/Microsoft.Billing/billingPeriods/201903/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1", + "name": "usageDetails_Id1", + "type": "Microsoft.Consumption/usageDetails", + "kind": "legacy", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "billingAccountId": "xxxxxxxx", + "billingAccountName": "Account Name 1", + "billingPeriodStartDate": "2019-03-01T00:00:00.0000000Z", + "billingPeriodEndDate": "2019-03-31T00:00:00.0000000Z", + "billingProfileId": "xxxxxxxx", + "billingProfileName": "Account Name 1", + "accountName": "Account Name 1", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "Subscription Name 1", + "date": "2019-03-30T00:00:00.0000000Z", + "product": "Product Name 1", + "partNumber": "Part Number 1", + "meterId": "00000000-0000-0000-0000-000000000000", + "meterDetails": null, + "quantity": 0.8234, + "effectivePrice": 0.010534556373432, + "cost": 0.000342194841184, + "unitPrice": 3.74, + "billingCurrency": "CAD", + "resourceLocation": "USEast", + "consumedService": "Microsoft.Storage", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource Group 1/providers/Microsoft.Storage/storageAccounts/Resource Name 1", + "resourceName": "Resource Name 1", + "invoiceSection": "Invoice Section 1", + "costCenter": "DEV", + "resourceGroup": "Resource Group 1", + "offerId": "Offer Id 1", + "isAzureCreditEligible": false, + "chargeType": "Usage" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsListForBillingPeriodByManagementGroup.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsListForBillingPeriodByManagementGroup.json new file mode 100644 index 000000000000..e32f47cf7e81 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2021-05-01/examples/UsageDetailsListForBillingPeriodByManagementGroup.json @@ -0,0 +1,98 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "managementGroupId": "managementGroupForTest", + "billingPeriodName": "201903", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201903/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1", + "name": "usageDetails_Id1", + "type": "Microsoft.Consumption/usageDetails", + "kind": "legacy", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "billingAccountId": "xxxxxxxx", + "billingAccountName": "Account Name 1", + "billingPeriodStartDate": "2019-03-01T00:00:00.0000000Z", + "billingPeriodEndDate": "2019-03-31T00:00:00.0000000Z", + "billingProfileId": "xxxxxxxx", + "billingProfileName": "Account Name 1", + "accountName": "Account Name 1", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "Subscription Name 1", + "date": "2019-03-30T00:00:00.0000000Z", + "product": "Product Name 1", + "partNumber": "Part Number 1", + "meterId": "00000000-0000-0000-0000-000000000000", + "meterDetails": null, + "quantity": 0.8234, + "effectivePrice": 0.010534556373432, + "cost": 0.000342194841184, + "unitPrice": 3.74, + "billingCurrency": "CAD", + "resourceLocation": "USEast", + "consumedService": "Microsoft.Storage", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource Group 1/providers/Microsoft.Storage/storageAccounts/Resource Name 1", + "resourceName": "Resource Name 1", + "invoiceSection": "Invoice Section 1", + "costCenter": "DEV", + "resourceGroup": "Resource Group 1", + "offerId": "Offer Id 1", + "isAzureCreditEligible": false, + "chargeType": "Usage" + } + }, + { + "id": "/scope/providers/Microsoft.Billing/billingPeriods/billingPeriodName/providers/Microsoft.Consumption/usageDetails/usageDetails_Id2", + "name": "usageDetails_Id2", + "type": "Microsoft.Consumption/usageDetails", + "kind": "legacy", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "billingAccountId": "xxxxxxxx", + "billingAccountName": "Account Name 2", + "billingPeriodStartDate": "2019-03-01T00:00:00.0000000Z", + "billingPeriodEndDate": "2019-03-31T00:00:00.0000000Z", + "billingProfileId": "xxxxxxxx", + "billingProfileName": "Account Name 2", + "accountName": "Account Name 2", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "Subscription Name 2", + "date": "2019-03-30T00:00:00.0000000Z", + "product": "Product Name 2", + "partNumber": "Part Number 2", + "meterId": "11111111-1111-1111-1111-111111111111", + "meterDetails": null, + "quantity": 0.4759, + "effectivePrice": 0.073488920944598, + "cost": 0.000821821271948, + "unitPrice": 5.74, + "billingCurrency": "CAD", + "resourceLocation": "USEast", + "consumedService": "Microsoft.Storage", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource Group 2/providers/Microsoft.Storage/storageAccounts/Resource Name 2", + "resourceName": "Resource Name 2", + "invoiceSection": "Invoice Section 2", + "costCenter": "DEV", + "resourceGroup": "Resource Group 2", + "offerId": "Offer Id 2", + "isAzureCreditEligible": false, + "chargeType": "UnusedReservation" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/readme.azureresourceschema.md b/specification/consumption/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index cdf86806a081..000000000000 --- a/specification/consumption/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,204 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-consumption-2019-10-01 - - tag: schema-consumption-2019-06-01 - - tag: schema-consumption-2019-05-01-preview - - tag: schema-consumption-2019-05-01 - - tag: schema-consumption-2019-04-01-preview - - tag: schema-consumption-2019-01-01 - - tag: schema-consumption-2018-11-01-preview - - tag: schema-consumption-2018-10-01 - - tag: schema-consumption-2018-08-31 - - tag: schema-consumption-2018-06-30 - - tag: schema-consumption-2018-05-31 - - tag: schema-consumption-2018-03-31 - - tag: schema-consumption-2018-01-31 - - tag: schema-consumption-2017-12-30-preview - - tag: schema-consumption-2017-11-30 - - tag: schema-consumption-2017-04-24-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-consumption-2019-10-01 and azureresourceschema - -``` yaml $(tag) == 'schema-consumption-2019-10-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Consumption/stable/2019-10-01/consumption.json - -``` - -### Tag: schema-consumption-2019-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-consumption-2019-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Consumption/stable/2019-06-01/consumption.json - -``` - -### Tag: schema-consumption-2019-05-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-consumption-2019-05-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Consumption/preview/2019-05-01-preview/consumption.json - -``` - -### Tag: schema-consumption-2019-05-01 and azureresourceschema - -``` yaml $(tag) == 'schema-consumption-2019-05-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Consumption/stable/2019-05-01/consumption.json - -``` - -### Tag: schema-consumption-2019-04-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-consumption-2019-04-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Consumption/preview/2019-04-01-preview/consumption.json - -``` - -### Tag: schema-consumption-2019-01-01 and azureresourceschema - -``` yaml $(tag) == 'schema-consumption-2019-01-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Consumption/stable/2019-01-01/consumption.json - -``` - -### Tag: schema-consumption-2018-11-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-consumption-2018-11-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Consumption/preview/2018-11-01-preview/consumption.json - -``` - -### Tag: schema-consumption-2018-10-01 and azureresourceschema - -``` yaml $(tag) == 'schema-consumption-2018-10-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Consumption/stable/2018-10-01/consumption.json - -``` - -### Tag: schema-consumption-2018-08-31 and azureresourceschema - -``` yaml $(tag) == 'schema-consumption-2018-08-31' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Consumption/stable/2018-08-31/consumption.json - -``` - -### Tag: schema-consumption-2018-06-30 and azureresourceschema - -``` yaml $(tag) == 'schema-consumption-2018-06-30' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Consumption/stable/2018-06-30/consumption.json - -``` - -### Tag: schema-consumption-2018-05-31 and azureresourceschema - -``` yaml $(tag) == 'schema-consumption-2018-05-31' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Consumption/stable/2018-05-31/consumption.json - -``` - -### Tag: schema-consumption-2018-03-31 and azureresourceschema - -``` yaml $(tag) == 'schema-consumption-2018-03-31' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Consumption/stable/2018-03-31/consumption.json - -``` - -### Tag: schema-consumption-2018-01-31 and azureresourceschema - -``` yaml $(tag) == 'schema-consumption-2018-01-31' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Consumption/stable/2018-01-31/consumption.json - -``` - -### Tag: schema-consumption-2017-12-30-preview and azureresourceschema - -``` yaml $(tag) == 'schema-consumption-2017-12-30-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Consumption/preview/2017-12-30-preview/consumption.json - -``` - -### Tag: schema-consumption-2017-11-30 and azureresourceschema - -``` yaml $(tag) == 'schema-consumption-2017-11-30' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Consumption/stable/2017-11-30/consumption.json - -``` - -### Tag: schema-consumption-2017-04-24-preview and azureresourceschema - -``` yaml $(tag) == 'schema-consumption-2017-04-24-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Consumption/preview/2017-04-24-preview/consumption.json - -``` diff --git a/specification/consumption/resource-manager/readme.go.md b/specification/consumption/resource-manager/readme.go.md index a0de97215d8d..f6628d3edcbb 100644 --- a/specification/consumption/resource-manager/readme.go.md +++ b/specification/consumption/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: consumption clear-output-folder: true ``` diff --git a/specification/consumption/resource-manager/readme.md b/specification/consumption/resource-manager/readme.md index 57ad996f877b..43a5f80bdd34 100644 --- a/specification/consumption/resource-manager/readme.md +++ b/specification/consumption/resource-manager/readme.md @@ -26,18 +26,27 @@ These are the global settings for the Consumption API. ``` yaml openapi-type: arm -tag: package-2019-11 +tag: package-2021-05 ``` +### Tag: package-2021-05 + +These settings apply only when `--tag=package-2021-05` is specified on the command line. + +```yaml $(tag) == 'package-2021-05' +input-file: + - Microsoft.Consumption/stable/2021-05-01/consumption.json +``` ### Tag: package-2019-11 These settings apply only when `--tag=package-2019-11` is specified on the command line. -```yaml $(tag) == 'package-2019-11' +``` yaml $(tag) == 'package-2019-11' input-file: - Microsoft.Consumption/stable/2019-11-01/consumption.json ``` + ### Tag: package-2019-10 These settings apply only when `--tag=package-2019-10` is specified on the command line. @@ -230,8 +239,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_consumption'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js consumption/resource-manager ``` ## C# @@ -417,10 +424,20 @@ regenerate-manager: true generate-interface: true ``` +## Suppression + +``` yaml +directive: + - suppress: R4009 + from: consumption.json + reason: SystemData properties does not fit into the consumption RP APIs as they dont really create any actual resources. +``` + ## AzureResourceSchema See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) + ## Python See configuration in [readme.python.md](./readme.python.md) diff --git a/specification/containerinstance/resource-manager/readme.azureresourceschema.md b/specification/containerinstance/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 8bc081ce08ba..000000000000 --- a/specification/containerinstance/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,144 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-containerinstance-2021-03-01 - - tag: schema-containerinstance-2020-11-01 - - tag: schema-containerinstance-2019-12-01 - - tag: schema-containerinstance-2018-10-01 - - tag: schema-containerinstance-2018-09-01 - - tag: schema-containerinstance-2018-06-01 - - tag: schema-containerinstance-2018-04-01 - - tag: schema-containerinstance-2018-02-01-preview - - tag: schema-containerinstance-2017-12-01-preview - - tag: schema-containerinstance-2017-10-01-preview - - tag: schema-containerinstance-2017-08-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-containerinstance-2021-03-01 and azureresourceschema - -``` yaml $(tag) == 'schema-containerinstance-2021-03-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerInstance/stable/2021-03-01/containerInstance.json - -``` - -### Tag: schema-containerinstance-2020-11-01 and azureresourceschema - -``` yaml $(tag) == 'schema-containerinstance-2020-11-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerInstance/stable/2020-11-01/containerInstance.json - -``` - -### Tag: schema-containerinstance-2019-12-01 and azureresourceschema - -``` yaml $(tag) == 'schema-containerinstance-2019-12-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerInstance/stable/2019-12-01/containerInstance.json - -``` - -### Tag: schema-containerinstance-2018-10-01 and azureresourceschema - -``` yaml $(tag) == 'schema-containerinstance-2018-10-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerInstance/stable/2018-10-01/containerInstance.json - -``` - -### Tag: schema-containerinstance-2018-09-01 and azureresourceschema - -``` yaml $(tag) == 'schema-containerinstance-2018-09-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerInstance/stable/2018-09-01/containerInstance.json - -``` - -### Tag: schema-containerinstance-2018-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-containerinstance-2018-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerInstance/stable/2018-06-01/containerInstance.json - -``` - -### Tag: schema-containerinstance-2018-04-01 and azureresourceschema - -``` yaml $(tag) == 'schema-containerinstance-2018-04-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerInstance/stable/2018-04-01/containerInstance.json - -``` - -### Tag: schema-containerinstance-2018-02-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-containerinstance-2018-02-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerInstance/preview/2018-02-01-preview/containerInstance.json - -``` - -### Tag: schema-containerinstance-2017-12-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-containerinstance-2017-12-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerInstance/preview/2017-12-01-preview/containerInstance.json - -``` - -### Tag: schema-containerinstance-2017-10-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-containerinstance-2017-10-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerInstance/preview/2017-10-01-preview/containerInstance.json - -``` - -### Tag: schema-containerinstance-2017-08-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-containerinstance-2017-08-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerInstance/preview/2017-08-01-preview/containerInstance.json - -``` diff --git a/specification/containerinstance/resource-manager/readme.go.md b/specification/containerinstance/resource-manager/readme.go.md index 193939ef9fe3..e0f0f02aa8db 100644 --- a/specification/containerinstance/resource-manager/readme.go.md +++ b/specification/containerinstance/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: containerinstance clear-output-folder: true ``` diff --git a/specification/containerinstance/resource-manager/readme.md b/specification/containerinstance/resource-manager/readme.md index 3b742564729e..f722746ae620 100644 --- a/specification/containerinstance/resource-manager/readme.md +++ b/specification/containerinstance/resource-manager/readme.md @@ -159,8 +159,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_container_instance'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js containerinstance/resource-manager ``` ## C# @@ -191,6 +189,4 @@ See configuration in [readme.ruby.md](./readme.ruby.md) See configuration in [readme.typescript.md](./readme.typescript.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/containerregistry.json b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/containerregistry.json index 711ad07777ff..4601f264d163 100644 --- a/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/containerregistry.json +++ b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/containerregistry.json @@ -731,13 +731,7 @@ "$ref": "#/parameters/ImageName" }, { - "name": "value", - "in": "body", - "description": "Repository attribute value", - "required": false, - "schema": { - "$ref": "#/definitions/ChangeableAttributes" - } + "$ref": "#/parameters/RepositoryAttributeValue" } ], "responses": { @@ -858,7 +852,7 @@ "$ref": "#/parameters/TagReference" }, { - "$ref": "#/parameters/RepoValue" + "$ref": "#/parameters/TagAttributeValue" } ], "responses": { @@ -1011,7 +1005,7 @@ "$ref": "#/parameters/ImageReference" }, { - "$ref": "#/parameters/RepoValue" + "$ref": "#/parameters/ManifestAttributeValue" } ], "responses": { @@ -1366,7 +1360,7 @@ }, "changeableAttributes": { "description": "Changeable attributes", - "$ref": "#/definitions/ChangeableAttributes" + "$ref": "#/definitions/RepositoryChangeableAttributes" } }, "example": { @@ -1375,7 +1369,8 @@ "readEnabled": true, "listEnabled": true, "deleteEnabled": true, - "writeEnabled": true + "writeEnabled": true, + "teleportEnabled": false }, "imageName": "imageName", "createdTime": "2018-09-07T16:30:46.6583219Z", @@ -1495,8 +1490,8 @@ "description": "Is signed" }, "changeableAttributes": { - "$ref": "#/definitions/ChangeableAttributes", - "description": "Changeable attributes" + "$ref": "#/definitions/TagChangeableAttributes", + "description": "Tag Changeable attributes" } }, "example": { @@ -1672,7 +1667,7 @@ } }, "changeableAttributes": { - "$ref": "#/definitions/ChangeableAttributes", + "$ref": "#/definitions/ManifestChangeableAttributes", "description": "Changeable attributes" } }, @@ -1932,7 +1927,7 @@ "digest": "sha256:5d20c808ce198565ff70b3ed23a991dd49afac45dece63474b27ce6ed036adc6" } }, - "ChangeableAttributes": { + "TagChangeableAttributes": { "properties": { "deleteEnabled": { "type": "boolean", @@ -2045,11 +2040,13 @@ }, "quarantineState": { "type": "string", - "description": "Quarantine state" + "description": "Quarantine state", + "x-accessibility": "internal" }, "quarantineDetails": { "type": "string", - "description": "Quarantine details" + "description": "Quarantine details", + "x-accessibility": "internal" } }, "example": { @@ -2061,6 +2058,38 @@ "writeEnabled": true } }, + "RepositoryChangeableAttributes": { + "description": "Changeable attributes for Repository", + "properties": { + "deleteEnabled": { + "type": "boolean", + "description": "Delete enabled" + }, + "writeEnabled": { + "type": "boolean", + "description": "Write enabled" + }, + "listEnabled": { + "type": "boolean", + "description": "List enabled" + }, + "readEnabled": { + "type": "boolean", + "description": "Read enabled" + }, + "teleportEnabled": { + "type": "boolean", + "description": "Enables Teleport functionality on new images in the repository improving Container startup performance" + } + }, + "example": { + "readEnabled": true, + "listEnabled": true, + "deleteEnabled": true, + "writeEnabled": true, + "teleportEnabled": true + } + }, "Manifest": { "description": "Returns the requested manifest file", "properties": { @@ -2471,13 +2500,33 @@ "type": "string", "x-ms-parameter-location": "method" }, - "RepoValue": { + "RepositoryAttributeValue": { "name": "value", "in": "body", "description": "Repository attribute value", "required": false, "schema": { - "$ref": "#/definitions/ChangeableAttributes" + "$ref": "#/definitions/RepositoryChangeableAttributes" + }, + "x-ms-parameter-location": "method" + }, + "TagAttributeValue": { + "name": "value", + "in": "body", + "description": "Tag attribute value", + "required": false, + "schema": { + "$ref": "#/definitions/TagChangeableAttributes" + }, + "x-ms-parameter-location": "method" + }, + "ManifestAttributeValue": { + "name": "value", + "in": "body", + "description": "Manifest attribute value", + "required": false, + "schema": { + "$ref": "#/definitions/ManifestChangeableAttributes" }, "x-ms-parameter-location": "method" }, diff --git a/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/GetRepositoryAttributes.json b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/GetRepositoryAttributes.json index c6791683bfd2..21c044fb3d03 100644 --- a/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/GetRepositoryAttributes.json +++ b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/GetRepositoryAttributes.json @@ -16,7 +16,8 @@ "deleteEnabled": true, "writeEnabled": true, "readEnabled": true, - "listEnabled": true + "listEnabled": true, + "teleportEnabled": true } } } diff --git a/specification/containerregistry/data-plane/readme.go.md b/specification/containerregistry/data-plane/readme.go.md index 7bac0f179831..a9abe131bb71 100644 --- a/specification/containerregistry/data-plane/readme.go.md +++ b/specification/containerregistry/data-plane/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: containerregistry clear-output-folder: true add-credentials: true diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2020-11-01-preview/containerregistry.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2020-11-01-preview/containerregistry.json index d1821056216a..9469787e7f06 100644 --- a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2020-11-01-preview/containerregistry.json +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2020-11-01-preview/containerregistry.json @@ -4106,6 +4106,7 @@ }, "anonymousPullEnabled": { "description": "Enables registry-wide pull from unauthenticated clients.", + "default": false, "type": "boolean" } } diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-04-01/containerregistry_build.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-04-01/containerregistry_build.json index 117f409b1b66..81b80b716691 100644 --- a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-04-01/containerregistry_build.json +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-04-01/containerregistry_build.json @@ -689,12 +689,14 @@ "definitions": { "RunRequest": { "description": "The request parameters for scheduling a run.", + "required": [ + "type" + ], "type": "object", "properties": { "type": { "description": "The type of the run request.", - "type": "string", - "readOnly": true + "type": "string" }, "isArchiveEnabled": { "description": "The value that indicates whether archiving is enabled for the run or not.", @@ -1274,6 +1276,9 @@ }, "TaskStepProperties": { "description": "Base properties for any task step.", + "required": [ + "type" + ], "type": "object", "properties": { "type": { @@ -1284,7 +1289,6 @@ "EncodedTask" ], "type": "string", - "readOnly": true, "x-ms-enum": { "name": "StepType", "modelAsString": true @@ -1743,6 +1747,9 @@ }, "TaskStepUpdateParameters": { "description": "Base properties for updating any task step.", + "required": [ + "type" + ], "type": "object", "properties": { "type": { @@ -1753,7 +1760,6 @@ "EncodedTask" ], "type": "string", - "readOnly": true, "x-ms-enum": { "name": "StepType", "modelAsString": true @@ -2293,7 +2299,8 @@ "DockerBuildStep": { "description": "The Docker build step.", "required": [ - "dockerFilePath" + "dockerFilePath", + "type" ], "type": "object", "allOf": [ @@ -2340,7 +2347,8 @@ "FileTaskStep": { "description": "The properties of a task step.", "required": [ - "taskFilePath" + "taskFilePath", + "type" ], "type": "object", "allOf": [ @@ -2370,7 +2378,8 @@ "EncodedTaskStep": { "description": "The properties of a encoded task step.", "required": [ - "encodedTaskContent" + "encodedTaskContent", + "type" ], "type": "object", "allOf": [ @@ -2399,6 +2408,9 @@ }, "DockerBuildStepUpdateParameters": { "description": "The properties for updating a docker build step.", + "required": [ + "type" + ], "type": "object", "allOf": [ { @@ -2441,6 +2453,9 @@ }, "FileTaskStepUpdateParameters": { "description": "The properties of updating a task step.", + "required": [ + "type" + ], "type": "object", "allOf": [ { @@ -2468,6 +2483,9 @@ }, "EncodedTaskStepUpdateParameters": { "description": "The properties for updating encoded task step.", + "required": [ + "type" + ], "type": "object", "allOf": [ { diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-04-01/examples/ManagedIdentity/TasksCreate_WithSystemAndUserIdentities.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-04-01/examples/ManagedIdentity/TasksCreate_WithSystemAndUserIdentities.json index 7d8e6eeb73f4..107c8fbff61f 100644 --- a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-04-01/examples/ManagedIdentity/TasksCreate_WithSystemAndUserIdentities.json +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-04-01/examples/ManagedIdentity/TasksCreate_WithSystemAndUserIdentities.json @@ -16,6 +16,7 @@ "cpu": 2 }, "step": { + "type": "Docker", "imageNames": [ "azurerest:testtag" ], diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-04-01/examples/ManagedIdentity/TasksCreate_WithSystemIdentity.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-04-01/examples/ManagedIdentity/TasksCreate_WithSystemIdentity.json index 463e251f63ae..fa1348d1ad60 100644 --- a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-04-01/examples/ManagedIdentity/TasksCreate_WithSystemIdentity.json +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-04-01/examples/ManagedIdentity/TasksCreate_WithSystemIdentity.json @@ -16,6 +16,7 @@ "cpu": 2 }, "step": { + "type": "Docker", "imageNames": [ "azurerest:testtag" ], diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-04-01/examples/ManagedIdentity/TasksCreate_WithUserIdentities.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-04-01/examples/ManagedIdentity/TasksCreate_WithUserIdentities.json index bc6e30988154..49e2278135b7 100644 --- a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-04-01/examples/ManagedIdentity/TasksCreate_WithUserIdentities.json +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-04-01/examples/ManagedIdentity/TasksCreate_WithUserIdentities.json @@ -16,6 +16,7 @@ "cpu": 2 }, "step": { + "type": "Docker", "imageNames": [ "azurerest:testtag" ], diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-04-01/examples/ManagedIdentity/TasksUpdate_WithKeyVaultCustomCredentials.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-04-01/examples/ManagedIdentity/TasksUpdate_WithKeyVaultCustomCredentials.json index 5c7ad4c2da65..b07ff25f6853 100644 --- a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-04-01/examples/ManagedIdentity/TasksUpdate_WithKeyVaultCustomCredentials.json +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-04-01/examples/ManagedIdentity/TasksUpdate_WithKeyVaultCustomCredentials.json @@ -12,6 +12,7 @@ "cpu": 3 }, "step": { + "type": "Docker", "imageNames": [ "azurerest:testtag1" ], diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-04-01/examples/ManagedIdentity/TasksUpdate_WithMSICustomCredentials.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-04-01/examples/ManagedIdentity/TasksUpdate_WithMSICustomCredentials.json index 7008d4a0dfb7..26682fd40ccb 100644 --- a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-04-01/examples/ManagedIdentity/TasksUpdate_WithMSICustomCredentials.json +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-04-01/examples/ManagedIdentity/TasksUpdate_WithMSICustomCredentials.json @@ -12,6 +12,7 @@ "cpu": 3 }, "step": { + "type": "Docker", "imageNames": [ "azurerest:testtag1" ], diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-04-01/examples/TasksCreate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-04-01/examples/TasksCreate.json index 463e251f63ae..fa1348d1ad60 100644 --- a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-04-01/examples/TasksCreate.json +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-04-01/examples/TasksCreate.json @@ -16,6 +16,7 @@ "cpu": 2 }, "step": { + "type": "Docker", "imageNames": [ "azurerest:testtag" ], diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-04-01/examples/TasksUpdate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-04-01/examples/TasksUpdate.json index 0eaa3ae1b0dc..2158f452cbf2 100644 --- a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-04-01/examples/TasksUpdate.json +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-04-01/examples/TasksUpdate.json @@ -12,6 +12,7 @@ "cpu": 3 }, "step": { + "type": "Docker", "imageNames": [ "azurerest:testtag1" ], diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-04-01/examples/TasksUpdate_WithOpaqueCustomCredentials.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-04-01/examples/TasksUpdate_WithOpaqueCustomCredentials.json index 6ade61660c80..aff913fa2626 100644 --- a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-04-01/examples/TasksUpdate_WithOpaqueCustomCredentials.json +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-04-01/examples/TasksUpdate_WithOpaqueCustomCredentials.json @@ -12,6 +12,7 @@ "cpu": 3 }, "step": { + "type": "Docker", "imageNames": [ "azurerest:testtag1" ], diff --git a/specification/containerregistry/resource-manager/readme.azureresourceschema.md b/specification/containerregistry/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index fad13bdf50d6..000000000000 --- a/specification/containerregistry/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,156 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-containerregistry-2020-11-01-preview - - tag: schema-containerregistry-2019-12-01-preview - - tag: schema-containerregistry-2019-06-01-preview - - tag: schema-containerregistry-2019-05-01-preview - - tag: schema-containerregistry-2019-05-01 - - tag: schema-containerregistry-2019-04-01 - - tag: schema-containerregistry-2018-09-01 - - tag: schema-containerregistry-2018-02-01-preview - - tag: schema-containerregistry-2017-10-01 - - tag: schema-containerregistry-2017-06-01-preview - - tag: schema-containerregistry-2017-03-01 - - tag: schema-containerregistry-2016-06-27-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-containerregistry-2020-11-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-containerregistry-2020-11-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerRegistry/preview/2020-11-01-preview/containerregistry.json - -``` - -### Tag: schema-containerregistry-2019-12-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-containerregistry-2019-12-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerRegistry/preview/2019-12-01-preview/containerregistry.json - -``` - -### Tag: schema-containerregistry-2019-06-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-containerregistry-2019-06-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerRegistry/preview/2019-06-01-preview/containerregistry_build.json - -``` - -### Tag: schema-containerregistry-2019-05-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-containerregistry-2019-05-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerRegistry/preview/2019-05-01-preview/containerregistry_scopemap.json - -``` - -### Tag: schema-containerregistry-2019-05-01 and azureresourceschema - -``` yaml $(tag) == 'schema-containerregistry-2019-05-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerRegistry/stable/2019-05-01/containerregistry.json - -``` - -### Tag: schema-containerregistry-2019-04-01 and azureresourceschema - -``` yaml $(tag) == 'schema-containerregistry-2019-04-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerRegistry/stable/2019-04-01/containerregistry_build.json - -``` - -### Tag: schema-containerregistry-2018-09-01 and azureresourceschema - -``` yaml $(tag) == 'schema-containerregistry-2018-09-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerRegistry/stable/2018-09-01/containerregistry_build.json - -``` - -### Tag: schema-containerregistry-2018-02-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-containerregistry-2018-02-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerRegistry/preview/2018-02-01-preview/containerregistry_build.json - -``` - -### Tag: schema-containerregistry-2017-10-01 and azureresourceschema - -``` yaml $(tag) == 'schema-containerregistry-2017-10-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerRegistry/stable/2017-10-01/containerregistry.json - -``` - -### Tag: schema-containerregistry-2017-06-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-containerregistry-2017-06-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerRegistry/preview/2017-06-01-preview/containerregistry.json - -``` - -### Tag: schema-containerregistry-2017-03-01 and azureresourceschema - -``` yaml $(tag) == 'schema-containerregistry-2017-03-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerRegistry/stable/2017-03-01/containerregistry.json - -``` - -### Tag: schema-containerregistry-2016-06-27-preview and azureresourceschema - -``` yaml $(tag) == 'schema-containerregistry-2016-06-27-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerRegistry/preview/2016-06-27-preview/containerregistry.json - -``` diff --git a/specification/containerregistry/resource-manager/readme.go.md b/specification/containerregistry/resource-manager/readme.go.md index 9ffa1be66afd..cbac89f4b333 100644 --- a/specification/containerregistry/resource-manager/readme.go.md +++ b/specification/containerregistry/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: containerregistry clear-output-folder: true ``` diff --git a/specification/containerregistry/resource-manager/readme.md b/specification/containerregistry/resource-manager/readme.md index 315b3c48d1d3..81784d6809f4 100644 --- a/specification/containerregistry/resource-manager/readme.md +++ b/specification/containerregistry/resource-manager/readme.md @@ -28,6 +28,14 @@ These are the global settings for the ContainerRegistry API. openapi-type: arm tag: package-2020-11-preview ``` +### Tag: package-2020-11-preview-only + +These settings apply only when `--tag=package-2020-11-preview-only` is specified on the command line. + +```yaml $(tag) == 'package-2020-11-preview-only' +input-file: + - Microsoft.ContainerRegistry/preview/2020-11-01-preview/containerregistry.json +``` ### Tag: package-2020-11-preview @@ -39,6 +47,15 @@ input-file: - Microsoft.ContainerRegistry/preview/2019-06-01-preview/containerregistry_build.json ``` +### Tag: package-2019-12-preview-only + +These settings apply only when `--tag=package-2019-12-preview-only` is specified on the command line. + +```yaml $(tag) == 'package-2019-12-preview-only' +input-file: + - Microsoft.ContainerRegistry/preview/2019-12-01-preview/containerregistry.json +``` + ### Tag: package-2019-12-preview These settings apply only when `--tag=package-2019-12-preview` is specified on the command line. @@ -70,6 +87,15 @@ input-file: - Microsoft.ContainerRegistry/preview/2019-06-01-preview/containerregistry_build.json ``` +### Tag: package-2019-05-only + +These settings apply only when `--tag=package-2019-05-only` is specified on the command line. + +``` yaml $(tag) == 'package-2019-05-only' +input-file: +- Microsoft.ContainerRegistry/stable/2019-05-01/containerregistry.json +``` + ### Tag: package-2019-05 These settings apply only when `--tag=package-2019-05` is specified on the command line. @@ -80,6 +106,15 @@ input-file: - Microsoft.ContainerRegistry/stable/2019-04-01/containerregistry_build.json ``` +### Tag: package-2019-05-preview-only + +These settings apply only when `--tag=package-2019-05-preview-only` is specified on the command line. + +``` yaml $(tag) == 'package-2019-05-preview-only' +input-file: +- Microsoft.ContainerRegistry/preview/2019-05-01-preview/containerregistry_scopemap.json +``` + ### Tag: package-2019-05-preview These settings apply only when `--tag=package-2019-05-preview` is specified on the command line. @@ -109,6 +144,15 @@ input-file: - Microsoft.ContainerRegistry/stable/2019-04-01/containerregistry_build.json ``` +### Tag: package-2018-09-only + +These settings apply only when `--tag=package-2018-09-only` is specified on the command line. + +``` yaml $(tag) == 'package-2018-09-only' +input-file: +- Microsoft.ContainerRegistry/stable/2018-09-01/containerregistry_build.json +``` + ### Tag: package-2018-09 These settings apply only when `--tag=package-2018-09` is specified on the command line. @@ -119,6 +163,15 @@ input-file: - Microsoft.ContainerRegistry/stable/2018-09-01/containerregistry_build.json ``` +### Tag: package-2018-02-preview-only + +These settings apply only when `--tag=package-2018-02-preview-only` is specified on the command line. + +``` yaml $(tag) == 'package-2018-02-preview-only' +input-file: +- Microsoft.ContainerRegistry/preview/2018-02-01-preview/containerregistry_build.json +``` + ### Tag: package-2018-02-preview These settings apply only when `--tag=package-2018-02-preview` is specified on the command line. @@ -183,6 +236,7 @@ swagger-to-sdk: after_scripts: - python ./scripts/multiapi_init_gen.py azure-mgmt-containerregistry - python ./scripts/trim_aio.py ./sdk/containerregistry/azure-mgmt-containerregistry + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-java - repo: azure-sdk-for-go - repo: azure-sdk-for-js @@ -191,8 +245,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_container_registry'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js containerregistry/resource-manager ``` ## C# @@ -213,6 +265,9 @@ csharp: output-folder: $(csharp-sdks-folder)/containerregistry/Microsoft.Azure.Management.ContainerRegistry/src/Generated clear-output-folder: true ``` +## Pyhton + +See configuration in [readme.python.md](./readme.python.md) ## Go @@ -222,7 +277,5 @@ See configuration in [readme.go.md](./readme.go.md) See configuration in [readme.java.md](./readme.java.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/containerregistry/resource-manager/readme.python.md b/specification/containerregistry/resource-manager/readme.python.md index ef94bd693666..6cab3774be2b 100644 --- a/specification/containerregistry/resource-manager/readme.python.md +++ b/specification/containerregistry/resource-manager/readme.python.md @@ -2,7 +2,7 @@ These settings apply only when `--python` is specified on the command line. -```yaml $(python) +```yaml $(python) && !$(track2) python: azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION @@ -12,11 +12,20 @@ python: no-namespace-folders: true ``` +```yaml $(python) && $(track2) +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +package-name: azure-mgmt-containerregistry +clear-output-folder: true +package-version: 1.0.0b1 +no-namespace-folders: true +``` + ### Python multi-api Generate all API versions currently shipped for this package -```yaml $(python) && $(multiapi) +```yaml $(python) && $(multiapi) && !$(track2) batch: - tag: package-2020-11-preview - tag: package-2019-12-preview @@ -30,6 +39,40 @@ batch: - tag: package-2017-03 ``` +```yaml $(python) && $(multiapi) && $(track2) +clear-output-folder: true +batch: + - tag: package-2020-11-preview-only + - tag: package-2019-12-preview-only + - tag: package-2019-06-preview-only + - tag: package-2019-05-only + - tag: package-2019-05-preview-only + - tag: package-2019-04-only + - tag: package-2018-09-only + - tag: package-2018-02-preview-only + - tag: package-2017-10 + - tag: package-2017-03 + - multiapiscript: true +``` + +``` yaml $(multiapiscript) +output-folder: $(python-sdks-folder)/containerregistry/azure-mgmt-containerregistry/azure/mgmt/containerregistry/ +clear-output-folder: false +perform-load: false +``` +### Tag: package-2020-11-preview-only and python + +These settings apply only when `--tag=package-2020-11-preview-only --python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-2020-11-preview-only' && $(python) +python: + namespace: azure.mgmt.containerregistry.v2020_11_01_preview + output-folder: $(python-sdks-folder)/containerregistry/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2020_11_01_preview +namespace: azure.mgmt.containerregistry.v2020_11_01_preview +output-folder: $(python-sdks-folder)/containerregistry/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2020_11_01_preview +``` + ### Tag: package-2020-11-preview and python These settings apply only when `--tag=package-2020-11-preview --python` is specified on the command line. @@ -39,6 +82,21 @@ Please also specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-2019-12-preview-only' && $(python) +python: + namespace: azure.mgmt.containerregistry.v2019_12_01_preview + output-folder: $(python-sdks-folder)/containerregistry/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2019_12_01_preview +namespace: azure.mgmt.containerregistry.v2019_12_01_preview +output-folder: $(python-sdks-folder)/containerregistry/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2019_12_01_preview ``` ### Tag: package-2019-12-preview and python @@ -50,6 +108,21 @@ Please also specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-2019-06-preview-only' && $(python) +python: + namespace: azure.mgmt.containerregistry.v2019_06_01_preview + output-folder: $(python-sdks-folder)/containerregistry/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2019_06_01_preview +namespace: azure.mgmt.containerregistry.v2019_06_01_preview +output-folder: $(python-sdks-folder)/containerregistry/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2019_06_01_preview ``` ### Tag: package-2019-06-preview and python @@ -61,6 +134,21 @@ Please also specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-2019-05-only' && $(python) +python: + namespace: azure.mgmt.containerregistry.v2019_05_01 + output-folder: $(python-sdks-folder)/containerregistry/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2019_05_01 +namespace: azure.mgmt.containerregistry.v2019_05_01 +output-folder: $(python-sdks-folder)/containerregistry/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2019_05_01 ``` ### Tag: package-2019-05 and python @@ -72,6 +160,21 @@ Please also specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-2019-05-preview-only' && $(python) +python: + namespace: azure.mgmt.containerregistry.v2019_05_01_preview + output-folder: $(python-sdks-folder)/containerregistry/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2019_05_01_preview +namespace: azure.mgmt.containerregistry.v2019_05_01_preview +output-folder: $(python-sdks-folder)/containerregistry/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2019_05_01_preview ``` ### Tag: package-2019-05-preview and python @@ -83,6 +186,21 @@ Please also specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-2019-04-only' && $(python) +python: + namespace: azure.mgmt.containerregistry.v2019_04_01 + output-folder: $(python-sdks-folder)/containerregistry/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2019_04_01 +namespace: azure.mgmt.containerregistry.v2019_04_01 +output-folder: $(python-sdks-folder)/containerregistry/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2019_04_01 ``` ### Tag: package-2019-04 and python @@ -94,6 +212,21 @@ Please also specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-2018-09-only' && $(python) +python: + namespace: azure.mgmt.containerregistry.v2018_09_01 + output-folder: $(python-sdks-folder)/containerregistry/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01 +namespace: azure.mgmt.containerregistry.v2018_09_01 +output-folder: $(python-sdks-folder)/containerregistry/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01 ``` ### Tag: package-2018-09 and python @@ -105,6 +238,21 @@ Please also specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-2018-02-preview-only' && $(python) +python: + namespace: azure.mgmt.containerregistry.v2018_02_01_preview + output-folder: $(python-sdks-folder)/containerregistry/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_02_01_preview +namespace: azure.mgmt.containerregistry.v2018_02_01_preview +output-folder: $(python-sdks-folder)/containerregistry/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_02_01_preview ``` ### Tag: package-2018-02-preview and python @@ -116,6 +264,8 @@ Please also specify `--python-sdks-folder= + $['required'] = ['type']; + - from: swagger-document + where: $.definitions.BuildStepPropertiesUpdateParameters + transform: > + $['required'] = ['type']; + - from: swagger-document + where: $.definitions.QueueBuildRequest + transform: > + $['required'] = ['type']; + - from: swagger-document + where: $.definitions.RunRequest + transform: > + $['required'] = ['type']; + - from: swagger-document + where: $.definitions.TaskStepProperties + transform: > + $['required'] = ['type']; + - from: swagger-document + where: $.definitions.TaskStepUpdateParameters + transform: > + $['required'] = ['type']; +``` \ No newline at end of file diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2020-11-01/managedClusters.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2020-11-01/managedClusters.json index 4c42f13c4b59..ba1c2e821572 100644 --- a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2020-11-01/managedClusters.json +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2020-11-01/managedClusters.json @@ -1896,7 +1896,7 @@ }, "osDiskType": { "$ref": "#/definitions/OSDiskType", - "description": "OS disk type to be used for machines in a given agent pool. Allowed values are 'Ephemeral' and 'Managed'. Defaults to 'Managed'. May not be changed after creation." + "description": "OS disk type to be used for machines in a given agent pool. Allowed values are 'Ephemeral' and 'Managed'. If unspecified, defaults to 'Ephemeral' when the VM supports ephemeral OS and has a cache disk larger than the requested OSDiskSizeGB. Otherwise, defaults to 'Managed'. May not be changed after creation." }, "vnetSubnetID": { "$ref": "#/definitions/ContainerServiceVnetSubnetID", diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2020-12-01/managedClusters.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2020-12-01/managedClusters.json index bc24018164ee..29449da42c45 100644 --- a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2020-12-01/managedClusters.json +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2020-12-01/managedClusters.json @@ -2105,7 +2105,7 @@ }, "osDiskType": { "$ref": "#/definitions/OSDiskType", - "description": "OS disk type to be used for machines in a given agent pool. Allowed values are 'Ephemeral' and 'Managed'. Defaults to 'Managed'. May not be changed after creation." + "description": "OS disk type to be used for machines in a given agent pool. Allowed values are 'Ephemeral' and 'Managed'. If unspecified, defaults to 'Ephemeral' when the VM supports ephemeral OS and has a cache disk larger than the requested OSDiskSizeGB. Otherwise, defaults to 'Managed'. May not be changed after creation." }, "kubeletDiskType": { "$ref": "#/definitions/KubeletDiskType", diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-02-01/managedClusters.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-02-01/managedClusters.json index 38a6641f1238..7efcd1ec2ee9 100644 --- a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-02-01/managedClusters.json +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-02-01/managedClusters.json @@ -2117,7 +2117,7 @@ }, "osDiskType": { "$ref": "#/definitions/OSDiskType", - "description": "OS disk type to be used for machines in a given agent pool. Allowed values are 'Ephemeral' and 'Managed'. Defaults to 'Managed'. May not be changed after creation." + "description": "OS disk type to be used for machines in a given agent pool. Allowed values are 'Ephemeral' and 'Managed'. If unspecified, defaults to 'Ephemeral' when the VM supports ephemeral OS and has a cache disk larger than the requested OSDiskSizeGB. Otherwise, defaults to 'Managed'. May not be changed after creation." }, "kubeletDiskType": { "$ref": "#/definitions/KubeletDiskType", diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/AgentPoolsCreate_CustomNodeConfig.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/AgentPoolsCreate_CustomNodeConfig.json new file mode 100644 index 000000000000..32e1fb5bd7f2 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/AgentPoolsCreate_CustomNodeConfig.json @@ -0,0 +1,122 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "agentPoolName": "agentpool1", + "parameters": { + "properties": { + "orchestratorVersion": "", + "count": 3, + "vmSize": "Standard_DS2_v2", + "osType": "Linux", + "kubeletConfig": { + "cpuManagerPolicy": "static", + "cpuCfsQuota": true, + "cpuCfsQuotaPeriod": "200ms", + "imageGcHighThreshold": 90, + "imageGcLowThreshold": 70, + "topologyManagerPolicy": "best-effort", + "allowedUnsafeSysctls": [ + "kernel.msg*", + "net.core.somaxconn" + ], + "failSwapOn": false + }, + "linuxOSConfig": { + "sysctls": { + "netCoreWmemDefault": 12345, + "netIpv4TcpTwReuse": true, + "netIpv4IpLocalPortRange": "20000 60000", + "kernelThreadsMax": 99999 + }, + "transparentHugePageEnabled": "always", + "transparentHugePageDefrag": "madvise", + "swapFileSizeMB": 1500 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1", + "type": "Microsoft.ContainerService/managedClusters/agentPools", + "name": "agentpool1", + "properties": { + "provisioningState": "Succeeded", + "orchestratorVersion": "1.17.8", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "kubeletConfig": { + "cpuManagerPolicy": "static", + "cpuCfsQuota": true, + "cpuCfsQuotaPeriod": "200ms", + "imageGcHighThreshold": 90, + "imageGcLowThreshold": 70, + "topologyManagerPolicy": "best-effort", + "allowedUnsafeSysctls": [ + "kernel.msg*", + "net.core.somaxconn" + ], + "failSwapOn": false + }, + "linuxOSConfig": { + "sysctls": { + "netCoreWmemDefault": 12345, + "netIpv4TcpTwReuse": true, + "netIpv4IpLocalPortRange": "20000 60000", + "kernelThreadsMax": 99999 + }, + "transparentHugePageEnabled": "always", + "transparentHugePageDefrag": "madvise", + "swapFileSizeMB": 1500 + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1", + "type": "Microsoft.ContainerService/managedClusters/agentPools", + "name": "agentpool1", + "properties": { + "provisioningState": "Creating", + "orchestratorVersion": "1.17.8", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "kubeletConfig": { + "cpuManagerPolicy": "static", + "cpuCfsQuota": true, + "cpuCfsQuotaPeriod": "200ms", + "imageGcHighThreshold": 90, + "imageGcLowThreshold": 70, + "topologyManagerPolicy": "best-effort", + "allowedUnsafeSysctls": [ + "kernel.msg*", + "net.core.somaxconn" + ], + "failSwapOn": false, + "podMaxPids": 100 + }, + "linuxOSConfig": { + "sysctls": { + "netCoreWmemDefault": 65536, + "netIpv4TcpTwReuse": true, + "netIpv4IpLocalPortRange": "20000 60000", + "kernelThreadsMax": 99999 + }, + "transparentHugePageEnabled": "always", + "transparentHugePageDefrag": "madvise", + "swapFileSizeMB": 1500 + } + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/AgentPoolsCreate_EnableEncryptionAtHost.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/AgentPoolsCreate_EnableEncryptionAtHost.json new file mode 100644 index 000000000000..f5b30b475683 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/AgentPoolsCreate_EnableEncryptionAtHost.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "agentPoolName": "agentpool1", + "parameters": { + "properties": { + "orchestratorVersion": "", + "count": 3, + "vmSize": "Standard_DS2_v2", + "osType": "Linux", + "enableEncryptionAtHost": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1", + "type": "Microsoft.ContainerService/managedClusters/agentPools", + "name": "agentpool1", + "properties": { + "provisioningState": "Succeeded", + "orchestratorVersion": "1.17.13", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "enableEncryptionAtHost": true + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1", + "type": "Microsoft.ContainerService/managedClusters/agentPools", + "name": "agentpool1", + "properties": { + "provisioningState": "Creating", + "orchestratorVersion": "1.17.13", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "enableEncryptionAtHost": true + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/AgentPoolsCreate_EnableFIPS.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/AgentPoolsCreate_EnableFIPS.json new file mode 100644 index 000000000000..4a031ea2bb0c --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/AgentPoolsCreate_EnableFIPS.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "agentPoolName": "agentpool1", + "parameters": { + "properties": { + "orchestratorVersion": "", + "count": 3, + "vmSize": "Standard_DS2_v2", + "osType": "Linux", + "enableFIPS": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1", + "type": "Microsoft.ContainerService/managedClusters/agentPools", + "name": "agentpool1", + "properties": { + "provisioningState": "Succeeded", + "orchestratorVersion": "1.19.6", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "enableFIPS": true + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1", + "type": "Microsoft.ContainerService/managedClusters/agentPools", + "name": "agentpool1", + "properties": { + "provisioningState": "Creating", + "orchestratorVersion": "1.19.6", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "enableFIPS": true + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/AgentPoolsCreate_Ephemeral.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/AgentPoolsCreate_Ephemeral.json new file mode 100644 index 000000000000..59999b3c675e --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/AgentPoolsCreate_Ephemeral.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "agentPoolName": "agentpool1", + "parameters": { + "properties": { + "orchestratorVersion": "", + "count": 3, + "vmSize": "Standard_DS2_v2", + "osType": "Linux", + "osDiskType": "Ephemeral", + "osDiskSizeGB": 64 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1", + "type": "Microsoft.ContainerService/managedClusters/agentPools", + "name": "agentpool1", + "properties": { + "provisioningState": "Succeeded", + "orchestratorVersion": "1.17.8", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "osDiskType": "Ephemeral", + "osDiskSizeGB": 64 + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1", + "type": "Microsoft.ContainerService/managedClusters/agentPools", + "name": "agentpool1", + "properties": { + "provisioningState": "Creating", + "orchestratorVersion": "1.17.8", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "osDiskType": "Ephemeral", + "kubeletDiskType": "OS", + "osDiskSizeGB": 64 + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/AgentPoolsCreate_GPUMIG.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/AgentPoolsCreate_GPUMIG.json new file mode 100644 index 000000000000..58918f0f6501 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/AgentPoolsCreate_GPUMIG.json @@ -0,0 +1,125 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "agentPoolName": "agentpool1", + "parameters": { + "properties": { + "orchestratorVersion": "", + "count": 3, + "vmSize": "Standard_ND96asr_v4", + "osType": "Linux", + "gpuInstanceProfile": "MIG2g", + "kubeletConfig": { + "cpuManagerPolicy": "static", + "cpuCfsQuota": true, + "cpuCfsQuotaPeriod": "200ms", + "imageGcHighThreshold": 90, + "imageGcLowThreshold": 70, + "topologyManagerPolicy": "best-effort", + "allowedUnsafeSysctls": [ + "kernel.msg*", + "net.core.somaxconn" + ], + "failSwapOn": false + }, + "linuxOSConfig": { + "sysctls": { + "netCoreWmemDefault": 12345, + "netIpv4TcpTwReuse": true, + "netIpv4IpLocalPortRange": "20000 60000", + "kernelThreadsMax": 99999 + }, + "transparentHugePageEnabled": "always", + "transparentHugePageDefrag": "madvise", + "swapFileSizeMB": 1500 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1", + "type": "Microsoft.ContainerService/managedClusters/agentPools", + "name": "agentpool1", + "properties": { + "provisioningState": "Succeeded", + "orchestratorVersion": "1.17.8", + "count": 3, + "vmSize": "Standard_ND96asr_v4", + "maxPods": 110, + "osType": "Linux", + "gpuInstanceProfile": "MIG2g", + "kubeletConfig": { + "cpuManagerPolicy": "static", + "cpuCfsQuota": true, + "cpuCfsQuotaPeriod": "200ms", + "imageGcHighThreshold": 90, + "imageGcLowThreshold": 70, + "topologyManagerPolicy": "best-effort", + "allowedUnsafeSysctls": [ + "kernel.msg*", + "net.core.somaxconn" + ], + "failSwapOn": false + }, + "linuxOSConfig": { + "sysctls": { + "netCoreWmemDefault": 12345, + "netIpv4TcpTwReuse": true, + "netIpv4IpLocalPortRange": "20000 60000", + "kernelThreadsMax": 99999 + }, + "transparentHugePageEnabled": "always", + "transparentHugePageDefrag": "madvise", + "swapFileSizeMB": 1500 + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1", + "type": "Microsoft.ContainerService/managedClusters/agentPools", + "name": "agentpool1", + "properties": { + "provisioningState": "Creating", + "orchestratorVersion": "1.17.8", + "count": 3, + "vmSize": "Standard_ND96asr_v4", + "maxPods": 110, + "osType": "Linux", + "gpuInstanceProfile": "MIG2g", + "kubeletConfig": { + "cpuManagerPolicy": "static", + "cpuCfsQuota": true, + "cpuCfsQuotaPeriod": "200ms", + "imageGcHighThreshold": 90, + "imageGcLowThreshold": 70, + "topologyManagerPolicy": "best-effort", + "allowedUnsafeSysctls": [ + "kernel.msg*", + "net.core.somaxconn" + ], + "failSwapOn": false, + "podMaxPids": 100 + }, + "linuxOSConfig": { + "sysctls": { + "netCoreWmemDefault": 65536, + "netIpv4TcpTwReuse": true, + "netIpv4IpLocalPortRange": "20000 60000", + "kernelThreadsMax": 99999 + }, + "transparentHugePageEnabled": "always", + "transparentHugePageDefrag": "madvise", + "swapFileSizeMB": 1500 + } + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/AgentPoolsCreate_OSSKU.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/AgentPoolsCreate_OSSKU.json new file mode 100644 index 000000000000..f9c1fd79e4c6 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/AgentPoolsCreate_OSSKU.json @@ -0,0 +1,125 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "agentPoolName": "agentpool1", + "parameters": { + "properties": { + "orchestratorVersion": "", + "count": 3, + "vmSize": "Standard_DS2_v2", + "osType": "Linux", + "osSKU": "CBLMariner", + "kubeletConfig": { + "cpuManagerPolicy": "static", + "cpuCfsQuota": true, + "cpuCfsQuotaPeriod": "200ms", + "imageGcHighThreshold": 90, + "imageGcLowThreshold": 70, + "topologyManagerPolicy": "best-effort", + "allowedUnsafeSysctls": [ + "kernel.msg*", + "net.core.somaxconn" + ], + "failSwapOn": false + }, + "linuxOSConfig": { + "sysctls": { + "netCoreWmemDefault": 12345, + "netIpv4TcpTwReuse": true, + "netIpv4IpLocalPortRange": "20000 60000", + "kernelThreadsMax": 99999 + }, + "transparentHugePageEnabled": "always", + "transparentHugePageDefrag": "madvise", + "swapFileSizeMB": 1500 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1", + "type": "Microsoft.ContainerService/managedClusters/agentPools", + "name": "agentpool1", + "properties": { + "provisioningState": "Succeeded", + "orchestratorVersion": "1.17.8", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "osSKU": "CBLMariner", + "kubeletConfig": { + "cpuManagerPolicy": "static", + "cpuCfsQuota": true, + "cpuCfsQuotaPeriod": "200ms", + "imageGcHighThreshold": 90, + "imageGcLowThreshold": 70, + "topologyManagerPolicy": "best-effort", + "allowedUnsafeSysctls": [ + "kernel.msg*", + "net.core.somaxconn" + ], + "failSwapOn": false + }, + "linuxOSConfig": { + "sysctls": { + "netCoreWmemDefault": 12345, + "netIpv4TcpTwReuse": true, + "netIpv4IpLocalPortRange": "20000 60000", + "kernelThreadsMax": 99999 + }, + "transparentHugePageEnabled": "always", + "transparentHugePageDefrag": "madvise", + "swapFileSizeMB": 1500 + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1", + "type": "Microsoft.ContainerService/managedClusters/agentPools", + "name": "agentpool1", + "properties": { + "provisioningState": "Creating", + "orchestratorVersion": "1.17.8", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "osSKU": "CBLMariner", + "kubeletConfig": { + "cpuManagerPolicy": "static", + "cpuCfsQuota": true, + "cpuCfsQuotaPeriod": "200ms", + "imageGcHighThreshold": 90, + "imageGcLowThreshold": 70, + "topologyManagerPolicy": "best-effort", + "allowedUnsafeSysctls": [ + "kernel.msg*", + "net.core.somaxconn" + ], + "failSwapOn": false, + "podMaxPids": 100 + }, + "linuxOSConfig": { + "sysctls": { + "netCoreWmemDefault": 65536, + "netIpv4TcpTwReuse": true, + "netIpv4IpLocalPortRange": "20000 60000", + "kernelThreadsMax": 99999 + }, + "transparentHugePageEnabled": "always", + "transparentHugePageDefrag": "madvise", + "swapFileSizeMB": 1500 + } + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/AgentPoolsCreate_PPG.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/AgentPoolsCreate_PPG.json new file mode 100644 index 000000000000..4c4446378803 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/AgentPoolsCreate_PPG.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "agentPoolName": "agentpool1", + "parameters": { + "properties": { + "orchestratorVersion": "", + "count": 3, + "vmSize": "Standard_DS2_v2", + "osType": "Linux", + "proximityPlacementGroupID": "/subscriptions/subid1/resourcegroups/rg1/providers//Microsoft.Compute/proximityPlacementGroups/ppg1" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1", + "type": "Microsoft.ContainerService/managedClusters/agentPools", + "name": "agentpool1", + "properties": { + "provisioningState": "Succeeded", + "orchestratorVersion": "1.9.6", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "proximityPlacementGroupID": "/subscriptions/subid1/resourcegroups/rg1/providers//Microsoft.Compute/proximityPlacementGroups/ppg1" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1", + "type": "Microsoft.ContainerService/managedClusters/agentPools", + "name": "agentpool1", + "properties": { + "provisioningState": "Creating", + "orchestratorVersion": "1.9.6", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "proximityPlacementGroupID": "/subscriptions/subid1/resourcegroups/rg1/providers//Microsoft.Compute/proximityPlacementGroups/ppg1" + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/AgentPoolsCreate_Spot.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/AgentPoolsCreate_Spot.json new file mode 100644 index 000000000000..7278f88a1766 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/AgentPoolsCreate_Spot.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "agentPoolName": "agentpool1", + "parameters": { + "properties": { + "orchestratorVersion": "", + "count": 3, + "vmSize": "Standard_DS1_v2", + "osType": "Linux", + "tags": { + "name1": "val1" + }, + "nodeLabels": { + "key1": "val1" + }, + "nodeTaints": [ + "Key1=Value1:NoSchedule" + ], + "scaleSetPriority": "Spot", + "scaleSetEvictionPolicy": "Delete" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1", + "type": "Microsoft.ContainerService/managedClusters/agentPools", + "name": "agentpool1", + "properties": { + "provisioningState": "Succeeded", + "orchestratorVersion": "1.9.6", + "count": 3, + "vmSize": "Standard_DS1_v2", + "maxPods": 110, + "osType": "Linux", + "tags": { + "name1": "val1" + }, + "nodeLabels": { + "key1": "val1" + }, + "nodeTaints": [ + "Key1=Value1:NoSchedule" + ], + "scaleSetPriority": "Spot", + "scaleSetEvictionPolicy": "Delete", + "spotMaxPrice": -1 + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1", + "type": "Microsoft.ContainerService/managedClusters/agentPools", + "name": "agentpool1", + "properties": { + "provisioningState": "Creating", + "orchestratorVersion": "1.9.6", + "count": 3, + "vmSize": "Standard_DS1_v2", + "maxPods": 110, + "osType": "Linux", + "tags": { + "name1": "val1" + }, + "nodeLabels": { + "key1": "val1" + }, + "nodeTaints": [ + "Key1=Value1:NoSchedule" + ], + "scaleSetPriority": "Spot", + "scaleSetEvictionPolicy": "Delete", + "spotMaxPrice": -1 + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/AgentPoolsCreate_Update.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/AgentPoolsCreate_Update.json new file mode 100644 index 000000000000..9bbf509934e5 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/AgentPoolsCreate_Update.json @@ -0,0 +1,86 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "agentPoolName": "agentpool1", + "parameters": { + "properties": { + "orchestratorVersion": "", + "count": 3, + "vmSize": "Standard_DS1_v2", + "osType": "Linux", + "tags": { + "name1": "val1" + }, + "nodeLabels": { + "key1": "val1" + }, + "nodeTaints": [ + "Key1=Value1:NoSchedule" + ], + "scaleSetPriority": "Spot", + "scaleSetEvictionPolicy": "Delete", + "mode": "User" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1", + "type": "Microsoft.ContainerService/managedClusters/agentPools", + "name": "agentpool1", + "properties": { + "provisioningState": "Succeeded", + "orchestratorVersion": "1.9.6", + "count": 3, + "vmSize": "Standard_DS1_v2", + "maxPods": 110, + "osType": "Linux", + "tags": { + "name1": "val1" + }, + "nodeLabels": { + "key1": "val1" + }, + "nodeTaints": [ + "Key1=Value1:NoSchedule" + ], + "scaleSetPriority": "Spot", + "scaleSetEvictionPolicy": "Delete", + "mode": "User", + "nodeImageVersion": "AKSUbuntu:1604:2020.03.11" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1", + "type": "Microsoft.ContainerService/managedClusters/agentPools", + "name": "agentpool1", + "properties": { + "provisioningState": "Creating", + "orchestratorVersion": "1.9.6", + "count": 3, + "vmSize": "Standard_DS1_v2", + "maxPods": 110, + "osType": "Linux", + "tags": { + "name1": "val1" + }, + "nodeLabels": { + "key1": "val1" + }, + "nodeTaints": [ + "Key1=Value1:NoSchedule" + ], + "scaleSetPriority": "Spot", + "scaleSetEvictionPolicy": "Delete", + "mode": "User" + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/AgentPoolsDelete.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/AgentPoolsDelete.json new file mode 100644 index 000000000000..d83608f0b9e7 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/AgentPoolsDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "agentPoolName": "agentpool1" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/AgentPoolsGet.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/AgentPoolsGet.json new file mode 100644 index 000000000000..63d141e9fdc4 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/AgentPoolsGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "agentPoolName": "agentpool1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1", + "name": "agentpool1", + "properties": { + "provisioningState": "Succeeded", + "count": 3, + "vmSize": "Standard_DS1_v2", + "maxPods": 110, + "osType": "Linux", + "orchestratorVersion": "1.9.6", + "nodeImageVersion": "AKSUbuntu:1604:2020.03.11", + "upgradeSettings": { + "maxSurge": "33%" + } + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/AgentPoolsGetAgentPoolAvailableVersions.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/AgentPoolsGetAgentPoolAvailableVersions.json new file mode 100644 index 000000000000..db883574adf6 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/AgentPoolsGetAgentPoolAvailableVersions.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/availableagentpoolversions", + "name": "default", + "properties": { + "agentPoolVersions": [ + { + "kubernetesVersion": "1.12.7" + }, + { + "kubernetesVersion": "1.12.8" + }, + { + "default": true, + "kubernetesVersion": "1.13.5", + "isPreview": true + } + ] + }, + "type": "Microsoft.ContainerService/managedClusters/availableAgentpoolVersions" + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/AgentPoolsGetUpgradeProfile.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/AgentPoolsGetUpgradeProfile.json new file mode 100644 index 000000000000..f37365f83cc3 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/AgentPoolsGetUpgradeProfile.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "agentPoolName": "agentpool1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1/upgradeprofiles/default", + "name": "default", + "properties": { + "kubernetesVersion": "1.12.8", + "osType": "Linux", + "upgrades": [ + { + "kubernetesVersion": "1.13.5" + } + ], + "latestNodeImageVersion": "AKSUbuntu:1604:2020.03.11" + }, + "type": "Microsoft.ContainerService/managedClusters/agentPools/upgradeProfiles" + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/AgentPoolsList.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/AgentPoolsList.json new file mode 100644 index 000000000000..ea01b7b9e8c0 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/AgentPoolsList.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1", + "name": "agentpool1", + "properties": { + "provisioningState": "Succeeded", + "count": 3, + "vmSize": "Standard_DS1_v2", + "maxPods": 110, + "osType": "Linux", + "orchestratorVersion": "1.9.6", + "nodeImageVersion": "AKSUbuntu:1604:2020.03.11" + } + } + ] + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/AgentPoolsUpgradeNodeImageVersion.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/AgentPoolsUpgradeNodeImageVersion.json new file mode 100644 index 000000000000..19ed7773df40 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/AgentPoolsUpgradeNodeImageVersion.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "agentPoolName": "agentpool1" + }, + "responses": { + "200": {}, + "202": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1", + "name": "agentpool1", + "properties": { + "provisioningState": "UpgradingNodeImageVersion", + "count": 3, + "vmSize": "Standard_DS1_v2", + "maxPods": 110, + "osType": "Linux", + "orchestratorVersion": "1.9.6", + "nodeImageVersion": "AKSUbuntu-1604-2020.03.11", + "upgradeSettings": { + "maxSurge": "33%" + } + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/AgentPools_Update.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/AgentPools_Update.json new file mode 100644 index 000000000000..b51da29b74fc --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/AgentPools_Update.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "agentPoolName": "agentpool1", + "parameters": { + "properties": { + "orchestratorVersion": "", + "count": 3, + "enableAutoScaling": true, + "minCount": 2, + "maxCount": 2, + "vmSize": "Standard_DS1_v2", + "osType": "Linux", + "nodeTaints": [ + "Key1=Value1:NoSchedule" + ], + "scaleSetPriority": "Spot", + "scaleSetEvictionPolicy": "Delete" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1", + "type": "Microsoft.ContainerService/managedClusters/agentPools", + "name": "agentpool1", + "properties": { + "provisioningState": "Succeeded", + "orchestratorVersion": "1.9.6", + "count": 3, + "enableAutoScaling": true, + "minCount": 2, + "maxCount": 2, + "vmSize": "Standard_DS1_v2", + "maxPods": 110, + "osType": "Linux", + "nodeTaints": [ + "Key1=Value1:NoSchedule" + ], + "scaleSetPriority": "Spot", + "scaleSetEvictionPolicy": "Delete" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1", + "type": "Microsoft.ContainerService/managedClusters/agentPools", + "name": "agentpool1", + "properties": { + "provisioningState": "Updating", + "orchestratorVersion": "1.9.6", + "count": 3, + "enableAutoScaling": true, + "minCount": 2, + "maxCount": 2, + "vmSize": "Standard_DS1_v2", + "maxPods": 110, + "osType": "Linux", + "nodeTaints": [ + "Key1=Value1:NoSchedule" + ], + "scaleSetPriority": "Spot", + "scaleSetEvictionPolicy": "Delete" + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ContainerServiceGetOSOptions.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ContainerServiceGetOSOptions.json new file mode 100644 index 000000000000..3f597b8f38c3 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ContainerServiceGetOSOptions.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1", + "location": "location1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/providers/Microsoft.ContainerService/locations/location1/osOptions/default", + "name": "default", + "type": "Microsoft.ContainerService/locations/osOptions", + "properties": { + "osOptionPropertyList": [ + { + "os-type": "Linux", + "enable-fips-image": false + }, + { + "os-type": "Windows", + "enable-fips-image": false + } + ] + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/MaintenanceConfigurationsCreate_Update.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/MaintenanceConfigurationsCreate_Update.json new file mode 100644 index 000000000000..a33b11ae9efa --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/MaintenanceConfigurationsCreate_Update.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "configName": "default", + "parameters": { + "properties": { + "timeInWeek": [ + { + "day": "Monday", + "hourSlots": [ + 1, + 2 + ] + } + ], + "notAllowedTime": [ + { + "start": "2020-11-26T03:00:00Z", + "end": "2020-11-30T12:00:00Z" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/maintenanceConfigurations/default", + "type": "Microsoft.ContainerService/managedClusters/maintenanceConfigurations", + "name": "default", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "timeInWeek": [ + { + "day": "Monday", + "hourSlots": [ + 1, + 2 + ] + } + ], + "notAllowedTime": [ + { + "start": "2020-11-26T03:00:00Z", + "end": "2020-11-30T12:00:00Z" + } + ] + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/MaintenanceConfigurationsDelete.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/MaintenanceConfigurationsDelete.json new file mode 100644 index 000000000000..89786cfc3439 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/MaintenanceConfigurationsDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "configName": "default" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/MaintenanceConfigurationsGet.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/MaintenanceConfigurationsGet.json new file mode 100644 index 000000000000..a7c53721c38f --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/MaintenanceConfigurationsGet.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "configName": "default" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/maintenanceConfigurations/default", + "name": "default", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "timeInWeek": [ + { + "day": "Monday", + "hourSlots": [ + 1, + 2 + ] + } + ], + "notAllowedTime": [ + { + "start": "2020-11-26T03:00:00Z", + "end": "2020-11-30T12:00:00Z" + } + ] + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/MaintenanceConfigurationsList.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/MaintenanceConfigurationsList.json new file mode 100644 index 000000000000..743933be6ffb --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/MaintenanceConfigurationsList.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/maintenanceConfigurations/default", + "name": "default", + "properties": { + "timeInWeek": [ + { + "day": "Monday", + "hourSlots": [ + 1, + 2 + ] + } + ], + "notAllowedTime": [ + { + "start": "2020-11-26T03:00:00Z", + "end": "2020-11-30T12:00:00Z" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersCreate_EnableEncryptionAtHost.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersCreate_EnableEncryptionAtHost.json new file mode 100644 index 000000000000..c208175d2b1f --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersCreate_EnableEncryptionAtHost.json @@ -0,0 +1,236 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "parameters": { + "location": "location1", + "tags": { + "tier": "production", + "archv2": "" + }, + "sku": { + "name": "Basic", + "tier": "Free" + }, + "properties": { + "kubernetesVersion": "", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS2_v2", + "osType": "Linux", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System", + "enableEncryptionAtHost": true + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "networkProfile": { + "loadBalancerSku": "standard", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "managedOutboundIPs": { + "count": 2 + } + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + }, + "windowsProfile": { + "adminUsername": "azureuser", + "adminPassword": "replacePassword1234$" + }, + "servicePrincipalProfile": { + "clientId": "clientid", + "secret": "secret" + }, + "addonProfiles": {}, + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Succeeded", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Succeeded", + "orchestratorVersion": "1.9.6", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System", + "nodeImageVersion": "AKSUbuntu:1604:2020.03.11", + "enableEncryptionAtHost": true + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "windowsProfile": { + "adminUsername": "azureuser" + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true, + "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io", + "networkProfile": { + "loadBalancerSku": "basic", + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "allocatedOutboundPorts": 2000, + "idleTimeoutInMinutes": 10, + "managedOutboundIPs": { + "count": 2 + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Creating", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Creating", + "orchestratorVersion": "1.9.6", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System", + "enableEncryptionAtHost": true + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "windowsProfile": { + "adminUsername": "azureuser" + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true, + "networkProfile": { + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "loadBalancerSku": "standard", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "allocatedOutboundPorts": 2000, + "idleTimeoutInMinutes": 10, + "managedOutboundIPs": { + "count": 2 + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + } + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersCreate_EnabledFIPS.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersCreate_EnabledFIPS.json new file mode 100644 index 000000000000..c45d7d90a323 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersCreate_EnabledFIPS.json @@ -0,0 +1,236 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "parameters": { + "location": "location1", + "tags": { + "tier": "production", + "archv2": "" + }, + "sku": { + "name": "Basic", + "tier": "Free" + }, + "properties": { + "kubernetesVersion": "", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS2_v2", + "osType": "Linux", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System", + "enableFIPS": true + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "networkProfile": { + "loadBalancerSku": "standard", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "managedOutboundIPs": { + "count": 2 + } + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + }, + "windowsProfile": { + "adminUsername": "azureuser", + "adminPassword": "replacePassword1234$" + }, + "servicePrincipalProfile": { + "clientId": "clientid", + "secret": "secret" + }, + "addonProfiles": {}, + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": false + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Succeeded", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Succeeded", + "orchestratorVersion": "1.9.6", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System", + "nodeImageVersion": "AKSUbuntu:1604:2020.03.11", + "enableFIPS": true + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "windowsProfile": { + "adminUsername": "azureuser" + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": false, + "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io", + "networkProfile": { + "loadBalancerSku": "basic", + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "allocatedOutboundPorts": 2000, + "idleTimeoutInMinutes": 10, + "managedOutboundIPs": { + "count": 2 + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Creating", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Creating", + "orchestratorVersion": "1.9.6", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System", + "enableFIPS": true + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "windowsProfile": { + "adminUsername": "azureuser" + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": false, + "networkProfile": { + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "loadBalancerSku": "standard", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "allocatedOutboundPorts": 2000, + "idleTimeoutInMinutes": 10, + "managedOutboundIPs": { + "count": 2 + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + } + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersCreate_GPUMIG.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersCreate_GPUMIG.json new file mode 100644 index 000000000000..bc7e5e68b680 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersCreate_GPUMIG.json @@ -0,0 +1,263 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "parameters": { + "location": "location1", + "tags": { + "tier": "production", + "archv2": "" + }, + "sku": { + "name": "Basic", + "tier": "Free" + }, + "properties": { + "kubernetesVersion": "", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_ND96asr_v4", + "osType": "Linux", + "gpuInstanceProfile": "MIG3g", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "networkProfile": { + "loadBalancerSku": "standard", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "managedOutboundIPs": { + "count": 2 + } + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + }, + "windowsProfile": { + "adminUsername": "azureuser", + "adminPassword": "replacePassword1234$" + }, + "servicePrincipalProfile": { + "clientId": "clientid", + "secret": "secret" + }, + "addonProfiles": {}, + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true, + "httpProxyConfig": { + "httpProxy": "http://myproxy.server.com:8080", + "httpsProxy": "https://myproxy.server.com:8080", + "noProxy": [ + "localhost", + "127.0.0.1" + ], + "trustedCa": "Q29uZ3JhdHMhIFlvdSBoYXZlIGZvdW5kIGEgaGlkZGVuIG1lc3NhZ2U=" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Succeeded", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_ND96asr_v4", + "maxPods": 110, + "osType": "Linux", + "gpuInstanceProfile": "MIG3g", + "provisioningState": "Succeeded", + "orchestratorVersion": "1.9.6", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System", + "nodeImageVersion": "AKSUbuntu:1604:2020.03.11" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "windowsProfile": { + "adminUsername": "azureuser" + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true, + "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io", + "networkProfile": { + "loadBalancerSku": "basic", + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "allocatedOutboundPorts": 2000, + "idleTimeoutInMinutes": 10, + "managedOutboundIPs": { + "count": 2 + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + }, + "httpProxyConfig": { + "httpProxy": "http://myproxy.server.com:8080", + "httpsProxy": "https://myproxy.server.com:8080", + "noProxy": [ + "localhost", + "127.0.0.1" + ], + "trustedCa": "Q29uZ3JhdHMhIFlvdSBoYXZlIGZvdW5kIGEgaGlkZGVuIG1lc3NhZ2U=" + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Creating", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_ND96asr_v4", + "maxPods": 110, + "osType": "Linux", + "gpuInstanceProfile": "MIG3g", + "provisioningState": "Creating", + "orchestratorVersion": "1.9.6", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "windowsProfile": { + "adminUsername": "azureuser" + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true, + "networkProfile": { + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "loadBalancerSku": "standard", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "allocatedOutboundPorts": 2000, + "idleTimeoutInMinutes": 10, + "managedOutboundIPs": { + "count": 2 + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + }, + "httpProxyConfig": { + "httpProxy": "http://myproxy.server.com:8080", + "httpsProxy": "https://myproxy.server.com:8080", + "noProxy": [ + "localhost", + "127.0.0.1" + ], + "trustedCa": "Q29uZ3JhdHMhIFlvdSBoYXZlIGZvdW5kIGEgaGlkZGVuIG1lc3NhZ2U=" + } + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersCreate_HTTPProxy.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersCreate_HTTPProxy.json new file mode 100644 index 000000000000..30562135b159 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersCreate_HTTPProxy.json @@ -0,0 +1,260 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "parameters": { + "location": "location1", + "tags": { + "tier": "production", + "archv2": "" + }, + "sku": { + "name": "Basic", + "tier": "Free" + }, + "properties": { + "kubernetesVersion": "", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS2_v2", + "osType": "Linux", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "networkProfile": { + "loadBalancerSku": "standard", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "managedOutboundIPs": { + "count": 2 + } + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + }, + "windowsProfile": { + "adminUsername": "azureuser", + "adminPassword": "replacePassword1234$" + }, + "servicePrincipalProfile": { + "clientId": "clientid", + "secret": "secret" + }, + "addonProfiles": {}, + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true, + "httpProxyConfig": { + "httpProxy": "http://myproxy.server.com:8080", + "httpsProxy": "https://myproxy.server.com:8080", + "noProxy": [ + "localhost", + "127.0.0.1" + ], + "trustedCa": "Q29uZ3JhdHMhIFlvdSBoYXZlIGZvdW5kIGEgaGlkZGVuIG1lc3NhZ2U=" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Succeeded", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Succeeded", + "orchestratorVersion": "1.9.6", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System", + "nodeImageVersion": "AKSUbuntu:1604:2020.03.11" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "windowsProfile": { + "adminUsername": "azureuser" + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true, + "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io", + "networkProfile": { + "loadBalancerSku": "basic", + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "allocatedOutboundPorts": 2000, + "idleTimeoutInMinutes": 10, + "managedOutboundIPs": { + "count": 2 + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + }, + "httpProxyConfig": { + "httpProxy": "http://myproxy.server.com:8080", + "httpsProxy": "https://myproxy.server.com:8080", + "noProxy": [ + "localhost", + "127.0.0.1" + ], + "trustedCa": "Q29uZ3JhdHMhIFlvdSBoYXZlIGZvdW5kIGEgaGlkZGVuIG1lc3NhZ2U=" + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Creating", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Creating", + "orchestratorVersion": "1.9.6", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "windowsProfile": { + "adminUsername": "azureuser" + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true, + "networkProfile": { + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "loadBalancerSku": "standard", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "allocatedOutboundPorts": 2000, + "idleTimeoutInMinutes": 10, + "managedOutboundIPs": { + "count": 2 + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + }, + "httpProxyConfig": { + "httpProxy": "http://myproxy.server.com:8080", + "httpsProxy": "https://myproxy.server.com:8080", + "noProxy": [ + "localhost", + "127.0.0.1" + ], + "trustedCa": "Q29uZ3JhdHMhIFlvdSBoYXZlIGZvdW5kIGEgaGlkZGVuIG1lc3NhZ2U=" + } + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersCreate_NodePublicIPPrefix.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersCreate_NodePublicIPPrefix.json new file mode 100644 index 000000000000..6d54b9ebdf5c --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersCreate_NodePublicIPPrefix.json @@ -0,0 +1,236 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "parameters": { + "location": "location1", + "tags": { + "tier": "production", + "archv2": "" + }, + "sku": { + "name": "Basic", + "tier": "Free" + }, + "properties": { + "kubernetesVersion": "", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS2_v2", + "osType": "Linux", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System", + "nodePublicIPPrefixID": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.Network/publicIPPrefixes/public-ip-prefix" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "networkProfile": { + "loadBalancerSku": "standard", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "managedOutboundIPs": { + "count": 2 + } + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + }, + "windowsProfile": { + "adminUsername": "azureuser", + "adminPassword": "replacePassword1234$" + }, + "servicePrincipalProfile": { + "clientId": "clientid", + "secret": "secret" + }, + "addonProfiles": {}, + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Succeeded", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Succeeded", + "orchestratorVersion": "1.9.6", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System", + "nodeImageVersion": "AKSUbuntu:1604:2020.03.11", + "nodePublicIPPrefixID": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.Network/publicIPPrefixes/public-ip-prefix" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "windowsProfile": { + "adminUsername": "azureuser" + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true, + "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io", + "networkProfile": { + "loadBalancerSku": "basic", + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "allocatedOutboundPorts": 2000, + "idleTimeoutInMinutes": 10, + "managedOutboundIPs": { + "count": 2 + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Creating", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Creating", + "orchestratorVersion": "1.9.6", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System", + "nodePublicIPPrefixID": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.Network/publicIPPrefixes/public-ip-prefix" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "windowsProfile": { + "adminUsername": "azureuser" + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true, + "networkProfile": { + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "loadBalancerSku": "standard", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "allocatedOutboundPorts": 2000, + "idleTimeoutInMinutes": 10, + "managedOutboundIPs": { + "count": 2 + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + } + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersCreate_OSSKU.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersCreate_OSSKU.json new file mode 100644 index 000000000000..2907e0b44a4a --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersCreate_OSSKU.json @@ -0,0 +1,263 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "parameters": { + "location": "location1", + "tags": { + "tier": "production", + "archv2": "" + }, + "sku": { + "name": "Basic", + "tier": "Free" + }, + "properties": { + "kubernetesVersion": "", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS2_v2", + "osType": "Linux", + "osSKU": "CBLMariner", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "networkProfile": { + "loadBalancerSku": "standard", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "managedOutboundIPs": { + "count": 2 + } + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + }, + "windowsProfile": { + "adminUsername": "azureuser", + "adminPassword": "replacePassword1234$" + }, + "servicePrincipalProfile": { + "clientId": "clientid", + "secret": "secret" + }, + "addonProfiles": {}, + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true, + "httpProxyConfig": { + "httpProxy": "http://myproxy.server.com:8080", + "httpsProxy": "https://myproxy.server.com:8080", + "noProxy": [ + "localhost", + "127.0.0.1" + ], + "trustedCa": "Q29uZ3JhdHMhIFlvdSBoYXZlIGZvdW5kIGEgaGlkZGVuIG1lc3NhZ2U=" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Succeeded", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "osSKU": "CBLMariner", + "provisioningState": "Succeeded", + "orchestratorVersion": "1.9.6", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System", + "nodeImageVersion": "AKSUbuntu:1604:2020.03.11" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "windowsProfile": { + "adminUsername": "azureuser" + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true, + "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io", + "networkProfile": { + "loadBalancerSku": "basic", + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "allocatedOutboundPorts": 2000, + "idleTimeoutInMinutes": 10, + "managedOutboundIPs": { + "count": 2 + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + }, + "httpProxyConfig": { + "httpProxy": "http://myproxy.server.com:8080", + "httpsProxy": "https://myproxy.server.com:8080", + "noProxy": [ + "localhost", + "127.0.0.1" + ], + "trustedCa": "Q29uZ3JhdHMhIFlvdSBoYXZlIGZvdW5kIGEgaGlkZGVuIG1lc3NhZ2U=" + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Creating", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "osSKU": "CBLMariner", + "provisioningState": "Creating", + "orchestratorVersion": "1.9.6", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "windowsProfile": { + "adminUsername": "azureuser" + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true, + "networkProfile": { + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "loadBalancerSku": "standard", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "allocatedOutboundPorts": 2000, + "idleTimeoutInMinutes": 10, + "managedOutboundIPs": { + "count": 2 + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + }, + "httpProxyConfig": { + "httpProxy": "http://myproxy.server.com:8080", + "httpsProxy": "https://myproxy.server.com:8080", + "noProxy": [ + "localhost", + "127.0.0.1" + ], + "trustedCa": "Q29uZ3JhdHMhIFlvdSBoYXZlIGZvdW5kIGEgaGlkZGVuIG1lc3NhZ2U=" + } + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersCreate_PPG.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersCreate_PPG.json new file mode 100644 index 000000000000..c655ff9fa6c9 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersCreate_PPG.json @@ -0,0 +1,236 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "parameters": { + "location": "location1", + "tags": { + "tier": "production", + "archv2": "" + }, + "sku": { + "name": "Basic", + "tier": "Free" + }, + "properties": { + "kubernetesVersion": "", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS2_v2", + "osType": "Linux", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System", + "proximityPlacementGroupID": "/subscriptions/subid1/resourcegroups/rg1/providers//Microsoft.Compute/proximityPlacementGroups/ppg1" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "networkProfile": { + "loadBalancerSku": "standard", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "managedOutboundIPs": { + "count": 2 + } + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + }, + "windowsProfile": { + "adminUsername": "azureuser", + "adminPassword": "replacePassword1234$" + }, + "servicePrincipalProfile": { + "clientId": "clientid", + "secret": "secret" + }, + "addonProfiles": {}, + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Succeeded", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Succeeded", + "orchestratorVersion": "1.9.6", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System", + "nodeImageVersion": "AKSUbuntu:1604:2020.03.11", + "proximityPlacementGroupID": "/subscriptions/subid1/resourcegroups/rg1/providers//Microsoft.Compute/proximityPlacementGroups/ppg1" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "windowsProfile": { + "adminUsername": "azureuser" + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true, + "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io", + "networkProfile": { + "loadBalancerSku": "basic", + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "allocatedOutboundPorts": 2000, + "idleTimeoutInMinutes": 10, + "managedOutboundIPs": { + "count": 2 + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Creating", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Creating", + "orchestratorVersion": "1.9.6", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System", + "proximityPlacementGroupID": "/subscriptions/subid1/resourcegroups/rg1/providers//Microsoft.Compute/proximityPlacementGroups/ppg1" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "windowsProfile": { + "adminUsername": "azureuser" + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true, + "networkProfile": { + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "loadBalancerSku": "standard", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "allocatedOutboundPorts": 2000, + "idleTimeoutInMinutes": 10, + "managedOutboundIPs": { + "count": 2 + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + } + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersCreate_PodIdentity.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersCreate_PodIdentity.json new file mode 100644 index 000000000000..7643781cb1c1 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersCreate_PodIdentity.json @@ -0,0 +1,245 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "parameters": { + "location": "location1", + "tags": { + "tier": "production", + "archv2": "" + }, + "sku": { + "name": "Basic", + "tier": "Free" + }, + "properties": { + "kubernetesVersion": "", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS2_v2", + "osType": "Linux", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "networkProfile": { + "loadBalancerSku": "standard", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "managedOutboundIPs": { + "count": 2 + } + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + }, + "windowsProfile": { + "adminUsername": "azureuser", + "adminPassword": "replacePassword1234$" + }, + "servicePrincipalProfile": { + "clientId": "clientid", + "secret": "secret" + }, + "addonProfiles": {}, + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true, + "podIdentityProfile": { + "enabled": true, + "allowNetworkPluginKubenet": true + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Succeeded", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Succeeded", + "orchestratorVersion": "1.9.6", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System", + "nodeImageVersion": "AKSUbuntu:1604:2020.03.11" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "windowsProfile": { + "adminUsername": "azureuser" + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true, + "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io", + "networkProfile": { + "loadBalancerSku": "basic", + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "allocatedOutboundPorts": 2000, + "idleTimeoutInMinutes": 10, + "managedOutboundIPs": { + "count": 2 + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + }, + "podIdentityProfile": { + "enabled": true, + "allowNetworkPluginKubenet": true + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Creating", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Creating", + "orchestratorVersion": "1.9.6", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "windowsProfile": { + "adminUsername": "azureuser" + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true, + "networkProfile": { + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "loadBalancerSku": "standard", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "allocatedOutboundPorts": 2000, + "idleTimeoutInMinutes": 10, + "managedOutboundIPs": { + "count": 2 + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + }, + "podIdentityProfile": { + "enabled": true, + "allowNetworkPluginKubenet": true + } + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersCreate_PrivateClusterFQDNSubdomain.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersCreate_PrivateClusterFQDNSubdomain.json new file mode 100644 index 000000000000..6e191aa8dd59 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersCreate_PrivateClusterFQDNSubdomain.json @@ -0,0 +1,246 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "parameters": { + "location": "location1", + "tags": { + "tier": "production", + "archv2": "" + }, + "sku": { + "name": "Basic", + "tier": "Free" + }, + "properties": { + "kubernetesVersion": "", + "fqdnSubdomain": "domain1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS2_v2", + "osType": "Linux", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System", + "enableEncryptionAtHost": true + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "networkProfile": { + "loadBalancerSku": "standard", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "managedOutboundIPs": { + "count": 2 + } + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + }, + "windowsProfile": { + "adminUsername": "azureuser", + "adminPassword": "replacePassword1234$" + }, + "servicePrincipalProfile": { + "clientId": "clientid", + "secret": "secret" + }, + "apiServerAccessProfile": { + "enablePrivateCluster": true, + "privateDNSZone": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.Network/privateDnsZones/privatelink.location1.azmk8s.io" + }, + "addonProfiles": {}, + "enableRBAC": true, + "enablePodSecurityPolicy": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Succeeded", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "fqdnSubdomain": "domain1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Succeeded", + "orchestratorVersion": "1.9.6", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System", + "nodeImageVersion": "AKSUbuntu:1604:2020.03.11", + "enableEncryptionAtHost": true + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "windowsProfile": { + "adminUsername": "azureuser" + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "apiServerAccessProfile": { + "enablePrivateCluster": true, + "privateDNSZone": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.Network/privateDnsZones/privatelink.location1.azmk8s.io" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": true, + "enablePodSecurityPolicy": true, + "privateFQDN": "domain1.privatelink.location1.azmk8s.io", + "networkProfile": { + "loadBalancerSku": "basic", + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "allocatedOutboundPorts": 2000, + "idleTimeoutInMinutes": 10, + "managedOutboundIPs": { + "count": 2 + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Creating", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "fqdnSubdomain": "domain1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Creating", + "orchestratorVersion": "1.9.6", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System", + "enableEncryptionAtHost": true + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "windowsProfile": { + "adminUsername": "azureuser" + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "apiServerAccessProfile": { + "enablePrivateCluster": true, + "privateDNSZone": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.Network/privateDnsZones/privatelink.location1.azmk8s.io" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": true, + "privateFQDN": "domain1.privatelink.location1.azmk8s.io", + "enablePodSecurityPolicy": true, + "networkProfile": { + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "loadBalancerSku": "standard", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "allocatedOutboundPorts": 2000, + "idleTimeoutInMinutes": 10, + "managedOutboundIPs": { + "count": 2 + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + } + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersCreate_Update.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersCreate_Update.json new file mode 100644 index 000000000000..f5b60920cd96 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersCreate_Update.json @@ -0,0 +1,282 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "parameters": { + "location": "location1", + "tags": { + "tier": "production", + "archv2": "" + }, + "sku": { + "name": "Basic", + "tier": "Free" + }, + "properties": { + "kubernetesVersion": "", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS1_v2", + "osType": "Linux", + "type": "VirtualMachineScaleSets", + "availabilityZones": [ + "1", + "2", + "3" + ], + "enableNodePublicIP": true, + "mode": "System" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "networkProfile": { + "loadBalancerSku": "standard", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "managedOutboundIPs": { + "count": 2 + } + } + }, + "autoScalerProfile": { + "balance-similar-node-groups": "true", + "expander": "priority", + "max-node-provision-time": "15m", + "new-pod-scale-up-delay": "1m", + "scale-down-delay-after-add": "15m", + "scan-interval": "20s", + "skip-nodes-with-system-pods": "false" + }, + "windowsProfile": { + "adminUsername": "azureuser", + "adminPassword": "replacePassword1234$" + }, + "servicePrincipalProfile": { + "clientId": "clientid", + "secret": "secret" + }, + "addonProfiles": {}, + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid1/resourceGroups/rgName1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Succeeded", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS1_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Succeeded", + "orchestratorVersion": "1.9.6", + "type": "VirtualMachineScaleSets", + "availabilityZones": [ + "1", + "2", + "3" + ], + "enableNodePublicIP": true, + "mode": "System", + "nodeImageVersion": "AKSUbuntu:1604:2020.03.11" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "windowsProfile": { + "adminUsername": "azureuser" + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true, + "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io", + "networkProfile": { + "loadBalancerSku": "basic", + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "allocatedOutboundPorts": 2000, + "idleTimeoutInMinutes": 10, + "managedOutboundIPs": { + "count": 2 + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + }, + "autoScalerProfile": { + "balance-similar-node-groups": "true", + "expander": "priority", + "max-node-provision-time": "15m", + "new-pod-scale-up-delay": "1m", + "scale-down-delay-after-add": "15m", + "scan-interval": "20s", + "skip-nodes-with-system-pods": "false" + } + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid1/resourceGroups/rgName1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": { + "principalId": "principalId1", + "clientId": "clientId1" + } + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Creating", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS1_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Creating", + "orchestratorVersion": "1.9.6", + "type": "VirtualMachineScaleSets", + "availabilityZones": [ + "1", + "2", + "3" + ], + "enableNodePublicIP": true, + "mode": "System" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "windowsProfile": { + "adminUsername": "azureuser" + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true, + "networkProfile": { + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "loadBalancerSku": "standard", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "allocatedOutboundPorts": 2000, + "idleTimeoutInMinutes": 10, + "managedOutboundIPs": { + "count": 2 + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + } + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid1/resourceGroups/rgName1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": { + "principalId": "principalId1", + "clientId": "clientId1" + } + } + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersCreate_UpdateWithAHUB.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersCreate_UpdateWithAHUB.json new file mode 100644 index 000000000000..5e22af8a401a --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersCreate_UpdateWithAHUB.json @@ -0,0 +1,275 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "parameters": { + "location": "location1", + "tags": { + "tier": "production", + "archv2": "" + }, + "sku": { + "name": "Basic", + "tier": "Free" + }, + "properties": { + "kubernetesVersion": "", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS1_v2", + "osType": "Linux", + "type": "VirtualMachineScaleSets", + "availabilityZones": [ + "1", + "2", + "3" + ], + "enableNodePublicIP": true, + "mode": "System" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "networkProfile": { + "loadBalancerSku": "standard", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "managedOutboundIPs": { + "count": 2 + } + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + }, + "windowsProfile": { + "adminUsername": "azureuser", + "adminPassword": "replacePassword1234$", + "licenseType": "Windows_Server" + }, + "servicePrincipalProfile": { + "clientId": "clientid", + "secret": "secret" + }, + "addonProfiles": {}, + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid1/resourceGroups/rgName1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Succeeded", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS1_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Succeeded", + "orchestratorVersion": "1.9.6", + "type": "VirtualMachineScaleSets", + "availabilityZones": [ + "1", + "2", + "3" + ], + "enableNodePublicIP": true, + "mode": "System", + "nodeImageVersion": "AKSUbuntu:1604:2020.03.11" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "windowsProfile": { + "adminUsername": "azureuser", + "licenseType": "Windows_Server" + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true, + "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io", + "networkProfile": { + "loadBalancerSku": "basic", + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "allocatedOutboundPorts": 2000, + "idleTimeoutInMinutes": 10, + "managedOutboundIPs": { + "count": 2 + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + } + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid1/resourceGroups/rgName1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": { + "principalId": "principalId1", + "clientId": "clientId1" + } + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Creating", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS1_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Creating", + "orchestratorVersion": "1.9.6", + "type": "VirtualMachineScaleSets", + "availabilityZones": [ + "1", + "2", + "3" + ], + "enableNodePublicIP": true, + "mode": "System" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "windowsProfile": { + "adminUsername": "azureuser", + "licenseType": "Windows_Server" + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true, + "networkProfile": { + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "loadBalancerSku": "standard", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "allocatedOutboundPorts": 2000, + "idleTimeoutInMinutes": 10, + "managedOutboundIPs": { + "count": 2 + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + } + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid1/resourceGroups/rgName1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": { + "principalId": "principalId1", + "clientId": "clientId1" + } + } + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersCreate_UpdateWithEnableAzureRBAC.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersCreate_UpdateWithEnableAzureRBAC.json new file mode 100644 index 000000000000..4e6194416364 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersCreate_UpdateWithEnableAzureRBAC.json @@ -0,0 +1,264 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "parameters": { + "location": "location1", + "tags": { + "tier": "production", + "archv2": "" + }, + "sku": { + "name": "Basic", + "tier": "Free" + }, + "properties": { + "kubernetesVersion": "", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS1_v2", + "osType": "Linux", + "type": "VirtualMachineScaleSets", + "availabilityZones": [ + "1", + "2", + "3" + ], + "enableNodePublicIP": true, + "mode": "System" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "networkProfile": { + "loadBalancerSku": "standard", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "managedOutboundIPs": { + "count": 2 + } + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + }, + "windowsProfile": { + "adminUsername": "azureuser", + "adminPassword": "replacePassword1234$" + }, + "servicePrincipalProfile": { + "clientId": "clientid", + "secret": "secret" + }, + "addonProfiles": {}, + "aadProfile": { + "managed": true, + "enableAzureRBAC": true + }, + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Succeeded", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS1_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Succeeded", + "orchestratorVersion": "1.9.6", + "type": "VirtualMachineScaleSets", + "availabilityZones": [ + "1", + "2", + "3" + ], + "enableNodePublicIP": true, + "mode": "System", + "nodeImageVersion": "AKSUbuntu:1604:2020.03.11" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "windowsProfile": { + "adminUsername": "azureuser" + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true, + "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io", + "networkProfile": { + "loadBalancerSku": "basic", + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "allocatedOutboundPorts": 2000, + "idleTimeoutInMinutes": 10, + "managedOutboundIPs": { + "count": 2 + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + }, + "aadProfile": { + "managed": true, + "adminGroupObjectIDs": null, + "enableAzureRBAC": true, + "tenantID": "tenantID" + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Creating", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS1_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Creating", + "orchestratorVersion": "1.9.6", + "type": "VirtualMachineScaleSets", + "availabilityZones": [ + "1", + "2", + "3" + ], + "enableNodePublicIP": true, + "mode": "System" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "windowsProfile": { + "adminUsername": "azureuser" + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true, + "networkProfile": { + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "loadBalancerSku": "standard", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "allocatedOutboundPorts": 2000, + "idleTimeoutInMinutes": 10, + "managedOutboundIPs": { + "count": 2 + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + }, + "aadProfile": { + "managed": true, + "adminGroupObjectIDs": null, + "enableAzureRBAC": true, + "tenantID": "tenantID" + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + } + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersDelete.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersDelete.json new file mode 100644 index 000000000000..ad62bed0e16d --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersGet.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersGet.json new file mode 100644 index 000000000000..cb8e1e872228 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersGet.json @@ -0,0 +1,97 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Succeeded", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io", + "azurePortalFQDN": "dnsprefix1-abcd1234.portal.hcp.eastus.azmk8s.io", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS1_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Succeeded", + "orchestratorVersion": "1.9.6", + "availabilityZones": [ + "1", + "2", + "3" + ], + "nodeImageVersion": "AKSUbuntu:1604:2020.03.11", + "upgradeSettings": { + "maxSurge": "33%" + } + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": false, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "networkProfile": { + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "loadBalancerSku": "standard", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "allocatedOutboundPorts": 2000, + "idleTimeoutInMinutes": 10, + "outboundIPs": { + "publicIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/customeroutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/customeroutboundip2" + } + ] + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + } + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersGetAccessProfile.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersGetAccessProfile.json new file mode 100644 index 000000000000..7fcddb6ae384 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersGetAccessProfile.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "roleName": "clusterUser" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/accessProfiles/clusterUser", + "location": "location1", + "name": "clusterUser", + "properties": { + "kubeConfig": "kubeConfig1" + }, + "type": "Microsoft.ContainerService/ManagedClusters/AccessProfiles" + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersGetUpgradeProfile.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersGetUpgradeProfile.json new file mode 100644 index 000000000000..8a98efa75753 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersGetUpgradeProfile.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/upgradeprofiles/default", + "name": "default", + "properties": { + "agentPoolProfiles": [ + { + "kubernetesVersion": "1.7.7", + "name": "agent", + "osType": "Linux", + "upgrades": [ + { + "kubernetesVersion": "1.7.9" + }, + { + "kubernetesVersion": "1.7.11", + "isPreview": true + } + ] + } + ], + "controlPlaneProfile": { + "kubernetesVersion": "1.7.7", + "name": "master", + "osType": "Linux", + "upgrades": [ + { + "kubernetesVersion": "1.7.9", + "isPreview": true + }, + { + "kubernetesVersion": "1.7.11" + } + ] + } + }, + "type": "Microsoft.ContainerService/managedClusters/upgradeprofiles" + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersList.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersList.json new file mode 100644 index 000000000000..f3cd19c1be57 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersList.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid1/providers/Microsoft.ContainerService/managedClusters", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Succeeded", + "kubernetesVersion": "1.9.6", + "maxAgentPools": 1, + "dnsPrefix": "dnsprefix1", + "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS1_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Succeeded", + "orchestratorVersion": "1.9.6" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": false, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "networkProfile": { + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16" + } + } + } + ] + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersListByResourceGroup.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersListByResourceGroup.json new file mode 100644 index 000000000000..6e673825d772 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersListByResourceGroup.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Succeeded", + "kubernetesVersion": "1.9.6", + "maxAgentPools": 1, + "dnsPrefix": "dnsprefix1", + "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS1_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Succeeded", + "orchestratorVersion": "1.9.6" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": false, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "networkProfile": { + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16" + } + } + } + ] + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersListClusterCredentialResult.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersListClusterCredentialResult.json new file mode 100644 index 000000000000..bd364e0106a7 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersListClusterCredentialResult.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1" + }, + "responses": { + "200": { + "body": { + "kubeconfigs": [ + { + "name": "credentialName1", + "value": "credentialValue1" + } + ] + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersResetAADProfile.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersResetAADProfile.json new file mode 100644 index 000000000000..75f6417539d3 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersResetAADProfile.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "parameters": { + "clientAppID": "clientappid", + "serverAppID": "serverappid", + "serverAppSecret": "serverappsecret", + "tenantID": "tenantid" + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersResetServicePrincipalProfile.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersResetServicePrincipalProfile.json new file mode 100644 index 000000000000..79cb0b0ecf9b --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersResetServicePrincipalProfile.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "parameters": { + "clientId": "clientid", + "secret": "secret" + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersRotateClusterCertificates.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersRotateClusterCertificates.json new file mode 100644 index 000000000000..ad62bed0e16d --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersRotateClusterCertificates.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersStart.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersStart.json new file mode 100644 index 000000000000..ad62bed0e16d --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersStart.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersStop.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersStop.json new file mode 100644 index 000000000000..ad62bed0e16d --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersStop.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersUpdateTags.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersUpdateTags.json new file mode 100644 index 000000000000..9a81ea220fe1 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ManagedClustersUpdateTags.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "parameters": { + "tags": { + "tier": "testing", + "archv3": "" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv3": "", + "tier": "testing" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Succeeded", + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS1_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Succeeded", + "orchestratorVersion": "1.9.6" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": false, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io", + "networkProfile": { + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16" + } + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/PrivateEndpointConnectionsDelete.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/PrivateEndpointConnectionsDelete.json new file mode 100644 index 000000000000..d35dc4aa7dab --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/PrivateEndpointConnectionsDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "privateEndpointConnectionName": "privateendpointconnection1" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/PrivateEndpointConnectionsGet.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/PrivateEndpointConnectionsGet.json new file mode 100644 index 000000000000..fa1304f93e8f --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/PrivateEndpointConnectionsGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "privateEndpointConnectionName": "privateendpointconnection1" + }, + "responses": { + "200": { + "body": { + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subid2/resourceGroups/rg2/providers/Microsoft.Network/privateEndpoints/pe2" + }, + "privateLinkServiceConnectionState": { + "status": "Approved" + }, + "provisioningState": "Succeeded" + }, + "name": "privateendpointconnection1", + "type": "Microsoft.Network/privateLinkServices/privateEndpointConnections" + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/PrivateEndpointConnectionsList.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/PrivateEndpointConnectionsList.json new file mode 100644 index 000000000000..0ee3af6ff02c --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/PrivateEndpointConnectionsList.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subid2/resourceGroups/rg2/providers/Microsoft.Network/privateEndpoints/pe2" + }, + "privateLinkServiceConnectionState": { + "status": "Approved" + }, + "provisioningState": "Succeeded" + }, + "name": "privateendpointconnection1", + "type": "Microsoft.Network/privateLinkServices/privateEndpointConnections" + } + ] + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/PrivateEndpointConnectionsUpdate.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/PrivateEndpointConnectionsUpdate.json new file mode 100644 index 000000000000..e8a9ac9039b3 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/PrivateEndpointConnectionsUpdate.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "privateEndpointConnectionName": "privateendpointconnection1", + "parameters": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved" + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subid2/resourceGroups/rg2/providers/Microsoft.Network/privateEndpoints/pe2" + }, + "privateLinkServiceConnectionState": { + "status": "Approved" + }, + "provisioningState": "Succeeded" + }, + "name": "privateendpointconnection1", + "type": "Microsoft.Network/privateLinkServices/privateEndpointConnections" + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/PrivateLinkResourcesList.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/PrivateLinkResourcesList.json new file mode 100644 index 000000000000..b21bc7ff1dc1 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/PrivateLinkResourcesList.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "management", + "type": "Microsoft.ContainerService/managedClusters/privateLinkResources", + "groupId": "management", + "requiredMembers": [ + "management" + ], + "privateLinkServiceID": "/subscriptions/subid2/resourceGroups/rg2/providers/Microsoft.Network/privateLinkServices/plsName" + } + ] + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ResolvePrivateLinkServiceId.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ResolvePrivateLinkServiceId.json new file mode 100644 index 000000000000..6debdfab6817 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/ResolvePrivateLinkServiceId.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "parameters": { + "name": "management" + } + }, + "responses": { + "200": { + "body": { + "privateLinkServiceID": "/subscriptions/subid2/resourceGroups/rg2/providers/Microsoft.Network/privateLinkServices/plsName" + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/RunCommandRequest.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/RunCommandRequest.json new file mode 100644 index 000000000000..89d15cea614c --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/RunCommandRequest.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "requestPayload": { + "command": "kubectl apply -f ns.yaml", + "context": "", + "clusterToken": "" + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/commandResults/0e9872e6629349dc865e27ee6f8bab2d?api-version=2021-03-01" + } + }, + "200": { + "description": "to mitigate RESPONSE_STATUS_CODE_NOT_IN_EXAMPLE", + "body": { + "id": "def7b3ea71bd4f7e9d226ddbc0f00ad9", + "properties": { + "provisioningState": "succeeded", + "exitCode": 0, + "startedAt": "2021-02-17T00:28:20Z", + "finishedAt": "2021-02-17T00:28:33Z", + "logs": "namespace dummy created" + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/RunCommandResultFailed.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/RunCommandResultFailed.json new file mode 100644 index 000000000000..842ba321da1f --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/RunCommandResultFailed.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "commandId": "def7b3ea71bd4f7e9d226ddbc0f00ad9" + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/commandResults/0e9872e6629349dc865e27ee6f8bab2d?api-version=2021-03-01" + } + }, + "200": { + "body": { + "id": "def7b3ea71bd4f7e9d226ddbc0f00ad9", + "properties": { + "provisioningState": "failed", + "reason": "ImagePullBackoff" + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/RunCommandResultSucceed.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/RunCommandResultSucceed.json new file mode 100644 index 000000000000..8068ad79f7c9 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/examples/RunCommandResultSucceed.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "commandId": "def7b3ea71bd4f7e9d226ddbc0f00ad9" + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/commandResults/0e9872e6629349dc865e27ee6f8bab2d?api-version=2021-03-01" + } + }, + "200": { + "body": { + "id": "def7b3ea71bd4f7e9d226ddbc0f00ad9", + "properties": { + "provisioningState": "succeeded", + "exitCode": 0, + "startedAt": "2021-02-17T00:28:20Z", + "finishedAt": "2021-02-17T00:28:33Z", + "logs": "namespace dummy created" + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/managedClusters.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/managedClusters.json new file mode 100644 index 000000000000..55b99df0d463 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-03-01/managedClusters.json @@ -0,0 +1,4560 @@ +{ + "swagger": "2.0", + "info": { + "title": "ContainerServiceClient", + "description": "The Container Service Client.", + "version": "2021-03-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/providers/Microsoft.ContainerService/operations": { + "get": { + "tags": [ + "managedClusters" + ], + "operationId": "Operations_List", + "description": "Gets a list of compute operations.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerService/locations/{location}/osOptions/default": { + "get": { + "tags": [ + "managedClusters" + ], + "operationId": "ManagedClusters_GetOSOptions", + "summary": "Gets supported OS options in the specified subscription.", + "description": "Gets supported OS options in the specified subscription.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/LocationParameter" + }, + { + "$ref": "#/parameters/ResourceTypeParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + }, + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OSOptionProfile" + } + } + }, + "x-ms-examples": { + "Get Container Service OS Options": { + "$ref": "./examples/ContainerServiceGetOSOptions.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerService/managedClusters": { + "get": { + "tags": [ + "ManagedClusters" + ], + "operationId": "ManagedClusters_List", + "summary": "Gets a list of managed clusters in the specified subscription.", + "description": "Gets a list of managed clusters in the specified subscription. The operation returns properties of each managed cluster.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ManagedClusterListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Managed Clusters": { + "$ref": "./examples/ManagedClustersList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters": { + "get": { + "tags": [ + "ManagedClusters" + ], + "operationId": "ManagedClusters_ListByResourceGroup", + "summary": "Lists managed clusters in the specified subscription and resource group.", + "description": "Lists managed clusters in the specified subscription and resource group. The operation returns properties of each managed cluster.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ManagedClusterListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get Managed Clusters by Resource Group": { + "$ref": "./examples/ManagedClustersListByResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/upgradeProfiles/default": { + "get": { + "tags": [ + "ManagedClusters" + ], + "operationId": "ManagedClusters_GetUpgradeProfile", + "summary": "Gets upgrade profile for a managed cluster.", + "description": "Gets the details of the upgrade profile for a managed cluster with a specified resource group and name.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ManagedClusterUpgradeProfile" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Upgrade Profile for Managed Cluster": { + "$ref": "./examples/ManagedClustersGetUpgradeProfile.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/accessProfiles/{roleName}/listCredential": { + "post": { + "deprecated": true, + "tags": [ + "ManagedClusters" + ], + "operationId": "ManagedClusters_GetAccessProfile", + "summary": "Gets an access profile of a managed cluster.", + "description": "Gets the accessProfile for the specified role name of the managed cluster with a specified resource group and name. **WARNING**: This API will be deprecated. Instead use [ListClusterUserCredentials](https://docs.microsoft.com/en-us/rest/api/aks/managedclusters/listclusterusercredentials) or [ListClusterAdminCredentials](https://docs.microsoft.com/en-us/rest/api/aks/managedclusters/listclusteradmincredentials) .", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "roleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the role for managed cluster accessProfile resource." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ManagedClusterAccessProfile" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Managed Cluster": { + "$ref": "./examples/ManagedClustersGetAccessProfile.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/listClusterAdminCredential": { + "post": { + "tags": [ + "ManagedClusters" + ], + "operationId": "ManagedClusters_ListClusterAdminCredentials", + "summary": "Gets cluster admin credential of a managed cluster.", + "description": "Gets cluster admin credential of the managed cluster with a specified resource group and name.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CredentialResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Managed Cluster": { + "$ref": "./examples/ManagedClustersListClusterCredentialResult.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/listClusterUserCredential": { + "post": { + "tags": [ + "ManagedClusters" + ], + "operationId": "ManagedClusters_ListClusterUserCredentials", + "summary": "Gets cluster user credential of a managed cluster.", + "description": "Gets cluster user credential of the managed cluster with a specified resource group and name.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CredentialResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Managed Cluster": { + "$ref": "./examples/ManagedClustersListClusterCredentialResult.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/listClusterMonitoringUserCredential": { + "post": { + "tags": [ + "ManagedClusters" + ], + "operationId": "ManagedClusters_ListClusterMonitoringUserCredentials", + "summary": "Gets cluster monitoring user credential of a managed cluster.", + "description": "Gets cluster monitoring user credential of the managed cluster with a specified resource group and name.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CredentialResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Managed Cluster": { + "$ref": "./examples/ManagedClustersListClusterCredentialResult.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}": { + "get": { + "tags": [ + "ManagedClusters" + ], + "operationId": "ManagedClusters_Get", + "summary": "Gets a managed cluster.", + "description": "Gets the details of the managed cluster with a specified resource group and name.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ManagedCluster" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Managed Cluster": { + "$ref": "./examples/ManagedClustersGet.json" + } + } + }, + "put": { + "tags": [ + "ManagedClusters" + ], + "operationId": "ManagedClusters_CreateOrUpdate", + "summary": "Creates or updates a managed cluster.", + "description": "Creates or updates a managed cluster with the specified configuration for agents and Kubernetes version.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ManagedCluster" + }, + "description": "Parameters supplied to the Create or Update a Managed Cluster operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ManagedCluster" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/ManagedCluster" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create/Update Managed Cluster": { + "$ref": "./examples/ManagedClustersCreate_Update.json" + }, + "Create/Update AAD Managed Cluster with EnableAzureRBAC": { + "$ref": "./examples/ManagedClustersCreate_UpdateWithEnableAzureRBAC.json" + }, + "Create Managed Cluster with PPG": { + "$ref": "./examples/ManagedClustersCreate_PPG.json" + }, + "Create Managed Cluster with OSSKU": { + "$ref": "./examples/ManagedClustersCreate_OSSKU.json" + }, + "Create Managed Cluster with GPUMIG": { + "$ref": "./examples/ManagedClustersCreate_GPUMIG.json" + }, + "Create/Update Managed Cluster with EnableAHUB": { + "$ref": "./examples/ManagedClustersCreate_UpdateWithAHUB.json" + }, + "Create Managed Cluster with EncryptionAtHost enabled": { + "$ref": "./examples/ManagedClustersCreate_EnableEncryptionAtHost.json" + }, + "Create Managed Cluster with PodIdentity enabled": { + "$ref": "./examples/ManagedClustersCreate_PodIdentity.json" + }, + "Create Managed Private Cluster with fqdn subdomain specified": { + "$ref": "./examples/ManagedClustersCreate_PrivateClusterFQDNSubdomain.json" + }, + "Create Managed Cluster with Node Public IP Prefix": { + "$ref": "./examples/ManagedClustersCreate_NodePublicIPPrefix.json" + }, + "Create Managed Cluster with FIPS enabled OS": { + "$ref": "./examples/ManagedClustersCreate_EnabledFIPS.json" + }, + "Create Managed Cluster with HTTP proxy configured": { + "$ref": "./examples/ManagedClustersCreate_HTTPProxy.json" + } + } + }, + "patch": { + "tags": [ + "ManagedClusters" + ], + "operationId": "ManagedClusters_UpdateTags", + "summary": "Updates tags on a managed cluster.", + "description": "Updates a managed cluster with the specified tags.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TagsObject" + }, + "description": "Parameters supplied to the Update Managed Cluster Tags operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ManagedCluster" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update Managed Cluster Tags": { + "$ref": "./examples/ManagedClustersUpdateTags.json" + } + } + }, + "delete": { + "tags": [ + "ManagedClusters" + ], + "operationId": "ManagedClusters_Delete", + "summary": "Deletes a managed cluster.", + "description": "Deletes the managed cluster with a specified resource group and name.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete Managed Cluster": { + "$ref": "./examples/ManagedClustersDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/maintenanceConfigurations": { + "get": { + "tags": [ + "MaintenanceConfigurations" + ], + "operationId": "MaintenanceConfigurations_ListByManagedCluster", + "summary": "Gets a list of maintenance configurations in the specified managed cluster.", + "description": "Gets a list of maintenance configurations in the specified managed cluster. The operation returns properties of each maintenance configuration.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MaintenanceConfigurationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List maintenance configurations by Managed Cluster": { + "$ref": "./examples/MaintenanceConfigurationsList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/maintenanceConfigurations/{configName}": { + "get": { + "tags": [ + "MaintenanceConfigurations" + ], + "operationId": "MaintenanceConfigurations_Get", + "summary": "Gets the maintenance configuration.", + "description": "Gets the details of maintenance configurations by managed cluster and resource group.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "configName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the maintenance configuration." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MaintenanceConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Maintenance Configuration": { + "$ref": "./examples/MaintenanceConfigurationsGet.json" + } + } + }, + "put": { + "tags": [ + "MaintenanceConfigurations" + ], + "operationId": "MaintenanceConfigurations_CreateOrUpdate", + "summary": "Creates or updates a maintenance configurations.", + "description": "Creates or updates a maintenance configuration in the specified managed cluster.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "configName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the maintenance configuration." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/MaintenanceConfiguration" + }, + "description": "Parameters supplied to the Create or Update a default maintenance configuration." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MaintenanceConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": false, + "x-ms-examples": { + "Create/Update Maintenance Configuration": { + "$ref": "./examples/MaintenanceConfigurationsCreate_Update.json" + } + } + }, + "delete": { + "tags": [ + "MaintenanceConfigurations" + ], + "operationId": "MaintenanceConfigurations_Delete", + "summary": "Deletes a maintenance configuration.", + "description": "Deletes the maintenance configuration in the specified managed cluster.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "configName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the maintenance configuration." + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": false, + "x-ms-examples": { + "Delete Maintenance Configuration": { + "$ref": "./examples/MaintenanceConfigurationsDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/agentPools": { + "get": { + "tags": [ + "AgentPools" + ], + "operationId": "AgentPools_List", + "summary": "Gets a list of agent pools in the specified managed cluster.", + "description": "Gets a list of agent pools in the specified managed cluster. The operation returns properties of each agent pool.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AgentPoolListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Agent Pools by Managed Cluster": { + "$ref": "./examples/AgentPoolsList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/agentPools/{agentPoolName}": { + "get": { + "tags": [ + "AgentPools" + ], + "operationId": "AgentPools_Get", + "summary": "Gets the agent pool.", + "description": "Gets the details of the agent pool by managed cluster and resource group.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "agentPoolName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the agent pool." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AgentPool" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Agent Pool": { + "$ref": "./examples/AgentPoolsGet.json" + } + } + }, + "put": { + "tags": [ + "AgentPools" + ], + "operationId": "AgentPools_CreateOrUpdate", + "summary": "Creates or updates an agent pool.", + "description": "Creates or updates an agent pool in the specified managed cluster.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "agentPoolName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the agent pool." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AgentPool" + }, + "description": "Parameters supplied to the Create or Update an agent pool operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AgentPool" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/AgentPool" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create/Update Agent Pool": { + "$ref": "./examples/AgentPoolsCreate_Update.json" + }, + "Update Agent Pool": { + "$ref": "./examples/AgentPools_Update.json" + }, + "Create Spot Agent Pool": { + "$ref": "./examples/AgentPoolsCreate_Spot.json" + }, + "Create Agent Pool with PPG": { + "$ref": "./examples/AgentPoolsCreate_PPG.json" + }, + "Create Agent Pool with OSSKU": { + "$ref": "./examples/AgentPoolsCreate_OSSKU.json" + }, + "Create Agent Pool with GPUMIG": { + "$ref": "./examples/AgentPoolsCreate_GPUMIG.json" + }, + "Create Agent Pool with Ephemeral OS Disk": { + "$ref": "./examples/AgentPoolsCreate_Ephemeral.json" + }, + "Create Agent Pool with KubeletConfig and LinuxOSConfig": { + "$ref": "./examples/AgentPoolsCreate_CustomNodeConfig.json" + }, + "Create Agent Pool with EncryptionAtHost enabled": { + "$ref": "./examples/AgentPoolsCreate_EnableEncryptionAtHost.json" + }, + "Create Agent Pool with FIPS enabled OS": { + "$ref": "./examples/AgentPoolsCreate_EnableFIPS.json" + } + } + }, + "delete": { + "tags": [ + "AgentPools" + ], + "operationId": "AgentPools_Delete", + "summary": "Deletes an agent pool.", + "description": "Deletes the agent pool in the specified managed cluster.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "agentPoolName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the agent pool." + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete Agent Pool": { + "$ref": "./examples/AgentPoolsDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/agentPools/{agentPoolName}/upgradeProfiles/default": { + "get": { + "tags": [ + "AgentPools" + ], + "operationId": "AgentPools_GetUpgradeProfile", + "summary": "Gets upgrade profile for an agent pool.", + "description": "Gets the details of the upgrade profile for an agent pool with a specified resource group and managed cluster name.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "agentPoolName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the agent pool." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AgentPoolUpgradeProfile" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Upgrade Profile for Agent Pool": { + "$ref": "./examples/AgentPoolsGetUpgradeProfile.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/availableAgentPoolVersions": { + "get": { + "tags": [ + "AgentPools" + ], + "operationId": "AgentPools_GetAvailableAgentPoolVersions", + "summary": "Gets a list of supported versions for the specified agent pool.", + "description": "Gets a list of supported versions for the specified agent pool.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AgentPoolAvailableVersions" + } + } + }, + "x-ms-examples": { + "Get available versions for agent pool": { + "$ref": "./examples/AgentPoolsGetAgentPoolAvailableVersions.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/resetServicePrincipalProfile": { + "post": { + "tags": [ + "ManagedClusters" + ], + "operationId": "ManagedClusters_ResetServicePrincipalProfile", + "summary": "Reset Service Principal Profile of a managed cluster.", + "description": "Update the service principal Profile for a managed cluster.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ManagedClusterServicePrincipalProfile" + }, + "description": "Parameters supplied to the Reset Service Principal Profile operation for a Managed Cluster." + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed. If the cluster doesn't exist, 404 (Not found) is returned.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Reset Service Principal Profile": { + "$ref": "./examples/ManagedClustersResetServicePrincipalProfile.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/resetAADProfile": { + "post": { + "tags": [ + "ManagedClusters" + ], + "operationId": "ManagedClusters_ResetAADProfile", + "summary": "Reset AAD Profile of a managed cluster.", + "description": "Update the AAD Profile for a managed cluster.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ManagedClusterAADProfile" + }, + "description": "Parameters supplied to the Reset AAD Profile operation for a Managed Cluster." + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed. If the cluster doesn't exist, 404 (Not found) is returned.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Reset AAD Profile": { + "$ref": "./examples/ManagedClustersResetAADProfile.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/rotateClusterCertificates": { + "post": { + "tags": [ + "ManagedClusters" + ], + "operationId": "ManagedClusters_RotateClusterCertificates", + "summary": "Rotate certificates of a managed cluster.", + "description": "Rotate certificates of a managed cluster.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed. If the cluster doesn't exist, 404 (Not found) is returned.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Rotate Cluster Certificates": { + "$ref": "./examples/ManagedClustersRotateClusterCertificates.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/stop": { + "post": { + "tags": [ + "ManagedClusters" + ], + "operationId": "ManagedClusters_Stop", + "summary": "Stop Managed Cluster", + "description": "Stops a Running Managed Cluster", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed. If the cluster doesn't exist, 404 (Not found) is returned.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Stop Managed Cluster": { + "$ref": "./examples/ManagedClustersStop.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/start": { + "post": { + "tags": [ + "ManagedClusters" + ], + "operationId": "ManagedClusters_Start", + "summary": "Start Managed Cluster", + "description": "Starts a Stopped Managed Cluster", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed. If the cluster doesn't exist, 404 (Not found) is returned.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Start Managed Cluster": { + "$ref": "./examples/ManagedClustersStart.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/privateEndpointConnections": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_List", + "summary": "Gets a list of private endpoint connections in the specified managed cluster.", + "description": "Gets a list of private endpoint connections in the specified managed cluster. The operation returns properties of each private endpoint connection.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List Private Endpoint Connections by Managed Cluster": { + "$ref": "./examples/PrivateEndpointConnectionsList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Get", + "summary": "Gets the private endpoint connection.", + "description": "Gets the details of the private endpoint connection by managed cluster and resource group.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint connection." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Private Endpoint Connection": { + "$ref": "./examples/PrivateEndpointConnectionsGet.json" + } + } + }, + "put": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Update", + "summary": "Updates a private endpoint connection.", + "description": "Updates a private endpoint connection in the specified managed cluster.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint connection." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "Parameters supplied to the Update a private endpoint connection operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update Private Endpoint Connection": { + "$ref": "./examples/PrivateEndpointConnectionsUpdate.json" + } + } + }, + "delete": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Delete", + "summary": "Deletes a private endpoint connection.", + "description": "Deletes the private endpoint connection in the specified managed cluster.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint connection." + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "No Content -- The private endpoint connection does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete Private Endpoint Connection": { + "$ref": "./examples/PrivateEndpointConnectionsDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/agentPools/{agentPoolName}/upgradeNodeImageVersion": { + "post": { + "tags": [ + "AgentPools" + ], + "operationId": "AgentPools_UpgradeNodeImageVersion", + "summary": "Upgrade node image version of an agent pool to the latest.", + "description": "Upgrade node image version of an agent pool to the latest.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "agentPoolName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the agent pool." + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/AgentPool" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Upgrade Agent Pool Node Image Version": { + "$ref": "./examples/AgentPoolsUpgradeNodeImageVersion.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/privateLinkResources": { + "get": { + "tags": [ + "privateLinkResources" + ], + "operationId": "PrivateLinkResources_List", + "summary": "Gets a list of private link resources in the specified managed cluster.", + "description": "Gets a list of private link resources in the specified managed cluster. The operation returns properties of each private link resource.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateLinkResourcesListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List Private Link Resources by Managed Cluster": { + "$ref": "./examples/PrivateLinkResourcesList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/resolvePrivateLinkServiceId": { + "post": { + "tags": [ + "resolvePrivateLinkServiceId" + ], + "operationId": "ResolvePrivateLinkServiceId_POST", + "summary": "Gets the private link service ID for the specified managed cluster.", + "description": "Gets the private link service ID the specified managed cluster.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateLinkResource" + }, + "description": "Parameters (name, groupId) supplied in order to resolve a private link service ID." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateLinkResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Resolve the Private Link Service ID for Managed Cluster": { + "$ref": "./examples/ResolvePrivateLinkServiceId.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/runCommand": { + "post": { + "tags": [ + "ManagedClusters" + ], + "operationId": "ManagedClusters_RunCommand", + "summary": "Run Command against Managed Kubernetes Service", + "description": "Submit a command to run against managed kubernetes service, it will create a pod to run the command.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "requestPayload", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RunCommandRequest" + }, + "description": "Parameters supplied to the RunCommand operation." + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "200": { + "description": "command finished with async pattern, tracking by location header. !!! this is for autorest only, you never get 200 from this api !!!", + "schema": { + "$ref": "#/definitions/RunCommandResult" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the cluster doesn't exist, 404 (Not found) is returned.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "submitNewCommand": { + "$ref": "./examples/RunCommandRequest.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/commandResults/{commandId}": { + "get": { + "tags": [ + "ManagedClusters" + ], + "operationId": "ManagedClusters_GetCommandResult", + "summary": "Get command result.", + "description": "Get command result from previous runCommand invoke.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "commandId", + "in": "path", + "required": true, + "type": "string", + "description": "Id of the command request." + } + ], + "responses": { + "202": { + "description": "command running in progress" + }, + "200": { + "description": "command finished", + "schema": { + "$ref": "#/definitions/RunCommandResult" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the cluster doesn't exist, 404 (Not found) is returned.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "commandSucceedResult": { + "$ref": "./examples/RunCommandResultSucceed.json" + }, + "commandFailedResult": { + "$ref": "./examples/RunCommandResultFailed.json" + } + } + } + } + }, + "definitions": { + "OperationListResult": { + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/OperationValue" + }, + "description": "The list of compute operations" + } + }, + "description": "The List Compute Operation operation response." + }, + "OperationValue": { + "properties": { + "origin": { + "type": "string", + "readOnly": true, + "description": "The origin of the compute operation." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the compute operation." + }, + "display": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/OperationValueDisplay", + "description": "Describes the properties of a Compute Operation Value Display." + } + }, + "description": "Describes the properties of a Compute Operation value." + }, + "OperationValueDisplay": { + "properties": { + "operation": { + "type": "string", + "readOnly": true, + "description": "The display name of the compute operation." + }, + "resource": { + "type": "string", + "readOnly": true, + "description": "The display name of the resource the operation applies to." + }, + "description": { + "type": "string", + "readOnly": true, + "description": "The description of the operation." + }, + "provider": { + "type": "string", + "readOnly": true, + "description": "The resource provider for the operation." + } + }, + "description": "Describes the properties of a Compute Operation Value Display." + }, + "Resource": { + "description": "The Resource model definition.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource Id" + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Resource name" + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type" + }, + "location": { + "type": "string", + "description": "Resource location", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "required": [ + "location" + ], + "x-ms-azure-resource": true + }, + "SubResource": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource ID." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type" + } + }, + "description": "Reference to another subresource.", + "x-ms-azure-resource": true + }, + "TagsObject": { + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "description": "Tags object for patch operations." + }, + "ContainerServiceOSDisk": { + "type": "integer", + "format": "int32", + "maximum": 2048, + "minimum": 0, + "description": "OS Disk Size in GB to be used to specify the disk size for every machine in this master/agent pool. If you specify 0, it will apply the default osDisk size according to the vmSize specified." + }, + "ContainerServiceStorageProfile": { + "type": "string", + "x-ms-enum": { + "name": "ContainerServiceStorageProfileTypes", + "modelAsString": true + }, + "enum": [ + "StorageAccount", + "ManagedDisks" + ], + "description": "Storage profile specifies what kind of storage used. Choose from StorageAccount and ManagedDisks. Leave it empty, we will choose for you based on the orchestrator choice." + }, + "ContainerServiceVnetSubnetID": { + "type": "string", + "description": "specifies a subnet's resource id with subscription, resource group, vnet and subnet name" + }, + "ContainerServiceVMSize": { + "type": "string", + "x-ms-enum": { + "name": "ContainerServiceVMSizeTypes", + "modelAsString": true + }, + "description": "Size of agent VMs.", + "enum": [ + "Standard_A1", + "Standard_A10", + "Standard_A11", + "Standard_A1_v2", + "Standard_A2", + "Standard_A2_v2", + "Standard_A2m_v2", + "Standard_A3", + "Standard_A4", + "Standard_A4_v2", + "Standard_A4m_v2", + "Standard_A5", + "Standard_A6", + "Standard_A7", + "Standard_A8", + "Standard_A8_v2", + "Standard_A8m_v2", + "Standard_A9", + "Standard_B2ms", + "Standard_B2s", + "Standard_B4ms", + "Standard_B8ms", + "Standard_D1", + "Standard_D11", + "Standard_D11_v2", + "Standard_D11_v2_Promo", + "Standard_D12", + "Standard_D12_v2", + "Standard_D12_v2_Promo", + "Standard_D13", + "Standard_D13_v2", + "Standard_D13_v2_Promo", + "Standard_D14", + "Standard_D14_v2", + "Standard_D14_v2_Promo", + "Standard_D15_v2", + "Standard_D16_v3", + "Standard_D16s_v3", + "Standard_D1_v2", + "Standard_D2", + "Standard_D2_v2", + "Standard_D2_v2_Promo", + "Standard_D2_v3", + "Standard_D2s_v3", + "Standard_D3", + "Standard_D32_v3", + "Standard_D32s_v3", + "Standard_D3_v2", + "Standard_D3_v2_Promo", + "Standard_D4", + "Standard_D4_v2", + "Standard_D4_v2_Promo", + "Standard_D4_v3", + "Standard_D4s_v3", + "Standard_D5_v2", + "Standard_D5_v2_Promo", + "Standard_D64_v3", + "Standard_D64s_v3", + "Standard_D8_v3", + "Standard_D8s_v3", + "Standard_DS1", + "Standard_DS11", + "Standard_DS11_v2", + "Standard_DS11_v2_Promo", + "Standard_DS12", + "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", + "Standard_DS1_v2", + "Standard_DS2", + "Standard_DS2_v2", + "Standard_DS2_v2_Promo", + "Standard_DS3", + "Standard_DS3_v2", + "Standard_DS3_v2_Promo", + "Standard_DS4", + "Standard_DS4_v2", + "Standard_DS4_v2_Promo", + "Standard_DS5_v2", + "Standard_DS5_v2_Promo", + "Standard_E16_v3", + "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", + "Standard_E8s_v3", + "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", + "Standard_G4", + "Standard_G5", + "Standard_GS1", + "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", + "Standard_H16r", + "Standard_H8", + "Standard_H8m", + "Standard_L16s", + "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" + ] + }, + "ManagedClusterServicePrincipalProfile": { + "properties": { + "clientId": { + "type": "string", + "description": "The ID for the service principal." + }, + "secret": { + "type": "string", + "description": "The secret password associated with the service principal in plain text." + } + }, + "description": "Information about a service principal identity for the cluster to use for manipulating Azure APIs.", + "required": [ + "clientId" + ] + }, + "ContainerServiceMasterProfile": { + "properties": { + "count": { + "type": "integer", + "format": "int32", + "enum": [ + 1, + 3, + 5 + ], + "x-ms-enum": { + "name": "Count", + "modelAsString": false + }, + "description": "Number of masters (VMs) in the container service cluster. Allowed values are 1, 3, and 5. The default value is 1.", + "default": 1 + }, + "dnsPrefix": { + "type": "string", + "description": "DNS prefix to be used to create the FQDN for the master pool." + }, + "vmSize": { + "$ref": "#/definitions/ContainerServiceVMSize", + "description": "Size of agent VMs." + }, + "osDiskSizeGB": { + "$ref": "#/definitions/ContainerServiceOSDisk", + "description": "OS Disk Size in GB to be used to specify the disk size for every machine in this master/agent pool. If you specify 0, it will apply the default osDisk size according to the vmSize specified." + }, + "vnetSubnetID": { + "$ref": "#/definitions/ContainerServiceVnetSubnetID", + "description": "VNet SubnetID specifies the VNet's subnet identifier." + }, + "firstConsecutiveStaticIP": { + "type": "string", + "description": "FirstConsecutiveStaticIP used to specify the first static ip of masters.", + "default": "10.240.255.5" + }, + "storageProfile": { + "$ref": "#/definitions/ContainerServiceStorageProfile", + "description": "Storage profile specifies what kind of storage used. Choose from StorageAccount and ManagedDisks. Leave it empty, we will choose for you based on the orchestrator choice." + }, + "fqdn": { + "readOnly": true, + "type": "string", + "description": "FQDN for the master pool." + } + }, + "required": [ + "dnsPrefix", + "vmSize" + ], + "description": "Profile for the container service master." + }, + "ManagedClusterAgentPoolProfileProperties": { + "properties": { + "count": { + "type": "integer", + "format": "int32", + "description": "Number of agents (VMs) to host docker containers. Allowed values must be in the range of 0 to 100 (inclusive) for user pools and in the range of 1 to 100 (inclusive) for system pools. The default value is 1." + }, + "vmSize": { + "type": "string", + "description": "Size of agent VMs." + }, + "osDiskSizeGB": { + "$ref": "#/definitions/ContainerServiceOSDisk", + "description": "OS Disk Size in GB to be used to specify the disk size for every machine in this master/agent pool. If you specify 0, it will apply the default osDisk size according to the vmSize specified." + }, + "osDiskType": { + "$ref": "#/definitions/OSDiskType", + "description": "OS disk type to be used for machines in a given agent pool. Allowed values are 'Ephemeral' and 'Managed'. If unspecified, defaults to 'Ephemeral' when the VM supports ephemeral OS and has a cache disk larger than the requested OSDiskSizeGB. Otherwise, defaults to 'Managed'. May not be changed after creation." + }, + "kubeletDiskType": { + "$ref": "#/definitions/KubeletDiskType", + "description": "KubeletDiskType determines the placement of emptyDir volumes, container runtime data root, and Kubelet ephemeral storage. Currently allows one value, OS, resulting in Kubelet using the OS disk for data." + }, + "vnetSubnetID": { + "$ref": "#/definitions/ContainerServiceVnetSubnetID", + "description": "VNet SubnetID specifies the VNet's subnet identifier for nodes and maybe pods" + }, + "podSubnetID": { + "$ref": "#/definitions/ContainerServiceVnetSubnetID", + "description": "Pod SubnetID specifies the VNet's subnet identifier for pods." + }, + "maxPods": { + "type": "integer", + "format": "int32", + "description": "Maximum number of pods that can run on a node." + }, + "osType": { + "$ref": "#/definitions/OSType", + "description": "OsType to be used to specify os type. Choose from Linux and Windows. Default to Linux." + }, + "osSKU": { + "$ref": "#/definitions/OSSKU", + "description": "OsSKU to be used to specify os sku. Choose from Ubuntu(default) and CBLMariner for Linux OSType. Not applicable to Windows OSType." + }, + "maxCount": { + "type": "integer", + "format": "int32", + "description": "Maximum number of nodes for auto-scaling" + }, + "minCount": { + "type": "integer", + "format": "int32", + "description": "Minimum number of nodes for auto-scaling" + }, + "enableAutoScaling": { + "type": "boolean", + "description": "Whether to enable auto-scaler" + }, + "type": { + "$ref": "#/definitions/AgentPoolType", + "description": "AgentPoolType represents types of an agent pool" + }, + "mode": { + "$ref": "#/definitions/AgentPoolMode", + "description": "AgentPoolMode represents mode of an agent pool" + }, + "orchestratorVersion": { + "type": "string", + "description": "Version of orchestrator specified when creating the managed cluster." + }, + "nodeImageVersion": { + "readOnly": true, + "type": "string", + "description": "Version of node image" + }, + "upgradeSettings": { + "$ref": "#/definitions/AgentPoolUpgradeSettings", + "description": "Settings for upgrading the agentpool" + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The current deployment or provisioning state, which only appears in the response." + }, + "powerState": { + "readOnly": true, + "description": "Describes whether the Agent Pool is Running or Stopped", + "$ref": "#/definitions/PowerState" + }, + "availabilityZones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Availability zones for nodes. Must use VirtualMachineScaleSets AgentPoolType." + }, + "enableNodePublicIP": { + "type": "boolean", + "description": "Enable public IP for nodes" + }, + "nodePublicIPPrefixID": { + "type": "string", + "description": "Public IP Prefix ID. VM nodes use IPs assigned from this Public IP Prefix." + }, + "scaleSetPriority": { + "$ref": "#/definitions/ScaleSetPriority", + "description": "ScaleSetPriority to be used to specify virtual machine scale set priority. Default to regular." + }, + "scaleSetEvictionPolicy": { + "$ref": "#/definitions/ScaleSetEvictionPolicy", + "description": "ScaleSetEvictionPolicy to be used to specify eviction policy for Spot virtual machine scale set. Default to Delete." + }, + "spotMaxPrice": { + "$ref": "#/definitions/SpotMaxPrice", + "description": "SpotMaxPrice to be used to specify the maximum price you are willing to pay in US Dollars. Possible values are any decimal value greater than zero or -1 which indicates default price to be up-to on-demand." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Agent pool tags to be persisted on the agent pool virtual machine scale set." + }, + "nodeLabels": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Agent pool node labels to be persisted across all nodes in agent pool." + }, + "nodeTaints": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Taints added to new nodes during node pool create and scale. For example, key=value:NoSchedule." + }, + "proximityPlacementGroupID": { + "$ref": "#/definitions/ProximityPlacementGroupID", + "description": "The ID for Proximity Placement Group." + }, + "kubeletConfig": { + "$ref": "#/definitions/KubeletConfig", + "description": "KubeletConfig specifies the configuration of kubelet on agent nodes." + }, + "linuxOSConfig": { + "$ref": "#/definitions/LinuxOSConfig", + "description": "LinuxOSConfig specifies the OS configuration of linux agent nodes." + }, + "enableEncryptionAtHost": { + "type": "boolean", + "description": "Whether to enable EncryptionAtHost" + }, + "enableFIPS": { + "type": "boolean", + "description": "Whether to use FIPS enabled OS" + }, + "gpuInstanceProfile": { + "$ref": "#/definitions/GPUInstanceProfile", + "description": "GPUInstanceProfile to be used to specify GPU MIG instance profile for supported GPU VM SKU. Supported values are MIG1g, MIG2g, MIG3g, MIG4g and MIG7g." + } + }, + "description": "Properties for the container service agent pool profile." + }, + "ManagedClusterAgentPoolProfile": { + "allOf": [ + { + "$ref": "#/definitions/ManagedClusterAgentPoolProfileProperties" + }, + { + "properties": { + "name": { + "type": "string", + "description": "Unique name of the agent pool profile in the context of the subscription and resource group.", + "pattern": "^[a-z][a-z0-9]{0,11}$" + } + } + } + ], + "required": [ + "name" + ], + "description": "Profile for the container service agent pool." + }, + "AgentPoolType": { + "type": "string", + "enum": [ + "VirtualMachineScaleSets", + "AvailabilitySet" + ], + "x-ms-enum": { + "name": "AgentPoolType", + "modelAsString": true + }, + "description": "AgentPoolType represents types of an agent pool." + }, + "AgentPoolMode": { + "type": "string", + "enum": [ + "System", + "User" + ], + "x-ms-enum": { + "name": "AgentPoolMode", + "modelAsString": true + }, + "description": "AgentPoolMode represents mode of an agent pool." + }, + "AgentPoolListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AgentPool" + }, + "description": "The list of agent pools." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of agent pool results.", + "readOnly": true + } + }, + "description": "The response from the List Agent Pools operation." + }, + "AgentPoolUpgradeSettings": { + "properties": { + "maxSurge": { + "type": "string", + "description": "Count or percentage of additional nodes to be added during upgrade. If empty uses AKS default" + } + }, + "description": "Settings for upgrading an agentpool" + }, + "AgentPool": { + "allOf": [ + { + "$ref": "#/definitions/SubResource" + }, + { + "properties": { + "properties": { + "description": "Properties of an agent pool.", + "$ref": "#/definitions/ManagedClusterAgentPoolProfileProperties", + "x-ms-client-flatten": true + } + } + } + ], + "description": "Agent Pool." + }, + "ManagedClusterWindowsProfile": { + "properties": { + "adminUsername": { + "type": "string", + "description": "Specifies the name of the administrator account.

    **restriction:** Cannot end in \".\"

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

    **Minimum-length:** 1 character

    **Max-length:** 20 characters" + }, + "adminPassword": { + "type": "string", + "description": "Specifies the password of the administrator account.

    **Minimum-length:** 8 characters

    **Max-length:** 123 characters

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

    **Disallowed values:** \"abc@123\", \"P@$$w0rd\", \"P@ssw0rd\", \"P@ssword123\", \"Pa$$word\", \"pass@word1\", \"Password!\", \"Password1\", \"Password22\", \"iloveyou!\"" + }, + "licenseType": { + "type": "string", + "enum": [ + "None", + "Windows_Server" + ], + "x-ms-enum": { + "name": "licenseType", + "modelAsString": true + }, + "description": "The licenseType to use for Windows VMs. Windows_Server is used to enable Azure Hybrid User Benefits for Windows VMs." + }, + "enableCSIProxy": { + "type": "boolean", + "description": "Whether to enable CSI proxy." + } + }, + "required": [ + "adminUsername" + ], + "description": "Profile for Windows VMs in the container service cluster." + }, + "ContainerServiceLinuxProfile": { + "properties": { + "adminUsername": { + "type": "string", + "description": "The administrator username to use for Linux VMs.", + "pattern": "^[A-Za-z][-A-Za-z0-9_]*$" + }, + "ssh": { + "$ref": "#/definitions/ContainerServiceSshConfiguration", + "description": "SSH configuration for Linux-based VMs running on Azure." + } + }, + "required": [ + "adminUsername", + "ssh" + ], + "description": "Profile for Linux VMs in the container service cluster." + }, + "ContainerServiceNetworkProfile": { + "properties": { + "networkPlugin": { + "type": "string", + "enum": [ + "azure", + "kubenet" + ], + "default": "kubenet", + "x-ms-enum": { + "name": "NetworkPlugin", + "modelAsString": true + }, + "description": "Network plugin used for building Kubernetes network." + }, + "networkPolicy": { + "type": "string", + "enum": [ + "calico", + "azure" + ], + "x-ms-enum": { + "name": "NetworkPolicy", + "modelAsString": true + }, + "description": "Network policy used for building Kubernetes network." + }, + "networkMode": { + "type": "string", + "enum": [ + "transparent", + "bridge" + ], + "x-ms-enum": { + "name": "networkMode", + "modelAsString": true + }, + "description": "Network mode used for building Kubernetes network." + }, + "podCidr": { + "type": "string", + "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}(\\/([0-9]|[1-2][0-9]|3[0-2]))?$", + "default": "10.244.0.0/16", + "description": "A CIDR notation IP range from which to assign pod IPs when kubenet is used." + }, + "serviceCidr": { + "type": "string", + "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}(\\/([0-9]|[1-2][0-9]|3[0-2]))?$", + "default": "10.0.0.0/16", + "description": "A CIDR notation IP range from which to assign service cluster IPs. It must not overlap with any Subnet IP ranges." + }, + "dnsServiceIP": { + "type": "string", + "pattern": "^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$", + "default": "10.0.0.10", + "description": "An IP address assigned to the Kubernetes DNS service. It must be within the Kubernetes service address range specified in serviceCidr." + }, + "dockerBridgeCidr": { + "type": "string", + "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}(\\/([0-9]|[1-2][0-9]|3[0-2]))?$", + "default": "172.17.0.1/16", + "description": "A CIDR notation IP range assigned to the Docker bridge network. It must not overlap with any Subnet IP ranges or the Kubernetes service address range." + }, + "outboundType": { + "type": "string", + "enum": [ + "loadBalancer", + "userDefinedRouting" + ], + "x-ms-enum": { + "name": "outboundType", + "modelAsString": true + }, + "default": "loadBalancer", + "description": "The outbound (egress) routing method." + }, + "loadBalancerSku": { + "type": "string", + "enum": [ + "standard", + "basic" + ], + "x-ms-enum": { + "name": "loadBalancerSku", + "modelAsString": true + }, + "description": "The load balancer sku for the managed cluster." + }, + "loadBalancerProfile": { + "$ref": "#/definitions/ManagedClusterLoadBalancerProfile", + "description": "Profile of the cluster load balancer." + } + }, + "description": "Profile of network configuration." + }, + "MaintenanceConfigurationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/MaintenanceConfiguration" + }, + "description": "The list of maintenance configurations." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of maintenance configuration results.", + "readOnly": true + } + }, + "description": "The response from the List maintenance configurations operation." + }, + "SystemData": { + "description": "Metadata pertaining to creation and last modification of the resource.", + "type": "object", + "readOnly": true, + "properties": { + "createdBy": { + "type": "string", + "description": "The identity that created the resource." + }, + "createdByType": { + "type": "string", + "description": "The type of identity that created the resource.", + "enum": [ + "User", + "Application", + "ManagedIdentity", + "Key" + ], + "x-ms-enum": { + "name": "createdByType", + "modelAsString": true + } + }, + "createdAt": { + "type": "string", + "format": "date-time", + "description": "The timestamp of resource creation (UTC)." + }, + "lastModifiedBy": { + "type": "string", + "description": "The identity that last modified the resource." + }, + "lastModifiedByType": { + "type": "string", + "description": "The type of identity that last modified the resource.", + "enum": [ + "User", + "Application", + "ManagedIdentity", + "Key" + ], + "x-ms-enum": { + "name": "createdByType", + "modelAsString": true + } + }, + "lastModifiedAt": { + "type": "string", + "format": "date-time", + "description": "The type of identity that last modified the resource." + } + } + }, + "MaintenanceConfiguration": { + "allOf": [ + { + "$ref": "#/definitions/SubResource" + } + ], + "properties": { + "systemData": { + "$ref": "#/definitions/SystemData", + "readOnly": true, + "description": "The system meta data relating to this resource." + }, + "properties": { + "description": "Properties of a default maintenance configuration.", + "$ref": "#/definitions/MaintenanceConfigurationProperties", + "x-ms-client-flatten": true + } + }, + "description": "maintenance configuration." + }, + "MaintenanceConfigurationProperties": { + "properties": { + "timeInWeek": { + "type": "array", + "items": { + "$ref": "#/definitions/TimeInWeek" + }, + "description": "Weekday time slots allowed to upgrade." + }, + "notAllowedTime": { + "type": "array", + "items": { + "$ref": "#/definitions/TimeSpan" + }, + "description": "Time slots on which upgrade is not allowed." + } + }, + "description": "Default maintenance configuration properties." + }, + "TimeInWeek": { + "properties": { + "day": { + "$ref": "#/definitions/WeekDay", + "description": "A day in a week." + }, + "hourSlots": { + "type": "array", + "items": { + "$ref": "#/definitions/HourInDay" + }, + "description": "hour slots in a day." + } + }, + "description": "Time in a week." + }, + "WeekDay": { + "type": "string", + "enum": [ + "Sunday", + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday" + ], + "x-ms-enum": { + "name": "WeekDay", + "modelAsString": true + }, + "description": "The weekday enum." + }, + "HourInDay": { + "type": "integer", + "format": "int32", + "maximum": 23, + "minimum": 0, + "description": "Hour in a day." + }, + "TimeSpan": { + "properties": { + "start": { + "type": "string", + "format": "date-time", + "description": "The start of a time span" + }, + "end": { + "type": "string", + "format": "date-time", + "description": "The end of a time span" + } + }, + "description": "The time span with start and end properties." + }, + "RunCommandRequest": { + "properties": { + "command": { + "type": "string", + "description": "command to run." + }, + "context": { + "type": "string", + "description": "base64 encoded zip file, contains files required by the command" + }, + "clusterToken": { + "type": "string", + "description": "AuthToken issued for AKS AAD Server App." + } + }, + "description": "run command request", + "required": [ + "command" + ] + }, + "RunCommandResult": { + "properties": { + "id": { + "type": "string", + "description": "command id.", + "readOnly": true + }, + "properties": { + "description": "Properties of command result.", + "$ref": "#/definitions/CommandResultProperties", + "x-ms-client-flatten": true + } + }, + "description": "run command result." + }, + "CommandResultProperties": { + "properties": { + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "provisioning State" + }, + "exitCode": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "exit code of the command" + }, + "startedAt": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "time when the command started." + }, + "finishedAt": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "time when the command finished." + }, + "logs": { + "type": "string", + "readOnly": true, + "description": "command output." + }, + "reason": { + "type": "string", + "readOnly": true, + "description": "explain why provisioningState is set to failed (if so)." + } + } + }, + "ManagedClusterLoadBalancerProfile": { + "properties": { + "managedOutboundIPs": { + "properties": { + "count": { + "type": "integer", + "format": "int32", + "maximum": 100, + "minimum": 1, + "description": "Desired number of outbound IP created/managed by Azure for the cluster load balancer. Allowed values must be in the range of 1 to 100 (inclusive). The default value is 1. ", + "default": 1 + } + }, + "description": "Desired managed outbound IPs for the cluster load balancer." + }, + "outboundIPPrefixes": { + "properties": { + "publicIPPrefixes": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceReference" + }, + "description": "A list of public IP prefix resources." + } + }, + "description": "Desired outbound IP Prefix resources for the cluster load balancer." + }, + "outboundIPs": { + "properties": { + "publicIPs": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceReference" + }, + "description": "A list of public IP resources." + } + }, + "description": "Desired outbound IP resources for the cluster load balancer." + }, + "effectiveOutboundIPs": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceReference" + }, + "description": "The effective outbound IP resources of the cluster load balancer." + }, + "allocatedOutboundPorts": { + "type": "integer", + "format": "int32", + "maximum": 64000, + "minimum": 0, + "description": "Desired number of allocated SNAT ports per VM. Allowed values must be in the range of 0 to 64000 (inclusive). The default value is 0 which results in Azure dynamically allocating ports.", + "default": 0 + }, + "idleTimeoutInMinutes": { + "type": "integer", + "format": "int32", + "maximum": 120, + "minimum": 4, + "description": "Desired outbound flow idle timeout in minutes. Allowed values must be in the range of 4 to 120 (inclusive). The default value is 30 minutes.", + "default": 30 + } + }, + "description": "Profile of the managed cluster load balancer." + }, + "ResourceReference": { + "properties": { + "id": { + "type": "string", + "description": "The fully qualified Azure resource id." + } + }, + "description": "A reference to an Azure resource." + }, + "ContainerServiceSshConfiguration": { + "properties": { + "publicKeys": { + "type": "array", + "items": { + "$ref": "#/definitions/ContainerServiceSshPublicKey" + }, + "description": "The list of SSH public keys used to authenticate with Linux-based VMs. Only expect one key specified." + } + }, + "description": "SSH configuration for Linux-based VMs running on Azure.", + "required": [ + "publicKeys" + ] + }, + "ContainerServiceSshPublicKey": { + "properties": { + "keyData": { + "type": "string", + "description": "Certificate public key used to authenticate with VMs through SSH. The certificate must be in PEM format with or without headers." + } + }, + "required": [ + "keyData" + ], + "description": "Contains information about SSH certificate public key data." + }, + "ContainerServiceDiagnosticsProfile": { + "properties": { + "vmDiagnostics": { + "$ref": "#/definitions/ContainerServiceVMDiagnostics", + "description": "Profile for diagnostics on the container service VMs." + } + }, + "description": "Profile for diagnostics on the container service cluster.", + "required": [ + "vmDiagnostics" + ] + }, + "ContainerServiceVMDiagnostics": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Whether the VM diagnostic agent is provisioned on the VM." + }, + "storageUri": { + "readOnly": true, + "type": "string", + "description": "The URI of the storage account where diagnostics are stored." + } + }, + "description": "Profile for diagnostics on the container service VMs.", + "required": [ + "enabled" + ] + }, + "ManagedClusterListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ManagedCluster" + }, + "description": "The list of managed clusters." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of managed cluster results.", + "readOnly": true + } + }, + "description": "The response from the List Managed Clusters operation." + }, + "ManagedCluster": { + "properties": { + "sku": { + "$ref": "#/definitions/ManagedClusterSKU", + "description": "The managed cluster SKU." + }, + "extendedLocation": { + "$ref": "#/definitions/ExtendedLocation", + "description": "The extended location of the Virtual Machine." + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + }, + { + "properties": { + "properties": { + "description": "Properties of a managed cluster.", + "$ref": "#/definitions/ManagedClusterProperties", + "x-ms-client-flatten": true + }, + "identity": { + "$ref": "#/definitions/ManagedClusterIdentity", + "description": "The identity of the managed cluster, if configured." + } + } + } + ], + "description": "Managed cluster." + }, + "ManagedClusterProperties": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The current deployment or provisioning state, which only appears in the response." + }, + "powerState": { + "$ref": "#/definitions/PowerState", + "description": "Represents the Power State of the cluster", + "readOnly": true + }, + "maxAgentPools": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The max number of agent pools for the managed cluster." + }, + "kubernetesVersion": { + "type": "string", + "description": "Version of Kubernetes specified when creating the managed cluster." + }, + "dnsPrefix": { + "type": "string", + "description": "DNS prefix specified when creating the managed cluster." + }, + "fqdnSubdomain": { + "type": "string", + "description": "FQDN subdomain specified when creating private cluster with custom private dns zone." + }, + "fqdn": { + "readOnly": true, + "type": "string", + "description": "FQDN for the master pool." + }, + "privateFQDN": { + "readOnly": true, + "type": "string", + "description": "FQDN of private cluster." + }, + "azurePortalFQDN": { + "readOnly": true, + "type": "string", + "description": "FQDN for the master pool which used by proxy config." + }, + "agentPoolProfiles": { + "type": "array", + "items": { + "$ref": "#/definitions/ManagedClusterAgentPoolProfile" + }, + "description": "Properties of the agent pool." + }, + "linuxProfile": { + "$ref": "#/definitions/ContainerServiceLinuxProfile", + "description": "Profile for Linux VMs in the container service cluster." + }, + "windowsProfile": { + "$ref": "#/definitions/ManagedClusterWindowsProfile", + "description": "Profile for Windows VMs in the container service cluster." + }, + "servicePrincipalProfile": { + "$ref": "#/definitions/ManagedClusterServicePrincipalProfile", + "description": "Information about a service principal identity for the cluster to use for manipulating Azure APIs." + }, + "addonProfiles": { + "additionalProperties": { + "$ref": "#/definitions/ManagedClusterAddonProfile" + }, + "description": "Profile of managed cluster add-on." + }, + "podIdentityProfile": { + "$ref": "#/definitions/ManagedClusterPodIdentityProfile", + "description": "Profile of managed cluster pod identity." + }, + "nodeResourceGroup": { + "type": "string", + "description": "Name of the resource group containing agent pool nodes." + }, + "enableRBAC": { + "type": "boolean", + "description": "Whether to enable Kubernetes Role-Based Access Control." + }, + "enablePodSecurityPolicy": { + "type": "boolean", + "description": "(DEPRECATING) Whether to enable Kubernetes pod security policy (preview). This feature is set for removal on October 15th, 2020. Learn more at aka.ms/aks/azpodpolicy." + }, + "networkProfile": { + "$ref": "#/definitions/ContainerServiceNetworkProfile", + "description": "Profile of network configuration." + }, + "aadProfile": { + "$ref": "#/definitions/ManagedClusterAADProfile", + "description": "Profile of Azure Active Directory configuration." + }, + "autoUpgradeProfile": { + "$ref": "#/definitions/ManagedClusterAutoUpgradeProfile", + "description": "Profile of auto upgrade configuration." + }, + "autoScalerProfile": { + "type": "object", + "properties": { + "balance-similar-node-groups": { + "type": "string" + }, + "expander": { + "type": "string", + "enum": [ + "least-waste", + "most-pods", + "priority", + "random" + ], + "x-ms-enum": { + "name": "expander", + "modelAsString": true + } + }, + "max-empty-bulk-delete": { + "type": "string" + }, + "max-graceful-termination-sec": { + "type": "string" + }, + "max-node-provision-time": { + "type": "string" + }, + "max-total-unready-percentage": { + "type": "string" + }, + "new-pod-scale-up-delay": { + "type": "string" + }, + "ok-total-unready-count": { + "type": "string" + }, + "scan-interval": { + "type": "string" + }, + "scale-down-delay-after-add": { + "type": "string" + }, + "scale-down-delay-after-delete": { + "type": "string" + }, + "scale-down-delay-after-failure": { + "type": "string" + }, + "scale-down-unneeded-time": { + "type": "string" + }, + "scale-down-unready-time": { + "type": "string" + }, + "scale-down-utilization-threshold": { + "type": "string" + }, + "skip-nodes-with-local-storage": { + "type": "string" + }, + "skip-nodes-with-system-pods": { + "type": "string" + } + }, + "description": "Parameters to be applied to the cluster-autoscaler when enabled" + }, + "apiServerAccessProfile": { + "$ref": "#/definitions/ManagedClusterAPIServerAccessProfile", + "description": "Access profile for managed cluster API server." + }, + "diskEncryptionSetID": { + "type": "string", + "description": "ResourceId of the disk encryption set to use for enabling encryption at rest." + }, + "identityProfile": { + "additionalProperties": { + "allOf": [ + { + "$ref": "#/definitions/UserAssignedIdentity" + } + ] + }, + "description": "Identities associated with the cluster." + }, + "privateLinkResources": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + }, + "description": "Private link resources associated with the cluster." + }, + "disableLocalAccounts": { + "type": "boolean", + "description": "If set to true, getting static credential will be disabled for this cluster. Expected to only be used for AAD clusters." + }, + "httpProxyConfig": { + "$ref": "#/definitions/ManagedClusterHTTPProxyConfig", + "description": "Configurations for provisioning the cluster with HTTP proxy servers." + } + }, + "description": "Properties of the managed cluster." + }, + "PowerState": { + "description": "Describes the Power State of the cluster", + "properties": { + "code": { + "type": "string", + "description": "Tells whether the cluster is Running or Stopped", + "enum": [ + "Running", + "Stopped" + ], + "x-ms-enum": { + "name": "code", + "modelAsString": true + } + } + } + }, + "ManagedClusterAPIServerAccessProfile": { + "properties": { + "authorizedIPRanges": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Authorized IP Ranges to kubernetes API server." + }, + "enablePrivateCluster": { + "type": "boolean", + "description": "Whether to create the cluster as a private cluster or not." + }, + "privateDNSZone": { + "type": "string", + "description": "Private dns zone mode for private cluster. " + } + }, + "description": "Access profile for managed cluster API server." + }, + "ManagedClusterIdentity": { + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of the system assigned identity which is used by master components." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant id of the system assigned identity which is used by master components." + }, + "type": { + "type": "string", + "description": "The type of identity used for the managed cluster. Type 'SystemAssigned' will use an implicitly created identity in master components and an auto-created user assigned identity in MC_ resource group in agent nodes. Type 'None' will not use MSI for the managed cluster, service principal will be used instead.", + "enum": [ + "SystemAssigned", + "UserAssigned", + "None" + ], + "x-ms-enum": { + "name": "ResourceIdentityType", + "modelAsString": false + } + }, + "userAssignedIdentities": { + "type": "object", + "additionalProperties": { + "type": "object", + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of user assigned identity." + }, + "clientId": { + "readOnly": true, + "type": "string", + "description": "The client id of user assigned identity." + } + } + }, + "description": "The user identity associated with the managed cluster. This identity will be used in control plane and only one user assigned identity is allowed. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'." + } + }, + "description": "Identity for the managed cluster." + }, + "UserAssignedIdentity": { + "properties": { + "resourceId": { + "type": "string", + "description": "The resource id of the user assigned identity." + }, + "clientId": { + "type": "string", + "description": "The client id of the user assigned identity." + }, + "objectId": { + "type": "string", + "description": "The object id of the user assigned identity." + } + } + }, + "ManagedClusterAccessProfile": { + "allOf": [ + { + "$ref": "#/definitions/Resource" + }, + { + "properties": { + "properties": { + "description": "AccessProfile of a managed cluster.", + "$ref": "#/definitions/AccessProfile", + "x-ms-client-flatten": true + } + } + } + ], + "description": "Managed cluster Access Profile.", + "x-ms-azure-resource": false + }, + "AccessProfile": { + "type": "object", + "properties": { + "kubeConfig": { + "type": "string", + "format": "byte", + "description": "Base64-encoded Kubernetes configuration file." + } + }, + "description": "Profile for enabling a user to access a managed cluster." + }, + "ManagedClusterPoolUpgradeProfile": { + "properties": { + "kubernetesVersion": { + "type": "string", + "description": "Kubernetes version (major, minor, patch)." + }, + "name": { + "type": "string", + "description": "Pool name." + }, + "osType": { + "$ref": "#/definitions/OSType", + "enum": [ + "Linux", + "Windows" + ], + "x-ms-enum": { + "name": "ContainerServiceOSTypes", + "modelAsString": true + }, + "description": "OsType to be used to specify os type. Choose from Linux and Windows. Default to Linux." + }, + "upgrades": { + "type": "array", + "items": { + "type": "object", + "properties": { + "kubernetesVersion": { + "type": "string", + "description": "Kubernetes version (major, minor, patch)." + }, + "isPreview": { + "type": "boolean", + "description": "Whether Kubernetes version is currently in preview." + } + } + }, + "description": "List of orchestrator types and versions available for upgrade." + } + }, + "required": [ + "kubernetesVersion", + "osType" + ], + "description": "The list of available upgrade versions." + }, + "ManagedClusterUpgradeProfileProperties": { + "properties": { + "controlPlaneProfile": { + "$ref": "#/definitions/ManagedClusterPoolUpgradeProfile", + "description": "The list of available upgrade versions for the control plane." + }, + "agentPoolProfiles": { + "type": "array", + "items": { + "$ref": "#/definitions/ManagedClusterPoolUpgradeProfile" + }, + "description": "The list of available upgrade versions for agent pools." + } + }, + "required": [ + "controlPlaneProfile", + "agentPoolProfiles" + ], + "description": "Control plane and agent pool upgrade profiles." + }, + "ManagedClusterAutoUpgradeProfile": { + "properties": { + "upgradeChannel": { + "type": "string", + "enum": [ + "rapid", + "stable", + "patch", + "node-image", + "none" + ], + "x-ms-enum": { + "name": "upgradeChannel", + "modelAsString": true + }, + "description": "upgrade channel for auto upgrade." + } + }, + "description": "Auto upgrade profile for a managed cluster." + }, + "ManagedClusterAADProfile": { + "properties": { + "managed": { + "type": "boolean", + "description": "Whether to enable managed AAD." + }, + "enableAzureRBAC": { + "type": "boolean", + "description": "Whether to enable Azure RBAC for Kubernetes authorization." + }, + "adminGroupObjectIDs": { + "type": "array", + "items": { + "type": "string" + }, + "description": "AAD group object IDs that will have admin role of the cluster." + }, + "clientAppID": { + "type": "string", + "description": "The client AAD application ID." + }, + "serverAppID": { + "type": "string", + "description": "The server AAD application ID." + }, + "serverAppSecret": { + "type": "string", + "description": "The server AAD application secret." + }, + "tenantID": { + "type": "string", + "description": "The AAD tenant ID to use for authentication. If not specified, will use the tenant of the deployment subscription." + } + }, + "description": "AADProfile specifies attributes for Azure Active Directory integration." + }, + "ManagedClusterAddonProfile": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Whether the add-on is enabled or not." + }, + "config": { + "additionalProperties": { + "type": "string" + }, + "description": "Key-value pairs for configuring an add-on." + }, + "identity": { + "readOnly": true, + "description": "Information of user assigned identity used by this add-on.", + "allOf": [ + { + "$ref": "#/definitions/UserAssignedIdentity" + } + ] + } + }, + "required": [ + "enabled" + ], + "description": "A Kubernetes add-on profile for a managed cluster." + }, + "ManagedClusterPodIdentity": { + "properties": { + "name": { + "type": "string", + "description": "Name of the pod identity." + }, + "namespace": { + "type": "string", + "description": "Namespace of the pod identity." + }, + "bindingSelector": { + "type": "string", + "description": "Binding selector to use for the AzureIdentityBinding resource." + }, + "identity": { + "$ref": "#/definitions/UserAssignedIdentity", + "description": "Information of the user assigned identity." + }, + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "The current provisioning state of the pod identity.", + "enum": [ + "Assigned", + "Updating", + "Deleting", + "Failed" + ], + "x-ms-enum": { + "name": "ManagedClusterPodIdentityProvisioningState", + "modelAsString": true + } + }, + "provisioningInfo": { + "readOnly": true, + "properties": { + "error": { + "$ref": "#/definitions/CloudError", + "description": "Pod identity assignment error (if any)." + } + } + } + }, + "required": [ + "name", + "namespace", + "identity" + ] + }, + "ManagedClusterPodIdentityException": { + "properties": { + "name": { + "type": "string", + "description": "Name of the pod identity exception." + }, + "namespace": { + "type": "string", + "description": "Namespace of the pod identity exception." + }, + "podLabels": { + "type": "object", + "description": "Pod labels to match.", + "additionalProperties": { + "type": "string" + } + } + }, + "required": [ + "name", + "namespace", + "podLabels" + ] + }, + "ManagedClusterPodIdentityProfile": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Whether the pod identity addon is enabled." + }, + "allowNetworkPluginKubenet": { + "type": "boolean", + "description": "Customer consent for enabling AAD pod identity addon in cluster using Kubenet network plugin." + }, + "userAssignedIdentities": { + "description": "User assigned pod identity settings.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedClusterPodIdentity" + } + }, + "userAssignedIdentityExceptions": { + "description": "User assigned pod identity exception settings.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedClusterPodIdentityException" + } + } + } + }, + "ManagedClusterUpgradeProfile": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Id of upgrade profile." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Name of upgrade profile." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of upgrade profile." + }, + "properties": { + "$ref": "#/definitions/ManagedClusterUpgradeProfileProperties", + "description": "Properties of upgrade profile.", + "x-ms-client-flatten": true + } + }, + "required": [ + "properties" + ], + "description": "The list of available upgrades for compute pools." + }, + "AgentPoolUpgradeProfile": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Id of the agent pool upgrade profile." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Name of the agent pool upgrade profile." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the agent pool upgrade profile." + }, + "properties": { + "$ref": "#/definitions/AgentPoolUpgradeProfileProperties", + "description": "Properties of agent pool upgrade profile.", + "x-ms-client-flatten": true + } + }, + "required": [ + "properties" + ], + "description": "The list of available upgrades for an agent pool." + }, + "AgentPoolUpgradeProfileProperties": { + "properties": { + "kubernetesVersion": { + "type": "string", + "description": "Kubernetes version (major, minor, patch)." + }, + "osType": { + "$ref": "#/definitions/OSType", + "enum": [ + "Linux", + "Windows" + ], + "x-ms-enum": { + "name": "ContainerServiceOSTypes", + "modelAsString": true + }, + "description": "OsType to be used to specify os type. Choose from Linux and Windows. Default to Linux." + }, + "upgrades": { + "type": "array", + "items": { + "type": "object", + "properties": { + "kubernetesVersion": { + "type": "string", + "description": "Kubernetes version (major, minor, patch)." + }, + "isPreview": { + "type": "boolean", + "description": "Whether Kubernetes version is currently in preview." + } + } + }, + "description": "List of orchestrator types and versions available for upgrade." + }, + "latestNodeImageVersion": { + "type": "string", + "description": "LatestNodeImageVersion is the latest AKS supported node image version." + } + }, + "required": [ + "kubernetesVersion", + "osType" + ], + "description": "The list of available upgrade versions." + }, + "AgentPoolAvailableVersions": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Id of the agent pool available versions." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Name of the agent pool available versions." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the agent pool available versions." + }, + "properties": { + "$ref": "#/definitions/AgentPoolAvailableVersionsProperties", + "description": "Properties of agent pool available versions.", + "x-ms-client-flatten": true + } + }, + "required": [ + "properties" + ], + "description": "The list of available versions for an agent pool." + }, + "AgentPoolAvailableVersionsProperties": { + "properties": { + "agentPoolVersions": { + "type": "array", + "items": { + "type": "object", + "properties": { + "default": { + "type": "boolean", + "description": "Whether this version is the default agent pool version." + }, + "kubernetesVersion": { + "type": "string", + "description": "Kubernetes version (major, minor, patch)." + }, + "isPreview": { + "type": "boolean", + "description": "Whether Kubernetes version is currently in preview." + } + } + }, + "description": "List of versions available for agent pool." + } + }, + "description": "The list of available agent pool versions." + }, + "OSType": { + "type": "string", + "default": "Linux", + "enum": [ + "Linux", + "Windows" + ], + "x-ms-enum": { + "name": "OSType", + "modelAsString": true + }, + "description": "OsType to be used to specify os type. Choose from Linux and Windows. Default to Linux." + }, + "OSSKU": { + "type": "string", + "enum": [ + "Ubuntu", + "CBLMariner" + ], + "x-ms-enum": { + "name": "OSSKU", + "modelAsString": true + }, + "description": "OsSKU to be used to specify os sku. Choose from Ubuntu(default) and CBLMariner for Linux OSType. Not applicable to Windows OSType." + }, + "ScaleSetPriority": { + "type": "string", + "default": "Regular", + "enum": [ + "Spot", + "Regular" + ], + "x-ms-enum": { + "name": "ScaleSetPriority", + "modelAsString": true + }, + "description": "ScaleSetPriority to be used to specify virtual machine scale set priority. Default to regular." + }, + "ScaleSetEvictionPolicy": { + "type": "string", + "default": "Delete", + "enum": [ + "Delete", + "Deallocate" + ], + "x-ms-enum": { + "name": "ScaleSetEvictionPolicy", + "modelAsString": true + }, + "description": "ScaleSetEvictionPolicy to be used to specify eviction policy for Spot virtual machine scale set. Default to Delete." + }, + "SpotMaxPrice": { + "type": "number", + "default": -1, + "description": "SpotMaxPrice to be used to specify the maximum price you are willing to pay in US Dollars. Possible values are any decimal value greater than zero or -1 which indicates default price to be up-to on-demand." + }, + "ProximityPlacementGroupID": { + "type": "string", + "description": "The ID for Proximity Placement Group." + }, + "CredentialResults": { + "properties": { + "kubeconfigs": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/CredentialResult" + }, + "description": "Base64-encoded Kubernetes configuration file." + } + }, + "description": "The list of credential result response." + }, + "CredentialResult": { + "type": "object", + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the credential." + }, + "value": { + "type": "string", + "format": "byte", + "readOnly": true, + "description": "Base64-encoded Kubernetes configuration file." + } + }, + "description": "The credential result response." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorBody", + "description": "Details about the error." + } + }, + "description": "An error response from the Container service." + }, + "CloudErrorBody": { + "x-ms-external": true, + "properties": { + "code": { + "type": "string", + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "type": "string", + "description": "A message describing the error, intended to be suitable for display in a user interface." + }, + "target": { + "type": "string", + "description": "The target of the particular error. For example, the name of the property in error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/CloudErrorBody" + }, + "description": "A list of additional details about the error." + } + }, + "description": "An error response from the Container service." + }, + "ManagedClusterSKU": { + "properties": { + "name": { + "type": "string", + "description": "Name of a managed cluster SKU.", + "enum": [ + "Basic" + ], + "x-ms-enum": { + "name": "ManagedClusterSKUName", + "modelAsString": true + } + }, + "tier": { + "type": "string", + "description": "Tier of a managed cluster SKU.", + "enum": [ + "Paid", + "Free" + ], + "x-ms-enum": { + "name": "ManagedClusterSKUTier", + "modelAsString": true + } + } + } + }, + "PrivateEndpointConnectionListResult": { + "type": "object", + "description": "A list of private endpoint connections", + "properties": { + "value": { + "description": "The collection value.", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + } + } + }, + "PrivateEndpointConnection": { + "description": "A private endpoint connection", + "type": "object", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ID of the private endpoint connection." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the private endpoint connection.", + "externalDocs": { + "url": "https://aka.ms/search-naming-rules" + } + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + }, + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "description": "The properties of a private endpoint connection.", + "x-ms-client-flatten": true + } + }, + "x-ms-azure-resource": true + }, + "PrivateEndpointConnectionProperties": { + "type": "object", + "description": "Properties of a private endpoint connection.", + "properties": { + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "The current provisioning state.", + "enum": [ + "Succeeded", + "Creating", + "Deleting", + "Failed" + ], + "x-ms-enum": { + "name": "PrivateEndpointConnectionProvisioningState", + "modelAsString": true + } + }, + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpoint", + "description": "The resource of private endpoint." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionState", + "description": "A collection of information about the state of the connection between service consumer and provider." + } + }, + "required": [ + "privateLinkServiceConnectionState" + ] + }, + "PrivateEndpoint": { + "type": "object", + "description": "Private endpoint which a connection belongs to.", + "properties": { + "id": { + "description": "The resource Id for private endpoint", + "type": "string" + } + } + }, + "PrivateLinkServiceConnectionState": { + "description": "The state of a private link service connection.", + "type": "object", + "properties": { + "status": { + "enum": [ + "Pending", + "Approved", + "Rejected", + "Disconnected" + ], + "type": "string", + "description": "The private link service connection status.", + "x-ms-enum": { + "name": "ConnectionStatus", + "modelAsString": true + } + }, + "description": { + "type": "string", + "description": "The private link service connection description." + } + } + }, + "PrivateLinkResourcesListResult": { + "type": "object", + "description": "A list of private link resources", + "properties": { + "value": { + "description": "The collection value.", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + } + } + } + }, + "PrivateLinkResource": { + "description": "A private link resource", + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "The ID of the private link resource." + }, + "name": { + "type": "string", + "description": "The name of the private link resource.", + "externalDocs": { + "url": "https://aka.ms/search-naming-rules" + } + }, + "type": { + "type": "string", + "description": "The resource type." + }, + "groupId": { + "type": "string", + "description": "The group ID of the resource." + }, + "requiredMembers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "RequiredMembers of the resource" + }, + "privateLinkServiceID": { + "readOnly": true, + "type": "string", + "description": "The private link service ID of the resource, this field is exposed only to NRP internally." + } + } + }, + "OSDiskType": { + "type": "string", + "enum": [ + "Managed", + "Ephemeral" + ], + "x-ms-enum": { + "name": "OSDiskType", + "modelAsString": true + }, + "description": "OSDiskType represents the type of an OS disk on an agent pool." + }, + "KubeletDiskType": { + "type": "string", + "enum": [ + "OS", + "Temporary" + ], + "x-ms-enum": { + "name": "KubeletDiskType", + "modelAsString": true + }, + "description": "KubeletDiskType determines the placement of emptyDir volumes, container runtime data root, and Kubelet ephemeral storage. Allowed values: 'OS', 'Temporary' (preview)." + }, + "KubeletConfig": { + "description": "Kubelet configurations of agent nodes.", + "type": "object", + "properties": { + "cpuManagerPolicy": { + "type": "string", + "description": "CPU Manager policy to use." + }, + "cpuCfsQuota": { + "type": "boolean", + "description": "Enable CPU CFS quota enforcement for containers that specify CPU limits." + }, + "cpuCfsQuotaPeriod": { + "type": "string", + "description": "Sets CPU CFS quota period value." + }, + "imageGcHighThreshold": { + "type": "integer", + "format": "int32", + "description": "The percent of disk usage after which image garbage collection is always run." + }, + "imageGcLowThreshold": { + "type": "integer", + "format": "int32", + "description": "The percent of disk usage before which image garbage collection is never run." + }, + "topologyManagerPolicy": { + "type": "string", + "description": "Topology Manager policy to use." + }, + "allowedUnsafeSysctls": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Allowlist of unsafe sysctls or unsafe sysctl patterns (ending in `*`)." + }, + "failSwapOn": { + "type": "boolean", + "description": "If set to true it will make the Kubelet fail to start if swap is enabled on the node." + }, + "containerLogMaxSizeMB": { + "type": "integer", + "format": "int32", + "description": "The maximum size (e.g. 10Mi) of container log file before it is rotated." + }, + "containerLogMaxFiles": { + "type": "integer", + "format": "int32", + "description": "The maximum number of container log files that can be present for a container. The number must be ≥ 2.", + "minimum": 2 + }, + "podMaxPids": { + "type": "integer", + "format": "int32", + "description": "The maximum number of processes per pod." + } + } + }, + "LinuxOSConfig": { + "description": "OS configurations of Linux agent nodes.", + "type": "object", + "properties": { + "sysctls": { + "$ref": "#/definitions/SysctlConfig", + "description": "Sysctl settings for Linux agent nodes." + }, + "transparentHugePageEnabled": { + "type": "string", + "description": "Transparent Huge Page enabled configuration." + }, + "transparentHugePageDefrag": { + "type": "string", + "description": "Transparent Huge Page defrag configuration." + }, + "swapFileSizeMB": { + "type": "integer", + "format": "int32", + "description": "SwapFileSizeMB specifies size in MB of a swap file will be created on each node." + } + } + }, + "SysctlConfig": { + "description": "Sysctl settings for Linux agent nodes.", + "type": "object", + "properties": { + "netCoreSomaxconn": { + "type": "integer", + "format": "int32", + "description": "Sysctl setting net.core.somaxconn." + }, + "netCoreNetdevMaxBacklog": { + "type": "integer", + "format": "int32", + "description": "Sysctl setting net.core.netdev_max_backlog." + }, + "netCoreRmemDefault": { + "type": "integer", + "format": "int32", + "description": "Sysctl setting net.core.rmem_default." + }, + "netCoreRmemMax": { + "type": "integer", + "format": "int32", + "description": "Sysctl setting net.core.rmem_max." + }, + "netCoreWmemDefault": { + "type": "integer", + "format": "int32", + "description": "Sysctl setting net.core.wmem_default." + }, + "netCoreWmemMax": { + "type": "integer", + "format": "int32", + "description": "Sysctl setting net.core.wmem_max." + }, + "netCoreOptmemMax": { + "type": "integer", + "format": "int32", + "description": "Sysctl setting net.core.optmem_max." + }, + "netIpv4TcpMaxSynBacklog": { + "type": "integer", + "format": "int32", + "description": "Sysctl setting net.ipv4.tcp_max_syn_backlog." + }, + "netIpv4TcpMaxTwBuckets": { + "type": "integer", + "format": "int32", + "description": "Sysctl setting net.ipv4.tcp_max_tw_buckets." + }, + "netIpv4TcpFinTimeout": { + "type": "integer", + "format": "int32", + "description": "Sysctl setting net.ipv4.tcp_fin_timeout." + }, + "netIpv4TcpKeepaliveTime": { + "type": "integer", + "format": "int32", + "description": "Sysctl setting net.ipv4.tcp_keepalive_time." + }, + "netIpv4TcpKeepaliveProbes": { + "type": "integer", + "format": "int32", + "description": "Sysctl setting net.ipv4.tcp_keepalive_probes." + }, + "netIpv4TcpkeepaliveIntvl": { + "type": "integer", + "format": "int32", + "description": "Sysctl setting net.ipv4.tcp_keepalive_intvl." + }, + "netIpv4TcpTwReuse": { + "type": "boolean", + "description": "Sysctl setting net.ipv4.tcp_tw_reuse." + }, + "netIpv4IpLocalPortRange": { + "type": "string", + "description": "Sysctl setting net.ipv4.ip_local_port_range." + }, + "netIpv4NeighDefaultGcThresh1": { + "type": "integer", + "format": "int32", + "description": "Sysctl setting net.ipv4.neigh.default.gc_thresh1." + }, + "netIpv4NeighDefaultGcThresh2": { + "type": "integer", + "format": "int32", + "description": "Sysctl setting net.ipv4.neigh.default.gc_thresh2." + }, + "netIpv4NeighDefaultGcThresh3": { + "type": "integer", + "format": "int32", + "description": "Sysctl setting net.ipv4.neigh.default.gc_thresh3." + }, + "netNetfilterNfConntrackMax": { + "type": "integer", + "format": "int32", + "description": "Sysctl setting net.netfilter.nf_conntrack_max." + }, + "netNetfilterNfConntrackBuckets": { + "type": "integer", + "format": "int32", + "description": "Sysctl setting net.netfilter.nf_conntrack_buckets." + }, + "fsInotifyMaxUserWatches": { + "type": "integer", + "format": "int32", + "description": "Sysctl setting fs.inotify.max_user_watches." + }, + "fsFileMax": { + "type": "integer", + "format": "int32", + "description": "Sysctl setting fs.file-max." + }, + "fsAioMaxNr": { + "type": "integer", + "format": "int32", + "description": "Sysctl setting fs.aio-max-nr." + }, + "fsNrOpen": { + "type": "integer", + "format": "int32", + "description": "Sysctl setting fs.nr_open." + }, + "kernelThreadsMax": { + "type": "integer", + "format": "int32", + "description": "Sysctl setting kernel.threads-max." + }, + "vmMaxMapCount": { + "type": "integer", + "format": "int32", + "description": "Sysctl setting vm.max_map_count." + }, + "vmSwappiness": { + "type": "integer", + "format": "int32", + "description": "Sysctl setting vm.swappiness." + }, + "vmVfsCachePressure": { + "type": "integer", + "format": "int32", + "description": "Sysctl setting vm.vfs_cache_pressure." + } + } + }, + "ManagedClusterHTTPProxyConfig": { + "description": "Configurations for provisioning the cluster with HTTP proxy servers.", + "type": "object", + "properties": { + "httpProxy": { + "type": "string", + "description": "HTTP proxy server endpoint to use." + }, + "httpsProxy": { + "type": "string", + "description": "HTTPS proxy server endpoint to use." + }, + "noProxy": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Endpoints that should not go through proxy." + }, + "trustedCa": { + "type": "string", + "description": "Alternative CA cert to use for connecting to proxy servers." + } + } + }, + "GPUInstanceProfile": { + "type": "string", + "enum": [ + "MIG1g", + "MIG2g", + "MIG3g", + "MIG4g", + "MIG7g" + ], + "x-ms-enum": { + "name": "GPUInstanceProfile ", + "modelAsString": true + }, + "description": "GPUInstanceProfile to be used to specify GPU MIG instance profile for supported GPU VM SKU. Supported values are MIG1g, MIG2g, MIG3g, MIG4g and MIG7g." + }, + "ExtendedLocationType": { + "type": "string", + "description": "The type of extendedLocation.", + "enum": [ + "EdgeZone" + ], + "x-ms-enum": { + "name": "ExtendedLocationTypes", + "modelAsString": true + } + }, + "ExtendedLocation": { + "description": "The complex type of the extended location.", + "properties": { + "name": { + "type": "string", + "description": "The name of the extended location." + }, + "type": { + "$ref": "#/definitions/ExtendedLocationType", + "description": "The type of the extended location." + } + } + }, + "OSOptionProperty": { + "properties": { + "os-type": { + "type": "string", + "description": "OS type." + }, + "enable-fips-image": { + "type": "boolean", + "description": "Whether FIPS image is enabled." + } + }, + "required": [ + "os-type", + "enable-fips-image" + ], + "description": "OS option property." + }, + "OSOptionPropertyList": { + "properties": { + "osOptionPropertyList": { + "type": "array", + "items": { + "$ref": "#/definitions/OSOptionProperty" + }, + "description": "The list of OS option properties." + } + }, + "required": [ + "osOptionPropertyList" + ], + "description": "The list of OS option properties." + }, + "OSOptionProfile": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Id of the OS option profile." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Name of the OS option profile." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the OS option profile." + }, + "properties": { + "$ref": "#/definitions/OSOptionPropertyList", + "description": "The list of an OS option properties.", + "x-ms-client-flatten": true + } + }, + "required": [ + "properties" + ], + "description": "The OS option profile." + } + }, + "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.", + "x-ms-parameter-location": "client" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client Api Version.", + "x-ms-parameter-location": "client" + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "minLength": 1, + "description": "The name of the resource group.", + "x-ms-parameter-location": "method" + }, + "ResourceNameParameter": { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 63, + "pattern": "^[a-zA-Z0-9]$|^[a-zA-Z0-9][-_a-zA-Z0-9]{0,61}[a-zA-Z0-9]$", + "description": "The name of the managed cluster resource.", + "x-ms-parameter-location": "method" + }, + "LocationParameter": { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The name of a supported Azure region.", + "x-ms-parameter-location": "method" + }, + "ResourceTypeParameter": { + "name": "resource-type", + "in": "query", + "required": false, + "type": "string", + "description": "resource type for which the OS options needs to be returned", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/AgentPoolsCreate_CustomNodeConfig.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/AgentPoolsCreate_CustomNodeConfig.json new file mode 100644 index 000000000000..baffebb05a17 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/AgentPoolsCreate_CustomNodeConfig.json @@ -0,0 +1,122 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "agentPoolName": "agentpool1", + "parameters": { + "properties": { + "orchestratorVersion": "", + "count": 3, + "vmSize": "Standard_DS2_v2", + "osType": "Linux", + "kubeletConfig": { + "cpuManagerPolicy": "static", + "cpuCfsQuota": true, + "cpuCfsQuotaPeriod": "200ms", + "imageGcHighThreshold": 90, + "imageGcLowThreshold": 70, + "topologyManagerPolicy": "best-effort", + "allowedUnsafeSysctls": [ + "kernel.msg*", + "net.core.somaxconn" + ], + "failSwapOn": false + }, + "linuxOSConfig": { + "sysctls": { + "netCoreWmemDefault": 12345, + "netIpv4TcpTwReuse": true, + "netIpv4IpLocalPortRange": "20000 60000", + "kernelThreadsMax": 99999 + }, + "transparentHugePageEnabled": "always", + "transparentHugePageDefrag": "madvise", + "swapFileSizeMB": 1500 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1", + "type": "Microsoft.ContainerService/managedClusters/agentPools", + "name": "agentpool1", + "properties": { + "provisioningState": "Succeeded", + "orchestratorVersion": "1.17.8", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "kubeletConfig": { + "cpuManagerPolicy": "static", + "cpuCfsQuota": true, + "cpuCfsQuotaPeriod": "200ms", + "imageGcHighThreshold": 90, + "imageGcLowThreshold": 70, + "topologyManagerPolicy": "best-effort", + "allowedUnsafeSysctls": [ + "kernel.msg*", + "net.core.somaxconn" + ], + "failSwapOn": false + }, + "linuxOSConfig": { + "sysctls": { + "netCoreWmemDefault": 12345, + "netIpv4TcpTwReuse": true, + "netIpv4IpLocalPortRange": "20000 60000", + "kernelThreadsMax": 99999 + }, + "transparentHugePageEnabled": "always", + "transparentHugePageDefrag": "madvise", + "swapFileSizeMB": 1500 + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1", + "type": "Microsoft.ContainerService/managedClusters/agentPools", + "name": "agentpool1", + "properties": { + "provisioningState": "Creating", + "orchestratorVersion": "1.17.8", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "kubeletConfig": { + "cpuManagerPolicy": "static", + "cpuCfsQuota": true, + "cpuCfsQuotaPeriod": "200ms", + "imageGcHighThreshold": 90, + "imageGcLowThreshold": 70, + "topologyManagerPolicy": "best-effort", + "allowedUnsafeSysctls": [ + "kernel.msg*", + "net.core.somaxconn" + ], + "failSwapOn": false, + "podMaxPids": 100 + }, + "linuxOSConfig": { + "sysctls": { + "netCoreWmemDefault": 65536, + "netIpv4TcpTwReuse": true, + "netIpv4IpLocalPortRange": "20000 60000", + "kernelThreadsMax": 99999 + }, + "transparentHugePageEnabled": "always", + "transparentHugePageDefrag": "madvise", + "swapFileSizeMB": 1500 + } + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/AgentPoolsCreate_EnableEncryptionAtHost.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/AgentPoolsCreate_EnableEncryptionAtHost.json new file mode 100644 index 000000000000..0391a02766dd --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/AgentPoolsCreate_EnableEncryptionAtHost.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "agentPoolName": "agentpool1", + "parameters": { + "properties": { + "orchestratorVersion": "", + "count": 3, + "vmSize": "Standard_DS2_v2", + "osType": "Linux", + "enableEncryptionAtHost": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1", + "type": "Microsoft.ContainerService/managedClusters/agentPools", + "name": "agentpool1", + "properties": { + "provisioningState": "Succeeded", + "orchestratorVersion": "1.17.13", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "enableEncryptionAtHost": true + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1", + "type": "Microsoft.ContainerService/managedClusters/agentPools", + "name": "agentpool1", + "properties": { + "provisioningState": "Creating", + "orchestratorVersion": "1.17.13", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "enableEncryptionAtHost": true + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/AgentPoolsCreate_EnableFIPS.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/AgentPoolsCreate_EnableFIPS.json new file mode 100644 index 000000000000..e88a2fa274e3 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/AgentPoolsCreate_EnableFIPS.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "agentPoolName": "agentpool1", + "parameters": { + "properties": { + "orchestratorVersion": "", + "count": 3, + "vmSize": "Standard_DS2_v2", + "osType": "Linux", + "enableFIPS": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1", + "type": "Microsoft.ContainerService/managedClusters/agentPools", + "name": "agentpool1", + "properties": { + "provisioningState": "Succeeded", + "orchestratorVersion": "1.19.6", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "enableFIPS": true + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1", + "type": "Microsoft.ContainerService/managedClusters/agentPools", + "name": "agentpool1", + "properties": { + "provisioningState": "Creating", + "orchestratorVersion": "1.19.6", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "enableFIPS": true + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/AgentPoolsCreate_EnableUltraSSD.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/AgentPoolsCreate_EnableUltraSSD.json new file mode 100644 index 000000000000..4f6034b373d6 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/AgentPoolsCreate_EnableUltraSSD.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "agentPoolName": "agentpool1", + "parameters": { + "properties": { + "orchestratorVersion": "", + "count": 3, + "vmSize": "Standard_DS2_v2", + "osType": "Linux", + "enableUltraSSD": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1", + "type": "Microsoft.ContainerService/managedClusters/agentPools", + "name": "agentpool1", + "properties": { + "provisioningState": "Succeeded", + "orchestratorVersion": "1.17.13", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "enableUltraSSD": true + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1", + "type": "Microsoft.ContainerService/managedClusters/agentPools", + "name": "agentpool1", + "properties": { + "provisioningState": "Creating", + "orchestratorVersion": "1.17.13", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "enableUltraSSD": true + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/AgentPoolsCreate_Ephemeral.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/AgentPoolsCreate_Ephemeral.json new file mode 100644 index 000000000000..1e3ae2e89905 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/AgentPoolsCreate_Ephemeral.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "agentPoolName": "agentpool1", + "parameters": { + "properties": { + "orchestratorVersion": "", + "count": 3, + "vmSize": "Standard_DS2_v2", + "osType": "Linux", + "osDiskType": "Ephemeral", + "osDiskSizeGB": 64 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1", + "type": "Microsoft.ContainerService/managedClusters/agentPools", + "name": "agentpool1", + "properties": { + "provisioningState": "Succeeded", + "orchestratorVersion": "1.17.8", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "osDiskType": "Ephemeral", + "osDiskSizeGB": 64 + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1", + "type": "Microsoft.ContainerService/managedClusters/agentPools", + "name": "agentpool1", + "properties": { + "provisioningState": "Creating", + "orchestratorVersion": "1.17.8", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "osDiskType": "Ephemeral", + "kubeletDiskType": "OS", + "osDiskSizeGB": 64 + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/AgentPoolsCreate_GPUMIG.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/AgentPoolsCreate_GPUMIG.json new file mode 100644 index 000000000000..7f8c90c891ee --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/AgentPoolsCreate_GPUMIG.json @@ -0,0 +1,125 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "agentPoolName": "agentpool1", + "parameters": { + "properties": { + "orchestratorVersion": "", + "count": 3, + "vmSize": "Standard_ND96asr_v4", + "osType": "Linux", + "gpuInstanceProfile": "MIG2g", + "kubeletConfig": { + "cpuManagerPolicy": "static", + "cpuCfsQuota": true, + "cpuCfsQuotaPeriod": "200ms", + "imageGcHighThreshold": 90, + "imageGcLowThreshold": 70, + "topologyManagerPolicy": "best-effort", + "allowedUnsafeSysctls": [ + "kernel.msg*", + "net.core.somaxconn" + ], + "failSwapOn": false + }, + "linuxOSConfig": { + "sysctls": { + "netCoreWmemDefault": 12345, + "netIpv4TcpTwReuse": true, + "netIpv4IpLocalPortRange": "20000 60000", + "kernelThreadsMax": 99999 + }, + "transparentHugePageEnabled": "always", + "transparentHugePageDefrag": "madvise", + "swapFileSizeMB": 1500 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1", + "type": "Microsoft.ContainerService/managedClusters/agentPools", + "name": "agentpool1", + "properties": { + "provisioningState": "Succeeded", + "orchestratorVersion": "1.17.8", + "count": 3, + "vmSize": "Standard_ND96asr_v4", + "maxPods": 110, + "osType": "Linux", + "gpuInstanceProfile": "MIG2g", + "kubeletConfig": { + "cpuManagerPolicy": "static", + "cpuCfsQuota": true, + "cpuCfsQuotaPeriod": "200ms", + "imageGcHighThreshold": 90, + "imageGcLowThreshold": 70, + "topologyManagerPolicy": "best-effort", + "allowedUnsafeSysctls": [ + "kernel.msg*", + "net.core.somaxconn" + ], + "failSwapOn": false + }, + "linuxOSConfig": { + "sysctls": { + "netCoreWmemDefault": 12345, + "netIpv4TcpTwReuse": true, + "netIpv4IpLocalPortRange": "20000 60000", + "kernelThreadsMax": 99999 + }, + "transparentHugePageEnabled": "always", + "transparentHugePageDefrag": "madvise", + "swapFileSizeMB": 1500 + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1", + "type": "Microsoft.ContainerService/managedClusters/agentPools", + "name": "agentpool1", + "properties": { + "provisioningState": "Creating", + "orchestratorVersion": "1.17.8", + "count": 3, + "vmSize": "Standard_ND96asr_v4", + "maxPods": 110, + "osType": "Linux", + "gpuInstanceProfile": "MIG2g", + "kubeletConfig": { + "cpuManagerPolicy": "static", + "cpuCfsQuota": true, + "cpuCfsQuotaPeriod": "200ms", + "imageGcHighThreshold": 90, + "imageGcLowThreshold": 70, + "topologyManagerPolicy": "best-effort", + "allowedUnsafeSysctls": [ + "kernel.msg*", + "net.core.somaxconn" + ], + "failSwapOn": false, + "podMaxPids": 100 + }, + "linuxOSConfig": { + "sysctls": { + "netCoreWmemDefault": 65536, + "netIpv4TcpTwReuse": true, + "netIpv4IpLocalPortRange": "20000 60000", + "kernelThreadsMax": 99999 + }, + "transparentHugePageEnabled": "always", + "transparentHugePageDefrag": "madvise", + "swapFileSizeMB": 1500 + } + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/AgentPoolsCreate_OSSKU.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/AgentPoolsCreate_OSSKU.json new file mode 100644 index 000000000000..729b5447e07b --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/AgentPoolsCreate_OSSKU.json @@ -0,0 +1,125 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "agentPoolName": "agentpool1", + "parameters": { + "properties": { + "orchestratorVersion": "", + "count": 3, + "vmSize": "Standard_DS2_v2", + "osType": "Linux", + "osSKU": "CBLMariner", + "kubeletConfig": { + "cpuManagerPolicy": "static", + "cpuCfsQuota": true, + "cpuCfsQuotaPeriod": "200ms", + "imageGcHighThreshold": 90, + "imageGcLowThreshold": 70, + "topologyManagerPolicy": "best-effort", + "allowedUnsafeSysctls": [ + "kernel.msg*", + "net.core.somaxconn" + ], + "failSwapOn": false + }, + "linuxOSConfig": { + "sysctls": { + "netCoreWmemDefault": 12345, + "netIpv4TcpTwReuse": true, + "netIpv4IpLocalPortRange": "20000 60000", + "kernelThreadsMax": 99999 + }, + "transparentHugePageEnabled": "always", + "transparentHugePageDefrag": "madvise", + "swapFileSizeMB": 1500 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1", + "type": "Microsoft.ContainerService/managedClusters/agentPools", + "name": "agentpool1", + "properties": { + "provisioningState": "Succeeded", + "orchestratorVersion": "1.17.8", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "osSKU": "CBLMariner", + "kubeletConfig": { + "cpuManagerPolicy": "static", + "cpuCfsQuota": true, + "cpuCfsQuotaPeriod": "200ms", + "imageGcHighThreshold": 90, + "imageGcLowThreshold": 70, + "topologyManagerPolicy": "best-effort", + "allowedUnsafeSysctls": [ + "kernel.msg*", + "net.core.somaxconn" + ], + "failSwapOn": false + }, + "linuxOSConfig": { + "sysctls": { + "netCoreWmemDefault": 12345, + "netIpv4TcpTwReuse": true, + "netIpv4IpLocalPortRange": "20000 60000", + "kernelThreadsMax": 99999 + }, + "transparentHugePageEnabled": "always", + "transparentHugePageDefrag": "madvise", + "swapFileSizeMB": 1500 + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1", + "type": "Microsoft.ContainerService/managedClusters/agentPools", + "name": "agentpool1", + "properties": { + "provisioningState": "Creating", + "orchestratorVersion": "1.17.8", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "osSKU": "CBLMariner", + "kubeletConfig": { + "cpuManagerPolicy": "static", + "cpuCfsQuota": true, + "cpuCfsQuotaPeriod": "200ms", + "imageGcHighThreshold": 90, + "imageGcLowThreshold": 70, + "topologyManagerPolicy": "best-effort", + "allowedUnsafeSysctls": [ + "kernel.msg*", + "net.core.somaxconn" + ], + "failSwapOn": false, + "podMaxPids": 100 + }, + "linuxOSConfig": { + "sysctls": { + "netCoreWmemDefault": 65536, + "netIpv4TcpTwReuse": true, + "netIpv4IpLocalPortRange": "20000 60000", + "kernelThreadsMax": 99999 + }, + "transparentHugePageEnabled": "always", + "transparentHugePageDefrag": "madvise", + "swapFileSizeMB": 1500 + } + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/AgentPoolsCreate_PPG.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/AgentPoolsCreate_PPG.json new file mode 100644 index 000000000000..8cb11530e01b --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/AgentPoolsCreate_PPG.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "agentPoolName": "agentpool1", + "parameters": { + "properties": { + "orchestratorVersion": "", + "count": 3, + "vmSize": "Standard_DS2_v2", + "osType": "Linux", + "proximityPlacementGroupID": "/subscriptions/subid1/resourcegroups/rg1/providers//Microsoft.Compute/proximityPlacementGroups/ppg1" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1", + "type": "Microsoft.ContainerService/managedClusters/agentPools", + "name": "agentpool1", + "properties": { + "provisioningState": "Succeeded", + "orchestratorVersion": "1.9.6", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "proximityPlacementGroupID": "/subscriptions/subid1/resourcegroups/rg1/providers//Microsoft.Compute/proximityPlacementGroups/ppg1" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1", + "type": "Microsoft.ContainerService/managedClusters/agentPools", + "name": "agentpool1", + "properties": { + "provisioningState": "Creating", + "orchestratorVersion": "1.9.6", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "proximityPlacementGroupID": "/subscriptions/subid1/resourcegroups/rg1/providers//Microsoft.Compute/proximityPlacementGroups/ppg1" + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/AgentPoolsCreate_Spot.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/AgentPoolsCreate_Spot.json new file mode 100644 index 000000000000..f418353e5dab --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/AgentPoolsCreate_Spot.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "agentPoolName": "agentpool1", + "parameters": { + "properties": { + "orchestratorVersion": "", + "count": 3, + "vmSize": "Standard_DS1_v2", + "osType": "Linux", + "tags": { + "name1": "val1" + }, + "nodeLabels": { + "key1": "val1" + }, + "nodeTaints": [ + "Key1=Value1:NoSchedule" + ], + "scaleSetPriority": "Spot", + "scaleSetEvictionPolicy": "Delete" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1", + "type": "Microsoft.ContainerService/managedClusters/agentPools", + "name": "agentpool1", + "properties": { + "provisioningState": "Succeeded", + "orchestratorVersion": "1.9.6", + "count": 3, + "vmSize": "Standard_DS1_v2", + "maxPods": 110, + "osType": "Linux", + "tags": { + "name1": "val1" + }, + "nodeLabels": { + "key1": "val1" + }, + "nodeTaints": [ + "Key1=Value1:NoSchedule" + ], + "scaleSetPriority": "Spot", + "scaleSetEvictionPolicy": "Delete", + "spotMaxPrice": -1 + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1", + "type": "Microsoft.ContainerService/managedClusters/agentPools", + "name": "agentpool1", + "properties": { + "provisioningState": "Creating", + "orchestratorVersion": "1.9.6", + "count": 3, + "vmSize": "Standard_DS1_v2", + "maxPods": 110, + "osType": "Linux", + "tags": { + "name1": "val1" + }, + "nodeLabels": { + "key1": "val1" + }, + "nodeTaints": [ + "Key1=Value1:NoSchedule" + ], + "scaleSetPriority": "Spot", + "scaleSetEvictionPolicy": "Delete", + "spotMaxPrice": -1 + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/AgentPoolsCreate_Update.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/AgentPoolsCreate_Update.json new file mode 100644 index 000000000000..96c162f87802 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/AgentPoolsCreate_Update.json @@ -0,0 +1,86 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "agentPoolName": "agentpool1", + "parameters": { + "properties": { + "orchestratorVersion": "", + "count": 3, + "vmSize": "Standard_DS1_v2", + "osType": "Linux", + "tags": { + "name1": "val1" + }, + "nodeLabels": { + "key1": "val1" + }, + "nodeTaints": [ + "Key1=Value1:NoSchedule" + ], + "scaleSetPriority": "Spot", + "scaleSetEvictionPolicy": "Delete", + "mode": "User" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1", + "type": "Microsoft.ContainerService/managedClusters/agentPools", + "name": "agentpool1", + "properties": { + "provisioningState": "Succeeded", + "orchestratorVersion": "1.9.6", + "count": 3, + "vmSize": "Standard_DS1_v2", + "maxPods": 110, + "osType": "Linux", + "tags": { + "name1": "val1" + }, + "nodeLabels": { + "key1": "val1" + }, + "nodeTaints": [ + "Key1=Value1:NoSchedule" + ], + "scaleSetPriority": "Spot", + "scaleSetEvictionPolicy": "Delete", + "mode": "User", + "nodeImageVersion": "AKSUbuntu:1604:2020.03.11" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1", + "type": "Microsoft.ContainerService/managedClusters/agentPools", + "name": "agentpool1", + "properties": { + "provisioningState": "Creating", + "orchestratorVersion": "1.9.6", + "count": 3, + "vmSize": "Standard_DS1_v2", + "maxPods": 110, + "osType": "Linux", + "tags": { + "name1": "val1" + }, + "nodeLabels": { + "key1": "val1" + }, + "nodeTaints": [ + "Key1=Value1:NoSchedule" + ], + "scaleSetPriority": "Spot", + "scaleSetEvictionPolicy": "Delete", + "mode": "User" + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/AgentPoolsDelete.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/AgentPoolsDelete.json new file mode 100644 index 000000000000..1611014bf988 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/AgentPoolsDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "agentPoolName": "agentpool1" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/AgentPoolsGet.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/AgentPoolsGet.json new file mode 100644 index 000000000000..ac0f1f21a488 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/AgentPoolsGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "agentPoolName": "agentpool1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1", + "name": "agentpool1", + "properties": { + "provisioningState": "Succeeded", + "count": 3, + "vmSize": "Standard_DS1_v2", + "maxPods": 110, + "osType": "Linux", + "orchestratorVersion": "1.9.6", + "nodeImageVersion": "AKSUbuntu:1604:2020.03.11", + "upgradeSettings": { + "maxSurge": "33%" + } + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/AgentPoolsGetAgentPoolAvailableVersions.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/AgentPoolsGetAgentPoolAvailableVersions.json new file mode 100644 index 000000000000..5d3d2f9afe30 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/AgentPoolsGetAgentPoolAvailableVersions.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/availableagentpoolversions", + "name": "default", + "properties": { + "agentPoolVersions": [ + { + "kubernetesVersion": "1.12.7" + }, + { + "kubernetesVersion": "1.12.8" + }, + { + "default": true, + "kubernetesVersion": "1.13.5", + "isPreview": true + } + ] + }, + "type": "Microsoft.ContainerService/managedClusters/availableAgentpoolVersions" + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/AgentPoolsGetUpgradeProfile.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/AgentPoolsGetUpgradeProfile.json new file mode 100644 index 000000000000..dec9847f99e5 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/AgentPoolsGetUpgradeProfile.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "agentPoolName": "agentpool1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1/upgradeprofiles/default", + "name": "default", + "properties": { + "kubernetesVersion": "1.12.8", + "osType": "Linux", + "upgrades": [ + { + "kubernetesVersion": "1.13.5" + } + ], + "latestNodeImageVersion": "AKSUbuntu:1604:2020.03.11" + }, + "type": "Microsoft.ContainerService/managedClusters/agentPools/upgradeProfiles" + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/AgentPoolsList.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/AgentPoolsList.json new file mode 100644 index 000000000000..17dc4e0f2b73 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/AgentPoolsList.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1", + "name": "agentpool1", + "properties": { + "provisioningState": "Succeeded", + "count": 3, + "vmSize": "Standard_DS1_v2", + "maxPods": 110, + "osType": "Linux", + "orchestratorVersion": "1.9.6", + "nodeImageVersion": "AKSUbuntu:1604:2020.03.11" + } + } + ] + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/AgentPoolsUpgradeNodeImageVersion.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/AgentPoolsUpgradeNodeImageVersion.json new file mode 100644 index 000000000000..4890fb761c1f --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/AgentPoolsUpgradeNodeImageVersion.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "agentPoolName": "agentpool1" + }, + "responses": { + "200": {}, + "202": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1", + "name": "agentpool1", + "properties": { + "provisioningState": "UpgradingNodeImageVersion", + "count": 3, + "vmSize": "Standard_DS1_v2", + "maxPods": 110, + "osType": "Linux", + "orchestratorVersion": "1.9.6", + "nodeImageVersion": "AKSUbuntu-1604-2020.03.11", + "upgradeSettings": { + "maxSurge": "33%" + } + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/AgentPools_Update.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/AgentPools_Update.json new file mode 100644 index 000000000000..14e08a9c5cec --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/AgentPools_Update.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "agentPoolName": "agentpool1", + "parameters": { + "properties": { + "orchestratorVersion": "", + "count": 3, + "enableAutoScaling": true, + "minCount": 2, + "maxCount": 2, + "vmSize": "Standard_DS1_v2", + "osType": "Linux", + "nodeTaints": [ + "Key1=Value1:NoSchedule" + ], + "scaleSetPriority": "Spot", + "scaleSetEvictionPolicy": "Delete" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1", + "type": "Microsoft.ContainerService/managedClusters/agentPools", + "name": "agentpool1", + "properties": { + "provisioningState": "Succeeded", + "orchestratorVersion": "1.9.6", + "count": 3, + "enableAutoScaling": true, + "minCount": 2, + "maxCount": 2, + "vmSize": "Standard_DS1_v2", + "maxPods": 110, + "osType": "Linux", + "nodeTaints": [ + "Key1=Value1:NoSchedule" + ], + "scaleSetPriority": "Spot", + "scaleSetEvictionPolicy": "Delete" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1", + "type": "Microsoft.ContainerService/managedClusters/agentPools", + "name": "agentpool1", + "properties": { + "provisioningState": "Updating", + "orchestratorVersion": "1.9.6", + "count": 3, + "enableAutoScaling": true, + "minCount": 2, + "maxCount": 2, + "vmSize": "Standard_DS1_v2", + "maxPods": 110, + "osType": "Linux", + "nodeTaints": [ + "Key1=Value1:NoSchedule" + ], + "scaleSetPriority": "Spot", + "scaleSetEvictionPolicy": "Delete" + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ContainerServiceGetOSOptions.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ContainerServiceGetOSOptions.json new file mode 100644 index 000000000000..1295e3b8cff1 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ContainerServiceGetOSOptions.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "location": "location1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/providers/Microsoft.ContainerService/locations/location1/osOptions/default", + "name": "default", + "type": "Microsoft.ContainerService/locations/osOptions", + "properties": { + "osOptionPropertyList": [ + { + "os-type": "Linux", + "enable-fips-image": false + }, + { + "os-type": "Windows", + "enable-fips-image": false + } + ] + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/MaintenanceConfigurationsCreate_Update.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/MaintenanceConfigurationsCreate_Update.json new file mode 100644 index 000000000000..22b3e7a1738d --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/MaintenanceConfigurationsCreate_Update.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "configName": "default", + "parameters": { + "properties": { + "timeInWeek": [ + { + "day": "Monday", + "hourSlots": [ + 1, + 2 + ] + } + ], + "notAllowedTime": [ + { + "start": "2020-11-26T03:00:00Z", + "end": "2020-11-30T12:00:00Z" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/maintenanceConfigurations/default", + "type": "Microsoft.ContainerService/managedClusters/maintenanceConfigurations", + "name": "default", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "timeInWeek": [ + { + "day": "Monday", + "hourSlots": [ + 1, + 2 + ] + } + ], + "notAllowedTime": [ + { + "start": "2020-11-26T03:00:00Z", + "end": "2020-11-30T12:00:00Z" + } + ] + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/MaintenanceConfigurationsDelete.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/MaintenanceConfigurationsDelete.json new file mode 100644 index 000000000000..2a3e7ae3f60b --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/MaintenanceConfigurationsDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "configName": "default" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/MaintenanceConfigurationsGet.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/MaintenanceConfigurationsGet.json new file mode 100644 index 000000000000..abe7f439388e --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/MaintenanceConfigurationsGet.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "configName": "default" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/maintenanceConfigurations/default", + "name": "default", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "timeInWeek": [ + { + "day": "Monday", + "hourSlots": [ + 1, + 2 + ] + } + ], + "notAllowedTime": [ + { + "start": "2020-11-26T03:00:00Z", + "end": "2020-11-30T12:00:00Z" + } + ] + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/MaintenanceConfigurationsList.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/MaintenanceConfigurationsList.json new file mode 100644 index 000000000000..9377259ff129 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/MaintenanceConfigurationsList.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/maintenanceConfigurations/default", + "name": "default", + "properties": { + "timeInWeek": [ + { + "day": "Monday", + "hourSlots": [ + 1, + 2 + ] + } + ], + "notAllowedTime": [ + { + "start": "2020-11-26T03:00:00Z", + "end": "2020-11-30T12:00:00Z" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersCreate_EnableEncryptionAtHost.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersCreate_EnableEncryptionAtHost.json new file mode 100644 index 000000000000..db5cc6eefcaf --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersCreate_EnableEncryptionAtHost.json @@ -0,0 +1,236 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "parameters": { + "location": "location1", + "tags": { + "tier": "production", + "archv2": "" + }, + "sku": { + "name": "Basic", + "tier": "Free" + }, + "properties": { + "kubernetesVersion": "", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS2_v2", + "osType": "Linux", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System", + "enableEncryptionAtHost": true + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "networkProfile": { + "loadBalancerSku": "standard", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "managedOutboundIPs": { + "count": 2 + } + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + }, + "windowsProfile": { + "adminUsername": "azureuser", + "adminPassword": "replacePassword1234$" + }, + "servicePrincipalProfile": { + "clientId": "clientid", + "secret": "secret" + }, + "addonProfiles": {}, + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Succeeded", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Succeeded", + "orchestratorVersion": "1.9.6", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System", + "nodeImageVersion": "AKSUbuntu:1604:2020.03.11", + "enableEncryptionAtHost": true + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "windowsProfile": { + "adminUsername": "azureuser" + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true, + "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io", + "networkProfile": { + "loadBalancerSku": "basic", + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "allocatedOutboundPorts": 2000, + "idleTimeoutInMinutes": 10, + "managedOutboundIPs": { + "count": 2 + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Creating", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Creating", + "orchestratorVersion": "1.9.6", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System", + "enableEncryptionAtHost": true + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "windowsProfile": { + "adminUsername": "azureuser" + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true, + "networkProfile": { + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "loadBalancerSku": "standard", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "allocatedOutboundPorts": 2000, + "idleTimeoutInMinutes": 10, + "managedOutboundIPs": { + "count": 2 + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + } + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersCreate_EnableUltraSSD.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersCreate_EnableUltraSSD.json new file mode 100644 index 000000000000..e63a16bb8daf --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersCreate_EnableUltraSSD.json @@ -0,0 +1,236 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "parameters": { + "location": "location1", + "tags": { + "tier": "production", + "archv2": "" + }, + "sku": { + "name": "Basic", + "tier": "Free" + }, + "properties": { + "kubernetesVersion": "", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS2_v2", + "osType": "Linux", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System", + "enableUltraSSD": true + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "networkProfile": { + "loadBalancerSku": "standard", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "managedOutboundIPs": { + "count": 2 + } + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + }, + "windowsProfile": { + "adminUsername": "azureuser", + "adminPassword": "replacePassword1234$" + }, + "servicePrincipalProfile": { + "clientId": "clientid", + "secret": "secret" + }, + "addonProfiles": {}, + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Succeeded", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Succeeded", + "orchestratorVersion": "1.9.6", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System", + "nodeImageVersion": "AKSUbuntu:1604:2020.03.11", + "enableUltraSSD": true + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "windowsProfile": { + "adminUsername": "azureuser" + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true, + "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io", + "networkProfile": { + "loadBalancerSku": "basic", + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "allocatedOutboundPorts": 2000, + "idleTimeoutInMinutes": 10, + "managedOutboundIPs": { + "count": 2 + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Creating", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Creating", + "orchestratorVersion": "1.9.6", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System", + "enableUltraSSD": true + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "windowsProfile": { + "adminUsername": "azureuser" + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true, + "networkProfile": { + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "loadBalancerSku": "standard", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "allocatedOutboundPorts": 2000, + "idleTimeoutInMinutes": 10, + "managedOutboundIPs": { + "count": 2 + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + } + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersCreate_EnabledFIPS.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersCreate_EnabledFIPS.json new file mode 100644 index 000000000000..d52d7ee61232 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersCreate_EnabledFIPS.json @@ -0,0 +1,236 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "parameters": { + "location": "location1", + "tags": { + "tier": "production", + "archv2": "" + }, + "sku": { + "name": "Basic", + "tier": "Free" + }, + "properties": { + "kubernetesVersion": "", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS2_v2", + "osType": "Linux", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System", + "enableFIPS": true + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "networkProfile": { + "loadBalancerSku": "standard", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "managedOutboundIPs": { + "count": 2 + } + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + }, + "windowsProfile": { + "adminUsername": "azureuser", + "adminPassword": "replacePassword1234$" + }, + "servicePrincipalProfile": { + "clientId": "clientid", + "secret": "secret" + }, + "addonProfiles": {}, + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": false + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Succeeded", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Succeeded", + "orchestratorVersion": "1.9.6", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System", + "nodeImageVersion": "AKSUbuntu:1604:2020.03.11", + "enableFIPS": true + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "windowsProfile": { + "adminUsername": "azureuser" + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": false, + "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io", + "networkProfile": { + "loadBalancerSku": "basic", + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "allocatedOutboundPorts": 2000, + "idleTimeoutInMinutes": 10, + "managedOutboundIPs": { + "count": 2 + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Creating", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Creating", + "orchestratorVersion": "1.9.6", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System", + "enableFIPS": true + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "windowsProfile": { + "adminUsername": "azureuser" + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": false, + "networkProfile": { + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "loadBalancerSku": "standard", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "allocatedOutboundPorts": 2000, + "idleTimeoutInMinutes": 10, + "managedOutboundIPs": { + "count": 2 + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + } + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersCreate_GPUMIG.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersCreate_GPUMIG.json new file mode 100644 index 000000000000..ecd67657bc78 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersCreate_GPUMIG.json @@ -0,0 +1,263 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "parameters": { + "location": "location1", + "tags": { + "tier": "production", + "archv2": "" + }, + "sku": { + "name": "Basic", + "tier": "Free" + }, + "properties": { + "kubernetesVersion": "", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_ND96asr_v4", + "osType": "Linux", + "gpuInstanceProfile": "MIG3g", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "networkProfile": { + "loadBalancerSku": "standard", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "managedOutboundIPs": { + "count": 2 + } + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + }, + "windowsProfile": { + "adminUsername": "azureuser", + "adminPassword": "replacePassword1234$" + }, + "servicePrincipalProfile": { + "clientId": "clientid", + "secret": "secret" + }, + "addonProfiles": {}, + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true, + "httpProxyConfig": { + "httpProxy": "http://myproxy.server.com:8080", + "httpsProxy": "https://myproxy.server.com:8080", + "noProxy": [ + "localhost", + "127.0.0.1" + ], + "trustedCa": "Q29uZ3JhdHMhIFlvdSBoYXZlIGZvdW5kIGEgaGlkZGVuIG1lc3NhZ2U=" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Succeeded", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_ND96asr_v4", + "maxPods": 110, + "osType": "Linux", + "gpuInstanceProfile": "MIG3g", + "provisioningState": "Succeeded", + "orchestratorVersion": "1.9.6", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System", + "nodeImageVersion": "AKSUbuntu:1604:2020.03.11" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "windowsProfile": { + "adminUsername": "azureuser" + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true, + "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io", + "networkProfile": { + "loadBalancerSku": "basic", + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "allocatedOutboundPorts": 2000, + "idleTimeoutInMinutes": 10, + "managedOutboundIPs": { + "count": 2 + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + }, + "httpProxyConfig": { + "httpProxy": "http://myproxy.server.com:8080", + "httpsProxy": "https://myproxy.server.com:8080", + "noProxy": [ + "localhost", + "127.0.0.1" + ], + "trustedCa": "Q29uZ3JhdHMhIFlvdSBoYXZlIGZvdW5kIGEgaGlkZGVuIG1lc3NhZ2U=" + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Creating", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_ND96asr_v4", + "maxPods": 110, + "osType": "Linux", + "gpuInstanceProfile": "MIG3g", + "provisioningState": "Creating", + "orchestratorVersion": "1.9.6", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "windowsProfile": { + "adminUsername": "azureuser" + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true, + "networkProfile": { + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "loadBalancerSku": "standard", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "allocatedOutboundPorts": 2000, + "idleTimeoutInMinutes": 10, + "managedOutboundIPs": { + "count": 2 + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + }, + "httpProxyConfig": { + "httpProxy": "http://myproxy.server.com:8080", + "httpsProxy": "https://myproxy.server.com:8080", + "noProxy": [ + "localhost", + "127.0.0.1" + ], + "trustedCa": "Q29uZ3JhdHMhIFlvdSBoYXZlIGZvdW5kIGEgaGlkZGVuIG1lc3NhZ2U=" + } + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersCreate_HTTPProxy.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersCreate_HTTPProxy.json new file mode 100644 index 000000000000..647708029403 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersCreate_HTTPProxy.json @@ -0,0 +1,260 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "parameters": { + "location": "location1", + "tags": { + "tier": "production", + "archv2": "" + }, + "sku": { + "name": "Basic", + "tier": "Free" + }, + "properties": { + "kubernetesVersion": "", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS2_v2", + "osType": "Linux", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "networkProfile": { + "loadBalancerSku": "standard", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "managedOutboundIPs": { + "count": 2 + } + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + }, + "windowsProfile": { + "adminUsername": "azureuser", + "adminPassword": "replacePassword1234$" + }, + "servicePrincipalProfile": { + "clientId": "clientid", + "secret": "secret" + }, + "addonProfiles": {}, + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true, + "httpProxyConfig": { + "httpProxy": "http://myproxy.server.com:8080", + "httpsProxy": "https://myproxy.server.com:8080", + "noProxy": [ + "localhost", + "127.0.0.1" + ], + "trustedCa": "Q29uZ3JhdHMhIFlvdSBoYXZlIGZvdW5kIGEgaGlkZGVuIG1lc3NhZ2U=" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Succeeded", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Succeeded", + "orchestratorVersion": "1.9.6", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System", + "nodeImageVersion": "AKSUbuntu:1604:2020.03.11" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "windowsProfile": { + "adminUsername": "azureuser" + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true, + "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io", + "networkProfile": { + "loadBalancerSku": "basic", + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "allocatedOutboundPorts": 2000, + "idleTimeoutInMinutes": 10, + "managedOutboundIPs": { + "count": 2 + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + }, + "httpProxyConfig": { + "httpProxy": "http://myproxy.server.com:8080", + "httpsProxy": "https://myproxy.server.com:8080", + "noProxy": [ + "localhost", + "127.0.0.1" + ], + "trustedCa": "Q29uZ3JhdHMhIFlvdSBoYXZlIGZvdW5kIGEgaGlkZGVuIG1lc3NhZ2U=" + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Creating", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Creating", + "orchestratorVersion": "1.9.6", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "windowsProfile": { + "adminUsername": "azureuser" + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true, + "networkProfile": { + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "loadBalancerSku": "standard", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "allocatedOutboundPorts": 2000, + "idleTimeoutInMinutes": 10, + "managedOutboundIPs": { + "count": 2 + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + }, + "httpProxyConfig": { + "httpProxy": "http://myproxy.server.com:8080", + "httpsProxy": "https://myproxy.server.com:8080", + "noProxy": [ + "localhost", + "127.0.0.1" + ], + "trustedCa": "Q29uZ3JhdHMhIFlvdSBoYXZlIGZvdW5kIGEgaGlkZGVuIG1lc3NhZ2U=" + } + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersCreate_NodePublicIPPrefix.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersCreate_NodePublicIPPrefix.json new file mode 100644 index 000000000000..a6b395818ce0 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersCreate_NodePublicIPPrefix.json @@ -0,0 +1,236 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "parameters": { + "location": "location1", + "tags": { + "tier": "production", + "archv2": "" + }, + "sku": { + "name": "Basic", + "tier": "Free" + }, + "properties": { + "kubernetesVersion": "", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS2_v2", + "osType": "Linux", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System", + "nodePublicIPPrefixID": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.Network/publicIPPrefixes/public-ip-prefix" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "networkProfile": { + "loadBalancerSku": "standard", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "managedOutboundIPs": { + "count": 2 + } + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + }, + "windowsProfile": { + "adminUsername": "azureuser", + "adminPassword": "replacePassword1234$" + }, + "servicePrincipalProfile": { + "clientId": "clientid", + "secret": "secret" + }, + "addonProfiles": {}, + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Succeeded", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Succeeded", + "orchestratorVersion": "1.9.6", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System", + "nodeImageVersion": "AKSUbuntu:1604:2020.03.11", + "nodePublicIPPrefixID": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.Network/publicIPPrefixes/public-ip-prefix" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "windowsProfile": { + "adminUsername": "azureuser" + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true, + "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io", + "networkProfile": { + "loadBalancerSku": "basic", + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "allocatedOutboundPorts": 2000, + "idleTimeoutInMinutes": 10, + "managedOutboundIPs": { + "count": 2 + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Creating", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Creating", + "orchestratorVersion": "1.9.6", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System", + "nodePublicIPPrefixID": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.Network/publicIPPrefixes/public-ip-prefix" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "windowsProfile": { + "adminUsername": "azureuser" + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true, + "networkProfile": { + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "loadBalancerSku": "standard", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "allocatedOutboundPorts": 2000, + "idleTimeoutInMinutes": 10, + "managedOutboundIPs": { + "count": 2 + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + } + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersCreate_OSSKU.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersCreate_OSSKU.json new file mode 100644 index 000000000000..ec292b2629d2 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersCreate_OSSKU.json @@ -0,0 +1,263 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "parameters": { + "location": "location1", + "tags": { + "tier": "production", + "archv2": "" + }, + "sku": { + "name": "Basic", + "tier": "Free" + }, + "properties": { + "kubernetesVersion": "", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS2_v2", + "osType": "Linux", + "osSKU": "CBLMariner", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "networkProfile": { + "loadBalancerSku": "standard", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "managedOutboundIPs": { + "count": 2 + } + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + }, + "windowsProfile": { + "adminUsername": "azureuser", + "adminPassword": "replacePassword1234$" + }, + "servicePrincipalProfile": { + "clientId": "clientid", + "secret": "secret" + }, + "addonProfiles": {}, + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true, + "httpProxyConfig": { + "httpProxy": "http://myproxy.server.com:8080", + "httpsProxy": "https://myproxy.server.com:8080", + "noProxy": [ + "localhost", + "127.0.0.1" + ], + "trustedCa": "Q29uZ3JhdHMhIFlvdSBoYXZlIGZvdW5kIGEgaGlkZGVuIG1lc3NhZ2U=" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Succeeded", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "osSKU": "CBLMariner", + "provisioningState": "Succeeded", + "orchestratorVersion": "1.9.6", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System", + "nodeImageVersion": "AKSUbuntu:1604:2020.03.11" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "windowsProfile": { + "adminUsername": "azureuser" + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true, + "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io", + "networkProfile": { + "loadBalancerSku": "basic", + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "allocatedOutboundPorts": 2000, + "idleTimeoutInMinutes": 10, + "managedOutboundIPs": { + "count": 2 + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + }, + "httpProxyConfig": { + "httpProxy": "http://myproxy.server.com:8080", + "httpsProxy": "https://myproxy.server.com:8080", + "noProxy": [ + "localhost", + "127.0.0.1" + ], + "trustedCa": "Q29uZ3JhdHMhIFlvdSBoYXZlIGZvdW5kIGEgaGlkZGVuIG1lc3NhZ2U=" + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Creating", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "osSKU": "CBLMariner", + "provisioningState": "Creating", + "orchestratorVersion": "1.9.6", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "windowsProfile": { + "adminUsername": "azureuser" + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true, + "networkProfile": { + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "loadBalancerSku": "standard", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "allocatedOutboundPorts": 2000, + "idleTimeoutInMinutes": 10, + "managedOutboundIPs": { + "count": 2 + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + }, + "httpProxyConfig": { + "httpProxy": "http://myproxy.server.com:8080", + "httpsProxy": "https://myproxy.server.com:8080", + "noProxy": [ + "localhost", + "127.0.0.1" + ], + "trustedCa": "Q29uZ3JhdHMhIFlvdSBoYXZlIGZvdW5kIGEgaGlkZGVuIG1lc3NhZ2U=" + } + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersCreate_PPG.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersCreate_PPG.json new file mode 100644 index 000000000000..2e700e78b431 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersCreate_PPG.json @@ -0,0 +1,236 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "parameters": { + "location": "location1", + "tags": { + "tier": "production", + "archv2": "" + }, + "sku": { + "name": "Basic", + "tier": "Free" + }, + "properties": { + "kubernetesVersion": "", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS2_v2", + "osType": "Linux", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System", + "proximityPlacementGroupID": "/subscriptions/subid1/resourcegroups/rg1/providers//Microsoft.Compute/proximityPlacementGroups/ppg1" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "networkProfile": { + "loadBalancerSku": "standard", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "managedOutboundIPs": { + "count": 2 + } + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + }, + "windowsProfile": { + "adminUsername": "azureuser", + "adminPassword": "replacePassword1234$" + }, + "servicePrincipalProfile": { + "clientId": "clientid", + "secret": "secret" + }, + "addonProfiles": {}, + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Succeeded", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Succeeded", + "orchestratorVersion": "1.9.6", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System", + "nodeImageVersion": "AKSUbuntu:1604:2020.03.11", + "proximityPlacementGroupID": "/subscriptions/subid1/resourcegroups/rg1/providers//Microsoft.Compute/proximityPlacementGroups/ppg1" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "windowsProfile": { + "adminUsername": "azureuser" + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true, + "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io", + "networkProfile": { + "loadBalancerSku": "basic", + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "allocatedOutboundPorts": 2000, + "idleTimeoutInMinutes": 10, + "managedOutboundIPs": { + "count": 2 + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Creating", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Creating", + "orchestratorVersion": "1.9.6", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System", + "proximityPlacementGroupID": "/subscriptions/subid1/resourcegroups/rg1/providers//Microsoft.Compute/proximityPlacementGroups/ppg1" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "windowsProfile": { + "adminUsername": "azureuser" + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true, + "networkProfile": { + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "loadBalancerSku": "standard", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "allocatedOutboundPorts": 2000, + "idleTimeoutInMinutes": 10, + "managedOutboundIPs": { + "count": 2 + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + } + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersCreate_PodIdentity.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersCreate_PodIdentity.json new file mode 100644 index 000000000000..07d991f1b596 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersCreate_PodIdentity.json @@ -0,0 +1,245 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "parameters": { + "location": "location1", + "tags": { + "tier": "production", + "archv2": "" + }, + "sku": { + "name": "Basic", + "tier": "Free" + }, + "properties": { + "kubernetesVersion": "", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS2_v2", + "osType": "Linux", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "networkProfile": { + "loadBalancerSku": "standard", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "managedOutboundIPs": { + "count": 2 + } + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + }, + "windowsProfile": { + "adminUsername": "azureuser", + "adminPassword": "replacePassword1234$" + }, + "servicePrincipalProfile": { + "clientId": "clientid", + "secret": "secret" + }, + "addonProfiles": {}, + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true, + "podIdentityProfile": { + "enabled": true, + "allowNetworkPluginKubenet": true + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Succeeded", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Succeeded", + "orchestratorVersion": "1.9.6", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System", + "nodeImageVersion": "AKSUbuntu:1604:2020.03.11" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "windowsProfile": { + "adminUsername": "azureuser" + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true, + "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io", + "networkProfile": { + "loadBalancerSku": "basic", + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "allocatedOutboundPorts": 2000, + "idleTimeoutInMinutes": 10, + "managedOutboundIPs": { + "count": 2 + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + }, + "podIdentityProfile": { + "enabled": true, + "allowNetworkPluginKubenet": true + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Creating", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Creating", + "orchestratorVersion": "1.9.6", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "windowsProfile": { + "adminUsername": "azureuser" + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true, + "networkProfile": { + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "loadBalancerSku": "standard", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "allocatedOutboundPorts": 2000, + "idleTimeoutInMinutes": 10, + "managedOutboundIPs": { + "count": 2 + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + }, + "podIdentityProfile": { + "enabled": true, + "allowNetworkPluginKubenet": true + } + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersCreate_PrivateClusterFQDNSubdomain.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersCreate_PrivateClusterFQDNSubdomain.json new file mode 100644 index 000000000000..ef9e5d920284 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersCreate_PrivateClusterFQDNSubdomain.json @@ -0,0 +1,246 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "parameters": { + "location": "location1", + "tags": { + "tier": "production", + "archv2": "" + }, + "sku": { + "name": "Basic", + "tier": "Free" + }, + "properties": { + "kubernetesVersion": "", + "fqdnSubdomain": "domain1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS2_v2", + "osType": "Linux", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System", + "enableEncryptionAtHost": true + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "networkProfile": { + "loadBalancerSku": "standard", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "managedOutboundIPs": { + "count": 2 + } + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + }, + "windowsProfile": { + "adminUsername": "azureuser", + "adminPassword": "replacePassword1234$" + }, + "servicePrincipalProfile": { + "clientId": "clientid", + "secret": "secret" + }, + "apiServerAccessProfile": { + "enablePrivateCluster": true, + "privateDNSZone": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.Network/privateDnsZones/privatelink.location1.azmk8s.io" + }, + "addonProfiles": {}, + "enableRBAC": true, + "enablePodSecurityPolicy": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Succeeded", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "fqdnSubdomain": "domain1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Succeeded", + "orchestratorVersion": "1.9.6", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System", + "nodeImageVersion": "AKSUbuntu:1604:2020.03.11", + "enableEncryptionAtHost": true + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "windowsProfile": { + "adminUsername": "azureuser" + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "apiServerAccessProfile": { + "enablePrivateCluster": true, + "privateDNSZone": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.Network/privateDnsZones/privatelink.location1.azmk8s.io" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": true, + "enablePodSecurityPolicy": true, + "privateFQDN": "domain1.privatelink.location1.azmk8s.io", + "networkProfile": { + "loadBalancerSku": "basic", + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "allocatedOutboundPorts": 2000, + "idleTimeoutInMinutes": 10, + "managedOutboundIPs": { + "count": 2 + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Creating", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "fqdnSubdomain": "domain1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Creating", + "orchestratorVersion": "1.9.6", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System", + "enableEncryptionAtHost": true + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "windowsProfile": { + "adminUsername": "azureuser" + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "apiServerAccessProfile": { + "enablePrivateCluster": true, + "privateDNSZone": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.Network/privateDnsZones/privatelink.location1.azmk8s.io" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": true, + "privateFQDN": "domain1.privatelink.location1.azmk8s.io", + "enablePodSecurityPolicy": true, + "networkProfile": { + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "loadBalancerSku": "standard", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "allocatedOutboundPorts": 2000, + "idleTimeoutInMinutes": 10, + "managedOutboundIPs": { + "count": 2 + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + } + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersCreate_PrivateClusterPublicFQDN.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersCreate_PrivateClusterPublicFQDN.json new file mode 100644 index 000000000000..dadcc3df4800 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersCreate_PrivateClusterPublicFQDN.json @@ -0,0 +1,250 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "parameters": { + "location": "location1", + "tags": { + "tier": "production", + "archv2": "" + }, + "sku": { + "name": "Basic", + "tier": "Free" + }, + "properties": { + "kubernetesVersion": "", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS2_v2", + "osType": "Linux", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System", + "enableEncryptionAtHost": true + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "networkProfile": { + "loadBalancerSku": "standard", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "managedOutboundIPs": { + "count": 2 + } + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + }, + "windowsProfile": { + "adminUsername": "azureuser", + "adminPassword": "replacePassword1234$" + }, + "servicePrincipalProfile": { + "clientId": "clientid", + "secret": "secret" + }, + "apiServerAccessProfile": { + "enablePrivateCluster": true, + "enablePrivateClusterPublicFQDN": true + }, + "addonProfiles": {}, + "enableRBAC": true, + "enablePodSecurityPolicy": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Succeeded", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Succeeded", + "orchestratorVersion": "1.9.6", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System", + "nodeImageVersion": "AKSUbuntu:1604:2020.03.11", + "enableEncryptionAtHost": true + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "windowsProfile": { + "adminUsername": "azureuser" + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "apiServerAccessProfile": { + "enablePrivateCluster": true, + "enablePrivateClusterPublicFQDN": true, + "privateDNSZone": "system" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": true, + "enablePodSecurityPolicy": true, + "fqdn": "dnsprefix1-ee788a1f.hcp.location1.azmk8s.io", + "privateFQDN": "dnsprefix1-aae7e0f0.5cef6058-b6b5-414d-8cb1-4bd14eb0b15c.privatelink.location1.azmk8s.io", + "networkProfile": { + "loadBalancerSku": "basic", + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "allocatedOutboundPorts": 2000, + "idleTimeoutInMinutes": 10, + "managedOutboundIPs": { + "count": 2 + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Creating", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS2_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Creating", + "orchestratorVersion": "1.9.6", + "type": "VirtualMachineScaleSets", + "enableNodePublicIP": true, + "mode": "System", + "enableEncryptionAtHost": true + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "windowsProfile": { + "adminUsername": "azureuser" + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "apiServerAccessProfile": { + "enablePrivateCluster": true, + "enablePrivateClusterPublicFQDN": true, + "privateDNSZone": "system" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": true, + "fqdn": "dnsprefix1-ee788a1f.hcp.location1.azmk8s.io", + "privateFQDN": "dnsprefix1-aae7e0f0.5cef6058-b6b5-414d-8cb1-4bd14eb0b15c.privatelink.location1.azmk8s.io", + "enablePodSecurityPolicy": true, + "networkProfile": { + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "loadBalancerSku": "standard", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "allocatedOutboundPorts": 2000, + "idleTimeoutInMinutes": 10, + "managedOutboundIPs": { + "count": 2 + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + } + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersCreate_Update.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersCreate_Update.json new file mode 100644 index 000000000000..ef428d363b3e --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersCreate_Update.json @@ -0,0 +1,282 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "parameters": { + "location": "location1", + "tags": { + "tier": "production", + "archv2": "" + }, + "sku": { + "name": "Basic", + "tier": "Free" + }, + "properties": { + "kubernetesVersion": "", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS1_v2", + "osType": "Linux", + "type": "VirtualMachineScaleSets", + "availabilityZones": [ + "1", + "2", + "3" + ], + "enableNodePublicIP": true, + "mode": "System" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "networkProfile": { + "loadBalancerSku": "standard", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "managedOutboundIPs": { + "count": 2 + } + } + }, + "autoScalerProfile": { + "balance-similar-node-groups": "true", + "expander": "priority", + "max-node-provision-time": "15m", + "new-pod-scale-up-delay": "1m", + "scale-down-delay-after-add": "15m", + "scan-interval": "20s", + "skip-nodes-with-system-pods": "false" + }, + "windowsProfile": { + "adminUsername": "azureuser", + "adminPassword": "replacePassword1234$" + }, + "servicePrincipalProfile": { + "clientId": "clientid", + "secret": "secret" + }, + "addonProfiles": {}, + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid1/resourceGroups/rgName1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Succeeded", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS1_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Succeeded", + "orchestratorVersion": "1.9.6", + "type": "VirtualMachineScaleSets", + "availabilityZones": [ + "1", + "2", + "3" + ], + "enableNodePublicIP": true, + "mode": "System", + "nodeImageVersion": "AKSUbuntu:1604:2020.03.11" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "windowsProfile": { + "adminUsername": "azureuser" + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true, + "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io", + "networkProfile": { + "loadBalancerSku": "basic", + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "allocatedOutboundPorts": 2000, + "idleTimeoutInMinutes": 10, + "managedOutboundIPs": { + "count": 2 + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + }, + "autoScalerProfile": { + "balance-similar-node-groups": "true", + "expander": "priority", + "max-node-provision-time": "15m", + "new-pod-scale-up-delay": "1m", + "scale-down-delay-after-add": "15m", + "scan-interval": "20s", + "skip-nodes-with-system-pods": "false" + } + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid1/resourceGroups/rgName1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": { + "principalId": "principalId1", + "clientId": "clientId1" + } + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Creating", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS1_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Creating", + "orchestratorVersion": "1.9.6", + "type": "VirtualMachineScaleSets", + "availabilityZones": [ + "1", + "2", + "3" + ], + "enableNodePublicIP": true, + "mode": "System" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "windowsProfile": { + "adminUsername": "azureuser" + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true, + "networkProfile": { + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "loadBalancerSku": "standard", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "allocatedOutboundPorts": 2000, + "idleTimeoutInMinutes": 10, + "managedOutboundIPs": { + "count": 2 + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + } + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid1/resourceGroups/rgName1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": { + "principalId": "principalId1", + "clientId": "clientId1" + } + } + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersCreate_UpdateWithAHUB.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersCreate_UpdateWithAHUB.json new file mode 100644 index 000000000000..b11c0edde1a1 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersCreate_UpdateWithAHUB.json @@ -0,0 +1,275 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "parameters": { + "location": "location1", + "tags": { + "tier": "production", + "archv2": "" + }, + "sku": { + "name": "Basic", + "tier": "Free" + }, + "properties": { + "kubernetesVersion": "", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS1_v2", + "osType": "Linux", + "type": "VirtualMachineScaleSets", + "availabilityZones": [ + "1", + "2", + "3" + ], + "enableNodePublicIP": true, + "mode": "System" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "networkProfile": { + "loadBalancerSku": "standard", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "managedOutboundIPs": { + "count": 2 + } + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + }, + "windowsProfile": { + "adminUsername": "azureuser", + "adminPassword": "replacePassword1234$", + "licenseType": "Windows_Server" + }, + "servicePrincipalProfile": { + "clientId": "clientid", + "secret": "secret" + }, + "addonProfiles": {}, + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid1/resourceGroups/rgName1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Succeeded", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS1_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Succeeded", + "orchestratorVersion": "1.9.6", + "type": "VirtualMachineScaleSets", + "availabilityZones": [ + "1", + "2", + "3" + ], + "enableNodePublicIP": true, + "mode": "System", + "nodeImageVersion": "AKSUbuntu:1604:2020.03.11" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "windowsProfile": { + "adminUsername": "azureuser", + "licenseType": "Windows_Server" + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true, + "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io", + "networkProfile": { + "loadBalancerSku": "basic", + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "allocatedOutboundPorts": 2000, + "idleTimeoutInMinutes": 10, + "managedOutboundIPs": { + "count": 2 + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + } + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid1/resourceGroups/rgName1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": { + "principalId": "principalId1", + "clientId": "clientId1" + } + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Creating", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS1_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Creating", + "orchestratorVersion": "1.9.6", + "type": "VirtualMachineScaleSets", + "availabilityZones": [ + "1", + "2", + "3" + ], + "enableNodePublicIP": true, + "mode": "System" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "windowsProfile": { + "adminUsername": "azureuser", + "licenseType": "Windows_Server" + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true, + "networkProfile": { + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "loadBalancerSku": "standard", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "allocatedOutboundPorts": 2000, + "idleTimeoutInMinutes": 10, + "managedOutboundIPs": { + "count": 2 + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + } + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid1/resourceGroups/rgName1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": { + "principalId": "principalId1", + "clientId": "clientId1" + } + } + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersCreate_UpdateWithEnableAzureRBAC.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersCreate_UpdateWithEnableAzureRBAC.json new file mode 100644 index 000000000000..bffc46df6f05 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersCreate_UpdateWithEnableAzureRBAC.json @@ -0,0 +1,264 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "parameters": { + "location": "location1", + "tags": { + "tier": "production", + "archv2": "" + }, + "sku": { + "name": "Basic", + "tier": "Free" + }, + "properties": { + "kubernetesVersion": "", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS1_v2", + "osType": "Linux", + "type": "VirtualMachineScaleSets", + "availabilityZones": [ + "1", + "2", + "3" + ], + "enableNodePublicIP": true, + "mode": "System" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "networkProfile": { + "loadBalancerSku": "standard", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "managedOutboundIPs": { + "count": 2 + } + } + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + }, + "windowsProfile": { + "adminUsername": "azureuser", + "adminPassword": "replacePassword1234$" + }, + "servicePrincipalProfile": { + "clientId": "clientid", + "secret": "secret" + }, + "addonProfiles": {}, + "aadProfile": { + "managed": true, + "enableAzureRBAC": true + }, + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Succeeded", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS1_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Succeeded", + "orchestratorVersion": "1.9.6", + "type": "VirtualMachineScaleSets", + "availabilityZones": [ + "1", + "2", + "3" + ], + "enableNodePublicIP": true, + "mode": "System", + "nodeImageVersion": "AKSUbuntu:1604:2020.03.11" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "windowsProfile": { + "adminUsername": "azureuser" + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true, + "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io", + "networkProfile": { + "loadBalancerSku": "basic", + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "allocatedOutboundPorts": 2000, + "idleTimeoutInMinutes": 10, + "managedOutboundIPs": { + "count": 2 + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + }, + "aadProfile": { + "managed": true, + "adminGroupObjectIDs": null, + "enableAzureRBAC": true, + "tenantID": "tenantID" + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Creating", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS1_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Creating", + "orchestratorVersion": "1.9.6", + "type": "VirtualMachineScaleSets", + "availabilityZones": [ + "1", + "2", + "3" + ], + "enableNodePublicIP": true, + "mode": "System" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "windowsProfile": { + "adminUsername": "azureuser" + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": true, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "enablePodSecurityPolicy": true, + "networkProfile": { + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "loadBalancerSku": "standard", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "allocatedOutboundPorts": 2000, + "idleTimeoutInMinutes": 10, + "managedOutboundIPs": { + "count": 2 + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + }, + "aadProfile": { + "managed": true, + "adminGroupObjectIDs": null, + "enableAzureRBAC": true, + "tenantID": "tenantID" + }, + "autoScalerProfile": { + "scan-interval": "20s", + "scale-down-delay-after-add": "15m" + } + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersDelete.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersDelete.json new file mode 100644 index 000000000000..45de4694848d --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersGet.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersGet.json new file mode 100644 index 000000000000..814689c9edd9 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersGet.json @@ -0,0 +1,97 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Succeeded", + "maxAgentPools": 1, + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io", + "azurePortalFQDN": "dnsprefix1-abcd1234.portal.hcp.eastus.azmk8s.io", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS1_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Succeeded", + "orchestratorVersion": "1.9.6", + "availabilityZones": [ + "1", + "2", + "3" + ], + "nodeImageVersion": "AKSUbuntu:1604:2020.03.11", + "upgradeSettings": { + "maxSurge": "33%" + } + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": false, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "networkProfile": { + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16", + "loadBalancerSku": "standard", + "outboundType": "loadBalancer", + "loadBalancerProfile": { + "allocatedOutboundPorts": 2000, + "idleTimeoutInMinutes": 10, + "outboundIPs": { + "publicIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/customeroutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/customeroutboundip2" + } + ] + }, + "effectiveOutboundIPs": [ + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1" + }, + { + "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2" + } + ] + } + } + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersGetAccessProfile.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersGetAccessProfile.json new file mode 100644 index 000000000000..93f3aa1aacbc --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersGetAccessProfile.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "roleName": "clusterUser" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/accessProfiles/clusterUser", + "location": "location1", + "name": "clusterUser", + "properties": { + "kubeConfig": "kubeConfig1" + }, + "type": "Microsoft.ContainerService/ManagedClusters/AccessProfiles" + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersGetUpgradeProfile.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersGetUpgradeProfile.json new file mode 100644 index 000000000000..6955cc18615d --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersGetUpgradeProfile.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/upgradeprofiles/default", + "name": "default", + "properties": { + "agentPoolProfiles": [ + { + "kubernetesVersion": "1.7.7", + "name": "agent", + "osType": "Linux", + "upgrades": [ + { + "kubernetesVersion": "1.7.9" + }, + { + "kubernetesVersion": "1.7.11", + "isPreview": true + } + ] + } + ], + "controlPlaneProfile": { + "kubernetesVersion": "1.7.7", + "name": "master", + "osType": "Linux", + "upgrades": [ + { + "kubernetesVersion": "1.7.9", + "isPreview": true + }, + { + "kubernetesVersion": "1.7.11" + } + ] + } + }, + "type": "Microsoft.ContainerService/managedClusters/upgradeprofiles" + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersList.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersList.json new file mode 100644 index 000000000000..7a2dec0b2099 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersList.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid1/providers/Microsoft.ContainerService/managedClusters", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Succeeded", + "kubernetesVersion": "1.9.6", + "maxAgentPools": 1, + "dnsPrefix": "dnsprefix1", + "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS1_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Succeeded", + "orchestratorVersion": "1.9.6" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": false, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "networkProfile": { + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16" + } + } + } + ] + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersListByResourceGroup.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersListByResourceGroup.json new file mode 100644 index 000000000000..2b5fe026042b --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersListByResourceGroup.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters", + "location": "location1", + "name": "clustername1", + "tags": { + "archv2": "", + "tier": "production" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Succeeded", + "kubernetesVersion": "1.9.6", + "maxAgentPools": 1, + "dnsPrefix": "dnsprefix1", + "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS1_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Succeeded", + "orchestratorVersion": "1.9.6" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": false, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "networkProfile": { + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16" + } + } + } + ] + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersListClusterCredentialResult.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersListClusterCredentialResult.json new file mode 100644 index 000000000000..0f7f7b5a057d --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersListClusterCredentialResult.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1" + }, + "responses": { + "200": { + "body": { + "kubeconfigs": [ + { + "name": "credentialName1", + "value": "credentialValue1" + } + ] + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersResetAADProfile.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersResetAADProfile.json new file mode 100644 index 000000000000..3d8e6b91ffa2 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersResetAADProfile.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "parameters": { + "clientAppID": "clientappid", + "serverAppID": "serverappid", + "serverAppSecret": "serverappsecret", + "tenantID": "tenantid" + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersResetServicePrincipalProfile.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersResetServicePrincipalProfile.json new file mode 100644 index 000000000000..bc43e96c5e26 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersResetServicePrincipalProfile.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "parameters": { + "clientId": "clientid", + "secret": "secret" + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersRotateClusterCertificates.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersRotateClusterCertificates.json new file mode 100644 index 000000000000..45de4694848d --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersRotateClusterCertificates.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersStart.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersStart.json new file mode 100644 index 000000000000..45de4694848d --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersStart.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersStop.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersStop.json new file mode 100644 index 000000000000..45de4694848d --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersStop.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersUpdateTags.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersUpdateTags.json new file mode 100644 index 000000000000..18b84e24f997 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ManagedClustersUpdateTags.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "parameters": { + "tags": { + "tier": "testing", + "archv3": "" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1", + "location": "location1", + "name": "clustername1", + "tags": { + "archv3": "", + "tier": "testing" + }, + "type": "Microsoft.ContainerService/ManagedClusters", + "properties": { + "provisioningState": "Succeeded", + "kubernetesVersion": "1.9.6", + "dnsPrefix": "dnsprefix1", + "agentPoolProfiles": [ + { + "name": "nodepool1", + "count": 3, + "vmSize": "Standard_DS1_v2", + "maxPods": 110, + "osType": "Linux", + "provisioningState": "Succeeded", + "orchestratorVersion": "1.9.6" + } + ], + "linuxProfile": { + "adminUsername": "azureuser", + "ssh": { + "publicKeys": [ + { + "keyData": "keydata" + } + ] + } + }, + "servicePrincipalProfile": { + "clientId": "clientid" + }, + "nodeResourceGroup": "MC_rg1_clustername1_location1", + "enableRBAC": false, + "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des", + "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io", + "networkProfile": { + "networkPlugin": "kubenet", + "podCidr": "10.244.0.0/16", + "serviceCidr": "10.0.0.0/16", + "dnsServiceIP": "10.0.0.10", + "dockerBridgeCidr": "172.17.0.1/16" + } + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/OutboundNetworkDependenciesEndpointsList.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/OutboundNetworkDependenciesEndpointsList.json new file mode 100644 index 000000000000..2e0b3aca1faf --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/OutboundNetworkDependenciesEndpointsList.json @@ -0,0 +1,242 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "category": "azure-resource-management", + "endpoints": [ + { + "domainName": "management.azure.com", + "endpointDetails": [ + { + "port": 443, + "protocol": "Https" + } + ] + }, + { + "domainName": "login.microsoftonline.com", + "endpointDetails": [ + { + "port": 443, + "protocol": "Https" + } + ] + } + ] + }, + { + "category": "images", + "endpoints": [ + { + "domainName": "mcr.microsoft.com", + "endpointDetails": [ + { + "port": 443, + "protocol": "Https" + } + ] + }, + { + "domainName": "*.data.mcr.microsoft.com", + "endpointDetails": [ + { + "port": 443, + "protocol": "Https", + "description": "mcr cdn" + } + ] + } + ] + }, + { + "category": "artifacts", + "endpoints": [ + { + "domainName": "packages.microsoft.com", + "endpointDetails": [ + { + "port": 443, + "protocol": "Https" + } + ] + }, + { + "domainName": "acs-mirror.azureedge.net", + "endpointDetails": [ + { + "port": 443, + "protocol": "Https" + } + ] + } + ] + }, + { + "category": "time-sync", + "endpoints": [ + { + "domainName": "ntp.ubuntu.com", + "endpointDetails": [ + { + "port": 123, + "protocol": "UDP" + } + ] + } + ] + }, + { + "category": "ubuntu-optional", + "endpoints": [ + { + "domainName": "security.ubuntu.com", + "endpointDetails": [ + { + "port": 80, + "protocol": "Http" + } + ] + }, + { + "domainName": "azure.archive.ubuntu.com", + "endpointDetails": [ + { + "port": 80, + "protocol": "Http" + } + ] + }, + { + "domainName": "changelogs.ubuntu.com", + "endpointDetails": [ + { + "port": 80, + "protocol": "Http" + } + ] + } + ] + }, + { + "category": "gpu", + "endpoints": [ + { + "domainName": "nvidia.github.io", + "endpointDetails": [ + { + "port": 443, + "protocol": "Https" + } + ] + }, + { + "domainName": "us.download.nvidia.com", + "endpointDetails": [ + { + "port": 443, + "protocol": "Https" + } + ] + }, + { + "domainName": "apt.dockerproject.org", + "endpointDetails": [ + { + "port": 443, + "protocol": "Https" + } + ] + } + ] + }, + { + "category": "windows", + "endpoints": [ + { + "domainName": "onegetcdn.azureedge.net", + "endpointDetails": [ + { + "port": 443, + "protocol": "Https" + } + ] + }, + { + "domainName": "go.microsoft.com", + "endpointDetails": [ + { + "port": 443, + "protocol": "Https" + } + ] + }, + { + "domainName": "*.mp.microsoft.com", + "endpointDetails": [ + { + "port": 80, + "protocol": "Http" + } + ] + }, + { + "domainName": "www.msftconnecttest.com", + "endpointDetails": [ + { + "port": 80, + "protocol": "Http" + } + ] + }, + { + "domainName": "ctldl.windowsupdate.com", + "endpointDetails": [ + { + "port": 80, + "protocol": "Http" + } + ] + } + ] + }, + { + "category": "apiserver", + "endpoints": [ + { + "domainName": "*.azmk8s.io", + "endpointDetails": [ + { + "port": 443, + "protocol": "Https" + } + ] + } + ] + }, + { + "category": "tunnel-classic", + "endpoints": [ + { + "domainName": "*.azmk8s.io", + "endpointDetails": [ + { + "port": 9000, + "protocol": "TCP" + } + ] + } + ] + } + ] + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/PrivateEndpointConnectionsDelete.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/PrivateEndpointConnectionsDelete.json new file mode 100644 index 000000000000..bdae1bdffd77 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/PrivateEndpointConnectionsDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "privateEndpointConnectionName": "privateendpointconnection1" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/PrivateEndpointConnectionsGet.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/PrivateEndpointConnectionsGet.json new file mode 100644 index 000000000000..60ba1b37aa31 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/PrivateEndpointConnectionsGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "privateEndpointConnectionName": "privateendpointconnection1" + }, + "responses": { + "200": { + "body": { + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subid2/resourceGroups/rg2/providers/Microsoft.Network/privateEndpoints/pe2" + }, + "privateLinkServiceConnectionState": { + "status": "Approved" + }, + "provisioningState": "Succeeded" + }, + "name": "privateendpointconnection1", + "type": "Microsoft.Network/privateLinkServices/privateEndpointConnections" + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/PrivateEndpointConnectionsList.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/PrivateEndpointConnectionsList.json new file mode 100644 index 000000000000..5da5e9f35251 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/PrivateEndpointConnectionsList.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subid2/resourceGroups/rg2/providers/Microsoft.Network/privateEndpoints/pe2" + }, + "privateLinkServiceConnectionState": { + "status": "Approved" + }, + "provisioningState": "Succeeded" + }, + "name": "privateendpointconnection1", + "type": "Microsoft.Network/privateLinkServices/privateEndpointConnections" + } + ] + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/PrivateEndpointConnectionsUpdate.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/PrivateEndpointConnectionsUpdate.json new file mode 100644 index 000000000000..7bf33c329b55 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/PrivateEndpointConnectionsUpdate.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "privateEndpointConnectionName": "privateendpointconnection1", + "parameters": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved" + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subid2/resourceGroups/rg2/providers/Microsoft.Network/privateEndpoints/pe2" + }, + "privateLinkServiceConnectionState": { + "status": "Approved" + }, + "provisioningState": "Succeeded" + }, + "name": "privateendpointconnection1", + "type": "Microsoft.Network/privateLinkServices/privateEndpointConnections" + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/PrivateLinkResourcesList.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/PrivateLinkResourcesList.json new file mode 100644 index 000000000000..d9cb7afebef5 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/PrivateLinkResourcesList.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "management", + "type": "Microsoft.ContainerService/managedClusters/privateLinkResources", + "groupId": "management", + "requiredMembers": [ + "management" + ], + "privateLinkServiceID": "/subscriptions/subid2/resourceGroups/rg2/providers/Microsoft.Network/privateLinkServices/plsName" + } + ] + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ResolvePrivateLinkServiceId.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ResolvePrivateLinkServiceId.json new file mode 100644 index 000000000000..c85390680ea3 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/ResolvePrivateLinkServiceId.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "parameters": { + "name": "management" + } + }, + "responses": { + "200": { + "body": { + "privateLinkServiceID": "/subscriptions/subid2/resourceGroups/rg2/providers/Microsoft.Network/privateLinkServices/plsName" + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/RunCommandRequest.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/RunCommandRequest.json new file mode 100644 index 000000000000..8329c27edc81 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/RunCommandRequest.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "requestPayload": { + "command": "kubectl apply -f ns.yaml", + "context": "", + "clusterToken": "" + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/commandResults/0e9872e6629349dc865e27ee6f8bab2d?api-version=2021-05-01" + } + }, + "200": { + "description": "to mitigate RESPONSE_STATUS_CODE_NOT_IN_EXAMPLE", + "body": { + "id": "def7b3ea71bd4f7e9d226ddbc0f00ad9", + "properties": { + "provisioningState": "succeeded", + "exitCode": 0, + "startedAt": "2021-02-17T00:28:20Z", + "finishedAt": "2021-02-17T00:28:33Z", + "logs": "namespace dummy created" + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/RunCommandResultFailed.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/RunCommandResultFailed.json new file mode 100644 index 000000000000..fc020be708d9 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/RunCommandResultFailed.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "commandId": "def7b3ea71bd4f7e9d226ddbc0f00ad9" + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/commandResults/0e9872e6629349dc865e27ee6f8bab2d?api-version=2021-05-01" + } + }, + "200": { + "body": { + "id": "def7b3ea71bd4f7e9d226ddbc0f00ad9", + "properties": { + "provisioningState": "failed", + "reason": "ImagePullBackoff" + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/RunCommandResultSucceed.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/RunCommandResultSucceed.json new file mode 100644 index 000000000000..1c6c65cc5e5f --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/examples/RunCommandResultSucceed.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "clustername1", + "commandId": "def7b3ea71bd4f7e9d226ddbc0f00ad9" + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/commandResults/0e9872e6629349dc865e27ee6f8bab2d?api-version=2021-05-01" + } + }, + "200": { + "body": { + "id": "def7b3ea71bd4f7e9d226ddbc0f00ad9", + "properties": { + "provisioningState": "succeeded", + "exitCode": 0, + "startedAt": "2021-02-17T00:28:20Z", + "finishedAt": "2021-02-17T00:28:33Z", + "logs": "namespace dummy created" + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/managedClusters.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/managedClusters.json new file mode 100644 index 000000000000..ded4a2b35c4d --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-05-01/managedClusters.json @@ -0,0 +1,4718 @@ +{ + "swagger": "2.0", + "info": { + "title": "ContainerServiceClient", + "description": "The Container Service Client.", + "version": "2021-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": { + "/providers/Microsoft.ContainerService/operations": { + "get": { + "tags": [ + "managedClusters" + ], + "operationId": "Operations_List", + "description": "Gets a list of compute operations.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerService/locations/{location}/osOptions/default": { + "get": { + "tags": [ + "managedClusters" + ], + "operationId": "ManagedClusters_GetOSOptions", + "summary": "Gets supported OS options in the specified subscription.", + "description": "Gets supported OS options in the specified subscription.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/LocationParameter" + }, + { + "$ref": "#/parameters/ResourceTypeParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + }, + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OSOptionProfile" + } + } + }, + "x-ms-examples": { + "Get Container Service OS Options": { + "$ref": "./examples/ContainerServiceGetOSOptions.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerService/managedClusters": { + "get": { + "tags": [ + "ManagedClusters" + ], + "operationId": "ManagedClusters_List", + "summary": "Gets a list of managed clusters in the specified subscription.", + "description": "Gets a list of managed clusters in the specified subscription. The operation returns properties of each managed cluster.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ManagedClusterListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Managed Clusters": { + "$ref": "./examples/ManagedClustersList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters": { + "get": { + "tags": [ + "ManagedClusters" + ], + "operationId": "ManagedClusters_ListByResourceGroup", + "summary": "Lists managed clusters in the specified subscription and resource group.", + "description": "Lists managed clusters in the specified subscription and resource group. The operation returns properties of each managed cluster.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ManagedClusterListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get Managed Clusters by Resource Group": { + "$ref": "./examples/ManagedClustersListByResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/upgradeProfiles/default": { + "get": { + "tags": [ + "ManagedClusters" + ], + "operationId": "ManagedClusters_GetUpgradeProfile", + "summary": "Gets upgrade profile for a managed cluster.", + "description": "Gets the details of the upgrade profile for a managed cluster with a specified resource group and name.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ManagedClusterUpgradeProfile" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Upgrade Profile for Managed Cluster": { + "$ref": "./examples/ManagedClustersGetUpgradeProfile.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/accessProfiles/{roleName}/listCredential": { + "post": { + "deprecated": true, + "tags": [ + "ManagedClusters" + ], + "operationId": "ManagedClusters_GetAccessProfile", + "summary": "Gets an access profile of a managed cluster.", + "description": "Gets the accessProfile for the specified role name of the managed cluster with a specified resource group and name. **WARNING**: This API will be deprecated. Instead use [ListClusterUserCredentials](https://docs.microsoft.com/en-us/rest/api/aks/managedclusters/listclusterusercredentials) or [ListClusterAdminCredentials](https://docs.microsoft.com/en-us/rest/api/aks/managedclusters/listclusteradmincredentials) .", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "roleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the role for managed cluster accessProfile resource." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ManagedClusterAccessProfile" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Managed Cluster": { + "$ref": "./examples/ManagedClustersGetAccessProfile.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/listClusterAdminCredential": { + "post": { + "tags": [ + "ManagedClusters" + ], + "operationId": "ManagedClusters_ListClusterAdminCredentials", + "summary": "Gets cluster admin credential of a managed cluster.", + "description": "Gets cluster admin credential of the managed cluster with a specified resource group and name.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "$ref": "#/parameters/ServerFqdnParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CredentialResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Managed Cluster": { + "$ref": "./examples/ManagedClustersListClusterCredentialResult.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/listClusterUserCredential": { + "post": { + "tags": [ + "ManagedClusters" + ], + "operationId": "ManagedClusters_ListClusterUserCredentials", + "summary": "Gets cluster user credential of a managed cluster.", + "description": "Gets cluster user credential of the managed cluster with a specified resource group and name.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "$ref": "#/parameters/ServerFqdnParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CredentialResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Managed Cluster": { + "$ref": "./examples/ManagedClustersListClusterCredentialResult.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/listClusterMonitoringUserCredential": { + "post": { + "tags": [ + "ManagedClusters" + ], + "operationId": "ManagedClusters_ListClusterMonitoringUserCredentials", + "summary": "Gets cluster monitoring user credential of a managed cluster.", + "description": "Gets cluster monitoring user credential of the managed cluster with a specified resource group and name.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "$ref": "#/parameters/ServerFqdnParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CredentialResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Managed Cluster": { + "$ref": "./examples/ManagedClustersListClusterCredentialResult.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}": { + "get": { + "tags": [ + "ManagedClusters" + ], + "operationId": "ManagedClusters_Get", + "summary": "Gets a managed cluster.", + "description": "Gets the details of the managed cluster with a specified resource group and name.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ManagedCluster" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Managed Cluster": { + "$ref": "./examples/ManagedClustersGet.json" + } + } + }, + "put": { + "tags": [ + "ManagedClusters" + ], + "operationId": "ManagedClusters_CreateOrUpdate", + "summary": "Creates or updates a managed cluster.", + "description": "Creates or updates a managed cluster with the specified configuration for agents and Kubernetes version.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ManagedCluster" + }, + "description": "Parameters supplied to the Create or Update a Managed Cluster operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ManagedCluster" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/ManagedCluster" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create/Update Managed Cluster": { + "$ref": "./examples/ManagedClustersCreate_Update.json" + }, + "Create/Update AAD Managed Cluster with EnableAzureRBAC": { + "$ref": "./examples/ManagedClustersCreate_UpdateWithEnableAzureRBAC.json" + }, + "Create Managed Cluster with PPG": { + "$ref": "./examples/ManagedClustersCreate_PPG.json" + }, + "Create Managed Cluster with OSSKU": { + "$ref": "./examples/ManagedClustersCreate_OSSKU.json" + }, + "Create Managed Cluster with GPUMIG": { + "$ref": "./examples/ManagedClustersCreate_GPUMIG.json" + }, + "Create/Update Managed Cluster with EnableAHUB": { + "$ref": "./examples/ManagedClustersCreate_UpdateWithAHUB.json" + }, + "Create Managed Cluster with EncryptionAtHost enabled": { + "$ref": "./examples/ManagedClustersCreate_EnableEncryptionAtHost.json" + }, + "Create Managed Cluster with UltraSSD enabled": { + "$ref": "./examples/ManagedClustersCreate_EnableUltraSSD.json" + }, + "Create Managed Cluster with PodIdentity enabled": { + "$ref": "./examples/ManagedClustersCreate_PodIdentity.json" + }, + "Create Managed Private Cluster with fqdn subdomain specified": { + "$ref": "./examples/ManagedClustersCreate_PrivateClusterFQDNSubdomain.json" + }, + "Create Managed Private Cluster with Public FQDN specified": { + "$ref": "./examples/ManagedClustersCreate_PrivateClusterPublicFQDN.json" + }, + "Create Managed Cluster with Node Public IP Prefix": { + "$ref": "./examples/ManagedClustersCreate_NodePublicIPPrefix.json" + }, + "Create Managed Cluster with FIPS enabled OS": { + "$ref": "./examples/ManagedClustersCreate_EnabledFIPS.json" + }, + "Create Managed Cluster with HTTP proxy configured": { + "$ref": "./examples/ManagedClustersCreate_HTTPProxy.json" + } + } + }, + "patch": { + "tags": [ + "ManagedClusters" + ], + "operationId": "ManagedClusters_UpdateTags", + "summary": "Updates tags on a managed cluster.", + "description": "Updates a managed cluster with the specified tags.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TagsObject" + }, + "description": "Parameters supplied to the Update Managed Cluster Tags operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ManagedCluster" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update Managed Cluster Tags": { + "$ref": "./examples/ManagedClustersUpdateTags.json" + } + } + }, + "delete": { + "tags": [ + "ManagedClusters" + ], + "operationId": "ManagedClusters_Delete", + "summary": "Deletes a managed cluster.", + "description": "Deletes the managed cluster with a specified resource group and name.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete Managed Cluster": { + "$ref": "./examples/ManagedClustersDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/maintenanceConfigurations": { + "get": { + "tags": [ + "MaintenanceConfigurations" + ], + "operationId": "MaintenanceConfigurations_ListByManagedCluster", + "summary": "Gets a list of maintenance configurations in the specified managed cluster.", + "description": "Gets a list of maintenance configurations in the specified managed cluster. The operation returns properties of each maintenance configuration.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MaintenanceConfigurationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List maintenance configurations by Managed Cluster": { + "$ref": "./examples/MaintenanceConfigurationsList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/maintenanceConfigurations/{configName}": { + "get": { + "tags": [ + "MaintenanceConfigurations" + ], + "operationId": "MaintenanceConfigurations_Get", + "summary": "Gets the maintenance configuration.", + "description": "Gets the details of maintenance configurations by managed cluster and resource group.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "configName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the maintenance configuration." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MaintenanceConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Maintenance Configuration": { + "$ref": "./examples/MaintenanceConfigurationsGet.json" + } + } + }, + "put": { + "tags": [ + "MaintenanceConfigurations" + ], + "operationId": "MaintenanceConfigurations_CreateOrUpdate", + "summary": "Creates or updates a maintenance configurations.", + "description": "Creates or updates a maintenance configuration in the specified managed cluster.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "configName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the maintenance configuration." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/MaintenanceConfiguration" + }, + "description": "Parameters supplied to the Create or Update a default maintenance configuration." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MaintenanceConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": false, + "x-ms-examples": { + "Create/Update Maintenance Configuration": { + "$ref": "./examples/MaintenanceConfigurationsCreate_Update.json" + } + } + }, + "delete": { + "tags": [ + "MaintenanceConfigurations" + ], + "operationId": "MaintenanceConfigurations_Delete", + "summary": "Deletes a maintenance configuration.", + "description": "Deletes the maintenance configuration in the specified managed cluster.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "configName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the maintenance configuration." + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": false, + "x-ms-examples": { + "Delete Maintenance Configuration": { + "$ref": "./examples/MaintenanceConfigurationsDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/agentPools": { + "get": { + "tags": [ + "AgentPools" + ], + "operationId": "AgentPools_List", + "summary": "Gets a list of agent pools in the specified managed cluster.", + "description": "Gets a list of agent pools in the specified managed cluster. The operation returns properties of each agent pool.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AgentPoolListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Agent Pools by Managed Cluster": { + "$ref": "./examples/AgentPoolsList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/agentPools/{agentPoolName}": { + "get": { + "tags": [ + "AgentPools" + ], + "operationId": "AgentPools_Get", + "summary": "Gets the agent pool.", + "description": "Gets the details of the agent pool by managed cluster and resource group.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "agentPoolName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the agent pool." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AgentPool" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Agent Pool": { + "$ref": "./examples/AgentPoolsGet.json" + } + } + }, + "put": { + "tags": [ + "AgentPools" + ], + "operationId": "AgentPools_CreateOrUpdate", + "summary": "Creates or updates an agent pool.", + "description": "Creates or updates an agent pool in the specified managed cluster.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "agentPoolName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the agent pool." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AgentPool" + }, + "description": "Parameters supplied to the Create or Update an agent pool operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AgentPool" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/AgentPool" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create/Update Agent Pool": { + "$ref": "./examples/AgentPoolsCreate_Update.json" + }, + "Update Agent Pool": { + "$ref": "./examples/AgentPools_Update.json" + }, + "Create Spot Agent Pool": { + "$ref": "./examples/AgentPoolsCreate_Spot.json" + }, + "Create Agent Pool with PPG": { + "$ref": "./examples/AgentPoolsCreate_PPG.json" + }, + "Create Agent Pool with OSSKU": { + "$ref": "./examples/AgentPoolsCreate_OSSKU.json" + }, + "Create Agent Pool with GPUMIG": { + "$ref": "./examples/AgentPoolsCreate_GPUMIG.json" + }, + "Create Agent Pool with Ephemeral OS Disk": { + "$ref": "./examples/AgentPoolsCreate_Ephemeral.json" + }, + "Create Agent Pool with KubeletConfig and LinuxOSConfig": { + "$ref": "./examples/AgentPoolsCreate_CustomNodeConfig.json" + }, + "Create Agent Pool with EncryptionAtHost enabled": { + "$ref": "./examples/AgentPoolsCreate_EnableEncryptionAtHost.json" + }, + "Create Agent Pool with UltraSSD enabled": { + "$ref": "./examples/AgentPoolsCreate_EnableUltraSSD.json" + }, + "Create Agent Pool with FIPS enabled OS": { + "$ref": "./examples/AgentPoolsCreate_EnableFIPS.json" + } + } + }, + "delete": { + "tags": [ + "AgentPools" + ], + "operationId": "AgentPools_Delete", + "summary": "Deletes an agent pool.", + "description": "Deletes the agent pool in the specified managed cluster.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "agentPoolName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the agent pool." + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete Agent Pool": { + "$ref": "./examples/AgentPoolsDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/agentPools/{agentPoolName}/upgradeProfiles/default": { + "get": { + "tags": [ + "AgentPools" + ], + "operationId": "AgentPools_GetUpgradeProfile", + "summary": "Gets upgrade profile for an agent pool.", + "description": "Gets the details of the upgrade profile for an agent pool with a specified resource group and managed cluster name.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "agentPoolName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the agent pool." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AgentPoolUpgradeProfile" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Upgrade Profile for Agent Pool": { + "$ref": "./examples/AgentPoolsGetUpgradeProfile.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/availableAgentPoolVersions": { + "get": { + "tags": [ + "AgentPools" + ], + "operationId": "AgentPools_GetAvailableAgentPoolVersions", + "summary": "Gets a list of supported versions for the specified agent pool.", + "description": "Gets a list of supported versions for the specified agent pool.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AgentPoolAvailableVersions" + } + } + }, + "x-ms-examples": { + "Get available versions for agent pool": { + "$ref": "./examples/AgentPoolsGetAgentPoolAvailableVersions.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/resetServicePrincipalProfile": { + "post": { + "tags": [ + "ManagedClusters" + ], + "operationId": "ManagedClusters_ResetServicePrincipalProfile", + "summary": "Reset Service Principal Profile of a managed cluster.", + "description": "Update the service principal Profile for a managed cluster.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ManagedClusterServicePrincipalProfile" + }, + "description": "Parameters supplied to the Reset Service Principal Profile operation for a Managed Cluster." + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed. If the cluster doesn't exist, 404 (Not found) is returned.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Reset Service Principal Profile": { + "$ref": "./examples/ManagedClustersResetServicePrincipalProfile.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/resetAADProfile": { + "post": { + "tags": [ + "ManagedClusters" + ], + "operationId": "ManagedClusters_ResetAADProfile", + "summary": "Reset AAD Profile of a managed cluster.", + "description": "Update the AAD Profile for a managed cluster.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ManagedClusterAADProfile" + }, + "description": "Parameters supplied to the Reset AAD Profile operation for a Managed Cluster." + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed. If the cluster doesn't exist, 404 (Not found) is returned.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Reset AAD Profile": { + "$ref": "./examples/ManagedClustersResetAADProfile.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/rotateClusterCertificates": { + "post": { + "tags": [ + "ManagedClusters" + ], + "operationId": "ManagedClusters_RotateClusterCertificates", + "summary": "Rotate certificates of a managed cluster.", + "description": "Rotate certificates of a managed cluster.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed. If the cluster doesn't exist, 404 (Not found) is returned.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Rotate Cluster Certificates": { + "$ref": "./examples/ManagedClustersRotateClusterCertificates.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/stop": { + "post": { + "tags": [ + "ManagedClusters" + ], + "operationId": "ManagedClusters_Stop", + "summary": "Stop Managed Cluster", + "description": "Stops a Running Managed Cluster", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed. If the cluster doesn't exist, 404 (Not found) is returned.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Stop Managed Cluster": { + "$ref": "./examples/ManagedClustersStop.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/start": { + "post": { + "tags": [ + "ManagedClusters" + ], + "operationId": "ManagedClusters_Start", + "summary": "Start Managed Cluster", + "description": "Starts a Stopped Managed Cluster", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed. If the cluster doesn't exist, 404 (Not found) is returned.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Start Managed Cluster": { + "$ref": "./examples/ManagedClustersStart.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/privateEndpointConnections": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_List", + "summary": "Gets a list of private endpoint connections in the specified managed cluster.", + "description": "Gets a list of private endpoint connections in the specified managed cluster. The operation returns properties of each private endpoint connection.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List Private Endpoint Connections by Managed Cluster": { + "$ref": "./examples/PrivateEndpointConnectionsList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Get", + "summary": "Gets the private endpoint connection.", + "description": "Gets the details of the private endpoint connection by managed cluster and resource group.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint connection." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Private Endpoint Connection": { + "$ref": "./examples/PrivateEndpointConnectionsGet.json" + } + } + }, + "put": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Update", + "summary": "Updates a private endpoint connection.", + "description": "Updates a private endpoint connection in the specified managed cluster.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint connection." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "Parameters supplied to the Update a private endpoint connection operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update Private Endpoint Connection": { + "$ref": "./examples/PrivateEndpointConnectionsUpdate.json" + } + } + }, + "delete": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Delete", + "summary": "Deletes a private endpoint connection.", + "description": "Deletes the private endpoint connection in the specified managed cluster.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint connection." + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "No Content -- The private endpoint connection does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete Private Endpoint Connection": { + "$ref": "./examples/PrivateEndpointConnectionsDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/agentPools/{agentPoolName}/upgradeNodeImageVersion": { + "post": { + "tags": [ + "AgentPools" + ], + "operationId": "AgentPools_UpgradeNodeImageVersion", + "summary": "Upgrade node image version of an agent pool to the latest.", + "description": "Upgrade node image version of an agent pool to the latest.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "agentPoolName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the agent pool." + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/AgentPool" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Upgrade Agent Pool Node Image Version": { + "$ref": "./examples/AgentPoolsUpgradeNodeImageVersion.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/privateLinkResources": { + "get": { + "tags": [ + "privateLinkResources" + ], + "operationId": "PrivateLinkResources_List", + "summary": "Gets a list of private link resources in the specified managed cluster.", + "description": "Gets a list of private link resources in the specified managed cluster. The operation returns properties of each private link resource.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateLinkResourcesListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List Private Link Resources by Managed Cluster": { + "$ref": "./examples/PrivateLinkResourcesList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/resolvePrivateLinkServiceId": { + "post": { + "tags": [ + "resolvePrivateLinkServiceId" + ], + "operationId": "ResolvePrivateLinkServiceId_POST", + "summary": "Gets the private link service ID for the specified managed cluster.", + "description": "Gets the private link service ID the specified managed cluster.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateLinkResource" + }, + "description": "Parameters (name, groupId) supplied in order to resolve a private link service ID." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateLinkResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Resolve the Private Link Service ID for Managed Cluster": { + "$ref": "./examples/ResolvePrivateLinkServiceId.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/runCommand": { + "post": { + "tags": [ + "ManagedClusters" + ], + "operationId": "ManagedClusters_RunCommand", + "summary": "Run Command against Managed Kubernetes Service", + "description": "Submit a command to run against managed kubernetes service, it will create a pod to run the command.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "requestPayload", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RunCommandRequest" + }, + "description": "Parameters supplied to the RunCommand operation." + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "200": { + "description": "command finished with async pattern, tracking by location header. !!! this is for autorest only, you never get 200 from this api !!!", + "schema": { + "$ref": "#/definitions/RunCommandResult" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the cluster doesn't exist, 404 (Not found) is returned.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "submitNewCommand": { + "$ref": "./examples/RunCommandRequest.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/commandResults/{commandId}": { + "get": { + "tags": [ + "ManagedClusters" + ], + "operationId": "ManagedClusters_GetCommandResult", + "summary": "Get command result.", + "description": "Get command result from previous runCommand invoke.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "commandId", + "in": "path", + "required": true, + "type": "string", + "description": "Id of the command request." + } + ], + "responses": { + "202": { + "description": "command running in progress" + }, + "200": { + "description": "command finished", + "schema": { + "$ref": "#/definitions/RunCommandResult" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the cluster doesn't exist, 404 (Not found) is returned.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "commandSucceedResult": { + "$ref": "./examples/RunCommandResultSucceed.json" + }, + "commandFailedResult": { + "$ref": "./examples/RunCommandResultFailed.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/outboundNetworkDependenciesEndpoints": { + "get": { + "tags": [ + "ManagedClusters" + ], + "operationId": "ManagedClusters_ListOutboundNetworkDependenciesEndpoints", + "summary": "Gets a list of egress endpoints (network endpoints of all outbound dependencies) in the specified managed cluster.", + "description": "Gets a list of egress endpoints (network endpoints of all outbound dependencies) in the specified managed cluster. The operation returns properties of each egress endpoint.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OutboundEnvironmentEndpointCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List OutboundNetworkDependenciesEndpoints by Managed Cluster": { + "$ref": "./examples/OutboundNetworkDependenciesEndpointsList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "OperationListResult": { + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/OperationValue" + }, + "description": "The list of compute operations" + } + }, + "description": "The List Compute Operation operation response." + }, + "OperationValue": { + "properties": { + "origin": { + "type": "string", + "readOnly": true, + "description": "The origin of the compute operation." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the compute operation." + }, + "display": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/OperationValueDisplay", + "description": "Describes the properties of a Compute Operation Value Display." + } + }, + "description": "Describes the properties of a Compute Operation value." + }, + "OperationValueDisplay": { + "properties": { + "operation": { + "type": "string", + "readOnly": true, + "description": "The display name of the compute operation." + }, + "resource": { + "type": "string", + "readOnly": true, + "description": "The display name of the resource the operation applies to." + }, + "description": { + "type": "string", + "readOnly": true, + "description": "The description of the operation." + }, + "provider": { + "type": "string", + "readOnly": true, + "description": "The resource provider for the operation." + } + }, + "description": "Describes the properties of a Compute Operation Value Display." + }, + "Resource": { + "description": "The Resource model definition.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource Id" + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Resource name" + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type" + }, + "location": { + "type": "string", + "description": "Resource location", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "required": [ + "location" + ], + "x-ms-azure-resource": true + }, + "SubResource": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource ID." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type" + } + }, + "description": "Reference to another subresource.", + "x-ms-azure-resource": true + }, + "TagsObject": { + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "description": "Tags object for patch operations." + }, + "ContainerServiceOSDisk": { + "type": "integer", + "format": "int32", + "maximum": 2048, + "minimum": 0, + "description": "OS Disk Size in GB to be used to specify the disk size for every machine in this master/agent pool. If you specify 0, it will apply the default osDisk size according to the vmSize specified." + }, + "ContainerServiceStorageProfile": { + "type": "string", + "x-ms-enum": { + "name": "ContainerServiceStorageProfileTypes", + "modelAsString": true + }, + "enum": [ + "StorageAccount", + "ManagedDisks" + ], + "description": "Storage profile specifies what kind of storage used. Choose from StorageAccount and ManagedDisks. Leave it empty, we will choose for you based on the orchestrator choice." + }, + "ContainerServiceVnetSubnetID": { + "type": "string", + "description": "specifies a subnet's resource id with subscription, resource group, vnet and subnet name" + }, + "ContainerServiceVMSize": { + "type": "string", + "x-ms-enum": { + "name": "ContainerServiceVMSizeTypes", + "modelAsString": true + }, + "description": "Size of agent VMs.", + "enum": [ + "Standard_A1", + "Standard_A10", + "Standard_A11", + "Standard_A1_v2", + "Standard_A2", + "Standard_A2_v2", + "Standard_A2m_v2", + "Standard_A3", + "Standard_A4", + "Standard_A4_v2", + "Standard_A4m_v2", + "Standard_A5", + "Standard_A6", + "Standard_A7", + "Standard_A8", + "Standard_A8_v2", + "Standard_A8m_v2", + "Standard_A9", + "Standard_B2ms", + "Standard_B2s", + "Standard_B4ms", + "Standard_B8ms", + "Standard_D1", + "Standard_D11", + "Standard_D11_v2", + "Standard_D11_v2_Promo", + "Standard_D12", + "Standard_D12_v2", + "Standard_D12_v2_Promo", + "Standard_D13", + "Standard_D13_v2", + "Standard_D13_v2_Promo", + "Standard_D14", + "Standard_D14_v2", + "Standard_D14_v2_Promo", + "Standard_D15_v2", + "Standard_D16_v3", + "Standard_D16s_v3", + "Standard_D1_v2", + "Standard_D2", + "Standard_D2_v2", + "Standard_D2_v2_Promo", + "Standard_D2_v3", + "Standard_D2s_v3", + "Standard_D3", + "Standard_D32_v3", + "Standard_D32s_v3", + "Standard_D3_v2", + "Standard_D3_v2_Promo", + "Standard_D4", + "Standard_D4_v2", + "Standard_D4_v2_Promo", + "Standard_D4_v3", + "Standard_D4s_v3", + "Standard_D5_v2", + "Standard_D5_v2_Promo", + "Standard_D64_v3", + "Standard_D64s_v3", + "Standard_D8_v3", + "Standard_D8s_v3", + "Standard_DS1", + "Standard_DS11", + "Standard_DS11_v2", + "Standard_DS11_v2_Promo", + "Standard_DS12", + "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", + "Standard_DS1_v2", + "Standard_DS2", + "Standard_DS2_v2", + "Standard_DS2_v2_Promo", + "Standard_DS3", + "Standard_DS3_v2", + "Standard_DS3_v2_Promo", + "Standard_DS4", + "Standard_DS4_v2", + "Standard_DS4_v2_Promo", + "Standard_DS5_v2", + "Standard_DS5_v2_Promo", + "Standard_E16_v3", + "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", + "Standard_E8s_v3", + "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", + "Standard_G4", + "Standard_G5", + "Standard_GS1", + "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", + "Standard_H16r", + "Standard_H8", + "Standard_H8m", + "Standard_L16s", + "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" + ] + }, + "ManagedClusterServicePrincipalProfile": { + "properties": { + "clientId": { + "type": "string", + "description": "The ID for the service principal." + }, + "secret": { + "type": "string", + "description": "The secret password associated with the service principal in plain text." + } + }, + "description": "Information about a service principal identity for the cluster to use for manipulating Azure APIs.", + "required": [ + "clientId" + ] + }, + "ContainerServiceMasterProfile": { + "properties": { + "count": { + "type": "integer", + "format": "int32", + "enum": [ + 1, + 3, + 5 + ], + "x-ms-enum": { + "name": "Count", + "modelAsString": false + }, + "description": "Number of masters (VMs) in the container service cluster. Allowed values are 1, 3, and 5. The default value is 1.", + "default": 1 + }, + "dnsPrefix": { + "type": "string", + "description": "DNS prefix to be used to create the FQDN for the master pool." + }, + "vmSize": { + "$ref": "#/definitions/ContainerServiceVMSize", + "description": "Size of agent VMs." + }, + "osDiskSizeGB": { + "$ref": "#/definitions/ContainerServiceOSDisk", + "description": "OS Disk Size in GB to be used to specify the disk size for every machine in this master/agent pool. If you specify 0, it will apply the default osDisk size according to the vmSize specified." + }, + "vnetSubnetID": { + "$ref": "#/definitions/ContainerServiceVnetSubnetID", + "description": "VNet SubnetID specifies the VNet's subnet identifier." + }, + "firstConsecutiveStaticIP": { + "type": "string", + "description": "FirstConsecutiveStaticIP used to specify the first static ip of masters.", + "default": "10.240.255.5" + }, + "storageProfile": { + "$ref": "#/definitions/ContainerServiceStorageProfile", + "description": "Storage profile specifies what kind of storage used. Choose from StorageAccount and ManagedDisks. Leave it empty, we will choose for you based on the orchestrator choice." + }, + "fqdn": { + "readOnly": true, + "type": "string", + "description": "FQDN for the master pool." + } + }, + "required": [ + "dnsPrefix", + "vmSize" + ], + "description": "Profile for the container service master." + }, + "ManagedClusterAgentPoolProfileProperties": { + "properties": { + "count": { + "type": "integer", + "format": "int32", + "description": "Number of agents (VMs) to host docker containers. Allowed values must be in the range of 0 to 1000 (inclusive) for user pools and in the range of 1 to 1000 (inclusive) for system pools. The default value is 1." + }, + "vmSize": { + "type": "string", + "description": "Size of agent VMs." + }, + "osDiskSizeGB": { + "$ref": "#/definitions/ContainerServiceOSDisk", + "description": "OS Disk Size in GB to be used to specify the disk size for every machine in this master/agent pool. If you specify 0, it will apply the default osDisk size according to the vmSize specified." + }, + "osDiskType": { + "$ref": "#/definitions/OSDiskType", + "description": "OS disk type to be used for machines in a given agent pool. Allowed values are 'Ephemeral' and 'Managed'. If unspecified, defaults to 'Ephemeral' when the VM supports ephemeral OS and has a cache disk larger than the requested OSDiskSizeGB. Otherwise, defaults to 'Managed'. May not be changed after creation." + }, + "kubeletDiskType": { + "$ref": "#/definitions/KubeletDiskType", + "description": "KubeletDiskType determines the placement of emptyDir volumes, container runtime data root, and Kubelet ephemeral storage. Currently allows one value, OS, resulting in Kubelet using the OS disk for data." + }, + "vnetSubnetID": { + "$ref": "#/definitions/ContainerServiceVnetSubnetID", + "description": "VNet SubnetID specifies the VNet's subnet identifier for nodes and maybe pods" + }, + "podSubnetID": { + "$ref": "#/definitions/ContainerServiceVnetSubnetID", + "description": "Pod SubnetID specifies the VNet's subnet identifier for pods." + }, + "maxPods": { + "type": "integer", + "format": "int32", + "description": "Maximum number of pods that can run on a node." + }, + "osType": { + "$ref": "#/definitions/OSType", + "description": "OsType to be used to specify os type. Choose from Linux and Windows. Default to Linux." + }, + "osSKU": { + "$ref": "#/definitions/OSSKU", + "description": "OsSKU to be used to specify os sku. Choose from Ubuntu(default) and CBLMariner for Linux OSType. Not applicable to Windows OSType." + }, + "maxCount": { + "type": "integer", + "format": "int32", + "description": "Maximum number of nodes for auto-scaling" + }, + "minCount": { + "type": "integer", + "format": "int32", + "description": "Minimum number of nodes for auto-scaling" + }, + "enableAutoScaling": { + "type": "boolean", + "description": "Whether to enable auto-scaler" + }, + "type": { + "$ref": "#/definitions/AgentPoolType", + "description": "AgentPoolType represents types of an agent pool" + }, + "mode": { + "$ref": "#/definitions/AgentPoolMode", + "description": "AgentPoolMode represents mode of an agent pool" + }, + "orchestratorVersion": { + "type": "string", + "description": "Version of orchestrator specified when creating the managed cluster." + }, + "nodeImageVersion": { + "readOnly": true, + "type": "string", + "description": "Version of node image" + }, + "upgradeSettings": { + "$ref": "#/definitions/AgentPoolUpgradeSettings", + "description": "Settings for upgrading the agentpool" + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The current deployment or provisioning state, which only appears in the response." + }, + "powerState": { + "readOnly": true, + "description": "Describes whether the Agent Pool is Running or Stopped", + "$ref": "#/definitions/PowerState" + }, + "availabilityZones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Availability zones for nodes. Must use VirtualMachineScaleSets AgentPoolType." + }, + "enableNodePublicIP": { + "type": "boolean", + "description": "Enable public IP for nodes" + }, + "nodePublicIPPrefixID": { + "type": "string", + "description": "Public IP Prefix ID. VM nodes use IPs assigned from this Public IP Prefix." + }, + "scaleSetPriority": { + "$ref": "#/definitions/ScaleSetPriority", + "description": "ScaleSetPriority to be used to specify virtual machine scale set priority. Default to regular." + }, + "scaleSetEvictionPolicy": { + "$ref": "#/definitions/ScaleSetEvictionPolicy", + "description": "ScaleSetEvictionPolicy to be used to specify eviction policy for Spot virtual machine scale set. Default to Delete." + }, + "spotMaxPrice": { + "$ref": "#/definitions/SpotMaxPrice", + "description": "SpotMaxPrice to be used to specify the maximum price you are willing to pay in US Dollars. Possible values are any decimal value greater than zero or -1 which indicates default price to be up-to on-demand." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Agent pool tags to be persisted on the agent pool virtual machine scale set." + }, + "nodeLabels": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Agent pool node labels to be persisted across all nodes in agent pool." + }, + "nodeTaints": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Taints added to new nodes during node pool create and scale. For example, key=value:NoSchedule." + }, + "proximityPlacementGroupID": { + "$ref": "#/definitions/ProximityPlacementGroupID", + "description": "The ID for Proximity Placement Group." + }, + "kubeletConfig": { + "$ref": "#/definitions/KubeletConfig", + "description": "KubeletConfig specifies the configuration of kubelet on agent nodes." + }, + "linuxOSConfig": { + "$ref": "#/definitions/LinuxOSConfig", + "description": "LinuxOSConfig specifies the OS configuration of linux agent nodes." + }, + "enableEncryptionAtHost": { + "type": "boolean", + "description": "Whether to enable EncryptionAtHost" + }, + "enableUltraSSD": { + "type": "boolean", + "description": "Whether to enable UltraSSD" + }, + "enableFIPS": { + "type": "boolean", + "description": "Whether to use FIPS enabled OS" + }, + "gpuInstanceProfile": { + "$ref": "#/definitions/GPUInstanceProfile", + "description": "GPUInstanceProfile to be used to specify GPU MIG instance profile for supported GPU VM SKU. Supported values are MIG1g, MIG2g, MIG3g, MIG4g and MIG7g." + } + }, + "description": "Properties for the container service agent pool profile." + }, + "ManagedClusterAgentPoolProfile": { + "allOf": [ + { + "$ref": "#/definitions/ManagedClusterAgentPoolProfileProperties" + }, + { + "properties": { + "name": { + "type": "string", + "description": "Unique name of the agent pool profile in the context of the subscription and resource group.", + "pattern": "^[a-z][a-z0-9]{0,11}$" + } + } + } + ], + "required": [ + "name" + ], + "description": "Profile for the container service agent pool." + }, + "AgentPoolType": { + "type": "string", + "enum": [ + "VirtualMachineScaleSets", + "AvailabilitySet" + ], + "x-ms-enum": { + "name": "AgentPoolType", + "modelAsString": true + }, + "description": "AgentPoolType represents types of an agent pool." + }, + "AgentPoolMode": { + "type": "string", + "enum": [ + "System", + "User" + ], + "x-ms-enum": { + "name": "AgentPoolMode", + "modelAsString": true + }, + "description": "AgentPoolMode represents mode of an agent pool." + }, + "AgentPoolListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AgentPool" + }, + "description": "The list of agent pools." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of agent pool results.", + "readOnly": true + } + }, + "description": "The response from the List Agent Pools operation." + }, + "AgentPoolUpgradeSettings": { + "properties": { + "maxSurge": { + "type": "string", + "description": "Count or percentage of additional nodes to be added during upgrade. If empty uses AKS default" + } + }, + "description": "Settings for upgrading an agentpool" + }, + "AgentPool": { + "allOf": [ + { + "$ref": "#/definitions/SubResource" + }, + { + "properties": { + "properties": { + "description": "Properties of an agent pool.", + "$ref": "#/definitions/ManagedClusterAgentPoolProfileProperties", + "x-ms-client-flatten": true + } + } + } + ], + "description": "Agent Pool." + }, + "ManagedClusterWindowsProfile": { + "properties": { + "adminUsername": { + "type": "string", + "description": "Specifies the name of the administrator account.

    **restriction:** Cannot end in \".\"

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

    **Minimum-length:** 1 character

    **Max-length:** 20 characters" + }, + "adminPassword": { + "type": "string", + "description": "Specifies the password of the administrator account.

    **Minimum-length:** 8 characters

    **Max-length:** 123 characters

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

    **Disallowed values:** \"abc@123\", \"P@$$w0rd\", \"P@ssw0rd\", \"P@ssword123\", \"Pa$$word\", \"pass@word1\", \"Password!\", \"Password1\", \"Password22\", \"iloveyou!\"" + }, + "licenseType": { + "type": "string", + "enum": [ + "None", + "Windows_Server" + ], + "x-ms-enum": { + "name": "licenseType", + "modelAsString": true + }, + "description": "The licenseType to use for Windows VMs. Windows_Server is used to enable Azure Hybrid User Benefits for Windows VMs." + }, + "enableCSIProxy": { + "type": "boolean", + "description": "Whether to enable CSI proxy." + } + }, + "required": [ + "adminUsername" + ], + "description": "Profile for Windows VMs in the container service cluster." + }, + "ContainerServiceLinuxProfile": { + "properties": { + "adminUsername": { + "type": "string", + "description": "The administrator username to use for Linux VMs.", + "pattern": "^[A-Za-z][-A-Za-z0-9_]*$" + }, + "ssh": { + "$ref": "#/definitions/ContainerServiceSshConfiguration", + "description": "SSH configuration for Linux-based VMs running on Azure." + } + }, + "required": [ + "adminUsername", + "ssh" + ], + "description": "Profile for Linux VMs in the container service cluster." + }, + "ContainerServiceNetworkProfile": { + "properties": { + "networkPlugin": { + "type": "string", + "enum": [ + "azure", + "kubenet" + ], + "default": "kubenet", + "x-ms-enum": { + "name": "NetworkPlugin", + "modelAsString": true + }, + "description": "Network plugin used for building Kubernetes network." + }, + "networkPolicy": { + "type": "string", + "enum": [ + "calico", + "azure" + ], + "x-ms-enum": { + "name": "NetworkPolicy", + "modelAsString": true + }, + "description": "Network policy used for building Kubernetes network." + }, + "networkMode": { + "type": "string", + "enum": [ + "transparent", + "bridge" + ], + "x-ms-enum": { + "name": "networkMode", + "modelAsString": true + }, + "description": "Network mode used for building Kubernetes network." + }, + "podCidr": { + "type": "string", + "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}(\\/([0-9]|[1-2][0-9]|3[0-2]))?$", + "default": "10.244.0.0/16", + "description": "A CIDR notation IP range from which to assign pod IPs when kubenet is used." + }, + "serviceCidr": { + "type": "string", + "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}(\\/([0-9]|[1-2][0-9]|3[0-2]))?$", + "default": "10.0.0.0/16", + "description": "A CIDR notation IP range from which to assign service cluster IPs. It must not overlap with any Subnet IP ranges." + }, + "dnsServiceIP": { + "type": "string", + "pattern": "^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$", + "default": "10.0.0.10", + "description": "An IP address assigned to the Kubernetes DNS service. It must be within the Kubernetes service address range specified in serviceCidr." + }, + "dockerBridgeCidr": { + "type": "string", + "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}(\\/([0-9]|[1-2][0-9]|3[0-2]))?$", + "default": "172.17.0.1/16", + "description": "A CIDR notation IP range assigned to the Docker bridge network. It must not overlap with any Subnet IP ranges or the Kubernetes service address range." + }, + "outboundType": { + "type": "string", + "enum": [ + "loadBalancer", + "userDefinedRouting" + ], + "x-ms-enum": { + "name": "outboundType", + "modelAsString": true + }, + "default": "loadBalancer", + "description": "The outbound (egress) routing method." + }, + "loadBalancerSku": { + "type": "string", + "enum": [ + "standard", + "basic" + ], + "x-ms-enum": { + "name": "loadBalancerSku", + "modelAsString": true + }, + "description": "The load balancer sku for the managed cluster." + }, + "loadBalancerProfile": { + "$ref": "#/definitions/ManagedClusterLoadBalancerProfile", + "description": "Profile of the cluster load balancer." + } + }, + "description": "Profile of network configuration." + }, + "MaintenanceConfigurationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/MaintenanceConfiguration" + }, + "description": "The list of maintenance configurations." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of maintenance configuration results.", + "readOnly": true + } + }, + "description": "The response from the List maintenance configurations operation." + }, + "SystemData": { + "description": "Metadata pertaining to creation and last modification of the resource.", + "type": "object", + "readOnly": true, + "properties": { + "createdBy": { + "type": "string", + "description": "The identity that created the resource." + }, + "createdByType": { + "type": "string", + "description": "The type of identity that created the resource.", + "enum": [ + "User", + "Application", + "ManagedIdentity", + "Key" + ], + "x-ms-enum": { + "name": "createdByType", + "modelAsString": true + } + }, + "createdAt": { + "type": "string", + "format": "date-time", + "description": "The timestamp of resource creation (UTC)." + }, + "lastModifiedBy": { + "type": "string", + "description": "The identity that last modified the resource." + }, + "lastModifiedByType": { + "type": "string", + "description": "The type of identity that last modified the resource.", + "enum": [ + "User", + "Application", + "ManagedIdentity", + "Key" + ], + "x-ms-enum": { + "name": "createdByType", + "modelAsString": true + } + }, + "lastModifiedAt": { + "type": "string", + "format": "date-time", + "description": "The type of identity that last modified the resource." + } + } + }, + "MaintenanceConfiguration": { + "allOf": [ + { + "$ref": "#/definitions/SubResource" + } + ], + "properties": { + "systemData": { + "$ref": "#/definitions/SystemData", + "readOnly": true, + "description": "The system meta data relating to this resource." + }, + "properties": { + "description": "Properties of a default maintenance configuration.", + "$ref": "#/definitions/MaintenanceConfigurationProperties", + "x-ms-client-flatten": true + } + }, + "description": "maintenance configuration." + }, + "MaintenanceConfigurationProperties": { + "properties": { + "timeInWeek": { + "type": "array", + "items": { + "$ref": "#/definitions/TimeInWeek" + }, + "description": "Weekday time slots allowed to upgrade." + }, + "notAllowedTime": { + "type": "array", + "items": { + "$ref": "#/definitions/TimeSpan" + }, + "description": "Time slots on which upgrade is not allowed." + } + }, + "description": "Default maintenance configuration properties." + }, + "TimeInWeek": { + "properties": { + "day": { + "$ref": "#/definitions/WeekDay", + "description": "A day in a week." + }, + "hourSlots": { + "type": "array", + "items": { + "$ref": "#/definitions/HourInDay" + }, + "description": "hour slots in a day." + } + }, + "description": "Time in a week." + }, + "WeekDay": { + "type": "string", + "enum": [ + "Sunday", + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday" + ], + "x-ms-enum": { + "name": "WeekDay", + "modelAsString": true + }, + "description": "The weekday enum." + }, + "HourInDay": { + "type": "integer", + "format": "int32", + "maximum": 23, + "minimum": 0, + "description": "Hour in a day." + }, + "TimeSpan": { + "properties": { + "start": { + "type": "string", + "format": "date-time", + "description": "The start of a time span" + }, + "end": { + "type": "string", + "format": "date-time", + "description": "The end of a time span" + } + }, + "description": "The time span with start and end properties." + }, + "RunCommandRequest": { + "properties": { + "command": { + "type": "string", + "description": "command to run." + }, + "context": { + "type": "string", + "description": "base64 encoded zip file, contains files required by the command" + }, + "clusterToken": { + "type": "string", + "description": "AuthToken issued for AKS AAD Server App." + } + }, + "description": "run command request", + "required": [ + "command" + ] + }, + "RunCommandResult": { + "properties": { + "id": { + "type": "string", + "description": "command id.", + "readOnly": true + }, + "properties": { + "description": "Properties of command result.", + "$ref": "#/definitions/CommandResultProperties", + "x-ms-client-flatten": true + } + }, + "description": "run command result." + }, + "CommandResultProperties": { + "properties": { + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "provisioning State" + }, + "exitCode": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "exit code of the command" + }, + "startedAt": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "time when the command started." + }, + "finishedAt": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "time when the command finished." + }, + "logs": { + "type": "string", + "readOnly": true, + "description": "command output." + }, + "reason": { + "type": "string", + "readOnly": true, + "description": "explain why provisioningState is set to failed (if so)." + } + } + }, + "ManagedClusterLoadBalancerProfile": { + "properties": { + "managedOutboundIPs": { + "properties": { + "count": { + "type": "integer", + "format": "int32", + "maximum": 100, + "minimum": 1, + "description": "Desired number of outbound IP created/managed by Azure for the cluster load balancer. Allowed values must be in the range of 1 to 100 (inclusive). The default value is 1. ", + "default": 1 + } + }, + "description": "Desired managed outbound IPs for the cluster load balancer." + }, + "outboundIPPrefixes": { + "properties": { + "publicIPPrefixes": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceReference" + }, + "description": "A list of public IP prefix resources." + } + }, + "description": "Desired outbound IP Prefix resources for the cluster load balancer." + }, + "outboundIPs": { + "properties": { + "publicIPs": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceReference" + }, + "description": "A list of public IP resources." + } + }, + "description": "Desired outbound IP resources for the cluster load balancer." + }, + "effectiveOutboundIPs": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceReference" + }, + "description": "The effective outbound IP resources of the cluster load balancer." + }, + "allocatedOutboundPorts": { + "type": "integer", + "format": "int32", + "maximum": 64000, + "minimum": 0, + "description": "Desired number of allocated SNAT ports per VM. Allowed values must be in the range of 0 to 64000 (inclusive). The default value is 0 which results in Azure dynamically allocating ports.", + "default": 0 + }, + "idleTimeoutInMinutes": { + "type": "integer", + "format": "int32", + "maximum": 120, + "minimum": 4, + "description": "Desired outbound flow idle timeout in minutes. Allowed values must be in the range of 4 to 120 (inclusive). The default value is 30 minutes.", + "default": 30 + } + }, + "description": "Profile of the managed cluster load balancer." + }, + "ResourceReference": { + "properties": { + "id": { + "type": "string", + "description": "The fully qualified Azure resource id." + } + }, + "description": "A reference to an Azure resource." + }, + "ContainerServiceSshConfiguration": { + "properties": { + "publicKeys": { + "type": "array", + "items": { + "$ref": "#/definitions/ContainerServiceSshPublicKey" + }, + "description": "The list of SSH public keys used to authenticate with Linux-based VMs. Only expect one key specified." + } + }, + "description": "SSH configuration for Linux-based VMs running on Azure.", + "required": [ + "publicKeys" + ] + }, + "ContainerServiceSshPublicKey": { + "properties": { + "keyData": { + "type": "string", + "description": "Certificate public key used to authenticate with VMs through SSH. The certificate must be in PEM format with or without headers." + } + }, + "required": [ + "keyData" + ], + "description": "Contains information about SSH certificate public key data." + }, + "ContainerServiceDiagnosticsProfile": { + "properties": { + "vmDiagnostics": { + "$ref": "#/definitions/ContainerServiceVMDiagnostics", + "description": "Profile for diagnostics on the container service VMs." + } + }, + "description": "Profile for diagnostics on the container service cluster.", + "required": [ + "vmDiagnostics" + ] + }, + "ContainerServiceVMDiagnostics": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Whether the VM diagnostic agent is provisioned on the VM." + }, + "storageUri": { + "readOnly": true, + "type": "string", + "description": "The URI of the storage account where diagnostics are stored." + } + }, + "description": "Profile for diagnostics on the container service VMs.", + "required": [ + "enabled" + ] + }, + "ManagedClusterListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ManagedCluster" + }, + "description": "The list of managed clusters." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of managed cluster results.", + "readOnly": true + } + }, + "description": "The response from the List Managed Clusters operation." + }, + "ManagedCluster": { + "properties": { + "sku": { + "$ref": "#/definitions/ManagedClusterSKU", + "description": "The managed cluster SKU." + }, + "extendedLocation": { + "$ref": "#/definitions/ExtendedLocation", + "description": "The extended location of the Virtual Machine." + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + }, + { + "properties": { + "properties": { + "description": "Properties of a managed cluster.", + "$ref": "#/definitions/ManagedClusterProperties", + "x-ms-client-flatten": true + }, + "identity": { + "$ref": "#/definitions/ManagedClusterIdentity", + "description": "The identity of the managed cluster, if configured." + } + } + } + ], + "description": "Managed cluster." + }, + "ManagedClusterProperties": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The current deployment or provisioning state, which only appears in the response." + }, + "powerState": { + "$ref": "#/definitions/PowerState", + "description": "Represents the Power State of the cluster", + "readOnly": true + }, + "maxAgentPools": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The max number of agent pools for the managed cluster." + }, + "kubernetesVersion": { + "type": "string", + "description": "Version of Kubernetes specified when creating the managed cluster." + }, + "dnsPrefix": { + "type": "string", + "description": "DNS prefix specified when creating the managed cluster." + }, + "fqdnSubdomain": { + "type": "string", + "description": "FQDN subdomain specified when creating private cluster with custom private dns zone." + }, + "fqdn": { + "readOnly": true, + "type": "string", + "description": "FQDN for the master pool." + }, + "privateFQDN": { + "readOnly": true, + "type": "string", + "description": "FQDN of private cluster." + }, + "azurePortalFQDN": { + "readOnly": true, + "type": "string", + "description": "FQDN for the master pool which used by proxy config." + }, + "agentPoolProfiles": { + "type": "array", + "items": { + "$ref": "#/definitions/ManagedClusterAgentPoolProfile" + }, + "description": "Properties of the agent pool." + }, + "linuxProfile": { + "$ref": "#/definitions/ContainerServiceLinuxProfile", + "description": "Profile for Linux VMs in the container service cluster." + }, + "windowsProfile": { + "$ref": "#/definitions/ManagedClusterWindowsProfile", + "description": "Profile for Windows VMs in the container service cluster." + }, + "servicePrincipalProfile": { + "$ref": "#/definitions/ManagedClusterServicePrincipalProfile", + "description": "Information about a service principal identity for the cluster to use for manipulating Azure APIs." + }, + "addonProfiles": { + "additionalProperties": { + "$ref": "#/definitions/ManagedClusterAddonProfile" + }, + "description": "Profile of managed cluster add-on." + }, + "podIdentityProfile": { + "$ref": "#/definitions/ManagedClusterPodIdentityProfile", + "description": "Profile of managed cluster pod identity." + }, + "nodeResourceGroup": { + "type": "string", + "description": "Name of the resource group containing agent pool nodes." + }, + "enableRBAC": { + "type": "boolean", + "description": "Whether to enable Kubernetes Role-Based Access Control." + }, + "enablePodSecurityPolicy": { + "type": "boolean", + "description": "(DEPRECATING) Whether to enable Kubernetes pod security policy (preview). This feature is set for removal on October 15th, 2020. Learn more at aka.ms/aks/azpodpolicy." + }, + "networkProfile": { + "$ref": "#/definitions/ContainerServiceNetworkProfile", + "description": "Profile of network configuration." + }, + "aadProfile": { + "$ref": "#/definitions/ManagedClusterAADProfile", + "description": "Profile of Azure Active Directory configuration." + }, + "autoUpgradeProfile": { + "$ref": "#/definitions/ManagedClusterAutoUpgradeProfile", + "description": "Profile of auto upgrade configuration." + }, + "autoScalerProfile": { + "type": "object", + "properties": { + "balance-similar-node-groups": { + "type": "string" + }, + "expander": { + "type": "string", + "enum": [ + "least-waste", + "most-pods", + "priority", + "random" + ], + "x-ms-enum": { + "name": "expander", + "modelAsString": true + } + }, + "max-empty-bulk-delete": { + "type": "string" + }, + "max-graceful-termination-sec": { + "type": "string" + }, + "max-node-provision-time": { + "type": "string" + }, + "max-total-unready-percentage": { + "type": "string" + }, + "new-pod-scale-up-delay": { + "type": "string" + }, + "ok-total-unready-count": { + "type": "string" + }, + "scan-interval": { + "type": "string" + }, + "scale-down-delay-after-add": { + "type": "string" + }, + "scale-down-delay-after-delete": { + "type": "string" + }, + "scale-down-delay-after-failure": { + "type": "string" + }, + "scale-down-unneeded-time": { + "type": "string" + }, + "scale-down-unready-time": { + "type": "string" + }, + "scale-down-utilization-threshold": { + "type": "string" + }, + "skip-nodes-with-local-storage": { + "type": "string" + }, + "skip-nodes-with-system-pods": { + "type": "string" + } + }, + "description": "Parameters to be applied to the cluster-autoscaler when enabled" + }, + "apiServerAccessProfile": { + "$ref": "#/definitions/ManagedClusterAPIServerAccessProfile", + "description": "Access profile for managed cluster API server." + }, + "diskEncryptionSetID": { + "type": "string", + "description": "ResourceId of the disk encryption set to use for enabling encryption at rest." + }, + "identityProfile": { + "additionalProperties": { + "allOf": [ + { + "$ref": "#/definitions/UserAssignedIdentity" + } + ] + }, + "description": "Identities associated with the cluster." + }, + "privateLinkResources": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + }, + "description": "Private link resources associated with the cluster." + }, + "disableLocalAccounts": { + "type": "boolean", + "description": "If set to true, getting static credential will be disabled for this cluster. Expected to only be used for AAD clusters." + }, + "httpProxyConfig": { + "$ref": "#/definitions/ManagedClusterHTTPProxyConfig", + "description": "Configurations for provisioning the cluster with HTTP proxy servers." + } + }, + "description": "Properties of the managed cluster." + }, + "PowerState": { + "description": "Describes the Power State of the cluster", + "properties": { + "code": { + "type": "string", + "description": "Tells whether the cluster is Running or Stopped", + "enum": [ + "Running", + "Stopped" + ], + "x-ms-enum": { + "name": "code", + "modelAsString": true + } + } + } + }, + "ManagedClusterAPIServerAccessProfile": { + "properties": { + "authorizedIPRanges": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Authorized IP Ranges to kubernetes API server." + }, + "enablePrivateCluster": { + "type": "boolean", + "description": "Whether to create the cluster as a private cluster or not." + }, + "privateDNSZone": { + "type": "string", + "description": "Private dns zone mode for private cluster. " + }, + "enablePrivateClusterPublicFQDN": { + "type": "boolean", + "description": "Whether to create additional public FQDN for private cluster or not." + } + }, + "description": "Access profile for managed cluster API server." + }, + "ManagedClusterIdentity": { + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of the system assigned identity which is used by master components." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant id of the system assigned identity which is used by master components." + }, + "type": { + "type": "string", + "description": "The type of identity used for the managed cluster. Type 'SystemAssigned' will use an implicitly created identity in master components and an auto-created user assigned identity in MC_ resource group in agent nodes. Type 'None' will not use MSI for the managed cluster, service principal will be used instead.", + "enum": [ + "SystemAssigned", + "UserAssigned", + "None" + ], + "x-ms-enum": { + "name": "ResourceIdentityType", + "modelAsString": false + } + }, + "userAssignedIdentities": { + "type": "object", + "additionalProperties": { + "type": "object", + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of user assigned identity." + }, + "clientId": { + "readOnly": true, + "type": "string", + "description": "The client id of user assigned identity." + } + } + }, + "description": "The user identity associated with the managed cluster. This identity will be used in control plane and only one user assigned identity is allowed. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'." + } + }, + "description": "Identity for the managed cluster." + }, + "UserAssignedIdentity": { + "properties": { + "resourceId": { + "type": "string", + "description": "The resource id of the user assigned identity." + }, + "clientId": { + "type": "string", + "description": "The client id of the user assigned identity." + }, + "objectId": { + "type": "string", + "description": "The object id of the user assigned identity." + } + } + }, + "ManagedClusterAccessProfile": { + "allOf": [ + { + "$ref": "#/definitions/Resource" + }, + { + "properties": { + "properties": { + "description": "AccessProfile of a managed cluster.", + "$ref": "#/definitions/AccessProfile", + "x-ms-client-flatten": true + } + } + } + ], + "description": "Managed cluster Access Profile.", + "x-ms-azure-resource": false + }, + "AccessProfile": { + "type": "object", + "properties": { + "kubeConfig": { + "type": "string", + "format": "byte", + "description": "Base64-encoded Kubernetes configuration file." + } + }, + "description": "Profile for enabling a user to access a managed cluster." + }, + "ManagedClusterPoolUpgradeProfile": { + "properties": { + "kubernetesVersion": { + "type": "string", + "description": "Kubernetes version (major, minor, patch)." + }, + "name": { + "type": "string", + "description": "Pool name." + }, + "osType": { + "$ref": "#/definitions/OSType", + "enum": [ + "Linux", + "Windows" + ], + "x-ms-enum": { + "name": "ContainerServiceOSTypes", + "modelAsString": true + }, + "description": "OsType to be used to specify os type. Choose from Linux and Windows. Default to Linux." + }, + "upgrades": { + "type": "array", + "items": { + "type": "object", + "properties": { + "kubernetesVersion": { + "type": "string", + "description": "Kubernetes version (major, minor, patch)." + }, + "isPreview": { + "type": "boolean", + "description": "Whether Kubernetes version is currently in preview." + } + } + }, + "description": "List of orchestrator types and versions available for upgrade." + } + }, + "required": [ + "kubernetesVersion", + "osType" + ], + "description": "The list of available upgrade versions." + }, + "ManagedClusterUpgradeProfileProperties": { + "properties": { + "controlPlaneProfile": { + "$ref": "#/definitions/ManagedClusterPoolUpgradeProfile", + "description": "The list of available upgrade versions for the control plane." + }, + "agentPoolProfiles": { + "type": "array", + "items": { + "$ref": "#/definitions/ManagedClusterPoolUpgradeProfile" + }, + "description": "The list of available upgrade versions for agent pools." + } + }, + "required": [ + "controlPlaneProfile", + "agentPoolProfiles" + ], + "description": "Control plane and agent pool upgrade profiles." + }, + "ManagedClusterAutoUpgradeProfile": { + "properties": { + "upgradeChannel": { + "type": "string", + "enum": [ + "rapid", + "stable", + "patch", + "node-image", + "none" + ], + "x-ms-enum": { + "name": "upgradeChannel", + "modelAsString": true + }, + "description": "upgrade channel for auto upgrade." + } + }, + "description": "Auto upgrade profile for a managed cluster." + }, + "ManagedClusterAADProfile": { + "properties": { + "managed": { + "type": "boolean", + "description": "Whether to enable managed AAD." + }, + "enableAzureRBAC": { + "type": "boolean", + "description": "Whether to enable Azure RBAC for Kubernetes authorization." + }, + "adminGroupObjectIDs": { + "type": "array", + "items": { + "type": "string" + }, + "description": "AAD group object IDs that will have admin role of the cluster." + }, + "clientAppID": { + "type": "string", + "description": "The client AAD application ID." + }, + "serverAppID": { + "type": "string", + "description": "The server AAD application ID." + }, + "serverAppSecret": { + "type": "string", + "description": "The server AAD application secret." + }, + "tenantID": { + "type": "string", + "description": "The AAD tenant ID to use for authentication. If not specified, will use the tenant of the deployment subscription." + } + }, + "description": "AADProfile specifies attributes for Azure Active Directory integration." + }, + "ManagedClusterAddonProfile": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Whether the add-on is enabled or not." + }, + "config": { + "additionalProperties": { + "type": "string" + }, + "description": "Key-value pairs for configuring an add-on." + }, + "identity": { + "readOnly": true, + "description": "Information of user assigned identity used by this add-on.", + "allOf": [ + { + "$ref": "#/definitions/UserAssignedIdentity" + } + ] + } + }, + "required": [ + "enabled" + ], + "description": "A Kubernetes add-on profile for a managed cluster." + }, + "ManagedClusterPodIdentity": { + "properties": { + "name": { + "type": "string", + "description": "Name of the pod identity." + }, + "namespace": { + "type": "string", + "description": "Namespace of the pod identity." + }, + "bindingSelector": { + "type": "string", + "description": "Binding selector to use for the AzureIdentityBinding resource." + }, + "identity": { + "$ref": "#/definitions/UserAssignedIdentity", + "description": "Information of the user assigned identity." + }, + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "The current provisioning state of the pod identity.", + "enum": [ + "Assigned", + "Updating", + "Deleting", + "Failed" + ], + "x-ms-enum": { + "name": "ManagedClusterPodIdentityProvisioningState", + "modelAsString": true + } + }, + "provisioningInfo": { + "readOnly": true, + "properties": { + "error": { + "$ref": "#/definitions/CloudError", + "description": "Pod identity assignment error (if any)." + } + } + } + }, + "required": [ + "name", + "namespace", + "identity" + ] + }, + "ManagedClusterPodIdentityException": { + "properties": { + "name": { + "type": "string", + "description": "Name of the pod identity exception." + }, + "namespace": { + "type": "string", + "description": "Namespace of the pod identity exception." + }, + "podLabels": { + "type": "object", + "description": "Pod labels to match.", + "additionalProperties": { + "type": "string" + } + } + }, + "required": [ + "name", + "namespace", + "podLabels" + ] + }, + "ManagedClusterPodIdentityProfile": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Whether the pod identity addon is enabled." + }, + "allowNetworkPluginKubenet": { + "type": "boolean", + "description": "Customer consent for enabling AAD pod identity addon in cluster using Kubenet network plugin." + }, + "userAssignedIdentities": { + "description": "User assigned pod identity settings.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedClusterPodIdentity" + } + }, + "userAssignedIdentityExceptions": { + "description": "User assigned pod identity exception settings.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedClusterPodIdentityException" + } + } + } + }, + "ManagedClusterUpgradeProfile": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Id of upgrade profile." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Name of upgrade profile." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of upgrade profile." + }, + "properties": { + "$ref": "#/definitions/ManagedClusterUpgradeProfileProperties", + "description": "Properties of upgrade profile.", + "x-ms-client-flatten": true + } + }, + "required": [ + "properties" + ], + "description": "The list of available upgrades for compute pools." + }, + "AgentPoolUpgradeProfile": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Id of the agent pool upgrade profile." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Name of the agent pool upgrade profile." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the agent pool upgrade profile." + }, + "properties": { + "$ref": "#/definitions/AgentPoolUpgradeProfileProperties", + "description": "Properties of agent pool upgrade profile.", + "x-ms-client-flatten": true + } + }, + "required": [ + "properties" + ], + "description": "The list of available upgrades for an agent pool." + }, + "AgentPoolUpgradeProfileProperties": { + "properties": { + "kubernetesVersion": { + "type": "string", + "description": "Kubernetes version (major, minor, patch)." + }, + "osType": { + "$ref": "#/definitions/OSType", + "enum": [ + "Linux", + "Windows" + ], + "x-ms-enum": { + "name": "ContainerServiceOSTypes", + "modelAsString": true + }, + "description": "OsType to be used to specify os type. Choose from Linux and Windows. Default to Linux." + }, + "upgrades": { + "type": "array", + "items": { + "type": "object", + "properties": { + "kubernetesVersion": { + "type": "string", + "description": "Kubernetes version (major, minor, patch)." + }, + "isPreview": { + "type": "boolean", + "description": "Whether Kubernetes version is currently in preview." + } + } + }, + "description": "List of orchestrator types and versions available for upgrade." + }, + "latestNodeImageVersion": { + "type": "string", + "description": "LatestNodeImageVersion is the latest AKS supported node image version." + } + }, + "required": [ + "kubernetesVersion", + "osType" + ], + "description": "The list of available upgrade versions." + }, + "AgentPoolAvailableVersions": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Id of the agent pool available versions." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Name of the agent pool available versions." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the agent pool available versions." + }, + "properties": { + "$ref": "#/definitions/AgentPoolAvailableVersionsProperties", + "description": "Properties of agent pool available versions.", + "x-ms-client-flatten": true + } + }, + "required": [ + "properties" + ], + "description": "The list of available versions for an agent pool." + }, + "AgentPoolAvailableVersionsProperties": { + "properties": { + "agentPoolVersions": { + "type": "array", + "items": { + "type": "object", + "properties": { + "default": { + "type": "boolean", + "description": "Whether this version is the default agent pool version." + }, + "kubernetesVersion": { + "type": "string", + "description": "Kubernetes version (major, minor, patch)." + }, + "isPreview": { + "type": "boolean", + "description": "Whether Kubernetes version is currently in preview." + } + } + }, + "description": "List of versions available for agent pool." + } + }, + "description": "The list of available agent pool versions." + }, + "OSType": { + "type": "string", + "default": "Linux", + "enum": [ + "Linux", + "Windows" + ], + "x-ms-enum": { + "name": "OSType", + "modelAsString": true + }, + "description": "OsType to be used to specify os type. Choose from Linux and Windows. Default to Linux." + }, + "OSSKU": { + "type": "string", + "enum": [ + "Ubuntu", + "CBLMariner" + ], + "x-ms-enum": { + "name": "OSSKU", + "modelAsString": true + }, + "description": "OsSKU to be used to specify os sku. Choose from Ubuntu(default) and CBLMariner for Linux OSType. Not applicable to Windows OSType." + }, + "ScaleSetPriority": { + "type": "string", + "default": "Regular", + "enum": [ + "Spot", + "Regular" + ], + "x-ms-enum": { + "name": "ScaleSetPriority", + "modelAsString": true + }, + "description": "ScaleSetPriority to be used to specify virtual machine scale set priority. Default to regular." + }, + "ScaleSetEvictionPolicy": { + "type": "string", + "default": "Delete", + "enum": [ + "Delete", + "Deallocate" + ], + "x-ms-enum": { + "name": "ScaleSetEvictionPolicy", + "modelAsString": true + }, + "description": "ScaleSetEvictionPolicy to be used to specify eviction policy for Spot virtual machine scale set. Default to Delete." + }, + "SpotMaxPrice": { + "type": "number", + "default": -1, + "description": "SpotMaxPrice to be used to specify the maximum price you are willing to pay in US Dollars. Possible values are any decimal value greater than zero or -1 which indicates default price to be up-to on-demand." + }, + "ProximityPlacementGroupID": { + "type": "string", + "description": "The ID for Proximity Placement Group." + }, + "CredentialResults": { + "properties": { + "kubeconfigs": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/CredentialResult" + }, + "description": "Base64-encoded Kubernetes configuration file." + } + }, + "description": "The list of credential result response." + }, + "CredentialResult": { + "type": "object", + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the credential." + }, + "value": { + "type": "string", + "format": "byte", + "readOnly": true, + "description": "Base64-encoded Kubernetes configuration file." + } + }, + "description": "The credential result response." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorBody", + "description": "Details about the error." + } + }, + "description": "An error response from the Container service." + }, + "CloudErrorBody": { + "x-ms-external": true, + "properties": { + "code": { + "type": "string", + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "type": "string", + "description": "A message describing the error, intended to be suitable for display in a user interface." + }, + "target": { + "type": "string", + "description": "The target of the particular error. For example, the name of the property in error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/CloudErrorBody" + }, + "description": "A list of additional details about the error." + } + }, + "description": "An error response from the Container service." + }, + "ManagedClusterSKU": { + "properties": { + "name": { + "type": "string", + "description": "Name of a managed cluster SKU.", + "enum": [ + "Basic" + ], + "x-ms-enum": { + "name": "ManagedClusterSKUName", + "modelAsString": true + } + }, + "tier": { + "type": "string", + "description": "Tier of a managed cluster SKU.", + "enum": [ + "Paid", + "Free" + ], + "x-ms-enum": { + "name": "ManagedClusterSKUTier", + "modelAsString": true + } + } + } + }, + "PrivateEndpointConnectionListResult": { + "type": "object", + "description": "A list of private endpoint connections", + "properties": { + "value": { + "description": "The collection value.", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + } + } + }, + "PrivateEndpointConnection": { + "description": "A private endpoint connection", + "type": "object", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ID of the private endpoint connection." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the private endpoint connection.", + "externalDocs": { + "url": "https://aka.ms/search-naming-rules" + } + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + }, + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "description": "The properties of a private endpoint connection.", + "x-ms-client-flatten": true + } + }, + "x-ms-azure-resource": true + }, + "PrivateEndpointConnectionProperties": { + "type": "object", + "description": "Properties of a private endpoint connection.", + "properties": { + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "The current provisioning state.", + "enum": [ + "Succeeded", + "Creating", + "Deleting", + "Failed" + ], + "x-ms-enum": { + "name": "PrivateEndpointConnectionProvisioningState", + "modelAsString": true + } + }, + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpoint", + "description": "The resource of private endpoint." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionState", + "description": "A collection of information about the state of the connection between service consumer and provider." + } + }, + "required": [ + "privateLinkServiceConnectionState" + ] + }, + "PrivateEndpoint": { + "type": "object", + "description": "Private endpoint which a connection belongs to.", + "properties": { + "id": { + "description": "The resource Id for private endpoint", + "type": "string" + } + } + }, + "PrivateLinkServiceConnectionState": { + "description": "The state of a private link service connection.", + "type": "object", + "properties": { + "status": { + "enum": [ + "Pending", + "Approved", + "Rejected", + "Disconnected" + ], + "type": "string", + "description": "The private link service connection status.", + "x-ms-enum": { + "name": "ConnectionStatus", + "modelAsString": true + } + }, + "description": { + "type": "string", + "description": "The private link service connection description." + } + } + }, + "PrivateLinkResourcesListResult": { + "type": "object", + "description": "A list of private link resources", + "properties": { + "value": { + "description": "The collection value.", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + } + } + } + }, + "PrivateLinkResource": { + "description": "A private link resource", + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "The ID of the private link resource." + }, + "name": { + "type": "string", + "description": "The name of the private link resource.", + "externalDocs": { + "url": "https://aka.ms/search-naming-rules" + } + }, + "type": { + "type": "string", + "description": "The resource type." + }, + "groupId": { + "type": "string", + "description": "The group ID of the resource." + }, + "requiredMembers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "RequiredMembers of the resource" + }, + "privateLinkServiceID": { + "readOnly": true, + "type": "string", + "description": "The private link service ID of the resource, this field is exposed only to NRP internally." + } + } + }, + "OSDiskType": { + "type": "string", + "enum": [ + "Managed", + "Ephemeral" + ], + "x-ms-enum": { + "name": "OSDiskType", + "modelAsString": true + }, + "description": "OSDiskType represents the type of an OS disk on an agent pool." + }, + "KubeletDiskType": { + "type": "string", + "enum": [ + "OS", + "Temporary" + ], + "x-ms-enum": { + "name": "KubeletDiskType", + "modelAsString": true + }, + "description": "KubeletDiskType determines the placement of emptyDir volumes, container runtime data root, and Kubelet ephemeral storage. Allowed values: 'OS', 'Temporary' (preview)." + }, + "KubeletConfig": { + "description": "Kubelet configurations of agent nodes.", + "type": "object", + "properties": { + "cpuManagerPolicy": { + "type": "string", + "description": "CPU Manager policy to use." + }, + "cpuCfsQuota": { + "type": "boolean", + "description": "Enable CPU CFS quota enforcement for containers that specify CPU limits." + }, + "cpuCfsQuotaPeriod": { + "type": "string", + "description": "Sets CPU CFS quota period value." + }, + "imageGcHighThreshold": { + "type": "integer", + "format": "int32", + "description": "The percent of disk usage after which image garbage collection is always run." + }, + "imageGcLowThreshold": { + "type": "integer", + "format": "int32", + "description": "The percent of disk usage before which image garbage collection is never run." + }, + "topologyManagerPolicy": { + "type": "string", + "description": "Topology Manager policy to use." + }, + "allowedUnsafeSysctls": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Allowlist of unsafe sysctls or unsafe sysctl patterns (ending in `*`)." + }, + "failSwapOn": { + "type": "boolean", + "description": "If set to true it will make the Kubelet fail to start if swap is enabled on the node." + }, + "containerLogMaxSizeMB": { + "type": "integer", + "format": "int32", + "description": "The maximum size (e.g. 10Mi) of container log file before it is rotated." + }, + "containerLogMaxFiles": { + "type": "integer", + "format": "int32", + "description": "The maximum number of container log files that can be present for a container. The number must be ≥ 2.", + "minimum": 2 + }, + "podMaxPids": { + "type": "integer", + "format": "int32", + "description": "The maximum number of processes per pod." + } + } + }, + "LinuxOSConfig": { + "description": "OS configurations of Linux agent nodes.", + "type": "object", + "properties": { + "sysctls": { + "$ref": "#/definitions/SysctlConfig", + "description": "Sysctl settings for Linux agent nodes." + }, + "transparentHugePageEnabled": { + "type": "string", + "description": "Transparent Huge Page enabled configuration." + }, + "transparentHugePageDefrag": { + "type": "string", + "description": "Transparent Huge Page defrag configuration." + }, + "swapFileSizeMB": { + "type": "integer", + "format": "int32", + "description": "SwapFileSizeMB specifies size in MB of a swap file will be created on each node." + } + } + }, + "SysctlConfig": { + "description": "Sysctl settings for Linux agent nodes.", + "type": "object", + "properties": { + "netCoreSomaxconn": { + "type": "integer", + "format": "int32", + "description": "Sysctl setting net.core.somaxconn." + }, + "netCoreNetdevMaxBacklog": { + "type": "integer", + "format": "int32", + "description": "Sysctl setting net.core.netdev_max_backlog." + }, + "netCoreRmemDefault": { + "type": "integer", + "format": "int32", + "description": "Sysctl setting net.core.rmem_default." + }, + "netCoreRmemMax": { + "type": "integer", + "format": "int32", + "description": "Sysctl setting net.core.rmem_max." + }, + "netCoreWmemDefault": { + "type": "integer", + "format": "int32", + "description": "Sysctl setting net.core.wmem_default." + }, + "netCoreWmemMax": { + "type": "integer", + "format": "int32", + "description": "Sysctl setting net.core.wmem_max." + }, + "netCoreOptmemMax": { + "type": "integer", + "format": "int32", + "description": "Sysctl setting net.core.optmem_max." + }, + "netIpv4TcpMaxSynBacklog": { + "type": "integer", + "format": "int32", + "description": "Sysctl setting net.ipv4.tcp_max_syn_backlog." + }, + "netIpv4TcpMaxTwBuckets": { + "type": "integer", + "format": "int32", + "description": "Sysctl setting net.ipv4.tcp_max_tw_buckets." + }, + "netIpv4TcpFinTimeout": { + "type": "integer", + "format": "int32", + "description": "Sysctl setting net.ipv4.tcp_fin_timeout." + }, + "netIpv4TcpKeepaliveTime": { + "type": "integer", + "format": "int32", + "description": "Sysctl setting net.ipv4.tcp_keepalive_time." + }, + "netIpv4TcpKeepaliveProbes": { + "type": "integer", + "format": "int32", + "description": "Sysctl setting net.ipv4.tcp_keepalive_probes." + }, + "netIpv4TcpkeepaliveIntvl": { + "type": "integer", + "format": "int32", + "description": "Sysctl setting net.ipv4.tcp_keepalive_intvl." + }, + "netIpv4TcpTwReuse": { + "type": "boolean", + "description": "Sysctl setting net.ipv4.tcp_tw_reuse." + }, + "netIpv4IpLocalPortRange": { + "type": "string", + "description": "Sysctl setting net.ipv4.ip_local_port_range." + }, + "netIpv4NeighDefaultGcThresh1": { + "type": "integer", + "format": "int32", + "description": "Sysctl setting net.ipv4.neigh.default.gc_thresh1." + }, + "netIpv4NeighDefaultGcThresh2": { + "type": "integer", + "format": "int32", + "description": "Sysctl setting net.ipv4.neigh.default.gc_thresh2." + }, + "netIpv4NeighDefaultGcThresh3": { + "type": "integer", + "format": "int32", + "description": "Sysctl setting net.ipv4.neigh.default.gc_thresh3." + }, + "netNetfilterNfConntrackMax": { + "type": "integer", + "format": "int32", + "description": "Sysctl setting net.netfilter.nf_conntrack_max." + }, + "netNetfilterNfConntrackBuckets": { + "type": "integer", + "format": "int32", + "description": "Sysctl setting net.netfilter.nf_conntrack_buckets." + }, + "fsInotifyMaxUserWatches": { + "type": "integer", + "format": "int32", + "description": "Sysctl setting fs.inotify.max_user_watches." + }, + "fsFileMax": { + "type": "integer", + "format": "int32", + "description": "Sysctl setting fs.file-max." + }, + "fsAioMaxNr": { + "type": "integer", + "format": "int32", + "description": "Sysctl setting fs.aio-max-nr." + }, + "fsNrOpen": { + "type": "integer", + "format": "int32", + "description": "Sysctl setting fs.nr_open." + }, + "kernelThreadsMax": { + "type": "integer", + "format": "int32", + "description": "Sysctl setting kernel.threads-max." + }, + "vmMaxMapCount": { + "type": "integer", + "format": "int32", + "description": "Sysctl setting vm.max_map_count." + }, + "vmSwappiness": { + "type": "integer", + "format": "int32", + "description": "Sysctl setting vm.swappiness." + }, + "vmVfsCachePressure": { + "type": "integer", + "format": "int32", + "description": "Sysctl setting vm.vfs_cache_pressure." + } + } + }, + "ManagedClusterHTTPProxyConfig": { + "description": "Configurations for provisioning the cluster with HTTP proxy servers.", + "type": "object", + "properties": { + "httpProxy": { + "type": "string", + "description": "HTTP proxy server endpoint to use." + }, + "httpsProxy": { + "type": "string", + "description": "HTTPS proxy server endpoint to use." + }, + "noProxy": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Endpoints that should not go through proxy." + }, + "trustedCa": { + "type": "string", + "description": "Alternative CA cert to use for connecting to proxy servers." + } + } + }, + "GPUInstanceProfile": { + "type": "string", + "enum": [ + "MIG1g", + "MIG2g", + "MIG3g", + "MIG4g", + "MIG7g" + ], + "x-ms-enum": { + "name": "GPUInstanceProfile ", + "modelAsString": true + }, + "description": "GPUInstanceProfile to be used to specify GPU MIG instance profile for supported GPU VM SKU. Supported values are MIG1g, MIG2g, MIG3g, MIG4g and MIG7g." + }, + "ExtendedLocationType": { + "type": "string", + "description": "The type of extendedLocation.", + "enum": [ + "EdgeZone" + ], + "x-ms-enum": { + "name": "ExtendedLocationTypes", + "modelAsString": true + } + }, + "ExtendedLocation": { + "description": "The complex type of the extended location.", + "properties": { + "name": { + "type": "string", + "description": "The name of the extended location." + }, + "type": { + "$ref": "#/definitions/ExtendedLocationType", + "description": "The type of the extended location." + } + } + }, + "OSOptionProperty": { + "properties": { + "os-type": { + "type": "string", + "description": "OS type." + }, + "enable-fips-image": { + "type": "boolean", + "description": "Whether FIPS image is enabled." + } + }, + "required": [ + "os-type", + "enable-fips-image" + ], + "description": "OS option property." + }, + "OSOptionPropertyList": { + "properties": { + "osOptionPropertyList": { + "type": "array", + "items": { + "$ref": "#/definitions/OSOptionProperty" + }, + "description": "The list of OS option properties." + } + }, + "required": [ + "osOptionPropertyList" + ], + "description": "The list of OS option properties." + }, + "OSOptionProfile": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Id of the OS option profile." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Name of the OS option profile." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the OS option profile." + }, + "properties": { + "$ref": "#/definitions/OSOptionPropertyList", + "description": "The list of an OS option properties.", + "x-ms-client-flatten": true + } + }, + "required": [ + "properties" + ], + "description": "The OS option profile." + }, + "EndpointDependency": { + "description": "A domain name that AKS agent nodes are reaching at.", + "type": "object", + "properties": { + "domainName": { + "description": "The domain name of the dependency.", + "type": "string" + }, + "endpointDetails": { + "description": "The Ports and Protocols used when connecting to domainName.", + "type": "array", + "items": { + "$ref": "#/definitions/EndpointDetail" + } + } + } + }, + "EndpointDetail": { + "description": "connect information from the AKS agent nodes to a single endpoint.", + "type": "object", + "properties": { + "ipAddress": { + "description": "An IP Address that Domain Name currently resolves to.", + "type": "string" + }, + "port": { + "format": "int32", + "description": "The port an endpoint is connected to.", + "type": "integer" + }, + "protocol": { + "description": "The protocol used for connection", + "type": "string" + }, + "description": { + "description": "Description of the detail", + "type": "string" + } + } + }, + "OutboundEnvironmentEndpoint": { + "description": "Egress endpoints which AKS agent nodes connect to for common purpose.", + "type": "object", + "properties": { + "category": { + "description": "The category of endpoints accessed by the AKS agent node, e.g. azure-resource-management, apiserver, etc.", + "type": "string" + }, + "endpoints": { + "description": "The endpoints that AKS agent nodes connect to", + "type": "array", + "items": { + "$ref": "#/definitions/EndpointDependency" + } + } + } + }, + "OutboundEnvironmentEndpointCollection": { + "description": "Collection of OutboundEnvironmentEndpoint", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/OutboundEnvironmentEndpoint" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + } + }, + "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.", + "x-ms-parameter-location": "client" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client Api Version.", + "x-ms-parameter-location": "client" + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "minLength": 1, + "description": "The name of the resource group.", + "x-ms-parameter-location": "method" + }, + "ResourceNameParameter": { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 63, + "pattern": "^[a-zA-Z0-9]$|^[a-zA-Z0-9][-_a-zA-Z0-9]{0,61}[a-zA-Z0-9]$", + "description": "The name of the managed cluster resource.", + "x-ms-parameter-location": "method" + }, + "LocationParameter": { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The name of a supported Azure region.", + "x-ms-parameter-location": "method" + }, + "ResourceTypeParameter": { + "name": "resource-type", + "in": "query", + "required": false, + "type": "string", + "description": "resource type for which the OS options needs to be returned", + "x-ms-parameter-location": "method" + }, + "ServerFqdnParameter": { + "name": "server-fqdn", + "in": "query", + "required": false, + "type": "string", + "description": "server fqdn type for credentials to be returned", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/containerservice/resource-manager/readme.azureresourceschema.md b/specification/containerservice/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 87ee99b9b437..000000000000 --- a/specification/containerservice/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,349 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-containerservice-2021-02-01 - - tag: schema-containerservice-2020-12-01 - - tag: schema-containerservice-2020-11-01 - - tag: schema-containerservice-2020-09-01 - - tag: schema-containerservice-2020-07-01 - - tag: schema-containerservice-2020-06-01 - - tag: schema-containerservice-2020-04-01 - - tag: schema-containerservice-2020-03-01 - - tag: schema-containerservice-2020-02-01 - - tag: schema-containerservice-2020-01-01 - - tag: schema-containerservice-2019-11-01 - - tag: schema-containerservice-2019-10-27-preview - - tag: schema-containerservice-2019-10-01 - - tag: schema-containerservice-2019-09-30 - - tag: schema-containerservice-2019-08-01 - - tag: schema-containerservice-2019-06-01 - - tag: schema-containerservice-2019-04-30 - - tag: schema-containerservice-2019-04-01 - - tag: schema-containerservice-2019-02-01 - - tag: schema-containerservice-2018-09-30-preview - - tag: schema-containerservice-2018-08-01-preview - - tag: schema-containerservice-2018-03-31 - - tag: schema-containerservice-2017-09-30 - - tag: schema-containerservice-2017-08-31 - - tag: schema-containerservice-2017-07-01 - - tag: schema-containerservice-2017-01-31 - - tag: schema-containerservice-2016-09-30 - - tag: schema-containerservice-2016-03-30 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-containerservice-2021-02-01 and azureresourceschema - -``` yaml $(tag) == 'schema-containerservice-2021-02-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerService/stable/2021-02-01/managedClusters.json -``` - -### Tag: schema-containerservice-2020-12-01 and azureresourceschema - -``` yaml $(tag) == 'schema-containerservice-2020-12-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerService/stable/2020-12-01/managedClusters.json - -``` - -### Tag: schema-containerservice-2020-11-01 and azureresourceschema - -``` yaml $(tag) == 'schema-containerservice-2020-11-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerService/stable/2020-11-01/managedClusters.json - -``` - -### Tag: schema-containerservice-2020-09-01 and azureresourceschema - -``` yaml $(tag) == 'schema-containerservice-2020-09-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerService/stable/2020-09-01/managedClusters.json - -``` - -### Tag: schema-containerservice-2020-07-01 and azureresourceschema - -``` yaml $(tag) == 'schema-containerservice-2020-07-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerService/stable/2020-07-01/managedClusters.json - -``` - -### Tag: schema-containerservice-2020-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-containerservice-2020-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerService/stable/2020-06-01/managedClusters.json - -``` - -### Tag: schema-containerservice-2020-04-01 and azureresourceschema - -``` yaml $(tag) == 'schema-containerservice-2020-04-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerService/stable/2020-04-01/managedClusters.json - -``` - -### Tag: schema-containerservice-2020-03-01 and azureresourceschema - -``` yaml $(tag) == 'schema-containerservice-2020-03-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerService/stable/2020-03-01/managedClusters.json - -``` - -### Tag: schema-containerservice-2020-02-01 and azureresourceschema - -``` yaml $(tag) == 'schema-containerservice-2020-02-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerService/stable/2020-02-01/managedClusters.json - -``` - -### Tag: schema-containerservice-2020-01-01 and azureresourceschema - -``` yaml $(tag) == 'schema-containerservice-2020-01-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerService/stable/2020-01-01/managedClusters.json - -``` - -### Tag: schema-containerservice-2019-11-01 and azureresourceschema - -``` yaml $(tag) == 'schema-containerservice-2019-11-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerService/stable/2019-11-01/managedClusters.json - -``` - -### Tag: schema-containerservice-2019-10-27-preview and azureresourceschema - -``` yaml $(tag) == 'schema-containerservice-2019-10-27-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerService/preview/2019-10-27-preview/openShiftManagedClusters.json - -``` - -### Tag: schema-containerservice-2019-10-01 and azureresourceschema - -``` yaml $(tag) == 'schema-containerservice-2019-10-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerService/stable/2019-10-01/managedClusters.json - -``` - -### Tag: schema-containerservice-2019-09-30 and azureresourceschema - -``` yaml $(tag) == 'schema-containerservice-2019-09-30' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerService/preview/2019-09-30/openShiftManagedClusters.json - -``` - -### Tag: schema-containerservice-2019-08-01 and azureresourceschema - -``` yaml $(tag) == 'schema-containerservice-2019-08-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerService/stable/2019-08-01/location.json - - Microsoft.ContainerService/stable/2019-08-01/managedClusters.json - -``` - -### Tag: schema-containerservice-2019-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-containerservice-2019-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerService/stable/2019-06-01/location.json - - Microsoft.ContainerService/stable/2019-06-01/managedClusters.json - -``` - -### Tag: schema-containerservice-2019-04-30 and azureresourceschema - -``` yaml $(tag) == 'schema-containerservice-2019-04-30' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerService/stable/2019-04-30/openShiftManagedClusters.json - -``` - -### Tag: schema-containerservice-2019-04-01 and azureresourceschema - -``` yaml $(tag) == 'schema-containerservice-2019-04-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerService/stable/2019-04-01/managedClusters.json - - Microsoft.ContainerService/stable/2019-04-01/location.json - -``` - -### Tag: schema-containerservice-2019-02-01 and azureresourceschema - -``` yaml $(tag) == 'schema-containerservice-2019-02-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerService/stable/2019-02-01/managedClusters.json - -``` - -### Tag: schema-containerservice-2018-09-30-preview and azureresourceschema - -``` yaml $(tag) == 'schema-containerservice-2018-09-30-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerService/preview/2018-09-30-preview/openShiftManagedClusters.json - -``` - -### Tag: schema-containerservice-2018-08-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-containerservice-2018-08-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerService/preview/2018-08-01-preview/managedClusters.json - -``` - -### Tag: schema-containerservice-2018-03-31 and azureresourceschema - -``` yaml $(tag) == 'schema-containerservice-2018-03-31' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerService/stable/2018-03-31/managedClusters.json - -``` - -### Tag: schema-containerservice-2017-09-30 and azureresourceschema - -``` yaml $(tag) == 'schema-containerservice-2017-09-30' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerService/stable/2017-09-30/location.json - -``` - -### Tag: schema-containerservice-2017-08-31 and azureresourceschema - -``` yaml $(tag) == 'schema-containerservice-2017-08-31' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerService/stable/2017-08-31/managedClusters.json - -``` - -### Tag: schema-containerservice-2017-07-01 and azureresourceschema - -``` yaml $(tag) == 'schema-containerservice-2017-07-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerService/stable/2017-07-01/containerService.json - -``` - -### Tag: schema-containerservice-2017-01-31 and azureresourceschema - -``` yaml $(tag) == 'schema-containerservice-2017-01-31' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerService/stable/2017-01-31/containerService.json - -``` - -### Tag: schema-containerservice-2016-09-30 and azureresourceschema - -``` yaml $(tag) == 'schema-containerservice-2016-09-30' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerService/stable/2016-09-30/containerService.json - -``` - -### Tag: schema-containerservice-2016-03-30 and azureresourceschema - -``` yaml $(tag) == 'schema-containerservice-2016-03-30' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ContainerService/stable/2016-03-30/containerService.json - -``` diff --git a/specification/containerservice/resource-manager/readme.go.md b/specification/containerservice/resource-manager/readme.go.md index 2567d50d7c2b..6981ca930982 100644 --- a/specification/containerservice/resource-manager/readme.go.md +++ b/specification/containerservice/resource-manager/readme.go.md @@ -2,16 +2,26 @@ These settings apply only when `--go` is specified on the command line. -``` yaml $(go) +``` yaml $(go) && !$(track2) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION clear-output-folder: true ``` +``` yaml $(go) && $(track2) +license-header: MICROSOFT_MIT_NO_VERSION +module-name: sdk/containerservice/armcontainerservice +module: github.com/Azure/azure-sdk-for-go/$(module-name) +output-folder: $(go-sdk-folder)/$(module-name) +azure-arm: true +``` + ### Go multi-api ``` yaml $(go) && $(multiapi) batch: + - tag: package-2021-05 + - tag: package-2021-03 - tag: package-2021-02 - tag: package-2020-12 - tag: package-2020-11 @@ -38,6 +48,24 @@ batch: - tag: package-2017-07 ``` +### Tag: package-2021-05 and go + +These settings apply only when `--package-2021-05 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag)=='package-2021-05' && $(go) +namespace: containerservice +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2021-05-01/$(namespace) +``` +### Tag: package-2021-03 and go + +These settings apply only when `--package-2021-03 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag)=='package-2021-03' && $(go) +namespace: containerservice +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2021-03-01/$(namespace) +``` ### Tag: package-2021-02 and go These settings apply only when `--package-2021-02 --go` is specified on the command line. diff --git a/specification/containerservice/resource-manager/readme.java.md b/specification/containerservice/resource-manager/readme.java.md index c878da82d013..46b7fa78defb 100644 --- a/specification/containerservice/resource-manager/readme.java.md +++ b/specification/containerservice/resource-manager/readme.java.md @@ -30,6 +30,34 @@ batch: - tag: package-2020-11 - tag: package-2020-12 - tag: package-2021-02 + - tag: package-2021-03 + - tag: package-2021-05 +``` + +### Tag: package-2021-05 and java + +These settings apply only when `--tag=package-2021-05` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-2021-05' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.containerservice.v2021_05_01 + output-folder: $(azure-libraries-for-java-folder)/sdk/containerservice/mgmt-v2021_05_01 +regenerate-manager: true +generate-interface: true +``` + +### Tag: package-2021-03 and java + +These settings apply only when `--tag=package-2021-03` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-2021-03' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.containerservice.v2021_03_01 + output-folder: $(azure-libraries-for-java-folder)/sdk/containerservice/mgmt-v2021_03_01 +regenerate-manager: true +generate-interface: true ``` ### Tag: package-2021-02 and java diff --git a/specification/containerservice/resource-manager/readme.md b/specification/containerservice/resource-manager/readme.md index 76b856d5d497..fd2e8803203a 100644 --- a/specification/containerservice/resource-manager/readme.md +++ b/specification/containerservice/resource-manager/readme.md @@ -34,18 +34,36 @@ These are the global settings for the ContainerServices API. ``` yaml openapi-type: arm -tag: package-2021-02 +tag: package-2021-05 ``` +### Tag: package-2021-05 + +These settings apply only when `--tag=package-2021-05` is specified on the command line. + +``` yaml $(tag) == 'package-2021-05' +input-file: + - Microsoft.ContainerService/stable/2021-05-01/managedClusters.json +``` +### Tag: package-2021-03 + +These settings apply only when `--tag=package-2021-03` is specified on the command line. + +``` yaml $(tag) == 'package-2021-03' +input-file: + - Microsoft.ContainerService/stable/2021-03-01/managedClusters.json +``` + ### Tag: package-2021-02 These settings apply only when `--tag=package-2021-02` is specified on the command line. -```yaml $(tag) == 'package-2021-02' +``` yaml $(tag) == 'package-2021-02' input-file: - Microsoft.ContainerService/stable/2021-02-01/managedClusters.json ``` + ### Tag: package-2020-12 These settings apply only when `--tag=package-2020-12` is specified on the command line. @@ -310,6 +328,32 @@ input-file: ``` +### Tag: package-2021-05-01-only + +These settings apply only when `--tag=package-2021-05-01-only` is specified on the command line. + +``` yaml $(tag) == 'package-2021-05-01-only' +input-file: +- Microsoft.ContainerService/stable/2021-05-01/managedClusters.json +directive: + - suppress: DefinitionsPropertiesNamesCamelCase + where: $.definitions.ManagedClusterProperties.properties.autoScalerProfile + reason: Cluster-autoscaler settings are not camel-cased +``` + +### Tag: package-2021-03-01-only + +These settings apply only when `--tag=package-2021-03-01-only` is specified on the command line. + +``` yaml $(tag) == 'package-2021-03-01-only' +input-file: +- Microsoft.ContainerService/stable/2021-03-01/managedClusters.json +directive: + - suppress: DefinitionsPropertiesNamesCamelCase + where: $.definitions.ManagedClusterProperties.properties.autoScalerProfile + reason: Cluster-autoscaler settings are not camel-cased +``` + ### Tag: package-2021-02-01-only These settings apply only when `--tag=package-2021-02-01-only` is specified on the command line. @@ -628,8 +672,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_container_service'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js containerservice/resource-manager ``` ## C# @@ -667,6 +709,4 @@ directive: reason: ACS service is deprecated so a PATCH endpoint won't be implemented ``` -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/containerservice/resource-manager/readme.python.md b/specification/containerservice/resource-manager/readme.python.md index d5ca5a71dade..6b5fc7ba1912 100644 --- a/specification/containerservice/resource-manager/readme.python.md +++ b/specification/containerservice/resource-manager/readme.python.md @@ -26,6 +26,8 @@ Generate all API versions currently shipped for this package ```yaml $(python) && $(multiapi) && !$(track2) batch: + - tag: package-2021-05-01-only + - tag: package-2021-03-01-only - tag: package-2021-02-01-only - tag: package-2020-12-01-only - tag: package-2020-11-01-only @@ -53,6 +55,8 @@ batch: ```yaml $(python) && $(multiapi) && $(track2) batch: + - tag: package-2021-05-01-only + - tag: package-2021-03-01-only - tag: package-2021-02-01-only - tag: package-2020-12-01-only - tag: package-2020-11-01-only @@ -85,6 +89,32 @@ clear-output-folder: false perform-load: false ``` +### Tag: package-2021-05-01-only and python + +These settings apply only when `--tag=package-2021-05-01-only --python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-2021-05-01-only' && $(python) +python: + namespace: azure.mgmt.containerservice.v2021_05_01 + output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2021_05_01 +namespace: azure.mgmt.containerservice.v2021_05_01 +output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2021_05_01 +``` + +### Tag: package-2021-03-01-only and python + +These settings apply only when `--tag=package-2021-03-01-only --python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-2021-03-01-only' && $(python) +python: + namespace: azure.mgmt.containerservice.v2021_03_01 + output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2021_03_01 +namespace: azure.mgmt.containerservice.v2021_03_01 +output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2021_03_01 +``` + ### Tag: package-2021-02-01-only and python These settings apply only when `--tag=package-2021-02-01-only --python` is specified on the command line. diff --git a/specification/cosmos-db/data-plane/readme.go.md b/specification/cosmos-db/data-plane/readme.go.md index 610b160a3ccf..71b2b7b2f924 100644 --- a/specification/cosmos-db/data-plane/readme.go.md +++ b/specification/cosmos-db/data-plane/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: storagetables clear-output-folder: true ``` diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-03-01-preview/cosmos-db.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-03-01-preview/cosmos-db.json index 6cd99eddb7ab..fa06a6d20685 100644 --- a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-03-01-preview/cosmos-db.json +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-03-01-preview/cosmos-db.json @@ -5112,6 +5112,78 @@ } } }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DocumentDB/locations": { + "get": { + "operationId": "LocationList", + "x-ms-examples": { + "CosmosDBLocationList": { + "$ref": "./examples/CosmosDBLocationList.json" + } + }, + "description": "List Cosmos DB locations and their properties", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/LocationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DocumentDB/locations/{location}": { + "get": { + "operationId": "LocationGet", + "x-ms-examples": { + "CosmosDBLocationGet": { + "$ref": "./examples/CosmosDBLocationGet.json" + } + }, + "description": "Get the properties of an existing Cosmos DB location", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/locationParameter" + } + ], + "responses": { + "200": { + "description": "The Cosmos DB location properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/LocationGetResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, "/subscriptions/{subscriptionId}/providers/Microsoft.DocumentDB/locations/{location}/restorableDatabaseAccounts/{instanceId}": { "get": { "operationId": "RestorableDatabaseAccounts_GetByLocation", @@ -8720,6 +8792,64 @@ } } }, + "LocationListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/LocationGetResult" + }, + "description": "List of Cosmos DB locations and their properties." + } + }, + "description": "The List operation response, that contains Cosmos DB locations and their properties." + }, + "LocationGetResult": { + "description": "Cosmos DB location get result", + "type": "object", + "properties": { + "properties": { + "type": "object", + "description": "Cosmos DB location metadata", + "$ref": "#/definitions/LocationProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMProxyResource" + } + ] + }, + "LocationProperties": { + "description": "Cosmos DB location metadata", + "type": "object", + "properties": { + "status": { + "type": "string", + "readOnly": true, + "description": "The current status of location in Azure." + }, + "supportsAvailabilityZone": { + "type": "boolean", + "readOnly": true, + "description": "Flag indicating whether the location supports availability zones or not." + }, + "isResidencyRestricted": { + "type": "boolean", + "readOnly": true, + "description": "Flag indicating whether the location is residency sensitive." + }, + "backupStorageRedundancies": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/BackupStorageRedundancy" + }, + "description": "The properties of available backup storage redundancies." + } + } + }, "ApiType": { "description": "Enum to indicate the API type of the restorable database account.", "type": "string", diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-03-01-preview/examples/CosmosDBLocationGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-03-01-preview/examples/CosmosDBLocationGet.json new file mode 100644 index 000000000000..66c2b6036eb8 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-03-01-preview/examples/CosmosDBLocationGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "westus" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DocumentDB/locations/westus", + "type": "Microsoft.DocumentDB/locations", + "name": "westus", + "properties": { + "status": "ProductionSLA", + "supportsAvailabilityZone": true, + "isResidencyRestricted": true, + "backupStorageRedundancies": [ + "Local", + "Geo" + ] + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-03-01-preview/examples/CosmosDBLocationList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-03-01-preview/examples/CosmosDBLocationList.json new file mode 100644 index 000000000000..9993c9816c68 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-03-01-preview/examples/CosmosDBLocationList.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DocumentDB/locations/westus", + "type": "Microsoft.DocumentDB/locations", + "name": "westus", + "properties": { + "status": "ProductionSLA", + "supportsAvailabilityZone": false, + "isResidencyRestricted": false, + "backupStorageRedundancies": [ + "Local", + "Geo" + ] + } + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DocumentDB/locations/centralus", + "type": "Microsoft.DocumentDB/locations", + "name": "centralus", + "properties": { + "status": "ProductionSLA", + "supportsAvailabilityZone": true, + "isResidencyRestricted": false, + "backupStorageRedundancies": [ + "Zone", + "Geo" + ] + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-03-01-preview/managedCassandra.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-03-01-preview/managedCassandra.json index e92d963c7d24..bbb3ab098d2a 100644 --- a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-03-01-preview/managedCassandra.json +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-03-01-preview/managedCassandra.json @@ -713,7 +713,7 @@ "description": "Managed Cassandra cluster name.", "minLength": 1, "maxLength": 100, - "pattern": "^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*" + "pattern": "^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$" }, "dataCenterNameParameter": { "name": "dataCenterName", @@ -724,7 +724,7 @@ "description": "Data center name in a managed Cassandra cluster.", "minLength": 1, "maxLength": 100, - "pattern": "^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*" + "pattern": "^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$" }, "backupNameParameter": { "name": "backupId", diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/cosmos-db.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/cosmos-db.json new file mode 100644 index 000000000000..5af2aaf64058 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/cosmos-db.json @@ -0,0 +1,9183 @@ +{ + "swagger": "2.0", + "info": { + "title": "Cosmos DB", + "description": "Azure Cosmos DB Database Service Resource Provider REST API", + "version": "2021-04-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.DocumentDB/databaseAccounts/{accountName}": { + "get": { + "operationId": "DatabaseAccounts_Get", + "x-ms-examples": { + "CosmosDBDatabaseAccountGet": { + "$ref": "./examples/CosmosDBDatabaseAccountGet.json" + } + }, + "description": "Retrieves the properties of an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The database account properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/DatabaseAccountGetResults" + } + } + } + }, + "patch": { + "operationId": "DatabaseAccounts_Update", + "x-ms-examples": { + "CosmosDBDatabaseAccountPatch": { + "$ref": "./examples/CosmosDBDatabaseAccountPatch.json" + } + }, + "description": "Updates the properties of an existing Azure Cosmos DB database account.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "updateParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DatabaseAccountUpdateParameters" + }, + "description": "The parameters to provide for the current database account." + } + ], + "responses": { + "200": { + "description": "The database account update operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/DatabaseAccountGetResults" + } + } + } + }, + "put": { + "operationId": "DatabaseAccounts_CreateOrUpdate", + "x-ms-examples": { + "CosmosDBDatabaseAccountCreateMin": { + "$ref": "./examples/CosmosDBDatabaseAccountCreateMin.json" + }, + "CosmosDBDatabaseAccountCreateMax": { + "$ref": "./examples/CosmosDBDatabaseAccountCreateMax.json" + }, + "CosmosDBRestoreDatabaseAccountCreateUpdate.json": { + "$ref": "./examples/CosmosDBRestoreDatabaseAccountCreateUpdate.json" + } + }, + "description": "Creates or updates an Azure Cosmos DB database account. The \"Update\" method is preferred when performing updates on an account.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DatabaseAccountCreateUpdateParameters" + }, + "description": "The parameters to provide for the current database account." + } + ], + "responses": { + "200": { + "description": "The database account create or update operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/DatabaseAccountGetResults" + } + } + } + }, + "delete": { + "operationId": "DatabaseAccounts_Delete", + "x-ms-examples": { + "CosmosDBDatabaseAccountDelete": { + "$ref": "./examples/CosmosDBDatabaseAccountDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB database account.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The database account delete operation will complete asynchronously." + }, + "204": { + "description": "The specified account does not exist in the subscription." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/failoverPriorityChange": { + "post": { + "operationId": "DatabaseAccounts_FailoverPriorityChange", + "x-ms-examples": { + "CosmosDBDatabaseAccountFailoverPriorityChange": { + "$ref": "./examples/CosmosDBDatabaseAccountFailoverPriorityChange.json" + } + }, + "description": "Changes the failover priority for the Azure Cosmos DB database account. A failover priority of 0 indicates a write region. The maximum value for a failover priority = (total number of regions - 1). Failover priority values must be unique for each of the regions in which the database account exists.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "failoverParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FailoverPolicies" + }, + "description": "The new failover policies for the database account." + } + ], + "responses": { + "202": { + "description": "Accepted. The failover policy change operation will complete asynchronously." + }, + "204": { + "description": "No Content" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DocumentDB/databaseAccounts": { + "get": { + "operationId": "DatabaseAccounts_List", + "x-ms-examples": { + "CosmosDBDatabaseAccountList": { + "$ref": "./examples/CosmosDBDatabaseAccountList.json" + } + }, + "description": "Lists all the Azure Cosmos DB database accounts available under the subscription.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/DatabaseAccountsListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts": { + "get": { + "operationId": "DatabaseAccounts_ListByResourceGroup", + "x-ms-examples": { + "CosmosDBDatabaseAccountListByResourceGroup": { + "$ref": "./examples/CosmosDBDatabaseAccountListByResourceGroup.json" + } + }, + "description": "Lists all the Azure Cosmos DB database accounts available under the given resource group.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/DatabaseAccountsListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/listKeys": { + "post": { + "operationId": "DatabaseAccounts_ListKeys", + "x-ms-examples": { + "CosmosDBDatabaseAccountListKeys": { + "$ref": "./examples/CosmosDBDatabaseAccountListKeys.json" + } + }, + "description": "Lists the access keys for the specified Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/DatabaseAccountListKeysResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/listConnectionStrings": { + "post": { + "operationId": "DatabaseAccounts_ListConnectionStrings", + "x-ms-examples": { + "CosmosDBDatabaseAccountListConnectionStrings": { + "$ref": "./examples/CosmosDBDatabaseAccountListConnectionStrings.json" + }, + "CosmosDBDatabaseAccountListConnectionStringsMongo": { + "$ref": "./examples/CosmosDBDatabaseAccountListConnectionStringsMongo.json" + } + }, + "description": "Lists the connection strings for the specified Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/DatabaseAccountListConnectionStringsResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/offlineRegion": { + "post": { + "operationId": "DatabaseAccounts_OfflineRegion", + "x-ms-examples": { + "CosmosDBDatabaseAccountOfflineRegion": { + "$ref": "./examples/CosmosDBDatabaseAccountOfflineRegion.json" + } + }, + "description": "Offline the specified region for the specified Azure Cosmos DB database account.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "regionParameterForOffline", + "in": "body", + "required": true, + "description": "Cosmos DB region to offline for the database account.", + "schema": { + "$ref": "#/definitions/RegionForOnlineOffline" + } + } + ], + "responses": { + "200": { + "description": "The offline region operation is completed successfully." + }, + "202": { + "description": "Accepted. The offline region operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/onlineRegion": { + "post": { + "operationId": "DatabaseAccounts_OnlineRegion", + "x-ms-examples": { + "CosmosDBDatabaseAccountOnlineRegion": { + "$ref": "./examples/CosmosDBDatabaseAccountOnlineRegion.json" + } + }, + "description": "Online the specified region for the specified Azure Cosmos DB database account.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "regionParameterForOnline", + "in": "body", + "required": true, + "description": "Cosmos DB region to online for the database account.", + "schema": { + "$ref": "#/definitions/RegionForOnlineOffline" + } + } + ], + "responses": { + "200": { + "description": "The online region operation is completed successfully." + }, + "202": { + "description": "Accepted. The online region operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/readonlykeys": { + "get": { + "operationId": "DatabaseAccounts_GetReadOnlyKeys", + "x-ms-examples": { + "CosmosDBDatabaseAccountListReadOnlyKeys": { + "$ref": "./examples/CosmosDBDatabaseAccountListReadOnlyKeys.json" + } + }, + "description": "Lists the read-only access keys for the specified Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/DatabaseAccountListReadOnlyKeysResult" + } + } + } + }, + "post": { + "operationId": "DatabaseAccounts_ListReadOnlyKeys", + "x-ms-examples": { + "CosmosDBDatabaseAccountListReadOnlyKeys": { + "$ref": "./examples/CosmosDBDatabaseAccountListReadOnlyKeys.json" + } + }, + "description": "Lists the read-only access keys for the specified Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/DatabaseAccountListReadOnlyKeysResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/regenerateKey": { + "post": { + "operationId": "DatabaseAccounts_RegenerateKey", + "x-ms-examples": { + "CosmosDBDatabaseAccountRegenerateKey": { + "$ref": "./examples/CosmosDBDatabaseAccountRegenerateKey.json" + } + }, + "description": "Regenerates an access key for the specified Azure Cosmos DB database account.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "keyToRegenerate", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DatabaseAccountRegenerateKeyParameters" + }, + "description": "The name of the key to regenerate." + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted. The regenerate key operation will complete asynchronously." + } + } + } + }, + "/providers/Microsoft.DocumentDB/databaseAccountNames/{accountName}": { + "head": { + "operationId": "DatabaseAccounts_CheckNameExists", + "x-ms-examples": { + "CosmosDBDatabaseAccountCheckNameExists": { + "$ref": "./examples/CosmosDBDatabaseAccountCheckNameExists.json" + } + }, + "description": "Checks that the Azure Cosmos DB account name already exists. A valid account name may contain only lowercase letters, numbers, and the '-' character, and must be between 3 and 50 characters.", + "parameters": [ + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The account name is valid but is already in use." + }, + "404": { + "description": "Not Found. The account name is available and valid." + } + } + } + }, + "/providers/Microsoft.DocumentDB/operations": { + "get": { + "tags": [ + "Operations" + ], + "description": "Lists all of the available Cosmos DB Resource Provider operations.", + "operationId": "Operations_List", + "x-ms-examples": { + "CosmosDBOperationsList": { + "$ref": "./examples/CosmosDBOperationsList.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/metrics": { + "get": { + "operationId": "DatabaseAccounts_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseAccountGetMetrics": { + "$ref": "./examples/CosmosDBDatabaseAccountGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The metrics for the database account were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/metrics": { + "get": { + "operationId": "Database_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseGetMetrics": { + "$ref": "./examples/CosmosDBDatabaseGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given database account and database.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The metrics for the database account were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/collections/{collectionRid}/metrics": { + "get": { + "operationId": "Collection_ListMetrics", + "x-ms-examples": { + "CosmosDBCollectionGetMetrics": { + "$ref": "./examples/CosmosDBCollectionGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given database account and collection.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/collectionRidParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The metrics for the database account were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/region/{region}/databases/{databaseRid}/collections/{collectionRid}/metrics": { + "get": { + "operationId": "CollectionRegion_ListMetrics", + "x-ms-examples": { + "CosmosDBRegionCollectionGetMetrics": { + "$ref": "./examples/CosmosDBRegionCollectionGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given database account, collection and region.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/regionParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/collectionRidParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The metrics for the database account were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/region/{region}/metrics": { + "get": { + "operationId": "DatabaseAccountRegion_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseAccountRegionGetMetrics": { + "$ref": "./examples/CosmosDBDatabaseAccountRegionGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given database account and region.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/regionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The metrics for the database account were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sourceRegion/{sourceRegion}/targetRegion/{targetRegion}/percentile/metrics": { + "get": { + "operationId": "PercentileSourceTarget_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseAccountRegionGetMetrics": { + "$ref": "./examples/CosmosDBPercentileSourceTargetGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given account, source and target region. This url is only for PBS and Replication Latency data", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/sourceRegionParameter" + }, + { + "$ref": "#/parameters/targetRegionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The percentile metrics for the account, source and target regions were retrieved successfully.", + "schema": { + "$ref": "#/definitions/PercentileMetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/targetRegion/{targetRegion}/percentile/metrics": { + "get": { + "operationId": "PercentileTarget_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseAccountRegionGetMetrics": { + "$ref": "./examples/CosmosDBPercentileTargetGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given account target region. This url is only for PBS and Replication Latency data", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/targetRegionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The percentile metrics for the account and target regions were retrieved successfully.", + "schema": { + "$ref": "#/definitions/PercentileMetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/percentile/metrics": { + "get": { + "operationId": "Percentile_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseAccountRegionGetMetrics": { + "$ref": "./examples/CosmosDBPercentileGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given database account. This url is only for PBS and Replication Latency data", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The percentile metrics for the account were retrieved successfully.", + "schema": { + "$ref": "#/definitions/PercentileMetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/region/{region}/databases/{databaseRid}/collections/{collectionRid}/partitions/metrics": { + "get": { + "operationId": "CollectionPartitionRegion_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseAccountRegionGetMetrics": { + "$ref": "./examples/CosmosDBCollectionPartitionRegionGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given collection and region, split by partition.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/regionParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/collectionRidParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The partition-level metrics for the collection and region were retrieved successfully.", + "schema": { + "$ref": "#/definitions/PartitionMetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/collections/{collectionRid}/partitions/metrics": { + "get": { + "operationId": "CollectionPartition_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseAccountRegionGetMetrics": { + "$ref": "./examples/CosmosDBCollectionPartitionGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given collection, split by partition.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/collectionRidParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The partition-level metrics for the collection were retrieved successfully.", + "schema": { + "$ref": "#/definitions/PartitionMetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/collections/{collectionRid}/partitionKeyRangeId/{partitionKeyRangeId}/metrics": { + "get": { + "operationId": "PartitionKeyRangeId_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseAccountRegionGetMetrics": { + "$ref": "./examples/CosmosDBPKeyRangeIdGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given partition key range id.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/collectionRidParameter" + }, + { + "$ref": "#/parameters/partitionKeyRangeIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The partition-level metrics for the partition key range id were retrieved successfully.", + "schema": { + "$ref": "#/definitions/PartitionMetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/region/{region}/databases/{databaseRid}/collections/{collectionRid}/partitionKeyRangeId/{partitionKeyRangeId}/metrics": { + "get": { + "operationId": "PartitionKeyRangeIdRegion_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseAccountRegionGetMetrics": { + "$ref": "./examples/CosmosDBPKeyRangeIdRegionGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given partition key range id and region.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/regionParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/collectionRidParameter" + }, + { + "$ref": "#/parameters/partitionKeyRangeIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The partition-level metrics for the partition key range id and region were retrieved successfully.", + "schema": { + "$ref": "#/definitions/PartitionMetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/usages": { + "get": { + "operationId": "DatabaseAccounts_ListUsages", + "x-ms-examples": { + "CosmosDBDatabaseAccountGetUsages": { + "$ref": "./examples/CosmosDBDatabaseAccountGetUsages.json" + } + }, + "description": "Retrieves the usages (most recent data) for the given database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/usageFilterParameter" + } + ], + "responses": { + "200": { + "description": "The usages for the database account were retrieved successfully.", + "schema": { + "$ref": "#/definitions/UsagesResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/usages": { + "get": { + "operationId": "Database_ListUsages", + "x-ms-examples": { + "CosmosDBDatabaseGetUsages": { + "$ref": "./examples/CosmosDBDatabaseGetUsages.json" + } + }, + "description": "Retrieves the usages (most recent data) for the given database.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/usageFilterParameter" + } + ], + "responses": { + "200": { + "description": "The usages for the database were retrieved successfully.", + "schema": { + "$ref": "#/definitions/UsagesResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/collections/{collectionRid}/usages": { + "get": { + "operationId": "Collection_ListUsages", + "x-ms-examples": { + "CosmosDBCollectionGetUsages": { + "$ref": "./examples/CosmosDBCollectionGetUsages.json" + } + }, + "description": "Retrieves the usages (most recent storage data) for the given collection.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/collectionRidParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/usageFilterParameter" + } + ], + "responses": { + "200": { + "description": "The usages for the collection were retrieved successfully.", + "schema": { + "$ref": "#/definitions/UsagesResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/collections/{collectionRid}/partitions/usages": { + "get": { + "operationId": "CollectionPartition_ListUsages", + "x-ms-examples": { + "CosmosDBCollectionGetUsages": { + "$ref": "./examples/CosmosDBCollectionPartitionGetUsages.json" + } + }, + "description": "Retrieves the usages (most recent storage data) for the given collection, split by partition.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/collectionRidParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/usageFilterParameter" + } + ], + "responses": { + "200": { + "description": "The usages for the collection, per partition were retrieved successfully.", + "schema": { + "$ref": "#/definitions/PartitionUsagesResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/metricDefinitions": { + "get": { + "operationId": "Database_ListMetricDefinitions", + "x-ms-examples": { + "CosmosDBDatabaseGetMetricDefinitions": { + "$ref": "./examples/CosmosDBDatabaseGetMetricDefinitions.json" + } + }, + "description": "Retrieves metric definitions for the given database.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The metric definitions for the database were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MetricDefinitionsListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/collections/{collectionRid}/metricDefinitions": { + "get": { + "operationId": "Collection_ListMetricDefinitions", + "x-ms-examples": { + "CosmosDBCollectionGetMetricDefinitions": { + "$ref": "./examples/CosmosDBCollectionGetMetricDefinitions.json" + } + }, + "description": "Retrieves metric definitions for the given collection.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/collectionRidParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The metric definitions for the collection were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MetricDefinitionsListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/metricDefinitions": { + "get": { + "operationId": "DatabaseAccounts_ListMetricDefinitions", + "x-ms-examples": { + "CosmosDBDatabaseAccountGetMetricDefinitions": { + "$ref": "./examples/CosmosDBDatabaseAccountGetMetricDefinitions.json" + } + }, + "description": "Retrieves metric definitions for the given database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The metric definitions for the database account were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MetricDefinitionsListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases": { + "get": { + "operationId": "SqlResources_ListSqlDatabases", + "x-ms-examples": { + "CosmosDBSqlDatabaseList": { + "$ref": "./examples/CosmosDBSqlDatabaseList.json" + } + }, + "description": "Lists the SQL databases under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The SQL database properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/SqlDatabaseListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}": { + "get": { + "operationId": "SqlResources_GetSqlDatabase", + "x-ms-examples": { + "CosmosDBSqlDatabaseGet": { + "$ref": "./examples/CosmosDBSqlDatabaseGet.json" + } + }, + "description": "Gets the SQL database under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The SQL database property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/SqlDatabaseGetResults" + } + } + } + }, + "put": { + "operationId": "SqlResources_CreateUpdateSqlDatabase", + "x-ms-examples": { + "CosmosDBSqlDatabaseCreateUpdate": { + "$ref": "./examples/CosmosDBSqlDatabaseCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB SQL database", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateSqlDatabaseParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SqlDatabaseCreateUpdateParameters" + }, + "description": "The parameters to provide for the current SQL database." + } + ], + "responses": { + "202": { + "description": "The SQL database create or update operation will complete asynchronously." + }, + "200": { + "description": "The SQL database create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/SqlDatabaseGetResults" + } + } + } + }, + "delete": { + "operationId": "SqlResources_DeleteSqlDatabase", + "x-ms-examples": { + "CosmosDBSqlDatabaseDelete": { + "$ref": "./examples/CosmosDBSqlDatabaseDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB SQL database.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The SQL database delete operation will complete asynchronously." + }, + "204": { + "description": "The SQL database delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/throughputSettings/default": { + "get": { + "operationId": "SqlResources_GetSqlDatabaseThroughput", + "x-ms-examples": { + "CosmosDBSqlDatabaseThroughputGet": { + "$ref": "./examples/CosmosDBSqlDatabaseThroughputGet.json" + } + }, + "description": "Gets the RUs per second of the SQL database under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The RUs per second of the SQL database was retrieved successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + }, + "put": { + "operationId": "SqlResources_UpdateSqlDatabaseThroughput", + "x-ms-examples": { + "CosmosDBSqlDatabaseThroughputUpdate": { + "$ref": "./examples/CosmosDBSqlDatabaseThroughputUpdate.json" + } + }, + "description": "Update RUs per second of an Azure Cosmos DB SQL database", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "updateThroughputParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThroughputSettingsUpdateParameters" + }, + "description": "The parameters to provide for the RUs per second of the current SQL database." + } + ], + "responses": { + "202": { + "description": "The RUs per second of the SQL database update operation will complete asynchronously." + }, + "200": { + "description": "The RUs per second of the SQL database update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/throughputSettings/default/migrateToAutoscale": { + "post": { + "operationId": "SqlResources_MigrateSqlDatabaseToAutoscale", + "x-ms-examples": { + "CosmosDBSqlDatabaseMigrateToAutoscale": { + "$ref": "./examples/CosmosDBSqlDatabaseMigrateToAutoscale.json" + } + }, + "description": "Migrate an Azure Cosmos DB SQL database from manual throughput to autoscale", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The SQL database migrate operation will complete asynchronously." + }, + "200": { + "description": "The SQL database migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/throughputSettings/default/migrateToManualThroughput": { + "post": { + "operationId": "SqlResources_MigrateSqlDatabaseToManualThroughput", + "x-ms-examples": { + "CosmosDBSqlDatabaseMigrateToManualThroughput": { + "$ref": "./examples/CosmosDBSqlDatabaseMigrateToManualThroughput.json" + } + }, + "description": "Migrate an Azure Cosmos DB SQL database from autoscale to manual throughput", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The SQL database migrate operation will complete asynchronously." + }, + "200": { + "description": "The SQL database migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers": { + "get": { + "operationId": "SqlResources_ListSqlContainers", + "x-ms-examples": { + "CosmosDBSqlContainerList": { + "$ref": "./examples/CosmosDBSqlContainerList.json" + } + }, + "description": "Lists the SQL container under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The SQL container properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/SqlContainerListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}": { + "get": { + "operationId": "SqlResources_GetSqlContainer", + "x-ms-examples": { + "CosmosDBSqlContainerGet": { + "$ref": "./examples/CosmosDBSqlContainerGet.json" + } + }, + "description": "Gets the SQL container under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The SQL container property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/SqlContainerGetResults" + } + } + } + }, + "put": { + "operationId": "SqlResources_CreateUpdateSqlContainer", + "x-ms-examples": { + "CosmosDBSqlContainerCreateUpdate": { + "$ref": "./examples/CosmosDBSqlContainerCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB SQL container", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateSqlContainerParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SqlContainerCreateUpdateParameters" + }, + "description": "The parameters to provide for the current SQL container." + } + ], + "responses": { + "202": { + "description": "The SQL container create or update operation will complete asynchronously." + }, + "200": { + "description": "The SQL container create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/SqlContainerGetResults" + } + } + } + }, + "delete": { + "operationId": "SqlResources_DeleteSqlContainer", + "x-ms-examples": { + "CosmosDBSqlContainerDelete": { + "$ref": "./examples/CosmosDBSqlContainerDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB SQL container.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The SQL container delete operation will complete asynchronously." + }, + "204": { + "description": "The SQL container delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/throughputSettings/default": { + "get": { + "operationId": "SqlResources_GetSqlContainerThroughput", + "x-ms-examples": { + "CosmosDBSqlContainerThroughputGet": { + "$ref": "./examples/CosmosDBSqlContainerThroughputGet.json" + } + }, + "description": "Gets the RUs per second of the SQL container under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The RUs per second of the SQL container was retrieved successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + }, + "put": { + "operationId": "SqlResources_UpdateSqlContainerThroughput", + "x-ms-examples": { + "CosmosDBSqlContainerThroughputUpdate": { + "$ref": "./examples/CosmosDBSqlContainerThroughputUpdate.json" + } + }, + "description": "Update RUs per second of an Azure Cosmos DB SQL container", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "updateThroughputParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThroughputSettingsUpdateParameters" + }, + "description": "The parameters to provide for the RUs per second of the current SQL container." + } + ], + "responses": { + "202": { + "description": "The RUs per second of the SQL container update operation will complete asynchronously." + }, + "200": { + "description": "The RUs per second of the SQL container update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/throughputSettings/default/migrateToAutoscale": { + "post": { + "operationId": "SqlResources_MigrateSqlContainerToAutoscale", + "x-ms-examples": { + "CosmosDBSqlContainerMigrateToAutoscale": { + "$ref": "./examples/CosmosDBSqlContainerMigrateToAutoscale.json" + } + }, + "description": "Migrate an Azure Cosmos DB SQL container from manual throughput to autoscale", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The SQL container migrate operation will complete asynchronously." + }, + "200": { + "description": "The SQL container migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/throughputSettings/default/migrateToManualThroughput": { + "post": { + "operationId": "SqlResources_MigrateSqlContainerToManualThroughput", + "x-ms-examples": { + "CosmosDBSqlContainerMigrateToManualThroughput": { + "$ref": "./examples/CosmosDBSqlContainerMigrateToManualThroughput.json" + } + }, + "description": "Migrate an Azure Cosmos DB SQL container from autoscale to manual throughput", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The SQL container migrate operation will complete asynchronously." + }, + "200": { + "description": "The SQL container migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/storedProcedures": { + "get": { + "operationId": "SqlResources_ListSqlStoredProcedures", + "x-ms-examples": { + "CosmosDBSqlStoredProcedureList": { + "$ref": "./examples/CosmosDBSqlStoredProcedureList.json" + } + }, + "description": "Lists the SQL storedProcedure under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The SQL stored procedure properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/SqlStoredProcedureListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/storedProcedures/{storedProcedureName}": { + "get": { + "operationId": "SqlResources_GetSqlStoredProcedure", + "x-ms-examples": { + "CosmosDBSqlStoredProcedureGet": { + "$ref": "./examples/CosmosDBSqlStoredProcedureGet.json" + } + }, + "description": "Gets the SQL storedProcedure under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/storedProcedureNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The SQL storedProcedure property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/SqlStoredProcedureGetResults" + } + } + } + }, + "put": { + "operationId": "SqlResources_CreateUpdateSqlStoredProcedure", + "x-ms-examples": { + "CosmosDBSqlStoredProcedureCreateUpdate": { + "$ref": "./examples/CosmosDBSqlStoredProcedureCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB SQL storedProcedure", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/storedProcedureNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateSqlStoredProcedureParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SqlStoredProcedureCreateUpdateParameters" + }, + "description": "The parameters to provide for the current SQL storedProcedure." + } + ], + "responses": { + "202": { + "description": "The SQL storedProcedure create or update operation will complete asynchronously." + }, + "200": { + "description": "The SQL storedProcedure create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/SqlStoredProcedureGetResults" + } + } + } + }, + "delete": { + "operationId": "SqlResources_DeleteSqlStoredProcedure", + "x-ms-examples": { + "CosmosDBSqlStoredProcedureDelete": { + "$ref": "./examples/CosmosDBSqlStoredProcedureDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB SQL storedProcedure.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/storedProcedureNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The SQL storedProcedure delete operation will complete asynchronously." + }, + "204": { + "description": "The SQL storedProcedure delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/userDefinedFunctions": { + "get": { + "operationId": "SqlResources_ListSqlUserDefinedFunctions", + "x-ms-examples": { + "CosmosDBSqlUserDefinedFunctionList": { + "$ref": "./examples/CosmosDBSqlUserDefinedFunctionList.json" + } + }, + "description": "Lists the SQL userDefinedFunction under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The SQL userDefinedFunction properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/SqlUserDefinedFunctionListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/userDefinedFunctions/{userDefinedFunctionName}": { + "get": { + "operationId": "SqlResources_GetSqlUserDefinedFunction", + "x-ms-examples": { + "CosmosDBSqlUserDefinedFunctionGet": { + "$ref": "./examples/CosmosDBSqlUserDefinedFunctionGet.json" + } + }, + "description": "Gets the SQL userDefinedFunction under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/userDefinedFunctionNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The SQL userDefinedFunction property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/SqlUserDefinedFunctionGetResults" + } + } + } + }, + "put": { + "operationId": "SqlResources_CreateUpdateSqlUserDefinedFunction", + "x-ms-examples": { + "CosmosDBSqlUserDefinedFunctionCreateUpdate": { + "$ref": "./examples/CosmosDBSqlUserDefinedFunctionCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB SQL userDefinedFunction", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/userDefinedFunctionNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateSqlUserDefinedFunctionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SqlUserDefinedFunctionCreateUpdateParameters" + }, + "description": "The parameters to provide for the current SQL userDefinedFunction." + } + ], + "responses": { + "202": { + "description": "The SQL userDefinedFunction create or update operation will complete asynchronously." + }, + "200": { + "description": "The SQL userDefinedFunction create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/SqlUserDefinedFunctionGetResults" + } + } + } + }, + "delete": { + "operationId": "SqlResources_DeleteSqlUserDefinedFunction", + "x-ms-examples": { + "CosmosDBSqlUserDefinedFunctionDelete": { + "$ref": "./examples/CosmosDBSqlUserDefinedFunctionDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB SQL userDefinedFunction.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/userDefinedFunctionNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The SQL userDefinedFunction delete operation will complete asynchronously." + }, + "204": { + "description": "The SQL userDefinedFunction delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/triggers": { + "get": { + "operationId": "SqlResources_ListSqlTriggers", + "x-ms-examples": { + "CosmosDBSqlTriggerList": { + "$ref": "./examples/CosmosDBSqlTriggerList.json" + } + }, + "description": "Lists the SQL trigger under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The SQL trigger properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/SqlTriggerListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/triggers/{triggerName}": { + "get": { + "operationId": "SqlResources_GetSqlTrigger", + "x-ms-examples": { + "CosmosDBSqlTriggerGet": { + "$ref": "./examples/CosmosDBSqlTriggerGet.json" + } + }, + "description": "Gets the SQL trigger under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/triggerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The SQL trigger property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/SqlTriggerGetResults" + } + } + } + }, + "put": { + "operationId": "SqlResources_CreateUpdateSqlTrigger", + "x-ms-examples": { + "CosmosDBSqlTriggerCreateUpdate": { + "$ref": "./examples/CosmosDBSqlTriggerCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB SQL trigger", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/triggerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateSqlTriggerParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SqlTriggerCreateUpdateParameters" + }, + "description": "The parameters to provide for the current SQL trigger." + } + ], + "responses": { + "202": { + "description": "The SQL trigger create or update operation will complete asynchronously." + }, + "200": { + "description": "The SQL trigger create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/SqlTriggerGetResults" + } + } + } + }, + "delete": { + "operationId": "SqlResources_DeleteSqlTrigger", + "x-ms-examples": { + "CosmosDBSqlTriggerDelete": { + "$ref": "./examples/CosmosDBSqlTriggerDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB SQL trigger.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/triggerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The SQL trigger delete operation will complete asynchronously." + }, + "204": { + "description": "The SQL trigger delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases": { + "get": { + "operationId": "MongoDBResources_ListMongoDBDatabases", + "x-ms-examples": { + "CosmosDBMongoDBDatabaseList": { + "$ref": "./examples/CosmosDBMongoDBDatabaseList.json" + } + }, + "description": "Lists the MongoDB databases under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The MongoDB database properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MongoDBDatabaseListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}": { + "get": { + "operationId": "MongoDBResources_GetMongoDBDatabase", + "x-ms-examples": { + "CosmosDBMongoDBDatabaseGet": { + "$ref": "./examples/CosmosDBMongoDBDatabaseGet.json" + } + }, + "description": "Gets the MongoDB databases under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The MongoDB database property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/MongoDBDatabaseGetResults" + } + } + } + }, + "put": { + "operationId": "MongoDBResources_CreateUpdateMongoDBDatabase", + "x-ms-examples": { + "CosmosDBMongoDBDatabaseCreateUpdate": { + "$ref": "./examples/CosmosDBMongoDBDatabaseCreateUpdate.json" + } + }, + "description": "Create or updates Azure Cosmos DB MongoDB database", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateMongoDBDatabaseParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/MongoDBDatabaseCreateUpdateParameters" + }, + "description": "The parameters to provide for the current MongoDB database." + } + ], + "responses": { + "202": { + "description": "The MongoDB database create or update operation will complete asynchronously." + }, + "200": { + "description": "The MongoDB database create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/MongoDBDatabaseGetResults" + } + } + } + }, + "delete": { + "operationId": "MongoDBResources_DeleteMongoDBDatabase", + "x-ms-examples": { + "CosmosDBMongoDBDatabaseDelete": { + "$ref": "./examples/CosmosDBMongoDBDatabaseDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB MongoDB database.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The MongoDB database delete operation will complete asynchronously." + }, + "204": { + "description": "The MongoDB database delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}/throughputSettings/default": { + "get": { + "operationId": "MongoDBResources_GetMongoDBDatabaseThroughput", + "x-ms-examples": { + "CosmosDBMongoDBDatabaseThroughputGet": { + "$ref": "./examples/CosmosDBMongoDBDatabaseThroughputGet.json" + } + }, + "description": "Gets the RUs per second of the MongoDB database under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The RUs per second of the MongoDB database was retrieved successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + }, + "put": { + "operationId": "MongoDBResources_UpdateMongoDBDatabaseThroughput", + "x-ms-examples": { + "CosmosDBMongoDBDatabaseThroughputUpdate": { + "$ref": "./examples/CosmosDBMongoDBDatabaseThroughputUpdate.json" + } + }, + "description": "Update RUs per second of the an Azure Cosmos DB MongoDB database", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "updateThroughputParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThroughputSettingsUpdateParameters" + }, + "description": "The RUs per second of the parameters to provide for the current MongoDB database." + } + ], + "responses": { + "202": { + "description": "The RUs per second of the MongoDB database update operation will complete asynchronously." + }, + "200": { + "description": "The RUs per second of the MongoDB database update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}/throughputSettings/default/migrateToAutoscale": { + "post": { + "operationId": "MongoDBResources_MigrateMongoDBDatabaseToAutoscale", + "x-ms-examples": { + "CosmosDBMongoDBDatabaseMigrateToAutoscale": { + "$ref": "./examples/CosmosDBMongoDBDatabaseMigrateToAutoscale.json" + } + }, + "description": "Migrate an Azure Cosmos DB MongoDB database from manual throughput to autoscale", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The MongoDB database migrate operation will complete asynchronously." + }, + "200": { + "description": "The MongoDB database migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}/throughputSettings/default/migrateToManualThroughput": { + "post": { + "operationId": "MongoDBResources_MigrateMongoDBDatabaseToManualThroughput", + "x-ms-examples": { + "CosmosDBMongoDBDatabaseMigrateToManualThroughput": { + "$ref": "./examples/CosmosDBMongoDBDatabaseMigrateToManualThroughput.json" + } + }, + "description": "Migrate an Azure Cosmos DB MongoDB database from autoscale to manual throughput", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The MongoDB database migrate operation will complete asynchronously." + }, + "200": { + "description": "The MongoDB database migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}/collections": { + "get": { + "operationId": "MongoDBResources_ListMongoDBCollections", + "x-ms-examples": { + "CosmosDBMongoDBCollectionList": { + "$ref": "./examples/CosmosDBMongoDBCollectionList.json" + } + }, + "description": "Lists the MongoDB collection under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The MongoDB collection properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MongoDBCollectionListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}/collections/{collectionName}": { + "get": { + "operationId": "MongoDBResources_GetMongoDBCollection", + "x-ms-examples": { + "CosmosDBMongoDBCollectionGet": { + "$ref": "./examples/CosmosDBMongoDBCollectionGet.json" + } + }, + "description": "Gets the MongoDB collection under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/collectionNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The MongoDB collection property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/MongoDBCollectionGetResults" + } + } + } + }, + "put": { + "operationId": "MongoDBResources_CreateUpdateMongoDBCollection", + "x-ms-examples": { + "CosmosDBMongoDBCollectionCreateUpdate": { + "$ref": "./examples/CosmosDBMongoDBCollectionCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB MongoDB Collection", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/collectionNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateMongoDBCollectionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/MongoDBCollectionCreateUpdateParameters" + }, + "description": "The parameters to provide for the current MongoDB Collection." + } + ], + "responses": { + "202": { + "description": "The MongoDB Collection create or update operation will complete asynchronously." + }, + "200": { + "description": "The MongoDB Collection create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/MongoDBCollectionGetResults" + } + } + } + }, + "delete": { + "operationId": "MongoDBResources_DeleteMongoDBCollection", + "x-ms-examples": { + "CosmosDBMongoDBCollectionDelete": { + "$ref": "./examples/CosmosDBMongoDBCollectionDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB MongoDB Collection.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/collectionNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The MongoDB collection delete operation will complete asynchronously." + }, + "204": { + "description": "The MongoDB collection delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}/collections/{collectionName}/throughputSettings/default": { + "get": { + "operationId": "MongoDBResources_GetMongoDBCollectionThroughput", + "x-ms-examples": { + "CosmosDBMongoDBCollectionThroughputGet": { + "$ref": "./examples/CosmosDBMongoDBCollectionThroughputGet.json" + } + }, + "description": "Gets the RUs per second of the MongoDB collection under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/collectionNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The RUs per second of the MongoDB collection was retrieved successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + }, + "put": { + "operationId": "MongoDBResources_UpdateMongoDBCollectionThroughput", + "x-ms-examples": { + "CosmosDBMongoDBCollectionThroughputUpdate": { + "$ref": "./examples/CosmosDBMongoDBCollectionThroughputUpdate.json" + } + }, + "description": "Update the RUs per second of an Azure Cosmos DB MongoDB collection", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/collectionNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "updateThroughputParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThroughputSettingsUpdateParameters" + }, + "description": "The RUs per second of the parameters to provide for the current MongoDB collection." + } + ], + "responses": { + "202": { + "description": "The RUs per second of the MongoDB collection update operation will complete asynchronously." + }, + "200": { + "description": "The RUs per second of the MongoDB collection update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}/collections/{collectionName}/throughputSettings/default/migrateToAutoscale": { + "post": { + "operationId": "MongoDBResources_MigrateMongoDBCollectionToAutoscale", + "x-ms-examples": { + "CosmosDBMongoDBCollectionMigrateToAutoscale": { + "$ref": "./examples/CosmosDBMongoDBCollectionMigrateToAutoscale.json" + } + }, + "description": "Migrate an Azure Cosmos DB MongoDB collection from manual throughput to autoscale", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/collectionNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The MongoDB collection migrate operation will complete asynchronously." + }, + "200": { + "description": "The MongoDB collection migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}/collections/{collectionName}/throughputSettings/default/migrateToManualThroughput": { + "post": { + "operationId": "MongoDBResources_MigrateMongoDBCollectionToManualThroughput", + "x-ms-examples": { + "CosmosDBMongoDBCollectionMigrateToManualThroughput": { + "$ref": "./examples/CosmosDBMongoDBCollectionMigrateToManualThroughput.json" + } + }, + "description": "Migrate an Azure Cosmos DB MongoDB collection from autoscale to manual throughput", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/collectionNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The MongoDB collection migrate operation will complete asynchronously." + }, + "200": { + "description": "The MongoDB collection migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/tables": { + "get": { + "operationId": "TableResources_ListTables", + "x-ms-examples": { + "CosmosDBTableList": { + "$ref": "./examples/CosmosDBTableList.json" + } + }, + "description": "Lists the Tables under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Table properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/TableListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/tables/{tableName}": { + "get": { + "operationId": "TableResources_GetTable", + "x-ms-examples": { + "CosmosDBTableGet": { + "$ref": "./examples/CosmosDBTableGet.json" + } + }, + "description": "Gets the Tables under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Table property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/TableGetResults" + } + } + } + }, + "put": { + "operationId": "TableResources_CreateUpdateTable", + "x-ms-examples": { + "CosmosDBTableReplace": { + "$ref": "./examples/CosmosDBTableCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB Table", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateTableParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TableCreateUpdateParameters" + }, + "description": "The parameters to provide for the current Table." + } + ], + "responses": { + "202": { + "description": "The Table create or update operation will complete asynchronously." + }, + "200": { + "description": "The Table create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/TableGetResults" + } + } + } + }, + "delete": { + "operationId": "TableResources_DeleteTable", + "x-ms-examples": { + "CosmosDBTableDelete": { + "$ref": "./examples/CosmosDBTableDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB Table.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Table delete operation will complete asynchronously." + }, + "204": { + "description": "The Table delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/tables/{tableName}/throughputSettings/default": { + "get": { + "operationId": "TableResources_GetTableThroughput", + "x-ms-examples": { + "CosmosDBTableThroughputGet": { + "$ref": "./examples/CosmosDBTableThroughputGet.json" + } + }, + "description": "Gets the RUs per second of the Table under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The RUs per second of the Table was retrieved successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + }, + "put": { + "operationId": "TableResources_UpdateTableThroughput", + "x-ms-examples": { + "CosmosDBTableThroughputUpdate": { + "$ref": "./examples/CosmosDBTableThroughputUpdate.json" + } + }, + "description": "Update RUs per second of an Azure Cosmos DB Table", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "updateThroughputParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThroughputSettingsUpdateParameters" + }, + "description": "The parameters to provide for the RUs per second of the current Table." + } + ], + "responses": { + "202": { + "description": "The RUs per second of the Table update operation will complete asynchronously." + }, + "200": { + "description": "The RUs per second of the Table update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/tables/{tableName}/throughputSettings/default/migrateToAutoscale": { + "post": { + "operationId": "TableResources_MigrateTableToAutoscale", + "x-ms-examples": { + "CosmosDBTableMigrateToAutoscale": { + "$ref": "./examples/CosmosDBTableMigrateToAutoscale.json" + } + }, + "description": "Migrate an Azure Cosmos DB Table from manual throughput to autoscale", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Table migrate operation will complete asynchronously." + }, + "200": { + "description": "The Table migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/tables/{tableName}/throughputSettings/default/migrateToManualThroughput": { + "post": { + "operationId": "TableResources_MigrateTableToManualThroughput", + "x-ms-examples": { + "CosmosDBTableMigrateToManualThroughput": { + "$ref": "./examples/CosmosDBTableMigrateToManualThroughput.json" + } + }, + "description": "Migrate an Azure Cosmos DB Table from autoscale to manual throughput", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Table migrate operation will complete asynchronously." + }, + "200": { + "description": "The Table migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces": { + "get": { + "operationId": "CassandraResources_ListCassandraKeyspaces", + "x-ms-examples": { + "CosmosDBCassandraKeyspaceList": { + "$ref": "./examples/CosmosDBCassandraKeyspaceList.json" + } + }, + "description": "Lists the Cassandra keyspaces under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Cassandra keyspace properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/CassandraKeyspaceListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}": { + "get": { + "operationId": "CassandraResources_GetCassandraKeyspace", + "x-ms-examples": { + "CosmosDBCassandraKeyspaceGet": { + "$ref": "./examples/CosmosDBCassandraKeyspaceGet.json" + } + }, + "description": "Gets the Cassandra keyspaces under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Cassandra keyspace property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/CassandraKeyspaceGetResults" + } + } + } + }, + "put": { + "operationId": "CassandraResources_CreateUpdateCassandraKeyspace", + "x-ms-examples": { + "CosmosDBCassandraKeyspaceCreateUpdate": { + "$ref": "./examples/CosmosDBCassandraKeyspaceCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB Cassandra keyspace", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateCassandraKeyspaceParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CassandraKeyspaceCreateUpdateParameters" + }, + "description": "The parameters to provide for the current Cassandra keyspace." + } + ], + "responses": { + "202": { + "description": "The Cassandra keyspace create or update operation will complete asynchronously." + }, + "200": { + "description": "The Cassandra keyspace create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/CassandraKeyspaceGetResults" + } + } + } + }, + "delete": { + "operationId": "CassandraResources_DeleteCassandraKeyspace", + "x-ms-examples": { + "CosmosDBCassandraKeyspaceDelete": { + "$ref": "./examples/CosmosDBCassandraKeyspaceDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB Cassandra keyspace.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Cassandra keyspace delete operation will complete asynchronously." + }, + "204": { + "description": "The Cassandra keyspace delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/throughputSettings/default": { + "get": { + "operationId": "CassandraResources_GetCassandraKeyspaceThroughput", + "x-ms-examples": { + "CosmosDBCassandraKeyspaceThroughputGet": { + "$ref": "./examples/CosmosDBCassandraKeyspaceThroughputGet.json" + } + }, + "description": "Gets the RUs per second of the Cassandra Keyspace under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The RUs per second of the Cassandra Keyspace was retrieved successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + }, + "put": { + "operationId": "CassandraResources_UpdateCassandraKeyspaceThroughput", + "x-ms-examples": { + "CosmosDBCassandraKeyspaceThroughputUpdate": { + "$ref": "./examples/CosmosDBCassandraKeyspaceThroughputUpdate.json" + } + }, + "description": "Update RUs per second of an Azure Cosmos DB Cassandra Keyspace", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "updateThroughputParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThroughputSettingsUpdateParameters" + }, + "description": "The RUs per second of the parameters to provide for the current Cassandra Keyspace." + } + ], + "responses": { + "202": { + "description": "The RUs per second of the Cassandra Keyspace update operation will complete asynchronously." + }, + "200": { + "description": "The RUs per second of the Cassandra Keyspace update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/throughputSettings/default/migrateToAutoscale": { + "post": { + "operationId": "CassandraResources_MigrateCassandraKeyspaceToAutoscale", + "x-ms-examples": { + "CosmosDBCassandraKeyspaceMigrateToAutoscale": { + "$ref": "./examples/CosmosDBCassandraKeyspaceMigrateToAutoscale.json" + } + }, + "description": "Migrate an Azure Cosmos DB Cassandra Keyspace from manual throughput to autoscale", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Cassandra Keyspace migrate operation will complete asynchronously." + }, + "200": { + "description": "The Cassandra Keyspace migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/throughputSettings/default/migrateToManualThroughput": { + "post": { + "operationId": "CassandraResources_MigrateCassandraKeyspaceToManualThroughput", + "x-ms-examples": { + "CosmosDBCassandraKeyspaceMigrateToManualThroughput": { + "$ref": "./examples/CosmosDBCassandraKeyspaceMigrateToManualThroughput.json" + } + }, + "description": "Migrate an Azure Cosmos DB Cassandra Keyspace from autoscale to manual throughput", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Cassandra Keyspace migrate operation will complete asynchronously." + }, + "200": { + "description": "The Cassandra Keyspace migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/tables": { + "get": { + "operationId": "CassandraResources_ListCassandraTables", + "x-ms-examples": { + "CosmosDBCassandraTableList": { + "$ref": "./examples/CosmosDBCassandraTableList.json" + } + }, + "description": "Lists the Cassandra table under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Cassandra table properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/CassandraTableListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/tables/{tableName}": { + "get": { + "operationId": "CassandraResources_GetCassandraTable", + "x-ms-examples": { + "CosmosDBCassandraTableGet": { + "$ref": "./examples/CosmosDBCassandraTableGet.json" + } + }, + "description": "Gets the Cassandra table under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Cassandra table property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/CassandraTableGetResults" + } + } + } + }, + "put": { + "operationId": "CassandraResources_CreateUpdateCassandraTable", + "x-ms-examples": { + "CosmosDBCassandraTableCreateUpdate": { + "$ref": "./examples/CosmosDBCassandraTableCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB Cassandra Table", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateCassandraTableParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CassandraTableCreateUpdateParameters" + }, + "description": "The parameters to provide for the current Cassandra Table." + } + ], + "responses": { + "202": { + "description": "The Cassandra Table create or update operation will complete asynchronously." + }, + "200": { + "description": "The Cassandra Table create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/CassandraTableGetResults" + } + } + } + }, + "delete": { + "operationId": "CassandraResources_DeleteCassandraTable", + "x-ms-examples": { + "CosmosDBCassandraTableDelete": { + "$ref": "./examples/CosmosDBCassandraTableDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB Cassandra table.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Cassandra table delete operation will complete asynchronously." + }, + "204": { + "description": "The Cassandra table delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/tables/{tableName}/throughputSettings/default": { + "get": { + "operationId": "CassandraResources_GetCassandraTableThroughput", + "x-ms-examples": { + "CosmosDBCassandraTableThroughputGet": { + "$ref": "./examples/CosmosDBCassandraTableThroughputGet.json" + } + }, + "description": "Gets the RUs per second of the Cassandra table under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The RUs per second of the Cassandra table was retrieved successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + }, + "put": { + "operationId": "CassandraResources_UpdateCassandraTableThroughput", + "x-ms-examples": { + "CosmosDBCassandraTableThroughputUpdate": { + "$ref": "./examples/CosmosDBCassandraTableThroughputUpdate.json" + } + }, + "description": "Update RUs per second of an Azure Cosmos DB Cassandra table", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "updateThroughputParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThroughputSettingsUpdateParameters" + }, + "description": "The RUs per second of the parameters to provide for the current Cassandra table." + } + ], + "responses": { + "202": { + "description": "The RUs per second of the Cassandra table update operation will complete asynchronously." + }, + "200": { + "description": "The RUs per second of the Cassandra table update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/tables/{tableName}/throughputSettings/default/migrateToAutoscale": { + "post": { + "operationId": "CassandraResources_MigrateCassandraTableToAutoscale", + "x-ms-examples": { + "CosmosDBCassandraTableMigrateToAutoscale": { + "$ref": "./examples/CosmosDBCassandraTableMigrateToAutoscale.json" + } + }, + "description": "Migrate an Azure Cosmos DB Cassandra table from manual throughput to autoscale", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Cassandra table migrate operation will complete asynchronously." + }, + "200": { + "description": "The Cassandra table migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/tables/{tableName}/throughputSettings/default/migrateToManualThroughput": { + "post": { + "operationId": "CassandraResources_MigrateCassandraTableToManualThroughput", + "x-ms-examples": { + "CosmosDBCassandraTableMigrateToManualThroughput": { + "$ref": "./examples/CosmosDBCassandraTableMigrateToManualThroughput.json" + } + }, + "description": "Migrate an Azure Cosmos DB Cassandra table from autoscale to manual throughput", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Cassandra table migrate operation will complete asynchronously." + }, + "200": { + "description": "The Cassandra table migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases": { + "get": { + "operationId": "GremlinResources_ListGremlinDatabases", + "x-ms-examples": { + "CosmosDBGremlinDatabaseList": { + "$ref": "./examples/CosmosDBGremlinDatabaseList.json" + } + }, + "description": "Lists the Gremlin databases under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Gremlin database properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/GremlinDatabaseListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases/{databaseName}": { + "get": { + "operationId": "GremlinResources_GetGremlinDatabase", + "x-ms-examples": { + "CosmosDBGremlinDatabaseGet": { + "$ref": "./examples/CosmosDBGremlinDatabaseGet.json" + } + }, + "description": "Gets the Gremlin databases under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Gremlin database property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/GremlinDatabaseGetResults" + } + } + } + }, + "put": { + "operationId": "GremlinResources_CreateUpdateGremlinDatabase", + "x-ms-examples": { + "CosmosDBGremlinDatabaseCreateUpdate": { + "$ref": "./examples/CosmosDBGremlinDatabaseCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB Gremlin database", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateGremlinDatabaseParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GremlinDatabaseCreateUpdateParameters" + }, + "description": "The parameters to provide for the current Gremlin database." + } + ], + "responses": { + "202": { + "description": "The Gremlin database create or update operation will complete asynchronously." + }, + "200": { + "description": "The Gremlin database create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/GremlinDatabaseGetResults" + } + } + } + }, + "delete": { + "operationId": "GremlinResources_DeleteGremlinDatabase", + "x-ms-examples": { + "CosmosDBGremlinDatabaseDelete": { + "$ref": "./examples/CosmosDBGremlinDatabaseDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB Gremlin database.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Gremlin database delete operation will complete asynchronously." + }, + "204": { + "description": "The Gremlin database delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases/{databaseName}/throughputSettings/default": { + "get": { + "operationId": "GremlinResources_GetGremlinDatabaseThroughput", + "x-ms-examples": { + "CosmosDBGremlinDatabaseThroughputGet": { + "$ref": "./examples/CosmosDBGremlinDatabaseThroughputGet.json" + } + }, + "description": "Gets the RUs per second of the Gremlin database under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The RUs per second of the Gremlin database was retrieved successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + }, + "put": { + "operationId": "GremlinResources_UpdateGremlinDatabaseThroughput", + "x-ms-examples": { + "CosmosDBGremlinDatabaseThroughputUpdate": { + "$ref": "./examples/CosmosDBGremlinDatabaseThroughputUpdate.json" + } + }, + "description": "Update RUs per second of an Azure Cosmos DB Gremlin database", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "updateThroughputParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThroughputSettingsUpdateParameters" + }, + "description": "The RUs per second of the parameters to provide for the current Gremlin database." + } + ], + "responses": { + "202": { + "description": "The RUs per second of the Gremlin database update operation will complete asynchronously." + }, + "200": { + "description": "The RUs per second of the Gremlin database update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases/{databaseName}/throughputSettings/default/migrateToAutoscale": { + "post": { + "operationId": "GremlinResources_MigrateGremlinDatabaseToAutoscale", + "x-ms-examples": { + "CosmosDBGremlinDatabaseMigrateToAutoscale": { + "$ref": "./examples/CosmosDBGremlinDatabaseMigrateToAutoscale.json" + } + }, + "description": "Migrate an Azure Cosmos DB Gremlin database from manual throughput to autoscale", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Gremlin database migrate operation will complete asynchronously." + }, + "200": { + "description": "The Gremlin database migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases/{databaseName}/throughputSettings/default/migrateToManualThroughput": { + "post": { + "operationId": "GremlinResources_MigrateGremlinDatabaseToManualThroughput", + "x-ms-examples": { + "CosmosDBGremlinDatabaseMigrateToManualThroughput": { + "$ref": "./examples/CosmosDBGremlinDatabaseMigrateToManualThroughput.json" + } + }, + "description": "Migrate an Azure Cosmos DB Gremlin database from autoscale to manual throughput", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Gremlin database migrate operation will complete asynchronously." + }, + "200": { + "description": "The Gremlin database migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases/{databaseName}/graphs": { + "get": { + "operationId": "GremlinResources_ListGremlinGraphs", + "x-ms-examples": { + "CosmosDBGremlinGraphList": { + "$ref": "./examples/CosmosDBGremlinGraphList.json" + } + }, + "description": "Lists the Gremlin graph under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Gremlin graph properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/GremlinGraphListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases/{databaseName}/graphs/{graphName}": { + "get": { + "operationId": "GremlinResources_GetGremlinGraph", + "x-ms-examples": { + "CosmosDBGremlinGraphGet": { + "$ref": "./examples/CosmosDBGremlinGraphGet.json" + } + }, + "description": "Gets the Gremlin graph under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/graphNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Gremlin graph property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/GremlinGraphGetResults" + } + } + } + }, + "put": { + "operationId": "GremlinResources_CreateUpdateGremlinGraph", + "x-ms-examples": { + "CosmosDBGremlinGraphCreateUpdate": { + "$ref": "./examples/CosmosDBGremlinGraphCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB Gremlin graph", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/graphNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateGremlinGraphParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GremlinGraphCreateUpdateParameters" + }, + "description": "The parameters to provide for the current Gremlin graph." + } + ], + "responses": { + "202": { + "description": "The Gremlin graph create or update operation will complete asynchronously." + }, + "200": { + "description": "The Gremlin graph create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/GremlinGraphGetResults" + } + } + } + }, + "delete": { + "operationId": "GremlinResources_DeleteGremlinGraph", + "x-ms-examples": { + "CosmosDBGremlinGraphDelete": { + "$ref": "./examples/CosmosDBGremlinGraphDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB Gremlin graph.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/graphNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Gremlin graph delete operation will complete asynchronously." + }, + "204": { + "description": "The Gremlin graph delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases/{databaseName}/graphs/{graphName}/throughputSettings/default": { + "get": { + "operationId": "GremlinResources_GetGremlinGraphThroughput", + "x-ms-examples": { + "CosmosDBGremlinGraphThroughputGet": { + "$ref": "./examples/CosmosDBGremlinGraphThroughputGet.json" + } + }, + "description": "Gets the Gremlin graph throughput under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/graphNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The RUs per second of the Gremlin graph was retrieved successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + }, + "put": { + "operationId": "GremlinResources_UpdateGremlinGraphThroughput", + "x-ms-examples": { + "CosmosDBGremlinGraphThroughputUpdate": { + "$ref": "./examples/CosmosDBGremlinGraphThroughputUpdate.json" + } + }, + "description": "Update RUs per second of an Azure Cosmos DB Gremlin graph", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/graphNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "updateThroughputParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThroughputSettingsUpdateParameters" + }, + "description": "The RUs per second of the parameters to provide for the current Gremlin graph." + } + ], + "responses": { + "202": { + "description": "The RUs per second of the Gremlin graph update operation will complete asynchronously." + }, + "200": { + "description": "The RUs per second of the Gremlin graph update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases/{databaseName}/graphs/{graphName}/throughputSettings/default/migrateToAutoscale": { + "post": { + "operationId": "GremlinResources_MigrateGremlinGraphToAutoscale", + "x-ms-examples": { + "CosmosDBGremlinGraphMigrateToAutoscale": { + "$ref": "./examples/CosmosDBGremlinGraphMigrateToAutoscale.json" + } + }, + "description": "Migrate an Azure Cosmos DB Gremlin graph from manual throughput to autoscale", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/graphNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Gremlin graph migrate operation will complete asynchronously." + }, + "200": { + "description": "The Gremlin graph migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases/{databaseName}/graphs/{graphName}/throughputSettings/default/migrateToManualThroughput": { + "post": { + "operationId": "GremlinResources_MigrateGremlinGraphToManualThroughput", + "x-ms-examples": { + "CosmosDBGremlinGraphMigrateToManualThroughput": { + "$ref": "./examples/CosmosDBGremlinGraphMigrateToManualThroughput.json" + } + }, + "description": "Migrate an Azure Cosmos DB Gremlin graph from autoscale to manual throughput", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/graphNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Gremlin graph migrate operation will complete asynchronously." + }, + "200": { + "description": "The Gremlin graph migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DocumentDB/locations/{location}/restorableDatabaseAccounts": { + "get": { + "operationId": "RestorableDatabaseAccounts_ListByLocation", + "x-ms-examples": { + "CosmosDBDatabaseAccountList": { + "$ref": "./examples/CosmosDBRestorableDatabaseAccountList.json" + } + }, + "description": "Lists all the restorable Azure Cosmos DB database accounts available under the subscription and in a region. This call requires 'Microsoft.DocumentDB/locations/restorableDatabaseAccounts/read' permission.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/locationParameter" + } + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/RestorableDatabaseAccountsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DocumentDB/restorableDatabaseAccounts": { + "get": { + "operationId": "RestorableDatabaseAccounts_List", + "x-ms-examples": { + "CosmosDBDatabaseAccountList": { + "$ref": "./examples/CosmosDBRestorableDatabaseAccountNoLocationList.json" + } + }, + "description": "Lists all the restorable Azure Cosmos DB database accounts available under the subscription. This call requires 'Microsoft.DocumentDB/locations/restorableDatabaseAccounts/read' permission.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/RestorableDatabaseAccountsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DocumentDB/locations": { + "get": { + "operationId": "LocationList", + "x-ms-examples": { + "CosmosDBLocationList": { + "$ref": "./examples/CosmosDBLocationList.json" + } + }, + "description": "List Cosmos DB locations and their properties", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/LocationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DocumentDB/locations/{location}": { + "get": { + "operationId": "LocationGet", + "x-ms-examples": { + "CosmosDBLocationGet": { + "$ref": "./examples/CosmosDBLocationGet.json" + } + }, + "description": "Get the properties of an existing Cosmos DB location", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/locationParameter" + } + ], + "responses": { + "200": { + "description": "The Cosmos DB location properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/LocationGetResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DocumentDB/locations/{location}/restorableDatabaseAccounts/{instanceId}": { + "get": { + "operationId": "RestorableDatabaseAccounts_GetByLocation", + "x-ms-examples": { + "CosmosDBDatabaseAccountGet": { + "$ref": "./examples/CosmosDBRestorableDatabaseAccountGet.json" + } + }, + "description": "Retrieves the properties of an existing Azure Cosmos DB restorable database account. This call requires 'Microsoft.DocumentDB/locations/restorableDatabaseAccounts/read/*' permission.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/locationParameter" + }, + { + "$ref": "#/parameters/instanceIdParameter" + } + ], + "responses": { + "200": { + "description": "The restorable database account properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/RestorableDatabaseAccountGetResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/retrieveContinuousBackupInformation": { + "post": { + "operationId": "SqlResources_RetrieveContinuousBackupInformation", + "x-ms-examples": { + "CosmosDBSqlContainerBackupInformation": { + "$ref": "./examples/CosmosDBBackupInformation.json" + } + }, + "description": "Retrieves continuous backup information for a container resource.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "location", + "required": true, + "description": "The name of the continuous backup restore location.", + "schema": { + "$ref": "#/definitions/ContinuousBackupRestoreLocation" + } + } + ], + "responses": { + "200": { + "description": "The Sql container retrieve backup information operation completed successfully.", + "schema": { + "$ref": "#/definitions/BackupInformation" + } + }, + "202": { + "description": "The sql container retrieve backup information operation will complete asynchronously." + } + } + } + } + }, + "definitions": { + "DatabaseAccountsListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/DatabaseAccountGetResults" + }, + "description": "List of database account and their properties." + } + }, + "description": "The List operation response, that contains the database accounts and their properties." + }, + "SqlDatabaseListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SqlDatabaseGetResults" + }, + "description": "List of SQL databases and their properties." + } + }, + "description": "The List operation response, that contains the SQL databases and their properties." + }, + "SqlContainerListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SqlContainerGetResults" + }, + "description": "List of containers and their properties." + } + }, + "description": "The List operation response, that contains the containers and their properties." + }, + "SqlStoredProcedureListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SqlStoredProcedureGetResults" + }, + "description": "List of storedProcedures and their properties." + } + }, + "description": "The List operation response, that contains the storedProcedures and their properties." + }, + "SqlUserDefinedFunctionListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SqlUserDefinedFunctionGetResults" + }, + "description": "List of userDefinedFunctions and their properties." + } + }, + "description": "The List operation response, that contains the userDefinedFunctions and their properties." + }, + "SqlTriggerListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SqlTriggerGetResults" + }, + "description": "List of triggers and their properties." + } + }, + "description": "The List operation response, that contains the triggers and their properties." + }, + "MongoDBDatabaseListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/MongoDBDatabaseGetResults" + }, + "description": "List of MongoDB databases and their properties." + } + }, + "description": "The List operation response, that contains the MongoDB databases and their properties." + }, + "MongoDBCollectionListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/MongoDBCollectionGetResults" + }, + "description": "List of MongoDB collections and their properties." + } + }, + "description": "The List operation response, that contains the MongoDB collections and their properties." + }, + "TableListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/TableGetResults" + }, + "description": "List of Table and their properties." + } + }, + "description": "The List operation response, that contains the Table and their properties." + }, + "CassandraKeyspaceListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/CassandraKeyspaceGetResults" + }, + "description": "List of Cassandra keyspaces and their properties." + } + }, + "description": "The List operation response, that contains the Cassandra keyspaces and their properties." + }, + "CassandraTableListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/CassandraTableGetResults" + }, + "description": "List of Cassandra tables and their properties." + } + }, + "description": "The List operation response, that contains the Cassandra tables and their properties." + }, + "GremlinDatabaseListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/GremlinDatabaseGetResults" + }, + "description": "List of Gremlin databases and their properties." + } + }, + "description": "The List operation response, that contains the Gremlin databases and their properties." + }, + "GremlinGraphListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/GremlinGraphGetResults" + }, + "description": "List of graphs and their properties." + } + }, + "description": "The List operation response, that contains the graphs and their properties." + }, + "ErrorResponse": { + "properties": { + "code": { + "description": "Error code.", + "type": "string" + }, + "message": { + "description": "Error message indicating why the operation failed.", + "type": "string" + } + }, + "description": "Error Response." + }, + "CloudError": { + "x-ms-external": true, + "description": "An error response from the service.", + "properties": { + "error": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "FailoverPolicies": { + "properties": { + "failoverPolicies": { + "type": "array", + "description": "List of failover policies.", + "items": { + "$ref": "#/definitions/FailoverPolicy" + } + } + }, + "required": [ + "failoverPolicies" + ], + "description": "The list of new failover policies for the failover priority change." + }, + "FailoverPolicy": { + "type": "object", + "description": "The failover policy for a given region of a database account.", + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The unique identifier of the region in which the database account replicates to. Example: <accountName>-<locationName>." + }, + "locationName": { + "type": "string", + "description": "The name of the region in which the database account exists." + }, + "failoverPriority": { + "type": "integer", + "minimum": 0, + "format": "int32", + "description": "The failover priority of the region. A failover priority of 0 indicates a write region. The maximum value for a failover priority = (total number of regions - 1). Failover priority values must be unique for each of the regions in which the database account exists." + } + } + }, + "RegionForOnlineOffline": { + "properties": { + "region": { + "type": "string", + "description": "Cosmos DB region, with spaces between words and each word capitalized." + } + }, + "required": [ + "region" + ], + "description": "Cosmos DB region to online or offline." + }, + "Location": { + "description": "A region in which the Azure Cosmos DB database account is deployed.", + "type": "object", + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The unique identifier of the region within the database account. Example: <accountName>-<locationName>." + }, + "locationName": { + "type": "string", + "description": "The name of the region." + }, + "documentEndpoint": { + "type": "string", + "readOnly": true, + "description": "The connection endpoint for the specific region. Example: https://<accountName>-<locationName>.documents.azure.com:443/" + }, + "provisioningState": { + "$ref": "#/definitions/ProvisioningState" + }, + "failoverPriority": { + "description": "The failover priority of the region. A failover priority of 0 indicates a write region. The maximum value for a failover priority = (total number of regions - 1). Failover priority values must be unique for each of the regions in which the database account exists.", + "format": "int32", + "type": "integer", + "minimum": 0 + }, + "isZoneRedundant": { + "type": "boolean", + "description": "Flag to indicate whether or not this region is an AvailabilityZone region" + } + } + }, + "ARMResourceProperties": { + "type": "object", + "description": "The core properties of ARM resources.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The unique resource identifier of the ARM resource." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the ARM resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of Azure resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "tags": { + "$ref": "#/definitions/Tags" + }, + "identity": { + "$ref": "#/definitions/ManagedServiceIdentity" + } + }, + "x-ms-azure-resource": true + }, + "ARMProxyResource": { + "type": "object", + "description": "The resource model definition for a ARM proxy resource. It will have everything other than required location and tags", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The unique resource identifier of the database account." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the database account." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of Azure resource." + } + }, + "x-ms-azure-resource": true + }, + "DatabaseAccountGetResults": { + "description": "An Azure Cosmos DB database account.", + "type": "object", + "properties": { + "kind": { + "description": "Indicates the type of database account. This can only be set at database account creation.", + "type": "string", + "default": "GlobalDocumentDB", + "enum": [ + "GlobalDocumentDB", + "MongoDB", + "Parse" + ], + "x-ms-enum": { + "name": "DatabaseAccountKind", + "modelAsString": true + } + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DatabaseAccountGetProperties" + }, + "systemData": { + "readOnly": true, + "description": "The system meta data relating to this resource.", + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/systemData" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "ExtendedResourceProperties": { + "description": "The system generated resource properties associated with SQL databases, SQL containers, Gremlin databases and Gremlin graphs.", + "type": "object", + "properties": { + "_rid": { + "type": "string", + "description": "A system generated property. A unique identifier.", + "readOnly": true + }, + "_ts": { + "type": "number", + "description": "A system generated property that denotes the last updated timestamp of the resource.", + "readOnly": true + }, + "_etag": { + "type": "string", + "description": "A system generated property representing the resource etag required for optimistic concurrency control.", + "readOnly": true + } + } + }, + "ThroughputSettingsGetResults": { + "description": "An Azure Cosmos DB resource throughput.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB resource throughput", + "$ref": "#/definitions/ThroughputSettingsGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "ThroughputSettingsGetProperties": { + "description": "The properties of an Azure Cosmos DB resource throughput", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/ThroughputSettingsResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + } + } + }, + "SqlDatabaseGetResults": { + "description": "An Azure Cosmos DB SQL database.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB SQL database", + "$ref": "#/definitions/SqlDatabaseGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "SqlDatabaseGetProperties": { + "description": "The properties of an Azure Cosmos DB SQL database", + "type": "object", + "properties": { + "resource": { + "properties": { + "_colls": { + "type": "string", + "description": "A system generated property that specified the addressable path of the collections resource." + }, + "_users": { + "type": "string", + "description": "A system generated property that specifies the addressable path of the users resource." + } + }, + "allOf": [ + { + "$ref": "#/definitions/SqlDatabaseResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + }, + "options": { + "allOf": [ + { + "$ref": "#/definitions/OptionsResource" + } + ] + } + } + }, + "SqlContainerGetResults": { + "description": "An Azure Cosmos DB container.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB container", + "$ref": "#/definitions/SqlContainerGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "SqlContainerGetProperties": { + "description": "The properties of an Azure Cosmos DB container", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/SqlContainerResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + }, + "options": { + "allOf": [ + { + "$ref": "#/definitions/OptionsResource" + } + ] + } + } + }, + "SqlStoredProcedureGetResults": { + "description": "An Azure Cosmos DB storedProcedure.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB storedProcedure", + "$ref": "#/definitions/SqlStoredProcedureGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "SqlStoredProcedureGetProperties": { + "description": "The properties of an Azure Cosmos DB StoredProcedure", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/SqlStoredProcedureResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + } + } + }, + "SqlUserDefinedFunctionGetResults": { + "description": "An Azure Cosmos DB userDefinedFunction.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB userDefinedFunction", + "$ref": "#/definitions/SqlUserDefinedFunctionGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "SqlUserDefinedFunctionGetProperties": { + "description": "The properties of an Azure Cosmos DB userDefinedFunction", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/SqlUserDefinedFunctionResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + } + } + }, + "SqlTriggerGetResults": { + "description": "An Azure Cosmos DB trigger.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB trigger", + "$ref": "#/definitions/SqlTriggerGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "SqlTriggerGetProperties": { + "description": "The properties of an Azure Cosmos DB trigger", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/SqlTriggerResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + } + } + }, + "MongoDBDatabaseGetResults": { + "description": "An Azure Cosmos DB MongoDB database.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB MongoDB database", + "$ref": "#/definitions/MongoDBDatabaseGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "MongoDBDatabaseGetProperties": { + "description": "The properties of an Azure Cosmos DB MongoDB database", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/MongoDBDatabaseResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + }, + "options": { + "allOf": [ + { + "$ref": "#/definitions/OptionsResource" + } + ] + } + } + }, + "MongoDBCollectionGetResults": { + "description": "An Azure Cosmos DB MongoDB collection.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB MongoDB collection", + "$ref": "#/definitions/MongoDBCollectionGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "MongoDBCollectionGetProperties": { + "description": "The properties of an Azure Cosmos DB MongoDB collection", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/MongoDBCollectionResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + }, + "options": { + "allOf": [ + { + "$ref": "#/definitions/OptionsResource" + } + ] + } + } + }, + "TableGetResults": { + "description": "An Azure Cosmos DB Table.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB Table", + "$ref": "#/definitions/TableGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "TableGetProperties": { + "description": "The properties of an Azure Cosmos Table", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/TableResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + }, + "options": { + "allOf": [ + { + "$ref": "#/definitions/OptionsResource" + } + ] + } + } + }, + "CassandraKeyspaceGetResults": { + "description": "An Azure Cosmos DB Cassandra keyspace.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB Cassandra keyspace", + "$ref": "#/definitions/CassandraKeyspaceGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "CassandraKeyspaceGetProperties": { + "description": "The properties of an Azure Cosmos DB Cassandra keyspace", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/CassandraKeyspaceResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + }, + "options": { + "allOf": [ + { + "$ref": "#/definitions/OptionsResource" + } + ] + } + } + }, + "CassandraTableGetResults": { + "description": "An Azure Cosmos DB Cassandra table.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB Cassandra table", + "$ref": "#/definitions/CassandraTableGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "CassandraTableGetProperties": { + "description": "The properties of an Azure Cosmos DB Cassandra table", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/CassandraTableResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + }, + "options": { + "allOf": [ + { + "$ref": "#/definitions/OptionsResource" + } + ] + } + } + }, + "GremlinDatabaseGetResults": { + "description": "An Azure Cosmos DB Gremlin database.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB SQL database", + "$ref": "#/definitions/GremlinDatabaseGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "GremlinDatabaseGetProperties": { + "description": "The properties of an Azure Cosmos DB SQL database", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/GremlinDatabaseResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + }, + "options": { + "allOf": [ + { + "$ref": "#/definitions/OptionsResource" + } + ] + } + } + }, + "GremlinGraphGetResults": { + "description": "An Azure Cosmos DB Gremlin graph.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB Gremlin graph", + "$ref": "#/definitions/GremlinGraphGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "GremlinGraphGetProperties": { + "description": "The properties of an Azure Cosmos DB Gremlin graph", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/GremlinGraphResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + }, + "options": { + "allOf": [ + { + "$ref": "#/definitions/OptionsResource" + } + ] + } + } + }, + "ConsistencyPolicy": { + "type": "object", + "description": "The consistency policy for the Cosmos DB database account.", + "properties": { + "defaultConsistencyLevel": { + "description": "The default consistency level and configuration settings of the Cosmos DB account.", + "type": "string", + "enum": [ + "Eventual", + "Session", + "BoundedStaleness", + "Strong", + "ConsistentPrefix" + ], + "x-ms-enum": { + "name": "DefaultConsistencyLevel", + "modelAsString": false + } + }, + "maxStalenessPrefix": { + "description": "When used with the Bounded Staleness consistency level, this value represents the number of stale requests tolerated. Accepted range for this value is 1 – 2,147,483,647. Required when defaultConsistencyPolicy is set to 'BoundedStaleness'.", + "type": "integer", + "minimum": 1, + "maximum": 2147483647, + "format": "int64" + }, + "maxIntervalInSeconds": { + "description": "When used with the Bounded Staleness consistency level, this value represents the time amount of staleness (in seconds) tolerated. Accepted range for this value is 5 - 86400. Required when defaultConsistencyPolicy is set to 'BoundedStaleness'.", + "type": "integer", + "minimum": 5, + "maximum": 86400, + "format": "int32" + } + }, + "required": [ + "defaultConsistencyLevel" + ] + }, + "CorsPolicy": { + "type": "object", + "description": "The CORS policy for the Cosmos DB database account.", + "properties": { + "allowedOrigins": { + "description": "The origin domains that are permitted to make a request against the service via CORS.", + "type": "string" + }, + "allowedMethods": { + "description": "The methods (HTTP request verbs) that the origin domain may use for a CORS request.", + "type": "string" + }, + "allowedHeaders": { + "description": "The request headers that the origin domain may specify on the CORS request.", + "type": "string" + }, + "exposedHeaders": { + "description": "The response headers that may be sent in the response to the CORS request and exposed by the browser to the request issuer.", + "type": "string" + }, + "maxAgeInSeconds": { + "description": "The maximum amount time that a browser should cache the preflight OPTIONS request.", + "type": "integer", + "minimum": 1, + "maximum": 2147483647, + "format": "int64" + } + }, + "required": [ + "allowedOrigins" + ] + }, + "DatabaseAccountGetProperties": { + "description": "Properties for the database account.", + "type": "object", + "properties": { + "provisioningState": { + "$ref": "#/definitions/ProvisioningState" + }, + "documentEndpoint": { + "description": "The connection endpoint for the Cosmos DB database account.", + "type": "string", + "readOnly": true + }, + "databaseAccountOfferType": { + "description": "The offer type for the Cosmos DB database account. Default value: Standard.", + "readOnly": true, + "$ref": "#/definitions/DatabaseAccountOfferType" + }, + "ipRules": { + "description": "List of IpRules.", + "$ref": "#/definitions/IPRules" + }, + "isVirtualNetworkFilterEnabled": { + "description": "Flag to indicate whether to enable/disable Virtual Network ACL rules.", + "type": "boolean" + }, + "enableAutomaticFailover": { + "description": "Enables automatic failover of the write region in the rare event that the region is unavailable due to an outage. Automatic failover will result in a new write region for the account and is chosen based on the failover priorities configured for the account.", + "type": "boolean" + }, + "consistencyPolicy": { + "description": "The consistency policy for the Cosmos DB database account.", + "$ref": "#/definitions/ConsistencyPolicy" + }, + "capabilities": { + "type": "array", + "description": "List of Cosmos DB capabilities for the account", + "items": { + "$ref": "#/definitions/Capability" + } + }, + "writeLocations": { + "type": "array", + "readOnly": true, + "description": "An array that contains the write location for the Cosmos DB account.", + "items": { + "$ref": "#/definitions/Location" + } + }, + "readLocations": { + "type": "array", + "readOnly": true, + "description": "An array that contains of the read locations enabled for the Cosmos DB account.", + "items": { + "$ref": "#/definitions/Location" + } + }, + "locations": { + "type": "array", + "readOnly": true, + "description": "An array that contains all of the locations enabled for the Cosmos DB account.", + "items": { + "$ref": "#/definitions/Location" + } + }, + "failoverPolicies": { + "type": "array", + "readOnly": true, + "description": "An array that contains the regions ordered by their failover priorities.", + "items": { + "$ref": "#/definitions/FailoverPolicy" + } + }, + "virtualNetworkRules": { + "type": "array", + "description": "List of Virtual Network ACL rules configured for the Cosmos DB account.", + "items": { + "$ref": "#/definitions/VirtualNetworkRule" + } + }, + "privateEndpointConnections": { + "type": "array", + "readOnly": true, + "description": "List of Private Endpoint Connections configured for the Cosmos DB account.", + "items": { + "$ref": "../../preview/2021-04-01-preview/privateEndpointConnection.json#/definitions/PrivateEndpointConnection" + } + }, + "enableMultipleWriteLocations": { + "description": "Enables the account to write in multiple locations", + "type": "boolean" + }, + "enableCassandraConnector": { + "description": "Enables the cassandra connector on the Cosmos DB C* account", + "type": "boolean" + }, + "connectorOffer": { + "description": "The cassandra connector offer type for the Cosmos DB database C* account.", + "$ref": "#/definitions/ConnectorOffer" + }, + "disableKeyBasedMetadataWriteAccess": { + "description": "Disable write operations on metadata resources (databases, containers, throughput) via account keys", + "type": "boolean" + }, + "keyVaultKeyUri": { + "description": "The URI of the key vault", + "type": "string" + }, + "defaultIdentity": { + "description": "The default identity for accessing key vault used in features like customer managed keys. The default identity needs to be explicitly set by the users. It can be \"FirstPartyIdentity\", \"SystemAssignedIdentity\" and more.", + "type": "string" + }, + "publicNetworkAccess": { + "description": "Whether requests from Public Network are allowed", + "$ref": "#/definitions/PublicNetworkAccess" + }, + "enableFreeTier": { + "description": "Flag to indicate whether Free Tier is enabled.", + "type": "boolean" + }, + "apiProperties": { + "description": "API specific properties.", + "type": "object", + "$ref": "#/definitions/ApiProperties" + }, + "enableAnalyticalStorage": { + "description": "Flag to indicate whether to enable storage analytics.", + "type": "boolean" + }, + "instanceId": { + "description": "A unique identifier assigned to the database account", + "type": "string", + "readOnly": true + }, + "createMode": { + "description": "Enum to indicate the mode of account creation.", + "type": "string", + "default": "Default", + "$ref": "#/definitions/CreateMode" + }, + "restoreParameters": { + "description": "Parameters to indicate the information about the restore.", + "type": "object", + "$ref": "#/definitions/RestoreParameters" + }, + "backupPolicy": { + "description": "The object representing the policy for taking backups on an account.", + "type": "object", + "$ref": "#/definitions/BackupPolicy" + }, + "cors": { + "type": "array", + "description": "The CORS policy for the Cosmos DB database account.", + "items": { + "$ref": "#/definitions/CorsPolicy" + } + }, + "networkAclBypass": { + "description": "Indicates what services are allowed to bypass firewall checks.", + "$ref": "#/definitions/NetworkAclBypass" + }, + "networkAclBypassResourceIds": { + "type": "array", + "description": "An array that contains the Resource Ids for Network Acl Bypass for the Cosmos DB account.", + "items": { + "type": "string" + } + } + } + }, + "DatabaseAccountCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB database accounts.", + "type": "object", + "discriminator": "createMode", + "properties": { + "consistencyPolicy": { + "description": "The consistency policy for the Cosmos DB account.", + "$ref": "#/definitions/ConsistencyPolicy" + }, + "locations": { + "type": "array", + "description": "An array that contains the georeplication locations enabled for the Cosmos DB account.", + "items": { + "$ref": "#/definitions/Location" + } + }, + "databaseAccountOfferType": { + "description": "The offer type for the database", + "$ref": "#/definitions/DatabaseAccountOfferType" + }, + "ipRules": { + "description": "List of IpRules.", + "$ref": "#/definitions/IPRules" + }, + "isVirtualNetworkFilterEnabled": { + "description": "Flag to indicate whether to enable/disable Virtual Network ACL rules.", + "type": "boolean" + }, + "enableAutomaticFailover": { + "description": "Enables automatic failover of the write region in the rare event that the region is unavailable due to an outage. Automatic failover will result in a new write region for the account and is chosen based on the failover priorities configured for the account.", + "type": "boolean" + }, + "capabilities": { + "type": "array", + "description": "List of Cosmos DB capabilities for the account", + "items": { + "$ref": "#/definitions/Capability" + } + }, + "virtualNetworkRules": { + "type": "array", + "description": "List of Virtual Network ACL rules configured for the Cosmos DB account.", + "items": { + "$ref": "#/definitions/VirtualNetworkRule" + } + }, + "enableMultipleWriteLocations": { + "description": "Enables the account to write in multiple locations", + "type": "boolean" + }, + "enableCassandraConnector": { + "description": "Enables the cassandra connector on the Cosmos DB C* account", + "type": "boolean" + }, + "connectorOffer": { + "description": "The cassandra connector offer type for the Cosmos DB database C* account.", + "$ref": "#/definitions/ConnectorOffer" + }, + "disableKeyBasedMetadataWriteAccess": { + "description": "Disable write operations on metadata resources (databases, containers, throughput) via account keys", + "type": "boolean" + }, + "keyVaultKeyUri": { + "description": "The URI of the key vault", + "type": "string" + }, + "defaultIdentity": { + "description": "The default identity for accessing key vault used in features like customer managed keys. The default identity needs to be explicitly set by the users. It can be \"FirstPartyIdentity\", \"SystemAssignedIdentity\" and more.", + "type": "string" + }, + "publicNetworkAccess": { + "description": "Whether requests from Public Network are allowed", + "$ref": "#/definitions/PublicNetworkAccess" + }, + "enableFreeTier": { + "description": "Flag to indicate whether Free Tier is enabled.", + "type": "boolean" + }, + "apiProperties": { + "description": "API specific properties. Currently, supported only for MongoDB API.", + "type": "object", + "$ref": "#/definitions/ApiProperties" + }, + "enableAnalyticalStorage": { + "description": "Flag to indicate whether to enable storage analytics.", + "type": "boolean" + }, + "createMode": { + "description": "Enum to indicate the mode of account creation.", + "type": "string", + "default": "Default", + "$ref": "#/definitions/CreateMode" + }, + "backupPolicy": { + "description": "The object representing the policy for taking backups on an account.", + "type": "object", + "$ref": "#/definitions/BackupPolicy" + }, + "cors": { + "type": "array", + "description": "The CORS policy for the Cosmos DB database account.", + "items": { + "$ref": "#/definitions/CorsPolicy" + } + }, + "networkAclBypass": { + "description": "Indicates what services are allowed to bypass firewall checks.", + "$ref": "#/definitions/NetworkAclBypass" + }, + "networkAclBypassResourceIds": { + "type": "array", + "description": "An array that contains the Resource Ids for Network Acl Bypass for the Cosmos DB account.", + "items": { + "type": "string" + } + } + }, + "required": [ + "locations", + "databaseAccountOfferType", + "createMode" + ] + }, + "DefaultRequestDatabaseAccountCreateUpdateProperties": { + "description": "Properties for non-restore Azure Cosmos DB database account requests.", + "allOf": [ + { + "$ref": "#/definitions/DatabaseAccountCreateUpdateProperties" + } + ], + "x-ms-discriminator-value": "Default" + }, + "RestoreReqeustDatabaseAccountCreateUpdateProperties": { + "description": "Properties to restore Azure Cosmos DB database account.", + "allOf": [ + { + "$ref": "#/definitions/DatabaseAccountCreateUpdateProperties" + } + ], + "properties": { + "restoreParameters": { + "description": "Parameters to indicate the information about the restore.", + "type": "object", + "$ref": "#/definitions/RestoreParameters" + } + }, + "x-ms-discriminator-value": "Restore" + }, + "DatabaseAccountCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB database accounts.", + "type": "object", + "properties": { + "kind": { + "description": "Indicates the type of database account. This can only be set at database account creation.", + "type": "string", + "default": "GlobalDocumentDB", + "enum": [ + "GlobalDocumentDB", + "MongoDB", + "Parse" + ], + "x-ms-enum": { + "name": "DatabaseAccountKind", + "modelAsString": true + } + }, + "properties": { + "$ref": "#/definitions/DatabaseAccountCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "DatabaseAccountUpdateProperties": { + "description": "Properties to update Azure Cosmos DB database accounts.", + "type": "object", + "properties": { + "consistencyPolicy": { + "description": "The consistency policy for the Cosmos DB account.", + "$ref": "#/definitions/ConsistencyPolicy" + }, + "locations": { + "type": "array", + "description": "An array that contains the georeplication locations enabled for the Cosmos DB account.", + "items": { + "$ref": "#/definitions/Location" + } + }, + "ipRules": { + "description": "List of IpRules.", + "$ref": "#/definitions/IPRules" + }, + "isVirtualNetworkFilterEnabled": { + "description": "Flag to indicate whether to enable/disable Virtual Network ACL rules.", + "type": "boolean" + }, + "enableAutomaticFailover": { + "description": "Enables automatic failover of the write region in the rare event that the region is unavailable due to an outage. Automatic failover will result in a new write region for the account and is chosen based on the failover priorities configured for the account.", + "type": "boolean" + }, + "capabilities": { + "type": "array", + "description": "List of Cosmos DB capabilities for the account", + "items": { + "$ref": "#/definitions/Capability" + } + }, + "virtualNetworkRules": { + "type": "array", + "description": "List of Virtual Network ACL rules configured for the Cosmos DB account.", + "items": { + "$ref": "#/definitions/VirtualNetworkRule" + } + }, + "enableMultipleWriteLocations": { + "description": "Enables the account to write in multiple locations", + "type": "boolean" + }, + "enableCassandraConnector": { + "description": "Enables the cassandra connector on the Cosmos DB C* account", + "type": "boolean" + }, + "connectorOffer": { + "description": "The cassandra connector offer type for the Cosmos DB database C* account.", + "$ref": "#/definitions/ConnectorOffer" + }, + "disableKeyBasedMetadataWriteAccess": { + "description": "Disable write operations on metadata resources (databases, containers, throughput) via account keys", + "type": "boolean" + }, + "keyVaultKeyUri": { + "description": "The URI of the key vault", + "type": "string" + }, + "defaultIdentity": { + "description": "The default identity for accessing key vault used in features like customer managed keys. The default identity needs to be explicitly set by the users. It can be \"FirstPartyIdentity\", \"SystemAssignedIdentity\" and more.", + "type": "string" + }, + "publicNetworkAccess": { + "description": "Whether requests from Public Network are allowed", + "$ref": "#/definitions/PublicNetworkAccess" + }, + "enableFreeTier": { + "description": "Flag to indicate whether Free Tier is enabled.", + "type": "boolean" + }, + "apiProperties": { + "description": "API specific properties. Currently, supported only for MongoDB API.", + "type": "object", + "$ref": "#/definitions/ApiProperties" + }, + "enableAnalyticalStorage": { + "description": "Flag to indicate whether to enable storage analytics.", + "type": "boolean" + }, + "backupPolicy": { + "description": "The object representing the policy for taking backups on an account.", + "type": "object", + "$ref": "#/definitions/BackupPolicy" + }, + "cors": { + "type": "array", + "description": "The CORS policy for the Cosmos DB database account.", + "items": { + "$ref": "#/definitions/CorsPolicy" + } + }, + "networkAclBypass": { + "description": "Indicates what services are allowed to bypass firewall checks.", + "$ref": "#/definitions/NetworkAclBypass" + }, + "networkAclBypassResourceIds": { + "type": "array", + "description": "An array that contains the Resource Ids for Network Acl Bypass for the Cosmos DB account.", + "items": { + "type": "string" + } + } + } + }, + "DatabaseAccountUpdateParameters": { + "description": "Parameters for patching Azure Cosmos DB database account properties.", + "type": "object", + "properties": { + "tags": { + "$ref": "#/definitions/Tags" + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DatabaseAccountUpdateProperties" + }, + "identity": { + "$ref": "#/definitions/ManagedServiceIdentity" + } + } + }, + "DatabaseAccountListReadOnlyKeysResult": { + "description": "The read-only access keys for the given database account.", + "properties": { + "primaryReadonlyMasterKey": { + "readOnly": true, + "type": "string", + "description": "Base 64 encoded value of the primary read-only key." + }, + "secondaryReadonlyMasterKey": { + "readOnly": true, + "type": "string", + "description": "Base 64 encoded value of the secondary read-only key." + } + } + }, + "DatabaseAccountListKeysResult": { + "description": "The access keys for the given database account.", + "properties": { + "primaryMasterKey": { + "readOnly": true, + "type": "string", + "description": "Base 64 encoded value of the primary read-write key." + }, + "secondaryMasterKey": { + "readOnly": true, + "type": "string", + "description": "Base 64 encoded value of the secondary read-write key." + } + }, + "allOf": [ + { + "$ref": "#/definitions/DatabaseAccountListReadOnlyKeysResult" + } + ] + }, + "DatabaseAccountConnectionString": { + "description": "Connection string for the Cosmos DB account", + "properties": { + "connectionString": { + "readOnly": true, + "type": "string", + "description": "Value of the connection string" + }, + "description": { + "readOnly": true, + "type": "string", + "description": "Description of the connection string" + } + } + }, + "DatabaseAccountListConnectionStringsResult": { + "description": "The connection strings for the given database account.", + "properties": { + "connectionStrings": { + "type": "array", + "description": "An array that contains the connection strings for the Cosmos DB account.", + "items": { + "$ref": "#/definitions/DatabaseAccountConnectionString" + } + } + } + }, + "DatabaseAccountRegenerateKeyParameters": { + "type": "object", + "description": "Parameters to regenerate the keys within the database account.", + "properties": { + "keyKind": { + "type": "string", + "description": "The access key to regenerate.", + "enum": [ + "primary", + "secondary", + "primaryReadonly", + "secondaryReadonly" + ], + "x-ms-enum": { + "name": "KeyKind", + "modelAsString": true + } + } + }, + "required": [ + "keyKind" + ] + }, + "DatabaseAccountOfferType": { + "description": "The offer type for the Cosmos DB database account.", + "type": "string", + "enum": [ + "Standard" + ], + "x-ms-enum": { + "name": "DatabaseAccountOfferType", + "modelAsString": false + } + }, + "ThroughputSettingsUpdateParameters": { + "description": "Parameters to update Cosmos DB resource throughput.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to update Azure Cosmos DB resource throughput.", + "$ref": "#/definitions/ThroughputSettingsUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "ThroughputSettingsUpdateProperties": { + "description": "Properties to update Azure Cosmos DB resource throughput.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a resource throughput", + "$ref": "#/definitions/ThroughputSettingsResource" + } + }, + "required": [ + "resource" + ] + }, + "SqlDatabaseCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB SQL database.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB SQL database.", + "$ref": "#/definitions/SqlDatabaseCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "SqlDatabaseCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB SQL database.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a SQL database", + "$ref": "#/definitions/SqlDatabaseResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource" + ] + }, + "SqlContainerCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB container.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB container.", + "$ref": "#/definitions/SqlContainerCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "SqlContainerCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB container.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a container", + "$ref": "#/definitions/SqlContainerResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource" + ] + }, + "SqlStoredProcedureCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB storedProcedure.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB storedProcedure.", + "$ref": "#/definitions/SqlStoredProcedureCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "SqlStoredProcedureCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB storedProcedure.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a storedProcedure", + "$ref": "#/definitions/SqlStoredProcedureResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource" + ] + }, + "SqlUserDefinedFunctionCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB userDefinedFunction.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB userDefinedFunction.", + "$ref": "#/definitions/SqlUserDefinedFunctionCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "SqlUserDefinedFunctionCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB userDefinedFunction.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a userDefinedFunction", + "$ref": "#/definitions/SqlUserDefinedFunctionResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource" + ] + }, + "SqlTriggerCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB trigger.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB trigger.", + "$ref": "#/definitions/SqlTriggerCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "SqlTriggerCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB trigger.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a trigger", + "$ref": "#/definitions/SqlTriggerResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource" + ] + }, + "MongoDBDatabaseCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB MongoDB database.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB MongoDB database.", + "$ref": "#/definitions/MongoDBDatabaseCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "MongoDBDatabaseCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB MongoDB database.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a MongoDB database", + "$ref": "#/definitions/MongoDBDatabaseResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource" + ] + }, + "MongoDBCollectionCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB MongoDB collection.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB MongoDB collection.", + "$ref": "#/definitions/MongoDBCollectionCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "MongoDBCollectionCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB MongoDB collection.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a MongoDB collection", + "$ref": "#/definitions/MongoDBCollectionResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource" + ] + }, + "TableCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB Table.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB Table.", + "$ref": "#/definitions/TableCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "TableCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB Table.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a Table", + "$ref": "#/definitions/TableResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource" + ] + }, + "CassandraKeyspaceCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB Cassandra keyspace.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB Cassandra keyspace.", + "$ref": "#/definitions/CassandraKeyspaceCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "CassandraKeyspaceCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB Cassandra keyspace.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a Cassandra keyspace", + "$ref": "#/definitions/CassandraKeyspaceResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource" + ] + }, + "CassandraTableCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB Cassandra table.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB Cassandra table.", + "$ref": "#/definitions/CassandraTableCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "CassandraTableCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB Cassandra table.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a Cassandra table", + "$ref": "#/definitions/CassandraTableResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource" + ] + }, + "GremlinDatabaseCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB Gremlin database.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB Gremlin database.", + "$ref": "#/definitions/GremlinDatabaseCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "GremlinDatabaseCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB Gremlin database.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a Gremlin database", + "$ref": "#/definitions/GremlinDatabaseResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource" + ] + }, + "GremlinGraphCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB Gremlin graph.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB Gremlin graph.", + "$ref": "#/definitions/GremlinGraphCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "GremlinGraphCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB Gremlin graph.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a Gremlin graph", + "$ref": "#/definitions/GremlinGraphResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource" + ] + }, + "ThroughputSettingsResource": { + "type": "object", + "description": "Cosmos DB resource throughput object. Either throughput is required or autoscaleSettings is required, but not both.", + "properties": { + "throughput": { + "type": "integer", + "description": "Value of the Cosmos DB resource throughput. Either throughput is required or autoscaleSettings is required, but not both." + }, + "autoscaleSettings": { + "description": "Cosmos DB resource for autoscale settings. Either throughput is required or autoscaleSettings is required, but not both.", + "$ref": "#/definitions/AutoscaleSettingsResource" + }, + "minimumThroughput": { + "type": "string", + "description": "The minimum throughput of the resource", + "readOnly": true + }, + "offerReplacePending": { + "type": "string", + "description": "The throughput replace is pending", + "readOnly": true + } + } + }, + "AutoscaleSettingsResource": { + "type": "object", + "description": "Cosmos DB provisioned throughput settings object", + "properties": { + "maxThroughput": { + "type": "integer", + "description": "Represents maximum throughput container can scale up to." + }, + "autoUpgradePolicy": { + "description": "Cosmos DB resource auto-upgrade policy", + "$ref": "#/definitions/AutoUpgradePolicyResource" + }, + "targetMaxThroughput": { + "type": "integer", + "description": "Represents target maximum throughput container can scale up to once offer is no longer in pending state.", + "readOnly": true + } + }, + "required": [ + "maxThroughput" + ] + }, + "AutoUpgradePolicyResource": { + "type": "object", + "description": "Cosmos DB resource auto-upgrade policy", + "properties": { + "throughputPolicy": { + "description": "Represents throughput policy which service must adhere to for auto-upgrade", + "$ref": "#/definitions/ThroughputPolicyResource" + } + } + }, + "ThroughputPolicyResource": { + "type": "object", + "description": "Cosmos DB resource throughput policy", + "properties": { + "isEnabled": { + "type": "boolean", + "description": "Determines whether the ThroughputPolicy is active or not" + }, + "incrementPercent": { + "type": "integer", + "description": "Represents the percentage by which throughput can increase every time throughput policy kicks in." + } + } + }, + "OptionsResource": { + "type": "object", + "description": "Cosmos DB options resource object", + "readOnly": true, + "properties": { + "throughput": { + "type": "integer", + "description": "Value of the Cosmos DB resource throughput or autoscaleSettings. Use the ThroughputSetting resource when retrieving offer details." + }, + "autoscaleSettings": { + "type": "object", + "$ref": "#/definitions/AutoscaleSettings", + "description": "Specifies the Autoscale settings." + } + } + }, + "SqlDatabaseResource": { + "type": "object", + "description": "Cosmos DB SQL database resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB SQL database" + } + }, + "required": [ + "id" + ] + }, + "SqlContainerResource": { + "type": "object", + "description": "Cosmos DB SQL container resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB SQL container" + }, + "indexingPolicy": { + "$ref": "#/definitions/IndexingPolicy", + "description": "The configuration of the indexing policy. By default, the indexing is automatic for all document paths within the container" + }, + "partitionKey": { + "$ref": "#/definitions/ContainerPartitionKey", + "description": "The configuration of the partition key to be used for partitioning data into multiple partitions" + }, + "defaultTtl": { + "type": "integer", + "description": "Default time to live" + }, + "uniqueKeyPolicy": { + "$ref": "#/definitions/UniqueKeyPolicy", + "description": "The unique key policy configuration for specifying uniqueness constraints on documents in the collection in the Azure Cosmos DB service." + }, + "conflictResolutionPolicy": { + "$ref": "#/definitions/ConflictResolutionPolicy", + "description": "The conflict resolution policy for the container." + }, + "analyticalStorageTtl": { + "type": "integer", + "format": "int64", + "description": "Analytical TTL." + } + }, + "required": [ + "id" + ] + }, + "IndexingPolicy": { + "type": "object", + "description": "Cosmos DB indexing policy", + "properties": { + "automatic": { + "type": "boolean", + "description": "Indicates if the indexing policy is automatic" + }, + "indexingMode": { + "description": "Indicates the indexing mode.", + "type": "string", + "default": "consistent", + "enum": [ + "consistent", + "lazy", + "none" + ], + "x-ms-enum": { + "name": "IndexingMode", + "modelAsString": true + } + }, + "includedPaths": { + "description": "List of paths to include in the indexing", + "type": "array", + "items": { + "$ref": "#/definitions/IncludedPath" + } + }, + "excludedPaths": { + "description": "List of paths to exclude from indexing", + "type": "array", + "items": { + "$ref": "#/definitions/ExcludedPath" + } + }, + "compositeIndexes": { + "description": "List of composite path list", + "type": "array", + "items": { + "$ref": "#/definitions/CompositePathList" + } + }, + "spatialIndexes": { + "description": "List of spatial specifics", + "type": "array", + "items": { + "$ref": "#/definitions/SpatialSpec" + } + } + } + }, + "ExcludedPath": { + "type": "object", + "properties": { + "path": { + "type": "string", + "description": "The path for which the indexing behavior applies to. Index paths typically start with root and end with wildcard (/path/*)" + } + } + }, + "IncludedPath": { + "type": "object", + "description": "The paths that are included in indexing", + "properties": { + "path": { + "type": "string", + "description": "The path for which the indexing behavior applies to. Index paths typically start with root and end with wildcard (/path/*)" + }, + "indexes": { + "description": "List of indexes for this path", + "type": "array", + "items": { + "$ref": "#/definitions/Indexes" + } + } + } + }, + "Indexes": { + "type": "object", + "description": "The indexes for the path.", + "properties": { + "dataType": { + "description": "The datatype for which the indexing behavior is applied to.", + "type": "string", + "default": "String", + "enum": [ + "String", + "Number", + "Point", + "Polygon", + "LineString", + "MultiPolygon" + ], + "x-ms-enum": { + "name": "DataType", + "modelAsString": true + } + }, + "precision": { + "description": "The precision of the index. -1 is maximum precision.", + "type": "integer" + }, + "kind": { + "description": "Indicates the type of index.", + "type": "string", + "default": "Hash", + "enum": [ + "Hash", + "Range", + "Spatial" + ], + "x-ms-enum": { + "name": "IndexKind", + "modelAsString": true + } + } + } + }, + "CompositePathList": { + "description": "List of composite path", + "type": "array", + "items": { + "$ref": "#/definitions/CompositePath" + } + }, + "CompositePath": { + "type": "object", + "properties": { + "path": { + "type": "string", + "description": "The path for which the indexing behavior applies to. Index paths typically start with root and end with wildcard (/path/*)" + }, + "order": { + "description": "Sort order for composite paths.", + "type": "string", + "enum": [ + "ascending", + "descending" + ], + "x-ms-enum": { + "name": "CompositePathSortOrder", + "modelAsString": true + } + } + } + }, + "SpatialSpec": { + "type": "object", + "properties": { + "path": { + "type": "string", + "description": "The path for which the indexing behavior applies to. Index paths typically start with root and end with wildcard (/path/*)" + }, + "types": { + "description": "List of path's spatial type", + "type": "array", + "items": { + "$ref": "#/definitions/SpatialType" + } + } + } + }, + "SpatialType": { + "description": "Indicates the spatial type of index.", + "type": "string", + "enum": [ + "Point", + "LineString", + "Polygon", + "MultiPolygon" + ], + "x-ms-enum": { + "name": "SpatialType", + "modelAsString": true + } + }, + "ContainerPartitionKey": { + "type": "object", + "description": "The configuration of the partition key to be used for partitioning data into multiple partitions", + "properties": { + "paths": { + "description": "List of paths using which data within the container can be partitioned", + "type": "array", + "items": { + "$ref": "#/definitions/Path" + } + }, + "kind": { + "description": "Indicates the kind of algorithm used for partitioning. For MultiHash, multiple partition keys (upto three maximum) are supported for container create", + "type": "string", + "default": "Hash", + "enum": [ + "Hash", + "Range", + "MultiHash" + ], + "x-ms-enum": { + "name": "PartitionKind", + "modelAsString": true + } + }, + "version": { + "description": "Indicates the version of the partition key definition", + "type": "integer", + "minimum": 1, + "maximum": 2, + "format": "int32" + }, + "systemKey": { + "description": "Indicates if the container is using a system generated partition key", + "type": "boolean", + "readOnly": true + } + } + }, + "Path": { + "type": "string", + "description": "A path. These typically start with root (/path)" + }, + "UniqueKeyPolicy": { + "type": "object", + "description": "The unique key policy configuration for specifying uniqueness constraints on documents in the collection in the Azure Cosmos DB service.", + "properties": { + "uniqueKeys": { + "description": "List of unique keys on that enforces uniqueness constraint on documents in the collection in the Azure Cosmos DB service.", + "type": "array", + "items": { + "$ref": "#/definitions/UniqueKey" + } + } + } + }, + "UniqueKey": { + "type": "object", + "description": "The unique key on that enforces uniqueness constraint on documents in the collection in the Azure Cosmos DB service.", + "properties": { + "paths": { + "description": "List of paths must be unique for each document in the Azure Cosmos DB service", + "type": "array", + "items": { + "$ref": "#/definitions/Path" + } + } + } + }, + "ConflictResolutionPolicy": { + "type": "object", + "description": "The conflict resolution policy for the container.", + "properties": { + "mode": { + "description": "Indicates the conflict resolution mode.", + "type": "string", + "default": "LastWriterWins", + "enum": [ + "LastWriterWins", + "Custom" + ], + "x-ms-enum": { + "name": "ConflictResolutionMode", + "modelAsString": true + } + }, + "conflictResolutionPath": { + "type": "string", + "description": "The conflict resolution path in the case of LastWriterWins mode." + }, + "conflictResolutionProcedure": { + "type": "string", + "description": "The procedure to resolve conflicts in the case of custom mode." + } + } + }, + "SqlStoredProcedureResource": { + "type": "object", + "description": "Cosmos DB SQL storedProcedure resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB SQL storedProcedure" + }, + "body": { + "type": "string", + "description": "Body of the Stored Procedure" + } + }, + "required": [ + "id" + ] + }, + "SqlUserDefinedFunctionResource": { + "type": "object", + "description": "Cosmos DB SQL userDefinedFunction resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB SQL userDefinedFunction" + }, + "body": { + "type": "string", + "description": "Body of the User Defined Function" + } + }, + "required": [ + "id" + ] + }, + "SqlTriggerResource": { + "type": "object", + "description": "Cosmos DB SQL trigger resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB SQL trigger" + }, + "body": { + "type": "string", + "description": "Body of the Trigger" + }, + "triggerType": { + "type": "string", + "enum": [ + "Pre", + "Post" + ], + "description": "Type of the Trigger", + "x-ms-enum": { + "name": "triggerType", + "modelAsString": true + } + }, + "triggerOperation": { + "type": "string", + "enum": [ + "All", + "Create", + "Update", + "Delete", + "Replace" + ], + "description": "The operation the trigger is associated with", + "x-ms-enum": { + "name": "triggerOperation", + "modelAsString": true + } + } + }, + "required": [ + "id" + ] + }, + "MongoDBDatabaseResource": { + "type": "object", + "description": "Cosmos DB MongoDB database resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB MongoDB database" + } + }, + "required": [ + "id" + ] + }, + "MongoDBCollectionResource": { + "type": "object", + "description": "Cosmos DB MongoDB collection resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB MongoDB collection" + }, + "shardKey": { + "description": "A key-value pair of shard keys to be applied for the request.", + "$ref": "#/definitions/ShardKeys" + }, + "indexes": { + "description": "List of index keys", + "type": "array", + "items": { + "$ref": "#/definitions/MongoIndex" + } + }, + "analyticalStorageTtl": { + "type": "integer", + "description": "Analytical TTL." + } + }, + "required": [ + "id" + ] + }, + "ShardKeys": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The shard key and partition kind pair, only support \"Hash\" partition kind" + }, + "MongoIndex": { + "type": "object", + "description": "Cosmos DB MongoDB collection index key", + "properties": { + "key": { + "description": "Cosmos DB MongoDB collection index keys", + "$ref": "#/definitions/MongoIndexKeys" + }, + "options": { + "description": "Cosmos DB MongoDB collection index key options", + "$ref": "#/definitions/MongoIndexOptions" + } + } + }, + "MongoIndexKeys": { + "type": "object", + "description": "Cosmos DB MongoDB collection resource object", + "properties": { + "keys": { + "description": "List of keys for each MongoDB collection in the Azure Cosmos DB service", + "type": "array", + "items": { + "$ref": "#/definitions/Key" + } + } + } + }, + "Key": { + "type": "string", + "description": "A Key." + }, + "MongoIndexOptions": { + "type": "object", + "description": "Cosmos DB MongoDB collection index options", + "properties": { + "expireAfterSeconds": { + "description": "Expire after seconds", + "type": "integer" + }, + "unique": { + "description": "Is unique or not", + "type": "boolean" + } + } + }, + "TableResource": { + "type": "object", + "description": "Cosmos DB table resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB table" + } + }, + "required": [ + "id" + ] + }, + "CassandraKeyspaceResource": { + "type": "object", + "description": "Cosmos DB Cassandra keyspace resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB Cassandra keyspace" + } + }, + "required": [ + "id" + ] + }, + "CassandraTableResource": { + "type": "object", + "description": "Cosmos DB Cassandra table resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB Cassandra table" + }, + "defaultTtl": { + "type": "integer", + "description": "Time to live of the Cosmos DB Cassandra table" + }, + "schema": { + "description": "Schema of the Cosmos DB Cassandra table", + "$ref": "#/definitions/CassandraSchema" + }, + "analyticalStorageTtl": { + "type": "integer", + "description": "Analytical TTL." + } + }, + "required": [ + "id" + ] + }, + "CassandraSchema": { + "type": "object", + "description": "Cosmos DB Cassandra table schema", + "properties": { + "columns": { + "type": "array", + "items": { + "$ref": "#/definitions/Column" + }, + "description": "List of Cassandra table columns." + }, + "partitionKeys": { + "type": "array", + "items": { + "$ref": "#/definitions/CassandraPartitionKey" + }, + "description": "List of partition key." + }, + "clusterKeys": { + "type": "array", + "items": { + "$ref": "#/definitions/ClusterKey" + }, + "description": "List of cluster key." + } + } + }, + "Column": { + "type": "object", + "description": "Cosmos DB Cassandra table column", + "properties": { + "name": { + "type": "string", + "description": "Name of the Cosmos DB Cassandra table column" + }, + "type": { + "type": "string", + "description": "Type of the Cosmos DB Cassandra table column" + } + } + }, + "CassandraPartitionKey": { + "type": "object", + "description": "Cosmos DB Cassandra table partition key", + "properties": { + "name": { + "type": "string", + "description": "Name of the Cosmos DB Cassandra table partition key" + } + } + }, + "ClusterKey": { + "type": "object", + "description": "Cosmos DB Cassandra table cluster key", + "properties": { + "name": { + "type": "string", + "description": "Name of the Cosmos DB Cassandra table cluster key" + }, + "orderBy": { + "type": "string", + "description": "Order of the Cosmos DB Cassandra table cluster key, only support \"Asc\" and \"Desc\"" + } + } + }, + "GremlinDatabaseResource": { + "type": "object", + "description": "Cosmos DB Gremlin database resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB Gremlin database" + } + }, + "required": [ + "id" + ] + }, + "GremlinGraphResource": { + "type": "object", + "description": "Cosmos DB Gremlin graph resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB Gremlin graph" + }, + "indexingPolicy": { + "$ref": "#/definitions/IndexingPolicy", + "description": "The configuration of the indexing policy. By default, the indexing is automatic for all document paths within the graph" + }, + "partitionKey": { + "$ref": "#/definitions/ContainerPartitionKey", + "description": "The configuration of the partition key to be used for partitioning data into multiple partitions" + }, + "defaultTtl": { + "type": "integer", + "description": "Default time to live" + }, + "uniqueKeyPolicy": { + "$ref": "#/definitions/UniqueKeyPolicy", + "description": "The unique key policy configuration for specifying uniqueness constraints on documents in the collection in the Azure Cosmos DB service." + }, + "conflictResolutionPolicy": { + "$ref": "#/definitions/ConflictResolutionPolicy", + "description": "The conflict resolution policy for the graph." + } + }, + "required": [ + "id" + ] + }, + "CreateUpdateOptions": { + "type": "object", + "properties": { + "throughput": { + "type": "integer", + "description": "Request Units per second. For example, \"throughput\": 10000." + }, + "autoscaleSettings": { + "$ref": "#/definitions/AutoscaleSettings", + "description": "Specifies the Autoscale settings." + } + }, + "description": "CreateUpdateOptions are a list of key-value pairs that describe the resource. Supported keys are \"If-Match\", \"If-None-Match\", \"Session-Token\" and \"Throughput\"" + }, + "AutoscaleSettings": { + "type": "object", + "properties": { + "maxThroughput": { + "type": "integer", + "description": "Represents maximum throughput, the resource can scale up to." + } + } + }, + "Capability": { + "type": "object", + "description": "Cosmos DB capability object", + "properties": { + "name": { + "type": "string", + "description": "Name of the Cosmos DB capability. For example, \"name\": \"EnableCassandra\". Current values also include \"EnableTable\" and \"EnableGremlin\"." + } + } + }, + "Tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "ManagedServiceIdentity": { + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of the system assigned identity. This property will only be provided for a system assigned identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant id of the system assigned identity. This property will only be provided for a system assigned identity." + }, + "type": { + "type": "string", + "description": "The type of identity used for the resource. The type 'SystemAssigned,UserAssigned' includes both an implicitly created identity and a set of user assigned identities. The type 'None' will remove any identities from the service.", + "enum": [ + "SystemAssigned", + "UserAssigned", + "SystemAssigned,UserAssigned", + "None" + ], + "x-ms-enum": { + "name": "ResourceIdentityType", + "modelAsString": false + } + }, + "userAssignedIdentities": { + "type": "object", + "additionalProperties": { + "type": "object", + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of user assigned identity." + }, + "clientId": { + "readOnly": true, + "type": "string", + "description": "The client id of user assigned identity." + } + } + }, + "description": "The list of user identities associated with resource. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'." + } + }, + "description": "Identity for the resource." + }, + "ProvisioningState": { + "type": "string", + "readOnly": true, + "description": "The status of the Cosmos DB account at the time the operation was called. The status can be one of following. 'Creating' – the Cosmos DB account is being created. When an account is in Creating state, only properties that are specified as input for the Create Cosmos DB account operation are returned. 'Succeeded' – the Cosmos DB account is active for use. 'Updating' – the Cosmos DB account is being updated. 'Deleting' – the Cosmos DB account is being deleted. 'Failed' – the Cosmos DB account failed creation. 'DeletionFailed' – the Cosmos DB account deletion failed." + }, + "IPRules": { + "type": "array", + "description": "Array of IpAddressOrRange objects.", + "items": { + "$ref": "#/definitions/IpAddressOrRange" + } + }, + "IpAddressOrRange": { + "type": "object", + "description": "IpAddressOrRange object", + "properties": { + "ipAddressOrRange": { + "type": "string", + "description": "A single IPv4 address or a single IPv4 address range in CIDR format. Provided IPs must be well-formatted and cannot be contained in one of the following ranges: 10.0.0.0/8, 100.64.0.0/10, 172.16.0.0/12, 192.168.0.0/16, since these are not enforceable by the IP address filter. Example of valid inputs: “23.40.210.245” or “23.40.210.0/8”." + } + } + }, + "VirtualNetworkRule": { + "type": "object", + "description": "Virtual Network ACL Rule object", + "properties": { + "id": { + "type": "string", + "description": "Resource ID of a subnet, for example: /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}." + }, + "ignoreMissingVNetServiceEndpoint": { + "type": "boolean", + "description": "Create firewall rule before the virtual network has vnet service endpoint enabled." + } + } + }, + "NetworkAclBypass": { + "description": "Indicates what services are allowed to bypass firewall checks.", + "type": "string", + "enum": [ + "None", + "AzureServices" + ], + "x-ms-enum": { + "name": "NetworkAclBypass", + "modelAsString": false + } + }, + "Operation": { + "description": "REST API operation", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}", + "type": "string" + }, + "display": { + "description": "The object that represents the operation.", + "properties": { + "Provider": { + "description": "Service provider: Microsoft.ResourceProvider", + "type": "string" + }, + "Resource": { + "description": "Resource on which the operation is performed: Profile, endpoint, etc.", + "type": "string" + }, + "Operation": { + "description": "Operation type: Read, write, delete, etc.", + "type": "string" + }, + "Description": { + "description": "Description of operation", + "type": "string" + } + } + } + } + }, + "OperationListResult": { + "description": "Result of the request to list Resource Provider operations. It contains a list of operations and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "description": "List of operations supported by the Resource Provider." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "UsagesResult": { + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Usage" + }, + "description": "The list of usages for the database. A usage is a point in time metric" + } + }, + "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": "integer", + "format": "int64", + "readOnly": true, + "description": "Maximum value for this metric" + }, + "currentValue": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "Current value for this metric" + } + }, + "description": "The usage data for a usage request." + }, + "PartitionUsagesResult": { + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/PartitionUsage" + }, + "description": "The list of partition-level usages for the database. A usage is a point in time metric" + } + }, + "description": "The response to a list partition level usage request." + }, + "PartitionUsage": { + "allOf": [ + { + "$ref": "#/definitions/Usage" + } + ], + "properties": { + "partitionId": { + "readOnly": true, + "type": "string", + "description": "The partition id (GUID identifier) of the usages." + }, + "partitionKeyRangeId": { + "readOnly": true, + "type": "string", + "description": "The partition key range id (integer identifier) of the usages." + } + }, + "description": "The partition level usage data for a usage request." + }, + "MetricDefinitionsListResult": { + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/MetricDefinition" + }, + "description": "The list of metric definitions for the account." + } + }, + "description": "The response to a list metric definitions request." + }, + "MetricDefinition": { + "properties": { + "metricAvailabilities": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/MetricAvailability" + }, + "description": "The list of metric availabilities for the account." + }, + "primaryAggregationType": { + "readOnly": true, + "type": "string", + "description": "The primary aggregation type of the metric.", + "enum": [ + "None", + "Average", + "Total", + "Minimum", + "Maximum", + "Last" + ], + "x-ms-enum": { + "modelAsString": true, + "name": "PrimaryAggregationType" + } + }, + "unit": { + "description": "The unit of the metric.", + "$ref": "#/definitions/UnitType" + }, + "resourceUri": { + "readOnly": true, + "type": "string", + "description": "The resource uri of the database." + }, + "name": { + "readOnly": true, + "$ref": "#/definitions/MetricName", + "description": "The name information for the metric." + } + }, + "description": "The definition of a metric." + }, + "MetricAvailability": { + "properties": { + "timeGrain": { + "readOnly": true, + "type": "string", + "description": "The time grain to be used to summarize the metric values." + }, + "retention": { + "readOnly": true, + "type": "string", + "description": "The retention for the metric values." + } + }, + "description": "The availability of the metric." + }, + "MetricListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Metric" + }, + "description": "The list of metrics for the account." + } + }, + "description": "The response to a list metrics request." + }, + "Metric": { + "properties": { + "startTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The start time for the metric (ISO-8601 format)." + }, + "endTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The end time for the metric (ISO-8601 format)." + }, + "timeGrain": { + "readOnly": true, + "type": "string", + "description": "The time grain to be used to summarize the metric values." + }, + "unit": { + "$ref": "#/definitions/UnitType", + "description": "The unit of the metric." + }, + "name": { + "readOnly": true, + "$ref": "#/definitions/MetricName", + "description": "The name information for the metric." + }, + "metricValues": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/MetricValue" + }, + "description": "The metric values for the specified time window and timestep." + } + }, + "description": "Metric data" + }, + "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." + }, + "MetricValue": { + "properties": { + "_count": { + "readOnly": true, + "type": "number", + "format": "int32", + "description": "The number of values for the metric." + }, + "average": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The average value of the metric." + }, + "maximum": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The max value of the metric." + }, + "minimum": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The min value of the metric." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The metric timestamp (ISO-8601 format)." + }, + "total": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The total value of the metric." + } + }, + "description": "Represents metrics values." + }, + "PercentileMetricListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/PercentileMetric" + }, + "description": "The list of percentile metrics for the account." + } + }, + "description": "The response to a list percentile metrics request." + }, + "PercentileMetric": { + "properties": { + "startTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The start time for the metric (ISO-8601 format)." + }, + "endTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The end time for the metric (ISO-8601 format)." + }, + "timeGrain": { + "readOnly": true, + "type": "string", + "description": "The time grain to be used to summarize the metric values." + }, + "unit": { + "$ref": "#/definitions/UnitType", + "description": "The unit of the metric." + }, + "name": { + "readOnly": true, + "$ref": "#/definitions/MetricName", + "description": "The name information for the metric." + }, + "metricValues": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/PercentileMetricValue" + }, + "description": "The percentile metric values for the specified time window and timestep." + } + }, + "description": "Percentile Metric data" + }, + "PercentileMetricValue": { + "allOf": [ + { + "$ref": "#/definitions/MetricValue" + } + ], + "properties": { + "P10": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The 10th percentile value for the metric." + }, + "P25": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The 25th percentile value for the metric." + }, + "P50": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The 50th percentile value for the metric." + }, + "P75": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The 75th percentile value for the metric." + }, + "P90": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The 90th percentile value for the metric." + }, + "P95": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The 95th percentile value for the metric." + }, + "P99": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The 99th percentile value for the metric." + } + }, + "description": "Represents percentile metrics values." + }, + "PartitionMetricListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/PartitionMetric" + }, + "description": "The list of partition-level metrics for the account." + } + }, + "description": "The response to a list partition metrics request." + }, + "PartitionMetric": { + "allOf": [ + { + "$ref": "#/definitions/Metric" + } + ], + "properties": { + "partitionId": { + "readOnly": true, + "type": "string", + "description": "The partition id (GUID identifier) of the metric values." + }, + "partitionKeyRangeId": { + "readOnly": true, + "type": "string", + "description": "The partition key range id (integer identifier) of the metric values." + } + }, + "description": "The metric values for a single partition." + }, + "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" + } + }, + "ConnectorOffer": { + "description": "The cassandra connector offer type for the Cosmos DB C* database account.", + "type": "string", + "enum": [ + "Small" + ], + "x-ms-enum": { + "name": "ConnectorOffer", + "modelAsString": true + } + }, + "PublicNetworkAccess": { + "type": "string", + "description": "Whether requests from Public Network are allowed", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "modelAsString": true, + "name": "PublicNetworkAccess" + } + }, + "ApiProperties": { + "type": "object", + "properties": { + "serverVersion": { + "type": "string", + "enum": [ + "3.2", + "3.6", + "4.0" + ], + "description": "Describes the ServerVersion of an a MongoDB account.", + "x-ms-enum": { + "modelAsString": true, + "name": "ServerVersion" + } + } + } + }, + "CreateMode": { + "description": "Enum to indicate the mode of account creation.", + "type": "string", + "default": "Default", + "enum": [ + "Default", + "Restore" + ], + "x-ms-enum": { + "name": "CreateMode", + "modelAsString": true + } + }, + "RestoreParameters": { + "type": "object", + "description": "Parameters to indicate the information about the restore.", + "x-ms-mutability": [ + "read", + "create" + ], + "properties": { + "restoreMode": { + "type": "string", + "enum": [ + "PointInTime" + ], + "description": "Describes the mode of the restore.", + "x-ms-enum": { + "modelAsString": true, + "name": "RestoreMode" + } + }, + "restoreSource": { + "type": "string", + "description": "The id of the restorable database account from which the restore has to be initiated. For example: /subscriptions/{subscriptionId}/providers/Microsoft.DocumentDB/locations/{location}/restorableDatabaseAccounts/{restorableDatabaseAccountName}" + }, + "restoreTimestampInUtc": { + "type": "string", + "format": "date-time", + "description": "Time to which the account has to be restored (ISO-8601 format)." + }, + "databasesToRestore": { + "type": "array", + "description": "List of specific databases available for restore.", + "items": { + "$ref": "#/definitions/DatabaseRestoreResource" + } + } + } + }, + "DatabaseRestoreResource": { + "type": "object", + "description": "Specific Databases to restore.", + "properties": { + "databaseName": { + "type": "string", + "description": "The name of the database available for restore." + }, + "collectionNames": { + "type": "array", + "description": "The names of the collections available for restore.", + "items": { + "$ref": "#/definitions/CollectionName" + } + } + } + }, + "CollectionName": { + "type": "string", + "description": "The name of the collection." + }, + "BackupPolicy": { + "type": "object", + "description": "The object representing the policy for taking backups on an account.", + "discriminator": "type", + "properties": { + "type": { + "type": "string", + "$ref": "#/definitions/BackupPolicyType" + } + }, + "required": [ + "type" + ] + }, + "BackupPolicyType": { + "description": "Describes the mode of backups.", + "type": "string", + "enum": [ + "Periodic", + "Continuous" + ], + "x-ms-enum": { + "modelAsString": true, + "name": "BackupPolicyType" + } + }, + "PeriodicModeBackupPolicy": { + "description": "The object representing periodic mode backup policy.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/BackupPolicy" + } + ], + "properties": { + "periodicModeProperties": { + "type": "object", + "description": "Configuration values for periodic mode backup", + "$ref": "#/definitions/PeriodicModeProperties" + } + }, + "x-ms-discriminator-value": "Periodic" + }, + "ContinuousModeBackupPolicy": { + "description": "The object representing continuous mode backup policy.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/BackupPolicy" + } + ], + "x-ms-discriminator-value": "Continuous" + }, + "PeriodicModeProperties": { + "type": "object", + "description": "Configuration values for periodic mode backup", + "properties": { + "backupIntervalInMinutes": { + "type": "integer", + "format": "int32", + "minimum": 0, + "description": "An integer representing the interval in minutes between two backups" + }, + "backupRetentionIntervalInHours": { + "type": "integer", + "format": "int32", + "minimum": 0, + "description": "An integer representing the time (in hours) that each backup is retained" + }, + "backupStorageRedundancy": { + "description": "Enum to indicate type of backup residency", + "type": "string", + "$ref": "#/definitions/BackupStorageRedundancy" + } + } + }, + "RestorableDatabaseAccountsListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/RestorableDatabaseAccountGetResult" + }, + "description": "List of restorable database accounts and their properties." + } + }, + "description": "The List operation response, that contains the restorable database accounts and their properties." + }, + "RestorableDatabaseAccountGetResult": { + "description": "A Azure Cosmos DB restorable database account.", + "type": "object", + "properties": { + "properties": { + "type": "object", + "x-ms-client-flatten": true, + "description": "The properties of a restorable database account.", + "$ref": "#/definitions/RestorableDatabaseAccountProperties" + }, + "id": { + "readOnly": true, + "type": "string", + "description": "The unique resource identifier of the ARM resource." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the ARM resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of Azure resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + } + } + }, + "RestorableDatabaseAccountProperties": { + "type": "object", + "description": "The properties of a restorable database account.", + "properties": { + "accountName": { + "type": "string", + "description": "The name of the global database account" + }, + "creationTime": { + "type": "string", + "format": "date-time", + "description": "The creation time of the restorable database account (ISO-8601 format)." + }, + "deletionTime": { + "type": "string", + "format": "date-time", + "description": "The time at which the restorable database account has been deleted (ISO-8601 format)." + }, + "apiType": { + "type": "string", + "readOnly": true, + "description": "The API type of the restorable database account.", + "$ref": "#/definitions/ApiType" + }, + "restorableLocations": { + "type": "array", + "readOnly": true, + "description": "List of regions where the of the database account can be restored from.", + "items": { + "$ref": "#/definitions/RestorableLocationResource" + } + } + } + }, + "LocationListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/LocationGetResult" + }, + "description": "List of Cosmos DB locations and their properties." + } + }, + "description": "The List operation response, that contains Cosmos DB locations and their properties." + }, + "LocationGetResult": { + "description": "Cosmos DB location get result", + "type": "object", + "properties": { + "properties": { + "type": "object", + "description": "Cosmos DB location metadata", + "$ref": "#/definitions/LocationProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMProxyResource" + } + ] + }, + "LocationProperties": { + "description": "Cosmos DB location metadata", + "type": "object", + "properties": { + "status": { + "type": "string", + "readOnly": true, + "description": "The current status of location in Azure." + }, + "supportsAvailabilityZone": { + "type": "boolean", + "readOnly": true, + "description": "Flag indicating whether the location supports availability zones or not." + }, + "isResidencyRestricted": { + "type": "boolean", + "readOnly": true, + "description": "Flag indicating whether the location is residency sensitive." + }, + "backupStorageRedundancies": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/BackupStorageRedundancy" + }, + "description": "The properties of available backup storage redundancies." + } + } + }, + "ApiType": { + "description": "Enum to indicate the API type of the restorable database account.", + "type": "string", + "readOnly": true, + "enum": [ + "MongoDB", + "Gremlin", + "Cassandra", + "Table", + "Sql", + "GremlinV2" + ], + "x-ms-enum": { + "name": "ApiType", + "modelAsString": true + } + }, + "RestorableLocationResource": { + "type": "object", + "description": "Properties of the regional restorable account.", + "properties": { + "locationName": { + "type": "string", + "readOnly": true, + "description": "The location of the regional restorable account." + }, + "regionalDatabaseAccountInstanceId": { + "type": "string", + "readOnly": true, + "description": "The instance id of the regional restorable account." + }, + "creationTime": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The creation time of the regional restorable database account (ISO-8601 format)." + }, + "deletionTime": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The time at which the regional restorable database account has been deleted (ISO-8601 format)." + } + } + }, + "BackupStorageRedundancy": { + "description": "Enum to indicate type of backup storage redundancy.", + "type": "string", + "enum": [ + "Geo", + "Local", + "Zone" + ], + "x-ms-enum": { + "name": "BackupStorageRedundancy", + "modelAsString": true + } + }, + "ContinuousBackupRestoreLocation": { + "type": "object", + "description": "Properties of the regional restorable account.", + "properties": { + "location": { + "type": "string", + "description": "The name of the continuous backup restore location." + } + } + }, + "BackupInformation": { + "description": "Backup information of a resource.", + "type": "object", + "properties": { + "continuousBackupInformation": { + "type": "object", + "$ref": "#/definitions/ContinuousBackupInformation" + } + } + }, + "ContinuousBackupInformation": { + "description": "Continuous backup description.", + "type": "object", + "readOnly": true, + "properties": { + "latestRestorableTimestamp": { + "type": "string", + "description": "The latest restorable timestamp for a resource." + } + } + } + }, + "parameters": { + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90, + "x-ms-parameter-location": "method", + "description": "Name of an Azure resource group." + }, + "accountNameParameter": { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB database account name.", + "minLength": 3, + "maxLength": 50, + "pattern": "^[a-z0-9]+(-[a-z0-9]+)*" + }, + "filterParameter": { + "name": "$filter", + "in": "query", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "An OData filter expression that describes a subset of metrics to return. The parameters that can be filtered are name.value (name of the metric, can have an or of multiple names), startTime, endTime, and timeGrain. The supported operator is eq." + }, + "usageFilterParameter": { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "x-ms-parameter-location": "method", + "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)." + }, + "databaseRidParameter": { + "name": "databaseRid", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB database rid." + }, + "collectionRidParameter": { + "name": "collectionRid", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB collection rid." + }, + "databaseNameParameter": { + "name": "databaseName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB database name." + }, + "containerNameParameter": { + "name": "containerName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB container name." + }, + "storedProcedureNameParameter": { + "name": "storedProcedureName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB storedProcedure name." + }, + "userDefinedFunctionNameParameter": { + "name": "userDefinedFunctionName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB userDefinedFunction name." + }, + "triggerNameParameter": { + "name": "triggerName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB trigger name." + }, + "tableNameParameter": { + "name": "tableName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB table name." + }, + "collectionNameParameter": { + "name": "collectionName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB collection name." + }, + "keyspaceNameParameter": { + "name": "keyspaceName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB keyspace name." + }, + "graphNameParameter": { + "name": "graphName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB graph name." + }, + "regionParameter": { + "name": "region", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB region, with spaces between words and each word capitalized." + }, + "sourceRegionParameter": { + "name": "sourceRegion", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Source region from which data is written. Cosmos DB region, with spaces between words and each word capitalized." + }, + "targetRegionParameter": { + "name": "targetRegion", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Target region to which data is written. Cosmos DB region, with spaces between words and each word capitalized." + }, + "partitionKeyRangeIdParameter": { + "name": "partitionKeyRangeId", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Partition Key Range Id for which to get data." + }, + "locationParameter": { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB region, with spaces between words and each word capitalized." + }, + "instanceIdParameter": { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "The instanceId GUID of a restorable database account." + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBBackupInformation.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBBackupInformation.json new file mode 100644 index 000000000000..26c794a42eb6 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBBackupInformation.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2014-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName", + "containerName": "containerName", + "location": { + "location": "North Europe" + } + }, + "responses": { + "200": { + "body": { + "continuousBackupInformation": { + "latestRestorableTimestamp": "2021-02-05T02:40:50Z" + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCassandraKeyspaceCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCassandraKeyspaceCreateUpdate.json new file mode 100644 index 000000000000..0eb33b36068f --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCassandraKeyspaceCreateUpdate.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName", + "createUpdateCassandraKeyspaceParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "keyspaceName" + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName", + "name": "keyspaceName", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "keyspaceName" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCassandraKeyspaceDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCassandraKeyspaceDelete.json new file mode 100644 index 000000000000..3b3b14130efb --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCassandraKeyspaceDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCassandraKeyspaceGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCassandraKeyspaceGet.json new file mode 100644 index 000000000000..dcb538e09715 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCassandraKeyspaceGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName", + "name": "keyspaceName", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "keyspaceName", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCassandraKeyspaceList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCassandraKeyspaceList.json new file mode 100644 index 000000000000..bf694247228a --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCassandraKeyspaceList.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName", + "name": "keyspaceName", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "keyspaceName" + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCassandraKeyspaceMigrateToAutoscale.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCassandraKeyspaceMigrateToAutoscale.json new file mode 100644 index 000000000000..4b41cdf7e1ea --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCassandraKeyspaceMigrateToAutoscale.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "autoscaleSettings": { + "maxThroughput": 4000 + }, + "minimumThroughput": "4000", + "offerReplacePending": "false", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCassandraKeyspaceMigrateToManualThroughput.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCassandraKeyspaceMigrateToManualThroughput.json new file mode 100644 index 000000000000..25e6a83ffa43 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCassandraKeyspaceMigrateToManualThroughput.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "false", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCassandraKeyspaceThroughputGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCassandraKeyspaceThroughputGet.json new file mode 100644 index 000000000000..3733cffebf3e --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCassandraKeyspaceThroughputGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCassandraKeyspaceThroughputUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCassandraKeyspaceThroughputUpdate.json new file mode 100644 index 000000000000..7be7af8bb81e --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCassandraKeyspaceThroughputUpdate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName", + "updateThroughputParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCassandraTableCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCassandraTableCreateUpdate.json new file mode 100644 index 000000000000..1e4cf3a64507 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCassandraTableCreateUpdate.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName", + "tableName": "tableName", + "createUpdateCassandraTableParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "tableName", + "defaultTtl": 100, + "analyticalStorageTtl": 500, + "schema": { + "columns": [ + { + "name": "columnA", + "type": "Ascii" + } + ], + "partitionKeys": [ + { + "name": "columnA" + } + ], + "clusterKeys": [ + { + "name": "columnA", + "orderBy": "Asc" + } + ] + } + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName/cassandraTables/tableName", + "name": "tableName", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/cassandraTables", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "tableName", + "defaultTtl": 100, + "analyticalStorageTtl": 500, + "schema": { + "columns": [ + { + "name": "columnA", + "type": "Ascii" + } + ], + "partitionKeys": [ + { + "name": "columnA" + } + ], + "clusterKeys": [ + { + "name": "columnA", + "orderBy": "Asc" + } + ] + } + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCassandraTableDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCassandraTableDelete.json new file mode 100644 index 000000000000..5c09ad3a4a43 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCassandraTableDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName", + "tableName": "tableName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCassandraTableGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCassandraTableGet.json new file mode 100644 index 000000000000..394caeea530d --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCassandraTableGet.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName", + "tableName": "tableName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName/cassandraTables/tableName", + "name": "tableName", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/cassandraTables", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "tableName", + "defaultTtl": 100, + "analyticalStorageTtl": 500, + "schema": { + "columns": [ + { + "name": "columnA", + "type": "Ascii" + } + ], + "partitionKeys": [ + { + "name": "columnA" + } + ], + "clusterKeys": [ + { + "name": "columnA", + "orderBy": "Asc" + } + ] + }, + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCassandraTableList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCassandraTableList.json new file mode 100644 index 000000000000..b2b818dd0832 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCassandraTableList.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "keyspaceName": "keyspaceName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName/cassandraTables/tableName", + "name": "tableName", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/cassandraTables", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "tableName", + "defaultTtl": 100, + "analyticalStorageTtl": 500, + "schema": { + "columns": [ + { + "name": "columnA", + "type": "Ascii" + } + ], + "partitionKeys": [ + { + "name": "columnA" + } + ], + "clusterKeys": [ + { + "name": "columnA", + "orderBy": "Asc" + } + ] + } + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCassandraTableMigrateToAutoscale.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCassandraTableMigrateToAutoscale.json new file mode 100644 index 000000000000..c061c14ce026 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCassandraTableMigrateToAutoscale.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName", + "tableName": "tableName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "autoscaleSettings": { + "maxThroughput": 4000 + }, + "minimumThroughput": "4000", + "offerReplacePending": "false", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCassandraTableMigrateToManualThroughput.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCassandraTableMigrateToManualThroughput.json new file mode 100644 index 000000000000..f886f9c368ca --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCassandraTableMigrateToManualThroughput.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName", + "tableName": "tableName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "false", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCassandraTableThroughputGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCassandraTableThroughputGet.json new file mode 100644 index 000000000000..9df4e937e748 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCassandraTableThroughputGet.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName", + "tableName": "tableName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName/cassandraTables/tableName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/cassandraTables/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCassandraTableThroughputUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCassandraTableThroughputUpdate.json new file mode 100644 index 000000000000..6885cdaf2e78 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCassandraTableThroughputUpdate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName", + "tableName": "tableName", + "updateThroughputParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName/cassandraTables/tableName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/cassandraTables/throughputSettings", + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCollectionGetMetricDefinitions.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCollectionGetMetricDefinitions.json new file mode 100644 index 000000000000..9b698bfe7662 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCollectionGetMetricDefinitions.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "subscriptionId": "subid", + "api-version": "2021-04-01-preview", + "databaseRid": "databaseRid", + "collectionRid": "collectionRid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "metricAvailabilities": [ + { + "timeGrain": "PT5M", + "retention": "P2D" + }, + { + "timeGrain": "PT1H", + "retention": "P14D" + }, + { + "timeGrain": "P1D", + "retention": "P60D" + } + ], + "primaryAggregationType": "Total", + "unit": "Count", + "resourceUri": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1", + "name": { + "value": "Total Requests", + "localizedValue": "Total Requests" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCollectionGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCollectionGetMetrics.json new file mode 100644 index 000000000000..af85428abbf4 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCollectionGetMetrics.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "databaseRid": "databaseRid", + "collectionRid": "collectionRid", + "$filter": "$filter=(name.value eq 'Total Requests') and timeGrain eq duration'PT5M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T00:13:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Count", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-19T23:58:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:03:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:08:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + } + ], + "name": { + "value": "Total Requests", + "localizedValue": "Total Requests" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCollectionGetUsages.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCollectionGetUsages.json new file mode 100644 index 000000000000..26bc45f0bbb2 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCollectionGetUsages.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "databaseRid": "databaseRid", + "collectionRid": "collectionRid", + "subscriptionId": "subid", + "$filter": "$filter=name.value eq 'Storage'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "unit": "Bytes", + "quotaPeriod": "P1D", + "limit": 10737418240, + "currentValue": 0, + "name": { + "value": "Storage", + "localizedValue": "Storage" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCollectionPartitionGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCollectionPartitionGetMetrics.json new file mode 100644 index 000000000000..e525020d9757 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCollectionPartitionGetMetrics.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "databaseRid": "databaseRid", + "collectionRid": "collectionRid", + "$filter": "$filter=(name.value eq 'Max RUs Per Second') and timeGrain eq duration'PT1M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T23:58:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT1M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T23:58:55.2780000Z", + "unit": "Count", + "partitionId": "00000000-0000-0000-0000-000000000000", + "partitionKeyRangeId": "0", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:54:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:55:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:56:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:57:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:58:55.2780000Z", + "maximum": 5 + } + ], + "name": { + "value": "Max RUs Per Second", + "localizedValue": "Max RUs Per Second" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCollectionPartitionGetUsages.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCollectionPartitionGetUsages.json new file mode 100644 index 000000000000..f4da2cf49a72 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCollectionPartitionGetUsages.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "databaseRid": "databaseRid", + "collectionRid": "collectionRid", + "subscriptionId": "subid", + "$filter": "$filter=name.value eq 'Partition Storage'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "unit": "Bytes", + "quotaPeriod": "P1D", + "limit": 10737418240, + "currentValue": 0, + "partitionId": "00000000-0000-0000-0000-000000000000", + "partitionKeyRangeId": "0", + "name": { + "value": "Storage", + "localizedValue": "Storage" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCollectionPartitionRegionGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCollectionPartitionRegionGetMetrics.json new file mode 100644 index 000000000000..d39c68dbd784 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBCollectionPartitionRegionGetMetrics.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "databaseRid": "databaseRid", + "collectionRid": "collectionRid", + "region": "North Europe", + "$filter": "$filter=(name.value eq 'Max RUs Per Second') and timeGrain eq duration'PT1M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T23:58:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT1M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T23:58:55.2780000Z", + "unit": "Count", + "partitionId": "00000000-0000-0000-0000-000000000000", + "partitionKeyRangeId": "0", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:54:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:55:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:56:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:57:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:58:55.2780000Z", + "maximum": 5 + } + ], + "name": { + "value": "Max RUs Per Second", + "localizedValue": "Max RUs Per Second" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDataTransferServiceCreate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDataTransferServiceCreate.json new file mode 100644 index 000000000000..bb4707377eb9 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDataTransferServiceCreate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "serviceName": "DataTransfer", + "createUpdateParameters": { + "properties": { + "instanceSize": "Cosmos.D4s", + "instanceCount": 1, + "serviceType": "DataTransfer" + } + } + }, + "responses": { + "202": {}, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/services/DataTransfer", + "name": "DataTransfer", + "type": "Microsoft.DocumentDB/databaseAccounts/services", + "properties": { + "status": "Running", + "creationTime": "2021-01-25T12:56:05.4622517Z", + "instanceSize": "Cosmos.D4s", + "instanceCount": 1, + "serviceType": "DataTransfer", + "locations": [ + { + "name": "DataTransfer-westus2", + "location": "West US 2", + "status": "Running" + } + ] + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDataTransferServiceDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDataTransferServiceDelete.json new file mode 100644 index 000000000000..bccde9f98691 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDataTransferServiceDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "serviceName": "DataTransfer" + }, + "responses": { + "202": {}, + "204": {}, + "200": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDataTransferServiceGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDataTransferServiceGet.json new file mode 100644 index 000000000000..eac42361a434 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDataTransferServiceGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "serviceName": "DataTransfer" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/services/DataTransfer", + "name": "DataTransfer", + "type": "Microsoft.DocumentDB/databaseAccounts/services", + "properties": { + "status": "Running", + "creationTime": "2021-01-25T12:56:05.4622517Z", + "instanceSize": "Cosmos.D4s", + "instanceCount": 1, + "serviceType": "DataTransfer", + "locations": [ + { + "name": "DataTransfer-westus2", + "location": "West US 2", + "status": "Running" + } + ] + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountCheckNameExists.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountCheckNameExists.json new file mode 100644 index 000000000000..ce422d0d0dd1 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountCheckNameExists.json @@ -0,0 +1,10 @@ +{ + "parameters": { + "accountName": "ddb1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": {}, + "404": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountCreateMax.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountCreateMax.json new file mode 100644 index 000000000000..8cd19fff86b1 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountCreateMax.json @@ -0,0 +1,204 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "createUpdateParameters": { + "location": "westus", + "tags": {}, + "kind": "MongoDB", + "identity": { + "type": "SystemAssigned,UserAssigned", + "userAssignedIdentities": { + "/subscriptions/fa5fc227-a624-475e-b696-cdd604c735bc/resourceGroups/eu2cgroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": {} + } + }, + "properties": { + "databaseAccountOfferType": "Standard", + "ipRules": [ + { + "ipAddressOrRange": "23.43.230.120" + }, + { + "ipAddressOrRange": "110.12.240.0/12" + } + ], + "isVirtualNetworkFilterEnabled": true, + "virtualNetworkRules": [ + { + "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "ignoreMissingVNetServiceEndpoint": false + } + ], + "locations": [ + { + "failoverPriority": 0, + "locationName": "southcentralus", + "isZoneRedundant": false + }, + { + "failoverPriority": 1, + "locationName": "eastus", + "isZoneRedundant": false + } + ], + "createMode": "Default", + "consistencyPolicy": { + "defaultConsistencyLevel": "BoundedStaleness", + "maxIntervalInSeconds": 10, + "maxStalenessPrefix": 200 + }, + "keyVaultKeyUri": "https://myKeyVault.vault.azure.net", + "enableFreeTier": false, + "apiProperties": { + "serverVersion": "3.2" + }, + "publicNetworkAccess": "Enabled", + "defaultIdentity": "FirstPartyIdentity", + "enableAnalyticalStorage": true, + "backupPolicy": { + "type": "Periodic", + "periodicModeProperties": { + "backupIntervalInMinutes": 240, + "backupRetentionIntervalInHours": 720, + "backupStorageRedundancy": "Geo" + } + }, + "networkAclBypass": "None", + "networkAclBypassResourceIds": [], + "cors": [ + { + "allowedOrigins": "https://test" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1", + "name": "ddb1", + "location": "West US", + "type": "Microsoft.DocumentDB/databaseAccounts", + "kind": "MongoDB", + "tags": {}, + "identity": { + "type": "SystemAssigned,UserAssigned", + "userAssignedIdentities": { + "/subscriptions/fa5fc227-a624-475e-b696-cdd604c735bc/resourceGroups/eu2cgroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": { + "clientId": "fbe75b66-01c5-4f87-a220-233af3270436", + "principalId": "075a0ca6-43f6-4434-9abf-c9b1b79f9219" + } + } + }, + "properties": { + "provisioningState": "Initializing", + "isVirtualNetworkFilterEnabled": true, + "databaseAccountOfferType": "Standard", + "disableKeyBasedMetadataWriteAccess": false, + "consistencyPolicy": { + "defaultConsistencyLevel": "BoundedStaleness", + "maxIntervalInSeconds": 10, + "maxStalenessPrefix": 200 + }, + "writeLocations": [ + { + "id": "ddb1-southcentralus", + "locationName": "South Central US", + "provisioningState": "Initializing", + "failoverPriority": 0, + "isZoneRedundant": false + } + ], + "readLocations": [ + { + "id": "ddb1-southcentralus", + "locationName": "South Central US", + "provisioningState": "Initializing", + "failoverPriority": 0, + "isZoneRedundant": false + }, + { + "id": "ddb1-eastus", + "locationName": "East US", + "provisioningState": "Initializing", + "failoverPriority": 1, + "isZoneRedundant": false + } + ], + "locations": [ + { + "id": "ddb1-southcentralus", + "locationName": "South Central US", + "provisioningState": "Initializing", + "failoverPriority": 0, + "isZoneRedundant": false + }, + { + "id": "ddb1-eastus", + "locationName": "East US", + "provisioningState": "Initializing", + "failoverPriority": 1, + "isZoneRedundant": false + } + ], + "failoverPolicies": [ + { + "id": "ddb1-southcentralus", + "locationName": "South Central US", + "failoverPriority": 0 + }, + { + "id": "ddb1-eastus", + "locationName": "East US", + "failoverPriority": 1 + } + ], + "virtualNetworkRules": [ + { + "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + } + ], + "keyVaultKeyUri": "https://myKeyVault.vault.azure.net", + "enableFreeTier": false, + "ipRules": [ + { + "ipAddressOrRange": "23.43.230.120" + }, + { + "ipAddressOrRange": "110.12.240.0/12" + } + ], + "apiProperties": { + "serverVersion": "3.2" + }, + "enableAnalyticalStorage": true, + "publicNetworkAccess": "Enabled", + "defaultIdentity": "FirstPartyIdentity", + "instanceId": "d9b26648-2f53-4541-b3d8-3044f4f9810d", + "createMode": "Default", + "backupPolicy": { + "type": "Periodic", + "periodicModeProperties": { + "backupIntervalInMinutes": 240, + "backupRetentionIntervalInHours": 720, + "backupStorageRedundancy": "Geo" + } + }, + "cors": [ + { + "allowedOrigins": "https://test" + } + ], + "networkAclBypass": "None", + "networkAclBypassResourceIds": [] + }, + "systemData": { + "createdAt": "2021-03-12T22:05:09Z" + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountCreateMin.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountCreateMin.json new file mode 100644 index 000000000000..066771f58fb1 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountCreateMin.json @@ -0,0 +1,98 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "createUpdateParameters": { + "location": "westus", + "properties": { + "databaseAccountOfferType": "Standard", + "locations": [ + { + "failoverPriority": 0, + "locationName": "southcentralus", + "isZoneRedundant": false + } + ], + "createMode": "Default" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1", + "name": "ddb1", + "location": "West US", + "type": "Microsoft.DocumentDB/databaseAccounts", + "kind": "GlobalDocumentDB", + "tags": {}, + "properties": { + "provisioningState": "Initializing", + "ipRules": [], + "databaseAccountOfferType": "Standard", + "disableKeyBasedMetadataWriteAccess": false, + "consistencyPolicy": { + "defaultConsistencyLevel": "Session", + "maxIntervalInSeconds": 5, + "maxStalenessPrefix": 100 + }, + "writeLocations": [ + { + "id": "ddb1-southcentralus", + "locationName": "South Central US", + "provisioningState": "Initializing", + "failoverPriority": 0, + "isZoneRedundant": false + } + ], + "readLocations": [ + { + "id": "ddb1-southcentralus", + "locationName": "South Central US", + "provisioningState": "Initializing", + "failoverPriority": 0, + "isZoneRedundant": false + } + ], + "locations": [ + { + "id": "ddb1-southcentralus", + "locationName": "South Central US", + "provisioningState": "Initializing", + "failoverPriority": 0, + "isZoneRedundant": false + } + ], + "failoverPolicies": [ + { + "id": "ddb1-southcentralus", + "locationName": "South Central US", + "failoverPriority": 0 + } + ], + "cors": [], + "enableFreeTier": false, + "apiProperties": {}, + "enableAnalyticalStorage": false, + "instanceId": "d9b26648-2f53-4541-b3d8-3044f4f9810d", + "createMode": "Default", + "backupPolicy": { + "type": "Periodic", + "periodicModeProperties": { + "backupIntervalInMinutes": 240, + "backupRetentionIntervalInHours": 720, + "backupStorageRedundancy": "Geo" + } + }, + "networkAclBypass": "None", + "networkAclBypassResourceIds": [] + }, + "systemData": { + "createdAt": "2021-03-12T22:05:09Z" + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountDelete.json new file mode 100644 index 000000000000..80debdb9f5aa --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountFailoverPriorityChange.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountFailoverPriorityChange.json new file mode 100644 index 000000000000..3a5787354515 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountFailoverPriorityChange.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "accountName": "ddb1-failover", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "failoverParameters": { + "failoverPolicies": [ + { + "locationName": "eastus", + "failoverPriority": 0 + }, + { + "locationName": "westus", + "failoverPriority": 1 + } + ] + } + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountGet.json new file mode 100644 index 000000000000..614ea14ae825 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountGet.json @@ -0,0 +1,99 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1", + "name": "ddb1", + "location": "West US", + "type": "Microsoft.DocumentDB/databaseAccounts", + "kind": "GlobalDocumentDB", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "documentEndpoint": "https://ddb1.documents.azure.com:443/", + "ipRules": [], + "isVirtualNetworkFilterEnabled": false, + "virtualNetworkRules": [], + "databaseAccountOfferType": "Standard", + "disableKeyBasedMetadataWriteAccess": false, + "consistencyPolicy": { + "defaultConsistencyLevel": "Session", + "maxIntervalInSeconds": 5, + "maxStalenessPrefix": 100 + }, + "writeLocations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "readLocations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "locations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "failoverPolicies": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "failoverPriority": 0 + } + ], + "privateEndpointConnections": [ + { + "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.DocumentDB/databaseAccounts/account1/privateEndpointConnections/pe1", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.Network/privateEndpoints/pe1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "actionsRequired": "None" + } + } + } + ], + "cors": [], + "enableFreeTier": false, + "apiProperties": {}, + "enableAnalyticalStorage": true, + "defaultIdentity": "FirstPartyIdentity", + "instanceId": "d9b26648-2f53-4541-b3d8-3044f4f9810d", + "createMode": "Default", + "backupPolicy": { + "type": "Periodic", + "periodicModeProperties": { + "backupIntervalInMinutes": 240, + "backupRetentionIntervalInHours": 720, + "backupStorageRedundancy": "Geo" + } + }, + "networkAclBypass": "None", + "networkAclBypassResourceIds": [] + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountGetMetricDefinitions.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountGetMetricDefinitions.json new file mode 100644 index 000000000000..b741c7a2fd93 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountGetMetricDefinitions.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "subscriptionId": "subid", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "metricAvailabilities": [ + { + "timeGrain": "PT5M", + "retention": "P2D" + }, + { + "timeGrain": "PT1H", + "retention": "P14D" + }, + { + "timeGrain": "P1D", + "retention": "P60D" + } + ], + "primaryAggregationType": "Total", + "unit": "Count", + "resourceUri": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1", + "name": { + "value": "Total Requests", + "localizedValue": "Total Requests" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountGetMetrics.json new file mode 100644 index 000000000000..672c9c6e4d90 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountGetMetrics.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "$filter": "$filter=(name.value eq 'Total Requests') and timeGrain eq duration'PT5M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T00:13:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Count", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-19T23:58:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:03:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:08:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + } + ], + "name": { + "value": "Total Requests", + "localizedValue": "Total Requests" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountGetUsages.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountGetUsages.json new file mode 100644 index 000000000000..ced30b1540af --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountGetUsages.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "$filter": "$filter=name.value eq 'Storage'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "unit": "Bytes", + "quotaPeriod": "P1D", + "limit": 10737418240, + "currentValue": 0, + "name": { + "value": "Storage", + "localizedValue": "Storage" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountList.json new file mode 100644 index 000000000000..c0febc0b2fe3 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountList.json @@ -0,0 +1,102 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1", + "name": "ddb1", + "location": "West US", + "type": "Microsoft.DocumentDB/databaseAccounts", + "kind": "GlobalDocumentDB", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "documentEndpoint": "https://ddb1.documents.azure.com:443/", + "ipRules": [], + "databaseAccountOfferType": "Standard", + "disableKeyBasedMetadataWriteAccess": false, + "consistencyPolicy": { + "defaultConsistencyLevel": "Session", + "maxIntervalInSeconds": 5, + "maxStalenessPrefix": 100 + }, + "writeLocations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "readLocations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "locations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "failoverPolicies": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "failoverPriority": 0 + } + ], + "privateEndpointConnections": [ + { + "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.DocumentDB/databaseAccounts/account1/privateEndpointConnections/pe1", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.Network/privateEndpoints/pe1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "actionsRequired": "None" + } + } + } + ], + "cors": [], + "enableFreeTier": false, + "apiProperties": {}, + "enableAnalyticalStorage": true, + "instanceId": "d9b26648-2f53-4541-b3d8-3044f4f9810d", + "createMode": "Default", + "defaultIdentity": "FirstPartyIdentity", + "backupPolicy": { + "type": "Periodic", + "periodicModeProperties": { + "backupIntervalInMinutes": 240, + "backupRetentionIntervalInHours": 720, + "backupStorageRedundancy": "Geo" + } + }, + "networkAclBypass": "None", + "networkAclBypassResourceIds": [] + }, + "systemData": { + "createdAt": "2021-03-12T22:05:09Z" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountListByResourceGroup.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountListByResourceGroup.json new file mode 100644 index 000000000000..2500adcbff16 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountListByResourceGroup.json @@ -0,0 +1,87 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1", + "name": "ddb1", + "location": "West US", + "type": "Microsoft.DocumentDB/databaseAccounts", + "kind": "GlobalDocumentDB", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "documentEndpoint": "https://ddb1.documents.azure.com:443/", + "ipRules": [], + "databaseAccountOfferType": "Standard", + "disableKeyBasedMetadataWriteAccess": false, + "consistencyPolicy": { + "defaultConsistencyLevel": "Session", + "maxIntervalInSeconds": 5, + "maxStalenessPrefix": 100 + }, + "writeLocations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "readLocations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "locations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "failoverPolicies": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "failoverPriority": 0 + } + ], + "cors": [], + "enableFreeTier": false, + "instanceId": "d9b26648-2f53-4541-b3d8-3044f4f9810d", + "createMode": "Default", + "defaultIdentity": "FirstPartyIdentity", + "backupPolicy": { + "type": "Periodic", + "periodicModeProperties": { + "backupIntervalInMinutes": 240, + "backupRetentionIntervalInHours": 720, + "backupStorageRedundancy": "Geo" + } + }, + "networkAclBypass": "None", + "networkAclBypassResourceIds": [] + }, + "systemData": { + "createdAt": "2021-03-12T22:05:09Z" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountListConnectionStrings.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountListConnectionStrings.json new file mode 100644 index 000000000000..c5633522a5ac --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountListConnectionStrings.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": {} + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountListConnectionStringsMongo.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountListConnectionStringsMongo.json new file mode 100644 index 000000000000..6290ebf3d330 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountListConnectionStringsMongo.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "accountName": "mongo-ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "connectionStrings": [ + { + "connectionString": "connection-string", + "description": "Name of the connection string" + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountListKeys.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountListKeys.json new file mode 100644 index 000000000000..545d05002a9a --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountListKeys.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "primaryMasterKey": "primaryMasterKey", + "secondaryMasterKey": "secondaryMasterKey", + "primaryReadonlyMasterKey": "primaryReadonlyMasterKey", + "secondaryReadonlyMasterKey": "secondaryReadonlyMasterKey" + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountListReadOnlyKeys.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountListReadOnlyKeys.json new file mode 100644 index 000000000000..4b1f0c082634 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountListReadOnlyKeys.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "primaryReadonlyMasterKey": "primaryReadonlyMasterKey", + "secondaryReadonlyMasterKey": "secondaryReadonlyMasterKey" + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountOfflineRegion.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountOfflineRegion.json new file mode 100644 index 000000000000..0c51a602a04d --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountOfflineRegion.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "region": "North Europe", + "regionParameterForOffline": [ + { + "region": "North Europe" + } + ] + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountOnlineRegion.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountOnlineRegion.json new file mode 100644 index 000000000000..f577eb7e55f8 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountOnlineRegion.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "region": "North Europe", + "regionParameterForOnline": [ + { + "region": "North Europe" + } + ] + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountPatch.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountPatch.json new file mode 100644 index 000000000000..a5ec606e4a67 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountPatch.json @@ -0,0 +1,168 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "updateParameters": { + "location": "westus", + "tags": { + "dept": "finance" + }, + "identity": { + "type": "SystemAssigned,UserAssigned", + "userAssignedIdentities": { + "/subscriptions/fa5fc227-a624-475e-b696-cdd604c735bc/resourceGroups/eu2cgroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": {} + } + }, + "properties": { + "ipRules": [ + { + "ipAddressOrRange": "23.43.230.120" + }, + { + "ipAddressOrRange": "110.12.240.0/12" + } + ], + "isVirtualNetworkFilterEnabled": true, + "virtualNetworkRules": [ + { + "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "ignoreMissingVNetServiceEndpoint": false + } + ], + "consistencyPolicy": { + "defaultConsistencyLevel": "BoundedStaleness", + "maxIntervalInSeconds": 10, + "maxStalenessPrefix": 200 + }, + "enableFreeTier": false, + "enableAnalyticalStorage": true, + "backupPolicy": { + "type": "Periodic", + "periodicModeProperties": { + "backupIntervalInMinutes": 240, + "backupRetentionIntervalInHours": 720, + "backupStorageRedundancy": "Geo" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1", + "name": "ddb1", + "location": "West US", + "type": "Microsoft.DocumentDB/databaseAccounts", + "kind": "GlobalDocumentDB", + "tags": { + "dept": "finance" + }, + "identity": { + "type": "SystemAssigned,UserAssigned", + "userAssignedIdentities": { + "/subscriptions/fa5fc227-a624-475e-b696-cdd604c735bc/resourceGroups/eu2cgroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": { + "clientId": "fbe75b66-01c5-4f87-a220-233af3270436", + "principalId": "075a0ca6-43f6-4434-9abf-c9b1b79f9219" + } + } + }, + "properties": { + "provisioningState": "Succeeded", + "documentEndpoint": "https://ddb1.documents.azure.com:443/", + "databaseAccountOfferType": "Standard", + "ipRules": [ + { + "ipAddressOrRange": "23.43.230.120" + }, + { + "ipAddressOrRange": "110.12.240.0/12" + } + ], + "isVirtualNetworkFilterEnabled": true, + "disableKeyBasedMetadataWriteAccess": false, + "consistencyPolicy": { + "defaultConsistencyLevel": "BoundedStaleness", + "maxIntervalInSeconds": 10, + "maxStalenessPrefix": 200 + }, + "writeLocations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "readLocations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "locations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "failoverPolicies": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "failoverPriority": 0 + } + ], + "cors": [], + "virtualNetworkRules": [ + { + "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "ignoreMissingVNetServiceEndpoint": false + } + ], + "privateEndpointConnections": [ + { + "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.DocumentDB/databaseAccounts/account1/privateEndpointConnections/pe1", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.Network/privateEndpoints/pe1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "actionsRequired": "None" + } + } + } + ], + "enableFreeTier": false, + "apiProperties": {}, + "enableAnalyticalStorage": true, + "instanceId": "d9b26648-2f53-4541-b3d8-3044f4f9810d", + "createMode": "Default", + "backupPolicy": { + "type": "Periodic", + "periodicModeProperties": { + "backupIntervalInMinutes": 240, + "backupRetentionIntervalInHours": 720, + "backupStorageRedundancy": "Geo" + } + }, + "networkAclBypass": "None", + "networkAclBypassResourceIds": [] + }, + "systemData": { + "createdAt": "2021-03-12T22:05:09Z" + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountRegenerateKey.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountRegenerateKey.json new file mode 100644 index 000000000000..bdb7453b84d4 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountRegenerateKey.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "keyToRegenerate": { + "keyKind": "primary" + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountRegionGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountRegionGetMetrics.json new file mode 100644 index 000000000000..95a8ece4ef4c --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseAccountRegionGetMetrics.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "region": "North Europe", + "$filter": "$filter=(name.value eq 'Total Requests') and timeGrain eq duration'PT5M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T00:13:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Count", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-19T23:58:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:03:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:08:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + } + ], + "name": { + "value": "Total Requests", + "localizedValue": "Total Requests" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseGetMetricDefinitions.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseGetMetricDefinitions.json new file mode 100644 index 000000000000..c74d418ab4d2 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseGetMetricDefinitions.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "subscriptionId": "subid", + "api-version": "2021-04-01-preview", + "databaseRid": "databaseRid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "metricAvailabilities": [ + { + "timeGrain": "PT5M", + "retention": "P2D" + }, + { + "timeGrain": "PT1H", + "retention": "P14D" + }, + { + "timeGrain": "P1D", + "retention": "P60D" + } + ], + "primaryAggregationType": "Total", + "unit": "Count", + "resourceUri": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1", + "name": { + "value": "Total Requests", + "localizedValue": "Total Requests" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseGetMetrics.json new file mode 100644 index 000000000000..a47a21bac74b --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseGetMetrics.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "databaseRid": "rid", + "$filter": "$filter=(name.value eq 'Total Requests') and timeGrain eq duration'PT5M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T00:13:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Count", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-19T23:58:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:03:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:08:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + } + ], + "name": { + "value": "Total Requests", + "localizedValue": "Total Requests" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseGetUsages.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseGetUsages.json new file mode 100644 index 000000000000..170ea5e9f055 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBDatabaseGetUsages.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "databaseRid": "databaseRid", + "subscriptionId": "subid", + "$filter": "$filter=name.value eq 'Storage'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "unit": "Bytes", + "quotaPeriod": "P1D", + "limit": 10737418240, + "currentValue": 0, + "name": { + "value": "Storage", + "localizedValue": "Storage" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBGremlinDatabaseCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBGremlinDatabaseCreateUpdate.json new file mode 100644 index 000000000000..027d0a7387f0 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBGremlinDatabaseCreateUpdate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "databaseName": "databaseName", + "createUpdateGremlinDatabaseParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName" + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/gremlinDatabases/databaseName", + "name": "databaseName", + "type": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName", + "_rid": "CqNBAA==", + "_ts": 1449602962, + "_etag": "\"00000a00-0000-0000-0000-56672f920000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBGremlinDatabaseDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBGremlinDatabaseDelete.json new file mode 100644 index 000000000000..00686dc8b277 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBGremlinDatabaseDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBGremlinDatabaseGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBGremlinDatabaseGet.json new file mode 100644 index 000000000000..71bfee95c399 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBGremlinDatabaseGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/gremlinDatabases/databaseName", + "name": "databaseName", + "type": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName", + "_rid": "CqNBAA==", + "_ts": 1449602962, + "_etag": "\"00000a00-0000-0000-0000-56672f920000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBGremlinDatabaseList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBGremlinDatabaseList.json new file mode 100644 index 000000000000..abd72333d17e --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBGremlinDatabaseList.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/gremlinDatabases/databaseName", + "name": "databaseName", + "type": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName", + "_rid": "CqNBAA==", + "_ts": 1449602962, + "_etag": "\"00000a00-0000-0000-0000-56672f920000\"" + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBGremlinDatabaseMigrateToAutoscale.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBGremlinDatabaseMigrateToAutoscale.json new file mode 100644 index 000000000000..53d0427d9d53 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBGremlinDatabaseMigrateToAutoscale.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "autoscaleSettings": { + "maxThroughput": 4000 + }, + "minimumThroughput": "4000", + "offerReplacePending": "false", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBGremlinDatabaseMigrateToManualThroughput.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBGremlinDatabaseMigrateToManualThroughput.json new file mode 100644 index 000000000000..5ca65fc3afc6 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBGremlinDatabaseMigrateToManualThroughput.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBGremlinDatabaseThroughputGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBGremlinDatabaseThroughputGet.json new file mode 100644 index 000000000000..6b50ba58ae20 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBGremlinDatabaseThroughputGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/gremlinDatabases/databaseName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBGremlinDatabaseThroughputUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBGremlinDatabaseThroughputUpdate.json new file mode 100644 index 000000000000..5ddbe132ad7e --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBGremlinDatabaseThroughputUpdate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "databaseName": "databaseName", + "updateThroughputParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/gremlinDatabases/databaseName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBGremlinGraphCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBGremlinGraphCreateUpdate.json new file mode 100644 index 000000000000..ff06f916d26a --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBGremlinGraphCreateUpdate.json @@ -0,0 +1,124 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "databaseName": "databaseName", + "graphName": "graphName", + "createUpdateGremlinGraphParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "graphName", + "indexingPolicy": { + "indexingMode": "consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/AccountNumber" + ], + "kind": "Hash" + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + } + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/gremlinDatabases/databaseName/gremlinGraphs/graphName", + "name": "graphName", + "type": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases/gremlinGraphs", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "graphName", + "indexingPolicy": { + "indexingMode": "consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/AccountNumber" + ], + "kind": "Hash" + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + }, + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBGremlinGraphDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBGremlinGraphDelete.json new file mode 100644 index 000000000000..bb87f4577d83 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBGremlinGraphDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "databaseName": "databaseName", + "graphName": "graphName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBGremlinGraphGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBGremlinGraphGet.json new file mode 100644 index 000000000000..541b278b58c5 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBGremlinGraphGet.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName", + "graphName": "graphName" + }, + "responses": { + "200": { + "body": { + "id": "graphName", + "name": "graphName", + "type": "Microsoft.DocumentDB/databaseAccounts/apis/databases/graphs", + "properties": { + "resource": { + "id": "graphName", + "indexingPolicy": { + "indexingMode": "consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/AccountNumber" + ], + "kind": "Hash" + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + }, + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBGremlinGraphList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBGremlinGraphList.json new file mode 100644 index 000000000000..faf2f1381868 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBGremlinGraphList.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "testgrf", + "name": "testgrf", + "type": "Microsoft.DocumentDB/databaseAccounts/apis/databases/graphs", + "properties": { + "resource": { + "id": "testgrf", + "indexingPolicy": { + "indexingMode": "consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/AccountNumber" + ], + "kind": "Hash" + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + }, + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBGremlinGraphMigrateToAutoscale.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBGremlinGraphMigrateToAutoscale.json new file mode 100644 index 000000000000..6ffbf62ba6d5 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBGremlinGraphMigrateToAutoscale.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "databaseName": "databaseName", + "graphName": "graphName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "autoscaleSettings": { + "maxThroughput": 4000 + }, + "minimumThroughput": "4000", + "offerReplacePending": "false", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBGremlinGraphMigrateToManualThroughput.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBGremlinGraphMigrateToManualThroughput.json new file mode 100644 index 000000000000..90a37f4b6e17 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBGremlinGraphMigrateToManualThroughput.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "databaseName": "databaseName", + "graphName": "graphName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBGremlinGraphThroughputGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBGremlinGraphThroughputGet.json new file mode 100644 index 000000000000..c49ec5f7dcda --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBGremlinGraphThroughputGet.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "databaseName": "databaseName", + "graphName": "graphName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/gremlinDatabases/databaseName/gremlinGraphs/graphName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBGremlinGraphThroughputUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBGremlinGraphThroughputUpdate.json new file mode 100644 index 000000000000..514d010a1801 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBGremlinGraphThroughputUpdate.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "databaseName": "databaseName", + "graphName": "graphName", + "updateThroughputParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/gremlinDatabases/databaseName/gremlinGraphs/graphName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBLocationGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBLocationGet.json new file mode 100644 index 000000000000..6678bf2fda8e --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBLocationGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "westus" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DocumentDB/locations/westus", + "type": "Microsoft.DocumentDB/locations", + "name": "westus", + "properties": { + "status": "ProductionSLA", + "supportsAvailabilityZone": true, + "isResidencyRestricted": true, + "backupStorageRedundancies": [ + "Local", + "Geo" + ] + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBLocationList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBLocationList.json new file mode 100644 index 000000000000..68e3fb33b117 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBLocationList.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DocumentDB/locations/westus", + "type": "Microsoft.DocumentDB/locations", + "name": "westus", + "properties": { + "status": "ProductionSLA", + "supportsAvailabilityZone": false, + "isResidencyRestricted": false, + "backupStorageRedundancies": [ + "Local", + "Geo" + ] + } + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DocumentDB/locations/centralus", + "type": "Microsoft.DocumentDB/locations", + "name": "centralus", + "properties": { + "status": "ProductionSLA", + "supportsAvailabilityZone": true, + "isResidencyRestricted": false, + "backupStorageRedundancies": [ + "Zone", + "Geo" + ] + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBManagedCassandraBackup.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBManagedCassandraBackup.json new file mode 100644 index 000000000000..5e9e16a9db4b --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBManagedCassandraBackup.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "cassandra-prod-rg", + "api-version": "2021-04-01-preview", + "clusterName": "cassandra-prod", + "backupId": "1611250348" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/cassandra-prod-rg/providers/Microsoft.DocumentDB/cassandraClusters/cassandra-prod/backups/1611250348", + "name": "1611250348", + "type": "Microsoft.DocumentDB/cassandraClusters/backups", + "properties": { + "timestamp": "2021-01-21T17:32:28Z" + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBManagedCassandraBackupsList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBManagedCassandraBackupsList.json new file mode 100644 index 000000000000..44ede7013856 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBManagedCassandraBackupsList.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "cassandra-prod-rg", + "api-version": "2021-04-01-preview", + "clusterName": "cassandra-prod" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/cassandra-prod-rg/providers/Microsoft.DocumentDB/cassandraClusters/cassandra-prod/backups/1611250348", + "name": "1611250348", + "type": "Microsoft.DocumentDB/cassandraClusters/backups", + "properties": { + "timestamp": "2021-01-21T17:32:28Z" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/cassandra-prod-rg/providers/Microsoft.DocumentDB/cassandraClusters/cassandra-prod/backups/1611214220", + "name": "1611214220", + "type": "Microsoft.DocumentDB/cassandraClusters/backups", + "properties": { + "timestamp": "2021-01-21T07:30:20Z" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBManagedCassandraClusterCreate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBManagedCassandraClusterCreate.json new file mode 100644 index 000000000000..0a9ea34b8b66 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBManagedCassandraClusterCreate.json @@ -0,0 +1,155 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "cassandra-prod-rg", + "api-version": "2021-04-01-preview", + "clusterName": "cassandra-prod", + "body": { + "location": "West US", + "tags": {}, + "properties": { + "delegatedManagementSubnetId": "/subscriptions/536e130b-d7d6-4ac7-98a5-de20d69588d2/resourceGroups/customer-vnet-rg/providers/Microsoft.Network/virtualNetworks/customer-vnet/subnets/management", + "cassandraVersion": "3.11", + "hoursBetweenBackups": 24, + "authenticationMethod": "Cassandra", + "initialCassandraAdminPassword": "mypassword", + "externalSeedNodes": [ + { + "ipAddress": "10.52.221.2" + }, + { + "ipAddress": "10.52.221.3" + }, + { + "ipAddress": "10.52.221.4" + } + ], + "clusterNameOverride": "ClusterNameIllegalForAzureResource", + "clientCertificates": [ + { + "pem": "-----BEGIN CERTIFICATE-----\n...Base64 encoded certificate...\n-----END CERTIFICATE-----" + } + ], + "externalGossipCertificates": [ + { + "pem": "-----BEGIN CERTIFICATE-----\n...Base64 encoded certificate...\n-----END CERTIFICATE-----" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/cassandra-prod-rg/providers/Microsoft.DocumentDB/cassandraClusters/cassandra-prod", + "name": "cassandra-prod", + "type": "Microsoft.DocumentDB/cassandraClusters", + "location": "West US", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "delegatedManagementSubnetId": "/subscriptions/536e130b-d7d6-4ac7-98a5-de20d69588d2/resourceGroups/customer-vnet-rg/providers/Microsoft.Network/virtualNetworks/customer-vnet/subnets/management", + "cassandraVersion": "3.11", + "hoursBetweenBackups": 24, + "authenticationMethod": "Cassandra", + "externalSeedNodes": [ + { + "ipAddress": "10.52.221.2" + }, + { + "ipAddress": "10.52.221.3" + }, + { + "ipAddress": "10.52.221.4" + } + ], + "clusterNameOverride": "ClusterNameIllegalForAzureResource", + "seedNodes": [ + { + "ipAddress": "10.52.221.2" + }, + { + "ipAddress": "10.52.221.3" + }, + { + "ipAddress": "10.52.221.4" + }, + { + "ipAddress": "192.168.12.2" + }, + { + "ipAddress": "192.168.12.3" + }, + { + "ipAddress": "192.168.12.4" + } + ], + "clientCertificates": [ + { + "pem": "-----BEGIN CERTIFICATE-----\n...Base64 encoded certificate...\n-----END CERTIFICATE-----" + } + ], + "externalGossipCertificates": [ + { + "pem": "-----BEGIN CERTIFICATE-----\n...Base64 encoded certificate...\n-----END CERTIFICATE-----" + } + ], + "gossipCertificates": [ + { + "pem": "-----BEGIN CERTIFICATE-----\n...Base64 encoded certificate...\n-----END CERTIFICATE-----" + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/cassandra-prod-rg/providers/Microsoft.DocumentDB/cassandraClusters/cassandra-prod", + "name": "cassandra-prod", + "type": "Microsoft.DocumentDB/cassandraClusters", + "location": "West US", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "delegatedManagementSubnetId": "/subscriptions/536e130b-d7d6-4ac7-98a5-de20d69588d2/resourceGroups/customer-vnet-rg/providers/Microsoft.Network/virtualNetworks/customer-vnet/subnets/management", + "cassandraVersion": "3.11", + "hoursBetweenBackups": 24, + "authenticationMethod": "Cassandra", + "externalSeedNodes": [ + { + "ipAddress": "10.52.221.2" + }, + { + "ipAddress": "10.52.221.3" + }, + { + "ipAddress": "10.52.221.4" + } + ], + "clusterNameOverride": "ClusterNameIllegalForAzureResource", + "seedNodes": [ + { + "ipAddress": "10.52.221.2" + }, + { + "ipAddress": "10.52.221.3" + }, + { + "ipAddress": "10.52.221.4" + } + ], + "clientCertificates": [ + { + "pem": "-----BEGIN CERTIFICATE-----\n...Base64 encoded certificate...\n-----END CERTIFICATE-----" + } + ], + "externalGossipCertificates": [ + { + "pem": "-----BEGIN CERTIFICATE-----\n...Base64 encoded certificate...\n-----END CERTIFICATE-----" + } + ] + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBManagedCassandraClusterDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBManagedCassandraClusterDelete.json new file mode 100644 index 000000000000..34119b849e2c --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBManagedCassandraClusterDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "cassandra-prod-rg", + "api-version": "2021-04-01-preview", + "clusterName": "cassandra-prod" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBManagedCassandraClusterFetchNodeStatus.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBManagedCassandraClusterFetchNodeStatus.json new file mode 100644 index 000000000000..59df36aab250 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBManagedCassandraClusterFetchNodeStatus.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "cassandra-prod-rg", + "api-version": "2021-04-01-preview", + "clusterName": "cassandra-prod" + }, + "responses": { + "202": {}, + "200": { + "body": { + "nodes": [ + { + "datacenter": "dc1", + "status": "Up", + "state": "Normal", + "address": "10.0.1.12", + "load": "512.3 MB", + "tokens": [ + "12", + "15" + ], + "owns": 33.3, + "hostId": "aaa1b7c1-6049-4a08-ad3e-3697a0e30e10", + "rack": "rack1" + }, + { + "datacenter": "dc1", + "status": "Up", + "state": "Normal", + "address": "10.0.1.13", + "load": "512.1 MB", + "tokens": [ + "12", + "15" + ], + "owns": 33.3, + "hostId": "1848c369-4306-4874-afdf-5c1e95b8732e", + "rack": "rack1" + }, + { + "datacenter": "dc1", + "status": "Up", + "state": "Normal", + "address": "10.0.1.14", + "load": "512.5 MB", + "tokens": [ + "12", + "15" + ], + "owns": 33.3, + "hostId": "49578bf1-728f-438d-b1c1-d8dd644b6f7f", + "rack": "rack1" + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBManagedCassandraClusterGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBManagedCassandraClusterGet.json new file mode 100644 index 000000000000..36a6836f08bd --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBManagedCassandraClusterGet.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "cassandra-prod-rg", + "api-version": "2021-04-01-preview", + "clusterName": "cassandra-prod" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/cassandra-prod-rg/providers/Microsoft.DocumentDB/cassandraClusters/cassandra-prod", + "name": "cassandra-prod", + "type": "Microsoft.DocumentDB/cassandraClusters", + "location": "West US", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "delegatedManagementSubnetId": "/subscriptions/536e130b-d7d6-4ac7-98a5-de20d69588d2/resourceGroups/customer-vnet-rg/providers/Microsoft.Network/virtualNetworks/customer-vnet/subnets/management", + "cassandraVersion": "3.11", + "hoursBetweenBackups": 24, + "authenticationMethod": "Cassandra", + "externalSeedNodes": [ + { + "ipAddress": "10.52.221.2" + }, + { + "ipAddress": "10.52.221.3" + }, + { + "ipAddress": "10.52.221.4" + } + ], + "clusterNameOverride": "ClusterNameIllegalForAzureResource", + "seedNodes": [ + { + "ipAddress": "10.52.221.2" + }, + { + "ipAddress": "10.52.221.3" + }, + { + "ipAddress": "10.52.221.4" + }, + { + "ipAddress": "192.168.12.2" + }, + { + "ipAddress": "192.168.12.3" + }, + { + "ipAddress": "192.168.12.4" + } + ], + "clientCertificates": [ + { + "pem": "-----BEGIN CERTIFICATE-----\n...Base64 encoded certificate...\n-----END CERTIFICATE-----" + } + ], + "externalGossipCertificates": [ + { + "pem": "-----BEGIN CERTIFICATE-----\n...Base64 encoded certificate...\n-----END CERTIFICATE-----" + } + ], + "gossipCertificates": [ + { + "pem": "-----BEGIN CERTIFICATE-----\n...Base64 encoded certificate...\n-----END CERTIFICATE-----" + } + ] + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBManagedCassandraClusterListByResourceGroup.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBManagedCassandraClusterListByResourceGroup.json new file mode 100644 index 000000000000..0065d45eef51 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBManagedCassandraClusterListByResourceGroup.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "cassandra-prod-rg", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/cassandra-prod-rg/providers/Microsoft.DocumentDB/cassandraClusters", + "name": "cassandra-prod", + "type": "Microsoft.DocumentDB/cassandraClusters", + "location": "West US", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "delegatedManagementSubnetId": "/subscriptions/536e130b-d7d6-4ac7-98a5-de20d69588d2/resourceGroups/customer-vnet-rg/providers/Microsoft.Network/virtualNetworks/customer-vnet/subnets/management", + "cassandraVersion": "3.11", + "hoursBetweenBackups": 24, + "authenticationMethod": "Cassandra", + "externalSeedNodes": [ + { + "ipAddress": "10.52.221.2" + }, + { + "ipAddress": "10.52.221.3" + }, + { + "ipAddress": "10.52.221.4" + } + ], + "clusterNameOverride": "ClusterNameIllegalForAzureResource", + "seedNodes": [ + { + "ipAddress": "10.52.221.2" + }, + { + "ipAddress": "10.52.221.3" + }, + { + "ipAddress": "10.52.221.4" + }, + { + "ipAddress": "192.168.12.2" + }, + { + "ipAddress": "192.168.12.3" + }, + { + "ipAddress": "192.168.12.4" + } + ], + "clientCertificates": [ + { + "pem": "-----BEGIN CERTIFICATE-----\n...Base64 encoded certificate...\n-----END CERTIFICATE-----" + } + ], + "externalGossipCertificates": [ + { + "pem": "-----BEGIN CERTIFICATE-----\n...Base64 encoded certificate...\n-----END CERTIFICATE-----" + } + ], + "gossipCertificates": [ + { + "pem": "-----BEGIN CERTIFICATE-----\n...Base64 encoded certificate...\n-----END CERTIFICATE-----" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBManagedCassandraClusterListBySubscription.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBManagedCassandraClusterListBySubscription.json new file mode 100644 index 000000000000..7b9b69ed56b8 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBManagedCassandraClusterListBySubscription.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/providers/Microsoft.DocumentDB/cassandraClusters", + "name": "cassandra-prod", + "type": "Microsoft.DocumentDB/cassandraClusters", + "location": "West US", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "delegatedManagementSubnetId": "/subscriptions/536e130b-d7d6-4ac7-98a5-de20d69588d2/resourceGroups/customer-vnet-rg/providers/Microsoft.Network/virtualNetworks/customer-vnet/subnets/management", + "cassandraVersion": "3.11", + "hoursBetweenBackups": 24, + "authenticationMethod": "Cassandra", + "externalSeedNodes": [ + { + "ipAddress": "10.52.221.2" + }, + { + "ipAddress": "10.52.221.3" + }, + { + "ipAddress": "10.52.221.4" + } + ], + "clusterNameOverride": "ClusterNameIllegalForAzureResource", + "seedNodes": [ + { + "ipAddress": "10.52.221.2" + }, + { + "ipAddress": "10.52.221.3" + }, + { + "ipAddress": "10.52.221.4" + }, + { + "ipAddress": "192.168.12.2" + }, + { + "ipAddress": "192.168.12.3" + }, + { + "ipAddress": "192.168.12.4" + } + ], + "clientCertificates": [ + { + "pem": "-----BEGIN CERTIFICATE-----\n...Base64 encoded certificate...\n-----END CERTIFICATE-----" + } + ], + "externalGossipCertificates": [ + { + "pem": "-----BEGIN CERTIFICATE-----\n...Base64 encoded certificate...\n-----END CERTIFICATE-----" + } + ], + "gossipCertificates": [ + { + "pem": "-----BEGIN CERTIFICATE-----\n...Base64 encoded certificate...\n-----END CERTIFICATE-----" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBManagedCassandraClusterPatch.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBManagedCassandraClusterPatch.json new file mode 100644 index 000000000000..8ccc89461b55 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBManagedCassandraClusterPatch.json @@ -0,0 +1,163 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "cassandra-prod-rg", + "api-version": "2021-04-01-preview", + "clusterName": "cassandra-prod", + "body": { + "tags": { + "owner": "mike" + }, + "properties": { + "externalSeedNodes": [ + { + "ipAddress": "10.52.221.2" + }, + { + "ipAddress": "10.52.221.3" + }, + { + "ipAddress": "10.52.221.4" + } + ], + "externalGossipCertificates": [ + { + "pem": "-----BEGIN CERTIFICATE-----\n...Base64 encoded certificate...\n-----END CERTIFICATE-----" + } + ], + "hoursBetweenBackups": 12, + "authenticationMethod": "None" + } + } + }, + "responses": { + "202": { + "body": { + "id": "/subscriptions/subid/resourceGroups/cassandra-prod-rg/providers/Microsoft.DocumentDB/cassandraClusters/cassandra-prod", + "name": "cassandra-prod", + "type": "Microsoft.DocumentDB/cassandraClusters", + "location": "West US", + "tags": { + "owner": "mike" + }, + "properties": { + "provisioningState": "Updating", + "delegatedManagementSubnetId": "/subscriptions/536e130b-d7d6-4ac7-98a5-de20d69588d2/resourceGroups/customer-vnet-rg/providers/Microsoft.Network/virtualNetworks/customer-vnet/subnets/management", + "cassandraVersion": "3.11", + "hoursBetweenBackups": 24, + "authenticationMethod": "Cassandra", + "externalSeedNodes": [ + { + "ipAddress": "10.52.221.2" + }, + { + "ipAddress": "10.52.221.3" + }, + { + "ipAddress": "10.52.221.4" + } + ], + "clusterNameOverride": "ClusterNameIllegalForAzureResource", + "seedNodes": [ + { + "ipAddress": "10.52.221.2" + }, + { + "ipAddress": "10.52.221.3" + }, + { + "ipAddress": "10.52.221.4" + }, + { + "ipAddress": "192.168.12.2" + }, + { + "ipAddress": "192.168.12.3" + }, + { + "ipAddress": "192.168.12.4" + } + ], + "clientCertificates": [ + { + "pem": "-----BEGIN CERTIFICATE-----\n...Base64 encoded certificate...\n-----END CERTIFICATE-----" + } + ], + "externalGossipCertificates": [ + { + "pem": "-----BEGIN CERTIFICATE-----\n...Base64 encoded certificate...\n-----END CERTIFICATE-----" + } + ], + "gossipCertificates": [ + { + "pem": "-----BEGIN CERTIFICATE-----\n...Base64 encoded certificate...\n-----END CERTIFICATE-----" + } + ] + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/cassandra-prod-rg/providers/Microsoft.DocumentDB/cassandraClusters/cassandra-prod", + "name": "cassandra-prod", + "type": "Microsoft.DocumentDB/cassandraClusters", + "location": "West US", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "delegatedManagementSubnetId": "/subscriptions/536e130b-d7d6-4ac7-98a5-de20d69588d2/resourceGroups/customer-vnet-rg/providers/Microsoft.Network/virtualNetworks/customer-vnet/subnets/management", + "cassandraVersion": "3.11", + "hoursBetweenBackups": 24, + "authenticationMethod": "Cassandra", + "externalSeedNodes": [ + { + "ipAddress": "10.52.221.2" + }, + { + "ipAddress": "10.52.221.3" + }, + { + "ipAddress": "10.52.221.4" + } + ], + "clusterNameOverride": "ClusterNameIllegalForAzureResource", + "seedNodes": [ + { + "ipAddress": "10.52.221.2" + }, + { + "ipAddress": "10.52.221.3" + }, + { + "ipAddress": "10.52.221.4" + }, + { + "ipAddress": "192.168.12.2" + }, + { + "ipAddress": "192.168.12.3" + }, + { + "ipAddress": "192.168.12.4" + } + ], + "clientCertificates": [ + { + "pem": "-----BEGIN CERTIFICATE-----\n...Base64 encoded certificate...\n-----END CERTIFICATE-----" + } + ], + "externalGossipCertificates": [ + { + "pem": "-----BEGIN CERTIFICATE-----\n...Base64 encoded certificate...\n-----END CERTIFICATE-----" + } + ], + "gossipCertificates": [ + { + "pem": "-----BEGIN CERTIFICATE-----\n...Base64 encoded certificate...\n-----END CERTIFICATE-----" + } + ] + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBManagedCassandraDataCenterCreate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBManagedCassandraDataCenterCreate.json new file mode 100644 index 000000000000..c78158a09544 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBManagedCassandraDataCenterCreate.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "cassandra-prod-rg", + "api-version": "2021-04-01-preview", + "clusterName": "cassandra-prod", + "dataCenterName": "dc1", + "body": { + "properties": { + "dataCenterLocation": "West US 2", + "delegatedSubnetId": "/subscriptions/536e130b-d7d6-4ac7-98a5-de20d69588d2/resourceGroups/customer-vnet-rg/providers/Microsoft.Network/virtualNetworks/customer-vnet/subnets/dc1-subnet", + "nodeCount": 9, + "base64EncodedCassandraYamlFragment": "Y29tcGFjdGlvbl90aHJvdWdocHV0X21iX3Blcl9zZWM6IDMyCmNvbXBhY3Rpb25fbGFyZ2VfcGFydGl0aW9uX3dhcm5pbmdfdGhyZXNob2xkX21iOiAxMDA=" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/cassandra-prod-rg/providers/Microsoft.DocumentDB/cassandraClusters/cassandra-prod/dataCenters/dc1", + "name": "dc1", + "type": "Microsoft.DocumentDB/cassandraClusters/dataCenters", + "properties": { + "provisioningState": "Succeeded", + "dataCenterLocation": "West US 2", + "delegatedSubnetId": "/subscriptions/536e130b-d7d6-4ac7-98a5-de20d69588d2/resourceGroups/customer-vnet-rg/providers/Microsoft.Network/virtualNetworks/customer-vnet/subnets/dc1", + "nodeCount": 9, + "seedNodes": [ + { + "ipAddress": "192.168.12.2" + }, + { + "ipAddress": "192.168.12.3" + }, + { + "ipAddress": "192.168.12.4" + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/cassandra-prod-rg/providers/Microsoft.DocumentDB/cassandraClusters/cassandra-prod/dataCenters/dc1", + "name": "dc1", + "type": "Microsoft.DocumentDB/cassandraClusters/dataCenters", + "properties": { + "provisioningState": "Creating", + "dataCenterLocation": "West US 2", + "delegatedSubnetId": "/subscriptions/536e130b-d7d6-4ac7-98a5-de20d69588d2/resourceGroups/customer-vnet-rg/providers/Microsoft.Network/virtualNetworks/customer-vnet/subnets/dc1", + "nodeCount": 9, + "seedNodes": [] + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBManagedCassandraDataCenterDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBManagedCassandraDataCenterDelete.json new file mode 100644 index 000000000000..26492440bb66 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBManagedCassandraDataCenterDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "cassandra-prod-rg", + "api-version": "2021-04-01-preview", + "clusterName": "cassandra-prod", + "dataCenterName": "dc1" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBManagedCassandraDataCenterGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBManagedCassandraDataCenterGet.json new file mode 100644 index 000000000000..24bf45dd757f --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBManagedCassandraDataCenterGet.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "cassandra-prod-rg", + "api-version": "2021-04-01-preview", + "clusterName": "cassandra-prod", + "dataCenterName": "dc1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/cassandra-prod-rg/providers/Microsoft.DocumentDB/cassandraClusters/cassandra-prod/dataCenters/dc1", + "name": "dc1", + "type": "Microsoft.DocumentDB/cassandraClusters/dataCenters", + "properties": { + "provisioningState": "Succeeded", + "dataCenterLocation": "West US 2", + "delegatedSubnetId": "/subscriptions/536e130b-d7d6-4ac7-98a5-de20d69588d2/resourceGroups/customer-vnet-rg/providers/Microsoft.Network/virtualNetworks/customer-vnet/subnets/dc1", + "nodeCount": 9, + "base64EncodedCassandraYamlFragment": "Y29tcGFjdGlvbl90aHJvdWdocHV0X21iX3Blcl9zZWM6IDMyCmNvbXBhY3Rpb25fbGFyZ2VfcGFydGl0aW9uX3dhcm5pbmdfdGhyZXNob2xkX21iOiAxMDA=", + "seedNodes": [ + { + "ipAddress": "192.168.12.2" + }, + { + "ipAddress": "192.168.12.3" + }, + { + "ipAddress": "192.168.12.4" + } + ] + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBManagedCassandraDataCenterList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBManagedCassandraDataCenterList.json new file mode 100644 index 000000000000..29db786a47fc --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBManagedCassandraDataCenterList.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "cassandra-prod-rg", + "api-version": "2021-04-01-preview", + "clusterName": "cassandra-prod" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/cassandra-prod-rg/providers/Microsoft.DocumentDB/cassandraClusters/cassandra-prod/dataCenters", + "name": "dc1", + "type": "Microsoft.DocumentDB/cassandraClusters/dataCenters", + "properties": { + "provisioningState": "Succeeded", + "dataCenterLocation": "West US 2", + "delegatedSubnetId": "/subscriptions/536e130b-d7d6-4ac7-98a5-de20d69588d2/resourceGroups/customer-vnet-rg/providers/Microsoft.Network/virtualNetworks/customer-vnet/subnets/dc1", + "nodeCount": 9, + "seedNodes": [ + { + "ipAddress": "192.168.12.2" + }, + { + "ipAddress": "192.168.12.3" + }, + { + "ipAddress": "192.168.12.4" + } + ], + "base64EncodedCassandraYamlFragment": "Y29tcGFjdGlvbl90aHJvdWdocHV0X21iX3Blcl9zZWM6IDMyCmNvbXBhY3Rpb25fbGFyZ2VfcGFydGl0aW9uX3dhcm5pbmdfdGhyZXNob2xkX21iOiAxMDA=" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBManagedCassandraDataCenterPatch.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBManagedCassandraDataCenterPatch.json new file mode 100644 index 000000000000..5f4091424493 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBManagedCassandraDataCenterPatch.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "cassandra-prod-rg", + "api-version": "2021-04-01-preview", + "clusterName": "cassandra-prod", + "dataCenterName": "dc1", + "body": { + "properties": { + "dataCenterLocation": "West US 2", + "delegatedSubnetId": "/subscriptions/536e130b-d7d6-4ac7-98a5-de20d69588d2/resourceGroups/customer-vnet-rg/providers/Microsoft.Network/virtualNetworks/customer-vnet/subnets/dc1-subnet", + "nodeCount": 9, + "base64EncodedCassandraYamlFragment": "Y29tcGFjdGlvbl90aHJvdWdocHV0X21iX3Blcl9zZWM6IDMyCmNvbXBhY3Rpb25fbGFyZ2VfcGFydGl0aW9uX3dhcm5pbmdfdGhyZXNob2xkX21iOiAxMDA=" + } + } + }, + "responses": { + "202": { + "body": { + "id": "/subscriptions/subid/resourceGroups/cassandra-prod-rg/providers/Microsoft.DocumentDB/cassandraClusters/cassandra-prod/dataCenters/dc1", + "name": "dc1", + "type": "Microsoft.DocumentDB/cassandraClusters/dataCenters", + "properties": { + "provisioningState": "Updating", + "dataCenterLocation": "West US 2", + "delegatedSubnetId": "/subscriptions/536e130b-d7d6-4ac7-98a5-de20d69588d2/resourceGroups/customer-vnet-rg/providers/Microsoft.Network/virtualNetworks/customer-vnet/subnets/dc1", + "nodeCount": 9, + "base64EncodedCassandraYamlFragment": "Y29tcGFjdGlvbl90aHJvdWdocHV0X21iX3Blcl9zZWM6IDMyCmNvbXBhY3Rpb25fbGFyZ2VfcGFydGl0aW9uX3dhcm5pbmdfdGhyZXNob2xkX21iOiAxMDA=", + "seedNodes": [ + { + "ipAddress": "192.168.12.2" + }, + { + "ipAddress": "192.168.12.3" + }, + { + "ipAddress": "192.168.12.4" + } + ] + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/cassandra-prod-rg/providers/Microsoft.DocumentDB/cassandraClusters/cassandra-prod/dataCenters/dc1", + "name": "dc1", + "type": "Microsoft.DocumentDB/cassandraClusters/dataCenters", + "properties": { + "provisioningState": "Succeeded", + "dataCenterLocation": "West US 2", + "delegatedSubnetId": "/subscriptions/536e130b-d7d6-4ac7-98a5-de20d69588d2/resourceGroups/customer-vnet-rg/providers/Microsoft.Network/virtualNetworks/customer-vnet/subnets/dc1", + "nodeCount": 9, + "base64EncodedCassandraYamlFragment": "Y29tcGFjdGlvbl90aHJvdWdocHV0X21iX3Blcl9zZWM6IDMyCmNvbXBhY3Rpb25fbGFyZ2VfcGFydGl0aW9uX3dhcm5pbmdfdGhyZXNob2xkX21iOiAxMDA=", + "seedNodes": [ + { + "ipAddress": "192.168.12.2" + }, + { + "ipAddress": "192.168.12.3" + }, + { + "ipAddress": "192.168.12.4" + } + ] + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBManagedCassandraRepair.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBManagedCassandraRepair.json new file mode 100644 index 000000000000..b614ad4a1344 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBManagedCassandraRepair.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "cassandra-prod-rg", + "api-version": "2021-04-01-preview", + "clusterName": "cassandra-prod", + "body": { + "keyspace": "my-keyspace", + "tables": [ + "table1", + "table42" + ] + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBMongoDBCollectionCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBMongoDBCollectionCreateUpdate.json new file mode 100644 index 000000000000..c4b86b621e1c --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBMongoDBCollectionCreateUpdate.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "databaseName": "databaseName", + "collectionName": "collectionName", + "createUpdateMongoDBCollectionParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "collectionName", + "indexes": [ + { + "key": { + "keys": [ + "testKey" + ] + }, + "options": { + "expireAfterSeconds": 100, + "unique": true + } + } + ], + "shardKey": { + "testKey": "Hash" + }, + "analyticalStorageTtl": 500 + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName/mongodbCollections/collectionName", + "name": "collectionName", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/mongodbCollections", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "collectionName", + "indexes": [ + { + "key": { + "keys": [ + "testKey" + ] + }, + "options": { + "expireAfterSeconds": 100, + "unique": true + } + } + ], + "shardKey": { + "testKey": "Hash" + }, + "analyticalStorageTtl": 500 + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBMongoDBCollectionDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBMongoDBCollectionDelete.json new file mode 100644 index 000000000000..06efd7d0bcc8 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBMongoDBCollectionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "databaseName": "databaseName", + "collectionName": "collectionName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBMongoDBCollectionGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBMongoDBCollectionGet.json new file mode 100644 index 000000000000..82a448b0baaf --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBMongoDBCollectionGet.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName", + "collectionName": "collectionName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName/mongodbCollections/collectionName", + "name": "collectionName", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/mongodbCollections", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "testcoll", + "indexes": [ + { + "key": { + "keys": [ + "testKey" + ] + }, + "options": { + "expireAfterSeconds": 100, + "unique": true + } + } + ], + "shardKey": { + "testKey": "Hash" + }, + "analyticalStorageTtl": 500, + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBMongoDBCollectionList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBMongoDBCollectionList.json new file mode 100644 index 000000000000..1d90778fb387 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBMongoDBCollectionList.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName/mongodbCollections/collectionName", + "name": "collectionName", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/mongodbCollections", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "testcoll", + "indexes": [ + { + "key": { + "keys": [ + "testKey" + ] + }, + "options": { + "expireAfterSeconds": 100, + "unique": true + } + } + ], + "shardKey": { + "testKey": "Hash" + }, + "analyticalStorageTtl": 500 + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBMongoDBCollectionMigrateToAutoscale.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBMongoDBCollectionMigrateToAutoscale.json new file mode 100644 index 000000000000..afd9f9b39622 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBMongoDBCollectionMigrateToAutoscale.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "databaseName": "databaseName", + "collectionName": "collectionName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "autoscaleSettings": { + "maxThroughput": 4000 + }, + "minimumThroughput": "4000", + "offerReplacePending": "false", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBMongoDBCollectionMigrateToManualThroughput.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBMongoDBCollectionMigrateToManualThroughput.json new file mode 100644 index 000000000000..71cd4338e778 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBMongoDBCollectionMigrateToManualThroughput.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "databaseName": "databaseName", + "collectionName": "collectionName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBMongoDBCollectionThroughputGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBMongoDBCollectionThroughputGet.json new file mode 100644 index 000000000000..0af01c7ed53e --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBMongoDBCollectionThroughputGet.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "databaseName": "databaseName", + "collectionName": "collectionName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName/mongodbCollections/collectionName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/mongodbCollections/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBMongoDBCollectionThroughputUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBMongoDBCollectionThroughputUpdate.json new file mode 100644 index 000000000000..5b1e20ab94d5 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBMongoDBCollectionThroughputUpdate.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "databaseName": "databaseName", + "collectionName": "collectionName", + "updateThroughputParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName/mongodbCollections/collectionName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/mongodbCollections/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBMongoDBDatabaseCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBMongoDBDatabaseCreateUpdate.json new file mode 100644 index 000000000000..323d0fabba31 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBMongoDBDatabaseCreateUpdate.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "databaseName": "databaseName", + "createUpdateMongoDBDatabaseParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName" + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName", + "name": "databaseName", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "updatedDatabaseName" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBMongoDBDatabaseDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBMongoDBDatabaseDelete.json new file mode 100644 index 000000000000..00686dc8b277 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBMongoDBDatabaseDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBMongoDBDatabaseGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBMongoDBDatabaseGet.json new file mode 100644 index 000000000000..79ec87095d69 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBMongoDBDatabaseGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName", + "name": "databaseName", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBMongoDBDatabaseList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBMongoDBDatabaseList.json new file mode 100644 index 000000000000..a0f5fc29a1c2 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBMongoDBDatabaseList.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName", + "name": "databaseName", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName" + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBMongoDBDatabaseMigrateToAutoscale.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBMongoDBDatabaseMigrateToAutoscale.json new file mode 100644 index 000000000000..53d0427d9d53 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBMongoDBDatabaseMigrateToAutoscale.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "autoscaleSettings": { + "maxThroughput": 4000 + }, + "minimumThroughput": "4000", + "offerReplacePending": "false", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBMongoDBDatabaseMigrateToManualThroughput.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBMongoDBDatabaseMigrateToManualThroughput.json new file mode 100644 index 000000000000..5ca65fc3afc6 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBMongoDBDatabaseMigrateToManualThroughput.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBMongoDBDatabaseThroughputGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBMongoDBDatabaseThroughputGet.json new file mode 100644 index 000000000000..8139406b0ea2 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBMongoDBDatabaseThroughputGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBMongoDBDatabaseThroughputUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBMongoDBDatabaseThroughputUpdate.json new file mode 100644 index 000000000000..7ac3c8771e56 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBMongoDBDatabaseThroughputUpdate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "databaseName": "databaseName", + "updateThroughputParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBNotebookWorkspaceCreate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBNotebookWorkspaceCreate.json new file mode 100644 index 000000000000..1defdc0ad77f --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBNotebookWorkspaceCreate.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "accountName": "ddb1", + "notebookWorkspaceName": "default", + "notebookCreateUpdateParameters": {} + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/notebookWorkspaces/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/notebookWorkspaces", + "properties": { + "notebookServerEndpoint": "endpoint", + "status": "Online" + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBNotebookWorkspaceDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBNotebookWorkspaceDelete.json new file mode 100644 index 000000000000..07e71b4f22a3 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBNotebookWorkspaceDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "notebookWorkspaceName": "default" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBNotebookWorkspaceGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBNotebookWorkspaceGet.json new file mode 100644 index 000000000000..80a028996430 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBNotebookWorkspaceGet.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "accountName": "ddb1", + "notebookWorkspaceName": "default" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/notebookWorkspaces/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/notebookWorkspaces", + "properties": { + "notebookServerEndpoint": "endpoint", + "status": "Online" + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBNotebookWorkspaceList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBNotebookWorkspaceList.json new file mode 100644 index 000000000000..3d37cf9a4208 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBNotebookWorkspaceList.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "accountName": "ddb1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/notebookWorkspaces/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/notebookWorkspaces", + "properties": { + "notebookServerEndpoint": "endpoint", + "status": "Online" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBNotebookWorkspaceListConnectionInfo.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBNotebookWorkspaceListConnectionInfo.json new file mode 100644 index 000000000000..7b98f720ba4b --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBNotebookWorkspaceListConnectionInfo.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "accountName": "ddb1", + "notebookWorkspaceName": "default" + }, + "responses": { + "200": { + "body": { + "authToken": "auth-token", + "notebookServerEndpoint": "notebook endpoint" + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBNotebookWorkspaceRegenerateAuthToken.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBNotebookWorkspaceRegenerateAuthToken.json new file mode 100644 index 000000000000..bf1eca49a488 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBNotebookWorkspaceRegenerateAuthToken.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "accountName": "ddb1", + "notebookWorkspaceName": "default" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBNotebookWorkspaceStart.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBNotebookWorkspaceStart.json new file mode 100644 index 000000000000..bf1eca49a488 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBNotebookWorkspaceStart.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "accountName": "ddb1", + "notebookWorkspaceName": "default" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBOperationsList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBOperationsList.json new file mode 100644 index 000000000000..f8705edf9a89 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBOperationsList.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "operationName", + "display": { + "Provider": "providerName", + "Resource": "resourceName", + "Operation": "operationName", + "Description": "description" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBPKeyRangeIdGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBPKeyRangeIdGetMetrics.json new file mode 100644 index 000000000000..1f18d2833bdb --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBPKeyRangeIdGetMetrics.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "databaseRid": "databaseRid", + "collectionRid": "collectionRid", + "partitionKeyRangeId": "0", + "$filter": "$filter=(name.value eq 'Max RUs Per Second') and timeGrain eq duration'PT1M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T23:58:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT1M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T23:58:55.2780000Z", + "unit": "Count", + "partitionId": "00000000-0000-0000-0000-000000000000", + "partitionKeyRangeId": "0", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:54:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:55:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:56:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:57:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:58:55.2780000Z", + "maximum": 5 + } + ], + "name": { + "value": "Max RUs Per Second", + "localizedValue": "Max RUs Per Second" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBPKeyRangeIdRegionGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBPKeyRangeIdRegionGetMetrics.json new file mode 100644 index 000000000000..d8115e38efd7 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBPKeyRangeIdRegionGetMetrics.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "databaseRid": "databaseRid", + "collectionRid": "collectionRid", + "partitionKeyRangeId": "0", + "region": "West US", + "$filter": "$filter=(name.value eq 'Max RUs Per Second') and timeGrain eq duration'PT1M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T23:58:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT1M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T23:58:55.2780000Z", + "unit": "Count", + "partitionId": "00000000-0000-0000-0000-000000000000", + "partitionKeyRangeId": "0", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:54:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:55:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:56:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:57:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:58:55.2780000Z", + "maximum": 5 + } + ], + "name": { + "value": "Max RUs Per Second", + "localizedValue": "Max RUs Per Second" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBPercentileGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBPercentileGetMetrics.json new file mode 100644 index 000000000000..ada79a0cea5f --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBPercentileGetMetrics.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "$filter": "$filter=(name.value eq 'Probabilistic Bounded Staleness') and timeGrain eq duration'PT5M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T00:13:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Milliseconds", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "P10": 1.11, + "P25": 2.5, + "P50": 4.34, + "P75": 5.2, + "P90": 6.77, + "P95": 7.1, + "P99": 8.3 + } + ], + "name": { + "value": "Probabilistic Bounded Staleness-S-West Central US-T-East US", + "localizedValue": "Probabilistic Bounded Staleness-S-West Central US-T-East US" + } + }, + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Milliseconds", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "P10": 1.11, + "P25": 2.5, + "P50": 4.34, + "P75": 5.2, + "P90": 6.77, + "P95": 7.1, + "P99": 8.3 + } + ], + "name": { + "value": "Probabilistic Bounded Staleness-S-West Central US-T-West US", + "localizedValue": "Probabilistic Bounded Staleness-S-West Central US-T-West US" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBPercentileSourceTargetGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBPercentileSourceTargetGetMetrics.json new file mode 100644 index 000000000000..04fd7adcaa9a --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBPercentileSourceTargetGetMetrics.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "sourceRegion": "West Central US", + "targetRegion": "East US", + "$filter": "$filter=(name.value eq 'Probabilistic Bounded Staleness') and timeGrain eq duration'PT5M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T00:13:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Milliseconds", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "P10": 1.11, + "P25": 2.5, + "P50": 4.34, + "P75": 5.2, + "P90": 6.77, + "P95": 7.1, + "P99": 8.3 + } + ], + "name": { + "value": "Probabilistic Bounded Staleness-S-West Central US-T-East US", + "localizedValue": "Probabilistic Bounded Staleness-S-West Central US-T-East US" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBPercentileTargetGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBPercentileTargetGetMetrics.json new file mode 100644 index 000000000000..ad59ebc20672 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBPercentileTargetGetMetrics.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "targetRegion": "East US", + "$filter": "$filter=(name.value eq 'Probabilistic Bounded Staleness') and timeGrain eq duration'PT5M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T00:13:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Milliseconds", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "P10": 1.11, + "P25": 2.5, + "P50": 4.34, + "P75": 5.2, + "P90": 6.77, + "P95": 7.1, + "P99": 8.3 + } + ], + "name": { + "value": "Probabilistic Bounded Staleness-S-West Central US-T-East US", + "localizedValue": "Probabilistic Bounded Staleness-S-West Central US-T-East US" + } + }, + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Milliseconds", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "P10": 1.11, + "P25": 2.5, + "P50": 4.34, + "P75": 5.2, + "P90": 6.77, + "P95": 7.1, + "P99": 8.3 + } + ], + "name": { + "value": "Probabilistic Bounded Staleness-S-West US-T-East US", + "localizedValue": "Probabilistic Bounded Staleness-S-West Central US-T-West US" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBPrivateEndpointConnectionDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBPrivateEndpointConnectionDelete.json new file mode 100644 index 000000000000..26ea5d1e1a91 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBPrivateEndpointConnectionDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg1", + "accountName": "ddb1", + "api-version": "2021-04-01-preview", + "privateEndpointConnectionName": "privateEndpointConnectionName" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBPrivateEndpointConnectionGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBPrivateEndpointConnectionGet.json new file mode 100644 index 000000000000..b7bdb72db8ce --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBPrivateEndpointConnectionGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg1", + "accountName": "ddb1", + "api-version": "2021-04-01-preview", + "privateEndpointConnectionName": "privateEndpointConnectionName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg1/providers/Microsoft.DocumentDb/databaseAccounts/ddb1/privateEndpointConnections/privateEndpointConnectionName", + "name": "privateEndpointConnectionName", + "type": "Microsoft.DocumentDb/databaseAccounts/privateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg1Network/providers/Microsoft.Network/privateEndpoints/privateEndpointName" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + }, + "groupId": "Sql", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBPrivateEndpointConnectionListGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBPrivateEndpointConnectionListGet.json new file mode 100644 index 000000000000..7ef20c6fcb67 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBPrivateEndpointConnectionListGet.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg1", + "accountName": "ddb1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDb/databaseAccounts/ddb1/privateEndpointConnections/privateEndpointConnectionName", + "name": "privateEndpointConnectionName", + "type": "Microsoft.DocumentDb/databaseAccounts/privateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg1Network/providers/Microsoft.Network/privateEndpoints/privateEndpointName" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + }, + "groupId": "Sql", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDb/databaseAccounts/ddb1/privateEndpointConnections/privateEndpointConnectionName2", + "name": "privateEndpointConnectionName", + "type": "Microsoft.DocumentDb/databaseAccounts/privateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg1Network/providers/Microsoft.Network/privateEndpoints/privateEndpointName2" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + }, + "groupId": "Sql", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBPrivateEndpointConnectionUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBPrivateEndpointConnectionUpdate.json new file mode 100644 index 000000000000..cb0f80a32b72 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBPrivateEndpointConnectionUpdate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg1", + "accountName": "ddb1", + "api-version": "2021-04-01-preview", + "privateEndpointConnectionName": "privateEndpointConnectionName", + "parameters": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@contoso.com" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg1/providers/Microsoft.DocumentDb/databaseAccounts/ddb1/privateEndpointConnections/privateEndpointConnectionName", + "name": "privateEndpointConnectionName", + "type": "Microsoft.DocumentDb/databaseAccounts/privateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg1Network/providers/Microsoft.Network/privateEndpoints/privateEndpointName" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + }, + "groupId": "Sql", + "provisioningState": "Succeeded" + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBPrivateLinkResourceGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBPrivateLinkResourceGet.json new file mode 100644 index 000000000000..84558cd6c497 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBPrivateLinkResourceGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg1", + "accountName": "ddb1", + "api-version": "2021-04-01-preview", + "groupName": "sql" + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.DocumentDb/databaseAccounts/ddb1/privateLinkResources/sql", + "name": "sql", + "type": "Microsoft.DocumentDB/databaseAccounts/privateLinkResources", + "properties": { + "groupId": "sql", + "requiredMembers": [ + "ddb1", + "ddb1-westus" + ], + "requiredZoneNames": [ + "privatelink.documents.azure.net" + ] + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBPrivateLinkResourceListGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBPrivateLinkResourceListGet.json new file mode 100644 index 000000000000..6a92977f9cbd --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBPrivateLinkResourceListGet.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg1", + "accountName": "ddb1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.DocumentDb/databaseAccounts/ddb1/privateLinkResources/sql", + "name": "sql", + "type": "Microsoft.DocumentDB/databaseAccounts/privateLinkResources", + "properties": { + "groupId": "sql", + "requiredMembers": [ + "ddb1", + "ddb1-westus" + ], + "requiredZoneNames": [ + "privatelink.documents.azure.net" + ] + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBRegionCollectionGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBRegionCollectionGetMetrics.json new file mode 100644 index 000000000000..2a1b23343e07 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBRegionCollectionGetMetrics.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "databaseRid": "databaseRid", + "collectionRid": "collectionRid", + "region": "North Europe", + "$filter": "$filter=(name.value eq 'Total Requests') and timeGrain eq duration'PT5M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T00:13:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Count", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-19T23:58:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:03:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:08:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + } + ], + "name": { + "value": "Total Requests", + "localizedValue": "Total Requests" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBRestorableDatabaseAccountGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBRestorableDatabaseAccountGet.json new file mode 100644 index 000000000000..2ae48c17bf79 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBRestorableDatabaseAccountGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "location": "West US", + "instanceId": "d9b26648-2f53-4541-b3d8-3044f4f9810d" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.DocumentDB/locations/West US/restorableDatabaseAccounts/d9b26648-2f53-4541-b3d8-3044f4f9810d", + "name": "d9b26648-2f53-4541-b3d8-3044f4f9810d", + "location": "West US", + "type": "Microsoft.DocumentDB/locations/restorableDatabaseAccounts", + "properties": { + "accountName": "ddb1", + "creationTime": "2020-04-11T21:56:15Z", + "deletionTime": "2021-03-12T22:05:09Z", + "apiType": "Sql", + "restorableLocations": [ + { + "locationName": "South Central US", + "regionalDatabaseAccountInstanceId": "d7a01f78-606f-45c6-9dac-0df32f433bb5", + "creationTime": "2020-10-30T21:13:10Z", + "deletionTime": "2020-10-30T21:13:35Z" + }, + { + "locationName": "West US", + "regionalDatabaseAccountInstanceId": "fdb43d84-1572-4697-b6e7-2bcda0c51b2c", + "creationTime": "2020-10-30T21:13:10Z" + } + ] + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBRestorableDatabaseAccountList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBRestorableDatabaseAccountList.json new file mode 100644 index 000000000000..77163b7a1198 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBRestorableDatabaseAccountList.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "location": "West US" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/providers/Microsoft.DocumentDB/locations/West US/restorableDatabaseAccounts/d9b26648-2f53-4541-b3d8-3044f4f9810d", + "name": "d9b26648-2f53-4541-b3d8-3044f4f9810d", + "location": "West US", + "type": "Microsoft.DocumentDB/locations/restorableDatabaseAccounts", + "properties": { + "accountName": "ddb1", + "creationTime": "2020-04-11T21:56:15Z", + "deletionTime": "2021-03-12T22:05:09Z", + "apiType": "Sql", + "restorableLocations": [ + { + "locationName": "South Central US", + "regionalDatabaseAccountInstanceId": "d7a01f78-606f-45c6-9dac-0df32f433bb5", + "creationTime": "2020-10-30T21:13:10Z", + "deletionTime": "2020-10-30T21:13:35Z" + }, + { + "locationName": "West US", + "regionalDatabaseAccountInstanceId": "fdb43d84-1572-4697-b6e7-2bcda0c51b2c", + "creationTime": "2020-10-30T21:13:10Z" + } + ] + } + }, + { + "id": "/subscriptions/subid/providers/Microsoft.DocumentDB/locations/West US/restorableDatabaseAccounts/4f9e6ace-ac7a-446c-98bc-194c502a06b4", + "name": "4f9e6ace-ac7a-446c-98bc-194c502a06b4", + "location": "West US", + "type": "Microsoft.DocumentDB/locations/restorableDatabaseAccounts", + "properties": { + "accountName": "ddb2", + "creationTime": "2020-05-01T08:05:18Z", + "apiType": "Sql", + "restorableLocations": [ + { + "locationName": "South Central US", + "regionalDatabaseAccountInstanceId": "d7a01f78-606f-45c6-9dac-0df32f433bb5", + "creationTime": "2020-10-30T21:13:10Z", + "deletionTime": "2020-10-30T21:13:35Z" + }, + { + "locationName": "West US", + "regionalDatabaseAccountInstanceId": "fdb43d84-1572-4697-b6e7-2bcda0c51b2c", + "creationTime": "2020-10-30T21:13:10Z" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBRestorableDatabaseAccountNoLocationList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBRestorableDatabaseAccountNoLocationList.json new file mode 100644 index 000000000000..6744cf97ceba --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBRestorableDatabaseAccountNoLocationList.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/providers/Microsoft.DocumentDB/locations/West US/restorableDatabaseAccounts/d9b26648-2f53-4541-b3d8-3044f4f9810d", + "name": "d9b26648-2f53-4541-b3d8-3044f4f9810d", + "location": "West US", + "type": "Microsoft.DocumentDB/locations/restorableDatabaseAccounts", + "properties": { + "accountName": "ddb1", + "creationTime": "2020-04-11T21:56:15Z", + "deletionTime": "2021-03-12T22:05:09Z", + "apiType": "Sql", + "restorableLocations": [ + { + "locationName": "South Central US", + "regionalDatabaseAccountInstanceId": "d7a01f78-606f-45c6-9dac-0df32f433bb5", + "creationTime": "2020-10-30T21:13:10Z", + "deletionTime": "2020-10-30T21:13:35Z" + }, + { + "locationName": "West US", + "regionalDatabaseAccountInstanceId": "fdb43d84-1572-4697-b6e7-2bcda0c51b2c", + "creationTime": "2020-10-30T21:13:10Z" + } + ] + } + }, + { + "id": "/subscriptions/subid/providers/Microsoft.DocumentDB/locations/West US/restorableDatabaseAccounts/4f9e6ace-ac7a-446c-98bc-194c502a06b4", + "name": "4f9e6ace-ac7a-446c-98bc-194c502a06b4", + "location": "East US", + "type": "Microsoft.DocumentDB/locations/restorableDatabaseAccounts", + "properties": { + "accountName": "ddb2", + "creationTime": "2020-05-01T08:05:18Z", + "apiType": "Sql", + "restorableLocations": [ + { + "locationName": "South Central US", + "regionalDatabaseAccountInstanceId": "d7a01f78-606f-45c6-9dac-0df32f433bb5", + "creationTime": "2020-10-30T21:13:10Z", + "deletionTime": "2020-10-30T21:13:35Z" + }, + { + "locationName": "West US", + "regionalDatabaseAccountInstanceId": "fdb43d84-1572-4697-b6e7-2bcda0c51b2c", + "creationTime": "2020-10-30T21:13:10Z" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBRestorableMongodbCollectionList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBRestorableMongodbCollectionList.json new file mode 100644 index 000000000000..724b8dc817ec --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBRestorableMongodbCollectionList.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "location": "WestUS", + "instanceId": "98a570f2-63db-4117-91f0-366327b7b353", + "restorableMongodbDatabaseRid": "PD5DALigDgw=" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/providers/Microsoft.DocumentDb/locations/westus/restorableDatabaseAccounts/98a570f2-63db-4117-91f0-366327b7b353/restorableMongodbCollections/79609a98-3394-41f8-911f-cfab0c075c86", + "type": "Microsoft.DocumentDB/locations/restorableDatabaseAccounts/restorableMongodbCollections", + "name": "79609a98-3394-41f8-911f-cfab0c075c86", + "properties": { + "resource": { + "_rid": "zAyAPQAAAA==", + "eventTimestamp": "2020-10-13T04:56:42Z", + "ownerId": "Collection1", + "ownerResourceId": "V18LoLrv-qA=", + "operationType": "Create" + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBRestorableMongodbDatabaseList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBRestorableMongodbDatabaseList.json new file mode 100644 index 000000000000..ad2578882948 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBRestorableMongodbDatabaseList.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "2296c272-5d55-40d9-bc05-4d56dc2d7588", + "location": "WestUS", + "instanceId": "d9b26648-2f53-4541-b3d8-3044f4f9810d" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/2296c272-5d55-40d9-bc05-4d56dc2d7588/providers/Microsoft.DocumentDb/locations/westus/restorableDatabaseAccounts/36f09704-6be3-4f33-aa05-17b73e504c75/restorableMongodbDatabases/59c21367-b98b-4a8e-abb7-b6f46600decc", + "type": "Microsoft.DocumentDB/locations/restorableDatabaseAccounts/restorableMongodbDatabases", + "name": "59c21367-b98b-4a8e-abb7-b6f46600decc", + "properties": { + "resource": { + "_rid": "DLB14gAAAA==", + "eventTimestamp": "2020-09-02T19:45:03Z", + "ownerId": "Database1", + "ownerResourceId": "PD5DALigDgw=", + "operationType": "Create" + } + } + }, + { + "id": "/subscriptions/2296c272-5d55-40d9-bc05-4d56dc2d7588/providers/Microsoft.DocumentDb/locations/westus/restorableDatabaseAccounts/d9b26648-2f53-4541-b3d8-3044f4f9810d/restorableMongodbDatabases/8456cb17-cdb0-4c6a-8db8-d0ff3f886257", + "type": "Microsoft.DocumentDB/locations/restorableDatabaseAccounts/restorableMongodbDatabases", + "name": "8456cb17-cdb0-4c6a-8db8-d0ff3f886257", + "properties": { + "resource": { + "_rid": "ESXNLAAAAA==", + "eventTimestamp": "2020-09-02T19:53:42Z", + "ownerId": "Database1", + "ownerResourceId": "PD5DALigDgw=", + "operationType": "Delete" + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBRestorableMongodbResourceList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBRestorableMongodbResourceList.json new file mode 100644 index 000000000000..f21980f48c76 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBRestorableMongodbResourceList.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "2296c272-5d55-40d9-bc05-4d56dc2d7588", + "location": "WestUS", + "instanceId": "d9b26648-2f53-4541-b3d8-3044f4f9810d", + "restoreLocation": "WestUS", + "restoreTimestampInUtc": "10/13/2020 4:56" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "databaseName": "Database1", + "collectionNames": [ + "Collection1" + ] + }, + { + "databaseName": "Database2", + "collectionNames": [ + "Collection1", + "Collection2" + ] + }, + { + "databaseName": "Database3", + "collectionNames": [] + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBRestorableSqlContainerList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBRestorableSqlContainerList.json new file mode 100644 index 000000000000..5b97f412dc95 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBRestorableSqlContainerList.json @@ -0,0 +1,102 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "location": "WestUS", + "instanceId": "98a570f2-63db-4117-91f0-366327b7b353", + "restorableSqlDatabaseRid": "3fu-hg==" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/providers/Microsoft.DocumentDb/locations/westus/restorableDatabaseAccounts/98a570f2-63db-4117-91f0-366327b7b353/restorableSqlContainers/79609a98-3394-41f8-911f-cfab0c075c86", + "type": "Microsoft.DocumentDB/locations/restorableDatabaseAccounts/restorableSqlContainers", + "name": "79609a98-3394-41f8-911f-cfab0c075c86", + "properties": { + "resource": { + "_rid": "zAyAPQAAAA==", + "eventTimestamp": "2020-10-13T04:56:42Z", + "ownerId": "Container1", + "ownerResourceId": "V18LoLrv-qA=", + "operationType": "Create", + "container": { + "id": "Container1", + "indexingPolicy": { + "indexingMode": "consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*" + }, + { + "path": "/\"_ts\"/?" + } + ], + "excludedPaths": [ + { + "path": "/\"_etag\"/?" + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/_ts", + "conflictResolutionProcedure": "" + }, + "_rid": "V18LoLrv-qA=", + "_self": "dbs/V18LoA==/colls/V18LoLrv-qA=/", + "_etag": "\"00003e00-0000-0700-0000-5f85338a0000\"" + } + } + } + }, + { + "id": "/subscriptions/subid/providers/Microsoft.DocumentDb/locations/westus/restorableDatabaseAccounts/98a570f2-63db-4117-91f0-366327b7b353/restorableSqlContainers/e85298a1-c631-4726-825e-a7ca092e9098", + "type": "Microsoft.DocumentDB/locations/restorableDatabaseAccounts/restorableSqlContainers", + "name": "e85298a1-c631-4726-825e-a7ca092e9098", + "properties": { + "resource": { + "_rid": "PrArcgAAAA==", + "eventTimestamp": "2020-10-13T05:03:27Z", + "ownerId": "Container1", + "ownerResourceId": "V18LoLrv-qA=", + "operationType": "Replace", + "container": { + "id": "Container1", + "indexingPolicy": { + "indexingMode": "consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*" + }, + { + "path": "/\"_ts\"/?" + } + ], + "excludedPaths": [ + { + "path": "/\"_etag\"/?" + } + ] + }, + "defaultTtl": 12345, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/_ts", + "conflictResolutionProcedure": "" + }, + "_rid": "V18LoLrv-qA=", + "_self": "dbs/V18LoA==/colls/V18LoLrv-qA=/", + "_etag": "\"00004400-0000-0700-0000-5f85351f0000\"" + } + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBRestorableSqlDatabaseList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBRestorableSqlDatabaseList.json new file mode 100644 index 000000000000..75d585996022 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBRestorableSqlDatabaseList.json @@ -0,0 +1,83 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "2296c272-5d55-40d9-bc05-4d56dc2d7588", + "location": "WestUS", + "instanceId": "d9b26648-2f53-4541-b3d8-3044f4f9810d" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/2296c272-5d55-40d9-bc05-4d56dc2d7588/providers/Microsoft.DocumentDb/locations/westus/restorableDatabaseAccounts/36f09704-6be3-4f33-aa05-17b73e504c75/restorableSqlDatabases/59c21367-b98b-4a8e-abb7-b6f46600decc", + "type": "Microsoft.DocumentDB/locations/restorableDatabaseAccounts/restorableSqlDatabases", + "name": "59c21367-b98b-4a8e-abb7-b6f46600decc", + "properties": { + "resource": { + "_rid": "DLB14gAAAA==", + "eventTimestamp": "2020-09-02T19:45:03Z", + "ownerId": "Database1", + "ownerResourceId": "3fu-hg==", + "operationType": "Create", + "database": { + "id": "Database1", + "_rid": "3fu-hg==", + "_self": "dbs/3fu-hg==/", + "_etag": "\"0000c20a-0000-0700-0000-5f4ff63f0000\"", + "_colls": "colls/", + "_users": "users/" + } + } + } + }, + { + "id": "/subscriptions/2296c272-5d55-40d9-bc05-4d56dc2d7588/providers/Microsoft.DocumentDb/locations/westus/restorableDatabaseAccounts/d9b26648-2f53-4541-b3d8-3044f4f9810d/restorableSqlDatabases/8456cb17-cdb0-4c6a-8db8-d0ff3f886257", + "type": "Microsoft.DocumentDB/locations/restorableDatabaseAccounts/restorableSqlDatabases", + "name": "8456cb17-cdb0-4c6a-8db8-d0ff3f886257", + "properties": { + "resource": { + "_rid": "ESXNLAAAAA==", + "eventTimestamp": "2020-09-02T19:53:42Z", + "ownerId": "Database1", + "ownerResourceId": "3fu-hg==", + "database": { + "id": "Database1", + "_rid": "3fu-hg==", + "_self": "dbs/3fu-hg==/", + "_etag": "\"0000c20a-0000-0700-0000-5f4ff63f0000\"", + "_colls": "colls/", + "_users": "users/", + "_ts": 1599075903 + }, + "operationType": "Delete" + } + } + }, + { + "id": "/subscriptions/2296c272-5d55-40d9-bc05-4d56dc2d7588/providers/Microsoft.DocumentDb/locations/westus/restorableDatabaseAccounts/d9b26648-2f53-4541-b3d8-3044f4f9810d/restorableSqlDatabases/2c07991b-9c7c-4e85-be68-b18c1f2ff326", + "type": "Microsoft.DocumentDB/locations/restorableDatabaseAccounts/restorableSqlDatabases", + "name": "2c07991b-9c7c-4e85-be68-b18c1f2ff326", + "properties": { + "resource": { + "_rid": "aXFqUQAAAA==", + "eventTimestamp": "2020-09-02T19:53:15Z", + "ownerId": "Database2", + "ownerResourceId": "0SziSg==", + "database": { + "id": "Database2", + "_rid": "0SziSg==", + "_self": "dbs/0SziSg==/", + "_etag": "\"0000ca0a-0000-0700-0000-5f4ff82b0000\"", + "_colls": "colls/", + "_users": "users/" + }, + "operationType": "Create" + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBRestorableSqlResourceList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBRestorableSqlResourceList.json new file mode 100644 index 000000000000..690a386f754b --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBRestorableSqlResourceList.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "2296c272-5d55-40d9-bc05-4d56dc2d7588", + "location": "WestUS", + "instanceId": "d9b26648-2f53-4541-b3d8-3044f4f9810d", + "restoreLocation": "WestUS", + "restoreTimestampInUtc": "10/13/2020 4:56" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "databaseName": "Database1", + "collectionNames": [ + "Container1" + ] + }, + { + "databaseName": "Database2", + "collectionNames": [ + "Container1", + "Container2" + ] + }, + { + "databaseName": "Database3", + "collectionNames": [] + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBRestoreDatabaseAccountCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBRestoreDatabaseAccountCreateUpdate.json new file mode 100644 index 000000000000..84b9a6bed055 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBRestoreDatabaseAccountCreateUpdate.json @@ -0,0 +1,124 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "createUpdateParameters": { + "location": "westus", + "tags": {}, + "kind": "GlobalDocumentDB", + "properties": { + "databaseAccountOfferType": "Standard", + "locations": [ + { + "failoverPriority": 0, + "locationName": "southcentralus", + "isZoneRedundant": false + } + ], + "createMode": "Restore", + "restoreParameters": { + "restoreMode": "PointInTime", + "restoreSource": "/subscriptions/subid/providers/Microsoft.DocumentDB/locations/westus/restorableDatabaseAccounts/1a97b4bb-f6a0-430e-ade1-638d781830cc", + "restoreTimestampInUtc": "2021-03-11T22:05:09Z", + "databasesToRestore": [ + { + "databaseName": "db1", + "collectionNames": [ + "collection1", + "collection2" + ] + }, + { + "databaseName": "db2", + "collectionNames": [ + "collection3", + "collection4" + ] + } + ] + }, + "backupPolicy": { + "type": "Continuous" + }, + "consistencyPolicy": { + "defaultConsistencyLevel": "BoundedStaleness", + "maxIntervalInSeconds": 10, + "maxStalenessPrefix": 200 + }, + "keyVaultKeyUri": "https://myKeyVault.vault.azure.net", + "enableFreeTier": false, + "apiProperties": { + "serverVersion": "3.2" + }, + "enableAnalyticalStorage": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1", + "name": "ddb1", + "location": "West US", + "type": "Microsoft.DocumentDB/databaseAccounts", + "kind": "GlobalDocumentDB", + "tags": {}, + "properties": { + "provisioningState": "Initializing", + "ipRules": [], + "databaseAccountOfferType": "Standard", + "disableKeyBasedMetadataWriteAccess": false, + "instanceId": "d9b26648-2f53-4541-b3d8-3044f4f9810d", + "createMode": "Restore", + "consistencyPolicy": { + "defaultConsistencyLevel": "Session", + "maxIntervalInSeconds": 5, + "maxStalenessPrefix": 100 + }, + "writeLocations": [ + { + "id": "ddb1-southcentralus", + "locationName": "South Central US", + "provisioningState": "Initializing", + "failoverPriority": 0, + "isZoneRedundant": false + } + ], + "readLocations": [ + { + "id": "ddb1-southcentralus", + "locationName": "South Central US", + "provisioningState": "Initializing", + "failoverPriority": 0, + "isZoneRedundant": false + } + ], + "locations": [ + { + "id": "ddb1-southcentralus", + "locationName": "South Central US", + "provisioningState": "Initializing", + "failoverPriority": 0, + "isZoneRedundant": false + } + ], + "failoverPolicies": [ + { + "id": "ddb1-southcentralus", + "locationName": "South Central US", + "failoverPriority": 0 + } + ], + "enableFreeTier": false, + "apiProperties": {}, + "enableAnalyticalStorage": false + }, + "systemData": { + "createdAt": "2021-03-12T22:05:09Z" + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBServicesList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBServicesList.json new file mode 100644 index 000000000000..cbaaebe49826 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBServicesList.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/services/sqlDedicatedGateway", + "name": "sqlDedicatedGateway", + "type": "Microsoft.DocumentDB/databaseAccounts/services", + "properties": { + "status": "Running", + "creationTime": "2021-01-25T12:56:05.4622517Z", + "instanceSize": "Cosmos.D4s", + "instanceCount": 1, + "serviceType": "SqlDedicatedGateway", + "SqlDedicatedGatewayEndpoint": "https://sqlDedicatedGateway.sqlx.cosmos.windows-int.net/", + "locations": [ + { + "name": "sqlDedicatedGateway-westus2", + "location": "West US 2", + "status": "Running", + "SqlDedicatedGatewayEndpoint": "https://sqlDedicatedGateway-westus.sqlx.cosmos.windows-int.net/" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlContainerCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlContainerCreateUpdate.json new file mode 100644 index 000000000000..4bc044b699bd --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlContainerCreateUpdate.json @@ -0,0 +1,124 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName", + "createUpdateSqlContainerParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "containerName", + "indexingPolicy": { + "indexingMode": "consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/AccountNumber" + ], + "kind": "Hash" + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + } + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName", + "name": "containerName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "containerName", + "indexingPolicy": { + "indexingMode": "consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/AccountNumber" + ], + "kind": "Hash" + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + }, + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlContainerDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlContainerDelete.json new file mode 100644 index 000000000000..2a920aa76912 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlContainerDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlContainerGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlContainerGet.json new file mode 100644 index 000000000000..54f8e7410cd6 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlContainerGet.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName", + "containerName": "containerName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName", + "name": "containerName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "containerName", + "indexingPolicy": { + "indexingMode": "consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/AccountNumber" + ], + "kind": "Hash" + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + }, + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + }, + "options": { + "throughput": 400 + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlContainerList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlContainerList.json new file mode 100644 index 000000000000..3ed594b462fc --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlContainerList.json @@ -0,0 +1,192 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName", + "name": "containerName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "testctn", + "indexingPolicy": { + "indexingMode": "consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/AccountNumber" + ], + "kind": "Hash" + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + }, + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName1", + "name": "containerName1", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "testctn1", + "indexingPolicy": { + "indexingMode": "consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/AccountNumber", + "/AccountLocation" + ], + "kind": "MultiHash", + "version": 2 + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + }, + "_rid": "PD5DALigDiw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName2", + "name": "containerName2", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "testctn2", + "indexingPolicy": { + "indexingMode": "consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/_partitionKey" + ], + "kind": "Hash", + "version": 2, + "systemKey": true + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + }, + "_rid": "PD5DALigDhw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlContainerMigrateToAutoscale.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlContainerMigrateToAutoscale.json new file mode 100644 index 000000000000..639a229c48a0 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlContainerMigrateToAutoscale.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "autoscaleSettings": { + "maxThroughput": 4000 + }, + "minimumThroughput": "4000", + "offerReplacePending": "false", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlContainerMigrateToManualThroughput.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlContainerMigrateToManualThroughput.json new file mode 100644 index 000000000000..d2e23fb50119 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlContainerMigrateToManualThroughput.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlContainerThroughputGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlContainerThroughputGet.json new file mode 100644 index 000000000000..ca9c60b4a182 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlContainerThroughputGet.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlContainerThroughputUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlContainerThroughputUpdate.json new file mode 100644 index 000000000000..0c7cb8883ff1 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlContainerThroughputUpdate.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName", + "updateThroughputParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlDatabaseCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlDatabaseCreateUpdate.json new file mode 100644 index 000000000000..83b72d7114cc --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlDatabaseCreateUpdate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "databaseName": "databaseName", + "createUpdateSqlDatabaseParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName" + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName", + "name": "databaseName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName", + "_rid": "CqNBAA==", + "_ts": 1449602962, + "_etag": "\"00000a00-0000-0000-0000-56672f920000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlDatabaseDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlDatabaseDelete.json new file mode 100644 index 000000000000..00686dc8b277 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlDatabaseDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlDatabaseGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlDatabaseGet.json new file mode 100644 index 000000000000..216e1e0f7c24 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlDatabaseGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName", + "name": "databaseName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName", + "_rid": "CqNBAA==", + "_ts": 1449602962, + "_etag": "\"00000a00-0000-0000-0000-56672f920000\"", + "_colls": "colls/", + "_users": "users/" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlDatabaseList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlDatabaseList.json new file mode 100644 index 000000000000..c9590e9a5113 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlDatabaseList.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName", + "name": "databaseName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName", + "_rid": "CqNBAA==", + "_ts": 1449602962, + "_etag": "\"00000a00-0000-0000-0000-56672f920000\"", + "_colls": "colls/", + "_users": "users/" + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlDatabaseMigrateToAutoscale.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlDatabaseMigrateToAutoscale.json new file mode 100644 index 000000000000..53d0427d9d53 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlDatabaseMigrateToAutoscale.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "autoscaleSettings": { + "maxThroughput": 4000 + }, + "minimumThroughput": "4000", + "offerReplacePending": "false", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlDatabaseMigrateToManualThroughput.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlDatabaseMigrateToManualThroughput.json new file mode 100644 index 000000000000..5ca65fc3afc6 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlDatabaseMigrateToManualThroughput.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlDatabaseThroughputGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlDatabaseThroughputGet.json new file mode 100644 index 000000000000..ca77c04ab7d1 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlDatabaseThroughputGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlDatabaseThroughputUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlDatabaseThroughputUpdate.json new file mode 100644 index 000000000000..73846624de2d --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlDatabaseThroughputUpdate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "databaseName": "databaseName", + "updateThroughputParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlDedicatedGatewayServiceCreate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlDedicatedGatewayServiceCreate.json new file mode 100644 index 000000000000..f9d6201fc168 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlDedicatedGatewayServiceCreate.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "serviceName": "SqlDedicatedGateway", + "createUpdateParameters": { + "properties": { + "instanceSize": "Cosmos.D4s", + "instanceCount": 1, + "serviceType": "SqlDedicatedGateway" + } + } + }, + "responses": { + "202": {}, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/services/SqlDedicatedGateway", + "name": "SqlDedicatedGateway", + "type": "Microsoft.DocumentDB/databaseAccounts/services", + "properties": { + "status": "Running", + "creationTime": "2021-01-25T12:56:05.4622517Z", + "instanceSize": "Cosmos.D4s", + "instanceCount": 1, + "serviceType": "SqlDedicatedGateway", + "SqlDedicatedGatewayEndpoint": "https://sqlDedicatedGateway.sqlx.cosmos.windows-int.net/", + "locations": [ + { + "name": "SqlDedicatedGateway-westus2", + "location": "West US 2", + "status": "Running", + "SqlDedicatedGatewayEndpoint": "https://sqlDedicatedGateway-westus.sqlx.cosmos.windows-int.net/" + } + ] + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlDedicatedGatewayServiceDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlDedicatedGatewayServiceDelete.json new file mode 100644 index 000000000000..65dc7d6fd87e --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlDedicatedGatewayServiceDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "serviceName": "SqlDedicatedGateway" + }, + "responses": { + "202": {}, + "204": {}, + "200": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlDedicatedGatewayServiceGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlDedicatedGatewayServiceGet.json new file mode 100644 index 000000000000..2e9d81e754e9 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlDedicatedGatewayServiceGet.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "serviceName": "SqlDedicatedGateway" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/services/SqlDedicatedGateway", + "name": "SqlDedicatedGateway", + "type": "Microsoft.DocumentDB/databaseAccounts/services", + "properties": { + "status": "Running", + "creationTime": "2021-01-25T12:56:05.4622517Z", + "instanceSize": "Cosmos.D4s", + "instanceCount": 1, + "serviceType": "SqlDedicatedGateway", + "SqlDedicatedGatewayEndpoint": "https://sqlDedicatedGateway.sqlx.cosmos.windows-int.net/", + "locations": [ + { + "name": "SqlDedicatedGateway-westus2", + "location": "West US 2", + "status": "Running", + "SqlDedicatedGatewayEndpoint": "https://sqlDedicatedGateway-westus.sqlx.cosmos.windows-int.net/" + } + ] + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlRoleAssignmentCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlRoleAssignmentCreateUpdate.json new file mode 100644 index 000000000000..ac7b9a3bbcdd --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlRoleAssignmentCreateUpdate.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "roleAssignmentId": "myRoleAssignmentId", + "subscriptionId": "mySubscriptionId", + "resourceGroupName": "myResourceGroupName", + "accountName": "myAccountName", + "api-version": "2021-04-01-preview", + "createUpdateSqlRoleAssignmentParameters": { + "properties": { + "roleDefinitionId": "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/sqlRoleDefinitions/myRoleDefinitionId", + "scope": "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/dbs/purchases/colls/redmond-purchases", + "principalId": "myPrincipalId" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/sqlRoleAssignments/myRoleAssignmentId", + "name": "myRoleAssignmentId", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlRoleAssignments", + "properties": { + "roleDefinitionId": "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/sqlRoleDefinitions/myRoleDefinitionId", + "scope": "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/dbs/purchases/colls/redmond-purchases", + "principalId": "myPrincipalId" + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlRoleAssignmentDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlRoleAssignmentDelete.json new file mode 100644 index 000000000000..07c65bf4c7f1 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlRoleAssignmentDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "roleAssignmentId": "myRoleAssignmentId", + "subscriptionId": "mySubscriptionId", + "resourceGroupName": "myResourceGroupName", + "accountName": "myAccountName", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlRoleAssignmentGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlRoleAssignmentGet.json new file mode 100644 index 000000000000..ae58dae1f089 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlRoleAssignmentGet.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "roleAssignmentId": "myRoleAssignmentId", + "subscriptionId": "mySubscriptionId", + "resourceGroupName": "myResourceGroupName", + "accountName": "myAccountName", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/sqlRoleAssignments/myRoleAssignmentId", + "name": "myRoleAssignmentId", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlRoleAssignments", + "properties": { + "roleDefinitionId": "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/sqlRoleDefinitions/myRoleDefinitionId", + "scope": "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/dbs/purchases/colls/redmond-purchases", + "principalId": "myPrincipalId" + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlRoleAssignmentList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlRoleAssignmentList.json new file mode 100644 index 000000000000..58106aab76f5 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlRoleAssignmentList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "mySubscriptionId", + "resourceGroupName": "myResourceGroupName", + "accountName": "myAccountName", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/sqlRoleAssignments/myRoleAssignmentId", + "name": "myRoleAssignmentId", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlRoleAssignments", + "properties": { + "roleDefinitionId": "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/sqlRoleDefinitions/myRoleDefinitionId", + "scope": "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/dbs/purchases/colls/redmond-purchases", + "principalId": "myPrincipalId" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlRoleDefinitionCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlRoleDefinitionCreateUpdate.json new file mode 100644 index 000000000000..5f0d3bd6ec65 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlRoleDefinitionCreateUpdate.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "roleDefinitionId": "myRoleDefinitionId", + "subscriptionId": "mySubscriptionId", + "resourceGroupName": "myResourceGroupName", + "accountName": "myAccountName", + "api-version": "2021-04-01-preview", + "createUpdateSqlRoleDefinitionParameters": { + "properties": { + "roleName": "myRoleName", + "type": "CustomRole", + "assignableScopes": [ + "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/dbs/sales", + "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/dbs/purchases" + ], + "permissions": [ + { + "dataActions": [ + "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/items/create", + "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/items/read" + ], + "notDataActions": [] + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/sqlRoleDefinitions/myRoleDefinitionId", + "name": "myRoleDefinitionId", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlRoleDefinitions", + "properties": { + "roleName": "myRoleName", + "type": "CustomRole", + "assignableScopes": [ + "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/dbs/sales", + "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/dbs/purchases" + ], + "permissions": [ + { + "dataActions": [ + "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/items/create", + "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/items/read" + ] + } + ] + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlRoleDefinitionDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlRoleDefinitionDelete.json new file mode 100644 index 000000000000..82245870e202 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlRoleDefinitionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "roleDefinitionId": "myRoleDefinitionId", + "subscriptionId": "mySubscriptionId", + "resourceGroupName": "myResourceGroupName", + "accountName": "myAccountName", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlRoleDefinitionGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlRoleDefinitionGet.json new file mode 100644 index 000000000000..4e8b6a77d3a6 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlRoleDefinitionGet.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "roleDefinitionId": "myRoleDefinitionId", + "subscriptionId": "mySubscriptionId", + "resourceGroupName": "myResourceGroupName", + "accountName": "myAccountName", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/sqlRoleDefinitions/myRoleDefinitionId", + "name": "myRoleDefinitionId", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlRoleDefinitions", + "properties": { + "roleName": "myRoleName", + "type": "CustomRole", + "assignableScopes": [ + "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/dbs/sales", + "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/dbs/purchases" + ], + "permissions": [ + { + "dataActions": [ + "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/items/create", + "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/items/read" + ], + "notDataActions": [] + } + ] + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlRoleDefinitionList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlRoleDefinitionList.json new file mode 100644 index 000000000000..87c2e5a9a2a3 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlRoleDefinitionList.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "mySubscriptionId", + "resourceGroupName": "myResourceGroupName", + "accountName": "myAccountName", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/sqlRoleDefinitions/myRoleDefinitionId", + "name": "myRoleDefinitionId", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlRoleDefinitions", + "properties": { + "roleName": "myRoleName", + "type": "CustomRole", + "assignableScopes": [ + "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/dbs/sales", + "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/dbs/purchases" + ], + "permissions": [ + { + "dataActions": [ + "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/items/create", + "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/items/read" + ], + "notDataActions": [] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlStoredProcedureCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlStoredProcedureCreateUpdate.json new file mode 100644 index 000000000000..84ddd0e57fbe --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlStoredProcedureCreateUpdate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName", + "storedProcedureName": "storedProcedureName", + "createUpdateSqlStoredProcedureParameters": { + "properties": { + "resource": { + "id": "storedProcedureName", + "body": "body" + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/sqlStoredProcedures/storedProcedureName", + "name": "storedProcedureName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/sqlStoredProcedures", + "properties": { + "resource": { + "id": "storedProcedureName", + "body": "body", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlStoredProcedureDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlStoredProcedureDelete.json new file mode 100644 index 000000000000..01df3fc83a74 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlStoredProcedureDelete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName", + "storedProcedureName": "storedProcedureName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlStoredProcedureGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlStoredProcedureGet.json new file mode 100644 index 000000000000..6bccfcefd9a6 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlStoredProcedureGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName", + "containerName": "containerName", + "storedProcedureName": "storedProcedureName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/sqlStoredProcedures/storedProcedureName", + "name": "storedProcedureName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/sqlStoredProcedures", + "properties": { + "resource": { + "id": "storedProcedureName", + "body": "body", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlStoredProcedureList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlStoredProcedureList.json new file mode 100644 index 000000000000..3244e89cc879 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlStoredProcedureList.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName", + "containerName": "containerName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/sqlStoredProcedures/storedProcedureName", + "name": "testctn", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/sqlStoredProcedures", + "properties": { + "resource": { + "id": "testctn", + "body": "body", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlTriggerCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlTriggerCreateUpdate.json new file mode 100644 index 000000000000..a49bc50450fc --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlTriggerCreateUpdate.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName", + "triggerName": "triggerName", + "createUpdateSqlTriggerParameters": { + "properties": { + "resource": { + "id": "triggerName", + "body": "body", + "triggerType": "triggerType", + "triggerOperation": "triggerOperation" + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/sqlTriggers/triggerName", + "name": "triggerName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/sqlTriggers", + "properties": { + "resource": { + "id": "triggerName", + "body": "body", + "triggerType": "triggerType", + "triggerOperation": "triggerOperation", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlTriggerDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlTriggerDelete.json new file mode 100644 index 000000000000..88fa07640a1d --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlTriggerDelete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName", + "triggerName": "triggerName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlTriggerGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlTriggerGet.json new file mode 100644 index 000000000000..0e4c48cff889 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlTriggerGet.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName", + "containerName": "containerName", + "triggerName": "triggerName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/sqlTriggers/triggerName", + "name": "triggerName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/sqlTriggers", + "properties": { + "resource": { + "id": "triggerName", + "body": "body", + "triggerType": "triggerType", + "triggerOperation": "triggerOperation", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlTriggerList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlTriggerList.json new file mode 100644 index 000000000000..c060d478d14e --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlTriggerList.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName", + "containerName": "containerName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/sqlTriggers/triggerName", + "name": "testctn", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/sqlTriggers", + "properties": { + "resource": { + "id": "testctn", + "body": "body", + "triggerType": "triggerType", + "triggerOperation": "triggerOperation", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlUserDefinedFunctionCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlUserDefinedFunctionCreateUpdate.json new file mode 100644 index 000000000000..f0e456e107d2 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlUserDefinedFunctionCreateUpdate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName", + "userDefinedFunctionName": "userDefinedFunctionName", + "createUpdateSqlUserDefinedFunctionParameters": { + "properties": { + "resource": { + "id": "userDefinedFunctionName", + "body": "body" + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/sqlUserDefinedFunctions/userDefinedFunctionName", + "name": "userDefinedFunctionName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/sqlUserDefinedFunctions", + "properties": { + "resource": { + "id": "userDefinedFunctionName", + "body": "body", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlUserDefinedFunctionDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlUserDefinedFunctionDelete.json new file mode 100644 index 000000000000..aa99394a4934 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlUserDefinedFunctionDelete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName", + "userDefinedFunctionName": "userDefinedFunctionName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlUserDefinedFunctionGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlUserDefinedFunctionGet.json new file mode 100644 index 000000000000..8552eeb95225 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlUserDefinedFunctionGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName", + "containerName": "containerName", + "userDefinedFunctionName": "userDefinedFunctionName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/sqlUserDefinedFunctions/userDefinedFunctionName", + "name": "userDefinedFunctionName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/sqlUserDefinedFunctions", + "properties": { + "resource": { + "id": "userDefinedFunctionName", + "body": "body", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlUserDefinedFunctionList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlUserDefinedFunctionList.json new file mode 100644 index 000000000000..8fcc279752ad --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBSqlUserDefinedFunctionList.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName", + "containerName": "containerName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/sqlUserDefinedFunctions/userDefinedFunctionName", + "name": "testctn", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/sqlUserDefinedFunctions", + "properties": { + "resource": { + "id": "testctn", + "body": "body", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBTableCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBTableCreateUpdate.json new file mode 100644 index 000000000000..ea685bbaa224 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBTableCreateUpdate.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "tableName": "tableName", + "createUpdateTableParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "tableName" + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/tables/tableName", + "name": "tableName", + "type": "Microsoft.DocumentDB/databaseAccounts/tables", + "location": "West US", + "properties": { + "resource": { + "id": "tableName" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBTableDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBTableDelete.json new file mode 100644 index 000000000000..b4a7cd526df1 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBTableDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "tableName": "tableName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBTableGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBTableGet.json new file mode 100644 index 000000000000..1368139c4733 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBTableGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "tableName": "tableName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/tables/tableName", + "name": "tableName", + "type": "Microsoft.DocumentDB/databaseAccounts/tables", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "tableName", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBTableList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBTableList.json new file mode 100644 index 000000000000..b3573f0e48e3 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBTableList.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/tables/tableName", + "name": "tableName", + "type": "Microsoft.DocumentDB/databaseAccounts/tables", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "tableName" + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBTableMigrateToAutoscale.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBTableMigrateToAutoscale.json new file mode 100644 index 000000000000..e45c4e30457a --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBTableMigrateToAutoscale.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-01-15", + "subscriptionId": "subid", + "tableName": "tableName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "autoscaleSettings": { + "maxThroughput": 4000 + }, + "minimumThroughput": "4000", + "offerReplacePending": "false", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBTableMigrateToManualThroughput.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBTableMigrateToManualThroughput.json new file mode 100644 index 000000000000..82335137684b --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBTableMigrateToManualThroughput.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-01-15", + "subscriptionId": "subid", + "tableName": "tableName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBTableThroughputGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBTableThroughputGet.json new file mode 100644 index 000000000000..47b4a47535bf --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBTableThroughputGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "tableName": "tableName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/tables/tableName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/tables/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBTableThroughputUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBTableThroughputUpdate.json new file mode 100644 index 000000000000..78f0b9759187 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/examples/CosmosDBTableThroughputUpdate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-01-preview", + "subscriptionId": "subid", + "tableName": "tableName", + "updateThroughputParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/tables/tableName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/tables/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/managedCassandra.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/managedCassandra.json new file mode 100644 index 000000000000..6754b9d6e5cc --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/managedCassandra.json @@ -0,0 +1,1109 @@ +{ + "swagger": "2.0", + "info": { + "title": "Cosmos DB - Managed Cassandra", + "description": "Azure Cosmos DB Database Service Managed Cassandra REST API", + "version": "2021-04-01-preview" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "Impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.DocumentDB/cassandraClusters": { + "get": { + "operationId": "CassandraClusters_ListBySubscription", + "description": "List all managed Cassandra clusters in this subscription.", + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "CosmosDBManagedCassandraClusterListBySubscription": { + "$ref": "./examples/CosmosDBManagedCassandraClusterListBySubscription.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of managed Cassandra clusters.", + "schema": { + "$ref": "#/definitions/ListClusters" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "cosmos-db.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/cassandraClusters": { + "get": { + "operationId": "CassandraClusters_ListByResourceGroup", + "description": "List all managed Cassandra clusters in this resource group.", + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "CosmosDBManagedCassandraClusterListByResourceGroup": { + "$ref": "./examples/CosmosDBManagedCassandraClusterListByResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of managed Cassandra clusters.", + "schema": { + "$ref": "#/definitions/ListClusters" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "cosmos-db.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/cassandraClusters/{clusterName}": { + "get": { + "operationId": "CassandraClusters_Get", + "description": "Get the properties of a managed Cassandra cluster.", + "x-ms-examples": { + "CosmosDBManagedCassandraClusterGet": { + "$ref": "./examples/CosmosDBManagedCassandraClusterGet.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The properties of the managed Cassandra cluster were retrieved successfully.", + "schema": { + "$ref": "#/definitions/ClusterResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "cosmos-db.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "operationId": "CassandraClusters_Delete", + "description": "Deletes a managed Cassandra cluster.", + "x-ms-long-running-operation": true, + "x-ms-examples": { + "CosmosDBManagedCassandraClusterDelete": { + "$ref": "./examples/CosmosDBManagedCassandraClusterDelete.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted. The managed Cassandra cluster will be deleted asynchronously." + }, + "204": { + "description": "No such cluster to delete." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "cosmos-db.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "CassandraClusters_CreateUpdate", + "description": "Create or update a managed Cassandra cluster. When updating, you must specify all writable properties. To update only some properties, use PATCH.", + "x-ms-examples": { + "CosmosDBManagedCassandraClusterCreate": { + "$ref": "./examples/CosmosDBManagedCassandraClusterCreate.json" + } + }, + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ClusterResource" + }, + "description": "The properties specifying the desired state of the managed Cassandra cluster." + } + ], + "responses": { + "200": { + "description": "The managed Cassandra cluster is being updated. Poll for provisioningState=Succeeded to find when creation completes.", + "schema": { + "$ref": "#/definitions/ClusterResource" + } + }, + "201": { + "description": "The managed Cassandra cluster is being created. Poll for provisioningState=Succeeded to find when creation completes.", + "schema": { + "$ref": "#/definitions/ClusterResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "cosmos-db.json#/definitions/CloudError" + } + } + } + }, + "patch": { + "operationId": "CassandraClusters_Update", + "description": "Updates some of the properties of a managed Cassandra cluster.", + "x-ms-long-running-operation": true, + "x-ms-examples": { + "CosmosDBManagedCassandraClusterPatch": { + "$ref": "./examples/CosmosDBManagedCassandraClusterPatch.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ClusterResource" + }, + "description": "Parameters to provide for specifying the managed Cassandra cluster." + } + ], + "responses": { + "202": { + "description": "The managed Cassandra cluster is being updated. Poll the provided operation for completion.", + "schema": { + "$ref": "#/definitions/ClusterResource" + } + }, + "200": { + "description": "Completed synchronously. This will only happen if the fields changed by patch require no changes to the actual Cassandra data center.", + "schema": { + "$ref": "#/definitions/ClusterResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "cosmos-db.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/cassandraClusters/{clusterName}/repair": { + "post": { + "operationId": "CassandraClusters_RequestRepair", + "description": "Request that repair begin on this cluster as soon as possible.", + "x-ms-examples": { + "CosmosDBManagedCassandraRepair": { + "$ref": "./examples/CosmosDBManagedCassandraRepair.json" + } + }, + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RepairPostBody" + }, + "description": "Specification of what keyspaces and tables to run repair on." + } + ], + "responses": { + "200": { + "description": "Success. The repair operation will begin as soon as possible." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "cosmos-db.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/cassandraClusters/{clusterName}/fetchNodeStatus": { + "post": { + "operationId": "CassandraClusters_FetchNodeStatus", + "description": "Request the status of all nodes in the cluster (as returned by 'nodetool status').", + "x-ms-long-running-operation": true, + "x-ms-examples": { + "CosmosDBManagedCassandraClusterFetchNodeStatus": { + "$ref": "./examples/CosmosDBManagedCassandraClusterFetchNodeStatus.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted. The node status will be returned asynchronously." + }, + "200": { + "description": "Successfully fetched the status of all nodes in the cluster.", + "schema": { + "$ref": "#/definitions/ClusterNodeStatus" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "cosmos-db.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/cassandraClusters/{clusterName}/backups": { + "get": { + "operationId": "CassandraClusters_ListBackups", + "description": "List the backups of this cluster that are available to restore.", + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "CosmosDBManagedCassandraBackupsList": { + "$ref": "./examples/CosmosDBManagedCassandraBackupsList.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of restorable backups for this Cassandra cluster.", + "schema": { + "$ref": "#/definitions/ListBackups" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "cosmos-db.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/cassandraClusters/{clusterName}/backups/{backupId}": { + "get": { + "operationId": "CassandraClusters_GetBackup", + "description": "Get the properties of an individual backup of this cluster that is available to restore.", + "x-ms-examples": { + "CosmosDBManagedCassandraBackup": { + "$ref": "./examples/CosmosDBManagedCassandraBackup.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/backupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the properties of the backup.", + "schema": { + "$ref": "#/definitions/BackupResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "cosmos-db.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/cassandraClusters/{clusterName}/dataCenters": { + "get": { + "operationId": "CassandraDataCenters_List", + "description": "List all data centers in a particular managed Cassandra cluster.", + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "CosmosDBManagedCassandraDataCenterList": { + "$ref": "./examples/CosmosDBManagedCassandraDataCenterList.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of managed Cassandra data centers.", + "schema": { + "$ref": "#/definitions/ListDataCenters" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "cosmos-db.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/cassandraClusters/{clusterName}/dataCenters/{dataCenterName}": { + "get": { + "operationId": "CassandraDataCenters_Get", + "description": "Get the properties of a managed Cassandra data center.", + "x-ms-examples": { + "CosmosDBManagedCassandraDataCenterGet": { + "$ref": "./examples/CosmosDBManagedCassandraDataCenterGet.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/dataCenterNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The properties of the managed Cassandra data center were retrieved successfully.", + "schema": { + "$ref": "#/definitions/DataCenterResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "cosmos-db.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "operationId": "CassandraDataCenters_Delete", + "description": "Delete a managed Cassandra data center.", + "x-ms-examples": { + "CosmosDBManagedCassandraDataCenterDelete": { + "$ref": "./examples/CosmosDBManagedCassandraDataCenterDelete.json" + } + }, + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/dataCenterNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted. Deletion will complete asynchronously." + }, + "204": { + "description": "Cassandra cluster with the specified name does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "cosmos-db.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "CassandraDataCenters_CreateUpdate", + "description": "Create or update a managed Cassandra data center. When updating, overwrite all properties. To update only some properties, use PATCH.", + "x-ms-examples": { + "CosmosDBManagedCassandraDataCenterCreate": { + "$ref": "./examples/CosmosDBManagedCassandraDataCenterCreate.json" + } + }, + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/dataCenterNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DataCenterResource" + }, + "description": "Parameters specifying the managed Cassandra data center." + } + ], + "responses": { + "201": { + "description": "Accepted. The data center will be created asynchronously.", + "schema": { + "$ref": "#/definitions/DataCenterResource" + } + }, + "200": { + "description": "Accepted. The data center will be updated asynchronously.", + "schema": { + "$ref": "#/definitions/DataCenterResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "cosmos-db.json#/definitions/CloudError" + } + } + } + }, + "patch": { + "operationId": "CassandraDataCenters_Update", + "description": "Update some of the properties of a managed Cassandra data center.", + "x-ms-examples": { + "CosmosDBManagedCassandraDataCenterUpdate": { + "$ref": "./examples/CosmosDBManagedCassandraDataCenterPatch.json" + } + }, + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/dataCenterNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DataCenterResource" + }, + "description": "Parameters to provide for specifying the managed Cassandra data center." + } + ], + "responses": { + "202": { + "description": "Accepted. Update will proceed asynchronously.", + "schema": { + "$ref": "#/definitions/DataCenterResource" + } + }, + "200": { + "description": "Completed synchronously. This will only happen if the fields changed by patch require no changes to the actual Cassandra cluster, such as editing the tags.", + "schema": { + "$ref": "#/definitions/DataCenterResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "cosmos-db.json#/definitions/CloudError" + } + } + } + } + } + }, + "parameters": { + "clusterNameParameter": { + "name": "clusterName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Managed Cassandra cluster name.", + "minLength": 1, + "maxLength": 100, + "pattern": "^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$" + }, + "dataCenterNameParameter": { + "name": "dataCenterName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Data center name in a managed Cassandra cluster.", + "minLength": 1, + "maxLength": 100, + "pattern": "^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$" + }, + "backupNameParameter": { + "name": "backupId", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Id of a restorable backup of a Cassandra cluster.", + "minLength": 1, + "maxLength": 15, + "pattern": "^[0-9]+$" + } + }, + "definitions": { + "ListClusters": { + "description": "List of managed Cassandra clusters.", + "readOnly": true, + "type": "object", + "properties": { + "value": { + "description": "Container for the array of clusters.", + "type": "array", + "items": { + "$ref": "#/definitions/ClusterResource" + } + } + } + }, + "ManagedCassandraProvisioningState": { + "description": "The status of the resource at the time the operation was called.", + "type": "string", + "enum": [ + "Creating", + "Updating", + "Deleting", + "Succeeded", + "Failed", + "Canceled" + ], + "x-ms-enum": { + "name": "ManagedCassandraProvisioningState", + "modelAsString": true + } + }, + "ClusterResource": { + "description": "Representation of a managed Cassandra cluster.", + "type": "object", + "allOf": [ + { + "$ref": "cosmos-db.json#/definitions/ARMResourceProperties" + } + ], + "properties": { + "properties": { + "type": "object", + "description": "Properties of a managed Cassandra cluster.", + "properties": { + "provisioningState": { + "$ref": "#/definitions/ManagedCassandraProvisioningState" + }, + "restoreFromBackupId": { + "type": "string", + "x-ms-mutability": [ + "create" + ], + "description": "To create an empty cluster, omit this field or set it to null. To restore a backup into a new cluster, set this field to the resource id of the backup." + }, + "delegatedManagementSubnetId": { + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ], + "description": "Resource id of a subnet that this cluster's management service should have its network interface attached to. The subnet must be routable to all subnets that will be delegated to data centers. The resource id must be of the form '/subscriptions//resourceGroups//providers/Microsoft.Network/virtualNetworks//subnets/'" + }, + "cassandraVersion": { + "type": "string", + "description": "Which version of Cassandra should this cluster converge to running (e.g., 3.11). When updated, the cluster may take some time to migrate to the new version." + }, + "clusterNameOverride": { + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ], + "description": "If you need to set the clusterName property in cassandra.yaml to something besides the resource name of the cluster, set the value to use on this property." + }, + "authenticationMethod": { + "type": "string", + "description": "Which authentication method Cassandra should use to authenticate clients. 'None' turns off authentication, so should not be used except in emergencies. 'Cassandra' is the default password based authentication. The default is 'Cassandra'.", + "enum": [ + "None", + "Cassandra" + ], + "x-ms-enum": { + "name": "AuthenticationMethod", + "modelAsString": true + } + }, + "initialCassandraAdminPassword": { + "x-ms-mutability": [ + "create" + ], + "x-ms-secret": true, + "description": "Initial password for clients connecting as admin to the cluster. Should be changed after cluster creation. Returns null on GET. This field only applies when the authenticationMethod field is 'Cassandra'.", + "type": "string" + }, + "hoursBetweenBackups": { + "type": "integer", + "format": "int32", + "description": "Number of hours to wait between taking a backup of the cluster. To disable backups, set this property to 0." + }, + "prometheusEndpoint": { + "$ref": "#/definitions/SeedNode", + "description": "Hostname or IP address where the Prometheus endpoint containing data about the managed Cassandra nodes can be reached." + }, + "repairEnabled": { + "type": "boolean", + "description": "Should automatic repairs run on this cluster? If omitted, this is true, and should stay true unless you are running a hybrid cluster where you are already doing your own repairs." + }, + "clientCertificates": { + "description": "List of TLS certificates used to authorize clients connecting to the cluster. All connections are TLS encrypted whether clientCertificates is set or not, but if clientCertificates is set, the managed Cassandra cluster will reject all connections not bearing a TLS client certificate that can be validated from one or more of the public certificates in this property.", + "type": "array", + "items": { + "$ref": "#/definitions/Certificate" + } + }, + "externalGossipCertificates": { + "description": "List of TLS certificates used to authorize gossip from unmanaged data centers. The TLS certificates of all nodes in unmanaged data centers must be verifiable using one of the certificates provided in this property.", + "type": "array", + "items": { + "$ref": "#/definitions/Certificate" + } + }, + "gossipCertificates": { + "readOnly": true, + "x-ms-mutability": [ + "read" + ], + "description": "List of TLS certificates that unmanaged nodes must trust for gossip with managed nodes. All managed nodes will present TLS client certificates that are verifiable using one of the certificates provided in this property.", + "type": "array", + "items": { + "$ref": "#/definitions/Certificate" + } + }, + "externalSeedNodes": { + "type": "array", + "description": "List of IP addresses of seed nodes in unmanaged data centers. These will be added to the seed node lists of all managed nodes.", + "items": { + "$ref": "#/definitions/SeedNode" + } + }, + "seedNodes": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SeedNode" + }, + "description": "List of IP addresses of seed nodes in the managed data centers. These should be added to the seed node lists of all unmanaged nodes." + } + } + } + } + }, + "RepairPostBody": { + "description": "Specification of the keyspaces and tables to run repair on.", + "type": "object", + "required": [ + "keyspace" + ], + "properties": { + "keyspace": { + "type": "string", + "description": "The name of the keyspace that repair should be run on." + }, + "tables": { + "type": "array", + "description": "List of tables in the keyspace to repair. If omitted, repair all tables in the keyspace.", + "items": { + "type": "string", + "description": "Name of a table in the Cassandra keyspace." + } + } + } + }, + "ClusterNodeStatus": { + "description": "The status of all nodes in the cluster (as returned by 'nodetool status').", + "type": "object", + "properties": { + "nodes": { + "type": "array", + "description": "Information about nodes in the cluster (corresponds to what is returned from nodetool info).", + "items": { + "type": "object", + "properties": { + "datacenter": { + "type": "string", + "description": "The Cassandra data center this node resides in." + }, + "status": { + "type": "string", + "description": "Indicates whether the node is functioning or not.", + "enum": [ + "Up", + "Down" + ], + "x-ms-enum": { + "name": "NodeStatus", + "modelAsString": true + } + }, + "state": { + "type": "string", + "description": "The state of the node in relation to the cluster.", + "enum": [ + "Normal", + "Leaving", + "Joining", + "Moving", + "Stopped" + ], + "x-ms-enum": { + "name": "NodeState", + "modelAsString": true + } + }, + "address": { + "type": "string", + "description": "The node's URL." + }, + "load": { + "type": "string", + "description": "The amount of file system data in the data directory (e.g., 47.66 KB), excluding all content in the snapshots subdirectories. Because all SSTable data files are included, any data that is not cleaned up (such as TTL-expired cell or tombstoned data) is counted." + }, + "tokens": { + "type": "array", + "description": "List of tokens.", + "items": { + "type": "string", + "description": "Token of this node." + } + }, + "owns": { + "type": "number", + "format": "double", + "description": "The percentage of the data owned by the node per datacenter times the replication factor (e.g., 33.3, or null if the data is not available). For example, a node can own 33% of the ring, but shows 100% if the replication factor is 3. For non-system keyspaces, the endpoint percentage ownership information is shown." + }, + "hostId": { + "type": "string", + "description": "The network ID of the node." + }, + "rack": { + "type": "string", + "description": "The rack this node is part of." + } + } + } + } + } + }, + "BackupResource": { + "description": "A restorable backup of a Cassandra cluster.", + "type": "object", + "allOf": [ + { + "$ref": "cosmos-db.json#/definitions/ARMProxyResource" + } + ], + "properties": { + "properties": { + "type": "object", + "properties": { + "timestamp": { + "type": "string", + "format": "date-time", + "description": "The time this backup was taken, formatted like 2021-01-21T17:35:21" + } + } + } + } + }, + "ListBackups": { + "description": "List of restorable backups for a Cassandra cluster.", + "type": "object", + "properties": { + "value": { + "description": "Container for array of backups.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/BackupResource" + } + } + } + }, + "ListDataCenters": { + "description": "List of managed Cassandra data centers and their properties.", + "type": "object", + "properties": { + "value": { + "description": "Container for array of data centers.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/DataCenterResource" + } + } + } + }, + "SeedNode": { + "type": "object", + "properties": { + "ipAddress": { + "description": "IP address of this seed node.", + "type": "string" + } + } + }, + "Certificate": { + "type": "object", + "properties": { + "pem": { + "description": "PEM formatted public key.", + "type": "string" + } + } + }, + "DataCenterResource": { + "description": "A managed Cassandra data center.", + "type": "object", + "allOf": [ + { + "$ref": "cosmos-db.json#/definitions/ARMProxyResource" + } + ], + "properties": { + "properties": { + "description": "Properties of a managed Cassandra data center.", + "type": "object", + "properties": { + "provisioningState": { + "$ref": "#/definitions/ManagedCassandraProvisioningState" + }, + "dataCenterLocation": { + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ], + "description": "The region this data center should be created in." + }, + "delegatedSubnetId": { + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ], + "description": "Resource id of a subnet the nodes in this data center should have their network interfaces connected to. The subnet must be in the same region specified in 'dataCenterLocation' and must be able to route to the subnet specified in the cluster's 'delegatedManagementSubnetId' property. This resource id will be of the form '/subscriptions//resourceGroups//providers/Microsoft.Network/virtualNetworks//subnets/'." + }, + "nodeCount": { + "type": "integer", + "format": "int32", + "description": "The number of nodes the data center should have. This is the desired number. After it is set, it may take some time for the data center to be scaled to match. To monitor the number of nodes and their status, use the fetchNodeStatus method on the cluster." + }, + "seedNodes": { + "readOnly": true, + "type": "array", + "description": "IP addresses for seed nodes in this data center. This is for reference. Generally you will want to use the seedNodes property on the cluster, which aggregates the seed nodes from all data centers in the cluster.", + "items": { + "$ref": "#/definitions/SeedNode" + } + }, + "base64EncodedCassandraYamlFragment": { + "type": "string", + "description": "A fragment of a cassandra.yaml configuration file to be included in the cassandra.yaml for all nodes in this data center. The fragment should be Base64 encoded, and only a subset of keys are allowed." + } + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/notebook.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/notebook.json new file mode 100644 index 000000000000..f2c187237314 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/notebook.json @@ -0,0 +1,461 @@ +{ + "swagger": "2.0", + "info": { + "title": "Cosmos DB", + "description": "Azure Cosmos DB Database Service Resource Provider REST API", + "version": "2021-04-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.DocumentDB/databaseAccounts/{accountName}/notebookWorkspaces": { + "get": { + "tags": [ + "NotebookWorkspacesResource" + ], + "description": "Gets the notebook workspace resources of an existing Cosmos DB account.", + "operationId": "NotebookWorkspaces_ListByDatabaseAccount", + "x-ms-pageable": { + "nextLinkName": null + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved notebook workspace resources.", + "schema": { + "$ref": "#/definitions/NotebookWorkspaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../preview/2021-04-01-preview/cosmos-db.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "CosmosDBNotebookWorkspaceList": { + "$ref": "./examples/CosmosDBNotebookWorkspaceList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/notebookWorkspaces/{notebookWorkspaceName}": { + "get": { + "tags": [ + "NotebookWorkspacesResource" + ], + "description": "Gets the notebook workspace for a Cosmos DB account.", + "operationId": "NotebookWorkspaces_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/NotebookWorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved a specified notebook workspace resource.", + "schema": { + "$ref": "#/definitions/NotebookWorkspace" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../preview/2021-04-01-preview/cosmos-db.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "CosmosDBNotebookWorkspaceGet": { + "$ref": "./examples/CosmosDBNotebookWorkspaceGet.json" + } + } + }, + "put": { + "tags": [ + "NotebookWorkspacesResource" + ], + "description": "Creates the notebook workspace for a Cosmos DB account.", + "operationId": "NotebookWorkspaces_CreateOrUpdate", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/NotebookWorkspaceNameParameter" + }, + { + "name": "notebookCreateUpdateParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NotebookWorkspaceCreateUpdateParameters" + }, + "description": "The notebook workspace to create for the current database account." + } + ], + "responses": { + "200": { + "description": "Creation of notebook workspace will complete asynchronously.", + "schema": { + "$ref": "#/definitions/NotebookWorkspace" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../preview/2021-04-01-preview/cosmos-db.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "CosmosDBNotebookWorkspaceCreate": { + "$ref": "./examples/CosmosDBNotebookWorkspaceCreate.json" + } + } + }, + "delete": { + "tags": [ + "NotebookWorkspacesResource" + ], + "description": "Deletes the notebook workspace for a Cosmos DB account.", + "operationId": "NotebookWorkspaces_Delete", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/NotebookWorkspaceNameParameter" + } + ], + "responses": { + "202": { + "description": "The notebook workspace delete operation will complete asynchronously." + }, + "204": { + "description": "The specified notebook workspace does not exist in the database account." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../preview/2021-04-01-preview/cosmos-db.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "CosmosDBNotebookWorkspaceDelete": { + "$ref": "./examples/CosmosDBNotebookWorkspaceDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/notebookWorkspaces/{notebookWorkspaceName}/listConnectionInfo": { + "post": { + "tags": [ + "NotebookWorkspacesResource" + ], + "operationId": "NotebookWorkspaces_ListConnectionInfo", + "x-ms-examples": { + "CosmosDBNotebookWorkspaceListConnectionInfo": { + "$ref": "./examples/CosmosDBNotebookWorkspaceListConnectionInfo.json" + } + }, + "description": "Retrieves the connection info for the notebook workspace", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/NotebookWorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/NotebookWorkspaceConnectionInfoResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../preview/2021-04-01-preview/cosmos-db.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/notebookWorkspaces/{notebookWorkspaceName}/regenerateAuthToken": { + "post": { + "tags": [ + "NotebookWorkspacesResource" + ], + "operationId": "NotebookWorkspaces_RegenerateAuthToken", + "x-ms-long-running-operation": true, + "x-ms-examples": { + "CosmosDBNotebookWorkspaceRegenerateAuthToken": { + "$ref": "./examples/CosmosDBNotebookWorkspaceRegenerateAuthToken.json" + } + }, + "description": "Regenerates the auth token for the notebook workspace", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/NotebookWorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted. The regenerate auth token operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../preview/2021-04-01-preview/cosmos-db.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/notebookWorkspaces/{notebookWorkspaceName}/start": { + "post": { + "tags": [ + "NotebookWorkspacesResource" + ], + "operationId": "NotebookWorkspaces_Start", + "x-ms-long-running-operation": true, + "x-ms-examples": { + "CosmosDBNotebookWorkspaceStart": { + "$ref": "./examples/CosmosDBNotebookWorkspaceStart.json" + } + }, + "description": "Starts the notebook workspace", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/NotebookWorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted. The start operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../preview/2021-04-01-preview/cosmos-db.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "NotebookWorkspaceCreateUpdateParameters": { + "description": "Parameters to create a notebook workspace resource", + "type": "object", + "allOf": [ + { + "$ref": "../../preview/2021-04-01-preview/cosmos-db.json#/definitions/ARMProxyResource" + } + ] + }, + "NotebookWorkspaceListResult": { + "description": "A list of notebook workspace resources", + "type": "object", + "properties": { + "value": { + "type": "array", + "description": "Array of notebook workspace resources", + "items": { + "$ref": "#/definitions/NotebookWorkspace" + } + } + } + }, + "NotebookWorkspace": { + "description": "A notebook workspace resource", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/NotebookWorkspaceProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "../../preview/2021-04-01-preview/cosmos-db.json#/definitions/ARMProxyResource" + } + ] + }, + "NotebookWorkspaceProperties": { + "description": "Properties of a notebook workspace resource.", + "type": "object", + "properties": { + "notebookServerEndpoint": { + "description": "Specifies the endpoint of Notebook server.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "Status of the notebook workspace. Possible values are: Creating, Online, Deleting, Failed, Updating.", + "type": "string", + "readOnly": true + } + } + }, + "NotebookWorkspaceConnectionInfoResult": { + "description": "The connection info for the given notebook workspace", + "properties": { + "authToken": { + "type": "string", + "description": "Specifies auth token used for connecting to Notebook server (uses token-based auth).", + "readOnly": true + }, + "notebookServerEndpoint": { + "type": "string", + "description": "Specifies the endpoint of Notebook server.", + "readOnly": true + } + } + } + }, + "parameters": { + "accountNameParameter": { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB database account name.", + "minLength": 3, + "maxLength": 50, + "pattern": "^[a-z0-9]+(-[a-z0-9]+)*" + }, + "NotebookWorkspaceNameParameter": { + "name": "notebookWorkspaceName", + "in": "path", + "description": "The name of the notebook workspace resource.", + "required": true, + "x-ms-parameter-location": "method", + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "NotebookWorkspaceName", + "modelAsString": true + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/privateEndpointConnection.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/privateEndpointConnection.json new file mode 100644 index 000000000000..28ef1a2dc9d7 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/privateEndpointConnection.json @@ -0,0 +1,318 @@ +{ + "swagger": "2.0", + "info": { + "title": "Cosmos DB", + "description": "Azure Cosmos DB Database Service Resource Provider REST API", + "version": "2021-04-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.DocumentDB/databaseAccounts/{accountName}/privateEndpointConnections": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "List all private endpoint connections on a Cosmos DB account.", + "operationId": "PrivateEndpointConnections_ListByDatabaseAccount", + "x-ms-pageable": { + "nextLinkName": null + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private endpoint connections.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionListResult" + } + } + }, + "x-ms-examples": { + "Gets private endpoint connection.": { + "$ref": "./examples/CosmosDBPrivateEndpointConnectionListGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Gets a private endpoint connection.", + "operationId": "PrivateEndpointConnections_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved a specified private endpoint connection.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + } + }, + "x-ms-examples": { + "Gets private endpoint connection.": { + "$ref": "./examples/CosmosDBPrivateEndpointConnectionGet.json" + } + } + }, + "put": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Approve or reject a private endpoint connection with a given name.", + "operationId": "PrivateEndpointConnections_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + } + ], + "responses": { + "200": { + "description": "Successfully approved or rejected private endpoint connection.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "202": { + "description": "Accepted. The private endpoint connection update will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../preview/2021-04-01-preview/cosmos-db.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Approve or reject a private endpoint connection with a given name.": { + "$ref": "./examples/CosmosDBPrivateEndpointConnectionUpdate.json" + } + } + }, + "delete": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Deletes a private endpoint connection with a given name.", + "operationId": "PrivateEndpointConnections_Delete", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionNameParameter" + } + ], + "responses": { + "202": { + "description": "Accepted. The private endpoint connection delete will complete asynchronously." + }, + "204": { + "description": "Private endpoint connection does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../preview/2021-04-01-preview/cosmos-db.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Deletes a private endpoint connection with a given name.": { + "$ref": "./examples/CosmosDBPrivateEndpointConnectionDelete.json" + } + } + } + } + }, + "definitions": { + "PrivateEndpointConnectionListResult": { + "description": "A list of private endpoint connections", + "type": "object", + "properties": { + "value": { + "type": "array", + "description": "Array of private endpoint connections", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + } + } + }, + "PrivateEndpointConnection": { + "description": "A private endpoint connection", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ] + }, + "PrivateEndpointConnectionProperties": { + "description": "Properties of a private endpoint connection.", + "type": "object", + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpointProperty", + "description": "Private endpoint which the connection belongs to." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionStateProperty", + "description": "Connection State of the Private Endpoint Connection." + }, + "groupId": { + "type": "string", + "description": "Group id of the private endpoint." + }, + "provisioningState": { + "type": "string", + "description": "Provisioning state of the private endpoint." + } + } + }, + "PrivateEndpointProperty": { + "type": "object", + "description": "Private endpoint which the connection belongs to.", + "properties": { + "id": { + "type": "string", + "description": "Resource id of the private endpoint." + } + } + }, + "PrivateLinkServiceConnectionStateProperty": { + "type": "object", + "description": "Connection State of the Private Endpoint Connection.", + "properties": { + "status": { + "type": "string", + "description": "The private link service connection status." + }, + "description": { + "type": "string", + "description": "The private link service connection description." + }, + "actionsRequired": { + "type": "string", + "description": "Any action that is required beyond basic workflow (approve/ reject/ disconnect)", + "readOnly": true + } + } + } + }, + "parameters": { + "accountNameParameter": { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB database account name.", + "minLength": 3, + "maxLength": 50, + "pattern": "^[a-z0-9]+(-[a-z0-9]+)*" + }, + "PrivateEndpointConnectionNameParameter": { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "The name of the private endpoint connection." + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/privateLinkResources.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/privateLinkResources.json new file mode 100644 index 000000000000..1f9975584475 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/privateLinkResources.json @@ -0,0 +1,195 @@ +{ + "swagger": "2.0", + "info": { + "title": "Cosmos DB", + "description": "Azure Cosmos DB Database Service Resource Provider REST API", + "version": "2021-04-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.DocumentDB/databaseAccounts/{accountName}/privateLinkResources": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "description": "Gets the private link resources that need to be created for a Cosmos DB account.", + "operationId": "PrivateLinkResources_ListByDatabaseAccount", + "x-ms-pageable": { + "nextLinkName": null + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private link resources.", + "schema": { + "$ref": "#/definitions/PrivateLinkResourceListResult" + } + } + }, + "x-ms-examples": { + "Gets private endpoint connection.": { + "$ref": "./examples/CosmosDBPrivateLinkResourceListGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/privateLinkResources/{groupName}": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "description": "Gets the private link resources that need to be created for a Cosmos DB account.", + "operationId": "PrivateLinkResources_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/GroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved a specified private link resource.", + "schema": { + "$ref": "#/definitions/PrivateLinkResource" + } + } + }, + "x-ms-examples": { + "Gets private endpoint connection.": { + "$ref": "./examples/CosmosDBPrivateLinkResourceGet.json" + } + } + } + } + }, + "definitions": { + "PrivateLinkResourceListResult": { + "description": "A list of private link resources", + "type": "object", + "properties": { + "value": { + "type": "array", + "description": "Array of private link resources", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + } + } + } + }, + "PrivateLinkResource": { + "description": "A private link resource", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "../../preview/2021-04-01-preview/cosmos-db.json#/definitions/ARMProxyResource" + } + ] + }, + "PrivateLinkResourceProperties": { + "description": "Properties of a private link resource.", + "type": "object", + "properties": { + "groupId": { + "description": "The private link resource group id.", + "type": "string", + "readOnly": true + }, + "requiredMembers": { + "description": "The private link resource required member names.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "requiredZoneNames": { + "description": "The private link resource required zone names.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + } + } + } + }, + "parameters": { + "accountNameParameter": { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB database account name.", + "minLength": 3, + "maxLength": 50, + "pattern": "^[a-z0-9]+(-[a-z0-9]+)*" + }, + "GroupNameParameter": { + "name": "groupName", + "in": "path", + "description": "The name of the private link resource.", + "required": true, + "x-ms-parameter-location": "method", + "type": "string" + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/rbac.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/rbac.json new file mode 100644 index 000000000000..5747c88cf26b --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/rbac.json @@ -0,0 +1,573 @@ +{ + "swagger": "2.0", + "info": { + "title": "Cosmos DB", + "description": "Azure Cosmos DB Role Based Access Control Resource Provider REST API", + "version": "2021-04-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.DocumentDB/databaseAccounts/{accountName}/sqlRoleDefinitions/{roleDefinitionId}": { + "get": { + "operationId": "SqlResources_GetSqlRoleDefinition", + "x-ms-examples": { + "CosmosDBSqlRoleDefinitionGet": { + "$ref": "./examples/CosmosDBSqlRoleDefinitionGet.json" + } + }, + "description": "Retrieves the properties of an existing Azure Cosmos DB SQL Role Definition with the given Id.", + "parameters": [ + { + "$ref": "#/parameters/roleDefinitionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "cosmos-db.json#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Role Definition was successfully retrieved.", + "schema": { + "$ref": "#/definitions/SqlRoleDefinitionGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "cosmos-db.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "SqlResources_CreateUpdateSqlRoleDefinition", + "x-ms-examples": { + "CosmosDBSqlRoleDefinitionCreateUpdate": { + "$ref": "./examples/CosmosDBSqlRoleDefinitionCreateUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Creates or updates an Azure Cosmos DB SQL Role Definition.", + "parameters": [ + { + "$ref": "#/parameters/roleDefinitionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "cosmos-db.json#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateSqlRoleDefinitionParameters", + "in": "body", + "required": true, + "description": "The properties required to create or update a Role Definition.", + "schema": { + "$ref": "#/definitions/SqlRoleDefinitionCreateUpdateParameters" + } + } + ], + "responses": { + "200": { + "description": "The Role Definition create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/SqlRoleDefinitionGetResults" + } + }, + "202": { + "description": "The Role Definition create or update request was accepted and will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "cosmos-db.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "operationId": "SqlResources_DeleteSqlRoleDefinition", + "x-ms-examples": { + "CosmosDBSqlRoleDefinitionDelete": { + "$ref": "./examples/CosmosDBSqlRoleDefinitionDelete.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Deletes an existing Azure Cosmos DB SQL Role Definition.", + "parameters": [ + { + "$ref": "#/parameters/roleDefinitionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "cosmos-db.json#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Role Definition delete operation was completed successfully." + }, + "202": { + "description": "The Role Definition delete request was accepted and will complete asynchronously." + }, + "204": { + "description": "The requested Role Definition does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "cosmos-db.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlRoleDefinitions": { + "get": { + "operationId": "SqlResources_ListSqlRoleDefinitions", + "x-ms-examples": { + "CosmosDBSqlRoleDefinitionList": { + "$ref": "./examples/CosmosDBSqlRoleDefinitionList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the list of all Azure Cosmos DB SQL Role Definitions.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "cosmos-db.json#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The list operation completed successfully.", + "schema": { + "$ref": "#/definitions/SqlRoleDefinitionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "cosmos-db.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlRoleAssignments/{roleAssignmentId}": { + "get": { + "operationId": "SqlResources_GetSqlRoleAssignment", + "x-ms-examples": { + "CosmosDBSqlRoleAssignmentGet": { + "$ref": "./examples/CosmosDBSqlRoleAssignmentGet.json" + } + }, + "description": "Retrieves the properties of an existing Azure Cosmos DB SQL Role Assignment with the given Id.", + "parameters": [ + { + "$ref": "#/parameters/roleAssignmentIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "cosmos-db.json#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Role Assignment was successfully retrieved.", + "schema": { + "$ref": "#/definitions/SqlRoleAssignmentGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "cosmos-db.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "SqlResources_CreateUpdateSqlRoleAssignment", + "x-ms-examples": { + "CosmosDBSqlRoleAssignmentCreateUpdate": { + "$ref": "./examples/CosmosDBSqlRoleAssignmentCreateUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Creates or updates an Azure Cosmos DB SQL Role Assignment.", + "parameters": [ + { + "$ref": "#/parameters/roleAssignmentIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "cosmos-db.json#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateSqlRoleAssignmentParameters", + "in": "body", + "required": true, + "description": "The properties required to create or update a Role Assignment.", + "schema": { + "$ref": "#/definitions/SqlRoleAssignmentCreateUpdateParameters" + } + } + ], + "responses": { + "200": { + "description": "The Role Assignment create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/SqlRoleAssignmentGetResults" + } + }, + "202": { + "description": "The Role Assignment create or update request was accepted and will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "cosmos-db.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "operationId": "SqlResources_DeleteSqlRoleAssignment", + "x-ms-examples": { + "CosmosDBSqlRoleAssignmentDelete": { + "$ref": "./examples/CosmosDBSqlRoleAssignmentDelete.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Deletes an existing Azure Cosmos DB SQL Role Assignment.", + "parameters": [ + { + "$ref": "#/parameters/roleAssignmentIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "cosmos-db.json#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Role Assignment delete operation was completed successfully." + }, + "202": { + "description": "The Role Assignment delete request was accepted and will complete asynchronously." + }, + "204": { + "description": "The requested Role Assignment does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "cosmos-db.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlRoleAssignments": { + "get": { + "operationId": "SqlResources_ListSqlRoleAssignments", + "x-ms-examples": { + "CosmosDBSqlRoleAssignmentList": { + "$ref": "./examples/CosmosDBSqlRoleAssignmentList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the list of all Azure Cosmos DB SQL Role Assignments.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "cosmos-db.json#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The list operation completed successfully.", + "schema": { + "$ref": "#/definitions/SqlRoleAssignmentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "cosmos-db.json#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "SqlRoleDefinitionResource": { + "properties": { + "roleName": { + "type": "string", + "description": "A user-friendly name for the Role Definition. Must be unique for the database account." + }, + "type": { + "type": "string", + "enum": [ + "BuiltInRole", + "CustomRole" + ], + "description": "Indicates whether the Role Definition was built-in or user created.", + "x-ms-enum": { + "name": "RoleDefinitionType", + "modelAsString": false + } + }, + "assignableScopes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A set of fully qualified Scopes at or below which Role Assignments may be created using this Role Definition. This will allow application of this Role Definition on the entire database account or any underlying Database / Collection. Must have at least one element. Scopes higher than Database account are not enforceable as assignable Scopes. Note that resources referenced in assignable Scopes need not exist." + }, + "permissions": { + "type": "array", + "items": { + "$ref": "#/definitions/Permission" + }, + "description": "The set of operations allowed through this Role Definition." + } + }, + "description": "Azure Cosmos DB SQL Role Definition resource object." + }, + "SqlRoleDefinitionCreateUpdateParameters": { + "description": "Parameters to create and update an Azure Cosmos DB SQL Role Definition.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update an Azure Cosmos DB SQL Role Definition.", + "$ref": "#/definitions/SqlRoleDefinitionResource" + } + } + }, + "SqlRoleDefinitionGetResults": { + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SqlRoleDefinitionResource", + "description": "Properties related to the Role Definition." + } + }, + "allOf": [ + { + "$ref": "cosmos-db.json#/definitions/ARMProxyResource" + } + ], + "description": "An Azure Cosmos DB SQL Role Definition." + }, + "Permission": { + "type": "object", + "properties": { + "dataActions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "An array of data actions that are allowed." + }, + "notDataActions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "An array of data actions that are denied." + } + }, + "description": "The set of data plane operations permitted through this Role Definition." + }, + "SqlRoleDefinitionListResult": { + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/SqlRoleDefinitionGetResults" + }, + "description": "List of Role Definitions and their properties." + } + }, + "description": "The relevant Role Definitions." + }, + "SqlRoleAssignmentResource": { + "type": "object", + "properties": { + "roleDefinitionId": { + "type": "string", + "description": "The unique identifier for the associated Role Definition." + }, + "scope": { + "type": "string", + "description": "The data plane resource path for which access is being granted through this Role Assignment." + }, + "principalId": { + "type": "string", + "description": "The unique identifier for the associated AAD principal in the AAD graph to which access is being granted through this Role Assignment. Tenant ID for the principal is inferred using the tenant associated with the subscription." + } + }, + "description": "Azure Cosmos DB SQL Role Assignment resource object." + }, + "SqlRoleAssignmentCreateUpdateParameters": { + "description": "Parameters to create and update an Azure Cosmos DB SQL Role Assignment.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update an Azure Cosmos DB SQL Role Assignment.", + "$ref": "#/definitions/SqlRoleAssignmentResource" + } + } + }, + "SqlRoleAssignmentGetResults": { + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SqlRoleAssignmentResource", + "description": "Properties related to the Role Assignment." + } + }, + "allOf": [ + { + "$ref": "cosmos-db.json#/definitions/ARMProxyResource" + } + ], + "description": "An Azure Cosmos DB Role Assignment" + }, + "SqlRoleAssignmentListResult": { + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/SqlRoleAssignmentGetResults" + }, + "description": "List of Role Assignments and their properties" + } + }, + "description": "The relevant Role Assignments." + } + }, + "parameters": { + "roleDefinitionIdParameter": { + "name": "roleDefinitionId", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "The GUID for the Role Definition." + }, + "roleAssignmentIdParameter": { + "name": "roleAssignmentId", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "The GUID for the Role Assignment." + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/restorable.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/restorable.json new file mode 100644 index 000000000000..825fe9048984 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/restorable.json @@ -0,0 +1,767 @@ +{ + "swagger": "2.0", + "info": { + "title": "Cosmos DB", + "description": "Azure Cosmos DB Database Service Resource Provider REST API", + "version": "2021-04-01-preview" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "Impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.DocumentDB/locations/{location}/restorableDatabaseAccounts/{instanceId}/restorableSqlDatabases": { + "get": { + "operationId": "RestorableSqlDatabases_List", + "x-ms-examples": { + "CosmosDBRestorableSqlDatabaseList": { + "$ref": "./examples/CosmosDBRestorableSqlDatabaseList.json" + } + }, + "description": "Show the event feed of all mutations done on all the Azure Cosmos DB SQL databases under the restorable account. This helps in scenario where database was accidentally deleted to get the deletion time. This API requires 'Microsoft.DocumentDB/locations/restorableDatabaseAccounts/.../read' permission", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../preview/2021-04-01-preview/cosmos-db.json#/parameters/locationParameter" + }, + { + "$ref": "../../preview/2021-04-01-preview/cosmos-db.json#/parameters/instanceIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/RestorableSqlDatabasesListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "cosmos-db.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DocumentDB/locations/{location}/restorableDatabaseAccounts/{instanceId}/restorableSqlContainers": { + "get": { + "operationId": "RestorableSqlContainers_List", + "x-ms-examples": { + "CosmosDBRestorableSqlContainerList": { + "$ref": "./examples/CosmosDBRestorableSqlContainerList.json" + } + }, + "description": "Show the event feed of all mutations done on all the Azure Cosmos DB SQL containers under a specific database. This helps in scenario where container was accidentally deleted. This API requires 'Microsoft.DocumentDB/locations/restorableDatabaseAccounts/.../read' permission", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../preview/2021-04-01-preview/cosmos-db.json#/parameters/locationParameter" + }, + { + "$ref": "../../preview/2021-04-01-preview/cosmos-db.json#/parameters/instanceIdParameter" + }, + { + "$ref": "#/parameters/restorableSqlDatabaseRidParameter" + }, + { + "$ref": "#/parameters/restoreStartTime" + }, + { + "$ref": "#/parameters/restoreEndTime" + } + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/RestorableSqlContainersListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "cosmos-db.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DocumentDB/locations/{location}/restorableDatabaseAccounts/{instanceId}/restorableSqlResources": { + "get": { + "operationId": "RestorableSqlResources_List", + "x-ms-examples": { + "CosmosDBRestorableSqlResourceList": { + "$ref": "./examples/CosmosDBRestorableSqlResourceList.json" + } + }, + "description": "Return a list of database and container combo that exist on the account at the given timestamp and location. This helps in scenarios to validate what resources exist at given timestamp and location. This API requires 'Microsoft.DocumentDB/locations/restorableDatabaseAccounts/.../read' permission.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../preview/2021-04-01-preview/cosmos-db.json#/parameters/locationParameter" + }, + { + "$ref": "../../preview/2021-04-01-preview/cosmos-db.json#/parameters/instanceIdParameter" + }, + { + "$ref": "#/parameters/restoreLocationParameter" + }, + { + "$ref": "#/parameters/restoreTimestampInUtcParameter" + } + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/RestorableSqlResourcesListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "cosmos-db.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DocumentDB/locations/{location}/restorableDatabaseAccounts/{instanceId}/restorableMongodbDatabases": { + "get": { + "operationId": "RestorableMongodbDatabases_List", + "x-ms-examples": { + "CosmosDBRestorableMongodbDatabaseList": { + "$ref": "./examples/CosmosDBRestorableMongodbDatabaseList.json" + } + }, + "description": "Show the event feed of all mutations done on all the Azure Cosmos DB MongoDB databases under the restorable account. This helps in scenario where database was accidentally deleted to get the deletion time. This API requires 'Microsoft.DocumentDB/locations/restorableDatabaseAccounts/.../read' permission", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../preview/2021-04-01-preview/cosmos-db.json#/parameters/locationParameter" + }, + { + "$ref": "../../preview/2021-04-01-preview/cosmos-db.json#/parameters/instanceIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/RestorableMongodbDatabasesListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "cosmos-db.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DocumentDB/locations/{location}/restorableDatabaseAccounts/{instanceId}/restorableMongodbCollections": { + "get": { + "operationId": "RestorableMongodbCollections_List", + "x-ms-examples": { + "CosmosDBRestorableMongodbCollectionList": { + "$ref": "./examples/CosmosDBRestorableMongodbCollectionList.json" + } + }, + "description": "Show the event feed of all mutations done on all the Azure Cosmos DB MongoDB collections under a specific database. This helps in scenario where container was accidentally deleted. This API requires 'Microsoft.DocumentDB/locations/restorableDatabaseAccounts/.../read' permission", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../preview/2021-04-01-preview/cosmos-db.json#/parameters/locationParameter" + }, + { + "$ref": "../../preview/2021-04-01-preview/cosmos-db.json#/parameters/instanceIdParameter" + }, + { + "$ref": "#/parameters/restorableMongodbDatabaseRidParameter" + } + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/RestorableMongodbCollectionsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "cosmos-db.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DocumentDB/locations/{location}/restorableDatabaseAccounts/{instanceId}/restorableMongodbResources": { + "get": { + "operationId": "RestorableMongodbResources_List", + "x-ms-examples": { + "CosmosDBRestorableMongodbResourceList": { + "$ref": "./examples/CosmosDBRestorableMongodbResourceList.json" + } + }, + "description": "Return a list of database and collection combo that exist on the account at the given timestamp and location. This helps in scenarios to validate what resources exist at given timestamp and location. This API requires 'Microsoft.DocumentDB/locations/restorableDatabaseAccounts/.../read' permission.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../preview/2021-04-01-preview/cosmos-db.json#/parameters/locationParameter" + }, + { + "$ref": "../../preview/2021-04-01-preview/cosmos-db.json#/parameters/instanceIdParameter" + }, + { + "$ref": "#/parameters/restoreLocationParameter" + }, + { + "$ref": "#/parameters/restoreTimestampInUtcParameter" + } + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/RestorableMongodbResourcesListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "cosmos-db.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + } + }, + "definitions": { + "RestorableSqlDatabasesListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/RestorableSqlDatabaseGetResult" + }, + "description": "List of SQL database events and their properties." + } + }, + "description": "The List operation response, that contains the SQL database events and their properties." + }, + "RestorableSqlDatabaseGetResult": { + "description": "An Azure Cosmos DB SQL database event", + "type": "object", + "properties": { + "properties": { + "type": "object", + "x-ms-client-flatten": true, + "description": "The properties of a SQL database event.", + "$ref": "#/definitions/RestorableSqlDatabaseProperties" + }, + "id": { + "readOnly": true, + "type": "string", + "description": "The unique resource Identifier of the ARM resource." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the ARM resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of Azure resource." + } + } + }, + "RestorableSqlDatabaseProperties": { + "description": "The properties of an Azure Cosmos DB SQL database event", + "type": "object", + "properties": { + "resource": { + "type": "object", + "description": "The resource of an Azure Cosmos DB SQL database event", + "properties": { + "_rid": { + "type": "string", + "readOnly": true, + "description": "A system generated property. A unique identifier." + }, + "operationType": { + "type": "string", + "readOnly": true, + "description": "The operation type of this database event.", + "$ref": "#/definitions/OperationType" + }, + "eventTimestamp": { + "type": "string", + "readOnly": true, + "description": "The time when this database event happened." + }, + "ownerId": { + "type": "string", + "readOnly": true, + "description": "The name of the SQL database." + }, + "ownerResourceId": { + "type": "string", + "readOnly": true, + "description": "The resource ID of the SQL database." + }, + "database": { + "type": "object", + "description": "Cosmos DB SQL database resource object", + "properties": { + "_colls": { + "type": "string", + "readOnly": true, + "description": "A system generated property that specified the addressable path of the collections resource." + }, + "_users": { + "type": "string", + "readOnly": true, + "description": "A system generated property that specifies the addressable path of the users resource." + }, + "_self": { + "type": "string", + "readOnly": true, + "description": "A system generated property that specifies the addressable path of the database resource." + } + }, + "allOf": [ + { + "$ref": "../../preview/2021-04-01-preview/cosmos-db.json#/definitions/SqlDatabaseResource" + }, + { + "$ref": "../../preview/2021-04-01-preview/cosmos-db.json#/definitions/ExtendedResourceProperties" + } + ] + } + } + } + } + }, + "RestorableSqlContainersListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/RestorableSqlContainerGetResult" + }, + "description": "List of SQL container events and their properties." + } + }, + "description": "The List operation response, that contains the SQL container events and their properties." + }, + "RestorableSqlContainerGetResult": { + "description": "An Azure Cosmos DB SQL container event", + "type": "object", + "properties": { + "properties": { + "type": "object", + "x-ms-client-flatten": true, + "description": "The properties of a SQL container event.", + "$ref": "#/definitions/RestorableSqlContainerProperties" + }, + "id": { + "readOnly": true, + "type": "string", + "description": "The unique resource Identifier of the ARM resource." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the ARM resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of Azure resource." + } + } + }, + "RestorableSqlContainerProperties": { + "description": "The properties of an Azure Cosmos DB SQL container event", + "type": "object", + "properties": { + "resource": { + "description": "The resource of an Azure Cosmos DB SQL container event", + "type": "object", + "properties": { + "_rid": { + "type": "string", + "readOnly": true, + "description": "A system generated property. A unique identifier." + }, + "operationType": { + "type": "string", + "readOnly": true, + "description": "The operation type of this container event.", + "$ref": "#/definitions/OperationType" + }, + "eventTimestamp": { + "type": "string", + "readOnly": true, + "description": "The when this container event happened." + }, + "ownerId": { + "type": "string", + "readOnly": true, + "description": "The name of this SQL container." + }, + "ownerResourceId": { + "type": "string", + "readOnly": true, + "description": "The resource ID of this SQL container." + }, + "container": { + "type": "object", + "description": "Cosmos DB SQL container resource object", + "properties": { + "_self": { + "type": "string", + "readOnly": true, + "description": "A system generated property that specifies the addressable path of the container resource." + } + }, + "allOf": [ + { + "$ref": "../../preview/2021-04-01-preview/cosmos-db.json#/definitions/SqlContainerResource" + }, + { + "$ref": "../../preview/2021-04-01-preview/cosmos-db.json#/definitions/ExtendedResourceProperties" + } + ] + } + } + } + } + }, + "RestorableSqlResourcesListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "../../preview/2021-04-01-preview/cosmos-db.json#/definitions/DatabaseRestoreResource" + }, + "description": "List of restorable SQL resources, including the database and collection names." + } + }, + "description": "The List operation response, that contains the restorable SQL resources." + }, + "RestorableMongodbDatabasesListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/RestorableMongodbDatabaseGetResult" + }, + "description": "List of MongoDB database events and their properties." + } + }, + "description": "The List operation response, that contains the MongoDB database events and their properties." + }, + "RestorableMongodbDatabaseGetResult": { + "description": "An Azure Cosmos DB MongoDB database event", + "type": "object", + "properties": { + "properties": { + "type": "object", + "x-ms-client-flatten": true, + "description": "The properties of a MongoDB database event.", + "$ref": "#/definitions/RestorableMongodbDatabaseProperties" + }, + "id": { + "readOnly": true, + "type": "string", + "description": "The unique resource Identifier of the ARM resource." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the ARM resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of Azure resource." + } + } + }, + "RestorableMongodbDatabaseProperties": { + "description": "The properties of an Azure Cosmos DB MongoDB database event", + "type": "object", + "properties": { + "resource": { + "description": "The resource of an Azure Cosmos DB MongoDB database event", + "type": "object", + "properties": { + "_rid": { + "type": "string", + "readOnly": true, + "description": "A system generated property. A unique identifier." + }, + "operationType": { + "type": "string", + "readOnly": true, + "description": "The operation type of this database event.", + "$ref": "#/definitions/OperationType" + }, + "eventTimestamp": { + "type": "string", + "readOnly": true, + "description": "The time when this database event happened." + }, + "ownerId": { + "type": "string", + "readOnly": true, + "description": "The name of this MongoDB database." + }, + "ownerResourceId": { + "type": "string", + "readOnly": true, + "description": "The resource ID of this MongoDB database." + } + } + } + } + }, + "RestorableMongodbCollectionsListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/RestorableMongodbCollectionGetResult" + }, + "description": "List of MongoDB collection events and their properties." + } + }, + "description": "The List operation response, that contains the MongoDB collection events and their properties." + }, + "RestorableMongodbCollectionGetResult": { + "description": "An Azure Cosmos DB MongoDB collection event", + "type": "object", + "properties": { + "properties": { + "type": "object", + "x-ms-client-flatten": true, + "description": "The properties of a MongoDB collection event.", + "$ref": "#/definitions/RestorableMongodbCollectionProperties" + }, + "id": { + "readOnly": true, + "type": "string", + "description": "The unique resource Identifier of the ARM resource." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the ARM resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of Azure resource." + } + } + }, + "RestorableMongodbCollectionProperties": { + "description": "The properties of an Azure Cosmos DB MongoDB collection event", + "type": "object", + "properties": { + "resource": { + "description": "The resource of an Azure Cosmos DB MongoDB collection event", + "type": "object", + "properties": { + "_rid": { + "type": "string", + "readOnly": true, + "description": "A system generated property. A unique identifier." + }, + "operationType": { + "type": "string", + "readOnly": true, + "description": "The operation type of this collection event.", + "$ref": "#/definitions/OperationType" + }, + "eventTimestamp": { + "type": "string", + "readOnly": true, + "description": "The time when this collection event happened." + }, + "ownerId": { + "type": "string", + "readOnly": true, + "description": "The name of this MongoDB collection." + }, + "ownerResourceId": { + "type": "string", + "readOnly": true, + "description": "The resource ID of this MongoDB collection." + } + } + } + } + }, + "RestorableMongodbResourcesListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "../../preview/2021-04-01-preview/cosmos-db.json#/definitions/DatabaseRestoreResource" + }, + "description": "List of restorable MongoDB resources, including the database and collection names." + } + }, + "description": "The List operation response, that contains the restorable MongoDB resources." + }, + "OperationType": { + "description": "Enum to indicate the operation type of the event.", + "type": "string", + "readOnly": true, + "enum": [ + "Create", + "Replace", + "Delete", + "SystemOperation" + ], + "x-ms-enum": { + "name": "OperationType", + "modelAsString": true + } + } + }, + "parameters": { + "restorableSqlDatabaseRidParameter": { + "name": "restorableSqlDatabaseRid", + "in": "query", + "required": false, + "type": "string", + "x-ms-parameter-location": "method", + "description": "The resource ID of the SQL database." + }, + "restorableMongodbDatabaseRidParameter": { + "name": "restorableMongodbDatabaseRid", + "in": "query", + "required": false, + "type": "string", + "x-ms-parameter-location": "method", + "description": "The resource ID of the MongoDB database." + }, + "restoreLocationParameter": { + "name": "restoreLocation", + "in": "query", + "required": false, + "type": "string", + "x-ms-parameter-location": "method", + "description": "The location where the restorable resources are located." + }, + "restoreTimestampInUtcParameter": { + "name": "restoreTimestampInUtc", + "in": "query", + "required": false, + "type": "string", + "x-ms-parameter-location": "method", + "description": "The timestamp when the restorable resources existed." + }, + "restoreStartTime": { + "name": "startTime", + "in": "query", + "required": false, + "type": "string", + "x-ms-parameter-location": "method", + "description": "The snapshot create timestamp after which snapshots need to be listed." + }, + "restoreEndTime": { + "name": "endTime", + "in": "query", + "required": false, + "type": "string", + "x-ms-parameter-location": "method", + "description": "The snapshot create timestamp before which snapshots need to be listed." + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/services.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/services.json new file mode 100644 index 000000000000..60d1e837c25c --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2021-04-01-preview/services.json @@ -0,0 +1,478 @@ +{ + "swagger": "2.0", + "info": { + "title": "Cosmos DB", + "description": "Azure Cosmos DB Database Service Resource Provider REST API", + "version": "2021-04-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.DocumentDB/databaseAccounts/{accountName}/services": { + "get": { + "x-ms-examples": { + "CosmosDBServicesList": { + "$ref": "./examples/CosmosDBServicesList.json" + } + }, + "operationId": "Service_List", + "description": "Gets the status of service.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The ServiceResource.", + "schema": { + "$ref": "#/definitions/ServiceResourceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": ".../../cosmos-db.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/services/{serviceName}": { + "put": { + "tags": [ + "DataTransfer", + "SqlDedicatedGateway" + ], + "x-ms-examples": { + "DataTransferServiceCreate": { + "$ref": "./examples/CosmosDBDataTransferServiceCreate.json" + }, + "SqlDedicatedGatewayServiceCreate": { + "$ref": "./examples/CosmosDBSqlDedicatedGatewayServiceCreate.json" + } + }, + "operationId": "Service_Create", + "description": "Creates a service.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/serviceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ServiceResource" + }, + "description": "The Service resource parameters." + } + ], + "responses": { + "200": { + "description": "The service status.", + "schema": { + "$ref": "#/definitions/ServiceResource" + } + }, + "202": { + "description": "The job will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": ".../../cosmos-db.json#/definitions/CloudError" + } + } + } + }, + "get": { + "tags": [ + "DataTransfer", + "SqlDedicatedGateway" + ], + "x-ms-examples": { + "DataTransferServiceGet": { + "$ref": "./examples/CosmosDBDataTransferServiceGet.json" + }, + "SqlDedicatedGatewayServiceGet": { + "$ref": "./examples/CosmosDBSqlDedicatedGatewayServiceGet.json" + } + }, + "operationId": "Service_Get", + "description": "Gets the status of service.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/serviceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The ServiceResource.", + "schema": { + "$ref": "#/definitions/ServiceResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": ".../../cosmos-db.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "DataTransfer", + "SqlDedicatedGateway" + ], + "x-ms-examples": { + "DataTransferServiceDelete": { + "$ref": "./examples/CosmosDBDataTransferServiceDelete.json" + }, + "SqlDedicatedGatewayServiceDelete": { + "$ref": "./examples/CosmosDBSqlDedicatedGatewayServiceDelete.json" + } + }, + "operationId": "Service_Delete", + "description": "Deletes service with the given serviceName.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/serviceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The job will complete asynchronously." + }, + "204": { + "description": "The response for service deletion." + }, + "200": { + "description": "The response for service deletion." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": ".../../cosmos-db.json#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "ServiceResourceProperties": { + "description": "Services response resource.", + "type": "object", + "discriminator": "serviceType", + "properties": { + "creationTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "Time of the last state change (ISO-8601 format)." + }, + "instanceSize": { + "$ref": "#/definitions/ServiceResourceInstanceSize" + }, + "instanceCount": { + "description": "Instance count for the service.", + "type": "integer", + "minimum": 0, + "format": "int32" + }, + "serviceType": { + "$ref": "#/definitions/ServiceType" + }, + "status": { + "readOnly": true, + "$ref": "#/definitions/ServiceResourceStatus" + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "serviceType" + ] + }, + "ServiceResource": { + "description": "Properties for the database account.", + "type": "object", + "allOf": [ + { + "$ref": ".../../cosmos-db.json#/definitions/ARMProxyResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": false, + "$ref": "#/definitions/ServiceResourceProperties" + } + } + }, + "ServiceResourceListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ServiceResource" + }, + "description": "List of Service Resource and their properties." + } + }, + "description": "The List operation response, that contains the Service Resource and their properties." + }, + "DataTransferServiceResource": { + "description": "Describes the service response property.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": false, + "$ref": "#/definitions/DataTransferServiceResourceProperties" + } + } + }, + "DataTransferServiceResourceProperties": { + "description": "Properties for DataTransferServiceResource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ServiceResourceProperties" + } + ], + "properties": { + "locations": { + "type": "array", + "readOnly": true, + "description": "An array that contains all of the locations for the service.", + "items": { + "$ref": "#/definitions/DataTransferRegionalServiceResource" + } + } + } + }, + "SqlDedicatedGatewayServiceResource": { + "description": "Describes the service response property for SqlDedicatedGateway.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": false, + "$ref": "#/definitions/SqlDedicatedGatewayServiceResourceProperties" + } + } + }, + "SqlDedicatedGatewayServiceResourceProperties": { + "description": "Properties for SqlDedicatedGatewayServiceResource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ServiceResourceProperties" + } + ], + "properties": { + "sqlDedicatedGatewayEndpoint": { + "type": "string", + "description": "SqlDedicatedGateway endpoint for the service." + }, + "locations": { + "type": "array", + "readOnly": true, + "description": "An array that contains all of the locations for the service.", + "items": { + "$ref": "#/definitions/SqlDedicatedGatewayRegionalServiceResource" + } + } + } + }, + "RegionalServiceResource": { + "description": "Resource for a regional service location.", + "type": "object", + "readOnly": true, + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "The regional service name." + }, + "location": { + "readOnly": true, + "type": "string", + "description": "The location name." + }, + "status": { + "readOnly": true, + "$ref": "#/definitions/ServiceResourceStatus" + } + } + }, + "SqlDedicatedGatewayRegionalServiceResource": { + "description": "Resource for a regional service location.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RegionalServiceResource" + } + ], + "properties": { + "sqlDedicatedGatewayEndpoint": { + "readOnly": true, + "type": "string", + "description": "The regional endpoint for SqlDedicatedGateway." + } + } + }, + "DataTransferRegionalServiceResource": { + "description": "Resource for a regional service location.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RegionalServiceResource" + } + ] + }, + "ServiceResourceStatus": { + "type": "string", + "enum": [ + "Creating", + "Running", + "Updating", + "Deleting", + "Error", + "Stopped" + ], + "readOnly": true, + "description": "Describes the status of a service.", + "x-ms-enum": { + "modelAsString": true, + "name": "ServiceStatus" + } + }, + "ServiceResourceInstanceSize": { + "type": "string", + "enum": [ + "Cosmos.D4s", + "Cosmos.D8s", + "Cosmos.D16s" + ], + "description": "Instance type for the service.", + "x-ms-enum": { + "modelAsString": true, + "name": "ServiceSize" + } + }, + "ServiceType": { + "type": "string", + "enum": [ + "SqlDedicatedGateway", + "DataTransfer" + ], + "description": "ServiceType for the service.", + "x-ms-enum": { + "modelAsString": true, + "name": "ServiceType" + } + } + }, + "parameters": { + "accountNameParameter": { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB database account name.", + "minLength": 3, + "maxLength": 50, + "pattern": "^[a-z0-9]+(-[a-z0-9]+)*" + }, + "serviceNameParameter": { + "name": "serviceName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB service name.", + "minLength": 3, + "maxLength": 50 + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/cosmos-db.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/cosmos-db.json new file mode 100644 index 000000000000..79131a7aee13 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/cosmos-db.json @@ -0,0 +1,8586 @@ +{ + "swagger": "2.0", + "info": { + "title": "Cosmos DB", + "description": "Azure Cosmos DB Database Service Resource Provider REST API", + "version": "2021-03-15" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "Impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}": { + "get": { + "operationId": "DatabaseAccounts_Get", + "x-ms-examples": { + "CosmosDBDatabaseAccountGet": { + "$ref": "./examples/CosmosDBDatabaseAccountGet.json" + } + }, + "description": "Retrieves the properties of an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The database account properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/DatabaseAccountGetResults" + } + } + } + }, + "patch": { + "operationId": "DatabaseAccounts_Update", + "x-ms-examples": { + "CosmosDBDatabaseAccountPatch": { + "$ref": "./examples/CosmosDBDatabaseAccountPatch.json" + } + }, + "description": "Updates the properties of an existing Azure Cosmos DB database account.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "updateParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DatabaseAccountUpdateParameters" + }, + "description": "The parameters to provide for the current database account." + } + ], + "responses": { + "200": { + "description": "The database account update operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/DatabaseAccountGetResults" + } + } + } + }, + "put": { + "operationId": "DatabaseAccounts_CreateOrUpdate", + "x-ms-examples": { + "CosmosDBDatabaseAccountCreateMin": { + "$ref": "./examples/CosmosDBDatabaseAccountCreateMin.json" + }, + "CosmosDBDatabaseAccountCreateMax": { + "$ref": "./examples/CosmosDBDatabaseAccountCreateMax.json" + } + }, + "description": "Creates or updates an Azure Cosmos DB database account. The \"Update\" method is preferred when performing updates on an account.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DatabaseAccountCreateUpdateParameters" + }, + "description": "The parameters to provide for the current database account." + } + ], + "responses": { + "200": { + "description": "The database account create or update operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/DatabaseAccountGetResults" + } + } + } + }, + "delete": { + "operationId": "DatabaseAccounts_Delete", + "x-ms-examples": { + "CosmosDBDatabaseAccountDelete": { + "$ref": "./examples/CosmosDBDatabaseAccountDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB database account.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The database account delete operation will complete asynchronously." + }, + "204": { + "description": "The specified account does not exist in the subscription." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/failoverPriorityChange": { + "post": { + "operationId": "DatabaseAccounts_FailoverPriorityChange", + "x-ms-examples": { + "CosmosDBDatabaseAccountFailoverPriorityChange": { + "$ref": "./examples/CosmosDBDatabaseAccountFailoverPriorityChange.json" + } + }, + "description": "Changes the failover priority for the Azure Cosmos DB database account. A failover priority of 0 indicates a write region. The maximum value for a failover priority = (total number of regions - 1). Failover priority values must be unique for each of the regions in which the database account exists.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "failoverParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FailoverPolicies" + }, + "description": "The new failover policies for the database account." + } + ], + "responses": { + "202": { + "description": "Accepted. The failover policy change operation will complete asynchronously." + }, + "204": { + "description": "No Content" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DocumentDB/databaseAccounts": { + "get": { + "operationId": "DatabaseAccounts_List", + "x-ms-examples": { + "CosmosDBDatabaseAccountList": { + "$ref": "./examples/CosmosDBDatabaseAccountList.json" + } + }, + "description": "Lists all the Azure Cosmos DB database accounts available under the subscription.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/DatabaseAccountsListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts": { + "get": { + "operationId": "DatabaseAccounts_ListByResourceGroup", + "x-ms-examples": { + "CosmosDBDatabaseAccountListByResourceGroup": { + "$ref": "./examples/CosmosDBDatabaseAccountListByResourceGroup.json" + } + }, + "description": "Lists all the Azure Cosmos DB database accounts available under the given resource group.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/DatabaseAccountsListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/listKeys": { + "post": { + "operationId": "DatabaseAccounts_ListKeys", + "x-ms-examples": { + "CosmosDBDatabaseAccountListKeys": { + "$ref": "./examples/CosmosDBDatabaseAccountListKeys.json" + } + }, + "description": "Lists the access keys for the specified Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/DatabaseAccountListKeysResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/listConnectionStrings": { + "post": { + "operationId": "DatabaseAccounts_ListConnectionStrings", + "x-ms-examples": { + "CosmosDBDatabaseAccountListConnectionStrings": { + "$ref": "./examples/CosmosDBDatabaseAccountListConnectionStrings.json" + }, + "CosmosDBDatabaseAccountListConnectionStringsMongo": { + "$ref": "./examples/CosmosDBDatabaseAccountListConnectionStringsMongo.json" + } + }, + "description": "Lists the connection strings for the specified Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/DatabaseAccountListConnectionStringsResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/offlineRegion": { + "post": { + "operationId": "DatabaseAccounts_OfflineRegion", + "x-ms-examples": { + "CosmosDBDatabaseAccountOfflineRegion": { + "$ref": "./examples/CosmosDBDatabaseAccountOfflineRegion.json" + } + }, + "description": "Offline the specified region for the specified Azure Cosmos DB database account.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "regionParameterForOffline", + "in": "body", + "required": true, + "description": "Cosmos DB region to offline for the database account.", + "schema": { + "$ref": "#/definitions/RegionForOnlineOffline" + } + } + ], + "responses": { + "200": { + "description": "The offline region operation is completed successfully." + }, + "202": { + "description": "Accepted. The offline region operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/onlineRegion": { + "post": { + "operationId": "DatabaseAccounts_OnlineRegion", + "x-ms-examples": { + "CosmosDBDatabaseAccountOnlineRegion": { + "$ref": "./examples/CosmosDBDatabaseAccountOnlineRegion.json" + } + }, + "description": "Online the specified region for the specified Azure Cosmos DB database account.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "regionParameterForOnline", + "in": "body", + "required": true, + "description": "Cosmos DB region to online for the database account.", + "schema": { + "$ref": "#/definitions/RegionForOnlineOffline" + } + } + ], + "responses": { + "200": { + "description": "The online region operation is completed successfully." + }, + "202": { + "description": "Accepted. The online region operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/readonlykeys": { + "get": { + "operationId": "DatabaseAccounts_GetReadOnlyKeys", + "x-ms-examples": { + "CosmosDBDatabaseAccountListReadOnlyKeys": { + "$ref": "./examples/CosmosDBDatabaseAccountListReadOnlyKeys.json" + } + }, + "description": "Lists the read-only access keys for the specified Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/DatabaseAccountListReadOnlyKeysResult" + } + } + } + }, + "post": { + "operationId": "DatabaseAccounts_ListReadOnlyKeys", + "x-ms-examples": { + "CosmosDBDatabaseAccountListReadOnlyKeys": { + "$ref": "./examples/CosmosDBDatabaseAccountListReadOnlyKeys.json" + } + }, + "description": "Lists the read-only access keys for the specified Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/DatabaseAccountListReadOnlyKeysResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/regenerateKey": { + "post": { + "operationId": "DatabaseAccounts_RegenerateKey", + "x-ms-examples": { + "CosmosDBDatabaseAccountRegenerateKey": { + "$ref": "./examples/CosmosDBDatabaseAccountRegenerateKey.json" + } + }, + "description": "Regenerates an access key for the specified Azure Cosmos DB database account.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "keyToRegenerate", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DatabaseAccountRegenerateKeyParameters" + }, + "description": "The name of the key to regenerate." + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted. The regenerate key operation will complete asynchronously." + } + } + } + }, + "/providers/Microsoft.DocumentDB/databaseAccountNames/{accountName}": { + "head": { + "operationId": "DatabaseAccounts_CheckNameExists", + "x-ms-examples": { + "CosmosDBDatabaseAccountCheckNameExists": { + "$ref": "./examples/CosmosDBDatabaseAccountCheckNameExists.json" + } + }, + "description": "Checks that the Azure Cosmos DB account name already exists. A valid account name may contain only lowercase letters, numbers, and the '-' character, and must be between 3 and 50 characters.", + "parameters": [ + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The account name is valid but is already in use." + }, + "404": { + "description": "Not Found. The account name is available and valid." + } + } + } + }, + "/providers/Microsoft.DocumentDB/operations": { + "get": { + "tags": [ + "Operations" + ], + "description": "Lists all of the available Cosmos DB Resource Provider operations.", + "operationId": "Operations_List", + "x-ms-examples": { + "CosmosDBOperationsList": { + "$ref": "./examples/CosmosDBOperationsList.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/metrics": { + "get": { + "operationId": "DatabaseAccounts_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseAccountGetMetrics": { + "$ref": "./examples/CosmosDBDatabaseAccountGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The metrics for the database account were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/metrics": { + "get": { + "operationId": "Database_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseGetMetrics": { + "$ref": "./examples/CosmosDBDatabaseGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given database account and database.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The metrics for the database account were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/collections/{collectionRid}/metrics": { + "get": { + "operationId": "Collection_ListMetrics", + "x-ms-examples": { + "CosmosDBCollectionGetMetrics": { + "$ref": "./examples/CosmosDBCollectionGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given database account and collection.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/collectionRidParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The metrics for the database account were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/region/{region}/databases/{databaseRid}/collections/{collectionRid}/metrics": { + "get": { + "operationId": "CollectionRegion_ListMetrics", + "x-ms-examples": { + "CosmosDBRegionCollectionGetMetrics": { + "$ref": "./examples/CosmosDBRegionCollectionGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given database account, collection and region.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/regionParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/collectionRidParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The metrics for the database account were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/region/{region}/metrics": { + "get": { + "operationId": "DatabaseAccountRegion_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseAccountRegionGetMetrics": { + "$ref": "./examples/CosmosDBDatabaseAccountRegionGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given database account and region.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/regionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The metrics for the database account were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sourceRegion/{sourceRegion}/targetRegion/{targetRegion}/percentile/metrics": { + "get": { + "operationId": "PercentileSourceTarget_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseAccountRegionGetMetrics": { + "$ref": "./examples/CosmosDBPercentileSourceTargetGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given account, source and target region. This url is only for PBS and Replication Latency data", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/sourceRegionParameter" + }, + { + "$ref": "#/parameters/targetRegionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The percentile metrics for the account, source and target regions were retrieved successfully.", + "schema": { + "$ref": "#/definitions/PercentileMetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/targetRegion/{targetRegion}/percentile/metrics": { + "get": { + "operationId": "PercentileTarget_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseAccountRegionGetMetrics": { + "$ref": "./examples/CosmosDBPercentileTargetGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given account target region. This url is only for PBS and Replication Latency data", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/targetRegionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The percentile metrics for the account and target regions were retrieved successfully.", + "schema": { + "$ref": "#/definitions/PercentileMetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/percentile/metrics": { + "get": { + "operationId": "Percentile_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseAccountRegionGetMetrics": { + "$ref": "./examples/CosmosDBPercentileGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given database account. This url is only for PBS and Replication Latency data", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The percentile metrics for the account were retrieved successfully.", + "schema": { + "$ref": "#/definitions/PercentileMetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/region/{region}/databases/{databaseRid}/collections/{collectionRid}/partitions/metrics": { + "get": { + "operationId": "CollectionPartitionRegion_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseAccountRegionGetMetrics": { + "$ref": "./examples/CosmosDBCollectionPartitionRegionGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given collection and region, split by partition.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/regionParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/collectionRidParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The partition-level metrics for the collection and region were retrieved successfully.", + "schema": { + "$ref": "#/definitions/PartitionMetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/collections/{collectionRid}/partitions/metrics": { + "get": { + "operationId": "CollectionPartition_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseAccountRegionGetMetrics": { + "$ref": "./examples/CosmosDBCollectionPartitionGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given collection, split by partition.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/collectionRidParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The partition-level metrics for the collection were retrieved successfully.", + "schema": { + "$ref": "#/definitions/PartitionMetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/collections/{collectionRid}/partitionKeyRangeId/{partitionKeyRangeId}/metrics": { + "get": { + "operationId": "PartitionKeyRangeId_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseAccountRegionGetMetrics": { + "$ref": "./examples/CosmosDBPKeyRangeIdGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given partition key range id.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/collectionRidParameter" + }, + { + "$ref": "#/parameters/partitionKeyRangeIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The partition-level metrics for the partition key range id were retrieved successfully.", + "schema": { + "$ref": "#/definitions/PartitionMetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/region/{region}/databases/{databaseRid}/collections/{collectionRid}/partitionKeyRangeId/{partitionKeyRangeId}/metrics": { + "get": { + "operationId": "PartitionKeyRangeIdRegion_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseAccountRegionGetMetrics": { + "$ref": "./examples/CosmosDBPKeyRangeIdRegionGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given partition key range id and region.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/regionParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/collectionRidParameter" + }, + { + "$ref": "#/parameters/partitionKeyRangeIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The partition-level metrics for the partition key range id and region were retrieved successfully.", + "schema": { + "$ref": "#/definitions/PartitionMetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/usages": { + "get": { + "operationId": "DatabaseAccounts_ListUsages", + "x-ms-examples": { + "CosmosDBDatabaseAccountGetUsages": { + "$ref": "./examples/CosmosDBDatabaseAccountGetUsages.json" + } + }, + "description": "Retrieves the usages (most recent data) for the given database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/usageFilterParameter" + } + ], + "responses": { + "200": { + "description": "The usages for the database account were retrieved successfully.", + "schema": { + "$ref": "#/definitions/UsagesResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/usages": { + "get": { + "operationId": "Database_ListUsages", + "x-ms-examples": { + "CosmosDBDatabaseGetUsages": { + "$ref": "./examples/CosmosDBDatabaseGetUsages.json" + } + }, + "description": "Retrieves the usages (most recent data) for the given database.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/usageFilterParameter" + } + ], + "responses": { + "200": { + "description": "The usages for the database were retrieved successfully.", + "schema": { + "$ref": "#/definitions/UsagesResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/collections/{collectionRid}/usages": { + "get": { + "operationId": "Collection_ListUsages", + "x-ms-examples": { + "CosmosDBCollectionGetUsages": { + "$ref": "./examples/CosmosDBCollectionGetUsages.json" + } + }, + "description": "Retrieves the usages (most recent storage data) for the given collection.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/collectionRidParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/usageFilterParameter" + } + ], + "responses": { + "200": { + "description": "The usages for the collection were retrieved successfully.", + "schema": { + "$ref": "#/definitions/UsagesResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/collections/{collectionRid}/partitions/usages": { + "get": { + "operationId": "CollectionPartition_ListUsages", + "x-ms-examples": { + "CosmosDBCollectionGetUsages": { + "$ref": "./examples/CosmosDBCollectionPartitionGetUsages.json" + } + }, + "description": "Retrieves the usages (most recent storage data) for the given collection, split by partition.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/collectionRidParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/usageFilterParameter" + } + ], + "responses": { + "200": { + "description": "The usages for the collection, per partition were retrieved successfully.", + "schema": { + "$ref": "#/definitions/PartitionUsagesResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/metricDefinitions": { + "get": { + "operationId": "Database_ListMetricDefinitions", + "x-ms-examples": { + "CosmosDBDatabaseGetMetricDefinitions": { + "$ref": "./examples/CosmosDBDatabaseGetMetricDefinitions.json" + } + }, + "description": "Retrieves metric definitions for the given database.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The metric definitions for the database were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MetricDefinitionsListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/collections/{collectionRid}/metricDefinitions": { + "get": { + "operationId": "Collection_ListMetricDefinitions", + "x-ms-examples": { + "CosmosDBCollectionGetMetricDefinitions": { + "$ref": "./examples/CosmosDBCollectionGetMetricDefinitions.json" + } + }, + "description": "Retrieves metric definitions for the given collection.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/collectionRidParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The metric definitions for the collection were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MetricDefinitionsListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/metricDefinitions": { + "get": { + "operationId": "DatabaseAccounts_ListMetricDefinitions", + "x-ms-examples": { + "CosmosDBDatabaseAccountGetMetricDefinitions": { + "$ref": "./examples/CosmosDBDatabaseAccountGetMetricDefinitions.json" + } + }, + "description": "Retrieves metric definitions for the given database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The metric definitions for the database account were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MetricDefinitionsListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases": { + "get": { + "operationId": "SqlResources_ListSqlDatabases", + "x-ms-examples": { + "CosmosDBSqlDatabaseList": { + "$ref": "./examples/CosmosDBSqlDatabaseList.json" + } + }, + "description": "Lists the SQL databases under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The SQL database properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/SqlDatabaseListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}": { + "get": { + "operationId": "SqlResources_GetSqlDatabase", + "x-ms-examples": { + "CosmosDBSqlDatabaseGet": { + "$ref": "./examples/CosmosDBSqlDatabaseGet.json" + } + }, + "description": "Gets the SQL database under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The SQL database property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/SqlDatabaseGetResults" + } + } + } + }, + "put": { + "operationId": "SqlResources_CreateUpdateSqlDatabase", + "x-ms-examples": { + "CosmosDBSqlDatabaseCreateUpdate": { + "$ref": "./examples/CosmosDBSqlDatabaseCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB SQL database", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateSqlDatabaseParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SqlDatabaseCreateUpdateParameters" + }, + "description": "The parameters to provide for the current SQL database." + } + ], + "responses": { + "202": { + "description": "The SQL database create or update operation will complete asynchronously." + }, + "200": { + "description": "The SQL database create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/SqlDatabaseGetResults" + } + } + } + }, + "delete": { + "operationId": "SqlResources_DeleteSqlDatabase", + "x-ms-examples": { + "CosmosDBSqlDatabaseDelete": { + "$ref": "./examples/CosmosDBSqlDatabaseDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB SQL database.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The SQL database delete operation will complete asynchronously." + }, + "204": { + "description": "The SQL database delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/throughputSettings/default": { + "get": { + "operationId": "SqlResources_GetSqlDatabaseThroughput", + "x-ms-examples": { + "CosmosDBSqlDatabaseThroughputGet": { + "$ref": "./examples/CosmosDBSqlDatabaseThroughputGet.json" + } + }, + "description": "Gets the RUs per second of the SQL database under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The RUs per second of the SQL database was retrieved successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + }, + "put": { + "operationId": "SqlResources_UpdateSqlDatabaseThroughput", + "x-ms-examples": { + "CosmosDBSqlDatabaseThroughputUpdate": { + "$ref": "./examples/CosmosDBSqlDatabaseThroughputUpdate.json" + } + }, + "description": "Update RUs per second of an Azure Cosmos DB SQL database", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "updateThroughputParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThroughputSettingsUpdateParameters" + }, + "description": "The parameters to provide for the RUs per second of the current SQL database." + } + ], + "responses": { + "202": { + "description": "The RUs per second of the SQL database update operation will complete asynchronously." + }, + "200": { + "description": "The RUs per second of the SQL database update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/throughputSettings/default/migrateToAutoscale": { + "post": { + "operationId": "SqlResources_MigrateSqlDatabaseToAutoscale", + "x-ms-examples": { + "CosmosDBSqlDatabaseMigrateToAutoscale": { + "$ref": "./examples/CosmosDBSqlDatabaseMigrateToAutoscale.json" + } + }, + "description": "Migrate an Azure Cosmos DB SQL database from manual throughput to autoscale", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The SQL database migrate operation will complete asynchronously." + }, + "200": { + "description": "The SQL database migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponseUpdatedFormat" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/throughputSettings/default/migrateToManualThroughput": { + "post": { + "operationId": "SqlResources_MigrateSqlDatabaseToManualThroughput", + "x-ms-examples": { + "CosmosDBSqlDatabaseMigrateToManualThroughput": { + "$ref": "./examples/CosmosDBSqlDatabaseMigrateToManualThroughput.json" + } + }, + "description": "Migrate an Azure Cosmos DB SQL database from autoscale to manual throughput", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The SQL database migrate operation will complete asynchronously." + }, + "200": { + "description": "The SQL database migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponseUpdatedFormat" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers": { + "get": { + "operationId": "SqlResources_ListSqlContainers", + "x-ms-examples": { + "CosmosDBSqlContainerList": { + "$ref": "./examples/CosmosDBSqlContainerList.json" + } + }, + "description": "Lists the SQL container under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The SQL container properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/SqlContainerListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}": { + "get": { + "operationId": "SqlResources_GetSqlContainer", + "x-ms-examples": { + "CosmosDBSqlContainerGet": { + "$ref": "./examples/CosmosDBSqlContainerGet.json" + } + }, + "description": "Gets the SQL container under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The SQL container property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/SqlContainerGetResults" + } + } + } + }, + "put": { + "operationId": "SqlResources_CreateUpdateSqlContainer", + "x-ms-examples": { + "CosmosDBSqlContainerCreateUpdate": { + "$ref": "./examples/CosmosDBSqlContainerCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB SQL container", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateSqlContainerParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SqlContainerCreateUpdateParameters" + }, + "description": "The parameters to provide for the current SQL container." + } + ], + "responses": { + "202": { + "description": "The SQL container create or update operation will complete asynchronously." + }, + "200": { + "description": "The SQL container create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/SqlContainerGetResults" + } + } + } + }, + "delete": { + "operationId": "SqlResources_DeleteSqlContainer", + "x-ms-examples": { + "CosmosDBSqlContainerDelete": { + "$ref": "./examples/CosmosDBSqlContainerDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB SQL container.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The SQL container delete operation will complete asynchronously." + }, + "204": { + "description": "The SQL container delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/throughputSettings/default": { + "get": { + "operationId": "SqlResources_GetSqlContainerThroughput", + "x-ms-examples": { + "CosmosDBSqlContainerThroughputGet": { + "$ref": "./examples/CosmosDBSqlContainerThroughputGet.json" + } + }, + "description": "Gets the RUs per second of the SQL container under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The RUs per second of the SQL container was retrieved successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + }, + "put": { + "operationId": "SqlResources_UpdateSqlContainerThroughput", + "x-ms-examples": { + "CosmosDBSqlContainerThroughputUpdate": { + "$ref": "./examples/CosmosDBSqlContainerThroughputUpdate.json" + } + }, + "description": "Update RUs per second of an Azure Cosmos DB SQL container", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "updateThroughputParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThroughputSettingsUpdateParameters" + }, + "description": "The parameters to provide for the RUs per second of the current SQL container." + } + ], + "responses": { + "202": { + "description": "The RUs per second of the SQL container update operation will complete asynchronously." + }, + "200": { + "description": "The RUs per second of the SQL container update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/throughputSettings/default/migrateToAutoscale": { + "post": { + "operationId": "SqlResources_MigrateSqlContainerToAutoscale", + "x-ms-examples": { + "CosmosDBSqlContainerMigrateToAutoscale": { + "$ref": "./examples/CosmosDBSqlContainerMigrateToAutoscale.json" + } + }, + "description": "Migrate an Azure Cosmos DB SQL container from manual throughput to autoscale", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The SQL container migrate operation will complete asynchronously." + }, + "200": { + "description": "The SQL container migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponseUpdatedFormat" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/throughputSettings/default/migrateToManualThroughput": { + "post": { + "operationId": "SqlResources_MigrateSqlContainerToManualThroughput", + "x-ms-examples": { + "CosmosDBSqlContainerMigrateToManualThroughput": { + "$ref": "./examples/CosmosDBSqlContainerMigrateToManualThroughput.json" + } + }, + "description": "Migrate an Azure Cosmos DB SQL container from autoscale to manual throughput", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The SQL container migrate operation will complete asynchronously." + }, + "200": { + "description": "The SQL container migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponseUpdatedFormat" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/storedProcedures": { + "get": { + "operationId": "SqlResources_ListSqlStoredProcedures", + "x-ms-examples": { + "CosmosDBSqlStoredProcedureList": { + "$ref": "./examples/CosmosDBSqlStoredProcedureList.json" + } + }, + "description": "Lists the SQL storedProcedure under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The SQL stored procedure properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/SqlStoredProcedureListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponseUpdatedFormat" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/storedProcedures/{storedProcedureName}": { + "get": { + "operationId": "SqlResources_GetSqlStoredProcedure", + "x-ms-examples": { + "CosmosDBSqlStoredProcedureGet": { + "$ref": "./examples/CosmosDBSqlStoredProcedureGet.json" + } + }, + "description": "Gets the SQL storedProcedure under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/storedProcedureNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The SQL storedProcedure property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/SqlStoredProcedureGetResults" + } + } + } + }, + "put": { + "operationId": "SqlResources_CreateUpdateSqlStoredProcedure", + "x-ms-examples": { + "CosmosDBSqlStoredProcedureCreateUpdate": { + "$ref": "./examples/CosmosDBSqlStoredProcedureCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB SQL storedProcedure", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/storedProcedureNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateSqlStoredProcedureParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SqlStoredProcedureCreateUpdateParameters" + }, + "description": "The parameters to provide for the current SQL storedProcedure." + } + ], + "responses": { + "202": { + "description": "The SQL storedProcedure create or update operation will complete asynchronously." + }, + "200": { + "description": "The SQL storedProcedure create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/SqlStoredProcedureGetResults" + } + } + } + }, + "delete": { + "operationId": "SqlResources_DeleteSqlStoredProcedure", + "x-ms-examples": { + "CosmosDBSqlStoredProcedureDelete": { + "$ref": "./examples/CosmosDBSqlStoredProcedureDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB SQL storedProcedure.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/storedProcedureNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The SQL storedProcedure delete operation will complete asynchronously." + }, + "204": { + "description": "The SQL storedProcedure delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/userDefinedFunctions": { + "get": { + "operationId": "SqlResources_ListSqlUserDefinedFunctions", + "x-ms-examples": { + "CosmosDBSqlUserDefinedFunctionList": { + "$ref": "./examples/CosmosDBSqlUserDefinedFunctionList.json" + } + }, + "description": "Lists the SQL userDefinedFunction under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The SQL userDefinedFunction properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/SqlUserDefinedFunctionListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/userDefinedFunctions/{userDefinedFunctionName}": { + "get": { + "operationId": "SqlResources_GetSqlUserDefinedFunction", + "x-ms-examples": { + "CosmosDBSqlUserDefinedFunctionGet": { + "$ref": "./examples/CosmosDBSqlUserDefinedFunctionGet.json" + } + }, + "description": "Gets the SQL userDefinedFunction under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/userDefinedFunctionNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The SQL userDefinedFunction property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/SqlUserDefinedFunctionGetResults" + } + } + } + }, + "put": { + "operationId": "SqlResources_CreateUpdateSqlUserDefinedFunction", + "x-ms-examples": { + "CosmosDBSqlUserDefinedFunctionCreateUpdate": { + "$ref": "./examples/CosmosDBSqlUserDefinedFunctionCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB SQL userDefinedFunction", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/userDefinedFunctionNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateSqlUserDefinedFunctionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SqlUserDefinedFunctionCreateUpdateParameters" + }, + "description": "The parameters to provide for the current SQL userDefinedFunction." + } + ], + "responses": { + "202": { + "description": "The SQL userDefinedFunction create or update operation will complete asynchronously." + }, + "200": { + "description": "The SQL userDefinedFunction create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/SqlUserDefinedFunctionGetResults" + } + } + } + }, + "delete": { + "operationId": "SqlResources_DeleteSqlUserDefinedFunction", + "x-ms-examples": { + "CosmosDBSqlUserDefinedFunctionDelete": { + "$ref": "./examples/CosmosDBSqlUserDefinedFunctionDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB SQL userDefinedFunction.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/userDefinedFunctionNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The SQL userDefinedFunction delete operation will complete asynchronously." + }, + "204": { + "description": "The SQL userDefinedFunction delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/triggers": { + "get": { + "operationId": "SqlResources_ListSqlTriggers", + "x-ms-examples": { + "CosmosDBSqlTriggerList": { + "$ref": "./examples/CosmosDBSqlTriggerList.json" + } + }, + "description": "Lists the SQL trigger under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The SQL trigger properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/SqlTriggerListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/triggers/{triggerName}": { + "get": { + "operationId": "SqlResources_GetSqlTrigger", + "x-ms-examples": { + "CosmosDBSqlTriggerGet": { + "$ref": "./examples/CosmosDBSqlTriggerGet.json" + } + }, + "description": "Gets the SQL trigger under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/triggerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The SQL trigger property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/SqlTriggerGetResults" + } + } + } + }, + "put": { + "operationId": "SqlResources_CreateUpdateSqlTrigger", + "x-ms-examples": { + "CosmosDBSqlTriggerCreateUpdate": { + "$ref": "./examples/CosmosDBSqlTriggerCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB SQL trigger", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/triggerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateSqlTriggerParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SqlTriggerCreateUpdateParameters" + }, + "description": "The parameters to provide for the current SQL trigger." + } + ], + "responses": { + "202": { + "description": "The SQL trigger create or update operation will complete asynchronously." + }, + "200": { + "description": "The SQL trigger create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/SqlTriggerGetResults" + } + } + } + }, + "delete": { + "operationId": "SqlResources_DeleteSqlTrigger", + "x-ms-examples": { + "CosmosDBSqlTriggerDelete": { + "$ref": "./examples/CosmosDBSqlTriggerDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB SQL trigger.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/triggerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The SQL trigger delete operation will complete asynchronously." + }, + "204": { + "description": "The SQL trigger delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases": { + "get": { + "operationId": "MongoDBResources_ListMongoDBDatabases", + "x-ms-examples": { + "CosmosDBMongoDBDatabaseList": { + "$ref": "./examples/CosmosDBMongoDBDatabaseList.json" + } + }, + "description": "Lists the MongoDB databases under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The MongoDB database properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MongoDBDatabaseListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}": { + "get": { + "operationId": "MongoDBResources_GetMongoDBDatabase", + "x-ms-examples": { + "CosmosDBMongoDBDatabaseGet": { + "$ref": "./examples/CosmosDBMongoDBDatabaseGet.json" + } + }, + "description": "Gets the MongoDB databases under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The MongoDB database property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/MongoDBDatabaseGetResults" + } + } + } + }, + "put": { + "operationId": "MongoDBResources_CreateUpdateMongoDBDatabase", + "x-ms-examples": { + "CosmosDBMongoDBDatabaseCreateUpdate": { + "$ref": "./examples/CosmosDBMongoDBDatabaseCreateUpdate.json" + } + }, + "description": "Create or updates Azure Cosmos DB MongoDB database", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateMongoDBDatabaseParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/MongoDBDatabaseCreateUpdateParameters" + }, + "description": "The parameters to provide for the current MongoDB database." + } + ], + "responses": { + "202": { + "description": "The MongoDB database create or update operation will complete asynchronously." + }, + "200": { + "description": "The MongoDB database create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/MongoDBDatabaseGetResults" + } + } + } + }, + "delete": { + "operationId": "MongoDBResources_DeleteMongoDBDatabase", + "x-ms-examples": { + "CosmosDBMongoDBDatabaseDelete": { + "$ref": "./examples/CosmosDBMongoDBDatabaseDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB MongoDB database.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The MongoDB database delete operation will complete asynchronously." + }, + "204": { + "description": "The MongoDB database delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}/throughputSettings/default": { + "get": { + "operationId": "MongoDBResources_GetMongoDBDatabaseThroughput", + "x-ms-examples": { + "CosmosDBMongoDBDatabaseThroughputGet": { + "$ref": "./examples/CosmosDBMongoDBDatabaseThroughputGet.json" + } + }, + "description": "Gets the RUs per second of the MongoDB database under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The RUs per second of the MongoDB database was retrieved successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + }, + "put": { + "operationId": "MongoDBResources_UpdateMongoDBDatabaseThroughput", + "x-ms-examples": { + "CosmosDBMongoDBDatabaseThroughputUpdate": { + "$ref": "./examples/CosmosDBMongoDBDatabaseThroughputUpdate.json" + } + }, + "description": "Update RUs per second of the an Azure Cosmos DB MongoDB database", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "updateThroughputParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThroughputSettingsUpdateParameters" + }, + "description": "The RUs per second of the parameters to provide for the current MongoDB database." + } + ], + "responses": { + "202": { + "description": "The RUs per second of the MongoDB database update operation will complete asynchronously." + }, + "200": { + "description": "The RUs per second of the MongoDB database update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponseUpdatedFormat" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}/throughputSettings/default/migrateToAutoscale": { + "post": { + "operationId": "MongoDBResources_MigrateMongoDBDatabaseToAutoscale", + "x-ms-examples": { + "CosmosDBMongoDBDatabaseMigrateToAutoscale": { + "$ref": "./examples/CosmosDBMongoDBDatabaseMigrateToAutoscale.json" + } + }, + "description": "Migrate an Azure Cosmos DB MongoDB database from manual throughput to autoscale", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The MongoDB database migrate operation will complete asynchronously." + }, + "200": { + "description": "The MongoDB database migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponseUpdatedFormat" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}/throughputSettings/default/migrateToManualThroughput": { + "post": { + "operationId": "MongoDBResources_MigrateMongoDBDatabaseToManualThroughput", + "x-ms-examples": { + "CosmosDBMongoDBDatabaseMigrateToManualThroughput": { + "$ref": "./examples/CosmosDBMongoDBDatabaseMigrateToManualThroughput.json" + } + }, + "description": "Migrate an Azure Cosmos DB MongoDB database from autoscale to manual throughput", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The MongoDB database migrate operation will complete asynchronously." + }, + "200": { + "description": "The MongoDB database migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponseUpdatedFormat" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}/collections": { + "get": { + "operationId": "MongoDBResources_ListMongoDBCollections", + "x-ms-examples": { + "CosmosDBMongoDBCollectionList": { + "$ref": "./examples/CosmosDBMongoDBCollectionList.json" + } + }, + "description": "Lists the MongoDB collection under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The MongoDB collection properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MongoDBCollectionListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}/collections/{collectionName}": { + "get": { + "operationId": "MongoDBResources_GetMongoDBCollection", + "x-ms-examples": { + "CosmosDBMongoDBCollectionGet": { + "$ref": "./examples/CosmosDBMongoDBCollectionGet.json" + } + }, + "description": "Gets the MongoDB collection under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/collectionNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The MongoDB collection property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/MongoDBCollectionGetResults" + } + } + } + }, + "put": { + "operationId": "MongoDBResources_CreateUpdateMongoDBCollection", + "x-ms-examples": { + "CosmosDBMongoDBCollectionCreateUpdate": { + "$ref": "./examples/CosmosDBMongoDBCollectionCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB MongoDB Collection", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/collectionNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateMongoDBCollectionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/MongoDBCollectionCreateUpdateParameters" + }, + "description": "The parameters to provide for the current MongoDB Collection." + } + ], + "responses": { + "202": { + "description": "The MongoDB Collection create or update operation will complete asynchronously." + }, + "200": { + "description": "The MongoDB Collection create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/MongoDBCollectionGetResults" + } + } + } + }, + "delete": { + "operationId": "MongoDBResources_DeleteMongoDBCollection", + "x-ms-examples": { + "CosmosDBMongoDBCollectionDelete": { + "$ref": "./examples/CosmosDBMongoDBCollectionDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB MongoDB Collection.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/collectionNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The MongoDB collection delete operation will complete asynchronously." + }, + "204": { + "description": "The MongoDB collection delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}/collections/{collectionName}/throughputSettings/default": { + "get": { + "operationId": "MongoDBResources_GetMongoDBCollectionThroughput", + "x-ms-examples": { + "CosmosDBMongoDBCollectionThroughputGet": { + "$ref": "./examples/CosmosDBMongoDBCollectionThroughputGet.json" + } + }, + "description": "Gets the RUs per second of the MongoDB collection under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/collectionNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The RUs per second of the MongoDB collection was retrieved successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + }, + "put": { + "operationId": "MongoDBResources_UpdateMongoDBCollectionThroughput", + "x-ms-examples": { + "CosmosDBMongoDBCollectionThroughputUpdate": { + "$ref": "./examples/CosmosDBMongoDBCollectionThroughputUpdate.json" + } + }, + "description": "Update the RUs per second of an Azure Cosmos DB MongoDB collection", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/collectionNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "updateThroughputParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThroughputSettingsUpdateParameters" + }, + "description": "The RUs per second of the parameters to provide for the current MongoDB collection." + } + ], + "responses": { + "202": { + "description": "The RUs per second of the MongoDB collection update operation will complete asynchronously." + }, + "200": { + "description": "The RUs per second of the MongoDB collection update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}/collections/{collectionName}/throughputSettings/default/migrateToAutoscale": { + "post": { + "operationId": "MongoDBResources_MigrateMongoDBCollectionToAutoscale", + "x-ms-examples": { + "CosmosDBMongoDBCollectionMigrateToAutoscale": { + "$ref": "./examples/CosmosDBMongoDBCollectionMigrateToAutoscale.json" + } + }, + "description": "Migrate an Azure Cosmos DB MongoDB collection from manual throughput to autoscale", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/collectionNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The MongoDB collection migrate operation will complete asynchronously." + }, + "200": { + "description": "The MongoDB collection migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponseUpdatedFormat" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}/collections/{collectionName}/throughputSettings/default/migrateToManualThroughput": { + "post": { + "operationId": "MongoDBResources_MigrateMongoDBCollectionToManualThroughput", + "x-ms-examples": { + "CosmosDBMongoDBCollectionMigrateToManualThroughput": { + "$ref": "./examples/CosmosDBMongoDBCollectionMigrateToManualThroughput.json" + } + }, + "description": "Migrate an Azure Cosmos DB MongoDB collection from autoscale to manual throughput", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/collectionNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The MongoDB collection migrate operation will complete asynchronously." + }, + "200": { + "description": "The MongoDB collection migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponseUpdatedFormat" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/tables": { + "get": { + "operationId": "TableResources_ListTables", + "x-ms-examples": { + "CosmosDBTableList": { + "$ref": "./examples/CosmosDBTableList.json" + } + }, + "description": "Lists the Tables under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Table properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/TableListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/tables/{tableName}": { + "get": { + "operationId": "TableResources_GetTable", + "x-ms-examples": { + "CosmosDBTableGet": { + "$ref": "./examples/CosmosDBTableGet.json" + } + }, + "description": "Gets the Tables under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Table property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/TableGetResults" + } + } + } + }, + "put": { + "operationId": "TableResources_CreateUpdateTable", + "x-ms-examples": { + "CosmosDBTableReplace": { + "$ref": "./examples/CosmosDBTableCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB Table", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateTableParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TableCreateUpdateParameters" + }, + "description": "The parameters to provide for the current Table." + } + ], + "responses": { + "202": { + "description": "The Table create or update operation will complete asynchronously." + }, + "200": { + "description": "The Table create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/TableGetResults" + } + } + } + }, + "delete": { + "operationId": "TableResources_DeleteTable", + "x-ms-examples": { + "CosmosDBTableDelete": { + "$ref": "./examples/CosmosDBTableDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB Table.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Table delete operation will complete asynchronously." + }, + "204": { + "description": "The Table delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/tables/{tableName}/throughputSettings/default": { + "get": { + "operationId": "TableResources_GetTableThroughput", + "x-ms-examples": { + "CosmosDBTableThroughputGet": { + "$ref": "./examples/CosmosDBTableThroughputGet.json" + } + }, + "description": "Gets the RUs per second of the Table under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The RUs per second of the Table was retrieved successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + }, + "put": { + "operationId": "TableResources_UpdateTableThroughput", + "x-ms-examples": { + "CosmosDBTableThroughputUpdate": { + "$ref": "./examples/CosmosDBTableThroughputUpdate.json" + } + }, + "description": "Update RUs per second of an Azure Cosmos DB Table", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "updateThroughputParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThroughputSettingsUpdateParameters" + }, + "description": "The parameters to provide for the RUs per second of the current Table." + } + ], + "responses": { + "202": { + "description": "The RUs per second of the Table update operation will complete asynchronously." + }, + "200": { + "description": "The RUs per second of the Table update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/tables/{tableName}/throughputSettings/default/migrateToAutoscale": { + "post": { + "operationId": "TableResources_MigrateTableToAutoscale", + "x-ms-examples": { + "CosmosDBTableMigrateToAutoscale": { + "$ref": "./examples/CosmosDBTableMigrateToAutoscale.json" + } + }, + "description": "Migrate an Azure Cosmos DB Table from manual throughput to autoscale", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Table migrate operation will complete asynchronously." + }, + "200": { + "description": "The Table migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponseUpdatedFormat" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/tables/{tableName}/throughputSettings/default/migrateToManualThroughput": { + "post": { + "operationId": "TableResources_MigrateTableToManualThroughput", + "x-ms-examples": { + "CosmosDBTableMigrateToManualThroughput": { + "$ref": "./examples/CosmosDBTableMigrateToManualThroughput.json" + } + }, + "description": "Migrate an Azure Cosmos DB Table from autoscale to manual throughput", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Table migrate operation will complete asynchronously." + }, + "200": { + "description": "The Table migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponseUpdatedFormat" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces": { + "get": { + "operationId": "CassandraResources_ListCassandraKeyspaces", + "x-ms-examples": { + "CosmosDBCassandraKeyspaceList": { + "$ref": "./examples/CosmosDBCassandraKeyspaceList.json" + } + }, + "description": "Lists the Cassandra keyspaces under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Cassandra keyspace properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/CassandraKeyspaceListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}": { + "get": { + "operationId": "CassandraResources_GetCassandraKeyspace", + "x-ms-examples": { + "CosmosDBCassandraKeyspaceGet": { + "$ref": "./examples/CosmosDBCassandraKeyspaceGet.json" + } + }, + "description": "Gets the Cassandra keyspaces under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Cassandra keyspace property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/CassandraKeyspaceGetResults" + } + } + } + }, + "put": { + "operationId": "CassandraResources_CreateUpdateCassandraKeyspace", + "x-ms-examples": { + "CosmosDBCassandraKeyspaceCreateUpdate": { + "$ref": "./examples/CosmosDBCassandraKeyspaceCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB Cassandra keyspace", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateCassandraKeyspaceParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CassandraKeyspaceCreateUpdateParameters" + }, + "description": "The parameters to provide for the current Cassandra keyspace." + } + ], + "responses": { + "202": { + "description": "The Cassandra keyspace create or update operation will complete asynchronously." + }, + "200": { + "description": "The Cassandra keyspace create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/CassandraKeyspaceGetResults" + } + } + } + }, + "delete": { + "operationId": "CassandraResources_DeleteCassandraKeyspace", + "x-ms-examples": { + "CosmosDBCassandraKeyspaceDelete": { + "$ref": "./examples/CosmosDBCassandraKeyspaceDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB Cassandra keyspace.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Cassandra keyspace delete operation will complete asynchronously." + }, + "204": { + "description": "The Cassandra keyspace delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/throughputSettings/default": { + "get": { + "operationId": "CassandraResources_GetCassandraKeyspaceThroughput", + "x-ms-examples": { + "CosmosDBCassandraKeyspaceThroughputGet": { + "$ref": "./examples/CosmosDBCassandraKeyspaceThroughputGet.json" + } + }, + "description": "Gets the RUs per second of the Cassandra Keyspace under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The RUs per second of the Cassandra Keyspace was retrieved successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + }, + "put": { + "operationId": "CassandraResources_UpdateCassandraKeyspaceThroughput", + "x-ms-examples": { + "CosmosDBCassandraKeyspaceThroughputUpdate": { + "$ref": "./examples/CosmosDBCassandraKeyspaceThroughputUpdate.json" + } + }, + "description": "Update RUs per second of an Azure Cosmos DB Cassandra Keyspace", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "updateThroughputParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThroughputSettingsUpdateParameters" + }, + "description": "The RUs per second of the parameters to provide for the current Cassandra Keyspace." + } + ], + "responses": { + "202": { + "description": "The RUs per second of the Cassandra Keyspace update operation will complete asynchronously." + }, + "200": { + "description": "The RUs per second of the Cassandra Keyspace update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/throughputSettings/default/migrateToAutoscale": { + "post": { + "operationId": "CassandraResources_MigrateCassandraKeyspaceToAutoscale", + "x-ms-examples": { + "CosmosDBCassandraKeyspaceMigrateToAutoscale": { + "$ref": "./examples/CosmosDBCassandraKeyspaceMigrateToAutoscale.json" + } + }, + "description": "Migrate an Azure Cosmos DB Cassandra Keyspace from manual throughput to autoscale", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Cassandra Keyspace migrate operation will complete asynchronously." + }, + "200": { + "description": "The Cassandra Keyspace migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponseUpdatedFormat" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/throughputSettings/default/migrateToManualThroughput": { + "post": { + "operationId": "CassandraResources_MigrateCassandraKeyspaceToManualThroughput", + "x-ms-examples": { + "CosmosDBCassandraKeyspaceMigrateToManualThroughput": { + "$ref": "./examples/CosmosDBCassandraKeyspaceMigrateToManualThroughput.json" + } + }, + "description": "Migrate an Azure Cosmos DB Cassandra Keyspace from autoscale to manual throughput", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Cassandra Keyspace migrate operation will complete asynchronously." + }, + "200": { + "description": "The Cassandra Keyspace migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponseUpdatedFormat" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/tables": { + "get": { + "operationId": "CassandraResources_ListCassandraTables", + "x-ms-examples": { + "CosmosDBCassandraTableList": { + "$ref": "./examples/CosmosDBCassandraTableList.json" + } + }, + "description": "Lists the Cassandra table under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Cassandra table properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/CassandraTableListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/tables/{tableName}": { + "get": { + "operationId": "CassandraResources_GetCassandraTable", + "x-ms-examples": { + "CosmosDBCassandraTableGet": { + "$ref": "./examples/CosmosDBCassandraTableGet.json" + } + }, + "description": "Gets the Cassandra table under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Cassandra table property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/CassandraTableGetResults" + } + } + } + }, + "put": { + "operationId": "CassandraResources_CreateUpdateCassandraTable", + "x-ms-examples": { + "CosmosDBCassandraTableCreateUpdate": { + "$ref": "./examples/CosmosDBCassandraTableCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB Cassandra Table", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateCassandraTableParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CassandraTableCreateUpdateParameters" + }, + "description": "The parameters to provide for the current Cassandra Table." + } + ], + "responses": { + "202": { + "description": "The Cassandra Table create or update operation will complete asynchronously." + }, + "200": { + "description": "The Cassandra Table create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/CassandraTableGetResults" + } + } + } + }, + "delete": { + "operationId": "CassandraResources_DeleteCassandraTable", + "x-ms-examples": { + "CosmosDBCassandraTableDelete": { + "$ref": "./examples/CosmosDBCassandraTableDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB Cassandra table.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Cassandra table delete operation will complete asynchronously." + }, + "204": { + "description": "The Cassandra table delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/tables/{tableName}/throughputSettings/default": { + "get": { + "operationId": "CassandraResources_GetCassandraTableThroughput", + "x-ms-examples": { + "CosmosDBCassandraTableThroughputGet": { + "$ref": "./examples/CosmosDBCassandraTableThroughputGet.json" + } + }, + "description": "Gets the RUs per second of the Cassandra table under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The RUs per second of the Cassandra table was retrieved successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + }, + "put": { + "operationId": "CassandraResources_UpdateCassandraTableThroughput", + "x-ms-examples": { + "CosmosDBCassandraTableThroughputUpdate": { + "$ref": "./examples/CosmosDBCassandraTableThroughputUpdate.json" + } + }, + "description": "Update RUs per second of an Azure Cosmos DB Cassandra table", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "updateThroughputParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThroughputSettingsUpdateParameters" + }, + "description": "The RUs per second of the parameters to provide for the current Cassandra table." + } + ], + "responses": { + "202": { + "description": "The RUs per second of the Cassandra table update operation will complete asynchronously." + }, + "200": { + "description": "The RUs per second of the Cassandra table update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/tables/{tableName}/throughputSettings/default/migrateToAutoscale": { + "post": { + "operationId": "CassandraResources_MigrateCassandraTableToAutoscale", + "x-ms-examples": { + "CosmosDBCassandraTableMigrateToAutoscale": { + "$ref": "./examples/CosmosDBCassandraTableMigrateToAutoscale.json" + } + }, + "description": "Migrate an Azure Cosmos DB Cassandra table from manual throughput to autoscale", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Cassandra table migrate operation will complete asynchronously." + }, + "200": { + "description": "The Cassandra table migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponseUpdatedFormat" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/tables/{tableName}/throughputSettings/default/migrateToManualThroughput": { + "post": { + "operationId": "CassandraResources_MigrateCassandraTableToManualThroughput", + "x-ms-examples": { + "CosmosDBCassandraTableMigrateToManualThroughput": { + "$ref": "./examples/CosmosDBCassandraTableMigrateToManualThroughput.json" + } + }, + "description": "Migrate an Azure Cosmos DB Cassandra table from autoscale to manual throughput", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Cassandra table migrate operation will complete asynchronously." + }, + "200": { + "description": "The Cassandra table migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponseUpdatedFormat" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases": { + "get": { + "operationId": "GremlinResources_ListGremlinDatabases", + "x-ms-examples": { + "CosmosDBGremlinDatabaseList": { + "$ref": "./examples/CosmosDBGremlinDatabaseList.json" + } + }, + "description": "Lists the Gremlin databases under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Gremlin database properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/GremlinDatabaseListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases/{databaseName}": { + "get": { + "operationId": "GremlinResources_GetGremlinDatabase", + "x-ms-examples": { + "CosmosDBGremlinDatabaseGet": { + "$ref": "./examples/CosmosDBGremlinDatabaseGet.json" + } + }, + "description": "Gets the Gremlin databases under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Gremlin database property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/GremlinDatabaseGetResults" + } + } + } + }, + "put": { + "operationId": "GremlinResources_CreateUpdateGremlinDatabase", + "x-ms-examples": { + "CosmosDBGremlinDatabaseCreateUpdate": { + "$ref": "./examples/CosmosDBGremlinDatabaseCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB Gremlin database", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateGremlinDatabaseParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GremlinDatabaseCreateUpdateParameters" + }, + "description": "The parameters to provide for the current Gremlin database." + } + ], + "responses": { + "202": { + "description": "The Gremlin database create or update operation will complete asynchronously." + }, + "200": { + "description": "The Gremlin database create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/GremlinDatabaseGetResults" + } + } + } + }, + "delete": { + "operationId": "GremlinResources_DeleteGremlinDatabase", + "x-ms-examples": { + "CosmosDBGremlinDatabaseDelete": { + "$ref": "./examples/CosmosDBGremlinDatabaseDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB Gremlin database.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Gremlin database delete operation will complete asynchronously." + }, + "204": { + "description": "The Gremlin database delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases/{databaseName}/throughputSettings/default": { + "get": { + "operationId": "GremlinResources_GetGremlinDatabaseThroughput", + "x-ms-examples": { + "CosmosDBGremlinDatabaseThroughputGet": { + "$ref": "./examples/CosmosDBGremlinDatabaseThroughputGet.json" + } + }, + "description": "Gets the RUs per second of the Gremlin database under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The RUs per second of the Gremlin database was retrieved successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + }, + "put": { + "operationId": "GremlinResources_UpdateGremlinDatabaseThroughput", + "x-ms-examples": { + "CosmosDBGremlinDatabaseThroughputUpdate": { + "$ref": "./examples/CosmosDBGremlinDatabaseThroughputUpdate.json" + } + }, + "description": "Update RUs per second of an Azure Cosmos DB Gremlin database", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "updateThroughputParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThroughputSettingsUpdateParameters" + }, + "description": "The RUs per second of the parameters to provide for the current Gremlin database." + } + ], + "responses": { + "202": { + "description": "The RUs per second of the Gremlin database update operation will complete asynchronously." + }, + "200": { + "description": "The RUs per second of the Gremlin database update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases/{databaseName}/throughputSettings/default/migrateToAutoscale": { + "post": { + "operationId": "GremlinResources_MigrateGremlinDatabaseToAutoscale", + "x-ms-examples": { + "CosmosDBGremlinDatabaseMigrateToAutoscale": { + "$ref": "./examples/CosmosDBGremlinDatabaseMigrateToAutoscale.json" + } + }, + "description": "Migrate an Azure Cosmos DB Gremlin database from manual throughput to autoscale", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Gremlin database migrate operation will complete asynchronously." + }, + "200": { + "description": "The Gremlin database migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponseUpdatedFormat" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases/{databaseName}/throughputSettings/default/migrateToManualThroughput": { + "post": { + "operationId": "GremlinResources_MigrateGremlinDatabaseToManualThroughput", + "x-ms-examples": { + "CosmosDBGremlinDatabaseMigrateToManualThroughput": { + "$ref": "./examples/CosmosDBGremlinDatabaseMigrateToManualThroughput.json" + } + }, + "description": "Migrate an Azure Cosmos DB Gremlin database from autoscale to manual throughput", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Gremlin database migrate operation will complete asynchronously." + }, + "200": { + "description": "The Gremlin database migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponseUpdatedFormat" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases/{databaseName}/graphs": { + "get": { + "operationId": "GremlinResources_ListGremlinGraphs", + "x-ms-examples": { + "CosmosDBGremlinGraphList": { + "$ref": "./examples/CosmosDBGremlinGraphList.json" + } + }, + "description": "Lists the Gremlin graph under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Gremlin graph properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/GremlinGraphListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases/{databaseName}/graphs/{graphName}": { + "get": { + "operationId": "GremlinResources_GetGremlinGraph", + "x-ms-examples": { + "CosmosDBGremlinGraphGet": { + "$ref": "./examples/CosmosDBGremlinGraphGet.json" + } + }, + "description": "Gets the Gremlin graph under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/graphNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Gremlin graph property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/GremlinGraphGetResults" + } + } + } + }, + "put": { + "operationId": "GremlinResources_CreateUpdateGremlinGraph", + "x-ms-examples": { + "CosmosDBGremlinGraphCreateUpdate": { + "$ref": "./examples/CosmosDBGremlinGraphCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB Gremlin graph", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/graphNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateGremlinGraphParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GremlinGraphCreateUpdateParameters" + }, + "description": "The parameters to provide for the current Gremlin graph." + } + ], + "responses": { + "202": { + "description": "The Gremlin graph create or update operation will complete asynchronously." + }, + "200": { + "description": "The Gremlin graph create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/GremlinGraphGetResults" + } + } + } + }, + "delete": { + "operationId": "GremlinResources_DeleteGremlinGraph", + "x-ms-examples": { + "CosmosDBGremlinGraphDelete": { + "$ref": "./examples/CosmosDBGremlinGraphDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB Gremlin graph.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/graphNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Gremlin graph delete operation will complete asynchronously." + }, + "204": { + "description": "The Gremlin graph delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases/{databaseName}/graphs/{graphName}/throughputSettings/default": { + "get": { + "operationId": "GremlinResources_GetGremlinGraphThroughput", + "x-ms-examples": { + "CosmosDBGremlinGraphThroughputGet": { + "$ref": "./examples/CosmosDBGremlinGraphThroughputGet.json" + } + }, + "description": "Gets the Gremlin graph throughput under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/graphNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The RUs per second of the Gremlin graph was retrieved successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + }, + "put": { + "operationId": "GremlinResources_UpdateGremlinGraphThroughput", + "x-ms-examples": { + "CosmosDBGremlinGraphThroughputUpdate": { + "$ref": "./examples/CosmosDBGremlinGraphThroughputUpdate.json" + } + }, + "description": "Update RUs per second of an Azure Cosmos DB Gremlin graph", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/graphNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "updateThroughputParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThroughputSettingsUpdateParameters" + }, + "description": "The RUs per second of the parameters to provide for the current Gremlin graph." + } + ], + "responses": { + "202": { + "description": "The RUs per second of the Gremlin graph update operation will complete asynchronously." + }, + "200": { + "description": "The RUs per second of the Gremlin graph update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases/{databaseName}/graphs/{graphName}/throughputSettings/default/migrateToAutoscale": { + "post": { + "operationId": "GremlinResources_MigrateGremlinGraphToAutoscale", + "x-ms-examples": { + "CosmosDBGremlinGraphMigrateToAutoscale": { + "$ref": "./examples/CosmosDBGremlinGraphMigrateToAutoscale.json" + } + }, + "description": "Migrate an Azure Cosmos DB Gremlin graph from manual throughput to autoscale", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/graphNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Gremlin graph migrate operation will complete asynchronously." + }, + "200": { + "description": "The Gremlin graph migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponseUpdatedFormat" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases/{databaseName}/graphs/{graphName}/throughputSettings/default/migrateToManualThroughput": { + "post": { + "operationId": "GremlinResources_MigrateGremlinGraphToManualThroughput", + "x-ms-examples": { + "CosmosDBGremlinGraphMigrateToManualThroughput": { + "$ref": "./examples/CosmosDBGremlinGraphMigrateToManualThroughput.json" + } + }, + "description": "Migrate an Azure Cosmos DB Gremlin graph from autoscale to manual throughput", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/graphNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Gremlin graph migrate operation will complete asynchronously." + }, + "200": { + "description": "The Gremlin graph migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponseUpdatedFormat" + } + } + } + } + } + }, + "definitions": { + "DatabaseAccountsListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/DatabaseAccountGetResults" + }, + "description": "List of database account and their properties." + } + }, + "description": "The List operation response, that contains the database accounts and their properties." + }, + "SqlDatabaseListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SqlDatabaseGetResults" + }, + "description": "List of SQL databases and their properties." + } + }, + "description": "The List operation response, that contains the SQL databases and their properties." + }, + "SqlContainerListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SqlContainerGetResults" + }, + "description": "List of containers and their properties." + } + }, + "description": "The List operation response, that contains the containers and their properties." + }, + "SqlStoredProcedureListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SqlStoredProcedureGetResults" + }, + "description": "List of storedProcedures and their properties." + } + }, + "description": "The List operation response, that contains the storedProcedures and their properties." + }, + "SqlUserDefinedFunctionListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SqlUserDefinedFunctionGetResults" + }, + "description": "List of userDefinedFunctions and their properties." + } + }, + "description": "The List operation response, that contains the userDefinedFunctions and their properties." + }, + "SqlTriggerListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SqlTriggerGetResults" + }, + "description": "List of triggers and their properties." + } + }, + "description": "The List operation response, that contains the triggers and their properties." + }, + "MongoDBDatabaseListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/MongoDBDatabaseGetResults" + }, + "description": "List of MongoDB databases and their properties." + } + }, + "description": "The List operation response, that contains the MongoDB databases and their properties." + }, + "MongoDBCollectionListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/MongoDBCollectionGetResults" + }, + "description": "List of MongoDB collections and their properties." + } + }, + "description": "The List operation response, that contains the MongoDB collections and their properties." + }, + "TableListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/TableGetResults" + }, + "description": "List of Table and their properties." + } + }, + "description": "The List operation response, that contains the Table and their properties." + }, + "CassandraKeyspaceListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/CassandraKeyspaceGetResults" + }, + "description": "List of Cassandra keyspaces and their properties." + } + }, + "description": "The List operation response, that contains the Cassandra keyspaces and their properties." + }, + "CassandraTableListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/CassandraTableGetResults" + }, + "description": "List of Cassandra tables and their properties." + } + }, + "description": "The List operation response, that contains the Cassandra tables and their properties." + }, + "GremlinDatabaseListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/GremlinDatabaseGetResults" + }, + "description": "List of Gremlin databases and their properties." + } + }, + "description": "The List operation response, that contains the Gremlin databases and their properties." + }, + "GremlinGraphListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/GremlinGraphGetResults" + }, + "description": "List of graphs and their properties." + } + }, + "description": "The List operation response, that contains the graphs and their properties." + }, + "ErrorResponse": { + "properties": { + "code": { + "description": "Error code.", + "type": "string" + }, + "message": { + "description": "Error message indicating why the operation failed.", + "type": "string" + } + }, + "description": "Error Response." + }, + "ErrorResponseUpdatedFormat": { + "description": "An error response from the service.", + "properties": { + "error": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + } + }, + "FailoverPolicies": { + "properties": { + "failoverPolicies": { + "type": "array", + "description": "List of failover policies.", + "items": { + "$ref": "#/definitions/FailoverPolicy" + } + } + }, + "required": [ + "failoverPolicies" + ], + "description": "The list of new failover policies for the failover priority change." + }, + "FailoverPolicy": { + "type": "object", + "description": "The failover policy for a given region of a database account.", + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The unique identifier of the region in which the database account replicates to. Example: <accountName>-<locationName>." + }, + "locationName": { + "type": "string", + "description": "The name of the region in which the database account exists." + }, + "failoverPriority": { + "type": "integer", + "minimum": 0, + "format": "int32", + "description": "The failover priority of the region. A failover priority of 0 indicates a write region. The maximum value for a failover priority = (total number of regions - 1). Failover priority values must be unique for each of the regions in which the database account exists." + } + } + }, + "RegionForOnlineOffline": { + "properties": { + "region": { + "type": "string", + "description": "Cosmos DB region, with spaces between words and each word capitalized." + } + }, + "required": [ + "region" + ], + "description": "Cosmos DB region to online or offline." + }, + "Location": { + "description": "A region in which the Azure Cosmos DB database account is deployed.", + "type": "object", + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The unique identifier of the region within the database account. Example: <accountName>-<locationName>." + }, + "locationName": { + "type": "string", + "description": "The name of the region." + }, + "documentEndpoint": { + "type": "string", + "readOnly": true, + "description": "The connection endpoint for the specific region. Example: https://<accountName>-<locationName>.documents.azure.com:443/" + }, + "provisioningState": { + "$ref": "#/definitions/ProvisioningState" + }, + "failoverPriority": { + "description": "The failover priority of the region. A failover priority of 0 indicates a write region. The maximum value for a failover priority = (total number of regions - 1). Failover priority values must be unique for each of the regions in which the database account exists.", + "format": "int32", + "type": "integer", + "minimum": 0 + }, + "isZoneRedundant": { + "type": "boolean", + "description": "Flag to indicate whether or not this region is an AvailabilityZone region" + } + } + }, + "ARMResourceProperties": { + "type": "object", + "description": "The core properties of ARM resources.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The unique resource identifier of the ARM resource." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the ARM resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of Azure resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "tags": { + "$ref": "#/definitions/Tags" + } + }, + "x-ms-azure-resource": true + }, + "ARMProxyResource": { + "type": "object", + "description": "The resource model definition for a ARM proxy resource. It will have everything other than required location and tags", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The unique resource identifier of the database account." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the database account." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of Azure resource." + } + }, + "x-ms-azure-resource": true + }, + "DatabaseAccountGetResults": { + "description": "An Azure Cosmos DB database account.", + "type": "object", + "properties": { + "kind": { + "description": "Indicates the type of database account. This can only be set at database account creation.", + "type": "string", + "default": "GlobalDocumentDB", + "enum": [ + "GlobalDocumentDB", + "MongoDB", + "Parse" + ], + "x-ms-enum": { + "name": "DatabaseAccountKind", + "modelAsString": true + } + }, + "identity": { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DatabaseAccountGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "ExtendedResourceProperties": { + "description": "The system generated resource properties associated with SQL databases, SQL containers, Gremlin databases and Gremlin graphs.", + "type": "object", + "properties": { + "_rid": { + "type": "string", + "description": "A system generated property. A unique identifier.", + "readOnly": true + }, + "_ts": { + "type": "number", + "description": "A system generated property that denotes the last updated timestamp of the resource.", + "readOnly": true + }, + "_etag": { + "type": "string", + "description": "A system generated property representing the resource etag required for optimistic concurrency control.", + "readOnly": true + } + } + }, + "ThroughputSettingsGetResults": { + "description": "An Azure Cosmos DB resource throughput.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB resource throughput", + "$ref": "#/definitions/ThroughputSettingsGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "ThroughputSettingsGetProperties": { + "description": "The properties of an Azure Cosmos DB resource throughput", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/ThroughputSettingsResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + } + } + }, + "SqlDatabaseGetResults": { + "description": "An Azure Cosmos DB SQL database.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB SQL database", + "$ref": "#/definitions/SqlDatabaseGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "SqlDatabaseGetProperties": { + "description": "The properties of an Azure Cosmos DB SQL database", + "type": "object", + "properties": { + "resource": { + "properties": { + "_colls": { + "type": "string", + "description": "A system generated property that specified the addressable path of the collections resource." + }, + "_users": { + "type": "string", + "description": "A system generated property that specifies the addressable path of the users resource." + } + }, + "allOf": [ + { + "$ref": "#/definitions/SqlDatabaseResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + }, + "options": { + "allOf": [ + { + "$ref": "#/definitions/OptionsResource" + } + ] + } + } + }, + "SqlContainerGetResults": { + "description": "An Azure Cosmos DB container.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB container", + "$ref": "#/definitions/SqlContainerGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "SqlContainerGetProperties": { + "description": "The properties of an Azure Cosmos DB container", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/SqlContainerResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + }, + "options": { + "allOf": [ + { + "$ref": "#/definitions/OptionsResource" + } + ] + } + } + }, + "SqlStoredProcedureGetResults": { + "description": "An Azure Cosmos DB storedProcedure.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB storedProcedure", + "$ref": "#/definitions/SqlStoredProcedureGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "SqlStoredProcedureGetProperties": { + "description": "The properties of an Azure Cosmos DB StoredProcedure", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/SqlStoredProcedureResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + } + } + }, + "SqlUserDefinedFunctionGetResults": { + "description": "An Azure Cosmos DB userDefinedFunction.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB userDefinedFunction", + "$ref": "#/definitions/SqlUserDefinedFunctionGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "SqlUserDefinedFunctionGetProperties": { + "description": "The properties of an Azure Cosmos DB userDefinedFunction", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/SqlUserDefinedFunctionResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + } + } + }, + "SqlTriggerGetResults": { + "description": "An Azure Cosmos DB trigger.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB trigger", + "$ref": "#/definitions/SqlTriggerGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "SqlTriggerGetProperties": { + "description": "The properties of an Azure Cosmos DB trigger", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/SqlTriggerResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + } + } + }, + "MongoDBDatabaseGetResults": { + "description": "An Azure Cosmos DB MongoDB database.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB MongoDB database", + "$ref": "#/definitions/MongoDBDatabaseGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "MongoDBDatabaseGetProperties": { + "description": "The properties of an Azure Cosmos DB MongoDB database", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/MongoDBDatabaseResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + }, + "options": { + "allOf": [ + { + "$ref": "#/definitions/OptionsResource" + } + ] + } + } + }, + "MongoDBCollectionGetResults": { + "description": "An Azure Cosmos DB MongoDB collection.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB MongoDB collection", + "$ref": "#/definitions/MongoDBCollectionGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "MongoDBCollectionGetProperties": { + "description": "The properties of an Azure Cosmos DB MongoDB collection", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/MongoDBCollectionResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + }, + "options": { + "allOf": [ + { + "$ref": "#/definitions/OptionsResource" + } + ] + } + } + }, + "TableGetResults": { + "description": "An Azure Cosmos DB Table.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB Table", + "$ref": "#/definitions/TableGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "TableGetProperties": { + "description": "The properties of an Azure Cosmos Table", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/TableResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + }, + "options": { + "allOf": [ + { + "$ref": "#/definitions/OptionsResource" + } + ] + } + } + }, + "CassandraKeyspaceGetResults": { + "description": "An Azure Cosmos DB Cassandra keyspace.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB Cassandra keyspace", + "$ref": "#/definitions/CassandraKeyspaceGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "CassandraKeyspaceGetProperties": { + "description": "The properties of an Azure Cosmos DB Cassandra keyspace", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/CassandraKeyspaceResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + }, + "options": { + "allOf": [ + { + "$ref": "#/definitions/OptionsResource" + } + ] + } + } + }, + "CassandraTableGetResults": { + "description": "An Azure Cosmos DB Cassandra table.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB Cassandra table", + "$ref": "#/definitions/CassandraTableGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "CassandraTableGetProperties": { + "description": "The properties of an Azure Cosmos DB Cassandra table", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/CassandraTableResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + }, + "options": { + "allOf": [ + { + "$ref": "#/definitions/OptionsResource" + } + ] + } + } + }, + "GremlinDatabaseGetResults": { + "description": "An Azure Cosmos DB Gremlin database.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB SQL database", + "$ref": "#/definitions/GremlinDatabaseGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "GremlinDatabaseGetProperties": { + "description": "The properties of an Azure Cosmos DB SQL database", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/GremlinDatabaseResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + }, + "options": { + "allOf": [ + { + "$ref": "#/definitions/OptionsResource" + } + ] + } + } + }, + "GremlinGraphGetResults": { + "description": "An Azure Cosmos DB Gremlin graph.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB Gremlin graph", + "$ref": "#/definitions/GremlinGraphGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "GremlinGraphGetProperties": { + "description": "The properties of an Azure Cosmos DB Gremlin graph", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/GremlinGraphResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + }, + "options": { + "allOf": [ + { + "$ref": "#/definitions/OptionsResource" + } + ] + } + } + }, + "ConsistencyPolicy": { + "type": "object", + "description": "The consistency policy for the Cosmos DB database account.", + "properties": { + "defaultConsistencyLevel": { + "description": "The default consistency level and configuration settings of the Cosmos DB account.", + "type": "string", + "enum": [ + "Eventual", + "Session", + "BoundedStaleness", + "Strong", + "ConsistentPrefix" + ], + "x-ms-enum": { + "name": "DefaultConsistencyLevel", + "modelAsString": false + } + }, + "maxStalenessPrefix": { + "description": "When used with the Bounded Staleness consistency level, this value represents the number of stale requests tolerated. Accepted range for this value is 1 – 2,147,483,647. Required when defaultConsistencyPolicy is set to 'BoundedStaleness'.", + "type": "integer", + "minimum": 1, + "maximum": 2147483647, + "format": "int64" + }, + "maxIntervalInSeconds": { + "description": "When used with the Bounded Staleness consistency level, this value represents the time amount of staleness (in seconds) tolerated. Accepted range for this value is 5 - 86400. Required when defaultConsistencyPolicy is set to 'BoundedStaleness'.", + "type": "integer", + "minimum": 5, + "maximum": 86400, + "format": "int32" + } + }, + "required": [ + "defaultConsistencyLevel" + ] + }, + "CorsPolicy": { + "type": "object", + "description": "The CORS policy for the Cosmos DB database account.", + "properties": { + "allowedOrigins": { + "description": "The origin domains that are permitted to make a request against the service via CORS.", + "type": "string" + }, + "allowedMethods": { + "description": "The methods (HTTP request verbs) that the origin domain may use for a CORS request.", + "type": "string" + }, + "allowedHeaders": { + "description": "The request headers that the origin domain may specify on the CORS request.", + "type": "string" + }, + "exposedHeaders": { + "description": "The response headers that may be sent in the response to the CORS request and exposed by the browser to the request issuer.", + "type": "string" + }, + "maxAgeInSeconds": { + "description": "The maximum amount time that a browser should cache the preflight OPTIONS request.", + "type": "integer", + "minimum": 1, + "maximum": 2147483647, + "format": "int64" + } + }, + "required": [ + "allowedOrigins" + ] + }, + "DatabaseAccountGetProperties": { + "description": "Properties for the database account.", + "type": "object", + "properties": { + "provisioningState": { + "$ref": "#/definitions/ProvisioningState" + }, + "documentEndpoint": { + "description": "The connection endpoint for the Cosmos DB database account.", + "type": "string", + "readOnly": true + }, + "databaseAccountOfferType": { + "description": "The offer type for the Cosmos DB database account. Default value: Standard.", + "readOnly": true, + "$ref": "#/definitions/DatabaseAccountOfferType" + }, + "ipRules": { + "description": "List of IpRules.", + "$ref": "#/definitions/IPRules" + }, + "isVirtualNetworkFilterEnabled": { + "description": "Flag to indicate whether to enable/disable Virtual Network ACL rules.", + "type": "boolean" + }, + "enableAutomaticFailover": { + "description": "Enables automatic failover of the write region in the rare event that the region is unavailable due to an outage. Automatic failover will result in a new write region for the account and is chosen based on the failover priorities configured for the account.", + "type": "boolean" + }, + "consistencyPolicy": { + "description": "The consistency policy for the Cosmos DB database account.", + "$ref": "#/definitions/ConsistencyPolicy" + }, + "capabilities": { + "type": "array", + "description": "List of Cosmos DB capabilities for the account", + "items": { + "$ref": "#/definitions/Capability" + } + }, + "writeLocations": { + "type": "array", + "readOnly": true, + "description": "An array that contains the write location for the Cosmos DB account.", + "items": { + "$ref": "#/definitions/Location" + } + }, + "readLocations": { + "type": "array", + "readOnly": true, + "description": "An array that contains of the read locations enabled for the Cosmos DB account.", + "items": { + "$ref": "#/definitions/Location" + } + }, + "locations": { + "type": "array", + "readOnly": true, + "description": "An array that contains all of the locations enabled for the Cosmos DB account.", + "items": { + "$ref": "#/definitions/Location" + } + }, + "failoverPolicies": { + "type": "array", + "readOnly": true, + "description": "An array that contains the regions ordered by their failover priorities.", + "items": { + "$ref": "#/definitions/FailoverPolicy" + } + }, + "virtualNetworkRules": { + "type": "array", + "description": "List of Virtual Network ACL rules configured for the Cosmos DB account.", + "items": { + "$ref": "#/definitions/VirtualNetworkRule" + } + }, + "privateEndpointConnections": { + "type": "array", + "readOnly": true, + "description": "List of Private Endpoint Connections configured for the Cosmos DB account.", + "items": { + "$ref": "../../stable/2021-03-15/privateEndpointConnection.json#/definitions/PrivateEndpointConnection" + } + }, + "enableMultipleWriteLocations": { + "description": "Enables the account to write in multiple locations", + "type": "boolean" + }, + "enableCassandraConnector": { + "description": "Enables the cassandra connector on the Cosmos DB C* account", + "type": "boolean" + }, + "connectorOffer": { + "description": "The cassandra connector offer type for the Cosmos DB database C* account.", + "$ref": "#/definitions/ConnectorOffer" + }, + "disableKeyBasedMetadataWriteAccess": { + "description": "Disable write operations on metadata resources (databases, containers, throughput) via account keys", + "type": "boolean" + }, + "keyVaultKeyUri": { + "description": "The URI of the key vault", + "type": "string" + }, + "defaultIdentity": { + "description": "The default identity for accessing key vault used in features like customer managed keys. The default identity needs to be explicitly set by the users. It can be \"FirstPartyIdentity\", \"SystemAssignedIdentity\" and more.", + "type": "string" + }, + "publicNetworkAccess": { + "description": "Whether requests from Public Network are allowed", + "$ref": "#/definitions/PublicNetworkAccess" + }, + "enableFreeTier": { + "description": "Flag to indicate whether Free Tier is enabled.", + "type": "boolean" + }, + "apiProperties": { + "description": "API specific properties.", + "type": "object", + "$ref": "#/definitions/ApiProperties" + }, + "enableAnalyticalStorage": { + "description": "Flag to indicate whether to enable storage analytics.", + "type": "boolean" + }, + "backupPolicy": { + "description": "The object representing the policy for taking backups on an account.", + "type": "object", + "$ref": "#/definitions/BackupPolicy" + }, + "cors": { + "type": "array", + "description": "The CORS policy for the Cosmos DB database account.", + "items": { + "$ref": "#/definitions/CorsPolicy" + } + }, + "networkAclBypass": { + "description": "Indicates what services are allowed to bypass firewall checks.", + "$ref": "#/definitions/NetworkAclBypass" + }, + "networkAclBypassResourceIds": { + "type": "array", + "description": "An array that contains the Resource Ids for Network Acl Bypass for the Cosmos DB account.", + "items": { + "type": "string" + } + } + } + }, + "DatabaseAccountCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB database accounts.", + "type": "object", + "properties": { + "consistencyPolicy": { + "description": "The consistency policy for the Cosmos DB account.", + "$ref": "#/definitions/ConsistencyPolicy" + }, + "locations": { + "type": "array", + "description": "An array that contains the georeplication locations enabled for the Cosmos DB account.", + "items": { + "$ref": "#/definitions/Location" + } + }, + "databaseAccountOfferType": { + "description": "The offer type for the database", + "$ref": "#/definitions/DatabaseAccountOfferType" + }, + "ipRules": { + "description": "List of IpRules.", + "$ref": "#/definitions/IPRules" + }, + "isVirtualNetworkFilterEnabled": { + "description": "Flag to indicate whether to enable/disable Virtual Network ACL rules.", + "type": "boolean" + }, + "enableAutomaticFailover": { + "description": "Enables automatic failover of the write region in the rare event that the region is unavailable due to an outage. Automatic failover will result in a new write region for the account and is chosen based on the failover priorities configured for the account.", + "type": "boolean" + }, + "capabilities": { + "type": "array", + "description": "List of Cosmos DB capabilities for the account", + "items": { + "$ref": "#/definitions/Capability" + } + }, + "virtualNetworkRules": { + "type": "array", + "description": "List of Virtual Network ACL rules configured for the Cosmos DB account.", + "items": { + "$ref": "#/definitions/VirtualNetworkRule" + } + }, + "enableMultipleWriteLocations": { + "description": "Enables the account to write in multiple locations", + "type": "boolean" + }, + "enableCassandraConnector": { + "description": "Enables the cassandra connector on the Cosmos DB C* account", + "type": "boolean" + }, + "connectorOffer": { + "description": "The cassandra connector offer type for the Cosmos DB database C* account.", + "$ref": "#/definitions/ConnectorOffer" + }, + "disableKeyBasedMetadataWriteAccess": { + "description": "Disable write operations on metadata resources (databases, containers, throughput) via account keys", + "type": "boolean" + }, + "keyVaultKeyUri": { + "description": "The URI of the key vault", + "type": "string" + }, + "defaultIdentity": { + "description": "The default identity for accessing key vault used in features like customer managed keys. The default identity needs to be explicitly set by the users. It can be \"FirstPartyIdentity\", \"SystemAssignedIdentity\" and more.", + "type": "string" + }, + "publicNetworkAccess": { + "description": "Whether requests from Public Network are allowed", + "$ref": "#/definitions/PublicNetworkAccess" + }, + "enableFreeTier": { + "description": "Flag to indicate whether Free Tier is enabled.", + "type": "boolean" + }, + "apiProperties": { + "description": "API specific properties. Currently, supported only for MongoDB API.", + "type": "object", + "$ref": "#/definitions/ApiProperties" + }, + "enableAnalyticalStorage": { + "description": "Flag to indicate whether to enable storage analytics.", + "type": "boolean" + }, + "backupPolicy": { + "description": "The object representing the policy for taking backups on an account.", + "type": "object", + "$ref": "#/definitions/BackupPolicy" + }, + "cors": { + "type": "array", + "description": "The CORS policy for the Cosmos DB database account.", + "items": { + "$ref": "#/definitions/CorsPolicy" + } + }, + "networkAclBypass": { + "description": "Indicates what services are allowed to bypass firewall checks.", + "$ref": "#/definitions/NetworkAclBypass" + }, + "networkAclBypassResourceIds": { + "type": "array", + "description": "An array that contains the Resource Ids for Network Acl Bypass for the Cosmos DB account.", + "items": { + "type": "string" + } + } + }, + "required": [ + "locations", + "databaseAccountOfferType" + ] + }, + "DatabaseAccountCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB database accounts.", + "type": "object", + "properties": { + "kind": { + "description": "Indicates the type of database account. This can only be set at database account creation.", + "type": "string", + "default": "GlobalDocumentDB", + "enum": [ + "GlobalDocumentDB", + "MongoDB", + "Parse" + ], + "x-ms-enum": { + "name": "DatabaseAccountKind", + "modelAsString": true + } + }, + "identity": { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DatabaseAccountCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "DatabaseAccountUpdateProperties": { + "description": "Properties to update Azure Cosmos DB database accounts.", + "type": "object", + "properties": { + "consistencyPolicy": { + "description": "The consistency policy for the Cosmos DB account.", + "$ref": "#/definitions/ConsistencyPolicy" + }, + "locations": { + "type": "array", + "description": "An array that contains the georeplication locations enabled for the Cosmos DB account.", + "items": { + "$ref": "#/definitions/Location" + } + }, + "ipRules": { + "description": "List of IpRules.", + "$ref": "#/definitions/IPRules" + }, + "isVirtualNetworkFilterEnabled": { + "description": "Flag to indicate whether to enable/disable Virtual Network ACL rules.", + "type": "boolean" + }, + "enableAutomaticFailover": { + "description": "Enables automatic failover of the write region in the rare event that the region is unavailable due to an outage. Automatic failover will result in a new write region for the account and is chosen based on the failover priorities configured for the account.", + "type": "boolean" + }, + "capabilities": { + "type": "array", + "description": "List of Cosmos DB capabilities for the account", + "items": { + "$ref": "#/definitions/Capability" + } + }, + "virtualNetworkRules": { + "type": "array", + "description": "List of Virtual Network ACL rules configured for the Cosmos DB account.", + "items": { + "$ref": "#/definitions/VirtualNetworkRule" + } + }, + "enableMultipleWriteLocations": { + "description": "Enables the account to write in multiple locations", + "type": "boolean" + }, + "enableCassandraConnector": { + "description": "Enables the cassandra connector on the Cosmos DB C* account", + "type": "boolean" + }, + "connectorOffer": { + "description": "The cassandra connector offer type for the Cosmos DB database C* account.", + "$ref": "#/definitions/ConnectorOffer" + }, + "disableKeyBasedMetadataWriteAccess": { + "description": "Disable write operations on metadata resources (databases, containers, throughput) via account keys", + "type": "boolean" + }, + "keyVaultKeyUri": { + "description": "The URI of the key vault", + "type": "string" + }, + "defaultIdentity": { + "description": "The default identity for accessing key vault used in features like customer managed keys. The default identity needs to be explicitly set by the users. It can be \"FirstPartyIdentity\", \"SystemAssignedIdentity\" and more.", + "type": "string" + }, + "publicNetworkAccess": { + "description": "Whether requests from Public Network are allowed", + "$ref": "#/definitions/PublicNetworkAccess" + }, + "enableFreeTier": { + "description": "Flag to indicate whether Free Tier is enabled.", + "type": "boolean" + }, + "apiProperties": { + "description": "API specific properties. Currently, supported only for MongoDB API.", + "type": "object", + "$ref": "#/definitions/ApiProperties" + }, + "enableAnalyticalStorage": { + "description": "Flag to indicate whether to enable storage analytics.", + "type": "boolean" + }, + "backupPolicy": { + "description": "The object representing the policy for taking backups on an account.", + "type": "object", + "$ref": "#/definitions/BackupPolicy" + }, + "cors": { + "type": "array", + "description": "The CORS policy for the Cosmos DB database account.", + "items": { + "$ref": "#/definitions/CorsPolicy" + } + }, + "networkAclBypass": { + "description": "Indicates what services are allowed to bypass firewall checks.", + "$ref": "#/definitions/NetworkAclBypass" + }, + "networkAclBypassResourceIds": { + "type": "array", + "description": "An array that contains the Resource Ids for Network Acl Bypass for the Cosmos DB account.", + "items": { + "type": "string" + } + } + } + }, + "DatabaseAccountUpdateParameters": { + "description": "Parameters for patching Azure Cosmos DB database account properties.", + "type": "object", + "properties": { + "tags": { + "$ref": "#/definitions/Tags" + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "identity": { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DatabaseAccountUpdateProperties" + } + } + }, + "DatabaseAccountListReadOnlyKeysResult": { + "description": "The read-only access keys for the given database account.", + "properties": { + "primaryReadonlyMasterKey": { + "readOnly": true, + "type": "string", + "description": "Base 64 encoded value of the primary read-only key." + }, + "secondaryReadonlyMasterKey": { + "readOnly": true, + "type": "string", + "description": "Base 64 encoded value of the secondary read-only key." + } + } + }, + "DatabaseAccountListKeysResult": { + "description": "The access keys for the given database account.", + "properties": { + "primaryMasterKey": { + "readOnly": true, + "type": "string", + "description": "Base 64 encoded value of the primary read-write key." + }, + "secondaryMasterKey": { + "readOnly": true, + "type": "string", + "description": "Base 64 encoded value of the secondary read-write key." + } + }, + "allOf": [ + { + "$ref": "#/definitions/DatabaseAccountListReadOnlyKeysResult" + } + ] + }, + "DatabaseAccountConnectionString": { + "description": "Connection string for the Cosmos DB account", + "properties": { + "connectionString": { + "readOnly": true, + "type": "string", + "description": "Value of the connection string" + }, + "description": { + "readOnly": true, + "type": "string", + "description": "Description of the connection string" + } + } + }, + "DatabaseAccountListConnectionStringsResult": { + "description": "The connection strings for the given database account.", + "properties": { + "connectionStrings": { + "type": "array", + "description": "An array that contains the connection strings for the Cosmos DB account.", + "items": { + "$ref": "#/definitions/DatabaseAccountConnectionString" + } + } + } + }, + "DatabaseAccountRegenerateKeyParameters": { + "type": "object", + "description": "Parameters to regenerate the keys within the database account.", + "properties": { + "keyKind": { + "type": "string", + "description": "The access key to regenerate.", + "enum": [ + "primary", + "secondary", + "primaryReadonly", + "secondaryReadonly" + ], + "x-ms-enum": { + "name": "KeyKind", + "modelAsString": true + } + } + }, + "required": [ + "keyKind" + ] + }, + "DatabaseAccountOfferType": { + "description": "The offer type for the Cosmos DB database account.", + "type": "string", + "enum": [ + "Standard" + ], + "x-ms-enum": { + "name": "DatabaseAccountOfferType", + "modelAsString": false + } + }, + "ThroughputSettingsUpdateParameters": { + "description": "Parameters to update Cosmos DB resource throughput.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to update Azure Cosmos DB resource throughput.", + "$ref": "#/definitions/ThroughputSettingsUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "ThroughputSettingsUpdateProperties": { + "description": "Properties to update Azure Cosmos DB resource throughput.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a resource throughput", + "$ref": "#/definitions/ThroughputSettingsResource" + } + }, + "required": [ + "resource" + ] + }, + "SqlDatabaseCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB SQL database.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB SQL database.", + "$ref": "#/definitions/SqlDatabaseCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "SqlDatabaseCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB SQL database.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a SQL database", + "$ref": "#/definitions/SqlDatabaseResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource" + ] + }, + "SqlContainerCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB container.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB container.", + "$ref": "#/definitions/SqlContainerCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "SqlContainerCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB container.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a container", + "$ref": "#/definitions/SqlContainerResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource" + ] + }, + "SqlStoredProcedureCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB storedProcedure.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB storedProcedure.", + "$ref": "#/definitions/SqlStoredProcedureCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "SqlStoredProcedureCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB storedProcedure.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a storedProcedure", + "$ref": "#/definitions/SqlStoredProcedureResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource" + ] + }, + "SqlUserDefinedFunctionCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB userDefinedFunction.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB userDefinedFunction.", + "$ref": "#/definitions/SqlUserDefinedFunctionCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "SqlUserDefinedFunctionCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB userDefinedFunction.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a userDefinedFunction", + "$ref": "#/definitions/SqlUserDefinedFunctionResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource" + ] + }, + "SqlTriggerCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB trigger.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB trigger.", + "$ref": "#/definitions/SqlTriggerCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "SqlTriggerCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB trigger.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a trigger", + "$ref": "#/definitions/SqlTriggerResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource" + ] + }, + "MongoDBDatabaseCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB MongoDB database.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB MongoDB database.", + "$ref": "#/definitions/MongoDBDatabaseCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "MongoDBDatabaseCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB MongoDB database.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a MongoDB database", + "$ref": "#/definitions/MongoDBDatabaseResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource" + ] + }, + "MongoDBCollectionCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB MongoDB collection.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB MongoDB collection.", + "$ref": "#/definitions/MongoDBCollectionCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "MongoDBCollectionCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB MongoDB collection.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a MongoDB collection", + "$ref": "#/definitions/MongoDBCollectionResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource" + ] + }, + "TableCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB Table.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB Table.", + "$ref": "#/definitions/TableCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "TableCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB Table.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a Table", + "$ref": "#/definitions/TableResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource" + ] + }, + "CassandraKeyspaceCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB Cassandra keyspace.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB Cassandra keyspace.", + "$ref": "#/definitions/CassandraKeyspaceCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "CassandraKeyspaceCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB Cassandra keyspace.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a Cassandra keyspace", + "$ref": "#/definitions/CassandraKeyspaceResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource" + ] + }, + "CassandraTableCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB Cassandra table.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB Cassandra table.", + "$ref": "#/definitions/CassandraTableCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "CassandraTableCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB Cassandra table.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a Cassandra table", + "$ref": "#/definitions/CassandraTableResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource" + ] + }, + "GremlinDatabaseCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB Gremlin database.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB Gremlin database.", + "$ref": "#/definitions/GremlinDatabaseCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "GremlinDatabaseCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB Gremlin database.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a Gremlin database", + "$ref": "#/definitions/GremlinDatabaseResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource" + ] + }, + "GremlinGraphCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB Gremlin graph.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB Gremlin graph.", + "$ref": "#/definitions/GremlinGraphCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "GremlinGraphCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB Gremlin graph.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a Gremlin graph", + "$ref": "#/definitions/GremlinGraphResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource" + ] + }, + "ThroughputSettingsResource": { + "type": "object", + "description": "Cosmos DB resource throughput object. Either throughput is required or autoscaleSettings is required, but not both.", + "properties": { + "throughput": { + "type": "integer", + "description": "Value of the Cosmos DB resource throughput. Either throughput is required or autoscaleSettings is required, but not both." + }, + "autoscaleSettings": { + "description": "Cosmos DB resource for autoscale settings. Either throughput is required or autoscaleSettings is required, but not both.", + "$ref": "#/definitions/AutoscaleSettingsResource" + }, + "minimumThroughput": { + "type": "string", + "description": "The minimum throughput of the resource", + "readOnly": true + }, + "offerReplacePending": { + "type": "string", + "description": "The throughput replace is pending", + "readOnly": true + } + } + }, + "AutoscaleSettingsResource": { + "type": "object", + "description": "Cosmos DB provisioned throughput settings object", + "properties": { + "maxThroughput": { + "type": "integer", + "description": "Represents maximum throughput container can scale up to." + }, + "autoUpgradePolicy": { + "description": "Cosmos DB resource auto-upgrade policy", + "$ref": "#/definitions/AutoUpgradePolicyResource" + }, + "targetMaxThroughput": { + "type": "integer", + "description": "Represents target maximum throughput container can scale up to once offer is no longer in pending state.", + "readOnly": true + } + }, + "required": [ + "maxThroughput" + ] + }, + "AutoUpgradePolicyResource": { + "type": "object", + "description": "Cosmos DB resource auto-upgrade policy", + "properties": { + "throughputPolicy": { + "description": "Represents throughput policy which service must adhere to for auto-upgrade", + "$ref": "#/definitions/ThroughputPolicyResource" + } + } + }, + "ThroughputPolicyResource": { + "type": "object", + "description": "Cosmos DB resource throughput policy", + "properties": { + "isEnabled": { + "type": "boolean", + "description": "Determines whether the ThroughputPolicy is active or not" + }, + "incrementPercent": { + "type": "integer", + "description": "Represents the percentage by which throughput can increase every time throughput policy kicks in." + } + } + }, + "OptionsResource": { + "type": "object", + "description": "Cosmos DB options resource object", + "readOnly": true, + "properties": { + "throughput": { + "type": "integer", + "description": "Value of the Cosmos DB resource throughput or autoscaleSettings. Use the ThroughputSetting resource when retrieving offer details." + }, + "autoscaleSettings": { + "type": "object", + "$ref": "#/definitions/AutoscaleSettings", + "description": "Specifies the Autoscale settings." + } + } + }, + "SqlDatabaseResource": { + "type": "object", + "description": "Cosmos DB SQL database resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB SQL database" + } + }, + "required": [ + "id" + ] + }, + "SqlContainerResource": { + "type": "object", + "description": "Cosmos DB SQL container resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB SQL container" + }, + "indexingPolicy": { + "$ref": "#/definitions/IndexingPolicy", + "description": "The configuration of the indexing policy. By default, the indexing is automatic for all document paths within the container" + }, + "partitionKey": { + "$ref": "#/definitions/ContainerPartitionKey", + "description": "The configuration of the partition key to be used for partitioning data into multiple partitions" + }, + "defaultTtl": { + "type": "integer", + "description": "Default time to live" + }, + "uniqueKeyPolicy": { + "$ref": "#/definitions/UniqueKeyPolicy", + "description": "The unique key policy configuration for specifying uniqueness constraints on documents in the collection in the Azure Cosmos DB service." + }, + "conflictResolutionPolicy": { + "$ref": "#/definitions/ConflictResolutionPolicy", + "description": "The conflict resolution policy for the container." + }, + "analyticalStorageTtl": { + "type": "integer", + "format": "int64", + "description": "Analytical TTL." + } + }, + "required": [ + "id" + ] + }, + "IndexingPolicy": { + "type": "object", + "description": "Cosmos DB indexing policy", + "properties": { + "automatic": { + "type": "boolean", + "description": "Indicates if the indexing policy is automatic" + }, + "indexingMode": { + "description": "Indicates the indexing mode.", + "type": "string", + "default": "consistent", + "enum": [ + "consistent", + "lazy", + "none" + ], + "x-ms-enum": { + "name": "IndexingMode", + "modelAsString": true + } + }, + "includedPaths": { + "description": "List of paths to include in the indexing", + "type": "array", + "items": { + "$ref": "#/definitions/IncludedPath" + } + }, + "excludedPaths": { + "description": "List of paths to exclude from indexing", + "type": "array", + "items": { + "$ref": "#/definitions/ExcludedPath" + } + }, + "compositeIndexes": { + "description": "List of composite path list", + "type": "array", + "items": { + "$ref": "#/definitions/CompositePathList" + } + }, + "spatialIndexes": { + "description": "List of spatial specifics", + "type": "array", + "items": { + "$ref": "#/definitions/SpatialSpec" + } + } + } + }, + "ExcludedPath": { + "type": "object", + "properties": { + "path": { + "type": "string", + "description": "The path for which the indexing behavior applies to. Index paths typically start with root and end with wildcard (/path/*)" + } + } + }, + "IncludedPath": { + "type": "object", + "description": "The paths that are included in indexing", + "properties": { + "path": { + "type": "string", + "description": "The path for which the indexing behavior applies to. Index paths typically start with root and end with wildcard (/path/*)" + }, + "indexes": { + "description": "List of indexes for this path", + "type": "array", + "items": { + "$ref": "#/definitions/Indexes" + } + } + } + }, + "Indexes": { + "type": "object", + "description": "The indexes for the path.", + "properties": { + "dataType": { + "description": "The datatype for which the indexing behavior is applied to.", + "type": "string", + "default": "String", + "enum": [ + "String", + "Number", + "Point", + "Polygon", + "LineString", + "MultiPolygon" + ], + "x-ms-enum": { + "name": "DataType", + "modelAsString": true + } + }, + "precision": { + "description": "The precision of the index. -1 is maximum precision.", + "type": "integer" + }, + "kind": { + "description": "Indicates the type of index.", + "type": "string", + "default": "Hash", + "enum": [ + "Hash", + "Range", + "Spatial" + ], + "x-ms-enum": { + "name": "IndexKind", + "modelAsString": true + } + } + } + }, + "CompositePathList": { + "description": "List of composite path", + "type": "array", + "items": { + "$ref": "#/definitions/CompositePath" + } + }, + "CompositePath": { + "type": "object", + "properties": { + "path": { + "type": "string", + "description": "The path for which the indexing behavior applies to. Index paths typically start with root and end with wildcard (/path/*)" + }, + "order": { + "description": "Sort order for composite paths.", + "type": "string", + "enum": [ + "ascending", + "descending" + ], + "x-ms-enum": { + "name": "CompositePathSortOrder", + "modelAsString": true + } + } + } + }, + "SpatialSpec": { + "type": "object", + "properties": { + "path": { + "type": "string", + "description": "The path for which the indexing behavior applies to. Index paths typically start with root and end with wildcard (/path/*)" + }, + "types": { + "description": "List of path's spatial type", + "type": "array", + "items": { + "$ref": "#/definitions/SpatialType" + } + } + } + }, + "SpatialType": { + "description": "Indicates the spatial type of index.", + "type": "string", + "enum": [ + "Point", + "LineString", + "Polygon", + "MultiPolygon" + ], + "x-ms-enum": { + "name": "SpatialType", + "modelAsString": true + } + }, + "ContainerPartitionKey": { + "type": "object", + "description": "The configuration of the partition key to be used for partitioning data into multiple partitions", + "properties": { + "paths": { + "description": "List of paths using which data within the container can be partitioned", + "type": "array", + "items": { + "$ref": "#/definitions/Path" + } + }, + "kind": { + "description": "Indicates the kind of algorithm used for partitioning. For MultiHash, multiple partition keys (upto three maximum) are supported for container create", + "type": "string", + "default": "Hash", + "enum": [ + "Hash", + "Range", + "MultiHash" + ], + "x-ms-enum": { + "name": "PartitionKind", + "modelAsString": true + } + }, + "version": { + "description": "Indicates the version of the partition key definition", + "type": "integer", + "minimum": 1, + "maximum": 2, + "format": "int32" + }, + "systemKey": { + "description": "Indicates if the container is using a system generated partition key", + "type": "boolean", + "readOnly": true + } + } + }, + "Path": { + "type": "string", + "description": "A path. These typically start with root (/path)" + }, + "UniqueKeyPolicy": { + "type": "object", + "description": "The unique key policy configuration for specifying uniqueness constraints on documents in the collection in the Azure Cosmos DB service.", + "properties": { + "uniqueKeys": { + "description": "List of unique keys on that enforces uniqueness constraint on documents in the collection in the Azure Cosmos DB service.", + "type": "array", + "items": { + "$ref": "#/definitions/UniqueKey" + } + } + } + }, + "UniqueKey": { + "type": "object", + "description": "The unique key on that enforces uniqueness constraint on documents in the collection in the Azure Cosmos DB service.", + "properties": { + "paths": { + "description": "List of paths must be unique for each document in the Azure Cosmos DB service", + "type": "array", + "items": { + "$ref": "#/definitions/Path" + } + } + } + }, + "ConflictResolutionPolicy": { + "type": "object", + "description": "The conflict resolution policy for the container.", + "properties": { + "mode": { + "description": "Indicates the conflict resolution mode.", + "type": "string", + "default": "LastWriterWins", + "enum": [ + "LastWriterWins", + "Custom" + ], + "x-ms-enum": { + "name": "ConflictResolutionMode", + "modelAsString": true + } + }, + "conflictResolutionPath": { + "type": "string", + "description": "The conflict resolution path in the case of LastWriterWins mode." + }, + "conflictResolutionProcedure": { + "type": "string", + "description": "The procedure to resolve conflicts in the case of custom mode." + } + } + }, + "SqlStoredProcedureResource": { + "type": "object", + "description": "Cosmos DB SQL storedProcedure resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB SQL storedProcedure" + }, + "body": { + "type": "string", + "description": "Body of the Stored Procedure" + } + }, + "required": [ + "id" + ] + }, + "SqlUserDefinedFunctionResource": { + "type": "object", + "description": "Cosmos DB SQL userDefinedFunction resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB SQL userDefinedFunction" + }, + "body": { + "type": "string", + "description": "Body of the User Defined Function" + } + }, + "required": [ + "id" + ] + }, + "SqlTriggerResource": { + "type": "object", + "description": "Cosmos DB SQL trigger resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB SQL trigger" + }, + "body": { + "type": "string", + "description": "Body of the Trigger" + }, + "triggerType": { + "type": "string", + "enum": [ + "Pre", + "Post" + ], + "description": "Type of the Trigger", + "x-ms-enum": { + "name": "triggerType", + "modelAsString": true + } + }, + "triggerOperation": { + "type": "string", + "enum": [ + "All", + "Create", + "Update", + "Delete", + "Replace" + ], + "description": "The operation the trigger is associated with", + "x-ms-enum": { + "name": "triggerOperation", + "modelAsString": true + } + } + }, + "required": [ + "id" + ] + }, + "MongoDBDatabaseResource": { + "type": "object", + "description": "Cosmos DB MongoDB database resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB MongoDB database" + } + }, + "required": [ + "id" + ] + }, + "MongoDBCollectionResource": { + "type": "object", + "description": "Cosmos DB MongoDB collection resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB MongoDB collection" + }, + "shardKey": { + "description": "A key-value pair of shard keys to be applied for the request.", + "$ref": "#/definitions/ShardKeys" + }, + "indexes": { + "description": "List of index keys", + "type": "array", + "items": { + "$ref": "#/definitions/MongoIndex" + } + }, + "analyticalStorageTtl": { + "type": "integer", + "description": "Analytical TTL." + } + }, + "required": [ + "id" + ] + }, + "ShardKeys": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The shard key and partition kind pair, only support \"Hash\" partition kind" + }, + "MongoIndex": { + "type": "object", + "description": "Cosmos DB MongoDB collection index key", + "properties": { + "key": { + "description": "Cosmos DB MongoDB collection index keys", + "$ref": "#/definitions/MongoIndexKeys" + }, + "options": { + "description": "Cosmos DB MongoDB collection index key options", + "$ref": "#/definitions/MongoIndexOptions" + } + } + }, + "MongoIndexKeys": { + "type": "object", + "description": "Cosmos DB MongoDB collection resource object", + "properties": { + "keys": { + "description": "List of keys for each MongoDB collection in the Azure Cosmos DB service", + "type": "array", + "items": { + "$ref": "#/definitions/Key" + } + } + } + }, + "Key": { + "type": "string", + "description": "A Key." + }, + "MongoIndexOptions": { + "type": "object", + "description": "Cosmos DB MongoDB collection index options", + "properties": { + "expireAfterSeconds": { + "description": "Expire after seconds", + "type": "integer" + }, + "unique": { + "description": "Is unique or not", + "type": "boolean" + } + } + }, + "TableResource": { + "type": "object", + "description": "Cosmos DB table resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB table" + } + }, + "required": [ + "id" + ] + }, + "CassandraKeyspaceResource": { + "type": "object", + "description": "Cosmos DB Cassandra keyspace resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB Cassandra keyspace" + } + }, + "required": [ + "id" + ] + }, + "CassandraTableResource": { + "type": "object", + "description": "Cosmos DB Cassandra table resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB Cassandra table" + }, + "defaultTtl": { + "type": "integer", + "description": "Time to live of the Cosmos DB Cassandra table" + }, + "schema": { + "description": "Schema of the Cosmos DB Cassandra table", + "$ref": "#/definitions/CassandraSchema" + }, + "analyticalStorageTtl": { + "type": "integer", + "description": "Analytical TTL." + } + }, + "required": [ + "id" + ] + }, + "CassandraSchema": { + "type": "object", + "description": "Cosmos DB Cassandra table schema", + "properties": { + "columns": { + "type": "array", + "items": { + "$ref": "#/definitions/Column" + }, + "description": "List of Cassandra table columns." + }, + "partitionKeys": { + "type": "array", + "items": { + "$ref": "#/definitions/CassandraPartitionKey" + }, + "description": "List of partition key." + }, + "clusterKeys": { + "type": "array", + "items": { + "$ref": "#/definitions/ClusterKey" + }, + "description": "List of cluster key." + } + } + }, + "Column": { + "type": "object", + "description": "Cosmos DB Cassandra table column", + "properties": { + "name": { + "type": "string", + "description": "Name of the Cosmos DB Cassandra table column" + }, + "type": { + "type": "string", + "description": "Type of the Cosmos DB Cassandra table column" + } + } + }, + "CassandraPartitionKey": { + "type": "object", + "description": "Cosmos DB Cassandra table partition key", + "properties": { + "name": { + "type": "string", + "description": "Name of the Cosmos DB Cassandra table partition key" + } + } + }, + "ClusterKey": { + "type": "object", + "description": "Cosmos DB Cassandra table cluster key", + "properties": { + "name": { + "type": "string", + "description": "Name of the Cosmos DB Cassandra table cluster key" + }, + "orderBy": { + "type": "string", + "description": "Order of the Cosmos DB Cassandra table cluster key, only support \"Asc\" and \"Desc\"" + } + } + }, + "GremlinDatabaseResource": { + "type": "object", + "description": "Cosmos DB Gremlin database resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB Gremlin database" + } + }, + "required": [ + "id" + ] + }, + "GremlinGraphResource": { + "type": "object", + "description": "Cosmos DB Gremlin graph resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB Gremlin graph" + }, + "indexingPolicy": { + "$ref": "#/definitions/IndexingPolicy", + "description": "The configuration of the indexing policy. By default, the indexing is automatic for all document paths within the graph" + }, + "partitionKey": { + "$ref": "#/definitions/ContainerPartitionKey", + "description": "The configuration of the partition key to be used for partitioning data into multiple partitions" + }, + "defaultTtl": { + "type": "integer", + "description": "Default time to live" + }, + "uniqueKeyPolicy": { + "$ref": "#/definitions/UniqueKeyPolicy", + "description": "The unique key policy configuration for specifying uniqueness constraints on documents in the collection in the Azure Cosmos DB service." + }, + "conflictResolutionPolicy": { + "$ref": "#/definitions/ConflictResolutionPolicy", + "description": "The conflict resolution policy for the graph." + } + }, + "required": [ + "id" + ] + }, + "CreateUpdateOptions": { + "type": "object", + "properties": { + "throughput": { + "type": "integer", + "description": "Request Units per second. For example, \"throughput\": 10000." + }, + "autoscaleSettings": { + "$ref": "#/definitions/AutoscaleSettings", + "description": "Specifies the Autoscale settings." + } + }, + "description": "CreateUpdateOptions are a list of key-value pairs that describe the resource. Supported keys are \"If-Match\", \"If-None-Match\", \"Session-Token\" and \"Throughput\"" + }, + "AutoscaleSettings": { + "type": "object", + "properties": { + "maxThroughput": { + "type": "integer", + "description": "Represents maximum throughput, the resource can scale up to." + } + } + }, + "Capability": { + "type": "object", + "description": "Cosmos DB capability object", + "properties": { + "name": { + "type": "string", + "description": "Name of the Cosmos DB capability. For example, \"name\": \"EnableCassandra\". Current values also include \"EnableTable\" and \"EnableGremlin\"." + } + } + }, + "Tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "ManagedServiceIdentity": { + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of the system assigned identity. This property will only be provided for a system assigned identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant id of the system assigned identity. This property will only be provided for a system assigned identity." + }, + "type": { + "type": "string", + "description": "The type of identity used for the resource. The type 'SystemAssigned,UserAssigned' includes both an implicitly created identity and a set of user assigned identities. The type 'None' will remove any identities from the service.", + "enum": [ + "SystemAssigned", + "UserAssigned", + "SystemAssigned,UserAssigned", + "None" + ], + "x-ms-enum": { + "name": "ResourceIdentityType", + "modelAsString": false + } + }, + "userAssignedIdentities": { + "type": "object", + "additionalProperties": { + "type": "object", + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of user assigned identity." + }, + "clientId": { + "readOnly": true, + "type": "string", + "description": "The client id of user assigned identity." + } + } + }, + "description": "The list of user identities associated with resource. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'." + } + }, + "description": "Identity for the resource." + }, + "ProvisioningState": { + "type": "string", + "readOnly": true, + "description": "The status of the Cosmos DB account at the time the operation was called. The status can be one of following. 'Creating' – the Cosmos DB account is being created. When an account is in Creating state, only properties that are specified as input for the Create Cosmos DB account operation are returned. 'Succeeded' – the Cosmos DB account is active for use. 'Updating' – the Cosmos DB account is being updated. 'Deleting' – the Cosmos DB account is being deleted. 'Failed' – the Cosmos DB account failed creation. 'DeletionFailed' – the Cosmos DB account deletion failed." + }, + "IPRules": { + "type": "array", + "description": "Array of IpAddressOrRange objects.", + "items": { + "$ref": "#/definitions/IpAddressOrRange" + } + }, + "IpAddressOrRange": { + "type": "object", + "description": "IpAddressOrRange object", + "properties": { + "ipAddressOrRange": { + "type": "string", + "description": "A single IPv4 address or a single IPv4 address range in CIDR format. Provided IPs must be well-formatted and cannot be contained in one of the following ranges: 10.0.0.0/8, 100.64.0.0/10, 172.16.0.0/12, 192.168.0.0/16, since these are not enforceable by the IP address filter. Example of valid inputs: “23.40.210.245” or “23.40.210.0/8”." + } + } + }, + "VirtualNetworkRule": { + "type": "object", + "description": "Virtual Network ACL Rule object", + "properties": { + "id": { + "type": "string", + "description": "Resource ID of a subnet, for example: /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}." + }, + "ignoreMissingVNetServiceEndpoint": { + "type": "boolean", + "description": "Create firewall rule before the virtual network has vnet service endpoint enabled." + } + } + }, + "NetworkAclBypass": { + "description": "Indicates what services are allowed to bypass firewall checks.", + "type": "string", + "enum": [ + "None", + "AzureServices" + ], + "x-ms-enum": { + "name": "NetworkAclBypass", + "modelAsString": false + } + }, + "Operation": { + "description": "REST API operation", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}", + "type": "string" + }, + "display": { + "description": "The object that represents the operation.", + "properties": { + "Provider": { + "description": "Service provider: Microsoft.ResourceProvider", + "type": "string" + }, + "Resource": { + "description": "Resource on which the operation is performed: Profile, endpoint, etc.", + "type": "string" + }, + "Operation": { + "description": "Operation type: Read, write, delete, etc.", + "type": "string" + }, + "Description": { + "description": "Description of operation", + "type": "string" + } + } + } + } + }, + "OperationListResult": { + "description": "Result of the request to list Resource Provider operations. It contains a list of operations and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "description": "List of operations supported by the Resource Provider." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "UsagesResult": { + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Usage" + }, + "description": "The list of usages for the database. A usage is a point in time metric" + } + }, + "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": "integer", + "format": "int64", + "readOnly": true, + "description": "Maximum value for this metric" + }, + "currentValue": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "Current value for this metric" + } + }, + "description": "The usage data for a usage request." + }, + "PartitionUsagesResult": { + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/PartitionUsage" + }, + "description": "The list of partition-level usages for the database. A usage is a point in time metric" + } + }, + "description": "The response to a list partition level usage request." + }, + "PartitionUsage": { + "allOf": [ + { + "$ref": "#/definitions/Usage" + } + ], + "properties": { + "partitionId": { + "readOnly": true, + "type": "string", + "description": "The partition id (GUID identifier) of the usages." + }, + "partitionKeyRangeId": { + "readOnly": true, + "type": "string", + "description": "The partition key range id (integer identifier) of the usages." + } + }, + "description": "The partition level usage data for a usage request." + }, + "MetricDefinitionsListResult": { + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/MetricDefinition" + }, + "description": "The list of metric definitions for the account." + } + }, + "description": "The response to a list metric definitions request." + }, + "MetricDefinition": { + "properties": { + "metricAvailabilities": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/MetricAvailability" + }, + "description": "The list of metric availabilities for the account." + }, + "primaryAggregationType": { + "readOnly": true, + "type": "string", + "description": "The primary aggregation type of the metric.", + "enum": [ + "None", + "Average", + "Total", + "Minimum", + "Maximum", + "Last" + ], + "x-ms-enum": { + "modelAsString": true, + "name": "PrimaryAggregationType" + } + }, + "unit": { + "description": "The unit of the metric.", + "$ref": "#/definitions/UnitType" + }, + "resourceUri": { + "readOnly": true, + "type": "string", + "description": "The resource uri of the database." + }, + "name": { + "readOnly": true, + "$ref": "#/definitions/MetricName", + "description": "The name information for the metric." + } + }, + "description": "The definition of a metric." + }, + "MetricAvailability": { + "properties": { + "timeGrain": { + "readOnly": true, + "type": "string", + "description": "The time grain to be used to summarize the metric values." + }, + "retention": { + "readOnly": true, + "type": "string", + "description": "The retention for the metric values." + } + }, + "description": "The availability of the metric." + }, + "MetricListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Metric" + }, + "description": "The list of metrics for the account." + } + }, + "description": "The response to a list metrics request." + }, + "Metric": { + "properties": { + "startTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The start time for the metric (ISO-8601 format)." + }, + "endTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The end time for the metric (ISO-8601 format)." + }, + "timeGrain": { + "readOnly": true, + "type": "string", + "description": "The time grain to be used to summarize the metric values." + }, + "unit": { + "$ref": "#/definitions/UnitType", + "description": "The unit of the metric." + }, + "name": { + "readOnly": true, + "$ref": "#/definitions/MetricName", + "description": "The name information for the metric." + }, + "metricValues": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/MetricValue" + }, + "description": "The metric values for the specified time window and timestep." + } + }, + "description": "Metric data" + }, + "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." + }, + "MetricValue": { + "properties": { + "_count": { + "readOnly": true, + "type": "number", + "format": "int32", + "description": "The number of values for the metric." + }, + "average": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The average value of the metric." + }, + "maximum": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The max value of the metric." + }, + "minimum": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The min value of the metric." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The metric timestamp (ISO-8601 format)." + }, + "total": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The total value of the metric." + } + }, + "description": "Represents metrics values." + }, + "PercentileMetricListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/PercentileMetric" + }, + "description": "The list of percentile metrics for the account." + } + }, + "description": "The response to a list percentile metrics request." + }, + "PercentileMetric": { + "properties": { + "startTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The start time for the metric (ISO-8601 format)." + }, + "endTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The end time for the metric (ISO-8601 format)." + }, + "timeGrain": { + "readOnly": true, + "type": "string", + "description": "The time grain to be used to summarize the metric values." + }, + "unit": { + "$ref": "#/definitions/UnitType", + "description": "The unit of the metric." + }, + "name": { + "readOnly": true, + "$ref": "#/definitions/MetricName", + "description": "The name information for the metric." + }, + "metricValues": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/PercentileMetricValue" + }, + "description": "The percentile metric values for the specified time window and timestep." + } + }, + "description": "Percentile Metric data" + }, + "PercentileMetricValue": { + "allOf": [ + { + "$ref": "#/definitions/MetricValue" + } + ], + "properties": { + "P10": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The 10th percentile value for the metric." + }, + "P25": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The 25th percentile value for the metric." + }, + "P50": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The 50th percentile value for the metric." + }, + "P75": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The 75th percentile value for the metric." + }, + "P90": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The 90th percentile value for the metric." + }, + "P95": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The 95th percentile value for the metric." + }, + "P99": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The 99th percentile value for the metric." + } + }, + "description": "Represents percentile metrics values." + }, + "PartitionMetricListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/PartitionMetric" + }, + "description": "The list of partition-level metrics for the account." + } + }, + "description": "The response to a list partition metrics request." + }, + "PartitionMetric": { + "allOf": [ + { + "$ref": "#/definitions/Metric" + } + ], + "properties": { + "partitionId": { + "readOnly": true, + "type": "string", + "description": "The partition id (GUID identifier) of the metric values." + }, + "partitionKeyRangeId": { + "readOnly": true, + "type": "string", + "description": "The partition key range id (integer identifier) of the metric values." + } + }, + "description": "The metric values for a single partition." + }, + "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" + } + }, + "ConnectorOffer": { + "description": "The cassandra connector offer type for the Cosmos DB C* database account.", + "type": "string", + "enum": [ + "Small" + ], + "x-ms-enum": { + "name": "ConnectorOffer", + "modelAsString": true + } + }, + "PublicNetworkAccess": { + "type": "string", + "description": "Whether requests from Public Network are allowed", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "modelAsString": true, + "name": "PublicNetworkAccess" + } + }, + "ApiProperties": { + "type": "object", + "properties": { + "serverVersion": { + "type": "string", + "enum": [ + "3.2", + "3.6", + "4.0" + ], + "description": "Describes the ServerVersion of an a MongoDB account.", + "x-ms-enum": { + "modelAsString": true, + "name": "ServerVersion" + } + } + } + }, + "BackupPolicy": { + "type": "object", + "description": "The object representing the policy for taking backups on an account.", + "discriminator": "type", + "properties": { + "type": { + "type": "string", + "$ref": "#/definitions/BackupPolicyType" + } + }, + "required": [ + "type" + ] + }, + "BackupPolicyType": { + "description": "Describes the mode of backups.", + "type": "string", + "enum": [ + "Periodic", + "Continuous" + ], + "x-ms-enum": { + "modelAsString": true, + "name": "BackupPolicyType" + } + }, + "PeriodicModeBackupPolicy": { + "description": "The object representing periodic mode backup policy.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/BackupPolicy" + } + ], + "properties": { + "periodicModeProperties": { + "type": "object", + "description": "Configuration values for periodic mode backup", + "$ref": "#/definitions/PeriodicModeProperties" + } + }, + "x-ms-discriminator-value": "Periodic" + }, + "ContinuousModeBackupPolicy": { + "description": "The object representing continuous mode backup policy.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/BackupPolicy" + } + ], + "x-ms-discriminator-value": "Continuous" + }, + "PeriodicModeProperties": { + "type": "object", + "description": "Configuration values for periodic mode backup", + "properties": { + "backupIntervalInMinutes": { + "type": "integer", + "format": "int32", + "minimum": 0, + "description": "An integer representing the interval in minutes between two backups" + }, + "backupRetentionIntervalInHours": { + "type": "integer", + "format": "int32", + "minimum": 0, + "description": "An integer representing the time (in hours) that each backup is retained" + } + } + } + }, + "parameters": { + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90, + "x-ms-parameter-location": "method", + "description": "Name of an Azure resource group." + }, + "accountNameParameter": { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB database account name.", + "minLength": 3, + "maxLength": 50, + "pattern": "^[a-z0-9]+(-[a-z0-9]+)*" + }, + "filterParameter": { + "name": "$filter", + "in": "query", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "An OData filter expression that describes a subset of metrics to return. The parameters that can be filtered are name.value (name of the metric, can have an or of multiple names), startTime, endTime, and timeGrain. The supported operator is eq." + }, + "usageFilterParameter": { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "x-ms-parameter-location": "method", + "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)." + }, + "databaseRidParameter": { + "name": "databaseRid", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB database rid." + }, + "collectionRidParameter": { + "name": "collectionRid", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB collection rid." + }, + "databaseNameParameter": { + "name": "databaseName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB database name." + }, + "containerNameParameter": { + "name": "containerName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB container name." + }, + "storedProcedureNameParameter": { + "name": "storedProcedureName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB storedProcedure name." + }, + "userDefinedFunctionNameParameter": { + "name": "userDefinedFunctionName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB userDefinedFunction name." + }, + "triggerNameParameter": { + "name": "triggerName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB trigger name." + }, + "tableNameParameter": { + "name": "tableName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB table name." + }, + "collectionNameParameter": { + "name": "collectionName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB collection name." + }, + "keyspaceNameParameter": { + "name": "keyspaceName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB keyspace name." + }, + "graphNameParameter": { + "name": "graphName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB graph name." + }, + "regionParameter": { + "name": "region", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB region, with spaces between words and each word capitalized." + }, + "sourceRegionParameter": { + "name": "sourceRegion", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Source region from which data is written. Cosmos DB region, with spaces between words and each word capitalized." + }, + "targetRegionParameter": { + "name": "targetRegion", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Target region to which data is written. Cosmos DB region, with spaces between words and each word capitalized." + }, + "partitionKeyRangeIdParameter": { + "name": "partitionKeyRangeId", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Partition Key Range Id for which to get data." + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCassandraKeyspaceCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCassandraKeyspaceCreateUpdate.json new file mode 100644 index 000000000000..620fa08a420f --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCassandraKeyspaceCreateUpdate.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName", + "createUpdateCassandraKeyspaceParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "keyspaceName" + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName", + "name": "keyspaceName", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "keyspaceName" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCassandraKeyspaceDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCassandraKeyspaceDelete.json new file mode 100644 index 000000000000..4026b0f56cad --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCassandraKeyspaceDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCassandraKeyspaceGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCassandraKeyspaceGet.json new file mode 100644 index 000000000000..88a596996876 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCassandraKeyspaceGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName", + "name": "keyspaceName", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "keyspaceName", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCassandraKeyspaceList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCassandraKeyspaceList.json new file mode 100644 index 000000000000..86faf20cef7d --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCassandraKeyspaceList.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2021-03-15", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName", + "name": "keyspaceName", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "keyspaceName" + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCassandraKeyspaceMigrateToAutoscale.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCassandraKeyspaceMigrateToAutoscale.json new file mode 100644 index 000000000000..4a447c22be7f --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCassandraKeyspaceMigrateToAutoscale.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "autoscaleSettings": { + "maxThroughput": 4000 + }, + "minimumThroughput": "4000", + "offerReplacePending": "false", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCassandraKeyspaceMigrateToManualThroughput.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCassandraKeyspaceMigrateToManualThroughput.json new file mode 100644 index 000000000000..0efafba7894e --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCassandraKeyspaceMigrateToManualThroughput.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "false", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCassandraKeyspaceThroughputGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCassandraKeyspaceThroughputGet.json new file mode 100644 index 000000000000..d338341d7709 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCassandraKeyspaceThroughputGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCassandraKeyspaceThroughputUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCassandraKeyspaceThroughputUpdate.json new file mode 100644 index 000000000000..b4b8085f4094 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCassandraKeyspaceThroughputUpdate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName", + "updateThroughputParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCassandraTableCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCassandraTableCreateUpdate.json new file mode 100644 index 000000000000..45a0bb32d5ea --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCassandraTableCreateUpdate.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName", + "tableName": "tableName", + "createUpdateCassandraTableParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "tableName", + "defaultTtl": 100, + "schema": { + "columns": [ + { + "name": "columnA", + "type": "Ascii" + } + ], + "partitionKeys": [ + { + "name": "columnA" + } + ], + "clusterKeys": [ + { + "name": "columnA", + "orderBy": "Asc" + } + ] + } + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName/cassandraTables/tableName", + "name": "tableName", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/cassandraTables", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "tableName", + "defaultTtl": 100, + "schema": { + "columns": [ + { + "name": "columnA", + "type": "Ascii" + } + ], + "partitionKeys": [ + { + "name": "columnA" + } + ], + "clusterKeys": [ + { + "name": "columnA", + "orderBy": "Asc" + } + ] + } + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCassandraTableDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCassandraTableDelete.json new file mode 100644 index 000000000000..a1bf9bbd4686 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCassandraTableDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName", + "tableName": "tableName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCassandraTableGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCassandraTableGet.json new file mode 100644 index 000000000000..53e53a368f83 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCassandraTableGet.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName", + "tableName": "tableName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName/cassandraTables/tableName", + "name": "tableName", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/cassandraTables", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "tableName", + "defaultTtl": 100, + "schema": { + "columns": [ + { + "name": "columnA", + "type": "Ascii" + } + ], + "partitionKeys": [ + { + "name": "columnA" + } + ], + "clusterKeys": [ + { + "name": "columnA", + "orderBy": "Asc" + } + ] + }, + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCassandraTableList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCassandraTableList.json new file mode 100644 index 000000000000..f5bb582a07fd --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCassandraTableList.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2021-03-15", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "keyspaceName": "keyspaceName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName/cassandraTables/tableName", + "name": "tableName", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/cassandraTables", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "tableName", + "defaultTtl": 100, + "schema": { + "columns": [ + { + "name": "columnA", + "type": "Ascii" + } + ], + "partitionKeys": [ + { + "name": "columnA" + } + ], + "clusterKeys": [ + { + "name": "columnA", + "orderBy": "Asc" + } + ] + } + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCassandraTableMigrateToAutoscale.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCassandraTableMigrateToAutoscale.json new file mode 100644 index 000000000000..ccd62f314aa7 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCassandraTableMigrateToAutoscale.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName", + "tableName": "tableName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "autoscaleSettings": { + "maxThroughput": 4000 + }, + "minimumThroughput": "4000", + "offerReplacePending": "false", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCassandraTableMigrateToManualThroughput.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCassandraTableMigrateToManualThroughput.json new file mode 100644 index 000000000000..c9fedeb4bfeb --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCassandraTableMigrateToManualThroughput.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName", + "tableName": "tableName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "false", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCassandraTableThroughputGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCassandraTableThroughputGet.json new file mode 100644 index 000000000000..6003fd942774 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCassandraTableThroughputGet.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName", + "tableName": "tableName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName/cassandraTables/tableName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/cassandraTables/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCassandraTableThroughputUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCassandraTableThroughputUpdate.json new file mode 100644 index 000000000000..ba39f83cd532 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCassandraTableThroughputUpdate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName", + "tableName": "tableName", + "updateThroughputParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName/cassandraTables/tableName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/cassandraTables/throughputSettings", + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCollectionGetMetricDefinitions.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCollectionGetMetricDefinitions.json new file mode 100644 index 000000000000..f1ae50a9a99e --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCollectionGetMetricDefinitions.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "subscriptionId": "subid", + "api-version": "2021-03-15", + "databaseRid": "databaseRid", + "collectionRid": "collectionRid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "metricAvailabilities": [ + { + "timeGrain": "PT5M", + "retention": "P2D" + }, + { + "timeGrain": "PT1H", + "retention": "P14D" + }, + { + "timeGrain": "P1D", + "retention": "P60D" + } + ], + "primaryAggregationType": "Total", + "unit": "Count", + "resourceUri": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1", + "name": { + "value": "Total Requests", + "localizedValue": "Total Requests" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCollectionGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCollectionGetMetrics.json new file mode 100644 index 000000000000..747c1704f07b --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCollectionGetMetrics.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "databaseRid": "databaseRid", + "collectionRid": "collectionRid", + "$filter": "$filter=(name.value eq 'Total Requests') and timeGrain eq duration'PT5M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T00:13:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Count", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-19T23:58:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:03:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:08:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + } + ], + "name": { + "value": "Total Requests", + "localizedValue": "Total Requests" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCollectionGetUsages.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCollectionGetUsages.json new file mode 100644 index 000000000000..95dc4d8fd5a4 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCollectionGetUsages.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "databaseRid": "databaseRid", + "collectionRid": "collectionRid", + "subscriptionId": "subid", + "$filter": "$filter=name.value eq 'Storage'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "unit": "Bytes", + "quotaPeriod": "P1D", + "limit": 10737418240, + "currentValue": 0, + "name": { + "value": "Storage", + "localizedValue": "Storage" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCollectionPartitionGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCollectionPartitionGetMetrics.json new file mode 100644 index 000000000000..5b2d63af5dbe --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCollectionPartitionGetMetrics.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "databaseRid": "databaseRid", + "collectionRid": "collectionRid", + "$filter": "$filter=(name.value eq 'Max RUs Per Second') and timeGrain eq duration'PT1M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T23:58:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT1M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T23:58:55.2780000Z", + "unit": "Count", + "partitionId": "00000000-0000-0000-0000-000000000000", + "partitionKeyRangeId": "0", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:54:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:55:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:56:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:57:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:58:55.2780000Z", + "maximum": 5 + } + ], + "name": { + "value": "Max RUs Per Second", + "localizedValue": "Max RUs Per Second" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCollectionPartitionGetUsages.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCollectionPartitionGetUsages.json new file mode 100644 index 000000000000..50696b07248d --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCollectionPartitionGetUsages.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "databaseRid": "databaseRid", + "collectionRid": "collectionRid", + "subscriptionId": "subid", + "$filter": "$filter=name.value eq 'Partition Storage'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "unit": "Bytes", + "quotaPeriod": "P1D", + "limit": 10737418240, + "currentValue": 0, + "partitionId": "00000000-0000-0000-0000-000000000000", + "partitionKeyRangeId": "0", + "name": { + "value": "Storage", + "localizedValue": "Storage" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCollectionPartitionRegionGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCollectionPartitionRegionGetMetrics.json new file mode 100644 index 000000000000..3261f6e50d27 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBCollectionPartitionRegionGetMetrics.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "databaseRid": "databaseRid", + "collectionRid": "collectionRid", + "region": "North Europe", + "$filter": "$filter=(name.value eq 'Max RUs Per Second') and timeGrain eq duration'PT1M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T23:58:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT1M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T23:58:55.2780000Z", + "unit": "Count", + "partitionId": "00000000-0000-0000-0000-000000000000", + "partitionKeyRangeId": "0", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:54:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:55:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:56:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:57:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:58:55.2780000Z", + "maximum": 5 + } + ], + "name": { + "value": "Max RUs Per Second", + "localizedValue": "Max RUs Per Second" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountCheckNameExists.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountCheckNameExists.json new file mode 100644 index 000000000000..0a1d3002a201 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountCheckNameExists.json @@ -0,0 +1,10 @@ +{ + "parameters": { + "accountName": "ddb1", + "api-version": "2021-03-15" + }, + "responses": { + "200": {}, + "404": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountCreateMax.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountCreateMax.json new file mode 100644 index 000000000000..a2ba859bc6e8 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountCreateMax.json @@ -0,0 +1,202 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "createUpdateParameters": { + "location": "westus", + "tags": {}, + "kind": "MongoDB", + "identity": { + "type": "SystemAssigned,UserAssigned", + "userAssignedIdentities": { + "/subscriptions/fa5fc227-a624-475e-b696-cdd604c735bc/resourceGroups/eu2cgroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": {} + } + }, + "properties": { + "databaseAccountOfferType": "Standard", + "ipRules": [ + { + "ipAddressOrRange": "23.43.230.120" + }, + { + "ipAddressOrRange": "110.12.240.0/12" + } + ], + "isVirtualNetworkFilterEnabled": true, + "virtualNetworkRules": [ + { + "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "ignoreMissingVNetServiceEndpoint": false + } + ], + "publicNetworkAccess": "Enabled", + "locations": [ + { + "failoverPriority": 0, + "locationName": "southcentralus", + "isZoneRedundant": false + }, + { + "failoverPriority": 1, + "locationName": "eastus", + "isZoneRedundant": false + } + ], + "consistencyPolicy": { + "defaultConsistencyLevel": "BoundedStaleness", + "maxIntervalInSeconds": 10, + "maxStalenessPrefix": 200 + }, + "keyVaultKeyUri": "https://myKeyVault.vault.azure.net", + "defaultIdentity": "FirstPartyIdentity", + "enableFreeTier": false, + "apiProperties": { + "serverVersion": "3.2" + }, + "enableAnalyticalStorage": true, + "backupPolicy": { + "type": "Periodic", + "periodicModeProperties": { + "backupIntervalInMinutes": 240, + "backupRetentionIntervalInHours": 8 + } + }, + "cors": [ + { + "allowedOrigins": "https://test" + } + ], + "networkAclBypass": "AzureServices", + "networkAclBypassResourceIds": [ + "/subscriptions/subId/resourcegroups/rgName/providers/Microsoft.Synapse/workspaces/workspaceName" + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1", + "name": "ddb1", + "location": "West US", + "type": "Microsoft.DocumentDB/databaseAccounts", + "kind": "MongoDB", + "tags": {}, + "identity": { + "type": "SystemAssigned,UserAssigned", + "principalId": "52f4fef3-3c3f-4ff3-b52e-b5c9eeb68656", + "tenantId": "33e01921-4d64-4f8c-a055-5bdaffd5e33d", + "userAssignedIdentities": { + "/subscriptions/fa5fc227-a624-475e-b696-cdd604c735bc/resourceGroups/eu2cgroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": { + "clientId": "fbe75b66-01c5-4f87-a220-233af3270436", + "principalId": "33e01921-4d64-4f8c-a055-5bdaffd5e33d" + } + } + }, + "properties": { + "provisioningState": "Initializing", + "isVirtualNetworkFilterEnabled": true, + "databaseAccountOfferType": "Standard", + "disableKeyBasedMetadataWriteAccess": false, + "consistencyPolicy": { + "defaultConsistencyLevel": "BoundedStaleness", + "maxIntervalInSeconds": 10, + "maxStalenessPrefix": 200 + }, + "writeLocations": [ + { + "id": "ddb1-southcentralus", + "locationName": "South Central US", + "provisioningState": "Initializing", + "failoverPriority": 0, + "isZoneRedundant": false + } + ], + "readLocations": [ + { + "id": "ddb1-southcentralus", + "locationName": "South Central US", + "provisioningState": "Initializing", + "failoverPriority": 0, + "isZoneRedundant": false + }, + { + "id": "ddb1-eastus", + "locationName": "East US", + "provisioningState": "Initializing", + "failoverPriority": 1, + "isZoneRedundant": false + } + ], + "locations": [ + { + "id": "ddb1-southcentralus", + "locationName": "South Central US", + "provisioningState": "Initializing", + "failoverPriority": 0, + "isZoneRedundant": false + }, + { + "id": "ddb1-eastus", + "locationName": "East US", + "provisioningState": "Initializing", + "failoverPriority": 1, + "isZoneRedundant": false + } + ], + "failoverPolicies": [ + { + "id": "ddb1-southcentralus", + "locationName": "South Central US", + "failoverPriority": 0 + }, + { + "id": "ddb1-eastus", + "locationName": "East US", + "failoverPriority": 1 + } + ], + "virtualNetworkRules": [ + { + "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + } + ], + "publicNetworkAccess": "Enabled", + "keyVaultKeyUri": "https://myKeyVault.vault.azure.net", + "defaultIdentity": "FirstPartyIdentity", + "enableFreeTier": false, + "ipRules": [ + { + "ipAddressOrRange": "23.43.230.120" + }, + { + "ipAddressOrRange": "110.12.240.0/12" + } + ], + "apiProperties": { + "serverVersion": "3.2" + }, + "enableAnalyticalStorage": true, + "backupPolicy": { + "type": "Periodic", + "periodicModeProperties": { + "backupIntervalInMinutes": 240, + "backupRetentionIntervalInHours": 8 + } + }, + "cors": [ + { + "allowedOrigins": "https://test" + } + ], + "networkAclBypass": "AzureServices", + "networkAclBypassResourceIds": [ + "/subscriptions/subId/resourcegroups/rgName/providers/Microsoft.Synapse/workspaces/workspaceName" + ] + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountCreateMin.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountCreateMin.json new file mode 100644 index 000000000000..8f8618cbadae --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountCreateMin.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "createUpdateParameters": { + "location": "westus", + "properties": { + "databaseAccountOfferType": "Standard", + "locations": [ + { + "failoverPriority": 0, + "locationName": "southcentralus", + "isZoneRedundant": false + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1", + "name": "ddb1", + "location": "West US", + "type": "Microsoft.DocumentDB/databaseAccounts", + "kind": "GlobalDocumentDB", + "tags": {}, + "properties": { + "provisioningState": "Initializing", + "ipRules": [], + "databaseAccountOfferType": "Standard", + "disableKeyBasedMetadataWriteAccess": false, + "consistencyPolicy": { + "defaultConsistencyLevel": "Session", + "maxIntervalInSeconds": 5, + "maxStalenessPrefix": 100 + }, + "writeLocations": [ + { + "id": "ddb1-southcentralus", + "locationName": "South Central US", + "provisioningState": "Initializing", + "failoverPriority": 0, + "isZoneRedundant": false + } + ], + "readLocations": [ + { + "id": "ddb1-southcentralus", + "locationName": "South Central US", + "provisioningState": "Initializing", + "failoverPriority": 0, + "isZoneRedundant": false + } + ], + "locations": [ + { + "id": "ddb1-southcentralus", + "locationName": "South Central US", + "provisioningState": "Initializing", + "failoverPriority": 0, + "isZoneRedundant": false + } + ], + "failoverPolicies": [ + { + "id": "ddb1-southcentralus", + "locationName": "South Central US", + "failoverPriority": 0 + } + ], + "cors": [], + "enableFreeTier": false, + "apiProperties": {}, + "enableAnalyticalStorage": false, + "networkAclBypass": "None", + "networkAclBypassResourceIds": [] + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountDelete.json new file mode 100644 index 000000000000..577bb28d43e3 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountFailoverPriorityChange.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountFailoverPriorityChange.json new file mode 100644 index 000000000000..5b8e9b6b251c --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountFailoverPriorityChange.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "accountName": "ddb1-failover", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "failoverParameters": { + "failoverPolicies": [ + { + "locationName": "eastus", + "failoverPriority": 0 + }, + { + "locationName": "westus", + "failoverPriority": 1 + } + ] + } + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountGet.json new file mode 100644 index 000000000000..5b240e5f8263 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountGet.json @@ -0,0 +1,107 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1", + "name": "ddb1", + "location": "West US", + "type": "Microsoft.DocumentDB/databaseAccounts", + "kind": "GlobalDocumentDB", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "documentEndpoint": "https://ddb1.documents.azure.com:443/", + "ipRules": [], + "isVirtualNetworkFilterEnabled": false, + "virtualNetworkRules": [], + "databaseAccountOfferType": "Standard", + "disableKeyBasedMetadataWriteAccess": false, + "defaultIdentity": "FirstPartyIdentity", + "consistencyPolicy": { + "defaultConsistencyLevel": "Session", + "maxIntervalInSeconds": 5, + "maxStalenessPrefix": 100 + }, + "writeLocations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "readLocations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "locations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "failoverPolicies": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "failoverPriority": 0 + } + ], + "privateEndpointConnections": [ + { + "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.DocumentDB/databaseAccounts/account1/privateEndpointConnections/pe1", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.Network/privateEndpoints/pe1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "actionsRequired": "None" + } + } + } + ], + "cors": [], + "enableFreeTier": false, + "apiProperties": {}, + "enableAnalyticalStorage": true, + "backupPolicy": { + "type": "Periodic", + "periodicModeProperties": { + "backupIntervalInMinutes": 240, + "backupRetentionIntervalInHours": 8 + } + }, + "networkAclBypass": "None", + "networkAclBypassResourceIds": [] + }, + "identity": { + "type": "SystemAssigned,UserAssigned", + "principalId": "52f4fef3-3c3f-4ff3-b52e-b5c9eeb68656", + "tenantId": "33e01921-4d64-4f8c-a055-5bdaffd5e33d", + "userAssignedIdentities": { + "/subscriptions/fa5fc227-a624-475e-b696-cdd604c735bc/resourceGroups/eu2cgroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": { + "clientId": "fbe75b66-01c5-4f87-a220-233af3270436", + "principalId": "33e01921-4d64-4f8c-a055-5bdaffd5e33d" + } + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountGetMetricDefinitions.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountGetMetricDefinitions.json new file mode 100644 index 000000000000..f786b978f4b5 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountGetMetricDefinitions.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "subscriptionId": "subid", + "api-version": "2021-03-15" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "metricAvailabilities": [ + { + "timeGrain": "PT5M", + "retention": "P2D" + }, + { + "timeGrain": "PT1H", + "retention": "P14D" + }, + { + "timeGrain": "P1D", + "retention": "P60D" + } + ], + "primaryAggregationType": "Total", + "unit": "Count", + "resourceUri": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1", + "name": { + "value": "Total Requests", + "localizedValue": "Total Requests" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountGetMetrics.json new file mode 100644 index 000000000000..c0f5b534b197 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountGetMetrics.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "$filter": "$filter=(name.value eq 'Total Requests') and timeGrain eq duration'PT5M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T00:13:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Count", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-19T23:58:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:03:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:08:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + } + ], + "name": { + "value": "Total Requests", + "localizedValue": "Total Requests" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountGetUsages.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountGetUsages.json new file mode 100644 index 000000000000..aea929efe53d --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountGetUsages.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "$filter": "$filter=name.value eq 'Storage'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "unit": "Bytes", + "quotaPeriod": "P1D", + "limit": 10737418240, + "currentValue": 0, + "name": { + "value": "Storage", + "localizedValue": "Storage" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountList.json new file mode 100644 index 000000000000..4d75c1e30836 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountList.json @@ -0,0 +1,100 @@ +{ + "parameters": { + "api-version": "2021-03-15", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1", + "name": "ddb1", + "location": "West US", + "type": "Microsoft.DocumentDB/databaseAccounts", + "kind": "GlobalDocumentDB", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "documentEndpoint": "https://ddb1.documents.azure.com:443/", + "ipRules": [], + "databaseAccountOfferType": "Standard", + "disableKeyBasedMetadataWriteAccess": false, + "consistencyPolicy": { + "defaultConsistencyLevel": "Session", + "maxIntervalInSeconds": 5, + "maxStalenessPrefix": 100 + }, + "writeLocations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "readLocations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "locations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "failoverPolicies": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "failoverPriority": 0 + } + ], + "privateEndpointConnections": [ + { + "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.DocumentDB/databaseAccounts/account1/privateEndpointConnections/pe1", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.Network/privateEndpoints/pe1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "actionsRequired": "None" + } + } + } + ], + "cors": [], + "defaultIdentity": "FirstPartyIdentity", + "enableFreeTier": false, + "apiProperties": {}, + "enableAnalyticalStorage": true, + "networkAclBypass": "None", + "networkAclBypassResourceIds": [] + }, + "identity": { + "type": "SystemAssigned,UserAssigned", + "principalId": "52f4fef3-3c3f-4ff3-b52e-b5c9eeb68656", + "tenantId": "33e01921-4d64-4f8c-a055-5bdaffd5e33d", + "userAssignedIdentities": { + "/subscriptions/fa5fc227-a624-475e-b696-cdd604c735bc/resourceGroups/eu2cgroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": { + "clientId": "fbe75b66-01c5-4f87-a220-233af3270436", + "principalId": "33e01921-4d64-4f8c-a055-5bdaffd5e33d" + } + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountListByResourceGroup.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountListByResourceGroup.json new file mode 100644 index 000000000000..16a2ae50b8d6 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountListByResourceGroup.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "api-version": "2021-03-15", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1", + "name": "ddb1", + "location": "West US", + "type": "Microsoft.DocumentDB/databaseAccounts", + "kind": "GlobalDocumentDB", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "documentEndpoint": "https://ddb1.documents.azure.com:443/", + "ipRules": [], + "databaseAccountOfferType": "Standard", + "disableKeyBasedMetadataWriteAccess": false, + "consistencyPolicy": { + "defaultConsistencyLevel": "Session", + "maxIntervalInSeconds": 5, + "maxStalenessPrefix": 100 + }, + "writeLocations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "readLocations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "locations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "failoverPolicies": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "failoverPriority": 0 + } + ], + "cors": [], + "enableFreeTier": false, + "defaultIdentity": "FirstPartyIdentity", + "networkAclBypass": "None", + "networkAclBypassResourceIds": [] + }, + "identity": { + "type": "SystemAssigned,UserAssigned", + "principalId": "52f4fef3-3c3f-4ff3-b52e-b5c9eeb68656", + "tenantId": "33e01921-4d64-4f8c-a055-5bdaffd5e33d", + "userAssignedIdentities": { + "/subscriptions/fa5fc227-a624-475e-b696-cdd604c735bc/resourceGroups/eu2cgroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": { + "clientId": "fbe75b66-01c5-4f87-a220-233af3270436", + "principalId": "33e01921-4d64-4f8c-a055-5bdaffd5e33d" + } + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountListConnectionStrings.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountListConnectionStrings.json new file mode 100644 index 000000000000..c758c262ea66 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountListConnectionStrings.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": {} + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountListConnectionStringsMongo.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountListConnectionStringsMongo.json new file mode 100644 index 000000000000..0572d72d43ae --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountListConnectionStringsMongo.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "accountName": "mongo-ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "connectionStrings": [ + { + "connectionString": "connection-string", + "description": "Name of the connection string" + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountListKeys.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountListKeys.json new file mode 100644 index 000000000000..f41e31b23f2a --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountListKeys.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "primaryMasterKey": "primaryMasterKey", + "secondaryMasterKey": "secondaryMasterKey", + "primaryReadonlyMasterKey": "primaryReadonlyMasterKey", + "secondaryReadonlyMasterKey": "secondaryReadonlyMasterKey" + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountListReadOnlyKeys.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountListReadOnlyKeys.json new file mode 100644 index 000000000000..fc009db5a0ae --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountListReadOnlyKeys.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "primaryReadonlyMasterKey": "primaryReadonlyMasterKey", + "secondaryReadonlyMasterKey": "secondaryReadonlyMasterKey" + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountOfflineRegion.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountOfflineRegion.json new file mode 100644 index 000000000000..f629053b60aa --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountOfflineRegion.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "region": "North Europe", + "regionParameterForOffline": [ + { + "region": "North Europe" + } + ] + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountOnlineRegion.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountOnlineRegion.json new file mode 100644 index 000000000000..28c4579cd492 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountOnlineRegion.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "region": "North Europe", + "regionParameterForOnline": [ + { + "region": "North Europe" + } + ] + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountPatch.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountPatch.json new file mode 100644 index 000000000000..07e010e88e8c --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountPatch.json @@ -0,0 +1,171 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "updateParameters": { + "location": "westus", + "tags": { + "dept": "finance" + }, + "identity": { + "type": "SystemAssigned,UserAssigned", + "userAssignedIdentities": { + "/subscriptions/fa5fc227-a624-475e-b696-cdd604c735bc/resourceGroups/eu2cgroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": {} + } + }, + "properties": { + "ipRules": [ + { + "ipAddressOrRange": "23.43.230.120" + }, + { + "ipAddressOrRange": "110.12.240.0/12" + } + ], + "isVirtualNetworkFilterEnabled": true, + "virtualNetworkRules": [ + { + "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "ignoreMissingVNetServiceEndpoint": false + } + ], + "consistencyPolicy": { + "defaultConsistencyLevel": "BoundedStaleness", + "maxIntervalInSeconds": 10, + "maxStalenessPrefix": 200 + }, + "defaultIdentity": "FirstPartyIdentity", + "enableFreeTier": false, + "enableAnalyticalStorage": true, + "backupPolicy": { + "type": "Periodic", + "periodicModeProperties": { + "backupIntervalInMinutes": 240, + "backupRetentionIntervalInHours": 720 + } + }, + "networkAclBypass": "AzureServices", + "networkAclBypassResourceIds": [ + "/subscriptions/subId/resourcegroups/rgName/providers/Microsoft.Synapse/workspaces/workspaceName" + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1", + "name": "ddb1", + "location": "West US", + "type": "Microsoft.DocumentDB/databaseAccounts", + "kind": "GlobalDocumentDB", + "tags": { + "dept": "finance" + }, + "identity": { + "type": "SystemAssigned,UserAssigned", + "principalId": "52f4fef3-3c3f-4ff3-b52e-b5c9eeb68656", + "tenantId": "33e01921-4d64-4f8c-a055-5bdaffd5e33d", + "userAssignedIdentities": { + "/subscriptions/fa5fc227-a624-475e-b696-cdd604c735bc/resourceGroups/eu2cgroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": { + "clientId": "fbe75b66-01c5-4f87-a220-233af3270436", + "principalId": "33e01921-4d64-4f8c-a055-5bdaffd5e33d" + } + } + }, + "properties": { + "provisioningState": "Succeeded", + "documentEndpoint": "https://ddb1.documents.azure.com:443/", + "databaseAccountOfferType": "Standard", + "ipRules": [ + { + "ipAddressOrRange": "23.43.230.120" + }, + { + "ipAddressOrRange": "110.12.240.0/12" + } + ], + "isVirtualNetworkFilterEnabled": true, + "disableKeyBasedMetadataWriteAccess": false, + "consistencyPolicy": { + "defaultConsistencyLevel": "BoundedStaleness", + "maxIntervalInSeconds": 10, + "maxStalenessPrefix": 200 + }, + "writeLocations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "readLocations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "locations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "failoverPolicies": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "failoverPriority": 0 + } + ], + "virtualNetworkRules": [ + { + "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "ignoreMissingVNetServiceEndpoint": false + } + ], + "privateEndpointConnections": [ + { + "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.DocumentDB/databaseAccounts/account1/privateEndpointConnections/pe1", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.Network/privateEndpoints/pe1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "actionsRequired": "None" + } + } + } + ], + "cors": [], + "defaultIdentity": "FirstPartyIdentity", + "enableFreeTier": false, + "apiProperties": {}, + "enableAnalyticalStorage": true, + "backupPolicy": { + "type": "Periodic", + "periodicModeProperties": { + "backupIntervalInMinutes": 240, + "backupRetentionIntervalInHours": 720 + } + }, + "networkAclBypass": "AzureServices", + "networkAclBypassResourceIds": [ + "/subscriptions/subId/resourcegroups/rgName/providers/Microsoft.Synapse/workspaces/workspaceName" + ] + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountRegenerateKey.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountRegenerateKey.json new file mode 100644 index 000000000000..c5683e4b39d4 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountRegenerateKey.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "keyToRegenerate": { + "keyKind": "primary" + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountRegionGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountRegionGetMetrics.json new file mode 100644 index 000000000000..8064c3a285ad --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseAccountRegionGetMetrics.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "region": "North Europe", + "$filter": "$filter=(name.value eq 'Total Requests') and timeGrain eq duration'PT5M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T00:13:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Count", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-19T23:58:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:03:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:08:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + } + ], + "name": { + "value": "Total Requests", + "localizedValue": "Total Requests" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseGetMetricDefinitions.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseGetMetricDefinitions.json new file mode 100644 index 000000000000..babd7313a507 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseGetMetricDefinitions.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "subscriptionId": "subid", + "api-version": "2021-03-15", + "databaseRid": "databaseRid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "metricAvailabilities": [ + { + "timeGrain": "PT5M", + "retention": "P2D" + }, + { + "timeGrain": "PT1H", + "retention": "P14D" + }, + { + "timeGrain": "P1D", + "retention": "P60D" + } + ], + "primaryAggregationType": "Total", + "unit": "Count", + "resourceUri": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1", + "name": { + "value": "Total Requests", + "localizedValue": "Total Requests" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseGetMetrics.json new file mode 100644 index 000000000000..a826ac7e574c --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseGetMetrics.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "databaseRid": "rid", + "$filter": "$filter=(name.value eq 'Total Requests') and timeGrain eq duration'PT5M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T00:13:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Count", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-19T23:58:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:03:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:08:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + } + ], + "name": { + "value": "Total Requests", + "localizedValue": "Total Requests" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseGetUsages.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseGetUsages.json new file mode 100644 index 000000000000..818a21a1c9ca --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBDatabaseGetUsages.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "databaseRid": "databaseRid", + "subscriptionId": "subid", + "$filter": "$filter=name.value eq 'Storage'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "unit": "Bytes", + "quotaPeriod": "P1D", + "limit": 10737418240, + "currentValue": 0, + "name": { + "value": "Storage", + "localizedValue": "Storage" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBGremlinDatabaseCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBGremlinDatabaseCreateUpdate.json new file mode 100644 index 000000000000..fde7f882b7a7 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBGremlinDatabaseCreateUpdate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "createUpdateGremlinDatabaseParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName" + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/gremlinDatabases/databaseName", + "name": "databaseName", + "type": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName", + "_rid": "CqNBAA==", + "_ts": 1449602962, + "_etag": "\"00000a00-0000-0000-0000-56672f920000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBGremlinDatabaseDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBGremlinDatabaseDelete.json new file mode 100644 index 000000000000..17d8d9f113b8 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBGremlinDatabaseDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBGremlinDatabaseGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBGremlinDatabaseGet.json new file mode 100644 index 000000000000..7a5d9f346222 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBGremlinDatabaseGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/gremlinDatabases/databaseName", + "name": "databaseName", + "type": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName", + "_rid": "CqNBAA==", + "_ts": 1449602962, + "_etag": "\"00000a00-0000-0000-0000-56672f920000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBGremlinDatabaseList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBGremlinDatabaseList.json new file mode 100644 index 000000000000..c51f351cdac7 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBGremlinDatabaseList.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2021-03-15", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/gremlinDatabases/databaseName", + "name": "databaseName", + "type": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName", + "_rid": "CqNBAA==", + "_ts": 1449602962, + "_etag": "\"00000a00-0000-0000-0000-56672f920000\"" + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBGremlinDatabaseMigrateToAutoscale.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBGremlinDatabaseMigrateToAutoscale.json new file mode 100644 index 000000000000..24275fbdd95f --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBGremlinDatabaseMigrateToAutoscale.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "autoscaleSettings": { + "maxThroughput": 4000 + }, + "minimumThroughput": "4000", + "offerReplacePending": "false", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBGremlinDatabaseMigrateToManualThroughput.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBGremlinDatabaseMigrateToManualThroughput.json new file mode 100644 index 000000000000..7c31383905c2 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBGremlinDatabaseMigrateToManualThroughput.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBGremlinDatabaseThroughputGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBGremlinDatabaseThroughputGet.json new file mode 100644 index 000000000000..cb60976c36e4 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBGremlinDatabaseThroughputGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/gremlinDatabases/databaseName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBGremlinDatabaseThroughputUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBGremlinDatabaseThroughputUpdate.json new file mode 100644 index 000000000000..6bd8937f6f68 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBGremlinDatabaseThroughputUpdate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "updateThroughputParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/gremlinDatabases/databaseName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBGremlinGraphCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBGremlinGraphCreateUpdate.json new file mode 100644 index 000000000000..9cd8692e269c --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBGremlinGraphCreateUpdate.json @@ -0,0 +1,124 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "graphName": "graphName", + "createUpdateGremlinGraphParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "graphName", + "indexingPolicy": { + "indexingMode": "consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/AccountNumber" + ], + "kind": "Hash" + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + } + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/gremlinDatabases/databaseName/gremlinGraphs/graphName", + "name": "graphName", + "type": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases/gremlinGraphs", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "graphName", + "indexingPolicy": { + "indexingMode": "consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/AccountNumber" + ], + "kind": "Hash" + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + }, + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBGremlinGraphDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBGremlinGraphDelete.json new file mode 100644 index 000000000000..bc0afbbc3286 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBGremlinGraphDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "graphName": "graphName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBGremlinGraphGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBGremlinGraphGet.json new file mode 100644 index 000000000000..a28de338662c --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBGremlinGraphGet.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2021-03-15", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName", + "graphName": "graphName" + }, + "responses": { + "200": { + "body": { + "id": "graphName", + "name": "graphName", + "type": "Microsoft.DocumentDB/databaseAccounts/apis/databases/graphs", + "properties": { + "resource": { + "id": "graphName", + "indexingPolicy": { + "indexingMode": "consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/AccountNumber" + ], + "kind": "Hash" + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + }, + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBGremlinGraphList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBGremlinGraphList.json new file mode 100644 index 000000000000..2afe0ff20507 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBGremlinGraphList.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "api-version": "2021-03-15", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "testgrf", + "name": "testgrf", + "type": "Microsoft.DocumentDB/databaseAccounts/apis/databases/graphs", + "properties": { + "resource": { + "id": "testgrf", + "indexingPolicy": { + "indexingMode": "consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/AccountNumber" + ], + "kind": "Hash" + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + }, + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBGremlinGraphMigrateToAutoscale.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBGremlinGraphMigrateToAutoscale.json new file mode 100644 index 000000000000..38eca2d265bc --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBGremlinGraphMigrateToAutoscale.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "graphName": "graphName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "autoscaleSettings": { + "maxThroughput": 4000 + }, + "minimumThroughput": "4000", + "offerReplacePending": "false", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBGremlinGraphMigrateToManualThroughput.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBGremlinGraphMigrateToManualThroughput.json new file mode 100644 index 000000000000..b649fae7b794 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBGremlinGraphMigrateToManualThroughput.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "graphName": "graphName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBGremlinGraphThroughputGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBGremlinGraphThroughputGet.json new file mode 100644 index 000000000000..a698ca303ddd --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBGremlinGraphThroughputGet.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "graphName": "graphName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/gremlinDatabases/databaseName/gremlinGraphs/graphName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBGremlinGraphThroughputUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBGremlinGraphThroughputUpdate.json new file mode 100644 index 000000000000..1e44be5cac59 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBGremlinGraphThroughputUpdate.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "graphName": "graphName", + "updateThroughputParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/gremlinDatabases/databaseName/gremlinGraphs/graphName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBMongoDBCollectionCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBMongoDBCollectionCreateUpdate.json new file mode 100644 index 000000000000..b721d527f0e1 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBMongoDBCollectionCreateUpdate.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "collectionName": "collectionName", + "createUpdateMongoDBCollectionParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "collectionName", + "indexes": [ + { + "key": { + "keys": [ + "testKey" + ] + }, + "options": { + "expireAfterSeconds": 100, + "unique": true + } + } + ], + "shardKey": { + "testKey": "Hash" + } + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName/mongodbCollections/collectionName", + "name": "collectionName", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/mongodbCollections", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "collectionName", + "indexes": [ + { + "key": { + "keys": [ + "testKey" + ] + }, + "options": { + "expireAfterSeconds": 100, + "unique": true + } + } + ], + "shardKey": { + "testKey": "Hash" + } + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBMongoDBCollectionDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBMongoDBCollectionDelete.json new file mode 100644 index 000000000000..61d2fb4ff848 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBMongoDBCollectionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "collectionName": "collectionName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBMongoDBCollectionGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBMongoDBCollectionGet.json new file mode 100644 index 000000000000..83cc106c456b --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBMongoDBCollectionGet.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2021-03-15", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName", + "collectionName": "collectionName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName/mongodbCollections/collectionName", + "name": "collectionName", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/mongodbCollections", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "testcoll", + "indexes": [ + { + "key": { + "keys": [ + "testKey" + ] + }, + "options": { + "expireAfterSeconds": 100, + "unique": true + } + } + ], + "shardKey": { + "testKey": "Hash" + }, + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBMongoDBCollectionList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBMongoDBCollectionList.json new file mode 100644 index 000000000000..377dcd4254ac --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBMongoDBCollectionList.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2021-03-15", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName/mongodbCollections/collectionName", + "name": "collectionName", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/mongodbCollections", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "testcoll", + "indexes": [ + { + "key": { + "keys": [ + "testKey" + ] + }, + "options": { + "expireAfterSeconds": 100, + "unique": true + } + } + ], + "shardKey": { + "testKey": "Hash" + } + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBMongoDBCollectionMigrateToAutoscale.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBMongoDBCollectionMigrateToAutoscale.json new file mode 100644 index 000000000000..65680d09c8cc --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBMongoDBCollectionMigrateToAutoscale.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "collectionName": "collectionName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "autoscaleSettings": { + "maxThroughput": 4000 + }, + "minimumThroughput": "4000", + "offerReplacePending": "false", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBMongoDBCollectionMigrateToManualThroughput.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBMongoDBCollectionMigrateToManualThroughput.json new file mode 100644 index 000000000000..c67268c9fa7c --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBMongoDBCollectionMigrateToManualThroughput.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "collectionName": "collectionName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBMongoDBCollectionThroughputGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBMongoDBCollectionThroughputGet.json new file mode 100644 index 000000000000..7dfe7b3112bf --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBMongoDBCollectionThroughputGet.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "collectionName": "collectionName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName/mongodbCollections/collectionName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/mongodbCollections/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBMongoDBCollectionThroughputUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBMongoDBCollectionThroughputUpdate.json new file mode 100644 index 000000000000..2143b3f31c76 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBMongoDBCollectionThroughputUpdate.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "collectionName": "collectionName", + "updateThroughputParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName/mongodbCollections/collectionName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/mongodbCollections/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBMongoDBDatabaseCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBMongoDBDatabaseCreateUpdate.json new file mode 100644 index 000000000000..08aa55082aed --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBMongoDBDatabaseCreateUpdate.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "createUpdateMongoDBDatabaseParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName" + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName", + "name": "databaseName", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "updatedDatabaseName" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBMongoDBDatabaseDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBMongoDBDatabaseDelete.json new file mode 100644 index 000000000000..17d8d9f113b8 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBMongoDBDatabaseDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBMongoDBDatabaseGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBMongoDBDatabaseGet.json new file mode 100644 index 000000000000..283328d1f679 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBMongoDBDatabaseGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName", + "name": "databaseName", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBMongoDBDatabaseList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBMongoDBDatabaseList.json new file mode 100644 index 000000000000..80d7b0caafbc --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBMongoDBDatabaseList.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2021-03-15", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName", + "name": "databaseName", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName" + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBMongoDBDatabaseMigrateToAutoscale.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBMongoDBDatabaseMigrateToAutoscale.json new file mode 100644 index 000000000000..24275fbdd95f --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBMongoDBDatabaseMigrateToAutoscale.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "autoscaleSettings": { + "maxThroughput": 4000 + }, + "minimumThroughput": "4000", + "offerReplacePending": "false", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBMongoDBDatabaseMigrateToManualThroughput.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBMongoDBDatabaseMigrateToManualThroughput.json new file mode 100644 index 000000000000..7c31383905c2 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBMongoDBDatabaseMigrateToManualThroughput.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBMongoDBDatabaseThroughputGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBMongoDBDatabaseThroughputGet.json new file mode 100644 index 000000000000..b32b727f07b4 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBMongoDBDatabaseThroughputGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBMongoDBDatabaseThroughputUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBMongoDBDatabaseThroughputUpdate.json new file mode 100644 index 000000000000..f716d9f2429a --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBMongoDBDatabaseThroughputUpdate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "updateThroughputParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBNotebookWorkspaceCreate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBNotebookWorkspaceCreate.json new file mode 100644 index 000000000000..52f22a65a2e0 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBNotebookWorkspaceCreate.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2021-03-15", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "accountName": "ddb1", + "notebookWorkspaceName": "default", + "notebookCreateUpdateParameters": {} + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/notebookWorkspaces/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/notebookWorkspaces", + "properties": { + "notebookServerEndpoint": "endpoint", + "status": "Online" + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBNotebookWorkspaceDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBNotebookWorkspaceDelete.json new file mode 100644 index 000000000000..bc9875ecbf5d --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBNotebookWorkspaceDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "notebookWorkspaceName": "default" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBNotebookWorkspaceGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBNotebookWorkspaceGet.json new file mode 100644 index 000000000000..d9e3dbad6c2d --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBNotebookWorkspaceGet.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2021-03-15", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "accountName": "ddb1", + "notebookWorkspaceName": "default" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/notebookWorkspaces/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/notebookWorkspaces", + "properties": { + "notebookServerEndpoint": "endpoint", + "status": "Online" + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBNotebookWorkspaceList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBNotebookWorkspaceList.json new file mode 100644 index 000000000000..f9f30155d53d --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBNotebookWorkspaceList.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2021-03-15", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "accountName": "ddb1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/notebookWorkspaces/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/notebookWorkspaces", + "properties": { + "notebookServerEndpoint": "endpoint", + "status": "Online" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBNotebookWorkspaceListConnectionInfo.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBNotebookWorkspaceListConnectionInfo.json new file mode 100644 index 000000000000..cfd47a1b8fe7 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBNotebookWorkspaceListConnectionInfo.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2021-03-15", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "accountName": "ddb1", + "notebookWorkspaceName": "default" + }, + "responses": { + "200": { + "body": { + "authToken": "auth-token", + "notebookServerEndpoint": "notebook endpoint" + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBNotebookWorkspaceRegenerateAuthToken.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBNotebookWorkspaceRegenerateAuthToken.json new file mode 100644 index 000000000000..253e7fb64de4 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBNotebookWorkspaceRegenerateAuthToken.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-03-15", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "accountName": "ddb1", + "notebookWorkspaceName": "default" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBNotebookWorkspaceStart.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBNotebookWorkspaceStart.json new file mode 100644 index 000000000000..253e7fb64de4 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBNotebookWorkspaceStart.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-03-15", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "accountName": "ddb1", + "notebookWorkspaceName": "default" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBOperationsList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBOperationsList.json new file mode 100644 index 000000000000..f4644f83252e --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBOperationsList.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2021-03-15" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "operationName", + "display": { + "Provider": "providerName", + "Resource": "resourceName", + "Operation": "operationName", + "Description": "description" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBPKeyRangeIdGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBPKeyRangeIdGetMetrics.json new file mode 100644 index 000000000000..e04487b75015 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBPKeyRangeIdGetMetrics.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "databaseRid": "databaseRid", + "collectionRid": "collectionRid", + "partitionKeyRangeId": "0", + "$filter": "$filter=(name.value eq 'Max RUs Per Second') and timeGrain eq duration'PT1M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T23:58:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT1M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T23:58:55.2780000Z", + "unit": "Count", + "partitionId": "00000000-0000-0000-0000-000000000000", + "partitionKeyRangeId": "0", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:54:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:55:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:56:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:57:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:58:55.2780000Z", + "maximum": 5 + } + ], + "name": { + "value": "Max RUs Per Second", + "localizedValue": "Max RUs Per Second" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBPKeyRangeIdRegionGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBPKeyRangeIdRegionGetMetrics.json new file mode 100644 index 000000000000..aea2364a785c --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBPKeyRangeIdRegionGetMetrics.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "databaseRid": "databaseRid", + "collectionRid": "collectionRid", + "partitionKeyRangeId": "0", + "region": "West US", + "$filter": "$filter=(name.value eq 'Max RUs Per Second') and timeGrain eq duration'PT1M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T23:58:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT1M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T23:58:55.2780000Z", + "unit": "Count", + "partitionId": "00000000-0000-0000-0000-000000000000", + "partitionKeyRangeId": "0", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:54:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:55:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:56:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:57:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:58:55.2780000Z", + "maximum": 5 + } + ], + "name": { + "value": "Max RUs Per Second", + "localizedValue": "Max RUs Per Second" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBPercentileGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBPercentileGetMetrics.json new file mode 100644 index 000000000000..538c28be856b --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBPercentileGetMetrics.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "$filter": "$filter=(name.value eq 'Probabilistic Bounded Staleness') and timeGrain eq duration'PT5M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T00:13:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Milliseconds", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "P10": 1.11, + "P25": 2.5, + "P50": 4.34, + "P75": 5.2, + "P90": 6.77, + "P95": 7.1, + "P99": 8.3 + } + ], + "name": { + "value": "Probabilistic Bounded Staleness-S-West Central US-T-East US", + "localizedValue": "Probabilistic Bounded Staleness-S-West Central US-T-East US" + } + }, + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Milliseconds", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "P10": 1.11, + "P25": 2.5, + "P50": 4.34, + "P75": 5.2, + "P90": 6.77, + "P95": 7.1, + "P99": 8.3 + } + ], + "name": { + "value": "Probabilistic Bounded Staleness-S-West Central US-T-West US", + "localizedValue": "Probabilistic Bounded Staleness-S-West Central US-T-West US" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBPercentileSourceTargetGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBPercentileSourceTargetGetMetrics.json new file mode 100644 index 000000000000..2b50b2aaf57b --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBPercentileSourceTargetGetMetrics.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "sourceRegion": "West Central US", + "targetRegion": "East US", + "$filter": "$filter=(name.value eq 'Probabilistic Bounded Staleness') and timeGrain eq duration'PT5M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T00:13:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Milliseconds", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "P10": 1.11, + "P25": 2.5, + "P50": 4.34, + "P75": 5.2, + "P90": 6.77, + "P95": 7.1, + "P99": 8.3 + } + ], + "name": { + "value": "Probabilistic Bounded Staleness-S-West Central US-T-East US", + "localizedValue": "Probabilistic Bounded Staleness-S-West Central US-T-East US" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBPercentileTargetGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBPercentileTargetGetMetrics.json new file mode 100644 index 000000000000..1e453112c742 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBPercentileTargetGetMetrics.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "targetRegion": "East US", + "$filter": "$filter=(name.value eq 'Probabilistic Bounded Staleness') and timeGrain eq duration'PT5M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T00:13:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Milliseconds", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "P10": 1.11, + "P25": 2.5, + "P50": 4.34, + "P75": 5.2, + "P90": 6.77, + "P95": 7.1, + "P99": 8.3 + } + ], + "name": { + "value": "Probabilistic Bounded Staleness-S-West Central US-T-East US", + "localizedValue": "Probabilistic Bounded Staleness-S-West Central US-T-East US" + } + }, + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Milliseconds", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "P10": 1.11, + "P25": 2.5, + "P50": 4.34, + "P75": 5.2, + "P90": 6.77, + "P95": 7.1, + "P99": 8.3 + } + ], + "name": { + "value": "Probabilistic Bounded Staleness-S-West US-T-East US", + "localizedValue": "Probabilistic Bounded Staleness-S-West Central US-T-West US" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBPrivateEndpointConnectionDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBPrivateEndpointConnectionDelete.json new file mode 100644 index 000000000000..8ee93a298a8b --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBPrivateEndpointConnectionDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg1", + "accountName": "ddb1", + "api-version": "2021-03-15", + "privateEndpointConnectionName": "privateEndpointConnectionName" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBPrivateEndpointConnectionGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBPrivateEndpointConnectionGet.json new file mode 100644 index 000000000000..779dc68777ea --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBPrivateEndpointConnectionGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg1", + "accountName": "ddb1", + "api-version": "2021-03-15", + "privateEndpointConnectionName": "privateEndpointConnectionName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg1/providers/Microsoft.DocumentDb/databaseAccounts/ddb1/privateEndpointConnections/privateEndpointConnectionName", + "name": "privateEndpointConnectionName", + "type": "Microsoft.DocumentDb/databaseAccounts/privateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg1Network/providers/Microsoft.Network/privateEndpoints/privateEndpointName" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + }, + "groupId": "Sql", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBPrivateEndpointConnectionListGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBPrivateEndpointConnectionListGet.json new file mode 100644 index 000000000000..88e9c0dbd71f --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBPrivateEndpointConnectionListGet.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg1", + "accountName": "ddb1", + "api-version": "2021-03-15" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDb/databaseAccounts/ddb1/privateEndpointConnections/privateEndpointConnectionName", + "name": "privateEndpointConnectionName", + "type": "Microsoft.DocumentDb/databaseAccounts/privateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg1Network/providers/Microsoft.Network/privateEndpoints/privateEndpointName" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + }, + "groupId": "Sql", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDb/databaseAccounts/ddb1/privateEndpointConnections/privateEndpointConnectionName2", + "name": "privateEndpointConnectionName", + "type": "Microsoft.DocumentDb/databaseAccounts/privateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg1Network/providers/Microsoft.Network/privateEndpoints/privateEndpointName2" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + }, + "groupId": "Sql", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBPrivateEndpointConnectionUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBPrivateEndpointConnectionUpdate.json new file mode 100644 index 000000000000..21ac36d63dac --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBPrivateEndpointConnectionUpdate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg1", + "accountName": "ddb1", + "api-version": "2021-03-15", + "privateEndpointConnectionName": "privateEndpointConnectionName", + "parameters": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@contoso.com" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg1/providers/Microsoft.DocumentDb/databaseAccounts/ddb1/privateEndpointConnections/privateEndpointConnectionName", + "name": "privateEndpointConnectionName", + "type": "Microsoft.DocumentDb/databaseAccounts/privateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg1Network/providers/Microsoft.Network/privateEndpoints/privateEndpointName" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + }, + "groupId": "Sql", + "provisioningState": "Succeeded" + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBPrivateLinkResourceGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBPrivateLinkResourceGet.json new file mode 100644 index 000000000000..9e1cf80a1292 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBPrivateLinkResourceGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg1", + "accountName": "ddb1", + "api-version": "2021-03-15", + "groupName": "sql" + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.DocumentDb/databaseAccounts/ddb1/privateLinkResources/sql", + "name": "sql", + "type": "Microsoft.DocumentDB/databaseAccounts/privateLinkResources", + "properties": { + "groupId": "sql", + "requiredMembers": [ + "ddb1", + "ddb1-westus" + ], + "requiredZoneNames": [ + "privatelink.documents.azure.net" + ] + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBPrivateLinkResourceListGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBPrivateLinkResourceListGet.json new file mode 100644 index 000000000000..2a3eae1dd8b9 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBPrivateLinkResourceListGet.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg1", + "accountName": "ddb1", + "api-version": "2021-03-15" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.DocumentDb/databaseAccounts/ddb1/privateLinkResources/sql", + "name": "sql", + "type": "Microsoft.DocumentDB/databaseAccounts/privateLinkResources", + "properties": { + "groupId": "sql", + "requiredMembers": [ + "ddb1", + "ddb1-westus" + ], + "requiredZoneNames": [ + "privatelink.documents.azure.net" + ] + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBRegionCollectionGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBRegionCollectionGetMetrics.json new file mode 100644 index 000000000000..404b06ffe0bf --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBRegionCollectionGetMetrics.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "databaseRid": "databaseRid", + "collectionRid": "collectionRid", + "region": "North Europe", + "$filter": "$filter=(name.value eq 'Total Requests') and timeGrain eq duration'PT5M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T00:13:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Count", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-19T23:58:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:03:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:08:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + } + ], + "name": { + "value": "Total Requests", + "localizedValue": "Total Requests" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlContainerCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlContainerCreateUpdate.json new file mode 100644 index 000000000000..0f0ad08263e6 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlContainerCreateUpdate.json @@ -0,0 +1,124 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName", + "createUpdateSqlContainerParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "containerName", + "indexingPolicy": { + "indexingMode": "consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/AccountNumber" + ], + "kind": "Hash" + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + } + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName", + "name": "containerName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "containerName", + "indexingPolicy": { + "indexingMode": "consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/AccountNumber" + ], + "kind": "Hash" + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + }, + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlContainerDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlContainerDelete.json new file mode 100644 index 000000000000..fdfa13a102e9 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlContainerDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlContainerGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlContainerGet.json new file mode 100644 index 000000000000..2473f148a983 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlContainerGet.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "api-version": "2021-03-15", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName", + "containerName": "containerName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName", + "name": "containerName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "containerName", + "indexingPolicy": { + "indexingMode": "consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/AccountNumber" + ], + "kind": "Hash" + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + }, + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + }, + "options": { + "throughput": 400 + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlContainerList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlContainerList.json new file mode 100644 index 000000000000..617540320042 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlContainerList.json @@ -0,0 +1,192 @@ +{ + "parameters": { + "api-version": "2021-03-15", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName", + "name": "containerName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "testctn", + "indexingPolicy": { + "indexingMode": "consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/AccountNumber" + ], + "kind": "Hash" + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + }, + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName1", + "name": "containerName1", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "testctn1", + "indexingPolicy": { + "indexingMode": "consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/AccountNumber", + "/AccountLocation" + ], + "kind": "MultiHash", + "version": 2 + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + }, + "_rid": "PD5DALigDiw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName2", + "name": "containerName2", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "testctn2", + "indexingPolicy": { + "indexingMode": "consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/_partitionKey" + ], + "kind": "Hash", + "version": 2, + "systemKey": true + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + }, + "_rid": "PD5DALigDhw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlContainerMigrateToAutoscale.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlContainerMigrateToAutoscale.json new file mode 100644 index 000000000000..86be8b37039a --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlContainerMigrateToAutoscale.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "autoscaleSettings": { + "maxThroughput": 4000 + }, + "minimumThroughput": "4000", + "offerReplacePending": "false", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlContainerMigrateToManualThroughput.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlContainerMigrateToManualThroughput.json new file mode 100644 index 000000000000..944e00e4f0db --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlContainerMigrateToManualThroughput.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlContainerThroughputGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlContainerThroughputGet.json new file mode 100644 index 000000000000..81497f8b23c9 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlContainerThroughputGet.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlContainerThroughputUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlContainerThroughputUpdate.json new file mode 100644 index 000000000000..2192fd5d4ac9 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlContainerThroughputUpdate.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName", + "updateThroughputParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlDatabaseCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlDatabaseCreateUpdate.json new file mode 100644 index 000000000000..c40413b37099 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlDatabaseCreateUpdate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "createUpdateSqlDatabaseParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName" + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName", + "name": "databaseName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName", + "_rid": "CqNBAA==", + "_ts": 1449602962, + "_etag": "\"00000a00-0000-0000-0000-56672f920000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlDatabaseDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlDatabaseDelete.json new file mode 100644 index 000000000000..17d8d9f113b8 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlDatabaseDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlDatabaseGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlDatabaseGet.json new file mode 100644 index 000000000000..188c2f499e74 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlDatabaseGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName", + "name": "databaseName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName", + "_rid": "CqNBAA==", + "_ts": 1449602962, + "_etag": "\"00000a00-0000-0000-0000-56672f920000\"", + "_colls": "colls/", + "_users": "users/" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlDatabaseList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlDatabaseList.json new file mode 100644 index 000000000000..54e439a7a101 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlDatabaseList.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2021-03-15", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName", + "name": "databaseName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName", + "_rid": "CqNBAA==", + "_ts": 1449602962, + "_etag": "\"00000a00-0000-0000-0000-56672f920000\"", + "_colls": "colls/", + "_users": "users/" + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlDatabaseMigrateToAutoscale.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlDatabaseMigrateToAutoscale.json new file mode 100644 index 000000000000..24275fbdd95f --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlDatabaseMigrateToAutoscale.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "autoscaleSettings": { + "maxThroughput": 4000 + }, + "minimumThroughput": "4000", + "offerReplacePending": "false", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlDatabaseMigrateToManualThroughput.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlDatabaseMigrateToManualThroughput.json new file mode 100644 index 000000000000..7c31383905c2 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlDatabaseMigrateToManualThroughput.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlDatabaseThroughputGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlDatabaseThroughputGet.json new file mode 100644 index 000000000000..b2a5649555fb --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlDatabaseThroughputGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlDatabaseThroughputUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlDatabaseThroughputUpdate.json new file mode 100644 index 000000000000..282457e569a6 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlDatabaseThroughputUpdate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "updateThroughputParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlStoredProcedureCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlStoredProcedureCreateUpdate.json new file mode 100644 index 000000000000..e04973dd3aa0 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlStoredProcedureCreateUpdate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName", + "storedProcedureName": "storedProcedureName", + "createUpdateSqlStoredProcedureParameters": { + "properties": { + "resource": { + "id": "storedProcedureName", + "body": "body" + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/sqlStoredProcedures/storedProcedureName", + "name": "storedProcedureName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/sqlStoredProcedures", + "properties": { + "resource": { + "id": "storedProcedureName", + "body": "body", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlStoredProcedureDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlStoredProcedureDelete.json new file mode 100644 index 000000000000..db6c8025914b --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlStoredProcedureDelete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName", + "storedProcedureName": "storedProcedureName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlStoredProcedureGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlStoredProcedureGet.json new file mode 100644 index 000000000000..bd5016651357 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlStoredProcedureGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2021-03-15", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName", + "containerName": "containerName", + "storedProcedureName": "storedProcedureName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/sqlStoredProcedures/storedProcedureName", + "name": "storedProcedureName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/sqlStoredProcedures", + "properties": { + "resource": { + "id": "storedProcedureName", + "body": "body", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlStoredProcedureList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlStoredProcedureList.json new file mode 100644 index 000000000000..0cae4d44f890 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlStoredProcedureList.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2021-03-15", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName", + "containerName": "containerName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/sqlStoredProcedures/storedProcedureName", + "name": "testctn", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/sqlStoredProcedures", + "properties": { + "resource": { + "id": "testctn", + "body": "body", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlTriggerCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlTriggerCreateUpdate.json new file mode 100644 index 000000000000..77a3edd069fe --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlTriggerCreateUpdate.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName", + "triggerName": "triggerName", + "createUpdateSqlTriggerParameters": { + "properties": { + "resource": { + "id": "triggerName", + "body": "body", + "triggerType": "triggerType", + "triggerOperation": "triggerOperation" + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/sqlTriggers/triggerName", + "name": "triggerName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/sqlTriggers", + "properties": { + "resource": { + "id": "triggerName", + "body": "body", + "triggerType": "triggerType", + "triggerOperation": "triggerOperation", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlTriggerDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlTriggerDelete.json new file mode 100644 index 000000000000..2ced0cc1bfa3 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlTriggerDelete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName", + "triggerName": "triggerName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlTriggerGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlTriggerGet.json new file mode 100644 index 000000000000..8c515450e4cb --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlTriggerGet.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2021-03-15", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName", + "containerName": "containerName", + "triggerName": "triggerName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/sqlTriggers/triggerName", + "name": "triggerName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/sqlTriggers", + "properties": { + "resource": { + "id": "triggerName", + "body": "body", + "triggerType": "triggerType", + "triggerOperation": "triggerOperation", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlTriggerList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlTriggerList.json new file mode 100644 index 000000000000..672b38e3448b --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlTriggerList.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2021-03-15", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName", + "containerName": "containerName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/sqlTriggers/triggerName", + "name": "testctn", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/sqlTriggers", + "properties": { + "resource": { + "id": "testctn", + "body": "body", + "triggerType": "triggerType", + "triggerOperation": "triggerOperation", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlUserDefinedFunctionCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlUserDefinedFunctionCreateUpdate.json new file mode 100644 index 000000000000..66699f6a646a --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlUserDefinedFunctionCreateUpdate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName", + "userDefinedFunctionName": "userDefinedFunctionName", + "createUpdateSqlUserDefinedFunctionParameters": { + "properties": { + "resource": { + "id": "userDefinedFunctionName", + "body": "body" + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/sqlUserDefinedFunctions/userDefinedFunctionName", + "name": "userDefinedFunctionName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/sqlUserDefinedFunctions", + "properties": { + "resource": { + "id": "userDefinedFunctionName", + "body": "body", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlUserDefinedFunctionDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlUserDefinedFunctionDelete.json new file mode 100644 index 000000000000..c7ba3fc95fdc --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlUserDefinedFunctionDelete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName", + "userDefinedFunctionName": "userDefinedFunctionName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlUserDefinedFunctionGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlUserDefinedFunctionGet.json new file mode 100644 index 000000000000..6e1c0cb46283 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlUserDefinedFunctionGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2021-03-15", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName", + "containerName": "containerName", + "userDefinedFunctionName": "userDefinedFunctionName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/sqlUserDefinedFunctions/userDefinedFunctionName", + "name": "userDefinedFunctionName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/sqlUserDefinedFunctions", + "properties": { + "resource": { + "id": "userDefinedFunctionName", + "body": "body", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlUserDefinedFunctionList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlUserDefinedFunctionList.json new file mode 100644 index 000000000000..70362881c321 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBSqlUserDefinedFunctionList.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2021-03-15", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName", + "containerName": "containerName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/sqlUserDefinedFunctions/userDefinedFunctionName", + "name": "testctn", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/sqlUserDefinedFunctions", + "properties": { + "resource": { + "id": "testctn", + "body": "body", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBTableCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBTableCreateUpdate.json new file mode 100644 index 000000000000..40a62c288ee4 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBTableCreateUpdate.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "tableName": "tableName", + "createUpdateTableParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "tableName" + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/tables/tableName", + "name": "tableName", + "type": "Microsoft.DocumentDB/databaseAccounts/tables", + "location": "West US", + "properties": { + "resource": { + "id": "tableName" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBTableDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBTableDelete.json new file mode 100644 index 000000000000..f9702b32756a --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBTableDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "tableName": "tableName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBTableGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBTableGet.json new file mode 100644 index 000000000000..89e3b13cba48 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBTableGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "tableName": "tableName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/tables/tableName", + "name": "tableName", + "type": "Microsoft.DocumentDB/databaseAccounts/tables", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "tableName", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBTableList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBTableList.json new file mode 100644 index 000000000000..496d7970c682 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBTableList.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2021-03-15", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/tables/tableName", + "name": "tableName", + "type": "Microsoft.DocumentDB/databaseAccounts/tables", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "tableName" + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBTableMigrateToAutoscale.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBTableMigrateToAutoscale.json new file mode 100644 index 000000000000..33848b80727d --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBTableMigrateToAutoscale.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "tableName": "tableName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "autoscaleSettings": { + "maxThroughput": 4000 + }, + "minimumThroughput": "4000", + "offerReplacePending": "false", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBTableMigrateToManualThroughput.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBTableMigrateToManualThroughput.json new file mode 100644 index 000000000000..5be1a8a882a1 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBTableMigrateToManualThroughput.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "tableName": "tableName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBTableThroughputGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBTableThroughputGet.json new file mode 100644 index 000000000000..d33769fdfcbb --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBTableThroughputGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "tableName": "tableName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/tables/tableName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/tables/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBTableThroughputUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBTableThroughputUpdate.json new file mode 100644 index 000000000000..e846e85ca083 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/examples/CosmosDBTableThroughputUpdate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-03-15", + "subscriptionId": "subid", + "tableName": "tableName", + "updateThroughputParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/tables/tableName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/tables/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/notebook.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/notebook.json new file mode 100644 index 000000000000..b245b324dfa1 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/notebook.json @@ -0,0 +1,461 @@ +{ + "swagger": "2.0", + "info": { + "title": "Cosmos DB", + "description": "Azure Cosmos DB Database Service Resource Provider REST API", + "version": "2021-03-15" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "Impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/notebookWorkspaces": { + "get": { + "tags": [ + "NotebookWorkspacesResource" + ], + "description": "Gets the notebook workspace resources of an existing Cosmos DB account.", + "operationId": "NotebookWorkspaces_ListByDatabaseAccount", + "x-ms-pageable": { + "nextLinkName": null + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved notebook workspace resources.", + "schema": { + "$ref": "#/definitions/NotebookWorkspaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../stable/2021-03-15/cosmos-db.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "CosmosDBNotebookWorkspaceList": { + "$ref": "./examples/CosmosDBNotebookWorkspaceList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/notebookWorkspaces/{notebookWorkspaceName}": { + "get": { + "tags": [ + "NotebookWorkspacesResource" + ], + "description": "Gets the notebook workspace for a Cosmos DB account.", + "operationId": "NotebookWorkspaces_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/NotebookWorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved a specified notebook workspace resource.", + "schema": { + "$ref": "#/definitions/NotebookWorkspace" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../stable/2021-03-15/cosmos-db.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "CosmosDBNotebookWorkspaceGet": { + "$ref": "./examples/CosmosDBNotebookWorkspaceGet.json" + } + } + }, + "put": { + "tags": [ + "NotebookWorkspacesResource" + ], + "description": "Creates the notebook workspace for a Cosmos DB account.", + "operationId": "NotebookWorkspaces_CreateOrUpdate", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/NotebookWorkspaceNameParameter" + }, + { + "name": "notebookCreateUpdateParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NotebookWorkspaceCreateUpdateParameters" + }, + "description": "The notebook workspace to create for the current database account." + } + ], + "responses": { + "200": { + "description": "Creation of notebook workspace will complete asynchronously.", + "schema": { + "$ref": "#/definitions/NotebookWorkspace" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../stable/2021-03-15/cosmos-db.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "CosmosDBNotebookWorkspaceCreate": { + "$ref": "./examples/CosmosDBNotebookWorkspaceCreate.json" + } + } + }, + "delete": { + "tags": [ + "NotebookWorkspacesResource" + ], + "description": "Deletes the notebook workspace for a Cosmos DB account.", + "operationId": "NotebookWorkspaces_Delete", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/NotebookWorkspaceNameParameter" + } + ], + "responses": { + "202": { + "description": "The notebook workspace delete operation will complete asynchronously." + }, + "204": { + "description": "The specified notebook workspace does not exist in the database account." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../stable/2021-03-15/cosmos-db.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "CosmosDBNotebookWorkspaceDelete": { + "$ref": "./examples/CosmosDBNotebookWorkspaceDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/notebookWorkspaces/{notebookWorkspaceName}/listConnectionInfo": { + "post": { + "tags": [ + "NotebookWorkspacesResource" + ], + "operationId": "NotebookWorkspaces_ListConnectionInfo", + "x-ms-examples": { + "CosmosDBNotebookWorkspaceListConnectionInfo": { + "$ref": "./examples/CosmosDBNotebookWorkspaceListConnectionInfo.json" + } + }, + "description": "Retrieves the connection info for the notebook workspace", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/NotebookWorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/NotebookWorkspaceConnectionInfoResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../stable/2021-03-15/cosmos-db.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/notebookWorkspaces/{notebookWorkspaceName}/regenerateAuthToken": { + "post": { + "tags": [ + "NotebookWorkspacesResource" + ], + "operationId": "NotebookWorkspaces_RegenerateAuthToken", + "x-ms-long-running-operation": true, + "x-ms-examples": { + "CosmosDBNotebookWorkspaceRegenerateAuthToken": { + "$ref": "./examples/CosmosDBNotebookWorkspaceRegenerateAuthToken.json" + } + }, + "description": "Regenerates the auth token for the notebook workspace", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/NotebookWorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted. The regenerate auth token operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../stable/2021-03-15/cosmos-db.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/notebookWorkspaces/{notebookWorkspaceName}/start": { + "post": { + "tags": [ + "NotebookWorkspacesResource" + ], + "operationId": "NotebookWorkspaces_Start", + "x-ms-long-running-operation": true, + "x-ms-examples": { + "CosmosDBNotebookWorkspaceStart": { + "$ref": "./examples/CosmosDBNotebookWorkspaceStart.json" + } + }, + "description": "Starts the notebook workspace", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/NotebookWorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted. The start operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../stable/2021-03-15/cosmos-db.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "NotebookWorkspaceCreateUpdateParameters": { + "description": "Parameters to create a notebook workspace resource", + "type": "object", + "allOf": [ + { + "$ref": "../../stable/2021-03-15/cosmos-db.json#/definitions/ARMProxyResource" + } + ] + }, + "NotebookWorkspaceListResult": { + "description": "A list of notebook workspace resources", + "type": "object", + "properties": { + "value": { + "type": "array", + "description": "Array of notebook workspace resources", + "items": { + "$ref": "#/definitions/NotebookWorkspace" + } + } + } + }, + "NotebookWorkspace": { + "description": "A notebook workspace resource", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/NotebookWorkspaceProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "../../stable/2021-03-15/cosmos-db.json#/definitions/ARMProxyResource" + } + ] + }, + "NotebookWorkspaceProperties": { + "description": "Properties of a notebook workspace resource.", + "type": "object", + "properties": { + "notebookServerEndpoint": { + "description": "Specifies the endpoint of Notebook server.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "Status of the notebook workspace. Possible values are: Creating, Online, Deleting, Failed, Updating.", + "type": "string", + "readOnly": true + } + } + }, + "NotebookWorkspaceConnectionInfoResult": { + "description": "The connection info for the given notebook workspace", + "properties": { + "authToken": { + "type": "string", + "description": "Specifies auth token used for connecting to Notebook server (uses token-based auth).", + "readOnly": true + }, + "notebookServerEndpoint": { + "type": "string", + "description": "Specifies the endpoint of Notebook server.", + "readOnly": true + } + } + } + }, + "parameters": { + "accountNameParameter": { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB database account name.", + "minLength": 3, + "maxLength": 50, + "pattern": "^[a-z0-9]+(-[a-z0-9]+)*" + }, + "NotebookWorkspaceNameParameter": { + "name": "notebookWorkspaceName", + "in": "path", + "description": "The name of the notebook workspace resource.", + "required": true, + "x-ms-parameter-location": "method", + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "NotebookWorkspaceName", + "modelAsString": true + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/privateEndpointConnection.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/privateEndpointConnection.json new file mode 100644 index 000000000000..3cfd0db3abdf --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/privateEndpointConnection.json @@ -0,0 +1,318 @@ +{ + "swagger": "2.0", + "info": { + "title": "Cosmos DB", + "description": "Azure Cosmos DB Database Service Resource Provider REST API", + "version": "2021-03-15" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "Impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/privateEndpointConnections": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "List all private endpoint connections on a Cosmos DB account.", + "operationId": "PrivateEndpointConnections_ListByDatabaseAccount", + "x-ms-pageable": { + "nextLinkName": null + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private endpoint connections.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionListResult" + } + } + }, + "x-ms-examples": { + "Gets private endpoint connection.": { + "$ref": "./examples/CosmosDBPrivateEndpointConnectionListGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Gets a private endpoint connection.", + "operationId": "PrivateEndpointConnections_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved a specified private endpoint connection.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + } + }, + "x-ms-examples": { + "Gets private endpoint connection.": { + "$ref": "./examples/CosmosDBPrivateEndpointConnectionGet.json" + } + } + }, + "put": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Approve or reject a private endpoint connection with a given name.", + "operationId": "PrivateEndpointConnections_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + } + ], + "responses": { + "200": { + "description": "Successfully approved or rejected private endpoint connection.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "202": { + "description": "Accepted. The private endpoint connection update will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../stable/2021-03-15/cosmos-db.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Approve or reject a private endpoint connection with a given name.": { + "$ref": "./examples/CosmosDBPrivateEndpointConnectionUpdate.json" + } + } + }, + "delete": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Deletes a private endpoint connection with a given name.", + "operationId": "PrivateEndpointConnections_Delete", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionNameParameter" + } + ], + "responses": { + "202": { + "description": "Accepted. The private endpoint connection delete will complete asynchronously." + }, + "204": { + "description": "Private endpoint connection does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../stable/2021-03-15/cosmos-db.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Deletes a private endpoint connection with a given name.": { + "$ref": "./examples/CosmosDBPrivateEndpointConnectionDelete.json" + } + } + } + } + }, + "definitions": { + "PrivateEndpointConnectionListResult": { + "description": "A list of private endpoint connections", + "type": "object", + "properties": { + "value": { + "type": "array", + "description": "Array of private endpoint connections", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + } + } + }, + "PrivateEndpointConnection": { + "description": "A private endpoint connection", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ] + }, + "PrivateEndpointConnectionProperties": { + "description": "Properties of a private endpoint connection.", + "type": "object", + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpointProperty", + "description": "Private endpoint which the connection belongs to." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionStateProperty", + "description": "Connection State of the Private Endpoint Connection." + }, + "groupId": { + "type": "string", + "description": "Group id of the private endpoint." + }, + "provisioningState": { + "type": "string", + "description": "Provisioning state of the private endpoint." + } + } + }, + "PrivateEndpointProperty": { + "type": "object", + "description": "Private endpoint which the connection belongs to.", + "properties": { + "id": { + "type": "string", + "description": "Resource id of the private endpoint." + } + } + }, + "PrivateLinkServiceConnectionStateProperty": { + "type": "object", + "description": "Connection State of the Private Endpoint Connection.", + "properties": { + "status": { + "type": "string", + "description": "The private link service connection status." + }, + "description": { + "type": "string", + "description": "The private link service connection description." + }, + "actionsRequired": { + "type": "string", + "description": "Any action that is required beyond basic workflow (approve/ reject/ disconnect)", + "readOnly": true + } + } + } + }, + "parameters": { + "accountNameParameter": { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB database account name.", + "minLength": 3, + "maxLength": 50, + "pattern": "^[a-z0-9]+(-[a-z0-9]+)*" + }, + "PrivateEndpointConnectionNameParameter": { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "The name of the private endpoint connection." + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/privateLinkResources.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/privateLinkResources.json new file mode 100644 index 000000000000..b298f7d8ef92 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-03-15/privateLinkResources.json @@ -0,0 +1,195 @@ +{ + "swagger": "2.0", + "info": { + "title": "Cosmos DB", + "description": "Azure Cosmos DB Database Service Resource Provider REST API", + "version": "2021-03-15" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "Impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/privateLinkResources": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "description": "Gets the private link resources that need to be created for a Cosmos DB account.", + "operationId": "PrivateLinkResources_ListByDatabaseAccount", + "x-ms-pageable": { + "nextLinkName": null + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private link resources.", + "schema": { + "$ref": "#/definitions/PrivateLinkResourceListResult" + } + } + }, + "x-ms-examples": { + "Gets private endpoint connection.": { + "$ref": "./examples/CosmosDBPrivateLinkResourceListGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/privateLinkResources/{groupName}": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "description": "Gets the private link resources that need to be created for a Cosmos DB account.", + "operationId": "PrivateLinkResources_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/GroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved a specified private link resource.", + "schema": { + "$ref": "#/definitions/PrivateLinkResource" + } + } + }, + "x-ms-examples": { + "Gets private endpoint connection.": { + "$ref": "./examples/CosmosDBPrivateLinkResourceGet.json" + } + } + } + } + }, + "definitions": { + "PrivateLinkResourceListResult": { + "description": "A list of private link resources", + "type": "object", + "properties": { + "value": { + "type": "array", + "description": "Array of private link resources", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + } + } + } + }, + "PrivateLinkResource": { + "description": "A private link resource", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "../../stable/2021-03-15/cosmos-db.json#/definitions/ARMProxyResource" + } + ] + }, + "PrivateLinkResourceProperties": { + "description": "Properties of a private link resource.", + "type": "object", + "properties": { + "groupId": { + "description": "The private link resource group id.", + "type": "string", + "readOnly": true + }, + "requiredMembers": { + "description": "The private link resource required member names.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "requiredZoneNames": { + "description": "The private link resource required zone names.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + } + } + } + }, + "parameters": { + "accountNameParameter": { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB database account name.", + "minLength": 3, + "maxLength": 50, + "pattern": "^[a-z0-9]+(-[a-z0-9]+)*" + }, + "GroupNameParameter": { + "name": "groupName", + "in": "path", + "description": "The name of the private link resource.", + "required": true, + "x-ms-parameter-location": "method", + "type": "string" + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/cosmos-db.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/cosmos-db.json new file mode 100644 index 000000000000..f07dc52f504a --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/cosmos-db.json @@ -0,0 +1,8587 @@ +{ + "swagger": "2.0", + "info": { + "title": "Cosmos DB", + "description": "Azure Cosmos DB Database Service Resource Provider REST API", + "version": "2021-04-15" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "Impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}": { + "get": { + "operationId": "DatabaseAccounts_Get", + "x-ms-examples": { + "CosmosDBDatabaseAccountGet": { + "$ref": "./examples/CosmosDBDatabaseAccountGet.json" + } + }, + "description": "Retrieves the properties of an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The database account properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/DatabaseAccountGetResults" + } + } + } + }, + "patch": { + "operationId": "DatabaseAccounts_Update", + "x-ms-examples": { + "CosmosDBDatabaseAccountPatch": { + "$ref": "./examples/CosmosDBDatabaseAccountPatch.json" + } + }, + "description": "Updates the properties of an existing Azure Cosmos DB database account.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "updateParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DatabaseAccountUpdateParameters" + }, + "description": "The parameters to provide for the current database account." + } + ], + "responses": { + "200": { + "description": "The database account update operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/DatabaseAccountGetResults" + } + } + } + }, + "put": { + "operationId": "DatabaseAccounts_CreateOrUpdate", + "x-ms-examples": { + "CosmosDBDatabaseAccountCreateMin": { + "$ref": "./examples/CosmosDBDatabaseAccountCreateMin.json" + }, + "CosmosDBDatabaseAccountCreateMax": { + "$ref": "./examples/CosmosDBDatabaseAccountCreateMax.json" + } + }, + "description": "Creates or updates an Azure Cosmos DB database account. The \"Update\" method is preferred when performing updates on an account.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DatabaseAccountCreateUpdateParameters" + }, + "description": "The parameters to provide for the current database account." + } + ], + "responses": { + "200": { + "description": "The database account create or update operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/DatabaseAccountGetResults" + } + } + } + }, + "delete": { + "operationId": "DatabaseAccounts_Delete", + "x-ms-examples": { + "CosmosDBDatabaseAccountDelete": { + "$ref": "./examples/CosmosDBDatabaseAccountDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB database account.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The database account delete operation will complete asynchronously." + }, + "204": { + "description": "The specified account does not exist in the subscription." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/failoverPriorityChange": { + "post": { + "operationId": "DatabaseAccounts_FailoverPriorityChange", + "x-ms-examples": { + "CosmosDBDatabaseAccountFailoverPriorityChange": { + "$ref": "./examples/CosmosDBDatabaseAccountFailoverPriorityChange.json" + } + }, + "description": "Changes the failover priority for the Azure Cosmos DB database account. A failover priority of 0 indicates a write region. The maximum value for a failover priority = (total number of regions - 1). Failover priority values must be unique for each of the regions in which the database account exists.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "failoverParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FailoverPolicies" + }, + "description": "The new failover policies for the database account." + } + ], + "responses": { + "202": { + "description": "Accepted. The failover policy change operation will complete asynchronously." + }, + "204": { + "description": "No Content" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DocumentDB/databaseAccounts": { + "get": { + "operationId": "DatabaseAccounts_List", + "x-ms-examples": { + "CosmosDBDatabaseAccountList": { + "$ref": "./examples/CosmosDBDatabaseAccountList.json" + } + }, + "description": "Lists all the Azure Cosmos DB database accounts available under the subscription.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/DatabaseAccountsListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts": { + "get": { + "operationId": "DatabaseAccounts_ListByResourceGroup", + "x-ms-examples": { + "CosmosDBDatabaseAccountListByResourceGroup": { + "$ref": "./examples/CosmosDBDatabaseAccountListByResourceGroup.json" + } + }, + "description": "Lists all the Azure Cosmos DB database accounts available under the given resource group.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/DatabaseAccountsListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/listKeys": { + "post": { + "operationId": "DatabaseAccounts_ListKeys", + "x-ms-examples": { + "CosmosDBDatabaseAccountListKeys": { + "$ref": "./examples/CosmosDBDatabaseAccountListKeys.json" + } + }, + "description": "Lists the access keys for the specified Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/DatabaseAccountListKeysResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/listConnectionStrings": { + "post": { + "operationId": "DatabaseAccounts_ListConnectionStrings", + "x-ms-examples": { + "CosmosDBDatabaseAccountListConnectionStrings": { + "$ref": "./examples/CosmosDBDatabaseAccountListConnectionStrings.json" + }, + "CosmosDBDatabaseAccountListConnectionStringsMongo": { + "$ref": "./examples/CosmosDBDatabaseAccountListConnectionStringsMongo.json" + } + }, + "description": "Lists the connection strings for the specified Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/DatabaseAccountListConnectionStringsResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/offlineRegion": { + "post": { + "operationId": "DatabaseAccounts_OfflineRegion", + "x-ms-examples": { + "CosmosDBDatabaseAccountOfflineRegion": { + "$ref": "./examples/CosmosDBDatabaseAccountOfflineRegion.json" + } + }, + "description": "Offline the specified region for the specified Azure Cosmos DB database account.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "regionParameterForOffline", + "in": "body", + "required": true, + "description": "Cosmos DB region to offline for the database account.", + "schema": { + "$ref": "#/definitions/RegionForOnlineOffline" + } + } + ], + "responses": { + "200": { + "description": "The offline region operation is completed successfully." + }, + "202": { + "description": "Accepted. The offline region operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/onlineRegion": { + "post": { + "operationId": "DatabaseAccounts_OnlineRegion", + "x-ms-examples": { + "CosmosDBDatabaseAccountOnlineRegion": { + "$ref": "./examples/CosmosDBDatabaseAccountOnlineRegion.json" + } + }, + "description": "Online the specified region for the specified Azure Cosmos DB database account.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "regionParameterForOnline", + "in": "body", + "required": true, + "description": "Cosmos DB region to online for the database account.", + "schema": { + "$ref": "#/definitions/RegionForOnlineOffline" + } + } + ], + "responses": { + "200": { + "description": "The online region operation is completed successfully." + }, + "202": { + "description": "Accepted. The online region operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/readonlykeys": { + "get": { + "operationId": "DatabaseAccounts_GetReadOnlyKeys", + "x-ms-examples": { + "CosmosDBDatabaseAccountListReadOnlyKeys": { + "$ref": "./examples/CosmosDBDatabaseAccountListReadOnlyKeys.json" + } + }, + "description": "Lists the read-only access keys for the specified Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/DatabaseAccountListReadOnlyKeysResult" + } + } + } + }, + "post": { + "operationId": "DatabaseAccounts_ListReadOnlyKeys", + "x-ms-examples": { + "CosmosDBDatabaseAccountListReadOnlyKeys": { + "$ref": "./examples/CosmosDBDatabaseAccountListReadOnlyKeys.json" + } + }, + "description": "Lists the read-only access keys for the specified Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/DatabaseAccountListReadOnlyKeysResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/regenerateKey": { + "post": { + "operationId": "DatabaseAccounts_RegenerateKey", + "x-ms-examples": { + "CosmosDBDatabaseAccountRegenerateKey": { + "$ref": "./examples/CosmosDBDatabaseAccountRegenerateKey.json" + } + }, + "description": "Regenerates an access key for the specified Azure Cosmos DB database account.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "keyToRegenerate", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DatabaseAccountRegenerateKeyParameters" + }, + "description": "The name of the key to regenerate." + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted. The regenerate key operation will complete asynchronously." + } + } + } + }, + "/providers/Microsoft.DocumentDB/databaseAccountNames/{accountName}": { + "head": { + "operationId": "DatabaseAccounts_CheckNameExists", + "x-ms-examples": { + "CosmosDBDatabaseAccountCheckNameExists": { + "$ref": "./examples/CosmosDBDatabaseAccountCheckNameExists.json" + } + }, + "description": "Checks that the Azure Cosmos DB account name already exists. A valid account name may contain only lowercase letters, numbers, and the '-' character, and must be between 3 and 50 characters.", + "parameters": [ + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The account name is valid but is already in use." + }, + "404": { + "description": "Not Found. The account name is available and valid." + } + } + } + }, + "/providers/Microsoft.DocumentDB/operations": { + "get": { + "tags": [ + "Operations" + ], + "description": "Lists all of the available Cosmos DB Resource Provider operations.", + "operationId": "Operations_List", + "x-ms-examples": { + "CosmosDBOperationsList": { + "$ref": "./examples/CosmosDBOperationsList.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/metrics": { + "get": { + "operationId": "DatabaseAccounts_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseAccountGetMetrics": { + "$ref": "./examples/CosmosDBDatabaseAccountGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The metrics for the database account were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/metrics": { + "get": { + "operationId": "Database_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseGetMetrics": { + "$ref": "./examples/CosmosDBDatabaseGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given database account and database.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The metrics for the database account were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/collections/{collectionRid}/metrics": { + "get": { + "operationId": "Collection_ListMetrics", + "x-ms-examples": { + "CosmosDBCollectionGetMetrics": { + "$ref": "./examples/CosmosDBCollectionGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given database account and collection.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/collectionRidParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The metrics for the database account were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/region/{region}/databases/{databaseRid}/collections/{collectionRid}/metrics": { + "get": { + "operationId": "CollectionRegion_ListMetrics", + "x-ms-examples": { + "CosmosDBRegionCollectionGetMetrics": { + "$ref": "./examples/CosmosDBRegionCollectionGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given database account, collection and region.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/regionParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/collectionRidParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The metrics for the database account were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/region/{region}/metrics": { + "get": { + "operationId": "DatabaseAccountRegion_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseAccountRegionGetMetrics": { + "$ref": "./examples/CosmosDBDatabaseAccountRegionGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given database account and region.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/regionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The metrics for the database account were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sourceRegion/{sourceRegion}/targetRegion/{targetRegion}/percentile/metrics": { + "get": { + "operationId": "PercentileSourceTarget_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseAccountRegionGetMetrics": { + "$ref": "./examples/CosmosDBPercentileSourceTargetGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given account, source and target region. This url is only for PBS and Replication Latency data", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/sourceRegionParameter" + }, + { + "$ref": "#/parameters/targetRegionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The percentile metrics for the account, source and target regions were retrieved successfully.", + "schema": { + "$ref": "#/definitions/PercentileMetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/targetRegion/{targetRegion}/percentile/metrics": { + "get": { + "operationId": "PercentileTarget_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseAccountRegionGetMetrics": { + "$ref": "./examples/CosmosDBPercentileTargetGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given account target region. This url is only for PBS and Replication Latency data", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/targetRegionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The percentile metrics for the account and target regions were retrieved successfully.", + "schema": { + "$ref": "#/definitions/PercentileMetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/percentile/metrics": { + "get": { + "operationId": "Percentile_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseAccountRegionGetMetrics": { + "$ref": "./examples/CosmosDBPercentileGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given database account. This url is only for PBS and Replication Latency data", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The percentile metrics for the account were retrieved successfully.", + "schema": { + "$ref": "#/definitions/PercentileMetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/region/{region}/databases/{databaseRid}/collections/{collectionRid}/partitions/metrics": { + "get": { + "operationId": "CollectionPartitionRegion_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseAccountRegionGetMetrics": { + "$ref": "./examples/CosmosDBCollectionPartitionRegionGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given collection and region, split by partition.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/regionParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/collectionRidParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The partition-level metrics for the collection and region were retrieved successfully.", + "schema": { + "$ref": "#/definitions/PartitionMetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/collections/{collectionRid}/partitions/metrics": { + "get": { + "operationId": "CollectionPartition_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseAccountRegionGetMetrics": { + "$ref": "./examples/CosmosDBCollectionPartitionGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given collection, split by partition.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/collectionRidParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The partition-level metrics for the collection were retrieved successfully.", + "schema": { + "$ref": "#/definitions/PartitionMetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/collections/{collectionRid}/partitionKeyRangeId/{partitionKeyRangeId}/metrics": { + "get": { + "operationId": "PartitionKeyRangeId_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseAccountRegionGetMetrics": { + "$ref": "./examples/CosmosDBPKeyRangeIdGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given partition key range id.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/collectionRidParameter" + }, + { + "$ref": "#/parameters/partitionKeyRangeIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The partition-level metrics for the partition key range id were retrieved successfully.", + "schema": { + "$ref": "#/definitions/PartitionMetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/region/{region}/databases/{databaseRid}/collections/{collectionRid}/partitionKeyRangeId/{partitionKeyRangeId}/metrics": { + "get": { + "operationId": "PartitionKeyRangeIdRegion_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseAccountRegionGetMetrics": { + "$ref": "./examples/CosmosDBPKeyRangeIdRegionGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given partition key range id and region.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/regionParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/collectionRidParameter" + }, + { + "$ref": "#/parameters/partitionKeyRangeIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The partition-level metrics for the partition key range id and region were retrieved successfully.", + "schema": { + "$ref": "#/definitions/PartitionMetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/usages": { + "get": { + "operationId": "DatabaseAccounts_ListUsages", + "x-ms-examples": { + "CosmosDBDatabaseAccountGetUsages": { + "$ref": "./examples/CosmosDBDatabaseAccountGetUsages.json" + } + }, + "description": "Retrieves the usages (most recent data) for the given database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/usageFilterParameter" + } + ], + "responses": { + "200": { + "description": "The usages for the database account were retrieved successfully.", + "schema": { + "$ref": "#/definitions/UsagesResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/usages": { + "get": { + "operationId": "Database_ListUsages", + "x-ms-examples": { + "CosmosDBDatabaseGetUsages": { + "$ref": "./examples/CosmosDBDatabaseGetUsages.json" + } + }, + "description": "Retrieves the usages (most recent data) for the given database.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/usageFilterParameter" + } + ], + "responses": { + "200": { + "description": "The usages for the database were retrieved successfully.", + "schema": { + "$ref": "#/definitions/UsagesResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/collections/{collectionRid}/usages": { + "get": { + "operationId": "Collection_ListUsages", + "x-ms-examples": { + "CosmosDBCollectionGetUsages": { + "$ref": "./examples/CosmosDBCollectionGetUsages.json" + } + }, + "description": "Retrieves the usages (most recent storage data) for the given collection.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/collectionRidParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/usageFilterParameter" + } + ], + "responses": { + "200": { + "description": "The usages for the collection were retrieved successfully.", + "schema": { + "$ref": "#/definitions/UsagesResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/collections/{collectionRid}/partitions/usages": { + "get": { + "operationId": "CollectionPartition_ListUsages", + "x-ms-examples": { + "CosmosDBCollectionGetUsages": { + "$ref": "./examples/CosmosDBCollectionPartitionGetUsages.json" + } + }, + "description": "Retrieves the usages (most recent storage data) for the given collection, split by partition.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/collectionRidParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/usageFilterParameter" + } + ], + "responses": { + "200": { + "description": "The usages for the collection, per partition were retrieved successfully.", + "schema": { + "$ref": "#/definitions/PartitionUsagesResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/metricDefinitions": { + "get": { + "operationId": "Database_ListMetricDefinitions", + "x-ms-examples": { + "CosmosDBDatabaseGetMetricDefinitions": { + "$ref": "./examples/CosmosDBDatabaseGetMetricDefinitions.json" + } + }, + "description": "Retrieves metric definitions for the given database.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The metric definitions for the database were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MetricDefinitionsListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/collections/{collectionRid}/metricDefinitions": { + "get": { + "operationId": "Collection_ListMetricDefinitions", + "x-ms-examples": { + "CosmosDBCollectionGetMetricDefinitions": { + "$ref": "./examples/CosmosDBCollectionGetMetricDefinitions.json" + } + }, + "description": "Retrieves metric definitions for the given collection.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/collectionRidParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The metric definitions for the collection were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MetricDefinitionsListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/metricDefinitions": { + "get": { + "operationId": "DatabaseAccounts_ListMetricDefinitions", + "x-ms-examples": { + "CosmosDBDatabaseAccountGetMetricDefinitions": { + "$ref": "./examples/CosmosDBDatabaseAccountGetMetricDefinitions.json" + } + }, + "description": "Retrieves metric definitions for the given database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The metric definitions for the database account were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MetricDefinitionsListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases": { + "get": { + "operationId": "SqlResources_ListSqlDatabases", + "x-ms-examples": { + "CosmosDBSqlDatabaseList": { + "$ref": "./examples/CosmosDBSqlDatabaseList.json" + } + }, + "description": "Lists the SQL databases under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The SQL database properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/SqlDatabaseListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}": { + "get": { + "operationId": "SqlResources_GetSqlDatabase", + "x-ms-examples": { + "CosmosDBSqlDatabaseGet": { + "$ref": "./examples/CosmosDBSqlDatabaseGet.json" + } + }, + "description": "Gets the SQL database under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The SQL database property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/SqlDatabaseGetResults" + } + } + } + }, + "put": { + "operationId": "SqlResources_CreateUpdateSqlDatabase", + "x-ms-examples": { + "CosmosDBSqlDatabaseCreateUpdate": { + "$ref": "./examples/CosmosDBSqlDatabaseCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB SQL database", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateSqlDatabaseParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SqlDatabaseCreateUpdateParameters" + }, + "description": "The parameters to provide for the current SQL database." + } + ], + "responses": { + "202": { + "description": "The SQL database create or update operation will complete asynchronously." + }, + "200": { + "description": "The SQL database create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/SqlDatabaseGetResults" + } + } + } + }, + "delete": { + "operationId": "SqlResources_DeleteSqlDatabase", + "x-ms-examples": { + "CosmosDBSqlDatabaseDelete": { + "$ref": "./examples/CosmosDBSqlDatabaseDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB SQL database.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The SQL database delete operation will complete asynchronously." + }, + "204": { + "description": "The SQL database delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/throughputSettings/default": { + "get": { + "operationId": "SqlResources_GetSqlDatabaseThroughput", + "x-ms-examples": { + "CosmosDBSqlDatabaseThroughputGet": { + "$ref": "./examples/CosmosDBSqlDatabaseThroughputGet.json" + } + }, + "description": "Gets the RUs per second of the SQL database under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The RUs per second of the SQL database was retrieved successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + }, + "put": { + "operationId": "SqlResources_UpdateSqlDatabaseThroughput", + "x-ms-examples": { + "CosmosDBSqlDatabaseThroughputUpdate": { + "$ref": "./examples/CosmosDBSqlDatabaseThroughputUpdate.json" + } + }, + "description": "Update RUs per second of an Azure Cosmos DB SQL database", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "updateThroughputParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThroughputSettingsUpdateParameters" + }, + "description": "The parameters to provide for the RUs per second of the current SQL database." + } + ], + "responses": { + "202": { + "description": "The RUs per second of the SQL database update operation will complete asynchronously." + }, + "200": { + "description": "The RUs per second of the SQL database update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/throughputSettings/default/migrateToAutoscale": { + "post": { + "operationId": "SqlResources_MigrateSqlDatabaseToAutoscale", + "x-ms-examples": { + "CosmosDBSqlDatabaseMigrateToAutoscale": { + "$ref": "./examples/CosmosDBSqlDatabaseMigrateToAutoscale.json" + } + }, + "description": "Migrate an Azure Cosmos DB SQL database from manual throughput to autoscale", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The SQL database migrate operation will complete asynchronously." + }, + "200": { + "description": "The SQL database migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/throughputSettings/default/migrateToManualThroughput": { + "post": { + "operationId": "SqlResources_MigrateSqlDatabaseToManualThroughput", + "x-ms-examples": { + "CosmosDBSqlDatabaseMigrateToManualThroughput": { + "$ref": "./examples/CosmosDBSqlDatabaseMigrateToManualThroughput.json" + } + }, + "description": "Migrate an Azure Cosmos DB SQL database from autoscale to manual throughput", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The SQL database migrate operation will complete asynchronously." + }, + "200": { + "description": "The SQL database migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers": { + "get": { + "operationId": "SqlResources_ListSqlContainers", + "x-ms-examples": { + "CosmosDBSqlContainerList": { + "$ref": "./examples/CosmosDBSqlContainerList.json" + } + }, + "description": "Lists the SQL container under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The SQL container properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/SqlContainerListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}": { + "get": { + "operationId": "SqlResources_GetSqlContainer", + "x-ms-examples": { + "CosmosDBSqlContainerGet": { + "$ref": "./examples/CosmosDBSqlContainerGet.json" + } + }, + "description": "Gets the SQL container under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The SQL container property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/SqlContainerGetResults" + } + } + } + }, + "put": { + "operationId": "SqlResources_CreateUpdateSqlContainer", + "x-ms-examples": { + "CosmosDBSqlContainerCreateUpdate": { + "$ref": "./examples/CosmosDBSqlContainerCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB SQL container", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateSqlContainerParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SqlContainerCreateUpdateParameters" + }, + "description": "The parameters to provide for the current SQL container." + } + ], + "responses": { + "202": { + "description": "The SQL container create or update operation will complete asynchronously." + }, + "200": { + "description": "The SQL container create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/SqlContainerGetResults" + } + } + } + }, + "delete": { + "operationId": "SqlResources_DeleteSqlContainer", + "x-ms-examples": { + "CosmosDBSqlContainerDelete": { + "$ref": "./examples/CosmosDBSqlContainerDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB SQL container.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The SQL container delete operation will complete asynchronously." + }, + "204": { + "description": "The SQL container delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/throughputSettings/default": { + "get": { + "operationId": "SqlResources_GetSqlContainerThroughput", + "x-ms-examples": { + "CosmosDBSqlContainerThroughputGet": { + "$ref": "./examples/CosmosDBSqlContainerThroughputGet.json" + } + }, + "description": "Gets the RUs per second of the SQL container under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The RUs per second of the SQL container was retrieved successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + }, + "put": { + "operationId": "SqlResources_UpdateSqlContainerThroughput", + "x-ms-examples": { + "CosmosDBSqlContainerThroughputUpdate": { + "$ref": "./examples/CosmosDBSqlContainerThroughputUpdate.json" + } + }, + "description": "Update RUs per second of an Azure Cosmos DB SQL container", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "updateThroughputParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThroughputSettingsUpdateParameters" + }, + "description": "The parameters to provide for the RUs per second of the current SQL container." + } + ], + "responses": { + "202": { + "description": "The RUs per second of the SQL container update operation will complete asynchronously." + }, + "200": { + "description": "The RUs per second of the SQL container update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/throughputSettings/default/migrateToAutoscale": { + "post": { + "operationId": "SqlResources_MigrateSqlContainerToAutoscale", + "x-ms-examples": { + "CosmosDBSqlContainerMigrateToAutoscale": { + "$ref": "./examples/CosmosDBSqlContainerMigrateToAutoscale.json" + } + }, + "description": "Migrate an Azure Cosmos DB SQL container from manual throughput to autoscale", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The SQL container migrate operation will complete asynchronously." + }, + "200": { + "description": "The SQL container migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/throughputSettings/default/migrateToManualThroughput": { + "post": { + "operationId": "SqlResources_MigrateSqlContainerToManualThroughput", + "x-ms-examples": { + "CosmosDBSqlContainerMigrateToManualThroughput": { + "$ref": "./examples/CosmosDBSqlContainerMigrateToManualThroughput.json" + } + }, + "description": "Migrate an Azure Cosmos DB SQL container from autoscale to manual throughput", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The SQL container migrate operation will complete asynchronously." + }, + "200": { + "description": "The SQL container migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/storedProcedures": { + "get": { + "operationId": "SqlResources_ListSqlStoredProcedures", + "x-ms-examples": { + "CosmosDBSqlStoredProcedureList": { + "$ref": "./examples/CosmosDBSqlStoredProcedureList.json" + } + }, + "description": "Lists the SQL storedProcedure under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The SQL stored procedure properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/SqlStoredProcedureListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/storedProcedures/{storedProcedureName}": { + "get": { + "operationId": "SqlResources_GetSqlStoredProcedure", + "x-ms-examples": { + "CosmosDBSqlStoredProcedureGet": { + "$ref": "./examples/CosmosDBSqlStoredProcedureGet.json" + } + }, + "description": "Gets the SQL storedProcedure under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/storedProcedureNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The SQL storedProcedure property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/SqlStoredProcedureGetResults" + } + } + } + }, + "put": { + "operationId": "SqlResources_CreateUpdateSqlStoredProcedure", + "x-ms-examples": { + "CosmosDBSqlStoredProcedureCreateUpdate": { + "$ref": "./examples/CosmosDBSqlStoredProcedureCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB SQL storedProcedure", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/storedProcedureNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateSqlStoredProcedureParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SqlStoredProcedureCreateUpdateParameters" + }, + "description": "The parameters to provide for the current SQL storedProcedure." + } + ], + "responses": { + "202": { + "description": "The SQL storedProcedure create or update operation will complete asynchronously." + }, + "200": { + "description": "The SQL storedProcedure create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/SqlStoredProcedureGetResults" + } + } + } + }, + "delete": { + "operationId": "SqlResources_DeleteSqlStoredProcedure", + "x-ms-examples": { + "CosmosDBSqlStoredProcedureDelete": { + "$ref": "./examples/CosmosDBSqlStoredProcedureDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB SQL storedProcedure.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/storedProcedureNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The SQL storedProcedure delete operation will complete asynchronously." + }, + "204": { + "description": "The SQL storedProcedure delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/userDefinedFunctions": { + "get": { + "operationId": "SqlResources_ListSqlUserDefinedFunctions", + "x-ms-examples": { + "CosmosDBSqlUserDefinedFunctionList": { + "$ref": "./examples/CosmosDBSqlUserDefinedFunctionList.json" + } + }, + "description": "Lists the SQL userDefinedFunction under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The SQL userDefinedFunction properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/SqlUserDefinedFunctionListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/userDefinedFunctions/{userDefinedFunctionName}": { + "get": { + "operationId": "SqlResources_GetSqlUserDefinedFunction", + "x-ms-examples": { + "CosmosDBSqlUserDefinedFunctionGet": { + "$ref": "./examples/CosmosDBSqlUserDefinedFunctionGet.json" + } + }, + "description": "Gets the SQL userDefinedFunction under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/userDefinedFunctionNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The SQL userDefinedFunction property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/SqlUserDefinedFunctionGetResults" + } + } + } + }, + "put": { + "operationId": "SqlResources_CreateUpdateSqlUserDefinedFunction", + "x-ms-examples": { + "CosmosDBSqlUserDefinedFunctionCreateUpdate": { + "$ref": "./examples/CosmosDBSqlUserDefinedFunctionCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB SQL userDefinedFunction", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/userDefinedFunctionNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateSqlUserDefinedFunctionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SqlUserDefinedFunctionCreateUpdateParameters" + }, + "description": "The parameters to provide for the current SQL userDefinedFunction." + } + ], + "responses": { + "202": { + "description": "The SQL userDefinedFunction create or update operation will complete asynchronously." + }, + "200": { + "description": "The SQL userDefinedFunction create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/SqlUserDefinedFunctionGetResults" + } + } + } + }, + "delete": { + "operationId": "SqlResources_DeleteSqlUserDefinedFunction", + "x-ms-examples": { + "CosmosDBSqlUserDefinedFunctionDelete": { + "$ref": "./examples/CosmosDBSqlUserDefinedFunctionDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB SQL userDefinedFunction.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/userDefinedFunctionNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The SQL userDefinedFunction delete operation will complete asynchronously." + }, + "204": { + "description": "The SQL userDefinedFunction delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/triggers": { + "get": { + "operationId": "SqlResources_ListSqlTriggers", + "x-ms-examples": { + "CosmosDBSqlTriggerList": { + "$ref": "./examples/CosmosDBSqlTriggerList.json" + } + }, + "description": "Lists the SQL trigger under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The SQL trigger properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/SqlTriggerListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/triggers/{triggerName}": { + "get": { + "operationId": "SqlResources_GetSqlTrigger", + "x-ms-examples": { + "CosmosDBSqlTriggerGet": { + "$ref": "./examples/CosmosDBSqlTriggerGet.json" + } + }, + "description": "Gets the SQL trigger under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/triggerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The SQL trigger property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/SqlTriggerGetResults" + } + } + } + }, + "put": { + "operationId": "SqlResources_CreateUpdateSqlTrigger", + "x-ms-examples": { + "CosmosDBSqlTriggerCreateUpdate": { + "$ref": "./examples/CosmosDBSqlTriggerCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB SQL trigger", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/triggerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateSqlTriggerParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SqlTriggerCreateUpdateParameters" + }, + "description": "The parameters to provide for the current SQL trigger." + } + ], + "responses": { + "202": { + "description": "The SQL trigger create or update operation will complete asynchronously." + }, + "200": { + "description": "The SQL trigger create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/SqlTriggerGetResults" + } + } + } + }, + "delete": { + "operationId": "SqlResources_DeleteSqlTrigger", + "x-ms-examples": { + "CosmosDBSqlTriggerDelete": { + "$ref": "./examples/CosmosDBSqlTriggerDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB SQL trigger.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/triggerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The SQL trigger delete operation will complete asynchronously." + }, + "204": { + "description": "The SQL trigger delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases": { + "get": { + "operationId": "MongoDBResources_ListMongoDBDatabases", + "x-ms-examples": { + "CosmosDBMongoDBDatabaseList": { + "$ref": "./examples/CosmosDBMongoDBDatabaseList.json" + } + }, + "description": "Lists the MongoDB databases under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The MongoDB database properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MongoDBDatabaseListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}": { + "get": { + "operationId": "MongoDBResources_GetMongoDBDatabase", + "x-ms-examples": { + "CosmosDBMongoDBDatabaseGet": { + "$ref": "./examples/CosmosDBMongoDBDatabaseGet.json" + } + }, + "description": "Gets the MongoDB databases under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The MongoDB database property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/MongoDBDatabaseGetResults" + } + } + } + }, + "put": { + "operationId": "MongoDBResources_CreateUpdateMongoDBDatabase", + "x-ms-examples": { + "CosmosDBMongoDBDatabaseCreateUpdate": { + "$ref": "./examples/CosmosDBMongoDBDatabaseCreateUpdate.json" + } + }, + "description": "Create or updates Azure Cosmos DB MongoDB database", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateMongoDBDatabaseParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/MongoDBDatabaseCreateUpdateParameters" + }, + "description": "The parameters to provide for the current MongoDB database." + } + ], + "responses": { + "202": { + "description": "The MongoDB database create or update operation will complete asynchronously." + }, + "200": { + "description": "The MongoDB database create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/MongoDBDatabaseGetResults" + } + } + } + }, + "delete": { + "operationId": "MongoDBResources_DeleteMongoDBDatabase", + "x-ms-examples": { + "CosmosDBMongoDBDatabaseDelete": { + "$ref": "./examples/CosmosDBMongoDBDatabaseDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB MongoDB database.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The MongoDB database delete operation will complete asynchronously." + }, + "204": { + "description": "The MongoDB database delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}/throughputSettings/default": { + "get": { + "operationId": "MongoDBResources_GetMongoDBDatabaseThroughput", + "x-ms-examples": { + "CosmosDBMongoDBDatabaseThroughputGet": { + "$ref": "./examples/CosmosDBMongoDBDatabaseThroughputGet.json" + } + }, + "description": "Gets the RUs per second of the MongoDB database under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The RUs per second of the MongoDB database was retrieved successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + }, + "put": { + "operationId": "MongoDBResources_UpdateMongoDBDatabaseThroughput", + "x-ms-examples": { + "CosmosDBMongoDBDatabaseThroughputUpdate": { + "$ref": "./examples/CosmosDBMongoDBDatabaseThroughputUpdate.json" + } + }, + "description": "Update RUs per second of the an Azure Cosmos DB MongoDB database", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "updateThroughputParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThroughputSettingsUpdateParameters" + }, + "description": "The RUs per second of the parameters to provide for the current MongoDB database." + } + ], + "responses": { + "202": { + "description": "The RUs per second of the MongoDB database update operation will complete asynchronously." + }, + "200": { + "description": "The RUs per second of the MongoDB database update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}/throughputSettings/default/migrateToAutoscale": { + "post": { + "operationId": "MongoDBResources_MigrateMongoDBDatabaseToAutoscale", + "x-ms-examples": { + "CosmosDBMongoDBDatabaseMigrateToAutoscale": { + "$ref": "./examples/CosmosDBMongoDBDatabaseMigrateToAutoscale.json" + } + }, + "description": "Migrate an Azure Cosmos DB MongoDB database from manual throughput to autoscale", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The MongoDB database migrate operation will complete asynchronously." + }, + "200": { + "description": "The MongoDB database migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}/throughputSettings/default/migrateToManualThroughput": { + "post": { + "operationId": "MongoDBResources_MigrateMongoDBDatabaseToManualThroughput", + "x-ms-examples": { + "CosmosDBMongoDBDatabaseMigrateToManualThroughput": { + "$ref": "./examples/CosmosDBMongoDBDatabaseMigrateToManualThroughput.json" + } + }, + "description": "Migrate an Azure Cosmos DB MongoDB database from autoscale to manual throughput", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The MongoDB database migrate operation will complete asynchronously." + }, + "200": { + "description": "The MongoDB database migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}/collections": { + "get": { + "operationId": "MongoDBResources_ListMongoDBCollections", + "x-ms-examples": { + "CosmosDBMongoDBCollectionList": { + "$ref": "./examples/CosmosDBMongoDBCollectionList.json" + } + }, + "description": "Lists the MongoDB collection under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The MongoDB collection properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MongoDBCollectionListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}/collections/{collectionName}": { + "get": { + "operationId": "MongoDBResources_GetMongoDBCollection", + "x-ms-examples": { + "CosmosDBMongoDBCollectionGet": { + "$ref": "./examples/CosmosDBMongoDBCollectionGet.json" + } + }, + "description": "Gets the MongoDB collection under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/collectionNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The MongoDB collection property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/MongoDBCollectionGetResults" + } + } + } + }, + "put": { + "operationId": "MongoDBResources_CreateUpdateMongoDBCollection", + "x-ms-examples": { + "CosmosDBMongoDBCollectionCreateUpdate": { + "$ref": "./examples/CosmosDBMongoDBCollectionCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB MongoDB Collection", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/collectionNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateMongoDBCollectionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/MongoDBCollectionCreateUpdateParameters" + }, + "description": "The parameters to provide for the current MongoDB Collection." + } + ], + "responses": { + "202": { + "description": "The MongoDB Collection create or update operation will complete asynchronously." + }, + "200": { + "description": "The MongoDB Collection create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/MongoDBCollectionGetResults" + } + } + } + }, + "delete": { + "operationId": "MongoDBResources_DeleteMongoDBCollection", + "x-ms-examples": { + "CosmosDBMongoDBCollectionDelete": { + "$ref": "./examples/CosmosDBMongoDBCollectionDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB MongoDB Collection.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/collectionNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The MongoDB collection delete operation will complete asynchronously." + }, + "204": { + "description": "The MongoDB collection delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}/collections/{collectionName}/throughputSettings/default": { + "get": { + "operationId": "MongoDBResources_GetMongoDBCollectionThroughput", + "x-ms-examples": { + "CosmosDBMongoDBCollectionThroughputGet": { + "$ref": "./examples/CosmosDBMongoDBCollectionThroughputGet.json" + } + }, + "description": "Gets the RUs per second of the MongoDB collection under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/collectionNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The RUs per second of the MongoDB collection was retrieved successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + }, + "put": { + "operationId": "MongoDBResources_UpdateMongoDBCollectionThroughput", + "x-ms-examples": { + "CosmosDBMongoDBCollectionThroughputUpdate": { + "$ref": "./examples/CosmosDBMongoDBCollectionThroughputUpdate.json" + } + }, + "description": "Update the RUs per second of an Azure Cosmos DB MongoDB collection", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/collectionNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "updateThroughputParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThroughputSettingsUpdateParameters" + }, + "description": "The RUs per second of the parameters to provide for the current MongoDB collection." + } + ], + "responses": { + "202": { + "description": "The RUs per second of the MongoDB collection update operation will complete asynchronously." + }, + "200": { + "description": "The RUs per second of the MongoDB collection update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}/collections/{collectionName}/throughputSettings/default/migrateToAutoscale": { + "post": { + "operationId": "MongoDBResources_MigrateMongoDBCollectionToAutoscale", + "x-ms-examples": { + "CosmosDBMongoDBCollectionMigrateToAutoscale": { + "$ref": "./examples/CosmosDBMongoDBCollectionMigrateToAutoscale.json" + } + }, + "description": "Migrate an Azure Cosmos DB MongoDB collection from manual throughput to autoscale", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/collectionNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The MongoDB collection migrate operation will complete asynchronously." + }, + "200": { + "description": "The MongoDB collection migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}/collections/{collectionName}/throughputSettings/default/migrateToManualThroughput": { + "post": { + "operationId": "MongoDBResources_MigrateMongoDBCollectionToManualThroughput", + "x-ms-examples": { + "CosmosDBMongoDBCollectionMigrateToManualThroughput": { + "$ref": "./examples/CosmosDBMongoDBCollectionMigrateToManualThroughput.json" + } + }, + "description": "Migrate an Azure Cosmos DB MongoDB collection from autoscale to manual throughput", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/collectionNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The MongoDB collection migrate operation will complete asynchronously." + }, + "200": { + "description": "The MongoDB collection migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/tables": { + "get": { + "operationId": "TableResources_ListTables", + "x-ms-examples": { + "CosmosDBTableList": { + "$ref": "./examples/CosmosDBTableList.json" + } + }, + "description": "Lists the Tables under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Table properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/TableListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/tables/{tableName}": { + "get": { + "operationId": "TableResources_GetTable", + "x-ms-examples": { + "CosmosDBTableGet": { + "$ref": "./examples/CosmosDBTableGet.json" + } + }, + "description": "Gets the Tables under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Table property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/TableGetResults" + } + } + } + }, + "put": { + "operationId": "TableResources_CreateUpdateTable", + "x-ms-examples": { + "CosmosDBTableReplace": { + "$ref": "./examples/CosmosDBTableCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB Table", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateTableParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TableCreateUpdateParameters" + }, + "description": "The parameters to provide for the current Table." + } + ], + "responses": { + "202": { + "description": "The Table create or update operation will complete asynchronously." + }, + "200": { + "description": "The Table create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/TableGetResults" + } + } + } + }, + "delete": { + "operationId": "TableResources_DeleteTable", + "x-ms-examples": { + "CosmosDBTableDelete": { + "$ref": "./examples/CosmosDBTableDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB Table.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Table delete operation will complete asynchronously." + }, + "204": { + "description": "The Table delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/tables/{tableName}/throughputSettings/default": { + "get": { + "operationId": "TableResources_GetTableThroughput", + "x-ms-examples": { + "CosmosDBTableThroughputGet": { + "$ref": "./examples/CosmosDBTableThroughputGet.json" + } + }, + "description": "Gets the RUs per second of the Table under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The RUs per second of the Table was retrieved successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + }, + "put": { + "operationId": "TableResources_UpdateTableThroughput", + "x-ms-examples": { + "CosmosDBTableThroughputUpdate": { + "$ref": "./examples/CosmosDBTableThroughputUpdate.json" + } + }, + "description": "Update RUs per second of an Azure Cosmos DB Table", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "updateThroughputParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThroughputSettingsUpdateParameters" + }, + "description": "The parameters to provide for the RUs per second of the current Table." + } + ], + "responses": { + "202": { + "description": "The RUs per second of the Table update operation will complete asynchronously." + }, + "200": { + "description": "The RUs per second of the Table update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/tables/{tableName}/throughputSettings/default/migrateToAutoscale": { + "post": { + "operationId": "TableResources_MigrateTableToAutoscale", + "x-ms-examples": { + "CosmosDBTableMigrateToAutoscale": { + "$ref": "./examples/CosmosDBTableMigrateToAutoscale.json" + } + }, + "description": "Migrate an Azure Cosmos DB Table from manual throughput to autoscale", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Table migrate operation will complete asynchronously." + }, + "200": { + "description": "The Table migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/tables/{tableName}/throughputSettings/default/migrateToManualThroughput": { + "post": { + "operationId": "TableResources_MigrateTableToManualThroughput", + "x-ms-examples": { + "CosmosDBTableMigrateToManualThroughput": { + "$ref": "./examples/CosmosDBTableMigrateToManualThroughput.json" + } + }, + "description": "Migrate an Azure Cosmos DB Table from autoscale to manual throughput", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Table migrate operation will complete asynchronously." + }, + "200": { + "description": "The Table migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces": { + "get": { + "operationId": "CassandraResources_ListCassandraKeyspaces", + "x-ms-examples": { + "CosmosDBCassandraKeyspaceList": { + "$ref": "./examples/CosmosDBCassandraKeyspaceList.json" + } + }, + "description": "Lists the Cassandra keyspaces under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Cassandra keyspace properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/CassandraKeyspaceListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}": { + "get": { + "operationId": "CassandraResources_GetCassandraKeyspace", + "x-ms-examples": { + "CosmosDBCassandraKeyspaceGet": { + "$ref": "./examples/CosmosDBCassandraKeyspaceGet.json" + } + }, + "description": "Gets the Cassandra keyspaces under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Cassandra keyspace property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/CassandraKeyspaceGetResults" + } + } + } + }, + "put": { + "operationId": "CassandraResources_CreateUpdateCassandraKeyspace", + "x-ms-examples": { + "CosmosDBCassandraKeyspaceCreateUpdate": { + "$ref": "./examples/CosmosDBCassandraKeyspaceCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB Cassandra keyspace", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateCassandraKeyspaceParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CassandraKeyspaceCreateUpdateParameters" + }, + "description": "The parameters to provide for the current Cassandra keyspace." + } + ], + "responses": { + "202": { + "description": "The Cassandra keyspace create or update operation will complete asynchronously." + }, + "200": { + "description": "The Cassandra keyspace create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/CassandraKeyspaceGetResults" + } + } + } + }, + "delete": { + "operationId": "CassandraResources_DeleteCassandraKeyspace", + "x-ms-examples": { + "CosmosDBCassandraKeyspaceDelete": { + "$ref": "./examples/CosmosDBCassandraKeyspaceDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB Cassandra keyspace.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Cassandra keyspace delete operation will complete asynchronously." + }, + "204": { + "description": "The Cassandra keyspace delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/throughputSettings/default": { + "get": { + "operationId": "CassandraResources_GetCassandraKeyspaceThroughput", + "x-ms-examples": { + "CosmosDBCassandraKeyspaceThroughputGet": { + "$ref": "./examples/CosmosDBCassandraKeyspaceThroughputGet.json" + } + }, + "description": "Gets the RUs per second of the Cassandra Keyspace under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The RUs per second of the Cassandra Keyspace was retrieved successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + }, + "put": { + "operationId": "CassandraResources_UpdateCassandraKeyspaceThroughput", + "x-ms-examples": { + "CosmosDBCassandraKeyspaceThroughputUpdate": { + "$ref": "./examples/CosmosDBCassandraKeyspaceThroughputUpdate.json" + } + }, + "description": "Update RUs per second of an Azure Cosmos DB Cassandra Keyspace", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "updateThroughputParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThroughputSettingsUpdateParameters" + }, + "description": "The RUs per second of the parameters to provide for the current Cassandra Keyspace." + } + ], + "responses": { + "202": { + "description": "The RUs per second of the Cassandra Keyspace update operation will complete asynchronously." + }, + "200": { + "description": "The RUs per second of the Cassandra Keyspace update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/throughputSettings/default/migrateToAutoscale": { + "post": { + "operationId": "CassandraResources_MigrateCassandraKeyspaceToAutoscale", + "x-ms-examples": { + "CosmosDBCassandraKeyspaceMigrateToAutoscale": { + "$ref": "./examples/CosmosDBCassandraKeyspaceMigrateToAutoscale.json" + } + }, + "description": "Migrate an Azure Cosmos DB Cassandra Keyspace from manual throughput to autoscale", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Cassandra Keyspace migrate operation will complete asynchronously." + }, + "200": { + "description": "The Cassandra Keyspace migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/throughputSettings/default/migrateToManualThroughput": { + "post": { + "operationId": "CassandraResources_MigrateCassandraKeyspaceToManualThroughput", + "x-ms-examples": { + "CosmosDBCassandraKeyspaceMigrateToManualThroughput": { + "$ref": "./examples/CosmosDBCassandraKeyspaceMigrateToManualThroughput.json" + } + }, + "description": "Migrate an Azure Cosmos DB Cassandra Keyspace from autoscale to manual throughput", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Cassandra Keyspace migrate operation will complete asynchronously." + }, + "200": { + "description": "The Cassandra Keyspace migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/tables": { + "get": { + "operationId": "CassandraResources_ListCassandraTables", + "x-ms-examples": { + "CosmosDBCassandraTableList": { + "$ref": "./examples/CosmosDBCassandraTableList.json" + } + }, + "description": "Lists the Cassandra table under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Cassandra table properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/CassandraTableListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/tables/{tableName}": { + "get": { + "operationId": "CassandraResources_GetCassandraTable", + "x-ms-examples": { + "CosmosDBCassandraTableGet": { + "$ref": "./examples/CosmosDBCassandraTableGet.json" + } + }, + "description": "Gets the Cassandra table under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Cassandra table property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/CassandraTableGetResults" + } + } + } + }, + "put": { + "operationId": "CassandraResources_CreateUpdateCassandraTable", + "x-ms-examples": { + "CosmosDBCassandraTableCreateUpdate": { + "$ref": "./examples/CosmosDBCassandraTableCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB Cassandra Table", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateCassandraTableParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CassandraTableCreateUpdateParameters" + }, + "description": "The parameters to provide for the current Cassandra Table." + } + ], + "responses": { + "202": { + "description": "The Cassandra Table create or update operation will complete asynchronously." + }, + "200": { + "description": "The Cassandra Table create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/CassandraTableGetResults" + } + } + } + }, + "delete": { + "operationId": "CassandraResources_DeleteCassandraTable", + "x-ms-examples": { + "CosmosDBCassandraTableDelete": { + "$ref": "./examples/CosmosDBCassandraTableDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB Cassandra table.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Cassandra table delete operation will complete asynchronously." + }, + "204": { + "description": "The Cassandra table delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/tables/{tableName}/throughputSettings/default": { + "get": { + "operationId": "CassandraResources_GetCassandraTableThroughput", + "x-ms-examples": { + "CosmosDBCassandraTableThroughputGet": { + "$ref": "./examples/CosmosDBCassandraTableThroughputGet.json" + } + }, + "description": "Gets the RUs per second of the Cassandra table under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The RUs per second of the Cassandra table was retrieved successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + }, + "put": { + "operationId": "CassandraResources_UpdateCassandraTableThroughput", + "x-ms-examples": { + "CosmosDBCassandraTableThroughputUpdate": { + "$ref": "./examples/CosmosDBCassandraTableThroughputUpdate.json" + } + }, + "description": "Update RUs per second of an Azure Cosmos DB Cassandra table", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "updateThroughputParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThroughputSettingsUpdateParameters" + }, + "description": "The RUs per second of the parameters to provide for the current Cassandra table." + } + ], + "responses": { + "202": { + "description": "The RUs per second of the Cassandra table update operation will complete asynchronously." + }, + "200": { + "description": "The RUs per second of the Cassandra table update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/tables/{tableName}/throughputSettings/default/migrateToAutoscale": { + "post": { + "operationId": "CassandraResources_MigrateCassandraTableToAutoscale", + "x-ms-examples": { + "CosmosDBCassandraTableMigrateToAutoscale": { + "$ref": "./examples/CosmosDBCassandraTableMigrateToAutoscale.json" + } + }, + "description": "Migrate an Azure Cosmos DB Cassandra table from manual throughput to autoscale", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Cassandra table migrate operation will complete asynchronously." + }, + "200": { + "description": "The Cassandra table migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/tables/{tableName}/throughputSettings/default/migrateToManualThroughput": { + "post": { + "operationId": "CassandraResources_MigrateCassandraTableToManualThroughput", + "x-ms-examples": { + "CosmosDBCassandraTableMigrateToManualThroughput": { + "$ref": "./examples/CosmosDBCassandraTableMigrateToManualThroughput.json" + } + }, + "description": "Migrate an Azure Cosmos DB Cassandra table from autoscale to manual throughput", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Cassandra table migrate operation will complete asynchronously." + }, + "200": { + "description": "The Cassandra table migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases": { + "get": { + "operationId": "GremlinResources_ListGremlinDatabases", + "x-ms-examples": { + "CosmosDBGremlinDatabaseList": { + "$ref": "./examples/CosmosDBGremlinDatabaseList.json" + } + }, + "description": "Lists the Gremlin databases under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Gremlin database properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/GremlinDatabaseListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases/{databaseName}": { + "get": { + "operationId": "GremlinResources_GetGremlinDatabase", + "x-ms-examples": { + "CosmosDBGremlinDatabaseGet": { + "$ref": "./examples/CosmosDBGremlinDatabaseGet.json" + } + }, + "description": "Gets the Gremlin databases under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Gremlin database property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/GremlinDatabaseGetResults" + } + } + } + }, + "put": { + "operationId": "GremlinResources_CreateUpdateGremlinDatabase", + "x-ms-examples": { + "CosmosDBGremlinDatabaseCreateUpdate": { + "$ref": "./examples/CosmosDBGremlinDatabaseCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB Gremlin database", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateGremlinDatabaseParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GremlinDatabaseCreateUpdateParameters" + }, + "description": "The parameters to provide for the current Gremlin database." + } + ], + "responses": { + "202": { + "description": "The Gremlin database create or update operation will complete asynchronously." + }, + "200": { + "description": "The Gremlin database create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/GremlinDatabaseGetResults" + } + } + } + }, + "delete": { + "operationId": "GremlinResources_DeleteGremlinDatabase", + "x-ms-examples": { + "CosmosDBGremlinDatabaseDelete": { + "$ref": "./examples/CosmosDBGremlinDatabaseDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB Gremlin database.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Gremlin database delete operation will complete asynchronously." + }, + "204": { + "description": "The Gremlin database delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases/{databaseName}/throughputSettings/default": { + "get": { + "operationId": "GremlinResources_GetGremlinDatabaseThroughput", + "x-ms-examples": { + "CosmosDBGremlinDatabaseThroughputGet": { + "$ref": "./examples/CosmosDBGremlinDatabaseThroughputGet.json" + } + }, + "description": "Gets the RUs per second of the Gremlin database under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The RUs per second of the Gremlin database was retrieved successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + }, + "put": { + "operationId": "GremlinResources_UpdateGremlinDatabaseThroughput", + "x-ms-examples": { + "CosmosDBGremlinDatabaseThroughputUpdate": { + "$ref": "./examples/CosmosDBGremlinDatabaseThroughputUpdate.json" + } + }, + "description": "Update RUs per second of an Azure Cosmos DB Gremlin database", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "updateThroughputParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThroughputSettingsUpdateParameters" + }, + "description": "The RUs per second of the parameters to provide for the current Gremlin database." + } + ], + "responses": { + "202": { + "description": "The RUs per second of the Gremlin database update operation will complete asynchronously." + }, + "200": { + "description": "The RUs per second of the Gremlin database update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases/{databaseName}/throughputSettings/default/migrateToAutoscale": { + "post": { + "operationId": "GremlinResources_MigrateGremlinDatabaseToAutoscale", + "x-ms-examples": { + "CosmosDBGremlinDatabaseMigrateToAutoscale": { + "$ref": "./examples/CosmosDBGremlinDatabaseMigrateToAutoscale.json" + } + }, + "description": "Migrate an Azure Cosmos DB Gremlin database from manual throughput to autoscale", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Gremlin database migrate operation will complete asynchronously." + }, + "200": { + "description": "The Gremlin database migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases/{databaseName}/throughputSettings/default/migrateToManualThroughput": { + "post": { + "operationId": "GremlinResources_MigrateGremlinDatabaseToManualThroughput", + "x-ms-examples": { + "CosmosDBGremlinDatabaseMigrateToManualThroughput": { + "$ref": "./examples/CosmosDBGremlinDatabaseMigrateToManualThroughput.json" + } + }, + "description": "Migrate an Azure Cosmos DB Gremlin database from autoscale to manual throughput", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Gremlin database migrate operation will complete asynchronously." + }, + "200": { + "description": "The Gremlin database migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases/{databaseName}/graphs": { + "get": { + "operationId": "GremlinResources_ListGremlinGraphs", + "x-ms-examples": { + "CosmosDBGremlinGraphList": { + "$ref": "./examples/CosmosDBGremlinGraphList.json" + } + }, + "description": "Lists the Gremlin graph under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Gremlin graph properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/GremlinGraphListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases/{databaseName}/graphs/{graphName}": { + "get": { + "operationId": "GremlinResources_GetGremlinGraph", + "x-ms-examples": { + "CosmosDBGremlinGraphGet": { + "$ref": "./examples/CosmosDBGremlinGraphGet.json" + } + }, + "description": "Gets the Gremlin graph under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/graphNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Gremlin graph property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/GremlinGraphGetResults" + } + } + } + }, + "put": { + "operationId": "GremlinResources_CreateUpdateGremlinGraph", + "x-ms-examples": { + "CosmosDBGremlinGraphCreateUpdate": { + "$ref": "./examples/CosmosDBGremlinGraphCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB Gremlin graph", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/graphNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateGremlinGraphParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GremlinGraphCreateUpdateParameters" + }, + "description": "The parameters to provide for the current Gremlin graph." + } + ], + "responses": { + "202": { + "description": "The Gremlin graph create or update operation will complete asynchronously." + }, + "200": { + "description": "The Gremlin graph create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/GremlinGraphGetResults" + } + } + } + }, + "delete": { + "operationId": "GremlinResources_DeleteGremlinGraph", + "x-ms-examples": { + "CosmosDBGremlinGraphDelete": { + "$ref": "./examples/CosmosDBGremlinGraphDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB Gremlin graph.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/graphNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Gremlin graph delete operation will complete asynchronously." + }, + "204": { + "description": "The Gremlin graph delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases/{databaseName}/graphs/{graphName}/throughputSettings/default": { + "get": { + "operationId": "GremlinResources_GetGremlinGraphThroughput", + "x-ms-examples": { + "CosmosDBGremlinGraphThroughputGet": { + "$ref": "./examples/CosmosDBGremlinGraphThroughputGet.json" + } + }, + "description": "Gets the Gremlin graph throughput under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/graphNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The RUs per second of the Gremlin graph was retrieved successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + }, + "put": { + "operationId": "GremlinResources_UpdateGremlinGraphThroughput", + "x-ms-examples": { + "CosmosDBGremlinGraphThroughputUpdate": { + "$ref": "./examples/CosmosDBGremlinGraphThroughputUpdate.json" + } + }, + "description": "Update RUs per second of an Azure Cosmos DB Gremlin graph", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/graphNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "updateThroughputParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThroughputSettingsUpdateParameters" + }, + "description": "The RUs per second of the parameters to provide for the current Gremlin graph." + } + ], + "responses": { + "202": { + "description": "The RUs per second of the Gremlin graph update operation will complete asynchronously." + }, + "200": { + "description": "The RUs per second of the Gremlin graph update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases/{databaseName}/graphs/{graphName}/throughputSettings/default/migrateToAutoscale": { + "post": { + "operationId": "GremlinResources_MigrateGremlinGraphToAutoscale", + "x-ms-examples": { + "CosmosDBGremlinGraphMigrateToAutoscale": { + "$ref": "./examples/CosmosDBGremlinGraphMigrateToAutoscale.json" + } + }, + "description": "Migrate an Azure Cosmos DB Gremlin graph from manual throughput to autoscale", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/graphNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Gremlin graph migrate operation will complete asynchronously." + }, + "200": { + "description": "The Gremlin graph migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases/{databaseName}/graphs/{graphName}/throughputSettings/default/migrateToManualThroughput": { + "post": { + "operationId": "GremlinResources_MigrateGremlinGraphToManualThroughput", + "x-ms-examples": { + "CosmosDBGremlinGraphMigrateToManualThroughput": { + "$ref": "./examples/CosmosDBGremlinGraphMigrateToManualThroughput.json" + } + }, + "description": "Migrate an Azure Cosmos DB Gremlin graph from autoscale to manual throughput", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/graphNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Gremlin graph migrate operation will complete asynchronously." + }, + "200": { + "description": "The Gremlin graph migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "DatabaseAccountsListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/DatabaseAccountGetResults" + }, + "description": "List of database account and their properties." + } + }, + "description": "The List operation response, that contains the database accounts and their properties." + }, + "SqlDatabaseListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SqlDatabaseGetResults" + }, + "description": "List of SQL databases and their properties." + } + }, + "description": "The List operation response, that contains the SQL databases and their properties." + }, + "SqlContainerListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SqlContainerGetResults" + }, + "description": "List of containers and their properties." + } + }, + "description": "The List operation response, that contains the containers and their properties." + }, + "SqlStoredProcedureListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SqlStoredProcedureGetResults" + }, + "description": "List of storedProcedures and their properties." + } + }, + "description": "The List operation response, that contains the storedProcedures and their properties." + }, + "SqlUserDefinedFunctionListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SqlUserDefinedFunctionGetResults" + }, + "description": "List of userDefinedFunctions and their properties." + } + }, + "description": "The List operation response, that contains the userDefinedFunctions and their properties." + }, + "SqlTriggerListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SqlTriggerGetResults" + }, + "description": "List of triggers and their properties." + } + }, + "description": "The List operation response, that contains the triggers and their properties." + }, + "MongoDBDatabaseListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/MongoDBDatabaseGetResults" + }, + "description": "List of MongoDB databases and their properties." + } + }, + "description": "The List operation response, that contains the MongoDB databases and their properties." + }, + "MongoDBCollectionListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/MongoDBCollectionGetResults" + }, + "description": "List of MongoDB collections and their properties." + } + }, + "description": "The List operation response, that contains the MongoDB collections and their properties." + }, + "TableListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/TableGetResults" + }, + "description": "List of Table and their properties." + } + }, + "description": "The List operation response, that contains the Table and their properties." + }, + "CassandraKeyspaceListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/CassandraKeyspaceGetResults" + }, + "description": "List of Cassandra keyspaces and their properties." + } + }, + "description": "The List operation response, that contains the Cassandra keyspaces and their properties." + }, + "CassandraTableListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/CassandraTableGetResults" + }, + "description": "List of Cassandra tables and their properties." + } + }, + "description": "The List operation response, that contains the Cassandra tables and their properties." + }, + "GremlinDatabaseListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/GremlinDatabaseGetResults" + }, + "description": "List of Gremlin databases and their properties." + } + }, + "description": "The List operation response, that contains the Gremlin databases and their properties." + }, + "GremlinGraphListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/GremlinGraphGetResults" + }, + "description": "List of graphs and their properties." + } + }, + "description": "The List operation response, that contains the graphs and their properties." + }, + "ErrorResponse": { + "properties": { + "code": { + "description": "Error code.", + "type": "string" + }, + "message": { + "description": "Error message indicating why the operation failed.", + "type": "string" + } + }, + "description": "Error Response." + }, + "CloudError": { + "x-ms-external": true, + "description": "An error response from the service.", + "properties": { + "error": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "FailoverPolicies": { + "properties": { + "failoverPolicies": { + "type": "array", + "description": "List of failover policies.", + "items": { + "$ref": "#/definitions/FailoverPolicy" + } + } + }, + "required": [ + "failoverPolicies" + ], + "description": "The list of new failover policies for the failover priority change." + }, + "FailoverPolicy": { + "type": "object", + "description": "The failover policy for a given region of a database account.", + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The unique identifier of the region in which the database account replicates to. Example: <accountName>-<locationName>." + }, + "locationName": { + "type": "string", + "description": "The name of the region in which the database account exists." + }, + "failoverPriority": { + "type": "integer", + "minimum": 0, + "format": "int32", + "description": "The failover priority of the region. A failover priority of 0 indicates a write region. The maximum value for a failover priority = (total number of regions - 1). Failover priority values must be unique for each of the regions in which the database account exists." + } + } + }, + "RegionForOnlineOffline": { + "properties": { + "region": { + "type": "string", + "description": "Cosmos DB region, with spaces between words and each word capitalized." + } + }, + "required": [ + "region" + ], + "description": "Cosmos DB region to online or offline." + }, + "Location": { + "description": "A region in which the Azure Cosmos DB database account is deployed.", + "type": "object", + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The unique identifier of the region within the database account. Example: <accountName>-<locationName>." + }, + "locationName": { + "type": "string", + "description": "The name of the region." + }, + "documentEndpoint": { + "type": "string", + "readOnly": true, + "description": "The connection endpoint for the specific region. Example: https://<accountName>-<locationName>.documents.azure.com:443/" + }, + "provisioningState": { + "$ref": "#/definitions/ProvisioningState" + }, + "failoverPriority": { + "description": "The failover priority of the region. A failover priority of 0 indicates a write region. The maximum value for a failover priority = (total number of regions - 1). Failover priority values must be unique for each of the regions in which the database account exists.", + "format": "int32", + "type": "integer", + "minimum": 0 + }, + "isZoneRedundant": { + "type": "boolean", + "description": "Flag to indicate whether or not this region is an AvailabilityZone region" + } + } + }, + "ARMResourceProperties": { + "type": "object", + "description": "The core properties of ARM resources.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The unique resource identifier of the ARM resource." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the ARM resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of Azure resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "tags": { + "$ref": "#/definitions/Tags" + } + }, + "x-ms-azure-resource": true + }, + "ARMProxyResource": { + "type": "object", + "description": "The resource model definition for a ARM proxy resource. It will have everything other than required location and tags", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The unique resource identifier of the database account." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the database account." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of Azure resource." + } + }, + "x-ms-azure-resource": true + }, + "DatabaseAccountGetResults": { + "description": "An Azure Cosmos DB database account.", + "type": "object", + "properties": { + "kind": { + "description": "Indicates the type of database account. This can only be set at database account creation.", + "type": "string", + "default": "GlobalDocumentDB", + "enum": [ + "GlobalDocumentDB", + "MongoDB", + "Parse" + ], + "x-ms-enum": { + "name": "DatabaseAccountKind", + "modelAsString": true + } + }, + "identity": { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DatabaseAccountGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "ExtendedResourceProperties": { + "description": "The system generated resource properties associated with SQL databases, SQL containers, Gremlin databases and Gremlin graphs.", + "type": "object", + "properties": { + "_rid": { + "type": "string", + "description": "A system generated property. A unique identifier.", + "readOnly": true + }, + "_ts": { + "type": "number", + "description": "A system generated property that denotes the last updated timestamp of the resource.", + "readOnly": true + }, + "_etag": { + "type": "string", + "description": "A system generated property representing the resource etag required for optimistic concurrency control.", + "readOnly": true + } + } + }, + "ThroughputSettingsGetResults": { + "description": "An Azure Cosmos DB resource throughput.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB resource throughput", + "$ref": "#/definitions/ThroughputSettingsGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "ThroughputSettingsGetProperties": { + "description": "The properties of an Azure Cosmos DB resource throughput", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/ThroughputSettingsResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + } + } + }, + "SqlDatabaseGetResults": { + "description": "An Azure Cosmos DB SQL database.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB SQL database", + "$ref": "#/definitions/SqlDatabaseGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "SqlDatabaseGetProperties": { + "description": "The properties of an Azure Cosmos DB SQL database", + "type": "object", + "properties": { + "resource": { + "properties": { + "_colls": { + "type": "string", + "description": "A system generated property that specified the addressable path of the collections resource." + }, + "_users": { + "type": "string", + "description": "A system generated property that specifies the addressable path of the users resource." + } + }, + "allOf": [ + { + "$ref": "#/definitions/SqlDatabaseResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + }, + "options": { + "allOf": [ + { + "$ref": "#/definitions/OptionsResource" + } + ] + } + } + }, + "SqlContainerGetResults": { + "description": "An Azure Cosmos DB container.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB container", + "$ref": "#/definitions/SqlContainerGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "SqlContainerGetProperties": { + "description": "The properties of an Azure Cosmos DB container", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/SqlContainerResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + }, + "options": { + "allOf": [ + { + "$ref": "#/definitions/OptionsResource" + } + ] + } + } + }, + "SqlStoredProcedureGetResults": { + "description": "An Azure Cosmos DB storedProcedure.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB storedProcedure", + "$ref": "#/definitions/SqlStoredProcedureGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "SqlStoredProcedureGetProperties": { + "description": "The properties of an Azure Cosmos DB StoredProcedure", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/SqlStoredProcedureResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + } + } + }, + "SqlUserDefinedFunctionGetResults": { + "description": "An Azure Cosmos DB userDefinedFunction.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB userDefinedFunction", + "$ref": "#/definitions/SqlUserDefinedFunctionGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "SqlUserDefinedFunctionGetProperties": { + "description": "The properties of an Azure Cosmos DB userDefinedFunction", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/SqlUserDefinedFunctionResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + } + } + }, + "SqlTriggerGetResults": { + "description": "An Azure Cosmos DB trigger.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB trigger", + "$ref": "#/definitions/SqlTriggerGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "SqlTriggerGetProperties": { + "description": "The properties of an Azure Cosmos DB trigger", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/SqlTriggerResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + } + } + }, + "MongoDBDatabaseGetResults": { + "description": "An Azure Cosmos DB MongoDB database.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB MongoDB database", + "$ref": "#/definitions/MongoDBDatabaseGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "MongoDBDatabaseGetProperties": { + "description": "The properties of an Azure Cosmos DB MongoDB database", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/MongoDBDatabaseResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + }, + "options": { + "allOf": [ + { + "$ref": "#/definitions/OptionsResource" + } + ] + } + } + }, + "MongoDBCollectionGetResults": { + "description": "An Azure Cosmos DB MongoDB collection.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB MongoDB collection", + "$ref": "#/definitions/MongoDBCollectionGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "MongoDBCollectionGetProperties": { + "description": "The properties of an Azure Cosmos DB MongoDB collection", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/MongoDBCollectionResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + }, + "options": { + "allOf": [ + { + "$ref": "#/definitions/OptionsResource" + } + ] + } + } + }, + "TableGetResults": { + "description": "An Azure Cosmos DB Table.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB Table", + "$ref": "#/definitions/TableGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "TableGetProperties": { + "description": "The properties of an Azure Cosmos Table", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/TableResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + }, + "options": { + "allOf": [ + { + "$ref": "#/definitions/OptionsResource" + } + ] + } + } + }, + "CassandraKeyspaceGetResults": { + "description": "An Azure Cosmos DB Cassandra keyspace.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB Cassandra keyspace", + "$ref": "#/definitions/CassandraKeyspaceGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "CassandraKeyspaceGetProperties": { + "description": "The properties of an Azure Cosmos DB Cassandra keyspace", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/CassandraKeyspaceResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + }, + "options": { + "allOf": [ + { + "$ref": "#/definitions/OptionsResource" + } + ] + } + } + }, + "CassandraTableGetResults": { + "description": "An Azure Cosmos DB Cassandra table.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB Cassandra table", + "$ref": "#/definitions/CassandraTableGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "CassandraTableGetProperties": { + "description": "The properties of an Azure Cosmos DB Cassandra table", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/CassandraTableResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + }, + "options": { + "allOf": [ + { + "$ref": "#/definitions/OptionsResource" + } + ] + } + } + }, + "GremlinDatabaseGetResults": { + "description": "An Azure Cosmos DB Gremlin database.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB SQL database", + "$ref": "#/definitions/GremlinDatabaseGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "GremlinDatabaseGetProperties": { + "description": "The properties of an Azure Cosmos DB SQL database", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/GremlinDatabaseResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + }, + "options": { + "allOf": [ + { + "$ref": "#/definitions/OptionsResource" + } + ] + } + } + }, + "GremlinGraphGetResults": { + "description": "An Azure Cosmos DB Gremlin graph.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB Gremlin graph", + "$ref": "#/definitions/GremlinGraphGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "GremlinGraphGetProperties": { + "description": "The properties of an Azure Cosmos DB Gremlin graph", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/GremlinGraphResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + }, + "options": { + "allOf": [ + { + "$ref": "#/definitions/OptionsResource" + } + ] + } + } + }, + "ConsistencyPolicy": { + "type": "object", + "description": "The consistency policy for the Cosmos DB database account.", + "properties": { + "defaultConsistencyLevel": { + "description": "The default consistency level and configuration settings of the Cosmos DB account.", + "type": "string", + "enum": [ + "Eventual", + "Session", + "BoundedStaleness", + "Strong", + "ConsistentPrefix" + ], + "x-ms-enum": { + "name": "DefaultConsistencyLevel", + "modelAsString": false + } + }, + "maxStalenessPrefix": { + "description": "When used with the Bounded Staleness consistency level, this value represents the number of stale requests tolerated. Accepted range for this value is 1 – 2,147,483,647. Required when defaultConsistencyPolicy is set to 'BoundedStaleness'.", + "type": "integer", + "minimum": 1, + "maximum": 2147483647, + "format": "int64" + }, + "maxIntervalInSeconds": { + "description": "When used with the Bounded Staleness consistency level, this value represents the time amount of staleness (in seconds) tolerated. Accepted range for this value is 5 - 86400. Required when defaultConsistencyPolicy is set to 'BoundedStaleness'.", + "type": "integer", + "minimum": 5, + "maximum": 86400, + "format": "int32" + } + }, + "required": [ + "defaultConsistencyLevel" + ] + }, + "CorsPolicy": { + "type": "object", + "description": "The CORS policy for the Cosmos DB database account.", + "properties": { + "allowedOrigins": { + "description": "The origin domains that are permitted to make a request against the service via CORS.", + "type": "string" + }, + "allowedMethods": { + "description": "The methods (HTTP request verbs) that the origin domain may use for a CORS request.", + "type": "string" + }, + "allowedHeaders": { + "description": "The request headers that the origin domain may specify on the CORS request.", + "type": "string" + }, + "exposedHeaders": { + "description": "The response headers that may be sent in the response to the CORS request and exposed by the browser to the request issuer.", + "type": "string" + }, + "maxAgeInSeconds": { + "description": "The maximum amount time that a browser should cache the preflight OPTIONS request.", + "type": "integer", + "minimum": 1, + "maximum": 2147483647, + "format": "int64" + } + }, + "required": [ + "allowedOrigins" + ] + }, + "DatabaseAccountGetProperties": { + "description": "Properties for the database account.", + "type": "object", + "properties": { + "provisioningState": { + "$ref": "#/definitions/ProvisioningState" + }, + "documentEndpoint": { + "description": "The connection endpoint for the Cosmos DB database account.", + "type": "string", + "readOnly": true + }, + "databaseAccountOfferType": { + "description": "The offer type for the Cosmos DB database account. Default value: Standard.", + "readOnly": true, + "$ref": "#/definitions/DatabaseAccountOfferType" + }, + "ipRules": { + "description": "List of IpRules.", + "$ref": "#/definitions/IPRules" + }, + "isVirtualNetworkFilterEnabled": { + "description": "Flag to indicate whether to enable/disable Virtual Network ACL rules.", + "type": "boolean" + }, + "enableAutomaticFailover": { + "description": "Enables automatic failover of the write region in the rare event that the region is unavailable due to an outage. Automatic failover will result in a new write region for the account and is chosen based on the failover priorities configured for the account.", + "type": "boolean" + }, + "consistencyPolicy": { + "description": "The consistency policy for the Cosmos DB database account.", + "$ref": "#/definitions/ConsistencyPolicy" + }, + "capabilities": { + "type": "array", + "description": "List of Cosmos DB capabilities for the account", + "items": { + "$ref": "#/definitions/Capability" + } + }, + "writeLocations": { + "type": "array", + "readOnly": true, + "description": "An array that contains the write location for the Cosmos DB account.", + "items": { + "$ref": "#/definitions/Location" + } + }, + "readLocations": { + "type": "array", + "readOnly": true, + "description": "An array that contains of the read locations enabled for the Cosmos DB account.", + "items": { + "$ref": "#/definitions/Location" + } + }, + "locations": { + "type": "array", + "readOnly": true, + "description": "An array that contains all of the locations enabled for the Cosmos DB account.", + "items": { + "$ref": "#/definitions/Location" + } + }, + "failoverPolicies": { + "type": "array", + "readOnly": true, + "description": "An array that contains the regions ordered by their failover priorities.", + "items": { + "$ref": "#/definitions/FailoverPolicy" + } + }, + "virtualNetworkRules": { + "type": "array", + "description": "List of Virtual Network ACL rules configured for the Cosmos DB account.", + "items": { + "$ref": "#/definitions/VirtualNetworkRule" + } + }, + "privateEndpointConnections": { + "type": "array", + "readOnly": true, + "description": "List of Private Endpoint Connections configured for the Cosmos DB account.", + "items": { + "$ref": "../../stable/2021-04-15/privateEndpointConnection.json#/definitions/PrivateEndpointConnection" + } + }, + "enableMultipleWriteLocations": { + "description": "Enables the account to write in multiple locations", + "type": "boolean" + }, + "enableCassandraConnector": { + "description": "Enables the cassandra connector on the Cosmos DB C* account", + "type": "boolean" + }, + "connectorOffer": { + "description": "The cassandra connector offer type for the Cosmos DB database C* account.", + "$ref": "#/definitions/ConnectorOffer" + }, + "disableKeyBasedMetadataWriteAccess": { + "description": "Disable write operations on metadata resources (databases, containers, throughput) via account keys", + "type": "boolean" + }, + "keyVaultKeyUri": { + "description": "The URI of the key vault", + "type": "string" + }, + "defaultIdentity": { + "description": "The default identity for accessing key vault used in features like customer managed keys. The default identity needs to be explicitly set by the users. It can be \"FirstPartyIdentity\", \"SystemAssignedIdentity\" and more.", + "type": "string" + }, + "publicNetworkAccess": { + "description": "Whether requests from Public Network are allowed", + "$ref": "#/definitions/PublicNetworkAccess" + }, + "enableFreeTier": { + "description": "Flag to indicate whether Free Tier is enabled.", + "type": "boolean" + }, + "apiProperties": { + "description": "API specific properties.", + "type": "object", + "$ref": "#/definitions/ApiProperties" + }, + "enableAnalyticalStorage": { + "description": "Flag to indicate whether to enable storage analytics.", + "type": "boolean" + }, + "backupPolicy": { + "description": "The object representing the policy for taking backups on an account.", + "type": "object", + "$ref": "#/definitions/BackupPolicy" + }, + "cors": { + "type": "array", + "description": "The CORS policy for the Cosmos DB database account.", + "items": { + "$ref": "#/definitions/CorsPolicy" + } + }, + "networkAclBypass": { + "description": "Indicates what services are allowed to bypass firewall checks.", + "$ref": "#/definitions/NetworkAclBypass" + }, + "networkAclBypassResourceIds": { + "type": "array", + "description": "An array that contains the Resource Ids for Network Acl Bypass for the Cosmos DB account.", + "items": { + "type": "string" + } + } + } + }, + "DatabaseAccountCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB database accounts.", + "type": "object", + "properties": { + "consistencyPolicy": { + "description": "The consistency policy for the Cosmos DB account.", + "$ref": "#/definitions/ConsistencyPolicy" + }, + "locations": { + "type": "array", + "description": "An array that contains the georeplication locations enabled for the Cosmos DB account.", + "items": { + "$ref": "#/definitions/Location" + } + }, + "databaseAccountOfferType": { + "description": "The offer type for the database", + "$ref": "#/definitions/DatabaseAccountOfferType" + }, + "ipRules": { + "description": "List of IpRules.", + "$ref": "#/definitions/IPRules" + }, + "isVirtualNetworkFilterEnabled": { + "description": "Flag to indicate whether to enable/disable Virtual Network ACL rules.", + "type": "boolean" + }, + "enableAutomaticFailover": { + "description": "Enables automatic failover of the write region in the rare event that the region is unavailable due to an outage. Automatic failover will result in a new write region for the account and is chosen based on the failover priorities configured for the account.", + "type": "boolean" + }, + "capabilities": { + "type": "array", + "description": "List of Cosmos DB capabilities for the account", + "items": { + "$ref": "#/definitions/Capability" + } + }, + "virtualNetworkRules": { + "type": "array", + "description": "List of Virtual Network ACL rules configured for the Cosmos DB account.", + "items": { + "$ref": "#/definitions/VirtualNetworkRule" + } + }, + "enableMultipleWriteLocations": { + "description": "Enables the account to write in multiple locations", + "type": "boolean" + }, + "enableCassandraConnector": { + "description": "Enables the cassandra connector on the Cosmos DB C* account", + "type": "boolean" + }, + "connectorOffer": { + "description": "The cassandra connector offer type for the Cosmos DB database C* account.", + "$ref": "#/definitions/ConnectorOffer" + }, + "disableKeyBasedMetadataWriteAccess": { + "description": "Disable write operations on metadata resources (databases, containers, throughput) via account keys", + "type": "boolean" + }, + "keyVaultKeyUri": { + "description": "The URI of the key vault", + "type": "string" + }, + "defaultIdentity": { + "description": "The default identity for accessing key vault used in features like customer managed keys. The default identity needs to be explicitly set by the users. It can be \"FirstPartyIdentity\", \"SystemAssignedIdentity\" and more.", + "type": "string" + }, + "publicNetworkAccess": { + "description": "Whether requests from Public Network are allowed", + "$ref": "#/definitions/PublicNetworkAccess" + }, + "enableFreeTier": { + "description": "Flag to indicate whether Free Tier is enabled.", + "type": "boolean" + }, + "apiProperties": { + "description": "API specific properties. Currently, supported only for MongoDB API.", + "type": "object", + "$ref": "#/definitions/ApiProperties" + }, + "enableAnalyticalStorage": { + "description": "Flag to indicate whether to enable storage analytics.", + "type": "boolean" + }, + "backupPolicy": { + "description": "The object representing the policy for taking backups on an account.", + "type": "object", + "$ref": "#/definitions/BackupPolicy" + }, + "cors": { + "type": "array", + "description": "The CORS policy for the Cosmos DB database account.", + "items": { + "$ref": "#/definitions/CorsPolicy" + } + }, + "networkAclBypass": { + "description": "Indicates what services are allowed to bypass firewall checks.", + "$ref": "#/definitions/NetworkAclBypass" + }, + "networkAclBypassResourceIds": { + "type": "array", + "description": "An array that contains the Resource Ids for Network Acl Bypass for the Cosmos DB account.", + "items": { + "type": "string" + } + } + }, + "required": [ + "locations", + "databaseAccountOfferType" + ] + }, + "DatabaseAccountCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB database accounts.", + "type": "object", + "properties": { + "kind": { + "description": "Indicates the type of database account. This can only be set at database account creation.", + "type": "string", + "default": "GlobalDocumentDB", + "enum": [ + "GlobalDocumentDB", + "MongoDB", + "Parse" + ], + "x-ms-enum": { + "name": "DatabaseAccountKind", + "modelAsString": true + } + }, + "identity": { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DatabaseAccountCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "DatabaseAccountUpdateProperties": { + "description": "Properties to update Azure Cosmos DB database accounts.", + "type": "object", + "properties": { + "consistencyPolicy": { + "description": "The consistency policy for the Cosmos DB account.", + "$ref": "#/definitions/ConsistencyPolicy" + }, + "locations": { + "type": "array", + "description": "An array that contains the georeplication locations enabled for the Cosmos DB account.", + "items": { + "$ref": "#/definitions/Location" + } + }, + "ipRules": { + "description": "List of IpRules.", + "$ref": "#/definitions/IPRules" + }, + "isVirtualNetworkFilterEnabled": { + "description": "Flag to indicate whether to enable/disable Virtual Network ACL rules.", + "type": "boolean" + }, + "enableAutomaticFailover": { + "description": "Enables automatic failover of the write region in the rare event that the region is unavailable due to an outage. Automatic failover will result in a new write region for the account and is chosen based on the failover priorities configured for the account.", + "type": "boolean" + }, + "capabilities": { + "type": "array", + "description": "List of Cosmos DB capabilities for the account", + "items": { + "$ref": "#/definitions/Capability" + } + }, + "virtualNetworkRules": { + "type": "array", + "description": "List of Virtual Network ACL rules configured for the Cosmos DB account.", + "items": { + "$ref": "#/definitions/VirtualNetworkRule" + } + }, + "enableMultipleWriteLocations": { + "description": "Enables the account to write in multiple locations", + "type": "boolean" + }, + "enableCassandraConnector": { + "description": "Enables the cassandra connector on the Cosmos DB C* account", + "type": "boolean" + }, + "connectorOffer": { + "description": "The cassandra connector offer type for the Cosmos DB database C* account.", + "$ref": "#/definitions/ConnectorOffer" + }, + "disableKeyBasedMetadataWriteAccess": { + "description": "Disable write operations on metadata resources (databases, containers, throughput) via account keys", + "type": "boolean" + }, + "keyVaultKeyUri": { + "description": "The URI of the key vault", + "type": "string" + }, + "defaultIdentity": { + "description": "The default identity for accessing key vault used in features like customer managed keys. The default identity needs to be explicitly set by the users. It can be \"FirstPartyIdentity\", \"SystemAssignedIdentity\" and more.", + "type": "string" + }, + "publicNetworkAccess": { + "description": "Whether requests from Public Network are allowed", + "$ref": "#/definitions/PublicNetworkAccess" + }, + "enableFreeTier": { + "description": "Flag to indicate whether Free Tier is enabled.", + "type": "boolean" + }, + "apiProperties": { + "description": "API specific properties. Currently, supported only for MongoDB API.", + "type": "object", + "$ref": "#/definitions/ApiProperties" + }, + "enableAnalyticalStorage": { + "description": "Flag to indicate whether to enable storage analytics.", + "type": "boolean" + }, + "backupPolicy": { + "description": "The object representing the policy for taking backups on an account.", + "type": "object", + "$ref": "#/definitions/BackupPolicy" + }, + "cors": { + "type": "array", + "description": "The CORS policy for the Cosmos DB database account.", + "items": { + "$ref": "#/definitions/CorsPolicy" + } + }, + "networkAclBypass": { + "description": "Indicates what services are allowed to bypass firewall checks.", + "$ref": "#/definitions/NetworkAclBypass" + }, + "networkAclBypassResourceIds": { + "type": "array", + "description": "An array that contains the Resource Ids for Network Acl Bypass for the Cosmos DB account.", + "items": { + "type": "string" + } + } + } + }, + "DatabaseAccountUpdateParameters": { + "description": "Parameters for patching Azure Cosmos DB database account properties.", + "type": "object", + "properties": { + "tags": { + "$ref": "#/definitions/Tags" + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "identity": { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DatabaseAccountUpdateProperties" + } + } + }, + "DatabaseAccountListReadOnlyKeysResult": { + "description": "The read-only access keys for the given database account.", + "properties": { + "primaryReadonlyMasterKey": { + "readOnly": true, + "type": "string", + "description": "Base 64 encoded value of the primary read-only key." + }, + "secondaryReadonlyMasterKey": { + "readOnly": true, + "type": "string", + "description": "Base 64 encoded value of the secondary read-only key." + } + } + }, + "DatabaseAccountListKeysResult": { + "description": "The access keys for the given database account.", + "properties": { + "primaryMasterKey": { + "readOnly": true, + "type": "string", + "description": "Base 64 encoded value of the primary read-write key." + }, + "secondaryMasterKey": { + "readOnly": true, + "type": "string", + "description": "Base 64 encoded value of the secondary read-write key." + } + }, + "allOf": [ + { + "$ref": "#/definitions/DatabaseAccountListReadOnlyKeysResult" + } + ] + }, + "DatabaseAccountConnectionString": { + "description": "Connection string for the Cosmos DB account", + "properties": { + "connectionString": { + "readOnly": true, + "type": "string", + "description": "Value of the connection string" + }, + "description": { + "readOnly": true, + "type": "string", + "description": "Description of the connection string" + } + } + }, + "DatabaseAccountListConnectionStringsResult": { + "description": "The connection strings for the given database account.", + "properties": { + "connectionStrings": { + "type": "array", + "description": "An array that contains the connection strings for the Cosmos DB account.", + "items": { + "$ref": "#/definitions/DatabaseAccountConnectionString" + } + } + } + }, + "DatabaseAccountRegenerateKeyParameters": { + "type": "object", + "description": "Parameters to regenerate the keys within the database account.", + "properties": { + "keyKind": { + "type": "string", + "description": "The access key to regenerate.", + "enum": [ + "primary", + "secondary", + "primaryReadonly", + "secondaryReadonly" + ], + "x-ms-enum": { + "name": "KeyKind", + "modelAsString": true + } + } + }, + "required": [ + "keyKind" + ] + }, + "DatabaseAccountOfferType": { + "description": "The offer type for the Cosmos DB database account.", + "type": "string", + "enum": [ + "Standard" + ], + "x-ms-enum": { + "name": "DatabaseAccountOfferType", + "modelAsString": false + } + }, + "ThroughputSettingsUpdateParameters": { + "description": "Parameters to update Cosmos DB resource throughput.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to update Azure Cosmos DB resource throughput.", + "$ref": "#/definitions/ThroughputSettingsUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "ThroughputSettingsUpdateProperties": { + "description": "Properties to update Azure Cosmos DB resource throughput.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a resource throughput", + "$ref": "#/definitions/ThroughputSettingsResource" + } + }, + "required": [ + "resource" + ] + }, + "SqlDatabaseCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB SQL database.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB SQL database.", + "$ref": "#/definitions/SqlDatabaseCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "SqlDatabaseCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB SQL database.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a SQL database", + "$ref": "#/definitions/SqlDatabaseResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource" + ] + }, + "SqlContainerCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB container.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB container.", + "$ref": "#/definitions/SqlContainerCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "SqlContainerCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB container.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a container", + "$ref": "#/definitions/SqlContainerResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource" + ] + }, + "SqlStoredProcedureCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB storedProcedure.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB storedProcedure.", + "$ref": "#/definitions/SqlStoredProcedureCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "SqlStoredProcedureCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB storedProcedure.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a storedProcedure", + "$ref": "#/definitions/SqlStoredProcedureResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource" + ] + }, + "SqlUserDefinedFunctionCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB userDefinedFunction.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB userDefinedFunction.", + "$ref": "#/definitions/SqlUserDefinedFunctionCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "SqlUserDefinedFunctionCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB userDefinedFunction.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a userDefinedFunction", + "$ref": "#/definitions/SqlUserDefinedFunctionResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource" + ] + }, + "SqlTriggerCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB trigger.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB trigger.", + "$ref": "#/definitions/SqlTriggerCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "SqlTriggerCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB trigger.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a trigger", + "$ref": "#/definitions/SqlTriggerResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource" + ] + }, + "MongoDBDatabaseCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB MongoDB database.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB MongoDB database.", + "$ref": "#/definitions/MongoDBDatabaseCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "MongoDBDatabaseCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB MongoDB database.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a MongoDB database", + "$ref": "#/definitions/MongoDBDatabaseResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource" + ] + }, + "MongoDBCollectionCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB MongoDB collection.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB MongoDB collection.", + "$ref": "#/definitions/MongoDBCollectionCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "MongoDBCollectionCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB MongoDB collection.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a MongoDB collection", + "$ref": "#/definitions/MongoDBCollectionResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource" + ] + }, + "TableCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB Table.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB Table.", + "$ref": "#/definitions/TableCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "TableCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB Table.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a Table", + "$ref": "#/definitions/TableResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource" + ] + }, + "CassandraKeyspaceCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB Cassandra keyspace.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB Cassandra keyspace.", + "$ref": "#/definitions/CassandraKeyspaceCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "CassandraKeyspaceCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB Cassandra keyspace.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a Cassandra keyspace", + "$ref": "#/definitions/CassandraKeyspaceResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource" + ] + }, + "CassandraTableCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB Cassandra table.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB Cassandra table.", + "$ref": "#/definitions/CassandraTableCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "CassandraTableCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB Cassandra table.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a Cassandra table", + "$ref": "#/definitions/CassandraTableResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource" + ] + }, + "GremlinDatabaseCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB Gremlin database.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB Gremlin database.", + "$ref": "#/definitions/GremlinDatabaseCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "GremlinDatabaseCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB Gremlin database.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a Gremlin database", + "$ref": "#/definitions/GremlinDatabaseResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource" + ] + }, + "GremlinGraphCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB Gremlin graph.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB Gremlin graph.", + "$ref": "#/definitions/GremlinGraphCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "GremlinGraphCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB Gremlin graph.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a Gremlin graph", + "$ref": "#/definitions/GremlinGraphResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource" + ] + }, + "ThroughputSettingsResource": { + "type": "object", + "description": "Cosmos DB resource throughput object. Either throughput is required or autoscaleSettings is required, but not both.", + "properties": { + "throughput": { + "type": "integer", + "description": "Value of the Cosmos DB resource throughput. Either throughput is required or autoscaleSettings is required, but not both." + }, + "autoscaleSettings": { + "description": "Cosmos DB resource for autoscale settings. Either throughput is required or autoscaleSettings is required, but not both.", + "$ref": "#/definitions/AutoscaleSettingsResource" + }, + "minimumThroughput": { + "type": "string", + "description": "The minimum throughput of the resource", + "readOnly": true + }, + "offerReplacePending": { + "type": "string", + "description": "The throughput replace is pending", + "readOnly": true + } + } + }, + "AutoscaleSettingsResource": { + "type": "object", + "description": "Cosmos DB provisioned throughput settings object", + "properties": { + "maxThroughput": { + "type": "integer", + "description": "Represents maximum throughput container can scale up to." + }, + "autoUpgradePolicy": { + "description": "Cosmos DB resource auto-upgrade policy", + "$ref": "#/definitions/AutoUpgradePolicyResource" + }, + "targetMaxThroughput": { + "type": "integer", + "description": "Represents target maximum throughput container can scale up to once offer is no longer in pending state.", + "readOnly": true + } + }, + "required": [ + "maxThroughput" + ] + }, + "AutoUpgradePolicyResource": { + "type": "object", + "description": "Cosmos DB resource auto-upgrade policy", + "properties": { + "throughputPolicy": { + "description": "Represents throughput policy which service must adhere to for auto-upgrade", + "$ref": "#/definitions/ThroughputPolicyResource" + } + } + }, + "ThroughputPolicyResource": { + "type": "object", + "description": "Cosmos DB resource throughput policy", + "properties": { + "isEnabled": { + "type": "boolean", + "description": "Determines whether the ThroughputPolicy is active or not" + }, + "incrementPercent": { + "type": "integer", + "description": "Represents the percentage by which throughput can increase every time throughput policy kicks in." + } + } + }, + "OptionsResource": { + "type": "object", + "description": "Cosmos DB options resource object", + "readOnly": true, + "properties": { + "throughput": { + "type": "integer", + "description": "Value of the Cosmos DB resource throughput or autoscaleSettings. Use the ThroughputSetting resource when retrieving offer details." + }, + "autoscaleSettings": { + "type": "object", + "$ref": "#/definitions/AutoscaleSettings", + "description": "Specifies the Autoscale settings." + } + } + }, + "SqlDatabaseResource": { + "type": "object", + "description": "Cosmos DB SQL database resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB SQL database" + } + }, + "required": [ + "id" + ] + }, + "SqlContainerResource": { + "type": "object", + "description": "Cosmos DB SQL container resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB SQL container" + }, + "indexingPolicy": { + "$ref": "#/definitions/IndexingPolicy", + "description": "The configuration of the indexing policy. By default, the indexing is automatic for all document paths within the container" + }, + "partitionKey": { + "$ref": "#/definitions/ContainerPartitionKey", + "description": "The configuration of the partition key to be used for partitioning data into multiple partitions" + }, + "defaultTtl": { + "type": "integer", + "description": "Default time to live" + }, + "uniqueKeyPolicy": { + "$ref": "#/definitions/UniqueKeyPolicy", + "description": "The unique key policy configuration for specifying uniqueness constraints on documents in the collection in the Azure Cosmos DB service." + }, + "conflictResolutionPolicy": { + "$ref": "#/definitions/ConflictResolutionPolicy", + "description": "The conflict resolution policy for the container." + }, + "analyticalStorageTtl": { + "type": "integer", + "format": "int64", + "description": "Analytical TTL." + } + }, + "required": [ + "id" + ] + }, + "IndexingPolicy": { + "type": "object", + "description": "Cosmos DB indexing policy", + "properties": { + "automatic": { + "type": "boolean", + "description": "Indicates if the indexing policy is automatic" + }, + "indexingMode": { + "description": "Indicates the indexing mode.", + "type": "string", + "default": "consistent", + "enum": [ + "consistent", + "lazy", + "none" + ], + "x-ms-enum": { + "name": "IndexingMode", + "modelAsString": true + } + }, + "includedPaths": { + "description": "List of paths to include in the indexing", + "type": "array", + "items": { + "$ref": "#/definitions/IncludedPath" + } + }, + "excludedPaths": { + "description": "List of paths to exclude from indexing", + "type": "array", + "items": { + "$ref": "#/definitions/ExcludedPath" + } + }, + "compositeIndexes": { + "description": "List of composite path list", + "type": "array", + "items": { + "$ref": "#/definitions/CompositePathList" + } + }, + "spatialIndexes": { + "description": "List of spatial specifics", + "type": "array", + "items": { + "$ref": "#/definitions/SpatialSpec" + } + } + } + }, + "ExcludedPath": { + "type": "object", + "properties": { + "path": { + "type": "string", + "description": "The path for which the indexing behavior applies to. Index paths typically start with root and end with wildcard (/path/*)" + } + } + }, + "IncludedPath": { + "type": "object", + "description": "The paths that are included in indexing", + "properties": { + "path": { + "type": "string", + "description": "The path for which the indexing behavior applies to. Index paths typically start with root and end with wildcard (/path/*)" + }, + "indexes": { + "description": "List of indexes for this path", + "type": "array", + "items": { + "$ref": "#/definitions/Indexes" + } + } + } + }, + "Indexes": { + "type": "object", + "description": "The indexes for the path.", + "properties": { + "dataType": { + "description": "The datatype for which the indexing behavior is applied to.", + "type": "string", + "default": "String", + "enum": [ + "String", + "Number", + "Point", + "Polygon", + "LineString", + "MultiPolygon" + ], + "x-ms-enum": { + "name": "DataType", + "modelAsString": true + } + }, + "precision": { + "description": "The precision of the index. -1 is maximum precision.", + "type": "integer" + }, + "kind": { + "description": "Indicates the type of index.", + "type": "string", + "default": "Hash", + "enum": [ + "Hash", + "Range", + "Spatial" + ], + "x-ms-enum": { + "name": "IndexKind", + "modelAsString": true + } + } + } + }, + "CompositePathList": { + "description": "List of composite path", + "type": "array", + "items": { + "$ref": "#/definitions/CompositePath" + } + }, + "CompositePath": { + "type": "object", + "properties": { + "path": { + "type": "string", + "description": "The path for which the indexing behavior applies to. Index paths typically start with root and end with wildcard (/path/*)" + }, + "order": { + "description": "Sort order for composite paths.", + "type": "string", + "enum": [ + "ascending", + "descending" + ], + "x-ms-enum": { + "name": "CompositePathSortOrder", + "modelAsString": true + } + } + } + }, + "SpatialSpec": { + "type": "object", + "properties": { + "path": { + "type": "string", + "description": "The path for which the indexing behavior applies to. Index paths typically start with root and end with wildcard (/path/*)" + }, + "types": { + "description": "List of path's spatial type", + "type": "array", + "items": { + "$ref": "#/definitions/SpatialType" + } + } + } + }, + "SpatialType": { + "description": "Indicates the spatial type of index.", + "type": "string", + "enum": [ + "Point", + "LineString", + "Polygon", + "MultiPolygon" + ], + "x-ms-enum": { + "name": "SpatialType", + "modelAsString": true + } + }, + "ContainerPartitionKey": { + "type": "object", + "description": "The configuration of the partition key to be used for partitioning data into multiple partitions", + "properties": { + "paths": { + "description": "List of paths using which data within the container can be partitioned", + "type": "array", + "items": { + "$ref": "#/definitions/Path" + } + }, + "kind": { + "description": "Indicates the kind of algorithm used for partitioning. For MultiHash, multiple partition keys (upto three maximum) are supported for container create", + "type": "string", + "default": "Hash", + "enum": [ + "Hash", + "Range", + "MultiHash" + ], + "x-ms-enum": { + "name": "PartitionKind", + "modelAsString": true + } + }, + "version": { + "description": "Indicates the version of the partition key definition", + "type": "integer", + "minimum": 1, + "maximum": 2, + "format": "int32" + }, + "systemKey": { + "description": "Indicates if the container is using a system generated partition key", + "type": "boolean", + "readOnly": true + } + } + }, + "Path": { + "type": "string", + "description": "A path. These typically start with root (/path)" + }, + "UniqueKeyPolicy": { + "type": "object", + "description": "The unique key policy configuration for specifying uniqueness constraints on documents in the collection in the Azure Cosmos DB service.", + "properties": { + "uniqueKeys": { + "description": "List of unique keys on that enforces uniqueness constraint on documents in the collection in the Azure Cosmos DB service.", + "type": "array", + "items": { + "$ref": "#/definitions/UniqueKey" + } + } + } + }, + "UniqueKey": { + "type": "object", + "description": "The unique key on that enforces uniqueness constraint on documents in the collection in the Azure Cosmos DB service.", + "properties": { + "paths": { + "description": "List of paths must be unique for each document in the Azure Cosmos DB service", + "type": "array", + "items": { + "$ref": "#/definitions/Path" + } + } + } + }, + "ConflictResolutionPolicy": { + "type": "object", + "description": "The conflict resolution policy for the container.", + "properties": { + "mode": { + "description": "Indicates the conflict resolution mode.", + "type": "string", + "default": "LastWriterWins", + "enum": [ + "LastWriterWins", + "Custom" + ], + "x-ms-enum": { + "name": "ConflictResolutionMode", + "modelAsString": true + } + }, + "conflictResolutionPath": { + "type": "string", + "description": "The conflict resolution path in the case of LastWriterWins mode." + }, + "conflictResolutionProcedure": { + "type": "string", + "description": "The procedure to resolve conflicts in the case of custom mode." + } + } + }, + "SqlStoredProcedureResource": { + "type": "object", + "description": "Cosmos DB SQL storedProcedure resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB SQL storedProcedure" + }, + "body": { + "type": "string", + "description": "Body of the Stored Procedure" + } + }, + "required": [ + "id" + ] + }, + "SqlUserDefinedFunctionResource": { + "type": "object", + "description": "Cosmos DB SQL userDefinedFunction resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB SQL userDefinedFunction" + }, + "body": { + "type": "string", + "description": "Body of the User Defined Function" + } + }, + "required": [ + "id" + ] + }, + "SqlTriggerResource": { + "type": "object", + "description": "Cosmos DB SQL trigger resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB SQL trigger" + }, + "body": { + "type": "string", + "description": "Body of the Trigger" + }, + "triggerType": { + "type": "string", + "enum": [ + "Pre", + "Post" + ], + "description": "Type of the Trigger", + "x-ms-enum": { + "name": "triggerType", + "modelAsString": true + } + }, + "triggerOperation": { + "type": "string", + "enum": [ + "All", + "Create", + "Update", + "Delete", + "Replace" + ], + "description": "The operation the trigger is associated with", + "x-ms-enum": { + "name": "triggerOperation", + "modelAsString": true + } + } + }, + "required": [ + "id" + ] + }, + "MongoDBDatabaseResource": { + "type": "object", + "description": "Cosmos DB MongoDB database resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB MongoDB database" + } + }, + "required": [ + "id" + ] + }, + "MongoDBCollectionResource": { + "type": "object", + "description": "Cosmos DB MongoDB collection resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB MongoDB collection" + }, + "shardKey": { + "description": "A key-value pair of shard keys to be applied for the request.", + "$ref": "#/definitions/ShardKeys" + }, + "indexes": { + "description": "List of index keys", + "type": "array", + "items": { + "$ref": "#/definitions/MongoIndex" + } + }, + "analyticalStorageTtl": { + "type": "integer", + "description": "Analytical TTL." + } + }, + "required": [ + "id" + ] + }, + "ShardKeys": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The shard key and partition kind pair, only support \"Hash\" partition kind" + }, + "MongoIndex": { + "type": "object", + "description": "Cosmos DB MongoDB collection index key", + "properties": { + "key": { + "description": "Cosmos DB MongoDB collection index keys", + "$ref": "#/definitions/MongoIndexKeys" + }, + "options": { + "description": "Cosmos DB MongoDB collection index key options", + "$ref": "#/definitions/MongoIndexOptions" + } + } + }, + "MongoIndexKeys": { + "type": "object", + "description": "Cosmos DB MongoDB collection resource object", + "properties": { + "keys": { + "description": "List of keys for each MongoDB collection in the Azure Cosmos DB service", + "type": "array", + "items": { + "$ref": "#/definitions/Key" + } + } + } + }, + "Key": { + "type": "string", + "description": "A Key." + }, + "MongoIndexOptions": { + "type": "object", + "description": "Cosmos DB MongoDB collection index options", + "properties": { + "expireAfterSeconds": { + "description": "Expire after seconds", + "type": "integer" + }, + "unique": { + "description": "Is unique or not", + "type": "boolean" + } + } + }, + "TableResource": { + "type": "object", + "description": "Cosmos DB table resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB table" + } + }, + "required": [ + "id" + ] + }, + "CassandraKeyspaceResource": { + "type": "object", + "description": "Cosmos DB Cassandra keyspace resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB Cassandra keyspace" + } + }, + "required": [ + "id" + ] + }, + "CassandraTableResource": { + "type": "object", + "description": "Cosmos DB Cassandra table resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB Cassandra table" + }, + "defaultTtl": { + "type": "integer", + "description": "Time to live of the Cosmos DB Cassandra table" + }, + "schema": { + "description": "Schema of the Cosmos DB Cassandra table", + "$ref": "#/definitions/CassandraSchema" + }, + "analyticalStorageTtl": { + "type": "integer", + "description": "Analytical TTL." + } + }, + "required": [ + "id" + ] + }, + "CassandraSchema": { + "type": "object", + "description": "Cosmos DB Cassandra table schema", + "properties": { + "columns": { + "type": "array", + "items": { + "$ref": "#/definitions/Column" + }, + "description": "List of Cassandra table columns." + }, + "partitionKeys": { + "type": "array", + "items": { + "$ref": "#/definitions/CassandraPartitionKey" + }, + "description": "List of partition key." + }, + "clusterKeys": { + "type": "array", + "items": { + "$ref": "#/definitions/ClusterKey" + }, + "description": "List of cluster key." + } + } + }, + "Column": { + "type": "object", + "description": "Cosmos DB Cassandra table column", + "properties": { + "name": { + "type": "string", + "description": "Name of the Cosmos DB Cassandra table column" + }, + "type": { + "type": "string", + "description": "Type of the Cosmos DB Cassandra table column" + } + } + }, + "CassandraPartitionKey": { + "type": "object", + "description": "Cosmos DB Cassandra table partition key", + "properties": { + "name": { + "type": "string", + "description": "Name of the Cosmos DB Cassandra table partition key" + } + } + }, + "ClusterKey": { + "type": "object", + "description": "Cosmos DB Cassandra table cluster key", + "properties": { + "name": { + "type": "string", + "description": "Name of the Cosmos DB Cassandra table cluster key" + }, + "orderBy": { + "type": "string", + "description": "Order of the Cosmos DB Cassandra table cluster key, only support \"Asc\" and \"Desc\"" + } + } + }, + "GremlinDatabaseResource": { + "type": "object", + "description": "Cosmos DB Gremlin database resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB Gremlin database" + } + }, + "required": [ + "id" + ] + }, + "GremlinGraphResource": { + "type": "object", + "description": "Cosmos DB Gremlin graph resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB Gremlin graph" + }, + "indexingPolicy": { + "$ref": "#/definitions/IndexingPolicy", + "description": "The configuration of the indexing policy. By default, the indexing is automatic for all document paths within the graph" + }, + "partitionKey": { + "$ref": "#/definitions/ContainerPartitionKey", + "description": "The configuration of the partition key to be used for partitioning data into multiple partitions" + }, + "defaultTtl": { + "type": "integer", + "description": "Default time to live" + }, + "uniqueKeyPolicy": { + "$ref": "#/definitions/UniqueKeyPolicy", + "description": "The unique key policy configuration for specifying uniqueness constraints on documents in the collection in the Azure Cosmos DB service." + }, + "conflictResolutionPolicy": { + "$ref": "#/definitions/ConflictResolutionPolicy", + "description": "The conflict resolution policy for the graph." + } + }, + "required": [ + "id" + ] + }, + "CreateUpdateOptions": { + "type": "object", + "properties": { + "throughput": { + "type": "integer", + "description": "Request Units per second. For example, \"throughput\": 10000." + }, + "autoscaleSettings": { + "$ref": "#/definitions/AutoscaleSettings", + "description": "Specifies the Autoscale settings." + } + }, + "description": "CreateUpdateOptions are a list of key-value pairs that describe the resource. Supported keys are \"If-Match\", \"If-None-Match\", \"Session-Token\" and \"Throughput\"" + }, + "AutoscaleSettings": { + "type": "object", + "properties": { + "maxThroughput": { + "type": "integer", + "description": "Represents maximum throughput, the resource can scale up to." + } + } + }, + "Capability": { + "type": "object", + "description": "Cosmos DB capability object", + "properties": { + "name": { + "type": "string", + "description": "Name of the Cosmos DB capability. For example, \"name\": \"EnableCassandra\". Current values also include \"EnableTable\" and \"EnableGremlin\"." + } + } + }, + "Tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "ManagedServiceIdentity": { + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of the system assigned identity. This property will only be provided for a system assigned identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant id of the system assigned identity. This property will only be provided for a system assigned identity." + }, + "type": { + "type": "string", + "description": "The type of identity used for the resource. The type 'SystemAssigned,UserAssigned' includes both an implicitly created identity and a set of user assigned identities. The type 'None' will remove any identities from the service.", + "enum": [ + "SystemAssigned", + "UserAssigned", + "SystemAssigned,UserAssigned", + "None" + ], + "x-ms-enum": { + "name": "ResourceIdentityType", + "modelAsString": false + } + }, + "userAssignedIdentities": { + "type": "object", + "additionalProperties": { + "type": "object", + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of user assigned identity." + }, + "clientId": { + "readOnly": true, + "type": "string", + "description": "The client id of user assigned identity." + } + } + }, + "description": "The list of user identities associated with resource. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'." + } + }, + "description": "Identity for the resource." + }, + "ProvisioningState": { + "type": "string", + "readOnly": true, + "description": "The status of the Cosmos DB account at the time the operation was called. The status can be one of following. 'Creating' – the Cosmos DB account is being created. When an account is in Creating state, only properties that are specified as input for the Create Cosmos DB account operation are returned. 'Succeeded' – the Cosmos DB account is active for use. 'Updating' – the Cosmos DB account is being updated. 'Deleting' – the Cosmos DB account is being deleted. 'Failed' – the Cosmos DB account failed creation. 'DeletionFailed' – the Cosmos DB account deletion failed." + }, + "IPRules": { + "type": "array", + "description": "Array of IpAddressOrRange objects.", + "items": { + "$ref": "#/definitions/IpAddressOrRange" + } + }, + "IpAddressOrRange": { + "type": "object", + "description": "IpAddressOrRange object", + "properties": { + "ipAddressOrRange": { + "type": "string", + "description": "A single IPv4 address or a single IPv4 address range in CIDR format. Provided IPs must be well-formatted and cannot be contained in one of the following ranges: 10.0.0.0/8, 100.64.0.0/10, 172.16.0.0/12, 192.168.0.0/16, since these are not enforceable by the IP address filter. Example of valid inputs: “23.40.210.245” or “23.40.210.0/8”." + } + } + }, + "VirtualNetworkRule": { + "type": "object", + "description": "Virtual Network ACL Rule object", + "properties": { + "id": { + "type": "string", + "description": "Resource ID of a subnet, for example: /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}." + }, + "ignoreMissingVNetServiceEndpoint": { + "type": "boolean", + "description": "Create firewall rule before the virtual network has vnet service endpoint enabled." + } + } + }, + "NetworkAclBypass": { + "description": "Indicates what services are allowed to bypass firewall checks.", + "type": "string", + "enum": [ + "None", + "AzureServices" + ], + "x-ms-enum": { + "name": "NetworkAclBypass", + "modelAsString": false + } + }, + "Operation": { + "description": "REST API operation", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}", + "type": "string" + }, + "display": { + "description": "The object that represents the operation.", + "properties": { + "Provider": { + "description": "Service provider: Microsoft.ResourceProvider", + "type": "string" + }, + "Resource": { + "description": "Resource on which the operation is performed: Profile, endpoint, etc.", + "type": "string" + }, + "Operation": { + "description": "Operation type: Read, write, delete, etc.", + "type": "string" + }, + "Description": { + "description": "Description of operation", + "type": "string" + } + } + } + } + }, + "OperationListResult": { + "description": "Result of the request to list Resource Provider operations. It contains a list of operations and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "description": "List of operations supported by the Resource Provider." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "UsagesResult": { + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Usage" + }, + "description": "The list of usages for the database. A usage is a point in time metric" + } + }, + "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": "integer", + "format": "int64", + "readOnly": true, + "description": "Maximum value for this metric" + }, + "currentValue": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "Current value for this metric" + } + }, + "description": "The usage data for a usage request." + }, + "PartitionUsagesResult": { + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/PartitionUsage" + }, + "description": "The list of partition-level usages for the database. A usage is a point in time metric" + } + }, + "description": "The response to a list partition level usage request." + }, + "PartitionUsage": { + "allOf": [ + { + "$ref": "#/definitions/Usage" + } + ], + "properties": { + "partitionId": { + "readOnly": true, + "type": "string", + "description": "The partition id (GUID identifier) of the usages." + }, + "partitionKeyRangeId": { + "readOnly": true, + "type": "string", + "description": "The partition key range id (integer identifier) of the usages." + } + }, + "description": "The partition level usage data for a usage request." + }, + "MetricDefinitionsListResult": { + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/MetricDefinition" + }, + "description": "The list of metric definitions for the account." + } + }, + "description": "The response to a list metric definitions request." + }, + "MetricDefinition": { + "properties": { + "metricAvailabilities": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/MetricAvailability" + }, + "description": "The list of metric availabilities for the account." + }, + "primaryAggregationType": { + "readOnly": true, + "type": "string", + "description": "The primary aggregation type of the metric.", + "enum": [ + "None", + "Average", + "Total", + "Minimum", + "Maximum", + "Last" + ], + "x-ms-enum": { + "modelAsString": true, + "name": "PrimaryAggregationType" + } + }, + "unit": { + "description": "The unit of the metric.", + "$ref": "#/definitions/UnitType" + }, + "resourceUri": { + "readOnly": true, + "type": "string", + "description": "The resource uri of the database." + }, + "name": { + "readOnly": true, + "$ref": "#/definitions/MetricName", + "description": "The name information for the metric." + } + }, + "description": "The definition of a metric." + }, + "MetricAvailability": { + "properties": { + "timeGrain": { + "readOnly": true, + "type": "string", + "description": "The time grain to be used to summarize the metric values." + }, + "retention": { + "readOnly": true, + "type": "string", + "description": "The retention for the metric values." + } + }, + "description": "The availability of the metric." + }, + "MetricListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Metric" + }, + "description": "The list of metrics for the account." + } + }, + "description": "The response to a list metrics request." + }, + "Metric": { + "properties": { + "startTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The start time for the metric (ISO-8601 format)." + }, + "endTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The end time for the metric (ISO-8601 format)." + }, + "timeGrain": { + "readOnly": true, + "type": "string", + "description": "The time grain to be used to summarize the metric values." + }, + "unit": { + "$ref": "#/definitions/UnitType", + "description": "The unit of the metric." + }, + "name": { + "readOnly": true, + "$ref": "#/definitions/MetricName", + "description": "The name information for the metric." + }, + "metricValues": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/MetricValue" + }, + "description": "The metric values for the specified time window and timestep." + } + }, + "description": "Metric data" + }, + "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." + }, + "MetricValue": { + "properties": { + "_count": { + "readOnly": true, + "type": "number", + "format": "int32", + "description": "The number of values for the metric." + }, + "average": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The average value of the metric." + }, + "maximum": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The max value of the metric." + }, + "minimum": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The min value of the metric." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The metric timestamp (ISO-8601 format)." + }, + "total": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The total value of the metric." + } + }, + "description": "Represents metrics values." + }, + "PercentileMetricListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/PercentileMetric" + }, + "description": "The list of percentile metrics for the account." + } + }, + "description": "The response to a list percentile metrics request." + }, + "PercentileMetric": { + "properties": { + "startTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The start time for the metric (ISO-8601 format)." + }, + "endTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The end time for the metric (ISO-8601 format)." + }, + "timeGrain": { + "readOnly": true, + "type": "string", + "description": "The time grain to be used to summarize the metric values." + }, + "unit": { + "$ref": "#/definitions/UnitType", + "description": "The unit of the metric." + }, + "name": { + "readOnly": true, + "$ref": "#/definitions/MetricName", + "description": "The name information for the metric." + }, + "metricValues": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/PercentileMetricValue" + }, + "description": "The percentile metric values for the specified time window and timestep." + } + }, + "description": "Percentile Metric data" + }, + "PercentileMetricValue": { + "allOf": [ + { + "$ref": "#/definitions/MetricValue" + } + ], + "properties": { + "P10": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The 10th percentile value for the metric." + }, + "P25": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The 25th percentile value for the metric." + }, + "P50": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The 50th percentile value for the metric." + }, + "P75": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The 75th percentile value for the metric." + }, + "P90": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The 90th percentile value for the metric." + }, + "P95": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The 95th percentile value for the metric." + }, + "P99": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The 99th percentile value for the metric." + } + }, + "description": "Represents percentile metrics values." + }, + "PartitionMetricListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/PartitionMetric" + }, + "description": "The list of partition-level metrics for the account." + } + }, + "description": "The response to a list partition metrics request." + }, + "PartitionMetric": { + "allOf": [ + { + "$ref": "#/definitions/Metric" + } + ], + "properties": { + "partitionId": { + "readOnly": true, + "type": "string", + "description": "The partition id (GUID identifier) of the metric values." + }, + "partitionKeyRangeId": { + "readOnly": true, + "type": "string", + "description": "The partition key range id (integer identifier) of the metric values." + } + }, + "description": "The metric values for a single partition." + }, + "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" + } + }, + "ConnectorOffer": { + "description": "The cassandra connector offer type for the Cosmos DB C* database account.", + "type": "string", + "enum": [ + "Small" + ], + "x-ms-enum": { + "name": "ConnectorOffer", + "modelAsString": true + } + }, + "PublicNetworkAccess": { + "type": "string", + "description": "Whether requests from Public Network are allowed", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "modelAsString": true, + "name": "PublicNetworkAccess" + } + }, + "ApiProperties": { + "type": "object", + "properties": { + "serverVersion": { + "type": "string", + "enum": [ + "3.2", + "3.6", + "4.0" + ], + "description": "Describes the ServerVersion of an a MongoDB account.", + "x-ms-enum": { + "modelAsString": true, + "name": "ServerVersion" + } + } + } + }, + "BackupPolicy": { + "type": "object", + "description": "The object representing the policy for taking backups on an account.", + "discriminator": "type", + "properties": { + "type": { + "type": "string", + "$ref": "#/definitions/BackupPolicyType" + } + }, + "required": [ + "type" + ] + }, + "BackupPolicyType": { + "description": "Describes the mode of backups.", + "type": "string", + "enum": [ + "Periodic", + "Continuous" + ], + "x-ms-enum": { + "modelAsString": true, + "name": "BackupPolicyType" + } + }, + "PeriodicModeBackupPolicy": { + "description": "The object representing periodic mode backup policy.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/BackupPolicy" + } + ], + "properties": { + "periodicModeProperties": { + "type": "object", + "description": "Configuration values for periodic mode backup", + "$ref": "#/definitions/PeriodicModeProperties" + } + }, + "x-ms-discriminator-value": "Periodic" + }, + "ContinuousModeBackupPolicy": { + "description": "The object representing continuous mode backup policy.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/BackupPolicy" + } + ], + "x-ms-discriminator-value": "Continuous" + }, + "PeriodicModeProperties": { + "type": "object", + "description": "Configuration values for periodic mode backup", + "properties": { + "backupIntervalInMinutes": { + "type": "integer", + "format": "int32", + "minimum": 0, + "description": "An integer representing the interval in minutes between two backups" + }, + "backupRetentionIntervalInHours": { + "type": "integer", + "format": "int32", + "minimum": 0, + "description": "An integer representing the time (in hours) that each backup is retained" + } + } + } + }, + "parameters": { + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90, + "x-ms-parameter-location": "method", + "description": "Name of an Azure resource group." + }, + "accountNameParameter": { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB database account name.", + "minLength": 3, + "maxLength": 50, + "pattern": "^[a-z0-9]+(-[a-z0-9]+)*" + }, + "filterParameter": { + "name": "$filter", + "in": "query", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "An OData filter expression that describes a subset of metrics to return. The parameters that can be filtered are name.value (name of the metric, can have an or of multiple names), startTime, endTime, and timeGrain. The supported operator is eq." + }, + "usageFilterParameter": { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "x-ms-parameter-location": "method", + "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)." + }, + "databaseRidParameter": { + "name": "databaseRid", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB database rid." + }, + "collectionRidParameter": { + "name": "collectionRid", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB collection rid." + }, + "databaseNameParameter": { + "name": "databaseName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB database name." + }, + "containerNameParameter": { + "name": "containerName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB container name." + }, + "storedProcedureNameParameter": { + "name": "storedProcedureName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB storedProcedure name." + }, + "userDefinedFunctionNameParameter": { + "name": "userDefinedFunctionName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB userDefinedFunction name." + }, + "triggerNameParameter": { + "name": "triggerName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB trigger name." + }, + "tableNameParameter": { + "name": "tableName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB table name." + }, + "collectionNameParameter": { + "name": "collectionName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB collection name." + }, + "keyspaceNameParameter": { + "name": "keyspaceName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB keyspace name." + }, + "graphNameParameter": { + "name": "graphName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB graph name." + }, + "regionParameter": { + "name": "region", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB region, with spaces between words and each word capitalized." + }, + "sourceRegionParameter": { + "name": "sourceRegion", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Source region from which data is written. Cosmos DB region, with spaces between words and each word capitalized." + }, + "targetRegionParameter": { + "name": "targetRegion", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Target region to which data is written. Cosmos DB region, with spaces between words and each word capitalized." + }, + "partitionKeyRangeIdParameter": { + "name": "partitionKeyRangeId", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Partition Key Range Id for which to get data." + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCassandraKeyspaceCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCassandraKeyspaceCreateUpdate.json new file mode 100644 index 000000000000..ee77eeb9af04 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCassandraKeyspaceCreateUpdate.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName", + "createUpdateCassandraKeyspaceParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "keyspaceName" + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName", + "name": "keyspaceName", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "keyspaceName" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCassandraKeyspaceDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCassandraKeyspaceDelete.json new file mode 100644 index 000000000000..774b1a4f11bb --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCassandraKeyspaceDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCassandraKeyspaceGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCassandraKeyspaceGet.json new file mode 100644 index 000000000000..0da068d326d4 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCassandraKeyspaceGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName", + "name": "keyspaceName", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "keyspaceName", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCassandraKeyspaceList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCassandraKeyspaceList.json new file mode 100644 index 000000000000..e1c9907cfa65 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCassandraKeyspaceList.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2021-04-15", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName", + "name": "keyspaceName", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "keyspaceName" + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCassandraKeyspaceMigrateToAutoscale.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCassandraKeyspaceMigrateToAutoscale.json new file mode 100644 index 000000000000..b374a60aaff0 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCassandraKeyspaceMigrateToAutoscale.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "autoscaleSettings": { + "maxThroughput": 4000 + }, + "minimumThroughput": "4000", + "offerReplacePending": "false", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCassandraKeyspaceMigrateToManualThroughput.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCassandraKeyspaceMigrateToManualThroughput.json new file mode 100644 index 000000000000..ccc456cf0075 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCassandraKeyspaceMigrateToManualThroughput.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "false", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCassandraKeyspaceThroughputGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCassandraKeyspaceThroughputGet.json new file mode 100644 index 000000000000..41bd47b0d156 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCassandraKeyspaceThroughputGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCassandraKeyspaceThroughputUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCassandraKeyspaceThroughputUpdate.json new file mode 100644 index 000000000000..a4e03cbeddf9 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCassandraKeyspaceThroughputUpdate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName", + "updateThroughputParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCassandraTableCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCassandraTableCreateUpdate.json new file mode 100644 index 000000000000..8ceb1c778631 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCassandraTableCreateUpdate.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName", + "tableName": "tableName", + "createUpdateCassandraTableParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "tableName", + "defaultTtl": 100, + "schema": { + "columns": [ + { + "name": "columnA", + "type": "Ascii" + } + ], + "partitionKeys": [ + { + "name": "columnA" + } + ], + "clusterKeys": [ + { + "name": "columnA", + "orderBy": "Asc" + } + ] + } + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName/cassandraTables/tableName", + "name": "tableName", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/cassandraTables", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "tableName", + "defaultTtl": 100, + "schema": { + "columns": [ + { + "name": "columnA", + "type": "Ascii" + } + ], + "partitionKeys": [ + { + "name": "columnA" + } + ], + "clusterKeys": [ + { + "name": "columnA", + "orderBy": "Asc" + } + ] + } + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCassandraTableDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCassandraTableDelete.json new file mode 100644 index 000000000000..90d374de8238 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCassandraTableDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName", + "tableName": "tableName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCassandraTableGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCassandraTableGet.json new file mode 100644 index 000000000000..07170f4afafc --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCassandraTableGet.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName", + "tableName": "tableName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName/cassandraTables/tableName", + "name": "tableName", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/cassandraTables", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "tableName", + "defaultTtl": 100, + "schema": { + "columns": [ + { + "name": "columnA", + "type": "Ascii" + } + ], + "partitionKeys": [ + { + "name": "columnA" + } + ], + "clusterKeys": [ + { + "name": "columnA", + "orderBy": "Asc" + } + ] + }, + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCassandraTableList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCassandraTableList.json new file mode 100644 index 000000000000..3434ef845acf --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCassandraTableList.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2021-04-15", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "keyspaceName": "keyspaceName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName/cassandraTables/tableName", + "name": "tableName", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/cassandraTables", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "tableName", + "defaultTtl": 100, + "schema": { + "columns": [ + { + "name": "columnA", + "type": "Ascii" + } + ], + "partitionKeys": [ + { + "name": "columnA" + } + ], + "clusterKeys": [ + { + "name": "columnA", + "orderBy": "Asc" + } + ] + } + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCassandraTableMigrateToAutoscale.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCassandraTableMigrateToAutoscale.json new file mode 100644 index 000000000000..b5c9d7b7510c --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCassandraTableMigrateToAutoscale.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName", + "tableName": "tableName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "autoscaleSettings": { + "maxThroughput": 4000 + }, + "minimumThroughput": "4000", + "offerReplacePending": "false", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCassandraTableMigrateToManualThroughput.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCassandraTableMigrateToManualThroughput.json new file mode 100644 index 000000000000..4cb53cbf772d --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCassandraTableMigrateToManualThroughput.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName", + "tableName": "tableName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "false", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCassandraTableThroughputGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCassandraTableThroughputGet.json new file mode 100644 index 000000000000..79a29f4046b4 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCassandraTableThroughputGet.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName", + "tableName": "tableName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName/cassandraTables/tableName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/cassandraTables/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCassandraTableThroughputUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCassandraTableThroughputUpdate.json new file mode 100644 index 000000000000..11d8e5b012bd --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCassandraTableThroughputUpdate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName", + "tableName": "tableName", + "updateThroughputParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName/cassandraTables/tableName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/cassandraTables/throughputSettings", + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCollectionGetMetricDefinitions.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCollectionGetMetricDefinitions.json new file mode 100644 index 000000000000..c9830fd0c1e5 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCollectionGetMetricDefinitions.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "subscriptionId": "subid", + "api-version": "2021-04-15", + "databaseRid": "databaseRid", + "collectionRid": "collectionRid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "metricAvailabilities": [ + { + "timeGrain": "PT5M", + "retention": "P2D" + }, + { + "timeGrain": "PT1H", + "retention": "P14D" + }, + { + "timeGrain": "P1D", + "retention": "P60D" + } + ], + "primaryAggregationType": "Total", + "unit": "Count", + "resourceUri": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1", + "name": { + "value": "Total Requests", + "localizedValue": "Total Requests" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCollectionGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCollectionGetMetrics.json new file mode 100644 index 000000000000..83117aed238d --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCollectionGetMetrics.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "databaseRid": "databaseRid", + "collectionRid": "collectionRid", + "$filter": "$filter=(name.value eq 'Total Requests') and timeGrain eq duration'PT5M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T00:13:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Count", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-19T23:58:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:03:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:08:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + } + ], + "name": { + "value": "Total Requests", + "localizedValue": "Total Requests" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCollectionGetUsages.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCollectionGetUsages.json new file mode 100644 index 000000000000..1395ce85e6ef --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCollectionGetUsages.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "databaseRid": "databaseRid", + "collectionRid": "collectionRid", + "subscriptionId": "subid", + "$filter": "$filter=name.value eq 'Storage'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "unit": "Bytes", + "quotaPeriod": "P1D", + "limit": 10737418240, + "currentValue": 0, + "name": { + "value": "Storage", + "localizedValue": "Storage" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCollectionPartitionGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCollectionPartitionGetMetrics.json new file mode 100644 index 000000000000..2ebe002919f8 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCollectionPartitionGetMetrics.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "databaseRid": "databaseRid", + "collectionRid": "collectionRid", + "$filter": "$filter=(name.value eq 'Max RUs Per Second') and timeGrain eq duration'PT1M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T23:58:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT1M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T23:58:55.2780000Z", + "unit": "Count", + "partitionId": "00000000-0000-0000-0000-000000000000", + "partitionKeyRangeId": "0", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:54:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:55:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:56:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:57:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:58:55.2780000Z", + "maximum": 5 + } + ], + "name": { + "value": "Max RUs Per Second", + "localizedValue": "Max RUs Per Second" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCollectionPartitionGetUsages.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCollectionPartitionGetUsages.json new file mode 100644 index 000000000000..1e7dd4f4c1fc --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCollectionPartitionGetUsages.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "databaseRid": "databaseRid", + "collectionRid": "collectionRid", + "subscriptionId": "subid", + "$filter": "$filter=name.value eq 'Partition Storage'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "unit": "Bytes", + "quotaPeriod": "P1D", + "limit": 10737418240, + "currentValue": 0, + "partitionId": "00000000-0000-0000-0000-000000000000", + "partitionKeyRangeId": "0", + "name": { + "value": "Storage", + "localizedValue": "Storage" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCollectionPartitionRegionGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCollectionPartitionRegionGetMetrics.json new file mode 100644 index 000000000000..8185af8437d4 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBCollectionPartitionRegionGetMetrics.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "databaseRid": "databaseRid", + "collectionRid": "collectionRid", + "region": "North Europe", + "$filter": "$filter=(name.value eq 'Max RUs Per Second') and timeGrain eq duration'PT1M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T23:58:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT1M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T23:58:55.2780000Z", + "unit": "Count", + "partitionId": "00000000-0000-0000-0000-000000000000", + "partitionKeyRangeId": "0", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:54:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:55:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:56:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:57:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:58:55.2780000Z", + "maximum": 5 + } + ], + "name": { + "value": "Max RUs Per Second", + "localizedValue": "Max RUs Per Second" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountCheckNameExists.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountCheckNameExists.json new file mode 100644 index 000000000000..58d955ed1fc6 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountCheckNameExists.json @@ -0,0 +1,10 @@ +{ + "parameters": { + "accountName": "ddb1", + "api-version": "2021-04-15" + }, + "responses": { + "200": {}, + "404": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountCreateMax.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountCreateMax.json new file mode 100644 index 000000000000..600cac4802bc --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountCreateMax.json @@ -0,0 +1,202 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "createUpdateParameters": { + "location": "westus", + "tags": {}, + "kind": "MongoDB", + "identity": { + "type": "SystemAssigned,UserAssigned", + "userAssignedIdentities": { + "/subscriptions/fa5fc227-a624-475e-b696-cdd604c735bc/resourceGroups/eu2cgroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": {} + } + }, + "properties": { + "databaseAccountOfferType": "Standard", + "ipRules": [ + { + "ipAddressOrRange": "23.43.230.120" + }, + { + "ipAddressOrRange": "110.12.240.0/12" + } + ], + "isVirtualNetworkFilterEnabled": true, + "virtualNetworkRules": [ + { + "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "ignoreMissingVNetServiceEndpoint": false + } + ], + "publicNetworkAccess": "Enabled", + "locations": [ + { + "failoverPriority": 0, + "locationName": "southcentralus", + "isZoneRedundant": false + }, + { + "failoverPriority": 1, + "locationName": "eastus", + "isZoneRedundant": false + } + ], + "consistencyPolicy": { + "defaultConsistencyLevel": "BoundedStaleness", + "maxIntervalInSeconds": 10, + "maxStalenessPrefix": 200 + }, + "keyVaultKeyUri": "https://myKeyVault.vault.azure.net", + "defaultIdentity": "FirstPartyIdentity", + "enableFreeTier": false, + "apiProperties": { + "serverVersion": "3.2" + }, + "enableAnalyticalStorage": true, + "backupPolicy": { + "type": "Periodic", + "periodicModeProperties": { + "backupIntervalInMinutes": 240, + "backupRetentionIntervalInHours": 8 + } + }, + "cors": [ + { + "allowedOrigins": "https://test" + } + ], + "networkAclBypass": "AzureServices", + "networkAclBypassResourceIds": [ + "/subscriptions/subId/resourcegroups/rgName/providers/Microsoft.Synapse/workspaces/workspaceName" + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1", + "name": "ddb1", + "location": "West US", + "type": "Microsoft.DocumentDB/databaseAccounts", + "kind": "MongoDB", + "tags": {}, + "identity": { + "type": "SystemAssigned,UserAssigned", + "principalId": "52f4fef3-3c3f-4ff3-b52e-b5c9eeb68656", + "tenantId": "33e01921-4d64-4f8c-a055-5bdaffd5e33d", + "userAssignedIdentities": { + "/subscriptions/fa5fc227-a624-475e-b696-cdd604c735bc/resourceGroups/eu2cgroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": { + "clientId": "fbe75b66-01c5-4f87-a220-233af3270436", + "principalId": "33e01921-4d64-4f8c-a055-5bdaffd5e33d" + } + } + }, + "properties": { + "provisioningState": "Initializing", + "isVirtualNetworkFilterEnabled": true, + "databaseAccountOfferType": "Standard", + "disableKeyBasedMetadataWriteAccess": false, + "consistencyPolicy": { + "defaultConsistencyLevel": "BoundedStaleness", + "maxIntervalInSeconds": 10, + "maxStalenessPrefix": 200 + }, + "writeLocations": [ + { + "id": "ddb1-southcentralus", + "locationName": "South Central US", + "provisioningState": "Initializing", + "failoverPriority": 0, + "isZoneRedundant": false + } + ], + "readLocations": [ + { + "id": "ddb1-southcentralus", + "locationName": "South Central US", + "provisioningState": "Initializing", + "failoverPriority": 0, + "isZoneRedundant": false + }, + { + "id": "ddb1-eastus", + "locationName": "East US", + "provisioningState": "Initializing", + "failoverPriority": 1, + "isZoneRedundant": false + } + ], + "locations": [ + { + "id": "ddb1-southcentralus", + "locationName": "South Central US", + "provisioningState": "Initializing", + "failoverPriority": 0, + "isZoneRedundant": false + }, + { + "id": "ddb1-eastus", + "locationName": "East US", + "provisioningState": "Initializing", + "failoverPriority": 1, + "isZoneRedundant": false + } + ], + "failoverPolicies": [ + { + "id": "ddb1-southcentralus", + "locationName": "South Central US", + "failoverPriority": 0 + }, + { + "id": "ddb1-eastus", + "locationName": "East US", + "failoverPriority": 1 + } + ], + "virtualNetworkRules": [ + { + "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + } + ], + "publicNetworkAccess": "Enabled", + "keyVaultKeyUri": "https://myKeyVault.vault.azure.net", + "defaultIdentity": "FirstPartyIdentity", + "enableFreeTier": false, + "ipRules": [ + { + "ipAddressOrRange": "23.43.230.120" + }, + { + "ipAddressOrRange": "110.12.240.0/12" + } + ], + "apiProperties": { + "serverVersion": "3.2" + }, + "enableAnalyticalStorage": true, + "backupPolicy": { + "type": "Periodic", + "periodicModeProperties": { + "backupIntervalInMinutes": 240, + "backupRetentionIntervalInHours": 8 + } + }, + "cors": [ + { + "allowedOrigins": "https://test" + } + ], + "networkAclBypass": "AzureServices", + "networkAclBypassResourceIds": [ + "/subscriptions/subId/resourcegroups/rgName/providers/Microsoft.Synapse/workspaces/workspaceName" + ] + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountCreateMin.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountCreateMin.json new file mode 100644 index 000000000000..8793f89b44a4 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountCreateMin.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "createUpdateParameters": { + "location": "westus", + "properties": { + "databaseAccountOfferType": "Standard", + "locations": [ + { + "failoverPriority": 0, + "locationName": "southcentralus", + "isZoneRedundant": false + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1", + "name": "ddb1", + "location": "West US", + "type": "Microsoft.DocumentDB/databaseAccounts", + "kind": "GlobalDocumentDB", + "tags": {}, + "properties": { + "provisioningState": "Initializing", + "ipRules": [], + "databaseAccountOfferType": "Standard", + "disableKeyBasedMetadataWriteAccess": false, + "consistencyPolicy": { + "defaultConsistencyLevel": "Session", + "maxIntervalInSeconds": 5, + "maxStalenessPrefix": 100 + }, + "writeLocations": [ + { + "id": "ddb1-southcentralus", + "locationName": "South Central US", + "provisioningState": "Initializing", + "failoverPriority": 0, + "isZoneRedundant": false + } + ], + "readLocations": [ + { + "id": "ddb1-southcentralus", + "locationName": "South Central US", + "provisioningState": "Initializing", + "failoverPriority": 0, + "isZoneRedundant": false + } + ], + "locations": [ + { + "id": "ddb1-southcentralus", + "locationName": "South Central US", + "provisioningState": "Initializing", + "failoverPriority": 0, + "isZoneRedundant": false + } + ], + "failoverPolicies": [ + { + "id": "ddb1-southcentralus", + "locationName": "South Central US", + "failoverPriority": 0 + } + ], + "cors": [], + "enableFreeTier": false, + "apiProperties": {}, + "enableAnalyticalStorage": false, + "networkAclBypass": "None", + "networkAclBypassResourceIds": [] + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountDelete.json new file mode 100644 index 000000000000..57efbd99c56d --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountFailoverPriorityChange.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountFailoverPriorityChange.json new file mode 100644 index 000000000000..a07ee8fd9ab9 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountFailoverPriorityChange.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "accountName": "ddb1-failover", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "failoverParameters": { + "failoverPolicies": [ + { + "locationName": "eastus", + "failoverPriority": 0 + }, + { + "locationName": "westus", + "failoverPriority": 1 + } + ] + } + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountGet.json new file mode 100644 index 000000000000..a27da83aacd4 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountGet.json @@ -0,0 +1,107 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1", + "name": "ddb1", + "location": "West US", + "type": "Microsoft.DocumentDB/databaseAccounts", + "kind": "GlobalDocumentDB", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "documentEndpoint": "https://ddb1.documents.azure.com:443/", + "ipRules": [], + "isVirtualNetworkFilterEnabled": false, + "virtualNetworkRules": [], + "databaseAccountOfferType": "Standard", + "disableKeyBasedMetadataWriteAccess": false, + "defaultIdentity": "FirstPartyIdentity", + "consistencyPolicy": { + "defaultConsistencyLevel": "Session", + "maxIntervalInSeconds": 5, + "maxStalenessPrefix": 100 + }, + "writeLocations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "readLocations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "locations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "failoverPolicies": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "failoverPriority": 0 + } + ], + "privateEndpointConnections": [ + { + "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.DocumentDB/databaseAccounts/account1/privateEndpointConnections/pe1", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.Network/privateEndpoints/pe1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "actionsRequired": "None" + } + } + } + ], + "cors": [], + "enableFreeTier": false, + "apiProperties": {}, + "enableAnalyticalStorage": true, + "backupPolicy": { + "type": "Periodic", + "periodicModeProperties": { + "backupIntervalInMinutes": 240, + "backupRetentionIntervalInHours": 8 + } + }, + "networkAclBypass": "None", + "networkAclBypassResourceIds": [] + }, + "identity": { + "type": "SystemAssigned,UserAssigned", + "principalId": "52f4fef3-3c3f-4ff3-b52e-b5c9eeb68656", + "tenantId": "33e01921-4d64-4f8c-a055-5bdaffd5e33d", + "userAssignedIdentities": { + "/subscriptions/fa5fc227-a624-475e-b696-cdd604c735bc/resourceGroups/eu2cgroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": { + "clientId": "fbe75b66-01c5-4f87-a220-233af3270436", + "principalId": "33e01921-4d64-4f8c-a055-5bdaffd5e33d" + } + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountGetMetricDefinitions.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountGetMetricDefinitions.json new file mode 100644 index 000000000000..909b49db2e5f --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountGetMetricDefinitions.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "subscriptionId": "subid", + "api-version": "2021-04-15" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "metricAvailabilities": [ + { + "timeGrain": "PT5M", + "retention": "P2D" + }, + { + "timeGrain": "PT1H", + "retention": "P14D" + }, + { + "timeGrain": "P1D", + "retention": "P60D" + } + ], + "primaryAggregationType": "Total", + "unit": "Count", + "resourceUri": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1", + "name": { + "value": "Total Requests", + "localizedValue": "Total Requests" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountGetMetrics.json new file mode 100644 index 000000000000..3e25155b3894 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountGetMetrics.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "$filter": "$filter=(name.value eq 'Total Requests') and timeGrain eq duration'PT5M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T00:13:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Count", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-19T23:58:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:03:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:08:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + } + ], + "name": { + "value": "Total Requests", + "localizedValue": "Total Requests" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountGetUsages.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountGetUsages.json new file mode 100644 index 000000000000..c3af287e3320 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountGetUsages.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "$filter": "$filter=name.value eq 'Storage'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "unit": "Bytes", + "quotaPeriod": "P1D", + "limit": 10737418240, + "currentValue": 0, + "name": { + "value": "Storage", + "localizedValue": "Storage" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountList.json new file mode 100644 index 000000000000..28917d4acd9c --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountList.json @@ -0,0 +1,100 @@ +{ + "parameters": { + "api-version": "2021-04-15", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1", + "name": "ddb1", + "location": "West US", + "type": "Microsoft.DocumentDB/databaseAccounts", + "kind": "GlobalDocumentDB", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "documentEndpoint": "https://ddb1.documents.azure.com:443/", + "ipRules": [], + "databaseAccountOfferType": "Standard", + "disableKeyBasedMetadataWriteAccess": false, + "consistencyPolicy": { + "defaultConsistencyLevel": "Session", + "maxIntervalInSeconds": 5, + "maxStalenessPrefix": 100 + }, + "writeLocations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "readLocations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "locations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "failoverPolicies": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "failoverPriority": 0 + } + ], + "privateEndpointConnections": [ + { + "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.DocumentDB/databaseAccounts/account1/privateEndpointConnections/pe1", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.Network/privateEndpoints/pe1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "actionsRequired": "None" + } + } + } + ], + "cors": [], + "defaultIdentity": "FirstPartyIdentity", + "enableFreeTier": false, + "apiProperties": {}, + "enableAnalyticalStorage": true, + "networkAclBypass": "None", + "networkAclBypassResourceIds": [] + }, + "identity": { + "type": "SystemAssigned,UserAssigned", + "principalId": "52f4fef3-3c3f-4ff3-b52e-b5c9eeb68656", + "tenantId": "33e01921-4d64-4f8c-a055-5bdaffd5e33d", + "userAssignedIdentities": { + "/subscriptions/fa5fc227-a624-475e-b696-cdd604c735bc/resourceGroups/eu2cgroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": { + "clientId": "fbe75b66-01c5-4f87-a220-233af3270436", + "principalId": "33e01921-4d64-4f8c-a055-5bdaffd5e33d" + } + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountListByResourceGroup.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountListByResourceGroup.json new file mode 100644 index 000000000000..6749797d5d9c --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountListByResourceGroup.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "api-version": "2021-04-15", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1", + "name": "ddb1", + "location": "West US", + "type": "Microsoft.DocumentDB/databaseAccounts", + "kind": "GlobalDocumentDB", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "documentEndpoint": "https://ddb1.documents.azure.com:443/", + "ipRules": [], + "databaseAccountOfferType": "Standard", + "disableKeyBasedMetadataWriteAccess": false, + "consistencyPolicy": { + "defaultConsistencyLevel": "Session", + "maxIntervalInSeconds": 5, + "maxStalenessPrefix": 100 + }, + "writeLocations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "readLocations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "locations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "failoverPolicies": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "failoverPriority": 0 + } + ], + "cors": [], + "enableFreeTier": false, + "defaultIdentity": "FirstPartyIdentity", + "networkAclBypass": "None", + "networkAclBypassResourceIds": [] + }, + "identity": { + "type": "SystemAssigned,UserAssigned", + "principalId": "52f4fef3-3c3f-4ff3-b52e-b5c9eeb68656", + "tenantId": "33e01921-4d64-4f8c-a055-5bdaffd5e33d", + "userAssignedIdentities": { + "/subscriptions/fa5fc227-a624-475e-b696-cdd604c735bc/resourceGroups/eu2cgroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": { + "clientId": "fbe75b66-01c5-4f87-a220-233af3270436", + "principalId": "33e01921-4d64-4f8c-a055-5bdaffd5e33d" + } + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountListConnectionStrings.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountListConnectionStrings.json new file mode 100644 index 000000000000..03f80b4df541 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountListConnectionStrings.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": {} + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountListConnectionStringsMongo.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountListConnectionStringsMongo.json new file mode 100644 index 000000000000..f237e02cac82 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountListConnectionStringsMongo.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "accountName": "mongo-ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "connectionStrings": [ + { + "connectionString": "connection-string", + "description": "Name of the connection string" + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountListKeys.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountListKeys.json new file mode 100644 index 000000000000..be887e3e1fcf --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountListKeys.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "primaryMasterKey": "primaryMasterKey", + "secondaryMasterKey": "secondaryMasterKey", + "primaryReadonlyMasterKey": "primaryReadonlyMasterKey", + "secondaryReadonlyMasterKey": "secondaryReadonlyMasterKey" + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountListReadOnlyKeys.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountListReadOnlyKeys.json new file mode 100644 index 000000000000..9fb09d981029 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountListReadOnlyKeys.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "primaryReadonlyMasterKey": "primaryReadonlyMasterKey", + "secondaryReadonlyMasterKey": "secondaryReadonlyMasterKey" + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountOfflineRegion.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountOfflineRegion.json new file mode 100644 index 000000000000..77c958f8bef7 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountOfflineRegion.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "region": "North Europe", + "regionParameterForOffline": [ + { + "region": "North Europe" + } + ] + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountOnlineRegion.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountOnlineRegion.json new file mode 100644 index 000000000000..46ec032d0a89 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountOnlineRegion.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "region": "North Europe", + "regionParameterForOnline": [ + { + "region": "North Europe" + } + ] + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountPatch.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountPatch.json new file mode 100644 index 000000000000..58fab46f9777 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountPatch.json @@ -0,0 +1,171 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "updateParameters": { + "location": "westus", + "tags": { + "dept": "finance" + }, + "identity": { + "type": "SystemAssigned,UserAssigned", + "userAssignedIdentities": { + "/subscriptions/fa5fc227-a624-475e-b696-cdd604c735bc/resourceGroups/eu2cgroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": {} + } + }, + "properties": { + "ipRules": [ + { + "ipAddressOrRange": "23.43.230.120" + }, + { + "ipAddressOrRange": "110.12.240.0/12" + } + ], + "isVirtualNetworkFilterEnabled": true, + "virtualNetworkRules": [ + { + "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "ignoreMissingVNetServiceEndpoint": false + } + ], + "consistencyPolicy": { + "defaultConsistencyLevel": "BoundedStaleness", + "maxIntervalInSeconds": 10, + "maxStalenessPrefix": 200 + }, + "defaultIdentity": "FirstPartyIdentity", + "enableFreeTier": false, + "enableAnalyticalStorage": true, + "backupPolicy": { + "type": "Periodic", + "periodicModeProperties": { + "backupIntervalInMinutes": 240, + "backupRetentionIntervalInHours": 720 + } + }, + "networkAclBypass": "AzureServices", + "networkAclBypassResourceIds": [ + "/subscriptions/subId/resourcegroups/rgName/providers/Microsoft.Synapse/workspaces/workspaceName" + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1", + "name": "ddb1", + "location": "West US", + "type": "Microsoft.DocumentDB/databaseAccounts", + "kind": "GlobalDocumentDB", + "tags": { + "dept": "finance" + }, + "identity": { + "type": "SystemAssigned,UserAssigned", + "principalId": "52f4fef3-3c3f-4ff3-b52e-b5c9eeb68656", + "tenantId": "33e01921-4d64-4f8c-a055-5bdaffd5e33d", + "userAssignedIdentities": { + "/subscriptions/fa5fc227-a624-475e-b696-cdd604c735bc/resourceGroups/eu2cgroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": { + "clientId": "fbe75b66-01c5-4f87-a220-233af3270436", + "principalId": "33e01921-4d64-4f8c-a055-5bdaffd5e33d" + } + } + }, + "properties": { + "provisioningState": "Succeeded", + "documentEndpoint": "https://ddb1.documents.azure.com:443/", + "databaseAccountOfferType": "Standard", + "ipRules": [ + { + "ipAddressOrRange": "23.43.230.120" + }, + { + "ipAddressOrRange": "110.12.240.0/12" + } + ], + "isVirtualNetworkFilterEnabled": true, + "disableKeyBasedMetadataWriteAccess": false, + "consistencyPolicy": { + "defaultConsistencyLevel": "BoundedStaleness", + "maxIntervalInSeconds": 10, + "maxStalenessPrefix": 200 + }, + "writeLocations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "readLocations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "locations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "failoverPolicies": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "failoverPriority": 0 + } + ], + "virtualNetworkRules": [ + { + "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "ignoreMissingVNetServiceEndpoint": false + } + ], + "privateEndpointConnections": [ + { + "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.DocumentDB/databaseAccounts/account1/privateEndpointConnections/pe1", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.Network/privateEndpoints/pe1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "actionsRequired": "None" + } + } + } + ], + "cors": [], + "defaultIdentity": "FirstPartyIdentity", + "enableFreeTier": false, + "apiProperties": {}, + "enableAnalyticalStorage": true, + "backupPolicy": { + "type": "Periodic", + "periodicModeProperties": { + "backupIntervalInMinutes": 240, + "backupRetentionIntervalInHours": 720 + } + }, + "networkAclBypass": "AzureServices", + "networkAclBypassResourceIds": [ + "/subscriptions/subId/resourcegroups/rgName/providers/Microsoft.Synapse/workspaces/workspaceName" + ] + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountRegenerateKey.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountRegenerateKey.json new file mode 100644 index 000000000000..f235ddc57cd3 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountRegenerateKey.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "keyToRegenerate": { + "keyKind": "primary" + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountRegionGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountRegionGetMetrics.json new file mode 100644 index 000000000000..774f6dfc4cf6 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseAccountRegionGetMetrics.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "region": "North Europe", + "$filter": "$filter=(name.value eq 'Total Requests') and timeGrain eq duration'PT5M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T00:13:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Count", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-19T23:58:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:03:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:08:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + } + ], + "name": { + "value": "Total Requests", + "localizedValue": "Total Requests" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseGetMetricDefinitions.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseGetMetricDefinitions.json new file mode 100644 index 000000000000..f9cabfa35f7d --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseGetMetricDefinitions.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "subscriptionId": "subid", + "api-version": "2021-04-15", + "databaseRid": "databaseRid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "metricAvailabilities": [ + { + "timeGrain": "PT5M", + "retention": "P2D" + }, + { + "timeGrain": "PT1H", + "retention": "P14D" + }, + { + "timeGrain": "P1D", + "retention": "P60D" + } + ], + "primaryAggregationType": "Total", + "unit": "Count", + "resourceUri": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1", + "name": { + "value": "Total Requests", + "localizedValue": "Total Requests" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseGetMetrics.json new file mode 100644 index 000000000000..d4f08b2217bb --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseGetMetrics.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "databaseRid": "rid", + "$filter": "$filter=(name.value eq 'Total Requests') and timeGrain eq duration'PT5M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T00:13:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Count", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-19T23:58:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:03:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:08:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + } + ], + "name": { + "value": "Total Requests", + "localizedValue": "Total Requests" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseGetUsages.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseGetUsages.json new file mode 100644 index 000000000000..0b9e1db08704 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBDatabaseGetUsages.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "databaseRid": "databaseRid", + "subscriptionId": "subid", + "$filter": "$filter=name.value eq 'Storage'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "unit": "Bytes", + "quotaPeriod": "P1D", + "limit": 10737418240, + "currentValue": 0, + "name": { + "value": "Storage", + "localizedValue": "Storage" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBGremlinDatabaseCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBGremlinDatabaseCreateUpdate.json new file mode 100644 index 000000000000..70cac9faa0e9 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBGremlinDatabaseCreateUpdate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "createUpdateGremlinDatabaseParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName" + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/gremlinDatabases/databaseName", + "name": "databaseName", + "type": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName", + "_rid": "CqNBAA==", + "_ts": 1449602962, + "_etag": "\"00000a00-0000-0000-0000-56672f920000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBGremlinDatabaseDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBGremlinDatabaseDelete.json new file mode 100644 index 000000000000..178bb0d4d662 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBGremlinDatabaseDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBGremlinDatabaseGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBGremlinDatabaseGet.json new file mode 100644 index 000000000000..ced908739e75 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBGremlinDatabaseGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/gremlinDatabases/databaseName", + "name": "databaseName", + "type": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName", + "_rid": "CqNBAA==", + "_ts": 1449602962, + "_etag": "\"00000a00-0000-0000-0000-56672f920000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBGremlinDatabaseList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBGremlinDatabaseList.json new file mode 100644 index 000000000000..9d04b9f67ad3 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBGremlinDatabaseList.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2021-04-15", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/gremlinDatabases/databaseName", + "name": "databaseName", + "type": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName", + "_rid": "CqNBAA==", + "_ts": 1449602962, + "_etag": "\"00000a00-0000-0000-0000-56672f920000\"" + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBGremlinDatabaseMigrateToAutoscale.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBGremlinDatabaseMigrateToAutoscale.json new file mode 100644 index 000000000000..2bef3153f322 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBGremlinDatabaseMigrateToAutoscale.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "autoscaleSettings": { + "maxThroughput": 4000 + }, + "minimumThroughput": "4000", + "offerReplacePending": "false", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBGremlinDatabaseMigrateToManualThroughput.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBGremlinDatabaseMigrateToManualThroughput.json new file mode 100644 index 000000000000..874e1dd01100 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBGremlinDatabaseMigrateToManualThroughput.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBGremlinDatabaseThroughputGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBGremlinDatabaseThroughputGet.json new file mode 100644 index 000000000000..5c89e2567d79 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBGremlinDatabaseThroughputGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/gremlinDatabases/databaseName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBGremlinDatabaseThroughputUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBGremlinDatabaseThroughputUpdate.json new file mode 100644 index 000000000000..e3e0f5debc3f --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBGremlinDatabaseThroughputUpdate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "updateThroughputParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/gremlinDatabases/databaseName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBGremlinGraphCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBGremlinGraphCreateUpdate.json new file mode 100644 index 000000000000..135d992c4b55 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBGremlinGraphCreateUpdate.json @@ -0,0 +1,124 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "graphName": "graphName", + "createUpdateGremlinGraphParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "graphName", + "indexingPolicy": { + "indexingMode": "consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/AccountNumber" + ], + "kind": "Hash" + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + } + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/gremlinDatabases/databaseName/gremlinGraphs/graphName", + "name": "graphName", + "type": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases/gremlinGraphs", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "graphName", + "indexingPolicy": { + "indexingMode": "consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/AccountNumber" + ], + "kind": "Hash" + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + }, + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBGremlinGraphDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBGremlinGraphDelete.json new file mode 100644 index 000000000000..fa9ec50dde56 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBGremlinGraphDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "graphName": "graphName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBGremlinGraphGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBGremlinGraphGet.json new file mode 100644 index 000000000000..a7b9cfeffb20 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBGremlinGraphGet.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2021-04-15", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName", + "graphName": "graphName" + }, + "responses": { + "200": { + "body": { + "id": "graphName", + "name": "graphName", + "type": "Microsoft.DocumentDB/databaseAccounts/apis/databases/graphs", + "properties": { + "resource": { + "id": "graphName", + "indexingPolicy": { + "indexingMode": "consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/AccountNumber" + ], + "kind": "Hash" + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + }, + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBGremlinGraphList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBGremlinGraphList.json new file mode 100644 index 000000000000..46668c6d53e3 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBGremlinGraphList.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "api-version": "2021-04-15", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "testgrf", + "name": "testgrf", + "type": "Microsoft.DocumentDB/databaseAccounts/apis/databases/graphs", + "properties": { + "resource": { + "id": "testgrf", + "indexingPolicy": { + "indexingMode": "consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/AccountNumber" + ], + "kind": "Hash" + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + }, + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBGremlinGraphMigrateToAutoscale.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBGremlinGraphMigrateToAutoscale.json new file mode 100644 index 000000000000..f3706ad7125b --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBGremlinGraphMigrateToAutoscale.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "graphName": "graphName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "autoscaleSettings": { + "maxThroughput": 4000 + }, + "minimumThroughput": "4000", + "offerReplacePending": "false", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBGremlinGraphMigrateToManualThroughput.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBGremlinGraphMigrateToManualThroughput.json new file mode 100644 index 000000000000..789a6a4f28f5 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBGremlinGraphMigrateToManualThroughput.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "graphName": "graphName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBGremlinGraphThroughputGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBGremlinGraphThroughputGet.json new file mode 100644 index 000000000000..80e41ac97ba1 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBGremlinGraphThroughputGet.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "graphName": "graphName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/gremlinDatabases/databaseName/gremlinGraphs/graphName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBGremlinGraphThroughputUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBGremlinGraphThroughputUpdate.json new file mode 100644 index 000000000000..706abbdbb4a3 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBGremlinGraphThroughputUpdate.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "graphName": "graphName", + "updateThroughputParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/gremlinDatabases/databaseName/gremlinGraphs/graphName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBMongoDBCollectionCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBMongoDBCollectionCreateUpdate.json new file mode 100644 index 000000000000..40589692be7e --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBMongoDBCollectionCreateUpdate.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "collectionName": "collectionName", + "createUpdateMongoDBCollectionParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "collectionName", + "indexes": [ + { + "key": { + "keys": [ + "testKey" + ] + }, + "options": { + "expireAfterSeconds": 100, + "unique": true + } + } + ], + "shardKey": { + "testKey": "Hash" + } + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName/mongodbCollections/collectionName", + "name": "collectionName", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/mongodbCollections", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "collectionName", + "indexes": [ + { + "key": { + "keys": [ + "testKey" + ] + }, + "options": { + "expireAfterSeconds": 100, + "unique": true + } + } + ], + "shardKey": { + "testKey": "Hash" + } + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBMongoDBCollectionDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBMongoDBCollectionDelete.json new file mode 100644 index 000000000000..4c945f63e3ce --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBMongoDBCollectionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "collectionName": "collectionName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBMongoDBCollectionGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBMongoDBCollectionGet.json new file mode 100644 index 000000000000..bd22fbd6ef00 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBMongoDBCollectionGet.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2021-04-15", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName", + "collectionName": "collectionName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName/mongodbCollections/collectionName", + "name": "collectionName", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/mongodbCollections", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "testcoll", + "indexes": [ + { + "key": { + "keys": [ + "testKey" + ] + }, + "options": { + "expireAfterSeconds": 100, + "unique": true + } + } + ], + "shardKey": { + "testKey": "Hash" + }, + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBMongoDBCollectionList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBMongoDBCollectionList.json new file mode 100644 index 000000000000..61eb215b323b --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBMongoDBCollectionList.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2021-04-15", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName/mongodbCollections/collectionName", + "name": "collectionName", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/mongodbCollections", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "testcoll", + "indexes": [ + { + "key": { + "keys": [ + "testKey" + ] + }, + "options": { + "expireAfterSeconds": 100, + "unique": true + } + } + ], + "shardKey": { + "testKey": "Hash" + } + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBMongoDBCollectionMigrateToAutoscale.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBMongoDBCollectionMigrateToAutoscale.json new file mode 100644 index 000000000000..0b52d6088821 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBMongoDBCollectionMigrateToAutoscale.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "collectionName": "collectionName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "autoscaleSettings": { + "maxThroughput": 4000 + }, + "minimumThroughput": "4000", + "offerReplacePending": "false", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBMongoDBCollectionMigrateToManualThroughput.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBMongoDBCollectionMigrateToManualThroughput.json new file mode 100644 index 000000000000..ededbb88b4b9 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBMongoDBCollectionMigrateToManualThroughput.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "collectionName": "collectionName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBMongoDBCollectionThroughputGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBMongoDBCollectionThroughputGet.json new file mode 100644 index 000000000000..feb44d1dcc3f --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBMongoDBCollectionThroughputGet.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "collectionName": "collectionName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName/mongodbCollections/collectionName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/mongodbCollections/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBMongoDBCollectionThroughputUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBMongoDBCollectionThroughputUpdate.json new file mode 100644 index 000000000000..15c4241669a1 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBMongoDBCollectionThroughputUpdate.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "collectionName": "collectionName", + "updateThroughputParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName/mongodbCollections/collectionName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/mongodbCollections/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBMongoDBDatabaseCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBMongoDBDatabaseCreateUpdate.json new file mode 100644 index 000000000000..965f62701b3b --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBMongoDBDatabaseCreateUpdate.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "createUpdateMongoDBDatabaseParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName" + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName", + "name": "databaseName", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "updatedDatabaseName" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBMongoDBDatabaseDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBMongoDBDatabaseDelete.json new file mode 100644 index 000000000000..178bb0d4d662 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBMongoDBDatabaseDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBMongoDBDatabaseGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBMongoDBDatabaseGet.json new file mode 100644 index 000000000000..d6edcb6c5ea5 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBMongoDBDatabaseGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName", + "name": "databaseName", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBMongoDBDatabaseList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBMongoDBDatabaseList.json new file mode 100644 index 000000000000..4ae2f2132ede --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBMongoDBDatabaseList.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2021-04-15", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName", + "name": "databaseName", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName" + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBMongoDBDatabaseMigrateToAutoscale.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBMongoDBDatabaseMigrateToAutoscale.json new file mode 100644 index 000000000000..2bef3153f322 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBMongoDBDatabaseMigrateToAutoscale.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "autoscaleSettings": { + "maxThroughput": 4000 + }, + "minimumThroughput": "4000", + "offerReplacePending": "false", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBMongoDBDatabaseMigrateToManualThroughput.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBMongoDBDatabaseMigrateToManualThroughput.json new file mode 100644 index 000000000000..874e1dd01100 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBMongoDBDatabaseMigrateToManualThroughput.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBMongoDBDatabaseThroughputGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBMongoDBDatabaseThroughputGet.json new file mode 100644 index 000000000000..953125cb2c69 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBMongoDBDatabaseThroughputGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBMongoDBDatabaseThroughputUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBMongoDBDatabaseThroughputUpdate.json new file mode 100644 index 000000000000..dd93b64336b8 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBMongoDBDatabaseThroughputUpdate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "updateThroughputParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBNotebookWorkspaceCreate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBNotebookWorkspaceCreate.json new file mode 100644 index 000000000000..8e21b210a18f --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBNotebookWorkspaceCreate.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2021-04-15", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "accountName": "ddb1", + "notebookWorkspaceName": "default", + "notebookCreateUpdateParameters": {} + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/notebookWorkspaces/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/notebookWorkspaces", + "properties": { + "notebookServerEndpoint": "endpoint", + "status": "Online" + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBNotebookWorkspaceDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBNotebookWorkspaceDelete.json new file mode 100644 index 000000000000..69e3e8c59264 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBNotebookWorkspaceDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "notebookWorkspaceName": "default" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBNotebookWorkspaceGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBNotebookWorkspaceGet.json new file mode 100644 index 000000000000..318ae51fab5c --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBNotebookWorkspaceGet.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2021-04-15", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "accountName": "ddb1", + "notebookWorkspaceName": "default" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/notebookWorkspaces/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/notebookWorkspaces", + "properties": { + "notebookServerEndpoint": "endpoint", + "status": "Online" + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBNotebookWorkspaceList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBNotebookWorkspaceList.json new file mode 100644 index 000000000000..5ccc7d815dd3 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBNotebookWorkspaceList.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2021-04-15", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "accountName": "ddb1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/notebookWorkspaces/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/notebookWorkspaces", + "properties": { + "notebookServerEndpoint": "endpoint", + "status": "Online" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBNotebookWorkspaceListConnectionInfo.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBNotebookWorkspaceListConnectionInfo.json new file mode 100644 index 000000000000..7eecf054d040 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBNotebookWorkspaceListConnectionInfo.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2021-04-15", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "accountName": "ddb1", + "notebookWorkspaceName": "default" + }, + "responses": { + "200": { + "body": { + "authToken": "auth-token", + "notebookServerEndpoint": "notebook endpoint" + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBNotebookWorkspaceRegenerateAuthToken.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBNotebookWorkspaceRegenerateAuthToken.json new file mode 100644 index 000000000000..302705062228 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBNotebookWorkspaceRegenerateAuthToken.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-04-15", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "accountName": "ddb1", + "notebookWorkspaceName": "default" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBNotebookWorkspaceStart.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBNotebookWorkspaceStart.json new file mode 100644 index 000000000000..302705062228 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBNotebookWorkspaceStart.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-04-15", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "accountName": "ddb1", + "notebookWorkspaceName": "default" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBOperationsList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBOperationsList.json new file mode 100644 index 000000000000..a87db4c3420d --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBOperationsList.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2021-04-15" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "operationName", + "display": { + "Provider": "providerName", + "Resource": "resourceName", + "Operation": "operationName", + "Description": "description" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBPKeyRangeIdGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBPKeyRangeIdGetMetrics.json new file mode 100644 index 000000000000..ade3e0d2c7fe --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBPKeyRangeIdGetMetrics.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "databaseRid": "databaseRid", + "collectionRid": "collectionRid", + "partitionKeyRangeId": "0", + "$filter": "$filter=(name.value eq 'Max RUs Per Second') and timeGrain eq duration'PT1M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T23:58:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT1M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T23:58:55.2780000Z", + "unit": "Count", + "partitionId": "00000000-0000-0000-0000-000000000000", + "partitionKeyRangeId": "0", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:54:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:55:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:56:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:57:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:58:55.2780000Z", + "maximum": 5 + } + ], + "name": { + "value": "Max RUs Per Second", + "localizedValue": "Max RUs Per Second" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBPKeyRangeIdRegionGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBPKeyRangeIdRegionGetMetrics.json new file mode 100644 index 000000000000..6162fafe3509 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBPKeyRangeIdRegionGetMetrics.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "databaseRid": "databaseRid", + "collectionRid": "collectionRid", + "partitionKeyRangeId": "0", + "region": "West US", + "$filter": "$filter=(name.value eq 'Max RUs Per Second') and timeGrain eq duration'PT1M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T23:58:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT1M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T23:58:55.2780000Z", + "unit": "Count", + "partitionId": "00000000-0000-0000-0000-000000000000", + "partitionKeyRangeId": "0", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:54:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:55:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:56:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:57:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:58:55.2780000Z", + "maximum": 5 + } + ], + "name": { + "value": "Max RUs Per Second", + "localizedValue": "Max RUs Per Second" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBPercentileGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBPercentileGetMetrics.json new file mode 100644 index 000000000000..4e4f19b9b932 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBPercentileGetMetrics.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "$filter": "$filter=(name.value eq 'Probabilistic Bounded Staleness') and timeGrain eq duration'PT5M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T00:13:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Milliseconds", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "P10": 1.11, + "P25": 2.5, + "P50": 4.34, + "P75": 5.2, + "P90": 6.77, + "P95": 7.1, + "P99": 8.3 + } + ], + "name": { + "value": "Probabilistic Bounded Staleness-S-West Central US-T-East US", + "localizedValue": "Probabilistic Bounded Staleness-S-West Central US-T-East US" + } + }, + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Milliseconds", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "P10": 1.11, + "P25": 2.5, + "P50": 4.34, + "P75": 5.2, + "P90": 6.77, + "P95": 7.1, + "P99": 8.3 + } + ], + "name": { + "value": "Probabilistic Bounded Staleness-S-West Central US-T-West US", + "localizedValue": "Probabilistic Bounded Staleness-S-West Central US-T-West US" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBPercentileSourceTargetGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBPercentileSourceTargetGetMetrics.json new file mode 100644 index 000000000000..f48436391683 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBPercentileSourceTargetGetMetrics.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "sourceRegion": "West Central US", + "targetRegion": "East US", + "$filter": "$filter=(name.value eq 'Probabilistic Bounded Staleness') and timeGrain eq duration'PT5M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T00:13:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Milliseconds", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "P10": 1.11, + "P25": 2.5, + "P50": 4.34, + "P75": 5.2, + "P90": 6.77, + "P95": 7.1, + "P99": 8.3 + } + ], + "name": { + "value": "Probabilistic Bounded Staleness-S-West Central US-T-East US", + "localizedValue": "Probabilistic Bounded Staleness-S-West Central US-T-East US" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBPercentileTargetGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBPercentileTargetGetMetrics.json new file mode 100644 index 000000000000..7be194dcd010 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBPercentileTargetGetMetrics.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "targetRegion": "East US", + "$filter": "$filter=(name.value eq 'Probabilistic Bounded Staleness') and timeGrain eq duration'PT5M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T00:13:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Milliseconds", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "P10": 1.11, + "P25": 2.5, + "P50": 4.34, + "P75": 5.2, + "P90": 6.77, + "P95": 7.1, + "P99": 8.3 + } + ], + "name": { + "value": "Probabilistic Bounded Staleness-S-West Central US-T-East US", + "localizedValue": "Probabilistic Bounded Staleness-S-West Central US-T-East US" + } + }, + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Milliseconds", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "P10": 1.11, + "P25": 2.5, + "P50": 4.34, + "P75": 5.2, + "P90": 6.77, + "P95": 7.1, + "P99": 8.3 + } + ], + "name": { + "value": "Probabilistic Bounded Staleness-S-West US-T-East US", + "localizedValue": "Probabilistic Bounded Staleness-S-West Central US-T-West US" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBPrivateEndpointConnectionDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBPrivateEndpointConnectionDelete.json new file mode 100644 index 000000000000..bb6001be5850 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBPrivateEndpointConnectionDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg1", + "accountName": "ddb1", + "api-version": "2021-04-15", + "privateEndpointConnectionName": "privateEndpointConnectionName" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBPrivateEndpointConnectionGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBPrivateEndpointConnectionGet.json new file mode 100644 index 000000000000..aece45c0cdfc --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBPrivateEndpointConnectionGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg1", + "accountName": "ddb1", + "api-version": "2021-04-15", + "privateEndpointConnectionName": "privateEndpointConnectionName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg1/providers/Microsoft.DocumentDb/databaseAccounts/ddb1/privateEndpointConnections/privateEndpointConnectionName", + "name": "privateEndpointConnectionName", + "type": "Microsoft.DocumentDb/databaseAccounts/privateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg1Network/providers/Microsoft.Network/privateEndpoints/privateEndpointName" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + }, + "groupId": "Sql", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBPrivateEndpointConnectionListGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBPrivateEndpointConnectionListGet.json new file mode 100644 index 000000000000..640d35899036 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBPrivateEndpointConnectionListGet.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg1", + "accountName": "ddb1", + "api-version": "2021-04-15" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDb/databaseAccounts/ddb1/privateEndpointConnections/privateEndpointConnectionName", + "name": "privateEndpointConnectionName", + "type": "Microsoft.DocumentDb/databaseAccounts/privateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg1Network/providers/Microsoft.Network/privateEndpoints/privateEndpointName" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + }, + "groupId": "Sql", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDb/databaseAccounts/ddb1/privateEndpointConnections/privateEndpointConnectionName2", + "name": "privateEndpointConnectionName", + "type": "Microsoft.DocumentDb/databaseAccounts/privateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg1Network/providers/Microsoft.Network/privateEndpoints/privateEndpointName2" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + }, + "groupId": "Sql", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBPrivateEndpointConnectionUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBPrivateEndpointConnectionUpdate.json new file mode 100644 index 000000000000..38874d7711eb --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBPrivateEndpointConnectionUpdate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg1", + "accountName": "ddb1", + "api-version": "2021-04-15", + "privateEndpointConnectionName": "privateEndpointConnectionName", + "parameters": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@contoso.com" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg1/providers/Microsoft.DocumentDb/databaseAccounts/ddb1/privateEndpointConnections/privateEndpointConnectionName", + "name": "privateEndpointConnectionName", + "type": "Microsoft.DocumentDb/databaseAccounts/privateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg1Network/providers/Microsoft.Network/privateEndpoints/privateEndpointName" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + }, + "groupId": "Sql", + "provisioningState": "Succeeded" + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBPrivateLinkResourceGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBPrivateLinkResourceGet.json new file mode 100644 index 000000000000..da2bcb8a9c21 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBPrivateLinkResourceGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg1", + "accountName": "ddb1", + "api-version": "2021-04-15", + "groupName": "sql" + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.DocumentDb/databaseAccounts/ddb1/privateLinkResources/sql", + "name": "sql", + "type": "Microsoft.DocumentDB/databaseAccounts/privateLinkResources", + "properties": { + "groupId": "sql", + "requiredMembers": [ + "ddb1", + "ddb1-westus" + ], + "requiredZoneNames": [ + "privatelink.documents.azure.net" + ] + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBPrivateLinkResourceListGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBPrivateLinkResourceListGet.json new file mode 100644 index 000000000000..ffcab6221725 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBPrivateLinkResourceListGet.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg1", + "accountName": "ddb1", + "api-version": "2021-04-15" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.DocumentDb/databaseAccounts/ddb1/privateLinkResources/sql", + "name": "sql", + "type": "Microsoft.DocumentDB/databaseAccounts/privateLinkResources", + "properties": { + "groupId": "sql", + "requiredMembers": [ + "ddb1", + "ddb1-westus" + ], + "requiredZoneNames": [ + "privatelink.documents.azure.net" + ] + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBRegionCollectionGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBRegionCollectionGetMetrics.json new file mode 100644 index 000000000000..63e6179c888a --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBRegionCollectionGetMetrics.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "databaseRid": "databaseRid", + "collectionRid": "collectionRid", + "region": "North Europe", + "$filter": "$filter=(name.value eq 'Total Requests') and timeGrain eq duration'PT5M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T00:13:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Count", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-19T23:58:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:03:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:08:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + } + ], + "name": { + "value": "Total Requests", + "localizedValue": "Total Requests" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlContainerCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlContainerCreateUpdate.json new file mode 100644 index 000000000000..9c4a351a2e94 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlContainerCreateUpdate.json @@ -0,0 +1,124 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName", + "createUpdateSqlContainerParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "containerName", + "indexingPolicy": { + "indexingMode": "consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/AccountNumber" + ], + "kind": "Hash" + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + } + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName", + "name": "containerName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "containerName", + "indexingPolicy": { + "indexingMode": "consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/AccountNumber" + ], + "kind": "Hash" + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + }, + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlContainerDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlContainerDelete.json new file mode 100644 index 000000000000..4fde1b96891e --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlContainerDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlContainerGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlContainerGet.json new file mode 100644 index 000000000000..a793e7c45da1 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlContainerGet.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "api-version": "2021-04-15", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName", + "containerName": "containerName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName", + "name": "containerName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "containerName", + "indexingPolicy": { + "indexingMode": "consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/AccountNumber" + ], + "kind": "Hash" + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + }, + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + }, + "options": { + "throughput": 400 + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlContainerList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlContainerList.json new file mode 100644 index 000000000000..e9835d097f17 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlContainerList.json @@ -0,0 +1,192 @@ +{ + "parameters": { + "api-version": "2021-04-15", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName", + "name": "containerName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "testctn", + "indexingPolicy": { + "indexingMode": "consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/AccountNumber" + ], + "kind": "Hash" + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + }, + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName1", + "name": "containerName1", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "testctn1", + "indexingPolicy": { + "indexingMode": "consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/AccountNumber", + "/AccountLocation" + ], + "kind": "MultiHash", + "version": 2 + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + }, + "_rid": "PD5DALigDiw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName2", + "name": "containerName2", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "testctn2", + "indexingPolicy": { + "indexingMode": "consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/_partitionKey" + ], + "kind": "Hash", + "version": 2, + "systemKey": true + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + }, + "_rid": "PD5DALigDhw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlContainerMigrateToAutoscale.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlContainerMigrateToAutoscale.json new file mode 100644 index 000000000000..03486e07667e --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlContainerMigrateToAutoscale.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "autoscaleSettings": { + "maxThroughput": 4000 + }, + "minimumThroughput": "4000", + "offerReplacePending": "false", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlContainerMigrateToManualThroughput.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlContainerMigrateToManualThroughput.json new file mode 100644 index 000000000000..171f820dfeb2 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlContainerMigrateToManualThroughput.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlContainerThroughputGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlContainerThroughputGet.json new file mode 100644 index 000000000000..b0c6512ccff7 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlContainerThroughputGet.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlContainerThroughputUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlContainerThroughputUpdate.json new file mode 100644 index 000000000000..4deb0c3a4ada --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlContainerThroughputUpdate.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName", + "updateThroughputParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlDatabaseCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlDatabaseCreateUpdate.json new file mode 100644 index 000000000000..1b212d2f791e --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlDatabaseCreateUpdate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "createUpdateSqlDatabaseParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName" + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName", + "name": "databaseName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName", + "_rid": "CqNBAA==", + "_ts": 1449602962, + "_etag": "\"00000a00-0000-0000-0000-56672f920000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlDatabaseDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlDatabaseDelete.json new file mode 100644 index 000000000000..178bb0d4d662 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlDatabaseDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlDatabaseGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlDatabaseGet.json new file mode 100644 index 000000000000..7bc0f99025a2 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlDatabaseGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName", + "name": "databaseName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName", + "_rid": "CqNBAA==", + "_ts": 1449602962, + "_etag": "\"00000a00-0000-0000-0000-56672f920000\"", + "_colls": "colls/", + "_users": "users/" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlDatabaseList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlDatabaseList.json new file mode 100644 index 000000000000..2908da4988f0 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlDatabaseList.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2021-04-15", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName", + "name": "databaseName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName", + "_rid": "CqNBAA==", + "_ts": 1449602962, + "_etag": "\"00000a00-0000-0000-0000-56672f920000\"", + "_colls": "colls/", + "_users": "users/" + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlDatabaseMigrateToAutoscale.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlDatabaseMigrateToAutoscale.json new file mode 100644 index 000000000000..2bef3153f322 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlDatabaseMigrateToAutoscale.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "autoscaleSettings": { + "maxThroughput": 4000 + }, + "minimumThroughput": "4000", + "offerReplacePending": "false", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlDatabaseMigrateToManualThroughput.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlDatabaseMigrateToManualThroughput.json new file mode 100644 index 000000000000..874e1dd01100 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlDatabaseMigrateToManualThroughput.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlDatabaseThroughputGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlDatabaseThroughputGet.json new file mode 100644 index 000000000000..c518a36dcda0 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlDatabaseThroughputGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlDatabaseThroughputUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlDatabaseThroughputUpdate.json new file mode 100644 index 000000000000..b734b2b4519e --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlDatabaseThroughputUpdate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "updateThroughputParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlRoleAssignmentCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlRoleAssignmentCreateUpdate.json new file mode 100644 index 000000000000..478b98848d25 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlRoleAssignmentCreateUpdate.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "roleAssignmentId": "myRoleAssignmentId", + "subscriptionId": "mySubscriptionId", + "resourceGroupName": "myResourceGroupName", + "accountName": "myAccountName", + "api-version": "2021-04-15", + "createUpdateSqlRoleAssignmentParameters": { + "properties": { + "roleDefinitionId": "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/sqlRoleDefinitions/myRoleDefinitionId", + "scope": "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/dbs/purchases/colls/redmond-purchases", + "principalId": "myPrincipalId" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/sqlRoleAssignments/myRoleAssignmentId", + "name": "myRoleAssignmentId", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlRoleAssignments", + "properties": { + "roleDefinitionId": "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/sqlRoleDefinitions/myRoleDefinitionId", + "scope": "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/dbs/purchases/colls/redmond-purchases", + "principalId": "myPrincipalId" + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlRoleAssignmentDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlRoleAssignmentDelete.json new file mode 100644 index 000000000000..eaba934cbdd4 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlRoleAssignmentDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "roleAssignmentId": "myRoleAssignmentId", + "subscriptionId": "mySubscriptionId", + "resourceGroupName": "myResourceGroupName", + "accountName": "myAccountName", + "api-version": "2021-04-15" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlRoleAssignmentGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlRoleAssignmentGet.json new file mode 100644 index 000000000000..379d6770291d --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlRoleAssignmentGet.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "roleAssignmentId": "myRoleAssignmentId", + "subscriptionId": "mySubscriptionId", + "resourceGroupName": "myResourceGroupName", + "accountName": "myAccountName", + "api-version": "2021-04-15" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/sqlRoleAssignments/myRoleAssignmentId", + "name": "myRoleAssignmentId", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlRoleAssignments", + "properties": { + "roleDefinitionId": "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/sqlRoleDefinitions/myRoleDefinitionId", + "scope": "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/dbs/purchases/colls/redmond-purchases", + "principalId": "myPrincipalId" + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlRoleAssignmentList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlRoleAssignmentList.json new file mode 100644 index 000000000000..ec58c7a5e7ce --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlRoleAssignmentList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "mySubscriptionId", + "resourceGroupName": "myResourceGroupName", + "accountName": "myAccountName", + "api-version": "2021-04-15" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/sqlRoleAssignments/myRoleAssignmentId", + "name": "myRoleAssignmentId", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlRoleAssignments", + "properties": { + "roleDefinitionId": "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/sqlRoleDefinitions/myRoleDefinitionId", + "scope": "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/dbs/purchases/colls/redmond-purchases", + "principalId": "myPrincipalId" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlRoleDefinitionCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlRoleDefinitionCreateUpdate.json new file mode 100644 index 000000000000..d30bd4d39384 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlRoleDefinitionCreateUpdate.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "roleDefinitionId": "myRoleDefinitionId", + "subscriptionId": "mySubscriptionId", + "resourceGroupName": "myResourceGroupName", + "accountName": "myAccountName", + "api-version": "2021-04-15", + "createUpdateSqlRoleDefinitionParameters": { + "properties": { + "roleName": "myRoleName", + "type": "CustomRole", + "assignableScopes": [ + "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/dbs/sales", + "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/dbs/purchases" + ], + "permissions": [ + { + "dataActions": [ + "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/items/create", + "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/items/read" + ], + "notDataActions": [] + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/sqlRoleDefinitions/myRoleDefinitionId", + "name": "myRoleDefinitionId", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlRoleDefinitions", + "properties": { + "roleName": "myRoleName", + "type": "CustomRole", + "assignableScopes": [ + "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/dbs/sales", + "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/dbs/purchases" + ], + "permissions": [ + { + "dataActions": [ + "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/items/create", + "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/items/read" + ] + } + ] + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlRoleDefinitionDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlRoleDefinitionDelete.json new file mode 100644 index 000000000000..5759ca87374f --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlRoleDefinitionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "roleDefinitionId": "myRoleDefinitionId", + "subscriptionId": "mySubscriptionId", + "resourceGroupName": "myResourceGroupName", + "accountName": "myAccountName", + "api-version": "2021-04-15" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlRoleDefinitionGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlRoleDefinitionGet.json new file mode 100644 index 000000000000..ddb4dbc797af --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlRoleDefinitionGet.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "roleDefinitionId": "myRoleDefinitionId", + "subscriptionId": "mySubscriptionId", + "resourceGroupName": "myResourceGroupName", + "accountName": "myAccountName", + "api-version": "2021-04-15" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/sqlRoleDefinitions/myRoleDefinitionId", + "name": "myRoleDefinitionId", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlRoleDefinitions", + "properties": { + "roleName": "myRoleName", + "type": "CustomRole", + "assignableScopes": [ + "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/dbs/sales", + "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/dbs/purchases" + ], + "permissions": [ + { + "dataActions": [ + "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/items/create", + "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/items/read" + ], + "notDataActions": [] + } + ] + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlRoleDefinitionList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlRoleDefinitionList.json new file mode 100644 index 000000000000..f140be41c7ca --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlRoleDefinitionList.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "mySubscriptionId", + "resourceGroupName": "myResourceGroupName", + "accountName": "myAccountName", + "api-version": "2021-04-15" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/sqlRoleDefinitions/myRoleDefinitionId", + "name": "myRoleDefinitionId", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlRoleDefinitions", + "properties": { + "roleName": "myRoleName", + "type": "CustomRole", + "assignableScopes": [ + "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/dbs/sales", + "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/dbs/purchases" + ], + "permissions": [ + { + "dataActions": [ + "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/items/create", + "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/items/read" + ], + "notDataActions": [] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlStoredProcedureCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlStoredProcedureCreateUpdate.json new file mode 100644 index 000000000000..1dc679cfe787 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlStoredProcedureCreateUpdate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName", + "storedProcedureName": "storedProcedureName", + "createUpdateSqlStoredProcedureParameters": { + "properties": { + "resource": { + "id": "storedProcedureName", + "body": "body" + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/sqlStoredProcedures/storedProcedureName", + "name": "storedProcedureName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/sqlStoredProcedures", + "properties": { + "resource": { + "id": "storedProcedureName", + "body": "body", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlStoredProcedureDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlStoredProcedureDelete.json new file mode 100644 index 000000000000..1045fc6ae84c --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlStoredProcedureDelete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName", + "storedProcedureName": "storedProcedureName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlStoredProcedureGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlStoredProcedureGet.json new file mode 100644 index 000000000000..fcd3b795c3b7 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlStoredProcedureGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2021-04-15", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName", + "containerName": "containerName", + "storedProcedureName": "storedProcedureName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/sqlStoredProcedures/storedProcedureName", + "name": "storedProcedureName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/sqlStoredProcedures", + "properties": { + "resource": { + "id": "storedProcedureName", + "body": "body", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlStoredProcedureList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlStoredProcedureList.json new file mode 100644 index 000000000000..d4f88583dcf0 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlStoredProcedureList.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2021-04-15", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName", + "containerName": "containerName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/sqlStoredProcedures/storedProcedureName", + "name": "testctn", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/sqlStoredProcedures", + "properties": { + "resource": { + "id": "testctn", + "body": "body", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlTriggerCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlTriggerCreateUpdate.json new file mode 100644 index 000000000000..751d1bdc21eb --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlTriggerCreateUpdate.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName", + "triggerName": "triggerName", + "createUpdateSqlTriggerParameters": { + "properties": { + "resource": { + "id": "triggerName", + "body": "body", + "triggerType": "triggerType", + "triggerOperation": "triggerOperation" + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/sqlTriggers/triggerName", + "name": "triggerName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/sqlTriggers", + "properties": { + "resource": { + "id": "triggerName", + "body": "body", + "triggerType": "triggerType", + "triggerOperation": "triggerOperation", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlTriggerDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlTriggerDelete.json new file mode 100644 index 000000000000..ead15dbf3816 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlTriggerDelete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName", + "triggerName": "triggerName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlTriggerGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlTriggerGet.json new file mode 100644 index 000000000000..5ab2c7c4b5a8 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlTriggerGet.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2021-04-15", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName", + "containerName": "containerName", + "triggerName": "triggerName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/sqlTriggers/triggerName", + "name": "triggerName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/sqlTriggers", + "properties": { + "resource": { + "id": "triggerName", + "body": "body", + "triggerType": "triggerType", + "triggerOperation": "triggerOperation", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlTriggerList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlTriggerList.json new file mode 100644 index 000000000000..d788cf989cbc --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlTriggerList.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2021-04-15", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName", + "containerName": "containerName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/sqlTriggers/triggerName", + "name": "testctn", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/sqlTriggers", + "properties": { + "resource": { + "id": "testctn", + "body": "body", + "triggerType": "triggerType", + "triggerOperation": "triggerOperation", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlUserDefinedFunctionCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlUserDefinedFunctionCreateUpdate.json new file mode 100644 index 000000000000..803563792fb7 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlUserDefinedFunctionCreateUpdate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName", + "userDefinedFunctionName": "userDefinedFunctionName", + "createUpdateSqlUserDefinedFunctionParameters": { + "properties": { + "resource": { + "id": "userDefinedFunctionName", + "body": "body" + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/sqlUserDefinedFunctions/userDefinedFunctionName", + "name": "userDefinedFunctionName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/sqlUserDefinedFunctions", + "properties": { + "resource": { + "id": "userDefinedFunctionName", + "body": "body", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlUserDefinedFunctionDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlUserDefinedFunctionDelete.json new file mode 100644 index 000000000000..47908bfc8442 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlUserDefinedFunctionDelete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName", + "userDefinedFunctionName": "userDefinedFunctionName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlUserDefinedFunctionGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlUserDefinedFunctionGet.json new file mode 100644 index 000000000000..c93a84e232fc --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlUserDefinedFunctionGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2021-04-15", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName", + "containerName": "containerName", + "userDefinedFunctionName": "userDefinedFunctionName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/sqlUserDefinedFunctions/userDefinedFunctionName", + "name": "userDefinedFunctionName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/sqlUserDefinedFunctions", + "properties": { + "resource": { + "id": "userDefinedFunctionName", + "body": "body", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlUserDefinedFunctionList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlUserDefinedFunctionList.json new file mode 100644 index 000000000000..8b415d475def --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBSqlUserDefinedFunctionList.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2021-04-15", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName", + "containerName": "containerName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/sqlUserDefinedFunctions/userDefinedFunctionName", + "name": "testctn", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/sqlUserDefinedFunctions", + "properties": { + "resource": { + "id": "testctn", + "body": "body", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBTableCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBTableCreateUpdate.json new file mode 100644 index 000000000000..a041339494cb --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBTableCreateUpdate.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "tableName": "tableName", + "createUpdateTableParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "tableName" + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/tables/tableName", + "name": "tableName", + "type": "Microsoft.DocumentDB/databaseAccounts/tables", + "location": "West US", + "properties": { + "resource": { + "id": "tableName" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBTableDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBTableDelete.json new file mode 100644 index 000000000000..caed2e945793 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBTableDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "tableName": "tableName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBTableGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBTableGet.json new file mode 100644 index 000000000000..b2da371974a1 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBTableGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "tableName": "tableName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/tables/tableName", + "name": "tableName", + "type": "Microsoft.DocumentDB/databaseAccounts/tables", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "tableName", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBTableList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBTableList.json new file mode 100644 index 000000000000..4502940c2fe2 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBTableList.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2021-04-15", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/tables/tableName", + "name": "tableName", + "type": "Microsoft.DocumentDB/databaseAccounts/tables", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "tableName" + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBTableMigrateToAutoscale.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBTableMigrateToAutoscale.json new file mode 100644 index 000000000000..500b7856144e --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBTableMigrateToAutoscale.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "tableName": "tableName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "autoscaleSettings": { + "maxThroughput": 4000 + }, + "minimumThroughput": "4000", + "offerReplacePending": "false", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBTableMigrateToManualThroughput.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBTableMigrateToManualThroughput.json new file mode 100644 index 000000000000..4132f4dc0cd2 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBTableMigrateToManualThroughput.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "tableName": "tableName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBTableThroughputGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBTableThroughputGet.json new file mode 100644 index 000000000000..72e4bf67c51b --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBTableThroughputGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "tableName": "tableName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/tables/tableName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/tables/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBTableThroughputUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBTableThroughputUpdate.json new file mode 100644 index 000000000000..7baff92b2808 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/examples/CosmosDBTableThroughputUpdate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-04-15", + "subscriptionId": "subid", + "tableName": "tableName", + "updateThroughputParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/tables/tableName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/tables/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/notebook.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/notebook.json new file mode 100644 index 000000000000..8bac4ba2b1c4 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/notebook.json @@ -0,0 +1,461 @@ +{ + "swagger": "2.0", + "info": { + "title": "Cosmos DB", + "description": "Azure Cosmos DB Database Service Resource Provider REST API", + "version": "2021-04-15" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "Impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/notebookWorkspaces": { + "get": { + "tags": [ + "NotebookWorkspacesResource" + ], + "description": "Gets the notebook workspace resources of an existing Cosmos DB account.", + "operationId": "NotebookWorkspaces_ListByDatabaseAccount", + "x-ms-pageable": { + "nextLinkName": null + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved notebook workspace resources.", + "schema": { + "$ref": "#/definitions/NotebookWorkspaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../stable/2021-04-15/cosmos-db.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "CosmosDBNotebookWorkspaceList": { + "$ref": "./examples/CosmosDBNotebookWorkspaceList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/notebookWorkspaces/{notebookWorkspaceName}": { + "get": { + "tags": [ + "NotebookWorkspacesResource" + ], + "description": "Gets the notebook workspace for a Cosmos DB account.", + "operationId": "NotebookWorkspaces_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/NotebookWorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved a specified notebook workspace resource.", + "schema": { + "$ref": "#/definitions/NotebookWorkspace" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../stable/2021-04-15/cosmos-db.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "CosmosDBNotebookWorkspaceGet": { + "$ref": "./examples/CosmosDBNotebookWorkspaceGet.json" + } + } + }, + "put": { + "tags": [ + "NotebookWorkspacesResource" + ], + "description": "Creates the notebook workspace for a Cosmos DB account.", + "operationId": "NotebookWorkspaces_CreateOrUpdate", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/NotebookWorkspaceNameParameter" + }, + { + "name": "notebookCreateUpdateParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NotebookWorkspaceCreateUpdateParameters" + }, + "description": "The notebook workspace to create for the current database account." + } + ], + "responses": { + "200": { + "description": "Creation of notebook workspace will complete asynchronously.", + "schema": { + "$ref": "#/definitions/NotebookWorkspace" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../stable/2021-04-15/cosmos-db.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "CosmosDBNotebookWorkspaceCreate": { + "$ref": "./examples/CosmosDBNotebookWorkspaceCreate.json" + } + } + }, + "delete": { + "tags": [ + "NotebookWorkspacesResource" + ], + "description": "Deletes the notebook workspace for a Cosmos DB account.", + "operationId": "NotebookWorkspaces_Delete", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/NotebookWorkspaceNameParameter" + } + ], + "responses": { + "202": { + "description": "The notebook workspace delete operation will complete asynchronously." + }, + "204": { + "description": "The specified notebook workspace does not exist in the database account." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../stable/2021-04-15/cosmos-db.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "CosmosDBNotebookWorkspaceDelete": { + "$ref": "./examples/CosmosDBNotebookWorkspaceDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/notebookWorkspaces/{notebookWorkspaceName}/listConnectionInfo": { + "post": { + "tags": [ + "NotebookWorkspacesResource" + ], + "operationId": "NotebookWorkspaces_ListConnectionInfo", + "x-ms-examples": { + "CosmosDBNotebookWorkspaceListConnectionInfo": { + "$ref": "./examples/CosmosDBNotebookWorkspaceListConnectionInfo.json" + } + }, + "description": "Retrieves the connection info for the notebook workspace", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/NotebookWorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/NotebookWorkspaceConnectionInfoResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../stable/2021-04-15/cosmos-db.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/notebookWorkspaces/{notebookWorkspaceName}/regenerateAuthToken": { + "post": { + "tags": [ + "NotebookWorkspacesResource" + ], + "operationId": "NotebookWorkspaces_RegenerateAuthToken", + "x-ms-long-running-operation": true, + "x-ms-examples": { + "CosmosDBNotebookWorkspaceRegenerateAuthToken": { + "$ref": "./examples/CosmosDBNotebookWorkspaceRegenerateAuthToken.json" + } + }, + "description": "Regenerates the auth token for the notebook workspace", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/NotebookWorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted. The regenerate auth token operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../stable/2021-04-15/cosmos-db.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/notebookWorkspaces/{notebookWorkspaceName}/start": { + "post": { + "tags": [ + "NotebookWorkspacesResource" + ], + "operationId": "NotebookWorkspaces_Start", + "x-ms-long-running-operation": true, + "x-ms-examples": { + "CosmosDBNotebookWorkspaceStart": { + "$ref": "./examples/CosmosDBNotebookWorkspaceStart.json" + } + }, + "description": "Starts the notebook workspace", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/NotebookWorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted. The start operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../stable/2021-04-15/cosmos-db.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "NotebookWorkspaceCreateUpdateParameters": { + "description": "Parameters to create a notebook workspace resource", + "type": "object", + "allOf": [ + { + "$ref": "../../stable/2021-04-15/cosmos-db.json#/definitions/ARMProxyResource" + } + ] + }, + "NotebookWorkspaceListResult": { + "description": "A list of notebook workspace resources", + "type": "object", + "properties": { + "value": { + "type": "array", + "description": "Array of notebook workspace resources", + "items": { + "$ref": "#/definitions/NotebookWorkspace" + } + } + } + }, + "NotebookWorkspace": { + "description": "A notebook workspace resource", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/NotebookWorkspaceProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "../../stable/2021-04-15/cosmos-db.json#/definitions/ARMProxyResource" + } + ] + }, + "NotebookWorkspaceProperties": { + "description": "Properties of a notebook workspace resource.", + "type": "object", + "properties": { + "notebookServerEndpoint": { + "description": "Specifies the endpoint of Notebook server.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "Status of the notebook workspace. Possible values are: Creating, Online, Deleting, Failed, Updating.", + "type": "string", + "readOnly": true + } + } + }, + "NotebookWorkspaceConnectionInfoResult": { + "description": "The connection info for the given notebook workspace", + "properties": { + "authToken": { + "type": "string", + "description": "Specifies auth token used for connecting to Notebook server (uses token-based auth).", + "readOnly": true + }, + "notebookServerEndpoint": { + "type": "string", + "description": "Specifies the endpoint of Notebook server.", + "readOnly": true + } + } + } + }, + "parameters": { + "accountNameParameter": { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB database account name.", + "minLength": 3, + "maxLength": 50, + "pattern": "^[a-z0-9]+(-[a-z0-9]+)*" + }, + "NotebookWorkspaceNameParameter": { + "name": "notebookWorkspaceName", + "in": "path", + "description": "The name of the notebook workspace resource.", + "required": true, + "x-ms-parameter-location": "method", + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "NotebookWorkspaceName", + "modelAsString": true + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/privateEndpointConnection.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/privateEndpointConnection.json new file mode 100644 index 000000000000..986a49f653d1 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/privateEndpointConnection.json @@ -0,0 +1,318 @@ +{ + "swagger": "2.0", + "info": { + "title": "Cosmos DB", + "description": "Azure Cosmos DB Database Service Resource Provider REST API", + "version": "2021-04-15" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "Impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/privateEndpointConnections": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "List all private endpoint connections on a Cosmos DB account.", + "operationId": "PrivateEndpointConnections_ListByDatabaseAccount", + "x-ms-pageable": { + "nextLinkName": null + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private endpoint connections.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionListResult" + } + } + }, + "x-ms-examples": { + "Gets private endpoint connection.": { + "$ref": "./examples/CosmosDBPrivateEndpointConnectionListGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Gets a private endpoint connection.", + "operationId": "PrivateEndpointConnections_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved a specified private endpoint connection.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + } + }, + "x-ms-examples": { + "Gets private endpoint connection.": { + "$ref": "./examples/CosmosDBPrivateEndpointConnectionGet.json" + } + } + }, + "put": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Approve or reject a private endpoint connection with a given name.", + "operationId": "PrivateEndpointConnections_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + } + ], + "responses": { + "200": { + "description": "Successfully approved or rejected private endpoint connection.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "202": { + "description": "Accepted. The private endpoint connection update will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../stable/2021-04-15/cosmos-db.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Approve or reject a private endpoint connection with a given name.": { + "$ref": "./examples/CosmosDBPrivateEndpointConnectionUpdate.json" + } + } + }, + "delete": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Deletes a private endpoint connection with a given name.", + "operationId": "PrivateEndpointConnections_Delete", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionNameParameter" + } + ], + "responses": { + "202": { + "description": "Accepted. The private endpoint connection delete will complete asynchronously." + }, + "204": { + "description": "Private endpoint connection does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../stable/2021-04-15/cosmos-db.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Deletes a private endpoint connection with a given name.": { + "$ref": "./examples/CosmosDBPrivateEndpointConnectionDelete.json" + } + } + } + } + }, + "definitions": { + "PrivateEndpointConnectionListResult": { + "description": "A list of private endpoint connections", + "type": "object", + "properties": { + "value": { + "type": "array", + "description": "Array of private endpoint connections", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + } + } + }, + "PrivateEndpointConnection": { + "description": "A private endpoint connection", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ] + }, + "PrivateEndpointConnectionProperties": { + "description": "Properties of a private endpoint connection.", + "type": "object", + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpointProperty", + "description": "Private endpoint which the connection belongs to." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionStateProperty", + "description": "Connection State of the Private Endpoint Connection." + }, + "groupId": { + "type": "string", + "description": "Group id of the private endpoint." + }, + "provisioningState": { + "type": "string", + "description": "Provisioning state of the private endpoint." + } + } + }, + "PrivateEndpointProperty": { + "type": "object", + "description": "Private endpoint which the connection belongs to.", + "properties": { + "id": { + "type": "string", + "description": "Resource id of the private endpoint." + } + } + }, + "PrivateLinkServiceConnectionStateProperty": { + "type": "object", + "description": "Connection State of the Private Endpoint Connection.", + "properties": { + "status": { + "type": "string", + "description": "The private link service connection status." + }, + "description": { + "type": "string", + "description": "The private link service connection description." + }, + "actionsRequired": { + "type": "string", + "description": "Any action that is required beyond basic workflow (approve/ reject/ disconnect)", + "readOnly": true + } + } + } + }, + "parameters": { + "accountNameParameter": { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB database account name.", + "minLength": 3, + "maxLength": 50, + "pattern": "^[a-z0-9]+(-[a-z0-9]+)*" + }, + "PrivateEndpointConnectionNameParameter": { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "The name of the private endpoint connection." + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/privateLinkResources.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/privateLinkResources.json new file mode 100644 index 000000000000..07b7f08013af --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/privateLinkResources.json @@ -0,0 +1,195 @@ +{ + "swagger": "2.0", + "info": { + "title": "Cosmos DB", + "description": "Azure Cosmos DB Database Service Resource Provider REST API", + "version": "2021-04-15" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "Impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/privateLinkResources": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "description": "Gets the private link resources that need to be created for a Cosmos DB account.", + "operationId": "PrivateLinkResources_ListByDatabaseAccount", + "x-ms-pageable": { + "nextLinkName": null + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private link resources.", + "schema": { + "$ref": "#/definitions/PrivateLinkResourceListResult" + } + } + }, + "x-ms-examples": { + "Gets private endpoint connection.": { + "$ref": "./examples/CosmosDBPrivateLinkResourceListGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/privateLinkResources/{groupName}": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "description": "Gets the private link resources that need to be created for a Cosmos DB account.", + "operationId": "PrivateLinkResources_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/GroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved a specified private link resource.", + "schema": { + "$ref": "#/definitions/PrivateLinkResource" + } + } + }, + "x-ms-examples": { + "Gets private endpoint connection.": { + "$ref": "./examples/CosmosDBPrivateLinkResourceGet.json" + } + } + } + } + }, + "definitions": { + "PrivateLinkResourceListResult": { + "description": "A list of private link resources", + "type": "object", + "properties": { + "value": { + "type": "array", + "description": "Array of private link resources", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + } + } + } + }, + "PrivateLinkResource": { + "description": "A private link resource", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "../../stable/2021-04-15/cosmos-db.json#/definitions/ARMProxyResource" + } + ] + }, + "PrivateLinkResourceProperties": { + "description": "Properties of a private link resource.", + "type": "object", + "properties": { + "groupId": { + "description": "The private link resource group id.", + "type": "string", + "readOnly": true + }, + "requiredMembers": { + "description": "The private link resource required member names.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "requiredZoneNames": { + "description": "The private link resource required zone names.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + } + } + } + }, + "parameters": { + "accountNameParameter": { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB database account name.", + "minLength": 3, + "maxLength": 50, + "pattern": "^[a-z0-9]+(-[a-z0-9]+)*" + }, + "GroupNameParameter": { + "name": "groupName", + "in": "path", + "description": "The name of the private link resource.", + "required": true, + "x-ms-parameter-location": "method", + "type": "string" + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/rbac.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/rbac.json new file mode 100644 index 000000000000..db07c983ca2b --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-04-15/rbac.json @@ -0,0 +1,573 @@ +{ + "swagger": "2.0", + "info": { + "title": "Cosmos DB", + "description": "Azure Cosmos DB Role Based Access Control Resource Provider REST API", + "version": "2021-04-15" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "Impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlRoleDefinitions/{roleDefinitionId}": { + "get": { + "operationId": "SqlResources_GetSqlRoleDefinition", + "x-ms-examples": { + "CosmosDBSqlRoleDefinitionGet": { + "$ref": "./examples/CosmosDBSqlRoleDefinitionGet.json" + } + }, + "description": "Retrieves the properties of an existing Azure Cosmos DB SQL Role Definition with the given Id.", + "parameters": [ + { + "$ref": "#/parameters/roleDefinitionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "cosmos-db.json#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Role Definition was successfully retrieved.", + "schema": { + "$ref": "#/definitions/SqlRoleDefinitionGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "cosmos-db.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "SqlResources_CreateUpdateSqlRoleDefinition", + "x-ms-examples": { + "CosmosDBSqlRoleDefinitionCreateUpdate": { + "$ref": "./examples/CosmosDBSqlRoleDefinitionCreateUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Creates or updates an Azure Cosmos DB SQL Role Definition.", + "parameters": [ + { + "$ref": "#/parameters/roleDefinitionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "cosmos-db.json#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateSqlRoleDefinitionParameters", + "in": "body", + "required": true, + "description": "The properties required to create or update a Role Definition.", + "schema": { + "$ref": "#/definitions/SqlRoleDefinitionCreateUpdateParameters" + } + } + ], + "responses": { + "200": { + "description": "The Role Definition create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/SqlRoleDefinitionGetResults" + } + }, + "202": { + "description": "The Role Definition create or update request was accepted and will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "cosmos-db.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "operationId": "SqlResources_DeleteSqlRoleDefinition", + "x-ms-examples": { + "CosmosDBSqlRoleDefinitionDelete": { + "$ref": "./examples/CosmosDBSqlRoleDefinitionDelete.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Deletes an existing Azure Cosmos DB SQL Role Definition.", + "parameters": [ + { + "$ref": "#/parameters/roleDefinitionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "cosmos-db.json#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Role Definition delete operation was completed successfully." + }, + "202": { + "description": "The Role Definition delete request was accepted and will complete asynchronously." + }, + "204": { + "description": "The requested Role Definition does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "cosmos-db.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlRoleDefinitions": { + "get": { + "operationId": "SqlResources_ListSqlRoleDefinitions", + "x-ms-examples": { + "CosmosDBSqlRoleDefinitionList": { + "$ref": "./examples/CosmosDBSqlRoleDefinitionList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the list of all Azure Cosmos DB SQL Role Definitions.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "cosmos-db.json#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The list operation completed successfully.", + "schema": { + "$ref": "#/definitions/SqlRoleDefinitionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "cosmos-db.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlRoleAssignments/{roleAssignmentId}": { + "get": { + "operationId": "SqlResources_GetSqlRoleAssignment", + "x-ms-examples": { + "CosmosDBSqlRoleAssignmentGet": { + "$ref": "./examples/CosmosDBSqlRoleAssignmentGet.json" + } + }, + "description": "Retrieves the properties of an existing Azure Cosmos DB SQL Role Assignment with the given Id.", + "parameters": [ + { + "$ref": "#/parameters/roleAssignmentIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "cosmos-db.json#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Role Assignment was successfully retrieved.", + "schema": { + "$ref": "#/definitions/SqlRoleAssignmentGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "cosmos-db.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "SqlResources_CreateUpdateSqlRoleAssignment", + "x-ms-examples": { + "CosmosDBSqlRoleAssignmentCreateUpdate": { + "$ref": "./examples/CosmosDBSqlRoleAssignmentCreateUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Creates or updates an Azure Cosmos DB SQL Role Assignment.", + "parameters": [ + { + "$ref": "#/parameters/roleAssignmentIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "cosmos-db.json#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateSqlRoleAssignmentParameters", + "in": "body", + "required": true, + "description": "The properties required to create or update a Role Assignment.", + "schema": { + "$ref": "#/definitions/SqlRoleAssignmentCreateUpdateParameters" + } + } + ], + "responses": { + "200": { + "description": "The Role Assignment create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/SqlRoleAssignmentGetResults" + } + }, + "202": { + "description": "The Role Assignment create or update request was accepted and will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "cosmos-db.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "operationId": "SqlResources_DeleteSqlRoleAssignment", + "x-ms-examples": { + "CosmosDBSqlRoleAssignmentDelete": { + "$ref": "./examples/CosmosDBSqlRoleAssignmentDelete.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Deletes an existing Azure Cosmos DB SQL Role Assignment.", + "parameters": [ + { + "$ref": "#/parameters/roleAssignmentIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "cosmos-db.json#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Role Assignment delete operation was completed successfully." + }, + "202": { + "description": "The Role Assignment delete request was accepted and will complete asynchronously." + }, + "204": { + "description": "The requested Role Assignment does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "cosmos-db.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlRoleAssignments": { + "get": { + "operationId": "SqlResources_ListSqlRoleAssignments", + "x-ms-examples": { + "CosmosDBSqlRoleAssignmentList": { + "$ref": "./examples/CosmosDBSqlRoleAssignmentList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the list of all Azure Cosmos DB SQL Role Assignments.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "cosmos-db.json#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The list operation completed successfully.", + "schema": { + "$ref": "#/definitions/SqlRoleAssignmentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "cosmos-db.json#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "SqlRoleDefinitionResource": { + "properties": { + "roleName": { + "type": "string", + "description": "A user-friendly name for the Role Definition. Must be unique for the database account." + }, + "type": { + "type": "string", + "enum": [ + "BuiltInRole", + "CustomRole" + ], + "description": "Indicates whether the Role Definition was built-in or user created.", + "x-ms-enum": { + "name": "RoleDefinitionType", + "modelAsString": false + } + }, + "assignableScopes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A set of fully qualified Scopes at or below which Role Assignments may be created using this Role Definition. This will allow application of this Role Definition on the entire database account or any underlying Database / Collection. Must have at least one element. Scopes higher than Database account are not enforceable as assignable Scopes. Note that resources referenced in assignable Scopes need not exist." + }, + "permissions": { + "type": "array", + "items": { + "$ref": "#/definitions/Permission" + }, + "description": "The set of operations allowed through this Role Definition." + } + }, + "description": "Azure Cosmos DB SQL Role Definition resource object." + }, + "SqlRoleDefinitionCreateUpdateParameters": { + "description": "Parameters to create and update an Azure Cosmos DB SQL Role Definition.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update an Azure Cosmos DB SQL Role Definition.", + "$ref": "#/definitions/SqlRoleDefinitionResource" + } + } + }, + "SqlRoleDefinitionGetResults": { + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SqlRoleDefinitionResource", + "description": "Properties related to the Role Definition." + } + }, + "allOf": [ + { + "$ref": "cosmos-db.json#/definitions/ARMProxyResource" + } + ], + "description": "An Azure Cosmos DB SQL Role Definition." + }, + "Permission": { + "type": "object", + "properties": { + "dataActions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "An array of data actions that are allowed." + }, + "notDataActions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "An array of data actions that are denied." + } + }, + "description": "The set of data plane operations permitted through this Role Definition." + }, + "SqlRoleDefinitionListResult": { + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/SqlRoleDefinitionGetResults" + }, + "description": "List of Role Definitions and their properties." + } + }, + "description": "The relevant Role Definitions." + }, + "SqlRoleAssignmentResource": { + "type": "object", + "properties": { + "roleDefinitionId": { + "type": "string", + "description": "The unique identifier for the associated Role Definition." + }, + "scope": { + "type": "string", + "description": "The data plane resource path for which access is being granted through this Role Assignment." + }, + "principalId": { + "type": "string", + "description": "The unique identifier for the associated AAD principal in the AAD graph to which access is being granted through this Role Assignment. Tenant ID for the principal is inferred using the tenant associated with the subscription." + } + }, + "description": "Azure Cosmos DB SQL Role Assignment resource object." + }, + "SqlRoleAssignmentCreateUpdateParameters": { + "description": "Parameters to create and update an Azure Cosmos DB SQL Role Assignment.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update an Azure Cosmos DB SQL Role Assignment.", + "$ref": "#/definitions/SqlRoleAssignmentResource" + } + } + }, + "SqlRoleAssignmentGetResults": { + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SqlRoleAssignmentResource", + "description": "Properties related to the Role Assignment." + } + }, + "allOf": [ + { + "$ref": "cosmos-db.json#/definitions/ARMProxyResource" + } + ], + "description": "An Azure Cosmos DB Role Assignment" + }, + "SqlRoleAssignmentListResult": { + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/SqlRoleAssignmentGetResults" + }, + "description": "List of Role Assignments and their properties" + } + }, + "description": "The relevant Role Assignments." + } + }, + "parameters": { + "roleDefinitionIdParameter": { + "name": "roleDefinitionId", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "The GUID for the Role Definition." + }, + "roleAssignmentIdParameter": { + "name": "roleAssignmentId", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "The GUID for the Role Assignment." + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/cosmos-db.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/cosmos-db.json new file mode 100644 index 000000000000..041211b008a9 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/cosmos-db.json @@ -0,0 +1,8624 @@ +{ + "swagger": "2.0", + "info": { + "title": "Cosmos DB", + "description": "Azure Cosmos DB Database Service Resource Provider REST API", + "version": "2021-05-15" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "Impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}": { + "get": { + "operationId": "DatabaseAccounts_Get", + "x-ms-examples": { + "CosmosDBDatabaseAccountGet": { + "$ref": "./examples/CosmosDBDatabaseAccountGet.json" + } + }, + "description": "Retrieves the properties of an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The database account properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/DatabaseAccountGetResults" + } + } + } + }, + "patch": { + "operationId": "DatabaseAccounts_Update", + "x-ms-examples": { + "CosmosDBDatabaseAccountPatch": { + "$ref": "./examples/CosmosDBDatabaseAccountPatch.json" + } + }, + "description": "Updates the properties of an existing Azure Cosmos DB database account.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "updateParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DatabaseAccountUpdateParameters" + }, + "description": "The parameters to provide for the current database account." + } + ], + "responses": { + "200": { + "description": "The database account update operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/DatabaseAccountGetResults" + } + } + } + }, + "put": { + "operationId": "DatabaseAccounts_CreateOrUpdate", + "x-ms-examples": { + "CosmosDBDatabaseAccountCreateMin": { + "$ref": "./examples/CosmosDBDatabaseAccountCreateMin.json" + }, + "CosmosDBDatabaseAccountCreateMax": { + "$ref": "./examples/CosmosDBDatabaseAccountCreateMax.json" + } + }, + "description": "Creates or updates an Azure Cosmos DB database account. The \"Update\" method is preferred when performing updates on an account.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DatabaseAccountCreateUpdateParameters" + }, + "description": "The parameters to provide for the current database account." + } + ], + "responses": { + "200": { + "description": "The database account create or update operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/DatabaseAccountGetResults" + } + } + } + }, + "delete": { + "operationId": "DatabaseAccounts_Delete", + "x-ms-examples": { + "CosmosDBDatabaseAccountDelete": { + "$ref": "./examples/CosmosDBDatabaseAccountDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB database account.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The database account delete operation will complete asynchronously." + }, + "204": { + "description": "The specified account does not exist in the subscription." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/failoverPriorityChange": { + "post": { + "operationId": "DatabaseAccounts_FailoverPriorityChange", + "x-ms-examples": { + "CosmosDBDatabaseAccountFailoverPriorityChange": { + "$ref": "./examples/CosmosDBDatabaseAccountFailoverPriorityChange.json" + } + }, + "description": "Changes the failover priority for the Azure Cosmos DB database account. A failover priority of 0 indicates a write region. The maximum value for a failover priority = (total number of regions - 1). Failover priority values must be unique for each of the regions in which the database account exists.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "failoverParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FailoverPolicies" + }, + "description": "The new failover policies for the database account." + } + ], + "responses": { + "202": { + "description": "Accepted. The failover policy change operation will complete asynchronously." + }, + "204": { + "description": "No Content" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DocumentDB/databaseAccounts": { + "get": { + "operationId": "DatabaseAccounts_List", + "x-ms-examples": { + "CosmosDBDatabaseAccountList": { + "$ref": "./examples/CosmosDBDatabaseAccountList.json" + } + }, + "description": "Lists all the Azure Cosmos DB database accounts available under the subscription.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/DatabaseAccountsListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts": { + "get": { + "operationId": "DatabaseAccounts_ListByResourceGroup", + "x-ms-examples": { + "CosmosDBDatabaseAccountListByResourceGroup": { + "$ref": "./examples/CosmosDBDatabaseAccountListByResourceGroup.json" + } + }, + "description": "Lists all the Azure Cosmos DB database accounts available under the given resource group.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/DatabaseAccountsListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/listKeys": { + "post": { + "operationId": "DatabaseAccounts_ListKeys", + "x-ms-examples": { + "CosmosDBDatabaseAccountListKeys": { + "$ref": "./examples/CosmosDBDatabaseAccountListKeys.json" + } + }, + "description": "Lists the access keys for the specified Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/DatabaseAccountListKeysResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/listConnectionStrings": { + "post": { + "operationId": "DatabaseAccounts_ListConnectionStrings", + "x-ms-examples": { + "CosmosDBDatabaseAccountListConnectionStrings": { + "$ref": "./examples/CosmosDBDatabaseAccountListConnectionStrings.json" + }, + "CosmosDBDatabaseAccountListConnectionStringsMongo": { + "$ref": "./examples/CosmosDBDatabaseAccountListConnectionStringsMongo.json" + } + }, + "description": "Lists the connection strings for the specified Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/DatabaseAccountListConnectionStringsResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/offlineRegion": { + "post": { + "operationId": "DatabaseAccounts_OfflineRegion", + "x-ms-examples": { + "CosmosDBDatabaseAccountOfflineRegion": { + "$ref": "./examples/CosmosDBDatabaseAccountOfflineRegion.json" + } + }, + "description": "Offline the specified region for the specified Azure Cosmos DB database account.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "regionParameterForOffline", + "in": "body", + "required": true, + "description": "Cosmos DB region to offline for the database account.", + "schema": { + "$ref": "#/definitions/RegionForOnlineOffline" + } + } + ], + "responses": { + "200": { + "description": "The offline region operation is completed successfully." + }, + "202": { + "description": "Accepted. The offline region operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/onlineRegion": { + "post": { + "operationId": "DatabaseAccounts_OnlineRegion", + "x-ms-examples": { + "CosmosDBDatabaseAccountOnlineRegion": { + "$ref": "./examples/CosmosDBDatabaseAccountOnlineRegion.json" + } + }, + "description": "Online the specified region for the specified Azure Cosmos DB database account.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "regionParameterForOnline", + "in": "body", + "required": true, + "description": "Cosmos DB region to online for the database account.", + "schema": { + "$ref": "#/definitions/RegionForOnlineOffline" + } + } + ], + "responses": { + "200": { + "description": "The online region operation is completed successfully." + }, + "202": { + "description": "Accepted. The online region operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/readonlykeys": { + "get": { + "operationId": "DatabaseAccounts_GetReadOnlyKeys", + "x-ms-examples": { + "CosmosDBDatabaseAccountListReadOnlyKeys": { + "$ref": "./examples/CosmosDBDatabaseAccountListReadOnlyKeys.json" + } + }, + "description": "Lists the read-only access keys for the specified Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/DatabaseAccountListReadOnlyKeysResult" + } + } + } + }, + "post": { + "operationId": "DatabaseAccounts_ListReadOnlyKeys", + "x-ms-examples": { + "CosmosDBDatabaseAccountListReadOnlyKeys": { + "$ref": "./examples/CosmosDBDatabaseAccountListReadOnlyKeys.json" + } + }, + "description": "Lists the read-only access keys for the specified Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/DatabaseAccountListReadOnlyKeysResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/regenerateKey": { + "post": { + "operationId": "DatabaseAccounts_RegenerateKey", + "x-ms-examples": { + "CosmosDBDatabaseAccountRegenerateKey": { + "$ref": "./examples/CosmosDBDatabaseAccountRegenerateKey.json" + } + }, + "description": "Regenerates an access key for the specified Azure Cosmos DB database account.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "keyToRegenerate", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DatabaseAccountRegenerateKeyParameters" + }, + "description": "The name of the key to regenerate." + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted. The regenerate key operation will complete asynchronously." + } + } + } + }, + "/providers/Microsoft.DocumentDB/databaseAccountNames/{accountName}": { + "head": { + "operationId": "DatabaseAccounts_CheckNameExists", + "x-ms-examples": { + "CosmosDBDatabaseAccountCheckNameExists": { + "$ref": "./examples/CosmosDBDatabaseAccountCheckNameExists.json" + } + }, + "description": "Checks that the Azure Cosmos DB account name already exists. A valid account name may contain only lowercase letters, numbers, and the '-' character, and must be between 3 and 50 characters.", + "parameters": [ + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The account name is valid but is already in use." + }, + "404": { + "description": "Not Found. The account name is available and valid." + } + } + } + }, + "/providers/Microsoft.DocumentDB/operations": { + "get": { + "tags": [ + "Operations" + ], + "description": "Lists all of the available Cosmos DB Resource Provider operations.", + "operationId": "Operations_List", + "x-ms-examples": { + "CosmosDBOperationsList": { + "$ref": "./examples/CosmosDBOperationsList.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/metrics": { + "get": { + "operationId": "DatabaseAccounts_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseAccountGetMetrics": { + "$ref": "./examples/CosmosDBDatabaseAccountGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The metrics for the database account were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/metrics": { + "get": { + "operationId": "Database_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseGetMetrics": { + "$ref": "./examples/CosmosDBDatabaseGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given database account and database.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The metrics for the database account were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/collections/{collectionRid}/metrics": { + "get": { + "operationId": "Collection_ListMetrics", + "x-ms-examples": { + "CosmosDBCollectionGetMetrics": { + "$ref": "./examples/CosmosDBCollectionGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given database account and collection.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/collectionRidParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The metrics for the database account were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/region/{region}/databases/{databaseRid}/collections/{collectionRid}/metrics": { + "get": { + "operationId": "CollectionRegion_ListMetrics", + "x-ms-examples": { + "CosmosDBRegionCollectionGetMetrics": { + "$ref": "./examples/CosmosDBRegionCollectionGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given database account, collection and region.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/regionParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/collectionRidParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The metrics for the database account were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/region/{region}/metrics": { + "get": { + "operationId": "DatabaseAccountRegion_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseAccountRegionGetMetrics": { + "$ref": "./examples/CosmosDBDatabaseAccountRegionGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given database account and region.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/regionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The metrics for the database account were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sourceRegion/{sourceRegion}/targetRegion/{targetRegion}/percentile/metrics": { + "get": { + "operationId": "PercentileSourceTarget_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseAccountRegionGetMetrics": { + "$ref": "./examples/CosmosDBPercentileSourceTargetGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given account, source and target region. This url is only for PBS and Replication Latency data", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/sourceRegionParameter" + }, + { + "$ref": "#/parameters/targetRegionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The percentile metrics for the account, source and target regions were retrieved successfully.", + "schema": { + "$ref": "#/definitions/PercentileMetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/targetRegion/{targetRegion}/percentile/metrics": { + "get": { + "operationId": "PercentileTarget_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseAccountRegionGetMetrics": { + "$ref": "./examples/CosmosDBPercentileTargetGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given account target region. This url is only for PBS and Replication Latency data", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/targetRegionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The percentile metrics for the account and target regions were retrieved successfully.", + "schema": { + "$ref": "#/definitions/PercentileMetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/percentile/metrics": { + "get": { + "operationId": "Percentile_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseAccountRegionGetMetrics": { + "$ref": "./examples/CosmosDBPercentileGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given database account. This url is only for PBS and Replication Latency data", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The percentile metrics for the account were retrieved successfully.", + "schema": { + "$ref": "#/definitions/PercentileMetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/region/{region}/databases/{databaseRid}/collections/{collectionRid}/partitions/metrics": { + "get": { + "operationId": "CollectionPartitionRegion_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseAccountRegionGetMetrics": { + "$ref": "./examples/CosmosDBCollectionPartitionRegionGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given collection and region, split by partition.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/regionParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/collectionRidParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The partition-level metrics for the collection and region were retrieved successfully.", + "schema": { + "$ref": "#/definitions/PartitionMetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/collections/{collectionRid}/partitions/metrics": { + "get": { + "operationId": "CollectionPartition_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseAccountRegionGetMetrics": { + "$ref": "./examples/CosmosDBCollectionPartitionGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given collection, split by partition.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/collectionRidParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The partition-level metrics for the collection were retrieved successfully.", + "schema": { + "$ref": "#/definitions/PartitionMetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/collections/{collectionRid}/partitionKeyRangeId/{partitionKeyRangeId}/metrics": { + "get": { + "operationId": "PartitionKeyRangeId_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseAccountRegionGetMetrics": { + "$ref": "./examples/CosmosDBPKeyRangeIdGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given partition key range id.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/collectionRidParameter" + }, + { + "$ref": "#/parameters/partitionKeyRangeIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The partition-level metrics for the partition key range id were retrieved successfully.", + "schema": { + "$ref": "#/definitions/PartitionMetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/region/{region}/databases/{databaseRid}/collections/{collectionRid}/partitionKeyRangeId/{partitionKeyRangeId}/metrics": { + "get": { + "operationId": "PartitionKeyRangeIdRegion_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseAccountRegionGetMetrics": { + "$ref": "./examples/CosmosDBPKeyRangeIdRegionGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given partition key range id and region.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/regionParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/collectionRidParameter" + }, + { + "$ref": "#/parameters/partitionKeyRangeIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The partition-level metrics for the partition key range id and region were retrieved successfully.", + "schema": { + "$ref": "#/definitions/PartitionMetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/usages": { + "get": { + "operationId": "DatabaseAccounts_ListUsages", + "x-ms-examples": { + "CosmosDBDatabaseAccountGetUsages": { + "$ref": "./examples/CosmosDBDatabaseAccountGetUsages.json" + } + }, + "description": "Retrieves the usages (most recent data) for the given database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/usageFilterParameter" + } + ], + "responses": { + "200": { + "description": "The usages for the database account were retrieved successfully.", + "schema": { + "$ref": "#/definitions/UsagesResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/usages": { + "get": { + "operationId": "Database_ListUsages", + "x-ms-examples": { + "CosmosDBDatabaseGetUsages": { + "$ref": "./examples/CosmosDBDatabaseGetUsages.json" + } + }, + "description": "Retrieves the usages (most recent data) for the given database.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/usageFilterParameter" + } + ], + "responses": { + "200": { + "description": "The usages for the database were retrieved successfully.", + "schema": { + "$ref": "#/definitions/UsagesResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/collections/{collectionRid}/usages": { + "get": { + "operationId": "Collection_ListUsages", + "x-ms-examples": { + "CosmosDBCollectionGetUsages": { + "$ref": "./examples/CosmosDBCollectionGetUsages.json" + } + }, + "description": "Retrieves the usages (most recent storage data) for the given collection.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/collectionRidParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/usageFilterParameter" + } + ], + "responses": { + "200": { + "description": "The usages for the collection were retrieved successfully.", + "schema": { + "$ref": "#/definitions/UsagesResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/collections/{collectionRid}/partitions/usages": { + "get": { + "operationId": "CollectionPartition_ListUsages", + "x-ms-examples": { + "CosmosDBCollectionGetUsages": { + "$ref": "./examples/CosmosDBCollectionPartitionGetUsages.json" + } + }, + "description": "Retrieves the usages (most recent storage data) for the given collection, split by partition.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/collectionRidParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/usageFilterParameter" + } + ], + "responses": { + "200": { + "description": "The usages for the collection, per partition were retrieved successfully.", + "schema": { + "$ref": "#/definitions/PartitionUsagesResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/metricDefinitions": { + "get": { + "operationId": "Database_ListMetricDefinitions", + "x-ms-examples": { + "CosmosDBDatabaseGetMetricDefinitions": { + "$ref": "./examples/CosmosDBDatabaseGetMetricDefinitions.json" + } + }, + "description": "Retrieves metric definitions for the given database.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The metric definitions for the database were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MetricDefinitionsListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/collections/{collectionRid}/metricDefinitions": { + "get": { + "operationId": "Collection_ListMetricDefinitions", + "x-ms-examples": { + "CosmosDBCollectionGetMetricDefinitions": { + "$ref": "./examples/CosmosDBCollectionGetMetricDefinitions.json" + } + }, + "description": "Retrieves metric definitions for the given collection.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/collectionRidParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The metric definitions for the collection were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MetricDefinitionsListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/metricDefinitions": { + "get": { + "operationId": "DatabaseAccounts_ListMetricDefinitions", + "x-ms-examples": { + "CosmosDBDatabaseAccountGetMetricDefinitions": { + "$ref": "./examples/CosmosDBDatabaseAccountGetMetricDefinitions.json" + } + }, + "description": "Retrieves metric definitions for the given database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The metric definitions for the database account were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MetricDefinitionsListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases": { + "get": { + "operationId": "SqlResources_ListSqlDatabases", + "x-ms-examples": { + "CosmosDBSqlDatabaseList": { + "$ref": "./examples/CosmosDBSqlDatabaseList.json" + } + }, + "description": "Lists the SQL databases under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The SQL database properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/SqlDatabaseListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}": { + "get": { + "operationId": "SqlResources_GetSqlDatabase", + "x-ms-examples": { + "CosmosDBSqlDatabaseGet": { + "$ref": "./examples/CosmosDBSqlDatabaseGet.json" + } + }, + "description": "Gets the SQL database under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The SQL database property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/SqlDatabaseGetResults" + } + } + } + }, + "put": { + "operationId": "SqlResources_CreateUpdateSqlDatabase", + "x-ms-examples": { + "CosmosDBSqlDatabaseCreateUpdate": { + "$ref": "./examples/CosmosDBSqlDatabaseCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB SQL database", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateSqlDatabaseParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SqlDatabaseCreateUpdateParameters" + }, + "description": "The parameters to provide for the current SQL database." + } + ], + "responses": { + "202": { + "description": "The SQL database create or update operation will complete asynchronously." + }, + "200": { + "description": "The SQL database create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/SqlDatabaseGetResults" + } + } + } + }, + "delete": { + "operationId": "SqlResources_DeleteSqlDatabase", + "x-ms-examples": { + "CosmosDBSqlDatabaseDelete": { + "$ref": "./examples/CosmosDBSqlDatabaseDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB SQL database.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The SQL database delete operation will complete asynchronously." + }, + "204": { + "description": "The SQL database delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/throughputSettings/default": { + "get": { + "operationId": "SqlResources_GetSqlDatabaseThroughput", + "x-ms-examples": { + "CosmosDBSqlDatabaseThroughputGet": { + "$ref": "./examples/CosmosDBSqlDatabaseThroughputGet.json" + } + }, + "description": "Gets the RUs per second of the SQL database under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The RUs per second of the SQL database was retrieved successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + }, + "put": { + "operationId": "SqlResources_UpdateSqlDatabaseThroughput", + "x-ms-examples": { + "CosmosDBSqlDatabaseThroughputUpdate": { + "$ref": "./examples/CosmosDBSqlDatabaseThroughputUpdate.json" + } + }, + "description": "Update RUs per second of an Azure Cosmos DB SQL database", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "updateThroughputParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThroughputSettingsUpdateParameters" + }, + "description": "The parameters to provide for the RUs per second of the current SQL database." + } + ], + "responses": { + "202": { + "description": "The RUs per second of the SQL database update operation will complete asynchronously." + }, + "200": { + "description": "The RUs per second of the SQL database update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/throughputSettings/default/migrateToAutoscale": { + "post": { + "operationId": "SqlResources_MigrateSqlDatabaseToAutoscale", + "x-ms-examples": { + "CosmosDBSqlDatabaseMigrateToAutoscale": { + "$ref": "./examples/CosmosDBSqlDatabaseMigrateToAutoscale.json" + } + }, + "description": "Migrate an Azure Cosmos DB SQL database from manual throughput to autoscale", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The SQL database migrate operation will complete asynchronously." + }, + "200": { + "description": "The SQL database migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/throughputSettings/default/migrateToManualThroughput": { + "post": { + "operationId": "SqlResources_MigrateSqlDatabaseToManualThroughput", + "x-ms-examples": { + "CosmosDBSqlDatabaseMigrateToManualThroughput": { + "$ref": "./examples/CosmosDBSqlDatabaseMigrateToManualThroughput.json" + } + }, + "description": "Migrate an Azure Cosmos DB SQL database from autoscale to manual throughput", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The SQL database migrate operation will complete asynchronously." + }, + "200": { + "description": "The SQL database migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers": { + "get": { + "operationId": "SqlResources_ListSqlContainers", + "x-ms-examples": { + "CosmosDBSqlContainerList": { + "$ref": "./examples/CosmosDBSqlContainerList.json" + } + }, + "description": "Lists the SQL container under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The SQL container properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/SqlContainerListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}": { + "get": { + "operationId": "SqlResources_GetSqlContainer", + "x-ms-examples": { + "CosmosDBSqlContainerGet": { + "$ref": "./examples/CosmosDBSqlContainerGet.json" + } + }, + "description": "Gets the SQL container under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The SQL container property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/SqlContainerGetResults" + } + } + } + }, + "put": { + "operationId": "SqlResources_CreateUpdateSqlContainer", + "x-ms-examples": { + "CosmosDBSqlContainerCreateUpdate": { + "$ref": "./examples/CosmosDBSqlContainerCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB SQL container", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateSqlContainerParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SqlContainerCreateUpdateParameters" + }, + "description": "The parameters to provide for the current SQL container." + } + ], + "responses": { + "202": { + "description": "The SQL container create or update operation will complete asynchronously." + }, + "200": { + "description": "The SQL container create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/SqlContainerGetResults" + } + } + } + }, + "delete": { + "operationId": "SqlResources_DeleteSqlContainer", + "x-ms-examples": { + "CosmosDBSqlContainerDelete": { + "$ref": "./examples/CosmosDBSqlContainerDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB SQL container.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The SQL container delete operation will complete asynchronously." + }, + "204": { + "description": "The SQL container delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/throughputSettings/default": { + "get": { + "operationId": "SqlResources_GetSqlContainerThroughput", + "x-ms-examples": { + "CosmosDBSqlContainerThroughputGet": { + "$ref": "./examples/CosmosDBSqlContainerThroughputGet.json" + } + }, + "description": "Gets the RUs per second of the SQL container under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The RUs per second of the SQL container was retrieved successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + }, + "put": { + "operationId": "SqlResources_UpdateSqlContainerThroughput", + "x-ms-examples": { + "CosmosDBSqlContainerThroughputUpdate": { + "$ref": "./examples/CosmosDBSqlContainerThroughputUpdate.json" + } + }, + "description": "Update RUs per second of an Azure Cosmos DB SQL container", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "updateThroughputParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThroughputSettingsUpdateParameters" + }, + "description": "The parameters to provide for the RUs per second of the current SQL container." + } + ], + "responses": { + "202": { + "description": "The RUs per second of the SQL container update operation will complete asynchronously." + }, + "200": { + "description": "The RUs per second of the SQL container update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/throughputSettings/default/migrateToAutoscale": { + "post": { + "operationId": "SqlResources_MigrateSqlContainerToAutoscale", + "x-ms-examples": { + "CosmosDBSqlContainerMigrateToAutoscale": { + "$ref": "./examples/CosmosDBSqlContainerMigrateToAutoscale.json" + } + }, + "description": "Migrate an Azure Cosmos DB SQL container from manual throughput to autoscale", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The SQL container migrate operation will complete asynchronously." + }, + "200": { + "description": "The SQL container migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/throughputSettings/default/migrateToManualThroughput": { + "post": { + "operationId": "SqlResources_MigrateSqlContainerToManualThroughput", + "x-ms-examples": { + "CosmosDBSqlContainerMigrateToManualThroughput": { + "$ref": "./examples/CosmosDBSqlContainerMigrateToManualThroughput.json" + } + }, + "description": "Migrate an Azure Cosmos DB SQL container from autoscale to manual throughput", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The SQL container migrate operation will complete asynchronously." + }, + "200": { + "description": "The SQL container migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/storedProcedures": { + "get": { + "operationId": "SqlResources_ListSqlStoredProcedures", + "x-ms-examples": { + "CosmosDBSqlStoredProcedureList": { + "$ref": "./examples/CosmosDBSqlStoredProcedureList.json" + } + }, + "description": "Lists the SQL storedProcedure under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The SQL stored procedure properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/SqlStoredProcedureListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/storedProcedures/{storedProcedureName}": { + "get": { + "operationId": "SqlResources_GetSqlStoredProcedure", + "x-ms-examples": { + "CosmosDBSqlStoredProcedureGet": { + "$ref": "./examples/CosmosDBSqlStoredProcedureGet.json" + } + }, + "description": "Gets the SQL storedProcedure under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/storedProcedureNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The SQL storedProcedure property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/SqlStoredProcedureGetResults" + } + } + } + }, + "put": { + "operationId": "SqlResources_CreateUpdateSqlStoredProcedure", + "x-ms-examples": { + "CosmosDBSqlStoredProcedureCreateUpdate": { + "$ref": "./examples/CosmosDBSqlStoredProcedureCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB SQL storedProcedure", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/storedProcedureNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateSqlStoredProcedureParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SqlStoredProcedureCreateUpdateParameters" + }, + "description": "The parameters to provide for the current SQL storedProcedure." + } + ], + "responses": { + "202": { + "description": "The SQL storedProcedure create or update operation will complete asynchronously." + }, + "200": { + "description": "The SQL storedProcedure create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/SqlStoredProcedureGetResults" + } + } + } + }, + "delete": { + "operationId": "SqlResources_DeleteSqlStoredProcedure", + "x-ms-examples": { + "CosmosDBSqlStoredProcedureDelete": { + "$ref": "./examples/CosmosDBSqlStoredProcedureDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB SQL storedProcedure.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/storedProcedureNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The SQL storedProcedure delete operation will complete asynchronously." + }, + "204": { + "description": "The SQL storedProcedure delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/userDefinedFunctions": { + "get": { + "operationId": "SqlResources_ListSqlUserDefinedFunctions", + "x-ms-examples": { + "CosmosDBSqlUserDefinedFunctionList": { + "$ref": "./examples/CosmosDBSqlUserDefinedFunctionList.json" + } + }, + "description": "Lists the SQL userDefinedFunction under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The SQL userDefinedFunction properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/SqlUserDefinedFunctionListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/userDefinedFunctions/{userDefinedFunctionName}": { + "get": { + "operationId": "SqlResources_GetSqlUserDefinedFunction", + "x-ms-examples": { + "CosmosDBSqlUserDefinedFunctionGet": { + "$ref": "./examples/CosmosDBSqlUserDefinedFunctionGet.json" + } + }, + "description": "Gets the SQL userDefinedFunction under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/userDefinedFunctionNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The SQL userDefinedFunction property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/SqlUserDefinedFunctionGetResults" + } + } + } + }, + "put": { + "operationId": "SqlResources_CreateUpdateSqlUserDefinedFunction", + "x-ms-examples": { + "CosmosDBSqlUserDefinedFunctionCreateUpdate": { + "$ref": "./examples/CosmosDBSqlUserDefinedFunctionCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB SQL userDefinedFunction", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/userDefinedFunctionNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateSqlUserDefinedFunctionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SqlUserDefinedFunctionCreateUpdateParameters" + }, + "description": "The parameters to provide for the current SQL userDefinedFunction." + } + ], + "responses": { + "202": { + "description": "The SQL userDefinedFunction create or update operation will complete asynchronously." + }, + "200": { + "description": "The SQL userDefinedFunction create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/SqlUserDefinedFunctionGetResults" + } + } + } + }, + "delete": { + "operationId": "SqlResources_DeleteSqlUserDefinedFunction", + "x-ms-examples": { + "CosmosDBSqlUserDefinedFunctionDelete": { + "$ref": "./examples/CosmosDBSqlUserDefinedFunctionDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB SQL userDefinedFunction.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/userDefinedFunctionNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The SQL userDefinedFunction delete operation will complete asynchronously." + }, + "204": { + "description": "The SQL userDefinedFunction delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/triggers": { + "get": { + "operationId": "SqlResources_ListSqlTriggers", + "x-ms-examples": { + "CosmosDBSqlTriggerList": { + "$ref": "./examples/CosmosDBSqlTriggerList.json" + } + }, + "description": "Lists the SQL trigger under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The SQL trigger properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/SqlTriggerListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/triggers/{triggerName}": { + "get": { + "operationId": "SqlResources_GetSqlTrigger", + "x-ms-examples": { + "CosmosDBSqlTriggerGet": { + "$ref": "./examples/CosmosDBSqlTriggerGet.json" + } + }, + "description": "Gets the SQL trigger under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/triggerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The SQL trigger property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/SqlTriggerGetResults" + } + } + } + }, + "put": { + "operationId": "SqlResources_CreateUpdateSqlTrigger", + "x-ms-examples": { + "CosmosDBSqlTriggerCreateUpdate": { + "$ref": "./examples/CosmosDBSqlTriggerCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB SQL trigger", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/triggerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateSqlTriggerParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SqlTriggerCreateUpdateParameters" + }, + "description": "The parameters to provide for the current SQL trigger." + } + ], + "responses": { + "202": { + "description": "The SQL trigger create or update operation will complete asynchronously." + }, + "200": { + "description": "The SQL trigger create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/SqlTriggerGetResults" + } + } + } + }, + "delete": { + "operationId": "SqlResources_DeleteSqlTrigger", + "x-ms-examples": { + "CosmosDBSqlTriggerDelete": { + "$ref": "./examples/CosmosDBSqlTriggerDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB SQL trigger.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/triggerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The SQL trigger delete operation will complete asynchronously." + }, + "204": { + "description": "The SQL trigger delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases": { + "get": { + "operationId": "MongoDBResources_ListMongoDBDatabases", + "x-ms-examples": { + "CosmosDBMongoDBDatabaseList": { + "$ref": "./examples/CosmosDBMongoDBDatabaseList.json" + } + }, + "description": "Lists the MongoDB databases under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The MongoDB database properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MongoDBDatabaseListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}": { + "get": { + "operationId": "MongoDBResources_GetMongoDBDatabase", + "x-ms-examples": { + "CosmosDBMongoDBDatabaseGet": { + "$ref": "./examples/CosmosDBMongoDBDatabaseGet.json" + } + }, + "description": "Gets the MongoDB databases under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The MongoDB database property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/MongoDBDatabaseGetResults" + } + } + } + }, + "put": { + "operationId": "MongoDBResources_CreateUpdateMongoDBDatabase", + "x-ms-examples": { + "CosmosDBMongoDBDatabaseCreateUpdate": { + "$ref": "./examples/CosmosDBMongoDBDatabaseCreateUpdate.json" + } + }, + "description": "Create or updates Azure Cosmos DB MongoDB database", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateMongoDBDatabaseParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/MongoDBDatabaseCreateUpdateParameters" + }, + "description": "The parameters to provide for the current MongoDB database." + } + ], + "responses": { + "202": { + "description": "The MongoDB database create or update operation will complete asynchronously." + }, + "200": { + "description": "The MongoDB database create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/MongoDBDatabaseGetResults" + } + } + } + }, + "delete": { + "operationId": "MongoDBResources_DeleteMongoDBDatabase", + "x-ms-examples": { + "CosmosDBMongoDBDatabaseDelete": { + "$ref": "./examples/CosmosDBMongoDBDatabaseDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB MongoDB database.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The MongoDB database delete operation will complete asynchronously." + }, + "204": { + "description": "The MongoDB database delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}/throughputSettings/default": { + "get": { + "operationId": "MongoDBResources_GetMongoDBDatabaseThroughput", + "x-ms-examples": { + "CosmosDBMongoDBDatabaseThroughputGet": { + "$ref": "./examples/CosmosDBMongoDBDatabaseThroughputGet.json" + } + }, + "description": "Gets the RUs per second of the MongoDB database under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The RUs per second of the MongoDB database was retrieved successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + }, + "put": { + "operationId": "MongoDBResources_UpdateMongoDBDatabaseThroughput", + "x-ms-examples": { + "CosmosDBMongoDBDatabaseThroughputUpdate": { + "$ref": "./examples/CosmosDBMongoDBDatabaseThroughputUpdate.json" + } + }, + "description": "Update RUs per second of the an Azure Cosmos DB MongoDB database", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "updateThroughputParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThroughputSettingsUpdateParameters" + }, + "description": "The RUs per second of the parameters to provide for the current MongoDB database." + } + ], + "responses": { + "202": { + "description": "The RUs per second of the MongoDB database update operation will complete asynchronously." + }, + "200": { + "description": "The RUs per second of the MongoDB database update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}/throughputSettings/default/migrateToAutoscale": { + "post": { + "operationId": "MongoDBResources_MigrateMongoDBDatabaseToAutoscale", + "x-ms-examples": { + "CosmosDBMongoDBDatabaseMigrateToAutoscale": { + "$ref": "./examples/CosmosDBMongoDBDatabaseMigrateToAutoscale.json" + } + }, + "description": "Migrate an Azure Cosmos DB MongoDB database from manual throughput to autoscale", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The MongoDB database migrate operation will complete asynchronously." + }, + "200": { + "description": "The MongoDB database migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}/throughputSettings/default/migrateToManualThroughput": { + "post": { + "operationId": "MongoDBResources_MigrateMongoDBDatabaseToManualThroughput", + "x-ms-examples": { + "CosmosDBMongoDBDatabaseMigrateToManualThroughput": { + "$ref": "./examples/CosmosDBMongoDBDatabaseMigrateToManualThroughput.json" + } + }, + "description": "Migrate an Azure Cosmos DB MongoDB database from autoscale to manual throughput", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The MongoDB database migrate operation will complete asynchronously." + }, + "200": { + "description": "The MongoDB database migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}/collections": { + "get": { + "operationId": "MongoDBResources_ListMongoDBCollections", + "x-ms-examples": { + "CosmosDBMongoDBCollectionList": { + "$ref": "./examples/CosmosDBMongoDBCollectionList.json" + } + }, + "description": "Lists the MongoDB collection under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The MongoDB collection properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MongoDBCollectionListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}/collections/{collectionName}": { + "get": { + "operationId": "MongoDBResources_GetMongoDBCollection", + "x-ms-examples": { + "CosmosDBMongoDBCollectionGet": { + "$ref": "./examples/CosmosDBMongoDBCollectionGet.json" + } + }, + "description": "Gets the MongoDB collection under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/collectionNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The MongoDB collection property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/MongoDBCollectionGetResults" + } + } + } + }, + "put": { + "operationId": "MongoDBResources_CreateUpdateMongoDBCollection", + "x-ms-examples": { + "CosmosDBMongoDBCollectionCreateUpdate": { + "$ref": "./examples/CosmosDBMongoDBCollectionCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB MongoDB Collection", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/collectionNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateMongoDBCollectionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/MongoDBCollectionCreateUpdateParameters" + }, + "description": "The parameters to provide for the current MongoDB Collection." + } + ], + "responses": { + "202": { + "description": "The MongoDB Collection create or update operation will complete asynchronously." + }, + "200": { + "description": "The MongoDB Collection create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/MongoDBCollectionGetResults" + } + } + } + }, + "delete": { + "operationId": "MongoDBResources_DeleteMongoDBCollection", + "x-ms-examples": { + "CosmosDBMongoDBCollectionDelete": { + "$ref": "./examples/CosmosDBMongoDBCollectionDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB MongoDB Collection.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/collectionNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The MongoDB collection delete operation will complete asynchronously." + }, + "204": { + "description": "The MongoDB collection delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}/collections/{collectionName}/throughputSettings/default": { + "get": { + "operationId": "MongoDBResources_GetMongoDBCollectionThroughput", + "x-ms-examples": { + "CosmosDBMongoDBCollectionThroughputGet": { + "$ref": "./examples/CosmosDBMongoDBCollectionThroughputGet.json" + } + }, + "description": "Gets the RUs per second of the MongoDB collection under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/collectionNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The RUs per second of the MongoDB collection was retrieved successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + }, + "put": { + "operationId": "MongoDBResources_UpdateMongoDBCollectionThroughput", + "x-ms-examples": { + "CosmosDBMongoDBCollectionThroughputUpdate": { + "$ref": "./examples/CosmosDBMongoDBCollectionThroughputUpdate.json" + } + }, + "description": "Update the RUs per second of an Azure Cosmos DB MongoDB collection", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/collectionNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "updateThroughputParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThroughputSettingsUpdateParameters" + }, + "description": "The RUs per second of the parameters to provide for the current MongoDB collection." + } + ], + "responses": { + "202": { + "description": "The RUs per second of the MongoDB collection update operation will complete asynchronously." + }, + "200": { + "description": "The RUs per second of the MongoDB collection update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}/collections/{collectionName}/throughputSettings/default/migrateToAutoscale": { + "post": { + "operationId": "MongoDBResources_MigrateMongoDBCollectionToAutoscale", + "x-ms-examples": { + "CosmosDBMongoDBCollectionMigrateToAutoscale": { + "$ref": "./examples/CosmosDBMongoDBCollectionMigrateToAutoscale.json" + } + }, + "description": "Migrate an Azure Cosmos DB MongoDB collection from manual throughput to autoscale", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/collectionNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The MongoDB collection migrate operation will complete asynchronously." + }, + "200": { + "description": "The MongoDB collection migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}/collections/{collectionName}/throughputSettings/default/migrateToManualThroughput": { + "post": { + "operationId": "MongoDBResources_MigrateMongoDBCollectionToManualThroughput", + "x-ms-examples": { + "CosmosDBMongoDBCollectionMigrateToManualThroughput": { + "$ref": "./examples/CosmosDBMongoDBCollectionMigrateToManualThroughput.json" + } + }, + "description": "Migrate an Azure Cosmos DB MongoDB collection from autoscale to manual throughput", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/collectionNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The MongoDB collection migrate operation will complete asynchronously." + }, + "200": { + "description": "The MongoDB collection migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/tables": { + "get": { + "operationId": "TableResources_ListTables", + "x-ms-examples": { + "CosmosDBTableList": { + "$ref": "./examples/CosmosDBTableList.json" + } + }, + "description": "Lists the Tables under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Table properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/TableListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/tables/{tableName}": { + "get": { + "operationId": "TableResources_GetTable", + "x-ms-examples": { + "CosmosDBTableGet": { + "$ref": "./examples/CosmosDBTableGet.json" + } + }, + "description": "Gets the Tables under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Table property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/TableGetResults" + } + } + } + }, + "put": { + "operationId": "TableResources_CreateUpdateTable", + "x-ms-examples": { + "CosmosDBTableReplace": { + "$ref": "./examples/CosmosDBTableCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB Table", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateTableParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TableCreateUpdateParameters" + }, + "description": "The parameters to provide for the current Table." + } + ], + "responses": { + "202": { + "description": "The Table create or update operation will complete asynchronously." + }, + "200": { + "description": "The Table create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/TableGetResults" + } + } + } + }, + "delete": { + "operationId": "TableResources_DeleteTable", + "x-ms-examples": { + "CosmosDBTableDelete": { + "$ref": "./examples/CosmosDBTableDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB Table.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Table delete operation will complete asynchronously." + }, + "204": { + "description": "The Table delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/tables/{tableName}/throughputSettings/default": { + "get": { + "operationId": "TableResources_GetTableThroughput", + "x-ms-examples": { + "CosmosDBTableThroughputGet": { + "$ref": "./examples/CosmosDBTableThroughputGet.json" + } + }, + "description": "Gets the RUs per second of the Table under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The RUs per second of the Table was retrieved successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + }, + "put": { + "operationId": "TableResources_UpdateTableThroughput", + "x-ms-examples": { + "CosmosDBTableThroughputUpdate": { + "$ref": "./examples/CosmosDBTableThroughputUpdate.json" + } + }, + "description": "Update RUs per second of an Azure Cosmos DB Table", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "updateThroughputParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThroughputSettingsUpdateParameters" + }, + "description": "The parameters to provide for the RUs per second of the current Table." + } + ], + "responses": { + "202": { + "description": "The RUs per second of the Table update operation will complete asynchronously." + }, + "200": { + "description": "The RUs per second of the Table update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/tables/{tableName}/throughputSettings/default/migrateToAutoscale": { + "post": { + "operationId": "TableResources_MigrateTableToAutoscale", + "x-ms-examples": { + "CosmosDBTableMigrateToAutoscale": { + "$ref": "./examples/CosmosDBTableMigrateToAutoscale.json" + } + }, + "description": "Migrate an Azure Cosmos DB Table from manual throughput to autoscale", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Table migrate operation will complete asynchronously." + }, + "200": { + "description": "The Table migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/tables/{tableName}/throughputSettings/default/migrateToManualThroughput": { + "post": { + "operationId": "TableResources_MigrateTableToManualThroughput", + "x-ms-examples": { + "CosmosDBTableMigrateToManualThroughput": { + "$ref": "./examples/CosmosDBTableMigrateToManualThroughput.json" + } + }, + "description": "Migrate an Azure Cosmos DB Table from autoscale to manual throughput", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Table migrate operation will complete asynchronously." + }, + "200": { + "description": "The Table migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces": { + "get": { + "operationId": "CassandraResources_ListCassandraKeyspaces", + "x-ms-examples": { + "CosmosDBCassandraKeyspaceList": { + "$ref": "./examples/CosmosDBCassandraKeyspaceList.json" + } + }, + "description": "Lists the Cassandra keyspaces under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Cassandra keyspace properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/CassandraKeyspaceListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}": { + "get": { + "operationId": "CassandraResources_GetCassandraKeyspace", + "x-ms-examples": { + "CosmosDBCassandraKeyspaceGet": { + "$ref": "./examples/CosmosDBCassandraKeyspaceGet.json" + } + }, + "description": "Gets the Cassandra keyspaces under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Cassandra keyspace property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/CassandraKeyspaceGetResults" + } + } + } + }, + "put": { + "operationId": "CassandraResources_CreateUpdateCassandraKeyspace", + "x-ms-examples": { + "CosmosDBCassandraKeyspaceCreateUpdate": { + "$ref": "./examples/CosmosDBCassandraKeyspaceCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB Cassandra keyspace", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateCassandraKeyspaceParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CassandraKeyspaceCreateUpdateParameters" + }, + "description": "The parameters to provide for the current Cassandra keyspace." + } + ], + "responses": { + "202": { + "description": "The Cassandra keyspace create or update operation will complete asynchronously." + }, + "200": { + "description": "The Cassandra keyspace create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/CassandraKeyspaceGetResults" + } + } + } + }, + "delete": { + "operationId": "CassandraResources_DeleteCassandraKeyspace", + "x-ms-examples": { + "CosmosDBCassandraKeyspaceDelete": { + "$ref": "./examples/CosmosDBCassandraKeyspaceDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB Cassandra keyspace.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Cassandra keyspace delete operation will complete asynchronously." + }, + "204": { + "description": "The Cassandra keyspace delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/throughputSettings/default": { + "get": { + "operationId": "CassandraResources_GetCassandraKeyspaceThroughput", + "x-ms-examples": { + "CosmosDBCassandraKeyspaceThroughputGet": { + "$ref": "./examples/CosmosDBCassandraKeyspaceThroughputGet.json" + } + }, + "description": "Gets the RUs per second of the Cassandra Keyspace under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The RUs per second of the Cassandra Keyspace was retrieved successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + }, + "put": { + "operationId": "CassandraResources_UpdateCassandraKeyspaceThroughput", + "x-ms-examples": { + "CosmosDBCassandraKeyspaceThroughputUpdate": { + "$ref": "./examples/CosmosDBCassandraKeyspaceThroughputUpdate.json" + } + }, + "description": "Update RUs per second of an Azure Cosmos DB Cassandra Keyspace", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "updateThroughputParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThroughputSettingsUpdateParameters" + }, + "description": "The RUs per second of the parameters to provide for the current Cassandra Keyspace." + } + ], + "responses": { + "202": { + "description": "The RUs per second of the Cassandra Keyspace update operation will complete asynchronously." + }, + "200": { + "description": "The RUs per second of the Cassandra Keyspace update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/throughputSettings/default/migrateToAutoscale": { + "post": { + "operationId": "CassandraResources_MigrateCassandraKeyspaceToAutoscale", + "x-ms-examples": { + "CosmosDBCassandraKeyspaceMigrateToAutoscale": { + "$ref": "./examples/CosmosDBCassandraKeyspaceMigrateToAutoscale.json" + } + }, + "description": "Migrate an Azure Cosmos DB Cassandra Keyspace from manual throughput to autoscale", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Cassandra Keyspace migrate operation will complete asynchronously." + }, + "200": { + "description": "The Cassandra Keyspace migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/throughputSettings/default/migrateToManualThroughput": { + "post": { + "operationId": "CassandraResources_MigrateCassandraKeyspaceToManualThroughput", + "x-ms-examples": { + "CosmosDBCassandraKeyspaceMigrateToManualThroughput": { + "$ref": "./examples/CosmosDBCassandraKeyspaceMigrateToManualThroughput.json" + } + }, + "description": "Migrate an Azure Cosmos DB Cassandra Keyspace from autoscale to manual throughput", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Cassandra Keyspace migrate operation will complete asynchronously." + }, + "200": { + "description": "The Cassandra Keyspace migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/tables": { + "get": { + "operationId": "CassandraResources_ListCassandraTables", + "x-ms-examples": { + "CosmosDBCassandraTableList": { + "$ref": "./examples/CosmosDBCassandraTableList.json" + } + }, + "description": "Lists the Cassandra table under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Cassandra table properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/CassandraTableListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/tables/{tableName}": { + "get": { + "operationId": "CassandraResources_GetCassandraTable", + "x-ms-examples": { + "CosmosDBCassandraTableGet": { + "$ref": "./examples/CosmosDBCassandraTableGet.json" + } + }, + "description": "Gets the Cassandra table under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Cassandra table property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/CassandraTableGetResults" + } + } + } + }, + "put": { + "operationId": "CassandraResources_CreateUpdateCassandraTable", + "x-ms-examples": { + "CosmosDBCassandraTableCreateUpdate": { + "$ref": "./examples/CosmosDBCassandraTableCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB Cassandra Table", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateCassandraTableParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CassandraTableCreateUpdateParameters" + }, + "description": "The parameters to provide for the current Cassandra Table." + } + ], + "responses": { + "202": { + "description": "The Cassandra Table create or update operation will complete asynchronously." + }, + "200": { + "description": "The Cassandra Table create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/CassandraTableGetResults" + } + } + } + }, + "delete": { + "operationId": "CassandraResources_DeleteCassandraTable", + "x-ms-examples": { + "CosmosDBCassandraTableDelete": { + "$ref": "./examples/CosmosDBCassandraTableDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB Cassandra table.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Cassandra table delete operation will complete asynchronously." + }, + "204": { + "description": "The Cassandra table delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/tables/{tableName}/throughputSettings/default": { + "get": { + "operationId": "CassandraResources_GetCassandraTableThroughput", + "x-ms-examples": { + "CosmosDBCassandraTableThroughputGet": { + "$ref": "./examples/CosmosDBCassandraTableThroughputGet.json" + } + }, + "description": "Gets the RUs per second of the Cassandra table under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The RUs per second of the Cassandra table was retrieved successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + }, + "put": { + "operationId": "CassandraResources_UpdateCassandraTableThroughput", + "x-ms-examples": { + "CosmosDBCassandraTableThroughputUpdate": { + "$ref": "./examples/CosmosDBCassandraTableThroughputUpdate.json" + } + }, + "description": "Update RUs per second of an Azure Cosmos DB Cassandra table", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "updateThroughputParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThroughputSettingsUpdateParameters" + }, + "description": "The RUs per second of the parameters to provide for the current Cassandra table." + } + ], + "responses": { + "202": { + "description": "The RUs per second of the Cassandra table update operation will complete asynchronously." + }, + "200": { + "description": "The RUs per second of the Cassandra table update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/tables/{tableName}/throughputSettings/default/migrateToAutoscale": { + "post": { + "operationId": "CassandraResources_MigrateCassandraTableToAutoscale", + "x-ms-examples": { + "CosmosDBCassandraTableMigrateToAutoscale": { + "$ref": "./examples/CosmosDBCassandraTableMigrateToAutoscale.json" + } + }, + "description": "Migrate an Azure Cosmos DB Cassandra table from manual throughput to autoscale", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Cassandra table migrate operation will complete asynchronously." + }, + "200": { + "description": "The Cassandra table migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/tables/{tableName}/throughputSettings/default/migrateToManualThroughput": { + "post": { + "operationId": "CassandraResources_MigrateCassandraTableToManualThroughput", + "x-ms-examples": { + "CosmosDBCassandraTableMigrateToManualThroughput": { + "$ref": "./examples/CosmosDBCassandraTableMigrateToManualThroughput.json" + } + }, + "description": "Migrate an Azure Cosmos DB Cassandra table from autoscale to manual throughput", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Cassandra table migrate operation will complete asynchronously." + }, + "200": { + "description": "The Cassandra table migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases": { + "get": { + "operationId": "GremlinResources_ListGremlinDatabases", + "x-ms-examples": { + "CosmosDBGremlinDatabaseList": { + "$ref": "./examples/CosmosDBGremlinDatabaseList.json" + } + }, + "description": "Lists the Gremlin databases under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Gremlin database properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/GremlinDatabaseListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases/{databaseName}": { + "get": { + "operationId": "GremlinResources_GetGremlinDatabase", + "x-ms-examples": { + "CosmosDBGremlinDatabaseGet": { + "$ref": "./examples/CosmosDBGremlinDatabaseGet.json" + } + }, + "description": "Gets the Gremlin databases under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Gremlin database property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/GremlinDatabaseGetResults" + } + } + } + }, + "put": { + "operationId": "GremlinResources_CreateUpdateGremlinDatabase", + "x-ms-examples": { + "CosmosDBGremlinDatabaseCreateUpdate": { + "$ref": "./examples/CosmosDBGremlinDatabaseCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB Gremlin database", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateGremlinDatabaseParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GremlinDatabaseCreateUpdateParameters" + }, + "description": "The parameters to provide for the current Gremlin database." + } + ], + "responses": { + "202": { + "description": "The Gremlin database create or update operation will complete asynchronously." + }, + "200": { + "description": "The Gremlin database create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/GremlinDatabaseGetResults" + } + } + } + }, + "delete": { + "operationId": "GremlinResources_DeleteGremlinDatabase", + "x-ms-examples": { + "CosmosDBGremlinDatabaseDelete": { + "$ref": "./examples/CosmosDBGremlinDatabaseDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB Gremlin database.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Gremlin database delete operation will complete asynchronously." + }, + "204": { + "description": "The Gremlin database delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases/{databaseName}/throughputSettings/default": { + "get": { + "operationId": "GremlinResources_GetGremlinDatabaseThroughput", + "x-ms-examples": { + "CosmosDBGremlinDatabaseThroughputGet": { + "$ref": "./examples/CosmosDBGremlinDatabaseThroughputGet.json" + } + }, + "description": "Gets the RUs per second of the Gremlin database under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The RUs per second of the Gremlin database was retrieved successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + }, + "put": { + "operationId": "GremlinResources_UpdateGremlinDatabaseThroughput", + "x-ms-examples": { + "CosmosDBGremlinDatabaseThroughputUpdate": { + "$ref": "./examples/CosmosDBGremlinDatabaseThroughputUpdate.json" + } + }, + "description": "Update RUs per second of an Azure Cosmos DB Gremlin database", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "updateThroughputParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThroughputSettingsUpdateParameters" + }, + "description": "The RUs per second of the parameters to provide for the current Gremlin database." + } + ], + "responses": { + "202": { + "description": "The RUs per second of the Gremlin database update operation will complete asynchronously." + }, + "200": { + "description": "The RUs per second of the Gremlin database update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases/{databaseName}/throughputSettings/default/migrateToAutoscale": { + "post": { + "operationId": "GremlinResources_MigrateGremlinDatabaseToAutoscale", + "x-ms-examples": { + "CosmosDBGremlinDatabaseMigrateToAutoscale": { + "$ref": "./examples/CosmosDBGremlinDatabaseMigrateToAutoscale.json" + } + }, + "description": "Migrate an Azure Cosmos DB Gremlin database from manual throughput to autoscale", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Gremlin database migrate operation will complete asynchronously." + }, + "200": { + "description": "The Gremlin database migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases/{databaseName}/throughputSettings/default/migrateToManualThroughput": { + "post": { + "operationId": "GremlinResources_MigrateGremlinDatabaseToManualThroughput", + "x-ms-examples": { + "CosmosDBGremlinDatabaseMigrateToManualThroughput": { + "$ref": "./examples/CosmosDBGremlinDatabaseMigrateToManualThroughput.json" + } + }, + "description": "Migrate an Azure Cosmos DB Gremlin database from autoscale to manual throughput", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Gremlin database migrate operation will complete asynchronously." + }, + "200": { + "description": "The Gremlin database migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases/{databaseName}/graphs": { + "get": { + "operationId": "GremlinResources_ListGremlinGraphs", + "x-ms-examples": { + "CosmosDBGremlinGraphList": { + "$ref": "./examples/CosmosDBGremlinGraphList.json" + } + }, + "description": "Lists the Gremlin graph under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Gremlin graph properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/GremlinGraphListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases/{databaseName}/graphs/{graphName}": { + "get": { + "operationId": "GremlinResources_GetGremlinGraph", + "x-ms-examples": { + "CosmosDBGremlinGraphGet": { + "$ref": "./examples/CosmosDBGremlinGraphGet.json" + } + }, + "description": "Gets the Gremlin graph under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/graphNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Gremlin graph property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/GremlinGraphGetResults" + } + } + } + }, + "put": { + "operationId": "GremlinResources_CreateUpdateGremlinGraph", + "x-ms-examples": { + "CosmosDBGremlinGraphCreateUpdate": { + "$ref": "./examples/CosmosDBGremlinGraphCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB Gremlin graph", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/graphNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateGremlinGraphParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GremlinGraphCreateUpdateParameters" + }, + "description": "The parameters to provide for the current Gremlin graph." + } + ], + "responses": { + "202": { + "description": "The Gremlin graph create or update operation will complete asynchronously." + }, + "200": { + "description": "The Gremlin graph create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/GremlinGraphGetResults" + } + } + } + }, + "delete": { + "operationId": "GremlinResources_DeleteGremlinGraph", + "x-ms-examples": { + "CosmosDBGremlinGraphDelete": { + "$ref": "./examples/CosmosDBGremlinGraphDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB Gremlin graph.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/graphNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Gremlin graph delete operation will complete asynchronously." + }, + "204": { + "description": "The Gremlin graph delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases/{databaseName}/graphs/{graphName}/throughputSettings/default": { + "get": { + "operationId": "GremlinResources_GetGremlinGraphThroughput", + "x-ms-examples": { + "CosmosDBGremlinGraphThroughputGet": { + "$ref": "./examples/CosmosDBGremlinGraphThroughputGet.json" + } + }, + "description": "Gets the Gremlin graph throughput under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/graphNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The RUs per second of the Gremlin graph was retrieved successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + }, + "put": { + "operationId": "GremlinResources_UpdateGremlinGraphThroughput", + "x-ms-examples": { + "CosmosDBGremlinGraphThroughputUpdate": { + "$ref": "./examples/CosmosDBGremlinGraphThroughputUpdate.json" + } + }, + "description": "Update RUs per second of an Azure Cosmos DB Gremlin graph", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/graphNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "updateThroughputParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThroughputSettingsUpdateParameters" + }, + "description": "The RUs per second of the parameters to provide for the current Gremlin graph." + } + ], + "responses": { + "202": { + "description": "The RUs per second of the Gremlin graph update operation will complete asynchronously." + }, + "200": { + "description": "The RUs per second of the Gremlin graph update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases/{databaseName}/graphs/{graphName}/throughputSettings/default/migrateToAutoscale": { + "post": { + "operationId": "GremlinResources_MigrateGremlinGraphToAutoscale", + "x-ms-examples": { + "CosmosDBGremlinGraphMigrateToAutoscale": { + "$ref": "./examples/CosmosDBGremlinGraphMigrateToAutoscale.json" + } + }, + "description": "Migrate an Azure Cosmos DB Gremlin graph from manual throughput to autoscale", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/graphNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Gremlin graph migrate operation will complete asynchronously." + }, + "200": { + "description": "The Gremlin graph migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases/{databaseName}/graphs/{graphName}/throughputSettings/default/migrateToManualThroughput": { + "post": { + "operationId": "GremlinResources_MigrateGremlinGraphToManualThroughput", + "x-ms-examples": { + "CosmosDBGremlinGraphMigrateToManualThroughput": { + "$ref": "./examples/CosmosDBGremlinGraphMigrateToManualThroughput.json" + } + }, + "description": "Migrate an Azure Cosmos DB Gremlin graph from autoscale to manual throughput", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/graphNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Gremlin graph migrate operation will complete asynchronously." + }, + "200": { + "description": "The Gremlin graph migrate operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "DatabaseAccountsListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/DatabaseAccountGetResults" + }, + "description": "List of database account and their properties." + } + }, + "description": "The List operation response, that contains the database accounts and their properties." + }, + "SqlDatabaseListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SqlDatabaseGetResults" + }, + "description": "List of SQL databases and their properties." + } + }, + "description": "The List operation response, that contains the SQL databases and their properties." + }, + "SqlContainerListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SqlContainerGetResults" + }, + "description": "List of containers and their properties." + } + }, + "description": "The List operation response, that contains the containers and their properties." + }, + "SqlStoredProcedureListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SqlStoredProcedureGetResults" + }, + "description": "List of storedProcedures and their properties." + } + }, + "description": "The List operation response, that contains the storedProcedures and their properties." + }, + "SqlUserDefinedFunctionListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SqlUserDefinedFunctionGetResults" + }, + "description": "List of userDefinedFunctions and their properties." + } + }, + "description": "The List operation response, that contains the userDefinedFunctions and their properties." + }, + "SqlTriggerListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SqlTriggerGetResults" + }, + "description": "List of triggers and their properties." + } + }, + "description": "The List operation response, that contains the triggers and their properties." + }, + "MongoDBDatabaseListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/MongoDBDatabaseGetResults" + }, + "description": "List of MongoDB databases and their properties." + } + }, + "description": "The List operation response, that contains the MongoDB databases and their properties." + }, + "MongoDBCollectionListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/MongoDBCollectionGetResults" + }, + "description": "List of MongoDB collections and their properties." + } + }, + "description": "The List operation response, that contains the MongoDB collections and their properties." + }, + "TableListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/TableGetResults" + }, + "description": "List of Table and their properties." + } + }, + "description": "The List operation response, that contains the Table and their properties." + }, + "CassandraKeyspaceListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/CassandraKeyspaceGetResults" + }, + "description": "List of Cassandra keyspaces and their properties." + } + }, + "description": "The List operation response, that contains the Cassandra keyspaces and their properties." + }, + "CassandraTableListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/CassandraTableGetResults" + }, + "description": "List of Cassandra tables and their properties." + } + }, + "description": "The List operation response, that contains the Cassandra tables and their properties." + }, + "GremlinDatabaseListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/GremlinDatabaseGetResults" + }, + "description": "List of Gremlin databases and their properties." + } + }, + "description": "The List operation response, that contains the Gremlin databases and their properties." + }, + "GremlinGraphListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/GremlinGraphGetResults" + }, + "description": "List of graphs and their properties." + } + }, + "description": "The List operation response, that contains the graphs and their properties." + }, + "ErrorResponse": { + "properties": { + "code": { + "description": "Error code.", + "type": "string" + }, + "message": { + "description": "Error message indicating why the operation failed.", + "type": "string" + } + }, + "description": "Error Response." + }, + "CloudError": { + "x-ms-external": true, + "description": "An error response from the service.", + "properties": { + "error": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "FailoverPolicies": { + "properties": { + "failoverPolicies": { + "type": "array", + "description": "List of failover policies.", + "items": { + "$ref": "#/definitions/FailoverPolicy" + } + } + }, + "required": [ + "failoverPolicies" + ], + "description": "The list of new failover policies for the failover priority change." + }, + "FailoverPolicy": { + "type": "object", + "description": "The failover policy for a given region of a database account.", + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The unique identifier of the region in which the database account replicates to. Example: <accountName>-<locationName>." + }, + "locationName": { + "type": "string", + "description": "The name of the region in which the database account exists." + }, + "failoverPriority": { + "type": "integer", + "minimum": 0, + "format": "int32", + "description": "The failover priority of the region. A failover priority of 0 indicates a write region. The maximum value for a failover priority = (total number of regions - 1). Failover priority values must be unique for each of the regions in which the database account exists." + } + } + }, + "RegionForOnlineOffline": { + "properties": { + "region": { + "type": "string", + "description": "Cosmos DB region, with spaces between words and each word capitalized." + } + }, + "required": [ + "region" + ], + "description": "Cosmos DB region to online or offline." + }, + "Location": { + "description": "A region in which the Azure Cosmos DB database account is deployed.", + "type": "object", + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The unique identifier of the region within the database account. Example: <accountName>-<locationName>." + }, + "locationName": { + "type": "string", + "description": "The name of the region." + }, + "documentEndpoint": { + "type": "string", + "readOnly": true, + "description": "The connection endpoint for the specific region. Example: https://<accountName>-<locationName>.documents.azure.com:443/" + }, + "provisioningState": { + "$ref": "#/definitions/ProvisioningState" + }, + "failoverPriority": { + "description": "The failover priority of the region. A failover priority of 0 indicates a write region. The maximum value for a failover priority = (total number of regions - 1). Failover priority values must be unique for each of the regions in which the database account exists.", + "format": "int32", + "type": "integer", + "minimum": 0 + }, + "isZoneRedundant": { + "type": "boolean", + "description": "Flag to indicate whether or not this region is an AvailabilityZone region" + } + } + }, + "ARMResourceProperties": { + "type": "object", + "description": "The core properties of ARM resources.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The unique resource identifier of the ARM resource." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the ARM resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of Azure resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "tags": { + "$ref": "#/definitions/Tags" + } + }, + "x-ms-azure-resource": true + }, + "ARMProxyResource": { + "type": "object", + "description": "The resource model definition for a ARM proxy resource. It will have everything other than required location and tags", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The unique resource identifier of the database account." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the database account." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of Azure resource." + } + }, + "x-ms-azure-resource": true + }, + "DatabaseAccountGetResults": { + "description": "An Azure Cosmos DB database account.", + "type": "object", + "properties": { + "kind": { + "description": "Indicates the type of database account. This can only be set at database account creation.", + "type": "string", + "default": "GlobalDocumentDB", + "enum": [ + "GlobalDocumentDB", + "MongoDB", + "Parse" + ], + "x-ms-enum": { + "name": "DatabaseAccountKind", + "modelAsString": true + } + }, + "identity": { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DatabaseAccountGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "ExtendedResourceProperties": { + "description": "The system generated resource properties associated with SQL databases, SQL containers, Gremlin databases and Gremlin graphs.", + "type": "object", + "properties": { + "_rid": { + "type": "string", + "description": "A system generated property. A unique identifier.", + "readOnly": true + }, + "_ts": { + "type": "number", + "description": "A system generated property that denotes the last updated timestamp of the resource.", + "readOnly": true + }, + "_etag": { + "type": "string", + "description": "A system generated property representing the resource etag required for optimistic concurrency control.", + "readOnly": true + } + } + }, + "ThroughputSettingsGetResults": { + "description": "An Azure Cosmos DB resource throughput.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB resource throughput", + "$ref": "#/definitions/ThroughputSettingsGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "ThroughputSettingsGetProperties": { + "description": "The properties of an Azure Cosmos DB resource throughput", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/ThroughputSettingsResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + } + } + }, + "SqlDatabaseGetResults": { + "description": "An Azure Cosmos DB SQL database.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB SQL database", + "$ref": "#/definitions/SqlDatabaseGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "SqlDatabaseGetProperties": { + "description": "The properties of an Azure Cosmos DB SQL database", + "type": "object", + "properties": { + "resource": { + "properties": { + "_colls": { + "type": "string", + "description": "A system generated property that specified the addressable path of the collections resource." + }, + "_users": { + "type": "string", + "description": "A system generated property that specifies the addressable path of the users resource." + } + }, + "allOf": [ + { + "$ref": "#/definitions/SqlDatabaseResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + }, + "options": { + "allOf": [ + { + "$ref": "#/definitions/OptionsResource" + } + ] + } + } + }, + "SqlContainerGetResults": { + "description": "An Azure Cosmos DB container.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB container", + "$ref": "#/definitions/SqlContainerGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "SqlContainerGetProperties": { + "description": "The properties of an Azure Cosmos DB container", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/SqlContainerResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + }, + "options": { + "allOf": [ + { + "$ref": "#/definitions/OptionsResource" + } + ] + } + } + }, + "SqlStoredProcedureGetResults": { + "description": "An Azure Cosmos DB storedProcedure.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB storedProcedure", + "$ref": "#/definitions/SqlStoredProcedureGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "SqlStoredProcedureGetProperties": { + "description": "The properties of an Azure Cosmos DB StoredProcedure", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/SqlStoredProcedureResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + } + } + }, + "SqlUserDefinedFunctionGetResults": { + "description": "An Azure Cosmos DB userDefinedFunction.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB userDefinedFunction", + "$ref": "#/definitions/SqlUserDefinedFunctionGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "SqlUserDefinedFunctionGetProperties": { + "description": "The properties of an Azure Cosmos DB userDefinedFunction", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/SqlUserDefinedFunctionResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + } + } + }, + "SqlTriggerGetResults": { + "description": "An Azure Cosmos DB trigger.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB trigger", + "$ref": "#/definitions/SqlTriggerGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "SqlTriggerGetProperties": { + "description": "The properties of an Azure Cosmos DB trigger", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/SqlTriggerResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + } + } + }, + "MongoDBDatabaseGetResults": { + "description": "An Azure Cosmos DB MongoDB database.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB MongoDB database", + "$ref": "#/definitions/MongoDBDatabaseGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "MongoDBDatabaseGetProperties": { + "description": "The properties of an Azure Cosmos DB MongoDB database", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/MongoDBDatabaseResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + }, + "options": { + "allOf": [ + { + "$ref": "#/definitions/OptionsResource" + } + ] + } + } + }, + "MongoDBCollectionGetResults": { + "description": "An Azure Cosmos DB MongoDB collection.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB MongoDB collection", + "$ref": "#/definitions/MongoDBCollectionGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "MongoDBCollectionGetProperties": { + "description": "The properties of an Azure Cosmos DB MongoDB collection", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/MongoDBCollectionResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + }, + "options": { + "allOf": [ + { + "$ref": "#/definitions/OptionsResource" + } + ] + } + } + }, + "TableGetResults": { + "description": "An Azure Cosmos DB Table.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB Table", + "$ref": "#/definitions/TableGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "TableGetProperties": { + "description": "The properties of an Azure Cosmos Table", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/TableResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + }, + "options": { + "allOf": [ + { + "$ref": "#/definitions/OptionsResource" + } + ] + } + } + }, + "CassandraKeyspaceGetResults": { + "description": "An Azure Cosmos DB Cassandra keyspace.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB Cassandra keyspace", + "$ref": "#/definitions/CassandraKeyspaceGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "CassandraKeyspaceGetProperties": { + "description": "The properties of an Azure Cosmos DB Cassandra keyspace", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/CassandraKeyspaceResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + }, + "options": { + "allOf": [ + { + "$ref": "#/definitions/OptionsResource" + } + ] + } + } + }, + "CassandraTableGetResults": { + "description": "An Azure Cosmos DB Cassandra table.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB Cassandra table", + "$ref": "#/definitions/CassandraTableGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "CassandraTableGetProperties": { + "description": "The properties of an Azure Cosmos DB Cassandra table", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/CassandraTableResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + }, + "options": { + "allOf": [ + { + "$ref": "#/definitions/OptionsResource" + } + ] + } + } + }, + "GremlinDatabaseGetResults": { + "description": "An Azure Cosmos DB Gremlin database.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB SQL database", + "$ref": "#/definitions/GremlinDatabaseGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "GremlinDatabaseGetProperties": { + "description": "The properties of an Azure Cosmos DB SQL database", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/GremlinDatabaseResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + }, + "options": { + "allOf": [ + { + "$ref": "#/definitions/OptionsResource" + } + ] + } + } + }, + "GremlinGraphGetResults": { + "description": "An Azure Cosmos DB Gremlin graph.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB Gremlin graph", + "$ref": "#/definitions/GremlinGraphGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "GremlinGraphGetProperties": { + "description": "The properties of an Azure Cosmos DB Gremlin graph", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/GremlinGraphResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + }, + "options": { + "allOf": [ + { + "$ref": "#/definitions/OptionsResource" + } + ] + } + } + }, + "ConsistencyPolicy": { + "type": "object", + "description": "The consistency policy for the Cosmos DB database account.", + "properties": { + "defaultConsistencyLevel": { + "description": "The default consistency level and configuration settings of the Cosmos DB account.", + "type": "string", + "enum": [ + "Eventual", + "Session", + "BoundedStaleness", + "Strong", + "ConsistentPrefix" + ], + "x-ms-enum": { + "name": "DefaultConsistencyLevel", + "modelAsString": false + } + }, + "maxStalenessPrefix": { + "description": "When used with the Bounded Staleness consistency level, this value represents the number of stale requests tolerated. Accepted range for this value is 1 – 2,147,483,647. Required when defaultConsistencyPolicy is set to 'BoundedStaleness'.", + "type": "integer", + "minimum": 1, + "maximum": 2147483647, + "format": "int64" + }, + "maxIntervalInSeconds": { + "description": "When used with the Bounded Staleness consistency level, this value represents the time amount of staleness (in seconds) tolerated. Accepted range for this value is 5 - 86400. Required when defaultConsistencyPolicy is set to 'BoundedStaleness'.", + "type": "integer", + "minimum": 5, + "maximum": 86400, + "format": "int32" + } + }, + "required": [ + "defaultConsistencyLevel" + ] + }, + "CorsPolicy": { + "type": "object", + "description": "The CORS policy for the Cosmos DB database account.", + "properties": { + "allowedOrigins": { + "description": "The origin domains that are permitted to make a request against the service via CORS.", + "type": "string" + }, + "allowedMethods": { + "description": "The methods (HTTP request verbs) that the origin domain may use for a CORS request.", + "type": "string" + }, + "allowedHeaders": { + "description": "The request headers that the origin domain may specify on the CORS request.", + "type": "string" + }, + "exposedHeaders": { + "description": "The response headers that may be sent in the response to the CORS request and exposed by the browser to the request issuer.", + "type": "string" + }, + "maxAgeInSeconds": { + "description": "The maximum amount time that a browser should cache the preflight OPTIONS request.", + "type": "integer", + "minimum": 1, + "maximum": 2147483647, + "format": "int64" + } + }, + "required": [ + "allowedOrigins" + ] + }, + "DatabaseAccountGetProperties": { + "description": "Properties for the database account.", + "type": "object", + "properties": { + "provisioningState": { + "$ref": "#/definitions/ProvisioningState" + }, + "documentEndpoint": { + "description": "The connection endpoint for the Cosmos DB database account.", + "type": "string", + "readOnly": true + }, + "databaseAccountOfferType": { + "description": "The offer type for the Cosmos DB database account. Default value: Standard.", + "readOnly": true, + "$ref": "#/definitions/DatabaseAccountOfferType" + }, + "ipRules": { + "description": "List of IpRules.", + "$ref": "#/definitions/IPRules" + }, + "isVirtualNetworkFilterEnabled": { + "description": "Flag to indicate whether to enable/disable Virtual Network ACL rules.", + "type": "boolean" + }, + "enableAutomaticFailover": { + "description": "Enables automatic failover of the write region in the rare event that the region is unavailable due to an outage. Automatic failover will result in a new write region for the account and is chosen based on the failover priorities configured for the account.", + "type": "boolean" + }, + "consistencyPolicy": { + "description": "The consistency policy for the Cosmos DB database account.", + "$ref": "#/definitions/ConsistencyPolicy" + }, + "capabilities": { + "type": "array", + "description": "List of Cosmos DB capabilities for the account", + "items": { + "$ref": "#/definitions/Capability" + } + }, + "writeLocations": { + "type": "array", + "readOnly": true, + "description": "An array that contains the write location for the Cosmos DB account.", + "items": { + "$ref": "#/definitions/Location" + } + }, + "readLocations": { + "type": "array", + "readOnly": true, + "description": "An array that contains of the read locations enabled for the Cosmos DB account.", + "items": { + "$ref": "#/definitions/Location" + } + }, + "locations": { + "type": "array", + "readOnly": true, + "description": "An array that contains all of the locations enabled for the Cosmos DB account.", + "items": { + "$ref": "#/definitions/Location" + } + }, + "failoverPolicies": { + "type": "array", + "readOnly": true, + "description": "An array that contains the regions ordered by their failover priorities.", + "items": { + "$ref": "#/definitions/FailoverPolicy" + } + }, + "virtualNetworkRules": { + "type": "array", + "description": "List of Virtual Network ACL rules configured for the Cosmos DB account.", + "items": { + "$ref": "#/definitions/VirtualNetworkRule" + } + }, + "privateEndpointConnections": { + "type": "array", + "readOnly": true, + "description": "List of Private Endpoint Connections configured for the Cosmos DB account.", + "items": { + "$ref": "../../stable/2021-05-15/privateEndpointConnection.json#/definitions/PrivateEndpointConnection" + } + }, + "enableMultipleWriteLocations": { + "description": "Enables the account to write in multiple locations", + "type": "boolean" + }, + "enableCassandraConnector": { + "description": "Enables the cassandra connector on the Cosmos DB C* account", + "type": "boolean" + }, + "connectorOffer": { + "description": "The cassandra connector offer type for the Cosmos DB database C* account.", + "$ref": "#/definitions/ConnectorOffer" + }, + "disableKeyBasedMetadataWriteAccess": { + "description": "Disable write operations on metadata resources (databases, containers, throughput) via account keys", + "type": "boolean" + }, + "keyVaultKeyUri": { + "description": "The URI of the key vault", + "type": "string" + }, + "defaultIdentity": { + "description": "The default identity for accessing key vault used in features like customer managed keys. The default identity needs to be explicitly set by the users. It can be \"FirstPartyIdentity\", \"SystemAssignedIdentity\" and more.", + "type": "string" + }, + "publicNetworkAccess": { + "description": "Whether requests from Public Network are allowed", + "$ref": "#/definitions/PublicNetworkAccess" + }, + "enableFreeTier": { + "description": "Flag to indicate whether Free Tier is enabled.", + "type": "boolean" + }, + "apiProperties": { + "description": "API specific properties.", + "type": "object", + "$ref": "#/definitions/ApiProperties" + }, + "enableAnalyticalStorage": { + "description": "Flag to indicate whether to enable storage analytics.", + "type": "boolean" + }, + "analyticalStorageConfiguration": { + "description": "Analytical storage specific properties.", + "type": "object", + "$ref": "#/definitions/AnalyticalStorageConfiguration" + }, + "backupPolicy": { + "description": "The object representing the policy for taking backups on an account.", + "type": "object", + "$ref": "#/definitions/BackupPolicy" + }, + "cors": { + "type": "array", + "description": "The CORS policy for the Cosmos DB database account.", + "items": { + "$ref": "#/definitions/CorsPolicy" + } + }, + "networkAclBypass": { + "description": "Indicates what services are allowed to bypass firewall checks.", + "$ref": "#/definitions/NetworkAclBypass" + }, + "networkAclBypassResourceIds": { + "type": "array", + "description": "An array that contains the Resource Ids for Network Acl Bypass for the Cosmos DB account.", + "items": { + "type": "string" + } + } + } + }, + "DatabaseAccountCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB database accounts.", + "type": "object", + "properties": { + "consistencyPolicy": { + "description": "The consistency policy for the Cosmos DB account.", + "$ref": "#/definitions/ConsistencyPolicy" + }, + "locations": { + "type": "array", + "description": "An array that contains the georeplication locations enabled for the Cosmos DB account.", + "items": { + "$ref": "#/definitions/Location" + } + }, + "databaseAccountOfferType": { + "description": "The offer type for the database", + "$ref": "#/definitions/DatabaseAccountOfferType" + }, + "ipRules": { + "description": "List of IpRules.", + "$ref": "#/definitions/IPRules" + }, + "isVirtualNetworkFilterEnabled": { + "description": "Flag to indicate whether to enable/disable Virtual Network ACL rules.", + "type": "boolean" + }, + "enableAutomaticFailover": { + "description": "Enables automatic failover of the write region in the rare event that the region is unavailable due to an outage. Automatic failover will result in a new write region for the account and is chosen based on the failover priorities configured for the account.", + "type": "boolean" + }, + "capabilities": { + "type": "array", + "description": "List of Cosmos DB capabilities for the account", + "items": { + "$ref": "#/definitions/Capability" + } + }, + "virtualNetworkRules": { + "type": "array", + "description": "List of Virtual Network ACL rules configured for the Cosmos DB account.", + "items": { + "$ref": "#/definitions/VirtualNetworkRule" + } + }, + "enableMultipleWriteLocations": { + "description": "Enables the account to write in multiple locations", + "type": "boolean" + }, + "enableCassandraConnector": { + "description": "Enables the cassandra connector on the Cosmos DB C* account", + "type": "boolean" + }, + "connectorOffer": { + "description": "The cassandra connector offer type for the Cosmos DB database C* account.", + "$ref": "#/definitions/ConnectorOffer" + }, + "disableKeyBasedMetadataWriteAccess": { + "description": "Disable write operations on metadata resources (databases, containers, throughput) via account keys", + "type": "boolean" + }, + "keyVaultKeyUri": { + "description": "The URI of the key vault", + "type": "string" + }, + "defaultIdentity": { + "description": "The default identity for accessing key vault used in features like customer managed keys. The default identity needs to be explicitly set by the users. It can be \"FirstPartyIdentity\", \"SystemAssignedIdentity\" and more.", + "type": "string" + }, + "publicNetworkAccess": { + "description": "Whether requests from Public Network are allowed", + "$ref": "#/definitions/PublicNetworkAccess" + }, + "enableFreeTier": { + "description": "Flag to indicate whether Free Tier is enabled.", + "type": "boolean" + }, + "apiProperties": { + "description": "API specific properties. Currently, supported only for MongoDB API.", + "type": "object", + "$ref": "#/definitions/ApiProperties" + }, + "enableAnalyticalStorage": { + "description": "Flag to indicate whether to enable storage analytics.", + "type": "boolean" + }, + "analyticalStorageConfiguration": { + "description": "Analytical storage specific properties.", + "type": "object", + "$ref": "#/definitions/AnalyticalStorageConfiguration" + }, + "backupPolicy": { + "description": "The object representing the policy for taking backups on an account.", + "type": "object", + "$ref": "#/definitions/BackupPolicy" + }, + "cors": { + "type": "array", + "description": "The CORS policy for the Cosmos DB database account.", + "items": { + "$ref": "#/definitions/CorsPolicy" + } + }, + "networkAclBypass": { + "description": "Indicates what services are allowed to bypass firewall checks.", + "$ref": "#/definitions/NetworkAclBypass" + }, + "networkAclBypassResourceIds": { + "type": "array", + "description": "An array that contains the Resource Ids for Network Acl Bypass for the Cosmos DB account.", + "items": { + "type": "string" + } + } + }, + "required": [ + "locations", + "databaseAccountOfferType" + ] + }, + "DatabaseAccountCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB database accounts.", + "type": "object", + "properties": { + "kind": { + "description": "Indicates the type of database account. This can only be set at database account creation.", + "type": "string", + "default": "GlobalDocumentDB", + "enum": [ + "GlobalDocumentDB", + "MongoDB", + "Parse" + ], + "x-ms-enum": { + "name": "DatabaseAccountKind", + "modelAsString": true + } + }, + "identity": { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DatabaseAccountCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "DatabaseAccountUpdateProperties": { + "description": "Properties to update Azure Cosmos DB database accounts.", + "type": "object", + "properties": { + "consistencyPolicy": { + "description": "The consistency policy for the Cosmos DB account.", + "$ref": "#/definitions/ConsistencyPolicy" + }, + "locations": { + "type": "array", + "description": "An array that contains the georeplication locations enabled for the Cosmos DB account.", + "items": { + "$ref": "#/definitions/Location" + } + }, + "ipRules": { + "description": "List of IpRules.", + "$ref": "#/definitions/IPRules" + }, + "isVirtualNetworkFilterEnabled": { + "description": "Flag to indicate whether to enable/disable Virtual Network ACL rules.", + "type": "boolean" + }, + "enableAutomaticFailover": { + "description": "Enables automatic failover of the write region in the rare event that the region is unavailable due to an outage. Automatic failover will result in a new write region for the account and is chosen based on the failover priorities configured for the account.", + "type": "boolean" + }, + "capabilities": { + "type": "array", + "description": "List of Cosmos DB capabilities for the account", + "items": { + "$ref": "#/definitions/Capability" + } + }, + "virtualNetworkRules": { + "type": "array", + "description": "List of Virtual Network ACL rules configured for the Cosmos DB account.", + "items": { + "$ref": "#/definitions/VirtualNetworkRule" + } + }, + "enableMultipleWriteLocations": { + "description": "Enables the account to write in multiple locations", + "type": "boolean" + }, + "enableCassandraConnector": { + "description": "Enables the cassandra connector on the Cosmos DB C* account", + "type": "boolean" + }, + "connectorOffer": { + "description": "The cassandra connector offer type for the Cosmos DB database C* account.", + "$ref": "#/definitions/ConnectorOffer" + }, + "disableKeyBasedMetadataWriteAccess": { + "description": "Disable write operations on metadata resources (databases, containers, throughput) via account keys", + "type": "boolean" + }, + "keyVaultKeyUri": { + "description": "The URI of the key vault", + "type": "string" + }, + "defaultIdentity": { + "description": "The default identity for accessing key vault used in features like customer managed keys. The default identity needs to be explicitly set by the users. It can be \"FirstPartyIdentity\", \"SystemAssignedIdentity\" and more.", + "type": "string" + }, + "publicNetworkAccess": { + "description": "Whether requests from Public Network are allowed", + "$ref": "#/definitions/PublicNetworkAccess" + }, + "enableFreeTier": { + "description": "Flag to indicate whether Free Tier is enabled.", + "type": "boolean" + }, + "apiProperties": { + "description": "API specific properties. Currently, supported only for MongoDB API.", + "type": "object", + "$ref": "#/definitions/ApiProperties" + }, + "enableAnalyticalStorage": { + "description": "Flag to indicate whether to enable storage analytics.", + "type": "boolean" + }, + "analyticalStorageConfiguration": { + "description": "Analytical storage specific properties.", + "type": "object", + "$ref": "#/definitions/AnalyticalStorageConfiguration" + }, + "backupPolicy": { + "description": "The object representing the policy for taking backups on an account.", + "type": "object", + "$ref": "#/definitions/BackupPolicy" + }, + "cors": { + "type": "array", + "description": "The CORS policy for the Cosmos DB database account.", + "items": { + "$ref": "#/definitions/CorsPolicy" + } + }, + "networkAclBypass": { + "description": "Indicates what services are allowed to bypass firewall checks.", + "$ref": "#/definitions/NetworkAclBypass" + }, + "networkAclBypassResourceIds": { + "type": "array", + "description": "An array that contains the Resource Ids for Network Acl Bypass for the Cosmos DB account.", + "items": { + "type": "string" + } + } + } + }, + "DatabaseAccountUpdateParameters": { + "description": "Parameters for patching Azure Cosmos DB database account properties.", + "type": "object", + "properties": { + "tags": { + "$ref": "#/definitions/Tags" + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "identity": { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DatabaseAccountUpdateProperties" + } + } + }, + "DatabaseAccountListReadOnlyKeysResult": { + "description": "The read-only access keys for the given database account.", + "properties": { + "primaryReadonlyMasterKey": { + "readOnly": true, + "type": "string", + "description": "Base 64 encoded value of the primary read-only key." + }, + "secondaryReadonlyMasterKey": { + "readOnly": true, + "type": "string", + "description": "Base 64 encoded value of the secondary read-only key." + } + } + }, + "DatabaseAccountListKeysResult": { + "description": "The access keys for the given database account.", + "properties": { + "primaryMasterKey": { + "readOnly": true, + "type": "string", + "description": "Base 64 encoded value of the primary read-write key." + }, + "secondaryMasterKey": { + "readOnly": true, + "type": "string", + "description": "Base 64 encoded value of the secondary read-write key." + } + }, + "allOf": [ + { + "$ref": "#/definitions/DatabaseAccountListReadOnlyKeysResult" + } + ] + }, + "DatabaseAccountConnectionString": { + "description": "Connection string for the Cosmos DB account", + "properties": { + "connectionString": { + "readOnly": true, + "type": "string", + "description": "Value of the connection string" + }, + "description": { + "readOnly": true, + "type": "string", + "description": "Description of the connection string" + } + } + }, + "DatabaseAccountListConnectionStringsResult": { + "description": "The connection strings for the given database account.", + "properties": { + "connectionStrings": { + "type": "array", + "description": "An array that contains the connection strings for the Cosmos DB account.", + "items": { + "$ref": "#/definitions/DatabaseAccountConnectionString" + } + } + } + }, + "DatabaseAccountRegenerateKeyParameters": { + "type": "object", + "description": "Parameters to regenerate the keys within the database account.", + "properties": { + "keyKind": { + "type": "string", + "description": "The access key to regenerate.", + "enum": [ + "primary", + "secondary", + "primaryReadonly", + "secondaryReadonly" + ], + "x-ms-enum": { + "name": "KeyKind", + "modelAsString": true + } + } + }, + "required": [ + "keyKind" + ] + }, + "DatabaseAccountOfferType": { + "description": "The offer type for the Cosmos DB database account.", + "type": "string", + "enum": [ + "Standard" + ], + "x-ms-enum": { + "name": "DatabaseAccountOfferType", + "modelAsString": false + } + }, + "ThroughputSettingsUpdateParameters": { + "description": "Parameters to update Cosmos DB resource throughput.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to update Azure Cosmos DB resource throughput.", + "$ref": "#/definitions/ThroughputSettingsUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "ThroughputSettingsUpdateProperties": { + "description": "Properties to update Azure Cosmos DB resource throughput.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a resource throughput", + "$ref": "#/definitions/ThroughputSettingsResource" + } + }, + "required": [ + "resource" + ] + }, + "SqlDatabaseCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB SQL database.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB SQL database.", + "$ref": "#/definitions/SqlDatabaseCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "SqlDatabaseCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB SQL database.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a SQL database", + "$ref": "#/definitions/SqlDatabaseResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource" + ] + }, + "SqlContainerCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB container.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB container.", + "$ref": "#/definitions/SqlContainerCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "SqlContainerCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB container.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a container", + "$ref": "#/definitions/SqlContainerResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource" + ] + }, + "SqlStoredProcedureCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB storedProcedure.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB storedProcedure.", + "$ref": "#/definitions/SqlStoredProcedureCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "SqlStoredProcedureCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB storedProcedure.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a storedProcedure", + "$ref": "#/definitions/SqlStoredProcedureResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource" + ] + }, + "SqlUserDefinedFunctionCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB userDefinedFunction.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB userDefinedFunction.", + "$ref": "#/definitions/SqlUserDefinedFunctionCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "SqlUserDefinedFunctionCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB userDefinedFunction.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a userDefinedFunction", + "$ref": "#/definitions/SqlUserDefinedFunctionResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource" + ] + }, + "SqlTriggerCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB trigger.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB trigger.", + "$ref": "#/definitions/SqlTriggerCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "SqlTriggerCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB trigger.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a trigger", + "$ref": "#/definitions/SqlTriggerResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource" + ] + }, + "MongoDBDatabaseCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB MongoDB database.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB MongoDB database.", + "$ref": "#/definitions/MongoDBDatabaseCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "MongoDBDatabaseCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB MongoDB database.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a MongoDB database", + "$ref": "#/definitions/MongoDBDatabaseResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource" + ] + }, + "MongoDBCollectionCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB MongoDB collection.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB MongoDB collection.", + "$ref": "#/definitions/MongoDBCollectionCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "MongoDBCollectionCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB MongoDB collection.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a MongoDB collection", + "$ref": "#/definitions/MongoDBCollectionResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource" + ] + }, + "TableCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB Table.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB Table.", + "$ref": "#/definitions/TableCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "TableCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB Table.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a Table", + "$ref": "#/definitions/TableResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource" + ] + }, + "CassandraKeyspaceCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB Cassandra keyspace.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB Cassandra keyspace.", + "$ref": "#/definitions/CassandraKeyspaceCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "CassandraKeyspaceCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB Cassandra keyspace.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a Cassandra keyspace", + "$ref": "#/definitions/CassandraKeyspaceResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource" + ] + }, + "CassandraTableCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB Cassandra table.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB Cassandra table.", + "$ref": "#/definitions/CassandraTableCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "CassandraTableCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB Cassandra table.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a Cassandra table", + "$ref": "#/definitions/CassandraTableResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource" + ] + }, + "GremlinDatabaseCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB Gremlin database.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB Gremlin database.", + "$ref": "#/definitions/GremlinDatabaseCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "GremlinDatabaseCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB Gremlin database.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a Gremlin database", + "$ref": "#/definitions/GremlinDatabaseResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource" + ] + }, + "GremlinGraphCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB Gremlin graph.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB Gremlin graph.", + "$ref": "#/definitions/GremlinGraphCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "GremlinGraphCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB Gremlin graph.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a Gremlin graph", + "$ref": "#/definitions/GremlinGraphResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource" + ] + }, + "ThroughputSettingsResource": { + "type": "object", + "description": "Cosmos DB resource throughput object. Either throughput is required or autoscaleSettings is required, but not both.", + "properties": { + "throughput": { + "type": "integer", + "description": "Value of the Cosmos DB resource throughput. Either throughput is required or autoscaleSettings is required, but not both." + }, + "autoscaleSettings": { + "description": "Cosmos DB resource for autoscale settings. Either throughput is required or autoscaleSettings is required, but not both.", + "$ref": "#/definitions/AutoscaleSettingsResource" + }, + "minimumThroughput": { + "type": "string", + "description": "The minimum throughput of the resource", + "readOnly": true + }, + "offerReplacePending": { + "type": "string", + "description": "The throughput replace is pending", + "readOnly": true + } + } + }, + "AutoscaleSettingsResource": { + "type": "object", + "description": "Cosmos DB provisioned throughput settings object", + "properties": { + "maxThroughput": { + "type": "integer", + "description": "Represents maximum throughput container can scale up to." + }, + "autoUpgradePolicy": { + "description": "Cosmos DB resource auto-upgrade policy", + "$ref": "#/definitions/AutoUpgradePolicyResource" + }, + "targetMaxThroughput": { + "type": "integer", + "description": "Represents target maximum throughput container can scale up to once offer is no longer in pending state.", + "readOnly": true + } + }, + "required": [ + "maxThroughput" + ] + }, + "AutoUpgradePolicyResource": { + "type": "object", + "description": "Cosmos DB resource auto-upgrade policy", + "properties": { + "throughputPolicy": { + "description": "Represents throughput policy which service must adhere to for auto-upgrade", + "$ref": "#/definitions/ThroughputPolicyResource" + } + } + }, + "ThroughputPolicyResource": { + "type": "object", + "description": "Cosmos DB resource throughput policy", + "properties": { + "isEnabled": { + "type": "boolean", + "description": "Determines whether the ThroughputPolicy is active or not" + }, + "incrementPercent": { + "type": "integer", + "description": "Represents the percentage by which throughput can increase every time throughput policy kicks in." + } + } + }, + "OptionsResource": { + "type": "object", + "description": "Cosmos DB options resource object", + "readOnly": true, + "properties": { + "throughput": { + "type": "integer", + "description": "Value of the Cosmos DB resource throughput or autoscaleSettings. Use the ThroughputSetting resource when retrieving offer details." + }, + "autoscaleSettings": { + "type": "object", + "$ref": "#/definitions/AutoscaleSettings", + "description": "Specifies the Autoscale settings." + } + } + }, + "SqlDatabaseResource": { + "type": "object", + "description": "Cosmos DB SQL database resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB SQL database" + } + }, + "required": [ + "id" + ] + }, + "SqlContainerResource": { + "type": "object", + "description": "Cosmos DB SQL container resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB SQL container" + }, + "indexingPolicy": { + "$ref": "#/definitions/IndexingPolicy", + "description": "The configuration of the indexing policy. By default, the indexing is automatic for all document paths within the container" + }, + "partitionKey": { + "$ref": "#/definitions/ContainerPartitionKey", + "description": "The configuration of the partition key to be used for partitioning data into multiple partitions" + }, + "defaultTtl": { + "type": "integer", + "description": "Default time to live" + }, + "uniqueKeyPolicy": { + "$ref": "#/definitions/UniqueKeyPolicy", + "description": "The unique key policy configuration for specifying uniqueness constraints on documents in the collection in the Azure Cosmos DB service." + }, + "conflictResolutionPolicy": { + "$ref": "#/definitions/ConflictResolutionPolicy", + "description": "The conflict resolution policy for the container." + }, + "analyticalStorageTtl": { + "type": "integer", + "format": "int64", + "description": "Analytical TTL." + } + }, + "required": [ + "id" + ] + }, + "IndexingPolicy": { + "type": "object", + "description": "Cosmos DB indexing policy", + "properties": { + "automatic": { + "type": "boolean", + "description": "Indicates if the indexing policy is automatic" + }, + "indexingMode": { + "description": "Indicates the indexing mode.", + "type": "string", + "default": "consistent", + "enum": [ + "consistent", + "lazy", + "none" + ], + "x-ms-enum": { + "name": "IndexingMode", + "modelAsString": true + } + }, + "includedPaths": { + "description": "List of paths to include in the indexing", + "type": "array", + "items": { + "$ref": "#/definitions/IncludedPath" + } + }, + "excludedPaths": { + "description": "List of paths to exclude from indexing", + "type": "array", + "items": { + "$ref": "#/definitions/ExcludedPath" + } + }, + "compositeIndexes": { + "description": "List of composite path list", + "type": "array", + "items": { + "$ref": "#/definitions/CompositePathList" + } + }, + "spatialIndexes": { + "description": "List of spatial specifics", + "type": "array", + "items": { + "$ref": "#/definitions/SpatialSpec" + } + } + } + }, + "ExcludedPath": { + "type": "object", + "properties": { + "path": { + "type": "string", + "description": "The path for which the indexing behavior applies to. Index paths typically start with root and end with wildcard (/path/*)" + } + } + }, + "IncludedPath": { + "type": "object", + "description": "The paths that are included in indexing", + "properties": { + "path": { + "type": "string", + "description": "The path for which the indexing behavior applies to. Index paths typically start with root and end with wildcard (/path/*)" + }, + "indexes": { + "description": "List of indexes for this path", + "type": "array", + "items": { + "$ref": "#/definitions/Indexes" + } + } + } + }, + "Indexes": { + "type": "object", + "description": "The indexes for the path.", + "properties": { + "dataType": { + "description": "The datatype for which the indexing behavior is applied to.", + "type": "string", + "default": "String", + "enum": [ + "String", + "Number", + "Point", + "Polygon", + "LineString", + "MultiPolygon" + ], + "x-ms-enum": { + "name": "DataType", + "modelAsString": true + } + }, + "precision": { + "description": "The precision of the index. -1 is maximum precision.", + "type": "integer" + }, + "kind": { + "description": "Indicates the type of index.", + "type": "string", + "default": "Hash", + "enum": [ + "Hash", + "Range", + "Spatial" + ], + "x-ms-enum": { + "name": "IndexKind", + "modelAsString": true + } + } + } + }, + "CompositePathList": { + "description": "List of composite path", + "type": "array", + "items": { + "$ref": "#/definitions/CompositePath" + } + }, + "CompositePath": { + "type": "object", + "properties": { + "path": { + "type": "string", + "description": "The path for which the indexing behavior applies to. Index paths typically start with root and end with wildcard (/path/*)" + }, + "order": { + "description": "Sort order for composite paths.", + "type": "string", + "enum": [ + "ascending", + "descending" + ], + "x-ms-enum": { + "name": "CompositePathSortOrder", + "modelAsString": true + } + } + } + }, + "SpatialSpec": { + "type": "object", + "properties": { + "path": { + "type": "string", + "description": "The path for which the indexing behavior applies to. Index paths typically start with root and end with wildcard (/path/*)" + }, + "types": { + "description": "List of path's spatial type", + "type": "array", + "items": { + "$ref": "#/definitions/SpatialType" + } + } + } + }, + "SpatialType": { + "description": "Indicates the spatial type of index.", + "type": "string", + "enum": [ + "Point", + "LineString", + "Polygon", + "MultiPolygon" + ], + "x-ms-enum": { + "name": "SpatialType", + "modelAsString": true + } + }, + "ContainerPartitionKey": { + "type": "object", + "description": "The configuration of the partition key to be used for partitioning data into multiple partitions", + "properties": { + "paths": { + "description": "List of paths using which data within the container can be partitioned", + "type": "array", + "items": { + "$ref": "#/definitions/Path" + } + }, + "kind": { + "description": "Indicates the kind of algorithm used for partitioning. For MultiHash, multiple partition keys (upto three maximum) are supported for container create", + "type": "string", + "default": "Hash", + "enum": [ + "Hash", + "Range", + "MultiHash" + ], + "x-ms-enum": { + "name": "PartitionKind", + "modelAsString": true + } + }, + "version": { + "description": "Indicates the version of the partition key definition", + "type": "integer", + "minimum": 1, + "maximum": 2, + "format": "int32" + }, + "systemKey": { + "description": "Indicates if the container is using a system generated partition key", + "type": "boolean", + "readOnly": true + } + } + }, + "Path": { + "type": "string", + "description": "A path. These typically start with root (/path)" + }, + "UniqueKeyPolicy": { + "type": "object", + "description": "The unique key policy configuration for specifying uniqueness constraints on documents in the collection in the Azure Cosmos DB service.", + "properties": { + "uniqueKeys": { + "description": "List of unique keys on that enforces uniqueness constraint on documents in the collection in the Azure Cosmos DB service.", + "type": "array", + "items": { + "$ref": "#/definitions/UniqueKey" + } + } + } + }, + "UniqueKey": { + "type": "object", + "description": "The unique key on that enforces uniqueness constraint on documents in the collection in the Azure Cosmos DB service.", + "properties": { + "paths": { + "description": "List of paths must be unique for each document in the Azure Cosmos DB service", + "type": "array", + "items": { + "$ref": "#/definitions/Path" + } + } + } + }, + "ConflictResolutionPolicy": { + "type": "object", + "description": "The conflict resolution policy for the container.", + "properties": { + "mode": { + "description": "Indicates the conflict resolution mode.", + "type": "string", + "default": "LastWriterWins", + "enum": [ + "LastWriterWins", + "Custom" + ], + "x-ms-enum": { + "name": "ConflictResolutionMode", + "modelAsString": true + } + }, + "conflictResolutionPath": { + "type": "string", + "description": "The conflict resolution path in the case of LastWriterWins mode." + }, + "conflictResolutionProcedure": { + "type": "string", + "description": "The procedure to resolve conflicts in the case of custom mode." + } + } + }, + "SqlStoredProcedureResource": { + "type": "object", + "description": "Cosmos DB SQL storedProcedure resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB SQL storedProcedure" + }, + "body": { + "type": "string", + "description": "Body of the Stored Procedure" + } + }, + "required": [ + "id" + ] + }, + "SqlUserDefinedFunctionResource": { + "type": "object", + "description": "Cosmos DB SQL userDefinedFunction resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB SQL userDefinedFunction" + }, + "body": { + "type": "string", + "description": "Body of the User Defined Function" + } + }, + "required": [ + "id" + ] + }, + "SqlTriggerResource": { + "type": "object", + "description": "Cosmos DB SQL trigger resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB SQL trigger" + }, + "body": { + "type": "string", + "description": "Body of the Trigger" + }, + "triggerType": { + "type": "string", + "enum": [ + "Pre", + "Post" + ], + "description": "Type of the Trigger", + "x-ms-enum": { + "name": "triggerType", + "modelAsString": true + } + }, + "triggerOperation": { + "type": "string", + "enum": [ + "All", + "Create", + "Update", + "Delete", + "Replace" + ], + "description": "The operation the trigger is associated with", + "x-ms-enum": { + "name": "triggerOperation", + "modelAsString": true + } + } + }, + "required": [ + "id" + ] + }, + "MongoDBDatabaseResource": { + "type": "object", + "description": "Cosmos DB MongoDB database resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB MongoDB database" + } + }, + "required": [ + "id" + ] + }, + "MongoDBCollectionResource": { + "type": "object", + "description": "Cosmos DB MongoDB collection resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB MongoDB collection" + }, + "shardKey": { + "description": "A key-value pair of shard keys to be applied for the request.", + "$ref": "#/definitions/ShardKeys" + }, + "indexes": { + "description": "List of index keys", + "type": "array", + "items": { + "$ref": "#/definitions/MongoIndex" + } + }, + "analyticalStorageTtl": { + "type": "integer", + "description": "Analytical TTL." + } + }, + "required": [ + "id" + ] + }, + "ShardKeys": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The shard key and partition kind pair, only support \"Hash\" partition kind" + }, + "MongoIndex": { + "type": "object", + "description": "Cosmos DB MongoDB collection index key", + "properties": { + "key": { + "description": "Cosmos DB MongoDB collection index keys", + "$ref": "#/definitions/MongoIndexKeys" + }, + "options": { + "description": "Cosmos DB MongoDB collection index key options", + "$ref": "#/definitions/MongoIndexOptions" + } + } + }, + "MongoIndexKeys": { + "type": "object", + "description": "Cosmos DB MongoDB collection resource object", + "properties": { + "keys": { + "description": "List of keys for each MongoDB collection in the Azure Cosmos DB service", + "type": "array", + "items": { + "$ref": "#/definitions/Key" + } + } + } + }, + "Key": { + "type": "string", + "description": "A Key." + }, + "MongoIndexOptions": { + "type": "object", + "description": "Cosmos DB MongoDB collection index options", + "properties": { + "expireAfterSeconds": { + "description": "Expire after seconds", + "type": "integer" + }, + "unique": { + "description": "Is unique or not", + "type": "boolean" + } + } + }, + "TableResource": { + "type": "object", + "description": "Cosmos DB table resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB table" + } + }, + "required": [ + "id" + ] + }, + "CassandraKeyspaceResource": { + "type": "object", + "description": "Cosmos DB Cassandra keyspace resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB Cassandra keyspace" + } + }, + "required": [ + "id" + ] + }, + "CassandraTableResource": { + "type": "object", + "description": "Cosmos DB Cassandra table resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB Cassandra table" + }, + "defaultTtl": { + "type": "integer", + "description": "Time to live of the Cosmos DB Cassandra table" + }, + "schema": { + "description": "Schema of the Cosmos DB Cassandra table", + "$ref": "#/definitions/CassandraSchema" + }, + "analyticalStorageTtl": { + "type": "integer", + "description": "Analytical TTL." + } + }, + "required": [ + "id" + ] + }, + "CassandraSchema": { + "type": "object", + "description": "Cosmos DB Cassandra table schema", + "properties": { + "columns": { + "type": "array", + "items": { + "$ref": "#/definitions/Column" + }, + "description": "List of Cassandra table columns." + }, + "partitionKeys": { + "type": "array", + "items": { + "$ref": "#/definitions/CassandraPartitionKey" + }, + "description": "List of partition key." + }, + "clusterKeys": { + "type": "array", + "items": { + "$ref": "#/definitions/ClusterKey" + }, + "description": "List of cluster key." + } + } + }, + "Column": { + "type": "object", + "description": "Cosmos DB Cassandra table column", + "properties": { + "name": { + "type": "string", + "description": "Name of the Cosmos DB Cassandra table column" + }, + "type": { + "type": "string", + "description": "Type of the Cosmos DB Cassandra table column" + } + } + }, + "CassandraPartitionKey": { + "type": "object", + "description": "Cosmos DB Cassandra table partition key", + "properties": { + "name": { + "type": "string", + "description": "Name of the Cosmos DB Cassandra table partition key" + } + } + }, + "ClusterKey": { + "type": "object", + "description": "Cosmos DB Cassandra table cluster key", + "properties": { + "name": { + "type": "string", + "description": "Name of the Cosmos DB Cassandra table cluster key" + }, + "orderBy": { + "type": "string", + "description": "Order of the Cosmos DB Cassandra table cluster key, only support \"Asc\" and \"Desc\"" + } + } + }, + "GremlinDatabaseResource": { + "type": "object", + "description": "Cosmos DB Gremlin database resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB Gremlin database" + } + }, + "required": [ + "id" + ] + }, + "GremlinGraphResource": { + "type": "object", + "description": "Cosmos DB Gremlin graph resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB Gremlin graph" + }, + "indexingPolicy": { + "$ref": "#/definitions/IndexingPolicy", + "description": "The configuration of the indexing policy. By default, the indexing is automatic for all document paths within the graph" + }, + "partitionKey": { + "$ref": "#/definitions/ContainerPartitionKey", + "description": "The configuration of the partition key to be used for partitioning data into multiple partitions" + }, + "defaultTtl": { + "type": "integer", + "description": "Default time to live" + }, + "uniqueKeyPolicy": { + "$ref": "#/definitions/UniqueKeyPolicy", + "description": "The unique key policy configuration for specifying uniqueness constraints on documents in the collection in the Azure Cosmos DB service." + }, + "conflictResolutionPolicy": { + "$ref": "#/definitions/ConflictResolutionPolicy", + "description": "The conflict resolution policy for the graph." + } + }, + "required": [ + "id" + ] + }, + "CreateUpdateOptions": { + "type": "object", + "properties": { + "throughput": { + "type": "integer", + "description": "Request Units per second. For example, \"throughput\": 10000." + }, + "autoscaleSettings": { + "$ref": "#/definitions/AutoscaleSettings", + "description": "Specifies the Autoscale settings." + } + }, + "description": "CreateUpdateOptions are a list of key-value pairs that describe the resource. Supported keys are \"If-Match\", \"If-None-Match\", \"Session-Token\" and \"Throughput\"" + }, + "AutoscaleSettings": { + "type": "object", + "properties": { + "maxThroughput": { + "type": "integer", + "description": "Represents maximum throughput, the resource can scale up to." + } + } + }, + "Capability": { + "type": "object", + "description": "Cosmos DB capability object", + "properties": { + "name": { + "type": "string", + "description": "Name of the Cosmos DB capability. For example, \"name\": \"EnableCassandra\". Current values also include \"EnableTable\" and \"EnableGremlin\"." + } + } + }, + "Tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "ManagedServiceIdentity": { + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of the system assigned identity. This property will only be provided for a system assigned identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant id of the system assigned identity. This property will only be provided for a system assigned identity." + }, + "type": { + "type": "string", + "description": "The type of identity used for the resource. The type 'SystemAssigned,UserAssigned' includes both an implicitly created identity and a set of user assigned identities. The type 'None' will remove any identities from the service.", + "enum": [ + "SystemAssigned", + "UserAssigned", + "SystemAssigned,UserAssigned", + "None" + ], + "x-ms-enum": { + "name": "ResourceIdentityType", + "modelAsString": false + } + }, + "userAssignedIdentities": { + "type": "object", + "additionalProperties": { + "type": "object", + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of user assigned identity." + }, + "clientId": { + "readOnly": true, + "type": "string", + "description": "The client id of user assigned identity." + } + } + }, + "description": "The list of user identities associated with resource. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'." + } + }, + "description": "Identity for the resource." + }, + "ProvisioningState": { + "type": "string", + "readOnly": true, + "description": "The status of the Cosmos DB account at the time the operation was called. The status can be one of following. 'Creating' – the Cosmos DB account is being created. When an account is in Creating state, only properties that are specified as input for the Create Cosmos DB account operation are returned. 'Succeeded' – the Cosmos DB account is active for use. 'Updating' – the Cosmos DB account is being updated. 'Deleting' – the Cosmos DB account is being deleted. 'Failed' – the Cosmos DB account failed creation. 'DeletionFailed' – the Cosmos DB account deletion failed." + }, + "IPRules": { + "type": "array", + "description": "Array of IpAddressOrRange objects.", + "items": { + "$ref": "#/definitions/IpAddressOrRange" + } + }, + "IpAddressOrRange": { + "type": "object", + "description": "IpAddressOrRange object", + "properties": { + "ipAddressOrRange": { + "type": "string", + "description": "A single IPv4 address or a single IPv4 address range in CIDR format. Provided IPs must be well-formatted and cannot be contained in one of the following ranges: 10.0.0.0/8, 100.64.0.0/10, 172.16.0.0/12, 192.168.0.0/16, since these are not enforceable by the IP address filter. Example of valid inputs: “23.40.210.245” or “23.40.210.0/8”." + } + } + }, + "VirtualNetworkRule": { + "type": "object", + "description": "Virtual Network ACL Rule object", + "properties": { + "id": { + "type": "string", + "description": "Resource ID of a subnet, for example: /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}." + }, + "ignoreMissingVNetServiceEndpoint": { + "type": "boolean", + "description": "Create firewall rule before the virtual network has vnet service endpoint enabled." + } + } + }, + "NetworkAclBypass": { + "description": "Indicates what services are allowed to bypass firewall checks.", + "type": "string", + "enum": [ + "None", + "AzureServices" + ], + "x-ms-enum": { + "name": "NetworkAclBypass", + "modelAsString": false + } + }, + "Operation": { + "description": "REST API operation", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}", + "type": "string" + }, + "display": { + "description": "The object that represents the operation.", + "properties": { + "Provider": { + "description": "Service provider: Microsoft.ResourceProvider", + "type": "string" + }, + "Resource": { + "description": "Resource on which the operation is performed: Profile, endpoint, etc.", + "type": "string" + }, + "Operation": { + "description": "Operation type: Read, write, delete, etc.", + "type": "string" + }, + "Description": { + "description": "Description of operation", + "type": "string" + } + } + } + } + }, + "OperationListResult": { + "description": "Result of the request to list Resource Provider operations. It contains a list of operations and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "description": "List of operations supported by the Resource Provider." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "UsagesResult": { + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Usage" + }, + "description": "The list of usages for the database. A usage is a point in time metric" + } + }, + "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": "integer", + "format": "int64", + "readOnly": true, + "description": "Maximum value for this metric" + }, + "currentValue": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "Current value for this metric" + } + }, + "description": "The usage data for a usage request." + }, + "PartitionUsagesResult": { + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/PartitionUsage" + }, + "description": "The list of partition-level usages for the database. A usage is a point in time metric" + } + }, + "description": "The response to a list partition level usage request." + }, + "PartitionUsage": { + "allOf": [ + { + "$ref": "#/definitions/Usage" + } + ], + "properties": { + "partitionId": { + "readOnly": true, + "type": "string", + "description": "The partition id (GUID identifier) of the usages." + }, + "partitionKeyRangeId": { + "readOnly": true, + "type": "string", + "description": "The partition key range id (integer identifier) of the usages." + } + }, + "description": "The partition level usage data for a usage request." + }, + "MetricDefinitionsListResult": { + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/MetricDefinition" + }, + "description": "The list of metric definitions for the account." + } + }, + "description": "The response to a list metric definitions request." + }, + "MetricDefinition": { + "properties": { + "metricAvailabilities": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/MetricAvailability" + }, + "description": "The list of metric availabilities for the account." + }, + "primaryAggregationType": { + "readOnly": true, + "type": "string", + "description": "The primary aggregation type of the metric.", + "enum": [ + "None", + "Average", + "Total", + "Minimum", + "Maximum", + "Last" + ], + "x-ms-enum": { + "modelAsString": true, + "name": "PrimaryAggregationType" + } + }, + "unit": { + "description": "The unit of the metric.", + "$ref": "#/definitions/UnitType" + }, + "resourceUri": { + "readOnly": true, + "type": "string", + "description": "The resource uri of the database." + }, + "name": { + "readOnly": true, + "$ref": "#/definitions/MetricName", + "description": "The name information for the metric." + } + }, + "description": "The definition of a metric." + }, + "MetricAvailability": { + "properties": { + "timeGrain": { + "readOnly": true, + "type": "string", + "description": "The time grain to be used to summarize the metric values." + }, + "retention": { + "readOnly": true, + "type": "string", + "description": "The retention for the metric values." + } + }, + "description": "The availability of the metric." + }, + "MetricListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Metric" + }, + "description": "The list of metrics for the account." + } + }, + "description": "The response to a list metrics request." + }, + "Metric": { + "properties": { + "startTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The start time for the metric (ISO-8601 format)." + }, + "endTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The end time for the metric (ISO-8601 format)." + }, + "timeGrain": { + "readOnly": true, + "type": "string", + "description": "The time grain to be used to summarize the metric values." + }, + "unit": { + "$ref": "#/definitions/UnitType", + "description": "The unit of the metric." + }, + "name": { + "readOnly": true, + "$ref": "#/definitions/MetricName", + "description": "The name information for the metric." + }, + "metricValues": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/MetricValue" + }, + "description": "The metric values for the specified time window and timestep." + } + }, + "description": "Metric data" + }, + "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." + }, + "MetricValue": { + "properties": { + "_count": { + "readOnly": true, + "type": "number", + "format": "int32", + "description": "The number of values for the metric." + }, + "average": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The average value of the metric." + }, + "maximum": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The max value of the metric." + }, + "minimum": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The min value of the metric." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The metric timestamp (ISO-8601 format)." + }, + "total": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The total value of the metric." + } + }, + "description": "Represents metrics values." + }, + "PercentileMetricListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/PercentileMetric" + }, + "description": "The list of percentile metrics for the account." + } + }, + "description": "The response to a list percentile metrics request." + }, + "PercentileMetric": { + "properties": { + "startTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The start time for the metric (ISO-8601 format)." + }, + "endTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The end time for the metric (ISO-8601 format)." + }, + "timeGrain": { + "readOnly": true, + "type": "string", + "description": "The time grain to be used to summarize the metric values." + }, + "unit": { + "$ref": "#/definitions/UnitType", + "description": "The unit of the metric." + }, + "name": { + "readOnly": true, + "$ref": "#/definitions/MetricName", + "description": "The name information for the metric." + }, + "metricValues": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/PercentileMetricValue" + }, + "description": "The percentile metric values for the specified time window and timestep." + } + }, + "description": "Percentile Metric data" + }, + "PercentileMetricValue": { + "allOf": [ + { + "$ref": "#/definitions/MetricValue" + } + ], + "properties": { + "P10": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The 10th percentile value for the metric." + }, + "P25": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The 25th percentile value for the metric." + }, + "P50": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The 50th percentile value for the metric." + }, + "P75": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The 75th percentile value for the metric." + }, + "P90": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The 90th percentile value for the metric." + }, + "P95": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The 95th percentile value for the metric." + }, + "P99": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The 99th percentile value for the metric." + } + }, + "description": "Represents percentile metrics values." + }, + "PartitionMetricListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/PartitionMetric" + }, + "description": "The list of partition-level metrics for the account." + } + }, + "description": "The response to a list partition metrics request." + }, + "PartitionMetric": { + "allOf": [ + { + "$ref": "#/definitions/Metric" + } + ], + "properties": { + "partitionId": { + "readOnly": true, + "type": "string", + "description": "The partition id (GUID identifier) of the metric values." + }, + "partitionKeyRangeId": { + "readOnly": true, + "type": "string", + "description": "The partition key range id (integer identifier) of the metric values." + } + }, + "description": "The metric values for a single partition." + }, + "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" + } + }, + "ConnectorOffer": { + "description": "The cassandra connector offer type for the Cosmos DB C* database account.", + "type": "string", + "enum": [ + "Small" + ], + "x-ms-enum": { + "name": "ConnectorOffer", + "modelAsString": true + } + }, + "PublicNetworkAccess": { + "type": "string", + "description": "Whether requests from Public Network are allowed", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "modelAsString": true, + "name": "PublicNetworkAccess" + } + }, + "ApiProperties": { + "type": "object", + "properties": { + "serverVersion": { + "type": "string", + "enum": [ + "3.2", + "3.6", + "4.0" + ], + "description": "Describes the ServerVersion of an a MongoDB account.", + "x-ms-enum": { + "modelAsString": true, + "name": "ServerVersion" + } + } + } + }, + "AnalyticalStorageConfiguration": { + "type": "object", + "description": "Analytical storage specific properties.", + "properties": { + "schemaType": { + "type": "string", + "$ref": "#/definitions/AnalyticalStorageSchemaType" + } + } + }, + "AnalyticalStorageSchemaType": { + "type": "string", + "description": "Describes the types of schema for analytical storage.", + "enum": [ + "WellDefined", + "FullFidelity" + ], + "x-ms-enum": { + "modelAsString": true, + "name": "AnalyticalStorageSchemaType" + } + }, + "BackupPolicy": { + "type": "object", + "description": "The object representing the policy for taking backups on an account.", + "discriminator": "type", + "properties": { + "type": { + "type": "string", + "$ref": "#/definitions/BackupPolicyType" + } + }, + "required": [ + "type" + ] + }, + "BackupPolicyType": { + "description": "Describes the mode of backups.", + "type": "string", + "enum": [ + "Periodic", + "Continuous" + ], + "x-ms-enum": { + "modelAsString": true, + "name": "BackupPolicyType" + } + }, + "PeriodicModeBackupPolicy": { + "description": "The object representing periodic mode backup policy.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/BackupPolicy" + } + ], + "properties": { + "periodicModeProperties": { + "type": "object", + "description": "Configuration values for periodic mode backup", + "$ref": "#/definitions/PeriodicModeProperties" + } + }, + "x-ms-discriminator-value": "Periodic" + }, + "ContinuousModeBackupPolicy": { + "description": "The object representing continuous mode backup policy.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/BackupPolicy" + } + ], + "x-ms-discriminator-value": "Continuous" + }, + "PeriodicModeProperties": { + "type": "object", + "description": "Configuration values for periodic mode backup", + "properties": { + "backupIntervalInMinutes": { + "type": "integer", + "format": "int32", + "minimum": 0, + "description": "An integer representing the interval in minutes between two backups" + }, + "backupRetentionIntervalInHours": { + "type": "integer", + "format": "int32", + "minimum": 0, + "description": "An integer representing the time (in hours) that each backup is retained" + } + } + } + }, + "parameters": { + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90, + "x-ms-parameter-location": "method", + "description": "Name of an Azure resource group." + }, + "accountNameParameter": { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB database account name.", + "minLength": 3, + "maxLength": 50, + "pattern": "^[a-z0-9]+(-[a-z0-9]+)*" + }, + "filterParameter": { + "name": "$filter", + "in": "query", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "An OData filter expression that describes a subset of metrics to return. The parameters that can be filtered are name.value (name of the metric, can have an or of multiple names), startTime, endTime, and timeGrain. The supported operator is eq." + }, + "usageFilterParameter": { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "x-ms-parameter-location": "method", + "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)." + }, + "databaseRidParameter": { + "name": "databaseRid", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB database rid." + }, + "collectionRidParameter": { + "name": "collectionRid", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB collection rid." + }, + "databaseNameParameter": { + "name": "databaseName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB database name." + }, + "containerNameParameter": { + "name": "containerName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB container name." + }, + "storedProcedureNameParameter": { + "name": "storedProcedureName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB storedProcedure name." + }, + "userDefinedFunctionNameParameter": { + "name": "userDefinedFunctionName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB userDefinedFunction name." + }, + "triggerNameParameter": { + "name": "triggerName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB trigger name." + }, + "tableNameParameter": { + "name": "tableName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB table name." + }, + "collectionNameParameter": { + "name": "collectionName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB collection name." + }, + "keyspaceNameParameter": { + "name": "keyspaceName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB keyspace name." + }, + "graphNameParameter": { + "name": "graphName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB graph name." + }, + "regionParameter": { + "name": "region", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB region, with spaces between words and each word capitalized." + }, + "sourceRegionParameter": { + "name": "sourceRegion", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Source region from which data is written. Cosmos DB region, with spaces between words and each word capitalized." + }, + "targetRegionParameter": { + "name": "targetRegion", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Target region to which data is written. Cosmos DB region, with spaces between words and each word capitalized." + }, + "partitionKeyRangeIdParameter": { + "name": "partitionKeyRangeId", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Partition Key Range Id for which to get data." + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCassandraKeyspaceCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCassandraKeyspaceCreateUpdate.json new file mode 100644 index 000000000000..dd6d1db8f678 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCassandraKeyspaceCreateUpdate.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName", + "createUpdateCassandraKeyspaceParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "keyspaceName" + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName", + "name": "keyspaceName", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "keyspaceName" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCassandraKeyspaceDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCassandraKeyspaceDelete.json new file mode 100644 index 000000000000..a7b462b6696d --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCassandraKeyspaceDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCassandraKeyspaceGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCassandraKeyspaceGet.json new file mode 100644 index 000000000000..0475ee3fb093 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCassandraKeyspaceGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName", + "name": "keyspaceName", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "keyspaceName", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCassandraKeyspaceList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCassandraKeyspaceList.json new file mode 100644 index 000000000000..f3b12eea456d --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCassandraKeyspaceList.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2021-05-15", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName", + "name": "keyspaceName", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "keyspaceName" + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCassandraKeyspaceMigrateToAutoscale.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCassandraKeyspaceMigrateToAutoscale.json new file mode 100644 index 000000000000..7f58c3506980 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCassandraKeyspaceMigrateToAutoscale.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "autoscaleSettings": { + "maxThroughput": 4000 + }, + "minimumThroughput": "4000", + "offerReplacePending": "false", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCassandraKeyspaceMigrateToManualThroughput.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCassandraKeyspaceMigrateToManualThroughput.json new file mode 100644 index 000000000000..c17cd8b21b86 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCassandraKeyspaceMigrateToManualThroughput.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "false", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCassandraKeyspaceThroughputGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCassandraKeyspaceThroughputGet.json new file mode 100644 index 000000000000..978fdf3068aa --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCassandraKeyspaceThroughputGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCassandraKeyspaceThroughputUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCassandraKeyspaceThroughputUpdate.json new file mode 100644 index 000000000000..d4c5dc2b909d --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCassandraKeyspaceThroughputUpdate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName", + "updateThroughputParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCassandraTableCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCassandraTableCreateUpdate.json new file mode 100644 index 000000000000..23f6dd1797a0 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCassandraTableCreateUpdate.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName", + "tableName": "tableName", + "createUpdateCassandraTableParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "tableName", + "defaultTtl": 100, + "schema": { + "columns": [ + { + "name": "columnA", + "type": "Ascii" + } + ], + "partitionKeys": [ + { + "name": "columnA" + } + ], + "clusterKeys": [ + { + "name": "columnA", + "orderBy": "Asc" + } + ] + } + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName/cassandraTables/tableName", + "name": "tableName", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/cassandraTables", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "tableName", + "defaultTtl": 100, + "schema": { + "columns": [ + { + "name": "columnA", + "type": "Ascii" + } + ], + "partitionKeys": [ + { + "name": "columnA" + } + ], + "clusterKeys": [ + { + "name": "columnA", + "orderBy": "Asc" + } + ] + } + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCassandraTableDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCassandraTableDelete.json new file mode 100644 index 000000000000..dd481529baaa --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCassandraTableDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName", + "tableName": "tableName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCassandraTableGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCassandraTableGet.json new file mode 100644 index 000000000000..ae4664916576 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCassandraTableGet.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName", + "tableName": "tableName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName/cassandraTables/tableName", + "name": "tableName", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/cassandraTables", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "tableName", + "defaultTtl": 100, + "schema": { + "columns": [ + { + "name": "columnA", + "type": "Ascii" + } + ], + "partitionKeys": [ + { + "name": "columnA" + } + ], + "clusterKeys": [ + { + "name": "columnA", + "orderBy": "Asc" + } + ] + }, + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCassandraTableList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCassandraTableList.json new file mode 100644 index 000000000000..64f662628e48 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCassandraTableList.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2021-05-15", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "keyspaceName": "keyspaceName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName/cassandraTables/tableName", + "name": "tableName", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/cassandraTables", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "tableName", + "defaultTtl": 100, + "schema": { + "columns": [ + { + "name": "columnA", + "type": "Ascii" + } + ], + "partitionKeys": [ + { + "name": "columnA" + } + ], + "clusterKeys": [ + { + "name": "columnA", + "orderBy": "Asc" + } + ] + } + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCassandraTableMigrateToAutoscale.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCassandraTableMigrateToAutoscale.json new file mode 100644 index 000000000000..7b6300e658ac --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCassandraTableMigrateToAutoscale.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName", + "tableName": "tableName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "autoscaleSettings": { + "maxThroughput": 4000 + }, + "minimumThroughput": "4000", + "offerReplacePending": "false", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCassandraTableMigrateToManualThroughput.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCassandraTableMigrateToManualThroughput.json new file mode 100644 index 000000000000..970272879a03 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCassandraTableMigrateToManualThroughput.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName", + "tableName": "tableName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "false", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCassandraTableThroughputGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCassandraTableThroughputGet.json new file mode 100644 index 000000000000..178c7f29a5df --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCassandraTableThroughputGet.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName", + "tableName": "tableName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName/cassandraTables/tableName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/cassandraTables/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCassandraTableThroughputUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCassandraTableThroughputUpdate.json new file mode 100644 index 000000000000..02734f87562c --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCassandraTableThroughputUpdate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName", + "tableName": "tableName", + "updateThroughputParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName/cassandraTables/tableName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/cassandraTables/throughputSettings", + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCollectionGetMetricDefinitions.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCollectionGetMetricDefinitions.json new file mode 100644 index 000000000000..071657930bb3 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCollectionGetMetricDefinitions.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "subscriptionId": "subid", + "api-version": "2021-05-15", + "databaseRid": "databaseRid", + "collectionRid": "collectionRid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "metricAvailabilities": [ + { + "timeGrain": "PT5M", + "retention": "P2D" + }, + { + "timeGrain": "PT1H", + "retention": "P14D" + }, + { + "timeGrain": "P1D", + "retention": "P60D" + } + ], + "primaryAggregationType": "Total", + "unit": "Count", + "resourceUri": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1", + "name": { + "value": "Total Requests", + "localizedValue": "Total Requests" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCollectionGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCollectionGetMetrics.json new file mode 100644 index 000000000000..f89450c3b01d --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCollectionGetMetrics.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "databaseRid": "databaseRid", + "collectionRid": "collectionRid", + "$filter": "$filter=(name.value eq 'Total Requests') and timeGrain eq duration'PT5M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T00:13:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Count", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-19T23:58:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:03:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:08:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + } + ], + "name": { + "value": "Total Requests", + "localizedValue": "Total Requests" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCollectionGetUsages.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCollectionGetUsages.json new file mode 100644 index 000000000000..b2a97c4d1255 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCollectionGetUsages.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "databaseRid": "databaseRid", + "collectionRid": "collectionRid", + "subscriptionId": "subid", + "$filter": "$filter=name.value eq 'Storage'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "unit": "Bytes", + "quotaPeriod": "P1D", + "limit": 10737418240, + "currentValue": 0, + "name": { + "value": "Storage", + "localizedValue": "Storage" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCollectionPartitionGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCollectionPartitionGetMetrics.json new file mode 100644 index 000000000000..143490fc502b --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCollectionPartitionGetMetrics.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "databaseRid": "databaseRid", + "collectionRid": "collectionRid", + "$filter": "$filter=(name.value eq 'Max RUs Per Second') and timeGrain eq duration'PT1M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T23:58:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT1M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T23:58:55.2780000Z", + "unit": "Count", + "partitionId": "00000000-0000-0000-0000-000000000000", + "partitionKeyRangeId": "0", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:54:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:55:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:56:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:57:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:58:55.2780000Z", + "maximum": 5 + } + ], + "name": { + "value": "Max RUs Per Second", + "localizedValue": "Max RUs Per Second" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCollectionPartitionGetUsages.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCollectionPartitionGetUsages.json new file mode 100644 index 000000000000..c98d93b75b6e --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCollectionPartitionGetUsages.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "databaseRid": "databaseRid", + "collectionRid": "collectionRid", + "subscriptionId": "subid", + "$filter": "$filter=name.value eq 'Partition Storage'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "unit": "Bytes", + "quotaPeriod": "P1D", + "limit": 10737418240, + "currentValue": 0, + "partitionId": "00000000-0000-0000-0000-000000000000", + "partitionKeyRangeId": "0", + "name": { + "value": "Storage", + "localizedValue": "Storage" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCollectionPartitionRegionGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCollectionPartitionRegionGetMetrics.json new file mode 100644 index 000000000000..ae685abb753f --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBCollectionPartitionRegionGetMetrics.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "databaseRid": "databaseRid", + "collectionRid": "collectionRid", + "region": "North Europe", + "$filter": "$filter=(name.value eq 'Max RUs Per Second') and timeGrain eq duration'PT1M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T23:58:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT1M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T23:58:55.2780000Z", + "unit": "Count", + "partitionId": "00000000-0000-0000-0000-000000000000", + "partitionKeyRangeId": "0", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:54:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:55:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:56:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:57:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:58:55.2780000Z", + "maximum": 5 + } + ], + "name": { + "value": "Max RUs Per Second", + "localizedValue": "Max RUs Per Second" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountCheckNameExists.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountCheckNameExists.json new file mode 100644 index 000000000000..226f50183b9d --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountCheckNameExists.json @@ -0,0 +1,10 @@ +{ + "parameters": { + "accountName": "ddb1", + "api-version": "2021-05-15" + }, + "responses": { + "200": {}, + "404": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountCreateMax.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountCreateMax.json new file mode 100644 index 000000000000..85fcf040bcf8 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountCreateMax.json @@ -0,0 +1,208 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "createUpdateParameters": { + "location": "westus", + "tags": {}, + "kind": "MongoDB", + "identity": { + "type": "SystemAssigned,UserAssigned", + "userAssignedIdentities": { + "/subscriptions/fa5fc227-a624-475e-b696-cdd604c735bc/resourceGroups/eu2cgroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": {} + } + }, + "properties": { + "databaseAccountOfferType": "Standard", + "ipRules": [ + { + "ipAddressOrRange": "23.43.230.120" + }, + { + "ipAddressOrRange": "110.12.240.0/12" + } + ], + "isVirtualNetworkFilterEnabled": true, + "virtualNetworkRules": [ + { + "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "ignoreMissingVNetServiceEndpoint": false + } + ], + "publicNetworkAccess": "Enabled", + "locations": [ + { + "failoverPriority": 0, + "locationName": "southcentralus", + "isZoneRedundant": false + }, + { + "failoverPriority": 1, + "locationName": "eastus", + "isZoneRedundant": false + } + ], + "consistencyPolicy": { + "defaultConsistencyLevel": "BoundedStaleness", + "maxIntervalInSeconds": 10, + "maxStalenessPrefix": 200 + }, + "keyVaultKeyUri": "https://myKeyVault.vault.azure.net", + "defaultIdentity": "FirstPartyIdentity", + "enableFreeTier": false, + "apiProperties": { + "serverVersion": "3.2" + }, + "enableAnalyticalStorage": true, + "analyticalStorageConfiguration": { + "schemaType": "WellDefined" + }, + "backupPolicy": { + "type": "Periodic", + "periodicModeProperties": { + "backupIntervalInMinutes": 240, + "backupRetentionIntervalInHours": 8 + } + }, + "cors": [ + { + "allowedOrigins": "https://test" + } + ], + "networkAclBypass": "AzureServices", + "networkAclBypassResourceIds": [ + "/subscriptions/subId/resourcegroups/rgName/providers/Microsoft.Synapse/workspaces/workspaceName" + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1", + "name": "ddb1", + "location": "West US", + "type": "Microsoft.DocumentDB/databaseAccounts", + "kind": "MongoDB", + "tags": {}, + "identity": { + "type": "SystemAssigned,UserAssigned", + "principalId": "52f4fef3-3c3f-4ff3-b52e-b5c9eeb68656", + "tenantId": "33e01921-4d64-4f8c-a055-5bdaffd5e33d", + "userAssignedIdentities": { + "/subscriptions/fa5fc227-a624-475e-b696-cdd604c735bc/resourceGroups/eu2cgroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": { + "clientId": "fbe75b66-01c5-4f87-a220-233af3270436", + "principalId": "33e01921-4d64-4f8c-a055-5bdaffd5e33d" + } + } + }, + "properties": { + "provisioningState": "Initializing", + "isVirtualNetworkFilterEnabled": true, + "databaseAccountOfferType": "Standard", + "disableKeyBasedMetadataWriteAccess": false, + "consistencyPolicy": { + "defaultConsistencyLevel": "BoundedStaleness", + "maxIntervalInSeconds": 10, + "maxStalenessPrefix": 200 + }, + "writeLocations": [ + { + "id": "ddb1-southcentralus", + "locationName": "South Central US", + "provisioningState": "Initializing", + "failoverPriority": 0, + "isZoneRedundant": false + } + ], + "readLocations": [ + { + "id": "ddb1-southcentralus", + "locationName": "South Central US", + "provisioningState": "Initializing", + "failoverPriority": 0, + "isZoneRedundant": false + }, + { + "id": "ddb1-eastus", + "locationName": "East US", + "provisioningState": "Initializing", + "failoverPriority": 1, + "isZoneRedundant": false + } + ], + "locations": [ + { + "id": "ddb1-southcentralus", + "locationName": "South Central US", + "provisioningState": "Initializing", + "failoverPriority": 0, + "isZoneRedundant": false + }, + { + "id": "ddb1-eastus", + "locationName": "East US", + "provisioningState": "Initializing", + "failoverPriority": 1, + "isZoneRedundant": false + } + ], + "failoverPolicies": [ + { + "id": "ddb1-southcentralus", + "locationName": "South Central US", + "failoverPriority": 0 + }, + { + "id": "ddb1-eastus", + "locationName": "East US", + "failoverPriority": 1 + } + ], + "virtualNetworkRules": [ + { + "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + } + ], + "publicNetworkAccess": "Enabled", + "keyVaultKeyUri": "https://myKeyVault.vault.azure.net", + "defaultIdentity": "FirstPartyIdentity", + "enableFreeTier": false, + "ipRules": [ + { + "ipAddressOrRange": "23.43.230.120" + }, + { + "ipAddressOrRange": "110.12.240.0/12" + } + ], + "apiProperties": { + "serverVersion": "3.2" + }, + "enableAnalyticalStorage": true, + "analyticalStorageConfiguration": { + "schemaType": "WellDefined" + }, + "backupPolicy": { + "type": "Periodic", + "periodicModeProperties": { + "backupIntervalInMinutes": 240, + "backupRetentionIntervalInHours": 8 + } + }, + "cors": [ + { + "allowedOrigins": "https://test" + } + ], + "networkAclBypass": "AzureServices", + "networkAclBypassResourceIds": [ + "/subscriptions/subId/resourcegroups/rgName/providers/Microsoft.Synapse/workspaces/workspaceName" + ] + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountCreateMin.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountCreateMin.json new file mode 100644 index 000000000000..d2ee1142a942 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountCreateMin.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "createUpdateParameters": { + "location": "westus", + "properties": { + "databaseAccountOfferType": "Standard", + "locations": [ + { + "failoverPriority": 0, + "locationName": "southcentralus", + "isZoneRedundant": false + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1", + "name": "ddb1", + "location": "West US", + "type": "Microsoft.DocumentDB/databaseAccounts", + "kind": "GlobalDocumentDB", + "tags": {}, + "properties": { + "provisioningState": "Initializing", + "ipRules": [], + "databaseAccountOfferType": "Standard", + "disableKeyBasedMetadataWriteAccess": false, + "consistencyPolicy": { + "defaultConsistencyLevel": "Session", + "maxIntervalInSeconds": 5, + "maxStalenessPrefix": 100 + }, + "writeLocations": [ + { + "id": "ddb1-southcentralus", + "locationName": "South Central US", + "provisioningState": "Initializing", + "failoverPriority": 0, + "isZoneRedundant": false + } + ], + "readLocations": [ + { + "id": "ddb1-southcentralus", + "locationName": "South Central US", + "provisioningState": "Initializing", + "failoverPriority": 0, + "isZoneRedundant": false + } + ], + "locations": [ + { + "id": "ddb1-southcentralus", + "locationName": "South Central US", + "provisioningState": "Initializing", + "failoverPriority": 0, + "isZoneRedundant": false + } + ], + "failoverPolicies": [ + { + "id": "ddb1-southcentralus", + "locationName": "South Central US", + "failoverPriority": 0 + } + ], + "cors": [], + "enableFreeTier": false, + "apiProperties": {}, + "enableAnalyticalStorage": false, + "analyticalStorageConfiguration": null, + "networkAclBypass": "None", + "networkAclBypassResourceIds": [] + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountDelete.json new file mode 100644 index 000000000000..edf83919c724 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountFailoverPriorityChange.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountFailoverPriorityChange.json new file mode 100644 index 000000000000..a1c838cd3d32 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountFailoverPriorityChange.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "accountName": "ddb1-failover", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "failoverParameters": { + "failoverPolicies": [ + { + "locationName": "eastus", + "failoverPriority": 0 + }, + { + "locationName": "westus", + "failoverPriority": 1 + } + ] + } + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountGet.json new file mode 100644 index 000000000000..bdccd3e96df8 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountGet.json @@ -0,0 +1,110 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1", + "name": "ddb1", + "location": "West US", + "type": "Microsoft.DocumentDB/databaseAccounts", + "kind": "GlobalDocumentDB", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "documentEndpoint": "https://ddb1.documents.azure.com:443/", + "ipRules": [], + "isVirtualNetworkFilterEnabled": false, + "virtualNetworkRules": [], + "databaseAccountOfferType": "Standard", + "disableKeyBasedMetadataWriteAccess": false, + "defaultIdentity": "FirstPartyIdentity", + "consistencyPolicy": { + "defaultConsistencyLevel": "Session", + "maxIntervalInSeconds": 5, + "maxStalenessPrefix": 100 + }, + "writeLocations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "readLocations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "locations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "failoverPolicies": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "failoverPriority": 0 + } + ], + "privateEndpointConnections": [ + { + "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.DocumentDB/databaseAccounts/account1/privateEndpointConnections/pe1", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.Network/privateEndpoints/pe1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "actionsRequired": "None" + } + } + } + ], + "cors": [], + "enableFreeTier": false, + "apiProperties": {}, + "enableAnalyticalStorage": true, + "analyticalStorageConfiguration": { + "schemaType": "WellDefined" + }, + "backupPolicy": { + "type": "Periodic", + "periodicModeProperties": { + "backupIntervalInMinutes": 240, + "backupRetentionIntervalInHours": 8 + } + }, + "networkAclBypass": "None", + "networkAclBypassResourceIds": [] + }, + "identity": { + "type": "SystemAssigned,UserAssigned", + "principalId": "52f4fef3-3c3f-4ff3-b52e-b5c9eeb68656", + "tenantId": "33e01921-4d64-4f8c-a055-5bdaffd5e33d", + "userAssignedIdentities": { + "/subscriptions/fa5fc227-a624-475e-b696-cdd604c735bc/resourceGroups/eu2cgroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": { + "clientId": "fbe75b66-01c5-4f87-a220-233af3270436", + "principalId": "33e01921-4d64-4f8c-a055-5bdaffd5e33d" + } + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountGetMetricDefinitions.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountGetMetricDefinitions.json new file mode 100644 index 000000000000..c9455b851a4d --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountGetMetricDefinitions.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "subscriptionId": "subid", + "api-version": "2021-05-15" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "metricAvailabilities": [ + { + "timeGrain": "PT5M", + "retention": "P2D" + }, + { + "timeGrain": "PT1H", + "retention": "P14D" + }, + { + "timeGrain": "P1D", + "retention": "P60D" + } + ], + "primaryAggregationType": "Total", + "unit": "Count", + "resourceUri": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1", + "name": { + "value": "Total Requests", + "localizedValue": "Total Requests" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountGetMetrics.json new file mode 100644 index 000000000000..104744bccc3f --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountGetMetrics.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "$filter": "$filter=(name.value eq 'Total Requests') and timeGrain eq duration'PT5M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T00:13:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Count", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-19T23:58:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:03:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:08:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + } + ], + "name": { + "value": "Total Requests", + "localizedValue": "Total Requests" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountGetUsages.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountGetUsages.json new file mode 100644 index 000000000000..a0ffcaa8e40b --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountGetUsages.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "$filter": "$filter=name.value eq 'Storage'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "unit": "Bytes", + "quotaPeriod": "P1D", + "limit": 10737418240, + "currentValue": 0, + "name": { + "value": "Storage", + "localizedValue": "Storage" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountList.json new file mode 100644 index 000000000000..fb51c4a3f9c2 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountList.json @@ -0,0 +1,103 @@ +{ + "parameters": { + "api-version": "2021-05-15", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1", + "name": "ddb1", + "location": "West US", + "type": "Microsoft.DocumentDB/databaseAccounts", + "kind": "GlobalDocumentDB", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "documentEndpoint": "https://ddb1.documents.azure.com:443/", + "ipRules": [], + "databaseAccountOfferType": "Standard", + "disableKeyBasedMetadataWriteAccess": false, + "consistencyPolicy": { + "defaultConsistencyLevel": "Session", + "maxIntervalInSeconds": 5, + "maxStalenessPrefix": 100 + }, + "writeLocations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "readLocations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "locations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "failoverPolicies": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "failoverPriority": 0 + } + ], + "privateEndpointConnections": [ + { + "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.DocumentDB/databaseAccounts/account1/privateEndpointConnections/pe1", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.Network/privateEndpoints/pe1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "actionsRequired": "None" + } + } + } + ], + "cors": [], + "defaultIdentity": "FirstPartyIdentity", + "enableFreeTier": false, + "apiProperties": {}, + "enableAnalyticalStorage": true, + "analyticalStorageConfiguration": { + "schemaType": "WellDefined" + }, + "networkAclBypass": "None", + "networkAclBypassResourceIds": [] + }, + "identity": { + "type": "SystemAssigned,UserAssigned", + "principalId": "52f4fef3-3c3f-4ff3-b52e-b5c9eeb68656", + "tenantId": "33e01921-4d64-4f8c-a055-5bdaffd5e33d", + "userAssignedIdentities": { + "/subscriptions/fa5fc227-a624-475e-b696-cdd604c735bc/resourceGroups/eu2cgroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": { + "clientId": "fbe75b66-01c5-4f87-a220-233af3270436", + "principalId": "33e01921-4d64-4f8c-a055-5bdaffd5e33d" + } + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountListByResourceGroup.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountListByResourceGroup.json new file mode 100644 index 000000000000..a0dc0e09029e --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountListByResourceGroup.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "api-version": "2021-05-15", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1", + "name": "ddb1", + "location": "West US", + "type": "Microsoft.DocumentDB/databaseAccounts", + "kind": "GlobalDocumentDB", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "documentEndpoint": "https://ddb1.documents.azure.com:443/", + "ipRules": [], + "databaseAccountOfferType": "Standard", + "disableKeyBasedMetadataWriteAccess": false, + "consistencyPolicy": { + "defaultConsistencyLevel": "Session", + "maxIntervalInSeconds": 5, + "maxStalenessPrefix": 100 + }, + "writeLocations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "readLocations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "locations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "failoverPolicies": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "failoverPriority": 0 + } + ], + "cors": [], + "enableFreeTier": false, + "defaultIdentity": "FirstPartyIdentity", + "networkAclBypass": "None", + "networkAclBypassResourceIds": [] + }, + "identity": { + "type": "SystemAssigned,UserAssigned", + "principalId": "52f4fef3-3c3f-4ff3-b52e-b5c9eeb68656", + "tenantId": "33e01921-4d64-4f8c-a055-5bdaffd5e33d", + "userAssignedIdentities": { + "/subscriptions/fa5fc227-a624-475e-b696-cdd604c735bc/resourceGroups/eu2cgroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": { + "clientId": "fbe75b66-01c5-4f87-a220-233af3270436", + "principalId": "33e01921-4d64-4f8c-a055-5bdaffd5e33d" + } + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountListConnectionStrings.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountListConnectionStrings.json new file mode 100644 index 000000000000..b0052576d410 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountListConnectionStrings.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": {} + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountListConnectionStringsMongo.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountListConnectionStringsMongo.json new file mode 100644 index 000000000000..555ed47cf1e7 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountListConnectionStringsMongo.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "accountName": "mongo-ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "connectionStrings": [ + { + "connectionString": "connection-string", + "description": "Name of the connection string" + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountListKeys.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountListKeys.json new file mode 100644 index 000000000000..bb66671928a8 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountListKeys.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "primaryMasterKey": "primaryMasterKey", + "secondaryMasterKey": "secondaryMasterKey", + "primaryReadonlyMasterKey": "primaryReadonlyMasterKey", + "secondaryReadonlyMasterKey": "secondaryReadonlyMasterKey" + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountListReadOnlyKeys.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountListReadOnlyKeys.json new file mode 100644 index 000000000000..03a7975d5573 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountListReadOnlyKeys.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "primaryReadonlyMasterKey": "primaryReadonlyMasterKey", + "secondaryReadonlyMasterKey": "secondaryReadonlyMasterKey" + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountOfflineRegion.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountOfflineRegion.json new file mode 100644 index 000000000000..15f8a8ec0f4e --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountOfflineRegion.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "region": "North Europe", + "regionParameterForOffline": [ + { + "region": "North Europe" + } + ] + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountOnlineRegion.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountOnlineRegion.json new file mode 100644 index 000000000000..0cf423bab9dc --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountOnlineRegion.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "region": "North Europe", + "regionParameterForOnline": [ + { + "region": "North Europe" + } + ] + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountPatch.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountPatch.json new file mode 100644 index 000000000000..14676386b84f --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountPatch.json @@ -0,0 +1,177 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "updateParameters": { + "location": "westus", + "tags": { + "dept": "finance" + }, + "identity": { + "type": "SystemAssigned,UserAssigned", + "userAssignedIdentities": { + "/subscriptions/fa5fc227-a624-475e-b696-cdd604c735bc/resourceGroups/eu2cgroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": {} + } + }, + "properties": { + "ipRules": [ + { + "ipAddressOrRange": "23.43.230.120" + }, + { + "ipAddressOrRange": "110.12.240.0/12" + } + ], + "isVirtualNetworkFilterEnabled": true, + "virtualNetworkRules": [ + { + "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "ignoreMissingVNetServiceEndpoint": false + } + ], + "consistencyPolicy": { + "defaultConsistencyLevel": "BoundedStaleness", + "maxIntervalInSeconds": 10, + "maxStalenessPrefix": 200 + }, + "defaultIdentity": "FirstPartyIdentity", + "enableFreeTier": false, + "enableAnalyticalStorage": true, + "analyticalStorageConfiguration": { + "schemaType": "WellDefined" + }, + "backupPolicy": { + "type": "Periodic", + "periodicModeProperties": { + "backupIntervalInMinutes": 240, + "backupRetentionIntervalInHours": 720 + } + }, + "networkAclBypass": "AzureServices", + "networkAclBypassResourceIds": [ + "/subscriptions/subId/resourcegroups/rgName/providers/Microsoft.Synapse/workspaces/workspaceName" + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1", + "name": "ddb1", + "location": "West US", + "type": "Microsoft.DocumentDB/databaseAccounts", + "kind": "GlobalDocumentDB", + "tags": { + "dept": "finance" + }, + "identity": { + "type": "SystemAssigned,UserAssigned", + "principalId": "52f4fef3-3c3f-4ff3-b52e-b5c9eeb68656", + "tenantId": "33e01921-4d64-4f8c-a055-5bdaffd5e33d", + "userAssignedIdentities": { + "/subscriptions/fa5fc227-a624-475e-b696-cdd604c735bc/resourceGroups/eu2cgroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": { + "clientId": "fbe75b66-01c5-4f87-a220-233af3270436", + "principalId": "33e01921-4d64-4f8c-a055-5bdaffd5e33d" + } + } + }, + "properties": { + "provisioningState": "Succeeded", + "documentEndpoint": "https://ddb1.documents.azure.com:443/", + "databaseAccountOfferType": "Standard", + "ipRules": [ + { + "ipAddressOrRange": "23.43.230.120" + }, + { + "ipAddressOrRange": "110.12.240.0/12" + } + ], + "isVirtualNetworkFilterEnabled": true, + "disableKeyBasedMetadataWriteAccess": false, + "consistencyPolicy": { + "defaultConsistencyLevel": "BoundedStaleness", + "maxIntervalInSeconds": 10, + "maxStalenessPrefix": 200 + }, + "writeLocations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "readLocations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "locations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "failoverPolicies": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "failoverPriority": 0 + } + ], + "virtualNetworkRules": [ + { + "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "ignoreMissingVNetServiceEndpoint": false + } + ], + "privateEndpointConnections": [ + { + "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.DocumentDB/databaseAccounts/account1/privateEndpointConnections/pe1", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.Network/privateEndpoints/pe1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "actionsRequired": "None" + } + } + } + ], + "cors": [], + "defaultIdentity": "FirstPartyIdentity", + "enableFreeTier": false, + "apiProperties": {}, + "enableAnalyticalStorage": true, + "analyticalStorageConfiguration": { + "schemaType": "WellDefined" + }, + "backupPolicy": { + "type": "Periodic", + "periodicModeProperties": { + "backupIntervalInMinutes": 240, + "backupRetentionIntervalInHours": 720 + } + }, + "networkAclBypass": "AzureServices", + "networkAclBypassResourceIds": [ + "/subscriptions/subId/resourcegroups/rgName/providers/Microsoft.Synapse/workspaces/workspaceName" + ] + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountRegenerateKey.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountRegenerateKey.json new file mode 100644 index 000000000000..ac0f84defba8 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountRegenerateKey.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "keyToRegenerate": { + "keyKind": "primary" + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountRegionGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountRegionGetMetrics.json new file mode 100644 index 000000000000..0ff6d3551c97 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseAccountRegionGetMetrics.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "region": "North Europe", + "$filter": "$filter=(name.value eq 'Total Requests') and timeGrain eq duration'PT5M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T00:13:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Count", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-19T23:58:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:03:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:08:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + } + ], + "name": { + "value": "Total Requests", + "localizedValue": "Total Requests" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseGetMetricDefinitions.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseGetMetricDefinitions.json new file mode 100644 index 000000000000..a756f2a9a86e --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseGetMetricDefinitions.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "subscriptionId": "subid", + "api-version": "2021-05-15", + "databaseRid": "databaseRid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "metricAvailabilities": [ + { + "timeGrain": "PT5M", + "retention": "P2D" + }, + { + "timeGrain": "PT1H", + "retention": "P14D" + }, + { + "timeGrain": "P1D", + "retention": "P60D" + } + ], + "primaryAggregationType": "Total", + "unit": "Count", + "resourceUri": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1", + "name": { + "value": "Total Requests", + "localizedValue": "Total Requests" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseGetMetrics.json new file mode 100644 index 000000000000..7f3450c3a2c6 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseGetMetrics.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "databaseRid": "rid", + "$filter": "$filter=(name.value eq 'Total Requests') and timeGrain eq duration'PT5M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T00:13:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Count", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-19T23:58:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:03:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:08:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + } + ], + "name": { + "value": "Total Requests", + "localizedValue": "Total Requests" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseGetUsages.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseGetUsages.json new file mode 100644 index 000000000000..021e869a4167 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBDatabaseGetUsages.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "databaseRid": "databaseRid", + "subscriptionId": "subid", + "$filter": "$filter=name.value eq 'Storage'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "unit": "Bytes", + "quotaPeriod": "P1D", + "limit": 10737418240, + "currentValue": 0, + "name": { + "value": "Storage", + "localizedValue": "Storage" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBGremlinDatabaseCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBGremlinDatabaseCreateUpdate.json new file mode 100644 index 000000000000..627845c7a665 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBGremlinDatabaseCreateUpdate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "createUpdateGremlinDatabaseParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName" + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/gremlinDatabases/databaseName", + "name": "databaseName", + "type": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName", + "_rid": "CqNBAA==", + "_ts": 1449602962, + "_etag": "\"00000a00-0000-0000-0000-56672f920000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBGremlinDatabaseDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBGremlinDatabaseDelete.json new file mode 100644 index 000000000000..ab5a342f48f3 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBGremlinDatabaseDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBGremlinDatabaseGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBGremlinDatabaseGet.json new file mode 100644 index 000000000000..e5726115c7f9 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBGremlinDatabaseGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/gremlinDatabases/databaseName", + "name": "databaseName", + "type": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName", + "_rid": "CqNBAA==", + "_ts": 1449602962, + "_etag": "\"00000a00-0000-0000-0000-56672f920000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBGremlinDatabaseList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBGremlinDatabaseList.json new file mode 100644 index 000000000000..dccfd37a3e0e --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBGremlinDatabaseList.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2021-05-15", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/gremlinDatabases/databaseName", + "name": "databaseName", + "type": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName", + "_rid": "CqNBAA==", + "_ts": 1449602962, + "_etag": "\"00000a00-0000-0000-0000-56672f920000\"" + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBGremlinDatabaseMigrateToAutoscale.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBGremlinDatabaseMigrateToAutoscale.json new file mode 100644 index 000000000000..c71fa68fc01f --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBGremlinDatabaseMigrateToAutoscale.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "autoscaleSettings": { + "maxThroughput": 4000 + }, + "minimumThroughput": "4000", + "offerReplacePending": "false", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBGremlinDatabaseMigrateToManualThroughput.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBGremlinDatabaseMigrateToManualThroughput.json new file mode 100644 index 000000000000..f6758cd00b5e --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBGremlinDatabaseMigrateToManualThroughput.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBGremlinDatabaseThroughputGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBGremlinDatabaseThroughputGet.json new file mode 100644 index 000000000000..f6523b2edf60 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBGremlinDatabaseThroughputGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/gremlinDatabases/databaseName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBGremlinDatabaseThroughputUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBGremlinDatabaseThroughputUpdate.json new file mode 100644 index 000000000000..d82646d71ab6 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBGremlinDatabaseThroughputUpdate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "updateThroughputParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/gremlinDatabases/databaseName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBGremlinGraphCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBGremlinGraphCreateUpdate.json new file mode 100644 index 000000000000..ac558f074806 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBGremlinGraphCreateUpdate.json @@ -0,0 +1,124 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "graphName": "graphName", + "createUpdateGremlinGraphParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "graphName", + "indexingPolicy": { + "indexingMode": "consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/AccountNumber" + ], + "kind": "Hash" + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + } + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/gremlinDatabases/databaseName/gremlinGraphs/graphName", + "name": "graphName", + "type": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases/gremlinGraphs", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "graphName", + "indexingPolicy": { + "indexingMode": "consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/AccountNumber" + ], + "kind": "Hash" + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + }, + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBGremlinGraphDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBGremlinGraphDelete.json new file mode 100644 index 000000000000..679cdd7b3c6f --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBGremlinGraphDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "graphName": "graphName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBGremlinGraphGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBGremlinGraphGet.json new file mode 100644 index 000000000000..c5beb4280e52 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBGremlinGraphGet.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2021-05-15", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName", + "graphName": "graphName" + }, + "responses": { + "200": { + "body": { + "id": "graphName", + "name": "graphName", + "type": "Microsoft.DocumentDB/databaseAccounts/apis/databases/graphs", + "properties": { + "resource": { + "id": "graphName", + "indexingPolicy": { + "indexingMode": "consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/AccountNumber" + ], + "kind": "Hash" + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + }, + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBGremlinGraphList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBGremlinGraphList.json new file mode 100644 index 000000000000..0fe642589d47 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBGremlinGraphList.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "api-version": "2021-05-15", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "testgrf", + "name": "testgrf", + "type": "Microsoft.DocumentDB/databaseAccounts/apis/databases/graphs", + "properties": { + "resource": { + "id": "testgrf", + "indexingPolicy": { + "indexingMode": "consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/AccountNumber" + ], + "kind": "Hash" + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + }, + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBGremlinGraphMigrateToAutoscale.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBGremlinGraphMigrateToAutoscale.json new file mode 100644 index 000000000000..7490ed723574 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBGremlinGraphMigrateToAutoscale.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "graphName": "graphName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "autoscaleSettings": { + "maxThroughput": 4000 + }, + "minimumThroughput": "4000", + "offerReplacePending": "false", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBGremlinGraphMigrateToManualThroughput.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBGremlinGraphMigrateToManualThroughput.json new file mode 100644 index 000000000000..ab186183accc --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBGremlinGraphMigrateToManualThroughput.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "graphName": "graphName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBGremlinGraphThroughputGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBGremlinGraphThroughputGet.json new file mode 100644 index 000000000000..454495386972 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBGremlinGraphThroughputGet.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "graphName": "graphName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/gremlinDatabases/databaseName/gremlinGraphs/graphName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBGremlinGraphThroughputUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBGremlinGraphThroughputUpdate.json new file mode 100644 index 000000000000..4e924858fc2f --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBGremlinGraphThroughputUpdate.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "graphName": "graphName", + "updateThroughputParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/gremlinDatabases/databaseName/gremlinGraphs/graphName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBMongoDBCollectionCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBMongoDBCollectionCreateUpdate.json new file mode 100644 index 000000000000..4eb88fb1b595 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBMongoDBCollectionCreateUpdate.json @@ -0,0 +1,83 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "collectionName": "collectionName", + "createUpdateMongoDBCollectionParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "collectionName", + "indexes": [ + { + "key": { + "keys": [ + "_ts" + ] + }, + "options": { + "expireAfterSeconds": 100, + "unique": true + } + }, + { + "key": { + "keys": [ + "_id" + ] + } + } + ], + "shardKey": { + "testKey": "Hash" + } + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName/mongodbCollections/collectionName", + "name": "collectionName", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/mongodbCollections", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "collectionName", + "indexes": [ + { + "key": { + "keys": [ + "_ts" + ] + }, + "options": { + "expireAfterSeconds": 100, + "unique": true + } + }, + { + "key": { + "keys": [ + "_id" + ] + } + } + ], + "shardKey": { + "testKey": "Hash" + } + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBMongoDBCollectionDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBMongoDBCollectionDelete.json new file mode 100644 index 000000000000..c0df1c90d8d7 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBMongoDBCollectionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "collectionName": "collectionName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBMongoDBCollectionGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBMongoDBCollectionGet.json new file mode 100644 index 000000000000..74194ea2a1fc --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBMongoDBCollectionGet.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2021-05-15", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName", + "collectionName": "collectionName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName/mongodbCollections/collectionName", + "name": "collectionName", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/mongodbCollections", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "testcoll", + "indexes": [ + { + "key": { + "keys": [ + "testKey" + ] + }, + "options": { + "expireAfterSeconds": 100, + "unique": true + } + } + ], + "shardKey": { + "testKey": "Hash" + }, + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBMongoDBCollectionList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBMongoDBCollectionList.json new file mode 100644 index 000000000000..665e0c208bba --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBMongoDBCollectionList.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2021-05-15", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName/mongodbCollections/collectionName", + "name": "collectionName", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/mongodbCollections", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "testcoll", + "indexes": [ + { + "key": { + "keys": [ + "testKey" + ] + }, + "options": { + "expireAfterSeconds": 100, + "unique": true + } + } + ], + "shardKey": { + "testKey": "Hash" + } + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBMongoDBCollectionMigrateToAutoscale.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBMongoDBCollectionMigrateToAutoscale.json new file mode 100644 index 000000000000..1a4754502347 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBMongoDBCollectionMigrateToAutoscale.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "collectionName": "collectionName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "autoscaleSettings": { + "maxThroughput": 4000 + }, + "minimumThroughput": "4000", + "offerReplacePending": "false", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBMongoDBCollectionMigrateToManualThroughput.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBMongoDBCollectionMigrateToManualThroughput.json new file mode 100644 index 000000000000..a276f5b2a78b --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBMongoDBCollectionMigrateToManualThroughput.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "collectionName": "collectionName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBMongoDBCollectionThroughputGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBMongoDBCollectionThroughputGet.json new file mode 100644 index 000000000000..e82d44de4b63 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBMongoDBCollectionThroughputGet.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "collectionName": "collectionName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName/mongodbCollections/collectionName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/mongodbCollections/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBMongoDBCollectionThroughputUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBMongoDBCollectionThroughputUpdate.json new file mode 100644 index 000000000000..6512f7f01554 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBMongoDBCollectionThroughputUpdate.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "collectionName": "collectionName", + "updateThroughputParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName/mongodbCollections/collectionName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/mongodbCollections/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBMongoDBDatabaseCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBMongoDBDatabaseCreateUpdate.json new file mode 100644 index 000000000000..782cae149872 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBMongoDBDatabaseCreateUpdate.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "createUpdateMongoDBDatabaseParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName" + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName", + "name": "databaseName", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "updatedDatabaseName" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBMongoDBDatabaseDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBMongoDBDatabaseDelete.json new file mode 100644 index 000000000000..ab5a342f48f3 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBMongoDBDatabaseDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBMongoDBDatabaseGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBMongoDBDatabaseGet.json new file mode 100644 index 000000000000..e9263d881869 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBMongoDBDatabaseGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName", + "name": "databaseName", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBMongoDBDatabaseList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBMongoDBDatabaseList.json new file mode 100644 index 000000000000..98b35bd25d03 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBMongoDBDatabaseList.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2021-05-15", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName", + "name": "databaseName", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName" + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBMongoDBDatabaseMigrateToAutoscale.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBMongoDBDatabaseMigrateToAutoscale.json new file mode 100644 index 000000000000..c71fa68fc01f --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBMongoDBDatabaseMigrateToAutoscale.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "autoscaleSettings": { + "maxThroughput": 4000 + }, + "minimumThroughput": "4000", + "offerReplacePending": "false", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBMongoDBDatabaseMigrateToManualThroughput.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBMongoDBDatabaseMigrateToManualThroughput.json new file mode 100644 index 000000000000..f6758cd00b5e --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBMongoDBDatabaseMigrateToManualThroughput.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBMongoDBDatabaseThroughputGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBMongoDBDatabaseThroughputGet.json new file mode 100644 index 000000000000..ee4ffd507d92 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBMongoDBDatabaseThroughputGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBMongoDBDatabaseThroughputUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBMongoDBDatabaseThroughputUpdate.json new file mode 100644 index 000000000000..bf7462896585 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBMongoDBDatabaseThroughputUpdate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "updateThroughputParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBNotebookWorkspaceCreate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBNotebookWorkspaceCreate.json new file mode 100644 index 000000000000..3cb018d13622 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBNotebookWorkspaceCreate.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2021-05-15", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "accountName": "ddb1", + "notebookWorkspaceName": "default", + "notebookCreateUpdateParameters": {} + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/notebookWorkspaces/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/notebookWorkspaces", + "properties": { + "notebookServerEndpoint": "endpoint", + "status": "Online" + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBNotebookWorkspaceDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBNotebookWorkspaceDelete.json new file mode 100644 index 000000000000..8147ffb551bb --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBNotebookWorkspaceDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "notebookWorkspaceName": "default" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBNotebookWorkspaceGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBNotebookWorkspaceGet.json new file mode 100644 index 000000000000..f1f09dfb1882 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBNotebookWorkspaceGet.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2021-05-15", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "accountName": "ddb1", + "notebookWorkspaceName": "default" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/notebookWorkspaces/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/notebookWorkspaces", + "properties": { + "notebookServerEndpoint": "endpoint", + "status": "Online" + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBNotebookWorkspaceList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBNotebookWorkspaceList.json new file mode 100644 index 000000000000..b2c44dd1aba5 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBNotebookWorkspaceList.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2021-05-15", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "accountName": "ddb1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/notebookWorkspaces/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/notebookWorkspaces", + "properties": { + "notebookServerEndpoint": "endpoint", + "status": "Online" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBNotebookWorkspaceListConnectionInfo.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBNotebookWorkspaceListConnectionInfo.json new file mode 100644 index 000000000000..9704d32fa173 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBNotebookWorkspaceListConnectionInfo.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2021-05-15", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "accountName": "ddb1", + "notebookWorkspaceName": "default" + }, + "responses": { + "200": { + "body": { + "authToken": "auth-token", + "notebookServerEndpoint": "notebook endpoint" + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBNotebookWorkspaceRegenerateAuthToken.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBNotebookWorkspaceRegenerateAuthToken.json new file mode 100644 index 000000000000..0c476b3b8abd --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBNotebookWorkspaceRegenerateAuthToken.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-05-15", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "accountName": "ddb1", + "notebookWorkspaceName": "default" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBNotebookWorkspaceStart.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBNotebookWorkspaceStart.json new file mode 100644 index 000000000000..0c476b3b8abd --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBNotebookWorkspaceStart.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-05-15", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "accountName": "ddb1", + "notebookWorkspaceName": "default" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBOperationsList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBOperationsList.json new file mode 100644 index 000000000000..44465f4fcf00 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBOperationsList.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2021-05-15" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "operationName", + "display": { + "Provider": "providerName", + "Resource": "resourceName", + "Operation": "operationName", + "Description": "description" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBPKeyRangeIdGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBPKeyRangeIdGetMetrics.json new file mode 100644 index 000000000000..3c68f74c8cb3 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBPKeyRangeIdGetMetrics.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "databaseRid": "databaseRid", + "collectionRid": "collectionRid", + "partitionKeyRangeId": "0", + "$filter": "$filter=(name.value eq 'Max RUs Per Second') and timeGrain eq duration'PT1M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T23:58:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT1M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T23:58:55.2780000Z", + "unit": "Count", + "partitionId": "00000000-0000-0000-0000-000000000000", + "partitionKeyRangeId": "0", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:54:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:55:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:56:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:57:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:58:55.2780000Z", + "maximum": 5 + } + ], + "name": { + "value": "Max RUs Per Second", + "localizedValue": "Max RUs Per Second" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBPKeyRangeIdRegionGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBPKeyRangeIdRegionGetMetrics.json new file mode 100644 index 000000000000..3078a8fff4e5 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBPKeyRangeIdRegionGetMetrics.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "databaseRid": "databaseRid", + "collectionRid": "collectionRid", + "partitionKeyRangeId": "0", + "region": "West US", + "$filter": "$filter=(name.value eq 'Max RUs Per Second') and timeGrain eq duration'PT1M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T23:58:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT1M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T23:58:55.2780000Z", + "unit": "Count", + "partitionId": "00000000-0000-0000-0000-000000000000", + "partitionKeyRangeId": "0", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:54:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:55:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:56:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:57:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:58:55.2780000Z", + "maximum": 5 + } + ], + "name": { + "value": "Max RUs Per Second", + "localizedValue": "Max RUs Per Second" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBPercentileGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBPercentileGetMetrics.json new file mode 100644 index 000000000000..87d62c716e9b --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBPercentileGetMetrics.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "$filter": "$filter=(name.value eq 'Probabilistic Bounded Staleness') and timeGrain eq duration'PT5M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T00:13:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Milliseconds", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "P10": 1.11, + "P25": 2.5, + "P50": 4.34, + "P75": 5.2, + "P90": 6.77, + "P95": 7.1, + "P99": 8.3 + } + ], + "name": { + "value": "Probabilistic Bounded Staleness-S-West Central US-T-East US", + "localizedValue": "Probabilistic Bounded Staleness-S-West Central US-T-East US" + } + }, + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Milliseconds", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "P10": 1.11, + "P25": 2.5, + "P50": 4.34, + "P75": 5.2, + "P90": 6.77, + "P95": 7.1, + "P99": 8.3 + } + ], + "name": { + "value": "Probabilistic Bounded Staleness-S-West Central US-T-West US", + "localizedValue": "Probabilistic Bounded Staleness-S-West Central US-T-West US" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBPercentileSourceTargetGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBPercentileSourceTargetGetMetrics.json new file mode 100644 index 000000000000..5fcdff267fb4 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBPercentileSourceTargetGetMetrics.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "sourceRegion": "West Central US", + "targetRegion": "East US", + "$filter": "$filter=(name.value eq 'Probabilistic Bounded Staleness') and timeGrain eq duration'PT5M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T00:13:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Milliseconds", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "P10": 1.11, + "P25": 2.5, + "P50": 4.34, + "P75": 5.2, + "P90": 6.77, + "P95": 7.1, + "P99": 8.3 + } + ], + "name": { + "value": "Probabilistic Bounded Staleness-S-West Central US-T-East US", + "localizedValue": "Probabilistic Bounded Staleness-S-West Central US-T-East US" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBPercentileTargetGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBPercentileTargetGetMetrics.json new file mode 100644 index 000000000000..5693a7079a86 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBPercentileTargetGetMetrics.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "targetRegion": "East US", + "$filter": "$filter=(name.value eq 'Probabilistic Bounded Staleness') and timeGrain eq duration'PT5M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T00:13:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Milliseconds", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "P10": 1.11, + "P25": 2.5, + "P50": 4.34, + "P75": 5.2, + "P90": 6.77, + "P95": 7.1, + "P99": 8.3 + } + ], + "name": { + "value": "Probabilistic Bounded Staleness-S-West Central US-T-East US", + "localizedValue": "Probabilistic Bounded Staleness-S-West Central US-T-East US" + } + }, + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Milliseconds", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "P10": 1.11, + "P25": 2.5, + "P50": 4.34, + "P75": 5.2, + "P90": 6.77, + "P95": 7.1, + "P99": 8.3 + } + ], + "name": { + "value": "Probabilistic Bounded Staleness-S-West US-T-East US", + "localizedValue": "Probabilistic Bounded Staleness-S-West Central US-T-West US" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBPrivateEndpointConnectionDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBPrivateEndpointConnectionDelete.json new file mode 100644 index 000000000000..70e332ff1cf6 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBPrivateEndpointConnectionDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg1", + "accountName": "ddb1", + "api-version": "2021-05-15", + "privateEndpointConnectionName": "privateEndpointConnectionName" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBPrivateEndpointConnectionGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBPrivateEndpointConnectionGet.json new file mode 100644 index 000000000000..32e1694fc32c --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBPrivateEndpointConnectionGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg1", + "accountName": "ddb1", + "api-version": "2021-05-15", + "privateEndpointConnectionName": "privateEndpointConnectionName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg1/providers/Microsoft.DocumentDb/databaseAccounts/ddb1/privateEndpointConnections/privateEndpointConnectionName", + "name": "privateEndpointConnectionName", + "type": "Microsoft.DocumentDb/databaseAccounts/privateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg1Network/providers/Microsoft.Network/privateEndpoints/privateEndpointName" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + }, + "groupId": "Sql", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBPrivateEndpointConnectionListGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBPrivateEndpointConnectionListGet.json new file mode 100644 index 000000000000..b8296743f2d0 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBPrivateEndpointConnectionListGet.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg1", + "accountName": "ddb1", + "api-version": "2021-05-15" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDb/databaseAccounts/ddb1/privateEndpointConnections/privateEndpointConnectionName", + "name": "privateEndpointConnectionName", + "type": "Microsoft.DocumentDb/databaseAccounts/privateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg1Network/providers/Microsoft.Network/privateEndpoints/privateEndpointName" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + }, + "groupId": "Sql", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDb/databaseAccounts/ddb1/privateEndpointConnections/privateEndpointConnectionName2", + "name": "privateEndpointConnectionName", + "type": "Microsoft.DocumentDb/databaseAccounts/privateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg1Network/providers/Microsoft.Network/privateEndpoints/privateEndpointName2" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + }, + "groupId": "Sql", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBPrivateEndpointConnectionUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBPrivateEndpointConnectionUpdate.json new file mode 100644 index 000000000000..40fe13959b7e --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBPrivateEndpointConnectionUpdate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg1", + "accountName": "ddb1", + "api-version": "2021-05-15", + "privateEndpointConnectionName": "privateEndpointConnectionName", + "parameters": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@contoso.com" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg1/providers/Microsoft.DocumentDb/databaseAccounts/ddb1/privateEndpointConnections/privateEndpointConnectionName", + "name": "privateEndpointConnectionName", + "type": "Microsoft.DocumentDb/databaseAccounts/privateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg1Network/providers/Microsoft.Network/privateEndpoints/privateEndpointName" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + }, + "groupId": "Sql", + "provisioningState": "Succeeded" + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBPrivateLinkResourceGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBPrivateLinkResourceGet.json new file mode 100644 index 000000000000..dcd1addef340 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBPrivateLinkResourceGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg1", + "accountName": "ddb1", + "api-version": "2021-05-15", + "groupName": "sql" + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.DocumentDb/databaseAccounts/ddb1/privateLinkResources/sql", + "name": "sql", + "type": "Microsoft.DocumentDB/databaseAccounts/privateLinkResources", + "properties": { + "groupId": "sql", + "requiredMembers": [ + "ddb1", + "ddb1-westus" + ], + "requiredZoneNames": [ + "privatelink.documents.azure.net" + ] + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBPrivateLinkResourceListGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBPrivateLinkResourceListGet.json new file mode 100644 index 000000000000..c2d2abbfab21 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBPrivateLinkResourceListGet.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg1", + "accountName": "ddb1", + "api-version": "2021-05-15" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.DocumentDb/databaseAccounts/ddb1/privateLinkResources/sql", + "name": "sql", + "type": "Microsoft.DocumentDB/databaseAccounts/privateLinkResources", + "properties": { + "groupId": "sql", + "requiredMembers": [ + "ddb1", + "ddb1-westus" + ], + "requiredZoneNames": [ + "privatelink.documents.azure.net" + ] + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBRegionCollectionGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBRegionCollectionGetMetrics.json new file mode 100644 index 000000000000..e9e1bc2d5070 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBRegionCollectionGetMetrics.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "databaseRid": "databaseRid", + "collectionRid": "collectionRid", + "region": "North Europe", + "$filter": "$filter=(name.value eq 'Total Requests') and timeGrain eq duration'PT5M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T00:13:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Count", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-19T23:58:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:03:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:08:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + } + ], + "name": { + "value": "Total Requests", + "localizedValue": "Total Requests" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlContainerCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlContainerCreateUpdate.json new file mode 100644 index 000000000000..c113cd98c282 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlContainerCreateUpdate.json @@ -0,0 +1,124 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName", + "createUpdateSqlContainerParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "containerName", + "indexingPolicy": { + "indexingMode": "consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/AccountNumber" + ], + "kind": "Hash" + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + } + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName", + "name": "containerName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "containerName", + "indexingPolicy": { + "indexingMode": "consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/AccountNumber" + ], + "kind": "Hash" + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + }, + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlContainerDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlContainerDelete.json new file mode 100644 index 000000000000..1eac3e462e41 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlContainerDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlContainerGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlContainerGet.json new file mode 100644 index 000000000000..f2ddc4ce5d51 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlContainerGet.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "api-version": "2021-05-15", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName", + "containerName": "containerName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName", + "name": "containerName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "containerName", + "indexingPolicy": { + "indexingMode": "consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/AccountNumber" + ], + "kind": "Hash" + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + }, + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + }, + "options": { + "throughput": 400 + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlContainerList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlContainerList.json new file mode 100644 index 000000000000..471e5b29b11a --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlContainerList.json @@ -0,0 +1,192 @@ +{ + "parameters": { + "api-version": "2021-05-15", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName", + "name": "containerName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "testctn", + "indexingPolicy": { + "indexingMode": "consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/AccountNumber" + ], + "kind": "Hash" + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + }, + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName1", + "name": "containerName1", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "testctn1", + "indexingPolicy": { + "indexingMode": "consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/AccountNumber", + "/AccountLocation" + ], + "kind": "MultiHash", + "version": 2 + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + }, + "_rid": "PD5DALigDiw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName2", + "name": "containerName2", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "testctn2", + "indexingPolicy": { + "indexingMode": "consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/_partitionKey" + ], + "kind": "Hash", + "version": 2, + "systemKey": true + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + }, + "_rid": "PD5DALigDhw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlContainerMigrateToAutoscale.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlContainerMigrateToAutoscale.json new file mode 100644 index 000000000000..c0e9b1851e0e --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlContainerMigrateToAutoscale.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "autoscaleSettings": { + "maxThroughput": 4000 + }, + "minimumThroughput": "4000", + "offerReplacePending": "false", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlContainerMigrateToManualThroughput.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlContainerMigrateToManualThroughput.json new file mode 100644 index 000000000000..6fb9782c8915 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlContainerMigrateToManualThroughput.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlContainerThroughputGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlContainerThroughputGet.json new file mode 100644 index 000000000000..f6b641512770 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlContainerThroughputGet.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlContainerThroughputUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlContainerThroughputUpdate.json new file mode 100644 index 000000000000..b842388b7263 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlContainerThroughputUpdate.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName", + "updateThroughputParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlDatabaseCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlDatabaseCreateUpdate.json new file mode 100644 index 000000000000..187e4e313b21 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlDatabaseCreateUpdate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "createUpdateSqlDatabaseParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName" + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName", + "name": "databaseName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName", + "_rid": "CqNBAA==", + "_ts": 1449602962, + "_etag": "\"00000a00-0000-0000-0000-56672f920000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlDatabaseDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlDatabaseDelete.json new file mode 100644 index 000000000000..ab5a342f48f3 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlDatabaseDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlDatabaseGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlDatabaseGet.json new file mode 100644 index 000000000000..8258bfddd382 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlDatabaseGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName", + "name": "databaseName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName", + "_rid": "CqNBAA==", + "_ts": 1449602962, + "_etag": "\"00000a00-0000-0000-0000-56672f920000\"", + "_colls": "colls/", + "_users": "users/" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlDatabaseList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlDatabaseList.json new file mode 100644 index 000000000000..84bbd098e049 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlDatabaseList.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2021-05-15", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName", + "name": "databaseName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName", + "_rid": "CqNBAA==", + "_ts": 1449602962, + "_etag": "\"00000a00-0000-0000-0000-56672f920000\"", + "_colls": "colls/", + "_users": "users/" + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlDatabaseMigrateToAutoscale.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlDatabaseMigrateToAutoscale.json new file mode 100644 index 000000000000..c71fa68fc01f --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlDatabaseMigrateToAutoscale.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "autoscaleSettings": { + "maxThroughput": 4000 + }, + "minimumThroughput": "4000", + "offerReplacePending": "false", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlDatabaseMigrateToManualThroughput.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlDatabaseMigrateToManualThroughput.json new file mode 100644 index 000000000000..f6758cd00b5e --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlDatabaseMigrateToManualThroughput.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlDatabaseThroughputGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlDatabaseThroughputGet.json new file mode 100644 index 000000000000..3d998d320c4b --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlDatabaseThroughputGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlDatabaseThroughputUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlDatabaseThroughputUpdate.json new file mode 100644 index 000000000000..4e08977e76bc --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlDatabaseThroughputUpdate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "updateThroughputParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlRoleAssignmentCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlRoleAssignmentCreateUpdate.json new file mode 100644 index 000000000000..96119b80a222 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlRoleAssignmentCreateUpdate.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "roleAssignmentId": "myRoleAssignmentId", + "subscriptionId": "mySubscriptionId", + "resourceGroupName": "myResourceGroupName", + "accountName": "myAccountName", + "api-version": "2021-05-15", + "createUpdateSqlRoleAssignmentParameters": { + "properties": { + "roleDefinitionId": "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/sqlRoleDefinitions/myRoleDefinitionId", + "scope": "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/dbs/purchases/colls/redmond-purchases", + "principalId": "myPrincipalId" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/sqlRoleAssignments/myRoleAssignmentId", + "name": "myRoleAssignmentId", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlRoleAssignments", + "properties": { + "roleDefinitionId": "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/sqlRoleDefinitions/myRoleDefinitionId", + "scope": "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/dbs/purchases/colls/redmond-purchases", + "principalId": "myPrincipalId" + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlRoleAssignmentDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlRoleAssignmentDelete.json new file mode 100644 index 000000000000..9c6d321ac47c --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlRoleAssignmentDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "roleAssignmentId": "myRoleAssignmentId", + "subscriptionId": "mySubscriptionId", + "resourceGroupName": "myResourceGroupName", + "accountName": "myAccountName", + "api-version": "2021-05-15" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlRoleAssignmentGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlRoleAssignmentGet.json new file mode 100644 index 000000000000..60fabd26545e --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlRoleAssignmentGet.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "roleAssignmentId": "myRoleAssignmentId", + "subscriptionId": "mySubscriptionId", + "resourceGroupName": "myResourceGroupName", + "accountName": "myAccountName", + "api-version": "2021-05-15" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/sqlRoleAssignments/myRoleAssignmentId", + "name": "myRoleAssignmentId", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlRoleAssignments", + "properties": { + "roleDefinitionId": "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/sqlRoleDefinitions/myRoleDefinitionId", + "scope": "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/dbs/purchases/colls/redmond-purchases", + "principalId": "myPrincipalId" + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlRoleAssignmentList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlRoleAssignmentList.json new file mode 100644 index 000000000000..af8650653938 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlRoleAssignmentList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "mySubscriptionId", + "resourceGroupName": "myResourceGroupName", + "accountName": "myAccountName", + "api-version": "2021-05-15" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/sqlRoleAssignments/myRoleAssignmentId", + "name": "myRoleAssignmentId", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlRoleAssignments", + "properties": { + "roleDefinitionId": "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/sqlRoleDefinitions/myRoleDefinitionId", + "scope": "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/dbs/purchases/colls/redmond-purchases", + "principalId": "myPrincipalId" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlRoleDefinitionCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlRoleDefinitionCreateUpdate.json new file mode 100644 index 000000000000..f0619384d8d6 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlRoleDefinitionCreateUpdate.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "roleDefinitionId": "myRoleDefinitionId", + "subscriptionId": "mySubscriptionId", + "resourceGroupName": "myResourceGroupName", + "accountName": "myAccountName", + "api-version": "2021-05-15", + "createUpdateSqlRoleDefinitionParameters": { + "properties": { + "roleName": "myRoleName", + "type": "CustomRole", + "assignableScopes": [ + "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/dbs/sales", + "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/dbs/purchases" + ], + "permissions": [ + { + "dataActions": [ + "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/items/create", + "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/items/read" + ], + "notDataActions": [] + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/sqlRoleDefinitions/myRoleDefinitionId", + "name": "myRoleDefinitionId", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlRoleDefinitions", + "properties": { + "roleName": "myRoleName", + "type": "CustomRole", + "assignableScopes": [ + "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/dbs/sales", + "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/dbs/purchases" + ], + "permissions": [ + { + "dataActions": [ + "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/items/create", + "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/items/read" + ] + } + ] + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlRoleDefinitionDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlRoleDefinitionDelete.json new file mode 100644 index 000000000000..9c71043ac2c0 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlRoleDefinitionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "roleDefinitionId": "myRoleDefinitionId", + "subscriptionId": "mySubscriptionId", + "resourceGroupName": "myResourceGroupName", + "accountName": "myAccountName", + "api-version": "2021-05-15" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlRoleDefinitionGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlRoleDefinitionGet.json new file mode 100644 index 000000000000..5f6dc0ed3a43 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlRoleDefinitionGet.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "roleDefinitionId": "myRoleDefinitionId", + "subscriptionId": "mySubscriptionId", + "resourceGroupName": "myResourceGroupName", + "accountName": "myAccountName", + "api-version": "2021-05-15" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/sqlRoleDefinitions/myRoleDefinitionId", + "name": "myRoleDefinitionId", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlRoleDefinitions", + "properties": { + "roleName": "myRoleName", + "type": "CustomRole", + "assignableScopes": [ + "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/dbs/sales", + "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/dbs/purchases" + ], + "permissions": [ + { + "dataActions": [ + "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/items/create", + "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/items/read" + ], + "notDataActions": [] + } + ] + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlRoleDefinitionList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlRoleDefinitionList.json new file mode 100644 index 000000000000..0132c8bf42bc --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlRoleDefinitionList.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "mySubscriptionId", + "resourceGroupName": "myResourceGroupName", + "accountName": "myAccountName", + "api-version": "2021-05-15" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/sqlRoleDefinitions/myRoleDefinitionId", + "name": "myRoleDefinitionId", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlRoleDefinitions", + "properties": { + "roleName": "myRoleName", + "type": "CustomRole", + "assignableScopes": [ + "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/dbs/sales", + "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/dbs/purchases" + ], + "permissions": [ + { + "dataActions": [ + "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/items/create", + "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/items/read" + ], + "notDataActions": [] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlStoredProcedureCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlStoredProcedureCreateUpdate.json new file mode 100644 index 000000000000..d7f4ae5e8257 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlStoredProcedureCreateUpdate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName", + "storedProcedureName": "storedProcedureName", + "createUpdateSqlStoredProcedureParameters": { + "properties": { + "resource": { + "id": "storedProcedureName", + "body": "body" + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/sqlStoredProcedures/storedProcedureName", + "name": "storedProcedureName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/sqlStoredProcedures", + "properties": { + "resource": { + "id": "storedProcedureName", + "body": "body", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlStoredProcedureDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlStoredProcedureDelete.json new file mode 100644 index 000000000000..ec4cbb3f34bb --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlStoredProcedureDelete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName", + "storedProcedureName": "storedProcedureName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlStoredProcedureGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlStoredProcedureGet.json new file mode 100644 index 000000000000..31116b128f87 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlStoredProcedureGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2021-05-15", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName", + "containerName": "containerName", + "storedProcedureName": "storedProcedureName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/sqlStoredProcedures/storedProcedureName", + "name": "storedProcedureName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/sqlStoredProcedures", + "properties": { + "resource": { + "id": "storedProcedureName", + "body": "body", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlStoredProcedureList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlStoredProcedureList.json new file mode 100644 index 000000000000..697351d22d40 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlStoredProcedureList.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2021-05-15", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName", + "containerName": "containerName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/sqlStoredProcedures/storedProcedureName", + "name": "testctn", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/sqlStoredProcedures", + "properties": { + "resource": { + "id": "testctn", + "body": "body", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlTriggerCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlTriggerCreateUpdate.json new file mode 100644 index 000000000000..254ed0ee79e9 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlTriggerCreateUpdate.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName", + "triggerName": "triggerName", + "createUpdateSqlTriggerParameters": { + "properties": { + "resource": { + "id": "triggerName", + "body": "body", + "triggerType": "triggerType", + "triggerOperation": "triggerOperation" + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/sqlTriggers/triggerName", + "name": "triggerName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/sqlTriggers", + "properties": { + "resource": { + "id": "triggerName", + "body": "body", + "triggerType": "triggerType", + "triggerOperation": "triggerOperation", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlTriggerDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlTriggerDelete.json new file mode 100644 index 000000000000..90591826913f --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlTriggerDelete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName", + "triggerName": "triggerName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlTriggerGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlTriggerGet.json new file mode 100644 index 000000000000..9723caf8d3c3 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlTriggerGet.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2021-05-15", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName", + "containerName": "containerName", + "triggerName": "triggerName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/sqlTriggers/triggerName", + "name": "triggerName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/sqlTriggers", + "properties": { + "resource": { + "id": "triggerName", + "body": "body", + "triggerType": "triggerType", + "triggerOperation": "triggerOperation", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlTriggerList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlTriggerList.json new file mode 100644 index 000000000000..1572a026cb9c --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlTriggerList.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2021-05-15", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName", + "containerName": "containerName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/sqlTriggers/triggerName", + "name": "testctn", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/sqlTriggers", + "properties": { + "resource": { + "id": "testctn", + "body": "body", + "triggerType": "triggerType", + "triggerOperation": "triggerOperation", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlUserDefinedFunctionCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlUserDefinedFunctionCreateUpdate.json new file mode 100644 index 000000000000..5b4a199070b7 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlUserDefinedFunctionCreateUpdate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName", + "userDefinedFunctionName": "userDefinedFunctionName", + "createUpdateSqlUserDefinedFunctionParameters": { + "properties": { + "resource": { + "id": "userDefinedFunctionName", + "body": "body" + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/sqlUserDefinedFunctions/userDefinedFunctionName", + "name": "userDefinedFunctionName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/sqlUserDefinedFunctions", + "properties": { + "resource": { + "id": "userDefinedFunctionName", + "body": "body", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlUserDefinedFunctionDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlUserDefinedFunctionDelete.json new file mode 100644 index 000000000000..5262d7d065df --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlUserDefinedFunctionDelete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName", + "userDefinedFunctionName": "userDefinedFunctionName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlUserDefinedFunctionGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlUserDefinedFunctionGet.json new file mode 100644 index 000000000000..dc64604e52f7 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlUserDefinedFunctionGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2021-05-15", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName", + "containerName": "containerName", + "userDefinedFunctionName": "userDefinedFunctionName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/sqlUserDefinedFunctions/userDefinedFunctionName", + "name": "userDefinedFunctionName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/sqlUserDefinedFunctions", + "properties": { + "resource": { + "id": "userDefinedFunctionName", + "body": "body", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlUserDefinedFunctionList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlUserDefinedFunctionList.json new file mode 100644 index 000000000000..8f584dc3fd42 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBSqlUserDefinedFunctionList.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2021-05-15", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName", + "containerName": "containerName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/sqlUserDefinedFunctions/userDefinedFunctionName", + "name": "testctn", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/sqlUserDefinedFunctions", + "properties": { + "resource": { + "id": "testctn", + "body": "body", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBTableCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBTableCreateUpdate.json new file mode 100644 index 000000000000..6d6aa86530dc --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBTableCreateUpdate.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "tableName": "tableName", + "createUpdateTableParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "tableName" + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/tables/tableName", + "name": "tableName", + "type": "Microsoft.DocumentDB/databaseAccounts/tables", + "location": "West US", + "properties": { + "resource": { + "id": "tableName" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBTableDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBTableDelete.json new file mode 100644 index 000000000000..4bbf61cbbc07 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBTableDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "tableName": "tableName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBTableGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBTableGet.json new file mode 100644 index 000000000000..54bc2145ef30 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBTableGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "tableName": "tableName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/tables/tableName", + "name": "tableName", + "type": "Microsoft.DocumentDB/databaseAccounts/tables", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "tableName", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBTableList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBTableList.json new file mode 100644 index 000000000000..3275ad93755d --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBTableList.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2021-05-15", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/tables/tableName", + "name": "tableName", + "type": "Microsoft.DocumentDB/databaseAccounts/tables", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "tableName" + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBTableMigrateToAutoscale.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBTableMigrateToAutoscale.json new file mode 100644 index 000000000000..9e6f70c3fb30 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBTableMigrateToAutoscale.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "tableName": "tableName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "autoscaleSettings": { + "maxThroughput": 4000 + }, + "minimumThroughput": "4000", + "offerReplacePending": "false", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBTableMigrateToManualThroughput.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBTableMigrateToManualThroughput.json new file mode 100644 index 000000000000..e661a8616ffc --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBTableMigrateToManualThroughput.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "tableName": "tableName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBTableThroughputGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBTableThroughputGet.json new file mode 100644 index 000000000000..15c4e922fe49 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBTableThroughputGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "tableName": "tableName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/tables/tableName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/tables/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBTableThroughputUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBTableThroughputUpdate.json new file mode 100644 index 000000000000..214d862f1705 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/examples/CosmosDBTableThroughputUpdate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2021-05-15", + "subscriptionId": "subid", + "tableName": "tableName", + "updateThroughputParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/tables/tableName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/tables/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/notebook.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/notebook.json new file mode 100644 index 000000000000..6de8d1eaf559 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/notebook.json @@ -0,0 +1,461 @@ +{ + "swagger": "2.0", + "info": { + "title": "Cosmos DB", + "description": "Azure Cosmos DB Database Service Resource Provider REST API", + "version": "2021-05-15" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "Impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/notebookWorkspaces": { + "get": { + "tags": [ + "NotebookWorkspacesResource" + ], + "description": "Gets the notebook workspace resources of an existing Cosmos DB account.", + "operationId": "NotebookWorkspaces_ListByDatabaseAccount", + "x-ms-pageable": { + "nextLinkName": null + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved notebook workspace resources.", + "schema": { + "$ref": "#/definitions/NotebookWorkspaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../stable/2021-05-15/cosmos-db.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "CosmosDBNotebookWorkspaceList": { + "$ref": "./examples/CosmosDBNotebookWorkspaceList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/notebookWorkspaces/{notebookWorkspaceName}": { + "get": { + "tags": [ + "NotebookWorkspacesResource" + ], + "description": "Gets the notebook workspace for a Cosmos DB account.", + "operationId": "NotebookWorkspaces_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/NotebookWorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved a specified notebook workspace resource.", + "schema": { + "$ref": "#/definitions/NotebookWorkspace" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../stable/2021-05-15/cosmos-db.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "CosmosDBNotebookWorkspaceGet": { + "$ref": "./examples/CosmosDBNotebookWorkspaceGet.json" + } + } + }, + "put": { + "tags": [ + "NotebookWorkspacesResource" + ], + "description": "Creates the notebook workspace for a Cosmos DB account.", + "operationId": "NotebookWorkspaces_CreateOrUpdate", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/NotebookWorkspaceNameParameter" + }, + { + "name": "notebookCreateUpdateParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NotebookWorkspaceCreateUpdateParameters" + }, + "description": "The notebook workspace to create for the current database account." + } + ], + "responses": { + "200": { + "description": "Creation of notebook workspace will complete asynchronously.", + "schema": { + "$ref": "#/definitions/NotebookWorkspace" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../stable/2021-05-15/cosmos-db.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "CosmosDBNotebookWorkspaceCreate": { + "$ref": "./examples/CosmosDBNotebookWorkspaceCreate.json" + } + } + }, + "delete": { + "tags": [ + "NotebookWorkspacesResource" + ], + "description": "Deletes the notebook workspace for a Cosmos DB account.", + "operationId": "NotebookWorkspaces_Delete", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/NotebookWorkspaceNameParameter" + } + ], + "responses": { + "202": { + "description": "The notebook workspace delete operation will complete asynchronously." + }, + "204": { + "description": "The specified notebook workspace does not exist in the database account." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../stable/2021-05-15/cosmos-db.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "CosmosDBNotebookWorkspaceDelete": { + "$ref": "./examples/CosmosDBNotebookWorkspaceDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/notebookWorkspaces/{notebookWorkspaceName}/listConnectionInfo": { + "post": { + "tags": [ + "NotebookWorkspacesResource" + ], + "operationId": "NotebookWorkspaces_ListConnectionInfo", + "x-ms-examples": { + "CosmosDBNotebookWorkspaceListConnectionInfo": { + "$ref": "./examples/CosmosDBNotebookWorkspaceListConnectionInfo.json" + } + }, + "description": "Retrieves the connection info for the notebook workspace", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/NotebookWorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/NotebookWorkspaceConnectionInfoResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../stable/2021-05-15/cosmos-db.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/notebookWorkspaces/{notebookWorkspaceName}/regenerateAuthToken": { + "post": { + "tags": [ + "NotebookWorkspacesResource" + ], + "operationId": "NotebookWorkspaces_RegenerateAuthToken", + "x-ms-long-running-operation": true, + "x-ms-examples": { + "CosmosDBNotebookWorkspaceRegenerateAuthToken": { + "$ref": "./examples/CosmosDBNotebookWorkspaceRegenerateAuthToken.json" + } + }, + "description": "Regenerates the auth token for the notebook workspace", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/NotebookWorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted. The regenerate auth token operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../stable/2021-05-15/cosmos-db.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/notebookWorkspaces/{notebookWorkspaceName}/start": { + "post": { + "tags": [ + "NotebookWorkspacesResource" + ], + "operationId": "NotebookWorkspaces_Start", + "x-ms-long-running-operation": true, + "x-ms-examples": { + "CosmosDBNotebookWorkspaceStart": { + "$ref": "./examples/CosmosDBNotebookWorkspaceStart.json" + } + }, + "description": "Starts the notebook workspace", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/NotebookWorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted. The start operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../stable/2021-05-15/cosmos-db.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "NotebookWorkspaceCreateUpdateParameters": { + "description": "Parameters to create a notebook workspace resource", + "type": "object", + "allOf": [ + { + "$ref": "../../stable/2021-05-15/cosmos-db.json#/definitions/ARMProxyResource" + } + ] + }, + "NotebookWorkspaceListResult": { + "description": "A list of notebook workspace resources", + "type": "object", + "properties": { + "value": { + "type": "array", + "description": "Array of notebook workspace resources", + "items": { + "$ref": "#/definitions/NotebookWorkspace" + } + } + } + }, + "NotebookWorkspace": { + "description": "A notebook workspace resource", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/NotebookWorkspaceProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "../../stable/2021-05-15/cosmos-db.json#/definitions/ARMProxyResource" + } + ] + }, + "NotebookWorkspaceProperties": { + "description": "Properties of a notebook workspace resource.", + "type": "object", + "properties": { + "notebookServerEndpoint": { + "description": "Specifies the endpoint of Notebook server.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "Status of the notebook workspace. Possible values are: Creating, Online, Deleting, Failed, Updating.", + "type": "string", + "readOnly": true + } + } + }, + "NotebookWorkspaceConnectionInfoResult": { + "description": "The connection info for the given notebook workspace", + "properties": { + "authToken": { + "type": "string", + "description": "Specifies auth token used for connecting to Notebook server (uses token-based auth).", + "readOnly": true + }, + "notebookServerEndpoint": { + "type": "string", + "description": "Specifies the endpoint of Notebook server.", + "readOnly": true + } + } + } + }, + "parameters": { + "accountNameParameter": { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB database account name.", + "minLength": 3, + "maxLength": 50, + "pattern": "^[a-z0-9]+(-[a-z0-9]+)*" + }, + "NotebookWorkspaceNameParameter": { + "name": "notebookWorkspaceName", + "in": "path", + "description": "The name of the notebook workspace resource.", + "required": true, + "x-ms-parameter-location": "method", + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "NotebookWorkspaceName", + "modelAsString": true + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/privateEndpointConnection.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/privateEndpointConnection.json new file mode 100644 index 000000000000..277b40899bb5 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/privateEndpointConnection.json @@ -0,0 +1,318 @@ +{ + "swagger": "2.0", + "info": { + "title": "Cosmos DB", + "description": "Azure Cosmos DB Database Service Resource Provider REST API", + "version": "2021-05-15" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "Impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/privateEndpointConnections": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "List all private endpoint connections on a Cosmos DB account.", + "operationId": "PrivateEndpointConnections_ListByDatabaseAccount", + "x-ms-pageable": { + "nextLinkName": null + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private endpoint connections.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionListResult" + } + } + }, + "x-ms-examples": { + "Gets private endpoint connection.": { + "$ref": "./examples/CosmosDBPrivateEndpointConnectionListGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Gets a private endpoint connection.", + "operationId": "PrivateEndpointConnections_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved a specified private endpoint connection.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + } + }, + "x-ms-examples": { + "Gets private endpoint connection.": { + "$ref": "./examples/CosmosDBPrivateEndpointConnectionGet.json" + } + } + }, + "put": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Approve or reject a private endpoint connection with a given name.", + "operationId": "PrivateEndpointConnections_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + } + ], + "responses": { + "200": { + "description": "Successfully approved or rejected private endpoint connection.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "202": { + "description": "Accepted. The private endpoint connection update will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../stable/2021-05-15/cosmos-db.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Approve or reject a private endpoint connection with a given name.": { + "$ref": "./examples/CosmosDBPrivateEndpointConnectionUpdate.json" + } + } + }, + "delete": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Deletes a private endpoint connection with a given name.", + "operationId": "PrivateEndpointConnections_Delete", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionNameParameter" + } + ], + "responses": { + "202": { + "description": "Accepted. The private endpoint connection delete will complete asynchronously." + }, + "204": { + "description": "Private endpoint connection does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../stable/2021-05-15/cosmos-db.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Deletes a private endpoint connection with a given name.": { + "$ref": "./examples/CosmosDBPrivateEndpointConnectionDelete.json" + } + } + } + } + }, + "definitions": { + "PrivateEndpointConnectionListResult": { + "description": "A list of private endpoint connections", + "type": "object", + "properties": { + "value": { + "type": "array", + "description": "Array of private endpoint connections", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + } + } + }, + "PrivateEndpointConnection": { + "description": "A private endpoint connection", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ] + }, + "PrivateEndpointConnectionProperties": { + "description": "Properties of a private endpoint connection.", + "type": "object", + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpointProperty", + "description": "Private endpoint which the connection belongs to." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionStateProperty", + "description": "Connection State of the Private Endpoint Connection." + }, + "groupId": { + "type": "string", + "description": "Group id of the private endpoint." + }, + "provisioningState": { + "type": "string", + "description": "Provisioning state of the private endpoint." + } + } + }, + "PrivateEndpointProperty": { + "type": "object", + "description": "Private endpoint which the connection belongs to.", + "properties": { + "id": { + "type": "string", + "description": "Resource id of the private endpoint." + } + } + }, + "PrivateLinkServiceConnectionStateProperty": { + "type": "object", + "description": "Connection State of the Private Endpoint Connection.", + "properties": { + "status": { + "type": "string", + "description": "The private link service connection status." + }, + "description": { + "type": "string", + "description": "The private link service connection description." + }, + "actionsRequired": { + "type": "string", + "description": "Any action that is required beyond basic workflow (approve/ reject/ disconnect)", + "readOnly": true + } + } + } + }, + "parameters": { + "accountNameParameter": { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB database account name.", + "minLength": 3, + "maxLength": 50, + "pattern": "^[a-z0-9]+(-[a-z0-9]+)*" + }, + "PrivateEndpointConnectionNameParameter": { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "The name of the private endpoint connection." + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/privateLinkResources.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/privateLinkResources.json new file mode 100644 index 000000000000..806c9702ecbc --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/privateLinkResources.json @@ -0,0 +1,195 @@ +{ + "swagger": "2.0", + "info": { + "title": "Cosmos DB", + "description": "Azure Cosmos DB Database Service Resource Provider REST API", + "version": "2021-05-15" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "Impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/privateLinkResources": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "description": "Gets the private link resources that need to be created for a Cosmos DB account.", + "operationId": "PrivateLinkResources_ListByDatabaseAccount", + "x-ms-pageable": { + "nextLinkName": null + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private link resources.", + "schema": { + "$ref": "#/definitions/PrivateLinkResourceListResult" + } + } + }, + "x-ms-examples": { + "Gets private endpoint connection.": { + "$ref": "./examples/CosmosDBPrivateLinkResourceListGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/privateLinkResources/{groupName}": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "description": "Gets the private link resources that need to be created for a Cosmos DB account.", + "operationId": "PrivateLinkResources_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/GroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved a specified private link resource.", + "schema": { + "$ref": "#/definitions/PrivateLinkResource" + } + } + }, + "x-ms-examples": { + "Gets private endpoint connection.": { + "$ref": "./examples/CosmosDBPrivateLinkResourceGet.json" + } + } + } + } + }, + "definitions": { + "PrivateLinkResourceListResult": { + "description": "A list of private link resources", + "type": "object", + "properties": { + "value": { + "type": "array", + "description": "Array of private link resources", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + } + } + } + }, + "PrivateLinkResource": { + "description": "A private link resource", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "../../stable/2021-05-15/cosmos-db.json#/definitions/ARMProxyResource" + } + ] + }, + "PrivateLinkResourceProperties": { + "description": "Properties of a private link resource.", + "type": "object", + "properties": { + "groupId": { + "description": "The private link resource group id.", + "type": "string", + "readOnly": true + }, + "requiredMembers": { + "description": "The private link resource required member names.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "requiredZoneNames": { + "description": "The private link resource required zone names.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + } + } + } + }, + "parameters": { + "accountNameParameter": { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB database account name.", + "minLength": 3, + "maxLength": 50, + "pattern": "^[a-z0-9]+(-[a-z0-9]+)*" + }, + "GroupNameParameter": { + "name": "groupName", + "in": "path", + "description": "The name of the private link resource.", + "required": true, + "x-ms-parameter-location": "method", + "type": "string" + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/rbac.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/rbac.json new file mode 100644 index 000000000000..b12a68ce3bab --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2021-05-15/rbac.json @@ -0,0 +1,573 @@ +{ + "swagger": "2.0", + "info": { + "title": "Cosmos DB", + "description": "Azure Cosmos DB Role Based Access Control Resource Provider REST API", + "version": "2021-05-15" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "Impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlRoleDefinitions/{roleDefinitionId}": { + "get": { + "operationId": "SqlResources_GetSqlRoleDefinition", + "x-ms-examples": { + "CosmosDBSqlRoleDefinitionGet": { + "$ref": "./examples/CosmosDBSqlRoleDefinitionGet.json" + } + }, + "description": "Retrieves the properties of an existing Azure Cosmos DB SQL Role Definition with the given Id.", + "parameters": [ + { + "$ref": "#/parameters/roleDefinitionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "cosmos-db.json#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Role Definition was successfully retrieved.", + "schema": { + "$ref": "#/definitions/SqlRoleDefinitionGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "cosmos-db.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "SqlResources_CreateUpdateSqlRoleDefinition", + "x-ms-examples": { + "CosmosDBSqlRoleDefinitionCreateUpdate": { + "$ref": "./examples/CosmosDBSqlRoleDefinitionCreateUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Creates or updates an Azure Cosmos DB SQL Role Definition.", + "parameters": [ + { + "$ref": "#/parameters/roleDefinitionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "cosmos-db.json#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateSqlRoleDefinitionParameters", + "in": "body", + "required": true, + "description": "The properties required to create or update a Role Definition.", + "schema": { + "$ref": "#/definitions/SqlRoleDefinitionCreateUpdateParameters" + } + } + ], + "responses": { + "200": { + "description": "The Role Definition create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/SqlRoleDefinitionGetResults" + } + }, + "202": { + "description": "The Role Definition create or update request was accepted and will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "cosmos-db.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "operationId": "SqlResources_DeleteSqlRoleDefinition", + "x-ms-examples": { + "CosmosDBSqlRoleDefinitionDelete": { + "$ref": "./examples/CosmosDBSqlRoleDefinitionDelete.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Deletes an existing Azure Cosmos DB SQL Role Definition.", + "parameters": [ + { + "$ref": "#/parameters/roleDefinitionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "cosmos-db.json#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Role Definition delete operation was completed successfully." + }, + "202": { + "description": "The Role Definition delete request was accepted and will complete asynchronously." + }, + "204": { + "description": "The requested Role Definition does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "cosmos-db.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlRoleDefinitions": { + "get": { + "operationId": "SqlResources_ListSqlRoleDefinitions", + "x-ms-examples": { + "CosmosDBSqlRoleDefinitionList": { + "$ref": "./examples/CosmosDBSqlRoleDefinitionList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the list of all Azure Cosmos DB SQL Role Definitions.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "cosmos-db.json#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The list operation completed successfully.", + "schema": { + "$ref": "#/definitions/SqlRoleDefinitionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "cosmos-db.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlRoleAssignments/{roleAssignmentId}": { + "get": { + "operationId": "SqlResources_GetSqlRoleAssignment", + "x-ms-examples": { + "CosmosDBSqlRoleAssignmentGet": { + "$ref": "./examples/CosmosDBSqlRoleAssignmentGet.json" + } + }, + "description": "Retrieves the properties of an existing Azure Cosmos DB SQL Role Assignment with the given Id.", + "parameters": [ + { + "$ref": "#/parameters/roleAssignmentIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "cosmos-db.json#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Role Assignment was successfully retrieved.", + "schema": { + "$ref": "#/definitions/SqlRoleAssignmentGetResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "cosmos-db.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "SqlResources_CreateUpdateSqlRoleAssignment", + "x-ms-examples": { + "CosmosDBSqlRoleAssignmentCreateUpdate": { + "$ref": "./examples/CosmosDBSqlRoleAssignmentCreateUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Creates or updates an Azure Cosmos DB SQL Role Assignment.", + "parameters": [ + { + "$ref": "#/parameters/roleAssignmentIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "cosmos-db.json#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "createUpdateSqlRoleAssignmentParameters", + "in": "body", + "required": true, + "description": "The properties required to create or update a Role Assignment.", + "schema": { + "$ref": "#/definitions/SqlRoleAssignmentCreateUpdateParameters" + } + } + ], + "responses": { + "200": { + "description": "The Role Assignment create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/SqlRoleAssignmentGetResults" + } + }, + "202": { + "description": "The Role Assignment create or update request was accepted and will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "cosmos-db.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "operationId": "SqlResources_DeleteSqlRoleAssignment", + "x-ms-examples": { + "CosmosDBSqlRoleAssignmentDelete": { + "$ref": "./examples/CosmosDBSqlRoleAssignmentDelete.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Deletes an existing Azure Cosmos DB SQL Role Assignment.", + "parameters": [ + { + "$ref": "#/parameters/roleAssignmentIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "cosmos-db.json#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Role Assignment delete operation was completed successfully." + }, + "202": { + "description": "The Role Assignment delete request was accepted and will complete asynchronously." + }, + "204": { + "description": "The requested Role Assignment does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "cosmos-db.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlRoleAssignments": { + "get": { + "operationId": "SqlResources_ListSqlRoleAssignments", + "x-ms-examples": { + "CosmosDBSqlRoleAssignmentList": { + "$ref": "./examples/CosmosDBSqlRoleAssignmentList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the list of all Azure Cosmos DB SQL Role Assignments.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "cosmos-db.json#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The list operation completed successfully.", + "schema": { + "$ref": "#/definitions/SqlRoleAssignmentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "cosmos-db.json#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "SqlRoleDefinitionResource": { + "properties": { + "roleName": { + "type": "string", + "description": "A user-friendly name for the Role Definition. Must be unique for the database account." + }, + "type": { + "type": "string", + "enum": [ + "BuiltInRole", + "CustomRole" + ], + "description": "Indicates whether the Role Definition was built-in or user created.", + "x-ms-enum": { + "name": "RoleDefinitionType", + "modelAsString": false + } + }, + "assignableScopes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A set of fully qualified Scopes at or below which Role Assignments may be created using this Role Definition. This will allow application of this Role Definition on the entire database account or any underlying Database / Collection. Must have at least one element. Scopes higher than Database account are not enforceable as assignable Scopes. Note that resources referenced in assignable Scopes need not exist." + }, + "permissions": { + "type": "array", + "items": { + "$ref": "#/definitions/Permission" + }, + "description": "The set of operations allowed through this Role Definition." + } + }, + "description": "Azure Cosmos DB SQL Role Definition resource object." + }, + "SqlRoleDefinitionCreateUpdateParameters": { + "description": "Parameters to create and update an Azure Cosmos DB SQL Role Definition.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update an Azure Cosmos DB SQL Role Definition.", + "$ref": "#/definitions/SqlRoleDefinitionResource" + } + } + }, + "SqlRoleDefinitionGetResults": { + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SqlRoleDefinitionResource", + "description": "Properties related to the Role Definition." + } + }, + "allOf": [ + { + "$ref": "cosmos-db.json#/definitions/ARMProxyResource" + } + ], + "description": "An Azure Cosmos DB SQL Role Definition." + }, + "Permission": { + "type": "object", + "properties": { + "dataActions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "An array of data actions that are allowed." + }, + "notDataActions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "An array of data actions that are denied." + } + }, + "description": "The set of data plane operations permitted through this Role Definition." + }, + "SqlRoleDefinitionListResult": { + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/SqlRoleDefinitionGetResults" + }, + "description": "List of Role Definitions and their properties." + } + }, + "description": "The relevant Role Definitions." + }, + "SqlRoleAssignmentResource": { + "type": "object", + "properties": { + "roleDefinitionId": { + "type": "string", + "description": "The unique identifier for the associated Role Definition." + }, + "scope": { + "type": "string", + "description": "The data plane resource path for which access is being granted through this Role Assignment." + }, + "principalId": { + "type": "string", + "description": "The unique identifier for the associated AAD principal in the AAD graph to which access is being granted through this Role Assignment. Tenant ID for the principal is inferred using the tenant associated with the subscription." + } + }, + "description": "Azure Cosmos DB SQL Role Assignment resource object." + }, + "SqlRoleAssignmentCreateUpdateParameters": { + "description": "Parameters to create and update an Azure Cosmos DB SQL Role Assignment.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update an Azure Cosmos DB SQL Role Assignment.", + "$ref": "#/definitions/SqlRoleAssignmentResource" + } + } + }, + "SqlRoleAssignmentGetResults": { + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SqlRoleAssignmentResource", + "description": "Properties related to the Role Assignment." + } + }, + "allOf": [ + { + "$ref": "cosmos-db.json#/definitions/ARMProxyResource" + } + ], + "description": "An Azure Cosmos DB Role Assignment" + }, + "SqlRoleAssignmentListResult": { + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/SqlRoleAssignmentGetResults" + }, + "description": "List of Role Assignments and their properties" + } + }, + "description": "The relevant Role Assignments." + } + }, + "parameters": { + "roleDefinitionIdParameter": { + "name": "roleDefinitionId", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "The GUID for the Role Definition." + }, + "roleAssignmentIdParameter": { + "name": "roleAssignmentId", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "The GUID for the Role Assignment." + } + } +} diff --git a/specification/cosmos-db/resource-manager/readme.azureresourceschema.md b/specification/cosmos-db/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 56ebd1bd167b..000000000000 --- a/specification/cosmos-db/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,197 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-documentdb-2021-03-01-preview - - tag: schema-documentdb-2021-01-15 - - tag: schema-documentdb-2020-09-01 - - tag: schema-documentdb-2020-06-01-preview - - tag: schema-documentdb-2020-04-01 - - tag: schema-documentdb-2020-03-01 - - tag: schema-documentdb-2019-12-12 - - tag: schema-documentdb-2019-08-01-preview - - tag: schema-documentdb-2019-08-01 - - tag: schema-documentdb-2016-03-31 - - tag: schema-documentdb-2016-03-19 - - tag: schema-documentdb-2015-11-06 - - tag: schema-documentdb-2015-04-08 - - tag: schema-documentdb-2014-04-01 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-documentdb-2021-03-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-documentdb-2021-03-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DocumentDB/preview/2021-03-01-preview/cosmos-db.json - - Microsoft.DocumentDB/preview/2021-03-01-preview/notebook.json - - Microsoft.DocumentDB/preview/2021-03-01-preview/rbac.json - - Microsoft.DocumentDB/preview/2021-03-01-preview/restorable.json - - Microsoft.DocumentDB/preview/2021-03-01-preview/privateLinkResources.json - - Microsoft.DocumentDB/preview/2021-03-01-preview/privateEndpointConnection.json - -``` - -### Tag: schema-documentdb-2021-01-15 and azureresourceschema - -``` yaml $(tag) == 'schema-documentdb-2021-01-15' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DocumentDB/stable/2021-01-15/cosmos-db.json - - Microsoft.DocumentDB/stable/2021-01-15/notebook.json - - Microsoft.DocumentDB/stable/2021-01-15/privateLinkResources.json - - Microsoft.DocumentDB/stable/2021-01-15/privateEndpointConnection.json - -``` - -### Tag: schema-documentdb-2020-09-01 and azureresourceschema - -``` yaml $(tag) == 'schema-documentdb-2020-09-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DocumentDB/stable/2020-09-01/cosmos-db.json - - Microsoft.DocumentDB/stable/2020-09-01/notebook.json - -``` - -### Tag: schema-documentdb-2020-06-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-documentdb-2020-06-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DocumentDB/preview/2020-06-01-preview/cosmos-db.json - - Microsoft.DocumentDB/preview/2020-06-01-preview/notebook.json - - Microsoft.DocumentDB/preview/2020-06-01-preview/rbac.json - - Microsoft.DocumentDB/preview/2020-06-01-preview/restorable.json - -``` - -### Tag: schema-documentdb-2020-04-01 and azureresourceschema - -``` yaml $(tag) == 'schema-documentdb-2020-04-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DocumentDB/stable/2020-04-01/cosmos-db.json - - Microsoft.DocumentDB/stable/2020-04-01/notebook.json - -``` - -### Tag: schema-documentdb-2020-03-01 and azureresourceschema - -``` yaml $(tag) == 'schema-documentdb-2020-03-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DocumentDB/stable/2020-03-01/cosmos-db.json - - Microsoft.DocumentDB/stable/2020-03-01/notebook.json - -``` - -### Tag: schema-documentdb-2019-12-12 and azureresourceschema - -``` yaml $(tag) == 'schema-documentdb-2019-12-12' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DocumentDB/stable/2019-12-12/cosmos-db.json - - Microsoft.DocumentDB/stable/2019-12-12/notebook.json - -``` - -### Tag: schema-documentdb-2019-08-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-documentdb-2019-08-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DocumentDB/preview/2019-08-01-preview/privateLinkResources.json - - Microsoft.DocumentDB/preview/2019-08-01-preview/privateEndpointConnection.json - -``` - -### Tag: schema-documentdb-2019-08-01 and azureresourceschema - -``` yaml $(tag) == 'schema-documentdb-2019-08-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DocumentDB/stable/2019-08-01/cosmos-db.json - - Microsoft.DocumentDB/stable/2019-08-01/notebook.json - -``` - -### Tag: schema-documentdb-2016-03-31 and azureresourceschema - -``` yaml $(tag) == 'schema-documentdb-2016-03-31' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DocumentDB/stable/2016-03-31/cosmos-db.json - -``` - -### Tag: schema-documentdb-2016-03-19 and azureresourceschema - -``` yaml $(tag) == 'schema-documentdb-2016-03-19' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DocumentDB/stable/2016-03-19/cosmos-db.json - -``` - -### Tag: schema-documentdb-2015-11-06 and azureresourceschema - -``` yaml $(tag) == 'schema-documentdb-2015-11-06' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DocumentDB/stable/2015-11-06/cosmos-db.json - -``` - -### Tag: schema-documentdb-2015-04-08 and azureresourceschema - -``` yaml $(tag) == 'schema-documentdb-2015-04-08' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DocumentDB/stable/2015-04-08/cosmos-db.json - -``` - -### Tag: schema-documentdb-2014-04-01 and azureresourceschema - -``` yaml $(tag) == 'schema-documentdb-2014-04-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DocumentDB/stable/2014-04-01/cosmos-db.json - -``` diff --git a/specification/cosmos-db/resource-manager/readme.go.md b/specification/cosmos-db/resource-manager/readme.go.md index 453ff4b26082..0605606a6fc6 100644 --- a/specification/cosmos-db/resource-manager/readme.go.md +++ b/specification/cosmos-db/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: documentdb clear-output-folder: true ``` @@ -13,6 +13,10 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-2021-05 + - tag: package-2021-04 + - tag: package-2021-04-preview + - tag: package-2021-03 - tag: package-2021-03-preview - tag: package-2021-01 - tag: package-2020-09 @@ -25,6 +29,42 @@ batch: - tag: package-2015-04 ``` +### Tag: package-2021-05 and go + +These settings apply only when `--tag=package-2021-05 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2021-05' && $(go) +output-folder: $(go-sdk-folder)/services/cosmos-db/mgmt/2021-05-15/$(namespace) +``` + +### Tag: package-2021-04 and go + +These settings apply only when `--tag=package-2021-04 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2021-04' && $(go) +output-folder: $(go-sdk-folder)/services/cosmos-db/mgmt/2021-04-15/$(namespace) +``` + +### Tag: package-2021-04-preview and go + +These settings apply only when `--tag=package-2021-04-preview --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2021-04-preview' && $(go) +output-folder: $(go-sdk-folder)/services/preview/cosmos-db/mgmt/2021-04-01-preview/$(namespace) +``` + +### Tag: package-2021-03 and go + +These settings apply only when `--tag=package-2021-03 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2021-03' && $(go) +output-folder: $(go-sdk-folder)/services/cosmos-db/mgmt/2021-03-15/$(namespace) +``` + ### Tag: package-2021-03-preview and go These settings apply only when `--tag=package-2021-03-preview --go` is specified on the command line. diff --git a/specification/cosmos-db/resource-manager/readme.java.md b/specification/cosmos-db/resource-manager/readme.java.md index f7913e351147..e41103478056 100644 --- a/specification/cosmos-db/resource-manager/readme.java.md +++ b/specification/cosmos-db/resource-manager/readme.java.md @@ -17,6 +17,9 @@ service-name: CosmosDB ``` yaml $(java) && $(multiapi) batch: + - tag: package-2021-04 + - tag: package-2021-04-preview + - tag: package-2021-03 - tag: package-2021-03-preview - tag: package-2021-01 - tag: package-2020-09 @@ -29,6 +32,45 @@ batch: - tag: package-2015-04 ``` +### Tag: package-2021-04 and java + +These settings apply only when `--tag=package-2021-04 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2021-04' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.cosmosdb.v2021_03_15 + output-folder: $(azure-libraries-for-java-folder)/sdk/cosmos/mgmt-v2021_03_15 +regenerate-manager: true +generate-interface: true +``` + +### Tag: package-2021-04-preview and java + +These settings apply only when `--tag=package-2021-04-preview --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2021-04-preview' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.cosmosdb.v2021_04_01_preview + output-folder: $(azure-libraries-for-java-folder)/sdk/cosmos/mgmt-v2021_04_01_preview +regenerate-manager: true +generate-interface: true +``` + +### Tag: package-2021-03 and java + +These settings apply only when `--tag=package-2021-03 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2021-03' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.cosmosdb.v2021_03_15 + output-folder: $(azure-libraries-for-java-folder)/sdk/cosmos/mgmt-v2021_03_15 +regenerate-manager: true +generate-interface: true +``` + ### Tag: package-2021-03-preview and java These settings apply only when `--tag=package-2021-03-preview --java` is specified on the command line. @@ -36,8 +78,8 @@ Please also specify `--azure-libraries-for-java=`. Use `--python-mode=update` if you already have a setup.py and just want to update the code itself. -``` yaml $(python) && !$(track2) -python-mode: create -python: - azure-arm: true - license-header: MICROSOFT_MIT_NO_VERSION - payload-flattening-threshold: 2 - namespace: azure.mgmt.cosmosdb - package-name: azure-mgmt-cosmosdb - package-version: 0.7.0 - clear-output-folder: true -``` - ``` yaml $(python) && $(track2) python-mode: update azure-arm: true @@ -31,14 +19,8 @@ modelerfour: ``` yaml $(python) && $(python-mode) == 'update' no-namespace-folders: true output-folder: $(python-sdks-folder)/cosmos/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb -python: - no-namespace-folders: true - output-folder: $(python-sdks-folder)/cosmos/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb ``` ``` yaml $(python) && $(python-mode) == 'create' basic-setup-py: true output-folder: $(python-sdks-folder)/cosmos/azure-mgmt-cosmosdb -python: - basic-setup-py: true - output-folder: $(python-sdks-folder)/cosmos/azure-mgmt-cosmosdb ``` diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/costmanagement.exports.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/costmanagement.exports.json new file mode 100644 index 000000000000..21b246f9e3e0 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/costmanagement.exports.json @@ -0,0 +1,885 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-12-01-preview", + "title": "CostManagementClient" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/{scope}/providers/Microsoft.CostManagement/exports": { + "get": { + "tags": [ + "Exports" + ], + "operationId": "Exports_List", + "description": "The operation to list all exports at the given scope.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "ExportsGetBySubscription": { + "$ref": "./examples/ExportsGetBySubscription.json" + }, + "ExportsGetByResourceGroup": { + "$ref": "./examples/ExportsGetByResourceGroup.json" + }, + "ExportsGetByBillingAccount": { + "$ref": "./examples/ExportsGetByBillingAccount.json" + }, + "ExportsGetByDepartment": { + "$ref": "./examples/ExportsGetByDepartment.json" + }, + "ExportsGetByEnrollmentAccount": { + "$ref": "./examples/ExportsGetByEnrollmentAccount.json" + }, + "ExportsGetByManagementGroup": { + "$ref": "./examples/ExportsGetByManagementGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeExportParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$expand", + "description": "May be used to expand the properties within an export. Currently only 'runHistory' is supported and will return information for the last execution of each export.", + "in": "query", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ExportListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/{scope}/providers/Microsoft.CostManagement/exports/{exportName}": { + "get": { + "tags": [ + "Exports" + ], + "operationId": "Exports_Get", + "description": "The operation to get the export for the defined scope by export name.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "ExportGetBySubscription": { + "$ref": "./examples/ExportGetBySubscription.json" + }, + "ExportGetByResourceGroup": { + "$ref": "./examples/ExportGetByResourceGroup.json" + }, + "ExportGetByBillingAccount": { + "$ref": "./examples/ExportGetByBillingAccount.json" + }, + "ExportGetByDepartment": { + "$ref": "./examples/ExportGetByDepartment.json" + }, + "ExportGetByEnrollmentAccount": { + "$ref": "./examples/ExportGetByEnrollmentAccount.json" + }, + "ExportGetByManagementGroup": { + "$ref": "./examples/ExportGetByManagementGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeExportParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/exportNameParameter" + }, + { + "name": "$expand", + "description": "May be used to expand the properties within an export. Currently only 'runHistory' is supported and will return information for the last 10 executions of the export.", + "in": "query", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Export" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Exports" + ], + "operationId": "Exports_CreateOrUpdate", + "description": "The operation to create or update a export. Update operation requires latest eTag to be set in the request. You may obtain the latest eTag by performing a get operation. Create operation does not require eTag.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "ExportCreateOrUpdateBySubscription": { + "$ref": "./examples/ExportCreateOrUpdateBySubscription.json" + }, + "ExportCreateOrUpdateByResourceGroup": { + "$ref": "./examples/ExportCreateOrUpdateByResourceGroup.json" + }, + "ExportCreateOrUpdateByBillingAccount": { + "$ref": "./examples/ExportCreateOrUpdateByBillingAccount.json" + }, + "ExportCreateOrUpdateByDepartment": { + "$ref": "./examples/ExportCreateOrUpdateByDepartment.json" + }, + "ExportCreateOrUpdateByEnrollmentAccount": { + "$ref": "./examples/ExportCreateOrUpdateByEnrollmentAccount.json" + }, + "ExportCreateOrUpdateByManagementGroup": { + "$ref": "./examples/ExportCreateOrUpdateByManagementGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeExportParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/exportNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Export" + }, + "description": "Parameters supplied to the CreateOrUpdate Export operation." + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Export" + } + }, + "201": { + "description": "Created.", + "schema": { + "$ref": "#/definitions/Export" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Exports" + ], + "operationId": "Exports_Delete", + "description": "The operation to delete a export.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "ExportDeleteBySubscription": { + "$ref": "./examples/ExportDeleteBySubscription.json" + }, + "ExportDeleteByResourceGroup": { + "$ref": "./examples/ExportDeleteByResourceGroup.json" + }, + "ExportDeleteByBillingAccount": { + "$ref": "./examples/ExportDeleteByBillingAccount.json" + }, + "ExportDeleteByEnrollmentAccount": { + "$ref": "./examples/ExportDeleteByEnrollmentAccount.json" + }, + "ExportDeleteByDepartment": { + "$ref": "./examples/ExportDeleteByDepartment.json" + }, + "ExportDeleteByManagementGroup": { + "$ref": "./examples/ExportDeleteByManagementGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeExportParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/exportNameParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/{scope}/providers/Microsoft.CostManagement/exports/{exportName}/run": { + "post": { + "tags": [ + "Exports" + ], + "operationId": "Exports_Execute", + "description": "The operation to execute an export.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "ExportRunBySubscription": { + "$ref": "./examples/ExportRunBySubscription.json" + }, + "ExportRunByResourceGroup": { + "$ref": "./examples/ExportRunByResourceGroup.json" + }, + "ExportRunByBillingAccount": { + "$ref": "./examples/ExportRunByBillingAccount.json" + }, + "ExportRunByDepartment": { + "$ref": "./examples/ExportRunByDepartment.json" + }, + "ExportRunByEnrollmentAccount": { + "$ref": "./examples/ExportRunByEnrollmentAccount.json" + }, + "ExportRunByManagementGroup": { + "$ref": "./examples/ExportRunByManagementGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeExportParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/exportNameParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/{scope}/providers/Microsoft.CostManagement/exports/{exportName}/runHistory": { + "get": { + "tags": [ + "Exports" + ], + "operationId": "Exports_GetExecutionHistory", + "description": "The operation to get the execution history of an export for the defined scope and export name.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "ExportRunHistoryGetBySubscription": { + "$ref": "./examples/ExportRunHistoryGetBySubscription.json" + }, + "ExportRunHistoryGetByResourceGroup": { + "$ref": "./examples/ExportRunHistoryGetByResourceGroup.json" + }, + "ExportRunHistoryGetByBillingAccount": { + "$ref": "./examples/ExportRunHistoryGetByBillingAccount.json" + }, + "ExportRunHistoryGetByDepartment": { + "$ref": "./examples/ExportRunHistoryGetByDepartment.json" + }, + "ExportRunHistoryGetByEnrollmentAccount": { + "$ref": "./examples/ExportRunHistoryGetByEnrollmentAccount.json" + }, + "ExportRunHistoryGetByManagementGroup": { + "$ref": "./examples/ExportRunHistoryGetByManagementGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeExportParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/exportNameParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ExportExecutionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "ErrorResponse": { + "description": "Error response indicates that the service is not able to process the incoming request. The reason is provided in the error message. \n\nSome Error responses: \n\n * 429 TooManyRequests - Request is throttled. Retry after waiting for the time specified in the \"x-ms-ratelimit-microsoft.consumption-retry-after\" header. \n\n * 503 ServiceUnavailable - Service is temporarily unavailable. Retry after waiting for the time specified in the \"Retry-After\" header.", + "type": "object", + "properties": { + "error": { + "description": "The details of the error.", + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "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 + } + } + }, + "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 scenario, this field will be used to determine whether the user is updating the latest version or not." + } + }, + "x-ms-azure-resource": true + }, + "ExportListResult": { + "description": "Result of listing exports. It contains a list of available exports in the scope provided.", + "type": "object", + "properties": { + "value": { + "description": "The list of exports.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Export" + } + } + } + }, + "Export": { + "description": "An export resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExportProperties", + "title": "Export properties" + } + } + }, + "ExportProperties": { + "description": "The properties of the export.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CommonExportProperties" + } + ], + "properties": { + "schedule": { + "description": "Has schedule information for the export.", + "$ref": "#/definitions/ExportSchedule" + } + } + }, + "CommonExportProperties": { + "description": "The common properties of the export.", + "type": "object", + "properties": { + "format": { + "description": "The format of the export being delivered. Currently only 'Csv' is supported.", + "type": "string", + "enum": [ + "Csv" + ], + "x-ms-enum": { + "name": "FormatType", + "modelAsString": true + } + }, + "deliveryInfo": { + "description": "Has delivery information for the export.", + "$ref": "#/definitions/ExportDeliveryInfo" + }, + "definition": { + "description": "Has the definition for the export.", + "$ref": "#/definitions/ExportDefinition" + }, + "runHistory": { + "description": "If requested, has the most recent execution history for the export.", + "$ref": "#/definitions/ExportExecutionListResult" + }, + "nextRunTimeEstimate": { + "description": "If the export has an active schedule, provides an estimate of the next execution time.", + "type": "string", + "format": "date-time", + "readOnly": true + } + }, + "required": [ + "deliveryInfo", + "definition" + ] + }, + "ExportSchedule": { + "description": "The schedule associated with the export.", + "type": "object", + "properties": { + "status": { + "description": "The status of the export's schedule. If 'Inactive', the export's schedule is paused.", + "type": "string", + "enum": [ + "Active", + "Inactive" + ], + "x-ms-enum": { + "name": "StatusType", + "modelAsString": true + } + }, + "recurrence": { + "description": "The schedule recurrence.", + "type": "string", + "enum": [ + "Daily", + "Weekly", + "Monthly", + "Annually" + ], + "x-ms-enum": { + "name": "RecurrenceType", + "modelAsString": true + } + }, + "recurrencePeriod": { + "description": "Has start and end date of the recurrence. The start date must be in future. If present, the end date must be greater than start date.", + "$ref": "#/definitions/ExportRecurrencePeriod" + } + } + }, + "ExportDeliveryInfo": { + "description": "The delivery information associated with a export.", + "type": "object", + "properties": { + "destination": { + "description": "Has destination for the export being delivered.", + "$ref": "#/definitions/ExportDeliveryDestination" + } + }, + "required": [ + "destination" + ] + }, + "ExportRecurrencePeriod": { + "description": "The start and end date for recurrence schedule.", + "type": "object", + "properties": { + "from": { + "description": "The start date of recurrence.", + "type": "string", + "format": "date-time" + }, + "to": { + "description": "The end date of recurrence.", + "type": "string", + "format": "date-time" + } + }, + "required": [ + "from" + ] + }, + "ExportDeliveryDestination": { + "description": "This represents the blob storage account location where exports of costs will be delivered. There are two ways to configure the destination. The approach recommended for most customers is to specify the resourceId of the storage account. This requires a one-time registration of the account's subscription with the Microsoft.CostManagementExports resource provider in order to give Azure Cost Management services access to the storage. When creating an export in the Azure portal this registration is performed automatically but API users may need to register the subscription explicitly (for more information see https://docs.microsoft.com/en-us/azure/azure-resource-manager/resource-manager-supported-services ). Another way to configure the destination is available ONLY to Partners with a Microsoft Partner Agreement plan who are global admins of their billing account. These Partners, instead of specifying the resourceId of a storage account, can specify the storage account name along with a SAS token for the account. This allows exports of costs to a storage account in any tenant. The SAS token should be created for the blob service with Service/Container/Object resource types and with Read/Write/Delete/List/Add/Create permissions (for more information see https://docs.microsoft.com/en-us/azure/cost-management-billing/costs/export-cost-data-storage-account-sas-key ).", + "type": "object", + "properties": { + "resourceId": { + "description": "The resource id of the storage account where exports will be delivered. This is not required if a sasToken and storageAccount are specified.", + "type": "string" + }, + "container": { + "description": "The name of the container where exports will be uploaded. If the container does not exist it will be created.", + "type": "string" + }, + "rootFolderPath": { + "description": "The name of the directory where exports will be uploaded.", + "type": "string" + }, + "sasToken": { + "description": "A SAS token for the storage account. For a restricted set of Azure customers this together with storageAccount can be specified instead of resourceId. Note: the value returned by the API for this property will always be obfuscated. Returning this same obfuscated value will not result in the SAS token being updated. To update this value a new SAS token must be specified.", + "type": "string", + "x-ms-secret": true, + "x-ms-mutability": [ + "create", + "update" + ] + }, + "storageAccount": { + "description": "The storage account where exports will be uploaded. For a restricted set of Azure customers this together with sasToken can be specified instead of resourceId.", + "type": "string" + } + }, + "required": [ + "container" + ] + }, + "ExportDefinition": { + "description": "The definition of an export.", + "type": "object", + "properties": { + "type": { + "description": "The type of the export. Note that 'Usage' is equivalent to 'ActualCost' and is applicable to exports that do not yet provide data for charges or amortization for service reservations.", + "type": "string", + "enum": [ + "Usage", + "ActualCost", + "AmortizedCost" + ], + "x-ms-enum": { + "name": "ExportType", + "modelAsString": true + } + }, + "timeframe": { + "description": "The time frame for pulling data for the export. If custom, then a specific time period must be provided.", + "type": "string", + "enum": [ + "MonthToDate", + "BillingMonthToDate", + "TheLastMonth", + "TheLastBillingMonth", + "WeekToDate", + "Custom" + ], + "x-ms-enum": { + "name": "TimeframeType", + "modelAsString": true + } + }, + "timePeriod": { + "description": "Has time period for pulling data for the export.", + "$ref": "#/definitions/ExportTimePeriod" + }, + "dataSet": { + "description": "The definition for data in the export.", + "$ref": "#/definitions/ExportDataset" + } + }, + "required": [ + "type", + "timeframe" + ] + }, + "ExportDataset": { + "description": "The definition for data in the export.", + "type": "object", + "properties": { + "granularity": { + "description": "The granularity of rows in the export. Currently only 'Daily' is supported.", + "type": "string", + "enum": [ + "Daily" + ], + "x-ms-enum": { + "name": "GranularityType", + "modelAsString": true + } + }, + "configuration": { + "description": "The export dataset configuration.", + "$ref": "#/definitions/ExportDatasetConfiguration" + } + } + }, + "ExportDatasetConfiguration": { + "description": "The export dataset configuration. Allows columns to be selected for the export. If not provided then the export will include all available columns.", + "type": "object", + "properties": { + "columns": { + "description": "Array of column names to be included in the export. If not provided then the export will include all available columns. The available columns can vary by customer channel (see examples).", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "ExportTimePeriod": { + "description": "The date range for data in the export. This should only be specified with timeFrame set to 'Custom'. The maximum date range is 3 months.", + "type": "object", + "properties": { + "from": { + "description": "The start date for export data.", + "type": "string", + "format": "date-time" + }, + "to": { + "description": "The end date for export data.", + "type": "string", + "format": "date-time" + } + }, + "required": [ + "from", + "to" + ] + }, + "ExportExecutionListResult": { + "description": "Result of listing the execution history of an export.", + "type": "object", + "properties": { + "value": { + "description": "A list of export executions.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ExportExecution" + } + } + } + }, + "ExportExecution": { + "description": "An export execution.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExportExecutionProperties", + "title": "Export execution properties" + } + } + }, + "ExportExecutionProperties": { + "description": "The properties of the export execution.", + "type": "object", + "properties": { + "executionType": { + "description": "The type of the export execution.", + "type": "string", + "enum": [ + "OnDemand", + "Scheduled" + ], + "x-ms-enum": { + "name": "ExecutionType", + "modelAsString": true + } + }, + "status": { + "description": "The last known status of the export execution.", + "type": "string", + "enum": [ + "Queued", + "InProgress", + "Completed", + "Failed", + "Timeout", + "NewDataNotAvailable", + "DataNotAvailable" + ], + "x-ms-enum": { + "name": "ExecutionStatus", + "modelAsString": true + } + }, + "submittedBy": { + "description": "The identifier for the entity that executed the export. For OnDemand executions it is the user email. For scheduled executions it is 'System'.", + "type": "string" + }, + "submittedTime": { + "description": "The time when export was queued to be executed.", + "type": "string", + "format": "date-time" + }, + "processingStartTime": { + "description": "The time when export was picked up to be executed.", + "type": "string", + "format": "date-time" + }, + "processingEndTime": { + "description": "The time when the export execution finished.", + "type": "string", + "format": "date-time" + }, + "fileName": { + "description": "The name of the exported file.", + "type": "string" + }, + "runSettings": { + "description": "The export settings that were in effect for this execution.", + "$ref": "#/definitions/CommonExportProperties" + }, + "error": { + "description": "The details of any error.", + "$ref": "#/definitions/ErrorDetails" + } + } + } + }, + "parameters": { + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Version of the API to be used with the client request." + }, + "scopeExportParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope associated with export operations. This includes '/subscriptions/{subscriptionId}/' for subscription scope, '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for resourceGroup scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for Billing Account scope and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}' for Department scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/enrollmentAccounts/{enrollmentAccountId}' for EnrollmentAccount scope, '/providers/Microsoft.Management/managementGroups/{managementGroupId} for Management Group scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for billingProfile scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/invoiceSections/{invoiceSectionId}' for invoiceSection scope, and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/customers/{customerId}' specific for partners.", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, + "exportNameParameter": { + "name": "exportName", + "in": "path", + "description": "Export Name.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportCreateOrUpdateByBillingAccount.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportCreateOrUpdateByBillingAccount.json new file mode 100644 index 000000000000..641fb9ed216c --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportCreateOrUpdateByBillingAccount.json @@ -0,0 +1,128 @@ +{ + "parameters": { + "api-version": "2020-12-01-preview", + "billingAccountId": "123456", + "scope": "providers/Microsoft.Billing/billingAccounts/123456", + "exportName": "TestExport", + "parameters": { + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "MonthToDate", + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/123456/providers/Microsoft.CostManagement/exports/TestExport", + "name": "TestExport", + "type": "Microsoft.CostManagement/exports", + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "MonthToDate", + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + }, + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/123456/providers/Microsoft.CostManagement/exports/TestExport", + "name": "TestExport", + "type": "Microsoft.CostManagement/exports", + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "MonthToDate", + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportCreateOrUpdateByDepartment.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportCreateOrUpdateByDepartment.json new file mode 100644 index 000000000000..8589ef652f95 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportCreateOrUpdateByDepartment.json @@ -0,0 +1,129 @@ +{ + "parameters": { + "api-version": "2020-12-01-preview", + "billingAccountId": "12", + "departmentId": "1234", + "scope": "providers/Microsoft.Billing/billingAccounts/12/departments/1234", + "exportName": "TestExport", + "parameters": { + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "MonthToDate", + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/12/departments/1234/providers/Microsoft.CostManagement/exports/TestExport", + "name": "TestExport", + "type": "Microsoft.CostManagement/exports", + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "MonthToDate", + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + }, + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/12/departments/1234/providers/Microsoft.CostManagement/exports/TestExport", + "name": "TestExport", + "type": "Microsoft.CostManagement/exports", + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "MonthToDate", + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportCreateOrUpdateByEnrollmentAccount.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportCreateOrUpdateByEnrollmentAccount.json new file mode 100644 index 000000000000..fff28941938c --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportCreateOrUpdateByEnrollmentAccount.json @@ -0,0 +1,129 @@ +{ + "parameters": { + "api-version": "2020-12-01-preview", + "billingAccountId": "100", + "enrollmentAccountId": "456", + "scope": "providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456", + "exportName": "TestExport", + "parameters": { + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "MonthToDate", + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456/providers/Microsoft.CostManagement/exports/TestExport", + "name": "TestExport", + "type": "Microsoft.CostManagement/exports", + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "MonthToDate", + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + }, + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456/providers/Microsoft.CostManagement/exports/TestExport", + "name": "TestExport", + "type": "Microsoft.CostManagement/exports", + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "MonthToDate", + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportCreateOrUpdateByManagementGroup.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportCreateOrUpdateByManagementGroup.json new file mode 100644 index 000000000000..406e96fac759 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportCreateOrUpdateByManagementGroup.json @@ -0,0 +1,128 @@ +{ + "parameters": { + "api-version": "2020-12-01-preview", + "managementGroupId": "TestMG", + "scope": "providers/Microsoft.Management/managementGroups/TestMG", + "exportName": "TestExport", + "parameters": { + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "MonthToDate", + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "providers/Microsoft.Management/managementGroups/TestMG/providers/Microsoft.CostManagement/exports/TestExport", + "name": "TestExport", + "type": "Microsoft.CostManagement/exports", + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "MonthToDate", + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + }, + "200": { + "body": { + "id": "providers/Microsoft.Management/managementGroups/TestMG/providers/Microsoft.CostManagement/exports/TestExport", + "name": "TestExport", + "type": "Microsoft.CostManagement/exports", + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "MonthToDate", + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportCreateOrUpdateByResourceGroup.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportCreateOrUpdateByResourceGroup.json new file mode 100644 index 000000000000..8823bb8a7956 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportCreateOrUpdateByResourceGroup.json @@ -0,0 +1,129 @@ +{ + "parameters": { + "api-version": "2020-12-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "MYDEVTESTRG", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG", + "exportName": "TestExport", + "parameters": { + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "MonthToDate", + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.CostManagement/exports/TestExport", + "name": "TestExport", + "type": "Microsoft.CostManagement/exports", + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "MonthToDate", + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + }, + "200": { + "body": { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.CostManagement/exports/TestExport", + "name": "TestExport", + "type": "Microsoft.CostManagement/exports", + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "MonthToDate", + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportCreateOrUpdateBySubscription.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportCreateOrUpdateBySubscription.json new file mode 100644 index 000000000000..584c5945cd3f --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportCreateOrUpdateBySubscription.json @@ -0,0 +1,128 @@ +{ + "parameters": { + "api-version": "2020-12-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "exportName": "TestExport", + "parameters": { + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "MonthToDate", + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.CostManagement/exports/TestExport", + "name": "TestExport", + "type": "Microsoft.CostManagement/exports", + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "MonthToDate", + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + }, + "200": { + "body": { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.CostManagement/exports/TestExport", + "name": "TestExport", + "type": "Microsoft.CostManagement/exports", + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "MonthToDate", + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportDeleteByBillingAccount.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportDeleteByBillingAccount.json new file mode 100644 index 000000000000..248ac4f60cc1 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportDeleteByBillingAccount.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "api-version": "2020-12-01-preview", + "billingAccountId": "123456", + "scope": "providers/Microsoft.Billing/billingAccounts/123456", + "exportName": "TestExport" + }, + "responses": { + "200": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportDeleteByDepartment.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportDeleteByDepartment.json new file mode 100644 index 000000000000..ececcb2c8301 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportDeleteByDepartment.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2020-12-01-preview", + "billingAccountId": "12", + "departmentId": "1234", + "scope": "providers/Microsoft.Billing/billingAccounts/12/departments/1234", + "exportName": "TestExport" + }, + "responses": { + "200": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportDeleteByEnrollmentAccount.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportDeleteByEnrollmentAccount.json new file mode 100644 index 000000000000..87766604f296 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportDeleteByEnrollmentAccount.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2020-12-01-preview", + "billingAccountId": "100", + "enrollmentAccountId": "456", + "scope": "providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456", + "exportName": "TestExport" + }, + "responses": { + "200": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportDeleteByManagementGroup.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportDeleteByManagementGroup.json new file mode 100644 index 000000000000..a4ee30019281 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportDeleteByManagementGroup.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "api-version": "2020-12-01-preview", + "managementGroupId": "TestMG", + "scope": "providers/Microsoft.Management/managementGroups/TestMG", + "exportName": "TestExport" + }, + "responses": { + "200": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportDeleteByResourceGroup.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportDeleteByResourceGroup.json new file mode 100644 index 000000000000..5bf16f30d738 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportDeleteByResourceGroup.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2020-12-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "MYDEVTESTRG", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG", + "exportName": "TestExport" + }, + "responses": { + "200": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportDeleteBySubscription.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportDeleteBySubscription.json new file mode 100644 index 000000000000..e892c4183d87 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportDeleteBySubscription.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "api-version": "2020-12-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "exportName": "TestExport" + }, + "responses": { + "200": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportGetByBillingAccount.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportGetByBillingAccount.json new file mode 100644 index 000000000000..6293630233c3 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportGetByBillingAccount.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2020-12-01-preview", + "billingAccountId": "123456", + "scope": "providers/Microsoft.Billing/billingAccounts/123456", + "exportName": "TestExport" + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/{billingAccount-Id}/providers/Microsoft.CostManagement/exports/TestExport", + "name": "TestExport", + "type": "Microsoft.CostManagement/exports", + "properties": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "Custom", + "timePeriod": { + "from": "2020-05-01T00:00:00Z", + "to": "2020-05-31T00:00:00Z" + }, + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportGetByDepartment.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportGetByDepartment.json new file mode 100644 index 000000000000..51e007d5f6e9 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportGetByDepartment.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2020-12-01-preview", + "billingAccountId": "12", + "departmentId": "1234", + "scope": "providers/Microsoft.Billing/billingAccounts/12/departments/1234", + "exportName": "TestExport" + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/12/departments/1234/providers/Microsoft.CostManagement/exports/TestExport", + "name": "TestExport", + "type": "Microsoft.CostManagement/exports", + "properties": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "Custom", + "timePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-06-30T00:00:00Z" + }, + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportGetByEnrollmentAccount.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportGetByEnrollmentAccount.json new file mode 100644 index 000000000000..de7472acefe9 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportGetByEnrollmentAccount.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2020-12-01-preview", + "billingAccountId": "100", + "enrollmentAccountId": "456", + "scope": "providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456", + "exportName": "TestExport" + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456/providers/Microsoft.CostManagement/exports/TestExport", + "name": "TestExport", + "type": "Microsoft.CostManagement/exports", + "properties": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "Custom", + "timePeriod": { + "from": "2019-09-01T00:00:00Z", + "to": "2019-10-31T00:00:00Z" + }, + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportGetByManagementGroup.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportGetByManagementGroup.json new file mode 100644 index 000000000000..4271b4d76ed6 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportGetByManagementGroup.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2020-12-01-preview", + "managementGroupId": "TestMG", + "scope": "providers/Microsoft.Management/managementGroups/TestMG", + "exportName": "TestExport" + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Management/managementGroups/TestMG/providers/Microsoft.CostManagement/exports/TestExport", + "name": "TestExport", + "type": "Microsoft.CostManagement/exports", + "properties": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "Custom", + "timePeriod": { + "from": "2019-09-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + }, + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "UsageDate", + "MeterId", + "InstanceId", + "ResourceLocation", + "UsageQuantity" + ] + } + } + } + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportGetByResourceGroup.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportGetByResourceGroup.json new file mode 100644 index 000000000000..ae8b7bc0a372 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportGetByResourceGroup.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2020-12-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "MYDEVTESTRG", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG", + "exportName": "TestExport" + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.CostManagement/exports/TestExport", + "name": "TestExport", + "type": "Microsoft.CostManagement/exports", + "properties": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "Custom", + "timePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-06-30T00:00:00Z" + }, + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportGetBySubscription.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportGetBySubscription.json new file mode 100644 index 000000000000..34503c05a9e3 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportGetBySubscription.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2020-12-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "exportName": "TestExport" + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.CostManagement/exports/TestExport", + "name": "TestExport", + "type": "Microsoft.CostManagement/exports", + "properties": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "Custom", + "timePeriod": { + "from": "2019-06-01T00:00:00Z", + "to": "2019-07-31T00:00:00Z" + }, + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportRunByBillingAccount.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportRunByBillingAccount.json new file mode 100644 index 000000000000..248ac4f60cc1 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportRunByBillingAccount.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "api-version": "2020-12-01-preview", + "billingAccountId": "123456", + "scope": "providers/Microsoft.Billing/billingAccounts/123456", + "exportName": "TestExport" + }, + "responses": { + "200": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportRunByDepartment.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportRunByDepartment.json new file mode 100644 index 000000000000..ececcb2c8301 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportRunByDepartment.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2020-12-01-preview", + "billingAccountId": "12", + "departmentId": "1234", + "scope": "providers/Microsoft.Billing/billingAccounts/12/departments/1234", + "exportName": "TestExport" + }, + "responses": { + "200": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportRunByEnrollmentAccount.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportRunByEnrollmentAccount.json new file mode 100644 index 000000000000..87766604f296 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportRunByEnrollmentAccount.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2020-12-01-preview", + "billingAccountId": "100", + "enrollmentAccountId": "456", + "scope": "providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456", + "exportName": "TestExport" + }, + "responses": { + "200": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportRunByManagementGroup.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportRunByManagementGroup.json new file mode 100644 index 000000000000..a4ee30019281 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportRunByManagementGroup.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "api-version": "2020-12-01-preview", + "managementGroupId": "TestMG", + "scope": "providers/Microsoft.Management/managementGroups/TestMG", + "exportName": "TestExport" + }, + "responses": { + "200": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportRunByResourceGroup.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportRunByResourceGroup.json new file mode 100644 index 000000000000..5bf16f30d738 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportRunByResourceGroup.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2020-12-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "MYDEVTESTRG", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG", + "exportName": "TestExport" + }, + "responses": { + "200": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportRunBySubscription.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportRunBySubscription.json new file mode 100644 index 000000000000..e892c4183d87 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportRunBySubscription.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "api-version": "2020-12-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "exportName": "TestExport" + }, + "responses": { + "200": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportRunHistoryGetByBillingAccount.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportRunHistoryGetByBillingAccount.json new file mode 100644 index 000000000000..952687744b60 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportRunHistoryGetByBillingAccount.json @@ -0,0 +1,100 @@ +{ + "parameters": { + "api-version": "2020-12-01-preview", + "billingAccountId": "123456", + "scope": "providers/Microsoft.Billing/billingAccounts/123456", + "exportName": "TestExport" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Billing/billingAccounts/{billingAccount-id}/providers/Microsoft.CostManagement/exports/JohnDoeSchedule/Run/1e25d58a-a3b0-4916-9542-6e04a89bc100", + "properties": { + "executionType": "OnDemand", + "status": "Completed", + "submittedBy": "john.doe@gmail.com", + "submittedTime": "2018-08-03T07:52:15.6016681Z", + "processingStartTime": "2018-08-03T07:52:16.9123797Z", + "processingEndTime": "2018-08-03T07:52:28.0373318Z", + "fileName": "ScheduledTestsForJohnDoe/JohnDoeSchedule/20180729-20180804/JohnDoeSchedule_1e25d58a-a3b0-4916-9542-6e04a89bc100.csv", + "runSettings": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ScheduledTestsForJohnDoe" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "Custom", + "timePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + }, + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + }, + { + "id": "providers/Microsoft.Billing/billingAccounts/{billingAccount-id}/providers/Microsoft.CostManagement/exports/JohnDoeSchedule/Run/11ac6811-dca3-46ad-b326-4704cf0c58ef", + "properties": { + "executionType": "Scheduled", + "status": "Completed", + "submittedBy": "System", + "submittedTime": "2018-08-03T09:03:58.5710244Z", + "processingStartTime": "2018-08-03T09:03:58.5710244Z", + "processingEndTime": "2018-08-03T09:04:19.7223808Z", + "fileName": "ScheduledTestsForJohnDoe/JohnDoeSchedule/20180729-20180804/JohnDoeSchedule_11ac6811-dca3-46ad-b326-4704cf0c58ef.csv", + "runSettings": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ScheduledTestsForJohnDoe" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "Custom", + "timePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + }, + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportRunHistoryGetByDepartment.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportRunHistoryGetByDepartment.json new file mode 100644 index 000000000000..e36a48322f61 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportRunHistoryGetByDepartment.json @@ -0,0 +1,101 @@ +{ + "parameters": { + "api-version": "2020-12-01-preview", + "billingAccountId": "12", + "departmentId": "1234", + "scope": "providers/Microsoft.Billing/billingAccounts/12/departments/1234", + "exportName": "TestExport" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Billing/billingAccounts/12/departments/1234/providers/Microsoft.CostManagement/exports/JohnDoeSchedule/Run/1e25d58a-a3b0-4916-9542-6e04a89bc100", + "properties": { + "executionType": "OnDemand", + "status": "Completed", + "submittedBy": "john.doe@gmail.com", + "submittedTime": "2018-08-03T07:52:15.6016681Z", + "processingStartTime": "2018-08-03T07:52:16.9123797Z", + "processingEndTime": "2018-08-03T07:52:28.0373318Z", + "fileName": "ScheduledTestsForJohnDoe/JohnDoeSchedule/20180729-20180804/JohnDoeSchedule_1e25d58a-a3b0-4916-9542-6e04a89bc100.csv", + "runSettings": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ScheduledTestsForJohnDoe" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "Custom", + "timePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + }, + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + }, + { + "id": "providers/Microsoft.Billing/billingAccounts/12/departments/1234/providers/Microsoft.CostManagement/exports/JohnDoeSchedule/Run/11ac6811-dca3-46ad-b326-4704cf0c58ef", + "properties": { + "executionType": "Scheduled", + "status": "Completed", + "submittedBy": "System", + "submittedTime": "2018-08-03T09:03:58.5710244Z", + "processingStartTime": "2018-08-03T09:03:58.5710244Z", + "processingEndTime": "2018-08-03T09:04:19.7223808Z", + "fileName": "ScheduledTestsForJohnDoe/JohnDoeSchedule/20180729-20180804/JohnDoeSchedule_11ac6811-dca3-46ad-b326-4704cf0c58ef.csv", + "runSettings": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ScheduledTestsForJohnDoe" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "Custom", + "timePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + }, + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportRunHistoryGetByEnrollmentAccount.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportRunHistoryGetByEnrollmentAccount.json new file mode 100644 index 000000000000..3cc2d9bdd01e --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportRunHistoryGetByEnrollmentAccount.json @@ -0,0 +1,101 @@ +{ + "parameters": { + "api-version": "2019-01-01", + "billingAccountId": "100", + "enrollmentAccountId": "456", + "scope": "providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456", + "exportName": "TestExport" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456/providers/Microsoft.CostManagement/exports/JohnDoeSchedule/Run/1e25d58a-a3b0-4916-9542-6e04a89bc100", + "properties": { + "executionType": "OnDemand", + "status": "Completed", + "submittedBy": "john.doe@gmail.com", + "submittedTime": "2018-08-03T07:52:15.6016681Z", + "processingStartTime": "2018-08-03T07:52:16.9123797Z", + "processingEndTime": "2018-08-03T07:52:28.0373318Z", + "fileName": "ScheduledTestsForJohnDoe/JohnDoeSchedule/20180729-20180804/JohnDoeSchedule_1e25d58a-a3b0-4916-9542-6e04a89bc100.csv", + "runSettings": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ScheduledTestsForJohnDoe" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "Custom", + "timePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + }, + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + }, + { + "id": "providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456/providers/Microsoft.CostManagement/exports/JohnDoeSchedule/Run/11ac6811-dca3-46ad-b326-4704cf0c58ef", + "properties": { + "executionType": "Scheduled", + "status": "Completed", + "submittedBy": "System", + "submittedTime": "2018-08-03T09:03:58.5710244Z", + "processingStartTime": "2018-08-03T09:03:58.5710244Z", + "processingEndTime": "2018-08-03T09:04:19.7223808Z", + "fileName": "ScheduledTestsForJohnDoe/JohnDoeSchedule/20180729-20180804/JohnDoeSchedule_11ac6811-dca3-46ad-b326-4704cf0c58ef.csv", + "runSettings": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ScheduledTestsForJohnDoe" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "Custom", + "timePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + }, + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportRunHistoryGetByManagementGroup.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportRunHistoryGetByManagementGroup.json new file mode 100644 index 000000000000..ffbf57b5833e --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportRunHistoryGetByManagementGroup.json @@ -0,0 +1,100 @@ +{ + "parameters": { + "api-version": "2020-12-01-preview", + "managementGroupId": "TestMG", + "scope": "providers/Microsoft.Management/managementGroups/TestMG", + "exportName": "TestExport" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Management/managementGroups/TestMG/providers/Microsoft.CostManagement/exports/TestExport/Run/1e25d58a-a3b0-4916-9542-6e04a89bc100", + "properties": { + "executionType": "OnDemand", + "status": "Completed", + "submittedBy": "john.doe@gmail.com", + "submittedTime": "2018-08-03T07:52:15.6016681Z", + "processingStartTime": "2018-08-03T07:52:16.9123797Z", + "processingEndTime": "2018-08-03T07:52:28.0373318Z", + "fileName": "ScheduledForTestExport/TestExportSchedule/20180729-20180804/TestExportSchedule_1e25d58a-a3b0-4916-9542-6e04a89bc100.csv", + "runSettings": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ScheduledTestsForJohnDoe" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "Custom", + "timePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + }, + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + }, + { + "id": "providers/Microsoft.Management/managementGroups/TestMG/providers/Microsoft.CostManagement/exports/TestExport/Run/11ac6811-dca3-46ad-b326-4704cf0c58ef", + "properties": { + "executionType": "Scheduled", + "status": "Completed", + "submittedBy": "System", + "submittedTime": "2018-08-03T09:03:58.5710244Z", + "processingStartTime": "2018-08-03T09:03:58.5710244Z", + "processingEndTime": "2018-08-03T09:04:19.7223808Z", + "fileName": "ScheduledForTestExport/TestExportSchedule/20180729-20180804/TestExportSchedule_11ac6811-dca3-46ad-b326-4704cf0c58ef.csv", + "runSettings": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ScheduledTestsForJohnDoe" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "Custom", + "timePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + }, + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportRunHistoryGetByResourceGroup.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportRunHistoryGetByResourceGroup.json new file mode 100644 index 000000000000..3dbd7e6dc25a --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportRunHistoryGetByResourceGroup.json @@ -0,0 +1,101 @@ +{ + "parameters": { + "api-version": "2020-12-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "MYDEVTESTRG", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG", + "exportName": "TestExport" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.CostManagement/exports/JohnDoeSchedule/Run/1e25d58a-a3b0-4916-9542-6e04a89bc100", + "properties": { + "executionType": "OnDemand", + "status": "Completed", + "submittedBy": "john.doe@gmail.com", + "submittedTime": "2018-08-03T07:52:15.6016681Z", + "processingStartTime": "2018-08-03T07:52:16.9123797Z", + "processingEndTime": "2018-08-03T07:52:28.0373318Z", + "fileName": "ScheduledTestsForJohnDoe/JohnDoeSchedule/20180729-20180804/JohnDoeSchedule_1e25d58a-a3b0-4916-9542-6e04a89bc100.csv", + "runSettings": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ScheduledTestsForJohnDoe" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "Custom", + "timePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + }, + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + }, + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.CostManagement/exports/JohnDoeSchedule/Run/11ac6811-dca3-46ad-b326-4704cf0c58ef", + "properties": { + "executionType": "Scheduled", + "status": "Completed", + "submittedBy": "System", + "submittedTime": "2018-08-03T09:03:58.5710244Z", + "processingStartTime": "2018-08-03T09:03:58.5710244Z", + "processingEndTime": "2018-08-03T09:04:19.7223808Z", + "fileName": "ScheduledTestsForJohnDoe/JohnDoeSchedule/20180729-20180804/JohnDoeSchedule_11ac6811-dca3-46ad-b326-4704cf0c58ef.csv", + "runSettings": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ScheduledTestsForJohnDoe" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "Custom", + "timePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + }, + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportRunHistoryGetBySubscription.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportRunHistoryGetBySubscription.json new file mode 100644 index 000000000000..605d49dbcda5 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportRunHistoryGetBySubscription.json @@ -0,0 +1,100 @@ +{ + "parameters": { + "api-version": "2020-12-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "exportName": "TestExport" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.CostManagement/exports/JohnDoeSchedule/Run/1e25d58a-a3b0-4916-9542-6e04a89bc100", + "properties": { + "executionType": "OnDemand", + "status": "Completed", + "submittedBy": "john.doe@gmail.com", + "submittedTime": "2018-08-03T07:52:15.6016681Z", + "processingStartTime": "2018-08-03T07:52:16.9123797Z", + "processingEndTime": "2018-08-03T07:52:28.0373318Z", + "fileName": "ScheduledTestsForJohnDoe/JohnDoeSchedule/20180729-20180804/JohnDoeSchedule_1e25d58a-a3b0-4916-9542-6e04a89bc100.csv", + "runSettings": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ScheduledTestsForJohnDoe" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "Custom", + "timePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + }, + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + }, + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.CostManagement/exports/JohnDoeSchedule/Run/11ac6811-dca3-46ad-b326-4704cf0c58ef", + "properties": { + "executionType": "Scheduled", + "status": "Completed", + "submittedBy": "System", + "submittedTime": "2018-08-03T09:03:58.5710244Z", + "processingStartTime": "2018-08-03T09:03:58.5710244Z", + "processingEndTime": "2018-08-03T09:04:19.7223808Z", + "fileName": "ScheduledTestsForJohnDoe/JohnDoeSchedule/20180729-20180804/JohnDoeSchedule_11ac6811-dca3-46ad-b326-4704cf0c58ef.csv", + "runSettings": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ScheduledTestsForJohnDoe" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "Custom", + "timePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + }, + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportsGetByBillingAccount.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportsGetByBillingAccount.json new file mode 100644 index 000000000000..e0ad5d461eae --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportsGetByBillingAccount.json @@ -0,0 +1,89 @@ +{ + "parameters": { + "api-version": "2020-12-01-preview", + "billingAccountId": "123456", + "scope": "providers/Microsoft.Billing/billingAccounts/123456" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Billing/billingAccounts/123456/providers/Microsoft.CostManagement/exports/TestExport1", + "name": "TestExport1", + "type": "Microsoft.CostManagement/exports", + "properties": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "Custom", + "timePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + }, + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + }, + { + "id": "providers/Microsoft.Billing/billingAccounts/123456/providers/Microsoft.CostManagement/exports/TestExport2", + "name": "TestExport2", + "type": "Microsoft.CostManagement/exports", + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "WeekToDate", + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportsGetByDepartment.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportsGetByDepartment.json new file mode 100644 index 000000000000..511b25f5d221 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportsGetByDepartment.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "api-version": "2020-12-01-preview", + "billingAccountId": "12", + "departmentId": "1234", + "scope": "providers/Microsoft.Billing/billingAccounts/12/departments/123" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Billing/billingAccounts/12/departments/1234/providers/Microsoft.CostManagement/exports/TestExport1", + "name": "TestExport1", + "type": "Microsoft.CostManagement/exports", + "properties": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "Custom", + "timePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + }, + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + }, + { + "id": "providers/Microsoft.Billing/billingAccounts/12/departments/1234/providers/Microsoft.CostManagement/exports/TestExport2", + "name": "TestExport2", + "type": "Microsoft.CostManagement/exports", + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "WeekToDate", + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportsGetByEnrollmentAccount.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportsGetByEnrollmentAccount.json new file mode 100644 index 000000000000..cd360a11b94e --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportsGetByEnrollmentAccount.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "api-version": "2020-12-01-preview", + "billingAccountId": "100", + "enrollmentAccountId": "456", + "scope": "providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456/providers/Microsoft.CostManagement/exports/TestExport1", + "name": "TestExport1", + "type": "Microsoft.CostManagement/exports", + "properties": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "Custom", + "timePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + }, + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + }, + { + "id": "providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456/providers/Microsoft.CostManagement/exports/TestExport2", + "name": "TestExport2", + "type": "Microsoft.CostManagement/exports", + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "WeekToDate", + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportsGetByManagementGroup.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportsGetByManagementGroup.json new file mode 100644 index 000000000000..e8af41508e2c --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportsGetByManagementGroup.json @@ -0,0 +1,89 @@ +{ + "parameters": { + "api-version": "2020-12-01-preview", + "managementGroupId": "TestMG", + "scope": "providers/Microsoft.Management/managementGroups/TestMG" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Management/managementGroups/TestMG/providers/Microsoft.CostManagement/exports/TestExport1", + "name": "TestExport1", + "type": "Microsoft.CostManagement/exports", + "properties": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "Custom", + "timePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + }, + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + }, + { + "id": "providers/Microsoft.Management/managementGroups/TestMG/providers/Microsoft.CostManagement/exports/TestExport2", + "name": "TestExport2", + "type": "Microsoft.CostManagement/exports", + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "WeekToDate", + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportsGetByResourceGroup.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportsGetByResourceGroup.json new file mode 100644 index 000000000000..69b5542ee176 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportsGetByResourceGroup.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "api-version": "2020-12-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "MYDEVTESTRG", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.CostManagement/exports/TestExport1", + "name": "TestExport1", + "type": "Microsoft.CostManagement/exports", + "properties": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "Custom", + "timePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + }, + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + }, + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.CostManagement/exports/TestExport2", + "name": "TestExport2", + "type": "Microsoft.CostManagement/exports", + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "WeekToDate", + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportsGetBySubscription.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportsGetBySubscription.json new file mode 100644 index 000000000000..9d63abc514c8 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/ExportsGetBySubscription.json @@ -0,0 +1,89 @@ +{ + "parameters": { + "api-version": "2020-12-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.CostManagement/exports/TestExport1", + "name": "TestExport1", + "type": "Microsoft.CostManagement/exports", + "properties": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "Custom", + "timePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + }, + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + }, + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.CostManagement/exports/TestExport2", + "name": "TestExport2", + "type": "Microsoft.CostManagement/exports", + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "WeekToDate", + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/GenerateDetailedCostReportBySubscriptionAndTimePeriod.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/GenerateDetailedCostReportBySubscriptionAndTimePeriod.json index dd5b6189d9d9..c2df9d3e3775 100644 --- a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/GenerateDetailedCostReportBySubscriptionAndTimePeriod.json +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2020-12-01-preview/examples/GenerateDetailedCostReportBySubscriptionAndTimePeriod.json @@ -1,7 +1,7 @@ { "parameters": { "api-version": "2020-12-01-preview", - "scope": "subscriptions/fae17478-31e7-40fd-b62a-1a127754a463", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", "parameters": { "metric": "ActualCost", "timePeriod": { @@ -24,8 +24,8 @@ }, "202": { "headers": { - "Location": "https://management.azure.com/subscriptions/fae17478-31e7-40fd-b62a-1a127754a463/providers/Microsoft.CostManagement/operationResults/ad0d632f-1186-41fe-89f9-ae29e198d223?api-version=2020-12-01-preview", - "Azure-Consumption-AsyncOperation": "https://management.azure.com/subscriptions/fae17478-31e7-40fd-b62a-1a127754a463/providers/Microsoft.CostManagement/operationStatus/ad0d632f-1186-41fe-89f9-ae29e198d223?api-version=2020-12-01-preview", + "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.CostManagement/operationResults/00000000-0000-0000-0000-000000000000?api-version=2020-12-01-preview", + "Azure-Consumption-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.CostManagement/operationStatus/00000000-0000-0000-0000-000000000000?api-version=2020-12-01-preview", "Retry-After": "60" } } diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/costmanagement.exports.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/costmanagement.exports.json index 17692a659dae..a26c4a8e32d9 100644 --- a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/costmanagement.exports.json +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/costmanagement.exports.json @@ -588,6 +588,9 @@ "description": "The name of the aggregation function to use.", "type": "string", "enum": [ + "Avg", + "Max", + "Min", "Sum" ], "x-ms-enum": { diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/costmanagement.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/costmanagement.json index 5e87c4f64151..2ace1a19a41d 100644 --- a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/costmanagement.json +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/costmanagement.json @@ -1575,6 +1575,9 @@ "description": "The name of the aggregation function to use.", "type": "string", "enum": [ + "Avg", + "Max", + "Min", "Sum" ], "x-ms-enum": { @@ -1730,7 +1733,7 @@ } }, "Setting": { - "description": "State of Setting", + "description": "State of the myscope setting.", "type": "object", "allOf": [ { @@ -1785,9 +1788,66 @@ "description": "The properties of the setting.", "properties": { "scope": { - "description": "For the myscope setting, sets the default scope the current user will see when they sign into Azure Cost Management in the Azure portal.", + "description": "Sets the default scope the current user will see when they sign into Azure Cost Management in the Azure portal.", "type": "string" + }, + "startOn": { + "description": "Indicates what scope Cost Management in the Azure portal should default to. Allowed values: LastUsed.", + "type": "string", + "enum": [ + "LastUsed", + "ScopePicker", + "SpecificScope" + ], + "x-nullable": true + }, + "cache": { + "$ref": "#/definitions/Cache" } + }, + "required": [ + "scope" + ] + }, + "Cache": { + "type": "array", + "description": "Array of scopes with additional details used by Cost Management in the Azure portal.", + "items": { + "type": "object", + "properties": { + "id": { + "description": "Resource ID used by Resource Manager to uniquely identify the scope.", + "type": "string" + }, + "name": { + "description": "Display name for the scope.", + "type": "string" + }, + "channel": { + "description": "Indicates the account type. Allowed values include: EA, PAYG, Modern, Internal, Unknown.", + "type": "string" + }, + "subchannel": { + "description": "Indicates the type of modern account. Allowed values include: Individual, Enterprise, Partner, Indirect, NotApplicable", + "type": "string" + }, + "parent": { + "description": "Resource ID of the parent scope. For instance, subscription's resource ID for a resource group or a management group resource ID for a subscription.", + "type": "string", + "x-nullable": true + }, + "status": { + "description": "Indicates the status of the scope. Status only applies to subscriptions and billing accounts.", + "type": "string", + "x-nullable": true + } + }, + "required": [ + "id", + "name", + "channel", + "subchannel" + ] } }, "ViewProperties": { @@ -1994,23 +2054,23 @@ "id": { "readOnly": true, "type": "string", - "description": "Resource Id" + "description": "Resource Id." }, "name": { "readOnly": true, "type": "string", - "description": "Resource name" + "description": "Resource name." }, "kind": { "readOnly": true, "type": "string", - "description": "Resource kind", + "description": "Resource kind.", "maxLength": 10 }, "type": { "readOnly": true, "type": "string", - "description": "Resource type" + "description": "Resource type." } }, "x-ms-azure-resource": true @@ -2749,6 +2809,9 @@ "description": "The name of the aggregation function to use.", "type": "string", "enum": [ + "Avg", + "Max", + "Min", "Sum" ], "x-ms-enum": { diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/Setting.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/Setting.json index 89cb25f76c20..e1f3557b2054 100644 --- a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/Setting.json +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/Setting.json @@ -9,9 +9,20 @@ "id": "/providers/Microsoft.CostManagement/settings/myscope", "name": "myscope", "kind": "user", - "type": "Microsoft.CostManagement/settings", + "type": "Microsoft.CostManagement/Settings", "properties": { - "scope": "/subscriptions/00000000-0000-0000-0000-000000000000" + "scope": "/subscriptions/00000000-0000-0000-0000-000000000000", + "startOn": "LastUsed", + "cache": [ + { + "id": "/providers/Microsoft.Management/managementGroups/72f988bf-86f1-41af-91ab-2d7cd011db47", + "name": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "channel": "Modern", + "subchannel": "NotApplicable", + "parent": "/providers/Microsoft.Management/managementGroups/acm", + "status": "enabled" + } + ] } } } diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/SettingsCreateOrUpdate.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/SettingsCreateOrUpdate.json index ad93bb023549..6b1b84cd3af7 100644 --- a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/SettingsCreateOrUpdate.json +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/SettingsCreateOrUpdate.json @@ -4,7 +4,18 @@ "settingName": "myscope", "parameters": { "properties": { - "scope": "/subscriptions/00000000-0000-0000-0000-000000000000" + "scope": "/subscriptions/00000000-0000-0000-0000-000000000000", + "startOn": "LastUsed", + "cache": [ + { + "id": "/providers/Microsoft.Management/managementGroups/72f988bf-86f1-41af-91ab-2d7cd011db47", + "name": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "channel": "Modern", + "subchannel": "NotApplicable", + "parent": "/providers/Microsoft.Management/managementGroups/acm", + "status": "enabled" + } + ] } } }, @@ -14,9 +25,20 @@ "id": "/providers/Microsoft.CostManagement/settings/myscope", "name": "myscope", "kind": "user", - "type": "Microsoft.CostManagement/settings", + "type": "Microsoft.CostManagement/Settings", "properties": { - "scope": "/subscriptions/00000000-0000-0000-0000-000000000000" + "scope": "/subscriptions/00000000-0000-0000-0000-000000000000", + "startOn": "LastUsed", + "cache": [ + { + "id": "/providers/Microsoft.Management/managementGroups/72f988bf-86f1-41af-91ab-2d7cd011db47", + "name": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "channel": "Modern", + "subchannel": "NotApplicable", + "parent": "/providers/Microsoft.Management/managementGroups/acm", + "status": "enabled" + } + ] } } } diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/SettingsList.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/SettingsList.json index 89fc8eae7f6e..0c58a5d6944b 100644 --- a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/SettingsList.json +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/SettingsList.json @@ -10,9 +10,28 @@ "id": "/providers/Microsoft.CostManagement/settings/myscope", "name": "myscope", "kind": "user", - "type": "Microsoft.CostManagement/settings", + "type": "Microsoft.CostManagement/Settings", "properties": { - "scope": "/subscriptions/00000000-0000-0000-0000-000000000000" + "scope": "/subscriptions/00000000-0000-0000-0000-000000000000", + "startOn": "LastUsed", + "cache": [ + { + "id": "/subscriptions/ec9de2f7-b65b-408d-ac59-da71ceb340bc", + "name": "Azure Cost Management", + "channel": "Modern", + "subchannel": "Individual", + "parent": "/providers/Microsoft.Management/managementGroups/b8f458df-48b6-4215-b307-e71221f1fb79", + "status": "enabled" + }, + { + "id": "/providers/Microsoft.Management/managementGroups/b8f458df-48b6-4215-b307-e71221f1fb79", + "name": "Cloudyn", + "channel": "Modern", + "subchannel": "Individual", + "parent": "/providers/Microsoft.Management/managementGroups/acm", + "status": "enabled" + } + ] } } ] diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/costmanagement.exports.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/costmanagement.exports.json new file mode 100644 index 000000000000..120956eddce0 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/costmanagement.exports.json @@ -0,0 +1,889 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-01-01", + "title": "CostManagementClient" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/{scope}/providers/Microsoft.CostManagement/exports": { + "get": { + "tags": [ + "Exports" + ], + "operationId": "Exports_List", + "description": "The operation to list all exports at the given scope.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "ExportsGetBySubscription": { + "$ref": "./examples/ExportsGetBySubscription.json" + }, + "ExportsGetByResourceGroup": { + "$ref": "./examples/ExportsGetByResourceGroup.json" + }, + "ExportsGetByBillingAccount": { + "$ref": "./examples/ExportsGetByBillingAccount.json" + }, + "ExportsGetByDepartment": { + "$ref": "./examples/ExportsGetByDepartment.json" + }, + "ExportsGetByEnrollmentAccount": { + "$ref": "./examples/ExportsGetByEnrollmentAccount.json" + }, + "ExportsGetByManagementGroup": { + "$ref": "./examples/ExportsGetByManagementGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeExportParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$expand", + "description": "May be used to expand the properties within an export. Currently only 'runHistory' is supported and will return information for the last execution of each export.", + "in": "query", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ExportListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/{scope}/providers/Microsoft.CostManagement/exports/{exportName}": { + "get": { + "tags": [ + "Exports" + ], + "operationId": "Exports_Get", + "description": "The operation to get the export for the defined scope by export name.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "ExportGetBySubscription": { + "$ref": "./examples/ExportGetBySubscription.json" + }, + "ExportGetByResourceGroup": { + "$ref": "./examples/ExportGetByResourceGroup.json" + }, + "ExportGetByBillingAccount": { + "$ref": "./examples/ExportGetByBillingAccount.json" + }, + "ExportGetByDepartment": { + "$ref": "./examples/ExportGetByDepartment.json" + }, + "ExportGetByEnrollmentAccount": { + "$ref": "./examples/ExportGetByEnrollmentAccount.json" + }, + "ExportGetByManagementGroup": { + "$ref": "./examples/ExportGetByManagementGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeExportParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/exportNameParameter" + }, + { + "name": "$expand", + "description": "May be used to expand the properties within an export. Currently only 'runHistory' is supported and will return information for the last 10 executions of the export.", + "in": "query", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Export" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Exports" + ], + "operationId": "Exports_CreateOrUpdate", + "description": "The operation to create or update a export. Update operation requires latest eTag to be set in the request. You may obtain the latest eTag by performing a get operation. Create operation does not require eTag.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "ExportCreateOrUpdateBySubscription": { + "$ref": "./examples/ExportCreateOrUpdateBySubscription.json" + }, + "ExportCreateOrUpdateByResourceGroup": { + "$ref": "./examples/ExportCreateOrUpdateByResourceGroup.json" + }, + "ExportCreateOrUpdateByBillingAccount": { + "$ref": "./examples/ExportCreateOrUpdateByBillingAccount.json" + }, + "ExportCreateOrUpdateByDepartment": { + "$ref": "./examples/ExportCreateOrUpdateByDepartment.json" + }, + "ExportCreateOrUpdateByEnrollmentAccount": { + "$ref": "./examples/ExportCreateOrUpdateByEnrollmentAccount.json" + }, + "ExportCreateOrUpdateByManagementGroup": { + "$ref": "./examples/ExportCreateOrUpdateByManagementGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeExportParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/exportNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Export" + }, + "description": "Parameters supplied to the CreateOrUpdate Export operation." + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Export" + } + }, + "201": { + "description": "Created.", + "schema": { + "$ref": "#/definitions/Export" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Exports" + ], + "operationId": "Exports_Delete", + "description": "The operation to delete a export.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "ExportDeleteBySubscription": { + "$ref": "./examples/ExportDeleteBySubscription.json" + }, + "ExportDeleteByResourceGroup": { + "$ref": "./examples/ExportDeleteByResourceGroup.json" + }, + "ExportDeleteByBillingAccount": { + "$ref": "./examples/ExportDeleteByBillingAccount.json" + }, + "ExportDeleteByEnrollmentAccount": { + "$ref": "./examples/ExportDeleteByEnrollmentAccount.json" + }, + "ExportDeleteByDepartment": { + "$ref": "./examples/ExportDeleteByDepartment.json" + }, + "ExportDeleteByManagementGroup": { + "$ref": "./examples/ExportDeleteByManagementGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeExportParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/exportNameParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/{scope}/providers/Microsoft.CostManagement/exports/{exportName}/run": { + "post": { + "tags": [ + "Exports" + ], + "operationId": "Exports_Execute", + "description": "The operation to execute an export.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "ExportRunBySubscription": { + "$ref": "./examples/ExportRunBySubscription.json" + }, + "ExportRunByResourceGroup": { + "$ref": "./examples/ExportRunByResourceGroup.json" + }, + "ExportRunByBillingAccount": { + "$ref": "./examples/ExportRunByBillingAccount.json" + }, + "ExportRunByDepartment": { + "$ref": "./examples/ExportRunByDepartment.json" + }, + "ExportRunByEnrollmentAccount": { + "$ref": "./examples/ExportRunByEnrollmentAccount.json" + }, + "ExportRunByManagementGroup": { + "$ref": "./examples/ExportRunByManagementGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeExportParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/exportNameParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/{scope}/providers/Microsoft.CostManagement/exports/{exportName}/runHistory": { + "get": { + "tags": [ + "Exports" + ], + "operationId": "Exports_GetExecutionHistory", + "description": "The operation to get the execution history of an export for the defined scope and export name.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "ExportRunHistoryGetBySubscription": { + "$ref": "./examples/ExportRunHistoryGetBySubscription.json" + }, + "ExportRunHistoryGetByResourceGroup": { + "$ref": "./examples/ExportRunHistoryGetByResourceGroup.json" + }, + "ExportRunHistoryGetByBillingAccount": { + "$ref": "./examples/ExportRunHistoryGetByBillingAccount.json" + }, + "ExportRunHistoryGetByDepartment": { + "$ref": "./examples/ExportRunHistoryGetByDepartment.json" + }, + "ExportRunHistoryGetByEnrollmentAccount": { + "$ref": "./examples/ExportRunHistoryGetByEnrollmentAccount.json" + }, + "ExportRunHistoryGetByManagementGroup": { + "$ref": "./examples/ExportRunHistoryGetByManagementGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeExportParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/exportNameParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ExportExecutionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "ErrorResponse": { + "description": "Error response indicates that the service is not able to process the incoming request. The reason is provided in the error message. \n\nSome Error responses: \n\n * 429 TooManyRequests - Request is throttled. Retry after waiting for the time specified in the \"x-ms-ratelimit-microsoft.consumption-retry-after\" header. \n\n * 503 ServiceUnavailable - Service is temporarily unavailable. Retry after waiting for the time specified in the \"Retry-After\" header.", + "type": "object", + "properties": { + "error": { + "description": "The details of the error.", + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "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 + } + } + }, + "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 scenario, this field will be used to determine whether the user is updating the latest version or not." + } + }, + "x-ms-azure-resource": true + }, + "ExportListResult": { + "description": "Result of listing exports. It contains a list of available exports in the scope provided.", + "type": "object", + "properties": { + "value": { + "description": "The list of exports.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Export" + } + } + } + }, + "Export": { + "description": "An export resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExportProperties", + "title": "Export properties" + } + } + }, + "ExportProperties": { + "description": "The properties of the export.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CommonExportProperties" + } + ], + "properties": { + "schedule": { + "description": "Has schedule information for the export.", + "$ref": "#/definitions/ExportSchedule" + } + } + }, + "CommonExportProperties": { + "description": "The common properties of the export.", + "type": "object", + "properties": { + "format": { + "description": "The format of the export being delivered. Currently only 'Csv' is supported.", + "type": "string", + "enum": [ + "Csv" + ], + "x-ms-enum": { + "name": "FormatType", + "modelAsString": true + } + }, + "deliveryInfo": { + "description": "Has delivery information for the export.", + "$ref": "#/definitions/ExportDeliveryInfo" + }, + "definition": { + "description": "Has the definition for the export.", + "$ref": "#/definitions/ExportDefinition" + }, + "runHistory": { + "description": "If requested, has the most recent execution history for the export.", + "$ref": "#/definitions/ExportExecutionListResult" + }, + "partitionData": { + "description": "If set to true, exported data will be partitioned by size and placed in a blob directory together with a manifest file. Note: this option is currently available only for modern commerce scopes.", + "type": "boolean" + }, + "nextRunTimeEstimate": { + "description": "If the export has an active schedule, provides an estimate of the next execution time.", + "type": "string", + "format": "date-time", + "readOnly": true + } + }, + "required": [ + "deliveryInfo", + "definition" + ] + }, + "ExportSchedule": { + "description": "The schedule associated with the export.", + "type": "object", + "properties": { + "status": { + "description": "The status of the export's schedule. If 'Inactive', the export's schedule is paused.", + "type": "string", + "enum": [ + "Active", + "Inactive" + ], + "x-ms-enum": { + "name": "StatusType", + "modelAsString": true + } + }, + "recurrence": { + "description": "The schedule recurrence.", + "type": "string", + "enum": [ + "Daily", + "Weekly", + "Monthly", + "Annually" + ], + "x-ms-enum": { + "name": "RecurrenceType", + "modelAsString": true + } + }, + "recurrencePeriod": { + "description": "Has start and end date of the recurrence. The start date must be in future. If present, the end date must be greater than start date.", + "$ref": "#/definitions/ExportRecurrencePeriod" + } + } + }, + "ExportDeliveryInfo": { + "description": "The delivery information associated with a export.", + "type": "object", + "properties": { + "destination": { + "description": "Has destination for the export being delivered.", + "$ref": "#/definitions/ExportDeliveryDestination" + } + }, + "required": [ + "destination" + ] + }, + "ExportRecurrencePeriod": { + "description": "The start and end date for recurrence schedule.", + "type": "object", + "properties": { + "from": { + "description": "The start date of recurrence.", + "type": "string", + "format": "date-time" + }, + "to": { + "description": "The end date of recurrence.", + "type": "string", + "format": "date-time" + } + }, + "required": [ + "from" + ] + }, + "ExportDeliveryDestination": { + "description": "This represents the blob storage account location where exports of costs will be delivered. There are two ways to configure the destination. The approach recommended for most customers is to specify the resourceId of the storage account. This requires a one-time registration of the account's subscription with the Microsoft.CostManagementExports resource provider in order to give Azure Cost Management services access to the storage. When creating an export in the Azure portal this registration is performed automatically but API users may need to register the subscription explicitly (for more information see https://docs.microsoft.com/en-us/azure/azure-resource-manager/resource-manager-supported-services ). Another way to configure the destination is available ONLY to Partners with a Microsoft Partner Agreement plan who are global admins of their billing account. These Partners, instead of specifying the resourceId of a storage account, can specify the storage account name along with a SAS token for the account. This allows exports of costs to a storage account in any tenant. The SAS token should be created for the blob service with Service/Container/Object resource types and with Read/Write/Delete/List/Add/Create permissions (for more information see https://docs.microsoft.com/en-us/azure/cost-management-billing/costs/export-cost-data-storage-account-sas-key ).", + "type": "object", + "properties": { + "resourceId": { + "description": "The resource id of the storage account where exports will be delivered. This is not required if a sasToken and storageAccount are specified.", + "type": "string" + }, + "container": { + "description": "The name of the container where exports will be uploaded. If the container does not exist it will be created.", + "type": "string" + }, + "rootFolderPath": { + "description": "The name of the directory where exports will be uploaded.", + "type": "string" + }, + "sasToken": { + "description": "A SAS token for the storage account. For a restricted set of Azure customers this together with storageAccount can be specified instead of resourceId. Note: the value returned by the API for this property will always be obfuscated. Returning this same obfuscated value will not result in the SAS token being updated. To update this value a new SAS token must be specified.", + "type": "string", + "x-ms-secret": true, + "x-ms-mutability": [ + "create", + "update" + ] + }, + "storageAccount": { + "description": "The storage account where exports will be uploaded. For a restricted set of Azure customers this together with sasToken can be specified instead of resourceId.", + "type": "string" + } + }, + "required": [ + "container" + ] + }, + "ExportDefinition": { + "description": "The definition of an export.", + "type": "object", + "properties": { + "type": { + "description": "The type of the export. Note that 'Usage' is equivalent to 'ActualCost' and is applicable to exports that do not yet provide data for charges or amortization for service reservations.", + "type": "string", + "enum": [ + "Usage", + "ActualCost", + "AmortizedCost" + ], + "x-ms-enum": { + "name": "ExportType", + "modelAsString": true + } + }, + "timeframe": { + "description": "The time frame for pulling data for the export. If custom, then a specific time period must be provided.", + "type": "string", + "enum": [ + "MonthToDate", + "BillingMonthToDate", + "TheLastMonth", + "TheLastBillingMonth", + "WeekToDate", + "Custom" + ], + "x-ms-enum": { + "name": "TimeframeType", + "modelAsString": true + } + }, + "timePeriod": { + "description": "Has time period for pulling data for the export.", + "$ref": "#/definitions/ExportTimePeriod" + }, + "dataSet": { + "description": "The definition for data in the export.", + "$ref": "#/definitions/ExportDataset" + } + }, + "required": [ + "type", + "timeframe" + ] + }, + "ExportDataset": { + "description": "The definition for data in the export.", + "type": "object", + "properties": { + "granularity": { + "description": "The granularity of rows in the export. Currently only 'Daily' is supported.", + "type": "string", + "enum": [ + "Daily" + ], + "x-ms-enum": { + "name": "GranularityType", + "modelAsString": true + } + }, + "configuration": { + "description": "The export dataset configuration.", + "$ref": "#/definitions/ExportDatasetConfiguration" + } + } + }, + "ExportDatasetConfiguration": { + "description": "The export dataset configuration. Allows columns to be selected for the export. If not provided then the export will include all available columns.", + "type": "object", + "properties": { + "columns": { + "description": "Array of column names to be included in the export. If not provided then the export will include all available columns. The available columns can vary by customer channel (see examples).", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "ExportTimePeriod": { + "description": "The date range for data in the export. This should only be specified with timeFrame set to 'Custom'. The maximum date range is 3 months.", + "type": "object", + "properties": { + "from": { + "description": "The start date for export data.", + "type": "string", + "format": "date-time" + }, + "to": { + "description": "The end date for export data.", + "type": "string", + "format": "date-time" + } + }, + "required": [ + "from", + "to" + ] + }, + "ExportExecutionListResult": { + "description": "Result of listing the execution history of an export.", + "type": "object", + "properties": { + "value": { + "description": "A list of export executions.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ExportExecution" + } + } + } + }, + "ExportExecution": { + "description": "An export execution.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExportExecutionProperties", + "title": "Export execution properties" + } + } + }, + "ExportExecutionProperties": { + "description": "The properties of the export execution.", + "type": "object", + "properties": { + "executionType": { + "description": "The type of the export execution.", + "type": "string", + "enum": [ + "OnDemand", + "Scheduled" + ], + "x-ms-enum": { + "name": "ExecutionType", + "modelAsString": true + } + }, + "status": { + "description": "The last known status of the export execution.", + "type": "string", + "enum": [ + "Queued", + "InProgress", + "Completed", + "Failed", + "Timeout", + "NewDataNotAvailable", + "DataNotAvailable" + ], + "x-ms-enum": { + "name": "ExecutionStatus", + "modelAsString": true + } + }, + "submittedBy": { + "description": "The identifier for the entity that executed the export. For OnDemand executions it is the user email. For scheduled executions it is 'System'.", + "type": "string" + }, + "submittedTime": { + "description": "The time when export was queued to be executed.", + "type": "string", + "format": "date-time" + }, + "processingStartTime": { + "description": "The time when export was picked up to be executed.", + "type": "string", + "format": "date-time" + }, + "processingEndTime": { + "description": "The time when the export execution finished.", + "type": "string", + "format": "date-time" + }, + "fileName": { + "description": "The name of the exported file.", + "type": "string" + }, + "runSettings": { + "description": "The export settings that were in effect for this execution.", + "$ref": "#/definitions/CommonExportProperties" + }, + "error": { + "description": "The details of any error.", + "$ref": "#/definitions/ErrorDetails" + } + } + } + }, + "parameters": { + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Version of the API to be used with the client request." + }, + "scopeExportParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope associated with export operations. This includes '/subscriptions/{subscriptionId}/' for subscription scope, '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for resourceGroup scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for Billing Account scope and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}' for Department scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/enrollmentAccounts/{enrollmentAccountId}' for EnrollmentAccount scope, '/providers/Microsoft.Management/managementGroups/{managementGroupId} for Management Group scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for billingProfile scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/invoiceSections/{invoiceSectionId}' for invoiceSection scope, and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/customers/{customerId}' specific for partners.", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, + "exportNameParameter": { + "name": "exportName", + "in": "path", + "description": "Export Name.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/costmanagement.generatedetailedcostreport.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/costmanagement.generatedetailedcostreport.json new file mode 100644 index 000000000000..020f6f48b13e --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/costmanagement.generatedetailedcostreport.json @@ -0,0 +1,407 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-01-01", + "title": "CostManagementClient" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/{scope}/providers/Microsoft.CostManagement/generateDetailedCostReport": { + "post": { + "tags": [ + "UsageDetails" + ], + "operationId": "GenerateDetailedCostReport_CreateOperation", + "description": "Generates the detailed cost report for provided date range, billing period(Only enterprise customers) or Invoice Id asynchronously at a certain scope. Call returns a 202 with header Azure-Consumption-AsyncOperation providing a link to the operation created. A call on the operation will provide the status and if the operation is completed the blob file where generated detailed cost report is being stored.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "GenerateDetailedCostReportByBillingProfileAndInvoiceId": { + "$ref": "./examples/GenerateDetailedCostReportByBillingProfileAndInvoiceId.json" + }, + "GenerateDetailedCostReportBySubscriptionAndTimePeriod": { + "$ref": "./examples/GenerateDetailedCostReportBySubscriptionAndTimePeriod.json" + }, + "GenerateDetailedCostReportByCustomerAndTimePeriod": { + "$ref": "./examples/GenerateDetailedCostReportByCustomerAndTimePeriod.json" + }, + "GenerateDetailedCostReportByBillingProfileAndInvoiceIdAndCustomerId": { + "$ref": "./examples/GenerateDetailedCostReportByBillingProfileAndInvoiceIdAndCustomerId.json" + }, + "GenerateDetailedCostReportByBillingAccountLegacyAndBillingPeriod": { + "$ref": "./examples/GenerateDetailedCostReportByBillingAccountLegacyAndBillingPeriod.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "parameters": [ + { + "$ref": "#/parameters/scopeUsageDetailsParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenerateDetailedCostReportDefinition" + }, + "description": "Parameters supplied to the Create detailed cost report operation." + } + ], + "responses": { + "200": { + "description": "Request processing completed.", + "schema": { + "$ref": "#/definitions/GenerateDetailedCostReportOperationResult" + } + }, + "202": { + "description": "Accepted. Request will be processed. Use the Location header to check the status.", + "headers": { + "Location": { + "description": "The URL to check the result of the asynchronous operation.", + "type": "string" + }, + "Azure-Consumption-AsyncOperation": { + "description": "The URL to check the status of the asynchronous operation.", + "type": "string" + }, + "Azure-AsyncOperation": { + "description": "The URL to check the status of the asynchronous operation.", + "type": "string" + }, + "Retry-After": { + "description": "The amount of delay to use while the status of the operation is checked. The value is expressed in seconds.", + "format": "int32", + "type": "integer" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/GenerateDetailedCostReportErrorResponse" + } + } + } + } + }, + "/{scope}/providers/Microsoft.CostManagement/operationResults/{operationId}": { + "get": { + "tags": [ + "GenerateDetailedCostReportOperationResults" + ], + "operationId": "GenerateDetailedCostReportOperationResults_Get", + "description": "Get the result of the specified operation. This link is provided in the GenerateDetailedCostReport creation request response header.", + "x-ms-examples": { + "Get details of the operation result": { + "$ref": "./examples/GenerateDetailedCostReportOperationResultsBySubscriptionScope.json" + } + }, + "parameters": [ + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The target operation Id." + }, + { + "$ref": "#/parameters/scopeUsageDetailsParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/GenerateDetailedCostReportOperationResult" + } + }, + "202": { + "description": "Accepted. The operation is ongoing." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/{scope}/providers/Microsoft.CostManagement/operationStatus/{operationId}": { + "get": { + "tags": [ + "GenerateDetailedCostReportOperationStatus" + ], + "operationId": "GenerateDetailedCostReportOperationStatus_Get", + "description": "Get the status of the specified operation. This link is provided in the GenerateDetailedCostReport creation request response header.", + "x-ms-examples": { + "Get details of the operation status": { + "$ref": "./examples/GenerateDetailedCostReportOperationStatusBySubscriptionScope.json" + } + }, + "parameters": [ + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The target operation Id." + }, + { + "$ref": "#/parameters/scopeUsageDetailsParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/GenerateDetailedCostReportOperationStatuses" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "GenerateDetailedCostReportErrorResponse": { + "description": "Error response indicates that the service is not able to process the incoming request. The reason is provided in the error message. \n\nSome Error responses: \n\n * 413 Request Entity Too Large - Request is throttled. The amount of data required to fulfill the request exceeds the maximum size permitted of 2Gb. Please utilize our Exports feature instead. \n\n * 429 TooManyRequests - Request is throttled. Retry after waiting for the time specified in the \"x-ms-ratelimit-microsoft.consumption-retry-after\" header. \n\n * 503 ServiceUnavailable - Service is temporarily unavailable. Retry after waiting for the time specified in the \"Retry-After\" header.", + "type": "object", + "properties": { + "error": { + "description": "The details of the error.", + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "GenerateDetailedCostReportDefinition": { + "description": "The definition of a cost detailed report.", + "properties": { + "metric": { + "description": "The type of the detailed report. By default ActualCost is provided", + "type": "string", + "enum": [ + "ActualCost", + "AmortizedCost" + ], + "x-ms-enum": { + "name": "GenerateDetailedCostReportMetricType", + "modelAsString": true + } + }, + "timePeriod": { + "description": "Has time period for pulling data for the cost detailed report. Can only have one of either timePeriod or invoiceId or billingPeriod parameters. If none provided current month cost is provided.", + "$ref": "#/definitions/GenerateDetailedCostReportTimePeriod" + }, + "billingPeriod": { + "description": "Billing Period in YearMonth(e.g. 202008) format. Only for legacy enterprise customers can use this. Can only have one of either timePeriod or invoiceId or billingPeriod parameters. If none provided current month cost is provided.", + "type": "string" + }, + "invoiceId": { + "description": "Invoice Id for PayAsYouGo customers and Modern billing profile scope. Can only have one of either timePeriod or invoiceId or billingPeriod parameters. If none provided current month cost is provided.", + "type": "string" + }, + "customerId": { + "description": "Customer Id for Modern (Invoice Id and billing profile is also required for this).", + "type": "string" + } + } + }, + "GenerateDetailedCostReportTimePeriod": { + "description": "The start and end date for pulling data for the cost detailed report.", + "properties": { + "start": { + "description": "The start date to pull data from. example format 2020-03-15", + "type": "string" + }, + "end": { + "description": "The end date to pull data to. example format 2020-03-15", + "type": "string" + } + }, + "required": [ + "start", + "end" + ] + }, + "GenerateDetailedCostReportOperationStatuses": { + "description": "The status of the long running operation for cost detailed report.", + "properties": { + "id": { + "description": "The id of the long running operation.", + "type": "string" + }, + "name": { + "description": "The name of the long running operation.", + "type": "string" + }, + "status": { + "description": "The status of the long running operation.", + "$ref": "#/definitions/Status" + }, + "type": { + "description": "The type of the long running operation.", + "type": "string" + }, + "error": { + "description": "The details of the error.", + "$ref": "#/definitions/ErrorDetails" + }, + "properties": { + "x-ms-client-flatten": true, + "type": "object", + "description": "The properties of the resource generated.", + "$ref": "#/definitions/DownloadURL" + } + } + }, + "GenerateDetailedCostReportOperationResult": { + "description": "The result of the long running operation for cost detailed report.", + "properties": { + "id": { + "description": "The id of the long running operation.", + "type": "string" + }, + "name": { + "description": "The name of the long running operation.", + "type": "string" + }, + "type": { + "description": "The type of the long running operation.", + "type": "string" + }, + "properties": { + "x-ms-client-flatten": true, + "type": "object", + "description": "The properties of the resource generated.", + "$ref": "#/definitions/DownloadURL" + } + } + }, + "DownloadURL": { + "description": "The URL to download the generated report.", + "properties": { + "downloadUrl": { + "description": "The URL to download the generated report.", + "type": "string" + }, + "validTill": { + "description": "The time at which report URL becomes invalid/expires in UTC e.g. 2020-12-08T05:55:59.4394737Z.", + "type": "string", + "format": "date-time" + } + } + }, + "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. \n\nSome Error responses: \n\n * 429 TooManyRequests - Request is throttled. Retry after waiting for the time specified in the \"x-ms-ratelimit-microsoft.consumption-retry-after\" header. \n\n * 503 ServiceUnavailable - Service is temporarily unavailable. Retry after waiting for the time specified in the \"Retry-After\" header.", + "type": "object", + "properties": { + "error": { + "description": "The details of the error.", + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "Status": { + "description": "The status of the long running operation.", + "properties": { + "status": { + "description": "The status of the long running operation.", + "type": "string", + "enum": [ + "InProgress", + "Completed", + "Failed", + "Queued", + "NoDataFound", + "ReadyToDownload", + "TimedOut" + ], + "x-ms-enum": { + "name": "OperationStatusType", + "modelAsString": true + } + } + } + } + }, + "parameters": { + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Version of the API to be used with the client request." + }, + "scopeUsageDetailsParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope associated with usage details operations. This includes '/subscriptions/{subscriptionId}/' for subscription scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for Billing Account scope, '/providers/Microsoft.Billing/departments/{departmentId}' for Department scope, '/providers/Microsoft.Billing/enrollmentAccounts/{enrollmentAccountId}' for EnrollmentAccount scope. Also, Modern Commerce Account scopes are '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for billingAccount scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for billingProfile scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/invoiceSections/{invoiceSectionId}' for invoiceSection scope, and 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/customers/{customerId}' specific for partners.", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportCreateOrUpdateByBillingAccount.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportCreateOrUpdateByBillingAccount.json new file mode 100644 index 000000000000..2f36a026d2d8 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportCreateOrUpdateByBillingAccount.json @@ -0,0 +1,128 @@ +{ + "parameters": { + "api-version": "2021-01-01", + "billingAccountId": "123456", + "scope": "providers/Microsoft.Billing/billingAccounts/123456", + "exportName": "TestExport", + "parameters": { + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "MonthToDate", + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/123456/providers/Microsoft.CostManagement/exports/TestExport", + "name": "TestExport", + "type": "Microsoft.CostManagement/exports", + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "MonthToDate", + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + }, + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/123456/providers/Microsoft.CostManagement/exports/TestExport", + "name": "TestExport", + "type": "Microsoft.CostManagement/exports", + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "MonthToDate", + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportCreateOrUpdateByDepartment.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportCreateOrUpdateByDepartment.json new file mode 100644 index 000000000000..e52e99fc360f --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportCreateOrUpdateByDepartment.json @@ -0,0 +1,129 @@ +{ + "parameters": { + "api-version": "2021-01-01", + "billingAccountId": "12", + "departmentId": "1234", + "scope": "providers/Microsoft.Billing/billingAccounts/12/departments/1234", + "exportName": "TestExport", + "parameters": { + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "MonthToDate", + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/12/departments/1234/providers/Microsoft.CostManagement/exports/TestExport", + "name": "TestExport", + "type": "Microsoft.CostManagement/exports", + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "MonthToDate", + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + }, + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/12/departments/1234/providers/Microsoft.CostManagement/exports/TestExport", + "name": "TestExport", + "type": "Microsoft.CostManagement/exports", + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "MonthToDate", + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportCreateOrUpdateByEnrollmentAccount.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportCreateOrUpdateByEnrollmentAccount.json new file mode 100644 index 000000000000..cd02cd131413 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportCreateOrUpdateByEnrollmentAccount.json @@ -0,0 +1,129 @@ +{ + "parameters": { + "api-version": "2021-01-01", + "billingAccountId": "100", + "enrollmentAccountId": "456", + "scope": "providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456", + "exportName": "TestExport", + "parameters": { + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "MonthToDate", + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456/providers/Microsoft.CostManagement/exports/TestExport", + "name": "TestExport", + "type": "Microsoft.CostManagement/exports", + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "MonthToDate", + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + }, + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456/providers/Microsoft.CostManagement/exports/TestExport", + "name": "TestExport", + "type": "Microsoft.CostManagement/exports", + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "MonthToDate", + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportCreateOrUpdateByManagementGroup.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportCreateOrUpdateByManagementGroup.json new file mode 100644 index 000000000000..f8a2f59d2739 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportCreateOrUpdateByManagementGroup.json @@ -0,0 +1,128 @@ +{ + "parameters": { + "api-version": "2021-01-01", + "managementGroupId": "TestMG", + "scope": "providers/Microsoft.Management/managementGroups/TestMG", + "exportName": "TestExport", + "parameters": { + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "MonthToDate", + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "providers/Microsoft.Management/managementGroups/TestMG/providers/Microsoft.CostManagement/exports/TestExport", + "name": "TestExport", + "type": "Microsoft.CostManagement/exports", + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "MonthToDate", + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + }, + "200": { + "body": { + "id": "providers/Microsoft.Management/managementGroups/TestMG/providers/Microsoft.CostManagement/exports/TestExport", + "name": "TestExport", + "type": "Microsoft.CostManagement/exports", + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "MonthToDate", + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportCreateOrUpdateByResourceGroup.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportCreateOrUpdateByResourceGroup.json new file mode 100644 index 000000000000..d3ea17adcad9 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportCreateOrUpdateByResourceGroup.json @@ -0,0 +1,129 @@ +{ + "parameters": { + "api-version": "2021-01-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "MYDEVTESTRG", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG", + "exportName": "TestExport", + "parameters": { + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "MonthToDate", + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.CostManagement/exports/TestExport", + "name": "TestExport", + "type": "Microsoft.CostManagement/exports", + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "MonthToDate", + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + }, + "200": { + "body": { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.CostManagement/exports/TestExport", + "name": "TestExport", + "type": "Microsoft.CostManagement/exports", + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "MonthToDate", + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportCreateOrUpdateBySubscription.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportCreateOrUpdateBySubscription.json new file mode 100644 index 000000000000..c4363192c9f0 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportCreateOrUpdateBySubscription.json @@ -0,0 +1,128 @@ +{ + "parameters": { + "api-version": "2021-01-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "exportName": "TestExport", + "parameters": { + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "MonthToDate", + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.CostManagement/exports/TestExport", + "name": "TestExport", + "type": "Microsoft.CostManagement/exports", + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "MonthToDate", + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + }, + "200": { + "body": { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.CostManagement/exports/TestExport", + "name": "TestExport", + "type": "Microsoft.CostManagement/exports", + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "MonthToDate", + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportDeleteByBillingAccount.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportDeleteByBillingAccount.json new file mode 100644 index 000000000000..e13539240e1f --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportDeleteByBillingAccount.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "api-version": "2021-01-01", + "billingAccountId": "123456", + "scope": "providers/Microsoft.Billing/billingAccounts/123456", + "exportName": "TestExport" + }, + "responses": { + "200": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportDeleteByDepartment.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportDeleteByDepartment.json new file mode 100644 index 000000000000..f22ede1f4d6b --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportDeleteByDepartment.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2021-01-01", + "billingAccountId": "12", + "departmentId": "1234", + "scope": "providers/Microsoft.Billing/billingAccounts/12/departments/1234", + "exportName": "TestExport" + }, + "responses": { + "200": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportDeleteByEnrollmentAccount.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportDeleteByEnrollmentAccount.json new file mode 100644 index 000000000000..cefa2d6f61b7 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportDeleteByEnrollmentAccount.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2021-01-01", + "billingAccountId": "100", + "enrollmentAccountId": "456", + "scope": "providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456", + "exportName": "TestExport" + }, + "responses": { + "200": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportDeleteByManagementGroup.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportDeleteByManagementGroup.json new file mode 100644 index 000000000000..353dc57314e6 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportDeleteByManagementGroup.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "api-version": "2021-01-01", + "managementGroupId": "TestMG", + "scope": "providers/Microsoft.Management/managementGroups/TestMG", + "exportName": "TestExport" + }, + "responses": { + "200": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportDeleteByResourceGroup.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportDeleteByResourceGroup.json new file mode 100644 index 000000000000..3b6691d0ddfa --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportDeleteByResourceGroup.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2021-01-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "MYDEVTESTRG", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG", + "exportName": "TestExport" + }, + "responses": { + "200": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportDeleteBySubscription.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportDeleteBySubscription.json new file mode 100644 index 000000000000..844227aafcea --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportDeleteBySubscription.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "api-version": "2021-01-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "exportName": "TestExport" + }, + "responses": { + "200": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportGetByBillingAccount.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportGetByBillingAccount.json new file mode 100644 index 000000000000..ce3560a8d632 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportGetByBillingAccount.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2021-01-01", + "billingAccountId": "123456", + "scope": "providers/Microsoft.Billing/billingAccounts/123456", + "exportName": "TestExport" + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/{billingAccount-Id}/providers/Microsoft.CostManagement/exports/TestExport", + "name": "TestExport", + "type": "Microsoft.CostManagement/exports", + "properties": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "Custom", + "timePeriod": { + "from": "2020-05-01T00:00:00Z", + "to": "2020-05-31T00:00:00Z" + }, + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportGetByDepartment.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportGetByDepartment.json new file mode 100644 index 000000000000..f44a93155bae --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportGetByDepartment.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2021-01-01", + "billingAccountId": "12", + "departmentId": "1234", + "scope": "providers/Microsoft.Billing/billingAccounts/12/departments/1234", + "exportName": "TestExport" + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/12/departments/1234/providers/Microsoft.CostManagement/exports/TestExport", + "name": "TestExport", + "type": "Microsoft.CostManagement/exports", + "properties": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "Custom", + "timePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-06-30T00:00:00Z" + }, + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportGetByEnrollmentAccount.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportGetByEnrollmentAccount.json new file mode 100644 index 000000000000..11c2a9874e80 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportGetByEnrollmentAccount.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2021-01-01", + "billingAccountId": "100", + "enrollmentAccountId": "456", + "scope": "providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456", + "exportName": "TestExport" + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456/providers/Microsoft.CostManagement/exports/TestExport", + "name": "TestExport", + "type": "Microsoft.CostManagement/exports", + "properties": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "Custom", + "timePeriod": { + "from": "2019-09-01T00:00:00Z", + "to": "2019-10-31T00:00:00Z" + }, + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportGetByManagementGroup.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportGetByManagementGroup.json new file mode 100644 index 000000000000..03c60466ff32 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportGetByManagementGroup.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2021-01-01", + "managementGroupId": "TestMG", + "scope": "providers/Microsoft.Management/managementGroups/TestMG", + "exportName": "TestExport" + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Management/managementGroups/TestMG/providers/Microsoft.CostManagement/exports/TestExport", + "name": "TestExport", + "type": "Microsoft.CostManagement/exports", + "properties": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "Custom", + "timePeriod": { + "from": "2019-09-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + }, + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "UsageDate", + "MeterId", + "InstanceId", + "ResourceLocation", + "UsageQuantity" + ] + } + } + } + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportGetByResourceGroup.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportGetByResourceGroup.json new file mode 100644 index 000000000000..8ccd648ae3f6 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportGetByResourceGroup.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2021-01-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "MYDEVTESTRG", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG", + "exportName": "TestExport" + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.CostManagement/exports/TestExport", + "name": "TestExport", + "type": "Microsoft.CostManagement/exports", + "properties": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "Custom", + "timePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-06-30T00:00:00Z" + }, + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportGetBySubscription.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportGetBySubscription.json new file mode 100644 index 000000000000..3eb748852725 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportGetBySubscription.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2021-01-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "exportName": "TestExport" + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.CostManagement/exports/TestExport", + "name": "TestExport", + "type": "Microsoft.CostManagement/exports", + "properties": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "Custom", + "timePeriod": { + "from": "2019-06-01T00:00:00Z", + "to": "2019-07-31T00:00:00Z" + }, + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportRunByBillingAccount.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportRunByBillingAccount.json new file mode 100644 index 000000000000..e13539240e1f --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportRunByBillingAccount.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "api-version": "2021-01-01", + "billingAccountId": "123456", + "scope": "providers/Microsoft.Billing/billingAccounts/123456", + "exportName": "TestExport" + }, + "responses": { + "200": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportRunByDepartment.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportRunByDepartment.json new file mode 100644 index 000000000000..f22ede1f4d6b --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportRunByDepartment.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2021-01-01", + "billingAccountId": "12", + "departmentId": "1234", + "scope": "providers/Microsoft.Billing/billingAccounts/12/departments/1234", + "exportName": "TestExport" + }, + "responses": { + "200": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportRunByEnrollmentAccount.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportRunByEnrollmentAccount.json new file mode 100644 index 000000000000..cefa2d6f61b7 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportRunByEnrollmentAccount.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2021-01-01", + "billingAccountId": "100", + "enrollmentAccountId": "456", + "scope": "providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456", + "exportName": "TestExport" + }, + "responses": { + "200": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportRunByManagementGroup.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportRunByManagementGroup.json new file mode 100644 index 000000000000..353dc57314e6 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportRunByManagementGroup.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "api-version": "2021-01-01", + "managementGroupId": "TestMG", + "scope": "providers/Microsoft.Management/managementGroups/TestMG", + "exportName": "TestExport" + }, + "responses": { + "200": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportRunByResourceGroup.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportRunByResourceGroup.json new file mode 100644 index 000000000000..3b6691d0ddfa --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportRunByResourceGroup.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2021-01-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "MYDEVTESTRG", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG", + "exportName": "TestExport" + }, + "responses": { + "200": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportRunBySubscription.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportRunBySubscription.json new file mode 100644 index 000000000000..844227aafcea --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportRunBySubscription.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "api-version": "2021-01-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "exportName": "TestExport" + }, + "responses": { + "200": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportRunHistoryGetByBillingAccount.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportRunHistoryGetByBillingAccount.json new file mode 100644 index 000000000000..4eefcd7fb70e --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportRunHistoryGetByBillingAccount.json @@ -0,0 +1,100 @@ +{ + "parameters": { + "api-version": "2021-01-01", + "billingAccountId": "123456", + "scope": "providers/Microsoft.Billing/billingAccounts/123456", + "exportName": "TestExport" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Billing/billingAccounts/{billingAccount-id}/providers/Microsoft.CostManagement/exports/JohnDoeSchedule/Run/1e25d58a-a3b0-4916-9542-6e04a89bc100", + "properties": { + "executionType": "OnDemand", + "status": "Completed", + "submittedBy": "john.doe@gmail.com", + "submittedTime": "2018-08-03T07:52:15.6016681Z", + "processingStartTime": "2018-08-03T07:52:16.9123797Z", + "processingEndTime": "2018-08-03T07:52:28.0373318Z", + "fileName": "ScheduledTestsForJohnDoe/JohnDoeSchedule/20180729-20180804/JohnDoeSchedule_1e25d58a-a3b0-4916-9542-6e04a89bc100.csv", + "runSettings": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ScheduledTestsForJohnDoe" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "Custom", + "timePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + }, + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + }, + { + "id": "providers/Microsoft.Billing/billingAccounts/{billingAccount-id}/providers/Microsoft.CostManagement/exports/JohnDoeSchedule/Run/11ac6811-dca3-46ad-b326-4704cf0c58ef", + "properties": { + "executionType": "Scheduled", + "status": "Completed", + "submittedBy": "System", + "submittedTime": "2018-08-03T09:03:58.5710244Z", + "processingStartTime": "2018-08-03T09:03:58.5710244Z", + "processingEndTime": "2018-08-03T09:04:19.7223808Z", + "fileName": "ScheduledTestsForJohnDoe/JohnDoeSchedule/20180729-20180804/JohnDoeSchedule_11ac6811-dca3-46ad-b326-4704cf0c58ef.csv", + "runSettings": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ScheduledTestsForJohnDoe" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "Custom", + "timePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + }, + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportRunHistoryGetByDepartment.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportRunHistoryGetByDepartment.json new file mode 100644 index 000000000000..04ede5c8deca --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportRunHistoryGetByDepartment.json @@ -0,0 +1,101 @@ +{ + "parameters": { + "api-version": "2021-01-01", + "billingAccountId": "12", + "departmentId": "1234", + "scope": "providers/Microsoft.Billing/billingAccounts/12/departments/1234", + "exportName": "TestExport" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Billing/billingAccounts/12/departments/1234/providers/Microsoft.CostManagement/exports/JohnDoeSchedule/Run/1e25d58a-a3b0-4916-9542-6e04a89bc100", + "properties": { + "executionType": "OnDemand", + "status": "Completed", + "submittedBy": "john.doe@gmail.com", + "submittedTime": "2018-08-03T07:52:15.6016681Z", + "processingStartTime": "2018-08-03T07:52:16.9123797Z", + "processingEndTime": "2018-08-03T07:52:28.0373318Z", + "fileName": "ScheduledTestsForJohnDoe/JohnDoeSchedule/20180729-20180804/JohnDoeSchedule_1e25d58a-a3b0-4916-9542-6e04a89bc100.csv", + "runSettings": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ScheduledTestsForJohnDoe" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "Custom", + "timePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + }, + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + }, + { + "id": "providers/Microsoft.Billing/billingAccounts/12/departments/1234/providers/Microsoft.CostManagement/exports/JohnDoeSchedule/Run/11ac6811-dca3-46ad-b326-4704cf0c58ef", + "properties": { + "executionType": "Scheduled", + "status": "Completed", + "submittedBy": "System", + "submittedTime": "2018-08-03T09:03:58.5710244Z", + "processingStartTime": "2018-08-03T09:03:58.5710244Z", + "processingEndTime": "2018-08-03T09:04:19.7223808Z", + "fileName": "ScheduledTestsForJohnDoe/JohnDoeSchedule/20180729-20180804/JohnDoeSchedule_11ac6811-dca3-46ad-b326-4704cf0c58ef.csv", + "runSettings": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ScheduledTestsForJohnDoe" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "Custom", + "timePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + }, + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportRunHistoryGetByEnrollmentAccount.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportRunHistoryGetByEnrollmentAccount.json new file mode 100644 index 000000000000..3cc2d9bdd01e --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportRunHistoryGetByEnrollmentAccount.json @@ -0,0 +1,101 @@ +{ + "parameters": { + "api-version": "2019-01-01", + "billingAccountId": "100", + "enrollmentAccountId": "456", + "scope": "providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456", + "exportName": "TestExport" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456/providers/Microsoft.CostManagement/exports/JohnDoeSchedule/Run/1e25d58a-a3b0-4916-9542-6e04a89bc100", + "properties": { + "executionType": "OnDemand", + "status": "Completed", + "submittedBy": "john.doe@gmail.com", + "submittedTime": "2018-08-03T07:52:15.6016681Z", + "processingStartTime": "2018-08-03T07:52:16.9123797Z", + "processingEndTime": "2018-08-03T07:52:28.0373318Z", + "fileName": "ScheduledTestsForJohnDoe/JohnDoeSchedule/20180729-20180804/JohnDoeSchedule_1e25d58a-a3b0-4916-9542-6e04a89bc100.csv", + "runSettings": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ScheduledTestsForJohnDoe" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "Custom", + "timePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + }, + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + }, + { + "id": "providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456/providers/Microsoft.CostManagement/exports/JohnDoeSchedule/Run/11ac6811-dca3-46ad-b326-4704cf0c58ef", + "properties": { + "executionType": "Scheduled", + "status": "Completed", + "submittedBy": "System", + "submittedTime": "2018-08-03T09:03:58.5710244Z", + "processingStartTime": "2018-08-03T09:03:58.5710244Z", + "processingEndTime": "2018-08-03T09:04:19.7223808Z", + "fileName": "ScheduledTestsForJohnDoe/JohnDoeSchedule/20180729-20180804/JohnDoeSchedule_11ac6811-dca3-46ad-b326-4704cf0c58ef.csv", + "runSettings": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ScheduledTestsForJohnDoe" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "Custom", + "timePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + }, + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportRunHistoryGetByManagementGroup.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportRunHistoryGetByManagementGroup.json new file mode 100644 index 000000000000..1f48f4f819ba --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportRunHistoryGetByManagementGroup.json @@ -0,0 +1,100 @@ +{ + "parameters": { + "api-version": "2021-01-01", + "managementGroupId": "TestMG", + "scope": "providers/Microsoft.Management/managementGroups/TestMG", + "exportName": "TestExport" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Management/managementGroups/TestMG/providers/Microsoft.CostManagement/exports/TestExport/Run/1e25d58a-a3b0-4916-9542-6e04a89bc100", + "properties": { + "executionType": "OnDemand", + "status": "Completed", + "submittedBy": "john.doe@gmail.com", + "submittedTime": "2018-08-03T07:52:15.6016681Z", + "processingStartTime": "2018-08-03T07:52:16.9123797Z", + "processingEndTime": "2018-08-03T07:52:28.0373318Z", + "fileName": "ScheduledForTestExport/TestExportSchedule/20180729-20180804/TestExportSchedule_1e25d58a-a3b0-4916-9542-6e04a89bc100.csv", + "runSettings": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ScheduledTestsForJohnDoe" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "Custom", + "timePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + }, + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + }, + { + "id": "providers/Microsoft.Management/managementGroups/TestMG/providers/Microsoft.CostManagement/exports/TestExport/Run/11ac6811-dca3-46ad-b326-4704cf0c58ef", + "properties": { + "executionType": "Scheduled", + "status": "Completed", + "submittedBy": "System", + "submittedTime": "2018-08-03T09:03:58.5710244Z", + "processingStartTime": "2018-08-03T09:03:58.5710244Z", + "processingEndTime": "2018-08-03T09:04:19.7223808Z", + "fileName": "ScheduledForTestExport/TestExportSchedule/20180729-20180804/TestExportSchedule_11ac6811-dca3-46ad-b326-4704cf0c58ef.csv", + "runSettings": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ScheduledTestsForJohnDoe" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "Custom", + "timePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + }, + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportRunHistoryGetByResourceGroup.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportRunHistoryGetByResourceGroup.json new file mode 100644 index 000000000000..3bd1bf4cde31 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportRunHistoryGetByResourceGroup.json @@ -0,0 +1,101 @@ +{ + "parameters": { + "api-version": "2021-01-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "MYDEVTESTRG", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG", + "exportName": "TestExport" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.CostManagement/exports/JohnDoeSchedule/Run/1e25d58a-a3b0-4916-9542-6e04a89bc100", + "properties": { + "executionType": "OnDemand", + "status": "Completed", + "submittedBy": "john.doe@gmail.com", + "submittedTime": "2018-08-03T07:52:15.6016681Z", + "processingStartTime": "2018-08-03T07:52:16.9123797Z", + "processingEndTime": "2018-08-03T07:52:28.0373318Z", + "fileName": "ScheduledTestsForJohnDoe/JohnDoeSchedule/20180729-20180804/JohnDoeSchedule_1e25d58a-a3b0-4916-9542-6e04a89bc100.csv", + "runSettings": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ScheduledTestsForJohnDoe" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "Custom", + "timePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + }, + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + }, + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.CostManagement/exports/JohnDoeSchedule/Run/11ac6811-dca3-46ad-b326-4704cf0c58ef", + "properties": { + "executionType": "Scheduled", + "status": "Completed", + "submittedBy": "System", + "submittedTime": "2018-08-03T09:03:58.5710244Z", + "processingStartTime": "2018-08-03T09:03:58.5710244Z", + "processingEndTime": "2018-08-03T09:04:19.7223808Z", + "fileName": "ScheduledTestsForJohnDoe/JohnDoeSchedule/20180729-20180804/JohnDoeSchedule_11ac6811-dca3-46ad-b326-4704cf0c58ef.csv", + "runSettings": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ScheduledTestsForJohnDoe" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "Custom", + "timePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + }, + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportRunHistoryGetBySubscription.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportRunHistoryGetBySubscription.json new file mode 100644 index 000000000000..ab4177df0638 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportRunHistoryGetBySubscription.json @@ -0,0 +1,100 @@ +{ + "parameters": { + "api-version": "2021-01-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "exportName": "TestExport" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.CostManagement/exports/JohnDoeSchedule/Run/1e25d58a-a3b0-4916-9542-6e04a89bc100", + "properties": { + "executionType": "OnDemand", + "status": "Completed", + "submittedBy": "john.doe@gmail.com", + "submittedTime": "2018-08-03T07:52:15.6016681Z", + "processingStartTime": "2018-08-03T07:52:16.9123797Z", + "processingEndTime": "2018-08-03T07:52:28.0373318Z", + "fileName": "ScheduledTestsForJohnDoe/JohnDoeSchedule/20180729-20180804/JohnDoeSchedule_1e25d58a-a3b0-4916-9542-6e04a89bc100.csv", + "runSettings": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ScheduledTestsForJohnDoe" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "Custom", + "timePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + }, + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + }, + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.CostManagement/exports/JohnDoeSchedule/Run/11ac6811-dca3-46ad-b326-4704cf0c58ef", + "properties": { + "executionType": "Scheduled", + "status": "Completed", + "submittedBy": "System", + "submittedTime": "2018-08-03T09:03:58.5710244Z", + "processingStartTime": "2018-08-03T09:03:58.5710244Z", + "processingEndTime": "2018-08-03T09:04:19.7223808Z", + "fileName": "ScheduledTestsForJohnDoe/JohnDoeSchedule/20180729-20180804/JohnDoeSchedule_11ac6811-dca3-46ad-b326-4704cf0c58ef.csv", + "runSettings": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ScheduledTestsForJohnDoe" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "Custom", + "timePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + }, + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportsGetByBillingAccount.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportsGetByBillingAccount.json new file mode 100644 index 000000000000..ff52df45d8f5 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportsGetByBillingAccount.json @@ -0,0 +1,89 @@ +{ + "parameters": { + "api-version": "2021-01-01", + "billingAccountId": "123456", + "scope": "providers/Microsoft.Billing/billingAccounts/123456" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Billing/billingAccounts/123456/providers/Microsoft.CostManagement/exports/TestExport1", + "name": "TestExport1", + "type": "Microsoft.CostManagement/exports", + "properties": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "Custom", + "timePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + }, + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + }, + { + "id": "providers/Microsoft.Billing/billingAccounts/123456/providers/Microsoft.CostManagement/exports/TestExport2", + "name": "TestExport2", + "type": "Microsoft.CostManagement/exports", + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "WeekToDate", + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportsGetByDepartment.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportsGetByDepartment.json new file mode 100644 index 000000000000..bea2773556b9 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportsGetByDepartment.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "api-version": "2021-01-01", + "billingAccountId": "12", + "departmentId": "1234", + "scope": "providers/Microsoft.Billing/billingAccounts/12/departments/123" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Billing/billingAccounts/12/departments/1234/providers/Microsoft.CostManagement/exports/TestExport1", + "name": "TestExport1", + "type": "Microsoft.CostManagement/exports", + "properties": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "Custom", + "timePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + }, + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + }, + { + "id": "providers/Microsoft.Billing/billingAccounts/12/departments/1234/providers/Microsoft.CostManagement/exports/TestExport2", + "name": "TestExport2", + "type": "Microsoft.CostManagement/exports", + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "WeekToDate", + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportsGetByEnrollmentAccount.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportsGetByEnrollmentAccount.json new file mode 100644 index 000000000000..f0343237fd2a --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportsGetByEnrollmentAccount.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "api-version": "2021-01-01", + "billingAccountId": "100", + "enrollmentAccountId": "456", + "scope": "providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456/providers/Microsoft.CostManagement/exports/TestExport1", + "name": "TestExport1", + "type": "Microsoft.CostManagement/exports", + "properties": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "Custom", + "timePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + }, + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + }, + { + "id": "providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456/providers/Microsoft.CostManagement/exports/TestExport2", + "name": "TestExport2", + "type": "Microsoft.CostManagement/exports", + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "WeekToDate", + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportsGetByManagementGroup.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportsGetByManagementGroup.json new file mode 100644 index 000000000000..90fdb0dad090 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportsGetByManagementGroup.json @@ -0,0 +1,89 @@ +{ + "parameters": { + "api-version": "2021-01-01", + "managementGroupId": "TestMG", + "scope": "providers/Microsoft.Management/managementGroups/TestMG" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Management/managementGroups/TestMG/providers/Microsoft.CostManagement/exports/TestExport1", + "name": "TestExport1", + "type": "Microsoft.CostManagement/exports", + "properties": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "Custom", + "timePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + }, + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + }, + { + "id": "providers/Microsoft.Management/managementGroups/TestMG/providers/Microsoft.CostManagement/exports/TestExport2", + "name": "TestExport2", + "type": "Microsoft.CostManagement/exports", + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "WeekToDate", + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportsGetByResourceGroup.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportsGetByResourceGroup.json new file mode 100644 index 000000000000..139924630b02 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportsGetByResourceGroup.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "api-version": "2021-01-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "MYDEVTESTRG", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.CostManagement/exports/TestExport1", + "name": "TestExport1", + "type": "Microsoft.CostManagement/exports", + "properties": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "Custom", + "timePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + }, + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + }, + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.CostManagement/exports/TestExport2", + "name": "TestExport2", + "type": "Microsoft.CostManagement/exports", + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "WeekToDate", + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportsGetBySubscription.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportsGetBySubscription.json new file mode 100644 index 000000000000..3ae8512be0b2 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/ExportsGetBySubscription.json @@ -0,0 +1,89 @@ +{ + "parameters": { + "api-version": "2021-01-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.CostManagement/exports/TestExport1", + "name": "TestExport1", + "type": "Microsoft.CostManagement/exports", + "properties": { + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "Custom", + "timePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + }, + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + }, + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.CostManagement/exports/TestExport2", + "name": "TestExport2", + "type": "Microsoft.CostManagement/exports", + "properties": { + "schedule": { + "status": "Active", + "recurrence": "Weekly", + "recurrencePeriod": { + "from": "2020-06-01T00:00:00Z", + "to": "2020-10-31T00:00:00Z" + } + }, + "format": "Csv", + "deliveryInfo": { + "destination": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182", + "container": "exports", + "rootFolderPath": "ad-hoc" + } + }, + "definition": { + "type": "ActualCost", + "timeframe": "WeekToDate", + "dataSet": { + "granularity": "Daily", + "configuration": { + "columns": [ + "Date", + "MeterId", + "ResourceId", + "ResourceLocation", + "Quantity" + ] + } + } + } + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/GenerateDetailedCostReportByBillingAccountLegacyAndBillingPeriod.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/GenerateDetailedCostReportByBillingAccountLegacyAndBillingPeriod.json new file mode 100644 index 000000000000..790574544ff7 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/GenerateDetailedCostReportByBillingAccountLegacyAndBillingPeriod.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2021-01-01", + "scope": "providers/Microsoft.Billing/billingAccounts/12345", + "parameters": { + "metric": "ActualCost", + "billingPeriod": "202008" + } + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.CostManagement/operationResults/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "type": "Microsoft.Consumption/operationResult", + "properties": { + "downloadUrl": "https://ccmreportstorageeastus.blob.core.windows.net/armreports/20201207/00000000-0000-0000-0000-000000000000?sv=2020-05-31&sr=b&sig=abcd", + "validTill": "2020-12-08T05:55:59.4394737Z" + } + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/12345/providers/Microsoft.CostManagement/operationResults/ad0d632f-1186-41fe-89f9-ae29e198d223?api-version=2021-01-01", + "Azure-Consumption-AsyncOperation": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/12345/providers/Microsoft.CostManagement/operationStatus/ad0d632f-1186-41fe-89f9-ae29e198d223?api-version=2021-01-01", + "Retry-After": "60" + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/GenerateDetailedCostReportByBillingProfileAndInvoiceId.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/GenerateDetailedCostReportByBillingProfileAndInvoiceId.json new file mode 100644 index 000000000000..45067b0d493a --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/GenerateDetailedCostReportByBillingProfileAndInvoiceId.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2021-01-01", + "scope": "providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579", + "parameters": { + "metric": "ActualCost", + "invoiceId": "M1234567" + } + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.CostManagement/operationResults/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "type": "Microsoft.Consumption/operationResult", + "properties": { + "downloadUrl": "https://ccmreportstorageeastus.blob.core.windows.net/armreports/20201207/00000000-0000-0000-0000-000000000000?sv=2020-05-31&sr=b&sig=abcd", + "validTill": "2020-12-08T05:55:59.4394737Z" + } + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579/providers/Microsoft.CostManagement/operationResults/ad0d632f-1186-41fe-89f9-ae29e198d223?api-version=2021-01-01", + "Azure-Consumption-AsyncOperation": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579/providers/Microsoft.CostManagement/operationStatus/ad0d632f-1186-41fe-89f9-ae29e198d223?api-version=2021-01-01", + "Retry-After": "60" + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/GenerateDetailedCostReportByBillingProfileAndInvoiceIdAndCustomerId.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/GenerateDetailedCostReportByBillingProfileAndInvoiceIdAndCustomerId.json new file mode 100644 index 000000000000..313c9bca7d0c --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/GenerateDetailedCostReportByBillingProfileAndInvoiceIdAndCustomerId.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2021-01-01", + "scope": "providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579", + "parameters": { + "metric": "ActualCost", + "invoiceId": "M1234567", + "customerId": "456789" + } + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.CostManagement/operationResults/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "type": "Microsoft.Consumption/operationResult", + "properties": { + "downloadUrl": "https://ccmreportstorageeastus.blob.core.windows.net/armreports/20201207/00000000-0000-0000-0000-000000000000?sv=2020-05-31&sr=b&sig=abcd", + "validTill": "2020-12-08T05:55:59.4394737Z" + } + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579/providers/Microsoft.CostManagement/operationResults/ad0d632f-1186-41fe-89f9-ae29e198d223?api-version=2021-01-01", + "Azure-Consumption-AsyncOperation": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579/providers/Microsoft.CostManagement/operationStatus/ad0d632f-1186-41fe-89f9-ae29e198d223?api-version=2021-01-01", + "Retry-After": "60" + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/GenerateDetailedCostReportByCustomerAndTimePeriod.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/GenerateDetailedCostReportByCustomerAndTimePeriod.json new file mode 100644 index 000000000000..c35789b2625b --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/GenerateDetailedCostReportByCustomerAndTimePeriod.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2021-01-01", + "scope": "providers/Microsoft.Billing/billingAccounts/12345:6789/customers/13579", + "parameters": { + "metric": "ActualCost", + "timePeriod": { + "start": "2020-03-01", + "end": "2020-03-15" + } + } + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.CostManagement/operationResults/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "type": "Microsoft.Consumption/operationResult", + "properties": { + "downloadUrl": "https://ccmreportstorageeastus.blob.core.windows.net/armreports/20201207/00000000-0000-0000-0000-000000000000?sv=2020-05-31&sr=b&sig=abcd", + "validTill": "2020-12-08T05:55:59.4394737Z" + } + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/12345:6789/customers/13579/providers/Microsoft.CostManagement/operationResults/ad0d632f-1186-41fe-89f9-ae29e198d223?api-version=2021-01-01", + "Azure-Consumption-AsyncOperation": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/12345:6789/customers/13579/providers/Microsoft.CostManagement/operationStatus/ad0d632f-1186-41fe-89f9-ae29e198d223?api-version=2021-01-01", + "Retry-After": "60" + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/GenerateDetailedCostReportBySubscriptionAndTimePeriod.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/GenerateDetailedCostReportBySubscriptionAndTimePeriod.json new file mode 100644 index 000000000000..053df0c5b18f --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/GenerateDetailedCostReportBySubscriptionAndTimePeriod.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2021-01-01", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "parameters": { + "metric": "ActualCost", + "timePeriod": { + "start": "2020-03-01", + "end": "2020-03-15" + } + } + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.CostManagement/operationResults/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "type": "Microsoft.Consumption/operationResult", + "properties": { + "downloadUrl": "https://ccmreportstorageeastus.blob.core.windows.net/armreports/20201207/00000000-0000-0000-0000-000000000000?sv=2020-05-31&sr=b&sig=abcd", + "validTill": "2020-12-08T05:55:59.4394737Z" + } + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.CostManagement/operationResults/00000000-0000-0000-0000-000000000000?api-version=2021-01-01", + "Azure-Consumption-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.CostManagement/operationStatus/00000000-0000-0000-0000-000000000000?api-version=2021-01-01", + "Retry-After": "60" + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/GenerateDetailedCostReportOperationResultsBySubscriptionScope.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/GenerateDetailedCostReportOperationResultsBySubscriptionScope.json new file mode 100644 index 000000000000..31c1736017e5 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/GenerateDetailedCostReportOperationResultsBySubscriptionScope.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2021-01-01", + "operationId": "00000000-0000-0000-0000-000000000000", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.CostManagement/operationResults/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "type": "Microsoft.Consumption/operationResult", + "properties": { + "downloadUrl": "https://ccmreportstorageeastus.blob.core.windows.net/armreports/20201207/00000000-0000-0000-0000-000000000000?sv=2020-05-31&sr=b&sig=abcd", + "validTill": "2020-12-08T05:55:59.4394737Z" + } + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/12345/providers/Microsoft.CostManagement/operationResults/ad0d632f-1186-41fe-89f9-ae29e198d223?api-version=2021-01-01", + "Azure-Consumption-AsyncOperation": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/12345/providers/Microsoft.CostManagement/operationStatus/ad0d632f-1186-41fe-89f9-ae29e198d223?api-version=2021-01-01", + "Retry-After": "60" + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/GenerateDetailedCostReportOperationStatusBySubscriptionScope.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/GenerateDetailedCostReportOperationStatusBySubscriptionScope.json new file mode 100644 index 000000000000..c1ec64560b1a --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2021-01-01/examples/GenerateDetailedCostReportOperationStatusBySubscriptionScope.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2021-01-01", + "operationId": "00000000-0000-0000-0000-000000000000", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.CostManagement/operationStatus/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "status": "Completed", + "type": "Microsoft.Consumption/operationStatus", + "properties": { + "downloadUrl": "https://ccmreportstorageeastus.blob.core.windows.net/armreports/20201207/00000000-0000-0000-0000-000000000000?sv=2020-05-31&sr=b&sig=abcd", + "validTill": "2020-12-08T05:55:59.4394737Z" + }, + "error": { + "code": "0", + "message": null + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/readme.azureresourceschema.md b/specification/cost-management/resource-manager/readme.azureresourceschema.md index a1771bc87499..ca57f5675564 100644 --- a/specification/cost-management/resource-manager/readme.azureresourceschema.md +++ b/specification/cost-management/resource-manager/readme.azureresourceschema.md @@ -23,6 +23,19 @@ batch: Please also specify `--azureresourceschema-folder=`. +### Tag: schema-costmanagement-2021-01-01 and azureresourceschema + +``` yaml $(tag) == 'schema-costmanagement-2021-01-01' && $(azureresourceschema) +output-folder: $(azureresourceschema-folder)/schemas + +# all the input files in this apiVersion +input-file: + - Microsoft.CostManagement/stable/2021-01-01/costmanagement.exports.json + - Microsoft.CostManagement/stable/2021-01-01/costmanagement.generatedetailedcostreport.json + - Microsoft.CostManagement/stable/2020-06-01/costmanagement.json + +``` + ### Tag: schema-costmanagement-2020-12-01-preview and azureresourceschema ``` yaml $(tag) == 'schema-costmanagement-2020-12-01-preview' && $(azureresourceschema) @@ -30,6 +43,7 @@ output-folder: $(azureresourceschema-folder)/schemas # all the input files in this apiVersion input-file: + - Microsoft.CostManagement/preview/2020-12-01-preview/costmanagement.exports.json - Microsoft.CostManagement/preview/2020-12-01-preview/costmanagement.generatedetailedcostreport.json ``` @@ -41,8 +55,8 @@ output-folder: $(azureresourceschema-folder)/schemas # all the input files in this apiVersion input-file: - - Microsoft.CostManagement/stable/2020-06-01/costmanagement.exports.json - Microsoft.CostManagement/stable/2020-06-01/costmanagement.json + - Microsoft.CostManagement/stable/2020-06-01/costmanagement.exports.json ``` diff --git a/specification/cost-management/resource-manager/readme.go.md b/specification/cost-management/resource-manager/readme.go.md index 4259fa52ed37..82aa00c6f6f8 100644 --- a/specification/cost-management/resource-manager/readme.go.md +++ b/specification/cost-management/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: costmanagement clear-output-folder: true ``` @@ -17,6 +17,8 @@ batch: - tag: package-2019-01 - tag: package-preview-2019-03 - tag: package-2019-10 + - tag: package-2020-06 + - tag: package-2021-01 ``` ### Tag: package-2018-05 and go @@ -74,3 +76,11 @@ Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2021-01' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2021-01-01/$(namespace) +``` \ No newline at end of file diff --git a/specification/cost-management/resource-manager/readme.md b/specification/cost-management/resource-manager/readme.md index 751b6b3d648a..3ee8c75f9c3f 100644 --- a/specification/cost-management/resource-manager/readme.md +++ b/specification/cost-management/resource-manager/readme.md @@ -26,19 +26,30 @@ These are the global settings for the Cost Management API. ``` yaml openapi-type: arm -tag: package-2020-06 +tag: package-2019-11 azure-validator: false ``` --- + +### Tag: package-2021-01 + +These settings apply only when `--tag=package-2021-01` is specified on the command line. + +```yaml $(tag) == 'package-2021-01' +input-file: + - Microsoft.CostManagement/stable/2021-01-01/costmanagement.exports.json + - Microsoft.CostManagement/stable/2021-01-01/costmanagement.generatedetailedcostreport.json + - Microsoft.CostManagement/stable/2020-06-01/costmanagement.json +``` ### Tag: package-preview-2020-12 These settings apply only when `--tag=package-preview-2020-12` is specified on the command line. -```yaml $(tag) == 'package-preview-2020-12' +``` yaml $(tag) == 'package-preview-2020-12' input-file: - - Microsoft.CostManagement/stable/2020-06-01/costmanagement.exports.json + - Microsoft.CostManagement/preview/2020-12-01-preview/costmanagement.exports.json - Microsoft.CostManagement/preview/2020-12-01-preview/costmanagement.generatedetailedcostreport.json - Microsoft.CostManagement/stable/2020-06-01/costmanagement.json ``` @@ -47,7 +58,7 @@ input-file: These settings apply only when `--tag=package-preview-2020-03` is specified on the command line. -```yaml $(tag) == 'package-preview-2020-03' +``` yaml $(tag) == 'package-preview-2020-03' input-file: - Microsoft.CostManagement/stable/2020-06-01/costmanagement.json - Microsoft.CostManagement/preview/2020-03-01-preview/costallocation.json @@ -57,13 +68,12 @@ input-file: These settings apply only when `--tag=package-2020-06` is specified on the command line. -```yaml $(tag) == 'package-2020-06' +``` yaml $(tag) == 'package-2020-06' input-file: - Microsoft.CostManagement/stable/2020-06-01/costmanagement.json - Microsoft.CostManagement/stable/2020-06-01/costmanagement.exports.json ``` - ### Tag: package-2019-11 These settings apply only when `--tag=package-2019-11` is specified on the command line. @@ -226,8 +236,6 @@ swagger-to-sdk: - bundle install && rake arm:regen_all_profiles['azure_mgmt_costmanagement'] - repo: azure-cli-extensions - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js cost-management/resource-manager ``` ## C# @@ -351,7 +359,4 @@ regenerate-manager: true generate-interface: true ``` -## AzureResourceSchema - -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/cost-management/resource-manager/readme.typescript.md b/specification/cost-management/resource-manager/readme.typescript.md new file mode 100644 index 000000000000..191f220e76bf --- /dev/null +++ b/specification/cost-management/resource-manager/readme.typescript.md @@ -0,0 +1,13 @@ +## TypeScript + +These settings apply only when `--typescript` is specified on the command line. +Please also specify `--typescript-sdks-folder=`. + +``` yaml $(typescript) +typescript: + azure-arm: true + package-name: "@azure/arm-costmanagement" + output-folder: "$(typescript-sdks-folder)/sdk/cost-management/arm-costmanagement" + clear-output-folder: true + generate-metadata: true +``` diff --git a/specification/cpim/resource-manager/Microsoft.AzureActiveDirectory/preview/2019-01-01-preview/cpimTenant.json b/specification/cpim/resource-manager/Microsoft.AzureActiveDirectory/preview/2019-01-01-preview/cpimTenant.json index 02f04c14f828..d6df4dc9c24d 100644 --- a/specification/cpim/resource-manager/Microsoft.AzureActiveDirectory/preview/2019-01-01-preview/cpimTenant.json +++ b/specification/cpim/resource-manager/Microsoft.AzureActiveDirectory/preview/2019-01-01-preview/cpimTenant.json @@ -790,7 +790,7 @@ }, "location": { "type": "string", - "description": "The location in which the resource is hosted and data resides. Refer to [this documentation](https://aka.ms/B2CDataResidency) to see valid data residency locations. Please choose one of 'United States', 'Europe', and 'Asia Pacific'.", + "description": "The location in which the resource is hosted and data resides. Can be one of 'United States', 'Europe', 'Asia Pacific', or 'Australia' (preview). Refer to [this documentation](https://aka.ms/B2CDataResidency) for more information.", "x-ms-mutability": [ "create", "read" @@ -830,7 +830,7 @@ "properties": { "location": { "type": "string", - "description": "The location in which the resource is hosted and data resides. Refer to [this documentation](https://aka.ms/B2CDataResidency) to see valid data residency locations. Please choose one of 'United States', 'Europe', and 'Asia Pacific'." + "description": "The location in which the resource is hosted and data resides. Can be one of 'United States', 'Europe', 'Asia Pacific', or 'Australia' (preview). Refer to [this documentation](https://aka.ms/B2CDataResidency) for more information." }, "properties": { "type": "object", diff --git a/specification/cpim/resource-manager/Microsoft.AzureActiveDirectory/preview/2019-01-01-preview/examples/OperationsList.json b/specification/cpim/resource-manager/Microsoft.AzureActiveDirectory/preview/2019-01-01-preview/examples/OperationsList.json index bbd8bc4d1a1e..7c111a950876 100644 --- a/specification/cpim/resource-manager/Microsoft.AzureActiveDirectory/preview/2019-01-01-preview/examples/OperationsList.json +++ b/specification/cpim/resource-manager/Microsoft.AzureActiveDirectory/preview/2019-01-01-preview/examples/OperationsList.json @@ -8,67 +8,31 @@ "200": { "body": { "value": [ - { - "name": "Microsoft.AzureActiveDirectory/register/action", - "display": { - "provider": "Microsoft.AzureActiveDirectory", - "resource": "Microsoft.AzureActiveDirectory Resource Provider", - "operation": "Registers the Microsoft.AzureActiveDirectory Resource Provider", - "description": "Registers the Microsoft.AzureActiveDirectory Resource Provider" - } - }, - { - "name": "Microsoft.AzureActiveDirectory/guestUsages/read", - "display": { - "provider": "Microsoft.AzureActiveDirectory", - "resource": "GuestUsagesResource", - "operation": "read", - "description": "Read call for Guest Usages Resource" - } - }, - { - "name": "Microsoft.AzureActiveDirectory/guestUsages/write", - "display": { - "provider": "Microsoft.AzureActiveDirectory", - "resource": "GuestUsagesResource", - "operation": "write", - "description": "Create or Update call for Guest Usages Resource" - } - }, - { - "name": "Microsoft.AzureActiveDirectory/guestUsages/delete", - "display": { - "provider": "Microsoft.AzureActiveDirectory", - "resource": "GuestUsagesResource", - "operation": "delete", - "description": "Delete call for Guest Usages Resource" - } - }, { "name": "Microsoft.AzureActiveDirectory/b2cDirectories/read", "display": { "provider": "Microsoft.AzureActiveDirectory", - "resource": "GuestUsagesResource", + "resource": "B2cDirectoriesResource", "operation": "read", - "description": "Read call for Guest Usages Resource" + "description": "Read call for Azure AD B2C tenant resource" } }, { "name": "Microsoft.AzureActiveDirectory/b2cDirectories/write", "display": { "provider": "Microsoft.AzureActiveDirectory", - "resource": "GuestUsagesResource", + "resource": "B2cDirectoriesResource", "operation": "write", - "description": "Create or Update call for Guest Usages Resource" + "description": "Create or Update call for Azure AD B2C tenant resource" } }, { "name": "Microsoft.AzureActiveDirectory/b2cDirectories/delete", "display": { "provider": "Microsoft.AzureActiveDirectory", - "resource": "GuestUsagesResource", + "resource": "B2cDirectoriesResource", "operation": "delete", - "description": "Delete call for Guest Usages Resource" + "description": "Delete call for Azure AD B2C tenant resource" } }, { diff --git a/specification/cpim/resource-manager/Microsoft.AzureActiveDirectory/preview/2020-05-01-preview/examples/OperationsList.json b/specification/cpim/resource-manager/Microsoft.AzureActiveDirectory/preview/2020-05-01-preview/examples/OperationsList.json index 6c14cad4c445..b8c848223600 100644 --- a/specification/cpim/resource-manager/Microsoft.AzureActiveDirectory/preview/2020-05-01-preview/examples/OperationsList.json +++ b/specification/cpim/resource-manager/Microsoft.AzureActiveDirectory/preview/2020-05-01-preview/examples/OperationsList.json @@ -43,42 +43,6 @@ "operation": "delete", "description": "Delete call for Guest Usages Resource" } - }, - { - "name": "Microsoft.AzureActiveDirectory/b2cDirectories/read", - "display": { - "provider": "Microsoft.AzureActiveDirectory", - "resource": "GuestUsagesResource", - "operation": "read", - "description": "Read call for Guest Usages Resource" - } - }, - { - "name": "Microsoft.AzureActiveDirectory/b2cDirectories/write", - "display": { - "provider": "Microsoft.AzureActiveDirectory", - "resource": "GuestUsagesResource", - "operation": "write", - "description": "Create or Update call for Guest Usages Resource" - } - }, - { - "name": "Microsoft.AzureActiveDirectory/b2cDirectories/delete", - "display": { - "provider": "Microsoft.AzureActiveDirectory", - "resource": "GuestUsagesResource", - "operation": "delete", - "description": "Delete call for Guest Usages Resource" - } - }, - { - "name": "Microsoft.AzureActiveDirectory/checkNameAvailability", - "display": { - "provider": "Microsoft.AzureActiveDirectory", - "resource": "Check Name Availability", - "operation": "Get Check Name Availability", - "description": "Check if resource name is available." - } } ] } diff --git a/specification/cpim/resource-manager/readme.azureresourceschema.md b/specification/cpim/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index ca73aeee45de..000000000000 --- a/specification/cpim/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,36 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-azureactivedirectory-2020-05-01-preview - - tag: schema-azureactivedirectory-2019-01-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-azureactivedirectory-2020-05-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-azureactivedirectory-2020-05-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.AzureActiveDirectory/preview/2020-05-01-preview/cpim.json - -``` - -### Tag: schema-azureactivedirectory-2019-01-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-azureactivedirectory-2019-01-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.AzureActiveDirectory/preview/2019-01-01-preview/cpimTenant.json - -``` diff --git a/specification/cpim/resource-manager/readme.go.md b/specification/cpim/resource-manager/readme.go.md index 602be4bd4dc5..eb6935b213df 100644 --- a/specification/cpim/resource-manager/readme.go.md +++ b/specification/cpim/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ```yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: azureadb2c clear-output-folder: true ``` diff --git a/specification/cpim/resource-manager/readme.md b/specification/cpim/resource-manager/readme.md index 1390572c54e5..19c3fefa391b 100644 --- a/specification/cpim/resource-manager/readme.md +++ b/specification/cpim/resource-manager/readme.md @@ -28,7 +28,7 @@ These are the global settings for the azureadb2c APIs. title: CPIMConfigurationClient description: CPIM Configuration Client openapi-type: arm -tag: package-2020-05-01-preview +tag: package-2019-01-01-preview ``` ### Tag: package-2019-01-01-preview @@ -60,7 +60,6 @@ This is not used by Autorest itself. ```yaml $(swagger-to-sdk) swagger-to-sdk: - - repo: azure-sdk-for-python - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-go ``` diff --git a/specification/cpim/resource-manager/readme.python.md b/specification/cpim/resource-manager/readme.python.md index f71cd3681047..16ca755ad519 100644 --- a/specification/cpim/resource-manager/readme.python.md +++ b/specification/cpim/resource-manager/readme.python.md @@ -1,25 +1,12 @@ ## Python -These settings apply only when `--python` is specified on the command line. - -```yaml !$(track2) -python: - azure-arm: true - license-header: MICROSOFT_MIT_NO_VERSION - payload-flattening-threshold: 2 - package-name: azure-mgmt-azureadb2c - clear-output-folder: true - no-namespace-folders: true - python-base-folder: azureadb2c/azure-mgmt-azureadb2c/azure/mgmt/azureadb2c - python-base-namespace: azure.mgmt.azureadb2c -``` - These settings apply only when `--track2` is specified on the command line. ```yaml $(track2) azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION package-name: azure-mgmt-azureadb2c +package-version: 1.0.0b2 no-namespace-folders: true python-base-folder: azureadb2c/azure-mgmt-azureadb2c/azure/mgmt/azureadb2c ``` @@ -28,12 +15,6 @@ python-base-folder: azureadb2c/azure-mgmt-azureadb2c/azure/mgmt/azureadb2c Generate all API versions currently shipped for this package -```yaml $(multiapi) && !$(track2) -batch: - - tag: package-2020-05-01-preview - - tag: package-2019-01-01-preview -``` - ```yaml $(multiapi) && $(track2) clear-output-folder: true batch: @@ -55,9 +36,6 @@ These settings apply only when `--tag=package-2020-05-01-preview --python` is sp ```yaml $(tag) =='package-2020-05-01-preview' namespace: $(python-base-namespace).v2020_05_01_preview output-folder: $(python-sdks-folder)/$(python-base-folder)/v2020_05_01_preview -python: - namespace: $(python-base-namespace).v2020_05_01_preview - output-folder: $(python-sdks-folder)/$(python-base-folder)/v2020_05_01_preview ``` ### Tag: package-2019-01-01-preview and python @@ -67,7 +45,4 @@ These settings apply only when `--tag=package-2019-01-01-preview --python` is sp ```yaml $(tag) =='package-2019-01-01-preview' namespace: $(python-base-namespace).v2019_01_01_preview output-folder: $(python-sdks-folder)/$(python-base-folder)/v2019_01_01_preview -python: - namespace: $(python-base-namespace).v2019_01_01_preview - output-folder: $(python-sdks-folder)/$(python-base-folder)/v2019_01_01_preview ``` diff --git a/specification/cpim/resource-manager/reeadme.azureresourceschema.md b/specification/cpim/resource-manager/reeadme.azureresourceschema.md deleted file mode 100644 index ca73aeee45de..000000000000 --- a/specification/cpim/resource-manager/reeadme.azureresourceschema.md +++ /dev/null @@ -1,36 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-azureactivedirectory-2020-05-01-preview - - tag: schema-azureactivedirectory-2019-01-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-azureactivedirectory-2020-05-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-azureactivedirectory-2020-05-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.AzureActiveDirectory/preview/2020-05-01-preview/cpim.json - -``` - -### Tag: schema-azureactivedirectory-2019-01-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-azureactivedirectory-2019-01-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.AzureActiveDirectory/preview/2019-01-01-preview/cpimTenant.json - -``` diff --git a/specification/customer-insights/resource-manager/readme.azureresourceschema.md b/specification/customer-insights/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 856e894fb719..000000000000 --- a/specification/customer-insights/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,36 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-customerinsights-2017-04-26 - - tag: schema-customerinsights-2017-01-01 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-customerinsights-2017-04-26 and azureresourceschema - -``` yaml $(tag) == 'schema-customerinsights-2017-04-26' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.CustomerInsights/stable/2017-04-26/customer-insights.json - -``` - -### Tag: schema-customerinsights-2017-01-01 and azureresourceschema - -``` yaml $(tag) == 'schema-customerinsights-2017-01-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.CustomerInsights/stable/2017-01-01/customer-insights.json - -``` diff --git a/specification/customer-insights/resource-manager/readme.go.md b/specification/customer-insights/resource-manager/readme.go.md index 9b13a619e871..21d47ef7d35d 100644 --- a/specification/customer-insights/resource-manager/readme.go.md +++ b/specification/customer-insights/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: customerinsights clear-output-folder: true ``` diff --git a/specification/customer-insights/resource-manager/readme.md b/specification/customer-insights/resource-manager/readme.md index c75b5444e49c..f759525a5e9e 100644 --- a/specification/customer-insights/resource-manager/readme.md +++ b/specification/customer-insights/resource-manager/readme.md @@ -69,8 +69,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_customer_insights'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js customer-insights/resource-manager ``` @@ -143,7 +141,5 @@ generate-interface: true -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/customerlockbox/resource-manager/readme.azureresourceschema.md b/specification/customerlockbox/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index c4bfaba99a75..000000000000 --- a/specification/customerlockbox/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,24 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-customerlockbox-2018-02-28-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-customerlockbox-2018-02-28-preview and azureresourceschema - -``` yaml $(tag) == 'schema-customerlockbox-2018-02-28-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.CustomerLockbox/preview/2018-02-28-preview/customerlockbox.json - -``` diff --git a/specification/customerlockbox/resource-manager/readme.go.md b/specification/customerlockbox/resource-manager/readme.go.md index e97fcd863608..1753a772330e 100644 --- a/specification/customerlockbox/resource-manager/readme.go.md +++ b/specification/customerlockbox/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ```yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION clear-output-folder: true ``` diff --git a/specification/customerlockbox/resource-manager/readme.md b/specification/customerlockbox/resource-manager/readme.md index 0b8ea5704f95..1e9afd454671 100644 --- a/specification/customerlockbox/resource-manager/readme.md +++ b/specification/customerlockbox/resource-manager/readme.md @@ -57,8 +57,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_customerlockbox'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js customerlockbox/resource-manager ``` ## Go @@ -81,7 +79,5 @@ See configuration in [readme.typescript.md](./readme.typescript.md) See configuration in [readme.csharp.md](./readme.csharp.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/customproviders/resource-manager/readme.azureresourceschema.md b/specification/customproviders/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index cfe5cfcbb11e..000000000000 --- a/specification/customproviders/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,24 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-customproviders-2018-09-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-customproviders-2018-09-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-customproviders-2018-09-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.CustomProviders/preview/2018-09-01-preview/customproviders.json - -``` diff --git a/specification/customproviders/resource-manager/readme.go.md b/specification/customproviders/resource-manager/readme.go.md index 910d6bf0d4fd..aa40107a9abc 100644 --- a/specification/customproviders/resource-manager/readme.go.md +++ b/specification/customproviders/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ```yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: customproviders clear-output-folder: true ``` diff --git a/specification/customproviders/resource-manager/readme.md b/specification/customproviders/resource-manager/readme.md index a93db7236a03..84b2982cf20a 100644 --- a/specification/customproviders/resource-manager/readme.md +++ b/specification/customproviders/resource-manager/readme.md @@ -52,6 +52,7 @@ swagger-to-sdk: - repo: azure-powershell - repo: azure-sdk-for-net - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-java - repo: azure-sdk-for-go - repo: azure-sdk-for-trenton @@ -62,8 +63,6 @@ swagger-to-sdk: - bundle install && rake arm:regen_all_profiles['azure_mgmt_customproviders'] - repo: azure-cli-extensions - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js customproviders/resource-manager ``` ## Go @@ -94,9 +93,7 @@ See configuration in [readme.nodejs.md](./readme.nodejs.md) See configuration in [readme.terraform.md](./readme.terraform.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) ## cli diff --git a/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/databox.json b/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/databox.json new file mode 100644 index 000000000000..1c199656f160 --- /dev/null +++ b/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/databox.json @@ -0,0 +1,5004 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-03-01", + "title": "DataBoxManagementClient" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/providers/Microsoft.DataBox/operations": { + "get": { + "tags": [ + "Operations" + ], + "description": "This method gets all the operations.", + "operationId": "Operations_List", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The supported operations list.", + "schema": { + "$ref": "#/definitions/OperationList" + } + }, + "default": { + "description": "Error response describing reason for operation failure.", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "OperationsGet": { + "$ref": "./examples/OperationsGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DataBox/jobs": { + "get": { + "tags": [ + "Jobs" + ], + "description": "Lists all the jobs available under the subscription.", + "operationId": "Jobs_List", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$skipToken", + "in": "query", + "description": "$skipToken is supported on Get list of jobs, which provides the next page in the list of jobs.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "List of jobs available under the subscription.", + "schema": { + "$ref": "#/definitions/JobResourceList" + } + }, + "default": { + "description": "Error response describing reason for operation failure.", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "JobsList": { + "$ref": "./examples/JobsList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBox/jobs/{jobName}/mitigate": { + "post": { + "tags": [ + "Jobs" + ], + "description": "Request to mitigate for a given job", + "operationId": "Mitigate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/jobNameParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "mitigateJobRequest", + "in": "body", + "description": "Mitigation Request", + "required": true, + "schema": { + "$ref": "#/definitions/MitigateJobRequest" + } + } + ], + "responses": { + "204": { + "description": "Success" + }, + "default": { + "description": "Error response describing reason for operation failure.", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-examples": { + "Mitigate": { + "$ref": "./examples/JobMitigate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBox/locations/{location}/availableSkus": { + "post": { + "tags": [ + "Service" + ], + "description": "This method provides the list of available skus for the given subscription, resource group and location.", + "operationId": "Service_ListAvailableSkusByResourceGroup", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/locationParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "availableSkuRequest", + "in": "body", + "description": "Filters for showing the available skus.", + "required": true, + "schema": { + "$ref": "#/definitions/AvailableSkuRequest" + } + } + ], + "responses": { + "200": { + "description": "The list of available skus under Resource group.", + "schema": { + "$ref": "#/definitions/AvailableSkusResult" + } + }, + "default": { + "description": "Error response describing reason for operation failure.", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "AvailableSkusPost": { + "$ref": "./examples/AvailableSkusPost.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DataBox/locations/{location}/validateAddress": { + "post": { + "tags": [ + "Service" + ], + "description": "[DEPRECATED NOTICE: This operation will soon be removed]. This method validates the customer shipping address and provide alternate addresses if any.", + "operationId": "Service_ValidateAddress", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/locationParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "validateAddress", + "in": "body", + "description": "Shipping address of the customer.", + "required": true, + "schema": { + "$ref": "#/definitions/ValidateAddress" + } + } + ], + "responses": { + "200": { + "description": "The valid and alternate addresses.", + "schema": { + "$ref": "#/definitions/AddressValidationOutput" + } + }, + "default": { + "description": "Error response describing reason for operation failure.", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "deprecated": true, + "x-ms-examples": { + "ValidateAddressPost": { + "$ref": "./examples/ValidateAddressPost.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBox/locations/{location}/validateInputs": { + "post": { + "tags": [ + "Service" + ], + "description": "This method does all necessary pre-job creation validation under resource group.", + "operationId": "Service_ValidateInputsByResourceGroup", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/locationParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "validationRequest", + "in": "body", + "description": "Inputs of the customer.", + "required": true, + "schema": { + "$ref": "#/definitions/ValidationRequest" + } + } + ], + "responses": { + "200": { + "description": "The validation status and responses of each validating parameter.", + "schema": { + "$ref": "#/definitions/ValidationResponse" + } + }, + "default": { + "description": "Error response describing reason for operation failure.", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-examples": { + "ValidateInputsByResourceGroup": { + "$ref": "./examples/ValidateInputsByResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DataBox/locations/{location}/validateInputs": { + "post": { + "tags": [ + "Service" + ], + "description": "This method does all necessary pre-job creation validation under subscription.", + "operationId": "Service_ValidateInputs", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/locationParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "validationRequest", + "in": "body", + "description": "Inputs of the customer.", + "required": true, + "schema": { + "$ref": "#/definitions/ValidationRequest" + } + } + ], + "responses": { + "200": { + "description": "The validation status and responses of each validating parameter.", + "schema": { + "$ref": "#/definitions/ValidationResponse" + } + }, + "default": { + "description": "Error response describing reason for operation failure.", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-examples": { + "ValidateInputs": { + "$ref": "./examples/ValidateInputs.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBox/jobs": { + "get": { + "tags": [ + "Jobs" + ], + "description": "Lists all the jobs available under the given resource group.", + "operationId": "Jobs_ListByResourceGroup", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$skipToken", + "in": "query", + "description": "$skipToken is supported on Get list of jobs, which provides the next page in the list of jobs.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "List of jobs by resource group.", + "schema": { + "$ref": "#/definitions/JobResourceList" + } + }, + "default": { + "description": "Error response describing reason for operation failure.", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "JobsListByResourceGroup": { + "$ref": "./examples/JobsListByResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBox/jobs/{jobName}": { + "get": { + "tags": [ + "Jobs" + ], + "description": "Gets information about the specified job.", + "operationId": "Jobs_Get", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/jobNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$expand", + "in": "query", + "description": "$expand is supported on details parameter for job, which provides details on the job stages.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Job object.", + "schema": { + "$ref": "#/definitions/JobResource" + } + }, + "default": { + "description": "Error response describing reason for operation failure.", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-examples": { + "JobsGet": { + "$ref": "./examples/JobsGet.json" + }, + "JobsGetCmk": { + "$ref": "./examples/JobsGetCmk.json" + }, + "JobsGetExport": { + "$ref": "./examples/JobsGetExport.json" + }, + "JobsGetCopyStuck": { + "$ref": "./examples/JobsGetCopyStuck.json" + } + } + }, + "put": { + "tags": [ + "Jobs" + ], + "description": "Creates a new job with the specified parameters. Existing job cannot be updated with this API and should instead be updated with the Update job API.", + "operationId": "Jobs_Create", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/jobNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "jobResource", + "in": "body", + "description": "Job details from request body.", + "required": true, + "schema": { + "$ref": "#/definitions/JobResource" + } + } + ], + "responses": { + "200": { + "description": "Job object.", + "schema": { + "$ref": "#/definitions/JobResource" + } + }, + "202": { + "description": "Accepted request for create Job." + }, + "default": { + "description": "Error response describing reason for operation failure.", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "JobsCreate": { + "$ref": "./examples/JobsCreate.json" + }, + "JobsCreateDevicePassword": { + "$ref": "./examples/JobsCreateDevicePassword.json" + }, + "JobsCreateExport": { + "$ref": "./examples/JobsCreateExport.json" + }, + "JobsCreateDoubleEncryption": { + "$ref": "./examples/JobsCreateDoubleEncryption.json" + }, + "JobsCreateWithUserAssignedIdentity": { + "$ref": "./examples/JobsCreateWithUserAssignedIdentity.json" + } + } + }, + "delete": { + "tags": [ + "Jobs" + ], + "description": "Deletes a job.", + "operationId": "Jobs_Delete", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/jobNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Just for swagger we are adding this status code." + }, + "202": { + "description": "Accepted request for delete Job." + }, + "204": { + "description": "Job deleted." + }, + "default": { + "description": "Error response describing reason for operation failure.", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "JobsDelete": { + "$ref": "./examples/JobsDelete.json" + } + } + }, + "patch": { + "tags": [ + "Jobs" + ], + "description": "Updates the properties of an existing job.", + "operationId": "Jobs_Update", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/jobNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "If-Match", + "in": "header", + "description": "Defines the If-Match condition. The patch will be performed only if the ETag of the job on the server matches this value.", + "type": "string" + }, + { + "name": "jobResourceUpdateParameter", + "in": "body", + "description": "Job update parameters from request body.", + "required": true, + "schema": { + "$ref": "#/definitions/JobResourceUpdateParameter" + } + } + ], + "responses": { + "200": { + "description": "Job object.", + "schema": { + "$ref": "#/definitions/JobResource" + } + }, + "202": { + "description": "Accepted request for job updated." + }, + "default": { + "description": "Error response describing reason for operation failure.", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "JobsPatch": { + "$ref": "./examples/JobsPatch.json" + }, + "JobsPatchCmk": { + "$ref": "./examples/JobsPatchCmk.json" + }, + "JobsPatchSystemAssignedToUserAssigned": { + "$ref": "./examples/JobsPatchSystemAssignedToUserAssigned.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBox/jobs/{jobName}/bookShipmentPickUp": { + "post": { + "tags": [ + "Jobs" + ], + "description": "Book shipment pick up.", + "operationId": "Jobs_BookShipmentPickUp", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/jobNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "shipmentPickUpRequest", + "in": "body", + "description": "Details of shipment pick up request.", + "required": true, + "schema": { + "$ref": "#/definitions/ShipmentPickUpRequest" + } + } + ], + "responses": { + "200": { + "description": "Booked shipment pick up successfully.", + "schema": { + "$ref": "#/definitions/ShipmentPickUpResponse" + } + }, + "default": { + "description": "Error response describing reason for operation failure.", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-examples": { + "BookShipmentPickupPost": { + "$ref": "./examples/BookShipmentPickupPost.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBox/jobs/{jobName}/cancel": { + "post": { + "tags": [ + "Jobs" + ], + "description": "CancelJob.", + "operationId": "Jobs_Cancel", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/jobNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "cancellationReason", + "in": "body", + "description": "Reason for cancellation.", + "required": true, + "schema": { + "$ref": "#/definitions/CancellationReason" + } + } + ], + "responses": { + "204": { + "description": "Job cancelled." + }, + "default": { + "description": "Error response describing reason for operation failure.", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-examples": { + "JobsCancelPost": { + "$ref": "./examples/JobsCancelPost.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBox/jobs/{jobName}/listCredentials": { + "post": { + "tags": [ + "Jobs" + ], + "description": "This method gets the unencrypted secrets related to the job.", + "operationId": "Jobs_ListCredentials", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/jobNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "List of unencrypted credentials of the job.", + "schema": { + "$ref": "#/definitions/UnencryptedCredentialsList" + } + }, + "default": { + "description": "Error response describing reason for operation failure.", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "JobsListCredentials": { + "$ref": "./examples/JobsListCredentials.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DataBox/locations/{location}/regionConfiguration": { + "post": { + "tags": [ + "Service" + ], + "description": "This API provides configuration details specific to given region/location at Subscription level.", + "operationId": "Service_RegionConfiguration", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/locationParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "regionConfigurationRequest", + "in": "body", + "description": "Request body to get the configuration for the region.", + "required": true, + "schema": { + "$ref": "#/definitions/RegionConfigurationRequest" + } + } + ], + "responses": { + "200": { + "description": "Region configuration response.", + "schema": { + "$ref": "#/definitions/RegionConfigurationResponse" + } + }, + "default": { + "description": "Error response describing reason for operation failure.", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-examples": { + "RegionConfiguration": { + "$ref": "./examples/RegionConfiguration.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBox/locations/{location}/regionConfiguration": { + "post": { + "tags": [ + "Service" + ], + "description": "This API provides configuration details specific to given region/location at Resource group level.", + "operationId": "Service_RegionConfigurationByResourceGroup", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/locationParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "regionConfigurationRequest", + "in": "body", + "description": "Request body to get the configuration for the region at resource group level.", + "required": true, + "schema": { + "$ref": "#/definitions/RegionConfigurationRequest" + } + } + ], + "responses": { + "200": { + "description": "Region configuration response.", + "schema": { + "$ref": "#/definitions/RegionConfigurationResponse" + } + }, + "default": { + "description": "Error response describing reason for operation failure.", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-examples": { + "RegionConfigurationByResourceGroup": { + "$ref": "./examples/RegionConfigurationByResourceGroup.json" + } + } + } + } + }, + "definitions": { + "AccountCredentialDetails": { + "description": "Credential details of the account.", + "type": "object", + "properties": { + "accountName": { + "description": "Name of the account.", + "type": "string", + "readOnly": true + }, + "dataAccountType": { + "description": "Type of the account.", + "enum": [ + "StorageAccount", + "ManagedDisk" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "DataAccountType", + "modelAsExtensible": true, + "values": [ + { + "value": "StorageAccount", + "description": "Storage Accounts ." + }, + { + "value": "ManagedDisk", + "description": "Azure Managed disk storage." + } + ] + } + }, + "accountConnectionString": { + "description": "Connection string of the account endpoint to use the account as a storage endpoint on the device.", + "type": "string", + "readOnly": true + }, + "shareCredentialDetails": { + "description": "Per share level unencrypted access credentials.", + "type": "array", + "items": { + "$ref": "#/definitions/ShareCredentialDetails" + }, + "readOnly": true + } + } + }, + "AdditionalErrorInfo": { + "type": "object", + "description": "Additional error info.", + "properties": { + "type": { + "description": "Additional error type.", + "type": "string" + }, + "info": { + "description": "Additional error info.", + "type": "object" + } + } + }, + "AddressValidationOutput": { + "description": "Output of the address validation api.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/AddressValidationProperties", + "description": "The address validation properties.", + "readOnly": true, + "x-ms-client-flatten": true + } + } + }, + "AddressValidationProperties": { + "description": "The address validation output.", + "required": [ + "validationType" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ValidationInputResponse" + } + ], + "properties": { + "validationStatus": { + "description": "The address validation status.", + "enum": [ + "Valid", + "Invalid", + "Ambiguous" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "AddressValidationStatus", + "modelAsExtensible": true, + "values": [ + { + "value": "Valid", + "description": "Address provided is valid." + }, + { + "value": "Invalid", + "description": "Address provided is invalid or not supported." + }, + { + "value": "Ambiguous", + "description": "Address provided is ambiguous, please choose one of the alternate addresses returned." + } + ] + } + }, + "alternateAddresses": { + "description": "List of alternate addresses.", + "type": "array", + "items": { + "$ref": "#/definitions/ShippingAddress" + }, + "readOnly": true + } + }, + "x-ms-discriminator-value": "ValidateAddress" + }, + "ApiError": { + "required": [ + "error" + ], + "type": "object", + "properties": { + "error": { + "$ref": "#/definitions/ErrorDetail" + } + } + }, + "ApplianceNetworkConfiguration": { + "description": "The Network Adapter configuration of a DataBox.", + "type": "object", + "properties": { + "name": { + "description": "Name of the network.", + "type": "string", + "readOnly": true + }, + "macAddress": { + "description": "Mac Address.", + "type": "string", + "readOnly": true + } + } + }, + "ArmBaseObject": { + "description": "Base class for all objects under resource.", + "type": "object", + "properties": { + "name": { + "description": "Name of the object.", + "type": "string", + "readOnly": true + }, + "id": { + "description": "Id of the object.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Type of the object.", + "type": "string", + "readOnly": true + } + } + }, + "AvailableSkuRequest": { + "description": "The filters for showing the available skus.", + "required": [ + "transferType", + "country", + "location" + ], + "type": "object", + "properties": { + "transferType": { + "description": "Type of the transfer.", + "enum": [ + "ImportToAzure", + "ExportFromAzure" + ], + "type": "string", + "x-ms-enum": { + "name": "TransferType", + "modelAsExtensible": true, + "values": [ + { + "value": "ImportToAzure", + "description": "Import data to azure." + }, + { + "value": "ExportFromAzure", + "description": "Export data from azure." + } + ] + } + }, + "country": { + "description": "ISO country code. Country for hardware shipment. For codes check: https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2#Officially_assigned_code_elements", + "type": "string" + }, + "location": { + "description": "Location for data transfer. For locations check: https://management.azure.com/subscriptions/SUBSCRIPTIONID/locations?api-version=2018-01-01", + "type": "string" + }, + "skuNames": { + "description": "Sku Names to filter for available skus", + "type": "array", + "items": { + "enum": [ + "DataBox", + "DataBoxDisk", + "DataBoxHeavy" + ], + "type": "string", + "x-ms-enum": { + "name": "SkuName", + "modelAsExtensible": true, + "values": [ + { + "value": "DataBox", + "description": "Data Box." + }, + { + "value": "DataBoxDisk", + "description": "Data Box Disk." + }, + { + "value": "DataBoxHeavy", + "description": "Data Box Heavy." + } + ] + } + } + } + } + }, + "AvailableSkusResult": { + "description": "The available skus operation response.", + "type": "object", + "properties": { + "value": { + "description": "List of available skus.", + "type": "array", + "items": { + "$ref": "#/definitions/SkuInformation" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link for the next set of skus.", + "type": "string" + } + } + }, + "AzureFileFilterDetails": { + "description": "Filter details to transfer Azure files", + "type": "object", + "properties": { + "filePrefixList": { + "description": "Prefix list of the Azure files to be transferred.", + "type": "array", + "items": { + "type": "string" + } + }, + "filePathList": { + "description": "List of full path of the files to be transferred.", + "type": "array", + "items": { + "type": "string" + } + }, + "fileShareList": { + "description": "List of file shares to be transferred.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "BlobFilterDetails": { + "description": "Filter details to transfer Azure Blobs", + "type": "object", + "properties": { + "blobPrefixList": { + "description": "Prefix list of the Azure blobs to be transferred.", + "type": "array", + "items": { + "type": "string" + } + }, + "blobPathList": { + "description": "List of full path of the blobs to be transferred.", + "type": "array", + "items": { + "type": "string" + } + }, + "containerList": { + "description": "List of blob containers to be transferred.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "CancellationReason": { + "description": "Reason for cancellation.", + "required": [ + "reason" + ], + "type": "object", + "properties": { + "reason": { + "description": "Reason for cancellation.", + "type": "string" + } + } + }, + "CloudError": { + "description": "Cloud error.", + "type": "object", + "properties": { + "code": { + "description": "Cloud error code.", + "type": "string" + }, + "message": { + "description": "Cloud error message.", + "type": "string" + }, + "target": { + "description": "Cloud error target.", + "type": "string" + }, + "details": { + "description": "Cloud error details.", + "type": "array", + "items": { + "$ref": "#/definitions/CloudError" + }, + "readOnly": true + }, + "additionalInfo": { + "description": "Cloud error additional info.", + "type": "array", + "items": { + "$ref": "#/definitions/AdditionalErrorInfo" + }, + "readOnly": true + } + }, + "x-ms-external": true + }, + "ContactDetails": { + "description": "Contact Details.", + "required": [ + "contactName", + "phone", + "emailList" + ], + "type": "object", + "properties": { + "contactName": { + "description": "Contact name of the person.", + "type": "string" + }, + "phone": { + "description": "Phone number of the contact person.", + "type": "string" + }, + "phoneExtension": { + "description": "Phone extension number of the contact person.", + "type": "string" + }, + "mobile": { + "description": "Mobile number of the contact person.", + "type": "string" + }, + "emailList": { + "description": "List of Email-ids to be notified about job progress.", + "type": "array", + "items": { + "type": "string" + } + }, + "notificationPreference": { + "description": "Notification preference for a job stage.", + "type": "array", + "items": { + "$ref": "#/definitions/NotificationPreference" + } + } + } + }, + "CopyLogDetails": { + "description": "Details for log generated during copy.", + "required": [ + "copyLogDetailsType" + ], + "type": "object", + "properties": { + "copyLogDetailsType": { + "description": "Indicates the type of job details.", + "enum": [ + "DataBox", + "DataBoxDisk", + "DataBoxHeavy" + ], + "type": "string", + "x-ms-enum": { + "name": "ClassDiscriminator", + "modelAsExtensible": false, + "values": [ + { + "value": "DataBox", + "description": "Data Box orders." + }, + { + "value": "DataBoxDisk", + "description": "Data Box Disk orders." + }, + { + "value": "DataBoxHeavy", + "description": "Data Box Heavy orders." + } + ] + } + } + }, + "discriminator": "copyLogDetailsType" + }, + "CopyProgress": { + "description": "Copy progress.", + "type": "object", + "properties": { + "storageAccountName": { + "description": "Name of the storage account. This will be empty for data account types other than storage account.", + "type": "string", + "readOnly": true + }, + "transferType": { + "description": "Transfer type of data", + "enum": [ + "ImportToAzure", + "ExportFromAzure" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "TransferType", + "modelAsExtensible": true, + "values": [ + { + "value": "ImportToAzure", + "description": "Import data to azure." + }, + { + "value": "ExportFromAzure", + "description": "Export data from azure." + } + ] + } + }, + "dataAccountType": { + "description": "Data Account Type.", + "enum": [ + "StorageAccount", + "ManagedDisk" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "DataAccountType", + "modelAsExtensible": true, + "values": [ + { + "value": "StorageAccount", + "description": "Storage Accounts ." + }, + { + "value": "ManagedDisk", + "description": "Azure Managed disk storage." + } + ] + } + }, + "accountId": { + "description": "Id of the account where the data needs to be uploaded.", + "type": "string", + "readOnly": true + }, + "bytesProcessed": { + "format": "int64", + "description": "To indicate bytes transferred.", + "type": "integer", + "readOnly": true + }, + "totalBytesToProcess": { + "format": "int64", + "description": "Total amount of data to be processed by the job.", + "type": "integer", + "readOnly": true + }, + "filesProcessed": { + "format": "int64", + "description": "Number of files processed", + "type": "integer", + "readOnly": true + }, + "totalFilesToProcess": { + "format": "int64", + "description": "Total files to process", + "type": "integer", + "readOnly": true + }, + "invalidFilesProcessed": { + "format": "int64", + "description": "Number of files not adhering to azure naming conventions which were processed by automatic renaming", + "type": "integer", + "readOnly": true + }, + "invalidFileBytesUploaded": { + "format": "int64", + "description": "Total amount of data not adhering to azure naming conventions which were processed by automatic renaming", + "type": "integer", + "readOnly": true + }, + "renamedContainerCount": { + "format": "int64", + "description": "Number of folders not adhering to azure naming conventions which were processed by automatic renaming", + "type": "integer", + "readOnly": true + }, + "filesErroredOut": { + "format": "int64", + "description": "Number of files which could not be copied", + "type": "integer", + "readOnly": true + }, + "directoriesErroredOut": { + "format": "int64", + "description": "To indicate directories errored out in the job.", + "type": "integer", + "readOnly": true + }, + "invalidDirectoriesProcessed": { + "format": "int64", + "description": "To indicate directories renamed", + "type": "integer", + "readOnly": true + }, + "isEnumerationInProgress": { + "description": "To indicate if enumeration of data is in progress. \r\nUntil this is true, the TotalBytesToProcess may not be valid.", + "type": "boolean", + "readOnly": true + } + } + }, + "CreateJobValidations": { + "description": "It does all pre-job creation validations.", + "required": [ + "validationCategory", + "individualRequestDetails" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ValidationRequest" + } + ], + "properties": {}, + "x-ms-discriminator-value": "JobCreationValidation" + }, + "CreateOrderLimitForSubscriptionValidationRequest": { + "description": "Request to validate create order limit for current subscription.", + "required": [ + "deviceType", + "validationType" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ValidationInputRequest" + } + ], + "properties": { + "deviceType": { + "description": "Device type to be used for the job.", + "enum": [ + "DataBox", + "DataBoxDisk", + "DataBoxHeavy" + ], + "type": "string", + "x-ms-enum": { + "name": "SkuName", + "modelAsExtensible": true, + "values": [ + { + "value": "DataBox", + "description": "Data Box." + }, + { + "value": "DataBoxDisk", + "description": "Data Box Disk." + }, + { + "value": "DataBoxHeavy", + "description": "Data Box Heavy." + } + ] + } + } + }, + "x-ms-discriminator-value": "ValidateCreateOrderLimit" + }, + "CreateOrderLimitForSubscriptionValidationResponseProperties": { + "description": "Properties of create order limit for subscription validation response.", + "required": [ + "validationType" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ValidationInputResponse" + } + ], + "properties": { + "status": { + "description": "Create order limit validation status.", + "enum": [ + "Valid", + "Invalid", + "Skipped" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ValidationStatus", + "modelAsExtensible": true, + "values": [ + { + "value": "Valid", + "description": "Validation is successful" + }, + { + "value": "Invalid", + "description": "Validation is not successful" + }, + { + "value": "Skipped", + "description": "Validation is skipped" + } + ] + } + } + }, + "x-ms-discriminator-value": "ValidateCreateOrderLimit" + }, + "DataAccountDetails": { + "description": "Account details of the data to be transferred", + "required": [ + "dataAccountType" + ], + "type": "object", + "properties": { + "dataAccountType": { + "description": "Account Type of the data to be transferred.", + "enum": [ + "StorageAccount", + "ManagedDisk" + ], + "type": "string", + "x-ms-enum": { + "name": "DataAccountType", + "modelAsExtensible": true, + "values": [ + { + "value": "StorageAccount", + "description": "Storage Accounts ." + }, + { + "value": "ManagedDisk", + "description": "Azure Managed disk storage." + } + ] + }, + "default": "StorageAccount" + }, + "sharePassword": { + "description": "Password for all the shares to be created on the device. Should not be passed for TransferType:ExportFromAzure jobs. If this is not passed, the service will generate password itself. This will not be returned in Get Call. Password Requirements : Password must be minimum of 12 and maximum of 64 characters. Password must have at least one uppercase alphabet, one number and one special character. Password cannot have the following characters : IilLoO0 Password can have only alphabets, numbers and these characters : @#\\-$%^!+=;:_()]+", + "type": "string", + "x-ms-secret": true, + "x-ms-mutability": [ + "create" + ] + } + }, + "discriminator": "dataAccountType" + }, + "DataBoxAccountCopyLogDetails": { + "description": "Copy log details for a storage account of a DataBox job", + "required": [ + "copyLogDetailsType" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopyLogDetails" + } + ], + "properties": { + "accountName": { + "description": "Account name.", + "type": "string", + "readOnly": true + }, + "copyLogLink": { + "description": "Link for copy logs.", + "type": "string", + "readOnly": true + }, + "copyVerboseLogLink": { + "description": "Link for copy verbose logs. This will be set only when LogCollectionLevel is set to Verbose.", + "type": "string", + "readOnly": true + } + }, + "x-ms-discriminator-value": "DataBox" + }, + "DataBoxDiskCopyLogDetails": { + "description": "Copy Log Details for a disk", + "required": [ + "copyLogDetailsType" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopyLogDetails" + } + ], + "properties": { + "diskSerialNumber": { + "description": "Disk Serial Number.", + "type": "string", + "readOnly": true + }, + "errorLogLink": { + "description": "Link for copy error logs.", + "type": "string", + "readOnly": true + }, + "verboseLogLink": { + "description": "Link for copy verbose logs.", + "type": "string", + "readOnly": true + } + }, + "x-ms-discriminator-value": "DataBoxDisk" + }, + "DataBoxDiskCopyProgress": { + "description": "DataBox Disk Copy Progress", + "type": "object", + "properties": { + "serialNumber": { + "description": "The serial number of the disk", + "type": "string", + "readOnly": true + }, + "bytesCopied": { + "format": "int64", + "description": "Bytes copied during the copy of disk.", + "type": "integer", + "readOnly": true + }, + "percentComplete": { + "format": "int32", + "description": "Indicates the percentage completed for the copy of the disk.", + "type": "integer", + "readOnly": true + }, + "status": { + "description": "The Status of the copy", + "enum": [ + "NotStarted", + "InProgress", + "Completed", + "CompletedWithErrors", + "Failed", + "NotReturned", + "HardwareError", + "DeviceFormatted", + "DeviceMetadataModified", + "StorageAccountNotAccessible", + "UnsupportedData" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "CopyStatus", + "modelAsExtensible": true, + "values": [ + { + "value": "NotStarted", + "description": "Data copy hasn't started yet." + }, + { + "value": "InProgress", + "description": "Data copy is in progress." + }, + { + "value": "Completed", + "description": "Data copy completed." + }, + { + "value": "CompletedWithErrors", + "description": "Data copy completed with errors." + }, + { + "value": "Failed", + "description": "Data copy failed. No data was copied." + }, + { + "value": "NotReturned", + "description": "No copy triggered as device was not returned." + }, + { + "value": "HardwareError", + "description": "The Device has hit hardware issues." + }, + { + "value": "DeviceFormatted", + "description": "Data copy failed. The Device was formatted by user." + }, + { + "value": "DeviceMetadataModified", + "description": "Data copy failed. Device metadata was modified by user." + }, + { + "value": "StorageAccountNotAccessible", + "description": "Data copy failed. Storage Account was not accessible during copy." + }, + { + "value": "UnsupportedData", + "description": "Data copy failed. The Device data content is not supported." + } + ] + } + } + } + }, + "DataBoxDiskJobDetails": { + "description": "DataBox Disk Job Details.", + "required": [ + "contactDetails", + "jobDetailsType" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/JobDetails" + } + ], + "properties": { + "preferredDisks": { + "description": "User preference on what size disks are needed for the job. The map is from the disk size in TB to the count. Eg. {2,5} means 5 disks of 2 TB size. Key is string but will be checked against an int.", + "type": "object", + "additionalProperties": { + "format": "int32", + "type": "integer" + } + }, + "copyProgress": { + "description": "Copy progress per disk.", + "type": "array", + "items": { + "$ref": "#/definitions/DataBoxDiskCopyProgress" + }, + "readOnly": true + }, + "disksAndSizeDetails": { + "description": "Contains the map of disk serial number to the disk size being used for the job. Is returned only after the disks are shipped to the customer.", + "type": "object", + "additionalProperties": { + "format": "int32", + "type": "integer" + }, + "readOnly": true + }, + "passkey": { + "description": "User entered passkey for DataBox Disk job.", + "type": "string" + } + }, + "x-ms-discriminator-value": "DataBoxDisk" + }, + "DataBoxDiskJobSecrets": { + "description": "The secrets related to disk job.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/JobSecrets" + } + ], + "properties": { + "diskSecrets": { + "description": "Contains the list of secrets object for that device.", + "type": "array", + "items": { + "$ref": "#/definitions/DiskSecret" + }, + "readOnly": true + }, + "passKey": { + "description": "PassKey for the disk Job.", + "type": "string", + "readOnly": true + }, + "isPasskeyUserDefined": { + "description": "Whether passkey was provided by user.", + "type": "boolean", + "readOnly": true + } + }, + "x-ms-discriminator-value": "DataBoxDisk" + }, + "DataBoxHeavyAccountCopyLogDetails": { + "description": "Copy log details for a storage account for Databox heavy", + "required": [ + "copyLogDetailsType" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopyLogDetails" + } + ], + "properties": { + "accountName": { + "description": "Account name.", + "type": "string", + "readOnly": true + }, + "copyLogLink": { + "description": "Link for copy logs.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "copyVerboseLogLink": { + "description": "Link for copy verbose logs. This will be set only when the LogCollectionLevel is set to verbose.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + } + }, + "x-ms-discriminator-value": "DataBoxHeavy" + }, + "DataBoxHeavyJobDetails": { + "description": "Databox Heavy Device Job Details", + "required": [ + "contactDetails", + "jobDetailsType" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/JobDetails" + } + ], + "properties": { + "copyProgress": { + "description": "Copy progress per account.", + "type": "array", + "items": { + "$ref": "#/definitions/CopyProgress" + }, + "readOnly": true + }, + "devicePassword": { + "description": "Set Device password for unlocking Databox Heavy. Should not be passed for TransferType:ExportFromAzure jobs. If this is not passed, the service will generate password itself. This will not be returned in Get Call. Password Requirements : Password must be minimum of 12 and maximum of 64 characters. Password must have at least one uppercase alphabet, one number and one special character. Password cannot have the following characters : IilLoO0 Password can have only alphabets, numbers and these characters : @#\\-$%^!+=;:_()]+", + "type": "string" + } + }, + "x-ms-discriminator-value": "DataBoxHeavy" + }, + "DataBoxHeavyJobSecrets": { + "description": "The secrets related to a databox heavy job.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/JobSecrets" + } + ], + "properties": { + "cabinetPodSecrets": { + "description": "Contains the list of secret objects for a databox heavy job.", + "type": "array", + "items": { + "$ref": "#/definitions/DataBoxHeavySecret" + }, + "readOnly": true + } + }, + "x-ms-discriminator-value": "DataBoxHeavy" + }, + "DataBoxHeavySecret": { + "description": "The secrets related to a databox heavy.", + "type": "object", + "properties": { + "deviceSerialNumber": { + "description": "Serial number of the assigned device.", + "type": "string", + "readOnly": true + }, + "devicePassword": { + "description": "Password for out of the box experience on device.", + "type": "string", + "readOnly": true + }, + "networkConfigurations": { + "description": "Network configuration of the appliance.", + "type": "array", + "items": { + "$ref": "#/definitions/ApplianceNetworkConfiguration" + }, + "readOnly": true + }, + "encodedValidationCertPubKey": { + "description": "The base 64 encoded public key to authenticate with the device", + "type": "string", + "readOnly": true + }, + "accountCredentialDetails": { + "description": "Per account level access credentials.", + "type": "array", + "items": { + "$ref": "#/definitions/AccountCredentialDetails" + }, + "readOnly": true + } + } + }, + "DataBoxJobDetails": { + "description": "Databox Job Details", + "required": [ + "contactDetails", + "jobDetailsType" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/JobDetails" + } + ], + "properties": { + "copyProgress": { + "description": "Copy progress per storage account.", + "type": "array", + "items": { + "$ref": "#/definitions/CopyProgress" + }, + "readOnly": true + }, + "devicePassword": { + "description": "Set Device password for unlocking Databox. Should not be passed for TransferType:ExportFromAzure jobs. If this is not passed, the service will generate password itself. This will not be returned in Get Call. Password Requirements : Password must be minimum of 12 and maximum of 64 characters. Password must have at least one uppercase alphabet, one number and one special character. Password cannot have the following characters : IilLoO0 Password can have only alphabets, numbers and these characters : @#\\-$%^!+=;:_()]+", + "type": "string" + } + }, + "x-ms-discriminator-value": "DataBox" + }, + "DataboxJobSecrets": { + "description": "The secrets related to a databox job.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/JobSecrets" + } + ], + "properties": { + "podSecrets": { + "description": "Contains the list of secret objects for a job.", + "type": "array", + "items": { + "$ref": "#/definitions/DataBoxSecret" + } + } + }, + "x-ms-discriminator-value": "DataBox" + }, + "DataBoxScheduleAvailabilityRequest": { + "description": "Request body to get the availability for scheduling data box orders orders.", + "required": [ + "storageLocation", + "skuName" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScheduleAvailabilityRequest" + } + ], + "properties": {}, + "x-ms-discriminator-value": "DataBox" + }, + "DataBoxSecret": { + "description": "The secrets related to a DataBox.", + "type": "object", + "properties": { + "deviceSerialNumber": { + "description": "Serial number of the assigned device.", + "type": "string", + "readOnly": true + }, + "devicePassword": { + "description": "Password for out of the box experience on device.", + "type": "string", + "readOnly": true + }, + "networkConfigurations": { + "description": "Network configuration of the appliance.", + "type": "array", + "items": { + "$ref": "#/definitions/ApplianceNetworkConfiguration" + }, + "readOnly": true + }, + "encodedValidationCertPubKey": { + "description": "The base 64 encoded public key to authenticate with the device", + "type": "string", + "readOnly": true + }, + "accountCredentialDetails": { + "description": "Per account level access credentials.", + "type": "array", + "items": { + "$ref": "#/definitions/AccountCredentialDetails" + }, + "readOnly": true + } + } + }, + "DataExportDetails": { + "description": "Details of the data to be used for exporting data from azure.", + "required": [ + "transferConfiguration", + "accountDetails" + ], + "type": "object", + "properties": { + "transferConfiguration": { + "$ref": "#/definitions/TransferConfiguration", + "description": "Configuration for the data transfer." + }, + "logCollectionLevel": { + "description": "Level of the logs to be collected.", + "enum": [ + "Error", + "Verbose" + ], + "type": "string", + "x-ms-enum": { + "name": "LogCollectionLevel", + "modelAsExtensible": true, + "values": [ + { + "value": "Error", + "description": "Only Errors will be collected in the logs." + }, + { + "value": "Verbose", + "description": "Verbose logging (includes Errors, CRC, size information and others)." + } + ] + }, + "default": "Error" + }, + "accountDetails": { + "$ref": "#/definitions/DataAccountDetails", + "description": "Account details of the data to be transferred" + } + } + }, + "DataImportDetails": { + "description": "Details of the data to be used for importing data to azure.", + "required": [ + "accountDetails" + ], + "type": "object", + "properties": { + "accountDetails": { + "$ref": "#/definitions/DataAccountDetails", + "description": "Account details of the data to be transferred" + } + } + }, + "DataLocationToServiceLocationMap": { + "description": "Map of data location to service location", + "type": "object", + "properties": { + "dataLocation": { + "description": "Location of the data.", + "type": "string", + "readOnly": true + }, + "serviceLocation": { + "description": "Location of the service.", + "type": "string", + "readOnly": true + } + } + }, + "DataTransferDetailsValidationRequest": { + "description": "Request to validate export and import data details.", + "required": [ + "deviceType", + "transferType", + "validationType" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ValidationInputRequest" + } + ], + "properties": { + "dataExportDetails": { + "description": "List of DataTransfer details to be used to export data from azure.", + "type": "array", + "items": { + "$ref": "#/definitions/DataExportDetails" + } + }, + "dataImportDetails": { + "description": "List of DataTransfer details to be used to import data to azure.", + "type": "array", + "items": { + "$ref": "#/definitions/DataImportDetails" + } + }, + "deviceType": { + "description": "Device type.", + "enum": [ + "DataBox", + "DataBoxDisk", + "DataBoxHeavy" + ], + "type": "string", + "x-ms-enum": { + "name": "SkuName", + "modelAsExtensible": true, + "values": [ + { + "value": "DataBox", + "description": "Data Box." + }, + { + "value": "DataBoxDisk", + "description": "Data Box Disk." + }, + { + "value": "DataBoxHeavy", + "description": "Data Box Heavy." + } + ] + } + }, + "transferType": { + "description": "Type of the transfer.", + "enum": [ + "ImportToAzure", + "ExportFromAzure" + ], + "type": "string", + "x-ms-enum": { + "name": "TransferType", + "modelAsExtensible": true, + "values": [ + { + "value": "ImportToAzure", + "description": "Import data to azure." + }, + { + "value": "ExportFromAzure", + "description": "Export data from azure." + } + ] + } + } + }, + "x-ms-discriminator-value": "ValidateDataTransferDetails" + }, + "DataTransferDetailsValidationResponseProperties": { + "description": "Properties of data transfer details validation response.", + "required": [ + "validationType" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ValidationInputResponse" + } + ], + "properties": { + "status": { + "description": "Data transfer details validation status.", + "enum": [ + "Valid", + "Invalid", + "Skipped" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ValidationStatus", + "modelAsExtensible": true, + "values": [ + { + "value": "Valid", + "description": "Validation is successful" + }, + { + "value": "Invalid", + "description": "Validation is not successful" + }, + { + "value": "Skipped", + "description": "Validation is skipped" + } + ] + } + } + }, + "x-ms-discriminator-value": "ValidateDataTransferDetails" + }, + "DcAccessSecurityCode": { + "description": "Dc access security code", + "type": "object", + "properties": { + "reverseDCAccessCode": { + "description": "Reverse Dc access security code.", + "type": "string" + }, + "forwardDCAccessCode": { + "description": "Forward Dc access security code.", + "type": "string" + } + } + }, + "Details": { + "required": [ + "code", + "message" + ], + "type": "object", + "properties": { + "code": { + "type": "string" + }, + "message": { + "type": "string" + } + } + }, + "DiskScheduleAvailabilityRequest": { + "description": "Request body to get the availability for scheduling disk orders.", + "required": [ + "storageLocation", + "skuName", + "expectedDataSizeInTeraBytes" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScheduleAvailabilityRequest" + } + ], + "properties": { + "expectedDataSizeInTeraBytes": { + "format": "int32", + "description": "The expected size of the data, which needs to be transferred in this job, in terabytes.", + "type": "integer" + } + }, + "x-ms-discriminator-value": "DataBoxDisk" + }, + "DiskSecret": { + "description": "Contains all the secrets of a Disk.", + "type": "object", + "properties": { + "diskSerialNumber": { + "description": "Serial number of the assigned disk.", + "type": "string", + "readOnly": true + }, + "bitLockerKey": { + "description": "Bit Locker key of the disk which can be used to unlock the disk to copy data.", + "type": "string", + "readOnly": true + } + } + }, + "EncryptionPreferences": { + "description": "Preferences related to the Encryption.", + "type": "object", + "properties": { + "doubleEncryption": { + "description": "Defines secondary layer of software-based encryption enablement.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "DoubleEncryption", + "modelAsExtensible": true, + "values": [ + { + "value": "Enabled", + "description": "Software-based encryption is enabled." + }, + { + "value": "Disabled", + "description": "Software-based encryption is disabled." + } + ] + }, + "default": "Disabled" + } + } + }, + "ErrorDetail": { + "required": [ + "code", + "message" + ], + "type": "object", + "properties": { + "code": { + "type": "string" + }, + "message": { + "type": "string" + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/Details" + } + }, + "target": { + "type": "string" + } + } + }, + "FilterFileDetails": { + "description": "Details of the filter files to be used for data transfer.", + "required": [ + "filterFileType", + "filterFilePath" + ], + "type": "object", + "properties": { + "filterFileType": { + "description": "Type of the filter file.", + "enum": [ + "AzureBlob", + "AzureFile" + ], + "type": "string", + "x-ms-enum": { + "name": "FilterFileType", + "modelAsExtensible": true, + "values": [ + { + "value": "AzureBlob", + "description": "Filter file is of the type AzureBlob." + }, + { + "value": "AzureFile", + "description": "Filter file is of the type AzureFiles." + } + ] + } + }, + "filterFilePath": { + "description": "Path of the file that contains the details of all items to transfer.", + "type": "string" + } + } + }, + "HeavyScheduleAvailabilityRequest": { + "description": "Request body to get the availability for scheduling heavy orders.", + "required": [ + "storageLocation", + "skuName" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScheduleAvailabilityRequest" + } + ], + "properties": {}, + "x-ms-discriminator-value": "DataBoxHeavy" + }, + "IdentityProperties": { + "description": "Managed identity properties.", + "type": "object", + "properties": { + "type": { + "description": "Managed service identity type.", + "type": "string" + }, + "userAssigned": { + "$ref": "#/definitions/UserAssignedProperties", + "description": "User assigned identity properties." + } + } + }, + "JobDeliveryInfo": { + "description": "Additional delivery info.", + "type": "object", + "properties": { + "scheduledDateTime": { + "format": "date-time", + "description": "Scheduled date time.", + "type": "string" + } + } + }, + "JobDetails": { + "description": "Job details.", + "required": [ + "contactDetails", + "jobDetailsType" + ], + "type": "object", + "properties": { + "jobStages": { + "description": "List of stages that run in the job.", + "type": "array", + "items": { + "$ref": "#/definitions/JobStages" + }, + "readOnly": true + }, + "contactDetails": { + "$ref": "#/definitions/ContactDetails", + "description": "Contact details for notification and shipping." + }, + "shippingAddress": { + "$ref": "#/definitions/ShippingAddress", + "description": "Shipping address of the customer." + }, + "deliveryPackage": { + "$ref": "#/definitions/PackageShippingDetails", + "description": "Delivery package shipping details.", + "readOnly": true + }, + "returnPackage": { + "$ref": "#/definitions/PackageShippingDetails", + "description": "Return package shipping details.", + "readOnly": true + }, + "dataImportDetails": { + "description": "Details of the data to be imported into azure.", + "type": "array", + "items": { + "$ref": "#/definitions/DataImportDetails" + } + }, + "dataExportDetails": { + "description": "Details of the data to be exported from azure.", + "type": "array", + "items": { + "$ref": "#/definitions/DataExportDetails" + } + }, + "jobDetailsType": { + "description": "Indicates the type of job details.", + "enum": [ + "DataBox", + "DataBoxDisk", + "DataBoxHeavy" + ], + "type": "string", + "x-ms-enum": { + "name": "ClassDiscriminator", + "modelAsExtensible": false, + "values": [ + { + "value": "DataBox", + "description": "Data Box orders." + }, + { + "value": "DataBoxDisk", + "description": "Data Box Disk orders." + }, + { + "value": "DataBoxHeavy", + "description": "Data Box Heavy orders." + } + ] + } + }, + "preferences": { + "$ref": "#/definitions/Preferences", + "description": "Preferences for the order." + }, + "copyLogDetails": { + "description": "List of copy log details.", + "type": "array", + "items": { + "$ref": "#/definitions/CopyLogDetails" + }, + "readOnly": true + }, + "reverseShipmentLabelSasKey": { + "description": "Shared access key to download the return shipment label", + "type": "string", + "readOnly": true + }, + "chainOfCustodySasKey": { + "description": "Shared access key to download the chain of custody logs", + "type": "string", + "readOnly": true + }, + "keyEncryptionKey": { + "$ref": "#/definitions/KeyEncryptionKey", + "description": "Details about which key encryption type is being used." + }, + "expectedDataSizeInTeraBytes": { + "format": "int32", + "description": "The expected size of the data, which needs to be transferred in this job, in terabytes.", + "type": "integer" + }, + "actions": { + "description": "Available actions on the job.", + "uniqueItems": false, + "type": "array", + "items": { + "enum": [ + "None", + "MoveToCleanUpDevice", + "Resume" + ], + "type": "string", + "x-ms-enum": { + "name": "CustomerResolutionCode", + "modelAsExtensible": true, + "values": [ + { + "value": "None", + "description": "No Resolution Yet" + }, + { + "value": "MoveToCleanUpDevice", + "description": "Clean the device" + }, + { + "value": "Resume", + "description": "Resume the job to same stage" + } + ] + } + }, + "readOnly": true + }, + "lastMitigationActionOnJob": { + "$ref": "#/definitions/LastMitigationActionOnJob", + "description": "Last mitigation action performed on the job.", + "readOnly": true + } + }, + "discriminator": "jobDetailsType" + }, + "JobProperties": { + "description": "Job Properties", + "required": [ + "transferType" + ], + "type": "object", + "properties": { + "transferType": { + "description": "Type of the data transfer.", + "enum": [ + "ImportToAzure", + "ExportFromAzure" + ], + "type": "string", + "x-ms-enum": { + "name": "TransferType", + "modelAsExtensible": true, + "values": [ + { + "value": "ImportToAzure", + "description": "Import data to azure." + }, + { + "value": "ExportFromAzure", + "description": "Export data from azure." + } + ] + } + }, + "isCancellable": { + "description": "Describes whether the job is cancellable or not.", + "type": "boolean", + "readOnly": true + }, + "isDeletable": { + "description": "Describes whether the job is deletable or not.", + "type": "boolean", + "readOnly": true + }, + "isShippingAddressEditable": { + "description": "Describes whether the shipping address is editable or not.", + "type": "boolean", + "readOnly": true + }, + "isPrepareToShipEnabled": { + "description": "Is Prepare To Ship Enabled on this job", + "type": "boolean", + "readOnly": true + }, + "status": { + "description": "Name of the stage which is in progress.", + "enum": [ + "DeviceOrdered", + "DevicePrepared", + "Dispatched", + "Delivered", + "PickedUp", + "AtAzureDC", + "DataCopy", + "Completed", + "CompletedWithErrors", + "Cancelled", + "Failed_IssueReportedAtCustomer", + "Failed_IssueDetectedAtAzureDC", + "Aborted", + "CompletedWithWarnings", + "ReadyToDispatchFromAzureDC", + "ReadyToReceiveAtAzureDC" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "StageName", + "modelAsExtensible": true, + "values": [ + { + "value": "DeviceOrdered", + "description": "An order has been created." + }, + { + "value": "DevicePrepared", + "description": "A device has been prepared for the order." + }, + { + "value": "Dispatched", + "description": "Device has been dispatched to the user of the order." + }, + { + "value": "Delivered", + "description": "Device has been delivered to the user of the order." + }, + { + "value": "PickedUp", + "description": "Device has been picked up from user and in transit to Azure datacenter." + }, + { + "value": "AtAzureDC", + "description": "Device has been received at Azure datacenter from the user." + }, + { + "value": "DataCopy", + "description": "Data copy from the device at Azure datacenter." + }, + { + "value": "Completed", + "description": "Order has completed." + }, + { + "value": "CompletedWithErrors", + "description": "Order has completed with errors." + }, + { + "value": "Cancelled", + "description": "Order has been cancelled." + }, + { + "value": "Failed_IssueReportedAtCustomer", + "description": "Order has failed due to issue reported by user." + }, + { + "value": "Failed_IssueDetectedAtAzureDC", + "description": "Order has failed due to issue detected at Azure datacenter." + }, + { + "value": "Aborted", + "description": "Order has been aborted." + }, + { + "value": "CompletedWithWarnings", + "description": "Order has completed with warnings." + }, + { + "value": "ReadyToDispatchFromAzureDC", + "description": "Device is ready to be handed to customer from Azure DC." + }, + { + "value": "ReadyToReceiveAtAzureDC", + "description": "Device can be dropped off at Azure DC." + } + ] + } + }, + "startTime": { + "format": "date-time", + "description": "Time at which the job was started in UTC ISO 8601 format.", + "type": "string", + "readOnly": true + }, + "error": { + "$ref": "#/definitions/CloudError", + "description": "Top level error for the job.", + "readOnly": true + }, + "details": { + "$ref": "#/definitions/JobDetails", + "description": "Details of a job run. This field will only be sent for expand details filter." + }, + "cancellationReason": { + "description": "Reason for cancellation.", + "type": "string", + "readOnly": true + }, + "deliveryType": { + "description": "Delivery type of Job.", + "enum": [ + "NonScheduled", + "Scheduled" + ], + "type": "string", + "x-ms-enum": { + "name": "JobDeliveryType", + "modelAsExtensible": true, + "values": [ + { + "value": "NonScheduled", + "description": "Non Scheduled job." + }, + { + "value": "Scheduled", + "description": "Scheduled job." + } + ] + }, + "default": "NonScheduled" + }, + "deliveryInfo": { + "$ref": "#/definitions/JobDeliveryInfo", + "description": "Delivery Info of Job." + }, + "isCancellableWithoutFee": { + "description": "Flag to indicate cancellation of scheduled job.", + "type": "boolean", + "readOnly": true + } + } + }, + "JobResource": { + "description": "Job Resource.", + "required": [ + "properties" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/JobProperties", + "description": "Properties of a job.", + "x-ms-client-flatten": true + }, + "name": { + "description": "Name of the object.", + "type": "string", + "readOnly": true + }, + "id": { + "description": "Id of the object.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Type of the object.", + "type": "string", + "readOnly": true + }, + "systemData": { + "$ref": "#/definitions/systemData", + "description": "Metadata pertaining to creation and last modification of the resource.", + "readOnly": true + } + } + }, + "JobResourceList": { + "description": "Job Resource Collection", + "type": "object", + "properties": { + "value": { + "description": "List of job resources.", + "type": "array", + "items": { + "$ref": "#/definitions/JobResource" + } + }, + "nextLink": { + "description": "Link for the next set of job resources.", + "type": "string" + } + } + }, + "JobResourceUpdateParameter": { + "description": "The JobResourceUpdateParameter.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/UpdateJobProperties", + "description": "Properties of a job to be updated.", + "x-ms-client-flatten": true + }, + "tags": { + "description": "The list of key value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups).", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "identity": { + "$ref": "#/definitions/ResourceIdentity", + "description": "Msi identity of the resource" + } + } + }, + "JobSecrets": { + "description": "The base class for the secrets", + "required": [ + "jobSecretsType" + ], + "type": "object", + "properties": { + "jobSecretsType": { + "description": "Used to indicate what type of job secrets object.", + "enum": [ + "DataBox", + "DataBoxDisk", + "DataBoxHeavy" + ], + "type": "string", + "x-ms-enum": { + "name": "ClassDiscriminator", + "modelAsExtensible": false, + "values": [ + { + "value": "DataBox", + "description": "Data Box orders." + }, + { + "value": "DataBoxDisk", + "description": "Data Box Disk orders." + }, + { + "value": "DataBoxHeavy", + "description": "Data Box Heavy orders." + } + ] + } + }, + "dcAccessSecurityCode": { + "$ref": "#/definitions/DcAccessSecurityCode", + "description": "Dc Access Security Code for Customer Managed Shipping", + "readOnly": true + }, + "error": { + "$ref": "#/definitions/CloudError", + "description": "Error while fetching the secrets.", + "readOnly": true + } + }, + "discriminator": "jobSecretsType" + }, + "JobStages": { + "description": "Job stages.", + "type": "object", + "properties": { + "stageName": { + "description": "Name of the job stage.", + "enum": [ + "DeviceOrdered", + "DevicePrepared", + "Dispatched", + "Delivered", + "PickedUp", + "AtAzureDC", + "DataCopy", + "Completed", + "CompletedWithErrors", + "Cancelled", + "Failed_IssueReportedAtCustomer", + "Failed_IssueDetectedAtAzureDC", + "Aborted", + "CompletedWithWarnings", + "ReadyToDispatchFromAzureDC", + "ReadyToReceiveAtAzureDC" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "StageName", + "modelAsExtensible": true, + "values": [ + { + "value": "DeviceOrdered", + "description": "An order has been created." + }, + { + "value": "DevicePrepared", + "description": "A device has been prepared for the order." + }, + { + "value": "Dispatched", + "description": "Device has been dispatched to the user of the order." + }, + { + "value": "Delivered", + "description": "Device has been delivered to the user of the order." + }, + { + "value": "PickedUp", + "description": "Device has been picked up from user and in transit to Azure datacenter." + }, + { + "value": "AtAzureDC", + "description": "Device has been received at Azure datacenter from the user." + }, + { + "value": "DataCopy", + "description": "Data copy from the device at Azure datacenter." + }, + { + "value": "Completed", + "description": "Order has completed." + }, + { + "value": "CompletedWithErrors", + "description": "Order has completed with errors." + }, + { + "value": "Cancelled", + "description": "Order has been cancelled." + }, + { + "value": "Failed_IssueReportedAtCustomer", + "description": "Order has failed due to issue reported by user." + }, + { + "value": "Failed_IssueDetectedAtAzureDC", + "description": "Order has failed due to issue detected at Azure datacenter." + }, + { + "value": "Aborted", + "description": "Order has been aborted." + }, + { + "value": "CompletedWithWarnings", + "description": "Order has completed with warnings." + }, + { + "value": "ReadyToDispatchFromAzureDC", + "description": "Device is ready to be handed to customer from Azure DC." + }, + { + "value": "ReadyToReceiveAtAzureDC", + "description": "Device can be dropped off at Azure DC." + } + ] + } + }, + "displayName": { + "description": "Display name of the job stage.", + "type": "string", + "readOnly": true + }, + "stageStatus": { + "description": "Status of the job stage.", + "enum": [ + "None", + "InProgress", + "Succeeded", + "Failed", + "Cancelled", + "Cancelling", + "SucceededWithErrors", + "WaitingForCustomerAction", + "SucceededWithWarnings" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "StageStatus", + "modelAsExtensible": true, + "values": [ + { + "value": "None", + "description": "No status available yet." + }, + { + "value": "InProgress", + "description": "Stage is in progress." + }, + { + "value": "Succeeded", + "description": "Stage has succeeded." + }, + { + "value": "Failed", + "description": "Stage has failed." + }, + { + "value": "Cancelled", + "description": "Stage has been cancelled." + }, + { + "value": "Cancelling", + "description": "Stage is cancelling." + }, + { + "value": "SucceededWithErrors", + "description": "Stage has succeeded with errors." + }, + { + "value": "WaitingForCustomerAction", + "description": "Stage is stuck until customer takes some action." + }, + { + "value": "SucceededWithWarnings", + "description": "Stage has succeeded with warnings." + } + ] + } + }, + "stageTime": { + "format": "date-time", + "description": "Time for the job stage in UTC ISO 8601 format.", + "type": "string", + "readOnly": true + }, + "jobStageDetails": { + "description": "Job Stage Details", + "type": "object", + "readOnly": true + } + } + }, + "KeyEncryptionKey": { + "description": "Encryption key containing details about key to encrypt different keys.", + "required": [ + "kekType" + ], + "type": "object", + "properties": { + "kekType": { + "description": "Type of encryption key used for key encryption.", + "enum": [ + "MicrosoftManaged", + "CustomerManaged" + ], + "type": "string", + "x-ms-enum": { + "name": "KekType", + "modelAsExtensible": true, + "values": [ + { + "value": "MicrosoftManaged", + "description": "Key encryption key is managed by Microsoft." + }, + { + "value": "CustomerManaged", + "description": "Key encryption key is managed by the Customer." + } + ] + }, + "default": "MicrosoftManaged" + }, + "identityProperties": { + "$ref": "#/definitions/IdentityProperties", + "description": "Managed identity properties used for key encryption." + }, + "kekUrl": { + "description": "Key encryption key. It is required in case of Customer managed KekType.", + "type": "string" + }, + "kekVaultResourceID": { + "description": "Kek vault resource id. It is required in case of Customer managed KekType.", + "type": "string" + } + } + }, + "ManagedDiskDetails": { + "description": "Details of the managed disks.", + "required": [ + "resourceGroupId", + "stagingStorageAccountId", + "dataAccountType" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataAccountDetails" + } + ], + "properties": { + "resourceGroupId": { + "description": "Resource Group Id of the compute disks.", + "type": "string" + }, + "stagingStorageAccountId": { + "description": "Resource Id of the storage account that can be used to copy the vhd for staging.", + "type": "string" + } + }, + "x-ms-discriminator-value": "ManagedDisk" + }, + "LastMitigationActionOnJob": { + "description": "Last Mitigation Action Performed On Job", + "type": "object", + "properties": { + "actionDateTimeInUtc": { + "format": "date-time", + "description": "Action performed date time", + "type": "string" + }, + "isPerformedByCustomer": { + "description": "Action performed by customer,\r\npossibility is that mitigation might happen by customer or service or by ops", + "type": "boolean" + }, + "customerResolution": { + "description": "Resolution code provided by customer", + "enum": [ + "None", + "MoveToCleanUpDevice", + "Resume" + ], + "type": "string", + "x-ms-enum": { + "name": "CustomerResolutionCode", + "modelAsExtensible": true, + "values": [ + { + "value": "None", + "description": "No Resolution Yet" + }, + { + "value": "MoveToCleanUpDevice", + "description": "Clean the device" + }, + { + "value": "Resume", + "description": "Resume the job to same stage" + } + ] + } + } + } + }, + "MitigateJobRequest": { + "description": "The Mitigate Job captured from request body for Mitigate API", + "required": [ + "customerResolutionCode" + ], + "type": "object", + "properties": { + "customerResolutionCode": { + "description": "Resolution code for the job", + "enum": [ + "None", + "MoveToCleanUpDevice", + "Resume" + ], + "type": "string", + "x-ms-enum": { + "name": "CustomerResolutionCode", + "modelAsExtensible": true, + "values": [ + { + "value": "None", + "description": "No Resolution Yet" + }, + { + "value": "MoveToCleanUpDevice", + "description": "Clean the device" + }, + { + "value": "Resume", + "description": "Resume the job to same stage" + } + ] + } + } + } + }, + "NotificationPreference": { + "description": "Notification preference for a job stage.", + "required": [ + "stageName", + "sendNotification" + ], + "type": "object", + "properties": { + "stageName": { + "description": "Name of the stage.", + "enum": [ + "DevicePrepared", + "Dispatched", + "Delivered", + "PickedUp", + "AtAzureDC", + "DataCopy" + ], + "type": "string", + "x-ms-enum": { + "name": "NotificationStageName", + "modelAsExtensible": true, + "values": [ + { + "value": "DevicePrepared", + "description": "Notification at device prepared stage." + }, + { + "value": "Dispatched", + "description": "Notification at device dispatched stage." + }, + { + "value": "Delivered", + "description": "Notification at device delivered stage." + }, + { + "value": "PickedUp", + "description": "Notification at device picked up from user stage." + }, + { + "value": "AtAzureDC", + "description": "Notification at device received at Azure datacenter stage." + }, + { + "value": "DataCopy", + "description": "Notification at data copy started stage." + } + ] + } + }, + "sendNotification": { + "description": "Notification is required or not.", + "type": "boolean", + "default": true + } + } + }, + "Operation": { + "description": "Operation entity.", + "type": "object", + "properties": { + "name": { + "description": "Name of the operation. Format: {resourceProviderNamespace}/{resourceType}/{read|write|delete|action}", + "type": "string", + "readOnly": true + }, + "display": { + "$ref": "#/definitions/OperationDisplay", + "description": "Operation display values.", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/OperationProperties", + "description": "Operation properties.", + "readOnly": true, + "x-ms-client-flatten": true + }, + "origin": { + "description": "Origin of the operation. Can be : user|system|user,system", + "type": "string", + "readOnly": true + }, + "isDataAction": { + "description": "Indicates whether the operation is a data action", + "type": "boolean" + } + } + }, + "OperationDisplay": { + "description": "Operation display", + "type": "object", + "properties": { + "provider": { + "description": "Provider name.", + "type": "string" + }, + "resource": { + "description": "Resource name.", + "type": "string" + }, + "operation": { + "description": "Localized name of the operation for display purpose.", + "type": "string" + }, + "description": { + "description": "Localized description of the operation for display purpose.", + "type": "string" + } + } + }, + "OperationList": { + "description": "Operation Collection.", + "type": "object", + "properties": { + "value": { + "description": "List of operations.", + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link for the next set of operations.", + "type": "string" + } + } + }, + "OperationProperties": { + "description": "Operation properties.", + "type": "object", + "properties": {} + }, + "PackageShippingDetails": { + "description": "Shipping details.", + "type": "object", + "properties": { + "carrierName": { + "description": "Name of the carrier.", + "type": "string", + "readOnly": true + }, + "trackingId": { + "description": "Tracking Id of shipment.", + "type": "string", + "readOnly": true + }, + "trackingUrl": { + "description": "Url where shipment can be tracked.", + "type": "string", + "readOnly": true + } + } + }, + "Preferences": { + "description": "Preferences related to the order", + "type": "object", + "properties": { + "preferredDataCenterRegion": { + "description": "Preferred data center region.", + "type": "array", + "items": { + "type": "string" + } + }, + "transportPreferences": { + "$ref": "#/definitions/TransportPreferences", + "description": "Preferences related to the shipment logistics of the sku." + }, + "encryptionPreferences": { + "$ref": "#/definitions/EncryptionPreferences", + "description": "Preferences related to the Encryption." + } + } + }, + "PreferencesValidationRequest": { + "description": "Request to validate preference of transport and data center.", + "required": [ + "deviceType", + "validationType" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ValidationInputRequest" + } + ], + "properties": { + "preference": { + "description": "Preference of transport and data center.", + "$ref": "#/definitions/Preferences" + }, + "deviceType": { + "description": "Device type to be used for the job.", + "enum": [ + "DataBox", + "DataBoxDisk", + "DataBoxHeavy" + ], + "type": "string", + "x-ms-enum": { + "name": "SkuName", + "modelAsExtensible": true, + "values": [ + { + "value": "DataBox", + "description": "Data Box." + }, + { + "value": "DataBoxDisk", + "description": "Data Box Disk." + }, + { + "value": "DataBoxHeavy", + "description": "Data Box Heavy." + } + ] + } + } + }, + "x-ms-discriminator-value": "ValidatePreferences" + }, + "PreferencesValidationResponseProperties": { + "description": "Properties of data center and transport preference validation response.", + "required": [ + "validationType" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ValidationInputResponse" + } + ], + "properties": { + "status": { + "description": "Validation status of requested data center and transport.", + "enum": [ + "Valid", + "Invalid", + "Skipped" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ValidationStatus", + "modelAsExtensible": true, + "values": [ + { + "value": "Valid", + "description": "Validation is successful" + }, + { + "value": "Invalid", + "description": "Validation is not successful" + }, + { + "value": "Skipped", + "description": "Validation is skipped" + } + ] + } + } + }, + "x-ms-discriminator-value": "ValidatePreferences" + }, + "RegionConfigurationRequest": { + "description": "Request body to get the configuration for the region.", + "type": "object", + "properties": { + "scheduleAvailabilityRequest": { + "$ref": "#/definitions/ScheduleAvailabilityRequest", + "description": "Request body to get the availability for scheduling orders." + }, + "transportAvailabilityRequest": { + "$ref": "#/definitions/TransportAvailabilityRequest", + "description": "Request body to get the transport availability for given sku." + } + } + }, + "RegionConfigurationResponse": { + "description": "Configuration response specific to a region.", + "type": "object", + "properties": { + "scheduleAvailabilityResponse": { + "$ref": "#/definitions/ScheduleAvailabilityResponse", + "description": "Schedule availability for given sku in a region.", + "readOnly": true + }, + "transportAvailabilityResponse": { + "$ref": "#/definitions/TransportAvailabilityResponse", + "description": "Transport options available for given sku in a region.", + "readOnly": true + } + } + }, + "Resource": { + "description": "Model of the Resource.", + "required": [ + "location", + "sku" + ], + "type": "object", + "properties": { + "location": { + "description": "The location of the resource. This will be one of the supported and registered Azure Regions (e.g. West US, East US, Southeast Asia, etc.). The region of a resource cannot be changed once it is created, but if an identical region is specified on update the request will succeed.", + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "tags": { + "description": "The list of key value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups).", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "The sku type." + }, + "identity": { + "$ref": "#/definitions/ResourceIdentity", + "description": "Msi identity of the resource" + } + }, + "x-ms-azure-resource": true + }, + "ResourceIdentity": { + "description": "Msi identity details of the resource", + "type": "object", + "properties": { + "type": { + "description": "Identity type", + "type": "string", + "default": "None" + }, + "principalId": { + "description": "Service Principal Id backing the Msi", + "type": "string", + "readOnly": true + }, + "tenantId": { + "description": "Home Tenant Id", + "type": "string", + "readOnly": true + }, + "userAssignedIdentities": { + "description": "User Assigned Identities", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/UserAssignedIdentity" + } + } + } + }, + "ScheduleAvailabilityRequest": { + "description": "Request body to get the availability for scheduling orders.", + "required": [ + "storageLocation", + "skuName" + ], + "type": "object", + "properties": { + "storageLocation": { + "description": "Location for data transfer. For locations check: https://management.azure.com/subscriptions/SUBSCRIPTIONID/locations?api-version=2018-01-01", + "type": "string" + }, + "skuName": { + "description": "Sku Name for which the order is to be scheduled.", + "enum": [ + "DataBox", + "DataBoxDisk", + "DataBoxHeavy" + ], + "type": "string", + "x-ms-enum": { + "name": "SkuName", + "modelAsExtensible": true, + "values": [ + { + "value": "DataBox", + "description": "Data Box." + }, + { + "value": "DataBoxDisk", + "description": "Data Box Disk." + }, + { + "value": "DataBoxHeavy", + "description": "Data Box Heavy." + } + ] + } + }, + "country": { + "description": "Country in which storage location should be supported.", + "type": "string" + } + }, + "discriminator": "skuName" + }, + "ScheduleAvailabilityResponse": { + "description": "Schedule availability for given sku in a region.", + "type": "object", + "properties": { + "availableDates": { + "description": "List of dates available to schedule", + "type": "array", + "items": { + "format": "date-time", + "type": "string" + }, + "readOnly": true + } + } + }, + "ShareCredentialDetails": { + "description": "Credential details of the shares in account.", + "type": "object", + "properties": { + "shareName": { + "description": "Name of the share.", + "type": "string", + "readOnly": true + }, + "shareType": { + "description": "Type of the share.", + "enum": [ + "UnknownType", + "HCS", + "BlockBlob", + "PageBlob", + "AzureFile", + "ManagedDisk" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ShareDestinationFormatType", + "modelAsExtensible": true, + "values": [ + { + "value": "UnknownType", + "description": "Unknown format." + }, + { + "value": "HCS", + "description": "Storsimple data format." + }, + { + "value": "BlockBlob", + "description": "Azure storage block blob format." + }, + { + "value": "PageBlob", + "description": "Azure storage page blob format." + }, + { + "value": "AzureFile", + "description": "Azure storage file format." + }, + { + "value": "ManagedDisk", + "description": "Azure Compute Disk." + } + ] + } + }, + "userName": { + "description": "User name for the share.", + "type": "string", + "readOnly": true + }, + "password": { + "description": "Password for the share.", + "type": "string", + "readOnly": true + }, + "supportedAccessProtocols": { + "description": "Access protocols supported on the device.", + "type": "array", + "items": { + "enum": [ + "SMB", + "NFS" + ], + "type": "string", + "x-ms-enum": { + "name": "AccessProtocol", + "modelAsExtensible": true, + "values": [ + { + "value": "SMB", + "description": "Server Message Block protocol(SMB)." + }, + { + "value": "NFS", + "description": "Network File System protocol(NFS)." + } + ] + } + }, + "readOnly": true + } + } + }, + "ShipmentPickUpRequest": { + "description": "Shipment pick up request details.", + "required": [ + "startTime", + "endTime", + "shipmentLocation" + ], + "type": "object", + "properties": { + "startTime": { + "format": "date-time", + "description": "Minimum date after which the pick up should commence, this must be in local time of pick up area.", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "Maximum date before which the pick up should commence, this must be in local time of pick up area.", + "type": "string" + }, + "shipmentLocation": { + "description": "Shipment Location in the pickup place. Eg.front desk", + "type": "string" + } + } + }, + "ShipmentPickUpResponse": { + "description": "Shipment pick up response.", + "type": "object", + "properties": { + "confirmationNumber": { + "description": "Confirmation number for the pick up request.", + "type": "string", + "readOnly": true + }, + "readyByTime": { + "format": "date-time", + "description": "Time by which shipment should be ready for pick up, this is in local time of pick up area.", + "type": "string", + "readOnly": true + } + } + }, + "ShippingAddress": { + "description": "Shipping address where customer wishes to receive the device.", + "required": [ + "streetAddress1", + "country" + ], + "type": "object", + "properties": { + "streetAddress1": { + "description": "Street Address line 1.", + "type": "string" + }, + "streetAddress2": { + "description": "Street Address line 2.", + "type": "string" + }, + "streetAddress3": { + "description": "Street Address line 3.", + "type": "string" + }, + "city": { + "description": "Name of the City.", + "type": "string" + }, + "stateOrProvince": { + "description": "Name of the State or Province.", + "type": "string" + }, + "country": { + "description": "Name of the Country.", + "type": "string" + }, + "postalCode": { + "description": "Postal code.", + "type": "string" + }, + "zipExtendedCode": { + "description": "Extended Zip Code.", + "type": "string" + }, + "companyName": { + "description": "Name of the company.", + "type": "string" + }, + "addressType": { + "description": "Type of address.", + "enum": [ + "None", + "Residential", + "Commercial" + ], + "type": "string", + "x-ms-enum": { + "name": "AddressType", + "modelAsExtensible": true, + "values": [ + { + "value": "None", + "description": "Address type not known." + }, + { + "value": "Residential", + "description": "Residential Address." + }, + { + "value": "Commercial", + "description": "Commercial Address." + } + ] + }, + "default": "None" + } + } + }, + "Sku": { + "description": "The Sku.", + "required": [ + "name" + ], + "type": "object", + "properties": { + "name": { + "description": "The sku name.", + "enum": [ + "DataBox", + "DataBoxDisk", + "DataBoxHeavy" + ], + "type": "string", + "x-ms-enum": { + "name": "SkuName", + "modelAsExtensible": true, + "values": [ + { + "value": "DataBox", + "description": "Data Box." + }, + { + "value": "DataBoxDisk", + "description": "Data Box Disk." + }, + { + "value": "DataBoxHeavy", + "description": "Data Box Heavy." + } + ] + } + }, + "displayName": { + "description": "The display name of the sku.", + "type": "string" + }, + "family": { + "description": "The sku family.", + "type": "string" + } + } + }, + "SkuAvailabilityValidationRequest": { + "description": "Request to validate sku availability.", + "required": [ + "deviceType", + "transferType", + "country", + "location", + "validationType" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ValidationInputRequest" + } + ], + "properties": { + "deviceType": { + "description": "Device type to be used for the job.", + "enum": [ + "DataBox", + "DataBoxDisk", + "DataBoxHeavy" + ], + "type": "string", + "x-ms-enum": { + "name": "SkuName", + "modelAsExtensible": true, + "values": [ + { + "value": "DataBox", + "description": "Data Box." + }, + { + "value": "DataBoxDisk", + "description": "Data Box Disk." + }, + { + "value": "DataBoxHeavy", + "description": "Data Box Heavy." + } + ] + } + }, + "transferType": { + "description": "Type of the transfer.", + "enum": [ + "ImportToAzure", + "ExportFromAzure" + ], + "type": "string", + "x-ms-enum": { + "name": "TransferType", + "modelAsExtensible": true, + "values": [ + { + "value": "ImportToAzure", + "description": "Import data to azure." + }, + { + "value": "ExportFromAzure", + "description": "Export data from azure." + } + ] + } + }, + "country": { + "description": "ISO country code. Country for hardware shipment. For codes check: https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2#Officially_assigned_code_elements", + "type": "string" + }, + "location": { + "description": "Location for data transfer. For locations check: https://management.azure.com/subscriptions/SUBSCRIPTIONID/locations?api-version=2018-01-01", + "type": "string" + } + }, + "x-ms-discriminator-value": "ValidateSkuAvailability" + }, + "SkuAvailabilityValidationResponseProperties": { + "description": "Properties of sku availability validation response.", + "required": [ + "validationType" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ValidationInputResponse" + } + ], + "properties": { + "status": { + "description": "Sku availability validation status.", + "enum": [ + "Valid", + "Invalid", + "Skipped" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ValidationStatus", + "modelAsExtensible": true, + "values": [ + { + "value": "Valid", + "description": "Validation is successful" + }, + { + "value": "Invalid", + "description": "Validation is not successful" + }, + { + "value": "Skipped", + "description": "Validation is skipped" + } + ] + } + } + }, + "x-ms-discriminator-value": "ValidateSkuAvailability" + }, + "SkuCapacity": { + "description": "Capacity of the sku.", + "type": "object", + "properties": { + "usable": { + "description": "Usable capacity in TB.", + "type": "string", + "readOnly": true + }, + "maximum": { + "description": "Maximum capacity in TB.", + "type": "string", + "readOnly": true + } + } + }, + "SkuCost": { + "description": "Describes metadata for retrieving price info.", + "type": "object", + "properties": { + "meterId": { + "description": "Meter id of the Sku.", + "type": "string", + "readOnly": true + }, + "meterType": { + "description": "The type of the meter.", + "type": "string", + "readOnly": true + }, + "multiplier": { + "format": "double", + "description": "Multiplier specifies the region specific value to be multiplied with 1$ guid. Eg: Our new regions will be using 1$ shipping guid with appropriate multiplier specific to region.", + "type": "number", + "readOnly": true + } + } + }, + "SkuInformation": { + "description": "Information of the sku.", + "type": "object", + "properties": { + "sku": { + "$ref": "#/definitions/Sku", + "description": "The Sku.", + "readOnly": true + }, + "enabled": { + "description": "The sku is enabled or not.", + "type": "boolean", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/SkuProperties", + "description": "Properties of the sku.", + "readOnly": true, + "x-ms-client-flatten": true + } + } + }, + "SkuProperties": { + "description": "Properties of the sku.", + "type": "object", + "properties": { + "dataLocationToServiceLocationMap": { + "description": "The map of data location to service location.", + "type": "array", + "items": { + "$ref": "#/definitions/DataLocationToServiceLocationMap" + }, + "readOnly": true + }, + "capacity": { + "$ref": "#/definitions/SkuCapacity", + "description": "Capacity of the Sku.", + "readOnly": true + }, + "costs": { + "description": "Cost of the Sku.", + "type": "array", + "items": { + "$ref": "#/definitions/SkuCost" + }, + "readOnly": true + }, + "apiVersions": { + "description": "Api versions that support this Sku.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "disabledReason": { + "description": "Reason why the Sku is disabled.", + "enum": [ + "None", + "Country", + "Region", + "Feature", + "OfferType", + "NoSubscriptionInfo" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "SkuDisabledReason", + "modelAsExtensible": true, + "values": [ + { + "value": "None", + "description": "SKU is not disabled." + }, + { + "value": "Country", + "description": "SKU is not available in the requested country." + }, + { + "value": "Region", + "description": "SKU is not available to push data to the requested Azure region." + }, + { + "value": "Feature", + "description": "Required features are not enabled for the SKU." + }, + { + "value": "OfferType", + "description": "Subscription does not have required offer types for the SKU." + }, + { + "value": "NoSubscriptionInfo", + "description": "Subscription has not registered to Microsoft.DataBox and Service does not have the subscription notification." + } + ] + } + }, + "disabledReasonMessage": { + "description": "Message for why the Sku is disabled.", + "type": "string", + "readOnly": true + }, + "requiredFeature": { + "description": "Required feature to access the sku.", + "type": "string", + "readOnly": true + } + } + }, + "StorageAccountDetails": { + "description": "Details for the storage account.", + "required": [ + "storageAccountId", + "dataAccountType" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataAccountDetails" + } + ], + "properties": { + "storageAccountId": { + "description": "Storage Account Resource Id.", + "type": "string" + } + }, + "x-ms-discriminator-value": "StorageAccount" + }, + "SubscriptionIsAllowedToCreateJobValidationRequest": { + "description": "Request to validate subscription permission to create jobs.", + "required": [ + "validationType" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ValidationInputRequest" + } + ], + "properties": {}, + "x-ms-discriminator-value": "ValidateSubscriptionIsAllowedToCreateJob" + }, + "SubscriptionIsAllowedToCreateJobValidationResponseProperties": { + "description": "Properties of subscription permission to create job validation response.", + "required": [ + "validationType" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ValidationInputResponse" + } + ], + "properties": { + "status": { + "description": "Validation status of subscription permission to create job.", + "enum": [ + "Valid", + "Invalid", + "Skipped" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ValidationStatus", + "modelAsExtensible": true, + "values": [ + { + "value": "Valid", + "description": "Validation is successful" + }, + { + "value": "Invalid", + "description": "Validation is not successful" + }, + { + "value": "Skipped", + "description": "Validation is skipped" + } + ] + } + } + }, + "x-ms-discriminator-value": "ValidateSubscriptionIsAllowedToCreateJob" + }, + "systemData": { + "description": "Provides details about resource creation and update time", + "type": "object", + "properties": { + "createdBy": { + "description": "A string identifier for the identity that created the resource", + "type": "string", + "readOnly": true + }, + "createdByType": { + "description": "The type of identity that created the resource: user, application, managedIdentity", + "type": "string", + "readOnly": true + }, + "createdAt": { + "format": "date-time", + "description": "The timestamp of resource creation (UTC)", + "type": "string", + "readOnly": true + }, + "lastModifiedBy": { + "description": "A string identifier for the identity that last modified the resource", + "type": "string", + "readOnly": true + }, + "lastModifiedByType": { + "description": "The type of identity that last modified the resource: user, application, managedIdentity", + "type": "string", + "readOnly": true + }, + "lastModifiedAt": { + "format": "date-time", + "description": "The timestamp of resource last modification (UTC)", + "type": "string", + "readOnly": true + } + } + }, + "TransferAllDetails": { + "description": "Details to transfer all data.", + "required": [ + "dataAccountType" + ], + "type": "object", + "properties": { + "dataAccountType": { + "description": "Type of the account of data", + "enum": [ + "StorageAccount", + "ManagedDisk" + ], + "type": "string", + "x-ms-enum": { + "name": "DataAccountType", + "modelAsExtensible": true, + "values": [ + { + "value": "StorageAccount", + "description": "Storage Accounts ." + }, + { + "value": "ManagedDisk", + "description": "Azure Managed disk storage." + } + ] + }, + "default": "StorageAccount" + }, + "transferAllBlobs": { + "description": "To indicate if all Azure blobs have to be transferred", + "type": "boolean" + }, + "transferAllFiles": { + "description": "To indicate if all Azure Files have to be transferred", + "type": "boolean" + } + } + }, + "TransferConfiguration": { + "description": "Configuration for defining the transfer of data.", + "required": [ + "transferConfigurationType" + ], + "type": "object", + "properties": { + "transferConfigurationType": { + "description": "Type of the configuration for transfer.", + "enum": [ + "TransferAll", + "TransferUsingFilter" + ], + "type": "string", + "x-ms-enum": { + "name": "TransferConfigurationType", + "modelAsExtensible": true, + "values": [ + { + "value": "TransferAll", + "description": "Transfer all the data." + }, + { + "value": "TransferUsingFilter", + "description": "Transfer using filter." + } + ] + } + }, + "transferFilterDetails": { + "description": "Map of filter type and the details to filter. This field is required only if the TransferConfigurationType is given as TransferUsingFilter.", + "type": "object", + "properties": { + "include": { + "description": "Details of the filtering the transfer of data.", + "$ref": "#/definitions/TransferFilterDetails" + } + } + }, + "transferAllDetails": { + "description": "Map of filter type and the details to transfer all data. This field is required only if the TransferConfigurationType is given as TransferAll", + "type": "object", + "properties": { + "include": { + "description": "Details to transfer all data.", + "$ref": "#/definitions/TransferAllDetails" + } + } + } + } + }, + "TransferFilterDetails": { + "description": "Details of the filtering the transfer of data.", + "required": [ + "dataAccountType" + ], + "type": "object", + "properties": { + "dataAccountType": { + "description": "Type of the account of data.", + "enum": [ + "StorageAccount", + "ManagedDisk" + ], + "type": "string", + "x-ms-enum": { + "name": "DataAccountType", + "modelAsExtensible": true, + "values": [ + { + "value": "StorageAccount", + "description": "Storage Accounts ." + }, + { + "value": "ManagedDisk", + "description": "Azure Managed disk storage." + } + ] + }, + "default": "StorageAccount" + }, + "blobFilterDetails": { + "$ref": "#/definitions/BlobFilterDetails", + "description": "Filter details to transfer blobs." + }, + "azureFileFilterDetails": { + "$ref": "#/definitions/AzureFileFilterDetails", + "description": "Filter details to transfer Azure files." + }, + "filterFileDetails": { + "description": "Details of the filter files to be used for data transfer.", + "type": "array", + "items": { + "$ref": "#/definitions/FilterFileDetails" + } + } + } + }, + "TransportAvailabilityDetails": { + "description": "Transport options availability details for given region.", + "type": "object", + "properties": { + "shipmentType": { + "description": "Transport Shipment Type supported for given region.", + "enum": [ + "CustomerManaged", + "MicrosoftManaged" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "TransportShipmentTypes", + "modelAsExtensible": true, + "values": [ + { + "value": "CustomerManaged", + "description": "Shipment Logistics is handled by the customer." + }, + { + "value": "MicrosoftManaged", + "description": "Shipment Logistics is handled by Microsoft." + } + ] + } + } + } + }, + "TransportAvailabilityRequest": { + "description": "Request body to get the transport availability for given sku.", + "type": "object", + "properties": { + "skuName": { + "description": "Type of the device.", + "enum": [ + "DataBox", + "DataBoxDisk", + "DataBoxHeavy" + ], + "type": "string", + "x-ms-enum": { + "name": "SkuName", + "modelAsExtensible": true, + "values": [ + { + "value": "DataBox", + "description": "Data Box." + }, + { + "value": "DataBoxDisk", + "description": "Data Box Disk." + }, + { + "value": "DataBoxHeavy", + "description": "Data Box Heavy." + } + ] + } + } + } + }, + "TransportAvailabilityResponse": { + "description": "Transport options available for given sku in a region.", + "type": "object", + "properties": { + "transportAvailabilityDetails": { + "description": "List of transport availability details for given region", + "type": "array", + "items": { + "$ref": "#/definitions/TransportAvailabilityDetails" + }, + "readOnly": true + } + } + }, + "TransportPreferences": { + "description": "Preferences related to the shipment logistics of the sku", + "required": [ + "preferredShipmentType" + ], + "type": "object", + "properties": { + "preferredShipmentType": { + "description": "Indicates Shipment Logistics type that the customer preferred.", + "enum": [ + "CustomerManaged", + "MicrosoftManaged" + ], + "type": "string", + "x-ms-enum": { + "name": "TransportShipmentTypes", + "modelAsExtensible": true, + "values": [ + { + "value": "CustomerManaged", + "description": "Shipment Logistics is handled by the customer." + }, + { + "value": "MicrosoftManaged", + "description": "Shipment Logistics is handled by Microsoft." + } + ] + } + } + } + }, + "UnencryptedCredentials": { + "description": "Unencrypted credentials for accessing device.", + "type": "object", + "properties": { + "jobName": { + "description": "Name of the job.", + "type": "string", + "readOnly": true + }, + "jobSecrets": { + "$ref": "#/definitions/JobSecrets", + "description": "Secrets related to this job.", + "readOnly": true + } + } + }, + "UnencryptedCredentialsList": { + "description": "List of unencrypted credentials for accessing device.", + "type": "object", + "properties": { + "value": { + "description": "List of unencrypted credentials.", + "type": "array", + "items": { + "$ref": "#/definitions/UnencryptedCredentials" + } + }, + "nextLink": { + "description": "Link for the next set of unencrypted credentials.", + "type": "string" + } + } + }, + "UpdateJobDetails": { + "description": "Job details for update.", + "type": "object", + "properties": { + "contactDetails": { + "$ref": "#/definitions/ContactDetails", + "description": "Contact details for notification and shipping." + }, + "shippingAddress": { + "$ref": "#/definitions/ShippingAddress", + "description": "Shipping address of the customer." + }, + "keyEncryptionKey": { + "$ref": "#/definitions/KeyEncryptionKey", + "description": "Key encryption key for the job." + } + } + }, + "UpdateJobProperties": { + "description": "Job Properties for update", + "type": "object", + "properties": { + "details": { + "$ref": "#/definitions/UpdateJobDetails", + "description": "Details of a job to be updated." + } + } + }, + "UserAssignedIdentity": { + "description": "Class defining User assigned identity details.", + "type": "object", + "properties": { + "principalId": { + "description": "The principal id of user assigned identity.", + "type": "string", + "readOnly": true + }, + "clientId": { + "description": "The client id of user assigned identity.", + "type": "string", + "readOnly": true + } + } + }, + "UserAssignedProperties": { + "description": "User assigned identity properties.", + "type": "object", + "properties": { + "resourceId": { + "description": "Arm resource id for user assigned identity to be used to fetch MSI token.", + "type": "string" + } + } + }, + "ValidateAddress": { + "description": "The requirements to validate customer address where the device needs to be shipped.", + "required": [ + "shippingAddress", + "deviceType", + "validationType" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ValidationInputRequest" + } + ], + "properties": { + "shippingAddress": { + "$ref": "#/definitions/ShippingAddress", + "description": "Shipping address of the customer." + }, + "deviceType": { + "description": "Device type to be used for the job.", + "enum": [ + "DataBox", + "DataBoxDisk", + "DataBoxHeavy" + ], + "type": "string", + "x-ms-enum": { + "name": "SkuName", + "modelAsExtensible": true, + "values": [ + { + "value": "DataBox", + "description": "Data Box." + }, + { + "value": "DataBoxDisk", + "description": "Data Box Disk." + }, + { + "value": "DataBoxHeavy", + "description": "Data Box Heavy." + } + ] + } + }, + "transportPreferences": { + "$ref": "#/definitions/TransportPreferences", + "description": "Preferences related to the shipment logistics of the sku." + } + }, + "x-ms-discriminator-value": "ValidateAddress" + }, + "ValidationInputRequest": { + "description": "Minimum fields that must be present in any type of validation request.", + "required": [ + "validationType" + ], + "type": "object", + "properties": { + "validationType": { + "description": "Identifies the type of validation request.", + "enum": [ + "ValidateAddress", + "ValidateSubscriptionIsAllowedToCreateJob", + "ValidatePreferences", + "ValidateCreateOrderLimit", + "ValidateSkuAvailability", + "ValidateDataTransferDetails" + ], + "type": "string", + "x-ms-enum": { + "name": "ValidationInputDiscriminator", + "modelAsExtensible": true, + "values": [ + { + "value": "ValidateAddress", + "description": "Identify request and response of address validation." + }, + { + "value": "ValidateSubscriptionIsAllowedToCreateJob", + "description": "Identify request and response for validation of subscription permission to create job." + }, + { + "value": "ValidatePreferences", + "description": "Identify request and response of preference validation." + }, + { + "value": "ValidateCreateOrderLimit", + "description": "Identify request and response of create order limit for subscription validation." + }, + { + "value": "ValidateSkuAvailability", + "description": "Identify request and response of active job limit for sku availability." + }, + { + "value": "ValidateDataTransferDetails", + "description": "Identify request and response of data transfer details validation." + } + ] + } + } + }, + "discriminator": "validationType" + }, + "ValidationInputResponse": { + "description": "Minimum properties that should be present in each individual validation response.", + "required": [ + "validationType" + ], + "type": "object", + "properties": { + "validationType": { + "description": "Identifies the type of validation response.", + "enum": [ + "ValidateAddress", + "ValidateSubscriptionIsAllowedToCreateJob", + "ValidatePreferences", + "ValidateCreateOrderLimit", + "ValidateSkuAvailability", + "ValidateDataTransferDetails" + ], + "type": "string", + "x-ms-enum": { + "name": "ValidationInputDiscriminator", + "modelAsExtensible": true, + "values": [ + { + "value": "ValidateAddress", + "description": "Identify request and response of address validation." + }, + { + "value": "ValidateSubscriptionIsAllowedToCreateJob", + "description": "Identify request and response for validation of subscription permission to create job." + }, + { + "value": "ValidatePreferences", + "description": "Identify request and response of preference validation." + }, + { + "value": "ValidateCreateOrderLimit", + "description": "Identify request and response of create order limit for subscription validation." + }, + { + "value": "ValidateSkuAvailability", + "description": "Identify request and response of active job limit for sku availability." + }, + { + "value": "ValidateDataTransferDetails", + "description": "Identify request and response of data transfer details validation." + } + ] + } + }, + "error": { + "$ref": "#/definitions/CloudError", + "description": "Error code and message of validation response.", + "readOnly": true + } + }, + "discriminator": "validationType" + }, + "ValidationRequest": { + "description": "Minimum request requirement of any validation category.", + "required": [ + "validationCategory", + "individualRequestDetails" + ], + "type": "object", + "properties": { + "validationCategory": { + "description": "Identify the nature of validation.", + "enum": [ + "JobCreationValidation" + ], + "type": "string", + "x-ms-enum": { + "name": "ValidationCategory", + "modelAsExtensible": true, + "values": [ + { + "value": "JobCreationValidation", + "description": "Identify request of pre-job creation validations." + } + ] + } + }, + "individualRequestDetails": { + "description": "List of request details contain validationType and its request as key and value respectively.", + "type": "array", + "items": { + "$ref": "#/definitions/ValidationInputRequest" + } + } + }, + "discriminator": "validationCategory" + }, + "ValidationResponse": { + "description": "Response of pre job creation validations.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/ValidationResponseProperties", + "description": "Properties of pre job creation validation response.", + "readOnly": true, + "x-ms-client-flatten": true + } + } + }, + "ValidationResponseProperties": { + "description": "Properties of pre job creation validation response.", + "type": "object", + "properties": { + "status": { + "description": "Overall validation status.", + "enum": [ + "AllValidToProceed", + "InputsRevisitRequired", + "CertainInputValidationsSkipped" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "OverallValidationStatus", + "modelAsExtensible": true, + "values": [ + { + "value": "AllValidToProceed", + "description": "Every input request is valid." + }, + { + "value": "InputsRevisitRequired", + "description": "Some input requests are not valid." + }, + { + "value": "CertainInputValidationsSkipped", + "description": "Certain input validations skipped." + } + ] + } + }, + "individualResponseDetails": { + "description": "List of response details contain validationType and its response as key and value respectively.", + "type": "array", + "items": { + "$ref": "#/definitions/ValidationInputResponse" + }, + "readOnly": true + } + } + } + }, + "parameters": { + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "The API Version", + "required": true, + "type": "string" + }, + "jobNameParameter": { + "name": "jobName", + "in": "path", + "description": "The name of the job Resource within the specified resource group. job names must be between 3 and 24 characters in length and use any alphanumeric and underscore only", + "required": true, + "type": "string", + "maxLength": 24, + "minLength": 3, + "pattern": "^[-\\w\\.]+$", + "x-ms-parameter-location": "method" + }, + "locationParameter": { + "name": "location", + "in": "path", + "description": "The location of the resource", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "The Resource Group Name", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "The Subscription Id", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/AvailableSkusPost.json b/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/AvailableSkusPost.json new file mode 100644 index 000000000000..b152fbd9b733 --- /dev/null +++ b/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/AvailableSkusPost.json @@ -0,0 +1,280 @@ +{ + "parameters": { + "subscriptionId": "fa68082f-8ff7-4a25-95c7-ce9da541242f", + "resourceGroupName": "bvttoolrg6", + "location": "westus", + "api-version": "2020-11-01", + "x-ms-client-request-id": [ + "ce815189-a9cc-4288-8166-d78f211bed5a" + ], + "Accept-Language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.29017.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.18363.", + "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.1.0" + ], + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "84" + ], + "availableSkuRequest": { + "transferType": "ImportToAzure", + "country": "US", + "location": "westus" + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "sku": { + "name": "DataBox" + }, + "enabled": true, + "properties": { + "dataLocationToServiceLocationMap": [ + { + "dataLocation": "westus", + "serviceLocation": "westus" + }, + { + "dataLocation": "centralus", + "serviceLocation": "westus" + }, + { + "dataLocation": "eastus", + "serviceLocation": "westus" + }, + { + "dataLocation": "eastus2", + "serviceLocation": "westus" + }, + { + "dataLocation": "northcentralus", + "serviceLocation": "westus" + }, + { + "dataLocation": "southcentralus", + "serviceLocation": "westus" + }, + { + "dataLocation": "westcentralus", + "serviceLocation": "westus" + }, + { + "dataLocation": "westus2", + "serviceLocation": "westus" + }, + { + "dataLocation": "centraluseuap", + "serviceLocation": "centraluseuap" + }, + { + "dataLocation": "eastus2euap", + "serviceLocation": "eastus2euap" + } + ], + "capacity": { + "usable": "80", + "maximum": "100" + }, + "costs": [ + { + "meterId": "0cf23ffc-0b64-49e6-9bdd-1db885349042", + "meterType": "DataBoxServiceFee", + "multiplier": 1 + }, + { + "meterId": "a701f058-119b-4713-a923-bed7da4b7801", + "meterType": "DataBoxShippingFee", + "multiplier": 1 + }, + { + "meterId": "049fa331-0a48-4a81-9991-a6bef3c79fed", + "meterType": "DataBoxExtraDayFee", + "multiplier": 1 + }, + { + "meterId": "c3ea978d-6a0a-4632-b094-4fffcafcb057", + "meterType": "DataBoxLostOrDamagedDeviceFee", + "multiplier": 1 + } + ], + "apiVersions": [ + "2018-01-01" + ], + "disabledReason": "None" + } + }, + { + "sku": { + "name": "DataBoxDisk" + }, + "enabled": true, + "properties": { + "dataLocationToServiceLocationMap": [ + { + "dataLocation": "westus", + "serviceLocation": "westus" + }, + { + "dataLocation": "centralus", + "serviceLocation": "westus" + }, + { + "dataLocation": "eastus", + "serviceLocation": "westus" + }, + { + "dataLocation": "eastus2", + "serviceLocation": "westus" + }, + { + "dataLocation": "northcentralus", + "serviceLocation": "westus" + }, + { + "dataLocation": "southcentralus", + "serviceLocation": "westus" + }, + { + "dataLocation": "westcentralus", + "serviceLocation": "westus" + }, + { + "dataLocation": "westus2", + "serviceLocation": "westus" + }, + { + "dataLocation": "centraluseuap", + "serviceLocation": "centraluseuap" + }, + { + "dataLocation": "eastus2euap", + "serviceLocation": "eastus2euap" + } + ], + "capacity": { + "usable": "35", + "maximum": "40" + }, + "costs": [ + { + "meterId": "d95cd8b5-b6f1-4cd9-ae86-a016d1945d6f", + "meterType": "DataBoxDiskServiceFee", + "multiplier": 1 + }, + { + "meterId": "4b8cf572-cb04-4ef3-9528-2cda4e9b544e", + "meterType": "DataBoxDiskShippingFee", + "multiplier": 1 + }, + { + "meterId": "b6ae9bbf-815d-49dd-bb2b-77c497b72ba4", + "meterType": "DataBoxDiskDailyUsageFee", + "multiplier": 1 + }, + { + "meterId": "08bc0ea1-6c82-421b-b953-2a7a65810d2e", + "meterType": "DataBoxDiskLostDeviceFee", + "multiplier": 1 + } + ], + "apiVersions": [ + "2018-01-01" + ], + "disabledReason": "None" + } + }, + { + "sku": { + "name": "DataBoxHeavy" + }, + "enabled": true, + "properties": { + "dataLocationToServiceLocationMap": [ + { + "dataLocation": "westus", + "serviceLocation": "westus" + }, + { + "dataLocation": "centralus", + "serviceLocation": "westus" + }, + { + "dataLocation": "eastus", + "serviceLocation": "westus" + }, + { + "dataLocation": "eastus2", + "serviceLocation": "westus" + }, + { + "dataLocation": "northcentralus", + "serviceLocation": "westus" + }, + { + "dataLocation": "southcentralus", + "serviceLocation": "westus" + }, + { + "dataLocation": "westcentralus", + "serviceLocation": "westus" + }, + { + "dataLocation": "westus2", + "serviceLocation": "westus" + }, + { + "dataLocation": "centraluseuap", + "serviceLocation": "centraluseuap" + }, + { + "dataLocation": "eastus2euap", + "serviceLocation": "eastus2euap" + } + ], + "capacity": { + "usable": "800", + "maximum": "1000" + }, + "costs": [ + { + "meterId": "d0dccaaf-3de9-4c7a-ba97-f83551b90126", + "meterType": "DataBoxHeavyServiceFee", + "multiplier": 1 + }, + { + "meterId": "7b49d11f-d4f7-4029-a197-04998fd282f9", + "meterType": "DataBoxHeavyShippingFee", + "multiplier": 1 + }, + { + "meterId": "c2c66d53-11b4-4f11-9642-43c7c336f0b7", + "meterType": "DataBoxHeavyExtraDayFee", + "multiplier": 1 + }, + { + "meterId": "188dcd7e-fbd7-4a41-aa42-162b81b0510f", + "meterType": "DataBoxHeavyLostOrDamagedDeviceFee", + "multiplier": 1 + } + ], + "apiVersions": [ + "2018-01-01" + ], + "disabledReason": "None", + "requiredFeature": "HeavyCreateAccess" + } + } + ] + } + } + } +} diff --git a/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/BookShipmentPickupPost.json b/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/BookShipmentPickupPost.json new file mode 100644 index 000000000000..bec928ad7c87 --- /dev/null +++ b/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/BookShipmentPickupPost.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "fa68082f-8ff7-4a25-95c7-ce9da541242f", + "resourceGroupName": "bvttoolrg6", + "jobName": "TJ-636646322037905056", + "api-version": "2019-09-01", + "x-ms-client-request-id": [ + "e1437186-b41d-492e-9b7a-e197c28a517a" + ], + "Accept-Language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.27817.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.18362.", + "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.2.0" + ], + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "118" + ], + "shipmentPickUpRequest": { + "startTime": "2019-09-20T18:30:00Z", + "endTime": "2019-09-22T18:30:00Z", + "shipmentLocation": "Front desk" + } + }, + "responses": { + "200": { + "body": { + "confirmationNumber": "2929602E9CP", + "readyByTime": "2019-09-20T18:30:00Z" + } + } + } +} diff --git a/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/JobMitigate.json b/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/JobMitigate.json new file mode 100644 index 000000000000..eb46de6c1f65 --- /dev/null +++ b/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/JobMitigate.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "fa68082f-8ff7-4a25-95c7-ce9da541242f", + "resourceGroupName": "SdkRg9836", + "jobName": "SdkJob8367", + "api-version": "2021-03-01", + "$expand": "details", + "x-ms-client-request-id": [ + "71d282dc-56a0-402b-a322-3b50c89711b5" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.1.0" + ], + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "60" + ], + "mitigateJobRequest": { + "customerResolutionCode": "MoveToCleanUpDevice" + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/JobsCancelPost.json b/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/JobsCancelPost.json new file mode 100644 index 000000000000..9203b2b65bf0 --- /dev/null +++ b/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/JobsCancelPost.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "fa68082f-8ff7-4a25-95c7-ce9da541242f", + "resourceGroupName": "SdkRg5154", + "jobName": "SdkJob952", + "api-version": "2020-11-01", + "$expand": "details", + "x-ms-client-request-id": [ + "95fc15f7-4976-46bb-8370-74ed4cb676be" + ], + "Accept-Language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.29017.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.18363.", + "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.1.0" + ], + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "30" + ], + "cancellationReason": { + "reason": "CancelTest" + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/JobsCreate.json b/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/JobsCreate.json new file mode 100644 index 000000000000..00263e181498 --- /dev/null +++ b/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/JobsCreate.json @@ -0,0 +1,184 @@ +{ + "parameters": { + "subscriptionId": "fa68082f-8ff7-4a25-95c7-ce9da541242f", + "resourceGroupName": "SdkRg5154", + "jobName": "SdkJob952", + "api-version": "2020-11-01", + "x-ms-client-request-id": [ + "04f2835f-a2a2-4f25-96df-568460e5be24" + ], + "Accept-Language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.29017.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.18363.", + "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.1.0" + ], + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "1064" + ], + "jobResource": { + "properties": { + "transferType": "ImportToAzure", + "details": { + "jobDetailsType": "DataBox", + "contactDetails": { + "contactName": "Public SDK Test", + "phone": "1234567890", + "phoneExtension": "1234", + "emailList": [ + "testing@microsoft.com" + ] + }, + "shippingAddress": { + "streetAddress1": "16 TOWNSEND ST", + "streetAddress2": "Unit 1", + "city": "San Francisco", + "stateOrProvince": "CA", + "country": "US", + "postalCode": "94107", + "companyName": "Microsoft", + "addressType": "Commercial" + }, + "dataImportDetails": [ + { + "accountDetails": { + "dataAccountType": "StorageAccount", + "storageAccountId": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourcegroups/databoxbvt/providers/Microsoft.Storage/storageAccounts/databoxbvttestaccount" + } + } + ] + } + }, + "location": "westus", + "sku": { + "name": "DataBox" + } + } + }, + "responses": { + "202": {}, + "200": { + "body": { + "properties": { + "transferType": "ImportToAzure", + "isCancellable": true, + "isDeletable": false, + "isShippingAddressEditable": true, + "status": "DeviceOrdered", + "startTime": "2019-09-21T14:49:49.0027611+05:30", + "details": { + "copyProgress": [], + "jobStages": [ + { + "stageName": "DeviceOrdered", + "displayName": "Ordered", + "stageStatus": "Succeeded", + "stageTime": "2019-09-21T14:49:52.3995743+05:30" + }, + { + "stageName": "DevicePrepared", + "displayName": "Processed", + "stageStatus": "None" + }, + { + "stageName": "Dispatched", + "displayName": "Dispatched", + "stageStatus": "None" + }, + { + "stageName": "Delivered", + "displayName": "Delivered", + "stageStatus": "None" + }, + { + "stageName": "PickedUp", + "displayName": "Picked up", + "stageStatus": "None" + }, + { + "stageName": "AtAzureDC", + "displayName": "Received", + "stageStatus": "None" + }, + { + "stageName": "DataCopy", + "displayName": "Data copy in progress", + "stageStatus": "None" + }, + { + "stageName": "Completed", + "displayName": "Completed", + "stageStatus": "None" + } + ], + "contactDetails": { + "contactName": "Public SDK Test", + "phone": "1234567890", + "phoneExtension": "1234", + "emailList": [ + "testing@microsoft.com" + ], + "notificationPreference": [ + { + "stageName": "DevicePrepared", + "sendNotification": true + }, + { + "stageName": "Dispatched", + "sendNotification": true + }, + { + "stageName": "Delivered", + "sendNotification": true + }, + { + "stageName": "PickedUp", + "sendNotification": true + }, + { + "stageName": "AtAzureDC", + "sendNotification": true + }, + { + "stageName": "DataCopy", + "sendNotification": true + } + ] + }, + "shippingAddress": { + "streetAddress1": "16 TOWNSEND ST", + "streetAddress2": "Unit 1", + "city": "San Francisco", + "stateOrProvince": "CA", + "country": "US", + "postalCode": "94107", + "companyName": "Microsoft", + "addressType": "Commercial" + }, + "jobDetailsType": "DataBox", + "copyLogDetails": [] + }, + "deliveryType": "NonScheduled", + "deliveryInfo": { + "scheduledDateTime": "0001-01-01T05:30:00+05:30" + }, + "isCancellableWithoutFee": true + }, + "location": "westus", + "tags": {}, + "sku": { + "name": "DataBox" + }, + "name": "SdkJob952", + "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourceGroups/SdkRg5154/providers/Microsoft.DataBox/jobs/SdkJob952", + "type": "Microsoft.DataBox/jobs" + } + } + } +} diff --git a/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/JobsCreateDevicePassword.json b/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/JobsCreateDevicePassword.json new file mode 100644 index 000000000000..93da7704427d --- /dev/null +++ b/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/JobsCreateDevicePassword.json @@ -0,0 +1,186 @@ +{ + "parameters": { + "subscriptionId": "fa68082f-8ff7-4a25-95c7-ce9da541242f", + "resourceGroupName": "SdkRg7478", + "jobName": "SdkJob9640", + "api-version": "2020-11-01", + "x-ms-client-request-id": [ + "c4c8f926-ebbe-4c07-ae1a-b716911058df" + ], + "Accept-Language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.29017.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.18363.", + "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.1.0" + ], + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "1168" + ], + "jobResource": { + "properties": { + "transferType": "ImportToAzure", + "details": { + "jobDetailsType": "DataBox", + "devicePassword": "", + "contactDetails": { + "contactName": "Public SDK Test", + "phone": "1234567890", + "phoneExtension": "1234", + "emailList": [ + "testing@microsoft.com" + ] + }, + "shippingAddress": { + "streetAddress1": "16 TOWNSEND ST", + "streetAddress2": "Unit 1", + "city": "San Francisco", + "stateOrProvince": "CA", + "country": "US", + "postalCode": "94107", + "companyName": "Microsoft", + "addressType": "Commercial" + }, + "dataImportDetails": [ + { + "accountDetails": { + "dataAccountType": "StorageAccount", + "storageAccountId": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourceGroups/databoxbvt1/providers/Microsoft.Storage/storageAccounts/databoxbvttestaccount2", + "sharePassword": "" + } + } + ] + } + }, + "location": "westus", + "sku": { + "name": "DataBox" + } + } + }, + "responses": { + "202": {}, + "200": { + "body": { + "properties": { + "transferType": "ImportToAzure", + "isCancellable": true, + "isDeletable": false, + "isShippingAddressEditable": true, + "status": "DeviceOrdered", + "startTime": "2019-09-21T14:49:49.0027611+05:30", + "details": { + "copyProgress": [], + "jobStages": [ + { + "stageName": "DeviceOrdered", + "displayName": "Ordered", + "stageStatus": "Succeeded", + "stageTime": "2019-09-21T14:49:52.3995743+05:30" + }, + { + "stageName": "DevicePrepared", + "displayName": "Processed", + "stageStatus": "None" + }, + { + "stageName": "Dispatched", + "displayName": "Dispatched", + "stageStatus": "None" + }, + { + "stageName": "Delivered", + "displayName": "Delivered", + "stageStatus": "None" + }, + { + "stageName": "PickedUp", + "displayName": "Picked up", + "stageStatus": "None" + }, + { + "stageName": "AtAzureDC", + "displayName": "Received", + "stageStatus": "None" + }, + { + "stageName": "DataCopy", + "displayName": "Data copy in progress", + "stageStatus": "None" + }, + { + "stageName": "Completed", + "displayName": "Completed", + "stageStatus": "None" + } + ], + "contactDetails": { + "contactName": "Public SDK Test", + "phone": "1234567890", + "phoneExtension": "1234", + "emailList": [ + "testing@microsoft.com" + ], + "notificationPreference": [ + { + "stageName": "DevicePrepared", + "sendNotification": true + }, + { + "stageName": "Dispatched", + "sendNotification": true + }, + { + "stageName": "Delivered", + "sendNotification": true + }, + { + "stageName": "PickedUp", + "sendNotification": true + }, + { + "stageName": "AtAzureDC", + "sendNotification": true + }, + { + "stageName": "DataCopy", + "sendNotification": true + } + ] + }, + "shippingAddress": { + "streetAddress1": "16 TOWNSEND ST", + "streetAddress2": "Unit 1", + "city": "San Francisco", + "stateOrProvince": "CA", + "country": "US", + "postalCode": "94107", + "companyName": "Microsoft", + "addressType": "Commercial" + }, + "jobDetailsType": "DataBox", + "copyLogDetails": [] + }, + "deliveryType": "NonScheduled", + "deliveryInfo": { + "scheduledDateTime": "0001-01-01T05:30:00+05:30" + }, + "isCancellableWithoutFee": true + }, + "location": "westus", + "tags": {}, + "sku": { + "name": "DataBox" + }, + "name": "SdkJob9640", + "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourceGroups/SdkRg7478/providers/Microsoft.DataBox/jobs/SdkJob9640", + "type": "Microsoft.DataBox/jobs" + } + } + } +} diff --git a/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/JobsCreateDoubleEncryption.json b/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/JobsCreateDoubleEncryption.json new file mode 100644 index 000000000000..3710dbc740bf --- /dev/null +++ b/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/JobsCreateDoubleEncryption.json @@ -0,0 +1,189 @@ +{ + "parameters": { + "subscriptionId": "fa68082f-8ff7-4a25-95c7-ce9da541242f", + "resourceGroupName": "SdkRg608", + "jobName": "SdkJob6599", + "api-version": "2020-11-01", + "x-ms-client-request-id": [ + "c9c24c55-fd51-4374-839e-60ee5f0d8832" + ], + "Accept-Language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.29220.03", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19041.", + "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.2.0" + ], + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "1186" + ], + "jobResource": { + "properties": { + "transferType": "ImportToAzure", + "details": { + "jobDetailsType": "DataBox", + "contactDetails": { + "contactName": "Public SDK Test", + "phone": "1234567890", + "phoneExtension": "1234", + "emailList": [ + "testing@microsoft.com" + ] + }, + "shippingAddress": { + "streetAddress1": "16 TOWNSEND ST", + "streetAddress2": "Unit 1", + "city": "San Francisco", + "stateOrProvince": "CA", + "country": "US", + "postalCode": "94107", + "companyName": "Microsoft", + "addressType": "Commercial" + }, + "dataImportDetails": [ + { + "accountDetails": { + "dataAccountType": "StorageAccount", + "storageAccountId": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourcegroups/databoxbvt/providers/Microsoft.Storage/storageAccounts/databoxbvttestaccount" + } + } + ], + "preferences": { + "encryptionPreferences": { + "doubleEncryption": "Enabled" + } + } + } + }, + "location": "westus", + "sku": { + "name": "DataBox" + } + } + }, + "responses": { + "202": {}, + "200": { + "body": { + "properties": { + "transferType": "ExportFromAzure", + "isCancellable": true, + "isDeletable": false, + "isShippingAddressEditable": true, + "status": "DeviceOrdered", + "startTime": "2019-09-21T14:49:49.0027611+05:30", + "details": { + "copyProgress": [], + "jobStages": [ + { + "stageName": "DeviceOrdered", + "displayName": "Ordered", + "stageStatus": "Succeeded", + "stageTime": "2019-09-21T14:49:52.3995743+05:30" + }, + { + "stageName": "DevicePrepared", + "displayName": "Processed", + "stageStatus": "None" + }, + { + "stageName": "DataCopy", + "displayName": "Data copy in progress", + "stageStatus": "None" + }, + { + "stageName": "Dispatched", + "displayName": "Dispatched", + "stageStatus": "None" + }, + { + "stageName": "Delivered", + "displayName": "Delivered", + "stageStatus": "None" + }, + { + "stageName": "PickedUp", + "displayName": "Picked up", + "stageStatus": "None" + }, + { + "stageName": "AtAzureDC", + "displayName": "Received", + "stageStatus": "None" + }, + { + "stageName": "Completed", + "displayName": "Completed", + "stageStatus": "None" + } + ], + "contactDetails": { + "contactName": "Public SDK Test", + "phone": "1234567890", + "phoneExtension": "1234", + "emailList": [ + "testing@microsoft.com" + ], + "notificationPreference": [ + { + "stageName": "DevicePrepared", + "sendNotification": true + }, + { + "stageName": "DataCopy", + "sendNotification": true + }, + { + "stageName": "Dispatched", + "sendNotification": true + }, + { + "stageName": "Delivered", + "sendNotification": true + }, + { + "stageName": "PickedUp", + "sendNotification": true + }, + { + "stageName": "AtAzureDC", + "sendNotification": true + } + ] + }, + "shippingAddress": { + "streetAddress1": "16 TOWNSEND ST", + "streetAddress2": "Unit 1", + "city": "San Francisco", + "stateOrProvince": "CA", + "country": "US", + "postalCode": "94107", + "companyName": "Microsoft", + "addressType": "Commercial" + }, + "jobDetailsType": "DataBox", + "copyLogDetails": [] + }, + "deliveryType": "NonScheduled", + "deliveryInfo": { + "scheduledDateTime": "0001-01-01T05:30:00+05:30" + }, + "isCancellableWithoutFee": true + }, + "location": "westus", + "tags": {}, + "sku": { + "name": "DataBox" + }, + "name": "SdkJob6599", + "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourceGroups/SdkRg608/providers/Microsoft.DataBox/jobs/SdkJob6599", + "type": "Microsoft.DataBox/jobs" + } + } + } +} diff --git a/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/JobsCreateExport.json b/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/JobsCreateExport.json new file mode 100644 index 000000000000..4356fc39fd85 --- /dev/null +++ b/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/JobsCreateExport.json @@ -0,0 +1,194 @@ +{ + "parameters": { + "subscriptionId": "fa68082f-8ff7-4a25-95c7-ce9da541242f", + "resourceGroupName": "SdkRg8091", + "jobName": "SdkJob6429", + "api-version": "2020-11-01", + "x-ms-client-request-id": [ + "80eaafc7-e8b7-4c5a-ad81-b1ecb9573cd4" + ], + "Accept-Language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.29017.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.18363.", + "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.1.0" + ], + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "1395" + ], + "jobResource": { + "properties": { + "transferType": "ExportFromAzure", + "details": { + "jobDetailsType": "DataBox", + "contactDetails": { + "contactName": "Public SDK Test", + "phone": "1234567890", + "phoneExtension": "1234", + "emailList": [ + "testing@microsoft.com" + ] + }, + "shippingAddress": { + "streetAddress1": "16 TOWNSEND ST", + "streetAddress2": "Unit 1", + "city": "San Francisco", + "stateOrProvince": "CA", + "country": "US", + "postalCode": "94107", + "companyName": "Microsoft", + "addressType": "Commercial" + }, + "dataExportDetails": [ + { + "transferConfiguration": { + "transferConfigurationType": "TransferAll", + "transferAllDetails": { + "include": { + "dataAccountType": "StorageAccount", + "transferAllBlobs": true, + "transferAllFiles": true + } + } + }, + "accountDetails": { + "dataAccountType": "StorageAccount", + "storageAccountId": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourceGroups/akvenkat/providers/Microsoft.Storage/storageAccounts/aaaaaa2" + } + } + ] + } + }, + "location": "westus", + "sku": { + "name": "DataBox" + } + } + }, + "responses": { + "202": {}, + "200": { + "body": { + "properties": { + "transferType": "ExportFromAzure", + "isCancellable": true, + "isDeletable": false, + "isShippingAddressEditable": true, + "status": "DeviceOrdered", + "startTime": "2019-09-21T14:49:49.0027611+05:30", + "details": { + "copyProgress": [], + "jobStages": [ + { + "stageName": "DeviceOrdered", + "displayName": "Ordered", + "stageStatus": "Succeeded", + "stageTime": "2019-09-21T14:49:52.3995743+05:30" + }, + { + "stageName": "DevicePrepared", + "displayName": "Processed", + "stageStatus": "None" + }, + { + "stageName": "DataCopy", + "displayName": "Data copy in progress", + "stageStatus": "None" + }, + { + "stageName": "Dispatched", + "displayName": "Dispatched", + "stageStatus": "None" + }, + { + "stageName": "Delivered", + "displayName": "Delivered", + "stageStatus": "None" + }, + { + "stageName": "PickedUp", + "displayName": "Picked up", + "stageStatus": "None" + }, + { + "stageName": "AtAzureDC", + "displayName": "Received", + "stageStatus": "None" + }, + { + "stageName": "Completed", + "displayName": "Completed", + "stageStatus": "None" + } + ], + "contactDetails": { + "contactName": "Public SDK Test", + "phone": "1234567890", + "phoneExtension": "1234", + "emailList": [ + "testing@microsoft.com" + ], + "notificationPreference": [ + { + "stageName": "DevicePrepared", + "sendNotification": true + }, + { + "stageName": "DataCopy", + "sendNotification": true + }, + { + "stageName": "Dispatched", + "sendNotification": true + }, + { + "stageName": "Delivered", + "sendNotification": true + }, + { + "stageName": "PickedUp", + "sendNotification": true + }, + { + "stageName": "AtAzureDC", + "sendNotification": true + } + ] + }, + "shippingAddress": { + "streetAddress1": "16 TOWNSEND ST", + "streetAddress2": "Unit 1", + "city": "San Francisco", + "stateOrProvince": "CA", + "country": "US", + "postalCode": "94107", + "companyName": "Microsoft", + "addressType": "Commercial" + }, + "jobDetailsType": "DataBox", + "copyLogDetails": [] + }, + "deliveryType": "NonScheduled", + "deliveryInfo": { + "scheduledDateTime": "0001-01-01T05:30:00+05:30" + }, + "isCancellableWithoutFee": true + }, + "location": "westus", + "tags": {}, + "sku": { + "name": "DataBox" + }, + "name": "SdkJob6429", + "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourceGroups/SdkRg8091/providers/Microsoft.DataBox/jobs/SdkJob6429", + "type": "Microsoft.DataBox/jobs" + } + } + } +} diff --git a/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/JobsCreateWithUserAssignedIdentity.json b/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/JobsCreateWithUserAssignedIdentity.json new file mode 100644 index 000000000000..ccc4f82aff22 --- /dev/null +++ b/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/JobsCreateWithUserAssignedIdentity.json @@ -0,0 +1,190 @@ +{ + "parameters": { + "subscriptionId": "fa68082f-8ff7-4a25-95c7-ce9da541242f", + "resourceGroupName": "SdkRg7552", + "jobName": "SdkJob5337", + "api-version": "2020-11-01", + "x-ms-client-request-id": [ + "618b064d-967c-4156-a8dd-a9867cc22af9" + ], + "Accept-Language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.29220.03", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19041.", + "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.2.0" + ], + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "1318" + ], + "jobResource": { + "properties": { + "transferType": "ImportToAzure", + "details": { + "jobDetailsType": "DataBox", + "contactDetails": { + "contactName": "Public SDK Test", + "phone": "1234567890", + "phoneExtension": "1234", + "emailList": [ + "testing@microsoft.com" + ] + }, + "shippingAddress": { + "streetAddress1": "16 TOWNSEND ST", + "streetAddress2": "Unit 1", + "city": "San Francisco", + "stateOrProvince": "CA", + "country": "US", + "postalCode": "94107", + "companyName": "Microsoft", + "addressType": "Commercial" + }, + "dataImportDetails": [ + { + "accountDetails": { + "dataAccountType": "StorageAccount", + "storageAccountId": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourceGroups/databoxbvt1/providers/Microsoft.Storage/storageAccounts/databoxbvttestaccount2" + } + } + ] + } + }, + "location": "westus", + "sku": { + "name": "DataBox" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourceGroups/akvenkat/providers/Microsoft.ManagedIdentity/userAssignedIdentities/sdkIdentity": {} + } + } + } + }, + "responses": { + "202": {}, + "200": { + "body": { + "properties": { + "transferType": "ExportFromAzure", + "isCancellable": true, + "isDeletable": false, + "isShippingAddressEditable": true, + "status": "DeviceOrdered", + "startTime": "2019-09-21T14:49:49.0027611+05:30", + "details": { + "copyProgress": [], + "jobStages": [ + { + "stageName": "DeviceOrdered", + "displayName": "Ordered", + "stageStatus": "Succeeded", + "stageTime": "2019-09-21T14:49:52.3995743+05:30" + }, + { + "stageName": "DevicePrepared", + "displayName": "Processed", + "stageStatus": "None" + }, + { + "stageName": "DataCopy", + "displayName": "Data copy in progress", + "stageStatus": "None" + }, + { + "stageName": "Dispatched", + "displayName": "Dispatched", + "stageStatus": "None" + }, + { + "stageName": "Delivered", + "displayName": "Delivered", + "stageStatus": "None" + }, + { + "stageName": "PickedUp", + "displayName": "Picked up", + "stageStatus": "None" + }, + { + "stageName": "AtAzureDC", + "displayName": "Received", + "stageStatus": "None" + }, + { + "stageName": "Completed", + "displayName": "Completed", + "stageStatus": "None" + } + ], + "contactDetails": { + "contactName": "Public SDK Test", + "phone": "1234567890", + "phoneExtension": "1234", + "emailList": [ + "testing@microsoft.com" + ], + "notificationPreference": [ + { + "stageName": "DevicePrepared", + "sendNotification": true + }, + { + "stageName": "DataCopy", + "sendNotification": true + }, + { + "stageName": "Dispatched", + "sendNotification": true + }, + { + "stageName": "Delivered", + "sendNotification": true + }, + { + "stageName": "PickedUp", + "sendNotification": true + }, + { + "stageName": "AtAzureDC", + "sendNotification": true + } + ] + }, + "shippingAddress": { + "streetAddress1": "16 TOWNSEND ST", + "streetAddress2": "Unit 1", + "city": "San Francisco", + "stateOrProvince": "CA", + "country": "US", + "postalCode": "94107", + "companyName": "Microsoft", + "addressType": "Commercial" + }, + "jobDetailsType": "DataBox", + "copyLogDetails": [] + }, + "deliveryType": "NonScheduled", + "deliveryInfo": { + "scheduledDateTime": "0001-01-01T05:30:00+05:30" + }, + "isCancellableWithoutFee": true + }, + "location": "westus", + "tags": {}, + "sku": { + "name": "DataBox" + }, + "name": "SdkJob5337", + "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourceGroups/SdkRg7552/providers/Microsoft.DataBox/jobs/SdkJob5337", + "type": "Microsoft.DataBox/jobs" + } + } + } +} diff --git a/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/JobsDelete.json b/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/JobsDelete.json new file mode 100644 index 000000000000..c408ddf7352f --- /dev/null +++ b/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/JobsDelete.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "fa68082f-8ff7-4a25-95c7-ce9da541242f", + "resourceGroupName": "SdkRg5154", + "jobName": "SdkJob952", + "api-version": "2020-11-01", + "$expand": "details", + "x-ms-client-request-id": [ + "f5c227e2-13d8-4ce9-9ef2-f3c63f6935b9" + ], + "Accept-Language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.29017.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.18363.", + "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.1.0" + ] + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/JobsGet.json b/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/JobsGet.json new file mode 100644 index 000000000000..c8dc2863f7df --- /dev/null +++ b/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/JobsGet.json @@ -0,0 +1,166 @@ +{ + "parameters": { + "subscriptionId": "fa68082f-8ff7-4a25-95c7-ce9da541242f", + "resourceGroupName": "SdkRg5154", + "jobName": "SdkJob952", + "api-version": "2020-11-01", + "$expand": "details", + "x-ms-client-request-id": [ + "e76214b0-6013-499e-8f91-3a287f421f2e" + ], + "Accept-Language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.29017.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.18363.", + "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.1.0" + ] + }, + "responses": { + "200": { + "body": { + "properties": { + "transferType": "ImportToAzure", + "isCancellable": true, + "isDeletable": false, + "isShippingAddressEditable": true, + "isPrepareToShipEnabled": true, + "status": "DeviceOrdered", + "startTime": "2020-08-07T10:50:36.3341513+05:30", + "details": { + "copyProgress": [], + "jobStages": [ + { + "stageName": "DeviceOrdered", + "displayName": "Ordered", + "stageStatus": "Succeeded", + "stageTime": "2020-08-07T10:50:40.1872217+05:30" + }, + { + "stageName": "DevicePrepared", + "displayName": "Processed", + "stageStatus": "None" + }, + { + "stageName": "Dispatched", + "displayName": "Dispatched", + "stageStatus": "None" + }, + { + "stageName": "Delivered", + "displayName": "Delivered", + "stageStatus": "None" + }, + { + "stageName": "PickedUp", + "displayName": "Picked up", + "stageStatus": "None" + }, + { + "stageName": "AtAzureDC", + "displayName": "Received", + "stageStatus": "None" + }, + { + "stageName": "DataCopy", + "displayName": "Data copy in progress", + "stageStatus": "None" + }, + { + "stageName": "Completed", + "displayName": "Completed", + "stageStatus": "None" + } + ], + "contactDetails": { + "contactName": "Public SDK Test", + "phone": "1234567890", + "phoneExtension": "1234", + "emailList": [ + "testing@microsoft.com" + ], + "notificationPreference": [ + { + "stageName": "DevicePrepared", + "sendNotification": true + }, + { + "stageName": "Dispatched", + "sendNotification": true + }, + { + "stageName": "Delivered", + "sendNotification": true + }, + { + "stageName": "PickedUp", + "sendNotification": true + }, + { + "stageName": "AtAzureDC", + "sendNotification": true + }, + { + "stageName": "DataCopy", + "sendNotification": true + } + ] + }, + "shippingAddress": { + "streetAddress1": "16 TOWNSEND ST", + "streetAddress2": "Unit 1", + "city": "San Francisco", + "stateOrProvince": "CA", + "country": "US", + "postalCode": "94107", + "companyName": "Microsoft", + "addressType": "Commercial" + }, + "deliveryPackage": { + "carrierName": "", + "trackingId": "", + "trackingUrl": "" + }, + "returnPackage": { + "carrierName": "", + "trackingId": "", + "trackingUrl": "" + }, + "dataImportDetails": [ + { + "accountDetails": { + "storageAccountId": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourcegroups/databoxbvt/providers/Microsoft.Storage/storageAccounts/databoxbvttestaccount", + "dataAccountType": "StorageAccount" + } + } + ], + "jobDetailsType": "DataBox", + "copyLogDetails": [], + "reverseShipmentLabelSasKey": "https://wusbeta.blob.core.windows.net/customer-reverse-shipment-instructions/CustomerShipmentInstructions_MicrosoftManaged.PDF?sv=2018-03-28&sr=b&sig=urwfAELvNV69IGHdcXlRCn6o3O3dWZQKaRipmoAdrI0%3D&st=2020-08-07T05%3A10%3A58Z&se=2020-08-08T05%3A20%3A58Z&sp=r", + "keyEncryptionKey": { + "kekType": "MicrosoftManaged" + } + }, + "deliveryType": "NonScheduled", + "deliveryInfo": { + "scheduledDateTime": "0001-01-01T05:30:00+05:30" + }, + "isCancellableWithoutFee": true + }, + "location": "westus", + "tags": {}, + "sku": { + "name": "DataBox" + }, + "identity": { + "type": "None" + }, + "name": "SdkJob952", + "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourceGroups/SdkRg5154/providers/Microsoft.DataBox/jobs/SdkJob952", + "type": "Microsoft.DataBox/jobs" + } + } + } +} diff --git a/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/JobsGetCmk.json b/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/JobsGetCmk.json new file mode 100644 index 000000000000..73882b877d1f --- /dev/null +++ b/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/JobsGetCmk.json @@ -0,0 +1,170 @@ +{ + "parameters": { + "subscriptionId": "fa68082f-8ff7-4a25-95c7-ce9da541242f", + "resourceGroupName": "SdkRg7937", + "jobName": "SdkJob1735", + "api-version": "2020-11-01", + "$expand": "details", + "x-ms-client-request-id": [ + "c8cf9d3e-55f1-488f-bcee-53f4939f44e8" + ], + "Accept-Language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.29017.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.18363.", + "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.1.0" + ] + }, + "responses": { + "200": { + "body": { + "properties": { + "transferType": "ImportToAzure", + "isCancellable": true, + "isDeletable": false, + "isShippingAddressEditable": true, + "isPrepareToShipEnabled": true, + "status": "DeviceOrdered", + "startTime": "2020-08-07T10:47:42.0009935+05:30", + "details": { + "copyProgress": [], + "jobStages": [ + { + "stageName": "DeviceOrdered", + "displayName": "Ordered", + "stageStatus": "Succeeded", + "stageTime": "2020-08-07T10:47:44.8736499+05:30" + }, + { + "stageName": "DevicePrepared", + "displayName": "Processed", + "stageStatus": "None" + }, + { + "stageName": "Dispatched", + "displayName": "Dispatched", + "stageStatus": "None" + }, + { + "stageName": "Delivered", + "displayName": "Delivered", + "stageStatus": "None" + }, + { + "stageName": "PickedUp", + "displayName": "Picked up", + "stageStatus": "None" + }, + { + "stageName": "AtAzureDC", + "displayName": "Received", + "stageStatus": "None" + }, + { + "stageName": "DataCopy", + "displayName": "Data copy in progress", + "stageStatus": "None" + }, + { + "stageName": "Completed", + "displayName": "Completed", + "stageStatus": "None" + } + ], + "contactDetails": { + "contactName": "Public SDK Test", + "phone": "1234567890", + "phoneExtension": "1234", + "emailList": [ + "testing@microsoft.com" + ], + "notificationPreference": [ + { + "stageName": "DevicePrepared", + "sendNotification": true + }, + { + "stageName": "Dispatched", + "sendNotification": true + }, + { + "stageName": "Delivered", + "sendNotification": true + }, + { + "stageName": "PickedUp", + "sendNotification": true + }, + { + "stageName": "AtAzureDC", + "sendNotification": true + }, + { + "stageName": "DataCopy", + "sendNotification": true + } + ] + }, + "shippingAddress": { + "streetAddress1": "16 TOWNSEND ST", + "streetAddress2": "Unit 1", + "city": "San Francisco", + "stateOrProvince": "CA", + "country": "US", + "postalCode": "94107", + "companyName": "Microsoft", + "addressType": "Commercial" + }, + "deliveryPackage": { + "carrierName": "", + "trackingId": "", + "trackingUrl": "" + }, + "returnPackage": { + "carrierName": "", + "trackingId": "", + "trackingUrl": "" + }, + "dataImportDetails": [ + { + "accountDetails": { + "storageAccountId": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourceGroups/databoxbvt1/providers/Microsoft.Storage/storageAccounts/databoxbvttestaccount2", + "dataAccountType": "StorageAccount" + } + } + ], + "jobDetailsType": "DataBox", + "copyLogDetails": [], + "reverseShipmentLabelSasKey": "https://wusbeta.blob.core.windows.net/customer-reverse-shipment-instructions/CustomerShipmentInstructions_MicrosoftManaged.PDF?sv=2018-03-28&sr=b&sig=JSZSeKrFrrwWbZ4zd7PNdGdNYKExKpxa98vRDDH6ZIk%3D&st=2020-08-07T05%3A08%3A51Z&se=2020-08-08T05%3A18%3A51Z&sp=r", + "keyEncryptionKey": { + "kekType": "CustomerManaged", + "kekUrl": "https://sdkkeyvault.vault.azure.net/keys/SSDKEY/", + "kekVaultResourceID": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourceGroups/akvenkat/providers/Microsoft.KeyVault/vaults/SDKKeyVault" + } + }, + "deliveryType": "NonScheduled", + "deliveryInfo": { + "scheduledDateTime": "0001-01-01T05:30:00+05:30" + }, + "isCancellableWithoutFee": true + }, + "location": "westus", + "tags": {}, + "sku": { + "name": "DataBox" + }, + "identity": { + "type": "SystemAssigned", + "principalId": "9a68a7c4-0a18-4d06-a5fb-7058e9e98458", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47" + }, + "name": "SdkJob1735", + "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourceGroups/SdkRg7937/providers/Microsoft.DataBox/jobs/SdkJob1735", + "type": "Microsoft.DataBox/jobs" + } + } + } +} diff --git a/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/JobsGetCopyStuck.json b/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/JobsGetCopyStuck.json new file mode 100644 index 000000000000..646c6d4d3a9c --- /dev/null +++ b/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/JobsGetCopyStuck.json @@ -0,0 +1,202 @@ +{ + "parameters": { + "subscriptionId": "fa68082f-8ff7-4a25-95c7-ce9da541242f", + "resourceGroupName": "dmstestresource", + "jobName": "TJx-637505258985313014", + "api-version": "2020-03-01", + "$expand": "details", + "x-ms-client-request-id": [ + "bdcc8e76-b662-42a4-93fd-5554809712d7" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.1.0" + ] + }, + "responses": { + "200": { + "body": { + "properties": { + "transferType": "ImportToAzure", + "isCancellable": false, + "isDeletable": true, + "isShippingAddressEditable": false, + "isPrepareToShipEnabled": true, + "status": "CompletedWithWarnings", + "startTime": "2021-03-05T12:56:12.6384315+05:30", + "details": { + "copyProgress": [ + { + "storageAccountName": "databoxbvttestaccount", + "transferType": "ImportToAzure", + "dataAccountType": "StorageAccount", + "accountId": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourcegroups/databoxbvt/providers/Microsoft.Storage/storageAccounts/databoxbvttestaccount", + "bytesProcessed": 2000, + "totalBytesToProcess": 2000, + "filesProcessed": 100, + "totalFilesToProcess": 110, + "invalidFilesProcessed": 10, + "invalidFileBytesUploaded": 10, + "renamedContainerCount": 60, + "filesErroredOut": 0, + "directoriesErroredOut": 0, + "invalidDirectoriesProcessed": 0, + "isEnumerationInProgress": false + } + ], + "expectedDataSizeInTeraBytes": 0, + "jobStages": [ + { + "stageName": "DeviceOrdered", + "displayName": "Ordered", + "stageStatus": "Succeeded", + "stageTime": "2021-03-05T12:56:25.3911023+05:30" + }, + { + "stageName": "DevicePrepared", + "displayName": "Processed", + "stageStatus": "Succeeded", + "stageTime": "2021-03-05T13:07:49.676421+05:30" + }, + { + "stageName": "Dispatched", + "displayName": "Dispatched", + "stageStatus": "Succeeded", + "stageTime": "2021-03-05T02:21:06+05:30" + }, + { + "stageName": "Delivered", + "displayName": "Delivered", + "stageStatus": "Succeeded", + "stageTime": "2021-03-05T02:21:13+05:30" + }, + { + "stageName": "PickedUp", + "displayName": "Picked up", + "stageStatus": "Succeeded", + "stageTime": "2021-03-05T02:23:10+05:30" + }, + { + "stageName": "AtAzureDC", + "displayName": "Received", + "stageStatus": "Succeeded", + "stageTime": "2021-03-05T02:23:17+05:30" + }, + { + "stageName": "DataCopy", + "displayName": "Data copy in progress", + "stageStatus": "Succeeded", + "stageTime": "2021-03-05T13:34:20.1497635+05:30" + }, + { + "stageName": "CompletedWithWarnings", + "stageStatus": "Succeeded", + "stageTime": "2021-03-05T14:08:38.250614+05:30" + } + ], + "contactDetails": { + "contactName": "Andrew Tribone", + "phone": "1234567890", + "phoneExtension": "1234", + "emailList": [ + "ssemmail@microsoft.com", + "vishwamdir@microsoft.com" + ], + "notificationPreference": [ + { + "stageName": "DevicePrepared", + "sendNotification": true + }, + { + "stageName": "Dispatched", + "sendNotification": true + }, + { + "stageName": "Delivered", + "sendNotification": true + }, + { + "stageName": "PickedUp", + "sendNotification": true + }, + { + "stageName": "AtAzureDC", + "sendNotification": true + }, + { + "stageName": "DataCopy", + "sendNotification": true + } + ] + }, + "shippingAddress": { + "streetAddress1": "164 TOWNSEND ST", + "streetAddress2": "UNIT 1", + "city": "San Francisco", + "stateOrProvince": "CA", + "country": "US", + "postalCode": "94107", + "companyName": "Microsoft", + "addressType": "None" + }, + "deliveryPackage": { + "trackingUrl": "https://wwwapps.ups.com/WebTracking/track?track=yes&trackNums=5fb6965e-0b80-4f38-b21a-32673fed2d84", + "carrierName": "Ups", + "trackingId": "5fb6965e-0b80-4f38-b21a-32673fed2d84" + }, + "returnPackage": { + "trackingUrl": "https://wwwapps.ups.com/WebTracking/track?track=yes&trackNums=b3875a34-aad6-4dbe-83a9-3f39cb21b0e8", + "carrierName": "Ups", + "trackingId": "b3875a34-aad6-4dbe-83a9-3f39cb21b0e8" + }, + "dataImportDetails": [ + { + "accountDetails": { + "storageAccountId": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourcegroups/databoxbvt/providers/Microsoft.Storage/storageAccounts/databoxbvttestaccount", + "dataAccountType": "StorageAccount" + } + } + ], + "jobDetailsType": "DataBox", + "preferences": {}, + "copyLogDetails": [ + { + "accountName": "databoxbvttestaccount", + "copyLogLink": "databoxcopylog/strtrinidad01_ZTS18520041_CopyLog_8425fb8f9c2b447288caa4dd6f5d34bb.xml", + "copyLogDetailsType": "DataBox" + } + ], + "reverseShipmentLabelSasKey": "http://wusbeta.blob.core.windows.net/devstoreaccount1/f6be6ea8-77da-419b-9f6b-3043c28b04e4/ReverseShipment/b3875a34-aad6-4dbe-83a9-3f39cb21b0e8.PDF?sv=2018-03-28&sr=b&sig=%2BJmOyIkG0ALrKQp%2F7NCOBYccQ80DRLvN%2FHtb6Z97heg%3D&st=2021-03-05T09%3A45%3A05Z&se=2021-03-05T10%3A15%3A05Z&sp=r", + "keyEncryptionKey": { + "kekType": "MicrosoftManaged" + }, + "actions": [], + "lastMitigationActionOnJob": { + "actionDateTimeInUtc": "2021-03-05T08:28:18.8107951Z", + "isPerformedByCustomer": true, + "customerResolution": "MoveToCleanUpDevice" + } + }, + "deliveryType": "NonScheduled", + "isCancellableWithoutFee": false + }, + "location": "westus", + "tags": { + "defaultTagsKey": "defaultTagsValue" + }, + "sku": { + "name": "DataBox" + }, + "identity": { + "type": "None" + }, + "name": "TJx-637505258985313014", + "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourceGroups/dmstestresource/providers/Microsoft.DataBox/jobs/TJx-637505258985313014", + "type": "Microsoft.DataBox/jobs" + } + } + } +} diff --git a/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/JobsGetExport.json b/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/JobsGetExport.json new file mode 100644 index 000000000000..f5a346dce6e3 --- /dev/null +++ b/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/JobsGetExport.json @@ -0,0 +1,135 @@ +{ + "parameters": { + "subscriptionId": "fa68082f-8ff7-4a25-95c7-ce9da541242f", + "resourceGroupName": "SdkRg8091", + "jobName": "SdkJob6429", + "api-version": "2020-11-01", + "$expand": "details", + "x-ms-client-request-id": [ + "b3739c7c-02b6-46c2-a04c-da6f8bca279c" + ], + "Accept-Language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.29017.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.18363.", + "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.1.0" + ] + }, + "responses": { + "200": { + "body": { + "properties": { + "transferType": "ExportFromAzure", + "isCancellable": false, + "isDeletable": true, + "isShippingAddressEditable": false, + "isPrepareToShipEnabled": true, + "status": "Cancelled", + "startTime": "2020-08-07T10:49:08.7195419+05:30", + "details": { + "copyProgress": [ + { + "storageAccountName": "aaaaaa2", + "transferType": "ExportFromAzure", + "dataAccountType": "StorageAccount", + "accountId": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourceGroups/akvenkat/providers/Microsoft.Storage/storageAccounts/aaaaaa2", + "bytesProcessed": 0, + "totalBytesToProcess": 0, + "isEnumerationInProgress": false + } + ], + "jobStages": [ + { + "stageName": "DeviceOrdered", + "displayName": "Ordered", + "stageStatus": "Succeeded", + "stageTime": "2020-08-07T10:49:12.7675644+05:30" + }, + { + "stageName": "Cancelled", + "displayName": "Canceled", + "stageStatus": "Succeeded", + "stageTime": "2020-08-07T10:49:57.2572438+05:30" + } + ], + "contactDetails": { + "contactName": " ", + "emailList": [], + "phone": "1234567890", + "phoneExtension": "1234", + "notificationPreference": [] + }, + "shippingAddress": { + "streetAddress1": "16 TOWNSEND ST", + "streetAddress2": "Unit 1", + "city": "San Francisco", + "stateOrProvince": "CA", + "country": "US", + "postalCode": "94107", + "companyName": "Microsoft", + "addressType": "Commercial" + }, + "deliveryPackage": { + "carrierName": "", + "trackingId": "", + "trackingUrl": "" + }, + "returnPackage": { + "carrierName": "", + "trackingId": "", + "trackingUrl": "" + }, + "dataImportDetails": [], + "dataExportDetails": [ + { + "transferConfiguration": { + "transferConfigurationType": "TransferAll", + "transferFilterDetails": {}, + "transferAllDetails": { + "include": { + "dataAccountType": "StorageAccount", + "transferAllBlobs": true, + "transferAllFiles": true + } + } + }, + "logCollectionLevel": "Error", + "accountDetails": { + "storageAccountId": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourceGroups/akvenkat/providers/Microsoft.Storage/storageAccounts/aaaaaa2", + "dataAccountType": "StorageAccount" + } + } + ], + "jobDetailsType": "DataBox", + "copyLogDetails": [], + "reverseShipmentLabelSasKey": "https://wusbeta.blob.core.windows.net/customer-reverse-shipment-instructions/CustomerShipmentInstructions_MicrosoftManaged.PDF?sv=2018-03-28&sr=b&sig=04aL%2FTe7998qQJlhmGI3C0Q%2FxsCVo1t0B4uQUIx7TmQ%3D&st=2020-08-07T05%3A10%3A05Z&se=2020-08-08T05%3A20%3A05Z&sp=r", + "chainOfCustodySasKey": "https://wusbeta.blob.core.windows.net/chainofcustody/9a6ee052-bcff-4b5e-a478-7dcbfb86e9fb.txt?sv=2018-03-28&sr=b&sig=JbBBXZKharvfg35ZfmrhowO1DuOpzcZCNUdeFzklvWs%3D&st=2020-08-07T05%3A10%3A05Z&se=2020-08-07T05%3A40%3A05Z&sp=r", + "keyEncryptionKey": { + "kekType": "MicrosoftManaged" + } + }, + "cancellationReason": "CancelTest", + "deliveryType": "NonScheduled", + "deliveryInfo": { + "scheduledDateTime": "0001-01-01T05:30:00+05:30" + }, + "isCancellableWithoutFee": false + }, + "location": "westus", + "tags": {}, + "sku": { + "name": "DataBox" + }, + "identity": { + "type": "None" + }, + "name": "SdkJob6429", + "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourceGroups/SdkRg8091/providers/Microsoft.DataBox/jobs/SdkJob6429", + "type": "Microsoft.DataBox/jobs" + } + } + } +} diff --git a/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/JobsList.json b/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/JobsList.json new file mode 100644 index 000000000000..d64a4a51fe40 --- /dev/null +++ b/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/JobsList.json @@ -0,0 +1,805 @@ +{ + "parameters": { + "subscriptionId": "fa68082f-8ff7-4a25-95c7-ce9da541242f", + "api-version": "2020-11-01", + "$expand": "details", + "x-ms-client-request-id": [ + "044127c5-663e-4a0f-9061-2fa0ca8058c4" + ], + "Accept-Language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.29017.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.18363.", + "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.1.0" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "transferType": "ImportToAzure", + "isCancellable": false, + "isDeletable": true, + "isShippingAddressEditable": false, + "isPrepareToShipEnabled": false, + "status": "Cancelled", + "startTime": "2018-08-30T14:44:39.77401+05:30", + "cancellationReason": "Old job which is still in ordered state cancelled by the service", + "deliveryType": "NonScheduled", + "deliveryInfo": { + "scheduledDateTime": "0001-01-01T05:30:00+05:30" + }, + "isCancellableWithoutFee": false + }, + "location": "australiaeast", + "tags": {}, + "sku": { + "name": "DataBoxDisk" + }, + "identity": { + "type": "None" + }, + "name": "mnaustest", + "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourcegroups/ausresgrpmn/providers/Microsoft.DataBox/jobs/mnaustest", + "type": "Microsoft.DataBox/jobs" + }, + { + "properties": { + "transferType": "ImportToAzure", + "isCancellable": false, + "isDeletable": true, + "isShippingAddressEditable": false, + "isPrepareToShipEnabled": false, + "status": "Cancelled", + "startTime": "2018-09-10T18:03:22.2578238+05:30", + "cancellationReason": "Old job which is still in ordered state cancelled by the service", + "deliveryType": "NonScheduled", + "deliveryInfo": { + "scheduledDateTime": "0001-01-01T05:30:00+05:30" + }, + "isCancellableWithoutFee": false + }, + "location": "australiaeast", + "tags": {}, + "sku": { + "name": "DataBoxDisk" + }, + "identity": { + "type": "None" + }, + "name": "portalcontractAUS", + "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourcegroups/ausresgrpmn/providers/Microsoft.DataBox/jobs/portalcontractAUS", + "type": "Microsoft.DataBox/jobs" + }, + { + "properties": { + "transferType": "ImportToAzure", + "isCancellable": false, + "isDeletable": true, + "isShippingAddressEditable": false, + "isPrepareToShipEnabled": false, + "status": "Cancelled", + "startTime": "2018-08-30T15:17:17.3753642+05:30", + "cancellationReason": "Old job which is still in ordered state cancelled by the service", + "deliveryType": "NonScheduled", + "deliveryInfo": { + "scheduledDateTime": "0001-01-01T05:30:00+05:30" + }, + "isCancellableWithoutFee": false + }, + "location": "australiaeast", + "tags": {}, + "sku": { + "name": "DataBoxDisk" + }, + "identity": { + "type": "None" + }, + "name": "testBB-diskAU", + "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourcegroups/testBB/providers/Microsoft.DataBox/jobs/testBB-diskAU", + "type": "Microsoft.DataBox/jobs" + }, + { + "properties": { + "transferType": "ExportFromAzure", + "isCancellable": false, + "isDeletable": true, + "isShippingAddressEditable": false, + "isPrepareToShipEnabled": false, + "status": "Cancelled", + "startTime": "2020-05-04T11:12:15.5972523+05:30", + "cancellationReason": "Old job which is still in ordered state cancelled by the service", + "deliveryType": "NonScheduled", + "deliveryInfo": { + "scheduledDateTime": "0001-01-01T05:30:00+05:30" + }, + "isCancellableWithoutFee": false + }, + "location": "westus", + "tags": {}, + "sku": { + "name": "DataBox" + }, + "identity": { + "type": "None" + }, + "name": "allXML", + "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourcegroups/akvenkat12/providers/Microsoft.DataBox/jobs/allXML", + "type": "Microsoft.DataBox/jobs" + }, + { + "properties": { + "transferType": "ExportFromAzure", + "isCancellable": true, + "isDeletable": false, + "isShippingAddressEditable": true, + "isPrepareToShipEnabled": false, + "status": "DeviceOrdered", + "startTime": "2020-05-07T15:51:08.4479315+05:30", + "deliveryType": "NonScheduled", + "deliveryInfo": { + "scheduledDateTime": "0001-01-01T05:30:00+05:30" + }, + "isCancellableWithoutFee": true + }, + "location": "westus", + "tags": {}, + "sku": { + "name": "DataBox" + }, + "identity": { + "type": "None" + }, + "name": "bothExportAllxml", + "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourcegroups/akvenkat12/providers/Microsoft.DataBox/jobs/bothExportAllxml", + "type": "Microsoft.DataBox/jobs" + }, + { + "properties": { + "transferType": "ExportFromAzure", + "isCancellable": false, + "isDeletable": true, + "isShippingAddressEditable": false, + "isPrepareToShipEnabled": false, + "status": "Cancelled", + "startTime": "2020-05-04T19:44:59.2410723+05:30", + "cancellationReason": "Old job which is still in ordered state cancelled by the service", + "deliveryType": "NonScheduled", + "deliveryInfo": { + "scheduledDateTime": "0001-01-01T05:30:00+05:30" + }, + "isCancellableWithoutFee": false + }, + "location": "westus", + "tags": {}, + "sku": { + "name": "DataBox" + }, + "identity": { + "type": "None" + }, + "name": "exportAll", + "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourcegroups/akvenkat12/providers/Microsoft.DataBox/jobs/exportAll", + "type": "Microsoft.DataBox/jobs" + }, + { + "properties": { + "transferType": "ImportToAzure", + "isCancellable": false, + "isDeletable": true, + "isShippingAddressEditable": false, + "isPrepareToShipEnabled": false, + "status": "Cancelled", + "startTime": "2020-05-04T18:31:05.3036028+05:30", + "cancellationReason": "Old job which is still in ordered state cancelled by the service", + "deliveryType": "NonScheduled", + "deliveryInfo": { + "scheduledDateTime": "0001-01-01T05:30:00+05:30" + }, + "isCancellableWithoutFee": false + }, + "location": "westus", + "tags": {}, + "sku": { + "name": "DataBox" + }, + "identity": { + "type": "None" + }, + "name": "importRegressnTest", + "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourcegroups/akvenkat12/providers/Microsoft.DataBox/jobs/importRegressnTest", + "type": "Microsoft.DataBox/jobs" + }, + { + "properties": { + "transferType": "ExportFromAzure", + "isCancellable": true, + "isDeletable": false, + "isShippingAddressEditable": true, + "isPrepareToShipEnabled": false, + "status": "DeviceOrdered", + "startTime": "2020-05-09T01:57:03.8985885+05:30", + "deliveryType": "NonScheduled", + "deliveryInfo": { + "scheduledDateTime": "0001-01-01T05:30:00+05:30" + }, + "isCancellableWithoutFee": true + }, + "location": "westus", + "tags": {}, + "sku": { + "name": "DataBox" + }, + "identity": { + "type": "None" + }, + "name": "testBotthXMLAndAll", + "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourcegroups/akvenkat12/providers/Microsoft.DataBox/jobs/testBotthXMLAndAll", + "type": "Microsoft.DataBox/jobs" + }, + { + "properties": { + "transferType": "ExportFromAzure", + "isCancellable": false, + "isDeletable": true, + "isShippingAddressEditable": false, + "isPrepareToShipEnabled": false, + "status": "Cancelled", + "startTime": "2020-05-05T15:56:52.6983398+05:30", + "cancellationReason": "Old job which is still in ordered state cancelled by the service", + "deliveryType": "NonScheduled", + "deliveryInfo": { + "scheduledDateTime": "0001-01-01T05:30:00+05:30" + }, + "isCancellableWithoutFee": false + }, + "location": "westus", + "tags": {}, + "sku": { + "name": "DataBox" + }, + "identity": { + "type": "None" + }, + "name": "testExportAllOrder", + "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourcegroups/akvenkat12/providers/Microsoft.DataBox/jobs/testExportAllOrder", + "type": "Microsoft.DataBox/jobs" + }, + { + "properties": { + "transferType": "ExportFromAzure", + "isCancellable": false, + "isDeletable": true, + "isShippingAddressEditable": false, + "isPrepareToShipEnabled": false, + "status": "Cancelled", + "startTime": "2020-05-04T17:45:25.464989+05:30", + "cancellationReason": "Old job which is still in ordered state cancelled by the service", + "deliveryType": "NonScheduled", + "deliveryInfo": { + "scheduledDateTime": "0001-01-01T05:30:00+05:30" + }, + "isCancellableWithoutFee": false + }, + "location": "westus", + "tags": {}, + "sku": { + "name": "DataBox" + }, + "identity": { + "type": "None" + }, + "name": "testPayload", + "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourcegroups/akvenkat12/providers/Microsoft.DataBox/jobs/testPayload", + "type": "Microsoft.DataBox/jobs" + }, + { + "properties": { + "transferType": "ExportFromAzure", + "isCancellable": false, + "isDeletable": true, + "isShippingAddressEditable": false, + "isPrepareToShipEnabled": false, + "status": "Cancelled", + "startTime": "2020-05-04T10:43:04.8775864+05:30", + "cancellationReason": "Old job which is still in ordered state cancelled by the service", + "deliveryType": "NonScheduled", + "deliveryInfo": { + "scheduledDateTime": "0001-01-01T05:30:00+05:30" + }, + "isCancellableWithoutFee": false + }, + "location": "westus", + "tags": {}, + "sku": { + "name": "DataBox" + }, + "identity": { + "type": "None" + }, + "name": "xmlOnlyOrder", + "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourcegroups/akvenkat12/providers/Microsoft.DataBox/jobs/xmlOnlyOrder", + "type": "Microsoft.DataBox/jobs" + }, + { + "properties": { + "transferType": "ImportToAzure", + "isCancellable": false, + "isDeletable": true, + "isShippingAddressEditable": false, + "isPrepareToShipEnabled": false, + "status": "Cancelled", + "startTime": "2018-11-27T15:17:49.0760408+05:30", + "cancellationReason": "Old job which is still in ordered state cancelled by the service", + "deliveryType": "NonScheduled", + "deliveryInfo": { + "scheduledDateTime": "0001-01-01T05:30:00+05:30" + }, + "isCancellableWithoutFee": false + }, + "location": "westus", + "tags": {}, + "sku": { + "name": "DataBox" + }, + "identity": { + "type": "None" + }, + "name": "testbadresourcegroup", + "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourcegroups/akvenkat3198inh0-9)inh(il(h)_fyoin)(upf(yLASD0-FJ(hal-DSNWP0JDS0P3-0SJ93/providers/Microsoft.DataBox/jobs/testbadresourcegroup", + "type": "Microsoft.DataBox/jobs" + }, + { + "properties": { + "transferType": "ImportToAzure", + "isCancellable": false, + "isDeletable": true, + "isShippingAddressEditable": false, + "isPrepareToShipEnabled": false, + "status": "Cancelled", + "startTime": "2019-01-04T09:08:49.9928621+05:30", + "cancellationReason": "Old job which is still in ordered state cancelled by the service", + "deliveryType": "NonScheduled", + "deliveryInfo": { + "scheduledDateTime": "0001-01-01T05:30:00+05:30" + }, + "isCancellableWithoutFee": false + }, + "location": "westus", + "tags": {}, + "sku": { + "name": "DataBox" + }, + "identity": { + "type": "None" + }, + "name": "andipodtest4jan", + "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourcegroups/akvenkat/providers/Microsoft.DataBox/jobs/andipodtest4jan", + "type": "Microsoft.DataBox/jobs" + }, + { + "properties": { + "transferType": "ExportFromAzure", + "isCancellable": false, + "isDeletable": true, + "isShippingAddressEditable": false, + "isPrepareToShipEnabled": false, + "status": "Cancelled", + "startTime": "2020-05-28T15:20:48.1058546+05:30", + "cancellationReason": "NoLongerNeeded null", + "deliveryType": "NonScheduled", + "deliveryInfo": { + "scheduledDateTime": "0001-01-01T05:30:00+05:30" + }, + "isCancellableWithoutFee": false + }, + "location": "westus", + "tags": {}, + "sku": { + "name": "DataBox" + }, + "identity": { + "type": "None" + }, + "name": "dbtest1", + "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourcegroups/akvenkat/providers/Microsoft.DataBox/jobs/dbtest1", + "type": "Microsoft.DataBox/jobs" + }, + { + "properties": { + "transferType": "ImportToAzure", + "isCancellable": false, + "isDeletable": true, + "isShippingAddressEditable": false, + "isPrepareToShipEnabled": false, + "status": "Cancelled", + "startTime": "2020-04-14T08:51:18.2067875+05:30", + "cancellationReason": "IncorrectOrder null", + "deliveryType": "NonScheduled", + "deliveryInfo": { + "scheduledDateTime": "0001-01-01T05:30:00+05:30" + }, + "isCancellableWithoutFee": false + }, + "location": "westus", + "tags": {}, + "sku": { + "name": "DataBox" + }, + "identity": { + "type": "None" + }, + "name": "degautam14-04-Clone", + "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourcegroups/akvenkat/providers/Microsoft.DataBox/jobs/degautam14-04-Clone", + "type": "Microsoft.DataBox/jobs" + }, + { + "properties": { + "transferType": "ExportFromAzure", + "isCancellable": true, + "isDeletable": false, + "isShippingAddressEditable": true, + "isPrepareToShipEnabled": false, + "status": "DeviceOrdered", + "startTime": "2020-05-27T18:08:30.6622356+05:30", + "deliveryType": "NonScheduled", + "deliveryInfo": { + "scheduledDateTime": "0001-01-01T05:30:00+05:30" + }, + "isCancellableWithoutFee": true + }, + "location": "westus", + "tags": {}, + "sku": { + "name": "DataBox" + }, + "identity": { + "type": "None" + }, + "name": "degautamtestexport", + "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourcegroups/akvenkat/providers/Microsoft.DataBox/jobs/degautamtestexport", + "type": "Microsoft.DataBox/jobs" + }, + { + "properties": { + "transferType": "ExportFromAzure", + "isCancellable": true, + "isDeletable": false, + "isShippingAddressEditable": true, + "isPrepareToShipEnabled": false, + "status": "DeviceOrdered", + "startTime": "2020-05-21T20:41:02.3837388+05:30", + "deliveryType": "NonScheduled", + "deliveryInfo": { + "scheduledDateTime": "0001-01-01T05:30:00+05:30" + }, + "isCancellableWithoutFee": true + }, + "location": "westus", + "tags": {}, + "sku": { + "name": "DataBox" + }, + "identity": { + "type": "None" + }, + "name": "DegautamTestExportOrder", + "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourcegroups/akvenkat/providers/Microsoft.DataBox/jobs/DegautamTestExportOrder", + "type": "Microsoft.DataBox/jobs" + }, + { + "properties": { + "transferType": "ExportFromAzure", + "isCancellable": true, + "isDeletable": false, + "isShippingAddressEditable": true, + "isPrepareToShipEnabled": false, + "status": "DeviceOrdered", + "startTime": "2020-05-24T07:56:23.6839464+05:30", + "deliveryType": "NonScheduled", + "deliveryInfo": { + "scheduledDateTime": "0001-01-01T05:30:00+05:30" + }, + "isCancellableWithoutFee": true + }, + "location": "westus", + "tags": {}, + "sku": { + "name": "DataBox" + }, + "identity": { + "type": "None" + }, + "name": "degautamtestorder", + "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourcegroups/akvenkat/providers/Microsoft.DataBox/jobs/degautamtestorder", + "type": "Microsoft.DataBox/jobs" + }, + { + "properties": { + "transferType": "ImportToAzure", + "isCancellable": false, + "isDeletable": true, + "isShippingAddressEditable": false, + "isPrepareToShipEnabled": false, + "status": "Cancelled", + "startTime": "2020-04-14T08:48:21.2260174+05:30", + "cancellationReason": "IncorrectOrder null", + "deliveryType": "NonScheduled", + "deliveryInfo": { + "scheduledDateTime": "0001-01-01T05:30:00+05:30" + }, + "isCancellableWithoutFee": false + }, + "location": "westus", + "tags": {}, + "sku": { + "name": "DataBox" + }, + "identity": { + "type": "None" + }, + "name": "degautamTestOrder14-04", + "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourcegroups/akvenkat/providers/Microsoft.DataBox/jobs/degautamTestOrder14-04", + "type": "Microsoft.DataBox/jobs" + }, + { + "properties": { + "transferType": "ExportFromAzure", + "isCancellable": true, + "isDeletable": false, + "isShippingAddressEditable": true, + "isPrepareToShipEnabled": false, + "status": "DeviceOrdered", + "startTime": "2020-05-12T12:19:19.8627264+05:30", + "deliveryType": "NonScheduled", + "deliveryInfo": { + "scheduledDateTime": "0001-01-01T05:30:00+05:30" + }, + "isCancellableWithoutFee": true + }, + "location": "westus", + "tags": {}, + "sku": { + "name": "DataBox" + }, + "identity": { + "type": "None" + }, + "name": "export", + "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourcegroups/akvenkat/providers/Microsoft.DataBox/jobs/export", + "type": "Microsoft.DataBox/jobs" + }, + { + "properties": { + "transferType": "ExportFromAzure", + "isCancellable": false, + "isDeletable": true, + "isShippingAddressEditable": false, + "isPrepareToShipEnabled": false, + "status": "Cancelled", + "startTime": "2020-04-05T19:50:20.9692355+05:30", + "cancellationReason": "Old job which is still in ordered state cancelled by the service", + "deliveryType": "NonScheduled", + "deliveryInfo": { + "scheduledDateTime": "0001-01-01T05:30:00+05:30" + }, + "isCancellableWithoutFee": false + }, + "location": "westus", + "tags": {}, + "sku": { + "name": "DataBox" + }, + "identity": { + "type": "None" + }, + "name": "exportTestResource", + "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourceGroups/akvenkat/providers/Microsoft.DataBox/jobs/exportTestResource", + "type": "Microsoft.DataBox/jobs" + }, + { + "properties": { + "transferType": "ImportToAzure", + "isCancellable": false, + "isDeletable": true, + "isShippingAddressEditable": false, + "isPrepareToShipEnabled": false, + "status": "Cancelled", + "startTime": "2020-04-10T15:09:45.7080012+05:30", + "cancellationReason": "Old job which is still in ordered state cancelled by the service", + "deliveryType": "NonScheduled", + "deliveryInfo": { + "scheduledDateTime": "0001-01-01T05:30:00+05:30" + }, + "isCancellableWithoutFee": false + }, + "location": "westus", + "tags": {}, + "sku": { + "name": "DataBox" + }, + "identity": { + "type": "None" + }, + "name": "sanakTestImportNew", + "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourceGroups/akvenkat/providers/Microsoft.DataBox/jobs/sanakTestImportNew", + "type": "Microsoft.DataBox/jobs" + }, + { + "properties": { + "transferType": "ImportToAzure", + "isCancellable": false, + "isDeletable": true, + "isShippingAddressEditable": false, + "isPrepareToShipEnabled": false, + "status": "Cancelled", + "startTime": "2020-04-10T15:13:02.5724966+05:30", + "cancellationReason": "Old job which is still in ordered state cancelled by the service", + "deliveryType": "NonScheduled", + "deliveryInfo": { + "scheduledDateTime": "0001-01-01T05:30:00+05:30" + }, + "isCancellableWithoutFee": false + }, + "location": "westus", + "tags": {}, + "sku": { + "name": "DataBox" + }, + "identity": { + "type": "None" + }, + "name": "sanakTestImportOld", + "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourceGroups/akvenkat/providers/Microsoft.DataBox/jobs/sanakTestImportOld", + "type": "Microsoft.DataBox/jobs" + }, + { + "properties": { + "transferType": "ExportFromAzure", + "isCancellable": false, + "isDeletable": true, + "isShippingAddressEditable": false, + "isPrepareToShipEnabled": false, + "status": "Cancelled", + "startTime": "2020-04-20T13:39:28.1940929+05:30", + "cancellationReason": "Old job which is still in ordered state cancelled by the service", + "deliveryType": "NonScheduled", + "deliveryInfo": { + "scheduledDateTime": "0001-01-01T05:30:00+05:30" + }, + "isCancellableWithoutFee": false + }, + "location": "westus", + "tags": {}, + "sku": { + "name": "DataBox" + }, + "identity": { + "type": "None" + }, + "name": "sanakTestImportOld1", + "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourceGroups/akvenkat/providers/Microsoft.DataBox/jobs/sanakTestImportOld1", + "type": "Microsoft.DataBox/jobs" + }, + { + "properties": { + "transferType": "ImportToAzure", + "isCancellable": false, + "isDeletable": true, + "isShippingAddressEditable": false, + "isPrepareToShipEnabled": false, + "status": "Cancelled", + "startTime": "2020-04-10T15:14:59.6879599+05:30", + "cancellationReason": "Old job which is still in ordered state cancelled by the service", + "deliveryType": "NonScheduled", + "deliveryInfo": { + "scheduledDateTime": "0001-01-01T05:30:00+05:30" + }, + "isCancellableWithoutFee": false + }, + "location": "westus", + "tags": {}, + "sku": { + "name": "DataBox" + }, + "identity": { + "type": "None" + }, + "name": "sanakTestImportOld2", + "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourceGroups/akvenkat/providers/Microsoft.DataBox/jobs/sanakTestImportOld2", + "type": "Microsoft.DataBox/jobs" + }, + { + "properties": { + "transferType": "ImportToAzure", + "isCancellable": true, + "isDeletable": false, + "isShippingAddressEditable": true, + "isPrepareToShipEnabled": false, + "status": "DeviceOrdered", + "startTime": "2020-07-21T23:43:34.513148+05:30", + "deliveryType": "NonScheduled", + "deliveryInfo": { + "scheduledDateTime": "0001-01-01T05:30:00+05:30" + }, + "isCancellableWithoutFee": true + }, + "location": "westus", + "tags": {}, + "sku": { + "name": "DataBox" + }, + "identity": { + "type": "None" + }, + "name": "saranyagorder", + "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourcegroups/akvenkat/providers/Microsoft.DataBox/jobs/saranyagorder", + "type": "Microsoft.DataBox/jobs" + }, + { + "properties": { + "transferType": "ImportToAzure", + "isCancellable": false, + "isDeletable": true, + "isShippingAddressEditable": false, + "isPrepareToShipEnabled": false, + "status": "Cancelled", + "startTime": "2019-07-04T14:01:50.9232807+05:30", + "cancellationReason": "IncorrectOrder null", + "deliveryType": "NonScheduled", + "deliveryInfo": { + "scheduledDateTime": "0001-01-01T05:30:00+05:30" + }, + "isCancellableWithoutFee": false + }, + "location": "westus", + "tags": {}, + "sku": { + "name": "DataBox" + }, + "identity": { + "type": "None" + }, + "name": "testdeepak04-07", + "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourcegroups/akvenkat/providers/Microsoft.DataBox/jobs/testdeepak04-07", + "type": "Microsoft.DataBox/jobs" + }, + { + "properties": { + "transferType": "ImportToAzure", + "isCancellable": false, + "isDeletable": true, + "isShippingAddressEditable": false, + "isPrepareToShipEnabled": false, + "status": "Cancelled", + "startTime": "2019-02-11T12:33:16.6231232+05:30", + "cancellationReason": "Old job which is still in ordered state cancelled by the service", + "deliveryType": "NonScheduled", + "deliveryInfo": { + "scheduledDateTime": "0001-01-01T05:30:00+05:30" + }, + "isCancellableWithoutFee": false + }, + "location": "westus", + "tags": {}, + "sku": { + "name": "DataBoxHeavy" + }, + "identity": { + "type": "None" + }, + "name": "testdurga-heavy", + "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourcegroups/akvenkat/providers/Microsoft.DataBox/jobs/testdurga-heavy", + "type": "Microsoft.DataBox/jobs" + } + ], + "nextLink": "https://management.azure.com/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/providers/Microsoft.DataBox/jobs?api-version=2020-11-01&%24skiptoken=fVJdb5swFP0v0bq3NMaFFipVU5oATRbSxBjz8WYDIQbzoUBISNX%2fPrfVumnaJvnB8rn3nON77suoSs%2fdildFO7p%2fGfmmiz13dD%2fad13T3k8mJa1olpZp1V3Ty%2fGQXsd1OWmPrI0PvOl4XbWTHb3VgQ53Y323uxurFGpjQ4vvxnFqJFRTFajC3aQ51D1P0kM7cXh8qNt6113PaUcf6%2fMkr1n7jTZ83EtcUj5AAMEYqGOgfP3SFrzBdZFWD5u5oTL%2flCUlGWIoepYD7rjqacEfBSvXfWSLY3QBPAlQucImXOT6FWTzba1voXFMJJr4FqC%2bcSS2cYh89QPNFvPznEFNIpoSBqiRd4%2fBTrBcXc%2f4NFvMpjr51FSHVT7VV0ok4motaz9ZZtNsYyEttj3JS2yLM9uTdT9fpI83pmxjaiJ9QtswWAL6obaKgkL2OK4pBS3KPG%2fAAD2uTaXzA7RBStPhqjg5lvBcbDnEbs9%2b0OSJVQwEE4qAd8YFslJPM91SCdNiWYYiaWm57p6DhjuiPmFbcamNnlApuAP3JfZCLfYXg1vV%2bgr8y9Efnl12k%2fzyCp9nVs5IdBvmaz8l0kuFIt9c3oQkVpjY327LKGc%2beteitnnxyzNnAaojM1QTJbt45Tl3lOUhsvbfmRDY8Q1KQDhEBFkrfOpxSdTEWvYJ6ESKf8vCtoYIEoBtI%2f%2fI6y0D72nZMN8aUtkpp%2f%2bXivffzE%2f9f7dBTmPds0puQUX2cmd6JlBPITlusqubRJ7R6%2bsP" + } + } + } +} diff --git a/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/JobsListByResourceGroup.json b/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/JobsListByResourceGroup.json new file mode 100644 index 000000000000..61e890cd477b --- /dev/null +++ b/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/JobsListByResourceGroup.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "subscriptionId": "fa68082f-8ff7-4a25-95c7-ce9da541242f", + "resourceGroupName": "SdkRg5154", + "api-version": "2020-11-01", + "$expand": "details", + "x-ms-client-request-id": [ + "c1514209-a439-4bd1-b040-76d7539d2509" + ], + "Accept-Language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.29017.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.18363.", + "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.1.0" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "transferType": "ImportToAzure", + "isCancellable": true, + "isDeletable": false, + "isShippingAddressEditable": true, + "isPrepareToShipEnabled": true, + "status": "DeviceOrdered", + "startTime": "2020-07-03T11:55:54.463792+05:30", + "deliveryType": "NonScheduled", + "deliveryInfo": { + "scheduledDateTime": "0001-01-01T05:30:00+05:30" + }, + "isCancellableWithoutFee": true + }, + "location": "westus", + "tags": {}, + "sku": { + "name": "DataBox" + }, + "identity": { + "type": "SystemAssigned", + "principalId": "fac84c35-5490-4b11-81b9-770053ccbe3b", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47" + }, + "name": "SdkJob5928", + "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourceGroups/SdkRg5154/providers/Microsoft.DataBox/jobs/SdkJob5928", + "type": "Microsoft.DataBox/jobs" + }, + { + "properties": { + "transferType": "ImportToAzure", + "isCancellable": true, + "isDeletable": false, + "isShippingAddressEditable": true, + "isPrepareToShipEnabled": true, + "status": "DeviceOrdered", + "startTime": "2020-08-07T10:50:36.3341513+05:30", + "deliveryType": "NonScheduled", + "deliveryInfo": { + "scheduledDateTime": "0001-01-01T05:30:00+05:30" + }, + "isCancellableWithoutFee": true + }, + "location": "westus", + "tags": {}, + "sku": { + "name": "DataBox" + }, + "identity": { + "type": "None" + }, + "name": "SdkJob952", + "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourceGroups/SdkRg5154/providers/Microsoft.DataBox/jobs/SdkJob952", + "type": "Microsoft.DataBox/jobs" + } + ] + } + } + } +} diff --git a/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/JobsListCredentials.json b/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/JobsListCredentials.json new file mode 100644 index 000000000000..c5134769275f --- /dev/null +++ b/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/JobsListCredentials.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "subscriptionId": "fa68082f-8ff7-4a25-95c7-ce9da541242f", + "resourceGroupName": "bvttoolrg6", + "jobName": "TJ-636646322037905056", + "api-version": "2020-11-01", + "x-ms-client-request-id": [ + "cda11c92-529b-4b75-b56d-ff1a69ffeeba" + ], + "Accept-Language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.29017.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.18363.", + "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.1.0" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "jobName": "TJ-636646322037905056", + "jobSecrets": { + "podSecrets": [ + { + "deviceSerialNumber": "testimolapod-3ecc44ce", + "devicePassword": "", + "networkConfigurations": [ + { + "name": "DataPort3", + "macAddress": "D05099C1F439" + }, + { + "name": "DataPort1", + "macAddress": "EC0D9A21A6C0" + }, + { + "name": "DataPort2", + "macAddress": "EC0D9A21A6C1" + } + ], + "encodedValidationCertPubKey": "5CYoAoVKEBa4WgPVis8keX94w30pon4jGMADSqcdE/NlHLChj6Cmhbl4q9QOFKSB/US4AwhS7zY1QS3YMDrkAPfOy7Hi6kWMBpJWZidTq3oXX8FAQjg+IqQESti/2jvAlcDpO2453rgd7Yb6XZ43P8MMTpTjcarI0ImCf//eITQWnFa3AzfIJ9C+hxCCaA7HTYhwQEPUBMwyQJsI6v6WuQysROtlBgx1YtbWFhDVbcqYRSLIbaj+RdzlvxvDJSo70kv+8em5upuDTpVE7xP+WePLlARdSPNwwfRzHnvCUqC2UqXHpRUhQlYnMqAJEcjjroRnyIGumPmmQ8O155X8aw==", + "accountCredentialDetails": [ + { + "accountName": "databoxbvttestaccount", + "dataAccountType": "StorageAccount", + "accountConnectionString": "", + "shareCredentialDetails": [ + { + "shareName": "databoxbvttestaccount_PageBlob", + "shareType": "PageBlob", + "userName": "databoxbvttestac_903", + "password": "", + "supportedAccessProtocols": [ + "SMB" + ] + }, + { + "shareName": "databoxbvttestaccount_BlockBlob", + "shareType": "BlockBlob", + "userName": "databoxbvttestac_903", + "password": "", + "supportedAccessProtocols": [ + "SMB" + ] + }, + { + "shareName": "databoxbvttestaccount_AzFile", + "shareType": "AzureFile", + "userName": "databoxbvttestac_903", + "password": "", + "supportedAccessProtocols": [ + "SMB" + ] + } + ] + } + ] + } + ], + "jobSecretsType": "DataBox", + "dcAccessSecurityCode": {} + } + } + ] + } + } + } +} diff --git a/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/JobsPatch.json b/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/JobsPatch.json new file mode 100644 index 000000000000..92febae7150b --- /dev/null +++ b/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/JobsPatch.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "subscriptionId": "fa68082f-8ff7-4a25-95c7-ce9da541242f", + "resourceGroupName": "SdkRg5154", + "jobName": "SdkJob952", + "api-version": "2020-11-01", + "$expand": "details", + "x-ms-client-request-id": [ + "ff3829ca-bcb0-4737-b6e0-52af57f34bb7" + ], + "Accept-Language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.29017.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.18363.", + "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.1.0" + ], + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "584" + ], + "jobResourceUpdateParameter": { + "properties": { + "details": { + "contactDetails": { + "contactName": "Update Job", + "phone": "1234567890", + "phoneExtension": "1234", + "emailList": [ + "testing@microsoft.com" + ] + }, + "shippingAddress": { + "streetAddress1": "16 TOWNSEND ST", + "streetAddress2": "Unit 1", + "city": "San Francisco", + "stateOrProvince": "CA", + "country": "US", + "postalCode": "94107", + "companyName": "Microsoft", + "addressType": "Commercial" + } + } + } + } + }, + "responses": { + "202": {}, + "200": { + "body": { + "properties": { + "transferType": "ImportToAzure", + "isCancellable": true, + "isShippingAddressEditable": true, + "status": "DeviceOrdered", + "startTime": "2018-04-13T16:28:38.9999793+05:30" + }, + "location": "westus", + "tags": {}, + "sku": { + "name": "DataBox" + }, + "name": "SdkJob952", + "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourceGroups/SdkRg5154/providers/Microsoft.DataBox/jobs/SdkJob952", + "type": "Microsoft.DataBox/jobs" + } + } + } +} diff --git a/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/JobsPatchCmk.json b/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/JobsPatchCmk.json new file mode 100644 index 000000000000..1992899e8242 --- /dev/null +++ b/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/JobsPatchCmk.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "fa68082f-8ff7-4a25-95c7-ce9da541242f", + "resourceGroupName": "SdkRg7937", + "jobName": "SdkJob1735", + "api-version": "2020-11-01", + "x-ms-client-request-id": [ + "fcab0fa9-7af8-47e0-b570-d703a48ee66b" + ], + "Accept-Language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.29017.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.18363.", + "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.1.0" + ], + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "358" + ], + "jobResourceUpdateParameter": { + "properties": { + "details": { + "keyEncryptionKey": { + "kekType": "CustomerManaged", + "kekUrl": "https://sdkkeyvault.vault.azure.net/keys/SSDKEY/", + "kekVaultResourceID": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourceGroups/akvenkat/providers/Microsoft.KeyVault/vaults/SDKKeyVault" + } + } + } + } + }, + "responses": { + "202": {}, + "200": { + "body": { + "properties": { + "transferType": "ImportToAzure", + "isCancellable": true, + "isShippingAddressEditable": true, + "status": "DeviceOrdered", + "startTime": "2018-04-13T16:28:38.9999793+05:30" + }, + "location": "westus", + "tags": {}, + "sku": { + "name": "DataBox" + }, + "name": "SdkJob1735", + "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourceGroups/SdkRg7937/providers/Microsoft.DataBox/jobs/SdkJob1735", + "type": "Microsoft.DataBox/jobs" + } + } + } +} diff --git a/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/JobsPatchSystemAssignedToUserAssigned.json b/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/JobsPatchSystemAssignedToUserAssigned.json new file mode 100644 index 000000000000..c2d169ad6a82 --- /dev/null +++ b/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/JobsPatchSystemAssignedToUserAssigned.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "subscriptionId": "fa68082f-8ff7-4a25-95c7-ce9da541242f", + "resourceGroupName": "SdkRg9765", + "jobName": "SdkJob2965", + "api-version": "2020-11-01", + "x-ms-client-request-id": [ + "25b11bec-6551-47a4-9ee2-575245cbfd45" + ], + "Accept-Language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.29220.03", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19041.", + "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.2.0" + ], + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "923" + ], + "jobResourceUpdateParameter": { + "properties": { + "details": { + "keyEncryptionKey": { + "kekType": "CustomerManaged", + "identityProperties": { + "type": "UserAssigned", + "userAssigned": { + "resourceId": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourceGroups/akvenkat/providers/Microsoft.ManagedIdentity/userAssignedIdentities/sdkIdentity" + } + }, + "kekUrl": "https://sdkkeyvault.vault.azure.net/keys/SSDKEY/", + "kekVaultResourceID": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourceGroups/akvenkat/providers/Microsoft.KeyVault/vaults/SDKKeyVault" + } + } + }, + "identity": { + "type": "SystemAssigned,UserAssigned", + "userAssignedIdentities": { + "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourceGroups/akvenkat/providers/Microsoft.ManagedIdentity/userAssignedIdentities/sdkIdentity": {} + } + } + } + }, + "responses": { + "202": {}, + "200": { + "body": { + "properties": { + "transferType": "ImportToAzure", + "isCancellable": true, + "isShippingAddressEditable": true, + "status": "DeviceOrdered", + "startTime": "2018-04-13T16:28:38.9999793+05:30" + }, + "location": "westus", + "tags": {}, + "sku": { + "name": "DataBox" + }, + "name": "SdkJob2965", + "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourceGroups/SdkRg9765/providers/Microsoft.DataBox/jobs/SdkJob2965", + "type": "Microsoft.DataBox/jobs" + } + } + } +} diff --git a/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/OperationsGet.json b/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/OperationsGet.json new file mode 100644 index 000000000000..f96f0598e269 --- /dev/null +++ b/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/OperationsGet.json @@ -0,0 +1,212 @@ +{ + "parameters": { + "api-version": "2020-11-01", + "x-ms-client-request-id": [ + "b9453354-c675-40a8-99c0-8039818c85fd" + ], + "Accept-Language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.29017.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.18363.", + "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.1.0" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.DataBox/locations/operationResults/read", + "display": { + "provider": "Azure Data Box", + "resource": "Operation Results", + "operation": "List Operation Results", + "description": "List or get the Operation Results" + }, + "properties": {}, + "origin": "user" + }, + { + "name": "Microsoft.DataBox/jobs/cancel/action", + "display": { + "provider": "Azure Data Box", + "resource": "Orders", + "operation": "Cancel", + "description": "Cancels an order in progress." + }, + "properties": {}, + "origin": "user" + }, + { + "name": "Microsoft.DataBox/jobs/bookShipmentPickUp/action", + "display": { + "provider": "Azure Data Box", + "resource": "Orders", + "operation": "Book Shipment Pick Up", + "description": "Allows to book a pick up for return shipments." + }, + "properties": {}, + "origin": "user" + }, + { + "name": "Microsoft.DataBox/jobs/read", + "display": { + "provider": "Azure Data Box", + "resource": "Orders", + "operation": "List Orders", + "description": "List or get the Orders" + }, + "properties": {}, + "origin": "user" + }, + { + "name": "Microsoft.DataBox/jobs/delete", + "display": { + "provider": "Azure Data Box", + "resource": "Orders", + "operation": "Delete Orders", + "description": "Delete the Orders" + }, + "properties": {}, + "origin": "user" + }, + { + "name": "Microsoft.DataBox/jobs/write", + "display": { + "provider": "Azure Data Box", + "resource": "Orders", + "operation": "Create or Update Orders", + "description": "Create or update the Orders" + }, + "properties": {}, + "origin": "user" + }, + { + "name": "Microsoft.DataBox/jobs/listCredentials/action", + "display": { + "provider": "Azure Data Box", + "resource": "Orders", + "operation": "List Credentials", + "description": "Lists the unencrypted credentials related to the order." + }, + "properties": {}, + "origin": "user" + }, + { + "name": "Microsoft.DataBox/locations/validateInputs/action", + "display": { + "provider": "Azure Data Box", + "resource": "Validate Inputs", + "operation": "Validate Inputs", + "description": "This method does all type of validations." + }, + "properties": {}, + "origin": "user" + }, + { + "name": "Microsoft.DataBox/locations/validateAddress/action", + "display": { + "provider": "Azure Data Box", + "resource": "Validate Address", + "operation": "Validate Address", + "description": "Validates the shipping address and provides alternate addresses if any." + }, + "properties": {}, + "origin": "user" + }, + { + "name": "Microsoft.DataBox/subscriptions/resourceGroups/moveResources/action", + "display": { + "provider": "Azure Data Box", + "resource": "Move Resource", + "operation": "Move Resource", + "description": "This method performs the resource move." + }, + "properties": {}, + "origin": "user" + }, + { + "name": "Microsoft.DataBox/subscriptions/resourceGroups/validateMoveResources/action", + "display": { + "provider": "Azure Data Box", + "resource": "Move Resource", + "operation": "Validate Move Resource Request", + "description": "This method validates whether resource move is allowed or not." + }, + "properties": {}, + "origin": "user" + }, + { + "name": "Microsoft.DataBox/locations/availableSkus/action", + "display": { + "provider": "Azure Data Box", + "resource": "Available Skus", + "operation": "Availabe Skus", + "description": "This method returns the list of available skus." + }, + "properties": {}, + "origin": "user" + }, + { + "name": "Microsoft.DataBox/locations/regionConfiguration/action", + "display": { + "provider": "Azure Data Box", + "resource": "Region Configuration", + "operation": "Region Configuration", + "description": "This method returns the configurations for the region." + }, + "properties": {}, + "origin": "user" + }, + { + "name": "Microsoft.DataBox/locations/availableSkus/read", + "display": { + "provider": "Azure Data Box", + "resource": "Available Skus", + "operation": "List Available Skus", + "description": "List or get the Available Skus" + }, + "properties": {}, + "origin": "user" + }, + { + "name": "Microsoft.DataBox/register/action", + "display": { + "provider": "Azure Data Box", + "resource": "Register Microsoft.Databox", + "operation": "Register Microsoft.Databox", + "description": "Register Provider Microsoft.Databox" + }, + "properties": {}, + "origin": "user" + }, + { + "name": "Microsoft.DataBox/unregister/action", + "display": { + "provider": "Azure Data Box", + "resource": "Register Microsoft.Databox", + "operation": "Un-Register Microsoft.Databox", + "description": "Un-Register Provider Microsoft.Databox" + }, + "properties": {}, + "origin": "user" + }, + { + "name": "Microsoft.DataBox/operations/read", + "display": { + "provider": "Azure Data Box", + "resource": "Operations", + "operation": "List Operations", + "description": "List or get the Operations" + }, + "properties": {}, + "origin": "user" + } + ] + } + } + } +} diff --git a/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/RegionConfiguration.json b/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/RegionConfiguration.json new file mode 100644 index 000000000000..ea1758e64f6b --- /dev/null +++ b/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/RegionConfiguration.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "fa68082f-8ff7-4a25-95c7-ce9da541242f", + "location": "westus", + "api-version": "2020-11-01", + "regionConfigurationRequest": { + "scheduleAvailabilityRequest": { + "storageLocation": "westus", + "skuName": "DataBox" + } + } + }, + "responses": { + "200": { + "body": { + "scheduleAvailabilityResponse": { + "availableDates": [ + "2019-07-11T00:00:00+00:00", + "2019-07-12T00:00:00+00:00", + "2019-07-13T00:00:00+00:00", + "2019-07-14T00:00:00+00:00", + "2019-07-15T00:00:00+00:00", + "2019-07-16T00:00:00+00:00", + "2019-07-17T00:00:00+00:00", + "2019-07-18T00:00:00+00:00", + "2019-07-19T00:00:00+00:00", + "2019-07-20T00:00:00+00:00", + "2019-07-21T00:00:00+00:00", + "2019-07-22T00:00:00+00:00", + "2019-07-23T00:00:00+00:00", + "2019-07-24T00:00:00+00:00", + "2019-07-25T00:00:00+00:00", + "2019-07-26T00:00:00+00:00", + "2019-07-27T00:00:00+00:00", + "2019-07-28T00:00:00+00:00", + "2019-07-29T00:00:00+00:00", + "2019-07-30T00:00:00+00:00", + "2019-07-31T00:00:00+00:00" + ] + } + } + } + } +} diff --git a/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/RegionConfigurationByResourceGroup.json b/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/RegionConfigurationByResourceGroup.json new file mode 100644 index 000000000000..653dbcb9e19e --- /dev/null +++ b/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/RegionConfigurationByResourceGroup.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "fa68082f-8ff7-4a25-95c7-ce9da541242f", + "resourceGroupName": "SdkRg4981", + "location": "westus", + "api-version": "2020-11-01", + "regionConfigurationRequest": { + "scheduleAvailabilityRequest": { + "storageLocation": "westus", + "skuName": "DataBox" + } + } + }, + "responses": { + "200": { + "body": { + "scheduleAvailabilityResponse": { + "availableDates": [ + "2019-07-11T00:00:00+00:00", + "2019-07-12T00:00:00+00:00", + "2019-07-13T00:00:00+00:00", + "2019-07-14T00:00:00+00:00", + "2019-07-15T00:00:00+00:00", + "2019-07-16T00:00:00+00:00", + "2019-07-17T00:00:00+00:00", + "2019-07-18T00:00:00+00:00", + "2019-07-19T00:00:00+00:00", + "2019-07-20T00:00:00+00:00", + "2019-07-21T00:00:00+00:00", + "2019-07-22T00:00:00+00:00", + "2019-07-23T00:00:00+00:00", + "2019-07-24T00:00:00+00:00", + "2019-07-25T00:00:00+00:00", + "2019-07-26T00:00:00+00:00", + "2019-07-27T00:00:00+00:00", + "2019-07-28T00:00:00+00:00", + "2019-07-29T00:00:00+00:00", + "2019-07-30T00:00:00+00:00", + "2019-07-31T00:00:00+00:00" + ] + } + } + } + } +} diff --git a/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/ValidateAddressPost.json b/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/ValidateAddressPost.json new file mode 100644 index 000000000000..40a3f3c5037d --- /dev/null +++ b/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/ValidateAddressPost.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subscriptionId": "fa68082f-8ff7-4a25-95c7-ce9da541242f", + "location": "westus", + "api-version": "2020-11-01", + "x-ms-client-request-id": [ + "cfda3c52-b129-4568-aba7-e743edf747c2" + ], + "Accept-Language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.29017.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.18363.", + "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.1.0" + ], + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "351" + ], + "validateAddress": { + "validationType": "ValidateAddress", + "shippingAddress": { + "streetAddress1": "16 TOWNSEND ST", + "streetAddress2": "Unit 1", + "city": "San Francisco", + "stateOrProvince": "CA", + "country": "US", + "postalCode": "94107", + "companyName": "Microsoft", + "addressType": "Commercial" + }, + "deviceType": "DataBox" + } + }, + "responses": { + "200": { + "body": { + "properties": { + "validationStatus": "Valid", + "alternateAddresses": [ + { + "streetAddress1": "16 TOWNSEND ST", + "streetAddress2": "Unit 1", + "streetAddress3": "", + "city": "SAN FRANCISCO", + "stateOrProvince": "CA", + "country": "US", + "postalCode": "94107", + "addressType": "None" + } + ], + "validationType": "ValidateAddress" + } + } + } + } +} diff --git a/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/ValidateInputs.json b/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/ValidateInputs.json new file mode 100644 index 000000000000..cd8a27819782 --- /dev/null +++ b/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/ValidateInputs.json @@ -0,0 +1,166 @@ +{ + "parameters": { + "subscriptionId": "fa68082f-8ff7-4a25-95c7-ce9da541242f", + "location": "westus", + "api-version": "2020-11-01", + "x-ms-client-request-id": [ + "129a0589-5017-4f35-a66c-8da38e04aae1" + ], + "Accept-Language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.29017.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.18363.", + "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.1.0" + ], + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "1675" + ], + "validationRequest": { + "validationCategory": "JobCreationValidation", + "individualRequestDetails": [ + { + "validationType": "ValidateDataTransferDetails", + "dataImportDetails": [ + { + "accountDetails": { + "dataAccountType": "StorageAccount", + "storageAccountId": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourcegroups/databoxbvt/providers/Microsoft.Storage/storageAccounts/databoxbvttestaccount" + } + } + ], + "deviceType": "DataBox", + "transferType": "ImportToAzure" + }, + { + "validationType": "ValidateAddress", + "shippingAddress": { + "streetAddress1": "16 TOWNSEND ST", + "streetAddress2": "Unit 1", + "city": "San Francisco", + "stateOrProvince": "CA", + "country": "US", + "postalCode": "94107", + "companyName": "Microsoft", + "addressType": "Commercial" + }, + "deviceType": "DataBox", + "transportPreferences": { + "preferredShipmentType": "MicrosoftManaged" + } + }, + { + "validationType": "ValidateSubscriptionIsAllowedToCreateJob" + }, + { + "validationType": "ValidateSkuAvailability", + "deviceType": "DataBox", + "transferType": "ImportToAzure", + "country": "US", + "location": "westus" + }, + { + "validationType": "ValidateCreateOrderLimit", + "deviceType": "DataBox" + }, + { + "validationType": "ValidatePreferences", + "preference": { + "transportPreferences": { + "preferredShipmentType": "MicrosoftManaged" + } + }, + "deviceType": "DataBox" + } + ] + } + }, + "responses": { + "200": { + "body": { + "properties": { + "status": "AllValidToProceed", + "individualResponseDetails": [ + { + "status": "Valid", + "validationType": "ValidateDataTransferDetails", + "error": { + "code": "Success", + "target": "KeyEncryptionKey", + "details": [], + "additionalInfo": [] + } + }, + { + "validationStatus": "Valid", + "alternateAddresses": [ + { + "streetAddress1": "16 TOWNSEND ST", + "streetAddress2": "Unit 1", + "streetAddress3": "", + "city": "SAN FRANCISCO", + "stateOrProvince": "CA", + "country": "US", + "postalCode": "94107", + "addressType": "None" + } + ], + "validationType": "ValidateAddress", + "error": { + "code": "Success", + "target": "KeyEncryptionKey", + "details": [], + "additionalInfo": [] + } + }, + { + "status": "Valid", + "validationType": "ValidateSubscriptionIsAllowedToCreateJob", + "error": { + "code": "Success", + "target": "KeyEncryptionKey", + "details": [], + "additionalInfo": [] + } + }, + { + "status": "Valid", + "validationType": "ValidateSkuAvailability", + "error": { + "code": "Success", + "target": "KeyEncryptionKey", + "details": [], + "additionalInfo": [] + } + }, + { + "status": "Valid", + "validationType": "ValidateCreateOrderLimit", + "error": { + "code": "Success", + "target": "KeyEncryptionKey", + "details": [], + "additionalInfo": [] + } + }, + { + "status": "Valid", + "validationType": "ValidatePreferences", + "error": { + "code": "Success", + "target": "KeyEncryptionKey", + "details": [], + "additionalInfo": [] + } + } + ] + } + } + } + } +} diff --git a/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/ValidateInputsByResourceGroup.json b/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/ValidateInputsByResourceGroup.json new file mode 100644 index 000000000000..c70a59c27ffe --- /dev/null +++ b/specification/databox/resource-manager/Microsoft.DataBox/stable/2021-03-01/examples/ValidateInputsByResourceGroup.json @@ -0,0 +1,167 @@ +{ + "parameters": { + "subscriptionId": "fa68082f-8ff7-4a25-95c7-ce9da541242f", + "resourceGroupName": "SdkRg6861", + "location": "westus", + "api-version": "2020-11-01", + "x-ms-client-request-id": [ + "85f045bb-7659-4a2f-bcf5-96723954afdf" + ], + "Accept-Language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.29017.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.18363.", + "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.1.0" + ], + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "1675" + ], + "validationRequest": { + "validationCategory": "JobCreationValidation", + "individualRequestDetails": [ + { + "validationType": "ValidateDataTransferDetails", + "dataImportDetails": [ + { + "accountDetails": { + "dataAccountType": "StorageAccount", + "storageAccountId": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourcegroups/databoxbvt/providers/Microsoft.Storage/storageAccounts/databoxbvttestaccount" + } + } + ], + "deviceType": "DataBox", + "transferType": "ImportToAzure" + }, + { + "validationType": "ValidateAddress", + "shippingAddress": { + "streetAddress1": "16 TOWNSEND ST", + "streetAddress2": "Unit 1", + "city": "San Francisco", + "stateOrProvince": "CA", + "country": "US", + "postalCode": "94107", + "companyName": "Microsoft", + "addressType": "Commercial" + }, + "deviceType": "DataBox", + "transportPreferences": { + "preferredShipmentType": "MicrosoftManaged" + } + }, + { + "validationType": "ValidateSubscriptionIsAllowedToCreateJob" + }, + { + "validationType": "ValidateSkuAvailability", + "deviceType": "DataBox", + "transferType": "ImportToAzure", + "country": "US", + "location": "westus" + }, + { + "validationType": "ValidateCreateOrderLimit", + "deviceType": "DataBox" + }, + { + "validationType": "ValidatePreferences", + "preference": { + "transportPreferences": { + "preferredShipmentType": "MicrosoftManaged" + } + }, + "deviceType": "DataBox" + } + ] + } + }, + "responses": { + "200": { + "body": { + "properties": { + "status": "AllValidToProceed", + "individualResponseDetails": [ + { + "status": "Valid", + "validationType": "ValidateDataTransferDetails", + "error": { + "code": "Success", + "target": "KeyEncryptionKey", + "details": [], + "additionalInfo": [] + } + }, + { + "validationStatus": "Valid", + "alternateAddresses": [ + { + "streetAddress1": "16 TOWNSEND ST", + "streetAddress2": "Unit 1", + "streetAddress3": "", + "city": "SAN FRANCISCO", + "stateOrProvince": "CA", + "country": "US", + "postalCode": "94107", + "addressType": "None" + } + ], + "validationType": "ValidateAddress", + "error": { + "code": "Success", + "target": "KeyEncryptionKey", + "details": [], + "additionalInfo": [] + } + }, + { + "status": "Valid", + "validationType": "ValidateSubscriptionIsAllowedToCreateJob", + "error": { + "code": "Success", + "target": "KeyEncryptionKey", + "details": [], + "additionalInfo": [] + } + }, + { + "status": "Valid", + "validationType": "ValidateSkuAvailability", + "error": { + "code": "Success", + "target": "KeyEncryptionKey", + "details": [], + "additionalInfo": [] + } + }, + { + "status": "Valid", + "validationType": "ValidateCreateOrderLimit", + "error": { + "code": "Success", + "target": "KeyEncryptionKey", + "details": [], + "additionalInfo": [] + } + }, + { + "status": "Valid", + "validationType": "ValidatePreferences", + "error": { + "code": "Success", + "target": "KeyEncryptionKey", + "details": [], + "additionalInfo": [] + } + } + ] + } + } + } + } +} diff --git a/specification/databox/resource-manager/readme.azureresourceschema.md b/specification/databox/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index c4424d428592..000000000000 --- a/specification/databox/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,60 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-databox-2020-11-01 - - tag: schema-databox-2020-04-01 - - tag: schema-databox-2019-09-01 - - tag: schema-databox-2018-01-01 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-databox-2020-11-01 and azureresourceschema - -``` yaml $(tag) == 'schema-databox-2020-11-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DataBox/stable/2020-11-01/databox.json - -``` - -### Tag: schema-databox-2020-04-01 and azureresourceschema - -``` yaml $(tag) == 'schema-databox-2020-04-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DataBox/stable/2020-04-01/databox.json - -``` - -### Tag: schema-databox-2019-09-01 and azureresourceschema - -``` yaml $(tag) == 'schema-databox-2019-09-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DataBox/stable/2019-09-01/databox.json - -``` - -### Tag: schema-databox-2018-01-01 and azureresourceschema - -``` yaml $(tag) == 'schema-databox-2018-01-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DataBox/stable/2018-01-01/databox.json - -``` diff --git a/specification/databox/resource-manager/readme.cli.md b/specification/databox/resource-manager/readme.cli.md index a6275e9e42c2..685a3b701cc9 100644 --- a/specification/databox/resource-manager/readme.cli.md +++ b/specification/databox/resource-manager/readme.cli.md @@ -9,6 +9,7 @@ cli: namespace: azure.mgmt.databox test-scenario: - name: JobsCreate + - name: JobsGet6 - name: JobsGet5 - name: JobsGet4 - name: JobsGet3 @@ -29,4 +30,5 @@ cli: - name: ServiceValidateInputs - name: AvailableSkusPost - name: JobsDelete + - name: JobMitigate ``` \ No newline at end of file diff --git a/specification/databox/resource-manager/readme.go.md b/specification/databox/resource-manager/readme.go.md index 36d7f11fa3d8..9213be8d0375 100644 --- a/specification/databox/resource-manager/readme.go.md +++ b/specification/databox/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: databox clear-output-folder: true ``` @@ -17,6 +17,16 @@ batch: - tag: package-2019-09 - tag: package-2020-04 - tag: package-2020-11 + - tag: package-2021-03 +``` + +### Tag: package-2021-03 and go + +These settings apply only when `--tag=package-2021-03 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2021-03' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2021-03-01/$(namespace) ``` ### Tag: package-2018-01 and go diff --git a/specification/databox/resource-manager/readme.java.md b/specification/databox/resource-manager/readme.java.md new file mode 100644 index 000000000000..e6f705978a1f --- /dev/null +++ b/specification/databox/resource-manager/readme.java.md @@ -0,0 +1,90 @@ +## 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.databox + license-header: MICROSOFT_MIT_NO_CODEGEN + payload-flattening-threshold: 1 + output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-databox +``` + +### Java multi-api + +``` yaml $(java) && $(multiapi) +batch: + - tag: package-2018-01 + - tag: package-2019-09 + - tag: package-2020-04 + - tag: package-2020-11 + - tag: package-2021-03 +``` + +### Tag: package-2018-01 and java + +These settings apply only when `--tag=package-2018-01 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-2018-01' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.databox.v2018_01_01 + output-folder: $(azure-libraries-for-java-folder)/sdk/databox/mgmt-v2018_01_01 +regenerate-manager: true +generate-interface: true +``` + +### Tag: package-2019-09 and java + +These settings apply only when `--tag=package-2019-09-java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-2019-09' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.databox.v2019_09-01 + output-folder: $(azure-libraries-for-java-folder)/sdk/databox/mgmt-v2019_09_01 +regenerate-manager: true +generate-interface: true +``` + +### Tag: package-2020-04 and java + +These settings apply only when `--tag=package-2020-04-java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-2020-04' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.databox.v2020_04-01 + output-folder: $(azure-libraries-for-java-folder)/sdk/databox/mgmt-v2020_04_01 +regenerate-manager: true +generate-interface: true +``` + +### Tag: package-2020-11 and java + +These settings apply only when `--tag=package-2020-11-java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-2020-11' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.databox.v2020_11-01 + output-folder: $(azure-libraries-for-java-folder)/sdk/databox/mgmt-v2020_11_01 +regenerate-manager: true +generate-interface: true +``` + +### Tag: package-2021-03 and java + +These settings apply only when `--tag=package-2021-03-java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-2021-03' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.databox.v2021_03-01 + output-folder: $(azure-libraries-for-java-folder)/sdk/databox/mgmt-v2021_03_01 +regenerate-manager: true +generate-interface: true +``` \ No newline at end of file diff --git a/specification/databox/resource-manager/readme.md b/specification/databox/resource-manager/readme.md index 82293c41cca4..cbc5359579e8 100644 --- a/specification/databox/resource-manager/readme.md +++ b/specification/databox/resource-manager/readme.md @@ -26,7 +26,16 @@ These are the global settings for the DataBox API. ``` yaml openapi-type: arm -tag: package-2020-11 +tag: package-2021-03 +``` + +### Tag: package-2021-03 + +These settings apply only when `--tag=package-2021-03` is specified on the command line. + +``` yaml $(tag) == 'package-2021-03' +input-file: +- Microsoft.DataBox/stable/2021-03-01/databox.json ``` ### Tag: package-2020-11 @@ -90,8 +99,6 @@ swagger-to-sdk: - bundle install && rake arm:regen_all_profiles['azure_mgmt_databox'] - repo: azure-cli-extensions - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js databox/resource-manager ``` ## C# @@ -129,82 +136,7 @@ See configuration in [readme.go.md](./readme.go.md) ## Java -These settings apply only when `--java` is specified on the command line. -Please also specify `--azure-libraries-for-java-folder=`. - -``` yaml $(java) -java: - azure-arm: true - fluent: true - namespace: com.microsoft.azure.management.databox - license-header: MICROSOFT_MIT_NO_CODEGEN - payload-flattening-threshold: 1 - output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-databox -``` - -### Java multi-api - -``` yaml $(java) && $(multiapi) -batch: - - tag: package-2018-01 - - tag: package-2019-09 - - tag: package-2020-04 - - tag: package-2020-11 -``` - -### Tag: package-2018-01 and java - -These settings apply only when `--tag=package-2018-01 --java` is specified on the command line. -Please also specify `--azure-libraries-for-java-folder=`. - -``` yaml $(tag) == 'package-2018-01' && $(java) && $(multiapi) -java: - namespace: com.microsoft.azure.management.databox.v2018_01_01 - output-folder: $(azure-libraries-for-java-folder)/sdk/databox/mgmt-v2018_01_01 -regenerate-manager: true -generate-interface: true -``` - -### Tag: package-2019-09 and java - -These settings apply only when `--tag=package-2019-09-java` is specified on the command line. -Please also specify `--azure-libraries-for-java-folder=`. - -``` yaml $(tag) == 'package-2019-09' && $(java) && $(multiapi) -java: - namespace: com.microsoft.azure.management.databox.v2019_09-01 - output-folder: $(azure-libraries-for-java-folder)/sdk/databox/mgmt-v2019_09_01 -regenerate-manager: true -generate-interface: true -``` - -### Tag: package-2020-04 and java - -These settings apply only when `--tag=package-2020-04-java` is specified on the command line. -Please also specify `--azure-libraries-for-java-folder=`. - -``` yaml $(tag) == 'package-2020-04' && $(java) && $(multiapi) -java: - namespace: com.microsoft.azure.management.databox.v2020_04-01 - output-folder: $(azure-libraries-for-java-folder)/sdk/databox/mgmt-v2020_04_01 -regenerate-manager: true -generate-interface: true -``` - -### Tag: package-2020-11 and java - -These settings apply only when `--tag=package-2020-11-java` is specified on the command line. -Please also specify `--azure-libraries-for-java-folder=`. - -``` yaml $(tag) == 'package-2020-11' && $(java) && $(multiapi) -java: - namespace: com.microsoft.azure.management.databox.v2020_11-01 - output-folder: $(azure-libraries-for-java-folder)/sdk/databox/mgmt-v2020_11_01 -regenerate-manager: true -generate-interface: true -``` +See configuration in [readme.java.md](./readme.java.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/databox/resource-manager/readme.python.md b/specification/databox/resource-manager/readme.python.md index 2956e1d72d64..a4a1d6053bd0 100644 --- a/specification/databox/resource-manager/readme.python.md +++ b/specification/databox/resource-manager/readme.python.md @@ -36,6 +36,7 @@ Generate all API versions currently shipped for this package ```yaml $(python) && $(multiapi) && !$(track2) batch: + - tag: package-2021-03 - tag: package-2020-11 - tag: package-2020-04 - tag: package-2019-09 @@ -44,6 +45,7 @@ batch: ```yaml $(python) && $(multiapi) && $(track2) batch: + - tag: package-2021-03 - tag: package-2020-11 - tag: package-2020-04 - tag: package-2019-09 @@ -57,6 +59,21 @@ clear-output-folder: false perform-load: false ``` +### Tag: package-2021-03 and python + +These settings apply only when `--tag=package-2021-03 --python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-2021-03' && $(python) && !$(track2) +python: + namespace: azure.mgmt.databox.v2021_03_01 + output-folder: $(python-sdks-folder)/databox/azure-mgmt-databox/azure/mgmt/databox/v2021_03_01 +``` +``` yaml $(tag) == 'package-2021-03' && $(python) && $(track2) +namespace: azure.mgmt.databox.v2021_03_01 +output-folder: $(python-sdks-folder)/databox/azure-mgmt-databox/azure/mgmt/databox/v2021_03_01 +``` + ### Tag: package-2020-11 and python These settings apply only when `--tag=package-2020-11 --python` is specified on the command line. diff --git a/specification/databox/resource-manager/readme.ruby.md b/specification/databox/resource-manager/readme.ruby.md index fddb1784e32c..e151617df9d9 100644 --- a/specification/databox/resource-manager/readme.ruby.md +++ b/specification/databox/resource-manager/readme.ruby.md @@ -16,6 +16,17 @@ batch: - tag: package-2019-09 - tag: package-2020-04 - tag: package-2020-11 + - tag: package-2021-03 +``` + +### Tag: package-2021-03 and ruby + +These settings apply only when `--tag=package-2021-03 --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +``` yaml $(tag) == 'package-2018-01' && $(ruby) +namespace: "Azure::Compute::Mgmt::V2021_03_01" +output-folder: $(ruby-sdks-folder)/management/azure_mgmt_databox/lib ``` ### Tag: package-2018-01 and ruby diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/databoxedge.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/databoxedge.json new file mode 100644 index 000000000000..a2f2d5badd84 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/databoxedge.json @@ -0,0 +1,8772 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-01-preview", + "title": "DataBoxEdgeManagementClient" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/providers/Microsoft.DataBoxEdge/operations": { + "get": { + "tags": [ + "Operations" + ], + "summary": "List all the supported operations.", + "operationId": "Operations_List", + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "List of supported operations.", + "schema": { + "$ref": "#/definitions/OperationsList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "OperationsGet": { + "$ref": "./examples/OperationsGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DataBoxEdge/availableSkus": { + "get": { + "tags": [ + "AvailableSkus" + ], + "summary": "List all the available Skus and information related to them.", + "operationId": "AvailableSkus_List", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Lists the available Skus and information related to them.", + "schema": { + "$ref": "#/definitions/DataBoxEdgeSkuList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "AvailableSkus": { + "$ref": "./examples/AvailableSkusList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices": { + "get": { + "tags": [ + "Devices" + ], + "description": "Gets all the Data Box Edge/Data Box Gateway devices in a subscription.", + "operationId": "Devices_ListBySubscription", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$expand", + "in": "query", + "description": "Specify $expand=details to populate additional fields related to the resource or Specify $skipToken= to populate the next page in the list.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The collection of Data Box Edge/Data Box Gateway devices.", + "schema": { + "$ref": "#/definitions/DataBoxEdgeDeviceList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "DataBoxEdgeDeviceGetBySubscription": { + "$ref": "./examples/DataBoxEdgeDeviceGetBySubscription.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices": { + "get": { + "tags": [ + "Devices" + ], + "description": "Gets all the Data Box Edge/Data Box Gateway devices in a resource group.", + "operationId": "Devices_ListByResourceGroup", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$expand", + "in": "query", + "description": "Specify $expand=details to populate additional fields related to the resource or Specify $skipToken= to populate the next page in the list.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The collection of Data Box Edge/Data Box Gateway devices.", + "schema": { + "$ref": "#/definitions/DataBoxEdgeDeviceList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "DataBoxEdgeDeviceGetByResourceGroup": { + "$ref": "./examples/DataBoxEdgeDeviceGetByResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}": { + "get": { + "tags": [ + "Devices" + ], + "description": "Gets the properties of the Data Box Edge/Data Box Gateway device.", + "operationId": "Devices_Get", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Data Box Edge/Data Box Gateway device.", + "schema": { + "$ref": "#/definitions/DataBoxEdgeDevice" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DataBoxEdgeDeviceGetByName": { + "$ref": "./examples/DataBoxEdgeDeviceGetByName.json" + } + } + }, + "put": { + "tags": [ + "Devices" + ], + "description": "Creates or updates a Data Box Edge/Data Box Gateway resource.", + "operationId": "Devices_CreateOrUpdate", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "dataBoxEdgeDevice", + "in": "body", + "description": "The resource object.", + "required": true, + "schema": { + "$ref": "#/definitions/DataBoxEdgeDevice" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully created or updated the resource.", + "schema": { + "$ref": "#/definitions/DataBoxEdgeDevice" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "DataBoxEdgeDevicePut": { + "$ref": "./examples/DataBoxEdgeDevicePut.json" + } + } + }, + "delete": { + "tags": [ + "Devices" + ], + "description": "Deletes the Data Box Edge/Data Box Gateway device.", + "operationId": "Devices_Delete", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted the request to delete the resource." + }, + "204": { + "description": "The resource is already deleted." + }, + "200": { + "description": "Successfully deleted the resource." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "DataBoxEdgeDeviceDelete": { + "$ref": "./examples/DataBoxEdgeDeviceDelete.json" + } + } + }, + "patch": { + "tags": [ + "Devices" + ], + "description": "Modifies a Data Box Edge/Data Box Gateway resource.", + "operationId": "Devices_Update", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The resource parameters.", + "required": true, + "schema": { + "$ref": "#/definitions/DataBoxEdgeDevicePatch" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the resource.", + "schema": { + "$ref": "#/definitions/DataBoxEdgeDevice" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DataBoxEdgeDevicePatch": { + "$ref": "./examples/DataBoxEdgeDevicePatch.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/alerts": { + "get": { + "tags": [ + "Alerts" + ], + "description": "Gets all the alerts for a Data Box Edge/Data Box Gateway device.", + "operationId": "Alerts_ListByDataBoxEdgeDevice", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The collection of alerts.", + "schema": { + "$ref": "#/definitions/AlertList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "AlertGetAllInDevice": { + "$ref": "./examples/AlertGetAllInDevice.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/alerts/{name}": { + "get": { + "tags": [ + "Alerts" + ], + "summary": "Gets an alert by name.", + "operationId": "Alerts_Get", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The alert name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The alert details.", + "schema": { + "$ref": "#/definitions/Alert" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "AlertGet": { + "$ref": "./examples/AlertGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/bandwidthSchedules": { + "get": { + "tags": [ + "BandwidthSchedules" + ], + "description": "Gets all the bandwidth schedules for a Data Box Edge/Data Box Gateway device.", + "operationId": "BandwidthSchedules_ListByDataBoxEdgeDevice", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The collection of bandwidth schedules.", + "schema": { + "$ref": "#/definitions/BandwidthSchedulesList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "BandwidthScheduleGetAllInDevice": { + "$ref": "./examples/BandwidthScheduleGetAllInDevice.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/bandwidthSchedules/{name}": { + "get": { + "tags": [ + "BandwidthSchedules" + ], + "description": "Gets the properties of the specified bandwidth schedule.", + "operationId": "BandwidthSchedules_Get", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The bandwidth schedule name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The bandwidth schedule.", + "schema": { + "$ref": "#/definitions/BandwidthSchedule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "BandwidthScheduleGet": { + "$ref": "./examples/BandwidthScheduleGet.json" + } + } + }, + "put": { + "tags": [ + "BandwidthSchedules" + ], + "description": "Creates or updates a bandwidth schedule.", + "operationId": "BandwidthSchedules_CreateOrUpdate", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The bandwidth schedule name which needs to be added/updated.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The bandwidth schedule to be added or updated.", + "required": true, + "schema": { + "$ref": "#/definitions/BandwidthSchedule" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted the request to create or update the bandwidth schedule." + }, + "200": { + "description": "Successfully created or updated the bandwidth schedule.", + "schema": { + "$ref": "#/definitions/BandwidthSchedule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "BandwidthSchedulePut": { + "$ref": "./examples/BandwidthSchedulePut.json" + } + } + }, + "delete": { + "tags": [ + "BandwidthSchedules" + ], + "description": "Deletes the specified bandwidth schedule.", + "operationId": "BandwidthSchedules_Delete", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The bandwidth schedule name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted the request to delete the bandwidth schedule." + }, + "204": { + "description": "Successfully deleted the bandwidth schedule." + }, + "200": { + "description": "Success" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "BandwidthScheduleDelete": { + "$ref": "./examples/BandwidthScheduleDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/downloadUpdates": { + "post": { + "tags": [ + "Devices" + ], + "summary": "Downloads the updates on a Data Box Edge/Data Box Gateway device.", + "operationId": "Devices_DownloadUpdates", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted the request to download the updates on the device." + }, + "200": { + "description": "Successfully downloaded the updates on the device." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "DownloadUpdatesPost": { + "$ref": "./examples/DownloadUpdatesPost.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/generateCertificate": { + "post": { + "tags": [ + "Devices" + ], + "description": "Generates certificate for activation key.", + "operationId": "Devices_GenerateCertificate", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully generated self signed certificate.", + "schema": { + "$ref": "#/definitions/GenerateCertResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GenerateCertificate": { + "$ref": "./examples/GenerateCertificate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/getExtendedInformation": { + "post": { + "tags": [ + "Devices" + ], + "description": "Gets additional information for the specified Azure Stack Edge/Data Box Gateway device.", + "operationId": "Devices_GetExtendedInformation", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The additional information.", + "schema": { + "$ref": "#/definitions/DataBoxEdgeDeviceExtendedInfo" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExtendedInfoPost": { + "$ref": "./examples/ExtendedInfoPost.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/installUpdates": { + "post": { + "tags": [ + "Devices" + ], + "summary": "Installs the updates on the Data Box Edge/Data Box Gateway device.", + "operationId": "Devices_InstallUpdates", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted the request to install updates on the device." + }, + "200": { + "description": "Successfully installed updates on the device." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "InstallUpdatesPost": { + "$ref": "./examples/InstallUpdatesPost.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/jobs/{name}": { + "get": { + "tags": [ + "Jobs" + ], + "summary": "Gets the details of a specified job on a Data Box Edge/Data Box Gateway device.", + "operationId": "Jobs_Get", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The job name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The job details.", + "schema": { + "$ref": "#/definitions/Job" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "JobsGet": { + "$ref": "./examples/JobsGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/networkSettings/default": { + "get": { + "tags": [ + "Devices" + ], + "description": "Gets the network settings of the specified Data Box Edge/Data Box Gateway device.", + "operationId": "Devices_GetNetworkSettings", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The device network settings.", + "schema": { + "$ref": "#/definitions/NetworkSettings" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "NetworkSettingsGet": { + "$ref": "./examples/NetworkSettingsGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/nodes": { + "get": { + "tags": [ + "Nodes" + ], + "description": "Gets all the nodes currently configured under this Data Box Edge device", + "operationId": "Nodes_ListByDataBoxEdgeDevice", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The collection of all nodes on the device.", + "schema": { + "$ref": "#/definitions/NodeList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "NodesGetAllInDevice": { + "$ref": "./examples/NodeGetAllInDevice.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/operationsStatus/{name}": { + "get": { + "tags": [ + "OperationsStatus" + ], + "summary": "Gets the details of a specified job on a Data Box Edge/Data Box Gateway device.", + "operationId": "OperationsStatus_Get", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The job name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The job details.", + "schema": { + "$ref": "#/definitions/Job" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "OperationsStatusGet": { + "$ref": "./examples/OperationsStatusGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/orders": { + "get": { + "tags": [ + "Orders" + ], + "summary": "Lists all the orders related to a Data Box Edge/Data Box Gateway device.", + "operationId": "Orders_ListByDataBoxEdgeDevice", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Lists all the orders for the Data Box Edge Device", + "schema": { + "$ref": "#/definitions/OrderList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "OrderGetAllInDevice": { + "$ref": "./examples/OrderGetAllInDevice.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/orders/default": { + "get": { + "tags": [ + "Orders" + ], + "summary": "Gets a specific order by name.", + "operationId": "Orders_Get", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The order details of a device.", + "schema": { + "$ref": "#/definitions/Order" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "OrderGet": { + "$ref": "./examples/OrderGet.json" + } + } + }, + "put": { + "tags": [ + "Orders" + ], + "summary": "Creates or updates an order.", + "operationId": "Orders_CreateOrUpdate", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The order details of a device.", + "required": true, + "type": "string" + }, + { + "name": "order", + "in": "body", + "description": "The order to be created or updated.", + "required": true, + "schema": { + "$ref": "#/definitions/Order" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted the request to create or update the order." + }, + "200": { + "description": "Successfully created or updated the order.", + "schema": { + "$ref": "#/definitions/Order" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "OrderPut": { + "$ref": "./examples/OrderPut.json" + } + } + }, + "delete": { + "tags": [ + "Orders" + ], + "summary": "Deletes the order related to the device.", + "operationId": "Orders_Delete", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted the request to delete the order." + }, + "204": { + "description": "The order is already deleted." + }, + "200": { + "description": "Successfully deleted the order." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "OrderDelete": { + "$ref": "./examples/OrderDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/orders/default/listDCAccessCode": { + "post": { + "tags": [ + "Orders" + ], + "summary": "Gets the DCAccess Code", + "operationId": "Orders_ListDCAccessCode", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "DC Access code for the device", + "schema": { + "$ref": "#/definitions/DCAccessCode" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetDCAccessCode": { + "$ref": "./examples/GetDCAccessCode.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/roles": { + "get": { + "tags": [ + "Roles" + ], + "description": "Lists all the roles configured in a Data Box Edge/Data Box Gateway device.", + "operationId": "Roles_ListByDataBoxEdgeDevice", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "List of all the roles configured in the device.", + "schema": { + "$ref": "#/definitions/RoleList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "RoleGetAllInDevice": { + "$ref": "./examples/RoleGetAllInDevice.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/roles/{name}": { + "get": { + "tags": [ + "Roles" + ], + "description": "Gets a specific role by name.", + "operationId": "Roles_Get", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The role name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The role with the specified name in the given device.", + "schema": { + "$ref": "#/definitions/Role" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "RoleGet": { + "$ref": "./examples/RoleGet.json" + } + } + }, + "put": { + "tags": [ + "Roles" + ], + "description": "Create or update a role.", + "operationId": "Roles_CreateOrUpdate", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The role name.", + "required": true, + "type": "string" + }, + { + "name": "role", + "in": "body", + "description": "The role properties.", + "required": true, + "schema": { + "$ref": "#/definitions/Role" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted the request to create or update the role." + }, + "200": { + "description": "Successfully created or updated the role.", + "schema": { + "$ref": "#/definitions/Role" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "RolePut": { + "$ref": "./examples/RolePut.json" + } + } + }, + "delete": { + "tags": [ + "Roles" + ], + "description": "Deletes the role on the device.", + "operationId": "Roles_Delete", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The role name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted the request to delete the role." + }, + "204": { + "description": "The role is already deleted." + }, + "200": { + "description": "Successfully deleted the role." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "RoleDelete": { + "$ref": "./examples/RoleDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/roles/{roleName}/addons": { + "get": { + "tags": [ + "Addons" + ], + "description": "Lists all the addons configured in the role.", + "operationId": "Addons_ListByRole", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "roleName", + "in": "path", + "description": "The role name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "List of all the addons configured in the role.", + "schema": { + "$ref": "#/definitions/AddonList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "RoleListAddOns": { + "$ref": "./examples/RoleListAddOns.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/roles/{roleName}/addons/{addonName}": { + "get": { + "tags": [ + "Addons" + ], + "description": "Gets a specific addon by name.", + "operationId": "Addons_Get", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "roleName", + "in": "path", + "description": "The role name.", + "required": true, + "type": "string" + }, + { + "name": "addonName", + "in": "path", + "description": "The addon name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The addon with the specified name in the role.", + "schema": { + "$ref": "#/definitions/Addon" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetAddons": { + "$ref": "./examples/GetAddons.json" + } + } + }, + "put": { + "tags": [ + "Addons" + ], + "description": "Create or update a addon.", + "operationId": "Addons_CreateOrUpdate", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "roleName", + "in": "path", + "description": "The role name.", + "required": true, + "type": "string" + }, + { + "name": "addonName", + "in": "path", + "description": "The addon name.", + "required": true, + "type": "string" + }, + { + "name": "addon", + "in": "body", + "description": "The addon properties.", + "required": true, + "schema": { + "$ref": "#/definitions/Addon" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted the request to create or update the addon." + }, + "200": { + "description": "Successfully created or updated the addon.", + "schema": { + "$ref": "#/definitions/Addon" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "PutAddons": { + "$ref": "./examples/PutAddons.json" + } + } + }, + "delete": { + "tags": [ + "Addons" + ], + "description": "Deletes the addon on the device.", + "operationId": "Addons_Delete", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "roleName", + "in": "path", + "description": "The role name.", + "required": true, + "type": "string" + }, + { + "name": "addonName", + "in": "path", + "description": "The addon name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted the request to delete the addon." + }, + "204": { + "description": "The addon is already deleted." + }, + "200": { + "description": "Successfully deleted the addon." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "DeleteAddons": { + "$ref": "./examples/DeleteAddons.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/roles/{roleName}/monitoringConfig": { + "get": { + "tags": [ + "MonitoringConfig" + ], + "summary": "Lists metric configurations in a role.", + "operationId": "MonitoringConfig_List", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "roleName", + "in": "path", + "description": "The role name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The monitoring config details.", + "schema": { + "$ref": "#/definitions/MonitoringMetricConfigurationList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "ListMonitoringConfig": { + "$ref": "./examples/ListMonitoringConfig.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/roles/{roleName}/monitoringConfig/default": { + "get": { + "tags": [ + "MonitoringConfig" + ], + "summary": "Gets a metric configuration of a role.", + "operationId": "MonitoringConfig_Get", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "roleName", + "in": "path", + "description": "The role name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The monitoring config details.", + "schema": { + "$ref": "#/definitions/MonitoringMetricConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetMonitoringConfig": { + "$ref": "./examples/GetMonitoringConfig.json" + } + } + }, + "put": { + "tags": [ + "MonitoringConfig" + ], + "summary": "Creates a new metric configuration or updates an existing one for a role.", + "operationId": "MonitoringConfig_CreateOrUpdate", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "roleName", + "in": "path", + "description": "The role name.", + "required": true, + "type": "string" + }, + { + "name": "monitoringMetricConfiguration", + "in": "body", + "description": "The metric configuration.", + "required": true, + "schema": { + "$ref": "#/definitions/MonitoringMetricConfiguration" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted the request to create or update the metrics configuration." + }, + "200": { + "description": "Successfully created or updated the metrics configuration.", + "schema": { + "$ref": "#/definitions/MonitoringMetricConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "PutMonitoringConfig": { + "$ref": "./examples/PutMonitoringConfig.json" + } + } + }, + "delete": { + "tags": [ + "MonitoringConfig" + ], + "summary": "deletes a new metric configuration for a role.", + "operationId": "MonitoringConfig_Delete", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "roleName", + "in": "path", + "description": "The role name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the metrics configuration." + }, + "202": { + "description": "Accepted the request to delete the metrics configuration." + }, + "204": { + "description": "The metrics configuration is already deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "DeleteMonitoringConfig": { + "$ref": "./examples/DeleteMonitoringConfig.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/scanForUpdates": { + "post": { + "tags": [ + "Devices" + ], + "summary": "Scans for updates on a Data Box Edge/Data Box Gateway device.", + "operationId": "Devices_ScanForUpdates", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted the request to scan for updates on the device." + }, + "200": { + "description": "Successfully scanned the device for updates." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "ScanForUpdatesPost": { + "$ref": "./examples/ScanForUpdatesPost.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/securitySettings/default/update": { + "post": { + "tags": [ + "Devices" + ], + "description": "Updates the security settings on a Data Box Edge/Data Box Gateway device.", + "operationId": "Devices_CreateOrUpdateSecuritySettings", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "securitySettings", + "in": "body", + "description": "The security settings.", + "required": true, + "schema": { + "$ref": "#/definitions/SecuritySettings" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted the request to update the security settings." + }, + "204": { + "description": "Updated the security settings." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "CreateOrUpdateSecuritySettings": { + "$ref": "./examples/SecuritySettingsUpdatePost.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/shares": { + "get": { + "tags": [ + "Shares" + ], + "summary": "Lists all the shares in a Data Box Edge/Data Box Gateway device.", + "operationId": "Shares_ListByDataBoxEdgeDevice", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The collection of all the shares on the device.", + "schema": { + "$ref": "#/definitions/ShareList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "ShareGetAllInDevice": { + "$ref": "./examples/ShareGetAllInDevice.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/shares/{name}": { + "get": { + "tags": [ + "Shares" + ], + "summary": "Gets a share by name.", + "operationId": "Shares_Get", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The share name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The share details.", + "schema": { + "$ref": "#/definitions/Share" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ShareGet": { + "$ref": "./examples/ShareGet.json" + } + } + }, + "put": { + "tags": [ + "Shares" + ], + "summary": "Creates a new share or updates an existing share on the device.", + "operationId": "Shares_CreateOrUpdate", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The share name.", + "required": true, + "type": "string" + }, + { + "name": "share", + "in": "body", + "description": "The share properties.", + "required": true, + "schema": { + "$ref": "#/definitions/Share" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted the request to create or update the share." + }, + "200": { + "description": "Successfully created or updated the share.", + "schema": { + "$ref": "#/definitions/Share" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "SharePut": { + "$ref": "./examples/SharePut.json" + } + } + }, + "delete": { + "tags": [ + "Shares" + ], + "description": "Deletes the share on the Data Box Edge/Data Box Gateway device.", + "operationId": "Shares_Delete", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The share name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted the request to delete the share." + }, + "204": { + "description": "The share is already deleted." + }, + "200": { + "description": "Successfully deleted the share." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "ShareDelete": { + "$ref": "./examples/ShareDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/shares/{name}/refresh": { + "post": { + "tags": [ + "Shares" + ], + "summary": "Refreshes the share metadata with the data from the cloud.", + "operationId": "Shares_Refresh", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The share name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted the request to refresh the share on the device." + }, + "200": { + "description": "Successfully refreshed the share on the device." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "ShareRefreshPost": { + "$ref": "./examples/ShareRefreshPost.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/storageAccountCredentials": { + "get": { + "tags": [ + "StorageAccountCredentials" + ], + "summary": "Gets all the storage account credentials in a Data Box Edge/Data Box Gateway device.", + "operationId": "StorageAccountCredentials_ListByDataBoxEdgeDevice", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The collection of storage account credentials.", + "schema": { + "$ref": "#/definitions/StorageAccountCredentialList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "SACGetAllInDevice": { + "$ref": "./examples/SACGetAllInDevice.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/storageAccountCredentials/{name}": { + "get": { + "tags": [ + "StorageAccountCredentials" + ], + "description": "Gets the properties of the specified storage account credential.", + "operationId": "StorageAccountCredentials_Get", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The storage account credential name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The storage account credential properties.", + "schema": { + "$ref": "#/definitions/StorageAccountCredential" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "SACGet": { + "$ref": "./examples/SACGet.json" + } + } + }, + "put": { + "tags": [ + "StorageAccountCredentials" + ], + "description": "Creates or updates the storage account credential.", + "operationId": "StorageAccountCredentials_CreateOrUpdate", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The storage account credential name.", + "required": true, + "type": "string" + }, + { + "name": "storageAccountCredential", + "in": "body", + "description": "The storage account credential.", + "required": true, + "schema": { + "$ref": "#/definitions/StorageAccountCredential" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted the request to create or update the storage account credential." + }, + "200": { + "description": "Successfully created or updated the storage account credential.", + "schema": { + "$ref": "#/definitions/StorageAccountCredential" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "SACPut": { + "$ref": "./examples/SACPut.json" + } + } + }, + "delete": { + "tags": [ + "StorageAccountCredentials" + ], + "description": "Deletes the storage account credential.", + "operationId": "StorageAccountCredentials_Delete", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The storage account credential name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted the request to delete the storage account credential." + }, + "204": { + "description": "The storage account credential is already deleted." + }, + "200": { + "description": "Successfully deleted the storage account credential." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "SACDelete": { + "$ref": "./examples/SACDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/storageAccounts": { + "get": { + "tags": [ + "StorageAccounts" + ], + "summary": "Lists all the StorageAccounts in a Data Box Edge/Data Box Gateway device.", + "operationId": "StorageAccounts_ListByDataBoxEdgeDevice", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The collection of all the StorageAccounts on the device.", + "schema": { + "$ref": "#/definitions/StorageAccountList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "StorageAccountGetAllInDevice": { + "$ref": "./examples/StorageAccountGetAllInDevice.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/storageAccounts/{storageAccountName}": { + "get": { + "tags": [ + "StorageAccounts" + ], + "summary": "Gets a StorageAccount by name.", + "operationId": "StorageAccounts_Get", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "storageAccountName", + "in": "path", + "description": "The storage account name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The storage account details.", + "schema": { + "$ref": "#/definitions/StorageAccount" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "StorageAccountGet": { + "$ref": "./examples/StorageAccountGet.json" + } + } + }, + "put": { + "tags": [ + "StorageAccounts" + ], + "summary": "Creates a new StorageAccount or updates an existing StorageAccount on the device.", + "operationId": "StorageAccounts_CreateOrUpdate", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "storageAccountName", + "in": "path", + "description": "The StorageAccount name.", + "required": true, + "type": "string" + }, + { + "name": "storageAccount", + "in": "body", + "description": "The StorageAccount properties.", + "required": true, + "schema": { + "$ref": "#/definitions/StorageAccount" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted the request to create or update the StorageAccount." + }, + "200": { + "description": "Successfully created or updated the StorageAccount.", + "schema": { + "$ref": "#/definitions/StorageAccount" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "StorageAccountPut": { + "$ref": "./examples/StorageAccountPut.json" + } + } + }, + "delete": { + "tags": [ + "StorageAccounts" + ], + "description": "Deletes the StorageAccount on the Data Box Edge/Data Box Gateway device.", + "operationId": "StorageAccounts_Delete", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "storageAccountName", + "in": "path", + "description": "The StorageAccount name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted the request to delete the StorageAccount." + }, + "204": { + "description": "The StorageAccount is already deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "StorageAccountDelete": { + "$ref": "./examples/StorageAccountDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/storageAccounts/{storageAccountName}/containers": { + "get": { + "tags": [ + "Containers" + ], + "summary": "Lists all the containers of a storage Account in a Data Box Edge/Data Box Gateway device.", + "operationId": "Containers_ListByStorageAccount", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "storageAccountName", + "in": "path", + "description": "The storage Account name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The collection of all the containers on the device.", + "schema": { + "$ref": "#/definitions/ContainerList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "ContainerListAllInDevice": { + "$ref": "./examples/ContainerListAllInDevice.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/storageAccounts/{storageAccountName}/containers/{containerName}": { + "get": { + "tags": [ + "Containers" + ], + "summary": "Gets a container by name.", + "operationId": "Containers_Get", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "storageAccountName", + "in": "path", + "description": "The Storage Account Name", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "The container Name", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The container details.", + "schema": { + "$ref": "#/definitions/Container" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ContainerGet": { + "$ref": "./examples/ContainerGet.json" + } + } + }, + "put": { + "tags": [ + "Containers" + ], + "summary": "Creates a new container or updates an existing container on the device.", + "operationId": "Containers_CreateOrUpdate", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "storageAccountName", + "in": "path", + "description": "The Storage Account Name", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "The container name.", + "required": true, + "type": "string" + }, + { + "name": "container", + "in": "body", + "description": "The container properties.", + "required": true, + "schema": { + "$ref": "#/definitions/Container" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted the request to create or update the container." + }, + "200": { + "description": "Successfully created or updated the container.", + "schema": { + "$ref": "#/definitions/Container" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "ContainerPut": { + "$ref": "./examples/ContainerPut.json" + } + } + }, + "delete": { + "tags": [ + "Containers" + ], + "description": "Deletes the container on the Data Box Edge/Data Box Gateway device.", + "operationId": "Containers_Delete", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "storageAccountName", + "in": "path", + "description": "The Storage Account Name", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "The container name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted the request to delete the container." + }, + "204": { + "description": "The container is already deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "ContainerDelete": { + "$ref": "./examples/ContainerDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/storageAccounts/{storageAccountName}/containers/{containerName}/refresh": { + "post": { + "tags": [ + "Containers" + ], + "summary": "Refreshes the container metadata with the data from the cloud.", + "operationId": "Containers_Refresh", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "storageAccountName", + "in": "path", + "description": "The Storage Account Name", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "The container name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted the request to refresh the container on the device." + }, + "200": { + "description": "Successfully refreshed the container on the device." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "ContainerRefresh": { + "$ref": "./examples/ContainerRefresh.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/triggers": { + "get": { + "tags": [ + "Triggers" + ], + "description": "Lists all the triggers configured in the device.", + "operationId": "Triggers_ListByDataBoxEdgeDevice", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$filter", + "in": "query", + "description": "Specify $filter='CustomContextTag eq ' to filter on custom context tag property", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "List all the triggers configured in the device", + "schema": { + "$ref": "#/definitions/TriggerList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "TriggerGetAllInDevice": { + "$ref": "./examples/TriggerGetAllInDevice.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/triggers/{name}": { + "get": { + "tags": [ + "Triggers" + ], + "description": "Get a specific trigger by name.", + "operationId": "Triggers_Get", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The trigger name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The trigger.", + "schema": { + "$ref": "#/definitions/Trigger" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "TriggerGet": { + "$ref": "./examples/TriggerGet.json" + } + } + }, + "put": { + "tags": [ + "Triggers" + ], + "description": "Creates or updates a trigger.", + "operationId": "Triggers_CreateOrUpdate", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "Creates or updates a trigger", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The trigger name.", + "required": true, + "type": "string" + }, + { + "name": "trigger", + "in": "body", + "description": "The trigger.", + "required": true, + "schema": { + "$ref": "#/definitions/Trigger" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted the request to create or update the trigger." + }, + "200": { + "description": "Successfully created or updated the trigger.", + "schema": { + "$ref": "#/definitions/Trigger" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "TriggerPut": { + "$ref": "./examples/TriggerPut.json" + } + } + }, + "delete": { + "tags": [ + "Triggers" + ], + "description": "Deletes the trigger on the gateway device.", + "operationId": "Triggers_Delete", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The trigger name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted the request to delete the trigger." + }, + "204": { + "description": "The trigger is already deleted." + }, + "200": { + "description": "Successfully deleted the trigger." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "TriggerDelete": { + "$ref": "./examples/TriggerDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/updateExtendedInformation": { + "post": { + "tags": [ + "Devices" + ], + "description": "Gets additional information for the specified Data Box Edge/Data Box Gateway device.", + "operationId": "Devices_UpdateExtendedInformation", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The patch object.", + "required": true, + "schema": { + "$ref": "#/definitions/DataBoxEdgeDeviceExtendedInfoPatch" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Modify additional information.", + "schema": { + "$ref": "#/definitions/DataBoxEdgeDeviceExtendedInfo" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetUpdateExtendedInfo": { + "$ref": "./examples/GetUpdateExtendedInfo.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/updateSummary/default": { + "get": { + "tags": [ + "Devices" + ], + "summary": "Gets information about the availability of updates based on the last scan of the device. It also gets information about any ongoing download or install jobs on the device.", + "operationId": "Devices_GetUpdateSummary", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The update summary.", + "schema": { + "$ref": "#/definitions/UpdateSummary" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "UpdateSummaryGet": { + "$ref": "./examples/UpdateSummaryGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/uploadCertificate": { + "post": { + "tags": [ + "Devices" + ], + "description": "Uploads registration certificate for the device.", + "operationId": "Devices_UploadCertificate", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The upload certificate request.", + "required": true, + "schema": { + "$ref": "#/definitions/UploadCertificateRequest" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully uploaded the registration certificate.", + "schema": { + "$ref": "#/definitions/UploadCertificateResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "UploadCertificatePost": { + "$ref": "./examples/UploadCertificatePost.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/users": { + "get": { + "tags": [ + "Users" + ], + "description": "Gets all the users registered on a Data Box Edge/Data Box Gateway device.", + "operationId": "Users_ListByDataBoxEdgeDevice", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$expand", + "in": "query", + "description": "Specify $expand=details to populate additional fields related to the resource or Specify $skipToken= to populate the next page in the list.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The collection of all users on the device.", + "schema": { + "$ref": "#/definitions/UserList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "UserGetAllInDevice": { + "$ref": "./examples/UserGetAllInDevice.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/users/{name}": { + "get": { + "tags": [ + "Users" + ], + "description": "Gets the properties of the specified user.", + "operationId": "Users_Get", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The user name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The user details.", + "schema": { + "$ref": "#/definitions/User" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "UserGet": { + "$ref": "./examples/UserGet.json" + } + } + }, + "put": { + "tags": [ + "Users" + ], + "description": "Creates a new user or updates an existing user's information on a Data Box Edge/Data Box Gateway device.", + "operationId": "Users_CreateOrUpdate", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The user name.", + "required": true, + "type": "string" + }, + { + "name": "user", + "in": "body", + "description": "The user details.", + "required": true, + "schema": { + "$ref": "#/definitions/User" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted the request to create or update the user." + }, + "200": { + "description": "Successfully created or updated the user.", + "schema": { + "$ref": "#/definitions/User" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "UserPut": { + "$ref": "./examples/UserPut.json" + } + } + }, + "delete": { + "tags": [ + "Users" + ], + "description": "Deletes the user on a databox edge/gateway device.", + "operationId": "Users_Delete", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The user name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted the request to delete the user." + }, + "204": { + "description": "The user is already deleted." + }, + "200": { + "description": "Successfully deleted the user." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "UserDelete": { + "$ref": "./examples/UserDelete.json" + } + } + } + } + }, + "definitions": { + "Addon": { + "description": "Role Addon", + "required": [ + "kind" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ARMBaseModel" + } + ], + "properties": { + "kind": { + "description": "Addon type.", + "enum": [ + "IotEdge", + "ArcForKubernetes" + ], + "type": "string", + "x-ms-enum": { + "name": "AddonType", + "modelAsString": true + } + }, + "systemData": { + "description": "Addon type", + "$ref": "#/definitions/SystemData" + } + }, + "discriminator": "kind" + }, + "AddonList": { + "description": "Collection of all the Role addon on the Azure Stack Edge device.", + "type": "object", + "properties": { + "value": { + "description": "The Value.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/Addon" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to the next set of results.", + "type": "string", + "readOnly": true + } + } + }, + "Address": { + "description": "The shipping address of the customer.", + "required": [ + "country" + ], + "type": "object", + "properties": { + "addressLine1": { + "description": "The address line1.", + "type": "string" + }, + "addressLine2": { + "description": "The address line2.", + "type": "string" + }, + "addressLine3": { + "description": "The address line3.", + "type": "string" + }, + "postalCode": { + "description": "The postal code.", + "type": "string" + }, + "city": { + "description": "The city name.", + "type": "string" + }, + "state": { + "description": "The state name.", + "type": "string" + }, + "country": { + "description": "The country name.", + "type": "string" + } + } + }, + "Alert": { + "description": "Alert on the data box edge/gateway device.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ARMBaseModel" + } + ], + "properties": { + "systemData": { + "description": "Alert generated in the resource", + "$ref": "#/definitions/SystemData" + }, + "properties": { + "$ref": "#/definitions/AlertProperties", + "description": "Properties of alert.", + "readOnly": true, + "x-ms-client-flatten": true + } + } + }, + "AlertErrorDetails": { + "description": "Error details for the alert.", + "type": "object", + "properties": { + "errorCode": { + "description": "Error code.", + "type": "string", + "readOnly": true + }, + "errorMessage": { + "description": "Error Message.", + "type": "string", + "readOnly": true + }, + "occurrences": { + "format": "int32", + "description": "Number of occurrences.", + "type": "integer", + "readOnly": true + } + } + }, + "AlertList": { + "description": "Collection of alerts.", + "type": "object", + "properties": { + "value": { + "description": "The value.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/Alert" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to the next set of results.", + "type": "string", + "readOnly": true + } + } + }, + "AlertProperties": { + "description": "Properties of alert.", + "type": "object", + "properties": { + "title": { + "description": "Alert title.", + "type": "string", + "readOnly": true + }, + "alertType": { + "description": "Alert type.", + "type": "string", + "readOnly": true + }, + "appearedAtDateTime": { + "format": "date-time", + "description": "UTC time when the alert appeared.", + "type": "string", + "readOnly": true + }, + "recommendation": { + "description": "Alert recommendation.", + "type": "string", + "readOnly": true + }, + "severity": { + "description": "Severity of the alert.", + "enum": [ + "Informational", + "Warning", + "Critical" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "AlertSeverity", + "modelAsString": true + } + }, + "errorDetails": { + "$ref": "#/definitions/AlertErrorDetails", + "description": "Error details of the alert.", + "readOnly": true + }, + "detailedInformation": { + "description": "Alert details.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "readOnly": true + } + } + }, + "ArcAddon": { + "description": "Arc Addon.", + "required": [ + "properties", + "kind" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Addon" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ArcAddonProperties", + "description": "Properties specific to Arc addon.", + "x-ms-client-flatten": true + }, + "id": { + "description": "The path ID that uniquely identifies the object.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The object name.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The hierarchical type of the object.", + "type": "string", + "readOnly": true + } + }, + "x-ms-discriminator-value": "ArcForKubernetes" + }, + "ArcAddonProperties": { + "description": "Arc addon properties.", + "required": [ + "subscriptionId", + "resourceGroupName", + "resourceName", + "resourceLocation" + ], + "type": "object", + "properties": { + "subscriptionId": { + "description": "Arc resource subscription Id", + "type": "string" + }, + "resourceGroupName": { + "description": "Arc resource group name", + "type": "string" + }, + "resourceName": { + "description": "Arc resource Name", + "type": "string" + }, + "resourceLocation": { + "description": "Arc resource location", + "type": "string" + }, + "version": { + "description": "Arc resource version", + "type": "string", + "readOnly": true + }, + "hostPlatform": { + "description": "Host OS supported by the Arc addon.", + "enum": [ + "Windows", + "Linux" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "PlatformType", + "modelAsString": true + } + }, + "hostPlatformType": { + "description": "Platform where the runtime is hosted.", + "enum": [ + "KubernetesCluster", + "LinuxVM" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "HostPlatformType", + "modelAsString": true + } + }, + "provisioningState": { + "description": "Addon Provisioning State", + "enum": [ + "Invalid", + "Creating", + "Created", + "Updating", + "Reconfiguring", + "Failed", + "Deleting" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "AddonState", + "modelAsString": true + } + } + } + }, + "ARMBaseModel": { + "description": "Represents the base class for all object models.", + "type": "object", + "properties": { + "id": { + "description": "The path ID that uniquely identifies the object.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The object name.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The hierarchical type of the object.", + "type": "string", + "readOnly": true + } + }, + "x-ms-azure-resource": true + }, + "AsymmetricEncryptedSecret": { + "description": "Represent the secrets intended for encryption with asymmetric key pair.", + "required": [ + "value", + "encryptionAlgorithm" + ], + "type": "object", + "properties": { + "value": { + "description": "The value of the secret.", + "x-ms-secret": true, + "type": "string" + }, + "encryptionCertThumbprint": { + "description": "Thumbprint certificate used to encrypt \\\"Value\\\". If the value is unencrypted, it will be null.", + "type": "string" + }, + "encryptionAlgorithm": { + "description": "The algorithm used to encrypt \"Value\".", + "enum": [ + "None", + "AES256", + "RSAES_PKCS1_v_1_5" + ], + "type": "string", + "x-ms-enum": { + "name": "EncryptionAlgorithm", + "modelAsString": true + } + } + } + }, + "Authentication": { + "description": "Authentication mechanism for IoT devices.", + "type": "object", + "properties": { + "symmetricKey": { + "$ref": "#/definitions/SymmetricKey", + "description": "Symmetric key for authentication." + } + } + }, + "AzureContainerInfo": { + "description": "Azure container mapping of the endpoint.", + "required": [ + "storageAccountCredentialId", + "containerName", + "dataFormat" + ], + "type": "object", + "properties": { + "storageAccountCredentialId": { + "description": "ID of the storage account credential used to access storage.", + "type": "string" + }, + "containerName": { + "description": "Container name (Based on the data format specified, this represents the name of Azure Files/Page blob/Block blob).", + "type": "string" + }, + "dataFormat": { + "description": "Storage format used for the file represented by the share.", + "enum": [ + "BlockBlob", + "PageBlob", + "AzureFile" + ], + "type": "string", + "x-ms-enum": { + "name": "AzureContainerDataFormat", + "modelAsString": true + } + } + } + }, + "BandwidthSchedule": { + "description": "The bandwidth schedule details.", + "required": [ + "properties" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ARMBaseModel" + } + ], + "properties": { + "systemData": { + "description": "Bandwidth object related to ASE resource", + "$ref": "#/definitions/SystemData" + }, + "properties": { + "$ref": "#/definitions/BandwidthScheduleProperties", + "description": "The properties of the bandwidth schedule.", + "x-ms-client-flatten": true + } + } + }, + "BandwidthScheduleProperties": { + "description": "The properties of the bandwidth schedule.", + "required": [ + "start", + "stop", + "rateInMbps", + "days" + ], + "type": "object", + "properties": { + "start": { + "description": "The start time of the schedule in UTC.", + "type": "string" + }, + "stop": { + "description": "The stop time of the schedule in UTC.", + "type": "string" + }, + "rateInMbps": { + "format": "int32", + "description": "The bandwidth rate in Mbps.", + "type": "integer" + }, + "days": { + "description": "The days of the week when this schedule is applicable.", + "uniqueItems": false, + "type": "array", + "items": { + "enum": [ + "Sunday", + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday" + ], + "type": "string", + "x-ms-enum": { + "name": "DayOfWeek", + "modelAsString": true + } + } + } + } + }, + "BandwidthSchedulesList": { + "description": "The collection of bandwidth schedules.", + "type": "object", + "properties": { + "value": { + "description": "The list of bandwidth schedules.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/BandwidthSchedule" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to the next set of results.", + "type": "string", + "readOnly": true + } + } + }, + "ClientAccessRight": { + "description": "The mapping between a particular client IP and the type of access client has on the NFS share.", + "required": [ + "client", + "accessPermission" + ], + "type": "object", + "properties": { + "client": { + "description": "IP of the client.", + "type": "string" + }, + "accessPermission": { + "description": "Type of access to be allowed for the client.", + "enum": [ + "NoAccess", + "ReadOnly", + "ReadWrite" + ], + "type": "string", + "x-ms-enum": { + "name": "ClientPermissionType", + "modelAsString": true + } + } + } + }, + "CloudEdgeManagementRole": { + "description": "CloudEdgeManagementRole role.", + "required": [ + "kind" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Role" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/CloudEdgeManagementRoleProperties", + "description": "Properties specific to CloudEdgeManagementRole role.", + "x-ms-client-flatten": true + }, + "id": { + "description": "The path ID that uniquely identifies the object.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The object name.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The hierarchical type of the object.", + "type": "string", + "readOnly": true + } + }, + "x-ms-discriminator-value": "CloudEdgeManagement" + }, + "CloudEdgeManagementRoleProperties": { + "description": "CloudEdgeManagement Role properties.", + "required": [ + "roleStatus" + ], + "type": "object", + "properties": { + "localManagementStatus": { + "description": "Local Edge Management Status", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "RoleStatus", + "modelAsString": true + } + }, + "edgeProfile": { + "$ref": "#/definitions/EdgeProfile", + "description": "Edge Profile of the resource", + "readOnly": true + }, + "roleStatus": { + "description": "Role status.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "RoleStatus", + "modelAsString": true + } + } + } + }, + "CloudError": { + "description": "An error response from the service.", + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorBody", + "description": "The error details." + } + }, + "x-ms-external": true + }, + "CloudErrorBody": { + "description": "An error response from the service.", + "properties": { + "code": { + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically.", + "type": "string" + }, + "message": { + "description": "A message describing the error, intended to be suitable for display in a user interface.", + "type": "string" + }, + "details": { + "description": "A list of additional details about the error.", + "type": "array", + "items": { + "$ref": "#/definitions/CloudErrorBody" + } + } + }, + "x-ms-external": true + }, + "CniConfig": { + "description": "Cni configuration", + "type": "object", + "properties": { + "type": { + "description": "Cni type", + "type": "string", + "readOnly": true + }, + "version": { + "description": "Cni version", + "type": "string", + "readOnly": true + }, + "podSubnet": { + "description": "Pod Subnet", + "type": "string", + "readOnly": true + }, + "serviceSubnet": { + "description": "Service subnet", + "type": "string", + "readOnly": true + } + } + }, + "ComputeResource": { + "description": "Compute infrastructure Resource", + "required": [ + "processorCount", + "memoryInGB" + ], + "type": "object", + "properties": { + "processorCount": { + "format": "int32", + "description": "Processor count", + "type": "integer" + }, + "memoryInGB": { + "format": "int64", + "description": "Memory in GB", + "type": "integer" + } + } + }, + "ContactDetails": { + "description": "Contains all the contact details of the customer.", + "required": [ + "contactPerson", + "companyName", + "phone", + "emailList" + ], + "type": "object", + "properties": { + "contactPerson": { + "description": "The contact person name.", + "type": "string" + }, + "companyName": { + "description": "The name of the company.", + "type": "string" + }, + "phone": { + "description": "The phone number.", + "type": "string" + }, + "emailList": { + "description": "The email list.", + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "Container": { + "description": "Represents a container on the Data Box Edge/Gateway device.", + "required": [ + "properties" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ARMBaseModel" + } + ], + "properties": { + "systemData": { + "description": "Container in DataBoxEdge Resource", + "$ref": "#/definitions/SystemData" + }, + "properties": { + "$ref": "#/definitions/ContainerProperties", + "description": "The container properties.", + "x-ms-client-flatten": true + } + } + }, + "ContainerList": { + "description": "Collection of all the containers on the Data Box Edge/Gateway device.", + "type": "object", + "properties": { + "value": { + "description": "The list of containers.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/Container" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to the next set of results.", + "type": "string", + "readOnly": true + } + } + }, + "ContainerProperties": { + "description": "The container properties.", + "required": [ + "dataFormat" + ], + "type": "object", + "properties": { + "containerStatus": { + "description": "Current status of the container.", + "enum": [ + "OK", + "Offline", + "Unknown", + "Updating", + "NeedsAttention" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ContainerStatus", + "modelAsString": true + } + }, + "dataFormat": { + "description": "DataFormat for Container", + "enum": [ + "BlockBlob", + "PageBlob", + "AzureFile" + ], + "type": "string", + "x-ms-enum": { + "name": "AzureContainerDataFormat", + "modelAsString": true + } + }, + "refreshDetails": { + "$ref": "#/definitions/RefreshDetails", + "description": "Details of the refresh job on this container.", + "readOnly": true + }, + "createdDateTime": { + "format": "date-time", + "description": "The UTC time when container got created.", + "type": "string", + "readOnly": true + } + } + }, + "DataBoxEdgeDevice": { + "description": "The Data Box Edge/Gateway device.", + "required": [ + "location" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ARMBaseModel" + } + ], + "properties": { + "location": { + "description": "The location of the device. This is a supported and registered Azure geographical region (for example, West US, East US, or Southeast Asia). The geographical region of a device cannot be changed once it is created, but if an identical geographical region is specified on update, the request will succeed.", + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "tags": { + "description": "The list of tags that describe the device. These tags can be used to view and group this device (across resource groups).", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "The SKU type." + }, + "etag": { + "description": "The etag for the devices.", + "type": "string" + }, + "identity": { + "$ref": "#/definitions/ResourceIdentity", + "description": "Msi identity of the resource" + }, + "kind": { + "description": "The etag for the devices.", + "enum": [ + "AzureDataBoxGateway", + "AzureStackEdge", + "AzureStackHub", + "AzureModularDataCentre" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "DataBoxEdgeDeviceKind", + "modelAsString": true + } + }, + "systemData": { + "description": "DataBoxEdge Resource", + "$ref": "#/definitions/SystemData" + }, + "properties": { + "$ref": "#/definitions/DataBoxEdgeDeviceProperties", + "description": "The properties of the Data Box Edge/Gateway device.", + "readOnly": true, + "x-ms-client-flatten": true + } + } + }, + "DataBoxEdgeDeviceExtendedInfo": { + "description": "The extended Info of the Data Box Edge/Gateway device.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ARMBaseModel" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/DataBoxEdgeDeviceExtendedInfoProperties", + "description": "The extended info properties.", + "x-ms-client-flatten": true + } + } + }, + "DataBoxEdgeDeviceExtendedInfoPatch": { + "description": "The Data Box Edge/Gateway device extended info patch.", + "type": "object", + "properties": { + "clientSecretStoreId": { + "description": "The Key Vault ARM Id for client secrets", + "type": "string" + }, + "clientSecretStoreUrl": { + "description": "The url to access the Client Key Vault", + "type": "string" + }, + "channelIntegrityKeyName": { + "description": "The name for Channel Integrity Key stored in the Client Key Vault", + "type": "string" + }, + "channelIntegrityKeyVersion": { + "description": "The version of Channel Integrity Key stored in the Client Key Vault", + "type": "string" + }, + "syncStatus": { + "description": "For changing or to initiate the resync to key-vault set the status to KeyVaultSyncPending, rest of the status will not be applicable.", + "enum": [ + "KeyVaultSynced", + "KeyVaultSyncFailed", + "KeyVaultNotConfigured", + "KeyVaultSyncPending", + "KeyVaultSyncing", + "KeyVaultNotSynced" + ], + "type": "string", + "x-ms-enum": { + "name": "KeyVaultSyncStatus", + "modelAsString": true + } + } + } + }, + "DataBoxEdgeDeviceExtendedInfoProperties": { + "description": "The properties of the Data Box Edge/Gateway device extended info.", + "type": "object", + "properties": { + "encryptionKeyThumbprint": { + "description": "The digital signature of encrypted certificate.", + "type": "string" + }, + "encryptionKey": { + "description": "The public part of the encryption certificate. Client uses this to encrypt any secret.", + "type": "string" + }, + "resourceKey": { + "description": "The Resource ID of the Resource.", + "type": "string", + "readOnly": true + }, + "clientSecretStoreId": { + "description": "The Key Vault ARM Id for client secrets", + "type": "string" + }, + "clientSecretStoreUrl": { + "description": "The url to access the Client Key Vault", + "type": "string" + }, + "channelIntegrityKeyName": { + "description": "The name of Channel Integrity Key stored in the Client Key Vault", + "type": "string" + }, + "channelIntegrityKeyVersion": { + "description": "The version of Channel Integrity Key stored in the Client Key Vault", + "type": "string" + }, + "keyVaultSyncStatus": { + "description": "Key vault sync status", + "enum": [ + "KeyVaultSynced", + "KeyVaultSyncFailed", + "KeyVaultNotConfigured", + "KeyVaultSyncPending", + "KeyVaultSyncing", + "KeyVaultNotSynced" + ], + "type": "string", + "x-ms-enum": { + "name": "KeyVaultSyncStatus", + "modelAsString": true + } + }, + "deviceSecrets": { + "description": "Device secrets, will be returned only with ODataFilter $expand=deviceSecrets", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/Secret" + }, + "readOnly": true + } + } + }, + "DataBoxEdgeDeviceList": { + "description": "The collection of Data Box Edge/Gateway devices.", + "type": "object", + "properties": { + "value": { + "description": "The list of Data Box Edge/Gateway devices.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/DataBoxEdgeDevice" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to the next set of results.", + "type": "string", + "readOnly": true + } + } + }, + "DataBoxEdgeDevicePatch": { + "description": "The Data Box Edge/Gateway device patch.", + "type": "object", + "properties": { + "tags": { + "description": "The tags attached to the Data Box Edge/Gateway resource.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "identity": { + "$ref": "#/definitions/ResourceIdentity", + "description": "Msi identity of the resource" + }, + "properties": { + "$ref": "#/definitions/DataBoxEdgeDevicePropertiesPatch", + "description": "The properties associated with the Data Box Edge/Gateway resource", + "x-ms-client-flatten": true + } + } + }, + "DataBoxEdgeDeviceProperties": { + "description": "The properties of the Data Box Edge/Gateway device.", + "type": "object", + "properties": { + "dataBoxEdgeDeviceStatus": { + "description": "The status of the Data Box Edge/Gateway device.", + "enum": [ + "ReadyToSetup", + "Online", + "Offline", + "NeedsAttention", + "Disconnected", + "PartiallyDisconnected", + "Maintenance" + ], + "type": "string", + "x-ms-enum": { + "name": "DataBoxEdgeDeviceStatus", + "modelAsString": true + } + }, + "serialNumber": { + "description": "The Serial Number of Data Box Edge/Gateway device.", + "type": "string", + "readOnly": true + }, + "description": { + "description": "The Description of the Data Box Edge/Gateway device.", + "type": "string", + "readOnly": true + }, + "modelDescription": { + "description": "The description of the Data Box Edge/Gateway device model.", + "type": "string", + "readOnly": true + }, + "deviceType": { + "description": "The type of the Data Box Edge/Gateway device.", + "enum": [ + "DataBoxEdgeDevice" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "DeviceType", + "modelAsString": true + } + }, + "friendlyName": { + "description": "The Data Box Edge/Gateway device name.", + "type": "string", + "readOnly": true + }, + "culture": { + "description": "The Data Box Edge/Gateway device culture.", + "type": "string", + "readOnly": true + }, + "deviceModel": { + "description": "The Data Box Edge/Gateway device model.", + "type": "string", + "readOnly": true + }, + "deviceSoftwareVersion": { + "description": "The Data Box Edge/Gateway device software version.", + "type": "string", + "readOnly": true + }, + "deviceLocalCapacity": { + "format": "int64", + "description": "The Data Box Edge/Gateway device local capacity in MB.", + "type": "integer", + "readOnly": true + }, + "timeZone": { + "description": "The Data Box Edge/Gateway device timezone.", + "type": "string", + "readOnly": true + }, + "deviceHcsVersion": { + "description": "The device software version number of the device (eg: 1.2.18105.6).", + "type": "string", + "readOnly": true + }, + "configuredRoleTypes": { + "description": "Type of compute roles configured.", + "uniqueItems": false, + "type": "array", + "items": { + "enum": [ + "IOT", + "ASA", + "Functions", + "Cognitive", + "MEC", + "CloudEdgeManagement", + "Kubernetes" + ], + "type": "string", + "x-ms-enum": { + "name": "RoleTypes", + "modelAsString": true + } + }, + "readOnly": true + }, + "nodeCount": { + "format": "int32", + "description": "The number of nodes in the cluster.", + "type": "integer", + "readOnly": true + }, + "resourceMoveDetails": { + "$ref": "#/definitions/ResourceMoveDetails", + "description": "The details of the move operation on this resource.", + "readOnly": true + }, + "edgeProfile": { + "$ref": "#/definitions/EdgeProfile", + "description": "The details of Edge Profile for this resource", + "readOnly": true + } + } + }, + "DataBoxEdgeDevicePropertiesPatch": { + "description": "The Data Box Edge/Gateway device properties patch.", + "type": "object", + "properties": { + "edgeProfile": { + "$ref": "#/definitions/EdgeProfilePatch", + "description": "Edge Profile property of the Data Box Edge/Gateway device" + } + } + }, + "DataBoxEdgeMoveRequest": { + "description": "Resource Move details", + "required": [ + "targetResourceGroup", + "resources" + ], + "type": "object", + "properties": { + "targetResourceGroup": { + "description": "Target resource group ARMId", + "type": "string" + }, + "resources": { + "description": "List of resources to be moved", + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "DataBoxEdgeSku": { + "description": "The Sku information.", + "type": "object", + "properties": { + "resourceType": { + "description": "The type of the resource.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The Sku name.", + "enum": [ + "Gateway", + "Edge", + "TEA_1Node", + "TEA_1Node_UPS", + "TEA_1Node_Heater", + "TEA_1Node_UPS_Heater", + "TEA_4Node_Heater", + "TEA_4Node_UPS_Heater", + "TMA", + "TDC", + "TCA_Small", + "GPU", + "TCA_Large", + "EdgeP_Base", + "EdgeP_High", + "EdgePR_Base", + "EdgePR_Base_UPS", + "EP2_64_1VPU_W", + "EP2_128_1T4_Mx1_W", + "EP2_256_2T4_W", + "EdgeMR_Mini", + "RCA_Small", + "RCA_Large", + "RDC", + "Management" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "SkuName", + "modelAsString": true + } + }, + "kind": { + "description": "The Sku kind.", + "type": "string", + "readOnly": true + }, + "tier": { + "description": "The Sku tier.", + "enum": [ + "Standard" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "SkuTier", + "modelAsString": true + } + }, + "size": { + "description": "The Sku kind.", + "type": "string", + "readOnly": true + }, + "family": { + "description": "The Sku family.", + "type": "string", + "readOnly": true + }, + "locations": { + "description": "Availability of the Sku for the region.", + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "apiVersions": { + "description": "The API versions in which Sku is available.", + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "locationInfo": { + "description": "Availability of the Sku for the location/zone/site.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/SkuLocationInfo" + }, + "readOnly": true + }, + "costs": { + "description": "The pricing info of the Sku.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/SkuCost" + }, + "readOnly": true + }, + "signupOption": { + "description": "Sku can be signed up by customer or not.", + "enum": [ + "None", + "Available" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "SkuSignupOption", + "modelAsString": true + } + }, + "version": { + "description": "Availability of the Sku as preview/stable.", + "enum": [ + "Stable", + "Preview" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "SkuVersion", + "modelAsString": true + } + }, + "availability": { + "description": "Links to the next set of results", + "enum": [ + "Available", + "Unavailable" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "SkuAvailability", + "modelAsString": true + } + }, + "shipmentTypes": { + "description": "List of Shipment Types supported by this SKU", + "uniqueItems": false, + "type": "array", + "items": { + "enum": [ + "NotApplicable", + "ShippedToCustomer", + "SelfPickup" + ], + "type": "string", + "x-ms-enum": { + "name": "ShipmentType", + "modelAsString": true + } + }, + "readOnly": true + }, + "capabilities": { + "description": "The capability info of the SKU.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/SkuCapability" + }, + "readOnly": true + } + } + }, + "DataBoxEdgeSkuList": { + "description": "List of SKU Information objects.", + "type": "object", + "properties": { + "value": { + "description": "List of ResourceType Sku", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/DataBoxEdgeSku" + }, + "readOnly": true + }, + "nextLink": { + "description": "Links to the next set of results", + "type": "string", + "readOnly": true + } + } + }, + "DCAccessCode": { + "description": "DC Access code in the case of Self Managed Shipping.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/DCAccessCodeProperties", + "description": "DCAccessCode properties.", + "x-ms-client-flatten": true + } + } + }, + "DCAccessCodeProperties": { + "description": "DCAccessCode Properties.", + "type": "object", + "properties": { + "authCode": { + "description": "DCAccess Code for the Self Managed shipment.", + "type": "string" + } + } + }, + "EdgeProfile": { + "description": "Details about Edge Profile for the resource", + "type": "object", + "properties": { + "subscription": { + "$ref": "#/definitions/EdgeProfileSubscription", + "description": "Edge Profile Subscription" + } + } + }, + "EdgeProfilePatch": { + "description": "The Data Box Edge/Gateway Edge Profile patch.", + "type": "object", + "properties": { + "subscription": { + "$ref": "#/definitions/EdgeProfileSubscriptionPatch", + "description": "The Data Box Edge/Gateway Edge Profile Subscription patch" + } + } + }, + "EdgeProfileSubscription": { + "description": "Subscription details for the Edge Profile", + "type": "object", + "properties": { + "registrationId": { + "description": "Edge Subscription Registration ID", + "type": "string" + }, + "id": { + "description": "ARM ID of the subscription", + "type": "string" + }, + "state": { + "enum": [ + "Registered", + "Warned", + "Suspended", + "Deleted", + "Unregistered" + ], + "type": "string", + "x-ms-enum": { + "name": "SubscriptionState", + "modelAsString": true + } + }, + "registrationDate": { + "type": "string" + }, + "subscriptionId": { + "type": "string" + }, + "properties": { + "$ref": "#/definitions/SubscriptionProperties", + "x-ms-client-flatten": true + } + } + }, + "EdgeProfileSubscriptionPatch": { + "description": "The Data Box Edge/Gateway Edge Profile Subscription patch.", + "type": "object", + "properties": { + "id": { + "description": "The path ID that uniquely identifies the subscription of the edge profile.", + "type": "string" + } + } + }, + "EtcdInfo": { + "description": "Etcd configuration", + "type": "object", + "properties": { + "type": { + "description": "Etcd type", + "type": "string", + "readOnly": true + }, + "version": { + "description": "Etcd version", + "type": "string", + "readOnly": true + } + } + }, + "FileEventTrigger": { + "description": "Trigger details.", + "required": [ + "properties", + "kind" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Trigger" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/FileTriggerProperties", + "description": "File trigger properties.", + "x-ms-client-flatten": true + }, + "id": { + "description": "The path ID that uniquely identifies the object.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The object name.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The hierarchical type of the object.", + "type": "string", + "readOnly": true + } + }, + "x-ms-discriminator-value": "FileEvent" + }, + "FileSourceInfo": { + "description": "File source details.", + "required": [ + "shareId" + ], + "type": "object", + "properties": { + "shareId": { + "description": "File share ID.", + "type": "string" + } + } + }, + "FileTriggerProperties": { + "description": "File trigger properties.", + "required": [ + "sourceInfo", + "sinkInfo" + ], + "type": "object", + "properties": { + "sourceInfo": { + "$ref": "#/definitions/FileSourceInfo", + "description": "File event source details." + }, + "sinkInfo": { + "$ref": "#/definitions/RoleSinkInfo", + "description": "Role sink info." + }, + "customContextTag": { + "description": "A custom context tag typically used to correlate the trigger against its usage. For example, if a periodic timer trigger is intended for certain specific IoT modules in the device, the tag can be the name or the image URL of the module.", + "maxLength": 192, + "type": "string" + } + } + }, + "GenerateCertResponse": { + "description": "Used in activation key generation flow.", + "type": "object", + "properties": { + "publicKey": { + "description": "Gets or sets base64 encoded certificate raw data,\r\nthis is the public part needed to be uploaded to cert vault", + "type": "string" + }, + "privateKey": { + "description": "Gets or sets base64 encoded private part of the certificate,\r\nneeded to form the activation key", + "x-ms-secret": true, + "type": "string" + }, + "expiryTimeInUTC": { + "description": "Gets or sets expiry time in UTC", + "type": "string" + } + } + }, + "ImageRepositoryCredential": { + "description": "Image repository credential.", + "required": [ + "imageRepositoryUrl", + "userName" + ], + "type": "object", + "properties": { + "imageRepositoryUrl": { + "description": "Image repository url (e.g.: mcr.microsoft.com).", + "type": "string" + }, + "userName": { + "description": "Repository user name.", + "type": "string" + }, + "password": { + "$ref": "#/definitions/AsymmetricEncryptedSecret", + "description": "Repository user password." + } + } + }, + "IoTAddon": { + "description": "IoT Addon.", + "required": [ + "properties", + "kind" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Addon" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/IoTAddonProperties", + "description": "Properties specific to IOT addon.", + "x-ms-client-flatten": true + }, + "id": { + "description": "The path ID that uniquely identifies the object.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The object name.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The hierarchical type of the object.", + "type": "string", + "readOnly": true + } + }, + "x-ms-discriminator-value": "IotEdge" + }, + "IoTAddonProperties": { + "description": "IoT addon properties.", + "required": [ + "ioTDeviceDetails", + "ioTEdgeDeviceDetails" + ], + "type": "object", + "properties": { + "ioTDeviceDetails": { + "$ref": "#/definitions/IoTDeviceInfo", + "description": "IoT device metadata to which appliance needs to be connected." + }, + "ioTEdgeDeviceDetails": { + "$ref": "#/definitions/IoTDeviceInfo", + "description": "IoT edge device to which the IoT Addon needs to be configured." + }, + "version": { + "description": "Version of IoT running on the appliance.", + "type": "string", + "readOnly": true + }, + "hostPlatform": { + "description": "Host OS supported by the IoT addon.", + "enum": [ + "Windows", + "Linux" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "PlatformType", + "modelAsString": true + } + }, + "hostPlatformType": { + "description": "Platform where the runtime is hosted.", + "enum": [ + "KubernetesCluster", + "LinuxVM" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "HostPlatformType", + "modelAsString": true + } + }, + "provisioningState": { + "description": "Addon Provisioning State", + "enum": [ + "Invalid", + "Creating", + "Created", + "Updating", + "Reconfiguring", + "Failed", + "Deleting" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "AddonState", + "modelAsString": true + } + } + } + }, + "IoTDeviceInfo": { + "description": "Metadata of IoT device/IoT Edge device to be configured.", + "required": [ + "deviceId", + "ioTHostHub" + ], + "type": "object", + "properties": { + "deviceId": { + "description": "ID of the IoT device/edge device.", + "type": "string" + }, + "ioTHostHub": { + "description": "Host name for the IoT hub associated to the device.", + "type": "string" + }, + "ioTHostHubId": { + "description": "Id for the IoT hub associated to the device.", + "type": "string" + }, + "authentication": { + "$ref": "#/definitions/Authentication", + "description": "Encrypted IoT device/IoT edge device connection string." + } + } + }, + "IoTEdgeAgentInfo": { + "description": "IoT edge agent details is optional, this will be used for download system Agent module while bootstrapping IoT Role if specified.", + "required": [ + "imageName", + "tag" + ], + "type": "object", + "properties": { + "imageName": { + "description": "Name of the IoT edge agent image.", + "type": "string" + }, + "tag": { + "description": "Image Tag.", + "type": "string" + }, + "imageRepository": { + "$ref": "#/definitions/ImageRepositoryCredential", + "description": "Image repository details." + } + } + }, + "IoTRole": { + "description": "Compute role.", + "required": [ + "kind" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Role" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/IoTRoleProperties", + "description": "Properties specific to IoT role.", + "x-ms-client-flatten": true + }, + "id": { + "description": "The path ID that uniquely identifies the object.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The object name.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The hierarchical type of the object.", + "type": "string", + "readOnly": true + } + }, + "x-ms-discriminator-value": "IOT" + }, + "IoTRoleProperties": { + "description": "IoT role properties.", + "required": [ + "hostPlatform", + "ioTDeviceDetails", + "ioTEdgeDeviceDetails", + "roleStatus" + ], + "type": "object", + "properties": { + "hostPlatform": { + "description": "Host OS supported by the IoT role.", + "enum": [ + "Windows", + "Linux" + ], + "type": "string", + "x-ms-enum": { + "name": "PlatformType", + "modelAsString": true + } + }, + "ioTDeviceDetails": { + "$ref": "#/definitions/IoTDeviceInfo", + "description": "IoT device metadata to which data box edge device needs to be connected." + }, + "ioTEdgeDeviceDetails": { + "$ref": "#/definitions/IoTDeviceInfo", + "description": "IoT edge device to which the IoT role needs to be configured." + }, + "shareMappings": { + "description": "Mount points of shares in role(s).", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/MountPointMap" + } + }, + "ioTEdgeAgentInfo": { + "$ref": "#/definitions/IoTEdgeAgentInfo", + "description": "Iot edge agent details to download the agent and bootstrap iot runtime." + }, + "hostPlatformType": { + "description": "Platform where the Iot runtime is hosted.", + "enum": [ + "KubernetesCluster", + "LinuxVM" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "HostPlatformType", + "modelAsString": true + } + }, + "computeResource": { + "$ref": "#/definitions/ComputeResource", + "description": "Resource allocation" + }, + "roleStatus": { + "description": "Role status.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "RoleStatus", + "modelAsString": true + } + } + } + }, + "Ipv4Config": { + "description": "Details related to the IPv4 address configuration.", + "type": "object", + "properties": { + "ipAddress": { + "description": "The IPv4 address of the network adapter.", + "type": "string", + "readOnly": true + }, + "subnet": { + "description": "The IPv4 subnet of the network adapter.", + "type": "string", + "readOnly": true + }, + "gateway": { + "description": "The IPv4 gateway of the network adapter.", + "type": "string", + "readOnly": true + } + } + }, + "Ipv6Config": { + "description": "Details related to the IPv6 address configuration.", + "type": "object", + "properties": { + "ipAddress": { + "description": "The IPv6 address of the network adapter.", + "type": "string", + "readOnly": true + }, + "prefixLength": { + "format": "int32", + "description": "The IPv6 prefix of the network adapter.", + "type": "integer", + "readOnly": true + }, + "gateway": { + "description": "The IPv6 gateway of the network adapter.", + "type": "string", + "readOnly": true + } + } + }, + "Job": { + "description": "A device job.", + "type": "object", + "properties": { + "id": { + "description": "The path ID that uniquely identifies the object.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The name of the object.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The hierarchical type of the object.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "The current status of the job.", + "enum": [ + "Invalid", + "Running", + "Succeeded", + "Failed", + "Canceled", + "Paused", + "Scheduled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "JobStatus", + "modelAsString": true + } + }, + "startTime": { + "format": "date-time", + "description": "The UTC date and time at which the job started.", + "type": "string", + "readOnly": true + }, + "endTime": { + "format": "date-time", + "description": "The UTC date and time at which the job completed.", + "type": "string", + "readOnly": true + }, + "percentComplete": { + "format": "int32", + "description": "The percentage of the job that is complete.", + "type": "integer", + "readOnly": true + }, + "error": { + "$ref": "#/definitions/JobErrorDetails", + "description": "The error details.", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/JobProperties", + "description": "The properties of the job.", + "readOnly": true, + "x-ms-client-flatten": true + } + } + }, + "JobErrorDetails": { + "description": "The job error information containing the list of job errors.", + "type": "object", + "properties": { + "errorDetails": { + "description": "The error details.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/JobErrorItem" + }, + "readOnly": true + }, + "code": { + "description": "The code intended for programmatic access.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "The message that describes the error in detail.", + "type": "string", + "readOnly": true + } + } + }, + "JobErrorItem": { + "description": "The job error items.", + "type": "object", + "properties": { + "recommendations": { + "description": "The recommended actions.", + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "code": { + "description": "The code intended for programmatic access.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "The message that describes the error in detail.", + "type": "string", + "readOnly": true + } + } + }, + "JobProperties": { + "description": "The properties for the job.", + "type": "object", + "properties": { + "jobType": { + "description": "The type of the job.", + "enum": [ + "Invalid", + "ScanForUpdates", + "DownloadUpdates", + "InstallUpdates", + "RefreshShare", + "RefreshContainer", + "Backup", + "Restore", + "TriggerSupportPackage" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "JobType", + "modelAsString": true + } + }, + "currentStage": { + "description": "Current stage of the update operation.", + "enum": [ + "Unknown", + "Initial", + "ScanStarted", + "ScanComplete", + "ScanFailed", + "DownloadStarted", + "DownloadComplete", + "DownloadFailed", + "InstallStarted", + "InstallComplete", + "InstallFailed", + "RebootInitiated", + "Success", + "Failure", + "RescanStarted", + "RescanComplete", + "RescanFailed" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "UpdateOperationStage", + "modelAsString": true + } + }, + "downloadProgress": { + "$ref": "#/definitions/UpdateDownloadProgress", + "description": "The download progress.", + "readOnly": true + }, + "installProgress": { + "$ref": "#/definitions/UpdateInstallProgress", + "description": "The install progress.", + "readOnly": true + }, + "totalRefreshErrors": { + "format": "int32", + "description": "Total number of errors encountered during the refresh process.", + "type": "integer", + "readOnly": true + }, + "errorManifestFile": { + "description": "Local share/remote container relative path to the error manifest file of the refresh.", + "type": "string", + "readOnly": true + }, + "refreshedEntityId": { + "description": "ARM ID of the entity that was refreshed.", + "type": "string", + "readOnly": true + }, + "folder": { + "description": "If only subfolders need to be refreshed, then the subfolder path inside the share or container. (The path is empty if there are no subfolders.)", + "type": "string" + } + } + }, + "KubernetesClusterInfo": { + "description": "Kubernetes cluster configuration", + "required": [ + "version" + ], + "type": "object", + "properties": { + "etcdInfo": { + "$ref": "#/definitions/EtcdInfo", + "description": "Etcd configuration", + "readOnly": true + }, + "nodes": { + "description": "Kubernetes cluster nodes", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/NodeInfo" + }, + "readOnly": true + }, + "version": { + "description": "Kubernetes cluster version", + "type": "string" + } + } + }, + "KubernetesIPConfiguration": { + "description": "Kubernetes node IP configuration", + "type": "object", + "properties": { + "port": { + "description": "Port of the Kubernetes node.", + "type": "string", + "readOnly": true + }, + "ipAddress": { + "description": "IP address of the Kubernetes node.", + "type": "string" + } + } + }, + "KubernetesRole": { + "description": "Kubernetes role.", + "required": [ + "kind" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Role" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/KubernetesRoleProperties", + "description": "Properties specific to Kubernetes role.", + "x-ms-client-flatten": true + }, + "id": { + "description": "The path ID that uniquely identifies the object.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The object name.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The hierarchical type of the object.", + "type": "string", + "readOnly": true + } + }, + "x-ms-discriminator-value": "Kubernetes" + }, + "KubernetesRoleCompute": { + "description": "Kubernetes role compute resource", + "required": [ + "vmProfile" + ], + "type": "object", + "properties": { + "vmProfile": { + "description": "VM profile", + "type": "string" + }, + "memoryInBytes": { + "format": "int64", + "description": "Memory in bytes", + "type": "integer", + "readOnly": true + }, + "processorCount": { + "format": "int32", + "description": "Processor count", + "type": "integer", + "readOnly": true + } + } + }, + "KubernetesRoleNetwork": { + "description": "Kubernetes role network resource", + "type": "object", + "properties": { + "cniConfig": { + "$ref": "#/definitions/CniConfig", + "description": "Cni configuration", + "readOnly": true + }, + "loadBalancerConfig": { + "$ref": "#/definitions/LoadBalancerConfig", + "description": "Load balancer configuration", + "readOnly": true + } + } + }, + "KubernetesRoleProperties": { + "description": "Kubernetes role properties.", + "required": [ + "hostPlatform", + "kubernetesClusterInfo", + "kubernetesRoleResources", + "roleStatus" + ], + "type": "object", + "properties": { + "hostPlatform": { + "description": "Host OS supported by the Kubernetes role.", + "enum": [ + "Windows", + "Linux" + ], + "type": "string", + "x-ms-enum": { + "name": "PlatformType", + "modelAsString": true + } + }, + "provisioningState": { + "description": "State of Kubernetes deployment", + "enum": [ + "Invalid", + "Creating", + "Created", + "Updating", + "Reconfiguring", + "Failed", + "Deleting" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "KubernetesState", + "modelAsString": true + } + }, + "hostPlatformType": { + "description": "Platform where the runtime is hosted.", + "enum": [ + "KubernetesCluster", + "LinuxVM" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "HostPlatformType", + "modelAsString": true + } + }, + "kubernetesClusterInfo": { + "$ref": "#/definitions/KubernetesClusterInfo", + "description": "Kubernetes cluster configuration" + }, + "kubernetesRoleResources": { + "$ref": "#/definitions/KubernetesRoleResources", + "description": "Kubernetes role resources" + }, + "roleStatus": { + "description": "Role status.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "RoleStatus", + "modelAsString": true + } + } + } + }, + "KubernetesRoleResources": { + "description": "Kubernetes role resources", + "required": [ + "compute" + ], + "type": "object", + "properties": { + "storage": { + "$ref": "#/definitions/KubernetesRoleStorage", + "description": "Kubernetes role storage resource" + }, + "compute": { + "$ref": "#/definitions/KubernetesRoleCompute", + "description": "Kubernetes role compute resource" + }, + "network": { + "$ref": "#/definitions/KubernetesRoleNetwork", + "description": "Kubernetes role network resource", + "readOnly": true + } + } + }, + "KubernetesRoleStorage": { + "description": "Kubernetes role storage resource", + "type": "object", + "properties": { + "storageClasses": { + "description": "Kubernetes storage class info.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/KubernetesRoleStorageClassInfo" + }, + "readOnly": true + }, + "endpoints": { + "description": "Mount points of shares in role(s).", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/MountPointMap" + } + } + } + }, + "KubernetesRoleStorageClassInfo": { + "description": "Kubernetes storage class info.", + "type": "object", + "properties": { + "name": { + "description": "Storage class name.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Storage class type.", + "type": "string", + "readOnly": true + }, + "posixCompliant": { + "description": "If provisioned storage is posix compliant.", + "enum": [ + "Invalid", + "Enabled", + "Disabled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "PosixComplianceStatus", + "modelAsString": true + } + } + } + }, + "LoadBalancerConfig": { + "description": "Load balancer configuration", + "type": "object", + "properties": { + "type": { + "description": "Load balancer type", + "type": "string", + "readOnly": true + }, + "version": { + "description": "Load balancer version", + "type": "string", + "readOnly": true + } + } + }, + "MECRole": { + "description": "MEC role.", + "required": [ + "kind" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Role" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/MECRoleProperties", + "description": "Properties specific to MEC role.", + "x-ms-client-flatten": true + }, + "id": { + "description": "The path ID that uniquely identifies the object.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The object name.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The hierarchical type of the object.", + "type": "string", + "readOnly": true + } + }, + "x-ms-discriminator-value": "MEC" + }, + "MECRoleProperties": { + "description": "MEC role properties.", + "required": [ + "roleStatus" + ], + "type": "object", + "properties": { + "connectionString": { + "$ref": "#/definitions/AsymmetricEncryptedSecret", + "description": "Activation key of the MEC." + }, + "controllerEndpoint": { + "description": "Controller Endpoint.", + "type": "string" + }, + "resourceUniqueId": { + "description": "Unique Id of the Resource.", + "type": "string" + }, + "roleStatus": { + "description": "Role status.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "RoleStatus", + "modelAsString": true + } + } + } + }, + "MetricConfiguration": { + "description": "Metric configuration.", + "required": [ + "resourceId", + "counterSets" + ], + "type": "object", + "properties": { + "resourceId": { + "description": "The Resource ID on which the metrics should be pushed.", + "type": "string" + }, + "mdmAccount": { + "description": "The MDM account to which the counters should be pushed.", + "type": "string" + }, + "metricNameSpace": { + "description": "The MDM namespace to which the counters should be pushed. This is required if MDMAccount is specified", + "type": "string" + }, + "counterSets": { + "description": "Host name for the IoT hub associated to the device.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/MetricCounterSet" + } + } + } + }, + "MetricCounter": { + "description": "The metric counter", + "required": [ + "name" + ], + "type": "object", + "properties": { + "name": { + "description": "The counter name.", + "type": "string" + }, + "instance": { + "description": "The instance from which counter should be collected.", + "type": "string" + }, + "dimensionFilter": { + "description": "The dimension filter.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/MetricDimension" + } + }, + "additionalDimensions": { + "description": "The additional dimensions to be added to metric.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/MetricDimension" + } + } + } + }, + "MetricCounterSet": { + "description": "The metric counter set", + "required": [ + "counters" + ], + "type": "object", + "properties": { + "counters": { + "description": "The counters that should be collected in this set.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/MetricCounter" + } + } + } + }, + "MetricDimension": { + "description": "The metric dimension", + "required": [ + "sourceType", + "sourceName" + ], + "type": "object", + "properties": { + "sourceType": { + "description": "The dimension type.", + "type": "string" + }, + "sourceName": { + "description": "The dimension value.", + "type": "string" + } + } + }, + "MetricDimension_V1": { + "description": "Metric Dimension v1.", + "type": "object", + "properties": { + "name": { + "description": "Name of the metrics dimension.", + "type": "string" + }, + "displayName": { + "description": "Display name of the metrics dimension.", + "type": "string" + }, + "toBeExportedForShoebox": { + "description": "To be exported to shoe box.", + "type": "boolean" + } + } + }, + "MetricSpecification_V1": { + "description": "Metric specification version 1.", + "type": "object", + "properties": { + "name": { + "description": "Name of the metric.", + "type": "string" + }, + "displayName": { + "description": "Display name of the metric.", + "type": "string" + }, + "displayDescription": { + "description": "Description of the metric to be displayed.", + "type": "string" + }, + "unit": { + "description": "Metric units.", + "enum": [ + "NotSpecified", + "Percent", + "Count", + "Seconds", + "Milliseconds", + "Bytes", + "BytesPerSecond", + "CountPerSecond" + ], + "type": "string", + "x-ms-enum": { + "name": "MetricUnit", + "modelAsString": true + } + }, + "aggregationType": { + "description": "Metric aggregation type.", + "enum": [ + "NotSpecified", + "None", + "Average", + "Minimum", + "Maximum", + "Total", + "Count" + ], + "type": "string", + "x-ms-enum": { + "name": "MetricAggregationType", + "modelAsString": true + } + }, + "dimensions": { + "description": "Metric dimensions, other than default dimension which is resource.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/MetricDimension_V1" + } + }, + "fillGapWithZero": { + "description": "Set true to fill the gaps with zero.", + "type": "boolean" + }, + "category": { + "description": "Metric category.", + "enum": [ + "Capacity", + "Transaction" + ], + "type": "string", + "x-ms-enum": { + "name": "MetricCategory", + "modelAsString": true + } + }, + "resourceIdDimensionNameOverride": { + "description": "Resource name override.", + "type": "string" + }, + "supportedTimeGrainTypes": { + "description": "Support granularity of metrics.", + "uniqueItems": false, + "type": "array", + "items": { + "enum": [ + "PT1M", + "PT5M", + "PT15M", + "PT30M", + "PT1H", + "PT6H", + "PT12H", + "PT1D" + ], + "type": "string", + "x-ms-enum": { + "name": "TimeGrain", + "modelAsString": true + } + } + }, + "supportedAggregationTypes": { + "description": "Support metric aggregation type.", + "uniqueItems": false, + "type": "array", + "items": { + "enum": [ + "NotSpecified", + "None", + "Average", + "Minimum", + "Maximum", + "Total", + "Count" + ], + "type": "string", + "x-ms-enum": { + "name": "MetricAggregationType", + "modelAsString": true + } + } + } + } + }, + "MonitoringMetricConfiguration": { + "description": "The metric setting details for the role", + "required": [ + "properties" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ARMBaseModel" + } + ], + "properties": { + "systemData": { + "description": "MonitoringConfiguration on ASE device", + "$ref": "#/definitions/SystemData" + }, + "properties": { + "$ref": "#/definitions/MonitoringMetricConfigurationProperties", + "description": "The metric setting properties.", + "x-ms-client-flatten": true + } + } + }, + "MonitoringMetricConfigurationList": { + "description": "Collection of metric configurations.", + "type": "object", + "properties": { + "value": { + "description": "The list of metric configurations.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/MonitoringMetricConfiguration" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to the next set of results.", + "type": "string", + "readOnly": true + } + } + }, + "MonitoringMetricConfigurationProperties": { + "description": "Metrics properties", + "required": [ + "metricConfigurations" + ], + "type": "object", + "properties": { + "metricConfigurations": { + "description": "The metrics configuration details", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/MetricConfiguration" + } + } + } + }, + "MountPointMap": { + "description": "The share mount point.", + "required": [ + "shareId" + ], + "type": "object", + "properties": { + "shareId": { + "description": "ID of the share mounted to the role VM.", + "type": "string" + }, + "roleId": { + "description": "ID of the role to which share is mounted.", + "type": "string", + "readOnly": true + }, + "mountPoint": { + "description": "Mount point for the share.", + "type": "string", + "readOnly": true + }, + "mountType": { + "description": "Mounting type.", + "enum": [ + "Volume", + "HostPath" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "MountType", + "modelAsString": true + } + }, + "roleType": { + "description": "Role type.", + "enum": [ + "IOT", + "ASA", + "Functions", + "Cognitive", + "MEC", + "CloudEdgeManagement", + "Kubernetes" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "RoleTypes", + "modelAsString": true + } + } + } + }, + "NetworkAdapter": { + "description": "Represents the networkAdapter on a device.", + "type": "object", + "properties": { + "adapterId": { + "description": "Instance ID of network adapter.", + "type": "string", + "readOnly": true + }, + "adapterPosition": { + "$ref": "#/definitions/NetworkAdapterPosition", + "description": "Hardware position of network adapter.", + "readOnly": true + }, + "index": { + "format": "int32", + "description": "Logical index of the adapter.", + "type": "integer", + "readOnly": true + }, + "nodeId": { + "description": "Node ID of the network adapter.", + "type": "string", + "readOnly": true + }, + "networkAdapterName": { + "description": "Network adapter name.", + "type": "string", + "readOnly": true + }, + "label": { + "description": "Hardware label for the adapter.", + "type": "string", + "readOnly": true + }, + "macAddress": { + "description": "MAC address.", + "type": "string", + "readOnly": true + }, + "linkSpeed": { + "format": "int64", + "description": "Link speed.", + "type": "integer", + "readOnly": true + }, + "status": { + "description": "Value indicating whether this adapter is valid.", + "enum": [ + "Inactive", + "Active" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "NetworkAdapterStatus", + "modelAsString": true + } + }, + "rdmaStatus": { + "description": "Value indicating whether this adapter is RDMA capable.", + "enum": [ + "Incapable", + "Capable" + ], + "type": "string", + "x-ms-enum": { + "name": "NetworkAdapterRDMAStatus", + "modelAsString": true + } + }, + "dhcpStatus": { + "description": "Value indicating whether this adapter has DHCP enabled.", + "enum": [ + "Disabled", + "Enabled" + ], + "type": "string", + "x-ms-enum": { + "name": "NetworkAdapterDHCPStatus", + "modelAsString": true + } + }, + "ipv4Configuration": { + "$ref": "#/definitions/Ipv4Config", + "description": "The IPv4 configuration of the network adapter.", + "readOnly": true + }, + "ipv6Configuration": { + "$ref": "#/definitions/Ipv6Config", + "description": "The IPv6 configuration of the network adapter.", + "readOnly": true + }, + "ipv6LinkLocalAddress": { + "description": "The IPv6 local address.", + "type": "string", + "readOnly": true + }, + "dnsServers": { + "description": "The list of DNS Servers of the device.", + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + } + } + }, + "NetworkAdapterPosition": { + "description": "The network adapter position.", + "type": "object", + "properties": { + "networkGroup": { + "description": "The network group.", + "enum": [ + "None", + "NonRDMA", + "RDMA" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "NetworkGroup", + "modelAsString": true + } + }, + "port": { + "format": "int32", + "description": "The port.", + "type": "integer", + "readOnly": true + } + } + }, + "NetworkSettings": { + "description": "The network settings of a device.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ARMBaseModel" + } + ], + "properties": { + "systemData": { + "description": "NetworkSettings on ASE device", + "$ref": "#/definitions/SystemData" + }, + "properties": { + "$ref": "#/definitions/NetworkSettingsProperties", + "description": "The properties of network settings of a device.", + "readOnly": true, + "x-ms-client-flatten": true + } + } + }, + "NetworkSettingsProperties": { + "description": "The properties of network settings.", + "type": "object", + "properties": { + "networkAdapters": { + "description": "The network adapter list on the device.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/NetworkAdapter" + }, + "readOnly": true + } + } + }, + "Node": { + "description": "Represents a single node in a Data box Edge/Gateway device\r\nGateway devices, standalone Edge devices and a single node cluster Edge device will all have 1 node\r\nMulti-node Edge devices will have more than 1 nodes", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ARMBaseModel" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/NodeProperties", + "description": "The properties of the node", + "readOnly": true, + "x-ms-client-flatten": true + } + } + }, + "NodeInfo": { + "description": "Kubernetes node info", + "type": "object", + "properties": { + "name": { + "description": "Node name.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Node type - Master/Worker", + "enum": [ + "Invalid", + "Master", + "Worker" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "KubernetesNodeType", + "modelAsString": true + } + }, + "ipConfiguration": { + "description": "IP Configuration of the Kubernetes node.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/KubernetesIPConfiguration" + } + } + } + }, + "NodeList": { + "description": "Collection of Nodes.", + "type": "object", + "properties": { + "value": { + "description": "The list of Nodes.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/Node" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to the next set of results.", + "type": "string" + } + } + }, + "NodeProperties": { + "description": "This class represents the nodes in a highly available cluster", + "type": "object", + "properties": { + "nodeStatus": { + "description": "The current status of the individual node", + "enum": [ + "Unknown", + "Up", + "Down", + "Rebooting", + "ShuttingDown" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "NodeStatus", + "modelAsString": true + } + }, + "nodeChassisSerialNumber": { + "description": "Serial number of the Chassis", + "type": "string", + "readOnly": true + }, + "nodeSerialNumber": { + "description": "Serial number of the individual node", + "type": "string", + "readOnly": true + }, + "nodeDisplayName": { + "description": "Display Name of the individual node", + "type": "string", + "readOnly": true + }, + "nodeFriendlySoftwareVersion": { + "description": "Friendly software version name that is currently installed on the node", + "type": "string", + "readOnly": true + }, + "nodeHcsVersion": { + "description": "HCS version that is currently installed on the node", + "type": "string", + "readOnly": true + }, + "nodeInstanceId": { + "description": "Guid instance id of the node", + "type": "string", + "readOnly": true + } + } + }, + "Operation": { + "description": "Operations.", + "type": "object", + "properties": { + "name": { + "description": "Name of the operation.", + "type": "string" + }, + "display": { + "$ref": "#/definitions/OperationDisplay", + "description": "Properties displayed for the operation." + }, + "origin": { + "description": "Origin of the operation.", + "type": "string" + }, + "isDataAction": { + "description": "Indicates whether the operation is a data action", + "type": "boolean" + }, + "properties": { + "$ref": "#/definitions/OperationProperties", + "description": "Operation properties.", + "x-ms-client-flatten": true + } + } + }, + "OperationDisplay": { + "description": "Operation display properties.", + "type": "object", + "properties": { + "provider": { + "description": "Provider name.", + "type": "string" + }, + "resource": { + "description": "The type of resource in which the operation is performed.", + "type": "string" + }, + "operation": { + "description": "Operation to be performed on the resource.", + "type": "string" + }, + "description": { + "description": "Description of the operation to be performed.", + "type": "string" + } + } + }, + "OperationProperties": { + "description": "Operation properties.", + "type": "object", + "properties": { + "serviceSpecification": { + "$ref": "#/definitions/ServiceSpecification", + "description": "Service specification." + } + } + }, + "OperationsList": { + "description": "The list of operations used for the discovery of available provider operations.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "The value.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + } + }, + "nextLink": { + "description": "Link to the next set of results.", + "type": "string" + } + } + }, + "Order": { + "description": "The order details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ARMBaseModel" + } + ], + "properties": { + "systemData": { + "description": "Order configured on ASE resource", + "$ref": "#/definitions/SystemData" + }, + "properties": { + "$ref": "#/definitions/OrderProperties", + "description": "The order properties.", + "x-ms-client-flatten": true + } + } + }, + "OrderList": { + "description": "List of order entities.", + "type": "object", + "properties": { + "value": { + "description": "The list of orders.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/Order" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to the next set of results.", + "type": "string", + "readOnly": true + } + } + }, + "OrderProperties": { + "description": "Order properties.", + "required": [ + "contactInformation" + ], + "type": "object", + "properties": { + "contactInformation": { + "$ref": "#/definitions/ContactDetails", + "description": "The contact details." + }, + "shippingAddress": { + "$ref": "#/definitions/Address", + "description": "The shipping address." + }, + "currentStatus": { + "$ref": "#/definitions/OrderStatus", + "description": "Current status of the order.", + "readOnly": true + }, + "orderHistory": { + "description": "List of status changes in the order.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/OrderStatus" + }, + "readOnly": true + }, + "serialNumber": { + "description": "Serial number of the device.", + "type": "string", + "readOnly": true + }, + "deliveryTrackingInfo": { + "description": "Tracking information for the package delivered to the customer whether it has an original or a replacement device.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/TrackingInfo" + }, + "readOnly": true + }, + "returnTrackingInfo": { + "description": "Tracking information for the package returned from the customer whether it has an original or a replacement device.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/TrackingInfo" + }, + "readOnly": true + }, + "shipmentType": { + "description": "ShipmentType of the order", + "enum": [ + "NotApplicable", + "ShippedToCustomer", + "SelfPickup" + ], + "type": "string", + "x-ms-enum": { + "name": "ShipmentType", + "modelAsString": true + } + } + } + }, + "OrderStatus": { + "description": "Represents a single status change.", + "required": [ + "status" + ], + "type": "object", + "properties": { + "status": { + "description": "Status of the order as per the allowed status types.", + "enum": [ + "Untracked", + "AwaitingFulfillment", + "AwaitingPreparation", + "AwaitingShipment", + "Shipped", + "Arriving", + "Delivered", + "ReplacementRequested", + "LostDevice", + "Declined", + "ReturnInitiated", + "AwaitingReturnShipment", + "ShippedBack", + "CollectedAtMicrosoft", + "AwaitingPickup", + "PickupCompleted", + "AwaitingDrop" + ], + "type": "string", + "x-ms-enum": { + "name": "OrderState", + "modelAsString": true + } + }, + "updateDateTime": { + "format": "date-time", + "description": "Time of status update.", + "type": "string", + "readOnly": true + }, + "comments": { + "description": "Comments related to this status change.", + "type": "string" + }, + "trackingInformation": { + "$ref": "#/definitions/TrackingInfo", + "description": "Tracking information related to the state in the ordering flow", + "readOnly": true + }, + "additionalOrderDetails": { + "description": "Dictionary to hold generic information which is not stored\r\nby the already existing properties", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "readOnly": true + } + } + }, + "PeriodicTimerEventTrigger": { + "description": "Trigger details.", + "required": [ + "properties", + "kind" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Trigger" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PeriodicTimerProperties", + "description": "Periodic timer trigger properties.", + "x-ms-client-flatten": true + }, + "id": { + "description": "The path ID that uniquely identifies the object.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The object name.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The hierarchical type of the object.", + "type": "string", + "readOnly": true + } + }, + "x-ms-discriminator-value": "PeriodicTimerEvent" + }, + "PeriodicTimerProperties": { + "description": "Periodic timer trigger properties.", + "required": [ + "sourceInfo", + "sinkInfo" + ], + "type": "object", + "properties": { + "sourceInfo": { + "$ref": "#/definitions/PeriodicTimerSourceInfo", + "description": "Periodic timer details." + }, + "sinkInfo": { + "$ref": "#/definitions/RoleSinkInfo", + "description": "Role Sink information." + }, + "customContextTag": { + "description": "A custom context tag typically used to correlate the trigger against its usage. For example, if a periodic timer trigger is intended for certain specific IoT modules in the device, the tag can be the name or the image URL of the module.", + "maxLength": 192, + "type": "string" + } + } + }, + "PeriodicTimerSourceInfo": { + "description": "Periodic timer event source.", + "required": [ + "startTime", + "schedule" + ], + "type": "object", + "properties": { + "startTime": { + "format": "date-time", + "description": "The time of the day that results in a valid trigger. Schedule is computed with reference to the time specified upto seconds. If timezone is not specified the time will considered to be in device timezone. The value will always be returned as UTC time.", + "type": "string" + }, + "schedule": { + "description": "Periodic frequency at which timer event needs to be raised. Supports daily, hourly, minutes, and seconds.", + "type": "string" + }, + "topic": { + "description": "Topic where periodic events are published to IoT device.", + "type": "string" + } + } + }, + "RawCertificateData": { + "description": "Raw Certificate Data.", + "required": [ + "certificate" + ], + "type": "object", + "properties": { + "authenticationType": { + "description": "The authentication type.", + "enum": [ + "Invalid", + "AzureActiveDirectory" + ], + "type": "string", + "x-ms-enum": { + "name": "AuthenticationType", + "modelAsString": true + } + }, + "certificate": { + "description": "The base64 encoded certificate raw data.", + "type": "string" + } + } + }, + "RefreshDetails": { + "description": "Fields for tracking refresh job on the share or container.", + "type": "object", + "properties": { + "inProgressRefreshJobId": { + "description": "If a refresh job is currently in progress on this share or container, this field indicates the ARM resource ID of that job. The field is empty if no job is in progress.", + "type": "string" + }, + "lastCompletedRefreshJobTimeInUTC": { + "format": "date-time", + "description": "Indicates the completed time for the last refresh job on this particular share or container, if any.This could be a failed job or a successful job.", + "type": "string" + }, + "errorManifestFile": { + "description": "Indicates the relative path of the error xml for the last refresh job on this particular share or container, if any. This could be a failed job or a successful job.", + "type": "string" + }, + "lastJob": { + "description": "Indicates the id of the last refresh job on this particular share or container,if any. This could be a failed job or a successful job.", + "type": "string" + } + } + }, + "ResourceIdentity": { + "description": "Msi identity details of the resource", + "type": "object", + "properties": { + "type": { + "description": "Identity type", + "enum": [ + "None", + "SystemAssigned", + "UserAssigned" + ], + "type": "string", + "x-ms-enum": { + "name": "MsiIdentityType", + "modelAsString": true + } + }, + "principalId": { + "description": "Service Principal Id backing the Msi", + "type": "string", + "readOnly": true + }, + "tenantId": { + "description": "Home Tenant Id", + "type": "string", + "readOnly": true + } + } + }, + "ResourceMoveDetails": { + "description": "Fields for tracking resource move", + "type": "object", + "properties": { + "operationInProgress": { + "description": "Denotes whether move operation is in progress", + "enum": [ + "None", + "ResourceMoveInProgress", + "ResourceMoveFailed" + ], + "type": "string", + "x-ms-enum": { + "name": "ResourceMoveStatus", + "modelAsString": true + } + }, + "operationInProgressLockTimeoutInUTC": { + "format": "date-time", + "description": "Denotes the timeout of the operation to finish", + "type": "string" + } + } + }, + "ResourceTypeSku": { + "description": "Resource type Sku object", + "type": "object", + "properties": { + "resourceType": { + "description": "The resource type.", + "type": "string", + "readOnly": true + }, + "skus": { + "description": "The skus.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/SkuInformation" + }, + "readOnly": true + } + } + }, + "Role": { + "description": "Compute role.", + "required": [ + "kind" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ARMBaseModel" + } + ], + "properties": { + "kind": { + "description": "Role type.", + "enum": [ + "IOT", + "ASA", + "Functions", + "Cognitive", + "MEC", + "CloudEdgeManagement", + "Kubernetes" + ], + "type": "string", + "x-ms-enum": { + "name": "RoleTypes", + "modelAsString": true + } + }, + "systemData": { + "description": "Role configured on ASE resource", + "$ref": "#/definitions/SystemData" + } + }, + "discriminator": "kind" + }, + "RoleList": { + "description": "Collection of all the roles on the Data Box Edge device.", + "type": "object", + "properties": { + "value": { + "description": "The Value.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/Role" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to the next set of results.", + "type": "string", + "readOnly": true + } + } + }, + "RoleSinkInfo": { + "description": "Compute role against which events will be raised.", + "required": [ + "roleId" + ], + "type": "object", + "properties": { + "roleId": { + "description": "Compute role ID.", + "type": "string" + } + } + }, + "Secret": { + "description": "Holds device secret either as a KeyVault reference or as an encrypted value.", + "type": "object", + "properties": { + "encryptedSecret": { + "$ref": "#/definitions/AsymmetricEncryptedSecret", + "description": "Encrypted (using device public key) secret value." + }, + "keyVaultId": { + "description": "Id of the Key-Vault where secret is stored (ex: secrets/AuthClientSecret/82ef4346187a4033a10d629cde07d740).", + "type": "string" + } + } + }, + "SecuritySettings": { + "description": "The security settings of a device.", + "required": [ + "properties" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ARMBaseModel" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/SecuritySettingsProperties", + "description": "Properties of the security settings.", + "x-ms-client-flatten": true + } + } + }, + "SecuritySettingsProperties": { + "description": "The properties of security settings.", + "required": [ + "deviceAdminPassword" + ], + "type": "object", + "properties": { + "deviceAdminPassword": { + "$ref": "#/definitions/AsymmetricEncryptedSecret", + "description": "Device administrator password as an encrypted string (encrypted using RSA PKCS #1) is used to sign into the local web UI of the device. The Actual password should have at least 8 characters that are a combination of uppercase, lowercase, numeric, and special characters." + } + } + }, + "ServiceSpecification": { + "description": "Service specification.", + "type": "object", + "properties": { + "metricSpecifications": { + "description": "Metric specification as defined by shoebox.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/MetricSpecification_V1" + } + } + } + }, + "Share": { + "description": "Represents a share on the Data Box Edge/Gateway device.", + "required": [ + "properties" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ARMBaseModel" + } + ], + "properties": { + "systemData": { + "description": "Share on ASE device", + "$ref": "#/definitions/SystemData" + }, + "properties": { + "$ref": "#/definitions/ShareProperties", + "description": "The share properties.", + "x-ms-client-flatten": true + } + } + }, + "ShareAccessRight": { + "description": "Specifies the mapping between this particular user and the type of access he has on shares on this device.", + "required": [ + "shareId", + "accessType" + ], + "type": "object", + "properties": { + "shareId": { + "description": "The share ID.", + "type": "string" + }, + "accessType": { + "description": "Type of access to be allowed on the share for this user.", + "enum": [ + "Change", + "Read", + "Custom" + ], + "type": "string", + "x-ms-enum": { + "name": "ShareAccessType", + "modelAsString": true + } + } + } + }, + "ShareList": { + "description": "Collection of all the shares on the Data Box Edge/Gateway device.", + "type": "object", + "properties": { + "value": { + "description": "The list of shares.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/Share" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to the next set of results.", + "type": "string", + "readOnly": true + } + } + }, + "ShareProperties": { + "description": "The share properties.", + "required": [ + "shareStatus", + "monitoringStatus", + "accessProtocol" + ], + "type": "object", + "properties": { + "description": { + "description": "Description for the share.", + "type": "string" + }, + "shareStatus": { + "description": "Current status of the share.", + "enum": [ + "Offline", + "Unknown", + "OK", + "Updating", + "NeedsAttention" + ], + "type": "string", + "x-ms-enum": { + "name": "ShareStatus", + "modelAsString": true + } + }, + "monitoringStatus": { + "description": "Current monitoring status of the share.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "MonitoringStatus", + "modelAsString": true + } + }, + "azureContainerInfo": { + "$ref": "#/definitions/AzureContainerInfo", + "description": "Azure container mapping for the share." + }, + "accessProtocol": { + "description": "Access protocol to be used by the share.", + "enum": [ + "SMB", + "NFS" + ], + "type": "string", + "x-ms-enum": { + "name": "ShareAccessProtocol", + "modelAsString": true + } + }, + "userAccessRights": { + "description": "Mapping of users and corresponding access rights on the share (required for SMB protocol).", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/UserAccessRight" + } + }, + "clientAccessRights": { + "description": "List of IP addresses and corresponding access rights on the share(required for NFS protocol).", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/ClientAccessRight" + } + }, + "refreshDetails": { + "$ref": "#/definitions/RefreshDetails", + "description": "Details of the refresh job on this share." + }, + "shareMappings": { + "description": "Share mount point to the role.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/MountPointMap" + }, + "readOnly": true + }, + "dataPolicy": { + "description": "Data policy of the share.", + "enum": [ + "Cloud", + "Local" + ], + "type": "string", + "x-ms-enum": { + "name": "DataPolicy", + "modelAsString": true + } + } + } + }, + "Sku": { + "description": "The SKU type.", + "type": "object", + "properties": { + "name": { + "description": "SKU name.", + "enum": [ + "Gateway", + "Edge", + "TEA_1Node", + "TEA_1Node_UPS", + "TEA_1Node_Heater", + "TEA_1Node_UPS_Heater", + "TEA_4Node_Heater", + "TEA_4Node_UPS_Heater", + "TMA", + "TDC", + "TCA_Small", + "GPU", + "TCA_Large", + "EdgeP_Base", + "EdgeP_High", + "EdgePR_Base", + "EdgePR_Base_UPS", + "EP2_64_1VPU_W", + "EP2_128_1T4_Mx1_W", + "EP2_256_2T4_W", + "EdgeMR_Mini", + "RCA_Small", + "RCA_Large", + "RDC", + "Management" + ], + "type": "string", + "x-ms-enum": { + "name": "SkuName", + "modelAsString": true + } + }, + "tier": { + "description": "The SKU tier. This is based on the SKU name.", + "enum": [ + "Standard" + ], + "type": "string", + "x-ms-enum": { + "name": "SkuTier", + "modelAsString": true + } + } + } + }, + "SkuCapability": { + "description": "The metadata to describe the capability.", + "type": "object", + "properties": { + "name": { + "description": "An invariant to describe the feature.", + "type": "string", + "readOnly": true + }, + "value": { + "description": "An invariant if the feature is measured by quantity.", + "type": "string", + "readOnly": true + } + } + }, + "SkuCost": { + "description": "The metadata for retrieving price info.", + "type": "object", + "properties": { + "meterId": { + "description": "Used for querying price from commerce.", + "type": "string", + "readOnly": true + }, + "quantity": { + "format": "int64", + "description": "The cost quantity.", + "type": "integer", + "readOnly": true + }, + "extendedUnit": { + "description": "The extended unit.", + "type": "string", + "readOnly": true + } + } + }, + "SkuInformation": { + "description": "Sku information", + "type": "object", + "properties": { + "name": { + "description": "The sku name.", + "type": "string", + "readOnly": true + }, + "tier": { + "description": "The sku tier.", + "type": "string", + "readOnly": true + }, + "kind": { + "description": "The sku kind.", + "type": "string", + "readOnly": true + }, + "family": { + "description": "The Sku family.", + "type": "string", + "readOnly": true + }, + "costs": { + "description": "The pricing info of the Sku.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/SkuCost" + }, + "readOnly": true + }, + "locations": { + "description": "The locations where Sku is available.", + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "locationInfo": { + "description": "The locations where Sku is available with zones and sites info", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/SkuLocationInfo" + }, + "readOnly": true + }, + "requiredQuotaIds": { + "description": "The required quotaIds for the sku to be available.", + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "requiredFeatures": { + "description": "The required features for the sku to be available.", + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + } + } + }, + "SkuInformationList": { + "description": "List of SKU Information objects", + "type": "object", + "properties": { + "value": { + "description": "List of ResourceTypeSku objects", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/ResourceTypeSku" + }, + "readOnly": true + }, + "nextLink": { + "description": "Links to the next set of results", + "type": "string", + "readOnly": true + } + } + }, + "SkuLocationInfo": { + "description": "The location info.", + "type": "object", + "properties": { + "location": { + "description": "The location.", + "type": "string", + "readOnly": true + }, + "zones": { + "description": "The zones.", + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "sites": { + "description": "The sites.", + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + } + } + }, + "StorageAccount": { + "description": "Represents a Storage Account on the Data Box Edge/Gateway device.", + "required": [ + "properties" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ARMBaseModel" + } + ], + "properties": { + "systemData": { + "description": "StorageAccount object on ASE device", + "$ref": "#/definitions/SystemData" + }, + "properties": { + "$ref": "#/definitions/StorageAccountProperties", + "description": "The Storage Account properties.", + "x-ms-client-flatten": true + } + } + }, + "StorageAccountCredential": { + "description": "The storage account credential.", + "required": [ + "properties" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ARMBaseModel" + } + ], + "properties": { + "systemData": { + "description": "StorageAccountCredential object", + "$ref": "#/definitions/SystemData" + }, + "properties": { + "$ref": "#/definitions/StorageAccountCredentialProperties", + "description": "The storage account credential properties.", + "x-ms-client-flatten": true + } + } + }, + "StorageAccountCredentialList": { + "description": "The collection of storage account credentials.", + "type": "object", + "properties": { + "value": { + "description": "The value.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/StorageAccountCredential" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to the next set of results.", + "type": "string", + "readOnly": true + } + } + }, + "StorageAccountCredentialProperties": { + "description": "The storage account credential properties.", + "required": [ + "alias", + "sslStatus", + "accountType" + ], + "type": "object", + "properties": { + "alias": { + "description": "Alias for the storage account.", + "type": "string" + }, + "userName": { + "description": "Username for the storage account.", + "type": "string" + }, + "accountKey": { + "$ref": "#/definitions/AsymmetricEncryptedSecret", + "description": "Encrypted storage key." + }, + "connectionString": { + "description": "Connection string for the storage account. Use this string if username and account key are not specified.", + "type": "string" + }, + "sslStatus": { + "description": "Signifies whether SSL needs to be enabled or not.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "SSLStatus", + "modelAsString": true + } + }, + "blobDomainName": { + "description": "Blob end point for private clouds.", + "type": "string" + }, + "accountType": { + "description": "Type of storage accessed on the storage account.", + "enum": [ + "GeneralPurposeStorage", + "BlobStorage" + ], + "type": "string", + "x-ms-enum": { + "name": "AccountType", + "modelAsString": true + } + }, + "storageAccountId": { + "description": "Id of the storage account.", + "type": "string" + } + } + }, + "StorageAccountList": { + "description": "Collection of all the Storage Accounts on the Data Box Edge/Gateway device.", + "type": "object", + "properties": { + "value": { + "description": "The list of storageAccounts.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/StorageAccount" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to the next set of results.", + "type": "string", + "readOnly": true + } + } + }, + "StorageAccountProperties": { + "description": "The storage account properties.", + "required": [ + "dataPolicy" + ], + "type": "object", + "properties": { + "description": { + "description": "Description for the storage Account.", + "type": "string" + }, + "storageAccountStatus": { + "description": "Current status of the storage account", + "enum": [ + "OK", + "Offline", + "Unknown", + "Updating", + "NeedsAttention" + ], + "type": "string", + "x-ms-enum": { + "name": "StorageAccountStatus", + "modelAsString": true + } + }, + "dataPolicy": { + "description": "Data policy of the storage Account.", + "enum": [ + "Cloud", + "Local" + ], + "type": "string", + "x-ms-enum": { + "name": "DataPolicy", + "modelAsString": true + } + }, + "storageAccountCredentialId": { + "description": "Storage Account Credential Id", + "type": "string" + }, + "blobEndpoint": { + "description": "BlobEndpoint of Storage Account", + "type": "string", + "readOnly": true + }, + "containerCount": { + "format": "int32", + "description": "The Container Count. Present only for Storage Accounts with DataPolicy set to Cloud.", + "type": "integer", + "readOnly": true + } + } + }, + "SubscriptionProperties": { + "type": "object", + "properties": { + "tenantId": { + "type": "string" + }, + "locationPlacementId": { + "type": "string" + }, + "quotaId": { + "type": "string" + }, + "serializedDetails": { + "type": "string" + }, + "registeredFeatures": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/SubscriptionRegisteredFeatures" + } + } + } + }, + "SubscriptionRegisteredFeatures": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "state": { + "type": "string" + } + } + }, + "SymmetricKey": { + "description": "Symmetric key for authentication.", + "type": "object", + "properties": { + "connectionString": { + "$ref": "#/definitions/AsymmetricEncryptedSecret", + "description": "Connection string based on the symmetric key." + } + } + }, + "SystemData": { + "description": "Metadata pertaining to creation and last modification of the resource.", + "type": "object", + "readOnly": true, + "properties": { + "createdBy": { + "type": "string", + "description": "The identity that created the resource." + }, + "createdByType": { + "type": "string", + "description": "The type of identity that created the resource.", + "enum": [ + "User", + "Application", + "ManagedIdentity", + "Key" + ], + "x-ms-enum": { + "name": "createdByType", + "modelAsString": true + } + }, + "createdAt": { + "type": "string", + "format": "date-time", + "description": "The timestamp of resource creation (UTC)." + }, + "lastModifiedBy": { + "type": "string", + "description": "The identity that last modified the resource." + }, + "lastModifiedByType": { + "type": "string", + "description": "The type of identity that last modified the resource.", + "enum": [ + "User", + "Application", + "ManagedIdentity", + "Key" + ], + "x-ms-enum": { + "name": "createdByType", + "modelAsString": true + } + }, + "lastModifiedAt": { + "type": "string", + "format": "date-time", + "description": "The type of identity that last modified the resource." + } + } + }, + "TrackingInfo": { + "description": "Tracking courier information.", + "type": "object", + "properties": { + "serialNumber": { + "description": "Serial number of the device being tracked.", + "type": "string" + }, + "carrierName": { + "description": "Name of the carrier used in the delivery.", + "type": "string" + }, + "trackingId": { + "description": "Tracking ID of the shipment.", + "type": "string" + }, + "trackingUrl": { + "description": "Tracking URL of the shipment.", + "type": "string" + } + } + }, + "Trigger": { + "description": "Trigger details.", + "required": [ + "kind" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ARMBaseModel" + } + ], + "properties": { + "systemData": { + "description": "Trigger in DataBoxEdge Resource", + "$ref": "#/definitions/SystemData" + }, + "kind": { + "description": "Trigger Kind.", + "enum": [ + "FileEvent", + "PeriodicTimerEvent" + ], + "type": "string", + "x-ms-enum": { + "name": "TriggerEventType", + "modelAsString": true + } + } + }, + "discriminator": "kind" + }, + "TriggerList": { + "description": "Collection of all trigger on the data box edge device.", + "type": "object", + "properties": { + "value": { + "description": "The list of triggers.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/Trigger" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to the next set of results.", + "type": "string", + "readOnly": true + } + } + }, + "UpdateDetails": { + "description": "Update Specific attributes", + "type": "object", + "properties": { + "updateTitle": { + "description": "Title of the Update", + "type": "string" + }, + "updateSize": { + "format": "double", + "description": "Size of the update(In Bytes)", + "type": "number" + }, + "updateType": { + "description": "Type of the Update", + "enum": [ + "Software", + "Kubernetes", + "Firmware" + ], + "type": "string", + "x-ms-enum": { + "name": "UpdateType", + "modelAsString": true + } + }, + "targetVersion": { + "description": "Target Version number", + "type": "string" + }, + "estimatedInstallTimeInMins": { + "format": "int32", + "description": "Estimated Install Time for the update", + "type": "integer" + }, + "rebootBehavior": { + "description": "Indicates if updates are available and at least one of the updates needs a reboot.", + "enum": [ + "NeverReboots", + "RequiresReboot", + "RequestReboot" + ], + "type": "string", + "x-ms-enum": { + "name": "InstallRebootBehavior", + "modelAsString": true + } + }, + "status": { + "description": "Status of the update.", + "enum": [ + "DownloadPending", + "DownloadStarted", + "DownloadCompleted", + "InstallStarted", + "InstallCompleted" + ], + "type": "string", + "x-ms-enum": { + "name": "UpdateStatus", + "modelAsString": true + } + } + } + }, + "UpdateDownloadProgress": { + "description": "Details about the download progress of update.", + "type": "object", + "properties": { + "downloadPhase": { + "description": "The download phase.", + "enum": [ + "Unknown", + "Initializing", + "Downloading", + "Verifying" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "DownloadPhase", + "modelAsString": true + } + }, + "percentComplete": { + "format": "int32", + "description": "Percentage of completion.", + "type": "integer", + "readOnly": true + }, + "totalBytesToDownload": { + "format": "double", + "description": "Total bytes to download.", + "type": "number", + "readOnly": true + }, + "totalBytesDownloaded": { + "format": "double", + "description": "Total bytes downloaded.", + "type": "number", + "readOnly": true + }, + "numberOfUpdatesToDownload": { + "format": "int32", + "description": "Number of updates to download.", + "type": "integer", + "readOnly": true + }, + "numberOfUpdatesDownloaded": { + "format": "int32", + "description": "Number of updates downloaded.", + "type": "integer", + "readOnly": true + } + } + }, + "UpdateInstallProgress": { + "description": "Progress details during installation of updates.", + "type": "object", + "properties": { + "percentComplete": { + "format": "int32", + "description": "Percentage completed.", + "type": "integer", + "readOnly": true + }, + "numberOfUpdatesToInstall": { + "format": "int32", + "description": "Number of updates to install.", + "type": "integer", + "readOnly": true + }, + "numberOfUpdatesInstalled": { + "format": "int32", + "description": "Number of updates installed.", + "type": "integer", + "readOnly": true + } + } + }, + "UpdateSummary": { + "description": "Details about ongoing updates and availability of updates on the device.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ARMBaseModel" + } + ], + "properties": { + "systemData": { + "description": "UpdateSummary Result", + "$ref": "#/definitions/SystemData" + }, + "properties": { + "$ref": "#/definitions/UpdateSummaryProperties", + "description": "The device update information summary.", + "x-ms-client-flatten": true + } + } + }, + "UpdateSummaryProperties": { + "description": "The device update information summary.", + "type": "object", + "properties": { + "deviceVersionNumber": { + "description": "The current version of the device in format: 1.2.17312.13.\",", + "type": "string" + }, + "friendlyDeviceVersionName": { + "description": "The current version of the device in text format.", + "type": "string" + }, + "deviceLastScannedDateTime": { + "format": "date-time", + "description": "The last time when a scan was done on the device.", + "type": "string" + }, + "lastCompletedScanJobDateTime": { + "format": "date-time", + "description": "The time when the last scan job was completed (success/cancelled/failed) on the appliance.", + "type": "string" + }, + "lastCompletedDownloadJobDateTime": { + "format": "date-time", + "description": "The time when the last Download job was completed (success/cancelled/failed) on the appliance.", + "type": "string", + "readOnly": true + }, + "lastCompletedDownloadJobId": { + "description": "JobId of the last ran download job.(Can be success/cancelled/failed)", + "type": "string", + "readOnly": true + }, + "lastDownloadJobStatus": { + "description": "JobStatus of the last ran download job.", + "enum": [ + "Invalid", + "Running", + "Succeeded", + "Failed", + "Canceled", + "Paused", + "Scheduled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "JobStatus", + "modelAsString": true + } + }, + "lastCompletedInstallJobDateTime": { + "format": "date-time", + "description": "The time when the last Install job was completed (success/cancelled/failed) on the appliance.", + "type": "string", + "readOnly": true + }, + "lastCompletedInstallJobId": { + "description": "JobId of the last ran install job.(Can be success/cancelled/failed)", + "type": "string", + "readOnly": true + }, + "lastInstallJobStatus": { + "description": "JobStatus of the last ran install job.", + "enum": [ + "Invalid", + "Running", + "Succeeded", + "Failed", + "Canceled", + "Paused", + "Scheduled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "JobStatus", + "modelAsString": true + } + }, + "totalNumberOfUpdatesAvailable": { + "format": "int32", + "description": "The number of updates available for the current device version as per the last device scan.", + "type": "integer", + "readOnly": true + }, + "totalNumberOfUpdatesPendingDownload": { + "format": "int32", + "description": "The total number of items pending download.", + "type": "integer", + "readOnly": true + }, + "totalNumberOfUpdatesPendingInstall": { + "format": "int32", + "description": "The total number of items pending install.", + "type": "integer", + "readOnly": true + }, + "rebootBehavior": { + "description": "Indicates if updates are available and at least one of the updates needs a reboot.", + "enum": [ + "NeverReboots", + "RequiresReboot", + "RequestReboot" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "InstallRebootBehavior", + "modelAsString": true + } + }, + "ongoingUpdateOperation": { + "description": "The current update operation.", + "enum": [ + "None", + "Scan", + "Download", + "Install" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "UpdateOperation", + "modelAsString": true + } + }, + "inProgressDownloadJobId": { + "description": "The job ID of the download job in progress.", + "type": "string", + "readOnly": true + }, + "inProgressInstallJobId": { + "description": "The job ID of the install job in progress.", + "type": "string", + "readOnly": true + }, + "inProgressDownloadJobStartedDateTime": { + "format": "date-time", + "description": "The time when the currently running download (if any) started.", + "type": "string", + "readOnly": true + }, + "inProgressInstallJobStartedDateTime": { + "format": "date-time", + "description": "The time when the currently running install (if any) started.", + "type": "string", + "readOnly": true + }, + "updateTitles": { + "description": "The list of updates available for install.", + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "updates": { + "description": "The list of updates available for install.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/UpdateDetails" + }, + "readOnly": true + }, + "totalUpdateSizeInBytes": { + "format": "double", + "description": "The total size of updates available for download in bytes.", + "type": "number", + "readOnly": true + }, + "totalTimeInMinutes": { + "format": "int32", + "description": "The total time in Minutes", + "type": "integer", + "readOnly": true + } + } + }, + "UploadCertificateRequest": { + "description": "The upload certificate request.", + "required": [ + "properties" + ], + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/RawCertificateData", + "description": "The Base 64 encoded certificate raw data.", + "x-ms-client-flatten": true + } + } + }, + "UploadCertificateResponse": { + "description": "The upload registration certificate response.", + "type": "object", + "properties": { + "authType": { + "description": "Specifies authentication type.", + "enum": [ + "Invalid", + "AzureActiveDirectory" + ], + "type": "string", + "x-ms-enum": { + "name": "AuthenticationType", + "modelAsString": true + } + }, + "resourceId": { + "description": "The resource ID of the Data Box Edge/Gateway device.", + "type": "string", + "readOnly": true + }, + "aadAuthority": { + "description": "Azure Active Directory tenant authority.", + "type": "string", + "readOnly": true + }, + "aadTenantId": { + "description": "Azure Active Directory tenant ID.", + "type": "string", + "readOnly": true + }, + "servicePrincipalClientId": { + "description": "Azure Active Directory service principal client ID.", + "type": "string", + "readOnly": true + }, + "servicePrincipalObjectId": { + "description": "Azure Active Directory service principal object ID.", + "type": "string", + "readOnly": true + }, + "azureManagementEndpointAudience": { + "description": "The azure management endpoint audience.", + "type": "string", + "readOnly": true + }, + "aadAudience": { + "description": "Identifier of the target resource that is the recipient of the requested token.", + "type": "string", + "readOnly": true + } + } + }, + "User": { + "description": "Represents a user who has access to one or more shares on the Data Box Edge/Gateway device.", + "required": [ + "properties" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ARMBaseModel" + } + ], + "properties": { + "systemData": { + "description": "User in DataBoxEdge Resource", + "$ref": "#/definitions/SystemData" + }, + "properties": { + "$ref": "#/definitions/UserProperties", + "description": "The storage account credential properties.", + "x-ms-client-flatten": true + } + } + }, + "UserAccessRight": { + "description": "The mapping between a particular user and the access type on the SMB share.", + "required": [ + "userId", + "accessType" + ], + "type": "object", + "properties": { + "userId": { + "description": "User ID (already existing in the device).", + "type": "string" + }, + "accessType": { + "description": "Type of access to be allowed for the user.", + "enum": [ + "Change", + "Read", + "Custom" + ], + "type": "string", + "x-ms-enum": { + "name": "ShareAccessType", + "modelAsString": true + } + } + } + }, + "UserList": { + "description": "Collection of users.", + "type": "object", + "properties": { + "value": { + "description": "The list of users.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/User" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to the next set of results.", + "type": "string", + "readOnly": true + } + } + }, + "UserProperties": { + "description": "The user properties.", + "type": "object", + "properties": { + "encryptedPassword": { + "$ref": "#/definitions/AsymmetricEncryptedSecret", + "description": "The password details." + }, + "shareAccessRights": { + "description": "List of shares that the user has rights on. This field should not be specified during user creation.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/ShareAccessRight" + }, + "readOnly": true + }, + "userType": { + "description": "Type of the user.", + "enum": [ + "Share", + "LocalManagement", + "ARM" + ], + "type": "string", + "x-ms-enum": { + "name": "UserType", + "modelAsString": true + } + } + } + } + }, + "parameters": { + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "The API version.", + "required": true, + "type": "string" + }, + "locationParameter": { + "name": "location", + "in": "path", + "description": "The location of the resource.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "The resource group name.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "The subscription ID.", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow" + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "tags": [] +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/AlertGet.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/AlertGet.json new file mode 100644 index 000000000000..ad6804fbc72c --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/AlertGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "name": "159a00c7-8543-4343-9435-263ac87df3bb", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "properties": { + "title": "Could not scan for updates. Error message : 'An internal error has occurred. Please contact Microsoft Support.'.", + "alertType": "UpdateScanFailedEvent", + "appearedAtDateTime": "2018-12-18T02:18:51.4270267Z", + "recommendation": "Resolve the error : An internal error has occurred. Please contact Microsoft Support.", + "severity": "Critical", + "errorDetails": { + "errorCode": "", + "errorMessage": "", + "occurrences": 1 + }, + "detailedInformation": {} + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/alerts/159a00c7-8543-4343-9435-263ac87df3bb", + "name": "159a00c7-8543-4343-9435-263ac87df3bb", + "type": "dataBoxEdgeDevices/alerts" + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/AlertGetAllInDevice.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/AlertGetAllInDevice.json new file mode 100644 index 000000000000..c5de56bbfbac --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/AlertGetAllInDevice.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "title": "Device password has changed", + "alertType": "PasswordChangedEvent", + "appearedAtDateTime": "2018-12-18T02:29:15.2325577Z", + "recommendation": "The device administrator password has changed. This is a required action as part of the first time device setup or regular password reset. No further action is required.", + "severity": "Informational", + "errorDetails": { + "errorCode": "", + "errorMessage": "", + "occurrences": 2 + }, + "detailedInformation": {} + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/alerts/83eccd0b-134b-40b0-ad62-b5f124d03790", + "name": "83eccd0b-134b-40b0-ad62-b5f124d03790", + "type": "dataBoxEdgeDevices/alerts" + }, + { + "properties": { + "title": "Could not scan for updates. Error message : 'An internal error has occurred. Please contact Microsoft Support.'.", + "alertType": "UpdateScanFailedEvent", + "appearedAtDateTime": "2018-12-18T02:18:51.4270267Z", + "recommendation": "Resolve the error : An internal error has occurred. Please contact Microsoft Support.", + "severity": "Critical", + "errorDetails": { + "errorCode": "", + "errorMessage": "", + "occurrences": 1 + }, + "detailedInformation": {} + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/alerts/159a00c7-8543-4343-9435-263ac87df3bb", + "name": "159a00c7-8543-4343-9435-263ac87df3bb", + "type": "dataBoxEdgeDevices/alerts" + } + ] + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/AvailableSkusList.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/AvailableSkusList.json new file mode 100644 index 000000000000..509bd4eaa69e --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/AvailableSkusList.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "location": "westus", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "dataBoxEdgeDevices", + "name": "Gateway", + "availability": "Available", + "tier": "Standard", + "kind": "AzureDataBoxGateway", + "version": "Stable", + "signupOption": "Available", + "locations": [ + "West US" + ], + "locationInfo": [ + { + "location": "West US" + } + ] + } + ] + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/BandwidthScheduleDelete.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/BandwidthScheduleDelete.json new file mode 100644 index 000000000000..6da061a63c4b --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/BandwidthScheduleDelete.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "name": "bandwidth-1", + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/BandwidthScheduleGet.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/BandwidthScheduleGet.json new file mode 100644 index 000000000000..a87bdde98dad --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/BandwidthScheduleGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "name": "bandwidth-1", + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "properties": { + "start": "00:00:00", + "stop": "13:59:00", + "rateInMbps": 100, + "days": [ + "Sunday", + "Monday" + ] + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/bandwidthSchedules/bandwidth-1", + "name": "bandwidth-1", + "type": "dataBoxEdgeDevices/bandwidthSchedules" + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/BandwidthScheduleGetAllInDevice.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/BandwidthScheduleGetAllInDevice.json new file mode 100644 index 000000000000..1988363f683f --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/BandwidthScheduleGetAllInDevice.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "start": "00:00:00", + "stop": "13:59:00", + "rateInMbps": 100, + "days": [ + "Sunday", + "Monday" + ] + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/bandwidthSchedules/bandwidth-1", + "name": "bandwidth-1", + "type": "dataBoxEdgeDevices/bandwidthSchedules" + } + ] + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/BandwidthSchedulePut.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/BandwidthSchedulePut.json new file mode 100644 index 000000000000..1a22a0b276d0 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/BandwidthSchedulePut.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "name": "bandwidth-1", + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "200" + ], + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ], + "parameters": { + "properties": { + "start": "0:0:0", + "stop": "13:59:0", + "rateInMbps": 100, + "days": [ + "Sunday", + "Monday" + ] + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "start": "00:00:00", + "stop": "13:59:00", + "rateInMbps": 100, + "days": [ + "Sunday", + "Monday" + ] + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/bandwidthSchedules/bandwidth-1", + "name": "bandwidth-1", + "type": "dataBoxEdgeDevices/bandwidthSchedules" + } + }, + "202": {} + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/ContainerDelete.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/ContainerDelete.json new file mode 100644 index 000000000000..1855c8929835 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/ContainerDelete.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "storageAccountName": "storageaccount1", + "containerName": "blobcontainer1", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/ContainerGet.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/ContainerGet.json new file mode 100644 index 000000000000..dfe8d1d88a49 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/ContainerGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "storageAccountName": "storageaccount1", + "containerName": "blobcontainer1", + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "properties": { + "containerStatus": "OK", + "dataFormat": "BlockBlob", + "refreshDetails": {}, + "createdDateTime": "2019-10-20T23:13:27.8545799Z" + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccounts/storageaccount1/containers/blobcontainer1", + "name": "blobcontainer1", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccounts/containers" + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/ContainerListAllInDevice.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/ContainerListAllInDevice.json new file mode 100644 index 000000000000..463a5c00995b --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/ContainerListAllInDevice.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "storageAccountName": "storageaccount1", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "containerStatus": "OK", + "dataFormat": "BlockBlob", + "refreshDetails": {}, + "createdDateTime": "2019-10-20T23:14:32.3016929Z" + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/EAuToWIN-6LJVNIFFB411021190437191/storageAccounts/storageaccount1/containers/blobcontainer1", + "name": "blobcontainer1", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccounts/containers" + }, + { + "properties": { + "containerStatus": "OK", + "dataFormat": "BlockBlob", + "refreshDetails": {}, + "createdDateTime": "2019-10-20T23:15:38.0077675Z" + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/EAuToWIN-6LJVNIFFB411021190437191/storageAccounts/storageaccount1/containers/blobcontainer2", + "name": "blobcontainer2", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccounts/containers" + }, + { + "properties": { + "containerStatus": "OK", + "dataFormat": "BlockBlob", + "refreshDetails": {}, + "createdDateTime": "2019-10-20T23:13:27.8545799Z" + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/EAuToWIN-6LJVNIFFB411021190437191/storageAccounts/storageaccount1/containers/blobcontainer3", + "name": "blobcontainer3", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccounts/containers" + } + ] + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/ContainerPut.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/ContainerPut.json new file mode 100644 index 000000000000..4dd7a40dfbfe --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/ContainerPut.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "storageAccountName": "storageaccount1", + "containerName": "blobcontainer1", + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "200" + ], + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ], + "container": { + "properties": { + "dataFormat": "BlockBlob" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "containerStatus": "OK", + "dataFormat": "BlockBlob", + "refreshDetails": {}, + "createdDateTime": "2019-10-20T23:13:27.8545799Z" + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccounts/storageaccount1/containers/blobcontainer1", + "name": "blobcontainer-5e155efe", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccounts/containers" + } + }, + "202": {} + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/ContainerRefresh.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/ContainerRefresh.json new file mode 100644 index 000000000000..7cd7fa839a45 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/ContainerRefresh.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "storageAccountName": "storageaccount1", + "containerName": "blobcontainer1", + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "200" + ], + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/DataBoxEdgeDeviceDelete.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/DataBoxEdgeDeviceDelete.json new file mode 100644 index 000000000000..d491dfdb63d2 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/DataBoxEdgeDeviceDelete.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/DataBoxEdgeDeviceGetByName.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/DataBoxEdgeDeviceGetByName.json new file mode 100644 index 000000000000..d7cc7a3a6256 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/DataBoxEdgeDeviceGetByName.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "location": "eastus2euap", + "tags": {}, + "sku": { + "name": "Edge", + "tier": "Standard" + }, + "etag": "W/\"datetime'2020-09-29T18%3A50%3A31.1203818Z'\"_W/\"datetime'2020-09-29T18%3A50%3A31.1343914Z'\"", + "identity": { + "type": "SystemAssigned", + "principalId": "b3e34fcc-ab02-4ca4-9d22-5de115419091", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47" + }, + "kind": "AzureStackEdge", + "properties": { + "dataBoxEdgeDeviceStatus": "Offline", + "serialNumber": "1D6QHQ2", + "deviceType": "DataBoxEdgeDevice", + "friendlyName": "DBE-1D6QHQ2", + "deviceModel": "Physical", + "deviceSoftwareVersion": "Azure Stack Edge 2009", + "deviceLocalCapacity": 8042259, + "timeZone": "Pacific Standard Time", + "deviceHcsVersion": "2.1.1361.23408", + "configuredRoleTypes": [ + "CloudEdgeManagement" + ], + "nodeCount": 1, + "edgeProfile": { + "subscription": { + "registrationId": "91d8753b-af42-4908-9a5e-2a61f08b20de", + "id": "/subscriptions/0d44739e-0563-474f-97e7-24a0cdb23b29/resourceGroups/VmMgmtTestPass/providers/Microsoft.AzureStack/edgeSubscriptions/daaac4b0-35c4-4008-bdc6-b72ca5890f16", + "state": "Registered" + } + } + }, + "id": "/subscriptions/0d44739e-0563-474f-97e7-24a0cdb23b29/resourcegroups/VmMgmtTestPass/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/EdgeTestPassResource", + "name": "EdgeTestPassResource", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices" + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/DataBoxEdgeDeviceGetByResourceGroup.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/DataBoxEdgeDeviceGetByResourceGroup.json new file mode 100644 index 000000000000..31d6065a2e61 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/DataBoxEdgeDeviceGetByResourceGroup.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "location": "eastus2euap", + "tags": {}, + "sku": { + "name": "Edge", + "tier": "Standard" + }, + "etag": "W/\"datetime'2020-09-29T18%3A50%3A31.1203818Z'\"_W/\"datetime'2020-09-29T18%3A50%3A31.1343914Z'\"", + "identity": { + "type": "SystemAssigned", + "principalId": "b3e34fcc-ab02-4ca4-9d22-5de115419091", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47" + }, + "kind": "AzureStackEdge", + "id": "/subscriptions/0d44739e-0563-474f-97e7-24a0cdb23b29/resourcegroups/VmMgmtTestPass/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/EdgeTestPassResource", + "name": "EdgeTestPassResource", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices" + }, + { + "location": "centraluseuap", + "tags": {}, + "sku": { + "name": "Edge", + "tier": "Standard" + }, + "etag": "W/\"datetime'2020-11-18T23%3A31%3A30.3266766Z'\"_W/\"datetime'2020-11-18T23%3A31%3A30.3326804Z'\"", + "identity": { + "type": "SystemAssigned", + "principalId": "d97a6de5-f5c0-485a-8f5e-b7f705d2dbc4", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47" + }, + "kind": "AzureStackEdge", + "id": "/subscriptions/0d44739e-0563-474f-97e7-24a0cdb23b29/resourcegroups/VmMgmtTestPass/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/FPGAResource", + "name": "FPGAResource", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices" + }, + { + "location": "centraluseuap", + "tags": {}, + "sku": { + "name": "Edge", + "tier": "Standard" + }, + "etag": "W/\"datetime'2020-11-18T23%3A31%3A23.1715672Z'\"_W/\"datetime'2020-11-18T23%3A31%3A23.2396152Z'\"", + "identity": { + "type": "SystemAssigned", + "principalId": "6f2b341b-aded-4ec2-a1bd-d09438d6cc8f", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47" + }, + "kind": "AzureStackEdge", + "id": "/subscriptions/0d44739e-0563-474f-97e7-24a0cdb23b29/resourcegroups/VmMgmtTestPass/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/TestVMEdgeResource", + "name": "TestVMEdgeResource", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices" + } + ] + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/DataBoxEdgeDeviceGetBySubscription.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/DataBoxEdgeDeviceGetBySubscription.json new file mode 100644 index 000000000000..1b414a1df37c --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/DataBoxEdgeDeviceGetBySubscription.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "location": "eastus2euap", + "tags": {}, + "sku": { + "name": "Gateway", + "tier": "Standard" + }, + "etag": "W/\"datetime'2020-11-19T01%3A39%3A55.1270082Z'\"_W/\"datetime'2020-11-19T01%3A39%3A55.1320118Z'\"", + "identity": { + "type": "SystemAssigned", + "principalId": "083df009-06d9-4e3c-ae72-f9249a814334", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47" + }, + "kind": "AzureDataBoxGateway", + "id": "/subscriptions/0d44739e-0563-474f-97e7-24a0cdb23b29/resourcegroups/abhudeda-rg/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/linksub01", + "name": "linksub01", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices" + }, + { + "location": "eastus2euap", + "tags": {}, + "sku": { + "name": "Gateway", + "tier": "Standard" + }, + "etag": "W/\"datetime'2020-11-19T01%3A40%3A05.9246966Z'\"_W/\"datetime'2020-11-19T01%3A40%3A05.9317011Z'\"", + "identity": { + "type": "SystemAssigned", + "principalId": "8536db30-78d2-4759-95b7-896a66e14c24", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47" + }, + "kind": "AzureDataBoxGateway", + "id": "/subscriptions/0d44739e-0563-474f-97e7-24a0cdb23b29/resourcegroups/abhudeda-rg/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/mergeazstest", + "name": "mergeazstest", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices" + }, + { + "location": "eastus2euap", + "tags": {}, + "sku": { + "name": "Gateway", + "tier": "Standard" + }, + "etag": "W/\"datetime'2020-11-19T01%3A40%3A06.496102Z'\"_W/\"datetime'2020-11-19T01%3A40%3A06.503107Z'\"", + "identity": { + "type": "SystemAssigned", + "principalId": "fc4c1205-35c8-4f35-abc7-f5a78945f676", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47" + }, + "kind": "AzureDataBoxGateway", + "id": "/subscriptions/0d44739e-0563-474f-97e7-24a0cdb23b29/resourcegroups/abhudeda-rg/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/mergeazstest2", + "name": "mergeazstest2", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices" + } + ] + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/DataBoxEdgeDevicePatch.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/DataBoxEdgeDevicePatch.json new file mode 100644 index 000000000000..356a3f95b09b --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/DataBoxEdgeDevicePatch.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "200" + ], + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ], + "parameters": { + "properties": { + "edgeProfile": { + "subscription": { + "id": "/subscriptions/0d44739e-0563-474f-97e7-24a0cdb23b29/resourceGroups/rapvs-rg/providers/Microsoft.AzureStack/linkedSubscriptions/ca014ddc-5cf2-45f8-b390-e901e4a0ae87" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "location": "eastus2euap", + "tags": {}, + "sku": { + "name": "Edge", + "tier": "Standard" + }, + "etag": "W/\"datetime'2020-11-19T04%3A43%3A38.6457308Z'\"_W/\"datetime'2020-11-19T04%3A43%3A38.6507339Z'\"", + "identity": { + "type": "SystemAssigned", + "principalId": "b3e34fcc-ab02-4ca4-9d22-5de115419091", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47" + }, + "kind": "AzureStackEdge", + "properties": { + "dataBoxEdgeDeviceStatus": "ReadyToSetup", + "deviceType": "DataBoxEdgeDevice", + "deviceLocalCapacity": 0, + "timeZone": "Pacific Standard Time", + "nodeCount": 0, + "resourceMoveDetails": { + "operationInProgress": "None" + }, + "edgeProfile": { + "subscription": { + "registrationId": "91d8753b-af42-4908-9a5e-2a61f08b20de", + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/VmMgmtTestPass/providers/Microsoft.AzureStack/edgeSubscriptions/daaac4b0-35c4-4008-bdc6-b72ca5890f16", + "state": "Registered" + } + } + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourcegroups/VmMgmtTestPass/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice", + "name": "testedgedevice", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices" + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/DataBoxEdgeDevicePut.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/DataBoxEdgeDevicePut.json new file mode 100644 index 000000000000..15e70527be03 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/DataBoxEdgeDevicePut.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "200" + ], + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ], + "dataBoxEdgeDevice": { + "location": "WUS", + "tags": {}, + "sku": { + "name": "Edge", + "tier": "Standard" + } + } + }, + "responses": { + "200": { + "body": { + "location": "WUS", + "tags": {}, + "sku": { + "name": "Edge", + "tier": "Standard" + }, + "name": "testedgedevice" + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/DeleteAddons.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/DeleteAddons.json new file mode 100644 index 000000000000..17e03b5768d8 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/DeleteAddons.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "roleName": "KubernetesRole", + "addonName": "arcName", + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/DeleteMonitoringConfig.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/DeleteMonitoringConfig.json new file mode 100644 index 000000000000..9276f48872cf --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/DeleteMonitoringConfig.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "roleName": "testrole", + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/DownloadUpdatesPost.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/DownloadUpdatesPost.json new file mode 100644 index 000000000000..9a37159bb0fd --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/DownloadUpdatesPost.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "200" + ], + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/ExtendedInfoPost.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/ExtendedInfoPost.json new file mode 100644 index 000000000000..f5ecf366d93d --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/ExtendedInfoPost.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "200" + ], + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "properties": { + "resourceKey": "3482840729935603111", + "encryptionKeyThumbprint": "", + "encryptionKey": "" + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice", + "name": "testedgedevice", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices" + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/GenerateCertificate.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/GenerateCertificate.json new file mode 100644 index 000000000000..ab24babf372f --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/GenerateCertificate.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "publicKey": "MIIEDjCCAnagAwIBAgIQEW4wrxj9+JdA4kFLDgegTTANBgkqhkiG9w0BAQUFADBDMUEwPwYDVQQDHjgAQwBCAF8AUABvAHIAdABhAGwAXwA2ADMANwA0ADEAMwA1ADkAMQA4ADAAMAA3ADAAOQAxADcANTAeFw0yMDExMTkwNDU2MjBaFw0yMDExMjIwNTA2MjBaMEMxQTA/BgNVBAMeOABDAEIAXwBQAG8AcgB0AGEAbABfADYAMwA3ADQAMQAzADUAOQAxADgAMAAwADcAMAA5ADEANwA1MIIBojANBgkqhkiG9w0BAQEFAAOCAY8AMIIBigKCAYEAqG617KAUc4gOoht527o6FGE/c97W/wZIXqKbx4G8vifljXWw3NGDDuSQfidE3MqSMMJ/AAlDhBH/Deo/PAgUWuWB2WgM+KFWrDS0oDBvLVeIIeiMx4LOsbz4J8IbcKrGWf+ulQyum7dE/yBLzPXcPTjhJP0oMfhGOMlVVWbiKaP78/WZk2PmBQaVv7PxAQnJAPqETH2qAyuc9bd0TaMlIER56WhX9+nzsoI0u7RmBEs8+BaudVroiiK/GpEczy73TCRlpVXGChdBHg+NvYRYz91ltCV9Ijo1bdvcUjdgDJZ4Tz7G8XVCQmxbd9ml6OBLgxQUpd9HSGTcIfFiv+rTUwHR7YkY+1UGHsDPOYnBVDTXs3RFm+c5uNnCKvtyTExDJgabT+FTNb3eyD/BSYsy6b/YZBRqPiO8BRFUsIhWhXtPaUjWOEx6XMeZRnGeF4Hi8iH8TR79kEJhfYy3piSPAc3JrhgoglpyyfZOgyPOje+8tAWS9FHUNyVXKKeksDoZAgMBAAEwDQYJKoZIhvcNAQEFBQADggGBACpfQt34mgr+WlFtY0tqaPAoF6XnVzyKB6XsVAoj1uKFTSCQnr0mWvUMWKSRFTu1bV1VdDokV5I+h92kBcO4ddtHhWtkt16j9XFDsGdDvoUWJeqecZVr9fBPC69wF/9R/2E6iJporR46Pui7gcilYGqb3IjJlh8RT/XBPamQrfDbS7G8eTe91ST5cHr89R6EtDwfyhyTZr2sRrvQrxY2AjEmdH5Zcl9q2Xf8DholZhZ9vwnuYBFfl6VCXWaDAzQWiPdxo1wgXxEpNNDstGFWJKnsnz9UCohNAiPf47B+csPqxjcTLVMhcGLdU/lwpzzkEOciijpYILscvPoU3IM6DmFROgU2z6CForpgwHPDJktyWU1MC7lFdfrSzwu/5b3ZAEQhnJf7rvrybULoYBQWJEuj26Is1S6kXpNUaHAc5HIyIoc2V2eRjasbPIqsU0smjPLS/1egjHxtw9u+v4qDDvDuOjhFJtC3NkPl06TfNgO9+5LgiB1JppXnkLyCQ9RQgw==", + "privateKey": null, + "expiryTimeInUTC": "2020-11-22T05:06:20.000Z" + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/GetAddons.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/GetAddons.json new file mode 100644 index 000000000000..1d514b74dd3d --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/GetAddons.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "roleName": "KubernetesRole", + "addonName": "arcName", + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "200" + ], + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "properties": { + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "resourceName": "testedgedevice", + "resourceLocation": "EastUS", + "version": "0.2.18", + "hostPlatform": "Linux", + "hostPlatformType": "KubernetesCluster", + "provisioningState": "Created" + }, + "kind": "ArcForKubernetes", + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourcegroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/addonExamples/roles/kubernetesRole/addons/arcName", + "name": "arcName", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/roles/addons" + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/GetDCAccessCode.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/GetDCAccessCode.json new file mode 100644 index 000000000000..adda310152d7 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/GetDCAccessCode.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "properties": { + "authCode": "_sv7-NY2" + } + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/GetMonitoringConfig.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/GetMonitoringConfig.json new file mode 100644 index 000000000000..baad7a1cbdb0 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/GetMonitoringConfig.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "roleName": "testrole", + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "properties": { + "metricConfigurations": [ + { + "resourceId": "test", + "mdmAccount": "test", + "metricNameSpace": "test", + "counterSets": [ + { + "counters": [ + { + "name": "test" + } + ] + } + ] + } + ] + } + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/GetUpdateExtendedInfo.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/GetUpdateExtendedInfo.json new file mode 100644 index 000000000000..2c593b21ee11 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/GetUpdateExtendedInfo.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "parameters": {}, + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "properties": { + "clientSecretStoreId": "/subscriptions/0d44739e-0563-474f-97e7-24a0cdb23b29/resourceGroups/arja-rg/providers/Microsoft.KeyVault/vaults/test-keyvault-ccy-523", + "clientSecretStoreUrl": "https://test-keyvault-ccy-523.vault.azure.net", + "channelIntegrityKeyName": "ase-cik-ab861822-21ea-4d31-96ec-89aa066f9a59", + "channelIntegrityKeyVersion": "95e9b619e65f433d82c9e1ead48214b9", + "keyVaultSyncStatus": "KeyVaultSynced", + "deviceSecrets": { + "HcsDataVolumeBitLockerExternalKey": { + "keyVaultId": "Id" + }, + "HcsInternalVolumeBitLockerExternalKey": { + "keyVaultId": "Id" + }, + "SystemVolumeBitLockerRecoveryKey": { + "keyVaultId": "Id" + }, + "SEDEncryptionExternalKeyId": {}, + "SEDEncryptionExternalKey": {}, + "BMCDefaultUserPassword": {}, + "RotateKeyForDataVolumeBitlocker": {}, + "RotateKeysForSedDrivesSerialized": {} + } + } + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/InstallUpdatesPost.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/InstallUpdatesPost.json new file mode 100644 index 000000000000..9a37159bb0fd --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/InstallUpdatesPost.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "200" + ], + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/JobsGet.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/JobsGet.json new file mode 100644 index 000000000000..685de68275c2 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/JobsGet.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "name": "159a00c7-8543-4343-9435-263ac87df3bb", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/id/locations/westus/jobs/159a00c7-8543-4343-9435-263ac87df3bb", + "name": "159a00c7-8543-4343-9435-263ac87df3bb", + "status": "Succeeded", + "startTime": "2018-12-18T02:18:51.4270267Z", + "endTime": "2018-12-18T03:18:51.4270267Z", + "percentComplete": 100, + "properties": { + "jobType": "DownloadUpdates", + "currentStage": "Success" + } + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/ListMonitoringConfig.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/ListMonitoringConfig.json new file mode 100644 index 000000000000..4b345db9f9d0 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/ListMonitoringConfig.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "roleName": "testrole", + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "metricConfigurations": [ + { + "resourceId": "test", + "mdmAccount": "test", + "metricNameSpace": "test", + "counterSets": [ + { + "counters": [ + { + "name": "test" + } + ] + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/NetworkSettingsGet.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/NetworkSettingsGet.json new file mode 100644 index 000000000000..30086c40ad97 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/NetworkSettingsGet.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "properties": { + "networkAdapters": [ + { + "adapterId": "{47D0D0EC-AA8A-4221-AA2A-355B58082BA5}", + "adapterPosition": { + "networkGroup": "NonRDMA", + "port": 0 + }, + "index": 1, + "nodeId": "3fd54d9e-f7a0-45bf-bdf1-39b0977d1984", + "networkAdapterName": "DATA1", + "label": "DATA1", + "macAddress": "00155D4E265B", + "linkSpeed": 10000000000, + "status": "Inactive", + "rdmaStatus": "Incapable", + "dhcpStatus": "Disabled", + "ipv4Configuration": { + "ipAddress": "10.150.78.56", + "subnet": "255.255.252.0", + "gateway": "10.150.76.1" + }, + "ipv6Configuration": { + "ipAddress": "2404:f801:4800:1e:d5c6:50a1:465b:1bbf", + "prefixLength": 64, + "gateway": "fe80::12f3:11ff:fe36:994b%5" + }, + "ipv6LinkLocalAddress": "fe80::d5c6:50a1:465b:1bbf%5", + "dnsServers": [ + "10.50.50.50", + "10.50.10.50" + ] + } + ] + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/networkSettings/default", + "name": "default", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/networkSettings" + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/NodeGetAllInDevice.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/NodeGetAllInDevice.json new file mode 100644 index 000000000000..04c3c3221531 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/NodeGetAllInDevice.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "nodeStatus": "Unknown", + "nodeChassisSerialNumber": "1D6QHQ2", + "nodeSerialNumber": "1D6QHQ2", + "nodeDisplayName": "Controller 1", + "nodeFriendlySoftwareVersion": "Data Box Edge 1908", + "nodeHcsVersion": "1.6.961.8307", + "nodeInstanceId": "ad051874-7d27-4ac4-a7b1-b6f231d8a035" + }, + "id": "/subscriptions/db4e2fdb-6d80-4e6e-b7cd-736098270664/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/DataBoxEdgeDevices/testedgedevice/nodes/1D6QHQ2", + "name": "1D6QHQ2", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/nodes" + }, + { + "properties": { + "nodeStatus": "Unknown", + "nodeChassisSerialNumber": "1D6QHQ2", + "nodeSerialNumber": "1DCNHQ2", + "nodeDisplayName": "Controller 1", + "nodeFriendlySoftwareVersion": "Data Box Edge 1908", + "nodeHcsVersion": "1.6.961.8307", + "nodeInstanceId": "ddf3a76d-ada4-44af-99c6-a69a0e21bcb6" + }, + "id": "/subscriptions/db4e2fdb-6d80-4e6e-b7cd-736098270664/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/DataBoxEdgeDevices/testedgedevice/nodes/1DCNHQ2", + "name": "1DCNHQ2", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/nodes" + } + ] + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/OperationsGet.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/OperationsGet.json new file mode 100644 index 000000000000..3d0d010047ff --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/OperationsGet.json @@ -0,0 +1,675 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/users/read", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "share users", + "operation": "List share users", + "description": "Lists or gets the share users" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/users/read", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "share users", + "operation": "List share users", + "description": "Lists or gets the share users" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/users/write", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "share users", + "operation": "Creates or updates share users", + "description": "Creates or updates the share users" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/users/delete", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "share users", + "operation": "Delete share users", + "description": "Deletes the share users" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/bandwidthSchedules/read", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "bandwidth schedules", + "operation": "List bandwidth schedules", + "description": "Lists or gets the bandwidth schedules" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/bandwidthSchedules/read", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "bandwidth schedules", + "operation": "List bandwidth schedules", + "description": "Lists or gets the bandwidth schedules" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/bandwidthSchedules/write", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "bandwidth schedules", + "operation": "Creates or updates bandwidth schedules", + "description": "Creates or updates the bandwidth schedules" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/bandwidthSchedules/delete", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "bandwidth schedules", + "operation": "Delete bandwidth schedules", + "description": "Deletes the bandwidth schedules" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/roles/read", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "ArmApiRes_roles", + "operation": "List ArmApiRes_roles", + "description": "Lists or gets the ArmApiRes_roles" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/roles/read", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "ArmApiRes_roles", + "operation": "List ArmApiRes_roles", + "description": "Lists or gets the ArmApiRes_roles" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/roles/write", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "ArmApiRes_roles", + "operation": "Creates or updates ArmApiRes_roles", + "description": "Creates or updates the ArmApiRes_roles" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/roles/delete", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "ArmApiRes_roles", + "operation": "Delete ArmApiRes_roles", + "description": "Deletes the ArmApiRes_roles" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/shares/read", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "shares", + "operation": "List shares", + "description": "Lists or gets the shares" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/shares/read", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "shares", + "operation": "List shares", + "description": "Lists or gets the shares" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/shares/write", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "shares", + "operation": "Creates or updates shares", + "description": "Creates or updates the shares" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/shares/refresh/action", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "shares", + "operation": "ArmApiOp_action_refresh_shares", + "description": "ArmApiDesc_action_refresh_shares" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/shares/delete", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "shares", + "operation": "Delete shares", + "description": "Deletes the shares" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/uploadCertificate/action", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "Data Box Edge devices", + "operation": "Upload certificates", + "description": "Upload certificate for device registration" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/write", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "Data Box Edge devices", + "operation": "Creates or updates Data Box Edge devices", + "description": "Creates or updates the Data Box Edge devices" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/read", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "Data Box Edge devices", + "operation": "List Data Box Edge devices", + "description": "Lists or gets the Data Box Edge devices" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/delete", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "Data Box Edge devices", + "operation": "Delete Data Box Edge devices", + "description": "Deletes the Data Box Edge devices" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/read", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "Data Box Edge devices", + "operation": "List Data Box Edge devices", + "description": "Lists or gets the Data Box Edge devices" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/read", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "Data Box Edge devices", + "operation": "List Data Box Edge devices", + "description": "Lists or gets the Data Box Edge devices" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/write", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "Data Box Edge devices", + "operation": "Creates or updates Data Box Edge devices", + "description": "Creates or updates the Data Box Edge devices" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/getExtendedInformation/action", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "Data Box Edge devices", + "operation": "ArmApiOp_action_getExtendedInformation_dataBoxEdgeDevices", + "description": "ArmApiDesc_action_getExtendedInformation_dataBoxEdgeDevices" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/extendedInformation/action", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "Data Box Edge devices", + "operation": "Gets resource extended information", + "description": "Retrieves resource extended information" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/networkSettings/read", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "Device network settings", + "operation": "List Device network settings", + "description": "Lists or gets the Device network settings" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/securitySettings/update/action", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "Device security settings", + "operation": "Update security settings", + "description": "Update security settings" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/updateSummary/read", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "update summary", + "operation": "List update summary", + "description": "Lists or gets the update summary" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/scanForUpdates/action", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "Data Box Edge devices", + "operation": "Scan for updates", + "description": "Scan for updates" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/downloadUpdates/action", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "Data Box Edge devices", + "operation": "Download Updates", + "description": "Download Updates in device" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/installUpdates/action", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "Data Box Edge devices", + "operation": "Install Updates", + "description": "Install Updates on device" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/jobs/read", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "jobs", + "operation": "List jobs", + "description": "Lists or gets the jobs" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccountCredentials/write", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "storage account credentials", + "operation": "Creates or updates storage account credentials", + "description": "Creates or updates the storage account credentials" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccountCredentials/read", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "storage account credentials", + "operation": "List storage account credentials", + "description": "Lists or gets the storage account credentials" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccountCredentials/read", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "storage account credentials", + "operation": "List storage account credentials", + "description": "Lists or gets the storage account credentials" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccountCredentials/delete", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "storage account credentials", + "operation": "Delete storage account credentials", + "description": "Deletes the storage account credentials" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/alerts/read", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "alerts", + "operation": "List alerts", + "description": "Lists or gets the alerts" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/alerts/read", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "alerts", + "operation": "List alerts", + "description": "Lists or gets the alerts" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/providers/Microsoft.Insights/metricDefinitions/read", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "Data Box Edge device", + "operation": "Read Data Box Edge device metric definition", + "description": "Gets the available Data Box Edge device level metrics" + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "metricSpecifications": [ + { + "name": "NICReadThroughput", + "displayName": "Read Throughput (Network)", + "displayDescription": "The read throughput of the network interface on the device in the reporting period for all volumes in the gateway.", + "unit": "BytesPerSecond", + "aggregationType": "Average", + "dimensions": [ + { + "name": "InstanceName", + "displayName": "Name", + "toBeExportedForShoebox": true + } + ], + "fillGapWithZero": false, + "category": "Transaction", + "supportedTimeGrainTypes": [ + "PT1M", + "PT15M", + "PT1H" + ], + "supportedAggregationTypes": [ + "Average", + "Minimum", + "Maximum" + ] + }, + { + "name": "NICWriteThroughput", + "displayName": "Write Throughput (Network)", + "displayDescription": "The write throughput of the network interface on the device in the reporting period for all volumes in the gateway.", + "unit": "BytesPerSecond", + "aggregationType": "Average", + "dimensions": [ + { + "name": "InstanceName", + "displayName": "Name", + "toBeExportedForShoebox": true + } + ], + "fillGapWithZero": false, + "category": "Transaction", + "supportedTimeGrainTypes": [ + "PT1M", + "PT15M", + "PT1H" + ], + "supportedAggregationTypes": [ + "Average", + "Minimum", + "Maximum" + ] + }, + { + "name": "CloudReadThroughputPerShare", + "displayName": "Cloud Download Throughput (Share)", + "displayDescription": "The download throughput to Azure from a share during the reporting period.", + "unit": "BytesPerSecond", + "aggregationType": "Average", + "dimensions": [ + { + "name": "Share", + "displayName": "Share", + "toBeExportedForShoebox": true + } + ], + "fillGapWithZero": false, + "category": "Transaction", + "supportedTimeGrainTypes": [ + "PT1M", + "PT15M", + "PT1H" + ], + "supportedAggregationTypes": [ + "Average", + "Minimum", + "Maximum" + ] + }, + { + "name": "CloudUploadThroughputPerShare", + "displayName": "Cloud Upload Throughput (Share)", + "displayDescription": "The upload throughput to Azure from a share during the reporting period.", + "unit": "BytesPerSecond", + "aggregationType": "Average", + "dimensions": [ + { + "name": "Share", + "displayName": "Share", + "toBeExportedForShoebox": true + } + ], + "fillGapWithZero": false, + "category": "Transaction", + "supportedTimeGrainTypes": [ + "PT1M", + "PT15M", + "PT1H" + ], + "supportedAggregationTypes": [ + "Average", + "Minimum", + "Maximum" + ] + }, + { + "name": "BytesUploadedToCloudPerShare", + "displayName": "Cloud Bytes Uploaded (Share)", + "displayDescription": "The total number of bytes that is uploaded to Azure from a share during the reporting period.", + "unit": "Bytes", + "aggregationType": "Average", + "dimensions": [ + { + "name": "Share", + "displayName": "Share", + "toBeExportedForShoebox": true + } + ], + "fillGapWithZero": false, + "category": "Transaction", + "supportedTimeGrainTypes": [ + "PT1M", + "PT15M", + "PT1H" + ], + "supportedAggregationTypes": [ + "Average", + "Minimum", + "Maximum" + ] + }, + { + "name": "TotalCapacity", + "displayName": "Total Capacity", + "displayDescription": "Total Capacity", + "unit": "Bytes", + "aggregationType": "Average", + "dimensions": [], + "fillGapWithZero": false, + "category": "Capacity", + "supportedTimeGrainTypes": [ + "PT5M", + "PT15M", + "PT1H" + ], + "supportedAggregationTypes": [ + "Average", + "Minimum", + "Maximum" + ] + }, + { + "name": "AvailableCapacity", + "displayName": "Available Capacity", + "displayDescription": "The available capacity in bytes during the reporting period.", + "unit": "Bytes", + "aggregationType": "Average", + "dimensions": [], + "fillGapWithZero": false, + "category": "Capacity", + "supportedTimeGrainTypes": [ + "PT5M", + "PT15M", + "PT1H" + ], + "supportedAggregationTypes": [ + "Average", + "Minimum", + "Maximum" + ] + }, + { + "name": "CloudUploadThroughput", + "displayName": "Cloud Upload Throughput", + "displayDescription": "The cloud upload throughput during the reporting period.", + "unit": "BytesPerSecond", + "aggregationType": "Average", + "dimensions": [], + "fillGapWithZero": false, + "category": "Transaction", + "supportedTimeGrainTypes": [ + "PT5M", + "PT15M", + "PT1H" + ], + "supportedAggregationTypes": [ + "Average", + "Minimum", + "Maximum" + ] + }, + { + "name": "CloudReadThroughput", + "displayName": "Cloud Read Throughput", + "displayDescription": "The cloud download throughput during the reporting period.", + "unit": "BytesPerSecond", + "aggregationType": "Average", + "dimensions": [], + "fillGapWithZero": false, + "category": "Transaction", + "supportedTimeGrainTypes": [ + "PT5M", + "PT15M", + "PT1H" + ], + "supportedAggregationTypes": [ + "Average", + "Minimum", + "Maximum" + ] + }, + { + "name": "BytesUploadedToCloud", + "displayName": "Cloud Bytes Uploaded (Device)", + "displayDescription": "The total number of bytes that is uploaded to Azure from a device during the reporting period.", + "unit": "Bytes", + "aggregationType": "Average", + "dimensions": [], + "fillGapWithZero": false, + "category": "Transaction", + "supportedTimeGrainTypes": [ + "PT5M", + "PT15M", + "PT1H" + ], + "supportedAggregationTypes": [ + "Average", + "Minimum", + "Maximum" + ] + } + ] + } + } + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/providers/Microsoft.Insights/diagnosticSettings/write", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "Data Box Edge device", + "operation": "Write diagnostics setting", + "description": "Creates or updates the diagnostics setting for the resource" + }, + "origin": "system" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/providers/Microsoft.Insights/diagnosticSettings/read", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "Data Box Edge device", + "operation": "Read diagnostics setting", + "description": "Gets the diagnostic setting for the resource" + }, + "origin": "system" + } + ] + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/OperationsStatusGet.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/OperationsStatusGet.json new file mode 100644 index 000000000000..0480584dcdf8 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/OperationsStatusGet.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "name": "159a00c7-8543-4343-9435-263ac87df3bb", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/id/locations/westus/operationsStatus/159a00c7-8543-4343-9435-263ac87df3bb", + "name": "159a00c7-8543-4343-9435-263ac87df3bb", + "status": "Succeeded", + "startTime": "2018-12-18T02:18:51.4270267Z", + "endTime": "2018-12-18T03:18:51.4270267Z", + "percentComplete": 100, + "properties": { + "jobType": "DownloadUpdates", + "currentStage": "Success" + } + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/OrderDelete.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/OrderDelete.json new file mode 100644 index 000000000000..d491dfdb63d2 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/OrderDelete.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/OrderGet.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/OrderGet.json new file mode 100644 index 000000000000..10bf8cf3cf26 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/OrderGet.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/orders/default", + "name": "default", + "type": "dataBoxEdgeDevices/orders", + "properties": { + "contactInformation": { + "contactPerson": "John Mcclane", + "companyName": "Microsoft", + "phone": "(800) 426-9400", + "emailList": [ + "john@microsoft.com" + ] + }, + "shippingAddress": { + "addressLine1": "Microsoft Corporation", + "addressLine2": "One Microsoft Way", + "addressLine3": "Redmond", + "postalCode": "98052", + "city": "WA", + "state": "WA", + "country": "USA" + }, + "currentStatus": { + "status": "Untracked", + "updateDateTime": "2018-12-10T07:59:05.847Z", + "comments": "" + }, + "orderHistory": [ + { + "status": "Untracked", + "updateDateTime": "2018-12-10T07:59:05.847Z", + "comments": "lorem ipsum" + } + ], + "serialNumber": "UDS123NSDA123", + "deliveryTrackingInfo": [], + "returnTrackingInfo": [] + } + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/OrderGetAllInDevice.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/OrderGetAllInDevice.json new file mode 100644 index 000000000000..b5ba346a1650 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/OrderGetAllInDevice.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/orders/default", + "name": "default", + "type": "dataBoxEdgeDevices/orders", + "properties": { + "contactInformation": { + "contactPerson": "John Mcclane", + "companyName": "Microsoft", + "phone": "(800) 426-9400", + "emailList": [ + "john@microsoft.com" + ] + }, + "shippingAddress": { + "addressLine1": "Microsoft Corporation", + "addressLine2": "One Microsoft Way", + "addressLine3": "Redmond", + "postalCode": "98052", + "city": "WA", + "state": "WA", + "country": "USA" + }, + "currentStatus": { + "status": "Untracked", + "updateDateTime": "2018-12-10T07:59:05.847Z", + "comments": "" + }, + "orderHistory": [ + { + "status": "Untracked", + "updateDateTime": "2018-12-10T07:59:05.847Z", + "comments": "lorem ipsum" + } + ], + "serialNumber": "UDS123NSDA123", + "deliveryTrackingInfo": [], + "returnTrackingInfo": [] + } + } + ] + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/OrderPut.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/OrderPut.json new file mode 100644 index 000000000000..4d24a1b5304e --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/OrderPut.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "200" + ], + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ], + "order": { + "properties": { + "contactInformation": { + "contactPerson": "John Mcclane", + "companyName": "Microsoft", + "phone": "(800) 426-9400", + "emailList": [ + "john@microsoft.com" + ] + }, + "shippingAddress": { + "addressLine1": "Microsoft Corporation", + "addressLine2": "One Microsoft Way", + "addressLine3": "Redmond", + "postalCode": "98052", + "city": "WA", + "state": "WA", + "country": "USA" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/orders/default", + "name": "default", + "type": "dataBoxEdgeDevices/orders", + "properties": { + "contactInformation": { + "contactPerson": "John Mcclane", + "companyName": "Microsoft", + "phone": "(800) 426-9400", + "emailList": [ + "john@microsoft.com" + ] + }, + "shippingAddress": { + "addressLine1": "Microsoft Corporation", + "addressLine2": "One Microsoft Way", + "addressLine3": "Redmond", + "postalCode": "98052", + "city": "WA", + "state": "WA", + "country": "USA" + }, + "currentStatus": { + "status": "Untracked", + "updateDateTime": "2018-12-10T07:59:05.847Z", + "comments": "" + }, + "orderHistory": [ + { + "status": "Untracked", + "updateDateTime": "2018-12-10T07:59:05.847Z", + "comments": "lorem ipsum" + } + ], + "serialNumber": "UDS123NSDA123", + "deliveryTrackingInfo": [], + "returnTrackingInfo": [] + } + } + }, + "202": {} + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/PutAddons.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/PutAddons.json new file mode 100644 index 000000000000..663a16d89133 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/PutAddons.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "roleName": "KubernetesRole", + "addonName": "arcName", + "addon": { + "kind": "ArcForKubernetes", + "properties": { + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "resourceName": "testedgedevice", + "resourceLocation": "EastUS" + } + }, + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "200" + ], + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "properties": { + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "resourceName": "testedgedevice", + "resourceLocation": "EastUS", + "version": "0.2.18", + "hostPlatform": "Linux", + "hostPlatformType": "KubernetesCluster", + "provisioningState": "Created" + }, + "kind": "ArcForKubernetes", + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourcegroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/addonExamples/roles/kubernetesRole/addons/arcName", + "name": "arcName", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/roles/addons" + } + }, + "202": {} + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/PutMonitoringConfig.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/PutMonitoringConfig.json new file mode 100644 index 000000000000..8e18285ae9fb --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/PutMonitoringConfig.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "roleName": "testrole", + "monitoringMetricConfiguration": { + "properties": { + "metricConfigurations": [ + { + "resourceId": "test", + "mdmAccount": "test", + "metricNameSpace": "test", + "counterSets": [ + { + "counters": [ + { + "name": "test" + } + ] + } + ] + } + ] + } + }, + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "properties": { + "metricConfigurations": [ + { + "resourceId": "test", + "mdmAccount": "test", + "metricNameSpace": "test", + "counterSets": [ + { + "counters": [ + { + "name": "test" + } + ] + } + ] + } + ] + } + } + }, + "202": {} + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/RoleDelete.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/RoleDelete.json new file mode 100644 index 000000000000..349a5cf961ec --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/RoleDelete.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "name": "IoTRole1", + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/RoleGet.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/RoleGet.json new file mode 100644 index 000000000000..52c05871c9ea --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/RoleGet.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "name": "IoTRole1", + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "properties": { + "hostPlatform": "Linux", + "ioTDeviceDetails": { + "deviceId": "iotdevice", + "ioTHostHub": "iothub.azure-devices.net", + "authentication": { + "symmetricKey": {} + } + }, + "ioTEdgeDeviceDetails": { + "deviceId": "iotEdge", + "ioTHostHub": "iothub.azure-devices.net", + "authentication": { + "symmetricKey": {} + } + }, + "shareMappings": [], + "roleStatus": "Enabled" + }, + "kind": "IOT", + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/roles/IoTRole1", + "name": "IoTRole1", + "type": "dataBoxEdgeDevices/roles" + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/RoleGetAllInDevice.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/RoleGetAllInDevice.json new file mode 100644 index 000000000000..27e20bb4859d --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/RoleGetAllInDevice.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "hostPlatform": "Linux", + "ioTDeviceDetails": { + "deviceId": "iotdevice", + "ioTHostHub": "iothub.azure-devices.net", + "authentication": { + "symmetricKey": {} + } + }, + "ioTEdgeDeviceDetails": { + "deviceId": "iotEdge", + "ioTHostHub": "iothub.azure-devices.net", + "authentication": { + "symmetricKey": {} + } + }, + "shareMappings": [], + "roleStatus": "Enabled" + }, + "kind": "IOT", + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/roles/IoTRole1", + "name": "IoTRole1", + "type": "dataBoxEdgeDevices/roles" + } + ] + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/RoleListAddOns.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/RoleListAddOns.json new file mode 100644 index 000000000000..886a2e412af2 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/RoleListAddOns.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "roleName": "IoTRole1", + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "subscriptionId": "0d44739e-0563-474f-97e7-24a0cdb23b29", + "resourceGroupName": "testrg1", + "resourceName": "testresource1", + "resourceLocation": "EastUS", + "version": "0.2.18", + "hostPlatform": "Linux", + "hostPlatformType": "KubernetesCluster", + "provisioningState": "Created" + }, + "kind": "ArcForKubernetes", + "id": "/subscriptions/0d44739e-0563-474f-97e7-24a0cdb23b29/resourcegroups/prpare/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/addonExamples/roles/kubernetesRole/addons/arcName", + "name": "arcName", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/roles/addons" + } + ] + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/RolePut.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/RolePut.json new file mode 100644 index 000000000000..3077bc317b9d --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/RolePut.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "name": "IoTRole1", + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "200" + ], + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ], + "role": { + "kind": "IOT", + "properties": { + "hostPlatform": "Linux", + "ioTDeviceDetails": { + "deviceId": "iotdevice", + "ioTHostHub": "iothub.azure-devices.net", + "authentication": { + "symmetricKey": { + "connectionString": { + "value": "Encrypted<>", + "encryptionCertThumbprint": "348586569999244", + "encryptionAlgorithm": "AES256" + } + } + } + }, + "ioTEdgeDeviceDetails": { + "deviceId": "iotEdge", + "ioTHostHub": "iothub.azure-devices.net", + "authentication": { + "symmetricKey": { + "connectionString": { + "value": "Encrypted<>", + "encryptionCertThumbprint": "1245475856069999244", + "encryptionAlgorithm": "AES256" + } + } + } + }, + "shareMappings": [], + "roleStatus": "Enabled" + } + } + }, + "responses": { + "200": { + "body": { + "kind": "IOT", + "properties": { + "hostPlatform": "Linux", + "ioTDeviceDetails": { + "deviceId": "iotdevice", + "ioTHostHub": "iothub.azure-devices.net", + "authentication": { + "symmetricKey": {} + } + }, + "ioTEdgeDeviceDetails": { + "deviceId": "iotEdge", + "ioTHostHub": "iothub.azure-devices.net", + "authentication": { + "symmetricKey": {} + } + }, + "shareMappings": [], + "roleStatus": "Enabled" + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/roles/IoTRole1", + "name": "IoTRole1", + "type": "dataBoxEdgeDevices/roles" + } + }, + "202": {} + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/SACDelete.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/SACDelete.json new file mode 100644 index 000000000000..e1db5d739d7f --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/SACDelete.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "name": "sac1", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/SACGet.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/SACGet.json new file mode 100644 index 000000000000..ec23f797ac76 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/SACGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "name": "sac1", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "properties": { + "alias": "sac1", + "userName": "cisbvt", + "sslStatus": "Disabled", + "accountType": "BlobStorage" + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccountCredentials/sac1", + "name": "sac1", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccountCredentials" + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/SACGetAllInDevice.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/SACGetAllInDevice.json new file mode 100644 index 000000000000..5b185e083454 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/SACGetAllInDevice.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "alias": "sac1128180128323", + "userName": "cisbvt", + "sslStatus": "Disabled", + "accountType": "GeneralPurposeStorage" + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccountCredentials/sac1128180128323", + "name": "sac1128180128323", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccountCredentials" + }, + { + "properties": { + "alias": "sac1128180128312", + "userName": "cisbvt", + "sslStatus": "Disabled", + "accountType": "BlobStorage" + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccountCredentials/sac1128180128312", + "name": "sac1128180128312", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccountCredentials" + } + ] + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/SACPut.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/SACPut.json new file mode 100644 index 000000000000..9b50267c2d82 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/SACPut.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "name": "sac1", + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "200" + ], + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ], + "storageAccountCredential": { + "properties": { + "alias": "sac1", + "userName": "cisbvt", + "accountKey": { + "value": "lAeZEYi6rNP1/EyNaVUYmTSZEYyaIaWmwUsGwek0+xiZj54GM9Ue9/UA2ed/ClC03wuSit2XzM/cLRU5eYiFBwks23rGwiQOr3sruEL2a74EjPD050xYjA6M1I2hu/w2yjVHhn5j+DbXS4Xzi+rHHNZK3DgfDO3PkbECjPck+PbpSBjy9+6Mrjcld5DIZhUAeMlMHrFlg+WKRKB14o/og56u5/xX6WKlrMLEQ+y6E18dUwvWs2elTNoVO8PBE8SM/CfooX4AMNvaNdSObNBPdP+F6Lzc556nFNWXrBLRt0vC7s9qTiVRO4x/qCNaK/B4y7IqXMllwQFf4Np9UQ2ECA==", + "encryptionCertThumbprint": "2A9D8D6BE51574B5461230AEF02F162C5F01AD31", + "encryptionAlgorithm": "AES256" + }, + "sslStatus": "Disabled", + "accountType": "BlobStorage" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "alias": "sac1", + "userName": "cisbvt", + "sslStatus": "Disabled", + "accountType": "BlobStorage" + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccountCredentials/sac1", + "name": "sac1", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccountCredentials" + } + }, + "202": {} + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/ScanForUpdatesPost.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/ScanForUpdatesPost.json new file mode 100644 index 000000000000..9a37159bb0fd --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/ScanForUpdatesPost.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "200" + ], + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/SecuritySettingsUpdatePost.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/SecuritySettingsUpdatePost.json new file mode 100644 index 000000000000..8ab2157fdca7 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/SecuritySettingsUpdatePost.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "AzureVM", + "deviceName": "testedgedevice", + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "200" + ], + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ], + "securitySettings": { + "properties": { + "deviceAdminPassword": { + "value": "", + "encryptionAlgorithm": "AES256", + "encryptionCertThumbprint": "" + } + } + } + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/ShareDelete.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/ShareDelete.json new file mode 100644 index 000000000000..11b01239cb8e --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/ShareDelete.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "name": "smbshare", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/ShareGet.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/ShareGet.json new file mode 100644 index 000000000000..9171e03bb22b --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/ShareGet.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "name": "smbshare", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "properties": { + "description": "", + "shareStatus": "Online", + "monitoringStatus": "Disabled", + "azureContainerInfo": { + "storageAccountCredentialId": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccountCredentials/sac1", + "containerName": "testContainerSMB", + "dataFormat": "BlockBlob" + }, + "accessProtocol": "SMB", + "userAccessRights": [ + { + "userId": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/users/user2", + "accessType": "Change" + } + ], + "clientAccessRights": [], + "refreshDetails": {}, + "shareMappings": [], + "dataPolicy": "Cloud" + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/shares/smbshare", + "name": "smbshare", + "type": "dataBoxEdgeDevices/shares" + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/ShareGetAllInDevice.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/ShareGetAllInDevice.json new file mode 100644 index 000000000000..526d088c4f0e --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/ShareGetAllInDevice.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "description": "", + "shareStatus": "Online", + "monitoringStatus": "Disabled", + "azureContainerInfo": { + "storageAccountCredentialId": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccountCredentials/sac1", + "containerName": "testContainerSMB", + "dataFormat": "BlockBlob" + }, + "accessProtocol": "SMB", + "userAccessRights": [ + { + "userId": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/users/user2", + "accessType": "Change" + } + ], + "clientAccessRights": [], + "refreshDetails": {}, + "shareMappings": [], + "dataPolicy": "Cloud" + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/shares/smbshare", + "name": "smbshare", + "type": "dataBoxEdgeDevices/shares" + } + ] + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/SharePut.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/SharePut.json new file mode 100644 index 000000000000..2655c434a55e --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/SharePut.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "name": "smbshare", + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "200" + ], + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ], + "share": { + "properties": { + "description": "", + "shareStatus": "Online", + "monitoringStatus": "Enabled", + "azureContainerInfo": { + "storageAccountCredentialId": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccountCredentials/sac1", + "containerName": "testContainerSMB", + "dataFormat": "BlockBlob" + }, + "accessProtocol": "SMB", + "userAccessRights": [ + { + "userId": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/users/user2", + "accessType": "Change" + } + ], + "dataPolicy": "Cloud" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "description": "", + "shareStatus": "Online", + "monitoringStatus": "Disabled", + "azureContainerInfo": { + "storageAccountCredentialId": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccountCredentials/sac1", + "containerName": "testContainerSMB", + "dataFormat": "BlockBlob" + }, + "accessProtocol": "SMB", + "userAccessRights": [ + { + "userId": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/users/user2", + "accessType": "Change" + } + ], + "clientAccessRights": [], + "refreshDetails": {}, + "shareMappings": [], + "dataPolicy": "Cloud" + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/shares/smbshare", + "name": "smbshare", + "type": "dataBoxEdgeDevices/shares" + } + }, + "202": {} + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/ShareRefreshPost.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/ShareRefreshPost.json new file mode 100644 index 000000000000..79b3c7b886da --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/ShareRefreshPost.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "name": "smbshare", + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "200" + ], + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/StorageAccountDelete.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/StorageAccountDelete.json new file mode 100644 index 000000000000..1265d7082d41 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/StorageAccountDelete.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "storageAccountName": "storageaccount1", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/StorageAccountGet.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/StorageAccountGet.json new file mode 100644 index 000000000000..f246a91dad8e --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/StorageAccountGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "storageAccountName": "blobstorageaccount1", + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "properties": { + "description": "It's an awesome storage account", + "storageAccountStatus": "OK", + "dataPolicy": "Cloud", + "storageAccountCredentialId": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccountCredentials/cisbvt", + "blobEndpoint": "https://blobstorageaccount1.blob.testedge.microsoftdatabox.com/", + "containerCount": 0 + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccounts/blobstorageaccount1", + "name": "blobstorageaccount1", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccounts" + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/StorageAccountGetAllInDevice.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/StorageAccountGetAllInDevice.json new file mode 100644 index 000000000000..3858cb857179 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/StorageAccountGetAllInDevice.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "description": "It's an awesome storage account", + "storageAccountStatus": "OK", + "dataPolicy": "Cloud", + "storageAccountCredentialId": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccountCredentials/cisbvt", + "blobEndpoint": "https://blobstorageaccount1.blob.testedge.microsoftdatabox.com/", + "containerCount": 0 + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccounts/blobstorageaccount1", + "name": "blobstorageaccount1", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccounts" + } + ] + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/StorageAccountPut.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/StorageAccountPut.json new file mode 100644 index 000000000000..de3222d0ab23 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/StorageAccountPut.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "storageAccountName": "blobstorageaccount1", + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "200" + ], + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ], + "storageAccount": { + "properties": { + "description": "It's an awesome storage account", + "storageAccountStatus": "OK", + "dataPolicy": "Cloud", + "storageAccountCredentialId": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccountCredentials/cisbvt" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "description": "It's an awesome storage account", + "storageAccountStatus": "OK", + "dataPolicy": "Cloud", + "storageAccountCredentialId": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccountCredentials/cisbvt", + "blobEndpoint": "https://blobstorageaccount1.blob.testedge.microsoftdatabox.com/", + "containerCount": 0 + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccounts/blobstorageaccount1", + "name": "blobstorageaccount1", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccounts" + } + }, + "202": {} + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/TriggerDelete.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/TriggerDelete.json new file mode 100644 index 000000000000..26abcb3ae332 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/TriggerDelete.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "name": "trigger1", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/TriggerGet.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/TriggerGet.json new file mode 100644 index 000000000000..3f2be16dd41b --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/TriggerGet.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "name": "trigger1", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "properties": { + "customContextTag": "CustomContextTags-1235346475", + "sourceInfo": { + "shareId": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/shares/share1" + }, + "sinkInfo": { + "roleId": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/roles/role1" + } + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/triggers/trigger1", + "name": "trigger1", + "type": "dataBoxEdgeDevices/triggers", + "kind": "FileEvent" + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/TriggerGetAllInDevice.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/TriggerGetAllInDevice.json new file mode 100644 index 000000000000..18145f8ff690 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/TriggerGetAllInDevice.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "customContextTag": "CustomContextTags-1235346475", + "sourceInfo": { + "shareId": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/shares/share1" + }, + "sinkInfo": { + "roleId": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/roles/role1" + } + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/triggers/trigger1", + "name": "trigger1", + "type": "dataBoxEdgeDevices/triggers", + "kind": "FileEvent" + } + ] + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/TriggerPut.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/TriggerPut.json new file mode 100644 index 000000000000..2ab707367f1e --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/TriggerPut.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "name": "trigger1", + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "200" + ], + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ], + "trigger": { + "properties": { + "customContextTag": "CustomContextTags-1235346475", + "sourceInfo": { + "shareId": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/shares/share1" + }, + "sinkInfo": { + "roleId": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/roles/role1" + } + }, + "kind": "FileEvent" + } + }, + "responses": { + "200": { + "body": { + "properties": { + "customContextTag": "CustomContextTags-1235346475", + "sourceInfo": { + "shareId": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/shares/share1" + }, + "sinkInfo": { + "roleId": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/roles/role1" + } + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/triggers/trigger1", + "name": "trigger1", + "type": "dataBoxEdgeDevices/triggers", + "kind": "FileEvent" + } + }, + "202": {} + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/UpdateSummaryGet.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/UpdateSummaryGet.json new file mode 100644 index 000000000000..c3e368c01050 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/UpdateSummaryGet.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ], + "parameters": { + "properties": { + "certificate": "MIIC9DCCAdygAwIBAgIQWJae7GNjiI9Mcv/gJyrOPTANBgkqhkiG9w0BAQUFADASMRAwDgYDVQQDDAdXaW5kb3dzMB4XDTE4MTEyNzAwMTA0NVoXDTIxMTEyODAwMTA0NVowEjEQMA4GA1UEAwwHV2luZG93czCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKxkRExqxf0qH1avnyORptIbRC2yQwqe3EIbJ2FPKr5jtAppGeX/dGKrFSnX+7/0HFr77aJHafdpEAtOiLyJ4zCAVs0obZCCIq4qJdmjYUTU0UXH/w/YzXfQA0d9Zh9AN+NJBX9xj05NzgsT24fkgsK2v6mWJQXT7YcWAsl5sEYPnx1e+MrupNyVSL/RUJmrS+etJSysHtFeWRhsUhVAs1DD5ExJvBLU3WH0IsojEvpXcjrutB5/MDQNrd/StGI6WovoSSPH7FyT9tgERx+q+Yg3YUGzfaIPCctlrRGehcdtzdNoKd0rsX62yCq0U6POoSfwe22NJu41oAUMd7e6R8cCAwEAAaNGMEQwEwYDVR0lBAwwCgYIKwYBBQUHAwIwHQYDVR0OBBYEFDd0VxnS3LnMIfwc7xW4b4IZWG5GMA4GA1UdDwEB/wQEAwIFIDANBgkqhkiG9w0BAQUFAAOCAQEAPQRby2u9celvtvL/DLEb5Vt3/tPStRQC5MyTD62L5RT/q8E6EMCXVZNkXF5WlWucLJi/18tY+9PNgP9xWLJh7kpSWlWdi9KPtwMqKDlEH8L2TnQdjimt9XuiCrTnoFy/1X2BGLY/rCaUJNSd15QCkz2xeW+Z+YSk2GwAc/A/4YfNpqSIMfNuPrT76o02VdD9WmJUA3fS/HY0sU9qgQRS/3F5/0EPS+HYQ0SvXCK9tggcCd4O050ytNBMJC9qMOJ7yE0iOrFfOJSCfDAuPhn/rHFh79Kn1moF+/CE+nc0/2RPiLC8r54/rt5dYyyxJDfXg0a3VrrX39W69WZGW5OXiw==" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "deviceVersionNumber": "2.1.1377.2170", + "friendlyDeviceVersionName": "Azure Stack Edge 2010", + "deviceLastScannedDateTime": "2021-03-17T19:51:51.7864634Z", + "lastCompletedScanJobDateTime": "2021-03-17T19:47:46.1595547Z", + "lastDownloadJobStatus": "Invalid", + "lastInstallJobStatus": "Invalid", + "totalNumberOfUpdatesAvailable": 1, + "totalNumberOfUpdatesPendingDownload": 1, + "totalNumberOfUpdatesPendingInstall": 1, + "rebootBehavior": "NeverReboots", + "ongoingUpdateOperation": "Install", + "updateTitles": [ + "Azure Stack Edge Update 2101 Package 1 of 2 for Pro-GPU, Pro R, Mini R" + ], + "totalUpdateSizeInBytes": 4260898192.0 + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/updateSummary/default", + "name": "default", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/updateSummary" + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/UploadCertificatePost.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/UploadCertificatePost.json new file mode 100644 index 000000000000..f989d7c00a79 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/UploadCertificatePost.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "200" + ], + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ], + "parameters": { + "properties": { + "certificate": "MIIC9DCCAdygAwIBAgIQWJae7GNjiI9Mcv/gJyrOPTANBgkqhkiG9w0BAQUFADASMRAwDgYDVQQDDAdXaW5kb3dzMB4XDTE4MTEyNzAwMTA0NVoXDTIxMTEyODAwMTA0NVowEjEQMA4GA1UEAwwHV2luZG93czCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKxkRExqxf0qH1avnyORptIbRC2yQwqe3EIbJ2FPKr5jtAppGeX/dGKrFSnX+7/0HFr77aJHafdpEAtOiLyJ4zCAVs0obZCCIq4qJdmjYUTU0UXH/w/YzXfQA0d9Zh9AN+NJBX9xj05NzgsT24fkgsK2v6mWJQXT7YcWAsl5sEYPnx1e+MrupNyVSL/RUJmrS+etJSysHtFeWRhsUhVAs1DD5ExJvBLU3WH0IsojEvpXcjrutB5/MDQNrd/StGI6WovoSSPH7FyT9tgERx+q+Yg3YUGzfaIPCctlrRGehcdtzdNoKd0rsX62yCq0U6POoSfwe22NJu41oAUMd7e6R8cCAwEAAaNGMEQwEwYDVR0lBAwwCgYIKwYBBQUHAwIwHQYDVR0OBBYEFDd0VxnS3LnMIfwc7xW4b4IZWG5GMA4GA1UdDwEB/wQEAwIFIDANBgkqhkiG9w0BAQUFAAOCAQEAPQRby2u9celvtvL/DLEb5Vt3/tPStRQC5MyTD62L5RT/q8E6EMCXVZNkXF5WlWucLJi/18tY+9PNgP9xWLJh7kpSWlWdi9KPtwMqKDlEH8L2TnQdjimt9XuiCrTnoFy/1X2BGLY/rCaUJNSd15QCkz2xeW+Z+YSk2GwAc/A/4YfNpqSIMfNuPrT76o02VdD9WmJUA3fS/HY0sU9qgQRS/3F5/0EPS+HYQ0SvXCK9tggcCd4O050ytNBMJC9qMOJ7yE0iOrFfOJSCfDAuPhn/rHFh79Kn1moF+/CE+nc0/2RPiLC8r54/rt5dYyyxJDfXg0a3VrrX39W69WZGW5OXiw==" + } + } + }, + "responses": { + "200": { + "body": { + "authType": "AzureActiveDirectory", + "resourceId": "392799901267771", + "aadAuthority": "https://login.windows.net", + "aadTenantId": "100b019d-4626-4a9e-a83c-9cff8fe41909", + "servicePrincipalClientId": "ffd8a688-82b1-4e5a-a4c1-7ede8c928e68", + "servicePrincipalObjectId": "cef6d40c-24e6-4a6f-bb9e-3ec60b4adec4", + "azureManagementEndpointAudience": "https://wus-bvtgateway.ext.trafficmanager.net/" + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/UserDelete.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/UserDelete.json new file mode 100644 index 000000000000..4967f750aa87 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/UserDelete.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "name": "user1", + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "200" + ], + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/UserGet.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/UserGet.json new file mode 100644 index 000000000000..80ff0f35b9e4 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/UserGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "name": "user1", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "properties": { + "userType": "Share" + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/users/user1", + "name": "user1", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/users" + }, + "202": {} + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/UserGetAllInDevice.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/UserGetAllInDevice.json new file mode 100644 index 000000000000..dd6ca1fc60a0 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/UserGetAllInDevice.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "userType": "Share" + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/users/user2", + "name": "user2", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/users" + }, + { + "properties": { + "userType": "Share" + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/users/user1", + "name": "user1", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/users" + } + ] + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/UserPut.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/UserPut.json new file mode 100644 index 000000000000..d374247c3d0c --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/preview/2021-02-01-preview/examples/UserPut.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2020-09-01-preview", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "name": "user1", + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "200" + ], + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ], + "user": { + "properties": { + "encryptedPassword": { + "value": "", + "encryptionAlgorithm": "None", + "encryptionCertThumbprint": "blah" + }, + "userType": "Share" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "userType": "Share" + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/users/user1", + "name": "user1", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/users" + } + }, + "202": {} + } +} diff --git a/specification/databoxedge/resource-manager/readme.azureresourceschema.md b/specification/databoxedge/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index ed01209d6f2b..000000000000 --- a/specification/databoxedge/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,96 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-databoxedge-2020-12-01 - - tag: schema-databoxedge-2020-09-01-preview - - tag: schema-databoxedge-2020-09-01 - - tag: schema-databoxedge-2020-05-01-preview - - tag: schema-databoxedge-2019-08-01 - - tag: schema-databoxedge-2019-07-01 - - tag: schema-databoxedge-2019-03-01 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-databoxedge-2020-12-01 and azureresourceschema - -``` yaml $(tag) == 'schema-databoxedge-2020-12-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DataBoxEdge/stable/2020-12-01/databoxedge.json - -``` - -### Tag: schema-databoxedge-2020-09-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-databoxedge-2020-09-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DataBoxEdge/preview/2020-09-01-preview/databoxedge.json - -``` - -### Tag: schema-databoxedge-2020-09-01 and azureresourceschema - -``` yaml $(tag) == 'schema-databoxedge-2020-09-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DataBoxEdge/stable/2020-09-01/databoxedge.json - -``` - -### Tag: schema-databoxedge-2020-05-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-databoxedge-2020-05-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DataBoxEdge/preview/2020-05-01-preview/databoxedge.json - -``` - -### Tag: schema-databoxedge-2019-08-01 and azureresourceschema - -``` yaml $(tag) == 'schema-databoxedge-2019-08-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DataBoxEdge/stable/2019-08-01/databoxedge.json - -``` - -### Tag: schema-databoxedge-2019-07-01 and azureresourceschema - -``` yaml $(tag) == 'schema-databoxedge-2019-07-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DataBoxEdge/stable/2019-07-01/databoxedge.json - -``` - -### Tag: schema-databoxedge-2019-03-01 and azureresourceschema - -``` yaml $(tag) == 'schema-databoxedge-2019-03-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DataBoxEdge/stable/2019-03-01/databoxedge.json - -``` diff --git a/specification/databoxedge/resource-manager/readme.go.md b/specification/databoxedge/resource-manager/readme.go.md index 1f0c77582b53..71d584f0938c 100644 --- a/specification/databoxedge/resource-manager/readme.go.md +++ b/specification/databoxedge/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ```yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: databoxedge clear-output-folder: true ``` @@ -13,6 +13,7 @@ go: ```yaml $(go) && $(multiapi) batch: + - tag: package-2021-02-01-preview - tag: package-2020-12-01 - tag: package-2020-09-01-preview - tag: package-2020-09-01 @@ -21,6 +22,14 @@ batch: - tag: package-2019-07 - tag: package-2019-03 ``` +### Tag: package-2021-02-01-preview and go + +These settings apply only when `--tag=package-2021-02-01-preview --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +```yaml $(tag) == 'package-2021-02-01-preview' && $(go) +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2021-02-01-preview/$(namespace) +``` ### Tag: package-2020-12-01 and go diff --git a/specification/databoxedge/resource-manager/readme.java.md b/specification/databoxedge/resource-manager/readme.java.md index bebcd0cd600c..78e86fdee112 100644 --- a/specification/databoxedge/resource-manager/readme.java.md +++ b/specification/databoxedge/resource-manager/readme.java.md @@ -16,6 +16,7 @@ output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-databoxedge ``` yaml $(java) && $(multiapi) batch: + - tag: package-2021-02-01-preview - tag: package-2020-12-01 - tag: package-2020-09-01-preview - tag: package-2020-09-01 @@ -25,6 +26,19 @@ batch: - tag: package-2019-03 ``` +### Tag: package-2021-02-01-preview and java + +These settings apply only when `--tag=package-2021-02-01-preview --java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-2021-02-01-preview' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.databoxedge.v2021_02-01_preview + output-folder: $(azure-libraries-for-java-folder)/sdk/databoxedge/mgmt-v2021_02-01_preview +regenerate-manager: true +generate-interface: true +``` + ### Tag: package-2020-12-01 and java These settings apply only when `--tag=package-2020-12-01 --java` is specified on the command line. diff --git a/specification/databoxedge/resource-manager/readme.md b/specification/databoxedge/resource-manager/readme.md index 923b2a1b6de1..5c292a794298 100644 --- a/specification/databoxedge/resource-manager/readme.md +++ b/specification/databoxedge/resource-manager/readme.md @@ -28,6 +28,14 @@ These are the global settings for the DataBox Edge API. openapi-type: arm tag: package-2019-08 ``` +### Tag: package-2021-02-01-preview + +These settings apply only when `--tag=package-2021-02-01-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2021-02-01-preview' +input-file: +- Microsoft.DataBoxEdge/preview/2021-02-01-preview/databoxedge.json +``` ### Tag: package-2020-12-01 These settings apply only when `--tag=package-2020-12-01` is specified on the command line. @@ -112,6 +120,7 @@ swagger-to-sdk: - repo: azure-sdk-for-python after_scripts: - python ./scripts/multiapi_init_gen.py azure-mgmt-databoxedge + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-js - repo: azure-sdk-for-go - repo: azure-sdk-for-java @@ -120,8 +129,6 @@ swagger-to-sdk: - bundle install && rake arm:regen_all_profiles['azure_mgmt_databoxedge'] - repo: azure-cli-extensions - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js databoxedge/resource-manager ``` ## C# @@ -155,7 +162,5 @@ See configuration in [readme.go.md](./readme.go.md) See configuration in [readme.java.md](./readme.java.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/databoxedge/resource-manager/readme.python.md b/specification/databoxedge/resource-manager/readme.python.md index 72834f1af3f1..d76d355eb72a 100644 --- a/specification/databoxedge/resource-manager/readme.python.md +++ b/specification/databoxedge/resource-manager/readme.python.md @@ -33,6 +33,7 @@ Generate all API versions currently shipped for this package ```yaml $(python) && $(multiapi) && !$(track2) batch: + - tag: package-2021-02-01-preview - tag: package-2020-12-01 - tag: package-2020-09-01-preview - tag: package-2020-09-01 @@ -43,6 +44,7 @@ batch: ``` ```yaml $(python) && $(multiapi) && $(track2) batch: + - tag: package-2021-02-01-preview - tag: package-2020-12-01 - tag: package-2020-09-01-preview - tag: package-2020-09-01 @@ -58,6 +60,20 @@ output-folder: $(python-sdks-folder)/databoxedge/azure-mgmt-databoxedge/azure/mg clear-output-folder: false perform-load: false ``` +### Tag: package-2021-02-01-preview and python + +These settings apply only when `--tag=package-2021-02-01-preview --python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-2021-02-01-preview' && $(python) & !$(track2) +python: + namespace: azure.mgmt.databoxedge.v2021_02_01_preview + output-folder: $(python-sdks-folder)/databoxedge/azure-mgmt-databoxedge/azure/mgmt/databoxedge/v2021_02_01_preview +``` +``` yaml $(tag) == 'package-2021-02-01-preview' && $(python) && $(track2) +namespace: azure.mgmt.databoxedge.v2021_02_01_preview +output-folder: $(python-sdks-folder)/databoxedge/azure-mgmt-databoxedge/azure/mgmt/databoxedge/v2021_02_01_preview +``` ### Tag: package-2020-12-01 and python diff --git a/specification/databoxedge/resource-manager/readme.ruby.md b/specification/databoxedge/resource-manager/readme.ruby.md index a57e9cc015c3..10056e13b5f1 100644 --- a/specification/databoxedge/resource-manager/readme.ruby.md +++ b/specification/databoxedge/resource-manager/readme.ruby.md @@ -12,6 +12,7 @@ azure-arm: true ``` yaml $(ruby) && $(multiapi) batch: + - tag: package-2021-02-01-preview - tag: package-2020-12-01 - tag: package-2020-09-01-preview - tag: package-2020-09-01 @@ -20,6 +21,15 @@ batch: - tag: package-2019-07 - tag: package-2019-03 ``` +### Tag: package-2021-02-01-preview and ruby + +These settings apply only when `--tag=package-2021-02-01-preview --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +``` yaml $(tag) == 'package-2021-02-01-preview' && $(ruby) +namespace: "Azure::DataBoxEdge::Mgmt::V2021_02-01_preview" +output-folder: $(ruby-sdks-folder)/management/azure_mgmt_databoxedge/lib +``` ### Tag: package-2020-12-01 and ruby diff --git a/specification/databoxedge/resource-manager/readme.terraform.md b/specification/databoxedge/resource-manager/readme.terraform.md index 80b38d991f5e..a06e07226edb 100644 --- a/specification/databoxedge/resource-manager/readme.terraform.md +++ b/specification/databoxedge/resource-manager/readme.terraform.md @@ -74,4 +74,37 @@ overrides: property: "SSLStatus" set: - GoFieldName: "SslStatus" -``` \ No newline at end of file +``` + +```yaml $(tag) == 'package-2021-02-01-preview' && $(terraform) +gosdk-folder: services/preview/databoxedge/mgmt/2021-02-01-preview/databoxedge +``` + +```yaml $(tag) == 'package-2020-12-01' && $(terraform) +gosdk-folder: services/databoxedge/mgmt/2020-12-01/databoxedge +``` + +```yaml $(tag) == 'package-2020-09-01-preview' && $(terraform) +gosdk-folder: services/preview/databoxedge/mgmt/2020-09-01-preview/databoxedge + +``` + +```yaml $(tag) == 'package-2020-09-01' && $(terraform) +gosdk-folder: services/databoxedge/mgmt/2020-09-01/databoxedge +``` + +```yaml $(tag) == 'package-2020-05-preview' && $(terraform) +gosdk-folder: services/preview/databoxedge/mgmt/2020-05-01-preview/databoxedge +``` + +```yaml $(tag) == 'package-2019-08' && $(terraform) +gosdk-folder: services/databoxedge/mgmt/2019-08-01/databoxedge +``` + +```yaml $(tag) == 'package-2019-07' && $(terraform) +gosdk-folder: services/databoxedge/mgmt/2019-07-01/databoxedge +``` + +```yaml $(tag) == 'package-2019-03' && $(terraform) +gosdk-folder: services/databoxedge/mgmt/2019-03-01/databoxedge +``` diff --git a/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/databricks.json b/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/databricks.json index 348cc61d5dfa..52958f7bfee4 100644 --- a/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/databricks.json +++ b/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/databricks.json @@ -855,6 +855,22 @@ "$ref": "#/definitions/WorkspaceCustomBooleanParameter", "description": "Should the Public IP be Disabled?" }, + "loadBalancerBackendPoolName": { + "$ref": "#/definitions/WorkspaceCustomStringParameter", + "description": "Name of the outbound Load Balancer Backend Pool for Secure Cluster Connectivity (No Public IP)." + }, + "loadBalancerId": { + "$ref": "#/definitions/WorkspaceCustomStringParameter", + "description": "Resource URI of Outbound Load balancer for Secure Cluster Connectivity (No Public IP) workspace." + }, + "natGatewayName": { + "$ref": "#/definitions/WorkspaceCustomStringParameter", + "description": "Name of the NAT gateway for Secure Cluster Connectivity (No Public IP) workspace subnets." + }, + "publicIpName": { + "$ref": "#/definitions/WorkspaceCustomStringParameter", + "description": "Name of the Public IP for No Public IP workspace with managed vNet." + }, "prepareEncryption": { "$ref": "#/definitions/WorkspaceCustomBooleanParameter", "description": "Prepare the workspace for encryption. Enables the Managed Identity for managed storage account." @@ -866,6 +882,23 @@ "requireInfrastructureEncryption": { "$ref": "#/definitions/WorkspaceCustomBooleanParameter", "description": "A boolean indicating whether or not the DBFS root file system will be enabled with secondary layer of encryption with platform managed keys for data at rest." + }, + "storageAccountName": { + "$ref": "#/definitions/WorkspaceCustomStringParameter", + "description": "Default DBFS storage account name." + }, + "storageAccountSkuName": { + "$ref": "#/definitions/WorkspaceCustomStringParameter", + "description": "Storage account SKU name, ex: Standard_GRS, Standard_LRS. Refer https://aka.ms/storageskus for valid inputs." + }, + "vnetAddressPrefix": { + "$ref": "#/definitions/WorkspaceCustomStringParameter", + "description": "Address prefix for Managed virtual network. Default value for this input is 10.139." + }, + "resourceTags": { + "$ref": "#/definitions/WorkspaceCustomObjectParameter", + "readOnly": true, + "description": "Tags applied to resources under Managed resource group. These can be updated by updating tags at workspace level." } }, "description": "Custom Parameters used for Cluster Creation." diff --git a/specification/databricks/resource-manager/readme.azureresourceschema.md b/specification/databricks/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index d05e235cbedf..000000000000 --- a/specification/databricks/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,24 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-databricks-2018-04-01 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-databricks-2018-04-01 and azureresourceschema - -``` yaml $(tag) == 'schema-databricks-2018-04-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Databricks/stable/2018-04-01/databricks.json - -``` diff --git a/specification/databricks/resource-manager/readme.go.md b/specification/databricks/resource-manager/readme.go.md index 9dbacacbe15e..ffcc90680a7a 100644 --- a/specification/databricks/resource-manager/readme.go.md +++ b/specification/databricks/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION clear-output-folder: true namespace: databricks ``` diff --git a/specification/databricks/resource-manager/readme.md b/specification/databricks/resource-manager/readme.md index 621a7581ebc7..20ac8b9c6fb4 100644 --- a/specification/databricks/resource-manager/readme.md +++ b/specification/databricks/resource-manager/readme.md @@ -89,8 +89,6 @@ swagger-to-sdk: - repo: azure-sdk-for-js - repo: azure-sdk-for-node - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js databricks/resource-manager ``` ## Go @@ -100,7 +98,5 @@ See configuration in [readme.go.md](./readme.go.md) ## Python See configuration in [readme.python.md](./readme.python.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/datacatalog/resource-manager/readme.azureresourceschema.md b/specification/datacatalog/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 7c377f7a6300..000000000000 --- a/specification/datacatalog/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,24 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-datacatalog-2016-03-30 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-datacatalog-2016-03-30 and azureresourceschema - -``` yaml $(tag) == 'schema-datacatalog-2016-03-30' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DataCatalog/stable/2016-03-30/datacatalog.json - -``` diff --git a/specification/datacatalog/resource-manager/readme.go.md b/specification/datacatalog/resource-manager/readme.go.md index 58a9273bbec4..4136c7589024 100644 --- a/specification/datacatalog/resource-manager/readme.go.md +++ b/specification/datacatalog/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION clear-output-folder: true namespace: datacatalog ``` diff --git a/specification/datacatalog/resource-manager/readme.md b/specification/datacatalog/resource-manager/readme.md index 8a2adf1fe7df..93bb2c8c036e 100644 --- a/specification/datacatalog/resource-manager/readme.md +++ b/specification/datacatalog/resource-manager/readme.md @@ -55,8 +55,6 @@ swagger-to-sdk: - repo: azure-sdk-for-js - repo: azure-sdk-for-node - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js datacatalog/resource-manager ``` ## C# @@ -137,7 +135,5 @@ generate-interface: true -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/preview/2020-02-01-preview/datadog.json b/specification/datadog/resource-manager/Microsoft.Datadog/preview/2020-02-01-preview/datadog.json index 4851f3b0b66b..f7c73082f0e6 100644 --- a/specification/datadog/resource-manager/Microsoft.Datadog/preview/2020-02-01-preview/datadog.json +++ b/specification/datadog/resource-manager/Microsoft.Datadog/preview/2020-02-01-preview/datadog.json @@ -679,6 +679,12 @@ "$ref": "#/definitions/DatadogMonitorResource" } }, + "201": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DatadogMonitorResource" + } + }, "default": { "description": "Default error response.", "schema": { @@ -686,6 +692,7 @@ } } }, + "x-ms-long-running-operation": true, "x-ms-examples": { "Monitors_Update": { "$ref": "./examples/Monitors_Update.json" @@ -1505,7 +1512,8 @@ "x-ms-enum": { "modelAsString": true, "name": "ProvisioningState" - } + }, + "readOnly": true }, "MonitoringStatus": { "description": "Flag specifying if the resource monitoring is enabled or disabled.", @@ -1772,6 +1780,9 @@ "additionalProperties": { "type": "string" } + }, + "sku": { + "$ref": "#/definitions/ResourceSku" } } }, diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/preview/2020-02-01-preview/examples/Monitors_Update.json b/specification/datadog/resource-manager/Microsoft.Datadog/preview/2020-02-01-preview/examples/Monitors_Update.json index 533a811b225a..6d74f3cd86ac 100644 --- a/specification/datadog/resource-manager/Microsoft.Datadog/preview/2020-02-01-preview/examples/Monitors_Update.json +++ b/specification/datadog/resource-manager/Microsoft.Datadog/preview/2020-02-01-preview/examples/Monitors_Update.json @@ -40,6 +40,30 @@ }, "location": "West US" } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/monitors/myMonitor", + "name": "myMonitor", + "type": "Microsoft.Datadog/monitors", + "sku": { + "name": "free_Monthly" + }, + "properties": { + "provisioningState": "Accepted", + "monitoringStatus": "Enabled", + "datadogOrganizationProperties": { + "name": "myOrg", + "id": "myOrg123" + }, + "liftrResourceCategory": "MonitorLogs", + "liftrResourcePreference": 1 + }, + "tags": { + "Environment": "Dev" + }, + "location": "West US" + } } } } diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2021-03-01/datadog.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2021-03-01/datadog.json index 8c7a4b76ee9c..0c0843732a48 100644 --- a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2021-03-01/datadog.json +++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2021-03-01/datadog.json @@ -679,6 +679,12 @@ "$ref": "#/definitions/DatadogMonitorResource" } }, + "201": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DatadogMonitorResource" + } + }, "default": { "description": "Default error response.", "schema": { @@ -686,6 +692,7 @@ } } }, + "x-ms-long-running-operation": true, "x-ms-examples": { "Monitors_Update": { "$ref": "./examples/Monitors_Update.json" @@ -1481,7 +1488,8 @@ "x-ms-enum": { "modelAsString": true, "name": "ProvisioningState" - } + }, + "readOnly": true }, "MonitoringStatus": { "description": "Flag specifying if the resource monitoring is enabled or disabled.", @@ -1752,6 +1760,9 @@ "additionalProperties": { "type": "string" } + }, + "sku": { + "$ref": "#/definitions/ResourceSku" } } }, diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2021-03-01/examples/Monitors_Update.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2021-03-01/examples/Monitors_Update.json index 2badea682d99..1a39ce075e83 100644 --- a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2021-03-01/examples/Monitors_Update.json +++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2021-03-01/examples/Monitors_Update.json @@ -40,6 +40,30 @@ }, "location": "West US" } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/monitors/myMonitor", + "name": "myMonitor", + "type": "Microsoft.Datadog/monitors", + "sku": { + "name": "free_Monthly" + }, + "properties": { + "provisioningState": "Accepted", + "monitoringStatus": "Enabled", + "datadogOrganizationProperties": { + "name": "myOrg", + "id": "myOrg123" + }, + "liftrResourceCategory": "MonitorLogs", + "liftrResourcePreference": 1 + }, + "tags": { + "Environment": "Dev" + }, + "location": "West US" + } } } } diff --git a/specification/datadog/resource-manager/readme.az.md b/specification/datadog/resource-manager/readme.az.md index 255a40da1cd7..9e87a4698277 100644 --- a/specification/datadog/resource-manager/readme.az.md +++ b/specification/datadog/resource-manager/readme.az.md @@ -9,4 +9,10 @@ az: package-name: azure-mgmt-datadog az-output-folder: $(azure-cli-extension-folder)/src/datadog python-sdk-output-folder: "$(az-output-folder)/azext_datadog/vendored_sdks/datadog" + +directive: + - where: + group: marketplace-agreement + set: + group: terms ``` diff --git a/specification/datadog/resource-manager/readme.azureresourceschema.md b/specification/datadog/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index e1300ce5f490..000000000000 --- a/specification/datadog/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,36 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-datadog-2021-03-01 - - tag: schema-datadog-2020-02-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-datadog-2021-03-01 and azureresourceschema - -``` yaml $(tag) == 'schema-datadog-2021-03-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Datadog/stable/2021-03-01/datadog.json - -``` - -### Tag: schema-datadog-2020-02-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-datadog-2020-02-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Datadog/preview/2020-02-01-preview/datadog.json - -``` diff --git a/specification/datadog/resource-manager/readme.go.md b/specification/datadog/resource-manager/readme.go.md index e4f736b53b6d..508681d79a54 100644 --- a/specification/datadog/resource-manager/readme.go.md +++ b/specification/datadog/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: datadog clear-output-folder: true ``` diff --git a/specification/datadog/resource-manager/readme.md b/specification/datadog/resource-manager/readme.md index 21b9bd8cec5e..08c2573523b0 100644 --- a/specification/datadog/resource-manager/readme.md +++ b/specification/datadog/resource-manager/readme.md @@ -67,8 +67,6 @@ swagger-to-sdk: - bundle install && rake arm:regen_all_profiles['azure_mgmt_datadog'] - repo: azure-cli-extensions - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js datadog/resource-manager ``` ## C# @@ -100,9 +98,7 @@ See configuration in [readme.ruby.md](./readme.ruby.md) See configuration in [readme.typescript.md](./readme.typescript.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) ## Multi-API/Profile support for AutoRest v3 generators diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Dataset.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Dataset.json index edf05e372b2e..d403dc5bc04d 100644 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Dataset.json +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Dataset.json @@ -385,8 +385,8 @@ ], "properties": { "filePattern": { - "description": "File pattern of JSON. To be more specific, the way of separating a collection of JSON objects. The default value is 'setOfObjects'. It is case-sensitive.", - "$ref": "#/definitions/JsonFormatFilePattern" + "type": "object", + "description": "File pattern of JSON. To be more specific, the way of separating a collection of JSON objects. The default value is 'setOfObjects'. It is case-sensitive." }, "nestingSeparator": { "type": "object", @@ -408,7 +408,7 @@ }, "JsonFormatFilePattern": { "description": "JSON format file pattern. A property of JsonFormat.", - "type": "object", + "type": "string", "enum": [ "setOfObjects", "arrayOfObjects" @@ -484,8 +484,8 @@ ], "properties": { "level": { - "description": "The GZip compression level.", - "$ref": "#/definitions/CompressionLevel" + "type": "object", + "description": "The GZip compression level." } } }, @@ -500,8 +500,8 @@ ], "properties": { "level": { - "description": "The Deflate compression level.", - "$ref": "#/definitions/CompressionLevel" + "type": "object", + "description": "The Deflate compression level." } } }, @@ -516,8 +516,8 @@ ], "properties": { "level": { - "description": "The ZipDeflate compression level.", - "$ref": "#/definitions/CompressionLevel" + "type": "object", + "description": "The ZipDeflate compression level." } } }, @@ -543,15 +543,15 @@ ], "properties": { "level": { - "description": "The TarGZip compression level.", - "$ref": "#/definitions/CompressionLevel" + "type": "object", + "description": "The TarGZip compression level." } } }, "CompressionLevel": { "title": "Microsoft.Azure.Management.DataFactories.Models.CompressionLevel", "description": "All available compression levels.", - "type": "object", + "type": "string", "enum": [ "Optimal", "Fastest" @@ -695,7 +695,11 @@ }, "sheetName": { "type": "object", - "description": "The sheet of excel file. Type: string (or Expression with resultType string)." + "description": "The sheet name of excel file. Type: string (or Expression with resultType string)." + }, + "sheetIndex": { + "type": "object", + "description": "The sheet index of excel file and default value is 0. Type: integer (or Expression with resultType integer)" }, "range": { "type": "object", @@ -715,8 +719,7 @@ } }, "required": [ - "location", - "sheetName" + "location" ] }, "ParquetDataset": { @@ -745,16 +748,7 @@ }, "compressionCodec": { "type": "object", - "enum": [ - "none", - "gzip", - "snappy", - "lzo" - ], - "x-ms-enum": { - "name": "compressionCodec", - "modelAsString": true - } + "description": "The data compressionCodec. Type: string (or Expression with resultType string)." } }, "required": [ @@ -799,24 +793,11 @@ }, "compressionCodec": { "type": "object", - "enum": [ - "bzip2", - "gzip", - "deflate", - "zipDeflate", - "snappy", - "lz4", - "tar", - "tarGZip" - ], - "x-ms-enum": { - "name": "compressionCodec", - "modelAsString": true - } + "description": "The data compressionCodec. Type: string (or Expression with resultType string)." }, "compressionLevel": { - "description": "The data compression method used for DelimitedText.", - "$ref": "#/definitions/CompressionLevel" + "type": "object", + "description": "The data compression method used for DelimitedText." }, "quoteChar": { "type": "object", @@ -839,6 +820,26 @@ "location" ] }, + "CompressionCodec": { + "description": "All available compressionCodec values.", + "type": "string", + "enum": [ + "none", + "lzo", + "bzip2", + "gzip", + "deflate", + "zipDeflate", + "snappy", + "lz4", + "tar", + "tarGZip" + ], + "x-ms-enum": { + "name": "CompressionCodec", + "modelAsString": true + } + }, "JsonDataset": { "x-ms-discriminator-value": "Json", "description": "Json dataset.", diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/IntegrationRuntime.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/IntegrationRuntime.json index f9160780c8b8..160a73ec5a57 100644 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/IntegrationRuntime.json +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/IntegrationRuntime.json @@ -237,6 +237,10 @@ "items": { "$ref": "#/definitions/PackageStore" } + }, + "managedCredential": { + "description": "The user-assigned managed identity reference.", + "$ref": "#/definitions/EntityReference" } }, "additionalProperties": { @@ -504,7 +508,8 @@ "type": "string", "enum": [ "IntegrationRuntimeReference", - "LinkedServiceReference" + "LinkedServiceReference", + "CredentialReference" ], "x-ms-enum": { "name": "IntegrationRuntimeEntityReferenceType", diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/LinkedService.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/LinkedService.json index 3edf3c6f662c..71f9d12270d8 100644 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/LinkedService.json +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/LinkedService.json @@ -281,6 +281,10 @@ "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)." + }, + "alwaysEncryptedSettings": { + "$ref": "#/definitions/SqlAlwaysEncryptedProperties", + "description": "Sql always encrypted properties." } }, "required": [ @@ -337,6 +341,10 @@ "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)." + }, + "alwaysEncryptedSettings": { + "$ref": "#/definitions/SqlAlwaysEncryptedProperties", + "description": "Sql always encrypted properties." } }, "required": [ @@ -393,12 +401,44 @@ "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)." + }, + "alwaysEncryptedSettings": { + "$ref": "#/definitions/SqlAlwaysEncryptedProperties", + "description": "Sql always encrypted properties." } }, "required": [ "connectionString" ] }, + "SqlAlwaysEncryptedProperties": { + "description": "Sql always encrypted properties.", + "properties": { + "alwaysEncryptedAkvAuthType": { + "x-ms-enum": { + "name": "SqlAlwaysEncryptedAkvAuthType", + "modelAsString": true + }, + "enum": [ + "ServicePrincipal", + "ManagedIdentity" + ], + "type": "string", + "description": "Sql always encrypted AKV authentication type. Type: string (or Expression with resultType string)." + }, + "servicePrincipalId": { + "type": "object", + "description": "The client ID of the application in Azure Active Directory used for Azure Key Vault authentication. Type: string (or Expression with resultType string)." + }, + "servicePrincipalKey": { + "$ref": "../datafactory.json#/definitions/SecretBase", + "description": "The key of the service principal used to authenticate against Azure Key Vault." + } + }, + "required": [ + "alwaysEncryptedAkvAuthType" + ] + }, "AzureBatchLinkedService": { "x-ms-discriminator-value": "AzureBatch", "description": "Azure Batch linked service.", @@ -595,14 +635,6 @@ "description": "Dynamics linked service properties.", "properties": { "deploymentType": { - "x-ms-enum": { - "name": "DynamicsDeploymentType", - "modelAsString": true - }, - "enum": [ - "Online", - "OnPremisesWithIfd" - ], "type": "object", "description": "The deployment type of the Dynamics instance. 'Online' for Dynamics Online and 'OnPremisesWithIfd' for Dynamics on-premises with Ifd. Type: string (or Expression with resultType string)." }, @@ -623,15 +655,6 @@ "description": "The organization name of the Dynamics instance. The property is required for on-prem and required for online when there are more than one Dynamics instances associated with the user. Type: string (or Expression with resultType string)." }, "authenticationType": { - "x-ms-enum": { - "name": "DynamicsAuthenticationType", - "modelAsString": true - }, - "enum": [ - "Office365", - "Ifd", - "AADServicePrincipal" - ], "type": "object", "description": "The authentication type to connect to Dynamics server. 'Office365' for online scenario, 'Ifd' for on-premises with Ifd scenario, 'AADServicePrincipal' for Server-To-Server authentication in online scenario. Type: string (or Expression with resultType string)." }, @@ -648,14 +671,6 @@ "description": "The client ID of the application in Azure Active Directory used for Server-To-Server authentication. Type: string (or Expression with resultType string)." }, "servicePrincipalCredentialType": { - "x-ms-enum": { - "name": "DynamicsServicePrincipalCredentialType", - "modelAsString": true - }, - "enum": [ - "ServicePrincipalKey", - "ServicePrincipalCert" - ], "type": "object", "description": "The service principal credential type to use in Server-To-Server authentication. 'ServicePrincipalKey' for key/secret, 'ServicePrincipalCert' for certificate. Type: string (or Expression with resultType string)." }, @@ -673,6 +688,31 @@ "authenticationType" ] }, + "DynamicsDeploymentType": { + "description": "All available dynamicsDeploymentType values.", + "type": "string", + "enum": [ + "Online", + "OnPremisesWithIfd" + ], + "x-ms-enum": { + "name": "DynamicsDeploymentType", + "modelAsString": true + } + }, + "DynamicsAuthenticationType": { + "description": "All available dynamicsAuthenticationType values.", + "type": "string", + "enum": [ + "Office365", + "Ifd", + "AADServicePrincipal" + ], + "x-ms-enum": { + "name": "DynamicsAuthenticationType", + "modelAsString": true + } + }, "DynamicsCrmLinkedService": { "x-ms-discriminator-value": "DynamicsCrm", "description": "Dynamics CRM linked service.", @@ -697,15 +737,7 @@ "description": "Dynamics CRM linked service properties.", "properties": { "deploymentType": { - "x-ms-enum": { - "name": "DynamicsDeploymentType", - "modelAsString": true - }, - "enum": [ - "Online", - "OnPremisesWithIfd" - ], - "type": "string", + "type": "object", "description": "The deployment type of the Dynamics CRM instance. 'Online' for Dynamics CRM Online and 'OnPremisesWithIfd' for Dynamics CRM on-premises with Ifd. Type: string (or Expression with resultType string)." }, "hostName": { @@ -725,16 +757,7 @@ "description": "The organization name of the Dynamics CRM instance. The property is required for on-prem and required for online when there are more than one Dynamics CRM instances associated with the user. Type: string (or Expression with resultType string)." }, "authenticationType": { - "x-ms-enum": { - "name": "DynamicsAuthenticationType", - "modelAsString": true - }, - "enum": [ - "Office365", - "Ifd", - "AADServicePrincipal" - ], - "type": "string", + "type": "object", "description": "The authentication type to connect to Dynamics CRM server. 'Office365' for online scenario, 'Ifd' for on-premises with Ifd scenario, 'AADServicePrincipal' for Server-To-Server authentication in online scenario. Type: string (or Expression with resultType string)." }, "username": { @@ -750,14 +773,6 @@ "description": "The client ID of the application in Azure Active Directory used for Server-To-Server authentication. Type: string (or Expression with resultType string)." }, "servicePrincipalCredentialType": { - "x-ms-enum": { - "name": "DynamicsServicePrincipalCredentialType", - "modelAsString": true - }, - "enum": [ - "ServicePrincipalKey", - "ServicePrincipalCert" - ], "type": "object", "description": "The service principal credential type to use in Server-To-Server authentication. 'ServicePrincipalKey' for key/secret, 'ServicePrincipalCert' for certificate. Type: string (or Expression with resultType string)." }, @@ -775,6 +790,18 @@ "authenticationType" ] }, + "ServicePrincipalCredentialType": { + "description": "All available servicePrincipalCredentialType values.", + "type": "string", + "enum": [ + "ServicePrincipalKey", + "ServicePrincipalCert" + ], + "x-ms-enum": { + "name": "ServicePrincipalCredentialType", + "modelAsString": true + } + }, "CommonDataServiceForAppsLinkedService": { "x-ms-discriminator-value": "CommonDataServiceForApps", "description": "Common Data Service for Apps linked service.", @@ -799,15 +826,7 @@ "description": "Common Data Service for Apps linked service properties.", "properties": { "deploymentType": { - "x-ms-enum": { - "name": "DynamicsDeploymentType", - "modelAsString": true - }, - "enum": [ - "Online", - "OnPremisesWithIfd" - ], - "type": "string", + "type": "object", "description": "The deployment type of the Common Data Service for Apps instance. 'Online' for Common Data Service for Apps Online and 'OnPremisesWithIfd' for Common Data Service for Apps on-premises with Ifd. Type: string (or Expression with resultType string)." }, "hostName": { @@ -827,16 +846,7 @@ "description": "The organization name of the Common Data Service for Apps instance. The property is required for on-prem and required for online when there are more than one Common Data Service for Apps instances associated with the user. Type: string (or Expression with resultType string)." }, "authenticationType": { - "x-ms-enum": { - "name": "DynamicsAuthenticationType", - "modelAsString": true - }, - "enum": [ - "Office365", - "Ifd", - "AADServicePrincipal" - ], - "type": "string", + "type": "object", "description": "The authentication type to connect to Common Data Service for Apps server. 'Office365' for online scenario, 'Ifd' for on-premises with Ifd scenario. 'AADServicePrincipal' for Server-To-Server authentication in online scenario. Type: string (or Expression with resultType string)." }, "username": { @@ -852,14 +862,6 @@ "description": "The client ID of the application in Azure Active Directory used for Server-To-Server authentication. Type: string (or Expression with resultType string)." }, "servicePrincipalCredentialType": { - "x-ms-enum": { - "name": "DynamicsServicePrincipalCredentialType", - "modelAsString": true - }, - "enum": [ - "ServicePrincipalKey", - "ServicePrincipalCert" - ], "type": "object", "description": "The service principal credential type to use in Server-To-Server authentication. 'ServicePrincipalKey' for key/secret, 'ServicePrincipalCert' for certificate. Type: string (or Expression with resultType string)." }, @@ -5340,15 +5342,6 @@ "description": "The URI for the script action." }, "roles": { - "x-ms-enum": { - "name": "HdiNodeTypes", - "modelAsString": true - }, - "enum": [ - "Headnode", - "Workernode", - "Zookeeper" - ], "type": "object", "description": "The node types on which the script action should be executed." }, @@ -5363,6 +5356,19 @@ "roles" ] }, + "HdiNodeTypes": { + "description": "All available HdiNodeTypes values.", + "type": "string", + "enum": [ + "Headnode", + "Workernode", + "Zookeeper" + ], + "x-ms-enum": { + "name": "HdiNodeTypes", + "modelAsString": true + } + }, "AzureDataLakeAnalyticsLinkedService": { "x-ms-discriminator-value": "AzureDataLakeAnalytics", "description": "Azure Data Lake Analytics linked service.", diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Pipeline.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Pipeline.json index d7108076fc23..f8dbc3deed9d 100644 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Pipeline.json +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Pipeline.json @@ -258,6 +258,10 @@ "maxConcurrentConnections": { "type": "object", "description": "The maximum concurrent connection count for the source data store. Type: integer (or Expression with resultType integer)." + }, + "disableMetricsCollection": { + "type": "object", + "description": "If true, disable data store metrics collection. Default is false. Type: boolean (or Expression with resultType boolean)." } }, "additionalProperties": { @@ -934,6 +938,10 @@ "type": "object", "description": "The maximum concurrent connection count for the source data store. Type: integer (or Expression with resultType integer)." }, + "disableMetricsCollection": { + "type": "object", + "description": "If true, disable data store metrics collection. Default is false. Type: boolean (or Expression with resultType boolean)." + }, "copyBehavior": { "description": "The type of copy behavior for copy sink.", "type": "object" @@ -1290,19 +1298,23 @@ ], "properties": { "filePattern": { - "description": "File pattern of JSON. This setting controls the way a collection of JSON objects will be treated. The default value is 'setOfObjects'. It is case-sensitive.", - "type": "string", - "enum": [ - "setOfObjects", - "arrayOfObjects" - ], - "x-ms-enum": { - "name": "JsonWriteFilePattern", - "modelAsString": true - } + "type": "object", + "description": "File pattern of JSON. This setting controls the way a collection of JSON objects will be treated. The default value is 'setOfObjects'. It is case-sensitive." } } }, + "JsonWriteFilePattern": { + "description": "All available filePatterns.", + "type": "string", + "enum": [ + "setOfObjects", + "arrayOfObjects" + ], + "x-ms-enum": { + "name": "JsonWriteFilePattern", + "modelAsString": true + } + }, "AvroSource": { "description": "A copy activity Avro source.", "type": "object", @@ -1656,6 +1668,10 @@ "maxConcurrentConnections": { "type": "object", "description": "The maximum concurrent connection count for the source data store. Type: integer (or Expression with resultType integer)." + }, + "disableMetricsCollection": { + "type": "object", + "description": "If true, disable data store metrics collection. Default is false. Type: boolean (or Expression with resultType boolean)." } }, "additionalProperties": { @@ -3864,6 +3880,10 @@ "maxConcurrentConnections": { "type": "object", "description": "The maximum concurrent connection count for the sink data store. Type: integer (or Expression with resultType integer)." + }, + "disableMetricsCollection": { + "type": "object", + "description": "If true, disable data store metrics collection. Default is false. Type: boolean (or Expression with resultType boolean)." } }, "additionalProperties": { @@ -4027,6 +4047,13 @@ "copyBehavior": { "description": "The type of copy behavior for copy sink.", "type": "object" + }, + "metadata": { + "type": "array", + "description": "Specify the custom metadata to be added to sink data. Type: array of objects (or Expression with resultType array of objects).", + "items": { + "$ref": "#/definitions/MetadataItem" + } } } }, @@ -4596,6 +4623,13 @@ "copyBehavior": { "description": "The type of copy behavior for copy sink.", "type": "object" + }, + "metadata": { + "type": "array", + "description": "Specify the custom metadata to be added to sink data. Type: array of objects (or Expression with resultType array of objects).", + "items": { + "$ref": "#/definitions/MetadataItem" + } } } }, @@ -4841,6 +4875,36 @@ } } }, + "MongoDbAtlasSink": { + "description": "A copy activity MongoDB Atlas sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "writeBehavior": { + "type": "object", + "description": "Specifies whether the document with same key to be overwritten (upsert) rather than throw exception (insert). The default value is \"insert\". Type: string (or Expression with resultType string). Type: string (or Expression with resultType string)." + } + } + }, + "MongoDbV2Sink": { + "description": "A copy activity MongoDB sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "writeBehavior": { + "type": "object", + "description": "Specifies whether the document with same key to be overwritten (upsert) rather than throw exception (insert). The default value is \"insert\". Type: string (or Expression with resultType string). Type: string (or Expression with resultType string)." + } + } + }, "CosmosDbMongoDbApiSink": { "description": "A copy activity sink for a CosmosDB (MongoDB API) database.", "type": "object", @@ -7134,6 +7198,20 @@ "name": "NetezzaPartitionOption", "modelAsString": true } + }, + "MetadataItem": { + "description": "Specify the name and value of custom metadata item.", + "type": "object", + "properties": { + "name": { + "type": "object", + "description": "Metadata item key name. Type: string (or Expression with resultType string)." + }, + "value": { + "type": "object", + "description": "Metadata item value. Type: string (or Expression with resultType string)." + } + } } } } diff --git a/specification/datafactory/resource-manager/readme.azureresourceschema.md b/specification/datafactory/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 76766e48c563..000000000000 --- a/specification/datafactory/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,43 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-datafactory-2018-06-01 - - tag: schema-datafactory-2017-09-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-datafactory-2018-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-datafactory-2018-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DataFactory/stable/2018-06-01/datafactory.json - - Microsoft.DataFactory/stable/2018-06-01/entityTypes/DataFlow.json - - Microsoft.DataFactory/stable/2018-06-01/entityTypes/Dataset.json - - Microsoft.DataFactory/stable/2018-06-01/entityTypes/IntegrationRuntime.json - - Microsoft.DataFactory/stable/2018-06-01/entityTypes/LinkedService.json - - Microsoft.DataFactory/stable/2018-06-01/entityTypes/ManagedPrivateEndpoint.json - - Microsoft.DataFactory/stable/2018-06-01/entityTypes/Pipeline.json - - Microsoft.DataFactory/stable/2018-06-01/entityTypes/Trigger.json - -``` - -### Tag: schema-datafactory-2017-09-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-datafactory-2017-09-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DataFactory/preview/2017-09-01-preview/datafactory.json - -``` diff --git a/specification/datafactory/resource-manager/readme.go.md b/specification/datafactory/resource-manager/readme.go.md index 91ee03e48573..b2f44faecb37 100644 --- a/specification/datafactory/resource-manager/readme.go.md +++ b/specification/datafactory/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: datafactory clear-output-folder: true ``` diff --git a/specification/datafactory/resource-manager/readme.md b/specification/datafactory/resource-manager/readme.md index eb66b97b8020..4508d4348157 100644 --- a/specification/datafactory/resource-manager/readme.md +++ b/specification/datafactory/resource-manager/readme.md @@ -67,15 +67,13 @@ This is not used by Autorest itself. ``` yaml $(swagger-to-sdk) swagger-to-sdk: - repo: azure-sdk-for-net - - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-java - repo: azure-sdk-for-go - repo: azure-sdk-for-js - repo: azure-sdk-for-node - repo: azure-cli-extensions - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js datafactory/resource-manager ``` @@ -92,7 +90,9 @@ csharp: output-folder: $(csharp-sdks-folder)/datafactory/Microsoft.Azure.Management.DataFactory/src/Generated clear-output-folder: true ``` +## Python +See configuration in [readme.python.md](./readme.python.md) ## Go @@ -203,7 +203,5 @@ directive: - DataFlow add type required ``` -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/datafactory/resource-manager/readme.python.md b/specification/datafactory/resource-manager/readme.python.md index 51f2c51d2ce3..ebf756003427 100644 --- a/specification/datafactory/resource-manager/readme.python.md +++ b/specification/datafactory/resource-manager/readme.python.md @@ -4,24 +4,54 @@ These settings apply only when `--python` is specified on the command line. Please also specify `--python-sdks-folder=`. Use `--python-mode=update` if you already have a setup.py and just want to update the code itself. -``` yaml $(python) +``` yaml $(python) && $(track2) python-mode: create -python: - azure-arm: true - license-header: MICROSOFT_MIT_NO_VERSION - payload-flattening-threshold: 2 - namespace: azure.mgmt.datafactory - package-name: azure-mgmt-datafactory - package-version: 1.0.0 - clear-output-folder: true +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +namespace: azure.mgmt.datafactory +package-name: azure-mgmt-datafactory +package-version: 1.0.0 +clear-output-folder: true ``` -``` yaml $(python) && $(python-mode) == 'update' -python: - no-namespace-folders: true - output-folder: $(python-sdks-folder)/datafactory/azure-mgmt-datafactory/azure/mgmt/datafactory +``` yaml $(python) && $(python-mode) == 'update' && $(track2) +no-namespace-folders: true +output-folder: $(python-sdks-folder)/datafactory/azure-mgmt-datafactory/azure/mgmt/datafactory ``` -``` yaml $(python) && $(python-mode) == 'create' -python: - basic-setup-py: true - output-folder: $(python-sdks-folder)/datafactory/azure-mgmt-datafactory +``` yaml $(python) && $(python-mode) == 'create' && $(track2) +basic-setup-py: true +output-folder: $(python-sdks-folder)/datafactory/azure-mgmt-datafactory +``` + +``` yaml $(python) && $(track2) +modelerfour: + lenient-model-deduplication: true +directive: + - from: swagger-document + where: $.definitions.JsonFormatFilePattern + transform: > + $['type'] = 'string'; + - from: swagger-document + where: $.definitions.CompressionLevel + transform: > + $['type'] = 'string'; + - from: swagger-document + where: $.definitions.DynamicsLinkedServiceTypeProperties.properties.servicePrincipalCredentialType + transform: > + $['type'] = 'string'; + - from: swagger-document + where: $.definitions.ScriptAction.properties.roles + transform: > + $['type'] = 'string'; + - from: swagger-document + where: $.definitions.DataFlow + transform: > + $['required'] = ['type']; + - from: swagger-document + where: $.definitions.ManagedPrivateEndpoint + transform: > + $['required'] = ['type']; + - from: swagger-document + where: $.definitions.ManagedVirtualNetwork + transform: > + $['required'] = ['type']; ``` diff --git a/specification/datalake-analytics/data-plane/readme.go.md b/specification/datalake-analytics/data-plane/readme.go.md index 73aa2dca184c..832c2072b58d 100644 --- a/specification/datalake-analytics/data-plane/readme.go.md +++ b/specification/datalake-analytics/data-plane/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ```yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION clear-output-folder: true ``` diff --git a/specification/datalake-analytics/resource-manager/readme.azureresourceschema.md b/specification/datalake-analytics/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index ee0f54438247..000000000000 --- a/specification/datalake-analytics/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,36 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-datalakeanalytics-2016-11-01 - - tag: schema-datalakeanalytics-2015-10-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-datalakeanalytics-2016-11-01 and azureresourceschema - -``` yaml $(tag) == 'schema-datalakeanalytics-2016-11-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DataLakeAnalytics/stable/2016-11-01/account.json - -``` - -### Tag: schema-datalakeanalytics-2015-10-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-datalakeanalytics-2015-10-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DataLakeAnalytics/preview/2015-10-01-preview/account.json - -``` diff --git a/specification/datalake-analytics/resource-manager/readme.go.md b/specification/datalake-analytics/resource-manager/readme.go.md index 3fe5176fc732..c4f0b7e1a376 100644 --- a/specification/datalake-analytics/resource-manager/readme.go.md +++ b/specification/datalake-analytics/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: account clear-output-folder: true ``` diff --git a/specification/datalake-analytics/resource-manager/readme.md b/specification/datalake-analytics/resource-manager/readme.md index 1059c9049078..920a82d86f2f 100644 --- a/specification/datalake-analytics/resource-manager/readme.md +++ b/specification/datalake-analytics/resource-manager/readme.md @@ -82,8 +82,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_datalake_analytics'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js datalake-analytics/resource-manager ``` @@ -171,7 +169,5 @@ generate-interface: true -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/datalake-store/data-plane/readme.go.md b/specification/datalake-store/data-plane/readme.go.md index 1e8647facc97..5aa88985c11e 100644 --- a/specification/datalake-store/data-plane/readme.go.md +++ b/specification/datalake-store/data-plane/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: filesystem clear-output-folder: true ``` diff --git a/specification/datalake-store/resource-manager/readme.azureresourceschema.md b/specification/datalake-store/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 6382fd8e0e7e..000000000000 --- a/specification/datalake-store/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,36 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-datalakestore-2016-11-01 - - tag: schema-datalakestore-2015-10-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-datalakestore-2016-11-01 and azureresourceschema - -``` yaml $(tag) == 'schema-datalakestore-2016-11-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DataLakeStore/stable/2016-11-01/account.json - -``` - -### Tag: schema-datalakestore-2015-10-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-datalakestore-2015-10-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DataLakeStore/preview/2015-10-01-preview/account.json - -``` diff --git a/specification/datalake-store/resource-manager/readme.go.md b/specification/datalake-store/resource-manager/readme.go.md index a24ac00912c7..a2f35be6fc01 100644 --- a/specification/datalake-store/resource-manager/readme.go.md +++ b/specification/datalake-store/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: account clear-output-folder: true ``` diff --git a/specification/datalake-store/resource-manager/readme.md b/specification/datalake-store/resource-manager/readme.md index a82fc94f373d..e403bec975ee 100644 --- a/specification/datalake-store/resource-manager/readme.md +++ b/specification/datalake-store/resource-manager/readme.md @@ -85,8 +85,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_datalake_store'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js datalake-store/resource-manager ``` @@ -160,7 +158,5 @@ generate-interface: true -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/datamigration/resource-manager/readme.azureresourceschema.md b/specification/datamigration/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 721f822565b6..000000000000 --- a/specification/datamigration/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,170 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-datamigration-2018-07-15-preview - - tag: schema-datamigration-2018-04-19 - - tag: schema-datamigration-2018-03-31-preview - - tag: schema-datamigration-2018-03-15-preview - - tag: schema-datamigration-2017-11-15-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-datamigration-2018-07-15-preview and azureresourceschema - -``` yaml $(tag) == 'schema-datamigration-2018-07-15-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DataMigration/preview/2018-07-15-preview/datamigration.json - - Microsoft.DataMigration/preview/2018-07-15-preview/definitions/Commands.json - - Microsoft.DataMigration/preview/2018-07-15-preview/definitions/Common.json - - Microsoft.DataMigration/preview/2018-07-15-preview/definitions/ConnectToSourceMySqlTask.json - - Microsoft.DataMigration/preview/2018-07-15-preview/definitions/ConnectToSourceSqlServerTask.json - - Microsoft.DataMigration/preview/2018-07-15-preview/definitions/ConnectToSourcePostgreSqlSyncTask.json - - Microsoft.DataMigration/preview/2018-07-15-preview/definitions/ConnectToTargetAzureDbForMySqlTask.json - - Microsoft.DataMigration/preview/2018-07-15-preview/definitions/ConnectToTargetSqlDbTask.json - - Microsoft.DataMigration/preview/2018-07-15-preview/definitions/ConnectToTargetSqlMiSyncTask.json - - Microsoft.DataMigration/preview/2018-07-15-preview/definitions/ConnectToTargetSqlMITask.json - - Microsoft.DataMigration/preview/2018-07-15-preview/definitions/ConnectToTargetSqlSqlDbSyncTask.json - - Microsoft.DataMigration/preview/2018-07-15-preview/definitions/ConnectToTargetAzureDbForPostgreSqlSyncTask.json - - Microsoft.DataMigration/preview/2018-07-15-preview/definitions/GetUserTablesSqlSyncTask.json - - Microsoft.DataMigration/preview/2018-07-15-preview/definitions/GetUserTablesSqlTask.json - - Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MigrateSchemaSqlServerSqlDbTask.json - - Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MigrateMySqlAzureDbForMySqlSyncTask.json - - Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MigratePostgreSqlAzureDbForPostgreSqlSyncTask.json - - Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MigrateSqlServerSqlDbSyncTask.json - - Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MigrateSqlServerSqlDbTask.json - - Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MigrateSqlServerSqlMiSyncTask.json - - Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MigrateSqlServerSqlMITask.json - - Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MigrateSsisTask.json - - Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MigrationValidation.json - - Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MongoDbTasks.json - - Microsoft.DataMigration/preview/2018-07-15-preview/definitions/GetTdeCertificatesSqlTask.json - - Microsoft.DataMigration/preview/2018-07-15-preview/definitions/OracleAzureDbPostgreSqlSyncTask.json - - Microsoft.DataMigration/preview/2018-07-15-preview/definitions/Projects.json - - Microsoft.DataMigration/preview/2018-07-15-preview/definitions/ServiceFeatureOCITask.json - - Microsoft.DataMigration/preview/2018-07-15-preview/definitions/Services.json - - Microsoft.DataMigration/preview/2018-07-15-preview/definitions/ServiceTasks.json - - Microsoft.DataMigration/preview/2018-07-15-preview/definitions/Tasks.json - - Microsoft.DataMigration/preview/2018-07-15-preview/definitions/TasksCommon.json - - Microsoft.DataMigration/preview/2018-07-15-preview/definitions/ValidateMigrationInputSqlServerSqlMITask.json - - Microsoft.DataMigration/preview/2018-07-15-preview/definitions/ValidateSyncMigrationInputSqlServerTask.json - - Microsoft.DataMigration/preview/2018-07-15-preview/definitions/ValidateMigrationInputSqlServerSqlMiSyncTask.json - -``` - -### Tag: schema-datamigration-2018-04-19 and azureresourceschema - -``` yaml $(tag) == 'schema-datamigration-2018-04-19' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DataMigration/stable/2018-04-19/datamigration.json - - Microsoft.DataMigration/stable/2018-04-19/definitions/Commands.json - - Microsoft.DataMigration/stable/2018-04-19/definitions/Common.json - - Microsoft.DataMigration/stable/2018-04-19/definitions/ConnectToSourceMySqlTask.json - - Microsoft.DataMigration/stable/2018-04-19/definitions/ConnectToSourcePostgreSqlSyncTask.json - - Microsoft.DataMigration/stable/2018-04-19/definitions/ConnectToSourceSqlServerTask.json - - Microsoft.DataMigration/stable/2018-04-19/definitions/ConnectToTargetAzureDbForMySqlTask.json - - Microsoft.DataMigration/stable/2018-04-19/definitions/ConnectToTargetAzureDbForPostgreSqlSyncTask.json - - Microsoft.DataMigration/stable/2018-04-19/definitions/ConnectToTargetSqlDbTask.json - - Microsoft.DataMigration/stable/2018-04-19/definitions/ConnectToTargetSqlMITask.json - - Microsoft.DataMigration/stable/2018-04-19/definitions/ConnectToTargetSqlMiSyncTask.json - - Microsoft.DataMigration/stable/2018-04-19/definitions/ConnectToTargetSqlSqlDbSyncTask.json - - Microsoft.DataMigration/stable/2018-04-19/definitions/GetTdeCertificatesSqlTask.json - - Microsoft.DataMigration/stable/2018-04-19/definitions/GetUserTablesSqlSyncTask.json - - Microsoft.DataMigration/stable/2018-04-19/definitions/GetUserTablesSqlTask.json - - Microsoft.DataMigration/stable/2018-04-19/definitions/MigrateMySqlAzureDbForMySqlSyncTask.json - - Microsoft.DataMigration/stable/2018-04-19/definitions/MigratePostgreSqlAzureDbForPostgreSqlSyncTask.json - - Microsoft.DataMigration/stable/2018-04-19/definitions/MigrateSqlServerSqlDbSyncTask.json - - Microsoft.DataMigration/stable/2018-04-19/definitions/MigrateSqlServerSqlDbTask.json - - Microsoft.DataMigration/stable/2018-04-19/definitions/MigrateSqlServerSqlMITask.json - - Microsoft.DataMigration/stable/2018-04-19/definitions/MigrateSqlServerSqlMiSyncTask.json - - Microsoft.DataMigration/stable/2018-04-19/definitions/Projects.json - - Microsoft.DataMigration/stable/2018-04-19/definitions/Services.json - - Microsoft.DataMigration/stable/2018-04-19/definitions/Tasks.json - - Microsoft.DataMigration/stable/2018-04-19/definitions/TasksCommon.json - - Microsoft.DataMigration/stable/2018-04-19/definitions/MigrationValidation.json - - Microsoft.DataMigration/stable/2018-04-19/definitions/ValidateMigrationInputSqlServerSqlMITask.json - - Microsoft.DataMigration/stable/2018-04-19/definitions/ValidateMigrationInputSqlServerSqlMiSyncTask.json - - Microsoft.DataMigration/stable/2018-04-19/definitions/ValidateSyncMigrationInputSqlServerTask.json - -``` - -### Tag: schema-datamigration-2018-03-31-preview and azureresourceschema - -``` yaml $(tag) == 'schema-datamigration-2018-03-31-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DataMigration/preview/2018-03-31-preview/datamigration.json - - Microsoft.DataMigration/preview/2018-03-31-preview/definitions/Common.json - - Microsoft.DataMigration/preview/2018-03-31-preview/definitions/ConnectToSourceSqlServerTask.json - - Microsoft.DataMigration/preview/2018-03-31-preview/definitions/ConnectToTargetSqlDbTask.json - - Microsoft.DataMigration/preview/2018-03-31-preview/definitions/ConnectToTargetSqlMITask.json - - Microsoft.DataMigration/preview/2018-03-31-preview/definitions/GetUserTablesSqlTask.json - - Microsoft.DataMigration/preview/2018-03-31-preview/definitions/MigrateSqlServerSqlDbTask.json - - Microsoft.DataMigration/preview/2018-03-31-preview/definitions/MigrateSqlServerSqlMITask.json - - Microsoft.DataMigration/preview/2018-03-31-preview/definitions/Projects.json - - Microsoft.DataMigration/preview/2018-03-31-preview/definitions/Services.json - - Microsoft.DataMigration/preview/2018-03-31-preview/definitions/Tasks.json - - Microsoft.DataMigration/preview/2018-03-31-preview/definitions/TasksCommon.json - - Microsoft.DataMigration/preview/2018-03-31-preview/definitions/MigrationValidation.json - - Microsoft.DataMigration/preview/2018-03-31-preview/definitions/ValidateMigrationInputSqlServerSqlMITask.json - -``` - -### Tag: schema-datamigration-2018-03-15-preview and azureresourceschema - -``` yaml $(tag) == 'schema-datamigration-2018-03-15-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -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 - -``` - -### Tag: schema-datamigration-2017-11-15-preview and azureresourceschema - -``` yaml $(tag) == 'schema-datamigration-2017-11-15-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DataMigration/preview/2017-11-15-preview/datamigration.json - - Microsoft.DataMigration/preview/2017-11-15-preview/definitions/Common.json - - Microsoft.DataMigration/preview/2017-11-15-preview/definitions/ConnectToSourceSqlServerTask.json - - Microsoft.DataMigration/preview/2017-11-15-preview/definitions/ConnectToTargetSqlDbTask.json - - Microsoft.DataMigration/preview/2017-11-15-preview/definitions/GetUserTablesSqlTask.json - - Microsoft.DataMigration/preview/2017-11-15-preview/definitions/MigrateSqlServerSqlDbTask.json - - Microsoft.DataMigration/preview/2017-11-15-preview/definitions/Projects.json - - Microsoft.DataMigration/preview/2017-11-15-preview/definitions/Services.json - - Microsoft.DataMigration/preview/2017-11-15-preview/definitions/Tasks.json - - Microsoft.DataMigration/preview/2017-11-15-preview/definitions/TasksCommon.json - - Microsoft.DataMigration/preview/2017-11-15-preview/definitions/MigrationValidation.json - -``` diff --git a/specification/datamigration/resource-manager/readme.go.md b/specification/datamigration/resource-manager/readme.go.md index bb3a6ffef642..a843190f2b45 100644 --- a/specification/datamigration/resource-manager/readme.go.md +++ b/specification/datamigration/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION clear-output-folder: true namespace: datamigration ``` diff --git a/specification/datamigration/resource-manager/readme.md b/specification/datamigration/resource-manager/readme.md index 5050fb4c3c00..42e97f085902 100644 --- a/specification/datamigration/resource-manager/readme.md +++ b/specification/datamigration/resource-manager/readme.md @@ -188,13 +188,12 @@ This is not used by Autorest itself. swagger-to-sdk: - repo: azure-sdk-for-net - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-go - repo: azure-sdk-for-js - repo: azure-sdk-for-node - repo: azure-sdk-for-java - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js datamigration/resource-manager ``` ## C# @@ -211,6 +210,10 @@ csharp: clear-output-folder: true ``` +## Python + +See configuration in [readme.python.md](./readme.python.md) + ## Go See configuration in [readme.go.md](./readme.go.md) @@ -219,7 +222,5 @@ See configuration in [readme.go.md](./readme.go.md) See configuration in [readme.java.md](./readme.java.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/datamigration/resource-manager/readme.python.md b/specification/datamigration/resource-manager/readme.python.md index 3a7c5f256f06..1e32099cbf9c 100644 --- a/specification/datamigration/resource-manager/readme.python.md +++ b/specification/datamigration/resource-manager/readme.python.md @@ -4,7 +4,7 @@ These settings apply only when `--python` is specified on the command line. Please also specify `--python-sdks-folder=`. Use `--python-mode=update` if you already have a setup.py and just want to update the code itself. -``` yaml $(python) +``` yaml $(python) && !$(track2) python-mode: create python: azure-arm: true @@ -15,13 +15,32 @@ python: package-version: 0.2.0 clear-output-folder: true ``` -``` yaml $(python) && $(python-mode) == 'update' +``` yaml $(python) && $(track2) +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +namespace: azure.mgmt.datamigration +package-name: azure-mgmt-datamigration +package-version: 0.2.0 +clear-output-folder: true +``` + + +``` yaml $(python) && $(python-mode) == 'update' && !$(track2) python: no-namespace-folders: true output-folder: $(python-sdks-folder)/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration ``` -``` yaml $(python) && $(python-mode) == 'create' +``` yaml $(python) && $(python-mode) == 'update' && $(track2) +no-namespace-folders: true +output-folder: $(python-sdks-folder)/datamigration/azure-mgmt-datamigration/azure/mgmt/datamigration +``` + +``` yaml $(python) && $(python-mode) == 'create' && !$(track2) python: basic-setup-py: true output-folder: $(python-sdks-folder)/datamigration/azure-mgmt-datamigration ``` +``` yaml $(python) && $(python-mode) == 'create' && $(track2) +basic-setup-py: true +output-folder: $(python-sdks-folder)/datamigration/azure-mgmt-datamigration +``` \ No newline at end of file diff --git a/specification/dataprotection/resource-manager/Microsoft.DataProtection/preview/2021-02-01-preview/dataprotection.json b/specification/dataprotection/resource-manager/Microsoft.DataProtection/preview/2021-02-01-preview/dataprotection.json index 0c6cc318a5bd..d262636aea34 100644 --- a/specification/dataprotection/resource-manager/Microsoft.DataProtection/preview/2021-02-01-preview/dataprotection.json +++ b/specification/dataprotection/resource-manager/Microsoft.DataProtection/preview/2021-02-01-preview/dataprotection.json @@ -1520,6 +1520,350 @@ } } }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataProtection/backupVaults/{vaultName}/backupInstances/{backupInstanceName}/resumeBackups": { + "post": { + "tags": [ + "BackupInstances" + ], + "description": "This operation will resume backups for backup instance", + "operationId": "BackupInstances_ResumeBackups", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "backupInstanceName", + "in": "path", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "The operation will be completed asynchronously.", + "headers": { + "Location": { + "description": "The URL of the resource used to check the status of the asynchronous operation.", + "type": "string" + }, + "Azure-AsyncOperation": { + "description": "The URL of the resource used to check the status of the asynchronous operation.", + "type": "string" + }, + "Retry-After": { + "description": "Suggested delay to check the status of the asynchronous operation. The value is an integer that represents the seconds.", + "type": "integer", + "format": "int32" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "ResumeBackups": { + "$ref": "./examples/BackupInstanceOperations/ResumeBackups.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataProtection/backupVaults/{vaultName}/backupInstances/{backupInstanceName}/resumeProtection": { + "post": { + "tags": [ + "BackupInstances" + ], + "description": "This operation will resume protection for a stopped backup instance", + "operationId": "BackupInstances_ResumeProtection", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "backupInstanceName", + "in": "path", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "The operation will be completed asynchronously.", + "headers": { + "Location": { + "description": "The URL of the resource used to check the status of the asynchronous operation.", + "type": "string" + }, + "Azure-AsyncOperation": { + "description": "The URL of the resource used to check the status of the asynchronous operation.", + "type": "string" + }, + "Retry-After": { + "description": "Suggested delay to check the status of the asynchronous operation. The value is an integer that represents the seconds.", + "type": "integer", + "format": "int32" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "ResumeProtection": { + "$ref": "./examples/BackupInstanceOperations/ResumeProtection.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataProtection/backupVaults/{vaultName}/backupInstances/{backupInstanceName}/stopProtection": { + "post": { + "tags": [ + "BackupInstances" + ], + "description": "This operation will stop protection of a backup instance and data will be held forever", + "operationId": "BackupInstances_StopProtection", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "backupInstanceName", + "in": "path", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "The operation will be completed asynchronously.", + "headers": { + "Location": { + "description": "The URL of the resource used to check the status of the asynchronous operation.", + "type": "string" + }, + "Azure-AsyncOperation": { + "description": "The URL of the resource used to check the status of the asynchronous operation.", + "type": "string" + }, + "Retry-After": { + "description": "Suggested delay to check the status of the asynchronous operation. The value is an integer that represents the seconds.", + "type": "integer", + "format": "int32" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "StopProtection": { + "$ref": "./examples/BackupInstanceOperations/StopProtection.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataProtection/backupVaults/{vaultName}/backupInstances/{backupInstanceName}/suspendBackups": { + "post": { + "tags": [ + "BackupInstances" + ], + "description": "This operation will stop backups for backup instance", + "operationId": "BackupInstances_SuspendBackups", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "backupInstanceName", + "in": "path", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "The operation will be completed asynchronously.", + "headers": { + "Location": { + "description": "The URL of the resource used to check the status of the asynchronous operation.", + "type": "string" + }, + "Azure-AsyncOperation": { + "description": "The URL of the resource used to check the status of the asynchronous operation.", + "type": "string" + }, + "Retry-After": { + "description": "Suggested delay to check the status of the asynchronous operation. The value is an integer that represents the seconds.", + "type": "integer", + "format": "int32" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "SuspendBackups": { + "$ref": "./examples/BackupInstanceOperations/SuspendBackups.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataProtection/backupVaults/{vaultName}/backupInstances/{backupInstanceName}/sync": { + "post": { + "tags": [ + "BackupInstances" + ], + "description": "Sync backup instance again in case of failure\r\nThis action will retry last failed operation and will bring backup instance to valid state", + "operationId": "BackupInstances_SyncBackupInstance", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "backupInstanceName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "Request body for operation", + "required": true, + "schema": { + "$ref": "#/definitions/SyncBackupInstanceRequest" + } + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "The operation will be completed asynchronously.", + "headers": { + "Location": { + "description": "The URL of the resource used to check the status of the asynchronous operation.", + "type": "string" + }, + "Azure-AsyncOperation": { + "description": "The URL of the resource used to check the status of the asynchronous operation.", + "type": "string" + }, + "Retry-After": { + "description": "Suggested delay to check the status of the asynchronous operation. The value is an integer that represents the seconds.", + "type": "integer", + "format": "int32" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Sync BackupInstance": { + "$ref": "./examples/BackupInstanceOperations/SyncBackupInstance.json" + } + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataProtection/backupVaults/{vaultName}/backupInstances/{backupInstanceName}/validateRestore": { "post": { "tags": [ @@ -2353,8 +2697,7 @@ "properties": { "properties": { "$ref": "#/definitions/AzureBackupRecoveryPoint", - "description": "AzureBackupRecoveryPointResource properties", - "x-ms-client-flatten": true + "description": "AzureBackupRecoveryPointResource properties" } }, "title": "AzureBackupRecoveryPointResource" @@ -2572,7 +2915,6 @@ "BackupInstance": { "description": "Backup Instance", "required": [ - "friendlyName", "dataSourceInfo", "policyInfo", "objectType" @@ -2648,8 +2990,7 @@ "properties": { "properties": { "$ref": "#/definitions/BackupInstance", - "description": "BackupInstanceResource properties", - "x-ms-client-flatten": true + "description": "BackupInstanceResource properties" } }, "title": "BackupInstanceResource" @@ -2772,8 +3113,7 @@ "properties": { "properties": { "$ref": "#/definitions/BackupVault", - "description": "BackupVaultResource properties", - "x-ms-client-flatten": true + "description": "BackupVaultResource properties" } }, "required": [ @@ -2833,8 +3173,7 @@ "properties": { "properties": { "$ref": "#/definitions/BaseBackupPolicy", - "description": "BaseBackupPolicyResource properties", - "x-ms-client-flatten": true + "description": "BaseBackupPolicyResource properties" } }, "title": "BaseBackupPolicyResource" @@ -3016,8 +3355,7 @@ }, "properties": { "$ref": "#/definitions/ClientDiscoveryForProperties", - "description": "Properties for the given operation.", - "x-ms-client-flatten": true + "description": "Properties for the given operation." } }, "title": "ClientDiscoveryValueForSingleApi", @@ -3835,8 +4173,7 @@ }, "properties": { "$ref": "#/definitions/OperationExtendedInfo", - "description": "End time of the operation", - "x-ms-client-flatten": true + "description": "End time of the operation" }, "startTime": { "description": "Start time of the operation", @@ -4371,6 +4708,24 @@ } } }, + "SyncBackupInstanceRequest": { + "description": "Sync BackupInstance Request", + "type": "object", + "properties": { + "syncType": { + "description": "Field indicating sync type e.g. to sync only in case of failure or in all cases", + "enum": [ + "Default", + "ForceResync" + ], + "type": "string", + "x-ms-enum": { + "name": "SyncType", + "modelAsString": true + } + } + } + }, "TaggingCriteria": { "description": "Tagging criteria", "properties": { diff --git a/specification/dataprotection/resource-manager/Microsoft.DataProtection/preview/2021-02-01-preview/examples/BackupInstanceOperations/ResumeBackups.json b/specification/dataprotection/resource-manager/Microsoft.DataProtection/preview/2021-02-01-preview/examples/BackupInstanceOperations/ResumeBackups.json new file mode 100644 index 000000000000..fcec21791984 --- /dev/null +++ b/specification/dataprotection/resource-manager/Microsoft.DataProtection/preview/2021-02-01-preview/examples/BackupInstanceOperations/ResumeBackups.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "04cf684a-d41f-4550-9f70-7708a3a2283b", + "resourceGroupName": "testrg", + "vaultName": "testvault", + "backupInstanceName": "testbi", + "api-version": "2021-02-01-preview" + }, + "responses": { + "202": { + "headers": { + "Location": "https://api-dogfood.resources.windows-int.net/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/testrg/providers/Microsoft.DataProtection/backupInstances/testbi/operationResults/ZTA4YjQ0ZGYtYmNkNS00YTk1LWFjZTMtOTc1MjNmZWIxYWZlO2Y1ODg1MzA3LWJkNjItNDQ2OC05ZjZlLTJkMGM2NjNiNmJmNg==?api-version=2021-02-01-preview", + "Azure-AsyncOperation": "https://api-dogfood.resources.windows-int.net/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/providers/Microsoft.DataProtection/locations/westus/operationStatus/ZTA4YjQ0ZGYtYmNkNS00YTk1LWFjZTMtOTc1MjNmZWIxYWZlO2Y1ODg1MzA3LWJkNjItNDQ2OC05ZjZlLTJkMGM2NjNiNmJmNg==?api-version=2021-02-01-preview", + "Retry-After": "60" + } + }, + "200": {} + } +} diff --git a/specification/dataprotection/resource-manager/Microsoft.DataProtection/preview/2021-02-01-preview/examples/BackupInstanceOperations/ResumeProtection.json b/specification/dataprotection/resource-manager/Microsoft.DataProtection/preview/2021-02-01-preview/examples/BackupInstanceOperations/ResumeProtection.json new file mode 100644 index 000000000000..fcec21791984 --- /dev/null +++ b/specification/dataprotection/resource-manager/Microsoft.DataProtection/preview/2021-02-01-preview/examples/BackupInstanceOperations/ResumeProtection.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "04cf684a-d41f-4550-9f70-7708a3a2283b", + "resourceGroupName": "testrg", + "vaultName": "testvault", + "backupInstanceName": "testbi", + "api-version": "2021-02-01-preview" + }, + "responses": { + "202": { + "headers": { + "Location": "https://api-dogfood.resources.windows-int.net/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/testrg/providers/Microsoft.DataProtection/backupInstances/testbi/operationResults/ZTA4YjQ0ZGYtYmNkNS00YTk1LWFjZTMtOTc1MjNmZWIxYWZlO2Y1ODg1MzA3LWJkNjItNDQ2OC05ZjZlLTJkMGM2NjNiNmJmNg==?api-version=2021-02-01-preview", + "Azure-AsyncOperation": "https://api-dogfood.resources.windows-int.net/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/providers/Microsoft.DataProtection/locations/westus/operationStatus/ZTA4YjQ0ZGYtYmNkNS00YTk1LWFjZTMtOTc1MjNmZWIxYWZlO2Y1ODg1MzA3LWJkNjItNDQ2OC05ZjZlLTJkMGM2NjNiNmJmNg==?api-version=2021-02-01-preview", + "Retry-After": "60" + } + }, + "200": {} + } +} diff --git a/specification/dataprotection/resource-manager/Microsoft.DataProtection/preview/2021-02-01-preview/examples/BackupInstanceOperations/StopProtection.json b/specification/dataprotection/resource-manager/Microsoft.DataProtection/preview/2021-02-01-preview/examples/BackupInstanceOperations/StopProtection.json new file mode 100644 index 000000000000..fcec21791984 --- /dev/null +++ b/specification/dataprotection/resource-manager/Microsoft.DataProtection/preview/2021-02-01-preview/examples/BackupInstanceOperations/StopProtection.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "04cf684a-d41f-4550-9f70-7708a3a2283b", + "resourceGroupName": "testrg", + "vaultName": "testvault", + "backupInstanceName": "testbi", + "api-version": "2021-02-01-preview" + }, + "responses": { + "202": { + "headers": { + "Location": "https://api-dogfood.resources.windows-int.net/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/testrg/providers/Microsoft.DataProtection/backupInstances/testbi/operationResults/ZTA4YjQ0ZGYtYmNkNS00YTk1LWFjZTMtOTc1MjNmZWIxYWZlO2Y1ODg1MzA3LWJkNjItNDQ2OC05ZjZlLTJkMGM2NjNiNmJmNg==?api-version=2021-02-01-preview", + "Azure-AsyncOperation": "https://api-dogfood.resources.windows-int.net/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/providers/Microsoft.DataProtection/locations/westus/operationStatus/ZTA4YjQ0ZGYtYmNkNS00YTk1LWFjZTMtOTc1MjNmZWIxYWZlO2Y1ODg1MzA3LWJkNjItNDQ2OC05ZjZlLTJkMGM2NjNiNmJmNg==?api-version=2021-02-01-preview", + "Retry-After": "60" + } + }, + "200": {} + } +} diff --git a/specification/dataprotection/resource-manager/Microsoft.DataProtection/preview/2021-02-01-preview/examples/BackupInstanceOperations/SuspendBackups.json b/specification/dataprotection/resource-manager/Microsoft.DataProtection/preview/2021-02-01-preview/examples/BackupInstanceOperations/SuspendBackups.json new file mode 100644 index 000000000000..fcec21791984 --- /dev/null +++ b/specification/dataprotection/resource-manager/Microsoft.DataProtection/preview/2021-02-01-preview/examples/BackupInstanceOperations/SuspendBackups.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "04cf684a-d41f-4550-9f70-7708a3a2283b", + "resourceGroupName": "testrg", + "vaultName": "testvault", + "backupInstanceName": "testbi", + "api-version": "2021-02-01-preview" + }, + "responses": { + "202": { + "headers": { + "Location": "https://api-dogfood.resources.windows-int.net/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/testrg/providers/Microsoft.DataProtection/backupInstances/testbi/operationResults/ZTA4YjQ0ZGYtYmNkNS00YTk1LWFjZTMtOTc1MjNmZWIxYWZlO2Y1ODg1MzA3LWJkNjItNDQ2OC05ZjZlLTJkMGM2NjNiNmJmNg==?api-version=2021-02-01-preview", + "Azure-AsyncOperation": "https://api-dogfood.resources.windows-int.net/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/providers/Microsoft.DataProtection/locations/westus/operationStatus/ZTA4YjQ0ZGYtYmNkNS00YTk1LWFjZTMtOTc1MjNmZWIxYWZlO2Y1ODg1MzA3LWJkNjItNDQ2OC05ZjZlLTJkMGM2NjNiNmJmNg==?api-version=2021-02-01-preview", + "Retry-After": "60" + } + }, + "200": {} + } +} diff --git a/specification/dataprotection/resource-manager/Microsoft.DataProtection/preview/2021-02-01-preview/examples/BackupInstanceOperations/SyncBackupInstance.json b/specification/dataprotection/resource-manager/Microsoft.DataProtection/preview/2021-02-01-preview/examples/BackupInstanceOperations/SyncBackupInstance.json new file mode 100644 index 000000000000..5b3b57ffaab2 --- /dev/null +++ b/specification/dataprotection/resource-manager/Microsoft.DataProtection/preview/2021-02-01-preview/examples/BackupInstanceOperations/SyncBackupInstance.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "04cf684a-d41f-4550-9f70-7708a3a2283b", + "resourceGroupName": "testrg", + "vaultName": "testvault", + "backupInstanceName": "testbi", + "api-version": "2021-02-01-preview", + "parameters": { + "syncType": "Default" + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://api-dogfood.resources.windows-int.net/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/testrg/providers/Microsoft.DataProtection/backupInstances/testbi/operationResults/ZTA4YjQ0ZGYtYmNkNS00YTk1LWFjZTMtOTc1MjNmZWIxYWZlO2Y1ODg1MzA3LWJkNjItNDQ2OC05ZjZlLTJkMGM2NjNiNmJmNg==?api-version=2021-02-01-preview", + "Azure-AsyncOperation": "https://api-dogfood.resources.windows-int.net/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/providers/Microsoft.DataProtection/locations/westus/operationStatus/ZTA4YjQ0ZGYtYmNkNS00YTk1LWFjZTMtOTc1MjNmZWIxYWZlO2Y1ODg1MzA3LWJkNjItNDQ2OC05ZjZlLTJkMGM2NjNiNmJmNg==?api-version=2021-02-01-preview", + "Retry-After": "60" + } + }, + "200": {} + } +} diff --git a/specification/dataprotection/resource-manager/Microsoft.DataProtection/stable/2021-01-01/dataprotection.json b/specification/dataprotection/resource-manager/Microsoft.DataProtection/stable/2021-01-01/dataprotection.json index 50c5e95af7ec..b07d7b3bc7e2 100644 --- a/specification/dataprotection/resource-manager/Microsoft.DataProtection/stable/2021-01-01/dataprotection.json +++ b/specification/dataprotection/resource-manager/Microsoft.DataProtection/stable/2021-01-01/dataprotection.json @@ -2353,8 +2353,7 @@ "properties": { "properties": { "$ref": "#/definitions/AzureBackupRecoveryPoint", - "description": "AzureBackupRecoveryPointResource properties", - "x-ms-client-flatten": true + "description": "AzureBackupRecoveryPointResource properties" } }, "title": "AzureBackupRecoveryPointResource" @@ -2572,7 +2571,6 @@ "BackupInstance": { "description": "Backup Instance", "required": [ - "friendlyName", "dataSourceInfo", "policyInfo", "objectType" @@ -2648,8 +2646,7 @@ "properties": { "properties": { "$ref": "#/definitions/BackupInstance", - "description": "BackupInstanceResource properties", - "x-ms-client-flatten": true + "description": "BackupInstanceResource properties" } }, "title": "BackupInstanceResource" @@ -2772,8 +2769,7 @@ "properties": { "properties": { "$ref": "#/definitions/BackupVault", - "description": "BackupVaultResource properties", - "x-ms-client-flatten": true + "description": "BackupVaultResource properties" } }, "required": [ @@ -2833,8 +2829,7 @@ "properties": { "properties": { "$ref": "#/definitions/BaseBackupPolicy", - "description": "BaseBackupPolicyResource properties", - "x-ms-client-flatten": true + "description": "BaseBackupPolicyResource properties" } }, "title": "BaseBackupPolicyResource" @@ -3016,8 +3011,7 @@ }, "properties": { "$ref": "#/definitions/ClientDiscoveryForProperties", - "description": "Properties for the given operation.", - "x-ms-client-flatten": true + "description": "Properties for the given operation." } }, "title": "ClientDiscoveryValueForSingleApi", @@ -3835,8 +3829,7 @@ }, "properties": { "$ref": "#/definitions/OperationExtendedInfo", - "description": "End time of the operation", - "x-ms-client-flatten": true + "description": "End time of the operation" }, "startTime": { "description": "Start time of the operation", diff --git a/specification/dataprotection/resource-manager/readme.go.md b/specification/dataprotection/resource-manager/readme.go.md index febd976a7d9e..d5a424541c96 100644 --- a/specification/dataprotection/resource-manager/readme.go.md +++ b/specification/dataprotection/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION clear-output-folder: true namespace: dataprotection ``` diff --git a/specification/datashare/resource-manager/Microsoft.DataShare/preview/2020-10-01-preview/DataShare.json b/specification/datashare/resource-manager/Microsoft.DataShare/preview/2020-10-01-preview/DataShare.json index 51794992a778..9cf0ba03e641 100644 --- a/specification/datashare/resource-manager/Microsoft.DataShare/preview/2020-10-01-preview/DataShare.json +++ b/specification/datashare/resource-manager/Microsoft.DataShare/preview/2020-10-01-preview/DataShare.json @@ -589,8 +589,11 @@ "DataSets_SqlDBTable_Create": { "$ref": "./examples/DataSets_SqlDBTable_Create.json" }, - "DataSets_StorageAccount_Create": { - "$ref": "./examples/DataSets_StorageAccount_Create.json" + "DataSets_ADLSGen2StorageAccount_Create": { + "$ref": "./examples/DataSets_ADLSGen2StorageAccount_Create.json" + }, + "DataSets_BlobStorageAccount_Create": { + "$ref": "./examples/DataSets_BlobStorageAccount_Create.json" }, "DataSets_SynapseWorkspaceSqlPoolTable_Create": { "$ref": "./examples/DataSets_SynapseWorkspaceSqlPoolTable_Create.json" @@ -864,8 +867,11 @@ "DataSetMappings_SqlDWDataSetToAdlsGen2File_Create": { "$ref": "./examples/DataSetMappings_SqlDWDataSetToAdlsGen2File_Create.json" }, - "DataSetMappings_StorageAccount_Create": { - "$ref": "./examples/DataSetMappings_StorageAccount_Create.json" + "DataSetMappings_ADLSGen2StorageAccount_Create": { + "$ref": "./examples/DataSetMappings_ADLSGen2StorageAccount_Create.json" + }, + "DataSetMappings_BlobStorageAccount_Create": { + "$ref": "./examples/DataSetMappings_BlobStorageAccount_Create.json" }, "DataSetMappings_SynapseWorkspaceSqlPoolTable_Create": { "$ref": "./examples/DataSetMappings_SynapseWorkspaceSqlPoolTable_Create.json" @@ -3805,6 +3811,167 @@ } } }, + "ADLSGen2StorageAccountDataSet": { + "description": "An ADLSGen2 storage account data set.", + "required": [ + "properties", + "kind" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSet" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ADLSGen2StorageAccountDataSetProperties", + "description": "ADLSGen2 storage account data set properties.", + "x-ms-client-flatten": true + } + }, + "x-ms-discriminator-value": "AdlsGen2StorageAccount" + }, + "ADLSGen2StorageAccountDataSetMapping": { + "description": "ADLSGen2 storage account data set mapping.", + "required": [ + "properties", + "kind" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSetMapping" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ADLSGen2StorageAccountDataSetMappingProperties", + "description": "ADLSGen2 Storage account data set mapping properties.", + "x-ms-client-flatten": true + } + }, + "x-ms-discriminator-value": "AdlsGen2StorageAccount" + }, + "ADLSGen2StorageAccountDataSetMappingProperties": { + "description": "Properties of the ADLSGen2 storage account data set.", + "required": [ + "storageAccountResourceId", + "containerName", + "folder", + "dataSetId" + ], + "type": "object", + "properties": { + "containerName": { + "description": "Gets or sets the container name.", + "type": "string" + }, + "dataSetId": { + "description": "The id of the source data set.", + "type": "string" + }, + "dataSetMappingStatus": { + "description": "Gets the status of the data set mapping.", + "enum": [ + "Ok", + "Broken" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "dataSetMappingStatus", + "modelAsString": true + } + }, + "folder": { + "description": "Gets or sets the path to folder within the container.", + "type": "string" + }, + "location": { + "description": "Location of the sink storage account.", + "type": "string", + "readOnly": true + }, + "mountPath": { + "description": "Gets or sets the mount path", + "type": "string" + }, + "provisioningState": { + "description": "Provisioning state of the data set mapping.", + "enum": [ + "Succeeded", + "Creating", + "Deleting", + "Moving", + "Failed" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "provisioningState", + "modelAsString": true + } + }, + "storageAccountResourceId": { + "description": "Resource id of the sink storage account", + "type": "string" + } + } + }, + "ADLSGen2StorageAccountDataSetProperties": { + "description": "Properties of the ADLSGen2 storage account data set.", + "required": [ + "storageAccountResourceId", + "paths" + ], + "type": "object", + "properties": { + "dataSetId": { + "description": "Unique id for identifying a data set resource", + "type": "string", + "readOnly": true + }, + "location": { + "description": "Location of the ADLSGen2 storage account.", + "type": "string", + "readOnly": true + }, + "paths": { + "description": "A list of ADLSGen2 storage account paths.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/ADLSGen2StorageAccountPath" + } + }, + "storageAccountResourceId": { + "description": "Resource id of the ADLSGen2 storage account.", + "type": "string" + } + } + }, + "ADLSGen2StorageAccountPath": { + "description": "Defines a single ADLS Gen2 storage account path.", + "required": [ + "containerName" + ], + "type": "object", + "properties": { + "consumerPath": { + "description": "Gets or sets the path on the consumer side where the dataset is to be mapped.", + "type": "string" + }, + "containerName": { + "description": "Gets or sets the container name to share.", + "type": "string" + }, + "providerPath": { + "description": "Gets or sets the path to file/folder within the container.", + "type": "string" + } + } + }, "BlobContainerDataSet": { "description": "An Azure storage blob container data set.", "required": [ @@ -4248,6 +4415,167 @@ } } }, + "BlobStorageAccountDataSet": { + "description": "An Azure blob storage account data set.", + "required": [ + "properties", + "kind" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSet" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/BlobStorageAccountDataSetProperties", + "description": "Storage account data set properties.", + "x-ms-client-flatten": true + } + }, + "x-ms-discriminator-value": "BlobStorageAccount" + }, + "BlobStorageAccountDataSetMapping": { + "description": "A blob storage account data set mapping.", + "required": [ + "properties", + "kind" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSetMapping" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/BlobStorageAccountDataSetMappingProperties", + "description": "Blob Storage account data set mapping properties.", + "x-ms-client-flatten": true + } + }, + "x-ms-discriminator-value": "BlobStorageAccount" + }, + "BlobStorageAccountDataSetMappingProperties": { + "description": "Properties of the blob storage account data set.", + "required": [ + "storageAccountResourceId", + "containerName", + "folder", + "dataSetId" + ], + "type": "object", + "properties": { + "containerName": { + "description": "Gets or sets the container name.", + "type": "string" + }, + "dataSetId": { + "description": "The id of the source data set.", + "type": "string" + }, + "dataSetMappingStatus": { + "description": "Gets the status of the data set mapping.", + "enum": [ + "Ok", + "Broken" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "dataSetMappingStatus", + "modelAsString": true + } + }, + "folder": { + "description": "Gets or sets the path to folder within the container.", + "type": "string" + }, + "location": { + "description": "Location of the sink storage account.", + "type": "string", + "readOnly": true + }, + "mountPath": { + "description": "Gets or sets the mount path on the consumer side where the dataset is to be mapped.", + "type": "string" + }, + "provisioningState": { + "description": "Provisioning state of the data set mapping.", + "enum": [ + "Succeeded", + "Creating", + "Deleting", + "Moving", + "Failed" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "provisioningState", + "modelAsString": true + } + }, + "storageAccountResourceId": { + "description": "Resource id of the sink storage account", + "type": "string" + } + } + }, + "BlobStorageAccountDataSetProperties": { + "description": "Properties of the blob storage account data set.", + "required": [ + "storageAccountResourceId", + "paths" + ], + "type": "object", + "properties": { + "dataSetId": { + "description": "Unique id for identifying a data set resource", + "type": "string", + "readOnly": true + }, + "location": { + "description": "Location of the storage account.", + "type": "string", + "readOnly": true + }, + "paths": { + "description": "A list of storage account paths.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/BlobStorageAccountPath" + } + }, + "storageAccountResourceId": { + "description": "Resource id of the storage account.", + "type": "string" + } + } + }, + "BlobStorageAccountPath": { + "description": "Defines a single blob storage account path.", + "required": [ + "containerName" + ], + "type": "object", + "properties": { + "consumerPath": { + "description": "Gets or sets the path on the consumer side where the dataset is to be mapped.", + "type": "string" + }, + "containerName": { + "description": "Gets or sets the container name to share.", + "type": "string" + }, + "providerPath": { + "description": "Gets or sets the path to file/folder within the container.", + "type": "string" + } + } + }, "ConsumerInvitation": { "description": "A consumer Invitation data transfer object.", "required": [ @@ -4457,12 +4785,13 @@ "AdlsGen2File", "AdlsGen1Folder", "AdlsGen1File", - "StorageAccount", + "AdlsGen2StorageAccount", "KustoCluster", "KustoDatabase", "SqlDBTable", "SqlDWTable", - "SynapseWorkspaceSqlPoolTable" + "SynapseWorkspaceSqlPoolTable", + "BlobStorageAccount" ], "type": "string", "readOnly": true, @@ -4496,12 +4825,13 @@ "AdlsGen2File", "AdlsGen1Folder", "AdlsGen1File", - "StorageAccount", + "AdlsGen2StorageAccount", "KustoCluster", "KustoDatabase", "SqlDBTable", "SqlDWTable", - "SynapseWorkspaceSqlPoolTable" + "SynapseWorkspaceSqlPoolTable", + "BlobStorageAccount" ], "type": "string", "x-ms-enum": { @@ -4554,12 +4884,13 @@ "AdlsGen2FileSystem", "AdlsGen2Folder", "AdlsGen2File", - "StorageAccount", + "AdlsGen2StorageAccount", "KustoCluster", "KustoDatabase", "SqlDBTable", "SqlDWTable", - "SynapseWorkspaceSqlPoolTable" + "SynapseWorkspaceSqlPoolTable", + "BlobStorageAccount" ], "type": "string", "x-ms-enum": { @@ -6353,158 +6684,6 @@ } } }, - "StorageAccountDataSet": { - "description": "An Azure storage account data set.", - "required": [ - "properties", - "kind" - ], - "type": "object", - "allOf": [ - { - "$ref": "#/definitions/DataSet" - } - ], - "properties": { - "properties": { - "$ref": "#/definitions/StorageAccountDataSetProperties", - "description": "Storage account data set properties.", - "x-ms-client-flatten": true - } - }, - "x-ms-discriminator-value": "StorageAccount" - }, - "StorageAccountDataSetMapping": { - "description": "A storage account data set mapping.", - "required": [ - "properties", - "kind" - ], - "type": "object", - "allOf": [ - { - "$ref": "#/definitions/DataSetMapping" - } - ], - "properties": { - "properties": { - "$ref": "#/definitions/StorageAccountDataSetMappingProperties", - "description": "Storage account data set mapping properties.", - "x-ms-client-flatten": true - } - }, - "x-ms-discriminator-value": "StorageAccount" - }, - "StorageAccountDataSetMappingProperties": { - "description": "Properties of the storage account data set.", - "required": [ - "storageAccountResourceId", - "containerName", - "dataSetId" - ], - "type": "object", - "properties": { - "containerName": { - "description": "Container that has the file path.", - "type": "string" - }, - "dataSetId": { - "description": "The id of the source data set.", - "type": "string" - }, - "dataSetMappingStatus": { - "description": "Gets the status of the data set mapping.", - "enum": [ - "Ok", - "Broken" - ], - "type": "string", - "readOnly": true, - "x-ms-enum": { - "name": "dataSetMappingStatus", - "modelAsString": true - } - }, - "location": { - "description": "Location of the sink storage account.", - "type": "string", - "readOnly": true - }, - "provisioningState": { - "description": "Provisioning state of the data set mapping.", - "enum": [ - "Succeeded", - "Creating", - "Deleting", - "Moving", - "Failed" - ], - "type": "string", - "readOnly": true, - "x-ms-enum": { - "name": "provisioningState", - "modelAsString": true - } - }, - "storageAccountResourceId": { - "description": "Resource id of the sink storage account", - "type": "string" - } - } - }, - "StorageAccountDataSetProperties": { - "description": "Properties of the storage account data set.", - "required": [ - "storageAccountResourceId", - "paths" - ], - "type": "object", - "properties": { - "dataSetId": { - "description": "Unique id for identifying a data set resource", - "type": "string", - "readOnly": true - }, - "location": { - "description": "Location of the storage account.", - "type": "string", - "readOnly": true - }, - "paths": { - "description": "A list of storage account paths.", - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/definitions/StorageAccountPath" - } - }, - "storageAccountResourceId": { - "description": "Resource id of the storage account.", - "type": "string" - } - } - }, - "StorageAccountPath": { - "description": "Defines a single storage account path.", - "required": [ - "containerName" - ], - "type": "object", - "properties": { - "consumerPath": { - "description": "Gets or sets the path on the consumer side where the dataset is to be mapped.", - "type": "string" - }, - "containerName": { - "description": "Gets or sets the container name to share.", - "type": "string" - }, - "providerPath": { - "description": "Gets or sets the path to file/folder within the container.", - "type": "string" - } - } - }, "SynapseWorkspaceSqlPoolTableDataSet": { "description": "A Synapse Workspace Sql Pool Table data set.", "required": [ @@ -6632,12 +6811,13 @@ "AdlsGen2File", "AdlsGen1Folder", "AdlsGen1File", - "StorageAccount", + "AdlsGen2StorageAccount", "KustoCluster", "KustoDatabase", "SqlDBTable", "SqlDWTable", - "SynapseWorkspaceSqlPoolTable" + "SynapseWorkspaceSqlPoolTable", + "BlobStorageAccount" ], "type": "string", "readOnly": true, diff --git a/specification/datashare/resource-manager/Microsoft.DataShare/preview/2020-10-01-preview/examples/DataSetMappings_ADLSGen2StorageAccount_Create.json b/specification/datashare/resource-manager/Microsoft.DataShare/preview/2020-10-01-preview/examples/DataSetMappings_ADLSGen2StorageAccount_Create.json new file mode 100644 index 000000000000..c6f1b67492e3 --- /dev/null +++ b/specification/datashare/resource-manager/Microsoft.DataShare/preview/2020-10-01-preview/examples/DataSetMappings_ADLSGen2StorageAccount_Create.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "subscriptionId": "433a8dfd-e5d5-4e77-ad86-90acdc75eb1a", + "resourceGroupName": "SampleResourceGroup", + "accountName": "Account1", + "shareSubscriptionName": "ShareSubscription1", + "dataSetMappingName": "DatasetMapping1", + "api-version": "2020-10-01-preview", + "dataSetMapping": { + "kind": "AdlsGen2StorageAccount", + "properties": { + "dataSetId": "a08f184b-0567-4b11-ba22-a1199336d226", + "storageAccountResourceId": "/subscriptions/433a8dfd-e5d5-4e77-ad86-90acdc75eb1a/resourceGroups/SampleResourceGroup/providers/Microsoft.Storage/storageaccounts/storageaccount1", + "containerName": "Container1", + "mountPath": "foldera/folderd1", + "folder": "destinationFolder" + } + } + }, + "responses": { + "200": { + "headers": { + "Date": "Wed, 28 Oct 2020 18:04:32 GMT", + "x-ms-request-id": "d5496da4-9c52-402f-b067-83cc9ddea888", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-tenant-reads": "14999", + "x-ms-correlation-request-id": "25c78f97-0b0a-4fe9-ad39-883a482265cd" + }, + "body": { + "kind": "AdlsGen2StorageAccount", + "properties": { + "dataSetId": "a08f184b-0567-4b11-ba22-a1199336d226", + "storageAccountResourceId": "/subscriptions/433a8dfd-e5d5-4e77-ad86-90acdc75eb1a/resourceGroups/SampleResourceGroup/providers/Microsoft.Storage/storageaccounts/storageaccount1", + "containerName": "Container1", + "mountPath": "foldera/folderd1", + "folder": "destinationFolder", + "location": "centraluseuap", + "dataSetMappingStatus": "Ok", + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/433a8dfd-e5d5-4e77-ad86-90acdc75eb1a/resourceGroups/SampleResourceGroup/providers/Microsoft.DataShare/accounts/Account1/shareSubscriptions/ShareSubscription1/dataSetMappings/DatasetMapping1", + "name": "DatasetMapping1", + "type": "Microsoft.DataShare/accounts/shareSubscriptions/dataSetMappings" + } + }, + "201": { + "headers": { + "Date": "Wed, 28 Oct 2020 18:04:32 GMT", + "x-ms-request-id": "d5496da4-9c52-402f-b067-83cc9ddea888", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-tenant-reads": "14999", + "x-ms-correlation-request-id": "25c78f97-0b0a-4fe9-ad39-883a482265cd" + }, + "body": { + "kind": "AdlsGen2StorageAccount", + "properties": { + "dataSetId": "a08f184b-0567-4b11-ba22-a1199336d226", + "storageAccountResourceId": "/subscriptions/433a8dfd-e5d5-4e77-ad86-90acdc75eb1a/resourceGroups/SampleResourceGroup/providers/Microsoft.Storage/storageaccounts/storageaccount1", + "containerName": "Container1", + "mountPath": "foldera/folderd1", + "folder": "destinationFolder", + "location": "centraluseuap", + "dataSetMappingStatus": "Ok", + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/433a8dfd-e5d5-4e77-ad86-90acdc75eb1a/resourceGroups/SampleResourceGroup/providers/Microsoft.DataShare/accounts/Account1/shareSubscriptions/ShareSubscription1/dataSetMappings/DatasetMapping1", + "name": "DatasetMapping1", + "type": "Microsoft.DataShare/accounts/shareSubscriptions/dataSetMappings" + } + } + } +} diff --git a/specification/datashare/resource-manager/Microsoft.DataShare/preview/2020-10-01-preview/examples/DataSetMappings_BlobStorageAccount_Create.json b/specification/datashare/resource-manager/Microsoft.DataShare/preview/2020-10-01-preview/examples/DataSetMappings_BlobStorageAccount_Create.json new file mode 100644 index 000000000000..4c2fef478418 --- /dev/null +++ b/specification/datashare/resource-manager/Microsoft.DataShare/preview/2020-10-01-preview/examples/DataSetMappings_BlobStorageAccount_Create.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "subscriptionId": "433a8dfd-e5d5-4e77-ad86-90acdc75eb1a", + "resourceGroupName": "SampleResourceGroup", + "accountName": "Account1", + "shareSubscriptionName": "ShareSubscription1", + "dataSetMappingName": "DatasetMapping1", + "api-version": "2020-10-01-preview", + "dataSetMapping": { + "kind": "BlobStorageAccount", + "properties": { + "dataSetId": "a08f184b-0567-4b11-ba22-a1199336d226", + "storageAccountResourceId": "/subscriptions/433a8dfd-e5d5-4e77-ad86-90acdc75eb1a/resourceGroups/SampleResourceGroup/providers/Microsoft.Storage/storageaccounts/storageaccount1", + "containerName": "Container1", + "mountPath": "foldera/folderd1", + "folder": "destinationFolder" + } + } + }, + "responses": { + "200": { + "headers": { + "Date": "Wed, 28 Oct 2020 18:04:32 GMT", + "x-ms-request-id": "d5496da4-9c52-402f-b067-83cc9ddea888", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-tenant-reads": "14999", + "x-ms-correlation-request-id": "25c78f97-0b0a-4fe9-ad39-883a482265cd" + }, + "body": { + "kind": "BlobStorageAccount", + "properties": { + "dataSetId": "a08f184b-0567-4b11-ba22-a1199336d226", + "storageAccountResourceId": "/subscriptions/433a8dfd-e5d5-4e77-ad86-90acdc75eb1a/resourceGroups/SampleResourceGroup/providers/Microsoft.Storage/storageaccounts/storageaccount1", + "containerName": "Container1", + "mountPath": "foldera/folderd1", + "folder": "destinationFolder", + "location": "centraluseuap", + "dataSetMappingStatus": "Ok", + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/433a8dfd-e5d5-4e77-ad86-90acdc75eb1a/resourceGroups/SampleResourceGroup/providers/Microsoft.DataShare/accounts/Account1/shareSubscriptions/ShareSubscription1/dataSetMappings/DatasetMapping1", + "name": "DatasetMapping1", + "type": "Microsoft.DataShare/accounts/shareSubscriptions/dataSetMappings" + } + }, + "201": { + "headers": { + "Date": "Wed, 28 Oct 2020 18:04:32 GMT", + "x-ms-request-id": "d5496da4-9c52-402f-b067-83cc9ddea888", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-tenant-reads": "14999", + "x-ms-correlation-request-id": "25c78f97-0b0a-4fe9-ad39-883a482265cd" + }, + "body": { + "kind": "BlobStorageAccount", + "properties": { + "dataSetId": "a08f184b-0567-4b11-ba22-a1199336d226", + "storageAccountResourceId": "/subscriptions/433a8dfd-e5d5-4e77-ad86-90acdc75eb1a/resourceGroups/SampleResourceGroup/providers/Microsoft.Storage/storageaccounts/storageaccount1", + "containerName": "Container1", + "mountPath": "foldera/folderd1", + "folder": "destinationFolder", + "location": "centraluseuap", + "dataSetMappingStatus": "Ok", + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/433a8dfd-e5d5-4e77-ad86-90acdc75eb1a/resourceGroups/SampleResourceGroup/providers/Microsoft.DataShare/accounts/Account1/shareSubscriptions/ShareSubscription1/dataSetMappings/DatasetMapping1", + "name": "DatasetMapping1", + "type": "Microsoft.DataShare/accounts/shareSubscriptions/dataSetMappings" + } + } + } +} diff --git a/specification/datashare/resource-manager/Microsoft.DataShare/preview/2020-10-01-preview/examples/DataSetMappings_StorageAccount_Create.json b/specification/datashare/resource-manager/Microsoft.DataShare/preview/2020-10-01-preview/examples/DataSetMappings_StorageAccount_Create.json deleted file mode 100644 index d92a1aced2fa..000000000000 --- a/specification/datashare/resource-manager/Microsoft.DataShare/preview/2020-10-01-preview/examples/DataSetMappings_StorageAccount_Create.json +++ /dev/null @@ -1,66 +0,0 @@ -{ - "parameters": { - "subscriptionId": "433a8dfd-e5d5-4e77-ad86-90acdc75eb1a", - "resourceGroupName": "SampleResourceGroup", - "accountName": "Account1", - "shareSubscriptionName": "ShareSubscription1", - "dataSetMappingName": "DatasetMapping1", - "api-version": "2020-10-01-preview", - "dataSetMapping": { - "kind": "StorageAccount", - "properties": { - "dataSetId": "a08f184b-0567-4b11-ba22-a1199336d226", - "storageAccountResourceId": "/subscriptions/433a8dfd-e5d5-4e77-ad86-90acdc75eb1a/resourceGroups/SampleResourceGroup/providers/Microsoft.Storage/storageaccounts/storageaccount1", - "containerName": "Container1" - } - } - }, - "responses": { - "200": { - "headers": { - "Date": "Wed, 28 Oct 2020 18:04:32 GMT", - "x-ms-request-id": "d5496da4-9c52-402f-b067-83cc9ddea888", - "X-Content-Type-Options": "nosniff", - "x-ms-ratelimit-remaining-tenant-reads": "14999", - "x-ms-correlation-request-id": "25c78f97-0b0a-4fe9-ad39-883a482265cd" - }, - "body": { - "kind": "StorageAccount", - "properties": { - "dataSetId": "a08f184b-0567-4b11-ba22-a1199336d226", - "storageAccountResourceId": "/subscriptions/433a8dfd-e5d5-4e77-ad86-90acdc75eb1a/resourceGroups/SampleResourceGroup/providers/Microsoft.Storage/storageaccounts/storageaccount1", - "containerName": "Container1", - "location": "centraluseuap", - "dataSetMappingStatus": "Ok", - "provisioningState": "Succeeded" - }, - "id": "/subscriptions/433a8dfd-e5d5-4e77-ad86-90acdc75eb1a/resourceGroups/SampleResourceGroup/providers/Microsoft.DataShare/accounts/Account1/shareSubscriptions/ShareSubscription1/dataSetMappings/DatasetMapping1", - "name": "DatasetMapping1", - "type": "Microsoft.DataShare/accounts/shareSubscriptions/dataSetMappings" - } - }, - "201": { - "headers": { - "Date": "Wed, 28 Oct 2020 18:04:32 GMT", - "x-ms-request-id": "d5496da4-9c52-402f-b067-83cc9ddea888", - "X-Content-Type-Options": "nosniff", - "x-ms-ratelimit-remaining-tenant-reads": "14999", - "x-ms-correlation-request-id": "25c78f97-0b0a-4fe9-ad39-883a482265cd" - }, - "body": { - "kind": "StorageAccount", - "properties": { - "dataSetId": "a08f184b-0567-4b11-ba22-a1199336d226", - "storageAccountResourceId": "/subscriptions/433a8dfd-e5d5-4e77-ad86-90acdc75eb1a/resourceGroups/SampleResourceGroup/providers/Microsoft.Storage/storageaccounts/storageaccount1", - "containerName": "Container1", - "location": "centraluseuap", - "dataSetMappingStatus": "Ok", - "provisioningState": "Succeeded" - }, - "id": "/subscriptions/433a8dfd-e5d5-4e77-ad86-90acdc75eb1a/resourceGroups/SampleResourceGroup/providers/Microsoft.DataShare/accounts/Account1/shareSubscriptions/ShareSubscription1/dataSetMappings/DatasetMapping1", - "name": "DatasetMapping1", - "type": "Microsoft.DataShare/accounts/shareSubscriptions/dataSetMappings" - } - } - } -} diff --git a/specification/datashare/resource-manager/Microsoft.DataShare/preview/2020-10-01-preview/examples/DataSets_ADLSGen2StorageAccount_Create.json b/specification/datashare/resource-manager/Microsoft.DataShare/preview/2020-10-01-preview/examples/DataSets_ADLSGen2StorageAccount_Create.json new file mode 100644 index 000000000000..f10b29370d95 --- /dev/null +++ b/specification/datashare/resource-manager/Microsoft.DataShare/preview/2020-10-01-preview/examples/DataSets_ADLSGen2StorageAccount_Create.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "subscriptionId": "433a8dfd-e5d5-4e77-ad86-90acdc75eb1a", + "resourceGroupName": "SampleResourceGroup", + "accountName": "Account1", + "shareName": "Share1", + "dataSetName": "Dataset1", + "api-version": "2020-10-01-preview", + "dataSet": { + "kind": "AdlsGen2StorageAccount", + "properties": { + "storageAccountResourceId": "/subscriptions/0f3dcfc3-18f8-4099-b381-8353e19d43a7/resourceGroups/resourceGroup1/providers/Microsoft.Storage/storageAccounts/storageAccount1", + "paths": [ + { + "containerName": "container1", + "providerPath": "samplefile.txt", + "consumerPath": "/samplefolder1" + } + ] + } + } + }, + "responses": { + "200": { + "headers": { + "Date": "Wed, 28 Oct 2020 18:04:32 GMT", + "x-ms-request-id": "d5496da4-9c52-402f-b067-83cc9ddea888", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-tenant-reads": "14999", + "x-ms-correlation-request-id": "25c78f97-0b0a-4fe9-ad39-883a482265cd" + }, + "body": { + "properties": { + "storageAccountResourceId": "/subscriptions/0f3dcfc3-18f8-4099-b381-8353e19d43a7/resourceGroups/resourceGroup1/providers/Microsoft.Storage/storageAccounts/storageAccount1", + "paths": [ + { + "containerName": "container1", + "providerPath": "samplefile.txt", + "consumerPath": "/samplefolder1" + } + ], + "location": "centraluseuap", + "dataSetId": "66be0fd3-8669-465c-a3d3-2442a7345e48" + }, + "kind": "AdlsGen2StorageAccount", + "id": "/subscriptions/433a8dfd-e5d5-4e77-ad86-90acdc75eb1a/resourceGroups/SampleResourceGroup/providers/Microsoft.DataShare/accounts/Account1/shares/Share1/dataSets/DataSet1", + "name": "DataSet1", + "type": "Microsoft.DataShare/accounts/shares/dataSets" + } + }, + "201": { + "headers": { + "Date": "Wed, 28 Oct 2020 18:04:32 GMT", + "x-ms-request-id": "d5496da4-9c52-402f-b067-83cc9ddea888", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-tenant-reads": "14999", + "x-ms-correlation-request-id": "25c78f97-0b0a-4fe9-ad39-883a482265cd" + }, + "body": { + "properties": { + "storageAccountResourceId": "/subscriptions/0f3dcfc3-18f8-4099-b381-8353e19d43a7/resourceGroups/resourceGroup1/providers/Microsoft.Storage/storageAccounts/storageAccount1", + "paths": [ + { + "containerName": "container1", + "providerPath": "samplefile.txt", + "consumerPath": "/samplefolder1" + } + ], + "location": "centraluseuap", + "dataSetId": "66be0fd3-8669-465c-a3d3-2442a7345e48" + }, + "kind": "AdlsGen2StorageAccount", + "id": "/subscriptions/433a8dfd-e5d5-4e77-ad86-90acdc75eb1a/resourceGroups/SampleResourceGroup/providers/Microsoft.DataShare/accounts/Account1/shares/Share1/dataSets/DataSet1", + "name": "DataSet1", + "type": "Microsoft.DataShare/accounts/shares/dataSets" + } + } + } +} diff --git a/specification/datashare/resource-manager/Microsoft.DataShare/preview/2020-10-01-preview/examples/DataSets_BlobStorageAccount_Create.json b/specification/datashare/resource-manager/Microsoft.DataShare/preview/2020-10-01-preview/examples/DataSets_BlobStorageAccount_Create.json new file mode 100644 index 000000000000..b621369853aa --- /dev/null +++ b/specification/datashare/resource-manager/Microsoft.DataShare/preview/2020-10-01-preview/examples/DataSets_BlobStorageAccount_Create.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "subscriptionId": "433a8dfd-e5d5-4e77-ad86-90acdc75eb1a", + "resourceGroupName": "SampleResourceGroup", + "accountName": "Account1", + "shareName": "Share1", + "dataSetName": "Dataset1", + "api-version": "2020-10-01-preview", + "dataSet": { + "kind": "BlobStorageAccount", + "properties": { + "storageAccountResourceId": "/subscriptions/0f3dcfc3-18f8-4099-b381-8353e19d43a7/resourceGroups/resourceGroup1/providers/Microsoft.Storage/storageAccounts/storageAccount1", + "paths": [ + { + "containerName": "container1", + "providerPath": "samplefile.txt", + "consumerPath": "/samplefolder1" + } + ] + } + } + }, + "responses": { + "200": { + "headers": { + "Date": "Wed, 28 Oct 2020 18:04:32 GMT", + "x-ms-request-id": "d5496da4-9c52-402f-b067-83cc9ddea888", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-tenant-reads": "14999", + "x-ms-correlation-request-id": "25c78f97-0b0a-4fe9-ad39-883a482265cd" + }, + "body": { + "properties": { + "storageAccountResourceId": "/subscriptions/0f3dcfc3-18f8-4099-b381-8353e19d43a7/resourceGroups/resourceGroup1/providers/Microsoft.Storage/storageAccounts/storageAccount1", + "paths": [ + { + "containerName": "container1", + "providerPath": "samplefile.txt", + "consumerPath": "/samplefolder1" + } + ], + "location": "centraluseuap", + "dataSetId": "66be0fd3-8669-465c-a3d3-2442a7345e48" + }, + "kind": "BlobStorageAccount", + "id": "/subscriptions/433a8dfd-e5d5-4e77-ad86-90acdc75eb1a/resourceGroups/SampleResourceGroup/providers/Microsoft.DataShare/accounts/Account1/shares/Share1/dataSets/DataSet1", + "name": "DataSet1", + "type": "Microsoft.DataShare/accounts/shares/dataSets" + } + }, + "201": { + "headers": { + "Date": "Wed, 28 Oct 2020 18:04:32 GMT", + "x-ms-request-id": "d5496da4-9c52-402f-b067-83cc9ddea888", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-tenant-reads": "14999", + "x-ms-correlation-request-id": "25c78f97-0b0a-4fe9-ad39-883a482265cd" + }, + "body": { + "properties": { + "storageAccountResourceId": "/subscriptions/0f3dcfc3-18f8-4099-b381-8353e19d43a7/resourceGroups/resourceGroup1/providers/Microsoft.Storage/storageAccounts/storageAccount1", + "paths": [ + { + "containerName": "container1", + "providerPath": "samplefile.txt", + "consumerPath": "/samplefolder1" + } + ], + "location": "centraluseuap", + "dataSetId": "66be0fd3-8669-465c-a3d3-2442a7345e48" + }, + "kind": "BlobStorageAccount", + "id": "/subscriptions/433a8dfd-e5d5-4e77-ad86-90acdc75eb1a/resourceGroups/SampleResourceGroup/providers/Microsoft.DataShare/accounts/Account1/shares/Share1/dataSets/DataSet1", + "name": "DataSet1", + "type": "Microsoft.DataShare/accounts/shares/dataSets" + } + } + } +} diff --git a/specification/datashare/resource-manager/Microsoft.DataShare/preview/2020-10-01-preview/examples/DataSets_StorageAccount_Create.json b/specification/datashare/resource-manager/Microsoft.DataShare/preview/2020-10-01-preview/examples/DataSets_StorageAccount_Create.json deleted file mode 100644 index fb516759cb9f..000000000000 --- a/specification/datashare/resource-manager/Microsoft.DataShare/preview/2020-10-01-preview/examples/DataSets_StorageAccount_Create.json +++ /dev/null @@ -1,79 +0,0 @@ -{ - "parameters": { - "subscriptionId": "433a8dfd-e5d5-4e77-ad86-90acdc75eb1a", - "resourceGroupName": "SampleResourceGroup", - "accountName": "Account1", - "shareName": "Share1", - "dataSetName": "Dataset1", - "api-version": "2020-10-01-preview", - "dataSet": { - "kind": "StorageAccount", - "properties": { - "storageAccountResourceId": "/subscriptions/0f3dcfc3-18f8-4099-b381-8353e19d43a7/resourceGroups/resourceGroup1/providers/Microsoft.Storage/storageAccounts/storageAccount1", - "paths": [ - { - "containerName": "container1", - "providerPath": "samplefile.txt", - "consumerPath": "/samplefolder1" - } - ] - } - } - }, - "responses": { - "200": { - "headers": { - "Date": "Wed, 28 Oct 2020 18:04:32 GMT", - "x-ms-request-id": "d5496da4-9c52-402f-b067-83cc9ddea888", - "X-Content-Type-Options": "nosniff", - "x-ms-ratelimit-remaining-tenant-reads": "14999", - "x-ms-correlation-request-id": "25c78f97-0b0a-4fe9-ad39-883a482265cd" - }, - "body": { - "properties": { - "storageAccountResourceId": "/subscriptions/0f3dcfc3-18f8-4099-b381-8353e19d43a7/resourceGroups/resourceGroup1/providers/Microsoft.Storage/storageAccounts/storageAccount1", - "paths": [ - { - "containerName": "container1", - "providerPath": "samplefile.txt", - "consumerPath": "/samplefolder1" - } - ], - "location": "centraluseuap", - "dataSetId": "66be0fd3-8669-465c-a3d3-2442a7345e48" - }, - "kind": "StorageAccount", - "id": "/subscriptions/433a8dfd-e5d5-4e77-ad86-90acdc75eb1a/resourceGroups/SampleResourceGroup/providers/Microsoft.DataShare/accounts/Account1/shares/Share1/dataSets/DataSet1", - "name": "DataSet1", - "type": "Microsoft.DataShare/accounts/shares/dataSets" - } - }, - "201": { - "headers": { - "Date": "Wed, 28 Oct 2020 18:04:32 GMT", - "x-ms-request-id": "d5496da4-9c52-402f-b067-83cc9ddea888", - "X-Content-Type-Options": "nosniff", - "x-ms-ratelimit-remaining-tenant-reads": "14999", - "x-ms-correlation-request-id": "25c78f97-0b0a-4fe9-ad39-883a482265cd" - }, - "body": { - "properties": { - "storageAccountResourceId": "/subscriptions/0f3dcfc3-18f8-4099-b381-8353e19d43a7/resourceGroups/resourceGroup1/providers/Microsoft.Storage/storageAccounts/storageAccount1", - "paths": [ - { - "containerName": "container1", - "providerPath": "samplefile.txt", - "consumerPath": "/samplefolder1" - } - ], - "location": "centraluseuap", - "dataSetId": "66be0fd3-8669-465c-a3d3-2442a7345e48" - }, - "kind": "StorageAccount", - "id": "/subscriptions/433a8dfd-e5d5-4e77-ad86-90acdc75eb1a/resourceGroups/SampleResourceGroup/providers/Microsoft.DataShare/accounts/Account1/shares/Share1/dataSets/DataSet1", - "name": "DataSet1", - "type": "Microsoft.DataShare/accounts/shares/dataSets" - } - } - } -} diff --git a/specification/datashare/resource-manager/readme.azureresourceschema.md b/specification/datashare/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index d6539aecbd34..000000000000 --- a/specification/datashare/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,60 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-datashare-2020-10-01-preview - - tag: schema-datashare-2020-09-01 - - tag: schema-datashare-2019-11-01 - - tag: schema-datashare-2018-11-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-datashare-2020-10-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-datashare-2020-10-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DataShare/preview/2020-10-01-preview/DataShare.json - -``` - -### Tag: schema-datashare-2020-09-01 and azureresourceschema - -``` yaml $(tag) == 'schema-datashare-2020-09-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DataShare/stable/2020-09-01/DataShare.json - -``` - -### Tag: schema-datashare-2019-11-01 and azureresourceschema - -``` yaml $(tag) == 'schema-datashare-2019-11-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DataShare/stable/2019-11-01/DataShare.json - -``` - -### Tag: schema-datashare-2018-11-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-datashare-2018-11-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DataShare/preview/2018-11-01-preview/DataShare.json - -``` diff --git a/specification/datashare/resource-manager/readme.go.md b/specification/datashare/resource-manager/readme.go.md index c9a146b4c00d..0aff9ce0167c 100644 --- a/specification/datashare/resource-manager/readme.go.md +++ b/specification/datashare/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: datashare clear-output-folder: true ``` diff --git a/specification/datashare/resource-manager/readme.md b/specification/datashare/resource-manager/readme.md index 0b095c7f9948..584f9e203462 100644 --- a/specification/datashare/resource-manager/readme.md +++ b/specification/datashare/resource-manager/readme.md @@ -79,6 +79,7 @@ This is not used by Autorest itself. swagger-to-sdk: - repo: azure-sdk-for-net - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-go - repo: azure-cli-extensions ``` @@ -100,31 +101,7 @@ 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 - license-header: MICROSOFT_MIT_NO_VERSION - payload-flattening-threshold: 2 - namespace: azure.mgmt.datashare - package-name: azure-mgmt-datashare - clear-output-folder: true -``` -``` yaml $(python) && $(python-mode) == 'update' -python: - no-namespace-folders: true - output-folder: $(python-sdks-folder)/datashare/azure-mgmt-datashare/azure/mgmt/datashare -``` -``` yaml $(python) && $(python-mode) == 'create' -python: - basic-setup-py: true - output-folder: $(python-sdks-folder)/datashare/azure-mgmt-datashare -``` - +See configuration in [readme.python.md](./readme.python.md) ## Go diff --git a/specification/datashare/resource-manager/readme.python.md b/specification/datashare/resource-manager/readme.python.md index cb425ccd213a..9bbfc58e2633 100644 --- a/specification/datashare/resource-manager/readme.python.md +++ b/specification/datashare/resource-manager/readme.python.md @@ -4,15 +4,18 @@ These settings apply only when `--python` is specified on the command line. Please also specify `--python-sdks-folder=`. ```yaml $(python) && !$(track2) +python-mode: create python: azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 2 namespace: azure.mgmt.datashare package-name: azure-mgmt-datashare package-version: 2019-11-01 clear-output-folder: true ``` ```yaml $(python) && $(track2) +python-mode: create azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION namespace: azure.mgmt.datashare diff --git a/specification/datashare/resource-manager/readme.terraform.md b/specification/datashare/resource-manager/readme.terraform.md index f56079b04122..8b51574c6e13 100644 --- a/specification/datashare/resource-manager/readme.terraform.md +++ b/specification/datashare/resource-manager/readme.terraform.md @@ -23,3 +23,19 @@ terraform: clear-output-folder: true output-folder: $(terraform-output-folder)/datashare ``` + +``` yaml $(tag) == 'package-2018-11-01-preview' && $(terraform) +gosdk-folder: services/preview/datashare/mgmt/2018-11-01-preview/datashare +``` + +``` yaml $(tag) == 'package-2019-11-01' && $(terraform) +gosdk-folder: services/datashare/mgmt/2019-11-01/datashare +``` + +``` yaml $(tag) == 'package-2020-09-01' && $(terraform) +gosdk-folder: services/datashare/mgmt/2020-09-01/datashare +``` + +``` yaml $(tag) == 'package-2020-10-01-preview' && $(terraform) +gosdk-folder: services/preview/datashare/mgmt/2020-10-01-preview/datashare +``` diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/deploymentmanager.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/deploymentmanager.json index b47f17c0a57f..56abd0bc6d43 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/deploymentmanager.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/deploymentmanager.json @@ -24,20 +24,6 @@ ], "paths": { "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DeploymentManager/serviceTopologies/{serviceTopologyName}": { - "parameters": [ - { - "$ref": "#/parameters/subscriptionId" - }, - { - "$ref": "#/parameters/resourceGroupName" - }, - { - "$ref": "#/parameters/serviceTopologyName" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], "put": { "tags": [ "ServiceTopologies" @@ -62,6 +48,18 @@ "$ref": "#/definitions/ServiceTopologyResource" }, "description": "Source topology object defines the resource." + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/serviceTopologyName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" } ], "responses": { @@ -161,17 +159,6 @@ } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DeploymentManager/serviceTopologies": { - "parameters": [ - { - "$ref": "#/parameters/subscriptionId" - }, - { - "$ref": "#/parameters/resourceGroupName" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], "get": { "tags": [ "ServiceTopologies" @@ -352,20 +339,6 @@ } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DeploymentManager/serviceTopologies/{serviceTopologyName}/services": { - "parameters": [ - { - "$ref": "#/parameters/subscriptionId" - }, - { - "$ref": "#/parameters/resourceGroupName" - }, - { - "$ref": "#/parameters/serviceTopologyName" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], "get": { "tags": [ "Services" @@ -568,23 +541,6 @@ } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DeploymentManager/serviceTopologies/{serviceTopologyName}/services/{serviceName}/serviceUnits": { - "parameters": [ - { - "$ref": "#/parameters/subscriptionId" - }, - { - "$ref": "#/parameters/resourceGroupName" - }, - { - "$ref": "#/parameters/serviceTopologyName" - }, - { - "$ref": "#/parameters/serviceName" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], "get": { "tags": [ "ServiceUnits" @@ -764,17 +720,6 @@ } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DeploymentManager/steps": { - "parameters": [ - { - "$ref": "#/parameters/subscriptionId" - }, - { - "$ref": "#/parameters/resourceGroupName" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], "get": { "tags": [ "Steps" @@ -1049,17 +994,6 @@ } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DeploymentManager/rollouts": { - "parameters": [ - { - "$ref": "#/parameters/subscriptionId" - }, - { - "$ref": "#/parameters/resourceGroupName" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], "get": { "tags": [ "Rollouts" @@ -1233,17 +1167,6 @@ } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DeploymentManager/artifactSources": { - "parameters": [ - { - "$ref": "#/parameters/subscriptionId" - }, - { - "$ref": "#/parameters/resourceGroupName" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], "get": { "tags": [ "ArtifactSources" diff --git a/specification/deploymentmanager/resource-manager/readme.azureresourceschema.md b/specification/deploymentmanager/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 2502de8815f2..000000000000 --- a/specification/deploymentmanager/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,36 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-deploymentmanager-2019-11-01-preview - - tag: schema-deploymentmanager-2018-09-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-deploymentmanager-2019-11-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-deploymentmanager-2019-11-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DeploymentManager/preview/2019-11-01-preview/deploymentmanager.json - -``` - -### Tag: schema-deploymentmanager-2018-09-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-deploymentmanager-2018-09-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DeploymentManager/preview/2018-09-01-preview/deploymentmanager.json - -``` diff --git a/specification/deploymentmanager/resource-manager/readme.go.md b/specification/deploymentmanager/resource-manager/readme.go.md index 690a00d5f53b..96d7d673fed6 100644 --- a/specification/deploymentmanager/resource-manager/readme.go.md +++ b/specification/deploymentmanager/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: deploymentmanager clear-output-folder: true ``` diff --git a/specification/deploymentmanager/resource-manager/readme.md b/specification/deploymentmanager/resource-manager/readme.md index 71a8aa43226e..489297f14a35 100644 --- a/specification/deploymentmanager/resource-manager/readme.md +++ b/specification/deploymentmanager/resource-manager/readme.md @@ -108,6 +108,7 @@ This is not used by Autorest itself. swagger-to-sdk: - repo: azure-sdk-for-net - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-java - repo: azure-sdk-for-go - repo: azure-sdk-for-js @@ -116,8 +117,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_deploymentmanager'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js deploymentmanager/resource-manager ``` ## C# @@ -137,51 +136,7 @@ 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) && !$(track2) -python-mode: create -python: - azure-arm: true - license-header: MICROSOFT_MIT_NO_VERSION - payload-flattening-threshold: 2 - namespace: azure.mgmt.deploymentmanager - package-name: azure-mgmt-deploymentmanager - package-version: 0.9.1 - clear-output-folder: true - override-client-name: DeploymentManagerClient -``` - -``` yaml $(python) && $(track2) -python-mode: create -azure-arm: true -license-header: MICROSOFT_MIT_NO_VERSION -namespace: azure.mgmt.deploymentmanager -package-name: azure-mgmt-deploymentmanager -package-version: 0.9.1 -clear-output-folder: true -override-client-name: DeploymentManagerClient -``` -``` yaml $(python) && $(python-mode) == 'update' && !$(track2) -python: - no-namespace-folders: true - output-folder: $(python-sdks-folder)/deploymentmanager/azure-mgmt-deploymentmanager/azure/mgmt/deploymentmanager -``` -``` yaml $(python) && $(python-mode) == 'create' && !$(track2) -python: - basic-setup-py: true - output-folder: $(python-sdks-folder)/deploymentmanager/azure-mgmt-deploymentmanager -``` -``` yaml $(python) && $(python-mode) == 'update' && $(track2) -no-namespace-folders: true -output-folder: $(python-sdks-folder)/deploymentmanager/azure-mgmt-deploymentmanager/azure/mgmt/deploymentmanager -``` -``` yaml $(python) && $(python-mode) == 'create' && $(track2) -basic-setup-py: true -output-folder: $(python-sdks-folder)/deploymentmanager/azure-mgmt-deploymentmanager -``` +See configuration in [readme.python.md](./readme.pyhon.md) ## Go @@ -199,6 +154,8 @@ namespace: com.microsoft.azure.management.deploymentmanager license-header: MICROSOFT_MIT_NO_CODEGEN payload-flattening-threshold: 2 output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-deploymentmanager + +service-name: Deployment ``` ### Java multi-api @@ -221,7 +178,5 @@ regenerate-manager: true generate-interface: true ``` -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/deploymentmanager/resource-manager/readme.python.md b/specification/deploymentmanager/resource-manager/readme.python.md new file mode 100644 index 000000000000..8e3defca69cf --- /dev/null +++ b/specification/deploymentmanager/resource-manager/readme.python.md @@ -0,0 +1,48 @@ +## 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) && !$(track2) +python-mode: create +python: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 2 + namespace: azure.mgmt.deploymentmanager + package-name: azure-mgmt-deploymentmanager + package-version: 0.9.1 + clear-output-folder: true + override-client-name: DeploymentManagerClient +``` + +``` yaml $(python) && $(track2) +python-mode: create +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +namespace: azure.mgmt.deploymentmanager +package-name: azure-mgmt-deploymentmanager +package-version: 0.9.1 +clear-output-folder: true +modelerfour: + lenient-model-deduplication: true +``` +``` yaml $(python) && $(python-mode) == 'update' && !$(track2) +python: + no-namespace-folders: true + output-folder: $(python-sdks-folder)/deploymentmanager/azure-mgmt-deploymentmanager/azure/mgmt/deploymentmanager +``` +``` yaml $(python) && $(python-mode) == 'create' && !$(track2) +python: + basic-setup-py: true + output-folder: $(python-sdks-folder)/deploymentmanager/azure-mgmt-deploymentmanager +``` +``` yaml $(python) && $(python-mode) == 'update' && $(track2) +no-namespace-folders: true +output-folder: $(python-sdks-folder)/deploymentmanager/azure-mgmt-deploymentmanager/azure/mgmt/deploymentmanager +``` +``` yaml $(python) && $(python-mode) == 'create' && $(track2) +basic-setup-py: true +output-folder: $(python-sdks-folder)/deploymentmanager/azure-mgmt-deploymentmanager +``` \ No newline at end of file diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/desktopvirtualization.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/desktopvirtualization.json new file mode 100644 index 000000000000..10311cb1d2fa --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/desktopvirtualization.json @@ -0,0 +1,4862 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-03-09-preview", + "title": "Desktop Virtualization API Client" + }, + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "host": "management.azure.com", + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/providers/Microsoft.DesktopVirtualization/operations": { + "get": { + "tags": [ + "Operations" + ], + "operationId": "Operations_List", + "description": "List all of the available operations the Desktop Virtualization resource provider supports.", + "x-ms-examples": { + "OperationDescription_List": { + "$ref": "./examples/OperationDescription_List.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved operations.", + "schema": { + "$ref": "#/definitions/ResourceProviderOperationList" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/workspaces/{workspaceName}": { + "get": { + "tags": [ + "Workspace" + ], + "operationId": "Workspaces_Get", + "description": "Get a workspace.", + "x-ms-examples": { + "Workspace_Get": { + "$ref": "./examples/Workspace_Get.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved workspace.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Workspace" + ], + "operationId": "Workspaces_CreateOrUpdate", + "description": "Create or update a workspace.", + "x-ms-examples": { + "Workspace_Create": { + "$ref": "./examples/Workspace_Create.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "name": "workspace", + "description": "Object containing Workspace definitions.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Workspace" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated workspace.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "201": { + "description": "Successfully created workspace.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "Workspace" + ], + "operationId": "Workspaces_Delete", + "description": "Remove a workspace.", + "x-ms-examples": { + "Workspace_Delete": { + "$ref": "./examples/Workspace_Delete.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted workspace." + }, + "204": { + "description": "Workspace does not exist." + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "patch": { + "tags": [ + "Workspace" + ], + "operationId": "Workspaces_Update", + "description": "Update a workspace.", + "x-ms-examples": { + "Workspace_Update": { + "$ref": "./examples/Workspace_Update.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "name": "workspace", + "description": "Object containing Workspace definitions.", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/WorkspacePatch" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated workspace.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/workspaces": { + "get": { + "tags": [ + "Workspace" + ], + "operationId": "Workspaces_ListByResourceGroup", + "description": "List workspaces.", + "x-ms-examples": { + "Workspace_ListByResourceGroup": { + "$ref": "./examples/Workspace_ListByResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved workspaces in resource group.", + "schema": { + "$ref": "#/definitions/WorkspaceList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DesktopVirtualization/workspaces": { + "get": { + "tags": [ + "Workspace" + ], + "operationId": "Workspaces_ListBySubscription", + "description": "List workspaces in subscription.", + "x-ms-examples": { + "Workspace_ListBySubscription": { + "$ref": "./examples/Workspace_ListBySubscription.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved workspaces in subscription.", + "schema": { + "$ref": "#/definitions/WorkspaceList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/scalingPlans/{scalingPlanName}": { + "get": { + "tags": [ + "ScalingPlan" + ], + "operationId": "ScalingPlans_Get", + "description": "Get a scaling plan.", + "x-ms-examples": { + "ScalingPlans_Get": { + "$ref": "./examples/ScalingPlan_Get.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ScalingPlanNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved scaling plan.", + "schema": { + "$ref": "#/definitions/ScalingPlan" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "ScalingPlan" + ], + "operationId": "ScalingPlans_Create", + "description": "Create or update a scaling plan.", + "x-ms-examples": { + "ScalingPlans_Create": { + "$ref": "./examples/ScalingPlan_Create.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ScalingPlanNameParameter" + }, + { + "name": "scalingPlan", + "description": "Object containing scaling plan definitions.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScalingPlan" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated scaling plan.", + "schema": { + "$ref": "#/definitions/ScalingPlan" + } + }, + "201": { + "description": "Successfully created scaling plan.", + "schema": { + "$ref": "#/definitions/ScalingPlan" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "ScalingPlan" + ], + "operationId": "ScalingPlans_Delete", + "description": "Remove a scaling plan.", + "x-ms-examples": { + "ScalingPlans_Delete": { + "$ref": "./examples/ScalingPlan_Delete.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ScalingPlanNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted scaling plan." + }, + "204": { + "description": "Scaling plan does not exist." + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "patch": { + "tags": [ + "ScalingPlan" + ], + "operationId": "ScalingPlans_Update", + "description": "Update a scaling plan.", + "x-ms-examples": { + "ScalingPlans_Update": { + "$ref": "./examples/ScalingPlan_Update.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ScalingPlanNameParameter" + }, + { + "name": "scalingPlan", + "description": "Object containing scaling plan definitions.", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/ScalingPlanPatch" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated scaling plan.", + "schema": { + "$ref": "#/definitions/ScalingPlan" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/scalingPlans": { + "get": { + "tags": [ + "ScalingPlan" + ], + "operationId": "ScalingPlans_ListByResourceGroup", + "description": "List scaling plans.", + "x-ms-examples": { + "ScalingPlans_ListByResourceGroup": { + "$ref": "./examples/ScalingPlan_ListByResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved scaling plans in resource group.", + "schema": { + "$ref": "#/definitions/ScalingPlanList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DesktopVirtualization/scalingPlans": { + "get": { + "tags": [ + "ScalingPlan" + ], + "operationId": "ScalingPlans_ListBySubscription", + "description": "List scaling plans in subscription.", + "x-ms-examples": { + "ScalingPlans_ListBySubscription": { + "$ref": "./examples/ScalingPlan_ListBySubscription.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved scaling plans in subscription.", + "schema": { + "$ref": "#/definitions/ScalingPlanList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}": { + "get": { + "tags": [ + "ApplicationGroup" + ], + "operationId": "ApplicationGroups_Get", + "description": "Get an application group.", + "x-ms-examples": { + "ApplicationGroup_Get": { + "$ref": "./examples/ApplicationGroup_Get.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved application group.", + "schema": { + "$ref": "#/definitions/ApplicationGroup" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "ApplicationGroup" + ], + "operationId": "ApplicationGroups_CreateOrUpdate", + "description": "Create or update an applicationGroup.", + "x-ms-examples": { + "ApplicationGroup_Create": { + "$ref": "./examples/ApplicationGroup_Create.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + }, + { + "name": "applicationGroup", + "description": "Object containing ApplicationGroup definitions.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationGroup" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated application group.", + "schema": { + "$ref": "#/definitions/ApplicationGroup" + } + }, + "201": { + "description": "Successfully created application group.", + "schema": { + "$ref": "#/definitions/ApplicationGroup" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "ApplicationGroup" + ], + "operationId": "ApplicationGroups_Delete", + "description": "Remove an applicationGroup.", + "x-ms-examples": { + "ApplicationGroup_Delete": { + "$ref": "./examples/ApplicationGroup_Delete.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully removed application group." + }, + "204": { + "description": "Application group does not exist." + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "patch": { + "tags": [ + "ApplicationGroup" + ], + "operationId": "ApplicationGroups_Update", + "description": "Update an applicationGroup.", + "x-ms-examples": { + "ApplicationGroups_Update": { + "$ref": "./examples/ApplicationGroup_Update.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + }, + { + "name": "applicationGroup", + "description": "Object containing ApplicationGroup definitions.", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/ApplicationGroupPatch" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated application group.", + "schema": { + "$ref": "#/definitions/ApplicationGroup" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups": { + "get": { + "tags": [ + "ApplicationGroup" + ], + "operationId": "ApplicationGroups_ListByResourceGroup", + "description": "List applicationGroups.", + "x-ms-examples": { + "ApplicationGroup_ListByResourceGroup": { + "$ref": "./examples/ApplicationGroup_ListByResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "OData filter expression. Valid properties for filtering are applicationGroupType." + } + ], + "responses": { + "200": { + "description": "Successfully retrieved application groups in resource group.", + "schema": { + "$ref": "#/definitions/ApplicationGroupList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DesktopVirtualization/applicationGroups": { + "get": { + "tags": [ + "ApplicationGroup" + ], + "operationId": "ApplicationGroups_ListBySubscription", + "description": "List applicationGroups in subscription.", + "x-ms-examples": { + "ApplicationGroup_List": { + "$ref": "./examples/ApplicationGroup_ListBySubscription.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "OData filter expression. Valid properties for filtering are applicationGroupType." + } + ], + "responses": { + "200": { + "description": "Successfully retrieved application groups in subscription.", + "schema": { + "$ref": "#/definitions/ApplicationGroupList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}/startMenuItems": { + "get": { + "tags": [ + "StartMenuItem" + ], + "operationId": "StartMenuItems_List", + "description": "List start menu items in the given application group.", + "x-ms-examples": { + "StartMenuItem_List": { + "$ref": "./examples/StartMenuItem_List.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved start menu items in application group.", + "schema": { + "$ref": "#/definitions/StartMenuItemList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}/applications/{applicationName}": { + "get": { + "tags": [ + "Application" + ], + "operationId": "Applications_Get", + "description": "Get an application.", + "x-ms-examples": { + "Application_Get": { + "$ref": "./examples/Application_Get.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved application.", + "schema": { + "$ref": "#/definitions/Application" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Application" + ], + "operationId": "Applications_CreateOrUpdate", + "description": "Create or update an application.", + "x-ms-examples": { + "Application_Create": { + "$ref": "./examples/Application_Create.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationNameParameter" + }, + { + "name": "application", + "description": "Object containing Application definitions.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Application" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated application.", + "schema": { + "$ref": "#/definitions/Application" + } + }, + "201": { + "description": "Successfully created application.", + "schema": { + "$ref": "#/definitions/Application" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "Application" + ], + "operationId": "Applications_Delete", + "description": "Remove an application.", + "x-ms-examples": { + "Application_Delete": { + "$ref": "./examples/Application_Delete.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully removed application." + }, + "204": { + "description": "Application does not exist." + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "patch": { + "tags": [ + "Application" + ], + "operationId": "Applications_Update", + "description": "Update an application.", + "x-ms-examples": { + "Application_Update": { + "$ref": "./examples/Application_Update.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationNameParameter" + }, + { + "name": "application", + "description": "Object containing Application definitions.", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/ApplicationPatch" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated application.", + "schema": { + "$ref": "#/definitions/Application" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}/applications": { + "get": { + "tags": [ + "Application" + ], + "operationId": "Applications_List", + "description": "List applications.", + "x-ms-examples": { + "Applications_List": { + "$ref": "./examples/Application_List.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved applications in application group.", + "schema": { + "$ref": "#/definitions/ApplicationList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}/desktops/{desktopName}": { + "get": { + "tags": [ + "Desktop" + ], + "operationId": "Desktops_Get", + "description": "Get a desktop.", + "x-ms-examples": { + "Desktop_Get": { + "$ref": "./examples/Desktop_Get.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + }, + { + "$ref": "#/parameters/DesktopNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved desktop.", + "schema": { + "$ref": "#/definitions/Desktop" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "patch": { + "tags": [ + "Desktop" + ], + "operationId": "Desktops_Update", + "description": "Update a desktop.", + "x-ms-examples": { + "Desktop_Update": { + "$ref": "./examples/Desktop_Update.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + }, + { + "$ref": "#/parameters/DesktopNameParameter" + }, + { + "name": "desktop", + "description": "Object containing Desktop definitions.", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/DesktopPatch" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated desktop.", + "schema": { + "$ref": "#/definitions/Desktop" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}/desktops": { + "get": { + "tags": [ + "Desktop" + ], + "operationId": "Desktops_List", + "description": "List desktops.", + "x-ms-examples": { + "Desktop_List": { + "$ref": "./examples/Desktop_List.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved desktops in application group.", + "schema": { + "$ref": "#/definitions/DesktopList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}": { + "get": { + "tags": [ + "HostPool" + ], + "operationId": "HostPools_Get", + "description": "Get a host pool.", + "x-ms-examples": { + "HostPool_Get": { + "$ref": "./examples/HostPool_Get.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved host pool.", + "schema": { + "$ref": "#/definitions/HostPool" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "HostPool" + ], + "operationId": "HostPools_CreateOrUpdate", + "description": "Create or update a host pool.", + "x-ms-examples": { + "HostPool_Create": { + "$ref": "./examples/HostPool_Create.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "name": "hostPool", + "description": "Object containing HostPool definitions.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/HostPool" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated host pool.", + "schema": { + "$ref": "#/definitions/HostPool" + } + }, + "201": { + "description": "Successfully created host pool.", + "schema": { + "$ref": "#/definitions/HostPool" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "HostPool" + ], + "operationId": "HostPools_Delete", + "description": "Remove a host pool.", + "x-ms-examples": { + "HostPool_Delete": { + "$ref": "./examples/HostPool_Delete.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "name": "force", + "in": "query", + "required": false, + "type": "boolean", + "description": "Force flag to delete sessionHost." + } + ], + "responses": { + "200": { + "description": "Successfully removed host pool." + }, + "204": { + "description": "Host pool does not exist." + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "patch": { + "tags": [ + "HostPool" + ], + "operationId": "HostPools_Update", + "description": "Update a host pool.", + "x-ms-examples": { + "HostPool_Update": { + "$ref": "./examples/HostPool_Update.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "name": "hostPool", + "description": "Object containing HostPool definitions.", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/HostPoolPatch" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated host pool.", + "schema": { + "$ref": "#/definitions/HostPool" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools": { + "get": { + "tags": [ + "HostPool" + ], + "operationId": "HostPools_ListByResourceGroup", + "description": "List hostPools.", + "x-ms-examples": { + "HostPool_ListByResourceGroup": { + "$ref": "./examples/HostPool_ListByResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved host pool in resource group.", + "schema": { + "$ref": "#/definitions/HostPoolList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DesktopVirtualization/hostPools": { + "get": { + "tags": [ + "HostPool" + ], + "operationId": "HostPools_List", + "description": "List hostPools in subscription.", + "x-ms-examples": { + "HostPool_List": { + "$ref": "./examples/HostPool_List.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved host pool in subscription.", + "schema": { + "$ref": "#/definitions/HostPoolList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/retrieveRegistrationToken": { + "post": { + "tags": [ + "HostPool" + ], + "operationId": "HostPools_RetrieveRegistrationToken", + "description": "Registration token of the host pool.", + "x-ms-examples": { + "HostPools_RetrieveRegistrationToken_Post": { + "$ref": "./examples/HostPools_RetrieveRegistrationToken_Post.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved host pool in resource group.", + "schema": { + "$ref": "#/definitions/RegistrationInfo" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/userSessions": { + "get": { + "tags": [ + "UserSession" + ], + "operationId": "UserSessions_ListByHostPool", + "description": "List userSessions.", + "x-ms-examples": { + "UserSession_ListByHostPool": { + "$ref": "./examples/UserSession_ListByHostPool.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "OData filter expression. Valid properties for filtering are userprincipalname and sessionstate." + } + ], + "responses": { + "200": { + "description": "Successfully retrieved user sessions in host pool.", + "schema": { + "$ref": "#/definitions/UserSessionList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts/{sessionHostName}": { + "get": { + "tags": [ + "SessionHost" + ], + "operationId": "SessionHosts_Get", + "description": "Get a session host.", + "x-ms-examples": { + "SessionHost_Get": { + "$ref": "./examples/SessionHost_Get.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "$ref": "#/parameters/SessionHostNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved session host.", + "schema": { + "$ref": "#/definitions/SessionHost" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "SessionHost" + ], + "operationId": "SessionHosts_Delete", + "description": "Remove a SessionHost.", + "x-ms-examples": { + "SessionHost_Delete": { + "$ref": "./examples/SessionHost_Delete.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "$ref": "#/parameters/SessionHostNameParameter" + }, + { + "name": "force", + "in": "query", + "required": false, + "type": "boolean", + "description": "Force flag to force sessionHost deletion even when userSession exists." + } + ], + "responses": { + "200": { + "description": "Successfully removed session host." + }, + "204": { + "description": "Session host does not exist." + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "patch": { + "tags": [ + "SessionHost" + ], + "operationId": "SessionHosts_Update", + "description": "Update a session host.", + "x-ms-examples": { + "SessionHost_Update": { + "$ref": "./examples/SessionHost_Update.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "$ref": "#/parameters/SessionHostNameParameter" + }, + { + "name": "sessionHost", + "description": "Object containing SessionHost definitions.", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/SessionHostPatch" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated session host.", + "schema": { + "$ref": "#/definitions/SessionHost" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts": { + "get": { + "tags": [ + "SessionHost" + ], + "operationId": "SessionHosts_List", + "description": "List sessionHosts.", + "x-ms-examples": { + "SessionHost_List": { + "$ref": "./examples/SessionHost_List.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved session hosts in host pool.", + "schema": { + "$ref": "#/definitions/SessionHostList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/msixPackages/{msixPackageFullName}": { + "get": { + "tags": [ + "MSIXPackage" + ], + "operationId": "MSIXPackages_Get", + "description": "Get a msixpackage.", + "x-ms-examples": { + "MSIXPackage_Get": { + "$ref": "./examples/MsixPackage_Get.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "$ref": "#/parameters/MSIXPackageFullNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved MSIX Package.", + "schema": { + "$ref": "#/definitions/MSIXPackage" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "MSIXPackage" + ], + "operationId": "MSIXPackages_CreateOrUpdate", + "description": "Create or update a MSIX package.", + "x-ms-examples": { + "MSIXPackage_Create": { + "$ref": "./examples/MsixPackage_Create.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "$ref": "#/parameters/MSIXPackageFullNameParameter" + }, + { + "name": "msixPackage", + "description": "Object containing MSIX Package definitions.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/MSIXPackage" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated MSIX Package.", + "schema": { + "$ref": "#/definitions/MSIXPackage" + } + }, + "201": { + "description": "Successfully created MSIX Package.", + "schema": { + "$ref": "#/definitions/MSIXPackage" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "MSIXPackage" + ], + "operationId": "MSIXPackages_Delete", + "description": "Remove an MSIX Package.", + "x-ms-examples": { + "MSIXPackage_Delete": { + "$ref": "./examples/MsixPackage_Delete.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "$ref": "#/parameters/MSIXPackageFullNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully removed MSIX Package." + }, + "204": { + "description": "MSIX Package does not exist." + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "patch": { + "tags": [ + "MSIXPackage" + ], + "operationId": "MSIXPackages_Update", + "description": "Update an MSIX Package.", + "x-ms-examples": { + "MSIXPackage_Update": { + "$ref": "./examples/MsixPackage_Update.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "$ref": "#/parameters/MSIXPackageFullNameParameter" + }, + { + "name": "msixPackage", + "description": "Object containing MSIX Package definitions.", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/MSIXPackagePatch" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated MSIX Package.", + "schema": { + "$ref": "#/definitions/MSIXPackage" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/msixPackages": { + "get": { + "tags": [ + "MSIXPackage" + ], + "operationId": "MSIXPackages_List", + "description": "List MSIX packages in hostpool.", + "x-ms-examples": { + "MSIXPackage_List": { + "$ref": "./examples/MsixPackage_List.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved MSIX Packages in hostpool.", + "schema": { + "$ref": "#/definitions/MSIXPackageList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/expandMsixImage": { + "post": { + "tags": [ + "MsixImage" + ], + "operationId": "MsixImages_Expand", + "description": "Expands and Lists MSIX packages in an Image, given the Image Path.", + "x-ms-examples": { + "MsixImage_Expand": { + "$ref": "./examples/MsixImage_Expand_Post.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "name": "msixImageURI", + "description": "Object containing URI to MSIX Image", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/MSIXImageURI" + } + } + ], + "responses": { + "200": { + "description": "Successfully retrieved MSIX packages in specified Image Path.", + "schema": { + "$ref": "#/definitions/ExpandMsixImageList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts/{sessionHostName}/userSessions/{userSessionId}": { + "get": { + "tags": [ + "UserSession" + ], + "operationId": "UserSessions_Get", + "description": "Get a userSession.", + "x-ms-examples": { + "UserSession_Get": { + "$ref": "./examples/UserSession_Get.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "$ref": "#/parameters/SessionHostNameParameter" + }, + { + "$ref": "#/parameters/UserSessionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved user session.", + "schema": { + "$ref": "#/definitions/UserSession" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "UserSession" + ], + "operationId": "UserSessions_Delete", + "description": "Remove a userSession.", + "x-ms-examples": { + "UserSession_Delete": { + "$ref": "./examples/UserSession_Delete.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "$ref": "#/parameters/SessionHostNameParameter" + }, + { + "$ref": "#/parameters/UserSessionIdParameter" + }, + { + "name": "force", + "in": "query", + "required": false, + "type": "boolean", + "description": "Force flag to login off userSession." + } + ], + "responses": { + "200": { + "description": "Successfully removed user session." + }, + "204": { + "description": "User session does not exist." + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts/{sessionHostName}/userSessions": { + "get": { + "tags": [ + "UserSession" + ], + "operationId": "UserSessions_List", + "description": "List userSessions.", + "x-ms-examples": { + "UserSession_List": { + "$ref": "./examples/UserSession_List.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "$ref": "#/parameters/SessionHostNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved user sessions in session host.", + "schema": { + "$ref": "#/definitions/UserSessionList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts/{sessionHostName}/userSessions/{userSessionId}/disconnect": { + "post": { + "tags": [ + "UserSession" + ], + "operationId": "UserSessions_Disconnect", + "description": "Disconnect a userSession.", + "x-ms-examples": { + "UserSession_Disconnect_Post": { + "$ref": "./examples/UserSession_Disconnect_Post.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "$ref": "#/parameters/SessionHostNameParameter" + }, + { + "$ref": "#/parameters/UserSessionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully disconnected user session." + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts/{sessionHostName}/userSessions/{userSessionId}/sendMessage": { + "post": { + "tags": [ + "UserSession" + ], + "operationId": "UserSessions_SendMessage", + "description": "Send a message to a user.", + "x-ms-examples": { + "UserSession_SendMessage_Post": { + "$ref": "./examples/UserSession_SendMessage_Post.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "$ref": "#/parameters/SessionHostNameParameter" + }, + { + "$ref": "#/parameters/UserSessionIdParameter" + }, + { + "name": "sendMessage", + "description": "Object containing message includes title and message body", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/SendMessage" + } + } + ], + "responses": { + "200": { + "description": "Successfully sent message to user session." + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/scalingPlans": { + "get": { + "tags": [ + "ScalingPlan" + ], + "operationId": "ScalingPlans_ListByHostPool", + "description": "List scaling plan associated with hostpool.", + "x-ms-examples": { + "UserSession_SendMessage_Post": { + "$ref": "./examples/ScalingPlan_ListByHostPool.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved scaling plan associated with hostpool.", + "schema": { + "$ref": "#/definitions/ScalingPlanList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorProperties" + } + } + }, + "CloudErrorProperties": { + "type": "object", + "properties": { + "code": { + "description": "Error code", + "type": "string" + }, + "message": { + "description": "Error message indicating why the operation failed.", + "type": "string" + } + } + }, + "ResourceProviderOperationList": { + "description": "Result of the request to list operations.", + "readOnly": true, + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceProviderOperation" + }, + "description": "List of operations supported by this resource provider." + } + } + }, + "ResourceProviderOperation": { + "description": "Supported operation of this resource provider.", + "readOnly": true, + "properties": { + "name": { + "description": "Operation name, in format of {provider}/{resource}/{operation}", + "type": "string" + }, + "display": { + "description": "Display metadata associated with the operation.", + "properties": { + "provider": { + "description": "Resource provider: Microsoft Desktop Virtualization.", + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed.", + "type": "string" + }, + "operation": { + "description": "Type of operation: get, read, delete, etc.", + "type": "string" + }, + "description": { + "description": "Description of this operation.", + "type": "string" + } + } + }, + "isDataAction": { + "description": "Is a data action.", + "type": "boolean" + }, + "properties": { + "$ref": "#/definitions/OperationProperties" + } + } + }, + "OperationProperties": { + "description": "Properties of the operation", + "type": "object", + "properties": { + "serviceSpecification": { + "$ref": "#/definitions/ServiceSpecification" + } + } + }, + "ServiceSpecification": { + "description": "Service specification payload", + "type": "object", + "properties": { + "logSpecifications": { + "description": "Specifications of the Log for Azure Monitoring", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/LogSpecification" + } + } + } + }, + "LogSpecification": { + "description": "Specifications of the Log for Azure Monitoring", + "type": "object", + "properties": { + "name": { + "description": "Name of the log", + "type": "string" + }, + "displayName": { + "description": "Localized friendly display name of the log", + "type": "string" + }, + "blobDuration": { + "description": "Blob duration of the log", + "type": "string" + } + } + }, + "Workspace": { + "type": "object", + "description": "Represents a Workspace definition.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ResourceModelWithAllowedPropertySet" + } + ], + "properties": { + "properties": { + "description": "Detailed properties for Workspace", + "x-ms-client-flatten": true, + "$ref": "#/definitions/WorkspaceProperties" + } + } + }, + "WorkspaceProperties": { + "description": "Schema for Workspace properties.", + "type": "object", + "properties": { + "objectId": { + "type": "string", + "description": "ObjectId of Workspace. (internal use)", + "readOnly": true + }, + "description": { + "type": "string", + "description": "Description of Workspace." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of Workspace." + }, + "applicationGroupReferences": { + "type": "array", + "description": "List of applicationGroup resource Ids.", + "items": { + "type": "string" + } + }, + "cloudPcResource": { + "type": "boolean", + "description": "Is cloud pc resource.", + "readOnly": true + } + } + }, + "WorkspaceList": { + "type": "object", + "title": "WorkspaceList", + "description": "List of Workspace definitions.", + "properties": { + "value": { + "type": "array", + "description": "List of Workspace definitions.", + "items": { + "$ref": "#/definitions/Workspace" + } + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next page of results." + } + } + }, + "WorkspacePatch": { + "type": "object", + "description": "Workspace properties that can be patched.", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "tags to be updated" + }, + "properties": { + "description": "Detailed properties for Workspace", + "x-ms-client-flatten": true, + "$ref": "#/definitions/WorkspacePatchProperties" + } + } + }, + "WorkspacePatchProperties": { + "description": "Workspace properties that can be patched.", + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "Description of Workspace." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of Workspace." + }, + "applicationGroupReferences": { + "type": "array", + "description": "List of applicationGroup links.", + "items": { + "type": "string" + } + } + } + }, + "ApplicationGroup": { + "type": "object", + "description": "Represents a ApplicationGroup definition.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ResourceModelWithAllowedPropertySet" + } + ], + "required": [ + "properties" + ], + "properties": { + "properties": { + "description": "Detailed properties for ApplicationGroup", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGroupProperties", + "x-nullable": false + } + } + }, + "ApplicationGroupProperties": { + "description": "Schema for ApplicationGroup properties.", + "type": "object", + "required": [ + "hostPoolArmPath", + "applicationGroupType" + ], + "properties": { + "objectId": { + "type": "string", + "description": "ObjectId of ApplicationGroup. (internal use)", + "readOnly": true + }, + "description": { + "type": "string", + "description": "Description of ApplicationGroup." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of ApplicationGroup." + }, + "hostPoolArmPath": { + "type": "string", + "description": "HostPool arm path of ApplicationGroup.", + "x-nullable": false + }, + "workspaceArmPath": { + "type": "string", + "description": "Workspace arm path of ApplicationGroup.", + "readOnly": true + }, + "applicationGroupType": { + "enum": [ + "RemoteApp", + "Desktop" + ], + "x-ms-enum": { + "name": "ApplicationGroupType", + "modelAsString": true + }, + "type": "string", + "description": "Resource Type of ApplicationGroup.", + "x-nullable": false + }, + "migrationRequest": { + "$ref": "#/definitions/MigrationRequestProperties", + "description": "The registration info of HostPool." + }, + "cloudPcResource": { + "type": "boolean", + "description": "Is cloud pc resource.", + "readOnly": true + } + } + }, + "ApplicationGroupPatch": { + "type": "object", + "description": "ApplicationGroup properties that can be patched.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "tags to be updated" + }, + "properties": { + "description": "ApplicationGroup properties that can be patched.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGroupPatchProperties" + } + } + }, + "ApplicationGroupPatchProperties": { + "description": "ApplicationGroup properties that can be patched.", + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "Description of ApplicationGroup." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of ApplicationGroup." + } + } + }, + "ApplicationGroupList": { + "type": "object", + "title": "ApplicationGroupList", + "description": "List of ApplicationGroup definitions.", + "properties": { + "value": { + "type": "array", + "description": "List of ApplicationGroup definitions.", + "items": { + "$ref": "#/definitions/ApplicationGroup" + } + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next page of results." + } + } + }, + "HostPool": { + "type": "object", + "description": "Represents a HostPool definition.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ResourceModelWithAllowedPropertySet" + } + ], + "required": [ + "properties" + ], + "properties": { + "properties": { + "description": "Detailed properties for HostPool", + "x-ms-client-flatten": true, + "$ref": "#/definitions/HostPoolProperties", + "x-nullable": false + } + } + }, + "HostPoolProperties": { + "description": "Properties of HostPool.", + "type": "object", + "required": [ + "hostPoolType", + "loadBalancerType", + "preferredAppGroupType" + ], + "properties": { + "objectId": { + "type": "string", + "description": "ObjectId of HostPool. (internal use)", + "readOnly": true + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of HostPool." + }, + "description": { + "type": "string", + "description": "Description of HostPool." + }, + "hostPoolType": { + "enum": [ + "Personal", + "Pooled", + "BYODesktop" + ], + "x-ms-enum": { + "name": "HostPoolType", + "modelAsString": true, + "values": [ + { + "value": "Personal", + "description": "Users will be assigned a SessionHost either by administrators (PersonalDesktopAssignmentType = Direct) or upon connecting to the pool (PersonalDesktopAssignmentType = Automatic). They will always be redirected to their assigned SessionHost." + }, + { + "value": "Pooled", + "description": "Users get a new (random) SessionHost every time it connects to the HostPool." + }, + { + "value": "BYODesktop", + "description": "Users assign their own machines, load balancing logic remains the same as Personal. PersonalDesktopAssignmentType must be Direct." + } + ] + }, + "type": "string", + "description": "HostPool type for desktop.", + "x-nullable": false + }, + "personalDesktopAssignmentType": { + "enum": [ + "Automatic", + "Direct" + ], + "x-ms-enum": { + "name": "PersonalDesktopAssignmentType", + "modelAsString": true + }, + "type": "string", + "description": "PersonalDesktopAssignment type for HostPool." + }, + "customRdpProperty": { + "type": "string", + "description": "Custom rdp property of HostPool." + }, + "maxSessionLimit": { + "type": "integer", + "description": "The max session limit of HostPool." + }, + "loadBalancerType": { + "enum": [ + "BreadthFirst", + "DepthFirst", + "Persistent" + ], + "x-ms-enum": { + "name": "LoadBalancerType", + "modelAsString": true + }, + "type": "string", + "description": "The type of the load balancer.", + "x-nullable": false + }, + "ring": { + "type": "integer", + "description": "The ring number of HostPool." + }, + "validationEnvironment": { + "type": "boolean", + "description": "Is validation environment." + }, + "registrationInfo": { + "$ref": "#/definitions/RegistrationInfo", + "description": "The registration info of HostPool." + }, + "vmTemplate": { + "type": "string", + "description": "VM template for sessionhosts configuration within hostpool." + }, + "applicationGroupReferences": { + "readOnly": true, + "type": "array", + "description": "List of applicationGroup links.", + "items": { + "type": "string" + } + }, + "ssoadfsAuthority": { + "type": "string", + "description": "URL to customer ADFS server for signing WVD SSO certificates." + }, + "ssoClientId": { + "type": "string", + "description": "ClientId for the registered Relying Party used to issue WVD SSO certificates." + }, + "ssoClientSecretKeyVaultPath": { + "type": "string", + "description": "Path to Azure KeyVault storing the secret used for communication to ADFS." + }, + "ssoSecretType": { + "enum": [ + "SharedKey", + "Certificate", + "SharedKeyInKeyVault", + "CertificateInKeyVault" + ], + "x-ms-enum": { + "name": "SSOSecretType", + "modelAsString": true + }, + "type": "string", + "description": "The type of single sign on Secret Type." + }, + "preferredAppGroupType": { + "enum": [ + "None", + "Desktop", + "RailApplications" + ], + "x-ms-enum": { + "name": "PreferredAppGroupType", + "modelAsString": true + }, + "type": "string", + "description": "The type of preferred application group type, default to Desktop Application Group", + "x-nullable": false + }, + "startVMOnConnect": { + "type": "boolean", + "description": "The flag to turn on/off StartVMOnConnect feature." + }, + "migrationRequest": { + "$ref": "#/definitions/MigrationRequestProperties", + "description": "The registration info of HostPool." + }, + "cloudPcResource": { + "type": "boolean", + "description": "Is cloud pc resource.", + "readOnly": true + } + } + }, + "HostPoolPatch": { + "type": "object", + "description": "HostPool properties that can be patched.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "tags to be updated" + }, + "properties": { + "description": "HostPool properties that can be patched.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/HostPoolPatchProperties" + } + } + }, + "HostPoolPatchProperties": { + "description": "Properties of HostPool.", + "type": "object", + "properties": { + "friendlyName": { + "type": "string", + "description": "Friendly name of HostPool." + }, + "description": { + "type": "string", + "description": "Description of HostPool." + }, + "customRdpProperty": { + "type": "string", + "description": "Custom rdp property of HostPool." + }, + "maxSessionLimit": { + "type": "integer", + "description": "The max session limit of HostPool." + }, + "personalDesktopAssignmentType": { + "enum": [ + "Automatic", + "Direct" + ], + "x-ms-enum": { + "name": "PersonalDesktopAssignmentType", + "modelAsString": true + }, + "type": "string", + "description": "PersonalDesktopAssignment type for HostPool." + }, + "loadBalancerType": { + "enum": [ + "BreadthFirst", + "DepthFirst", + "Persistent" + ], + "x-ms-enum": { + "name": "LoadBalancerType", + "modelAsString": true + }, + "type": "string", + "description": "The type of the load balancer." + }, + "ring": { + "type": "integer", + "description": "The ring number of HostPool." + }, + "validationEnvironment": { + "type": "boolean", + "description": "Is validation environment." + }, + "registrationInfo": { + "$ref": "#/definitions/RegistrationInfoPatch", + "description": "The registration info of HostPool." + }, + "vmTemplate": { + "type": "string", + "description": "VM template for sessionhosts configuration within hostpool." + }, + "ssoadfsAuthority": { + "type": "string", + "description": "URL to customer ADFS server for signing WVD SSO certificates." + }, + "ssoClientId": { + "type": "string", + "description": "ClientId for the registered Relying Party used to issue WVD SSO certificates." + }, + "ssoClientSecretKeyVaultPath": { + "type": "string", + "description": "Path to Azure KeyVault storing the secret used for communication to ADFS." + }, + "ssoSecretType": { + "enum": [ + "SharedKey", + "Certificate", + "SharedKeyInKeyVault", + "CertificateInKeyVault" + ], + "x-ms-enum": { + "name": "SSOSecretType", + "modelAsString": true + }, + "type": "string", + "description": "The type of single sign on Secret Type." + }, + "preferredAppGroupType": { + "enum": [ + "None", + "Desktop", + "RailApplications" + ], + "x-ms-enum": { + "name": "PreferredAppGroupType", + "modelAsString": true + }, + "type": "string", + "description": "The type of preferred application group type, default to Desktop Application Group" + }, + "startVMOnConnect": { + "type": "boolean", + "description": "The flag to turn on/off StartVMOnConnect feature." + } + } + }, + "RegistrationInfo": { + "description": "Represents a RegistrationInfo definition.", + "type": "object", + "properties": { + "expirationTime": { + "format": "date-time", + "type": "string", + "description": "Expiration time of registration token." + }, + "token": { + "type": "string", + "description": "The registration token base64 encoded string." + }, + "registrationTokenOperation": { + "enum": [ + "Delete", + "None", + "Update" + ], + "x-ms-enum": { + "name": "RegistrationTokenOperation", + "modelAsString": true + }, + "type": "string", + "description": "The type of resetting the token.", + "x-nullable": false + } + } + }, + "RegistrationInfoPatch": { + "description": "Represents a RegistrationInfo definition.", + "type": "object", + "properties": { + "expirationTime": { + "format": "date-time", + "type": "string", + "description": "Expiration time of registration token." + }, + "registrationTokenOperation": { + "enum": [ + "Delete", + "None", + "Update" + ], + "x-ms-enum": { + "name": "RegistrationTokenOperation", + "modelAsString": true + }, + "type": "string", + "description": "The type of resetting the token." + } + } + }, + "SendMessage": { + "description": "Represents message sent to a UserSession.", + "type": "object", + "properties": { + "messageTitle": { + "type": "string", + "description": "Title of message." + }, + "messageBody": { + "type": "string", + "description": "Body of message." + } + } + }, + "HostPoolList": { + "type": "object", + "title": "HostPoolList", + "description": "List of HostPool definitions.", + "properties": { + "value": { + "type": "array", + "description": "List of HostPool definitions.", + "items": { + "$ref": "#/definitions/HostPool" + } + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next page of results." + } + } + }, + "MSIXPackage": { + "description": "Schema for MSIX Package properties.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "required": [ + "properties" + ], + "properties": { + "properties": { + "description": "Detailed properties for MSIX Package", + "x-ms-client-flatten": true, + "$ref": "#/definitions/MSIXPackageProperties", + "x-nullable": false + } + } + }, + "MSIXPackageProperties": { + "description": "Schema for MSIX Package properties.", + "type": "object", + "properties": { + "imagePath": { + "type": "string", + "description": "VHD/CIM image path on Network Share.", + "x-nullable": false + }, + "packageName": { + "type": "string", + "description": "Package Name from appxmanifest.xml. ", + "x-nullable": false + }, + "packageFamilyName": { + "type": "string", + "description": "Package Family Name from appxmanifest.xml. Contains Package Name and Publisher name. ", + "x-nullable": false + }, + "displayName": { + "type": "string", + "description": "User friendly Name to be displayed in the portal. ", + "x-nullable": true + }, + "packageRelativePath": { + "type": "string", + "description": "Relative Path to the package inside the image. ", + "x-nullable": false + }, + "isRegularRegistration": { + "type": "boolean", + "description": "Specifies how to register Package in feed.", + "x-nullable": false + }, + "isActive": { + "type": "boolean", + "description": "Make this version of the package the active one across the hostpool. ", + "x-nullable": false + }, + "packageDependencies": { + "type": "array", + "description": "List of package dependencies. ", + "items": { + "$ref": "#/definitions/MsixPackageDependencies" + } + }, + "version": { + "type": "string", + "description": "Package Version found in the appxmanifest.xml. ", + "x-nullable": false + }, + "lastUpdated": { + "format": "date-time", + "type": "string", + "description": "Date Package was last updated, found in the appxmanifest.xml. ", + "x-nullable": false + }, + "packageApplications": { + "type": "array", + "description": "List of package applications. ", + "items": { + "$ref": "#/definitions/MsixPackageApplications" + }, + "x-nullable": false + } + } + }, + "MSIXPackagePatch": { + "type": "object", + "description": "MSIX Package properties that can be patched.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "Detailed properties for MSIX Package", + "x-ms-client-flatten": true, + "$ref": "#/definitions/MSIXPackagePatchProperties" + } + } + }, + "MSIXPackagePatchProperties": { + "description": "MSIX Package properties that can be patched.", + "type": "object", + "properties": { + "isActive": { + "type": "boolean", + "description": "Set a version of the package to be active across hostpool. " + }, + "isRegularRegistration": { + "type": "boolean", + "description": "Set Registration mode. Regular or Delayed." + }, + "displayName": { + "type": "string", + "description": "Display name for MSIX Package." + } + } + }, + "MsixPackageApplications": { + "description": "Schema for MSIX Package Application properties.", + "type": "object", + "properties": { + "appId": { + "type": "string", + "description": "Package Application Id, found in appxmanifest.xml.", + "x-nullable": false + }, + "description": { + "type": "string", + "description": "Description of Package Application.", + "x-nullable": false + }, + "appUserModelID": { + "type": "string", + "description": "Used to activate Package Application. Consists of Package Name and ApplicationID. Found in appxmanifest.xml.", + "x-nullable": false + }, + "friendlyName": { + "type": "string", + "description": "User friendly name.", + "x-nullable": false + }, + "iconImageName": { + "type": "string", + "description": "User friendly name.", + "x-nullable": false + }, + "rawIcon": { + "type": "string", + "format": "byte", + "description": "the icon a 64 bit string as a byte array." + }, + "rawPng": { + "type": "string", + "format": "byte", + "description": "the icon a 64 bit string as a byte array." + } + } + }, + "MsixPackageDependencies": { + "description": "Schema for MSIX Package Dependencies properties.", + "type": "object", + "properties": { + "dependencyName": { + "type": "string", + "description": "Name of package dependency.", + "x-nullable": false + }, + "publisher": { + "type": "string", + "description": "Name of dependency publisher.", + "x-nullable": false + }, + "minVersion": { + "type": "string", + "description": "Dependency version required.", + "x-nullable": false + } + } + }, + "MSIXPackageList": { + "type": "object", + "title": "MsixPackageList", + "description": "List of MSIX Package definitions.", + "properties": { + "value": { + "type": "array", + "description": "List of MSIX Package definitions.", + "items": { + "$ref": "#/definitions/MSIXPackage" + } + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next page of results." + } + } + }, + "Application": { + "description": "Schema for Application properties.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "required": [ + "properties" + ], + "properties": { + "properties": { + "description": "Detailed properties for Application", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationProperties", + "x-nullable": false + } + } + }, + "ApplicationProperties": { + "description": "Schema for Application properties.", + "type": "object", + "required": [ + "commandLineSetting" + ], + "properties": { + "objectId": { + "type": "string", + "description": "ObjectId of Application. (internal use)", + "readOnly": true + }, + "description": { + "type": "string", + "description": "Description of Application." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of Application." + }, + "filePath": { + "type": "string", + "description": "Specifies a path for the executable file for the application." + }, + "msixPackageFamilyName": { + "type": "string", + "description": "Specifies the package family name for MSIX applications", + "x-nullable": true, + "x-ms-mutability": [ + "create", + "read" + ] + }, + "msixPackageApplicationId": { + "type": "string", + "description": "Specifies the package application Id for MSIX applications", + "x-nullable": true, + "x-ms-mutability": [ + "create", + "read" + ] + }, + "applicationType": { + "enum": [ + "InBuilt", + "MsixApplication" + ], + "x-ms-enum": { + "name": "RemoteApplicationType", + "modelAsString": true + }, + "type": "string", + "description": "Resource Type of Application.", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "commandLineSetting": { + "enum": [ + "DoNotAllow", + "Allow", + "Require" + ], + "x-ms-enum": { + "name": "CommandLineSetting", + "modelAsString": true + }, + "type": "string", + "description": "Specifies whether this published application can be launched with command line arguments provided by the client, command line arguments specified at publish time, or no command line arguments at all.", + "x-nullable": false + }, + "commandLineArguments": { + "type": "string", + "description": "Command Line Arguments for Application." + }, + "showInPortal": { + "type": "boolean", + "description": "Specifies whether to show the RemoteApp program in the RD Web Access server." + }, + "iconPath": { + "type": "string", + "description": "Path to icon." + }, + "iconIndex": { + "type": "integer", + "description": "Index of the icon." + }, + "iconHash": { + "readOnly": true, + "type": "string", + "description": "Hash of the icon." + }, + "iconContent": { + "readOnly": true, + "type": "string", + "format": "byte", + "description": "the icon a 64 bit string as a byte array." + } + } + }, + "ApplicationList": { + "type": "object", + "title": "ApplicationList", + "description": "List of Application definitions.", + "properties": { + "value": { + "type": "array", + "description": "List of Application definitions.", + "items": { + "$ref": "#/definitions/Application" + } + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next page of results." + } + } + }, + "ApplicationPatch": { + "type": "object", + "description": "Application properties that can be patched.", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "tags to be updated" + }, + "properties": { + "description": "Detailed properties for Application", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationPatchProperties" + } + } + }, + "ApplicationPatchProperties": { + "description": "Application properties that can be patched.", + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "Description of Application." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of Application." + }, + "filePath": { + "type": "string", + "description": "Specifies a path for the executable file for the application." + }, + "commandLineSetting": { + "enum": [ + "DoNotAllow", + "Allow", + "Require" + ], + "x-ms-enum": { + "name": "CommandLineSetting", + "modelAsString": true + }, + "type": "string", + "description": "Specifies whether this published application can be launched with command line arguments provided by the client, command line arguments specified at publish time, or no command line arguments at all." + }, + "commandLineArguments": { + "type": "string", + "description": "Command Line Arguments for Application." + }, + "showInPortal": { + "type": "boolean", + "description": "Specifies whether to show the RemoteApp program in the RD Web Access server." + }, + "iconPath": { + "type": "string", + "description": "Path to icon." + }, + "iconIndex": { + "type": "integer", + "description": "Index of the icon." + }, + "msixPackageFamilyName": { + "type": "string", + "description": "Specifies the package family name for MSIX applications", + "x-nullable": true + }, + "msixPackageApplicationId": { + "type": "string", + "description": "Specifies the package application Id for MSIX applications", + "x-nullable": true + }, + "applicationType": { + "enum": [ + "InBuilt", + "MsixApplication" + ], + "x-ms-enum": { + "name": "RemoteApplicationType", + "modelAsString": true + }, + "type": "string", + "description": "Resource Type of Application." + } + } + }, + "Desktop": { + "description": "Schema for Desktop properties.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "Detailed properties for Desktop", + "x-ms-client-flatten": true, + "$ref": "#/definitions/DesktopProperties" + } + } + }, + "DesktopProperties": { + "description": "Schema for Desktop properties.", + "type": "object", + "properties": { + "objectId": { + "type": "string", + "description": "ObjectId of Desktop. (internal use)", + "readOnly": true + }, + "description": { + "type": "string", + "description": "Description of Desktop." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of Desktop." + }, + "iconHash": { + "readOnly": true, + "type": "string", + "description": "Hash of the icon." + }, + "iconContent": { + "readOnly": true, + "type": "string", + "format": "byte", + "description": "The icon a 64 bit string as a byte array." + } + } + }, + "DesktopList": { + "type": "object", + "title": "DesktopList", + "description": "List of Desktop definitions.", + "properties": { + "value": { + "type": "array", + "description": "List of Desktop definitions.", + "items": { + "$ref": "#/definitions/Desktop" + } + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next page of results." + } + } + }, + "DesktopPatch": { + "type": "object", + "description": "Desktop properties that can be patched.", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "tags to be updated" + }, + "properties": { + "description": "Detailed properties for Desktop", + "x-ms-client-flatten": true, + "$ref": "#/definitions/DesktopPatchProperties" + } + } + }, + "DesktopPatchProperties": { + "description": "Desktop properties that can be patched.", + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "Description of Desktop." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of Desktop." + } + } + }, + "StartMenuItemProperties": { + "description": "Schema for StartMenuItem properties.", + "type": "object", + "properties": { + "appAlias": { + "type": "string", + "description": "Alias of StartMenuItem." + }, + "filePath": { + "type": "string", + "description": "Path to the file of StartMenuItem." + }, + "commandLineArguments": { + "type": "string", + "description": "Command line arguments for StartMenuItem." + }, + "iconPath": { + "type": "string", + "description": "Path to the icon." + }, + "iconIndex": { + "type": "integer", + "description": "Index of the icon." + } + } + }, + "StartMenuItem": { + "type": "object", + "description": "Represents a StartMenuItem definition.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "Detailed properties for StartMenuItem", + "x-ms-client-flatten": true, + "$ref": "#/definitions/StartMenuItemProperties" + } + } + }, + "StartMenuItemList": { + "type": "object", + "title": "StartMenuItemList", + "description": "List of StartMenuItem definitions.", + "properties": { + "value": { + "type": "array", + "description": "List of StartMenuItem definitions.", + "items": { + "$ref": "#/definitions/StartMenuItem" + } + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next page of results." + } + } + }, + "ExpandMsixImageProperties": { + "description": "Schema for Expand MSIX Image properties.", + "type": "object", + "properties": { + "packageAlias": { + "type": "string", + "description": "Alias of MSIX Package." + }, + "imagePath": { + "type": "string", + "description": "VHD/CIM image path on Network Share.", + "x-nullable": false + }, + "packageName": { + "type": "string", + "description": "Package Name from appxmanifest.xml. ", + "x-nullable": false + }, + "packageFamilyName": { + "type": "string", + "description": "Package Family Name from appxmanifest.xml. Contains Package Name and Publisher name. ", + "x-nullable": false + }, + "packageFullName": { + "type": "string", + "description": "Package Full Name from appxmanifest.xml. ", + "x-nullable": false + }, + "displayName": { + "type": "string", + "description": "User friendly Name to be displayed in the portal. ", + "x-nullable": true + }, + "packageRelativePath": { + "type": "string", + "description": "Relative Path to the package inside the image. ", + "x-nullable": false + }, + "isRegularRegistration": { + "type": "boolean", + "description": "Specifies how to register Package in feed.", + "x-nullable": false + }, + "isActive": { + "type": "boolean", + "description": "Make this version of the package the active one across the hostpool. ", + "x-nullable": false + }, + "packageDependencies": { + "type": "array", + "description": "List of package dependencies. ", + "items": { + "$ref": "#/definitions/MsixPackageDependencies" + }, + "x-nullable": true + }, + "version": { + "type": "string", + "description": "Package Version found in the appxmanifest.xml. ", + "x-nullable": false + }, + "lastUpdated": { + "format": "date-time", + "type": "string", + "description": "Date Package was last updated, found in the appxmanifest.xml. ", + "x-nullable": false + }, + "packageApplications": { + "type": "array", + "description": "List of package applications. ", + "items": { + "$ref": "#/definitions/MsixPackageApplications" + }, + "x-nullable": false + } + } + }, + "ExpandMsixImage": { + "type": "object", + "description": "Represents the definition of contents retrieved after expanding the MSIX Image. ", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "Detailed properties for ExpandMsixImage", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpandMsixImageProperties" + } + } + }, + "ExpandMsixImageList": { + "type": "object", + "title": "ExpandMsixImageList", + "description": "List of MSIX package properties retrieved from MSIX Image expansion.", + "properties": { + "value": { + "type": "array", + "description": "List of MSIX package properties from give MSIX Image.", + "items": { + "$ref": "#/definitions/ExpandMsixImage" + } + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next page of results." + } + } + }, + "MSIXImageURI": { + "description": "Represents URI referring to MSIX Image", + "type": "object", + "properties": { + "uri": { + "type": "string", + "description": "URI to Image" + } + } + }, + "SessionHost": { + "type": "object", + "description": "Represents a SessionHost definition.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "Detailed properties for SessionHost", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SessionHostProperties" + } + } + }, + "SessionHostProperties": { + "description": "Schema for SessionHost properties.", + "type": "object", + "properties": { + "objectId": { + "type": "string", + "description": "ObjectId of SessionHost. (internal use)", + "readOnly": true + }, + "lastHeartBeat": { + "format": "date-time", + "type": "string", + "description": "Last heart beat from SessionHost." + }, + "sessions": { + "type": "integer", + "description": "Number of sessions on SessionHost." + }, + "agentVersion": { + "type": "string", + "description": "Version of agent on SessionHost." + }, + "allowNewSession": { + "type": "boolean", + "description": "Allow a new session." + }, + "virtualMachineId": { + "type": "string", + "description": "Virtual Machine Id of SessionHost's underlying virtual machine.", + "readOnly": true + }, + "resourceId": { + "type": "string", + "description": "Resource Id of SessionHost's underlying virtual machine.", + "readOnly": true + }, + "assignedUser": { + "type": "string", + "description": "User assigned to SessionHost." + }, + "status": { + "enum": [ + "Available", + "Unavailable", + "Shutdown", + "Disconnected", + "Upgrading", + "UpgradeFailed", + "NoHeartbeat", + "NotJoinedToDomain", + "DomainTrustRelationshipLost", + "SxSStackListenerNotReady", + "FSLogixNotHealthy", + "NeedsAssistance" + ], + "x-ms-enum": { + "name": "Status", + "modelAsString": true, + "values": [ + { + "value": "Available", + "description": "Session Host has passed all the health checks and is available to handle connections." + }, + { + "value": "Unavailable", + "description": "Session Host is either turned off or has failed critical health checks which is causing service not to be able to route connections to this session host. Note this replaces previous 'NoHeartBeat' status." + }, + { + "value": "Shutdown", + "description": "Session Host is shutdown - RD Agent reported session host to be stopped or deallocated." + }, + { + "value": "Disconnected", + "description": "The Session Host is unavailable because it is currently disconnected." + }, + { + "value": "Upgrading", + "description": "Session Host is unavailable because currently an upgrade of RDAgent/side-by-side stack is in progress. Note: this state will be removed once the upgrade completes and the host is able to accept connections." + }, + { + "value": "UpgradeFailed", + "description": "Session Host is unavailable because the critical component upgrade (agent, side-by-side stack, etc.) failed." + }, + { + "value": "NoHeartbeat", + "description": "The Session Host is not heart beating." + }, + { + "value": "NotJoinedToDomain", + "description": "SessionHost is not joined to domain." + }, + { + "value": "DomainTrustRelationshipLost", + "description": "SessionHost's domain trust relationship lost" + }, + { + "value": "SxSStackListenerNotReady", + "description": "SxS stack installed on the SessionHost is not ready to receive connections." + }, + { + "value": "FSLogixNotHealthy", + "description": "FSLogix is in an unhealthy state on the session host." + }, + { + "value": "NeedsAssistance", + "description": "New status to inform admins that the health on their endpoint needs to be fixed. The connections might not fail, as these issues are not fatal." + } + ] + }, + "type": "string", + "description": "Status for a SessionHost." + }, + "statusTimestamp": { + "format": "date-time", + "type": "string", + "description": "The timestamp of the status.", + "readOnly": true + }, + "osVersion": { + "type": "string", + "description": "The version of the OS on the session host." + }, + "sxSStackVersion": { + "type": "string", + "description": "The version of the side by side stack on the session host." + }, + "updateState": { + "enum": [ + "Initial", + "Pending", + "Started", + "Succeeded", + "Failed" + ], + "x-ms-enum": { + "name": "UpdateState", + "modelAsString": true + }, + "type": "string", + "description": "Update state of a SessionHost." + }, + "lastUpdateTime": { + "format": "date-time", + "type": "string", + "description": "The timestamp of the last update.", + "readOnly": true + }, + "updateErrorMessage": { + "type": "string", + "description": "The error message." + }, + "sessionHostHealthCheckResults": { + "type": "array", + "readOnly": true, + "description": "List of SessionHostHealthCheckReports", + "items": { + "$ref": "#/definitions/SessionHostHealthCheckReport" + } + } + } + }, + "SessionHostHealthCheckReport": { + "type": "object", + "description": "The report for session host information.", + "properties": { + "healthCheckName": { + "enum": [ + "DomainJoinedCheck", + "DomainTrustCheck", + "FSLogixHealthCheck", + "SxSStackListenerCheck", + "UrlsAccessibleCheck", + "MonitoringAgentCheck", + "DomainReachable", + "WebRTCRedirectorCheck", + "SupportedEncryptionCheck", + "MetaDataServiceCheck", + "AppAttachHealthCheck" + ], + "x-ms-enum": { + "name": "HealthCheckName", + "modelAsString": true, + "values": [ + { + "value": "DomainJoinedCheck", + "description": "Verifies the SessionHost is joined to a domain. If this check fails is classified as fatal as no connection can succeed if the SessionHost is not joined to the domain." + }, + { + "value": "DomainTrustCheck", + "description": "Verifies the SessionHost is not experiencing domain trust issues that will prevent authentication on SessionHost at connection time when session is created. If this check fails is classified as fatal as no connection can succeed if we cannot reach the domain for authentication on the SessionHost." + }, + { + "value": "FSLogixHealthCheck", + "description": "Verifies the FSLogix service is up and running to make sure users' profiles are loaded in the session. If this check fails is classified as fatal as even if the connection can succeed, user experience is bad as the user profile cannot be loaded and user will get a temporary profile in the session." + }, + { + "value": "SxSStackListenerCheck", + "description": "Verifies that the SxS stack is up and running so connections can succeed. If this check fails is classified as fatal as no connection can succeed if the SxS stack is not ready." + }, + { + "value": "UrlsAccessibleCheck", + "description": "Verifies that the required WVD service and Geneva URLs are reachable from the SessionHost. These URLs are: RdTokenUri, RdBrokerURI, RdDiagnosticsUri and storage blob URLs for agent monitoring (geneva). If this check fails, it is non fatal and the machine still can service connections, main issue may be that monitoring agent is unable to store warm path data (logs, operations ...)." + }, + { + "value": "MonitoringAgentCheck", + "description": "Verifies that the required Geneva agent is running. If this check fails, it is non fatal and the machine still can service connections, main issue may be that monitoring agent is missing or running (possibly) older version." + }, + { + "value": "DomainReachable", + "description": "Verifies the domain the SessionHost is joined to is still reachable. If this check fails is classified as fatal as no connection can succeed if the domain the SessionHost is joined is not reachable at the time of connection." + }, + { + "value": "WebRTCRedirectorCheck", + "description": "Verifies whether the WebRTCRedirector component is healthy. The WebRTCRedirector component is used to optimize video and audio performance in Microsoft Teams. This checks whether the component is still running, and whether there is a higher version available. If this check fails, it is non fatal and the machine still can service connections, main issue may be the WebRTCRedirector component has to be restarted or updated." + }, + { + "value": "SupportedEncryptionCheck", + "description": "Verifies the value of SecurityLayer registration key. If the value is 0 (SecurityLayer.RDP) this check fails with Error code = NativeMethodErrorCode.E_FAIL and is fatal. If the value is 1 (SecurityLayer.Negotiate) this check fails with Error code = NativeMethodErrorCode.ERROR_SUCCESS and is non fatal." + }, + { + "value": "MetaDataServiceCheck", + "description": "Verifies the metadata service is accessible and return compute properties." + }, + { + "value": "AppAttachHealthCheck", + "description": "Verifies that the AppAttachService is healthy (there were no issues during package staging). The AppAttachService is used to enable the staging/registration (and eventual deregistration/destaging) of MSIX apps that have been set up by the tenant admin. This checks whether the component had any failures during package staging. Failures in staging will prevent some MSIX apps from working properly for the end user. If this check fails, it is non fatal and the machine still can service connections, main issue may be certain apps will not work for end-users." + } + ] + }, + "type": "string", + "description": "Represents the name of the health check operation performed.", + "readOnly": true + }, + "healthCheckResult": { + "enum": [ + "Unknown", + "HealthCheckSucceeded", + "HealthCheckFailed", + "SessionHostShutdown" + ], + "x-ms-enum": { + "name": "HealthCheckResult", + "modelAsString": true, + "values": [ + { + "value": "Unknown", + "description": "Health check result is not currently known." + }, + { + "value": "HealthCheckSucceeded", + "description": "Health check passed." + }, + { + "value": "HealthCheckFailed", + "description": "Health check failed." + }, + { + "value": "SessionHostShutdown", + "description": "We received a Shutdown notification." + } + ] + }, + "type": "string", + "description": "Represents the Health state of the health check we performed.", + "readOnly": true + }, + "additionalFailureDetails": { + "$ref": "#/definitions/SessionHostHealthCheckFailureDetails", + "description": "Additional detailed information on the failure.", + "readOnly": true + } + } + }, + "SessionHostHealthCheckFailureDetails": { + "type": "object", + "description": "Contains details on the failure.", + "properties": { + "message": { + "type": "string", + "description": "Failure message: hints on what is wrong and how to recover.", + "readOnly": true + }, + "errorCode": { + "type": "integer", + "format": "int32", + "description": "Error code corresponding for the failure.", + "readOnly": true + }, + "lastHealthCheckDateTime": { + "format": "date-time", + "type": "string", + "description": "The timestamp of the last update.", + "readOnly": true + } + } + }, + "SessionHostPatch": { + "type": "object", + "description": "SessionHost properties that can be patched.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "Detailed properties for SessionHost", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SessionHostPatchProperties" + } + } + }, + "SessionHostPatchProperties": { + "description": "SessionHost properties that can be patched.", + "type": "object", + "properties": { + "allowNewSession": { + "type": "boolean", + "description": "Allow a new session." + }, + "assignedUser": { + "type": "string", + "description": "User assigned to SessionHost." + } + } + }, + "SessionHostList": { + "type": "object", + "title": "SessionHostList", + "description": "List of SessionHost definitions.", + "properties": { + "value": { + "type": "array", + "description": "List of SessionHost definitions.", + "items": { + "$ref": "#/definitions/SessionHost" + } + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next page of results." + } + } + }, + "UserSession": { + "type": "object", + "description": "Represents a UserSession definition.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "Detailed properties for UserSession", + "x-ms-client-flatten": true, + "$ref": "#/definitions/UserSessionProperties" + } + } + }, + "UserSessionProperties": { + "description": "Schema for UserSession properties.", + "type": "object", + "properties": { + "objectId": { + "type": "string", + "description": "ObjectId of user session. (internal use)", + "readOnly": true + }, + "userPrincipalName": { + "type": "string", + "description": "The user principal name." + }, + "applicationType": { + "enum": [ + "RemoteApp", + "Desktop" + ], + "x-ms-enum": { + "name": "ApplicationType", + "modelAsString": true + }, + "type": "string", + "description": "Application type of application." + }, + "sessionState": { + "enum": [ + "Unknown", + "Active", + "Disconnected", + "Pending", + "LogOff", + "UserProfileDiskMounted" + ], + "x-ms-enum": { + "name": "SessionState", + "modelAsString": true + }, + "type": "string", + "description": "State of user session." + }, + "activeDirectoryUserName": { + "type": "string", + "description": "The active directory user name." + }, + "createTime": { + "format": "date-time", + "type": "string", + "description": "The timestamp of the user session create." + } + } + }, + "UserSessionList": { + "type": "object", + "title": "UserSessionList", + "description": "List of UserSession definitions.", + "properties": { + "value": { + "type": "array", + "description": "List of UserSession definitions.", + "items": { + "$ref": "#/definitions/UserSession" + } + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next page of results." + } + } + }, + "ScalingPlan": { + "type": "object", + "title": "ScalingPlan", + "description": "Represents a scaling plan definition.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ResourceModelWithAllowedPropertySet" + } + ], + "properties": { + "properties": { + "description": "Detailed properties for scaling plan.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ScalingPlanProperties" + } + } + }, + "ScalingPlanProperties": { + "type": "object", + "description": "Scaling plan properties.", + "properties": { + "objectId": { + "type": "string", + "description": "ObjectId of scaling plan. (internal use)", + "readOnly": true + }, + "description": { + "type": "string", + "description": "Description of scaling plan." + }, + "friendlyName": { + "type": "string", + "description": "User friendly name of scaling plan." + }, + "timeZone": { + "type": "string", + "description": "Timezone of the scaling plan." + }, + "hostPoolType": { + "enum": [ + "Personal", + "Pooled", + "BYODesktop" + ], + "x-ms-enum": { + "name": "HostPoolType", + "modelAsString": true, + "values": [ + { + "value": "Personal", + "description": "Users will be assigned a SessionHost either by administrators (PersonalDesktopAssignmentType = Direct) or upon connecting to the pool (PersonalDesktopAssignmentType = Automatic). They will always be redirected to their assigned SessionHost." + }, + { + "value": "Pooled", + "description": "Users get a new (random) SessionHost every time it connects to the HostPool." + }, + { + "value": "BYODesktop", + "description": "Users assign their own machines, load balancing logic remains the same as Personal. PersonalDesktopAssignmentType must be Direct." + } + ] + }, + "type": "string", + "description": "HostPool type for desktop.", + "x-nullable": false + }, + "exclusionTag": { + "type": "string", + "description": "Exclusion tag for scaling plan." + }, + "schedules": { + "type": "array", + "description": "List of ScalingSchedule definitions.", + "items": { + "$ref": "#/definitions/ScalingSchedule" + } + }, + "hostPoolReferences": { + "type": "array", + "description": "List of ScalingHostPoolReference definitions.", + "items": { + "$ref": "#/definitions/ScalingHostPoolReference" + } + } + } + }, + "ScalingSchedule": { + "description": "Scaling plan schedule.", + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of the scaling schedule." + }, + "daysOfWeek": { + "type": "array", + "description": "Set of days of the week on which this schedule is active.", + "items": { + "enum": [ + "Sunday", + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday" + ], + "type": "string" + } + }, + "rampUpStartTime": { + "format": "date-time", + "type": "string", + "description": "Starting time for ramp up period." + }, + "rampUpLoadBalancingAlgorithm": { + "enum": [ + "BreadthFirst", + "DepthFirst" + ], + "x-ms-enum": { + "name": "SessionHostLoadBalancingAlgorithm", + "modelAsString": true + }, + "type": "string", + "description": "Load balancing algorithm for ramp up period." + }, + "rampUpMinimumHostsPct": { + "type": "integer", + "format": "int32", + "minimum": 0, + "maximum": 100, + "description": "Minimum host percentage for ramp up period." + }, + "rampUpCapacityThresholdPct": { + "type": "integer", + "format": "int32", + "minimum": 0, + "maximum": 100, + "description": "Capacity threshold for ramp up period." + }, + "peakStartTime": { + "format": "date-time", + "type": "string", + "description": "Starting time for peak period." + }, + "peakLoadBalancingAlgorithm": { + "enum": [ + "BreadthFirst", + "DepthFirst" + ], + "x-ms-enum": { + "name": "SessionHostLoadBalancingAlgorithm", + "modelAsString": true + }, + "type": "string", + "description": "Load balancing algorithm for peak period." + }, + "rampDownStartTime": { + "format": "date-time", + "type": "string", + "description": "Starting time for ramp down period." + }, + "rampDownLoadBalancingAlgorithm": { + "enum": [ + "BreadthFirst", + "DepthFirst" + ], + "x-ms-enum": { + "name": "SessionHostLoadBalancingAlgorithm", + "modelAsString": true + }, + "type": "string", + "description": "Load balancing algorithm for ramp down period." + }, + "rampDownMinimumHostsPct": { + "type": "integer", + "format": "int32", + "minimum": 0, + "maximum": 100, + "description": "Minimum host percentage for ramp down period." + }, + "rampDownCapacityThresholdPct": { + "type": "integer", + "format": "int32", + "minimum": 0, + "maximum": 100, + "description": "Capacity threshold for ramp down period." + }, + "rampDownForceLogoffUsers": { + "type": "boolean", + "description": "Should users be logged off forcefully from hosts." + }, + "rampDownStopHostsWhen": { + "enum": [ + "ZeroSessions", + "ZeroActiveSessions" + ], + "x-ms-enum": { + "name": "StopHostsWhen", + "modelAsString": true + }, + "type": "string", + "description": "Specifies when to stop hosts during ramp down period." + }, + "rampDownWaitTimeMinutes": { + "type": "integer", + "format": "int32", + "description": "Number of minutes to wait to stop hosts during ramp down period." + }, + "rampDownNotificationMessage": { + "type": "string", + "description": "Notification message for users during ramp down period." + }, + "offPeakStartTime": { + "format": "date-time", + "type": "string", + "description": "Starting time for off-peak period." + }, + "offPeakLoadBalancingAlgorithm": { + "enum": [ + "BreadthFirst", + "DepthFirst" + ], + "x-ms-enum": { + "name": "SessionHostLoadBalancingAlgorithm", + "modelAsString": true + }, + "type": "string", + "description": "Load balancing algorithm for off-peak period." + } + } + }, + "ScalingHostPoolReference": { + "description": "Scaling plan reference to hostpool.", + "type": "object", + "properties": { + "hostPoolArmPath": { + "type": "string", + "description": "Arm path of referenced hostpool." + }, + "scalingPlanEnabled": { + "type": "boolean", + "description": "Is the scaling plan enabled for this hostpool." + } + } + }, + "ScalingPlanList": { + "type": "object", + "title": "ScalingPlanList", + "description": "List of scaling plan definitions.", + "properties": { + "value": { + "type": "array", + "description": "List of scaling plan definitions.", + "items": { + "$ref": "#/definitions/ScalingPlan" + } + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next page of results." + } + } + }, + "ScalingPlanPatch": { + "type": "object", + "description": "Scaling plan properties that can be patched.", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "tags to be updated" + }, + "properties": { + "description": "Detailed properties for scaling plan", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ScalingPlanPatchProperties" + } + } + }, + "ScalingPlanPatchProperties": { + "type": "object", + "description": "Scaling plan properties.", + "properties": { + "description": { + "type": "string", + "description": "Description of scaling plan." + }, + "friendlyName": { + "type": "string", + "description": "User friendly name of scaling plan." + }, + "timeZone": { + "type": "string", + "description": "Timezone of the scaling plan." + }, + "hostPoolType": { + "enum": [ + "Personal", + "Pooled", + "BYODesktop" + ], + "x-ms-enum": { + "name": "HostPoolType", + "modelAsString": true, + "values": [ + { + "value": "Personal", + "description": "Users will be assigned a SessionHost either by administrators (PersonalDesktopAssignmentType = Direct) or upon connecting to the pool (PersonalDesktopAssignmentType = Automatic). They will always be redirected to their assigned SessionHost." + }, + { + "value": "Pooled", + "description": "Users get a new (random) SessionHost every time it connects to the HostPool." + }, + { + "value": "BYODesktop", + "description": "Users assign their own machines, load balancing logic remains the same as Personal. PersonalDesktopAssignmentType must be Direct." + } + ] + }, + "type": "string", + "description": "HostPool type for desktop.", + "x-nullable": false + }, + "exclusionTag": { + "type": "string", + "description": "Exclusion tag for scaling plan." + }, + "schedules": { + "type": "array", + "description": "List of ScalingSchedule definitions.", + "items": { + "$ref": "#/definitions/ScalingSchedule" + } + }, + "hostPoolReferences": { + "type": "array", + "description": "List of ScalingHostPoolReference definitions.", + "items": { + "$ref": "#/definitions/ScalingHostPoolReference" + } + } + } + }, + "MigrationRequestProperties": { + "type": "object", + "description": "Properties for arm migration.", + "properties": { + "operation": { + "enum": [ + "Start", + "Revoke", + "Complete", + "Hide", + "Unhide" + ], + "x-ms-enum": { + "name": "Operation", + "modelAsString": true, + "values": [ + { + "value": "Start", + "description": "Start the migration." + }, + { + "value": "Revoke", + "description": "Revoke the migration." + }, + { + "value": "Complete", + "description": "Complete the migration." + }, + { + "value": "Hide", + "description": "Hide the hostpool." + }, + { + "value": "Unhide", + "description": "Unhide the hostpool." + } + ] + }, + "type": "string", + "description": "The type of operation for migration." + }, + "migrationPath": { + "type": "string", + "description": "The path to the legacy object to migrate." + } + } + } + }, + "parameters": { + "HostPoolNameParameter": { + "name": "hostPoolName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the host pool within the specified resource group", + "maxLength": 64, + "minLength": 3, + "x-ms-parameter-location": "method" + }, + "MSIXPackageFullNameParameter": { + "name": "msixPackageFullName", + "in": "path", + "required": true, + "type": "string", + "description": "The version specific package full name of the MSIX package within specified hostpool", + "maxLength": 100, + "minLength": 3, + "x-ms-parameter-location": "method" + }, + "ApplicationGroupNameParameter": { + "name": "applicationGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application group", + "maxLength": 64, + "minLength": 3, + "x-ms-parameter-location": "method" + }, + "ApplicationNameParameter": { + "name": "applicationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application within the specified application group", + "maxLength": 24, + "minLength": 3, + "x-ms-parameter-location": "method" + }, + "DesktopNameParameter": { + "name": "desktopName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the desktop within the specified desktop group", + "maxLength": 24, + "minLength": 3, + "x-ms-parameter-location": "method" + }, + "WorkspaceNameParameter": { + "name": "workspaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the workspace", + "maxLength": 64, + "minLength": 3, + "x-ms-parameter-location": "method" + }, + "SessionHostNameParameter": { + "name": "sessionHostName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the session host within the specified host pool", + "maxLength": 48, + "minLength": 3, + "x-ms-parameter-location": "method" + }, + "UserSessionIdParameter": { + "name": "userSessionId", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the user session within the specified session host", + "maxLength": 24, + "minLength": 1, + "x-ms-parameter-location": "method" + }, + "StartMenuItemNameParameter": { + "name": "startMenuItemName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the start menu item within the specified host pool", + "maxLength": 24, + "minLength": 3, + "x-ms-parameter-location": "method" + }, + "MSIXImageURIParameter": { + "name": "msixImageURI", + "in": "path", + "required": true, + "type": "string", + "description": "URI to the MSIX Image (VHD/CIM).", + "maxLength": 100, + "minLength": 3, + "x-ms-parameter-location": "method" + }, + "ScalingPlanNameParameter": { + "name": "scalingPlanName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the scaling plan.", + "maxLength": 24, + "minLength": 3, + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/ApplicationGroup_Create.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/ApplicationGroup_Create.json new file mode 100644 index 000000000000..f64f0ebe0486 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/ApplicationGroup_Create.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "api-version": "2021-03-09-preview", + "applicationGroup": { + "location": "centralus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "applicationGroupType": "RemoteApp", + "migrationRequest": { + "migrationPath": "TenantGroups/{defaultV1TenantGroup.Name}/Tenants/{defaultV1Tenant.Name}/HostPools/{sessionHostPool.Name}", + "operation": "Start" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "applicationGroup1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1", + "type": "Microsoft.DesktopVirtualization/applicationGroups", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "workspaceArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "applicationGroupType": "RemoteApp", + "cloudPcResource": false, + "migrationRequest": { + "migrationPath": "TenantGroups/{defaultV1TenantGroup.Name}/Tenants/{defaultV1Tenant.Name}/HostPools/{sessionHostPool.Name}", + "operation": "Start" + } + } + } + }, + "201": { + "body": { + "name": "applicationGroup1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1", + "type": "Microsoft.DesktopVirtualization/applicationGroups", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "workspaceArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "applicationGroupType": "RemoteApp", + "cloudPcResource": false, + "migrationRequest": { + "migrationPath": "TenantGroups/{defaultV1TenantGroup.Name}/Tenants/{defaultV1Tenant.Name}/HostPools/{sessionHostPool.Name}", + "operation": "Start" + } + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/ApplicationGroup_Delete.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/ApplicationGroup_Delete.json new file mode 100644 index 000000000000..b892db7b47e8 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/ApplicationGroup_Delete.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "api-version": "2021-03-09-preview" + }, + "responses": { + "200": { + "name": "applicationGroup1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1", + "type": "Microsoft.DesktopVirtualization/applicationGroups", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "workspaceArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "applicationGroupType": "RemoteApp", + "cloudPcResource": false + } + }, + "204": {} + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/ApplicationGroup_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/ApplicationGroup_Get.json new file mode 100644 index 000000000000..a5c80c3c3d92 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/ApplicationGroup_Get.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "api-version": "2021-03-09-preview" + }, + "responses": { + "200": { + "body": { + "name": "applicationGroup1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1", + "type": "Microsoft.DesktopVirtualization/applicationGroups", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "workspaceArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "applicationGroupType": "RemoteApp", + "cloudPcResource": false + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/ApplicationGroup_ListByResourceGroup.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/ApplicationGroup_ListByResourceGroup.json new file mode 100644 index 000000000000..7edf762346db --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/ApplicationGroup_ListByResourceGroup.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "api-version": "2021-03-09-preview", + "$filter": "applicationGroupType eq 'RailApplication'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "applicationGroup1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1", + "type": "Microsoft.DesktopVirtualization/applicationGroups", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "workspaceArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "applicationGroupType": "RemoteApp", + "cloudPcResource": false + } + }, + { + "name": "applicationGroup2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup2", + "type": "Microsoft.DesktopVirtualization/applicationGroups", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "workspaceArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "applicationGroupType": "RemoteApp", + "cloudPcResource": false + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/ApplicationGroup_ListBySubscription.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/ApplicationGroup_ListBySubscription.json new file mode 100644 index 000000000000..ffbf4ac44305 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/ApplicationGroup_ListBySubscription.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "api-version": "2021-03-09-preview", + "$filter": "applicationGroupType eq 'RailApplication'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "applicationGroup1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1", + "type": "Microsoft.DesktopVirtualization/applicationGroups", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "workspaceArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "applicationGroupType": "RemoteApp", + "cloudPcResource": false + } + }, + { + "name": "applicationGroup2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup2", + "type": "Microsoft.DesktopVirtualization/applicationGroups", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "workspaceArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "applicationGroupType": "RemoteApp", + "cloudPcResource": false + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/ApplicationGroup_Update.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/ApplicationGroup_Update.json new file mode 100644 index 000000000000..cbbeccdf3f93 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/ApplicationGroup_Update.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "api-version": "2021-03-09-preview", + "applicationGroup": { + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly" + } + } + }, + "responses": { + "200": { + "body": { + "name": "applicationGroup1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1", + "type": "Microsoft.DesktopVirtualization/applicationGroups", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "workspaceArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "applicationGroupType": "RemoteApp", + "cloudPcResource": false + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/Application_Create.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/Application_Create.json new file mode 100644 index 000000000000..074d1976b559 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/Application_Create.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "applicationName": "application1", + "api-version": "2021-03-09-preview", + "application": { + "properties": { + "description": "des1", + "friendlyName": "friendly", + "filePath": "path", + "commandLineSetting": "Allow", + "commandLineArguments": "arguments", + "showInPortal": true, + "iconPath": "icon", + "iconIndex": 1 + } + } + }, + "responses": { + "200": { + "body": { + "name": "applicationGroup1/application1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/applications/application1", + "type": "Microsoft.DesktopVirtualization/applicationGroups/applications", + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "filePath": "path", + "commandLineSetting": "Allow", + "commandLineArguments": "arguments", + "showInPortal": true, + "iconPath": "icon", + "iconIndex": 1, + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA...", + "applicationType": "InBuilt", + "msixPackageFamilyName": null, + "msixPackageApplicationId": null + } + } + }, + "201": { + "body": { + "name": "applicationGroup1/application1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/applications/application1", + "type": "Microsoft.DesktopVirtualization/applicationGroups/applications", + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "filePath": "path", + "commandLineSetting": "Allow", + "commandLineArguments": "arguments", + "showInPortal": true, + "iconPath": "icon", + "iconIndex": 1, + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA...", + "applicationType": "InBuilt", + "msixPackageFamilyName": null, + "msixPackageApplicationId": null + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/Application_Delete.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/Application_Delete.json new file mode 100644 index 000000000000..db3b65547ac6 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/Application_Delete.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "applicationName": "application1", + "api-version": "2021-03-09-preview" + }, + "responses": { + "200": { + "name": "applicationGroup1/application1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/applications/application1", + "type": "Microsoft.DesktopVirtualization/applicationGroups/applications", + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "filePath": "path", + "commandLineSetting": "Allow", + "commandLineArguments": "arguments", + "showInPortal": true, + "iconPath": "icon", + "iconIndex": 1, + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA...", + "applicationType": "InBuilt", + "msixPackageFamilyName": null, + "msixPackageApplicationId": null + } + }, + "204": {} + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/Application_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/Application_Get.json new file mode 100644 index 000000000000..a708fba6438b --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/Application_Get.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "applicationName": "application1", + "api-version": "2021-03-09-preview" + }, + "responses": { + "200": { + "body": { + "name": "applicationGroup1/application1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/applications/application1", + "type": "Microsoft.DesktopVirtualization/applicationGroups/applications", + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "filePath": "path", + "commandLineSetting": "Allow", + "commandLineArguments": "arguments", + "showInPortal": true, + "iconPath": "icon", + "iconIndex": 1, + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA...", + "applicationType": "InBuilt", + "msixPackageFamilyName": null, + "msixPackageApplicationId": null + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/Application_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/Application_List.json new file mode 100644 index 000000000000..06e7b263dcfc --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/Application_List.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "api-version": "2021-03-09-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "applicationGroup1/application1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/applications/application1", + "type": "Microsoft.DesktopVirtualization/applicationGroups/applications", + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "filePath": "path", + "commandLineSetting": "Allow", + "commandLineArguments": "arguments", + "showInPortal": true, + "iconPath": "icon", + "iconIndex": 1, + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA...", + "applicationType": "InBuilt", + "msixPackageFamilyName": null, + "msixPackageApplicationId": null + } + }, + { + "name": "applicationGroup1/application2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/applications/application2", + "type": "Microsoft.DesktopVirtualization/applicationGroups/applications", + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des2", + "friendlyName": "friendly", + "filePath": "path", + "commandLineSetting": "Allow", + "commandLineArguments": "arguments", + "showInPortal": true, + "iconPath": "icon", + "iconIndex": 1, + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA...", + "applicationType": "InBuilt", + "msixPackageFamilyName": null, + "msixPackageApplicationId": null + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/Application_Update.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/Application_Update.json new file mode 100644 index 000000000000..eb5eb28743cd --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/Application_Update.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "applicationName": "application1", + "api-version": "2021-03-09-preview", + "application": { + "properties": { + "description": "des1", + "friendlyName": "friendly", + "filePath": "path", + "commandLineSetting": "Allow", + "commandLineArguments": "arguments", + "showInPortal": true, + "iconPath": "icon", + "iconIndex": 1, + "applicationType": "InBuilt", + "msixPackageFamilyName": null, + "msixPackageApplicationId": null + } + } + }, + "responses": { + "200": { + "body": { + "name": "applicationGroup1/application1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/applications/application1", + "type": "Microsoft.DesktopVirtualization/applicationGroups/applications", + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "filePath": "path", + "commandLineSetting": "Allow", + "commandLineArguments": "arguments", + "showInPortal": true, + "iconPath": "icon", + "iconIndex": 1, + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA...", + "applicationType": "InBuilt", + "msixPackageFamilyName": null, + "msixPackageApplicationId": null + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/Desktop_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/Desktop_Get.json new file mode 100644 index 000000000000..b2cb9d6f94ef --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/Desktop_Get.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "desktopName": "SessionDesktop", + "api-version": "2021-03-09-preview" + }, + "responses": { + "200": { + "body": { + "name": "applicationGroup1/SessionDesktop", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/applications/SessionDesktop", + "type": "Microsoft.DesktopVirtualization/applicationGroups/desktops", + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA..." + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/Desktop_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/Desktop_List.json new file mode 100644 index 000000000000..f097eebf028d --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/Desktop_List.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "api-version": "2021-03-09-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "applicationGroup1/SessionDesktop", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/applications/SessionDesktop", + "type": "Microsoft.DesktopVirtualization/applicationGroups/desktops", + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA..." + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/Desktop_Update.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/Desktop_Update.json new file mode 100644 index 000000000000..c5b7b2f2e049 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/Desktop_Update.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "desktopName": "SessionDesktop", + "api-version": "2021-03-09-preview", + "desktop": { + "properties": { + "description": "des1", + "friendlyName": "friendly" + } + } + }, + "responses": { + "200": { + "body": { + "name": "applicationGroup1/SessionDesktop", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/desktops/SessionDesktop", + "type": "Microsoft.DesktopVirtualization/applicationGroups/desktops", + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA..." + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/HostPool_Create.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/HostPool_Create.json new file mode 100644 index 000000000000..11eb32cc37b5 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/HostPool_Create.json @@ -0,0 +1,123 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "api-version": "2021-03-09-preview", + "hostPool": { + "location": "centralus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "friendlyName": "friendly", + "description": "des1", + "hostPoolType": "Pooled", + "personalDesktopAssignmentType": "Automatic", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "registrationInfo": { + "expirationTime": "2020-10-01T14:01:54.9571247Z", + "registrationTokenOperation": "Update" + }, + "vmTemplate": "{json:json}", + "ssoadfsAuthority": "https://adfs", + "ssoClientId": "client", + "ssoClientSecretKeyVaultPath": "https://keyvault/secret", + "ssoSecretType": "SharedKey", + "preferredAppGroupType": "Desktop", + "startVMOnConnect": false, + "migrationRequest": { + "migrationPath": "TenantGroups/{defaultV1TenantGroup.Name}/Tenants/{defaultV1Tenant.Name}/HostPools/{sessionHostPool.Name}", + "operation": "Start" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "hostPool1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "type": "/Microsoft.DesktopVirtualization/hostPools", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "friendlyName": "friendly", + "description": "des1", + "hostPoolType": "Pooled", + "personalDesktopAssignmentType": "Automatic", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "validationEnvironment": null, + "ring": null, + "registrationInfo": { + "expirationTime": "2020-10-01T14:01:54.9571247Z", + "token": "token", + "registrationTokenOperation": "Update" + }, + "vmTemplate": "{json:json}", + "ssoadfsAuthority": "https://adfs", + "ssoClientId": "client", + "ssoClientSecretKeyVaultPath": "https://keyvault/secret", + "ssoSecretType": "SharedKey", + "preferredAppGroupType": "Desktop", + "startVMOnConnect": false, + "cloudPcResource": false, + "migrationRequest": { + "migrationPath": "TenantGroups/{defaultV1TenantGroup.Name}/Tenants/{defaultV1Tenant.Name}/HostPools/{sessionHostPool.Name}", + "operation": "Start" + } + } + } + }, + "201": { + "body": { + "name": "hostPool1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "type": "/Microsoft.DesktopVirtualization/hostPools", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "friendlyName": "friendly", + "description": "des1", + "hostPoolType": "Pooled", + "personalDesktopAssignmentType": "Automatic", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "validationEnvironment": null, + "ring": null, + "registrationInfo": { + "expirationTime": "2020-10-01T14:01:54.9571247Z", + "token": "token", + "registrationTokenOperation": "Update" + }, + "vmTemplate": "{json:json}", + "ssoadfsAuthority": "https://adfs", + "ssoClientId": "client", + "ssoClientSecretKeyVaultPath": "https://keyvault/secret", + "ssoSecretType": "SharedKey", + "preferredAppGroupType": "Desktop", + "startVMOnConnect": false, + "cloudPcResource": false, + "migrationRequest": { + "migrationPath": "TenantGroups/{defaultV1TenantGroup.Name}/Tenants/{defaultV1Tenant.Name}/HostPools/{sessionHostPool.Name}", + "operation": "Start" + } + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/HostPool_Delete.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/HostPool_Delete.json new file mode 100644 index 000000000000..a93f1dcfab2b --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/HostPool_Delete.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "api-version": "2021-03-09-preview", + "force": true + }, + "responses": { + "200": { + "name": "hostPool1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "type": "/Microsoft.DesktopVirtualization/hostPools", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "friendlyName": "friendly", + "description": "des1", + "hostPoolType": "Pooled", + "personalDesktopAssignmentType": "Automatic", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "validationEnvironment": null, + "ring": null, + "registrationInfo": { + "expirationTime": "2008-09-22T14:01:54.9571247Z", + "token": "token", + "registrationTokenOperation": "Update" + }, + "vmTemplate": "{json:json}", + "ssoadfsAuthority": "https://adfs", + "ssoClientId": "client", + "ssoClientSecretKeyVaultPath": "https://keyvault/secret", + "ssoSecretType": "SharedKey", + "startVMOnConnect": false, + "cloudPcResource": false + } + }, + "204": {} + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/HostPool_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/HostPool_Get.json new file mode 100644 index 000000000000..b72c472b7e6b --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/HostPool_Get.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "api-version": "2021-03-09-preview" + }, + "responses": { + "200": { + "body": { + "name": "hostPool1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "type": "/Microsoft.DesktopVirtualization/hostPools", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "friendlyName": "friendly", + "description": "des1", + "hostPoolType": "Pooled", + "personalDesktopAssignmentType": "Automatic", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "validationEnvironment": null, + "ring": null, + "registrationInfo": { + "expirationTime": "2008-09-22T14:01:54.9571247Z", + "token": "token", + "registrationTokenOperation": "Update" + }, + "vmTemplate": "{json:json}", + "ssoadfsAuthority": "https://adfs", + "ssoClientId": "client", + "ssoClientSecretKeyVaultPath": "https://keyvault/secret", + "ssoSecretType": "SharedKey", + "preferredAppGroupType": "Desktop", + "startVMOnConnect": false, + "cloudPcResource": false + } + } + }, + "default": { + "body": { + "error": { + "code": "hostPoolDoesNotExist", + "message": "Host Pool Does Not Exist" + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/HostPool_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/HostPool_List.json new file mode 100644 index 000000000000..401fb8f0cc74 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/HostPool_List.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "api-version": "2021-03-09-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "hostPool1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "type": "/Microsoft.DesktopVirtualization/hostPools", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "friendlyName": "friendly", + "description": "des1", + "hostPoolType": "Pooled", + "personalDesktopAssignmentType": "Automatic", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "validationEnvironment": null, + "ring": null, + "registrationInfo": { + "expirationTime": "2008-09-22T14:01:54.9571247Z", + "token": "token", + "registrationTokenOperation": "Update" + }, + "vmTemplate": "{json:json}", + "ssoadfsAuthority": "https://adfs", + "ssoClientId": "client", + "ssoClientSecretKeyVaultPath": "https://keyvault/secret", + "ssoSecretType": "SharedKey", + "preferredAppGroupType": "Desktop", + "startVMOnConnect": false, + "cloudPcResource": false + } + }, + { + "name": "hostPool2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool2", + "type": "/Microsoft.DesktopVirtualization/hostPools", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "friendlyName": "friendly", + "description": "des1", + "hostPoolType": "Pooled", + "personalDesktopAssignmentType": "Automatic", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "validationEnvironment": null, + "ring": null, + "registrationInfo": { + "expirationTime": "2008-09-22T14:01:54.9571247Z", + "token": "token", + "registrationTokenOperation": "Update" + }, + "vmTemplate": "{json:json}", + "ssoadfsAuthority": "https://adfs", + "ssoClientId": "client", + "ssoClientSecretKeyVaultPath": "https://keyvault/secret", + "ssoSecretType": "SharedKey", + "preferredAppGroupType": "Desktop", + "startVMOnConnect": false, + "cloudPcResource": false + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/HostPool_ListByResourceGroup.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/HostPool_ListByResourceGroup.json new file mode 100644 index 000000000000..c61ada889e82 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/HostPool_ListByResourceGroup.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "api-version": "2021-03-09-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "hostPool1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "type": "/Microsoft.DesktopVirtualization/hostPools", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "friendlyName": "friendly", + "description": "des1", + "hostPoolType": "Pooled", + "personalDesktopAssignmentType": "Automatic", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "validationEnvironment": null, + "ring": null, + "registrationInfo": { + "expirationTime": "2008-09-22T14:01:54.9571247Z", + "token": "token", + "registrationTokenOperation": "Update" + }, + "vmTemplate": "{json:json}", + "ssoadfsAuthority": "https://adfs", + "ssoClientId": "client", + "ssoClientSecretKeyVaultPath": "https://keyvault/secret", + "ssoSecretType": "SharedKey", + "preferredAppGroupType": "Desktop", + "startVMOnConnect": false, + "cloudPcResource": false + } + }, + { + "name": "hostPool2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool2", + "type": "/Microsoft.DesktopVirtualization/hostPools", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "friendlyName": "friendly", + "description": "des1", + "hostPoolType": "Pooled", + "personalDesktopAssignmentType": "Automatic", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "validationEnvironment": null, + "ring": null, + "registrationInfo": { + "expirationTime": "2008-09-22T14:01:54.9571247Z", + "token": "token", + "registrationTokenOperation": "Update" + }, + "vmTemplate": "{json:json}", + "ssoadfsAuthority": "https://adfs", + "ssoClientId": "client", + "ssoClientSecretKeyVaultPath": "https://keyvault/secret", + "ssoSecretType": "SharedKey", + "preferredAppGroupType": "Desktop", + "startVMOnConnect": false, + "cloudPcResource": false + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/HostPool_Update.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/HostPool_Update.json new file mode 100644 index 000000000000..497aa486e325 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/HostPool_Update.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "api-version": "2021-03-09-preview", + "hostPool": { + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "friendlyName": "friendly", + "description": "des1", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "personalDesktopAssignmentType": "Automatic", + "registrationInfo": { + "expirationTime": "2020-10-01T15:01:54.9571247Z", + "registrationTokenOperation": "Update" + }, + "vmTemplate": "{json:json}", + "ssoadfsAuthority": "https://adfs", + "ssoClientId": "client", + "ssoClientSecretKeyVaultPath": "https://keyvault/secret", + "ssoSecretType": "SharedKey", + "startVMOnConnect": false + } + } + }, + "responses": { + "200": { + "body": { + "name": "hostPool1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "type": "/Microsoft.DesktopVirtualization/hostPools", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "friendlyName": "friendly", + "description": "des1", + "hostPoolType": "Pooled", + "personalDesktopAssignmentType": "Automatic", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "validationEnvironment": null, + "ring": null, + "registrationInfo": { + "expirationTime": "2008-09-22T14:01:54.9571247Z", + "token": "token", + "registrationTokenOperation": "Update" + }, + "vmTemplate": "{json:json}", + "ssoadfsAuthority": "https://adfs", + "ssoClientId": "client", + "ssoClientSecretKeyVaultPath": "https://keyvault/secret", + "ssoSecretType": "SharedKey", + "preferredAppGroupType": "Desktop", + "startVMOnConnect": false, + "cloudPcResource": false + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/HostPools_RetrieveRegistrationToken_Post.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/HostPools_RetrieveRegistrationToken_Post.json new file mode 100644 index 000000000000..26b248e435d2 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/HostPools_RetrieveRegistrationToken_Post.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "api-version": "2021-03-09-preview" + }, + "responses": { + "200": { + "body": { + "expirationTime": "2008-09-22T14:01:54.9571247Z", + "token": "token", + "registrationTokenOperation": "Update" + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/MsixImage_Expand_Post.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/MsixImage_Expand_Post.json new file mode 100644 index 000000000000..fda6d644b482 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/MsixImage_Expand_Post.json @@ -0,0 +1,99 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostpool1", + "api-version": "2021-03-09-preview", + "msixImageURI": { + "uri": "imagepath" + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "hostpool1/expandmsiximage", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourcegroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostpools/hostpool1/expandmsiximage", + "type": "Microsoft.DesktopVirtualization/hostpools/expandmsiximage", + "properties": { + "packageAlias": "msixpackagealias", + "imagePath": "imagepath", + "packageName": "MsixPackageName", + "packageFamilyName": "MsixPackage_FamilyName", + "packageFullName": "MsixPackage_FullName", + "displayName": "displayname", + "packageRelativePath": "packagerelativepath", + "isRegularRegistration": false, + "isActive": false, + "packageDependencies": [], + "version": "packageversion", + "lastUpdated": "2008-09-22T14:01:54.9571247Z", + "packageApplications": [ + { + "appId": "AppId", + "description": "PackageApplicationDescription", + "appUserModelID": "AppUserModelId", + "friendlyName": "FriendlyName", + "iconImageName": "Iconimagename", + "rawIcon": "RawIcon", + "rawPng": "RawPng" + } + ] + } + }, + { + "name": "hostpool1/expandmsiximage", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourcegroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostpools/hostpool1/expandmsiximage", + "type": "Microsoft.DesktopVirtualization/hostpools/expandmsiximage", + "properties": { + "packageAlias": "msixpackagealias2", + "imagePath": "imagepath", + "packageName": "MsixPackageName2", + "packageFamilyName": "MsixPackage_FamilyName2", + "packageFullName": "MsixPackage_FullName2", + "displayName": "displayname2", + "packageRelativePath": "packagerelativepath2", + "isRegularRegistration": false, + "isActive": false, + "packageDependencies": [ + { + "dependencyName": "MsixPackageDependency1", + "publisher": "PublisherName1", + "minVersion": "ver1" + }, + { + "dependencyName": "MsixPackageDependency2", + "publisher": "PublisherName2", + "minVersion": "ver2" + } + ], + "version": "packageversion", + "lastUpdated": "2008-09-22T14:01:54.9571247Z", + "packageApplications": [ + { + "appId": "AppId1", + "description": "PackageApplicationDescription1", + "appUserModelID": "AppUserModelId1", + "friendlyName": "FriendlyName1", + "iconImageName": "Iconimagename1", + "rawIcon": "RawIcon1", + "rawPng": "RawPng1" + }, + { + "appId": "AppId2", + "description": "PackageApplicationDescription2", + "appUserModelID": "AppUserModelId2", + "friendlyName": "FriendlyName2", + "iconImageName": "Iconimagename2", + "rawIcon": "RawIcon2", + "rawPng": "RawPng2" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/MsixPackage_Create.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/MsixPackage_Create.json new file mode 100644 index 000000000000..30ccb6409071 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/MsixPackage_Create.json @@ -0,0 +1,114 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostpool1", + "api-version": "2021-03-09-preview", + "msixPackageFullName": "msixpackagefullname", + "msixPackage": { + "properties": { + "displayName": "displayname", + "imagePath": "imagepath", + "isActive": false, + "isRegularRegistration": false, + "lastUpdated": "2008-09-22T14:01:54.9571247Z", + "packageApplications": [ + { + "description": "application-desc", + "appId": "ApplicationId", + "appUserModelID": "AppUserModelId", + "friendlyName": "friendlyname", + "iconImageName": "Apptile", + "rawIcon": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo", + "rawPng": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo" + } + ], + "packageDependencies": [ + { + "dependencyName": "MsixTest_Dependency_Name", + "minVersion": "version", + "publisher": "PublishedName" + } + ], + "packageFamilyName": "MsixPackage_FamilyName", + "packageName": "MsixPackage_name", + "packageRelativePath": "packagerelativepath", + "version": "version" + } + } + }, + "responses": { + "200": { + "body": { + "name": "hostpool1/MsixPackageFullName", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourcegroups/resourcegroup1/providers/Microsoft.DesktopVirtualization/hostpools/hostpool1/msixpackages/msixPackageFullName", + "type": "Microsoft.DesktopVirtualization/hostpools/msixpackages", + "properties": { + "imagePath": "imagepath", + "packageName": "MsixPackage_Name", + "packageFamilyName": "MsixPackage_FamilyName", + "displayName": "dis", + "packageRelativePath": "MsixPackage_RelativePackageRoot", + "isRegularRegistration": false, + "isActive": false, + "packageDependencies": [ + { + "dependencyName": "MsixPackage_Dependency_Name", + "publisher": "MsixPackage_Dependency_Publisher", + "minVersion": "packageDep_version" + } + ], + "version": "version", + "lastUpdated": "2008-09-22T14:01:54.9571247Z", + "packageApplications": [ + { + "appId": "Application_Id", + "description": "desc", + "appUserModelID": "Application_ModelID", + "friendlyName": "fri", + "iconImageName": "Apptile", + "rawIcon": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo", + "rawPng": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo" + } + ] + } + } + }, + "201": { + "body": { + "name": "hostpool1/MsixPackageFullName", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourcegroups/resourcegroup1/providers/Microsoft.DesktopVirtualization/hostpools/hostpool1/msixpackages/msixPackageFullName", + "type": "Microsoft.DesktopVirtualization/hostpools/msixpackages", + "properties": { + "imagePath": "imagepath", + "packageName": "MsixPackage_Name", + "packageFamilyName": "MsixPackage_FamilyName", + "displayName": "dis", + "packageRelativePath": "MsixPackage_RelativePackageRoot", + "isRegularRegistration": false, + "isActive": true, + "packageDependencies": [ + { + "dependencyName": "MsixPackage_Dependency_Name", + "publisher": "MsixPackage_Dependency_Publisher", + "minVersion": "packageDep_version" + } + ], + "version": "version", + "lastUpdated": "2008-09-22T14:01:54.9571247Z", + "packageApplications": [ + { + "appId": "Application_Id", + "description": "desc", + "appUserModelID": "Application_ModelID", + "friendlyName": "fri", + "iconImageName": "Apptile", + "rawIcon": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo", + "rawPng": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo" + } + ] + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/MsixPackage_Delete.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/MsixPackage_Delete.json new file mode 100644 index 000000000000..f9d3a0cf00c8 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/MsixPackage_Delete.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostpool1", + "api-version": "2021-03-09-preview", + "msixPackageFullName": "packagefullname" + }, + "responses": { + "200": { + "name": "hostpool1/MsixPackageFullName", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourcegroups/resourcegroup1/providers/Microsoft.DesktopVirtualization/hostpools/hostpool1/msixpackages/msixPackageFullName", + "type": "Microsoft.DesktopVirtualization/hostpools/msixpackages", + "properties": { + "imagePath": "imagepath", + "packageName": "MsixPackage_Name", + "packageFamilyName": "MsixPackage_FamilyName", + "displayName": "dis", + "packageRelativePath": "MsixPackage_RelativePackageRoot", + "isRegularRegistration": false, + "isActive": false, + "packageDependencies": [ + { + "dependencyName": "MsixPackage_Dependency_Name", + "publisher": "MsixPackage_Dependency_Publisher", + "minVersion": "packageDep_version" + } + ], + "version": "version", + "lastUpdated": "2008-09-22T14:01:54.9571247Z", + "packageApplications": [ + { + "appId": "Application_Id", + "description": "desc", + "appUserModelID": "Application_ModelID", + "friendlyName": "fri", + "iconImageName": "Apptile", + "rawIcon": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo", + "rawPng": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo" + } + ] + } + }, + "204": {} + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/MsixPackage_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/MsixPackage_Get.json new file mode 100644 index 000000000000..85ad2b0bebf1 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/MsixPackage_Get.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostpool1", + "api-version": "2021-03-09-preview", + "msixPackageFullName": "packagefullname" + }, + "responses": { + "200": { + "body": { + "name": "hostpool1/MsixPackageFullName", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourcegroups/resourcegroup1/providers/Microsoft.DesktopVirtualization/hostpools/hostpool1/msixpackages/msixPackageFullName", + "type": "Microsoft.DesktopVirtualization/hostpools/msixpackages", + "properties": { + "imagePath": "imagepath", + "packageName": "MsixPackage_Name", + "packageFamilyName": "MsixPackage_FamilyName", + "displayName": "dis", + "packageRelativePath": "MsixPackage_RelativePackageRoot", + "isRegularRegistration": false, + "isActive": false, + "packageDependencies": [ + { + "dependencyName": "MsixPackage_Dependency_Name", + "publisher": "MsixPackage_Dependency_Publisher", + "minVersion": "packageDep_version" + } + ], + "version": "version", + "lastUpdated": "2008-09-22T14:01:54.9571247Z", + "packageApplications": [ + { + "appId": "Application_Id", + "description": "desc", + "appUserModelID": "Application_ModelID", + "friendlyName": "fri", + "iconImageName": "Apptile", + "rawIcon": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo", + "rawPng": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo" + } + ] + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/MsixPackage_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/MsixPackage_List.json new file mode 100644 index 000000000000..c9553e2d7f6d --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/MsixPackage_List.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostpool1", + "api-version": "2021-03-09-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "hostpool1/MsixPackageFullName", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourcegroups/resourcegroup1/providers/Microsoft.DesktopVirtualization/hostpools/hostpool1/msixpackages/msixPackageFullName", + "type": "Microsoft.DesktopVirtualization/hostpools/msixpackages", + "properties": { + "imagePath": "imagepath", + "packageName": "MsixPackage_Name", + "packageFamilyName": "MsixPackage_FamilyName", + "displayName": "dis", + "packageRelativePath": "MsixPackage_RelativePackageRoot", + "isRegularRegistration": false, + "isActive": false, + "packageDependencies": [ + { + "dependencyName": "MsixPackage_Dependency_Name", + "publisher": "MsixPackage_Dependency_Publisher", + "minVersion": "packageDep_version" + } + ], + "version": "version", + "lastUpdated": "2008-09-22T14:01:54.9571247Z", + "packageApplications": [ + { + "appId": "Application_Id", + "description": "desc", + "appUserModelID": "Application_ModelID", + "friendlyName": "fri", + "iconImageName": "Apptile", + "rawIcon": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo", + "rawPng": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo" + } + ] + } + }, + { + "name": "hostpool1/MsixPackageFullName2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourcegroups/resourcegroup1/providers/Microsoft.DesktopVirtualization/hostpools/hostpool1/msixpackages/msixPackageFullName2", + "type": "Microsoft.DesktopVirtualization/hostpools/msixpackages", + "properties": { + "imagePath": "imagepath2", + "packageName": "MsixPackage_Name2", + "packageFamilyName": "MsixPackage_FamilyName2", + "displayName": "dis2", + "packageRelativePath": "MsixPackage_RelativePackageRoot2", + "isRegularRegistration": false, + "isActive": false, + "packageDependencies": [ + { + "dependencyName": "MsixPackage_Dependency_Name2", + "publisher": "MsixPackage_Dependency_Publisher2", + "minVersion": "packageDep_version2" + } + ], + "version": "version2", + "lastUpdated": "2008-09-22T14:01:54.9571247Z", + "packageApplications": [ + { + "appId": "Application_Id2", + "description": "desc2", + "appUserModelID": "Application_ModelID2", + "friendlyName": "fri2", + "iconImageName": "Apptile2", + "rawIcon": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo2", + "rawPng": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo2" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/MsixPackage_Update.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/MsixPackage_Update.json new file mode 100644 index 000000000000..93871e086d02 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/MsixPackage_Update.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostpool1", + "api-version": "2021-03-09-preview", + "msixPackageFullName": "msixpackagefullname", + "msixPackage": { + "properties": { + "displayName": "displayname", + "isActive": true, + "isRegularRegistration": false + } + } + }, + "responses": { + "200": { + "body": { + "name": "hostpool1/MsixPackageFullName", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourcegroups/resourcegroup1/providers/Microsoft.DesktopVirtualization/hostpools/hostpool1/msixpackages/msixPackageFullName", + "type": "Microsoft.DesktopVirtualization/hostpools/msixpackages", + "properties": { + "imagePath": "imagepath", + "packageName": "MsixPackage_Name", + "packageFamilyName": "MsixPackage_FamilyName", + "displayName": "dis", + "packageRelativePath": "MsixPackage_RelativePackageRoot", + "isRegularRegistration": false, + "isActive": true, + "packageDependencies": [ + { + "dependencyName": "MsixPackage_Dependency_Name", + "publisher": "MsixPackage_Dependency_Publisher", + "minVersion": "packageDep_version" + } + ], + "version": "version", + "lastUpdated": "2008-09-22T14:01:54.9571247Z", + "packageApplications": [ + { + "appId": "Application_Id", + "description": "desc", + "appUserModelID": "Application_ModelID", + "friendlyName": "fri", + "iconImageName": "Apptile", + "rawIcon": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo", + "rawPng": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo" + } + ] + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/OperationDescription_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/OperationDescription_List.json new file mode 100644 index 000000000000..57b58ac4220c --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/OperationDescription_List.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "api-version": "2021-03-09-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.DesktopVirtualization/hostpools/read", + "display": { + "provider": "Microsoft.DesktopVirtualization", + "resource": "hostpools", + "operation": "Read hostpool", + "description": "Read hostpool" + }, + "isDataAction": false + }, + { + "name": "Microsoft.DesktopVirtualization/hostpools/write", + "display": { + "provider": "Microsoft.DesktopVirtualization", + "resource": "hostpools", + "operation": "Write hostpool", + "description": "Write hostpool" + }, + "properties": { + "serviceSpecification": { + "logSpecifications": [ + { + "name": "", + "displayName": "" + }, + { + "name": "", + "displayName": "" + }, + { + "name": "", + "displayName": "" + } + ] + } + }, + "isDataAction": false + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/ScalingPlan_Create.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/ScalingPlan_Create.json new file mode 100644 index 000000000000..9b617368c4ec --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/ScalingPlan_Create.json @@ -0,0 +1,163 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "scalingPlanName": "scalingPlan1", + "api-version": "2021-03-09-preview", + "scalingPlan": { + "location": "centralus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly", + "timeZone": "", + "hostPoolType": "Personal", + "exclusionTag": "value", + "schedules": [ + { + "name": "schedule1", + "daysOfWeek": [ + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday" + ], + "rampUpStartTime": "2020-11-10T06:00:00.000Z", + "rampUpLoadBalancingAlgorithm": "DepthFirst", + "rampUpMinimumHostsPct": 20, + "rampUpCapacityThresholdPct": 80, + "peakStartTime": "2020-11-10T08:00:00.000Z", + "peakLoadBalancingAlgorithm": "BreadthFirst", + "rampDownStartTime": "2020-11-10T18:00:00.000Z", + "rampDownLoadBalancingAlgorithm": "DepthFirst", + "rampDownMinimumHostsPct": 20, + "rampDownCapacityThresholdPct": 50, + "rampDownForceLogoffUsers": true, + "rampDownWaitTimeMinutes": 30, + "rampDownNotificationMessage": "message", + "offPeakStartTime": "2020-11-10T20:00:00.000Z", + "offPeakLoadBalancingAlgorithm": "DepthFirst" + } + ], + "hostPoolReferences": [ + { + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "scalingPlanEnabled": true + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "scalingPlan1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/scalingPlans/scalingPlan1", + "type": "Microsoft.DesktopVirtualization/scalingPlans", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "timeZone": "", + "hostPoolType": "Personal", + "exclusionTag": "value", + "schedules": [ + { + "name": "schedule1", + "daysOfWeek": [ + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday" + ], + "rampUpStartTime": "2020-11-10T06:00:00.000+00:00", + "rampUpLoadBalancingAlgorithm": "DepthFirst", + "rampUpMinimumHostsPct": 20, + "rampUpCapacityThresholdPct": 80, + "peakStartTime": "2020-11-10T08:00:00.000+00:00", + "peakLoadBalancingAlgorithm": "BreadthFirst", + "rampDownStartTime": "2020-11-10T18:00:00.000+00:00", + "rampDownLoadBalancingAlgorithm": "DepthFirst", + "rampDownMinimumHostsPct": 20, + "rampDownCapacityThresholdPct": 50, + "rampDownForceLogoffUsers": true, + "rampDownWaitTimeMinutes": 30, + "rampDownNotificationMessage": "message", + "offPeakStartTime": "2020-11-10T20:00:00.000+00:00", + "offPeakLoadBalancingAlgorithm": "DepthFirst" + } + ], + "hostPoolReferences": [ + { + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "scalingPlanEnabled": true + } + ] + } + } + }, + "201": { + "body": { + "name": "scalingPlan1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/scalingPlans/scalingPlan1", + "type": "Microsoft.DesktopVirtualization/scalingPlans", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "timeZone": "", + "hostPoolType": "Personal", + "exclusionTag": "value", + "schedules": [ + { + "name": "schedule1", + "daysOfWeek": [ + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday" + ], + "rampUpStartTime": "2020-11-10T06:00:00.000+00:00", + "rampUpLoadBalancingAlgorithm": "DepthFirst", + "rampUpMinimumHostsPct": 20, + "rampUpCapacityThresholdPct": 80, + "peakStartTime": "2020-11-10T08:00:00.000+00:00", + "peakLoadBalancingAlgorithm": "BreadthFirst", + "rampDownStartTime": "2020-11-10T18:00:00.000+00:00", + "rampDownLoadBalancingAlgorithm": "DepthFirst", + "rampDownMinimumHostsPct": 20, + "rampDownCapacityThresholdPct": 50, + "rampDownForceLogoffUsers": true, + "rampDownWaitTimeMinutes": 30, + "rampDownNotificationMessage": "message", + "offPeakStartTime": "2020-11-10T20:00:00.000+00:00", + "offPeakLoadBalancingAlgorithm": "DepthFirst" + } + ], + "hostPoolReferences": [ + { + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "scalingPlanEnabled": true + } + ] + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/ScalingPlan_Delete.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/ScalingPlan_Delete.json new file mode 100644 index 000000000000..ae98168b04cf --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/ScalingPlan_Delete.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "scalingPlanName": "scalingPlan1", + "api-version": "2021-03-09-preview" + }, + "responses": { + "200": { + "name": "scalingPlan1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/scalingPlans/scalingPlan1", + "type": "Microsoft.DesktopVirtualization/scalingPlans", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "timeZone": "", + "hostPoolType": "Personal", + "exclusionTag": "value", + "schedules": [ + { + "name": "schedule1", + "daysOfWeek": [ + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday" + ], + "rampUpStartTime": "2020-11-10T06:00:00.000+00:00", + "rampUpLoadBalancingAlgorithm": "DepthFirst", + "rampUpMinimumHostsPct": 20, + "rampUpCapacityThresholdPct": 80, + "peakStartTime": "2020-11-10T08:00:00.000+00:00", + "peakLoadBalancingAlgorithm": "BreadthFirst", + "rampDownStartTime": "2020-11-10T18:00:00.000+00:00", + "rampDownLoadBalancingAlgorithm": "DepthFirst", + "rampDownMinimumHostsPct": 20, + "rampDownCapacityThresholdPct": 50, + "rampDownForceLogoffUsers": true, + "rampDownWaitTimeMinutes": 30, + "rampDownNotificationMessage": "message", + "offPeakStartTime": "2020-11-10T20:00:00.000+00:00", + "offPeakLoadBalancingAlgorithm": "DepthFirst" + } + ], + "hostPoolReferences": [ + { + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "scalingPlanEnabled": true + } + ] + } + }, + "204": {} + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/ScalingPlan_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/ScalingPlan_Get.json new file mode 100644 index 000000000000..8cc7b35d7ebb --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/ScalingPlan_Get.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "scalingPlanName": "scalingPlan1", + "api-version": "2021-03-09-preview" + }, + "responses": { + "200": { + "body": { + "name": "workspace1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/scalingPlans/scalingPlan1", + "type": "Microsoft.DesktopVirtualization/scalingPlans", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "timeZone": "", + "hostPoolType": "Personal", + "exclusionTag": "value", + "schedules": [ + { + "name": "schedule1", + "daysOfWeek": [ + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday" + ], + "rampUpStartTime": "2020-11-10T06:00:00.000+00:00", + "rampUpLoadBalancingAlgorithm": "DepthFirst", + "rampUpMinimumHostsPct": 20, + "rampUpCapacityThresholdPct": 80, + "peakStartTime": "2020-11-10T08:00:00.000+00:00", + "peakLoadBalancingAlgorithm": "BreadthFirst", + "rampDownStartTime": "2020-11-10T18:00:00.000+00:00", + "rampDownLoadBalancingAlgorithm": "DepthFirst", + "rampDownMinimumHostsPct": 20, + "rampDownCapacityThresholdPct": 50, + "rampDownForceLogoffUsers": true, + "rampDownWaitTimeMinutes": 30, + "rampDownNotificationMessage": "message", + "offPeakStartTime": "2020-11-10T20:00:00.000+00:00", + "offPeakLoadBalancingAlgorithm": "DepthFirst" + } + ], + "hostPoolReferences": [ + { + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "scalingPlanEnabled": true + } + ] + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/ScalingPlan_ListByHostPool.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/ScalingPlan_ListByHostPool.json new file mode 100644 index 000000000000..1e4524475001 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/ScalingPlan_ListByHostPool.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "api-version": "2021-03-09-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "scalingPlan1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/scalingPlans/scalingPlan1", + "type": "Microsoft.DesktopVirtualization/scalingPlans", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "timeZone": "", + "hostPoolType": "Personal", + "exclusionTag": "value", + "schedules": [ + { + "name": "schedule1", + "daysOfWeek": [ + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday" + ], + "rampUpStartTime": "2020-11-10T06:00:00.000+00:00", + "rampUpLoadBalancingAlgorithm": "DepthFirst", + "rampUpMinimumHostsPct": 20, + "rampUpCapacityThresholdPct": 80, + "peakStartTime": "2020-11-10T08:00:00.000+00:00", + "peakLoadBalancingAlgorithm": "BreadthFirst", + "rampDownStartTime": "2020-11-10T18:00:00.000+00:00", + "rampDownLoadBalancingAlgorithm": "DepthFirst", + "rampDownMinimumHostsPct": 20, + "rampDownCapacityThresholdPct": 50, + "rampDownForceLogoffUsers": true, + "rampDownWaitTimeMinutes": 30, + "rampDownNotificationMessage": "message", + "offPeakStartTime": "2020-11-10T20:00:00.000+00:00", + "offPeakLoadBalancingAlgorithm": "DepthFirst" + } + ], + "hostPoolReferences": [ + { + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "scalingPlanEnabled": true + } + ] + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/ScalingPlan_ListByResourceGroup.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/ScalingPlan_ListByResourceGroup.json new file mode 100644 index 000000000000..96c31effd4bd --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/ScalingPlan_ListByResourceGroup.json @@ -0,0 +1,116 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "api-version": "2021-03-09-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "scalingPlan1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/scalingPlans/scalingPlan1", + "type": "Microsoft.DesktopVirtualization/scalingPlans", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "timeZone": "", + "hostPoolType": "Personal", + "exclusionTag": "value", + "schedules": [ + { + "name": "schedule1", + "daysOfWeek": [ + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday" + ], + "rampUpStartTime": "2020-11-10T06:00:00.000+00:00", + "rampUpLoadBalancingAlgorithm": "DepthFirst", + "rampUpMinimumHostsPct": 20, + "rampUpCapacityThresholdPct": 80, + "peakStartTime": "2020-11-10T08:00:00.000+00:00", + "peakLoadBalancingAlgorithm": "BreadthFirst", + "rampDownStartTime": "2020-11-10T18:00:00.000+00:00", + "rampDownLoadBalancingAlgorithm": "DepthFirst", + "rampDownMinimumHostsPct": 20, + "rampDownCapacityThresholdPct": 50, + "rampDownForceLogoffUsers": true, + "rampDownWaitTimeMinutes": 30, + "rampDownNotificationMessage": "message", + "offPeakStartTime": "2020-11-10T20:00:00.000+00:00", + "offPeakLoadBalancingAlgorithm": "DepthFirst" + } + ], + "hostPoolReferences": [ + { + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "scalingPlanEnabled": true + } + ] + } + }, + { + "name": "scalingPlan2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/scalingPlans/scalingPlan2", + "type": "Microsoft.DesktopVirtualization/scalingPlans", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "timeZone": "", + "hostPoolType": "Personal", + "exclusionTag": "value", + "schedules": [ + { + "name": "schedule1", + "daysOfWeek": [ + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday" + ], + "rampUpStartTime": "2020-11-10T06:00:00.000+00:00", + "rampUpLoadBalancingAlgorithm": "DepthFirst", + "rampUpMinimumHostsPct": 20, + "rampUpCapacityThresholdPct": 80, + "peakStartTime": "2020-11-10T08:00:00.000+00:00", + "peakLoadBalancingAlgorithm": "BreadthFirst", + "rampDownStartTime": "2020-11-10T18:00:00.000+00:00", + "rampDownLoadBalancingAlgorithm": "DepthFirst", + "rampDownMinimumHostsPct": 20, + "rampDownCapacityThresholdPct": 50, + "rampDownForceLogoffUsers": false, + "rampDownStopHostsWhen": "ZeroSessions", + "offPeakStartTime": "2020-11-10T20:00:00.000+00:00", + "offPeakLoadBalancingAlgorithm": "DepthFirst" + } + ], + "hostPoolReferences": [ + { + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "scalingPlanEnabled": true + } + ] + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/ScalingPlan_ListBySubscription.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/ScalingPlan_ListBySubscription.json new file mode 100644 index 000000000000..d08bfe57eac5 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/ScalingPlan_ListBySubscription.json @@ -0,0 +1,115 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "api-version": "2021-03-09-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "scalingPlan1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/scalingPlans/scalingPlan1", + "type": "Microsoft.DesktopVirtualization/scalingPlans", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "timeZone": "", + "hostPoolType": "Personal", + "exclusionTag": "value", + "schedules": [ + { + "name": "schedule1", + "daysOfWeek": [ + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday" + ], + "rampUpStartTime": "2020-11-10T06:00:00.000+00:00", + "rampUpLoadBalancingAlgorithm": "DepthFirst", + "rampUpMinimumHostsPct": 20, + "rampUpCapacityThresholdPct": 80, + "peakStartTime": "2020-11-10T08:00:00.000+00:00", + "peakLoadBalancingAlgorithm": "BreadthFirst", + "rampDownStartTime": "2020-11-10T18:00:00.000+00:00", + "rampDownLoadBalancingAlgorithm": "DepthFirst", + "rampDownMinimumHostsPct": 20, + "rampDownCapacityThresholdPct": 50, + "rampDownForceLogoffUsers": true, + "rampDownWaitTimeMinutes": 30, + "rampDownNotificationMessage": "message", + "offPeakStartTime": "2020-11-10T20:00:00.000+00:00", + "offPeakLoadBalancingAlgorithm": "DepthFirst" + } + ], + "hostPoolReferences": [ + { + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "scalingPlanEnabled": true + } + ] + } + }, + { + "name": "scalingPlan2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/scalingPlans/scalingPlan2", + "type": "Microsoft.DesktopVirtualization/scalingPlans", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "timeZone": "", + "hostPoolType": "Personal", + "exclusionTag": "value", + "schedules": [ + { + "name": "schedule1", + "daysOfWeek": [ + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday" + ], + "rampUpStartTime": "2020-11-10T06:00:00.000+00:00", + "rampUpLoadBalancingAlgorithm": "DepthFirst", + "rampUpMinimumHostsPct": 20, + "rampUpCapacityThresholdPct": 80, + "peakStartTime": "2020-11-10T08:00:00.000+00:00", + "peakLoadBalancingAlgorithm": "BreadthFirst", + "rampDownStartTime": "2020-11-10T18:00:00.000+00:00", + "rampDownLoadBalancingAlgorithm": "DepthFirst", + "rampDownMinimumHostsPct": 20, + "rampDownCapacityThresholdPct": 50, + "rampDownForceLogoffUsers": false, + "rampDownStopHostsWhen": "ZeroActiveSessions", + "offPeakStartTime": "2020-11-10T20:00:00.000+00:00", + "offPeakLoadBalancingAlgorithm": "DepthFirst" + } + ], + "hostPoolReferences": [ + { + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "scalingPlanEnabled": true + } + ] + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/ScalingPlan_Update.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/ScalingPlan_Update.json new file mode 100644 index 000000000000..5467608c3b01 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/ScalingPlan_Update.json @@ -0,0 +1,109 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "scalingPlanName": "scalingPlan1", + "api-version": "2021-03-09-preview", + "workspace": { + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly", + "timeZone": "", + "hostPoolType": "Personal", + "exclusionTag": "value", + "schedules": [ + { + "name": "schedule1", + "daysOfWeek": [ + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday" + ], + "rampUpStartTime": "2020-11-10T06:00:00.000Z", + "rampUpLoadBalancingAlgorithm": "DepthFirst", + "rampUpMinimumHostsPct": 20, + "rampUpCapacityThresholdPct": 80, + "peakStartTime": "2020-11-10T08:00:00.000Z", + "peakLoadBalancingAlgorithm": "BreadthFirst", + "rampDownStartTime": "2020-11-10T18:00:00.000Z", + "rampDownLoadBalancingAlgorithm": "DepthFirst", + "rampDownMinimumHostsPct": 20, + "rampDownCapacityThresholdPct": 50, + "rampDownForceLogoffUsers": true, + "rampDownWaitTimeMinutes": 30, + "rampDownNotificationMessage": "message", + "offPeakStartTime": "2020-11-10T20:00:00.000Z", + "offPeakLoadBalancingAlgorithm": "DepthFirst" + } + ], + "hostPoolReferences": [ + { + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "scalingPlanEnabled": true + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "scalingPlan1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/scalingPlans/scalingPlan1", + "type": "Microsoft.DesktopVirtualization/scalingPlans", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "timeZone": "", + "hostPoolType": "Personal", + "exclusionTag": "value", + "schedules": [ + { + "name": "schedule1", + "daysOfWeek": [ + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday" + ], + "rampUpStartTime": "2020-11-10T06:00:00.000+00:00", + "rampUpLoadBalancingAlgorithm": "DepthFirst", + "rampUpMinimumHostsPct": 20, + "rampUpCapacityThresholdPct": 80, + "peakStartTime": "2020-11-10T08:00:00.000+00:00", + "peakLoadBalancingAlgorithm": "BreadthFirst", + "rampDownStartTime": "2020-11-10T18:00:00.000+00:00", + "rampDownLoadBalancingAlgorithm": "DepthFirst", + "rampDownMinimumHostsPct": 20, + "rampDownCapacityThresholdPct": 50, + "rampDownForceLogoffUsers": true, + "rampDownWaitTimeMinutes": 30, + "rampDownNotificationMessage": "message", + "offPeakStartTime": "2020-11-10T20:00:00.000+00:00", + "offPeakLoadBalancingAlgorithm": "DepthFirst" + } + ], + "hostPoolReferences": [ + { + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "scalingPlanEnabled": true + } + ] + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/SessionHost_Delete.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/SessionHost_Delete.json new file mode 100644 index 000000000000..a11b32e616e7 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/SessionHost_Delete.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "sessionHostName": "sessionHost1.microsoft.com", + "api-version": "2021-03-09-preview", + "force": true + }, + "responses": { + "200": { + "name": "sessionHost1.microsoft.com", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts", + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "lastHeartBeat": "2008-09-22T14:01:54.9571247Z", + "sessions": 1, + "agentVersion": "1.0.0.1391", + "allowNewSession": true, + "assignedUser": "user1@microsoft.com", + "status": "Available", + "statusTimestamp": "2008-09-22T14:01:54.9571247Z", + "osVersion": "10.0.17763", + "sxSStackVersion": "rdp-sxs190816002", + "updateState": "Succeeded", + "lastUpdateTime": "2008-09-22T14:01:54.9571247Z", + "updateErrorMessage": "", + "virtualMachineId": "29491b54-c033-4dec-b09a-18bf0ebafaef", + "resourceId": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.Compute/virtualMachines/sessionHost1", + "sessionHostHealthCheckResults": [ + { + "healthCheckName": "DomainJoinedCheck", + "healthCheckResult": "HealthCheckSucceeded", + "additionalFailureDetails": { + "message": "SessionHost healthy: is joined to domain ≤wvdarmtest1.net≥", + "errorCode": 0, + "lastHealthCheckDateTime": "2021-01-14T02:09:37.6236843Z" + } + } + ] + } + }, + "204": {} + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/SessionHost_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/SessionHost_Get.json new file mode 100644 index 000000000000..8293b956a1ce --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/SessionHost_Get.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "sessionHostName": "sessionHost1.microsoft.com", + "api-version": "2021-03-09-preview" + }, + "responses": { + "200": { + "body": { + "name": "sessionHost1.microsoft.com", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts", + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "lastHeartBeat": "2008-09-22T14:01:54.9571247Z", + "sessions": 1, + "agentVersion": "1.0.0.1391", + "allowNewSession": true, + "assignedUser": "user1@microsoft.com", + "status": "Available", + "statusTimestamp": "2008-09-22T14:01:54.9571247Z", + "osVersion": "10.0.17763", + "sxSStackVersion": "rdp-sxs190816002", + "updateState": "Succeeded", + "lastUpdateTime": "2008-09-22T14:01:54.9571247Z", + "updateErrorMessage": "", + "virtualMachineId": "29491b54-c033-4dec-b09a-18bf0ebafaef", + "resourceId": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.Compute/virtualMachines/sessionHost1", + "sessionHostHealthCheckResults": [ + { + "healthCheckName": "DomainJoinedCheck", + "healthCheckResult": "HealthCheckSucceeded", + "additionalFailureDetails": { + "message": "SessionHost healthy: is joined to domain ≤wvdarmtest1.net≥", + "errorCode": 0, + "lastHealthCheckDateTime": "2021-01-14T02:09:37.6236843Z" + } + } + ] + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/SessionHost_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/SessionHost_List.json new file mode 100644 index 000000000000..7cbf44062705 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/SessionHost_List.json @@ -0,0 +1,82 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "api-version": "2021-03-09-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "sessionHost1.microsoft.com", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionhosts", + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "lastHeartBeat": "2008-09-22T14:01:54.9571247Z", + "sessions": 1, + "agentVersion": "1.0.0.1391", + "allowNewSession": true, + "assignedUser": "user1@microsoft.com", + "status": "Available", + "statusTimestamp": "2008-09-22T14:01:54.9571247Z", + "osVersion": "10.0.17763", + "sxSStackVersion": "rdp-sxs190816002", + "updateState": "Succeeded", + "lastUpdateTime": "2008-09-22T14:01:54.9571247Z", + "updateErrorMessage": "", + "virtualMachineId": "29491b54-c033-4dec-b09a-18bf0ebafaef", + "resourceId": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.Compute/virtualMachines/sessionHost1", + "sessionHostHealthCheckResults": [ + { + "healthCheckName": "DomainJoinedCheck", + "healthCheckResult": "HealthCheckSucceeded", + "additionalFailureDetails": { + "message": "SessionHost healthy: is joined to domain ≤wvdarmtest1.net≥", + "errorCode": 0, + "lastHealthCheckDateTime": "2021-01-14T02:09:37.6236843Z" + } + } + ] + } + }, + { + "name": "sessionHost2.microsoft.com", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost2microsoft.com", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionhosts", + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "lastHeartBeat": "2008-09-22T14:01:54.9571247Z", + "sessions": 1, + "agentVersion": "1.0.0.1391", + "allowNewSession": true, + "assignedUser": "user2@microsoft.com", + "status": "Available", + "statusTimestamp": "2008-09-22T14:01:54.9571247Z", + "osVersion": "10.0.17763", + "sxSStackVersion": "rdp-sxs190816002", + "updateState": "Succeeded", + "lastUpdateTime": "2008-09-22T14:01:54.9571247Z", + "updateErrorMessage": "", + "virtualMachineId": "39491b54-c033-4dec-b09a-18bf0ebafaef", + "resourceId": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.Compute/virtualMachines/sessionHost2", + "sessionHostHealthCheckResults": [ + { + "healthCheckName": "DomainJoinedCheck", + "healthCheckResult": "HealthCheckSucceeded", + "additionalFailureDetails": { + "message": "SessionHost healthy: is joined to domain ≤wvdarmtest1.net≥", + "errorCode": 0, + "lastHealthCheckDateTime": "2021-01-14T02:09:37.6236843Z" + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/SessionHost_Update.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/SessionHost_Update.json new file mode 100644 index 000000000000..fe5e2f63c782 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/SessionHost_Update.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "sessionHostName": "sessionHost1.microsoft.com", + "api-version": "2021-03-09-preview", + "sessionHost": { + "properties": { + "allowNewSession": true, + "assignedUser": "user1@microsoft.com" + } + } + }, + "responses": { + "200": { + "body": { + "name": "sessionHost1.microsoft.com", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionhosts", + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "lastHeartBeat": "2019-01-11T19:27:13.6108027Z", + "sessions": 1, + "agentVersion": "1.0.0.1391", + "allowNewSession": true, + "assignedUser": "user1@microsoft.com", + "status": "Available", + "statusTimestamp": "2019-01-24T20:00:08.2893033Z", + "osVersion": "10.0.17763", + "sxSStackVersion": "rdp-sxs190816002", + "updateState": "Succeeded", + "lastUpdateTime": "2008-09-22T14:01:54.9571247Z", + "updateErrorMessage": "", + "virtualMachineId": "29491b54-c033-4dec-b09a-18bf0ebafaef", + "resourceId": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.Compute/virtualMachines/sessionHost1", + "sessionHostHealthCheckResults": [ + { + "healthCheckName": "DomainJoinedCheck", + "healthCheckResult": "HealthCheckSucceeded", + "additionalFailureDetails": { + "message": "SessionHost healthy: is joined to domain ≤wvdarmtest1.net≥", + "errorCode": 0, + "lastHealthCheckDateTime": "2021-01-14T02:09:37.6236843Z" + } + } + ] + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/StartMenuItem_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/StartMenuItem_List.json new file mode 100644 index 000000000000..da15e983f0f0 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/StartMenuItem_List.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "api-version": "2021-03-09-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "application1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/startMenuItem/application1", + "type": "Microsoft.DesktopVirtualization/applicationGroups/startMenuItems", + "properties": { + "appAlias": "word", + "filePath": "/path/to/file", + "commandLineArguments": "arguments", + "iconPath": "/path/to/icon", + "iconIndex": 1 + } + }, + { + "name": "application2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/startMenuItem/application2", + "type": "Microsoft.DesktopVirtualization/applicationGroups/startMenuItems", + "properties": { + "appAlias": "excel", + "filePath": "/path/to/file", + "commandLineArguments": "arguments", + "iconPath": "/path/to/icon", + "iconIndex": 1 + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/UserSession_Delete.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/UserSession_Delete.json new file mode 100644 index 000000000000..279c891f2df0 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/UserSession_Delete.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "sessionHostName": "sessionHost1.microsoft.com", + "userSessionId": "1", + "api-version": "2021-03-09-preview", + "force": true + }, + "responses": { + "200": { + "name": "1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions", + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "userPrincipalName": "user1@microsoft.com", + "applicationType": "Desktop", + "sessionState": "Active", + "activeDirectoryUserName": "WVDARM\\user1", + "createTime": "2008-09-22T14:01:54.9571247Z" + } + }, + "204": {} + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/UserSession_Disconnect_Post.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/UserSession_Disconnect_Post.json new file mode 100644 index 000000000000..07ee539decbf --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/UserSession_Disconnect_Post.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "sessionHostName": "sessionHost1.microsoft.com", + "userSessionId": "1", + "api-version": "2021-03-09-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/UserSession_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/UserSession_Get.json new file mode 100644 index 000000000000..197fd7ec0a71 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/UserSession_Get.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "sessionHostName": "sessionHost1.microsoft.com", + "userSessionId": "1", + "api-version": "2021-03-09-preview" + }, + "responses": { + "200": { + "body": { + "name": "1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions", + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "userPrincipalName": "user1@microsoft.com", + "applicationType": "Desktop", + "sessionState": "Active", + "activeDirectoryUserName": "WVDARM\\user1", + "createTime": "2008-09-22T14:01:54.9571247Z" + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/UserSession_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/UserSession_List.json new file mode 100644 index 000000000000..142ea073f953 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/UserSession_List.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "sessionHostName": "sessionHost1.microsoft.com", + "api-version": "2021-03-09-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions", + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "userPrincipalName": "user1@microsoft.com", + "applicationType": "Desktop", + "sessionState": "Active", + "activeDirectoryUserName": "WVDARM\\user1", + "createTime": "2008-09-22T14:01:54.9571247Z" + } + }, + { + "name": "2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/2", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions", + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "userPrincipalName": "user1@microsoft.com", + "applicationType": "Desktop", + "sessionState": "Active", + "activeDirectoryUserName": "WVDARM\\user1", + "createTime": "2008-09-22T14:01:54.9571247Z" + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/UserSession_ListByHostPool.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/UserSession_ListByHostPool.json new file mode 100644 index 000000000000..cdd84ba5e2af --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/UserSession_ListByHostPool.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "api-version": "2021-03-09-preview", + "$filter": "userPrincipalName eq 'user1@microsoft.com' and state eq 'active'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions", + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "userPrincipalName": "user1@microsoft.com", + "applicationType": "Desktop", + "sessionState": "Active", + "activeDirectoryUserName": "WVDARM\\user1", + "createTime": "2008-09-22T14:01:54.9571247Z" + } + }, + { + "name": "2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/2", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions", + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "userPrincipalName": "user1@microsoft.com", + "applicationType": "Desktop", + "sessionState": "Active", + "activeDirectoryUserName": "WVDARM\\user1", + "createTime": "2008-09-22T14:01:54.9571247Z" + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/UserSession_SendMessage_Post.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/UserSession_SendMessage_Post.json new file mode 100644 index 000000000000..e46843b956a9 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/UserSession_SendMessage_Post.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "sessionHostName": "sessionHost1.microsoft.com", + "userSessionId": "1", + "api-version": "2021-03-09-preview", + "sendMessage": { + "messageTitle": "title", + "messageBody": "body" + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/Workspace_Create.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/Workspace_Create.json new file mode 100644 index 000000000000..ee633e5cdbd7 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/Workspace_Create.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "workspaceName": "workspace1", + "api-version": "2021-03-09-preview", + "workspace": { + "location": "centralus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly" + } + } + }, + "responses": { + "200": { + "body": { + "name": "workspace1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "type": "Microsoft.DesktopVirtualization/workspaces", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "cloudPcResource": false + } + } + }, + "201": { + "body": { + "name": "workspace1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "type": "Microsoft.DesktopVirtualization/workspaces", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "cloudPcResource": false + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/Workspace_Delete.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/Workspace_Delete.json new file mode 100644 index 000000000000..0fc66d931b9e --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/Workspace_Delete.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "workspaceName": "workspace1", + "api-version": "2021-03-09-preview" + }, + "responses": { + "200": { + "name": "workspace1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "type": "Microsoft.DesktopVirtualization/workspaces", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "cloudPcResource": false + } + }, + "204": {} + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/Workspace_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/Workspace_Get.json new file mode 100644 index 000000000000..77c48b151da5 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/Workspace_Get.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "workspaceName": "workspace1", + "api-version": "2021-03-09-preview" + }, + "responses": { + "200": { + "body": { + "name": "workspace1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "type": "Microsoft.DesktopVirtualization/workspaces", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "cloudPcResource": false + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/Workspace_ListByResourceGroup.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/Workspace_ListByResourceGroup.json new file mode 100644 index 000000000000..4471f4149af8 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/Workspace_ListByResourceGroup.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "api-version": "2021-03-09-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "workspace1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "type": "Microsoft.DesktopVirtualization/workspaces", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "cloudPcResource": false + } + }, + { + "name": "workspace2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace2", + "type": "Microsoft.DesktopVirtualization/workspaces", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "cloudPcResource": false + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/Workspace_ListBySubscription.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/Workspace_ListBySubscription.json new file mode 100644 index 000000000000..210d9cf2df99 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/Workspace_ListBySubscription.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "api-version": "2021-03-09-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "workspace1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "type": "Microsoft.DesktopVirtualization/workspaces", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "cloudPcResource": false + } + }, + { + "name": "workspace2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace2", + "type": "Microsoft.DesktopVirtualization/workspaces", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "cloudPcResource": false + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/Workspace_Update.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/Workspace_Update.json new file mode 100644 index 000000000000..102139cd60c1 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/examples/Workspace_Update.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "workspaceName": "workspace1", + "api-version": "2021-03-09-preview", + "workspace": { + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly" + } + } + }, + "responses": { + "200": { + "body": { + "name": "workspace1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "type": "Microsoft.DesktopVirtualization/workspaces", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "cloudPcResource": false + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/desktopvirtualization.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/desktopvirtualization.json new file mode 100644 index 000000000000..93377200c3cd --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/desktopvirtualization.json @@ -0,0 +1,5383 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-04-01-preview", + "title": "Desktop Virtualization API Client" + }, + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "host": "management.azure.com", + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/providers/Microsoft.DesktopVirtualization/operations": { + "get": { + "tags": [ + "Operations" + ], + "operationId": "Operations_List", + "description": "List all of the available operations the Desktop Virtualization resource provider supports.", + "x-ms-examples": { + "OperationDescription_List": { + "$ref": "./examples/OperationDescription_List.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved operations.", + "schema": { + "$ref": "#/definitions/ResourceProviderOperationList" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/workspaces/{workspaceName}": { + "get": { + "tags": [ + "Workspace" + ], + "operationId": "Workspaces_Get", + "description": "Get a workspace.", + "x-ms-examples": { + "Workspace_Get": { + "$ref": "./examples/Workspace_Get.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved workspace.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Workspace" + ], + "operationId": "Workspaces_CreateOrUpdate", + "description": "Create or update a workspace.", + "x-ms-examples": { + "Workspace_Create": { + "$ref": "./examples/Workspace_Create.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "name": "workspace", + "description": "Object containing Workspace definitions.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Workspace" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated workspace.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "201": { + "description": "Successfully created workspace.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "Workspace" + ], + "operationId": "Workspaces_Delete", + "description": "Remove a workspace.", + "x-ms-examples": { + "Workspace_Delete": { + "$ref": "./examples/Workspace_Delete.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted workspace." + }, + "204": { + "description": "Workspace does not exist." + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "patch": { + "tags": [ + "Workspace" + ], + "operationId": "Workspaces_Update", + "description": "Update a workspace.", + "x-ms-examples": { + "Workspace_Update": { + "$ref": "./examples/Workspace_Update.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "name": "workspace", + "description": "Object containing Workspace definitions.", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/WorkspacePatch" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated workspace.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/workspaces": { + "get": { + "tags": [ + "Workspace" + ], + "operationId": "Workspaces_ListByResourceGroup", + "description": "List workspaces.", + "x-ms-examples": { + "Workspace_ListByResourceGroup": { + "$ref": "./examples/Workspace_ListByResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved workspaces in resource group.", + "schema": { + "$ref": "#/definitions/WorkspaceList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DesktopVirtualization/workspaces": { + "get": { + "tags": [ + "Workspace" + ], + "operationId": "Workspaces_ListBySubscription", + "description": "List workspaces in subscription.", + "x-ms-examples": { + "Workspace_ListBySubscription": { + "$ref": "./examples/Workspace_ListBySubscription.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved workspaces in subscription.", + "schema": { + "$ref": "#/definitions/WorkspaceList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/scalingPlans/{scalingPlanName}": { + "get": { + "tags": [ + "ScalingPlan" + ], + "operationId": "ScalingPlans_Get", + "description": "Get a scaling plan.", + "x-ms-examples": { + "ScalingPlans_Get": { + "$ref": "./examples/ScalingPlan_Get.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ScalingPlanNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved scaling plan.", + "schema": { + "$ref": "#/definitions/ScalingPlan" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "ScalingPlan" + ], + "operationId": "ScalingPlans_Create", + "description": "Create or update a scaling plan.", + "x-ms-examples": { + "ScalingPlans_Create": { + "$ref": "./examples/ScalingPlan_Create.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ScalingPlanNameParameter" + }, + { + "name": "scalingPlan", + "description": "Object containing scaling plan definitions.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScalingPlan" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated scaling plan.", + "schema": { + "$ref": "#/definitions/ScalingPlan" + } + }, + "201": { + "description": "Successfully created scaling plan.", + "schema": { + "$ref": "#/definitions/ScalingPlan" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "ScalingPlan" + ], + "operationId": "ScalingPlans_Delete", + "description": "Remove a scaling plan.", + "x-ms-examples": { + "ScalingPlans_Delete": { + "$ref": "./examples/ScalingPlan_Delete.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ScalingPlanNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted scaling plan." + }, + "204": { + "description": "Scaling plan does not exist." + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "patch": { + "tags": [ + "ScalingPlan" + ], + "operationId": "ScalingPlans_Update", + "description": "Update a scaling plan.", + "x-ms-examples": { + "ScalingPlans_Update": { + "$ref": "./examples/ScalingPlan_Update.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ScalingPlanNameParameter" + }, + { + "name": "scalingPlan", + "description": "Object containing scaling plan definitions.", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/ScalingPlanPatch" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated scaling plan.", + "schema": { + "$ref": "#/definitions/ScalingPlan" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/scalingPlans": { + "get": { + "tags": [ + "ScalingPlan" + ], + "operationId": "ScalingPlans_ListByResourceGroup", + "description": "List scaling plans.", + "x-ms-examples": { + "ScalingPlans_ListByResourceGroup": { + "$ref": "./examples/ScalingPlan_ListByResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved scaling plans in resource group.", + "schema": { + "$ref": "#/definitions/ScalingPlanList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DesktopVirtualization/scalingPlans": { + "get": { + "tags": [ + "ScalingPlan" + ], + "operationId": "ScalingPlans_ListBySubscription", + "description": "List scaling plans in subscription.", + "x-ms-examples": { + "ScalingPlans_ListBySubscription": { + "$ref": "./examples/ScalingPlan_ListBySubscription.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved scaling plans in subscription.", + "schema": { + "$ref": "#/definitions/ScalingPlanList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}": { + "get": { + "tags": [ + "ApplicationGroup" + ], + "operationId": "ApplicationGroups_Get", + "description": "Get an application group.", + "x-ms-examples": { + "ApplicationGroup_Get": { + "$ref": "./examples/ApplicationGroup_Get.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved application group.", + "schema": { + "$ref": "#/definitions/ApplicationGroup" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "ApplicationGroup" + ], + "operationId": "ApplicationGroups_CreateOrUpdate", + "description": "Create or update an applicationGroup.", + "x-ms-examples": { + "ApplicationGroup_Create": { + "$ref": "./examples/ApplicationGroup_Create.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + }, + { + "name": "applicationGroup", + "description": "Object containing ApplicationGroup definitions.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationGroup" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated application group.", + "schema": { + "$ref": "#/definitions/ApplicationGroup" + } + }, + "201": { + "description": "Successfully created application group.", + "schema": { + "$ref": "#/definitions/ApplicationGroup" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "ApplicationGroup" + ], + "operationId": "ApplicationGroups_Delete", + "description": "Remove an applicationGroup.", + "x-ms-examples": { + "ApplicationGroup_Delete": { + "$ref": "./examples/ApplicationGroup_Delete.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully removed application group." + }, + "204": { + "description": "Application group does not exist." + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "patch": { + "tags": [ + "ApplicationGroup" + ], + "operationId": "ApplicationGroups_Update", + "description": "Update an applicationGroup.", + "x-ms-examples": { + "ApplicationGroups_Update": { + "$ref": "./examples/ApplicationGroup_Update.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + }, + { + "name": "applicationGroup", + "description": "Object containing ApplicationGroup definitions.", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/ApplicationGroupPatch" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated application group.", + "schema": { + "$ref": "#/definitions/ApplicationGroup" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups": { + "get": { + "tags": [ + "ApplicationGroup" + ], + "operationId": "ApplicationGroups_ListByResourceGroup", + "description": "List applicationGroups.", + "x-ms-examples": { + "ApplicationGroup_ListByResourceGroup": { + "$ref": "./examples/ApplicationGroup_ListByResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "OData filter expression. Valid properties for filtering are applicationGroupType." + } + ], + "responses": { + "200": { + "description": "Successfully retrieved application groups in resource group.", + "schema": { + "$ref": "#/definitions/ApplicationGroupList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DesktopVirtualization/applicationGroups": { + "get": { + "tags": [ + "ApplicationGroup" + ], + "operationId": "ApplicationGroups_ListBySubscription", + "description": "List applicationGroups in subscription.", + "x-ms-examples": { + "ApplicationGroup_List": { + "$ref": "./examples/ApplicationGroup_ListBySubscription.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "OData filter expression. Valid properties for filtering are applicationGroupType." + } + ], + "responses": { + "200": { + "description": "Successfully retrieved application groups in subscription.", + "schema": { + "$ref": "#/definitions/ApplicationGroupList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}/startMenuItems": { + "get": { + "tags": [ + "StartMenuItem" + ], + "operationId": "StartMenuItems_List", + "description": "List start menu items in the given application group.", + "x-ms-examples": { + "StartMenuItem_List": { + "$ref": "./examples/StartMenuItem_List.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved start menu items in application group.", + "schema": { + "$ref": "#/definitions/StartMenuItemList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}/applications/{applicationName}": { + "get": { + "tags": [ + "Application" + ], + "operationId": "Applications_Get", + "description": "Get an application.", + "x-ms-examples": { + "Application_Get": { + "$ref": "./examples/Application_Get.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved application.", + "schema": { + "$ref": "#/definitions/Application" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Application" + ], + "operationId": "Applications_CreateOrUpdate", + "description": "Create or update an application.", + "x-ms-examples": { + "Application_Create": { + "$ref": "./examples/Application_Create.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationNameParameter" + }, + { + "name": "application", + "description": "Object containing Application definitions.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Application" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated application.", + "schema": { + "$ref": "#/definitions/Application" + } + }, + "201": { + "description": "Successfully created application.", + "schema": { + "$ref": "#/definitions/Application" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "Application" + ], + "operationId": "Applications_Delete", + "description": "Remove an application.", + "x-ms-examples": { + "Application_Delete": { + "$ref": "./examples/Application_Delete.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully removed application." + }, + "204": { + "description": "Application does not exist." + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "patch": { + "tags": [ + "Application" + ], + "operationId": "Applications_Update", + "description": "Update an application.", + "x-ms-examples": { + "Application_Update": { + "$ref": "./examples/Application_Update.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationNameParameter" + }, + { + "name": "application", + "description": "Object containing Application definitions.", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/ApplicationPatch" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated application.", + "schema": { + "$ref": "#/definitions/Application" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}/applications": { + "get": { + "tags": [ + "Application" + ], + "operationId": "Applications_List", + "description": "List applications.", + "x-ms-examples": { + "Applications_List": { + "$ref": "./examples/Application_List.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved applications in application group.", + "schema": { + "$ref": "#/definitions/ApplicationList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}/desktops/{desktopName}": { + "get": { + "tags": [ + "Desktop" + ], + "operationId": "Desktops_Get", + "description": "Get a desktop.", + "x-ms-examples": { + "Desktop_Get": { + "$ref": "./examples/Desktop_Get.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + }, + { + "$ref": "#/parameters/DesktopNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved desktop.", + "schema": { + "$ref": "#/definitions/Desktop" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "patch": { + "tags": [ + "Desktop" + ], + "operationId": "Desktops_Update", + "description": "Update a desktop.", + "x-ms-examples": { + "Desktop_Update": { + "$ref": "./examples/Desktop_Update.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + }, + { + "$ref": "#/parameters/DesktopNameParameter" + }, + { + "name": "desktop", + "description": "Object containing Desktop definitions.", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/DesktopPatch" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated desktop.", + "schema": { + "$ref": "#/definitions/Desktop" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}/desktops": { + "get": { + "tags": [ + "Desktop" + ], + "operationId": "Desktops_List", + "description": "List desktops.", + "x-ms-examples": { + "Desktop_List": { + "$ref": "./examples/Desktop_List.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved desktops in application group.", + "schema": { + "$ref": "#/definitions/DesktopList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}": { + "get": { + "tags": [ + "HostPool" + ], + "operationId": "HostPools_Get", + "description": "Get a host pool.", + "x-ms-examples": { + "HostPool_Get": { + "$ref": "./examples/HostPool_Get.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved host pool.", + "schema": { + "$ref": "#/definitions/HostPool" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "HostPool" + ], + "operationId": "HostPools_CreateOrUpdate", + "description": "Create or update a host pool.", + "x-ms-examples": { + "HostPool_Create": { + "$ref": "./examples/HostPool_Create.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "name": "hostPool", + "description": "Object containing HostPool definitions.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/HostPool" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated host pool.", + "schema": { + "$ref": "#/definitions/HostPool" + } + }, + "201": { + "description": "Successfully created host pool.", + "schema": { + "$ref": "#/definitions/HostPool" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "HostPool" + ], + "operationId": "HostPools_Delete", + "description": "Remove a host pool.", + "x-ms-examples": { + "HostPool_Delete": { + "$ref": "./examples/HostPool_Delete.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "name": "force", + "in": "query", + "required": false, + "type": "boolean", + "description": "Force flag to delete sessionHost." + } + ], + "responses": { + "200": { + "description": "Successfully removed host pool." + }, + "204": { + "description": "Host pool does not exist." + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "patch": { + "tags": [ + "HostPool" + ], + "operationId": "HostPools_Update", + "description": "Update a host pool.", + "x-ms-examples": { + "HostPool_Update": { + "$ref": "./examples/HostPool_Update.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "name": "hostPool", + "description": "Object containing HostPool definitions.", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/HostPoolPatch" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated host pool.", + "schema": { + "$ref": "#/definitions/HostPool" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools": { + "get": { + "tags": [ + "HostPool" + ], + "operationId": "HostPools_ListByResourceGroup", + "description": "List hostPools.", + "x-ms-examples": { + "HostPool_ListByResourceGroup": { + "$ref": "./examples/HostPool_ListByResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved host pool in resource group.", + "schema": { + "$ref": "#/definitions/HostPoolList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DesktopVirtualization/hostPools": { + "get": { + "tags": [ + "HostPool" + ], + "operationId": "HostPools_List", + "description": "List hostPools in subscription.", + "x-ms-examples": { + "HostPool_List": { + "$ref": "./examples/HostPool_List.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved host pool in subscription.", + "schema": { + "$ref": "#/definitions/HostPoolList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/retrieveRegistrationToken": { + "post": { + "tags": [ + "HostPool" + ], + "operationId": "HostPools_RetrieveRegistrationToken", + "description": "Registration token of the host pool.", + "x-ms-examples": { + "HostPools_RetrieveRegistrationToken_Post": { + "$ref": "./examples/HostPools_RetrieveRegistrationToken_Post.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved host pool in resource group.", + "schema": { + "$ref": "#/definitions/RegistrationInfo" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/userSessions": { + "get": { + "tags": [ + "UserSession" + ], + "operationId": "UserSessions_ListByHostPool", + "description": "List userSessions.", + "x-ms-examples": { + "UserSession_ListByHostPool": { + "$ref": "./examples/UserSession_ListByHostPool.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "OData filter expression. Valid properties for filtering are userprincipalname and sessionstate." + } + ], + "responses": { + "200": { + "description": "Successfully retrieved user sessions in host pool.", + "schema": { + "$ref": "#/definitions/UserSessionList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts/{sessionHostName}": { + "get": { + "tags": [ + "SessionHost" + ], + "operationId": "SessionHosts_Get", + "description": "Get a session host.", + "x-ms-examples": { + "SessionHost_Get": { + "$ref": "./examples/SessionHost_Get.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "$ref": "#/parameters/SessionHostNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved session host.", + "schema": { + "$ref": "#/definitions/SessionHost" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "SessionHost" + ], + "operationId": "SessionHosts_Delete", + "description": "Remove a SessionHost.", + "x-ms-examples": { + "SessionHost_Delete": { + "$ref": "./examples/SessionHost_Delete.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "$ref": "#/parameters/SessionHostNameParameter" + }, + { + "name": "force", + "in": "query", + "required": false, + "type": "boolean", + "description": "Force flag to force sessionHost deletion even when userSession exists." + } + ], + "responses": { + "200": { + "description": "Successfully removed session host." + }, + "204": { + "description": "Session host does not exist." + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "patch": { + "tags": [ + "SessionHost" + ], + "operationId": "SessionHosts_Update", + "description": "Update a session host.", + "x-ms-examples": { + "SessionHost_Update": { + "$ref": "./examples/SessionHost_Update.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "$ref": "#/parameters/SessionHostNameParameter" + }, + { + "name": "sessionHost", + "description": "Object containing SessionHost definitions.", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/SessionHostPatch" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated session host.", + "schema": { + "$ref": "#/definitions/SessionHost" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts": { + "get": { + "tags": [ + "SessionHost" + ], + "operationId": "SessionHosts_List", + "description": "List sessionHosts.", + "x-ms-examples": { + "SessionHost_List": { + "$ref": "./examples/SessionHost_List.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved session hosts in host pool.", + "schema": { + "$ref": "#/definitions/SessionHostList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/msixPackages/{msixPackageFullName}": { + "get": { + "tags": [ + "MSIXPackage" + ], + "operationId": "MSIXPackages_Get", + "description": "Get a msixpackage.", + "x-ms-examples": { + "MSIXPackage_Get": { + "$ref": "./examples/MsixPackage_Get.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "$ref": "#/parameters/MSIXPackageFullNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved MSIX Package.", + "schema": { + "$ref": "#/definitions/MSIXPackage" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "MSIXPackage" + ], + "operationId": "MSIXPackages_CreateOrUpdate", + "description": "Create or update a MSIX package.", + "x-ms-examples": { + "MSIXPackage_Create": { + "$ref": "./examples/MsixPackage_Create.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "$ref": "#/parameters/MSIXPackageFullNameParameter" + }, + { + "name": "msixPackage", + "description": "Object containing MSIX Package definitions.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/MSIXPackage" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated MSIX Package.", + "schema": { + "$ref": "#/definitions/MSIXPackage" + } + }, + "201": { + "description": "Successfully created MSIX Package.", + "schema": { + "$ref": "#/definitions/MSIXPackage" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "MSIXPackage" + ], + "operationId": "MSIXPackages_Delete", + "description": "Remove an MSIX Package.", + "x-ms-examples": { + "MSIXPackage_Delete": { + "$ref": "./examples/MsixPackage_Delete.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "$ref": "#/parameters/MSIXPackageFullNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully removed MSIX Package." + }, + "204": { + "description": "MSIX Package does not exist." + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "patch": { + "tags": [ + "MSIXPackage" + ], + "operationId": "MSIXPackages_Update", + "description": "Update an MSIX Package.", + "x-ms-examples": { + "MSIXPackage_Update": { + "$ref": "./examples/MsixPackage_Update.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "$ref": "#/parameters/MSIXPackageFullNameParameter" + }, + { + "name": "msixPackage", + "description": "Object containing MSIX Package definitions.", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/MSIXPackagePatch" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated MSIX Package.", + "schema": { + "$ref": "#/definitions/MSIXPackage" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/msixPackages": { + "get": { + "tags": [ + "MSIXPackage" + ], + "operationId": "MSIXPackages_List", + "description": "List MSIX packages in hostpool.", + "x-ms-examples": { + "MSIXPackage_List": { + "$ref": "./examples/MsixPackage_List.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved MSIX Packages in hostpool.", + "schema": { + "$ref": "#/definitions/MSIXPackageList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/expandMsixImage": { + "post": { + "tags": [ + "MsixImage" + ], + "operationId": "MsixImages_Expand", + "description": "Expands and Lists MSIX packages in an Image, given the Image Path.", + "x-ms-examples": { + "MsixImage_Expand": { + "$ref": "./examples/MsixImage_Expand_Post.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "name": "msixImageURI", + "description": "Object containing URI to MSIX Image", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/MSIXImageURI" + } + } + ], + "responses": { + "200": { + "description": "Successfully retrieved MSIX packages in specified Image Path.", + "schema": { + "$ref": "#/definitions/ExpandMsixImageList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts/{sessionHostName}/userSessions/{userSessionId}": { + "get": { + "tags": [ + "UserSession" + ], + "operationId": "UserSessions_Get", + "description": "Get a userSession.", + "x-ms-examples": { + "UserSession_Get": { + "$ref": "./examples/UserSession_Get.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "$ref": "#/parameters/SessionHostNameParameter" + }, + { + "$ref": "#/parameters/UserSessionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved user session.", + "schema": { + "$ref": "#/definitions/UserSession" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "UserSession" + ], + "operationId": "UserSessions_Delete", + "description": "Remove a userSession.", + "x-ms-examples": { + "UserSession_Delete": { + "$ref": "./examples/UserSession_Delete.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "$ref": "#/parameters/SessionHostNameParameter" + }, + { + "$ref": "#/parameters/UserSessionIdParameter" + }, + { + "name": "force", + "in": "query", + "required": false, + "type": "boolean", + "description": "Force flag to login off userSession." + } + ], + "responses": { + "200": { + "description": "Successfully removed user session." + }, + "204": { + "description": "User session does not exist." + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts/{sessionHostName}/userSessions": { + "get": { + "tags": [ + "UserSession" + ], + "operationId": "UserSessions_List", + "description": "List userSessions.", + "x-ms-examples": { + "UserSession_List": { + "$ref": "./examples/UserSession_List.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "$ref": "#/parameters/SessionHostNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved user sessions in session host.", + "schema": { + "$ref": "#/definitions/UserSessionList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts/{sessionHostName}/userSessions/{userSessionId}/disconnect": { + "post": { + "tags": [ + "UserSession" + ], + "operationId": "UserSessions_Disconnect", + "description": "Disconnect a userSession.", + "x-ms-examples": { + "UserSession_Disconnect_Post": { + "$ref": "./examples/UserSession_Disconnect_Post.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "$ref": "#/parameters/SessionHostNameParameter" + }, + { + "$ref": "#/parameters/UserSessionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully disconnected user session." + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts/{sessionHostName}/userSessions/{userSessionId}/sendMessage": { + "post": { + "tags": [ + "UserSession" + ], + "operationId": "UserSessions_SendMessage", + "description": "Send a message to a user.", + "x-ms-examples": { + "UserSession_SendMessage_Post": { + "$ref": "./examples/UserSession_SendMessage_Post.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "$ref": "#/parameters/SessionHostNameParameter" + }, + { + "$ref": "#/parameters/UserSessionIdParameter" + }, + { + "name": "sendMessage", + "description": "Object containing message includes title and message body", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/SendMessage" + } + } + ], + "responses": { + "200": { + "description": "Successfully sent message to user session." + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/scalingPlans": { + "get": { + "tags": [ + "ScalingPlan" + ], + "operationId": "ScalingPlans_ListByHostPool", + "description": "List scaling plan associated with hostpool.", + "x-ms-examples": { + "ScalingPlan_ListByHostPool": { + "$ref": "./examples/ScalingPlan_ListByHostPool.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved scaling plan associated with hostpool.", + "schema": { + "$ref": "#/definitions/ScalingPlanList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/privateEndpointConnections": { + "get": { + "tags": [ + "PrivateLink" + ], + "operationId": "PrivateEndpointConnections_ListByHostPool", + "description": "List private endpoint connections associated with hostpool.", + "x-ms-examples": { + "PrivateEndpointConnection_ListByHostPool": { + "$ref": "./examples/PrivateEndpointConnection_ListByHostPool.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved connection list.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionListResultWithSystemData" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "x-ms-error-response": true, + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "PrivateLink" + ], + "operationId": "PrivateEndpointConnections_GetByHostPool", + "description": "Get a private endpoint connection.", + "x-ms-examples": { + "PrivateEndpointConnection_GetByHostPool": { + "$ref": "./examples/PrivateEndpointConnection_GetByHostPool.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/privatelinks.json#/parameters/PrivateEndpointConnectionName" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the connection.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionWithSystemData" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "x-ms-error-response": true, + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "PrivateLink" + ], + "operationId": "PrivateEndpointConnections_DeleteByHostPool", + "description": "Remove a connection.", + "x-ms-examples": { + "PrivateEndpointConnection_DeleteByHostPool": { + "$ref": "./examples/PrivateEndpointConnection_DeleteByHostPool.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/privatelinks.json#/parameters/PrivateEndpointConnectionName" + } + ], + "responses": { + "200": { + "description": "Successfully removed." + }, + "204": { + "description": "Connection does not exist." + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "x-ms-error-response": true, + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "PrivateLink" + ], + "operationId": "PrivateEndpointConnections_UpdateByHostPool", + "description": "Approve or reject a private endpoint connection.", + "x-ms-examples": { + "PrivateEndpointConnection_UpdateByHostPool": { + "$ref": "./examples/PrivateEndpointConnection_UpdateByHostPool.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/privatelinks.json#/parameters/PrivateEndpointConnectionName" + }, + { + "name": "connection", + "description": "Object containing the updated connection.", + "in": "body", + "required": true, + "schema": { + "$ref": "../../../../../common-types/resource-management/v1/privatelinks.json#/definitions/PrivateEndpointConnection" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionWithSystemData" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "x-ms-error-response": true, + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/privateLinkResources": { + "get": { + "tags": [ + "PrivateLink" + ], + "operationId": "PrivateLinkResources_ListByHostPool", + "description": "List the private link resources available for this hostpool.", + "x-ms-examples": { + "PrivateLinkResources_ListByHostPool": { + "$ref": "./examples/PrivateLinkResources_ListByHostPool.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of resources.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v1/privatelinks.json#/definitions/PrivateLinkResourceListResult" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "x-ms-error-response": true, + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/workspaces/{workspaceName}/privateEndpointConnections": { + "get": { + "tags": [ + "PrivateLink" + ], + "operationId": "PrivateEndpointConnections_ListByWorkspace", + "description": "List private endpoint connections.", + "x-ms-examples": { + "PrivateEndpointConnection_ListByWorkspace": { + "$ref": "./examples/PrivateEndpointConnection_ListByWorkspace.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved connection list.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionListResultWithSystemData" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "x-ms-error-response": true, + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/workspaces/{workspaceName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "PrivateLink" + ], + "operationId": "PrivateEndpointConnections_GetByWorkspace", + "description": "Get a private endpoint connection.", + "x-ms-examples": { + "PrivateEndpointConnection_GetByWorkspace": { + "$ref": "./examples/PrivateEndpointConnection_GetByWorkspace.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/privatelinks.json#/parameters/PrivateEndpointConnectionName" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the connection.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionWithSystemData" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "x-ms-error-response": true, + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "PrivateLink" + ], + "operationId": "PrivateEndpointConnections_DeleteByWorkspace", + "description": "Remove a connection.", + "x-ms-examples": { + "PrivateEndpointConnection_DeleteByWorkspace": { + "$ref": "./examples/PrivateEndpointConnection_DeleteByWorkspace.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/privatelinks.json#/parameters/PrivateEndpointConnectionName" + } + ], + "responses": { + "200": { + "description": "Successfully removed." + }, + "204": { + "description": "Connection does not exist." + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "x-ms-error-response": true, + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "PrivateLink" + ], + "operationId": "PrivateEndpointConnections_UpdateByWorkspace", + "description": "Approve or reject a private endpoint connection.", + "x-ms-examples": { + "PrivateEndpointConnection_UpdateByWorkspace": { + "$ref": "./examples/PrivateEndpointConnection_UpdateByWorkspace.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/privatelinks.json#/parameters/PrivateEndpointConnectionName" + }, + { + "name": "connection", + "description": "Object containing the updated connection.", + "in": "body", + "required": true, + "schema": { + "$ref": "../../../../../common-types/resource-management/v1/privatelinks.json#/definitions/PrivateEndpointConnection" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionWithSystemData" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "x-ms-error-response": true, + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/workspaces/{workspaceName}/privateLinkResources": { + "get": { + "tags": [ + "PrivateLink" + ], + "operationId": "PrivateLinkResources_ListByWorkspace", + "description": "List the private link resources available for this workspace.", + "x-ms-examples": { + "PrivateLinkResources_ListByWorkspace": { + "$ref": "./examples/PrivateLinkResources_ListByWorkspace.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of resources.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v1/privatelinks.json#/definitions/PrivateLinkResourceListResult" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "x-ms-error-response": true, + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorProperties" + } + } + }, + "CloudErrorProperties": { + "type": "object", + "properties": { + "code": { + "description": "Error code", + "type": "string" + }, + "message": { + "description": "Error message indicating why the operation failed.", + "type": "string" + } + } + }, + "ResourceProviderOperationList": { + "description": "Result of the request to list operations.", + "readOnly": true, + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceProviderOperation" + }, + "description": "List of operations supported by this resource provider." + } + } + }, + "ResourceProviderOperation": { + "description": "Supported operation of this resource provider.", + "readOnly": true, + "properties": { + "name": { + "description": "Operation name, in format of {provider}/{resource}/{operation}", + "type": "string" + }, + "display": { + "description": "Display metadata associated with the operation.", + "properties": { + "provider": { + "description": "Resource provider: Microsoft Desktop Virtualization.", + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed.", + "type": "string" + }, + "operation": { + "description": "Type of operation: get, read, delete, etc.", + "type": "string" + }, + "description": { + "description": "Description of this operation.", + "type": "string" + } + } + }, + "isDataAction": { + "description": "Is a data action.", + "type": "boolean" + }, + "properties": { + "$ref": "#/definitions/OperationProperties" + } + } + }, + "OperationProperties": { + "description": "Properties of the operation", + "type": "object", + "properties": { + "serviceSpecification": { + "$ref": "#/definitions/ServiceSpecification" + } + } + }, + "ServiceSpecification": { + "description": "Service specification payload", + "type": "object", + "properties": { + "logSpecifications": { + "description": "Specifications of the Log for Azure Monitoring", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/LogSpecification" + } + } + } + }, + "LogSpecification": { + "description": "Specifications of the Log for Azure Monitoring", + "type": "object", + "properties": { + "name": { + "description": "Name of the log", + "type": "string" + }, + "displayName": { + "description": "Localized friendly display name of the log", + "type": "string" + }, + "blobDuration": { + "description": "Blob duration of the log", + "type": "string" + } + } + }, + "Workspace": { + "type": "object", + "description": "Represents a Workspace definition.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ResourceModelWithAllowedPropertySet" + } + ], + "properties": { + "properties": { + "description": "Detailed properties for Workspace", + "x-ms-client-flatten": true, + "$ref": "#/definitions/WorkspaceProperties" + } + } + }, + "WorkspaceProperties": { + "description": "Schema for Workspace properties.", + "type": "object", + "properties": { + "objectId": { + "type": "string", + "description": "ObjectId of Workspace. (internal use)", + "readOnly": true + }, + "description": { + "type": "string", + "description": "Description of Workspace." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of Workspace." + }, + "applicationGroupReferences": { + "type": "array", + "description": "List of applicationGroup resource Ids.", + "items": { + "type": "string" + } + }, + "cloudPcResource": { + "type": "boolean", + "description": "Is cloud pc resource.", + "readOnly": true + }, + "publicNetworkAccess": { + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "PublicNetworkAccess", + "modelAsString": true + }, + "type": "string", + "description": "Enabled allows this resource to be accessed from both public and private networks, Disabled allows this resource to only be accessed via private endpoints", + "x-nullable": false + } + } + }, + "WorkspaceList": { + "type": "object", + "title": "WorkspaceList", + "description": "List of Workspace definitions.", + "properties": { + "value": { + "type": "array", + "description": "List of Workspace definitions.", + "items": { + "$ref": "#/definitions/Workspace" + } + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next page of results." + } + } + }, + "WorkspacePatch": { + "type": "object", + "description": "Workspace properties that can be patched.", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "tags to be updated" + }, + "properties": { + "description": "Detailed properties for Workspace", + "x-ms-client-flatten": true, + "$ref": "#/definitions/WorkspacePatchProperties" + } + } + }, + "WorkspacePatchProperties": { + "description": "Workspace properties that can be patched.", + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "Description of Workspace." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of Workspace." + }, + "applicationGroupReferences": { + "type": "array", + "description": "List of applicationGroup links.", + "items": { + "type": "string" + } + } + } + }, + "ApplicationGroup": { + "type": "object", + "description": "Represents a ApplicationGroup definition.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ResourceModelWithAllowedPropertySet" + } + ], + "required": [ + "properties" + ], + "properties": { + "properties": { + "description": "Detailed properties for ApplicationGroup", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGroupProperties", + "x-nullable": false + } + } + }, + "ApplicationGroupProperties": { + "description": "Schema for ApplicationGroup properties.", + "type": "object", + "required": [ + "hostPoolArmPath", + "applicationGroupType" + ], + "properties": { + "objectId": { + "type": "string", + "description": "ObjectId of ApplicationGroup. (internal use)", + "readOnly": true + }, + "description": { + "type": "string", + "description": "Description of ApplicationGroup." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of ApplicationGroup." + }, + "hostPoolArmPath": { + "type": "string", + "description": "HostPool arm path of ApplicationGroup.", + "x-nullable": false + }, + "workspaceArmPath": { + "type": "string", + "description": "Workspace arm path of ApplicationGroup.", + "readOnly": true + }, + "applicationGroupType": { + "enum": [ + "RemoteApp", + "Desktop" + ], + "x-ms-enum": { + "name": "ApplicationGroupType", + "modelAsString": true + }, + "type": "string", + "description": "Resource Type of ApplicationGroup.", + "x-nullable": false + }, + "migrationRequest": { + "$ref": "#/definitions/MigrationRequestProperties", + "description": "The registration info of HostPool." + }, + "cloudPcResource": { + "type": "boolean", + "description": "Is cloud pc resource.", + "readOnly": true + } + } + }, + "ApplicationGroupPatch": { + "type": "object", + "description": "ApplicationGroup properties that can be patched.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "tags to be updated" + }, + "properties": { + "description": "ApplicationGroup properties that can be patched.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGroupPatchProperties" + } + } + }, + "ApplicationGroupPatchProperties": { + "description": "ApplicationGroup properties that can be patched.", + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "Description of ApplicationGroup." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of ApplicationGroup." + } + } + }, + "ApplicationGroupList": { + "type": "object", + "title": "ApplicationGroupList", + "description": "List of ApplicationGroup definitions.", + "properties": { + "value": { + "type": "array", + "description": "List of ApplicationGroup definitions.", + "items": { + "$ref": "#/definitions/ApplicationGroup" + } + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next page of results." + } + } + }, + "HostPool": { + "type": "object", + "description": "Represents a HostPool definition.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ResourceModelWithAllowedPropertySet" + } + ], + "required": [ + "properties" + ], + "properties": { + "properties": { + "description": "Detailed properties for HostPool", + "x-ms-client-flatten": true, + "$ref": "#/definitions/HostPoolProperties", + "x-nullable": false + } + } + }, + "HostPoolProperties": { + "description": "Properties of HostPool.", + "type": "object", + "required": [ + "hostPoolType", + "loadBalancerType", + "preferredAppGroupType" + ], + "properties": { + "objectId": { + "type": "string", + "description": "ObjectId of HostPool. (internal use)", + "readOnly": true + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of HostPool." + }, + "description": { + "type": "string", + "description": "Description of HostPool." + }, + "hostPoolType": { + "enum": [ + "Personal", + "Pooled", + "BYODesktop" + ], + "x-ms-enum": { + "name": "HostPoolType", + "modelAsString": true, + "values": [ + { + "value": "Personal", + "description": "Users will be assigned a SessionHost either by administrators (PersonalDesktopAssignmentType = Direct) or upon connecting to the pool (PersonalDesktopAssignmentType = Automatic). They will always be redirected to their assigned SessionHost." + }, + { + "value": "Pooled", + "description": "Users get a new (random) SessionHost every time it connects to the HostPool." + }, + { + "value": "BYODesktop", + "description": "Users assign their own machines, load balancing logic remains the same as Personal. PersonalDesktopAssignmentType must be Direct." + } + ] + }, + "type": "string", + "description": "HostPool type for desktop.", + "x-nullable": false + }, + "personalDesktopAssignmentType": { + "enum": [ + "Automatic", + "Direct" + ], + "x-ms-enum": { + "name": "PersonalDesktopAssignmentType", + "modelAsString": true + }, + "type": "string", + "description": "PersonalDesktopAssignment type for HostPool." + }, + "customRdpProperty": { + "type": "string", + "description": "Custom rdp property of HostPool." + }, + "maxSessionLimit": { + "type": "integer", + "description": "The max session limit of HostPool." + }, + "loadBalancerType": { + "enum": [ + "BreadthFirst", + "DepthFirst", + "Persistent" + ], + "x-ms-enum": { + "name": "LoadBalancerType", + "modelAsString": true + }, + "type": "string", + "description": "The type of the load balancer.", + "x-nullable": false + }, + "ring": { + "type": "integer", + "description": "The ring number of HostPool." + }, + "validationEnvironment": { + "type": "boolean", + "description": "Is validation environment." + }, + "registrationInfo": { + "$ref": "#/definitions/RegistrationInfo", + "description": "The registration info of HostPool." + }, + "vmTemplate": { + "type": "string", + "description": "VM template for sessionhosts configuration within hostpool." + }, + "applicationGroupReferences": { + "readOnly": true, + "type": "array", + "description": "List of applicationGroup links.", + "items": { + "type": "string" + } + }, + "ssoadfsAuthority": { + "type": "string", + "description": "URL to customer ADFS server for signing WVD SSO certificates." + }, + "ssoClientId": { + "type": "string", + "description": "ClientId for the registered Relying Party used to issue WVD SSO certificates." + }, + "ssoClientSecretKeyVaultPath": { + "type": "string", + "description": "Path to Azure KeyVault storing the secret used for communication to ADFS." + }, + "ssoSecretType": { + "enum": [ + "SharedKey", + "Certificate", + "SharedKeyInKeyVault", + "CertificateInKeyVault" + ], + "x-ms-enum": { + "name": "SSOSecretType", + "modelAsString": true + }, + "type": "string", + "description": "The type of single sign on Secret Type." + }, + "preferredAppGroupType": { + "enum": [ + "None", + "Desktop", + "RailApplications" + ], + "x-ms-enum": { + "name": "PreferredAppGroupType", + "modelAsString": true + }, + "type": "string", + "description": "The type of preferred application group type, default to Desktop Application Group", + "x-nullable": false + }, + "startVMOnConnect": { + "type": "boolean", + "description": "The flag to turn on/off StartVMOnConnect feature." + }, + "migrationRequest": { + "$ref": "#/definitions/MigrationRequestProperties", + "description": "The registration info of HostPool." + }, + "cloudPcResource": { + "type": "boolean", + "description": "Is cloud pc resource.", + "readOnly": true + }, + "publicNetworkAccess": { + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "PublicNetworkAccess", + "modelAsString": true + }, + "type": "string", + "description": "Enabled allows this resource to be accessed from both public and private networks, Disabled allows this resource to only be accessed via private endpoints", + "x-nullable": false + } + } + }, + "HostPoolPatch": { + "type": "object", + "description": "HostPool properties that can be patched.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "tags to be updated" + }, + "properties": { + "description": "HostPool properties that can be patched.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/HostPoolPatchProperties" + } + } + }, + "HostPoolPatchProperties": { + "description": "Properties of HostPool.", + "type": "object", + "properties": { + "friendlyName": { + "type": "string", + "description": "Friendly name of HostPool." + }, + "description": { + "type": "string", + "description": "Description of HostPool." + }, + "customRdpProperty": { + "type": "string", + "description": "Custom rdp property of HostPool." + }, + "maxSessionLimit": { + "type": "integer", + "description": "The max session limit of HostPool." + }, + "personalDesktopAssignmentType": { + "enum": [ + "Automatic", + "Direct" + ], + "x-ms-enum": { + "name": "PersonalDesktopAssignmentType", + "modelAsString": true + }, + "type": "string", + "description": "PersonalDesktopAssignment type for HostPool." + }, + "loadBalancerType": { + "enum": [ + "BreadthFirst", + "DepthFirst", + "Persistent" + ], + "x-ms-enum": { + "name": "LoadBalancerType", + "modelAsString": true + }, + "type": "string", + "description": "The type of the load balancer." + }, + "ring": { + "type": "integer", + "description": "The ring number of HostPool." + }, + "validationEnvironment": { + "type": "boolean", + "description": "Is validation environment." + }, + "registrationInfo": { + "$ref": "#/definitions/RegistrationInfoPatch", + "description": "The registration info of HostPool." + }, + "vmTemplate": { + "type": "string", + "description": "VM template for sessionhosts configuration within hostpool." + }, + "ssoadfsAuthority": { + "type": "string", + "description": "URL to customer ADFS server for signing WVD SSO certificates." + }, + "ssoClientId": { + "type": "string", + "description": "ClientId for the registered Relying Party used to issue WVD SSO certificates." + }, + "ssoClientSecretKeyVaultPath": { + "type": "string", + "description": "Path to Azure KeyVault storing the secret used for communication to ADFS." + }, + "ssoSecretType": { + "enum": [ + "SharedKey", + "Certificate", + "SharedKeyInKeyVault", + "CertificateInKeyVault" + ], + "x-ms-enum": { + "name": "SSOSecretType", + "modelAsString": true + }, + "type": "string", + "description": "The type of single sign on Secret Type." + }, + "preferredAppGroupType": { + "enum": [ + "None", + "Desktop", + "RailApplications" + ], + "x-ms-enum": { + "name": "PreferredAppGroupType", + "modelAsString": true + }, + "type": "string", + "description": "The type of preferred application group type, default to Desktop Application Group" + }, + "startVMOnConnect": { + "type": "boolean", + "description": "The flag to turn on/off StartVMOnConnect feature." + }, + "publicNetworkAccess": { + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "PublicNetworkAccess", + "modelAsString": true + }, + "type": "string", + "description": "Enabled to allow this resource to be access from the public network" + } + } + }, + "RegistrationInfo": { + "description": "Represents a RegistrationInfo definition.", + "type": "object", + "properties": { + "expirationTime": { + "format": "date-time", + "type": "string", + "description": "Expiration time of registration token." + }, + "token": { + "type": "string", + "description": "The registration token base64 encoded string." + }, + "registrationTokenOperation": { + "enum": [ + "Delete", + "None", + "Update" + ], + "x-ms-enum": { + "name": "RegistrationTokenOperation", + "modelAsString": true + }, + "type": "string", + "description": "The type of resetting the token.", + "x-nullable": false + } + } + }, + "RegistrationInfoPatch": { + "description": "Represents a RegistrationInfo definition.", + "type": "object", + "properties": { + "expirationTime": { + "format": "date-time", + "type": "string", + "description": "Expiration time of registration token." + }, + "registrationTokenOperation": { + "enum": [ + "Delete", + "None", + "Update" + ], + "x-ms-enum": { + "name": "RegistrationTokenOperation", + "modelAsString": true + }, + "type": "string", + "description": "The type of resetting the token." + } + } + }, + "SendMessage": { + "description": "Represents message sent to a UserSession.", + "type": "object", + "properties": { + "messageTitle": { + "type": "string", + "description": "Title of message." + }, + "messageBody": { + "type": "string", + "description": "Body of message." + } + } + }, + "HostPoolList": { + "type": "object", + "title": "HostPoolList", + "description": "List of HostPool definitions.", + "properties": { + "value": { + "type": "array", + "description": "List of HostPool definitions.", + "items": { + "$ref": "#/definitions/HostPool" + } + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next page of results." + } + } + }, + "MSIXPackage": { + "description": "Schema for MSIX Package properties.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "required": [ + "properties" + ], + "properties": { + "properties": { + "description": "Detailed properties for MSIX Package", + "x-ms-client-flatten": true, + "$ref": "#/definitions/MSIXPackageProperties", + "x-nullable": false + } + } + }, + "MSIXPackageProperties": { + "description": "Schema for MSIX Package properties.", + "type": "object", + "properties": { + "imagePath": { + "type": "string", + "description": "VHD/CIM image path on Network Share.", + "x-nullable": false + }, + "packageName": { + "type": "string", + "description": "Package Name from appxmanifest.xml. ", + "x-nullable": false + }, + "packageFamilyName": { + "type": "string", + "description": "Package Family Name from appxmanifest.xml. Contains Package Name and Publisher name. ", + "x-nullable": false + }, + "displayName": { + "type": "string", + "description": "User friendly Name to be displayed in the portal. ", + "x-nullable": true + }, + "packageRelativePath": { + "type": "string", + "description": "Relative Path to the package inside the image. ", + "x-nullable": false + }, + "isRegularRegistration": { + "type": "boolean", + "description": "Specifies how to register Package in feed.", + "x-nullable": false + }, + "isActive": { + "type": "boolean", + "description": "Make this version of the package the active one across the hostpool. ", + "x-nullable": false + }, + "packageDependencies": { + "type": "array", + "description": "List of package dependencies. ", + "items": { + "$ref": "#/definitions/MsixPackageDependencies" + } + }, + "version": { + "type": "string", + "description": "Package Version found in the appxmanifest.xml. ", + "x-nullable": false + }, + "lastUpdated": { + "format": "date-time", + "type": "string", + "description": "Date Package was last updated, found in the appxmanifest.xml. ", + "x-nullable": false + }, + "packageApplications": { + "type": "array", + "description": "List of package applications. ", + "items": { + "$ref": "#/definitions/MsixPackageApplications" + }, + "x-nullable": false + } + } + }, + "MSIXPackagePatch": { + "type": "object", + "description": "MSIX Package properties that can be patched.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "Detailed properties for MSIX Package", + "x-ms-client-flatten": true, + "$ref": "#/definitions/MSIXPackagePatchProperties" + } + } + }, + "MSIXPackagePatchProperties": { + "description": "MSIX Package properties that can be patched.", + "type": "object", + "properties": { + "isActive": { + "type": "boolean", + "description": "Set a version of the package to be active across hostpool. " + }, + "isRegularRegistration": { + "type": "boolean", + "description": "Set Registration mode. Regular or Delayed." + }, + "displayName": { + "type": "string", + "description": "Display name for MSIX Package." + } + } + }, + "MsixPackageApplications": { + "description": "Schema for MSIX Package Application properties.", + "type": "object", + "properties": { + "appId": { + "type": "string", + "description": "Package Application Id, found in appxmanifest.xml.", + "x-nullable": false + }, + "description": { + "type": "string", + "description": "Description of Package Application.", + "x-nullable": false + }, + "appUserModelID": { + "type": "string", + "description": "Used to activate Package Application. Consists of Package Name and ApplicationID. Found in appxmanifest.xml.", + "x-nullable": false + }, + "friendlyName": { + "type": "string", + "description": "User friendly name.", + "x-nullable": false + }, + "iconImageName": { + "type": "string", + "description": "User friendly name.", + "x-nullable": false + }, + "rawIcon": { + "type": "string", + "format": "byte", + "description": "the icon a 64 bit string as a byte array." + }, + "rawPng": { + "type": "string", + "format": "byte", + "description": "the icon a 64 bit string as a byte array." + } + } + }, + "MsixPackageDependencies": { + "description": "Schema for MSIX Package Dependencies properties.", + "type": "object", + "properties": { + "dependencyName": { + "type": "string", + "description": "Name of package dependency.", + "x-nullable": false + }, + "publisher": { + "type": "string", + "description": "Name of dependency publisher.", + "x-nullable": false + }, + "minVersion": { + "type": "string", + "description": "Dependency version required.", + "x-nullable": false + } + } + }, + "MSIXPackageList": { + "type": "object", + "title": "MsixPackageList", + "description": "List of MSIX Package definitions.", + "properties": { + "value": { + "type": "array", + "description": "List of MSIX Package definitions.", + "items": { + "$ref": "#/definitions/MSIXPackage" + } + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next page of results." + } + } + }, + "Application": { + "description": "Schema for Application properties.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "required": [ + "properties" + ], + "properties": { + "properties": { + "description": "Detailed properties for Application", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationProperties", + "x-nullable": false + } + } + }, + "ApplicationProperties": { + "description": "Schema for Application properties.", + "type": "object", + "required": [ + "commandLineSetting" + ], + "properties": { + "objectId": { + "type": "string", + "description": "ObjectId of Application. (internal use)", + "readOnly": true + }, + "description": { + "type": "string", + "description": "Description of Application." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of Application." + }, + "filePath": { + "type": "string", + "description": "Specifies a path for the executable file for the application." + }, + "msixPackageFamilyName": { + "type": "string", + "description": "Specifies the package family name for MSIX applications", + "x-nullable": true, + "x-ms-mutability": [ + "create", + "read" + ] + }, + "msixPackageApplicationId": { + "type": "string", + "description": "Specifies the package application Id for MSIX applications", + "x-nullable": true, + "x-ms-mutability": [ + "create", + "read" + ] + }, + "applicationType": { + "enum": [ + "InBuilt", + "MsixApplication" + ], + "x-ms-enum": { + "name": "RemoteApplicationType", + "modelAsString": true + }, + "type": "string", + "description": "Resource Type of Application.", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "commandLineSetting": { + "enum": [ + "DoNotAllow", + "Allow", + "Require" + ], + "x-ms-enum": { + "name": "CommandLineSetting", + "modelAsString": true + }, + "type": "string", + "description": "Specifies whether this published application can be launched with command line arguments provided by the client, command line arguments specified at publish time, or no command line arguments at all.", + "x-nullable": false + }, + "commandLineArguments": { + "type": "string", + "description": "Command Line Arguments for Application." + }, + "showInPortal": { + "type": "boolean", + "description": "Specifies whether to show the RemoteApp program in the RD Web Access server." + }, + "iconPath": { + "type": "string", + "description": "Path to icon." + }, + "iconIndex": { + "type": "integer", + "description": "Index of the icon." + }, + "iconHash": { + "readOnly": true, + "type": "string", + "description": "Hash of the icon." + }, + "iconContent": { + "readOnly": true, + "type": "string", + "format": "byte", + "description": "the icon a 64 bit string as a byte array." + } + } + }, + "ApplicationList": { + "type": "object", + "title": "ApplicationList", + "description": "List of Application definitions.", + "properties": { + "value": { + "type": "array", + "description": "List of Application definitions.", + "items": { + "$ref": "#/definitions/Application" + } + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next page of results." + } + } + }, + "ApplicationPatch": { + "type": "object", + "description": "Application properties that can be patched.", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "tags to be updated" + }, + "properties": { + "description": "Detailed properties for Application", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationPatchProperties" + } + } + }, + "ApplicationPatchProperties": { + "description": "Application properties that can be patched.", + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "Description of Application." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of Application." + }, + "filePath": { + "type": "string", + "description": "Specifies a path for the executable file for the application." + }, + "commandLineSetting": { + "enum": [ + "DoNotAllow", + "Allow", + "Require" + ], + "x-ms-enum": { + "name": "CommandLineSetting", + "modelAsString": true + }, + "type": "string", + "description": "Specifies whether this published application can be launched with command line arguments provided by the client, command line arguments specified at publish time, or no command line arguments at all." + }, + "commandLineArguments": { + "type": "string", + "description": "Command Line Arguments for Application." + }, + "showInPortal": { + "type": "boolean", + "description": "Specifies whether to show the RemoteApp program in the RD Web Access server." + }, + "iconPath": { + "type": "string", + "description": "Path to icon." + }, + "iconIndex": { + "type": "integer", + "description": "Index of the icon." + }, + "msixPackageFamilyName": { + "type": "string", + "description": "Specifies the package family name for MSIX applications", + "x-nullable": true + }, + "msixPackageApplicationId": { + "type": "string", + "description": "Specifies the package application Id for MSIX applications", + "x-nullable": true + }, + "applicationType": { + "enum": [ + "InBuilt", + "MsixApplication" + ], + "x-ms-enum": { + "name": "RemoteApplicationType", + "modelAsString": true + }, + "type": "string", + "description": "Resource Type of Application." + } + } + }, + "Desktop": { + "description": "Schema for Desktop properties.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "Detailed properties for Desktop", + "x-ms-client-flatten": true, + "$ref": "#/definitions/DesktopProperties" + } + } + }, + "DesktopProperties": { + "description": "Schema for Desktop properties.", + "type": "object", + "properties": { + "objectId": { + "type": "string", + "description": "ObjectId of Desktop. (internal use)", + "readOnly": true + }, + "description": { + "type": "string", + "description": "Description of Desktop." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of Desktop." + }, + "iconHash": { + "readOnly": true, + "type": "string", + "description": "Hash of the icon." + }, + "iconContent": { + "readOnly": true, + "type": "string", + "format": "byte", + "description": "The icon a 64 bit string as a byte array." + } + } + }, + "DesktopList": { + "type": "object", + "title": "DesktopList", + "description": "List of Desktop definitions.", + "properties": { + "value": { + "type": "array", + "description": "List of Desktop definitions.", + "items": { + "$ref": "#/definitions/Desktop" + } + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next page of results." + } + } + }, + "DesktopPatch": { + "type": "object", + "description": "Desktop properties that can be patched.", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "tags to be updated" + }, + "properties": { + "description": "Detailed properties for Desktop", + "x-ms-client-flatten": true, + "$ref": "#/definitions/DesktopPatchProperties" + } + } + }, + "DesktopPatchProperties": { + "description": "Desktop properties that can be patched.", + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "Description of Desktop." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of Desktop." + } + } + }, + "StartMenuItemProperties": { + "description": "Schema for StartMenuItem properties.", + "type": "object", + "properties": { + "appAlias": { + "type": "string", + "description": "Alias of StartMenuItem." + }, + "filePath": { + "type": "string", + "description": "Path to the file of StartMenuItem." + }, + "commandLineArguments": { + "type": "string", + "description": "Command line arguments for StartMenuItem." + }, + "iconPath": { + "type": "string", + "description": "Path to the icon." + }, + "iconIndex": { + "type": "integer", + "description": "Index of the icon." + } + } + }, + "StartMenuItem": { + "type": "object", + "description": "Represents a StartMenuItem definition.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "Detailed properties for StartMenuItem", + "x-ms-client-flatten": true, + "$ref": "#/definitions/StartMenuItemProperties" + } + } + }, + "StartMenuItemList": { + "type": "object", + "title": "StartMenuItemList", + "description": "List of StartMenuItem definitions.", + "properties": { + "value": { + "type": "array", + "description": "List of StartMenuItem definitions.", + "items": { + "$ref": "#/definitions/StartMenuItem" + } + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next page of results." + } + } + }, + "ExpandMsixImageProperties": { + "description": "Schema for Expand MSIX Image properties.", + "type": "object", + "properties": { + "packageAlias": { + "type": "string", + "description": "Alias of MSIX Package." + }, + "imagePath": { + "type": "string", + "description": "VHD/CIM image path on Network Share.", + "x-nullable": false + }, + "packageName": { + "type": "string", + "description": "Package Name from appxmanifest.xml. ", + "x-nullable": false + }, + "packageFamilyName": { + "type": "string", + "description": "Package Family Name from appxmanifest.xml. Contains Package Name and Publisher name. ", + "x-nullable": false + }, + "packageFullName": { + "type": "string", + "description": "Package Full Name from appxmanifest.xml. ", + "x-nullable": false + }, + "displayName": { + "type": "string", + "description": "User friendly Name to be displayed in the portal. ", + "x-nullable": true + }, + "packageRelativePath": { + "type": "string", + "description": "Relative Path to the package inside the image. ", + "x-nullable": false + }, + "isRegularRegistration": { + "type": "boolean", + "description": "Specifies how to register Package in feed.", + "x-nullable": false + }, + "isActive": { + "type": "boolean", + "description": "Make this version of the package the active one across the hostpool. ", + "x-nullable": false + }, + "packageDependencies": { + "type": "array", + "description": "List of package dependencies. ", + "items": { + "$ref": "#/definitions/MsixPackageDependencies" + }, + "x-nullable": true + }, + "version": { + "type": "string", + "description": "Package Version found in the appxmanifest.xml. ", + "x-nullable": false + }, + "lastUpdated": { + "format": "date-time", + "type": "string", + "description": "Date Package was last updated, found in the appxmanifest.xml. ", + "x-nullable": false + }, + "packageApplications": { + "type": "array", + "description": "List of package applications. ", + "items": { + "$ref": "#/definitions/MsixPackageApplications" + }, + "x-nullable": false + } + } + }, + "ExpandMsixImage": { + "type": "object", + "description": "Represents the definition of contents retrieved after expanding the MSIX Image. ", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "Detailed properties for ExpandMsixImage", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpandMsixImageProperties" + } + } + }, + "ExpandMsixImageList": { + "type": "object", + "title": "ExpandMsixImageList", + "description": "List of MSIX package properties retrieved from MSIX Image expansion.", + "properties": { + "value": { + "type": "array", + "description": "List of MSIX package properties from give MSIX Image.", + "items": { + "$ref": "#/definitions/ExpandMsixImage" + } + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next page of results." + } + } + }, + "MSIXImageURI": { + "description": "Represents URI referring to MSIX Image", + "type": "object", + "properties": { + "uri": { + "type": "string", + "description": "URI to Image" + } + } + }, + "SessionHost": { + "type": "object", + "description": "Represents a SessionHost definition.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "Detailed properties for SessionHost", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SessionHostProperties" + } + } + }, + "SessionHostProperties": { + "description": "Schema for SessionHost properties.", + "type": "object", + "properties": { + "objectId": { + "type": "string", + "description": "ObjectId of SessionHost. (internal use)", + "readOnly": true + }, + "lastHeartBeat": { + "format": "date-time", + "type": "string", + "description": "Last heart beat from SessionHost." + }, + "sessions": { + "type": "integer", + "description": "Number of sessions on SessionHost." + }, + "agentVersion": { + "type": "string", + "description": "Version of agent on SessionHost." + }, + "allowNewSession": { + "type": "boolean", + "description": "Allow a new session." + }, + "virtualMachineId": { + "type": "string", + "description": "Virtual Machine Id of SessionHost's underlying virtual machine.", + "readOnly": true + }, + "resourceId": { + "type": "string", + "description": "Resource Id of SessionHost's underlying virtual machine.", + "readOnly": true + }, + "assignedUser": { + "type": "string", + "description": "User assigned to SessionHost." + }, + "status": { + "enum": [ + "Available", + "Unavailable", + "Shutdown", + "Disconnected", + "Upgrading", + "UpgradeFailed", + "NoHeartbeat", + "NotJoinedToDomain", + "DomainTrustRelationshipLost", + "SxSStackListenerNotReady", + "FSLogixNotHealthy", + "NeedsAssistance" + ], + "x-ms-enum": { + "name": "Status", + "modelAsString": true, + "values": [ + { + "value": "Available", + "description": "Session Host has passed all the health checks and is available to handle connections." + }, + { + "value": "Unavailable", + "description": "Session Host is either turned off or has failed critical health checks which is causing service not to be able to route connections to this session host. Note this replaces previous 'NoHeartBeat' status." + }, + { + "value": "Shutdown", + "description": "Session Host is shutdown - RD Agent reported session host to be stopped or deallocated." + }, + { + "value": "Disconnected", + "description": "The Session Host is unavailable because it is currently disconnected." + }, + { + "value": "Upgrading", + "description": "Session Host is unavailable because currently an upgrade of RDAgent/side-by-side stack is in progress. Note: this state will be removed once the upgrade completes and the host is able to accept connections." + }, + { + "value": "UpgradeFailed", + "description": "Session Host is unavailable because the critical component upgrade (agent, side-by-side stack, etc.) failed." + }, + { + "value": "NoHeartbeat", + "description": "The Session Host is not heart beating." + }, + { + "value": "NotJoinedToDomain", + "description": "SessionHost is not joined to domain." + }, + { + "value": "DomainTrustRelationshipLost", + "description": "SessionHost's domain trust relationship lost" + }, + { + "value": "SxSStackListenerNotReady", + "description": "SxS stack installed on the SessionHost is not ready to receive connections." + }, + { + "value": "FSLogixNotHealthy", + "description": "FSLogix is in an unhealthy state on the session host." + }, + { + "value": "NeedsAssistance", + "description": "New status to inform admins that the health on their endpoint needs to be fixed. The connections might not fail, as these issues are not fatal." + } + ] + }, + "type": "string", + "description": "Status for a SessionHost." + }, + "statusTimestamp": { + "format": "date-time", + "type": "string", + "description": "The timestamp of the status.", + "readOnly": true + }, + "osVersion": { + "type": "string", + "description": "The version of the OS on the session host." + }, + "sxSStackVersion": { + "type": "string", + "description": "The version of the side by side stack on the session host." + }, + "updateState": { + "enum": [ + "Initial", + "Pending", + "Started", + "Succeeded", + "Failed" + ], + "x-ms-enum": { + "name": "UpdateState", + "modelAsString": true + }, + "type": "string", + "description": "Update state of a SessionHost." + }, + "lastUpdateTime": { + "format": "date-time", + "type": "string", + "description": "The timestamp of the last update.", + "readOnly": true + }, + "updateErrorMessage": { + "type": "string", + "description": "The error message." + }, + "sessionHostHealthCheckResults": { + "type": "array", + "readOnly": true, + "description": "List of SessionHostHealthCheckReports", + "items": { + "$ref": "#/definitions/SessionHostHealthCheckReport" + } + } + } + }, + "SessionHostHealthCheckReport": { + "type": "object", + "description": "The report for session host information.", + "properties": { + "healthCheckName": { + "enum": [ + "DomainJoinedCheck", + "DomainTrustCheck", + "FSLogixHealthCheck", + "SxSStackListenerCheck", + "UrlsAccessibleCheck", + "MonitoringAgentCheck", + "DomainReachable", + "WebRTCRedirectorCheck", + "SupportedEncryptionCheck", + "MetaDataServiceCheck", + "AppAttachHealthCheck" + ], + "x-ms-enum": { + "name": "HealthCheckName", + "modelAsString": true, + "values": [ + { + "value": "DomainJoinedCheck", + "description": "Verifies the SessionHost is joined to a domain. If this check fails is classified as fatal as no connection can succeed if the SessionHost is not joined to the domain." + }, + { + "value": "DomainTrustCheck", + "description": "Verifies the SessionHost is not experiencing domain trust issues that will prevent authentication on SessionHost at connection time when session is created. If this check fails is classified as fatal as no connection can succeed if we cannot reach the domain for authentication on the SessionHost." + }, + { + "value": "FSLogixHealthCheck", + "description": "Verifies the FSLogix service is up and running to make sure users' profiles are loaded in the session. If this check fails is classified as fatal as even if the connection can succeed, user experience is bad as the user profile cannot be loaded and user will get a temporary profile in the session." + }, + { + "value": "SxSStackListenerCheck", + "description": "Verifies that the SxS stack is up and running so connections can succeed. If this check fails is classified as fatal as no connection can succeed if the SxS stack is not ready." + }, + { + "value": "UrlsAccessibleCheck", + "description": "Verifies that the required WVD service and Geneva URLs are reachable from the SessionHost. These URLs are: RdTokenUri, RdBrokerURI, RdDiagnosticsUri and storage blob URLs for agent monitoring (geneva). If this check fails, it is non fatal and the machine still can service connections, main issue may be that monitoring agent is unable to store warm path data (logs, operations ...)." + }, + { + "value": "MonitoringAgentCheck", + "description": "Verifies that the required Geneva agent is running. If this check fails, it is non fatal and the machine still can service connections, main issue may be that monitoring agent is missing or running (possibly) older version." + }, + { + "value": "DomainReachable", + "description": "Verifies the domain the SessionHost is joined to is still reachable. If this check fails is classified as fatal as no connection can succeed if the domain the SessionHost is joined is not reachable at the time of connection." + }, + { + "value": "WebRTCRedirectorCheck", + "description": "Verifies whether the WebRTCRedirector component is healthy. The WebRTCRedirector component is used to optimize video and audio performance in Microsoft Teams. This checks whether the component is still running, and whether there is a higher version available. If this check fails, it is non fatal and the machine still can service connections, main issue may be the WebRTCRedirector component has to be restarted or updated." + }, + { + "value": "SupportedEncryptionCheck", + "description": "Verifies the value of SecurityLayer registration key. If the value is 0 (SecurityLayer.RDP) this check fails with Error code = NativeMethodErrorCode.E_FAIL and is fatal. If the value is 1 (SecurityLayer.Negotiate) this check fails with Error code = NativeMethodErrorCode.ERROR_SUCCESS and is non fatal." + }, + { + "value": "MetaDataServiceCheck", + "description": "Verifies the metadata service is accessible and return compute properties." + }, + { + "value": "AppAttachHealthCheck", + "description": "Verifies that the AppAttachService is healthy (there were no issues during package staging). The AppAttachService is used to enable the staging/registration (and eventual deregistration/destaging) of MSIX apps that have been set up by the tenant admin. This checks whether the component had any failures during package staging. Failures in staging will prevent some MSIX apps from working properly for the end user. If this check fails, it is non fatal and the machine still can service connections, main issue may be certain apps will not work for end-users." + } + ] + }, + "type": "string", + "description": "Represents the name of the health check operation performed.", + "readOnly": true + }, + "healthCheckResult": { + "enum": [ + "Unknown", + "HealthCheckSucceeded", + "HealthCheckFailed", + "SessionHostShutdown" + ], + "x-ms-enum": { + "name": "HealthCheckResult", + "modelAsString": true, + "values": [ + { + "value": "Unknown", + "description": "Health check result is not currently known." + }, + { + "value": "HealthCheckSucceeded", + "description": "Health check passed." + }, + { + "value": "HealthCheckFailed", + "description": "Health check failed." + }, + { + "value": "SessionHostShutdown", + "description": "We received a Shutdown notification." + } + ] + }, + "type": "string", + "description": "Represents the Health state of the health check we performed.", + "readOnly": true + }, + "additionalFailureDetails": { + "$ref": "#/definitions/SessionHostHealthCheckFailureDetails", + "description": "Additional detailed information on the failure.", + "readOnly": true + } + } + }, + "SessionHostHealthCheckFailureDetails": { + "type": "object", + "description": "Contains details on the failure.", + "properties": { + "message": { + "type": "string", + "description": "Failure message: hints on what is wrong and how to recover.", + "readOnly": true + }, + "errorCode": { + "type": "integer", + "format": "int32", + "description": "Error code corresponding for the failure.", + "readOnly": true + }, + "lastHealthCheckDateTime": { + "format": "date-time", + "type": "string", + "description": "The timestamp of the last update.", + "readOnly": true + } + } + }, + "SessionHostPatch": { + "type": "object", + "description": "SessionHost properties that can be patched.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "Detailed properties for SessionHost", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SessionHostPatchProperties" + } + } + }, + "SessionHostPatchProperties": { + "description": "SessionHost properties that can be patched.", + "type": "object", + "properties": { + "allowNewSession": { + "type": "boolean", + "description": "Allow a new session." + }, + "assignedUser": { + "type": "string", + "description": "User assigned to SessionHost." + } + } + }, + "SessionHostList": { + "type": "object", + "title": "SessionHostList", + "description": "List of SessionHost definitions.", + "properties": { + "value": { + "type": "array", + "description": "List of SessionHost definitions.", + "items": { + "$ref": "#/definitions/SessionHost" + } + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next page of results." + } + } + }, + "UserSession": { + "type": "object", + "description": "Represents a UserSession definition.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "Detailed properties for UserSession", + "x-ms-client-flatten": true, + "$ref": "#/definitions/UserSessionProperties" + } + } + }, + "UserSessionProperties": { + "description": "Schema for UserSession properties.", + "type": "object", + "properties": { + "objectId": { + "type": "string", + "description": "ObjectId of user session. (internal use)", + "readOnly": true + }, + "userPrincipalName": { + "type": "string", + "description": "The user principal name." + }, + "applicationType": { + "enum": [ + "RemoteApp", + "Desktop" + ], + "x-ms-enum": { + "name": "ApplicationType", + "modelAsString": true + }, + "type": "string", + "description": "Application type of application." + }, + "sessionState": { + "enum": [ + "Unknown", + "Active", + "Disconnected", + "Pending", + "LogOff", + "UserProfileDiskMounted" + ], + "x-ms-enum": { + "name": "SessionState", + "modelAsString": true + }, + "type": "string", + "description": "State of user session." + }, + "activeDirectoryUserName": { + "type": "string", + "description": "The active directory user name." + }, + "createTime": { + "format": "date-time", + "type": "string", + "description": "The timestamp of the user session create." + } + } + }, + "UserSessionList": { + "type": "object", + "title": "UserSessionList", + "description": "List of UserSession definitions.", + "properties": { + "value": { + "type": "array", + "description": "List of UserSession definitions.", + "items": { + "$ref": "#/definitions/UserSession" + } + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next page of results." + } + } + }, + "ScalingPlan": { + "type": "object", + "title": "ScalingPlan", + "description": "Represents a scaling plan definition.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ResourceModelWithAllowedPropertySet" + } + ], + "properties": { + "properties": { + "description": "Detailed properties for scaling plan.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ScalingPlanProperties" + } + } + }, + "ScalingPlanProperties": { + "type": "object", + "description": "Scaling plan properties.", + "properties": { + "objectId": { + "type": "string", + "description": "ObjectId of scaling plan. (internal use)", + "readOnly": true + }, + "description": { + "type": "string", + "description": "Description of scaling plan." + }, + "friendlyName": { + "type": "string", + "description": "User friendly name of scaling plan." + }, + "timeZone": { + "type": "string", + "description": "Timezone of the scaling plan." + }, + "hostPoolType": { + "enum": [ + "Personal", + "Pooled", + "BYODesktop" + ], + "x-ms-enum": { + "name": "HostPoolType", + "modelAsString": true, + "values": [ + { + "value": "Personal", + "description": "Users will be assigned a SessionHost either by administrators (PersonalDesktopAssignmentType = Direct) or upon connecting to the pool (PersonalDesktopAssignmentType = Automatic). They will always be redirected to their assigned SessionHost." + }, + { + "value": "Pooled", + "description": "Users get a new (random) SessionHost every time it connects to the HostPool." + }, + { + "value": "BYODesktop", + "description": "Users assign their own machines, load balancing logic remains the same as Personal. PersonalDesktopAssignmentType must be Direct." + } + ] + }, + "type": "string", + "description": "HostPool type for desktop.", + "x-nullable": false + }, + "exclusionTag": { + "type": "string", + "description": "Exclusion tag for scaling plan." + }, + "schedules": { + "type": "array", + "description": "List of ScalingSchedule definitions.", + "items": { + "$ref": "#/definitions/ScalingSchedule" + } + }, + "hostPoolReferences": { + "type": "array", + "description": "List of ScalingHostPoolReference definitions.", + "items": { + "$ref": "#/definitions/ScalingHostPoolReference" + } + } + } + }, + "ScalingSchedule": { + "description": "Scaling plan schedule.", + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of the scaling schedule." + }, + "daysOfWeek": { + "type": "array", + "description": "Set of days of the week on which this schedule is active.", + "items": { + "enum": [ + "Sunday", + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday" + ], + "type": "string" + } + }, + "rampUpStartTime": { + "format": "date-time", + "type": "string", + "description": "Starting time for ramp up period." + }, + "rampUpLoadBalancingAlgorithm": { + "enum": [ + "BreadthFirst", + "DepthFirst" + ], + "x-ms-enum": { + "name": "SessionHostLoadBalancingAlgorithm", + "modelAsString": true + }, + "type": "string", + "description": "Load balancing algorithm for ramp up period." + }, + "rampUpMinimumHostsPct": { + "type": "integer", + "format": "int32", + "minimum": 0, + "maximum": 100, + "description": "Minimum host percentage for ramp up period." + }, + "rampUpCapacityThresholdPct": { + "type": "integer", + "format": "int32", + "minimum": 0, + "maximum": 100, + "description": "Capacity threshold for ramp up period." + }, + "peakStartTime": { + "format": "date-time", + "type": "string", + "description": "Starting time for peak period." + }, + "peakLoadBalancingAlgorithm": { + "enum": [ + "BreadthFirst", + "DepthFirst" + ], + "x-ms-enum": { + "name": "SessionHostLoadBalancingAlgorithm", + "modelAsString": true + }, + "type": "string", + "description": "Load balancing algorithm for peak period." + }, + "rampDownStartTime": { + "format": "date-time", + "type": "string", + "description": "Starting time for ramp down period." + }, + "rampDownLoadBalancingAlgorithm": { + "enum": [ + "BreadthFirst", + "DepthFirst" + ], + "x-ms-enum": { + "name": "SessionHostLoadBalancingAlgorithm", + "modelAsString": true + }, + "type": "string", + "description": "Load balancing algorithm for ramp down period." + }, + "rampDownMinimumHostsPct": { + "type": "integer", + "format": "int32", + "minimum": 0, + "maximum": 100, + "description": "Minimum host percentage for ramp down period." + }, + "rampDownCapacityThresholdPct": { + "type": "integer", + "format": "int32", + "minimum": 0, + "maximum": 100, + "description": "Capacity threshold for ramp down period." + }, + "rampDownForceLogoffUsers": { + "type": "boolean", + "description": "Should users be logged off forcefully from hosts." + }, + "rampDownStopHostsWhen": { + "enum": [ + "ZeroSessions", + "ZeroActiveSessions" + ], + "x-ms-enum": { + "name": "StopHostsWhen", + "modelAsString": true + }, + "type": "string", + "description": "Specifies when to stop hosts during ramp down period." + }, + "rampDownWaitTimeMinutes": { + "type": "integer", + "format": "int32", + "description": "Number of minutes to wait to stop hosts during ramp down period." + }, + "rampDownNotificationMessage": { + "type": "string", + "description": "Notification message for users during ramp down period." + }, + "offPeakStartTime": { + "format": "date-time", + "type": "string", + "description": "Starting time for off-peak period." + }, + "offPeakLoadBalancingAlgorithm": { + "enum": [ + "BreadthFirst", + "DepthFirst" + ], + "x-ms-enum": { + "name": "SessionHostLoadBalancingAlgorithm", + "modelAsString": true + }, + "type": "string", + "description": "Load balancing algorithm for off-peak period." + } + } + }, + "ScalingHostPoolReference": { + "description": "Scaling plan reference to hostpool.", + "type": "object", + "properties": { + "hostPoolArmPath": { + "type": "string", + "description": "Arm path of referenced hostpool." + }, + "scalingPlanEnabled": { + "type": "boolean", + "description": "Is the scaling plan enabled for this hostpool." + } + } + }, + "ScalingPlanList": { + "type": "object", + "title": "ScalingPlanList", + "description": "List of scaling plan definitions.", + "properties": { + "value": { + "type": "array", + "description": "List of scaling plan definitions.", + "items": { + "$ref": "#/definitions/ScalingPlan" + } + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next page of results." + } + } + }, + "ScalingPlanPatch": { + "type": "object", + "description": "Scaling plan properties that can be patched.", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "tags to be updated" + }, + "properties": { + "description": "Detailed properties for scaling plan", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ScalingPlanPatchProperties" + } + } + }, + "ScalingPlanPatchProperties": { + "type": "object", + "description": "Scaling plan properties.", + "properties": { + "description": { + "type": "string", + "description": "Description of scaling plan." + }, + "friendlyName": { + "type": "string", + "description": "User friendly name of scaling plan." + }, + "timeZone": { + "type": "string", + "description": "Timezone of the scaling plan." + }, + "hostPoolType": { + "enum": [ + "Personal", + "Pooled", + "BYODesktop" + ], + "x-ms-enum": { + "name": "HostPoolType", + "modelAsString": true, + "values": [ + { + "value": "Personal", + "description": "Users will be assigned a SessionHost either by administrators (PersonalDesktopAssignmentType = Direct) or upon connecting to the pool (PersonalDesktopAssignmentType = Automatic). They will always be redirected to their assigned SessionHost." + }, + { + "value": "Pooled", + "description": "Users get a new (random) SessionHost every time it connects to the HostPool." + }, + { + "value": "BYODesktop", + "description": "Users assign their own machines, load balancing logic remains the same as Personal. PersonalDesktopAssignmentType must be Direct." + } + ] + }, + "type": "string", + "description": "HostPool type for desktop.", + "x-nullable": false + }, + "exclusionTag": { + "type": "string", + "description": "Exclusion tag for scaling plan." + }, + "schedules": { + "type": "array", + "description": "List of ScalingSchedule definitions.", + "items": { + "$ref": "#/definitions/ScalingSchedule" + } + }, + "hostPoolReferences": { + "type": "array", + "description": "List of ScalingHostPoolReference definitions.", + "items": { + "$ref": "#/definitions/ScalingHostPoolReference" + } + } + } + }, + "MigrationRequestProperties": { + "type": "object", + "description": "Properties for arm migration.", + "properties": { + "operation": { + "enum": [ + "Start", + "Revoke", + "Complete", + "Hide", + "Unhide" + ], + "x-ms-enum": { + "name": "Operation", + "modelAsString": true, + "values": [ + { + "value": "Start", + "description": "Start the migration." + }, + { + "value": "Revoke", + "description": "Revoke the migration." + }, + { + "value": "Complete", + "description": "Complete the migration." + }, + { + "value": "Hide", + "description": "Hide the hostpool." + }, + { + "value": "Unhide", + "description": "Unhide the hostpool." + } + ] + }, + "type": "string", + "description": "The type of operation for migration." + }, + "migrationPath": { + "type": "string", + "description": "The path to the legacy object to migrate." + } + } + }, + "PrivateEndpointConnectionWithSystemData": { + "properties": { + "systemData": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData" + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/privatelinks.json#/definitions/PrivateEndpointConnection" + } + ], + "description": "The Private Endpoint Connection resource." + }, + "PrivateEndpointConnectionListResultWithSystemData": { + "properties": { + "value": { + "type": "array", + "description": "Array of private endpoint connections", + "items": { + "$ref": "#/definitions/PrivateEndpointConnectionWithSystemData" + } + } + }, + "description": "List of private endpoint connection associated with the specified storage account" + } + }, + "parameters": { + "HostPoolNameParameter": { + "name": "hostPoolName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the host pool within the specified resource group", + "maxLength": 64, + "minLength": 3, + "x-ms-parameter-location": "method" + }, + "MSIXPackageFullNameParameter": { + "name": "msixPackageFullName", + "in": "path", + "required": true, + "type": "string", + "description": "The version specific package full name of the MSIX package within specified hostpool", + "maxLength": 100, + "minLength": 3, + "x-ms-parameter-location": "method" + }, + "ApplicationGroupNameParameter": { + "name": "applicationGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application group", + "maxLength": 64, + "minLength": 3, + "x-ms-parameter-location": "method" + }, + "ApplicationNameParameter": { + "name": "applicationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application within the specified application group", + "maxLength": 24, + "minLength": 3, + "x-ms-parameter-location": "method" + }, + "DesktopNameParameter": { + "name": "desktopName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the desktop within the specified desktop group", + "maxLength": 24, + "minLength": 3, + "x-ms-parameter-location": "method" + }, + "WorkspaceNameParameter": { + "name": "workspaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the workspace", + "maxLength": 64, + "minLength": 3, + "x-ms-parameter-location": "method" + }, + "SessionHostNameParameter": { + "name": "sessionHostName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the session host within the specified host pool", + "maxLength": 48, + "minLength": 3, + "x-ms-parameter-location": "method" + }, + "UserSessionIdParameter": { + "name": "userSessionId", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the user session within the specified session host", + "maxLength": 24, + "minLength": 1, + "x-ms-parameter-location": "method" + }, + "StartMenuItemNameParameter": { + "name": "startMenuItemName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the start menu item within the specified host pool", + "maxLength": 24, + "minLength": 3, + "x-ms-parameter-location": "method" + }, + "MSIXImageURIParameter": { + "name": "msixImageURI", + "in": "path", + "required": true, + "type": "string", + "description": "URI to the MSIX Image (VHD/CIM).", + "maxLength": 100, + "minLength": 3, + "x-ms-parameter-location": "method" + }, + "ScalingPlanNameParameter": { + "name": "scalingPlanName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the scaling plan.", + "maxLength": 24, + "minLength": 3, + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/ApplicationGroup_Create.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/ApplicationGroup_Create.json new file mode 100644 index 000000000000..29fc0924e2af --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/ApplicationGroup_Create.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "api-version": "2021-04-01-preview", + "applicationGroup": { + "location": "centralus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "applicationGroupType": "RemoteApp", + "migrationRequest": { + "migrationPath": "TenantGroups/{defaultV1TenantGroup.Name}/Tenants/{defaultV1Tenant.Name}/HostPools/{sessionHostPool.Name}", + "operation": "Start" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "applicationGroup1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1", + "type": "Microsoft.DesktopVirtualization/applicationGroups", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "workspaceArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "applicationGroupType": "RemoteApp", + "cloudPcResource": false, + "migrationRequest": { + "migrationPath": "TenantGroups/{defaultV1TenantGroup.Name}/Tenants/{defaultV1Tenant.Name}/HostPools/{sessionHostPool.Name}", + "operation": "Start" + } + } + } + }, + "201": { + "body": { + "name": "applicationGroup1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1", + "type": "Microsoft.DesktopVirtualization/applicationGroups", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "workspaceArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "applicationGroupType": "RemoteApp", + "cloudPcResource": false, + "migrationRequest": { + "migrationPath": "TenantGroups/{defaultV1TenantGroup.Name}/Tenants/{defaultV1Tenant.Name}/HostPools/{sessionHostPool.Name}", + "operation": "Start" + } + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/ApplicationGroup_Delete.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/ApplicationGroup_Delete.json new file mode 100644 index 000000000000..f7aa81bc7d42 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/ApplicationGroup_Delete.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "name": "applicationGroup1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1", + "type": "Microsoft.DesktopVirtualization/applicationGroups", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "workspaceArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "applicationGroupType": "RemoteApp", + "cloudPcResource": false + } + }, + "204": {} + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/ApplicationGroup_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/ApplicationGroup_Get.json new file mode 100644 index 000000000000..460362ee6158 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/ApplicationGroup_Get.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "name": "applicationGroup1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1", + "type": "Microsoft.DesktopVirtualization/applicationGroups", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "workspaceArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "applicationGroupType": "RemoteApp", + "cloudPcResource": false + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/ApplicationGroup_ListByResourceGroup.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/ApplicationGroup_ListByResourceGroup.json new file mode 100644 index 000000000000..271cfcdd4fca --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/ApplicationGroup_ListByResourceGroup.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "api-version": "2021-04-01-preview", + "$filter": "applicationGroupType eq 'RailApplication'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "applicationGroup1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1", + "type": "Microsoft.DesktopVirtualization/applicationGroups", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "workspaceArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "applicationGroupType": "RemoteApp", + "cloudPcResource": false + } + }, + { + "name": "applicationGroup2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup2", + "type": "Microsoft.DesktopVirtualization/applicationGroups", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "workspaceArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "applicationGroupType": "RemoteApp", + "cloudPcResource": false + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/ApplicationGroup_ListBySubscription.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/ApplicationGroup_ListBySubscription.json new file mode 100644 index 000000000000..c89d3df338b3 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/ApplicationGroup_ListBySubscription.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "api-version": "2021-04-01-preview", + "$filter": "applicationGroupType eq 'RailApplication'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "applicationGroup1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1", + "type": "Microsoft.DesktopVirtualization/applicationGroups", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "workspaceArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "applicationGroupType": "RemoteApp", + "cloudPcResource": false + } + }, + { + "name": "applicationGroup2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup2", + "type": "Microsoft.DesktopVirtualization/applicationGroups", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "workspaceArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "applicationGroupType": "RemoteApp", + "cloudPcResource": false + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/ApplicationGroup_Update.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/ApplicationGroup_Update.json new file mode 100644 index 000000000000..6bebf8a0fede --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/ApplicationGroup_Update.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "api-version": "2021-04-01-preview", + "applicationGroup": { + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly" + } + } + }, + "responses": { + "200": { + "body": { + "name": "applicationGroup1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1", + "type": "Microsoft.DesktopVirtualization/applicationGroups", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "workspaceArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "applicationGroupType": "RemoteApp", + "cloudPcResource": false + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/Application_Create.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/Application_Create.json new file mode 100644 index 000000000000..636424c4cfe7 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/Application_Create.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "applicationName": "application1", + "api-version": "2021-04-01-preview", + "application": { + "properties": { + "description": "des1", + "friendlyName": "friendly", + "filePath": "path", + "commandLineSetting": "Allow", + "commandLineArguments": "arguments", + "showInPortal": true, + "iconPath": "icon", + "iconIndex": 1 + } + } + }, + "responses": { + "200": { + "body": { + "name": "applicationGroup1/application1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/applications/application1", + "type": "Microsoft.DesktopVirtualization/applicationGroups/applications", + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "filePath": "path", + "commandLineSetting": "Allow", + "commandLineArguments": "arguments", + "showInPortal": true, + "iconPath": "icon", + "iconIndex": 1, + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA...", + "applicationType": "InBuilt", + "msixPackageFamilyName": null, + "msixPackageApplicationId": null + } + } + }, + "201": { + "body": { + "name": "applicationGroup1/application1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/applications/application1", + "type": "Microsoft.DesktopVirtualization/applicationGroups/applications", + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "filePath": "path", + "commandLineSetting": "Allow", + "commandLineArguments": "arguments", + "showInPortal": true, + "iconPath": "icon", + "iconIndex": 1, + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA...", + "applicationType": "InBuilt", + "msixPackageFamilyName": null, + "msixPackageApplicationId": null + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/Application_Delete.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/Application_Delete.json new file mode 100644 index 000000000000..a45a4ac17868 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/Application_Delete.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "applicationName": "application1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "name": "applicationGroup1/application1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/applications/application1", + "type": "Microsoft.DesktopVirtualization/applicationGroups/applications", + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "filePath": "path", + "commandLineSetting": "Allow", + "commandLineArguments": "arguments", + "showInPortal": true, + "iconPath": "icon", + "iconIndex": 1, + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA...", + "applicationType": "InBuilt", + "msixPackageFamilyName": null, + "msixPackageApplicationId": null + } + }, + "204": {} + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/Application_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/Application_Get.json new file mode 100644 index 000000000000..2d044cd560f8 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/Application_Get.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "applicationName": "application1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "name": "applicationGroup1/application1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/applications/application1", + "type": "Microsoft.DesktopVirtualization/applicationGroups/applications", + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "filePath": "path", + "commandLineSetting": "Allow", + "commandLineArguments": "arguments", + "showInPortal": true, + "iconPath": "icon", + "iconIndex": 1, + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA...", + "applicationType": "InBuilt", + "msixPackageFamilyName": null, + "msixPackageApplicationId": null + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/Application_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/Application_List.json new file mode 100644 index 000000000000..c825b3017715 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/Application_List.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "applicationGroup1/application1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/applications/application1", + "type": "Microsoft.DesktopVirtualization/applicationGroups/applications", + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "filePath": "path", + "commandLineSetting": "Allow", + "commandLineArguments": "arguments", + "showInPortal": true, + "iconPath": "icon", + "iconIndex": 1, + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA...", + "applicationType": "InBuilt", + "msixPackageFamilyName": null, + "msixPackageApplicationId": null + } + }, + { + "name": "applicationGroup1/application2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/applications/application2", + "type": "Microsoft.DesktopVirtualization/applicationGroups/applications", + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des2", + "friendlyName": "friendly", + "filePath": "path", + "commandLineSetting": "Allow", + "commandLineArguments": "arguments", + "showInPortal": true, + "iconPath": "icon", + "iconIndex": 1, + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA...", + "applicationType": "InBuilt", + "msixPackageFamilyName": null, + "msixPackageApplicationId": null + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/Application_Update.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/Application_Update.json new file mode 100644 index 000000000000..19b6830e265e --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/Application_Update.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "applicationName": "application1", + "api-version": "2021-04-01-preview", + "application": { + "properties": { + "description": "des1", + "friendlyName": "friendly", + "filePath": "path", + "commandLineSetting": "Allow", + "commandLineArguments": "arguments", + "showInPortal": true, + "iconPath": "icon", + "iconIndex": 1, + "applicationType": "InBuilt", + "msixPackageFamilyName": null, + "msixPackageApplicationId": null + } + } + }, + "responses": { + "200": { + "body": { + "name": "applicationGroup1/application1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/applications/application1", + "type": "Microsoft.DesktopVirtualization/applicationGroups/applications", + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "filePath": "path", + "commandLineSetting": "Allow", + "commandLineArguments": "arguments", + "showInPortal": true, + "iconPath": "icon", + "iconIndex": 1, + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA...", + "applicationType": "InBuilt", + "msixPackageFamilyName": null, + "msixPackageApplicationId": null + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/Desktop_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/Desktop_Get.json new file mode 100644 index 000000000000..af79c19493e7 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/Desktop_Get.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "desktopName": "SessionDesktop", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "name": "applicationGroup1/SessionDesktop", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/applications/SessionDesktop", + "type": "Microsoft.DesktopVirtualization/applicationGroups/desktops", + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA..." + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/Desktop_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/Desktop_List.json new file mode 100644 index 000000000000..577aa050623d --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/Desktop_List.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "applicationGroup1/SessionDesktop", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/applications/SessionDesktop", + "type": "Microsoft.DesktopVirtualization/applicationGroups/desktops", + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA..." + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/Desktop_Update.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/Desktop_Update.json new file mode 100644 index 000000000000..449e4ae53d47 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/Desktop_Update.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "desktopName": "SessionDesktop", + "api-version": "2021-04-01-preview", + "desktop": { + "properties": { + "description": "des1", + "friendlyName": "friendly" + } + } + }, + "responses": { + "200": { + "body": { + "name": "applicationGroup1/SessionDesktop", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/desktops/SessionDesktop", + "type": "Microsoft.DesktopVirtualization/applicationGroups/desktops", + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA..." + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/HostPool_Create.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/HostPool_Create.json new file mode 100644 index 000000000000..95b7b38905fd --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/HostPool_Create.json @@ -0,0 +1,126 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "api-version": "2021-04-01-preview", + "hostPool": { + "location": "centralus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "friendlyName": "friendly", + "description": "des1", + "hostPoolType": "Pooled", + "personalDesktopAssignmentType": "Automatic", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "registrationInfo": { + "expirationTime": "2020-10-01T14:01:54.9571247Z", + "registrationTokenOperation": "Update" + }, + "vmTemplate": "{json:json}", + "ssoadfsAuthority": "https://adfs", + "ssoClientId": "client", + "ssoClientSecretKeyVaultPath": "https://keyvault/secret", + "ssoSecretType": "SharedKey", + "preferredAppGroupType": "Desktop", + "startVMOnConnect": false, + "migrationRequest": { + "migrationPath": "TenantGroups/{defaultV1TenantGroup.Name}/Tenants/{defaultV1Tenant.Name}/HostPools/{sessionHostPool.Name}", + "operation": "Start" + }, + "publicNetworkAccess": "Enabled" + } + } + }, + "responses": { + "200": { + "body": { + "name": "hostPool1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "type": "/Microsoft.DesktopVirtualization/hostPools", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "friendlyName": "friendly", + "description": "des1", + "hostPoolType": "Pooled", + "personalDesktopAssignmentType": "Automatic", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "validationEnvironment": null, + "ring": null, + "registrationInfo": { + "expirationTime": "2020-10-01T14:01:54.9571247Z", + "token": "token", + "registrationTokenOperation": "Update" + }, + "vmTemplate": "{json:json}", + "ssoadfsAuthority": "https://adfs", + "ssoClientId": "client", + "ssoClientSecretKeyVaultPath": "https://keyvault/secret", + "ssoSecretType": "SharedKey", + "preferredAppGroupType": "Desktop", + "startVMOnConnect": false, + "cloudPcResource": false, + "migrationRequest": { + "migrationPath": "TenantGroups/{defaultV1TenantGroup.Name}/Tenants/{defaultV1Tenant.Name}/HostPools/{sessionHostPool.Name}", + "operation": "Start" + }, + "publicNetworkAccess": "Enabled" + } + } + }, + "201": { + "body": { + "name": "hostPool1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "type": "/Microsoft.DesktopVirtualization/hostPools", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "friendlyName": "friendly", + "description": "des1", + "hostPoolType": "Pooled", + "personalDesktopAssignmentType": "Automatic", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "validationEnvironment": null, + "ring": null, + "registrationInfo": { + "expirationTime": "2020-10-01T14:01:54.9571247Z", + "token": "token", + "registrationTokenOperation": "Update" + }, + "vmTemplate": "{json:json}", + "ssoadfsAuthority": "https://adfs", + "ssoClientId": "client", + "ssoClientSecretKeyVaultPath": "https://keyvault/secret", + "ssoSecretType": "SharedKey", + "preferredAppGroupType": "Desktop", + "startVMOnConnect": false, + "cloudPcResource": false, + "migrationRequest": { + "migrationPath": "TenantGroups/{defaultV1TenantGroup.Name}/Tenants/{defaultV1Tenant.Name}/HostPools/{sessionHostPool.Name}", + "operation": "Start" + }, + "publicNetworkAccess": "Enabled" + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/HostPool_Delete.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/HostPool_Delete.json new file mode 100644 index 000000000000..b908ad6b51fc --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/HostPool_Delete.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "api-version": "2021-04-01-preview", + "force": true + }, + "responses": { + "200": { + "name": "hostPool1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "type": "/Microsoft.DesktopVirtualization/hostPools", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "friendlyName": "friendly", + "description": "des1", + "hostPoolType": "Pooled", + "personalDesktopAssignmentType": "Automatic", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "validationEnvironment": null, + "ring": null, + "registrationInfo": { + "expirationTime": "2008-09-22T14:01:54.9571247Z", + "token": "token", + "registrationTokenOperation": "Update" + }, + "vmTemplate": "{json:json}", + "ssoadfsAuthority": "https://adfs", + "ssoClientId": "client", + "ssoClientSecretKeyVaultPath": "https://keyvault/secret", + "ssoSecretType": "SharedKey", + "startVMOnConnect": false, + "cloudPcResource": false + } + }, + "204": {} + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/HostPool_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/HostPool_Get.json new file mode 100644 index 000000000000..e649dbc0bbfe --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/HostPool_Get.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "name": "hostPool1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "type": "/Microsoft.DesktopVirtualization/hostPools", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "friendlyName": "friendly", + "description": "des1", + "hostPoolType": "Pooled", + "personalDesktopAssignmentType": "Automatic", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "validationEnvironment": null, + "ring": null, + "registrationInfo": { + "expirationTime": "2008-09-22T14:01:54.9571247Z", + "token": "token", + "registrationTokenOperation": "Update" + }, + "vmTemplate": "{json:json}", + "ssoadfsAuthority": "https://adfs", + "ssoClientId": "client", + "ssoClientSecretKeyVaultPath": "https://keyvault/secret", + "ssoSecretType": "SharedKey", + "preferredAppGroupType": "Desktop", + "startVMOnConnect": false, + "cloudPcResource": false, + "publicNetworkAccess": "Enabled" + } + } + }, + "default": { + "body": { + "error": { + "code": "hostPoolDoesNotExist", + "message": "Host Pool Does Not Exist" + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/HostPool_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/HostPool_List.json new file mode 100644 index 000000000000..3af75e2307ed --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/HostPool_List.json @@ -0,0 +1,86 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "hostPool1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "type": "/Microsoft.DesktopVirtualization/hostPools", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "friendlyName": "friendly", + "description": "des1", + "hostPoolType": "Pooled", + "personalDesktopAssignmentType": "Automatic", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "validationEnvironment": null, + "ring": null, + "registrationInfo": { + "expirationTime": "2008-09-22T14:01:54.9571247Z", + "token": "token", + "registrationTokenOperation": "Update" + }, + "vmTemplate": "{json:json}", + "ssoadfsAuthority": "https://adfs", + "ssoClientId": "client", + "ssoClientSecretKeyVaultPath": "https://keyvault/secret", + "ssoSecretType": "SharedKey", + "preferredAppGroupType": "Desktop", + "startVMOnConnect": false, + "cloudPcResource": false, + "publicNetworkAccess": "Enabled" + } + }, + { + "name": "hostPool2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool2", + "type": "/Microsoft.DesktopVirtualization/hostPools", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "friendlyName": "friendly", + "description": "des1", + "hostPoolType": "Pooled", + "personalDesktopAssignmentType": "Automatic", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "validationEnvironment": null, + "ring": null, + "registrationInfo": { + "expirationTime": "2008-09-22T14:01:54.9571247Z", + "token": "token", + "registrationTokenOperation": "Update" + }, + "vmTemplate": "{json:json}", + "ssoadfsAuthority": "https://adfs", + "ssoClientId": "client", + "ssoClientSecretKeyVaultPath": "https://keyvault/secret", + "ssoSecretType": "SharedKey", + "preferredAppGroupType": "Desktop", + "startVMOnConnect": false, + "cloudPcResource": false, + "publicNetworkAccess": "Enabled" + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/HostPool_ListByResourceGroup.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/HostPool_ListByResourceGroup.json new file mode 100644 index 000000000000..e17f29030ca8 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/HostPool_ListByResourceGroup.json @@ -0,0 +1,87 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "hostPool1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "type": "/Microsoft.DesktopVirtualization/hostPools", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "friendlyName": "friendly", + "description": "des1", + "hostPoolType": "Pooled", + "personalDesktopAssignmentType": "Automatic", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "validationEnvironment": null, + "ring": null, + "registrationInfo": { + "expirationTime": "2008-09-22T14:01:54.9571247Z", + "token": "token", + "registrationTokenOperation": "Update" + }, + "vmTemplate": "{json:json}", + "ssoadfsAuthority": "https://adfs", + "ssoClientId": "client", + "ssoClientSecretKeyVaultPath": "https://keyvault/secret", + "ssoSecretType": "SharedKey", + "preferredAppGroupType": "Desktop", + "startVMOnConnect": false, + "cloudPcResource": false, + "publicNetworkAccess": "Enabled" + } + }, + { + "name": "hostPool2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool2", + "type": "/Microsoft.DesktopVirtualization/hostPools", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "friendlyName": "friendly", + "description": "des1", + "hostPoolType": "Pooled", + "personalDesktopAssignmentType": "Automatic", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "validationEnvironment": null, + "ring": null, + "registrationInfo": { + "expirationTime": "2008-09-22T14:01:54.9571247Z", + "token": "token", + "registrationTokenOperation": "Update" + }, + "vmTemplate": "{json:json}", + "ssoadfsAuthority": "https://adfs", + "ssoClientId": "client", + "ssoClientSecretKeyVaultPath": "https://keyvault/secret", + "ssoSecretType": "SharedKey", + "preferredAppGroupType": "Desktop", + "startVMOnConnect": false, + "cloudPcResource": false, + "publicNetworkAccess": "Enabled" + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/HostPool_Update.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/HostPool_Update.json new file mode 100644 index 000000000000..76a93c31756a --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/HostPool_Update.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "api-version": "2021-04-01-preview", + "hostPool": { + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "friendlyName": "friendly", + "description": "des1", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "personalDesktopAssignmentType": "Automatic", + "registrationInfo": { + "expirationTime": "2020-10-01T15:01:54.9571247Z", + "registrationTokenOperation": "Update" + }, + "vmTemplate": "{json:json}", + "ssoadfsAuthority": "https://adfs", + "ssoClientId": "client", + "ssoClientSecretKeyVaultPath": "https://keyvault/secret", + "ssoSecretType": "SharedKey", + "startVMOnConnect": false, + "publicNetworkAccess": "Enabled" + } + } + }, + "responses": { + "200": { + "body": { + "name": "hostPool1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "type": "/Microsoft.DesktopVirtualization/hostPools", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "friendlyName": "friendly", + "description": "des1", + "hostPoolType": "Pooled", + "personalDesktopAssignmentType": "Automatic", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "validationEnvironment": null, + "ring": null, + "registrationInfo": { + "expirationTime": "2008-09-22T14:01:54.9571247Z", + "token": "token", + "registrationTokenOperation": "Update" + }, + "vmTemplate": "{json:json}", + "ssoadfsAuthority": "https://adfs", + "ssoClientId": "client", + "ssoClientSecretKeyVaultPath": "https://keyvault/secret", + "ssoSecretType": "SharedKey", + "preferredAppGroupType": "Desktop", + "startVMOnConnect": false, + "cloudPcResource": false, + "publicNetworkAccess": "Enabled" + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/HostPools_RetrieveRegistrationToken_Post.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/HostPools_RetrieveRegistrationToken_Post.json new file mode 100644 index 000000000000..bf4350b33f3a --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/HostPools_RetrieveRegistrationToken_Post.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "expirationTime": "2008-09-22T14:01:54.9571247Z", + "token": "token", + "registrationTokenOperation": "Update" + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/MsixImage_Expand_Post.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/MsixImage_Expand_Post.json new file mode 100644 index 000000000000..6dd5ded9e7e6 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/MsixImage_Expand_Post.json @@ -0,0 +1,99 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostpool1", + "api-version": "2021-04-01-preview", + "msixImageURI": { + "uri": "imagepath" + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "hostpool1/expandmsiximage", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourcegroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostpools/hostpool1/expandmsiximage", + "type": "Microsoft.DesktopVirtualization/hostpools/expandmsiximage", + "properties": { + "packageAlias": "msixpackagealias", + "imagePath": "imagepath", + "packageName": "MsixPackageName", + "packageFamilyName": "MsixPackage_FamilyName", + "packageFullName": "MsixPackage_FullName", + "displayName": "displayname", + "packageRelativePath": "packagerelativepath", + "isRegularRegistration": false, + "isActive": false, + "packageDependencies": [], + "version": "packageversion", + "lastUpdated": "2008-09-22T14:01:54.9571247Z", + "packageApplications": [ + { + "appId": "AppId", + "description": "PackageApplicationDescription", + "appUserModelID": "AppUserModelId", + "friendlyName": "FriendlyName", + "iconImageName": "Iconimagename", + "rawIcon": "RawIcon", + "rawPng": "RawPng" + } + ] + } + }, + { + "name": "hostpool1/expandmsiximage", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourcegroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostpools/hostpool1/expandmsiximage", + "type": "Microsoft.DesktopVirtualization/hostpools/expandmsiximage", + "properties": { + "packageAlias": "msixpackagealias2", + "imagePath": "imagepath", + "packageName": "MsixPackageName2", + "packageFamilyName": "MsixPackage_FamilyName2", + "packageFullName": "MsixPackage_FullName2", + "displayName": "displayname2", + "packageRelativePath": "packagerelativepath2", + "isRegularRegistration": false, + "isActive": false, + "packageDependencies": [ + { + "dependencyName": "MsixPackageDependency1", + "publisher": "PublisherName1", + "minVersion": "ver1" + }, + { + "dependencyName": "MsixPackageDependency2", + "publisher": "PublisherName2", + "minVersion": "ver2" + } + ], + "version": "packageversion", + "lastUpdated": "2008-09-22T14:01:54.9571247Z", + "packageApplications": [ + { + "appId": "AppId1", + "description": "PackageApplicationDescription1", + "appUserModelID": "AppUserModelId1", + "friendlyName": "FriendlyName1", + "iconImageName": "Iconimagename1", + "rawIcon": "RawIcon1", + "rawPng": "RawPng1" + }, + { + "appId": "AppId2", + "description": "PackageApplicationDescription2", + "appUserModelID": "AppUserModelId2", + "friendlyName": "FriendlyName2", + "iconImageName": "Iconimagename2", + "rawIcon": "RawIcon2", + "rawPng": "RawPng2" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/MsixPackage_Create.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/MsixPackage_Create.json new file mode 100644 index 000000000000..afc566de5381 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/MsixPackage_Create.json @@ -0,0 +1,114 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostpool1", + "api-version": "2021-04-01-preview", + "msixPackageFullName": "msixpackagefullname", + "msixPackage": { + "properties": { + "displayName": "displayname", + "imagePath": "imagepath", + "isActive": false, + "isRegularRegistration": false, + "lastUpdated": "2008-09-22T14:01:54.9571247Z", + "packageApplications": [ + { + "description": "application-desc", + "appId": "ApplicationId", + "appUserModelID": "AppUserModelId", + "friendlyName": "friendlyname", + "iconImageName": "Apptile", + "rawIcon": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo", + "rawPng": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo" + } + ], + "packageDependencies": [ + { + "dependencyName": "MsixTest_Dependency_Name", + "minVersion": "version", + "publisher": "PublishedName" + } + ], + "packageFamilyName": "MsixPackage_FamilyName", + "packageName": "MsixPackage_name", + "packageRelativePath": "packagerelativepath", + "version": "version" + } + } + }, + "responses": { + "200": { + "body": { + "name": "hostpool1/MsixPackageFullName", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourcegroups/resourcegroup1/providers/Microsoft.DesktopVirtualization/hostpools/hostpool1/msixpackages/msixPackageFullName", + "type": "Microsoft.DesktopVirtualization/hostpools/msixpackages", + "properties": { + "imagePath": "imagepath", + "packageName": "MsixPackage_Name", + "packageFamilyName": "MsixPackage_FamilyName", + "displayName": "dis", + "packageRelativePath": "MsixPackage_RelativePackageRoot", + "isRegularRegistration": false, + "isActive": false, + "packageDependencies": [ + { + "dependencyName": "MsixPackage_Dependency_Name", + "publisher": "MsixPackage_Dependency_Publisher", + "minVersion": "packageDep_version" + } + ], + "version": "version", + "lastUpdated": "2008-09-22T14:01:54.9571247Z", + "packageApplications": [ + { + "appId": "Application_Id", + "description": "desc", + "appUserModelID": "Application_ModelID", + "friendlyName": "fri", + "iconImageName": "Apptile", + "rawIcon": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo", + "rawPng": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo" + } + ] + } + } + }, + "201": { + "body": { + "name": "hostpool1/MsixPackageFullName", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourcegroups/resourcegroup1/providers/Microsoft.DesktopVirtualization/hostpools/hostpool1/msixpackages/msixPackageFullName", + "type": "Microsoft.DesktopVirtualization/hostpools/msixpackages", + "properties": { + "imagePath": "imagepath", + "packageName": "MsixPackage_Name", + "packageFamilyName": "MsixPackage_FamilyName", + "displayName": "dis", + "packageRelativePath": "MsixPackage_RelativePackageRoot", + "isRegularRegistration": false, + "isActive": true, + "packageDependencies": [ + { + "dependencyName": "MsixPackage_Dependency_Name", + "publisher": "MsixPackage_Dependency_Publisher", + "minVersion": "packageDep_version" + } + ], + "version": "version", + "lastUpdated": "2008-09-22T14:01:54.9571247Z", + "packageApplications": [ + { + "appId": "Application_Id", + "description": "desc", + "appUserModelID": "Application_ModelID", + "friendlyName": "fri", + "iconImageName": "Apptile", + "rawIcon": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo", + "rawPng": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo" + } + ] + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/MsixPackage_Delete.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/MsixPackage_Delete.json new file mode 100644 index 000000000000..6f437065b30d --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/MsixPackage_Delete.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostpool1", + "api-version": "2021-04-01-preview", + "msixPackageFullName": "packagefullname" + }, + "responses": { + "200": { + "name": "hostpool1/MsixPackageFullName", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourcegroups/resourcegroup1/providers/Microsoft.DesktopVirtualization/hostpools/hostpool1/msixpackages/msixPackageFullName", + "type": "Microsoft.DesktopVirtualization/hostpools/msixpackages", + "properties": { + "imagePath": "imagepath", + "packageName": "MsixPackage_Name", + "packageFamilyName": "MsixPackage_FamilyName", + "displayName": "dis", + "packageRelativePath": "MsixPackage_RelativePackageRoot", + "isRegularRegistration": false, + "isActive": false, + "packageDependencies": [ + { + "dependencyName": "MsixPackage_Dependency_Name", + "publisher": "MsixPackage_Dependency_Publisher", + "minVersion": "packageDep_version" + } + ], + "version": "version", + "lastUpdated": "2008-09-22T14:01:54.9571247Z", + "packageApplications": [ + { + "appId": "Application_Id", + "description": "desc", + "appUserModelID": "Application_ModelID", + "friendlyName": "fri", + "iconImageName": "Apptile", + "rawIcon": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo", + "rawPng": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo" + } + ] + } + }, + "204": {} + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/MsixPackage_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/MsixPackage_Get.json new file mode 100644 index 000000000000..376c18c454be --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/MsixPackage_Get.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostpool1", + "api-version": "2021-04-01-preview", + "msixPackageFullName": "packagefullname" + }, + "responses": { + "200": { + "body": { + "name": "hostpool1/MsixPackageFullName", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourcegroups/resourcegroup1/providers/Microsoft.DesktopVirtualization/hostpools/hostpool1/msixpackages/msixPackageFullName", + "type": "Microsoft.DesktopVirtualization/hostpools/msixpackages", + "properties": { + "imagePath": "imagepath", + "packageName": "MsixPackage_Name", + "packageFamilyName": "MsixPackage_FamilyName", + "displayName": "dis", + "packageRelativePath": "MsixPackage_RelativePackageRoot", + "isRegularRegistration": false, + "isActive": false, + "packageDependencies": [ + { + "dependencyName": "MsixPackage_Dependency_Name", + "publisher": "MsixPackage_Dependency_Publisher", + "minVersion": "packageDep_version" + } + ], + "version": "version", + "lastUpdated": "2008-09-22T14:01:54.9571247Z", + "packageApplications": [ + { + "appId": "Application_Id", + "description": "desc", + "appUserModelID": "Application_ModelID", + "friendlyName": "fri", + "iconImageName": "Apptile", + "rawIcon": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo", + "rawPng": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo" + } + ] + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/MsixPackage_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/MsixPackage_List.json new file mode 100644 index 000000000000..3b23c9c0642d --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/MsixPackage_List.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostpool1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "hostpool1/MsixPackageFullName", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourcegroups/resourcegroup1/providers/Microsoft.DesktopVirtualization/hostpools/hostpool1/msixpackages/msixPackageFullName", + "type": "Microsoft.DesktopVirtualization/hostpools/msixpackages", + "properties": { + "imagePath": "imagepath", + "packageName": "MsixPackage_Name", + "packageFamilyName": "MsixPackage_FamilyName", + "displayName": "dis", + "packageRelativePath": "MsixPackage_RelativePackageRoot", + "isRegularRegistration": false, + "isActive": false, + "packageDependencies": [ + { + "dependencyName": "MsixPackage_Dependency_Name", + "publisher": "MsixPackage_Dependency_Publisher", + "minVersion": "packageDep_version" + } + ], + "version": "version", + "lastUpdated": "2008-09-22T14:01:54.9571247Z", + "packageApplications": [ + { + "appId": "Application_Id", + "description": "desc", + "appUserModelID": "Application_ModelID", + "friendlyName": "fri", + "iconImageName": "Apptile", + "rawIcon": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo", + "rawPng": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo" + } + ] + } + }, + { + "name": "hostpool1/MsixPackageFullName2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourcegroups/resourcegroup1/providers/Microsoft.DesktopVirtualization/hostpools/hostpool1/msixpackages/msixPackageFullName2", + "type": "Microsoft.DesktopVirtualization/hostpools/msixpackages", + "properties": { + "imagePath": "imagepath2", + "packageName": "MsixPackage_Name2", + "packageFamilyName": "MsixPackage_FamilyName2", + "displayName": "dis2", + "packageRelativePath": "MsixPackage_RelativePackageRoot2", + "isRegularRegistration": false, + "isActive": false, + "packageDependencies": [ + { + "dependencyName": "MsixPackage_Dependency_Name2", + "publisher": "MsixPackage_Dependency_Publisher2", + "minVersion": "packageDep_version2" + } + ], + "version": "version2", + "lastUpdated": "2008-09-22T14:01:54.9571247Z", + "packageApplications": [ + { + "appId": "Application_Id2", + "description": "desc2", + "appUserModelID": "Application_ModelID2", + "friendlyName": "fri2", + "iconImageName": "Apptile2", + "rawIcon": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo2", + "rawPng": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo2" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/MsixPackage_Update.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/MsixPackage_Update.json new file mode 100644 index 000000000000..dc03ea4ca853 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/MsixPackage_Update.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostpool1", + "api-version": "2021-04-01-preview", + "msixPackageFullName": "msixpackagefullname", + "msixPackage": { + "properties": { + "displayName": "displayname", + "isActive": true, + "isRegularRegistration": false + } + } + }, + "responses": { + "200": { + "body": { + "name": "hostpool1/MsixPackageFullName", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourcegroups/resourcegroup1/providers/Microsoft.DesktopVirtualization/hostpools/hostpool1/msixpackages/msixPackageFullName", + "type": "Microsoft.DesktopVirtualization/hostpools/msixpackages", + "properties": { + "imagePath": "imagepath", + "packageName": "MsixPackage_Name", + "packageFamilyName": "MsixPackage_FamilyName", + "displayName": "dis", + "packageRelativePath": "MsixPackage_RelativePackageRoot", + "isRegularRegistration": false, + "isActive": true, + "packageDependencies": [ + { + "dependencyName": "MsixPackage_Dependency_Name", + "publisher": "MsixPackage_Dependency_Publisher", + "minVersion": "packageDep_version" + } + ], + "version": "version", + "lastUpdated": "2008-09-22T14:01:54.9571247Z", + "packageApplications": [ + { + "appId": "Application_Id", + "description": "desc", + "appUserModelID": "Application_ModelID", + "friendlyName": "fri", + "iconImageName": "Apptile", + "rawIcon": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo", + "rawPng": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo" + } + ] + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/OperationDescription_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/OperationDescription_List.json new file mode 100644 index 000000000000..4a63a6ec459e --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/OperationDescription_List.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.DesktopVirtualization/hostpools/read", + "display": { + "provider": "Microsoft.DesktopVirtualization", + "resource": "hostpools", + "operation": "Read hostpool", + "description": "Read hostpool" + }, + "isDataAction": false + }, + { + "name": "Microsoft.DesktopVirtualization/hostpools/write", + "display": { + "provider": "Microsoft.DesktopVirtualization", + "resource": "hostpools", + "operation": "Write hostpool", + "description": "Write hostpool" + }, + "properties": { + "serviceSpecification": { + "logSpecifications": [ + { + "name": "", + "displayName": "" + }, + { + "name": "", + "displayName": "" + }, + { + "name": "", + "displayName": "" + } + ] + } + }, + "isDataAction": false + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/PrivateEndpointConnection_DeleteByHostPool.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/PrivateEndpointConnection_DeleteByHostPool.json new file mode 100644 index 000000000000..c87e0eb9c1c1 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/PrivateEndpointConnection_DeleteByHostPool.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "privateEndpointConnectionName": "hostPool1.377103f1-5179-4bdf-8556-4cdd3207cc5b", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/PrivateEndpointConnection_DeleteByWorkspace.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/PrivateEndpointConnection_DeleteByWorkspace.json new file mode 100644 index 000000000000..2f609b31d95d --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/PrivateEndpointConnection_DeleteByWorkspace.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "workspaceName": "workspace1", + "privateEndpointConnectionName": "workspace1.377103f1-5179-4bdf-8556-4cdd3207cc5b", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/PrivateEndpointConnection_GetByHostPool.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/PrivateEndpointConnection_GetByHostPool.json new file mode 100644 index 000000000000..daaeb8efaae5 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/PrivateEndpointConnection_GetByHostPool.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "privateEndpointConnectionName": "hostPool1.377103f1-5179-4bdf-8556-4cdd3207cc5b", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "name": "hostPool1.377103f1-5179-4bdf-8556-4cdd3207cc5b", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostpools/hostPool1/privateEndpointConnections/hostPool1.377103f1-5179-4bdf-8556-4cdd3207cc5b", + "type": "Microsoft.DesktopVirtualization/hostpools/privateEndpointConnections", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup2/providers/Microsoft.Network/privateEndpoints/endpointName1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/PrivateEndpointConnection_GetByWorkspace.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/PrivateEndpointConnection_GetByWorkspace.json new file mode 100644 index 000000000000..34767af5ba91 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/PrivateEndpointConnection_GetByWorkspace.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "workspaceName": "workspace1", + "privateEndpointConnectionName": "workspace1.377103f1-5179-4bdf-8556-4cdd3207cc5b", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "name": "workspace1.377103f1-5179-4bdf-8556-4cdd3207cc5b", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1/privateEndpointConnections/workspace1.377103f1-5179-4bdf-8556-4cdd3207cc5b", + "type": "Microsoft.DesktopVirtualization/workspaces/privateEndpointConnections", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup2/providers/Microsoft.Network/privateEndpoints/endpointName1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/PrivateEndpointConnection_ListByHostPool.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/PrivateEndpointConnection_ListByHostPool.json new file mode 100644 index 000000000000..ade5fd681d95 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/PrivateEndpointConnection_ListByHostPool.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "hostPool1.377103f1-5179-4bdf-8556-4cdd3207cc5b", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostpools/hostPool1/privateEndpointConnections/hostPool1.377103f1-5179-4bdf-8556-4cdd3207cc5b", + "type": "Microsoft.DesktopVirtualization/hostpools/privateEndpointConnections", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup2/providers/Microsoft.Network/privateEndpoints/endpointName1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionsRequired": "None" + } + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/PrivateEndpointConnection_ListByWorkspace.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/PrivateEndpointConnection_ListByWorkspace.json new file mode 100644 index 000000000000..b2e5b12fe62e --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/PrivateEndpointConnection_ListByWorkspace.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "workspaceName": "workspace1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "workspace1.377103f1-5179-4bdf-8556-4cdd3207cc5b", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1/privateEndpointConnections/workspace1.377103f1-5179-4bdf-8556-4cdd3207cc5b", + "type": "Microsoft.DesktopVirtualization/workspaces/privateEndpointConnections", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup2/providers/Microsoft.Network/privateEndpoints/endpointName1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionsRequired": "None" + } + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/PrivateEndpointConnection_UpdateByHostPool.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/PrivateEndpointConnection_UpdateByHostPool.json new file mode 100644 index 000000000000..f4613c0aa768 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/PrivateEndpointConnection_UpdateByHostPool.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "privateEndpointConnectionName": "hostPool1.377103f1-5179-4bdf-8556-4cdd3207cc5b", + "api-version": "2021-04-01-preview", + "connection": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by admin@consoto.com", + "actionsRequired": "None" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "hostPool1.377103f1-5179-4bdf-8556-4cdd3207cc5b", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostpools/hostPool1/privateEndpointConnections/hostPool1.377103f1-5179-4bdf-8556-4cdd3207cc5b", + "type": "Microsoft.DesktopVirtualization/hostpools/privateEndpointConnections", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup2/providers/Microsoft.Network/privateEndpoints/endpointName1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by admin@consoto.com", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/PrivateEndpointConnection_UpdateByWorkspace.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/PrivateEndpointConnection_UpdateByWorkspace.json new file mode 100644 index 000000000000..03180151de74 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/PrivateEndpointConnection_UpdateByWorkspace.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "workspaceName": "workspace1", + "privateEndpointConnectionName": "workspace1.377103f1-5179-4bdf-8556-4cdd3207cc5b", + "api-version": "2021-04-01-preview", + "connection": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by admin@consoto.com", + "actionsRequired": "None" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "workspace1.377103f1-5179-4bdf-8556-4cdd3207cc5b", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1/privateEndpointConnections/workspace1.377103f1-5179-4bdf-8556-4cdd3207cc5b", + "type": "Microsoft.DesktopVirtualization/workspaces/privateEndpointConnections", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup2/providers/Microsoft.Network/privateEndpoints/endpointName1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by admin@consoto.com", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/PrivateLinkResources_ListByHostPool.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/PrivateLinkResources_ListByHostPool.json new file mode 100644 index 000000000000..4d4e3bd5a304 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/PrivateLinkResources_ListByHostPool.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "hostpool", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostpools/hostPool1/privateLinkResources/hostpool", + "type": "Microsoft.DesktopVirtualization/hostpools/privateLinkResources", + "properties": { + "groupId": "hostpool", + "requiredMembers": [ + "rdbroker", + "rddiagnostics", + "rdweb", + "rdgateway" + ], + "requiredZoneNames": [ + "privatelink.wvd.microsoft.com" + ] + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/PrivateLinkResources_ListByWorkspace.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/PrivateLinkResources_ListByWorkspace.json new file mode 100644 index 000000000000..4c4fc87c6c13 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/PrivateLinkResources_ListByWorkspace.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "workspaceName": "workspace1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "workspace", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1/privateLinkResources/workspace", + "type": "Microsoft.DesktopVirtualization/workspaces/privateLinkResources", + "properties": { + "groupId": "workspace", + "requiredMembers": [ + "rdbroker", + "rddiagnostics", + "rdweb", + "rdgateway" + ], + "requiredZoneNames": [ + "privatelink.wvd.microsoft.com" + ] + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/ScalingPlan_Create.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/ScalingPlan_Create.json new file mode 100644 index 000000000000..59bc8414e7c1 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/ScalingPlan_Create.json @@ -0,0 +1,163 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "scalingPlanName": "scalingPlan1", + "api-version": "2021-04-01-preview", + "scalingPlan": { + "location": "centralus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly", + "timeZone": "", + "hostPoolType": "Personal", + "exclusionTag": "value", + "schedules": [ + { + "name": "schedule1", + "daysOfWeek": [ + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday" + ], + "rampUpStartTime": "2020-11-10T06:00:00.000Z", + "rampUpLoadBalancingAlgorithm": "DepthFirst", + "rampUpMinimumHostsPct": 20, + "rampUpCapacityThresholdPct": 80, + "peakStartTime": "2020-11-10T08:00:00.000Z", + "peakLoadBalancingAlgorithm": "BreadthFirst", + "rampDownStartTime": "2020-11-10T18:00:00.000Z", + "rampDownLoadBalancingAlgorithm": "DepthFirst", + "rampDownMinimumHostsPct": 20, + "rampDownCapacityThresholdPct": 50, + "rampDownForceLogoffUsers": true, + "rampDownWaitTimeMinutes": 30, + "rampDownNotificationMessage": "message", + "offPeakStartTime": "2020-11-10T20:00:00.000Z", + "offPeakLoadBalancingAlgorithm": "DepthFirst" + } + ], + "hostPoolReferences": [ + { + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "scalingPlanEnabled": true + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "scalingPlan1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/scalingPlans/scalingPlan1", + "type": "Microsoft.DesktopVirtualization/scalingPlans", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "timeZone": "", + "hostPoolType": "Personal", + "exclusionTag": "value", + "schedules": [ + { + "name": "schedule1", + "daysOfWeek": [ + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday" + ], + "rampUpStartTime": "2020-11-10T06:00:00.000+00:00", + "rampUpLoadBalancingAlgorithm": "DepthFirst", + "rampUpMinimumHostsPct": 20, + "rampUpCapacityThresholdPct": 80, + "peakStartTime": "2020-11-10T08:00:00.000+00:00", + "peakLoadBalancingAlgorithm": "BreadthFirst", + "rampDownStartTime": "2020-11-10T18:00:00.000+00:00", + "rampDownLoadBalancingAlgorithm": "DepthFirst", + "rampDownMinimumHostsPct": 20, + "rampDownCapacityThresholdPct": 50, + "rampDownForceLogoffUsers": true, + "rampDownWaitTimeMinutes": 30, + "rampDownNotificationMessage": "message", + "offPeakStartTime": "2020-11-10T20:00:00.000+00:00", + "offPeakLoadBalancingAlgorithm": "DepthFirst" + } + ], + "hostPoolReferences": [ + { + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "scalingPlanEnabled": true + } + ] + } + } + }, + "201": { + "body": { + "name": "scalingPlan1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/scalingPlans/scalingPlan1", + "type": "Microsoft.DesktopVirtualization/scalingPlans", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "timeZone": "", + "hostPoolType": "Personal", + "exclusionTag": "value", + "schedules": [ + { + "name": "schedule1", + "daysOfWeek": [ + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday" + ], + "rampUpStartTime": "2020-11-10T06:00:00.000+00:00", + "rampUpLoadBalancingAlgorithm": "DepthFirst", + "rampUpMinimumHostsPct": 20, + "rampUpCapacityThresholdPct": 80, + "peakStartTime": "2020-11-10T08:00:00.000+00:00", + "peakLoadBalancingAlgorithm": "BreadthFirst", + "rampDownStartTime": "2020-11-10T18:00:00.000+00:00", + "rampDownLoadBalancingAlgorithm": "DepthFirst", + "rampDownMinimumHostsPct": 20, + "rampDownCapacityThresholdPct": 50, + "rampDownForceLogoffUsers": true, + "rampDownWaitTimeMinutes": 30, + "rampDownNotificationMessage": "message", + "offPeakStartTime": "2020-11-10T20:00:00.000+00:00", + "offPeakLoadBalancingAlgorithm": "DepthFirst" + } + ], + "hostPoolReferences": [ + { + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "scalingPlanEnabled": true + } + ] + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/ScalingPlan_Delete.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/ScalingPlan_Delete.json new file mode 100644 index 000000000000..cd9e07663bff --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/ScalingPlan_Delete.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "scalingPlanName": "scalingPlan1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "name": "scalingPlan1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/scalingPlans/scalingPlan1", + "type": "Microsoft.DesktopVirtualization/scalingPlans", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "timeZone": "", + "hostPoolType": "Personal", + "exclusionTag": "value", + "schedules": [ + { + "name": "schedule1", + "daysOfWeek": [ + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday" + ], + "rampUpStartTime": "2020-11-10T06:00:00.000+00:00", + "rampUpLoadBalancingAlgorithm": "DepthFirst", + "rampUpMinimumHostsPct": 20, + "rampUpCapacityThresholdPct": 80, + "peakStartTime": "2020-11-10T08:00:00.000+00:00", + "peakLoadBalancingAlgorithm": "BreadthFirst", + "rampDownStartTime": "2020-11-10T18:00:00.000+00:00", + "rampDownLoadBalancingAlgorithm": "DepthFirst", + "rampDownMinimumHostsPct": 20, + "rampDownCapacityThresholdPct": 50, + "rampDownForceLogoffUsers": true, + "rampDownWaitTimeMinutes": 30, + "rampDownNotificationMessage": "message", + "offPeakStartTime": "2020-11-10T20:00:00.000+00:00", + "offPeakLoadBalancingAlgorithm": "DepthFirst" + } + ], + "hostPoolReferences": [ + { + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "scalingPlanEnabled": true + } + ] + } + }, + "204": {} + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/ScalingPlan_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/ScalingPlan_Get.json new file mode 100644 index 000000000000..15bd0c9f0d01 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/ScalingPlan_Get.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "scalingPlanName": "scalingPlan1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "name": "workspace1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/scalingPlans/scalingPlan1", + "type": "Microsoft.DesktopVirtualization/scalingPlans", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "timeZone": "", + "hostPoolType": "Personal", + "exclusionTag": "value", + "schedules": [ + { + "name": "schedule1", + "daysOfWeek": [ + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday" + ], + "rampUpStartTime": "2020-11-10T06:00:00.000+00:00", + "rampUpLoadBalancingAlgorithm": "DepthFirst", + "rampUpMinimumHostsPct": 20, + "rampUpCapacityThresholdPct": 80, + "peakStartTime": "2020-11-10T08:00:00.000+00:00", + "peakLoadBalancingAlgorithm": "BreadthFirst", + "rampDownStartTime": "2020-11-10T18:00:00.000+00:00", + "rampDownLoadBalancingAlgorithm": "DepthFirst", + "rampDownMinimumHostsPct": 20, + "rampDownCapacityThresholdPct": 50, + "rampDownForceLogoffUsers": true, + "rampDownWaitTimeMinutes": 30, + "rampDownNotificationMessage": "message", + "offPeakStartTime": "2020-11-10T20:00:00.000+00:00", + "offPeakLoadBalancingAlgorithm": "DepthFirst" + } + ], + "hostPoolReferences": [ + { + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "scalingPlanEnabled": true + } + ] + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/ScalingPlan_ListByHostPool.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/ScalingPlan_ListByHostPool.json new file mode 100644 index 000000000000..3b7d9adda485 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/ScalingPlan_ListByHostPool.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "scalingPlan1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/scalingPlans/scalingPlan1", + "type": "Microsoft.DesktopVirtualization/scalingPlans", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "timeZone": "", + "hostPoolType": "Personal", + "exclusionTag": "value", + "schedules": [ + { + "name": "schedule1", + "daysOfWeek": [ + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday" + ], + "rampUpStartTime": "2020-11-10T06:00:00.000+00:00", + "rampUpLoadBalancingAlgorithm": "DepthFirst", + "rampUpMinimumHostsPct": 20, + "rampUpCapacityThresholdPct": 80, + "peakStartTime": "2020-11-10T08:00:00.000+00:00", + "peakLoadBalancingAlgorithm": "BreadthFirst", + "rampDownStartTime": "2020-11-10T18:00:00.000+00:00", + "rampDownLoadBalancingAlgorithm": "DepthFirst", + "rampDownMinimumHostsPct": 20, + "rampDownCapacityThresholdPct": 50, + "rampDownForceLogoffUsers": true, + "rampDownWaitTimeMinutes": 30, + "rampDownNotificationMessage": "message", + "offPeakStartTime": "2020-11-10T20:00:00.000+00:00", + "offPeakLoadBalancingAlgorithm": "DepthFirst" + } + ], + "hostPoolReferences": [ + { + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "scalingPlanEnabled": true + } + ] + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/ScalingPlan_ListByResourceGroup.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/ScalingPlan_ListByResourceGroup.json new file mode 100644 index 000000000000..564f59f0cbde --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/ScalingPlan_ListByResourceGroup.json @@ -0,0 +1,116 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "scalingPlan1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/scalingPlans/scalingPlan1", + "type": "Microsoft.DesktopVirtualization/scalingPlans", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "timeZone": "", + "hostPoolType": "Personal", + "exclusionTag": "value", + "schedules": [ + { + "name": "schedule1", + "daysOfWeek": [ + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday" + ], + "rampUpStartTime": "2020-11-10T06:00:00.000+00:00", + "rampUpLoadBalancingAlgorithm": "DepthFirst", + "rampUpMinimumHostsPct": 20, + "rampUpCapacityThresholdPct": 80, + "peakStartTime": "2020-11-10T08:00:00.000+00:00", + "peakLoadBalancingAlgorithm": "BreadthFirst", + "rampDownStartTime": "2020-11-10T18:00:00.000+00:00", + "rampDownLoadBalancingAlgorithm": "DepthFirst", + "rampDownMinimumHostsPct": 20, + "rampDownCapacityThresholdPct": 50, + "rampDownForceLogoffUsers": true, + "rampDownWaitTimeMinutes": 30, + "rampDownNotificationMessage": "message", + "offPeakStartTime": "2020-11-10T20:00:00.000+00:00", + "offPeakLoadBalancingAlgorithm": "DepthFirst" + } + ], + "hostPoolReferences": [ + { + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "scalingPlanEnabled": true + } + ] + } + }, + { + "name": "scalingPlan2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/scalingPlans/scalingPlan2", + "type": "Microsoft.DesktopVirtualization/scalingPlans", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "timeZone": "", + "hostPoolType": "Personal", + "exclusionTag": "value", + "schedules": [ + { + "name": "schedule1", + "daysOfWeek": [ + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday" + ], + "rampUpStartTime": "2020-11-10T06:00:00.000+00:00", + "rampUpLoadBalancingAlgorithm": "DepthFirst", + "rampUpMinimumHostsPct": 20, + "rampUpCapacityThresholdPct": 80, + "peakStartTime": "2020-11-10T08:00:00.000+00:00", + "peakLoadBalancingAlgorithm": "BreadthFirst", + "rampDownStartTime": "2020-11-10T18:00:00.000+00:00", + "rampDownLoadBalancingAlgorithm": "DepthFirst", + "rampDownMinimumHostsPct": 20, + "rampDownCapacityThresholdPct": 50, + "rampDownForceLogoffUsers": false, + "rampDownStopHostsWhen": "ZeroSessions", + "offPeakStartTime": "2020-11-10T20:00:00.000+00:00", + "offPeakLoadBalancingAlgorithm": "DepthFirst" + } + ], + "hostPoolReferences": [ + { + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "scalingPlanEnabled": true + } + ] + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/ScalingPlan_ListBySubscription.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/ScalingPlan_ListBySubscription.json new file mode 100644 index 000000000000..9b948476a950 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/ScalingPlan_ListBySubscription.json @@ -0,0 +1,115 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "scalingPlan1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/scalingPlans/scalingPlan1", + "type": "Microsoft.DesktopVirtualization/scalingPlans", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "timeZone": "", + "hostPoolType": "Personal", + "exclusionTag": "value", + "schedules": [ + { + "name": "schedule1", + "daysOfWeek": [ + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday" + ], + "rampUpStartTime": "2020-11-10T06:00:00.000+00:00", + "rampUpLoadBalancingAlgorithm": "DepthFirst", + "rampUpMinimumHostsPct": 20, + "rampUpCapacityThresholdPct": 80, + "peakStartTime": "2020-11-10T08:00:00.000+00:00", + "peakLoadBalancingAlgorithm": "BreadthFirst", + "rampDownStartTime": "2020-11-10T18:00:00.000+00:00", + "rampDownLoadBalancingAlgorithm": "DepthFirst", + "rampDownMinimumHostsPct": 20, + "rampDownCapacityThresholdPct": 50, + "rampDownForceLogoffUsers": true, + "rampDownWaitTimeMinutes": 30, + "rampDownNotificationMessage": "message", + "offPeakStartTime": "2020-11-10T20:00:00.000+00:00", + "offPeakLoadBalancingAlgorithm": "DepthFirst" + } + ], + "hostPoolReferences": [ + { + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "scalingPlanEnabled": true + } + ] + } + }, + { + "name": "scalingPlan2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/scalingPlans/scalingPlan2", + "type": "Microsoft.DesktopVirtualization/scalingPlans", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "timeZone": "", + "hostPoolType": "Personal", + "exclusionTag": "value", + "schedules": [ + { + "name": "schedule1", + "daysOfWeek": [ + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday" + ], + "rampUpStartTime": "2020-11-10T06:00:00.000+00:00", + "rampUpLoadBalancingAlgorithm": "DepthFirst", + "rampUpMinimumHostsPct": 20, + "rampUpCapacityThresholdPct": 80, + "peakStartTime": "2020-11-10T08:00:00.000+00:00", + "peakLoadBalancingAlgorithm": "BreadthFirst", + "rampDownStartTime": "2020-11-10T18:00:00.000+00:00", + "rampDownLoadBalancingAlgorithm": "DepthFirst", + "rampDownMinimumHostsPct": 20, + "rampDownCapacityThresholdPct": 50, + "rampDownForceLogoffUsers": false, + "rampDownStopHostsWhen": "ZeroActiveSessions", + "offPeakStartTime": "2020-11-10T20:00:00.000+00:00", + "offPeakLoadBalancingAlgorithm": "DepthFirst" + } + ], + "hostPoolReferences": [ + { + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "scalingPlanEnabled": true + } + ] + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/ScalingPlan_Update.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/ScalingPlan_Update.json new file mode 100644 index 000000000000..9728dad6db7a --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/ScalingPlan_Update.json @@ -0,0 +1,109 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "scalingPlanName": "scalingPlan1", + "api-version": "2021-04-01-preview", + "workspace": { + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly", + "timeZone": "", + "hostPoolType": "Personal", + "exclusionTag": "value", + "schedules": [ + { + "name": "schedule1", + "daysOfWeek": [ + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday" + ], + "rampUpStartTime": "2020-11-10T06:00:00.000Z", + "rampUpLoadBalancingAlgorithm": "DepthFirst", + "rampUpMinimumHostsPct": 20, + "rampUpCapacityThresholdPct": 80, + "peakStartTime": "2020-11-10T08:00:00.000Z", + "peakLoadBalancingAlgorithm": "BreadthFirst", + "rampDownStartTime": "2020-11-10T18:00:00.000Z", + "rampDownLoadBalancingAlgorithm": "DepthFirst", + "rampDownMinimumHostsPct": 20, + "rampDownCapacityThresholdPct": 50, + "rampDownForceLogoffUsers": true, + "rampDownWaitTimeMinutes": 30, + "rampDownNotificationMessage": "message", + "offPeakStartTime": "2020-11-10T20:00:00.000Z", + "offPeakLoadBalancingAlgorithm": "DepthFirst" + } + ], + "hostPoolReferences": [ + { + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "scalingPlanEnabled": true + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "scalingPlan1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/scalingPlans/scalingPlan1", + "type": "Microsoft.DesktopVirtualization/scalingPlans", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "timeZone": "", + "hostPoolType": "Personal", + "exclusionTag": "value", + "schedules": [ + { + "name": "schedule1", + "daysOfWeek": [ + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday" + ], + "rampUpStartTime": "2020-11-10T06:00:00.000+00:00", + "rampUpLoadBalancingAlgorithm": "DepthFirst", + "rampUpMinimumHostsPct": 20, + "rampUpCapacityThresholdPct": 80, + "peakStartTime": "2020-11-10T08:00:00.000+00:00", + "peakLoadBalancingAlgorithm": "BreadthFirst", + "rampDownStartTime": "2020-11-10T18:00:00.000+00:00", + "rampDownLoadBalancingAlgorithm": "DepthFirst", + "rampDownMinimumHostsPct": 20, + "rampDownCapacityThresholdPct": 50, + "rampDownForceLogoffUsers": true, + "rampDownWaitTimeMinutes": 30, + "rampDownNotificationMessage": "message", + "offPeakStartTime": "2020-11-10T20:00:00.000+00:00", + "offPeakLoadBalancingAlgorithm": "DepthFirst" + } + ], + "hostPoolReferences": [ + { + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "scalingPlanEnabled": true + } + ] + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/SessionHost_Delete.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/SessionHost_Delete.json new file mode 100644 index 000000000000..5cd0e51d1769 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/SessionHost_Delete.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "sessionHostName": "sessionHost1.microsoft.com", + "api-version": "2021-04-01-preview", + "force": true + }, + "responses": { + "200": { + "name": "sessionHost1.microsoft.com", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts", + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "lastHeartBeat": "2008-09-22T14:01:54.9571247Z", + "sessions": 1, + "agentVersion": "1.0.0.1391", + "allowNewSession": true, + "assignedUser": "user1@microsoft.com", + "status": "Available", + "statusTimestamp": "2008-09-22T14:01:54.9571247Z", + "osVersion": "10.0.17763", + "sxSStackVersion": "rdp-sxs190816002", + "updateState": "Succeeded", + "lastUpdateTime": "2008-09-22T14:01:54.9571247Z", + "updateErrorMessage": "", + "virtualMachineId": "29491b54-c033-4dec-b09a-18bf0ebafaef", + "resourceId": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.Compute/virtualMachines/sessionHost1", + "sessionHostHealthCheckResults": [ + { + "healthCheckName": "DomainJoinedCheck", + "healthCheckResult": "HealthCheckSucceeded", + "additionalFailureDetails": { + "message": "SessionHost healthy: is joined to domain ≤wvdarmtest1.net≥", + "errorCode": 0, + "lastHealthCheckDateTime": "2021-01-14T02:09:37.6236843Z" + } + } + ] + } + }, + "204": {} + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/SessionHost_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/SessionHost_Get.json new file mode 100644 index 000000000000..6592cff9c3b0 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/SessionHost_Get.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "sessionHostName": "sessionHost1.microsoft.com", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "name": "sessionHost1.microsoft.com", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts", + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "lastHeartBeat": "2008-09-22T14:01:54.9571247Z", + "sessions": 1, + "agentVersion": "1.0.0.1391", + "allowNewSession": true, + "assignedUser": "user1@microsoft.com", + "status": "Available", + "statusTimestamp": "2008-09-22T14:01:54.9571247Z", + "osVersion": "10.0.17763", + "sxSStackVersion": "rdp-sxs190816002", + "updateState": "Succeeded", + "lastUpdateTime": "2008-09-22T14:01:54.9571247Z", + "updateErrorMessage": "", + "virtualMachineId": "29491b54-c033-4dec-b09a-18bf0ebafaef", + "resourceId": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.Compute/virtualMachines/sessionHost1", + "sessionHostHealthCheckResults": [ + { + "healthCheckName": "DomainJoinedCheck", + "healthCheckResult": "HealthCheckSucceeded", + "additionalFailureDetails": { + "message": "SessionHost healthy: is joined to domain ≤wvdarmtest1.net≥", + "errorCode": 0, + "lastHealthCheckDateTime": "2021-01-14T02:09:37.6236843Z" + } + } + ] + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/SessionHost_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/SessionHost_List.json new file mode 100644 index 000000000000..f82bbbbffd70 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/SessionHost_List.json @@ -0,0 +1,82 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "sessionHost1.microsoft.com", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionhosts", + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "lastHeartBeat": "2008-09-22T14:01:54.9571247Z", + "sessions": 1, + "agentVersion": "1.0.0.1391", + "allowNewSession": true, + "assignedUser": "user1@microsoft.com", + "status": "Available", + "statusTimestamp": "2008-09-22T14:01:54.9571247Z", + "osVersion": "10.0.17763", + "sxSStackVersion": "rdp-sxs190816002", + "updateState": "Succeeded", + "lastUpdateTime": "2008-09-22T14:01:54.9571247Z", + "updateErrorMessage": "", + "virtualMachineId": "29491b54-c033-4dec-b09a-18bf0ebafaef", + "resourceId": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.Compute/virtualMachines/sessionHost1", + "sessionHostHealthCheckResults": [ + { + "healthCheckName": "DomainJoinedCheck", + "healthCheckResult": "HealthCheckSucceeded", + "additionalFailureDetails": { + "message": "SessionHost healthy: is joined to domain ≤wvdarmtest1.net≥", + "errorCode": 0, + "lastHealthCheckDateTime": "2021-01-14T02:09:37.6236843Z" + } + } + ] + } + }, + { + "name": "sessionHost2.microsoft.com", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost2microsoft.com", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionhosts", + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "lastHeartBeat": "2008-09-22T14:01:54.9571247Z", + "sessions": 1, + "agentVersion": "1.0.0.1391", + "allowNewSession": true, + "assignedUser": "user2@microsoft.com", + "status": "Available", + "statusTimestamp": "2008-09-22T14:01:54.9571247Z", + "osVersion": "10.0.17763", + "sxSStackVersion": "rdp-sxs190816002", + "updateState": "Succeeded", + "lastUpdateTime": "2008-09-22T14:01:54.9571247Z", + "updateErrorMessage": "", + "virtualMachineId": "39491b54-c033-4dec-b09a-18bf0ebafaef", + "resourceId": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.Compute/virtualMachines/sessionHost2", + "sessionHostHealthCheckResults": [ + { + "healthCheckName": "DomainJoinedCheck", + "healthCheckResult": "HealthCheckSucceeded", + "additionalFailureDetails": { + "message": "SessionHost healthy: is joined to domain ≤wvdarmtest1.net≥", + "errorCode": 0, + "lastHealthCheckDateTime": "2021-01-14T02:09:37.6236843Z" + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/SessionHost_Update.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/SessionHost_Update.json new file mode 100644 index 000000000000..2dd7a8e4002e --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/SessionHost_Update.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "sessionHostName": "sessionHost1.microsoft.com", + "api-version": "2021-04-01-preview", + "sessionHost": { + "properties": { + "allowNewSession": true, + "assignedUser": "user1@microsoft.com" + } + } + }, + "responses": { + "200": { + "body": { + "name": "sessionHost1.microsoft.com", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionhosts", + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "lastHeartBeat": "2019-01-11T19:27:13.6108027Z", + "sessions": 1, + "agentVersion": "1.0.0.1391", + "allowNewSession": true, + "assignedUser": "user1@microsoft.com", + "status": "Available", + "statusTimestamp": "2019-01-24T20:00:08.2893033Z", + "osVersion": "10.0.17763", + "sxSStackVersion": "rdp-sxs190816002", + "updateState": "Succeeded", + "lastUpdateTime": "2008-09-22T14:01:54.9571247Z", + "updateErrorMessage": "", + "virtualMachineId": "29491b54-c033-4dec-b09a-18bf0ebafaef", + "resourceId": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.Compute/virtualMachines/sessionHost1", + "sessionHostHealthCheckResults": [ + { + "healthCheckName": "DomainJoinedCheck", + "healthCheckResult": "HealthCheckSucceeded", + "additionalFailureDetails": { + "message": "SessionHost healthy: is joined to domain ≤wvdarmtest1.net≥", + "errorCode": 0, + "lastHealthCheckDateTime": "2021-01-14T02:09:37.6236843Z" + } + } + ] + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/StartMenuItem_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/StartMenuItem_List.json new file mode 100644 index 000000000000..dfbbf804a430 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/StartMenuItem_List.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "application1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/startMenuItem/application1", + "type": "Microsoft.DesktopVirtualization/applicationGroups/startMenuItems", + "properties": { + "appAlias": "word", + "filePath": "/path/to/file", + "commandLineArguments": "arguments", + "iconPath": "/path/to/icon", + "iconIndex": 1 + } + }, + { + "name": "application2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/startMenuItem/application2", + "type": "Microsoft.DesktopVirtualization/applicationGroups/startMenuItems", + "properties": { + "appAlias": "excel", + "filePath": "/path/to/file", + "commandLineArguments": "arguments", + "iconPath": "/path/to/icon", + "iconIndex": 1 + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/UserSession_Delete.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/UserSession_Delete.json new file mode 100644 index 000000000000..899b8486e6bf --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/UserSession_Delete.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "sessionHostName": "sessionHost1.microsoft.com", + "userSessionId": "1", + "api-version": "2021-04-01-preview", + "force": true + }, + "responses": { + "200": { + "name": "1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions", + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "userPrincipalName": "user1@microsoft.com", + "applicationType": "Desktop", + "sessionState": "Active", + "activeDirectoryUserName": "WVDARM\\user1", + "createTime": "2008-09-22T14:01:54.9571247Z" + } + }, + "204": {} + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/UserSession_Disconnect_Post.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/UserSession_Disconnect_Post.json new file mode 100644 index 000000000000..604cf10ab5a5 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/UserSession_Disconnect_Post.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "sessionHostName": "sessionHost1.microsoft.com", + "userSessionId": "1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/UserSession_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/UserSession_Get.json new file mode 100644 index 000000000000..40483622e0e6 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/UserSession_Get.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "sessionHostName": "sessionHost1.microsoft.com", + "userSessionId": "1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "name": "1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions", + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "userPrincipalName": "user1@microsoft.com", + "applicationType": "Desktop", + "sessionState": "Active", + "activeDirectoryUserName": "WVDARM\\user1", + "createTime": "2008-09-22T14:01:54.9571247Z" + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/UserSession_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/UserSession_List.json new file mode 100644 index 000000000000..a2983d52a665 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/UserSession_List.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "sessionHostName": "sessionHost1.microsoft.com", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions", + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "userPrincipalName": "user1@microsoft.com", + "applicationType": "Desktop", + "sessionState": "Active", + "activeDirectoryUserName": "WVDARM\\user1", + "createTime": "2008-09-22T14:01:54.9571247Z" + } + }, + { + "name": "2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/2", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions", + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "userPrincipalName": "user1@microsoft.com", + "applicationType": "Desktop", + "sessionState": "Active", + "activeDirectoryUserName": "WVDARM\\user1", + "createTime": "2008-09-22T14:01:54.9571247Z" + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/UserSession_ListByHostPool.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/UserSession_ListByHostPool.json new file mode 100644 index 000000000000..2b02a23d2e6a --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/UserSession_ListByHostPool.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "api-version": "2021-04-01-preview", + "$filter": "userPrincipalName eq 'user1@microsoft.com' and state eq 'active'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions", + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "userPrincipalName": "user1@microsoft.com", + "applicationType": "Desktop", + "sessionState": "Active", + "activeDirectoryUserName": "WVDARM\\user1", + "createTime": "2008-09-22T14:01:54.9571247Z" + } + }, + { + "name": "2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/2", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions", + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "userPrincipalName": "user1@microsoft.com", + "applicationType": "Desktop", + "sessionState": "Active", + "activeDirectoryUserName": "WVDARM\\user1", + "createTime": "2008-09-22T14:01:54.9571247Z" + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/UserSession_SendMessage_Post.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/UserSession_SendMessage_Post.json new file mode 100644 index 000000000000..ea686a64ffd3 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/UserSession_SendMessage_Post.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "sessionHostName": "sessionHost1.microsoft.com", + "userSessionId": "1", + "api-version": "2021-04-01-preview", + "sendMessage": { + "messageTitle": "title", + "messageBody": "body" + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/Workspace_Create.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/Workspace_Create.json new file mode 100644 index 000000000000..8643842ca1b4 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/Workspace_Create.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "workspaceName": "workspace1", + "api-version": "2021-04-01-preview", + "workspace": { + "location": "centralus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly" + } + } + }, + "responses": { + "200": { + "body": { + "name": "workspace1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "type": "Microsoft.DesktopVirtualization/workspaces", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "cloudPcResource": false, + "publicNetworkAccess": "Enabled" + } + } + }, + "201": { + "body": { + "name": "workspace1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "type": "Microsoft.DesktopVirtualization/workspaces", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "cloudPcResource": false, + "publicNetworkAccess": "Enabled" + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/Workspace_Delete.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/Workspace_Delete.json new file mode 100644 index 000000000000..3b9ff0eb2cb0 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/Workspace_Delete.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "workspaceName": "workspace1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "name": "workspace1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "type": "Microsoft.DesktopVirtualization/workspaces", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "cloudPcResource": false + } + }, + "204": {} + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/Workspace_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/Workspace_Get.json new file mode 100644 index 000000000000..20f5300b51eb --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/Workspace_Get.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "workspaceName": "workspace1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "name": "workspace1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "type": "Microsoft.DesktopVirtualization/workspaces", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "cloudPcResource": false, + "publicNetworkAccess": "Enabled" + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/Workspace_ListByResourceGroup.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/Workspace_ListByResourceGroup.json new file mode 100644 index 000000000000..b64d219f1aaf --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/Workspace_ListByResourceGroup.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "workspace1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "type": "Microsoft.DesktopVirtualization/workspaces", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "cloudPcResource": false, + "publicNetworkAccess": "Enabled" + } + }, + { + "name": "workspace2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace2", + "type": "Microsoft.DesktopVirtualization/workspaces", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "cloudPcResource": false, + "publicNetworkAccess": "Enabled" + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/Workspace_ListBySubscription.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/Workspace_ListBySubscription.json new file mode 100644 index 000000000000..ff2c6b037adf --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/Workspace_ListBySubscription.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "workspace1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "type": "Microsoft.DesktopVirtualization/workspaces", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "cloudPcResource": false, + "publicNetworkAccess": "Enabled" + } + }, + { + "name": "workspace2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace2", + "type": "Microsoft.DesktopVirtualization/workspaces", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "cloudPcResource": false, + "publicNetworkAccess": "Enabled" + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/Workspace_Update.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/Workspace_Update.json new file mode 100644 index 000000000000..052817bb6259 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/examples/Workspace_Update.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "workspaceName": "workspace1", + "api-version": "2021-04-01-preview", + "workspace": { + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly" + } + } + }, + "responses": { + "200": { + "body": { + "name": "workspace1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "type": "Microsoft.DesktopVirtualization/workspaces", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325", + "description": "des1", + "friendlyName": "friendly", + "cloudPcResource": false, + "publicNetworkAccess": "Enabled" + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/readme.azureresourceschema.md b/specification/desktopvirtualization/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 7dd2e04d91db..000000000000 --- a/specification/desktopvirtualization/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,120 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-desktopvirtualization-2021-02-01-preview - - tag: schema-desktopvirtualization-2021-01-14-preview - - tag: schema-desktopvirtualization-2020-11-10-preview - - tag: schema-desktopvirtualization-2020-11-02-preview - - tag: schema-desktopvirtualization-2020-10-19-preview - - tag: schema-desktopvirtualization-2020-09-21-preview - - tag: schema-desktopvirtualization-2019-12-10-preview - - tag: schema-desktopvirtualization-2019-09-24-preview - - tag: schema-desktopvirtualization-2019-01-23-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-desktopvirtualization-2021-02-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-desktopvirtualization-2021-02-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DesktopVirtualization/preview/2021-02-01-preview/desktopvirtualization.json - -``` - -### Tag: schema-desktopvirtualization-2021-01-14-preview and azureresourceschema - -``` yaml $(tag) == 'schema-desktopvirtualization-2021-01-14-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DesktopVirtualization/preview/2021-01-14-preview/desktopvirtualization.json - -``` - -### Tag: schema-desktopvirtualization-2020-11-10-preview and azureresourceschema - -``` yaml $(tag) == 'schema-desktopvirtualization-2020-11-10-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DesktopVirtualization/preview/2020-11-10-preview/desktopvirtualization.json - -``` - -### Tag: schema-desktopvirtualization-2020-11-02-preview and azureresourceschema - -``` yaml $(tag) == 'schema-desktopvirtualization-2020-11-02-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DesktopVirtualization/preview/2020-11-02-preview/desktopvirtualization.json - -``` - -### Tag: schema-desktopvirtualization-2020-10-19-preview and azureresourceschema - -``` yaml $(tag) == 'schema-desktopvirtualization-2020-10-19-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DesktopVirtualization/preview/2020-10-19-preview/desktopvirtualization.json - -``` - -### Tag: schema-desktopvirtualization-2020-09-21-preview and azureresourceschema - -``` yaml $(tag) == 'schema-desktopvirtualization-2020-09-21-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DesktopVirtualization/preview/2020-09-21-preview/desktopvirtualization.json - -``` - -### Tag: schema-desktopvirtualization-2019-12-10-preview and azureresourceschema - -``` yaml $(tag) == 'schema-desktopvirtualization-2019-12-10-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DesktopVirtualization/preview/2019-12-10-preview/desktopvirtualization.json - -``` - -### Tag: schema-desktopvirtualization-2019-09-24-preview and azureresourceschema - -``` yaml $(tag) == 'schema-desktopvirtualization-2019-09-24-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DesktopVirtualization/preview/2019-09-24-preview/desktopvirtualization.json - -``` - -### Tag: schema-desktopvirtualization-2019-01-23-preview and azureresourceschema - -``` yaml $(tag) == 'schema-desktopvirtualization-2019-01-23-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DesktopVirtualization/preview/2019-01-23-preview/desktopvirtualization.json - -``` diff --git a/specification/desktopvirtualization/resource-manager/readme.go.md b/specification/desktopvirtualization/resource-manager/readme.go.md index ddf60285d66f..6afe6985300d 100644 --- a/specification/desktopvirtualization/resource-manager/readme.go.md +++ b/specification/desktopvirtualization/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: desktopvirtualization clear-output-folder: true ``` @@ -21,6 +21,26 @@ batch: - tag: package-2020-11-10-preview - tag: package-2021-01-14-preview - tag: package-2021-02-01-preview + - tag: package-2021-03-09-preview + - tag: package-2021-04-01-preview +``` + +### Tag: package-2021-04-01-preview and go + +These settings apply only when `--tag=package-2021-04-01-preview --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2021-04-01-preview' && $(go) +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2021-04-01-preview/$(namespace) +``` + +### Tag: package-2021-03-09-preview and go + +These settings apply only when `--tag=package-2021-03-09-preview --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2021-03-09-preview' && $(go) +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2021-03-09-preview/$(namespace) ``` ### Tag: package-2021-02-01-preview and go diff --git a/specification/desktopvirtualization/resource-manager/readme.java.md b/specification/desktopvirtualization/resource-manager/readme.java.md index cfadd5526098..d82a503ba23c 100644 --- a/specification/desktopvirtualization/resource-manager/readme.java.md +++ b/specification/desktopvirtualization/resource-manager/readme.java.md @@ -21,6 +21,34 @@ batch: - tag: package-2020-11-10-preview - tag: package-2021-01-14-preview - tag: package-2021-02-01-preview + - tag: package-2021-03-09-preview + - tag: package-2021-04-01-preview +``` + +### Tag: package-2021-03-09-preview and java + +These settings apply only when `--tag=package-2021-04-01-preview --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2021-04-01-preview' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.desktopvirtualization.v2021_04-01-preview + output-folder: $(azure-libraries-for-java-folder)/sdk/desktopvirtualization/mgmt-v2021_04-01-preview +regenerate-manager: true +generate-interface: true +``` + +### Tag: package-2021-03-09-preview and java + +These settings apply only when `--tag=package-2021-03-09-preview --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2021-03-09-preview' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.desktopvirtualization.v2021_03-09-preview + output-folder: $(azure-libraries-for-java-folder)/sdk/desktopvirtualization/mgmt-v2021_03-09-preview +regenerate-manager: true +generate-interface: true ``` ### Tag: package-2021-02-01-preview and java diff --git a/specification/desktopvirtualization/resource-manager/readme.md b/specification/desktopvirtualization/resource-manager/readme.md index ca3f46e506be..61a19b4be4af 100644 --- a/specification/desktopvirtualization/resource-manager/readme.md +++ b/specification/desktopvirtualization/resource-manager/readme.md @@ -24,7 +24,7 @@ These are the global settings for the DesktopVirtualizationClient API. ``` yaml openapi-type: arm -tag: package-2021-02-01-preview +tag: package-2021-04-01-preview ``` ### Tag: package-2019-01-23-preview @@ -102,6 +102,20 @@ input-file: - Microsoft.DesktopVirtualization/preview/2021-02-01-preview/desktopvirtualization.json ``` +### Tag: package-2021-03-09-preview + +``` yaml $(tag) == 'package-2021-03-09-preview' +input-file: +- Microsoft.DesktopVirtualization/preview/2021-03-09-preview/desktopvirtualization.json +``` + +### Tag: package-2021-04-01-preview + +``` yaml $(tag) == 'package-2021-04-01-preview' +input-file: +- Microsoft.DesktopVirtualization/preview/2021-04-01-preview/desktopvirtualization.json +``` + --- # Code Generation @@ -125,8 +139,6 @@ swagger-to-sdk: - bundle install && rake arm:regen_all_profiles['azure_mgmt_desktop_virtualization'] - repo: azure-cli-extensions - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js desktopvirtualization/resource-manager ``` ## C# @@ -178,6 +190,8 @@ input-file: - $(this-folder)/Microsoft.DesktopVirtualization/preview/2020-11-10-preview/desktopvirtualization.json - $(this-folder)/Microsoft.DesktopVirtualization/preview/2021-01-14-preview/desktopvirtualization.json - $(this-folder)/Microsoft.DesktopVirtualization/preview/2021-02-01-preview/desktopvirtualization.json + - $(this-folder)/Microsoft.DesktopVirtualization/preview/2021-03-09-preview/desktopvirtualization.json + - $(this-folder)/Microsoft.DesktopVirtualization/preview/2021-04-01-preview/desktopvirtualization.json ``` diff --git a/specification/desktopvirtualization/resource-manager/readme.ruby.md b/specification/desktopvirtualization/resource-manager/readme.ruby.md index a440cbcfbd6a..9e70e545396f 100644 --- a/specification/desktopvirtualization/resource-manager/readme.ruby.md +++ b/specification/desktopvirtualization/resource-manager/readme.ruby.md @@ -20,7 +20,30 @@ batch: - tag: package-2020-11-02-preview - tag: package-2021-01-14-preview - tag: package-2021-02-01-preview + - tag: package-2021-03-09-preview + - tag: package-2021-04-01-preview ``` + +### Tag: package-2021-04-01-preview and ruby + +These settings apply only when `--tag=package-2021-04-01-preview --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +``` yaml $(tag) == 'package-2021-04-01-preview' && $(ruby) +namespace: "Azure::DesktopVirtualization::Mgmt::V2021_04_01_preview" +output-folder: $(ruby-sdks-folder)/management/azure_mgmt_desktop_virtualization/lib +``` + +### Tag: package-2021-03-09-preview and ruby + +These settings apply only when `--tag=package-2021-03-09-preview --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +``` yaml $(tag) == 'package-2021-03-09-preview' && $(ruby) +namespace: "Azure::DesktopVirtualization::Mgmt::V2021_03_09_preview" +output-folder: $(ruby-sdks-folder)/management/azure_mgmt_desktop_virtualization/lib +``` + ### Tag: package-2021-02-01-preview and ruby These settings apply only when `--tag=package-2021-02-01-preview --ruby` is specified on the command line. diff --git a/specification/deviceprovisioningservices/resource-manager/readme.azureresourceschema.md b/specification/deviceprovisioningservices/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 307ea4b09f20..000000000000 --- a/specification/deviceprovisioningservices/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,84 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-devices-2020-09-01-preview - - tag: schema-devices-2020-03-01 - - tag: schema-devices-2020-01-01 - - tag: schema-devices-2018-01-22 - - tag: schema-devices-2017-11-15 - - tag: schema-devices-2017-08-21-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-devices-2020-09-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-devices-2020-09-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Devices/preview/2020-09-01-preview/iotdps.json - -``` - -### Tag: schema-devices-2020-03-01 and azureresourceschema - -``` yaml $(tag) == 'schema-devices-2020-03-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Devices/stable/2020-03-01/iotdps.json - -``` - -### Tag: schema-devices-2020-01-01 and azureresourceschema - -``` yaml $(tag) == 'schema-devices-2020-01-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Devices/stable/2020-01-01/iotdps.json - -``` - -### Tag: schema-devices-2018-01-22 and azureresourceschema - -``` yaml $(tag) == 'schema-devices-2018-01-22' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Devices/stable/2018-01-22/iotdps.json - -``` - -### Tag: schema-devices-2017-11-15 and azureresourceschema - -``` yaml $(tag) == 'schema-devices-2017-11-15' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Devices/stable/2017-11-15/iotdps.json - -``` - -### Tag: schema-devices-2017-08-21-preview and azureresourceschema - -``` yaml $(tag) == 'schema-devices-2017-08-21-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Devices/preview/2017-08-21-preview/iotdps.json - -``` diff --git a/specification/deviceprovisioningservices/resource-manager/readme.go.md b/specification/deviceprovisioningservices/resource-manager/readme.go.md index 4d49e8def6ef..03f41eeac24e 100644 --- a/specification/deviceprovisioningservices/resource-manager/readme.go.md +++ b/specification/deviceprovisioningservices/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION clear-output-folder: true namespace: iothub ``` diff --git a/specification/deviceprovisioningservices/resource-manager/readme.java.md b/specification/deviceprovisioningservices/resource-manager/readme.java.md index 881795d3cb5e..b6aec4ae473b 100644 --- a/specification/deviceprovisioningservices/resource-manager/readme.java.md +++ b/specification/deviceprovisioningservices/resource-manager/readme.java.md @@ -19,6 +19,11 @@ java: generate-interface: true clear-output-folder: true output-folder: $(azure-libraries-for-java-folder)/deviceprovisioningservices + +directive: + rename-model: + from: 'SharedAccessSignatureAuthorizationRule[AccessRightsDescription]' + to: SharedAccessSignatureAuthorizationRule ``` ## Tag: package-2020-03 and java diff --git a/specification/deviceprovisioningservices/resource-manager/readme.md b/specification/deviceprovisioningservices/resource-manager/readme.md index cb42add27382..3ebc9752fc3f 100644 --- a/specification/deviceprovisioningservices/resource-manager/readme.md +++ b/specification/deviceprovisioningservices/resource-manager/readme.md @@ -95,14 +95,12 @@ This is not used by Autorest itself. ``` yaml $(swagger-to-sdk) swagger-to-sdk: - repo: azure-sdk-for-net - - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-java - repo: azure-sdk-for-go - repo: azure-sdk-for-js - repo: azure-sdk-for-node - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js deviceprovisioningservices/resource-manager ``` ### C# @@ -111,32 +109,7 @@ 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.iothubprovisioningservices - package-name: azure-mgmt-iothubprovisioningservices - clear-output-folder: true -``` - -``` yaml $(python) && $(python-mode) == 'update' -python: - no-namespace-folders: true - output-folder: $(python-sdks-folder)/iothub/azure-mgmt-iothubprovisioningservices/azure/mgmt/iothubprovisioningservices -``` - -``` yaml $(python) && $(python-mode) == 'create' -python: - basic-setup-py: true - output-folder: $(python-sdks-folder)/iothub/azure-mgmt-iothubprovisioningservices -``` +See configuration in [readme.python.md](./readme.python.md) ### Go @@ -146,6 +119,4 @@ See configuration in [readme.go.md](./readme.go.md) See configuration in [readme.java.md](./readme.java.md) -### AzureResourceSchema - -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) +# diff --git a/specification/deviceprovisioningservices/resource-manager/readme.python.md b/specification/deviceprovisioningservices/resource-manager/readme.python.md new file mode 100644 index 000000000000..b2c93d010289 --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/readme.python.md @@ -0,0 +1,25 @@ +### Python + +These settings apply only when `--python` is specified on the command line. +Please also specify `--python-sdks-folder=`. +Use `--python-mode=update` if you already have a setup.py and just want to update the code itself. + +``` yaml $(python) +python-mode: create +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +namespace: azure.mgmt.iothubprovisioningservices +package-name: azure-mgmt-iothubprovisioningservices +package-version: 1.0.0b1 +clear-output-folder: true +``` + +``` yaml $(python) && $(python-mode) == 'update' +no-namespace-folders: true +output-folder: $(python-sdks-folder)/iothub/azure-mgmt-iothubprovisioningservices/azure/mgmt/iothubprovisioningservices +``` + +``` yaml $(python) && $(python-mode) == 'create' +basic-setup-py: true +output-folder: $(python-sdks-folder)/iothub/azure-mgmt-iothubprovisioningservices +``` diff --git a/specification/deviceupdate/data-plane/readme.csharp.md b/specification/deviceupdate/data-plane/readme.csharp.md deleted file mode 100644 index 4c4a616635ff..000000000000 --- a/specification/deviceupdate/data-plane/readme.csharp.md +++ /dev/null @@ -1,16 +0,0 @@ -## C - -These settings apply only when `--csharp` is specified on the command line. -Please also specify `--csharp-sdks-folder=`. - -```yaml $(csharp) -csharp: - azure-arm: false - public-clients: true - license-header: MICROSOFT_MIT_SMALL_NO_CODEGEN - payload-flattening-threshold: 1 - clear-output-folder: true - client-side-validation: false - namespace: Azure.Iot.DeviceUpdate - output-folder: $(csharp-sdks-folder)/deviceupdate/Azure.Iot.DeviceUpdate/src/Generated -``` diff --git a/specification/deviceupdate/data-plane/readme.md b/specification/deviceupdate/data-plane/readme.md index 501f3300fd99..1cca118e7d26 100644 --- a/specification/deviceupdate/data-plane/readme.md +++ b/specification/deviceupdate/data-plane/readme.md @@ -64,10 +64,6 @@ See configuration in [readme.python.md](./readme.python.md) See configuration in [readme.typescript.md](./readme.typescript.md) -## CSharp - -See configuration in [readme.csharp.md](./readme.csharp.md) - ## Multi-API/Profile support for AutoRest v3 generators AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. diff --git a/specification/deviceupdate/resource-manager/Microsoft.DeviceUpdate/preview/2020-03-01-preview/deviceupdate.json b/specification/deviceupdate/resource-manager/Microsoft.DeviceUpdate/preview/2020-03-01-preview/deviceupdate.json index d2ce92b8f235..277b01e35df6 100644 --- a/specification/deviceupdate/resource-manager/Microsoft.DeviceUpdate/preview/2020-03-01-preview/deviceupdate.json +++ b/specification/deviceupdate/resource-manager/Microsoft.DeviceUpdate/preview/2020-03-01-preview/deviceupdate.json @@ -34,6 +34,52 @@ } }, "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.DeviceUpdate/checknameavailability": { + "post": { + "description": "Checks ADU resource name availability.", + "operationId": "CheckNameAvailability", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/CheckNameAvailabilityRequest" + }, + "in": "body", + "name": "request", + "required": true, + "description": "Check Name Availability Request." + } + ], + "responses": { + "200": { + "description": "Check Name Availability Response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/CheckNameAvailabilityResponse" + } + }, + "default": { + "description": "Error response describing the reason for operation failure.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "CheckNameAvailability_Available": { + "$ref": "./examples/CheckNameAvailability_Available.json" + }, + "CheckNameAvailability_AlreadyExists": { + "$ref": "./examples/CheckNameAvailability_AlreadyExists.json" + } + }, + "deprecated": false + } + }, "/subscriptions/{subscriptionId}/providers/Microsoft.DeviceUpdate/accounts": { "get": { "description": "Returns list of Accounts.", @@ -56,7 +102,7 @@ "default": { "description": "Error response describing the reason for operation failure.", "schema": { - "$ref": "#/definitions/ErrorDefinition" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" } } }, @@ -96,7 +142,7 @@ "default": { "description": "Error response describing the reason for operation failure.", "schema": { - "$ref": "#/definitions/ErrorDefinition" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" } } }, @@ -139,7 +185,7 @@ "default": { "description": "Error response describing the reason for operation failure.", "schema": { - "$ref": "#/definitions/ErrorDefinition" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" } } }, @@ -149,6 +195,40 @@ } } }, + "head": { + "description": "Checks whether account exists.", + "operationId": "Accounts_Head", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + } + ], + "responses": { + "200": { + "description": "Account exists." + }, + "default": { + "description": "Error response describing the reason for operation failure.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Checks whether account exists": { + "$ref": "./examples/Accounts/Accounts_Head.json" + } + } + }, "put": { "description": "Creates or updates Account.", "operationId": "Accounts_Create", @@ -189,7 +269,7 @@ "default": { "description": "Error response describing the reason for operation failure.", "schema": { - "$ref": "#/definitions/ErrorDefinition" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" } } }, @@ -222,7 +302,7 @@ ], "responses": { "200": { - "description": "Async operation to delete Account was created." + "description": "Account was deleted." }, "202": { "description": "Async operation to delete Account was created." @@ -233,7 +313,7 @@ "default": { "description": "Error response describing the reason for operation failure.", "schema": { - "$ref": "#/definitions/ErrorDefinition" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" } } }, @@ -276,10 +356,16 @@ "$ref": "#/definitions/Account" } }, + "201": { + "description": "Async operation to update accounts was created.", + "schema": { + "$ref": "#/definitions/Account" + } + }, "default": { "description": "Error response describing the reason for operation failure.", "schema": { - "$ref": "#/definitions/ErrorDefinition" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" } } }, @@ -322,7 +408,7 @@ "default": { "description": "Error response describing the reason for operation failure.", "schema": { - "$ref": "#/definitions/ErrorDefinition" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" } } }, @@ -338,7 +424,7 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DeviceUpdate/accounts/{accountName}/instances/{instanceName}": { "get": { - "description": "Returns instances for the given account and instance name.", + "description": "Returns instance details for the given instance and account name.", "operationId": "Instances_Get", "parameters": [ { @@ -367,7 +453,7 @@ "default": { "description": "Error response describing the reason for operation failure.", "schema": { - "$ref": "#/definitions/ErrorDefinition" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" } } }, @@ -377,6 +463,43 @@ } } }, + "head": { + "description": "Checks whether instance exists.", + "operationId": "Instances_Head", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "$ref": "#/parameters/InstanceNameParameter" + } + ], + "responses": { + "200": { + "description": "Instance exists." + }, + "default": { + "description": "Error response describing the reason for operation failure.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Checks whether instance exists.": { + "$ref": "./examples/Instances/Instances_Head.json" + } + } + }, "put": { "description": "Creates or updates instance.", "operationId": "Instances_Create", @@ -420,7 +543,7 @@ "default": { "description": "Error response describing the reason for operation failure.", "schema": { - "$ref": "#/definitions/ErrorDefinition" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" } } }, @@ -456,7 +579,7 @@ ], "responses": { "200": { - "description": "Async operation to delete Instance was created." + "description": "Instance was deleted." }, "202": { "description": "Async operation to delete Instance was created." @@ -467,7 +590,7 @@ "default": { "description": "Error response describing the reason for operation failure.", "schema": { - "$ref": "#/definitions/ErrorDefinition" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" } } }, @@ -516,7 +639,7 @@ "default": { "description": "Error response describing the reason for operation failure.", "schema": { - "$ref": "#/definitions/ErrorDefinition" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" } } }, @@ -546,7 +669,7 @@ "default": { "description": "Error response describing the reason for operation failure.", "schema": { - "$ref": "#/definitions/ErrorDefinition" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" } } }, @@ -567,6 +690,10 @@ } ], "properties": { + "systemData": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/systemData", + "readOnly": true + }, "properties": { "description": "Device Update account properties.", "x-ms-client-flatten": true, @@ -595,6 +722,10 @@ "readOnly": true } } + }, + "identity": { + "$ref": "#/definitions/Identity", + "description": "The type of identity used for the resource." } } }, @@ -624,6 +755,10 @@ } ], "properties": { + "systemData": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/systemData", + "readOnly": true + }, "properties": { "description": "Device Update instance properties.", "x-ms-client-flatten": true, @@ -657,6 +792,10 @@ "items": { "$ref": "#/definitions/IotHubSettings" } + }, + "enableDiagnostics": { + "description": "Enables or Disables the diagnostic logs collection", + "type": "boolean" } } } @@ -682,6 +821,33 @@ } } }, + "Identity": { + "description": "Identity for the resource.", + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal ID of resource identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant ID of resource." + }, + "type": { + "enum": [ + "SystemAssigned", + "None" + ], + "x-ms-enum": { + "name": "ResourceIdentityType", + "modelAsString": false + }, + "type": "string", + "description": "The identity type." + } + } + }, "IotHubSettings": { "type": "object", "description": "Device Update account integration with IoT Hub settings.", @@ -707,19 +873,13 @@ "resourceId" ] }, - "ErrorDefinition": { - "description": "Error response indicates that the service is not able to process the incoming request.", - "properties": { - "error": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "Error details.", - "readOnly": true - } - } - }, "AccountUpdate": { "description": "Request payload used to update and existing Accounts.", "properties": { + "identity": { + "$ref": "#/definitions/Identity", + "description": "The type of identity used for the resource." + }, "location": { "type": "string", "description": "The geo-location where the resource lives" @@ -775,7 +935,7 @@ "type": "string", "description": "Account name.", "x-ms-parameter-location": "method", - "pattern": "^[A-Za-z][A-Za-z0-9]+$", + "pattern": "^[A-Za-z0-9]+(-[A-Za-z0-9]+)*$", "minLength": 3, "maxLength": 24 }, @@ -786,7 +946,7 @@ "type": "string", "description": "Instance name.", "x-ms-parameter-location": "method", - "pattern": "^[A-Za-z][A-Za-z0-9]+$", + "pattern": "^[A-Za-z0-9]+(-[A-Za-z0-9]+)*$", "minLength": 3, "maxLength": 36 } diff --git a/specification/deviceupdate/resource-manager/Microsoft.DeviceUpdate/preview/2020-03-01-preview/examples/Accounts/Accounts_Create.json b/specification/deviceupdate/resource-manager/Microsoft.DeviceUpdate/preview/2020-03-01-preview/examples/Accounts/Accounts_Create.json index 8e8f0b68712d..5d0b60514caa 100644 --- a/specification/deviceupdate/resource-manager/Microsoft.DeviceUpdate/preview/2020-03-01-preview/examples/Accounts/Accounts_Create.json +++ b/specification/deviceupdate/resource-manager/Microsoft.DeviceUpdate/preview/2020-03-01-preview/examples/Accounts/Accounts_Create.json @@ -5,7 +5,7 @@ "accountName": "contoso", "api-version": "2020-03-01-preview", "Account": { - "location": "West US 2", + "location": "westus2", "properties": {} } }, diff --git a/specification/deviceupdate/resource-manager/Microsoft.DeviceUpdate/preview/2020-03-01-preview/examples/Accounts/Accounts_Head.json b/specification/deviceupdate/resource-manager/Microsoft.DeviceUpdate/preview/2020-03-01-preview/examples/Accounts/Accounts_Head.json new file mode 100644 index 000000000000..14bb29d556e0 --- /dev/null +++ b/specification/deviceupdate/resource-manager/Microsoft.DeviceUpdate/preview/2020-03-01-preview/examples/Accounts/Accounts_Head.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "test-rg", + "accountName": "contoso", + "api-version": "2020-03-01-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/deviceupdate/resource-manager/Microsoft.DeviceUpdate/preview/2020-03-01-preview/examples/Accounts/Accounts_Update.json b/specification/deviceupdate/resource-manager/Microsoft.DeviceUpdate/preview/2020-03-01-preview/examples/Accounts/Accounts_Update.json index 917c1de425ad..77f0bb4de3c4 100644 --- a/specification/deviceupdate/resource-manager/Microsoft.DeviceUpdate/preview/2020-03-01-preview/examples/Accounts/Accounts_Update.json +++ b/specification/deviceupdate/resource-manager/Microsoft.DeviceUpdate/preview/2020-03-01-preview/examples/Accounts/Accounts_Update.json @@ -25,6 +25,23 @@ "tagKey": "tagValue" } } + }, + "201": { + "body": { + "name": "contoso", + "location": "westus2", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test-rg/providers/Microsoft.DeviceUpdate/accounts/contoso", + "type": "Microsoft.DeviceUpdate/accounts", + "identity": { + "principalId": "00000000-0000-0000-0000-000000000000", + "tenantId": "00000000-0000-0000-0000-000000000000", + "type": "SystemAssigned" + }, + "properties": { + "provisioningState": "Created", + "hostName": "contoso.api.adu.microsoft.com" + } + } } } } diff --git a/specification/deviceupdate/resource-manager/Microsoft.DeviceUpdate/preview/2020-03-01-preview/examples/CheckNameAvailability_AlreadyExists.json b/specification/deviceupdate/resource-manager/Microsoft.DeviceUpdate/preview/2020-03-01-preview/examples/CheckNameAvailability_AlreadyExists.json new file mode 100644 index 000000000000..27c0f55a4d19 --- /dev/null +++ b/specification/deviceupdate/resource-manager/Microsoft.DeviceUpdate/preview/2020-03-01-preview/examples/CheckNameAvailability_AlreadyExists.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2020-03-01-preview", + "request": { + "name": "contoso", + "type": "Microsoft.DeviceUpdate/accounts" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": false, + "reason": "AlreadyExists", + "message": "Resource name already exists" + } + } + } +} diff --git a/specification/deviceupdate/resource-manager/Microsoft.DeviceUpdate/preview/2020-03-01-preview/examples/CheckNameAvailability_Available.json b/specification/deviceupdate/resource-manager/Microsoft.DeviceUpdate/preview/2020-03-01-preview/examples/CheckNameAvailability_Available.json new file mode 100644 index 000000000000..29e72b4b29a3 --- /dev/null +++ b/specification/deviceupdate/resource-manager/Microsoft.DeviceUpdate/preview/2020-03-01-preview/examples/CheckNameAvailability_Available.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2020-03-01-preview", + "request": { + "name": "contoso", + "type": "Microsoft.DeviceUpdate/accounts" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": true + } + } + } +} diff --git a/specification/deviceupdate/resource-manager/Microsoft.DeviceUpdate/preview/2020-03-01-preview/examples/Instances/Instances_Create.json b/specification/deviceupdate/resource-manager/Microsoft.DeviceUpdate/preview/2020-03-01-preview/examples/Instances/Instances_Create.json index 32f7fe111527..dc732514328b 100644 --- a/specification/deviceupdate/resource-manager/Microsoft.DeviceUpdate/preview/2020-03-01-preview/examples/Instances/Instances_Create.json +++ b/specification/deviceupdate/resource-manager/Microsoft.DeviceUpdate/preview/2020-03-01-preview/examples/Instances/Instances_Create.json @@ -6,7 +6,7 @@ "instanceName": "blue", "api-version": "2020-03-01-preview", "Instance": { - "location": "West US 2", + "location": "westus2", "properties": { "iotHubs": [ { @@ -14,7 +14,8 @@ "ioTHubConnectionString": "string", "eventHubConnectionString": "string" } - ] + ], + "enableDiagnostics": false } } }, @@ -22,7 +23,7 @@ "201": { "body": { "name": "blue", - "location": "West US 2", + "location": "westus2", "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test-rg/providers/Microsoft.DeviceUpdate/accounts/contoso/instances/blue", "type": "Microsoft.DeviceUpdate/accounts/instances", "properties": { @@ -32,7 +33,8 @@ { "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test-rg/providers/Microsoft.Devices/IotHubs/blue-contoso-hub" } - ] + ], + "enableDiagnostics": false } } } diff --git a/specification/deviceupdate/resource-manager/Microsoft.DeviceUpdate/preview/2020-03-01-preview/examples/Instances/Instances_Get.json b/specification/deviceupdate/resource-manager/Microsoft.DeviceUpdate/preview/2020-03-01-preview/examples/Instances/Instances_Get.json index 1f354395ae9e..23b2706d98a3 100644 --- a/specification/deviceupdate/resource-manager/Microsoft.DeviceUpdate/preview/2020-03-01-preview/examples/Instances/Instances_Get.json +++ b/specification/deviceupdate/resource-manager/Microsoft.DeviceUpdate/preview/2020-03-01-preview/examples/Instances/Instances_Get.json @@ -20,7 +20,8 @@ { "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test-rg/providers/Microsoft.Devices/IotHubs/blue-contoso-hub" } - ] + ], + "enableDiagnostics": false } } } diff --git a/specification/deviceupdate/resource-manager/Microsoft.DeviceUpdate/preview/2020-03-01-preview/examples/Instances/Instances_Head.json b/specification/deviceupdate/resource-manager/Microsoft.DeviceUpdate/preview/2020-03-01-preview/examples/Instances/Instances_Head.json new file mode 100644 index 000000000000..d71a6b02afc8 --- /dev/null +++ b/specification/deviceupdate/resource-manager/Microsoft.DeviceUpdate/preview/2020-03-01-preview/examples/Instances/Instances_Head.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "test-rg", + "accountName": "contoso", + "instanceName": "blue", + "api-version": "2020-03-01-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/deviceupdate/resource-manager/Microsoft.DeviceUpdate/preview/2020-03-01-preview/examples/Instances/Instances_ListByAccount.json b/specification/deviceupdate/resource-manager/Microsoft.DeviceUpdate/preview/2020-03-01-preview/examples/Instances/Instances_ListByAccount.json index eac2d6134f84..162edb2678ee 100644 --- a/specification/deviceupdate/resource-manager/Microsoft.DeviceUpdate/preview/2020-03-01-preview/examples/Instances/Instances_ListByAccount.json +++ b/specification/deviceupdate/resource-manager/Microsoft.DeviceUpdate/preview/2020-03-01-preview/examples/Instances/Instances_ListByAccount.json @@ -22,7 +22,8 @@ { "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test-rg/providers/Microsoft.Devices/IotHubs/blue-contoso-hub" } - ] + ], + "enableDiagnostics": false } }, { @@ -37,7 +38,8 @@ { "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test-rg/providers/Microsoft.Devices/IotHubs/red-contoso-hub" } - ] + ], + "enableDiagnostics": false } } ] diff --git a/specification/deviceupdate/resource-manager/Microsoft.DeviceUpdate/preview/2020-03-01-preview/examples/Instances/Instances_Update.json b/specification/deviceupdate/resource-manager/Microsoft.DeviceUpdate/preview/2020-03-01-preview/examples/Instances/Instances_Update.json index a431fd26a2db..850030cfa1c0 100644 --- a/specification/deviceupdate/resource-manager/Microsoft.DeviceUpdate/preview/2020-03-01-preview/examples/Instances/Instances_Update.json +++ b/specification/deviceupdate/resource-manager/Microsoft.DeviceUpdate/preview/2020-03-01-preview/examples/Instances/Instances_Update.json @@ -24,7 +24,8 @@ { "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test-rg/providers/Microsoft.Devices/IotHubs/blue-contoso-hub" } - ] + ], + "enableDiagnostics": false }, "tags": { "tagKey": "tagValue" diff --git a/specification/deviceupdate/resource-manager/readme.go.md b/specification/deviceupdate/resource-manager/readme.go.md index 0690dd2d89ee..1cd6ddaed47b 100644 --- a/specification/deviceupdate/resource-manager/readme.go.md +++ b/specification/deviceupdate/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ```yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION clear-output-folder: true ``` diff --git a/specification/devops/resource-manager/readme.azureresourceschema.md b/specification/devops/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 306aa14f7664..000000000000 --- a/specification/devops/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,36 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-devops-2020-07-13-preview - - tag: schema-devops-2019-07-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-devops-2020-07-13-preview and azureresourceschema - -``` yaml $(tag) == 'schema-devops-2020-07-13-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DevOps/preview/2020-07-13-preview/devops.json - -``` - -### Tag: schema-devops-2019-07-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-devops-2019-07-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DevOps/preview/2019-07-01-preview/devops.json - -``` diff --git a/specification/devops/resource-manager/readme.go.md b/specification/devops/resource-manager/readme.go.md index b58fcf33e7d4..5df7fd69dbb3 100644 --- a/specification/devops/resource-manager/readme.go.md +++ b/specification/devops/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ```yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: devops clear-output-folder: true ``` diff --git a/specification/devops/resource-manager/readme.md b/specification/devops/resource-manager/readme.md index ba2d26e1cde6..46a867732e9e 100644 --- a/specification/devops/resource-manager/readme.md +++ b/specification/devops/resource-manager/readme.md @@ -69,8 +69,6 @@ swagger-to-sdk: - bundle install && rake arm:regen_all_profiles['azure_mgmt_devops'] - repo: azure-cli-extensions - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js devops/resource-manager ``` ## Go @@ -93,9 +91,7 @@ See configuration in [readme.typescript.md](./readme.typescript.md) See configuration in [readme.csharp.md](./readme.csharp.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) ## Terraform diff --git a/specification/devspaces/resource-manager/readme.azureresourceschema.md b/specification/devspaces/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 30adf4995497..000000000000 --- a/specification/devspaces/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,24 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-devspaces-2019-04-01 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-devspaces-2019-04-01 and azureresourceschema - -``` yaml $(tag) == 'schema-devspaces-2019-04-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DevSpaces/stable/2019-04-01/devspaces.json - -``` diff --git a/specification/devspaces/resource-manager/readme.go.md b/specification/devspaces/resource-manager/readme.go.md index 3bf8fa8f5bbb..44884ee77d73 100644 --- a/specification/devspaces/resource-manager/readme.go.md +++ b/specification/devspaces/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: devspaces clear-output-folder: true ``` diff --git a/specification/devspaces/resource-manager/readme.md b/specification/devspaces/resource-manager/readme.md index 6444496e7006..4fddb464b767 100644 --- a/specification/devspaces/resource-manager/readme.md +++ b/specification/devspaces/resource-manager/readme.md @@ -52,12 +52,10 @@ This is not used by Autorest itself. swagger-to-sdk: - repo: azure-sdk-for-net - repo: azure-sdk-for-java - - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-js - repo: azure-sdk-for-node - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js devspaces/resource-manager ``` ## C# @@ -114,9 +112,7 @@ regenerate-manager: true generate-interface: true ``` -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) ## Suppression ``` yaml diff --git a/specification/devspaces/resource-manager/readme.python.md b/specification/devspaces/resource-manager/readme.python.md index 2b0dee172cf2..4d5bf34d4c82 100644 --- a/specification/devspaces/resource-manager/readme.python.md +++ b/specification/devspaces/resource-manager/readme.python.md @@ -4,24 +4,27 @@ 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.devspaces - package-name: azure-mgmt-devspaces - package-version: 0.2.0 - clear-output-folder: true +``` yaml $(python) && $(track2) +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +package-name: azure-mgmt-devspaces +no-namespace-folders: true +package-version: 1.0.0b1 +clear-output-folder: true ``` -``` yaml $(python) && $(python-mode) == 'update' -python: - no-namespace-folders: true - output-folder: $(python-sdks-folder)/aks/azure-mgmt-devspaces/azure/mgmt/devspaces +``` yaml $(python) && $(python-mode) == 'update' && $(track2) +no-namespace-folders: true +output-folder: $(python-sdks-folder)/aks/azure-mgmt-devspaces/azure/mgmt/devspaces ``` -``` yaml $(python) && $(python-mode) == 'create' -python: - basic-setup-py: true - output-folder: $(python-sdks-folder)/aks/azure-mgmt-devspaces +``` yaml $(python) && $(python-mode) == 'create' && $(track2) +basic-setup-py: true +output-folder: $(python-sdks-folder)/aks/azure-mgmt-devspaces +``` + +``` yaml $(python) && $(track2) +directive: + - from: swagger-document + where: $.definitions.OrchestratorSpecificConnectionDetails + transform: > + $['required'] = ['instanceType']; ``` diff --git a/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/DTL.json b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/DTL.json index 5a0c33a47a1b..6bf4586940af 100644 --- a/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/DTL.json +++ b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/DTL.json @@ -10281,6 +10281,7 @@ }, "labStorageType": { "description": "Type of storage used by the lab. It can be either Premium or Standard. Default is Premium.", + "default": "Premium", "enum": [ "Standard", "Premium", @@ -10575,11 +10576,13 @@ }, "password": { "description": "The password of the virtual machine administrator.", - "type": "string" + "type": "string", + "x-ms-secret": true }, "sshKey": { "description": "The SSH key of the virtual machine administrator.", - "type": "string" + "type": "string", + "x-ms-secret": true }, "isAuthenticationWithSshKey": { "description": "Indicates whether this virtual machine uses an SSH key for authentication.", @@ -10629,6 +10632,7 @@ }, "storageType": { "description": "Storage type to use for virtual machine (i.e. Standard, Premium).", + "default": "labStorageType", "type": "string" }, "environmentId": { @@ -10739,11 +10743,13 @@ }, "password": { "description": "The password of the virtual machine administrator.", - "type": "string" + "type": "string", + "x-ms-secret": true }, "sshKey": { "description": "The SSH key of the virtual machine administrator.", - "type": "string" + "type": "string", + "x-ms-secret": true }, "isAuthenticationWithSshKey": { "description": "Indicates whether this virtual machine uses an SSH key for authentication.", @@ -10813,6 +10819,7 @@ }, "storageType": { "description": "Storage type to use for virtual machine (i.e. Standard, Premium).", + "default": "labStorageType", "type": "string" }, "virtualMachineCreationSource": { @@ -11042,6 +11049,7 @@ "properties": { "status": { "description": "If notifications are enabled for this schedule (i.e. Enabled, Disabled).", + "default": "Disabled", "enum": [ "Enabled", "Disabled" @@ -11565,7 +11573,8 @@ }, "location": { "description": "The location of the new virtual machine or environment", - "type": "string" + "type": "string", + "readOnly": true }, "tags": { "description": "The tags of the resource.", @@ -11587,6 +11596,7 @@ "properties": { "status": { "description": "The status of the schedule (i.e. Enabled, Disabled)", + "default": "Disabled", "enum": [ "Enabled", "Disabled" @@ -11665,6 +11675,7 @@ "properties": { "status": { "description": "The status of the schedule (i.e. Enabled, Disabled)", + "default": "Disabled", "enum": [ "Enabled", "Disabled" diff --git a/specification/devtestlabs/resource-manager/readme.azureresourceschema.md b/specification/devtestlabs/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index aac574024db7..000000000000 --- a/specification/devtestlabs/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,48 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-devtestlab-2018-09-15 - - tag: schema-devtestlab-2016-05-15 - - tag: schema-devtestlab-2015-05-21-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-devtestlab-2018-09-15 and azureresourceschema - -``` yaml $(tag) == 'schema-devtestlab-2018-09-15' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DevTestLab/stable/2018-09-15/DTL.json - -``` - -### Tag: schema-devtestlab-2016-05-15 and azureresourceschema - -``` yaml $(tag) == 'schema-devtestlab-2016-05-15' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DevTestLab/stable/2016-05-15/DTL.json - -``` - -### Tag: schema-devtestlab-2015-05-21-preview and azureresourceschema - -``` yaml $(tag) == 'schema-devtestlab-2015-05-21-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DevTestLab/preview/2015-05-21-preview/DTL.json - -``` diff --git a/specification/devtestlabs/resource-manager/readme.go.md b/specification/devtestlabs/resource-manager/readme.go.md index a8e7bc728d5d..153499536442 100644 --- a/specification/devtestlabs/resource-manager/readme.go.md +++ b/specification/devtestlabs/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: dtl clear-output-folder: true ``` diff --git a/specification/devtestlabs/resource-manager/readme.md b/specification/devtestlabs/resource-manager/readme.md index a230a27c8ec3..3bf59118d021 100644 --- a/specification/devtestlabs/resource-manager/readme.md +++ b/specification/devtestlabs/resource-manager/readme.md @@ -80,8 +80,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_devtestlabs'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js devtestlabs/resource-manager ``` @@ -111,7 +109,5 @@ See configuration in [readme.go.md](./readme.go.md) See configuration in [readme.java.md](./readme.java.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/dfp/resource-manager/Microsoft.Dynamics365Fraudprotection/preview/2021-02-01-preview/dfp.json b/specification/dfp/resource-manager/Microsoft.Dynamics365Fraudprotection/preview/2021-02-01-preview/dfp.json new file mode 100644 index 000000000000..756b85b1c70e --- /dev/null +++ b/specification/dfp/resource-manager/Microsoft.Dynamics365Fraudprotection/preview/2021-02-01-preview/dfp.json @@ -0,0 +1,665 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-01-preview", + "title": "DFP", + "description": "DFP Web API provides a RESTful set of web services that enables users to create, retrieve, update, and delete DFP instances", + "x-ms-code-generation-settings": { + "name": "DFPManagementClient" + } + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://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.Dynamics365FraudProtection/instances/{instanceName}": { + "get": { + "description": "Gets details about the specified instances.", + "x-ms-examples": { + "Get details of an instance": { + "$ref": "./examples/getInstance.json" + } + }, + "tags": [ + "Instances" + ], + "operationId": "Instances_GetDetails", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "instanceName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-z][a-z0-9]*$", + "minLength": 3, + "maxLength": 63, + "description": "The name of the instance. It must be a minimum of 3 characters, and a maximum of 63." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK. The operation was successful.", + "schema": { + "$ref": "#/definitions/DFPInstance" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "description": "Provisions the specified DFP instance based on the configuration specified in the request.", + "x-ms-examples": { + "Create instance": { + "$ref": "./examples/createInstance.json" + } + }, + "tags": [ + "Instances" + ], + "operationId": "Instances_Create", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "instanceName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-z][a-z0-9]*$", + "minLength": 3, + "maxLength": 63, + "description": "The name of the DFP instances. It must be a minimum of 3 characters, and a maximum of 63." + }, + { + "name": "instanceParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DFPInstance" + }, + "description": "Contains the information used to provision the DFP instance." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK. The operation completed successfully.", + "schema": { + "$ref": "#/definitions/DFPInstance" + } + }, + "201": { + "description": "InProgress. The resource will be created asynchronously.", + "schema": { + "$ref": "#/definitions/DFPInstance" + } + }, + "202": { + "description": "InProgress. Accepted. The resource will be updated asynchronously.", + "schema": { + "$ref": "#/definitions/DFPInstance" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "description": "Deletes the specified DFP instance.", + "x-ms-examples": { + "Get details of an instance": { + "$ref": "./examples/deleteInstance.json" + } + }, + "tags": [ + "Instances" + ], + "operationId": "Instances_Delete", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "instanceName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-z][a-z0-9]*$", + "minLength": 3, + "maxLength": 63, + "description": "The name of the DFP instance. It must be at least 3 characters in length, and no more than 63." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "202": { + "description": "Accepted. The resource will be deleted asynchronously." + }, + "204": { + "description": "No Content." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "description": "Updates the current state of the specified DFP instance.", + "x-ms-examples": { + "Update instance parameters": { + "$ref": "./examples/updateInstance.json" + } + }, + "tags": [ + "Instances" + ], + "operationId": "Instances_Update", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "instanceName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-z][a-z0-9]*$", + "minLength": 3, + "maxLength": 63, + "description": "The name of the DFP instance. It must be at least 3 characters in length, and no more than 63." + }, + { + "name": "instanceUpdateParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DFPInstanceUpdateParameters" + }, + "description": "Request object that contains the updated information for the instance." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DFPInstance" + } + }, + "202": { + "description": "Accepted. The resource will be updated asynchronously.", + "schema": { + "$ref": "#/definitions/DFPInstance" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.Dynamics365FraudProtection/operations": { + "get": { + "tags": [ + "Operations" + ], + "operationId": "ListOperations", + "description": "Lists all of the available DFP REST API operations.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get a list of operations supported by Microsoft.Dynamics365FraudProtection resource provider": { + "$ref": "./examples/ListOperations.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Dynamics365FraudProtection/instances": { + "get": { + "description": "Gets all the Dedicated instance for the given resource group.", + "x-ms-examples": { + "List DFP instances in resource group": { + "$ref": "./examples/listInstancesInResourceGroup.json" + } + }, + "tags": [ + "Instances" + ], + "operationId": "Instances_ListByResourceGroup", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DFPInstances" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Dynamics365FraudProtection/instances": { + "get": { + "description": "Lists all the Dedicated instances for the given subscription.", + "x-ms-examples": { + "Get details of a instance": { + "$ref": "./examples/listInstancesInSubscription.json" + } + }, + "tags": [ + "Instances" + ], + "operationId": "Instances_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DFPInstances" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Dynamics365FraudProtection/locations/{location}/checkNameAvailability": { + "post": { + "x-ms-examples": { + "Check name availability of an instance": { + "$ref": "./examples/checkNameAvailability.json" + } + }, + "tags": [ + "Instances" + ], + "operationId": "Instances_CheckNameAvailability", + "description": "Check the name availability in the target location.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The region name which the operation will lookup into." + }, + { + "name": "instanceParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CheckInstanceNameAvailabilityParameters" + }, + "description": "The name of the instance." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/CheckInstanceNameAvailabilityResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "OperationDisplayValue": { + "properties": { + "operation": { + "type": "string", + "readOnly": true, + "description": "Friendly name of the operation." + }, + "resource": { + "type": "string", + "readOnly": true, + "description": "Friendly name of the resource type the operation applies to." + }, + "description": { + "type": "string", + "readOnly": true, + "description": "Friendly description of the operation." + }, + "provider": { + "type": "string", + "readOnly": true, + "description": "Friendly name of the resource provider." + } + }, + "description": "Display information of an operation." + }, + "DFPInstance": { + "description": "Represents an instance of a DFP instance resource.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DFPInstanceProperties", + "description": "Properties of the provision operation request." + }, + "location": { + "type": "string", + "description": "Location of the DFP resource." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Key-value pairs of additional resource provisioning properties." + }, + "systemData": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData", + "description": "Metadata pertaining to creation and last modification of the resource.", + "readOnly": true + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/Resource" + } + ], + "required": [ + "location" + ], + "x-ms-azure-resource": true + }, + "DFPInstances": { + "description": "An array of DFP instance resources.", + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DFPInstance" + }, + "description": "An array of DFP instance resources." + }, + "nextLink": { + "description": "URL to get the next set of operation list results if there are any.", + "type": "string", + "readOnly": true + } + }, + "required": [ + "value" + ] + }, + "DFPInstanceUpdateParameters": { + "description": "Provision request specification", + "type": "object", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Key-value pairs of additional provisioning properties." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DFPInstanceMutableProperties", + "description": "Properties of the provision operation request" + } + } + }, + "DFPInstanceProperties": { + "description": "Properties of DFP resource.", + "type": "object", + "properties": { + "provisioningState": { + "type": "string", + "enum": [ + "Deleting", + "Succeeded", + "Failed", + "Paused", + "Suspended", + "Provisioning", + "Updating", + "Suspending", + "Pausing", + "Resuming", + "Preparing", + "Scaling" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + }, + "readOnly": true, + "description": "The current deployment state of DFP resource. The provisioningState is to indicate states for resource provisioning." + } + }, + "allOf": [ + { + "$ref": "#/definitions/DFPInstanceMutableProperties" + } + ] + }, + "DFPInstanceMutableProperties": { + "description": "An object that represents a set of mutable DFP resource properties.", + "type": "object", + "properties": { + "administration": { + "$ref": "#/definitions/DFPInstanceAdministrators", + "description": "A collection of DFP instance administrators" + } + } + }, + "DFPInstanceAdministrators": { + "description": "An array of administrator user identities", + "type": "object", + "properties": { + "members": { + "type": "array", + "items": { + "type": "string", + "description": "The UPN of the user. For example: johnsmith@contoso.com." + }, + "description": "An array of administrator user identities." + } + } + }, + "CheckInstanceNameAvailabilityParameters": { + "description": "Details of DFP instance name request body.", + "type": "object", + "properties": { + "name": { + "type": "string", + "pattern": "^[a-z][a-z0-9]*$", + "minLength": 3, + "maxLength": 63, + "description": "Name for checking availability." + }, + "type": { + "type": "string", + "default": "Microsoft.Dynamics365FraudProtection/instances", + "description": "The resource type of DFP instance." + } + } + }, + "CheckInstanceNameAvailabilityResult": { + "description": "The checking result of DFP instance name availability.", + "type": "object", + "properties": { + "nameAvailable": { + "type": "boolean", + "description": "Indicator of availability of the DFP instance name." + }, + "reason": { + "type": "string", + "description": "The reason of unavailability." + }, + "message": { + "type": "string", + "description": "The detailed message of the request unavailability." + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "A unique identifier for 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": "The client API version." + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90, + "x-ms-parameter-location": "method", + "description": "The name of the Azure Resource group of which a given DFP instance is part. This name must be at least 1 character in length, and no more than 90." + } + } +} diff --git a/specification/dfp/resource-manager/Microsoft.Dynamics365Fraudprotection/preview/2021-02-01-preview/examples/ListOperations.json b/specification/dfp/resource-manager/Microsoft.Dynamics365Fraudprotection/preview/2021-02-01-preview/examples/ListOperations.json new file mode 100644 index 000000000000..10c3a5c90a1e --- /dev/null +++ b/specification/dfp/resource-manager/Microsoft.Dynamics365Fraudprotection/preview/2021-02-01-preview/examples/ListOperations.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Dynamics365Fraudprotection/instances/write", + "display": { + "provider": "Microsoft Dfp", + "resource": "Dynamic Fraud Protection", + "operation": "Create/Update Dfp instance", + "description": "Creates a DFP instance with the specified parameters or update the properties or tags." + } + }, + { + "name": "Microsoft.Dynamics365Fraudprotection/instances/delete", + "display": { + "provider": "Microsoft Dfp", + "resource": "Dynamic Fraud Protection", + "operation": "Delete Dfp instance", + "description": "Deletes an existing Dfp instance." + } + }, + { + "name": "Microsoft.Dynamics365Fraudprotection/checknameavailability/action", + "display": { + "provider": "Microsoft Dfp", + "resource": "Name Availability", + "operation": "Check Name Availability", + "description": "Checks that DFP name is valid and is not in use." + } + }, + { + "name": "Microsoft.Dynamics365Fraudprotection/instances/read", + "display": { + "provider": "Microsoft Dfp", + "resource": "Dynamic Fraud Protection", + "operation": "List/Get Dynamic Fraud Protection instance(s)", + "description": "Returns the list of Dynamic Fraud Protection instances or gets the properties for the specified Dynamic Fraud Protection instance." + } + } + ] + } + } + } +} diff --git a/specification/dfp/resource-manager/Microsoft.Dynamics365Fraudprotection/preview/2021-02-01-preview/examples/checkNameAvailability.json b/specification/dfp/resource-manager/Microsoft.Dynamics365Fraudprotection/preview/2021-02-01-preview/examples/checkNameAvailability.json new file mode 100644 index 000000000000..a0f5a7061efe --- /dev/null +++ b/specification/dfp/resource-manager/Microsoft.Dynamics365Fraudprotection/preview/2021-02-01-preview/examples/checkNameAvailability.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "613192d7-503f-477a-9cfe-4efc3ee2bd60", + "location": "West US", + "instanceParameters": { + "name": "azsdktest", + "type": "Microsoft.Dynamics365Fraudprotection/instances" + }, + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "nameAvailable": true + } + } + } +} diff --git a/specification/dfp/resource-manager/Microsoft.Dynamics365Fraudprotection/preview/2021-02-01-preview/examples/createInstance.json b/specification/dfp/resource-manager/Microsoft.Dynamics365Fraudprotection/preview/2021-02-01-preview/examples/createInstance.json new file mode 100644 index 000000000000..becdec728a28 --- /dev/null +++ b/specification/dfp/resource-manager/Microsoft.Dynamics365Fraudprotection/preview/2021-02-01-preview/examples/createInstance.json @@ -0,0 +1,87 @@ +{ + "parameters": { + "subscriptionId": "613192d7-503f-477a-9cfe-4efc3ee2bd60", + "resourceGroupName": "TestRG", + "instanceName": "azsdktest", + "api-version": "2021-02-01-preview", + "instanceParameters": { + "tags": { + "testKey": "testValue" + }, + "location": "West US", + "properties": { + "administration": { + "members": [ + "azsdktest@microsoft.com", + "azsdktest2@microsoft.com" + ] + } + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/613192d7-503f-477a-9cfe-4efc3ee2bd60/resourceGroups/TestRG/providers/Microsoft.Dynamics365Fraudprotection/instances/azsdktest", + "type": "Microsoft.Dynamics365Fraudprotection/instances", + "location": "West US", + "name": "azsdktest", + "properties": { + "administration": { + "members": [ + "azsdktest@microsoft.com", + "azsdktest2@microsoft.com" + ] + }, + "provisioningState": "Provisioning" + }, + "tags": { + "testKey": "testValue" + } + } + }, + "201": { + "headers": {}, + "body": { + "id": "/subscriptions/613192d7-503f-477a-9cfe-4efc3ee2bd60/resourceGroups/TestRG/providers/Microsoft.Dynamics365Fraudprotection/instances/azsdktest", + "type": "Microsoft.Dynamics365Fraudprotection/instances", + "location": "West US", + "name": "azsdktest", + "properties": { + "administration": { + "members": [ + "azsdktest@microsoft.com", + "azsdktest2@microsoft.com" + ] + }, + "provisioningState": "Provisioning" + }, + "tags": { + "testKey": "testValue" + } + } + }, + "202": { + "headers": {}, + "body": { + "id": "/subscriptions/613192d7-503f-477a-9cfe-4efc3ee2bd60/resourceGroups/TestRG/providers/Microsoft.Dynamics365Fraudprotection/instances/azsdktest", + "type": "Microsoft.Dynamics365Fraudprotection/instances", + "location": "West US", + "name": "azsdktest", + "properties": { + "administration": { + "members": [ + "azsdktest@microsoft.com", + "azsdktest2@microsoft.com" + ] + }, + "provisioningState": "Provisioning" + }, + "tags": { + "testKey": "testValue" + } + } + } + } +} diff --git a/specification/dfp/resource-manager/Microsoft.Dynamics365Fraudprotection/preview/2021-02-01-preview/examples/deleteInstance.json b/specification/dfp/resource-manager/Microsoft.Dynamics365Fraudprotection/preview/2021-02-01-preview/examples/deleteInstance.json new file mode 100644 index 000000000000..cc4eb50a1f92 --- /dev/null +++ b/specification/dfp/resource-manager/Microsoft.Dynamics365Fraudprotection/preview/2021-02-01-preview/examples/deleteInstance.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "613192d7-503f-477a-9cfe-4efc3ee2bd60", + "resourceGroupName": "TestRG", + "instanceName": "azsdktest", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "description": "OK." + }, + "202": { + "headers": {}, + "description": "Accepted." + }, + "204": { + "headers": {} + } + } +} diff --git a/specification/dfp/resource-manager/Microsoft.Dynamics365Fraudprotection/preview/2021-02-01-preview/examples/getInstance.json b/specification/dfp/resource-manager/Microsoft.Dynamics365Fraudprotection/preview/2021-02-01-preview/examples/getInstance.json new file mode 100644 index 000000000000..6a38bd20e500 --- /dev/null +++ b/specification/dfp/resource-manager/Microsoft.Dynamics365Fraudprotection/preview/2021-02-01-preview/examples/getInstance.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "613192d7-503f-477a-9cfe-4efc3ee2bd60", + "resourceGroupName": "TestRG", + "instanceName": "azsdktest", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/613192d7-503f-477a-9cfe-4efc3ee2bd60/resourceGroups/TestRG/providers/Microsoft.Dynamics365Fraudprotection/instances/azsdktest", + "location": "West US", + "name": "azsdktest", + "type": "Microsoft.Dynamics365Fraudprotection/instances", + "properties": { + "administration": { + "members": [ + "azsdktest@microsoft.com" + ] + }, + "provisioningState": "Provisioning" + }, + "tags": {} + } + } + } +} diff --git a/specification/dfp/resource-manager/Microsoft.Dynamics365Fraudprotection/preview/2021-02-01-preview/examples/listInstancesInResourceGroup.json b/specification/dfp/resource-manager/Microsoft.Dynamics365Fraudprotection/preview/2021-02-01-preview/examples/listInstancesInResourceGroup.json new file mode 100644 index 000000000000..141926853a17 --- /dev/null +++ b/specification/dfp/resource-manager/Microsoft.Dynamics365Fraudprotection/preview/2021-02-01-preview/examples/listInstancesInResourceGroup.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "613192d7-503f-477a-9cfe-4efc3ee2bd60", + "resourceGroupName": "TestRG", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/subscriptions/613192d7-503f-477a-9cfe-4efc3ee2bd60/resourceGroups/TestRG/providers/Microsoft.Dynamics365Fraudprotection/instances/azsdktest", + "location": "West US", + "name": "azsdktest", + "type": "Microsoft.Dynamics365Fraudprotection/instances", + "properties": { + "administration": { + "members": [ + "azsdktest@microsoft.com" + ] + }, + "provisioningState": "Provisioning" + }, + "tags": { + "testKey": "testValue" + } + }, + { + "id": "/subscriptions/613192d7-503f-477a-9cfe-4efc3ee2bd60/resourceGroups/TestRG/providers/Microsoft.Dynamics365Fraudprotection/instances/azsdktest2", + "location": "West US", + "name": "azsdktest2", + "type": "Microsoft.Dynamics365Fraudprotection/instances", + "properties": { + "administration": { + "members": [ + "azsdktest2@microsoft.com" + ] + }, + "provisioningState": "Provisioning" + }, + "tags": { + "testKey": "testValue" + } + } + ] + } + } + } +} diff --git a/specification/dfp/resource-manager/Microsoft.Dynamics365Fraudprotection/preview/2021-02-01-preview/examples/listInstancesInSubscription.json b/specification/dfp/resource-manager/Microsoft.Dynamics365Fraudprotection/preview/2021-02-01-preview/examples/listInstancesInSubscription.json new file mode 100644 index 000000000000..d8af722fb2fe --- /dev/null +++ b/specification/dfp/resource-manager/Microsoft.Dynamics365Fraudprotection/preview/2021-02-01-preview/examples/listInstancesInSubscription.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "613192d7-503f-477a-9cfe-4efc3ee2bd60", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/subscriptions/613192d7-503f-477a-9cfe-4efc3ee2bd60/providers/Microsoft.Dynamics365Fraudprotection/instances/azsdktest", + "location": "West US", + "name": "azsdktest", + "type": "Microsoft.Dynamics365Fraudprotection/instances", + "properties": { + "administration": { + "members": [ + "azsdktest@microsoft.com" + ] + }, + "provisioningState": "Provisioning" + }, + "tags": { + "testKey": "testValue" + } + }, + { + "id": "/subscriptions/613192d7-503f-477a-9cfe-4efc3ee2bd60/providers/Microsoft.Dynamics365Fraudprotection/instances/azsdktest2", + "location": "West US", + "name": "azsdktest2", + "type": "Microsoft.Dynamics365Fraudprotection/instances", + "properties": { + "administration": { + "members": [ + "azsdktest2@microsoft.com" + ] + }, + "provisioningState": "Provisioning" + }, + "tags": { + "testKey": "testValue" + } + } + ] + } + } + } +} diff --git a/specification/dfp/resource-manager/Microsoft.Dynamics365Fraudprotection/preview/2021-02-01-preview/examples/updateInstance.json b/specification/dfp/resource-manager/Microsoft.Dynamics365Fraudprotection/preview/2021-02-01-preview/examples/updateInstance.json new file mode 100644 index 000000000000..6ce2ce1c2416 --- /dev/null +++ b/specification/dfp/resource-manager/Microsoft.Dynamics365Fraudprotection/preview/2021-02-01-preview/examples/updateInstance.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "subscriptionId": "613192d7-503f-477a-9cfe-4efc3ee2bd60", + "resourceGroupName": "TestRG", + "instanceName": "azsdktest", + "api-version": "2021-02-01-preview", + "instanceUpdateParameters": { + "tags": { + "testKey": "testValue" + }, + "properties": { + "administration": { + "members": [ + "azsdktest@microsoft.com", + "azsdktest2@microsoft.com" + ] + } + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/613192d7-503f-477a-9cfe-4efc3ee2bd60/resourceGroups/TestRG/providers/Microsoft.Dynamics365Fraudprotection/instances/azsdktest", + "location": "West US", + "name": "azsdktest", + "type": "Microsoft.Dynamics365Fraudprotection/instances", + "properties": { + "administration": { + "members": [ + "azsdktest@microsoft.com", + "azsdktest2@microsoft.com" + ] + }, + "provisioningState": "Provisioning" + }, + "tags": { + "testKey": "testValue" + } + } + }, + "202": { + "headers": {}, + "body": { + "id": "/subscriptions/613192d7-503f-477a-9cfe-4efc3ee2bd60/resourceGroups/TestRG/providers/Microsoft.Dynamics365Fraudprotection/instances/azsdktest", + "type": "Microsoft.Dynamics365Fraudprotection/instances", + "location": "West US", + "name": "azsdktest", + "properties": { + "administration": { + "members": [ + "azsdktest@microsoft.com", + "azsdktest2@microsoft.com" + ] + }, + "provisioningState": "Provisioning" + }, + "tags": { + "testKey": "testValue" + } + } + } + } +} diff --git a/specification/dfp/resource-manager/readme.az.md b/specification/dfp/resource-manager/readme.az.md new file mode 100644 index 000000000000..732f6ec8aa55 --- /dev/null +++ b/specification/dfp/resource-manager/readme.az.md @@ -0,0 +1,28 @@ +## AZ + +These settings apply only when `--az` is specified on the command line. + +For new Resource Provider. It is highly recommended to onboard Azure CLI extensions. There's no differences in terms of customer usage. + +``` yaml $(az) && $(target-mode) != 'core' +az: + extensions: dfp + namespace: azure.mgmt.dfp + package-name: azure-mgmt-dfp +az-output-folder: $(azure-cli-extension-folder)/src/dfp +python-sdk-output-folder: "$(az-output-folder)/azext_dfp/vendored_sdks/dfp" +# add additinal configuration here specific for Azure CLI +# refer to the faq.md for more details +``` + + + +This is for command modules that already in azure cli main repo. +``` yaml $(az) && $(target-mode) == 'core' +az: + extensions: dfp + namespace: azure.mgmt.dfp + package-name: azure-mgmt-dfp +az-output-folder: $(azure-cli-folder)/src/azure-cli/azure/cli/command_modules/dfp +python-sdk-output-folder: "$(az-output-folder)/vendored_sdks/dfp" +``` \ No newline at end of file diff --git a/specification/dfp/resource-manager/readme.cli.md b/specification/dfp/resource-manager/readme.cli.md new file mode 100644 index 000000000000..c6cf6ad37ea4 --- /dev/null +++ b/specification/dfp/resource-manager/readme.cli.md @@ -0,0 +1 @@ +## CLI Common Settings for all the command line tools \ No newline at end of file diff --git a/specification/dfp/resource-manager/readme.csharp.md b/specification/dfp/resource-manager/readme.csharp.md new file mode 100644 index 000000000000..7de79a7c0144 --- /dev/null +++ b/specification/dfp/resource-manager/readme.csharp.md @@ -0,0 +1,15 @@ +## C# + +These settings apply only when `--csharp` is specified on the command line. +Please also specify `--csharp-sdks-folder=`. + +```yaml $(csharp) +csharp: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 1 + clear-output-folder: true + client-side-validation: false + namespace: Microsoft.Dynamics365Fraudprotection + output-folder: $(csharp-sdks-folder)/dfp/management/Microsoft.Dynamics365Fraudprotection/GeneratedProtocol +``` diff --git a/specification/dfp/resource-manager/readme.go.md b/specification/dfp/resource-manager/readme.go.md new file mode 100644 index 000000000000..8db9da068b43 --- /dev/null +++ b/specification/dfp/resource-manager/readme.go.md @@ -0,0 +1,26 @@ +## Go + +These settings apply only when `--go` is specified on the command line. + +```yaml $(go) +go: + license-header: MICROSOFT_APACHE_NO_VERSION + namespace: dfp + clear-output-folder: true +``` + +### Go multi-api + +``` yaml $(go) && $(multiapi) +batch: + - tag: package-2021-02-01-preview +``` + +### Tag: package-2021-02-01-preview and go + +These settings apply only when `--tag=package-2021-02-01-preview --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +```yaml $(tag) == 'package-2021-02-01-preview' && $(go) +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2021-02-01-preview/$(namespace) +``` diff --git a/specification/dfp/resource-manager/readme.md b/specification/dfp/resource-manager/readme.md new file mode 100644 index 000000000000..f213f018b9c4 --- /dev/null +++ b/specification/dfp/resource-manager/readme.md @@ -0,0 +1,79 @@ +# dfp + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for dfp. + +## Getting Started + +To build the SDKs for My API, simply install AutoRest via `npm` (`npm install -g autorest`) and then run: + +> `autorest readme.md` + +To see additional help and options, run: + +> `autorest --help` + +For other options on installation see [Installing AutoRest](https://aka.ms/autorest/install) on the AutoRest github page. + +--- + +## Configuration + +### Basic Information + +These are the global settings for the dfp. + +```yaml +openapi-type: arm +tag: package-2021-02-01-preview +``` + +### Tag: package-2021-02-01-preview + +These settings apply only when `--tag=package-2021-02-01-preview` is specified on the command line. + +```yaml $(tag) == 'package-2021-02-01-preview' +input-file: + - Microsoft.Dynamics365Fraudprotection/preview/2021-02-01-preview/dfp.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-track2 + - repo: azure-sdk-for-java + - repo: azure-sdk-for-go + - repo: azure-sdk-for-js + - repo: azure-resource-manager-schemas + - repo: azure-cli-extensions +``` +## Az + +See configuration in [readme.az.md](./readme.az.md) + +## Go + +See configuration in [readme.go.md](./readme.go.md) + +## Python + +See configuration in [readme.python.md](./readme.python.md) + +## TypeScript + +See configuration in [readme.typescript.md](./readme.typescript.md) + +## CSharp + +See configuration in [readme.csharp.md](./readme.csharp.md) + + diff --git a/specification/dfp/resource-manager/readme.python.md b/specification/dfp/resource-manager/readme.python.md new file mode 100644 index 000000000000..e90a5c859097 --- /dev/null +++ b/specification/dfp/resource-manager/readme.python.md @@ -0,0 +1,21 @@ +## Python + +These settings apply only when `--python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(track2) +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +package-name: azure-mgmt-dfp +no-namespace-folders: true +package-version: 1.0.0b1 +``` + +``` yaml $(python-mode) == 'update' && $(track2) +no-namespace-folders: true +output-folder: $(python-sdks-folder)/dfp/azure-mgmt-dfp/azure/mgmt/dfp +``` + +``` yaml $(python-mode) == 'create' && $(track2) +basic-setup-py: true +output-folder: $(python-sdks-folder)/dfp/azure-mgmt-dfp \ No newline at end of file diff --git a/specification/dfp/resource-manager/readme.typescript.md b/specification/dfp/resource-manager/readme.typescript.md new file mode 100644 index 000000000000..7c430c0b0785 --- /dev/null +++ b/specification/dfp/resource-manager/readme.typescript.md @@ -0,0 +1,14 @@ +## TypeScript + +These settings apply only when `--typescript` is specified on the command line. +Please also specify `--typescript-sdks-folder=`. + +``` yaml $(typescript) +typescript: + azure-arm: true + package-name: "@azure/arm-dfp" + output-folder: "$(typescript-sdks-folder)/sdk/dfp/arm-dfp" + payload-flattening-threshold: 1 + clear-output-folder: true + generate-metadata: true +``` diff --git a/specification/digitaltwins/data-plane/readme.go.md b/specification/digitaltwins/data-plane/readme.go.md index 08bc85c17ad4..bb3bbacc8f46 100644 --- a/specification/digitaltwins/data-plane/readme.go.md +++ b/specification/digitaltwins/data-plane/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ```yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: digitaltwins clear-output-folder: true ``` diff --git a/specification/digitaltwins/resource-manager/readme.azureresourceschema.md b/specification/digitaltwins/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 6826e9d534e0..000000000000 --- a/specification/digitaltwins/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,48 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-digitaltwins-2020-12-01 - - tag: schema-digitaltwins-2020-10-31 - - tag: schema-digitaltwins-2020-03-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-digitaltwins-2020-12-01 and azureresourceschema - -``` yaml $(tag) == 'schema-digitaltwins-2020-12-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DigitalTwins/stable/2020-12-01/digitaltwins.json - -``` - -### Tag: schema-digitaltwins-2020-10-31 and azureresourceschema - -``` yaml $(tag) == 'schema-digitaltwins-2020-10-31' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DigitalTwins/stable/2020-10-31/digitaltwins.json - -``` - -### Tag: schema-digitaltwins-2020-03-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-digitaltwins-2020-03-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DigitalTwins/preview/2020-03-01-preview/digitaltwins.json - -``` diff --git a/specification/digitaltwins/resource-manager/readme.go.md b/specification/digitaltwins/resource-manager/readme.go.md index 99e7838eb217..da4c46f5bfab 100644 --- a/specification/digitaltwins/resource-manager/readme.go.md +++ b/specification/digitaltwins/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ```yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION clear-output-folder: true namespace: digitaltwins ``` diff --git a/specification/digitaltwins/resource-manager/readme.md b/specification/digitaltwins/resource-manager/readme.md index b015c5da1dde..78982b3ba956 100644 --- a/specification/digitaltwins/resource-manager/readme.md +++ b/specification/digitaltwins/resource-manager/readme.md @@ -76,8 +76,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_digitaltwins'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js digitaltwins/resource-manager ``` ### Go @@ -104,9 +102,7 @@ See configuration in [readme.csharp.md](./readme.csharp.md) See configuration in [readme.java.md](./readme.java.md) -### AzureResourceSchema - -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) +# ### Suppression diff --git a/specification/digitaltwins/resource-manager/readme.python.md b/specification/digitaltwins/resource-manager/readme.python.md index 30479183cacc..17cde88e1667 100644 --- a/specification/digitaltwins/resource-manager/readme.python.md +++ b/specification/digitaltwins/resource-manager/readme.python.md @@ -6,10 +6,8 @@ Please also specify `--python-sdks-folder=`. - -### Tag: schema-delegatednetwork-2021-03-15 and azureresourceschema - -``` yaml $(tag) == 'schema-delegatednetwork-2021-03-15' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DelegatedNetwork/stable/2021-03-15/controller.json - - Microsoft.DelegatedNetwork/stable/2021-03-15/orchestrators.json - - Microsoft.DelegatedNetwork/stable/2021-03-15/delegatedSubnets.json - - Microsoft.DelegatedNetwork/stable/2021-03-15/operations.json - - Microsoft.DelegatedNetwork/stable/2021-03-15/common-types.json -``` - -### Tag: schema-delegatednetwork-2020-08-08-preview and azureresourceschema - -``` yaml $(tag) == 'schema-delegatednetwork-2020-08-08-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DelegatedNetwork/preview/2020-08-08-preview/controller.json - - Microsoft.DelegatedNetwork/preview/2020-08-08-preview/orchestrators.json - - Microsoft.DelegatedNetwork/preview/2020-08-08-preview/delegatedSubnets.json - - Microsoft.DelegatedNetwork/preview/2020-08-08-preview/operations.json - - Microsoft.DelegatedNetwork/preview/2020-08-08-preview/common-types.json -``` \ No newline at end of file diff --git a/specification/dnc/resource-manager/readme.go.md b/specification/dnc/resource-manager/readme.go.md index cf280fc7d028..425f17e15eea 100644 --- a/specification/dnc/resource-manager/readme.go.md +++ b/specification/dnc/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION clear-output-folder: true namespace: delegatednetwork ``` diff --git a/specification/dnc/resource-manager/readme.md b/specification/dnc/resource-manager/readme.md index 5aa452376dc9..1fe68b1ef1aa 100644 --- a/specification/dnc/resource-manager/readme.md +++ b/specification/dnc/resource-manager/readme.md @@ -69,7 +69,7 @@ This is not used by Autorest itself. ``` yaml $(swagger-to-sdk) swagger-to-sdk: - repo: azure-sdk-for-net - - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-java - repo: azure-sdk-for-go - repo: azure-sdk-for-js @@ -99,6 +99,8 @@ These settings apply only when `--java` is specified on the command line. Please also specify `--azure-libraries-for-java-folder=`. ``` yaml $(java) +service-name: DelegatedNetwork + azure-arm: true fluent: true namespace: com.microsoft.azure.management.DelegatedNetwork diff --git a/specification/dnc/resource-manager/readme.python.md b/specification/dnc/resource-manager/readme.python.md new file mode 100644 index 000000000000..5f6142a1f507 --- /dev/null +++ b/specification/dnc/resource-manager/readme.python.md @@ -0,0 +1,23 @@ +## Python + +These settings apply only when `--python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(track2) +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +package-name: azure-mgmt-dnc +no-namespace-folders: true +package-version: 1.0.0b1 +clear-output-folder: true +``` + +``` yaml $(python-mode) == 'update' && $(track2) +no-namespace-folders: true +output-folder: $(python-sdks-folder)/dnc/azure-mgmt-dnc/azure/mgmt/dnc +``` + +``` yaml $(python-mode) == 'create' && $(track2) +basic-setup-py: true +output-folder: $(python-sdks-folder)/dnc/azure-mgmt-dnc +``` diff --git a/specification/dns/resource-manager/readme.azureresourceschema.md b/specification/dns/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 743edd736482..000000000000 --- a/specification/dns/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,84 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-network-2018-05-01 - - tag: schema-network-2018-03-01-preview - - tag: schema-network-2017-10-01 - - tag: schema-network-2017-09-01 - - tag: schema-network-2016-04-01 - - tag: schema-network-2015-05-04-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-network-2018-05-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2018-05-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2018-05-01/dns.json - -``` - -### Tag: schema-network-2018-03-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-network-2018-03-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/preview/2018-03-01-preview/dns.json - -``` - -### Tag: schema-network-2017-10-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2017-10-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2017-10-01/dns.json - -``` - -### Tag: schema-network-2017-09-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2017-09-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2017-09-01/dns.json - -``` - -### Tag: schema-network-2016-04-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2016-04-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2016-04-01/dns.json - -``` - -### Tag: schema-network-2015-05-04-preview and azureresourceschema - -``` yaml $(tag) == 'schema-network-2015-05-04-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/preview/2015-05-04-preview/dns.json - -``` diff --git a/specification/dns/resource-manager/readme.go.md b/specification/dns/resource-manager/readme.go.md index 4396709e438b..a3ec9eb84fc4 100644 --- a/specification/dns/resource-manager/readme.go.md +++ b/specification/dns/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: dns clear-output-folder: true ``` diff --git a/specification/dns/resource-manager/readme.md b/specification/dns/resource-manager/readme.md index 466ce29512f9..e34c59181edd 100644 --- a/specification/dns/resource-manager/readme.md +++ b/specification/dns/resource-manager/readme.md @@ -171,14 +171,16 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_dns'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js dns/resource-manager ``` ## Go See configuration in [readme.go.md](./readme.go.md) +## Python + +See configuration in [readme.python.md](./readme.python.md) + ## Java These settings apply only when `--java` is specified on the command line. @@ -237,7 +239,5 @@ input-file: - Microsoft.Network/stable/2016-04-01/dns.json ``` -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/domainservices/resource-manager/Microsoft.AAD/stable/2021-05-01/domainservices.json b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2021-05-01/domainservices.json new file mode 100644 index 000000000000..33eb5ab103fd --- /dev/null +++ b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2021-05-01/domainservices.json @@ -0,0 +1,1113 @@ +{ + "swagger": "2.0", + "info": { + "title": "Domain Services Resource Provider", + "description": "The AAD Domain Services API.", + "version": "2021-05-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": { + "/providers/Microsoft.AAD/operations": { + "get": { + "tags": [ + "DomainServices" + ], + "description": "Lists all the available Domain Services operations.", + "operationId": "DomainServiceOperations_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "HTTP 200 (OK) if the operation was successful.", + "schema": { + "$ref": "#/definitions/OperationEntityListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Operations": { + "$ref": "./examples/GetOperations.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.AAD/domainServices": { + "get": { + "tags": [ + "DomainServices" + ], + "operationId": "DomainServices_List", + "summary": "List Domain Services in Subscription", + "description": "The List Domain Services in Subscription operation lists all the domain services available under the given subscription (and across all resource groups within that subscription).", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "HTTP 200 (OK) if the operation was successful.", + "schema": { + "$ref": "#/definitions/DomainServiceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List Domain Service": { + "$ref": "./examples/ListDomainServicesBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AAD/domainServices": { + "get": { + "tags": [ + "DomainServices" + ], + "operationId": "DomainServices_ListByResourceGroup", + "summary": "List Domain Services in Resource Group", + "description": "The List Domain Services in Resource Group operation lists all the domain services available under the given resource group.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "HTTP 200 (OK) if the operation was successful.", + "schema": { + "$ref": "#/definitions/DomainServiceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List Domain Service": { + "$ref": "./examples/ListDomainServicesByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AAD/domainServices/{domainServiceName}": { + "put": { + "tags": [ + "DomainServices" + ], + "operationId": "DomainServices_CreateOrUpdate", + "summary": "Create or Update Domain Service (PUT Resource)", + "description": "The Create Domain Service operation creates a new domain service with the specified parameters. If the specific service already exists, then any patchable properties will be updated and any immutable properties will remain unchanged.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DomainServiceNameParameter" + }, + { + "name": "domainService", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DomainService" + }, + "description": "Properties supplied to the Create or Update a Domain Service operation." + } + ], + "responses": { + "200": { + "description": "HTTP 200 (OK) if the operation was successful.", + "schema": { + "$ref": "#/definitions/DomainService" + } + }, + "201": { + "description": "HTTP 201 (Created) if the operation completed successfully.", + "schema": { + "$ref": "#/definitions/DomainService" + } + }, + "202": { + "description": "HTTP 202 (Accepted) if the operation was successfully started and will complete asynchronously.", + "schema": { + "$ref": "#/definitions/DomainService" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create Domain Service": { + "$ref": "./examples/CreateDomainService.json" + } + } + }, + "get": { + "tags": [ + "DomainServices" + ], + "operationId": "DomainServices_Get", + "summary": "Get Domain Service", + "description": "The Get Domain Service operation retrieves a json representation of the Domain Service.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DomainServiceNameParameter" + } + ], + "responses": { + "200": { + "description": "HTTP 200 (OK) if the operation was successful.", + "schema": { + "$ref": "#/definitions/DomainService" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Domain Service": { + "$ref": "./examples/GetDomainService.json" + } + } + }, + "delete": { + "tags": [ + "DomainServices" + ], + "operationId": "DomainServices_Delete", + "summary": "Delete Domain Service (DELETE Resource)", + "description": "The Delete Domain Service operation deletes an existing Domain Service.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DomainServiceNameParameter" + } + ], + "responses": { + "202": { + "description": "HTTP 202 (Accepted) if the operation was successfully started and will complete asynchronously." + }, + "204": { + "description": "HTTP 204 (Not Content) should be used if the resource does not exist and the request is well formed." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete Domain Service": { + "$ref": "./examples/DeleteDomainService.json" + } + } + }, + "patch": { + "tags": [ + "DomainServices" + ], + "operationId": "DomainServices_Update", + "summary": "Update Domain Service (PATCH Resource)", + "description": "The Update Domain Service operation can be used to update the existing deployment. The update call only supports the properties listed in the PATCH body.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DomainServiceNameParameter" + }, + { + "name": "domainService", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DomainService" + }, + "description": "Properties supplied to the Update a Domain Service operation." + } + ], + "responses": { + "200": { + "description": "HTTP 200 (OK) if the operation was successful.", + "schema": { + "$ref": "#/definitions/DomainService" + } + }, + "202": { + "description": "HTTP 202 (Accepted) if the operation was successfully started and will complete asynchronously.", + "schema": { + "$ref": "#/definitions/DomainService" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update Domain Service": { + "$ref": "./examples/UpdateDomainService.json" + } + } + } + } + }, + "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", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + }, + "etag": { + "type": "string", + "description": "Resource etag" + }, + "systemData": { + "readOnly": true, + "description": "The system meta data relating to this resource.", + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData" + } + }, + "x-ms-azure-resource": true + }, + "DomainService": { + "description": "Domain service.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DomainServiceProperties", + "description": "Domain service properties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ] + }, + "DomainServiceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DomainService" + }, + "description": "the list of domain services." + }, + "nextLink": { + "type": "string", + "description": "The continuation token for the next page of results.", + "readOnly": true + } + }, + "description": "The response from the List Domain Services operation." + }, + "DomainServiceProperties": { + "description": "Properties of the Domain Service.", + "properties": { + "version": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "Data Model Version" + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "Azure Active Directory Tenant Id" + }, + "domainName": { + "type": "string", + "description": "The name of the Azure domain that the user would like to deploy Domain Services to." + }, + "deploymentId": { + "readOnly": true, + "type": "string", + "description": "Deployment Id" + }, + "syncOwner": { + "readOnly": true, + "type": "string", + "description": "SyncOwner ReplicaSet Id" + }, + "replicaSets": { + "type": "array", + "items": { + "$ref": "#/definitions/ReplicaSet", + "description": "ReplicaSet" + }, + "description": "List of ReplicaSets" + }, + "ldapsSettings": { + "$ref": "#/definitions/LdapsSettings", + "description": "Secure LDAP Settings" + }, + "resourceForestSettings": { + "$ref": "#/definitions/ResourceForestSettings", + "description": "Resource Forest Settings" + }, + "domainSecuritySettings": { + "$ref": "#/definitions/DomainSecuritySettings", + "description": "DomainSecurity Settings" + }, + "domainConfigurationType": { + "type": "string", + "description": "Domain Configuration Type" + }, + "sku": { + "type": "string", + "description": "Sku Type" + }, + "filteredSync": { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ], + "description": "Enabled or Disabled flag to turn on Group-based filtered sync", + "x-ms-enum": { + "name": "FilteredSync", + "modelAsString": true + } + }, + "notificationSettings": { + "$ref": "#/definitions/NotificationSettings", + "description": "Notification Settings" + }, + "migrationProperties": { + "readOnly": true, + "$ref": "#/definitions/MigrationProperties", + "description": "Migration Properties" + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "the current deployment or provisioning state, which only appears in the response." + }, + "configDiagnostics": { + "$ref": "#/definitions/ConfigDiagnostics", + "description": "Configuration diagnostics data containing latest execution from client." + } + } + }, + "ReplicaSet": { + "description": "Replica Set Definition", + "properties": { + "replicaSetId": { + "readOnly": true, + "type": "string", + "description": "ReplicaSet Id" + }, + "location": { + "type": "string", + "description": "Virtual network location" + }, + "vnetSiteId": { + "readOnly": true, + "type": "string", + "description": "Virtual network site id" + }, + "subnetId": { + "type": "string", + "description": "The name of the virtual network that Domain Services will be deployed on. The id of the subnet that Domain Services will be deployed on. /virtualNetwork/vnetName/subnets/subnetName." + }, + "domainControllerIpAddress": { + "readOnly": true, + "type": "array", + "items": { + "type": "string", + "description": "Domain Controller IP Address" + }, + "description": "List of Domain Controller IP Address" + }, + "externalAccessIpAddress": { + "readOnly": true, + "type": "string", + "description": "External access ip address." + }, + "serviceStatus": { + "readOnly": true, + "type": "string", + "description": "Status of Domain Service instance" + }, + "healthLastEvaluated": { + "readOnly": true, + "type": "string", + "format": "date-time-rfc1123", + "description": "Last domain evaluation run DateTime" + }, + "healthMonitors": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/HealthMonitor", + "description": "Domain Health Monitors" + }, + "description": "List of Domain Health Monitors" + }, + "healthAlerts": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/HealthAlert", + "description": "Domain Health Alerts" + }, + "description": "List of Domain Health Alerts" + } + } + }, + "LdapsSettings": { + "description": "Secure LDAP Settings", + "properties": { + "ldaps": { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ], + "default": "Disabled", + "description": "A flag to determine whether or not Secure LDAP is enabled or disabled.", + "x-ms-enum": { + "name": "Ldaps", + "modelAsString": true + } + }, + "pfxCertificate": { + "type": "string", + "description": "The certificate required to configure Secure LDAP. The parameter passed here should be a base64encoded representation of the certificate pfx file." + }, + "pfxCertificatePassword": { + "type": "string", + "description": "The password to decrypt the provided Secure LDAP certificate pfx file." + }, + "publicCertificate": { + "readOnly": true, + "type": "string", + "description": "Public certificate used to configure secure ldap." + }, + "certificateThumbprint": { + "readOnly": true, + "type": "string", + "description": "Thumbprint of configure ldaps certificate." + }, + "certificateNotAfter": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "NotAfter DateTime of configure ldaps certificate." + }, + "externalAccess": { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ], + "default": "Disabled", + "description": "A flag to determine whether or not Secure LDAP access over the internet is enabled or disabled.", + "x-ms-enum": { + "name": "ExternalAccess", + "modelAsString": true + } + } + } + }, + "HealthMonitor": { + "description": "Health Monitor Description", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Health Monitor Id" + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Health Monitor Name" + }, + "details": { + "readOnly": true, + "type": "string", + "description": "Health Monitor Details" + } + } + }, + "HealthAlert": { + "description": "Health Alert Description", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Health Alert Id" + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Health Alert Name" + }, + "issue": { + "readOnly": true, + "type": "string", + "description": "Health Alert Issue" + }, + "severity": { + "readOnly": true, + "type": "string", + "description": "Health Alert Severity" + }, + "raised": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "Health Alert Raised DateTime" + }, + "lastDetected": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "Health Alert Last Detected DateTime" + }, + "resolutionUri": { + "readOnly": true, + "type": "string", + "description": "Health Alert TSG Link" + } + } + }, + "NotificationSettings": { + "description": "Settings for notification", + "properties": { + "notifyGlobalAdmins": { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ], + "description": "Should global admins be notified", + "x-ms-enum": { + "name": "notifyGlobalAdmins", + "modelAsString": true + } + }, + "notifyDcAdmins": { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ], + "description": "Should domain controller admins be notified", + "x-ms-enum": { + "name": "notifyDcAdmins", + "modelAsString": true + } + }, + "additionalRecipients": { + "type": "array", + "items": { + "type": "string", + "description": "Email address for additional recipient" + }, + "description": "The list of additional recipients" + } + } + }, + "ResourceForestSettings": { + "description": "Settings for Resource Forest", + "properties": { + "settings": { + "type": "array", + "items": { + "$ref": "#/definitions/ForestTrust" + }, + "description": "List of settings for Resource Forest" + }, + "resourceForest": { + "type": "string", + "description": "Resource Forest" + } + } + }, + "ForestTrust": { + "description": "Forest Trust Setting", + "properties": { + "trustedDomainFqdn": { + "type": "string", + "description": "Trusted Domain FQDN" + }, + "trustDirection": { + "type": "string", + "description": "Trust Direction" + }, + "friendlyName": { + "type": "string", + "description": "Friendly Name" + }, + "remoteDnsIps": { + "type": "string", + "description": "Remote Dns ips" + }, + "trustPassword": { + "type": "string", + "description": "Trust Password", + "x-ms-secret": true + } + } + }, + "MigrationProperties": { + "description": "Migration Properties", + "properties": { + "oldSubnetId": { + "readOnly": true, + "type": "string", + "description": "Old Subnet Id" + }, + "oldVnetSiteId": { + "readOnly": true, + "type": "string", + "description": "Old Vnet Site Id" + }, + "migrationProgress": { + "readOnly": true, + "$ref": "#/definitions/MigrationProgress", + "description": "Migration Progress" + } + } + }, + "MigrationProgress": { + "description": "Migration Progress", + "properties": { + "completionPercentage": { + "type": "number", + "format": "double", + "description": "Completion Percentage" + }, + "progressMessage": { + "type": "string", + "description": "Progress Message" + } + } + }, + "DomainSecuritySettings": { + "description": "Domain Security Settings", + "properties": { + "ntlmV1": { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ], + "default": "Enabled", + "description": "A flag to determine whether or not NtlmV1 is enabled or disabled.", + "x-ms-enum": { + "name": "NtlmV1", + "modelAsString": true + } + }, + "tlsV1": { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ], + "default": "Enabled", + "description": "A flag to determine whether or not TlsV1 is enabled or disabled.", + "x-ms-enum": { + "name": "TlsV1", + "modelAsString": true + } + }, + "syncNtlmPasswords": { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ], + "default": "Enabled", + "description": "A flag to determine whether or not SyncNtlmPasswords is enabled or disabled.", + "x-ms-enum": { + "name": "SyncNtlmPasswords", + "modelAsString": true + } + }, + "syncKerberosPasswords": { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ], + "default": "Enabled", + "description": "A flag to determine whether or not SyncKerberosPasswords is enabled or disabled.", + "x-ms-enum": { + "name": "SyncKerberosPasswords", + "modelAsString": true + } + }, + "syncOnPremPasswords": { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ], + "default": "Enabled", + "description": "A flag to determine whether or not SyncOnPremPasswords is enabled or disabled.", + "x-ms-enum": { + "name": "SyncOnPremPasswords", + "modelAsString": true + } + }, + "kerberosRc4Encryption": { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ], + "default": "Enabled", + "description": "A flag to determine whether or not KerberosRc4Encryption is enabled or disabled.", + "x-ms-enum": { + "name": "KerberosRc4Encryption", + "modelAsString": true + } + }, + "kerberosArmoring": { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ], + "default": "Disabled", + "description": "A flag to determine whether or not KerberosArmoring is enabled or disabled.", + "x-ms-enum": { + "name": "KerberosArmoring", + "modelAsString": true + } + } + } + }, + "ConfigDiagnostics": { + "description": "Configuration Diagnostics", + "properties": { + "lastExecuted": { + "type": "string", + "format": "date-time-rfc1123", + "description": "Last domain configuration diagnostics DateTime" + }, + "validatorResults": { + "type": "array", + "description": "List of Configuration Diagnostics validator results.", + "items": { + "$ref": "#/definitions/ConfigDiagnosticsValidatorResult" + } + } + } + }, + "ConfigDiagnosticsValidatorResult": { + "description": "Config Diagnostics validator result data", + "properties": { + "validatorId": { + "type": "string", + "description": "Validator identifier" + }, + "replicaSetSubnetDisplayName": { + "type": "string", + "description": "Replica set location and subnet name" + }, + "status": { + "type": "string", + "enum": [ + "None", + "Running", + "OK", + "Failure", + "Warning", + "Skipped" + ], + "default": "None", + "description": "Status for individual validator after running diagnostics.", + "x-ms-enum": { + "name": "status", + "modelAsString": true + } + }, + "issues": { + "type": "array", + "description": "List of resource config validation issues.", + "items": { + "$ref": "#/definitions/ConfigDiagnosticsValidatorResultIssue" + } + } + } + }, + "ConfigDiagnosticsValidatorResultIssue": { + "description": "Specific issue for a particular config diagnostics validator", + "properties": { + "id": { + "type": "string", + "description": "Validation issue identifier." + }, + "descriptionParams": { + "type": "array", + "items": { + "type": "string", + "description": "Single resource property involved in issue description." + }, + "description": "List of domain resource property name or values used to compose a rich description." + } + } + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "description": "An error response from the Domain Services.", + "$ref": "#/definitions/CloudErrorBody" + } + }, + "description": "An error response from the Domain Services." + }, + "CloudErrorBody": { + "x-ms-external": true, + "properties": { + "code": { + "type": "string", + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "type": "string", + "description": "A message describing the error, intended to be suitable for display in a user interface." + }, + "target": { + "type": "string", + "description": "The target of the particular error. For example, the name of the property in error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/CloudErrorBody" + }, + "description": "A list of additional details about the error." + } + }, + "description": "An error response from the Domain Services." + }, + "OperationEntityListResult": { + "description": "The list of domain service operation response.", + "type": "object", + "properties": { + "value": { + "description": "The list of operations.", + "type": "array", + "items": { + "$ref": "#/definitions/OperationEntity" + } + }, + "nextLink": { + "type": "string", + "description": "The continuation token for the next page of results.", + "readOnly": true + } + } + }, + "OperationEntity": { + "description": "The operation supported by Domain Services.", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}.", + "type": "string" + }, + "display": { + "$ref": "#/definitions/OperationDisplayInfo", + "description": "The operation supported by Domain Services." + }, + "origin": { + "description": "The origin of the operation.", + "type": "string" + } + } + }, + "OperationDisplayInfo": { + "description": "The operation supported by Domain Services.", + "type": "object", + "properties": { + "description": { + "description": "The description of the operation.", + "type": "string" + }, + "operation": { + "description": "The action that users can perform, based on their permission level.", + "type": "string" + }, + "provider": { + "description": "Service provider: Domain Services.", + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed.", + "type": "string" + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Gets subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client Api Version." + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group within the user's subscription. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90, + "x-ms-parameter-location": "method" + }, + "DomainServiceNameParameter": { + "name": "domainServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the domain service.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/domainservices/resource-manager/Microsoft.AAD/stable/2021-05-01/examples/CreateDomainService.json b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2021-05-01/examples/CreateDomainService.json new file mode 100644 index 000000000000..ff0238a0dcae --- /dev/null +++ b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2021-05-01/examples/CreateDomainService.json @@ -0,0 +1,181 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "1639790a-76a2-4ac4-98d9-8562f5dfcb4d", + "resourceGroupName": "TestResourceGroup", + "domainServiceName": "TestDomainService.com", + "domainService": { + "properties": { + "domainName": "TestDomainService.com", + "replicaSets": [ + { + "location": "West US", + "subnetId": "/subscriptions/1639790a-76a2-4ac4-98d9-8562f5dfcb4d/resourceGroups/TestNetworkResourceGroup/providers/Microsoft.Network/virtualNetworks/TestVnetWUS/subnets/TestSubnetWUS" + } + ], + "ldapsSettings": { + "ldaps": "Enabled", + "pfxCertificate": "MIIDPDCCAiSgAwIBAgIQQUI9P6tq2p9OFIJa7DLNvTANBgkqhkiG9w0BAQsFADAgMR4w...", + "pfxCertificatePassword": "", + "externalAccess": "Enabled" + }, + "domainSecuritySettings": { + "ntlmV1": "Enabled", + "tlsV1": "Disabled", + "syncNtlmPasswords": "Enabled" + }, + "filteredSync": "Enabled", + "notificationSettings": { + "notifyGlobalAdmins": "Enabled", + "notifyDcAdmins": "Enabled", + "additionalRecipients": [ + "jicha@microsoft.com", + "caalmont@microsoft.com" + ] + } + } + } + }, + "responses": { + "200": { + "description": "HTTP 200 (OK) if the operation was successful.", + "body": { + "id": "/subscriptions/1639790a-76a2-4ac4-98d9-8562f5dfcb4d/resourceGroups/TestResourceGroup/providers/Microsoft.AAD/DomainServices/TestDomainService.com", + "name": "TestDomainService.com", + "type": "Microsoft.AAD/DomainServices", + "properties": { + "version": 2, + "tenantId": "3f8cd22c-7b32-48aa-a01c-f533133b1def", + "domainName": "TestDomainService.com", + "deploymentId": "4a619871-0150-41c4-aeb4-0b10deb7940a", + "syncOwner": "4a619871-0150-41c4-aeb4-0b10deb7940a", + "replicaSets": [ + { + "replicaSetId": "4a619871-0150-41c4-aeb4-0b10deb7940a", + "location": "West US", + "vnetSiteId": "99083198-a39c-469f-972d-59017e7f078c", + "subnetId": "/subscriptions/1639790a-76a2-4ac4-98d9-8562f5dfcb4d/resourceGroups/TestNetworkResourceGroup/providers/Microsoft.Network/virtualNetworks/TestVnetWUS/subnets/TestSubnetWUS", + "domainControllerIpAddress": [ + "10.0.0.1", + "10.0.0.2" + ], + "externalAccessIpAddress": "13.64.148.151", + "serviceStatus": "Running" + } + ], + "ldapsSettings": { + "ldaps": "Enabled", + "publicCertificate": "MIIDPDCCAiSgAwIBAgIQQUI9P6tq2p9OFIJa7DLNvTANBgkqhkiG9w0BAQsFADAgMR4w...", + "certificateThumbprint": "9154A390F0C387D679E0DD040701745CDFED67F3", + "certificateNotAfter": "2018-02-15T21:43:21Z", + "externalAccess": "Enabled" + }, + "domainSecuritySettings": { + "ntlmV1": "Enabled", + "tlsV1": "Disabled", + "syncNtlmPasswords": "Enabled" + }, + "filteredSync": "Enabled", + "notificationSettings": { + "notifyGlobalAdmins": "Enabled", + "notifyDcAdmins": "Enabled", + "additionalRecipients": [ + "jicha@microsoft.com", + "caalmont@microsoft.com" + ] + }, + "provisioningState": "Succeeded" + } + } + }, + "201": { + "description": "HTTP 201 (Created) if the operation completed successfully.", + "body": { + "id": "/subscriptions/1639790a-76a2-4ac4-98d9-8562f5dfcb4d/resourceGroups/TestResourceGroup/providers/Microsoft.AAD/DomainServices/TestDomainService.com", + "name": "TestDomainService.com", + "type": "Microsoft.AAD/DomainServices", + "properties": { + "version": 2, + "tenantId": "3f8cd22c-7b32-48aa-a01c-f533133b1def", + "domainName": "TestDomainService.com", + "deploymentId": "4a619871-0150-41c4-aeb4-0b10deb7940a", + "syncOwner": "4a619871-0150-41c4-aeb4-0b10deb7940a", + "replicaSets": [ + { + "replicaSetId": "4a619871-0150-41c4-aeb4-0b10deb7940a", + "location": "West US", + "vnetSiteId": "99083198-a39c-469f-972d-59017e7f078c", + "subnetId": "/subscriptions/1639790a-76a2-4ac4-98d9-8562f5dfcb4d/resourceGroups/TestNetworkResourceGroup/providers/Microsoft.Network/virtualNetworks/TestVnetWUS/subnets/TestSubnetWUS", + "domainControllerIpAddress": [ + "10.0.0.1", + "10.0.0.2" + ], + "externalAccessIpAddress": "13.64.148.151", + "serviceStatus": "Running" + } + ], + "ldapsSettings": { + "ldaps": "Enabled", + "publicCertificate": "MIIDPDCCAiSgAwIBAgIQQUI9P6tq2p9OFIJa7DLNvTANBgkqhkiG9w0BAQsFADAgMR4w...", + "certificateThumbprint": "9154A390F0C387D679E0DD040701745CDFED67F3", + "certificateNotAfter": "2018-02-15T21:43:21Z", + "externalAccess": "Enabled" + }, + "domainSecuritySettings": { + "ntlmV1": "Enabled", + "tlsV1": "Disabled", + "syncNtlmPasswords": "Enabled" + }, + "filteredSync": "Enabled", + "notificationSettings": { + "notifyGlobalAdmins": "Enabled", + "notifyDcAdmins": "Enabled", + "additionalRecipients": [ + "jicha@microsoft.com", + "caalmont@microsoft.com" + ] + }, + "provisioningState": "Succeeded" + } + } + }, + "202": { + "description": "HTTP 202 (Accepted) if the operation was successfully started and will complete asynchronously.", + "body": { + "id": "/subscriptions/1639790a-76a2-4ac4-98d9-8562f5dfcb4d/resourceGroups/TestResourceGroup/providers/Microsoft.AAD/DomainServices/TestDomainService.com", + "name": "TestDomainService.com", + "type": "Microsoft.AAD/DomainServices", + "properties": { + "version": 2, + "tenantId": "3f8cd22c-7b32-48aa-a01c-f533133b1def", + "domainName": "TestDomainService.com", + "replicaSets": [ + { + "location": "West US", + "subnetId": "/subscriptions/1639790a-76a2-4ac4-98d9-8562f5dfcb4d/resourceGroups/TestNetworkResourceGroup/providers/Microsoft.Network/virtualNetworks/TestVnetWUS/subnets/TestSubnetWUS" + } + ], + "ldapsSettings": { + "ldaps": "Enabled", + "externalAccess": "Enabled" + }, + "domainSecuritySettings": { + "ntlmV1": "Enabled", + "tlsV1": "Disabled", + "syncNtlmPasswords": "Enabled" + }, + "filteredSync": "Enabled", + "notificationSettings": { + "notifyGlobalAdmins": "Enabled", + "notifyDcAdmins": "Enabled", + "additionalRecipients": [ + "jicha@microsoft.com", + "caalmont@microsoft.com" + ] + }, + "provisioningState": "Accepted" + } + } + } + } +} diff --git a/specification/domainservices/resource-manager/Microsoft.AAD/stable/2021-05-01/examples/CreateOuContainer.json b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2021-05-01/examples/CreateOuContainer.json new file mode 100644 index 000000000000..86df92943039 --- /dev/null +++ b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2021-05-01/examples/CreateOuContainer.json @@ -0,0 +1,94 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "1639790a-76a2-4ac4-98d9-8562f5dfcb4d", + "resourceGroupName": "OuContainerResourceGroup", + "domainServiceName": "OuContainer.com", + "ouContainerName": "OuContainer1", + "containerAccount": { + "accountName": "AccountName1", + "spn": "Spn1", + "password": "" + } + }, + "responses": { + "200": { + "description": "HTTP 200 (OK) if the operation was successful.", + "body": { + "id": "/subscriptions/1639790a-76a2-4ac4-98d9-8562f5dfcb4d/resourceGroups/ouContainerResourceGroup/providers/Microsoft.AAD/domainServices/ouContainer.com/ouContainer/ouContainer1", + "name": "OuContainer.com/OuContainer1", + "type": "Microsoft.AAD/DomainServices/OuContainer", + "properties": { + "tenantId": "3f8cd22c-7b32-48aa-a01c-f533133b1def", + "domainName": "OuContainer.com", + "deploymentId": "0FC50BDB-AC45-48E4-BC92-F0651EA0687B", + "containerId": "OuContainer1", + "accounts": [ + { + "accountName": "AccountName1", + "spn": "Spn1" + }, + { + "accountName": "AccountName2", + "spn": "Spn2" + } + ], + "serviceStatus": "Running", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "description": "HTTP 201 (Created) if the operation was successful.", + "body": { + "id": "/subscriptions/1639790a-76a2-4ac4-98d9-8562f5dfcb4d/resourceGroups/ouContainerResourceGroup/providers/Microsoft.AAD/domainServices/ouContainer.com/ouContainer/ouContainer1", + "name": "OuContainer.com/OuContainer1", + "type": "Microsoft.AAD/DomainServices/OuContainer", + "properties": { + "tenantId": "3f8cd22c-7b32-48aa-a01c-f533133b1def", + "domainName": "OuContainer.com", + "deploymentId": "0FC50BDB-AC45-48E4-BC92-F0651EA0687B", + "containerId": "OuContainer1", + "accounts": [ + { + "accountName": "AccountName1", + "spn": "Spn1" + }, + { + "accountName": "AccountName2", + "spn": "Spn2" + } + ], + "serviceStatus": "Running", + "provisioningState": "Succeeded" + } + } + }, + "202": { + "description": "HTTP 202 (Accepted) if the operation was successfully started and will complete asynchronously.", + "body": { + "id": "/subscriptions/1639790a-76a2-4ac4-98d9-8562f5dfcb4d/resourceGroups/ouContainerResourceGroup/providers/Microsoft.AAD/domainServices/ouContainer.com/ouContainer/ouContainer1", + "name": "OuContainer.com/OuContainer1", + "type": "Microsoft.AAD/DomainServices/OuContainer", + "properties": { + "tenantId": "3f8cd22c-7b32-48aa-a01c-f533133b1def", + "domainName": "OuContainer.com", + "deploymentId": "0FC50BDB-AC45-48E4-BC92-F0651EA0687B", + "containerId": "OuContainer1", + "accounts": [ + { + "accountName": "AccountName1", + "spn": "Spn1" + }, + { + "accountName": "AccountName2", + "spn": "Spn2" + } + ], + "serviceStatus": "Running", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/domainservices/resource-manager/Microsoft.AAD/stable/2021-05-01/examples/DeleteDomainService.json b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2021-05-01/examples/DeleteDomainService.json new file mode 100644 index 000000000000..d0027523f5aa --- /dev/null +++ b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2021-05-01/examples/DeleteDomainService.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "1639790a-76a2-4ac4-98d9-8562f5dfcb4d", + "resourceGroupName": "TestResourceGroup", + "domainServiceName": "TestDomainService.com" + }, + "responses": { + "202": { + "description": "HTTP 202 (Accepted) if the operation was successfully started and will complete asynchronously." + }, + "204": { + "description": "HTTP 204 (Not Content) should be used if the resource does not exist and the request is well formed." + } + } +} diff --git a/specification/domainservices/resource-manager/Microsoft.AAD/stable/2021-05-01/examples/DeleteOuContainer.json b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2021-05-01/examples/DeleteOuContainer.json new file mode 100644 index 000000000000..9f3c63e876a0 --- /dev/null +++ b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2021-05-01/examples/DeleteOuContainer.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "1639790a-76a2-4ac4-98d9-8562f5dfcb4d", + "resourceGroupName": "OuContainerResourceGroup", + "domainServiceName": "OuContainer.com", + "ouContainerName": "OuContainer1" + }, + "responses": { + "200": { + "description": "HTTP 200 (OK) if the operation was successful." + }, + "202": { + "description": "HTTP 202 (Accepted) if the operation was successfully started and will complete asynchronously." + }, + "204": { + "description": "HTTP 204 (Not Content) should be used if the resource does not exist and the request is well formed." + } + } +} diff --git a/specification/domainservices/resource-manager/Microsoft.AAD/stable/2021-05-01/examples/GetDomainService.json b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2021-05-01/examples/GetDomainService.json new file mode 100644 index 000000000000..28d38fb8d575 --- /dev/null +++ b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2021-05-01/examples/GetDomainService.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "1639790a-76a2-4ac4-98d9-8562f5dfcb4d", + "resourceGroupName": "TestResourceGroup", + "domainServiceName": "TestDomainService.com" + }, + "responses": { + "200": { + "description": "HTTP 200 (OK) if the operation was successful.", + "body": { + "id": "/subscriptions/1639790a-76a2-4ac4-98d9-8562f5dfcb4d/resourceGroups/TestResourceGroup/providers/Microsoft.AAD/DomainServices/TestDomainService.com", + "name": "TestDomainService.com", + "type": "Microsoft.AAD/DomainServices", + "properties": { + "version": 2, + "tenantId": "3f8cd22c-7b32-48aa-a01c-f533133b1def", + "domainName": "TestDomainService.com", + "deploymentId": "4a619871-0150-41c4-aeb4-0b10deb7940a", + "syncOwner": "4a619871-0150-41c4-aeb4-0b10deb7940a", + "replicaSets": [ + { + "replicaSetId": "4a619871-0150-41c4-aeb4-0b10deb7940a", + "location": "West US", + "vnetSiteId": "99083198-a39c-469f-972d-59017e7f078c", + "subnetId": "/subscriptions/1639790a-76a2-4ac4-98d9-8562f5dfcb4d/resourceGroups/TestNetworkResourceGroup/providers/Microsoft.Network/virtualNetworks/TestVnetWUS/subnets/TestSubnetWUS", + "domainControllerIpAddress": [ + "10.0.0.1", + "10.0.0.2" + ], + "externalAccessIpAddress": "13.64.148.151", + "serviceStatus": "Running", + "healthLastEvaluated": "2018-02-15T21:43:21Z", + "healthMonitors": [ + { + "id": "AADDS501", + "name": "Backup", + "details": "Last backed up on Tue, 18 Sep 2018 03:37:04 GMT" + }, + { + "id": "AADDS500", + "name": "Synchronization with Azure AD", + "details": "Synchronized on Tue, 18 Sep 2018 16:47:57 GMT." + } + ], + "healthAlerts": [ + { + "id": "AADDS104", + "name": "The managed domain is experiencing a network error", + "issue": "Microsoft is unable to reach the domain controllers for this managed domain. This may happen if a network security group (NSG) configured on your virtual network blocks access to the managed domain. Another possible reason is if there is a user defined route that blocks incoming traffic from the internet.", + "severity": "2", + "raised": "2018-09-18T01:55:40.7834289Z", + "lastDetected": "2018-09-18T17:46:39.2697888Z", + "resolutionUri": "https://aka.ms/aadds-neterr" + } + ] + } + ], + "ldapsSettings": { + "ldaps": "Enabled", + "publicCertificate": "MIIDPDCCAiSgAwIBAgIQQUI9P6tq2p9OFIJa7DLNvTANBgkqhkiG9w0BAQsFADAgMR4w...", + "certificateThumbprint": "9154A390F0C387D679E0DD040701745CDFED67F3", + "certificateNotAfter": "2018-02-15T21:43:21Z", + "externalAccess": "Enabled" + }, + "domainSecuritySettings": { + "ntlmV1": "Enabled", + "tlsV1": "Disabled", + "syncNtlmPasswords": "Enabled" + }, + "filteredSync": "Enabled", + "notificationSettings": { + "notifyGlobalAdmins": "Enabled", + "notifyDcAdmins": "Enabled", + "additionalRecipients": [ + "jicha@microsoft.com", + "caalmont@microsoft.com" + ] + }, + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/domainservices/resource-manager/Microsoft.AAD/stable/2021-05-01/examples/GetOperations.json b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2021-05-01/examples/GetOperations.json new file mode 100644 index 000000000000..df9537d5c20f --- /dev/null +++ b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2021-05-01/examples/GetOperations.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "api-version": "2021-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.AAD/unregister/action", + "display": { + "provider": "Domain Services Resource Provider", + "resource": "Domain Service Type", + "operation": "Unregister Domain Service", + "description": "Unregisters Domain Services" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.AAD/register/action", + "display": { + "provider": "Domain Services Resource Provider", + "resource": "Domain Service Type", + "operation": "Register Domain Service", + "description": "Registers Domain Services" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.AAD/domainServices/read", + "display": { + "provider": "Domain Services Resource Provider", + "resource": "Domain Service Type", + "operation": "Read Domain Service", + "description": "Reads Domain Services" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.AAD/domainServices/write", + "display": { + "provider": "Domain Services Resource Provider", + "resource": "Domain Service Type", + "operation": "Write Domain Service", + "description": "Writes Domain Services" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.AAD/domainServices/delete", + "display": { + "provider": "Domain Services Resource Provider", + "resource": "Domain Service Type", + "operation": "Delete Domain Service", + "description": "Deletes Domain Services" + }, + "origin": "user,system" + } + ] + } + } + } +} diff --git a/specification/domainservices/resource-manager/Microsoft.AAD/stable/2021-05-01/examples/GetOuContainer.json b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2021-05-01/examples/GetOuContainer.json new file mode 100644 index 000000000000..fe3e4df2c077 --- /dev/null +++ b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2021-05-01/examples/GetOuContainer.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "1639790a-76a2-4ac4-98d9-8562f5dfcb4d", + "resourceGroupName": "OuContainerResourceGroup", + "domainServiceName": "OuContainer.com", + "ouContainerName": "OuContainer1" + }, + "responses": { + "200": { + "description": "HTTP 200 (OK) if the operation was successful.", + "body": { + "id": "/subscriptions/1639790a-76a2-4ac4-98d9-8562f5dfcb4d/resourceGroups/ouContainerResourceGroup/providers/Microsoft.AAD/domainServices/ouContainer.com/ouContainer/ouContainer1", + "name": "OuContainer.com/OuContainer1", + "type": "Microsoft.AAD/DomainServices/OuContainer", + "properties": { + "tenantId": "3f8cd22c-7b32-48aa-a01c-f533133b1def", + "domainName": "OuContainer.com", + "deploymentId": "0FC50BDB-AC45-48E4-BC92-F0651EA0687B", + "containerId": "OuContainer1", + "accounts": [ + { + "accountName": "AccountName1", + "spn": "Spn1" + }, + { + "accountName": "AccountName2", + "spn": "Spn2" + } + ], + "serviceStatus": "Running", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/domainservices/resource-manager/Microsoft.AAD/stable/2021-05-01/examples/ListDomainServicesByResourceGroup.json b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2021-05-01/examples/ListDomainServicesByResourceGroup.json new file mode 100644 index 000000000000..a9733d549191 --- /dev/null +++ b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2021-05-01/examples/ListDomainServicesByResourceGroup.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "1639790a-76a2-4ac4-98d9-8562f5dfcb4d", + "resourceGroupName": "TestResourceGroup" + }, + "responses": { + "200": { + "description": "HTTP 200 (OK) if the operation was successful.", + "body": { + "value": [ + { + "id": "/subscriptions/1639790a-76a2-4ac4-98d9-8562f5dfcb4d/resourceGroups/TestResourceGroup/providers/Microsoft.AAD/DomainServices/TestDomainService.com", + "name": "TestDomainService.com", + "type": "Microsoft.AAD/DomainServices", + "properties": { + "version": 2, + "tenantId": "3f8cd22c-7b32-48aa-a01c-f533133b1def", + "domainName": "TestDomainService.com", + "deploymentId": "4a619871-0150-41c4-aeb4-0b10deb7940a", + "syncOwner": "4a619871-0150-41c4-aeb4-0b10deb7940a", + "replicaSets": [ + { + "replicaSetId": "4a619871-0150-41c4-aeb4-0b10deb7940a", + "location": "West US", + "vnetSiteId": "99083198-a39c-469f-972d-59017e7f078c", + "subnetId": "/subscriptions/1639790a-76a2-4ac4-98d9-8562f5dfcb4d/resourceGroups/TestNetworkResourceGroup/providers/Microsoft.Network/virtualNetworks/TestVnetWUS/subnets/TestSubnetWUS", + "domainControllerIpAddress": [ + "10.0.0.1", + "10.0.0.2" + ], + "externalAccessIpAddress": "13.64.148.151", + "serviceStatus": "Running", + "healthLastEvaluated": "2018-02-15T21:43:21Z", + "healthMonitors": [ + { + "id": "AADDS501", + "name": "Backup", + "details": "Last backed up on Tue, 18 Sep 2018 03:37:04 GMT" + }, + { + "id": "AADDS500", + "name": "Synchronization with Azure AD", + "details": "Synchronized on Tue, 18 Sep 2018 16:47:57 GMT." + } + ], + "healthAlerts": [ + { + "id": "AADDS104", + "name": "The managed domain is experiencing a network error", + "issue": "Microsoft is unable to reach the domain controllers for this managed domain. This may happen if a network security group (NSG) configured on your virtual network blocks access to the managed domain. Another possible reason is if there is a user defined route that blocks incoming traffic from the internet.", + "severity": "2", + "raised": "2018-09-18T01:55:40.7834289Z", + "lastDetected": "2018-09-18T17:46:39.2697888Z", + "resolutionUri": "https://aka.ms/aadds-neterr" + } + ] + } + ], + "ldapsSettings": { + "ldaps": "Enabled", + "publicCertificate": "MIIDPDCCAiSgAwIBAgIQQUI9P6tq2p9OFIJa7DLNvTANBgkqhkiG9w0BAQsFADAgMR4w...", + "certificateThumbprint": "9154A390F0C387D679E0DD040701745CDFED67F3", + "certificateNotAfter": "2018-02-15T21:43:21Z", + "externalAccess": "Enabled" + }, + "domainSecuritySettings": { + "ntlmV1": "Enabled", + "tlsV1": "Disabled", + "syncNtlmPasswords": "Enabled" + }, + "filteredSync": "Enabled", + "notificationSettings": { + "notifyGlobalAdmins": "Enabled", + "notifyDcAdmins": "Enabled", + "additionalRecipients": [ + "jicha@microsoft.com", + "caalmont@microsoft.com" + ] + }, + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/domainservices/resource-manager/Microsoft.AAD/stable/2021-05-01/examples/ListDomainServicesBySubscription.json b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2021-05-01/examples/ListDomainServicesBySubscription.json new file mode 100644 index 000000000000..00428ee0e7c9 --- /dev/null +++ b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2021-05-01/examples/ListDomainServicesBySubscription.json @@ -0,0 +1,87 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "1639790a-76a2-4ac4-98d9-8562f5dfcb4d" + }, + "responses": { + "200": { + "description": "HTTP 200 (OK) if the operation was successful.", + "body": { + "value": [ + { + "id": "/subscriptions/1639790a-76a2-4ac4-98d9-8562f5dfcb4d/resourceGroups/TestResourceGroup/providers/Microsoft.AAD/DomainServices/TestDomainService.com", + "name": "TestDomainService.com", + "type": "Microsoft.AAD/DomainServices", + "properties": { + "version": 2, + "tenantId": "3f8cd22c-7b32-48aa-a01c-f533133b1def", + "domainName": "TestDomainService.com", + "deploymentId": "4a619871-0150-41c4-aeb4-0b10deb7940a", + "syncOwner": "4a619871-0150-41c4-aeb4-0b10deb7940a", + "replicaSets": [ + { + "replicaSetId": "4a619871-0150-41c4-aeb4-0b10deb7940a", + "location": "West US", + "vnetSiteId": "99083198-a39c-469f-972d-59017e7f078c", + "subnetId": "/subscriptions/1639790a-76a2-4ac4-98d9-8562f5dfcb4d/resourceGroups/TestNetworkResourceGroup/providers/Microsoft.Network/virtualNetworks/TestVnetWUS/subnets/TestSubnetWUS", + "domainControllerIpAddress": [ + "10.0.0.1", + "10.0.0.2" + ], + "externalAccessIpAddress": "13.64.148.151", + "serviceStatus": "Running", + "healthLastEvaluated": "2018-02-15T21:43:21Z", + "healthMonitors": [ + { + "id": "AADDS501", + "name": "Backup", + "details": "Last backed up on Tue, 18 Sep 2018 03:37:04 GMT" + }, + { + "id": "AADDS500", + "name": "Synchronization with Azure AD", + "details": "Synchronized on Tue, 18 Sep 2018 16:47:57 GMT." + } + ], + "healthAlerts": [ + { + "id": "AADDS104", + "name": "The managed domain is experiencing a network error", + "issue": "Microsoft is unable to reach the domain controllers for this managed domain. This may happen if a network security group (NSG) configured on your virtual network blocks access to the managed domain. Another possible reason is if there is a user defined route that blocks incoming traffic from the internet.", + "severity": "2", + "raised": "2018-09-18T01:55:40.7834289Z", + "lastDetected": "2018-09-18T17:46:39.2697888Z", + "resolutionUri": "https://aka.ms/aadds-neterr" + } + ] + } + ], + "ldapsSettings": { + "ldaps": "Enabled", + "publicCertificate": "MIIDPDCCAiSgAwIBAgIQQUI9P6tq2p9OFIJa7DLNvTANBgkqhkiG9w0BAQsFADAgMR4w...", + "certificateThumbprint": "9154A390F0C387D679E0DD040701745CDFED67F3", + "certificateNotAfter": "2018-02-15T21:43:21Z", + "externalAccess": "Enabled" + }, + "domainSecuritySettings": { + "ntlmV1": "Enabled", + "tlsV1": "Disabled", + "syncNtlmPasswords": "Enabled" + }, + "filteredSync": "Enabled", + "notificationSettings": { + "notifyGlobalAdmins": "Enabled", + "notifyDcAdmins": "Enabled", + "additionalRecipients": [ + "jicha@microsoft.com", + "caalmont@microsoft.com" + ] + }, + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/domainservices/resource-manager/Microsoft.AAD/stable/2021-05-01/examples/ListOuContainers.json b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2021-05-01/examples/ListOuContainers.json new file mode 100644 index 000000000000..472219f272af --- /dev/null +++ b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2021-05-01/examples/ListOuContainers.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "1639790a-76a2-4ac4-98d9-8562f5dfcb4d", + "resourceGroupName": "OuContainerResourceGroup", + "domainServiceName": "OuContainer.com" + }, + "responses": { + "200": { + "description": "HTTP 200 (OK) if the operation was successful.", + "body": { + "value": [ + { + "id": "/subscriptions/1639790a-76a2-4ac4-98d9-8562f5dfcb4d/resourceGroups/ouContainerResourceGroup/providers/Microsoft.AAD/domainServices/ouContainer.com/ouContainer/ouContainer1", + "name": "OuContainer.com/OuContainer1", + "type": "Microsoft.AAD/DomainServices/OuContainer", + "properties": { + "tenantId": "3f8cd22c-7b32-48aa-a01c-f533133b1def", + "domainName": "OuContainer.com", + "deploymentId": "0FC50BDB-AC45-48E4-BC92-F0651EA0687B", + "containerId": "OuContainer1", + "accounts": [ + { + "accountName": "AccountName1", + "spn": "Spn1" + }, + { + "accountName": "AccountName2", + "spn": "Spn2" + } + ], + "serviceStatus": "Running", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/1639790a-76a2-4ac4-98d9-8562f5dfcb4d/resourceGroups/ouContainerResourceGroup/providers/Microsoft.AAD/domainServices/ouContainer.com/ouContainer/ouContainer2", + "name": "OuContainer.com/OuContainer2", + "type": "Microsoft.AAD/DomainServices/OuContainer", + "properties": { + "tenantId": "3f8cd22c-7b32-48aa-a01c-f533133b1def", + "domainName": "OuContainer.com", + "deploymentId": "0FC50BDB-AC45-48E4-BC92-F0651EA0687B", + "containerId": "OuContainer2", + "accounts": [ + { + "accountName": "AccountName3", + "spn": "Spn3" + }, + { + "accountName": "AccountName4", + "spn": "Spn4" + } + ], + "serviceStatus": "Running", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/domainservices/resource-manager/Microsoft.AAD/stable/2021-05-01/examples/UpdateDomainService.json b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2021-05-01/examples/UpdateDomainService.json new file mode 100644 index 000000000000..433a4008f0a9 --- /dev/null +++ b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2021-05-01/examples/UpdateDomainService.json @@ -0,0 +1,176 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "1639790a-76a2-4ac4-98d9-8562f5dfcb4d", + "resourceGroupName": "TestResourceGroup", + "domainServiceName": "TestDomainService.com", + "domainService": { + "properties": { + "replicaSets": [ + { + "location": "West US", + "subnetId": "/subscriptions/1639790a-76a2-4ac4-98d9-8562f5dfcb4d/resourceGroups/TestNetworkResourceGroup/providers/Microsoft.Network/virtualNetworks/TestVnetWUS/subnets/TestSubnetWUS" + }, + { + "location": "East US", + "subnetId": "/subscriptions/1639790a-76a2-4ac4-98d9-8562f5dfcb4d/resourceGroups/TestNetworkResourceGroup/providers/Microsoft.Network/virtualNetworks/TestVnetEUS/subnets/TestSubnetEUS" + } + ], + "ldapsSettings": { + "ldaps": "Enabled", + "pfxCertificate": "MIIDPDCCAiSgAwIBAgIQQUI9P6tq2p9OFIJa7DLNvTANBgkqhkiG9w0BAQsFADAgMR4w...", + "pfxCertificatePassword": "", + "externalAccess": "Enabled" + }, + "domainSecuritySettings": { + "ntlmV1": "Enabled", + "tlsV1": "Disabled", + "syncNtlmPasswords": "Enabled" + }, + "filteredSync": "Enabled", + "notificationSettings": { + "notifyGlobalAdmins": "Enabled", + "notifyDcAdmins": "Enabled", + "additionalRecipients": [ + "jicha@microsoft.com", + "caalmont@microsoft.com" + ] + }, + "configDiagnostics": { + "lastExecuted": "2021-05-05T12:00:23Z;", + "validatorResults": [ + { + "validatorId": "AADDS-CFG-DIAG-V06", + "replicaSetSubnetDisplayName": "West US/aadds-subnet", + "status": "Warning", + "issues": [ + { + "id": "AADDS-CFG-DIAG-I20", + "descriptionParams": [] + } + ] + } + ] + } + } + } + }, + "responses": { + "200": { + "description": "HTTP 200 (OK) if the operation was successful.", + "body": { + "id": "/subscriptions/1639790a-76a2-4ac4-98d9-8562f5dfcb4d/resourceGroups/TestResourceGroup/providers/Microsoft.AAD/DomainServices/TestDomainService.com", + "name": "TestDomainService.com", + "type": "Microsoft.AAD/DomainServices", + "properties": { + "version": 2, + "tenantId": "3f8cd22c-7b32-48aa-a01c-f533133b1def", + "domainName": "TestDomainService.com", + "deploymentId": "4a619871-0150-41c4-aeb4-0b10deb7940a", + "syncOwner": "4a619871-0150-41c4-aeb4-0b10deb7940a", + "replicaSets": [ + { + "replicaSetId": "4a619871-0150-41c4-aeb4-0b10deb7940a", + "location": "West US", + "vnetSiteId": "99083198-a39c-469f-972d-59017e7f078c", + "subnetId": "/subscriptions/1639790a-76a2-4ac4-98d9-8562f5dfcb4d/resourceGroups/TestNetworkResourceGroup/providers/Microsoft.Network/virtualNetworks/TestVnetWUS/subnets/TestSubnetWUS", + "domainControllerIpAddress": [ + "10.0.0.1", + "10.0.0.2" + ], + "externalAccessIpAddress": "13.64.148.151", + "serviceStatus": "Running" + }, + { + "replicaSetId": "5057347d-cad1-4ec8-8db6-66cf7eedf4b8", + "location": "East US", + "subnetId": "/subscriptions/1639790a-76a2-4ac4-98d9-8562f5dfcb4d/resourceGroups/TestNetworkResourceGroup/providers/Microsoft.Network/virtualNetworks/TestVnetEUS/subnets/TestSubnetEUS", + "domainControllerIpAddress": [ + "10.0.0.3", + "10.0.0.4" + ], + "externalAccessIpAddress": "13.64.148.152", + "serviceStatus": "Running" + } + ], + "ldapsSettings": { + "ldaps": "Enabled", + "publicCertificate": "MIIDPDCCAiSgAwIBAgIQQUI9P6tq2p9OFIJa7DLNvTANBgkqhkiG9w0BAQsFADAgMR4w...", + "certificateThumbprint": "9154A390F0C387D679E0DD040701745CDFED67F3", + "certificateNotAfter": "2018-02-15T21:43:21Z", + "externalAccess": "Enabled" + }, + "domainSecuritySettings": { + "ntlmV1": "Enabled", + "tlsV1": "Disabled", + "syncNtlmPasswords": "Enabled" + }, + "filteredSync": "Enabled", + "notificationSettings": { + "notifyGlobalAdmins": "Enabled", + "notifyDcAdmins": "Enabled", + "additionalRecipients": [ + "jicha@microsoft.com", + "caalmont@microsoft.com" + ] + }, + "provisioningState": "Succeeded" + } + } + }, + "202": { + "description": "HTTP 202 (Accepted) if the operation was successfully started and will complete asynchronously.", + "body": { + "id": "/subscriptions/1639790a-76a2-4ac4-98d9-8562f5dfcb4d/resourceGroups/TestResourceGroup/providers/Microsoft.AAD/DomainServices/TestDomainService.com", + "name": "TestDomainService.com", + "type": "Microsoft.AAD/DomainServices", + "properties": { + "version": 2, + "tenantId": "3f8cd22c-7b32-48aa-a01c-f533133b1def", + "domainName": "TestDomainService.com", + "deploymentId": "4a619871-0150-41c4-aeb4-0b10deb7940a", + "syncOwner": "4a619871-0150-41c4-aeb4-0b10deb7940a", + "replicaSets": [ + { + "replicaSetId": "4a619871-0150-41c4-aeb4-0b10deb7940a", + "location": "West US", + "vnetSiteId": "99083198-a39c-469f-972d-59017e7f078c", + "subnetId": "/subscriptions/1639790a-76a2-4ac4-98d9-8562f5dfcb4d/resourceGroups/TestNetworkResourceGroup/providers/Microsoft.Network/virtualNetworks/TestVnetWUS/subnets/TestSubnetWUS", + "domainControllerIpAddress": [ + "10.0.0.1", + "10.0.0.2" + ], + "serviceStatus": "Running" + }, + { + "location": "East US", + "subnetId": "/subscriptions/1639790a-76a2-4ac4-98d9-8562f5dfcb4d/resourceGroups/TestNetworkResourceGroup/providers/Microsoft.Network/virtualNetworks/TestVnetEUS/subnets/TestSubnetEUS" + } + ], + "ldapsSettings": { + "ldaps": "Enabled", + "publicCertificate": "MIIDPDCCAiSgAwIBAgIQQUI9P6tq2p9OFIJa7DLNvTANBgkqhkiG9w0BAQsFADAgMR4w...", + "certificateThumbprint": "9154A390F0C387D679E0DD040701745CDFED67F3", + "certificateNotAfter": "2018-02-15T21:43:21Z", + "externalAccess": "Enabled" + }, + "domainSecuritySettings": { + "ntlmV1": "Enabled", + "tlsV1": "Disabled", + "syncNtlmPasswords": "Enabled" + }, + "filteredSync": "Enabled", + "notificationSettings": { + "notifyGlobalAdmins": "Enabled", + "notifyDcAdmins": "Enabled", + "additionalRecipients": [ + "jicha@microsoft.com", + "caalmont@microsoft.com" + ] + }, + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/domainservices/resource-manager/Microsoft.AAD/stable/2021-05-01/examples/UpdateOuContainer.json b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2021-05-01/examples/UpdateOuContainer.json new file mode 100644 index 000000000000..fdfe70feff2f --- /dev/null +++ b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2021-05-01/examples/UpdateOuContainer.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "subscriptionId": "1639790a-76a2-4ac4-98d9-8562f5dfcb4d", + "resourceGroupName": "OuContainerResourceGroup", + "domainServiceName": "OuContainer.com", + "ouContainerName": "OuContainer1", + "containerAccount": { + "accountName": "AccountName1", + "spn": "Spn1", + "password": "" + } + }, + "responses": { + "200": { + "description": "HTTP 200 (OK) if the operation was successful.", + "body": { + "id": "/subscriptions/1639790a-76a2-4ac4-98d9-8562f5dfcb4d/resourceGroups/ouContainerResourceGroup/providers/Microsoft.AAD/domainServices/ouContainer.com/ouContainer/ouContainer1", + "name": "OuContainer.com/OuContainer1", + "type": "Microsoft.AAD/DomainServices/OuContainer", + "properties": { + "tenantId": "3f8cd22c-7b32-48aa-a01c-f533133b1def", + "domainName": "OuContainer.com", + "deploymentId": "0FC50BDB-AC45-48E4-BC92-F0651EA0687B", + "containerId": "OuContainer1", + "accounts": [ + { + "accountName": "AccountName1", + "spn": "Spn1" + }, + { + "accountName": "AccountName2", + "spn": "Spn2" + } + ], + "serviceStatus": "Running", + "provisioningState": "Succeeded" + } + } + }, + "202": { + "description": "HTTP 202 (Accepted) if the operation was successfully started and will complete asynchronously.", + "body": { + "id": "/subscriptions/1639790a-76a2-4ac4-98d9-8562f5dfcb4d/resourceGroups/ouContainerResourceGroup/providers/Microsoft.AAD/domainServices/ouContainer.com/ouContainer/ouContainer1", + "name": "OuContainer.com/OuContainer1", + "type": "Microsoft.AAD/DomainServices/OuContainer", + "properties": { + "tenantId": "3f8cd22c-7b32-48aa-a01c-f533133b1def", + "domainName": "OuContainer.com", + "deploymentId": "0FC50BDB-AC45-48E4-BC92-F0651EA0687B", + "containerId": "OuContainer1", + "accounts": [ + { + "accountName": "AccountName1", + "spn": "Spn1" + }, + { + "accountName": "AccountName2", + "spn": "Spn2" + } + ], + "serviceStatus": "Running", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/domainservices/resource-manager/Microsoft.AAD/stable/2021-05-01/oucontainer.json b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2021-05-01/oucontainer.json new file mode 100644 index 000000000000..b9a50bae1d69 --- /dev/null +++ b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2021-05-01/oucontainer.json @@ -0,0 +1,578 @@ +{ + "swagger": "2.0", + "info": { + "title": "Domain Services Resource Provider", + "description": "The AAD Domain Services API.", + "version": "2021-05-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": { + "/providers/Microsoft.Aad/operations": { + "get": { + "tags": [ + "OuContainer" + ], + "description": "Lists all the available OuContainer operations.", + "operationId": "OuContainerOperations_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./domainservices.json#/definitions/CloudError" + } + }, + "200": { + "description": "HTTP 200 (OK) if the operation was successful.", + "schema": { + "$ref": "#/definitions/OperationEntityListResult" + } + } + }, + "x-ms-examples": { + "Get Operations": { + "$ref": "./examples/GetOperations.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Aad/domainServices/{domainServiceName}/ouContainer": { + "get": { + "tags": [ + "OuContainer" + ], + "operationId": "OuContainer_List", + "summary": "List of OuContainers in DomainService instance", + "description": "The List of OuContainers in DomainService instance.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DomainServiceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./domainservices.json#/definitions/CloudError" + } + }, + "200": { + "description": "HTTP 200 (OK) if the operation was successful.", + "schema": { + "$ref": "#/definitions/OuContainerListResult" + } + } + }, + "x-ms-examples": { + "List of OuContainers": { + "$ref": "./examples/ListOuContainers.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Aad/domainServices/{domainServiceName}/ouContainer/{ouContainerName}": { + "get": { + "tags": [ + "OuContainer" + ], + "operationId": "OuContainer_Get", + "summary": "Get particular OuContainer in DomainService instance", + "description": "Get OuContainer in DomainService instance.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DomainServiceNameParameter" + }, + { + "$ref": "#/parameters/OuContainerNameParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./domainservices.json#/definitions/CloudError" + } + }, + "200": { + "description": "HTTP 200 (OK) if the operation was successful.", + "schema": { + "$ref": "#/definitions/OuContainer" + } + } + }, + "x-ms-examples": { + "List of OuContainers": { + "$ref": "./examples/GetOuContainer.json" + } + } + }, + "put": { + "tags": [ + "OuContainer" + ], + "operationId": "OuContainer_Create", + "summary": "Create OuContainer", + "description": "The Create OuContainer operation creates a new OuContainer under the specified Domain Service instance.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DomainServiceNameParameter" + }, + { + "$ref": "#/parameters/OuContainerNameParameter" + }, + { + "name": "containerAccount", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ContainerAccount" + }, + "description": "Container Account Description." + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./domainservices.json#/definitions/CloudError" + } + }, + "200": { + "description": "HTTP 200 (OK) if the operation was successful.", + "schema": { + "$ref": "#/definitions/OuContainer" + } + }, + "201": { + "description": "HTTP 201 (Created) if the operation completed successfully.", + "schema": { + "$ref": "#/definitions/OuContainer" + } + }, + "202": { + "description": "HTTP 202 (Accepted) if the operation was successfully started and will complete asynchronously.", + "schema": { + "$ref": "#/definitions/OuContainer" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create Domain Service": { + "$ref": "./examples/CreateOuContainer.json" + } + } + }, + "delete": { + "tags": [ + "OuContainer" + ], + "operationId": "OuContainer_Delete", + "summary": "Delete OuContainer", + "description": "The Delete OuContainer operation deletes specified OuContainer.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DomainServiceNameParameter" + }, + { + "$ref": "#/parameters/OuContainerNameParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./domainservices.json#/definitions/CloudError" + } + }, + "200": { + "description": "HTTP 200 (OK) if the operation was successful." + }, + "202": { + "description": "HTTP 202 (Accepted) if the operation was successfully started and will complete asynchronously." + }, + "204": { + "description": "HTTP 204 (Not Content) should be used if the resource does not exist and the request is well formed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete OuContainer": { + "$ref": "./examples/DeleteOuContainer.json" + } + } + }, + "patch": { + "tags": [ + "OuContainer" + ], + "operationId": "OuContainer_Update", + "summary": "Update OuContainer (PATCH Resource)", + "description": "The Update OuContainer operation can be used to update the existing OuContainers.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DomainServiceNameParameter" + }, + { + "$ref": "#/parameters/OuContainerNameParameter" + }, + { + "name": "containerAccount", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ContainerAccount" + }, + "description": "Container Account Description." + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./domainservices.json#/definitions/CloudError" + } + }, + "200": { + "description": "HTTP 200 (OK) if the operation was successful.", + "schema": { + "$ref": "#/definitions/OuContainer" + } + }, + "202": { + "description": "HTTP 202 (Accepted) if the operation was successfully started and will complete asynchronously.", + "schema": { + "$ref": "#/definitions/OuContainer" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update Domain Service": { + "$ref": "./examples/UpdateOuContainer.json" + } + } + } + } + }, + "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", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + }, + "etag": { + "type": "string", + "description": "Resource etag" + }, + "systemData": { + "readOnly": true, + "description": "The system meta data relating to this resource.", + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData" + } + }, + "x-ms-azure-resource": true + }, + "OuContainerListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/OuContainer" + }, + "description": "The list of OuContainer." + }, + "nextLink": { + "type": "string", + "description": "The continuation token for the next page of results.", + "readOnly": true + } + }, + "description": "The response from the List OuContainer operation." + }, + "OuContainer": { + "description": "Resource for OuContainer.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/OuContainerProperties", + "description": "OuContainer properties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ] + }, + "OuContainerProperties": { + "description": "Properties of the OuContainer.", + "properties": { + "tenantId": { + "readOnly": true, + "type": "string", + "description": "Azure Active Directory tenant id" + }, + "domainName": { + "readOnly": true, + "type": "string", + "description": "The domain name of Domain Services." + }, + "deploymentId": { + "readOnly": true, + "type": "string", + "description": "The Deployment id" + }, + "containerId": { + "readOnly": true, + "type": "string", + "description": "The OuContainer name" + }, + "accounts": { + "type": "array", + "items": { + "$ref": "#/definitions/ContainerAccount", + "description": "Container Account" + }, + "description": "The list of container accounts" + }, + "serviceStatus": { + "readOnly": true, + "type": "string", + "description": "Status of OuContainer instance" + }, + "distinguishedName": { + "readOnly": true, + "type": "string", + "description": "Distinguished Name of OuContainer instance" + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The current deployment or provisioning state, which only appears in the response." + } + } + }, + "ContainerAccount": { + "description": "Container Account Description", + "properties": { + "accountName": { + "type": "string", + "description": "The account name" + }, + "spn": { + "type": "string", + "description": "The account spn" + }, + "password": { + "type": "string", + "description": "The account password" + } + } + }, + "OperationEntityListResult": { + "description": "The list of domain service operation response.", + "type": "object", + "properties": { + "value": { + "description": "The list of operations.", + "type": "array", + "items": { + "$ref": "#/definitions/OperationEntity" + } + }, + "nextLink": { + "type": "string", + "description": "The continuation token for the next page of results.", + "readOnly": true + } + } + }, + "OperationEntity": { + "description": "The operation supported by Domain Services.", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}.", + "type": "string" + }, + "display": { + "$ref": "#/definitions/OperationDisplayInfo", + "description": "The operation supported by Domain Services." + }, + "origin": { + "description": "The origin of the operation.", + "type": "string" + } + } + }, + "OperationDisplayInfo": { + "description": "The operation supported by Domain Services.", + "type": "object", + "properties": { + "description": { + "description": "The description of the operation.", + "type": "string" + }, + "operation": { + "description": "The action that users can perform, based on their permission level.", + "type": "string" + }, + "provider": { + "description": "Service provider: Domain Services.", + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed.", + "type": "string" + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Gets subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client Api Version." + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group within the user's subscription. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90, + "x-ms-parameter-location": "method" + }, + "DomainServiceNameParameter": { + "name": "domainServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the domain service.", + "x-ms-parameter-location": "method" + }, + "OuContainerNameParameter": { + "name": "ouContainerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the OuContainer.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/domainservices/resource-manager/readme.azureresourceschema.md b/specification/domainservices/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 24b8ecacf69b..000000000000 --- a/specification/domainservices/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,50 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-aad-2020-01-01 - - tag: schema-aad-2017-06-01 - - tag: schema-aad-2017-01-01 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-aad-2020-01-01 and azureresourceschema - -``` yaml $(tag) == 'schema-aad-2020-01-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.AAD/stable/2020-01-01/domainservices.json - - Microsoft.AAD/stable/2020-01-01/oucontainer.json - -``` - -### Tag: schema-aad-2017-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-aad-2017-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.AAD/stable/2017-06-01/domainservices.json - - Microsoft.AAD/stable/2017-06-01/oucontainer.json - -``` - -### Tag: schema-aad-2017-01-01 and azureresourceschema - -``` yaml $(tag) == 'schema-aad-2017-01-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.AAD/stable/2017-01-01/domainservices.json - -``` diff --git a/specification/domainservices/resource-manager/readme.go.md b/specification/domainservices/resource-manager/readme.go.md index b741b3bced53..8b637fff959f 100644 --- a/specification/domainservices/resource-manager/readme.go.md +++ b/specification/domainservices/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: aad clear-output-folder: true ``` @@ -13,11 +13,21 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-2021-05 - tag: package-2020-01 - tag: package-2017-01 - tag: package-2017-06 ``` +### Tag: package-2021-05 and go + +These settings apply only when `--tag=package-2021-05 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2021-05' && $(go) +output-folder: $(go-sdk-folder)/services/domainservices/mgmt/2021-05-01/$(namespace) +``` + ### Tag: package-2020-01 and go These settings apply only when `--tag=package-2020-01 --go` is specified on the command line. diff --git a/specification/domainservices/resource-manager/readme.md b/specification/domainservices/resource-manager/readme.md index 38cddc34aeb9..ba89b29341a8 100644 --- a/specification/domainservices/resource-manager/readme.md +++ b/specification/domainservices/resource-manager/readme.md @@ -26,7 +26,16 @@ These are the global settings for the DomainServices API. ``` yaml openapi-type: arm -tag: package-2020-01 +tag: package-2021-05 +``` +### Tag: package-2021-05 + +These settings apply only when `--tag=package-2021-05` is specified on the command line. + +``` yaml $(tag) == 'package-2021-05' +input-file: +- Microsoft.AAD/stable/2021-05-01/domainservices.json +- Microsoft.AAD/stable/2021-05-01/oucontainer.json ``` ### Tag: package-2021-03 @@ -123,12 +132,26 @@ output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-domainservices ``` yaml $(java) && $(multiapi) batch: + - tag: package-2021-05 - tag: package-2021-03 - tag: package-2020-01 - tag: package-2017-06 - tag: package-2017-01 ``` +### Tag: package-2021-05 and java + +These settings apply only when `--tag=package-2021-05 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2021-05' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.domainservices.v2021_05_01 + output-folder: $(azure-libraries-for-java-folder)/sdk/domainservices/mgmt-v2021_05_01 +regenerate-manager: true +generate-interface: true +``` + ### Tag: package-2021-03 and java These settings apply only when `--tag=package-2021-03 --java` is specified on the command line. diff --git a/specification/edgeorder/resource-manager/readme.azureresourceschema.md b/specification/edgeorder/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 1c3f7c470e2b..000000000000 --- a/specification/edgeorder/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,24 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-edgeorder-2020-12-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-edgeorder-2020-12-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-edgeorder-2020-12-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.EdgeOrder/preview/2020-12-01-preview/edgeorder.json - -``` diff --git a/specification/edgeorderpartner/resource-manager/Microsoft.EdgeOrderPartner/preview/2020-12-01-preview/edgeorderpartner.json b/specification/edgeorderpartner/resource-manager/Microsoft.EdgeOrderPartner/preview/2020-12-01-preview/edgeorderpartner.json new file mode 100644 index 000000000000..f36549599067 --- /dev/null +++ b/specification/edgeorderpartner/resource-manager/Microsoft.EdgeOrderPartner/preview/2020-12-01-preview/edgeorderpartner.json @@ -0,0 +1,905 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-12-01-preview", + "title": "Edge Ordering Service-Partner" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/providers/Microsoft.EdgeOrderPartner/operations": { + "get": { + "tags": [ + "Operations" + ], + "description": "This method gets all the operations that are exposed for customer.", + "operationId": "ListOperationsPartner", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing reason for operation failure.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "ListOperationsPartner": { + "$ref": "./examples/ListOperationsPartner.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.EdgeOrderPartner/locations/{location}/productFamilies/{familyIdentifier}/inventories/{serialNumber}/manageInventoryMetadata": { + "post": { + "tags": [ + "PartnerInventory" + ], + "summary": "API for updating inventory metadata and inventory configuration", + "operationId": "ManageInventoryMetadata", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/familyIdentifierParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/locationParameter" + }, + { + "$ref": "#/parameters/serialNumberParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "manageInventoryMetadataRequest", + "in": "body", + "description": "Updates inventory metadata and inventory configuration", + "required": true, + "schema": { + "$ref": "#/definitions/ManageInventoryMetadataRequest" + } + } + ], + "responses": { + "200": { + "description": "\"Success\"" + }, + "202": { + "description": "\"Request is accepted to manage inventory metadata\"" + }, + "204": { + "description": "\"No content\"" + }, + "default": { + "description": "Error response describing reason for operation failure.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "ManageInventoryMetadata": { + "$ref": "./examples/ManageInventoryMetadata.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.EdgeOrderPartner/locations/{location}/productFamilies/{familyIdentifier}/inventories/{serialNumber}/manageLink": { + "post": { + "tags": [ + "PartnerInventory" + ], + "summary": "API for linking management resource with inventory", + "operationId": "ManageLink", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/familyIdentifierParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/locationParameter" + }, + { + "$ref": "#/parameters/serialNumberParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "manageLinkRequest", + "in": "body", + "description": "Links the management resource to the inventory", + "required": true, + "schema": { + "$ref": "#/definitions/ManageLinkRequest" + } + } + ], + "responses": { + "200": { + "description": "\"Success\"" + }, + "204": { + "description": "\"No content\"" + }, + "default": { + "description": "Error response describing reason for operation failure.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ManageLink": { + "$ref": "./examples/ManageLink.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.EdgeOrderPartner/searchInventories": { + "post": { + "tags": [ + "PartnerInventory" + ], + "summary": "API for Search inventories", + "operationId": "SearchInventories", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "searchInventoriesRequest", + "in": "body", + "description": "Searches inventories with the given filters and returns in the form of a list", + "required": true, + "schema": { + "$ref": "#/definitions/SearchInventoriesRequest" + } + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/PartnerInventoryList" + } + }, + "default": { + "description": "Error response describing reason for operation failure.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "SearchInventories": { + "$ref": "./examples/SearchInventories.json" + }, + "SearchInventoriesDetails": { + "$ref": "./examples/SearchInventoriesDetails.json" + } + } + } + } + }, + "definitions": { + "AdditionalErrorInfo": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "info": { + "type": "object" + } + } + }, + "AdditionalInventoryDetails": { + "description": "Contains additional data about inventory in dictionary format", + "type": "object", + "properties": { + "additionalData": { + "description": "Additional Data", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "readOnly": true + } + } + }, + "AdditionalOrderItemDetails": { + "description": "Contains additional order item details", + "type": "object", + "properties": { + "status": { + "$ref": "#/definitions/StageDetails", + "description": "Order item status", + "readOnly": true + }, + "subscription": { + "$ref": "#/definitions/SubscriptionDetails", + "description": "Subscription details", + "readOnly": true + } + } + }, + "BillingDetails": { + "description": "Contains billing details for the inventory", + "type": "object", + "properties": { + "billingType": { + "description": "Billing type for the inventory", + "type": "string", + "readOnly": true + }, + "status": { + "description": "Billing status for the inventory", + "type": "string", + "readOnly": true + } + } + }, + "CloudError": { + "type": "object", + "properties": { + "code": { + "type": "string" + }, + "message": { + "type": "string" + }, + "target": { + "type": "string" + }, + "details": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/CloudError" + }, + "readOnly": true + }, + "additionalInfo": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/AdditionalErrorInfo" + }, + "readOnly": true + } + }, + "x-ms-external": true + }, + "ConfigurationData": { + "description": "Contains information about inventory configuration", + "type": "object", + "properties": { + "familyIdentifier": { + "description": "Family identifier of inventory", + "type": "string", + "readOnly": true + }, + "productLineIdentifier": { + "description": "Product Line identifier of inventory", + "type": "string", + "readOnly": true + }, + "productIdentifier": { + "description": "Product identifier of inventory", + "type": "string", + "readOnly": true + }, + "configurationIdentifier": { + "description": "Configuration identifier of inventory", + "type": "string", + "readOnly": true + }, + "configurationIdentifierOnDevice": { + "description": "Configuration identifier on device - this is used in case of any mismatch\r\nbetween actual configuration on inventory and configuration stored in service", + "type": "string", + "readOnly": true + } + } + }, + "ConfigurationDetails": { + "description": "Contains additional configuration details about inventory", + "type": "object", + "properties": { + "specifications": { + "description": "Collection of specification details about the inventory", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/SpecificationDetails" + }, + "readOnly": true + } + } + }, + "ConfigurationOnDevice": { + "description": "Configuration parameters for ManageInventoryMetadata call", + "required": [ + "configurationIdentifier" + ], + "type": "object", + "properties": { + "configurationIdentifier": { + "description": "Configuration identifier on device", + "type": "string" + } + } + }, + "InventoryAdditionalDetails": { + "description": "Represents additional details about the partner inventory", + "type": "object", + "properties": { + "orderItem": { + "$ref": "#/definitions/AdditionalOrderItemDetails", + "description": "Represents additional details about the order item" + }, + "inventoryMetadata": { + "description": "Contains inventory metadata", + "type": "string", + "readOnly": true + }, + "configuration": { + "$ref": "#/definitions/ConfigurationDetails", + "description": "Represents additional details about the configuration", + "readOnly": true + }, + "inventory": { + "$ref": "#/definitions/AdditionalInventoryDetails", + "description": "Represents additional data about the inventory", + "readOnly": true + }, + "billing": { + "$ref": "#/definitions/BillingDetails", + "description": "Represents additional details about billing for the inventory", + "readOnly": true + }, + "inventorySecrets": { + "description": "Represents secrets on the inventory", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "readOnly": true + } + } + }, + "InventoryData": { + "description": "Contains basic information about inventory", + "type": "object", + "properties": { + "status": { + "description": "Inventory status", + "type": "string", + "readOnly": true + }, + "location": { + "description": "Inventory location", + "type": "string", + "readOnly": true + }, + "registrationAllowed": { + "description": "Boolean flag to indicate if registration is allowed", + "type": "boolean", + "readOnly": true + } + } + }, + "InventoryProperties": { + "description": "Represents inventory properties", + "type": "object", + "properties": { + "serialNumber": { + "description": "Serial number of the device.", + "type": "string", + "readOnly": true + }, + "orderItem": { + "$ref": "#/definitions/OrderItemData", + "description": "Represents basic order item data.", + "readOnly": true + }, + "configuration": { + "$ref": "#/definitions/ConfigurationData", + "description": "Represents basic configuration data.", + "readOnly": true + }, + "managementResource": { + "$ref": "#/definitions/ManagementResourceData", + "description": "Represents management resource data associated with inventory.", + "readOnly": true + }, + "inventory": { + "$ref": "#/definitions/InventoryData", + "description": "Represents basic inventory data.", + "readOnly": true + }, + "location": { + "description": "Location of inventory", + "type": "string", + "readOnly": true + }, + "details": { + "$ref": "#/definitions/InventoryAdditionalDetails", + "description": "Represents additional details of inventory", + "readOnly": true + } + } + }, + "ManageInventoryMetadataRequest": { + "description": "Request body for ManageInventoryMetadata call", + "required": [ + "inventoryMetadata" + ], + "type": "object", + "properties": { + "inventoryMetadata": { + "description": "Inventory metadata to be updated", + "type": "string" + }, + "configurationOnDevice": { + "$ref": "#/definitions/ConfigurationOnDevice", + "description": "Inventory configuration to be updated" + } + } + }, + "ManageLinkRequest": { + "description": "Request body for ManageLink call", + "required": [ + "managementResourceArmId", + "operation", + "tenantId" + ], + "type": "object", + "properties": { + "managementResourceArmId": { + "description": "Arm Id of the management resource to which inventory is to be linked\r\nFor unlink operation, enter empty string", + "type": "string" + }, + "operation": { + "description": "Operation to be performed - Link, Unlink, Relink", + "enum": [ + "Link", + "Unlink", + "Relink" + ], + "type": "string", + "x-ms-enum": { + "name": "ManageLinkOperation", + "modelAsExtensible": true, + "values": [ + { + "value": "Link", + "description": "Link." + }, + { + "value": "Unlink", + "description": "Unlink." + }, + { + "value": "Relink", + "description": "Relink." + } + ] + } + }, + "tenantId": { + "description": "Tenant ID of management resource associated with inventory", + "type": "string" + } + } + }, + "ManagementResourceData": { + "description": "Contains information about management resource", + "type": "object", + "properties": { + "armId": { + "description": "Arm ID of management resource associated with inventory", + "type": "string", + "readOnly": true + }, + "tenantId": { + "description": "Tenant ID of management resource associated with inventory", + "type": "string", + "readOnly": true + } + } + }, + "OrderItemData": { + "description": "Contains information about the order item to which inventory belongs", + "type": "object", + "properties": { + "armId": { + "description": "Arm ID of order item", + "type": "string", + "readOnly": true + }, + "orderItemType": { + "description": "Order item type - purchase or rental", + "enum": [ + "Purchase", + "Rental" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "OrderItemType", + "modelAsExtensible": true, + "values": [ + { + "value": "Purchase", + "description": "Purchase OrderItem." + }, + { + "value": "Rental", + "description": "Rental OrderItem." + } + ] + } + } + } + }, + "StageDetails": { + "description": "Resource stage details.", + "type": "object", + "properties": { + "stageStatus": { + "description": "Stage status.", + "enum": [ + "None", + "InProgress", + "Succeeded", + "Failed", + "Cancelled", + "Cancelling" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "StageStatus", + "modelAsExtensible": true, + "values": [ + { + "value": "None", + "description": "No status available yet." + }, + { + "value": "InProgress", + "description": "Stage is in progress." + }, + { + "value": "Succeeded", + "description": "Stage has succeeded." + }, + { + "value": "Failed", + "description": "Stage has failed." + }, + { + "value": "Cancelled", + "description": "Stage has been cancelled." + }, + { + "value": "Cancelling", + "description": "Stage is cancelling." + } + ] + } + }, + "stageName": { + "description": "Stage name", + "enum": [ + "DeviceOrdered", + "DevicePrepared", + "PickedUp", + "AtAzureDC", + "DataCopy", + "Completed", + "CompletedWithErrors", + "Cancelled", + "Aborted", + "CompletedWithWarnings", + "ReadyToDispatchFromAzureDC", + "ReadyToReceiveAtAzureDC", + "Placed", + "InReview", + "Confirmed", + "ReadyForDispatch", + "Shipped", + "Delivered", + "InUse" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "StageName", + "modelAsExtensible": true, + "values": [ + { + "value": "DeviceOrdered", + "description": "An order has been created." + }, + { + "value": "DevicePrepared", + "description": "A device has been prepared for the order." + }, + { + "value": "PickedUp", + "description": "Device has been picked up from user and in transit to Azure datacenter." + }, + { + "value": "AtAzureDC", + "description": "Device has been received at Azure datacenter from the user." + }, + { + "value": "DataCopy", + "description": "Data copy from the device at Azure datacenter." + }, + { + "value": "Completed", + "description": "Order has completed." + }, + { + "value": "CompletedWithErrors", + "description": "Order has completed with errors." + }, + { + "value": "Cancelled", + "description": "Order has been cancelled." + }, + { + "value": "Aborted", + "description": "Order has been aborted." + }, + { + "value": "Current" + }, + { + "value": "CompletedWithWarnings", + "description": "Order has completed with warnings." + }, + { + "value": "ReadyToDispatchFromAzureDC", + "description": "Device is ready to be handed to customer from Azure DC." + }, + { + "value": "ReadyToReceiveAtAzureDC", + "description": "Device can be dropped off at Azure DC." + }, + { + "value": "Placed", + "description": "Currently in draft mode and can still be cancelled" + }, + { + "value": "InReview", + "description": "Order is currently in draft mode and can still be cancelled" + }, + { + "value": "Confirmed", + "description": "Order is confirmed" + }, + { + "value": "ReadyForDispatch", + "description": "Order is ready for dispatch" + }, + { + "value": "Shipped", + "description": "Order is in transit to customer" + }, + { + "value": "Delivered", + "description": "Order is delivered to customer" + }, + { + "value": "InUse", + "description": "Order is in use at customer site" + } + ] + } + }, + "displayName": { + "description": "Display name of the resource stage.", + "type": "string", + "readOnly": true + }, + "startTime": { + "format": "date-time", + "description": "Stage start time", + "type": "string", + "readOnly": true + } + } + }, + "PartnerInventory": { + "description": "Represents partner inventory contract", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/InventoryProperties", + "description": "Inventory properties", + "readOnly": true, + "x-ms-client-flatten": true + } + } + }, + "PartnerInventoryList": { + "description": "Represents the list of partner inventories", + "type": "object", + "properties": { + "value": { + "description": "List of partner inventories", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/PartnerInventory" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link for the next set of partner inventories.", + "type": "string" + } + } + }, + "SearchInventoriesRequest": { + "description": "Request body for SearchInventories call", + "required": [ + "serialNumber", + "familyIdentifier" + ], + "type": "object", + "properties": { + "serialNumber": { + "description": "Serial number of the inventory", + "type": "string" + }, + "familyIdentifier": { + "description": "Family identifier for inventory", + "type": "string" + } + } + }, + "SpecificationDetails": { + "description": "Specification details for the inventory", + "type": "object", + "properties": { + "name": { + "description": "Name of the specification property", + "type": "string", + "readOnly": true + }, + "value": { + "description": "Value of the specification property", + "type": "string", + "readOnly": true + } + } + }, + "SubscriptionDetails": { + "description": "Contains subscription details", + "type": "object", + "properties": { + "id": { + "description": "Subscription Id", + "type": "string", + "readOnly": true + }, + "state": { + "description": "Subscription State", + "type": "string", + "readOnly": true + }, + "quotaId": { + "description": "Subscription QuotaId", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "familyIdentifierParameter": { + "name": "familyIdentifier", + "in": "path", + "description": "Unique identifier for the product family", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "locationParameter": { + "name": "location", + "in": "path", + "description": "The location of the resource", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "serialNumberParameter": { + "name": "serialNumber", + "in": "path", + "description": "The serial number of the device", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + }, + "securityDefinitions": { + "azure_auth": { + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow" + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/edgeorderpartner/resource-manager/Microsoft.EdgeOrderPartner/preview/2020-12-01-preview/examples/ListOperationsPartner.json b/specification/edgeorderpartner/resource-manager/Microsoft.EdgeOrderPartner/preview/2020-12-01-preview/examples/ListOperationsPartner.json new file mode 100644 index 000000000000..8643c095d423 --- /dev/null +++ b/specification/edgeorderpartner/resource-manager/Microsoft.EdgeOrderPartner/preview/2020-12-01-preview/examples/ListOperationsPartner.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2020-12-01-preview", + "User-Agent": [ + "vscode-restclient" + ], + "Referer": [ + "https://localhost/providers/Microsoft.EdgeOrderPartner/operations?api-version=2020-12-01-preview" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.EdgeOrderPartner/operations/read", + "display": { + "provider": "Edge Ordering", + "resource": "Operations", + "operation": "List or Get Operations", + "description": "List or get the Operations" + }, + "origin": "user", + "isDataAction": false + }, + { + "name": "Microsoft.EdgeOrderPartner/searchInventories/action", + "display": { + "provider": "Edge Ordering", + "resource": "ArmApiRes_Microsoft.EdgeOrderPartner" + }, + "origin": "user", + "isDataAction": true + }, + { + "name": "Microsoft.EdgeOrderPartner/locations/productFamilies/inventories/manageLink/action", + "display": { + "provider": "Edge Ordering", + "resource": "ArmApiRes_inventories" + }, + "origin": "user", + "isDataAction": true + }, + { + "name": "Microsoft.EdgeOrderPartner/locations/productFamilies/inventories/manageInventoryMetadata/action", + "display": { + "provider": "Edge Ordering", + "resource": "ArmApiRes_inventories" + }, + "origin": "user", + "isDataAction": true + } + ] + } + } + } +} diff --git a/specification/edgeorderpartner/resource-manager/Microsoft.EdgeOrderPartner/preview/2020-12-01-preview/examples/ManageInventoryMetadata.json b/specification/edgeorderpartner/resource-manager/Microsoft.EdgeOrderPartner/preview/2020-12-01-preview/examples/ManageInventoryMetadata.json new file mode 100644 index 000000000000..284e53438bf0 --- /dev/null +++ b/specification/edgeorderpartner/resource-manager/Microsoft.EdgeOrderPartner/preview/2020-12-01-preview/examples/ManageInventoryMetadata.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "b783ea86-c85c-4175-b76d-3992656af50d", + "location": "westus", + "serialNumber": "SerialNumber1", + "familyIdentifier": "AzureStackEdge", + "api-version": "2020-12-01-preview", + "User-Agent": [ + "vscode-restclient" + ], + "Referer": [ + "https://localhost/subscriptions/b783ea86-c85c-4175-b76d-3992656af50d/providers/Microsoft.EdgeOrderPartner/locations/westus/productFamilies/AzureStackEdge/inventories/SerialNumber1/manageInventoryMetadata?api-version=2020-12-01-preview" + ], + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "181" + ], + "manageInventoryMetadataRequest": { + "inventoryMetadata": "InventoryMetadata", + "configurationOnDevice": { + "configurationIdentifier": "EdgeP_High" + } + } + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/edgeorderpartner/resource-manager/Microsoft.EdgeOrderPartner/preview/2020-12-01-preview/examples/ManageLink.json b/specification/edgeorderpartner/resource-manager/Microsoft.EdgeOrderPartner/preview/2020-12-01-preview/examples/ManageLink.json new file mode 100644 index 000000000000..84903165558c --- /dev/null +++ b/specification/edgeorderpartner/resource-manager/Microsoft.EdgeOrderPartner/preview/2020-12-01-preview/examples/ManageLink.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "b783ea86-c85c-4175-b76d-3992656af50d", + "location": "westus", + "serialNumber": "SerialNumber1", + "familyIdentifier": "AzureStackEdge", + "api-version": "2020-12-01-preview", + "User-Agent": [ + "vscode-restclient" + ], + "Referer": [ + "https://localhost/subscriptions/b783ea86-c85c-4175-b76d-3992656af50d/providers/Microsoft.EdgeOrderPartner/locations/westus/productFamilies/AzureStackEdge/inventories/SerialNumber1/manageLink?api-version=2020-12-01-preview" + ], + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "144" + ], + "manageLinkRequest": { + "managementResourceArmId": "/subscriptions/c783ea86-c85c-4175-b76d-3992656af50d/resourceGroups/EdgeTestRG/providers/Microsoft.DataBoxEdge/DataBoxEdgeDevices/TestEdgeDeviceName1", + "operation": "Link", + "tenantId": "a783ea86-c85c-4175-b76d-3992656af50d" + } + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/edgeorderpartner/resource-manager/Microsoft.EdgeOrderPartner/preview/2020-12-01-preview/examples/SearchInventories.json b/specification/edgeorderpartner/resource-manager/Microsoft.EdgeOrderPartner/preview/2020-12-01-preview/examples/SearchInventories.json new file mode 100644 index 000000000000..9ce882e16954 --- /dev/null +++ b/specification/edgeorderpartner/resource-manager/Microsoft.EdgeOrderPartner/preview/2020-12-01-preview/examples/SearchInventories.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "subscriptionId": "b783ea86-c85c-4175-b76d-3992656af50d", + "api-version": "2020-12-01-preview", + "User-Agent": [ + "vscode-restclient" + ], + "Referer": [ + "https://localhost/subscriptions/b783ea86-c85c-4175-b76d-3992656af50d/providers/Microsoft.EdgeOrderPartner/searchInventories?api-version=2020-12-01-preview" + ], + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "75" + ], + "searchInventoriesRequest": { + "serialNumber": "SerialNumber1", + "familyIdentifier": "AzureStackEdge" + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "serialNumber": "SerialNumber1", + "location": "westus", + "orderItem": { + "armId": "/subscriptions/b783ea86-c85c-4175-b76d-3992656af50d/resourceGroups/TestRG/providers/Microsoft.EdgeOrder/orders/TestOrderName1", + "orderItemType": "Rental" + }, + "configuration": { + "familyIdentifier": "AzureStackEdge", + "productLineIdentifier": "AzureStackEdgePL", + "productIdentifier": "AzureStackEdgeProGPU", + "configurationIdentifier": "EdgeP_Base", + "configurationIdentifierOnDevice": "EdgeP_High" + }, + "managementResource": { + "armId": "/subscriptions/c783ea86-c85c-4175-b76d-3992656af50d/resourceGroups/EdgeTestRG/providers/Microsoft.DataBoxEdge/DataBoxEdgeDevices/TestEdgeDeviceName1", + "tenantId": "a783ea86-c85c-4175-b76d-3992656af50d" + }, + "inventory": { + "status": "Healthy", + "location": "Rack", + "registrationAllowed": true + } + } + } + ] + } + } + } +} diff --git a/specification/edgeorderpartner/resource-manager/Microsoft.EdgeOrderPartner/preview/2020-12-01-preview/examples/SearchInventoriesDetails.json b/specification/edgeorderpartner/resource-manager/Microsoft.EdgeOrderPartner/preview/2020-12-01-preview/examples/SearchInventoriesDetails.json new file mode 100644 index 000000000000..46191693dbae --- /dev/null +++ b/specification/edgeorderpartner/resource-manager/Microsoft.EdgeOrderPartner/preview/2020-12-01-preview/examples/SearchInventoriesDetails.json @@ -0,0 +1,102 @@ +{ + "parameters": { + "subscriptionId": "b783ea86-c85c-4175-b76d-3992656af50d", + "api-version": "2020-12-01-preview", + "$expand": "details", + "User-Agent": [ + "vscode-restclient" + ], + "Referer": [ + "https://localhost/subscriptions/b783ea86-c85c-4175-b76d-3992656af50d/providers/Microsoft.EdgeOrderPartner/searchInventories?api-version=2020-12-01-preview&$expand=details" + ], + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "75" + ], + "searchInventoriesRequest": { + "serialNumber": "SerialNumber1", + "familyIdentifier": "AzureStackEdge" + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "serialNumber": "SerialNumber1", + "location": "westus", + "orderItem": { + "armId": "/subscriptions/b783ea86-c85c-4175-b76d-3992656af50d/resourceGroups/TestRG/providers/Microsoft.EdgeOrder/orders/TestOrderName1", + "orderItemType": "Rental" + }, + "configuration": { + "familyIdentifier": "AzureStackEdge", + "productLineIdentifier": "AzureStackEdgePL", + "productIdentifier": "AzureStackEdgeProGPU", + "configurationIdentifier": "EdgeP_Base", + "configurationIdentifierOnDevice": "EdgeP_High" + }, + "managementResource": { + "armId": "/subscriptions/c783ea86-c85c-4175-b76d-3992656af50d/resourceGroups/EdgeTestRG/providers/Microsoft.DataBoxEdge/DataBoxEdgeDevices/TestEdgeDeviceName1", + "tenantId": "a783ea86-c85c-4175-b76d-3992656af50d" + }, + "inventory": { + "status": "Healthy", + "location": "Rack", + "registrationAllowed": true + }, + "details": { + "orderItem": { + "status": { + "stageStatus": "Succeeded", + "stageName": "Delivered", + "displayName": "Delivered - Succeeded", + "startTime": "2020-08-07T10:50:36.3341513+05:30" + }, + "subscription": { + "id": "b783ea86-c85c-4175-b76d-3992656af50d", + "state": "Registered", + "quotaId": "Internal_2014-09-01" + } + }, + "inventoryMetadata": "This is currently in Japan", + "configuration": { + "specifications": [ + { + "name": "Cores", + "value": "24" + }, + { + "name": "Memory", + "value": "128 GB" + }, + { + "name": "Storage", + "value": "~8 TB" + } + ] + }, + "inventory": { + "additionalData": { + "SourceCountry": "USA", + "ManuacturingYear": "2020" + } + }, + "billing": { + "billingType": "Pav2", + "status": "InProgress" + }, + "inventorySecrets": { + "PublicCert": "" + } + } + } + } + ] + } + } + } +} diff --git a/specification/edgeorderpartner/resource-manager/readme.md b/specification/edgeorderpartner/resource-manager/readme.md new file mode 100644 index 000000000000..e6f66db1535b --- /dev/null +++ b/specification/edgeorderpartner/resource-manager/readme.md @@ -0,0 +1,41 @@ +# EdgeOrderPartner + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for EdgeOrderPartner. + + + +--- +## Getting Started +To build the SDK for EdgeOrderPartner, 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 EdgeOrderPartner API. + +``` yaml +title: Edge Order Partner API's +openapi-type: arm +tag: package-2020-12-preview +``` + +### Tag: package-2020-12-preview + +These settings apply only when `--tag=package-2020-12-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2020-12-preview' +input-file: +- Microsoft.EdgeOrderPartner/preview/2020-12-01-preview/edgeorderpartner.json +``` +--- \ No newline at end of file diff --git a/specification/elastic/resource-manager/Microsoft.Elastic/preview/2020-07-01-preview/elastic.json b/specification/elastic/resource-manager/Microsoft.Elastic/preview/2020-07-01-preview/elastic.json index 6de31a676f3a..f86884a05375 100644 --- a/specification/elastic/resource-manager/Microsoft.Elastic/preview/2020-07-01-preview/elastic.json +++ b/specification/elastic/resource-manager/Microsoft.Elastic/preview/2020-07-01-preview/elastic.json @@ -657,6 +657,149 @@ } } } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Elastic/monitors/{monitorName}/listVMHost": { + "post": { + "tags": [ + "VMHHostList" + ], + "summary": "List the vm resources currently being monitored by the Elastic monitor resource.", + "operationId": "VMHost_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/MonitorNameParameter" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/VMHostListResponse" + } + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "#/definitions/ResourceProviderDefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "VMHost_List": { + "$ref": "./examples/VMHost_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Elastic/monitors/{monitorName}/vmIngestionDetails": { + "post": { + "tags": [ + "VMIngestionDetails" + ], + "summary": "List the vm ingestion details that will be monitored by the Elastic monitor resource.", + "operationId": "VMIngestion_Details", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/MonitorNameParameter" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/VMIngestionDetailsResponse" + } + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "#/definitions/ResourceProviderDefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "VMIngestion_Details": { + "$ref": "./examples/VMIngestion_Details.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Elastic/monitors/{monitorName}/vmCollectionUpdate": { + "post": { + "tags": [ + "VMCollectionUpdate" + ], + "summary": "Update the vm details that will be monitored by the Elastic monitor resource.", + "operationId": "VMCollection_Update", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/MonitorNameParameter" + }, + { + "in": "body", + "name": "body", + "description": "VM resource Id", + "schema": { + "$ref": "#/definitions/VMCollectionUpdate" + } + } + ], + "responses": { + "200": { + "description": "Success" + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "#/definitions/ResourceProviderDefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "VMCollection_Update": { + "$ref": "./examples/VMCollection_Update.json" + } + } + } } }, "definitions": { @@ -1308,6 +1451,76 @@ "readOnly": true } } + }, + "VMHostListResponse": { + "description": "Response of a list operation.", + "type": "object", + "properties": { + "value": { + "description": "Results of a list operation.", + "type": "array", + "items": { + "$ref": "#/definitions/VMResources" + } + }, + "nextLink": { + "description": "Link to the next Vm resource Id, if any.", + "type": "string" + } + } + }, + "VMResources": { + "description": "The vm resource properties that is currently being monitored by the Elastic monitor resource.", + "type": "object", + "properties": { + "vmResourceId": { + "description": "The ARM id of the VM resource.", + "type": "string" + } + } + }, + "VMIngestionDetailsResponse": { + "description": "The vm ingestion details to install an agent.", + "type": "object", + "properties": { + "cloudId": { + "description": "The cloudId of given Elastic monitor resource.", + "type": "string" + }, + "ingestionKey": { + "description": "Ingestion details to install agent on given VM.", + "type": "string", + "x-ms-secret": true + } + } + }, + "OperationName": { + "enum": [ + "Add", + "Delete" + ], + "type": "string", + "description": "Operation to be performed on the given vm resource id.", + "title": "OperationName", + "x-ms-enum": { + "modelAsString": true, + "name": "OperationName" + } + }, + "VMCollectionUpdate": { + "description": "Update VM resource collection.", + "type": "object", + "x-ms-azure-resource": true, + "properties": { + "vmResourceId": { + "description": "ARM id of the VM resource.", + "type": "string" + }, + "operationName": { + "description": "Operation to be performed for given VM.", + "$ref": "#/definitions/OperationName" + } + } } }, "parameters": { diff --git a/specification/elastic/resource-manager/Microsoft.Elastic/preview/2020-07-01-preview/examples/VMCollection_Update.json b/specification/elastic/resource-manager/Microsoft.Elastic/preview/2020-07-01-preview/examples/VMCollection_Update.json new file mode 100644 index 000000000000..a2fc250b87b5 --- /dev/null +++ b/specification/elastic/resource-manager/Microsoft.Elastic/preview/2020-07-01-preview/examples/VMCollection_Update.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2020-07-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "monitorName": "myMonitor", + "requestBody": { + "vmResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualmachines/myVM", + "operationName": "Add" + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/elastic/resource-manager/Microsoft.Elastic/preview/2020-07-01-preview/examples/VMHost_List.json b/specification/elastic/resource-manager/Microsoft.Elastic/preview/2020-07-01-preview/examples/VMHost_List.json new file mode 100644 index 000000000000..4187999e0774 --- /dev/null +++ b/specification/elastic/resource-manager/Microsoft.Elastic/preview/2020-07-01-preview/examples/VMHost_List.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2020-07-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "monitorName": "myMonitor" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "vmResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualmachines/myVM" + } + ] + } + } + } +} diff --git a/specification/elastic/resource-manager/Microsoft.Elastic/preview/2020-07-01-preview/examples/VMIngestion_Details.json b/specification/elastic/resource-manager/Microsoft.Elastic/preview/2020-07-01-preview/examples/VMIngestion_Details.json new file mode 100644 index 000000000000..b36dd66670b0 --- /dev/null +++ b/specification/elastic/resource-manager/Microsoft.Elastic/preview/2020-07-01-preview/examples/VMIngestion_Details.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "api-version": "2020-07-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "monitorName": "myMonitor" + }, + "responses": { + "200": { + "body": { + "cloudId": "myid123", + "ingestionKey": "Vmingeationkey" + } + } + } +} diff --git a/specification/elastic/resource-manager/readme.az.md b/specification/elastic/resource-manager/readme.az.md index 861172c17a99..6b8c84d1dc8d 100644 --- a/specification/elastic/resource-manager/readme.az.md +++ b/specification/elastic/resource-manager/readme.az.md @@ -11,7 +11,7 @@ az: package-name: azure-mgmt-elastic az-output-folder: $(azure-cli-extension-folder)/src/elastic python-sdk-output-folder: "$(az-output-folder)/azext_elastic/vendored_sdks/elastic" -# add additinal configuration here specific for Azure CLI +# add additional configuration here specific for Azure CLI # refer to the faq.md for more details ``` diff --git a/specification/elastic/resource-manager/readme.azureresourceschema.md b/specification/elastic/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index b91e51939ef8..000000000000 --- a/specification/elastic/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,23 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-elastic-2020-07-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-elastic-2020-07-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-elastic-2020-07-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Elastic/preview/2020-07-01-preview/elastic.json -``` diff --git a/specification/elastic/resource-manager/readme.csharp.md b/specification/elastic/resource-manager/readme.csharp.md index dffa1cd64c3a..aeb042416b76 100644 --- a/specification/elastic/resource-manager/readme.csharp.md +++ b/specification/elastic/resource-manager/readme.csharp.md @@ -7,9 +7,8 @@ Please also specify `--csharp-sdks-folder=`. - -### Tag: schema-engagementfabric-2018-09-01 and azureresourceschema - -``` yaml $(tag) == 'schema-engagementfabric-2018-09-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.EngagementFabric/preview/2018-09-01/EngagementFabric.json - -``` diff --git a/specification/engagementfabric/resource-manager/readme.go.md b/specification/engagementfabric/resource-manager/readme.go.md index c7fb7ff921f9..fb38e49db118 100644 --- a/specification/engagementfabric/resource-manager/readme.go.md +++ b/specification/engagementfabric/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: engagementfabric clear-output-folder: true ``` diff --git a/specification/engagementfabric/resource-manager/readme.md b/specification/engagementfabric/resource-manager/readme.md index c34f5beb220e..76371d05585f 100644 --- a/specification/engagementfabric/resource-manager/readme.md +++ b/specification/engagementfabric/resource-manager/readme.md @@ -60,8 +60,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_engagement_fabric'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js engagementfabric/resource-manager ``` @@ -127,7 +125,5 @@ payload-flattening-threshold: 1 output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-engagementfabric ``` -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/eventgrid/data-plane/Microsoft.AgFoodPlatform/stable/2018-01-01/AzureFarmBeats.json b/specification/eventgrid/data-plane/Microsoft.AgFoodPlatform/stable/2018-01-01/AzureFarmBeats.json new file mode 100644 index 000000000000..00698ac5754d --- /dev/null +++ b/specification/eventgrid/data-plane/Microsoft.AgFoodPlatform/stable/2018-01-01/AzureFarmBeats.json @@ -0,0 +1,821 @@ +{ + "swagger": "2.0", + "info": { + "title": "Schema of Azure FarmBeats events published to Azure Event Grid", + "description": "Describes the schema of the Azure FarmBeats Configuration events published to Azure Event Grid. This corresponds to the Data property of an EventGridEvent.", + "version": "2018-01-01" + }, + "paths": {}, + "definitions": { + "AgriFoodFarmingResourceActionType": { + "description": "Action occurred on a resource.", + "enum": [ + "Created", + "Updated", + "Deleted" + ], + "type": "string", + "x-ms-enum": { + "name": "AgriFoodFarmingResourceActionType", + "modelAsString": true + } + }, + "AgriFoodFarmingBoundaryChangedEventData": { + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.AgFoodPlatform.BoundaryChanged event.", + "type": "object", + "properties": { + "farmerId": { + "description": "Id of the farmer it belongs to.", + "type": "string" + }, + "parentId": { + "description": "Id of the parent(field or seasonalField) it belongs to.", + "type": "string" + }, + "parentType": { + "description": "Type of the parent it belongs to.", + "type": "string" + }, + "isPrimary": { + "description": "A boolean flag indicating whether the boundary is primary or not.", + "type": "boolean" + }, + "actionType": { + "$ref": "#/definitions/AgriFoodFarmingResourceActionType" + }, + "status": { + "description": "Status of the resource.", + "type": "string" + }, + "modifiedDateTime": { + "format": "date-time", + "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string" + }, + "eTag": { + "description": "The ETag value to implement optimistic concurrency.", + "type": "string" + }, + "id": { + "description": "Unique id of resource.", + "type": "string" + }, + "name": { + "description": "Name to identify resource.", + "type": "string" + }, + "description": { + "description": "Textual description of resource.", + "type": "string" + }, + "createdDateTime": { + "format": "date-time", + "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string" + }, + "properties": { + "description": "A list of key value pairs that describe the resource.\r\nOnly string and numeral values are supported.", + "type": "object", + "additionalProperties": { + "type": "object" + } + } + } + }, + "AgriFoodFarmingCropChangedEventData": { + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.AgFoodPlatform.CropChanged event.", + "type": "object", + "properties": { + "actionType": { + "$ref": "#/definitions/AgriFoodFarmingResourceActionType" + }, + "status": { + "description": "Status of the resource.", + "type": "string" + }, + "modifiedDateTime": { + "format": "date-time", + "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string" + }, + "eTag": { + "description": "The ETag value to implement optimistic concurrency.", + "type": "string" + }, + "id": { + "description": "Unique id of resource.", + "type": "string" + }, + "name": { + "description": "Name to identify resource.", + "type": "string" + }, + "description": { + "description": "Textual description of resource.", + "type": "string" + }, + "createdDateTime": { + "format": "date-time", + "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string" + }, + "properties": { + "description": "A list of key value pairs that describe the resource.\r\nOnly string and numeral values are supported.", + "type": "object", + "additionalProperties": { + "type": "object" + } + } + } + }, + "AgriFoodFarmingCropVarietyChangedEventData": { + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.AgFoodPlatform.CropVarietyChanged event.", + "type": "object", + "properties": { + "cropId": { + "description": "Id of the crop it belongs to.", + "type": "string" + }, + "actionType": { + "$ref": "#/definitions/AgriFoodFarmingResourceActionType" + }, + "status": { + "description": "Status of the resource.", + "type": "string" + }, + "modifiedDateTime": { + "format": "date-time", + "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string" + }, + "eTag": { + "description": "The ETag value to implement optimistic concurrency.", + "type": "string" + }, + "id": { + "description": "Unique id of resource.", + "type": "string" + }, + "name": { + "description": "Name to identify resource.", + "type": "string" + }, + "description": { + "description": "Textual description of resource.", + "type": "string" + }, + "createdDateTime": { + "format": "date-time", + "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string" + }, + "properties": { + "description": "A list of key value pairs that describe the resource.\r\nOnly string and numeral values are supported.", + "type": "object", + "additionalProperties": { + "type": "object" + } + } + } + }, + "AgriFoodFarmingFarmChangedEventData": { + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.AgFoodPlatform.FarmChanged event.", + "type": "object", + "properties": { + "farmerId": { + "description": "Id of the farmer it belongs to.", + "type": "string" + }, + "actionType": { + "$ref": "#/definitions/AgriFoodFarmingResourceActionType" + }, + "status": { + "description": "Status of the resource.", + "type": "string" + }, + "modifiedDateTime": { + "format": "date-time", + "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string" + }, + "eTag": { + "description": "The ETag value to implement optimistic concurrency.", + "type": "string" + }, + "id": { + "description": "Unique id of resource.", + "type": "string" + }, + "name": { + "description": "Name to identify resource.", + "type": "string" + }, + "description": { + "description": "Textual description of resource.", + "type": "string" + }, + "createdDateTime": { + "format": "date-time", + "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string" + }, + "properties": { + "description": "A list of key value pairs that describe the resource.\r\nOnly string and numeral values are supported.", + "type": "object", + "additionalProperties": { + "type": "object" + } + } + } + }, + "AgriFoodFarmingFarmerChangedEventData": { + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.AgFoodPlatform.FarmerChanged event.", + "type": "object", + "properties": { + "actionType": { + "$ref": "#/definitions/AgriFoodFarmingResourceActionType" + }, + "status": { + "description": "Status of the resource.", + "type": "string" + }, + "modifiedDateTime": { + "format": "date-time", + "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string" + }, + "eTag": { + "description": "The ETag value to implement optimistic concurrency.", + "type": "string" + }, + "id": { + "description": "Unique id of resource.", + "type": "string" + }, + "name": { + "description": "Name to identify resource.", + "type": "string" + }, + "description": { + "description": "Textual description of resource.", + "type": "string" + }, + "createdDateTime": { + "format": "date-time", + "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string" + }, + "properties": { + "description": "A list of key value pairs that describe the resource.\r\nOnly string and numeral values are supported.", + "type": "object", + "additionalProperties": { + "type": "object" + } + } + } + }, + "AgriFoodFarmingFieldChangedEventData": { + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.AgFoodPlatform.FieldChanged event.", + "type": "object", + "properties": { + "farmerId": { + "description": "Farmer Id.", + "type": "string" + }, + "farmId": { + "description": "Id of the associated Farm.", + "type": "string" + }, + "actionType": { + "$ref": "#/definitions/AgriFoodFarmingResourceActionType" + }, + "status": { + "description": "Status of the resource.", + "type": "string" + }, + "modifiedDateTime": { + "format": "date-time", + "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string" + }, + "eTag": { + "description": "The ETag value to implement optimistic concurrency.", + "type": "string" + }, + "id": { + "description": "Unique id of resource.", + "type": "string" + }, + "name": { + "description": "Name to identify resource.", + "type": "string" + }, + "description": { + "description": "Textual description of resource.", + "type": "string" + }, + "createdDateTime": { + "format": "date-time", + "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string" + }, + "properties": { + "description": "A list of key value pairs that describe the resource.\r\nOnly string and numeral values are supported.", + "type": "object", + "additionalProperties": { + "type": "object" + } + } + } + }, + "AgriFoodFarmingSeasonalFieldChangedEventData": { + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.AgFoodPlatform.SeasonalFieldChanged event.", + "type": "object", + "properties": { + "farmerId": { + "description": "Id of the farmer it belongs to.", + "type": "string" + }, + "seasonId": { + "description": "Id of the season it belongs to.", + "type": "string" + }, + "fieldId": { + "description": "Id of the field it belongs to.", + "type": "string" + }, + "farmId": { + "description": "Id of the associated Farm.", + "type": "string" + }, + "actionType": { + "$ref": "#/definitions/AgriFoodFarmingResourceActionType" + }, + "status": { + "description": "Status of the resource.", + "type": "string" + }, + "modifiedDateTime": { + "format": "date-time", + "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string" + }, + "eTag": { + "description": "The ETag value to implement optimistic concurrency.", + "type": "string" + }, + "id": { + "description": "Unique id of resource.", + "type": "string" + }, + "name": { + "description": "Name to identify resource.", + "type": "string" + }, + "description": { + "description": "Textual description of resource.", + "type": "string" + }, + "createdDateTime": { + "format": "date-time", + "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string" + }, + "properties": { + "description": "A list of key value pairs that describe the resource.\r\nOnly string and numeral values are supported.", + "type": "object", + "additionalProperties": { + "type": "object" + } + } + } + }, + "AgriFoodFarmingSeasonChangedEventData": { + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.AgFoodPlatform.SeasonChanged event.", + "type": "object", + "properties": { + "actionType": { + "$ref": "#/definitions/AgriFoodFarmingResourceActionType" + }, + "status": { + "description": "Status of the resource.", + "type": "string" + }, + "modifiedDateTime": { + "format": "date-time", + "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string" + }, + "eTag": { + "description": "The ETag value to implement optimistic concurrency.", + "type": "string" + }, + "id": { + "description": "Unique id of resource.", + "type": "string" + }, + "name": { + "description": "Name to identify resource.", + "type": "string" + }, + "description": { + "description": "Textual description of resource.", + "type": "string" + }, + "createdDateTime": { + "format": "date-time", + "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string" + }, + "properties": { + "description": "A list of key value pairs that describe the resource.\r\nOnly string and numeral values are supported.", + "type": "object", + "additionalProperties": { + "type": "object" + } + } + } + }, + "AgriFoodFarmingApplicationDataChangedEventData": { + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.AgFoodPlatform.ApplicationDataChanged event.", + "type": "object", + "properties": { + "actionType": { + "$ref": "#/definitions/AgriFoodFarmingResourceActionType" + }, + "farmerId": { + "description": "Id of the farmer it belongs to.", + "type": "string" + }, + "status": { + "description": "Status of the resource.", + "type": "string" + }, + "source": { + "description": "Source of the farm operation data.", + "type": "string" + }, + "modifiedDateTime": { + "format": "date-time", + "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string" + }, + "eTag": { + "description": "The ETag value to implement optimistic concurrency.", + "type": "string" + }, + "id": { + "description": "Unique id of resource.", + "type": "string" + }, + "name": { + "description": "Name to identify resource.", + "type": "string" + }, + "description": { + "description": "Textual description of resource.", + "type": "string" + }, + "createdDateTime": { + "format": "date-time", + "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string" + }, + "properties": { + "description": "A list of key value pairs that describe the resource.\r\nOnly string and numeral values are supported.", + "type": "object", + "additionalProperties": { + "type": "object" + } + } + } + }, + "AgriFoodFarmingPlantingDataChangedEventData": { + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.AgFoodPlatform.PlantingDataChanged event.", + "type": "object", + "properties": { + "actionType": { + "$ref": "#/definitions/AgriFoodFarmingResourceActionType" + }, + "farmerId": { + "description": "Id of the farmer it belongs to.", + "type": "string" + }, + "status": { + "description": "Status of the resource.", + "type": "string" + }, + "source": { + "description": "Source of the farm operation data.", + "type": "string" + }, + "modifiedDateTime": { + "format": "date-time", + "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string" + }, + "eTag": { + "description": "The ETag value to implement optimistic concurrency.", + "type": "string" + }, + "id": { + "description": "Unique id of resource.", + "type": "string" + }, + "name": { + "description": "Name to identify resource.", + "type": "string" + }, + "description": { + "description": "Textual description of resource.", + "type": "string" + }, + "createdDateTime": { + "format": "date-time", + "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string" + }, + "properties": { + "description": "A list of key value pairs that describe the resource.\r\nOnly string and numeral values are supported.", + "type": "object", + "additionalProperties": { + "type": "object" + } + } + } + }, + "AgriFoodFarmingHarvestDataChangedEventData": { + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.AgFoodPlatform.HarvestDataChanged event.", + "type": "object", + "properties": { + "actionType": { + "$ref": "#/definitions/AgriFoodFarmingResourceActionType" + }, + "farmerId": { + "description": "Id of the farmer it belongs to.", + "type": "string" + }, + "status": { + "description": "Status of the resource.", + "type": "string" + }, + "source": { + "description": "Source of the farm operation data.", + "type": "string" + }, + "modifiedDateTime": { + "format": "date-time", + "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string" + }, + "eTag": { + "description": "The ETag value to implement optimistic concurrency.", + "type": "string" + }, + "id": { + "description": "Unique id of resource.", + "type": "string" + }, + "name": { + "description": "Name to identify resource.", + "type": "string" + }, + "description": { + "description": "Textual description of resource.", + "type": "string" + }, + "createdDateTime": { + "format": "date-time", + "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string" + }, + "properties": { + "description": "A list of key value pairs that describe the resource.\r\nOnly string and numeral values are supported.", + "type": "object", + "additionalProperties": { + "type": "object" + } + } + } + }, + "AgriFoodFarmingTillageDataChangedEventData": { + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.AgFoodPlatform.TillageDataChanged event.", + "type": "object", + "properties": { + "actionType": { + "$ref": "#/definitions/AgriFoodFarmingResourceActionType" + }, + "farmerId": { + "description": "Id of the farmer it belongs to.", + "type": "string" + }, + "status": { + "description": "Status of the resource.", + "type": "string" + }, + "source": { + "description": "Source of the farm operation data.", + "type": "string" + }, + "modifiedDateTime": { + "format": "date-time", + "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string" + }, + "eTag": { + "description": "The ETag value to implement optimistic concurrency.", + "type": "string" + }, + "id": { + "description": "Unique id of resource.", + "type": "string" + }, + "name": { + "description": "Name to identify resource.", + "type": "string" + }, + "description": { + "description": "Textual description of resource.", + "type": "string" + }, + "createdDateTime": { + "format": "date-time", + "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string" + }, + "properties": { + "description": "A list of key value pairs that describe the resource.\r\nOnly string and numeral values are supported.", + "type": "object", + "additionalProperties": { + "type": "object" + } + } + } + }, + "AgriFoodFarmingJobStatus": { + "description": "Various states a job can be in.", + "enum": [ + "Waiting", + "Running", + "Succeeded", + "Failed", + "Cancelled" + ], + "type": "string", + "x-ms-enum": { + "name": "AgriFoodFarmingJobStatus", + "modelAsString": true + } + }, + "AgriFoodFarmingSatelliteDataIngestionJobStatusChangedEventData": { + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.AgFoodPlatform.SatelliteDataIngestionJobStatusChanged event.", + "type": "object", + "properties": { + "farmerId": { + "description": "Farmer id for which job was created.", + "type": "string" + }, + "message": { + "description": "Status message to capture more details of the job.", + "type": "string" + }, + "status": { + "$ref": "#/definitions/AgriFoodFarmingJobStatus" + }, + "lastActionDateTime": { + "format": "date-time", + "description": "Date-time when last action was taken on job, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string" + }, + "isCancellationRequested": { + "description": "Flag that gets set when job cancellation is requested.", + "type": "boolean" + }, + "id": { + "description": "Unique id of resource.", + "type": "string" + }, + "name": { + "description": "Name to identify resource.", + "type": "string" + }, + "description": { + "description": "Textual description of resource.", + "type": "string" + }, + "createdDateTime": { + "format": "date-time", + "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string" + }, + "properties": { + "description": "A list of key value pairs that describe the resource.\r\nOnly string and numeral values are supported.", + "type": "object", + "additionalProperties": { + "type": "object" + } + } + } + }, + "AgriFoodFarmingWeatherDataIngestionJobStatusChangedEventData": { + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.AgFoodPlatform.WeatherDataIngestionJobStatusChanged event.", + "type": "object", + "properties": { + "farmerId": { + "description": "Farmer id for which job was created.", + "type": "string" + }, + "message": { + "description": "Status message to capture more details of the job.", + "type": "string" + }, + "status": { + "$ref": "#/definitions/AgriFoodFarmingJobStatus" + }, + "lastActionDateTime": { + "format": "date-time", + "description": "Date-time when last action was taken on job, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string" + }, + "isCancellationRequested": { + "description": "Flag that gets set when job cancellation is requested.", + "type": "boolean" + }, + "id": { + "description": "Unique id of resource.", + "type": "string" + }, + "name": { + "description": "Name to identify resource.", + "type": "string" + }, + "description": { + "description": "Textual description of resource.", + "type": "string" + }, + "createdDateTime": { + "format": "date-time", + "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string" + }, + "properties": { + "description": "A list of key value pairs that describe the resource.\r\nOnly string and numeral values are supported.", + "type": "object", + "additionalProperties": { + "type": "object" + } + } + } + }, + "AgriFoodFarmingFarmOperationDataIngestionJobStatusChangedEventData": { + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.AgFoodPlatform.FarmOperationDataIngestionJobStatusChanged event.", + "type": "object", + "properties": { + "farmerId": { + "description": "Farmer id for which job was created.", + "type": "string" + }, + "message": { + "description": "Status message to capture more details of the job.", + "type": "string" + }, + "status": { + "$ref": "#/definitions/AgriFoodFarmingJobStatus" + }, + "lastActionDateTime": { + "format": "date-time", + "description": "Date-time when last action was taken on job, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string" + }, + "isCancellationRequested": { + "description": "Flag that gets set when job cancellation is requested.", + "type": "boolean" + }, + "id": { + "description": "Unique id of resource.", + "type": "string" + }, + "name": { + "description": "Name to identify resource.", + "type": "string" + }, + "description": { + "description": "Textual description of resource.", + "type": "string" + }, + "createdDateTime": { + "format": "date-time", + "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.", + "type": "string" + }, + "properties": { + "description": "A list of key value pairs that describe the resource.\r\nOnly string and numeral values are supported.", + "type": "object", + "additionalProperties": { + "type": "object" + } + } + } + } + } +} diff --git a/specification/eventgrid/data-plane/Microsoft.AppConfiguration/stable/2018-01-01/AppConfiguration.json b/specification/eventgrid/data-plane/Microsoft.AppConfiguration/stable/2018-01-01/AppConfiguration.json index d13e2d9eb9ae..bf6771afeb16 100644 --- a/specification/eventgrid/data-plane/Microsoft.AppConfiguration/stable/2018-01-01/AppConfiguration.json +++ b/specification/eventgrid/data-plane/Microsoft.AppConfiguration/stable/2018-01-01/AppConfiguration.json @@ -8,7 +8,7 @@ "paths": {}, "definitions": { "AppConfigurationKeyValueModifiedEventData": { - "description": "Schema of the Data property of an EventGridEvent for an Microsoft.AppConfiguration.KeyValueModified event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.AppConfiguration.KeyValueModified event.", "type": "object", "properties": { "key": { @@ -30,7 +30,7 @@ } }, "AppConfigurationKeyValueDeletedEventData": { - "description": "Schema of the Data property of an EventGridEvent for an Microsoft.AppConfiguration.KeyValueDeleted event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.AppConfiguration.KeyValueDeleted event.", "type": "object", "properties": { "key": { diff --git a/specification/eventgrid/data-plane/Microsoft.Cache/stable/2018-01-01/RedisCache.json b/specification/eventgrid/data-plane/Microsoft.Cache/stable/2018-01-01/RedisCache.json index 7bab3caac3a0..dafc15f2382b 100644 --- a/specification/eventgrid/data-plane/Microsoft.Cache/stable/2018-01-01/RedisCache.json +++ b/specification/eventgrid/data-plane/Microsoft.Cache/stable/2018-01-01/RedisCache.json @@ -8,7 +8,7 @@ "paths": {}, "definitions": { "RedisPatchingCompletedEventData": { - "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Cache.PatchingCompleted event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Cache.PatchingCompleted event.", "type": "object", "properties": { "timestamp": { @@ -27,7 +27,7 @@ } }, "RedisScalingCompletedEventData": { - "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Cache.ScalingCompleted event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Cache.ScalingCompleted event.", "type": "object", "properties": { "timestamp": { @@ -46,7 +46,7 @@ } }, "RedisExportRDBCompletedEventData": { - "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Cache.ExportRDBCompleted event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Cache.ExportRDBCompleted event.", "type": "object", "properties": { "timestamp": { @@ -65,7 +65,7 @@ } }, "RedisImportRDBCompletedEventData": { - "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Cache.ImportRDBCompleted event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Cache.ImportRDBCompleted event.", "type": "object", "properties": { "timestamp": { diff --git a/specification/eventgrid/data-plane/Microsoft.Communication/stable/2018-01-01/AzureCommunicationServices.json b/specification/eventgrid/data-plane/Microsoft.Communication/stable/2018-01-01/AzureCommunicationServices.json index 528cbebbf7c6..41a1140046ba 100644 --- a/specification/eventgrid/data-plane/Microsoft.Communication/stable/2018-01-01/AzureCommunicationServices.json +++ b/specification/eventgrid/data-plane/Microsoft.Communication/stable/2018-01-01/AzureCommunicationServices.json @@ -8,7 +8,7 @@ "paths": {}, "definitions": { "AcsChatMessageReceivedEventData": { - "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Communication.ChatMessageReceived event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.ChatMessageReceived event.", "allOf": [ { "$ref": "#/definitions/AcsChatMessageEventBaseProperties" @@ -22,7 +22,7 @@ } }, "AcsChatMessageReceivedInThreadEventData": { - "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Communication.ChatMessageReceivedInThread event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.ChatMessageReceivedInThread event.", "allOf": [ { "$ref": "#/definitions/AcsChatMessageEventInThreadBaseProperties" @@ -36,7 +36,7 @@ } }, "AcsChatMessageEditedEventData": { - "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Communication.ChatMessageEdited event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.ChatMessageEdited event.", "allOf": [ { "$ref": "#/definitions/AcsChatMessageEventBaseProperties" @@ -55,7 +55,7 @@ } }, "AcsChatMessageEditedInThreadEventData": { - "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Communication.ChatMessageEditedInThread event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.ChatMessageEditedInThread event.", "allOf": [ { "$ref": "#/definitions/AcsChatMessageEventInThreadBaseProperties" @@ -74,7 +74,7 @@ } }, "AcsChatMessageDeletedEventData": { - "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Communication.ChatMessageDeleted event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.ChatMessageDeleted event.", "allOf": [ { "$ref": "#/definitions/AcsChatMessageEventBaseProperties" @@ -89,7 +89,7 @@ } }, "AcsChatMessageDeletedInThreadEventData": { - "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Communication.ChatMessageDeletedInThread event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.ChatMessageDeletedInThread event.", "allOf": [ { "$ref": "#/definitions/AcsChatMessageEventInThreadBaseProperties" @@ -104,7 +104,7 @@ } }, "AcsChatThreadCreatedWithUserEventData": { - "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Communication.ChatThreadCreatedWithUser event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.ChatThreadCreatedWithUser event.", "allOf": [ { "$ref": "#/definitions/AcsChatThreadEventBaseProperties" @@ -113,7 +113,7 @@ "properties": { "createdByCommunicationIdentifier": { "description": "The communication identifier of the user who created the thread", - "$ref": "../../../../../communication/data-plane/Microsoft.CommunicationServicesCommon/stable/2021-03-07/common.json#/definitions/CommunicationIdentifierModel" + "$ref": "../../../../../communication/data-plane/Common/stable/2021-03-07/common.json#/definitions/CommunicationIdentifierModel" }, "properties": { "description": "The thread properties", @@ -132,7 +132,7 @@ } }, "AcsChatThreadCreatedEventData": { - "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Communication.ChatThreadCreated event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.ChatThreadCreated event.", "allOf": [ { "$ref": "#/definitions/AcsChatThreadEventInThreadBaseProperties" @@ -141,7 +141,7 @@ "properties": { "createdByCommunicationIdentifier": { "description": "The communication identifier of the user who created the thread", - "$ref": "../../../../../communication/data-plane/Microsoft.CommunicationServicesCommon/stable/2021-03-07/common.json#/definitions/CommunicationIdentifierModel" + "$ref": "../../../../../communication/data-plane/Common/stable/2021-03-07/common.json#/definitions/CommunicationIdentifierModel" }, "properties": { "description": "The thread properties", @@ -160,7 +160,7 @@ } }, "AcsChatThreadWithUserDeletedEventData": { - "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Communication.ChatThreadWithUserDeleted event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.ChatThreadWithUserDeleted event.", "allOf": [ { "$ref": "#/definitions/AcsChatThreadEventBaseProperties" @@ -169,7 +169,7 @@ "properties": { "deletedByCommunicationIdentifier": { "description": "The communication identifier of the user who deleted the thread", - "$ref": "../../../../../communication/data-plane/Microsoft.CommunicationServicesCommon/stable/2021-03-07/common.json#/definitions/CommunicationIdentifierModel" + "$ref": "../../../../../communication/data-plane/Common/stable/2021-03-07/common.json#/definitions/CommunicationIdentifierModel" }, "deleteTime": { "description": "The deletion time of the thread", @@ -179,7 +179,7 @@ } }, "AcsChatThreadDeletedEventData": { - "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Communication.ChatThreadDeleted event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.ChatThreadDeleted event.", "allOf": [ { "$ref": "#/definitions/AcsChatThreadEventInThreadBaseProperties" @@ -188,7 +188,7 @@ "properties": { "deletedByCommunicationIdentifier": { "description": "The communication identifier of the user who deleted the thread", - "$ref": "../../../../../communication/data-plane/Microsoft.CommunicationServicesCommon/stable/2021-03-07/common.json#/definitions/CommunicationIdentifierModel" + "$ref": "../../../../../communication/data-plane/Common/stable/2021-03-07/common.json#/definitions/CommunicationIdentifierModel" }, "deleteTime": { "description": "The deletion time of the thread", @@ -198,7 +198,7 @@ } }, "AcsChatThreadPropertiesUpdatedPerUserEventData": { - "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Communication.ChatThreadPropertiesUpdatedPerUser event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.ChatThreadPropertiesUpdatedPerUser event.", "allOf": [ { "$ref": "#/definitions/AcsChatThreadEventBaseProperties" @@ -207,7 +207,7 @@ "properties": { "editedByCommunicationIdentifier": { "description": "The communication identifier of the user who updated the thread properties", - "$ref": "../../../../../communication/data-plane/Microsoft.CommunicationServicesCommon/stable/2021-03-07/common.json#/definitions/CommunicationIdentifierModel" + "$ref": "../../../../../communication/data-plane/Common/stable/2021-03-07/common.json#/definitions/CommunicationIdentifierModel" }, "editTime": { "description": "The time at which the properties of the thread were updated", @@ -224,7 +224,7 @@ } }, "AcsChatThreadPropertiesUpdatedEventData": { - "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Communication.ChatThreadPropertiesUpdated event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.ChatThreadPropertiesUpdated event.", "allOf": [ { "$ref": "#/definitions/AcsChatThreadEventInThreadBaseProperties" @@ -233,7 +233,7 @@ "properties": { "editedByCommunicationIdentifier": { "description": "The communication identifier of the user who updated the thread properties", - "$ref": "../../../../../communication/data-plane/Microsoft.CommunicationServicesCommon/stable/2021-03-07/common.json#/definitions/CommunicationIdentifierModel" + "$ref": "../../../../../communication/data-plane/Common/stable/2021-03-07/common.json#/definitions/CommunicationIdentifierModel" }, "editTime": { "description": "The time at which the properties of the thread were updated", @@ -250,7 +250,7 @@ } }, "AcsChatParticipantAddedToThreadWithUserEventData": { - "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Communication.ChatParticipantAddedToThreadWithUser event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.ChatParticipantAddedToThreadWithUser event.", "allOf": [ { "$ref": "#/definitions/AcsChatThreadEventBaseProperties" @@ -264,7 +264,7 @@ }, "addedByCommunicationIdentifier": { "description": "The communication identifier of the user who added the user", - "$ref": "../../../../../communication/data-plane/Microsoft.CommunicationServicesCommon/stable/2021-03-07/common.json#/definitions/CommunicationIdentifierModel" + "$ref": "../../../../../communication/data-plane/Common/stable/2021-03-07/common.json#/definitions/CommunicationIdentifierModel" }, "participantAdded": { "description": "The details of the user who was added", @@ -273,7 +273,7 @@ } }, "AcsChatParticipantRemovedFromThreadWithUserEventData": { - "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Communication.ChatParticipantRemovedFromThreadWithUser event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.ChatParticipantRemovedFromThreadWithUser event.", "allOf": [ { "$ref": "#/definitions/AcsChatThreadEventBaseProperties" @@ -287,7 +287,7 @@ }, "removedByCommunicationIdentifier": { "description": "The communication identifier of the user who removed the user", - "$ref": "../../../../../communication/data-plane/Microsoft.CommunicationServicesCommon/stable/2021-03-07/common.json#/definitions/CommunicationIdentifierModel" + "$ref": "../../../../../communication/data-plane/Common/stable/2021-03-07/common.json#/definitions/CommunicationIdentifierModel" }, "participantRemoved": { "description": "The details of the user who was removed", @@ -296,7 +296,7 @@ } }, "AcsChatParticipantAddedToThreadEventData": { - "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Communication.ChatThreadParticipantAdded event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.ChatThreadParticipantAdded event.", "allOf": [ { "$ref": "#/definitions/AcsChatEventInThreadBaseProperties" @@ -310,7 +310,7 @@ }, "addedByCommunicationIdentifier": { "description": "The communication identifier of the user who added the user", - "$ref": "../../../../../communication/data-plane/Microsoft.CommunicationServicesCommon/stable/2021-03-07/common.json#/definitions/CommunicationIdentifierModel" + "$ref": "../../../../../communication/data-plane/Common/stable/2021-03-07/common.json#/definitions/CommunicationIdentifierModel" }, "participantAdded": { "description": "The details of the user who was added", @@ -324,7 +324,7 @@ } }, "AcsChatParticipantRemovedFromThreadEventData": { - "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Communication.ChatThreadParticipantRemoved event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.ChatThreadParticipantRemoved event.", "allOf": [ { "$ref": "#/definitions/AcsChatEventInThreadBaseProperties" @@ -338,7 +338,7 @@ }, "removedByCommunicationIdentifier": { "description": "The communication identifier of the user who removed the user", - "$ref": "../../../../../communication/data-plane/Microsoft.CommunicationServicesCommon/stable/2021-03-07/common.json#/definitions/CommunicationIdentifierModel" + "$ref": "../../../../../communication/data-plane/Common/stable/2021-03-07/common.json#/definitions/CommunicationIdentifierModel" }, "participantRemoved": { "description": "The details of the user who was removed", @@ -352,7 +352,7 @@ } }, "AcsSmsDeliveryReportReceivedEventData": { - "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Communication.SMSDeliveryReportReceived event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.SMSDeliveryReportReceived event.", "allOf": [ { "$ref": "#/definitions/AcsSmsEventBaseProperties" @@ -386,7 +386,7 @@ } }, "AcsSmsReceivedEventData": { - "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Communication.SMSReceived event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.SMSReceived event.", "allOf": [ { "$ref": "#/definitions/AcsSmsEventBaseProperties" @@ -405,7 +405,7 @@ } }, "AcsRecordingFileStatusUpdatedEventData": { - "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Communication.RecordingFileStatusUpdated event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.RecordingFileStatusUpdated event.", "properties": { "recordingStorageInfo": { "description": "The details of recording storage information", @@ -482,7 +482,7 @@ }, "senderCommunicationIdentifier": { "description": "The communication identifier of the sender", - "$ref": "../../../../../communication/data-plane/Microsoft.CommunicationServicesCommon/stable/2021-03-07/common.json#/definitions/CommunicationIdentifierModel" + "$ref": "../../../../../communication/data-plane/Common/stable/2021-03-07/common.json#/definitions/CommunicationIdentifierModel" }, "senderDisplayName": { "description": "The display name of the sender", @@ -518,7 +518,7 @@ }, "senderCommunicationIdentifier": { "description": "The communication identifier of the sender", - "$ref": "../../../../../communication/data-plane/Microsoft.CommunicationServicesCommon/stable/2021-03-07/common.json#/definitions/CommunicationIdentifierModel" + "$ref": "../../../../../communication/data-plane/Common/stable/2021-03-07/common.json#/definitions/CommunicationIdentifierModel" }, "senderDisplayName": { "description": "The display name of the sender", @@ -560,7 +560,7 @@ "properties": { "recipientCommunicationIdentifier": { "description": "The communication identifier of the target user", - "$ref": "../../../../../communication/data-plane/Microsoft.CommunicationServicesCommon/stable/2021-03-07/common.json#/definitions/CommunicationIdentifierModel" + "$ref": "../../../../../communication/data-plane/Common/stable/2021-03-07/common.json#/definitions/CommunicationIdentifierModel" }, "transactionId": { "description": "The transaction id will be used as co-relation vector", @@ -582,7 +582,7 @@ }, "participantCommunicationIdentifier": { "description": "The communication identifier of the user", - "$ref": "../../../../../communication/data-plane/Microsoft.CommunicationServicesCommon/stable/2021-03-07/common.json#/definitions/CommunicationIdentifierModel" + "$ref": "../../../../../communication/data-plane/Common/stable/2021-03-07/common.json#/definitions/CommunicationIdentifierModel" } } }, @@ -652,6 +652,14 @@ "endReason": { "description": "The reason for ending the recording chunk", "type": "string" + }, + "metadataLocation": { + "description": "The location of the metadata for this chunk", + "type": "string" + }, + "contentLocation": { + "description": "The location of the content for this chunk", + "type": "string" } } } diff --git a/specification/eventgrid/data-plane/Microsoft.EventGrid/stable/2018-01-01/EventGrid.json b/specification/eventgrid/data-plane/Microsoft.EventGrid/stable/2018-01-01/EventGrid.json index b70b49b75ed7..5b2db928b4e3 100644 --- a/specification/eventgrid/data-plane/Microsoft.EventGrid/stable/2018-01-01/EventGrid.json +++ b/specification/eventgrid/data-plane/Microsoft.EventGrid/stable/2018-01-01/EventGrid.json @@ -262,7 +262,7 @@ "description": "Properties of an event published to an Event Grid topic using a custom schema" }, "SubscriptionValidationEventData": { - "description": "Schema of the Data property of an EventGridEvent for a Microsoft.EventGrid.SubscriptionValidationEvent.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.EventGrid.SubscriptionValidationEvent event.", "type": "object", "properties": { "validationCode": { @@ -288,7 +288,7 @@ } }, "SubscriptionDeletedEventData": { - "description": "Schema of the Data property of an EventGridEvent for a Microsoft.EventGrid.SubscriptionDeletedEvent.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.EventGrid.SubscriptionDeletedEvent event.", "type": "object", "properties": { "eventSubscriptionId": { diff --git a/specification/eventgrid/data-plane/Microsoft.EventHub/stable/2018-01-01/EventHub.json b/specification/eventgrid/data-plane/Microsoft.EventHub/stable/2018-01-01/EventHub.json index b867113c2e6f..bd84945c2413 100644 --- a/specification/eventgrid/data-plane/Microsoft.EventHub/stable/2018-01-01/EventHub.json +++ b/specification/eventgrid/data-plane/Microsoft.EventHub/stable/2018-01-01/EventHub.json @@ -8,7 +8,7 @@ "paths": {}, "definitions": { "EventHubCaptureFileCreatedEventData": { - "description": "Schema of the Data property of an EventGridEvent for an Microsoft.EventHub.CaptureFileCreated event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.EventHub.CaptureFileCreated event.", "type": "object", "properties": { "fileurl": { diff --git a/specification/eventgrid/data-plane/Microsoft.KeyVault/stable/2018-01-01/KeyVault.json b/specification/eventgrid/data-plane/Microsoft.KeyVault/stable/2018-01-01/KeyVault.json index acd30d40cc77..35ded41e7b17 100644 --- a/specification/eventgrid/data-plane/Microsoft.KeyVault/stable/2018-01-01/KeyVault.json +++ b/specification/eventgrid/data-plane/Microsoft.KeyVault/stable/2018-01-01/KeyVault.json @@ -8,7 +8,7 @@ "paths": {}, "definitions": { "KeyVaultCertificateNewVersionCreatedEventData": { - "description": "Schema of the Data property of an EventGridEvent for an CertificateNewVersionCreated event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.KeyVault.CertificateNewVersionCreated event.", "type": "object", "properties": { "id": { @@ -42,7 +42,7 @@ } }, "KeyVaultCertificateNearExpiryEventData": { - "description": "Schema of the Data property of an EventGridEvent for an CertificateNearExpiry event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.KeyVault.CertificateNearExpiry event.", "type": "object", "properties": { "id": { @@ -76,7 +76,7 @@ } }, "KeyVaultCertificateExpiredEventData": { - "description": "Schema of the Data property of an EventGridEvent for an CertificateExpired event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.KeyVault.CertificateExpired event.", "type": "object", "properties": { "id": { @@ -110,7 +110,7 @@ } }, "KeyVaultKeyNewVersionCreatedEventData": { - "description": "Schema of the Data property of an EventGridEvent for an KeyNewVersionCreated event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.KeyVault.KeyNewVersionCreated event.", "type": "object", "properties": { "id": { @@ -144,7 +144,7 @@ } }, "KeyVaultKeyNearExpiryEventData": { - "description": "Schema of the Data property of an EventGridEvent for an KeyNearExpiry event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.KeyVault.KeyNearExpiry event.", "type": "object", "properties": { "id": { @@ -178,7 +178,7 @@ } }, "KeyVaultKeyExpiredEventData": { - "description": "Schema of the Data property of an EventGridEvent for an KeyExpired event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.KeyVault.KeyExpired event.", "type": "object", "properties": { "id": { @@ -212,7 +212,7 @@ } }, "KeyVaultSecretNewVersionCreatedEventData": { - "description": "Schema of the Data property of an EventGridEvent for an SecretNewVersionCreated event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.KeyVault.SecretNewVersionCreated event.", "type": "object", "properties": { "id": { @@ -246,7 +246,7 @@ } }, "KeyVaultSecretNearExpiryEventData": { - "description": "Schema of the Data property of an EventGridEvent for an SecretNearExpiry event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.KeyVault.SecretNearExpiry event.", "type": "object", "properties": { "id": { @@ -280,7 +280,7 @@ } }, "KeyVaultSecretExpiredEventData": { - "description": "Schema of the Data property of an EventGridEvent for an SecretExpired event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.KeyVault.SecretExpired event.", "type": "object", "properties": { "id": { @@ -314,7 +314,7 @@ } }, "KeyVaultVaultAccessPolicyChangedEventData": { - "description": "Schema of the Data property of an EventGridEvent for an VaultAccessPolicyChanged event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.KeyVault.VaultAccessPolicyChanged event.", "type": "object", "properties": { "id": { diff --git a/specification/eventgrid/data-plane/Microsoft.MachineLearningServices/stable/2018-01-01/MachineLearningServices.json b/specification/eventgrid/data-plane/Microsoft.MachineLearningServices/stable/2018-01-01/MachineLearningServices.json index 7f2bc6f2bc4a..af55a496dbe4 100644 --- a/specification/eventgrid/data-plane/Microsoft.MachineLearningServices/stable/2018-01-01/MachineLearningServices.json +++ b/specification/eventgrid/data-plane/Microsoft.MachineLearningServices/stable/2018-01-01/MachineLearningServices.json @@ -8,7 +8,7 @@ "paths": {}, "definitions": { "MachineLearningServicesModelRegisteredEventData": { - "description": "Schema of the Data property of an EventGridEvent for an Microsoft.MachineLearningServices.ModelRegistered event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.MachineLearningServices.ModelRegistered event.", "type": "object", "properties": { "modelName": { @@ -30,7 +30,7 @@ } }, "MachineLearningServicesModelDeployedEventData": { - "description": "Schema of the Data property of an EventGridEvent for an Microsoft.MachineLearningServices.ModelDeployed event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.MachineLearningServices.ModelDeployed event.", "type": "object", "properties": { "serviceName": { @@ -56,7 +56,7 @@ } }, "MachineLearningServicesRunCompletedEventData": { - "description": "Schema of the Data property of an EventGridEvent for an Microsoft.MachineLearningServices.RunCompleted event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.MachineLearningServices.RunCompleted event.", "type": "object", "properties": { "experimentId": { @@ -86,7 +86,7 @@ } }, "MachineLearningServicesDatasetDriftDetectedEventData": { - "description": "Schema of the Data property of an EventGridEvent for an Microsoft.MachineLearningServices.DatasetDriftDetected event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.MachineLearningServices.DatasetDriftDetected event.", "type": "object", "properties": { "dataDriftId": { @@ -127,7 +127,7 @@ } }, "MachineLearningServicesRunStatusChangedEventData": { - "description": "Schema of the Data property of an EventGridEvent for an Microsoft.MachineLearningServices.RunStatusChanged event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.MachineLearningServices.RunStatusChanged event.", "type": "object", "properties": { "experimentId": { diff --git a/specification/eventgrid/data-plane/Microsoft.Media/stable/2018-01-01/MediaServices.json b/specification/eventgrid/data-plane/Microsoft.Media/stable/2018-01-01/MediaServices.json index e13645591698..2f89f7fb0bea 100644 --- a/specification/eventgrid/data-plane/Microsoft.Media/stable/2018-01-01/MediaServices.json +++ b/specification/eventgrid/data-plane/Microsoft.Media/stable/2018-01-01/MediaServices.json @@ -368,7 +368,7 @@ }, "MediaJobOutputProgressEventData": { "x-ms-discriminator-value": "#Microsoft.Media.JobOutputProgress", - "description": "Job Output Progress Event Data.", + "description": "Job Output Progress Event Data. Schema of the Data property of an EventGridEvent for a Microsoft.Media.JobOutputProgress event.", "type": "object", "properties": { "label": { @@ -464,7 +464,7 @@ ], "properties": {}, "type": "object", - "description": "Job scheduled event data" + "description": "Job scheduled event data. Schema of the data property of an EventGridEvent for a Microsoft.Media.JobScheduled event." }, "MediaJobProcessingEventData": { "x-ms-discriminator-value": "#Microsoft.Media.JobProcessing", @@ -475,7 +475,7 @@ ], "properties": {}, "type": "object", - "description": "Job processing event data" + "description": "Job processing event data. Schema of the data property of an EventGridEvent for a Microsoft.Media.JobProcessing event." }, "MediaJobCancelingEventData": { "x-ms-discriminator-value": "#Microsoft.Media.JobCanceling", @@ -486,7 +486,7 @@ ], "properties": {}, "type": "object", - "description": "Job canceling event data" + "description": "Job canceling event data. Schema of the data property of an EventGridEvent for a Microsoft.Media.JobCanceling event." }, "MediaJobFinishedEventData": { "x-ms-discriminator-value": "#Microsoft.Media.JobFinished", @@ -505,7 +505,7 @@ } }, "type": "object", - "description": "Job finished event data" + "description": "Job finished event data. Schema of the data property of an EventGridEvent for a Microsoft.Media.JobFinished event." }, "MediaJobCanceledEventData": { "x-ms-discriminator-value": "#Microsoft.Media.JobCanceled", @@ -524,7 +524,7 @@ } }, "type": "object", - "description": "Job canceled event data" + "description": "Job canceled event data. Schema of the data property of an EventGridEvent for a Microsoft.Media.JobCanceled event." }, "MediaJobErroredEventData": { "x-ms-discriminator-value": "#Microsoft.Media.JobErrored", @@ -543,7 +543,7 @@ } }, "type": "object", - "description": "Job error state event data" + "description": "Job error state event data. Schema of the data property of an EventGridEvent for a Microsoft.Media.JobErrored event." }, "MediaJobOutputCanceledEventData": { "x-ms-discriminator-value": "#Microsoft.Media.JobOutputCanceled", @@ -554,7 +554,7 @@ ], "properties": {}, "type": "object", - "description": "Job output canceled event data" + "description": "Job output canceled event data. Schema of the data property of an EventGridEvent for a Microsoft.Media.JobOutputCanceled event." }, "MediaJobOutputCancelingEventData": { "x-ms-discriminator-value": "#Microsoft.Media.JobOutputCanceling", @@ -565,7 +565,7 @@ ], "properties": {}, "type": "object", - "description": "Job output canceling event data" + "description": "Job output canceling event data. Schema of the data property of an EventGridEvent for a Microsoft.Media.JobOutputCanceling event." }, "MediaJobOutputErroredEventData": { "x-ms-discriminator-value": "#Microsoft.Media.JobOutputErrored", @@ -576,7 +576,7 @@ ], "properties": {}, "type": "object", - "description": "Job output error event data" + "description": "Job output error event data. Schema of the data property of an EventGridEvent for a Microsoft.Media.JobOutputErrored event." }, "MediaJobOutputFinishedEventData": { "x-ms-discriminator-value": "#Microsoft.Media.JobOutputFinished", @@ -587,7 +587,7 @@ ], "properties": {}, "type": "object", - "description": "Job output finished event data" + "description": "Job output finished event data. Schema of the data property of an EventGridEvent for a Microsoft.Media.JobOutputFinished event." }, "MediaJobOutputProcessingEventData": { "x-ms-discriminator-value": "#Microsoft.Media.JobOutputProcessing", @@ -598,7 +598,7 @@ ], "properties": {}, "type": "object", - "description": "Job output processing event data" + "description": "Job output processing event data. Schema of the data property of an EventGridEvent for a Microsoft.Media.JobOutputProcessing event." }, "MediaJobOutputScheduledEventData": { "x-ms-discriminator-value": "#Microsoft.Media.JobOutputScheduled", @@ -609,7 +609,7 @@ ], "properties": {}, "type": "object", - "description": "Job output scheduled event data" + "description": "Job output scheduled event data. Schema of the data property of an EventGridEvent for a Microsoft.Media.JobOutputScheduled event." }, "MediaLiveEventEncoderConnectedEventData": { "properties": { @@ -635,7 +635,7 @@ } }, "type": "object", - "description": "Encoder connect event data." + "description": "Encoder connect event data. Schema of the data property of an EventGridEvent for a Microsoft.Media.LiveEventEncoderConnected event." }, "MediaLiveEventConnectionRejectedEventData": { "properties": { @@ -666,7 +666,7 @@ } }, "type": "object", - "description": "Encoder connection rejected event data." + "description": "Encoder connection rejected event data. Schema of the data property of an EventGridEvent for a Microsoft.Media.LiveEventConnectionRejected event." }, "MediaLiveEventEncoderDisconnectedEventData": { "properties": { @@ -697,7 +697,7 @@ } }, "type": "object", - "description": "Encoder disconnected event data." + "description": "Encoder disconnected event data. Schema of the Data property of an EventGridEvent for a Microsoft.Media.LiveEventEncoderDisconnected event." }, "MediaLiveEventIncomingStreamReceivedEventData": { "properties": { @@ -749,7 +749,7 @@ } }, "type": "object", - "description": "Encoder connect event data." + "description": "Encoder connect event data. Schema of the data property of an EventGridEvent for a Microsoft.Media.LiveEventIncomingStreamReceived event." }, "MediaLiveEventIncomingStreamsOutOfSyncEventData": { "properties": { @@ -785,7 +785,7 @@ } }, "type": "object", - "description": "Incoming streams out of sync event data." + "description": "Incoming streams out of sync event data. Schema of the data property of an EventGridEvent for a Microsoft.Media.LiveEventIncomingStreamsOutOfSync event." }, "MediaLiveEventIncomingVideoStreamsOutOfSyncEventData": { "properties": { @@ -816,7 +816,7 @@ } }, "type": "object", - "description": "Incoming video stream out of synch event data." + "description": "Incoming video stream out of synch event data. Schema of the data property of an EventGridEvent for a Microsoft.Media.LiveEventIncomingVideoStreamsOutOfSync event." }, "MediaLiveEventIncomingDataChunkDroppedEventData": { "properties": { @@ -853,7 +853,7 @@ } }, "type": "object", - "description": "Ingest fragment dropped event data." + "description": "Ingest fragment dropped event data. Schema of the data property of an EventGridEvent for a Microsoft.Media.LiveEventIncomingDataChunkDropped event." }, "MediaLiveEventIngestHeartbeatEventData": { "properties": { @@ -924,7 +924,7 @@ } }, "type": "object", - "description": "Ingest fragment dropped event data." + "description": "Ingest fragment dropped event data. Schema of the data property of an EventGridEvent for a Microsoft.Media.LiveEventIngestHeartbeat event." }, "MediaLiveEventTrackDiscontinuityDetectedEventData": { "properties": { @@ -966,7 +966,7 @@ } }, "type": "object", - "description": "Ingest track discontinuity detected event data." + "description": "Ingest track discontinuity detected event data. Schema of the data property of an EventGridEvent for a Microsoft.Media.LiveEventTrackDiscontinuityDetected event." } } } diff --git a/specification/eventgrid/data-plane/Microsoft.PolicyInsights/stable/2018-01-01/PolicyInsights.json b/specification/eventgrid/data-plane/Microsoft.PolicyInsights/stable/2018-01-01/PolicyInsights.json new file mode 100644 index 000000000000..5bdda2224b8d --- /dev/null +++ b/specification/eventgrid/data-plane/Microsoft.PolicyInsights/stable/2018-01-01/PolicyInsights.json @@ -0,0 +1,116 @@ +{ + "swagger": "2.0", + "info": { + "version": "2018-01-01", + "title": "Schema of Azure Policy events published to Azure Event Grid", + "description": "Describes the schema of the Azure Policy events published to Azure Event Grid. This corresponds to the Data property of an EventGridEvent." + }, + "paths": {}, + "definitions": { + "PolicyInsightsPolicyStateCreatedEventData": { + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.PolicyInsights.PolicyStateCreated event.", + "type": "object", + "properties": { + "timestamp": { + "description": "The time that the resource was scanned by Azure Policy in the Universal ISO 8601 DateTime format yyyy-MM-ddTHH:mm:ss.fffffffZ.", + "type": "string", + "format": "date-time" + }, + "policyAssignmentId": { + "description": "The resource ID of the policy assignment.", + "type": "string" + }, + "policyDefinitionId": { + "description": "The resource ID of the policy definition.", + "type": "string" + }, + "policyDefinitionReferenceId": { + "description": "The reference ID for the policy definition inside the initiative definition, if the policy assignment is for an initiative. May be empty.", + "type": "string" + }, + "complianceState": { + "description": "The compliance state of the resource with respect to the policy assignment.", + "type": "string" + }, + "subscriptionId": { + "description": "The subscription ID of the resource.", + "type": "string" + }, + "complianceReasonCode": { + "description": "The compliance reason code. May be empty.", + "type": "string" + } + } + }, + "PolicyInsightsPolicyStateChangedEventData": { + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.PolicyInsights.PolicyStateChanged event.", + "type": "object", + "properties": { + "timestamp": { + "description": "The time that the resource was scanned by Azure Policy in the Universal ISO 8601 DateTime format yyyy-MM-ddTHH:mm:ss.fffffffZ.", + "type": "string", + "format": "date-time" + }, + "policyAssignmentId": { + "description": "The resource ID of the policy assignment.", + "type": "string" + }, + "policyDefinitionId": { + "description": "The resource ID of the policy definition.", + "type": "string" + }, + "policyDefinitionReferenceId": { + "description": "The reference ID for the policy definition inside the initiative definition, if the policy assignment is for an initiative. May be empty.", + "type": "string" + }, + "complianceState": { + "description": "The compliance state of the resource with respect to the policy assignment.", + "type": "string" + }, + "subscriptionId": { + "description": "The subscription ID of the resource.", + "type": "string" + }, + "complianceReasonCode": { + "description": "The compliance reason code. May be empty.", + "type": "string" + } + } + }, + "PolicyInsightsPolicyStateDeletedEventData": { + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.PolicyInsights.PolicyStateDeleted event.", + "type": "object", + "properties": { + "timestamp": { + "description": "The time that the resource was scanned by Azure Policy in the Universal ISO 8601 DateTime format yyyy-MM-ddTHH:mm:ss.fffffffZ.", + "type": "string", + "format": "date-time" + }, + "policyAssignmentId": { + "description": "The resource ID of the policy assignment.", + "type": "string" + }, + "policyDefinitionId": { + "description": "The resource ID of the policy definition.", + "type": "string" + }, + "policyDefinitionReferenceId": { + "description": "The reference ID for the policy definition inside the initiative definition, if the policy assignment is for an initiative. May be empty.", + "type": "string" + }, + "complianceState": { + "description": "The compliance state of the resource with respect to the policy assignment.", + "type": "string" + }, + "subscriptionId": { + "description": "The subscription ID of the resource.", + "type": "string" + }, + "complianceReasonCode": { + "description": "The compliance reason code. May be empty.", + "type": "string" + } + } + } + } +} diff --git a/specification/eventgrid/data-plane/Microsoft.Resources/stable/2018-01-01/Resources.json b/specification/eventgrid/data-plane/Microsoft.Resources/stable/2018-01-01/Resources.json index adae47c4a5df..8606b4fe0349 100644 --- a/specification/eventgrid/data-plane/Microsoft.Resources/stable/2018-01-01/Resources.json +++ b/specification/eventgrid/data-plane/Microsoft.Resources/stable/2018-01-01/Resources.json @@ -258,7 +258,7 @@ } }, "ResourceDeleteCancelData": { - "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Resources.ResourceDeleteCancel event. This is raised when a resource delete operation is canceled.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Resources.ResourceDeleteCancel event. This is raised when a resource delete operation is canceled.", "type": "object", "properties": { "tenantId": { @@ -408,7 +408,7 @@ } }, "ResourceActionCancelData": { - "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Resources.ResourceActionCancel event. This is raised when a resource action operation is canceled.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Resources.ResourceActionCancel event. This is raised when a resource action operation is canceled.", "type": "object", "properties": { "tenantId": { diff --git a/specification/eventgrid/data-plane/Microsoft.ServiceBus/stable/2018-01-01/ServiceBus.json b/specification/eventgrid/data-plane/Microsoft.ServiceBus/stable/2018-01-01/ServiceBus.json index 241997f6d1cd..c7b6be044c83 100644 --- a/specification/eventgrid/data-plane/Microsoft.ServiceBus/stable/2018-01-01/ServiceBus.json +++ b/specification/eventgrid/data-plane/Microsoft.ServiceBus/stable/2018-01-01/ServiceBus.json @@ -38,7 +38,7 @@ } }, "ServiceBusDeadletterMessagesAvailableWithNoListenersEventData": { - "description": "Schema of the Data property of an EventGridEvent for a Microsoft.ServiceBus.DeadletterMessagesAvailableWithNoListenersEvent event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.ServiceBus.DeadletterMessagesAvailableWithNoListeners event.", "type": "object", "properties": { "namespaceName": { diff --git a/specification/eventgrid/data-plane/Microsoft.Storage/stable/2018-01-01/Storage.json b/specification/eventgrid/data-plane/Microsoft.Storage/stable/2018-01-01/Storage.json index 19501d67be85..b552a85f6074 100644 --- a/specification/eventgrid/data-plane/Microsoft.Storage/stable/2018-01-01/Storage.json +++ b/specification/eventgrid/data-plane/Microsoft.Storage/stable/2018-01-01/Storage.json @@ -8,7 +8,7 @@ "paths": {}, "definitions": { "StorageBlobCreatedEventData": { - "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Storage.BlobCreated event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Storage.BlobCreated event.", "type": "object", "properties": { "api": { @@ -64,7 +64,7 @@ } }, "StorageBlobDeletedEventData": { - "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Storage.BlobDeleted event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Storage.BlobDeleted event.", "type": "object", "properties": { "api": { @@ -106,7 +106,7 @@ } }, "StorageDirectoryCreatedEventData": { - "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Storage.DirectoryCreated event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Storage.DirectoryCreated event.", "type": "object", "properties": { "api": { @@ -144,7 +144,7 @@ } }, "StorageDirectoryDeletedEventData": { - "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Storage.DirectoryDeleted event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Storage.DirectoryDeleted event.", "type": "object", "properties": { "api": { @@ -182,7 +182,7 @@ } }, "StorageBlobRenamedEventData": { - "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Storage.BlobRenamed event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Storage.BlobRenamed event.", "type": "object", "properties": { "api": { @@ -220,7 +220,7 @@ } }, "StorageDirectoryRenamedEventData": { - "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Storage.DirectoryRenamed event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Storage.DirectoryRenamed event.", "type": "object", "properties": { "api": { @@ -258,7 +258,7 @@ } }, "StorageLifecyclePolicyCompletedEventData": { - "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Storage.LifecyclePolicyCompleted event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Storage.LifecyclePolicyCompleted event.", "type": "object", "properties": { "scheduleTime": { @@ -295,6 +295,135 @@ "type": "string" } } + }, + "StorageBlobTierChangedEventData": { + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Storage.BlobTierChanged event.", + "type": "object", + "properties": { + "api": { + "description": "The name of the API/operation that triggered this event.", + "type": "string" + }, + "clientRequestId": { + "description": "A request id provided by the client of the storage API operation that triggered this event.", + "type": "string" + }, + "requestId": { + "description": "The request id generated by the Storage service for the storage API operation that triggered this event.", + "type": "string" + }, + "contentType": { + "description": "The content type of the blob. This is the same as what would be returned in the Content-Type header from the blob.", + "type": "string" + }, + "contentLength": { + "description": "The size of the blob in bytes. This is the same as what would be returned in the Content-Length header from the blob.", + "type": "integer", + "format": "int64" + }, + "blobType": { + "description": "The type of blob.", + "type": "string" + }, + "url": { + "description": "The path to the blob.", + "type": "string" + }, + "sequencer": { + "description": "An opaque string value representing the logical sequence of events for any particular blob name. Users can use standard string comparison to understand the relative sequence of two events on the same blob name.", + "type": "string" + }, + "identity": { + "description": "The identity of the requester that triggered this event.", + "type": "string" + }, + "storageDiagnostics": { + "description": "For service use only. Diagnostic data occasionally included by the Azure Storage service. This property should be ignored by event consumers.", + "type": "object" + } + } + }, + "StorageAsyncOperationInitiatedEventData": { + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Storage.AsyncOperationInitiated event.", + "type": "object", + "properties": { + "api": { + "description": "The name of the API/operation that triggered this event.", + "type": "string" + }, + "clientRequestId": { + "description": "A request id provided by the client of the storage API operation that triggered this event.", + "type": "string" + }, + "requestId": { + "description": "The request id generated by the Storage service for the storage API operation that triggered this event.", + "type": "string" + }, + "contentType": { + "description": "The content type of the blob. This is the same as what would be returned in the Content-Type header from the blob.", + "type": "string" + }, + "contentLength": { + "description": "The size of the blob in bytes. This is the same as what would be returned in the Content-Length header from the blob.", + "type": "integer", + "format": "int64" + }, + "blobType": { + "description": "The type of blob.", + "type": "string" + }, + "url": { + "description": "The path to the blob.", + "type": "string" + }, + "sequencer": { + "description": "An opaque string value representing the logical sequence of events for any particular blob name. Users can use standard string comparison to understand the relative sequence of two events on the same blob name.", + "type": "string" + }, + "identity": { + "description": "The identity of the requester that triggered this event.", + "type": "string" + }, + "storageDiagnostics": { + "description": "For service use only. Diagnostic data occasionally included by the Azure Storage service. This property should be ignored by event consumers.", + "type": "object" + } + } + }, + "StorageBlobInventoryPolicyCompletedEventData": { + "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Storage.BlobInventoryPolicyCompleted event.", + "type": "object", + "properties": { + "scheduleDateTime": { + "description": "The time at which inventory policy was scheduled.", + "format": "date-time", + "type": "string" + }, + "accountName": { + "description": "The account name for which inventory policy is registered.", + "type": "string" + }, + "ruleName": { + "description": "The rule name for inventory policy.", + "type": "string" + }, + "policyRunStatus": { + "description": "The status of inventory run, it can be Succeeded/PartiallySucceeded/Failed.", + "type": "string" + }, + "policyRunStatusMessage": { + "description": "The status message for inventory run.", + "type": "string" + }, + "policyRunId": { + "description": "The policy run id for inventory run.", + "type": "string" + }, + "manifestBlobUrl": { + "description": "The blob URL for manifest file for inventory run.", + "type": "string" + } + } } } } diff --git a/specification/eventgrid/data-plane/Microsoft.Web/stable/2018-01-01/Web.json b/specification/eventgrid/data-plane/Microsoft.Web/stable/2018-01-01/Web.json index 69d70d1b6fb5..8b8e69af6d3e 100644 --- a/specification/eventgrid/data-plane/Microsoft.Web/stable/2018-01-01/Web.json +++ b/specification/eventgrid/data-plane/Microsoft.Web/stable/2018-01-01/Web.json @@ -8,7 +8,7 @@ "paths": {}, "definitions": { "WebAppUpdatedEventData": { - "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Web.AppUpdated event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Web.AppUpdated event.", "type": "object", "properties": { "appEventTypeDetail": { @@ -41,7 +41,7 @@ } }, "WebBackupOperationStartedEventData": { - "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Web.BackupOperationStarted event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Web.BackupOperationStarted event.", "type": "object", "properties": { "appEventTypeDetail": { @@ -74,7 +74,7 @@ } }, "WebBackupOperationCompletedEventData": { - "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Web.BackupOperationCompleted event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Web.BackupOperationCompleted event.", "type": "object", "properties": { "appEventTypeDetail": { @@ -107,7 +107,7 @@ } }, "WebBackupOperationFailedEventData": { - "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Web.BackupOperationFailed event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Web.BackupOperationFailed event.", "type": "object", "properties": { "appEventTypeDetail": { @@ -140,7 +140,7 @@ } }, "WebRestoreOperationStartedEventData": { - "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Web.RestoreOperationStarted event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Web.RestoreOperationStarted event.", "type": "object", "properties": { "appEventTypeDetail": { @@ -173,7 +173,7 @@ } }, "WebRestoreOperationCompletedEventData": { - "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Web.RestoreOperationCompleted event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Web.RestoreOperationCompleted event.", "type": "object", "properties": { "appEventTypeDetail": { @@ -206,7 +206,7 @@ } }, "WebRestoreOperationFailedEventData": { - "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Web.RestoreOperationFailed event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Web.RestoreOperationFailed event.", "type": "object", "properties": { "appEventTypeDetail": { @@ -239,7 +239,7 @@ } }, "WebSlotSwapStartedEventData": { - "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Web.SlotSwapStarted event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Web.SlotSwapStarted event.", "type": "object", "properties": { "appEventTypeDetail": { @@ -272,7 +272,7 @@ } }, "WebSlotSwapCompletedEventData": { - "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Web.SlotSwapCompleted event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Web.SlotSwapCompleted event.", "type": "object", "properties": { "appEventTypeDetail": { @@ -305,7 +305,7 @@ } }, "WebSlotSwapFailedEventData": { - "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Web.SlotSwapFailed event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Web.SlotSwapFailed event.", "type": "object", "properties": { "appEventTypeDetail": { @@ -338,7 +338,7 @@ } }, "WebSlotSwapWithPreviewStartedEventData": { - "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Web.SlotSwapWithPreviewStarted event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Web.SlotSwapWithPreviewStarted event.", "type": "object", "properties": { "appEventTypeDetail": { @@ -371,7 +371,7 @@ } }, "WebSlotSwapWithPreviewCancelledEventData": { - "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Web.SlotSwapWithPreviewCancelled event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Web.SlotSwapWithPreviewCancelled event.", "type": "object", "properties": { "appEventTypeDetail": { @@ -404,7 +404,7 @@ } }, "WebAppServicePlanUpdatedEventData": { - "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Web.AppServicePlanUpdated event.", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Web.AppServicePlanUpdated event.", "type": "object", "properties": { "appServicePlanEventTypeDetail": { diff --git a/specification/eventgrid/data-plane/readme.go.md b/specification/eventgrid/data-plane/readme.go.md index 7db2747103ef..afcbedb99cd0 100644 --- a/specification/eventgrid/data-plane/readme.go.md +++ b/specification/eventgrid/data-plane/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: eventgrid clear-output-folder: true ``` diff --git a/specification/eventgrid/data-plane/readme.md b/specification/eventgrid/data-plane/readme.md index c405edd08c81..0c27acfb7f1b 100644 --- a/specification/eventgrid/data-plane/readme.md +++ b/specification/eventgrid/data-plane/readme.md @@ -12,6 +12,31 @@ that describes the schemas for its events. This configuration enables packaging all of the above as one EventGrid data plane library. This enables customers to download one EventGrid data plane library instead of having to install separate packages to get the event schemas for each service. +### Guidelines for defining a new event + +In order to automate the mapping of event definition with event type, please follow the guidelines below when adding new events to your swagger: +- The name of a new event definition should have `EventData` suffix. For e.g. `AcsChatMessageReceivedEventData`. +- The description of the new event should include the event type. This is the `eventType` name in an `EventGridEvent` or `type` name in `CloudEvent`. For e.g. `"Schema of the Data property of an EventGridEvent for a Microsoft.Communication.ChatMessageReceived event.` Here `Microsoft.Communication.ChatMessageReceived` is the event name. + +A sample valid event definition is shown below: +~~~ markdown +```json +"AcsChatMessageReceivedEventData": { + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.ChatMessageReceived event.", + "allOf": [ + { + "$ref": "#/definitions/AcsChatMessageEventBaseProperties" + } + ], + "properties": { + "messageBody": { + "description": "The body of the chat message", + "type": "string" + } + } +} +``` +~~~ --- ## Getting Started @@ -60,6 +85,9 @@ input-file: - Microsoft.Cache/stable/2018-01-01/RedisCache.json - Microsoft.Web/stable/2018-01-01/Web.json - Microsoft.Communication/stable/2018-01-01/AzureCommunicationServices.json +- Microsoft.PolicyInsights/stable/2018-01-01/PolicyInsights.json +- Microsoft.AgFoodPlatform/stable/2018-01-01/AzureFarmBeats.json + ``` ### Suppression diff --git a/specification/eventgrid/resource-manager/readme.azureresourceschema.md b/specification/eventgrid/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 5828a52b731c..000000000000 --- a/specification/eventgrid/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,156 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-eventgrid-2020-10-15-preview - - tag: schema-eventgrid-2020-06-01 - - tag: schema-eventgrid-2020-04-01-preview - - tag: schema-eventgrid-2020-01-01-preview - - tag: schema-eventgrid-2019-06-01 - - tag: schema-eventgrid-2019-02-01-preview - - tag: schema-eventgrid-2019-01-01 - - tag: schema-eventgrid-2018-09-15-preview - - tag: schema-eventgrid-2018-05-01-preview - - tag: schema-eventgrid-2018-01-01 - - tag: schema-eventgrid-2017-09-15-preview - - tag: schema-eventgrid-2017-06-15-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-eventgrid-2020-10-15-preview and azureresourceschema - -``` yaml $(tag) == 'schema-eventgrid-2020-10-15-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.EventGrid/preview/2020-10-15-preview/EventGrid.json - -``` - -### Tag: schema-eventgrid-2020-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-eventgrid-2020-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.EventGrid/stable/2020-06-01/EventGrid.json - -``` - -### Tag: schema-eventgrid-2020-04-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-eventgrid-2020-04-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.EventGrid/preview/2020-04-01-preview/EventGrid.json - -``` - -### Tag: schema-eventgrid-2020-01-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-eventgrid-2020-01-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.EventGrid/preview/2020-01-01-preview/EventGrid.json - -``` - -### Tag: schema-eventgrid-2019-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-eventgrid-2019-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.EventGrid/stable/2019-06-01/EventGrid.json - -``` - -### Tag: schema-eventgrid-2019-02-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-eventgrid-2019-02-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.EventGrid/preview/2019-02-01-preview/EventGrid.json - -``` - -### Tag: schema-eventgrid-2019-01-01 and azureresourceschema - -``` yaml $(tag) == 'schema-eventgrid-2019-01-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.EventGrid/stable/2019-01-01/EventGrid.json - -``` - -### Tag: schema-eventgrid-2018-09-15-preview and azureresourceschema - -``` yaml $(tag) == 'schema-eventgrid-2018-09-15-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.EventGrid/preview/2018-09-15-preview/EventGrid.json - -``` - -### Tag: schema-eventgrid-2018-05-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-eventgrid-2018-05-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.EventGrid/preview/2018-05-01-preview/EventGrid.json - -``` - -### Tag: schema-eventgrid-2018-01-01 and azureresourceschema - -``` yaml $(tag) == 'schema-eventgrid-2018-01-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.EventGrid/stable/2018-01-01/EventGrid.json - -``` - -### Tag: schema-eventgrid-2017-09-15-preview and azureresourceschema - -``` yaml $(tag) == 'schema-eventgrid-2017-09-15-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.EventGrid/preview/2017-09-15-preview/EventGrid.json - -``` - -### Tag: schema-eventgrid-2017-06-15-preview and azureresourceschema - -``` yaml $(tag) == 'schema-eventgrid-2017-06-15-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.EventGrid/preview/2017-06-15-preview/EventGrid.json - -``` diff --git a/specification/eventgrid/resource-manager/readme.go.md b/specification/eventgrid/resource-manager/readme.go.md index 7b50bc9c71c2..343b062224b5 100644 --- a/specification/eventgrid/resource-manager/readme.go.md +++ b/specification/eventgrid/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: eventgrid clear-output-folder: true ``` diff --git a/specification/eventgrid/resource-manager/readme.md b/specification/eventgrid/resource-manager/readme.md index 6bbee44402f6..5877c8a4782f 100644 --- a/specification/eventgrid/resource-manager/readme.md +++ b/specification/eventgrid/resource-manager/readme.md @@ -175,6 +175,7 @@ This is not used by Autorest itself. swagger-to-sdk: - repo: azure-sdk-for-net - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-java - repo: azure-sdk-for-go - repo: azure-sdk-for-js @@ -183,8 +184,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_event_grid'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js eventgrid/resource-manager ``` ## C# @@ -202,6 +201,10 @@ csharp: clear-output-folder: true ``` +## Python + +See configuration in [readme.python.md](./readme.python.md) + ## Go See configuration in [readme.go.md](./readme.go.md) @@ -210,7 +213,5 @@ See configuration in [readme.go.md](./readme.go.md) See configuration in [readme.java.md](./readme.java.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/Clusters-preview.json b/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/Clusters-preview.json index 9300b0e7a82a..54fa3cdb8dfe 100644 --- a/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/Clusters-preview.json +++ b/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/Clusters-preview.json @@ -383,7 +383,6 @@ }, "capacity": { "format": "int32", - "maximum": 32, "minimum": 1, "type": "integer", "description": "The quantity of Event Hubs Cluster Capacity Units contained in this cluster." diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/namespaces-preview.json b/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/namespaces-preview.json index 02608d7b5225..d478155de650 100644 --- a/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/namespaces-preview.json +++ b/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/namespaces-preview.json @@ -615,6 +615,11 @@ "type": "string", "description": "Provisioning state of the Namespace." }, + "status": { + "readOnly": true, + "type": "string", + "description": "Status of the Namespace." + }, "createdAt": { "readOnly": true, "format": "date-time", @@ -704,7 +709,6 @@ }, "capacity": { "format": "int32", - "maximum": 20, "minimum": 0, "type": "integer", "description": "The Event Hubs throughput units, value should be 0 to 20 throughput units." diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2021-01-01-preview/namespaces-preview.json b/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2021-01-01-preview/namespaces-preview.json index 7082a9bffc14..27229f88fa20 100644 --- a/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2021-01-01-preview/namespaces-preview.json +++ b/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2021-01-01-preview/namespaces-preview.json @@ -614,6 +614,11 @@ "type": "string", "description": "Provisioning state of the Namespace." }, + "status": { + "readOnly": true, + "type": "string", + "description": "Status of the Namespace." + }, "createdAt": { "readOnly": true, "format": "date-time", @@ -689,7 +694,8 @@ "description": "Name of this SKU.", "enum": [ "Basic", - "Standard" + "Standard", + "Premium" ], "x-ms-enum": { "name": "SkuName", @@ -701,7 +707,8 @@ "description": "The billing tier of this particular SKU.", "enum": [ "Basic", - "Standard" + "Standard", + "Premium" ], "x-ms-enum": { "name": "SkuTier", @@ -710,10 +717,9 @@ }, "capacity": { "format": "int32", - "maximum": 20, "minimum": 0, "type": "integer", - "description": "The Event Hubs throughput units, value should be 0 to 20 throughput units." + "description": "The Event Hubs throughput units for Basic or Standard tiers, where value should be 0 to 20 throughput units. The Event Hubs premium units for Premium tier, where value should be 0 to 10 premium units." } }, "required": [ diff --git a/specification/eventhub/resource-manager/readme.azureresourceschema.md b/specification/eventhub/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index b1d6e45a36f0..000000000000 --- a/specification/eventhub/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,81 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-eventhub-2018-01-01-preview - - tag: schema-eventhub-2017-04-01 - - tag: schema-eventhub-2015-08-01 - - tag: schema-eventhub-2014-09-01 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-eventhub-2018-01-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-eventhub-2018-01-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.EventHub/preview/2018-01-01-preview/AvailableClusterRegions-preview.json - - Microsoft.EventHub/preview/2018-01-01-preview/Clusters-preview.json - - Microsoft.EventHub/preview/2018-01-01-preview/ipfilterrules-preview.json - - Microsoft.EventHub/preview/2018-01-01-preview/namespaces-preview.json - - Microsoft.EventHub/preview/2018-01-01-preview/quotaConfiguration-preview.json - - Microsoft.EventHub/preview/2018-01-01-preview/virtualnetworkrules-preview.json - - Microsoft.EventHub/preview/2018-01-01-preview/networkrulessets-preview.json - - Microsoft.EventHub/preview/2018-01-01-preview/AuthorizationRules.json - - Microsoft.EventHub/preview/2018-01-01-preview/CheckNameAvailability.json - - Microsoft.EventHub/preview/2018-01-01-preview/consumergroups.json - - Microsoft.EventHub/preview/2018-01-01-preview/disasterRecoveryConfigs.json - - Microsoft.EventHub/preview/2018-01-01-preview/operations.json - - Microsoft.EventHub/preview/2018-01-01-preview/eventhubs.json - - Microsoft.EventHub/preview/2018-01-01-preview/sku.json - -``` - -### Tag: schema-eventhub-2017-04-01 and azureresourceschema - -``` yaml $(tag) == 'schema-eventhub-2017-04-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.EventHub/stable/2017-04-01/AuthorizationRules.json - - Microsoft.EventHub/stable/2017-04-01/CheckNameAvailability.json - - Microsoft.EventHub/stable/2017-04-01/consumergroups.json - - Microsoft.EventHub/stable/2017-04-01/disasterRecoveryConfigs.json - - Microsoft.EventHub/stable/2017-04-01/eventhubs.json - - Microsoft.EventHub/stable/2017-04-01/namespaces.json - - Microsoft.EventHub/stable/2017-04-01/networkRuleSets.json - - Microsoft.EventHub/stable/2017-04-01/operations.json - - Microsoft.EventHub/stable/2017-04-01/sku.json - -``` - -### Tag: schema-eventhub-2015-08-01 and azureresourceschema - -``` yaml $(tag) == 'schema-eventhub-2015-08-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.EventHub/stable/2015-08-01/EventHub.json - -``` - -### Tag: schema-eventhub-2014-09-01 and azureresourceschema - -``` yaml $(tag) == 'schema-eventhub-2014-09-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.EventHub/stable/2014-09-01/EventHub.json - -``` diff --git a/specification/eventhub/resource-manager/readme.go.md b/specification/eventhub/resource-manager/readme.go.md index 87168a449546..661e4c12916e 100644 --- a/specification/eventhub/resource-manager/readme.go.md +++ b/specification/eventhub/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: eventhub clear-output-folder: true ``` diff --git a/specification/eventhub/resource-manager/readme.md b/specification/eventhub/resource-manager/readme.md index c8134f356542..25d78e03d8fb 100644 --- a/specification/eventhub/resource-manager/readme.md +++ b/specification/eventhub/resource-manager/readme.md @@ -155,8 +155,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_event_hub'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js eventhub/resource-manager ``` @@ -186,7 +184,5 @@ See configuration in [readme.go.md](./readme.go.md) See configuration in [readme.java.md](./readme.java.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/eventhub/resource-manager/readme.python.md b/specification/eventhub/resource-manager/readme.python.md index 4c5566091d69..fd04864d47f4 100644 --- a/specification/eventhub/resource-manager/readme.python.md +++ b/specification/eventhub/resource-manager/readme.python.md @@ -8,6 +8,7 @@ python: license-header: MICROSOFT_MIT_NO_VERSION payload-flattening-threshold: 2 package-name: azure-mgmt-eventhub + package-version: 0.1.0 clear-output-folder: true no-namespace-folders: true ``` @@ -18,6 +19,7 @@ These settings apply only when `--track2` is specified on the command line. azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION package-name: azure-mgmt-eventhub +package-version: 1.0.0b1 no-namespace-folders: true modelerfour: lenient-model-deduplication: true diff --git a/specification/extendedlocation/resource-manager/Microsoft.ExtendedLocation/preview/2020-07-15-privatepreview/customlocations.json b/specification/extendedlocation/resource-manager/Microsoft.ExtendedLocation/preview/2020-07-15-privatepreview/customlocations.json deleted file mode 100644 index 471e5b9a9cf5..000000000000 --- a/specification/extendedlocation/resource-manager/Microsoft.ExtendedLocation/preview/2020-07-15-privatepreview/customlocations.json +++ /dev/null @@ -1,738 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "version": "2020-07-15-privatepreview", - "title": "customLocations", - "description": "The customLocations Rest API spec." - }, - "host": "management.azure.com", - "schemes": [ - "https" - ], - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "security": [ - { - "azure_auth": [ - "user_impersonation" - ] - } - ], - "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" - } - } - }, - "paths": { - "/providers/Microsoft.ExtendedLocation/operations": { - "get": { - "tags": [ - "customLocations" - ], - "operationId": "customLocations_ListOperations", - "description": "Lists all available Custom Locations operations.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Operation details.", - "schema": { - "$ref": "#/definitions/customLocationOperationsList" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "deprecated": false, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-examples": { - "List Custom Locations operations": { - "$ref": "./examples/CustomLocationsListOperations.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.ExtendedLocation/customLocations": { - "get": { - "tags": [ - "customLocations" - ], - "operationId": "customLocations_ListBySubscription", - "summary": "Gets a list of Custom Locations in a subscription.", - "description": "Gets a list of Custom Locations in the specified subscription. The operation returns properties of each Custom Location", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/customLocationListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-examples": { - "List Custom Locations by subscription": { - "$ref": "./examples/CustomLocationsListBySubscription.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ExtendedLocation/customLocations": { - "get": { - "tags": [ - "customLocations" - ], - "operationId": "customLocations_ListByResourceGroup", - "summary": "Gets a list of Custom Locations in the specified subscription and resource group.", - "description": "Gets a list of Custom Locations in the specified subscription and resource group. The operation returns properties of each Custom Location.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/customLocationListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-examples": { - "List Custom Locations by resource group": { - "$ref": "./examples/CustomLocationsListByResourceGroup.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ExtendedLocation/customLocations/{resourceName}": { - "get": { - "tags": [ - "customLocations" - ], - "operationId": "customLocations_Get", - "summary": "Gets a Custom Location.", - "description": "Gets the details of the customLocation with a specified resource group and name.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/ResourceNameParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/customLocation" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-examples": { - "Get Custom Location": { - "$ref": "./examples/CustomLocationsGet.json" - } - } - }, - "put": { - "tags": [ - "customLocations" - ], - "operationId": "customLocations_CreateOrUpdate", - "summary": "Creates or updates a Custom Location.", - "description": "Creates or updates a Custom Location in the specified Subscription and Resource Group", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/ResourceNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/customLocation" - }, - "description": "Parameters supplied to create or update a Custom Location." - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/customLocation" - } - }, - "201": { - "description": "Created", - "schema": { - "$ref": "#/definitions/customLocation" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "azure-async-operation" - }, - "x-ms-examples": { - "Create/Update Custom Location": { - "$ref": "./examples/CustomLocationsCreate_Update.json" - } - } - }, - "delete": { - "tags": [ - "customLocations" - ], - "operationId": "customLocations_Delete", - "summary": "Deletes a Custom Location.", - "description": "Deletes the Custom Location with the specified Resource Name, Resource Group, and Subscription Id.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/ResourceNameParameter" - } - ], - "responses": { - "202": { - "description": "Accepted. The response indicates the delete operation is performed in the background." - }, - "204": { - "description": "NoContent. The response indicates the customLocation resource is already deleted." - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "azure-async-operation" - }, - "x-ms-examples": { - "Delete Custom Location": { - "$ref": "./examples/CustomLocationsDelete.json" - } - } - }, - "patch": { - "tags": [ - "customLocations" - ], - "operationId": "customLocations_Update", - "summary": "Updates a Custom Location.", - "description": "Updates a Custom Location with the specified Resource Name in the specified Resource Group and Subscription.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/ResourceNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "x-ms-client-flatten": true, - "schema": { - "$ref": "#/definitions/patchableCustomLocations" - }, - "description": "The updatable fields of an existing Custom Location." - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/customLocation" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-examples": { - "Update Custom Location": { - "$ref": "./examples/CustomLocationsPatch.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ExtendedLocation/customLocations/{resourceName}/enabledResourceTypes": { - "get": { - "tags": [ - "customLocations" - ], - "operationId": "customLocations_ListEnabledResourceTypes", - "summary": "Gets the list of Enabled Resource Types.", - "description": "Gets the list of the Enabled Resource Types.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/ResourceNameParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/EnabledResourceTypesListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-examples": { - "Get Custom Location": { - "$ref": "./examples/CustomLocationsListEnabledResourceTypes.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ExtendedLocation/customLocations/{resourceName}/enabledResourceTypes/{enabledResourceTypeName}": { - "get": { - "tags": [ - "customLocations" - ], - "operationId": "customLocations_GetEnabledResourceType", - "summary": "Gets details of a Enabled Resource Type.", - "description": "Gets the details of the Enabled Resource Type.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/ResourceNameParameter" - }, - { - "$ref": "#/parameters/EnabledResourceTypeNameParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/EnabledResourceType" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-examples": { - "Get Custom Location": { - "$ref": "./examples/CustomLocationsGetEnabledResourceType.json" - } - } - } - } - }, - "parameters": { - "EnabledResourceTypeNameParameter": { - "name": "enabledResourceTypeName", - "in": "path", - "required": true, - "type": "string", - "x-ms-parameter-location": "method", - "minLength": 1, - "maxLength": 63, - "pattern": "^[a-zA-Z0-9]$|^[a-zA-Z0-9][-_a-zA-Z0-9]{0,61}[a-zA-Z0-9]$", - "description": "Custom Locations Enabled Resource Type name." - }, - "ResourceNameParameter": { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "x-ms-parameter-location": "method", - "minLength": 1, - "maxLength": 63, - "pattern": "^[a-zA-Z0-9]$|^[a-zA-Z0-9][-_a-zA-Z0-9]{0,61}[a-zA-Z0-9]$", - "description": "Custom Locations name." - } - }, - "definitions": { - "EnabledResourceType": { - "description": "EnabledResourceType definition.", - "type": "object", - "properties": { - "properties": { - "$ref": "#/definitions/EnabledResourceTypeProperties", - "description": "The set of properties for EnabledResourceType specific to a Custom Location", - "x-ms-client-flatten": true - }, - "systemData": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData", - "description": "Metadata pertaining to creation and last modification of the resource", - "readOnly": true - } - }, - "allOf": [ - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" - } - ] - }, - "EnabledResourceTypeProperties": { - "description": "Properties for EnabledResourceType of a custom location.", - "type": "object", - "properties": { - "clusterExtensionId": { - "description": "Cluster Extension ID", - "type": "string" - }, - "extensionType": { - "description": "Cluster Extension Type", - "type": "string" - }, - "typesMetadata": { - "description": "Metadata of the Resource Type", - "type": "array", - "items": { - "description": "Metadata of the Resource Type.", - "type": "object", - "properties": { - "apiVersion": { - "description": "Api Version of Resource Type", - "type": "string" - }, - "resourceProviderNamespace": { - "description": "Resource Provider Namespace of Resource Type", - "type": "string" - }, - "resourceType": { - "description": "Resource Type", - "type": "string" - } - } - } - } - } - }, - "EnabledResourceTypesListResult": { - "description": "List of EnabledResourceTypes definition.", - "type": "object", - "properties": { - "nextLink": { - "description": "The URL to use for getting the next set of results.", - "type": "string", - "readOnly": true - }, - "value": { - "description": "The list of EnabledResourceTypes available for a customLocation.", - "type": "array", - "readOnly": true, - "items": { - "$ref": "#/definitions/EnabledResourceType" - } - } - } - }, - "customLocation": { - "description": "Custom Locations definition.", - "type": "object", - "properties": { - "properties": { - "$ref": "#/definitions/customLocationProperties", - "description": "The set of properties specific to a Custom Location", - "x-ms-client-flatten": true - }, - "systemData": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData", - "description": "Metadata pertaining to creation and last modification of the resource", - "readOnly": true - } - }, - "allOf": [ - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/TrackedResource" - } - ] - }, - "customLocationListResult": { - "description": "The List Custom Locations operation response.", - "properties": { - "nextLink": { - "description": "The URL to use for getting the next set of results.", - "type": "string", - "readOnly": true - }, - "value": { - "description": "The list of Custom Locations.", - "type": "array", - "readOnly": true, - "items": { - "$ref": "#/definitions/customLocation" - } - } - } - }, - "customLocationOperation": { - "description": "Custom Locations operation.", - "properties": { - "display": { - "$ref": "#/definitions/customLocationOperationValueDisplay", - "description": "Describes the properties of a Custom Locations Operation Value Display.", - "x-ms-client-flatten": true - }, - "isDataAction": { - "description": "Is this Operation a data plane operation", - "type": "boolean", - "readOnly": true - }, - "name": { - "description": "The name of the compute operation.", - "type": "string", - "readOnly": true - }, - "origin": { - "description": "The origin of the compute operation.", - "type": "string", - "readOnly": true - } - } - }, - "customLocationOperationValueDisplay": { - "description": "Describes the properties of a Custom Locations Operation Value Display.", - "properties": { - "description": { - "description": "The description of the operation.", - "type": "string", - "readOnly": true - }, - "operation": { - "description": "The display name of the compute operation.", - "type": "string", - "readOnly": true - }, - "provider": { - "description": "The resource provider for the operation.", - "type": "string", - "readOnly": true - }, - "resource": { - "description": "The display name of the resource the operation applies to.", - "type": "string", - "readOnly": true - } - } - }, - "customLocationOperationsList": { - "description": "Lists of Custom Locations operations.", - "required": [ - "value" - ], - "properties": { - "nextLink": { - "description": "Next page of operations.", - "type": "string" - }, - "value": { - "description": "Array of customLocationOperation", - "type": "array", - "items": { - "$ref": "#/definitions/customLocationOperation" - } - } - } - }, - "customLocationProperties": { - "description": "Properties for a custom location.", - "type": "object", - "properties": { - "authentication": { - "description": "This is optional input that contains the authentication that should be used to generate the namespace.", - "type": "object", - "properties": { - "type": { - "description": "The type of the Custom Locations authentication", - "type": "string" - }, - "value": { - "description": "The kubeconfig value.", - "type": "string", - "x-ms-mutability": [ - "create", - "update" - ], - "x-ms-secret": true - } - } - }, - "clusterExtensionIds": { - "description": "Contains the reference to the add-on that contains charts to deploy CRDs and operators.", - "type": "array", - "items": { - "type": "string" - } - }, - "displayName": { - "description": "Display name for the Custom Locations location.", - "type": "string" - }, - "hostResourceId": { - "description": "Connected Cluster or AKS Cluster. The Custom Locations RP will perform a checkAccess API for listAdminCredentials permissions.", - "type": "string" - }, - "hostType": { - "description": "Type of host the Custom Locations is referencing (Kubernetes, etc...).", - "type": "string", - "enum": [ - "Kubernetes" - ], - "x-ms-enum": { - "name": "HostType", - "modelAsString": true - } - }, - "namespace": { - "description": "Kubernetes namespace that will be created on the specified cluster.", - "type": "string" - }, - "provisioningState": { - "description": "Provisioning State for the Custom Location.", - "type": "string" - } - } - }, - "patchableCustomLocations": { - "description": "The Custom Locations patchable resource definition.", - "type": "object", - "x-ms-azure-resource": true, - "x-ms-client-flatten": true, - "properties": { - "properties": { - "$ref": "#/definitions/customLocationProperties", - "description": "The Custom Locations patchable properties.", - "x-ms-client-flatten": true - }, - "tags": { - "description": "Resource tags", - "type": "object", - "additionalProperties": { - "type": "string" - } - } - } - } - } -} diff --git a/specification/extendedlocation/resource-manager/Microsoft.ExtendedLocation/preview/2020-07-15-privatepreview/examples/CustomLocationsCreate_Update.json b/specification/extendedlocation/resource-manager/Microsoft.ExtendedLocation/preview/2020-07-15-privatepreview/examples/CustomLocationsCreate_Update.json deleted file mode 100644 index 730c5f18115d..000000000000 --- a/specification/extendedlocation/resource-manager/Microsoft.ExtendedLocation/preview/2020-07-15-privatepreview/examples/CustomLocationsCreate_Update.json +++ /dev/null @@ -1,81 +0,0 @@ -{ - "parameters": { - "api-version": "2020-07-15-privatepreview", - "subscriptionId": "11111111-2222-3333-4444-555555555555", - "resourceGroupName": "testresourcegroup", - "resourceName": "customLocation01", - "parameters": { - "location": "West US", - "properties": { - "hostResourceId": "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/testresourcegroup/providers/Microsoft.ContainerService/managedClusters/cluster01", - "namespace": "namespace01", - "displayName": "customLocationLocation01", - "clusterExtensionIds": [ - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kubernetes/connectedCluster/someCluster/Microsoft.KubernetesConfiguration/clusterExtensions/fooExtension" - ], - "authentication": { - "type": "KubeConfig", - "value": "" - } - } - } - }, - "responses": { - "200": { - "body": { - "id": "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/testrg/providers/Microsoft.ExtendedLocation/customLocations/customLocation01", - "name": "customLocation01", - "type": "Microsoft.ExtendedLocation/customLocations", - "location": "West US", - "properties": { - "hostResourceId": "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/testresourcegroup/providers/Microsoft.ContainerService/managedClusters/cluster01", - "namespace": "namespace01", - "displayName": "customLocationLocation01", - "provisioningState": "Succeeded", - "clusterExtensionIds": [ - "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/testresourcegroup/providers/Microsoft.ContainerService/managedClusters/cluster01/Microsoft.KubernetesConfiguration/clusterExtensions/fooExtension" - ], - "authentication": { - "type": "KubeConfig" - } - }, - "systemData": { - "createdBy": "string", - "createdByType": "Application", - "createdAt": "2020-04-24T18:53:29.0928001Z", - "lastModifiedBy": "string", - "lastModifiedByType": "Application", - "lastModifiedAt": "2020-04-24T18:53:29.0928001Z" - } - } - }, - "201": { - "body": { - "id": "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/testrg/providers/Microsoft.ExtendedLocation/customLocations/customLocation01", - "name": "customLocation01", - "type": "Microsoft.ExtendedLocation/customLocations", - "location": "West US", - "properties": { - "hostResourceId": "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/testresourcegroup/providers/Microsoft.ContainerService/managedClusters/cluster01", - "namespace": "namespace01", - "displayName": "customLocationLocation01", - "provisioningState": "Succeeded", - "clusterExtensionIds": [ - "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/testrg/providers/Microsoft.ContainerService/managedClusters/cluster01/Microsoft.KubernetesConfiguration/clusterExtensions/fooExtension" - ], - "authentication": { - "type": "KubeConfig" - } - }, - "systemData": { - "createdBy": "string", - "createdByType": "Application", - "createdAt": "2020-04-24T18:53:29.0928001Z", - "lastModifiedBy": "string", - "lastModifiedByType": "Application", - "lastModifiedAt": "2020-04-24T18:53:29.0928001Z" - } - } - } - } -} diff --git a/specification/extendedlocation/resource-manager/Microsoft.ExtendedLocation/preview/2020-07-15-privatepreview/examples/CustomLocationsDelete.json b/specification/extendedlocation/resource-manager/Microsoft.ExtendedLocation/preview/2020-07-15-privatepreview/examples/CustomLocationsDelete.json deleted file mode 100644 index 4150bb81c7cd..000000000000 --- a/specification/extendedlocation/resource-manager/Microsoft.ExtendedLocation/preview/2020-07-15-privatepreview/examples/CustomLocationsDelete.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parameters": { - "api-version": "2020-07-15-privatepreview", - "subscriptionId": "11111111-2222-3333-4444-555555555555", - "resourceGroupName": "testresourcegroup", - "resourceName": "customLocation01" - }, - "responses": { - "202": {}, - "204": {} - } -} diff --git a/specification/extendedlocation/resource-manager/Microsoft.ExtendedLocation/preview/2020-07-15-privatepreview/examples/CustomLocationsGet.json b/specification/extendedlocation/resource-manager/Microsoft.ExtendedLocation/preview/2020-07-15-privatepreview/examples/CustomLocationsGet.json deleted file mode 100644 index 2214f8eb8e2d..000000000000 --- a/specification/extendedlocation/resource-manager/Microsoft.ExtendedLocation/preview/2020-07-15-privatepreview/examples/CustomLocationsGet.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "parameters": { - "api-version": "2020-07-15-privatepreview", - "subscriptionId": "11111111-2222-3333-4444-555555555555", - "resourceGroupName": "testresourcegroup", - "resourceName": "customLocation01" - }, - "responses": { - "200": { - "body": { - "id": "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/testrg/providers/Microsoft.ExtendedLocation/customLocations/customLocation01", - "name": "customLocation01", - "type": "Microsoft.ExtendedLocation/customLocations", - "location": "West US", - "properties": { - "hostResourceId": "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/testresourcegroup/providers/Microsoft.ContainerService/managedClusters/cluster01", - "namespace": "namespace01", - "displayName": "customLocationLocation01", - "provisioningState": "Succeeded", - "clusterExtensionIds": [ - "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/testresourcegroup/providers/Microsoft.ContainerService/managedClusters/cluster01/Microsoft.KubernetesConfiguration/clusterExtensions/fooExtension" - ], - "authentication": { - "type": "KubeConfig" - } - }, - "systemData": { - "createdBy": "string", - "createdByType": "Application", - "createdAt": "2020-04-24T18:53:29.0928001Z", - "lastModifiedBy": "string", - "lastModifiedByType": "Application", - "lastModifiedAt": "2020-04-24T18:53:29.0928001Z" - } - } - } - } -} diff --git a/specification/extendedlocation/resource-manager/Microsoft.ExtendedLocation/preview/2020-07-15-privatepreview/examples/CustomLocationsGetEnabledResourceType.json b/specification/extendedlocation/resource-manager/Microsoft.ExtendedLocation/preview/2020-07-15-privatepreview/examples/CustomLocationsGetEnabledResourceType.json deleted file mode 100644 index 4f282f241435..000000000000 --- a/specification/extendedlocation/resource-manager/Microsoft.ExtendedLocation/preview/2020-07-15-privatepreview/examples/CustomLocationsGetEnabledResourceType.json +++ /dev/null @@ -1,42 +0,0 @@ -{ - "parameters": { - "api-version": "2020-07-15-privatepreview", - "subscriptionId": "11111111-2222-3333-4444-555555555555", - "resourceGroupName": "testresourcegroup", - "resourceName": "customLocation01", - "enabledResourceTypeName": "266e9d31e5be6be1e919574e25780d5783586d502f0b2cc422e0a228a34e00a" - }, - "responses": { - "200": { - "body": { - "id": "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/testrg/providers/Microsoft.ExtendedLocation/customLocations/customLocation01/enabledResourceTypes/266e9d31e5be6be1e919574e25780d5783586d502f0b2cc422e0a228a34e00a", - "name": "266e9d31e5be6be1e919574e25780d5783586d502f0b2cc422e0a228a34e00a", - "type": "Microsoft.ExtendedLocation/customLocations/enabledResourceTypes", - "properties": { - "clusterExtensionId": "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/testrg/providers/Microsoft.Kubernetes/connectedClusters/cldfe2econnectedcluster/providers/Microsoft.KubernetesConfiguration/extensions/cassandra-extension", - "extensionType": "cassandradatacentersoperator", - "typesMetadata": [ - { - "apiVersion": "2020-01-01-preview", - "resourceType": "cassandraDataCenters", - "resourceProviderNamespace": "Microsoft.Cassandra" - }, - { - "apiVersion": "2020-01-22-preview", - "resourceType": "cassandrabackups", - "resourceProviderNamespace": "Microsoft.Cassandra" - } - ] - }, - "systemData": { - "createdBy": "string", - "createdByType": "Application", - "createdAt": "2020-04-24T18:53:29.0928001Z", - "lastModifiedBy": "string", - "lastModifiedByType": "Application", - "lastModifiedAt": "2020-04-24T18:53:29.0928001Z" - } - } - } - } -} diff --git a/specification/extendedlocation/resource-manager/Microsoft.ExtendedLocation/preview/2020-07-15-privatepreview/examples/CustomLocationsListByResourceGroup.json b/specification/extendedlocation/resource-manager/Microsoft.ExtendedLocation/preview/2020-07-15-privatepreview/examples/CustomLocationsListByResourceGroup.json deleted file mode 100644 index 758563b465cb..000000000000 --- a/specification/extendedlocation/resource-manager/Microsoft.ExtendedLocation/preview/2020-07-15-privatepreview/examples/CustomLocationsListByResourceGroup.json +++ /dev/null @@ -1,67 +0,0 @@ -{ - "parameters": { - "api-version": "2020-07-15-privatepreview", - "subscriptionId": "11111111-2222-3333-4444-555555555555", - "resourceGroupName": "testresourcegroup" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "id": "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/testresourcegroup/providers/Microsoft.ExtendedLocation/", - "name": "customLocation01", - "type": "Microsoft.ExtendedLocation/customLocations", - "location": "West US", - "properties": { - "hostResourceId": "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/testresourcegroup/providers/Microsoft.ContainerService/managedClusters/cluster01", - "namespace": "namespace01", - "displayName": "customLocationLocation01", - "provisioningState": "Succeeded", - "clusterExtensionIds": [ - "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/testresourcegroup/providers/Microsoft.ContainerService/managedClusters/cluster01/Microsoft.KubernetesConfiguration/clusterExtensions/fooExtension" - ], - "authentication": { - "type": "KubeConfig" - } - }, - "systemData": { - "createdBy": "string", - "createdByType": "Application", - "createdAt": "2020-04-24T18:53:29.0928001Z", - "lastModifiedBy": "string", - "lastModifiedByType": "Application", - "lastModifiedAt": "2020-04-24T18:53:29.0928001Z" - } - }, - { - "id": "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/testresourcegroup/providers/Microsoft.ExtendedLocation/", - "name": "customLocation02", - "type": "Microsoft.ExtendedLocation/customLocations", - "location": "West US", - "properties": { - "hostResourceId": "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/testresourcegroup/providers/Microsoft.ContainerService/managedClusters/cluster02", - "namespace": "namespace02", - "displayName": "customLocationLocation02", - "provisioningState": "Succeeded", - "clusterExtensionIds": [ - "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/testresourcegroup/providers/Microsoft.ContainerService/managedClusters/cluster02/Microsoft.KubernetesConfiguration/clusterExtensions/fooExtension" - ], - "authentication": { - "type": "KubeConfig" - } - }, - "systemData": { - "createdBy": "string", - "createdByType": "Application", - "createdAt": "2020-04-24T18:53:29.0928001Z", - "lastModifiedBy": "string", - "lastModifiedByType": "Application", - "lastModifiedAt": "2020-04-24T18:53:29.0928001Z" - } - } - ] - } - } - } -} diff --git a/specification/extendedlocation/resource-manager/Microsoft.ExtendedLocation/preview/2020-07-15-privatepreview/examples/CustomLocationsListBySubscription.json b/specification/extendedlocation/resource-manager/Microsoft.ExtendedLocation/preview/2020-07-15-privatepreview/examples/CustomLocationsListBySubscription.json deleted file mode 100644 index be8d7d11d7dd..000000000000 --- a/specification/extendedlocation/resource-manager/Microsoft.ExtendedLocation/preview/2020-07-15-privatepreview/examples/CustomLocationsListBySubscription.json +++ /dev/null @@ -1,66 +0,0 @@ -{ - "parameters": { - "api-version": "2020-07-15-privatepreview", - "subscriptionId": "11111111-2222-3333-4444-555555555555" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "id": "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/testresourcegroup/providers/Microsoft.ExtendedLocation/", - "name": "customLocation01", - "type": "Microsoft.ExtendedLocation/customLocations", - "location": "West US", - "properties": { - "hostResourceId": "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/testresourcegroup/providers/Microsoft.ContainerService/managedClusters/cluster01", - "namespace": "namespace01", - "displayName": "customLocationLocation01", - "provisioningState": "Succeeded", - "clusterExtensionIds": [ - "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/testresourcegroup/providers/Microsoft.ContainerService/managedClusters/cluster01/Microsoft.KubernetesConfiguration/clusterExtensions/fooExtension" - ], - "authentication": { - "type": "KubeConfig" - } - }, - "systemData": { - "createdBy": "string", - "createdByType": "Application", - "createdAt": "2020-04-24T18:53:29.0928001Z", - "lastModifiedBy": "string", - "lastModifiedByType": "Application", - "lastModifiedAt": "2020-04-24T18:53:29.0928001Z" - } - }, - { - "id": "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/testresourcegroup/providers/Microsoft.ExtendedLocation/", - "name": "customLocation02", - "type": "Microsoft.ExtendedLocation/customLocations", - "location": "West US", - "properties": { - "hostResourceId": "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/testresourcegroup/providers/Microsoft.ContainerService/managedClusters/cluster02", - "namespace": "namespace02", - "displayName": "customLocationLocation02", - "provisioningState": "Succeeded", - "clusterExtensionIds": [ - "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/testresourcegroup/providers/Microsoft.ContainerService/managedClusters/cluster02/Microsoft.KubernetesConfiguration/clusterExtensions/fooExtension" - ], - "authentication": { - "type": "KubeConfig" - } - }, - "systemData": { - "createdBy": "string", - "createdByType": "Application", - "createdAt": "2020-04-24T18:53:29.0928001Z", - "lastModifiedBy": "string", - "lastModifiedByType": "Application", - "lastModifiedAt": "2020-04-24T18:53:29.0928001Z" - } - } - ] - } - } - } -} diff --git a/specification/extendedlocation/resource-manager/Microsoft.ExtendedLocation/preview/2020-07-15-privatepreview/examples/CustomLocationsListEnabledResourceTypes.json b/specification/extendedlocation/resource-manager/Microsoft.ExtendedLocation/preview/2020-07-15-privatepreview/examples/CustomLocationsListEnabledResourceTypes.json deleted file mode 100644 index 30e55b249280..000000000000 --- a/specification/extendedlocation/resource-manager/Microsoft.ExtendedLocation/preview/2020-07-15-privatepreview/examples/CustomLocationsListEnabledResourceTypes.json +++ /dev/null @@ -1,74 +0,0 @@ -{ - "parameters": { - "api-version": "2020-07-15-privatepreview", - "subscriptionId": "11111111-2222-3333-4444-555555555555", - "resourceGroupName": "testresourcegroup", - "resourceName": "customLocation01" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "id": "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/testrg/providers/Microsoft.ExtendedLocation/customLocations/customLocation01/enabledResourceTypes/d016ecf26dae90594806aca3c1a6326c668357037f68103587edf2e657824737", - "name": "d016ecf26dae90594806aca3c1a6326c668357037f68103587edf2e657824737", - "type": "Microsoft.ExtendedLocation/customLocations/enabledResourceTypes", - "properties": { - "clusterExtensionId": "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/testrg/providers/Microsoft.Kubernetes/connectedClusters/cldfe2econnectedcluster/providers/Microsoft.KubernetesConfiguration/extensions/vmware-extension", - "extensionType": "arc-vmware", - "typesMetadata": [ - { - "apiVersion": "2020-01-01-preview", - "resourceType": "virtualMachines", - "resourceProviderNamespace": "Microsoft.VMware" - }, - { - "apiVersion": "2020-01-22-preview", - "resourceType": "virtualmachines", - "resourceProviderNamespace": "Microsoft.VMware" - } - ] - }, - "systemData": { - "createdBy": "string", - "createdByType": "Application", - "createdAt": "2020-04-24T18:53:29.0928001Z", - "lastModifiedBy": "string", - "lastModifiedByType": "Application", - "lastModifiedAt": "2020-04-24T18:53:29.0928001Z" - } - }, - { - "id": "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/testrg/providers/Microsoft.ExtendedLocation/customLocations/customLocation01/enabledResourceTypes/266e9d31e5be6be1e919574e25780d5783586d502f0b2cc422e0a228a34e00a6", - "name": "266e9d31e5be6be1e919574e25780d5783586d502f0b2cc422e0a228a34e00a6", - "type": "Microsoft.ExtendedLocation/customLocations/enabledResourceTypes", - "properties": { - "clusterExtensionId": "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/testrg/providers/Microsoft.Kubernetes/connectedClusters/cldfe2econnectedcluster/providers/Microsoft.KubernetesConfiguration/extensions/cassandra-extension", - "extensionType": "cassandradatacentersoperator", - "typesMetadata": [ - { - "apiVersion": "2020-01-01-preview", - "resourceType": "cassandraDataCenters", - "resourceProviderNamespace": "Microsoft.Cassandra" - }, - { - "apiVersion": "2020-01-22-preview", - "resourceType": "cassandrabackups", - "resourceProviderNamespace": "Microsoft.Cassandra" - } - ] - }, - "systemData": { - "createdBy": "string", - "createdByType": "Application", - "createdAt": "2020-04-24T18:53:29.0928001Z", - "lastModifiedBy": "string", - "lastModifiedByType": "Application", - "lastModifiedAt": "2020-04-24T18:53:29.0928001Z" - } - } - ] - } - } - } -} diff --git a/specification/extendedlocation/resource-manager/Microsoft.ExtendedLocation/preview/2020-07-15-privatepreview/examples/CustomLocationsListOperations.json b/specification/extendedlocation/resource-manager/Microsoft.ExtendedLocation/preview/2020-07-15-privatepreview/examples/CustomLocationsListOperations.json deleted file mode 100644 index 02262f98dbcf..000000000000 --- a/specification/extendedlocation/resource-manager/Microsoft.ExtendedLocation/preview/2020-07-15-privatepreview/examples/CustomLocationsListOperations.json +++ /dev/null @@ -1,90 +0,0 @@ -{ - "parameters": { - "api-version": "2020-07-15-privatepreview" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "name": "Microsoft.ExtendedLocation/operations/read", - "display": { - "description": "Gets list of Available Operations for Custom Locations", - "operation": "List Available Operations for Custom Locations", - "provider": "Microsoft Extended Location", - "resource": "Operations" - }, - "origin": "user,system", - "isDataAction": false - }, - { - "name": "Microsoft.ExtendedLocation/register/action", - "display": { - "description": "Registers the subscription for Custom Location resource provider and enables the creation of Custom Location.", - "operation": "Registers the Custom Location Resource Provider", - "provider": "Microsoft Extended Location", - "resource": "Custom Locations Resource Provider" - }, - "origin": "user,system", - "isDataAction": false - }, - { - "name": "Microsoft.ExtendedLocation/customLocations/read", - "display": { - "description": "Gets an Custom Location resource", - "operation": "Get Custom Location", - "provider": "Microsoft Extended Location", - "resource": "Custom Locations" - }, - "origin": "user,system", - "isDataAction": false - }, - { - "name": "Microsoft.ExtendedLocation/customLocations/write", - "display": { - "description": "Creates or Updates Custom Location resource", - "operation": "Create or Update Custom Location", - "provider": "Microsoft Extended Location", - "resource": "Custom Locations" - }, - "origin": "user,system", - "isDataAction": false - }, - { - "name": "Microsoft.ExtendedLocation/customLocations/delete", - "display": { - "description": "Deletes Custom Location resource", - "operation": "Delete Custom Location", - "provider": "Microsoft Extended Location", - "resource": "Custom Locations" - }, - "origin": "user,system", - "isDataAction": false - }, - { - "name": "Microsoft.ExtendedLocation/locations/operationsstatus/read", - "display": { - "description": "Get result of Custom Location operation", - "operation": "Get status of Custom Location operation", - "provider": "Microsoft Extended Location", - "resource": "Custom Location Operation Status" - }, - "origin": "user,system", - "isDataAction": false - }, - { - "name": "Microsoft.ExtendedLocation/locations/operationresults/read", - "display": { - "description": "Get result of Custom Location operation", - "operation": "Get the status of Custom Location operation", - "provider": "Microsoft Extended Location", - "resource": "Custom Location Operation Result" - }, - "origin": "user,system", - "isDataAction": false - } - ] - } - } - } -} diff --git a/specification/extendedlocation/resource-manager/Microsoft.ExtendedLocation/preview/2020-07-15-privatepreview/examples/CustomLocationsPatch.json b/specification/extendedlocation/resource-manager/Microsoft.ExtendedLocation/preview/2020-07-15-privatepreview/examples/CustomLocationsPatch.json deleted file mode 100644 index a86150db1776..000000000000 --- a/specification/extendedlocation/resource-manager/Microsoft.ExtendedLocation/preview/2020-07-15-privatepreview/examples/CustomLocationsPatch.json +++ /dev/null @@ -1,55 +0,0 @@ -{ - "parameters": { - "api-version": "2020-07-15-privatepreview", - "subscriptionId": "11111111-2222-3333-4444-555555555555", - "resourceGroupName": "testresourcegroup", - "resourceName": "customLocation01", - "parameters": { - "properties": { - "clusterExtensionIds": [ - "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/testresourcegroup/providers/Microsoft.ContainerService/managedClusters/cluster01/Microsoft.KubernetesConfiguration/clusterExtensions/fooExtension", - "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/testresourcegroup/providers/Microsoft.ContainerService/managedClusters/cluster01/Microsoft.KubernetesConfiguration/clusterExtensions/barExtension" - ] - }, - "tags": { - "tier": "testing", - "archv3": "" - } - } - }, - "responses": { - "200": { - "body": { - "id": "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/testrg/providers/Microsoft.ExtendedLocation/customLocations/customLocation01", - "name": "customLocation01", - "type": "Microsoft.ExtendedLocation/customLocations", - "location": "West US", - "tags": { - "tier": "testing", - "archv3": "" - }, - "properties": { - "hostResourceId": "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/testresourcegroup/providers/Microsoft.ContainerService/managedClusters/cluster01", - "namespace": "namespace01", - "displayName": "customLocationLocation01", - "provisioningState": "Succeeded", - "clusterExtensionIds": [ - "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/testresourcegroup/providers/Microsoft.ContainerService/managedClusters/cluster01/Microsoft.KubernetesConfiguration/clusterExtensions/fooExtension", - "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/testresourcegroup/providers/Microsoft.ContainerService/managedClusters/cluster01/Microsoft.KubernetesConfiguration/clusterExtensions/barExtension" - ], - "authentication": { - "type": "KubeConfig" - } - }, - "systemData": { - "createdBy": "string", - "createdByType": "Application", - "createdAt": "2020-04-24T18:53:29.0928001Z", - "lastModifiedBy": "string", - "lastModifiedByType": "Application", - "lastModifiedAt": "2020-04-24T18:53:29.0928001Z" - } - } - } - } -} diff --git a/specification/extendedlocation/resource-manager/Microsoft.ExtendedLocation/preview/2021-03-15-preview/customlocations.json b/specification/extendedlocation/resource-manager/Microsoft.ExtendedLocation/preview/2021-03-15-preview/customlocations.json index 3a5bcbc3ace2..6a6c64eb40bc 100644 --- a/specification/extendedlocation/resource-manager/Microsoft.ExtendedLocation/preview/2021-03-15-preview/customlocations.json +++ b/specification/extendedlocation/resource-manager/Microsoft.ExtendedLocation/preview/2021-03-15-preview/customlocations.json @@ -239,10 +239,6 @@ "$ref": "#/definitions/customLocation" } }, - "400": { - "description": "Bad Request", - "x-ms-error-response": true - }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -343,10 +339,6 @@ "$ref": "#/definitions/customLocation" } }, - "400": { - "description": "Bad Request", - "x-ms-error-response": true - }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -390,10 +382,6 @@ "$ref": "#/definitions/EnabledResourceTypesListResult" } }, - "400": { - "description": "Bad Request", - "x-ms-error-response": true - }, "default": { "description": "Error response describing why the operation failed.", "schema": { diff --git a/specification/extendedlocation/resource-manager/Microsoft.ExtendedLocation/preview/2021-03-15-preview/examples/CustomLocationsCreate_Update.json b/specification/extendedlocation/resource-manager/Microsoft.ExtendedLocation/preview/2021-03-15-preview/examples/CustomLocationsCreate_Update.json index 18d9731b6730..5e4b70cd01fb 100644 --- a/specification/extendedlocation/resource-manager/Microsoft.ExtendedLocation/preview/2021-03-15-preview/examples/CustomLocationsCreate_Update.json +++ b/specification/extendedlocation/resource-manager/Microsoft.ExtendedLocation/preview/2021-03-15-preview/examples/CustomLocationsCreate_Update.json @@ -76,7 +76,6 @@ "lastModifiedAt": "2020-04-24T18:53:29.0928001Z" } } - }, - "400": {} + } } } diff --git a/specification/extendedlocation/resource-manager/Microsoft.ExtendedLocation/preview/2021-03-15-preview/examples/CustomLocationsListEnabledResourceTypes.json b/specification/extendedlocation/resource-manager/Microsoft.ExtendedLocation/preview/2021-03-15-preview/examples/CustomLocationsListEnabledResourceTypes.json index e36bcead7b34..26e6b26f2a73 100644 --- a/specification/extendedlocation/resource-manager/Microsoft.ExtendedLocation/preview/2021-03-15-preview/examples/CustomLocationsListEnabledResourceTypes.json +++ b/specification/extendedlocation/resource-manager/Microsoft.ExtendedLocation/preview/2021-03-15-preview/examples/CustomLocationsListEnabledResourceTypes.json @@ -69,7 +69,6 @@ } ] } - }, - "400": {} + } } } diff --git a/specification/extendedlocation/resource-manager/Microsoft.ExtendedLocation/preview/2021-03-15-preview/examples/CustomLocationsPatch.json b/specification/extendedlocation/resource-manager/Microsoft.ExtendedLocation/preview/2021-03-15-preview/examples/CustomLocationsPatch.json index 981ed535e79a..5a15b4105a7c 100644 --- a/specification/extendedlocation/resource-manager/Microsoft.ExtendedLocation/preview/2021-03-15-preview/examples/CustomLocationsPatch.json +++ b/specification/extendedlocation/resource-manager/Microsoft.ExtendedLocation/preview/2021-03-15-preview/examples/CustomLocationsPatch.json @@ -50,7 +50,6 @@ "lastModifiedAt": "2020-04-24T18:53:29.0928001Z" } } - }, - "400": {} + } } } diff --git a/specification/extendedlocation/resource-manager/readme.azureresourceschema.md b/specification/extendedlocation/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index caabd7da2258..000000000000 --- a/specification/extendedlocation/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,11 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -```yaml $(azureresourceschema) && $(multiapi) -batch: [] -``` - -Please also specify `--azureresourceschema-folder=`. diff --git a/specification/extendedlocation/resource-manager/readme.go.md b/specification/extendedlocation/resource-manager/readme.go.md index bb0d4cc88639..a50699d9ab71 100644 --- a/specification/extendedlocation/resource-manager/readme.go.md +++ b/specification/extendedlocation/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ```yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION clear-output-folder: true ``` @@ -12,17 +12,7 @@ go: ```yaml $(go) && $(multiapi) batch: - - tag: package-2020-07-15-privatepreview -``` - -### Tag: package-2020-07-15-privatepreview and go - -These settings apply only when `--tag=package-2020-07-15-privatepreview --go` is specified on the command line. -Please also specify `--go-sdk-folder=`. - -```yaml $(tag) == 'package-2020-07-15-privatepreview' && $(go) -namespace: extendedlocation -output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2020-07-15-privatepreview/$(namespace) + - tag: package-2021-03-15-preview ``` ### Tag: package-2021-03-15-preview and go diff --git a/specification/extendedlocation/resource-manager/readme.md b/specification/extendedlocation/resource-manager/readme.md index f04cff80cb5c..f1014fde8e57 100644 --- a/specification/extendedlocation/resource-manager/readme.md +++ b/specification/extendedlocation/resource-manager/readme.md @@ -29,15 +29,6 @@ openapi-type: arm tag: package-2021-03-15-preview ``` -### Tag: package-2020-07-15-privatepreview - -These settings apply only when `--tag=package-2020-07-15-privatepreview` is specified on the command line. - -```yaml $(tag) == 'package-2020-07-15-privatepreview' -input-file: - - Microsoft.ExtendedLocation/preview/2020-07-15-privatepreview/customlocations.json -``` - ### Tag: package-2021-03-15-preview These settings apply only when `--tag=package-2021-03-15-preview` is specified on the command line. diff --git a/specification/extendedlocation/resource-manager/readme.python.md b/specification/extendedlocation/resource-manager/readme.python.md index d14b4b65724c..4c82fdebec26 100644 --- a/specification/extendedlocation/resource-manager/readme.python.md +++ b/specification/extendedlocation/resource-manager/readme.python.md @@ -15,7 +15,6 @@ no-namespace-folders: true ``` yaml $(python) && $(multiapi) && $(track2) clear-output-folder: true batch: - - tag: package-2020-07-15-privatepreview - tag: package-2021-03-15-preview - multiapiscript: true ``` @@ -26,16 +25,6 @@ clear-output-folder: false perform-load: false ``` -### Tag: package-2020-07-15-privatepreview and python - -These settings apply only when `--tag=package-2020-07-15-privatepreview --python` is specified on the command line. -Please also specify `--python-sdks-folder=`. - -```yaml $(tag) == 'package-2020-07-15-privatepreview' && $(python) -namespace: azure.mgmt.extendedlocation.v2020_07_15_privatepreview -output-folder: $(python-sdks-folder)/extendedlocation/azure-mgmt-extendedlocation/azure/mgmt/extendedlocation/v2020_07_15_privatepreview -``` - ### Tag: package-2021-03-15-preview and python These settings apply only when `--tag=package-2021-03-15-preview --python` is specified on the command line. diff --git a/specification/extendedlocation/resource-manager/readme.ruby.md b/specification/extendedlocation/resource-manager/readme.ruby.md index 41815ec061d7..384d240881b2 100644 --- a/specification/extendedlocation/resource-manager/readme.ruby.md +++ b/specification/extendedlocation/resource-manager/readme.ruby.md @@ -8,16 +8,6 @@ package-version: 2020-07-15-privatepreview azure-arm: true ``` -### Tag: package-2020-07-15-privatepreview and ruby - -These settings apply only when `--tag=package-2020-07-15-privatepreview --ruby` is specified on the command line. -Please also specify `--ruby-sdks-folder=`. - -```yaml $(tag) == 'package-2020-07-15-privatepreview' && $(ruby) -namespace: Azure::ExtendedLocation::Mgmt::V2020_07_15_privatepreview -output-folder: $(ruby-sdks-folder)/management/azure_mgmt_extended_location/lib -``` - ### Tag: package-2021-03-15-preview and ruby These settings apply only when `--tag=package-2021-03-15-preview --ruby` is specified on the command line. diff --git a/specification/frontdoor/resource-manager/readme.azureresourceschema.md b/specification/frontdoor/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 3fbd0e763b1e..000000000000 --- a/specification/frontdoor/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,154 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-network-2020-11-01 - - tag: schema-network-2020-05-01 - - tag: schema-network-2020-04-01 - - tag: schema-network-2020-01-01 - - tag: schema-network-2019-11-01 - - tag: schema-network-2019-10-01 - - tag: schema-network-2019-05-01 - - tag: schema-network-2019-04-01 - - tag: schema-network-2019-03-01-preview - - tag: schema-network-2019-03-01 - - tag: schema-network-2018-08-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-network-2020-11-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2020-11-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2020-11-01/network.json - - Microsoft.Network/stable/2020-11-01/webapplicationfirewall.json - -``` - -### Tag: schema-network-2020-05-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2020-05-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2020-05-01/frontdoor.json - - Microsoft.Network/stable/2020-05-01/network.json - -``` - -### Tag: schema-network-2020-04-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2020-04-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2020-04-01/webapplicationfirewall.json - - Microsoft.Network/stable/2020-04-01/network.json - - Microsoft.Network/stable/2020-04-01/frontdoor.json - -``` - -### Tag: schema-network-2020-01-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2020-01-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2020-01-01/network.json - - Microsoft.Network/stable/2020-01-01/frontdoor.json - -``` - -### Tag: schema-network-2019-11-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2019-11-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2019-11-01/networkexperiment.json - - Microsoft.Network/stable/2019-11-01/network.json - -``` - -### Tag: schema-network-2019-10-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2019-10-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2019-10-01/webapplicationfirewall.json - -``` - -### Tag: schema-network-2019-05-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2019-05-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2019-05-01/frontdoor.json - - Microsoft.Network/stable/2019-05-01/network.json - -``` - -### Tag: schema-network-2019-04-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2019-04-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2019-04-01/frontdoor.json - - Microsoft.Network/stable/2019-04-01/network.json - -``` - -### Tag: schema-network-2019-03-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-network-2019-03-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/preview/2019-03-01-preview/webapplicationfirewall.json - -``` - -### Tag: schema-network-2019-03-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2019-03-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2019-03-01/webapplicationfirewall.json - -``` - -### Tag: schema-network-2018-08-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-network-2018-08-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/preview/2018-08-01-preview/frontdoor.json - - Microsoft.Network/preview/2018-08-01-preview/network.json - - Microsoft.Network/preview/2018-08-01-preview/webapplicationfirewall.json - -``` diff --git a/specification/frontdoor/resource-manager/readme.go.md b/specification/frontdoor/resource-manager/readme.go.md index e4b384f9f0c2..51988e6c19d4 100644 --- a/specification/frontdoor/resource-manager/readme.go.md +++ b/specification/frontdoor/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: frontdoor clear-output-folder: true ``` diff --git a/specification/frontdoor/resource-manager/readme.md b/specification/frontdoor/resource-manager/readme.md index ac29429e3229..67f4b29079ab 100644 --- a/specification/frontdoor/resource-manager/readme.md +++ b/specification/frontdoor/resource-manager/readme.md @@ -210,8 +210,6 @@ swagger-to-sdk: - repo: azure-sdk-for-js - repo: azure-sdk-for-node - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js frontdoor/resource-manager ``` ## C# @@ -236,6 +234,10 @@ See configuration in [readme.go.md](./readme.go.md) See configuration in [readme.cli.md](./readme.cli.md) +## Python + +See configuration in [readme.python.md](./readme.python.md) + ## Java See configuration in [readme.java.md](./readme.java.md) @@ -258,6 +260,4 @@ directive: reason: Direct copy of ValidateCustomDomain API in CDN Resource Provider. ``` -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/graphrbac/data-plane/readme.go.md b/specification/graphrbac/data-plane/readme.go.md index c2f8ba1997ab..101da5b46f25 100644 --- a/specification/graphrbac/data-plane/readme.go.md +++ b/specification/graphrbac/data-plane/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: graphrbac clear-output-folder: true ``` diff --git a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/common/v1/definitions.json b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/common/v1/definitions.json index e6b1fa62c385..7b77a124a266 100644 --- a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/common/v1/definitions.json +++ b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/common/v1/definitions.json @@ -187,6 +187,14 @@ "description": "The name of the virtual machine.", "x-ms-parameter-location": "method" }, + "VMSSNameParameter": { + "name": "vmssName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set.", + "x-ms-parameter-location": "method" + }, "MachineNameParameter": { "name": "machineName", "in": "path", diff --git a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/preview/2018-01-20-preview/guestconfiguration.json b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/preview/2018-01-20-preview/guestconfiguration.json index 5e74ffc73cda..763cdb833a6f 100644 --- a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/preview/2018-01-20-preview/guestconfiguration.json +++ b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/preview/2018-01-20-preview/guestconfiguration.json @@ -89,7 +89,6 @@ } } }, - "x-ms-long-running-operation": true, "produces": [ "application/json" ], @@ -355,12 +354,10 @@ }, "name": { "type": "string", - "readOnly": true, "description": "Name of the guest configuration." }, "type": { "type": "string", - "readOnly": true, "description": "Type of the guest configuration." }, "configurationParameter": { diff --git a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/preview/2018-06-30-preview/guestconfiguration.json b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/preview/2018-06-30-preview/guestconfiguration.json index 9e605b7c6673..db17e9de26ef 100644 --- a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/preview/2018-06-30-preview/guestconfiguration.json +++ b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/preview/2018-06-30-preview/guestconfiguration.json @@ -89,7 +89,6 @@ } } }, - "x-ms-long-running-operation": true, "produces": [ "application/json" ], @@ -193,7 +192,6 @@ } } }, - "x-ms-long-running-operation": true, "produces": [ "application/json" ], @@ -505,7 +503,7 @@ "properties": { "configurationMode": { "type": "string", - "readOnly": true, + "readOnly": false, "description": "Specifies how the LCM(Local Configuration Manager) actually applies the configuration to the target nodes. Possible values are ApplyOnly, ApplyAndMonitor, and ApplyAndAutoCorrect.", "x-ms-enum": { "name": "configurationMode", @@ -518,20 +516,12 @@ ] }, "allowModuleOverwrite": { - "type": "string", - "description": "If true - new configurations downloaded from the pull service are allowed to overwrite the old ones on the target node. Otherwise, false", - "x-ms-enum": { - "name": "allowModuleOverwrite", - "modelAsString": true - }, - "enum": [ - "True", - "False" - ] + "type": "boolean", + "description": "If true - new configurations downloaded from the pull service are allowed to overwrite the old ones on the target node. Otherwise, false" }, "actionAfterReboot": { "type": "string", - "readOnly": true, + "readOnly": false, "description": "Specifies what happens after a reboot during the application of a configuration. The possible values are ContinueConfiguration and StopConfiguration", "x-ms-enum": { "name": "actionAfterReboot", @@ -544,27 +534,18 @@ }, "refreshFrequencyMins": { "type": "number", - "readOnly": true, + "readOnly": false, "default": 30, "description": "The time interval, in minutes, at which the LCM checks a pull service to get updated configurations. This value is ignored if the LCM is not configured in pull mode. The default value is 30." }, "rebootIfNeeded": { - "type": "string", - "readOnly": true, - "default": "False", - "description": "Set this to true to automatically reboot the node after a configuration that requires reboot is applied. Otherwise, you will have to manually reboot the node for any configuration that requires it. The default value is false. To use this setting when a reboot condition is enacted by something other than DSC (such as Windows Installer), combine this setting with the xPendingReboot module.", - "x-ms-enum": { - "name": "rebootIfNeeded", - "modelAsString": true - }, - "enum": [ - "True", - "False" - ] + "type": "boolean", + "readOnly": false, + "description": "Set this to true to automatically reboot the node after a configuration that requires reboot is applied. Otherwise, you will have to manually reboot the node for any configuration that requires it. The default value is false. To use this setting when a reboot condition is enacted by something other than DSC (such as Windows Installer), combine this setting with the xPendingReboot module." }, "configurationModeFrequencyMins": { "type": "number", - "readOnly": true, + "readOnly": false, "default": 15, "description": "How often, in minutes, the current configuration is checked and applied. This property is ignored if the ConfigurationMode property is set to ApplyOnly. The default value is 15." } diff --git a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2018-11-20/examples/createOrUpdateGuestConfigurationAssignment.json b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2018-11-20/examples/createOrUpdateGuestConfigurationAssignment.json index 85e3d176b25d..13e8b863c2d9 100644 --- a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2018-11-20/examples/createOrUpdateGuestConfigurationAssignment.json +++ b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2018-11-20/examples/createOrUpdateGuestConfigurationAssignment.json @@ -20,7 +20,7 @@ } ], "configurationSetting": { - "rebootIfNeeded": "False", + "rebootIfNeeded": false, "actionAfterReboot": "ContinueConfiguration", "configurationModeFrequencyMins": 15, "configurationMode": "MonitorOnly" @@ -55,7 +55,7 @@ } ], "configurationSetting": { - "rebootIfNeeded": "False", + "rebootIfNeeded": false, "actionAfterReboot": "ContinueConfiguration", "configurationModeFrequencyMins": 15, "configurationMode": "MonitorOnly" @@ -90,7 +90,7 @@ } ], "configurationSetting": { - "rebootIfNeeded": "False", + "rebootIfNeeded": false, "actionAfterReboot": "ContinueConfiguration", "configurationModeFrequencyMins": 15, "configurationMode": "MonitorOnly" diff --git a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2018-11-20/examples/createOrUpdateGuestConfigurationHCRPAssignment.json b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2018-11-20/examples/createOrUpdateGuestConfigurationHCRPAssignment.json index d85b484a1f0f..1e767f4eb152 100644 --- a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2018-11-20/examples/createOrUpdateGuestConfigurationHCRPAssignment.json +++ b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2018-11-20/examples/createOrUpdateGuestConfigurationHCRPAssignment.json @@ -20,7 +20,7 @@ } ], "configurationSetting": { - "rebootIfNeeded": "False", + "rebootIfNeeded": false, "actionAfterReboot": "ContinueConfiguration", "configurationModeFrequencyMins": 15, "configurationMode": "MonitorOnly" @@ -55,7 +55,7 @@ } ], "configurationSetting": { - "rebootIfNeeded": "False", + "rebootIfNeeded": false, "actionAfterReboot": "ContinueConfiguration", "configurationModeFrequencyMins": 15, "configurationMode": "MonitorOnly" @@ -90,7 +90,7 @@ } ], "configurationSetting": { - "rebootIfNeeded": "False", + "rebootIfNeeded": false, "actionAfterReboot": "ContinueConfiguration", "configurationModeFrequencyMins": 15, "configurationMode": "MonitorOnly" diff --git a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2018-11-20/guestconfiguration.json b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2018-11-20/guestconfiguration.json index db2acc806575..239870a2cec5 100644 --- a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2018-11-20/guestconfiguration.json +++ b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2018-11-20/guestconfiguration.json @@ -89,7 +89,6 @@ } } }, - "x-ms-long-running-operation": true, "produces": [ "application/json" ], @@ -193,7 +192,6 @@ } } }, - "x-ms-long-running-operation": true, "produces": [ "application/json" ], @@ -432,7 +430,6 @@ } } }, - "x-ms-long-running-operation": true, "produces": [ "application/json" ], @@ -536,7 +533,6 @@ } } }, - "x-ms-long-running-operation": true, "produces": [ "application/json" ], @@ -861,16 +857,8 @@ ] }, "allowModuleOverwrite": { - "type": "string", - "description": "If true - new configurations downloaded from the pull service are allowed to overwrite the old ones on the target node. Otherwise, false", - "x-ms-enum": { - "name": "allowModuleOverwrite", - "modelAsString": true - }, - "enum": [ - "True", - "False" - ] + "type": "boolean", + "description": "If true - new configurations downloaded from the pull service are allowed to overwrite the old ones on the target node. Otherwise, false" }, "actionAfterReboot": { "type": "string", @@ -892,18 +880,9 @@ "description": "The time interval, in minutes, at which the LCM checks a pull service to get updated configurations. This value is ignored if the LCM is not configured in pull mode. The default value is 30." }, "rebootIfNeeded": { - "type": "string", + "type": "boolean", "readOnly": false, - "default": "False", - "description": "Set this to true to automatically reboot the node after a configuration that requires reboot is applied. Otherwise, you will have to manually reboot the node for any configuration that requires it. The default value is false. To use this setting when a reboot condition is enacted by something other than DSC (such as Windows Installer), combine this setting with the xPendingReboot module.", - "x-ms-enum": { - "name": "rebootIfNeeded", - "modelAsString": true - }, - "enum": [ - "True", - "False" - ] + "description": "Set this to true to automatically reboot the node after a configuration that requires reboot is applied. Otherwise, you will have to manually reboot the node for any configuration that requires it. The default value is false. To use this setting when a reboot condition is enacted by something other than DSC (such as Windows Installer), combine this setting with the xPendingReboot module." }, "configurationModeFrequencyMins": { "type": "number", diff --git a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2020-06-25/examples/createOrUpdateGuestConfigurationAssignment.json b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2020-06-25/examples/createOrUpdateGuestConfigurationAssignment.json index a76baeaef767..44db64b95018 100644 --- a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2020-06-25/examples/createOrUpdateGuestConfigurationAssignment.json +++ b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2020-06-25/examples/createOrUpdateGuestConfigurationAssignment.json @@ -20,7 +20,7 @@ } ], "configurationSetting": { - "rebootIfNeeded": "False", + "rebootIfNeeded": false, "actionAfterReboot": "ContinueConfiguration", "configurationModeFrequencyMins": 15, "configurationMode": "MonitorOnly" @@ -55,7 +55,7 @@ } ], "configurationSetting": { - "rebootIfNeeded": "False", + "rebootIfNeeded": false, "actionAfterReboot": "ContinueConfiguration", "configurationModeFrequencyMins": 15, "configurationMode": "MonitorOnly" @@ -90,7 +90,7 @@ } ], "configurationSetting": { - "rebootIfNeeded": "False", + "rebootIfNeeded": false, "actionAfterReboot": "ContinueConfiguration", "configurationModeFrequencyMins": 15, "configurationMode": "MonitorOnly" diff --git a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2020-06-25/examples/createOrUpdateGuestConfigurationHCRPAssignment.json b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2020-06-25/examples/createOrUpdateGuestConfigurationHCRPAssignment.json index bf76cff48d05..330a83431816 100644 --- a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2020-06-25/examples/createOrUpdateGuestConfigurationHCRPAssignment.json +++ b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2020-06-25/examples/createOrUpdateGuestConfigurationHCRPAssignment.json @@ -20,7 +20,7 @@ } ], "configurationSetting": { - "rebootIfNeeded": "False", + "rebootIfNeeded": false, "actionAfterReboot": "ContinueConfiguration", "configurationModeFrequencyMins": 15, "configurationMode": "MonitorOnly" @@ -55,7 +55,7 @@ } ], "configurationSetting": { - "rebootIfNeeded": "False", + "rebootIfNeeded": false, "actionAfterReboot": "ContinueConfiguration", "configurationModeFrequencyMins": 15, "configurationMode": "MonitorOnly" @@ -90,7 +90,7 @@ } ], "configurationSetting": { - "rebootIfNeeded": "False", + "rebootIfNeeded": false, "actionAfterReboot": "ContinueConfiguration", "configurationModeFrequencyMins": 15, "configurationMode": "MonitorOnly" diff --git a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2020-06-25/guestconfiguration.json b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2020-06-25/guestconfiguration.json index a2a372685861..7f896d2ac18a 100644 --- a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2020-06-25/guestconfiguration.json +++ b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2020-06-25/guestconfiguration.json @@ -89,7 +89,6 @@ } } }, - "x-ms-long-running-operation": true, "produces": [ "application/json" ], @@ -193,7 +192,6 @@ } } }, - "x-ms-long-running-operation": true, "produces": [ "application/json" ], @@ -432,7 +430,6 @@ } } }, - "x-ms-long-running-operation": true, "produces": [ "application/json" ], @@ -536,7 +533,6 @@ } } }, - "x-ms-long-running-operation": true, "produces": [ "application/json" ], @@ -861,16 +857,8 @@ ] }, "allowModuleOverwrite": { - "type": "string", - "description": "If true - new configurations downloaded from the pull service are allowed to overwrite the old ones on the target node. Otherwise, false", - "x-ms-enum": { - "name": "allowModuleOverwrite", - "modelAsString": true - }, - "enum": [ - "True", - "False" - ] + "type": "boolean", + "description": "If true - new configurations downloaded from the pull service are allowed to overwrite the old ones on the target node. Otherwise, false" }, "actionAfterReboot": { "type": "string", @@ -892,18 +880,9 @@ "description": "The time interval, in minutes, at which the LCM checks a pull service to get updated configurations. This value is ignored if the LCM is not configured in pull mode. The default value is 30." }, "rebootIfNeeded": { - "type": "string", + "type": "boolean", "readOnly": false, - "default": "False", - "description": "Set this to true to automatically reboot the node after a configuration that requires reboot is applied. Otherwise, you will have to manually reboot the node for any configuration that requires it. The default value is false. To use this setting when a reboot condition is enacted by something other than DSC (such as Windows Installer), combine this setting with the xPendingReboot module.", - "x-ms-enum": { - "name": "rebootIfNeeded", - "modelAsString": true - }, - "enum": [ - "True", - "False" - ] + "description": "Set this to true to automatically reboot the node after a configuration that requires reboot is applied. Otherwise, you will have to manually reboot the node for any configuration that requires it. The default value is false. To use this setting when a reboot condition is enacted by something other than DSC (such as Windows Installer), combine this setting with the xPendingReboot module." }, "configurationModeFrequencyMins": { "type": "number", diff --git a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/examples/createOrUpdateGuestConfigurationAssignment.json b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/examples/createOrUpdateGuestConfigurationAssignment.json new file mode 100644 index 000000000000..473c44588a2b --- /dev/null +++ b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/examples/createOrUpdateGuestConfigurationAssignment.json @@ -0,0 +1,104 @@ +{ + "parameters": { + "subscriptionId": "mySubscriptionId", + "resourceGroupName": "myResourceGroupName", + "vmName": "myVMName", + "guestConfigurationAssignmentName": "WhitelistedApplication", + "api-version": "2021-01-25", + "parameters": { + "location": "westcentralus", + "name": "WhitelistedApplication", + "properties": { + "context": "Azure policy", + "guestConfiguration": { + "name": "WhitelistedApplication", + "version": "1.*", + "configurationParameter": [ + { + "name": "[InstalledApplication]bwhitelistedapp;Name", + "value": "NotePad,sql" + } + ], + "configurationSetting": { + "rebootIfNeeded": false, + "actionAfterReboot": "ContinueConfiguration", + "configurationModeFrequencyMins": 15, + "configurationMode": "MonitorOnly" + } + } + } + } + }, + "responses": { + "201": { + "headers": {}, + "body": { + "location": "westcentralus", + "id": "/subscriptions/mysubscriptionid/resourceGroups/myResourceGroupName/providers/Microsoft.Compute/virtualMachines/myvm/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/WhitelistedApplication", + "name": "WhitelistedApplication", + "properties": { + "complianceStatus": "Pending", + "assignmentHash": null, + "latestReportId": null, + "lastComplianceStatusChecked": null, + "context": "Azure policy", + "guestConfiguration": { + "kind": null, + "name": "WhitelistedApplication", + "version": "1.0.0.3", + "contentUri": null, + "contentHash": null, + "configurationParameter": [ + { + "name": "[InstalledApplication]bwhitelistedapp;Name", + "value": "NotePad,sql" + } + ], + "configurationSetting": { + "rebootIfNeeded": false, + "actionAfterReboot": "ContinueConfiguration", + "configurationModeFrequencyMins": 15, + "configurationMode": "MonitorOnly" + } + }, + "provisioningState": "Succeeded" + } + } + }, + "200": { + "headers": {}, + "body": { + "location": "westcentralus", + "id": "/subscriptions/mysubscriptionid/resourceGroups/myResourceGroupName/providers/Microsoft.Compute/virtualMachines/myvm/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/WhitelistedApplication", + "name": "WhitelistedApplication", + "properties": { + "complianceStatus": "Pending", + "assignmentHash": null, + "latestReportId": null, + "lastComplianceStatusChecked": null, + "context": "Azure policy", + "guestConfiguration": { + "kind": null, + "name": "WhitelistedApplication", + "version": "1.0.0.3", + "contentUri": null, + "contentHash": null, + "configurationParameter": [ + { + "name": "[InstalledApplication]bwhitelistedapp;Name", + "value": "NotePad,sql" + } + ], + "configurationSetting": { + "rebootIfNeeded": false, + "actionAfterReboot": "ContinueConfiguration", + "configurationModeFrequencyMins": 15, + "configurationMode": "MonitorOnly" + } + }, + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/examples/createOrUpdateGuestConfigurationHCRPAssignment.json b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/examples/createOrUpdateGuestConfigurationHCRPAssignment.json new file mode 100644 index 000000000000..74fd35a92a7f --- /dev/null +++ b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/examples/createOrUpdateGuestConfigurationHCRPAssignment.json @@ -0,0 +1,104 @@ +{ + "parameters": { + "subscriptionId": "mySubscriptionId", + "resourceGroupName": "myResourceGroupName", + "machineName": "myMachineName", + "guestConfigurationAssignmentName": "WhitelistedApplication", + "api-version": "2021-01-25", + "parameters": { + "location": "westcentralus", + "name": "WhitelistedApplication", + "properties": { + "context": "Azure policy", + "guestConfiguration": { + "name": "WhitelistedApplication", + "version": "1.*", + "configurationParameter": [ + { + "name": "[InstalledApplication]bwhitelistedapp;Name", + "value": "NotePad,sql" + } + ], + "configurationSetting": { + "rebootIfNeeded": false, + "actionAfterReboot": "ContinueConfiguration", + "configurationModeFrequencyMins": 15, + "configurationMode": "MonitorOnly" + } + } + } + } + }, + "responses": { + "201": { + "headers": {}, + "body": { + "location": "westcentralus", + "id": "/subscriptions/mysubscriptionid/resourceGroups/myResourceGroupName/providers/HybridRP.Compute/virtualMachines/myvm/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/WhitelistedApplication", + "name": "WhitelistedApplication", + "properties": { + "complianceStatus": "Pending", + "assignmentHash": "abcdr453g", + "latestReportId": "a2a64e5d-a1a9-4344-a866-fb9e1541f723", + "lastComplianceStatusChecked": null, + "context": "Azure policy", + "guestConfiguration": { + "kind": null, + "name": "WhitelistedApplication", + "version": "1.0.0.3", + "contentUri": null, + "contentHash": null, + "configurationParameter": [ + { + "name": "[InstalledApplication]bwhitelistedapp;Name", + "value": "NotePad,sql" + } + ], + "configurationSetting": { + "rebootIfNeeded": false, + "actionAfterReboot": "ContinueConfiguration", + "configurationModeFrequencyMins": 15, + "configurationMode": "MonitorOnly" + } + }, + "provisioningState": "Succeeded" + } + } + }, + "200": { + "headers": {}, + "body": { + "location": "westcentralus", + "id": "/subscriptions/mysubscriptionid/resourceGroups/myResourceGroupName/providers/HybridRP.Compute/virtualMachines/myvm/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/WhitelistedApplication", + "name": "WhitelistedApplication", + "properties": { + "complianceStatus": "Pending", + "assignmentHash": "abcdr453g", + "latestReportId": "a2a64e5d-a1a9-4344-a866-fb9e1541f723", + "lastComplianceStatusChecked": null, + "context": "Azure policy", + "guestConfiguration": { + "kind": null, + "name": "WhitelistedApplication", + "version": "1.0.0.3", + "contentUri": null, + "contentHash": null, + "configurationParameter": [ + { + "name": "[InstalledApplication]bwhitelistedapp;Name", + "value": "NotePad,sql" + } + ], + "configurationSetting": { + "rebootIfNeeded": false, + "actionAfterReboot": "ContinueConfiguration", + "configurationModeFrequencyMins": 15, + "configurationMode": "MonitorOnly" + } + }, + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/examples/deleteGuestConfigurationAssignment.json b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/examples/deleteGuestConfigurationAssignment.json new file mode 100644 index 000000000000..eb4ca88a52e4 --- /dev/null +++ b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/examples/deleteGuestConfigurationAssignment.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "mySubscriptionId", + "resourceGroupName": "myResourceGroupName", + "vmName": "myVMName", + "guestConfigurationAssignmentName": "SecureProtocol", + "api-version": "2021-01-25" + }, + "responses": { + "200": {} + } +} diff --git a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/examples/deleteGuestConfigurationHCRPAssignment.json b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/examples/deleteGuestConfigurationHCRPAssignment.json new file mode 100644 index 000000000000..5e25b38f9f87 --- /dev/null +++ b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/examples/deleteGuestConfigurationHCRPAssignment.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "mySubscriptionId", + "resourceGroupName": "myResourceGroupName", + "machineName": "myMachineName", + "guestConfigurationAssignmentName": "SecureProtocol", + "api-version": "2021-01-25" + }, + "responses": { + "200": {} + } +} diff --git a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/examples/deleteGuestConfigurationVMSSAssignment.json b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/examples/deleteGuestConfigurationVMSSAssignment.json new file mode 100644 index 000000000000..09435aff5e5d --- /dev/null +++ b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/examples/deleteGuestConfigurationVMSSAssignment.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "mySubscriptionId", + "resourceGroupName": "myResourceGroupName", + "vmssName": "myVMSSName", + "name": "SecureProtocol", + "api-version": "2021-01-25" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "location": "centraluseuap", + "id": "/subscriptions/subscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSSName/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/AuditSecureProtocol", + "name": "AuditSecureProtocol", + "properties": { + "complianceStatus": "Compliant", + "assignmentHash": "E0D8941DD713F284284561648C00C18FA76C8602943C7CD38AFD73B56AE4C35F.E3B0C44298FC1C149AFBF4C8996FB92427AE41E4649B934CA495991B7852B855", + "latestReportId": null, + "lastComplianceStatusChecked": "2018-08-29T22:14:13Z", + "context": null, + "guestConfiguration": { + "kind": null, + "name": "AuditSecureProtocol", + "version": "1.0.0.3", + "contentUri": "https://mystorageaccount.blob.core.windows.net/builtinconfig/AuditSecureProtocol/AuditSecureProtocol_1.0.0.3.zip", + "contentHash": "content hash", + "configurationParameter": [], + "configurationSetting": null + }, + "provisioningState": "Succeeded", + "resourceType": "VMSS", + "vmssVMList": null + } + } + }, + "204": {} + } +} diff --git a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/examples/getGuestConfigurationAssignment.json b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/examples/getGuestConfigurationAssignment.json new file mode 100644 index 000000000000..ab3ac4ec7c7e --- /dev/null +++ b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/examples/getGuestConfigurationAssignment.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "mySubscriptionId", + "resourceGroupName": "myResourceGroupName", + "vmName": "myVMName", + "guestConfigurationAssignmentName": "SecureProtocol", + "api-version": "2021-01-25" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "location": "centraluseuap", + "id": "/subscriptions/subscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.Compute/virtualMachines/myvm/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/AuditSecureProtocol", + "name": "AuditSecureProtocol", + "properties": { + "complianceStatus": "Compliant", + "assignmentHash": "E0D8941DD713F284284561648C00C18FA76C8602943C7CD38AFD73B56AE4C35F.E3B0C44298FC1C149AFBF4C8996FB92427AE41E4649B934CA495991B7852B855", + "latestReportId": "/subscriptions/subscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.Compute/virtualMachines/myvm/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/AuditSecureProtocol/reports/7367cbb8-ae99-47d0-a33b-a283564d2cb1", + "lastComplianceStatusChecked": "2018-08-29T22:14:13Z", + "context": null, + "guestConfiguration": { + "kind": null, + "name": "AuditSecureProtocol", + "version": "1.0.0.3", + "contentUri": "https://mystorageaccount.blob.core.windows.net/builtinconfig/AuditSecureProtocol/AuditSecureProtocol_1.0.0.3.zip", + "contentHash": "content hash", + "configurationParameter": [], + "configurationSetting": null + }, + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/examples/getGuestConfigurationAssignmentReportById.json b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/examples/getGuestConfigurationAssignmentReportById.json new file mode 100644 index 000000000000..c9d68a5d097d --- /dev/null +++ b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/examples/getGuestConfigurationAssignmentReportById.json @@ -0,0 +1,95 @@ +{ + "parameters": { + "subscriptionId": "mySubscriptionid", + "resourceGroupName": "myResourceGroupName", + "vmName": "myvm", + "guestConfigurationAssignmentName": "AuditSecureProtocol", + "reportId": "7367cbb8-ae99-47d0-a33b-a283564d2cb1", + "api-version": "2021-01-25" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/mysubscriptionid/resourceGroups/myResourceGroupName/providers/Microsoft.Compute/virtualMachines/myvm/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/AuditSecureProtocol/reports/7367cbb8-ae99-47d0-a33b-a283564d2cb1", + "name": "7367cbb8-ae99-47d0-a33b-a283564d2cb1", + "properties": { + "complianceStatus": "Compliant", + "assignment": { + "name": "AuditSecureProtocol", + "configuration": { + "name": "AuditSecureProtocol", + "version": "1.0.0.0" + } + }, + "reportId": "7367cbb8-ae99-47d0-a33b-a283564d2cb1", + "vm": { + "id": "/subscriptions/mysubscriptionid/resourceGroups/myResourceGroupName/providers/Microsoft.Compute/virtualMachines/myvm", + "uuid": "vmuuid" + }, + "details": { + "complianceStatus": "Compliant", + "startTime": "2018-08-29T22:13:53Z", + "endTime": "2018-08-29T22:14:13Z", + "jobId": "7367cbb8-ae99-47d0-a33b-a283564d2cb1", + "resources": [ + { + "complianceStatus": "Compliant", + "reasons": [ + { + "phrase": "Operation successful.", + "code": "DSC::RESOURCE::SUCCESS" + } + ], + "properties": { + "ConfigurationName": "IsWebServerSecure", + "DependsOn": null, + "IsSingleInstance": "Yes", + "ModuleName": "SecureProtocolWebServer", + "ModuleVersion": "1.0.0.3", + "Protocols": [ + { + "Ensure": "Absent", + "Protocol": "SSL 2.0" + }, + { + "Ensure": "Absent", + "Protocol": "SSL 3.0" + }, + { + "Ensure": "Absent", + "Protocol": "TLS 1.0" + }, + { + "Ensure": "Absent", + "Protocol": "PCT 1.0" + }, + { + "Ensure": "Absent", + "Protocol": "Multi-Protocol Unified Hello" + }, + { + "Ensure": "Absent", + "Protocol": "TLS 1.1" + }, + { + "Ensure": "Absent", + "Protocol": "TLS 1.2" + } + ], + "PsDscRunAsCredential": null, + "Reasons": null, + "ResourceId": "[SecureWebServer]s1", + "SourceInfo": null + } + } + ], + "operationType": "Consistency" + }, + "startTime": "2018-08-29T22:13:53Z", + "endTime": "2018-08-29T22:14:13Z" + } + } + } + } +} diff --git a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/examples/getGuestConfigurationHCRPAssignment.json b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/examples/getGuestConfigurationHCRPAssignment.json new file mode 100644 index 000000000000..ccdc1463d2f1 --- /dev/null +++ b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/examples/getGuestConfigurationHCRPAssignment.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "mySubscriptionId", + "resourceGroupName": "myResourceGroupName", + "machineName": "myMachineName", + "guestConfigurationAssignmentName": "SecureProtocol", + "api-version": "2021-01-25" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "location": "centraluseuap", + "id": "/subscriptions/subscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.HybridCompute/machines/myMachineName/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/AuditSecureProtocol", + "name": "AuditSecureProtocol", + "properties": { + "complianceStatus": "Compliant", + "assignmentHash": "E0D8941DD713F284284561648C00C18FA76C8602943C7CD38AFD73B56AE4C35F.E3B0C44298FC1C149AFBF4C8996FB92427AE41E4649B934CA495991B7852B855", + "latestReportId": "/subscriptions/subscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.HybridCompute/machines/myMachineName/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/AuditSecureProtocol/reports/7367cbb8-ae99-47d0-a33b-a283564d2cb1", + "lastComplianceStatusChecked": "2018-08-29T22:14:13Z", + "context": null, + "guestConfiguration": { + "kind": null, + "name": "AuditSecureProtocol", + "version": "1.0.0.3", + "contentUri": "https://mystorageaccount.blob.core.windows.net/builtinconfig/AuditSecureProtocol/AuditSecureProtocol_1.0.0.3.zip", + "contentHash": "content hash", + "configurationParameter": [], + "configurationSetting": null + }, + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/examples/getGuestConfigurationHCRPAssignmentReportById.json b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/examples/getGuestConfigurationHCRPAssignmentReportById.json new file mode 100644 index 000000000000..c21d8288d0f8 --- /dev/null +++ b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/examples/getGuestConfigurationHCRPAssignmentReportById.json @@ -0,0 +1,95 @@ +{ + "parameters": { + "subscriptionId": "mySubscriptionid", + "resourceGroupName": "myResourceGroupName", + "machineName": "myMachineName", + "guestConfigurationAssignmentName": "AuditSecureProtocol", + "reportId": "7367cbb8-ae99-47d0-a33b-a283564d2cb1", + "api-version": "2021-01-25" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/mysubscriptionid/resourceGroups/myResourceGroupName/providers/Microsoft.HybridCompute/machines/myMachineName/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/AuditSecureProtocol/reports/7367cbb8-ae99-47d0-a33b-a283564d2cb1", + "name": "7367cbb8-ae99-47d0-a33b-a283564d2cb1", + "properties": { + "complianceStatus": "Compliant", + "assignment": { + "name": "AuditSecureProtocol", + "configuration": { + "name": "AuditSecureProtocol", + "version": "1.0.0.0" + } + }, + "reportId": "7367cbb8-ae99-47d0-a33b-a283564d2cb1", + "vm": { + "id": "/subscriptions/mysubscriptionid/resourceGroups/myResourceGroupName/providers/Microsoft.HybridCompute/machines/myMachineName", + "uuid": "vmuuid" + }, + "details": { + "complianceStatus": "Compliant", + "startTime": "2018-08-29T22:13:53Z", + "endTime": "2018-08-29T22:14:13Z", + "jobId": "7367cbb8-ae99-47d0-a33b-a283564d2cb1", + "resources": [ + { + "complianceStatus": "Compliant", + "reasons": [ + { + "phrase": "Operation successful.", + "code": "DSC::RESOURCE::SUCCESS" + } + ], + "properties": { + "ConfigurationName": "IsWebServerSecure", + "DependsOn": null, + "IsSingleInstance": "Yes", + "ModuleName": "SecureProtocolWebServer", + "ModuleVersion": "1.0.0.3", + "Protocols": [ + { + "Ensure": "Absent", + "Protocol": "SSL 2.0" + }, + { + "Ensure": "Absent", + "Protocol": "SSL 3.0" + }, + { + "Ensure": "Absent", + "Protocol": "TLS 1.0" + }, + { + "Ensure": "Absent", + "Protocol": "PCT 1.0" + }, + { + "Ensure": "Absent", + "Protocol": "Multi-Protocol Unified Hello" + }, + { + "Ensure": "Absent", + "Protocol": "TLS 1.1" + }, + { + "Ensure": "Absent", + "Protocol": "TLS 1.2" + } + ], + "PsDscRunAsCredential": null, + "Reasons": null, + "ResourceId": "[SecureWebServer]s1", + "SourceInfo": null + } + } + ], + "operationType": "Consistency" + }, + "startTime": "2018-08-29T22:13:53Z", + "endTime": "2018-08-29T22:14:13Z" + } + } + } + } +} diff --git a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/examples/getVMSSGuestConfigurationAssignment.json b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/examples/getVMSSGuestConfigurationAssignment.json new file mode 100644 index 000000000000..895adfd119ea --- /dev/null +++ b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/examples/getVMSSGuestConfigurationAssignment.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "mySubscriptionId", + "resourceGroupName": "myResourceGroupName", + "vmssName": "myVMSSName", + "name": "SecureProtocol", + "api-version": "2021-01-25" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "location": "centraluseuap", + "id": "/subscriptions/subscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSSName/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/AuditSecureProtocol", + "name": "AuditSecureProtocol", + "properties": { + "complianceStatus": "Compliant", + "assignmentHash": "E0D8941DD713F284284561648C00C18FA76C8602943C7CD38AFD73B56AE4C35F.E3B0C44298FC1C149AFBF4C8996FB92427AE41E4649B934CA495991B7852B855", + "latestReportId": null, + "lastComplianceStatusChecked": "2018-08-29T22:14:13Z", + "context": null, + "guestConfiguration": { + "kind": null, + "name": "AuditSecureProtocol", + "version": "1.0.0.3", + "contentUri": "https://mystorageaccount.blob.core.windows.net/builtinconfig/AuditSecureProtocol/AuditSecureProtocol_1.0.0.3.zip", + "contentHash": "content hash", + "configurationParameter": [], + "configurationSetting": null + }, + "provisioningState": "Succeeded", + "resourceType": "VMSS", + "vmssVMList": null + } + } + } + } +} diff --git a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/examples/getVMSSGuestConfigurationAssignmentReportById.json b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/examples/getVMSSGuestConfigurationAssignmentReportById.json new file mode 100644 index 000000000000..b85d96b23efc --- /dev/null +++ b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/examples/getVMSSGuestConfigurationAssignmentReportById.json @@ -0,0 +1,95 @@ +{ + "parameters": { + "subscriptionId": "mySubscriptionid", + "resourceGroupName": "myResourceGroupName", + "vmssName": "myvmss", + "name": "AuditSecureProtocol", + "id": "7367cbb8-ae99-47d0-a33b-a283564d2cb1", + "api-version": "2021-01-25" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/mysubscriptionid/resourceGroups/myResourceGroupName/providers/Microsoft.Compute/virtualMachineScaleSets/myvmss/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/AuditSecureProtocol/reports/7367cbb8-ae99-47d0-a33b-a283564d2cb1", + "name": "7367cbb8-ae99-47d0-a33b-a283564d2cb1", + "properties": { + "complianceStatus": "Compliant", + "assignment": { + "name": "AuditSecureProtocol", + "configuration": { + "name": "AuditSecureProtocol", + "version": "1.0.0.0" + } + }, + "reportId": "7367cbb8-ae99-47d0-a33b-a283564d2cb1", + "vm": { + "id": "/subscriptions/mySubscriptionid/resourceGroups/myResourceGroupName/providers/Microsoft.Compute/virtualMachineScaleSets/myvmss/virtualMachines/1", + "uuid": "vmuuid" + }, + "details": { + "complianceStatus": "Compliant", + "startTime": "2018-08-29T22:13:53Z", + "endTime": "2018-08-29T22:14:13Z", + "jobId": "7367cbb8-ae99-47d0-a33b-a283564d2cb1", + "resources": [ + { + "complianceStatus": "Compliant", + "reasons": [ + { + "phrase": "Operation successful.", + "code": "DSC::RESOURCE::SUCCESS" + } + ], + "properties": { + "ConfigurationName": "IsWebServerSecure", + "DependsOn": null, + "IsSingleInstance": "Yes", + "ModuleName": "SecureProtocolWebServer", + "ModuleVersion": "1.0.0.3", + "Protocols": [ + { + "Ensure": "Absent", + "Protocol": "SSL 2.0" + }, + { + "Ensure": "Absent", + "Protocol": "SSL 3.0" + }, + { + "Ensure": "Absent", + "Protocol": "TLS 1.0" + }, + { + "Ensure": "Absent", + "Protocol": "PCT 1.0" + }, + { + "Ensure": "Absent", + "Protocol": "Multi-Protocol Unified Hello" + }, + { + "Ensure": "Absent", + "Protocol": "TLS 1.1" + }, + { + "Ensure": "Absent", + "Protocol": "TLS 1.2" + } + ], + "PsDscRunAsCredential": null, + "Reasons": null, + "ResourceId": "[SecureWebServer]s1", + "SourceInfo": null + } + } + ], + "operationType": "Consistency" + }, + "startTime": "2018-08-29T22:13:53Z", + "endTime": "2018-08-29T22:14:13Z" + } + } + } + } +} diff --git a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/examples/listAllGuestConfigurationAssignmentReports.json b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/examples/listAllGuestConfigurationAssignmentReports.json new file mode 100644 index 000000000000..d64a13a4ea63 --- /dev/null +++ b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/examples/listAllGuestConfigurationAssignmentReports.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "mySubscriptionid", + "resourceGroupName": "myResourceGroupName", + "vmName": "myVMName", + "guestConfigurationAssignmentName": "AuditSecureProtocol", + "api-version": "2021-01-25" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/subscriptions/mysubscriptionid/resourceGroups/myResourceGroupName/providers/Microsoft.Compute/virtualMachines/myvm/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/AuditSecureProtocol/reports/7367cbb8-ae99-47d0-a33b-a283564d2cb1", + "name": "7367cbb8-ae99-47d0-a33b-a283564d2cb1", + "properties": { + "complianceStatus": "Compliant", + "assignment": { + "name": "AuditSecureProtocol", + "configuration": { + "name": "AuditSecureProtocol" + } + }, + "reportId": "7367cbb8-ae99-47d0-a33b-a283564d2cb1", + "vm": { + "id": "/subscriptions/mysubscriptionid/resourceGroups/myResourceGroupName/providers/Microsoft.Compute/virtualMachines/myvm", + "uuid": "vmuuid" + }, + "details": null, + "startTime": "2018-08-29T22:13:53Z", + "endTime": "2018-08-29T22:14:13Z" + } + }, + { + "id": "/subscriptions/mysubscriptionid/resourceGroups/myResourceGroupName/providers/Microsoft.Compute/virtualMachines/myvm/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/AuditSecureProtocol/reports/41ee2caf-48f9-4999-a793-82ec7c6beb2c", + "name": "41ee2caf-48f9-4999-a793-82ec7c6beb2c", + "properties": { + "complianceStatus": "Compliant", + "assignment": { + "name": "AuditSecureProtocol", + "configuration": { + "name": "AuditSecureProtocol" + } + }, + "reportId": "41ee2caf-48f9-4999-a793-82ec7c6beb2c", + "vm": { + "id": "/subscriptions/mysubscriptionid/resourceGroups/myResourceGroupName/providers/Microsoft.Compute/virtualMachines/myvm", + "uuid": "vmuuid" + }, + "details": null, + "startTime": "2018-08-29T20:13:53Z", + "endTime": "2018-08-29T20:14:13Z" + } + } + ] + } + } + } +} diff --git a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/examples/listAllGuestConfigurationHCRPAssignmentReports.json b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/examples/listAllGuestConfigurationHCRPAssignmentReports.json new file mode 100644 index 000000000000..832b9154a6ac --- /dev/null +++ b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/examples/listAllGuestConfigurationHCRPAssignmentReports.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "mySubscriptionid", + "resourceGroupName": "myResourceGroupName", + "machineName": "myMachineName", + "guestConfigurationAssignmentName": "AuditSecureProtocol", + "api-version": "2021-01-25" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/subscriptions/mysubscriptionid/resourceGroups/myResourceGroupName/providers/Microsoft.HybridCompute/machines/myMachineName/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/AuditSecureProtocol/reports/7367cbb8-ae99-47d0-a33b-a283564d2cb1", + "name": "7367cbb8-ae99-47d0-a33b-a283564d2cb1", + "properties": { + "complianceStatus": "Compliant", + "assignment": { + "name": "AuditSecureProtocol", + "configuration": { + "name": "AuditSecureProtocol" + } + }, + "reportId": "7367cbb8-ae99-47d0-a33b-a283564d2cb1", + "vm": { + "id": "/subscriptions/mysubscriptionid/resourceGroups/myResourceGroupName/providers/Microsoft.HybridCompute/machines/myMachineName", + "uuid": "vmuuid" + }, + "details": null, + "startTime": "2018-08-29T22:13:53Z", + "endTime": "2018-08-29T22:14:13Z" + } + }, + { + "id": "/subscriptions/mysubscriptionid/resourceGroups/myResourceGroupName/providers/Microsoft.HybridCompute/machines/myMachineName/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/AuditSecureProtocol/reports/41ee2caf-48f9-4999-a793-82ec7c6beb2c", + "name": "41ee2caf-48f9-4999-a793-82ec7c6beb2c", + "properties": { + "complianceStatus": "Compliant", + "assignment": { + "name": "AuditSecureProtocol", + "configuration": { + "name": "AuditSecureProtocol" + } + }, + "reportId": "41ee2caf-48f9-4999-a793-82ec7c6beb2c", + "vm": { + "id": "/subscriptions/mysubscriptionid/resourceGroups/myResourceGroupName/providers/Microsoft.HybridCompute/machines/myMachineName", + "uuid": "vmuuid" + }, + "details": null, + "startTime": "2018-08-29T20:13:53Z", + "endTime": "2018-08-29T20:14:13Z" + } + } + ] + } + } + } +} diff --git a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/examples/listAllVMSSGuestConfigurationAssignmentReports.json b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/examples/listAllVMSSGuestConfigurationAssignmentReports.json new file mode 100644 index 000000000000..40aa520e57c7 --- /dev/null +++ b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/examples/listAllVMSSGuestConfigurationAssignmentReports.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "mySubscriptionid", + "resourceGroupName": "myResourceGroupName", + "vmssName": "myVMSSName", + "name": "AuditSecureProtocol", + "api-version": "2021-01-25" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/subscriptions/mysubscriptionid/resourceGroups/myResourceGroupName/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSSName/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/AuditSecureProtocol/reports/7367cbb8-ae99-47d0-a33b-a283564d2cb1", + "name": "7367cbb8-ae99-47d0-a33b-a283564d2cb1", + "properties": { + "complianceStatus": "Compliant", + "assignment": { + "name": "AuditSecureProtocol", + "configuration": { + "name": "AuditSecureProtocol" + } + }, + "reportId": "7367cbb8-ae99-47d0-a33b-a283564d2cb1", + "vm": { + "id": "/subscriptions/mysubscriptionid/resourceGroups/myResourceGroupName/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSSName/virtualMachines/1", + "uuid": "vmuuid" + }, + "details": null, + "startTime": "2018-08-29T22:13:53Z", + "endTime": "2018-08-29T22:14:13Z" + } + }, + { + "id": "/subscriptions/mysubscriptionid/resourceGroups/myResourceGroupName/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSSName/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/AuditSecureProtocol/reports/41ee2caf-48f9-4999-a793-82ec7c6beb2c", + "name": "41ee2caf-48f9-4999-a793-82ec7c6beb2c", + "properties": { + "complianceStatus": "Compliant", + "assignment": { + "name": "AuditSecureProtocol", + "configuration": { + "name": "AuditSecureProtocol" + } + }, + "reportId": "41ee2caf-48f9-4999-a793-82ec7c6beb2c", + "vm": { + "id": "/subscriptions/mysubscriptionid/resourceGroups/myResourceGroupName/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSSName/virtualMachines/1", + "uuid": "vmuuid" + }, + "details": null, + "startTime": "2018-08-29T20:13:53Z", + "endTime": "2018-08-29T20:14:13Z" + } + } + ] + } + } + } +} diff --git a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/examples/listGuestConfigurationAssignments.json b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/examples/listGuestConfigurationAssignments.json new file mode 100644 index 000000000000..cfcb5634bbc4 --- /dev/null +++ b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/examples/listGuestConfigurationAssignments.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "mySubscriptionId", + "resourceGroupName": "myResourceGroupName", + "vmName": "myVMName", + "api-version": "2021-01-25" + }, + "responses": { + "200": { + "headers": {}, + "body": [ + { + "location": "centraluseuap", + "id": "/subscriptions/subscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.Compute/virtualMachines/myvm/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/AuditSecureProtocol2", + "name": "AuditSecureProtocol2", + "properties": { + "complianceStatus": "Compliant", + "assignmentHash": "content hash", + "latestReportId": "/subscriptions/subscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.Compute/virtualMachines/myvm/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/AuditSecureProtocol2/reports/7367cbb8-ae99-47d0-a33b-a283564d2cb1", + "lastComplianceStatusChecked": "2018-08-29T22:14:13Z", + "context": null, + "guestConfiguration": { + "kind": null, + "name": "AuditSecureProtocol2", + "version": "1.0.0.3", + "contentUri": "https://mystorageaccount.blob.core.windows.net/builtinconfig/AuditSecureProtocol2/AuditSecureProtocol2_1.0.0.3.zip", + "contentHash": "content hash", + "configurationParameter": [], + "configurationSetting": null + }, + "provisioningState": null + } + }, + { + "location": "centraluseuap", + "id": "/subscriptions/subscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.Compute/virtualMachines/myvm/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/myAssignment", + "name": "myAssignment", + "properties": { + "complianceStatus": "Compliant", + "assignmentHash": "content hash", + "latestReportId": "/subscriptions/subscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.Compute/virtualMachines/myvm/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/myAssignment/reports/7367cbb8-ae99-47d0-a33b-a283564d2cb1", + "lastComplianceStatusChecked": "2018-08-29T22:14:13Z", + "context": null, + "guestConfiguration": { + "kind": null, + "name": "myAssignment", + "version": "1.0.0.3", + "contentUri": "https://mystorageaccount.blob.core.windows.net/builtinconfig/myAssignment/myAssignment.0.0.3.zip", + "contentHash": "content hash", + "configurationParameter": [], + "configurationSetting": null + }, + "provisioningState": null + } + } + ] + } + } +} diff --git a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/examples/listGuestConfigurationHCRPAssignments.json b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/examples/listGuestConfigurationHCRPAssignments.json new file mode 100644 index 000000000000..e97ba7ec0077 --- /dev/null +++ b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/examples/listGuestConfigurationHCRPAssignments.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "mySubscriptionId", + "resourceGroupName": "myResourceGroupName", + "machineName": "myMachineName", + "api-version": "2021-01-25" + }, + "responses": { + "200": { + "headers": {}, + "body": [ + { + "location": "centraluseuap", + "id": "/subscriptions/subscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.HybridCompute/machines/myMachineName/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/AuditSecureProtocol2", + "name": "AuditSecureProtocol2", + "properties": { + "complianceStatus": "Compliant", + "assignmentHash": "content hash", + "latestReportId": "/subscriptions/subscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.HybridCompute/machines/myMachineName/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/AuditSecureProtocol2/reports/7367cbb8-ae99-47d0-a33b-a283564d2cb1", + "lastComplianceStatusChecked": "2018-08-29T22:14:13Z", + "context": null, + "guestConfiguration": { + "kind": null, + "name": "AuditSecureProtocol2", + "version": "1.0.0.3", + "contentUri": "https://mystorageaccount.blob.core.windows.net/builtinconfig/AuditSecureProtocol2/AuditSecureProtocol2_1.0.0.3.zip", + "contentHash": "content hash", + "configurationParameter": [], + "configurationSetting": null + }, + "provisioningState": null + } + }, + { + "location": "centraluseuap", + "id": "/subscriptions/subscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.HybridCompute/machines/myMachineName/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/myAssignment", + "name": "myAssignment", + "properties": { + "complianceStatus": "Compliant", + "assignmentHash": "content hash", + "latestReportId": "/subscriptions/subscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.HybridCompute/machines/myMachineName/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/myAssignment/reports/7367cbb8-ae99-47d0-a33b-a283564d2cb1", + "lastComplianceStatusChecked": "2018-08-29T22:14:13Z", + "context": null, + "guestConfiguration": { + "kind": null, + "name": "myAssignment", + "version": "1.0.0.3", + "contentUri": "https://mystorageaccount.blob.core.windows.net/builtinconfig/myAssignment/myAssignment.0.0.3.zip", + "contentHash": "content hash", + "configurationParameter": [], + "configurationSetting": null + }, + "provisioningState": null + } + } + ] + } + } +} diff --git a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/examples/listOperations.json b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/examples/listOperations.json new file mode 100644 index 000000000000..e67d2ada8c97 --- /dev/null +++ b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/examples/listOperations.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2021-01-25" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "name": "Microsoft.GuestConfiguration/guestConfigurationAssignments/write", + "display": { + "provider": "Microsoft Guest Configuration", + "resource": "Microsoft.GuestConfiguration/guestConfigurationAssignments", + "operation": "Microsoft.GuestConfiguration/guestConfigurationAssignments/write", + "description": "Create new guest configuration assignment." + }, + "properties": null + }, + { + "name": "Microsoft.GuestConfiguration/register/action", + "display": { + "provider": "Microsoft Guest Configuration", + "resource": "Register", + "operation": "Registers the feature for Microsoft.GuestConfiguration.", + "description": "Registers the subscription for the Microsoft.GuestConfiguration resource provider." + }, + "properties": null + }, + { + "name": "Microsoft.GuestConfiguration/guestConfigurationAssignments/read", + "display": { + "provider": "Microsoft Guest Configuration", + "resource": "Microsoft.GuestConfiguration/guestConfigurationAssignments", + "operation": "Microsoft.GuestConfiguration/guestConfigurationAssignments/read", + "description": "Get guest configuration assignment." + }, + "properties": null + }, + { + "name": "Microsoft.GuestConfiguration/guestConfigurationAssignments/reports/read", + "display": { + "provider": "Microsoft Guest Configuration", + "resource": "Microsoft.GuestConfiguration/guestConfigurationAssignments", + "operation": "Microsoft.GuestConfiguration/guestConfigurationAssignments/reports/read", + "description": "Get guest configuration assignment report." + }, + "properties": null + } + ] + } + } + } +} diff --git a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/examples/listVMSSGuestConfigurationAssignments.json b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/examples/listVMSSGuestConfigurationAssignments.json new file mode 100644 index 000000000000..707379900fc2 --- /dev/null +++ b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/examples/listVMSSGuestConfigurationAssignments.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "mySubscriptionId", + "resourceGroupName": "myResourceGroupName", + "vmssName": "myVMSSName", + "api-version": "2021-01-25" + }, + "responses": { + "200": { + "headers": {}, + "body": [ + { + "location": "centraluseuap", + "id": "/subscriptions/subscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSSName/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/AuditSecureProtocol2", + "name": "AuditSecureProtocol2", + "properties": { + "complianceStatus": "Compliant", + "assignmentHash": "content hash", + "latestReportId": "/subscriptions/subscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSSName/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/AuditSecureProtocol2/reports/7367cbb8-ae99-47d0-a33b-a283564d2cb1", + "lastComplianceStatusChecked": "2018-08-29T22:14:13Z", + "context": null, + "guestConfiguration": { + "kind": null, + "name": "AuditSecureProtocol2", + "version": "1.0.0.3", + "contentUri": "https://mystorageaccount.blob.core.windows.net/builtinconfig/AuditSecureProtocol2/AuditSecureProtocol2_1.0.0.3.zip", + "contentHash": "content hash", + "configurationParameter": [], + "configurationSetting": null + }, + "provisioningState": null + } + }, + { + "location": "centraluseuap", + "id": "/subscriptions/subscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSSName/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/myAssignment", + "name": "myAssignment", + "properties": { + "complianceStatus": "Compliant", + "assignmentHash": "content hash", + "latestReportId": "/subscriptions/subscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSSName/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/myAssignment/reports/7367cbb8-ae99-47d0-a33b-a283564d2cb1", + "lastComplianceStatusChecked": "2018-08-29T22:14:13Z", + "context": null, + "guestConfiguration": { + "kind": null, + "name": "myAssignment", + "version": "1.0.0.3", + "contentUri": "https://mystorageaccount.blob.core.windows.net/builtinconfig/myAssignment/myAssignment.0.0.3.zip", + "contentHash": "content hash", + "configurationParameter": [], + "configurationSetting": null + }, + "provisioningState": null + } + } + ] + } + } +} diff --git a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/guestconfiguration.json b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/guestconfiguration.json new file mode 100644 index 000000000000..fac640dcaa9b --- /dev/null +++ b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2021-01-25/guestconfiguration.json @@ -0,0 +1,1614 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-01-25", + "title": "GuestConfiguration" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://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/virtualMachines/{vmName}/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/{guestConfigurationAssignmentName}": { + "put": { + "tags": [ + "GuestConfigurationAssignments" + ], + "operationId": "GuestConfigurationAssignments_CreateOrUpdate", + "description": "Creates an association between a VM and guest configuration", + "x-ms-examples": { + "Create or update guest configuration assignment": { + "$ref": "./examples/createOrUpdateGuestConfigurationAssignment.json" + } + }, + "parameters": [ + { + "name": "guestConfigurationAssignmentName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the guest configuration assignment." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GuestConfigurationAssignment" + }, + "description": "Parameters supplied to the create or update guest configuration assignment." + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/VmNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Created. The guest configuration assignment for the VM was created successfully.", + "schema": { + "$ref": "#/definitions/GuestConfigurationAssignment" + } + }, + "200": { + "description": "OK. The guest configuration assignment for the VM was updated successfully.", + "schema": { + "$ref": "#/definitions/GuestConfigurationAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + }, + "get": { + "tags": [ + "GuestConfigurationAssignments" + ], + "operationId": "GuestConfigurationAssignments_Get", + "description": "Get information about a guest configuration assignment", + "x-ms-examples": { + "Get a guest configuration assignment": { + "$ref": "./examples/getGuestConfigurationAssignment.json" + } + }, + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "guestConfigurationAssignmentName", + "in": "path", + "required": true, + "type": "string", + "description": "The guest configuration assignment name." + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/VmNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The guest configuration assignment was returned successfully.", + "schema": { + "$ref": "#/definitions/GuestConfigurationAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + }, + "delete": { + "tags": [ + "GuestConfigurationAssignments" + ], + "operationId": "GuestConfigurationAssignments_Delete", + "description": "Delete a guest configuration assignment", + "x-ms-examples": { + "Delete an guest configuration assignment": { + "$ref": "./examples/deleteGuestConfigurationAssignment.json" + } + }, + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "guestConfigurationAssignmentName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the guest configuration assignment" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/VmNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments": { + "get": { + "tags": [ + "GuestConfigurationAssignments" + ], + "operationId": "GuestConfigurationAssignments_List", + "description": "List all guest configuration assignments for a virtual machine.", + "x-ms-examples": { + "List all guest configuration assignments for a virtual machine": { + "$ref": "./examples/listGuestConfigurationAssignments.json" + } + }, + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/VmNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GuestConfigurationAssignmentList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/{guestConfigurationAssignmentName}/reports": { + "get": { + "tags": [ + "GuestConfigurationAssignmentReports" + ], + "operationId": "GuestConfigurationAssignmentReports_List", + "description": "List all reports for the guest configuration assignment, latest report first.", + "x-ms-examples": { + "List all guest configuration assignments for a virtual machine": { + "$ref": "./examples/listAllGuestConfigurationAssignmentReports.json" + } + }, + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "guestConfigurationAssignmentName", + "in": "path", + "required": true, + "type": "string", + "description": "The guest configuration assignment name." + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/VmNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. This response is due one of these two reasons: 1. Reports were returned successfully 2. Guest configuration assignment was found, but VM is not registered yet, hence no reports returned.", + "schema": { + "$ref": "#/definitions/GuestConfigurationAssignmentReportList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/{guestConfigurationAssignmentName}/reports/{reportId}": { + "get": { + "tags": [ + "GuestConfigurationAssignmentReports" + ], + "operationId": "GuestConfigurationAssignmentReports_Get", + "description": "Get a report for the guest configuration assignment, by reportId.", + "x-ms-examples": { + "Get a guest configuration assignment report by Id for a virtual machine": { + "$ref": "./examples/getGuestConfigurationAssignmentReportById.json" + } + }, + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "guestConfigurationAssignmentName", + "in": "path", + "required": true, + "type": "string", + "description": "The guest configuration assignment name." + }, + { + "name": "reportId", + "in": "path", + "required": true, + "type": "string", + "description": "The GUID for the guest configuration assignment report." + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/VmNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. This response is due one of these two reasons: 1. Report was returned successfully 2. Guest configuration assignment was found, but VM is not registered yet, hence no report was returned.", + "schema": { + "$ref": "#/definitions/GuestConfigurationAssignmentReport" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/{guestConfigurationAssignmentName}": { + "put": { + "tags": [ + "GuestConfigurationHCRPAssignments" + ], + "operationId": "GuestConfigurationHCRPAssignments_CreateOrUpdate", + "description": "Creates an association between a ARC machine and guest configuration", + "x-ms-examples": { + "Create or update guest configuration assignment": { + "$ref": "./examples/createOrUpdateGuestConfigurationHCRPAssignment.json" + } + }, + "parameters": [ + { + "name": "guestConfigurationAssignmentName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the guest configuration assignment." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GuestConfigurationAssignment" + }, + "description": "Parameters supplied to the create or update guest configuration assignment." + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/MachineNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Created. The guest configuration assignment for the ARC machine was created successfully.", + "schema": { + "$ref": "#/definitions/GuestConfigurationAssignment" + } + }, + "200": { + "description": "OK. The guest configuration assignment for the ARC machine was updated successfully.", + "schema": { + "$ref": "#/definitions/GuestConfigurationAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + }, + "get": { + "tags": [ + "GuestConfigurationHCRPAssignments" + ], + "operationId": "GuestConfigurationHCRPAssignments_Get", + "description": "Get information about a guest configuration assignment", + "x-ms-examples": { + "Get a guest configuration assignment": { + "$ref": "./examples/getGuestConfigurationHCRPAssignment.json" + } + }, + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "guestConfigurationAssignmentName", + "in": "path", + "required": true, + "type": "string", + "description": "The guest configuration assignment name." + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/MachineNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The guest configuration assignment was returned successfully.", + "schema": { + "$ref": "#/definitions/GuestConfigurationAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + }, + "delete": { + "tags": [ + "GuestConfigurationHCRPAssignments" + ], + "operationId": "GuestConfigurationHCRPAssignments_Delete", + "description": "Delete a guest configuration assignment", + "x-ms-examples": { + "Delete an guest configuration assignment": { + "$ref": "./examples/deleteGuestConfigurationHCRPAssignment.json" + } + }, + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "guestConfigurationAssignmentName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the guest configuration assignment" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/MachineNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments": { + "get": { + "tags": [ + "GuestConfigurationHCRPAssignments" + ], + "operationId": "GuestConfigurationHCRPAssignments_List", + "description": "List all guest configuration assignments for an ARC machine.", + "x-ms-examples": { + "List all guest configuration assignments for a virtual machine": { + "$ref": "./examples/listGuestConfigurationHCRPAssignments.json" + } + }, + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/MachineNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GuestConfigurationAssignmentList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/{guestConfigurationAssignmentName}/reports": { + "get": { + "tags": [ + "GuestConfigurationAssignmentHCRPReports" + ], + "operationId": "GuestConfigurationHCRPAssignmentReports_List", + "description": "List all reports for the guest configuration assignment, latest report first.", + "x-ms-examples": { + "List all guest configuration assignments for a virtual machine": { + "$ref": "./examples/listAllGuestConfigurationHCRPAssignmentReports.json" + } + }, + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "guestConfigurationAssignmentName", + "in": "path", + "required": true, + "type": "string", + "description": "The guest configuration assignment name." + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/MachineNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. This response is due one of these two reasons: 1. Reports were returned successfully 2. Guest configuration assignment was found, but machine is not registered yet, hence no reports returned.", + "schema": { + "$ref": "#/definitions/GuestConfigurationAssignmentReportList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/{guestConfigurationAssignmentName}/reports/{reportId}": { + "get": { + "tags": [ + "GuestConfigurationAssignmentHCRPReports" + ], + "operationId": "GuestConfigurationHCRPAssignmentReports_Get", + "description": "Get a report for the guest configuration assignment, by reportId.", + "x-ms-examples": { + "Get a guest configuration assignment report by Id for a virtual machine": { + "$ref": "./examples/getGuestConfigurationHCRPAssignmentReportById.json" + } + }, + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "guestConfigurationAssignmentName", + "in": "path", + "required": true, + "type": "string", + "description": "The guest configuration assignment name." + }, + { + "name": "reportId", + "in": "path", + "required": true, + "type": "string", + "description": "The GUID for the guest configuration assignment report." + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/MachineNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. This response is due one of these two reasons: 1. Report was returned successfully 2. Guest configuration assignment was found, but machine is not registered yet, hence no report was returned.", + "schema": { + "$ref": "#/definitions/GuestConfigurationAssignmentReport" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmssName}/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/{name}": { + "get": { + "tags": [ + "GuestConfigurationAssignments" + ], + "operationId": "GuestConfigurationAssignmentsVMSS_Get", + "description": "Get information about a guest configuration assignment for VMSS", + "x-ms-examples": { + "Get a VMSS guest configuration assignment": { + "$ref": "./examples/getVMSSGuestConfigurationAssignment.json" + } + }, + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "required": true, + "type": "string", + "description": "The guest configuration assignment name." + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/VMSSNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The guest configuration assignment was returned successfully.", + "schema": { + "$ref": "#/definitions/GuestConfigurationAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + }, + "delete": { + "tags": [ + "GuestConfigurationAssignments" + ], + "operationId": "GuestConfigurationAssignmentsVMSS_Delete", + "description": "Delete a guest configuration assignment for VMSS", + "x-ms-examples": { + "Delete an guest configuration assignment for VMSS": { + "$ref": "./examples/deleteGuestConfigurationVMSSAssignment.json" + } + }, + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "required": true, + "type": "string", + "description": "The guest configuration assignment name." + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/VMSSNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GuestConfigurationAssignment" + } + }, + "204": { + "description": "OK" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmssName}/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments": { + "get": { + "tags": [ + "GuestConfigurationAssignments" + ], + "operationId": "GuestConfigurationAssignmentsVMSS_List", + "description": "List all guest configuration assignments for VMSS.", + "x-ms-examples": { + "List all guest configuration assignments for VMSS": { + "$ref": "./examples/listVMSSGuestConfigurationAssignments.json" + } + }, + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/VMSSNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GuestConfigurationAssignmentList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmssName}/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/{name}/reports": { + "get": { + "tags": [ + "GuestConfigurationAssignmentReports" + ], + "operationId": "GuestConfigurationAssignmentReportsVMSS_List", + "description": "List all reports for the VMSS guest configuration assignment, latest report first.", + "x-ms-examples": { + "List all guest configuration assignments for VMSS": { + "$ref": "./examples/listAllVMSSGuestConfigurationAssignmentReports.json" + } + }, + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "required": true, + "type": "string", + "description": "The guest configuration assignment name." + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/VMSSNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. This response is due one of these two reasons: 1. Reports were returned successfully 2. Guest configuration assignment was found, but VM is not registered yet, hence no reports returned.", + "schema": { + "$ref": "#/definitions/GuestConfigurationAssignmentReportList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmssName}/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/{name}/reports/{id}": { + "get": { + "tags": [ + "GuestConfigurationAssignmentReports" + ], + "operationId": "GuestConfigurationAssignmentReportsVMSS_Get", + "description": "Get a report for the VMSS guest configuration assignment, by reportId.", + "x-ms-examples": { + "Get a guest configuration assignment report by Id for a virtual machine scale set": { + "$ref": "./examples/getVMSSGuestConfigurationAssignmentReportById.json" + } + }, + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "required": true, + "type": "string", + "description": "The guest configuration assignment name." + }, + { + "name": "id", + "in": "path", + "required": true, + "type": "string", + "description": "The GUID for the guest configuration assignment report." + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/VMSSNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. This response is due one of these two reasons: 1. Report was returned successfully 2. Guest configuration assignment was found, but VM is not registered yet, hence no report was returned.", + "schema": { + "$ref": "#/definitions/GuestConfigurationAssignmentReport" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + } + }, + "/providers/Microsoft.GuestConfiguration/operations": { + "get": { + "tags": [ + "Operations" + ], + "description": "Lists all of the available GuestConfiguration REST API operations.", + "x-ms-examples": { + "Lists all of the available GuestConfiguration REST API operations": { + "$ref": "./examples/listOperations.json" + } + }, + "operationId": "Operations_List", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/OperationList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + } + } + }, + "definitions": { + "GuestConfigurationAssignmentList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/GuestConfigurationAssignment" + }, + "description": "Result of the list guest configuration assignment operation." + } + }, + "description": "The response of the list guest configuration assignment operation." + }, + "GuestConfigurationAssignment": { + "properties": { + "properties": { + "x-ms-client-flatten": false, + "$ref": "#/definitions/GuestConfigurationAssignmentProperties", + "description": "Properties of the Guest configuration assignment." + }, + "systemData": { + "readOnly": true, + "type": "object", + "description": "Azure Resource Manager metadata containing createdBy and modifiedBy information.", + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData" + } + }, + "allOf": [ + { + "$ref": "../../common/v1/definitions.json#/definitions/ProxyResource" + } + ], + "description": "Guest configuration assignment is an association between a machine and guest configuration." + }, + "GuestConfigurationNavigation": { + "description": "Guest configuration is an artifact that encapsulates DSC configuration and its dependencies. The artifact is a zip file containing DSC configuration (as MOF) and dependent resources and other dependencies like modules.", + "properties": { + "kind": { + "type": "string", + "description": "Kind of the guest configuration. For example:DSC", + "x-ms-enum": { + "name": "kind", + "modelAsString": true + }, + "enum": [ + "DSC" + ] + }, + "name": { + "type": "string", + "description": "Name of the guest configuration." + }, + "version": { + "type": "string", + "description": "Version of the guest configuration." + }, + "contentUri": { + "readOnly": true, + "type": "string", + "description": "Uri of the storage where guest configuration package is uploaded." + }, + "contentHash": { + "readOnly": true, + "type": "string", + "description": "Combined hash of the guest configuration package and configuration parameters." + }, + "configurationParameter": { + "type": "array", + "items": { + "$ref": "#/definitions/ConfigurationParameter" + }, + "description": "The configuration parameters for the guest configuration." + }, + "configurationSetting": { + "$ref": "#/definitions/ConfigurationSetting", + "description": "The configuration setting for the guest configuration." + } + } + }, + "ConfigurationParameter": { + "properties": { + "name": { + "type": "string", + "readOnly": false, + "description": "Name of the configuration parameter." + }, + "value": { + "type": "string", + "readOnly": false, + "description": "Value of the configuration parameter." + } + }, + "description": "Represents a configuration parameter." + }, + "ConfigurationSetting": { + "properties": { + "configurationMode": { + "type": "string", + "readOnly": false, + "description": "Specifies how the LCM(Local Configuration Manager) actually applies the configuration to the target nodes. Possible values are ApplyOnly, ApplyAndMonitor, and ApplyAndAutoCorrect.", + "x-ms-enum": { + "name": "configurationMode", + "modelAsString": true + }, + "enum": [ + "ApplyOnly", + "ApplyAndMonitor", + "ApplyAndAutoCorrect" + ] + }, + "allowModuleOverwrite": { + "type": "boolean", + "description": "If true - new configurations downloaded from the pull service are allowed to overwrite the old ones on the target node. Otherwise, false" + }, + "actionAfterReboot": { + "type": "string", + "readOnly": false, + "description": "Specifies what happens after a reboot during the application of a configuration. The possible values are ContinueConfiguration and StopConfiguration", + "x-ms-enum": { + "name": "actionAfterReboot", + "modelAsString": true + }, + "enum": [ + "ContinueConfiguration", + "StopConfiguration" + ] + }, + "refreshFrequencyMins": { + "type": "number", + "readOnly": false, + "default": 30, + "description": "The time interval, in minutes, at which the LCM checks a pull service to get updated configurations. This value is ignored if the LCM is not configured in pull mode. The default value is 30." + }, + "rebootIfNeeded": { + "type": "boolean", + "readOnly": false, + "description": "Set this to true to automatically reboot the node after a configuration that requires reboot is applied. Otherwise, you will have to manually reboot the node for any configuration that requires it. The default value is false. To use this setting when a reboot condition is enacted by something other than DSC (such as Windows Installer), combine this setting with the xPendingReboot module." + }, + "configurationModeFrequencyMins": { + "type": "number", + "readOnly": false, + "default": 15, + "description": "How often, in minutes, the current configuration is checked and applied. This property is ignored if the ConfigurationMode property is set to ApplyOnly. The default value is 15." + } + }, + "description": "Configuration setting of LCM (Local Configuration Manager)." + }, + "AssignmentReport": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "ARM resource id of the report for the guest configuration assignment." + }, + "reportId": { + "type": "string", + "readOnly": true, + "description": "GUID that identifies the guest configuration assignment report under a subscription, resource group." + }, + "assignment": { + "$ref": "#/definitions/AssignmentInfo", + "description": "Configuration details of the guest configuration assignment." + }, + "vm": { + "$ref": "#/definitions/VMInfo", + "description": "Information about the VM." + }, + "startTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "Start date and time of the guest configuration assignment compliance status check." + }, + "endTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "End date and time of the guest configuration assignment compliance status check." + }, + "complianceStatus": { + "type": "string", + "readOnly": true, + "description": "A value indicating compliance status of the machine for the assigned guest configuration.", + "x-ms-enum": { + "name": "complianceStatus", + "modelAsString": true + }, + "enum": [ + "Compliant", + "NonCompliant", + "Pending" + ] + }, + "operationType": { + "type": "string", + "readOnly": true, + "description": "Type of report, Consistency or Initial", + "x-ms-enum": { + "name": "type", + "modelAsString": true + }, + "enum": [ + "Consistency", + "Initial" + ] + }, + "resources": { + "type": "array", + "items": { + "$ref": "#/definitions/AssignmentReportResource" + }, + "description": "The list of resources for which guest configuration assignment compliance is checked." + } + } + }, + "GuestConfigurationAssignmentProperties": { + "properties": { + "targetResourceId": { + "type": "string", + "readOnly": true, + "description": "VM resource Id.", + "x-nullable": true + }, + "guestConfiguration": { + "$ref": "#/definitions/GuestConfigurationNavigation", + "description": "The guest configuration to assign." + }, + "complianceStatus": { + "type": "string", + "readOnly": true, + "description": "A value indicating compliance status of the machine for the assigned guest configuration.", + "x-ms-enum": { + "name": "complianceStatus", + "modelAsString": true + }, + "enum": [ + "Compliant", + "NonCompliant", + "Pending" + ] + }, + "lastComplianceStatusChecked": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "Date and time when last compliance status was checked.", + "x-nullable": true + }, + "latestReportId": { + "type": "string", + "readOnly": true, + "description": "Id of the latest report for the guest configuration assignment. ", + "x-nullable": true + }, + "latestAssignmentReport": { + "$ref": "#/definitions/AssignmentReport", + "description": "Last reported guest configuration assignment report." + }, + "context": { + "type": "string", + "description": "The source which initiated the guest configuration assignment. Ex: Azure Policy" + }, + "assignmentHash": { + "type": "string", + "readOnly": true, + "description": "Combined hash of the configuration package and parameters.", + "x-nullable": true + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state, which only appears in the response.", + "x-nullable": true, + "x-ms-enum": { + "name": "provisioningState", + "modelAsString": true + }, + "enum": [ + "Succeeded", + "Failed", + "Canceled", + "Created" + ] + }, + "resourceType": { + "type": "string", + "readOnly": true, + "description": "Type of the resource - VMSS / VM", + "x-nullable": true + }, + "vmssVMList": { + "type": "array", + "items": { + "$ref": "#/definitions/VMSSVMInfo" + }, + "description": "The list of VM Compliance data for VMSS" + } + }, + "description": "Guest configuration assignment properties." + }, + "GuestConfigurationAssignmentReportList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/GuestConfigurationAssignmentReport" + }, + "description": "List of reports for the guest configuration. Report contains information such as compliance status, reason and more." + } + }, + "description": "List of guest configuration assignment reports." + }, + "GuestConfigurationAssignmentReport": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "ARM resource id of the report for the guest configuration assignment." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "GUID that identifies the guest configuration assignment report under a subscription, resource group." + }, + "properties": { + "$ref": "#/definitions/GuestConfigurationAssignmentReportProperties", + "description": "Properties of the guest configuration report." + } + }, + "description": "Report for the guest configuration assignment. Report contains information such as compliance status, reason, and more." + }, + "GuestConfigurationAssignmentReportProperties": { + "properties": { + "complianceStatus": { + "type": "string", + "readOnly": true, + "description": "A value indicating compliance status of the machine for the assigned guest configuration.", + "x-ms-enum": { + "name": "complianceStatus", + "modelAsString": true + }, + "enum": [ + "Compliant", + "NonCompliant", + "Pending" + ] + }, + "reportId": { + "type": "string", + "readOnly": true, + "description": "GUID that identifies the guest configuration assignment report under a subscription, resource group." + }, + "assignment": { + "$ref": "#/definitions/AssignmentInfo", + "description": "Configuration details of the guest configuration assignment." + }, + "vm": { + "$ref": "#/definitions/VMInfo", + "description": "Information about the VM." + }, + "startTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "Start date and time of the guest configuration assignment compliance status check." + }, + "endTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "End date and time of the guest configuration assignment compliance status check." + }, + "details": { + "$ref": "#/definitions/AssignmentReportDetails", + "description": "Details of the assignment report.", + "x-nullable": true + }, + "vmssResourceId": { + "type": "string", + "readOnly": true, + "description": "Azure resource Id of the VMSS." + } + }, + "description": "Report for the guest configuration assignment. Report contains information such as compliance status, reason, and more." + }, + "AssignmentInfo": { + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "Name of the guest configuration assignment." + }, + "configuration": { + "$ref": "#/definitions/ConfigurationInfo", + "description": "Information about the configuration." + } + }, + "description": "Information about the guest configuration assignment." + }, + "VMInfo": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "Azure resource Id of the VM." + }, + "uuid": { + "type": "string", + "readOnly": true, + "description": "UUID(Universally Unique Identifier) of the VM." + } + }, + "description": "Information about the VM." + }, + "ConfigurationInfo": { + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "Name of the configuration." + }, + "version": { + "type": "string", + "readOnly": true, + "description": "Version of the configuration." + } + }, + "description": "Information about the configuration." + }, + "AssignmentReportDetails": { + "properties": { + "complianceStatus": { + "type": "string", + "readOnly": true, + "description": "A value indicating compliance status of the machine for the assigned guest configuration.", + "x-ms-enum": { + "name": "complianceStatus", + "modelAsString": true + }, + "enum": [ + "Compliant", + "NonCompliant", + "Pending" + ] + }, + "startTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "Start date and time of the guest configuration assignment compliance status check." + }, + "endTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "End date and time of the guest configuration assignment compliance status check." + }, + "jobId": { + "type": "string", + "readOnly": true, + "description": "GUID of the report." + }, + "operationType": { + "type": "string", + "readOnly": true, + "description": "Type of report, Consistency or Initial", + "x-ms-enum": { + "name": "type", + "modelAsString": true + }, + "enum": [ + "Consistency", + "Initial" + ] + }, + "resources": { + "type": "array", + "items": { + "$ref": "#/definitions/AssignmentReportResource" + }, + "description": "The list of resources for which guest configuration assignment compliance is checked." + } + }, + "description": "Details of the guest configuration assignment report." + }, + "AssignmentReportResource": { + "properties": { + "complianceStatus": { + "type": "string", + "readOnly": true, + "description": "A value indicating compliance status of the machine for the assigned guest configuration.", + "x-ms-enum": { + "name": "complianceStatus", + "modelAsString": true + }, + "enum": [ + "Compliant", + "NonCompliant", + "Pending" + ] + }, + "resourceId": { + "type": "string", + "readOnly": true, + "description": "Name of the guest configuration assignment resource setting." + }, + "reasons": { + "type": "array", + "items": { + "$ref": "#/definitions/AssignmentReportResourceComplianceReason" + }, + "description": "Compliance reason and reason code for a resource." + }, + "properties": { + "type": "object", + "readOnly": true, + "description": "Properties of a guest configuration assignment resource." + } + }, + "description": "The guest configuration assignment resource." + }, + "AssignmentReportResourceComplianceReason": { + "properties": { + "phrase": { + "type": "string", + "readOnly": true, + "description": "Reason for the compliance of the guest configuration assignment resource." + }, + "code": { + "type": "string", + "readOnly": true, + "description": "Code for the compliance of the guest configuration assignment resource." + } + }, + "description": "Reason and code for the compliance of the guest configuration assignment resource." + }, + "VMSSVMInfo": { + "properties": { + "vmId": { + "type": "string", + "readOnly": true, + "description": "UUID of the VM." + }, + "vmResourceId": { + "type": "string", + "readOnly": true, + "description": "Azure resource Id of the VM." + }, + "complianceStatus": { + "type": "string", + "readOnly": true, + "description": "A value indicating compliance status of the machine for the assigned guest configuration.", + "x-ms-enum": { + "name": "complianceStatus", + "modelAsString": true + }, + "enum": [ + "Compliant", + "NonCompliant", + "Pending" + ] + }, + "latestReportId": { + "type": "string", + "readOnly": true, + "description": "Id of the latest report for the guest configuration assignment. ", + "x-nullable": true + }, + "lastComplianceChecked": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "Date and time when last compliance status was checked.", + "x-nullable": true + } + }, + "description": "Information about VMSS VM" + } + }, + "parameters": {} +} diff --git a/specification/guestconfiguration/resource-manager/readme.azureresourceschema.md b/specification/guestconfiguration/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 22f8040208d4..000000000000 --- a/specification/guestconfiguration/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,60 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-guestconfiguration-2020-06-25 - - tag: schema-guestconfiguration-2018-11-20 - - tag: schema-guestconfiguration-2018-06-30-preview - - tag: schema-guestconfiguration-2018-01-20-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-guestconfiguration-2020-06-25 and azureresourceschema - -``` yaml $(tag) == 'schema-guestconfiguration-2020-06-25' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.GuestConfiguration/stable/2020-06-25/guestconfiguration.json - -``` - -### Tag: schema-guestconfiguration-2018-11-20 and azureresourceschema - -``` yaml $(tag) == 'schema-guestconfiguration-2018-11-20' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.GuestConfiguration/stable/2018-11-20/guestconfiguration.json - -``` - -### Tag: schema-guestconfiguration-2018-06-30-preview and azureresourceschema - -``` yaml $(tag) == 'schema-guestconfiguration-2018-06-30-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.GuestConfiguration/preview/2018-06-30-preview/guestconfiguration.json - -``` - -### Tag: schema-guestconfiguration-2018-01-20-preview and azureresourceschema - -``` yaml $(tag) == 'schema-guestconfiguration-2018-01-20-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.GuestConfiguration/preview/2018-01-20-preview/guestconfiguration.json - -``` diff --git a/specification/guestconfiguration/resource-manager/readme.go.md b/specification/guestconfiguration/resource-manager/readme.go.md index 07062758e002..d8d85547e22b 100644 --- a/specification/guestconfiguration/resource-manager/readme.go.md +++ b/specification/guestconfiguration/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: guestconfiguration clear-output-folder: true ``` @@ -14,6 +14,15 @@ go: ``` yaml $(go) && $(multiapi) batch: - tag: package-2020-06-25 + - tag: package-2021-01-25 +``` +### Tag: package-2021-01-25 and go + +These settings apply only when `--tag=package-2021-01-25 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2021-01-25' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2021-01-25/$(namespace) ``` ### Tag: package-2020-06-25 and go diff --git a/specification/guestconfiguration/resource-manager/readme.md b/specification/guestconfiguration/resource-manager/readme.md index 16040945cfd0..2b9c959faa0e 100644 --- a/specification/guestconfiguration/resource-manager/readme.md +++ b/specification/guestconfiguration/resource-manager/readme.md @@ -31,6 +31,15 @@ openapi-type: arm tag: package-2020-06-25 ``` +### Tag: package-2021-01-25 + +These settings apply only when `--tag=package-2021-01-25` is specified on the command line. + +``` yaml $(tag) == 'package-2021-01-25' +input-file: + - Microsoft.GuestConfiguration/stable/2021-01-25/guestconfiguration.json +``` + ### Tag: package-2020-06-25 These settings apply only when `--tag=package-2020-06-25` is specified on the command line. @@ -115,8 +124,6 @@ swagger-to-sdk: - repo: azure-sdk-for-go - repo: azure-cli-extensions - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js guestconfiguration/resource-manager ``` @@ -134,7 +141,5 @@ csharp: clear-output-folder: true ``` -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/hanaonazure/resource-manager/readme.azureresourceschema.md b/specification/hanaonazure/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 22ee3b84d3de..000000000000 --- a/specification/hanaonazure/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,36 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-hanaonazure-2020-02-07-preview - - tag: schema-hanaonazure-2017-11-03-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-hanaonazure-2020-02-07-preview and azureresourceschema - -``` yaml $(tag) == 'schema-hanaonazure-2020-02-07-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.HanaOnAzure/preview/2020-02-07-preview/hanaonazure.json - -``` - -### Tag: schema-hanaonazure-2017-11-03-preview and azureresourceschema - -``` yaml $(tag) == 'schema-hanaonazure-2017-11-03-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.HanaOnAzure/preview/2017-11-03-preview/hanaonazure.json - -``` diff --git a/specification/hanaonazure/resource-manager/readme.go.md b/specification/hanaonazure/resource-manager/readme.go.md index 05cc71e25015..6b1e824cbd82 100644 --- a/specification/hanaonazure/resource-manager/readme.go.md +++ b/specification/hanaonazure/resource-manager/readme.go.md @@ -3,7 +3,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: hanaonazure clear-output-folder: true ``` diff --git a/specification/hanaonazure/resource-manager/readme.md b/specification/hanaonazure/resource-manager/readme.md index d02196355af9..94f530067662 100644 --- a/specification/hanaonazure/resource-manager/readme.md +++ b/specification/hanaonazure/resource-manager/readme.md @@ -64,14 +64,16 @@ This is not used by Autorest itself. swagger-to-sdk: - repo: azure-powershell - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-java - repo: azure-sdk-for-go - repo: azure-sdk-for-js - repo: azure-sdk-for-node - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js hanaonazure/resource-manager ``` +## Python + +See configuration in [readme.python.md](./readme.python.md) ## Go @@ -113,7 +115,5 @@ generate-interface: true -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/hardwaresecuritymodules/resource-manager/readme.azureresourceschema.md b/specification/hardwaresecuritymodules/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 1bb0e7808dae..000000000000 --- a/specification/hardwaresecuritymodules/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,24 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-hardwaresecuritymodules-2018-10-31-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-hardwaresecuritymodules-2018-10-31-preview and azureresourceschema - -``` yaml $(tag) == 'schema-hardwaresecuritymodules-2018-10-31-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.HardwareSecurityModules/preview/2018-10-31-preview/dedicatedhsm.json - -``` diff --git a/specification/hardwaresecuritymodules/resource-manager/readme.go.md b/specification/hardwaresecuritymodules/resource-manager/readme.go.md index d346e30613a2..dd8be103c986 100644 --- a/specification/hardwaresecuritymodules/resource-manager/readme.go.md +++ b/specification/hardwaresecuritymodules/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ```yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: hardwaresecuritymodules clear-output-folder: true ``` diff --git a/specification/hardwaresecuritymodules/resource-manager/readme.md b/specification/hardwaresecuritymodules/resource-manager/readme.md index 422e0f3f94bf..a6448f232a65 100644 --- a/specification/hardwaresecuritymodules/resource-manager/readme.md +++ b/specification/hardwaresecuritymodules/resource-manager/readme.md @@ -41,9 +41,7 @@ input-file: -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) # Code Generation @@ -58,7 +56,5 @@ This is not used by Autorest itself. swagger-to-sdk: - repo: azure-cli-extensions - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js hardwaresecuritymodules/resource-manager ``` diff --git a/specification/hdinsight/data-plane/readme.go.md b/specification/hdinsight/data-plane/readme.go.md index 9a1d821a78fa..1c8ba26dcc16 100644 --- a/specification/hdinsight/data-plane/readme.go.md +++ b/specification/hdinsight/data-plane/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: hdinsight clear-output-folder: true ``` diff --git a/specification/hdinsight/resource-manager/Microsoft.HDInsight/preview/2015-03-01-preview/examples/DisableLinuxClusterAzureMonitor.json b/specification/hdinsight/resource-manager/Microsoft.HDInsight/preview/2015-03-01-preview/examples/DisableLinuxClusterAzureMonitor.json new file mode 100644 index 000000000000..30c2624ffffc --- /dev/null +++ b/specification/hdinsight/resource-manager/Microsoft.HDInsight/preview/2015-03-01-preview/examples/DisableLinuxClusterAzureMonitor.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "clusterName": "cluster1", + "resourceGroupName": "rg1", + "api-version": "2015-03-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/hdinsight/resource-manager/Microsoft.HDInsight/preview/2015-03-01-preview/examples/EnableLinuxClusterAzureMonitor.json b/specification/hdinsight/resource-manager/Microsoft.HDInsight/preview/2015-03-01-preview/examples/EnableLinuxClusterAzureMonitor.json new file mode 100644 index 000000000000..17a09a38cad5 --- /dev/null +++ b/specification/hdinsight/resource-manager/Microsoft.HDInsight/preview/2015-03-01-preview/examples/EnableLinuxClusterAzureMonitor.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "clusterName": "cluster1", + "resourceGroupName": "rg1", + "api-version": "2015-03-01-preview", + "subscriptionId": "subid", + "parameters": { + "workspaceId": "a2090ead-8c9f-4fba-b70e-533e3e003163", + "primaryKey": "**********" + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/hdinsight/resource-manager/Microsoft.HDInsight/preview/2015-03-01-preview/examples/GetLinuxClusterAzureMonitorStatus.json b/specification/hdinsight/resource-manager/Microsoft.HDInsight/preview/2015-03-01-preview/examples/GetLinuxClusterAzureMonitorStatus.json new file mode 100644 index 000000000000..5a844bf3dc25 --- /dev/null +++ b/specification/hdinsight/resource-manager/Microsoft.HDInsight/preview/2015-03-01-preview/examples/GetLinuxClusterAzureMonitorStatus.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "clusterName": "cluster1", + "resourceGroupName": "rg1", + "api-version": "2015-03-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "clusterMonitoringEnabled": true, + "workspaceId": "id" + } + } + } +} diff --git a/specification/hdinsight/resource-manager/Microsoft.HDInsight/preview/2015-03-01-preview/extensions.json b/specification/hdinsight/resource-manager/Microsoft.HDInsight/preview/2015-03-01-preview/extensions.json index 8ad6809a0088..10579e3d684b 100644 --- a/specification/hdinsight/resource-manager/Microsoft.HDInsight/preview/2015-03-01-preview/extensions.json +++ b/specification/hdinsight/resource-manager/Microsoft.HDInsight/preview/2015-03-01-preview/extensions.json @@ -176,6 +176,148 @@ } } }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HDInsight/clusters/{clusterName}/extensions/azureMonitor": { + "put": { + "tags": [ + "Extensions" + ], + "description": "Enables the Azure Monitor on the HDInsight cluster.", + "x-ms-examples": { + "Enable cluster monitoring": { + "$ref": "./examples/EnableLinuxClusterAzureMonitor.json" + } + }, + "operationId": "Extensions_EnableAzureMonitor", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AzureMonitorRequest" + }, + "description": "The Log Analytics workspace parameters." + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./operations.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Ok response definition." + }, + "202": { + "description": "Accepted response definition." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "Extensions" + ], + "description": "Gets the status of Azure Monitor on the HDInsight cluster.", + "x-ms-examples": { + "Enable cluster monitoring": { + "$ref": "./examples/GetLinuxClusterAzureMonitorStatus.json" + } + }, + "operationId": "Extensions_GetAzureMonitorStatus", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./operations.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/AzureMonitorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Extensions" + ], + "description": "Disables the Azure Monitor on the HDInsight cluster.", + "x-ms-examples": { + "Enable cluster monitoring": { + "$ref": "./examples/DisableLinuxClusterAzureMonitor.json" + } + }, + "operationId": "Extensions_DisableAzureMonitor", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./operations.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Ok response definition." + }, + "202": { + "description": "OK response definition." + }, + "204": { + "description": "No Content response definition." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HDInsight/clusters/{clusterName}/extensions/{extensionName}": { "put": { "tags": [ @@ -415,6 +557,72 @@ "type": "string" } } + }, + "AzureMonitorRequest": { + "description": "The azure monitor parameters.", + "properties": { + "workspaceId": { + "description": "The Log Analytics workspace ID.", + "type": "string" + }, + "primaryKey": { + "description": "The Log Analytics workspace key.", + "type": "string" + }, + "selectedConfigurations": { + "description": "The selected configurations.", + "$ref": "#/definitions/AzureMonitorSelectedConfigurations" + } + } + }, + "AzureMonitorResponse": { + "description": "The azure monitor status response.", + "properties": { + "clusterMonitoringEnabled": { + "description": "The status of the monitor on the HDInsight cluster.", + "type": "boolean" + }, + "workspaceId": { + "description": "The workspace ID of the monitor on the HDInsight cluster.", + "type": "string" + }, + "selectedConfigurations": { + "description": "The selected configurations.", + "$ref": "#/definitions/AzureMonitorSelectedConfigurations" + } + } + }, + "AzureMonitorSelectedConfigurations": { + "description": "The selected configurations for azure monitor.", + "properties": { + "configurationVersion": { + "description": "The configuration version.", + "type": "string" + }, + "globalConfigurations": { + "description": "The global configurations of selected configurations.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "tableList": { + "description": "The table list.", + "type": "array", + "items": { + "$ref": "#/definitions/AzureMonitorTableConfiguration" + } + } + } + }, + "AzureMonitorTableConfiguration": { + "description": "The table configuration for the Log Analytics integration.", + "properties": { + "name": { + "description": "The name.", + "type": "string" + } + } } }, "parameters": { diff --git a/specification/hdinsight/resource-manager/Microsoft.HDInsight/stable/2018-06-01-preview/examples/DisableLinuxClusterAzureMonitor.json b/specification/hdinsight/resource-manager/Microsoft.HDInsight/stable/2018-06-01-preview/examples/DisableLinuxClusterAzureMonitor.json new file mode 100644 index 000000000000..e719b8fe027d --- /dev/null +++ b/specification/hdinsight/resource-manager/Microsoft.HDInsight/stable/2018-06-01-preview/examples/DisableLinuxClusterAzureMonitor.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "clusterName": "cluster1", + "resourceGroupName": "rg1", + "api-version": "2018-06-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/hdinsight/resource-manager/Microsoft.HDInsight/stable/2018-06-01-preview/examples/EnableLinuxClusterAzureMonitor.json b/specification/hdinsight/resource-manager/Microsoft.HDInsight/stable/2018-06-01-preview/examples/EnableLinuxClusterAzureMonitor.json new file mode 100644 index 000000000000..a4fc7c30865c --- /dev/null +++ b/specification/hdinsight/resource-manager/Microsoft.HDInsight/stable/2018-06-01-preview/examples/EnableLinuxClusterAzureMonitor.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "clusterName": "cluster1", + "resourceGroupName": "rg1", + "api-version": "2018-06-01-preview", + "subscriptionId": "subid", + "parameters": { + "workspaceId": "a2090ead-8c9f-4fba-b70e-533e3e003163", + "primaryKey": "**********" + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/hdinsight/resource-manager/Microsoft.HDInsight/stable/2018-06-01-preview/examples/GetLinuxClusterAzureMonitorStatus.json b/specification/hdinsight/resource-manager/Microsoft.HDInsight/stable/2018-06-01-preview/examples/GetLinuxClusterAzureMonitorStatus.json new file mode 100644 index 000000000000..27bc13e2cf3b --- /dev/null +++ b/specification/hdinsight/resource-manager/Microsoft.HDInsight/stable/2018-06-01-preview/examples/GetLinuxClusterAzureMonitorStatus.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "clusterName": "cluster1", + "resourceGroupName": "rg1", + "api-version": "2018-06-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "clusterMonitoringEnabled": true, + "workspaceId": "id" + } + } + } +} diff --git a/specification/hdinsight/resource-manager/Microsoft.HDInsight/stable/2018-06-01-preview/extensions.json b/specification/hdinsight/resource-manager/Microsoft.HDInsight/stable/2018-06-01-preview/extensions.json index fed4929f0df6..928e95012a36 100644 --- a/specification/hdinsight/resource-manager/Microsoft.HDInsight/stable/2018-06-01-preview/extensions.json +++ b/specification/hdinsight/resource-manager/Microsoft.HDInsight/stable/2018-06-01-preview/extensions.json @@ -176,6 +176,148 @@ } } }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HDInsight/clusters/{clusterName}/extensions/azureMonitor": { + "put": { + "tags": [ + "Extensions" + ], + "description": "Enables the Azure Monitor on the HDInsight cluster.", + "x-ms-examples": { + "Enable cluster monitoring": { + "$ref": "./examples/EnableLinuxClusterAzureMonitor.json" + } + }, + "operationId": "Extensions_EnableAzureMonitor", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AzureMonitorRequest" + }, + "description": "The Log Analytics workspace parameters." + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./operations.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Ok response definition." + }, + "202": { + "description": "Accepted response definition." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "Extensions" + ], + "description": "Gets the status of Azure Monitor on the HDInsight cluster.", + "x-ms-examples": { + "Enable cluster monitoring": { + "$ref": "./examples/GetLinuxClusterAzureMonitorStatus.json" + } + }, + "operationId": "Extensions_GetAzureMonitorStatus", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./operations.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/AzureMonitorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Extensions" + ], + "description": "Disables the Azure Monitor on the HDInsight cluster.", + "x-ms-examples": { + "Enable cluster monitoring": { + "$ref": "./examples/DisableLinuxClusterAzureMonitor.json" + } + }, + "operationId": "Extensions_DisableAzureMonitor", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./operations.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Ok response definition." + }, + "202": { + "description": "OK response definition." + }, + "204": { + "description": "No Content response definition." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HDInsight/clusters/{clusterName}/extensions/{extensionName}": { "put": { "tags": [ @@ -415,6 +557,72 @@ "type": "string" } } + }, + "AzureMonitorRequest": { + "description": "The azure monitor parameters.", + "properties": { + "workspaceId": { + "description": "The Log Analytics workspace ID.", + "type": "string" + }, + "primaryKey": { + "description": "The Log Analytics workspace key.", + "type": "string" + }, + "selectedConfigurations": { + "description": "The selected configurations.", + "$ref": "#/definitions/AzureMonitorSelectedConfigurations" + } + } + }, + "AzureMonitorResponse": { + "description": "The azure monitor status response.", + "properties": { + "clusterMonitoringEnabled": { + "description": "The status of the monitor on the HDInsight cluster.", + "type": "boolean" + }, + "workspaceId": { + "description": "The workspace ID of the monitor on the HDInsight cluster.", + "type": "string" + }, + "selectedConfigurations": { + "description": "The selected configurations.", + "$ref": "#/definitions/AzureMonitorSelectedConfigurations" + } + } + }, + "AzureMonitorSelectedConfigurations": { + "description": "The selected configurations for azure monitor.", + "properties": { + "configurationVersion": { + "description": "The configuration version.", + "type": "string" + }, + "globalConfigurations": { + "description": "The global configurations of selected configurations.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "tableList": { + "description": "The table list.", + "type": "array", + "items": { + "$ref": "#/definitions/AzureMonitorTableConfiguration" + } + } + } + }, + "AzureMonitorTableConfiguration": { + "description": "The table configuration for the Log Analytics integration.", + "properties": { + "name": { + "description": "The name.", + "type": "string" + } + } } }, "parameters": { diff --git a/specification/hdinsight/resource-manager/readme.azureresourceschema.md b/specification/hdinsight/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 839e8f057b54..000000000000 --- a/specification/hdinsight/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,50 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-hdinsight-2018-06-01-preview - - tag: schema-hdinsight-2015-03-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-hdinsight-2018-06-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-hdinsight-2018-06-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.HDInsight/stable/2018-06-01-preview/cluster.json - - Microsoft.HDInsight/stable/2018-06-01-preview/applications.json - - Microsoft.HDInsight/stable/2018-06-01-preview/locations.json - - Microsoft.HDInsight/stable/2018-06-01-preview/configurations.json - - Microsoft.HDInsight/stable/2018-06-01-preview/extensions.json - - Microsoft.HDInsight/stable/2018-06-01-preview/scriptActions.json - - Microsoft.HDInsight/stable/2018-06-01-preview/operations.json - - Microsoft.HDInsight/stable/2018-06-01-preview/virtualMachines.json - -``` - -### Tag: schema-hdinsight-2015-03-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-hdinsight-2015-03-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.HDInsight/preview/2015-03-01-preview/cluster.json - - Microsoft.HDInsight/preview/2015-03-01-preview/applications.json - - Microsoft.HDInsight/preview/2015-03-01-preview/locations.json - - Microsoft.HDInsight/preview/2015-03-01-preview/configurations.json - - Microsoft.HDInsight/preview/2015-03-01-preview/extensions.json - - Microsoft.HDInsight/preview/2015-03-01-preview/scriptActions.json - - Microsoft.HDInsight/preview/2015-03-01-preview/operations.json - - Microsoft.HDInsight/preview/2015-03-01-preview/virtualMachines.json - -``` diff --git a/specification/hdinsight/resource-manager/readme.go.md b/specification/hdinsight/resource-manager/readme.go.md index c0639958fa2e..c7a07c4c158e 100644 --- a/specification/hdinsight/resource-manager/readme.go.md +++ b/specification/hdinsight/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: hdinsight clear-output-folder: true ``` diff --git a/specification/hdinsight/resource-manager/readme.md b/specification/hdinsight/resource-manager/readme.md index fd6e7d69df5e..3be1fdceff6a 100644 --- a/specification/hdinsight/resource-manager/readme.md +++ b/specification/hdinsight/resource-manager/readme.md @@ -156,11 +156,10 @@ swagger-to-sdk: - repo: azure-sdk-for-go - repo: azure-sdk-for-java - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-js - repo: azure-sdk-for-node - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js hdinsight/resource-manager ``` ## Python @@ -237,7 +236,5 @@ generate-interface: true -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/hdinsight/resource-manager/readme.python.md b/specification/hdinsight/resource-manager/readme.python.md index 9cdf16de73ac..8c0e8e33a785 100644 --- a/specification/hdinsight/resource-manager/readme.python.md +++ b/specification/hdinsight/resource-manager/readme.python.md @@ -4,7 +4,7 @@ These settings apply only when `--python` is specified on the command line. Please also specify `--python-sdks-folder=`. Use `--python-mode=update` if you already have a setup.py and just want to update the code itself. -``` yaml $(python) +``` yaml $(python) && !$(track2) python-mode: create python: azure-arm: true @@ -15,13 +15,33 @@ python: package-version: 0.1.0 clear-output-folder: true ``` -``` yaml $(python) && $(python-mode) == 'update' +``` yaml $(python) && $(track2) +python-mode: create +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +namespace: azure.mgmt.hdinsight +package-name: azure-mgmt-hdinsight +package-version: 1.0.0b1 +clear-output-folder: true +modelerfour: + lenient-model-deduplication: true +``` + +``` yaml $(python) && $(python-mode) == 'update' && !$(track2) python: no-namespace-folders: true output-folder: $(python-sdks-folder)/hdinsight/azure-mgmt-hdinsight/azure/mgmt/hdinsight ``` -``` yaml $(python) && $(python-mode) == 'create' +``` yaml $(python) && $(python-mode) == 'create' && !$(track2) python: basic-setup-py: true output-folder: $(python-sdks-folder)/hdinsight/azure-mgmt-hdinsight ``` +``` yaml $(python) && $(python-mode) == 'update' && $(track2) +no-namespace-folders: true +output-folder: $(python-sdks-folder)/hdinsight/azure-mgmt-hdinsight/azure/mgmt/hdinsight +``` +``` yaml $(python) && $(python-mode) == 'create' && $(track2) +basic-setup-py: true +output-folder: $(python-sdks-folder)/hdinsight/azure-mgmt-hdinsight +``` diff --git a/specification/healthbot/resource-manager/readme.azureresourceschema.md b/specification/healthbot/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 0b3e70613c0d..000000000000 --- a/specification/healthbot/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,60 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-healthbot-2020-12-08-preview - - tag: schema-healthbot-2020-12-08 - - tag: schema-healthbot-2020-10-20-preview - - tag: schema-healthbot-2020-10-20 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-healthbot-2020-12-08-preview and azureresourceschema - -``` yaml $(tag) == 'schema-healthbot-2020-12-08-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.HealthBot/preview/2020-12-08-preview/healthbot.json - -``` - -### Tag: schema-healthbot-2020-12-08 and azureresourceschema - -``` yaml $(tag) == 'schema-healthbot-2020-12-08' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.HealthBot/stable/2020-12-08/healthbot.json - -``` - -### Tag: schema-healthbot-2020-10-20-preview and azureresourceschema - -``` yaml $(tag) == 'schema-healthbot-2020-10-20-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.HealthBot/preview/2020-10-20-preview/healthbot.json - -``` - -### Tag: schema-healthbot-2020-10-20 and azureresourceschema - -``` yaml $(tag) == 'schema-healthbot-2020-10-20' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.HealthBot/stable/2020-10-20/healthbot.json - -``` diff --git a/specification/healthbot/resource-manager/readme.csharp.md b/specification/healthbot/resource-manager/readme.csharp.md index babfcdff06b1..ed8b3273314d 100644 --- a/specification/healthbot/resource-manager/readme.csharp.md +++ b/specification/healthbot/resource-manager/readme.csharp.md @@ -11,5 +11,5 @@ csharp: clear-output-folder: true client-side-validation: false namespace: Microsoft.Azure.Management.Healthbot - output-folder: $(csharp-sdks-folder)/healthbot/management/Microsoft.Azure.Management.Healthbot/src/Generated + output-folder: $(csharp-sdks-folder)/healthbot/Microsoft.Azure.Management.Healthbot/src/Generated ``` diff --git a/specification/healthbot/resource-manager/readme.go.md b/specification/healthbot/resource-manager/readme.go.md index 69c8db2aabba..3a70a7bf310a 100644 --- a/specification/healthbot/resource-manager/readme.go.md +++ b/specification/healthbot/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION clear-output-folder: true namespace: healthbot ``` diff --git a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2021-01-11/healthcare-apis.json b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2021-01-11/healthcare-apis.json index 2bb6eeef2319..28ac6e6b6870 100644 --- a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2021-01-11/healthcare-apis.json +++ b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2021-01-11/healthcare-apis.json @@ -771,10 +771,6 @@ "$ref": "#/definitions/ServiceExportConfigurationInfo", "description": "The settings for the export operation of the service instance." }, - "acrConfiguration": { - "$ref": "#/definitions/ServiceAcrConfigurationInfo", - "description": "The azure container registry settings used for convert data operation of the service instance." - }, "privateEndpointConnections": { "description": "The list of private endpoint connections that are set up for this resource.", "type": "array", @@ -793,6 +789,10 @@ "name": "PublicNetworkAccess", "modelAsString": true } + }, + "acrConfiguration": { + "$ref": "#/definitions/ServiceAcrConfigurationInfo", + "description": "The azure container registry settings used for convert data operation of the service instance." } } }, diff --git a/specification/healthcareapis/resource-manager/readme.azureresourceschema.md b/specification/healthcareapis/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 027d7eea4015..000000000000 --- a/specification/healthcareapis/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,72 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-healthcareapis-2021-01-11 - - tag: schema-healthcareapis-2020-03-30 - - tag: schema-healthcareapis-2020-03-15 - - tag: schema-healthcareapis-2019-09-16 - - tag: schema-healthcareapis-2018-08-20-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-healthcareapis-2021-01-11 and azureresourceschema - -``` yaml $(tag) == 'schema-healthcareapis-2021-01-11' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.HealthcareApis/stable/2021-01-11/healthcare-apis.json - -``` - -### Tag: schema-healthcareapis-2020-03-30 and azureresourceschema - -``` yaml $(tag) == 'schema-healthcareapis-2020-03-30' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.HealthcareApis/stable/2020-03-30/healthcare-apis.json - -``` - -### Tag: schema-healthcareapis-2020-03-15 and azureresourceschema - -``` yaml $(tag) == 'schema-healthcareapis-2020-03-15' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.HealthcareApis/stable/2020-03-15/healthcare-apis.json - -``` - -### Tag: schema-healthcareapis-2019-09-16 and azureresourceschema - -``` yaml $(tag) == 'schema-healthcareapis-2019-09-16' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.HealthcareApis/stable/2019-09-16/healthcare-apis.json - -``` - -### Tag: schema-healthcareapis-2018-08-20-preview and azureresourceschema - -``` yaml $(tag) == 'schema-healthcareapis-2018-08-20-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.HealthcareApis/preview/2018-08-20-preview/healthcare-apis.json - -``` diff --git a/specification/healthcareapis/resource-manager/readme.go.md b/specification/healthcareapis/resource-manager/readme.go.md index b47d6f3e2d80..b96161aa7b6a 100644 --- a/specification/healthcareapis/resource-manager/readme.go.md +++ b/specification/healthcareapis/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: healthcareapis clear-output-folder: true ``` diff --git a/specification/healthcareapis/resource-manager/readme.md b/specification/healthcareapis/resource-manager/readme.md index 0b90637cd79e..a4385e2dff98 100644 --- a/specification/healthcareapis/resource-manager/readme.md +++ b/specification/healthcareapis/resource-manager/readme.md @@ -88,12 +88,11 @@ This is not used by Autorest itself. swagger-to-sdk: - repo: azure-sdk-for-net - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-java - repo: azure-sdk-for-go - repo: azure-sdk-for-js - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js healthcareapis/resource-manager ``` ## C# @@ -127,6 +126,4 @@ See configuration in [readme.go.md](./readme.go.md) See configuration in [readme.java.md](./readme.java.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/HybridCompute.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/HybridCompute.json new file mode 100644 index 000000000000..9e94ee5af6f0 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/HybridCompute.json @@ -0,0 +1,1119 @@ +{ + "swagger": "2.0", + "info": { + "title": "HybridComputeManagementClient", + "description": "The Hybrid Compute Management Client.", + "version": "2021-03-25-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.HybridCompute/machines/{machineName}": { + "put": { + "tags": [ + "machines" + ], + "operationId": "Machines_CreateOrUpdate", + "description": "The operation to create or update a hybrid machine resource identity in Azure.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "machineName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the hybrid machine." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Machine" + }, + "description": "Parameters supplied to the Create hybrid machine operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Machine" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or Update a Machine": { + "$ref": "./examples/Machines_CreateOrUpdate.json" + } + } + }, + "patch": { + "tags": [ + "machines" + ], + "operationId": "Machines_Update", + "description": "The operation to update a hybrid machine.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "machineName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the hybrid machine." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/MachineUpdate" + }, + "description": "Parameters supplied to the Update hybrid machine operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Machine" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Update a Machine": { + "$ref": "./examples/Machines_Update.json" + } + } + }, + "delete": { + "tags": [ + "machines" + ], + "operationId": "Machines_Delete", + "description": "The operation to remove a hybrid machine identity in Azure.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "machineName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the hybrid machine." + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete a Machine": { + "$ref": "./examples/Machines_Delete.json" + } + } + }, + "get": { + "tags": [ + "machines" + ], + "operationId": "Machines_Get", + "description": "Retrieves information about the model view or the instance view of a hybrid machine.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "machineName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the hybrid machine." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation.", + "enum": [ + "instanceView" + ], + "x-ms-enum": { + "name": "InstanceViewTypes", + "modelAsString": true + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Machine" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Machine": { + "$ref": "./examples/Machines_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines": { + "get": { + "tags": [ + "machines" + ], + "operationId": "Machines_ListByResourceGroup", + "description": "Lists all the hybrid machines in the specified resource group. Use the nextLink property in the response to get the next page of hybrid machines.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MachineListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List Machines by resource group": { + "$ref": "./examples/Machines_ListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.HybridCompute/machines": { + "get": { + "tags": [ + "machines" + ], + "operationId": "Machines_ListBySubscription", + "description": "Lists all the hybrid machines in the specified subscription. Use the nextLink property in the response to get the next page of hybrid machines.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MachineListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List Machines by resource group": { + "$ref": "./examples/Machines_ListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}/extensions/{extensionName}": { + "put": { + "tags": [ + "MachineExtensions" + ], + "operationId": "MachineExtensions_CreateOrUpdate", + "description": "The operation to create or update the extension.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "machineName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the machine where the extension should be created or updated." + }, + { + "name": "extensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the machine extension." + }, + { + "name": "extensionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/MachineExtension" + }, + "description": "Parameters supplied to the Create Machine Extension operation." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MachineExtension" + } + }, + "202": { + "description": "HTTP 202 (Accepted) if the operation was successfully started and will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or Update a Machine Extension": { + "$ref": "./examples/PUTExtension.json" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "MachineExtensions" + ], + "operationId": "MachineExtensions_Update", + "description": "The operation to create or update the extension.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "machineName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the machine where the extension should be created or updated." + }, + { + "name": "extensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the machine extension." + }, + { + "name": "extensionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/MachineExtensionUpdate" + }, + "description": "Parameters supplied to the Create Machine Extension operation." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MachineExtension" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or Update a Machine Extension": { + "$ref": "./examples/UpdateExtension.json" + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "MachineExtensions" + ], + "operationId": "MachineExtensions_Delete", + "description": "The operation to delete the extension.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "machineName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the machine where the extension should be deleted." + }, + { + "name": "extensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the machine extension." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete a Machine Extension": { + "$ref": "./examples/DELETEExtension.json" + } + } + }, + "get": { + "tags": [ + "MachineExtensions" + ], + "operationId": "MachineExtensions_Get", + "description": "The operation to get the extension.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "machineName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the machine containing the extension." + }, + { + "name": "extensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the machine extension." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MachineExtension" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "GET Machine Extension": { + "$ref": "./examples/GETExtension.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}/extensions": { + "get": { + "tags": [ + "MachineExtensions" + ], + "operationId": "MachineExtensions_List", + "description": "The operation to get all extensions of a non-Azure machine", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "machineName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the machine containing the extension." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MachineExtensionsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GET all Machine Extensions": { + "$ref": "./examples/LISTExtension.json" + } + } + } + }, + "/providers/Microsoft.HybridCompute/operations": { + "get": { + "tags": [ + "operations" + ], + "operationId": "Operations_List", + "description": "Gets a list of hybrid compute operations.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + } + }, + "definitions": { + "OperationListResult": { + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/OperationValue" + }, + "description": "The list of compute operations" + } + }, + "description": "The List Compute Operation operation response." + }, + "OperationValue": { + "properties": { + "origin": { + "type": "string", + "readOnly": true, + "description": "The origin of the compute operation." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the compute operation." + }, + "display": { + "$ref": "#/definitions/OperationValueDisplay", + "description": "Display properties" + } + }, + "description": "Describes the properties of a Compute Operation value." + }, + "OperationValueDisplay": { + "properties": { + "operation": { + "type": "string", + "readOnly": true, + "description": "The display name of the compute operation." + }, + "resource": { + "type": "string", + "readOnly": true, + "description": "The display name of the resource the operation applies to." + }, + "description": { + "type": "string", + "readOnly": true, + "description": "The description of the operation." + }, + "provider": { + "type": "string", + "readOnly": true, + "description": "The resource provider for the operation." + } + }, + "description": "Describes the properties of a Hybrid Compute Operation Value Display." + }, + "OSProfile": { + "readOnly": true, + "properties": { + "computerName": { + "type": "string", + "readOnly": true, + "description": "Specifies the host OS name of the hybrid machine." + } + }, + "description": "Specifies the operating system settings for the hybrid machine." + }, + "DetectedProperties": { + "readOnly": true, + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Detected properties from the machine." + }, + "MachineProperties": { + "properties": { + "locationData": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/locationData" + }, + "osProfile": { + "$ref": "#/definitions/OSProfile", + "description": "Specifies the operating system settings for the hybrid machine." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state, which only appears in the response." + }, + "status": { + "readOnly": true, + "type": "string", + "description": "The status of the hybrid machine agent.", + "enum": [ + "Connected", + "Disconnected", + "Error" + ], + "x-ms-enum": { + "name": "StatusTypes", + "modelAsString": true + } + }, + "lastStatusChange": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The time of the last status change." + }, + "errorDetails": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorDetail" + }, + "description": "Details about the error state." + }, + "agentVersion": { + "readOnly": true, + "type": "string", + "description": "The hybrid machine agent full version." + }, + "vmId": { + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ], + "description": "Specifies the hybrid machine unique ID." + }, + "displayName": { + "readOnly": true, + "type": "string", + "description": "Specifies the hybrid machine display name." + }, + "machineFqdn": { + "readOnly": true, + "type": "string", + "description": "Specifies the hybrid machine FQDN." + }, + "clientPublicKey": { + "type": "string", + "description": "Public Key that the client provides to be used during initial resource onboarding" + }, + "osName": { + "readOnly": true, + "type": "string", + "description": "The Operating System running on the hybrid machine." + }, + "osVersion": { + "readOnly": true, + "type": "string", + "description": "The version of Operating System running on the hybrid machine." + }, + "vmUuid": { + "readOnly": true, + "type": "string", + "description": "Specifies the Arc Machine's unique SMBIOS ID" + }, + "extensions": { + "type": "array", + "items": { + "$ref": "#/definitions/MachineExtensionInstanceView" + }, + "description": "Machine Extensions information" + }, + "osSku": { + "readOnly": true, + "type": "string", + "description": "Specifies the Operating System product SKU." + }, + "domainName": { + "readOnly": true, + "type": "string", + "description": "Specifies the Windows domain name." + }, + "adFqdn": { + "readOnly": true, + "type": "string", + "description": "Specifies the AD fully qualified display name." + }, + "dnsFqdn": { + "readOnly": true, + "type": "string", + "description": "Specifies the DNS fully qualified display name." + }, + "privateLinkScopeResourceId": { + "type": "string", + "description": "The resource id of the private link scope this machine is assigned to, if any." + }, + "parentClusterResourceId": { + "type": "string", + "description": "The resource id of the parent cluster (Azure HCI) this machine is assigned to, if any." + }, + "detectedProperties": { + "$ref": "#/definitions/DetectedProperties", + "description": "Detected properties from the machine." + } + }, + "description": "Describes the properties of a hybrid machine." + }, + "MachineUpdateProperties": { + "properties": { + "locationData": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/locationData" + }, + "parentClusterResourceId": { + "type": "string", + "description": "The resource id of the parent cluster (Azure HCI) this machine is assigned to, if any." + }, + "privateLinkScopeResourceId": { + "type": "string", + "description": "The resource id of the private link scope this machine is assigned to, if any." + } + }, + "description": "Describes the ARM updatable properties of a hybrid machine." + }, + "Machine": { + "properties": { + "properties": { + "$ref": "#/definitions/MachineProperties", + "description": "Hybrid Compute Machine properties" + }, + "identity": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Identity" + }, + "systemData": { + "readOnly": true, + "description": "The system meta data relating to this resource.", + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/systemData" + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/TrackedResource" + } + ], + "description": "Describes a hybrid machine." + }, + "MachineUpdate": { + "properties": { + "identity": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Identity" + }, + "properties": { + "$ref": "#/definitions/MachineUpdateProperties", + "description": "Hybrid Compute Machine properties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ResourceUpdate" + } + ], + "description": "Describes a hybrid machine Update." + }, + "MachineListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Machine" + }, + "description": "The list of hybrid machines." + }, + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of Machines. Call ListNext() with this URI to fetch the next page of hybrid machines." + } + }, + "required": [ + "value" + ], + "description": "The List hybrid machine operation response." + }, + "ResourceUpdate": { + "description": "The Update Resource model definition.", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + } + }, + "MachineExtension": { + "properties": { + "properties": { + "$ref": "#/definitions/MachineExtensionProperties", + "description": "Describes Machine Extension Properties." + }, + "systemData": { + "readOnly": true, + "description": "The system meta data relating to this resource.", + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/systemData" + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/TrackedResource" + } + ], + "description": "Describes a Machine Extension." + }, + "MachineExtensionUpdate": { + "properties": { + "properties": { + "$ref": "#/definitions/MachineExtensionUpdateProperties", + "description": "Describes Machine Extension Update Properties." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ResourceUpdate" + } + ], + "description": "Describes a Machine Extension Update." + }, + "MachineExtensionProperties": { + "properties": { + "forceUpdateTag": { + "type": "string", + "description": "How the extension handler should be forced to update even if the extension configuration has not changed." + }, + "publisher": { + "type": "string", + "description": "The name of the extension handler publisher." + }, + "type": { + "type": "string", + "description": "Specifies the type of the extension; an example is \"CustomScriptExtension\"." + }, + "typeHandlerVersion": { + "type": "string", + "description": "Specifies the version of the script handler." + }, + "autoUpgradeMinorVersion": { + "type": "boolean", + "description": "Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true." + }, + "settings": { + "type": "object", + "description": "Json formatted public settings for the extension." + }, + "protectedSettings": { + "type": "object", + "description": "The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state, which only appears in the response." + }, + "instanceView": { + "$ref": "#/definitions/MachineExtensionInstanceView", + "description": "The machine extension instance view." + } + }, + "description": "Describes the properties of a Machine Extension." + }, + "MachineExtensionUpdateProperties": { + "properties": { + "forceUpdateTag": { + "type": "string", + "description": "How the extension handler should be forced to update even if the extension configuration has not changed." + }, + "publisher": { + "type": "string", + "description": "The name of the extension handler publisher." + }, + "type": { + "type": "string", + "description": "Specifies the type of the extension; an example is \"CustomScriptExtension\"." + }, + "typeHandlerVersion": { + "type": "string", + "description": "Specifies the version of the script handler." + }, + "autoUpgradeMinorVersion": { + "type": "boolean", + "description": "Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true." + }, + "settings": { + "type": "object", + "description": "Json formatted public settings for the extension." + }, + "protectedSettings": { + "type": "object", + "description": "The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all." + } + }, + "description": "Describes the properties of a Machine Extension." + }, + "MachineExtensionInstanceView": { + "properties": { + "name": { + "type": "string", + "description": "The machine extension name." + }, + "type": { + "type": "string", + "description": "Specifies the type of the extension; an example is \"CustomScriptExtension\"." + }, + "typeHandlerVersion": { + "type": "string", + "description": "Specifies the version of the script handler." + }, + "status": { + "properties": { + "code": { + "type": "string", + "description": "The status code." + }, + "level": { + "type": "string", + "description": "The level code.", + "enum": [ + "Info", + "Warning", + "Error" + ], + "x-ms-enum": { + "name": "StatusLevelTypes", + "modelAsString": true + } + }, + "displayStatus": { + "type": "string", + "description": "The short localizable label for the status." + }, + "message": { + "type": "string", + "description": "The detailed status message, including for alerts and error messages." + }, + "time": { + "type": "string", + "format": "date-time", + "description": "The time of the status." + } + }, + "description": "Instance view status." + } + }, + "description": "Describes the Machine Extension Instance View." + }, + "MachineExtensionsListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/MachineExtension" + }, + "description": "The list of extensions" + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of machine extensions. Call ListNext() with this to fetch the next page of extensions." + } + }, + "description": "Describes the Machine Extensions List Result." + } + }, + "parameters": {} +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/DELETEExtension.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/DELETEExtension.json new file mode 100644 index 000000000000..51da57de3f26 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/DELETEExtension.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "machineName": "myMachine", + "extensionName": "MMA", + "api-version": "2021-03-25-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/GETExtension.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/GETExtension.json new file mode 100644 index 000000000000..ee9b7b7c76c1 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/GETExtension.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "machineName": "myMachine", + "extensionName": "CustomScriptExtension", + "api-version": "2021-03-25-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/Machines/myMachine/Extensions/CustomScriptExtension", + "name": "CustomScriptExtension", + "type": "Microsoft.HybridCompute/machines/extensions", + "location": "eastus2euap", + "properties": { + "publisher": "Microsoft.Compute", + "type": "string", + "typeHandlerVersion": "1.10.3", + "autoUpgradeMinorVersion": false, + "settings": "@{commandToExecute=powershell.exe -c \"Get-Process | Where-Object { $_.CPU -gt 10000 }\"}", + "protectedSettings": {}, + "provisioningState": "Succeeded", + "instanceView": { + "name": "CustomScriptExtension", + "type": "CustomScriptExtension", + "typeHandlerVersion": "1.10.3", + "status": { + "code": "success", + "level": "Information", + "displayStatus": "Provisioning succeeded", + "message": "Finished executing command, StdOut: , StdErr:", + "time": "2019-08-08T20:42:10.999Z" + } + } + } + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/LISTExtension.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/LISTExtension.json new file mode 100644 index 000000000000..cfbc648b2fcc --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/LISTExtension.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "machineName": "myMachine", + "api-version": "2021-03-25-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/Machines/myMachine/Extensions/CustomScriptExtension", + "name": "CustomScriptExtension", + "location": "eastus2euap", + "type": "Microsoft.HybridCompute/machines/extensions", + "properties": { + "publisher": "Microsoft.Compute", + "type": "CustomScriptExtension", + "typeHandlerVersion": "1.10.3", + "autoUpgradeMinorVersion": false, + "settings": { + "commandToExecute": "powershell.exe -c \"Get-Process | Where-Object { $_.CPU -gt 10000 }\"" + }, + "provisioningState": "Succeeded", + "instanceView": { + "name": "CustomScriptExtension", + "type": "CustomScriptExtension", + "typeHandlerVersion": "1.10.3", + "status": { + "code": "success", + "level": "Information", + "displayStatus": "Provisioning succeeded", + "message": "formattedMessage: Finished executing command, StdOut: , StdErr: ", + "time": "2020-08-13T17:18:57.405Z" + } + } + } + }, + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/Machines/myMachine/Extensions/winosupdateextension", + "name": "winosupdateextension", + "location": "eastus2euap", + "type": "Microsoft.HybridCompute/machines/extensions", + "properties": { + "publisher": "microsoft.softwareupdatemanagement.test", + "type": "windowsosupdateextension", + "typeHandlerVersion": "1.0.0.0", + "autoUpgradeMinorVersion": false, + "settings": {}, + "provisioningState": "Creating", + "instanceView": { + "name": "winosupdateextension", + "type": "windowsosupdateextension", + "typeHandlerVersion": "1.0.0.0", + "status": {} + } + } + } + ] + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/Machines_CreateOrUpdate.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/Machines_CreateOrUpdate.json new file mode 100644 index 000000000000..58f293003de0 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/Machines_CreateOrUpdate.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "machineName": "myMachine", + "api-version": "2021-03-25-preview", + "parameters": { + "location": "eastus2euap", + "properties": { + "vmId": "b7a098cc-b0b8-46e8-a205-62f301a62a8f", + "locationData": { + "name": "Redmond" + }, + "clientPublicKey": "string", + "parentClusterResourceId": "{AzureStackHCIResourceId}", + "privateLinkScopeResourceId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName" + }, + "identity": { + "type": "SystemAssigned" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/machines/myMachine", + "name": "myMachine", + "location": "eastus2euap", + "tags": null, + "identity": { + "type": "SystemAssigned", + "principalId": "string", + "tenantId": "string" + }, + "type": "Microsoft.HybridCompute/machines", + "properties": { + "provisioningState": "Succeeded", + "agentVersion": null, + "status": null, + "lastStatusChange": null, + "errorDetails": null, + "displayName": null, + "machineFqdn": null, + "vmUuid": null, + "osSku": null, + "domainName": null, + "adFqdn": null, + "dnsFqdn": null, + "osName": null, + "osVersion": null, + "osProfile": { + "computerName": null + }, + "vmId": "b7a098cc-b0b8-46e8-a205-62f301a62a8f", + "locationData": { + "name": "Redmond", + "city": "redmond", + "district": null, + "countryOrRegion": "usa" + }, + "clientPublicKey": "string", + "parentClusterResourceId": "{AzureStackHCIResourceId}", + "detectedProperties": { + "cloudprovider": "N/A", + "manufacturer": "Microsoft Corporation", + "model": "Virtual Machine", + "mssqldiscovered": "false" + }, + "privateLinkScopeResourceId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName" + } + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/Machines_Delete.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/Machines_Delete.json new file mode 100644 index 000000000000..bc8366657266 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/Machines_Delete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "machineName": "myMachine", + "api-version": "2021-03-25-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/Machines_Get.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/Machines_Get.json new file mode 100644 index 000000000000..ef7793a1ae01 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/Machines_Get.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "machineName": "myMachine", + "api-version": "2021-03-25-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/machines/myMachine", + "name": "myMachine", + "location": "eastus2euap", + "tags": null, + "identity": { + "type": "SystemAssigned", + "principalId": "string", + "tenantId": "string" + }, + "type": "Microsoft.HybridCompute/machines", + "properties": { + "provisioningState": "Succeeded", + "agentVersion": null, + "status": null, + "lastStatusChange": null, + "errorDetails": null, + "displayName": null, + "machineFqdn": null, + "vmUuid": null, + "osSku": null, + "domainName": null, + "adFqdn": null, + "dnsFqdn": null, + "osName": null, + "osVersion": null, + "osProfile": { + "computerName": null + }, + "vmId": "b7a098cc-b0b8-46e8-a205-62f301a62a8f", + "locationData": { + "name": "Redmond", + "city": "redmond", + "district": null, + "countryOrRegion": "usa" + }, + "clientPublicKey": "string", + "parentClusterResourceId": "{AzureStackHCIResourceId}", + "detectedProperties": { + "cloudprovider": "N/A", + "manufacturer": "Microsoft Corporation", + "model": "Virtual Machine", + "mssqldiscovered": "false" + }, + "privateLinkScopeResourceId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName" + } + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/Machines_ListByResourceGroup.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/Machines_ListByResourceGroup.json new file mode 100644 index 000000000000..7e0c92f9dcac --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/Machines_ListByResourceGroup.json @@ -0,0 +1,99 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-25-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/machines/myMachine", + "name": "myMachine", + "location": "eastus2euap", + "tags": null, + "identity": { + "type": "SystemAssigned", + "principalId": "f7a068cc-b0b8-46e8-a203-22f301a62a8f", + "tenantId": "c4098cc-91b8-46c2-a205-d82ab1a62a8f" + }, + "type": "Microsoft.HybridCompute/machines", + "properties": { + "provisioningState": "Succeeded", + "agentVersion": null, + "status": null, + "lastStatusChange": null, + "errorDetails": null, + "displayName": null, + "machineFqdn": null, + "vmUuid": null, + "osSku": null, + "domainName": null, + "adFqdn": null, + "dnsFqdn": null, + "osName": null, + "osVersion": null, + "osProfile": { + "computerName": null + }, + "vmId": "b7a098cc-b0b8-46e8-a205-62f301a62a8f", + "locationData": { + "name": "Redmond" + }, + "clientPublicKey": "string", + "parentClusterResourceId": null, + "detectedProperties": { + "cloudprovider": "N/A", + "manufacturer": "Microsoft Corporation", + "model": "Virtual Machine", + "mssqldiscovered": "false" + }, + "privateLinkScopeResourceId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName" + } + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/machines/myMachine2", + "name": "myMachine2", + "location": "westus2", + "tags": null, + "identity": { + "type": "SystemAssigned", + "principalId": "e7a068cc-b0b8-46e8-a203-22f301a62a8f", + "tenantId": "c4098cc-91b8-46c2-a205-d82ab1a62a8f" + }, + "type": "Microsoft.HybridCompute/machines", + "properties": { + "provisioningState": "Succeeded", + "agentVersion": null, + "status": null, + "lastStatusChange": null, + "errorDetails": null, + "displayName": null, + "machineFqdn": null, + "osName": null, + "osVersion": null, + "osProfile": { + "computerName": null + }, + "vmId": "a4a098cc-b0b8-46e8-a205-62f301a62a8f", + "locationData": { + "name": "Redmond" + }, + "clientPublicKey": "string", + "parentClusterResourceId": "{AzureStackHCIResourceId}", + "detectedProperties": { + "cloudprovider": "N/A", + "manufacturer": "Microsoft Corporation", + "model": "Surfacebook", + "mssqldiscovered": "true" + }, + "privateLinkScopeResourceId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/Machines_ListBySubscription.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/Machines_ListBySubscription.json new file mode 100644 index 000000000000..37b8ae978ba7 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/Machines_ListBySubscription.json @@ -0,0 +1,97 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2021-03-25-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/machines/myMachine", + "name": "myMachine", + "location": "eastus2euap", + "tags": null, + "identity": { + "type": "SystemAssigned", + "principalId": "string", + "tenantId": "string" + }, + "type": "Microsoft.HybridCompute/machines", + "properties": { + "provisioningState": "Succeeded", + "agentVersion": null, + "status": null, + "lastStatusChange": null, + "errorDetails": null, + "displayName": null, + "machineFqdn": null, + "vmUuid": null, + "osSku": null, + "domainName": null, + "adFqdn": null, + "dnsFqdn": null, + "osName": null, + "osVersion": null, + "osProfile": { + "computerName": null + }, + "vmId": "b7a098cc-b0b8-46e8-a205-62f301a62a8f", + "locationData": { + "name": "Redmond" + }, + "clientPublicKey": "string", + "parentClusterResourceId": null, + "detectedProperties": { + "cloudprovider": "N/A", + "manufacturer": "Microsoft Corporation", + "model": "Virtual Machine", + "mssqldiscovered": "false" + }, + "privateLinkScopeResourceId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName" + } + }, + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup2/providers/Microsoft.HybridCompute/machines/myMachine2", + "name": "myMachine2", + "location": "westus2", + "tags": null, + "identity": { + "type": "SystemAssigned", + "principalId": "e7a068cc-b0b8-46e8-a203-22f301a62a8f", + "tenantId": "c4098cc-91b8-46c2-a205-d82ab1a62a8f" + }, + "type": "Microsoft.HybridCompute/machines", + "properties": { + "provisioningState": "Succeeded", + "agentVersion": null, + "status": null, + "lastStatusChange": null, + "errorDetails": null, + "displayName": null, + "machineFqdn": null, + "osName": null, + "osVersion": null, + "osProfile": { + "computerName": null + }, + "vmId": "a4a098cc-b0b8-46e8-a205-62f301a62a8f", + "locationData": { + "name": "Redmond" + }, + "clientPublicKey": "string", + "parentClusterResourceId": "{AzureStackHCIResourceId}", + "detectedProperties": { + "cloudprovider": "N/A", + "manufacturer": "Microsoft Corporation", + "model": "Surfacebook", + "mssqldiscovered": "true" + } + } + } + ], + "nextLink": "string" + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/Machines_Update.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/Machines_Update.json new file mode 100644 index 000000000000..8d30468e5784 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/Machines_Update.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "machineName": "myMachine", + "api-version": "2021-03-25-preview", + "location": "eastus2euap", + "parameters": { + "properties": { + "locationData": { + "name": "Redmond" + }, + "parentClusterResourceId": "{AzureStackHCIResourceId}", + "privateLinkScopeResourceId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName" + }, + "identity": { + "type": "SystemAssigned" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/machines/myMachine", + "name": "myMachine", + "location": "eastus2euap", + "tags": null, + "identity": { + "type": "SystemAssigned", + "principalId": "string", + "tenantId": "string" + }, + "type": "Microsoft.HybridCompute/machines", + "properties": { + "provisioningState": "Succeeded", + "agentVersion": null, + "status": null, + "lastStatusChange": null, + "errorDetails": null, + "displayName": null, + "machineFqdn": null, + "vmUuid": null, + "osSku": null, + "domainName": null, + "adFqdn": null, + "dnsFqdn": null, + "osName": null, + "osVersion": null, + "osProfile": { + "computerName": null + }, + "vmId": "b7a098cc-b0b8-46e8-a205-62f301a62a8f", + "locationData": { + "name": "Redmond" + }, + "clientPublicKey": "string", + "parentClusterResourceId": "{AzureStackHCIResourceId}", + "detectedProperties": null, + "privateLinkScopeResourceId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName" + } + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/PUTExtension.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/PUTExtension.json new file mode 100644 index 000000000000..c304e7df3e88 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/PUTExtension.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "machineName": "myMachine", + "extensionName": "CustomScriptExtension", + "api-version": "2021-03-25-preview", + "extensionParameters": { + "location": "eastus2euap", + "properties": { + "publisher": "Microsoft.Compute", + "typeHandlerVersion": "1.10", + "type": "CustomScriptExtension", + "settings": { + "commandToExecute": "powershell.exe -c \"Get-Process | Where-Object { $_.CPU -gt 10000 }\"" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/Machines/myMachine/Extensions/CustomScriptExtension", + "name": "CustomScriptExtension", + "type": "Microsoft.HybridCompute/machines/extensions", + "location": "eastus2euap", + "properties": { + "publisher": "Microsoft.Compute", + "type": "string", + "typeHandlerVersion": "1.10.3", + "autoUpgradeMinorVersion": false, + "settings": "@{commandToExecute=powershell.exe -c \"Get-Process | Where-Object { $_.CPU -gt 10000 }\"}", + "protectedSettings": {}, + "provisioningState": "Succeeded", + "instanceView": { + "name": "CustomScriptExtension", + "type": "CustomScriptExtension", + "typeHandlerVersion": "1.10.3", + "status": { + "code": "success", + "level": "Information", + "message": "Finished executing command, StdOut: , StdErr:", + "time": "2020-08-08T20:42:10.999Z" + } + } + } + } + }, + "202": {} + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/PrivateEndpointConnectionDelete.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/PrivateEndpointConnectionDelete.json new file mode 100644 index 000000000000..fcdee5cac609 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/PrivateEndpointConnectionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myResourceGroup", + "scopeName": "myPrivateLinkScope", + "privateEndpointConnectionName": "private-endpoint-connection-name", + "api-version": "2021-03-25-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/PrivateEndpointConnectionGet.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/PrivateEndpointConnectionGet.json new file mode 100644 index 000000000000..3edae030dbb6 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/PrivateEndpointConnectionGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myResourceGroup", + "scopeName": "myPrivateLinkScope", + "privateEndpointConnectionName": "private-endpoint-connection-name", + "api-version": "2021-03-25-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/myPrivateLinkScope/privateEndpointConnections/private-endpoint-connection-name", + "name": "private-endpoint-connection-name", + "type": "Microsoft.HybridCompute/privateLinkScopes/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/PrivateEndpointConnectionList.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/PrivateEndpointConnectionList.json new file mode 100644 index 000000000000..6213df8101b6 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/PrivateEndpointConnectionList.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myResourceGroup", + "scopeName": "myPrivateLinkScope", + "api-version": "2021-03-25-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/myPrivateLinkScope/privateEndpointConnections/private-endpoint-connection-name-2", + "name": "private-endpoint-connection-name", + "type": "Microsoft.HybridCompute/privateLinkScopes/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/myPrivateLinkScope/privateEndpointConnections/private-endpoint-connection-name-2", + "name": "private-endpoint-connection-name-2", + "type": "Microsoft.HybridCompute/privateLinkScopes/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name-2" + }, + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "Please approve my connection.", + "actionsRequired": "None" + } + } + } + ] + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/PrivateEndpointConnectionUpdate.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/PrivateEndpointConnectionUpdate.json new file mode 100644 index 000000000000..fcd9bc933a74 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/PrivateEndpointConnectionUpdate.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myResourceGroup", + "scopeName": "myPrivateLinkScope", + "privateEndpointConnectionName": "private-endpoint-connection-name", + "api-version": "2021-03-25-preview", + "parameters": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@contoso.com" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/myPrivateLinkScope/privateEndpointConnections/private-endpoint-connection-name", + "name": "private-endpoint-connection-name", + "type": "Microsoft.HybridCompute/privateLinkScopes/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@contoso.com", + "actionsRequired": "None" + } + } + } + }, + "202": {} + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/PrivateLinkScopePrivateLinkResourceGet.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/PrivateLinkScopePrivateLinkResourceGet.json new file mode 100644 index 000000000000..89887e28630d --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/PrivateLinkScopePrivateLinkResourceGet.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myResourceGroup", + "scopeName": "myPrivateLinkScope", + "api-version": "2021-03-25-preview", + "groupName": "hybridcompute" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/myPrivateLinkScope/privateLinkResources/hybridcompute", + "name": "hybridcompute", + "type": "Microsoft.HybridCompute/privateLinkScopes/privateLinkResources", + "properties": { + "groupId": "hybridcompute", + "requiredMembers": [ + "HybridCompute.Server", + "HybridCompute.K8sConfiguration", + "GuestConfig.DP" + ], + "requiredZoneNames": [ + "privatelink.his.arc.azure.com", + "privatelink.kubernetesconfiguration.azure.com", + "privatelink.Guestconfiguration.azure.com" + ] + } + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/PrivateLinkScopePrivateLinkResourceListGet.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/PrivateLinkScopePrivateLinkResourceListGet.json new file mode 100644 index 000000000000..f080f24d77e0 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/PrivateLinkScopePrivateLinkResourceListGet.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myResourceGroup", + "scopeName": "myPrivateLinkScope", + "api-version": "2021-03-25-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/myPrivateLinkScope/privateLinkResources/hybridcompute", + "name": "hybridcompute", + "type": "Microsoft.HybridCompute/privateLinkScopes/privateLinkResources", + "properties": { + "groupId": "hybridcompute", + "requiredMembers": [ + "HybridCompute.ServerDP", + "HybridCompute.K8sConfigurationDP", + "HybridCompute.GuestConfigDP" + ], + "requiredZoneNames": [ + "privatelink.his.arc.azure.com", + "privatelink.kubernetesconfiguration.azure.com", + "privatelink.Guestconfiguration.azure.com" + ] + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/PrivateLinkScopesCreate.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/PrivateLinkScopesCreate.json new file mode 100644 index 000000000000..1ef3f530ca40 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/PrivateLinkScopesCreate.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2021-03-25-preview", + "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4919", + "resourceGroupName": "my-resource-group", + "scopeName": "my-privatelinkscope", + "parameters": { + "location": "westus" + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.hybridcompute/privateLinkScopes/my-privatelinkscope", + "name": "my-privatelinkscope", + "type": "Microsoft.HybridCompute/privateLinkScopes", + "location": "westus", + "tags": {}, + "properties": { + "privateLinkScopeId": "e5dc51d3-92ed-4d7e-947a-775ea79b4919", + "provisioningState": "Succeeded", + "publicNetworkAccess": "Disabled" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.hybridcompute/privateLinkScopes/my-privatelinkscope", + "name": "my-privatelinkscope", + "type": "Microsoft.HybridCompute/privateLinkScopes", + "location": "westus", + "tags": {}, + "properties": { + "privateLinkScopeId": "e5dc51d3-92ed-4d7e-947a-775ea79b4919", + "provisioningState": "Succeeded", + "publicNetworkAccess": "Disabled" + } + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/PrivateLinkScopesDelete.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/PrivateLinkScopesDelete.json new file mode 100644 index 000000000000..f32e4e0eb5b5 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/PrivateLinkScopesDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-03-25-preview", + "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4919", + "resourceGroupName": "my-resource-group", + "scopeName": "my-privatelinkscope" + }, + "responses": { + "200": {}, + "204": {}, + "202": {} + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/PrivateLinkScopesGet.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/PrivateLinkScopesGet.json new file mode 100644 index 000000000000..6d2d369229c7 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/PrivateLinkScopesGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2021-03-25-preview", + "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4919", + "resourceGroupName": "my-resource-group", + "scopeName": "my-privatelinkscope" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.hybridcompute/privateLinkScopes/my-privatelinkscope", + "name": "my-privatelinkscope", + "type": "Microsoft.HybridCompute/privateLinkScopes", + "location": "westus", + "tags": {}, + "properties": { + "privateLinkScopeId": "f5dc51d3-92ed-4d7e-947a-775ea79b4919", + "provisioningState": "Succeeded", + "publicNetworkAccess": "Disabled" + } + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/PrivateLinkScopesGetValidation.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/PrivateLinkScopesGetValidation.json new file mode 100644 index 000000000000..32b90c12cf1c --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/PrivateLinkScopesGetValidation.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2021-03-25-preview", + "location": "wus2", + "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4919", + "privateLinkScopeId": "f5dc51d3-92ed-4d7e-947a-775ea79b4919" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.hybridcompute/privateLinkScopes/my-privatelinkscope", + "publicNetworkAccess": "Disabled", + "connectionDetails": [ + { + "id": "id", + "privateIpAddress": "ip", + "linkIdentifier": "linkId", + "groupId": "groupId", + "memberName": "memberName" + } + ] + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/PrivateLinkScopesGetValidationForMachine.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/PrivateLinkScopesGetValidationForMachine.json new file mode 100644 index 000000000000..37710efffb5c --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/PrivateLinkScopesGetValidationForMachine.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2021-03-25-preview", + "location": "wus2", + "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4919", + "resourceGroupName": "my-resource-group", + "machineName": "machineName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.hybridcompute/privateLinkScopes/my-privatelinkscope", + "publicNetworkAccess": "Disabled", + "connectionDetails": [ + { + "id": "id", + "privateIpAddress": "ip", + "linkIdentifier": "linkId", + "groupId": "groupId", + "memberName": "memberName" + } + ] + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/PrivateLinkScopesList.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/PrivateLinkScopesList.json new file mode 100644 index 000000000000..e535bba170e5 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/PrivateLinkScopesList.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2019-10-17-preview", + "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4919" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.hybridcompute/privateLinkScopes/my-privatelinkscope", + "name": "my-privatelinkscope", + "type": "Microsoft.HybridCompute/privateLinkScopes", + "location": "westus", + "tags": {}, + "properties": { + "privateLinkScopeId": "e5dc51d3-92ed-4d7e-947a-775ea79b4919", + "provisioningState": "Succeeded", + "publicNetworkAccess": "Disabled" + } + }, + { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.hybridcompute/privateLinkScopes/my-other-privatelinkscope", + "name": "my-other-privatelinkscope", + "type": "Microsoft.HybridCompute/privateLinkScopes", + "location": "westus", + "tags": {}, + "properties": { + "privateLinkScopeId": "f5dc51d3-92ed-4d7e-947a-775ea79b4919", + "provisioningState": "Succeeded", + "publicNetworkAccess": "Disabled" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/PrivateLinkScopesListByResourceGroup.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/PrivateLinkScopesListByResourceGroup.json new file mode 100644 index 000000000000..b8a03a8177ad --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/PrivateLinkScopesListByResourceGroup.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2021-03-25-preview", + "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4919", + "resourceGroupName": "my-resource-group" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.hybridcompute/privateLinkScopes/my-privatelinkscope", + "name": "my-privatelinkscope", + "type": "Microsoft.HybridCompute/privateLinkScopes", + "location": "westus", + "tags": {}, + "properties": { + "privateLinkScopeId": "f5dc51d3-92ed-4d7e-947a-775ea79b4919", + "provisioningState": "Succeeded", + "publicNetworkAccess": "Disabled" + } + }, + { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.hybridcompute/privateLinkScopes/my-other-privatelinkscope", + "name": "my-other-privatelinkscope", + "type": "Microsoft.HybridCompute/privateLinkScopes", + "location": "westus", + "tags": {}, + "properties": { + "privateLinkScopeId": "a5dc51d3-92ed-4d7e-947a-775ea79b4919", + "provisioningState": "Succeeded", + "publicNetworkAccess": "Disabled" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/PrivateLinkScopesUpdate.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/PrivateLinkScopesUpdate.json new file mode 100644 index 000000000000..9ce93775a8a2 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/PrivateLinkScopesUpdate.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2021-03-25-preview", + "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4919", + "resourceGroupName": "my-resource-group", + "scopeName": "my-privatelinkscope", + "parameters": { + "location": "westus", + "tags": { + "Tag1": "Value1" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.hybridCompute/privateLinkScopes/my-privatelinkscope", + "name": "my-privatelinkscope", + "type": "Microsoft.HybridCompute/privateLinkScopes", + "location": "westus", + "tags": { + "Tag1": "Value1" + }, + "properties": { + "privateLinkScopeId": "e5dc51d3-92ed-4d7e-947a-775ea79b4919", + "provisioningState": "Succeeded", + "publicNetworkAccess": "Disabled" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.hybridCompute/privateLinkScopes/my-privatelinkscope", + "name": "my-privatelinkscope", + "type": "Microsoft.HybridCompute/privateLinkScopes", + "location": "westus", + "tags": { + "Tag1": "Value1" + }, + "properties": { + "privateLinkScopeId": "e5dc51d3-92ed-4d7e-947a-775ea79b4919", + "provisioningState": "Succeeded", + "publicNetworkAccess": "Disabled" + } + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/PrivateLinkScopesUpdateTagsOnly.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/PrivateLinkScopesUpdateTagsOnly.json new file mode 100644 index 000000000000..852f22f89b0f --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/PrivateLinkScopesUpdateTagsOnly.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2021-03-25-preview", + "subscriptionId": "subid", + "resourceGroupName": "my-resource-group", + "scopeName": "my-privatelinkscope", + "PrivateLinkScopeTags": { + "tags": { + "Tag1": "Value1", + "Tag2": "Value2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.hybridcompute/privateLinkScopes/my-privatelinkscope", + "name": "my-privatelinkscope", + "type": "Microsoft.HybridCompute/privateLinkScopes", + "location": "westus", + "tags": { + "Tag1": "Value1", + "Tag2": "Value2" + }, + "properties": { + "privateLinkScopeId": "e5dc51d3-92ed-4d7e-947a-775ea79b4919", + "provisioningState": "Succeeded", + "publicNetworkAccess": "Disabled" + } + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/UpdateExtension.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/UpdateExtension.json new file mode 100644 index 000000000000..38139a054e38 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/examples/UpdateExtension.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "machineName": "myMachine", + "extensionName": "CustomScriptExtension", + "api-version": "2021-03-25-preview", + "extensionParameters": { + "properties": { + "publisher": "Microsoft.Compute", + "typeHandlerVersion": "1.10", + "type": "CustomScriptExtension", + "settings": { + "commandToExecute": "powershell.exe -c \"Get-Process | Where-Object { $_.CPU -lt 100 }\"" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/Machines/myMachine/Extensions/CustomScriptExtension", + "name": "CustomScriptExtension", + "type": "Microsoft.HybridCompute/machines/extensions", + "location": "eastus2euap", + "properties": { + "publisher": "Microsoft.Compute", + "type": "string", + "typeHandlerVersion": "1.10.3", + "autoUpgradeMinorVersion": false, + "settings": "@{commandToExecute=powershell.exe -c \"Get-Process | Where-Object { $_.CPU -lt 100 }\"}", + "protectedSettings": {}, + "provisioningState": "Succeeded", + "instanceView": { + "name": "CustomScriptExtension", + "type": "CustomScriptExtension", + "typeHandlerVersion": "1.10.3", + "status": { + "code": "success", + "level": "Information", + "message": "Finished executing command, StdOut: , StdErr:", + "time": "2020-01-08T20:42:10.999Z" + } + } + } + } + }, + "202": {} + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/privateLinkScopes.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/privateLinkScopes.json new file mode 100644 index 000000000000..3487181575ee --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-03-25-preview/privateLinkScopes.json @@ -0,0 +1,1050 @@ +{ + "swagger": "2.0", + "info": { + "title": "HybridComputeManagementClient", + "x-ms-code-generation-settings": { + "name": "HybridComputeManagementClient" + }, + "description": "Azure Arc( Servers and K8s Clusters) API reference for Private Link's Scopes management.", + "version": "2021-03-25-preview" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.HybridCompute/privateLinkScopes": { + "get": { + "description": "Gets a list of all Azure Arc PrivateLinkScopes within a subscription.", + "operationId": "PrivateLinkScopes_List", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A list containing 0 or more Azure Arc PrivateLinkScope definitions.", + "schema": { + "$ref": "#/definitions/HybridComputePrivateLinkScopeListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "PrivateLinkScopesList.json": { + "$ref": "./examples/PrivateLinkScopesList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/privateLinkScopes": { + "get": { + "description": "Gets a list of Azure Arc PrivateLinkScopes within a resource group.", + "operationId": "PrivateLinkScopes_ListByResourceGroup", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A list containing 0 or more Azure Arc PrivateLinkScope definitions.", + "schema": { + "$ref": "#/definitions/HybridComputePrivateLinkScopeListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "PrivateLinkScopeListByResourceGroup": { + "$ref": "./examples/PrivateLinkScopesListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/privateLinkScopes/{scopeName}": { + "delete": { + "description": "Deletes a Azure Arc PrivateLinkScope.", + "operationId": "PrivateLinkScopes_Delete", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + } + ], + "responses": { + "200": { + "description": "Successful request when deleting an Azure Arc PrivateLinkScope." + }, + "202": { + "description": "Accepted." + }, + "204": { + "description": "The specified PrivateLinkScope does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "PrivateLinkScopesDelete": { + "$ref": "./examples/PrivateLinkScopesDelete.json" + } + } + }, + "get": { + "description": "Returns a Azure Arc PrivateLinkScope.", + "operationId": "PrivateLinkScopes_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + } + ], + "responses": { + "200": { + "description": "Azure Arc PrivateLinkScope definition.", + "schema": { + "$ref": "#/definitions/HybridComputePrivateLinkScope" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "PrivateLinkScopeGet": { + "$ref": "./examples/PrivateLinkScopesGet.json" + } + } + }, + "put": { + "description": "Creates (or updates) a Azure Arc PrivateLinkScope. Note: You cannot specify a different value for InstrumentationKey nor AppId in the Put operation.", + "operationId": "PrivateLinkScopes_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + }, + { + "name": "parameters", + "description": "Properties that need to be specified to create or update a Azure Arc for Servers and Clusters PrivateLinkScope.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/HybridComputePrivateLinkScope" + } + } + ], + "responses": { + "200": { + "description": "Successful request when creating or updating a Azure Arc PrivateLinkScope. The updated PrivateLinkScope is returned.", + "schema": { + "$ref": "#/definitions/HybridComputePrivateLinkScope" + } + }, + "201": { + "description": "Successful request when creating or updating a Azure Arc PrivateLinkScope. The updated PrivateLinkScope was created and is returned.", + "schema": { + "$ref": "#/definitions/HybridComputePrivateLinkScope" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "PrivateLinkScopeCreate": { + "$ref": "./examples/PrivateLinkScopesCreate.json" + }, + "PrivateLinkScopeUpdate": { + "$ref": "./examples/PrivateLinkScopesUpdate.json" + } + } + }, + "patch": { + "description": "Updates an existing PrivateLinkScope's tags. To update other fields use the CreateOrUpdate method.", + "operationId": "PrivateLinkScopes_UpdateTags", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + }, + { + "name": "PrivateLinkScopeTags", + "description": "Updated tag information to set into the PrivateLinkScope instance.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TagsResource" + } + } + ], + "responses": { + "200": { + "description": "Updating the Azure Arc PrivateLinkScope's tags was successful. PrivateLinkScope tags are updated and returned with the rest of the PrivateLinkScope's object properties.", + "schema": { + "$ref": "#/definitions/HybridComputePrivateLinkScope" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "PrivateLinkScopeUpdateTagsOnly": { + "$ref": "./examples/PrivateLinkScopesUpdateTagsOnly.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/privateLinkScopes/{scopeName}/privateLinkResources": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "description": "Gets the private link resources that need to be created for a Azure Monitor PrivateLinkScope.", + "operationId": "PrivateLinkResources_ListByPrivateLinkScope", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private link resources.", + "schema": { + "$ref": "#/definitions/PrivateLinkResourceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Gets private endpoint connection.": { + "$ref": "./examples/PrivateLinkScopePrivateLinkResourceListGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/privateLinkScopes/{scopeName}/privateLinkResources/{groupName}": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "description": "Gets the private link resources that need to be created for a Azure Monitor PrivateLinkScope.", + "operationId": "PrivateLinkResources_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + }, + { + "$ref": "#/parameters/GroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved a specified private link resource.", + "schema": { + "$ref": "#/definitions/PrivateLinkResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Gets private endpoint connection.": { + "$ref": "./examples/PrivateLinkScopePrivateLinkResourceGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/privateLinkScopes/{scopeName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Gets a private endpoint connection.", + "operationId": "PrivateEndpointConnections_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved a specified private endpoint connection.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Gets private endpoint connection.": { + "$ref": "./examples/PrivateEndpointConnectionGet.json" + } + } + }, + "put": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Approve or reject a private endpoint connection with a given name.", + "operationId": "PrivateEndpointConnections_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + } + ], + "responses": { + "200": { + "description": "Successfully approved or rejected private endpoint connection.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Approve or reject a private endpoint connection with a given name.": { + "$ref": "./examples/PrivateEndpointConnectionUpdate.json" + } + } + }, + "delete": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Deletes a private endpoint connection with a given name.", + "operationId": "PrivateEndpointConnections_Delete", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Successfully deleted private endpoint connection." + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "Private endpoint connection does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Deletes a private endpoint connection with a given name.": { + "$ref": "./examples/PrivateEndpointConnectionDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/privateLinkScopes/{scopeName}/privateEndpointConnections": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Gets all private endpoint connections on a private link scope.", + "operationId": "PrivateEndpointConnections_ListByPrivateLinkScope", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private endpoint connections.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets list of private endpoint connections on a private link scope.": { + "$ref": "./examples/PrivateEndpointConnectionList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.HybridCompute/locations/{location}/privateLinkScopes/{privateLinkScopeId}": { + "get": { + "description": "Returns a Azure Arc PrivateLinkScope's validation details.", + "operationId": "PrivateLinkScopes_GetValidationDetails", + "parameters": [ + { + "$ref": "#/parameters/LocationParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeId" + } + ], + "responses": { + "200": { + "description": "Azure Arc PrivateLinkScope validation details definition.", + "schema": { + "$ref": "#/definitions/PrivateLinkScopeValidationDetails" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "PrivateLinkScopeGet": { + "$ref": "./examples/PrivateLinkScopesGetValidation.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}/privateLinkScopes/current": { + "get": { + "description": "Returns a Azure Arc PrivateLinkScope's validation details for a given machine.", + "operationId": "PrivateLinkScopes_GetValidationDetailsForMachine", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/MachineNameParameter" + } + ], + "responses": { + "200": { + "description": "Azure Arc PrivateLinkScope validation details definition.", + "schema": { + "$ref": "#/definitions/PrivateLinkScopeValidationDetails" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "PrivateLinkScopeGet": { + "$ref": "./examples/PrivateLinkScopesGetValidationForMachine.json" + } + } + } + } + }, + "definitions": { + "PrivateLinkScopesResource": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "Azure resource Id" + }, + "name": { + "type": "string", + "description": "Azure resource name", + "readOnly": true + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Azure resource type" + }, + "location": { + "type": "string", + "description": "Resource location", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "tags": { + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "required": [ + "location" + ], + "x-ms-azure-resource": true, + "description": "An azure resource object" + }, + "TagsResource": { + "properties": { + "tags": { + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "description": "A container holding only the Tags for a resource, allowing the user to update the tags on a PrivateLinkScope instance." + }, + "HybridComputePrivateLinkScope": { + "properties": { + "properties": { + "description": "Properties that define a Azure Arc PrivateLinkScope resource.", + "$ref": "#/definitions/HybridComputePrivateLinkScopeProperties" + }, + "systemData": { + "readOnly": true, + "description": "The system meta data relating to this resource.", + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/systemData" + } + }, + "allOf": [ + { + "$ref": "#/definitions/PrivateLinkScopesResource" + } + ], + "description": "An Azure Arc PrivateLinkScope definition." + }, + "PrivateLinkScopeValidationDetails": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "Azure resource Id" + }, + "publicNetworkAccess": { + "description": "Indicates whether machines associated with the private link scope can also use public Azure Arc service endpoints.", + "$ref": "#/definitions/PublicNetworkAccessType" + }, + "connectionDetails": { + "type": "array", + "description": "List of Private Endpoint Connection details.", + "items": { + "$ref": "#/definitions/ConnectionDetail" + } + } + } + }, + "ConnectionDetail": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "Azure resource Id" + }, + "privateIpAddress": { + "type": "string", + "readOnly": true, + "description": "The private endpoint connection private ip address" + }, + "linkIdentifier": { + "type": "string", + "readOnly": true, + "description": "The private endpoint connection link identifier" + }, + "groupId": { + "type": "string", + "readOnly": true, + "description": "The private endpoint connection group id" + }, + "memberName": { + "type": "string", + "readOnly": true, + "description": "The private endpoint connection member name" + } + } + }, + "HybridComputePrivateLinkScopeProperties": { + "description": "Properties that define a Azure Arc PrivateLinkScope resource.", + "properties": { + "publicNetworkAccess": { + "description": "Indicates whether machines associated with the private link scope can also use public Azure Arc service endpoints.", + "$ref": "#/definitions/PublicNetworkAccessType" + }, + "provisioningState": { + "type": "string", + "description": "Current state of this PrivateLinkScope: whether or not is has been provisioned within the resource group it is defined. Users cannot change this value but are able to read from it. Values will include Provisioning ,Succeeded, Canceled and Failed.", + "readOnly": true + }, + "privateLinkScopeId": { + "readOnly": true, + "description": "The Guid id of the private link scope.", + "type": "string" + } + } + }, + "HybridComputePrivateLinkScopeListResult": { + "description": "Describes the list of Azure Arc PrivateLinkScope resources.", + "required": [ + "value" + ], + "properties": { + "value": { + "type": "array", + "description": "List of Azure Arc PrivateLinkScope definitions.", + "items": { + "$ref": "#/definitions/HybridComputePrivateLinkScope" + } + }, + "nextLink": { + "type": "string", + "description": "The URI to get the next set of Azure Arc PrivateLinkScope definitions if too many PrivateLinkScopes where returned in the result set." + } + } + }, + "PrivateLinkResourceListResult": { + "description": "A list of private link resources", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "PrivateLinkResource": { + "description": "A private link resource", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "Resource properties." + }, + "systemData": { + "readOnly": true, + "description": "The system meta data relating to this resource.", + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/systemData" + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ] + }, + "PrivateLinkResourceProperties": { + "description": "Properties of a private link resource.", + "type": "object", + "properties": { + "groupId": { + "description": "The private link resource group id.", + "type": "string", + "readOnly": true + }, + "requiredMembers": { + "description": "The private link resource required member names.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "requiredZoneNames": { + "description": "Required DNS zone names of the the private link resource.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + } + } + }, + "PrivateEndpointConnectionProperties": { + "description": "Properties of a private endpoint connection.", + "type": "object", + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpointProperty", + "description": "Private endpoint which the connection belongs to." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionStateProperty", + "description": "Connection state of the private endpoint connection." + }, + "provisioningState": { + "description": "State of the private endpoint connection.", + "type": "string", + "readOnly": true + } + } + }, + "PrivateEndpointProperty": { + "description": "Private endpoint which the connection belongs to.", + "type": "object", + "properties": { + "id": { + "description": "Resource id of the private endpoint.", + "type": "string" + } + } + }, + "PrivateLinkServiceConnectionStateProperty": { + "description": "State of the private endpoint connection.", + "type": "object", + "required": [ + "status", + "description" + ], + "properties": { + "status": { + "description": "The private link service connection status.", + "type": "string" + }, + "description": { + "description": "The private link service connection description.", + "type": "string" + }, + "actionsRequired": { + "description": "The actions required for private link service connection.", + "type": "string", + "readOnly": true + } + } + }, + "PrivateEndpointConnection": { + "description": "A private endpoint connection", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "description": "Resource properties." + }, + "systemData": { + "readOnly": true, + "description": "The system meta data relating to this resource.", + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/systemData" + } + } + }, + "PrivateEndpointConnectionListResult": { + "description": "A list of private endpoint connections.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "PublicNetworkAccessType": { + "type": "string", + "description": "The network access policy to determine if Azure Arc agents can use public Azure Arc service endpoints. Defaults to disabled (access to Azure Arc services only via private link).", + "default": "Disabled", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "PublicNetworkAccessType", + "modelAsString": true, + "values": [ + { + "value": "Enabled", + "description": "Allows Azure Arc agents to communicate with Azure Arc services over both public (internet) and private endpoints." + }, + { + "value": "Disabled", + "description": "Does not allow Azure Arc agents to communicate with Azure Arc services over public (internet) endpoints. The agents must use the private link." + } + ] + } + } + }, + "parameters": { + "PrivateLinkScopeName": { + "name": "scopeName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Azure Arc PrivateLinkScope resource.", + "x-ms-parameter-location": "method" + }, + "PrivateLinkScopeId": { + "name": "privateLinkScopeId", + "in": "path", + "required": true, + "type": "string", + "description": "The id (Guid) of the Azure Arc PrivateLinkScope resource.", + "x-ms-parameter-location": "method" + }, + "GroupNameParameter": { + "name": "groupName", + "in": "path", + "description": "The name of the private link resource.", + "required": true, + "x-ms-parameter-location": "method", + "type": "string" + }, + "LocationParameter": { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "The location of the target resource.", + "minLength": 1 + }, + "MachineNameParameter": { + "name": "machineName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the target machine to get the private link scope validation details for.", + "minLength": 1, + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/HybridCompute.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/HybridCompute.json new file mode 100644 index 000000000000..e20683d91080 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/HybridCompute.json @@ -0,0 +1,1202 @@ +{ + "swagger": "2.0", + "info": { + "title": "HybridComputeManagementClient", + "description": "The Hybrid Compute Management Client.", + "version": "2021-04-22-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.HybridCompute/machines/{machineName}": { + "put": { + "tags": [ + "machines" + ], + "operationId": "Machines_CreateOrUpdate", + "description": "The operation to create or update a hybrid machine resource identity in Azure.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "machineName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the hybrid machine." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Machine" + }, + "description": "Parameters supplied to the Create hybrid machine operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Machine" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or Update a Machine": { + "$ref": "./examples/Machines_CreateOrUpdate.json" + } + } + }, + "patch": { + "tags": [ + "machines" + ], + "operationId": "Machines_Update", + "description": "The operation to update a hybrid machine.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "machineName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the hybrid machine." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/MachineUpdate" + }, + "description": "Parameters supplied to the Update hybrid machine operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Machine" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Update a Machine": { + "$ref": "./examples/Machines_Update.json" + } + } + }, + "delete": { + "tags": [ + "machines" + ], + "operationId": "Machines_Delete", + "description": "The operation to remove a hybrid machine identity in Azure.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "machineName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the hybrid machine." + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete a Machine": { + "$ref": "./examples/Machines_Delete.json" + } + } + }, + "get": { + "tags": [ + "machines" + ], + "operationId": "Machines_Get", + "description": "Retrieves information about the model view or the instance view of a hybrid machine.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "machineName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the hybrid machine." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation.", + "enum": [ + "instanceView" + ], + "x-ms-enum": { + "name": "InstanceViewTypes", + "modelAsString": true + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Machine" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Machine": { + "$ref": "./examples/Machines_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines": { + "get": { + "tags": [ + "machines" + ], + "operationId": "Machines_ListByResourceGroup", + "description": "Lists all the hybrid machines in the specified resource group. Use the nextLink property in the response to get the next page of hybrid machines.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MachineListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List Machines by resource group": { + "$ref": "./examples/Machines_ListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.HybridCompute/machines": { + "get": { + "tags": [ + "machines" + ], + "operationId": "Machines_ListBySubscription", + "description": "Lists all the hybrid machines in the specified subscription. Use the nextLink property in the response to get the next page of hybrid machines.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MachineListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List Machines by resource group": { + "$ref": "./examples/Machines_ListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}/extensions/{extensionName}": { + "put": { + "tags": [ + "MachineExtensions" + ], + "operationId": "MachineExtensions_CreateOrUpdate", + "description": "The operation to create or update the extension.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "machineName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the machine where the extension should be created or updated." + }, + { + "name": "extensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the machine extension." + }, + { + "name": "extensionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/MachineExtension" + }, + "description": "Parameters supplied to the Create Machine Extension operation." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MachineExtension" + } + }, + "202": { + "description": "HTTP 202 (Accepted) if the operation was successfully started and will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or Update a Machine Extension": { + "$ref": "./examples/PUTExtension.json" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "MachineExtensions" + ], + "operationId": "MachineExtensions_Update", + "description": "The operation to create or update the extension.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "machineName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the machine where the extension should be created or updated." + }, + { + "name": "extensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the machine extension." + }, + { + "name": "extensionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/MachineExtensionUpdate" + }, + "description": "Parameters supplied to the Create Machine Extension operation." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MachineExtension" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or Update a Machine Extension": { + "$ref": "./examples/UpdateExtension.json" + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "MachineExtensions" + ], + "operationId": "MachineExtensions_Delete", + "description": "The operation to delete the extension.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "machineName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the machine where the extension should be deleted." + }, + { + "name": "extensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the machine extension." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete a Machine Extension": { + "$ref": "./examples/DELETEExtension.json" + } + } + }, + "get": { + "tags": [ + "MachineExtensions" + ], + "operationId": "MachineExtensions_Get", + "description": "The operation to get the extension.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "machineName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the machine containing the extension." + }, + { + "name": "extensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the machine extension." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MachineExtension" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "GET Machine Extension": { + "$ref": "./examples/GETExtension.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}/extensions": { + "get": { + "tags": [ + "MachineExtensions" + ], + "operationId": "MachineExtensions_List", + "description": "The operation to get all extensions of a non-Azure machine", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "machineName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the machine containing the extension." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MachineExtensionsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GET all Machine Extensions": { + "$ref": "./examples/LISTExtension.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}/upgradeExtensions": { + "post": { + "tags": [ + "MachineExtensions Upgrade" + ], + "operationId": "UpgradeExtensions", + "description": "The operation to Upgrade Machine Extensions.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "machineName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the hybrid machine." + }, + { + "name": "extensionUpgradeParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/MachineExtensionUpgrade" + }, + "description": "Parameters supplied to the Upgrade Extensions operation." + } + ], + "responses": { + "202": { + "description": "HTTP 202 (Accepted) if the operation was successfully started and will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Upgrade Machine Extensions": { + "$ref": "./examples/Extensions_Upgrade.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/providers/Microsoft.HybridCompute/operations": { + "get": { + "tags": [ + "operations" + ], + "operationId": "Operations_List", + "description": "Gets a list of hybrid compute operations.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + } + }, + "definitions": { + "OperationListResult": { + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/OperationValue" + }, + "description": "The list of compute operations" + } + }, + "description": "The List Compute Operation operation response." + }, + "OperationValue": { + "properties": { + "origin": { + "type": "string", + "readOnly": true, + "description": "The origin of the compute operation." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the compute operation." + }, + "display": { + "$ref": "#/definitions/OperationValueDisplay", + "description": "Display properties" + } + }, + "description": "Describes the properties of a Compute Operation value." + }, + "OperationValueDisplay": { + "properties": { + "operation": { + "type": "string", + "readOnly": true, + "description": "The display name of the compute operation." + }, + "resource": { + "type": "string", + "readOnly": true, + "description": "The display name of the resource the operation applies to." + }, + "description": { + "type": "string", + "readOnly": true, + "description": "The description of the operation." + }, + "provider": { + "type": "string", + "readOnly": true, + "description": "The resource provider for the operation." + } + }, + "description": "Describes the properties of a Hybrid Compute Operation Value Display." + }, + "OSProfile": { + "readOnly": true, + "properties": { + "computerName": { + "type": "string", + "readOnly": true, + "description": "Specifies the host OS name of the hybrid machine." + } + }, + "description": "Specifies the operating system settings for the hybrid machine." + }, + "DetectedProperties": { + "readOnly": true, + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Detected properties from the machine." + }, + "MachineProperties": { + "properties": { + "locationData": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/locationData" + }, + "osProfile": { + "$ref": "#/definitions/OSProfile", + "description": "Specifies the operating system settings for the hybrid machine." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state, which only appears in the response." + }, + "status": { + "readOnly": true, + "type": "string", + "description": "The status of the hybrid machine agent.", + "enum": [ + "Connected", + "Disconnected", + "Error" + ], + "x-ms-enum": { + "name": "StatusTypes", + "modelAsString": true + } + }, + "lastStatusChange": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The time of the last status change." + }, + "errorDetails": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorDetail" + }, + "description": "Details about the error state." + }, + "agentVersion": { + "readOnly": true, + "type": "string", + "description": "The hybrid machine agent full version." + }, + "vmId": { + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ], + "description": "Specifies the hybrid machine unique ID." + }, + "displayName": { + "readOnly": true, + "type": "string", + "description": "Specifies the hybrid machine display name." + }, + "machineFqdn": { + "readOnly": true, + "type": "string", + "description": "Specifies the hybrid machine FQDN." + }, + "clientPublicKey": { + "type": "string", + "description": "Public Key that the client provides to be used during initial resource onboarding" + }, + "osName": { + "readOnly": true, + "type": "string", + "description": "The Operating System running on the hybrid machine." + }, + "osVersion": { + "readOnly": true, + "type": "string", + "description": "The version of Operating System running on the hybrid machine." + }, + "vmUuid": { + "readOnly": true, + "type": "string", + "description": "Specifies the Arc Machine's unique SMBIOS ID" + }, + "extensions": { + "type": "array", + "items": { + "$ref": "#/definitions/MachineExtensionInstanceView" + }, + "description": "Machine Extensions information" + }, + "osSku": { + "readOnly": true, + "type": "string", + "description": "Specifies the Operating System product SKU." + }, + "domainName": { + "readOnly": true, + "type": "string", + "description": "Specifies the Windows domain name." + }, + "adFqdn": { + "readOnly": true, + "type": "string", + "description": "Specifies the AD fully qualified display name." + }, + "dnsFqdn": { + "readOnly": true, + "type": "string", + "description": "Specifies the DNS fully qualified display name." + }, + "privateLinkScopeResourceId": { + "type": "string", + "description": "The resource id of the private link scope this machine is assigned to, if any." + }, + "parentClusterResourceId": { + "type": "string", + "description": "The resource id of the parent cluster (Azure HCI) this machine is assigned to, if any." + }, + "detectedProperties": { + "$ref": "#/definitions/DetectedProperties", + "description": "Detected properties from the machine." + } + }, + "description": "Describes the properties of a hybrid machine." + }, + "MachineUpdateProperties": { + "properties": { + "locationData": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/locationData" + }, + "parentClusterResourceId": { + "type": "string", + "description": "The resource id of the parent cluster (Azure HCI) this machine is assigned to, if any." + }, + "privateLinkScopeResourceId": { + "type": "string", + "description": "The resource id of the private link scope this machine is assigned to, if any." + } + }, + "description": "Describes the ARM updatable properties of a hybrid machine." + }, + "Machine": { + "properties": { + "properties": { + "$ref": "#/definitions/MachineProperties", + "description": "Hybrid Compute Machine properties" + }, + "identity": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Identity" + }, + "systemData": { + "readOnly": true, + "description": "The system meta data relating to this resource.", + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/systemData" + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/TrackedResource" + } + ], + "description": "Describes a hybrid machine." + }, + "MachineUpdate": { + "properties": { + "identity": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Identity" + }, + "properties": { + "$ref": "#/definitions/MachineUpdateProperties", + "description": "Hybrid Compute Machine properties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ResourceUpdate" + } + ], + "description": "Describes a hybrid machine Update." + }, + "MachineListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Machine" + }, + "description": "The list of hybrid machines." + }, + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of Machines. Call ListNext() with this URI to fetch the next page of hybrid machines." + } + }, + "required": [ + "value" + ], + "description": "The List hybrid machine operation response." + }, + "ResourceUpdate": { + "description": "The Update Resource model definition.", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + } + }, + "MachineExtension": { + "properties": { + "properties": { + "$ref": "#/definitions/MachineExtensionProperties", + "description": "Describes Machine Extension Properties." + }, + "systemData": { + "readOnly": true, + "description": "The system meta data relating to this resource.", + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/systemData" + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/TrackedResource" + } + ], + "description": "Describes a Machine Extension." + }, + "MachineExtensionUpdate": { + "properties": { + "properties": { + "$ref": "#/definitions/MachineExtensionUpdateProperties", + "description": "Describes Machine Extension Update Properties." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ResourceUpdate" + } + ], + "description": "Describes a Machine Extension Update." + }, + "MachineExtensionProperties": { + "properties": { + "forceUpdateTag": { + "type": "string", + "description": "How the extension handler should be forced to update even if the extension configuration has not changed." + }, + "publisher": { + "type": "string", + "description": "The name of the extension handler publisher." + }, + "type": { + "type": "string", + "description": "Specifies the type of the extension; an example is \"CustomScriptExtension\"." + }, + "typeHandlerVersion": { + "type": "string", + "description": "Specifies the version of the script handler." + }, + "autoUpgradeMinorVersion": { + "type": "boolean", + "description": "Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true." + }, + "settings": { + "type": "object", + "description": "Json formatted public settings for the extension." + }, + "protectedSettings": { + "type": "object", + "description": "The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state, which only appears in the response." + }, + "instanceView": { + "$ref": "#/definitions/MachineExtensionInstanceView", + "description": "The machine extension instance view." + } + }, + "description": "Describes the properties of a Machine Extension." + }, + "MachineExtensionUpdateProperties": { + "properties": { + "forceUpdateTag": { + "type": "string", + "description": "How the extension handler should be forced to update even if the extension configuration has not changed." + }, + "publisher": { + "type": "string", + "description": "The name of the extension handler publisher." + }, + "type": { + "type": "string", + "description": "Specifies the type of the extension; an example is \"CustomScriptExtension\"." + }, + "typeHandlerVersion": { + "type": "string", + "description": "Specifies the version of the script handler." + }, + "autoUpgradeMinorVersion": { + "type": "boolean", + "description": "Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true." + }, + "settings": { + "type": "object", + "description": "Json formatted public settings for the extension." + }, + "protectedSettings": { + "type": "object", + "description": "The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all." + } + }, + "description": "Describes the properties of a Machine Extension." + }, + "MachineExtensionInstanceView": { + "properties": { + "name": { + "type": "string", + "description": "The machine extension name." + }, + "type": { + "type": "string", + "description": "Specifies the type of the extension; an example is \"CustomScriptExtension\"." + }, + "typeHandlerVersion": { + "type": "string", + "description": "Specifies the version of the script handler." + }, + "status": { + "properties": { + "code": { + "type": "string", + "description": "The status code." + }, + "level": { + "type": "string", + "description": "The level code.", + "enum": [ + "Info", + "Warning", + "Error" + ], + "x-ms-enum": { + "name": "StatusLevelTypes", + "modelAsString": true + } + }, + "displayStatus": { + "type": "string", + "description": "The short localizable label for the status." + }, + "message": { + "type": "string", + "description": "The detailed status message, including for alerts and error messages." + }, + "time": { + "type": "string", + "format": "date-time", + "description": "The time of the status." + } + }, + "description": "Instance view status." + } + }, + "description": "Describes the Machine Extension Instance View." + }, + "MachineExtensionsListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/MachineExtension" + }, + "description": "The list of extensions" + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of machine extensions. Call ListNext() with this to fetch the next page of extensions." + } + }, + "description": "Describes the Machine Extensions List Result." + }, + "TargetVersion": { + "type": "string", + "description": "Extension Upgrade Target Version." + }, + "ExtensionTargetProperties": { + "properties": { + "targetVersion": { + "type": "object", + "$ref": "#/definitions/TargetVersion", + "description": "Properties for the specified Extension to Upgrade." + } + }, + "description": "Describes the Machine Extension Target Version Properties" + }, + "ExtensionTarget": { + "additionalProperties": { + "type": "object", + "$ref": "#/definitions/ExtensionTargetProperties" + }, + "description": "Describes the Machine Extension Target Properties" + }, + "MachineExtensionUpgrade": { + "properties": { + "extensionTargets": { + "$ref": "#/definitions/ExtensionTarget", + "description": "Describes the Extension Target Properties." + } + }, + "description": "Describes the Machine Extension Upgrade Properties" + } + }, + "parameters": {} +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/DELETEExtension.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/DELETEExtension.json new file mode 100644 index 000000000000..bb5f4615d981 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/DELETEExtension.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "machineName": "myMachine", + "extensionName": "MMA", + "api-version": "2021-04-22-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/Extensions_Upgrade.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/Extensions_Upgrade.json new file mode 100644 index 000000000000..5642e26a75dc --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/Extensions_Upgrade.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "machineName": "myMachine", + "api-version": "2021-04-22-preview", + "extensionUpgradeParameters": { + "extensionTargets": { + "Microsoft.Compute.CustomScriptExtension": { + "targetVersion": "1.10" + }, + "Microsoft.Azure.Monitoring": { + "targetVersion": "2.0" + } + } + } + }, + "responses": { + "202": {} + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/GETExtension.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/GETExtension.json new file mode 100644 index 000000000000..58ed9d06c25c --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/GETExtension.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "machineName": "myMachine", + "extensionName": "CustomScriptExtension", + "api-version": "2021-04-22-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/Machines/myMachine/Extensions/CustomScriptExtension", + "name": "CustomScriptExtension", + "type": "Microsoft.HybridCompute/machines/extensions", + "location": "eastus2euap", + "properties": { + "publisher": "Microsoft.Compute", + "type": "string", + "typeHandlerVersion": "1.10.3", + "autoUpgradeMinorVersion": false, + "settings": "@{commandToExecute=powershell.exe -c \"Get-Process | Where-Object { $_.CPU -gt 10000 }\"}", + "protectedSettings": {}, + "provisioningState": "Succeeded", + "instanceView": { + "name": "CustomScriptExtension", + "type": "CustomScriptExtension", + "typeHandlerVersion": "1.10.3", + "status": { + "code": "success", + "level": "Information", + "displayStatus": "Provisioning succeeded", + "message": "Finished executing command, StdOut: , StdErr:", + "time": "2019-08-08T20:42:10.999Z" + } + } + } + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/LISTExtension.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/LISTExtension.json new file mode 100644 index 000000000000..1fe2d7e6b249 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/LISTExtension.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "machineName": "myMachine", + "api-version": "2021-04-22-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/Machines/myMachine/Extensions/CustomScriptExtension", + "name": "CustomScriptExtension", + "location": "eastus2euap", + "type": "Microsoft.HybridCompute/machines/extensions", + "properties": { + "publisher": "Microsoft.Compute", + "type": "CustomScriptExtension", + "typeHandlerVersion": "1.10.3", + "autoUpgradeMinorVersion": false, + "settings": { + "commandToExecute": "powershell.exe -c \"Get-Process | Where-Object { $_.CPU -gt 10000 }\"" + }, + "provisioningState": "Succeeded", + "instanceView": { + "name": "CustomScriptExtension", + "type": "CustomScriptExtension", + "typeHandlerVersion": "1.10.3", + "status": { + "code": "success", + "level": "Information", + "displayStatus": "Provisioning succeeded", + "message": "formattedMessage: Finished executing command, StdOut: , StdErr: ", + "time": "2020-08-13T17:18:57.405Z" + } + } + } + }, + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/Machines/myMachine/Extensions/winosupdateextension", + "name": "winosupdateextension", + "location": "eastus2euap", + "type": "Microsoft.HybridCompute/machines/extensions", + "properties": { + "publisher": "microsoft.softwareupdatemanagement.test", + "type": "windowsosupdateextension", + "typeHandlerVersion": "1.0.0.0", + "autoUpgradeMinorVersion": false, + "settings": {}, + "provisioningState": "Creating", + "instanceView": { + "name": "winosupdateextension", + "type": "windowsosupdateextension", + "typeHandlerVersion": "1.0.0.0", + "status": {} + } + } + } + ] + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/Machines_CreateOrUpdate.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/Machines_CreateOrUpdate.json new file mode 100644 index 000000000000..fcbf43e4d14c --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/Machines_CreateOrUpdate.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "machineName": "myMachine", + "api-version": "2021-04-22-preview", + "parameters": { + "location": "eastus2euap", + "properties": { + "vmId": "b7a098cc-b0b8-46e8-a205-62f301a62a8f", + "locationData": { + "name": "Redmond" + }, + "clientPublicKey": "string", + "parentClusterResourceId": "{AzureStackHCIResourceId}", + "privateLinkScopeResourceId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName" + }, + "identity": { + "type": "SystemAssigned" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/machines/myMachine", + "name": "myMachine", + "location": "eastus2euap", + "tags": null, + "identity": { + "type": "SystemAssigned", + "principalId": "string", + "tenantId": "string" + }, + "type": "Microsoft.HybridCompute/machines", + "properties": { + "provisioningState": "Succeeded", + "agentVersion": null, + "status": null, + "lastStatusChange": null, + "errorDetails": null, + "displayName": null, + "machineFqdn": null, + "vmUuid": null, + "osSku": null, + "domainName": null, + "adFqdn": null, + "dnsFqdn": null, + "osName": null, + "osVersion": null, + "osProfile": { + "computerName": null + }, + "vmId": "b7a098cc-b0b8-46e8-a205-62f301a62a8f", + "locationData": { + "name": "Redmond", + "city": "redmond", + "district": null, + "countryOrRegion": "usa" + }, + "clientPublicKey": "string", + "parentClusterResourceId": "{AzureStackHCIResourceId}", + "detectedProperties": { + "cloudprovider": "N/A", + "manufacturer": "Microsoft Corporation", + "model": "Virtual Machine", + "mssqldiscovered": "false" + }, + "privateLinkScopeResourceId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName" + } + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/Machines_Delete.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/Machines_Delete.json new file mode 100644 index 000000000000..7fb26e28528c --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/Machines_Delete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "machineName": "myMachine", + "api-version": "2021-04-22-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/Machines_Get.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/Machines_Get.json new file mode 100644 index 000000000000..a6b71767b52a --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/Machines_Get.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "machineName": "myMachine", + "api-version": "2021-04-22-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/machines/myMachine", + "name": "myMachine", + "location": "eastus2euap", + "tags": null, + "identity": { + "type": "SystemAssigned", + "principalId": "string", + "tenantId": "string" + }, + "type": "Microsoft.HybridCompute/machines", + "properties": { + "provisioningState": "Succeeded", + "agentVersion": null, + "status": null, + "lastStatusChange": null, + "errorDetails": null, + "displayName": null, + "machineFqdn": null, + "vmUuid": null, + "osSku": null, + "domainName": null, + "adFqdn": null, + "dnsFqdn": null, + "osName": null, + "osVersion": null, + "osProfile": { + "computerName": null + }, + "vmId": "b7a098cc-b0b8-46e8-a205-62f301a62a8f", + "locationData": { + "name": "Redmond", + "city": "redmond", + "district": null, + "countryOrRegion": "usa" + }, + "clientPublicKey": "string", + "parentClusterResourceId": "{AzureStackHCIResourceId}", + "detectedProperties": { + "cloudprovider": "N/A", + "manufacturer": "Microsoft Corporation", + "model": "Virtual Machine", + "mssqldiscovered": "false" + }, + "privateLinkScopeResourceId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName" + } + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/Machines_ListByResourceGroup.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/Machines_ListByResourceGroup.json new file mode 100644 index 000000000000..4402fd71bc9f --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/Machines_ListByResourceGroup.json @@ -0,0 +1,99 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-04-22-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/machines/myMachine", + "name": "myMachine", + "location": "eastus2euap", + "tags": null, + "identity": { + "type": "SystemAssigned", + "principalId": "f7a068cc-b0b8-46e8-a203-22f301a62a8f", + "tenantId": "c4098cc-91b8-46c2-a205-d82ab1a62a8f" + }, + "type": "Microsoft.HybridCompute/machines", + "properties": { + "provisioningState": "Succeeded", + "agentVersion": null, + "status": null, + "lastStatusChange": null, + "errorDetails": null, + "displayName": null, + "machineFqdn": null, + "vmUuid": null, + "osSku": null, + "domainName": null, + "adFqdn": null, + "dnsFqdn": null, + "osName": null, + "osVersion": null, + "osProfile": { + "computerName": null + }, + "vmId": "b7a098cc-b0b8-46e8-a205-62f301a62a8f", + "locationData": { + "name": "Redmond" + }, + "clientPublicKey": "string", + "parentClusterResourceId": null, + "detectedProperties": { + "cloudprovider": "N/A", + "manufacturer": "Microsoft Corporation", + "model": "Virtual Machine", + "mssqldiscovered": "false" + }, + "privateLinkScopeResourceId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName" + } + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/machines/myMachine2", + "name": "myMachine2", + "location": "westus2", + "tags": null, + "identity": { + "type": "SystemAssigned", + "principalId": "e7a068cc-b0b8-46e8-a203-22f301a62a8f", + "tenantId": "c4098cc-91b8-46c2-a205-d82ab1a62a8f" + }, + "type": "Microsoft.HybridCompute/machines", + "properties": { + "provisioningState": "Succeeded", + "agentVersion": null, + "status": null, + "lastStatusChange": null, + "errorDetails": null, + "displayName": null, + "machineFqdn": null, + "osName": null, + "osVersion": null, + "osProfile": { + "computerName": null + }, + "vmId": "a4a098cc-b0b8-46e8-a205-62f301a62a8f", + "locationData": { + "name": "Redmond" + }, + "clientPublicKey": "string", + "parentClusterResourceId": "{AzureStackHCIResourceId}", + "detectedProperties": { + "cloudprovider": "N/A", + "manufacturer": "Microsoft Corporation", + "model": "Surfacebook", + "mssqldiscovered": "true" + }, + "privateLinkScopeResourceId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/Machines_ListBySubscription.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/Machines_ListBySubscription.json new file mode 100644 index 000000000000..f70bfcb420fc --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/Machines_ListBySubscription.json @@ -0,0 +1,97 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2021-04-22-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/machines/myMachine", + "name": "myMachine", + "location": "eastus2euap", + "tags": null, + "identity": { + "type": "SystemAssigned", + "principalId": "string", + "tenantId": "string" + }, + "type": "Microsoft.HybridCompute/machines", + "properties": { + "provisioningState": "Succeeded", + "agentVersion": null, + "status": null, + "lastStatusChange": null, + "errorDetails": null, + "displayName": null, + "machineFqdn": null, + "vmUuid": null, + "osSku": null, + "domainName": null, + "adFqdn": null, + "dnsFqdn": null, + "osName": null, + "osVersion": null, + "osProfile": { + "computerName": null + }, + "vmId": "b7a098cc-b0b8-46e8-a205-62f301a62a8f", + "locationData": { + "name": "Redmond" + }, + "clientPublicKey": "string", + "parentClusterResourceId": null, + "detectedProperties": { + "cloudprovider": "N/A", + "manufacturer": "Microsoft Corporation", + "model": "Virtual Machine", + "mssqldiscovered": "false" + }, + "privateLinkScopeResourceId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName" + } + }, + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup2/providers/Microsoft.HybridCompute/machines/myMachine2", + "name": "myMachine2", + "location": "westus2", + "tags": null, + "identity": { + "type": "SystemAssigned", + "principalId": "e7a068cc-b0b8-46e8-a203-22f301a62a8f", + "tenantId": "c4098cc-91b8-46c2-a205-d82ab1a62a8f" + }, + "type": "Microsoft.HybridCompute/machines", + "properties": { + "provisioningState": "Succeeded", + "agentVersion": null, + "status": null, + "lastStatusChange": null, + "errorDetails": null, + "displayName": null, + "machineFqdn": null, + "osName": null, + "osVersion": null, + "osProfile": { + "computerName": null + }, + "vmId": "a4a098cc-b0b8-46e8-a205-62f301a62a8f", + "locationData": { + "name": "Redmond" + }, + "clientPublicKey": "string", + "parentClusterResourceId": "{AzureStackHCIResourceId}", + "detectedProperties": { + "cloudprovider": "N/A", + "manufacturer": "Microsoft Corporation", + "model": "Surfacebook", + "mssqldiscovered": "true" + } + } + } + ], + "nextLink": "string" + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/Machines_Update.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/Machines_Update.json new file mode 100644 index 000000000000..6a42f4f574f2 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/Machines_Update.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "machineName": "myMachine", + "api-version": "2021-04-22-preview", + "location": "eastus2euap", + "parameters": { + "properties": { + "locationData": { + "name": "Redmond" + }, + "parentClusterResourceId": "{AzureStackHCIResourceId}", + "privateLinkScopeResourceId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName" + }, + "identity": { + "type": "SystemAssigned" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/machines/myMachine", + "name": "myMachine", + "location": "eastus2euap", + "tags": null, + "identity": { + "type": "SystemAssigned", + "principalId": "string", + "tenantId": "string" + }, + "type": "Microsoft.HybridCompute/machines", + "properties": { + "provisioningState": "Succeeded", + "agentVersion": null, + "status": null, + "lastStatusChange": null, + "errorDetails": null, + "displayName": null, + "machineFqdn": null, + "vmUuid": null, + "osSku": null, + "domainName": null, + "adFqdn": null, + "dnsFqdn": null, + "osName": null, + "osVersion": null, + "osProfile": { + "computerName": null + }, + "vmId": "b7a098cc-b0b8-46e8-a205-62f301a62a8f", + "locationData": { + "name": "Redmond" + }, + "clientPublicKey": "string", + "parentClusterResourceId": "{AzureStackHCIResourceId}", + "detectedProperties": null, + "privateLinkScopeResourceId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName" + } + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/PUTExtension.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/PUTExtension.json new file mode 100644 index 000000000000..5e1ad5bd82db --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/PUTExtension.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "machineName": "myMachine", + "extensionName": "CustomScriptExtension", + "api-version": "2021-04-22-preview", + "extensionParameters": { + "location": "eastus2euap", + "properties": { + "publisher": "Microsoft.Compute", + "typeHandlerVersion": "1.10", + "type": "CustomScriptExtension", + "settings": { + "commandToExecute": "powershell.exe -c \"Get-Process | Where-Object { $_.CPU -gt 10000 }\"" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/Machines/myMachine/Extensions/CustomScriptExtension", + "name": "CustomScriptExtension", + "type": "Microsoft.HybridCompute/machines/extensions", + "location": "eastus2euap", + "properties": { + "publisher": "Microsoft.Compute", + "type": "string", + "typeHandlerVersion": "1.10.3", + "autoUpgradeMinorVersion": false, + "settings": "@{commandToExecute=powershell.exe -c \"Get-Process | Where-Object { $_.CPU -gt 10000 }\"}", + "protectedSettings": {}, + "provisioningState": "Succeeded", + "instanceView": { + "name": "CustomScriptExtension", + "type": "CustomScriptExtension", + "typeHandlerVersion": "1.10.3", + "status": { + "code": "success", + "level": "Information", + "message": "Finished executing command, StdOut: , StdErr:", + "time": "2020-08-08T20:42:10.999Z" + } + } + } + } + }, + "202": {} + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/PrivateEndpointConnectionDelete.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/PrivateEndpointConnectionDelete.json new file mode 100644 index 000000000000..6323df75ce73 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/PrivateEndpointConnectionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myResourceGroup", + "scopeName": "myPrivateLinkScope", + "privateEndpointConnectionName": "private-endpoint-connection-name", + "api-version": "2021-04-22-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/PrivateEndpointConnectionGet.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/PrivateEndpointConnectionGet.json new file mode 100644 index 000000000000..b3d24f927444 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/PrivateEndpointConnectionGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myResourceGroup", + "scopeName": "myPrivateLinkScope", + "privateEndpointConnectionName": "private-endpoint-connection-name", + "api-version": "2021-04-22-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/myPrivateLinkScope/privateEndpointConnections/private-endpoint-connection-name", + "name": "private-endpoint-connection-name", + "type": "Microsoft.HybridCompute/privateLinkScopes/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/PrivateEndpointConnectionList.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/PrivateEndpointConnectionList.json new file mode 100644 index 000000000000..2a626a105d1d --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/PrivateEndpointConnectionList.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myResourceGroup", + "scopeName": "myPrivateLinkScope", + "api-version": "2021-04-22-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/myPrivateLinkScope/privateEndpointConnections/private-endpoint-connection-name-2", + "name": "private-endpoint-connection-name", + "type": "Microsoft.HybridCompute/privateLinkScopes/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/myPrivateLinkScope/privateEndpointConnections/private-endpoint-connection-name-2", + "name": "private-endpoint-connection-name-2", + "type": "Microsoft.HybridCompute/privateLinkScopes/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name-2" + }, + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "Please approve my connection.", + "actionsRequired": "None" + } + } + } + ] + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/PrivateEndpointConnectionUpdate.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/PrivateEndpointConnectionUpdate.json new file mode 100644 index 000000000000..af92be3cd743 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/PrivateEndpointConnectionUpdate.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myResourceGroup", + "scopeName": "myPrivateLinkScope", + "privateEndpointConnectionName": "private-endpoint-connection-name", + "api-version": "2021-04-22-preview", + "parameters": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@contoso.com" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/myPrivateLinkScope/privateEndpointConnections/private-endpoint-connection-name", + "name": "private-endpoint-connection-name", + "type": "Microsoft.HybridCompute/privateLinkScopes/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@contoso.com", + "actionsRequired": "None" + } + } + } + }, + "202": {} + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/PrivateLinkScopePrivateLinkResourceGet.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/PrivateLinkScopePrivateLinkResourceGet.json new file mode 100644 index 000000000000..f83d72965ebc --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/PrivateLinkScopePrivateLinkResourceGet.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myResourceGroup", + "scopeName": "myPrivateLinkScope", + "api-version": "2021-04-22-preview", + "groupName": "hybridcompute" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/myPrivateLinkScope/privateLinkResources/hybridcompute", + "name": "hybridcompute", + "type": "Microsoft.HybridCompute/privateLinkScopes/privateLinkResources", + "properties": { + "groupId": "hybridcompute", + "requiredMembers": [ + "HybridCompute.Server", + "HybridCompute.K8sConfiguration", + "GuestConfig.DP" + ], + "requiredZoneNames": [ + "privatelink.his.arc.azure.com", + "privatelink.kubernetesconfiguration.azure.com", + "privatelink.Guestconfiguration.azure.com" + ] + } + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/PrivateLinkScopePrivateLinkResourceListGet.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/PrivateLinkScopePrivateLinkResourceListGet.json new file mode 100644 index 000000000000..cb458ce658ed --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/PrivateLinkScopePrivateLinkResourceListGet.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myResourceGroup", + "scopeName": "myPrivateLinkScope", + "api-version": "2021-04-22-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/myPrivateLinkScope/privateLinkResources/hybridcompute", + "name": "hybridcompute", + "type": "Microsoft.HybridCompute/privateLinkScopes/privateLinkResources", + "properties": { + "groupId": "hybridcompute", + "requiredMembers": [ + "HybridCompute.ServerDP", + "HybridCompute.K8sConfigurationDP", + "HybridCompute.GuestConfigDP" + ], + "requiredZoneNames": [ + "privatelink.his.arc.azure.com", + "privatelink.kubernetesconfiguration.azure.com", + "privatelink.Guestconfiguration.azure.com" + ] + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/PrivateLinkScopesCreate.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/PrivateLinkScopesCreate.json new file mode 100644 index 000000000000..49934ea65bee --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/PrivateLinkScopesCreate.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2021-04-22-preview", + "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4919", + "resourceGroupName": "my-resource-group", + "scopeName": "my-privatelinkscope", + "parameters": { + "location": "westus" + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.hybridcompute/privateLinkScopes/my-privatelinkscope", + "name": "my-privatelinkscope", + "type": "Microsoft.HybridCompute/privateLinkScopes", + "location": "westus", + "tags": {}, + "properties": { + "privateLinkScopeId": "e5dc51d3-92ed-4d7e-947a-775ea79b4919", + "provisioningState": "Succeeded", + "publicNetworkAccess": "Disabled" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.hybridcompute/privateLinkScopes/my-privatelinkscope", + "name": "my-privatelinkscope", + "type": "Microsoft.HybridCompute/privateLinkScopes", + "location": "westus", + "tags": {}, + "properties": { + "privateLinkScopeId": "e5dc51d3-92ed-4d7e-947a-775ea79b4919", + "provisioningState": "Succeeded", + "publicNetworkAccess": "Disabled" + } + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/PrivateLinkScopesDelete.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/PrivateLinkScopesDelete.json new file mode 100644 index 000000000000..59465e1823e1 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/PrivateLinkScopesDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-04-22-preview", + "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4919", + "resourceGroupName": "my-resource-group", + "scopeName": "my-privatelinkscope" + }, + "responses": { + "200": {}, + "204": {}, + "202": {} + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/PrivateLinkScopesGet.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/PrivateLinkScopesGet.json new file mode 100644 index 000000000000..29714aa1cb62 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/PrivateLinkScopesGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2021-04-22-preview", + "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4919", + "resourceGroupName": "my-resource-group", + "scopeName": "my-privatelinkscope" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.hybridcompute/privateLinkScopes/my-privatelinkscope", + "name": "my-privatelinkscope", + "type": "Microsoft.HybridCompute/privateLinkScopes", + "location": "westus", + "tags": {}, + "properties": { + "privateLinkScopeId": "f5dc51d3-92ed-4d7e-947a-775ea79b4919", + "provisioningState": "Succeeded", + "publicNetworkAccess": "Disabled" + } + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/PrivateLinkScopesGetValidation.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/PrivateLinkScopesGetValidation.json new file mode 100644 index 000000000000..c38fee9c4118 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/PrivateLinkScopesGetValidation.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2021-04-22-preview", + "location": "wus2", + "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4919", + "privateLinkScopeId": "f5dc51d3-92ed-4d7e-947a-775ea79b4919" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.hybridcompute/privateLinkScopes/my-privatelinkscope", + "publicNetworkAccess": "Disabled", + "connectionDetails": [ + { + "id": "id", + "privateIpAddress": "ip", + "linkIdentifier": "linkId", + "groupId": "groupId", + "memberName": "memberName" + } + ] + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/PrivateLinkScopesGetValidationForMachine.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/PrivateLinkScopesGetValidationForMachine.json new file mode 100644 index 000000000000..9bc2f7cc559f --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/PrivateLinkScopesGetValidationForMachine.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2021-04-22-preview", + "location": "wus2", + "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4919", + "resourceGroupName": "my-resource-group", + "machineName": "machineName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.hybridcompute/privateLinkScopes/my-privatelinkscope", + "publicNetworkAccess": "Disabled", + "connectionDetails": [ + { + "id": "id", + "privateIpAddress": "ip", + "linkIdentifier": "linkId", + "groupId": "groupId", + "memberName": "memberName" + } + ] + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/PrivateLinkScopesList.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/PrivateLinkScopesList.json new file mode 100644 index 000000000000..e535bba170e5 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/PrivateLinkScopesList.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2019-10-17-preview", + "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4919" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.hybridcompute/privateLinkScopes/my-privatelinkscope", + "name": "my-privatelinkscope", + "type": "Microsoft.HybridCompute/privateLinkScopes", + "location": "westus", + "tags": {}, + "properties": { + "privateLinkScopeId": "e5dc51d3-92ed-4d7e-947a-775ea79b4919", + "provisioningState": "Succeeded", + "publicNetworkAccess": "Disabled" + } + }, + { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.hybridcompute/privateLinkScopes/my-other-privatelinkscope", + "name": "my-other-privatelinkscope", + "type": "Microsoft.HybridCompute/privateLinkScopes", + "location": "westus", + "tags": {}, + "properties": { + "privateLinkScopeId": "f5dc51d3-92ed-4d7e-947a-775ea79b4919", + "provisioningState": "Succeeded", + "publicNetworkAccess": "Disabled" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/PrivateLinkScopesListByResourceGroup.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/PrivateLinkScopesListByResourceGroup.json new file mode 100644 index 000000000000..8dc6f69a9e38 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/PrivateLinkScopesListByResourceGroup.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2021-04-22-preview", + "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4919", + "resourceGroupName": "my-resource-group" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.hybridcompute/privateLinkScopes/my-privatelinkscope", + "name": "my-privatelinkscope", + "type": "Microsoft.HybridCompute/privateLinkScopes", + "location": "westus", + "tags": {}, + "properties": { + "privateLinkScopeId": "f5dc51d3-92ed-4d7e-947a-775ea79b4919", + "provisioningState": "Succeeded", + "publicNetworkAccess": "Disabled" + } + }, + { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.hybridcompute/privateLinkScopes/my-other-privatelinkscope", + "name": "my-other-privatelinkscope", + "type": "Microsoft.HybridCompute/privateLinkScopes", + "location": "westus", + "tags": {}, + "properties": { + "privateLinkScopeId": "a5dc51d3-92ed-4d7e-947a-775ea79b4919", + "provisioningState": "Succeeded", + "publicNetworkAccess": "Disabled" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/PrivateLinkScopesUpdate.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/PrivateLinkScopesUpdate.json new file mode 100644 index 000000000000..8de84a8d868f --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/PrivateLinkScopesUpdate.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2021-04-22-preview", + "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4919", + "resourceGroupName": "my-resource-group", + "scopeName": "my-privatelinkscope", + "parameters": { + "location": "westus", + "tags": { + "Tag1": "Value1" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.hybridCompute/privateLinkScopes/my-privatelinkscope", + "name": "my-privatelinkscope", + "type": "Microsoft.HybridCompute/privateLinkScopes", + "location": "westus", + "tags": { + "Tag1": "Value1" + }, + "properties": { + "privateLinkScopeId": "e5dc51d3-92ed-4d7e-947a-775ea79b4919", + "provisioningState": "Succeeded", + "publicNetworkAccess": "Disabled" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.hybridCompute/privateLinkScopes/my-privatelinkscope", + "name": "my-privatelinkscope", + "type": "Microsoft.HybridCompute/privateLinkScopes", + "location": "westus", + "tags": { + "Tag1": "Value1" + }, + "properties": { + "privateLinkScopeId": "e5dc51d3-92ed-4d7e-947a-775ea79b4919", + "provisioningState": "Succeeded", + "publicNetworkAccess": "Disabled" + } + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/PrivateLinkScopesUpdateTagsOnly.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/PrivateLinkScopesUpdateTagsOnly.json new file mode 100644 index 000000000000..7e93f2b24bb4 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/PrivateLinkScopesUpdateTagsOnly.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2021-04-22-preview", + "subscriptionId": "subid", + "resourceGroupName": "my-resource-group", + "scopeName": "my-privatelinkscope", + "PrivateLinkScopeTags": { + "tags": { + "Tag1": "Value1", + "Tag2": "Value2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.hybridcompute/privateLinkScopes/my-privatelinkscope", + "name": "my-privatelinkscope", + "type": "Microsoft.HybridCompute/privateLinkScopes", + "location": "westus", + "tags": { + "Tag1": "Value1", + "Tag2": "Value2" + }, + "properties": { + "privateLinkScopeId": "e5dc51d3-92ed-4d7e-947a-775ea79b4919", + "provisioningState": "Succeeded", + "publicNetworkAccess": "Disabled" + } + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/UpdateExtension.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/UpdateExtension.json new file mode 100644 index 000000000000..fdd9b49ca3c3 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/examples/UpdateExtension.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "machineName": "myMachine", + "extensionName": "CustomScriptExtension", + "api-version": "2021-04-22-preview", + "extensionParameters": { + "properties": { + "publisher": "Microsoft.Compute", + "typeHandlerVersion": "1.10", + "type": "CustomScriptExtension", + "settings": { + "commandToExecute": "powershell.exe -c \"Get-Process | Where-Object { $_.CPU -lt 100 }\"" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/Machines/myMachine/Extensions/CustomScriptExtension", + "name": "CustomScriptExtension", + "type": "Microsoft.HybridCompute/machines/extensions", + "location": "eastus2euap", + "properties": { + "publisher": "Microsoft.Compute", + "type": "string", + "typeHandlerVersion": "1.10.3", + "autoUpgradeMinorVersion": false, + "settings": "@{commandToExecute=powershell.exe -c \"Get-Process | Where-Object { $_.CPU -lt 100 }\"}", + "protectedSettings": {}, + "provisioningState": "Succeeded", + "instanceView": { + "name": "CustomScriptExtension", + "type": "CustomScriptExtension", + "typeHandlerVersion": "1.10.3", + "status": { + "code": "success", + "level": "Information", + "message": "Finished executing command, StdOut: , StdErr:", + "time": "2020-01-08T20:42:10.999Z" + } + } + } + } + }, + "202": {} + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/privateLinkScopes.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/privateLinkScopes.json new file mode 100644 index 000000000000..95e29382fb5c --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-04-22-preview/privateLinkScopes.json @@ -0,0 +1,1050 @@ +{ + "swagger": "2.0", + "info": { + "title": "HybridComputeManagementClient", + "x-ms-code-generation-settings": { + "name": "HybridComputeManagementClient" + }, + "description": "Azure Arc( Servers and K8s Clusters) API reference for Private Link's Scopes management.", + "version": "2021-04-22-preview" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.HybridCompute/privateLinkScopes": { + "get": { + "description": "Gets a list of all Azure Arc PrivateLinkScopes within a subscription.", + "operationId": "PrivateLinkScopes_List", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A list containing 0 or more Azure Arc PrivateLinkScope definitions.", + "schema": { + "$ref": "#/definitions/HybridComputePrivateLinkScopeListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "PrivateLinkScopesList.json": { + "$ref": "./examples/PrivateLinkScopesList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/privateLinkScopes": { + "get": { + "description": "Gets a list of Azure Arc PrivateLinkScopes within a resource group.", + "operationId": "PrivateLinkScopes_ListByResourceGroup", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A list containing 0 or more Azure Arc PrivateLinkScope definitions.", + "schema": { + "$ref": "#/definitions/HybridComputePrivateLinkScopeListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "PrivateLinkScopeListByResourceGroup": { + "$ref": "./examples/PrivateLinkScopesListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/privateLinkScopes/{scopeName}": { + "delete": { + "description": "Deletes a Azure Arc PrivateLinkScope.", + "operationId": "PrivateLinkScopes_Delete", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + } + ], + "responses": { + "200": { + "description": "Successful request when deleting an Azure Arc PrivateLinkScope." + }, + "202": { + "description": "Accepted." + }, + "204": { + "description": "The specified PrivateLinkScope does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "PrivateLinkScopesDelete": { + "$ref": "./examples/PrivateLinkScopesDelete.json" + } + } + }, + "get": { + "description": "Returns a Azure Arc PrivateLinkScope.", + "operationId": "PrivateLinkScopes_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + } + ], + "responses": { + "200": { + "description": "Azure Arc PrivateLinkScope definition.", + "schema": { + "$ref": "#/definitions/HybridComputePrivateLinkScope" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "PrivateLinkScopeGet": { + "$ref": "./examples/PrivateLinkScopesGet.json" + } + } + }, + "put": { + "description": "Creates (or updates) a Azure Arc PrivateLinkScope. Note: You cannot specify a different value for InstrumentationKey nor AppId in the Put operation.", + "operationId": "PrivateLinkScopes_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + }, + { + "name": "parameters", + "description": "Properties that need to be specified to create or update a Azure Arc for Servers and Clusters PrivateLinkScope.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/HybridComputePrivateLinkScope" + } + } + ], + "responses": { + "200": { + "description": "Successful request when creating or updating a Azure Arc PrivateLinkScope. The updated PrivateLinkScope is returned.", + "schema": { + "$ref": "#/definitions/HybridComputePrivateLinkScope" + } + }, + "201": { + "description": "Successful request when creating or updating a Azure Arc PrivateLinkScope. The updated PrivateLinkScope was created and is returned.", + "schema": { + "$ref": "#/definitions/HybridComputePrivateLinkScope" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "PrivateLinkScopeCreate": { + "$ref": "./examples/PrivateLinkScopesCreate.json" + }, + "PrivateLinkScopeUpdate": { + "$ref": "./examples/PrivateLinkScopesUpdate.json" + } + } + }, + "patch": { + "description": "Updates an existing PrivateLinkScope's tags. To update other fields use the CreateOrUpdate method.", + "operationId": "PrivateLinkScopes_UpdateTags", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + }, + { + "name": "PrivateLinkScopeTags", + "description": "Updated tag information to set into the PrivateLinkScope instance.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TagsResource" + } + } + ], + "responses": { + "200": { + "description": "Updating the Azure Arc PrivateLinkScope's tags was successful. PrivateLinkScope tags are updated and returned with the rest of the PrivateLinkScope's object properties.", + "schema": { + "$ref": "#/definitions/HybridComputePrivateLinkScope" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "PrivateLinkScopeUpdateTagsOnly": { + "$ref": "./examples/PrivateLinkScopesUpdateTagsOnly.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/privateLinkScopes/{scopeName}/privateLinkResources": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "description": "Gets the private link resources that need to be created for a Azure Monitor PrivateLinkScope.", + "operationId": "PrivateLinkResources_ListByPrivateLinkScope", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private link resources.", + "schema": { + "$ref": "#/definitions/PrivateLinkResourceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Gets private endpoint connection.": { + "$ref": "./examples/PrivateLinkScopePrivateLinkResourceListGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/privateLinkScopes/{scopeName}/privateLinkResources/{groupName}": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "description": "Gets the private link resources that need to be created for a Azure Monitor PrivateLinkScope.", + "operationId": "PrivateLinkResources_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + }, + { + "$ref": "#/parameters/GroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved a specified private link resource.", + "schema": { + "$ref": "#/definitions/PrivateLinkResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Gets private endpoint connection.": { + "$ref": "./examples/PrivateLinkScopePrivateLinkResourceGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/privateLinkScopes/{scopeName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Gets a private endpoint connection.", + "operationId": "PrivateEndpointConnections_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved a specified private endpoint connection.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Gets private endpoint connection.": { + "$ref": "./examples/PrivateEndpointConnectionGet.json" + } + } + }, + "put": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Approve or reject a private endpoint connection with a given name.", + "operationId": "PrivateEndpointConnections_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + } + ], + "responses": { + "200": { + "description": "Successfully approved or rejected private endpoint connection.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Approve or reject a private endpoint connection with a given name.": { + "$ref": "./examples/PrivateEndpointConnectionUpdate.json" + } + } + }, + "delete": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Deletes a private endpoint connection with a given name.", + "operationId": "PrivateEndpointConnections_Delete", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Successfully deleted private endpoint connection." + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "Private endpoint connection does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Deletes a private endpoint connection with a given name.": { + "$ref": "./examples/PrivateEndpointConnectionDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/privateLinkScopes/{scopeName}/privateEndpointConnections": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Gets all private endpoint connections on a private link scope.", + "operationId": "PrivateEndpointConnections_ListByPrivateLinkScope", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private endpoint connections.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets list of private endpoint connections on a private link scope.": { + "$ref": "./examples/PrivateEndpointConnectionList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.HybridCompute/locations/{location}/privateLinkScopes/{privateLinkScopeId}": { + "get": { + "description": "Returns a Azure Arc PrivateLinkScope's validation details.", + "operationId": "PrivateLinkScopes_GetValidationDetails", + "parameters": [ + { + "$ref": "#/parameters/LocationParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeId" + } + ], + "responses": { + "200": { + "description": "Azure Arc PrivateLinkScope validation details definition.", + "schema": { + "$ref": "#/definitions/PrivateLinkScopeValidationDetails" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "PrivateLinkScopeGet": { + "$ref": "./examples/PrivateLinkScopesGetValidation.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}/privateLinkScopes/current": { + "get": { + "description": "Returns a Azure Arc PrivateLinkScope's validation details for a given machine.", + "operationId": "PrivateLinkScopes_GetValidationDetailsForMachine", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/MachineNameParameter" + } + ], + "responses": { + "200": { + "description": "Azure Arc PrivateLinkScope validation details definition.", + "schema": { + "$ref": "#/definitions/PrivateLinkScopeValidationDetails" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "PrivateLinkScopeGet": { + "$ref": "./examples/PrivateLinkScopesGetValidationForMachine.json" + } + } + } + } + }, + "definitions": { + "PrivateLinkScopesResource": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "Azure resource Id" + }, + "name": { + "type": "string", + "description": "Azure resource name", + "readOnly": true + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Azure resource type" + }, + "location": { + "type": "string", + "description": "Resource location", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "tags": { + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "required": [ + "location" + ], + "x-ms-azure-resource": true, + "description": "An azure resource object" + }, + "TagsResource": { + "properties": { + "tags": { + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "description": "A container holding only the Tags for a resource, allowing the user to update the tags on a PrivateLinkScope instance." + }, + "HybridComputePrivateLinkScope": { + "properties": { + "properties": { + "description": "Properties that define a Azure Arc PrivateLinkScope resource.", + "$ref": "#/definitions/HybridComputePrivateLinkScopeProperties" + }, + "systemData": { + "readOnly": true, + "description": "The system meta data relating to this resource.", + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/systemData" + } + }, + "allOf": [ + { + "$ref": "#/definitions/PrivateLinkScopesResource" + } + ], + "description": "An Azure Arc PrivateLinkScope definition." + }, + "PrivateLinkScopeValidationDetails": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "Azure resource Id" + }, + "publicNetworkAccess": { + "description": "Indicates whether machines associated with the private link scope can also use public Azure Arc service endpoints.", + "$ref": "#/definitions/PublicNetworkAccessType" + }, + "connectionDetails": { + "type": "array", + "description": "List of Private Endpoint Connection details.", + "items": { + "$ref": "#/definitions/ConnectionDetail" + } + } + } + }, + "ConnectionDetail": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "Azure resource Id" + }, + "privateIpAddress": { + "type": "string", + "readOnly": true, + "description": "The private endpoint connection private ip address" + }, + "linkIdentifier": { + "type": "string", + "readOnly": true, + "description": "The private endpoint connection link identifier" + }, + "groupId": { + "type": "string", + "readOnly": true, + "description": "The private endpoint connection group id" + }, + "memberName": { + "type": "string", + "readOnly": true, + "description": "The private endpoint connection member name" + } + } + }, + "HybridComputePrivateLinkScopeProperties": { + "description": "Properties that define a Azure Arc PrivateLinkScope resource.", + "properties": { + "publicNetworkAccess": { + "description": "Indicates whether machines associated with the private link scope can also use public Azure Arc service endpoints.", + "$ref": "#/definitions/PublicNetworkAccessType" + }, + "provisioningState": { + "type": "string", + "description": "Current state of this PrivateLinkScope: whether or not is has been provisioned within the resource group it is defined. Users cannot change this value but are able to read from it. Values will include Provisioning ,Succeeded, Canceled and Failed.", + "readOnly": true + }, + "privateLinkScopeId": { + "readOnly": true, + "description": "The Guid id of the private link scope.", + "type": "string" + } + } + }, + "HybridComputePrivateLinkScopeListResult": { + "description": "Describes the list of Azure Arc PrivateLinkScope resources.", + "required": [ + "value" + ], + "properties": { + "value": { + "type": "array", + "description": "List of Azure Arc PrivateLinkScope definitions.", + "items": { + "$ref": "#/definitions/HybridComputePrivateLinkScope" + } + }, + "nextLink": { + "type": "string", + "description": "The URI to get the next set of Azure Arc PrivateLinkScope definitions if too many PrivateLinkScopes where returned in the result set." + } + } + }, + "PrivateLinkResourceListResult": { + "description": "A list of private link resources", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "PrivateLinkResource": { + "description": "A private link resource", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "Resource properties." + }, + "systemData": { + "readOnly": true, + "description": "The system meta data relating to this resource.", + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/systemData" + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ] + }, + "PrivateLinkResourceProperties": { + "description": "Properties of a private link resource.", + "type": "object", + "properties": { + "groupId": { + "description": "The private link resource group id.", + "type": "string", + "readOnly": true + }, + "requiredMembers": { + "description": "The private link resource required member names.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "requiredZoneNames": { + "description": "Required DNS zone names of the the private link resource.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + } + } + }, + "PrivateEndpointConnectionProperties": { + "description": "Properties of a private endpoint connection.", + "type": "object", + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpointProperty", + "description": "Private endpoint which the connection belongs to." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionStateProperty", + "description": "Connection state of the private endpoint connection." + }, + "provisioningState": { + "description": "State of the private endpoint connection.", + "type": "string", + "readOnly": true + } + } + }, + "PrivateEndpointProperty": { + "description": "Private endpoint which the connection belongs to.", + "type": "object", + "properties": { + "id": { + "description": "Resource id of the private endpoint.", + "type": "string" + } + } + }, + "PrivateLinkServiceConnectionStateProperty": { + "description": "State of the private endpoint connection.", + "type": "object", + "required": [ + "status", + "description" + ], + "properties": { + "status": { + "description": "The private link service connection status.", + "type": "string" + }, + "description": { + "description": "The private link service connection description.", + "type": "string" + }, + "actionsRequired": { + "description": "The actions required for private link service connection.", + "type": "string", + "readOnly": true + } + } + }, + "PrivateEndpointConnection": { + "description": "A private endpoint connection", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "description": "Resource properties." + }, + "systemData": { + "readOnly": true, + "description": "The system meta data relating to this resource.", + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/systemData" + } + } + }, + "PrivateEndpointConnectionListResult": { + "description": "A list of private endpoint connections.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "PublicNetworkAccessType": { + "type": "string", + "description": "The network access policy to determine if Azure Arc agents can use public Azure Arc service endpoints. Defaults to disabled (access to Azure Arc services only via private link).", + "default": "Disabled", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "PublicNetworkAccessType", + "modelAsString": true, + "values": [ + { + "value": "Enabled", + "description": "Allows Azure Arc agents to communicate with Azure Arc services over both public (internet) and private endpoints." + }, + { + "value": "Disabled", + "description": "Does not allow Azure Arc agents to communicate with Azure Arc services over public (internet) endpoints. The agents must use the private link." + } + ] + } + } + }, + "parameters": { + "PrivateLinkScopeName": { + "name": "scopeName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Azure Arc PrivateLinkScope resource.", + "x-ms-parameter-location": "method" + }, + "PrivateLinkScopeId": { + "name": "privateLinkScopeId", + "in": "path", + "required": true, + "type": "string", + "description": "The id (Guid) of the Azure Arc PrivateLinkScope resource.", + "x-ms-parameter-location": "method" + }, + "GroupNameParameter": { + "name": "groupName", + "in": "path", + "description": "The name of the private link resource.", + "required": true, + "x-ms-parameter-location": "method", + "type": "string" + }, + "LocationParameter": { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "The location of the target resource.", + "minLength": 1 + }, + "MachineNameParameter": { + "name": "machineName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the target machine to get the private link scope validation details for.", + "minLength": 1, + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/HybridCompute.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/HybridCompute.json new file mode 100644 index 000000000000..40b028a62848 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/HybridCompute.json @@ -0,0 +1,1202 @@ +{ + "swagger": "2.0", + "info": { + "title": "HybridComputeManagementClient", + "description": "The Hybrid Compute Management Client.", + "version": "2021-05-17-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.HybridCompute/machines/{machineName}": { + "put": { + "tags": [ + "machines" + ], + "operationId": "Machines_CreateOrUpdate", + "description": "The operation to create or update a hybrid machine resource identity in Azure.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "machineName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the hybrid machine." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Machine" + }, + "description": "Parameters supplied to the Create hybrid machine operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Machine" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or Update a Machine": { + "$ref": "./examples/Machines_CreateOrUpdate.json" + } + } + }, + "patch": { + "tags": [ + "machines" + ], + "operationId": "Machines_Update", + "description": "The operation to update a hybrid machine.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "machineName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the hybrid machine." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/MachineUpdate" + }, + "description": "Parameters supplied to the Update hybrid machine operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Machine" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Update a Machine": { + "$ref": "./examples/Machines_Update.json" + } + } + }, + "delete": { + "tags": [ + "machines" + ], + "operationId": "Machines_Delete", + "description": "The operation to remove a hybrid machine identity in Azure.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "machineName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the hybrid machine." + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete a Machine": { + "$ref": "./examples/Machines_Delete.json" + } + } + }, + "get": { + "tags": [ + "machines" + ], + "operationId": "Machines_Get", + "description": "Retrieves information about the model view or the instance view of a hybrid machine.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "machineName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the hybrid machine." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation.", + "enum": [ + "instanceView" + ], + "x-ms-enum": { + "name": "InstanceViewTypes", + "modelAsString": true + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Machine" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Machine": { + "$ref": "./examples/Machines_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines": { + "get": { + "tags": [ + "machines" + ], + "operationId": "Machines_ListByResourceGroup", + "description": "Lists all the hybrid machines in the specified resource group. Use the nextLink property in the response to get the next page of hybrid machines.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MachineListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List Machines by resource group": { + "$ref": "./examples/Machines_ListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.HybridCompute/machines": { + "get": { + "tags": [ + "machines" + ], + "operationId": "Machines_ListBySubscription", + "description": "Lists all the hybrid machines in the specified subscription. Use the nextLink property in the response to get the next page of hybrid machines.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MachineListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List Machines by resource group": { + "$ref": "./examples/Machines_ListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}/extensions/{extensionName}": { + "put": { + "tags": [ + "MachineExtensions" + ], + "operationId": "MachineExtensions_CreateOrUpdate", + "description": "The operation to create or update the extension.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "machineName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the machine where the extension should be created or updated." + }, + { + "name": "extensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the machine extension." + }, + { + "name": "extensionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/MachineExtension" + }, + "description": "Parameters supplied to the Create Machine Extension operation." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MachineExtension" + } + }, + "202": { + "description": "HTTP 202 (Accepted) if the operation was successfully started and will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or Update a Machine Extension": { + "$ref": "./examples/PUTExtension.json" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "MachineExtensions" + ], + "operationId": "MachineExtensions_Update", + "description": "The operation to create or update the extension.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "machineName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the machine where the extension should be created or updated." + }, + { + "name": "extensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the machine extension." + }, + { + "name": "extensionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/MachineExtensionUpdate" + }, + "description": "Parameters supplied to the Create Machine Extension operation." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MachineExtension" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or Update a Machine Extension": { + "$ref": "./examples/UpdateExtension.json" + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "MachineExtensions" + ], + "operationId": "MachineExtensions_Delete", + "description": "The operation to delete the extension.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "machineName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the machine where the extension should be deleted." + }, + { + "name": "extensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the machine extension." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete a Machine Extension": { + "$ref": "./examples/DELETEExtension.json" + } + } + }, + "get": { + "tags": [ + "MachineExtensions" + ], + "operationId": "MachineExtensions_Get", + "description": "The operation to get the extension.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "machineName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the machine containing the extension." + }, + { + "name": "extensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the machine extension." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MachineExtension" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "GET Machine Extension": { + "$ref": "./examples/GETExtension.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}/extensions": { + "get": { + "tags": [ + "MachineExtensions" + ], + "operationId": "MachineExtensions_List", + "description": "The operation to get all extensions of a non-Azure machine", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "machineName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the machine containing the extension." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MachineExtensionsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GET all Machine Extensions": { + "$ref": "./examples/LISTExtension.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}/upgradeExtensions": { + "post": { + "tags": [ + "MachineExtensions Upgrade" + ], + "operationId": "UpgradeExtensions", + "description": "The operation to Upgrade Machine Extensions.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "machineName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the hybrid machine." + }, + { + "name": "extensionUpgradeParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/MachineExtensionUpgrade" + }, + "description": "Parameters supplied to the Upgrade Extensions operation." + } + ], + "responses": { + "202": { + "description": "HTTP 202 (Accepted) if the operation was successfully started and will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Upgrade Machine Extensions": { + "$ref": "./examples/Extensions_Upgrade.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/providers/Microsoft.HybridCompute/operations": { + "get": { + "tags": [ + "operations" + ], + "operationId": "Operations_List", + "description": "Gets a list of hybrid compute operations.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + } + }, + "definitions": { + "OperationListResult": { + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/OperationValue" + }, + "description": "The list of compute operations" + } + }, + "description": "The List Compute Operation operation response." + }, + "OperationValue": { + "properties": { + "origin": { + "type": "string", + "readOnly": true, + "description": "The origin of the compute operation." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the compute operation." + }, + "display": { + "$ref": "#/definitions/OperationValueDisplay", + "description": "Display properties" + } + }, + "description": "Describes the properties of a Compute Operation value." + }, + "OperationValueDisplay": { + "properties": { + "operation": { + "type": "string", + "readOnly": true, + "description": "The display name of the compute operation." + }, + "resource": { + "type": "string", + "readOnly": true, + "description": "The display name of the resource the operation applies to." + }, + "description": { + "type": "string", + "readOnly": true, + "description": "The description of the operation." + }, + "provider": { + "type": "string", + "readOnly": true, + "description": "The resource provider for the operation." + } + }, + "description": "Describes the properties of a Hybrid Compute Operation Value Display." + }, + "OSProfile": { + "readOnly": true, + "properties": { + "computerName": { + "type": "string", + "readOnly": true, + "description": "Specifies the host OS name of the hybrid machine." + } + }, + "description": "Specifies the operating system settings for the hybrid machine." + }, + "DetectedProperties": { + "readOnly": true, + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Detected properties from the machine." + }, + "MachineProperties": { + "properties": { + "locationData": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/locationData" + }, + "osProfile": { + "$ref": "#/definitions/OSProfile", + "description": "Specifies the operating system settings for the hybrid machine." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state, which only appears in the response." + }, + "status": { + "readOnly": true, + "type": "string", + "description": "The status of the hybrid machine agent.", + "enum": [ + "Connected", + "Disconnected", + "Error" + ], + "x-ms-enum": { + "name": "StatusTypes", + "modelAsString": true + } + }, + "lastStatusChange": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The time of the last status change." + }, + "errorDetails": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorDetail" + }, + "description": "Details about the error state." + }, + "agentVersion": { + "readOnly": true, + "type": "string", + "description": "The hybrid machine agent full version." + }, + "vmId": { + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ], + "description": "Specifies the hybrid machine unique ID." + }, + "displayName": { + "readOnly": true, + "type": "string", + "description": "Specifies the hybrid machine display name." + }, + "machineFqdn": { + "readOnly": true, + "type": "string", + "description": "Specifies the hybrid machine FQDN." + }, + "clientPublicKey": { + "type": "string", + "description": "Public Key that the client provides to be used during initial resource onboarding" + }, + "osName": { + "readOnly": true, + "type": "string", + "description": "The Operating System running on the hybrid machine." + }, + "osVersion": { + "readOnly": true, + "type": "string", + "description": "The version of Operating System running on the hybrid machine." + }, + "vmUuid": { + "readOnly": true, + "type": "string", + "description": "Specifies the Arc Machine's unique SMBIOS ID" + }, + "extensions": { + "type": "array", + "items": { + "$ref": "#/definitions/MachineExtensionInstanceView" + }, + "description": "Machine Extensions information" + }, + "osSku": { + "readOnly": true, + "type": "string", + "description": "Specifies the Operating System product SKU." + }, + "domainName": { + "readOnly": true, + "type": "string", + "description": "Specifies the Windows domain name." + }, + "adFqdn": { + "readOnly": true, + "type": "string", + "description": "Specifies the AD fully qualified display name." + }, + "dnsFqdn": { + "readOnly": true, + "type": "string", + "description": "Specifies the DNS fully qualified display name." + }, + "privateLinkScopeResourceId": { + "type": "string", + "description": "The resource id of the private link scope this machine is assigned to, if any." + }, + "parentClusterResourceId": { + "type": "string", + "description": "The resource id of the parent cluster (Azure HCI) this machine is assigned to, if any." + }, + "detectedProperties": { + "$ref": "#/definitions/DetectedProperties", + "description": "Detected properties from the machine." + } + }, + "description": "Describes the properties of a hybrid machine." + }, + "MachineUpdateProperties": { + "properties": { + "locationData": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/locationData" + }, + "parentClusterResourceId": { + "type": "string", + "description": "The resource id of the parent cluster (Azure HCI) this machine is assigned to, if any." + }, + "privateLinkScopeResourceId": { + "type": "string", + "description": "The resource id of the private link scope this machine is assigned to, if any." + } + }, + "description": "Describes the ARM updatable properties of a hybrid machine." + }, + "Machine": { + "properties": { + "properties": { + "$ref": "#/definitions/MachineProperties", + "description": "Hybrid Compute Machine properties" + }, + "identity": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Identity" + }, + "systemData": { + "readOnly": true, + "description": "The system meta data relating to this resource.", + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/systemData" + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/TrackedResource" + } + ], + "description": "Describes a hybrid machine." + }, + "MachineUpdate": { + "properties": { + "identity": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Identity" + }, + "properties": { + "$ref": "#/definitions/MachineUpdateProperties", + "description": "Hybrid Compute Machine properties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ResourceUpdate" + } + ], + "description": "Describes a hybrid machine Update." + }, + "MachineListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Machine" + }, + "description": "The list of hybrid machines." + }, + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of Machines. Call ListNext() with this URI to fetch the next page of hybrid machines." + } + }, + "required": [ + "value" + ], + "description": "The List hybrid machine operation response." + }, + "ResourceUpdate": { + "description": "The Update Resource model definition.", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + } + }, + "MachineExtension": { + "properties": { + "properties": { + "$ref": "#/definitions/MachineExtensionProperties", + "description": "Describes Machine Extension Properties." + }, + "systemData": { + "readOnly": true, + "description": "The system meta data relating to this resource.", + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/systemData" + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/TrackedResource" + } + ], + "description": "Describes a Machine Extension." + }, + "MachineExtensionUpdate": { + "properties": { + "properties": { + "$ref": "#/definitions/MachineExtensionUpdateProperties", + "description": "Describes Machine Extension Update Properties." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ResourceUpdate" + } + ], + "description": "Describes a Machine Extension Update." + }, + "MachineExtensionProperties": { + "properties": { + "forceUpdateTag": { + "type": "string", + "description": "How the extension handler should be forced to update even if the extension configuration has not changed." + }, + "publisher": { + "type": "string", + "description": "The name of the extension handler publisher." + }, + "type": { + "type": "string", + "description": "Specifies the type of the extension; an example is \"CustomScriptExtension\"." + }, + "typeHandlerVersion": { + "type": "string", + "description": "Specifies the version of the script handler." + }, + "autoUpgradeMinorVersion": { + "type": "boolean", + "description": "Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true." + }, + "settings": { + "type": "object", + "description": "Json formatted public settings for the extension." + }, + "protectedSettings": { + "type": "object", + "description": "The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state, which only appears in the response." + }, + "instanceView": { + "$ref": "#/definitions/MachineExtensionInstanceView", + "description": "The machine extension instance view." + } + }, + "description": "Describes the properties of a Machine Extension." + }, + "MachineExtensionUpdateProperties": { + "properties": { + "forceUpdateTag": { + "type": "string", + "description": "How the extension handler should be forced to update even if the extension configuration has not changed." + }, + "publisher": { + "type": "string", + "description": "The name of the extension handler publisher." + }, + "type": { + "type": "string", + "description": "Specifies the type of the extension; an example is \"CustomScriptExtension\"." + }, + "typeHandlerVersion": { + "type": "string", + "description": "Specifies the version of the script handler." + }, + "autoUpgradeMinorVersion": { + "type": "boolean", + "description": "Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true." + }, + "settings": { + "type": "object", + "description": "Json formatted public settings for the extension." + }, + "protectedSettings": { + "type": "object", + "description": "The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all." + } + }, + "description": "Describes the properties of a Machine Extension." + }, + "MachineExtensionInstanceView": { + "properties": { + "name": { + "type": "string", + "description": "The machine extension name." + }, + "type": { + "type": "string", + "description": "Specifies the type of the extension; an example is \"CustomScriptExtension\"." + }, + "typeHandlerVersion": { + "type": "string", + "description": "Specifies the version of the script handler." + }, + "status": { + "properties": { + "code": { + "type": "string", + "description": "The status code." + }, + "level": { + "type": "string", + "description": "The level code.", + "enum": [ + "Info", + "Warning", + "Error" + ], + "x-ms-enum": { + "name": "StatusLevelTypes", + "modelAsString": true + } + }, + "displayStatus": { + "type": "string", + "description": "The short localizable label for the status." + }, + "message": { + "type": "string", + "description": "The detailed status message, including for alerts and error messages." + }, + "time": { + "type": "string", + "format": "date-time", + "description": "The time of the status." + } + }, + "description": "Instance view status." + } + }, + "description": "Describes the Machine Extension Instance View." + }, + "MachineExtensionsListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/MachineExtension" + }, + "description": "The list of extensions" + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of machine extensions. Call ListNext() with this to fetch the next page of extensions." + } + }, + "description": "Describes the Machine Extensions List Result." + }, + "TargetVersion": { + "type": "string", + "description": "Extension Upgrade Target Version." + }, + "ExtensionTargetProperties": { + "properties": { + "targetVersion": { + "type": "object", + "$ref": "#/definitions/TargetVersion", + "description": "Properties for the specified Extension to Upgrade." + } + }, + "description": "Describes the Machine Extension Target Version Properties" + }, + "ExtensionTarget": { + "additionalProperties": { + "type": "object", + "$ref": "#/definitions/ExtensionTargetProperties" + }, + "description": "Describes the Machine Extension Target Properties" + }, + "MachineExtensionUpgrade": { + "properties": { + "extensionTargets": { + "$ref": "#/definitions/ExtensionTarget", + "description": "Describes the Extension Target Properties." + } + }, + "description": "Describes the Machine Extension Upgrade Properties" + } + }, + "parameters": {} +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/DELETEExtension.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/DELETEExtension.json new file mode 100644 index 000000000000..7874e53eaf97 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/DELETEExtension.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "machineName": "myMachine", + "extensionName": "MMA", + "api-version": "2021-05-17-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/Extensions_Upgrade.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/Extensions_Upgrade.json new file mode 100644 index 000000000000..a273dc5efe58 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/Extensions_Upgrade.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "machineName": "myMachine", + "api-version": "2021-05-17-preview", + "extensionUpgradeParameters": { + "extensionTargets": { + "Microsoft.Compute.CustomScriptExtension": { + "targetVersion": "1.10" + }, + "Microsoft.Azure.Monitoring": { + "targetVersion": "2.0" + } + } + } + }, + "responses": { + "202": {} + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/GETExtension.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/GETExtension.json new file mode 100644 index 000000000000..8f1c5c4e44f1 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/GETExtension.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "machineName": "myMachine", + "extensionName": "CustomScriptExtension", + "api-version": "2021-05-17-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/Machines/myMachine/Extensions/CustomScriptExtension", + "name": "CustomScriptExtension", + "type": "Microsoft.HybridCompute/machines/extensions", + "location": "eastus2euap", + "properties": { + "publisher": "Microsoft.Compute", + "type": "string", + "typeHandlerVersion": "1.10.3", + "autoUpgradeMinorVersion": false, + "settings": "@{commandToExecute=powershell.exe -c \"Get-Process | Where-Object { $_.CPU -gt 10000 }\"}", + "protectedSettings": {}, + "provisioningState": "Succeeded", + "instanceView": { + "name": "CustomScriptExtension", + "type": "CustomScriptExtension", + "typeHandlerVersion": "1.10.3", + "status": { + "code": "success", + "level": "Information", + "displayStatus": "Provisioning succeeded", + "message": "Finished executing command, StdOut: , StdErr:", + "time": "2019-08-08T20:42:10.999Z" + } + } + } + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/LISTExtension.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/LISTExtension.json new file mode 100644 index 000000000000..95a4b7771930 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/LISTExtension.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "machineName": "myMachine", + "api-version": "2021-05-17-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/Machines/myMachine/Extensions/CustomScriptExtension", + "name": "CustomScriptExtension", + "location": "eastus2euap", + "type": "Microsoft.HybridCompute/machines/extensions", + "properties": { + "publisher": "Microsoft.Compute", + "type": "CustomScriptExtension", + "typeHandlerVersion": "1.10.3", + "autoUpgradeMinorVersion": false, + "settings": { + "commandToExecute": "powershell.exe -c \"Get-Process | Where-Object { $_.CPU -gt 10000 }\"" + }, + "provisioningState": "Succeeded", + "instanceView": { + "name": "CustomScriptExtension", + "type": "CustomScriptExtension", + "typeHandlerVersion": "1.10.3", + "status": { + "code": "success", + "level": "Information", + "displayStatus": "Provisioning succeeded", + "message": "formattedMessage: Finished executing command, StdOut: , StdErr: ", + "time": "2020-08-13T17:18:57.405Z" + } + } + } + }, + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/Machines/myMachine/Extensions/winosupdateextension", + "name": "winosupdateextension", + "location": "eastus2euap", + "type": "Microsoft.HybridCompute/machines/extensions", + "properties": { + "publisher": "microsoft.softwareupdatemanagement.test", + "type": "windowsosupdateextension", + "typeHandlerVersion": "1.0.0.0", + "autoUpgradeMinorVersion": false, + "settings": {}, + "provisioningState": "Creating", + "instanceView": { + "name": "winosupdateextension", + "type": "windowsosupdateextension", + "typeHandlerVersion": "1.0.0.0", + "status": {} + } + } + } + ] + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/Machines_CreateOrUpdate.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/Machines_CreateOrUpdate.json new file mode 100644 index 000000000000..7f409f35329f --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/Machines_CreateOrUpdate.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "machineName": "myMachine", + "api-version": "2021-05-17-preview", + "parameters": { + "location": "eastus2euap", + "properties": { + "vmId": "b7a098cc-b0b8-46e8-a205-62f301a62a8f", + "locationData": { + "name": "Redmond" + }, + "clientPublicKey": "string", + "parentClusterResourceId": "{AzureStackHCIResourceId}", + "privateLinkScopeResourceId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName" + }, + "identity": { + "type": "SystemAssigned" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/machines/myMachine", + "name": "myMachine", + "location": "eastus2euap", + "tags": null, + "identity": { + "type": "SystemAssigned", + "principalId": "string", + "tenantId": "string" + }, + "type": "Microsoft.HybridCompute/machines", + "properties": { + "provisioningState": "Succeeded", + "agentVersion": null, + "status": null, + "lastStatusChange": null, + "errorDetails": null, + "displayName": null, + "machineFqdn": null, + "vmUuid": null, + "osSku": null, + "domainName": null, + "adFqdn": null, + "dnsFqdn": null, + "osName": null, + "osVersion": null, + "osProfile": { + "computerName": null + }, + "vmId": "b7a098cc-b0b8-46e8-a205-62f301a62a8f", + "locationData": { + "name": "Redmond", + "city": "redmond", + "district": null, + "countryOrRegion": "usa" + }, + "clientPublicKey": "string", + "parentClusterResourceId": "{AzureStackHCIResourceId}", + "detectedProperties": { + "cloudprovider": "N/A", + "manufacturer": "Microsoft Corporation", + "model": "Virtual Machine", + "mssqldiscovered": "false" + }, + "privateLinkScopeResourceId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName" + } + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/Machines_Delete.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/Machines_Delete.json new file mode 100644 index 000000000000..058ce324b431 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/Machines_Delete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "machineName": "myMachine", + "api-version": "2021-05-17-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/Machines_Get.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/Machines_Get.json new file mode 100644 index 000000000000..330755d7e657 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/Machines_Get.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "machineName": "myMachine", + "api-version": "2021-05-17-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/machines/myMachine", + "name": "myMachine", + "location": "eastus2euap", + "tags": null, + "identity": { + "type": "SystemAssigned", + "principalId": "string", + "tenantId": "string" + }, + "type": "Microsoft.HybridCompute/machines", + "properties": { + "provisioningState": "Succeeded", + "agentVersion": null, + "status": null, + "lastStatusChange": null, + "errorDetails": null, + "displayName": null, + "machineFqdn": null, + "vmUuid": null, + "osSku": null, + "domainName": null, + "adFqdn": null, + "dnsFqdn": null, + "osName": null, + "osVersion": null, + "osProfile": { + "computerName": null + }, + "vmId": "b7a098cc-b0b8-46e8-a205-62f301a62a8f", + "locationData": { + "name": "Redmond", + "city": "redmond", + "district": null, + "countryOrRegion": "usa" + }, + "clientPublicKey": "string", + "parentClusterResourceId": "{AzureStackHCIResourceId}", + "detectedProperties": { + "cloudprovider": "N/A", + "manufacturer": "Microsoft Corporation", + "model": "Virtual Machine", + "mssqldiscovered": "false" + }, + "privateLinkScopeResourceId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName" + } + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/Machines_ListByResourceGroup.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/Machines_ListByResourceGroup.json new file mode 100644 index 000000000000..9731122f1df6 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/Machines_ListByResourceGroup.json @@ -0,0 +1,99 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-05-17-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/machines/myMachine", + "name": "myMachine", + "location": "eastus2euap", + "tags": null, + "identity": { + "type": "SystemAssigned", + "principalId": "f7a068cc-b0b8-46e8-a203-22f301a62a8f", + "tenantId": "c4098cc-91b8-46c2-a205-d82ab1a62a8f" + }, + "type": "Microsoft.HybridCompute/machines", + "properties": { + "provisioningState": "Succeeded", + "agentVersion": null, + "status": null, + "lastStatusChange": null, + "errorDetails": null, + "displayName": null, + "machineFqdn": null, + "vmUuid": null, + "osSku": null, + "domainName": null, + "adFqdn": null, + "dnsFqdn": null, + "osName": null, + "osVersion": null, + "osProfile": { + "computerName": null + }, + "vmId": "b7a098cc-b0b8-46e8-a205-62f301a62a8f", + "locationData": { + "name": "Redmond" + }, + "clientPublicKey": "string", + "parentClusterResourceId": null, + "detectedProperties": { + "cloudprovider": "N/A", + "manufacturer": "Microsoft Corporation", + "model": "Virtual Machine", + "mssqldiscovered": "false" + }, + "privateLinkScopeResourceId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName" + } + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/machines/myMachine2", + "name": "myMachine2", + "location": "westus2", + "tags": null, + "identity": { + "type": "SystemAssigned", + "principalId": "e7a068cc-b0b8-46e8-a203-22f301a62a8f", + "tenantId": "c4098cc-91b8-46c2-a205-d82ab1a62a8f" + }, + "type": "Microsoft.HybridCompute/machines", + "properties": { + "provisioningState": "Succeeded", + "agentVersion": null, + "status": null, + "lastStatusChange": null, + "errorDetails": null, + "displayName": null, + "machineFqdn": null, + "osName": null, + "osVersion": null, + "osProfile": { + "computerName": null + }, + "vmId": "a4a098cc-b0b8-46e8-a205-62f301a62a8f", + "locationData": { + "name": "Redmond" + }, + "clientPublicKey": "string", + "parentClusterResourceId": "{AzureStackHCIResourceId}", + "detectedProperties": { + "cloudprovider": "N/A", + "manufacturer": "Microsoft Corporation", + "model": "Surfacebook", + "mssqldiscovered": "true" + }, + "privateLinkScopeResourceId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/Machines_ListBySubscription.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/Machines_ListBySubscription.json new file mode 100644 index 000000000000..3507847f2cc0 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/Machines_ListBySubscription.json @@ -0,0 +1,97 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2021-05-17-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/machines/myMachine", + "name": "myMachine", + "location": "eastus2euap", + "tags": null, + "identity": { + "type": "SystemAssigned", + "principalId": "string", + "tenantId": "string" + }, + "type": "Microsoft.HybridCompute/machines", + "properties": { + "provisioningState": "Succeeded", + "agentVersion": null, + "status": null, + "lastStatusChange": null, + "errorDetails": null, + "displayName": null, + "machineFqdn": null, + "vmUuid": null, + "osSku": null, + "domainName": null, + "adFqdn": null, + "dnsFqdn": null, + "osName": null, + "osVersion": null, + "osProfile": { + "computerName": null + }, + "vmId": "b7a098cc-b0b8-46e8-a205-62f301a62a8f", + "locationData": { + "name": "Redmond" + }, + "clientPublicKey": "string", + "parentClusterResourceId": null, + "detectedProperties": { + "cloudprovider": "N/A", + "manufacturer": "Microsoft Corporation", + "model": "Virtual Machine", + "mssqldiscovered": "false" + }, + "privateLinkScopeResourceId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName" + } + }, + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup2/providers/Microsoft.HybridCompute/machines/myMachine2", + "name": "myMachine2", + "location": "westus2", + "tags": null, + "identity": { + "type": "SystemAssigned", + "principalId": "e7a068cc-b0b8-46e8-a203-22f301a62a8f", + "tenantId": "c4098cc-91b8-46c2-a205-d82ab1a62a8f" + }, + "type": "Microsoft.HybridCompute/machines", + "properties": { + "provisioningState": "Succeeded", + "agentVersion": null, + "status": null, + "lastStatusChange": null, + "errorDetails": null, + "displayName": null, + "machineFqdn": null, + "osName": null, + "osVersion": null, + "osProfile": { + "computerName": null + }, + "vmId": "a4a098cc-b0b8-46e8-a205-62f301a62a8f", + "locationData": { + "name": "Redmond" + }, + "clientPublicKey": "string", + "parentClusterResourceId": "{AzureStackHCIResourceId}", + "detectedProperties": { + "cloudprovider": "N/A", + "manufacturer": "Microsoft Corporation", + "model": "Surfacebook", + "mssqldiscovered": "true" + } + } + } + ], + "nextLink": "string" + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/Machines_Update.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/Machines_Update.json new file mode 100644 index 000000000000..68b1898f6dec --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/Machines_Update.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "machineName": "myMachine", + "api-version": "2021-05-17-preview", + "location": "eastus2euap", + "parameters": { + "properties": { + "locationData": { + "name": "Redmond" + }, + "parentClusterResourceId": "{AzureStackHCIResourceId}", + "privateLinkScopeResourceId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName" + }, + "identity": { + "type": "SystemAssigned" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/machines/myMachine", + "name": "myMachine", + "location": "eastus2euap", + "tags": null, + "identity": { + "type": "SystemAssigned", + "principalId": "string", + "tenantId": "string" + }, + "type": "Microsoft.HybridCompute/machines", + "properties": { + "provisioningState": "Succeeded", + "agentVersion": null, + "status": null, + "lastStatusChange": null, + "errorDetails": null, + "displayName": null, + "machineFqdn": null, + "vmUuid": null, + "osSku": null, + "domainName": null, + "adFqdn": null, + "dnsFqdn": null, + "osName": null, + "osVersion": null, + "osProfile": { + "computerName": null + }, + "vmId": "b7a098cc-b0b8-46e8-a205-62f301a62a8f", + "locationData": { + "name": "Redmond" + }, + "clientPublicKey": "string", + "parentClusterResourceId": "{AzureStackHCIResourceId}", + "detectedProperties": null, + "privateLinkScopeResourceId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName" + } + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/PUTExtension.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/PUTExtension.json new file mode 100644 index 000000000000..8954799c6f01 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/PUTExtension.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "machineName": "myMachine", + "extensionName": "CustomScriptExtension", + "api-version": "2021-05-17-preview", + "extensionParameters": { + "location": "eastus2euap", + "properties": { + "publisher": "Microsoft.Compute", + "typeHandlerVersion": "1.10", + "type": "CustomScriptExtension", + "settings": { + "commandToExecute": "powershell.exe -c \"Get-Process | Where-Object { $_.CPU -gt 10000 }\"" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/Machines/myMachine/Extensions/CustomScriptExtension", + "name": "CustomScriptExtension", + "type": "Microsoft.HybridCompute/machines/extensions", + "location": "eastus2euap", + "properties": { + "publisher": "Microsoft.Compute", + "type": "string", + "typeHandlerVersion": "1.10.3", + "autoUpgradeMinorVersion": false, + "settings": "@{commandToExecute=powershell.exe -c \"Get-Process | Where-Object { $_.CPU -gt 10000 }\"}", + "protectedSettings": {}, + "provisioningState": "Succeeded", + "instanceView": { + "name": "CustomScriptExtension", + "type": "CustomScriptExtension", + "typeHandlerVersion": "1.10.3", + "status": { + "code": "success", + "level": "Information", + "message": "Finished executing command, StdOut: , StdErr:", + "time": "2020-08-08T20:42:10.999Z" + } + } + } + } + }, + "202": {} + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/PrivateEndpointConnectionDelete.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/PrivateEndpointConnectionDelete.json new file mode 100644 index 000000000000..86424bd03156 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/PrivateEndpointConnectionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myResourceGroup", + "scopeName": "myPrivateLinkScope", + "privateEndpointConnectionName": "private-endpoint-connection-name", + "api-version": "2021-05-17-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/PrivateEndpointConnectionGet.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/PrivateEndpointConnectionGet.json new file mode 100644 index 000000000000..c4d1350621a9 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/PrivateEndpointConnectionGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myResourceGroup", + "scopeName": "myPrivateLinkScope", + "privateEndpointConnectionName": "private-endpoint-connection-name", + "api-version": "2021-05-17-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/myPrivateLinkScope/privateEndpointConnections/private-endpoint-connection-name", + "name": "private-endpoint-connection-name", + "type": "Microsoft.HybridCompute/privateLinkScopes/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/PrivateEndpointConnectionList.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/PrivateEndpointConnectionList.json new file mode 100644 index 000000000000..d7350e8b5a56 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/PrivateEndpointConnectionList.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myResourceGroup", + "scopeName": "myPrivateLinkScope", + "api-version": "2021-05-17-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/myPrivateLinkScope/privateEndpointConnections/private-endpoint-connection-name-2", + "name": "private-endpoint-connection-name", + "type": "Microsoft.HybridCompute/privateLinkScopes/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/myPrivateLinkScope/privateEndpointConnections/private-endpoint-connection-name-2", + "name": "private-endpoint-connection-name-2", + "type": "Microsoft.HybridCompute/privateLinkScopes/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name-2" + }, + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "Please approve my connection.", + "actionsRequired": "None" + } + } + } + ] + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/PrivateEndpointConnectionUpdate.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/PrivateEndpointConnectionUpdate.json new file mode 100644 index 000000000000..7f309660c0e3 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/PrivateEndpointConnectionUpdate.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myResourceGroup", + "scopeName": "myPrivateLinkScope", + "privateEndpointConnectionName": "private-endpoint-connection-name", + "api-version": "2021-05-17-preview", + "parameters": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@contoso.com" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/myPrivateLinkScope/privateEndpointConnections/private-endpoint-connection-name", + "name": "private-endpoint-connection-name", + "type": "Microsoft.HybridCompute/privateLinkScopes/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@contoso.com", + "actionsRequired": "None" + } + } + } + }, + "202": {} + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/PrivateLinkScopePrivateLinkResourceGet.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/PrivateLinkScopePrivateLinkResourceGet.json new file mode 100644 index 000000000000..f6443d7aaf17 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/PrivateLinkScopePrivateLinkResourceGet.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myResourceGroup", + "scopeName": "myPrivateLinkScope", + "api-version": "2021-05-17-preview", + "groupName": "hybridcompute" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/myPrivateLinkScope/privateLinkResources/hybridcompute", + "name": "hybridcompute", + "type": "Microsoft.HybridCompute/privateLinkScopes/privateLinkResources", + "properties": { + "groupId": "hybridcompute", + "requiredMembers": [ + "HybridCompute.Server", + "HybridCompute.K8sConfiguration", + "GuestConfig.DP" + ], + "requiredZoneNames": [ + "privatelink.his.arc.azure.com", + "privatelink.kubernetesconfiguration.azure.com", + "privatelink.Guestconfiguration.azure.com" + ] + } + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/PrivateLinkScopePrivateLinkResourceListGet.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/PrivateLinkScopePrivateLinkResourceListGet.json new file mode 100644 index 000000000000..38ab69ef7bdf --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/PrivateLinkScopePrivateLinkResourceListGet.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myResourceGroup", + "scopeName": "myPrivateLinkScope", + "api-version": "2021-05-17-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/myPrivateLinkScope/privateLinkResources/hybridcompute", + "name": "hybridcompute", + "type": "Microsoft.HybridCompute/privateLinkScopes/privateLinkResources", + "properties": { + "groupId": "hybridcompute", + "requiredMembers": [ + "HybridCompute.ServerDP", + "HybridCompute.K8sConfigurationDP", + "HybridCompute.GuestConfigDP" + ], + "requiredZoneNames": [ + "privatelink.his.arc.azure.com", + "privatelink.kubernetesconfiguration.azure.com", + "privatelink.Guestconfiguration.azure.com" + ] + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/PrivateLinkScopesCreate.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/PrivateLinkScopesCreate.json new file mode 100644 index 000000000000..256fd49c6797 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/PrivateLinkScopesCreate.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "api-version": "2021-05-17-preview", + "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4919", + "resourceGroupName": "my-resource-group", + "scopeName": "my-privatelinkscope", + "parameters": { + "location": "westus" + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.hybridcompute/privateLinkScopes/my-privatelinkscope", + "name": "my-privatelinkscope", + "type": "Microsoft.HybridCompute/privateLinkScopes", + "location": "westus", + "tags": {}, + "properties": { + "privateLinkScopeId": "e5dc51d3-92ed-4d7e-947a-775ea79b4919", + "provisioningState": "Succeeded", + "publicNetworkAccess": "Disabled", + "privateEndpointConnections": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/myPrivateLinkScope/privateEndpointConnections/private-endpoint-connection-name", + "name": "private-endpoint-connection-name", + "type": "Microsoft.HybridCompute/privateLinkScopes/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.hybridcompute/privateLinkScopes/my-privatelinkscope", + "name": "my-privatelinkscope", + "type": "Microsoft.HybridCompute/privateLinkScopes", + "location": "westus", + "tags": {}, + "properties": { + "privateLinkScopeId": "e5dc51d3-92ed-4d7e-947a-775ea79b4919", + "provisioningState": "Succeeded", + "publicNetworkAccess": "Disabled", + "privateEndpointConnections": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/myPrivateLinkScope/privateEndpointConnections/private-endpoint-connection-name", + "name": "private-endpoint-connection-name", + "type": "Microsoft.HybridCompute/privateLinkScopes/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] + } + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/PrivateLinkScopesDelete.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/PrivateLinkScopesDelete.json new file mode 100644 index 000000000000..8e7c615053d5 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/PrivateLinkScopesDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-05-17-preview", + "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4919", + "resourceGroupName": "my-resource-group", + "scopeName": "my-privatelinkscope" + }, + "responses": { + "200": {}, + "204": {}, + "202": {} + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/PrivateLinkScopesGet.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/PrivateLinkScopesGet.json new file mode 100644 index 000000000000..e11ff572deaf --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/PrivateLinkScopesGet.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2021-05-17-preview", + "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4919", + "resourceGroupName": "my-resource-group", + "scopeName": "my-privatelinkscope" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.hybridcompute/privateLinkScopes/my-privatelinkscope", + "name": "my-privatelinkscope", + "type": "Microsoft.HybridCompute/privateLinkScopes", + "location": "westus", + "tags": {}, + "properties": { + "privateLinkScopeId": "f5dc51d3-92ed-4d7e-947a-775ea79b4919", + "provisioningState": "Succeeded", + "publicNetworkAccess": "Disabled", + "privateEndpointConnections": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/myPrivateLinkScope/privateEndpointConnections/private-endpoint-connection-name", + "name": "private-endpoint-connection-name", + "type": "Microsoft.HybridCompute/privateLinkScopes/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] + } + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/PrivateLinkScopesGetValidation.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/PrivateLinkScopesGetValidation.json new file mode 100644 index 000000000000..7f05d9d68764 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/PrivateLinkScopesGetValidation.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2021-05-17-preview", + "location": "wus2", + "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4919", + "privateLinkScopeId": "f5dc51d3-92ed-4d7e-947a-775ea79b4919" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.hybridcompute/privateLinkScopes/my-privatelinkscope", + "publicNetworkAccess": "Disabled", + "connectionDetails": [ + { + "id": "id", + "privateIpAddress": "ip", + "linkIdentifier": "linkId", + "groupId": "groupId", + "memberName": "memberName" + } + ] + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/PrivateLinkScopesGetValidationForMachine.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/PrivateLinkScopesGetValidationForMachine.json new file mode 100644 index 000000000000..2009ac6eef47 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/PrivateLinkScopesGetValidationForMachine.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2021-05-17-preview", + "location": "wus2", + "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4919", + "resourceGroupName": "my-resource-group", + "machineName": "machineName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.hybridcompute/privateLinkScopes/my-privatelinkscope", + "publicNetworkAccess": "Disabled", + "connectionDetails": [ + { + "id": "id", + "privateIpAddress": "ip", + "linkIdentifier": "linkId", + "groupId": "groupId", + "memberName": "memberName" + } + ] + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/PrivateLinkScopesList.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/PrivateLinkScopesList.json new file mode 100644 index 000000000000..9186b5292185 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/PrivateLinkScopesList.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2019-10-17-preview", + "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4919" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.hybridcompute/privateLinkScopes/my-privatelinkscope", + "name": "my-privatelinkscope", + "type": "Microsoft.HybridCompute/privateLinkScopes", + "location": "westus", + "tags": {}, + "properties": { + "privateLinkScopeId": "e5dc51d3-92ed-4d7e-947a-775ea79b4919", + "provisioningState": "Succeeded", + "publicNetworkAccess": "Disabled" + } + }, + { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.hybridcompute/privateLinkScopes/my-other-privatelinkscope", + "name": "my-other-privatelinkscope", + "type": "Microsoft.HybridCompute/privateLinkScopes", + "location": "westus", + "tags": {}, + "properties": { + "privateLinkScopeId": "f5dc51d3-92ed-4d7e-947a-775ea79b4919", + "provisioningState": "Succeeded", + "publicNetworkAccess": "Disabled", + "privateEndpointConnections": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/myPrivateLinkScope/privateEndpointConnections/private-endpoint-connection-name", + "name": "private-endpoint-connection-name", + "type": "Microsoft.HybridCompute/privateLinkScopes/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/PrivateLinkScopesListByResourceGroup.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/PrivateLinkScopesListByResourceGroup.json new file mode 100644 index 000000000000..5c41a80050af --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/PrivateLinkScopesListByResourceGroup.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "api-version": "2021-05-17-preview", + "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4919", + "resourceGroupName": "my-resource-group" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.hybridcompute/privateLinkScopes/my-privatelinkscope", + "name": "my-privatelinkscope", + "type": "Microsoft.HybridCompute/privateLinkScopes", + "location": "westus", + "tags": {}, + "properties": { + "privateLinkScopeId": "f5dc51d3-92ed-4d7e-947a-775ea79b4919", + "provisioningState": "Succeeded", + "publicNetworkAccess": "Disabled", + "privateEndpointConnections": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/myPrivateLinkScope/privateEndpointConnections/private-endpoint-connection-name", + "name": "private-endpoint-connection-name", + "type": "Microsoft.HybridCompute/privateLinkScopes/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] + } + }, + { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.hybridcompute/privateLinkScopes/my-other-privatelinkscope", + "name": "my-other-privatelinkscope", + "type": "Microsoft.HybridCompute/privateLinkScopes", + "location": "westus", + "tags": {}, + "properties": { + "privateLinkScopeId": "a5dc51d3-92ed-4d7e-947a-775ea79b4919", + "provisioningState": "Succeeded", + "publicNetworkAccess": "Disabled", + "privateEndpointConnections": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/myPrivateLinkScope/privateEndpointConnections/private-endpoint-connection-name", + "name": "private-endpoint-connection-name", + "type": "Microsoft.HybridCompute/privateLinkScopes/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/PrivateLinkScopesUpdate.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/PrivateLinkScopesUpdate.json new file mode 100644 index 000000000000..22968294d8d1 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/PrivateLinkScopesUpdate.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "api-version": "2021-05-17-preview", + "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4919", + "resourceGroupName": "my-resource-group", + "scopeName": "my-privatelinkscope", + "parameters": { + "location": "westus", + "tags": { + "Tag1": "Value1" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.hybridCompute/privateLinkScopes/my-privatelinkscope", + "name": "my-privatelinkscope", + "type": "Microsoft.HybridCompute/privateLinkScopes", + "location": "westus", + "tags": { + "Tag1": "Value1" + }, + "properties": { + "privateLinkScopeId": "e5dc51d3-92ed-4d7e-947a-775ea79b4919", + "provisioningState": "Succeeded", + "publicNetworkAccess": "Disabled", + "privateEndpointConnections": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/myPrivateLinkScope/privateEndpointConnections/private-endpoint-connection-name", + "name": "private-endpoint-connection-name", + "type": "Microsoft.HybridCompute/privateLinkScopes/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.hybridCompute/privateLinkScopes/my-privatelinkscope", + "name": "my-privatelinkscope", + "type": "Microsoft.HybridCompute/privateLinkScopes", + "location": "westus", + "tags": { + "Tag1": "Value1" + }, + "properties": { + "privateLinkScopeId": "e5dc51d3-92ed-4d7e-947a-775ea79b4919", + "provisioningState": "Succeeded", + "publicNetworkAccess": "Disabled", + "privateEndpointConnections": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/myPrivateLinkScope/privateEndpointConnections/private-endpoint-connection-name", + "name": "private-endpoint-connection-name", + "type": "Microsoft.HybridCompute/privateLinkScopes/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] + } + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/PrivateLinkScopesUpdateTagsOnly.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/PrivateLinkScopesUpdateTagsOnly.json new file mode 100644 index 000000000000..20596dda09ad --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/PrivateLinkScopesUpdateTagsOnly.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "api-version": "2021-05-17-preview", + "subscriptionId": "subid", + "resourceGroupName": "my-resource-group", + "scopeName": "my-privatelinkscope", + "PrivateLinkScopeTags": { + "tags": { + "Tag1": "Value1", + "Tag2": "Value2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.hybridcompute/privateLinkScopes/my-privatelinkscope", + "name": "my-privatelinkscope", + "type": "Microsoft.HybridCompute/privateLinkScopes", + "location": "westus", + "tags": { + "Tag1": "Value1", + "Tag2": "Value2" + }, + "properties": { + "privateLinkScopeId": "e5dc51d3-92ed-4d7e-947a-775ea79b4919", + "provisioningState": "Succeeded", + "publicNetworkAccess": "Disabled", + "privateEndpointConnections": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/myPrivateLinkScope/privateEndpointConnections/private-endpoint-connection-name", + "name": "private-endpoint-connection-name", + "type": "Microsoft.HybridCompute/privateLinkScopes/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] + } + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/UpdateExtension.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/UpdateExtension.json new file mode 100644 index 000000000000..92f2511fff14 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/examples/UpdateExtension.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "machineName": "myMachine", + "extensionName": "CustomScriptExtension", + "api-version": "2021-05-17-preview", + "extensionParameters": { + "properties": { + "publisher": "Microsoft.Compute", + "typeHandlerVersion": "1.10", + "type": "CustomScriptExtension", + "settings": { + "commandToExecute": "powershell.exe -c \"Get-Process | Where-Object { $_.CPU -lt 100 }\"" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/Machines/myMachine/Extensions/CustomScriptExtension", + "name": "CustomScriptExtension", + "type": "Microsoft.HybridCompute/machines/extensions", + "location": "eastus2euap", + "properties": { + "publisher": "Microsoft.Compute", + "type": "string", + "typeHandlerVersion": "1.10.3", + "autoUpgradeMinorVersion": false, + "settings": "@{commandToExecute=powershell.exe -c \"Get-Process | Where-Object { $_.CPU -lt 100 }\"}", + "protectedSettings": {}, + "provisioningState": "Succeeded", + "instanceView": { + "name": "CustomScriptExtension", + "type": "CustomScriptExtension", + "typeHandlerVersion": "1.10.3", + "status": { + "code": "success", + "level": "Information", + "message": "Finished executing command, StdOut: , StdErr:", + "time": "2020-01-08T20:42:10.999Z" + } + } + } + } + }, + "202": {} + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/privateLinkScopes.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/privateLinkScopes.json new file mode 100644 index 000000000000..2a0970385ef5 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2021-05-17-preview/privateLinkScopes.json @@ -0,0 +1,1083 @@ +{ + "swagger": "2.0", + "info": { + "title": "HybridComputeManagementClient", + "x-ms-code-generation-settings": { + "name": "HybridComputeManagementClient" + }, + "description": "Azure Arc( Servers and K8s Clusters) API reference for Private Link's Scopes management.", + "version": "2021-05-17-preview" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.HybridCompute/privateLinkScopes": { + "get": { + "description": "Gets a list of all Azure Arc PrivateLinkScopes within a subscription.", + "operationId": "PrivateLinkScopes_List", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A list containing 0 or more Azure Arc PrivateLinkScope definitions.", + "schema": { + "$ref": "#/definitions/HybridComputePrivateLinkScopeListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "PrivateLinkScopesList.json": { + "$ref": "./examples/PrivateLinkScopesList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/privateLinkScopes": { + "get": { + "description": "Gets a list of Azure Arc PrivateLinkScopes within a resource group.", + "operationId": "PrivateLinkScopes_ListByResourceGroup", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A list containing 0 or more Azure Arc PrivateLinkScope definitions.", + "schema": { + "$ref": "#/definitions/HybridComputePrivateLinkScopeListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "PrivateLinkScopeListByResourceGroup": { + "$ref": "./examples/PrivateLinkScopesListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/privateLinkScopes/{scopeName}": { + "delete": { + "description": "Deletes a Azure Arc PrivateLinkScope.", + "operationId": "PrivateLinkScopes_Delete", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + } + ], + "responses": { + "200": { + "description": "Successful request when deleting an Azure Arc PrivateLinkScope." + }, + "202": { + "description": "Accepted." + }, + "204": { + "description": "The specified PrivateLinkScope does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "PrivateLinkScopesDelete": { + "$ref": "./examples/PrivateLinkScopesDelete.json" + } + } + }, + "get": { + "description": "Returns a Azure Arc PrivateLinkScope.", + "operationId": "PrivateLinkScopes_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + } + ], + "responses": { + "200": { + "description": "Azure Arc PrivateLinkScope definition.", + "schema": { + "$ref": "#/definitions/HybridComputePrivateLinkScope" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "PrivateLinkScopeGet": { + "$ref": "./examples/PrivateLinkScopesGet.json" + } + } + }, + "put": { + "description": "Creates (or updates) a Azure Arc PrivateLinkScope. Note: You cannot specify a different value for InstrumentationKey nor AppId in the Put operation.", + "operationId": "PrivateLinkScopes_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + }, + { + "name": "parameters", + "description": "Properties that need to be specified to create or update a Azure Arc for Servers and Clusters PrivateLinkScope.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/HybridComputePrivateLinkScope" + } + } + ], + "responses": { + "200": { + "description": "Successful request when creating or updating a Azure Arc PrivateLinkScope. The updated PrivateLinkScope is returned.", + "schema": { + "$ref": "#/definitions/HybridComputePrivateLinkScope" + } + }, + "201": { + "description": "Successful request when creating or updating a Azure Arc PrivateLinkScope. The updated PrivateLinkScope was created and is returned.", + "schema": { + "$ref": "#/definitions/HybridComputePrivateLinkScope" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "PrivateLinkScopeCreate": { + "$ref": "./examples/PrivateLinkScopesCreate.json" + }, + "PrivateLinkScopeUpdate": { + "$ref": "./examples/PrivateLinkScopesUpdate.json" + } + } + }, + "patch": { + "description": "Updates an existing PrivateLinkScope's tags. To update other fields use the CreateOrUpdate method.", + "operationId": "PrivateLinkScopes_UpdateTags", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + }, + { + "name": "PrivateLinkScopeTags", + "description": "Updated tag information to set into the PrivateLinkScope instance.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TagsResource" + } + } + ], + "responses": { + "200": { + "description": "Updating the Azure Arc PrivateLinkScope's tags was successful. PrivateLinkScope tags are updated and returned with the rest of the PrivateLinkScope's object properties.", + "schema": { + "$ref": "#/definitions/HybridComputePrivateLinkScope" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "PrivateLinkScopeUpdateTagsOnly": { + "$ref": "./examples/PrivateLinkScopesUpdateTagsOnly.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/privateLinkScopes/{scopeName}/privateLinkResources": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "description": "Gets the private link resources that need to be created for a Azure Monitor PrivateLinkScope.", + "operationId": "PrivateLinkResources_ListByPrivateLinkScope", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private link resources.", + "schema": { + "$ref": "#/definitions/PrivateLinkResourceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Gets private endpoint connection.": { + "$ref": "./examples/PrivateLinkScopePrivateLinkResourceListGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/privateLinkScopes/{scopeName}/privateLinkResources/{groupName}": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "description": "Gets the private link resources that need to be created for a Azure Monitor PrivateLinkScope.", + "operationId": "PrivateLinkResources_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + }, + { + "$ref": "#/parameters/GroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved a specified private link resource.", + "schema": { + "$ref": "#/definitions/PrivateLinkResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Gets private endpoint connection.": { + "$ref": "./examples/PrivateLinkScopePrivateLinkResourceGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/privateLinkScopes/{scopeName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Gets a private endpoint connection.", + "operationId": "PrivateEndpointConnections_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved a specified private endpoint connection.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Gets private endpoint connection.": { + "$ref": "./examples/PrivateEndpointConnectionGet.json" + } + } + }, + "put": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Approve or reject a private endpoint connection with a given name.", + "operationId": "PrivateEndpointConnections_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + } + ], + "responses": { + "200": { + "description": "Successfully approved or rejected private endpoint connection.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Approve or reject a private endpoint connection with a given name.": { + "$ref": "./examples/PrivateEndpointConnectionUpdate.json" + } + } + }, + "delete": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Deletes a private endpoint connection with a given name.", + "operationId": "PrivateEndpointConnections_Delete", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Successfully deleted private endpoint connection." + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "Private endpoint connection does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Deletes a private endpoint connection with a given name.": { + "$ref": "./examples/PrivateEndpointConnectionDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/privateLinkScopes/{scopeName}/privateEndpointConnections": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Gets all private endpoint connections on a private link scope.", + "operationId": "PrivateEndpointConnections_ListByPrivateLinkScope", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private endpoint connections.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets list of private endpoint connections on a private link scope.": { + "$ref": "./examples/PrivateEndpointConnectionList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.HybridCompute/locations/{location}/privateLinkScopes/{privateLinkScopeId}": { + "get": { + "description": "Returns a Azure Arc PrivateLinkScope's validation details.", + "operationId": "PrivateLinkScopes_GetValidationDetails", + "parameters": [ + { + "$ref": "#/parameters/LocationParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeId" + } + ], + "responses": { + "200": { + "description": "Azure Arc PrivateLinkScope validation details definition.", + "schema": { + "$ref": "#/definitions/PrivateLinkScopeValidationDetails" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "PrivateLinkScopeGet": { + "$ref": "./examples/PrivateLinkScopesGetValidation.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}/privateLinkScopes/current": { + "get": { + "description": "Returns a Azure Arc PrivateLinkScope's validation details for a given machine.", + "operationId": "PrivateLinkScopes_GetValidationDetailsForMachine", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/MachineNameParameter" + } + ], + "responses": { + "200": { + "description": "Azure Arc PrivateLinkScope validation details definition.", + "schema": { + "$ref": "#/definitions/PrivateLinkScopeValidationDetails" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "PrivateLinkScopeGet": { + "$ref": "./examples/PrivateLinkScopesGetValidationForMachine.json" + } + } + } + } + }, + "definitions": { + "PrivateLinkScopesResource": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "Azure resource Id" + }, + "name": { + "type": "string", + "description": "Azure resource name", + "readOnly": true + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Azure resource type" + }, + "location": { + "type": "string", + "description": "Resource location", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "tags": { + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "required": [ + "location" + ], + "x-ms-azure-resource": true, + "description": "An azure resource object" + }, + "TagsResource": { + "properties": { + "tags": { + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "description": "A container holding only the Tags for a resource, allowing the user to update the tags on a PrivateLinkScope instance." + }, + "HybridComputePrivateLinkScope": { + "properties": { + "properties": { + "description": "Properties that define a Azure Arc PrivateLinkScope resource.", + "$ref": "#/definitions/HybridComputePrivateLinkScopeProperties" + }, + "systemData": { + "readOnly": true, + "description": "The system meta data relating to this resource.", + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/systemData" + } + }, + "allOf": [ + { + "$ref": "#/definitions/PrivateLinkScopesResource" + } + ], + "description": "An Azure Arc PrivateLinkScope definition." + }, + "PrivateLinkScopeValidationDetails": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "Azure resource Id" + }, + "publicNetworkAccess": { + "description": "Indicates whether machines associated with the private link scope can also use public Azure Arc service endpoints.", + "$ref": "#/definitions/PublicNetworkAccessType" + }, + "connectionDetails": { + "type": "array", + "description": "List of Private Endpoint Connection details.", + "items": { + "$ref": "#/definitions/ConnectionDetail" + } + } + } + }, + "ConnectionDetail": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "Azure resource Id" + }, + "privateIpAddress": { + "type": "string", + "readOnly": true, + "description": "The private endpoint connection private ip address" + }, + "linkIdentifier": { + "type": "string", + "readOnly": true, + "description": "The private endpoint connection link identifier" + }, + "groupId": { + "type": "string", + "readOnly": true, + "description": "The private endpoint connection group id" + }, + "memberName": { + "type": "string", + "readOnly": true, + "description": "The private endpoint connection member name" + } + } + }, + "HybridComputePrivateLinkScopeProperties": { + "description": "Properties that define a Azure Arc PrivateLinkScope resource.", + "properties": { + "publicNetworkAccess": { + "description": "Indicates whether machines associated with the private link scope can also use public Azure Arc service endpoints.", + "$ref": "#/definitions/PublicNetworkAccessType" + }, + "provisioningState": { + "type": "string", + "description": "Current state of this PrivateLinkScope: whether or not is has been provisioned within the resource group it is defined. Users cannot change this value but are able to read from it. Values will include Provisioning ,Succeeded, Canceled and Failed.", + "readOnly": true + }, + "privateLinkScopeId": { + "readOnly": true, + "description": "The Guid id of the private link scope.", + "type": "string" + }, + "privateEndpointConnections": { + "readOnly": true, + "description": "The collection of associated Private Endpoint Connections.", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnectionDataModel" + } + } + } + }, + "HybridComputePrivateLinkScopeListResult": { + "description": "Describes the list of Azure Arc PrivateLinkScope resources.", + "required": [ + "value" + ], + "properties": { + "value": { + "type": "array", + "description": "List of Azure Arc PrivateLinkScope definitions.", + "items": { + "$ref": "#/definitions/HybridComputePrivateLinkScope" + } + }, + "nextLink": { + "type": "string", + "description": "The URI to get the next set of Azure Arc PrivateLinkScope definitions if too many PrivateLinkScopes where returned in the result set." + } + } + }, + "PrivateLinkResourceListResult": { + "description": "A list of private link resources", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "PrivateLinkResource": { + "description": "A private link resource", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "Resource properties." + }, + "systemData": { + "readOnly": true, + "description": "The system meta data relating to this resource.", + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/systemData" + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ] + }, + "PrivateLinkResourceProperties": { + "description": "Properties of a private link resource.", + "type": "object", + "properties": { + "groupId": { + "description": "The private link resource group id.", + "type": "string", + "readOnly": true + }, + "requiredMembers": { + "description": "The private link resource required member names.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "requiredZoneNames": { + "description": "Required DNS zone names of the the private link resource.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + } + } + }, + "PrivateEndpointConnectionDataModel": { + "description": "The Data Model for a Private Endpoint Connection associated with a Private Link Scope", + "type": "object", + "properties": { + "id": { + "description": "The ARM Resource Id of the Private Endpoint.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The Name of the Private Endpoint.", + "type": "string", + "readOnly": true + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Azure resource type" + }, + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "description": "The Private Endpoint Connection properties." + } + } + }, + "PrivateEndpointConnectionProperties": { + "description": "Properties of a private endpoint connection.", + "type": "object", + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpointProperty", + "description": "Private endpoint which the connection belongs to." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionStateProperty", + "description": "Connection state of the private endpoint connection." + }, + "provisioningState": { + "description": "State of the private endpoint connection.", + "type": "string", + "readOnly": true + } + } + }, + "PrivateEndpointProperty": { + "description": "Private endpoint which the connection belongs to.", + "type": "object", + "properties": { + "id": { + "description": "Resource id of the private endpoint.", + "type": "string" + } + } + }, + "PrivateLinkServiceConnectionStateProperty": { + "description": "State of the private endpoint connection.", + "type": "object", + "required": [ + "status", + "description" + ], + "properties": { + "status": { + "description": "The private link service connection status.", + "type": "string" + }, + "description": { + "description": "The private link service connection description.", + "type": "string" + }, + "actionsRequired": { + "description": "The actions required for private link service connection.", + "type": "string", + "readOnly": true + } + } + }, + "PrivateEndpointConnection": { + "description": "A private endpoint connection", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "description": "Resource properties." + }, + "systemData": { + "readOnly": true, + "description": "The system meta data relating to this resource.", + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/systemData" + } + } + }, + "PrivateEndpointConnectionListResult": { + "description": "A list of private endpoint connections.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "PublicNetworkAccessType": { + "type": "string", + "description": "The network access policy to determine if Azure Arc agents can use public Azure Arc service endpoints. Defaults to disabled (access to Azure Arc services only via private link).", + "default": "Disabled", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "PublicNetworkAccessType", + "modelAsString": true, + "values": [ + { + "value": "Enabled", + "description": "Allows Azure Arc agents to communicate with Azure Arc services over both public (internet) and private endpoints." + }, + { + "value": "Disabled", + "description": "Does not allow Azure Arc agents to communicate with Azure Arc services over public (internet) endpoints. The agents must use the private link." + } + ] + } + } + }, + "parameters": { + "PrivateLinkScopeName": { + "name": "scopeName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Azure Arc PrivateLinkScope resource.", + "x-ms-parameter-location": "method" + }, + "PrivateLinkScopeId": { + "name": "privateLinkScopeId", + "in": "path", + "required": true, + "type": "string", + "description": "The id (Guid) of the Azure Arc PrivateLinkScope resource.", + "x-ms-parameter-location": "method" + }, + "GroupNameParameter": { + "name": "groupName", + "in": "path", + "description": "The name of the private link resource.", + "required": true, + "x-ms-parameter-location": "method", + "type": "string" + }, + "LocationParameter": { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "The location of the target resource.", + "minLength": 1 + }, + "MachineNameParameter": { + "name": "machineName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the target machine to get the private link scope validation details for.", + "minLength": 1, + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/HybridCompute.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/HybridCompute.json new file mode 100644 index 000000000000..3ee037823ca8 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/HybridCompute.json @@ -0,0 +1,1202 @@ +{ + "swagger": "2.0", + "info": { + "title": "HybridComputeManagementClient", + "description": "The Hybrid Compute Management Client.", + "version": "2021-05-20" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://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.HybridCompute/machines/{machineName}": { + "put": { + "tags": [ + "machines" + ], + "operationId": "Machines_CreateOrUpdate", + "description": "The operation to create or update a hybrid machine resource identity in Azure.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "machineName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the hybrid machine." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Machine" + }, + "description": "Parameters supplied to the Create hybrid machine operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Machine" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or Update a Machine": { + "$ref": "./examples/Machines_CreateOrUpdate.json" + } + } + }, + "patch": { + "tags": [ + "machines" + ], + "operationId": "Machines_Update", + "description": "The operation to update a hybrid machine.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "machineName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the hybrid machine." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/MachineUpdate" + }, + "description": "Parameters supplied to the Update hybrid machine operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Machine" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Update a Machine": { + "$ref": "./examples/Machines_Update.json" + } + } + }, + "delete": { + "tags": [ + "machines" + ], + "operationId": "Machines_Delete", + "description": "The operation to remove a hybrid machine identity in Azure.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "machineName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the hybrid machine." + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete a Machine": { + "$ref": "./examples/Machines_Delete.json" + } + } + }, + "get": { + "tags": [ + "machines" + ], + "operationId": "Machines_Get", + "description": "Retrieves information about the model view or the instance view of a hybrid machine.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "machineName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the hybrid machine." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation.", + "enum": [ + "instanceView" + ], + "x-ms-enum": { + "name": "InstanceViewTypes", + "modelAsString": true + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Machine" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Machine": { + "$ref": "./examples/Machines_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines": { + "get": { + "tags": [ + "machines" + ], + "operationId": "Machines_ListByResourceGroup", + "description": "Lists all the hybrid machines in the specified resource group. Use the nextLink property in the response to get the next page of hybrid machines.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MachineListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List Machines by resource group": { + "$ref": "./examples/Machines_ListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.HybridCompute/machines": { + "get": { + "tags": [ + "machines" + ], + "operationId": "Machines_ListBySubscription", + "description": "Lists all the hybrid machines in the specified subscription. Use the nextLink property in the response to get the next page of hybrid machines.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MachineListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List Machines by resource group": { + "$ref": "./examples/Machines_ListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}/extensions/{extensionName}": { + "put": { + "tags": [ + "MachineExtensions" + ], + "operationId": "MachineExtensions_CreateOrUpdate", + "description": "The operation to create or update the extension.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "machineName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the machine where the extension should be created or updated." + }, + { + "name": "extensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the machine extension." + }, + { + "name": "extensionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/MachineExtension" + }, + "description": "Parameters supplied to the Create Machine Extension operation." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MachineExtension" + } + }, + "202": { + "description": "HTTP 202 (Accepted) if the operation was successfully started and will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or Update a Machine Extension": { + "$ref": "./examples/PUTExtension.json" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "MachineExtensions" + ], + "operationId": "MachineExtensions_Update", + "description": "The operation to create or update the extension.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "machineName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the machine where the extension should be created or updated." + }, + { + "name": "extensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the machine extension." + }, + { + "name": "extensionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/MachineExtensionUpdate" + }, + "description": "Parameters supplied to the Create Machine Extension operation." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MachineExtension" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or Update a Machine Extension": { + "$ref": "./examples/UpdateExtension.json" + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "MachineExtensions" + ], + "operationId": "MachineExtensions_Delete", + "description": "The operation to delete the extension.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "machineName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the machine where the extension should be deleted." + }, + { + "name": "extensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the machine extension." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete a Machine Extension": { + "$ref": "./examples/DELETEExtension.json" + } + } + }, + "get": { + "tags": [ + "MachineExtensions" + ], + "operationId": "MachineExtensions_Get", + "description": "The operation to get the extension.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "machineName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the machine containing the extension." + }, + { + "name": "extensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the machine extension." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MachineExtension" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "GET Machine Extension": { + "$ref": "./examples/GETExtension.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}/extensions": { + "get": { + "tags": [ + "MachineExtensions" + ], + "operationId": "MachineExtensions_List", + "description": "The operation to get all extensions of a non-Azure machine", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "machineName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the machine containing the extension." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MachineExtensionsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GET all Machine Extensions": { + "$ref": "./examples/LISTExtension.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}/upgradeExtensions": { + "post": { + "tags": [ + "MachineExtensions Upgrade" + ], + "operationId": "UpgradeExtensions", + "description": "The operation to Upgrade Machine Extensions.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "machineName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the hybrid machine." + }, + { + "name": "extensionUpgradeParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/MachineExtensionUpgrade" + }, + "description": "Parameters supplied to the Upgrade Extensions operation." + } + ], + "responses": { + "202": { + "description": "HTTP 202 (Accepted) if the operation was successfully started and will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Upgrade Machine Extensions": { + "$ref": "./examples/Extensions_Upgrade.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/providers/Microsoft.HybridCompute/operations": { + "get": { + "tags": [ + "operations" + ], + "operationId": "Operations_List", + "description": "Gets a list of hybrid compute operations.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + } + }, + "definitions": { + "OperationListResult": { + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/OperationValue" + }, + "description": "The list of compute operations" + } + }, + "description": "The List Compute Operation operation response." + }, + "OperationValue": { + "properties": { + "origin": { + "type": "string", + "readOnly": true, + "description": "The origin of the compute operation." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the compute operation." + }, + "display": { + "$ref": "#/definitions/OperationValueDisplay", + "description": "Display properties" + } + }, + "description": "Describes the properties of a Compute Operation value." + }, + "OperationValueDisplay": { + "properties": { + "operation": { + "type": "string", + "readOnly": true, + "description": "The display name of the compute operation." + }, + "resource": { + "type": "string", + "readOnly": true, + "description": "The display name of the resource the operation applies to." + }, + "description": { + "type": "string", + "readOnly": true, + "description": "The description of the operation." + }, + "provider": { + "type": "string", + "readOnly": true, + "description": "The resource provider for the operation." + } + }, + "description": "Describes the properties of a Hybrid Compute Operation Value Display." + }, + "OSProfile": { + "readOnly": true, + "properties": { + "computerName": { + "type": "string", + "readOnly": true, + "description": "Specifies the host OS name of the hybrid machine." + } + }, + "description": "Specifies the operating system settings for the hybrid machine." + }, + "DetectedProperties": { + "readOnly": true, + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Detected properties from the machine." + }, + "MachineProperties": { + "properties": { + "locationData": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/locationData" + }, + "osProfile": { + "$ref": "#/definitions/OSProfile", + "description": "Specifies the operating system settings for the hybrid machine." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state, which only appears in the response." + }, + "status": { + "readOnly": true, + "type": "string", + "description": "The status of the hybrid machine agent.", + "enum": [ + "Connected", + "Disconnected", + "Error" + ], + "x-ms-enum": { + "name": "StatusTypes", + "modelAsString": true + } + }, + "lastStatusChange": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The time of the last status change." + }, + "errorDetails": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorDetail" + }, + "description": "Details about the error state." + }, + "agentVersion": { + "readOnly": true, + "type": "string", + "description": "The hybrid machine agent full version." + }, + "vmId": { + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ], + "description": "Specifies the hybrid machine unique ID." + }, + "displayName": { + "readOnly": true, + "type": "string", + "description": "Specifies the hybrid machine display name." + }, + "machineFqdn": { + "readOnly": true, + "type": "string", + "description": "Specifies the hybrid machine FQDN." + }, + "clientPublicKey": { + "type": "string", + "description": "Public Key that the client provides to be used during initial resource onboarding" + }, + "osName": { + "readOnly": true, + "type": "string", + "description": "The Operating System running on the hybrid machine." + }, + "osVersion": { + "readOnly": true, + "type": "string", + "description": "The version of Operating System running on the hybrid machine." + }, + "vmUuid": { + "readOnly": true, + "type": "string", + "description": "Specifies the Arc Machine's unique SMBIOS ID" + }, + "extensions": { + "type": "array", + "items": { + "$ref": "#/definitions/MachineExtensionInstanceView" + }, + "description": "Machine Extensions information" + }, + "osSku": { + "readOnly": true, + "type": "string", + "description": "Specifies the Operating System product SKU." + }, + "domainName": { + "readOnly": true, + "type": "string", + "description": "Specifies the Windows domain name." + }, + "adFqdn": { + "readOnly": true, + "type": "string", + "description": "Specifies the AD fully qualified display name." + }, + "dnsFqdn": { + "readOnly": true, + "type": "string", + "description": "Specifies the DNS fully qualified display name." + }, + "privateLinkScopeResourceId": { + "type": "string", + "description": "The resource id of the private link scope this machine is assigned to, if any." + }, + "parentClusterResourceId": { + "type": "string", + "description": "The resource id of the parent cluster (Azure HCI) this machine is assigned to, if any." + }, + "detectedProperties": { + "$ref": "#/definitions/DetectedProperties", + "description": "Detected properties from the machine." + } + }, + "description": "Describes the properties of a hybrid machine." + }, + "MachineUpdateProperties": { + "properties": { + "locationData": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/locationData" + }, + "parentClusterResourceId": { + "type": "string", + "description": "The resource id of the parent cluster (Azure HCI) this machine is assigned to, if any." + }, + "privateLinkScopeResourceId": { + "type": "string", + "description": "The resource id of the private link scope this machine is assigned to, if any." + } + }, + "description": "Describes the ARM updatable properties of a hybrid machine." + }, + "Machine": { + "properties": { + "properties": { + "$ref": "#/definitions/MachineProperties", + "description": "Hybrid Compute Machine properties" + }, + "identity": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Identity" + }, + "systemData": { + "readOnly": true, + "description": "The system meta data relating to this resource.", + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/systemData" + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/TrackedResource" + } + ], + "description": "Describes a hybrid machine." + }, + "MachineUpdate": { + "properties": { + "identity": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Identity" + }, + "properties": { + "$ref": "#/definitions/MachineUpdateProperties", + "description": "Hybrid Compute Machine properties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ResourceUpdate" + } + ], + "description": "Describes a hybrid machine Update." + }, + "MachineListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Machine" + }, + "description": "The list of hybrid machines." + }, + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of Machines. Call ListNext() with this URI to fetch the next page of hybrid machines." + } + }, + "required": [ + "value" + ], + "description": "The List hybrid machine operation response." + }, + "ResourceUpdate": { + "description": "The Update Resource model definition.", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + } + }, + "MachineExtension": { + "properties": { + "properties": { + "$ref": "#/definitions/MachineExtensionProperties", + "description": "Describes Machine Extension Properties." + }, + "systemData": { + "readOnly": true, + "description": "The system meta data relating to this resource.", + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/systemData" + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/TrackedResource" + } + ], + "description": "Describes a Machine Extension." + }, + "MachineExtensionUpdate": { + "properties": { + "properties": { + "$ref": "#/definitions/MachineExtensionUpdateProperties", + "description": "Describes Machine Extension Update Properties." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ResourceUpdate" + } + ], + "description": "Describes a Machine Extension Update." + }, + "MachineExtensionProperties": { + "properties": { + "forceUpdateTag": { + "type": "string", + "description": "How the extension handler should be forced to update even if the extension configuration has not changed." + }, + "publisher": { + "type": "string", + "description": "The name of the extension handler publisher." + }, + "type": { + "type": "string", + "description": "Specifies the type of the extension; an example is \"CustomScriptExtension\"." + }, + "typeHandlerVersion": { + "type": "string", + "description": "Specifies the version of the script handler." + }, + "autoUpgradeMinorVersion": { + "type": "boolean", + "description": "Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true." + }, + "settings": { + "type": "object", + "description": "Json formatted public settings for the extension." + }, + "protectedSettings": { + "type": "object", + "description": "The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state, which only appears in the response." + }, + "instanceView": { + "$ref": "#/definitions/MachineExtensionInstanceView", + "description": "The machine extension instance view." + } + }, + "description": "Describes the properties of a Machine Extension." + }, + "MachineExtensionUpdateProperties": { + "properties": { + "forceUpdateTag": { + "type": "string", + "description": "How the extension handler should be forced to update even if the extension configuration has not changed." + }, + "publisher": { + "type": "string", + "description": "The name of the extension handler publisher." + }, + "type": { + "type": "string", + "description": "Specifies the type of the extension; an example is \"CustomScriptExtension\"." + }, + "typeHandlerVersion": { + "type": "string", + "description": "Specifies the version of the script handler." + }, + "autoUpgradeMinorVersion": { + "type": "boolean", + "description": "Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true." + }, + "settings": { + "type": "object", + "description": "Json formatted public settings for the extension." + }, + "protectedSettings": { + "type": "object", + "description": "The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all." + } + }, + "description": "Describes the properties of a Machine Extension." + }, + "MachineExtensionInstanceView": { + "properties": { + "name": { + "type": "string", + "description": "The machine extension name." + }, + "type": { + "type": "string", + "description": "Specifies the type of the extension; an example is \"CustomScriptExtension\"." + }, + "typeHandlerVersion": { + "type": "string", + "description": "Specifies the version of the script handler." + }, + "status": { + "properties": { + "code": { + "type": "string", + "description": "The status code." + }, + "level": { + "type": "string", + "description": "The level code.", + "enum": [ + "Info", + "Warning", + "Error" + ], + "x-ms-enum": { + "name": "StatusLevelTypes", + "modelAsString": true + } + }, + "displayStatus": { + "type": "string", + "description": "The short localizable label for the status." + }, + "message": { + "type": "string", + "description": "The detailed status message, including for alerts and error messages." + }, + "time": { + "type": "string", + "format": "date-time", + "description": "The time of the status." + } + }, + "description": "Instance view status." + } + }, + "description": "Describes the Machine Extension Instance View." + }, + "MachineExtensionsListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/MachineExtension" + }, + "description": "The list of extensions" + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of machine extensions. Call ListNext() with this to fetch the next page of extensions." + } + }, + "description": "Describes the Machine Extensions List Result." + }, + "TargetVersion": { + "type": "string", + "description": "Extension Upgrade Target Version." + }, + "ExtensionTargetProperties": { + "properties": { + "targetVersion": { + "type": "object", + "$ref": "#/definitions/TargetVersion", + "description": "Properties for the specified Extension to Upgrade." + } + }, + "description": "Describes the Machine Extension Target Version Properties" + }, + "ExtensionTarget": { + "additionalProperties": { + "type": "object", + "$ref": "#/definitions/ExtensionTargetProperties" + }, + "description": "Describes the Machine Extension Target Properties" + }, + "MachineExtensionUpgrade": { + "properties": { + "extensionTargets": { + "$ref": "#/definitions/ExtensionTarget", + "description": "Describes the Extension Target Properties." + } + }, + "description": "Describes the Machine Extension Upgrade Properties" + } + }, + "parameters": {} +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/DELETEExtension.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/DELETEExtension.json new file mode 100644 index 000000000000..4fc15aac3685 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/DELETEExtension.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "machineName": "myMachine", + "extensionName": "MMA", + "api-version": "2021-05-20" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/Extensions_Upgrade.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/Extensions_Upgrade.json new file mode 100644 index 000000000000..e4f6e59f06bc --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/Extensions_Upgrade.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "machineName": "myMachine", + "api-version": "2021-05-20", + "extensionUpgradeParameters": { + "extensionTargets": { + "Microsoft.Compute.CustomScriptExtension": { + "targetVersion": "1.10" + }, + "Microsoft.Azure.Monitoring": { + "targetVersion": "2.0" + } + } + } + }, + "responses": { + "202": {} + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/GETExtension.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/GETExtension.json new file mode 100644 index 000000000000..c0789c8bf890 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/GETExtension.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "machineName": "myMachine", + "extensionName": "CustomScriptExtension", + "api-version": "2021-05-20" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/Machines/myMachine/Extensions/CustomScriptExtension", + "name": "CustomScriptExtension", + "type": "Microsoft.HybridCompute/machines/extensions", + "location": "eastus2euap", + "properties": { + "publisher": "Microsoft.Compute", + "type": "string", + "typeHandlerVersion": "1.10.3", + "autoUpgradeMinorVersion": false, + "settings": "@{commandToExecute=powershell.exe -c \"Get-Process | Where-Object { $_.CPU -gt 10000 }\"}", + "protectedSettings": {}, + "provisioningState": "Succeeded", + "instanceView": { + "name": "CustomScriptExtension", + "type": "CustomScriptExtension", + "typeHandlerVersion": "1.10.3", + "status": { + "code": "success", + "level": "Information", + "displayStatus": "Provisioning succeeded", + "message": "Finished executing command, StdOut: , StdErr:", + "time": "2019-08-08T20:42:10.999Z" + } + } + } + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/LISTExtension.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/LISTExtension.json new file mode 100644 index 000000000000..e55b05f8c3c8 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/LISTExtension.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "machineName": "myMachine", + "api-version": "2021-05-20" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/Machines/myMachine/Extensions/CustomScriptExtension", + "name": "CustomScriptExtension", + "location": "eastus2euap", + "type": "Microsoft.HybridCompute/machines/extensions", + "properties": { + "publisher": "Microsoft.Compute", + "type": "CustomScriptExtension", + "typeHandlerVersion": "1.10.3", + "autoUpgradeMinorVersion": false, + "settings": { + "commandToExecute": "powershell.exe -c \"Get-Process | Where-Object { $_.CPU -gt 10000 }\"" + }, + "provisioningState": "Succeeded", + "instanceView": { + "name": "CustomScriptExtension", + "type": "CustomScriptExtension", + "typeHandlerVersion": "1.10.3", + "status": { + "code": "success", + "level": "Information", + "displayStatus": "Provisioning succeeded", + "message": "formattedMessage: Finished executing command, StdOut: , StdErr: ", + "time": "2020-08-13T17:18:57.405Z" + } + } + } + }, + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/Machines/myMachine/Extensions/winosupdateextension", + "name": "winosupdateextension", + "location": "eastus2euap", + "type": "Microsoft.HybridCompute/machines/extensions", + "properties": { + "publisher": "microsoft.softwareupdatemanagement.test", + "type": "windowsosupdateextension", + "typeHandlerVersion": "1.0.0.0", + "autoUpgradeMinorVersion": false, + "settings": {}, + "provisioningState": "Creating", + "instanceView": { + "name": "winosupdateextension", + "type": "windowsosupdateextension", + "typeHandlerVersion": "1.0.0.0", + "status": {} + } + } + } + ] + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/Machines_CreateOrUpdate.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/Machines_CreateOrUpdate.json new file mode 100644 index 000000000000..15c07beca55b --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/Machines_CreateOrUpdate.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "machineName": "myMachine", + "api-version": "2021-05-20", + "parameters": { + "location": "eastus2euap", + "properties": { + "vmId": "b7a098cc-b0b8-46e8-a205-62f301a62a8f", + "locationData": { + "name": "Redmond" + }, + "clientPublicKey": "string", + "parentClusterResourceId": "{AzureStackHCIResourceId}", + "privateLinkScopeResourceId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName" + }, + "identity": { + "type": "SystemAssigned" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/machines/myMachine", + "name": "myMachine", + "location": "eastus2euap", + "tags": null, + "identity": { + "type": "SystemAssigned", + "principalId": "string", + "tenantId": "string" + }, + "type": "Microsoft.HybridCompute/machines", + "properties": { + "provisioningState": "Succeeded", + "agentVersion": null, + "status": null, + "lastStatusChange": null, + "errorDetails": null, + "displayName": null, + "machineFqdn": null, + "vmUuid": null, + "osSku": null, + "domainName": null, + "adFqdn": null, + "dnsFqdn": null, + "osName": null, + "osVersion": null, + "osProfile": { + "computerName": null + }, + "vmId": "b7a098cc-b0b8-46e8-a205-62f301a62a8f", + "locationData": { + "name": "Redmond", + "city": "redmond", + "district": null, + "countryOrRegion": "usa" + }, + "clientPublicKey": "string", + "parentClusterResourceId": "{AzureStackHCIResourceId}", + "detectedProperties": { + "cloudprovider": "N/A", + "manufacturer": "Microsoft Corporation", + "model": "Virtual Machine", + "mssqldiscovered": "false" + }, + "privateLinkScopeResourceId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName" + } + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/Machines_Delete.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/Machines_Delete.json new file mode 100644 index 000000000000..6dc39d8039e2 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/Machines_Delete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "machineName": "myMachine", + "api-version": "2021-05-20" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/Machines_Get.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/Machines_Get.json new file mode 100644 index 000000000000..39204374ad3d --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/Machines_Get.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "machineName": "myMachine", + "api-version": "2021-05-20" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/machines/myMachine", + "name": "myMachine", + "location": "eastus2euap", + "tags": null, + "identity": { + "type": "SystemAssigned", + "principalId": "string", + "tenantId": "string" + }, + "type": "Microsoft.HybridCompute/machines", + "properties": { + "provisioningState": "Succeeded", + "agentVersion": null, + "status": null, + "lastStatusChange": null, + "errorDetails": null, + "displayName": null, + "machineFqdn": null, + "vmUuid": null, + "osSku": null, + "domainName": null, + "adFqdn": null, + "dnsFqdn": null, + "osName": null, + "osVersion": null, + "osProfile": { + "computerName": null + }, + "vmId": "b7a098cc-b0b8-46e8-a205-62f301a62a8f", + "locationData": { + "name": "Redmond", + "city": "redmond", + "district": null, + "countryOrRegion": "usa" + }, + "clientPublicKey": "string", + "parentClusterResourceId": "{AzureStackHCIResourceId}", + "detectedProperties": { + "cloudprovider": "N/A", + "manufacturer": "Microsoft Corporation", + "model": "Virtual Machine", + "mssqldiscovered": "false" + }, + "privateLinkScopeResourceId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName" + } + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/Machines_ListByResourceGroup.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/Machines_ListByResourceGroup.json new file mode 100644 index 000000000000..922f7d379d1a --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/Machines_ListByResourceGroup.json @@ -0,0 +1,99 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-05-20" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/machines/myMachine", + "name": "myMachine", + "location": "eastus2euap", + "tags": null, + "identity": { + "type": "SystemAssigned", + "principalId": "f7a068cc-b0b8-46e8-a203-22f301a62a8f", + "tenantId": "c4098cc-91b8-46c2-a205-d82ab1a62a8f" + }, + "type": "Microsoft.HybridCompute/machines", + "properties": { + "provisioningState": "Succeeded", + "agentVersion": null, + "status": null, + "lastStatusChange": null, + "errorDetails": null, + "displayName": null, + "machineFqdn": null, + "vmUuid": null, + "osSku": null, + "domainName": null, + "adFqdn": null, + "dnsFqdn": null, + "osName": null, + "osVersion": null, + "osProfile": { + "computerName": null + }, + "vmId": "b7a098cc-b0b8-46e8-a205-62f301a62a8f", + "locationData": { + "name": "Redmond" + }, + "clientPublicKey": "string", + "parentClusterResourceId": null, + "detectedProperties": { + "cloudprovider": "N/A", + "manufacturer": "Microsoft Corporation", + "model": "Virtual Machine", + "mssqldiscovered": "false" + }, + "privateLinkScopeResourceId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName" + } + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/machines/myMachine2", + "name": "myMachine2", + "location": "westus2", + "tags": null, + "identity": { + "type": "SystemAssigned", + "principalId": "e7a068cc-b0b8-46e8-a203-22f301a62a8f", + "tenantId": "c4098cc-91b8-46c2-a205-d82ab1a62a8f" + }, + "type": "Microsoft.HybridCompute/machines", + "properties": { + "provisioningState": "Succeeded", + "agentVersion": null, + "status": null, + "lastStatusChange": null, + "errorDetails": null, + "displayName": null, + "machineFqdn": null, + "osName": null, + "osVersion": null, + "osProfile": { + "computerName": null + }, + "vmId": "a4a098cc-b0b8-46e8-a205-62f301a62a8f", + "locationData": { + "name": "Redmond" + }, + "clientPublicKey": "string", + "parentClusterResourceId": "{AzureStackHCIResourceId}", + "detectedProperties": { + "cloudprovider": "N/A", + "manufacturer": "Microsoft Corporation", + "model": "Surfacebook", + "mssqldiscovered": "true" + }, + "privateLinkScopeResourceId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/Machines_ListBySubscription.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/Machines_ListBySubscription.json new file mode 100644 index 000000000000..def4994759f2 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/Machines_ListBySubscription.json @@ -0,0 +1,97 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2021-05-20" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/machines/myMachine", + "name": "myMachine", + "location": "eastus2euap", + "tags": null, + "identity": { + "type": "SystemAssigned", + "principalId": "string", + "tenantId": "string" + }, + "type": "Microsoft.HybridCompute/machines", + "properties": { + "provisioningState": "Succeeded", + "agentVersion": null, + "status": null, + "lastStatusChange": null, + "errorDetails": null, + "displayName": null, + "machineFqdn": null, + "vmUuid": null, + "osSku": null, + "domainName": null, + "adFqdn": null, + "dnsFqdn": null, + "osName": null, + "osVersion": null, + "osProfile": { + "computerName": null + }, + "vmId": "b7a098cc-b0b8-46e8-a205-62f301a62a8f", + "locationData": { + "name": "Redmond" + }, + "clientPublicKey": "string", + "parentClusterResourceId": null, + "detectedProperties": { + "cloudprovider": "N/A", + "manufacturer": "Microsoft Corporation", + "model": "Virtual Machine", + "mssqldiscovered": "false" + }, + "privateLinkScopeResourceId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName" + } + }, + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup2/providers/Microsoft.HybridCompute/machines/myMachine2", + "name": "myMachine2", + "location": "westus2", + "tags": null, + "identity": { + "type": "SystemAssigned", + "principalId": "e7a068cc-b0b8-46e8-a203-22f301a62a8f", + "tenantId": "c4098cc-91b8-46c2-a205-d82ab1a62a8f" + }, + "type": "Microsoft.HybridCompute/machines", + "properties": { + "provisioningState": "Succeeded", + "agentVersion": null, + "status": null, + "lastStatusChange": null, + "errorDetails": null, + "displayName": null, + "machineFqdn": null, + "osName": null, + "osVersion": null, + "osProfile": { + "computerName": null + }, + "vmId": "a4a098cc-b0b8-46e8-a205-62f301a62a8f", + "locationData": { + "name": "Redmond" + }, + "clientPublicKey": "string", + "parentClusterResourceId": "{AzureStackHCIResourceId}", + "detectedProperties": { + "cloudprovider": "N/A", + "manufacturer": "Microsoft Corporation", + "model": "Surfacebook", + "mssqldiscovered": "true" + } + } + } + ], + "nextLink": "string" + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/Machines_Update.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/Machines_Update.json new file mode 100644 index 000000000000..02d2dfda31eb --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/Machines_Update.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "machineName": "myMachine", + "api-version": "2021-05-20", + "location": "eastus2euap", + "parameters": { + "properties": { + "locationData": { + "name": "Redmond" + }, + "parentClusterResourceId": "{AzureStackHCIResourceId}", + "privateLinkScopeResourceId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName" + }, + "identity": { + "type": "SystemAssigned" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/machines/myMachine", + "name": "myMachine", + "location": "eastus2euap", + "tags": null, + "identity": { + "type": "SystemAssigned", + "principalId": "string", + "tenantId": "string" + }, + "type": "Microsoft.HybridCompute/machines", + "properties": { + "provisioningState": "Succeeded", + "agentVersion": null, + "status": null, + "lastStatusChange": null, + "errorDetails": null, + "displayName": null, + "machineFqdn": null, + "vmUuid": null, + "osSku": null, + "domainName": null, + "adFqdn": null, + "dnsFqdn": null, + "osName": null, + "osVersion": null, + "osProfile": { + "computerName": null + }, + "vmId": "b7a098cc-b0b8-46e8-a205-62f301a62a8f", + "locationData": { + "name": "Redmond" + }, + "clientPublicKey": "string", + "parentClusterResourceId": "{AzureStackHCIResourceId}", + "detectedProperties": null, + "privateLinkScopeResourceId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName" + } + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/PUTExtension.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/PUTExtension.json new file mode 100644 index 000000000000..9beaa247e38f --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/PUTExtension.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "machineName": "myMachine", + "extensionName": "CustomScriptExtension", + "api-version": "2021-05-20", + "extensionParameters": { + "location": "eastus2euap", + "properties": { + "publisher": "Microsoft.Compute", + "typeHandlerVersion": "1.10", + "type": "CustomScriptExtension", + "settings": { + "commandToExecute": "powershell.exe -c \"Get-Process | Where-Object { $_.CPU -gt 10000 }\"" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/Machines/myMachine/Extensions/CustomScriptExtension", + "name": "CustomScriptExtension", + "type": "Microsoft.HybridCompute/machines/extensions", + "location": "eastus2euap", + "properties": { + "publisher": "Microsoft.Compute", + "type": "string", + "typeHandlerVersion": "1.10.3", + "autoUpgradeMinorVersion": false, + "settings": "@{commandToExecute=powershell.exe -c \"Get-Process | Where-Object { $_.CPU -gt 10000 }\"}", + "protectedSettings": {}, + "provisioningState": "Succeeded", + "instanceView": { + "name": "CustomScriptExtension", + "type": "CustomScriptExtension", + "typeHandlerVersion": "1.10.3", + "status": { + "code": "success", + "level": "Information", + "message": "Finished executing command, StdOut: , StdErr:", + "time": "2020-08-08T20:42:10.999Z" + } + } + } + } + }, + "202": {} + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/PrivateEndpointConnectionDelete.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/PrivateEndpointConnectionDelete.json new file mode 100644 index 000000000000..70591d52c7fd --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/PrivateEndpointConnectionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myResourceGroup", + "scopeName": "myPrivateLinkScope", + "privateEndpointConnectionName": "private-endpoint-connection-name", + "api-version": "2021-05-20" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/PrivateEndpointConnectionGet.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/PrivateEndpointConnectionGet.json new file mode 100644 index 000000000000..e43db1d59f54 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/PrivateEndpointConnectionGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myResourceGroup", + "scopeName": "myPrivateLinkScope", + "privateEndpointConnectionName": "private-endpoint-connection-name", + "api-version": "2021-05-20" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/myPrivateLinkScope/privateEndpointConnections/private-endpoint-connection-name", + "name": "private-endpoint-connection-name", + "type": "Microsoft.HybridCompute/privateLinkScopes/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/PrivateEndpointConnectionList.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/PrivateEndpointConnectionList.json new file mode 100644 index 000000000000..57b7d9fce8e7 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/PrivateEndpointConnectionList.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myResourceGroup", + "scopeName": "myPrivateLinkScope", + "api-version": "2021-05-20" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/myPrivateLinkScope/privateEndpointConnections/private-endpoint-connection-name-2", + "name": "private-endpoint-connection-name", + "type": "Microsoft.HybridCompute/privateLinkScopes/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/myPrivateLinkScope/privateEndpointConnections/private-endpoint-connection-name-2", + "name": "private-endpoint-connection-name-2", + "type": "Microsoft.HybridCompute/privateLinkScopes/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name-2" + }, + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "Please approve my connection.", + "actionsRequired": "None" + } + } + } + ] + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/PrivateEndpointConnectionUpdate.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/PrivateEndpointConnectionUpdate.json new file mode 100644 index 000000000000..e439942c927c --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/PrivateEndpointConnectionUpdate.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myResourceGroup", + "scopeName": "myPrivateLinkScope", + "privateEndpointConnectionName": "private-endpoint-connection-name", + "api-version": "2021-05-20", + "parameters": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@contoso.com" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/myPrivateLinkScope/privateEndpointConnections/private-endpoint-connection-name", + "name": "private-endpoint-connection-name", + "type": "Microsoft.HybridCompute/privateLinkScopes/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@contoso.com", + "actionsRequired": "None" + } + } + } + }, + "202": {} + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/PrivateLinkScopePrivateLinkResourceGet.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/PrivateLinkScopePrivateLinkResourceGet.json new file mode 100644 index 000000000000..725f502985fb --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/PrivateLinkScopePrivateLinkResourceGet.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myResourceGroup", + "scopeName": "myPrivateLinkScope", + "api-version": "2021-05-20", + "groupName": "hybridcompute" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/myPrivateLinkScope/privateLinkResources/hybridcompute", + "name": "hybridcompute", + "type": "Microsoft.HybridCompute/privateLinkScopes/privateLinkResources", + "properties": { + "groupId": "hybridcompute", + "requiredMembers": [ + "HybridCompute.Server", + "HybridCompute.K8sConfiguration", + "GuestConfig.DP" + ], + "requiredZoneNames": [ + "privatelink.his.arc.azure.com", + "privatelink.kubernetesconfiguration.azure.com", + "privatelink.Guestconfiguration.azure.com" + ] + } + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/PrivateLinkScopePrivateLinkResourceListGet.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/PrivateLinkScopePrivateLinkResourceListGet.json new file mode 100644 index 000000000000..cba8238209fd --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/PrivateLinkScopePrivateLinkResourceListGet.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myResourceGroup", + "scopeName": "myPrivateLinkScope", + "api-version": "2021-05-20" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/myPrivateLinkScope/privateLinkResources/hybridcompute", + "name": "hybridcompute", + "type": "Microsoft.HybridCompute/privateLinkScopes/privateLinkResources", + "properties": { + "groupId": "hybridcompute", + "requiredMembers": [ + "HybridCompute.ServerDP", + "HybridCompute.K8sConfigurationDP", + "HybridCompute.GuestConfigDP" + ], + "requiredZoneNames": [ + "privatelink.his.arc.azure.com", + "privatelink.kubernetesconfiguration.azure.com", + "privatelink.Guestconfiguration.azure.com" + ] + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/PrivateLinkScopesCreate.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/PrivateLinkScopesCreate.json new file mode 100644 index 000000000000..de64905a6414 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/PrivateLinkScopesCreate.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2021-05-20", + "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4919", + "resourceGroupName": "my-resource-group", + "scopeName": "my-privatelinkscope", + "parameters": { + "location": "westus" + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.hybridcompute/privateLinkScopes/my-privatelinkscope", + "name": "my-privatelinkscope", + "type": "Microsoft.HybridCompute/privateLinkScopes", + "location": "westus", + "tags": {}, + "properties": { + "privateLinkScopeId": "e5dc51d3-92ed-4d7e-947a-775ea79b4919", + "provisioningState": "Succeeded", + "publicNetworkAccess": "Disabled" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.hybridcompute/privateLinkScopes/my-privatelinkscope", + "name": "my-privatelinkscope", + "type": "Microsoft.HybridCompute/privateLinkScopes", + "location": "westus", + "tags": {}, + "properties": { + "privateLinkScopeId": "e5dc51d3-92ed-4d7e-947a-775ea79b4919", + "provisioningState": "Succeeded", + "publicNetworkAccess": "Disabled" + } + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/PrivateLinkScopesDelete.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/PrivateLinkScopesDelete.json new file mode 100644 index 000000000000..70c988c39bcf --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/PrivateLinkScopesDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-05-20", + "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4919", + "resourceGroupName": "my-resource-group", + "scopeName": "my-privatelinkscope" + }, + "responses": { + "200": {}, + "204": {}, + "202": {} + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/PrivateLinkScopesGet.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/PrivateLinkScopesGet.json new file mode 100644 index 000000000000..b632d002c2ea --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/PrivateLinkScopesGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2021-05-20", + "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4919", + "resourceGroupName": "my-resource-group", + "scopeName": "my-privatelinkscope" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.hybridcompute/privateLinkScopes/my-privatelinkscope", + "name": "my-privatelinkscope", + "type": "Microsoft.HybridCompute/privateLinkScopes", + "location": "westus", + "tags": {}, + "properties": { + "privateLinkScopeId": "f5dc51d3-92ed-4d7e-947a-775ea79b4919", + "provisioningState": "Succeeded", + "publicNetworkAccess": "Disabled" + } + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/PrivateLinkScopesGetValidation.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/PrivateLinkScopesGetValidation.json new file mode 100644 index 000000000000..991c94e6a44f --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/PrivateLinkScopesGetValidation.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2021-05-20", + "location": "wus2", + "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4919", + "privateLinkScopeId": "f5dc51d3-92ed-4d7e-947a-775ea79b4919" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.hybridcompute/privateLinkScopes/my-privatelinkscope", + "publicNetworkAccess": "Disabled", + "connectionDetails": [ + { + "id": "id", + "privateIpAddress": "ip", + "linkIdentifier": "linkId", + "groupId": "groupId", + "memberName": "memberName" + } + ] + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/PrivateLinkScopesGetValidationForMachine.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/PrivateLinkScopesGetValidationForMachine.json new file mode 100644 index 000000000000..0e66cbdc21ff --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/PrivateLinkScopesGetValidationForMachine.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2021-05-20", + "location": "wus2", + "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4919", + "resourceGroupName": "my-resource-group", + "machineName": "machineName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.hybridcompute/privateLinkScopes/my-privatelinkscope", + "publicNetworkAccess": "Disabled", + "connectionDetails": [ + { + "id": "id", + "privateIpAddress": "ip", + "linkIdentifier": "linkId", + "groupId": "groupId", + "memberName": "memberName" + } + ] + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/PrivateLinkScopesList.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/PrivateLinkScopesList.json new file mode 100644 index 000000000000..e535bba170e5 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/PrivateLinkScopesList.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2019-10-17-preview", + "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4919" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.hybridcompute/privateLinkScopes/my-privatelinkscope", + "name": "my-privatelinkscope", + "type": "Microsoft.HybridCompute/privateLinkScopes", + "location": "westus", + "tags": {}, + "properties": { + "privateLinkScopeId": "e5dc51d3-92ed-4d7e-947a-775ea79b4919", + "provisioningState": "Succeeded", + "publicNetworkAccess": "Disabled" + } + }, + { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.hybridcompute/privateLinkScopes/my-other-privatelinkscope", + "name": "my-other-privatelinkscope", + "type": "Microsoft.HybridCompute/privateLinkScopes", + "location": "westus", + "tags": {}, + "properties": { + "privateLinkScopeId": "f5dc51d3-92ed-4d7e-947a-775ea79b4919", + "provisioningState": "Succeeded", + "publicNetworkAccess": "Disabled" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/PrivateLinkScopesListByResourceGroup.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/PrivateLinkScopesListByResourceGroup.json new file mode 100644 index 000000000000..f98ca843cc1b --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/PrivateLinkScopesListByResourceGroup.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2021-05-20", + "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4919", + "resourceGroupName": "my-resource-group" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.hybridcompute/privateLinkScopes/my-privatelinkscope", + "name": "my-privatelinkscope", + "type": "Microsoft.HybridCompute/privateLinkScopes", + "location": "westus", + "tags": {}, + "properties": { + "privateLinkScopeId": "f5dc51d3-92ed-4d7e-947a-775ea79b4919", + "provisioningState": "Succeeded", + "publicNetworkAccess": "Disabled" + } + }, + { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.hybridcompute/privateLinkScopes/my-other-privatelinkscope", + "name": "my-other-privatelinkscope", + "type": "Microsoft.HybridCompute/privateLinkScopes", + "location": "westus", + "tags": {}, + "properties": { + "privateLinkScopeId": "a5dc51d3-92ed-4d7e-947a-775ea79b4919", + "provisioningState": "Succeeded", + "publicNetworkAccess": "Disabled" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/PrivateLinkScopesUpdate.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/PrivateLinkScopesUpdate.json new file mode 100644 index 000000000000..58a717425ada --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/PrivateLinkScopesUpdate.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2021-05-20", + "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4919", + "resourceGroupName": "my-resource-group", + "scopeName": "my-privatelinkscope", + "parameters": { + "location": "westus", + "tags": { + "Tag1": "Value1" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.hybridCompute/privateLinkScopes/my-privatelinkscope", + "name": "my-privatelinkscope", + "type": "Microsoft.HybridCompute/privateLinkScopes", + "location": "westus", + "tags": { + "Tag1": "Value1" + }, + "properties": { + "privateLinkScopeId": "e5dc51d3-92ed-4d7e-947a-775ea79b4919", + "provisioningState": "Succeeded", + "publicNetworkAccess": "Disabled" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.hybridCompute/privateLinkScopes/my-privatelinkscope", + "name": "my-privatelinkscope", + "type": "Microsoft.HybridCompute/privateLinkScopes", + "location": "westus", + "tags": { + "Tag1": "Value1" + }, + "properties": { + "privateLinkScopeId": "e5dc51d3-92ed-4d7e-947a-775ea79b4919", + "provisioningState": "Succeeded", + "publicNetworkAccess": "Disabled" + } + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/PrivateLinkScopesUpdateTagsOnly.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/PrivateLinkScopesUpdateTagsOnly.json new file mode 100644 index 000000000000..91bfa4647e5a --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/PrivateLinkScopesUpdateTagsOnly.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2021-05-20", + "subscriptionId": "subid", + "resourceGroupName": "my-resource-group", + "scopeName": "my-privatelinkscope", + "PrivateLinkScopeTags": { + "tags": { + "Tag1": "Value1", + "Tag2": "Value2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.hybridcompute/privateLinkScopes/my-privatelinkscope", + "name": "my-privatelinkscope", + "type": "Microsoft.HybridCompute/privateLinkScopes", + "location": "westus", + "tags": { + "Tag1": "Value1", + "Tag2": "Value2" + }, + "properties": { + "privateLinkScopeId": "e5dc51d3-92ed-4d7e-947a-775ea79b4919", + "provisioningState": "Succeeded", + "publicNetworkAccess": "Disabled" + } + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/UpdateExtension.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/UpdateExtension.json new file mode 100644 index 000000000000..c321d91d6ce1 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/examples/UpdateExtension.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "machineName": "myMachine", + "extensionName": "CustomScriptExtension", + "api-version": "2021-05-20", + "extensionParameters": { + "properties": { + "publisher": "Microsoft.Compute", + "typeHandlerVersion": "1.10", + "type": "CustomScriptExtension", + "settings": { + "commandToExecute": "powershell.exe -c \"Get-Process | Where-Object { $_.CPU -lt 100 }\"" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/Machines/myMachine/Extensions/CustomScriptExtension", + "name": "CustomScriptExtension", + "type": "Microsoft.HybridCompute/machines/extensions", + "location": "eastus2euap", + "properties": { + "publisher": "Microsoft.Compute", + "type": "string", + "typeHandlerVersion": "1.10.3", + "autoUpgradeMinorVersion": false, + "settings": "@{commandToExecute=powershell.exe -c \"Get-Process | Where-Object { $_.CPU -lt 100 }\"}", + "protectedSettings": {}, + "provisioningState": "Succeeded", + "instanceView": { + "name": "CustomScriptExtension", + "type": "CustomScriptExtension", + "typeHandlerVersion": "1.10.3", + "status": { + "code": "success", + "level": "Information", + "message": "Finished executing command, StdOut: , StdErr:", + "time": "2020-01-08T20:42:10.999Z" + } + } + } + } + }, + "202": {} + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/privateLinkScopes.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/privateLinkScopes.json new file mode 100644 index 000000000000..566406b6b2f9 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2021-05-20/privateLinkScopes.json @@ -0,0 +1,1050 @@ +{ + "swagger": "2.0", + "info": { + "title": "HybridComputeManagementClient", + "x-ms-code-generation-settings": { + "name": "HybridComputeManagementClient" + }, + "description": "Azure Arc( Servers and K8s Clusters) API reference for Private Link's Scopes management.", + "version": "2021-05-20" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://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.HybridCompute/privateLinkScopes": { + "get": { + "description": "Gets a list of all Azure Arc PrivateLinkScopes within a subscription.", + "operationId": "PrivateLinkScopes_List", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A list containing 0 or more Azure Arc PrivateLinkScope definitions.", + "schema": { + "$ref": "#/definitions/HybridComputePrivateLinkScopeListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "PrivateLinkScopesList.json": { + "$ref": "./examples/PrivateLinkScopesList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/privateLinkScopes": { + "get": { + "description": "Gets a list of Azure Arc PrivateLinkScopes within a resource group.", + "operationId": "PrivateLinkScopes_ListByResourceGroup", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A list containing 0 or more Azure Arc PrivateLinkScope definitions.", + "schema": { + "$ref": "#/definitions/HybridComputePrivateLinkScopeListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "PrivateLinkScopeListByResourceGroup": { + "$ref": "./examples/PrivateLinkScopesListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/privateLinkScopes/{scopeName}": { + "delete": { + "description": "Deletes a Azure Arc PrivateLinkScope.", + "operationId": "PrivateLinkScopes_Delete", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + } + ], + "responses": { + "200": { + "description": "Successful request when deleting an Azure Arc PrivateLinkScope." + }, + "202": { + "description": "Accepted." + }, + "204": { + "description": "The specified PrivateLinkScope does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "PrivateLinkScopesDelete": { + "$ref": "./examples/PrivateLinkScopesDelete.json" + } + } + }, + "get": { + "description": "Returns a Azure Arc PrivateLinkScope.", + "operationId": "PrivateLinkScopes_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + } + ], + "responses": { + "200": { + "description": "Azure Arc PrivateLinkScope definition.", + "schema": { + "$ref": "#/definitions/HybridComputePrivateLinkScope" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "PrivateLinkScopeGet": { + "$ref": "./examples/PrivateLinkScopesGet.json" + } + } + }, + "put": { + "description": "Creates (or updates) a Azure Arc PrivateLinkScope. Note: You cannot specify a different value for InstrumentationKey nor AppId in the Put operation.", + "operationId": "PrivateLinkScopes_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + }, + { + "name": "parameters", + "description": "Properties that need to be specified to create or update a Azure Arc for Servers and Clusters PrivateLinkScope.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/HybridComputePrivateLinkScope" + } + } + ], + "responses": { + "200": { + "description": "Successful request when creating or updating a Azure Arc PrivateLinkScope. The updated PrivateLinkScope is returned.", + "schema": { + "$ref": "#/definitions/HybridComputePrivateLinkScope" + } + }, + "201": { + "description": "Successful request when creating or updating a Azure Arc PrivateLinkScope. The updated PrivateLinkScope was created and is returned.", + "schema": { + "$ref": "#/definitions/HybridComputePrivateLinkScope" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "PrivateLinkScopeCreate": { + "$ref": "./examples/PrivateLinkScopesCreate.json" + }, + "PrivateLinkScopeUpdate": { + "$ref": "./examples/PrivateLinkScopesUpdate.json" + } + } + }, + "patch": { + "description": "Updates an existing PrivateLinkScope's tags. To update other fields use the CreateOrUpdate method.", + "operationId": "PrivateLinkScopes_UpdateTags", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + }, + { + "name": "PrivateLinkScopeTags", + "description": "Updated tag information to set into the PrivateLinkScope instance.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TagsResource" + } + } + ], + "responses": { + "200": { + "description": "Updating the Azure Arc PrivateLinkScope's tags was successful. PrivateLinkScope tags are updated and returned with the rest of the PrivateLinkScope's object properties.", + "schema": { + "$ref": "#/definitions/HybridComputePrivateLinkScope" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "PrivateLinkScopeUpdateTagsOnly": { + "$ref": "./examples/PrivateLinkScopesUpdateTagsOnly.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/privateLinkScopes/{scopeName}/privateLinkResources": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "description": "Gets the private link resources that need to be created for a Azure Monitor PrivateLinkScope.", + "operationId": "PrivateLinkResources_ListByPrivateLinkScope", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private link resources.", + "schema": { + "$ref": "#/definitions/PrivateLinkResourceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Gets private endpoint connection.": { + "$ref": "./examples/PrivateLinkScopePrivateLinkResourceListGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/privateLinkScopes/{scopeName}/privateLinkResources/{groupName}": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "description": "Gets the private link resources that need to be created for a Azure Monitor PrivateLinkScope.", + "operationId": "PrivateLinkResources_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + }, + { + "$ref": "#/parameters/GroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved a specified private link resource.", + "schema": { + "$ref": "#/definitions/PrivateLinkResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Gets private endpoint connection.": { + "$ref": "./examples/PrivateLinkScopePrivateLinkResourceGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/privateLinkScopes/{scopeName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Gets a private endpoint connection.", + "operationId": "PrivateEndpointConnections_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved a specified private endpoint connection.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Gets private endpoint connection.": { + "$ref": "./examples/PrivateEndpointConnectionGet.json" + } + } + }, + "put": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Approve or reject a private endpoint connection with a given name.", + "operationId": "PrivateEndpointConnections_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + } + ], + "responses": { + "200": { + "description": "Successfully approved or rejected private endpoint connection.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Approve or reject a private endpoint connection with a given name.": { + "$ref": "./examples/PrivateEndpointConnectionUpdate.json" + } + } + }, + "delete": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Deletes a private endpoint connection with a given name.", + "operationId": "PrivateEndpointConnections_Delete", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Successfully deleted private endpoint connection." + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "Private endpoint connection does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Deletes a private endpoint connection with a given name.": { + "$ref": "./examples/PrivateEndpointConnectionDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/privateLinkScopes/{scopeName}/privateEndpointConnections": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Gets all private endpoint connections on a private link scope.", + "operationId": "PrivateEndpointConnections_ListByPrivateLinkScope", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private endpoint connections.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets list of private endpoint connections on a private link scope.": { + "$ref": "./examples/PrivateEndpointConnectionList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.HybridCompute/locations/{location}/privateLinkScopes/{privateLinkScopeId}": { + "get": { + "description": "Returns a Azure Arc PrivateLinkScope's validation details.", + "operationId": "PrivateLinkScopes_GetValidationDetails", + "parameters": [ + { + "$ref": "#/parameters/LocationParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeId" + } + ], + "responses": { + "200": { + "description": "Azure Arc PrivateLinkScope validation details definition.", + "schema": { + "$ref": "#/definitions/PrivateLinkScopeValidationDetails" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "PrivateLinkScopeGet": { + "$ref": "./examples/PrivateLinkScopesGetValidation.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}/privateLinkScopes/current": { + "get": { + "description": "Returns a Azure Arc PrivateLinkScope's validation details for a given machine.", + "operationId": "PrivateLinkScopes_GetValidationDetailsForMachine", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/MachineNameParameter" + } + ], + "responses": { + "200": { + "description": "Azure Arc PrivateLinkScope validation details definition.", + "schema": { + "$ref": "#/definitions/PrivateLinkScopeValidationDetails" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "PrivateLinkScopeGet": { + "$ref": "./examples/PrivateLinkScopesGetValidationForMachine.json" + } + } + } + } + }, + "definitions": { + "PrivateLinkScopesResource": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "Azure resource Id" + }, + "name": { + "type": "string", + "description": "Azure resource name", + "readOnly": true + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Azure resource type" + }, + "location": { + "type": "string", + "description": "Resource location", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "tags": { + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "required": [ + "location" + ], + "x-ms-azure-resource": true, + "description": "An azure resource object" + }, + "TagsResource": { + "properties": { + "tags": { + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "description": "A container holding only the Tags for a resource, allowing the user to update the tags on a PrivateLinkScope instance." + }, + "HybridComputePrivateLinkScope": { + "properties": { + "properties": { + "description": "Properties that define a Azure Arc PrivateLinkScope resource.", + "$ref": "#/definitions/HybridComputePrivateLinkScopeProperties" + }, + "systemData": { + "readOnly": true, + "description": "The system meta data relating to this resource.", + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/systemData" + } + }, + "allOf": [ + { + "$ref": "#/definitions/PrivateLinkScopesResource" + } + ], + "description": "An Azure Arc PrivateLinkScope definition." + }, + "PrivateLinkScopeValidationDetails": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "Azure resource Id" + }, + "publicNetworkAccess": { + "description": "Indicates whether machines associated with the private link scope can also use public Azure Arc service endpoints.", + "$ref": "#/definitions/PublicNetworkAccessType" + }, + "connectionDetails": { + "type": "array", + "description": "List of Private Endpoint Connection details.", + "items": { + "$ref": "#/definitions/ConnectionDetail" + } + } + } + }, + "ConnectionDetail": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "Azure resource Id" + }, + "privateIpAddress": { + "type": "string", + "readOnly": true, + "description": "The private endpoint connection private ip address" + }, + "linkIdentifier": { + "type": "string", + "readOnly": true, + "description": "The private endpoint connection link identifier" + }, + "groupId": { + "type": "string", + "readOnly": true, + "description": "The private endpoint connection group id" + }, + "memberName": { + "type": "string", + "readOnly": true, + "description": "The private endpoint connection member name" + } + } + }, + "HybridComputePrivateLinkScopeProperties": { + "description": "Properties that define a Azure Arc PrivateLinkScope resource.", + "properties": { + "publicNetworkAccess": { + "description": "Indicates whether machines associated with the private link scope can also use public Azure Arc service endpoints.", + "$ref": "#/definitions/PublicNetworkAccessType" + }, + "provisioningState": { + "type": "string", + "description": "Current state of this PrivateLinkScope: whether or not is has been provisioned within the resource group it is defined. Users cannot change this value but are able to read from it. Values will include Provisioning ,Succeeded, Canceled and Failed.", + "readOnly": true + }, + "privateLinkScopeId": { + "readOnly": true, + "description": "The Guid id of the private link scope.", + "type": "string" + } + } + }, + "HybridComputePrivateLinkScopeListResult": { + "description": "Describes the list of Azure Arc PrivateLinkScope resources.", + "required": [ + "value" + ], + "properties": { + "value": { + "type": "array", + "description": "List of Azure Arc PrivateLinkScope definitions.", + "items": { + "$ref": "#/definitions/HybridComputePrivateLinkScope" + } + }, + "nextLink": { + "type": "string", + "description": "The URI to get the next set of Azure Arc PrivateLinkScope definitions if too many PrivateLinkScopes where returned in the result set." + } + } + }, + "PrivateLinkResourceListResult": { + "description": "A list of private link resources", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "PrivateLinkResource": { + "description": "A private link resource", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "Resource properties." + }, + "systemData": { + "readOnly": true, + "description": "The system meta data relating to this resource.", + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/systemData" + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ] + }, + "PrivateLinkResourceProperties": { + "description": "Properties of a private link resource.", + "type": "object", + "properties": { + "groupId": { + "description": "The private link resource group id.", + "type": "string", + "readOnly": true + }, + "requiredMembers": { + "description": "The private link resource required member names.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "requiredZoneNames": { + "description": "Required DNS zone names of the the private link resource.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + } + } + }, + "PrivateEndpointConnectionProperties": { + "description": "Properties of a private endpoint connection.", + "type": "object", + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpointProperty", + "description": "Private endpoint which the connection belongs to." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionStateProperty", + "description": "Connection state of the private endpoint connection." + }, + "provisioningState": { + "description": "State of the private endpoint connection.", + "type": "string", + "readOnly": true + } + } + }, + "PrivateEndpointProperty": { + "description": "Private endpoint which the connection belongs to.", + "type": "object", + "properties": { + "id": { + "description": "Resource id of the private endpoint.", + "type": "string" + } + } + }, + "PrivateLinkServiceConnectionStateProperty": { + "description": "State of the private endpoint connection.", + "type": "object", + "required": [ + "status", + "description" + ], + "properties": { + "status": { + "description": "The private link service connection status.", + "type": "string" + }, + "description": { + "description": "The private link service connection description.", + "type": "string" + }, + "actionsRequired": { + "description": "The actions required for private link service connection.", + "type": "string", + "readOnly": true + } + } + }, + "PrivateEndpointConnection": { + "description": "A private endpoint connection", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "description": "Resource properties." + }, + "systemData": { + "readOnly": true, + "description": "The system meta data relating to this resource.", + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/systemData" + } + } + }, + "PrivateEndpointConnectionListResult": { + "description": "A list of private endpoint connections.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "PublicNetworkAccessType": { + "type": "string", + "description": "The network access policy to determine if Azure Arc agents can use public Azure Arc service endpoints. Defaults to disabled (access to Azure Arc services only via private link).", + "default": "Disabled", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "PublicNetworkAccessType", + "modelAsString": true, + "values": [ + { + "value": "Enabled", + "description": "Allows Azure Arc agents to communicate with Azure Arc services over both public (internet) and private endpoints." + }, + { + "value": "Disabled", + "description": "Does not allow Azure Arc agents to communicate with Azure Arc services over public (internet) endpoints. The agents must use the private link." + } + ] + } + } + }, + "parameters": { + "PrivateLinkScopeName": { + "name": "scopeName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Azure Arc PrivateLinkScope resource.", + "x-ms-parameter-location": "method" + }, + "PrivateLinkScopeId": { + "name": "privateLinkScopeId", + "in": "path", + "required": true, + "type": "string", + "description": "The id (Guid) of the Azure Arc PrivateLinkScope resource.", + "x-ms-parameter-location": "method" + }, + "GroupNameParameter": { + "name": "groupName", + "in": "path", + "description": "The name of the private link resource.", + "required": true, + "x-ms-parameter-location": "method", + "type": "string" + }, + "LocationParameter": { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "The location of the target resource.", + "minLength": 1 + }, + "MachineNameParameter": { + "name": "machineName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the target machine to get the private link scope validation details for.", + "minLength": 1, + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/hybridcompute/resource-manager/readme.azureresourceschema.md b/specification/hybridcompute/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index ecf289d5125f..000000000000 --- a/specification/hybridcompute/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,85 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-hybridcompute-2020-08-15-preview - - tag: schema-hybridcompute-2020-08-02 - - tag: schema-hybridcompute-2020-07-30-preview - - tag: schema-hybridcompute-2019-12-12 - - tag: schema-hybridcompute-2019-08-02 - - tag: schema-hybridcompute-2019-03-18 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-hybridcompute-2020-08-15-preview and azureresourceschema - -``` yaml $(tag) == 'schema-hybridcompute-2020-08-15-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.HybridCompute/preview/2020-08-15-preview/HybridCompute.json - - Microsoft.HybridCompute/preview/2020-08-15-preview/privateLinkScopes.json - -``` - -### Tag: schema-hybridcompute-2020-08-02 and azureresourceschema - -``` yaml $(tag) == 'schema-hybridcompute-2020-08-02' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.HybridCompute/stable/2020-08-02/HybridCompute.json - -``` - -### Tag: schema-hybridcompute-2020-07-30-preview and azureresourceschema - -``` yaml $(tag) == 'schema-hybridcompute-2020-07-30-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.HybridCompute/preview/2020-07-30-preview/HybridCompute.json - -``` - -### Tag: schema-hybridcompute-2019-12-12 and azureresourceschema - -``` yaml $(tag) == 'schema-hybridcompute-2019-12-12' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.HybridCompute/stable/2019-12-12/HybridCompute.json - -``` - -### Tag: schema-hybridcompute-2019-08-02 and azureresourceschema - -``` yaml $(tag) == 'schema-hybridcompute-2019-08-02' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.HybridCompute/preview/2019-08-02/HybridCompute.json - -``` - -### Tag: schema-hybridcompute-2019-03-18 and azureresourceschema - -``` yaml $(tag) == 'schema-hybridcompute-2019-03-18' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.HybridCompute/preview/2019-03-18/HybridCompute.json - -``` diff --git a/specification/hybridcompute/resource-manager/readme.go.md b/specification/hybridcompute/resource-manager/readme.go.md index 85441e52dba6..1a0f892c23d5 100644 --- a/specification/hybridcompute/resource-manager/readme.go.md +++ b/specification/hybridcompute/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION clear-output-folder: true namespace: hybridcompute diff --git a/specification/hybridcompute/resource-manager/readme.md b/specification/hybridcompute/resource-manager/readme.md index b53e35a269ce..644ba30c336b 100644 --- a/specification/hybridcompute/resource-manager/readme.md +++ b/specification/hybridcompute/resource-manager/readme.md @@ -26,7 +26,46 @@ These are the global settings for the HybridCompute API. ``` yaml openapi-type: arm -tag: package-preview-2021-01 +tag: package-2021-05 +``` + + +### Tag: package-preview-2021-05 + +These settings apply only when `--tag=package-preview-2021-05` is specified on the command line. + +```yaml $(tag) == 'package-preview-2021-05' +input-file: + - Microsoft.HybridCompute/preview/2021-05-17-preview/HybridCompute.json + - Microsoft.HybridCompute/preview/2021-05-17-preview/privateLinkScopes.json +``` +### Tag: package-2021-05 + +These settings apply only when `--tag=package-2021-05` is specified on the command line. + +```yaml $(tag) == 'package-2021-05' +input-file: + - Microsoft.HybridCompute/stable/2021-05-20/HybridCompute.json + - Microsoft.HybridCompute/stable/2021-05-20/privateLinkScopes.json +``` +### Tag: package-preview-2021-04 + +These settings apply only when `--tag=package-preview-2021-04` is specified on the command line. + +``` yaml $(tag) == 'package-preview-2021-04' +input-file: + - Microsoft.HybridCompute/preview/2021-04-22-preview/HybridCompute.json + - Microsoft.HybridCompute/preview/2021-04-22-preview/privateLinkScopes.json +``` + +### Tag: package-preview-2021-03 + +These settings apply only when `--tag=package-preview-2021-03` is specified on the command line. + +``` yaml $(tag) == 'package-preview-2021-03' +input-file: + - Microsoft.HybridCompute/preview/2021-03-25-preview/HybridCompute.json + - Microsoft.HybridCompute/preview/2021-03-25-preview/privateLinkScopes.json ``` ### Tag: package-preview-2021-01 @@ -108,21 +147,16 @@ swagger-to-sdk: - repo: azure-powershell - repo: azure-sdk-for-net - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-java - repo: azure-sdk-for-go - repo: azure-sdk-for-js - repo: azure-cli-extensions - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js hybridcompute/resource-manager ``` --- -## AzureResourceSchema - -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) - ## az CLI See configuration in [readme.az.md](./readme.az.md) and [readme.cli.md](./readme.cli.md) diff --git a/specification/hybridcompute/resource-manager/readme.python.md b/specification/hybridcompute/resource-manager/readme.python.md index 61ea40097b56..5e4d8f38a28d 100644 --- a/specification/hybridcompute/resource-manager/readme.python.md +++ b/specification/hybridcompute/resource-manager/readme.python.md @@ -20,6 +20,7 @@ azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION namespace: azure.mgmt.hybridcompute package-name: azure-mgmt-hybridcompute +package-version: 1.0.0b1 clear-output-folder: true ``` ``` yaml $(python) && $(python-mode) == 'update' && !$(track2) diff --git a/specification/hybriddatamanager/resource-manager/readme.azureresourceschema.md b/specification/hybriddatamanager/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 3bbb7db8e693..000000000000 --- a/specification/hybriddatamanager/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,36 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-hybriddata-2019-06-01 - - tag: schema-hybriddata-2016-06-01 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-hybriddata-2019-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-hybriddata-2019-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.HybridData/stable/2019-06-01/hybriddata.json - -``` - -### Tag: schema-hybriddata-2016-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-hybriddata-2016-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.HybridData/stable/2016-06-01/hybriddata.json - -``` diff --git a/specification/hybriddatamanager/resource-manager/readme.go.md b/specification/hybriddatamanager/resource-manager/readme.go.md index 02bb59efe6d8..95466806d066 100644 --- a/specification/hybriddatamanager/resource-manager/readme.go.md +++ b/specification/hybriddatamanager/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ```yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: hybriddata clear-output-folder: true ``` diff --git a/specification/hybriddatamanager/resource-manager/readme.md b/specification/hybriddatamanager/resource-manager/readme.md index 83383ac4f616..adee88cc03e1 100644 --- a/specification/hybriddatamanager/resource-manager/readme.md +++ b/specification/hybriddatamanager/resource-manager/readme.md @@ -77,8 +77,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_hybriddatamanager'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js hybriddatamanager/resource-manager ``` @@ -147,7 +145,5 @@ python: output-folder: $(python-sdks-folder)/azure-mgmt-hybriddatamanager ``` -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2021-04-01-preview/connectedClusters.json b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2021-04-01-preview/connectedClusters.json index 6101e3836aba..c7d5d45112ec 100644 --- a/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2021-04-01-preview/connectedClusters.json +++ b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2021-04-01-preview/connectedClusters.json @@ -42,6 +42,9 @@ "x-ms-examples": { "CreateClusterExample": { "$ref": "./examples/CreateClusterExample.json" + }, + "CreateClusterPrivateLinkExample": { + "$ref": "./examples/CreateClusterPrivateLinkExample.json" } }, "parameters": [ @@ -105,6 +108,9 @@ "x-ms-examples": { "UpdateClusterExample": { "$ref": "./examples/UpdateClusterExample.json" + }, + "UpdateClusterPrivateLinkExample": { + "$ref": "./examples/UpdateClusterPrivateLinkExample.json" } }, "parameters": [ @@ -137,12 +143,19 @@ "$ref": "#/definitions/ConnectedCluster" } }, + "202": { + "description": "Resource patch request accepted" + }, "default": { "description": "Resource Provider error response describing why the operation failed.", "schema": { "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" } } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" } }, "get": { @@ -614,6 +627,19 @@ "modelAsString": true } }, + "privateLinkState": { + "type": "string", + "description": "Property which describes the state of private link on a connected cluster resource.", + "default": "Disabled", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "PrivateLinkState", + "modelAsString": true + } + }, "privateLinkScopeResourceId": { "type": "string", "description": "The resource id of the private link scope this connected cluster is assigned to, if any." @@ -694,6 +720,18 @@ "ConnectedClusterPatchProperties": { "type": "object", "properties": { + "privateLinkState": { + "type": "string", + "description": "Property which describes the state of private link on a connected cluster resource.", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "PrivateLinkState", + "modelAsString": true + } + }, "privateLinkScopeResourceId": { "type": "string", "description": "The resource id of the private link scope this connected cluster is assigned to, if any." diff --git a/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2021-04-01-preview/examples/CreateClusterExample.json b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2021-04-01-preview/examples/CreateClusterExample.json index cca2de02ca0d..f694867f464b 100644 --- a/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2021-04-01-preview/examples/CreateClusterExample.json +++ b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2021-04-01-preview/examples/CreateClusterExample.json @@ -11,8 +11,7 @@ "type": "SystemAssigned" }, "properties": { - "agentPublicKeyCertificate": "MIICYzCCAcygAwIBAgIBADANBgkqhkiG9w0BAQUFADAuMQswCQYDVQQGEwJVUzEMMAoGA1UEChMDSUJNMREwDwYDVQQLEwhMb2NhbCBDQTAeFw05OTEyMjIwNTAwMDBaFw0wMDEyMjMwNDU5NTlaMC4xCzAJBgNVBAYTAlVTMQwwCgYDVQQKEwNJQk0xETAPBgNVBAsTCExvY2FsIENBMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQD2bZEo7xGaX2/0GHkrNFZvlxBou9v1Jmt/PDiTMPve8r9FeJAQ0QdvFST/0JPQYD20rH0bimdDLgNdNynmyRoS2S/IInfpmf69iyc2G0TPyRvmHIiOZbdCd+YBHQi1adkj17NDcWj6S14tVurFX73zx0sNoMS79q3tuXKrDsxeuwIDAQABo4GQMIGNMEsGCVUdDwGG+EIBDQQ+EzxHZW5lcmF0ZWQgYnkgdGhlIFNlY3VyZVdheSBTZWN1cml0eSBTZXJ2ZXIgZm9yIE9TLzM5MCAoUkFDRikwDgYDVR0PAQH/BAQDAgAGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFJ3+ocRyCTJw067dLSwr/nalx6YMMA0GCSqGSIb3DQEBBQUAA4GBAMaQzt+zaj1GU77yzlr8iiMBXgdQrwsZZWJo5exnAucJAEYQZmOfyLiM D6oYq+ZnfvM0n8G/Y79q8nhwvuxpYOnRSAXFp6xSkrIOeZtJMY1h00LKp/JX3Ng1svZ2agE126JHsQ0bhzN5TKsYfbwfTwfjdWAGy6Vf1nYi/rO+ryMO", - "privateLinkScopeResourceId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName" + "agentPublicKeyCertificate": "MIICYzCCAcygAwIBAgIBADANBgkqhkiG9w0BAQUFADAuMQswCQYDVQQGEwJVUzEMMAoGA1UEChMDSUJNMREwDwYDVQQLEwhMb2NhbCBDQTAeFw05OTEyMjIwNTAwMDBaFw0wMDEyMjMwNDU5NTlaMC4xCzAJBgNVBAYTAlVTMQwwCgYDVQQKEwNJQk0xETAPBgNVBAsTCExvY2FsIENBMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQD2bZEo7xGaX2/0GHkrNFZvlxBou9v1Jmt/PDiTMPve8r9FeJAQ0QdvFST/0JPQYD20rH0bimdDLgNdNynmyRoS2S/IInfpmf69iyc2G0TPyRvmHIiOZbdCd+YBHQi1adkj17NDcWj6S14tVurFX73zx0sNoMS79q3tuXKrDsxeuwIDAQABo4GQMIGNMEsGCVUdDwGG+EIBDQQ+EzxHZW5lcmF0ZWQgYnkgdGhlIFNlY3VyZVdheSBTZWN1cml0eSBTZXJ2ZXIgZm9yIE9TLzM5MCAoUkFDRikwDgYDVR0PAQH/BAQDAgAGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFJ3+ocRyCTJw067dLSwr/nalx6YMMA0GCSqGSIb3DQEBBQUAA4GBAMaQzt+zaj1GU77yzlr8iiMBXgdQrwsZZWJo5exnAucJAEYQZmOfyLiM D6oYq+ZnfvM0n8G/Y79q8nhwvuxpYOnRSAXFp6xSkrIOeZtJMY1h00LKp/JX3Ng1svZ2agE126JHsQ0bhzN5TKsYfbwfTwfjdWAGy6Vf1nYi/rO+ryMO" } } }, @@ -40,7 +39,6 @@ "kubernetesVersion": "1.17.0", "totalNodeCount": 2, "agentVersion": "0.1.0", - "privateLinkScopeResourceId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName", "provisioningState": "Succeeded" } } @@ -68,7 +66,6 @@ "kubernetesVersion": "1.17.0", "totalNodeCount": 2, "agentVersion": "0.1.0", - "privateLinkScopeResourceId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName", "provisioningState": "Accepted" } } diff --git a/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2021-04-01-preview/examples/CreateClusterPrivateLinkExample.json b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2021-04-01-preview/examples/CreateClusterPrivateLinkExample.json new file mode 100644 index 000000000000..35813d791130 --- /dev/null +++ b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2021-04-01-preview/examples/CreateClusterPrivateLinkExample.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "subscriptionId": "1bfbb5d0-917e-4346-9026-1d3b344417f5", + "resourceGroupName": "k8sc-rg", + "clusterName": "testCluster", + "api-version": "2021-04-01-preview", + "ConnectedCluster": { + "location": "East US", + "tags": {}, + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "agentPublicKeyCertificate": "MIICYzCCAcygAwIBAgIBADANBgkqhkiG9w0BAQUFADAuMQswCQYDVQQGEwJVUzEMMAoGA1UEChMDSUJNMREwDwYDVQQLEwhMb2NhbCBDQTAeFw05OTEyMjIwNTAwMDBaFw0wMDEyMjMwNDU5NTlaMC4xCzAJBgNVBAYTAlVTMQwwCgYDVQQKEwNJQk0xETAPBgNVBAsTCExvY2FsIENBMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQD2bZEo7xGaX2/0GHkrNFZvlxBou9v1Jmt/PDiTMPve8r9FeJAQ0QdvFST/0JPQYD20rH0bimdDLgNdNynmyRoS2S/IInfpmf69iyc2G0TPyRvmHIiOZbdCd+YBHQi1adkj17NDcWj6S14tVurFX73zx0sNoMS79q3tuXKrDsxeuwIDAQABo4GQMIGNMEsGCVUdDwGG+EIBDQQ+EzxHZW5lcmF0ZWQgYnkgdGhlIFNlY3VyZVdheSBTZWN1cml0eSBTZXJ2ZXIgZm9yIE9TLzM5MCAoUkFDRikwDgYDVR0PAQH/BAQDAgAGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFJ3+ocRyCTJw067dLSwr/nalx6YMMA0GCSqGSIb3DQEBBQUAA4GBAMaQzt+zaj1GU77yzlr8iiMBXgdQrwsZZWJo5exnAucJAEYQZmOfyLiM D6oYq+ZnfvM0n8G/Y79q8nhwvuxpYOnRSAXFp6xSkrIOeZtJMY1h00LKp/JX3Ng1svZ2agE126JHsQ0bhzN5TKsYfbwfTwfjdWAGy6Vf1nYi/rO+ryMO", + "privateLinkState": "Enabled", + "privateLinkScopeResourceId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/1bfbb5d0-917e-4346-9026-1d3b344417f5/resourceGroups/akkeshar/providers/Microsoft.Kubernetes/connectedClusters/connectedCluster1", + "name": "connectedCluster1", + "type": "Microsoft.Kubernetes/connectedClusters", + "location": "East US", + "tags": {}, + "systemData": { + "createdBy": "sikasire@microsoft.com", + "createdByType": "User", + "createdAt": "2020-12-17T07:06:33.9173186Z", + "lastModifiedBy": "sikasire@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-12-17T07:06:33.9173186Z" + }, + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "agentPublicKeyCertificate": "MIICYzCCAcygAwIBAgIBADANBgkqhkiG9w0BAQUFADAuMQswCQYDVQQGEwJVUzEMMAoGA1UEChMDSUJNMREwDwYDVQQLEwhMb2NhbCBDQTAeFw05OTEyMjIwNTAwMDBaFw0wMDEyMjMwNDU5NTlaMC4xCzAJBgNVBAYTAlVTMQwwCgYDVQQKEwNJQk0xETAPBgNVBAsTCExvY2FsIENBMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQD2bZEo7xGaX2/0GHkrNFZvlxBou9v1Jmt/PDiTMPve8r9FeJAQ0QdvFST/0JPQYD20rH0bimdDLgNdNynmyRoS2S/IInfpmf69iyc2G0TPyRvmHIiOZbdCd+YBHQi1adkj17NDcWj6S14tVurFX73zx0sNoMS79q3tuXKrDsxeuwIDAQABo4GQMIGNMEsGCVUdDwGG+EIBDQQ+EzxHZW5lcmF0ZWQgYnkgdGhlIFNlY3VyZVdheSBTZWN1cml0eSBTZXJ2ZXIgZm9yIE9TLzM5MCAoUkFDRikwDgYDVR0PAQH/BAQDAgAGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFJ3+ocRyCTJw067dLSwr/nalx6YMMA0GCSqGSIb3DQEBBQUAA4GBAMaQzt+zaj1GU77yzlr8iiMBXgdQrwsZZWJo5exnAucJAEYQZmOfyLiM D6oYq+ZnfvM0n8G/Y79q8nhwvuxpYOnRSAXFp6xSkrIOeZtJMY1h00LKp/JX3Ng1svZ2agE126JHsQ0bhzN5TKsYfbwfTwfjdWAGy6Vf1nYi/rO+ryMO", + "kubernetesVersion": "1.17.0", + "totalNodeCount": 2, + "agentVersion": "0.1.0", + "privateLinkState": "Enabled", + "privateLinkScopeResourceId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/1bfbb5d0-917e-4346-9026-1d3b344417f5/resourceGroups/akkeshar/providers/Microsoft.Kubernetes/connectedClusters/connectedCluster1", + "name": "connectedCluster1", + "type": "Microsoft.Kubernetes/connectedClusters", + "location": "East US", + "tags": {}, + "systemData": { + "createdBy": "sikasire@microsoft.com", + "createdByType": "User", + "createdAt": "2020-12-17T07:06:33.9173186Z", + "lastModifiedBy": "sikasire@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-12-17T07:06:33.9173186Z" + }, + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "agentPublicKeyCertificate": "MIICYzCCAcygAwIBAgIBADANBgkqhkiG9w0BAQUFADAuMQswCQYDVQQGEwJVUzEMMAoGA1UEChMDSUJNMREwDwYDVQQLEwhMb2NhbCBDQTAeFw05OTEyMjIwNTAwMDBaFw0wMDEyMjMwNDU5NTlaMC4xCzAJBgNVBAYTAlVTMQwwCgYDVQQKEwNJQk0xETAPBgNVBAsTCExvY2FsIENBMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQD2bZEo7xGaX2/0GHkrNFZvlxBou9v1Jmt/PDiTMPve8r9FeJAQ0QdvFST/0JPQYD20rH0bimdDLgNdNynmyRoS2S/IInfpmf69iyc2G0TPyRvmHIiOZbdCd+YBHQi1adkj17NDcWj6S14tVurFX73zx0sNoMS79q3tuXKrDsxeuwIDAQABo4GQMIGNMEsGCVUdDwGG+EIBDQQ+EzxHZW5lcmF0ZWQgYnkgdGhlIFNlY3VyZVdheSBTZWN1cml0eSBTZXJ2ZXIgZm9yIE9TLzM5MCAoUkFDRikwDgYDVR0PAQH/BAQDAgAGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFJ3+ocRyCTJw067dLSwr/nalx6YMMA0GCSqGSIb3DQEBBQUAA4GBAMaQzt+zaj1GU77yzlr8iiMBXgdQrwsZZWJo5exnAucJAEYQZmOfyLiM D6oYq+ZnfvM0n8G/Y79q8nhwvuxpYOnRSAXFp6xSkrIOeZtJMY1h00LKp/JX3Ng1svZ2agE126JHsQ0bhzN5TKsYfbwfTwfjdWAGy6Vf1nYi/rO+ryMO", + "kubernetesVersion": "1.17.0", + "totalNodeCount": 2, + "agentVersion": "0.1.0", + "privateLinkState": "Enabled", + "privateLinkScopeResourceId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName", + "provisioningState": "Accepted" + } + } + } + } +} diff --git a/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2021-04-01-preview/examples/GetClusterExample.json b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2021-04-01-preview/examples/GetClusterExample.json index e0942e824449..100a33266964 100644 --- a/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2021-04-01-preview/examples/GetClusterExample.json +++ b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2021-04-01-preview/examples/GetClusterExample.json @@ -31,7 +31,7 @@ "kubernetesVersion": "1.17.0", "totalNodeCount": 2, "agentVersion": "0.1.0", - "privateLinkScopeResourceId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName", + "privateLinkState": "Disabled", "provisioningState": "Succeeded" } } diff --git a/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2021-04-01-preview/examples/GetClustersByResourceGroupExample.json b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2021-04-01-preview/examples/GetClustersByResourceGroupExample.json index ee96713eb9ac..649f3e78d03e 100644 --- a/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2021-04-01-preview/examples/GetClustersByResourceGroupExample.json +++ b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2021-04-01-preview/examples/GetClustersByResourceGroupExample.json @@ -32,6 +32,7 @@ "kubernetesVersion": "1.17.0", "totalNodeCount": 2, "agentVersion": "0.1.0", + "privateLinkState": "Disabled", "provisioningState": "Succeeded" } }, @@ -59,6 +60,7 @@ "kubernetesVersion": "1.1", "totalNodeCount": 2, "agentVersion": "0.1.0", + "privateLinkState": "Enabled", "privateLinkScopeResourceId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName", "provisioningState": "Succeeded" } diff --git a/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2021-04-01-preview/examples/GetClustersBySubscriptionExample.json b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2021-04-01-preview/examples/GetClustersBySubscriptionExample.json index 4fc87eb166f1..ac6cdcad80ae 100644 --- a/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2021-04-01-preview/examples/GetClustersBySubscriptionExample.json +++ b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2021-04-01-preview/examples/GetClustersBySubscriptionExample.json @@ -31,6 +31,7 @@ "kubernetesVersion": "1.17.0", "totalNodeCount": 2, "agentVersion": "0.1.0", + "privateLinkState": "Disabled", "provisioningState": "Succeeded" } }, @@ -58,6 +59,7 @@ "kubernetesVersion": "1.16.3", "totalNodeCount": 4, "agentVersion": "0.1.0", + "privateLinkState": "Enabled", "privateLinkScopeResourceId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName", "provisioningState": "Succeeded" } diff --git a/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2021-04-01-preview/examples/UpdateClusterExample.json b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2021-04-01-preview/examples/UpdateClusterExample.json index 7410166d678c..ee5337d05d70 100644 --- a/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2021-04-01-preview/examples/UpdateClusterExample.json +++ b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2021-04-01-preview/examples/UpdateClusterExample.json @@ -8,9 +8,6 @@ "tags": { "tag1": "value1", "tag2": "value2" - }, - "properties": { - "privateLinkScopeResourceId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName" } } }, @@ -21,7 +18,10 @@ "name": "connectedCluster1", "type": "Microsoft.Kubernetes/connectedClusters", "location": "East US", - "tags": {}, + "tags": { + "tag1": "value1", + "tag2": "value2" + }, "systemData": { "createdBy": "sikasire@microsoft.com", "createdByType": "User", @@ -38,10 +38,11 @@ "kubernetesVersion": "1.17.0", "totalNodeCount": 2, "agentVersion": "0.1.0", - "privateLinkScopeResourceId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName", + "privateLinkState": "Disabled", "provisioningState": "Succeeded" } } - } + }, + "202": {} } } diff --git a/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2021-04-01-preview/examples/UpdateClusterPrivateLinkExample.json b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2021-04-01-preview/examples/UpdateClusterPrivateLinkExample.json new file mode 100644 index 000000000000..7c20d352e7b4 --- /dev/null +++ b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2021-04-01-preview/examples/UpdateClusterPrivateLinkExample.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "1bfbb5d0-917e-4346-9026-1d3b344417f5", + "resourceGroupName": "k8sc-rg", + "clusterName": "testCluster", + "ConnectedClusterPatch": { + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "privateLinkState": "Enabled", + "privateLinkScopeResourceId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/1bfbb5d0-917e-4346-9026-1d3b344417f5/resourceGroups/akkeshar/providers/Microsoft.Kubernetes/connectedClusters/connectedCluster1", + "name": "connectedCluster1", + "type": "Microsoft.Kubernetes/connectedClusters", + "location": "East US", + "tags": {}, + "systemData": { + "createdBy": "sikasire@microsoft.com", + "createdByType": "User", + "createdAt": "2020-12-17T07:06:33.9173186Z", + "lastModifiedBy": "2d2a754c-cade-4935-83d4-ce413c5a3910", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-12-17T07:14:58.865041Z" + }, + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "agentPublicKeyCertificate": "MIICYzCCAcygAwIBAgIBADANBgkqhkiG9w0BAQUFADAuMQswCQYDVQQGEwJVUzEMMAoGA1UEChMDSUJNMREwDwYDVQQLEwhMb2NhbCBDQTAeFw05OTEyMjIwNTAwMDBaFw0wMDEyMjMwNDU5NTlaMC4xCzAJBgNVBAYTAlVTMQwwCgYDVQQKEwNJQk0xETAPBgNVBAsTCExvY2FsIENBMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQD2bZEo7xGaX2/0GHkrNFZvlxBou9v1Jmt/PDiTMPve8r9FeJAQ0QdvFST/0JPQYD20rH0bimdDLgNdNynmyRoS2S/IInfpmf69iyc2G0TPyRvmHIiOZbdCd+YBHQi1adkj17NDcWj6S14tVurFX73zx0sNoMS79q3tuXKrDsxeuwIDAQABo4GQMIGNMEsGCVUdDwGG+EIBDQQ+EzxHZW5lcmF0ZWQgYnkgdGhlIFNlY3VyZVdheSBTZWN1cml0eSBTZXJ2ZXIgZm9yIE9TLzM5MCAoUkFDRikwDgYDVR0PAQH/BAQDAgAGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFJ3+ocRyCTJw067dLSwr/nalx6YMMA0GCSqGSIb3DQEBBQUAA4GBAMaQzt+zaj1GU77yzlr8iiMBXgdQrwsZZWJo5exnAucJAEYQZmOfyLiM D6oYq+ZnfvM0n8G/Y79q8nhwvuxpYOnRSAXFp6xSkrIOeZtJMY1h00LKp/JX3Ng1svZ2agE126JHsQ0bhzN5TKsYfbwfTwfjdWAGy6Vf1nYi/rO+ryMO", + "kubernetesVersion": "1.17.0", + "totalNodeCount": 2, + "agentVersion": "0.1.0", + "privateLinkState": "Enabled", + "privateLinkScopeResourceId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName", + "provisioningState": "Succeeded" + } + } + }, + "202": {} + } +} diff --git a/specification/hybridkubernetes/resource-manager/readme.azureresourceschema.md b/specification/hybridkubernetes/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index b6ef1eaafa00..000000000000 --- a/specification/hybridkubernetes/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,48 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-kubernetes-2021-04-01-preview - - tag: schema-kubernetes-2021-03-01 - - tag: schema-kubernetes-2020-01-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-kubernetes-2021-04-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-kubernetes-2021-04-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Kubernetes/preview/2021-04-01-preview/connectedClusters.json - -``` - -### Tag: schema-kubernetes-2021-03-01 and azureresourceschema - -``` yaml $(tag) == 'schema-kubernetes-2021-03-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Kubernetes/stable/2021-03-01/connectedClusters.json - -``` - -### Tag: schema-kubernetes-2020-01-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-kubernetes-2020-01-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Kubernetes/preview/2020-01-01-preview/connectedClusters.json - -``` diff --git a/specification/hybridkubernetes/resource-manager/readme.go.md b/specification/hybridkubernetes/resource-manager/readme.go.md index 30f9221a7e10..01c242b7cc82 100644 --- a/specification/hybridkubernetes/resource-manager/readme.go.md +++ b/specification/hybridkubernetes/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ```yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION clear-output-folder: true ``` diff --git a/specification/hybridkubernetes/resource-manager/readme.md b/specification/hybridkubernetes/resource-manager/readme.md index 3ce5d64446c7..4477c3eb8504 100644 --- a/specification/hybridkubernetes/resource-manager/readme.md +++ b/specification/hybridkubernetes/resource-manager/readme.md @@ -66,7 +66,7 @@ This is not used by Autorest itself. ```yaml $(swagger-to-sdk) swagger-to-sdk: - - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-java - repo: azure-sdk-for-go - repo: azure-sdk-for-ruby @@ -74,8 +74,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_hybridkubernetes'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js hybridkubernetes/resource-manager ``` ## Go @@ -98,7 +96,5 @@ See configuration in [readme.csharp.md](./readme.csharp.md) See configuration in [readme.java.md](./readme.java.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/hybridkubernetes/resource-manager/readme.python.md b/specification/hybridkubernetes/resource-manager/readme.python.md index 6c4ece64c4ae..8bb6e85d5816 100644 --- a/specification/hybridkubernetes/resource-manager/readme.python.md +++ b/specification/hybridkubernetes/resource-manager/readme.python.md @@ -4,36 +4,15 @@ These settings apply only when `--python` is specified on the command line. Please also specify `--python-sdks-folder=`. Use `--python-mode=update` if you already have a setup.py and just want to update the code itself. -```yaml $(python) && !$(track2) -python: - python-mode: create - azure-arm: true - license-header: MICROSOFT_MIT_NO_VERSION - payload-flattening-threshold: 2 - namespace: azure.mgmt.hybridkubernetes - package-name: azure-mgmt-hybridkubernetes - package-version: 0.1.1 - clear-output-folder: true -``` ```yaml $(python) && $(track2) -python-mode: create azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION -namespace: azure.mgmt.hybridkubernetes package-name: azure-mgmt-hybridkubernetes -package-version: 0.1.1 +no-namespace-folders: true +package-version: 1.0.0b1 clear-output-folder: true ``` -``` yaml $(python) && $(python-mode) == 'update' && !$(track2) -python: - no-namespace-folders: true - output-folder: $(python-sdks-folder)/hybridkubernetes/azure-mgmt-hybridkubernetes/azure/mgmt/hybridkubernetes -``` -``` yaml $(python) && $(python-mode) == 'create' && !$(track2) -python: - basic-setup-py: true - output-folder: $(python-sdks-folder)/hybridkubernetes/azure-mgmt-hybridkubernetes -``` + ``` yaml $(python) && $(python-mode) == 'update' && $(track2) no-namespace-folders: true output-folder: $(python-sdks-folder)/hybridkubernetes/azure-mgmt-hybridkubernetes/azure/mgmt/hybridkubernetes diff --git a/specification/hybridnetwork/resource-manager/readme.azureresourceschema.md b/specification/hybridnetwork/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index a8d43d547bdb..000000000000 --- a/specification/hybridnetwork/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,30 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-hybridnetwork-2020-01-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-hybridnetwork-2020-01-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-hybridnetwork-2020-01-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.HybridNetwork/preview/2020-01-01-preview/common.json - - Microsoft.HybridNetwork/preview/2020-01-01-preview/networkFunction.json - - Microsoft.HybridNetwork/preview/2020-01-01-preview/device.json - - Microsoft.HybridNetwork/preview/2020-01-01-preview/operation.json - - Microsoft.HybridNetwork/preview/2020-01-01-preview/vendor.json - - Microsoft.HybridNetwork/preview/2020-01-01-preview/networkFunctionVendor.json - - Microsoft.HybridNetwork/preview/2020-01-01-preview/vendorNetworkFunction.json - -``` diff --git a/specification/hybridnetwork/resource-manager/readme.go.md b/specification/hybridnetwork/resource-manager/readme.go.md index 82b8abc88bd1..d68114f2fd4c 100644 --- a/specification/hybridnetwork/resource-manager/readme.go.md +++ b/specification/hybridnetwork/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ```yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION clear-output-folder: true ``` diff --git a/specification/hybridnetwork/resource-manager/readme.md b/specification/hybridnetwork/resource-manager/readme.md index 0587f415d85b..9b41f2939671 100644 --- a/specification/hybridnetwork/resource-manager/readme.md +++ b/specification/hybridnetwork/resource-manager/readme.md @@ -54,7 +54,7 @@ This is not used by Autorest itself. ```yaml $(swagger-to-sdk) swagger-to-sdk: - - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-java - repo: azure-sdk-for-go - repo: azure-sdk-for-js @@ -62,8 +62,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_hybridnetwork'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js hybridnetwork/resource-manager ``` ## Go @@ -86,6 +84,4 @@ See configuration in [readme.typescript.md](./readme.typescript.md) See configuration in [readme.csharp.md](./readme.csharp.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/hybridnetwork/resource-manager/readme.python.md b/specification/hybridnetwork/resource-manager/readme.python.md index 312e0b025d5e..5179d31cf99f 100644 --- a/specification/hybridnetwork/resource-manager/readme.python.md +++ b/specification/hybridnetwork/resource-manager/readme.python.md @@ -3,19 +3,20 @@ These settings apply only when `--python` is specified on the command line. Please also specify `--python-sdks-folder=`. -```yaml $(python) -python: - azure-arm: true - license-header: MICROSOFT_MIT_NO_VERSION - payload-flattening-threshold: 2 - namespace: Microsoft.HybridNetwork - package-name: hybridnetwork - package-version: 2020-01-01-preview - clear-output-folder: true +```yaml $(python) && $(track2) +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +package-name: azure-mgmt-hybridnetwork +package-version: 1.0.0b1 +clear-output-folder: true ``` -```yaml $(python) -python: - no-namespace-folders: true - output-folder: $(python-sdks-folder)/azure-mgmt/hybridnetwork +```yaml $(python) && $(python-mode) == 'update' && $(track2) +no-namespace-folders: true +output-folder: $(python-sdks-folder)/hybridnetwork/azure-mgmt-hybridnetwork/azure/mgmt/hybridnetwork ``` + +``` yaml $(python) && $(python-mode) == 'create' && $(track2) +basic-setup-py: true +output-folder: $(python-sdks-folder)/hybridnetwork/azure-mgmt-hybridnetwork +``` \ No newline at end of file diff --git a/specification/imagebuilder/resource-manager/readme.azureresourceschema.md b/specification/imagebuilder/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 2f006d12de43..000000000000 --- a/specification/imagebuilder/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,60 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-virtualmachineimages-2020-02-14 - - tag: schema-virtualmachineimages-2019-05-01-preview - - tag: schema-virtualmachineimages-2019-02-01-preview - - tag: schema-virtualmachineimages-2018-02-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-virtualmachineimages-2020-02-14 and azureresourceschema - -``` yaml $(tag) == 'schema-virtualmachineimages-2020-02-14' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.VirtualMachineImages/stable/2020-02-14/imagebuilder.json - -``` - -### Tag: schema-virtualmachineimages-2019-05-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-virtualmachineimages-2019-05-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.VirtualMachineImages/preview/2019-05-01-preview/imagebuilder.json - -``` - -### Tag: schema-virtualmachineimages-2019-02-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-virtualmachineimages-2019-02-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.VirtualMachineImages/preview/2019-02-01-preview/imagebuilder.json - -``` - -### Tag: schema-virtualmachineimages-2018-02-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-virtualmachineimages-2018-02-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.VirtualMachineImages/preview/2018-02-01-preview/imagebuilder.json - -``` diff --git a/specification/imagebuilder/resource-manager/readme.go.md b/specification/imagebuilder/resource-manager/readme.go.md index c006a0d7bdcf..0e1ad25c6954 100644 --- a/specification/imagebuilder/resource-manager/readme.go.md +++ b/specification/imagebuilder/resource-manager/readme.go.md @@ -3,7 +3,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: virtualmachineimagebuilder clear-output-folder: true ``` @@ -24,7 +24,7 @@ These settings apply only when `--tag=package-2020-02 --go` is specified on the Please also specify `--go-sdk-folder=`. ``` yaml $(tag) == 'package-2020-02' && $(go) -output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2020-02-01/$(namespace) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2020-02-14/$(namespace) ``` ### Tag: package-2018-02 diff --git a/specification/imagebuilder/resource-manager/readme.md b/specification/imagebuilder/resource-manager/readme.md index f3ecf3e49b12..09350e9bb5b6 100644 --- a/specification/imagebuilder/resource-manager/readme.md +++ b/specification/imagebuilder/resource-manager/readme.md @@ -78,45 +78,17 @@ This is not used by Autorest itself. ``` yaml $(swagger-to-sdk) swagger-to-sdk: - repo: azure-powershell - - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-java - repo: azure-sdk-for-go - repo: azure-sdk-for-js - repo: azure-sdk-for-node - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js imagebuilder/resource-manager ``` ## 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.imagebuilder - package-name: azure-mgmt-imagebuilder - clear-output-folder: true - package-version: 0.3.0 -``` - -``` yaml $(python) && $(python-mode) == 'update' -python: - no-namespace-folders: true - output-folder: $(python-sdks-folder)/compute/azure-mgmt-imagebuilder/azure/mgmt/imagebuilder -``` - -``` yaml $(python) && $(python-mode) == 'create' -python: - basic-setup-py: true - output-folder: $(python-sdks-folder)/compute/azure-mgmt-imagebuilder -``` +See configuration in [readme.python.md](./readme.python.md) ## Go @@ -169,7 +141,5 @@ regenerate-manager: true generate-interface: true ``` -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/imagebuilder/resource-manager/readme.python.md b/specification/imagebuilder/resource-manager/readme.python.md new file mode 100644 index 000000000000..7977e1077c57 --- /dev/null +++ b/specification/imagebuilder/resource-manager/readme.python.md @@ -0,0 +1,23 @@ +## 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) && $(track2) +python-mode: create +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +namespace: azure.mgmt.imagebuilder +package-name: azure-mgmt-imagebuilder +clear-output-folder: true +package-version: 1.0.0b1 +``` +``` yaml $(python) && $(python-mode) == 'update' && $(track2) +no-namespace-folders: true +output-folder: $(python-sdks-folder)/compute/azure-mgmt-imagebuilder/azure/mgmt/imagebuilder +``` +``` yaml $(python) && $(python-mode) == 'create' && $(track2) +basic-setup-py: true +output-folder: $(python-sdks-folder)/compute/azure-mgmt-imagebuilder +``` \ No newline at end of file diff --git a/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2020-09-01/examples/GetAttestedData.json b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2020-09-01/examples/GetAttestedData.json new file mode 100644 index 000000000000..162ebec2ab46 --- /dev/null +++ b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2020-09-01/examples/GetAttestedData.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2020-09-01", + "nonce": "abcde12345", + "Metadata": "true" + }, + "responses": { + "200": { + "body": { + "encoding": "pkcs7", + "signature": "MIID2gYJKoZIhvcNAQcCoIIDyzCCA8cCAQExDzANBgkqhkiG9w0BAQsFADCBggYJKoZIhvcNAQcBoHUEc3sibm9uY2UiOiIxMTExMTExMTExIiwicGxhbiI6eyJuYW1lIjoiIiwicHJvZHVjdCI6IiIsInB1Ymxpc2hlciI6IiJ9LCJ2bUlkIjoiMDJhYWI4YTQtNzRlZi00NzZlLTgxODItZjZkMmJhNDE2NmE2In2gggI/MIICOzCCAaSgAwIBAgIQQWsFjXN35oBJKFXI3QrM3TANBgkqhkiG9w0BAQQFADArMSkwJwYDVQQDEyB0ZXN0c3ViZG9tYWluLm1ldGFkYXRhLmF6dXJlLmNvbTAeFw0xODExMDgxODUzMDRaFw0xODEyMDgxODUzMDNaMCsxKTAnBgNVBAMTIHRlc3RzdWJkb21haW4ubWV0YWRhdGEuYXp1cmUuY29tMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDEi0FVslYnUX+MneC7ERMU4ZM88z4J80r7RPgvzxCPNhXUQlWm3cmVRZMD8kKMv7brkvEsATP7Ak60/I/XEtOga4LGCvMaQa8I/MW8IhSyp2Vj015glAiV8TeUI5DuOIOS96lQvM+G7bt23swkIwVjm1u1ViTZiKKytwpY/EGqzQIDAQABo2AwXjBcBgNVHQEEVTBTgBAt3MRgJmEoUMiPy7k06cLfoS0wKzEpMCcGA1UEAxMgdGVzdHN1YmRvbWFpbi5tZXRhZGF0YS5henVyZS5jb22CEEFrBY1zd+aASShVyN0KzN0wDQYJKoZIhvcNAQEEBQADgYEAd87qiZnRlGIFQ5IEcL/A7ru23WSQAOBsNPt70Fg1GtaEHcYshKUJFhGwXOgZ11cY5wRfrSvEKuzvhAeIZwkvzkBjC04g8sRrjN5leLY5CsKzQhjN52TUMsHhqTM58tfAnICeTddQwn6LOgfqtYH5WO+F/VbFCwPstYUqjmQEYAoxgegwgeUCAQEwPzArMSkwJwYDVQQDEyB0ZXN0c3ViZG9tYWluLm1ldGFkYXRhLmF6dXJlLmNvbQIQQWsFjXN35oBJKFXI3QrM3TANBgkqhkiG9w0BAQsFADANBgkqhkiG9w0BAQEFAASBgCbkRKmQ1MdWZPVOrX7ZBKHQUWPFrQQNdjk3KB67GkY0W0Taxut4K7D2PmiflVEwxB92pTbaZZr/dldu1k1ab1YamHcVYdgZgxIkoOWohGR0ym8oL9JHjFMEqHUbEPtDwE8X+djtDd8TVdb6LYe77IXmz/VaX4whuejlSvQXjaL" + } + } + } +} diff --git a/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2020-09-01/examples/GetIdentityInfo.json b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2020-09-01/examples/GetIdentityInfo.json new file mode 100644 index 000000000000..a175137653c1 --- /dev/null +++ b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2020-09-01/examples/GetIdentityInfo.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-09-01", + "Metadata": "true" + }, + "responses": { + "200": { + "body": { + "tenantId": "abd8daee-d393-4239-9377-883adda3d40f" + } + } + } +} diff --git a/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2020-09-01/examples/GetIdentityToken.json b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2020-09-01/examples/GetIdentityToken.json new file mode 100644 index 000000000000..02acc5761386 --- /dev/null +++ b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2020-09-01/examples/GetIdentityToken.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2020-09-01", + "Metadata": "true", + "resource": "https://vault.azure.net" + }, + "responses": { + "200": { + "body": { + "access_token": "dummytoken", + "client_id": "be5947ed-3560-4afe-9504-59967a63f810", + "expires_in": "3599", + "expires_on": "1541705014", + "ext_expires_in": "262800", + "not_before": "1508961830", + "resource": "https://va" + } + } + } +} diff --git a/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2020-09-01/examples/GetInstanceMetadata.json b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2020-09-01/examples/GetInstanceMetadata.json new file mode 100644 index 000000000000..9f6927ef353e --- /dev/null +++ b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2020-09-01/examples/GetInstanceMetadata.json @@ -0,0 +1,122 @@ +{ + "parameters": { + "api-version": "2020-09-01", + "Metadata": "true" + }, + "responses": { + "200": { + "body": { + "compute": { + "azEnvironment": "AZUREPUBLICCLOUD", + "isHostCompatibilityLayerVm": "true", + "licenseType": "Windows_Server", + "location": "westus", + "name": "examplevmname", + "offer": "Windows", + "osProfile": { + "adminUsername": "admin", + "computerName": "examplevmname" + }, + "osType": "linux", + "placementGroupId": "f67c14ab-e92c-408c-ae2d-da15866ec79a", + "plan": { + "name": "planName", + "product": "planProduct", + "publisher": "planPublisher" + }, + "platformFaultDomain": "36", + "platformUpdateDomain": "42", + "provider": "Microsoft.Compute", + "publicKeys": [ + { + "keyData": "ssh-rsa 0", + "path": "/home/user/.ssh/authorized_keys0" + }, + { + "keyData": "ssh-rsa 1", + "path": "/home/user/.ssh/authorized_keys1" + } + ], + "publisher": "RDFE-Test-Microsoft-Windows-Server-Group", + "resourceGroupName": "macikgo-test-may-23", + "resourceId": "/subscriptions/8d10da13-8125-4ba9-a717-bf7490507b3d/resourceGroups/macikgo-test-may-23/providers/Microsoft.Compute/virtualMachines/examplevmname", + "securityProfile": { + "secureBootEnabled": "true", + "virtualTpmEnabled": "false" + }, + "sku": "Windows-Server-2012-R2-Datacenter", + "storageProfile": { + "dataDisks": [ + { + "caching": "None", + "createOption": "Empty", + "diskSizeGB": "1024", + "image": { + "uri": "" + }, + "lun": "0", + "managedDisk": { + "id": "/subscriptions/8d10da13-8125-4ba9-a717-bf7490507b3d/resourceGroups/macikgo-test-may-23/providers/Microsoft.Compute/disks/exampledatadiskname", + "storageAccountType": "Standard_LRS" + }, + "name": "exampledatadiskname", + "vhd": { + "uri": "" + }, + "writeAcceleratorEnabled": "false" + } + ], + "imageReference": { + "id": "", + "offer": "UbuntuServer", + "publisher": "Canonical", + "sku": "16.04.0-LTS", + "version": "latest" + }, + "osDisk": { + "caching": "ReadWrite", + "createOption": "FromImage", + "diskSizeGB": "30", + "diffDiskSettings": { + "option": "Local" + }, + "encryptionSettings": { + "enabled": "false" + }, + "image": { + "uri": "" + }, + "managedDisk": { + "id": "/subscriptions/8d10da13-8125-4ba9-a717-bf7490507b3d/resourceGroups/macikgo-test-may-23/providers/Microsoft.Compute/disks/exampleosdiskname", + "storageAccountType": "Standard_LRS" + }, + "name": "exampleosdiskname", + "osType": "Linux", + "vhd": { + "uri": "" + }, + "writeAcceleratorEnabled": "false" + } + }, + "subscriptionId": "8d10da13-8125-4ba9-a717-bf7490507b3d", + "tags": "baz:bash;foo:bar", + "tagsList": [ + { + "name": "baz", + "value": "bash" + }, + { + "name": "foo", + "value": "bar" + } + ], + "version": "15.05.22", + "vmId": "02aab8a4-74ef-476e-8182-f6d2ba4166a6", + "vmScaleSetName": "crpteste9vflji9", + "vmSize": "Standard_A3", + "zone": "" + } + } + } + } +} diff --git a/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2020-09-01/imds.json b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2020-09-01/imds.json new file mode 100644 index 000000000000..bbb450688475 --- /dev/null +++ b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2020-09-01/imds.json @@ -0,0 +1,906 @@ +{ + "swagger": "2.0", + "info": { + "title": "InstanceMetadataClient", + "description": "The Azure Instance Metadata Client", + "version": "2020-09-01" + }, + "host": "169.254.169.254", + "basePath": "/metadata", + "schemes": [ + "http", + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "securityDefinitions": { + "basic_auth": { + "type": "basic", + "description": "A Basic authentication flow" + } + }, + "paths": { + "/instance": { + "get": { + "operationId": "Instances_GetMetadata", + "description": "Get Instance Metadata for the Virtual Machine.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/MetadataParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Instance" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Instance Metadata for the VM": { + "$ref": "./examples/GetInstanceMetadata.json" + } + } + } + }, + "/attested/document": { + "get": { + "operationId": "Attested_GetDocument", + "description": "Get Attested Data for the Virtual Machine.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "nonce", + "in": "query", + "required": false, + "type": "string", + "description": "This is a string of up to 32 random alphanumeric characters." + }, + { + "$ref": "#/parameters/MetadataParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AttestedData" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Attested Data for the VM": { + "$ref": "./examples/GetAttestedData.json" + } + } + } + }, + "/identity/oauth2/token": { + "get": { + "tags": [ + "Get token" + ], + "description": "Get a Token from Azure AD", + "operationId": "Identity_GetToken", + "produces": [ + "application/json" + ], + "security": [ + {}, + { + "basic_auth": [] + } + ], + "parameters": [ + { + "$ref": "#/parameters/MetadataParameter" + }, + { + "name": "resource", + "in": "query", + "type": "string", + "description": "This is the urlencoded identifier URI of the sink resource for the requested Azure AD token. The resulting token contains the corresponding aud for this resource.", + "required": true + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "client_id", + "in": "query", + "type": "string", + "description": "This identifies, by Azure AD client id, a specific explicit identity to use when authenticating to Azure AD. Mutually exclusive with object_id and msi_res_id.", + "required": false + }, + { + "name": "object_id", + "in": "query", + "type": "string", + "description": "This identifies, by Azure AD object id, a specific explicit identity to use when authenticating to Azure AD. Mutually exclusive with client_id and msi_res_id.", + "required": false + }, + { + "name": "msi_res_id", + "in": "query", + "type": "string", + "description": "This identifies, by urlencoded ARM resource id, a specific explicit identity to use when authenticating to Azure AD. Mutually exclusive with client_id and object_id.", + "required": false + }, + { + "name": "authority", + "in": "query", + "type": "string", + "description": "This indicates the authority to request AAD tokens from. Defaults to the known authority of the identity to be used.", + "required": false + }, + { + "name": "bypass_cache", + "in": "query", + "type": "string", + "enum": [ + "true" + ], + "description": "If provided, the value must be 'true'. This indicates to the server that the token must be retrieved from Azure AD and cannot be retrieved from an internal cache.", + "required": false, + "x-ms-enum": { + "name": "BypassCache", + "modelAsString": true + } + } + ], + "responses": { + "200": { + "description": "Successful operation", + "schema": { + "$ref": "#/definitions/IdentityTokenResponse" + } + }, + "default": { + "headers": { + "Www-Authenticate": { + "type": "string", + "description": "This is the response header containing a challenge for the Basic scheme with a realm value" + } + }, + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/IdentityErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Identity Token for the VM": { + "$ref": "./examples/GetIdentityToken.json" + } + } + } + }, + "/identity/info": { + "get": { + "tags": [ + "Get metadata information" + ], + "description": "Get information about AAD Metadata", + "operationId": "Identity_GetInfo", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/MetadataParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successful operation", + "schema": { + "$ref": "#/definitions/IdentityInfoResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/IdentityErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Identity Info for the VM": { + "$ref": "./examples/GetIdentityInfo.json" + } + } + } + } + }, + "definitions": { + "Compute": { + "type": "object", + "properties": { + "azEnvironment": { + "type": "string", + "description": "This is the name of the environment in which the VM is running." + }, + "isHostCompatibilityLayerVm": { + "type": "string", + "description": "Identifies if the VM runs on the Host Compatibility Layer." + }, + "licenseType": { + "type": "string", + "description": "Type of license for Azure Hybrid Benefit. Note that this is only present for AHB-enabled VMs." + }, + "location": { + "type": "string", + "description": "This is the Azure Region in which the VM is running." + }, + "name": { + "type": "string", + "description": "This is the name of the VM." + }, + "offer": { + "type": "string", + "description": "This is the offer information for the VM image. This value is only present for images deployed from the Azure Image Gallery." + }, + "osProfile": { + "type": "object", + "description": "This contains the data about the OS.", + "$ref": "#/definitions/OsProfile" + }, + "osType": { + "type": "string", + "description": "This value indicates the type of OS the VM is running, either Linux or Windows." + }, + "placementGroupId": { + "type": "string", + "description": "This is the placement group of your Virtual Machine Scale Set." + }, + "plan": { + "type": "object", + "description": "This contains the data about the plan.", + "$ref": "#/definitions/PlanProperties" + }, + "publicKeys": { + "type": "array", + "items": { + "$ref": "#/definitions/PublicKeysProperties" + }, + "description": "This is information about the SSH certificate" + }, + "platformFaultDomain": { + "type": "string", + "description": "This is the fault domain in which the VM." + }, + "platformUpdateDomain": { + "type": "string", + "description": "This is the update domain in which the VM." + }, + "provider": { + "type": "string", + "description": "This is the provider of the VM." + }, + "publisher": { + "type": "string", + "description": "This is the publisher of the VM image." + }, + "resourceGroupName": { + "type": "string", + "description": "This is the resource group for the VM." + }, + "resourceId": { + "type": "string", + "description": "This is the fully qualified ID for the VM." + }, + "securityProfile": { + "description": "This contains the data about the security profile associated with the VM.", + "$ref": "#/definitions/SecurityProfile" + }, + "sku": { + "type": "string", + "description": "This is the specific SKU for the VM image." + }, + "storageProfile": { + "type": "object", + "description": "This contains the data about the storage disks associated with the VM.", + "$ref": "#/definitions/StorageProfile" + }, + "subscriptionId": { + "type": "string", + "description": "This is the Azure subscription for the VM." + }, + "tags": { + "type": "string", + "description": "This is the list of tags for your VM." + }, + "tagsList": { + "type": "array", + "items": { + "$ref": "#/definitions/TagsProperties" + }, + "description": "This is the list of tags for your VM formatted as a JSON array for easier programmatic parsing." + }, + "version": { + "type": "string", + "description": "This is the version of the VM image." + }, + "vmId": { + "type": "string", + "description": "This is the unique identifier for the VM." + }, + "vmScaleSetName": { + "type": "string", + "description": "This is the resource name of the VMSS." + }, + "vmSize": { + "type": "string", + "description": "This is the size of the VM." + }, + "zone": { + "type": "string", + "description": "This is the availability zone of the VM." + } + }, + "description": "Compute Metadata" + }, + "Network": { + "type": "object", + "properties": { + "interface": { + "type": "array", + "description": "This contains data about the network interface.", + "items": { + "type": "object", + "$ref": "#/definitions/NetworkInterface" + } + } + }, + "description": "Network Metadata" + }, + "NetworkInterface": { + "type": "object", + "description": "This contains data about the network interface.", + "properties": { + "ipv4": { + "type": "object", + "description": "This contains the IPv4 address.", + "properties": { + "ipAddress": { + "type": "array", + "description": "This is the IP address", + "items": { + "type": "object", + "description": "This contains the IPv4 properties.", + "$ref": "#/definitions/Ipv4Properties" + } + }, + "subnet": { + "type": "array", + "description": "This is the subnet", + "items": { + "type": "object", + "description": "This contains the subnet properties.", + "$ref": "#/definitions/SubnetProperties" + } + } + } + }, + "ipv6": { + "type": "object", + "description": "This contains the IPv6 address.", + "properties": { + "ipAddress": { + "type": "array", + "description": "This is the IP address", + "items": { + "type": "object", + "description": "This contains the IPv6 properties.", + "$ref": "#/definitions/Ipv6Properties" + } + } + } + }, + "macAddress": { + "type": "string", + "description": "This is the MAC address of the interface." + } + } + }, + "OsProfile": { + "type": "object", + "description": "This contains the data about the OS.", + "properties": { + "adminUsername": { + "type": "string", + "description": "This is admin account." + }, + "computerName": { + "type": "string", + "description": "This is the name of the VM." + } + } + }, + "PlanProperties": { + "type": "object", + "description": "This contains the data about the plan.", + "properties": { + "name": { + "type": "string", + "description": "This is the Plan ID." + }, + "publisher": { + "type": "string", + "description": "This is the publisher ID." + }, + "product": { + "type": "string", + "description": "This is the product of the image from the Marketplace." + } + } + }, + "PublicKeysProperties": { + "type": "object", + "description": "This contains the data about the public key.", + "properties": { + "path": { + "type": "string", + "description": "This specifies the full path on the VM where the SSH public key is stored." + }, + "keyData": { + "type": "string", + "description": "This is the SSH public key certificate used to authenticate with the VM." + } + } + }, + "TagsProperties": { + "type": "object", + "description": "This contains the properties of the tags in a tagsList.", + "properties": { + "name": { + "type": "string", + "description": "This is the name of the tag. It is equivalent to the key in the key-value pair format." + }, + "value": { + "type": "string", + "description": "This is the value of the tag. It is, as expected, equivalent to the value in the key-value pair format." + } + } + }, + "Ipv4Properties": { + "type": "object", + "description": "This contains the IPv4 properties.", + "properties": { + "privateIpAddress": { + "type": "string", + "description": "This is the private IP address assigned to the interface." + }, + "publicIpAddress": { + "type": "string", + "description": "This is the public IP address assigned to the interface." + } + } + }, + "Ipv6Properties": { + "type": "object", + "description": "This contains the IPv6 properties.", + "properties": { + "privateIpAddress": { + "type": "string", + "description": "This is the private IPv6 address assigned to the interface." + } + } + }, + "SubnetProperties": { + "type": "object", + "description": "This contains the properties of the subnet.", + "properties": { + "address": { + "type": "string", + "description": "This is the address range of the subnet." + }, + "prefix": { + "type": "string", + "description": "This is the prefix of the subnet." + } + } + }, + "SecurityProfile": { + "type": "object", + "description": "This contains the data about the security profile associated with the VM.", + "properties": { + "secureBootEnabled": { + "type": "string", + "description": "Identifies if UEFI secure boot is enabled on the VM" + }, + "virtualTpmEnabled": { + "type": "string", + "description": "Identifies if the virtual Trusted Platform Module (TPM) is enabled on the VM" + } + } + }, + "StorageProfile": { + "type": "object", + "description": "This contains the data about the storage disks associated with the VM.", + "properties": { + "imageReference": { + "type": "object", + "$ref": "#/definitions/ImageReference", + "description": "Image information" + }, + "osDisk": { + "type": "object", + "$ref": "#/definitions/OsDisk", + "description": "OS disk information" + }, + "dataDisks": { + "type": "array", + "description": "Data disk information", + "items": { + "type": "object", + "description": "This contains information about the data disk.", + "$ref": "#/definitions/DataDisk" + } + } + } + }, + "ImageReference": { + "type": "object", + "description": "This contains information about the OS image.", + "properties": { + "id": { + "type": "string", + "description": "This is the resource ID." + }, + "offer": { + "type": "string", + "description": "This is the offer of the platform or marketplace image." + }, + "publisher": { + "type": "string", + "description": "This is the image publisher." + }, + "sku": { + "type": "string", + "description": "This is the image SKU." + }, + "version": { + "type": "string", + "description": "This is the version of the platform or marketplace image." + } + } + }, + "OsDisk": { + "type": "object", + "description": "This contains information about the OS disk used by the VM.", + "properties": { + "caching": { + "type": "string", + "description": "This is the caching requirements." + }, + "createOption": { + "type": "string", + "description": "This is information about how the VM was created." + }, + "diffDiskSettings": { + "type": "object", + "description": "This is the ephemeral disk settings.", + "$ref": "#/definitions/DiffDiskSettings" + }, + "diskSizeGB": { + "type": "string", + "description": "This is the size of the disk in GB." + }, + "encryptionSettings": { + "type": "object", + "description": "This is the encryption settings for the disk.", + "$ref": "#/definitions/EncryptionSettings" + }, + "image": { + "type": "object", + "description": "This is the source user image virtual hard disk.", + "$ref": "#/definitions/DiskImage" + }, + "managedDisk": { + "type": "object", + "description": "This is managed disk parameters.", + "$ref": "#/definitions/ManagedDisk" + }, + "name": { + "type": "string", + "description": "This is the disk name." + }, + "osType": { + "type": "string", + "description": "This is the type of OS included in the disk." + }, + "vhd": { + "type": "object", + "description": "This is the virtual hard disk.", + "$ref": "#/definitions/VirtualHardDisk" + }, + "writeAcceleratorEnabled": { + "type": "string", + "description": "This specifies whether or not writeAccelerator is enabled on the disk." + } + } + }, + "DataDisk": { + "type": "object", + "description": "This contains information about the data disk.", + "properties": { + "caching": { + "type": "string", + "description": "This is the caching requirements." + }, + "createOption": { + "type": "string", + "description": "This is information about how the VM was created." + }, + "diskSizeGB": { + "type": "string", + "description": "This is the size of the disk in GB." + }, + "image": { + "type": "object", + "description": "This is the source user image virtual hard disk.", + "$ref": "#/definitions/DiskImage" + }, + "lun": { + "type": "string", + "description": "This is the logical unit number of the disk." + }, + "managedDisk": { + "type": "object", + "description": "This is managed disk parameters.", + "$ref": "#/definitions/ManagedDisk" + }, + "name": { + "type": "string", + "description": "This is the disk name." + }, + "vhd": { + "type": "object", + "description": "This is the virtual hard disk.", + "$ref": "#/definitions/VirtualHardDisk" + }, + "writeAcceleratorEnabled": { + "type": "string", + "description": "This specifies whether or not writeAccelerator is enabled on the disk." + } + } + }, + "EncryptionSettings": { + "type": "object", + "description": "This is the encryption settings for the disk.", + "properties": { + "enabled": { + "type": "string", + "description": "This specifies whether or not disk encryption is enabled on the VM." + } + } + }, + "DiffDiskSettings": { + "type": "object", + "description": "This is the ephemeral disk settings.", + "properties": { + "option": { + "type": "string", + "description": "This specifies the ephemeral disk settings." + } + } + }, + "DiskImage": { + "type": "object", + "description": "This is the source user image virtual hard disk.", + "properties": { + "uri": { + "type": "string", + "description": "This is the uri of the virtual hard disk." + } + } + }, + "ManagedDisk": { + "type": "object", + "description": "This is managed disk parameters.", + "properties": { + "id": { + "type": "string", + "description": "This is the resource ID." + }, + "storageAccountType": { + "type": "string", + "description": "This is the storage account type for the managed disk." + } + } + }, + "VirtualHardDisk": { + "type": "object", + "description": "This is the virtual hard disk.", + "properties": { + "uri": { + "type": "string", + "description": "This is the uri of the virtual hard disk." + } + } + }, + "ApplicationResponse": { + "type": "string", + "description": "This is a binary string containing the application." + }, + "Instance": { + "type": "object", + "description": "This is the response from the Instance_GetMetadata operation.", + "properties": { + "compute": { + "$ref": "#/definitions/Compute", + "description": "Compute Metadata" + }, + "network": { + "$ref": "#/definitions/Network", + "description": "Network Metadata" + } + } + }, + "AttestedData": { + "type": "object", + "description": "This is the response from the Attested_GetDocument operation.", + "properties": { + "signature": { + "type": "string", + "description": "This is the encoded string containing the VM ID, SKU, plan information, public key, timestamp, and nonce value." + }, + "encoding": { + "type": "string", + "description": "This is the encoding scheme of the signature." + } + } + }, + "ErrorResponse": { + "description": "This is the response from an operation in the case an error occurs.", + "type": "object", + "properties": { + "error": { + "description": "Error message indicating why the operation failed.", + "type": "string" + } + } + }, + "IdentityErrorResponse": { + "type": "object", + "description": "This is the response from an Identity operation in the case an error occurs.", + "properties": { + "error": { + "type": "string", + "description": "Error code", + "enum": [ + "invalid_request", + "unauthorized_client", + "access_denied", + "unsupported_response_type", + "invalid_scope", + "server_error", + "service_unavailable", + "bad_request", + "forbidden", + "not_found", + "method_not_allowed", + "too_many_requests" + ], + "x-ms-enum": { + "name": "Error", + "modelAsString": true + } + }, + "error_description": { + "type": "string", + "description": "Error message indicating why the operation failed." + } + } + }, + "IdentityTokenResponse": { + "type": "object", + "description": "This is the response from the Identity_GetToken operation.", + "properties": { + "access_token": { + "type": "string", + "description": "This is the requested access token. The app can use this token to authenticate to the sink resource." + }, + "expires_in": { + "type": "string", + "description": "This is how long the access token is valid (in seconds)." + }, + "expires_on": { + "type": "string", + "description": "This is the time when the access token expires. The date is represented as the number of seconds from 1970-01-01T0:0:0Z UTC until the expiration time. This value is used to determine the lifetime of cached tokens." + }, + "ext_expires_in": { + "type": "string", + "description": "This indicates the extended lifetime of the token (in seconds)." + }, + "not_before": { + "type": "string", + "description": "This is the time when the access token becomes effective. The date is represented as the number of seconds from 1970-01-01T0:0:0Z UTC until the expiration time." + }, + "resource": { + "type": "string", + "description": "This is the app ID URI of the sink resource." + }, + "token_type": { + "type": "string", + "description": "This indicates the token type value." + }, + "client_id": { + "type": "string", + "description": "This is the client_id specified in the request, if any." + }, + "object_id": { + "type": "string", + "description": "This is the object_id specified in the request, if any." + }, + "msi_res_id": { + "type": "string", + "description": "This is the msi_res_id specified in the request, if any." + } + } + }, + "IdentityInfoResponse": { + "type": "object", + "description": "This is the response from the Identity_GetInfo operation.", + "properties": { + "tenantId": { + "type": "string", + "description": "This is the AAD tenantId of the identity of the system assigned managed identity." + } + } + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "type": "string", + "enum": [ + "2018-10-01" + ], + "description": "This is the API version to use.", + "required": true, + "x-ms-enum": { + "name": "ApiVersion", + "modelAsString": true + } + }, + "MetadataParameter": { + "name": "Metadata", + "in": "header", + "type": "string", + "enum": [ + "true" + ], + "description": "This must be set to 'true'.", + "required": true, + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2020-10-01/examples/GetAttestedData.json b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2020-10-01/examples/GetAttestedData.json new file mode 100644 index 000000000000..ab1823dfbaee --- /dev/null +++ b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2020-10-01/examples/GetAttestedData.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2020-10-01", + "nonce": "abcde12345", + "Metadata": "true" + }, + "responses": { + "200": { + "body": { + "encoding": "pkcs7", + "signature": "MIID2gYJKoZIhvcNAQcCoIIDyzCCA8cCAQExDzANBgkqhkiG9w0BAQsFADCBggYJKoZIhvcNAQcBoHUEc3sibm9uY2UiOiIxMTExMTExMTExIiwicGxhbiI6eyJuYW1lIjoiIiwicHJvZHVjdCI6IiIsInB1Ymxpc2hlciI6IiJ9LCJ2bUlkIjoiMDJhYWI4YTQtNzRlZi00NzZlLTgxODItZjZkMmJhNDE2NmE2In2gggI/MIICOzCCAaSgAwIBAgIQQWsFjXN35oBJKFXI3QrM3TANBgkqhkiG9w0BAQQFADArMSkwJwYDVQQDEyB0ZXN0c3ViZG9tYWluLm1ldGFkYXRhLmF6dXJlLmNvbTAeFw0xODExMDgxODUzMDRaFw0xODEyMDgxODUzMDNaMCsxKTAnBgNVBAMTIHRlc3RzdWJkb21haW4ubWV0YWRhdGEuYXp1cmUuY29tMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDEi0FVslYnUX+MneC7ERMU4ZM88z4J80r7RPgvzxCPNhXUQlWm3cmVRZMD8kKMv7brkvEsATP7Ak60/I/XEtOga4LGCvMaQa8I/MW8IhSyp2Vj015glAiV8TeUI5DuOIOS96lQvM+G7bt23swkIwVjm1u1ViTZiKKytwpY/EGqzQIDAQABo2AwXjBcBgNVHQEEVTBTgBAt3MRgJmEoUMiPy7k06cLfoS0wKzEpMCcGA1UEAxMgdGVzdHN1YmRvbWFpbi5tZXRhZGF0YS5henVyZS5jb22CEEFrBY1zd+aASShVyN0KzN0wDQYJKoZIhvcNAQEEBQADgYEAd87qiZnRlGIFQ5IEcL/A7ru23WSQAOBsNPt70Fg1GtaEHcYshKUJFhGwXOgZ11cY5wRfrSvEKuzvhAeIZwkvzkBjC04g8sRrjN5leLY5CsKzQhjN52TUMsHhqTM58tfAnICeTddQwn6LOgfqtYH5WO+F/VbFCwPstYUqjmQEYAoxgegwgeUCAQEwPzArMSkwJwYDVQQDEyB0ZXN0c3ViZG9tYWluLm1ldGFkYXRhLmF6dXJlLmNvbQIQQWsFjXN35oBJKFXI3QrM3TANBgkqhkiG9w0BAQsFADANBgkqhkiG9w0BAQEFAASBgCbkRKmQ1MdWZPVOrX7ZBKHQUWPFrQQNdjk3KB67GkY0W0Taxut4K7D2PmiflVEwxB92pTbaZZr/dldu1k1ab1YamHcVYdgZgxIkoOWohGR0ym8oL9JHjFMEqHUbEPtDwE8X+djtDd8TVdb6LYe77IXmz/VaX4whuejlSvQXjaL" + } + } + } +} diff --git a/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2020-10-01/examples/GetIdentityInfo.json b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2020-10-01/examples/GetIdentityInfo.json new file mode 100644 index 000000000000..1325c4270dbc --- /dev/null +++ b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2020-10-01/examples/GetIdentityInfo.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-10-01", + "Metadata": "true" + }, + "responses": { + "200": { + "body": { + "tenantId": "abd8daee-d393-4239-9377-883adda3d40f" + } + } + } +} diff --git a/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2020-10-01/examples/GetIdentityToken.json b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2020-10-01/examples/GetIdentityToken.json new file mode 100644 index 000000000000..c4e90bd1c2be --- /dev/null +++ b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2020-10-01/examples/GetIdentityToken.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2020-10-01", + "Metadata": "true", + "resource": "https://vault.azure.net" + }, + "responses": { + "200": { + "body": { + "access_token": "dummytoken", + "client_id": "be5947ed-3560-4afe-9504-59967a63f810", + "expires_in": "3599", + "expires_on": "1541705014", + "ext_expires_in": "262800", + "not_before": "1508961830", + "resource": "https://va" + } + } + } +} diff --git a/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2020-10-01/examples/GetInstanceMetadata.json b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2020-10-01/examples/GetInstanceMetadata.json new file mode 100644 index 000000000000..beefd430c204 --- /dev/null +++ b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2020-10-01/examples/GetInstanceMetadata.json @@ -0,0 +1,123 @@ +{ + "parameters": { + "api-version": "2020-10-01", + "Metadata": "true" + }, + "responses": { + "200": { + "body": { + "compute": { + "azEnvironment": "AZUREPUBLICCLOUD", + "isHostCompatibilityLayerVm": "true", + "licenseType": "Windows_Server", + "location": "westus", + "name": "examplevmname", + "offer": "Windows", + "osProfile": { + "adminUsername": "admin", + "computerName": "examplevmname", + "disablePasswordAuthentication": "true" + }, + "osType": "linux", + "placementGroupId": "f67c14ab-e92c-408c-ae2d-da15866ec79a", + "plan": { + "name": "planName", + "product": "planProduct", + "publisher": "planPublisher" + }, + "platformFaultDomain": "36", + "platformUpdateDomain": "42", + "provider": "Microsoft.Compute", + "publicKeys": [ + { + "keyData": "ssh-rsa 0", + "path": "/home/user/.ssh/authorized_keys0" + }, + { + "keyData": "ssh-rsa 1", + "path": "/home/user/.ssh/authorized_keys1" + } + ], + "publisher": "RDFE-Test-Microsoft-Windows-Server-Group", + "resourceGroupName": "macikgo-test-may-23", + "resourceId": "/subscriptions/8d10da13-8125-4ba9-a717-bf7490507b3d/resourceGroups/macikgo-test-may-23/providers/Microsoft.Compute/virtualMachines/examplevmname", + "securityProfile": { + "secureBootEnabled": "true", + "virtualTpmEnabled": "false" + }, + "sku": "Windows-Server-2012-R2-Datacenter", + "storageProfile": { + "dataDisks": [ + { + "caching": "None", + "createOption": "Empty", + "diskSizeGB": "1024", + "image": { + "uri": "" + }, + "lun": "0", + "managedDisk": { + "id": "/subscriptions/8d10da13-8125-4ba9-a717-bf7490507b3d/resourceGroups/macikgo-test-may-23/providers/Microsoft.Compute/disks/exampledatadiskname", + "storageAccountType": "Standard_LRS" + }, + "name": "exampledatadiskname", + "vhd": { + "uri": "" + }, + "writeAcceleratorEnabled": "false" + } + ], + "imageReference": { + "id": "", + "offer": "UbuntuServer", + "publisher": "Canonical", + "sku": "16.04.0-LTS", + "version": "latest" + }, + "osDisk": { + "caching": "ReadWrite", + "createOption": "FromImage", + "diskSizeGB": "30", + "diffDiskSettings": { + "option": "Local" + }, + "encryptionSettings": { + "enabled": "false" + }, + "image": { + "uri": "" + }, + "managedDisk": { + "id": "/subscriptions/8d10da13-8125-4ba9-a717-bf7490507b3d/resourceGroups/macikgo-test-may-23/providers/Microsoft.Compute/disks/exampleosdiskname", + "storageAccountType": "Standard_LRS" + }, + "name": "exampleosdiskname", + "osType": "Linux", + "vhd": { + "uri": "" + }, + "writeAcceleratorEnabled": "false" + } + }, + "subscriptionId": "8d10da13-8125-4ba9-a717-bf7490507b3d", + "tags": "baz:bash;foo:bar", + "tagsList": [ + { + "name": "baz", + "value": "bash" + }, + { + "name": "foo", + "value": "bar" + } + ], + "version": "15.05.22", + "vmId": "02aab8a4-74ef-476e-8182-f6d2ba4166a6", + "vmScaleSetName": "crpteste9vflji9", + "vmSize": "Standard_A3", + "zone": "" + } + } + } + } +} diff --git a/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2020-10-01/imds.json b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2020-10-01/imds.json new file mode 100644 index 000000000000..94d4fc63e9dd --- /dev/null +++ b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2020-10-01/imds.json @@ -0,0 +1,910 @@ +{ + "swagger": "2.0", + "info": { + "title": "InstanceMetadataClient", + "description": "The Azure Instance Metadata Client", + "version": "2020-10-01" + }, + "host": "169.254.169.254", + "basePath": "/metadata", + "schemes": [ + "http", + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "securityDefinitions": { + "basic_auth": { + "type": "basic", + "description": "A Basic authentication flow" + } + }, + "paths": { + "/instance": { + "get": { + "operationId": "Instances_GetMetadata", + "description": "Get Instance Metadata for the Virtual Machine.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/MetadataParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Instance" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Instance Metadata for the VM": { + "$ref": "./examples/GetInstanceMetadata.json" + } + } + } + }, + "/attested/document": { + "get": { + "operationId": "Attested_GetDocument", + "description": "Get Attested Data for the Virtual Machine.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "nonce", + "in": "query", + "required": false, + "type": "string", + "description": "This is a string of up to 32 random alphanumeric characters." + }, + { + "$ref": "#/parameters/MetadataParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AttestedData" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Attested Data for the VM": { + "$ref": "./examples/GetAttestedData.json" + } + } + } + }, + "/identity/oauth2/token": { + "get": { + "tags": [ + "Get token" + ], + "description": "Get a Token from Azure AD", + "operationId": "Identity_GetToken", + "produces": [ + "application/json" + ], + "security": [ + {}, + { + "basic_auth": [] + } + ], + "parameters": [ + { + "$ref": "#/parameters/MetadataParameter" + }, + { + "name": "resource", + "in": "query", + "type": "string", + "description": "This is the urlencoded identifier URI of the sink resource for the requested Azure AD token. The resulting token contains the corresponding aud for this resource.", + "required": true + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "client_id", + "in": "query", + "type": "string", + "description": "This identifies, by Azure AD client id, a specific explicit identity to use when authenticating to Azure AD. Mutually exclusive with object_id and msi_res_id.", + "required": false + }, + { + "name": "object_id", + "in": "query", + "type": "string", + "description": "This identifies, by Azure AD object id, a specific explicit identity to use when authenticating to Azure AD. Mutually exclusive with client_id and msi_res_id.", + "required": false + }, + { + "name": "msi_res_id", + "in": "query", + "type": "string", + "description": "This identifies, by urlencoded ARM resource id, a specific explicit identity to use when authenticating to Azure AD. Mutually exclusive with client_id and object_id.", + "required": false + }, + { + "name": "authority", + "in": "query", + "type": "string", + "description": "This indicates the authority to request AAD tokens from. Defaults to the known authority of the identity to be used.", + "required": false + }, + { + "name": "bypass_cache", + "in": "query", + "type": "string", + "enum": [ + "true" + ], + "description": "If provided, the value must be 'true'. This indicates to the server that the token must be retrieved from Azure AD and cannot be retrieved from an internal cache.", + "required": false, + "x-ms-enum": { + "name": "BypassCache", + "modelAsString": true + } + } + ], + "responses": { + "200": { + "description": "Successful operation", + "schema": { + "$ref": "#/definitions/IdentityTokenResponse" + } + }, + "default": { + "headers": { + "Www-Authenticate": { + "type": "string", + "description": "This is the response header containing a challenge for the Basic scheme with a realm value" + } + }, + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/IdentityErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Identity Token for the VM": { + "$ref": "./examples/GetIdentityToken.json" + } + } + } + }, + "/identity/info": { + "get": { + "tags": [ + "Get metadata information" + ], + "description": "Get information about AAD Metadata", + "operationId": "Identity_GetInfo", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/MetadataParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successful operation", + "schema": { + "$ref": "#/definitions/IdentityInfoResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/IdentityErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Identity Info for the VM": { + "$ref": "./examples/GetIdentityInfo.json" + } + } + } + } + }, + "definitions": { + "Compute": { + "type": "object", + "properties": { + "azEnvironment": { + "type": "string", + "description": "This is the name of the environment in which the VM is running." + }, + "isHostCompatibilityLayerVm": { + "type": "string", + "description": "Identifies if the VM runs on the Host Compatibility Layer." + }, + "licenseType": { + "type": "string", + "description": "Type of license for Azure Hybrid Benefit. Note that this is only present for AHB-enabled VMs." + }, + "location": { + "type": "string", + "description": "This is the Azure Region in which the VM is running." + }, + "name": { + "type": "string", + "description": "This is the name of the VM." + }, + "offer": { + "type": "string", + "description": "This is the offer information for the VM image. This value is only present for images deployed from the Azure Image Gallery." + }, + "osProfile": { + "type": "object", + "description": "This contains the data about the OS.", + "$ref": "#/definitions/OsProfile" + }, + "osType": { + "type": "string", + "description": "This value indicates the type of OS the VM is running, either Linux or Windows." + }, + "placementGroupId": { + "type": "string", + "description": "This is the placement group of your Virtual Machine Scale Set." + }, + "plan": { + "type": "object", + "description": "This contains the data about the plan.", + "$ref": "#/definitions/PlanProperties" + }, + "publicKeys": { + "type": "array", + "items": { + "$ref": "#/definitions/PublicKeysProperties" + }, + "description": "This is information about the SSH certificate" + }, + "platformFaultDomain": { + "type": "string", + "description": "This is the fault domain in which the VM." + }, + "platformUpdateDomain": { + "type": "string", + "description": "This is the update domain in which the VM." + }, + "provider": { + "type": "string", + "description": "This is the provider of the VM." + }, + "publisher": { + "type": "string", + "description": "This is the publisher of the VM image." + }, + "resourceGroupName": { + "type": "string", + "description": "This is the resource group for the VM." + }, + "resourceId": { + "type": "string", + "description": "This is the fully qualified ID for the VM." + }, + "securityProfile": { + "description": "This contains the data about the security profile associated with the VM.", + "$ref": "#/definitions/SecurityProfile" + }, + "sku": { + "type": "string", + "description": "This is the specific SKU for the VM image." + }, + "storageProfile": { + "type": "object", + "description": "This contains the data about the storage disks associated with the VM.", + "$ref": "#/definitions/StorageProfile" + }, + "subscriptionId": { + "type": "string", + "description": "This is the Azure subscription for the VM." + }, + "tags": { + "type": "string", + "description": "This is the list of tags for your VM." + }, + "tagsList": { + "type": "array", + "items": { + "$ref": "#/definitions/TagsProperties" + }, + "description": "This is the list of tags for your VM formatted as a JSON array for easier programmatic parsing." + }, + "version": { + "type": "string", + "description": "This is the version of the VM image." + }, + "vmId": { + "type": "string", + "description": "This is the unique identifier for the VM." + }, + "vmScaleSetName": { + "type": "string", + "description": "This is the resource name of the VMSS." + }, + "vmSize": { + "type": "string", + "description": "This is the size of the VM." + }, + "zone": { + "type": "string", + "description": "This is the availability zone of the VM." + } + }, + "description": "Compute Metadata" + }, + "Network": { + "type": "object", + "properties": { + "interface": { + "type": "array", + "description": "This contains data about the network interface.", + "items": { + "type": "object", + "$ref": "#/definitions/NetworkInterface" + } + } + }, + "description": "Network Metadata" + }, + "NetworkInterface": { + "type": "object", + "description": "This contains data about the network interface.", + "properties": { + "ipv4": { + "type": "object", + "description": "This contains the IPv4 address.", + "properties": { + "ipAddress": { + "type": "array", + "description": "This is the IP address", + "items": { + "type": "object", + "description": "This contains the IPv4 properties.", + "$ref": "#/definitions/Ipv4Properties" + } + }, + "subnet": { + "type": "array", + "description": "This is the subnet", + "items": { + "type": "object", + "description": "This contains the subnet properties.", + "$ref": "#/definitions/SubnetProperties" + } + } + } + }, + "ipv6": { + "type": "object", + "description": "This contains the IPv6 address.", + "properties": { + "ipAddress": { + "type": "array", + "description": "This is the IP address", + "items": { + "type": "object", + "description": "This contains the IPv6 properties.", + "$ref": "#/definitions/Ipv6Properties" + } + } + } + }, + "macAddress": { + "type": "string", + "description": "This is the MAC address of the interface." + } + } + }, + "OsProfile": { + "type": "object", + "description": "This contains the data about the OS.", + "properties": { + "adminUsername": { + "type": "string", + "description": "This is admin account." + }, + "computerName": { + "type": "string", + "description": "This is the name of the VM." + }, + "disablePasswordAuthentication": { + "type": "string", + "description": "This specifies whether or not password authentication is disabled. Note that this is present only for Linux VMs. For a Windows VM, this value will be the empty string." + } + } + }, + "PlanProperties": { + "type": "object", + "description": "This contains the data about the plan.", + "properties": { + "name": { + "type": "string", + "description": "This is the Plan ID." + }, + "publisher": { + "type": "string", + "description": "This is the publisher ID." + }, + "product": { + "type": "string", + "description": "This is the product of the image from the Marketplace." + } + } + }, + "PublicKeysProperties": { + "type": "object", + "description": "This contains the data about the public key.", + "properties": { + "path": { + "type": "string", + "description": "This specifies the full path on the VM where the SSH public key is stored." + }, + "keyData": { + "type": "string", + "description": "This is the SSH public key certificate used to authenticate with the VM." + } + } + }, + "TagsProperties": { + "type": "object", + "description": "This contains the properties of the tags in a tagsList.", + "properties": { + "name": { + "type": "string", + "description": "This is the name of the tag. It is equivalent to the key in the key-value pair format." + }, + "value": { + "type": "string", + "description": "This is the value of the tag. It is, as expected, equivalent to the value in the key-value pair format." + } + } + }, + "Ipv4Properties": { + "type": "object", + "description": "This contains the IPv4 properties.", + "properties": { + "privateIpAddress": { + "type": "string", + "description": "This is the private IP address assigned to the interface." + }, + "publicIpAddress": { + "type": "string", + "description": "This is the public IP address assigned to the interface." + } + } + }, + "Ipv6Properties": { + "type": "object", + "description": "This contains the IPv6 properties.", + "properties": { + "privateIpAddress": { + "type": "string", + "description": "This is the private IPv6 address assigned to the interface." + } + } + }, + "SubnetProperties": { + "type": "object", + "description": "This contains the properties of the subnet.", + "properties": { + "address": { + "type": "string", + "description": "This is the address range of the subnet." + }, + "prefix": { + "type": "string", + "description": "This is the prefix of the subnet." + } + } + }, + "SecurityProfile": { + "type": "object", + "description": "This contains the data about the security profile associated with the VM.", + "properties": { + "secureBootEnabled": { + "type": "string", + "description": "Identifies if UEFI secure boot is enabled on the VM" + }, + "virtualTpmEnabled": { + "type": "string", + "description": "Identifies if the virtual Trusted Platform Module (TPM) is enabled on the VM" + } + } + }, + "StorageProfile": { + "type": "object", + "description": "This contains the data about the storage disks associated with the VM.", + "properties": { + "imageReference": { + "type": "object", + "$ref": "#/definitions/ImageReference", + "description": "Image information" + }, + "osDisk": { + "type": "object", + "$ref": "#/definitions/OsDisk", + "description": "OS disk information" + }, + "dataDisks": { + "type": "array", + "description": "Data disk information", + "items": { + "type": "object", + "description": "This contains information about the data disk.", + "$ref": "#/definitions/DataDisk" + } + } + } + }, + "ImageReference": { + "type": "object", + "description": "This contains information about the OS image.", + "properties": { + "id": { + "type": "string", + "description": "This is the resource ID." + }, + "offer": { + "type": "string", + "description": "This is the offer of the platform or marketplace image." + }, + "publisher": { + "type": "string", + "description": "This is the image publisher." + }, + "sku": { + "type": "string", + "description": "This is the image SKU." + }, + "version": { + "type": "string", + "description": "This is the version of the platform or marketplace image." + } + } + }, + "OsDisk": { + "type": "object", + "description": "This contains information about the OS disk used by the VM.", + "properties": { + "caching": { + "type": "string", + "description": "This is the caching requirements." + }, + "createOption": { + "type": "string", + "description": "This is information about how the VM was created." + }, + "diffDiskSettings": { + "type": "object", + "description": "This is the ephemeral disk settings.", + "$ref": "#/definitions/DiffDiskSettings" + }, + "diskSizeGB": { + "type": "string", + "description": "This is the size of the disk in GB." + }, + "encryptionSettings": { + "type": "object", + "description": "This is the encryption settings for the disk.", + "$ref": "#/definitions/EncryptionSettings" + }, + "image": { + "type": "object", + "description": "This is the source user image virtual hard disk.", + "$ref": "#/definitions/DiskImage" + }, + "managedDisk": { + "type": "object", + "description": "This is managed disk parameters.", + "$ref": "#/definitions/ManagedDisk" + }, + "name": { + "type": "string", + "description": "This is the disk name." + }, + "osType": { + "type": "string", + "description": "This is the type of OS included in the disk." + }, + "vhd": { + "type": "object", + "description": "This is the virtual hard disk.", + "$ref": "#/definitions/VirtualHardDisk" + }, + "writeAcceleratorEnabled": { + "type": "string", + "description": "This specifies whether or not writeAccelerator is enabled on the disk." + } + } + }, + "DataDisk": { + "type": "object", + "description": "This contains information about the data disk.", + "properties": { + "caching": { + "type": "string", + "description": "This is the caching requirements." + }, + "createOption": { + "type": "string", + "description": "This is information about how the VM was created." + }, + "diskSizeGB": { + "type": "string", + "description": "This is the size of the disk in GB." + }, + "image": { + "type": "object", + "description": "This is the source user image virtual hard disk.", + "$ref": "#/definitions/DiskImage" + }, + "lun": { + "type": "string", + "description": "This is the logical unit number of the disk." + }, + "managedDisk": { + "type": "object", + "description": "This is managed disk parameters.", + "$ref": "#/definitions/ManagedDisk" + }, + "name": { + "type": "string", + "description": "This is the disk name." + }, + "vhd": { + "type": "object", + "description": "This is the virtual hard disk.", + "$ref": "#/definitions/VirtualHardDisk" + }, + "writeAcceleratorEnabled": { + "type": "string", + "description": "This specifies whether or not writeAccelerator is enabled on the disk." + } + } + }, + "EncryptionSettings": { + "type": "object", + "description": "This is the encryption settings for the disk.", + "properties": { + "enabled": { + "type": "string", + "description": "This specifies whether or not disk encryption is enabled on the VM." + } + } + }, + "DiffDiskSettings": { + "type": "object", + "description": "This is the ephemeral disk settings.", + "properties": { + "option": { + "type": "string", + "description": "This specifies the ephemeral disk settings." + } + } + }, + "DiskImage": { + "type": "object", + "description": "This is the source user image virtual hard disk.", + "properties": { + "uri": { + "type": "string", + "description": "This is the uri of the virtual hard disk." + } + } + }, + "ManagedDisk": { + "type": "object", + "description": "This is managed disk parameters.", + "properties": { + "id": { + "type": "string", + "description": "This is the resource ID." + }, + "storageAccountType": { + "type": "string", + "description": "This is the storage account type for the managed disk." + } + } + }, + "VirtualHardDisk": { + "type": "object", + "description": "This is the virtual hard disk.", + "properties": { + "uri": { + "type": "string", + "description": "This is the uri of the virtual hard disk." + } + } + }, + "ApplicationResponse": { + "type": "string", + "description": "This is a binary string containing the application." + }, + "Instance": { + "type": "object", + "description": "This is the response from the Instance_GetMetadata operation.", + "properties": { + "compute": { + "$ref": "#/definitions/Compute", + "description": "Compute Metadata" + }, + "network": { + "$ref": "#/definitions/Network", + "description": "Network Metadata" + } + } + }, + "AttestedData": { + "type": "object", + "description": "This is the response from the Attested_GetDocument operation.", + "properties": { + "signature": { + "type": "string", + "description": "This is the encoded string containing the VM ID, SKU, plan information, public key, timestamp, and nonce value." + }, + "encoding": { + "type": "string", + "description": "This is the encoding scheme of the signature." + } + } + }, + "ErrorResponse": { + "description": "This is the response from an operation in the case an error occurs.", + "type": "object", + "properties": { + "error": { + "description": "Error message indicating why the operation failed.", + "type": "string" + } + } + }, + "IdentityErrorResponse": { + "type": "object", + "description": "This is the response from an Identity operation in the case an error occurs.", + "properties": { + "error": { + "type": "string", + "description": "Error code", + "enum": [ + "invalid_request", + "unauthorized_client", + "access_denied", + "unsupported_response_type", + "invalid_scope", + "server_error", + "service_unavailable", + "bad_request", + "forbidden", + "not_found", + "method_not_allowed", + "too_many_requests" + ], + "x-ms-enum": { + "name": "Error", + "modelAsString": true + } + }, + "error_description": { + "type": "string", + "description": "Error message indicating why the operation failed." + } + } + }, + "IdentityTokenResponse": { + "type": "object", + "description": "This is the response from the Identity_GetToken operation.", + "properties": { + "access_token": { + "type": "string", + "description": "This is the requested access token. The app can use this token to authenticate to the sink resource." + }, + "expires_in": { + "type": "string", + "description": "This is how long the access token is valid (in seconds)." + }, + "expires_on": { + "type": "string", + "description": "This is the time when the access token expires. The date is represented as the number of seconds from 1970-01-01T0:0:0Z UTC until the expiration time. This value is used to determine the lifetime of cached tokens." + }, + "ext_expires_in": { + "type": "string", + "description": "This indicates the extended lifetime of the token (in seconds)." + }, + "not_before": { + "type": "string", + "description": "This is the time when the access token becomes effective. The date is represented as the number of seconds from 1970-01-01T0:0:0Z UTC until the expiration time." + }, + "resource": { + "type": "string", + "description": "This is the app ID URI of the sink resource." + }, + "token_type": { + "type": "string", + "description": "This indicates the token type value." + }, + "client_id": { + "type": "string", + "description": "This is the client_id specified in the request, if any." + }, + "object_id": { + "type": "string", + "description": "This is the object_id specified in the request, if any." + }, + "msi_res_id": { + "type": "string", + "description": "This is the msi_res_id specified in the request, if any." + } + } + }, + "IdentityInfoResponse": { + "type": "object", + "description": "This is the response from the Identity_GetInfo operation.", + "properties": { + "tenantId": { + "type": "string", + "description": "This is the AAD tenantId of the identity of the system assigned managed identity." + } + } + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "type": "string", + "enum": [ + "2018-10-01" + ], + "description": "This is the API version to use.", + "required": true, + "x-ms-enum": { + "name": "ApiVersion", + "modelAsString": true + } + }, + "MetadataParameter": { + "name": "Metadata", + "in": "header", + "type": "string", + "enum": [ + "true" + ], + "description": "This must be set to 'true'.", + "required": true, + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2020-12-01/examples/GetAttestedData.json b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2020-12-01/examples/GetAttestedData.json new file mode 100644 index 000000000000..e2242152e3b0 --- /dev/null +++ b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2020-12-01/examples/GetAttestedData.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2020-12-01", + "nonce": "abcde12345", + "Metadata": "true" + }, + "responses": { + "200": { + "body": { + "encoding": "pkcs7", + "signature": "MIID2gYJKoZIhvcNAQcCoIIDyzCCA8cCAQExDzANBgkqhkiG9w0BAQsFADCBggYJKoZIhvcNAQcBoHUEc3sibm9uY2UiOiIxMTExMTExMTExIiwicGxhbiI6eyJuYW1lIjoiIiwicHJvZHVjdCI6IiIsInB1Ymxpc2hlciI6IiJ9LCJ2bUlkIjoiMDJhYWI4YTQtNzRlZi00NzZlLTgxODItZjZkMmJhNDE2NmE2In2gggI/MIICOzCCAaSgAwIBAgIQQWsFjXN35oBJKFXI3QrM3TANBgkqhkiG9w0BAQQFADArMSkwJwYDVQQDEyB0ZXN0c3ViZG9tYWluLm1ldGFkYXRhLmF6dXJlLmNvbTAeFw0xODExMDgxODUzMDRaFw0xODEyMDgxODUzMDNaMCsxKTAnBgNVBAMTIHRlc3RzdWJkb21haW4ubWV0YWRhdGEuYXp1cmUuY29tMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDEi0FVslYnUX+MneC7ERMU4ZM88z4J80r7RPgvzxCPNhXUQlWm3cmVRZMD8kKMv7brkvEsATP7Ak60/I/XEtOga4LGCvMaQa8I/MW8IhSyp2Vj015glAiV8TeUI5DuOIOS96lQvM+G7bt23swkIwVjm1u1ViTZiKKytwpY/EGqzQIDAQABo2AwXjBcBgNVHQEEVTBTgBAt3MRgJmEoUMiPy7k06cLfoS0wKzEpMCcGA1UEAxMgdGVzdHN1YmRvbWFpbi5tZXRhZGF0YS5henVyZS5jb22CEEFrBY1zd+aASShVyN0KzN0wDQYJKoZIhvcNAQEEBQADgYEAd87qiZnRlGIFQ5IEcL/A7ru23WSQAOBsNPt70Fg1GtaEHcYshKUJFhGwXOgZ11cY5wRfrSvEKuzvhAeIZwkvzkBjC04g8sRrjN5leLY5CsKzQhjN52TUMsHhqTM58tfAnICeTddQwn6LOgfqtYH5WO+F/VbFCwPstYUqjmQEYAoxgegwgeUCAQEwPzArMSkwJwYDVQQDEyB0ZXN0c3ViZG9tYWluLm1ldGFkYXRhLmF6dXJlLmNvbQIQQWsFjXN35oBJKFXI3QrM3TANBgkqhkiG9w0BAQsFADANBgkqhkiG9w0BAQEFAASBgCbkRKmQ1MdWZPVOrX7ZBKHQUWPFrQQNdjk3KB67GkY0W0Taxut4K7D2PmiflVEwxB92pTbaZZr/dldu1k1ab1YamHcVYdgZgxIkoOWohGR0ym8oL9JHjFMEqHUbEPtDwE8X+djtDd8TVdb6LYe77IXmz/VaX4whuejlSvQXjaL" + } + } + } +} diff --git a/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2020-12-01/examples/GetIdentityInfo.json b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2020-12-01/examples/GetIdentityInfo.json new file mode 100644 index 000000000000..7d895d2534df --- /dev/null +++ b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2020-12-01/examples/GetIdentityInfo.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-12-01", + "Metadata": "true" + }, + "responses": { + "200": { + "body": { + "tenantId": "abd8daee-d393-4239-9377-883adda3d40f" + } + } + } +} diff --git a/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2020-12-01/examples/GetIdentityToken.json b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2020-12-01/examples/GetIdentityToken.json new file mode 100644 index 000000000000..1a1fac975383 --- /dev/null +++ b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2020-12-01/examples/GetIdentityToken.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2020-12-01", + "Metadata": "true", + "resource": "https://vault.azure.net" + }, + "responses": { + "200": { + "body": { + "access_token": "dummytoken", + "client_id": "be5947ed-3560-4afe-9504-59967a63f810", + "expires_in": "3599", + "expires_on": "1541705014", + "ext_expires_in": "262800", + "not_before": "1508961830", + "resource": "https://va" + } + } + } +} diff --git a/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2020-12-01/examples/GetInstanceMetadata.json b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2020-12-01/examples/GetInstanceMetadata.json new file mode 100644 index 000000000000..430849198dc3 --- /dev/null +++ b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2020-12-01/examples/GetInstanceMetadata.json @@ -0,0 +1,125 @@ +{ + "parameters": { + "api-version": "2020-12-01", + "Metadata": "true" + }, + "responses": { + "200": { + "body": { + "compute": { + "azEnvironment": "AZUREPUBLICCLOUD", + "evictionPolicy": "deallocate", + "isHostCompatibilityLayerVm": "true", + "licenseType": "Windows_Server", + "location": "westus", + "name": "examplevmname", + "offer": "Windows", + "osProfile": { + "adminUsername": "admin", + "computerName": "examplevmname", + "disablePasswordAuthentication": "true" + }, + "osType": "linux", + "placementGroupId": "f67c14ab-e92c-408c-ae2d-da15866ec79a", + "plan": { + "name": "planName", + "product": "planProduct", + "publisher": "planPublisher" + }, + "platformFaultDomain": "36", + "platformUpdateDomain": "42", + "priority": "Spot", + "provider": "Microsoft.Compute", + "publicKeys": [ + { + "keyData": "ssh-rsa 0", + "path": "/home/user/.ssh/authorized_keys0" + }, + { + "keyData": "ssh-rsa 1", + "path": "/home/user/.ssh/authorized_keys1" + } + ], + "publisher": "RDFE-Test-Microsoft-Windows-Server-Group", + "resourceGroupName": "macikgo-test-may-23", + "resourceId": "/subscriptions/8d10da13-8125-4ba9-a717-bf7490507b3d/resourceGroups/macikgo-test-may-23/providers/Microsoft.Compute/virtualMachines/examplevmname", + "securityProfile": { + "secureBootEnabled": "true", + "virtualTpmEnabled": "false" + }, + "sku": "Windows-Server-2012-R2-Datacenter", + "storageProfile": { + "dataDisks": [ + { + "caching": "None", + "createOption": "Empty", + "diskSizeGB": "1024", + "image": { + "uri": "" + }, + "lun": "0", + "managedDisk": { + "id": "/subscriptions/8d10da13-8125-4ba9-a717-bf7490507b3d/resourceGroups/macikgo-test-may-23/providers/Microsoft.Compute/disks/exampledatadiskname", + "storageAccountType": "Standard_LRS" + }, + "name": "exampledatadiskname", + "vhd": { + "uri": "" + }, + "writeAcceleratorEnabled": "false" + } + ], + "imageReference": { + "id": "", + "offer": "UbuntuServer", + "publisher": "Canonical", + "sku": "16.04.0-LTS", + "version": "latest" + }, + "osDisk": { + "caching": "ReadWrite", + "createOption": "FromImage", + "diskSizeGB": "30", + "diffDiskSettings": { + "option": "Local" + }, + "encryptionSettings": { + "enabled": "false" + }, + "image": { + "uri": "" + }, + "managedDisk": { + "id": "/subscriptions/8d10da13-8125-4ba9-a717-bf7490507b3d/resourceGroups/macikgo-test-may-23/providers/Microsoft.Compute/disks/exampleosdiskname", + "storageAccountType": "Standard_LRS" + }, + "name": "exampleosdiskname", + "osType": "Linux", + "vhd": { + "uri": "" + }, + "writeAcceleratorEnabled": "false" + } + }, + "subscriptionId": "8d10da13-8125-4ba9-a717-bf7490507b3d", + "tags": "baz:bash;foo:bar", + "tagsList": [ + { + "name": "baz", + "value": "bash" + }, + { + "name": "foo", + "value": "bar" + } + ], + "version": "15.05.22", + "vmId": "02aab8a4-74ef-476e-8182-f6d2ba4166a6", + "vmScaleSetName": "crpteste9vflji9", + "vmSize": "Standard_A3", + "zone": "" + } + } + } + } +} diff --git a/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2020-12-01/imds.json b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2020-12-01/imds.json new file mode 100644 index 000000000000..3fd4258f4c16 --- /dev/null +++ b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2020-12-01/imds.json @@ -0,0 +1,918 @@ +{ + "swagger": "2.0", + "info": { + "title": "InstanceMetadataClient", + "description": "The Azure Instance Metadata Client", + "version": "2020-12-01" + }, + "host": "169.254.169.254", + "basePath": "/metadata", + "schemes": [ + "http", + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "securityDefinitions": { + "basic_auth": { + "type": "basic", + "description": "A Basic authentication flow" + } + }, + "paths": { + "/instance": { + "get": { + "operationId": "Instances_GetMetadata", + "description": "Get Instance Metadata for the Virtual Machine.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/MetadataParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Instance" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Instance Metadata for the VM": { + "$ref": "./examples/GetInstanceMetadata.json" + } + } + } + }, + "/attested/document": { + "get": { + "operationId": "Attested_GetDocument", + "description": "Get Attested Data for the Virtual Machine.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "nonce", + "in": "query", + "required": false, + "type": "string", + "description": "This is a string of up to 32 random alphanumeric characters." + }, + { + "$ref": "#/parameters/MetadataParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AttestedData" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Attested Data for the VM": { + "$ref": "./examples/GetAttestedData.json" + } + } + } + }, + "/identity/oauth2/token": { + "get": { + "tags": [ + "Get token" + ], + "description": "Get a Token from Azure AD", + "operationId": "Identity_GetToken", + "produces": [ + "application/json" + ], + "security": [ + {}, + { + "basic_auth": [] + } + ], + "parameters": [ + { + "$ref": "#/parameters/MetadataParameter" + }, + { + "name": "resource", + "in": "query", + "type": "string", + "description": "This is the urlencoded identifier URI of the sink resource for the requested Azure AD token. The resulting token contains the corresponding aud for this resource.", + "required": true + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "client_id", + "in": "query", + "type": "string", + "description": "This identifies, by Azure AD client id, a specific explicit identity to use when authenticating to Azure AD. Mutually exclusive with object_id and msi_res_id.", + "required": false + }, + { + "name": "object_id", + "in": "query", + "type": "string", + "description": "This identifies, by Azure AD object id, a specific explicit identity to use when authenticating to Azure AD. Mutually exclusive with client_id and msi_res_id.", + "required": false + }, + { + "name": "msi_res_id", + "in": "query", + "type": "string", + "description": "This identifies, by urlencoded ARM resource id, a specific explicit identity to use when authenticating to Azure AD. Mutually exclusive with client_id and object_id.", + "required": false + }, + { + "name": "authority", + "in": "query", + "type": "string", + "description": "This indicates the authority to request AAD tokens from. Defaults to the known authority of the identity to be used.", + "required": false + }, + { + "name": "bypass_cache", + "in": "query", + "type": "string", + "enum": [ + "true" + ], + "description": "If provided, the value must be 'true'. This indicates to the server that the token must be retrieved from Azure AD and cannot be retrieved from an internal cache.", + "required": false, + "x-ms-enum": { + "name": "BypassCache", + "modelAsString": true + } + } + ], + "responses": { + "200": { + "description": "Successful operation", + "schema": { + "$ref": "#/definitions/IdentityTokenResponse" + } + }, + "default": { + "headers": { + "Www-Authenticate": { + "type": "string", + "description": "This is the response header containing a challenge for the Basic scheme with a realm value" + } + }, + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/IdentityErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Identity Token for the VM": { + "$ref": "./examples/GetIdentityToken.json" + } + } + } + }, + "/identity/info": { + "get": { + "tags": [ + "Get metadata information" + ], + "description": "Get information about AAD Metadata", + "operationId": "Identity_GetInfo", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/MetadataParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successful operation", + "schema": { + "$ref": "#/definitions/IdentityInfoResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/IdentityErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Identity Info for the VM": { + "$ref": "./examples/GetIdentityInfo.json" + } + } + } + } + }, + "definitions": { + "Compute": { + "type": "object", + "properties": { + "azEnvironment": { + "type": "string", + "description": "This is the name of the environment in which the VM is running." + }, + "evictionPolicy": { + "type": "string", + "description": "Describes how the VM will be evicted if space needs to be freed up. Only applicable to Spot VMs. For a non-spot VM, this will be an empty string." + }, + "isHostCompatibilityLayerVm": { + "type": "string", + "description": "Identifies if the VM runs on the Host Compatibility Layer." + }, + "licenseType": { + "type": "string", + "description": "Type of license for Azure Hybrid Benefit. Note that this is only present for AHB-enabled VMs." + }, + "location": { + "type": "string", + "description": "This is the Azure Region in which the VM is running." + }, + "name": { + "type": "string", + "description": "This is the name of the VM." + }, + "offer": { + "type": "string", + "description": "This is the offer information for the VM image. This value is only present for images deployed from the Azure Image Gallery." + }, + "osProfile": { + "type": "object", + "description": "This contains the data about the OS.", + "$ref": "#/definitions/OsProfile" + }, + "osType": { + "type": "string", + "description": "This value indicates the type of OS the VM is running, either Linux or Windows." + }, + "placementGroupId": { + "type": "string", + "description": "This is the placement group of your Virtual Machine Scale Set." + }, + "plan": { + "type": "object", + "description": "This contains the data about the plan.", + "$ref": "#/definitions/PlanProperties" + }, + "publicKeys": { + "type": "array", + "items": { + "$ref": "#/definitions/PublicKeysProperties" + }, + "description": "This is information about the SSH certificate" + }, + "platformFaultDomain": { + "type": "string", + "description": "This is the fault domain in which the VM." + }, + "platformUpdateDomain": { + "type": "string", + "description": "This is the update domain in which the VM." + }, + "priority": { + "type": "string", + "description": "This is the priority of the VM." + }, + "provider": { + "type": "string", + "description": "This is the provider of the VM." + }, + "publisher": { + "type": "string", + "description": "This is the publisher of the VM image." + }, + "resourceGroupName": { + "type": "string", + "description": "This is the resource group for the VM." + }, + "resourceId": { + "type": "string", + "description": "This is the fully qualified ID for the VM." + }, + "securityProfile": { + "description": "This contains the data about the security profile associated with the VM.", + "$ref": "#/definitions/SecurityProfile" + }, + "sku": { + "type": "string", + "description": "This is the specific SKU for the VM image." + }, + "storageProfile": { + "type": "object", + "description": "This contains the data about the storage disks associated with the VM.", + "$ref": "#/definitions/StorageProfile" + }, + "subscriptionId": { + "type": "string", + "description": "This is the Azure subscription for the VM." + }, + "tags": { + "type": "string", + "description": "This is the list of tags for your VM." + }, + "tagsList": { + "type": "array", + "items": { + "$ref": "#/definitions/TagsProperties" + }, + "description": "This is the list of tags for your VM formatted as a JSON array for easier programmatic parsing." + }, + "version": { + "type": "string", + "description": "This is the version of the VM image." + }, + "vmId": { + "type": "string", + "description": "This is the unique identifier for the VM." + }, + "vmScaleSetName": { + "type": "string", + "description": "This is the resource name of the VMSS." + }, + "vmSize": { + "type": "string", + "description": "This is the size of the VM." + }, + "zone": { + "type": "string", + "description": "This is the availability zone of the VM." + } + }, + "description": "Compute Metadata" + }, + "Network": { + "type": "object", + "properties": { + "interface": { + "type": "array", + "description": "This contains data about the network interface.", + "items": { + "type": "object", + "$ref": "#/definitions/NetworkInterface" + } + } + }, + "description": "Network Metadata" + }, + "NetworkInterface": { + "type": "object", + "description": "This contains data about the network interface.", + "properties": { + "ipv4": { + "type": "object", + "description": "This contains the IPv4 address.", + "properties": { + "ipAddress": { + "type": "array", + "description": "This is the IP address", + "items": { + "type": "object", + "description": "This contains the IPv4 properties.", + "$ref": "#/definitions/Ipv4Properties" + } + }, + "subnet": { + "type": "array", + "description": "This is the subnet", + "items": { + "type": "object", + "description": "This contains the subnet properties.", + "$ref": "#/definitions/SubnetProperties" + } + } + } + }, + "ipv6": { + "type": "object", + "description": "This contains the IPv6 address.", + "properties": { + "ipAddress": { + "type": "array", + "description": "This is the IP address", + "items": { + "type": "object", + "description": "This contains the IPv6 properties.", + "$ref": "#/definitions/Ipv6Properties" + } + } + } + }, + "macAddress": { + "type": "string", + "description": "This is the MAC address of the interface." + } + } + }, + "OsProfile": { + "type": "object", + "description": "This contains the data about the OS.", + "properties": { + "adminUsername": { + "type": "string", + "description": "This is admin account." + }, + "computerName": { + "type": "string", + "description": "This is the name of the VM." + }, + "disablePasswordAuthentication": { + "type": "string", + "description": "This specifies whether or not password authentication is disabled. Note that this is present only for Linux VMs. For a Windows VM, this value will be the empty string." + } + } + }, + "PlanProperties": { + "type": "object", + "description": "This contains the data about the plan.", + "properties": { + "name": { + "type": "string", + "description": "This is the Plan ID." + }, + "publisher": { + "type": "string", + "description": "This is the publisher ID." + }, + "product": { + "type": "string", + "description": "This is the product of the image from the Marketplace." + } + } + }, + "PublicKeysProperties": { + "type": "object", + "description": "This contains the data about the public key.", + "properties": { + "path": { + "type": "string", + "description": "This specifies the full path on the VM where the SSH public key is stored." + }, + "keyData": { + "type": "string", + "description": "This is the SSH public key certificate used to authenticate with the VM." + } + } + }, + "TagsProperties": { + "type": "object", + "description": "This contains the properties of the tags in a tagsList.", + "properties": { + "name": { + "type": "string", + "description": "This is the name of the tag. It is equivalent to the key in the key-value pair format." + }, + "value": { + "type": "string", + "description": "This is the value of the tag. It is, as expected, equivalent to the value in the key-value pair format." + } + } + }, + "Ipv4Properties": { + "type": "object", + "description": "This contains the IPv4 properties.", + "properties": { + "privateIpAddress": { + "type": "string", + "description": "This is the private IP address assigned to the interface." + }, + "publicIpAddress": { + "type": "string", + "description": "This is the public IP address assigned to the interface." + } + } + }, + "Ipv6Properties": { + "type": "object", + "description": "This contains the IPv6 properties.", + "properties": { + "privateIpAddress": { + "type": "string", + "description": "This is the private IPv6 address assigned to the interface." + } + } + }, + "SubnetProperties": { + "type": "object", + "description": "This contains the properties of the subnet.", + "properties": { + "address": { + "type": "string", + "description": "This is the address range of the subnet." + }, + "prefix": { + "type": "string", + "description": "This is the prefix of the subnet." + } + } + }, + "SecurityProfile": { + "type": "object", + "description": "This contains the data about the security profile associated with the VM.", + "properties": { + "secureBootEnabled": { + "type": "string", + "description": "Identifies if UEFI secure boot is enabled on the VM" + }, + "virtualTpmEnabled": { + "type": "string", + "description": "Identifies if the virtual Trusted Platform Module (TPM) is enabled on the VM" + } + } + }, + "StorageProfile": { + "type": "object", + "description": "This contains the data about the storage disks associated with the VM.", + "properties": { + "imageReference": { + "type": "object", + "$ref": "#/definitions/ImageReference", + "description": "Image information" + }, + "osDisk": { + "type": "object", + "$ref": "#/definitions/OsDisk", + "description": "OS disk information" + }, + "dataDisks": { + "type": "array", + "description": "Data disk information", + "items": { + "type": "object", + "description": "This contains information about the data disk.", + "$ref": "#/definitions/DataDisk" + } + } + } + }, + "ImageReference": { + "type": "object", + "description": "This contains information about the OS image.", + "properties": { + "id": { + "type": "string", + "description": "This is the resource ID." + }, + "offer": { + "type": "string", + "description": "This is the offer of the platform or marketplace image." + }, + "publisher": { + "type": "string", + "description": "This is the image publisher." + }, + "sku": { + "type": "string", + "description": "This is the image SKU." + }, + "version": { + "type": "string", + "description": "This is the version of the platform or marketplace image." + } + } + }, + "OsDisk": { + "type": "object", + "description": "This contains information about the OS disk used by the VM.", + "properties": { + "caching": { + "type": "string", + "description": "This is the caching requirements." + }, + "createOption": { + "type": "string", + "description": "This is information about how the VM was created." + }, + "diffDiskSettings": { + "type": "object", + "description": "This is the ephemeral disk settings.", + "$ref": "#/definitions/DiffDiskSettings" + }, + "diskSizeGB": { + "type": "string", + "description": "This is the size of the disk in GB." + }, + "encryptionSettings": { + "type": "object", + "description": "This is the encryption settings for the disk.", + "$ref": "#/definitions/EncryptionSettings" + }, + "image": { + "type": "object", + "description": "This is the source user image virtual hard disk.", + "$ref": "#/definitions/DiskImage" + }, + "managedDisk": { + "type": "object", + "description": "This is managed disk parameters.", + "$ref": "#/definitions/ManagedDisk" + }, + "name": { + "type": "string", + "description": "This is the disk name." + }, + "osType": { + "type": "string", + "description": "This is the type of OS included in the disk." + }, + "vhd": { + "type": "object", + "description": "This is the virtual hard disk.", + "$ref": "#/definitions/VirtualHardDisk" + }, + "writeAcceleratorEnabled": { + "type": "string", + "description": "This specifies whether or not writeAccelerator is enabled on the disk." + } + } + }, + "DataDisk": { + "type": "object", + "description": "This contains information about the data disk.", + "properties": { + "caching": { + "type": "string", + "description": "This is the caching requirements." + }, + "createOption": { + "type": "string", + "description": "This is information about how the VM was created." + }, + "diskSizeGB": { + "type": "string", + "description": "This is the size of the disk in GB." + }, + "image": { + "type": "object", + "description": "This is the source user image virtual hard disk.", + "$ref": "#/definitions/DiskImage" + }, + "lun": { + "type": "string", + "description": "This is the logical unit number of the disk." + }, + "managedDisk": { + "type": "object", + "description": "This is managed disk parameters.", + "$ref": "#/definitions/ManagedDisk" + }, + "name": { + "type": "string", + "description": "This is the disk name." + }, + "vhd": { + "type": "object", + "description": "This is the virtual hard disk.", + "$ref": "#/definitions/VirtualHardDisk" + }, + "writeAcceleratorEnabled": { + "type": "string", + "description": "This specifies whether or not writeAccelerator is enabled on the disk." + } + } + }, + "EncryptionSettings": { + "type": "object", + "description": "This is the encryption settings for the disk.", + "properties": { + "enabled": { + "type": "string", + "description": "This specifies whether or not disk encryption is enabled on the VM." + } + } + }, + "DiffDiskSettings": { + "type": "object", + "description": "This is the ephemeral disk settings.", + "properties": { + "option": { + "type": "string", + "description": "This specifies the ephemeral disk settings." + } + } + }, + "DiskImage": { + "type": "object", + "description": "This is the source user image virtual hard disk.", + "properties": { + "uri": { + "type": "string", + "description": "This is the uri of the virtual hard disk." + } + } + }, + "ManagedDisk": { + "type": "object", + "description": "This is managed disk parameters.", + "properties": { + "id": { + "type": "string", + "description": "This is the resource ID." + }, + "storageAccountType": { + "type": "string", + "description": "This is the storage account type for the managed disk." + } + } + }, + "VirtualHardDisk": { + "type": "object", + "description": "This is the virtual hard disk.", + "properties": { + "uri": { + "type": "string", + "description": "This is the uri of the virtual hard disk." + } + } + }, + "ApplicationResponse": { + "type": "string", + "description": "This is a binary string containing the application." + }, + "Instance": { + "type": "object", + "description": "This is the response from the Instance_GetMetadata operation.", + "properties": { + "compute": { + "$ref": "#/definitions/Compute", + "description": "Compute Metadata" + }, + "network": { + "$ref": "#/definitions/Network", + "description": "Network Metadata" + } + } + }, + "AttestedData": { + "type": "object", + "description": "This is the response from the Attested_GetDocument operation.", + "properties": { + "signature": { + "type": "string", + "description": "This is the encoded string containing the VM ID, SKU, plan information, public key, timestamp, and nonce value." + }, + "encoding": { + "type": "string", + "description": "This is the encoding scheme of the signature." + } + } + }, + "ErrorResponse": { + "description": "This is the response from an operation in the case an error occurs.", + "type": "object", + "properties": { + "error": { + "description": "Error message indicating why the operation failed.", + "type": "string" + } + } + }, + "IdentityErrorResponse": { + "type": "object", + "description": "This is the response from an Identity operation in the case an error occurs.", + "properties": { + "error": { + "type": "string", + "description": "Error code", + "enum": [ + "invalid_request", + "unauthorized_client", + "access_denied", + "unsupported_response_type", + "invalid_scope", + "server_error", + "service_unavailable", + "bad_request", + "forbidden", + "not_found", + "method_not_allowed", + "too_many_requests" + ], + "x-ms-enum": { + "name": "Error", + "modelAsString": true + } + }, + "error_description": { + "type": "string", + "description": "Error message indicating why the operation failed." + } + } + }, + "IdentityTokenResponse": { + "type": "object", + "description": "This is the response from the Identity_GetToken operation.", + "properties": { + "access_token": { + "type": "string", + "description": "This is the requested access token. The app can use this token to authenticate to the sink resource." + }, + "expires_in": { + "type": "string", + "description": "This is how long the access token is valid (in seconds)." + }, + "expires_on": { + "type": "string", + "description": "This is the time when the access token expires. The date is represented as the number of seconds from 1970-01-01T0:0:0Z UTC until the expiration time. This value is used to determine the lifetime of cached tokens." + }, + "ext_expires_in": { + "type": "string", + "description": "This indicates the extended lifetime of the token (in seconds)." + }, + "not_before": { + "type": "string", + "description": "This is the time when the access token becomes effective. The date is represented as the number of seconds from 1970-01-01T0:0:0Z UTC until the expiration time." + }, + "resource": { + "type": "string", + "description": "This is the app ID URI of the sink resource." + }, + "token_type": { + "type": "string", + "description": "This indicates the token type value." + }, + "client_id": { + "type": "string", + "description": "This is the client_id specified in the request, if any." + }, + "object_id": { + "type": "string", + "description": "This is the object_id specified in the request, if any." + }, + "msi_res_id": { + "type": "string", + "description": "This is the msi_res_id specified in the request, if any." + } + } + }, + "IdentityInfoResponse": { + "type": "object", + "description": "This is the response from the Identity_GetInfo operation.", + "properties": { + "tenantId": { + "type": "string", + "description": "This is the AAD tenantId of the identity of the system assigned managed identity." + } + } + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "type": "string", + "enum": [ + "2018-10-01" + ], + "description": "This is the API version to use.", + "required": true, + "x-ms-enum": { + "name": "ApiVersion", + "modelAsString": true + } + }, + "MetadataParameter": { + "name": "Metadata", + "in": "header", + "type": "string", + "enum": [ + "true" + ], + "description": "This must be set to 'true'.", + "required": true, + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2021-01-01/examples/GetAttestedData.json b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2021-01-01/examples/GetAttestedData.json new file mode 100644 index 000000000000..b71d458e4416 --- /dev/null +++ b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2021-01-01/examples/GetAttestedData.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2021-01-01", + "nonce": "abcde12345", + "Metadata": "true" + }, + "responses": { + "200": { + "body": { + "encoding": "pkcs7", + "signature": "MIID2gYJKoZIhvcNAQcCoIIDyzCCA8cCAQExDzANBgkqhkiG9w0BAQsFADCBggYJKoZIhvcNAQcBoHUEc3sibm9uY2UiOiIxMTExMTExMTExIiwicGxhbiI6eyJuYW1lIjoiIiwicHJvZHVjdCI6IiIsInB1Ymxpc2hlciI6IiJ9LCJ2bUlkIjoiMDJhYWI4YTQtNzRlZi00NzZlLTgxODItZjZkMmJhNDE2NmE2In2gggI/MIICOzCCAaSgAwIBAgIQQWsFjXN35oBJKFXI3QrM3TANBgkqhkiG9w0BAQQFADArMSkwJwYDVQQDEyB0ZXN0c3ViZG9tYWluLm1ldGFkYXRhLmF6dXJlLmNvbTAeFw0xODExMDgxODUzMDRaFw0xODEyMDgxODUzMDNaMCsxKTAnBgNVBAMTIHRlc3RzdWJkb21haW4ubWV0YWRhdGEuYXp1cmUuY29tMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDEi0FVslYnUX+MneC7ERMU4ZM88z4J80r7RPgvzxCPNhXUQlWm3cmVRZMD8kKMv7brkvEsATP7Ak60/I/XEtOga4LGCvMaQa8I/MW8IhSyp2Vj015glAiV8TeUI5DuOIOS96lQvM+G7bt23swkIwVjm1u1ViTZiKKytwpY/EGqzQIDAQABo2AwXjBcBgNVHQEEVTBTgBAt3MRgJmEoUMiPy7k06cLfoS0wKzEpMCcGA1UEAxMgdGVzdHN1YmRvbWFpbi5tZXRhZGF0YS5henVyZS5jb22CEEFrBY1zd+aASShVyN0KzN0wDQYJKoZIhvcNAQEEBQADgYEAd87qiZnRlGIFQ5IEcL/A7ru23WSQAOBsNPt70Fg1GtaEHcYshKUJFhGwXOgZ11cY5wRfrSvEKuzvhAeIZwkvzkBjC04g8sRrjN5leLY5CsKzQhjN52TUMsHhqTM58tfAnICeTddQwn6LOgfqtYH5WO+F/VbFCwPstYUqjmQEYAoxgegwgeUCAQEwPzArMSkwJwYDVQQDEyB0ZXN0c3ViZG9tYWluLm1ldGFkYXRhLmF6dXJlLmNvbQIQQWsFjXN35oBJKFXI3QrM3TANBgkqhkiG9w0BAQsFADANBgkqhkiG9w0BAQEFAASBgCbkRKmQ1MdWZPVOrX7ZBKHQUWPFrQQNdjk3KB67GkY0W0Taxut4K7D2PmiflVEwxB92pTbaZZr/dldu1k1ab1YamHcVYdgZgxIkoOWohGR0ym8oL9JHjFMEqHUbEPtDwE8X+djtDd8TVdb6LYe77IXmz/VaX4whuejlSvQXjaL" + } + } + } +} diff --git a/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2021-01-01/examples/GetIdentityInfo.json b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2021-01-01/examples/GetIdentityInfo.json new file mode 100644 index 000000000000..3692929485e6 --- /dev/null +++ b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2021-01-01/examples/GetIdentityInfo.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-01-01", + "Metadata": "true" + }, + "responses": { + "200": { + "body": { + "tenantId": "abd8daee-d393-4239-9377-883adda3d40f" + } + } + } +} diff --git a/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2021-01-01/examples/GetIdentityToken.json b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2021-01-01/examples/GetIdentityToken.json new file mode 100644 index 000000000000..dc1b4a2f37b1 --- /dev/null +++ b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2021-01-01/examples/GetIdentityToken.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2021-01-01", + "Metadata": "true", + "resource": "https://vault.azure.net" + }, + "responses": { + "200": { + "body": { + "access_token": "dummytoken", + "client_id": "be5947ed-3560-4afe-9504-59967a63f810", + "expires_in": "3599", + "expires_on": "1541705014", + "ext_expires_in": "262800", + "not_before": "1508961830", + "resource": "https://va" + } + } + } +} diff --git a/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2021-01-01/examples/GetInstanceMetadata.json b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2021-01-01/examples/GetInstanceMetadata.json new file mode 100644 index 000000000000..24c40f248d83 --- /dev/null +++ b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2021-01-01/examples/GetInstanceMetadata.json @@ -0,0 +1,126 @@ +{ + "parameters": { + "api-version": "2021-01-01", + "Metadata": "true" + }, + "responses": { + "200": { + "body": { + "compute": { + "azEnvironment": "AZUREPUBLICCLOUD", + "evictionPolicy": "deallocate", + "isHostCompatibilityLayerVm": "true", + "licenseType": "Windows_Server", + "location": "westus", + "name": "examplevmname", + "offer": "Windows", + "osProfile": { + "adminUsername": "admin", + "computerName": "examplevmname", + "disablePasswordAuthentication": "true" + }, + "osType": "linux", + "placementGroupId": "f67c14ab-e92c-408c-ae2d-da15866ec79a", + "plan": { + "name": "planName", + "product": "planProduct", + "publisher": "planPublisher" + }, + "platformFaultDomain": "36", + "platformUpdateDomain": "42", + "priority": "Spot", + "provider": "Microsoft.Compute", + "publicKeys": [ + { + "keyData": "ssh-rsa 0", + "path": "/home/user/.ssh/authorized_keys0" + }, + { + "keyData": "ssh-rsa 1", + "path": "/home/user/.ssh/authorized_keys1" + } + ], + "publisher": "RDFE-Test-Microsoft-Windows-Server-Group", + "resourceGroupName": "macikgo-test-may-23", + "resourceId": "/subscriptions/8d10da13-8125-4ba9-a717-bf7490507b3d/resourceGroups/macikgo-test-may-23/providers/Microsoft.Compute/virtualMachines/examplevmname", + "securityProfile": { + "secureBootEnabled": "true", + "virtualTpmEnabled": "false" + }, + "sku": "Windows-Server-2012-R2-Datacenter", + "storageProfile": { + "dataDisks": [ + { + "caching": "None", + "createOption": "Empty", + "diskSizeGB": "1024", + "image": { + "uri": "" + }, + "lun": "0", + "managedDisk": { + "id": "/subscriptions/8d10da13-8125-4ba9-a717-bf7490507b3d/resourceGroups/macikgo-test-may-23/providers/Microsoft.Compute/disks/exampledatadiskname", + "storageAccountType": "Standard_LRS" + }, + "name": "exampledatadiskname", + "vhd": { + "uri": "" + }, + "writeAcceleratorEnabled": "false" + } + ], + "imageReference": { + "id": "", + "offer": "UbuntuServer", + "publisher": "Canonical", + "sku": "16.04.0-LTS", + "version": "latest" + }, + "osDisk": { + "caching": "ReadWrite", + "createOption": "FromImage", + "diskSizeGB": "30", + "diffDiskSettings": { + "option": "Local" + }, + "encryptionSettings": { + "enabled": "false" + }, + "image": { + "uri": "" + }, + "managedDisk": { + "id": "/subscriptions/8d10da13-8125-4ba9-a717-bf7490507b3d/resourceGroups/macikgo-test-may-23/providers/Microsoft.Compute/disks/exampleosdiskname", + "storageAccountType": "Standard_LRS" + }, + "name": "exampleosdiskname", + "osType": "Linux", + "vhd": { + "uri": "" + }, + "writeAcceleratorEnabled": "false" + } + }, + "subscriptionId": "8d10da13-8125-4ba9-a717-bf7490507b3d", + "tags": "baz:bash;foo:bar", + "tagsList": [ + { + "name": "baz", + "value": "bash" + }, + { + "name": "foo", + "value": "bar" + } + ], + "userData": "Zm9vYmFy", + "version": "15.05.22", + "vmId": "02aab8a4-74ef-476e-8182-f6d2ba4166a6", + "vmScaleSetName": "crpteste9vflji9", + "vmSize": "Standard_A3", + "zone": "" + } + } + } + } +} diff --git a/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2021-01-01/imds.json b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2021-01-01/imds.json new file mode 100644 index 000000000000..f2bcbd5a39f1 --- /dev/null +++ b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2021-01-01/imds.json @@ -0,0 +1,922 @@ +{ + "swagger": "2.0", + "info": { + "title": "InstanceMetadataClient", + "description": "The Azure Instance Metadata Client", + "version": "2021-01-01" + }, + "host": "169.254.169.254", + "basePath": "/metadata", + "schemes": [ + "http", + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "securityDefinitions": { + "basic_auth": { + "type": "basic", + "description": "A Basic authentication flow" + } + }, + "paths": { + "/instance": { + "get": { + "operationId": "Instances_GetMetadata", + "description": "Get Instance Metadata for the Virtual Machine.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/MetadataParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Instance" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Instance Metadata for the VM": { + "$ref": "./examples/GetInstanceMetadata.json" + } + } + } + }, + "/attested/document": { + "get": { + "operationId": "Attested_GetDocument", + "description": "Get Attested Data for the Virtual Machine.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "nonce", + "in": "query", + "required": false, + "type": "string", + "description": "This is a string of up to 32 random alphanumeric characters." + }, + { + "$ref": "#/parameters/MetadataParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AttestedData" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Attested Data for the VM": { + "$ref": "./examples/GetAttestedData.json" + } + } + } + }, + "/identity/oauth2/token": { + "get": { + "tags": [ + "Get token" + ], + "description": "Get a Token from Azure AD", + "operationId": "Identity_GetToken", + "produces": [ + "application/json" + ], + "security": [ + {}, + { + "basic_auth": [] + } + ], + "parameters": [ + { + "$ref": "#/parameters/MetadataParameter" + }, + { + "name": "resource", + "in": "query", + "type": "string", + "description": "This is the urlencoded identifier URI of the sink resource for the requested Azure AD token. The resulting token contains the corresponding aud for this resource.", + "required": true + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "client_id", + "in": "query", + "type": "string", + "description": "This identifies, by Azure AD client id, a specific explicit identity to use when authenticating to Azure AD. Mutually exclusive with object_id and msi_res_id.", + "required": false + }, + { + "name": "object_id", + "in": "query", + "type": "string", + "description": "This identifies, by Azure AD object id, a specific explicit identity to use when authenticating to Azure AD. Mutually exclusive with client_id and msi_res_id.", + "required": false + }, + { + "name": "msi_res_id", + "in": "query", + "type": "string", + "description": "This identifies, by urlencoded ARM resource id, a specific explicit identity to use when authenticating to Azure AD. Mutually exclusive with client_id and object_id.", + "required": false + }, + { + "name": "authority", + "in": "query", + "type": "string", + "description": "This indicates the authority to request AAD tokens from. Defaults to the known authority of the identity to be used.", + "required": false + }, + { + "name": "bypass_cache", + "in": "query", + "type": "string", + "enum": [ + "true" + ], + "description": "If provided, the value must be 'true'. This indicates to the server that the token must be retrieved from Azure AD and cannot be retrieved from an internal cache.", + "required": false, + "x-ms-enum": { + "name": "BypassCache", + "modelAsString": true + } + } + ], + "responses": { + "200": { + "description": "Successful operation", + "schema": { + "$ref": "#/definitions/IdentityTokenResponse" + } + }, + "default": { + "headers": { + "Www-Authenticate": { + "type": "string", + "description": "This is the response header containing a challenge for the Basic scheme with a realm value" + } + }, + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/IdentityErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Identity Token for the VM": { + "$ref": "./examples/GetIdentityToken.json" + } + } + } + }, + "/identity/info": { + "get": { + "tags": [ + "Get metadata information" + ], + "description": "Get information about AAD Metadata", + "operationId": "Identity_GetInfo", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/MetadataParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successful operation", + "schema": { + "$ref": "#/definitions/IdentityInfoResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/IdentityErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Identity Info for the VM": { + "$ref": "./examples/GetIdentityInfo.json" + } + } + } + } + }, + "definitions": { + "Compute": { + "type": "object", + "properties": { + "azEnvironment": { + "type": "string", + "description": "This is the name of the environment in which the VM is running." + }, + "evictionPolicy": { + "type": "string", + "description": "Describes how the VM will be evicted if space needs to be freed up. Only applicable to Spot VMs. For a non-spot VM, this will be an empty string." + }, + "isHostCompatibilityLayerVm": { + "type": "string", + "description": "Identifies if the VM runs on the Host Compatibility Layer." + }, + "licenseType": { + "type": "string", + "description": "Type of license for Azure Hybrid Benefit. Note that this is only present for AHB-enabled VMs." + }, + "location": { + "type": "string", + "description": "This is the Azure Region in which the VM is running." + }, + "name": { + "type": "string", + "description": "This is the name of the VM." + }, + "offer": { + "type": "string", + "description": "This is the offer information for the VM image. This value is only present for images deployed from the Azure Image Gallery." + }, + "osProfile": { + "type": "object", + "description": "This contains the data about the OS.", + "$ref": "#/definitions/OsProfile" + }, + "osType": { + "type": "string", + "description": "This value indicates the type of OS the VM is running, either Linux or Windows." + }, + "placementGroupId": { + "type": "string", + "description": "This is the placement group of your Virtual Machine Scale Set." + }, + "plan": { + "type": "object", + "description": "This contains the data about the plan.", + "$ref": "#/definitions/PlanProperties" + }, + "publicKeys": { + "type": "array", + "items": { + "$ref": "#/definitions/PublicKeysProperties" + }, + "description": "This is information about the SSH certificate" + }, + "platformFaultDomain": { + "type": "string", + "description": "This is the fault domain in which the VM." + }, + "platformUpdateDomain": { + "type": "string", + "description": "This is the update domain in which the VM." + }, + "priority": { + "type": "string", + "description": "This is the priority of the VM." + }, + "provider": { + "type": "string", + "description": "This is the provider of the VM." + }, + "publisher": { + "type": "string", + "description": "This is the publisher of the VM image." + }, + "resourceGroupName": { + "type": "string", + "description": "This is the resource group for the VM." + }, + "resourceId": { + "type": "string", + "description": "This is the fully qualified ID for the VM." + }, + "securityProfile": { + "description": "This contains the data about the security profile associated with the VM.", + "$ref": "#/definitions/SecurityProfile" + }, + "sku": { + "type": "string", + "description": "This is the specific SKU for the VM image." + }, + "storageProfile": { + "type": "object", + "description": "This contains the data about the storage disks associated with the VM.", + "$ref": "#/definitions/StorageProfile" + }, + "subscriptionId": { + "type": "string", + "description": "This is the Azure subscription for the VM." + }, + "tags": { + "type": "string", + "description": "This is the list of tags for your VM." + }, + "tagsList": { + "type": "array", + "items": { + "$ref": "#/definitions/TagsProperties" + }, + "description": "This is the list of tags for your VM formatted as a JSON array for easier programmatic parsing." + }, + "userData": { + "type": "string", + "description": "The set of data specified when the VM was created for use during or after provisioning (Base64 encoded)" + }, + "version": { + "type": "string", + "description": "This is the version of the VM image." + }, + "vmId": { + "type": "string", + "description": "This is the unique identifier for the VM." + }, + "vmScaleSetName": { + "type": "string", + "description": "This is the resource name of the VMSS." + }, + "vmSize": { + "type": "string", + "description": "This is the size of the VM." + }, + "zone": { + "type": "string", + "description": "This is the availability zone of the VM." + } + }, + "description": "Compute Metadata" + }, + "Network": { + "type": "object", + "properties": { + "interface": { + "type": "array", + "description": "This contains data about the network interface.", + "items": { + "type": "object", + "$ref": "#/definitions/NetworkInterface" + } + } + }, + "description": "Network Metadata" + }, + "NetworkInterface": { + "type": "object", + "description": "This contains data about the network interface.", + "properties": { + "ipv4": { + "type": "object", + "description": "This contains the IPv4 address.", + "properties": { + "ipAddress": { + "type": "array", + "description": "This is the IP address", + "items": { + "type": "object", + "description": "This contains the IPv4 properties.", + "$ref": "#/definitions/Ipv4Properties" + } + }, + "subnet": { + "type": "array", + "description": "This is the subnet", + "items": { + "type": "object", + "description": "This contains the subnet properties.", + "$ref": "#/definitions/SubnetProperties" + } + } + } + }, + "ipv6": { + "type": "object", + "description": "This contains the IPv6 address.", + "properties": { + "ipAddress": { + "type": "array", + "description": "This is the IP address", + "items": { + "type": "object", + "description": "This contains the IPv6 properties.", + "$ref": "#/definitions/Ipv6Properties" + } + } + } + }, + "macAddress": { + "type": "string", + "description": "This is the MAC address of the interface." + } + } + }, + "OsProfile": { + "type": "object", + "description": "This contains the data about the OS.", + "properties": { + "adminUsername": { + "type": "string", + "description": "This is admin account." + }, + "computerName": { + "type": "string", + "description": "This is the name of the VM." + }, + "disablePasswordAuthentication": { + "type": "string", + "description": "This specifies whether or not password authentication is disabled. Note that this is present only for Linux VMs. For a Windows VM, this value will be the empty string." + } + } + }, + "PlanProperties": { + "type": "object", + "description": "This contains the data about the plan.", + "properties": { + "name": { + "type": "string", + "description": "This is the Plan ID." + }, + "publisher": { + "type": "string", + "description": "This is the publisher ID." + }, + "product": { + "type": "string", + "description": "This is the product of the image from the Marketplace." + } + } + }, + "PublicKeysProperties": { + "type": "object", + "description": "This contains the data about the public key.", + "properties": { + "path": { + "type": "string", + "description": "This specifies the full path on the VM where the SSH public key is stored." + }, + "keyData": { + "type": "string", + "description": "This is the SSH public key certificate used to authenticate with the VM." + } + } + }, + "TagsProperties": { + "type": "object", + "description": "This contains the properties of the tags in a tagsList.", + "properties": { + "name": { + "type": "string", + "description": "This is the name of the tag. It is equivalent to the key in the key-value pair format." + }, + "value": { + "type": "string", + "description": "This is the value of the tag. It is, as expected, equivalent to the value in the key-value pair format." + } + } + }, + "Ipv4Properties": { + "type": "object", + "description": "This contains the IPv4 properties.", + "properties": { + "privateIpAddress": { + "type": "string", + "description": "This is the private IP address assigned to the interface." + }, + "publicIpAddress": { + "type": "string", + "description": "This is the public IP address assigned to the interface." + } + } + }, + "Ipv6Properties": { + "type": "object", + "description": "This contains the IPv6 properties.", + "properties": { + "privateIpAddress": { + "type": "string", + "description": "This is the private IPv6 address assigned to the interface." + } + } + }, + "SubnetProperties": { + "type": "object", + "description": "This contains the properties of the subnet.", + "properties": { + "address": { + "type": "string", + "description": "This is the address range of the subnet." + }, + "prefix": { + "type": "string", + "description": "This is the prefix of the subnet." + } + } + }, + "SecurityProfile": { + "type": "object", + "description": "This contains the data about the security profile associated with the VM.", + "properties": { + "secureBootEnabled": { + "type": "string", + "description": "Identifies if UEFI secure boot is enabled on the VM" + }, + "virtualTpmEnabled": { + "type": "string", + "description": "Identifies if the virtual Trusted Platform Module (TPM) is enabled on the VM" + } + } + }, + "StorageProfile": { + "type": "object", + "description": "This contains the data about the storage disks associated with the VM.", + "properties": { + "imageReference": { + "type": "object", + "$ref": "#/definitions/ImageReference", + "description": "Image information" + }, + "osDisk": { + "type": "object", + "$ref": "#/definitions/OsDisk", + "description": "OS disk information" + }, + "dataDisks": { + "type": "array", + "description": "Data disk information", + "items": { + "type": "object", + "description": "This contains information about the data disk.", + "$ref": "#/definitions/DataDisk" + } + } + } + }, + "ImageReference": { + "type": "object", + "description": "This contains information about the OS image.", + "properties": { + "id": { + "type": "string", + "description": "This is the resource ID." + }, + "offer": { + "type": "string", + "description": "This is the offer of the platform or marketplace image." + }, + "publisher": { + "type": "string", + "description": "This is the image publisher." + }, + "sku": { + "type": "string", + "description": "This is the image SKU." + }, + "version": { + "type": "string", + "description": "This is the version of the platform or marketplace image." + } + } + }, + "OsDisk": { + "type": "object", + "description": "This contains information about the OS disk used by the VM.", + "properties": { + "caching": { + "type": "string", + "description": "This is the caching requirements." + }, + "createOption": { + "type": "string", + "description": "This is information about how the VM was created." + }, + "diffDiskSettings": { + "type": "object", + "description": "This is the ephemeral disk settings.", + "$ref": "#/definitions/DiffDiskSettings" + }, + "diskSizeGB": { + "type": "string", + "description": "This is the size of the disk in GB." + }, + "encryptionSettings": { + "type": "object", + "description": "This is the encryption settings for the disk.", + "$ref": "#/definitions/EncryptionSettings" + }, + "image": { + "type": "object", + "description": "This is the source user image virtual hard disk.", + "$ref": "#/definitions/DiskImage" + }, + "managedDisk": { + "type": "object", + "description": "This is managed disk parameters.", + "$ref": "#/definitions/ManagedDisk" + }, + "name": { + "type": "string", + "description": "This is the disk name." + }, + "osType": { + "type": "string", + "description": "This is the type of OS included in the disk." + }, + "vhd": { + "type": "object", + "description": "This is the virtual hard disk.", + "$ref": "#/definitions/VirtualHardDisk" + }, + "writeAcceleratorEnabled": { + "type": "string", + "description": "This specifies whether or not writeAccelerator is enabled on the disk." + } + } + }, + "DataDisk": { + "type": "object", + "description": "This contains information about the data disk.", + "properties": { + "caching": { + "type": "string", + "description": "This is the caching requirements." + }, + "createOption": { + "type": "string", + "description": "This is information about how the VM was created." + }, + "diskSizeGB": { + "type": "string", + "description": "This is the size of the disk in GB." + }, + "image": { + "type": "object", + "description": "This is the source user image virtual hard disk.", + "$ref": "#/definitions/DiskImage" + }, + "lun": { + "type": "string", + "description": "This is the logical unit number of the disk." + }, + "managedDisk": { + "type": "object", + "description": "This is managed disk parameters.", + "$ref": "#/definitions/ManagedDisk" + }, + "name": { + "type": "string", + "description": "This is the disk name." + }, + "vhd": { + "type": "object", + "description": "This is the virtual hard disk.", + "$ref": "#/definitions/VirtualHardDisk" + }, + "writeAcceleratorEnabled": { + "type": "string", + "description": "This specifies whether or not writeAccelerator is enabled on the disk." + } + } + }, + "EncryptionSettings": { + "type": "object", + "description": "This is the encryption settings for the disk.", + "properties": { + "enabled": { + "type": "string", + "description": "This specifies whether or not disk encryption is enabled on the VM." + } + } + }, + "DiffDiskSettings": { + "type": "object", + "description": "This is the ephemeral disk settings.", + "properties": { + "option": { + "type": "string", + "description": "This specifies the ephemeral disk settings." + } + } + }, + "DiskImage": { + "type": "object", + "description": "This is the source user image virtual hard disk.", + "properties": { + "uri": { + "type": "string", + "description": "This is the uri of the virtual hard disk." + } + } + }, + "ManagedDisk": { + "type": "object", + "description": "This is managed disk parameters.", + "properties": { + "id": { + "type": "string", + "description": "This is the resource ID." + }, + "storageAccountType": { + "type": "string", + "description": "This is the storage account type for the managed disk." + } + } + }, + "VirtualHardDisk": { + "type": "object", + "description": "This is the virtual hard disk.", + "properties": { + "uri": { + "type": "string", + "description": "This is the uri of the virtual hard disk." + } + } + }, + "ApplicationResponse": { + "type": "string", + "description": "This is a binary string containing the application." + }, + "Instance": { + "type": "object", + "description": "This is the response from the Instance_GetMetadata operation.", + "properties": { + "compute": { + "$ref": "#/definitions/Compute", + "description": "Compute Metadata" + }, + "network": { + "$ref": "#/definitions/Network", + "description": "Network Metadata" + } + } + }, + "AttestedData": { + "type": "object", + "description": "This is the response from the Attested_GetDocument operation.", + "properties": { + "signature": { + "type": "string", + "description": "This is the encoded string containing the VM ID, SKU, plan information, public key, timestamp, and nonce value." + }, + "encoding": { + "type": "string", + "description": "This is the encoding scheme of the signature." + } + } + }, + "ErrorResponse": { + "description": "This is the response from an operation in the case an error occurs.", + "type": "object", + "properties": { + "error": { + "description": "Error message indicating why the operation failed.", + "type": "string" + } + } + }, + "IdentityErrorResponse": { + "type": "object", + "description": "This is the response from an Identity operation in the case an error occurs.", + "properties": { + "error": { + "type": "string", + "description": "Error code", + "enum": [ + "invalid_request", + "unauthorized_client", + "access_denied", + "unsupported_response_type", + "invalid_scope", + "server_error", + "service_unavailable", + "bad_request", + "forbidden", + "not_found", + "method_not_allowed", + "too_many_requests" + ], + "x-ms-enum": { + "name": "Error", + "modelAsString": true + } + }, + "error_description": { + "type": "string", + "description": "Error message indicating why the operation failed." + } + } + }, + "IdentityTokenResponse": { + "type": "object", + "description": "This is the response from the Identity_GetToken operation.", + "properties": { + "access_token": { + "type": "string", + "description": "This is the requested access token. The app can use this token to authenticate to the sink resource." + }, + "expires_in": { + "type": "string", + "description": "This is how long the access token is valid (in seconds)." + }, + "expires_on": { + "type": "string", + "description": "This is the time when the access token expires. The date is represented as the number of seconds from 1970-01-01T0:0:0Z UTC until the expiration time. This value is used to determine the lifetime of cached tokens." + }, + "ext_expires_in": { + "type": "string", + "description": "This indicates the extended lifetime of the token (in seconds)." + }, + "not_before": { + "type": "string", + "description": "This is the time when the access token becomes effective. The date is represented as the number of seconds from 1970-01-01T0:0:0Z UTC until the expiration time." + }, + "resource": { + "type": "string", + "description": "This is the app ID URI of the sink resource." + }, + "token_type": { + "type": "string", + "description": "This indicates the token type value." + }, + "client_id": { + "type": "string", + "description": "This is the client_id specified in the request, if any." + }, + "object_id": { + "type": "string", + "description": "This is the object_id specified in the request, if any." + }, + "msi_res_id": { + "type": "string", + "description": "This is the msi_res_id specified in the request, if any." + } + } + }, + "IdentityInfoResponse": { + "type": "object", + "description": "This is the response from the Identity_GetInfo operation.", + "properties": { + "tenantId": { + "type": "string", + "description": "This is the AAD tenantId of the identity of the system assigned managed identity." + } + } + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "type": "string", + "enum": [ + "2018-10-01" + ], + "description": "This is the API version to use.", + "required": true, + "x-ms-enum": { + "name": "ApiVersion", + "modelAsString": true + } + }, + "MetadataParameter": { + "name": "Metadata", + "in": "header", + "type": "string", + "enum": [ + "true" + ], + "description": "This must be set to 'true'.", + "required": true, + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2021-02-01/examples/GetAttestedData.json b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2021-02-01/examples/GetAttestedData.json new file mode 100644 index 000000000000..8d4f2a66be2e --- /dev/null +++ b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2021-02-01/examples/GetAttestedData.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "nonce": "abcde12345", + "Metadata": "true" + }, + "responses": { + "200": { + "body": { + "encoding": "pkcs7", + "signature": "MIID2gYJKoZIhvcNAQcCoIIDyzCCA8cCAQExDzANBgkqhkiG9w0BAQsFADCBggYJKoZIhvcNAQcBoHUEc3sibm9uY2UiOiIxMTExMTExMTExIiwicGxhbiI6eyJuYW1lIjoiIiwicHJvZHVjdCI6IiIsInB1Ymxpc2hlciI6IiJ9LCJ2bUlkIjoiMDJhYWI4YTQtNzRlZi00NzZlLTgxODItZjZkMmJhNDE2NmE2In2gggI/MIICOzCCAaSgAwIBAgIQQWsFjXN35oBJKFXI3QrM3TANBgkqhkiG9w0BAQQFADArMSkwJwYDVQQDEyB0ZXN0c3ViZG9tYWluLm1ldGFkYXRhLmF6dXJlLmNvbTAeFw0xODExMDgxODUzMDRaFw0xODEyMDgxODUzMDNaMCsxKTAnBgNVBAMTIHRlc3RzdWJkb21haW4ubWV0YWRhdGEuYXp1cmUuY29tMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDEi0FVslYnUX+MneC7ERMU4ZM88z4J80r7RPgvzxCPNhXUQlWm3cmVRZMD8kKMv7brkvEsATP7Ak60/I/XEtOga4LGCvMaQa8I/MW8IhSyp2Vj015glAiV8TeUI5DuOIOS96lQvM+G7bt23swkIwVjm1u1ViTZiKKytwpY/EGqzQIDAQABo2AwXjBcBgNVHQEEVTBTgBAt3MRgJmEoUMiPy7k06cLfoS0wKzEpMCcGA1UEAxMgdGVzdHN1YmRvbWFpbi5tZXRhZGF0YS5henVyZS5jb22CEEFrBY1zd+aASShVyN0KzN0wDQYJKoZIhvcNAQEEBQADgYEAd87qiZnRlGIFQ5IEcL/A7ru23WSQAOBsNPt70Fg1GtaEHcYshKUJFhGwXOgZ11cY5wRfrSvEKuzvhAeIZwkvzkBjC04g8sRrjN5leLY5CsKzQhjN52TUMsHhqTM58tfAnICeTddQwn6LOgfqtYH5WO+F/VbFCwPstYUqjmQEYAoxgegwgeUCAQEwPzArMSkwJwYDVQQDEyB0ZXN0c3ViZG9tYWluLm1ldGFkYXRhLmF6dXJlLmNvbQIQQWsFjXN35oBJKFXI3QrM3TANBgkqhkiG9w0BAQsFADANBgkqhkiG9w0BAQEFAASBgCbkRKmQ1MdWZPVOrX7ZBKHQUWPFrQQNdjk3KB67GkY0W0Taxut4K7D2PmiflVEwxB92pTbaZZr/dldu1k1ab1YamHcVYdgZgxIkoOWohGR0ym8oL9JHjFMEqHUbEPtDwE8X+djtDd8TVdb6LYe77IXmz/VaX4whuejlSvQXjaL" + } + } + } +} diff --git a/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2021-02-01/examples/GetIdentityInfo.json b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2021-02-01/examples/GetIdentityInfo.json new file mode 100644 index 000000000000..c2cec409204d --- /dev/null +++ b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2021-02-01/examples/GetIdentityInfo.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "Metadata": "true" + }, + "responses": { + "200": { + "body": { + "tenantId": "abd8daee-d393-4239-9377-883adda3d40f" + } + } + } +} diff --git a/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2021-02-01/examples/GetIdentityToken.json b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2021-02-01/examples/GetIdentityToken.json new file mode 100644 index 000000000000..6129f4e4e462 --- /dev/null +++ b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2021-02-01/examples/GetIdentityToken.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "Metadata": "true", + "resource": "https://vault.azure.net" + }, + "responses": { + "200": { + "body": { + "access_token": "dummytoken", + "client_id": "be5947ed-3560-4afe-9504-59967a63f810", + "expires_in": "3599", + "expires_on": "1541705014", + "ext_expires_in": "262800", + "not_before": "1508961830", + "resource": "https://va" + } + } + } +} diff --git a/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2021-02-01/examples/GetInstanceMetadata.json b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2021-02-01/examples/GetInstanceMetadata.json new file mode 100644 index 000000000000..62c2943557e0 --- /dev/null +++ b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2021-02-01/examples/GetInstanceMetadata.json @@ -0,0 +1,129 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "Metadata": "true" + }, + "responses": { + "200": { + "body": { + "compute": { + "azEnvironment": "AZUREPUBLICCLOUD", + "evictionPolicy": "deallocate", + "isHostCompatibilityLayerVm": "true", + "licenseType": "Windows_Server", + "location": "westus", + "name": "examplevmname", + "offer": "Windows", + "osProfile": { + "adminUsername": "admin", + "computerName": "examplevmname", + "disablePasswordAuthentication": "true" + }, + "osType": "linux", + "placementGroupId": "f67c14ab-e92c-408c-ae2d-da15866ec79a", + "plan": { + "name": "planName", + "product": "planProduct", + "publisher": "planPublisher" + }, + "platformFaultDomain": "36", + "platformUpdateDomain": "42", + "priority": "Spot", + "provider": "Microsoft.Compute", + "publicKeys": [ + { + "keyData": "ssh-rsa 0", + "path": "/home/user/.ssh/authorized_keys0" + }, + { + "keyData": "ssh-rsa 1", + "path": "/home/user/.ssh/authorized_keys1" + } + ], + "publisher": "RDFE-Test-Microsoft-Windows-Server-Group", + "resourceGroupName": "macikgo-test-may-23", + "resourceId": "/subscriptions/8d10da13-8125-4ba9-a717-bf7490507b3d/resourceGroups/macikgo-test-may-23/providers/Microsoft.Compute/virtualMachines/examplevmname", + "securityProfile": { + "secureBootEnabled": "true", + "virtualTpmEnabled": "false" + }, + "sku": "Windows-Server-2012-R2-Datacenter", + "storageProfile": { + "dataDisks": [ + { + "caching": "None", + "createOption": "Empty", + "diskSizeGB": "1024", + "image": { + "uri": "" + }, + "lun": "0", + "managedDisk": { + "id": "/subscriptions/8d10da13-8125-4ba9-a717-bf7490507b3d/resourceGroups/macikgo-test-may-23/providers/Microsoft.Compute/disks/exampledatadiskname", + "storageAccountType": "Standard_LRS" + }, + "name": "exampledatadiskname", + "vhd": { + "uri": "" + }, + "writeAcceleratorEnabled": "false" + } + ], + "imageReference": { + "id": "", + "offer": "UbuntuServer", + "publisher": "Canonical", + "sku": "16.04.0-LTS", + "version": "latest" + }, + "osDisk": { + "caching": "ReadWrite", + "createOption": "FromImage", + "diskSizeGB": "30", + "diffDiskSettings": { + "option": "Local" + }, + "encryptionSettings": { + "enabled": "false" + }, + "image": { + "uri": "" + }, + "managedDisk": { + "id": "/subscriptions/8d10da13-8125-4ba9-a717-bf7490507b3d/resourceGroups/macikgo-test-may-23/providers/Microsoft.Compute/disks/exampleosdiskname", + "storageAccountType": "Standard_LRS" + }, + "name": "exampleosdiskname", + "osType": "Linux", + "vhd": { + "uri": "" + }, + "writeAcceleratorEnabled": "false" + }, + "resourceDisk": { + "size": "4096" + } + }, + "subscriptionId": "8d10da13-8125-4ba9-a717-bf7490507b3d", + "tags": "baz:bash;foo:bar", + "tagsList": [ + { + "name": "baz", + "value": "bash" + }, + { + "name": "foo", + "value": "bar" + } + ], + "userData": "Zm9vYmFy", + "version": "15.05.22", + "vmId": "02aab8a4-74ef-476e-8182-f6d2ba4166a6", + "vmScaleSetName": "crpteste9vflji9", + "vmSize": "Standard_A3", + "zone": "" + } + } + } + } +} diff --git a/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2021-02-01/imds.json b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2021-02-01/imds.json new file mode 100644 index 000000000000..1d10d33765d1 --- /dev/null +++ b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2021-02-01/imds.json @@ -0,0 +1,932 @@ +{ + "swagger": "2.0", + "info": { + "title": "InstanceMetadataClient", + "description": "The Azure Instance Metadata Client", + "version": "2021-02-01" + }, + "host": "169.254.169.254", + "basePath": "/metadata", + "schemes": [ + "http", + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "securityDefinitions": { + "basic_auth": { + "type": "basic", + "description": "A Basic authentication flow" + } + }, + "paths": { + "/instance": { + "get": { + "operationId": "Instances_GetMetadata", + "description": "Get Instance Metadata for the Virtual Machine.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/MetadataParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Instance" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Instance Metadata for the VM": { + "$ref": "./examples/GetInstanceMetadata.json" + } + } + } + }, + "/attested/document": { + "get": { + "operationId": "Attested_GetDocument", + "description": "Get Attested Data for the Virtual Machine.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "nonce", + "in": "query", + "required": false, + "type": "string", + "description": "This is a string of up to 32 random alphanumeric characters." + }, + { + "$ref": "#/parameters/MetadataParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AttestedData" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Attested Data for the VM": { + "$ref": "./examples/GetAttestedData.json" + } + } + } + }, + "/identity/oauth2/token": { + "get": { + "tags": [ + "Get token" + ], + "description": "Get a Token from Azure AD", + "operationId": "Identity_GetToken", + "produces": [ + "application/json" + ], + "security": [ + {}, + { + "basic_auth": [] + } + ], + "parameters": [ + { + "$ref": "#/parameters/MetadataParameter" + }, + { + "name": "resource", + "in": "query", + "type": "string", + "description": "This is the urlencoded identifier URI of the sink resource for the requested Azure AD token. The resulting token contains the corresponding aud for this resource.", + "required": true + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "client_id", + "in": "query", + "type": "string", + "description": "This identifies, by Azure AD client id, a specific explicit identity to use when authenticating to Azure AD. Mutually exclusive with object_id and msi_res_id.", + "required": false + }, + { + "name": "object_id", + "in": "query", + "type": "string", + "description": "This identifies, by Azure AD object id, a specific explicit identity to use when authenticating to Azure AD. Mutually exclusive with client_id and msi_res_id.", + "required": false + }, + { + "name": "msi_res_id", + "in": "query", + "type": "string", + "description": "This identifies, by urlencoded ARM resource id, a specific explicit identity to use when authenticating to Azure AD. Mutually exclusive with client_id and object_id.", + "required": false + }, + { + "name": "authority", + "in": "query", + "type": "string", + "description": "This indicates the authority to request AAD tokens from. Defaults to the known authority of the identity to be used.", + "required": false + }, + { + "name": "bypass_cache", + "in": "query", + "type": "string", + "enum": [ + "true" + ], + "description": "If provided, the value must be 'true'. This indicates to the server that the token must be retrieved from Azure AD and cannot be retrieved from an internal cache.", + "required": false, + "x-ms-enum": { + "name": "BypassCache", + "modelAsString": true + } + } + ], + "responses": { + "200": { + "description": "Successful operation", + "schema": { + "$ref": "#/definitions/IdentityTokenResponse" + } + }, + "default": { + "headers": { + "Www-Authenticate": { + "type": "string", + "description": "This is the response header containing a challenge for the Basic scheme with a realm value" + } + }, + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/IdentityErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Identity Token for the VM": { + "$ref": "./examples/GetIdentityToken.json" + } + } + } + }, + "/identity/info": { + "get": { + "tags": [ + "Get metadata information" + ], + "description": "Get information about AAD Metadata", + "operationId": "Identity_GetInfo", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/MetadataParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successful operation", + "schema": { + "$ref": "#/definitions/IdentityInfoResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/IdentityErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Identity Info for the VM": { + "$ref": "./examples/GetIdentityInfo.json" + } + } + } + } + }, + "definitions": { + "Compute": { + "type": "object", + "properties": { + "azEnvironment": { + "type": "string", + "description": "This is the name of the environment in which the VM is running." + }, + "evictionPolicy": { + "type": "string", + "description": "Describes how the VM will be evicted if space needs to be freed up. Only applicable to Spot VMs. For a non-spot VM, this will be an empty string." + }, + "isHostCompatibilityLayerVm": { + "type": "string", + "description": "Identifies if the VM runs on the Host Compatibility Layer." + }, + "licenseType": { + "type": "string", + "description": "Type of license for Azure Hybrid Benefit. Note that this is only present for AHB-enabled VMs." + }, + "location": { + "type": "string", + "description": "This is the Azure Region in which the VM is running." + }, + "name": { + "type": "string", + "description": "This is the name of the VM." + }, + "offer": { + "type": "string", + "description": "This is the offer information for the VM image. This value is only present for images deployed from the Azure Image Gallery." + }, + "osProfile": { + "type": "object", + "description": "This contains the data about the OS.", + "$ref": "#/definitions/OsProfile" + }, + "osType": { + "type": "string", + "description": "This value indicates the type of OS the VM is running, either Linux or Windows." + }, + "placementGroupId": { + "type": "string", + "description": "This is the placement group of your Virtual Machine Scale Set." + }, + "plan": { + "type": "object", + "description": "This contains the data about the plan.", + "$ref": "#/definitions/PlanProperties" + }, + "publicKeys": { + "type": "array", + "items": { + "$ref": "#/definitions/PublicKeysProperties" + }, + "description": "This is information about the SSH certificate" + }, + "platformFaultDomain": { + "type": "string", + "description": "This is the fault domain in which the VM." + }, + "platformUpdateDomain": { + "type": "string", + "description": "This is the update domain in which the VM." + }, + "priority": { + "type": "string", + "description": "This is the priority of the VM." + }, + "provider": { + "type": "string", + "description": "This is the provider of the VM." + }, + "publisher": { + "type": "string", + "description": "This is the publisher of the VM image." + }, + "resourceGroupName": { + "type": "string", + "description": "This is the resource group for the VM." + }, + "resourceId": { + "type": "string", + "description": "This is the fully qualified ID for the VM." + }, + "securityProfile": { + "description": "This contains the data about the security profile associated with the VM.", + "$ref": "#/definitions/SecurityProfile" + }, + "sku": { + "type": "string", + "description": "This is the specific SKU for the VM image." + }, + "storageProfile": { + "type": "object", + "description": "This contains the data about the storage disks associated with the VM.", + "$ref": "#/definitions/StorageProfile" + }, + "subscriptionId": { + "type": "string", + "description": "This is the Azure subscription for the VM." + }, + "tags": { + "type": "string", + "description": "This is the list of tags for your VM." + }, + "tagsList": { + "type": "array", + "items": { + "$ref": "#/definitions/TagsProperties" + }, + "description": "This is the list of tags for your VM formatted as a JSON array for easier programmatic parsing." + }, + "userData": { + "type": "string", + "description": "The set of data specified when the VM was created for use during or after provisioning (Base64 encoded)" + }, + "version": { + "type": "string", + "description": "This is the version of the VM image." + }, + "vmId": { + "type": "string", + "description": "This is the unique identifier for the VM." + }, + "vmScaleSetName": { + "type": "string", + "description": "This is the resource name of the VMSS." + }, + "vmSize": { + "type": "string", + "description": "This is the size of the VM." + }, + "zone": { + "type": "string", + "description": "This is the availability zone of the VM." + } + }, + "description": "Compute Metadata" + }, + "Network": { + "type": "object", + "properties": { + "interface": { + "type": "array", + "description": "This contains data about the network interface.", + "items": { + "type": "object", + "$ref": "#/definitions/NetworkInterface" + } + } + }, + "description": "Network Metadata" + }, + "NetworkInterface": { + "type": "object", + "description": "This contains data about the network interface.", + "properties": { + "ipv4": { + "type": "object", + "description": "This contains the IPv4 address.", + "properties": { + "ipAddress": { + "type": "array", + "description": "This is the IP address", + "items": { + "type": "object", + "description": "This contains the IPv4 properties.", + "$ref": "#/definitions/Ipv4Properties" + } + }, + "subnet": { + "type": "array", + "description": "This is the subnet", + "items": { + "type": "object", + "description": "This contains the subnet properties.", + "$ref": "#/definitions/SubnetProperties" + } + } + } + }, + "ipv6": { + "type": "object", + "description": "This contains the IPv6 address.", + "properties": { + "ipAddress": { + "type": "array", + "description": "This is the IP address", + "items": { + "type": "object", + "description": "This contains the IPv6 properties.", + "$ref": "#/definitions/Ipv6Properties" + } + } + } + }, + "macAddress": { + "type": "string", + "description": "This is the MAC address of the interface." + } + } + }, + "OsProfile": { + "type": "object", + "description": "This contains the data about the OS.", + "properties": { + "adminUsername": { + "type": "string", + "description": "This is admin account." + }, + "computerName": { + "type": "string", + "description": "This is the name of the VM." + }, + "disablePasswordAuthentication": { + "type": "string", + "description": "This specifies whether or not password authentication is disabled. Note that this is present only for Linux VMs. For a Windows VM, this value will be the empty string." + } + } + }, + "PlanProperties": { + "type": "object", + "description": "This contains the data about the plan.", + "properties": { + "name": { + "type": "string", + "description": "This is the Plan ID." + }, + "publisher": { + "type": "string", + "description": "This is the publisher ID." + }, + "product": { + "type": "string", + "description": "This is the product of the image from the Marketplace." + } + } + }, + "PublicKeysProperties": { + "type": "object", + "description": "This contains the data about the public key.", + "properties": { + "path": { + "type": "string", + "description": "This specifies the full path on the VM where the SSH public key is stored." + }, + "keyData": { + "type": "string", + "description": "This is the SSH public key certificate used to authenticate with the VM." + } + } + }, + "TagsProperties": { + "type": "object", + "description": "This contains the properties of the tags in a tagsList.", + "properties": { + "name": { + "type": "string", + "description": "This is the name of the tag. It is equivalent to the key in the key-value pair format." + }, + "value": { + "type": "string", + "description": "This is the value of the tag. It is, as expected, equivalent to the value in the key-value pair format." + } + } + }, + "Ipv4Properties": { + "type": "object", + "description": "This contains the IPv4 properties.", + "properties": { + "privateIpAddress": { + "type": "string", + "description": "This is the private IP address assigned to the interface." + }, + "publicIpAddress": { + "type": "string", + "description": "This is the public IP address assigned to the interface." + } + } + }, + "Ipv6Properties": { + "type": "object", + "description": "This contains the IPv6 properties.", + "properties": { + "privateIpAddress": { + "type": "string", + "description": "This is the private IPv6 address assigned to the interface." + } + } + }, + "SubnetProperties": { + "type": "object", + "description": "This contains the properties of the subnet.", + "properties": { + "address": { + "type": "string", + "description": "This is the address range of the subnet." + }, + "prefix": { + "type": "string", + "description": "This is the prefix of the subnet." + } + } + }, + "SecurityProfile": { + "type": "object", + "description": "This contains the data about the security profile associated with the VM.", + "properties": { + "secureBootEnabled": { + "type": "string", + "description": "Identifies if UEFI secure boot is enabled on the VM" + }, + "virtualTpmEnabled": { + "type": "string", + "description": "Identifies if the virtual Trusted Platform Module (TPM) is enabled on the VM" + } + } + }, + "StorageProfile": { + "type": "object", + "description": "This contains the data about the storage disks associated with the VM.", + "properties": { + "imageReference": { + "type": "object", + "$ref": "#/definitions/ImageReference", + "description": "Image information" + }, + "osDisk": { + "type": "object", + "$ref": "#/definitions/OsDisk", + "description": "OS disk information" + }, + "dataDisks": { + "type": "array", + "description": "Data disk information", + "items": { + "type": "object", + "description": "This contains information about the data disk.", + "$ref": "#/definitions/DataDisk" + } + }, + "resourceDisk": { + "type": "object", + "description": "This contains data for the size of local temp disk of the VM, if it exists.", + "properties": { + "size": { + "type": "string", + "description": "The size of the local temp disk of the VM if it exists, in kilobytes. If the VM has no local temp disk, this value is 0." + } + } + } + } + }, + "ImageReference": { + "type": "object", + "description": "This contains information about the OS image.", + "properties": { + "id": { + "type": "string", + "description": "This is the resource ID." + }, + "offer": { + "type": "string", + "description": "This is the offer of the platform or marketplace image." + }, + "publisher": { + "type": "string", + "description": "This is the image publisher." + }, + "sku": { + "type": "string", + "description": "This is the image SKU." + }, + "version": { + "type": "string", + "description": "This is the version of the platform or marketplace image." + } + } + }, + "OsDisk": { + "type": "object", + "description": "This contains information about the OS disk used by the VM.", + "properties": { + "caching": { + "type": "string", + "description": "This is the caching requirements." + }, + "createOption": { + "type": "string", + "description": "This is information about how the VM was created." + }, + "diffDiskSettings": { + "type": "object", + "description": "This is the ephemeral disk settings.", + "$ref": "#/definitions/DiffDiskSettings" + }, + "diskSizeGB": { + "type": "string", + "description": "This is the size of the disk in GB." + }, + "encryptionSettings": { + "type": "object", + "description": "This is the encryption settings for the disk.", + "$ref": "#/definitions/EncryptionSettings" + }, + "image": { + "type": "object", + "description": "This is the source user image virtual hard disk.", + "$ref": "#/definitions/DiskImage" + }, + "managedDisk": { + "type": "object", + "description": "This is managed disk parameters.", + "$ref": "#/definitions/ManagedDisk" + }, + "name": { + "type": "string", + "description": "This is the disk name." + }, + "osType": { + "type": "string", + "description": "This is the type of OS included in the disk." + }, + "vhd": { + "type": "object", + "description": "This is the virtual hard disk.", + "$ref": "#/definitions/VirtualHardDisk" + }, + "writeAcceleratorEnabled": { + "type": "string", + "description": "This specifies whether or not writeAccelerator is enabled on the disk." + } + } + }, + "DataDisk": { + "type": "object", + "description": "This contains information about the data disk.", + "properties": { + "caching": { + "type": "string", + "description": "This is the caching requirements." + }, + "createOption": { + "type": "string", + "description": "This is information about how the VM was created." + }, + "diskSizeGB": { + "type": "string", + "description": "This is the size of the disk in GB." + }, + "image": { + "type": "object", + "description": "This is the source user image virtual hard disk.", + "$ref": "#/definitions/DiskImage" + }, + "lun": { + "type": "string", + "description": "This is the logical unit number of the disk." + }, + "managedDisk": { + "type": "object", + "description": "This is managed disk parameters.", + "$ref": "#/definitions/ManagedDisk" + }, + "name": { + "type": "string", + "description": "This is the disk name." + }, + "vhd": { + "type": "object", + "description": "This is the virtual hard disk.", + "$ref": "#/definitions/VirtualHardDisk" + }, + "writeAcceleratorEnabled": { + "type": "string", + "description": "This specifies whether or not writeAccelerator is enabled on the disk." + } + } + }, + "EncryptionSettings": { + "type": "object", + "description": "This is the encryption settings for the disk.", + "properties": { + "enabled": { + "type": "string", + "description": "This specifies whether or not disk encryption is enabled on the VM." + } + } + }, + "DiffDiskSettings": { + "type": "object", + "description": "This is the ephemeral disk settings.", + "properties": { + "option": { + "type": "string", + "description": "This specifies the ephemeral disk settings." + } + } + }, + "DiskImage": { + "type": "object", + "description": "This is the source user image virtual hard disk.", + "properties": { + "uri": { + "type": "string", + "description": "This is the uri of the virtual hard disk." + } + } + }, + "ManagedDisk": { + "type": "object", + "description": "This is managed disk parameters.", + "properties": { + "id": { + "type": "string", + "description": "This is the resource ID." + }, + "storageAccountType": { + "type": "string", + "description": "This is the storage account type for the managed disk." + } + } + }, + "VirtualHardDisk": { + "type": "object", + "description": "This is the virtual hard disk.", + "properties": { + "uri": { + "type": "string", + "description": "This is the uri of the virtual hard disk." + } + } + }, + "ApplicationResponse": { + "type": "string", + "description": "This is a binary string containing the application." + }, + "Instance": { + "type": "object", + "description": "This is the response from the Instance_GetMetadata operation.", + "properties": { + "compute": { + "$ref": "#/definitions/Compute", + "description": "Compute Metadata" + }, + "network": { + "$ref": "#/definitions/Network", + "description": "Network Metadata" + } + } + }, + "AttestedData": { + "type": "object", + "description": "This is the response from the Attested_GetDocument operation.", + "properties": { + "signature": { + "type": "string", + "description": "This is the encoded string containing the VM ID, SKU, plan information, public key, timestamp, and nonce value." + }, + "encoding": { + "type": "string", + "description": "This is the encoding scheme of the signature." + } + } + }, + "ErrorResponse": { + "description": "This is the response from an operation in the case an error occurs.", + "type": "object", + "properties": { + "error": { + "description": "Error message indicating why the operation failed.", + "type": "string" + } + } + }, + "IdentityErrorResponse": { + "type": "object", + "description": "This is the response from an Identity operation in the case an error occurs.", + "properties": { + "error": { + "type": "string", + "description": "Error code", + "enum": [ + "invalid_request", + "unauthorized_client", + "access_denied", + "unsupported_response_type", + "invalid_scope", + "server_error", + "service_unavailable", + "bad_request", + "forbidden", + "not_found", + "method_not_allowed", + "too_many_requests" + ], + "x-ms-enum": { + "name": "Error", + "modelAsString": true + } + }, + "error_description": { + "type": "string", + "description": "Error message indicating why the operation failed." + } + } + }, + "IdentityTokenResponse": { + "type": "object", + "description": "This is the response from the Identity_GetToken operation.", + "properties": { + "access_token": { + "type": "string", + "description": "This is the requested access token. The app can use this token to authenticate to the sink resource." + }, + "expires_in": { + "type": "string", + "description": "This is how long the access token is valid (in seconds)." + }, + "expires_on": { + "type": "string", + "description": "This is the time when the access token expires. The date is represented as the number of seconds from 1970-01-01T0:0:0Z UTC until the expiration time. This value is used to determine the lifetime of cached tokens." + }, + "ext_expires_in": { + "type": "string", + "description": "This indicates the extended lifetime of the token (in seconds)." + }, + "not_before": { + "type": "string", + "description": "This is the time when the access token becomes effective. The date is represented as the number of seconds from 1970-01-01T0:0:0Z UTC until the expiration time." + }, + "resource": { + "type": "string", + "description": "This is the app ID URI of the sink resource." + }, + "token_type": { + "type": "string", + "description": "This indicates the token type value." + }, + "client_id": { + "type": "string", + "description": "This is the client_id specified in the request, if any." + }, + "object_id": { + "type": "string", + "description": "This is the object_id specified in the request, if any." + }, + "msi_res_id": { + "type": "string", + "description": "This is the msi_res_id specified in the request, if any." + } + } + }, + "IdentityInfoResponse": { + "type": "object", + "description": "This is the response from the Identity_GetInfo operation.", + "properties": { + "tenantId": { + "type": "string", + "description": "This is the AAD tenantId of the identity of the system assigned managed identity." + } + } + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "type": "string", + "enum": [ + "2018-10-01" + ], + "description": "This is the API version to use.", + "required": true, + "x-ms-enum": { + "name": "ApiVersion", + "modelAsString": true + } + }, + "MetadataParameter": { + "name": "Metadata", + "in": "header", + "type": "string", + "enum": [ + "true" + ], + "description": "This must be set to 'true'.", + "required": true, + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/imds/data-plane/readme.go.md b/specification/imds/data-plane/readme.go.md index db87db66586d..35cdaa80b712 100644 --- a/specification/imds/data-plane/readme.go.md +++ b/specification/imds/data-plane/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: imds clear-output-folder: true ``` diff --git a/specification/imds/data-plane/readme.md b/specification/imds/data-plane/readme.md index 9acb1b17dc7e..05a3ec15a057 100644 --- a/specification/imds/data-plane/readme.md +++ b/specification/imds/data-plane/readme.md @@ -24,296 +24,421 @@ For other options on installation see [Installing AutoRest](https://aka.ms/autor These are the global settings for the Instance Metadata Service API. -```yaml +``` yaml openapi-type: data-plane azure-arm: false -tag: package-2020-07-15 +tag: package-2021-02-01 ``` ### Tag: package-2018-10-01 These settings apply only when `--tag=package-2018-10-01` is specified on the command line. -```yaml $(tag) == 'package-2018-10-01' +``` yaml $(tag) == 'package-2018-10-01' input-file: -- Microsoft.InstanceMetadataService/stable/2018-10-01/imds.json + - Microsoft.InstanceMetadataService/stable/2018-10-01/imds.json ``` ### Tag: package-2019-02-01 These settings apply only when `--tag=package-2019-02-01` is specified on the command line. -```yaml $(tag) == 'package-2019-02-01' +``` yaml $(tag) == 'package-2019-02-01' input-file: -- Microsoft.InstanceMetadataService/stable/2019-02-01/imds.json + - Microsoft.InstanceMetadataService/stable/2019-02-01/imds.json ``` ### Tag: package-2019-03-11 These settings apply only when `--tag=package-2019-03-11` is specified on the command line. -```yaml $(tag) == 'package-2019-03-11' +``` yaml $(tag) == 'package-2019-03-11' input-file: -- Microsoft.InstanceMetadataService/stable/2019-03-11/imds.json + - Microsoft.InstanceMetadataService/stable/2019-03-11/imds.json ``` ### Tag: package-2019-04-30 These settings apply only when `--tag=package-2019-04-30` is specified on the command line. -```yaml $(tag) == 'package-2019-04-30' +``` yaml $(tag) == 'package-2019-04-30' input-file: -- Microsoft.InstanceMetadataService/stable/2019-04-30/imds.json + - Microsoft.InstanceMetadataService/stable/2019-04-30/imds.json ``` ### Tag: package-2019-06-01 These settings apply only when `--tag=package-2019-06-01` is specified on the command line. -```yaml $(tag) == 'package-2019-06-01' +``` yaml $(tag) == 'package-2019-06-01' input-file: -- Microsoft.InstanceMetadataService/stable/2019-06-01/imds.json + - Microsoft.InstanceMetadataService/stable/2019-06-01/imds.json ``` ### Tag: package-2019-06-04 These settings apply only when `--tag=package-2019-06-04` is specified on the command line. -```yaml $(tag) == 'package-2019-06-04' +``` yaml $(tag) == 'package-2019-06-04' input-file: -- Microsoft.InstanceMetadataService/stable/2019-06-04/imds.json + - Microsoft.InstanceMetadataService/stable/2019-06-04/imds.json ``` ### Tag: package-2019-08-01 These settings apply only when `--tag=package-2019-08-01` is specified on the command line. -```yaml $(tag) == 'package-2019-08-01' +``` yaml $(tag) == 'package-2019-08-01' input-file: -- Microsoft.InstanceMetadataService/stable/2019-08-01/imds.json + - Microsoft.InstanceMetadataService/stable/2019-08-01/imds.json ``` ### Tag: package-2019-08-15 These settings apply only when `--tag=package-2019-08-15` is specified on the command line. -```yaml $(tag) == 'package-2019-08-15' +``` yaml $(tag) == 'package-2019-08-15' input-file: -- Microsoft.InstanceMetadataService/stable/2019-08-15/imds.json + - Microsoft.InstanceMetadataService/stable/2019-08-15/imds.json ``` ### Tag: package-2019-11-01 These settings apply only when `--tag=package-2019-11-01` is specified on the command line. -```yaml $(tag) == 'package-2019-11-01' +``` yaml $(tag) == 'package-2019-11-01' input-file: -- Microsoft.InstanceMetadataService/stable/2019-11-01/imds.json + - Microsoft.InstanceMetadataService/stable/2019-11-01/imds.json ``` ### Tag: package-2020-06-01 These settings apply only when `--tag=package-2020-06-01` is specified on the command line. -```yaml $(tag) == 'package-2020-06-01' +``` yaml $(tag) == 'package-2020-06-01' input-file: -- Microsoft.InstanceMetadataService/stable/2020-06-01/imds.json + - Microsoft.InstanceMetadataService/stable/2020-06-01/imds.json ``` ### Tag: package-2020-07-15 These settings apply only when `--tag=package-2020-07-15` is specified on the command line. -```yaml $(tag) == 'package-2020-07-15' +``` yaml $(tag) == 'package-2020-07-15' +input-file: + - Microsoft.InstanceMetadataService/stable/2020-07-15/imds.json +``` + +### Tag: package-2020-09-01 + +These settings apply only when `--tag=package-2020-09-01` is specified on the command line. + +``` yaml $(tag) == 'package-2020-09-01' input-file: -- Microsoft.InstanceMetadataService/stable/2020-07-15/imds.json + - Microsoft.InstanceMetadataService/stable/2020-09-01/imds.json +``` + +### Tag: package-2020-10-01 + +These settings apply only when `--tag=package-2020-10-01` is specified on the command line. + +``` yaml $(tag) == 'package-2020-10-01' +input-file: + - Microsoft.InstanceMetadataService/stable/2020-10-01/imds.json +``` + +### Tag: package-2020-12-01 + +These settings apply only when `--tag=package-2020-12-01` is specified on the command line. + +``` yaml $(tag) == 'package-2020-12-01' +input-file: + - Microsoft.InstanceMetadataService/stable/2020-12-01/imds.json +``` + +### Tag: package-2021-01-01 + +These settings apply only when `--tag=package-2021-01-01` is specified on the command line. + +``` yaml $(tag) == 'package-2021-01-01' +input-file: + - Microsoft.InstanceMetadataService/stable/2021-01-01/imds.json +``` + +### Tag: package-2021-02-01 + +These settings apply only when `--tag=package-2021-02-01` is specified on the command line. + +``` yaml $(tag) == 'package-2021-02-01' +input-file: + - Microsoft.InstanceMetadataService/stable/2021-02-01/imds.json ``` ## Suppression ``` yaml - directive: - - suppress: DefinitionsPropertiesNamesCamelCase - reason: The following properties follow the Oath2 spec, which does not use camelCase. - from: Microsoft.InstanceMetadataService/stable/2018-10-01/imds.json - where: - - $.definitions.IdentityTokenResponse.properties.access_token - - $.definitions.IdentityTokenResponse.properties.expires_in - - $.definitions.IdentityTokenResponse.properties.expires_on - - $.definitions.IdentityTokenResponse.properties.ext_expires_in - - $.definitions.IdentityTokenResponse.properties.not_before - - $.definitions.IdentityTokenResponse.properties.resource - - $.definitions.IdentityTokenResponse.properties.token_type - - $.definitions.IdentityTokenResponse.properties.client_id - - $.definitions.IdentityTokenResponse.properties.object_id - - $.definitions.IdentityTokenResponse.properties.msi_res_id - - $.definitions.IdentityErrorResponse.properties.error_description - - - suppress: DefinitionsPropertiesNamesCamelCase - reason: The following properties follow the Oath2 spec, which does not use camelCase. - from: Microsoft.InstanceMetadataService/stable/2019-02-01/imds.json - where: - - $.definitions.IdentityTokenResponse.properties.access_token - - $.definitions.IdentityTokenResponse.properties.expires_in - - $.definitions.IdentityTokenResponse.properties.expires_on - - $.definitions.IdentityTokenResponse.properties.ext_expires_in - - $.definitions.IdentityTokenResponse.properties.not_before - - $.definitions.IdentityTokenResponse.properties.resource - - $.definitions.IdentityTokenResponse.properties.token_type - - $.definitions.IdentityTokenResponse.properties.client_id - - $.definitions.IdentityTokenResponse.properties.object_id - - $.definitions.IdentityTokenResponse.properties.msi_res_id - - $.definitions.IdentityErrorResponse.properties.error_description - - - suppress: DefinitionsPropertiesNamesCamelCase - reason: The following properties follow the Oath2 spec, which does not use camelCase. - from: Microsoft.InstanceMetadataService/stable/2019-03-11/imds.json - where: - - $.definitions.IdentityTokenResponse.properties.access_token - - $.definitions.IdentityTokenResponse.properties.expires_in - - $.definitions.IdentityTokenResponse.properties.expires_on - - $.definitions.IdentityTokenResponse.properties.ext_expires_in - - $.definitions.IdentityTokenResponse.properties.not_before - - $.definitions.IdentityTokenResponse.properties.resource - - $.definitions.IdentityTokenResponse.properties.token_type - - $.definitions.IdentityTokenResponse.properties.client_id - - $.definitions.IdentityTokenResponse.properties.object_id - - $.definitions.IdentityTokenResponse.properties.msi_res_id - - $.definitions.IdentityErrorResponse.properties.error_description - - - suppress: DefinitionsPropertiesNamesCamelCase - reason: The following properties follow the Oath2 spec, which does not use camelCase. - from: Microsoft.InstanceMetadataService/stable/2019-04-30/imds.json - where: - - $.definitions.IdentityTokenResponse.properties.access_token - - $.definitions.IdentityTokenResponse.properties.expires_in - - $.definitions.IdentityTokenResponse.properties.expires_on - - $.definitions.IdentityTokenResponse.properties.ext_expires_in - - $.definitions.IdentityTokenResponse.properties.not_before - - $.definitions.IdentityTokenResponse.properties.resource - - $.definitions.IdentityTokenResponse.properties.token_type - - $.definitions.IdentityTokenResponse.properties.client_id - - $.definitions.IdentityTokenResponse.properties.object_id - - $.definitions.IdentityTokenResponse.properties.msi_res_id - - $.definitions.IdentityErrorResponse.properties.error_description - - - suppress: DefinitionsPropertiesNamesCamelCase - reason: The following properties follow the Oath2 spec, which does not use camelCase. - from: Microsoft.InstanceMetadataService/stable/2019-06-01/imds.json - where: - - $.definitions.IdentityTokenResponse.properties.access_token - - $.definitions.IdentityTokenResponse.properties.expires_in - - $.definitions.IdentityTokenResponse.properties.expires_on - - $.definitions.IdentityTokenResponse.properties.ext_expires_in - - $.definitions.IdentityTokenResponse.properties.not_before - - $.definitions.IdentityTokenResponse.properties.resource - - $.definitions.IdentityTokenResponse.properties.token_type - - $.definitions.IdentityTokenResponse.properties.client_id - - $.definitions.IdentityTokenResponse.properties.object_id - - $.definitions.IdentityTokenResponse.properties.msi_res_id - - $.definitions.IdentityErrorResponse.properties.error_description - - - suppress: DefinitionsPropertiesNamesCamelCase - reason: The following properties follow the Oath2 spec, which does not use camelCase. - from: Microsoft.InstanceMetadataService/stable/2019-06-04/imds.json - where: - - $.definitions.IdentityTokenResponse.properties.access_token - - $.definitions.IdentityTokenResponse.properties.expires_in - - $.definitions.IdentityTokenResponse.properties.expires_on - - $.definitions.IdentityTokenResponse.properties.ext_expires_in - - $.definitions.IdentityTokenResponse.properties.not_before - - $.definitions.IdentityTokenResponse.properties.resource - - $.definitions.IdentityTokenResponse.properties.token_type - - $.definitions.IdentityTokenResponse.properties.client_id - - $.definitions.IdentityTokenResponse.properties.object_id - - $.definitions.IdentityTokenResponse.properties.msi_res_id - - $.definitions.IdentityErrorResponse.properties.error_description - - - suppress: DefinitionsPropertiesNamesCamelCase - reason: The following properties follow the Oath2 spec, which does not use camelCase. - from: Microsoft.InstanceMetadataService/stable/2019-08-01/imds.json - where: - - $.definitions.IdentityTokenResponse.properties.access_token - - $.definitions.IdentityTokenResponse.properties.expires_in - - $.definitions.IdentityTokenResponse.properties.expires_on - - $.definitions.IdentityTokenResponse.properties.ext_expires_in - - $.definitions.IdentityTokenResponse.properties.not_before - - $.definitions.IdentityTokenResponse.properties.resource - - $.definitions.IdentityTokenResponse.properties.token_type - - $.definitions.IdentityTokenResponse.properties.client_id - - $.definitions.IdentityTokenResponse.properties.object_id - - $.definitions.IdentityTokenResponse.properties.msi_res_id - - $.definitions.IdentityErrorResponse.properties.error_description - - - suppress: HttpsSupportedScheme - reason: IMDS does not require HTTPS to query it - - - suppress: SecurityDefinitionsStructure - reason: IMDS does not support any authentication - - - suppress: DefinitionsPropertiesNamesCamelCase - reason: The following properties follow the Oath2 spec, which does not use camelCase. - from: Microsoft.InstanceMetadataService/stable/2019-08-15/imds.json - where: - - $.definitions.IdentityTokenResponse.properties.access_token - - $.definitions.IdentityTokenResponse.properties.expires_in - - $.definitions.IdentityTokenResponse.properties.expires_on - - $.definitions.IdentityTokenResponse.properties.ext_expires_in - - $.definitions.IdentityTokenResponse.properties.not_before - - $.definitions.IdentityTokenResponse.properties.resource - - $.definitions.IdentityTokenResponse.properties.token_type - - $.definitions.IdentityTokenResponse.properties.client_id - - $.definitions.IdentityTokenResponse.properties.object_id - - $.definitions.IdentityTokenResponse.properties.msi_res_id - - $.definitions.IdentityErrorResponse.properties.error_description - - - suppress: DefinitionsPropertiesNamesCamelCase - reason: The following properties follow the Oath2 spec, which does not use camelCase. - from: Microsoft.InstanceMetadataService/stable/2019-11-01/imds.json - where: - - $.definitions.IdentityTokenResponse.properties.access_token - - $.definitions.IdentityTokenResponse.properties.expires_in - - $.definitions.IdentityTokenResponse.properties.expires_on - - $.definitions.IdentityTokenResponse.properties.ext_expires_in - - $.definitions.IdentityTokenResponse.properties.not_before - - $.definitions.IdentityTokenResponse.properties.resource - - $.definitions.IdentityTokenResponse.properties.token_type - - $.definitions.IdentityTokenResponse.properties.client_id - - $.definitions.IdentityTokenResponse.properties.object_id - - $.definitions.IdentityTokenResponse.properties.msi_res_id - - $.definitions.IdentityErrorResponse.properties.error_description +directive: + - suppress: DefinitionsPropertiesNamesCamelCase + reason: The following properties follow the Oath2 spec, which does not use camelCase. + from: Microsoft.InstanceMetadataService/stable/2018-10-01/imds.json + where: + - $.definitions.IdentityTokenResponse.properties.access_token + - $.definitions.IdentityTokenResponse.properties.expires_in + - $.definitions.IdentityTokenResponse.properties.expires_on + - $.definitions.IdentityTokenResponse.properties.ext_expires_in + - $.definitions.IdentityTokenResponse.properties.not_before + - $.definitions.IdentityTokenResponse.properties.resource + - $.definitions.IdentityTokenResponse.properties.token_type + - $.definitions.IdentityTokenResponse.properties.client_id + - $.definitions.IdentityTokenResponse.properties.object_id + - $.definitions.IdentityTokenResponse.properties.msi_res_id + - $.definitions.IdentityErrorResponse.properties.error_description + + - suppress: DefinitionsPropertiesNamesCamelCase + reason: The following properties follow the Oath2 spec, which does not use camelCase. + from: Microsoft.InstanceMetadataService/stable/2019-02-01/imds.json + where: + - $.definitions.IdentityTokenResponse.properties.access_token + - $.definitions.IdentityTokenResponse.properties.expires_in + - $.definitions.IdentityTokenResponse.properties.expires_on + - $.definitions.IdentityTokenResponse.properties.ext_expires_in + - $.definitions.IdentityTokenResponse.properties.not_before + - $.definitions.IdentityTokenResponse.properties.resource + - $.definitions.IdentityTokenResponse.properties.token_type + - $.definitions.IdentityTokenResponse.properties.client_id + - $.definitions.IdentityTokenResponse.properties.object_id + - $.definitions.IdentityTokenResponse.properties.msi_res_id + - $.definitions.IdentityErrorResponse.properties.error_description + + - suppress: DefinitionsPropertiesNamesCamelCase + reason: The following properties follow the Oath2 spec, which does not use camelCase. + from: Microsoft.InstanceMetadataService/stable/2019-03-11/imds.json + where: + - $.definitions.IdentityTokenResponse.properties.access_token + - $.definitions.IdentityTokenResponse.properties.expires_in + - $.definitions.IdentityTokenResponse.properties.expires_on + - $.definitions.IdentityTokenResponse.properties.ext_expires_in + - $.definitions.IdentityTokenResponse.properties.not_before + - $.definitions.IdentityTokenResponse.properties.resource + - $.definitions.IdentityTokenResponse.properties.token_type + - $.definitions.IdentityTokenResponse.properties.client_id + - $.definitions.IdentityTokenResponse.properties.object_id + - $.definitions.IdentityTokenResponse.properties.msi_res_id + - $.definitions.IdentityErrorResponse.properties.error_description + + - suppress: DefinitionsPropertiesNamesCamelCase + reason: The following properties follow the Oath2 spec, which does not use camelCase. + from: Microsoft.InstanceMetadataService/stable/2019-04-30/imds.json + where: + - $.definitions.IdentityTokenResponse.properties.access_token + - $.definitions.IdentityTokenResponse.properties.expires_in + - $.definitions.IdentityTokenResponse.properties.expires_on + - $.definitions.IdentityTokenResponse.properties.ext_expires_in + - $.definitions.IdentityTokenResponse.properties.not_before + - $.definitions.IdentityTokenResponse.properties.resource + - $.definitions.IdentityTokenResponse.properties.token_type + - $.definitions.IdentityTokenResponse.properties.client_id + - $.definitions.IdentityTokenResponse.properties.object_id + - $.definitions.IdentityTokenResponse.properties.msi_res_id + - $.definitions.IdentityErrorResponse.properties.error_description + + - suppress: DefinitionsPropertiesNamesCamelCase + reason: The following properties follow the Oath2 spec, which does not use camelCase. + from: Microsoft.InstanceMetadataService/stable/2019-06-01/imds.json + where: + - $.definitions.IdentityTokenResponse.properties.access_token + - $.definitions.IdentityTokenResponse.properties.expires_in + - $.definitions.IdentityTokenResponse.properties.expires_on + - $.definitions.IdentityTokenResponse.properties.ext_expires_in + - $.definitions.IdentityTokenResponse.properties.not_before + - $.definitions.IdentityTokenResponse.properties.resource + - $.definitions.IdentityTokenResponse.properties.token_type + - $.definitions.IdentityTokenResponse.properties.client_id + - $.definitions.IdentityTokenResponse.properties.object_id + - $.definitions.IdentityTokenResponse.properties.msi_res_id + - $.definitions.IdentityErrorResponse.properties.error_description + + - suppress: DefinitionsPropertiesNamesCamelCase + reason: The following properties follow the Oath2 spec, which does not use camelCase. + from: Microsoft.InstanceMetadataService/stable/2019-06-04/imds.json + where: + - $.definitions.IdentityTokenResponse.properties.access_token + - $.definitions.IdentityTokenResponse.properties.expires_in + - $.definitions.IdentityTokenResponse.properties.expires_on + - $.definitions.IdentityTokenResponse.properties.ext_expires_in + - $.definitions.IdentityTokenResponse.properties.not_before + - $.definitions.IdentityTokenResponse.properties.resource + - $.definitions.IdentityTokenResponse.properties.token_type + - $.definitions.IdentityTokenResponse.properties.client_id + - $.definitions.IdentityTokenResponse.properties.object_id + - $.definitions.IdentityTokenResponse.properties.msi_res_id + - $.definitions.IdentityErrorResponse.properties.error_description + + - suppress: DefinitionsPropertiesNamesCamelCase + reason: The following properties follow the Oath2 spec, which does not use camelCase. + from: Microsoft.InstanceMetadataService/stable/2019-08-01/imds.json + where: + - $.definitions.IdentityTokenResponse.properties.access_token + - $.definitions.IdentityTokenResponse.properties.expires_in + - $.definitions.IdentityTokenResponse.properties.expires_on + - $.definitions.IdentityTokenResponse.properties.ext_expires_in + - $.definitions.IdentityTokenResponse.properties.not_before + - $.definitions.IdentityTokenResponse.properties.resource + - $.definitions.IdentityTokenResponse.properties.token_type + - $.definitions.IdentityTokenResponse.properties.client_id + - $.definitions.IdentityTokenResponse.properties.object_id + - $.definitions.IdentityTokenResponse.properties.msi_res_id + - $.definitions.IdentityErrorResponse.properties.error_description + + - suppress: HttpsSupportedScheme + reason: IMDS does not require HTTPS to query it + + - suppress: SecurityDefinitionsStructure + reason: IMDS does not support any authentication + + - suppress: DefinitionsPropertiesNamesCamelCase + reason: The following properties follow the Oath2 spec, which does not use camelCase. + from: Microsoft.InstanceMetadataService/stable/2019-08-15/imds.json + where: + - $.definitions.IdentityTokenResponse.properties.access_token + - $.definitions.IdentityTokenResponse.properties.expires_in + - $.definitions.IdentityTokenResponse.properties.expires_on + - $.definitions.IdentityTokenResponse.properties.ext_expires_in + - $.definitions.IdentityTokenResponse.properties.not_before + - $.definitions.IdentityTokenResponse.properties.resource + - $.definitions.IdentityTokenResponse.properties.token_type + - $.definitions.IdentityTokenResponse.properties.client_id + - $.definitions.IdentityTokenResponse.properties.object_id + - $.definitions.IdentityTokenResponse.properties.msi_res_id + - $.definitions.IdentityErrorResponse.properties.error_description + + - suppress: DefinitionsPropertiesNamesCamelCase + reason: The following properties follow the Oath2 spec, which does not use camelCase. + from: Microsoft.InstanceMetadataService/stable/2019-11-01/imds.json + where: + - $.definitions.IdentityTokenResponse.properties.access_token + - $.definitions.IdentityTokenResponse.properties.expires_in + - $.definitions.IdentityTokenResponse.properties.expires_on + - $.definitions.IdentityTokenResponse.properties.ext_expires_in + - $.definitions.IdentityTokenResponse.properties.not_before + - $.definitions.IdentityTokenResponse.properties.resource + - $.definitions.IdentityTokenResponse.properties.token_type + - $.definitions.IdentityTokenResponse.properties.client_id + - $.definitions.IdentityTokenResponse.properties.object_id + - $.definitions.IdentityTokenResponse.properties.msi_res_id + - $.definitions.IdentityErrorResponse.properties.error_description + + - suppress: DefinitionsPropertiesNamesCamelCase + reason: The following properties follow the Oath2 spec, which does not use camelCase. + from: Microsoft.InstanceMetadataService/stable/2020-06-01/imds.json + where: + - $.definitions.IdentityTokenResponse.properties.access_token + - $.definitions.IdentityTokenResponse.properties.expires_in + - $.definitions.IdentityTokenResponse.properties.expires_on + - $.definitions.IdentityTokenResponse.properties.ext_expires_in + - $.definitions.IdentityTokenResponse.properties.not_before + - $.definitions.IdentityTokenResponse.properties.resource + - $.definitions.IdentityTokenResponse.properties.token_type + - $.definitions.IdentityTokenResponse.properties.client_id + - $.definitions.IdentityTokenResponse.properties.object_id + - $.definitions.IdentityTokenResponse.properties.msi_res_id + - $.definitions.IdentityErrorResponse.properties.error_description + + - suppress: DefinitionsPropertiesNamesCamelCase + reason: The following properties follow the Oath2 spec, which does not use camelCase. + from: Microsoft.InstanceMetadataService/stable/2020-07-15/imds.json + where: + - $.definitions.IdentityTokenResponse.properties.access_token + - $.definitions.IdentityTokenResponse.properties.expires_in + - $.definitions.IdentityTokenResponse.properties.expires_on + - $.definitions.IdentityTokenResponse.properties.ext_expires_in + - $.definitions.IdentityTokenResponse.properties.not_before + - $.definitions.IdentityTokenResponse.properties.resource + - $.definitions.IdentityTokenResponse.properties.token_type + - $.definitions.IdentityTokenResponse.properties.client_id + - $.definitions.IdentityTokenResponse.properties.object_id + - $.definitions.IdentityTokenResponse.properties.msi_res_id + - $.definitions.IdentityErrorResponse.properties.error_description + + - suppress: DefinitionsPropertiesNamesCamelCase + reason: The following properties follow the Oath2 spec, which does not use camelCase. + from: Microsoft.InstanceMetadataService/stable/2020-09-01/imds.json + where: + - $.definitions.IdentityTokenResponse.properties.access_token + - $.definitions.IdentityTokenResponse.properties.expires_in + - $.definitions.IdentityTokenResponse.properties.expires_on + - $.definitions.IdentityTokenResponse.properties.ext_expires_in + - $.definitions.IdentityTokenResponse.properties.not_before + - $.definitions.IdentityTokenResponse.properties.resource + - $.definitions.IdentityTokenResponse.properties.token_type + - $.definitions.IdentityTokenResponse.properties.client_id + - $.definitions.IdentityTokenResponse.properties.object_id + - $.definitions.IdentityTokenResponse.properties.msi_res_id + - $.definitions.IdentityErrorResponse.properties.error_description - - suppress: DefinitionsPropertiesNamesCamelCase - reason: The following properties follow the Oath2 spec, which does not use camelCase. - from: Microsoft.InstanceMetadataService/stable/2020-06-01/imds.json - where: - - $.definitions.IdentityTokenResponse.properties.access_token - - $.definitions.IdentityTokenResponse.properties.expires_in - - $.definitions.IdentityTokenResponse.properties.expires_on - - $.definitions.IdentityTokenResponse.properties.ext_expires_in - - $.definitions.IdentityTokenResponse.properties.not_before - - $.definitions.IdentityTokenResponse.properties.resource - - $.definitions.IdentityTokenResponse.properties.token_type - - $.definitions.IdentityTokenResponse.properties.client_id - - $.definitions.IdentityTokenResponse.properties.object_id - - $.definitions.IdentityTokenResponse.properties.msi_res_id - - $.definitions.IdentityErrorResponse.properties.error_description - - - suppress: DefinitionsPropertiesNamesCamelCase - reason: The following properties follow the Oath2 spec, which does not use camelCase. - from: Microsoft.InstanceMetadataService/stable/2020-07-15/imds.json - where: - - $.definitions.IdentityTokenResponse.properties.access_token - - $.definitions.IdentityTokenResponse.properties.expires_in - - $.definitions.IdentityTokenResponse.properties.expires_on - - $.definitions.IdentityTokenResponse.properties.ext_expires_in - - $.definitions.IdentityTokenResponse.properties.not_before - - $.definitions.IdentityTokenResponse.properties.resource - - $.definitions.IdentityTokenResponse.properties.token_type - - $.definitions.IdentityTokenResponse.properties.client_id - - $.definitions.IdentityTokenResponse.properties.object_id - - $.definitions.IdentityTokenResponse.properties.msi_res_id - - $.definitions.IdentityErrorResponse.properties.error_description + - suppress: DefinitionsPropertiesNamesCamelCase + reason: The following properties follow the Oath2 spec, which does not use camelCase. + from: Microsoft.InstanceMetadataService/stable/2020-10-01/imds.json + where: + - $.definitions.IdentityTokenResponse.properties.access_token + - $.definitions.IdentityTokenResponse.properties.expires_in + - $.definitions.IdentityTokenResponse.properties.expires_on + - $.definitions.IdentityTokenResponse.properties.ext_expires_in + - $.definitions.IdentityTokenResponse.properties.not_before + - $.definitions.IdentityTokenResponse.properties.resource + - $.definitions.IdentityTokenResponse.properties.token_type + - $.definitions.IdentityTokenResponse.properties.client_id + - $.definitions.IdentityTokenResponse.properties.object_id + - $.definitions.IdentityTokenResponse.properties.msi_res_id + - $.definitions.IdentityErrorResponse.properties.error_description + + - suppress: DefinitionsPropertiesNamesCamelCase + reason: The following properties follow the Oath2 spec, which does not use camelCase. + from: Microsoft.InstanceMetadataService/stable/2020-12-01/imds.json + where: + - $.definitions.IdentityTokenResponse.properties.access_token + - $.definitions.IdentityTokenResponse.properties.expires_in + - $.definitions.IdentityTokenResponse.properties.expires_on + - $.definitions.IdentityTokenResponse.properties.ext_expires_in + - $.definitions.IdentityTokenResponse.properties.not_before + - $.definitions.IdentityTokenResponse.properties.resource + - $.definitions.IdentityTokenResponse.properties.token_type + - $.definitions.IdentityTokenResponse.properties.client_id + - $.definitions.IdentityTokenResponse.properties.object_id + - $.definitions.IdentityTokenResponse.properties.msi_res_id + - $.definitions.IdentityErrorResponse.properties.error_description + + - suppress: DefinitionsPropertiesNamesCamelCase + reason: The following properties follow the Oath2 spec, which does not use camelCase. + from: Microsoft.InstanceMetadataService/stable/2021-01-01/imds.json + where: + - $.definitions.IdentityTokenResponse.properties.access_token + - $.definitions.IdentityTokenResponse.properties.expires_in + - $.definitions.IdentityTokenResponse.properties.expires_on + - $.definitions.IdentityTokenResponse.properties.ext_expires_in + - $.definitions.IdentityTokenResponse.properties.not_before + - $.definitions.IdentityTokenResponse.properties.resource + - $.definitions.IdentityTokenResponse.properties.token_type + - $.definitions.IdentityTokenResponse.properties.client_id + - $.definitions.IdentityTokenResponse.properties.object_id + - $.definitions.IdentityTokenResponse.properties.msi_res_id + - $.definitions.IdentityErrorResponse.properties.error_description + + - suppress: DefinitionsPropertiesNamesCamelCase + reason: The following properties follow the Oath2 spec, which does not use camelCase. + from: Microsoft.InstanceMetadataService/stable/2021-02-01/imds.json + where: + - $.definitions.IdentityTokenResponse.properties.access_token + - $.definitions.IdentityTokenResponse.properties.expires_in + - $.definitions.IdentityTokenResponse.properties.expires_on + - $.definitions.IdentityTokenResponse.properties.ext_expires_in + - $.definitions.IdentityTokenResponse.properties.not_before + - $.definitions.IdentityTokenResponse.properties.resource + - $.definitions.IdentityTokenResponse.properties.token_type + - $.definitions.IdentityTokenResponse.properties.client_id + - $.definitions.IdentityTokenResponse.properties.object_id + - $.definitions.IdentityTokenResponse.properties.msi_res_id + - $.definitions.IdentityErrorResponse.properties.error_description ``` --- @@ -322,7 +447,7 @@ input-file: ## Java -These settings apply only when --java is specified on the command line. Please also specify --azure-libraries-for-java-folder=. +These settings apply only when --java is specified on the command line. Please also specify --azure-libraries-for-java-folder=`. ``` yaml $(java) java: @@ -372,13 +497,18 @@ input-file: - $(this-folder)/Microsoft.InstanceMetadataService/stable/2019-11-01/imds.json - $(this-folder)/Microsoft.InstanceMetadataService/stable/2020-06-01/imds.json - $(this-folder)/Microsoft.InstanceMetadataService/stable/2020-07-15/imds.json + - $(this-folder)/Microsoft.InstanceMetadataService/stable/2020-09-01/imds.json + - $(this-folder)/Microsoft.InstanceMetadataService/stable/2020-10-01/imds.json + - $(this-folder)/Microsoft.InstanceMetadataService/stable/2020-12-01/imds.json + - $(this-folder)/Microsoft.InstanceMetadataService/stable/2021-01-01/imds.json + - $(this-folder)/Microsoft.InstanceMetadataService/stable/2021-02-01/imds.json ``` If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. +uncomment the `exclude-file` section below and add the file paths. ``` yaml $(tag) == 'all-api-versions' -#exclude-file: +#exclude-file: # - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json ``` diff --git a/specification/intune/resource-manager/readme.azureresourceschema.md b/specification/intune/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 85e92609e955..000000000000 --- a/specification/intune/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,24 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-intune-2015-01-14-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-intune-2015-01-14-preview and azureresourceschema - -``` yaml $(tag) == 'schema-intune-2015-01-14-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Intune/preview/2015-01-14-preview/intune.json - -``` diff --git a/specification/intune/resource-manager/readme.md b/specification/intune/resource-manager/readme.md index 5c25fc391ffc..843046040b71 100644 --- a/specification/intune/resource-manager/readme.md +++ b/specification/intune/resource-manager/readme.md @@ -59,8 +59,6 @@ This is not used by Autorest itself. ``` yaml $(swagger-to-sdk) swagger-to-sdk: - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js intune/resource-manager ``` ## C# @@ -90,7 +88,5 @@ payload-flattening-threshold: 1 output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-intune ``` -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/apitoken_create.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/apitoken_create.json deleted file mode 100644 index a55322ee1034..000000000000 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/apitoken_create.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "title": "Get API tokens in your application", - "description": "Get a list of API tokens in your application.", - "parameters": { - "centralDnsSuffixInPath": "azureiotcentral.com", - "subdomain": "appsubdomain", - "token_id": "testtoken", - "body": { - "roles": [ - { - "role": "ca310b8d-2f4a-44e0-a36e-957c202cd8d4" - } - ] - } - }, - "responses": { - "200": { - "body": { - "id": "testtoken", - "roles": [ - { - "role": "ca310b8d-2f4a-44e0-a36e-957c202cd8d4" - } - ], - "expiry": "2020-10-18T18:30:40.227Z", - "token": "SharedAccessSignature sr=..." - } - } - } -} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/apitoken_delete.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/apitoken_delete.json deleted file mode 100644 index 78190211de15..000000000000 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/apitoken_delete.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "title": "Delete API token", - "description": "Delete an API token using its name.", - "parameters": { - "centralDnsSuffixInPath": "azureiotcentral.com", - "subdomain": "appsubdomain", - "token_id": "testtoken" - }, - "responses": { - "204": {} - } -} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/apitoken_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/apitoken_get.json deleted file mode 100644 index 5fe99dd8058e..000000000000 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/apitoken_get.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "title": "Get an API token in your application", - "description": "Get an API token by Id in your application.", - "parameters": { - "centralDnsSuffixInPath": "azureiotcentral.com", - "subdomain": "appsubdomain", - "token_id": "testtoken" - }, - "responses": { - "200": { - "body": { - "id": "testtoken", - "roles": [ - { - "role": "ca310b8d-2f4a-44e0-a36e-957c202cd8d4" - } - ], - "expiry": "2020-10-18T18:30:40.227Z" - } - } - } -} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/apitoken_list.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/apitoken_list.json deleted file mode 100644 index 5dde63f15be0..000000000000 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/apitoken_list.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "title": "List API tokens in your application", - "description": "Get a list of API tokens in your application.", - "parameters": { - "centralDnsSuffixInPath": "azureiotcentral.com", - "subdomain": "appsubdomain" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "id": "testtoken", - "roles": [ - { - "role": "ca310b8d-2f4a-44e0-a36e-957c202cd8d4" - } - ], - "expiry": "2020-10-18T18:30:40.227Z" - } - ] - } - } - } -} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/application_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/application_get.json deleted file mode 100644 index 380ce4ca0668..000000000000 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/application_get.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "title": "Get an application by Id", - "description": "Get an application by Id.", - "parameters": { - "application_id": "194e282c-290a-4858-b68f-4274690697fc" - }, - "responses": { - "200": { - "body": { - "id": "194e282c-290a-4858-b68f-4274690697fc", - "displayName": "x - Store Analytics Checkout - PnP", - "subdomain": "store-analytics-checkout---pnp", - "host": "store-analytics-checkout---pnp.azureiotcentral.com" - } - } - } -} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/application_list.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/application_list.json deleted file mode 100644 index e90e0ecd4bac..000000000000 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/application_list.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "title": "List applications", - "description": "List applications that are accessible to the signed-in user.", - "parameters": {}, - "responses": { - "200": { - "body": { - "value": [ - { - "id": "194e282c-290a-4858-b68f-4274690697fc", - "displayName": "x - Store Analytics Checkout - PnP", - "subdomain": "store-analytics-checkout---pnp", - "host": "store-analytics-checkout---pnp.azureiotcentral.com" - }, - { - "id": "ca517ec7-234e-4cbb-9d83-424f8a1d1809", - "displayName": "Custom 2gskl57ibaw", - "subdomain": "contoso", - "host": "contoso.azureiotcentral.com" - } - ] - } - } - } -} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/continuousdataexports_delete.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/continuousdataexports_delete.json deleted file mode 100644 index 674e479c2717..000000000000 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/continuousdataexports_delete.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "title": "Delete export", - "description": "Delete an export using its Id.", - "parameters": { - "centralDnsSuffixInPath": "azureiotcentral.com", - "subdomain": "appsubdomain", - "export_id": "abc" - }, - "responses": { - "204": {} - } -} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devicecredentials_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devicecredentials_get.json deleted file mode 100644 index 54b2c4c8aabf..000000000000 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devicecredentials_get.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "title": "Get device credentials", - "description": "Get the device credentials of a created device. Returns the app's scope Id and device SAS key", - "parameters": { - "centralDnsSuffixInPath": "azureiotcentral.com", - "subdomain": "appsubdomain", - "device_id": "Checkout4" - }, - "responses": { - "200": { - "body": { - "idScope": "", - "symmetricKey": { - "primaryKey": "", - "secondaryKey": "" - } - } - } - } -} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_attestations_delete.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_attestations_delete.json deleted file mode 100644 index 849e3a8acda5..000000000000 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_attestations_delete.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "title": "Delete device attestation", - "description": "Deletes the attestation for a device.", - "parameters": { - "centralDnsSuffixInPath": "azureiotcentral.com", - "subdomain": "appsubdomain", - "device_id": "Checkout4" - }, - "responses": { - "204": {} - } -} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_attestations_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_attestations_get.json deleted file mode 100644 index 87efc9c7b2d3..000000000000 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_attestations_get.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "title": "Get device attestation", - "description": "Gets the attestation for a device.", - "parameters": { - "centralDnsSuffixInPath": "azureiotcentral.com", - "subdomain": "appsubdomain", - "device_id": "CheckoutThermostat" - }, - "responses": { - "200": { - "body": { - "type": "X509Attestation", - "x509": { - "clientCertificates": { - "primary": { - "info": { - "sha1Thumbprint": "" - } - } - } - } - } - } - } -} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_attestations_set_symmetricKey.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_attestations_set_symmetricKey.json deleted file mode 100644 index 6bdfbb5b6efc..000000000000 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_attestations_set_symmetricKey.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "title": "Set device attestation - Symmetric key", - "description": "Creates or updates the symmetric key attestation for a device.", - "parameters": { - "centralDnsSuffixInPath": "azureiotcentral.com", - "subdomain": "appsubdomain", - "device_id": "CheckoutThermostat", - "body": { - "type": "SymmetricKeyAttestation", - "symmetricKey": { - "primaryKey": "", - "secondaryKey": "" - } - } - }, - "responses": { - "200": { - "body": { - "type": "SymmetricKeyAttestation", - "symmetricKey": { - "primaryKey": "", - "secondaryKey": "" - } - } - } - } -} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_attestations_set_tpm.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_attestations_set_tpm.json deleted file mode 100644 index 94c03cc26f7c..000000000000 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_attestations_set_tpm.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "title": "Set device attestation - TPM", - "description": "Creates or updates the TPM attestation for a device.", - "parameters": { - "centralDnsSuffixInPath": "azureiotcentral.com", - "subdomain": "appsubdomain", - "device_id": "CheckoutThermostat", - "body": { - "type": "TpmAttestation", - "tpm": { - "endorsementKey": "" - } - } - }, - "responses": { - "200": { - "body": { - "type": "TpmAttestation", - "tpm": { - "endorsementKey": "" - } - } - } - } -} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_attestations_set_x509.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_attestations_set_x509.json deleted file mode 100644 index c468cbb516a1..000000000000 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_attestations_set_x509.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "title": "Set device attestation - X509", - "description": "Creates or updates the X509 attestation for a device.", - "parameters": { - "centralDnsSuffixInPath": "azureiotcentral.com", - "subdomain": "appsubdomain", - "device_id": "CheckoutThermostat", - "body": { - "type": "X509Attestation", - "x509": { - "clientCertificates": { - "primary": { - "certificate": "" - } - } - } - } - }, - "responses": { - "200": { - "body": { - "type": "X509Attestation", - "x509": { - "clientCertificates": { - "primary": { - "info": { - "sha1Thumbprint": "" - } - } - } - } - } - } - } -} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_commands_send.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_commands_send.json deleted file mode 100644 index a50f70a40567..000000000000 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_commands_send.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "title": "Send command", - "description": "Send a command to a device.", - "parameters": { - "centralDnsSuffixInPath": "azureiotcentral.com", - "subdomain": "appsubdomain", - "device_id": "mx1", - "component_name": "Thermostat_1o", - "command_name": "CoolDown", - "body": { - "connectionTimeout": 10, - "responseTimeout": 10, - "request": { - "tempVal": 30 - } - } - }, - "responses": { - "201": { - "body": { - "request": { - "tempVal": 30 - }, - "connectionTimeout": 10, - "responseTimeout": 10, - "response": "Sample response value", - "responseCode": 200 - } - } - } -} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_commandshistory_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_commandshistory_get.json deleted file mode 100644 index bbb59154724e..000000000000 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_commandshistory_get.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "title": "Get command history", - "description": "Get the most recent invocation of a command of a device.", - "parameters": { - "centralDnsSuffixInPath": "azureiotcentral.com", - "subdomain": "appsubdomain", - "device_id": "mx1", - "component_name": "Thermostat_1o", - "command_name": "CoolDown" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "request": 20, - "id": "4e17dd2e-7bf2-458d-8466-19bc6fc9b642", - "response": 58.795679629034694, - "responseCode": 200 - } - ] - } - } - } -} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_components_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_components_get.json deleted file mode 100644 index 8c1d95e58b49..000000000000 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_components_get.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "title": "Get components from a device", - "description": "Get the list of components in a device.", - "parameters": { - "centralDnsSuffixInPath": "azureiotcentral.com", - "subdomain": "appsubdomain", - "device_id": "device1" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "@id": "", - "@type": [ - "InterfaceInstance" - ], - "name": "LocationTracking" - }, - { - "@id": "", - "@type": [ - "InterfaceInstance" - ], - "name": "EnvironmentSensing" - } - ] - } - } - } -} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_delete.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_delete.json deleted file mode 100644 index a8efca557065..000000000000 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_delete.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "title": "Delete device", - "description": "Delete a device by Id.", - "parameters": { - "centralDnsSuffixInPath": "azureiotcentral.com", - "subdomain": "appsubdomain", - "device_id": "ccc" - }, - "responses": { - "204": {} - } -} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_get.json deleted file mode 100644 index 307bf6302de6..000000000000 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_get.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "title": "Get a device by Id", - "description": "Get a device by Id", - "parameters": { - "centralDnsSuffixInPath": "azureiotcentral.com", - "subdomain": "appsubdomain", - "device_id": "CheckoutThermostat" - }, - "responses": { - "200": { - "body": { - "id": "CheckoutThermostat", - "etag": "eyJoZWFkZXIiOiJcIjAyMDA4YzMyLTAwMDAtMGQwMC0wMDAwLTVkOTY4YjdhMDAwMFwiIn0", - "displayName": "CheckoutThermostat", - "instanceOf": "urn:kmwga2re7:modelDefinition:t_cj5wspyv", - "simulated": true, - "provisioned": true, - "approved": true - } - } - } -} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_list.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_list.json deleted file mode 100644 index 6cb346158125..000000000000 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_list.json +++ /dev/null @@ -1,52 +0,0 @@ -{ - "title": "List devices", - "description": "List all devices in your application.", - "parameters": { - "centralDnsSuffixInPath": "azureiotcentral.com", - "subdomain": "appsubdomain" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "id": "CheckoutThermostat", - "etag": "eyJoZWFkZXIiOiJcIjAyMDA4YzMyLTAwMDAtMGQwMC0wMDAwLTVkOTY4YjdhMDAwMFwiIn0", - "displayName": "CheckoutThermostat", - "instanceOf": "urn:kmwga2re7:modelDefinition:t_cj5wspyv", - "simulated": true, - "provisioned": true, - "approved": true - }, - { - "id": "Checkout1", - "etag": "eyJoZWFkZXIiOiJcIjAyMDA4ZDMyLTAwMDAtMGQwMC0wMDAwLTVkOTY4Yjg3MDAwMFwiIn0", - "displayName": "Checkout1", - "instanceOf": "urn:sbk9sd6sl:modelDefinition:u3b_fwd7os", - "simulated": true, - "provisioned": true, - "approved": true - }, - { - "id": "Checkout2", - "etag": "eyJoZWFkZXIiOiJcIjAyMDA5MDMyLTAwMDAtMGQwMC0wMDAwLTVkOTY4Yjg3MDAwMFwiIn0", - "displayName": "Checkout2", - "instanceOf": "urn:sbk9sd6sl:modelDefinition:u3b_fwd7os", - "simulated": true, - "provisioned": true, - "approved": true - }, - { - "id": "Checkout3", - "etag": "eyJoZWFkZXIiOiJcIjAyMDA4ZTMyLTAwMDAtMGQwMC0wMDAwLTVkOTY4Yjg3MDAwMFwiIn0", - "displayName": "Checkout3", - "instanceOf": "urn:sbk9sd6sl:modelDefinition:u3b_fwd7os", - "simulated": true, - "provisioned": true, - "approved": true - } - ] - } - } - } -} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_modules_components_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_modules_components_get.json deleted file mode 100644 index c43347e5aab8..000000000000 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_modules_components_get.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "title": "Get components from a module in an Edge device", - "description": "Get a list of components from a module in an IoT Edge device.", - "parameters": { - "centralDnsSuffixInPath": "azureiotcentral.com", - "subdomain": "appsubdomain", - "device_id": "edgedevice1", - "module_name": "edgemodule" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "@id": "", - "@type": [ - "InterfaceInstance" - ], - "name": "interfaceA", - "displayName": "InterfaceA" - } - ] - } - } - } -} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_modules_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_modules_get.json deleted file mode 100644 index 06bfb2a01738..000000000000 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_modules_get.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "title": "Get modules from an Edge device", - "description": "Get the list of modules in an IoT Edge device.", - "parameters": { - "centralDnsSuffixInPath": "azureiotcentral.com", - "subdomain": "appsubdomain", - "device_id": "edgedevice1" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "@id": "", - "@type": [ - "Relationship", - "SemanticType/EdgeModule" - ], - "name": "Environment" - }, - { - "@id": "", - "@type": [ - "Relationship", - "SemanticType/EdgeModule" - ], - "name": "Camera" - } - ] - } - } - } -} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_properties_components_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_properties_components_get.json deleted file mode 100644 index de738d998e98..000000000000 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_properties_components_get.json +++ /dev/null @@ -1,54 +0,0 @@ -{ - "title": "Get device properties in component", - "description": "Get the read-write property values within a component of a device.", - "parameters": { - "centralDnsSuffixInPath": "azureiotcentral.com", - "subdomain": "appsubdomain", - "device_id": "mx1", - "component_name": "settings" - }, - "responses": { - "200": { - "body": { - "fanSpeed": 35, - "voltage": 5, - "current": 2, - "irSwitch": true, - "$metadata": { - "fanSpeed": { - "desiredValue": 35, - "ackDesiredState": { - "code": 200, - "version": 2, - "description": "Processed" - } - }, - "voltage": { - "desiredValue": 5, - "ackDesiredState": { - "code": 200, - "version": 2, - "description": "Processed" - } - }, - "current": { - "desiredValue": 2, - "ackDesiredState": { - "code": 200, - "version": 2, - "description": "Processed" - } - }, - "irSwitch": { - "desiredValue": true, - "ackDesiredState": { - "code": 200, - "version": 2, - "description": "Processed" - } - } - } - } - } - } -} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_properties_components_set.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_properties_components_set.json deleted file mode 100644 index 0e896f75fbe7..000000000000 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_properties_components_set.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "title": "Set device properties in component", - "description": "Set the read-write property values within a component of a device.", - "parameters": { - "centralDnsSuffixInPath": "azureiotcentral.com", - "subdomain": "appsubdomain", - "device_id": "mx1", - "component_name": "settings", - "body": { - "fanSpeed": 35, - "voltage": 5, - "current": 2, - "irSwitch": true - } - }, - "responses": { - "202": { - "body": { - "$metadata": { - "fanSpeed": { - "desiredValue": 35 - }, - "voltage": { - "desiredValue": 5 - }, - "current": { - "desiredValue": 2 - }, - "irSwitch": { - "desiredValue": true - } - } - } - } - } -} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_properties_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_properties_get.json deleted file mode 100644 index 74ec4cc31c13..000000000000 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_properties_get.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "title": "Get device properties", - "description": "Get the current values of all device properties. Properties that have never been set by the device or by a user or API request will not be returned.", - "parameters": { - "centralDnsSuffixInPath": "azureiotcentral.com", - "subdomain": "appsubdomain", - "device_id": "mx1" - }, - "responses": { - "200": { - "body": { - "deviceinfo": { - "manufacturer": "manufacturer", - "$metadata": { - "manufacturer": { - "lastUpdateTime": "2020-07-21T19:06:50.9718608Z" - }, - "model": { - "lastUpdateTime": "2020-07-21T19:06:50.9718608Z" - }, - "swVersion": { - "lastUpdateTime": "2020-07-21T19:06:50.9718608Z" - } - }, - "model": "model", - "swVersion": "swVersion" - }, - "settings": { - "fanSpeed": 12.5, - "$metadata": { - "fanSpeed": { - "desiredValue": 30, - "desiredVersion": 2, - "lastUpdateTime": "2020-07-21T19:06:50.9718608Z" - } - } - } - } - } - } -} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_properties_update.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_properties_update.json deleted file mode 100644 index 328c6e948319..000000000000 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_properties_update.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "title": "Update device properties", - "description": "Update some or all values of read-write device properties of a device", - "parameters": { - "centralDnsSuffixInPath": "azureiotcentral.com", - "subdomain": "appsubdomain", - "device_id": "mx1", - "body": { - "settings": { - "voltage": 25, - "current": 7 - } - } - }, - "responses": { - "202": { - "body": { - "settings": { - "$metadata": { - "voltage": { - "desiredValue": 25 - }, - "current": { - "desiredValue": 7 - } - } - } - } - } - } -} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_set.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_set.json deleted file mode 100644 index 08067a965888..000000000000 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_set.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "title": "Create or replace a device", - "description": "Create or replace device with an Id.", - "parameters": { - "centralDnsSuffixInPath": "azureiotcentral.com", - "subdomain": "appsubdomain", - "device_id": "ccc", - "body": { - "displayName": "CheckoutThermostatccc", - "instanceOf": "urn:kmwga2re7:modelDefinition:t_cj5wspyv", - "simulated": true, - "approved": true - } - }, - "responses": { - "200": { - "body": { - "id": "ccc", - "etag": "eyJoZWFkZXIiOiJcIjE1MDE2ZDFiLTAwMDAtMGQwMC0wMDAwLTVkYWNkNDIxMDAwMFwiIiwiZGF0YSI6IlwiMTUwMTZhMWItMDAwMC0wZDAwLTAwMDAtNWRhY2Q0MjEwMDAwXCIifQ", - "displayName": "CheckoutThermostatccc", - "instanceOf": "urn:kmwga2re7:modelDefinition:t_cj5wspyv", - "simulated": true, - "provisioned": false, - "approved": true - } - } - } -} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_telemetry_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_telemetry_get.json deleted file mode 100644 index 09f0791c48af..000000000000 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_telemetry_get.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "title": "Get telemetry", - "description": "Get the last known value of a telemetry stream of a device.", - "parameters": { - "centralDnsSuffixInPath": "azureiotcentral.com", - "subdomain": "appsubdomain", - "device_id": "mx1", - "component_name": "sensors", - "telemetry_name": "temperature" - }, - "responses": { - "200": { - "body": { - "value": 32 - } - } - } -} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_update.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_update.json deleted file mode 100644 index f9b447d38cb6..000000000000 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_update.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "title": "Update a device", - "description": "Update parts of an existing device with an Id.", - "parameters": { - "centralDnsSuffixInPath": "azureiotcentral.com", - "subdomain": "appsubdomain", - "device_id": "ccc", - "body": { - "displayName": "Updated displayName", - "instanceOf": "urn:baacbx8bk:modelDefinition:lgxugnniks", - "approved": false - } - }, - "responses": { - "200": { - "body": { - "id": "ccc", - "etag": "eyJoZWFkZXIiOiJcIjAxMDAyNmVjLTAwMDAtMGQwMC0wMDAwLTVkYmZkMjFhMDAwMFwiIn0", - "displayName": "Updated displayName", - "instanceOf": "urn:baacbx8bk:modelDefinition:lgxugnniks", - "simulated": false, - "provisioned": true, - "approved": false - } - } - } -} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devicetemplates_delete.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devicetemplates_delete.json deleted file mode 100644 index b5292bba5cc2..000000000000 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devicetemplates_delete.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "title": "Delete a device template by Id", - "description": "Delete a published device template that has no devices currently associated to it. This operation does not operate on device templates in draft state.", - "parameters": { - "centralDnsSuffixInPath": "azureiotcentral.com", - "subdomain": "appsubdomain", - "device_template_id": "urn:sbk9sd6sl:modelDefinition:u3b_fwd7os" - }, - "responses": { - "204": {} - } -} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devicetemplates_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devicetemplates_get.json deleted file mode 100644 index 71fc57c274dd..000000000000 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devicetemplates_get.json +++ /dev/null @@ -1,177 +0,0 @@ -{ - "title": "Get a device template by Id", - "description": "Get a published device template by Id. This operation does not return device templates in draft state.", - "parameters": { - "centralDnsSuffixInPath": "azureiotcentral.com", - "subdomain": "appsubdomain", - "device_template_id": "urn:sbk9sd6sl:modelDefinition:u3b_fwd7os" - }, - "responses": { - "200": { - "body": { - "id": "urn:sbk9sd6sl:modelDefinition:u3b_fwd7os", - "types": [ - "DeviceModel" - ], - "displayName": "RS40 Occupancy Sensor", - "capabilityModel": { - "@id": "urn:rigado:RS40_Occupancy_Sensor:1", - "@type": [ - "CapabilityModel" - ], - "implements": [ - { - "@id": "urn:rigado:RS40_Occupancy_Sensor:Device_information_RS40_Occupancy_Sensor:1", - "@type": [ - "InterfaceInstance" - ], - "name": "Device_information_RS40_Occupancy_Sensor", - "schema": { - "@id": "urn:azureiot:DeviceManagement:DeviceInformation:1", - "@type": [ - "Interface" - ], - "displayName": "Device Information", - "contents": [ - { - "@id": "urn:azureiot:DeviceManagement:DeviceInformation:manufacturer:1", - "@type": [ - "Property" - ], - "description": "Company name of the device manufacturer. This could be the same as the name of the original equipment manufacturer (OEM). Ex. Contoso.", - "displayName": "Manufacturer", - "name": "manufacturer", - "schema": "string" - }, - { - "@id": "urn:azureiot:DeviceManagement:DeviceInformation:model:1", - "@type": [ - "Property" - ], - "description": "Device model name or ID. Ex. Surface Book 2.", - "displayName": "Device model", - "name": "model", - "schema": "string" - }, - { - "@id": "urn:azureiot:DeviceManagement:DeviceInformation:swVersion:1", - "@type": [ - "Property" - ], - "description": "Version of the software on your device. This could be the version of your firmware. Ex. 1.3.45", - "displayName": "Software version", - "name": "swVersion", - "schema": "string" - }, - { - "@id": "urn:azureiot:DeviceManagement:DeviceInformation:osName:1", - "@type": [ - "Property" - ], - "description": "Name of the operating system on the device. Ex. Windows 10 IoT Core.", - "displayName": "Operating system name", - "name": "osName", - "schema": "string" - }, - { - "@id": "urn:azureiot:DeviceManagement:DeviceInformation:processorArchitecture:1", - "@type": [ - "Property" - ], - "description": "Architecture of the processor on the device. Ex. x64 or ARM.", - "displayName": "Processor architecture", - "name": "processorArchitecture", - "schema": "string" - }, - { - "@id": "urn:azureiot:DeviceManagement:DeviceInformation:processorManufacturer:1", - "@type": [ - "Property" - ], - "description": "Name of the manufacturer of the processor on the device. Ex. Intel.", - "displayName": "Processor manufacturer", - "name": "processorManufacturer", - "schema": "string" - }, - { - "@id": "urn:azureiot:DeviceManagement:DeviceInformation:totalStorage:1", - "@type": [ - "Property" - ], - "description": "Total available storage on the device in kilobytes. Ex. 2048000 kilobytes.", - "displayName": "Total storage", - "name": "totalStorage", - "displayUnit": "kilobytes", - "schema": "long" - }, - { - "@id": "urn:azureiot:DeviceManagement:DeviceInformation:totalMemory:1", - "@type": [ - "Property" - ], - "description": "Total available memory on the device in kilobytes. Ex. 256000 kilobytes.", - "displayName": "Total memory", - "name": "totalMemory", - "displayUnit": "kilobytes", - "schema": "long" - } - ] - } - }, - { - "@id": "urn:rigado:RS40_Occupancy_Sensor:RS40_Occupancy_Sensor:1", - "@type": [ - "InterfaceInstance" - ], - "name": "RS40_Occupancy_Sensor", - "schema": { - "@id": "urn:rigado:interfaces:RS40_Occupancy_Sensor:1", - "@type": [ - "Interface" - ], - "displayName": "Interface", - "contents": [ - { - "@id": "urn:rigado:interfaces:RS40_Occupancy_Sensor:count:1", - "@type": [ - "Telemetry" - ], - "comment": "", - "description": "Count of motion events seen in the previous interval", - "displayName": "count", - "name": "count", - "schema": "integer" - }, - { - "@id": "urn:rigado:interfaces:RS40_Occupancy_Sensor:state:1", - "@type": [ - "Telemetry" - ], - "description": "Occupancy State", - "displayName": "state", - "name": "state", - "schema": "boolean" - } - ] - } - } - ], - "displayName": "RS40 Occupancy Sensor", - "contents": [], - "@context": [ - "http://azureiot.com/v1/contexts/IoTModel.json" - ] - }, - "solutionModel": { - "@id": "urn:sbk9sd6sl:modelDefinition:rxyaituqzz", - "@type": [ - "SolutionModel" - ], - "cloudProperties": [], - "initialValues": [], - "overrides": [] - } - } - } - } -} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devicetemplates_list.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devicetemplates_list.json deleted file mode 100644 index d46b90aeb0f0..000000000000 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devicetemplates_list.json +++ /dev/null @@ -1,180 +0,0 @@ -{ - "title": "List device templates", - "description": "List device templates that are currently published in the application. This operation does not return device templates in draft state.", - "parameters": { - "centralDnsSuffixInPath": "azureiotcentral.com", - "subdomain": "appsubdomain" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "id": "urn:sbk9sd6sl:modelDefinition:u3b_fwd7os", - "types": [ - "DeviceModel" - ], - "displayName": "RS40 Occupancy Sensor", - "capabilityModel": { - "@id": "urn:rigado:RS40_Occupancy_Sensor:1", - "@type": [ - "CapabilityModel" - ], - "implements": [ - { - "@id": "urn:rigado:RS40_Occupancy_Sensor:Device_information_RS40_Occupancy_Sensor:1", - "@type": [ - "InterfaceInstance" - ], - "name": "Device_information_RS40_Occupancy_Sensor", - "schema": { - "@id": "urn:azureiot:DeviceManagement:DeviceInformation:1", - "@type": [ - "Interface" - ], - "displayName": "Device Information", - "contents": [ - { - "@id": "urn:azureiot:DeviceManagement:DeviceInformation:manufacturer:1", - "@type": [ - "Property" - ], - "description": "Company name of the device manufacturer. This could be the same as the name of the original equipment manufacturer (OEM). Ex. Contoso.", - "displayName": "Manufacturer", - "name": "manufacturer", - "schema": "string" - }, - { - "@id": "urn:azureiot:DeviceManagement:DeviceInformation:model:1", - "@type": [ - "Property" - ], - "description": "Device model name or ID. Ex. Surface Book 2.", - "displayName": "Device model", - "name": "model", - "schema": "string" - }, - { - "@id": "urn:azureiot:DeviceManagement:DeviceInformation:swVersion:1", - "@type": [ - "Property" - ], - "description": "Version of the software on your device. This could be the version of your firmware. Ex. 1.3.45", - "displayName": "Software version", - "name": "swVersion", - "schema": "string" - }, - { - "@id": "urn:azureiot:DeviceManagement:DeviceInformation:osName:1", - "@type": [ - "Property" - ], - "description": "Name of the operating system on the device. Ex. Windows 10 IoT Core.", - "displayName": "Operating system name", - "name": "osName", - "schema": "string" - }, - { - "@id": "urn:azureiot:DeviceManagement:DeviceInformation:processorArchitecture:1", - "@type": [ - "Property" - ], - "description": "Architecture of the processor on the device. Ex. x64 or ARM.", - "displayName": "Processor architecture", - "name": "processorArchitecture", - "schema": "string" - }, - { - "@id": "urn:azureiot:DeviceManagement:DeviceInformation:processorManufacturer:1", - "@type": [ - "Property" - ], - "description": "Name of the manufacturer of the processor on the device. Ex. Intel.", - "displayName": "Processor manufacturer", - "name": "processorManufacturer", - "schema": "string" - }, - { - "@id": "urn:azureiot:DeviceManagement:DeviceInformation:totalStorage:1", - "@type": [ - "Property" - ], - "description": "Total available storage on the device in kilobytes. Ex. 2048000 kilobytes.", - "displayName": "Total storage", - "name": "totalStorage", - "displayUnit": "kilobytes", - "schema": "long" - }, - { - "@id": "urn:azureiot:DeviceManagement:DeviceInformation:totalMemory:1", - "@type": [ - "Property" - ], - "description": "Total available memory on the device in kilobytes. Ex. 256000 kilobytes.", - "displayName": "Total memory", - "name": "totalMemory", - "displayUnit": "kilobytes", - "schema": "long" - } - ] - } - }, - { - "@id": "urn:rigado:RS40_Occupancy_Sensor:RS40_Occupancy_Sensor:1", - "@type": [ - "InterfaceInstance" - ], - "name": "RS40_Occupancy_Sensor", - "schema": { - "@id": "urn:rigado:interfaces:RS40_Occupancy_Sensor:1", - "@type": [ - "Interface" - ], - "displayName": "Interface", - "contents": [ - { - "@id": "urn:rigado:interfaces:RS40_Occupancy_Sensor:count:1", - "@type": [ - "Telemetry" - ], - "comment": "", - "description": "Count of motion events seen in the previous interval", - "displayName": "count", - "name": "count", - "schema": "integer" - }, - { - "@id": "urn:rigado:interfaces:RS40_Occupancy_Sensor:state:1", - "@type": [ - "Telemetry" - ], - "description": "Occupancy State", - "displayName": "state", - "name": "state", - "schema": "boolean" - } - ] - } - } - ], - "displayName": "RS40 Occupancy Sensor", - "contents": [], - "@context": [ - "http://azureiot.com/v1/contexts/IoTModel.json" - ] - }, - "solutionModel": { - "@id": "urn:sbk9sd6sl:modelDefinition:rxyaituqzz", - "@type": [ - "SolutionModel" - ], - "cloudProperties": [], - "initialValues": [], - "overrides": [] - } - } - ] - } - } - } -} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devicetemplates_set.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devicetemplates_set.json deleted file mode 100644 index d9210837f4a1..000000000000 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devicetemplates_set.json +++ /dev/null @@ -1,148 +0,0 @@ -{ - "title": "Create a device template", - "description": "Creates and publishes a device template. In the body, specify the full device template object. Default views will be automatically generated.", - "parameters": { - "centralDnsSuffixInPath": "azureiotcentral.com", - "subdomain": "appsubdomain", - "device_template_id": "environmentstemplateid", - "body": { - "types": [ - "DeviceModel" - ], - "displayName": "Environment sensor 1", - "capabilityModel": { - "@id": "urn:storeAnalyticsCheckoutPnp:capabilityModel:1", - "@type": [ - "CapabilityModel" - ], - "implements": [ - { - "@id": "urn:storeAnalyticsCheckoutPnp:capabilityModel:fyy5xn_y:1", - "@type": [ - "InterfaceInstance" - ], - "displayName": "Interface", - "name": "Interface", - "schema": { - "@id": "urn:storeAnalyticsCheckoutPnp:Interface:1", - "@type": [ - "Interface" - ], - "displayName": "Interface", - "contents": [ - { - "@id": "urn:storeAnalyticsCheckoutPnp:Interface:Temperature:1", - "@type": [ - "Telemetry", - "SemanticType/Temperature" - ], - "displayName": "Temperature", - "name": "Temperature", - "schema": "double", - "unit": "celsius" - }, - { - "@id": "urn:storeAnalyticsCheckoutPnp:Interface:Humidity:1", - "@type": [ - "Telemetry", - "SemanticType/Humidity" - ], - "displayName": "Humidity", - "name": "Humidity", - "schema": "double", - "unit": "percent" - }, - { - "@id": "urn:storeAnalyticsCheckoutPnp:Interface:Occupancy:1", - "@type": [ - "Telemetry" - ], - "displayName": "Occupancy", - "name": "Occupancy", - "schema": "double" - } - ] - } - } - ], - "displayName": "Motion detector", - "contents": [], - "@context": [ - "http://azureiot.com/v1/contexts/IoTModel.json" - ] - } - } - }, - "responses": { - "200": { - "body": { - "id": "environmentstemplateid", - "types": [ - "DeviceModel" - ], - "displayName": "Environment sensor 1", - "capabilityModel": { - "@id": "urn:storeAnalyticsCheckoutPnp:capabilityModel:1", - "@type": [ - "CapabilityModel" - ], - "implements": [ - { - "@id": "urn:storeAnalyticsCheckoutPnp:capabilityModel:fyy5xn_y:1", - "@type": [ - "InterfaceInstance" - ], - "displayName": "Interface", - "name": "Interface", - "schema": { - "@id": "urn:storeAnalyticsCheckoutPnp:Interface:1", - "@type": [ - "Interface" - ], - "displayName": "Interface", - "contents": [ - { - "@id": "urn:storeAnalyticsCheckoutPnp:Interface:Temperature:1", - "@type": [ - "Telemetry", - "SemanticType/Temperature" - ], - "displayName": "Temperature", - "name": "Temperature", - "schema": "double", - "unit": "celsius" - }, - { - "@id": "urn:storeAnalyticsCheckoutPnp:Interface:Humidity:1", - "@type": [ - "Telemetry", - "SemanticType/Humidity" - ], - "displayName": "Humidity", - "name": "Humidity", - "schema": "double", - "unit": "percent" - }, - { - "@id": "urn:storeAnalyticsCheckoutPnp:Interface:Occupancy:1", - "@type": [ - "Telemetry" - ], - "displayName": "Occupancy", - "name": "Occupancy", - "schema": "double" - } - ] - } - } - ], - "displayName": "Motion detector", - "contents": [], - "@context": [ - "http://azureiot.com/v1/contexts/IoTModel.json" - ] - } - } - } - } -} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/jobs_create.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/jobs_create.json deleted file mode 100644 index c949efe04217..000000000000 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/jobs_create.json +++ /dev/null @@ -1,39 +0,0 @@ -{ - "title": "Execute a new job", - "description": "Create and execute a new job via its job definition.", - "parameters": { - "centralDnsSuffixInPath": "azureiotcentral.com", - "subdomain": "appsubdomain", - "job_id": "myJobId", - "body": { - "displayName": "My Job", - "group": "475cad48-b7ff-4a09-b51e-1a9021385453", - "data": [ - { - "type": "PropertyJobData", - "target": "urn:1dgygpt7t:modelDefinition:02uwtefvdy", - "path": "componentName.propertyName", - "value": "updated value" - } - ] - } - }, - "responses": { - "200": { - "body": { - "id": "myJobId", - "displayName": "My Job", - "group": "475cad48-b7ff-4a09-b51e-1a9021385453", - "data": [ - { - "type": "PropertyJobData", - "target": "urn:1dgygpt7t:modelDefinition:02uwtefvdy", - "path": "componentName.propertyName", - "value": "updated value" - } - ], - "status": "running" - } - } - } -} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/jobs_resume.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/jobs_resume.json deleted file mode 100644 index d07d2315dee9..000000000000 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/jobs_resume.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "title": "Resume a stopped job", - "description": "Resume execution of an existing stoppped job.", - "parameters": { - "centralDnsSuffixInPath": "azureiotcentral.com", - "subdomain": "appsubdomain", - "job_id": "myJobId" - }, - "responses": { - "204": {} - } -} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/jobs_stop.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/jobs_stop.json deleted file mode 100644 index a562e8a3378d..000000000000 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/jobs_stop.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "title": "Stop a running job", - "description": "Stop execution of a job that is currently running.", - "parameters": { - "centralDnsSuffixInPath": "azureiotcentral.com", - "subdomain": "appsubdomain", - "job_id": "myJobId" - }, - "responses": { - "204": {} - } -} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_commands_send.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_commands_send.json deleted file mode 100644 index 3b9d697a25f8..000000000000 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_commands_send.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "title": "Send command", - "description": "Send a command to a device.", - "parameters": { - "centralDnsSuffixInPath": "azureiotcentral.com", - "subdomain": "appsubdomain", - "device_id": "mx1", - "module_name": "Camera", - "component_name": "componentA", - "command_name": "Reboot", - "body": { - "request": { - "SafeMode": true - } - } - }, - "responses": { - "201": { - "body": { - "request": { - "SafeMode": true - } - } - } - } -} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_commandshistory_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_commandshistory_get.json deleted file mode 100644 index 691d91a1f005..000000000000 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_commandshistory_get.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "title": "Get command history within a module", - "description": "Get the most recent invocaion of a command from within a module.", - "parameters": { - "centralDnsSuffixInPath": "azureiotcentral.com", - "subdomain": "appsubdomain", - "device_id": "mx1", - "module_name": "camera", - "component_name": "componentA", - "command_name": "AdjustFrameRate" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "response": "Success", - "responseCode": 200 - } - ] - } - } - } -} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_properties_components_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_properties_components_get.json deleted file mode 100644 index 8bbd4a655aab..000000000000 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_properties_components_get.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "title": "Get device properties", - "description": "Get the current values of all device properties.", - "parameters": { - "centralDnsSuffixInPath": "azureiotcentral.com", - "subdomain": "appsubdomain", - "device_id": "mx1", - "module_name": "module_env", - "component_name": "componentA" - }, - "responses": { - "200": { - "body": { - "SensitivityDial": 50, - "Status": 66.82181229066656, - "$metadata": { - "SensitivityDial": { - "desiredValue": 50, - "desiredVersion": 3, - "ackVersion": 1, - "ackDescription": "Ok", - "ackCode": 200, - "lastUpdateTime": "2020-04-27T22:08:55.1149957Z" - }, - "Status": { - "lastUpdateTime": "2020-04-27T22:09:25.1151948Z" - } - } - } - } - } -} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_properties_components_set.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_properties_components_set.json deleted file mode 100644 index ee0ab151307c..000000000000 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_properties_components_set.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "title": "Set properties of a module within a component", - "description": "Replace all values of read-write properties of a module within a single component", - "parameters": { - "centralDnsSuffixInPath": "azureiotcentral.com", - "subdomain": "appsubdomain", - "device_id": "mx1", - "module_name": "module_env", - "component_name": "componentA", - "body": { - "SensitivityDial": 300 - } - }, - "responses": { - "202": { - "body": { - "SensitivityDial": 50, - "$metadata": { - "SensitivityDial": { - "desiredValue": 300, - "desiredVersion": 3, - "ackVersion": 1, - "ackDescription": "Ok", - "ackCode": 200, - "lastUpdateTime": "2020-04-27T22:08:55.1149957Z" - } - } - } - } - } -} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_properties_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_properties_get.json deleted file mode 100644 index 9c90e967c92f..000000000000 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_properties_get.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "title": "Get properties of a module", - "description": "Get the current values of all device properties within a module.", - "parameters": { - "centralDnsSuffixInPath": "azureiotcentral.com", - "subdomain": "appsubdomain", - "device_id": "mx1", - "module_name": "module_env" - }, - "responses": { - "200": { - "body": { - "componentA": { - "SensitivityDial": 50, - "Status": 25.494280816287844, - "$metadata": { - "SensitivityDial": { - "desiredValue": 50, - "desiredVersion": 3, - "ackVersion": 1, - "ackDescription": "Ok", - "ackCode": 200, - "lastUpdateTime": "2020-04-27T22:08:55.1149957Z" - }, - "Status": { - "lastUpdateTime": "2020-04-27T22:19:31.9485342Z" - } - } - } - } - } - } -} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_properties_update.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_properties_update.json deleted file mode 100644 index 5f054cddde20..000000000000 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_properties_update.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "title": "Update device properties of a module", - "description": "Update some or all values read-write properties of a module", - "parameters": { - "centralDnsSuffixInPath": "azureiotcentral.com", - "subdomain": "appsubdomain", - "device_id": "mx1", - "module_name": "module_env", - "body": { - "componentA": { - "SensitivityDial": 200 - } - } - }, - "responses": { - "202": { - "body": { - "componentA": { - "SensitivityDial": 75, - "$metadata": { - "SensitivityDial": { - "desiredValue": 200, - "desiredVersion": 3, - "ackVersion": 1, - "ackDescription": "Ok", - "ackCode": 200, - "lastUpdateTime": "2020-04-27T22:08:55.1149957Z" - } - } - } - } - } - } -} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_telemetry_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_telemetry_get.json deleted file mode 100644 index 1a858851af2d..000000000000 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_telemetry_get.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "title": "Get telemetry from a module", - "description": "Get the last known value of a telemetry stream from a module.", - "parameters": { - "centralDnsSuffixInPath": "azureiotcentral.com", - "subdomain": "appsubdomain", - "device_id": "mx1", - "module_name": "environment", - "component_name": "componentA", - "telemetry_name": "ambient" - }, - "responses": { - "200": { - "body": { - "value": { - "temperature": 20.961113326000568, - "humidity": 24 - }, - "timestamp": "2020-04-16T03:24:44.84Z" - } - } - } -} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/roles_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/roles_get.json deleted file mode 100644 index ab1730306d2f..000000000000 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/roles_get.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "title": "Get role by Id", - "description": "Get a role by Id.", - "parameters": { - "centralDnsSuffixInPath": "azureiotcentral.com", - "subdomain": "appsubdomain", - "role_id": "ca310b8d-2f4a-44e0-a36e-957c202cd8d4" - }, - "responses": { - "200": { - "body": { - "id": "ca310b8d-2f4a-44e0-a36e-957c202cd8d4", - "displayName": "Administrator" - } - } - } -} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/roles_list.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/roles_list.json deleted file mode 100644 index 720e1720eeab..000000000000 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/roles_list.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "title": "List roles", - "description": "List roles in your application.", - "parameters": { - "centralDnsSuffixInPath": "azureiotcentral.com", - "subdomain": "appsubdomain" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "id": "ca310b8d-2f4a-44e0-a36e-957c202cd8d4", - "displayName": "Administrator" - }, - { - "id": "344138e9-8de4-4497-8c54-5237e96d6aaf", - "displayName": "Builder" - }, - { - "id": "ae2c9854-393b-4f97-8c42-479d70ce626e", - "displayName": "Operator" - } - ] - } - } - } -} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/users_delete.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/users_delete.json deleted file mode 100644 index c0219a703918..000000000000 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/users_delete.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "title": "Remove a user", - "description": "Remove a user from the application by Id.", - "parameters": { - "centralDnsSuffixInPath": "azureiotcentral.com", - "subdomain": "appsubdomain", - "user_id": "abc" - }, - "responses": { - "204": {} - } -} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/users_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/users_get.json deleted file mode 100644 index be97832401c6..000000000000 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/users_get.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "title": "Get a user in your application", - "description": "Get a user by Id in your application.", - "parameters": { - "centralDnsSuffixInPath": "azureiotcentral.com", - "subdomain": "appsubdomain", - "user_id": "abc" - }, - "responses": { - "200": { - "body": { - "id": "abc", - "type": "EmailUser", - "roles": [ - { - "role": "ca310b8d-2f4a-44e0-a36e-957c202cd8d4" - } - ], - "email": "alice@contoso.com" - } - } - } -} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/users_list.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/users_list.json deleted file mode 100644 index d9f0290c760a..000000000000 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/users_list.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "title": "List users in your application", - "description": "Get a list of users in your application.", - "parameters": { - "centralDnsSuffixInPath": "azureiotcentral.com", - "subdomain": "appsubdomain" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "id": "af0d5b8f-7a69-4521-868e-19745fae353f", - "type": "EmailUser", - "roles": [ - { - "role": "ca310b8d-2f4a-44e0-a36e-957c202cd8d4" - } - ], - "email": "alice@contoso.com" - }, - { - "id": "123", - "type": "ServicePrincipalUser", - "roles": [ - { - "role": "ca310b8d-2f4a-44e0-a36e-957c202cd8d4" - } - ], - "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", - "objectId": "9071c899-bce0-4862-b208-75dabae226a9" - } - ] - } - } - } -} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/users_set.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/users_set.json deleted file mode 100644 index 23055350c37c..000000000000 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/users_set.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "title": "Add or update an email user in your application", - "description": "Add or update an email user in your application.", - "parameters": { - "centralDnsSuffixInPath": "azureiotcentral.com", - "subdomain": "appsubdomain", - "user_id": "123", - "body": { - "type": "EmailUser", - "roles": [ - { - "role": "" - } - ], - "email": "bob@contoso.com" - } - }, - "responses": { - "200": { - "body": { - "type": "EmailUser", - "roles": [ - { - "role": "" - } - ], - "email": "bob@contoso.com" - } - } - } -} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/users_set_serviceprincipal.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/users_set_serviceprincipal.json deleted file mode 100644 index 4114bf4edfbc..000000000000 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/users_set_serviceprincipal.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "title": "Add or replace a service principal in your application", - "description": "Add or replace an AAD service principal in your application.", - "parameters": { - "centralDnsSuffixInPath": "azureiotcentral.com", - "subdomain": "appsubdomain", - "user_id": "123", - "body": { - "type": "ServicePrincipalUser", - "tenantId": "", - "objectId": "", - "roles": [ - { - "role": "" - } - ] - } - }, - "responses": { - "200": { - "body": { - "id": "123", - "type": "ServicePrincipalUser", - "tenantId": "", - "objectId": "", - "roles": [ - { - "role": "" - } - ] - } - } - } -} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/iotcentral.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/iotcentral.json deleted file mode 100644 index f8f470568a91..000000000000 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/iotcentral.json +++ /dev/null @@ -1,2985 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "version": "preview", - "title": "Azure IoT Central", - "description": "Azure IoT Central is a service that makes it easy to connect, monitor, and manage your IoT devices at scale." - }, - "host": "apps.azureiotcentral.com", - "x-ms-parameterized-host": { - "hostTemplate": "{subdomain}.{centralDnsSuffixInPath}", - "parameters": [ - { - "$ref": "#/parameters/CentralDnsSuffixInPath" - }, - { - "$ref": "#/parameters/Subdomain" - } - ] - }, - "basePath": "/api/preview", - "schemes": [ - "https" - ], - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "definitions": { - "ApiToken": { - "allOf": [ - { - "$ref": "#/definitions/Permission" - }, - { - "type": "object", - "properties": { - "id": { - "description": "Unique ID of the API token.", - "type": "string", - "readOnly": true - }, - "token": { - "description": "Value of the API token.", - "type": "string", - "readOnly": true - }, - "expiry": { - "description": "String-formatted date representing the time when the token expires.", - "type": "string", - "format": "date-time" - } - } - } - ] - }, - "ApiTokenCollection": { - "type": "object", - "properties": { - "value": { - "description": "The collection of API tokens.", - "type": "array", - "items": { - "$ref": "#/definitions/ApiToken" - } - }, - "nextLink": { - "description": "URL to get the next page of API tokens.", - "type": "string" - } - }, - "required": [ - "value" - ] - }, - "Application": { - "type": "object", - "properties": { - "id": { - "description": "Unique ID of the application.", - "type": "string", - "readOnly": true - }, - "displayName": { - "description": "Display name of the application.", - "type": "string" - }, - "subdomain": { - "description": "The URL subdomain of the application.", - "type": "string" - }, - "host": { - "description": "The URL host of the application.", - "type": "string" - } - }, - "required": [ - "subdomain", - "host" - ] - }, - "Attestation": { - "type": "object", - "properties": { - "type": { - "description": "Type of the attestation.", - "type": "string" - } - }, - "required": [ - "type" - ], - "discriminator": "type" - }, - "CloudPropertyJobData": { - "allOf": [ - { - "$ref": "#/definitions/JobData" - } - ] - }, - "Collection": { - "type": "object", - "properties": { - "value": { - "description": "The collection of objects.", - "type": "array", - "items": { - "type": "object" - } - }, - "nextLink": { - "description": "URL to get the next page of objects.", - "type": "string" - } - }, - "required": [ - "value" - ] - }, - "CommandJobData": { - "allOf": [ - { - "$ref": "#/definitions/JobData" - } - ] - }, - "ContinuousDataExport": { - "type": "object", - "properties": { - "id": { - "description": "Unique ID of the continuous data export.", - "type": "string", - "readOnly": true - }, - "etag": { - "description": "ETag used to prevent conflict in continuous data export updates.", - "type": "string" - }, - "displayName": { - "description": "Display name of the continuous data export.", - "type": "string" - }, - "endpoint": { - "description": "Location where exported data should be sent.", - "$ref": "#/definitions/Endpoint" - }, - "status": { - "description": "Indicates whether the continuous data export is starting, running, etc.", - "type": "string", - "readOnly": true - }, - "enabled": { - "description": "Boolean indicating whether the continuous data export should be running or not.", - "type": "boolean" - }, - "sources": { - "description": "Data sources to export to the endpoint.", - "type": "array", - "items": { - "type": "string", - "enum": [ - "devices", - "deviceTemplates", - "telemetry" - ] - }, - "minItems": 1 - } - }, - "required": [ - "endpoint", - "enabled", - "sources" - ] - }, - "ContinuousDataExportCollection": { - "type": "object", - "properties": { - "value": { - "description": "The collection of continuous data exports.", - "type": "array", - "items": { - "$ref": "#/definitions/ContinuousDataExport" - } - }, - "nextLink": { - "description": "URL to get the next page of continuous data exports.", - "type": "string" - } - }, - "required": [ - "value" - ] - }, - "Device": { - "type": "object", - "properties": { - "id": { - "description": "Unique ID of the device.", - "type": "string", - "readOnly": true - }, - "etag": { - "description": "ETag used to prevent conflict in device updates.", - "type": "string" - }, - "displayName": { - "description": "Display name of the device.", - "type": "string" - }, - "instanceOf": { - "description": "The device template definition for the device.", - "type": "string" - }, - "simulated": { - "description": "Whether the device is simulated.", - "type": "boolean" - }, - "approved": { - "description": "Whether the device has been approved to connect to IoT Central.", - "type": "boolean" - }, - "provisioned": { - "description": "Whether resources have been allocated for the device.", - "type": "boolean", - "readOnly": true - } - } - }, - "DeviceCloudProperties": { - "description": "Cloud property values associated with the device.", - "type": "object", - "additionalProperties": true - }, - "DeviceCollection": { - "type": "object", - "properties": { - "value": { - "description": "The collection of devices.", - "type": "array", - "items": { - "$ref": "#/definitions/Device" - } - }, - "nextLink": { - "description": "URL to get the next page of devices.", - "type": "string" - } - }, - "required": [ - "value" - ] - }, - "DeviceCommand": { - "type": "object", - "properties": { - "id": { - "description": "The request ID of the device command execution.", - "type": "string", - "readOnly": true - }, - "connectionTimeout": { - "description": "Connection Timeout in seconds to wait for a disconnected device to come online. Acceptable timeout values are from 0 to 30 seconds. Defaults to 0 seconds.", - "type": "integer" - }, - "responseTimeout": { - "description": "Response Timeout in seconds to wait for a command completion on a device. Acceptable timeout values are from 5 to 30 seconds. Defaults to 30 seconds.", - "type": "integer" - }, - "request": { - "description": "The payload for the device command." - }, - "response": { - "description": "The payload of the device command response.", - "readOnly": true - }, - "responseCode": { - "description": "The status code of the device command response.", - "type": "integer", - "readOnly": true - } - } - }, - "DeviceCommandCollection": { - "type": "object", - "properties": { - "value": { - "description": "The collection of device command executions.", - "type": "array", - "items": { - "$ref": "#/definitions/DeviceCommand" - } - }, - "nextLink": { - "description": "URL to get the next page of device command executions.", - "type": "string" - } - }, - "required": [ - "value" - ] - }, - "DeviceCredentials": { - "type": "object", - "properties": { - "idScope": { - "description": "ID scope for connecting to the IoT Central application.", - "type": "string" - }, - "symmetricKey": { - "description": "The symmetric key credentials for the device.", - "$ref": "#/definitions/SymmetricKey" - }, - "x509": { - "description": "The X.509 credential information for the device.", - "$ref": "#/definitions/X509" - }, - "tpm": { - "description": "The TPM credentials for the device.", - "$ref": "#/definitions/Tpm" - } - }, - "required": [ - "idScope" - ] - }, - "DeviceGroup": { - "type": "object", - "properties": { - "id": { - "description": "Unique ID of the device group.", - "type": "string", - "readOnly": true - }, - "displayName": { - "description": "Display name of the device group.", - "type": "string" - } - } - }, - "DeviceGroupCollection": { - "type": "object", - "properties": { - "value": { - "description": "The collection of device groups.", - "type": "array", - "items": { - "$ref": "#/definitions/DeviceGroup" - } - }, - "nextLink": { - "description": "URL to get the next page of device groups.", - "type": "string" - } - }, - "required": [ - "value" - ] - }, - "DeviceProperties": { - "description": "Property values associated with the device.", - "type": "object", - "additionalProperties": true - }, - "DeviceTelemetry": { - "type": "object", - "properties": { - "value": { - "description": "The last known value of this device telemetry." - }, - "timestamp": { - "description": "String-formatted date representing the time when the telemetry value was sent.", - "type": "string", - "format": "date-time" - } - } - }, - "DeviceTemplate": { - "type": "object", - "properties": { - "id": { - "description": "Unique ID of the device template.", - "type": "string", - "readOnly": true - }, - "etag": { - "description": "ETag used to prevent conflict in device template updates.", - "type": "string" - }, - "types": { - "description": "The types of device to which this template applies.", - "type": "array", - "items": { - "type": "string" - } - }, - "displayName": { - "description": "Display name of the device template.", - "type": "string" - }, - "description": { - "description": "Detailed description of the device template.", - "type": "string" - }, - "capabilityModel": { - "description": "The capability model utilized by this device template." - }, - "solutionModel": { - "description": "The solution model utilized by this device template." - } - }, - "required": [ - "types", - "capabilityModel" - ] - }, - "DeviceTemplateCollection": { - "type": "object", - "properties": { - "value": { - "description": "The collection of device templates.", - "type": "array", - "items": { - "$ref": "#/definitions/DeviceTemplate" - } - }, - "nextLink": { - "description": "URL to get the next page of device templates.", - "type": "string" - } - }, - "required": [ - "value" - ] - }, - "EmailUser": { - "allOf": [ - { - "$ref": "#/definitions/User" - }, - { - "type": "object", - "properties": { - "email": { - "description": "Email address of the user.", - "type": "string", - "format": "email" - } - }, - "required": [ - "email" - ] - } - ] - }, - "Endpoint": { - "type": "object", - "properties": { - "type": { - "description": "Type of the endpoint.", - "type": "string" - }, - "connectionString": { - "description": "Information for connecting to the endpoint.", - "type": "string" - }, - "name": { - "description": "Name of the entity to send data to.", - "type": "string" - } - }, - "required": [ - "type", - "connectionString", - "name" - ], - "discriminator": "type" - }, - "EventHubsEndpoint": { - "allOf": [ - { - "$ref": "#/definitions/Endpoint" - } - ] - }, - "Job": { - "type": "object", - "properties": { - "id": { - "description": "Unique ID of the job.", - "type": "string", - "readOnly": true - }, - "displayName": { - "description": "Display name of the job.", - "type": "string" - }, - "description": { - "description": "Detailed description of the job.", - "type": "string" - }, - "group": { - "description": "The ID of the device group on which to execute the job.", - "type": "string" - }, - "data": { - "description": "The capabilities being updated by the job and the values with which they are being updated.", - "type": "array", - "items": { - "$ref": "#/definitions/JobData" - }, - "minItems": 1 - }, - "status": { - "description": "Indicates whether the job is starting, running, etc.", - "type": "string", - "readOnly": true - } - }, - "required": [ - "group", - "data" - ] - }, - "JobCollection": { - "type": "object", - "properties": { - "value": { - "description": "The collection of jobs.", - "type": "array", - "items": { - "$ref": "#/definitions/Job" - } - }, - "nextLink": { - "description": "URL to get the next page of jobs.", - "type": "string" - } - }, - "required": [ - "value" - ] - }, - "JobData": { - "type": "object", - "properties": { - "type": { - "description": "Type of the job data.", - "type": "string" - }, - "target": { - "description": "The device template which defines the target capability for the job.", - "type": "string" - }, - "path": { - "description": "The path to the target capability within the device template.", - "type": "string" - }, - "value": { - "description": "The value used to update the target capability, if any." - } - }, - "required": [ - "type", - "target", - "path" - ], - "discriminator": "type" - }, - "JobDeviceStatus": { - "properties": { - "id": { - "description": "ID of the device whose job status is being provided.", - "type": "string", - "readOnly": true - }, - "status": { - "description": "Indicates whether the job is starting, running, etc. for the given device.", - "type": "string", - "readOnly": true - } - } - }, - "JobDeviceStatusCollection": { - "type": "object", - "properties": { - "value": { - "description": "The collection of job device statuses.", - "type": "array", - "items": { - "$ref": "#/definitions/JobDeviceStatus" - } - }, - "nextLink": { - "description": "URL to get the next page of job device statuses.", - "type": "string" - } - }, - "required": [ - "value" - ] - }, - "Permission": { - "type": "object", - "properties": { - "roles": { - "description": "List of roles that specify the permissions to access the application.", - "type": "array", - "items": { - "type": "object", - "properties": { - "role": { - "description": "ID that specifies the role assignment for this role.", - "type": "string" - } - }, - "required": [ - "role" - ] - }, - "minItems": 1 - } - }, - "required": [ - "roles" - ] - }, - "PropertyJobData": { - "allOf": [ - { - "$ref": "#/definitions/JobData" - } - ] - }, - "Role": { - "type": "object", - "properties": { - "id": { - "description": "Unique ID of the role.", - "type": "string", - "readOnly": true - }, - "displayName": { - "description": "Display name of the role.", - "type": "string" - } - } - }, - "RoleCollection": { - "type": "object", - "properties": { - "value": { - "description": "The collection of roles.", - "type": "array", - "items": { - "$ref": "#/definitions/Role" - } - }, - "nextLink": { - "description": "URL to get the next page of roles.", - "type": "string" - } - }, - "required": [ - "value" - ] - }, - "ServiceBusQueueEndpoint": { - "allOf": [ - { - "$ref": "#/definitions/Endpoint" - } - ] - }, - "ServiceBusTopicEndpoint": { - "allOf": [ - { - "$ref": "#/definitions/Endpoint" - } - ] - }, - "ServicePrincipalUser": { - "allOf": [ - { - "$ref": "#/definitions/User" - }, - { - "type": "object", - "properties": { - "tenantId": { - "description": "The AAD tenant ID of the service principal.", - "type": "string" - }, - "objectId": { - "description": "The AAD object ID of the service principal.", - "type": "string" - } - }, - "required": [ - "tenantId", - "objectId" - ] - } - ] - }, - "StorageEndpoint": { - "allOf": [ - { - "$ref": "#/definitions/Endpoint" - } - ] - }, - "SymmetricKey": { - "type": "object", - "properties": { - "primaryKey": { - "description": "The primary key for this credential.", - "type": "string" - }, - "secondaryKey": { - "description": "The secondary key for this credential.", - "type": "string" - } - }, - "required": [ - "primaryKey", - "secondaryKey" - ] - }, - "SymmetricKeyAttestation": { - "allOf": [ - { - "$ref": "#/definitions/Attestation" - }, - { - "type": "object", - "properties": { - "symmetricKey": { - "description": "The symmetric key credentials for this attestation.", - "$ref": "#/definitions/SymmetricKey" - } - }, - "required": [ - "symmetricKey" - ] - } - ] - }, - "Tpm": { - "type": "object", - "properties": { - "endorsementKey": { - "description": "The TPM endorsement key for this credential.", - "type": "string" - } - }, - "required": [ - "endorsementKey" - ] - }, - "TpmAttestation": { - "allOf": [ - { - "$ref": "#/definitions/Attestation" - }, - { - "type": "object", - "properties": { - "tpm": { - "description": "The TPM credentials for this attestation.", - "$ref": "#/definitions/Tpm" - } - }, - "required": [ - "tpm" - ] - } - ] - }, - "User": { - "allOf": [ - { - "$ref": "#/definitions/Permission" - }, - { - "type": "object", - "properties": { - "id": { - "description": "Unique ID of the user.", - "type": "string", - "readOnly": true - }, - "type": { - "description": "Type of the user.", - "type": "string" - } - }, - "required": [ - "type" - ], - "discriminator": "type" - } - ] - }, - "UserCollection": { - "type": "object", - "properties": { - "value": { - "description": "The collection of users.", - "type": "array", - "items": { - "$ref": "#/definitions/User" - } - }, - "nextLink": { - "description": "URL to get the next page of users.", - "type": "string" - } - }, - "required": [ - "value" - ] - }, - "X509": { - "type": "object", - "properties": { - "clientCertificates": { - "description": "The X.509 client certificates for this credential.", - "$ref": "#/definitions/X509Certificates" - } - } - }, - "X509Attestation": { - "allOf": [ - { - "$ref": "#/definitions/Attestation" - }, - { - "type": "object", - "properties": { - "x509": { - "description": "The X.509 credentials for this attestation.", - "$ref": "#/definitions/X509" - } - }, - "required": [ - "x509" - ] - } - ] - }, - "X509Certificate": { - "type": "object", - "properties": { - "certificate": { - "description": "The string representation of this certificate.", - "type": "string" - }, - "info": { - "description": "Information about this certificate.", - "readOnly": true, - "$ref": "#/definitions/X509CertificateInfo" - } - } - }, - "X509CertificateInfo": { - "type": "object", - "properties": { - "sha1Thumbprint": { - "description": "The SHA-1 hash value of the certificate.", - "type": "string" - } - }, - "required": [ - "sha1Thumbprint" - ] - }, - "X509Certificates": { - "type": "object", - "properties": { - "primary": { - "description": "The primary X.509 certificate for this credential.", - "$ref": "#/definitions/X509Certificate" - }, - "secondary": { - "description": "The secondary X.509 certificate for this credential.", - "$ref": "#/definitions/X509Certificate" - } - }, - "required": [ - "primary" - ] - } - }, - "paths": { - "/apiTokens": { - "get": { - "operationId": "ApiTokens_List", - "summary": "Get the list of API tokens in an application. The token value will never be returned for security reasons.", - "x-ms-examples": { - "List API tokens": { - "$ref": "./examples/apitoken_list.json" - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/ApiTokenCollection" - } - } - } - } - }, - "/apiTokens/{token_id}": { - "get": { - "operationId": "ApiTokens_Get", - "summary": "Get an API token by ID.", - "x-ms-examples": { - "Get API token by ID": { - "$ref": "./examples/apitoken_get.json" - } - }, - "parameters": [ - { - "in": "path", - "name": "token_id", - "description": "Unique ID for the API token.", - "type": "string", - "required": true - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/ApiToken" - } - } - } - }, - "put": { - "operationId": "ApiTokens_Create", - "summary": "Create a new API token in the application to use in the IoT Central public API. The token value will be returned in the response, and won't be returned again in subsequent requests.", - "x-ms-examples": { - "Create API token": { - "$ref": "./examples/apitoken_create.json" - } - }, - "parameters": [ - { - "in": "path", - "name": "token_id", - "description": "Unique ID for the API token.", - "type": "string", - "required": true - }, - { - "in": "body", - "name": "body", - "description": "API token body.", - "schema": { - "$ref": "#/definitions/ApiToken" - }, - "required": true - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/ApiToken" - } - } - } - }, - "delete": { - "operationId": "ApiTokens_Remove", - "summary": "Delete an API token.", - "x-ms-examples": { - "Delete API token": { - "$ref": "./examples/apitoken_delete.json" - } - }, - "parameters": [ - { - "in": "path", - "name": "token_id", - "description": "Unique ID for the API token.", - "type": "string", - "required": true - } - ], - "responses": { - "204": { - "description": "Success" - } - } - } - }, - "/continuousDataExports": { - "get": { - "operationId": "ContinuousDataExports_List", - "summary": "Get the list of continuous data exports in an application.", - "x-ms-examples": { - "List exports": { - "$ref": "./examples/continuousdataexports_list.json" - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/ContinuousDataExportCollection" - } - } - } - } - }, - "/continuousDataExports/{export_id}": { - "get": { - "operationId": "ContinuousDataExports_Get", - "summary": "Get a continuous data export by ID.", - "x-ms-examples": { - "Get export": { - "$ref": "./examples/continuousdataexports_get.json" - } - }, - "parameters": [ - { - "in": "path", - "name": "export_id", - "description": "Unique ID for the continuous data export.", - "type": "string", - "required": true - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/ContinuousDataExport" - } - } - } - }, - "put": { - "operationId": "ContinuousDataExports_Create", - "summary": "Create a new continuous data export or update an existing one by ID.", - "x-ms-examples": { - "Create or update export": { - "$ref": "./examples/continuousdataexports_set.json" - } - }, - "parameters": [ - { - "in": "path", - "name": "export_id", - "description": "Unique ID for the continuous data export.", - "type": "string", - "required": true - }, - { - "in": "body", - "name": "body", - "description": "Data export body.", - "schema": { - "$ref": "#/definitions/ContinuousDataExport" - }, - "required": true - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/ContinuousDataExport" - } - } - } - }, - "patch": { - "operationId": "ContinuousDataExports_Update", - "summary": "Update an existing continuous data export via PATCH.", - "x-ms-examples": { - "Update export": { - "$ref": "./examples/continuousdataexports_update.json" - } - }, - "parameters": [ - { - "in": "path", - "name": "export_id", - "description": "Unique ID for the continuous data export.", - "type": "string", - "required": true - }, - { - "in": "body", - "name": "body", - "description": "Data export patch body.", - "schema": {}, - "required": true - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/ContinuousDataExport" - } - } - } - }, - "delete": { - "operationId": "ContinuousDataExports_Remove", - "summary": "Delete a continuous data export.", - "x-ms-examples": { - "Delete export": { - "$ref": "./examples/continuousdataexports_delete.json" - } - }, - "parameters": [ - { - "in": "path", - "name": "export_id", - "description": "Unique ID for the continuous data export.", - "type": "string", - "required": true - } - ], - "responses": { - "204": { - "description": "Success" - } - } - } - }, - "/deviceGroups": { - "get": { - "operationId": "DeviceGroups_List", - "summary": "Get the list of device groups in an application.", - "x-ms-examples": { - "List device groups": { - "$ref": "./examples/devicegroups_list.json" - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/DeviceGroupCollection" - } - } - } - } - }, - "/deviceTemplates": { - "get": { - "operationId": "DeviceTemplates_List", - "summary": "Get the list of device templates in an application", - "x-ms-examples": { - "List device templates": { - "$ref": "./examples/devicetemplates_list.json" - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/DeviceTemplateCollection" - } - } - } - } - }, - "/deviceTemplates/{device_template_id}": { - "get": { - "operationId": "DeviceTemplates_Get", - "summary": "Get a device template by ID", - "x-ms-examples": { - "Get a device template by Id": { - "$ref": "./examples/devicetemplates_get.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/DeviceTemplateId" - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/DeviceTemplate" - } - } - } - }, - "put": { - "operationId": "DeviceTemplates_Create", - "summary": "Publish a new device template or update the cloud properties and overrides of an existing device template. Default views will be automatically generated for new device templates created this way.", - "x-ms-examples": { - "Create a device template": { - "$ref": "./examples/devicetemplates_set.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/DeviceTemplateId" - }, - { - "in": "body", - "name": "body", - "description": "Device template body.", - "schema": { - "$ref": "#/definitions/DeviceTemplate" - }, - "required": true - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/DeviceTemplate" - } - } - } - }, - "delete": { - "operationId": "DeviceTemplates_Remove", - "summary": "Delete a device template", - "description": "Delete an existing device template by device ID.", - "x-ms-examples": { - "Delete a device template by Id": { - "$ref": "./examples/devicetemplates_delete.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/DeviceTemplateId" - } - ], - "responses": { - "204": { - "description": "Success" - } - } - } - }, - "/deviceTemplates/{device_template_id}/devices": { - "get": { - "operationId": "DeviceTemplates_ListDevices", - "summary": "Get devices for a template", - "x-ms-examples": { - "List devices associated to a device template": { - "$ref": "./examples/devices_list_by_template.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/DeviceTemplateId" - } - ], - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/DeviceCollection" - } - } - } - } - }, - "/deviceTemplates/{device_template_id}/merged": { - "get": { - "operationId": "DeviceTemplates_GetMerged", - "summary": "Get a merged device template by ID", - "x-ms-examples": { - "Get a merged device template by Id": { - "$ref": "./examples/devicetemplates_get_merged.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/DeviceTemplateId" - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/DeviceTemplate" - } - } - } - } - }, - "/devices": { - "get": { - "operationId": "Devices_List", - "summary": "Get the list of devices in an application", - "x-ms-examples": { - "List devices": { - "$ref": "./examples/devices_list.json" - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/DeviceCollection" - } - } - } - } - }, - "/devices/{device_id}": { - "get": { - "operationId": "Devices_Get", - "summary": "Get a device by ID", - "description": "Get details about an existing device by device ID.", - "x-ms-examples": { - "Get device by Id": { - "$ref": "./examples/devices_get.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/DeviceId" - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/Device" - } - } - } - }, - "put": { - "operationId": "Devices_Create", - "summary": "Create or update a device", - "description": "Create a new device or update an existing one by device ID.", - "x-ms-examples": { - "Create device": { - "$ref": "./examples/devices_set.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/DeviceId" - }, - { - "in": "body", - "name": "body", - "description": "Device body.", - "schema": { - "$ref": "#/definitions/Device" - }, - "required": true - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/Device" - } - } - } - }, - "patch": { - "operationId": "Devices_Update", - "summary": "Update a device via patch", - "description": "Update an existing device by ID.", - "x-ms-examples": { - "Update device": { - "$ref": "./examples/devices_update.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/DeviceId" - }, - { - "in": "body", - "name": "body", - "description": "Device patch body.", - "schema": {}, - "required": true - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/Device" - } - } - } - }, - "delete": { - "operationId": "Devices_Remove", - "summary": "Delete a device", - "description": "Delete an existing device by device ID.", - "x-ms-examples": { - "Delete device": { - "$ref": "./examples/devices_delete.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/DeviceId" - } - ], - "responses": { - "204": { - "description": "Success" - } - } - } - }, - "/devices/{device_id}/attestation": { - "get": { - "operationId": "Devices_GetAttestation", - "summary": "Get device attestation", - "x-ms-examples": { - "Get device attestation": { - "$ref": "./examples/devices_attestations_get.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/DeviceId" - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/Attestation" - } - } - } - }, - "put": { - "operationId": "Devices_CreateAttestation", - "summary": "Create or update an individual device attestation", - "x-ms-examples": { - "Create or update device attestation - Symmetric Key": { - "$ref": "./examples/devices_attestations_set_symmetricKey.json" - }, - "Create or update device attestation - TPM": { - "$ref": "./examples/devices_attestations_set_tpm.json" - }, - "Create or update device attestation - X509": { - "$ref": "./examples/devices_attestations_set_x509.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/DeviceId" - }, - { - "in": "body", - "name": "body", - "description": "Individual device attestation body.", - "schema": { - "$ref": "#/definitions/Attestation" - }, - "required": true - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/Attestation" - } - } - } - }, - "delete": { - "operationId": "Devices_RemoveAttestation", - "summary": "Remove an individual device attestation", - "x-ms-examples": { - "Delete device attestation": { - "$ref": "./examples/devices_attestations_delete.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/DeviceId" - } - ], - "responses": { - "204": { - "description": "Success" - } - } - } - }, - "/devices/{device_id}/cloudProperties": { - "get": { - "operationId": "Devices_GetCloudProperties", - "summary": "Get device cloud properties", - "description": "Get all cloud property values of a device by device ID.", - "x-ms-examples": { - "Get cloud properties": { - "$ref": "./examples/devices_cloudproperties_get.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/DeviceId" - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/DeviceCloudProperties" - } - } - } - }, - "put": { - "operationId": "Devices_SetCloudProperties", - "summary": "Update device cloud properties", - "description": "Update all cloud property values of a device by device ID.", - "x-ms-examples": { - "Update cloud properties": { - "$ref": "./examples/devices_cloudproperties_set.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/DeviceId" - }, - { - "in": "body", - "name": "body", - "description": "Device properties.", - "schema": { - "$ref": "#/definitions/DeviceCloudProperties" - }, - "required": true - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/DeviceCloudProperties" - } - } - } - }, - "patch": { - "operationId": "Devices_UpdateCloudProperties", - "summary": "Update device cloud properties via PATCH", - "description": "Update cloud property values of a device by device ID.", - "x-ms-examples": { - "Update cloud properties": { - "$ref": "./examples/devices_cloudproperties_update.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/DeviceId" - }, - { - "in": "body", - "name": "body", - "description": "Device properties patch.", - "schema": {}, - "required": true - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/DeviceCloudProperties" - } - } - } - } - }, - "/devices/{device_id}/commands/{command_name}": { - "get": { - "operationId": "Devices_GetCommandHistory", - "summary": "Get device command history", - "x-ms-examples": { - "Get command history": { - "$ref": "./examples/devices_commandshistory_get.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/DeviceId" - }, - { - "$ref": "#/parameters/CommandName" - } - ], - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/DeviceCommandCollection" - } - } - } - }, - "post": { - "operationId": "Devices_ExecuteCommand", - "summary": "Execute a device command", - "description": "Execute a command on a device.", - "x-ms-examples": { - "Send command": { - "$ref": "./examples/devices_commands_send.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/DeviceId" - }, - { - "$ref": "#/parameters/CommandName" - }, - { - "in": "body", - "name": "body", - "description": "Device command body.", - "schema": { - "$ref": "#/definitions/DeviceCommand" - }, - "required": true - } - ], - "responses": { - "201": { - "description": "Success", - "schema": { - "$ref": "#/definitions/DeviceCommand" - } - } - } - } - }, - "/devices/{device_id}/components": { - "get": { - "operationId": "Devices_ListComponents", - "summary": "List the components present in a device", - "x-ms-examples": { - "List components": { - "$ref": "./examples/devices_components_get.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/DeviceId" - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/Collection" - } - } - } - } - }, - "/devices/{device_id}/components/{component_name}/commands/{command_name}": { - "get": { - "operationId": "Devices_GetComponentCommandHistory", - "summary": "Get component command history", - "x-ms-examples": { - "Get command history": { - "$ref": "./examples/devices_commandshistory_get.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/DeviceId" - }, - { - "$ref": "#/parameters/ComponentName" - }, - { - "$ref": "#/parameters/CommandName" - } - ], - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/DeviceCommandCollection" - } - } - } - }, - "post": { - "operationId": "Devices_ExecuteComponentCommand", - "summary": "Execute a component command", - "description": "Execute a command on a component.", - "x-ms-examples": { - "Send command": { - "$ref": "./examples/devices_commands_send.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/DeviceId" - }, - { - "$ref": "#/parameters/ComponentName" - }, - { - "$ref": "#/parameters/CommandName" - }, - { - "in": "body", - "name": "body", - "description": "Device command body.", - "schema": { - "$ref": "#/definitions/DeviceCommand" - }, - "required": true - } - ], - "responses": { - "201": { - "description": "Success", - "schema": { - "$ref": "#/definitions/DeviceCommand" - } - } - } - } - }, - "/devices/{device_id}/components/{component_name}/properties": { - "get": { - "operationId": "Devices_GetComponentProperties", - "summary": "Get device properties for a specific component", - "x-ms-examples": { - "Get properties on components": { - "$ref": "./examples/devices_properties_components_get.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/DeviceId" - }, - { - "$ref": "#/parameters/ComponentName" - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/DeviceProperties" - } - } - } - }, - "put": { - "operationId": "Devices_SetComponentProperties", - "summary": "Update device properties for a specific component", - "x-ms-examples": { - "Update properties on components": { - "$ref": "./examples/devices_properties_components_set.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/DeviceId" - }, - { - "$ref": "#/parameters/ComponentName" - }, - { - "in": "body", - "name": "body", - "description": "Device properties.", - "schema": { - "$ref": "#/definitions/DeviceProperties" - }, - "required": true - } - ], - "responses": { - "202": { - "description": "Success", - "schema": { - "$ref": "#/definitions/DeviceProperties" - } - } - } - }, - "patch": { - "operationId": "Devices_UpdateComponentProperties", - "summary": "Update device properties for a specific component via PATCH", - "x-ms-examples": { - "Update properties on components": { - "$ref": "./examples/devices_properties_components_update.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/DeviceId" - }, - { - "$ref": "#/parameters/ComponentName" - }, - { - "in": "body", - "name": "body", - "description": "Device properties patch.", - "schema": {}, - "required": true - } - ], - "responses": { - "202": { - "description": "Success", - "schema": { - "$ref": "#/definitions/DeviceProperties" - } - } - } - } - }, - "/devices/{device_id}/components/{component_name}/telemetry/{telemetry_name}": { - "get": { - "operationId": "Devices_GetComponentTelemetryValue", - "summary": "Get component telemetry value", - "description": "Get the last telemetry value from a component.", - "x-ms-examples": { - "Get telemetry": { - "$ref": "./examples/devices_telemetry_get.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/DeviceId" - }, - { - "$ref": "#/parameters/ComponentName" - }, - { - "$ref": "#/parameters/TelemetryName" - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/DeviceTelemetry" - } - } - } - } - }, - "/devices/{device_id}/credentials": { - "get": { - "operationId": "Devices_GetCredentials", - "summary": "Get device credentials", - "x-ms-examples": { - "Get device credentials": { - "$ref": "./examples/devicecredentials_get.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/DeviceId" - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/DeviceCredentials" - } - } - } - } - }, - "/devices/{device_id}/modules": { - "get": { - "operationId": "Devices_ListModules", - "summary": "List the modules present in a device", - "x-ms-examples": { - "List modules": { - "$ref": "./examples/devices_modules_get.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/DeviceId" - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/Collection" - } - } - } - } - }, - "/devices/{device_id}/modules/{module_name}/commands/{command_name}": { - "get": { - "operationId": "Devices_GetModuleCommandHistory", - "summary": "Get module command history", - "x-ms-examples": { - "Get command history within module": { - "$ref": "./examples/modules_commandshistory_get.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/DeviceId" - }, - { - "$ref": "#/parameters/ModuleName" - }, - { - "$ref": "#/parameters/CommandName" - } - ], - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/DeviceCommandCollection" - } - } - } - }, - "post": { - "operationId": "Devices_ExecuteModuleCommand", - "summary": "Execute a module command", - "description": "Execute a command on a module.", - "x-ms-examples": { - "Send command to module": { - "$ref": "./examples/modules_commands_send.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/DeviceId" - }, - { - "$ref": "#/parameters/ModuleName" - }, - { - "$ref": "#/parameters/CommandName" - }, - { - "in": "body", - "name": "body", - "description": "Device command body.", - "schema": { - "$ref": "#/definitions/DeviceCommand" - }, - "required": true - } - ], - "responses": { - "201": { - "description": "Success", - "schema": { - "$ref": "#/definitions/DeviceCommand" - } - } - } - } - }, - "/devices/{device_id}/modules/{module_name}/components": { - "get": { - "operationId": "Devices_ListModuleComponents", - "summary": "List the components present in a module", - "x-ms-examples": { - "List module components": { - "$ref": "./examples/devices_modules_components_get.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/DeviceId" - }, - { - "$ref": "#/parameters/ModuleName" - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/Collection" - } - } - } - } - }, - "/devices/{device_id}/modules/{module_name}/components/{component_name}/commands/{command_name}": { - "get": { - "operationId": "Devices_GetModuleComponentCommandHistory", - "summary": "Get module component command history", - "x-ms-examples": { - "Get command history within module": { - "$ref": "./examples/modules_commandshistory_get.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/DeviceId" - }, - { - "$ref": "#/parameters/ModuleName" - }, - { - "$ref": "#/parameters/ComponentName" - }, - { - "$ref": "#/parameters/CommandName" - } - ], - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/DeviceCommandCollection" - } - } - } - }, - "post": { - "operationId": "Devices_ExecuteModuleComponentCommand", - "summary": "Execute a module component command", - "description": "Execute a command on a module.", - "x-ms-examples": { - "Send command to module": { - "$ref": "./examples/modules_commands_send.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/DeviceId" - }, - { - "$ref": "#/parameters/ModuleName" - }, - { - "$ref": "#/parameters/ComponentName" - }, - { - "$ref": "#/parameters/CommandName" - }, - { - "in": "body", - "name": "body", - "description": "Device command body.", - "schema": { - "$ref": "#/definitions/DeviceCommand" - }, - "required": true - } - ], - "responses": { - "201": { - "description": "Success", - "schema": { - "$ref": "#/definitions/DeviceCommand" - } - } - } - } - }, - "/devices/{device_id}/modules/{module_name}/components/{component_name}/properties": { - "get": { - "operationId": "Devices_GetModuleComponentProperties", - "summary": "Get module properties for a specific component", - "x-ms-examples": { - "Get properties of a module": { - "$ref": "./examples/modules_properties_components_get.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/DeviceId" - }, - { - "$ref": "#/parameters/ModuleName" - }, - { - "$ref": "#/parameters/ComponentName" - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/DeviceProperties" - } - } - } - }, - "put": { - "operationId": "Devices_SetModuleComponentProperties", - "summary": "Update module properties for a specific component", - "x-ms-examples": { - "Update properties of a module within a component": { - "$ref": "./examples/modules_properties_components_set.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/DeviceId" - }, - { - "$ref": "#/parameters/ModuleName" - }, - { - "$ref": "#/parameters/ComponentName" - }, - { - "in": "body", - "name": "body", - "description": "Module properties.", - "schema": { - "$ref": "#/definitions/DeviceProperties" - }, - "required": true - } - ], - "responses": { - "202": { - "description": "Success", - "schema": { - "$ref": "#/definitions/DeviceProperties" - } - } - } - }, - "patch": { - "operationId": "Devices_UpdateModuleComponentProperties", - "summary": "Update module properties for a specific component via PATCH", - "x-ms-examples": { - "Update properties of a module within a component": { - "$ref": "./examples/modules_properties_components_update.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/DeviceId" - }, - { - "$ref": "#/parameters/ModuleName" - }, - { - "$ref": "#/parameters/ComponentName" - }, - { - "in": "body", - "name": "body", - "description": "Module properties patch.", - "schema": {}, - "required": true - } - ], - "responses": { - "202": { - "description": "Success", - "schema": { - "$ref": "#/definitions/DeviceProperties" - } - } - } - } - }, - "/devices/{device_id}/modules/{module_name}/components/{component_name}/telemetry/{telemetry_name}": { - "get": { - "operationId": "Devices_GetModuleComponentTelemetryValue", - "summary": "Get module component telemetry value", - "description": "Get the last telemetry value from a module component.", - "x-ms-examples": { - "Get telemetry from module": { - "$ref": "./examples/modules_telemetry_get.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/DeviceId" - }, - { - "$ref": "#/parameters/ModuleName" - }, - { - "$ref": "#/parameters/ComponentName" - }, - { - "$ref": "#/parameters/TelemetryName" - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/DeviceTelemetry" - } - } - } - } - }, - "/devices/{device_id}/modules/{module_name}/properties": { - "get": { - "operationId": "Devices_GetModuleProperties", - "summary": "Get module properties", - "description": "Get all property values of a module.", - "x-ms-examples": { - "Get properties of a module": { - "$ref": "./examples/modules_properties_get.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/DeviceId" - }, - { - "$ref": "#/parameters/ModuleName" - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/DeviceProperties" - } - } - } - }, - "put": { - "operationId": "Devices_SetModuleProperties", - "summary": "Update module properties", - "description": "Update all property values of a module.", - "x-ms-examples": { - "Update properties of a module": { - "$ref": "./examples/modules_properties_set.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/DeviceId" - }, - { - "$ref": "#/parameters/ModuleName" - }, - { - "in": "body", - "name": "body", - "description": "Module properties.", - "schema": { - "$ref": "#/definitions/DeviceProperties" - }, - "required": true - } - ], - "responses": { - "202": { - "description": "Success", - "schema": { - "$ref": "#/definitions/DeviceProperties" - } - } - } - }, - "patch": { - "operationId": "Devices_UpdateModuleProperties", - "summary": "Update module properties via PATCH", - "description": "Update property values of a module.", - "x-ms-examples": { - "Update properties of a module": { - "$ref": "./examples/modules_properties_update.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/DeviceId" - }, - { - "$ref": "#/parameters/ModuleName" - }, - { - "in": "body", - "name": "body", - "description": "Module properties patch.", - "schema": {}, - "required": true - } - ], - "responses": { - "202": { - "description": "Success", - "schema": { - "$ref": "#/definitions/DeviceProperties" - } - } - } - } - }, - "/devices/{device_id}/modules/{module_name}/telemetry/{telemetry_name}": { - "get": { - "operationId": "Devices_GetModuleTelemetryValue", - "summary": "Get module telemetry value", - "description": "Get the last telemetry value from a module.", - "x-ms-examples": { - "Get telemetry from module": { - "$ref": "./examples/modules_telemetry_get.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/DeviceId" - }, - { - "$ref": "#/parameters/ModuleName" - }, - { - "$ref": "#/parameters/TelemetryName" - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/DeviceTelemetry" - } - } - } - } - }, - "/devices/{device_id}/properties": { - "get": { - "operationId": "Devices_GetProperties", - "summary": "Get device properties", - "description": "Get all property values of a device by device ID.", - "x-ms-examples": { - "Get properties": { - "$ref": "./examples/devices_properties_get.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/DeviceId" - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/DeviceProperties" - } - } - } - }, - "put": { - "operationId": "Devices_SetProperties", - "summary": "Update device properties", - "description": "Update all property values of a device by device ID.", - "x-ms-examples": { - "Update properties": { - "$ref": "./examples/devices_properties_set.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/DeviceId" - }, - { - "in": "body", - "name": "body", - "description": "Device properties.", - "schema": { - "$ref": "#/definitions/DeviceProperties" - }, - "required": true - } - ], - "responses": { - "202": { - "description": "Success", - "schema": { - "$ref": "#/definitions/DeviceProperties" - } - } - } - }, - "patch": { - "operationId": "Devices_UpdateProperties", - "summary": "Update device properties via PATCH", - "description": "Update property values of a device by device ID.", - "x-ms-examples": { - "Update properties": { - "$ref": "./examples/devices_properties_update.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/DeviceId" - }, - { - "in": "body", - "name": "body", - "description": "Device properties patch.", - "schema": {}, - "required": true - } - ], - "responses": { - "202": { - "description": "Success", - "schema": { - "$ref": "#/definitions/DeviceProperties" - } - } - } - } - }, - "/devices/{device_id}/telemetry/{telemetry_name}": { - "get": { - "operationId": "Devices_GetTelemetryValue", - "summary": "Get device telemetry value", - "description": "Get the last telemetry value from a device.", - "x-ms-examples": { - "Get telemetry": { - "$ref": "./examples/devices_telemetry_get.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/DeviceId" - }, - { - "$ref": "#/parameters/TelemetryName" - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/DeviceTelemetry" - } - } - } - } - }, - "/jobs": { - "get": { - "operationId": "Jobs_List", - "summary": "Get the list of jobs in an application", - "x-ms-examples": { - "List jobs": { - "$ref": "./examples/jobs_list.json" - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/JobCollection" - } - } - } - } - }, - "/jobs/{job_id}": { - "get": { - "operationId": "Jobs_Get", - "summary": "Get a job by ID", - "description": "Get details about a running or completed job by job ID.", - "x-ms-examples": { - "Get a job by Id": { - "$ref": "./examples/jobs_get.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/JobId" - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/Job" - } - } - } - }, - "put": { - "operationId": "Jobs_Create", - "summary": "Execute a new job", - "description": "Create and execute a new job via its job definition.", - "x-ms-examples": { - "Execute a new job": { - "$ref": "./examples/jobs_create.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/JobId" - }, - { - "in": "body", - "name": "body", - "description": "Job definition.", - "schema": { - "$ref": "#/definitions/Job" - }, - "required": true - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/Job" - } - } - } - } - }, - "/jobs/{job_id}/devices": { - "get": { - "operationId": "Jobs_GetDevices", - "summary": "Get device statuses", - "description": "Get the list of individual device statuses by job ID.", - "x-ms-examples": { - "Get device statuses": { - "$ref": "./examples/jobs_devices.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/JobId" - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/JobDeviceStatusCollection" - } - } - } - } - }, - "/jobs/{job_id}/rerun/{rerun_id}": { - "put": { - "operationId": "Jobs_Rerun", - "summary": "Rerun a job on failed devices", - "description": "Execute a rerun of an existing job on all failed devices.", - "x-ms-examples": { - "Rerun a job on failed devices": { - "$ref": "./examples/jobs_rerun.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/JobId" - }, - { - "in": "path", - "name": "rerun_id", - "description": "Unique ID of the job rerun.", - "x-ms-parameter-location": "method", - "type": "string", - "required": true - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/Job" - } - } - } - } - }, - "/jobs/{job_id}/resume": { - "post": { - "operationId": "Jobs_Resume", - "summary": "Resume a stopped job", - "description": "Resume execution of an existing stopped job.", - "x-ms-examples": { - "Resume a stopped job": { - "$ref": "./examples/jobs_resume.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/JobId" - } - ], - "responses": { - "204": { - "description": "Success" - } - } - } - }, - "/jobs/{job_id}/stop": { - "post": { - "operationId": "Jobs_Stop", - "summary": "Stop a running job", - "description": "Stop execution of a job that is currently running.", - "x-ms-examples": { - "Stop a running job": { - "$ref": "./examples/jobs_stop.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/JobId" - } - ], - "responses": { - "204": { - "description": "Success" - } - } - } - }, - "/roles": { - "get": { - "operationId": "Roles_List", - "summary": "Get the list of roles in an application.", - "x-ms-examples": { - "List roles": { - "$ref": "./examples/roles_list.json" - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/RoleCollection" - } - } - } - } - }, - "/roles/{role_id}": { - "get": { - "operationId": "Roles_Get", - "summary": "Get a role by ID.", - "x-ms-examples": { - "Get role by Id": { - "$ref": "./examples/roles_get.json" - } - }, - "parameters": [ - { - "in": "path", - "name": "role_id", - "description": "Unique ID for the role.", - "type": "string", - "required": true - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/Role" - } - } - } - } - }, - "/users": { - "get": { - "operationId": "Users_List", - "summary": "Get the list of users in an application", - "x-ms-examples": { - "List users": { - "$ref": "./examples/users_list.json" - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/UserCollection" - } - } - } - } - }, - "/users/{user_id}": { - "get": { - "operationId": "Users_Get", - "summary": "Get a user by ID", - "x-ms-examples": { - "Get a user by ID": { - "$ref": "./examples/users_get.json" - } - }, - "parameters": [ - { - "in": "path", - "name": "user_id", - "description": "Unique ID of the user.", - "type": "string", - "required": true - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/User" - } - } - } - }, - "put": { - "operationId": "Users_Create", - "summary": "Create or update a user in the application", - "x-ms-examples": { - "Add or update a service principal user": { - "$ref": "./examples/users_set_serviceprincipal.json" - }, - "Add or update an email user": { - "$ref": "./examples/users_set.json" - } - }, - "parameters": [ - { - "in": "path", - "name": "user_id", - "description": "Unique ID of the user.", - "type": "string", - "required": true - }, - { - "in": "body", - "name": "body", - "description": "User body.", - "schema": { - "$ref": "#/definitions/User" - }, - "required": true - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/User" - } - } - } - }, - "patch": { - "operationId": "Users_Update", - "summary": "Update a user in the application via PATCH", - "x-ms-examples": { - "Update a service principal user": { - "$ref": "./examples/users_set_serviceprincipal.json" - }, - "Update an email user": { - "$ref": "./examples/users_update.json" - } - }, - "parameters": [ - { - "in": "path", - "name": "user_id", - "description": "Unique ID of the user.", - "type": "string", - "required": true - }, - { - "in": "body", - "name": "body", - "description": "User patch body.", - "schema": {}, - "required": true - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/User" - } - } - } - }, - "delete": { - "operationId": "Users_Remove", - "summary": "Delete a user", - "x-ms-examples": { - "Delete a user": { - "$ref": "./examples/users_delete.json" - } - }, - "parameters": [ - { - "in": "path", - "name": "user_id", - "description": "Unique ID of the user.", - "type": "string", - "required": true - } - ], - "responses": { - "204": { - "description": "Success" - } - } - } - } - }, - "parameters": { - "CentralDnsSuffixInPath": { - "in": "path", - "name": "centralDnsSuffixInPath", - "description": "The DNS suffix used as the base for all Azure IoT Central service requests.", - "x-ms-parameter-location": "client", - "type": "string", - "x-ms-skip-url-encoding": true, - "default": "azureiotcentral.com", - "required": true - }, - "CommandName": { - "in": "path", - "name": "command_name", - "description": "Name of this device command.", - "x-ms-parameter-location": "method", - "type": "string", - "required": true - }, - "ComponentName": { - "in": "path", - "name": "component_name", - "description": "Name of the component. In the device template editor in your app, this is the interface instance name.", - "x-ms-parameter-location": "method", - "type": "string", - "required": true - }, - "DeviceId": { - "in": "path", - "name": "device_id", - "description": "Unique ID of the device.", - "x-ms-parameter-location": "method", - "type": "string", - "required": true - }, - "DeviceTemplateId": { - "in": "path", - "name": "device_template_id", - "description": "Unique ID of the device template.", - "x-ms-parameter-location": "method", - "type": "string", - "required": true - }, - "JobId": { - "in": "path", - "name": "job_id", - "description": "Unique ID of the job.", - "x-ms-parameter-location": "method", - "type": "string", - "required": true - }, - "ModuleName": { - "in": "path", - "name": "module_name", - "description": "Name of the device module.", - "x-ms-parameter-location": "method", - "type": "string", - "required": true - }, - "Subdomain": { - "in": "path", - "name": "subdomain", - "description": "The application subdomain.", - "x-ms-parameter-location": "client", - "type": "string", - "required": true - }, - "TelemetryName": { - "in": "path", - "name": "telemetry_name", - "description": "Name of this device telemetry.", - "x-ms-parameter-location": "method", - "type": "string", - "required": true - } - }, - "securityDefinitions": { - "azure_auth": { - "type": "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": [] -} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/iotcentralapps.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/iotcentralapps.json deleted file mode 100644 index 6745556b6fee..000000000000 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/iotcentralapps.json +++ /dev/null @@ -1,142 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "version": "preview", - "title": "Azure IoT Central Applications", - "description": "Azure IoT Central is a service that makes it easy to connect, monitor, and manage your IoT devices at scale." - }, - "host": "apps.azureiotcentral.com", - "basePath": "/api/preview", - "schemes": [ - "https" - ], - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "definitions": { - "Application": { - "type": "object", - "properties": { - "id": { - "description": "Unique ID of the application.", - "type": "string", - "readOnly": true - }, - "displayName": { - "description": "Display name of the application.", - "type": "string" - }, - "subdomain": { - "description": "The URL subdomain of the application.", - "type": "string" - }, - "host": { - "description": "The URL host of the application.", - "type": "string" - } - }, - "required": [ - "subdomain", - "host" - ] - }, - "ApplicationCollection": { - "type": "object", - "properties": { - "value": { - "description": "The collection of applications.", - "type": "array", - "items": { - "$ref": "#/definitions/Application" - } - }, - "nextLink": { - "description": "URL to get the next page of applications.", - "type": "string" - } - }, - "required": [ - "value" - ] - } - }, - "paths": { - "/applications": { - "get": { - "operationId": "Applications_List", - "summary": "Get the list of applications accessible to the signed-in user", - "x-ms-examples": { - "List applications": { - "$ref": "./examples/application_list.json" - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/ApplicationCollection" - } - } - } - } - }, - "/applications/{application_id}": { - "get": { - "operationId": "Applications_Get", - "summary": "Get an application by ID", - "x-ms-examples": { - "Get application": { - "$ref": "./examples/application_get.json" - } - }, - "parameters": [ - { - "in": "path", - "name": "application_id", - "description": "Unique ID of the application.", - "type": "string", - "required": true - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/Application" - } - } - } - } - } - }, - "parameters": { - "CentralDnsSuffixInPath": { - "in": "path", - "name": "centralDnsSuffixInPath", - "description": "The DNS suffix used as the base for all Azure IoT Central service requests.", - "x-ms-parameter-location": "client", - "type": "string", - "x-ms-skip-url-encoding": true, - "default": "azureiotcentral.com", - "required": true - } - }, - "securityDefinitions": { - "azure_auth": { - "type": "oauth2", - "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", - "flow": "implicit", - "description": "Azure Active Directory OAuth2 Flow", - "scopes": { - "user_impersonation": "impersonate your user account" - } - } - }, - "security": [] -} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/apitoken_create.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/apitoken_create.json new file mode 100644 index 000000000000..bcdaf0161c42 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/apitoken_create.json @@ -0,0 +1,32 @@ +{ + "title": "Get API tokens in your application", + "description": "Get a list of API tokens in your application.", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "tokenId": "testtoken", + "api-version": "preview", + "body": { + "roles": [ + { + "role": "ca310b8d-2f4a-44e0-a36e-957c202cd8d4" + } + ] + } + }, + "responses": { + "200": { + "body": { + "id": "testtoken", + "roles": [ + { + "role": "ca310b8d-2f4a-44e0-a36e-957c202cd8d4" + } + ], + "expiry": "2020-10-18T18:30:40.227Z", + "token": "SharedAccessSignature sr=..." + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/apitoken_delete.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/apitoken_delete.json new file mode 100644 index 000000000000..84eb9063d65a --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/apitoken_delete.json @@ -0,0 +1,14 @@ +{ + "title": "Delete API token", + "description": "Delete an API token using its name.", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "tokenId": "testtoken", + "api-version": "preview" + }, + "responses": { + "204": {} + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/apitoken_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/apitoken_get.json new file mode 100644 index 000000000000..a294b146d820 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/apitoken_get.json @@ -0,0 +1,24 @@ +{ + "title": "Get an API token in your application", + "description": "Get an API token by Id in your application.", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "tokenId": "testtoken", + "api-version": "preview" + }, + "responses": { + "200": { + "body": { + "id": "testtoken", + "roles": [ + { + "role": "ca310b8d-2f4a-44e0-a36e-957c202cd8d4" + } + ], + "expiry": "2020-10-18T18:30:40.227Z" + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/apitoken_list.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/apitoken_list.json new file mode 100644 index 000000000000..088e8e500bf5 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/apitoken_list.json @@ -0,0 +1,27 @@ +{ + "title": "List API tokens in your application", + "description": "Get a list of API tokens in your application.", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "api-version": "preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "testtoken", + "roles": [ + { + "role": "ca310b8d-2f4a-44e0-a36e-957c202cd8d4" + } + ], + "expiry": "2020-10-18T18:30:40.227Z" + } + ] + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/continuousdataexports_delete.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/continuousdataexports_delete.json new file mode 100644 index 000000000000..dc993b0373ea --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/continuousdataexports_delete.json @@ -0,0 +1,14 @@ +{ + "title": "Delete export", + "description": "Delete an export using its Id.", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "exportId": "abc", + "api-version": "preview" + }, + "responses": { + "204": {} + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/continuousdataexports_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/continuousdataexports_get.json similarity index 86% rename from specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/continuousdataexports_get.json rename to specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/continuousdataexports_get.json index 1d89e06bbfee..9ef17f96dfd5 100644 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/continuousdataexports_get.json +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/continuousdataexports_get.json @@ -3,8 +3,10 @@ "description": "Get an export using its Id.", "parameters": { "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", "subdomain": "appsubdomain", - "export_id": "16cad42a-bd47-4684-b106-9f9b4d2d02e9" + "exportId": "16cad42a-bd47-4684-b106-9f9b4d2d02e9", + "api-version": "preview" }, "responses": { "200": { diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/continuousdataexports_list.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/continuousdataexports_list.json similarity index 93% rename from specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/continuousdataexports_list.json rename to specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/continuousdataexports_list.json index 4d2123433746..f9411b2506d5 100644 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/continuousdataexports_list.json +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/continuousdataexports_list.json @@ -3,7 +3,9 @@ "description": "Get a list of all exports in your application", "parameters": { "centralDnsSuffixInPath": "azureiotcentral.com", - "subdomain": "appsubdomain" + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "api-version": "preview" }, "responses": { "200": { diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/continuousdataexports_set.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/continuousdataexports_set.json similarity index 92% rename from specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/continuousdataexports_set.json rename to specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/continuousdataexports_set.json index 12fed0bdfca9..9e72adf192f2 100644 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/continuousdataexports_set.json +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/continuousdataexports_set.json @@ -3,8 +3,10 @@ "description": "Create a new export or replace an existing export, specifying its Id.", "parameters": { "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", "subdomain": "appsubdomain", - "export_id": "abc", + "exportId": "abc", + "api-version": "preview", "body": { "displayName": "Export to Storage 2", "endpoint": { diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/continuousdataexports_update.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/continuousdataexports_update.json similarity index 91% rename from specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/continuousdataexports_update.json rename to specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/continuousdataexports_update.json index 98f7cb58b2a2..8078e0635cd6 100644 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/continuousdataexports_update.json +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/continuousdataexports_update.json @@ -3,8 +3,10 @@ "description": "Update parts of an existing continuous data export, specifying its Id.", "parameters": { "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", "subdomain": "appsubdomain", - "export_id": "abc", + "exportId": "abc", + "api-version": "preview", "body": { "displayName": "Updated export name", "endpoint": { diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devicecredentials_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devicecredentials_get.json new file mode 100644 index 000000000000..250f94a10fed --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devicecredentials_get.json @@ -0,0 +1,22 @@ +{ + "title": "Get device credentials", + "description": "Get the device credentials of a created device. Returns the app's scope Id and device SAS key", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceId": "Checkout4", + "api-version": "preview" + }, + "responses": { + "200": { + "body": { + "idScope": "", + "symmetricKey": { + "primaryKey": "", + "secondaryKey": "" + } + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devicegroups_list.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devicegroups_list.json similarity index 88% rename from specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devicegroups_list.json rename to specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devicegroups_list.json index c911199eb4b1..123ed3c171e5 100644 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devicegroups_list.json +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devicegroups_list.json @@ -3,7 +3,9 @@ "description": "List all device groups in your application.", "parameters": { "centralDnsSuffixInPath": "azureiotcentral.com", - "subdomain": "appsubdomain" + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "api-version": "preview" }, "responses": { "200": { diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_attestations_delete.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_attestations_delete.json new file mode 100644 index 000000000000..e7d767af2994 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_attestations_delete.json @@ -0,0 +1,14 @@ +{ + "title": "Delete device attestation", + "description": "Deletes the attestation for a device.", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceId": "Checkout4", + "api-version": "preview" + }, + "responses": { + "204": {} + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_attestations_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_attestations_get.json new file mode 100644 index 000000000000..b3f470f35484 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_attestations_get.json @@ -0,0 +1,27 @@ +{ + "title": "Get device attestation", + "description": "Gets the attestation for a device.", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceId": "CheckoutThermostat", + "api-version": "preview" + }, + "responses": { + "200": { + "body": { + "type": "X509Attestation", + "x509": { + "clientCertificates": { + "primary": { + "info": { + "sha1Thumbprint": "" + } + } + } + } + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_attestations_set_symmetricKey.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_attestations_set_symmetricKey.json new file mode 100644 index 000000000000..a0bb955950d4 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_attestations_set_symmetricKey.json @@ -0,0 +1,29 @@ +{ + "title": "Set device attestation - Symmetric key", + "description": "Creates or updates the symmetric key attestation for a device.", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceId": "CheckoutThermostat", + "api-version": "preview", + "body": { + "type": "SymmetricKeyAttestation", + "symmetricKey": { + "primaryKey": "", + "secondaryKey": "" + } + } + }, + "responses": { + "200": { + "body": { + "type": "SymmetricKeyAttestation", + "symmetricKey": { + "primaryKey": "", + "secondaryKey": "" + } + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_attestations_set_tpm.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_attestations_set_tpm.json new file mode 100644 index 000000000000..17a8e0191a7e --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_attestations_set_tpm.json @@ -0,0 +1,27 @@ +{ + "title": "Set device attestation - TPM", + "description": "Creates or updates the TPM attestation for a device.", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceId": "CheckoutThermostat", + "api-version": "preview", + "body": { + "type": "TpmAttestation", + "tpm": { + "endorsementKey": "" + } + } + }, + "responses": { + "200": { + "body": { + "type": "TpmAttestation", + "tpm": { + "endorsementKey": "" + } + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_attestations_set_x509.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_attestations_set_x509.json new file mode 100644 index 000000000000..ff68d8cf3521 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_attestations_set_x509.json @@ -0,0 +1,37 @@ +{ + "title": "Set device attestation - X509", + "description": "Creates or updates the X509 attestation for a device.", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceId": "CheckoutThermostat", + "api-version": "preview", + "body": { + "type": "X509Attestation", + "x509": { + "clientCertificates": { + "primary": { + "certificate": "" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "type": "X509Attestation", + "x509": { + "clientCertificates": { + "primary": { + "info": { + "sha1Thumbprint": "" + } + } + } + } + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_cloudproperties_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_cloudproperties_get.json similarity index 78% rename from specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_cloudproperties_get.json rename to specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_cloudproperties_get.json index f03df9f12d41..3e3c988d0c9d 100644 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_cloudproperties_get.json +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_cloudproperties_get.json @@ -3,8 +3,10 @@ "description": "Get the current values of all cloud properties of a device.", "parameters": { "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", "subdomain": "appsubdomain", - "device_id": "mx1" + "deviceId": "mx1", + "api-version": "preview" }, "responses": { "200": { diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_cloudproperties_set.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_cloudproperties_set.json similarity index 79% rename from specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_cloudproperties_set.json rename to specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_cloudproperties_set.json index cfb7f0292b63..9c56670afe79 100644 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_cloudproperties_set.json +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_cloudproperties_set.json @@ -3,11 +3,13 @@ "description": "Replace cloud properties of a device.", "parameters": { "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", "subdomain": "appsubdomain", + "api-version": "preview", "body": { "AssetID": "123abc" }, - "device_id": "mx1" + "deviceId": "mx1" }, "responses": { "200": { diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_cloudproperties_update.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_cloudproperties_update.json similarity index 80% rename from specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_cloudproperties_update.json rename to specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_cloudproperties_update.json index 202977def832..56dfdb199f6b 100644 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_cloudproperties_update.json +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_cloudproperties_update.json @@ -3,11 +3,13 @@ "description": "Update some or all cloud properties of a device.", "parameters": { "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", "subdomain": "appsubdomain", + "api-version": "preview", "body": { "AssetID": "updated value" }, - "device_id": "mx1" + "deviceId": "mx1" }, "responses": { "200": { diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_commands_send.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_commands_send.json new file mode 100644 index 000000000000..01f714b7d707 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_commands_send.json @@ -0,0 +1,33 @@ +{ + "title": "Send command", + "description": "Send a command to a device.", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceId": "mx1", + "componentName": "Thermostat_1o", + "commandName": "CoolDown", + "api-version": "preview", + "body": { + "connectionTimeout": 10, + "responseTimeout": 10, + "request": { + "tempVal": 30 + } + } + }, + "responses": { + "201": { + "body": { + "request": { + "tempVal": 30 + }, + "connectionTimeout": 10, + "responseTimeout": 10, + "response": "Sample response value", + "responseCode": 200 + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_commandshistory_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_commandshistory_get.json new file mode 100644 index 000000000000..10c6b1a98de2 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_commandshistory_get.json @@ -0,0 +1,27 @@ +{ + "title": "Get command history", + "description": "Get the most recent invocation of a command of a device.", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceId": "mx1", + "componentName": "Thermostat_1o", + "commandName": "CoolDown", + "api-version": "preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "request": 20, + "id": "4e17dd2e-7bf2-458d-8466-19bc6fc9b642", + "response": 58.795679629034694, + "responseCode": 200 + } + ] + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_components_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_components_get.json new file mode 100644 index 000000000000..3811e7b7c6f2 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_components_get.json @@ -0,0 +1,33 @@ +{ + "title": "Get components from a device", + "description": "Get the list of components in a device.", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceId": "device1", + "api-version": "preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "@id": "", + "@type": [ + "InterfaceInstance" + ], + "name": "LocationTracking" + }, + { + "@id": "", + "@type": [ + "InterfaceInstance" + ], + "name": "EnvironmentSensing" + } + ] + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_create.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_create.json new file mode 100644 index 000000000000..da2f9f42fd83 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_create.json @@ -0,0 +1,30 @@ +{ + "title": "Create or replace a device", + "description": "Create or replace device with an Id.", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceId": "ccc", + "api-version": "preview", + "body": { + "displayName": "CheckoutThermostatccc", + "instanceOf": "urn:kmwga2re7:modelDefinition:t_cj5wspyv", + "simulated": true, + "approved": true + } + }, + "responses": { + "200": { + "body": { + "id": "ccc", + "etag": "eyJoZWFkZXIiOiJcIjE1MDE2ZDFiLTAwMDAtMGQwMC0wMDAwLTVkYWNkNDIxMDAwMFwiIiwiZGF0YSI6IlwiMTUwMTZhMWItMDAwMC0wZDAwLTAwMDAtNWRhY2Q0MjEwMDAwXCIifQ", + "displayName": "CheckoutThermostatccc", + "instanceOf": "urn:kmwga2re7:modelDefinition:t_cj5wspyv", + "simulated": true, + "provisioned": false, + "approved": true + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_delete.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_delete.json new file mode 100644 index 000000000000..40bdc9348a81 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_delete.json @@ -0,0 +1,14 @@ +{ + "title": "Delete device", + "description": "Delete a device by Id.", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceId": "ccc", + "api-version": "preview" + }, + "responses": { + "204": {} + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_get.json new file mode 100644 index 000000000000..4ffb25c00614 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_get.json @@ -0,0 +1,24 @@ +{ + "title": "Get a device by Id", + "description": "Get a device by Id", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceId": "CheckoutThermostat", + "api-version": "preview" + }, + "responses": { + "200": { + "body": { + "id": "CheckoutThermostat", + "etag": "eyJoZWFkZXIiOiJcIjAyMDA4YzMyLTAwMDAtMGQwMC0wMDAwLTVkOTY4YjdhMDAwMFwiIn0", + "displayName": "CheckoutThermostat", + "instanceOf": "urn:kmwga2re7:modelDefinition:t_cj5wspyv", + "simulated": true, + "provisioned": true, + "approved": true + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_list.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_list.json new file mode 100644 index 000000000000..b16b6ea949e5 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_list.json @@ -0,0 +1,54 @@ +{ + "title": "List devices", + "description": "List all devices in your application.", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "api-version": "preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "CheckoutThermostat", + "etag": "eyJoZWFkZXIiOiJcIjAyMDA4YzMyLTAwMDAtMGQwMC0wMDAwLTVkOTY4YjdhMDAwMFwiIn0", + "displayName": "CheckoutThermostat", + "instanceOf": "urn:kmwga2re7:modelDefinition:t_cj5wspyv", + "simulated": true, + "provisioned": true, + "approved": true + }, + { + "id": "Checkout1", + "etag": "eyJoZWFkZXIiOiJcIjAyMDA4ZDMyLTAwMDAtMGQwMC0wMDAwLTVkOTY4Yjg3MDAwMFwiIn0", + "displayName": "Checkout1", + "instanceOf": "urn:sbk9sd6sl:modelDefinition:u3b_fwd7os", + "simulated": true, + "provisioned": true, + "approved": true + }, + { + "id": "Checkout2", + "etag": "eyJoZWFkZXIiOiJcIjAyMDA5MDMyLTAwMDAtMGQwMC0wMDAwLTVkOTY4Yjg3MDAwMFwiIn0", + "displayName": "Checkout2", + "instanceOf": "urn:sbk9sd6sl:modelDefinition:u3b_fwd7os", + "simulated": true, + "provisioned": true, + "approved": true + }, + { + "id": "Checkout3", + "etag": "eyJoZWFkZXIiOiJcIjAyMDA4ZTMyLTAwMDAtMGQwMC0wMDAwLTVkOTY4Yjg3MDAwMFwiIn0", + "displayName": "Checkout3", + "instanceOf": "urn:sbk9sd6sl:modelDefinition:u3b_fwd7os", + "simulated": true, + "provisioned": true, + "approved": true + } + ] + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_list_by_template.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_list_by_template.json similarity index 91% rename from specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_list_by_template.json rename to specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_list_by_template.json index c2498a1d4982..d7d16395fb7b 100644 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_list_by_template.json +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_list_by_template.json @@ -3,8 +3,10 @@ "description": "List all devices associated to a device template.", "parameters": { "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", "subdomain": "appsubdomain", - "device_template_id": "urn:sbk9sd6sl:modelDefinition:u3b_fwd7os" + "deviceTemplateId": "urn:sbk9sd6sl:modelDefinition:u3b_fwd7os", + "api-version": "preview" }, "responses": { "200": { diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_modules_components_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_modules_components_get.json new file mode 100644 index 000000000000..9a1a57d2286b --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_modules_components_get.json @@ -0,0 +1,28 @@ +{ + "title": "Get components from a module in an Edge device", + "description": "Get a list of components from a module in an IoT Edge device.", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceId": "edgedevice1", + "moduleName": "edgemodule", + "api-version": "preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "@id": "", + "@type": [ + "InterfaceInstance" + ], + "name": "interfaceA", + "displayName": "InterfaceA" + } + ] + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_modules_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_modules_get.json new file mode 100644 index 000000000000..5a095d81827f --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_modules_get.json @@ -0,0 +1,35 @@ +{ + "title": "Get modules from an Edge device", + "description": "Get the list of modules in an IoT Edge device.", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceId": "edgedevice1", + "api-version": "preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "@id": "", + "@type": [ + "Relationship", + "SemanticType/EdgeModule" + ], + "name": "Environment" + }, + { + "@id": "", + "@type": [ + "Relationship", + "SemanticType/EdgeModule" + ], + "name": "Camera" + } + ] + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_properties_components_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_properties_components_get.json new file mode 100644 index 000000000000..49906b0d17ff --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_properties_components_get.json @@ -0,0 +1,56 @@ +{ + "title": "Get device properties in component", + "description": "Get the read-write property values within a component of a device.", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceId": "mx1", + "componentName": "settings", + "api-version": "preview" + }, + "responses": { + "200": { + "body": { + "fanSpeed": 35, + "voltage": 5, + "current": 2, + "irSwitch": true, + "$metadata": { + "fanSpeed": { + "desiredValue": 35, + "ackDesiredState": { + "code": 200, + "version": 2, + "description": "Processed" + } + }, + "voltage": { + "desiredValue": 5, + "ackDesiredState": { + "code": 200, + "version": 2, + "description": "Processed" + } + }, + "current": { + "desiredValue": 2, + "ackDesiredState": { + "code": 200, + "version": 2, + "description": "Processed" + } + }, + "irSwitch": { + "desiredValue": true, + "ackDesiredState": { + "code": 200, + "version": 2, + "description": "Processed" + } + } + } + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_properties_components_set.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_properties_components_set.json new file mode 100644 index 000000000000..8929e2c79388 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_properties_components_set.json @@ -0,0 +1,38 @@ +{ + "title": "Set device properties in component", + "description": "Set the read-write property values within a component of a device.", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceId": "mx1", + "componentName": "settings", + "api-version": "preview", + "body": { + "fanSpeed": 35, + "voltage": 5, + "current": 2, + "irSwitch": true + } + }, + "responses": { + "202": { + "body": { + "$metadata": { + "fanSpeed": { + "desiredValue": 35 + }, + "voltage": { + "desiredValue": 5 + }, + "current": { + "desiredValue": 2 + }, + "irSwitch": { + "desiredValue": true + } + } + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_properties_components_update.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_properties_components_update.json similarity index 81% rename from specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_properties_components_update.json rename to specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_properties_components_update.json index 5d44204e9faf..fb4a4fd0c583 100644 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_properties_components_update.json +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_properties_components_update.json @@ -3,9 +3,11 @@ "description": "Update some or all of the read-write property values within a component of a device.", "parameters": { "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", "subdomain": "appsubdomain", - "device_id": "mx1", - "component_name": "settings", + "deviceId": "mx1", + "componentName": "settings", + "api-version": "preview", "body": { "fanSpeed": 101, "irSwitch": true diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_properties_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_properties_get.json new file mode 100644 index 000000000000..649bca7ae586 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_properties_get.json @@ -0,0 +1,43 @@ +{ + "title": "Get device properties", + "description": "Get the current values of all device properties. Properties that have never been set by the device or by a user or API request will not be returned.", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceId": "mx1", + "api-version": "preview" + }, + "responses": { + "200": { + "body": { + "deviceinfo": { + "manufacturer": "manufacturer", + "$metadata": { + "manufacturer": { + "lastUpdateTime": "2020-07-21T19:06:50.9718608Z" + }, + "model": { + "lastUpdateTime": "2020-07-21T19:06:50.9718608Z" + }, + "swVersion": { + "lastUpdateTime": "2020-07-21T19:06:50.9718608Z" + } + }, + "model": "model", + "swVersion": "swVersion" + }, + "settings": { + "fanSpeed": 12.5, + "$metadata": { + "fanSpeed": { + "desiredValue": 30, + "desiredVersion": 2, + "lastUpdateTime": "2020-07-21T19:06:50.9718608Z" + } + } + } + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_properties_set.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_properties_set.json similarity index 86% rename from specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_properties_set.json rename to specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_properties_set.json index 9b9ba6b3f1a7..704ca50b3661 100644 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_properties_set.json +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_properties_set.json @@ -3,8 +3,10 @@ "description": "Replace the values of read-write device properties of a device", "parameters": { "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", "subdomain": "appsubdomain", - "device_id": "mx1", + "deviceId": "mx1", + "api-version": "preview", "body": { "settings": { "voltage": 25, diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_properties_update.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_properties_update.json new file mode 100644 index 000000000000..82f04e59e337 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_properties_update.json @@ -0,0 +1,33 @@ +{ + "title": "Update device properties", + "description": "Update some or all values of read-write device properties of a device", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceId": "mx1", + "api-version": "preview", + "body": { + "settings": { + "voltage": 25, + "current": 7 + } + } + }, + "responses": { + "202": { + "body": { + "settings": { + "$metadata": { + "voltage": { + "desiredValue": 25 + }, + "current": { + "desiredValue": 7 + } + } + } + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_telemetry_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_telemetry_get.json new file mode 100644 index 000000000000..9ca0e00065cf --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_telemetry_get.json @@ -0,0 +1,20 @@ +{ + "title": "Get telemetry", + "description": "Get the last known value of a telemetry stream of a device.", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceId": "mx1", + "componentName": "sensors", + "telemetryName": "temperature", + "api-version": "preview" + }, + "responses": { + "200": { + "body": { + "value": 32 + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_update.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_update.json new file mode 100644 index 000000000000..071dc46d690f --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devices_update.json @@ -0,0 +1,29 @@ +{ + "title": "Update a device", + "description": "Update parts of an existing device with an Id.", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceId": "ccc", + "api-version": "preview", + "body": { + "displayName": "Updated displayName", + "instanceOf": "urn:baacbx8bk:modelDefinition:lgxugnniks", + "approved": false + } + }, + "responses": { + "200": { + "body": { + "id": "ccc", + "etag": "eyJoZWFkZXIiOiJcIjAxMDAyNmVjLTAwMDAtMGQwMC0wMDAwLTVkYmZkMjFhMDAwMFwiIn0", + "displayName": "Updated displayName", + "instanceOf": "urn:baacbx8bk:modelDefinition:lgxugnniks", + "simulated": false, + "provisioned": true, + "approved": false + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devicetemplates_create.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devicetemplates_create.json new file mode 100644 index 000000000000..78259fdd9d9f --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devicetemplates_create.json @@ -0,0 +1,150 @@ +{ + "title": "Create a device template", + "description": "Creates and publishes a device template. In the body, specify the full device template object. Default views will be automatically generated.", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceTemplateId": "environmentstemplateid", + "api-version": "preview", + "body": { + "types": [ + "DeviceModel" + ], + "displayName": "Environment sensor 1", + "capabilityModel": { + "@id": "urn:storeAnalyticsCheckoutPnp:capabilityModel:1", + "@type": [ + "CapabilityModel" + ], + "implements": [ + { + "@id": "urn:storeAnalyticsCheckoutPnp:capabilityModel:fyy5xn_y:1", + "@type": [ + "InterfaceInstance" + ], + "displayName": "Interface", + "name": "Interface", + "schema": { + "@id": "urn:storeAnalyticsCheckoutPnp:Interface:1", + "@type": [ + "Interface" + ], + "displayName": "Interface", + "contents": [ + { + "@id": "urn:storeAnalyticsCheckoutPnp:Interface:Temperature:1", + "@type": [ + "Telemetry", + "SemanticType/Temperature" + ], + "displayName": "Temperature", + "name": "Temperature", + "schema": "double", + "unit": "celsius" + }, + { + "@id": "urn:storeAnalyticsCheckoutPnp:Interface:Humidity:1", + "@type": [ + "Telemetry", + "SemanticType/Humidity" + ], + "displayName": "Humidity", + "name": "Humidity", + "schema": "double", + "unit": "percent" + }, + { + "@id": "urn:storeAnalyticsCheckoutPnp:Interface:Occupancy:1", + "@type": [ + "Telemetry" + ], + "displayName": "Occupancy", + "name": "Occupancy", + "schema": "double" + } + ] + } + } + ], + "displayName": "Motion detector", + "contents": [], + "@context": [ + "http://azureiot.com/v1/contexts/IoTModel.json" + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "environmentstemplateid", + "types": [ + "DeviceModel" + ], + "displayName": "Environment sensor 1", + "capabilityModel": { + "@id": "urn:storeAnalyticsCheckoutPnp:capabilityModel:1", + "@type": [ + "CapabilityModel" + ], + "implements": [ + { + "@id": "urn:storeAnalyticsCheckoutPnp:capabilityModel:fyy5xn_y:1", + "@type": [ + "InterfaceInstance" + ], + "displayName": "Interface", + "name": "Interface", + "schema": { + "@id": "urn:storeAnalyticsCheckoutPnp:Interface:1", + "@type": [ + "Interface" + ], + "displayName": "Interface", + "contents": [ + { + "@id": "urn:storeAnalyticsCheckoutPnp:Interface:Temperature:1", + "@type": [ + "Telemetry", + "SemanticType/Temperature" + ], + "displayName": "Temperature", + "name": "Temperature", + "schema": "double", + "unit": "celsius" + }, + { + "@id": "urn:storeAnalyticsCheckoutPnp:Interface:Humidity:1", + "@type": [ + "Telemetry", + "SemanticType/Humidity" + ], + "displayName": "Humidity", + "name": "Humidity", + "schema": "double", + "unit": "percent" + }, + { + "@id": "urn:storeAnalyticsCheckoutPnp:Interface:Occupancy:1", + "@type": [ + "Telemetry" + ], + "displayName": "Occupancy", + "name": "Occupancy", + "schema": "double" + } + ] + } + } + ], + "displayName": "Motion detector", + "contents": [], + "@context": [ + "http://azureiot.com/v1/contexts/IoTModel.json" + ] + } + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devicetemplates_delete.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devicetemplates_delete.json new file mode 100644 index 000000000000..089e2d4e0f5e --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devicetemplates_delete.json @@ -0,0 +1,14 @@ +{ + "title": "Delete a device template by Id", + "description": "Delete a published device template that has no devices currently associated to it. This operation does not operate on device templates in draft state.", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceTemplateId": "urn:sbk9sd6sl:modelDefinition:u3b_fwd7os", + "api-version": "preview" + }, + "responses": { + "204": {} + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devicetemplates_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devicetemplates_get.json new file mode 100644 index 000000000000..6014dfe13755 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devicetemplates_get.json @@ -0,0 +1,179 @@ +{ + "title": "Get a device template by Id", + "description": "Get a published device template by Id. This operation does not return device templates in draft state.", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceTemplateId": "urn:sbk9sd6sl:modelDefinition:u3b_fwd7os", + "api-version": "preview" + }, + "responses": { + "200": { + "body": { + "id": "urn:sbk9sd6sl:modelDefinition:u3b_fwd7os", + "types": [ + "DeviceModel" + ], + "displayName": "RS40 Occupancy Sensor", + "capabilityModel": { + "@id": "urn:rigado:RS40_Occupancy_Sensor:1", + "@type": [ + "CapabilityModel" + ], + "implements": [ + { + "@id": "urn:rigado:RS40_Occupancy_Sensor:Device_information_RS40_Occupancy_Sensor:1", + "@type": [ + "InterfaceInstance" + ], + "name": "Device_information_RS40_Occupancy_Sensor", + "schema": { + "@id": "urn:azureiot:DeviceManagement:DeviceInformation:1", + "@type": [ + "Interface" + ], + "displayName": "Device Information", + "contents": [ + { + "@id": "urn:azureiot:DeviceManagement:DeviceInformation:manufacturer:1", + "@type": [ + "Property" + ], + "description": "Company name of the device manufacturer. This could be the same as the name of the original equipment manufacturer (OEM). Ex. Contoso.", + "displayName": "Manufacturer", + "name": "manufacturer", + "schema": "string" + }, + { + "@id": "urn:azureiot:DeviceManagement:DeviceInformation:model:1", + "@type": [ + "Property" + ], + "description": "Device model name or ID. Ex. Surface Book 2.", + "displayName": "Device model", + "name": "model", + "schema": "string" + }, + { + "@id": "urn:azureiot:DeviceManagement:DeviceInformation:swVersion:1", + "@type": [ + "Property" + ], + "description": "Version of the software on your device. This could be the version of your firmware. Ex. 1.3.45", + "displayName": "Software version", + "name": "swVersion", + "schema": "string" + }, + { + "@id": "urn:azureiot:DeviceManagement:DeviceInformation:osName:1", + "@type": [ + "Property" + ], + "description": "Name of the operating system on the device. Ex. Windows 10 IoT Core.", + "displayName": "Operating system name", + "name": "osName", + "schema": "string" + }, + { + "@id": "urn:azureiot:DeviceManagement:DeviceInformation:processorArchitecture:1", + "@type": [ + "Property" + ], + "description": "Architecture of the processor on the device. Ex. x64 or ARM.", + "displayName": "Processor architecture", + "name": "processorArchitecture", + "schema": "string" + }, + { + "@id": "urn:azureiot:DeviceManagement:DeviceInformation:processorManufacturer:1", + "@type": [ + "Property" + ], + "description": "Name of the manufacturer of the processor on the device. Ex. Intel.", + "displayName": "Processor manufacturer", + "name": "processorManufacturer", + "schema": "string" + }, + { + "@id": "urn:azureiot:DeviceManagement:DeviceInformation:totalStorage:1", + "@type": [ + "Property" + ], + "description": "Total available storage on the device in kilobytes. Ex. 2048000 kilobytes.", + "displayName": "Total storage", + "name": "totalStorage", + "displayUnit": "kilobytes", + "schema": "long" + }, + { + "@id": "urn:azureiot:DeviceManagement:DeviceInformation:totalMemory:1", + "@type": [ + "Property" + ], + "description": "Total available memory on the device in kilobytes. Ex. 256000 kilobytes.", + "displayName": "Total memory", + "name": "totalMemory", + "displayUnit": "kilobytes", + "schema": "long" + } + ] + } + }, + { + "@id": "urn:rigado:RS40_Occupancy_Sensor:RS40_Occupancy_Sensor:1", + "@type": [ + "InterfaceInstance" + ], + "name": "RS40_Occupancy_Sensor", + "schema": { + "@id": "urn:rigado:interfaces:RS40_Occupancy_Sensor:1", + "@type": [ + "Interface" + ], + "displayName": "Interface", + "contents": [ + { + "@id": "urn:rigado:interfaces:RS40_Occupancy_Sensor:count:1", + "@type": [ + "Telemetry" + ], + "comment": "", + "description": "Count of motion events seen in the previous interval", + "displayName": "count", + "name": "count", + "schema": "integer" + }, + { + "@id": "urn:rigado:interfaces:RS40_Occupancy_Sensor:state:1", + "@type": [ + "Telemetry" + ], + "description": "Occupancy State", + "displayName": "state", + "name": "state", + "schema": "boolean" + } + ] + } + } + ], + "displayName": "RS40 Occupancy Sensor", + "contents": [], + "@context": [ + "http://azureiot.com/v1/contexts/IoTModel.json" + ] + }, + "solutionModel": { + "@id": "urn:sbk9sd6sl:modelDefinition:rxyaituqzz", + "@type": [ + "SolutionModel" + ], + "cloudProperties": [], + "initialValues": [], + "overrides": [] + } + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devicetemplates_get_merged.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devicetemplates_get_merged.json similarity index 98% rename from specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devicetemplates_get_merged.json rename to specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devicetemplates_get_merged.json index bf54a3acbd8c..ad9673108c5d 100644 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devicetemplates_get_merged.json +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devicetemplates_get_merged.json @@ -3,8 +3,10 @@ "description": "Get a single merged view of a device template by Id. The merged view of a device template contains the overrides and initial values from the solutionModel merged into the capabilityModel. This operation does not return device templates in draft state.", "parameters": { "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", "subdomain": "appsubdomain", - "device_template_id": "urn:sbk9sd6sl:modelDefinition:u3b_fwd7os" + "deviceTemplateId": "urn:sbk9sd6sl:modelDefinition:u3b_fwd7os", + "api-version": "preview" }, "responses": { "200": { diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devicetemplates_list.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devicetemplates_list.json new file mode 100644 index 000000000000..06088fcde4b7 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/devicetemplates_list.json @@ -0,0 +1,182 @@ +{ + "title": "List device templates", + "description": "List device templates that are currently published in the application. This operation does not return device templates in draft state.", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "api-version": "preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "urn:sbk9sd6sl:modelDefinition:u3b_fwd7os", + "types": [ + "DeviceModel" + ], + "displayName": "RS40 Occupancy Sensor", + "capabilityModel": { + "@id": "urn:rigado:RS40_Occupancy_Sensor:1", + "@type": [ + "CapabilityModel" + ], + "implements": [ + { + "@id": "urn:rigado:RS40_Occupancy_Sensor:Device_information_RS40_Occupancy_Sensor:1", + "@type": [ + "InterfaceInstance" + ], + "name": "Device_information_RS40_Occupancy_Sensor", + "schema": { + "@id": "urn:azureiot:DeviceManagement:DeviceInformation:1", + "@type": [ + "Interface" + ], + "displayName": "Device Information", + "contents": [ + { + "@id": "urn:azureiot:DeviceManagement:DeviceInformation:manufacturer:1", + "@type": [ + "Property" + ], + "description": "Company name of the device manufacturer. This could be the same as the name of the original equipment manufacturer (OEM). Ex. Contoso.", + "displayName": "Manufacturer", + "name": "manufacturer", + "schema": "string" + }, + { + "@id": "urn:azureiot:DeviceManagement:DeviceInformation:model:1", + "@type": [ + "Property" + ], + "description": "Device model name or ID. Ex. Surface Book 2.", + "displayName": "Device model", + "name": "model", + "schema": "string" + }, + { + "@id": "urn:azureiot:DeviceManagement:DeviceInformation:swVersion:1", + "@type": [ + "Property" + ], + "description": "Version of the software on your device. This could be the version of your firmware. Ex. 1.3.45", + "displayName": "Software version", + "name": "swVersion", + "schema": "string" + }, + { + "@id": "urn:azureiot:DeviceManagement:DeviceInformation:osName:1", + "@type": [ + "Property" + ], + "description": "Name of the operating system on the device. Ex. Windows 10 IoT Core.", + "displayName": "Operating system name", + "name": "osName", + "schema": "string" + }, + { + "@id": "urn:azureiot:DeviceManagement:DeviceInformation:processorArchitecture:1", + "@type": [ + "Property" + ], + "description": "Architecture of the processor on the device. Ex. x64 or ARM.", + "displayName": "Processor architecture", + "name": "processorArchitecture", + "schema": "string" + }, + { + "@id": "urn:azureiot:DeviceManagement:DeviceInformation:processorManufacturer:1", + "@type": [ + "Property" + ], + "description": "Name of the manufacturer of the processor on the device. Ex. Intel.", + "displayName": "Processor manufacturer", + "name": "processorManufacturer", + "schema": "string" + }, + { + "@id": "urn:azureiot:DeviceManagement:DeviceInformation:totalStorage:1", + "@type": [ + "Property" + ], + "description": "Total available storage on the device in kilobytes. Ex. 2048000 kilobytes.", + "displayName": "Total storage", + "name": "totalStorage", + "displayUnit": "kilobytes", + "schema": "long" + }, + { + "@id": "urn:azureiot:DeviceManagement:DeviceInformation:totalMemory:1", + "@type": [ + "Property" + ], + "description": "Total available memory on the device in kilobytes. Ex. 256000 kilobytes.", + "displayName": "Total memory", + "name": "totalMemory", + "displayUnit": "kilobytes", + "schema": "long" + } + ] + } + }, + { + "@id": "urn:rigado:RS40_Occupancy_Sensor:RS40_Occupancy_Sensor:1", + "@type": [ + "InterfaceInstance" + ], + "name": "RS40_Occupancy_Sensor", + "schema": { + "@id": "urn:rigado:interfaces:RS40_Occupancy_Sensor:1", + "@type": [ + "Interface" + ], + "displayName": "Interface", + "contents": [ + { + "@id": "urn:rigado:interfaces:RS40_Occupancy_Sensor:count:1", + "@type": [ + "Telemetry" + ], + "comment": "", + "description": "Count of motion events seen in the previous interval", + "displayName": "count", + "name": "count", + "schema": "integer" + }, + { + "@id": "urn:rigado:interfaces:RS40_Occupancy_Sensor:state:1", + "@type": [ + "Telemetry" + ], + "description": "Occupancy State", + "displayName": "state", + "name": "state", + "schema": "boolean" + } + ] + } + } + ], + "displayName": "RS40 Occupancy Sensor", + "contents": [], + "@context": [ + "http://azureiot.com/v1/contexts/IoTModel.json" + ] + }, + "solutionModel": { + "@id": "urn:sbk9sd6sl:modelDefinition:rxyaituqzz", + "@type": [ + "SolutionModel" + ], + "cloudProperties": [], + "initialValues": [], + "overrides": [] + } + } + ] + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/jobs_create.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/jobs_create.json new file mode 100644 index 000000000000..ea1f7d66daec --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/jobs_create.json @@ -0,0 +1,59 @@ +{ + "title": "Execute a new job", + "description": "Create and execute a new job via its job definition.", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "jobId": "myJobId", + "api-version": "preview", + "body": { + "displayName": "My Job", + "group": "475cad48-b7ff-4a09-b51e-1a9021385453", + "batch": { + "type": "percentage", + "value": 10 + }, + "cancellationThreshold": { + "type": "number", + "value": 2, + "batch": false + }, + "data": [ + { + "type": "PropertyJobData", + "target": "urn:1dgygpt7t:modelDefinition:02uwtefvdy", + "path": "componentName.propertyName", + "value": "updated value" + } + ] + } + }, + "responses": { + "200": { + "body": { + "id": "myJobId", + "displayName": "My Job", + "group": "475cad48-b7ff-4a09-b51e-1a9021385453", + "batch": { + "type": "percentage", + "value": 10 + }, + "cancellationThreshold": { + "type": "number", + "value": 2, + "batch": false + }, + "data": [ + { + "type": "PropertyJobData", + "target": "urn:1dgygpt7t:modelDefinition:02uwtefvdy", + "path": "componentName.propertyName", + "value": "updated value" + } + ], + "status": "running" + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/jobs_devices.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/jobs_devices.json similarity index 88% rename from specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/jobs_devices.json rename to specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/jobs_devices.json index c35ef6ab3e80..5de8babc4539 100644 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/jobs_devices.json +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/jobs_devices.json @@ -3,8 +3,10 @@ "description": "Get the list of individual device statuses by job ID.", "parameters": { "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", "subdomain": "appsubdomain", - "job_id": "myJobId" + "jobId": "myJobId", + "api-version": "preview" }, "responses": { "200": { diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/jobs_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/jobs_get.json similarity index 87% rename from specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/jobs_get.json rename to specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/jobs_get.json index 4d54104358c9..476f715bbd44 100644 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/jobs_get.json +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/jobs_get.json @@ -3,8 +3,10 @@ "description": "Get a job by Id", "parameters": { "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", "subdomain": "appsubdomain", - "job_id": "myJobId" + "jobId": "myJobId", + "api-version": "preview" }, "responses": { "200": { diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/jobs_list.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/jobs_list.json similarity index 87% rename from specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/jobs_list.json rename to specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/jobs_list.json index bac6157d50cf..cb8be4e71e8d 100644 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/jobs_list.json +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/jobs_list.json @@ -3,7 +3,9 @@ "description": "List all jobs in your application.", "parameters": { "centralDnsSuffixInPath": "azureiotcentral.com", - "subdomain": "appsubdomain" + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "api-version": "preview" }, "responses": { "200": { diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/jobs_rerun.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/jobs_rerun.json similarity index 84% rename from specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/jobs_rerun.json rename to specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/jobs_rerun.json index 1944b3886e04..3b747d82db67 100644 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/jobs_rerun.json +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/jobs_rerun.json @@ -3,9 +3,11 @@ "description": "Execute a rerun of an existing job on all failed devices.", "parameters": { "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", "subdomain": "appsubdomain", - "job_id": "myJobId", - "rerun_id": "myJobRerunId" + "jobId": "myJobId", + "rerunId": "myJobRerunId", + "api-version": "preview" }, "responses": { "200": { diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/jobs_resume.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/jobs_resume.json new file mode 100644 index 000000000000..378d65ebec23 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/jobs_resume.json @@ -0,0 +1,14 @@ +{ + "title": "Resume a stopped job", + "description": "Resume execution of an existing stoppped job.", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "jobId": "myJobId", + "api-version": "preview" + }, + "responses": { + "204": {} + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/jobs_stop.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/jobs_stop.json new file mode 100644 index 000000000000..a45dce0d05fb --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/jobs_stop.json @@ -0,0 +1,14 @@ +{ + "title": "Stop a running job", + "description": "Stop execution of a job that is currently running.", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "jobId": "myJobId", + "api-version": "preview" + }, + "responses": { + "204": {} + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/modules_commands_send.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/modules_commands_send.json new file mode 100644 index 000000000000..dc69f4be592d --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/modules_commands_send.json @@ -0,0 +1,28 @@ +{ + "title": "Send command", + "description": "Send a command to a device.", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceId": "mx1", + "moduleName": "Camera", + "componentName": "componentA", + "commandName": "Reboot", + "api-version": "preview", + "body": { + "request": { + "SafeMode": true + } + } + }, + "responses": { + "201": { + "body": { + "request": { + "SafeMode": true + } + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/modules_commandshistory_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/modules_commandshistory_get.json new file mode 100644 index 000000000000..ceee74ff3afd --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/modules_commandshistory_get.json @@ -0,0 +1,26 @@ +{ + "title": "Get command history within a module", + "description": "Get the most recent invocaion of a command from within a module.", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceId": "mx1", + "moduleName": "camera", + "componentName": "componentA", + "commandName": "AdjustFrameRate", + "api-version": "preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "response": "Success", + "responseCode": 200 + } + ] + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/modules_properties_components_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/modules_properties_components_get.json new file mode 100644 index 000000000000..74084adc3129 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/modules_properties_components_get.json @@ -0,0 +1,34 @@ +{ + "title": "Get device properties", + "description": "Get the current values of all device properties.", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceId": "mx1", + "moduleName": "module_env", + "componentName": "componentA", + "api-version": "preview" + }, + "responses": { + "200": { + "body": { + "SensitivityDial": 50, + "Status": 66.82181229066656, + "$metadata": { + "SensitivityDial": { + "desiredValue": 50, + "desiredVersion": 3, + "ackVersion": 1, + "ackDescription": "Ok", + "ackCode": 200, + "lastUpdateTime": "2020-04-27T22:08:55.1149957Z" + }, + "Status": { + "lastUpdateTime": "2020-04-27T22:09:25.1151948Z" + } + } + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/modules_properties_components_set.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/modules_properties_components_set.json new file mode 100644 index 000000000000..905c5482fed3 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/modules_properties_components_set.json @@ -0,0 +1,33 @@ +{ + "title": "Set properties of a module within a component", + "description": "Replace all values of read-write properties of a module within a single component", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceId": "mx1", + "moduleName": "module_env", + "componentName": "componentA", + "api-version": "preview", + "body": { + "SensitivityDial": 300 + } + }, + "responses": { + "202": { + "body": { + "SensitivityDial": 50, + "$metadata": { + "SensitivityDial": { + "desiredValue": 300, + "desiredVersion": 3, + "ackVersion": 1, + "ackDescription": "Ok", + "ackCode": 200, + "lastUpdateTime": "2020-04-27T22:08:55.1149957Z" + } + } + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_properties_components_update.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/modules_properties_components_update.json similarity index 81% rename from specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_properties_components_update.json rename to specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/modules_properties_components_update.json index 564280da66be..47802ca8e52e 100644 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_properties_components_update.json +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/modules_properties_components_update.json @@ -3,10 +3,12 @@ "description": "Update some or all values of read-write properties of a module within a single component", "parameters": { "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", "subdomain": "appsubdomain", - "device_id": "mx1", - "module_name": "module_env", - "component_name": "componentA", + "deviceId": "mx1", + "moduleName": "module_env", + "componentName": "componentA", + "api-version": "preview", "body": { "SensitivityDial": 300 } diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/modules_properties_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/modules_properties_get.json new file mode 100644 index 000000000000..fcc7eba460c8 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/modules_properties_get.json @@ -0,0 +1,35 @@ +{ + "title": "Get properties of a module", + "description": "Get the current values of all device properties within a module.", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceId": "mx1", + "moduleName": "module_env", + "api-version": "preview" + }, + "responses": { + "200": { + "body": { + "componentA": { + "SensitivityDial": 50, + "Status": 25.494280816287844, + "$metadata": { + "SensitivityDial": { + "desiredValue": 50, + "desiredVersion": 3, + "ackVersion": 1, + "ackDescription": "Ok", + "ackCode": 200, + "lastUpdateTime": "2020-04-27T22:08:55.1149957Z" + }, + "Status": { + "lastUpdateTime": "2020-04-27T22:19:31.9485342Z" + } + } + } + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_properties_set.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/modules_properties_set.json similarity index 85% rename from specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_properties_set.json rename to specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/modules_properties_set.json index aeb42348b373..743646c7da91 100644 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_properties_set.json +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/modules_properties_set.json @@ -3,9 +3,11 @@ "description": "Set the values of all read-write properties of a module", "parameters": { "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", "subdomain": "appsubdomain", - "device_id": "mx1", - "module_name": "module_env", + "deviceId": "mx1", + "moduleName": "module_env", + "api-version": "preview", "body": { "componentA": { "SensitivityDial": 200 diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/modules_properties_update.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/modules_properties_update.json new file mode 100644 index 000000000000..3d29277ed092 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/modules_properties_update.json @@ -0,0 +1,36 @@ +{ + "title": "Update device properties of a module", + "description": "Update some or all values read-write properties of a module", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceId": "mx1", + "moduleName": "module_env", + "api-version": "preview", + "body": { + "componentA": { + "SensitivityDial": 200 + } + } + }, + "responses": { + "202": { + "body": { + "componentA": { + "SensitivityDial": 75, + "$metadata": { + "SensitivityDial": { + "desiredValue": 200, + "desiredVersion": 3, + "ackVersion": 1, + "ackDescription": "Ok", + "ackCode": 200, + "lastUpdateTime": "2020-04-27T22:08:55.1149957Z" + } + } + } + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/modules_telemetry_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/modules_telemetry_get.json new file mode 100644 index 000000000000..a6548e0167cb --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/modules_telemetry_get.json @@ -0,0 +1,25 @@ +{ + "title": "Get telemetry from a module", + "description": "Get the last known value of a telemetry stream from a module.", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceId": "mx1", + "moduleName": "environment", + "componentName": "componentA", + "telemetryName": "ambient", + "api-version": "preview" + }, + "responses": { + "200": { + "body": { + "value": { + "temperature": 20.961113326000568, + "humidity": 24 + }, + "timestamp": "2020-04-16T03:24:44.84Z" + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/roles_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/roles_get.json new file mode 100644 index 000000000000..efd4db0d33d0 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/roles_get.json @@ -0,0 +1,19 @@ +{ + "title": "Get role by Id", + "description": "Get a role by Id.", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "roleId": "ca310b8d-2f4a-44e0-a36e-957c202cd8d4", + "api-version": "preview" + }, + "responses": { + "200": { + "body": { + "id": "ca310b8d-2f4a-44e0-a36e-957c202cd8d4", + "displayName": "Administrator" + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/roles_list.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/roles_list.json new file mode 100644 index 000000000000..68407be7a5a3 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/roles_list.json @@ -0,0 +1,30 @@ +{ + "title": "List roles", + "description": "List roles in your application.", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "api-version": "preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "ca310b8d-2f4a-44e0-a36e-957c202cd8d4", + "displayName": "Administrator" + }, + { + "id": "344138e9-8de4-4497-8c54-5237e96d6aaf", + "displayName": "Builder" + }, + { + "id": "ae2c9854-393b-4f97-8c42-479d70ce626e", + "displayName": "Operator" + } + ] + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/users_delete.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/users_delete.json new file mode 100644 index 000000000000..f4501376b06f --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/users_delete.json @@ -0,0 +1,14 @@ +{ + "title": "Remove a user", + "description": "Remove a user from the application by Id.", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "userId": "abc", + "api-version": "preview" + }, + "responses": { + "204": {} + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/users_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/users_get.json new file mode 100644 index 000000000000..e141d006ab9b --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/users_get.json @@ -0,0 +1,25 @@ +{ + "title": "Get a user in your application", + "description": "Get a user by Id in your application.", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "userId": "abc", + "api-version": "preview" + }, + "responses": { + "200": { + "body": { + "id": "abc", + "type": "EmailUser", + "roles": [ + { + "role": "ca310b8d-2f4a-44e0-a36e-957c202cd8d4" + } + ], + "email": "alice@contoso.com" + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/users_list.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/users_list.json new file mode 100644 index 000000000000..e60066408299 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/users_list.json @@ -0,0 +1,39 @@ +{ + "title": "List users in your application", + "description": "Get a list of users in your application.", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "api-version": "preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "af0d5b8f-7a69-4521-868e-19745fae353f", + "type": "EmailUser", + "roles": [ + { + "role": "ca310b8d-2f4a-44e0-a36e-957c202cd8d4" + } + ], + "email": "alice@contoso.com" + }, + { + "id": "123", + "type": "ServicePrincipalUser", + "roles": [ + { + "role": "ca310b8d-2f4a-44e0-a36e-957c202cd8d4" + } + ], + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "objectId": "9071c899-bce0-4862-b208-75dabae226a9" + } + ] + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/users_set.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/users_set.json new file mode 100644 index 000000000000..f9f58c4566c9 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/users_set.json @@ -0,0 +1,33 @@ +{ + "title": "Add or update an email user in your application", + "description": "Add or update an email user in your application.", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "userId": "123", + "api-version": "preview", + "body": { + "type": "EmailUser", + "roles": [ + { + "role": "" + } + ], + "email": "bob@contoso.com" + } + }, + "responses": { + "200": { + "body": { + "type": "EmailUser", + "roles": [ + { + "role": "" + } + ], + "email": "bob@contoso.com" + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/users_set_serviceprincipal.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/users_set_serviceprincipal.json new file mode 100644 index 000000000000..28d14a9e61a4 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/users_set_serviceprincipal.json @@ -0,0 +1,36 @@ +{ + "title": "Add or replace a service principal in your application", + "description": "Add or replace an AAD service principal in your application.", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "userId": "123", + "api-version": "preview", + "body": { + "type": "ServicePrincipalUser", + "tenantId": "", + "objectId": "", + "roles": [ + { + "role": "" + } + ] + } + }, + "responses": { + "200": { + "body": { + "id": "123", + "type": "ServicePrincipalUser", + "tenantId": "", + "objectId": "", + "roles": [ + { + "role": "" + } + ] + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/users_update.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/users_update.json similarity index 85% rename from specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/users_update.json rename to specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/users_update.json index b78b7ea88eb6..f0ad7ce8cce5 100644 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/users_update.json +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/examples/users_update.json @@ -3,8 +3,10 @@ "description": "Update a user in your application.", "parameters": { "centralDnsSuffixInPath": "azureiotcentral.com", + "baseDomain": "azureiotcentral.com", "subdomain": "appsubdomain", - "user_id": "123", + "userId": "123", + "api-version": "preview", "body": { "roles": [ { diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/iotcentral.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/iotcentral.json new file mode 100644 index 000000000000..216624539754 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2021-04-30-preview/iotcentral.json @@ -0,0 +1,3384 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure IoT Central", + "description": "Azure IoT Central is a service that makes it easy to connect, monitor, and manage your IoT devices at scale.", + "version": "preview" + }, + "x-ms-parameterized-host": { + "hostTemplate": "{subdomain}.{baseDomain}", + "parameters": [ + { + "$ref": "#/parameters/BaseDomain" + }, + { + "$ref": "#/parameters/Subdomain" + } + ] + }, + "basePath": "/api", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "definitions": { + "ADGroupUser": { + "allOf": [ + { + "$ref": "#/definitions/User" + } + ], + "type": "object", + "properties": { + "tenantId": { + "description": "The AAD tenant ID of the AD Group.", + "type": "string" + }, + "objectId": { + "description": "The AAD object ID of the AD Group.", + "type": "string" + } + }, + "required": [ + "tenantId", + "objectId" + ] + }, + "ApiToken": { + "allOf": [ + { + "$ref": "#/definitions/Permission" + } + ], + "type": "object", + "properties": { + "id": { + "description": "Unique ID of the API token.", + "type": "string", + "readOnly": true + }, + "token": { + "description": "Value of the API token.", + "type": "string", + "readOnly": true + }, + "expiry": { + "description": "String-formatted date representing the time when the token expires.", + "type": "string", + "format": "date-time" + } + } + }, + "ApiTokenCollection": { + "type": "object", + "properties": { + "value": { + "description": "The collection of API tokens.", + "type": "array", + "items": { + "$ref": "#/definitions/ApiToken" + } + }, + "nextLink": { + "description": "URL to get the next page of API tokens.", + "type": "string" + } + }, + "required": [ + "value" + ] + }, + "Attestation": { + "type": "object", + "properties": { + "type": { + "description": "Type of the attestation.", + "type": "string" + } + }, + "required": [ + "type" + ], + "discriminator": "type" + }, + "CloudPropertyJobData": { + "allOf": [ + { + "$ref": "#/definitions/JobData" + } + ] + }, + "Collection": { + "type": "object", + "properties": { + "value": { + "description": "The collection of entities.", + "type": "array", + "items": { + "type": "object" + } + }, + "nextLink": { + "description": "URL to get the next page of entities.", + "type": "string" + } + }, + "required": [ + "value" + ] + }, + "CommandJobData": { + "allOf": [ + { + "$ref": "#/definitions/JobData" + } + ] + }, + "ContinuousDataExport": { + "type": "object", + "properties": { + "id": { + "description": "Unique ID of the continuous data export.", + "type": "string", + "readOnly": true + }, + "etag": { + "description": "ETag used to prevent conflict in continuous data export updates.", + "type": "string" + }, + "displayName": { + "description": "Display name of the continuous data export.", + "type": "string" + }, + "endpoint": { + "description": "Location where exported data should be sent.", + "$ref": "#/definitions/Endpoint" + }, + "status": { + "description": "Indicates whether the continuous data export is starting, running, etc.", + "type": "string", + "readOnly": true + }, + "enabled": { + "description": "Boolean indicating whether the continuous data export should be running or not.", + "type": "boolean" + }, + "sources": { + "description": "Data sources to export to the endpoint.", + "type": "array", + "items": { + "type": "string", + "enum": [ + "devices", + "deviceTemplates", + "telemetry" + ] + }, + "minItems": 1 + } + }, + "required": [ + "endpoint", + "enabled", + "sources" + ] + }, + "ContinuousDataExportCollection": { + "type": "object", + "properties": { + "value": { + "description": "The collection of continuous data exports.", + "type": "array", + "items": { + "$ref": "#/definitions/ContinuousDataExport" + } + }, + "nextLink": { + "description": "URL to get the next page of continuous data exports.", + "type": "string" + } + }, + "required": [ + "value" + ] + }, + "Device": { + "type": "object", + "properties": { + "id": { + "description": "Unique ID of the device.", + "type": "string", + "readOnly": true + }, + "etag": { + "description": "ETag used to prevent conflict in device updates.", + "type": "string" + }, + "displayName": { + "description": "Display name of the device.", + "type": "string" + }, + "instanceOf": { + "description": "The device template definition for the device.", + "type": "string" + }, + "approved": { + "description": "Whether the device has been approved to connect to IoT Central.", + "type": "boolean" + }, + "provisioned": { + "description": "Whether resources have been allocated for the device.", + "type": "boolean", + "readOnly": true + }, + "simulated": { + "description": "Whether the device is simulated.", + "type": "boolean" + } + } + }, + "DeviceCloudProperties": { + "description": "Cloud property values associated with the device.", + "type": "object", + "additionalProperties": true + }, + "DeviceCollection": { + "type": "object", + "properties": { + "value": { + "description": "The collection of devices.", + "type": "array", + "items": { + "$ref": "#/definitions/Device" + } + }, + "nextLink": { + "description": "URL to get the next page of devices.", + "type": "string" + } + }, + "required": [ + "value" + ] + }, + "DeviceCommand": { + "type": "object", + "properties": { + "id": { + "description": "The request ID of the device command execution.", + "type": "string", + "readOnly": true + }, + "connectionTimeout": { + "description": "Connection timeout in seconds to wait for a disconnected device to come online. Defaults to 0 seconds.", + "type": "integer", + "minimum": 0, + "maximum": 30 + }, + "responseTimeout": { + "description": "Response timeout in seconds to wait for a command completion on a device. Defaults to 30 seconds.", + "type": "integer", + "minimum": 5, + "maximum": 30 + }, + "request": { + "description": "The payload for the device command." + }, + "response": { + "description": "The payload of the device command response.", + "readOnly": true + }, + "responseCode": { + "description": "The status code of the device command response.", + "type": "integer", + "readOnly": true + } + } + }, + "DeviceCommandCollection": { + "type": "object", + "properties": { + "value": { + "description": "The collection of device command executions.", + "type": "array", + "items": { + "$ref": "#/definitions/DeviceCommand" + } + }, + "nextLink": { + "description": "URL to get the next page of device command executions.", + "type": "string" + } + }, + "required": [ + "value" + ] + }, + "DeviceCredentials": { + "type": "object", + "properties": { + "idScope": { + "description": "ID scope for connecting to the IoT Central application.", + "type": "string" + }, + "symmetricKey": { + "description": "The symmetric key credentials for the device.", + "$ref": "#/definitions/SymmetricKey" + }, + "x509": { + "description": "The X.509 credential information for the device.", + "$ref": "#/definitions/X509" + }, + "tpm": { + "description": "The TPM credentials for the device.", + "$ref": "#/definitions/Tpm" + } + }, + "required": [ + "idScope" + ] + }, + "DeviceGroup": { + "type": "object", + "properties": { + "id": { + "description": "Unique ID of the device group.", + "type": "string", + "readOnly": true + }, + "displayName": { + "description": "Display name of the device group.", + "type": "string" + } + } + }, + "DeviceGroupCollection": { + "type": "object", + "properties": { + "value": { + "description": "The collection of device groups.", + "type": "array", + "items": { + "$ref": "#/definitions/DeviceGroup" + } + }, + "nextLink": { + "description": "URL to get the next page of device groups.", + "type": "string" + } + }, + "required": [ + "value" + ] + }, + "DeviceProperties": { + "description": "Property values associated with the device.", + "type": "object", + "additionalProperties": true + }, + "DeviceTelemetry": { + "type": "object", + "properties": { + "value": { + "description": "The last known value of this device telemetry." + }, + "timestamp": { + "description": "String-formatted date representing the time when the telemetry value was sent.", + "type": "string", + "format": "date-time" + } + } + }, + "DeviceTemplate": { + "type": "object", + "properties": { + "id": { + "description": "Unique ID of the device template.", + "type": "string", + "readOnly": true + }, + "types": { + "description": "The types of device to which this template applies.", + "type": "array", + "items": { + "type": "string" + } + }, + "etag": { + "description": "ETag used to prevent conflict in device template updates.", + "type": "string" + }, + "displayName": { + "description": "Display name of the device template.", + "type": "string" + }, + "description": { + "description": "Detailed description of the device template.", + "type": "string" + }, + "capabilityModel": { + "description": "The capability model utilized by this device template.", + "type": "object" + }, + "solutionModel": { + "description": "The solution model utilized by this device template.", + "type": "object" + } + }, + "required": [ + "types", + "capabilityModel" + ] + }, + "DeviceTemplateCollection": { + "type": "object", + "properties": { + "value": { + "description": "The collection of device templates.", + "type": "array", + "items": { + "$ref": "#/definitions/DeviceTemplate" + } + }, + "nextLink": { + "description": "URL to get the next page of device templates.", + "type": "string" + } + }, + "required": [ + "value" + ] + }, + "EmailUser": { + "allOf": [ + { + "$ref": "#/definitions/User" + } + ], + "type": "object", + "properties": { + "email": { + "description": "Email address of the user.", + "type": "string", + "format": "email" + } + }, + "required": [ + "email" + ] + }, + "Endpoint": { + "type": "object", + "properties": { + "type": { + "description": "Type of the endpoint.", + "type": "string" + }, + "connectionString": { + "description": "Information for connecting to the endpoint.", + "type": "string" + }, + "name": { + "description": "Name of the entity to send data to.", + "type": "string" + } + }, + "required": [ + "type", + "connectionString", + "name" + ], + "discriminator": "type" + }, + "EventHubsEndpoint": { + "allOf": [ + { + "$ref": "#/definitions/Endpoint" + } + ] + }, + "Job": { + "type": "object", + "properties": { + "id": { + "description": "Unique ID of the job.", + "type": "string", + "readOnly": true + }, + "displayName": { + "description": "Display name of the job.", + "type": "string" + }, + "description": { + "description": "Detailed description of the job.", + "type": "string" + }, + "group": { + "description": "The ID of the device group on which to execute the job.", + "type": "string" + }, + "batch": { + "description": "The batching configuration for the job.", + "$ref": "#/definitions/JobBatch" + }, + "cancellationThreshold": { + "description": "The cancellation threshold for the job.", + "$ref": "#/definitions/JobCancellationThreshold" + }, + "data": { + "description": "The capabilities being updated by the job and the values with which they are being updated.", + "type": "array", + "items": { + "$ref": "#/definitions/JobData" + }, + "minItems": 1 + }, + "status": { + "description": "Indicates whether the job is starting, running, etc.", + "type": "string", + "readOnly": true + } + }, + "required": [ + "group", + "data" + ] + }, + "JobBatch": { + "type": "object", + "properties": { + "type": { + "description": "Whether batching is done on a specified number of devices or a percentage of the total devices.", + "type": "string", + "enum": [ + "number", + "percentage" + ] + }, + "value": { + "description": "The number or percentage of devices on which batching is done.", + "type": "number" + } + }, + "required": [ + "type", + "value" + ] + }, + "JobCancellationThreshold": { + "type": "object", + "properties": { + "type": { + "description": "Whether the cancellation threshold is per a specified number of devices or a percentage of the total devices.", + "type": "string", + "enum": [ + "number", + "percentage" + ] + }, + "value": { + "description": "The number or percentage of devices on which the cancellation threshold is applied.", + "type": "number" + }, + "batch": { + "description": "Whether the cancellation threshold applies per-batch or to the overall job.", + "type": "boolean" + } + }, + "required": [ + "type", + "value" + ] + }, + "JobCollection": { + "type": "object", + "properties": { + "value": { + "description": "The collection of jobs.", + "type": "array", + "items": { + "$ref": "#/definitions/Job" + } + }, + "nextLink": { + "description": "URL to get the next page of jobs.", + "type": "string" + } + }, + "required": [ + "value" + ] + }, + "JobData": { + "type": "object", + "properties": { + "type": { + "description": "Type of the job data.", + "type": "string" + }, + "target": { + "description": "The device template which defines the target capability for the job.", + "type": "string" + }, + "path": { + "description": "The path to the target capability within the device template.", + "type": "string" + }, + "value": { + "description": "The value used to update the target capability, if any." + } + }, + "required": [ + "type", + "target", + "path" + ], + "discriminator": "type" + }, + "JobDeviceStatus": { + "properties": { + "id": { + "description": "ID of the device whose job status is being provided.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "Indicates whether the job is starting, running, etc. for the given device.", + "type": "string", + "readOnly": true + } + } + }, + "JobDeviceStatusCollection": { + "type": "object", + "properties": { + "value": { + "description": "The collection of job device statuses.", + "type": "array", + "items": { + "$ref": "#/definitions/JobDeviceStatus" + } + }, + "nextLink": { + "description": "URL to get the next page of job device statuses.", + "type": "string" + } + }, + "required": [ + "value" + ] + }, + "Permission": { + "type": "object", + "properties": { + "roles": { + "description": "List of role assignments that specify the permissions to access the application.", + "type": "array", + "items": { + "$ref": "#/definitions/RoleAssignment" + }, + "minItems": 1 + } + }, + "required": [ + "roles" + ] + }, + "PropertyJobData": { + "allOf": [ + { + "$ref": "#/definitions/JobData" + } + ] + }, + "Role": { + "type": "object", + "properties": { + "id": { + "description": "Unique ID of the role.", + "type": "string", + "readOnly": true + }, + "displayName": { + "description": "Display name of the role.", + "type": "string" + } + } + }, + "RoleAssignment": { + "type": "object", + "properties": { + "role": { + "description": "ID of the role for this role assignment.", + "type": "string" + } + }, + "required": [ + "role" + ] + }, + "RoleCollection": { + "type": "object", + "properties": { + "value": { + "description": "The collection of roles.", + "type": "array", + "items": { + "$ref": "#/definitions/Role" + } + }, + "nextLink": { + "description": "URL to get the next page of roles.", + "type": "string" + } + }, + "required": [ + "value" + ] + }, + "ServiceBusQueueEndpoint": { + "allOf": [ + { + "$ref": "#/definitions/Endpoint" + } + ] + }, + "ServiceBusTopicEndpoint": { + "allOf": [ + { + "$ref": "#/definitions/Endpoint" + } + ] + }, + "ServicePrincipalUser": { + "allOf": [ + { + "$ref": "#/definitions/User" + }, + { + "type": "object", + "properties": { + "tenantId": { + "description": "The AAD tenant ID of the service principal.", + "type": "string" + }, + "objectId": { + "description": "The AAD object ID of the service principal.", + "type": "string" + } + }, + "required": [ + "tenantId", + "objectId" + ] + } + ] + }, + "StorageEndpoint": { + "allOf": [ + { + "$ref": "#/definitions/Endpoint" + } + ] + }, + "SymmetricKey": { + "type": "object", + "properties": { + "primaryKey": { + "description": "The primary key for this credential.", + "type": "string" + }, + "secondaryKey": { + "description": "The secondary key for this credential.", + "type": "string" + } + }, + "required": [ + "primaryKey", + "secondaryKey" + ] + }, + "SymmetricKeyAttestation": { + "allOf": [ + { + "$ref": "#/definitions/Attestation" + } + ], + "type": "object", + "properties": { + "symmetricKey": { + "description": "The symmetric key credentials for this attestation.", + "$ref": "#/definitions/SymmetricKey" + } + }, + "required": [ + "symmetricKey" + ] + }, + "Tpm": { + "type": "object", + "properties": { + "endorsementKey": { + "description": "The TPM endorsement key for this credential.", + "type": "string" + } + }, + "required": [ + "endorsementKey" + ] + }, + "TpmAttestation": { + "allOf": [ + { + "$ref": "#/definitions/Attestation" + } + ], + "type": "object", + "properties": { + "tpm": { + "description": "The TPM credentials for this attestation.", + "$ref": "#/definitions/Tpm" + } + }, + "required": [ + "tpm" + ] + }, + "User": { + "allOf": [ + { + "$ref": "#/definitions/Permission" + } + ], + "type": "object", + "properties": { + "id": { + "description": "Unique ID of the user.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Type of the user.", + "type": "string" + } + }, + "required": [ + "type" + ], + "discriminator": "type" + }, + "UserCollection": { + "type": "object", + "properties": { + "value": { + "description": "The collection of users.", + "type": "array", + "items": { + "$ref": "#/definitions/User" + } + }, + "nextLink": { + "description": "URL to get the next page of users.", + "type": "string" + } + }, + "required": [ + "value" + ] + }, + "X509": { + "type": "object", + "properties": { + "clientCertificates": { + "description": "The X.509 client certificates for this credential.", + "$ref": "#/definitions/X509Certificates" + } + } + }, + "X509Attestation": { + "allOf": [ + { + "$ref": "#/definitions/Attestation" + } + ], + "type": "object", + "properties": { + "x509": { + "description": "The X.509 credentials for this attestation.", + "$ref": "#/definitions/X509" + } + }, + "required": [ + "x509" + ] + }, + "X509Certificate": { + "type": "object", + "properties": { + "certificate": { + "description": "The string representation of this certificate.", + "type": "string" + }, + "info": { + "description": "Information about this certificate.", + "readOnly": true, + "$ref": "#/definitions/X509CertificateInfo" + } + } + }, + "X509CertificateInfo": { + "type": "object", + "properties": { + "sha1Thumbprint": { + "description": "The SHA-1 hash value of the certificate.", + "type": "string" + } + }, + "required": [ + "sha1Thumbprint" + ] + }, + "X509Certificates": { + "type": "object", + "properties": { + "primary": { + "description": "The primary X.509 certificate for this credential.", + "$ref": "#/definitions/X509Certificate" + }, + "secondary": { + "description": "The secondary X.509 certificate for this credential.", + "$ref": "#/definitions/X509Certificate" + } + }, + "required": [ + "primary" + ] + } + }, + "paths": { + "/apiTokens": { + "get": { + "operationId": "ApiTokens_List", + "summary": "Get the list of API tokens in an application. The token value will never be returned for security reasons.", + "x-ms-examples": { + "List API tokens": { + "$ref": "./examples/apitoken_list.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + } + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ApiTokenCollection" + } + } + } + } + }, + "/apiTokens/{tokenId}": { + "get": { + "operationId": "ApiTokens_Get", + "summary": "Get an API token by ID.", + "x-ms-examples": { + "Get API token by ID": { + "$ref": "./examples/apitoken_get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "in": "path", + "name": "tokenId", + "description": "Unique ID for the API token.", + "type": "string", + "required": true + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ApiToken" + } + } + } + }, + "put": { + "operationId": "ApiTokens_Create", + "summary": "Create a new API token in the application to use in the IoT Central public API. The token value will be returned in the response, and won't be returned again in subsequent requests.", + "x-ms-examples": { + "Create API token": { + "$ref": "./examples/apitoken_create.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "in": "path", + "name": "tokenId", + "description": "Unique ID for the API token.", + "type": "string", + "required": true + }, + { + "in": "body", + "name": "body", + "description": "API token body.", + "schema": { + "$ref": "#/definitions/ApiToken" + }, + "required": true + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ApiToken" + } + } + } + }, + "delete": { + "operationId": "ApiTokens_Remove", + "summary": "Delete an API token.", + "x-ms-examples": { + "Delete API token": { + "$ref": "./examples/apitoken_delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "in": "path", + "name": "tokenId", + "description": "Unique ID for the API token.", + "type": "string", + "required": true + } + ], + "responses": { + "204": { + "description": "Success" + } + } + } + }, + "/continuousDataExports": { + "get": { + "operationId": "ContinuousDataExports_List", + "summary": "Get the list of continuous data exports in an application.", + "x-ms-examples": { + "List exports": { + "$ref": "./examples/continuousdataexports_list.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + } + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ContinuousDataExportCollection" + } + } + } + } + }, + "/continuousDataExports/{exportId}": { + "get": { + "operationId": "ContinuousDataExports_Get", + "summary": "Get a continuous data export by ID.", + "x-ms-examples": { + "Get export": { + "$ref": "./examples/continuousdataexports_get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "in": "path", + "name": "exportId", + "description": "Unique ID for the continuous data export.", + "type": "string", + "required": true + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ContinuousDataExport" + } + } + } + }, + "put": { + "operationId": "ContinuousDataExports_Create", + "summary": "Create a new continuous data export.", + "x-ms-examples": { + "Create or update export": { + "$ref": "./examples/continuousdataexports_set.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "in": "path", + "name": "exportId", + "description": "Unique ID for the continuous data export.", + "type": "string", + "required": true + }, + { + "in": "body", + "name": "body", + "description": "Data export body.", + "schema": { + "$ref": "#/definitions/ContinuousDataExport" + }, + "required": true + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ContinuousDataExport" + } + } + } + }, + "patch": { + "operationId": "ContinuousDataExports_Update", + "summary": "Update an existing continuous data export via patch.", + "x-ms-examples": { + "Update export": { + "$ref": "./examples/continuousdataexports_update.json" + } + }, + "consumes": [ + "application/json", + "application/json-patch+json" + ], + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "in": "path", + "name": "exportId", + "description": "Unique ID for the continuous data export.", + "type": "string", + "required": true + }, + { + "in": "body", + "name": "body", + "description": "Data export patch body.", + "schema": { + "type": "object" + }, + "required": true + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ContinuousDataExport" + } + } + } + }, + "delete": { + "operationId": "ContinuousDataExports_Remove", + "summary": "Delete a continuous data export.", + "x-ms-examples": { + "Delete export": { + "$ref": "./examples/continuousdataexports_delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "in": "path", + "name": "exportId", + "description": "Unique ID for the continuous data export.", + "type": "string", + "required": true + } + ], + "responses": { + "204": { + "description": "Success" + } + } + } + }, + "/deviceGroups": { + "get": { + "operationId": "DeviceGroups_List", + "summary": "Get the list of device groups in an application.", + "x-ms-examples": { + "List device groups": { + "$ref": "./examples/devicegroups_list.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + } + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceGroupCollection" + } + } + } + } + }, + "/deviceTemplates": { + "get": { + "operationId": "DeviceTemplates_List", + "summary": "Get the list of device templates in an application", + "x-ms-examples": { + "List device templates": { + "$ref": "./examples/devicetemplates_list.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + } + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceTemplateCollection" + } + } + } + } + }, + "/deviceTemplates/{deviceTemplateId}": { + "get": { + "operationId": "DeviceTemplates_Get", + "summary": "Get a device template by ID", + "x-ms-examples": { + "Get a device template by Id": { + "$ref": "./examples/devicetemplates_get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceTemplateId" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceTemplate" + } + } + } + }, + "put": { + "operationId": "DeviceTemplates_Create", + "summary": "Publish a new device template. Default views will be automatically generated for new device templates created this way.", + "x-ms-examples": { + "Create a device template": { + "$ref": "./examples/devicetemplates_create.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceTemplateId" + }, + { + "in": "body", + "name": "body", + "description": "Device template body.", + "schema": { + "$ref": "#/definitions/DeviceTemplate" + }, + "required": true + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceTemplate" + } + } + } + }, + "patch": { + "operationId": "DeviceTemplates_Update", + "summary": "Update the cloud properties and overrides of an existing device template via patch.", + "x-ms-examples": { + "Update a device template": { + "$ref": "./examples/devicetemplates_create.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceTemplateId" + }, + { + "in": "body", + "name": "body", + "description": "Device template patch body.", + "schema": { + "type": "object" + }, + "required": true + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceTemplate" + } + } + } + }, + "delete": { + "operationId": "DeviceTemplates_Remove", + "summary": "Delete a device template", + "description": "Delete an existing device template by device ID.", + "x-ms-examples": { + "Delete a device template by Id": { + "$ref": "./examples/devicetemplates_delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceTemplateId" + } + ], + "responses": { + "204": { + "description": "Success" + } + } + } + }, + "/deviceTemplates/{deviceTemplateId}/devices": { + "get": { + "operationId": "DeviceTemplates_ListDevices", + "summary": "Get devices for a template", + "x-ms-examples": { + "List devices associated to a device template": { + "$ref": "./examples/devices_list_by_template.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceTemplateId" + } + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceCollection" + } + } + } + } + }, + "/deviceTemplates/{deviceTemplateId}/merged": { + "get": { + "operationId": "DeviceTemplates_GetMerged", + "summary": "Get a merged device template by ID", + "x-ms-examples": { + "Get a merged device template by Id": { + "$ref": "./examples/devicetemplates_get_merged.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceTemplateId" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceTemplate" + } + } + } + } + }, + "/devices": { + "get": { + "operationId": "Devices_List", + "summary": "Get the list of devices in an application", + "x-ms-examples": { + "List devices": { + "$ref": "./examples/devices_list.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + } + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceCollection" + } + } + } + } + }, + "/devices/{deviceId}": { + "get": { + "operationId": "Devices_Get", + "summary": "Get a device by ID", + "description": "Get details about an existing device by device ID.", + "x-ms-examples": { + "Get device by Id": { + "$ref": "./examples/devices_get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Device" + } + } + } + }, + "put": { + "operationId": "Devices_Create", + "summary": "Create or update a device", + "description": "Create a new device.", + "x-ms-examples": { + "Create device": { + "$ref": "./examples/devices_create.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "in": "body", + "name": "body", + "description": "Device body.", + "schema": { + "$ref": "#/definitions/Device" + }, + "required": true + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Device" + } + } + } + }, + "patch": { + "operationId": "Devices_Update", + "summary": "Update a device via patch", + "description": "Update an existing device by ID.", + "x-ms-examples": { + "Update device": { + "$ref": "./examples/devices_update.json" + } + }, + "consumes": [ + "application/json", + "application/json-patch+json" + ], + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "in": "body", + "name": "body", + "description": "Device patch body.", + "schema": { + "type": "object" + }, + "required": true + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Device" + } + } + } + }, + "delete": { + "operationId": "Devices_Remove", + "summary": "Delete a device", + "description": "Delete an existing device by device ID.", + "x-ms-examples": { + "Delete device": { + "$ref": "./examples/devices_delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + } + ], + "responses": { + "204": { + "description": "Success" + } + } + } + }, + "/devices/{deviceId}/attestation": { + "get": { + "operationId": "Devices_GetAttestation", + "summary": "Get device attestation", + "x-ms-examples": { + "Get device attestation": { + "$ref": "./examples/devices_attestations_get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Attestation" + } + } + } + }, + "put": { + "operationId": "Devices_CreateAttestation", + "summary": "Create an individual device attestation", + "x-ms-examples": { + "Create or update device attestation - Symmetric Key": { + "$ref": "./examples/devices_attestations_set_symmetricKey.json" + }, + "Create or update device attestation - TPM": { + "$ref": "./examples/devices_attestations_set_tpm.json" + }, + "Create or update device attestation - X509": { + "$ref": "./examples/devices_attestations_set_x509.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "in": "body", + "name": "body", + "description": "Individual device attestation body.", + "schema": { + "$ref": "#/definitions/Attestation" + }, + "required": true + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Attestation" + } + } + } + }, + "patch": { + "operationId": "Devices_UpdateAttestation", + "summary": "Update an individual device attestation via patch", + "x-ms-examples": { + "Update device attestation - Symmetric Key": { + "$ref": "./examples/devices_attestations_set_symmetricKey.json" + }, + "Update device attestation - TPM": { + "$ref": "./examples/devices_attestations_set_tpm.json" + }, + "Update device attestation - X509": { + "$ref": "./examples/devices_attestations_set_x509.json" + } + }, + "consumes": [ + "application/json", + "application/json-patch+json" + ], + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "in": "body", + "name": "body", + "description": "Individual device attestation patch body.", + "schema": { + "type": "object" + }, + "required": true + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Attestation" + } + } + } + }, + "delete": { + "operationId": "Devices_RemoveAttestation", + "summary": "Remove an individual device attestation", + "x-ms-examples": { + "Delete device attestation": { + "$ref": "./examples/devices_attestations_delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + } + ], + "responses": { + "204": { + "description": "Success" + } + } + } + }, + "/devices/{deviceId}/cloudProperties": { + "get": { + "operationId": "Devices_GetCloudProperties", + "summary": "Get device cloud properties", + "description": "Get all cloud property values of a device by device ID.", + "x-ms-examples": { + "Get cloud properties": { + "$ref": "./examples/devices_cloudproperties_get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceCloudProperties" + } + } + } + }, + "put": { + "operationId": "Devices_ReplaceCloudProperties", + "summary": "Replace device cloud properties", + "description": "Update all cloud property values of a device by device ID.", + "x-ms-examples": { + "Update cloud properties": { + "$ref": "./examples/devices_cloudproperties_set.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "in": "body", + "name": "body", + "description": "Device properties.", + "schema": { + "$ref": "#/definitions/DeviceCloudProperties" + }, + "required": true + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceCloudProperties" + } + } + } + }, + "patch": { + "operationId": "Devices_UpdateCloudProperties", + "summary": "Update device cloud properties via patch", + "description": "Update cloud property values of a device by device ID.", + "x-ms-examples": { + "Update cloud properties": { + "$ref": "./examples/devices_cloudproperties_update.json" + } + }, + "consumes": [ + "application/json", + "application/json-patch+json" + ], + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "in": "body", + "name": "body", + "description": "Device properties patch.", + "schema": { + "type": "object" + }, + "required": true + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceCloudProperties" + } + } + } + } + }, + "/devices/{deviceId}/commands/{commandName}": { + "get": { + "operationId": "Devices_GetCommandHistory", + "summary": "Get device command history", + "x-ms-examples": { + "Get command history": { + "$ref": "./examples/devices_commandshistory_get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "$ref": "#/parameters/CommandName" + } + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceCommandCollection" + } + } + } + }, + "post": { + "operationId": "Devices_RunCommand", + "summary": "Run a device command", + "description": "Run a command on a device.", + "x-ms-examples": { + "Send command": { + "$ref": "./examples/devices_commands_send.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "$ref": "#/parameters/CommandName" + }, + { + "in": "body", + "name": "body", + "description": "Device command body.", + "schema": { + "$ref": "#/definitions/DeviceCommand" + }, + "required": true + } + ], + "responses": { + "201": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceCommand" + } + } + } + } + }, + "/devices/{deviceId}/components": { + "get": { + "operationId": "Devices_ListComponents", + "summary": "List the components present in a device", + "x-ms-examples": { + "List components": { + "$ref": "./examples/devices_components_get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Collection" + } + } + } + } + }, + "/devices/{deviceId}/components/{componentName}/commands/{commandName}": { + "get": { + "operationId": "Devices_GetComponentCommandHistory", + "summary": "Get component command history", + "x-ms-examples": { + "Get command history": { + "$ref": "./examples/devices_commandshistory_get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "$ref": "#/parameters/ComponentName" + }, + { + "$ref": "#/parameters/CommandName" + } + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceCommandCollection" + } + } + } + }, + "post": { + "operationId": "Devices_RunComponentCommand", + "summary": "Run a component command", + "description": "Run a command on a component.", + "x-ms-examples": { + "Send command": { + "$ref": "./examples/devices_commands_send.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "$ref": "#/parameters/ComponentName" + }, + { + "$ref": "#/parameters/CommandName" + }, + { + "in": "body", + "name": "body", + "description": "Device command body.", + "schema": { + "$ref": "#/definitions/DeviceCommand" + }, + "required": true + } + ], + "responses": { + "201": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceCommand" + } + } + } + } + }, + "/devices/{deviceId}/components/{componentName}/properties": { + "get": { + "operationId": "Devices_GetComponentProperties", + "summary": "Get device properties for a specific component", + "x-ms-examples": { + "Get properties on components": { + "$ref": "./examples/devices_properties_components_get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "$ref": "#/parameters/ComponentName" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceProperties" + } + } + } + }, + "put": { + "operationId": "Devices_ReplaceComponentProperties", + "summary": "Replace device properties for a specific component", + "x-ms-examples": { + "Update properties on components": { + "$ref": "./examples/devices_properties_components_set.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "$ref": "#/parameters/ComponentName" + }, + { + "in": "body", + "name": "body", + "description": "Device properties.", + "schema": { + "$ref": "#/definitions/DeviceProperties" + }, + "required": true + } + ], + "responses": { + "202": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceProperties" + } + } + } + }, + "patch": { + "operationId": "Devices_UpdateComponentProperties", + "summary": "Update device properties for a specific component via patch", + "x-ms-examples": { + "Update properties on components": { + "$ref": "./examples/devices_properties_components_update.json" + } + }, + "consumes": [ + "application/json", + "application/json-patch+json" + ], + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "$ref": "#/parameters/ComponentName" + }, + { + "in": "body", + "name": "body", + "description": "Device properties patch.", + "schema": { + "type": "object" + }, + "required": true + } + ], + "responses": { + "202": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceProperties" + } + } + } + } + }, + "/devices/{deviceId}/components/{componentName}/telemetry/{telemetryName}": { + "get": { + "operationId": "Devices_GetComponentTelemetryValue", + "summary": "Get component telemetry value", + "description": "Get the last telemetry value from a component.", + "x-ms-examples": { + "Get telemetry": { + "$ref": "./examples/devices_telemetry_get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "$ref": "#/parameters/ComponentName" + }, + { + "$ref": "#/parameters/TelemetryName" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceTelemetry" + } + } + } + } + }, + "/devices/{deviceId}/credentials": { + "get": { + "operationId": "Devices_GetCredentials", + "summary": "Get device credentials", + "x-ms-examples": { + "Get device credentials": { + "$ref": "./examples/devicecredentials_get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceCredentials" + } + } + } + } + }, + "/devices/{deviceId}/modules": { + "get": { + "operationId": "Devices_ListModules", + "summary": "List the modules present in a device", + "x-ms-examples": { + "List modules": { + "$ref": "./examples/devices_modules_get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Collection" + } + } + } + } + }, + "/devices/{deviceId}/modules/{moduleName}/commands/{commandName}": { + "get": { + "operationId": "Devices_GetModuleCommandHistory", + "summary": "Get module command history", + "x-ms-examples": { + "Get command history within module": { + "$ref": "./examples/modules_commandshistory_get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "$ref": "#/parameters/ModuleName" + }, + { + "$ref": "#/parameters/CommandName" + } + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceCommandCollection" + } + } + } + }, + "post": { + "operationId": "Devices_RunModuleCommand", + "summary": "Run a module command", + "description": "Run a command on a module.", + "x-ms-examples": { + "Send command to module": { + "$ref": "./examples/modules_commands_send.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "$ref": "#/parameters/ModuleName" + }, + { + "$ref": "#/parameters/CommandName" + }, + { + "in": "body", + "name": "body", + "description": "Device command body.", + "schema": { + "$ref": "#/definitions/DeviceCommand" + }, + "required": true + } + ], + "responses": { + "201": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceCommand" + } + } + } + } + }, + "/devices/{deviceId}/modules/{moduleName}/components": { + "get": { + "operationId": "Devices_ListModuleComponents", + "summary": "List the components present in a module", + "x-ms-examples": { + "List module components": { + "$ref": "./examples/devices_modules_components_get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "$ref": "#/parameters/ModuleName" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Collection" + } + } + } + } + }, + "/devices/{deviceId}/modules/{moduleName}/components/{componentName}/commands/{commandName}": { + "get": { + "operationId": "Devices_GetModuleComponentCommandHistory", + "summary": "Get module component command history", + "x-ms-examples": { + "Get command history within module": { + "$ref": "./examples/modules_commandshistory_get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "$ref": "#/parameters/ModuleName" + }, + { + "$ref": "#/parameters/ComponentName" + }, + { + "$ref": "#/parameters/CommandName" + } + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceCommandCollection" + } + } + } + }, + "post": { + "operationId": "Devices_RunModuleComponentCommand", + "summary": "Run a module component command", + "description": "Run a command on a module.", + "x-ms-examples": { + "Send command to module": { + "$ref": "./examples/modules_commands_send.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "$ref": "#/parameters/ModuleName" + }, + { + "$ref": "#/parameters/ComponentName" + }, + { + "$ref": "#/parameters/CommandName" + }, + { + "in": "body", + "name": "body", + "description": "Device command body.", + "schema": { + "$ref": "#/definitions/DeviceCommand" + }, + "required": true + } + ], + "responses": { + "201": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceCommand" + } + } + } + } + }, + "/devices/{deviceId}/modules/{moduleName}/components/{componentName}/properties": { + "get": { + "operationId": "Devices_GetModuleComponentProperties", + "summary": "Get module properties for a specific component", + "x-ms-examples": { + "Get properties of a module": { + "$ref": "./examples/modules_properties_components_get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "$ref": "#/parameters/ModuleName" + }, + { + "$ref": "#/parameters/ComponentName" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceProperties" + } + } + } + }, + "put": { + "operationId": "Devices_ReplaceModuleComponentProperties", + "summary": "Replace module properties for a specific component", + "x-ms-examples": { + "Update properties of a module within a component": { + "$ref": "./examples/modules_properties_components_set.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "$ref": "#/parameters/ModuleName" + }, + { + "$ref": "#/parameters/ComponentName" + }, + { + "in": "body", + "name": "body", + "description": "Module properties.", + "schema": { + "$ref": "#/definitions/DeviceProperties" + }, + "required": true + } + ], + "responses": { + "202": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceProperties" + } + } + } + }, + "patch": { + "operationId": "Devices_UpdateModuleComponentProperties", + "summary": "Update module properties for a specific component via patch", + "x-ms-examples": { + "Update properties of a module within a component": { + "$ref": "./examples/modules_properties_components_update.json" + } + }, + "consumes": [ + "application/json", + "application/json-patch+json" + ], + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "$ref": "#/parameters/ModuleName" + }, + { + "$ref": "#/parameters/ComponentName" + }, + { + "in": "body", + "name": "body", + "description": "Module properties patch.", + "schema": { + "type": "object" + }, + "required": true + } + ], + "responses": { + "202": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceProperties" + } + } + } + } + }, + "/devices/{deviceId}/modules/{moduleName}/components/{componentName}/telemetry/{telemetryName}": { + "get": { + "operationId": "Devices_GetModuleComponentTelemetryValue", + "summary": "Get module component telemetry value", + "description": "Get the last telemetry value from a module component.", + "x-ms-examples": { + "Get telemetry from module": { + "$ref": "./examples/modules_telemetry_get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "$ref": "#/parameters/ModuleName" + }, + { + "$ref": "#/parameters/ComponentName" + }, + { + "$ref": "#/parameters/TelemetryName" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceTelemetry" + } + } + } + } + }, + "/devices/{deviceId}/modules/{moduleName}/properties": { + "get": { + "operationId": "Devices_GetModuleProperties", + "summary": "Get module properties", + "description": "Get all property values of a module.", + "x-ms-examples": { + "Get properties of a module": { + "$ref": "./examples/modules_properties_get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "$ref": "#/parameters/ModuleName" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceProperties" + } + } + } + }, + "put": { + "operationId": "Devices_ReplaceModuleProperties", + "summary": "Replace module properties", + "description": "Replace all property values of a module.", + "x-ms-examples": { + "Update properties of a module": { + "$ref": "./examples/modules_properties_set.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "$ref": "#/parameters/ModuleName" + }, + { + "in": "body", + "name": "body", + "description": "Module properties.", + "schema": { + "$ref": "#/definitions/DeviceProperties" + }, + "required": true + } + ], + "responses": { + "202": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceProperties" + } + } + } + }, + "patch": { + "operationId": "Devices_UpdateModuleProperties", + "summary": "Update module properties via patch", + "description": "Update property values of a module.", + "x-ms-examples": { + "Update properties of a module": { + "$ref": "./examples/modules_properties_update.json" + } + }, + "consumes": [ + "application/json", + "application/json-patch+json" + ], + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "$ref": "#/parameters/ModuleName" + }, + { + "in": "body", + "name": "body", + "description": "Module properties patch.", + "schema": { + "type": "object" + }, + "required": true + } + ], + "responses": { + "202": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceProperties" + } + } + } + } + }, + "/devices/{deviceId}/modules/{moduleName}/telemetry/{telemetryName}": { + "get": { + "operationId": "Devices_GetModuleTelemetryValue", + "summary": "Get module telemetry value", + "description": "Get the last telemetry value from a module.", + "x-ms-examples": { + "Get telemetry from module": { + "$ref": "./examples/modules_telemetry_get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "$ref": "#/parameters/ModuleName" + }, + { + "$ref": "#/parameters/TelemetryName" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceTelemetry" + } + } + } + } + }, + "/devices/{deviceId}/properties": { + "get": { + "operationId": "Devices_GetProperties", + "summary": "Get device properties", + "description": "Get all property values of a device by device ID.", + "x-ms-examples": { + "Get properties": { + "$ref": "./examples/devices_properties_get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceProperties" + } + } + } + }, + "put": { + "operationId": "Devices_ReplaceProperties", + "summary": "Replace device properties", + "description": "Replace all property values of a device by device ID.", + "x-ms-examples": { + "Update properties": { + "$ref": "./examples/devices_properties_set.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "in": "body", + "name": "body", + "description": "Device properties.", + "schema": { + "$ref": "#/definitions/DeviceProperties" + }, + "required": true + } + ], + "responses": { + "202": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceProperties" + } + } + } + }, + "patch": { + "operationId": "Devices_UpdateProperties", + "summary": "Update device properties via patch", + "description": "Update property values of a device by device ID.", + "x-ms-examples": { + "Update properties": { + "$ref": "./examples/devices_properties_update.json" + } + }, + "consumes": [ + "application/json", + "application/json-patch+json" + ], + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "in": "body", + "name": "body", + "description": "Device properties patch.", + "schema": { + "type": "object" + }, + "required": true + } + ], + "responses": { + "202": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceProperties" + } + } + } + } + }, + "/devices/{deviceId}/telemetry/{telemetryName}": { + "get": { + "operationId": "Devices_GetTelemetryValue", + "summary": "Get device telemetry value", + "description": "Get the last telemetry value from a device.", + "x-ms-examples": { + "Get telemetry": { + "$ref": "./examples/devices_telemetry_get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "$ref": "#/parameters/TelemetryName" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceTelemetry" + } + } + } + } + }, + "/jobs": { + "get": { + "operationId": "Jobs_List", + "summary": "Get the list of jobs in an application", + "x-ms-examples": { + "List jobs": { + "$ref": "./examples/jobs_list.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + } + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/JobCollection" + } + } + } + } + }, + "/jobs/{jobId}": { + "get": { + "operationId": "Jobs_Get", + "summary": "Get a job by ID", + "description": "Get details about a running or completed job by job ID.", + "x-ms-examples": { + "Get a job by Id": { + "$ref": "./examples/jobs_get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/JobId" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Job" + } + } + } + }, + "put": { + "operationId": "Jobs_Create", + "summary": "Execute a new job", + "description": "Create and execute a new job via its job definition.", + "x-ms-examples": { + "Execute a new job": { + "$ref": "./examples/jobs_create.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/JobId" + }, + { + "in": "body", + "name": "body", + "description": "Job definition.", + "schema": { + "$ref": "#/definitions/Job" + }, + "required": true + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Job" + } + } + } + } + }, + "/jobs/{jobId}/devices": { + "get": { + "operationId": "Jobs_GetDevices", + "summary": "Get device statuses", + "description": "Get the list of individual device statuses by job ID.", + "x-ms-examples": { + "Get device statuses": { + "$ref": "./examples/jobs_devices.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/JobId" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/JobDeviceStatusCollection" + } + } + } + } + }, + "/jobs/{jobId}/rerun/{rerunId}": { + "put": { + "operationId": "Jobs_Rerun", + "summary": "Rerun a job on failed devices", + "description": "Execute a rerun of an existing job on all failed devices.", + "x-ms-examples": { + "Rerun a job on failed devices": { + "$ref": "./examples/jobs_rerun.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/JobId" + }, + { + "in": "path", + "name": "rerunId", + "description": "Unique ID of the job rerun.", + "x-ms-parameter-location": "method", + "type": "string", + "required": true + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Job" + } + } + } + } + }, + "/jobs/{jobId}/resume": { + "post": { + "operationId": "Jobs_Resume", + "summary": "Resume a stopped job", + "description": "Resume execution of an existing stopped job.", + "x-ms-examples": { + "Resume a stopped job": { + "$ref": "./examples/jobs_resume.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/JobId" + } + ], + "responses": { + "204": { + "description": "Success" + } + } + } + }, + "/jobs/{jobId}/stop": { + "post": { + "operationId": "Jobs_Stop", + "summary": "Stop a running job", + "description": "Stop execution of a job that is currently running.", + "x-ms-examples": { + "Stop a running job": { + "$ref": "./examples/jobs_stop.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/JobId" + } + ], + "responses": { + "204": { + "description": "Success" + } + } + } + }, + "/roles": { + "get": { + "operationId": "Roles_List", + "summary": "Get the list of roles in an application.", + "x-ms-examples": { + "List roles": { + "$ref": "./examples/roles_list.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + } + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/RoleCollection" + } + } + } + } + }, + "/roles/{roleId}": { + "get": { + "operationId": "Roles_Get", + "summary": "Get a role by ID.", + "x-ms-examples": { + "Get role by Id": { + "$ref": "./examples/roles_get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "in": "path", + "name": "roleId", + "description": "Unique ID for the role.", + "type": "string", + "required": true + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Role" + } + } + } + } + }, + "/users": { + "get": { + "operationId": "Users_List", + "summary": "Get the list of users in an application", + "x-ms-examples": { + "List users": { + "$ref": "./examples/users_list.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + } + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/UserCollection" + } + } + } + } + }, + "/users/{userId}": { + "get": { + "operationId": "Users_Get", + "summary": "Get a user by ID", + "x-ms-examples": { + "Get a user by ID": { + "$ref": "./examples/users_get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "in": "path", + "name": "userId", + "description": "Unique ID of the user.", + "type": "string", + "required": true + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/User" + } + } + } + }, + "put": { + "operationId": "Users_Create", + "summary": "Create a user in the application", + "x-ms-examples": { + "Add or update a service principal user": { + "$ref": "./examples/users_set_serviceprincipal.json" + }, + "Add or update an email user": { + "$ref": "./examples/users_set.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "in": "path", + "name": "userId", + "description": "Unique ID of the user.", + "type": "string", + "required": true + }, + { + "in": "body", + "name": "body", + "description": "User body.", + "schema": { + "$ref": "#/definitions/User" + }, + "required": true + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/User" + } + } + } + }, + "patch": { + "operationId": "Users_Update", + "summary": "Update a user in the application via patch", + "x-ms-examples": { + "Update a service principal user": { + "$ref": "./examples/users_set_serviceprincipal.json" + }, + "Update an email user": { + "$ref": "./examples/users_update.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "in": "path", + "name": "userId", + "description": "Unique ID of the user.", + "type": "string", + "required": true + }, + { + "in": "body", + "name": "body", + "description": "User patch body.", + "schema": { + "type": "object" + }, + "required": true + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/User" + } + } + } + }, + "delete": { + "operationId": "Users_Remove", + "summary": "Delete a user", + "x-ms-examples": { + "Delete a user": { + "$ref": "./examples/users_delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "in": "path", + "name": "userId", + "description": "Unique ID of the user.", + "type": "string", + "required": true + } + ], + "responses": { + "204": { + "description": "Success" + } + } + } + } + }, + "parameters": { + "BaseDomain": { + "in": "path", + "name": "baseDomain", + "description": "The base domain for all Azure IoT Central service requests.", + "x-ms-parameter-location": "client", + "type": "string", + "x-ms-skip-url-encoding": true, + "default": "azureiotcentral.com", + "required": true + }, + "CommandName": { + "in": "path", + "name": "commandName", + "description": "Name of this device command.", + "x-ms-parameter-location": "method", + "type": "string", + "required": true + }, + "ComponentName": { + "in": "path", + "name": "componentName", + "description": "Name of the device component.", + "x-ms-parameter-location": "method", + "type": "string", + "required": true + }, + "DeviceId": { + "in": "path", + "name": "deviceId", + "description": "Unique ID of the device.", + "x-ms-parameter-location": "method", + "type": "string", + "required": true + }, + "DeviceTemplateId": { + "in": "path", + "name": "deviceTemplateId", + "description": "Unique ID of the device template.", + "x-ms-parameter-location": "method", + "type": "string", + "required": true + }, + "JobId": { + "in": "path", + "name": "jobId", + "description": "Unique ID of the job.", + "x-ms-parameter-location": "method", + "type": "string", + "required": true + }, + "ModuleName": { + "in": "path", + "name": "moduleName", + "description": "Name of the device module.", + "x-ms-parameter-location": "method", + "type": "string", + "required": true + }, + "Subdomain": { + "in": "path", + "name": "subdomain", + "description": "The application subdomain.", + "x-ms-parameter-location": "client", + "type": "string", + "required": true + }, + "TelemetryName": { + "in": "path", + "name": "telemetryName", + "description": "Name of this device telemetry.", + "x-ms-parameter-location": "method", + "type": "string", + "required": true + }, + "Version": { + "in": "query", + "name": "api-version", + "description": "The version of the API being called.", + "x-ms-parameter-location": "client", + "type": "string", + "default": "preview", + "required": true + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/apitoken_create.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/apitoken_create.json new file mode 100644 index 000000000000..375a920a03a4 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/apitoken_create.json @@ -0,0 +1,31 @@ +{ + "title": "Get API tokens in your application", + "description": "Get a list of API tokens in your application.", + "parameters": { + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "tokenId": "testtoken", + "api-version": "1.0", + "body": { + "roles": [ + { + "role": "ca310b8d-2f4a-44e0-a36e-957c202cd8d4" + } + ] + } + }, + "responses": { + "200": { + "body": { + "id": "testtoken", + "roles": [ + { + "role": "ca310b8d-2f4a-44e0-a36e-957c202cd8d4" + } + ], + "expiry": "2020-10-18T18:30:40.227Z", + "token": "SharedAccessSignature sr=..." + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/apitoken_delete.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/apitoken_delete.json new file mode 100644 index 000000000000..ca481ff1fb87 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/apitoken_delete.json @@ -0,0 +1,13 @@ +{ + "title": "Delete API token", + "description": "Delete an API token using its name.", + "parameters": { + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "tokenId": "testtoken", + "api-version": "1.0" + }, + "responses": { + "204": {} + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/apitoken_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/apitoken_get.json new file mode 100644 index 000000000000..a03aef6b39a2 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/apitoken_get.json @@ -0,0 +1,23 @@ +{ + "title": "Get an API token in your application", + "description": "Get an API token by Id in your application.", + "parameters": { + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "tokenId": "testtoken", + "api-version": "1.0" + }, + "responses": { + "200": { + "body": { + "id": "testtoken", + "roles": [ + { + "role": "ca310b8d-2f4a-44e0-a36e-957c202cd8d4" + } + ], + "expiry": "2020-10-18T18:30:40.227Z" + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/apitoken_list.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/apitoken_list.json new file mode 100644 index 000000000000..ffb347e05d3f --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/apitoken_list.json @@ -0,0 +1,26 @@ +{ + "title": "List API tokens in your application", + "description": "Get a list of API tokens in your application.", + "parameters": { + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "api-version": "1.0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "testtoken", + "roles": [ + { + "role": "ca310b8d-2f4a-44e0-a36e-957c202cd8d4" + } + ], + "expiry": "2020-10-18T18:30:40.227Z" + } + ] + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devicecredentials_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devicecredentials_get.json new file mode 100644 index 000000000000..a2c257df25f8 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devicecredentials_get.json @@ -0,0 +1,21 @@ +{ + "title": "Get device credentials", + "description": "Get the device credentials of a created device. Returns the app's scope Id and device SAS key", + "parameters": { + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceId": "Checkout4", + "api-version": "1.0" + }, + "responses": { + "200": { + "body": { + "idScope": "", + "symmetricKey": { + "primaryKey": "", + "secondaryKey": "" + } + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_attestations_delete.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_attestations_delete.json new file mode 100644 index 000000000000..cd0664287806 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_attestations_delete.json @@ -0,0 +1,13 @@ +{ + "title": "Delete device attestation", + "description": "Deletes the attestation for a device.", + "parameters": { + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceId": "Checkout4", + "api-version": "1.0" + }, + "responses": { + "204": {} + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_attestations_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_attestations_get.json new file mode 100644 index 000000000000..e198c9ca7009 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_attestations_get.json @@ -0,0 +1,26 @@ +{ + "title": "Get device attestation", + "description": "Gets the attestation for a device.", + "parameters": { + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceId": "CheckoutThermostat", + "api-version": "1.0" + }, + "responses": { + "200": { + "body": { + "type": "x509", + "x509": { + "clientCertificates": { + "primary": { + "info": { + "sha1Thumbprint": "" + } + } + } + } + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_attestations_set_symmetricKey.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_attestations_set_symmetricKey.json new file mode 100644 index 000000000000..9fab4126f4f0 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_attestations_set_symmetricKey.json @@ -0,0 +1,28 @@ +{ + "title": "Set device attestation - Symmetric key", + "description": "Creates or updates the symmetric key attestation for a device.", + "parameters": { + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceId": "CheckoutThermostat", + "api-version": "1.0", + "body": { + "type": "symmetricKey", + "symmetricKey": { + "primaryKey": "", + "secondaryKey": "" + } + } + }, + "responses": { + "200": { + "body": { + "type": "symmetricKey", + "symmetricKey": { + "primaryKey": "", + "secondaryKey": "" + } + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_attestations_set_tpm.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_attestations_set_tpm.json new file mode 100644 index 000000000000..801fea41a59c --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_attestations_set_tpm.json @@ -0,0 +1,26 @@ +{ + "title": "Set device attestation - TPM", + "description": "Creates or updates the TPM attestation for a device.", + "parameters": { + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceId": "CheckoutThermostat", + "api-version": "1.0", + "body": { + "type": "tpm", + "tpm": { + "endorsementKey": "" + } + } + }, + "responses": { + "200": { + "body": { + "type": "tpm", + "tpm": { + "endorsementKey": "" + } + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_attestations_set_x509.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_attestations_set_x509.json new file mode 100644 index 000000000000..caa33121799f --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_attestations_set_x509.json @@ -0,0 +1,36 @@ +{ + "title": "Set device attestation - X509", + "description": "Creates or updates the X509 attestation for a device.", + "parameters": { + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceId": "CheckoutThermostat", + "api-version": "1.0", + "body": { + "type": "x509", + "x509": { + "clientCertificates": { + "primary": { + "certificate": "" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "type": "x509", + "x509": { + "clientCertificates": { + "primary": { + "info": { + "sha1Thumbprint": "" + } + } + } + } + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_commands_send.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_commands_send.json new file mode 100644 index 000000000000..a05add57f34d --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_commands_send.json @@ -0,0 +1,22 @@ +{ + "title": "Send command", + "description": "Send a command to a device.", + "parameters": { + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceId": "mx1", + "componentName": "Thermostat_1o", + "commandName": "CoolDown", + "api-version": "1.0", + "body": { + "request": { + "tempVal": 30 + } + } + }, + "responses": { + "201": { + "body": {} + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_commandshistory_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_commandshistory_get.json new file mode 100644 index 000000000000..a05ce3fbc760 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_commandshistory_get.json @@ -0,0 +1,26 @@ +{ + "title": "Get command history", + "description": "Get the most recent invocation of a command of a device.", + "parameters": { + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceId": "mx1", + "componentName": "Thermostat_1o", + "commandName": "CoolDown", + "api-version": "1.0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "request": 20, + "id": "4e17dd2e-7bf2-458d-8466-19bc6fc9b642", + "response": 58.795679629034694, + "responseCode": 200 + } + ] + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_components_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_components_get.json new file mode 100644 index 000000000000..1af07692342c --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_components_get.json @@ -0,0 +1,32 @@ +{ + "title": "Get components from a device", + "description": "Get the list of components in a device.", + "parameters": { + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceId": "device1", + "api-version": "1.0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "@id": "", + "@type": [ + "InterfaceInstance" + ], + "name": "LocationTracking" + }, + { + "@id": "", + "@type": [ + "InterfaceInstance" + ], + "name": "EnvironmentSensing" + } + ] + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_create.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_create.json new file mode 100644 index 000000000000..1b6c4ec08874 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_create.json @@ -0,0 +1,29 @@ +{ + "title": "Create a device", + "description": "Create a device with an Id.", + "parameters": { + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceId": "ccc", + "api-version": "1.0", + "body": { + "displayName": "CheckoutThermostatccc", + "template": "urn:kmwga2re7:modelDefinition:t_cj5wspyv", + "simulated": true, + "enabled": true + } + }, + "responses": { + "200": { + "body": { + "id": "ccc", + "etag": "eyJoZWFkZXIiOiJcIjE1MDE2ZDFiLTAwMDAtMGQwMC0wMDAwLTVkYWNkNDIxMDAwMFwiIiwiZGF0YSI6IlwiMTUwMTZhMWItMDAwMC0wZDAwLTAwMDAtNWRhY2Q0MjEwMDAwXCIifQ", + "displayName": "CheckoutThermostatccc", + "template": "urn:kmwga2re7:modelDefinition:t_cj5wspyv", + "simulated": true, + "provisioned": false, + "enabled": true + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_delete.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_delete.json new file mode 100644 index 000000000000..394e080962fb --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_delete.json @@ -0,0 +1,13 @@ +{ + "title": "Delete device", + "description": "Delete a device by Id.", + "parameters": { + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceId": "ccc", + "api-version": "1.0" + }, + "responses": { + "204": {} + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_get.json new file mode 100644 index 000000000000..1e8fc84bba68 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_get.json @@ -0,0 +1,23 @@ +{ + "title": "Get a device by Id", + "description": "Get a device by Id", + "parameters": { + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceId": "CheckoutThermostat", + "api-version": "1.0" + }, + "responses": { + "200": { + "body": { + "id": "CheckoutThermostat", + "etag": "eyJoZWFkZXIiOiJcIjAyMDA4YzMyLTAwMDAtMGQwMC0wMDAwLTVkOTY4YjdhMDAwMFwiIn0", + "displayName": "CheckoutThermostat", + "template": "urn:kmwga2re7:modelDefinition:t_cj5wspyv", + "simulated": true, + "provisioned": true, + "enabled": true + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_list.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_list.json new file mode 100644 index 000000000000..bb7757761c92 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_list.json @@ -0,0 +1,53 @@ +{ + "title": "List devices", + "description": "List all devices in your application.", + "parameters": { + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "api-version": "1.0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "CheckoutThermostat", + "etag": "eyJoZWFkZXIiOiJcIjAyMDA4YzMyLTAwMDAtMGQwMC0wMDAwLTVkOTY4YjdhMDAwMFwiIn0", + "displayName": "CheckoutThermostat", + "template": "urn:kmwga2re7:modelDefinition:t_cj5wspyv", + "simulated": true, + "provisioned": true, + "enabled": true + }, + { + "id": "Checkout1", + "etag": "eyJoZWFkZXIiOiJcIjAyMDA4ZDMyLTAwMDAtMGQwMC0wMDAwLTVkOTY4Yjg3MDAwMFwiIn0", + "displayName": "Checkout1", + "template": "urn:sbk9sd6sl:modelDefinition:u3b_fwd7os", + "simulated": true, + "provisioned": true, + "enabled": true + }, + { + "id": "Checkout2", + "etag": "eyJoZWFkZXIiOiJcIjAyMDA5MDMyLTAwMDAtMGQwMC0wMDAwLTVkOTY4Yjg3MDAwMFwiIn0", + "displayName": "Checkout2", + "template": "urn:sbk9sd6sl:modelDefinition:u3b_fwd7os", + "simulated": true, + "provisioned": true, + "enabled": true + }, + { + "id": "Checkout3", + "etag": "eyJoZWFkZXIiOiJcIjAyMDA4ZTMyLTAwMDAtMGQwMC0wMDAwLTVkOTY4Yjg3MDAwMFwiIn0", + "displayName": "Checkout3", + "template": "urn:sbk9sd6sl:modelDefinition:u3b_fwd7os", + "simulated": true, + "provisioned": true, + "enabled": true + } + ] + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_modules_components_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_modules_components_get.json new file mode 100644 index 000000000000..72aeae4099b6 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_modules_components_get.json @@ -0,0 +1,27 @@ +{ + "title": "Get components from a module in an Edge device", + "description": "Get a list of components from a module in an IoT Edge device.", + "parameters": { + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceId": "edgedevice1", + "moduleName": "edgemodule", + "api-version": "1.0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "@id": "", + "@type": [ + "InterfaceInstance" + ], + "name": "interfaceA", + "displayName": "InterfaceA" + } + ] + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_modules_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_modules_get.json new file mode 100644 index 000000000000..7cfc4dabcee0 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_modules_get.json @@ -0,0 +1,34 @@ +{ + "title": "Get modules from an Edge device", + "description": "Get the list of modules in an IoT Edge device.", + "parameters": { + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceId": "edgedevice1", + "api-version": "1.0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "@id": "", + "@type": [ + "Relationship", + "SemanticType/EdgeModule" + ], + "name": "Environment" + }, + { + "@id": "", + "@type": [ + "Relationship", + "SemanticType/EdgeModule" + ], + "name": "Camera" + } + ] + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_properties_components_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_properties_components_get.json new file mode 100644 index 000000000000..c4411a1d6fa1 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_properties_components_get.json @@ -0,0 +1,55 @@ +{ + "title": "Get device properties in component", + "description": "Get the read-write property values within a component of a device.", + "parameters": { + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceId": "mx1", + "componentName": "settings", + "api-version": "1.0" + }, + "responses": { + "200": { + "body": { + "fanSpeed": 35, + "voltage": 5, + "current": 2, + "irSwitch": true, + "$metadata": { + "fanSpeed": { + "desiredValue": 35, + "ackDesiredState": { + "code": 200, + "version": 2, + "description": "Processed" + } + }, + "voltage": { + "desiredValue": 5, + "ackDesiredState": { + "code": 200, + "version": 2, + "description": "Processed" + } + }, + "current": { + "desiredValue": 2, + "ackDesiredState": { + "code": 200, + "version": 2, + "description": "Processed" + } + }, + "irSwitch": { + "desiredValue": true, + "ackDesiredState": { + "code": 200, + "version": 2, + "description": "Processed" + } + } + } + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_properties_components_set.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_properties_components_set.json new file mode 100644 index 000000000000..6468e9931d32 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_properties_components_set.json @@ -0,0 +1,37 @@ +{ + "title": "Set device properties in component", + "description": "Set the read-write property values within a component of a device.", + "parameters": { + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceId": "mx1", + "componentName": "settings", + "api-version": "1.0", + "body": { + "fanSpeed": 35, + "voltage": 5, + "current": 2, + "irSwitch": true + } + }, + "responses": { + "202": { + "body": { + "$metadata": { + "fanSpeed": { + "desiredValue": 35 + }, + "voltage": { + "desiredValue": 5 + }, + "current": { + "desiredValue": 2 + }, + "irSwitch": { + "desiredValue": true + } + } + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_properties_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_properties_get.json new file mode 100644 index 000000000000..0cc3a085eaa6 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_properties_get.json @@ -0,0 +1,42 @@ +{ + "title": "Get device properties", + "description": "Get the current values of all device properties. Properties that have never been set by the device or by a user or API request will not be returned.", + "parameters": { + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceId": "mx1", + "api-version": "1.0" + }, + "responses": { + "200": { + "body": { + "deviceinfo": { + "manufacturer": "manufacturer", + "$metadata": { + "manufacturer": { + "lastUpdateTime": "2020-07-21T19:06:50.9718608Z" + }, + "model": { + "lastUpdateTime": "2020-07-21T19:06:50.9718608Z" + }, + "swVersion": { + "lastUpdateTime": "2020-07-21T19:06:50.9718608Z" + } + }, + "model": "model", + "swVersion": "swVersion" + }, + "settings": { + "fanSpeed": 12.5, + "$metadata": { + "fanSpeed": { + "desiredValue": 30, + "desiredVersion": 2, + "lastUpdateTime": "2020-07-21T19:06:50.9718608Z" + } + } + } + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_properties_update.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_properties_update.json new file mode 100644 index 000000000000..26257f7750e3 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_properties_update.json @@ -0,0 +1,32 @@ +{ + "title": "Update device properties", + "description": "Update the values of read-write properties of a device", + "parameters": { + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceId": "mx1", + "api-version": "1.0", + "body": { + "settings": { + "voltage": 25, + "current": 7 + } + } + }, + "responses": { + "202": { + "body": { + "settings": { + "$metadata": { + "voltage": { + "desiredValue": 25 + }, + "current": { + "desiredValue": 7 + } + } + } + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_telemetry_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_telemetry_get.json new file mode 100644 index 000000000000..2be9a100048a --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_telemetry_get.json @@ -0,0 +1,19 @@ +{ + "title": "Get telemetry", + "description": "Get the last known value of a telemetry stream of a device.", + "parameters": { + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceId": "mx1", + "componentName": "sensors", + "telemetryName": "temperature", + "api-version": "1.0" + }, + "responses": { + "200": { + "body": { + "value": 32 + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_update.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_update.json new file mode 100644 index 000000000000..d8235cf3d6fa --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devices_update.json @@ -0,0 +1,29 @@ +{ + "title": "Update a device", + "description": "Update parts of an existing device with an Id.", + "parameters": { + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceId": "ccc", + "api-version": "1.0", + "body": { + "displayName": "CheckoutThermostatccc", + "template": "urn:kmwga2re7:modelDefinition:t_cj5wspyv", + "simulated": true, + "enabled": true + } + }, + "responses": { + "200": { + "body": { + "id": "ccc", + "etag": "eyJoZWFkZXIiOiJcIjE1MDE2ZDFiLTAwMDAtMGQwMC0wMDAwLTVkYWNkNDIxMDAwMFwiIiwiZGF0YSI6IlwiMTUwMTZhMWItMDAwMC0wZDAwLTAwMDAtNWRhY2Q0MjEwMDAwXCIifQ", + "displayName": "CheckoutThermostatccc", + "template": "urn:kmwga2re7:modelDefinition:t_cj5wspyv", + "simulated": true, + "provisioned": false, + "enabled": true + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devicetemplates_create.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devicetemplates_create.json new file mode 100644 index 000000000000..38601d3f785f --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devicetemplates_create.json @@ -0,0 +1,352 @@ +{ + "title": "Create a device template", + "description": "Creates and publishes a device template. In the body, specify the full device template object. Default views will be automatically generated.", + "parameters": { + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceTemplateId": "dtmi:contoso:testDeviceTemplate;1", + "api-version": "1.0", + "body": { + "@type": [ + "ModelDefinition", + "DeviceModel", + "EdgeModel" + ], + "displayName": "Test Definition", + "capabilityModel": { + "@id": "dtmi:contoso:testCapabilityModel;1", + "@type": "Interface", + "displayName": "Test Capability Model", + "extends": [ + { + "@id": "dtmi:contoso:testInterface;1", + "@type": "Interface", + "displayName": "Test Interface", + "contents": [ + { + "@type": "Telemetry", + "displayName": "Test Telemetry", + "name": "testTelemetry", + "schema": "double" + }, + { + "@type": [ + "Telemetry", + "Event", + "EventValue" + ], + "displayName": "Test Event", + "name": "testEvent", + "schema": "integer", + "severity": "warning" + }, + { + "@type": [ + "Property", + "Initialized" + ], + "displayName": "Test Property", + "name": "testProperty", + "schema": "string", + "writable": true, + "initialValue": "initialValue1" + }, + { + "@type": "Property", + "displayName": "Test Read-Only Property", + "name": "testReadOnly", + "schema": "string" + }, + { + "@type": "Property", + "displayName": "Test Complex Property", + "name": "testComplex", + "schema": { + "@id": "dtmi:contoso:testComplex;1", + "@type": "Object", + "displayName": "Object", + "fields": [ + { + "displayName": "First", + "name": "first", + "schema": "string" + }, + { + "displayName": "Second", + "name": "second", + "schema": "string" + } + ] + }, + "writable": true + }, + { + "@type": "Command", + "commandType": "synchronous", + "displayName": "Test Command", + "name": "testCommand", + "request": { + "displayName": "Test Request", + "name": "testRequest", + "schema": "double" + }, + "response": { + "displayName": "Test Response", + "name": "testResponse", + "schema": "geopoint" + } + }, + { + "@type": "Property", + "displayName": "Test Enum", + "name": "testEnum", + "schema": { + "@id": "dtmi:contoso:testEnum;1", + "@type": "Enum", + "displayName": "Enum", + "enumValues": [ + { + "displayName": "First", + "enumValue": 1, + "name": "first" + }, + { + "displayName": "Second", + "enumValue": 2, + "name": "second" + } + ], + "valueSchema": "integer" + }, + "writable": true + } + ] + } + ], + "contents": [ + { + "@type": [ + "Relationship", + "EdgeModule" + ], + "displayName": "Test Module", + "maxMultiplicity": 1, + "name": "testModule", + "target": [ + { + "@id": "dtmi:contoso:testModuleCapabilityModel;1", + "@type": "Interface", + "displayName": "Test Module Capability Model", + "extends": [ + { + "@id": "dtmi:contoso:testModuleInterface;1", + "@type": "Interface", + "contents": [ + { + "@type": "Telemetry", + "displayName": "Test Module Telemetry", + "name": "testModuleTelemetry", + "schema": "double" + }, + { + "@type": "Property", + "displayName": "Test Module Property", + "name": "testModuleProperty", + "schema": "string", + "writable": true + } + ], + "displayName": "Test Module Interface" + } + ] + } + ] + }, + { + "@type": [ + "Property", + "CloudProperty" + ], + "displayName": "Test Cloud Property", + "name": "testCloudProperty", + "schema": "dateTime" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "@id": "dtmi:contoso:testDeviceTemplate;1", + "@type": [ + "ModelDefinition", + "DeviceModel", + "EdgeModel" + ], + "displayName": "Test Definition", + "etag": "\"~jbzfGhYctc9wtzNZXVmVua5JjTHO/FfjMUJvk9hqkRY=\"", + "capabilityModel": { + "@id": "dtmi:contoso:testCapabilityModel;1", + "@type": "Interface", + "displayName": "Test Capability Model", + "extends": [ + { + "@id": "dtmi:contoso:testInterface;1", + "@type": "Interface", + "displayName": "Test Interface", + "contents": [ + { + "@type": "Telemetry", + "displayName": "Test Telemetry", + "name": "testTelemetry", + "schema": "double" + }, + { + "@type": [ + "Telemetry", + "Event", + "EventValue" + ], + "displayName": "Test Event", + "name": "testEvent", + "schema": "integer", + "severity": "warning" + }, + { + "@type": [ + "Property", + "Initialized" + ], + "displayName": "Test Property", + "name": "testProperty", + "schema": "string", + "writable": true, + "initialValue": "initialValue1" + }, + { + "@type": "Property", + "displayName": "Test Read-Only Property", + "name": "testReadOnly", + "schema": "string" + }, + { + "@type": "Property", + "displayName": "Test Complex Property", + "name": "testComplex", + "schema": { + "@id": "dtmi:contoso:testComplex;1", + "@type": "Object", + "displayName": "Object", + "fields": [ + { + "displayName": "First", + "name": "first", + "schema": "string" + }, + { + "displayName": "Second", + "name": "second", + "schema": "string" + } + ] + }, + "writable": true + }, + { + "@type": "Command", + "commandType": "synchronous", + "displayName": "Test Command", + "name": "testCommand", + "request": { + "displayName": "Test Request", + "name": "testRequest", + "schema": "double" + }, + "response": { + "displayName": "Test Response", + "name": "testResponse", + "schema": "geopoint" + } + }, + { + "@type": "Property", + "displayName": "Test Enum", + "name": "testEnum", + "schema": { + "@id": "dtmi:contoso:testEnum;1", + "@type": "Enum", + "displayName": "Enum", + "enumValues": [ + { + "displayName": "First", + "enumValue": 1, + "name": "first" + }, + { + "displayName": "Second", + "enumValue": 2, + "name": "second" + } + ], + "valueSchema": "integer" + }, + "writable": true + } + ] + } + ], + "contents": [ + { + "@type": [ + "Relationship", + "EdgeModule" + ], + "displayName": "Test Module", + "maxMultiplicity": 1, + "name": "testModule", + "target": [ + { + "@id": "dtmi:contoso:testModuleCapabilityModel;1", + "@type": "Interface", + "displayName": "Test Module Capability Model", + "extends": [ + { + "@id": "dtmi:contoso:testModuleInterface;1", + "@type": "Interface", + "contents": [ + { + "@type": "Telemetry", + "displayName": "Test Module Telemetry", + "name": "testModuleTelemetry", + "schema": "double" + }, + { + "@type": "Property", + "displayName": "Test Module Property", + "name": "testModuleProperty", + "schema": "string", + "writable": true + } + ], + "displayName": "Test Module Interface" + } + ] + } + ] + }, + { + "@type": [ + "Property", + "Cloud" + ], + "displayName": "Test Cloud Property", + "name": "testCloudProperty", + "schema": "dateTime" + } + ] + } + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devicetemplates_delete.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devicetemplates_delete.json new file mode 100644 index 000000000000..648f727a1da7 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devicetemplates_delete.json @@ -0,0 +1,13 @@ +{ + "title": "Delete a device template by Id", + "description": "Delete a published device template that has no devices currently associated to it. This operation does not operate on device templates in draft state.", + "parameters": { + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceTemplateId": "dtmi:contoso:testDeviceTemplate;1", + "api-version": "1.0" + }, + "responses": { + "204": {} + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devicetemplates_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devicetemplates_get.json new file mode 100644 index 000000000000..1757e0eb25ae --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devicetemplates_get.json @@ -0,0 +1,184 @@ +{ + "title": "Get a device template by Id", + "description": "Get a published device template by Id. This operation does not return device templates in draft state.", + "parameters": { + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceTemplateId": "dtmi:contoso:testDeviceTemplate;1", + "api-version": "1.0" + }, + "responses": { + "200": { + "body": { + "@id": "dtmi:contoso:testDeviceTemplate;1", + "@type": [ + "ModelDefinition", + "DeviceModel", + "EdgeModel" + ], + "displayName": "Test Definition", + "etag": "\"~jbzfGhYctc9wtzNZXVmVua5JjTHO/FfjMUJvk9hqkRY=\"", + "capabilityModel": { + "@id": "dtmi:contoso:testCapabilityModel;1", + "@type": "Interface", + "displayName": "Test Capability Model", + "extends": [ + { + "@id": "dtmi:contoso:testInterface;1", + "@type": "Interface", + "displayName": "Test Interface", + "contents": [ + { + "@type": "Telemetry", + "displayName": "Test Telemetry", + "name": "testTelemetry", + "schema": "double" + }, + { + "@type": [ + "Telemetry", + "Event", + "EventValue" + ], + "displayName": "Test Event", + "name": "testEvent", + "schema": "integer", + "severity": "warning" + }, + { + "@type": [ + "Property", + "Initialized" + ], + "displayName": "Test Property", + "name": "testProperty", + "schema": "string", + "writable": true, + "initialValue": "initialValue1" + }, + { + "@type": "Property", + "displayName": "Test Read-Only Property", + "name": "testReadOnly", + "schema": "string" + }, + { + "@type": "Property", + "displayName": "Test Complex Property", + "name": "testComplex", + "schema": { + "@id": "dtmi:contoso:testComplex;1", + "@type": "Object", + "displayName": "Object", + "fields": [ + { + "displayName": "First", + "name": "first", + "schema": "string" + }, + { + "displayName": "Second", + "name": "second", + "schema": "string" + } + ] + }, + "writable": true + }, + { + "@type": "Command", + "commandType": "synchronous", + "displayName": "Test Command", + "name": "testCommand", + "request": { + "displayName": "Test Request", + "name": "testRequest", + "schema": "double" + }, + "response": { + "displayName": "Test Response", + "name": "testResponse", + "schema": "geopoint" + } + }, + { + "@type": "Property", + "displayName": "Test Enum", + "name": "testEnum", + "schema": { + "@id": "dtmi:contoso:testEnum;1", + "@type": "Enum", + "displayName": "Enum", + "enumValues": [ + { + "displayName": "First", + "enumValue": 1, + "name": "first" + }, + { + "displayName": "Second", + "enumValue": 2, + "name": "second" + } + ], + "valueSchema": "integer" + }, + "writable": true + } + ] + } + ], + "contents": [ + { + "@type": [ + "Relationship", + "EdgeModule" + ], + "displayName": "Test Module", + "maxMultiplicity": 1, + "name": "testModule", + "target": [ + { + "@id": "dtmi:contoso:testModuleCapabilityModel;1", + "@type": "Interface", + "displayName": "Test Module Capability Model", + "extends": [ + { + "@id": "dtmi:contoso:testModuleInterface;1", + "@type": "Interface", + "contents": [ + { + "@type": "Telemetry", + "displayName": "Test Module Telemetry", + "name": "testModuleTelemetry", + "schema": "double" + }, + { + "@type": "Property", + "displayName": "Test Module Property", + "name": "testModuleProperty", + "schema": "string", + "writable": true + } + ], + "displayName": "Test Module Interface" + } + ] + } + ] + }, + { + "@type": [ + "Property", + "Cloud" + ], + "displayName": "Test Cloud Property", + "name": "testCloudProperty", + "schema": "dateTime" + } + ] + } + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devicetemplates_list.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devicetemplates_list.json new file mode 100644 index 000000000000..5a5d7a422698 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/devicetemplates_list.json @@ -0,0 +1,187 @@ +{ + "title": "List device templates", + "description": "List device templates that are currently published in the application. This operation does not return device templates in draft state.", + "parameters": { + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "api-version": "1.0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "@id": "dtmi:contoso:testDeviceTemplate;1", + "@type": [ + "ModelDefinition", + "DeviceModel", + "EdgeModel" + ], + "displayName": "Test Definition", + "etag": "\"~jbzfGhYctc9wtzNZXVmVua5JjTHO/FfjMUJvk9hqkRY=\"", + "capabilityModel": { + "@id": "dtmi:contoso:testCapabilityModel;1", + "@type": "Interface", + "displayName": "Test Capability Model", + "extends": [ + { + "@id": "dtmi:contoso:testInterface;1", + "@type": "Interface", + "displayName": "Test Interface", + "contents": [ + { + "@type": "Telemetry", + "displayName": "Test Telemetry", + "name": "testTelemetry", + "schema": "double" + }, + { + "@type": [ + "Telemetry", + "Event", + "EventValue" + ], + "displayName": "Test Event", + "name": "testEvent", + "schema": "integer", + "severity": "warning" + }, + { + "@type": [ + "Property", + "Initialized" + ], + "displayName": "Test Property", + "name": "testProperty", + "schema": "string", + "writable": true, + "initialValue": "initialValue1" + }, + { + "@type": "Property", + "displayName": "Test Read-Only Property", + "name": "testReadOnly", + "schema": "string" + }, + { + "@type": "Property", + "displayName": "Test Complex Property", + "name": "testComplex", + "schema": { + "@id": "dtmi:contoso:testComplex;1", + "@type": "Object", + "displayName": "Object", + "fields": [ + { + "displayName": "First", + "name": "first", + "schema": "string" + }, + { + "displayName": "Second", + "name": "second", + "schema": "string" + } + ] + }, + "writable": true + }, + { + "@type": "Command", + "commandType": "synchronous", + "displayName": "Test Command", + "name": "testCommand", + "request": { + "displayName": "Test Request", + "name": "testRequest", + "schema": "double" + }, + "response": { + "displayName": "Test Response", + "name": "testResponse", + "schema": "geopoint" + } + }, + { + "@type": "Property", + "displayName": "Test Enum", + "name": "testEnum", + "schema": { + "@id": "dtmi:contoso:testEnum;1", + "@type": "Enum", + "displayName": "Enum", + "enumValues": [ + { + "displayName": "First", + "enumValue": 1, + "name": "first" + }, + { + "displayName": "Second", + "enumValue": 2, + "name": "second" + } + ], + "valueSchema": "integer" + }, + "writable": true + } + ] + } + ], + "contents": [ + { + "@type": [ + "Relationship", + "EdgeModule" + ], + "displayName": "Test Module", + "maxMultiplicity": 1, + "name": "testModule", + "target": [ + { + "@id": "dtmi:contoso:testModuleCapabilityModel;1", + "@type": "Interface", + "displayName": "Test Module Capability Model", + "extends": [ + { + "@id": "dtmi:contoso:testModuleInterface;1", + "@type": "Interface", + "contents": [ + { + "@type": "Telemetry", + "displayName": "Test Module Telemetry", + "name": "testModuleTelemetry", + "schema": "double" + }, + { + "@type": "Property", + "displayName": "Test Module Property", + "name": "testModuleProperty", + "schema": "string", + "writable": true + } + ], + "displayName": "Test Module Interface" + } + ] + } + ] + }, + { + "@type": [ + "Property", + "Cloud" + ], + "displayName": "Test Cloud Property", + "name": "testCloudProperty", + "schema": "dateTime" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/modules_commands_send.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/modules_commands_send.json new file mode 100644 index 000000000000..6c2b1fcb2407 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/modules_commands_send.json @@ -0,0 +1,27 @@ +{ + "title": "Send command", + "description": "Send a command to a device.", + "parameters": { + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceId": "mx1", + "moduleName": "Camera", + "componentName": "componentA", + "commandName": "Reboot", + "api-version": "1.0", + "body": { + "request": { + "SafeMode": true + } + } + }, + "responses": { + "201": { + "body": { + "request": { + "SafeMode": true + } + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/modules_commandshistory_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/modules_commandshistory_get.json new file mode 100644 index 000000000000..cb5817ad3f74 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/modules_commandshistory_get.json @@ -0,0 +1,25 @@ +{ + "title": "Get command history within a module", + "description": "Get the most recent invocaion of a command from within a module.", + "parameters": { + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceId": "mx1", + "moduleName": "camera", + "componentName": "componentA", + "commandName": "AdjustFrameRate", + "api-version": "1.0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "response": "Success", + "responseCode": 200 + } + ] + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/modules_properties_components_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/modules_properties_components_get.json new file mode 100644 index 000000000000..d0f3588c3bc5 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/modules_properties_components_get.json @@ -0,0 +1,33 @@ +{ + "title": "Get device properties", + "description": "Get the current values of all device properties.", + "parameters": { + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceId": "mx1", + "moduleName": "module_env", + "componentName": "componentA", + "api-version": "1.0" + }, + "responses": { + "200": { + "body": { + "SensitivityDial": 50, + "Status": 66.82181229066656, + "$metadata": { + "SensitivityDial": { + "desiredValue": 50, + "desiredVersion": 3, + "ackVersion": 1, + "ackDescription": "Ok", + "ackCode": 200, + "lastUpdateTime": "2020-04-27T22:08:55.1149957Z" + }, + "Status": { + "lastUpdateTime": "2020-04-27T22:09:25.1151948Z" + } + } + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/modules_properties_components_set.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/modules_properties_components_set.json new file mode 100644 index 000000000000..248c0b3d5add --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/modules_properties_components_set.json @@ -0,0 +1,32 @@ +{ + "title": "Update properties of a module within a component", + "description": "Update the values of read-write properties of a module within a single component", + "parameters": { + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceId": "mx1", + "moduleName": "module_env", + "componentName": "componentA", + "api-version": "1.0", + "body": { + "SensitivityDial": 300 + } + }, + "responses": { + "202": { + "body": { + "SensitivityDial": 50, + "$metadata": { + "SensitivityDial": { + "desiredValue": 300, + "desiredVersion": 3, + "ackVersion": 1, + "ackDescription": "Ok", + "ackCode": 200, + "lastUpdateTime": "2020-04-27T22:08:55.1149957Z" + } + } + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/modules_properties_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/modules_properties_get.json new file mode 100644 index 000000000000..b57bf7956421 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/modules_properties_get.json @@ -0,0 +1,34 @@ +{ + "title": "Get properties of a module", + "description": "Get the current values of all device properties within a module.", + "parameters": { + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceId": "mx1", + "moduleName": "module_env", + "api-version": "1.0" + }, + "responses": { + "200": { + "body": { + "componentA": { + "SensitivityDial": 50, + "Status": 25.494280816287844, + "$metadata": { + "SensitivityDial": { + "desiredValue": 50, + "desiredVersion": 3, + "ackVersion": 1, + "ackDescription": "Ok", + "ackCode": 200, + "lastUpdateTime": "2020-04-27T22:08:55.1149957Z" + }, + "Status": { + "lastUpdateTime": "2020-04-27T22:19:31.9485342Z" + } + } + } + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/modules_properties_update.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/modules_properties_update.json new file mode 100644 index 000000000000..710065e846f3 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/modules_properties_update.json @@ -0,0 +1,35 @@ +{ + "title": "Update properties of a module", + "description": "Update the values of read-write properties of a module", + "parameters": { + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceId": "mx1", + "moduleName": "module_env", + "api-version": "1.0", + "body": { + "componentA": { + "SensitivityDial": 200 + } + } + }, + "responses": { + "202": { + "body": { + "componentA": { + "SensitivityDial": 75, + "$metadata": { + "SensitivityDial": { + "desiredValue": 200, + "desiredVersion": 3, + "ackVersion": 1, + "ackDescription": "Ok", + "ackCode": 200, + "lastUpdateTime": "2020-04-27T22:08:55.1149957Z" + } + } + } + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/modules_telemetry_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/modules_telemetry_get.json new file mode 100644 index 000000000000..43d4311aded4 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/modules_telemetry_get.json @@ -0,0 +1,24 @@ +{ + "title": "Get telemetry from a module", + "description": "Get the last known value of a telemetry stream from a module.", + "parameters": { + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "deviceId": "mx1", + "moduleName": "environment", + "componentName": "componentA", + "telemetryName": "ambient", + "api-version": "1.0" + }, + "responses": { + "200": { + "body": { + "value": { + "temperature": 20.961113326000568, + "humidity": 24 + }, + "timestamp": "2020-04-16T03:24:44.84Z" + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/roles_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/roles_get.json new file mode 100644 index 000000000000..fdbd5a07e179 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/roles_get.json @@ -0,0 +1,18 @@ +{ + "title": "Get role by Id", + "description": "Get a role by Id.", + "parameters": { + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "roleId": "ca310b8d-2f4a-44e0-a36e-957c202cd8d4", + "api-version": "1.0" + }, + "responses": { + "200": { + "body": { + "id": "ca310b8d-2f4a-44e0-a36e-957c202cd8d4", + "displayName": "Administrator" + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/roles_list.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/roles_list.json new file mode 100644 index 000000000000..c5bca246697f --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/roles_list.json @@ -0,0 +1,29 @@ +{ + "title": "List roles", + "description": "List roles in your application.", + "parameters": { + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "api-version": "1.0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "ca310b8d-2f4a-44e0-a36e-957c202cd8d4", + "displayName": "Administrator" + }, + { + "id": "344138e9-8de4-4497-8c54-5237e96d6aaf", + "displayName": "Builder" + }, + { + "id": "ae2c9854-393b-4f97-8c42-479d70ce626e", + "displayName": "Operator" + } + ] + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/users_delete.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/users_delete.json new file mode 100644 index 000000000000..0e706d3fb668 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/users_delete.json @@ -0,0 +1,13 @@ +{ + "title": "Remove a user", + "description": "Remove a user from the application by Id.", + "parameters": { + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "userId": "abc", + "api-version": "1.0" + }, + "responses": { + "204": {} + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/users_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/users_get.json new file mode 100644 index 000000000000..5ea9f62e823b --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/users_get.json @@ -0,0 +1,24 @@ +{ + "title": "Get a user in your application", + "description": "Get a user by Id in your application.", + "parameters": { + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "userId": "abc", + "api-version": "1.0" + }, + "responses": { + "200": { + "body": { + "id": "abc", + "type": "email", + "roles": [ + { + "role": "ca310b8d-2f4a-44e0-a36e-957c202cd8d4" + } + ], + "email": "alice@contoso.com" + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/users_list.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/users_list.json new file mode 100644 index 000000000000..fcc976bc91a1 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/users_list.json @@ -0,0 +1,38 @@ +{ + "title": "List users in your application", + "description": "Get a list of users in your application.", + "parameters": { + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "api-version": "1.0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "af0d5b8f-7a69-4521-868e-19745fae353f", + "type": "email", + "roles": [ + { + "role": "ca310b8d-2f4a-44e0-a36e-957c202cd8d4" + } + ], + "email": "alice@contoso.com" + }, + { + "id": "123", + "type": "servicePrincipal", + "roles": [ + { + "role": "ca310b8d-2f4a-44e0-a36e-957c202cd8d4" + } + ], + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "objectId": "9071c899-bce0-4862-b208-75dabae226a9" + } + ] + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/users_set.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/users_set.json new file mode 100644 index 000000000000..413f8ccb1a59 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/users_set.json @@ -0,0 +1,32 @@ +{ + "title": "Add or update an email user in your application", + "description": "Add or update an email user in your application.", + "parameters": { + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "userId": "123", + "api-version": "1.0", + "body": { + "type": "email", + "roles": [ + { + "role": "ca310b8d-2f4a-44e0-a36e-957c202cd8d4" + } + ], + "email": "bob@contoso.com" + } + }, + "responses": { + "200": { + "body": { + "type": "email", + "roles": [ + { + "role": "ca310b8d-2f4a-44e0-a36e-957c202cd8d4" + } + ], + "email": "bob@contoso.com" + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/users_set_serviceprincipal.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/users_set_serviceprincipal.json new file mode 100644 index 000000000000..a1d0bd60973e --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/examples/users_set_serviceprincipal.json @@ -0,0 +1,35 @@ +{ + "title": "Add or update a service principal in your application", + "description": "Add or update an AAD service principal in your application.", + "parameters": { + "baseDomain": "azureiotcentral.com", + "subdomain": "appsubdomain", + "userId": "123", + "api-version": "1.0", + "body": { + "type": "servicePrincipal", + "tenantId": "027fdad7-cf0f-470a-a26a-272197813322", + "objectId": "65e13aac-1443-4c49-9d49-57b87197cfff", + "roles": [ + { + "role": "c7be2c6b-797e-4551-bb24-33709f6b2e20" + } + ] + } + }, + "responses": { + "200": { + "body": { + "id": "123", + "type": "servicePrincipal", + "tenantId": "027fdad7-cf0f-470a-a26a-272197813322", + "objectId": "65e13aac-1443-4c49-9d49-57b87197cfff", + "roles": [ + { + "role": "c7be2c6b-797e-4551-bb24-33709f6b2e20" + } + ] + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/iotcentral.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/iotcentral.json new file mode 100644 index 000000000000..d8faba99417a --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/stable/1.0/iotcentral.json @@ -0,0 +1,2450 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure IoT Central", + "description": "Azure IoT Central is a service that makes it easy to connect, monitor, and manage your IoT devices at scale.", + "version": "1.0" + }, + "x-ms-parameterized-host": { + "hostTemplate": "{subdomain}.{baseDomain}", + "parameters": [ + { + "$ref": "#/parameters/BaseDomain" + }, + { + "$ref": "#/parameters/Subdomain" + } + ] + }, + "basePath": "/api", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "definitions": { + "ApiToken": { + "allOf": [ + { + "$ref": "#/definitions/Permission" + } + ], + "type": "object", + "properties": { + "id": { + "description": "Unique ID of the API token.", + "type": "string", + "readOnly": true + }, + "token": { + "description": "Value of the API token.", + "type": "string", + "readOnly": true + }, + "expiry": { + "description": "String-formatted date representing the time when the token expires.", + "type": "string", + "format": "date-time" + } + } + }, + "ApiTokenCollection": { + "type": "object", + "properties": { + "value": { + "description": "The collection of API tokens.", + "type": "array", + "items": { + "$ref": "#/definitions/ApiToken" + } + }, + "nextLink": { + "description": "URL to get the next page of API tokens.", + "type": "string" + } + }, + "required": [ + "value" + ] + }, + "Attestation": { + "type": "object", + "properties": { + "type": { + "description": "Type of the attestation.", + "type": "string" + } + }, + "required": [ + "type" + ], + "discriminator": "type" + }, + "Collection": { + "type": "object", + "properties": { + "value": { + "description": "The collection of entities.", + "type": "array", + "items": { + "type": "object" + } + }, + "nextLink": { + "description": "URL to get the next page of entities.", + "type": "string" + } + }, + "required": [ + "value" + ] + }, + "Device": { + "type": "object", + "properties": { + "id": { + "description": "Unique ID of the device.", + "type": "string", + "readOnly": true + }, + "etag": { + "description": "ETag used to prevent conflict in device updates.", + "type": "string" + }, + "displayName": { + "description": "Display name of the device.", + "type": "string" + }, + "template": { + "description": "The device template definition for the device.", + "type": "string" + }, + "enabled": { + "description": "Whether the device connection to IoT Central has been enabled.", + "type": "boolean" + }, + "provisioned": { + "description": "Whether resources have been allocated for the device.", + "type": "boolean", + "readOnly": true + }, + "simulated": { + "description": "Whether the device is simulated.", + "type": "boolean" + } + } + }, + "DeviceCollection": { + "type": "object", + "properties": { + "value": { + "description": "The collection of devices.", + "type": "array", + "items": { + "$ref": "#/definitions/Device" + } + }, + "nextLink": { + "description": "URL to get the next page of devices.", + "type": "string" + } + }, + "required": [ + "value" + ] + }, + "DeviceCommand": { + "type": "object", + "properties": { + "id": { + "description": "The request ID of the device command execution.", + "type": "string", + "readOnly": true + }, + "connectionTimeout": { + "description": "Connection timeout in seconds to wait for a disconnected device to come online. Defaults to 0 seconds.", + "type": "integer", + "minimum": 0, + "maximum": 30 + }, + "responseTimeout": { + "description": "Response timeout in seconds to wait for a command completion on a device. Defaults to 30 seconds.", + "type": "integer", + "minimum": 5, + "maximum": 30 + }, + "request": { + "description": "The payload for the device command." + }, + "response": { + "description": "The payload of the device command response.", + "readOnly": true + }, + "responseCode": { + "description": "The status code of the device command response.", + "type": "integer", + "readOnly": true + } + } + }, + "DeviceCommandCollection": { + "type": "object", + "properties": { + "value": { + "description": "The collection of device command executions.", + "type": "array", + "items": { + "$ref": "#/definitions/DeviceCommand" + } + }, + "nextLink": { + "description": "URL to get the next page of device command executions.", + "type": "string" + } + }, + "required": [ + "value" + ] + }, + "DeviceCredentials": { + "type": "object", + "properties": { + "idScope": { + "description": "ID scope for connecting to the IoT Central application.", + "type": "string" + }, + "symmetricKey": { + "description": "The symmetric key credentials for the device.", + "$ref": "#/definitions/SymmetricKey" + }, + "x509": { + "description": "The X.509 credential information for the device.", + "$ref": "#/definitions/X509" + }, + "tpm": { + "description": "The TPM credentials for the device.", + "$ref": "#/definitions/Tpm" + } + }, + "required": [ + "idScope" + ] + }, + "DeviceProperties": { + "description": "Property values associated with the device.", + "type": "object", + "additionalProperties": true + }, + "DeviceTelemetry": { + "type": "object", + "properties": { + "value": { + "description": "The last known value of this device telemetry." + }, + "timestamp": { + "description": "String-formatted date representing the time when the telemetry value was sent.", + "type": "string", + "format": "date-time" + } + } + }, + "DeviceTemplate": { + "type": "object", + "properties": { + "@id": { + "description": "Unique ID of the device template.", + "type": "string", + "readOnly": true + }, + "@type": { + "description": "The JSON-LD types of this device template.", + "type": "array", + "items": { + "type": "string" + } + }, + "etag": { + "description": "ETag used to prevent conflict in device template updates.", + "type": "string" + }, + "displayName": { + "description": "Display name of the device template.", + "type": "string" + }, + "description": { + "description": "Detailed description of the device template.", + "type": "string" + }, + "capabilityModel": { + "description": "The capability model utilized by this device template.", + "type": "object" + } + }, + "required": [ + "@type", + "capabilityModel" + ] + }, + "DeviceTemplateCollection": { + "type": "object", + "properties": { + "value": { + "description": "The collection of device templates.", + "type": "array", + "items": { + "$ref": "#/definitions/DeviceTemplate" + } + }, + "nextLink": { + "description": "URL to get the next page of device templates.", + "type": "string" + } + }, + "required": [ + "value" + ] + }, + "EmailUser": { + "x-ms-discriminator-value": "email", + "allOf": [ + { + "$ref": "#/definitions/User" + } + ], + "type": "object", + "properties": { + "email": { + "description": "Email address of the user.", + "type": "string", + "format": "email" + } + }, + "required": [ + "email" + ] + }, + "Permission": { + "type": "object", + "properties": { + "roles": { + "description": "List of role assignments that specify the permissions to access the application.", + "type": "array", + "items": { + "$ref": "#/definitions/RoleAssignment" + }, + "minItems": 1 + } + }, + "required": [ + "roles" + ] + }, + "Role": { + "type": "object", + "properties": { + "id": { + "description": "Unique ID of the role.", + "type": "string", + "readOnly": true + }, + "displayName": { + "description": "Display name of the role.", + "type": "string" + } + } + }, + "RoleAssignment": { + "type": "object", + "properties": { + "role": { + "description": "ID of the role for this role assignment.", + "type": "string" + } + }, + "required": [ + "role" + ] + }, + "RoleCollection": { + "type": "object", + "properties": { + "value": { + "description": "The collection of roles.", + "type": "array", + "items": { + "$ref": "#/definitions/Role" + } + }, + "nextLink": { + "description": "URL to get the next page of roles.", + "type": "string" + } + }, + "required": [ + "value" + ] + }, + "ServicePrincipalUser": { + "x-ms-discriminator-value": "servicePrincipal", + "allOf": [ + { + "$ref": "#/definitions/User" + } + ], + "type": "object", + "properties": { + "tenantId": { + "description": "The AAD tenant ID of the service principal.", + "type": "string" + }, + "objectId": { + "description": "The AAD object ID of the service principal.", + "type": "string" + } + }, + "required": [ + "tenantId", + "objectId" + ] + }, + "SymmetricKey": { + "type": "object", + "properties": { + "primaryKey": { + "description": "The primary key for this credential.", + "type": "string" + }, + "secondaryKey": { + "description": "The secondary key for this credential.", + "type": "string" + } + }, + "required": [ + "primaryKey", + "secondaryKey" + ] + }, + "SymmetricKeyAttestation": { + "x-ms-discriminator-value": "symmetricKey", + "allOf": [ + { + "$ref": "#/definitions/Attestation" + } + ], + "type": "object", + "properties": { + "symmetricKey": { + "description": "The symmetric key credentials for this attestation.", + "$ref": "#/definitions/SymmetricKey" + } + }, + "required": [ + "symmetricKey" + ] + }, + "Tpm": { + "type": "object", + "properties": { + "endorsementKey": { + "description": "The TPM endorsement key for this credential.", + "type": "string" + } + }, + "required": [ + "endorsementKey" + ] + }, + "TpmAttestation": { + "x-ms-discriminator-value": "tpm", + "allOf": [ + { + "$ref": "#/definitions/Attestation" + } + ], + "type": "object", + "properties": { + "tpm": { + "description": "The TPM credentials for this attestation.", + "$ref": "#/definitions/Tpm" + } + }, + "required": [ + "tpm" + ] + }, + "User": { + "allOf": [ + { + "$ref": "#/definitions/Permission" + } + ], + "type": "object", + "properties": { + "id": { + "description": "Unique ID of the user.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Type of the user.", + "type": "string" + } + }, + "required": [ + "type" + ], + "discriminator": "type" + }, + "UserCollection": { + "type": "object", + "properties": { + "value": { + "description": "The collection of users.", + "type": "array", + "items": { + "$ref": "#/definitions/User" + } + }, + "nextLink": { + "description": "URL to get the next page of users.", + "type": "string" + } + }, + "required": [ + "value" + ] + }, + "X509": { + "type": "object", + "properties": { + "clientCertificates": { + "description": "The X.509 client certificates for this credential.", + "$ref": "#/definitions/X509Certificates" + } + } + }, + "X509Attestation": { + "x-ms-discriminator-value": "x509", + "allOf": [ + { + "$ref": "#/definitions/Attestation" + } + ], + "type": "object", + "properties": { + "x509": { + "description": "The X.509 credentials for this attestation.", + "$ref": "#/definitions/X509" + } + }, + "required": [ + "x509" + ] + }, + "X509Certificate": { + "type": "object", + "properties": { + "certificate": { + "description": "The string representation of this certificate.", + "type": "string" + }, + "info": { + "description": "Information about this certificate.", + "readOnly": true, + "$ref": "#/definitions/X509CertificateInfo" + } + } + }, + "X509CertificateInfo": { + "type": "object", + "properties": { + "sha1Thumbprint": { + "description": "The SHA-1 hash value of the certificate.", + "type": "string" + } + }, + "required": [ + "sha1Thumbprint" + ] + }, + "X509Certificates": { + "type": "object", + "properties": { + "primary": { + "description": "The primary X.509 certificate for this credential.", + "$ref": "#/definitions/X509Certificate" + }, + "secondary": { + "description": "The secondary X.509 certificate for this credential.", + "$ref": "#/definitions/X509Certificate" + } + }, + "required": [ + "primary" + ] + } + }, + "paths": { + "/apiTokens": { + "get": { + "operationId": "ApiTokens_List", + "summary": "Get the list of API tokens in an application. The token value will never be returned for security reasons.", + "x-ms-examples": { + "List API tokens": { + "$ref": "./examples/apitoken_list.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + } + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ApiTokenCollection" + } + } + } + } + }, + "/apiTokens/{tokenId}": { + "get": { + "operationId": "ApiTokens_Get", + "summary": "Get an API token by ID.", + "x-ms-examples": { + "Get API token by ID": { + "$ref": "./examples/apitoken_get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "in": "path", + "name": "tokenId", + "description": "Unique ID for the API token.", + "type": "string", + "required": true + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ApiToken" + } + } + } + }, + "put": { + "operationId": "ApiTokens_Create", + "summary": "Create a new API token in the application to use in the IoT Central public API. The token value will be returned in the response, and won't be returned again in subsequent requests.", + "x-ms-examples": { + "Create API token": { + "$ref": "./examples/apitoken_create.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "in": "path", + "name": "tokenId", + "description": "Unique ID for the API token.", + "type": "string", + "required": true + }, + { + "in": "body", + "name": "body", + "description": "API token body.", + "schema": { + "$ref": "#/definitions/ApiToken" + }, + "required": true + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ApiToken" + } + } + } + }, + "delete": { + "operationId": "ApiTokens_Remove", + "summary": "Delete an API token.", + "x-ms-examples": { + "Delete API token": { + "$ref": "./examples/apitoken_delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "in": "path", + "name": "tokenId", + "description": "Unique ID for the API token.", + "type": "string", + "required": true + } + ], + "responses": { + "204": { + "description": "Success" + } + } + } + }, + "/deviceTemplates": { + "get": { + "operationId": "DeviceTemplates_List", + "summary": "Get the list of device templates in an application", + "x-ms-examples": { + "List device templates": { + "$ref": "./examples/devicetemplates_list.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + } + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceTemplateCollection" + } + } + } + } + }, + "/deviceTemplates/{deviceTemplateId}": { + "get": { + "operationId": "DeviceTemplates_Get", + "summary": "Get a device template by ID", + "x-ms-examples": { + "Get a device template by Id": { + "$ref": "./examples/devicetemplates_get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceTemplateId" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceTemplate" + } + } + } + }, + "put": { + "operationId": "DeviceTemplates_Create", + "summary": "Publish a new device template. Default views will be automatically generated for new device templates created this way.", + "x-ms-examples": { + "Create a device template": { + "$ref": "./examples/devicetemplates_create.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceTemplateId" + }, + { + "in": "body", + "name": "body", + "description": "Device template body.", + "schema": { + "$ref": "#/definitions/DeviceTemplate" + }, + "required": true + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceTemplate" + } + } + } + }, + "patch": { + "operationId": "DeviceTemplates_Update", + "summary": "Update the cloud properties and overrides of an existing device template via patch.", + "x-ms-examples": { + "Update a device template": { + "$ref": "./examples/devicetemplates_create.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceTemplateId" + }, + { + "in": "body", + "name": "body", + "description": "Device template patch body.", + "schema": { + "type": "object" + }, + "required": true + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceTemplate" + } + } + } + }, + "delete": { + "operationId": "DeviceTemplates_Remove", + "summary": "Delete a device template", + "description": "Delete an existing device template by device ID.", + "x-ms-examples": { + "Delete a device template by Id": { + "$ref": "./examples/devicetemplates_delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceTemplateId" + } + ], + "responses": { + "204": { + "description": "Success" + } + } + } + }, + "/devices": { + "get": { + "operationId": "Devices_List", + "summary": "Get the list of devices in an application", + "x-ms-examples": { + "List devices": { + "$ref": "./examples/devices_list.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + } + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceCollection" + } + } + } + } + }, + "/devices/{deviceId}": { + "get": { + "operationId": "Devices_Get", + "summary": "Get a device by ID", + "description": "Get details about an existing device by device ID.", + "x-ms-examples": { + "Get device by Id": { + "$ref": "./examples/devices_get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Device" + } + } + } + }, + "put": { + "operationId": "Devices_Create", + "summary": "Create or update a device", + "description": "Create a new device.", + "x-ms-examples": { + "Create device": { + "$ref": "./examples/devices_create.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "in": "body", + "name": "body", + "description": "Device body.", + "schema": { + "$ref": "#/definitions/Device" + }, + "required": true + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Device" + } + } + } + }, + "patch": { + "operationId": "Devices_Update", + "summary": "Update a device via patch", + "description": "Update an existing device by ID.", + "x-ms-examples": { + "Update device": { + "$ref": "./examples/devices_update.json" + } + }, + "consumes": [ + "application/json", + "application/json-patch+json" + ], + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "in": "body", + "name": "body", + "description": "Device patch body.", + "schema": { + "type": "object" + }, + "required": true + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Device" + } + } + } + }, + "delete": { + "operationId": "Devices_Remove", + "summary": "Delete a device", + "description": "Delete an existing device by device ID.", + "x-ms-examples": { + "Delete device": { + "$ref": "./examples/devices_delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + } + ], + "responses": { + "204": { + "description": "Success" + } + } + } + }, + "/devices/{deviceId}/attestation": { + "get": { + "operationId": "Devices_GetAttestation", + "summary": "Get device attestation", + "x-ms-examples": { + "Get device attestation": { + "$ref": "./examples/devices_attestations_get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Attestation" + } + } + } + }, + "put": { + "operationId": "Devices_CreateAttestation", + "summary": "Create an individual device attestation", + "x-ms-examples": { + "Create or update device attestation - Symmetric Key": { + "$ref": "./examples/devices_attestations_set_symmetricKey.json" + }, + "Create or update device attestation - TPM": { + "$ref": "./examples/devices_attestations_set_tpm.json" + }, + "Create or update device attestation - X509": { + "$ref": "./examples/devices_attestations_set_x509.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "in": "body", + "name": "body", + "description": "Individual device attestation body.", + "schema": { + "$ref": "#/definitions/Attestation" + }, + "required": true + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Attestation" + } + } + } + }, + "patch": { + "operationId": "Devices_UpdateAttestation", + "summary": "Update an individual device attestation via patch", + "x-ms-examples": { + "Update device attestation - Symmetric Key": { + "$ref": "./examples/devices_attestations_set_symmetricKey.json" + }, + "Update device attestation - TPM": { + "$ref": "./examples/devices_attestations_set_tpm.json" + }, + "Update device attestation - X509": { + "$ref": "./examples/devices_attestations_set_x509.json" + } + }, + "consumes": [ + "application/json", + "application/json-patch+json" + ], + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "in": "body", + "name": "body", + "description": "Individual device attestation patch body.", + "schema": { + "type": "object" + }, + "required": true + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Attestation" + } + } + } + }, + "delete": { + "operationId": "Devices_RemoveAttestation", + "summary": "Remove an individual device attestation", + "x-ms-examples": { + "Delete device attestation": { + "$ref": "./examples/devices_attestations_delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + } + ], + "responses": { + "204": { + "description": "Success" + } + } + } + }, + "/devices/{deviceId}/commands/{commandName}": { + "get": { + "operationId": "Devices_GetCommandHistory", + "summary": "Get device command history", + "x-ms-examples": { + "Get command history": { + "$ref": "./examples/devices_commandshistory_get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "$ref": "#/parameters/CommandName" + } + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceCommandCollection" + } + } + } + }, + "post": { + "operationId": "Devices_RunCommand", + "summary": "Run a device command", + "description": "Run a command on a device.", + "x-ms-examples": { + "Send command": { + "$ref": "./examples/devices_commands_send.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "$ref": "#/parameters/CommandName" + }, + { + "in": "body", + "name": "body", + "description": "Device command body.", + "schema": { + "$ref": "#/definitions/DeviceCommand" + }, + "required": true + } + ], + "responses": { + "201": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceCommand" + } + } + } + } + }, + "/devices/{deviceId}/components": { + "get": { + "operationId": "Devices_ListComponents", + "summary": "List the components present in a device", + "x-ms-examples": { + "List components": { + "$ref": "./examples/devices_components_get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Collection" + } + } + } + } + }, + "/devices/{deviceId}/components/{componentName}/commands/{commandName}": { + "get": { + "operationId": "Devices_GetComponentCommandHistory", + "summary": "Get component command history", + "x-ms-examples": { + "Get command history": { + "$ref": "./examples/devices_commandshistory_get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "$ref": "#/parameters/ComponentName" + }, + { + "$ref": "#/parameters/CommandName" + } + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceCommandCollection" + } + } + } + }, + "post": { + "operationId": "Devices_RunComponentCommand", + "summary": "Run a component command", + "description": "Run a command on a component.", + "x-ms-examples": { + "Send command": { + "$ref": "./examples/devices_commands_send.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "$ref": "#/parameters/ComponentName" + }, + { + "$ref": "#/parameters/CommandName" + }, + { + "in": "body", + "name": "body", + "description": "Device command body.", + "schema": { + "$ref": "#/definitions/DeviceCommand" + }, + "required": true + } + ], + "responses": { + "201": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceCommand" + } + } + } + } + }, + "/devices/{deviceId}/components/{componentName}/properties": { + "get": { + "operationId": "Devices_GetComponentProperties", + "summary": "Get device properties for a specific component", + "x-ms-examples": { + "Get properties on components": { + "$ref": "./examples/devices_properties_components_get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "$ref": "#/parameters/ComponentName" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceProperties" + } + } + } + }, + "put": { + "operationId": "Devices_ReplaceComponentProperties", + "summary": "Replace device properties for a specific component", + "x-ms-examples": { + "Update properties on components": { + "$ref": "./examples/devices_properties_components_set.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "$ref": "#/parameters/ComponentName" + }, + { + "in": "body", + "name": "body", + "description": "Device properties.", + "schema": { + "$ref": "#/definitions/DeviceProperties" + }, + "required": true + } + ], + "responses": { + "202": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceProperties" + } + } + } + }, + "patch": { + "operationId": "Devices_UpdateComponentProperties", + "summary": "Update device properties for a specific component via patch", + "x-ms-examples": { + "Update properties on components": { + "$ref": "./examples/devices_properties_components_set.json" + } + }, + "consumes": [ + "application/json", + "application/json-patch+json" + ], + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "$ref": "#/parameters/ComponentName" + }, + { + "in": "body", + "name": "body", + "description": "Device properties patch.", + "schema": { + "type": "object" + }, + "required": true + } + ], + "responses": { + "202": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceProperties" + } + } + } + } + }, + "/devices/{deviceId}/components/{componentName}/telemetry/{telemetryName}": { + "get": { + "operationId": "Devices_GetComponentTelemetryValue", + "summary": "Get component telemetry value", + "description": "Get the last telemetry value from a component.", + "x-ms-examples": { + "Get telemetry": { + "$ref": "./examples/devices_telemetry_get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "$ref": "#/parameters/ComponentName" + }, + { + "$ref": "#/parameters/TelemetryName" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceTelemetry" + } + } + } + } + }, + "/devices/{deviceId}/credentials": { + "get": { + "operationId": "Devices_GetCredentials", + "summary": "Get device credentials", + "x-ms-examples": { + "Get device credentials": { + "$ref": "./examples/devicecredentials_get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceCredentials" + } + } + } + } + }, + "/devices/{deviceId}/modules": { + "get": { + "operationId": "Devices_ListModules", + "summary": "List the modules present in a device", + "x-ms-examples": { + "List modules": { + "$ref": "./examples/devices_modules_get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Collection" + } + } + } + } + }, + "/devices/{deviceId}/modules/{moduleName}/commands/{commandName}": { + "get": { + "operationId": "Devices_GetModuleCommandHistory", + "summary": "Get module command history", + "x-ms-examples": { + "Get command history within module": { + "$ref": "./examples/modules_commandshistory_get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "$ref": "#/parameters/ModuleName" + }, + { + "$ref": "#/parameters/CommandName" + } + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceCommandCollection" + } + } + } + }, + "post": { + "operationId": "Devices_RunModuleCommand", + "summary": "Run a module command", + "description": "Run a command on a module.", + "x-ms-examples": { + "Send command to module": { + "$ref": "./examples/modules_commands_send.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "$ref": "#/parameters/ModuleName" + }, + { + "$ref": "#/parameters/CommandName" + }, + { + "in": "body", + "name": "body", + "description": "Device command body.", + "schema": { + "$ref": "#/definitions/DeviceCommand" + }, + "required": true + } + ], + "responses": { + "201": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceCommand" + } + } + } + } + }, + "/devices/{deviceId}/modules/{moduleName}/components": { + "get": { + "operationId": "Devices_ListModuleComponents", + "summary": "List the components present in a module", + "x-ms-examples": { + "List module components": { + "$ref": "./examples/devices_modules_components_get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "$ref": "#/parameters/ModuleName" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Collection" + } + } + } + } + }, + "/devices/{deviceId}/modules/{moduleName}/components/{componentName}/commands/{commandName}": { + "get": { + "operationId": "Devices_GetModuleComponentCommandHistory", + "summary": "Get module component command history", + "x-ms-examples": { + "Get command history within module": { + "$ref": "./examples/modules_commandshistory_get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "$ref": "#/parameters/ModuleName" + }, + { + "$ref": "#/parameters/ComponentName" + }, + { + "$ref": "#/parameters/CommandName" + } + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceCommandCollection" + } + } + } + }, + "post": { + "operationId": "Devices_RunModuleComponentCommand", + "summary": "Run a module component command", + "description": "Run a command on a module.", + "x-ms-examples": { + "Send command to module": { + "$ref": "./examples/modules_commands_send.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "$ref": "#/parameters/ModuleName" + }, + { + "$ref": "#/parameters/ComponentName" + }, + { + "$ref": "#/parameters/CommandName" + }, + { + "in": "body", + "name": "body", + "description": "Device command body.", + "schema": { + "$ref": "#/definitions/DeviceCommand" + }, + "required": true + } + ], + "responses": { + "201": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceCommand" + } + } + } + } + }, + "/devices/{deviceId}/modules/{moduleName}/components/{componentName}/properties": { + "get": { + "operationId": "Devices_GetModuleComponentProperties", + "summary": "Get module properties for a specific component", + "x-ms-examples": { + "Get properties of a module": { + "$ref": "./examples/modules_properties_components_get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "$ref": "#/parameters/ModuleName" + }, + { + "$ref": "#/parameters/ComponentName" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceProperties" + } + } + } + }, + "put": { + "operationId": "Devices_ReplaceModuleComponentProperties", + "summary": "Replace module properties for a specific component", + "x-ms-examples": { + "Update properties of a module within a component": { + "$ref": "./examples/modules_properties_components_set.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "$ref": "#/parameters/ModuleName" + }, + { + "$ref": "#/parameters/ComponentName" + }, + { + "in": "body", + "name": "body", + "description": "Module properties.", + "schema": { + "$ref": "#/definitions/DeviceProperties" + }, + "required": true + } + ], + "responses": { + "202": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceProperties" + } + } + } + }, + "patch": { + "operationId": "Devices_UpdateModuleComponentProperties", + "summary": "Update module properties for a specific component via patch", + "x-ms-examples": { + "Update properties of a module within a component": { + "$ref": "./examples/modules_properties_components_set.json" + } + }, + "consumes": [ + "application/json", + "application/json-patch+json" + ], + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "$ref": "#/parameters/ModuleName" + }, + { + "$ref": "#/parameters/ComponentName" + }, + { + "in": "body", + "name": "body", + "description": "Module properties patch.", + "schema": { + "type": "object" + }, + "required": true + } + ], + "responses": { + "202": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceProperties" + } + } + } + } + }, + "/devices/{deviceId}/modules/{moduleName}/components/{componentName}/telemetry/{telemetryName}": { + "get": { + "operationId": "Devices_GetModuleComponentTelemetryValue", + "summary": "Get module component telemetry value", + "description": "Get the last telemetry value from a module component.", + "x-ms-examples": { + "Get telemetry from module": { + "$ref": "./examples/modules_telemetry_get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "$ref": "#/parameters/ModuleName" + }, + { + "$ref": "#/parameters/ComponentName" + }, + { + "$ref": "#/parameters/TelemetryName" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceTelemetry" + } + } + } + } + }, + "/devices/{deviceId}/modules/{moduleName}/properties": { + "get": { + "operationId": "Devices_GetModuleProperties", + "summary": "Get module properties", + "description": "Get all property values of a module.", + "x-ms-examples": { + "Get properties of a module": { + "$ref": "./examples/modules_properties_get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "$ref": "#/parameters/ModuleName" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceProperties" + } + } + } + }, + "put": { + "operationId": "Devices_ReplaceModuleProperties", + "summary": "Replace module properties", + "description": "Replace all property values of a module.", + "x-ms-examples": { + "Update properties of a module": { + "$ref": "./examples/modules_properties_update.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "$ref": "#/parameters/ModuleName" + }, + { + "in": "body", + "name": "body", + "description": "Module properties.", + "schema": { + "$ref": "#/definitions/DeviceProperties" + }, + "required": true + } + ], + "responses": { + "202": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceProperties" + } + } + } + }, + "patch": { + "operationId": "Devices_UpdateModuleProperties", + "summary": "Update module properties via patch", + "description": "Update property values of a module.", + "x-ms-examples": { + "Update properties of a module": { + "$ref": "./examples/modules_properties_update.json" + } + }, + "consumes": [ + "application/json", + "application/json-patch+json" + ], + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "$ref": "#/parameters/ModuleName" + }, + { + "in": "body", + "name": "body", + "description": "Module properties patch.", + "schema": { + "type": "object" + }, + "required": true + } + ], + "responses": { + "202": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceProperties" + } + } + } + } + }, + "/devices/{deviceId}/modules/{moduleName}/telemetry/{telemetryName}": { + "get": { + "operationId": "Devices_GetModuleTelemetryValue", + "summary": "Get module telemetry value", + "description": "Get the last telemetry value from a module.", + "x-ms-examples": { + "Get telemetry from module": { + "$ref": "./examples/modules_telemetry_get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "$ref": "#/parameters/ModuleName" + }, + { + "$ref": "#/parameters/TelemetryName" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceTelemetry" + } + } + } + } + }, + "/devices/{deviceId}/properties": { + "get": { + "operationId": "Devices_GetProperties", + "summary": "Get device properties", + "description": "Get all property values of a device by device ID.", + "x-ms-examples": { + "Get properties": { + "$ref": "./examples/devices_properties_get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceProperties" + } + } + } + }, + "put": { + "operationId": "Devices_ReplaceProperties", + "summary": "Replace device properties", + "description": "Replace all property values of a device by device ID.", + "x-ms-examples": { + "Update properties": { + "$ref": "./examples/devices_properties_update.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "in": "body", + "name": "body", + "description": "Device properties.", + "schema": { + "$ref": "#/definitions/DeviceProperties" + }, + "required": true + } + ], + "responses": { + "202": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceProperties" + } + } + } + }, + "patch": { + "operationId": "Devices_UpdateProperties", + "summary": "Update device properties via patch", + "description": "Update property values of a device by device ID.", + "x-ms-examples": { + "Update properties": { + "$ref": "./examples/devices_properties_update.json" + } + }, + "consumes": [ + "application/json", + "application/json-patch+json" + ], + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "in": "body", + "name": "body", + "description": "Device properties patch.", + "schema": { + "type": "object" + }, + "required": true + } + ], + "responses": { + "202": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceProperties" + } + } + } + } + }, + "/devices/{deviceId}/telemetry/{telemetryName}": { + "get": { + "operationId": "Devices_GetTelemetryValue", + "summary": "Get device telemetry value", + "description": "Get the last telemetry value from a device.", + "x-ms-examples": { + "Get telemetry": { + "$ref": "./examples/devices_telemetry_get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "$ref": "#/parameters/DeviceId" + }, + { + "$ref": "#/parameters/TelemetryName" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceTelemetry" + } + } + } + } + }, + "/roles": { + "get": { + "operationId": "Roles_List", + "summary": "Get the list of roles in an application.", + "x-ms-examples": { + "List roles": { + "$ref": "./examples/roles_list.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + } + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/RoleCollection" + } + } + } + } + }, + "/roles/{roleId}": { + "get": { + "operationId": "Roles_Get", + "summary": "Get a role by ID.", + "x-ms-examples": { + "Get role by Id": { + "$ref": "./examples/roles_get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "in": "path", + "name": "roleId", + "description": "Unique ID for the role.", + "type": "string", + "required": true + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Role" + } + } + } + } + }, + "/users": { + "get": { + "operationId": "Users_List", + "summary": "Get the list of users in an application", + "x-ms-examples": { + "List users": { + "$ref": "./examples/users_list.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + } + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/UserCollection" + } + } + } + } + }, + "/users/{userId}": { + "get": { + "operationId": "Users_Get", + "summary": "Get a user by ID", + "x-ms-examples": { + "Get a user by ID": { + "$ref": "./examples/users_get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "in": "path", + "name": "userId", + "description": "Unique ID of the user.", + "type": "string", + "required": true + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/User" + } + } + } + }, + "put": { + "operationId": "Users_Create", + "summary": "Create a user in the application", + "x-ms-examples": { + "Add or update a service principal user": { + "$ref": "./examples/users_set_serviceprincipal.json" + }, + "Add or update an email user": { + "$ref": "./examples/users_set.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "in": "path", + "name": "userId", + "description": "Unique ID of the user.", + "type": "string", + "required": true + }, + { + "in": "body", + "name": "body", + "description": "User body.", + "schema": { + "$ref": "#/definitions/User" + }, + "required": true + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/User" + } + } + } + }, + "patch": { + "operationId": "Users_Update", + "summary": "Update a user in the application via patch", + "x-ms-examples": { + "Update a service principal user": { + "$ref": "./examples/users_set_serviceprincipal.json" + }, + "Update an email user": { + "$ref": "./examples/users_set.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "in": "path", + "name": "userId", + "description": "Unique ID of the user.", + "type": "string", + "required": true + }, + { + "in": "body", + "name": "body", + "description": "User patch body.", + "schema": { + "type": "object" + }, + "required": true + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/User" + } + } + } + }, + "delete": { + "operationId": "Users_Remove", + "summary": "Delete a user", + "x-ms-examples": { + "Delete a user": { + "$ref": "./examples/users_delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/Version" + }, + { + "in": "path", + "name": "userId", + "description": "Unique ID of the user.", + "type": "string", + "required": true + } + ], + "responses": { + "204": { + "description": "Success" + } + } + } + } + }, + "parameters": { + "BaseDomain": { + "in": "path", + "name": "baseDomain", + "description": "The base domain for all Azure IoT Central service requests.", + "x-ms-parameter-location": "client", + "type": "string", + "x-ms-skip-url-encoding": true, + "default": "azureiotcentral.com", + "required": true + }, + "CommandName": { + "in": "path", + "name": "commandName", + "description": "Name of this device command.", + "x-ms-parameter-location": "method", + "type": "string", + "required": true + }, + "ComponentName": { + "in": "path", + "name": "componentName", + "description": "Name of the device component.", + "x-ms-parameter-location": "method", + "type": "string", + "required": true + }, + "DeviceId": { + "in": "path", + "name": "deviceId", + "description": "Unique ID of the device.", + "x-ms-parameter-location": "method", + "type": "string", + "required": true + }, + "DeviceTemplateId": { + "in": "path", + "name": "deviceTemplateId", + "description": "Digital Twin Model Identifier of the device template, [More Details](https://github.com/Azure/opendigitaltwins-dtdl/blob/master/DTDL/v2/dtdlv2.md#digital-twin-model-identifier)", + "x-ms-parameter-location": "method", + "type": "string", + "required": true + }, + "ModuleName": { + "in": "path", + "name": "moduleName", + "description": "Name of the device module.", + "x-ms-parameter-location": "method", + "type": "string", + "required": true + }, + "Subdomain": { + "in": "path", + "name": "subdomain", + "description": "The application subdomain.", + "x-ms-parameter-location": "client", + "type": "string", + "required": true + }, + "TelemetryName": { + "in": "path", + "name": "telemetryName", + "description": "Name of this device telemetry.", + "x-ms-parameter-location": "method", + "type": "string", + "required": true + }, + "Version": { + "in": "query", + "name": "api-version", + "description": "The version of the API being called.", + "x-ms-parameter-location": "client", + "type": "string", + "default": "1.0", + "required": true + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/iotcentral/data-plane/readme.csharp.md b/specification/iotcentral/data-plane/readme.csharp.md new file mode 100644 index 000000000000..7940fbca96c8 --- /dev/null +++ b/specification/iotcentral/data-plane/readme.csharp.md @@ -0,0 +1,15 @@ +## CSharp + +These settings apply only when `--csharp` is specified on the command line. +Please also specify `--csharp-sdks-folder=`. + +```yaml $(csharp) +csharp: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 1 + clear-output-folder: true + client-side-validation: false + namespace: Microsoft.Azure.IoTCentral + output-folder: $(csharp-sdks-folder)/iotcentral/Generated +``` \ No newline at end of file diff --git a/specification/iotcentral/data-plane/readme.go.md b/specification/iotcentral/data-plane/readme.go.md new file mode 100644 index 000000000000..bb157476ac20 --- /dev/null +++ b/specification/iotcentral/data-plane/readme.go.md @@ -0,0 +1,12 @@ +## Go + +These settings apply only when `--go` is specified on the command line. +Please also specify `--go-sdks-folder=`. + +```yaml $(go) +go: + license-header: MICROSOFT_MIT_NO_VERSION + namespace: iotcentral + clear-output-folder: true + output-folder: $(go-sdks-folder)/services/preview/$(namespace)/2021-04-30-preview/$(namespace) +``` \ No newline at end of file diff --git a/specification/iotcentral/data-plane/readme.md b/specification/iotcentral/data-plane/readme.md index dbd8bbdd0b35..86b5c74bbc71 100644 --- a/specification/iotcentral/data-plane/readme.md +++ b/specification/iotcentral/data-plane/readme.md @@ -1,72 +1,74 @@ # IoT Central - API client generation > see https://aka.ms/autorest This is the AutoRest configuration file for Azure IoT Central. ---- + ## Getting Started To build the SDK for Azure IoT Central, simply [Install AutoRest](https://aka.ms/autorest/install) and in this folder, run: -> `autorest` +> `autorest readme.md` To see additional help and options, run: > `autorest --help` --- ## Configuration + +### Basic Information + These are the global settings for the IoT Central API. + ``` yaml openapi-type: data-plane -tag: package-2019-10-28-preview +tag: package-2021-04-30-preview ``` -### Tag: package-2019-10-28-preview -These settings apply only when `--tag=package-2019-10-28-preview` is specified on the command line. +### Tag: package-2021-04-30-preview +These settings apply only when `--tag=package-2021-04-30-preview` is specified on the command line. -```yaml $(package-2019-10-28-preview-global) +```yaml $(tag) == 'package-2021-04-30-preview' input-file: - - Microsoft.IoTCentral/preview/2019-10-28-preview/iotcentralapps.json + - Microsoft.IoTCentral/preview/2021-04-30-preview/iotcentral.json ``` -```yaml $(package-2019-10-28-preview-app) + +### Tag: package-1.0 +These settings apply only when `--tag=package-1.0` is specified on the command line. + +```yaml $(tag) == 'package-1.0' input-file: - - Microsoft.IoTCentral/preview/2019-10-28-preview/iotcentral.json + - Microsoft.IoTCentral/stable/1.0/iotcentral.json ``` +--- -```yaml -batch: - - package-2019-10-28-preview-global : true - - package-2019-10-28-preview-app: true -``` +# Code Generation -```yaml -version: latest -clear-output-folder: true -# azure-validator: true -semantic-validator: true -azure-arm: true -add-credentials: true -generate-metadata: true -license-header: MICROSOFT_MIT_NO_VERSION -csharp: - namespace: Microsoft.Azure.IotCentral - output-folder: client/csharp/Microsoft.Azure.IotCentral -nodejs: - package-name: azure-iotcentral - package-version: 1.0.0 - output-folder: client/nodejs -``` -## Multi-API/Profile support for AutoRest v3 generators -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. -This block is updated by an automatic script. Edits may be lost! -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.IoTCentral/preview/2019-10-28-preview/iotcentralapps.json - - $(this-folder)/Microsoft.IoTCentral/preview/2019-10-28-preview/iotcentral.json +## Swagger to SDK +This section describes what SDK should be generated by the automatic system. +This is not used by Autorest itself. + +```yaml $(swagger-to-sdk) +swagger-to-sdk: + - repo: azure-sdk-for-python + - repo: azure-sdk-for-net + - repo: azure-sdk-for-js + after_scripts: + - bundle install && rake arm:regen_all_profiles['iotcentrals'] ``` -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` \ No newline at end of file + +## Python + +See configuration in [readme.python.md](./readme.python.md) + +## TypeScript + +See configuration in [readme.typescript.md](./readme.typescript.md) + +## NodeJs + +See configuration in [readme.nodejs.md](./readme.nodejs.md) + +## CSharp + +See configuration in [readme.csharp.md](./readme.csharp.md) + +## Go + +See configuration in [readme.go.md](./readme.go.md) \ No newline at end of file diff --git a/specification/iotcentral/data-plane/readme.nodejs.md b/specification/iotcentral/data-plane/readme.nodejs.md new file mode 100644 index 000000000000..7726e6c24eb1 --- /dev/null +++ b/specification/iotcentral/data-plane/readme.nodejs.md @@ -0,0 +1,15 @@ +## Node.js + +These settings apply only when `--nodejs` is specified on the command line. +Please also specify `--node-sdks-folder=`. + +``` yaml $(nodejs) +nodejs: + azure-arm: true + package-name: azure-iotcentral + package-version: 1.0.0-preview + output-folder: $(node-sdks-folder)/lib/services/iotcentral + generate-license-txt: true + generate-package-json: true + generate-readme-md: true +``` \ No newline at end of file diff --git a/specification/iotcentral/data-plane/readme.python.md b/specification/iotcentral/data-plane/readme.python.md new file mode 100644 index 000000000000..adf805b22311 --- /dev/null +++ b/specification/iotcentral/data-plane/readme.python.md @@ -0,0 +1,35 @@ +## Python + +These settings apply only when `--python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +```yaml $(python) +python: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 2 + no-namespace-folders: true + clear-output-folder: true +``` + +### Tag: package-2021-04-30-preview +These settings apply only when `--tag=package-2021-04-30-preview` is specified on the command line. + +```yaml $(tag) == 'package-2021-04-30-preview' +python: + namespace: Microsoft.Azure.IotCentral.Preview + package-name: iotcentral + package-version: 2021-04-30-preview + output-folder: $(python-sdks-folder)/iotcentral/preview +``` + +### Tag: package-1.0 +These settings apply only when `--tag=package-1.0` is specified on the command line. + +```yaml $(tag) == 'package-1.0' +python: + namespace: Microsoft.Azure.IotCentral.Stable + package-name: iotcentral + package-version: 1.0 + output-folder: $(python-sdks-folder)/iotcentral/1.0 +``` \ No newline at end of file diff --git a/specification/iotcentral/data-plane/readme.typescript.md b/specification/iotcentral/data-plane/readme.typescript.md new file mode 100644 index 000000000000..3693a5bcb4c3 --- /dev/null +++ b/specification/iotcentral/data-plane/readme.typescript.md @@ -0,0 +1,14 @@ +## TypeScript + +These settings apply only when `--typescript` is specified on the command line. +Please also specify `--typescript-sdks-folder=`. + +```yaml $(typescript) +typescript: + azure-arm: true + package-name: "azure-iotcentral" + package-version: 1.0.0-preview + output-folder: "$(typescript-sdks-folder)/packages/iotcentral" + payload-flattening-threshold: 1 + generate-metadata: true +``` \ No newline at end of file diff --git a/specification/iotcentral/resource-manager/readme.azureresourceschema.md b/specification/iotcentral/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 3db7de0ae97a..000000000000 --- a/specification/iotcentral/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,24 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-iotcentral-2018-09-01 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-iotcentral-2018-09-01 and azureresourceschema - -``` yaml $(tag) == 'schema-iotcentral-2018-09-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.IoTCentral/stable/2018-09-01/iotcentral.json - -``` diff --git a/specification/iotcentral/resource-manager/readme.go.md b/specification/iotcentral/resource-manager/readme.go.md index d3c3f5de7d28..6ae9907b07b5 100644 --- a/specification/iotcentral/resource-manager/readme.go.md +++ b/specification/iotcentral/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION clear-output-folder: true namespace: iotcentral ``` diff --git a/specification/iotcentral/resource-manager/readme.md b/specification/iotcentral/resource-manager/readme.md index 7870e12dbded..e173636bff92 100644 --- a/specification/iotcentral/resource-manager/readme.md +++ b/specification/iotcentral/resource-manager/readme.md @@ -54,7 +54,7 @@ This is not used by Autorest itself. ``` yaml $(swagger-to-sdk) swagger-to-sdk: - repo: azure-sdk-for-net - - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-java - repo: azure-sdk-for-go - repo: azure-sdk-for-js @@ -63,8 +63,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_iot_central'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js iotcentral/resource-manager ``` ## C# @@ -134,7 +132,5 @@ regenerate-manager: true generate-interface: true ``` -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/iotcentral/resource-manager/readme.python.md b/specification/iotcentral/resource-manager/readme.python.md index af2c1668bc45..a0e299e3c95b 100644 --- a/specification/iotcentral/resource-manager/readme.python.md +++ b/specification/iotcentral/resource-manager/readme.python.md @@ -6,23 +6,20 @@ Use `--python-mode=update` if you already have a setup.py and just want to updat ``` yaml $(python) python-mode: create -python: - azure-arm: true - license-header: MICROSOFT_MIT_NO_VERSION - payload-flattening-threshold: 2 - namespace: azure.mgmt.iotcentral - package-name: azure-mgmt-iotcentral - clear-output-folder: true +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +namespace: azure.mgmt.iotcentral +package-name: azure-mgmt-iotcentral +package-version: 1.0.0b1 +clear-output-folder: true ``` ``` yaml $(python) && $(python-mode) == 'update' -python: - no-namespace-folders: true - output-folder: $(python-sdks-folder)/iothub/azure-mgmt-iotcentral/azure/mgmt/iotcentral +no-namespace-folders: true +output-folder: $(python-sdks-folder)/iothub/azure-mgmt-iotcentral/azure/mgmt/iotcentral ``` ``` yaml $(python) && $(python-mode) == 'create' -python: - basic-setup-py: true - output-folder: $(python-sdks-folder)/iothub/azure-mgmt-iotcentral +basic-setup-py: true +output-folder: $(python-sdks-folder)/iothub/azure-mgmt-iotcentral ``` diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2018-12-01-preview/iothub.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2018-12-01-preview/iothub.json index 97d6f6c8e5b5..a3fd74f8fe31 100644 --- a/specification/iothub/resource-manager/Microsoft.Devices/preview/2018-12-01-preview/iothub.json +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2018-12-01-preview/iothub.json @@ -121,7 +121,7 @@ "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.", + "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. If certain properties are missing in the JSON, updating IoT Hub may cause these values to fallback to default, which may lead to unexpected behavior.", "operationId": "IotHubResource_CreateOrUpdate", "x-ms-examples": { "IotHubResource_CreateOrUpdate": { diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-03-22-preview/iothub.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-03-22-preview/iothub.json index 121d86871358..27464ad9053f 100644 --- a/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-03-22-preview/iothub.json +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-03-22-preview/iothub.json @@ -121,7 +121,7 @@ "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.", + "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. If certain properties are missing in the JSON, updating IoT Hub may cause these values to fallback to default, which may lead to unexpected behavior.", "operationId": "IotHubResource_CreateOrUpdate", "x-ms-examples": { "IotHubResource_CreateOrUpdate": { diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/iothub.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/iothub.json index 001208137980..76b3b11a5ba4 100644 --- a/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/iothub.json +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/iothub.json @@ -121,7 +121,7 @@ "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.", + "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. If certain properties are missing in the JSON, updating IoT Hub may cause these values to fallback to default, which may lead to unexpected behavior.", "operationId": "IotHubResource_CreateOrUpdate", "x-ms-examples": { "IotHubResource_CreateOrUpdate": { diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2020-07-10-preview/iothub.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2020-07-10-preview/iothub.json index 59d9bcb1c64e..1d75871b9a74 100644 --- a/specification/iothub/resource-manager/Microsoft.Devices/preview/2020-07-10-preview/iothub.json +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2020-07-10-preview/iothub.json @@ -121,7 +121,7 @@ "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.", + "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. If certain properties are missing in the JSON, updating IoT Hub may cause these values to fallback to default, which may lead to unexpected behavior. If certain properties are missing in the JSON, updating IoT Hub may cause these values to fallback to default, which may lead to unexpected behavior.", "operationId": "IotHubResource_CreateOrUpdate", "x-ms-examples": { "IotHubResource_CreateOrUpdate": { diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2020-08-31-preview/iothub.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2020-08-31-preview/iothub.json index 25d6f31242e9..1c4157b34285 100644 --- a/specification/iothub/resource-manager/Microsoft.Devices/preview/2020-08-31-preview/iothub.json +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2020-08-31-preview/iothub.json @@ -121,7 +121,7 @@ "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.", + "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. If certain properties are missing in the JSON, updating IoT Hub may cause these values to fallback to default, which may lead to unexpected behavior.", "operationId": "IotHubResource_CreateOrUpdate", "x-ms-examples": { "IotHubResource_CreateOrUpdate": { diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-02-01-preview/iothub.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-02-01-preview/iothub.json index 71d10452c8a4..1ea903462028 100644 --- a/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-02-01-preview/iothub.json +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-02-01-preview/iothub.json @@ -4246,7 +4246,7 @@ "enum": [ "SystemAssigned", "UserAssigned", - "SystemAssigned,UserAssigned", + "SystemAssigned, UserAssigned", "None" ], "x-ms-enum": { diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-03-03-preview/iothub.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-03-03-preview/iothub.json index 98d5554a1b74..39215739404a 100644 --- a/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-03-03-preview/iothub.json +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-03-03-preview/iothub.json @@ -4274,7 +4274,7 @@ "enum": [ "SystemAssigned", "UserAssigned", - "SystemAssigned,UserAssigned", + "SystemAssigned, UserAssigned", "None" ], "x-ms-enum": { diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/IotHub_ManualFailover.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/IotHub_ManualFailover.json new file mode 100644 index 000000000000..1d65a6848d47 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/IotHub_ManualFailover.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "iotHubName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "failoverInput": { + "failoverRegion": "testHub" + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/checkNameAvailability.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/checkNameAvailability.json new file mode 100644 index 000000000000..e6ff55327c77 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/checkNameAvailability.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "operationInputs": { + "name": "test-request" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": true, + "reason": "Invalid", + "message": "" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_certificatescreateorupdate.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_certificatescreateorupdate.json new file mode 100644 index 000000000000..f7037bd4a0f7 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_certificatescreateorupdate.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "resourceName": "iothub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "certificateName": "cert", + "certificateDescription": { + "properties": { + "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", + "certificate": "############################################" + }, + "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", + "certificate": "############################################" + }, + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/ProvisioningServives/myFirstProvisioningService/certificates/cert", + "name": "cert", + "type": "Microsoft.Devices/IotHubs/Certificates", + "etag": "AAAAAAExpNs=" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_certificatesdelete.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_certificatesdelete.json new file mode 100644 index 000000000000..a5713a94276c --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_certificatesdelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "resourceName": "myhub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "certificateName": "cert", + "If-Match": "AAAAAAAADGk=" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_certverify.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_certverify.json new file mode 100644 index 000000000000..9b41efa91acf --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_certverify.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "resourceName": "myFirstProvisioningService", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "certificateName": "cert", + "If-Match": "AAAAAAAADGk=", + "certificateVerificationBody": { + "certificate": "#####################################" + } + }, + "responses": { + "200": { + "body": { + "properties": { + "subject": "CN=andbucdevice1", + "expiry": "Sat, 31 Dec 2039 23:59:59 GMT", + "thumbprint": "97388663832D0393C9246CAB4FBA2C8677185A25", + "isVerified": true, + "created": "Thu, 12 Oct 2017 19:23:50 GMT", + "updated": "Thu, 12 Oct 2017 19:26:56 GMT" + }, + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/ProvisioningServices/myFirstProvisioningService/certificates/cert", + "name": "cert", + "type": "Microsoft.Devices/IotHubs/Certificates", + "etag": "AAAAAAExpTQ=" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_createOrUpdate.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_createOrUpdate.json new file mode 100644 index 000000000000..7c3613660947 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_createOrUpdate.json @@ -0,0 +1,296 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "iotHubDescription": { + "location": "centraluseuap", + "tags": {}, + "etag": "AAAAAAFD6M4=", + "properties": { + "ipFilterRules": [], + "networkRuleSets": { + "defaultAction": "Deny", + "applyToBuiltInEventHubEndpoint": true, + "ipRules": [ + { + "filterName": "rule1", + "action": "Allow", + "ipMask": "131.117.159.53" + }, + { + "filterName": "rule2", + "action": "Allow", + "ipMask": "157.55.59.128/25" + } + ] + }, + "eventHubEndpoints": { + "events": { + "retentionTimeInDays": 1, + "partitionCount": 2 + } + }, + "routing": { + "endpoints": { + "serviceBusQueues": [], + "serviceBusTopics": [], + "eventHubs": [], + "storageContainers": [] + }, + "routes": [], + "fallbackRoute": { + "name": "$fallback", + "source": "DeviceMessages", + "condition": "true", + "endpointNames": [ + "events" + ], + "isEnabled": true + } + }, + "storageEndpoints": { + "$default": { + "sasTtlAsIso8601": "PT1H", + "connectionString": "", + "containerName": "" + } + }, + "messagingEndpoints": { + "fileNotifications": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "enableFileUploadNotifications": false, + "cloudToDevice": { + "maxDeliveryCount": 10, + "defaultTtlAsIso8601": "PT1H", + "feedback": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "features": "None", + "minTlsVersion": "1.2" + }, + "sku": { + "name": "S1", + "capacity": 1 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ae24ff83-d2ca-4fc8-9717-05dae4bba489/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub", + "name": "testHub", + "type": "Microsoft.Devices/IotHubs", + "location": "centraluseuap", + "tags": {}, + "etag": "AAAAAAFD6M4=", + "properties": { + "state": "Active", + "provisioningState": "Succeeded", + "ipFilterRules": [ + { + "filterName": "rule1", + "action": "Accept", + "ipMask": "131.117.159.53" + }, + { + "filterName": "rule2", + "action": "Accept", + "ipMask": "157.55.59.128/25" + } + ], + "networkRuleSets": { + "defaultAction": "Deny", + "applyToBuiltInEventHubEndpoint": true, + "ipRules": [ + { + "filterName": "rule1", + "action": "Allow", + "ipMask": "131.117.159.53" + }, + { + "filterName": "rule2", + "action": "Allow", + "ipMask": "157.55.59.128/25" + } + ] + }, + "hostName": "iot-dps-cit-hub-1.azure-devices.net", + "eventHubEndpoints": { + "events": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1", + "endpoint": "sb://iothub-ns-iot-dps-ci-245306-76aca8e13b.servicebus.windows.net/" + } + }, + "routing": { + "endpoints": { + "serviceBusQueues": [], + "serviceBusTopics": [], + "eventHubs": [], + "storageContainers": [] + }, + "routes": [], + "fallbackRoute": { + "name": "$fallback", + "source": "DeviceMessages", + "condition": "true", + "endpointNames": [ + "events" + ], + "isEnabled": true + } + }, + "storageEndpoints": { + "$default": { + "sasTtlAsIso8601": "PT1H", + "connectionString": "", + "containerName": "" + } + }, + "messagingEndpoints": { + "fileNotifications": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "enableFileUploadNotifications": false, + "cloudToDevice": { + "maxDeliveryCount": 10, + "defaultTtlAsIso8601": "PT1H", + "feedback": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "features": "None", + "minTlsVersion": "1.2" + }, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + }, + "201": { + "body": { + "id": "/subscriptions/ae24ff83-d2ca-4fc8-9717-05dae4bba489/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub", + "name": "testHub", + "type": "Microsoft.Devices/IotHubs", + "location": "centraluseuap", + "tags": {}, + "etag": "AAAAAAFD6M4=", + "properties": { + "state": "Active", + "provisioningState": "Succeeded", + "ipFilterRules": [ + { + "filterName": "rule1", + "action": "Accept", + "ipMask": "131.117.159.53" + }, + { + "filterName": "rule2", + "action": "Accept", + "ipMask": "157.55.59.128/25" + } + ], + "networkRuleSets": { + "defaultAction": "Deny", + "applyToBuiltInEventHubEndpoint": true, + "ipRules": [ + { + "filterName": "rule1", + "action": "Allow", + "ipMask": "131.117.159.53" + }, + { + "filterName": "rule2", + "action": "Allow", + "ipMask": "157.55.59.128/25" + } + ] + }, + "hostName": "iot-dps-cit-hub-1.azure-devices.net", + "eventHubEndpoints": { + "events": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1", + "endpoint": "sb://iothub-ns-iot-dps-ci-245306-76aca8e13b.servicebus.windows.net/" + } + }, + "routing": { + "endpoints": { + "serviceBusQueues": [], + "serviceBusTopics": [], + "eventHubs": [], + "storageContainers": [] + }, + "routes": [], + "fallbackRoute": { + "name": "$fallback", + "source": "DeviceMessages", + "condition": "true", + "endpointNames": [ + "events" + ], + "isEnabled": true + } + }, + "storageEndpoints": { + "$default": { + "sasTtlAsIso8601": "PT1H", + "connectionString": "", + "containerName": "" + } + }, + "messagingEndpoints": { + "fileNotifications": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "enableFileUploadNotifications": false, + "cloudToDevice": { + "maxDeliveryCount": 10, + "defaultTtlAsIso8601": "PT1H", + "feedback": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "features": "None", + "minTlsVersion": "1.2" + }, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_createconsumergroup.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_createconsumergroup.json new file mode 100644 index 000000000000..18cc97a1451a --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_createconsumergroup.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-07-01-preview", + "eventHubEndpointName": "events", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "name": "test", + "consumerGroupBody": { + "properties": { + "name": "test" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "created": "Thu, 15 Jun 2017 19:20:58 GMT" + }, + "id": "/subscriptions/cmd-sub-1/resourceGroups/cmd-rg-1/providers/Microsoft.Devices/IotHubs/test-hub-2/eventHubEndpoints/events/ConsumerGroups/%24Default", + "name": "test", + "type": "Microsoft.Devices/IotHubs/EventHubEndpoints/ConsumerGroups", + "etag": "AAAAAAFD6M4=" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_delete.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_delete.json new file mode 100644 index 000000000000..b6d97699ea49 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_delete.json @@ -0,0 +1,218 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub", + "name": "testHub", + "type": "Microsoft.Devices/IotHubs", + "location": "centraluseuap", + "tags": {}, + "etag": "AAAAAAFD6M4=", + "properties": { + "state": "Active", + "provisioningState": "Succeeded", + "ipFilterRules": [ + { + "filterName": "rule1", + "action": "Accept", + "ipMask": "131.117.159.53" + }, + { + "filterName": "rule2", + "action": "Accept", + "ipMask": "157.55.59.128/25" + } + ], + "networkRuleSets": { + "defaultAction": "Deny", + "applyToBuiltInEventHubEndpoint": true, + "ipRules": [ + { + "filterName": "rule1", + "action": "Allow", + "ipMask": "131.117.159.53" + }, + { + "filterName": "rule2", + "action": "Allow", + "ipMask": "157.55.59.128/25" + } + ] + }, + "hostName": "iot-dps-cit-hub-1.azure-devices.net", + "eventHubEndpoints": { + "events": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1", + "endpoint": "sb://iothub-ns-iot-dps-ci-245306-76aca8e13b.servicebus.windows.net/" + } + }, + "routing": { + "endpoints": { + "serviceBusQueues": [], + "serviceBusTopics": [], + "eventHubs": [], + "storageContainers": [] + }, + "routes": [], + "fallbackRoute": { + "source": "DeviceMessages", + "condition": "true", + "endpointNames": [ + "events" + ], + "isEnabled": true + } + }, + "storageEndpoints": { + "$default": { + "sasTtlAsIso8601": "PT1H", + "connectionString": "", + "containerName": "" + } + }, + "messagingEndpoints": { + "fileNotifications": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "enableFileUploadNotifications": false, + "cloudToDevice": { + "maxDeliveryCount": 10, + "defaultTtlAsIso8601": "PT1H", + "feedback": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "features": "None" + }, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + }, + "204": {}, + "202": { + "body": { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub", + "name": "testHub", + "type": "Microsoft.Devices/IotHubs", + "location": "centraluseuap", + "tags": {}, + "etag": "AAAAAAFD6M4=", + "properties": { + "state": "Active", + "provisioningState": "Succeeded", + "ipFilterRules": [ + { + "filterName": "rule1", + "action": "Accept", + "ipMask": "131.117.159.53" + }, + { + "filterName": "rule2", + "action": "Accept", + "ipMask": "157.55.59.128/25" + } + ], + "networkRuleSets": { + "defaultAction": "Deny", + "applyToBuiltInEventHubEndpoint": true, + "ipRules": [ + { + "filterName": "rule1", + "action": "Allow", + "ipMask": "131.117.159.53" + }, + { + "filterName": "rule2", + "action": "Allow", + "ipMask": "157.55.59.128/25" + } + ] + }, + "hostName": "iot-dps-cit-hub-1.azure-devices.net", + "eventHubEndpoints": { + "events": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1", + "endpoint": "sb://iothub-ns-iot-dps-ci-245306-76aca8e13b.servicebus.windows.net/" + } + }, + "routing": { + "endpoints": { + "serviceBusQueues": [], + "serviceBusTopics": [], + "eventHubs": [], + "storageContainers": [] + }, + "routes": [], + "fallbackRoute": { + "source": "DeviceMessages", + "condition": "true", + "endpointNames": [ + "events" + ], + "isEnabled": true + } + }, + "storageEndpoints": { + "$default": { + "sasTtlAsIso8601": "PT1H", + "connectionString": "", + "containerName": "" + } + }, + "messagingEndpoints": { + "fileNotifications": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "enableFileUploadNotifications": false, + "cloudToDevice": { + "maxDeliveryCount": 10, + "defaultTtlAsIso8601": "PT1H", + "feedback": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "features": "None" + }, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + }, + "404": { + "body": {} + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_deleteconsumergroup.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_deleteconsumergroup.json new file mode 100644 index 000000000000..88ed6e0fb88e --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_deleteconsumergroup.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-07-01-preview", + "eventHubEndpointName": "events", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "name": "test" + }, + "responses": { + "200": {} + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_deleteprivateendpointconnection.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_deleteprivateendpointconnection.json new file mode 100644 index 000000000000..d4406f95a125 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_deleteprivateendpointconnection.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "privateEndpointConnectionName": "myPrivateEndpointConnection" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub/PrivateEndpointConnections/myPrivateEndpointConnection", + "name": "myPrivateEndpointConnection", + "type": "Microsoft.Devices/IotHubs/PrivateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/a9eba280-4734-4d49-878f-b5549d1d0453/resourceGroups/networkResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Disconnected", + "description": "Deleted", + "actionsRequired": "None" + } + } + } + }, + "202": { + "body": { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub/PrivateEndpointConnections/myPrivateEndpointConnection", + "name": "myPrivateEndpointConnection", + "type": "Microsoft.Devices/IotHubs/PrivateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/a9eba280-4734-4d49-878f-b5549d1d0453/resourceGroups/networkResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Disconnected", + "description": "Deleted", + "actionsRequired": "None" + } + } + } + }, + "204": {} + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_exportdevices.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_exportdevices.json new file mode 100644 index 000000000000..c3fa85a6b3d0 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_exportdevices.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "exportDevicesParameters": { + "authenticationType": "identityBased", + "identity": { + "userAssignedIdentity": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1" + }, + "exportBlobContainerUri": "testBlob", + "excludeKeys": true + } + }, + "responses": { + "200": { + "body": { + "jobId": "test", + "startTimeUtc": "Thu, 15 Jun 2017 19:20:58 GMT", + "endTimeUtc": "Thu, 15 Jun 2017 19:20:58 GMT", + "type": "unknown", + "status": "unknown" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_generateverificationcode.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_generateverificationcode.json new file mode 100644 index 000000000000..73a5e01b4b21 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_generateverificationcode.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "certificateName": "cert", + "If-Match": "AAAAAAAADGk=" + }, + "responses": { + "200": { + "body": { + "name": "cert", + "properties": { + "verificationCode": "##################################", + "subject": "CN=andbucdevice1", + "expiry": "Sat, 31 Dec 2039 23:59:59 GMT", + "thumbprint": "##############################", + "isVerified": false, + "created": "Thu, 12 Oct 2017 19:23:50 GMT", + "updated": "Thu, 12 Oct 2017 19:26:56 GMT" + } + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_get.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_get.json new file mode 100644 index 000000000000..3839dc0f69b4 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_get.json @@ -0,0 +1,128 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub", + "name": "testHub", + "type": "Microsoft.Devices/IotHubs", + "location": "centraluseuap", + "tags": {}, + "etag": "AAAAAAFD6M4=", + "properties": { + "state": "Active", + "provisioningState": "Succeeded", + "ipFilterRules": [ + { + "filterName": "rule1", + "action": "Accept", + "ipMask": "131.117.159.53" + }, + { + "filterName": "rule2", + "action": "Accept", + "ipMask": "157.55.59.128/25" + } + ], + "networkRuleSets": { + "defaultAction": "Deny", + "applyToBuiltInEventHubEndpoint": true, + "ipRules": [ + { + "filterName": "rule1", + "action": "Allow", + "ipMask": "131.117.159.53" + }, + { + "filterName": "rule2", + "action": "Allow", + "ipMask": "157.55.59.128/25" + } + ] + }, + "hostName": "iot-dps-cit-hub-1.azure-devices.net", + "eventHubEndpoints": { + "events": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1", + "endpoint": "sb://iothub-ns-iot-dps-ci-245306-76aca8e13b.servicebus.windows.net/" + } + }, + "routing": { + "endpoints": { + "serviceBusQueues": [], + "serviceBusTopics": [], + "eventHubs": [], + "storageContainers": [] + }, + "routes": [], + "fallbackRoute": { + "source": "DeviceMessages", + "condition": "true", + "endpointNames": [ + "events" + ], + "isEnabled": true + } + }, + "storageEndpoints": { + "$default": { + "sasTtlAsIso8601": "PT1H", + "connectionString": "", + "containerName": "" + } + }, + "messagingEndpoints": { + "fileNotifications": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "enableFileUploadNotifications": false, + "cloudToDevice": { + "maxDeliveryCount": 10, + "defaultTtlAsIso8601": "PT1H", + "feedback": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "features": "None", + "deviceStreams": { + "streamingEndpoints": [ + "https://streams.azure-devices-int.net:9443" + ] + }, + "locations": [ + { + "location": "West US", + "role": "primary" + }, + { + "location": "East US", + "role": "secondary" + } + ], + "minTlsVersion": "1.2" + }, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_getcertificate.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_getcertificate.json new file mode 100644 index 000000000000..6cd53ac4a049 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_getcertificate.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "resourceName": "testhub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-07-01-preview", + "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", + "certificate": "############################################" + }, + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/andbuc-hub/certificates/cert", + "name": "cert", + "type": "Microsoft.Devices/IotHubs/Certificates", + "etag": "AAAAAAExpNs=" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_getconsumergroup.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_getconsumergroup.json new file mode 100644 index 000000000000..a38dfcc78825 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_getconsumergroup.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-07-01-preview", + "eventHubEndpointName": "events", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "name": "test" + }, + "responses": { + "200": { + "body": { + "properties": { + "created": "Thu, 15 Jun 2017 19:20:58 GMT" + }, + "id": "/subscriptions/cmd-sub-1/resourceGroups/cmd-rg-1/providers/Microsoft.Devices/IotHubs/test-hub-2/eventHubEndpoints/events/ConsumerGroups/%24Default", + "name": "test", + "type": "Microsoft.Devices/IotHubs/EventHubEndpoints/ConsumerGroups", + "etag": "AAAAAAFD6M4=" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_getjob.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_getjob.json new file mode 100644 index 000000000000..a0ff33cf5925 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_getjob.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "jobId": "test" + }, + "responses": { + "200": { + "body": { + "jobId": "test", + "startTimeUtc": "Thu, 15 Jun 2017 19:20:58 GMT", + "endTimeUtc": "Thu, 15 Jun 2017 19:20:58 GMT", + "type": "unknown", + "status": "unknown" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_getkey.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_getkey.json new file mode 100644 index 000000000000..e4b07a4d1a7f --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_getkey.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "keyName": "iothubowner" + }, + "responses": { + "200": { + "body": { + "keyName": "iothubowner", + "primaryKey": "", + "secondaryKey": "", + "rights": "RegistryWrite, ServiceConnect, DeviceConnect" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_getprivateendpointconnection.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_getprivateendpointconnection.json new file mode 100644 index 000000000000..ab2f52a3b66a --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_getprivateendpointconnection.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "privateEndpointConnectionName": "myPrivateEndpointConnection" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub/PrivateEndpointConnections/myPrivateEndpointConnection", + "name": "myPrivateEndpointConnection", + "type": "Microsoft.Devices/IotHubs/PrivateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/a9eba280-4734-4d49-878f-b5549d1d0453/resourceGroups/networkResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "Please approve my request!", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_getprivatelinkresources.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_getprivatelinkresources.json new file mode 100644 index 000000000000..3adf004a1b87 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_getprivatelinkresources.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "groupId": "iotHub" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub/PrivateLinkResources/iotHub", + "name": "iotHub", + "type": "Microsoft.Devices/IotHubs/PrivateLinkResources", + "properties": { + "groupId": "iotHub", + "requiredMembers": [ + "iotHub" + ], + "requiredZoneNames": [ + "privatelink.azure-devices.net" + ] + } + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_getskus.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_getskus.json new file mode 100644 index 000000000000..1aa3c9950053 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_getskus.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "Microsoft.Devices/IotHubs", + "sku": { + "name": "S1", + "tier": "Standard" + }, + "capacity": { + "default": 1, + "scaleType": "Manual" + } + }, + { + "resourceType": "Microsoft.Devices/IotHubs", + "sku": { + "name": "S2", + "tier": "Standard" + }, + "capacity": { + "minimum": 1, + "maximum": 200, + "default": 1, + "scaleType": "Manual" + } + }, + { + "resourceType": "Microsoft.Devices/IotHubs", + "sku": { + "name": "S3", + "tier": "Standard" + }, + "capacity": { + "minimum": 1, + "maximum": 10, + "default": 1, + "scaleType": "Manual" + } + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_importdevices.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_importdevices.json new file mode 100644 index 000000000000..ac64e0b3d738 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_importdevices.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "importDevicesParameters": { + "inputBlobContainerUri": "testBlob", + "outputBlobContainerUri": "testBlob" + } + }, + "responses": { + "200": { + "body": { + "jobId": "test", + "startTimeUtc": "Thu, 15 Jun 2017 19:20:58 GMT", + "endTimeUtc": "Thu, 15 Jun 2017 19:20:58 GMT", + "type": "unknown", + "status": "unknown" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_listbyrg.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_listbyrg.json new file mode 100644 index 000000000000..c5ed4976efbc --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_listbyrg.json @@ -0,0 +1,117 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub", + "name": "testHub", + "type": "Microsoft.Devices/IotHubs", + "location": "centraluseuap", + "tags": {}, + "etag": "AAAAAAFD6M4=", + "properties": { + "state": "Active", + "provisioningState": "Succeeded", + "ipFilterRules": [ + { + "filterName": "rule1", + "action": "Accept", + "ipMask": "131.117.159.53" + }, + { + "filterName": "rule2", + "action": "Accept", + "ipMask": "157.55.59.128/25" + } + ], + "networkRuleSets": { + "defaultAction": "Deny", + "applyToBuiltInEventHubEndpoint": true, + "ipRules": [ + { + "filterName": "rule1", + "action": "Allow", + "ipMask": "131.117.159.53" + }, + { + "filterName": "rule2", + "action": "Allow", + "ipMask": "157.55.59.128/25" + } + ] + }, + "hostName": "iot-dps-cit-hub-1.azure-devices.net", + "eventHubEndpoints": { + "events": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1", + "endpoint": "sb://iothub-ns-iot-dps-ci-245306-76aca8e13b.servicebus.windows.net/" + } + }, + "routing": { + "endpoints": { + "serviceBusQueues": [], + "serviceBusTopics": [], + "eventHubs": [], + "storageContainers": [] + }, + "routes": [], + "fallbackRoute": { + "name": "$fallback", + "source": "DeviceMessages", + "condition": "true", + "endpointNames": [ + "events" + ], + "isEnabled": true + } + }, + "storageEndpoints": { + "$default": { + "sasTtlAsIso8601": "PT1H", + "connectionString": "", + "containerName": "" + } + }, + "messagingEndpoints": { + "fileNotifications": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "enableFileUploadNotifications": false, + "cloudToDevice": { + "maxDeliveryCount": 10, + "defaultTtlAsIso8601": "PT1H", + "feedback": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "features": "None" + }, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_listbysubscription.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_listbysubscription.json new file mode 100644 index 000000000000..14350742488e --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_listbysubscription.json @@ -0,0 +1,116 @@ +{ + "parameters": { + "resourceName": "testHub", + "api-version": "2021-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub", + "name": "testHub", + "type": "Microsoft.Devices/IotHubs", + "location": "centraluseuap", + "tags": {}, + "etag": "AAAAAAFD6M4=", + "properties": { + "state": "Active", + "provisioningState": "Succeeded", + "ipFilterRules": [ + { + "filterName": "rule1", + "action": "Accept", + "ipMask": "131.117.159.53" + }, + { + "filterName": "rule2", + "action": "Accept", + "ipMask": "157.55.59.128/25" + } + ], + "networkRuleSets": { + "defaultAction": "Deny", + "applyToBuiltInEventHubEndpoint": true, + "ipRules": [ + { + "filterName": "rule1", + "action": "Allow", + "ipMask": "131.117.159.53" + }, + { + "filterName": "rule2", + "action": "Allow", + "ipMask": "157.55.59.128/25" + } + ] + }, + "hostName": "iot-dps-cit-hub-1.azure-devices.net", + "eventHubEndpoints": { + "events": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1", + "endpoint": "sb://iothub-ns-iot-dps-ci-245306-76aca8e13b.servicebus.windows.net/" + } + }, + "routing": { + "endpoints": { + "serviceBusQueues": [], + "serviceBusTopics": [], + "eventHubs": [], + "storageContainers": [] + }, + "routes": [], + "fallbackRoute": { + "name": "$fallback", + "source": "DeviceMessages", + "condition": "true", + "endpointNames": [ + "events" + ], + "isEnabled": true + } + }, + "storageEndpoints": { + "$default": { + "sasTtlAsIso8601": "PT1H", + "connectionString": "", + "containerName": "" + } + }, + "messagingEndpoints": { + "fileNotifications": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "enableFileUploadNotifications": false, + "cloudToDevice": { + "maxDeliveryCount": 10, + "defaultTtlAsIso8601": "PT1H", + "feedback": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "features": "None" + }, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_listcertificates.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_listcertificates.json new file mode 100644 index 000000000000..d7ef4e0c130c --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_listcertificates.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "resourceName": "testhub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-07-01-preview", + "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", + "certificate": "############################################" + }, + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/andbuc-hub/certificates/cert", + "name": "cert", + "type": "Microsoft.Devices/IotHubs/Certificates", + "etag": "AAAAAAExpNs=" + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_listehgroups.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_listehgroups.json new file mode 100644 index 000000000000..f88a439377a6 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_listehgroups.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-07-01-preview", + "eventHubEndpointName": "events", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "created": "Thu, 15 Jun 2017 19:20:58 GMT" + }, + "id": "/subscriptions/cmd-sub-1/resourceGroups/cmd-rg-1/providers/Microsoft.Devices/IotHubs/test-hub-2/eventHubEndpoints/events/ConsumerGroups/%24Default", + "name": "$Default", + "type": "Microsoft.Devices/IotHubs/EventHubEndpoints/ConsumerGroups", + "etag": "AAAAAAFD6M4=" + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_listjobs.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_listjobs.json new file mode 100644 index 000000000000..c5794fa1242a --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_listjobs.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "jobId": "test", + "startTimeUtc": "Thu, 15 Jun 2017 19:20:58 GMT", + "endTimeUtc": "Thu, 15 Jun 2017 19:20:58 GMT", + "type": "unknown", + "status": "unknown" + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_listkeys.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_listkeys.json new file mode 100644 index 000000000000..73bc257563d8 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_listkeys.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "keyName": "iothubowner", + "primaryKey": "", + "secondaryKey": "", + "rights": "RegistryWrite, ServiceConnect, DeviceConnect" + }, + { + "keyName": "service", + "primaryKey": "", + "secondaryKey": "", + "rights": "ServiceConnect" + }, + { + "keyName": "device", + "primaryKey": "", + "secondaryKey": "", + "rights": "DeviceConnect" + }, + { + "keyName": "registryRead", + "primaryKey": "", + "secondaryKey": "", + "rights": "RegistryRead" + }, + { + "keyName": "registryReadWrite", + "primaryKey": "", + "secondaryKey": "", + "rights": "RegistryWrite" + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_listprivateendpointconnections.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_listprivateendpointconnections.json new file mode 100644 index 000000000000..6898e9369965 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_listprivateendpointconnections.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": [ + { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub/PrivateEndpointConnections/myPrivateEndpointConnection", + "name": "myPrivateEndpointConnection", + "type": "Microsoft.Devices/IotHubs/PrivateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/a9eba280-4734-4d49-878f-b5549d1d0453/resourceGroups/networkResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "Please approve my request!", + "actionsRequired": "None" + } + } + } + ] + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_listprivatelinkresources.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_listprivatelinkresources.json new file mode 100644 index 000000000000..afe9def02ea0 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_listprivatelinkresources.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub/PrivateLinkResources/iotHub", + "name": "iotHub", + "type": "Microsoft.Devices/IotHubs/PrivateLinkResources", + "properties": { + "groupId": "iotHub", + "requiredMembers": [ + "iotHub" + ], + "requiredZoneNames": [ + "privatelink.azure-devices.net" + ] + } + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_operations.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_operations.json new file mode 100644 index 000000000000..33372b8d4106 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_operations.json @@ -0,0 +1,328 @@ +{ + "parameters": { + "api-version": "2021-07-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Devices/register/action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Register Resource Provider", + "description": "Register the subscription for the IotHub resource provider and enables the creation of IotHub resources" + } + }, + { + "name": "Microsoft.Devices/IotHubs/diagnosticSettings/read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get Diagnostic Setting", + "description": "Gets the diagnostic setting for the resource" + } + }, + { + "name": "Microsoft.Devices/IotHubs/diagnosticSettings/write", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Set Diagnostic Setting", + "description": "Creates or updates the diagnostic setting for the resource" + } + }, + { + "name": "Microsoft.Devices/IotHubs/metricDefinitions/read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Read IotHub service metric definitions", + "description": "Gets the available metrics for the IotHub service" + } + }, + { + "name": "Microsoft.Devices/IotHubs/logDefinitions/read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Read IotHub service log definitions", + "description": "Gets the available log definitions for the IotHub Service" + } + }, + { + "name": "Microsoft.Devices/operations/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get All ResourceProvider Operations", + "description": "Get All ResourceProvider Operations" + } + }, + { + "name": "Microsoft.Devices/checkNameAvailability/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Check If IotHub name is available", + "description": "Check If IotHub name is available" + } + }, + { + "name": "Microsoft.Devices/usages/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get Subscription Usages", + "description": "Get subscription usage details for this provider." + } + }, + { + "name": "Microsoft.Devices/iotHubs/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get IotHub(s)", + "description": "Gets the IotHub resource(s)" + } + }, + { + "name": "Microsoft.Devices/iotHubs/Write", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Create or update IotHub Resource", + "description": "Create or update IotHub Resource" + } + }, + { + "name": "Microsoft.Devices/iotHubs/Delete", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Delete IotHub Resource", + "description": "Delete IotHub Resource" + } + }, + { + "name": "Microsoft.Devices/iotHubs/iotHubStats/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get IotHub Statistics", + "description": "Get IotHub Statistics" + } + }, + { + "name": "Microsoft.Devices/iotHubs/skus/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get valid IotHub Skus", + "description": "Get valid IotHub Skus" + } + }, + { + "name": "Microsoft.Devices/iotHubs/listkeys/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get all IotHub Keys", + "description": "Get all IotHub Keys" + } + }, + { + "name": "Microsoft.Devices/iotHubs/iotHubKeys/listkeys/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get IotHub Key for the given name", + "description": "Get IotHub Key for the given name" + } + }, + { + "name": "Microsoft.Devices/iotHubs/eventHubEndpoints/consumerGroups/Write", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Create EventHub Consumer Group", + "description": "Create EventHub Consumer Group" + } + }, + { + "name": "Microsoft.Devices/iotHubs/eventHubEndpoints/consumerGroups/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get EventHub Consumer Group(s)", + "description": "Get EventHub Consumer Group(s)" + } + }, + { + "name": "Microsoft.Devices/iotHubs/eventHubEndpoints/consumerGroups/Delete", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Delete EventHub Consumer Group", + "description": "Delete EventHub Consumer Group" + } + }, + { + "name": "Microsoft.Devices/iotHubs/exportDevices/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Export Devices", + "description": "Export Devices" + } + }, + { + "name": "Microsoft.Devices/iotHubs/importDevices/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Import Devices", + "description": "Import Devices" + } + }, + { + "name": "Microsoft.Devices/iotHubs/jobs/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get the Job(s) on IotHub", + "description": "Get Job(s) details submitted on given IotHub" + } + }, + { + "name": "Microsoft.Devices/iotHubs/quotaMetrics/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get Quota Metrics", + "description": "Get Quota Metrics" + } + }, + { + "name": "Microsoft.Devices/iotHubs/routing/routes/$testall/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Routing Rule Test All", + "description": "Test a message against all existing Routes" + } + }, + { + "name": "Microsoft.Devices/iotHubs/routing/routes/$testnew/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Routing Rule Test Route", + "description": "Test a message against a provided test Route" + } + }, + { + "name": "Microsoft.Devices/iotHubs/routingEndpointsHealth/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get Endpoint Health", + "description": "Gets the health of all routing Endpoints for an IotHub" + } + }, + { + "name": "Microsoft.Devices/ProvisioningServices/diagnosticSettings/read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get Diagnostic Setting", + "description": "Gets the diagnostic setting for the resource" + } + }, + { + "name": "Microsoft.Devices/ProvisioningServices/diagnosticSettings/write", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Set Diagnostic Setting", + "description": "Creates or updates the diagnostic setting for the resource" + } + }, + { + "name": "Microsoft.Devices/ProvisioningServices/metricDefinitions/read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Read DPS service metric definitions", + "description": "Gets the available metrics for the DPS service" + } + }, + { + "name": "Microsoft.Devices/ProvisioningServices/logDefinitions/read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Read DPS service log definitions", + "description": "Gets the available log definitions for the DPS Service" + } + }, + { + "name": "Microsoft.Devices/checkProvisioningServiceNameAvailability/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "ProvisioningServives", + "operation": "Check If Provisioning Service name is available", + "description": "Check If Provisioning Service name is available" + } + }, + { + "name": "Microsoft.Devices/provisioningServices/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "ProvisioningServices", + "operation": "Get Provisioning Service resource", + "description": "Get Provisioning Service resource" + } + }, + { + "name": "Microsoft.Devices/provisioningServices/Write", + "display": { + "provider": "Microsoft Devices", + "resource": "ProvisioningServices", + "operation": "Create Provisioning Service resource", + "description": "Create Provisioning Service resource" + } + }, + { + "name": "Microsoft.Devices/provisioningServices/Delete", + "display": { + "provider": "Microsoft Devices", + "resource": "ProvisioningServices", + "operation": "Delete Provisioning Service resource", + "description": "Delete Provisioning Service resource" + } + }, + { + "name": "Microsoft.Devices/provisioningServices/skus/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "ProvisioningServices", + "operation": "Delete Provisioning Service resource", + "description": "Delete Provisioning Service resource" + } + }, + { + "name": "Microsoft.Devices/provisioningServices/listkeys/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "ProvisioningServices", + "operation": "get security related metadata", + "description": "get security related metadata" + } + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_patch.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_patch.json new file mode 100644 index 000000000000..320e452e6ffe --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_patch.json @@ -0,0 +1,122 @@ +{ + "parameters": { + "resourceName": "myHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "location": "East US", + "type": "Microsoft.Devices/IotHubs", + "IotHubTags": { + "tags": { + "foo": "bar" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ae24ff83-d2ca-4fc8-9717-05dae4bba489/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub", + "name": "testHub", + "type": "Microsoft.Devices/IotHubs", + "location": "centraluseuap", + "tags": { + "foo": "bar" + }, + "etag": "AAAAAAFD6M4=", + "properties": { + "state": "Active", + "provisioningState": "Succeeded", + "ipFilterRules": [ + { + "filterName": "rule1", + "action": "Accept", + "ipMask": "131.117.159.53" + }, + { + "filterName": "rule2", + "action": "Accept", + "ipMask": "157.55.59.128/25" + } + ], + "networkRuleSets": { + "defaultAction": "Deny", + "applyToBuiltInEventHubEndpoint": true, + "ipRules": [ + { + "filterName": "rule1", + "action": "Allow", + "ipMask": "131.117.159.53" + }, + { + "filterName": "rule2", + "action": "Allow", + "ipMask": "157.55.59.128/25" + } + ] + }, + "hostName": "iot-dps-cit-hub-1.azure-devices.net", + "eventHubEndpoints": { + "events": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1", + "endpoint": "sb://iothub-ns-iot-dps-ci-245306-76aca8e13b.servicebus.windows.net/" + } + }, + "routing": { + "endpoints": { + "serviceBusQueues": [], + "serviceBusTopics": [], + "eventHubs": [], + "storageContainers": [] + }, + "routes": [], + "fallbackRoute": { + "name": "$fallback", + "source": "DeviceMessages", + "condition": "true", + "endpointNames": [ + "events" + ], + "isEnabled": true + } + }, + "storageEndpoints": { + "$default": { + "sasTtlAsIso8601": "PT1H", + "connectionString": "", + "containerName": "" + } + }, + "messagingEndpoints": { + "fileNotifications": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "enableFileUploadNotifications": false, + "cloudToDevice": { + "maxDeliveryCount": 10, + "defaultTtlAsIso8601": "PT1H", + "feedback": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "features": "None" + }, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_quotametrics.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_quotametrics.json new file mode 100644 index 000000000000..5151ac2a940e --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_quotametrics.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "TotalMessages", + "currentValue": 0, + "maxValue": 400000 + }, + { + "name": "TotalDeviceCount", + "currentValue": 0, + "maxValue": 500000 + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_routingendpointhealth.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_routingendpointhealth.json new file mode 100644 index 000000000000..b54598780347 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_routingendpointhealth.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "iotHubName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "endpointId": "id1", + "healthStatus": "healthy", + "lastSuccessfulSendAttemptTime": "2020-03-26T21:20:57Z", + "lastSendAttemptTime": "2020-03-26T21:24:57Z" + }, + { + "endpointId": "id2", + "healthStatus": "unknown" + }, + { + "endpointId": "id3", + "healthStatus": "unhealthy", + "lastKnownError": "NotFound", + "lastKnownErrorTime": "2020-03-26T21:24:57Z", + "lastSuccessfulSendAttemptTime": "2020-03-26T21:20:57Z", + "lastSendAttemptTime": "2020-03-26T21:24:57Z" + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_stats.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_stats.json new file mode 100644 index 000000000000..1a7bcb918e7e --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_stats.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-04-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "totalDeviceCount": 0, + "enabledDeviceCount": 0, + "disabledDeviceCount": 0 + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_testallroutes.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_testallroutes.json new file mode 100644 index 000000000000..de87f522df41 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_testallroutes.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "iotHubName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "input": { + "routingSource": "DeviceMessages", + "message": { + "body": "Body of message", + "appProperties": { + "key1": "value1" + }, + "systemProperties": { + "key1": "value1" + } + } + } + }, + "responses": { + "200": { + "body": { + "routes": [ + { + "properties": { + "name": "Routeid", + "source": "DeviceMessages", + "endpointNames": [ + "id1" + ], + "isEnabled": true + } + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_testnewroute.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_testnewroute.json new file mode 100644 index 000000000000..0bfeefb5f260 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_testnewroute.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "iotHubName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "input": { + "message": { + "body": "Body of message", + "appProperties": { + "key1": "value1" + }, + "systemProperties": { + "key1": "value1" + } + }, + "route": { + "name": "Routeid", + "source": "DeviceMessages", + "endpointNames": [ + "id1" + ], + "isEnabled": true + } + } + }, + "responses": { + "200": { + "body": { + "result": "false", + "details": { + "compilationErrors": [ + { + "message": "string response", + "severity": "error", + "location": { + "start": { + "line": 12, + "column": 12 + }, + "end": { + "line": 12, + "column": 24 + } + } + } + ] + } + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_updateprivateendpointconnection.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_updateprivateendpointconnection.json new file mode 100644 index 000000000000..d8cbaa4ae2c7 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_updateprivateendpointconnection.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "privateEndpointConnectionName": "myPrivateEndpointConnection", + "privateEndpointConnection": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@contoso.com" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub/PrivateEndpointConnections/myPrivateEndpointConnection", + "name": "myPrivateEndpointConnection", + "type": "Microsoft.Devices/IotHubs/PrivateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/a9eba280-4734-4d49-878f-b5549d1d0453/resourceGroups/networkResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@contoso.com", + "actionsRequired": "None" + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub/PrivateEndpointConnections/myPrivateEndpointConnection", + "name": "myPrivateEndpointConnection", + "type": "Microsoft.Devices/IotHubs/PrivateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/a9eba280-4734-4d49-878f-b5549d1d0453/resourceGroups/networkResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@contoso.com", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_usages.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_usages.json new file mode 100644 index 000000000000..48053d6c25b5 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/examples/iothub_usages.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2021-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscription/91d12660-3dec-467a-be2a-213b5544ddc0/providers/Microsoft.Devices/usages/freeHubCount", + "type": "/subscription/91d12660-3dec-467a-be2a-213b5544ddc0/providers/Microsoft.Devices/usages", + "unit": "count", + "currentValue": 1, + "limit": 1, + "name": { + "value": "FreeHubCount", + "localizedValue": "Free Hub Count" + } + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/iothub.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/iothub.json new file mode 100644 index 000000000000..741f4c0543ee --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2021-07-01-preview/iothub.json @@ -0,0 +1,4447 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-07-01-preview", + "title": "iotHubClient", + "description": "Use this API to manage the IoT hubs in your Azure subscription.", + "x-ms-code-generation-settings": { + "header": "MICROSOFT_MIT_NO_VERSION" + } + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/providers/Microsoft.Devices/operations": { + "get": { + "tags": [ + "Operations" + ], + "x-ms-examples": { + "Operations_List": { + "$ref": "./examples/iothub_operations.json" + } + }, + "operationId": "Operations_List", + "description": "Lists all of the available IoT Hub REST API operations.", + "parameters": [ + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get the non-security related metadata of an IoT hub", + "description": "Get the non-security related metadata of an IoT hub.", + "operationId": "IotHubResource_Get", + "x-ms-examples": { + "IotHubResource_Get": { + "$ref": "./examples/iothub_get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "200": { + "description": "The body contains all the non-security properties of the IoT hub. Security-related properties are set to null.", + "schema": { + "$ref": "#/definitions/IotHubDescription" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + }, + "put": { + "tags": [ + "PUT" + ], + "summary": "Create or update the metadata of an IoT hub.", + "description": "Create or update the metadata of an Iot hub. The usual pattern to modify a property is to retrieve the IoT hub metadata and security metadata, and then combine them with the modified values in a new body to update the IoT hub.", + "operationId": "IotHubResource_CreateOrUpdate", + "x-ms-examples": { + "IotHubResource_CreateOrUpdate": { + "$ref": "./examples/iothub_createOrUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "iotHubDescription", + "in": "body", + "description": "The IoT hub metadata and security metadata.", + "required": true, + "schema": { + "$ref": "#/definitions/IotHubDescription" + } + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "ETag of the IoT Hub. Do not specify for creating a brand new IoT Hub. Required to update an existing IoT Hub." + } + ], + "responses": { + "201": { + "description": "This is a long running operation. The operation returns a 201 if the validation is complete. The response includes an Azure-AsyncOperation header that contains a status URL. Clients are expected to poll the status URL for the status of the operation. If successful, the operation returns HTTP status code of 201 (OK).", + "schema": { + "$ref": "#/definitions/IotHubDescription" + } + }, + "200": { + "description": "This is returned as a response to the status polling request for the create or update operation. The body contains the resource representation that indicates a transitional provisioning state.", + "schema": { + "$ref": "#/definitions/IotHubDescription" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + }, + "patch": { + "tags": [ + "PATCH" + ], + "summary": "Update an existing IoT Hubs tags.", + "description": "Update an existing IoT Hub tags. to update other fields use the CreateOrUpdate method", + "x-ms-long-running-operation": true, + "operationId": "IotHubResource_Update", + "x-ms-examples": { + "IotHubResource_Update": { + "$ref": "./examples/iothub_patch.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "Resource group identifier." + }, + { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of iot hub to update." + }, + { + "name": "IotHubTags", + "in": "body", + "required": true, + "description": "Updated tag information to set into the iot hub instance.", + "schema": { + "$ref": "#/definitions/TagsResource" + } + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "Iot Hub was successfully updated", + "schema": { + "$ref": "#/definitions/IotHubDescription" + } + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + }, + "delete": { + "tags": [ + "DELETE" + ], + "summary": "Delete an IoT hub", + "description": "Delete an IoT hub.", + "operationId": "IotHubResource_Delete", + "x-ms-examples": { + "IotHubResource_Delete": { + "$ref": "./examples/iothub_delete.json" + } + }, + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "202": { + "description": "The Iot Hub resource provider always returns a 202 Accepted status code with valid Location and Retry-After headers. The resource provider also sets the Azure-AsyncOperation header with a URL that points to the operation resource for this operation. Subsequent GET attempts on the resource after a DELETE operation return a resource representation that indicates a transitional provisioning state (such as Terminating). To retrieve the status of the operation, a client can either poll the URL returned in the Location header after the Retry-After interval, get the IoT Hub service status directly, or query the operation resource.", + "schema": { + "$ref": "#/definitions/IotHubDescription" + } + }, + "200": { + "description": "This is returned as a response to the status polling request for the delete operation. The body contains the resource representation that indicates a transitional provisioning state.", + "schema": { + "$ref": "#/definitions/IotHubDescription" + } + }, + "204": { + "description": "Once the long running delete operation completes successfully, a 204 No Content status code is returned when the status polling request finds the Iot hub metadata in the service and the status of the delete operation is set to a completed state." + }, + "404": { + "description": "After the long running delete operation completes successfully, a 404 Not Found is returned when the status polling request no longer finds the Iot hub metadata in the service.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Devices/IotHubs": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get all the IoT hubs in a subscription", + "description": "Get all the IoT hubs in a subscription.", + "operationId": "IotHubResource_ListBySubscription", + "x-ms-examples": { + "IotHubResource_ListBySubscription": { + "$ref": "./examples/iothub_listbysubscription.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized array of the metadata from all the IoT hubs in the subscription.", + "schema": { + "$ref": "#/definitions/IotHubDescriptionListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get all the IoT hubs in a resource group", + "description": "Get all the IoT hubs in a resource group.", + "operationId": "IotHubResource_ListByResourceGroup", + "x-ms-examples": { + "IotHubResource_ListByResourceGroup": { + "$ref": "./examples/iothub_listbyrg.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized array of the metadata from all the IoT hubs in the resource group.", + "schema": { + "$ref": "#/definitions/IotHubDescriptionListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/IotHubStats": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get the statistics from an IoT hub", + "description": "Get the statistics from an IoT hub.", + "operationId": "IotHubResource_GetStats", + "x-ms-examples": { + "IotHubResource_GetStats": { + "$ref": "./examples/iothub_stats.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains JSON-serialized statistics from the identity registry in the IoT hub.", + "schema": { + "$ref": "#/definitions/RegistryStatistics" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/skus": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get the list of valid SKUs for an IoT hub", + "description": "Get the list of valid SKUs for an IoT hub.", + "operationId": "IotHubResource_GetValidSkus", + "x-ms-examples": { + "IotHubResource_GetValidSkus": { + "$ref": "./examples/iothub_getskus.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized array of the valid SKUs for this IoT hub.", + "schema": { + "$ref": "#/definitions/IotHubSkuDescriptionListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/eventHubEndpoints/{eventHubEndpointName}/ConsumerGroups": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get a list of the consumer groups in the Event Hub-compatible device-to-cloud endpoint in an IoT hub", + "description": "Get a list of the consumer groups in the Event Hub-compatible device-to-cloud endpoint in an IoT hub.", + "operationId": "IotHubResource_ListEventHubConsumerGroups", + "x-ms-examples": { + "IotHubResource_ListEventHubConsumerGroups": { + "$ref": "./examples/iothub_listehgroups.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "eventHubEndpointName", + "in": "path", + "description": "The name of the Event Hub-compatible endpoint.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized list of the consumer groups in the Event Hub-compatible endpoint in this IoT hub", + "schema": { + "$ref": "#/definitions/EventHubConsumerGroupsListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/eventHubEndpoints/{eventHubEndpointName}/ConsumerGroups/{name}": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get a consumer group from the Event Hub-compatible device-to-cloud endpoint for an IoT hub", + "description": "Get a consumer group from the Event Hub-compatible device-to-cloud endpoint for an IoT hub.", + "operationId": "IotHubResource_GetEventHubConsumerGroup", + "x-ms-examples": { + "IotHubResource_ListEventHubConsumerGroups": { + "$ref": "./examples/iothub_getconsumergroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "eventHubEndpointName", + "in": "path", + "description": "The name of the Event Hub-compatible endpoint in the IoT hub.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the consumer group to retrieve.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized consumer group.", + "schema": { + "$ref": "#/definitions/EventHubConsumerGroupInfo" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + }, + "put": { + "tags": [ + "PUT" + ], + "summary": "Add a consumer group to an Event Hub-compatible endpoint in an IoT hub", + "description": "Add a consumer group to an Event Hub-compatible endpoint in an IoT hub.", + "operationId": "IotHubResource_CreateEventHubConsumerGroup", + "x-ms-examples": { + "IotHubResource_CreateEventHubConsumerGroup": { + "$ref": "./examples/iothub_createconsumergroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "eventHubEndpointName", + "in": "path", + "description": "The name of the Event Hub-compatible endpoint in the IoT hub.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the consumer group to add.", + "required": true, + "type": "string" + }, + { + "name": "consumerGroupBody", + "in": "body", + "description": "The consumer group to add.", + "required": true, + "schema": { + "$ref": "#/definitions/EventHubConsumerGroupBodyDescription" + } + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation.", + "schema": { + "$ref": "#/definitions/EventHubConsumerGroupInfo" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + }, + "delete": { + "tags": [ + "DELETE" + ], + "summary": "Delete a consumer group from an Event Hub-compatible endpoint in an IoT hub", + "description": "Delete a consumer group from an Event Hub-compatible endpoint in an IoT hub.", + "operationId": "IotHubResource_DeleteEventHubConsumerGroup", + "x-ms-examples": { + "IotHubResource_DeleteEventHubConsumerGroup": { + "$ref": "./examples/iothub_deleteconsumergroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "eventHubEndpointName", + "in": "path", + "description": "The name of the Event Hub-compatible endpoint in the IoT hub.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the consumer group to delete.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation." + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/jobs": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get a list of all the jobs in an IoT hub. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-identity-registry", + "description": "Get a list of all the jobs in an IoT hub. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-identity-registry.", + "operationId": "IotHubResource_ListJobs", + "x-ms-examples": { + "IotHubResource_ListJobs": { + "$ref": "./examples/iothub_listjobs.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The response contains a JSON-serialized array of all the jobs in the IoT hub.", + "schema": { + "$ref": "#/definitions/JobResponseListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/jobs/{jobId}": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get the details of a job from an IoT hub. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-identity-registry", + "description": "Get the details of a job from an IoT hub. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-identity-registry.", + "operationId": "IotHubResource_GetJob", + "x-ms-examples": { + "IotHubResource_GetJob": { + "$ref": "./examples/iothub_getjob.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "jobId", + "in": "path", + "description": "The job identifier.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The response contains a JSON-serialized description of the job in the IoT hub.", + "schema": { + "$ref": "#/definitions/JobResponse" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/quotaMetrics": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get the quota metrics for an IoT hub", + "description": "Get the quota metrics for an IoT hub.", + "operationId": "IotHubResource_GetQuotaMetrics", + "x-ms-examples": { + "IotHubResource_GetQuotaMetrics": { + "$ref": "./examples/iothub_quotametrics.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The response contains a JSON-serialized array of the quota metrics for the IoT hub.", + "schema": { + "$ref": "#/definitions/IotHubQuotaMetricInfoListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{iotHubName}/routingEndpointsHealth": { + "get": { + "tags": [ + "GET" + ], + "operationId": "IotHubResource_GetEndpointHealth", + "summary": "Get the health for routing endpoints", + "description": "Get the health for routing endpoints.", + "x-ms-examples": { + "IotHubResource_GetEndpointHealth": { + "$ref": "./examples/iothub_routingendpointhealth.json" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "iotHubName", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/EndpointHealthDataListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Devices/checkNameAvailability": { + "post": { + "tags": [ + "POST" + ], + "summary": "Check if an IoT hub name is available", + "description": "Check if an IoT hub name is available.", + "operationId": "IotHubResource_CheckNameAvailability", + "x-ms-examples": { + "IotHubResource_CheckNameAvailability": { + "$ref": "./examples/checkNameAvailability.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "operationInputs", + "in": "body", + "description": "Set the name parameter in the OperationInputs structure to the name of the IoT hub to check.", + "required": true, + "schema": { + "$ref": "#/definitions/OperationInputs" + } + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized response that specifies whether the IoT hub name is available. If the name is not available, the body contains the reason.", + "schema": { + "$ref": "#/definitions/IotHubNameAvailabilityInfo" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Devices/usages": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get the number of iot hubs in the subscription", + "description": "Get the number of free and paid iot hubs in the subscription", + "operationId": "ResourceProviderCommon_GetSubscriptionQuota", + "x-ms-examples": { + "ResourceProviderCommon_GetSubscriptionQuota": { + "$ref": "./examples/iothub_usages.json" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/UserSubscriptionQuotaListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{iotHubName}/routing/routes/$testall": { + "post": { + "tags": [ + "POST" + ], + "operationId": "IotHubResource_TestAllRoutes", + "summary": "Test all routes", + "description": "Test all routes configured in this Iot Hub", + "x-ms-examples": { + "IotHubResource_TestAllRoutes": { + "$ref": "./examples/iothub_testallroutes.json" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "input", + "description": "Input for testing all routes", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TestAllRoutesInput" + } + }, + { + "name": "iotHubName", + "description": "IotHub to be tested", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "description": "resource group which Iot Hub belongs to", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TestAllRoutesResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{iotHubName}/routing/routes/$testnew": { + "post": { + "tags": [ + "POST" + ], + "operationId": "IotHubResource_TestRoute", + "summary": "Test the new route", + "description": "Test the new route for this Iot Hub", + "x-ms-examples": { + "IotHubResource_TestRoute": { + "$ref": "./examples/iothub_testnewroute.json" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "input", + "description": "Route that needs to be tested", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TestRouteInput" + } + }, + { + "name": "iotHubName", + "description": "IotHub to be tested", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "description": "resource group which Iot Hub belongs to", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TestRouteResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/listkeys": { + "post": { + "tags": [ + "POST" + ], + "summary": "Get the security metadata for an IoT hub. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-security", + "description": "Get the security metadata for an IoT hub. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-security.", + "operationId": "IotHubResource_ListKeys", + "x-ms-examples": { + "IotHubResource_ListKeys": { + "$ref": "./examples/iothub_listkeys.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized array of shared access policies, including keys, that you can use to access the IoT hub endpoints.", + "schema": { + "$ref": "#/definitions/SharedAccessSignatureAuthorizationRuleListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/IotHubKeys/{keyName}/listkeys": { + "post": { + "tags": [ + "POST" + ], + "summary": "Get a shared access policy by name from an IoT hub. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-security", + "description": "Get a shared access policy by name from an IoT hub. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-security.", + "operationId": "IotHubResource_GetKeysForKeyName", + "x-ms-examples": { + "IotHubResource_GetKeysForKeyName": { + "$ref": "./examples/iothub_getkey.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "keyName", + "in": "path", + "description": "The name of the shared access policy.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized shared access policy, including keys, that you can use to access one or more IoT hub endpoints.", + "schema": { + "$ref": "#/definitions/SharedAccessSignatureAuthorizationRule" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/exportDevices": { + "post": { + "tags": [ + "POST" + ], + "summary": "Exports all the device identities in the IoT hub identity registry to an Azure Storage blob container. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-identity-registry#import-and-export-device-identities", + "description": "Exports all the device identities in the IoT hub identity registry to an Azure Storage blob container. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-identity-registry#import-and-export-device-identities.", + "operationId": "IotHubResource_ExportDevices", + "x-ms-examples": { + "IotHubResource_ExportDevices": { + "$ref": "./examples/iothub_exportdevices.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "exportDevicesParameters", + "in": "body", + "description": "The parameters that specify the export devices operation.", + "required": true, + "schema": { + "$ref": "#/definitions/ExportDevicesRequest" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/JobResponse" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/importDevices": { + "post": { + "tags": [ + "POST" + ], + "summary": "Import, update, or delete device identities in the IoT hub identity registry from a blob. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-identity-registry#import-and-export-device-identities", + "description": "Import, update, or delete device identities in the IoT hub identity registry from a blob. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-identity-registry#import-and-export-device-identities.", + "operationId": "IotHubResource_ImportDevices", + "x-ms-examples": { + "IotHubResource_ImportDevices": { + "$ref": "./examples/iothub_importdevices.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "importDevicesParameters", + "in": "body", + "description": "The parameters that specify the import devices operation.", + "required": true, + "schema": { + "$ref": "#/definitions/ImportDevicesRequest" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/JobResponse" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/certificates": { + "get": { + "tags": [ + "Certificates" + ], + "summary": "Get the certificate list.", + "description": "Returns the list of certificates.", + "operationId": "Certificates_ListByIotHub", + "x-ms-examples": { + "Certificates_ListByIotHub": { + "$ref": "./examples/iothub_listcertificates.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "200": { + "description": "The body contains all the certificate list.", + "schema": { + "$ref": "#/definitions/CertificateListDescription" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/certificates/{certificateName}": { + "get": { + "tags": [ + "Certificates" + ], + "summary": "Get the certificate.", + "description": "Returns the certificate.", + "operationId": "Certificates_Get", + "x-ms-examples": { + "Certificates_Get": { + "$ref": "./examples/iothub_getcertificate.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "$ref": "#/parameters/certificateName" + } + ], + "responses": { + "200": { + "description": "The body contains the certificate.", + "schema": { + "$ref": "#/definitions/CertificateDescription" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + }, + "put": { + "tags": [ + "Certificates" + ], + "summary": "Upload the certificate to the IoT hub.", + "description": "Adds new or replaces existing certificate.", + "operationId": "Certificates_CreateOrUpdate", + "x-ms-examples": { + "Certificates_CreateOrUpdate": { + "$ref": "./examples/iothub_certificatescreateorupdate.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "$ref": "#/parameters/certificateName" + }, + { + "name": "certificateDescription", + "in": "body", + "description": "The certificate body.", + "required": true, + "schema": { + "$ref": "#/definitions/CertificateDescription" + } + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "ETag of the Certificate. Do not specify for creating a brand new certificate. Required to update an existing certificate." + } + ], + "responses": { + "201": { + "description": "If certificate didn't exist creation was successful, the operation returns HTTP status code of 201 (OK).", + "schema": { + "$ref": "#/definitions/CertificateDescription" + } + }, + "200": { + "description": "If certificate already exist and update was successful, the operation returns HTTP status code of 201 (OK).", + "schema": { + "$ref": "#/definitions/CertificateDescription" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + }, + "delete": { + "tags": [ + "Certificates" + ], + "summary": "Delete an X509 certificate.", + "description": "Deletes an existing X509 certificate or does nothing if it does not exist.", + "operationId": "Certificates_Delete", + "x-ms-examples": { + "Certificates_Delete": { + "$ref": "./examples/iothub_certificatesdelete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "$ref": "#/parameters/certificateName" + }, + { + "name": "If-Match", + "in": "header", + "required": true, + "type": "string", + "description": "ETag of the Certificate." + } + ], + "responses": { + "200": { + "description": "Certificate has been deleted." + }, + "204": { + "description": "Certificate does not exist." + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/certificates/{certificateName}/generateVerificationCode": { + "post": { + "tags": [ + "Certificates" + ], + "summary": "Generate verification code for proof of possession flow.", + "description": "Generates verification code for proof of possession flow. The verification code will be used to generate a leaf certificate.", + "operationId": "Certificates_GenerateVerificationCode", + "x-ms-examples": { + "Certificates_GenerateVerificationCode": { + "$ref": "./examples/iothub_generateverificationcode.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "$ref": "#/parameters/certificateName" + }, + { + "name": "If-Match", + "in": "header", + "required": true, + "type": "string", + "description": "ETag of the Certificate." + } + ], + "responses": { + "200": { + "description": "The body contains the certificate.", + "schema": { + "$ref": "#/definitions/CertificateWithNonceDescription" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/certificates/{certificateName}/verify": { + "post": { + "tags": [ + "Certificates" + ], + "summary": "Verify certificate's private key possession.", + "description": "Verifies the certificate's private key possession by providing the leaf cert issued by the verifying pre uploaded certificate.", + "operationId": "Certificates_Verify", + "x-ms-examples": { + "Certificates_Verify": { + "$ref": "./examples/iothub_certverify.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "$ref": "#/parameters/certificateName" + }, + { + "name": "certificateVerificationBody", + "in": "body", + "description": "The name of the certificate", + "required": true, + "schema": { + "$ref": "#/definitions/CertificateVerificationDescription" + } + }, + { + "name": "If-Match", + "in": "header", + "required": true, + "type": "string", + "description": "ETag of the Certificate." + } + ], + "responses": { + "200": { + "description": "The body contains the certificate.", + "schema": { + "$ref": "#/definitions/CertificateDescription" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{iotHubName}/failover": { + "post": { + "tags": [ + "POST" + ], + "operationId": "IotHub_ManualFailover", + "summary": "Manually initiate a failover for the IoT Hub to its secondary region", + "description": "Manually initiate a failover for the IoT Hub to its secondary region. To learn more, see https://aka.ms/manualfailover", + "x-ms-examples": { + "IotHub_ManualFailover": { + "$ref": "./examples/IotHub_ManualFailover.json" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-long-running-operation": true, + "parameters": [ + { + "name": "iotHubName", + "description": "Name of the IoT hub to failover", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "failoverInput", + "description": "Region to failover to. Must be the Azure paired region. Get the value from the secondary location in the locations property. To learn more, see https://aka.ms/manualfailover/region", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FailoverInput" + } + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "description": "Name of the resource group containing the IoT hub resource", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "Long running manual failover operation for the IoT hub completed" + }, + "202": { + "description": "Manual failover initiated" + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/iotHubs/{resourceName}/privateLinkResources": { + "get": { + "tags": [ + "GET" + ], + "summary": "List private link resources", + "description": "List private link resources for the given IotHub", + "operationId": "PrivateLinkResources_List", + "x-ms-examples": { + "PrivateLinkResources_List": { + "$ref": "./examples/iothub_listprivatelinkresources.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "200": { + "description": "The body contains the list of private link resources", + "schema": { + "$ref": "#/definitions/PrivateLinkResources" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/iotHubs/{resourceName}/privateLinkResources/{groupId}": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get the specified private link resource", + "description": "Get the specified private link resource for the given IotHub", + "operationId": "PrivateLinkResources_Get", + "x-ms-examples": { + "PrivateLinkResources_List": { + "$ref": "./examples/iothub_getprivatelinkresources.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "$ref": "#/parameters/groupId" + } + ], + "responses": { + "200": { + "description": "The body contains the specified of private link resource", + "schema": { + "$ref": "#/definitions/GroupIdInformation" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/iotHubs/{resourceName}/privateEndpointConnections": { + "get": { + "tags": [ + "GET" + ], + "summary": "List private endpoint connections", + "description": "List private endpoint connection properties", + "operationId": "PrivateEndpointConnections_List", + "x-ms-examples": { + "PrivateEndpointConnections_List": { + "$ref": "./examples/iothub_listprivateendpointconnections.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "200": { + "description": "The body contains the list of private endpoint connection properties", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionsList" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/iotHubs/{resourceName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get private endpoint connection", + "description": "Get private endpoint connection properties", + "operationId": "PrivateEndpointConnections_Get", + "x-ms-examples": { + "PrivateEndpointConnection_Get": { + "$ref": "./examples/iothub_getprivateendpointconnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "$ref": "#/parameters/privateEndpointConnectionName" + } + ], + "responses": { + "200": { + "description": "The body contains the private endpoint connection properties", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + }, + "put": { + "tags": [ + "PUT" + ], + "summary": "Update private endpoint connection", + "description": "Update the status of a private endpoint connection with the specified name", + "operationId": "PrivateEndpointConnections_Update", + "x-ms-examples": { + "PrivateEndpointConnection_Update": { + "$ref": "./examples/iothub_updateprivateendpointconnection.json" + } + }, + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "$ref": "#/parameters/privateEndpointConnectionName" + }, + { + "name": "privateEndpointConnection", + "in": "body", + "description": "The private endpoint connection with updated properties", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + } + ], + "responses": { + "201": { + "description": "This is a long running operation. The operation returns a 201 if the validation is complete. The response includes an Azure-AsyncOperation header that contains a status URL. Clients are expected to poll the status URL for the status of the operation. If successful, the operation returns HTTP status code of 201 (OK).", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "200": { + "description": "This is returned as a response to the status polling request for the update operation.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + }, + "delete": { + "tags": [ + "DELETE" + ], + "summary": "Delete private endpoint connection", + "description": "Delete private endpoint connection with the specified name", + "operationId": "PrivateEndpointConnections_Delete", + "x-ms-examples": { + "PrivateEndpointConnection_Delete": { + "$ref": "./examples/iothub_deleteprivateendpointconnection.json" + } + }, + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "$ref": "#/parameters/privateEndpointConnectionName" + } + ], + "responses": { + "202": { + "description": "This is a long running operation. The operation returns a 202 if the validation is complete. The response includes an Azure-AsyncOperation header that contains a status URL. Clients are expected to poll the status URL for the status of the operation.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "200": { + "description": "This is returned as a response to the status polling request for the delete operation.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "204": { + "description": "PrivateEndpoint does not exist." + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + } + }, + "definitions": { + "CertificateVerificationDescription": { + "description": "The JSON-serialized leaf certificate", + "type": "object", + "properties": { + "certificate": { + "description": "base-64 representation of X509 certificate .cer file or just .pem file content.", + "type": "string" + } + } + }, + "CertificateListDescription": { + "description": "The JSON-serialized array of Certificate objects.", + "type": "object", + "properties": { + "value": { + "description": "The array of Certificate objects.", + "type": "array", + "items": { + "$ref": "#/definitions/CertificateDescription" + } + } + } + }, + "CertificateBodyDescription": { + "description": "The JSON-serialized X509 Certificate.", + "type": "object", + "properties": { + "certificate": { + "description": "base-64 representation of the X509 leaf certificate .cer file or just .pem file content.", + "type": "string" + } + } + }, + "CertificateDescription": { + "description": "The X509 Certificate.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/CertificateProperties" + }, + "id": { + "readOnly": true, + "type": "string", + "description": "The resource identifier." + }, + "name": { + "description": "The name of the certificate.", + "type": "string", + "readOnly": true + }, + "etag": { + "description": "The entity tag.", + "type": "string", + "readOnly": true + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + } + }, + "x-ms-azure-resource": true + }, + "CertificateWithNonceDescription": { + "description": "The X509 Certificate.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/CertificatePropertiesWithNonce" + }, + "id": { + "readOnly": true, + "type": "string", + "description": "The resource identifier." + }, + "name": { + "description": "The name of the certificate.", + "type": "string", + "readOnly": true + }, + "etag": { + "description": "The entity tag.", + "type": "string", + "readOnly": true + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + } + }, + "x-ms-azure-resource": true + }, + "SharedAccessSignatureAuthorizationRule": { + "description": "The properties of an IoT hub shared access policy.", + "type": "object", + "properties": { + "keyName": { + "description": "The name of the shared access policy.", + "type": "string" + }, + "primaryKey": { + "description": "The primary key.", + "type": "string" + }, + "secondaryKey": { + "description": "The secondary key.", + "type": "string" + }, + "rights": { + "description": "The permissions assigned to the shared access policy.", + "enum": [ + "RegistryRead", + "RegistryWrite", + "ServiceConnect", + "DeviceConnect", + "RegistryRead, RegistryWrite", + "RegistryRead, ServiceConnect", + "RegistryRead, DeviceConnect", + "RegistryWrite, ServiceConnect", + "RegistryWrite, DeviceConnect", + "ServiceConnect, DeviceConnect", + "RegistryRead, RegistryWrite, ServiceConnect", + "RegistryRead, RegistryWrite, DeviceConnect", + "RegistryRead, ServiceConnect, DeviceConnect", + "RegistryWrite, ServiceConnect, DeviceConnect", + "RegistryRead, RegistryWrite, ServiceConnect, DeviceConnect" + ], + "type": "string", + "x-ms-enum": { + "name": "AccessRights", + "modelAsString": false + } + } + }, + "required": [ + "keyName", + "rights" + ] + }, + "CertificateProperties": { + "description": "The description of an X509 CA Certificate.", + "type": "object", + "properties": { + "subject": { + "description": "The certificate's subject name.", + "type": "string", + "readOnly": true + }, + "expiry": { + "description": "The certificate's expiration date and time.", + "type": "string", + "format": "date-time-rfc1123", + "readOnly": true + }, + "thumbprint": { + "description": "The certificate's thumbprint.", + "type": "string", + "readOnly": true + }, + "isVerified": { + "description": "Determines whether certificate has been verified.", + "type": "boolean", + "readOnly": true + }, + "created": { + "description": "The certificate's create date and time.", + "type": "string", + "format": "date-time-rfc1123", + "readOnly": true + }, + "updated": { + "description": "The certificate's last update date and time.", + "type": "string", + "format": "date-time-rfc1123", + "readOnly": true + }, + "certificate": { + "description": "The certificate content", + "type": "string" + } + } + }, + "CertificatePropertiesWithNonce": { + "description": "The description of an X509 CA Certificate including the challenge nonce issued for the Proof-Of-Possession flow.", + "type": "object", + "properties": { + "subject": { + "description": "The certificate's subject name.", + "type": "string", + "readOnly": true + }, + "expiry": { + "description": "The certificate's expiration date and time.", + "type": "string", + "format": "date-time-rfc1123", + "readOnly": true + }, + "thumbprint": { + "description": "The certificate's thumbprint.", + "type": "string", + "readOnly": true + }, + "isVerified": { + "description": "Determines whether certificate has been verified.", + "type": "boolean", + "readOnly": true + }, + "created": { + "description": "The certificate's create date and time.", + "type": "string", + "format": "date-time-rfc1123", + "readOnly": true + }, + "updated": { + "description": "The certificate's last update date and time.", + "type": "string", + "format": "date-time-rfc1123", + "readOnly": true + }, + "verificationCode": { + "description": "The certificate's verification code that will be used for proof of possession.", + "type": "string", + "readOnly": true + }, + "certificate": { + "description": "The certificate content", + "type": "string", + "readOnly": true + } + } + }, + "IotHubProperties": { + "description": "The properties of an IoT hub.", + "type": "object", + "properties": { + "authorizationPolicies": { + "description": "The shared access policies you can use to secure a connection to the IoT hub.", + "type": "array", + "items": { + "$ref": "#/definitions/SharedAccessSignatureAuthorizationRule" + } + }, + "disableLocalAuth": { + "description": "If true, SAS tokens with Iot hub scoped SAS keys cannot be used for authentication.", + "type": "boolean" + }, + "disableDeviceSAS": { + "description": "If true, all device(including Edge devices but excluding modules) scoped SAS keys cannot be used for authentication.", + "type": "boolean" + }, + "disableModuleSAS": { + "description": "If true, all module scoped SAS keys cannot be used for authentication.", + "type": "boolean" + }, + "restrictOutboundNetworkAccess": { + "description": "If true, egress from IotHub will be restricted to only the allowed FQDNs that are configured via allowedFqdnList.", + "type": "boolean" + }, + "allowedFqdnList": { + "description": "List of allowed FQDNs(Fully Qualified Domain Name) for egress from Iot Hub.", + "type": "array", + "items": { + "description": "FQDN to be allowed for egress. Example: my-eventhub.servicebus.windows.net", + "type": "string" + } + }, + "publicNetworkAccess": { + "type": "string", + "description": "Whether requests from Public Network are allowed", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "modelAsString": true, + "name": "PublicNetworkAccess" + } + }, + "ipFilterRules": { + "description": "The IP filter rules.", + "type": "array", + "items": { + "$ref": "#/definitions/IpFilterRule" + } + }, + "networkRuleSets": { + "$ref": "#/definitions/NetworkRuleSetProperties" + }, + "minTlsVersion": { + "type": "string", + "description": "Specifies the minimum TLS version to support for this hub. Can be set to \"1.2\" to have clients that use a TLS version below 1.2 to be rejected." + }, + "privateEndpointConnections": { + "description": "Private endpoint connections created on this IotHub", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "provisioningState": { + "description": "The provisioning state.", + "type": "string", + "readOnly": true + }, + "state": { + "description": "The hub state.", + "type": "string", + "readOnly": true + }, + "hostName": { + "description": "The name of the host.", + "type": "string", + "readOnly": true + }, + "eventHubEndpoints": { + "description": "The Event Hub-compatible endpoint properties. The only possible keys to this dictionary is events. This key has to be present in the dictionary while making create or update calls for the IoT hub.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/EventHubProperties" + } + }, + "routing": { + "$ref": "#/definitions/RoutingProperties" + }, + "storageEndpoints": { + "description": "The list of Azure Storage endpoints where you can upload files. Currently you can configure only one Azure Storage account and that MUST have its key as $default. Specifying more than one storage account causes an error to be thrown. Not specifying a value for this property when the enableFileUploadNotifications property is set to True, causes an error to be thrown.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/StorageEndpointProperties" + } + }, + "messagingEndpoints": { + "description": "The messaging endpoint properties for the file upload notification queue.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/MessagingEndpointProperties" + } + }, + "enableFileUploadNotifications": { + "description": "If True, file upload notifications are enabled.", + "type": "boolean" + }, + "cloudToDevice": { + "$ref": "#/definitions/CloudToDeviceProperties" + }, + "comments": { + "description": "IoT hub comments.", + "type": "string" + }, + "deviceStreams": { + "description": "The device streams properties of iothub.", + "type": "object", + "properties": { + "streamingEndpoints": { + "description": "List of Device Streams Endpoints.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "features": { + "description": "The capabilities and features enabled for the IoT hub.", + "enum": [ + "None", + "DeviceManagement" + ], + "type": "string", + "x-ms-enum": { + "name": "Capabilities", + "modelAsString": true + } + }, + "encryption": { + "description": "The encryption properties for the IoT hub.", + "$ref": "#/definitions/EncryptionPropertiesDescription" + }, + "locations": { + "description": "Primary and secondary location for iot hub", + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/IotHubLocationDescription" + } + } + } + }, + "IotHubSkuInfo": { + "description": "Information about the SKU of the IoT hub.", + "type": "object", + "properties": { + "name": { + "description": "The name of the SKU.", + "enum": [ + "F1", + "S1", + "S2", + "S3", + "B1", + "B2", + "B3" + ], + "type": "string", + "x-ms-enum": { + "name": "IotHubSku", + "modelAsString": true + } + }, + "tier": { + "description": "The billing tier for the IoT hub.", + "enum": [ + "Free", + "Standard", + "Basic" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "IotHubSkuTier", + "modelAsString": false + } + }, + "capacity": { + "format": "int64", + "description": "The number of provisioned IoT Hub units. See: https://docs.microsoft.com/azure/azure-subscription-service-limits#iot-hub-limits.", + "type": "integer" + } + }, + "required": [ + "name" + ] + }, + "EventHubProperties": { + "description": "The properties of the provisioned Event Hub-compatible endpoint used by the IoT hub.", + "type": "object", + "properties": { + "retentionTimeInDays": { + "format": "int64", + "description": "The retention time for device-to-cloud messages in days. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#device-to-cloud-messages", + "type": "integer" + }, + "partitionCount": { + "format": "int32", + "description": "The number of partitions for receiving device-to-cloud messages in the Event Hub-compatible endpoint. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#device-to-cloud-messages.", + "type": "integer" + }, + "partitionIds": { + "description": "The partition ids in the Event Hub-compatible endpoint.", + "readOnly": true, + "type": "array", + "items": { + "type": "string" + } + }, + "path": { + "description": "The Event Hub-compatible name.", + "type": "string", + "readOnly": true + }, + "endpoint": { + "description": "The Event Hub-compatible endpoint.", + "type": "string", + "readOnly": true + } + } + }, + "StorageEndpointProperties": { + "description": "The properties of the Azure Storage endpoint for file upload.", + "type": "object", + "properties": { + "sasTtlAsIso8601": { + "description": "The period of time for which the SAS URI generated by IoT Hub for file upload is valid. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-file-upload#file-upload-notification-configuration-options.", + "type": "string", + "format": "duration" + }, + "connectionString": { + "description": "The connection string for the Azure Storage account to which files are uploaded.", + "type": "string" + }, + "containerName": { + "description": "The name of the root container where you upload files. The container need not exist but should be creatable using the connectionString specified.", + "type": "string" + }, + "authenticationType": { + "description": "Specifies authentication type being used for connecting to the storage account.", + "enum": [ + "keyBased", + "identityBased" + ], + "type": "string", + "x-ms-enum": { + "name": "AuthenticationType", + "modelAsString": true + } + }, + "identity": { + "description": "Managed identity properties of storage endpoint for file upload.", + "$ref": "#/definitions/ManagedIdentity" + } + }, + "required": [ + "connectionString", + "containerName" + ] + }, + "MessagingEndpointProperties": { + "description": "The properties of the messaging endpoints used by this IoT hub.", + "type": "object", + "properties": { + "lockDurationAsIso8601": { + "description": "The lock duration. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-file-upload.", + "type": "string", + "format": "duration" + }, + "ttlAsIso8601": { + "description": "The period of time for which a message is available to consume before it is expired by the IoT hub. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-file-upload.", + "type": "string", + "format": "duration" + }, + "maxDeliveryCount": { + "description": "The number of times the IoT hub attempts to deliver a message. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-file-upload.", + "format": "int32", + "type": "integer", + "minimum": 1, + "maximum": 100 + } + } + }, + "CloudToDeviceProperties": { + "description": "The IoT hub cloud-to-device messaging properties.", + "type": "object", + "properties": { + "maxDeliveryCount": { + "description": "The max delivery count for cloud-to-device messages in the device queue. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages.", + "format": "int32", + "type": "integer", + "minimum": 1, + "maximum": 100 + }, + "defaultTtlAsIso8601": { + "description": "The default time to live for cloud-to-device messages in the device queue. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages.", + "type": "string", + "format": "duration" + }, + "feedback": { + "$ref": "#/definitions/FeedbackProperties" + } + } + }, + "IpFilterRule": { + "description": "The IP filter rules for the IoT hub.", + "type": "object", + "properties": { + "filterName": { + "description": "The name of the IP filter rule.", + "type": "string" + }, + "action": { + "description": "The desired action for requests captured by this rule.", + "enum": [ + "Accept", + "Reject" + ], + "type": "string", + "x-ms-enum": { + "name": "IpFilterActionType", + "modelAsString": false + } + }, + "ipMask": { + "description": "A string that contains the IP address range in CIDR notation for the rule.", + "type": "string" + } + }, + "required": [ + "filterName", + "action", + "ipMask" + ] + }, + "NetworkRuleSetProperties": { + "description": "Network Rule Set Properties of IotHub", + "type": "object", + "properties": { + "defaultAction": { + "type": "string", + "description": "Default Action for Network Rule Set", + "enum": [ + "Deny", + "Allow" + ], + "x-ms-enum": { + "name": "DefaultAction", + "modelAsString": true + }, + "default": "Deny" + }, + "applyToBuiltInEventHubEndpoint": { + "type": "boolean", + "description": "If True, then Network Rule Set is also applied to BuiltIn EventHub EndPoint of IotHub" + }, + "ipRules": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkRuleSetIpRule" + }, + "description": "List of IP Rules" + } + }, + "required": [ + "applyToBuiltInEventHubEndpoint", + "ipRules" + ] + }, + "NetworkRuleSetIpRule": { + "description": "IP Rule to be applied as part of Network Rule Set", + "type": "object", + "properties": { + "filterName": { + "type": "string", + "description": "Name of the IP filter rule." + }, + "action": { + "type": "string", + "description": "IP Filter Action", + "enum": [ + "Allow" + ], + "x-ms-enum": { + "name": "NetworkRuleIPAction", + "modelAsString": true + }, + "default": "Allow" + }, + "ipMask": { + "type": "string", + "description": "A string that contains the IP address range in CIDR notation for the rule." + } + }, + "required": [ + "filterName", + "ipMask" + ] + }, + "PrivateLinkResources": { + "description": "The available private link resources for an IotHub", + "type": "object", + "properties": { + "value": { + "description": "The list of available private link resources for an IotHub", + "type": "array", + "items": { + "$ref": "#/definitions/GroupIdInformation" + } + } + } + }, + "GroupIdInformation": { + "description": "The group information for creating a private endpoint on an IotHub", + "type": "object", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The resource identifier." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The resource name." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + }, + "properties": { + "$ref": "#/definitions/GroupIdInformationProperties" + } + }, + "required": [ + "properties" + ] + }, + "GroupIdInformationProperties": { + "description": "The properties for a group information object", + "type": "object", + "properties": { + "groupId": { + "type": "string", + "description": "The group id" + }, + "requiredMembers": { + "description": "The required members for a specific group id", + "type": "array", + "items": { + "type": "string" + } + }, + "requiredZoneNames": { + "description": "The required DNS zones for a specific group id", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "PrivateEndpointConnectionsList": { + "description": "The list of private endpoint connections for an IotHub", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "PrivateEndpointConnection": { + "description": "The private endpoint connection of an IotHub", + "x-ms-azure-resource": true, + "type": "object", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The resource identifier." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The resource name." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + }, + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties" + } + }, + "required": [ + "properties" + ] + }, + "PrivateEndpointConnectionProperties": { + "description": "The properties of a private endpoint connection", + "type": "object", + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionState" + } + }, + "required": [ + "privateLinkServiceConnectionState" + ] + }, + "PrivateEndpoint": { + "description": "The private endpoint property of a private endpoint connection", + "type": "object", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The resource identifier." + } + } + }, + "PrivateLinkServiceConnectionState": { + "description": "The current state of a private endpoint connection", + "type": "object", + "properties": { + "status": { + "description": "The status of a private endpoint connection", + "enum": [ + "Pending", + "Approved", + "Rejected", + "Disconnected" + ], + "type": "string", + "x-ms-enum": { + "name": "PrivateLinkServiceConnectionStatus", + "modelAsString": true + } + }, + "description": { + "type": "string", + "description": "The description for the current state of a private endpoint connection" + }, + "actionsRequired": { + "type": "string", + "description": "Actions required for a private endpoint connection" + } + }, + "required": [ + "status", + "description" + ] + }, + "FeedbackProperties": { + "description": "The properties of the feedback queue for cloud-to-device messages.", + "type": "object", + "properties": { + "lockDurationAsIso8601": { + "description": "The lock duration for the feedback queue. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages.", + "type": "string", + "format": "duration" + }, + "ttlAsIso8601": { + "description": "The period of time for which a message is available to consume before it is expired by the IoT hub. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages.", + "type": "string", + "format": "duration" + }, + "maxDeliveryCount": { + "description": "The number of times the IoT hub attempts to deliver a message on the feedback queue. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages.", + "format": "int32", + "type": "integer", + "minimum": 1, + "maximum": 100 + } + } + }, + "RoutingProperties": { + "description": "The routing related properties of the IoT hub. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging", + "type": "object", + "properties": { + "endpoints": { + "$ref": "#/definitions/RoutingEndpoints" + }, + "routes": { + "description": "The list of user-provided routing rules that the IoT hub uses to route messages to built-in and custom endpoints. A maximum of 100 routing rules are allowed for paid hubs and a maximum of 5 routing rules are allowed for free hubs.", + "type": "array", + "items": { + "$ref": "#/definitions/RouteProperties" + } + }, + "fallbackRoute": { + "description": "The properties of the route that is used as a fall-back route when none of the conditions specified in the 'routes' section are met. This is an optional parameter. When this property is not set, the messages which do not meet any of the conditions specified in the 'routes' section get routed to the built-in eventhub endpoint.", + "$ref": "#/definitions/FallbackRouteProperties" + }, + "enrichments": { + "description": "The list of user-provided enrichments that the IoT hub applies to messages to be delivered to built-in and custom endpoints. See: https://aka.ms/telemetryoneventgrid", + "type": "array", + "items": { + "$ref": "#/definitions/EnrichmentProperties" + } + } + } + }, + "RoutingEndpoints": { + "description": "The properties related to the custom endpoints to which your IoT hub routes messages based on the routing rules. A maximum of 10 custom endpoints are allowed across all endpoint types for paid hubs and only 1 custom endpoint is allowed across all endpoint types for free hubs.", + "type": "object", + "properties": { + "serviceBusQueues": { + "description": "The list of Service Bus queue endpoints that IoT hub routes the messages to, based on the routing rules.", + "type": "array", + "items": { + "$ref": "#/definitions/RoutingServiceBusQueueEndpointProperties" + } + }, + "serviceBusTopics": { + "description": "The list of Service Bus topic endpoints that the IoT hub routes the messages to, based on the routing rules.", + "type": "array", + "items": { + "$ref": "#/definitions/RoutingServiceBusTopicEndpointProperties" + } + }, + "eventHubs": { + "description": "The list of Event Hubs endpoints that IoT hub routes messages to, based on the routing rules. This list does not include the built-in Event Hubs endpoint.", + "type": "array", + "items": { + "$ref": "#/definitions/RoutingEventHubProperties" + } + }, + "storageContainers": { + "description": "The list of storage container endpoints that IoT hub routes messages to, based on the routing rules.", + "type": "array", + "items": { + "$ref": "#/definitions/RoutingStorageContainerProperties" + } + } + } + }, + "RoutingServiceBusQueueEndpointProperties": { + "description": "The properties related to service bus queue endpoint types.", + "type": "object", + "properties": { + "id": { + "description": "Id of the service bus queue endpoint", + "type": "string" + }, + "connectionString": { + "description": "The connection string of the service bus queue endpoint.", + "type": "string" + }, + "endpointUri": { + "description": "The url of the service bus queue endpoint. It must include the protocol sb://", + "type": "string" + }, + "entityPath": { + "description": "Queue name on the service bus namespace", + "type": "string" + }, + "authenticationType": { + "description": "Method used to authenticate against the service bus queue endpoint", + "enum": [ + "keyBased", + "identityBased" + ], + "type": "string", + "x-ms-enum": { + "name": "authenticationType", + "modelAsString": true + } + }, + "identity": { + "description": "Managed identity properties of routing service bus queue endpoint.", + "$ref": "#/definitions/ManagedIdentity" + }, + "name": { + "description": "The name that identifies this endpoint. The name can only include alphanumeric characters, periods, underscores, hyphens and has a maximum length of 64 characters. The following names are reserved: events, fileNotifications, $default. Endpoint names must be unique across endpoint types. The name need not be the same as the actual queue name.", + "type": "string", + "pattern": "^[A-Za-z0-9-._]{1,64}$" + }, + "subscriptionId": { + "description": "The subscription identifier of the service bus queue endpoint.", + "type": "string" + }, + "resourceGroup": { + "description": "The name of the resource group of the service bus queue endpoint.", + "type": "string" + } + }, + "required": [ + "name" + ] + }, + "RoutingServiceBusTopicEndpointProperties": { + "description": "The properties related to service bus topic endpoint types.", + "type": "object", + "properties": { + "id": { + "description": "Id of the service bus topic endpoint", + "type": "string" + }, + "connectionString": { + "description": "The connection string of the service bus topic endpoint.", + "type": "string" + }, + "endpointUri": { + "description": "The url of the service bus topic endpoint. It must include the protocol sb://", + "type": "string" + }, + "entityPath": { + "description": "Queue name on the service bus topic", + "type": "string" + }, + "authenticationType": { + "description": "Method used to authenticate against the service bus topic endpoint", + "enum": [ + "keyBased", + "identityBased" + ], + "type": "string", + "x-ms-enum": { + "name": "authenticationType", + "modelAsString": true + } + }, + "identity": { + "description": "Managed identity properties of routing service bus topic endpoint.", + "$ref": "#/definitions/ManagedIdentity" + }, + "name": { + "description": "The name that identifies this endpoint. The name can only include alphanumeric characters, periods, underscores, hyphens and has a maximum length of 64 characters. The following names are reserved: events, fileNotifications, $default. Endpoint names must be unique across endpoint types. The name need not be the same as the actual topic name.", + "type": "string", + "pattern": "^[A-Za-z0-9-._]{1,64}$" + }, + "subscriptionId": { + "description": "The subscription identifier of the service bus topic endpoint.", + "type": "string" + }, + "resourceGroup": { + "description": "The name of the resource group of the service bus topic endpoint.", + "type": "string" + } + }, + "required": [ + "name" + ] + }, + "RoutingEventHubProperties": { + "description": "The properties related to an event hub endpoint.", + "type": "object", + "properties": { + "id": { + "description": "Id of the event hub endpoint", + "type": "string" + }, + "connectionString": { + "description": "The connection string of the event hub endpoint. ", + "type": "string" + }, + "endpointUri": { + "description": "The url of the event hub endpoint. It must include the protocol sb://", + "type": "string" + }, + "entityPath": { + "description": "Event hub name on the event hub namespace", + "type": "string" + }, + "authenticationType": { + "description": "Method used to authenticate against the event hub endpoint", + "enum": [ + "keyBased", + "identityBased" + ], + "type": "string", + "x-ms-enum": { + "name": "authenticationType", + "modelAsString": true + } + }, + "identity": { + "description": "Managed identity properties of routing event hub endpoint.", + "$ref": "#/definitions/ManagedIdentity" + }, + "name": { + "description": "The name that identifies this endpoint. The name can only include alphanumeric characters, periods, underscores, hyphens and has a maximum length of 64 characters. The following names are reserved: events, fileNotifications, $default. Endpoint names must be unique across endpoint types.", + "type": "string", + "pattern": "^[A-Za-z0-9-._]{1,64}$" + }, + "subscriptionId": { + "description": "The subscription identifier of the event hub endpoint.", + "type": "string" + }, + "resourceGroup": { + "description": "The name of the resource group of the event hub endpoint.", + "type": "string" + } + }, + "required": [ + "name" + ] + }, + "RoutingStorageContainerProperties": { + "description": "The properties related to a storage container endpoint.", + "type": "object", + "properties": { + "id": { + "description": "Id of the storage container endpoint", + "type": "string" + }, + "connectionString": { + "description": "The connection string of the storage account.", + "type": "string" + }, + "endpointUri": { + "description": "The url of the storage endpoint. It must include the protocol https://", + "type": "string" + }, + "authenticationType": { + "description": "Method used to authenticate against the storage endpoint", + "enum": [ + "keyBased", + "identityBased" + ], + "type": "string", + "x-ms-enum": { + "name": "authenticationType", + "modelAsString": true + } + }, + "identity": { + "description": "Managed identity properties of routing storage endpoint.", + "$ref": "#/definitions/ManagedIdentity" + }, + "name": { + "description": "The name that identifies this endpoint. The name can only include alphanumeric characters, periods, underscores, hyphens and has a maximum length of 64 characters. The following names are reserved: events, fileNotifications, $default. Endpoint names must be unique across endpoint types.", + "type": "string", + "pattern": "^[A-Za-z0-9-._]{1,64}$" + }, + "subscriptionId": { + "description": "The subscription identifier of the storage account.", + "type": "string" + }, + "resourceGroup": { + "description": "The name of the resource group of the storage account.", + "type": "string" + }, + "containerName": { + "description": "The name of storage container in the storage account.", + "type": "string" + }, + "fileNameFormat": { + "description": "File name format for the blob. Default format is {iothub}/{partition}/{YYYY}/{MM}/{DD}/{HH}/{mm}. All parameters are mandatory but can be reordered.", + "type": "string" + }, + "batchFrequencyInSeconds": { + "description": "Time interval at which blobs are written to storage. Value should be between 60 and 720 seconds. Default value is 300 seconds.", + "format": "int32", + "type": "integer", + "maximum": 720, + "minimum": 60 + }, + "maxChunkSizeInBytes": { + "description": "Maximum number of bytes for each blob written to storage. Value should be between 10485760(10MB) and 524288000(500MB). Default value is 314572800(300MB).", + "format": "int32", + "type": "integer", + "maximum": 524288000, + "minimum": 10485760 + }, + "encoding": { + "description": "Encoding that is used to serialize messages to blobs. Supported values are 'avro', 'avrodeflate', and 'JSON'. Default value is 'avro'.", + "type": "string", + "enum": [ + "Avro", + "AvroDeflate", + "JSON" + ] + } + }, + "required": [ + "name", + "containerName" + ] + }, + "RouteProperties": { + "description": "The properties of a routing rule that your IoT hub uses to route messages to endpoints.", + "type": "object", + "properties": { + "name": { + "description": "The name of the route. The name can only include alphanumeric characters, periods, underscores, hyphens, has a maximum length of 64 characters, and must be unique.", + "type": "string", + "pattern": "^[A-Za-z0-9-._]{1,64}$" + }, + "source": { + "description": "The source that the routing rule is to be applied to, such as DeviceMessages.", + "enum": [ + "Invalid", + "DeviceMessages", + "TwinChangeEvents", + "DeviceLifecycleEvents", + "DeviceJobLifecycleEvents", + "DigitalTwinChangeEvents", + "DeviceConnectionStateEvents" + ], + "type": "string", + "x-ms-enum": { + "name": "RoutingSource", + "modelAsString": true + } + }, + "condition": { + "description": "The condition that is evaluated to apply the routing rule. If no condition is provided, it evaluates to true by default. For grammar, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-query-language", + "type": "string" + }, + "endpointNames": { + "description": "The list of endpoints to which messages that satisfy the condition are routed. Currently only one endpoint is allowed.", + "minItems": 1, + "maxItems": 1, + "type": "array", + "items": { + "type": "string" + } + }, + "isEnabled": { + "description": "Used to specify whether a route is enabled.", + "type": "boolean" + } + }, + "required": [ + "name", + "endpointNames", + "source", + "isEnabled" + ] + }, + "FallbackRouteProperties": { + "description": "The properties of the fallback route. IoT Hub uses these properties when it routes messages to the fallback endpoint.", + "type": "object", + "properties": { + "name": { + "description": "The name of the route. The name can only include alphanumeric characters, periods, underscores, hyphens, has a maximum length of 64 characters, and must be unique.", + "type": "string" + }, + "source": { + "description": "The source to which the routing rule is to be applied to. For example, DeviceMessages", + "enum": [ + "DeviceMessages" + ], + "type": "string", + "x-ms-enum": { + "name": "RoutingSource", + "modelAsString": true + } + }, + "condition": { + "description": "The condition which is evaluated in order to apply the fallback route. If the condition is not provided it will evaluate to true by default. For grammar, See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-query-language", + "type": "string" + }, + "endpointNames": { + "description": "The list of endpoints to which the messages that satisfy the condition are routed to. Currently only 1 endpoint is allowed.", + "minItems": 1, + "maxItems": 1, + "type": "array", + "items": { + "type": "string" + } + }, + "isEnabled": { + "description": "Used to specify whether the fallback route is enabled.", + "type": "boolean" + } + }, + "required": [ + "endpointNames", + "source", + "isEnabled" + ] + }, + "EnrichmentProperties": { + "description": "The properties of an enrichment that your IoT hub applies to messages delivered to endpoints.", + "type": "object", + "properties": { + "key": { + "description": "The key or name for the enrichment property.", + "type": "string" + }, + "value": { + "description": "The value for the enrichment property.", + "type": "string" + }, + "endpointNames": { + "description": "The list of endpoints for which the enrichment is applied to the message.", + "minItems": 1, + "type": "array", + "items": { + "type": "string" + } + } + }, + "required": [ + "key", + "value", + "endpointNames" + ] + }, + "IotHubDescription": { + "description": "The description of the IoT hub.", + "type": "object", + "properties": { + "etag": { + "description": "The Etag field is *not* required. If it is provided in the response body, it must also be provided as a header per the normal ETag convention.", + "type": "string" + }, + "properties": { + "description": "IotHub properties", + "$ref": "#/definitions/IotHubProperties" + }, + "sku": { + "description": "IotHub SKU info", + "$ref": "#/definitions/IotHubSkuInfo" + }, + "identity": { + "description": "The managed identities for the IotHub.", + "$ref": "#/definitions/ArmIdentity" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "required": [ + "sku" + ] + }, + "Resource": { + "description": "The common properties of an Azure resource.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The resource identifier." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The resource name.", + "pattern": "^(?![0-9]+$)(?!-)[a-zA-Z0-9-]{2,49}[a-zA-Z0-9]$" + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + }, + "location": { + "type": "string", + "description": "The resource location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The resource tags." + } + }, + "x-ms-azure-resource": true, + "required": [ + "location" + ] + }, + "SharedAccessSignatureAuthorizationRuleListResult": { + "description": "The list of shared access policies with a next link.", + "type": "object", + "properties": { + "value": { + "description": "The list of shared access policies.", + "type": "array", + "items": { + "$ref": "#/definitions/SharedAccessSignatureAuthorizationRule" + } + }, + "nextLink": { + "description": "The next link.", + "type": "string", + "readOnly": true + } + } + }, + "OperationListResult": { + "description": "Result of the request to list IoT Hub operations. It contains a list of operations and a URL link to get the next set of results.", + "properties": { + "value": { + "description": "List of IoT Hub operations supported by the Microsoft.Devices resource provider.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Operation" + } + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "Operation": { + "description": "IoT Hub REST API operation", + "type": "object", + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "Operation name: {provider}/{resource}/{read | write | action | delete}" + }, + "display": { + "description": "The object that represents the operation.", + "properties": { + "provider": { + "readOnly": true, + "type": "string", + "description": "Service provider: Microsoft Devices" + }, + "resource": { + "readOnly": true, + "type": "string", + "description": "Resource Type: IotHubs" + }, + "operation": { + "readOnly": true, + "type": "string", + "description": "Name of the operation" + }, + "description": { + "readOnly": true, + "type": "string", + "description": "Description of the operation" + } + } + } + } + }, + "ErrorDetails": { + "description": "Error details.", + "type": "object", + "properties": { + "code": { + "description": "The error code.", + "type": "string", + "readOnly": true + }, + "httpStatusCode": { + "description": "The HTTP status code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "The error message.", + "type": "string", + "readOnly": true + }, + "details": { + "description": "The error details.", + "type": "string", + "readOnly": true + } + } + }, + "IotHubQuotaMetricInfoListResult": { + "description": "The JSON-serialized array of IotHubQuotaMetricInfo objects with a next link.", + "type": "object", + "properties": { + "value": { + "description": "The array of quota metrics objects.", + "type": "array", + "items": { + "$ref": "#/definitions/IotHubQuotaMetricInfo" + } + }, + "nextLink": { + "description": "The next link.", + "type": "string", + "readOnly": true + } + } + }, + "EndpointHealthDataListResult": { + "description": "The JSON-serialized array of EndpointHealthData objects with a next link.", + "type": "object", + "properties": { + "value": { + "description": "JSON-serialized array of Endpoint health data", + "type": "array", + "items": { + "$ref": "#/definitions/EndpointHealthData" + } + }, + "nextLink": { + "description": "Link to more results", + "type": "string", + "readOnly": true + } + } + }, + "EndpointHealthData": { + "description": "The health data for an endpoint", + "type": "object", + "properties": { + "endpointId": { + "description": "Id of the endpoint", + "type": "string" + }, + "healthStatus": { + "description": "Health statuses have following meanings. The 'healthy' status shows that the endpoint is accepting messages as expected. The 'unhealthy' status shows that the endpoint is not accepting messages as expected and IoT Hub is retrying to send data to this endpoint. The status of an unhealthy endpoint will be updated to healthy when IoT Hub has established an eventually consistent state of health. The 'dead' status shows that the endpoint is not accepting messages, after IoT Hub retried sending messages for the retrial period. See IoT Hub metrics to identify errors and monitor issues with endpoints. The 'unknown' status shows that the IoT Hub has not established a connection with the endpoint. No messages have been delivered to or rejected from this endpoint", + "enum": [ + "unknown", + "healthy", + "degraded", + "unhealthy", + "dead" + ], + "type": "string", + "x-ms-enum": { + "name": "EndpointHealthStatus", + "modelAsString": true + } + }, + "lastKnownError": { + "description": "Last error obtained when a message failed to be delivered to iot hub", + "type": "string" + }, + "lastKnownErrorTime": { + "description": "Time at which the last known error occurred", + "type": "string", + "format": "date-time-rfc1123" + }, + "lastSuccessfulSendAttemptTime": { + "description": "Last time iot hub successfully sent a message to the endpoint", + "type": "string", + "format": "date-time-rfc1123" + }, + "lastSendAttemptTime": { + "description": "Last time iot hub tried to send a message to the endpoint", + "type": "string", + "format": "date-time-rfc1123" + } + } + }, + "RegistryStatistics": { + "description": "Identity registry statistics.", + "type": "object", + "properties": { + "totalDeviceCount": { + "format": "int64", + "description": "The total count of devices in the identity registry.", + "type": "integer", + "readOnly": true + }, + "enabledDeviceCount": { + "format": "int64", + "description": "The count of enabled devices in the identity registry.", + "type": "integer", + "readOnly": true + }, + "disabledDeviceCount": { + "format": "int64", + "description": "The count of disabled devices in the identity registry.", + "type": "integer", + "readOnly": true + } + } + }, + "JobResponseListResult": { + "description": "The JSON-serialized array of JobResponse objects with a next link.", + "type": "object", + "properties": { + "value": { + "description": "The array of JobResponse objects.", + "type": "array", + "items": { + "$ref": "#/definitions/JobResponse" + } + }, + "nextLink": { + "description": "The next link.", + "type": "string", + "readOnly": true + } + } + }, + "IotHubSkuDescription": { + "description": "SKU properties.", + "type": "object", + "properties": { + "resourceType": { + "description": "The type of the resource.", + "type": "string", + "readOnly": true + }, + "sku": { + "description": "The type of the resource.", + "$ref": "#/definitions/IotHubSkuInfo" + }, + "capacity": { + "description": "IotHub capacity", + "$ref": "#/definitions/IotHubCapacity" + } + }, + "required": [ + "sku", + "capacity" + ] + }, + "TagsResource": { + "properties": { + "tags": { + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "description": "A container holding only the Tags for a resource, allowing the user to update the tags on an IoT Hub instance." + }, + "IotHubCapacity": { + "description": "IoT Hub capacity information.", + "type": "object", + "properties": { + "minimum": { + "format": "int64", + "description": "The minimum number of units.", + "type": "integer", + "minimum": 1, + "maximum": 1, + "readOnly": true + }, + "maximum": { + "format": "int64", + "description": "The maximum number of units.", + "type": "integer", + "readOnly": true + }, + "default": { + "format": "int64", + "description": "The default number of units.", + "type": "integer", + "readOnly": true + }, + "scaleType": { + "description": "The type of the scaling enabled.", + "enum": [ + "Automatic", + "Manual", + "None" + ], + "readOnly": true, + "type": "string", + "x-ms-enum": { + "name": "IotHubScaleType", + "modelAsString": false + } + } + } + }, + "EventHubConsumerGroupsListResult": { + "description": "The JSON-serialized array of Event Hub-compatible consumer group names with a next link.", + "type": "object", + "properties": { + "value": { + "description": "List of consumer groups objects", + "type": "array", + "items": { + "$ref": "#/definitions/EventHubConsumerGroupInfo" + } + }, + "nextLink": { + "description": "The next link.", + "type": "string", + "readOnly": true + } + } + }, + "EventHubConsumerGroupBodyDescription": { + "description": "The EventHub consumer group.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/EventHubConsumerGroupName" + } + }, + "required": [ + "properties" + ] + }, + "EventHubConsumerGroupName": { + "description": "The EventHub consumer group name.", + "type": "object", + "properties": { + "name": { + "description": "EventHub consumer group name", + "type": "string" + } + }, + "required": [ + "name" + ] + }, + "EventHubConsumerGroupInfo": { + "description": "The properties of the EventHubConsumerGroupInfo object.", + "x-ms-azure-resource": true, + "type": "object", + "properties": { + "properties": { + "description": "The tags.", + "type": "object", + "additionalProperties": {} + }, + "id": { + "description": "The Event Hub-compatible consumer group identifier.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The Event Hub-compatible consumer group name.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "the resource type.", + "type": "string", + "readOnly": true + }, + "etag": { + "description": "The etag.", + "type": "string", + "readOnly": true + } + } + }, + "IotHubSkuDescriptionListResult": { + "description": "The JSON-serialized array of IotHubSkuDescription objects with a next link.", + "type": "object", + "properties": { + "value": { + "description": "The array of IotHubSkuDescription.", + "type": "array", + "items": { + "$ref": "#/definitions/IotHubSkuDescription" + } + }, + "nextLink": { + "description": "The next link.", + "type": "string", + "readOnly": true + } + } + }, + "JobResponse": { + "description": "The properties of the Job Response object.", + "type": "object", + "properties": { + "jobId": { + "description": "The job identifier.", + "type": "string", + "readOnly": true + }, + "startTimeUtc": { + "format": "date-time-rfc1123", + "description": "The start time of the job.", + "type": "string", + "readOnly": true + }, + "endTimeUtc": { + "format": "date-time-rfc1123", + "description": "The time the job stopped processing.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The type of the job.", + "enum": [ + "unknown", + "export", + "import", + "backup", + "readDeviceProperties", + "writeDeviceProperties", + "updateDeviceConfiguration", + "rebootDevice", + "factoryResetDevice", + "firmwareUpdate" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "JobType", + "modelAsString": true + } + }, + "status": { + "description": "The status of the job.", + "enum": [ + "unknown", + "enqueued", + "running", + "completed", + "failed", + "cancelled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "JobStatus", + "modelAsString": false + } + }, + "failureReason": { + "description": "If status == failed, this string containing the reason for the failure.", + "type": "string", + "readOnly": true + }, + "statusMessage": { + "description": "The status message for the job.", + "type": "string", + "readOnly": true + }, + "parentJobId": { + "description": "The job identifier of the parent job, if any.", + "type": "string", + "readOnly": true + } + } + }, + "IotHubDescriptionListResult": { + "description": "The JSON-serialized array of IotHubDescription objects with a next link.", + "type": "object", + "properties": { + "value": { + "description": "The array of IotHubDescription objects.", + "type": "array", + "items": { + "$ref": "#/definitions/IotHubDescription" + } + }, + "nextLink": { + "description": "The next link.", + "type": "string", + "readOnly": true + } + } + }, + "IotHubQuotaMetricInfo": { + "description": "Quota metrics properties.", + "type": "object", + "properties": { + "name": { + "description": "The name of the quota metric.", + "type": "string", + "readOnly": true + }, + "currentValue": { + "format": "int64", + "description": "The current value for the quota metric.", + "type": "integer", + "readOnly": true + }, + "maxValue": { + "format": "int64", + "description": "The maximum value of the quota metric.", + "type": "integer", + "readOnly": true + } + } + }, + "OperationInputs": { + "description": "Input values.", + "type": "object", + "properties": { + "name": { + "description": "The name of the IoT hub to check.", + "type": "string" + } + }, + "required": [ + "name" + ] + }, + "IotHubNameAvailabilityInfo": { + "description": "The properties indicating whether a given IoT hub name is available.", + "type": "object", + "properties": { + "nameAvailable": { + "description": "The value which indicates whether the provided name is available.", + "type": "boolean", + "readOnly": true + }, + "reason": { + "description": "The reason for unavailability.", + "enum": [ + "Invalid", + "AlreadyExists" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "IotHubNameUnavailabilityReason", + "modelAsString": false + } + }, + "message": { + "description": "The detailed reason message.", + "type": "string" + } + } + }, + "UserSubscriptionQuotaListResult": { + "type": "object", + "description": "Json-serialized array of User subscription quota response", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/UserSubscriptionQuota" + } + }, + "nextLink": { + "type": "string", + "readOnly": true + } + } + }, + "UserSubscriptionQuota": { + "description": "User subscription quota response", + "type": "object", + "properties": { + "id": { + "description": "IotHub type id", + "type": "string" + }, + "type": { + "description": "Response type", + "type": "string" + }, + "unit": { + "description": "Unit of IotHub type", + "type": "string" + }, + "currentValue": { + "description": "Current number of IotHub type", + "format": "int32", + "type": "integer" + }, + "limit": { + "description": "Numerical limit on IotHub type", + "format": "int32", + "type": "integer" + }, + "name": { + "description": "IotHub type", + "$ref": "#/definitions/Name" + } + } + }, + "Name": { + "description": "Name of Iot Hub type", + "type": "object", + "properties": { + "value": { + "description": "IotHub type", + "type": "string" + }, + "localizedValue": { + "description": "Localized value of name", + "type": "string" + } + } + }, + "TestAllRoutesInput": { + "description": "Input for testing all routes", + "type": "object", + "properties": { + "routingSource": { + "description": "Routing source", + "enum": [ + "Invalid", + "DeviceMessages", + "TwinChangeEvents", + "DeviceLifecycleEvents", + "DeviceJobLifecycleEvents", + "DigitalTwinChangeEvents", + "DeviceConnectionStateEvents" + ], + "type": "string", + "x-ms-enum": { + "name": "RoutingSource", + "modelAsString": true + } + }, + "message": { + "description": "Routing message", + "$ref": "#/definitions/RoutingMessage" + }, + "twin": { + "description": "Routing Twin Reference", + "$ref": "#/definitions/RoutingTwin" + } + } + }, + "RoutingTwin": { + "description": "Twin reference input parameter. This is an optional parameter", + "type": "object", + "properties": { + "tags": { + "description": "Twin Tags", + "type": "object" + }, + "properties": { + "properties": { + "desired": { + "description": "Twin desired properties", + "type": "object" + }, + "reported": { + "description": "Twin desired properties", + "type": "object" + } + } + } + } + }, + "RoutingMessage": { + "description": "Routing message", + "type": "object", + "properties": { + "body": { + "description": "Body of routing message", + "type": "string" + }, + "appProperties": { + "description": "App properties", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "systemProperties": { + "description": "System properties", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "TestAllRoutesResult": { + "description": "Result of testing all routes", + "type": "object", + "properties": { + "routes": { + "description": "JSON-serialized array of matched routes", + "type": "array", + "items": { + "$ref": "#/definitions/MatchedRoute" + } + } + } + }, + "MatchedRoute": { + "description": "Routes that matched", + "type": "object", + "properties": { + "properties": { + "description": "Properties of routes that matched", + "$ref": "#/definitions/RouteProperties" + } + } + }, + "TestRouteInput": { + "required": [ + "route" + ], + "description": "Input for testing route", + "type": "object", + "properties": { + "message": { + "description": "Routing message", + "$ref": "#/definitions/RoutingMessage" + }, + "route": { + "description": "Route properties", + "$ref": "#/definitions/RouteProperties" + }, + "twin": { + "description": "Routing Twin Reference", + "$ref": "#/definitions/RoutingTwin" + } + } + }, + "TestRouteResult": { + "description": "Result of testing one route", + "type": "object", + "properties": { + "result": { + "description": "Result of testing route", + "enum": [ + "undefined", + "false", + "true" + ], + "type": "string", + "x-ms-enum": { + "name": "TestResultStatus", + "modelAsString": true + } + }, + "details": { + "description": "Detailed result of testing route", + "$ref": "#/definitions/TestRouteResultDetails" + } + } + }, + "TestRouteResultDetails": { + "description": "Detailed result of testing a route", + "type": "object", + "properties": { + "compilationErrors": { + "description": "JSON-serialized list of route compilation errors", + "type": "array", + "items": { + "$ref": "#/definitions/RouteCompilationError" + } + } + } + }, + "RouteCompilationError": { + "description": "Compilation error when evaluating route", + "type": "object", + "properties": { + "message": { + "description": "Route error message", + "type": "string" + }, + "severity": { + "description": "Severity of the route error", + "enum": [ + "error", + "warning" + ], + "type": "string", + "x-ms-enum": { + "name": "RouteErrorSeverity", + "modelAsString": true + } + }, + "location": { + "description": "Location where the route error happened", + "$ref": "#/definitions/RouteErrorRange" + } + } + }, + "RouteErrorRange": { + "description": "Range of route errors", + "type": "object", + "properties": { + "start": { + "description": "Start where the route error happened", + "$ref": "#/definitions/RouteErrorPosition" + }, + "end": { + "description": "End where the route error happened", + "$ref": "#/definitions/RouteErrorPosition" + } + } + }, + "RouteErrorPosition": { + "description": "Position where the route error happened", + "type": "object", + "properties": { + "line": { + "description": "Line where the route error happened", + "format": "int32", + "type": "integer" + }, + "column": { + "description": "Column where the route error happened", + "format": "int32", + "type": "integer" + } + } + }, + "ExportDevicesRequest": { + "description": "Use to provide parameters when requesting an export of all devices in the IoT hub.", + "type": "object", + "properties": { + "exportBlobContainerUri": { + "description": "The export blob container URI.", + "type": "string" + }, + "excludeKeys": { + "description": "The value indicating whether keys should be excluded during export.", + "type": "boolean" + }, + "exportBlobName": { + "description": "The name of the blob that will be created in the provided output blob container. This blob will contain the exported device registry information for the IoT Hub.", + "type": "string" + }, + "authenticationType": { + "description": "Specifies authentication type being used for connecting to the storage account.", + "enum": [ + "keyBased", + "identityBased" + ], + "type": "string", + "x-ms-enum": { + "name": "AuthenticationType", + "modelAsString": true + } + }, + "identity": { + "description": "Managed identity properties of storage endpoint for export devices.", + "$ref": "#/definitions/ManagedIdentity" + }, + "includeConfigurations": { + "description": "The value indicating whether configurations should be exported.", + "type": "boolean" + }, + "configurationsBlobName": { + "description": "The name of the blob that will be created in the provided output blob container. This blob will contain the exported configurations for the Iot Hub.", + "type": "string" + } + }, + "required": [ + "exportBlobContainerUri", + "excludeKeys" + ] + }, + "ImportDevicesRequest": { + "description": "Use to provide parameters when requesting an import of all devices in the hub.", + "type": "object", + "properties": { + "inputBlobContainerUri": { + "description": "The input blob container URI.", + "type": "string" + }, + "outputBlobContainerUri": { + "description": "The output blob container URI.", + "type": "string" + }, + "inputBlobName": { + "description": "The blob name to be used when importing from the provided input blob container.", + "type": "string" + }, + "outputBlobName": { + "description": "The blob name to use for storing the status of the import job.", + "type": "string" + }, + "authenticationType": { + "description": "Specifies authentication type being used for connecting to the storage account.", + "enum": [ + "keyBased", + "identityBased" + ], + "type": "string", + "x-ms-enum": { + "name": "AuthenticationType", + "modelAsString": true + } + }, + "identity": { + "description": "Managed identity properties of storage endpoint for import devices.", + "$ref": "#/definitions/ManagedIdentity" + }, + "includeConfigurations": { + "description": "The value indicating whether configurations should be imported.", + "type": "boolean" + }, + "configurationsBlobName": { + "description": "The blob name to be used when importing configurations from the provided input blob container.", + "type": "string" + } + }, + "required": [ + "inputBlobContainerUri", + "outputBlobContainerUri" + ] + }, + "FailoverInput": { + "description": "Use to provide failover region when requesting manual Failover for a hub.", + "type": "object", + "properties": { + "failoverRegion": { + "description": "Region the hub will be failed over to", + "type": "string" + } + }, + "required": [ + "failoverRegion" + ] + }, + "IotHubLocationDescription": { + "description": "Public representation of one of the locations where a resource is provisioned.", + "type": "object", + "properties": { + "location": { + "description": "The name of the Azure region", + "type": "string" + }, + "role": { + "description": "The role of the region, can be either primary or secondary. The primary region is where the IoT hub is currently provisioned. The secondary region is the Azure disaster recovery (DR) paired region and also the region where the IoT hub can failover to.", + "enum": [ + "primary", + "secondary" + ], + "type": "string", + "x-ms-enum": { + "name": "IotHubReplicaRoleType", + "modelAsString": true + } + } + } + }, + "ArmIdentity": { + "type": "object", + "properties": { + "principalId": { + "description": "Principal Id", + "type": "string", + "readOnly": true + }, + "tenantId": { + "description": "Tenant Id", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The type of identity used for the resource. The type 'SystemAssigned,UserAssigned' includes both an implicitly created identity and a set of user assigned identities. The type 'None' will remove any identities from the service.", + "type": "string", + "enum": [ + "SystemAssigned", + "UserAssigned", + "SystemAssigned, UserAssigned", + "None" + ], + "x-ms-enum": { + "name": "ResourceIdentityType", + "modelAsString": false + } + }, + "userAssignedIdentities": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/ArmUserIdentity" + } + } + } + }, + "ArmUserIdentity": { + "type": "object", + "properties": { + "principalId": { + "type": "string", + "readOnly": true + }, + "clientId": { + "type": "string", + "readOnly": true + } + } + }, + "EncryptionPropertiesDescription": { + "description": "The encryption properties for the IoT hub.", + "type": "object", + "properties": { + "keySource": { + "description": "The source of the key.", + "type": "string" + }, + "keyVaultProperties": { + "description": "The properties of the KeyVault key.", + "type": "array", + "items": { + "$ref": "#/definitions/KeyVaultKeyProperties" + } + } + } + }, + "KeyVaultKeyProperties": { + "description": "The properties of the KeyVault key.", + "type": "object", + "properties": { + "keyIdentifier": { + "type": "string", + "description": "The identifier of the key." + }, + "identity": { + "description": "Managed identity properties of KeyVault Key.", + "$ref": "#/definitions/ManagedIdentity" + } + } + }, + "ManagedIdentity": { + "description": "The properties of the Managed identity.", + "type": "object", + "properties": { + "userAssignedIdentity": { + "type": "string", + "description": "The user assigned identity." + } + } + } + }, + "parameters": { + "subscriptionId": { + "name": "subscriptionId", + "in": "path", + "description": "The subscription identifier.", + "required": true, + "type": "string" + }, + "api-version": { + "name": "api-version", + "in": "query", + "description": "The version of the API.", + "required": true, + "type": "string" + }, + "resourceGroupName": { + "name": "resourceGroupName", + "description": "The name of the resource group that contains the IoT hub.", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "resourceName": { + "name": "resourceName", + "in": "path", + "description": "The name of the IoT hub.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "certificateName": { + "name": "certificateName", + "in": "path", + "description": "The name of the certificate", + "required": true, + "type": "string", + "pattern": "^[A-Za-z0-9-._]{1,64}$", + "x-ms-parameter-location": "method" + }, + "groupId": { + "name": "groupId", + "in": "path", + "description": "The name of the private link resource", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "privateEndpointConnectionName": { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2016-02-03/iothub.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2016-02-03/iothub.json index 564af4ae1aa4..9aba218793e5 100644 --- a/specification/iothub/resource-manager/Microsoft.Devices/stable/2016-02-03/iothub.json +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2016-02-03/iothub.json @@ -66,7 +66,7 @@ "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.", + "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. If certain properties are missing in the JSON, updating IoT Hub may cause these values to fallback to default, which may lead to unexpected behavior.", "operationId": "IotHubResource_CreateOrUpdate", "x-ms-long-running-operation": true, "consumes": [ diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2017-01-19/iothub.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2017-01-19/iothub.json index 4124e38061e3..07723deaddde 100644 --- a/specification/iothub/resource-manager/Microsoft.Devices/stable/2017-01-19/iothub.json +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2017-01-19/iothub.json @@ -70,7 +70,7 @@ "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.", + "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. If certain properties are missing in the JSON, updating IoT Hub may cause these values to fallback to default, which may lead to unexpected behavior.", "operationId": "IotHubResource_CreateOrUpdate", "x-ms-long-running-operation": true, "parameters": [ diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2017-07-01/iothub.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2017-07-01/iothub.json index 91f9c4a2fafa..896a37f0565a 100644 --- a/specification/iothub/resource-manager/Microsoft.Devices/stable/2017-07-01/iothub.json +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2017-07-01/iothub.json @@ -111,7 +111,7 @@ "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.", + "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. If certain properties are missing in the JSON, updating IoT Hub may cause these values to fallback to default, which may lead to unexpected behavior.", "operationId": "IotHubResource_CreateOrUpdate", "x-ms-long-running-operation": true, "parameters": [ 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 index 8afc7396d4f3..31e576c7cbe5 100644 --- 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 @@ -121,7 +121,7 @@ "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.", + "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. If certain properties are missing in the JSON, updating IoT Hub may cause these values to fallback to default, which may lead to unexpected behavior.", "operationId": "IotHubResource_CreateOrUpdate", "x-ms-examples": { "IotHubResource_CreateOrUpdate": { diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-04-01/iothub.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-04-01/iothub.json index e1dfe539ef66..0c1846a23a03 100644 --- a/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-04-01/iothub.json +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-04-01/iothub.json @@ -121,7 +121,7 @@ "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.", + "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. If certain properties are missing in the JSON, updating IoT Hub may cause these values to fallback to default, which may lead to unexpected behavior.", "operationId": "IotHubResource_CreateOrUpdate", "x-ms-examples": { "IotHubResource_CreateOrUpdate": { diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/iothub.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/iothub.json index 191d7c9f3bca..7e9a3d81c107 100644 --- a/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/iothub.json +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/iothub.json @@ -121,7 +121,7 @@ "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.", + "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. If certain properties are missing in the JSON, updating IoT Hub may cause these values to fallback to default, which may lead to unexpected behavior.", "operationId": "IotHubResource_CreateOrUpdate", "x-ms-examples": { "IotHubResource_CreateOrUpdate": { diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-11-04/iothub.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-11-04/iothub.json index 9010c5d2ae30..9636e37c7803 100644 --- a/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-11-04/iothub.json +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-11-04/iothub.json @@ -121,7 +121,7 @@ "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.", + "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. If certain properties are missing in the JSON, updating IoT Hub may cause these values to fallback to default, which may lead to unexpected behavior.", "operationId": "IotHubResource_CreateOrUpdate", "x-ms-examples": { "IotHubResource_CreateOrUpdate": { diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/iothub.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/iothub.json index 8452cf2c92db..6de4a3184426 100644 --- a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/iothub.json +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/iothub.json @@ -121,7 +121,7 @@ "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.", + "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. If certain properties are missing in the JSON, updating IoT Hub may cause these values to fallback to default, which may lead to unexpected behavior.", "operationId": "IotHubResource_CreateOrUpdate", "x-ms-examples": { "IotHubResource_CreateOrUpdate": { @@ -2578,8 +2578,7 @@ "name": { "readOnly": true, "type": "string", - "description": "The resource name.", - "pattern": "^(?![0-9]+$)(?!-)[a-zA-Z0-9-]{2,49}[a-zA-Z0-9]$" + "description": "The resource name." }, "type": { "readOnly": true, @@ -2638,8 +2637,7 @@ "name": { "readOnly": true, "type": "string", - "description": "The resource name.", - "pattern": "^(?![0-9]+$)(?!-)[a-zA-Z0-9-]{2,49}[a-zA-Z0-9]$" + "description": "The resource name." }, "type": { "readOnly": true, diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-04-01/iothub.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-04-01/iothub.json index 044be4a4acf5..6effb72b9779 100644 --- a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-04-01/iothub.json +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-04-01/iothub.json @@ -121,7 +121,7 @@ "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.", + "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. If certain properties are missing in the JSON, updating IoT Hub may cause these values to fallback to default, which may lead to unexpected behavior.", "operationId": "IotHubResource_CreateOrUpdate", "x-ms-examples": { "IotHubResource_CreateOrUpdate": { diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-06-15/iothub.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-06-15/iothub.json index 634aea7c600b..08b45c74b80d 100644 --- a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-06-15/iothub.json +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-06-15/iothub.json @@ -121,7 +121,7 @@ "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.", + "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. If certain properties are missing in the JSON, updating IoT Hub may cause these values to fallback to default, which may lead to unexpected behavior.", "operationId": "IotHubResource_CreateOrUpdate", "x-ms-examples": { "IotHubResource_CreateOrUpdate": { diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-08-01/iothub.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-08-01/iothub.json index 1a69c060f0f6..c8808cb8b53c 100644 --- a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-08-01/iothub.json +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-08-01/iothub.json @@ -121,7 +121,7 @@ "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.", + "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. If certain properties are missing in the JSON, updating IoT Hub may cause these values to fallback to default, which may lead to unexpected behavior.", "operationId": "IotHubResource_CreateOrUpdate", "x-ms-examples": { "IotHubResource_CreateOrUpdate": { diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-08-31/iothub.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-08-31/iothub.json index 2ce50e50ec49..b050d744fff2 100644 --- a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-08-31/iothub.json +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-08-31/iothub.json @@ -121,7 +121,7 @@ "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.", + "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. If certain properties are missing in the JSON, updating IoT Hub may cause these values to fallback to default, which may lead to unexpected behavior.", "operationId": "IotHubResource_CreateOrUpdate", "x-ms-examples": { "IotHubResource_CreateOrUpdate": { diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/IotHub_ManualFailover.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/IotHub_ManualFailover.json new file mode 100644 index 000000000000..8b8f4249c5a2 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/IotHub_ManualFailover.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "iotHubName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-31", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "failoverInput": { + "failoverRegion": "testHub" + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/checkNameAvailability.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/checkNameAvailability.json new file mode 100644 index 000000000000..752d77e8c4b2 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/checkNameAvailability.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-31", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "operationInputs": { + "name": "test-request" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": true, + "reason": "Invalid", + "message": "" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_certificatescreateorupdate.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_certificatescreateorupdate.json new file mode 100644 index 000000000000..a5f55a6faa67 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_certificatescreateorupdate.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "resourceName": "iothub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-31", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "certificateName": "cert", + "certificateDescription": { + "properties": { + "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", + "certificate": "############################################" + }, + "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", + "certificate": "############################################" + }, + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/ProvisioningServives/myFirstProvisioningService/certificates/cert", + "name": "cert", + "type": "Microsoft.Devices/IotHubs/Certificates", + "etag": "AAAAAAExpNs=" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_certificatesdelete.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_certificatesdelete.json new file mode 100644 index 000000000000..d9c339a45cc9 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_certificatesdelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "resourceName": "myhub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-31", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "certificateName": "cert", + "If-Match": "AAAAAAAADGk=" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_certverify.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_certverify.json new file mode 100644 index 000000000000..28b6cb17aa22 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_certverify.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "resourceName": "myFirstProvisioningService", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-31", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "certificateName": "cert", + "If-Match": "AAAAAAAADGk=", + "certificateVerificationBody": { + "certificate": "#####################################" + } + }, + "responses": { + "200": { + "body": { + "properties": { + "subject": "CN=andbucdevice1", + "expiry": "Sat, 31 Dec 2039 23:59:59 GMT", + "thumbprint": "97388663832D0393C9246CAB4FBA2C8677185A25", + "isVerified": true, + "created": "Thu, 12 Oct 2017 19:23:50 GMT", + "updated": "Thu, 12 Oct 2017 19:26:56 GMT" + }, + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/ProvisioningServices/myFirstProvisioningService/certificates/cert", + "name": "cert", + "type": "Microsoft.Devices/IotHubs/Certificates", + "etag": "AAAAAAExpTQ=" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_createOrUpdate.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_createOrUpdate.json new file mode 100644 index 000000000000..f6c6407f0278 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_createOrUpdate.json @@ -0,0 +1,296 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-31", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "iotHubDescription": { + "location": "centraluseuap", + "tags": {}, + "etag": "AAAAAAFD6M4=", + "properties": { + "ipFilterRules": [], + "networkRuleSets": { + "defaultAction": "Deny", + "applyToBuiltInEventHubEndpoint": true, + "ipRules": [ + { + "filterName": "rule1", + "action": "Allow", + "ipMask": "131.117.159.53" + }, + { + "filterName": "rule2", + "action": "Allow", + "ipMask": "157.55.59.128/25" + } + ] + }, + "eventHubEndpoints": { + "events": { + "retentionTimeInDays": 1, + "partitionCount": 2 + } + }, + "routing": { + "endpoints": { + "serviceBusQueues": [], + "serviceBusTopics": [], + "eventHubs": [], + "storageContainers": [] + }, + "routes": [], + "fallbackRoute": { + "name": "$fallback", + "source": "DeviceMessages", + "condition": "true", + "endpointNames": [ + "events" + ], + "isEnabled": true + } + }, + "storageEndpoints": { + "$default": { + "sasTtlAsIso8601": "PT1H", + "connectionString": "", + "containerName": "" + } + }, + "messagingEndpoints": { + "fileNotifications": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "enableFileUploadNotifications": false, + "cloudToDevice": { + "maxDeliveryCount": 10, + "defaultTtlAsIso8601": "PT1H", + "feedback": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "features": "None", + "minTlsVersion": "1.2" + }, + "sku": { + "name": "S1", + "capacity": 1 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ae24ff83-d2ca-4fc8-9717-05dae4bba489/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub", + "name": "testHub", + "type": "Microsoft.Devices/IotHubs", + "location": "centraluseuap", + "tags": {}, + "etag": "AAAAAAFD6M4=", + "properties": { + "state": "Active", + "provisioningState": "Succeeded", + "ipFilterRules": [ + { + "filterName": "rule1", + "action": "Accept", + "ipMask": "131.117.159.53" + }, + { + "filterName": "rule2", + "action": "Accept", + "ipMask": "157.55.59.128/25" + } + ], + "networkRuleSets": { + "defaultAction": "Deny", + "applyToBuiltInEventHubEndpoint": true, + "ipRules": [ + { + "filterName": "rule1", + "action": "Allow", + "ipMask": "131.117.159.53" + }, + { + "filterName": "rule2", + "action": "Allow", + "ipMask": "157.55.59.128/25" + } + ] + }, + "hostName": "iot-dps-cit-hub-1.azure-devices.net", + "eventHubEndpoints": { + "events": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1", + "endpoint": "sb://iothub-ns-iot-dps-ci-245306-76aca8e13b.servicebus.windows.net/" + } + }, + "routing": { + "endpoints": { + "serviceBusQueues": [], + "serviceBusTopics": [], + "eventHubs": [], + "storageContainers": [] + }, + "routes": [], + "fallbackRoute": { + "name": "$fallback", + "source": "DeviceMessages", + "condition": "true", + "endpointNames": [ + "events" + ], + "isEnabled": true + } + }, + "storageEndpoints": { + "$default": { + "sasTtlAsIso8601": "PT1H", + "connectionString": "", + "containerName": "" + } + }, + "messagingEndpoints": { + "fileNotifications": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "enableFileUploadNotifications": false, + "cloudToDevice": { + "maxDeliveryCount": 10, + "defaultTtlAsIso8601": "PT1H", + "feedback": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "features": "None", + "minTlsVersion": "1.2" + }, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + }, + "201": { + "body": { + "id": "/subscriptions/ae24ff83-d2ca-4fc8-9717-05dae4bba489/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub", + "name": "testHub", + "type": "Microsoft.Devices/IotHubs", + "location": "centraluseuap", + "tags": {}, + "etag": "AAAAAAFD6M4=", + "properties": { + "state": "Active", + "provisioningState": "Succeeded", + "ipFilterRules": [ + { + "filterName": "rule1", + "action": "Accept", + "ipMask": "131.117.159.53" + }, + { + "filterName": "rule2", + "action": "Accept", + "ipMask": "157.55.59.128/25" + } + ], + "networkRuleSets": { + "defaultAction": "Deny", + "applyToBuiltInEventHubEndpoint": true, + "ipRules": [ + { + "filterName": "rule1", + "action": "Allow", + "ipMask": "131.117.159.53" + }, + { + "filterName": "rule2", + "action": "Allow", + "ipMask": "157.55.59.128/25" + } + ] + }, + "hostName": "iot-dps-cit-hub-1.azure-devices.net", + "eventHubEndpoints": { + "events": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1", + "endpoint": "sb://iothub-ns-iot-dps-ci-245306-76aca8e13b.servicebus.windows.net/" + } + }, + "routing": { + "endpoints": { + "serviceBusQueues": [], + "serviceBusTopics": [], + "eventHubs": [], + "storageContainers": [] + }, + "routes": [], + "fallbackRoute": { + "name": "$fallback", + "source": "DeviceMessages", + "condition": "true", + "endpointNames": [ + "events" + ], + "isEnabled": true + } + }, + "storageEndpoints": { + "$default": { + "sasTtlAsIso8601": "PT1H", + "connectionString": "", + "containerName": "" + } + }, + "messagingEndpoints": { + "fileNotifications": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "enableFileUploadNotifications": false, + "cloudToDevice": { + "maxDeliveryCount": 10, + "defaultTtlAsIso8601": "PT1H", + "feedback": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "features": "None", + "minTlsVersion": "1.2" + }, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_createconsumergroup.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_createconsumergroup.json new file mode 100644 index 000000000000..8e61acba2a0d --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_createconsumergroup.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-31", + "eventHubEndpointName": "events", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "name": "test", + "consumerGroupBody": { + "properties": { + "name": "test" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "created": "Thu, 15 Jun 2017 19:20:58 GMT" + }, + "id": "/subscriptions/cmd-sub-1/resourceGroups/cmd-rg-1/providers/Microsoft.Devices/IotHubs/test-hub-2/eventHubEndpoints/events/ConsumerGroups/%24Default", + "name": "test", + "type": "Microsoft.Devices/IotHubs/EventHubEndpoints/ConsumerGroups", + "etag": "AAAAAAFD6M4=" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_delete.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_delete.json new file mode 100644 index 000000000000..1729f0bbf825 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_delete.json @@ -0,0 +1,218 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-31", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub", + "name": "testHub", + "type": "Microsoft.Devices/IotHubs", + "location": "centraluseuap", + "tags": {}, + "etag": "AAAAAAFD6M4=", + "properties": { + "state": "Active", + "provisioningState": "Succeeded", + "ipFilterRules": [ + { + "filterName": "rule1", + "action": "Accept", + "ipMask": "131.117.159.53" + }, + { + "filterName": "rule2", + "action": "Accept", + "ipMask": "157.55.59.128/25" + } + ], + "networkRuleSets": { + "defaultAction": "Deny", + "applyToBuiltInEventHubEndpoint": true, + "ipRules": [ + { + "filterName": "rule1", + "action": "Allow", + "ipMask": "131.117.159.53" + }, + { + "filterName": "rule2", + "action": "Allow", + "ipMask": "157.55.59.128/25" + } + ] + }, + "hostName": "iot-dps-cit-hub-1.azure-devices.net", + "eventHubEndpoints": { + "events": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1", + "endpoint": "sb://iothub-ns-iot-dps-ci-245306-76aca8e13b.servicebus.windows.net/" + } + }, + "routing": { + "endpoints": { + "serviceBusQueues": [], + "serviceBusTopics": [], + "eventHubs": [], + "storageContainers": [] + }, + "routes": [], + "fallbackRoute": { + "source": "DeviceMessages", + "condition": "true", + "endpointNames": [ + "events" + ], + "isEnabled": true + } + }, + "storageEndpoints": { + "$default": { + "sasTtlAsIso8601": "PT1H", + "connectionString": "", + "containerName": "" + } + }, + "messagingEndpoints": { + "fileNotifications": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "enableFileUploadNotifications": false, + "cloudToDevice": { + "maxDeliveryCount": 10, + "defaultTtlAsIso8601": "PT1H", + "feedback": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "features": "None" + }, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + }, + "204": {}, + "202": { + "body": { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub", + "name": "testHub", + "type": "Microsoft.Devices/IotHubs", + "location": "centraluseuap", + "tags": {}, + "etag": "AAAAAAFD6M4=", + "properties": { + "state": "Active", + "provisioningState": "Succeeded", + "ipFilterRules": [ + { + "filterName": "rule1", + "action": "Accept", + "ipMask": "131.117.159.53" + }, + { + "filterName": "rule2", + "action": "Accept", + "ipMask": "157.55.59.128/25" + } + ], + "networkRuleSets": { + "defaultAction": "Deny", + "applyToBuiltInEventHubEndpoint": true, + "ipRules": [ + { + "filterName": "rule1", + "action": "Allow", + "ipMask": "131.117.159.53" + }, + { + "filterName": "rule2", + "action": "Allow", + "ipMask": "157.55.59.128/25" + } + ] + }, + "hostName": "iot-dps-cit-hub-1.azure-devices.net", + "eventHubEndpoints": { + "events": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1", + "endpoint": "sb://iothub-ns-iot-dps-ci-245306-76aca8e13b.servicebus.windows.net/" + } + }, + "routing": { + "endpoints": { + "serviceBusQueues": [], + "serviceBusTopics": [], + "eventHubs": [], + "storageContainers": [] + }, + "routes": [], + "fallbackRoute": { + "source": "DeviceMessages", + "condition": "true", + "endpointNames": [ + "events" + ], + "isEnabled": true + } + }, + "storageEndpoints": { + "$default": { + "sasTtlAsIso8601": "PT1H", + "connectionString": "", + "containerName": "" + } + }, + "messagingEndpoints": { + "fileNotifications": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "enableFileUploadNotifications": false, + "cloudToDevice": { + "maxDeliveryCount": 10, + "defaultTtlAsIso8601": "PT1H", + "feedback": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "features": "None" + }, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + }, + "404": { + "body": {} + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_deleteconsumergroup.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_deleteconsumergroup.json new file mode 100644 index 000000000000..88c6d168a362 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_deleteconsumergroup.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-31", + "eventHubEndpointName": "events", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "name": "test" + }, + "responses": { + "200": {} + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_deleteprivateendpointconnection.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_deleteprivateendpointconnection.json new file mode 100644 index 000000000000..4072b73c4090 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_deleteprivateendpointconnection.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-31", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "privateEndpointConnectionName": "myPrivateEndpointConnection" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub/PrivateEndpointConnections/myPrivateEndpointConnection", + "name": "myPrivateEndpointConnection", + "type": "Microsoft.Devices/IotHubs/PrivateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/a9eba280-4734-4d49-878f-b5549d1d0453/resourceGroups/networkResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Disconnected", + "description": "Deleted", + "actionsRequired": "None" + } + } + } + }, + "202": { + "body": { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub/PrivateEndpointConnections/myPrivateEndpointConnection", + "name": "myPrivateEndpointConnection", + "type": "Microsoft.Devices/IotHubs/PrivateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/a9eba280-4734-4d49-878f-b5549d1d0453/resourceGroups/networkResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Disconnected", + "description": "Deleted", + "actionsRequired": "None" + } + } + } + }, + "204": {} + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_exportdevices.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_exportdevices.json new file mode 100644 index 000000000000..3c5ed78c1708 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_exportdevices.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-31", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "exportDevicesParameters": { + "exportBlobContainerUri": "testBlob", + "excludeKeys": true + } + }, + "responses": { + "200": { + "body": { + "jobId": "test", + "startTimeUtc": "Thu, 15 Jun 2017 19:20:58 GMT", + "endTimeUtc": "Thu, 15 Jun 2017 19:20:58 GMT", + "type": "unknown", + "status": "unknown" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_generateverificationcode.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_generateverificationcode.json new file mode 100644 index 000000000000..6b7ceae41f69 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_generateverificationcode.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-31", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "certificateName": "cert", + "If-Match": "AAAAAAAADGk=" + }, + "responses": { + "200": { + "body": { + "name": "cert", + "properties": { + "verificationCode": "##################################", + "subject": "CN=andbucdevice1", + "expiry": "Sat, 31 Dec 2039 23:59:59 GMT", + "thumbprint": "##############################", + "isVerified": false, + "created": "Thu, 12 Oct 2017 19:23:50 GMT", + "updated": "Thu, 12 Oct 2017 19:26:56 GMT" + } + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_get.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_get.json new file mode 100644 index 000000000000..2609363e9814 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_get.json @@ -0,0 +1,123 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-31", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub", + "name": "testHub", + "type": "Microsoft.Devices/IotHubs", + "location": "centraluseuap", + "tags": {}, + "etag": "AAAAAAFD6M4=", + "properties": { + "state": "Active", + "provisioningState": "Succeeded", + "ipFilterRules": [ + { + "filterName": "rule1", + "action": "Accept", + "ipMask": "131.117.159.53" + }, + { + "filterName": "rule2", + "action": "Accept", + "ipMask": "157.55.59.128/25" + } + ], + "networkRuleSets": { + "defaultAction": "Deny", + "applyToBuiltInEventHubEndpoint": true, + "ipRules": [ + { + "filterName": "rule1", + "action": "Allow", + "ipMask": "131.117.159.53" + }, + { + "filterName": "rule2", + "action": "Allow", + "ipMask": "157.55.59.128/25" + } + ] + }, + "hostName": "iot-dps-cit-hub-1.azure-devices.net", + "eventHubEndpoints": { + "events": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1", + "endpoint": "sb://iothub-ns-iot-dps-ci-245306-76aca8e13b.servicebus.windows.net/" + } + }, + "routing": { + "endpoints": { + "serviceBusQueues": [], + "serviceBusTopics": [], + "eventHubs": [], + "storageContainers": [] + }, + "routes": [], + "fallbackRoute": { + "source": "DeviceMessages", + "condition": "true", + "endpointNames": [ + "events" + ], + "isEnabled": true + } + }, + "storageEndpoints": { + "$default": { + "sasTtlAsIso8601": "PT1H", + "connectionString": "", + "containerName": "" + } + }, + "messagingEndpoints": { + "fileNotifications": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "enableFileUploadNotifications": false, + "cloudToDevice": { + "maxDeliveryCount": 10, + "defaultTtlAsIso8601": "PT1H", + "feedback": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "features": "None", + "locations": [ + { + "location": "West US", + "role": "primary" + }, + { + "location": "East US", + "role": "secondary" + } + ], + "minTlsVersion": "1.2" + }, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_getcertificate.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_getcertificate.json new file mode 100644 index 000000000000..36ff22ff8cfe --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_getcertificate.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "resourceName": "testhub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-31", + "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", + "certificate": "############################################" + }, + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/andbuc-hub/certificates/cert", + "name": "cert", + "type": "Microsoft.Devices/IotHubs/Certificates", + "etag": "AAAAAAExpNs=" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_getconsumergroup.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_getconsumergroup.json new file mode 100644 index 000000000000..3026b928e7cc --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_getconsumergroup.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-31", + "eventHubEndpointName": "events", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "name": "test" + }, + "responses": { + "200": { + "body": { + "properties": { + "created": "Thu, 15 Jun 2017 19:20:58 GMT" + }, + "id": "/subscriptions/cmd-sub-1/resourceGroups/cmd-rg-1/providers/Microsoft.Devices/IotHubs/test-hub-2/eventHubEndpoints/events/ConsumerGroups/%24Default", + "name": "test", + "type": "Microsoft.Devices/IotHubs/EventHubEndpoints/ConsumerGroups", + "etag": "AAAAAAFD6M4=" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_getjob.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_getjob.json new file mode 100644 index 000000000000..3d10aaccefcc --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_getjob.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-31", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "jobId": "test" + }, + "responses": { + "200": { + "body": { + "jobId": "test", + "startTimeUtc": "Thu, 15 Jun 2017 19:20:58 GMT", + "endTimeUtc": "Thu, 15 Jun 2017 19:20:58 GMT", + "type": "unknown", + "status": "unknown" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_getkey.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_getkey.json new file mode 100644 index 000000000000..ca5bc2f459dd --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_getkey.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-31", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "keyName": "iothubowner" + }, + "responses": { + "200": { + "body": { + "keyName": "iothubowner", + "primaryKey": "", + "secondaryKey": "", + "rights": "RegistryWrite, ServiceConnect, DeviceConnect" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_getprivateendpointconnection.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_getprivateendpointconnection.json new file mode 100644 index 000000000000..3443113d972e --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_getprivateendpointconnection.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-31", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "privateEndpointConnectionName": "myPrivateEndpointConnection" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub/PrivateEndpointConnections/myPrivateEndpointConnection", + "name": "myPrivateEndpointConnection", + "type": "Microsoft.Devices/IotHubs/PrivateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/a9eba280-4734-4d49-878f-b5549d1d0453/resourceGroups/networkResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "Please approve my request!", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_getprivatelinkresources.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_getprivatelinkresources.json new file mode 100644 index 000000000000..b20638ab2f64 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_getprivatelinkresources.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-31", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "groupId": "iotHub" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub/PrivateLinkResources/iotHub", + "name": "iotHub", + "type": "Microsoft.Devices/IotHubs/PrivateLinkResources", + "properties": { + "groupId": "iotHub", + "requiredMembers": [ + "iotHub" + ], + "requiredZoneNames": [ + "privatelink.azure-devices.net" + ] + } + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_getskus.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_getskus.json new file mode 100644 index 000000000000..9ffb87684e06 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_getskus.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-31", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "Microsoft.Devices/IotHubs", + "sku": { + "name": "S1", + "tier": "Standard" + }, + "capacity": { + "default": 1, + "scaleType": "Manual" + } + }, + { + "resourceType": "Microsoft.Devices/IotHubs", + "sku": { + "name": "S2", + "tier": "Standard" + }, + "capacity": { + "minimum": 1, + "maximum": 200, + "default": 1, + "scaleType": "Manual" + } + }, + { + "resourceType": "Microsoft.Devices/IotHubs", + "sku": { + "name": "S3", + "tier": "Standard" + }, + "capacity": { + "minimum": 1, + "maximum": 10, + "default": 1, + "scaleType": "Manual" + } + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_importdevices.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_importdevices.json new file mode 100644 index 000000000000..9ffa56e1ebbe --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_importdevices.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-31", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "importDevicesParameters": { + "inputBlobContainerUri": "testBlob", + "outputBlobContainerUri": "testBlob" + } + }, + "responses": { + "200": { + "body": { + "jobId": "test", + "startTimeUtc": "Thu, 15 Jun 2017 19:20:58 GMT", + "endTimeUtc": "Thu, 15 Jun 2017 19:20:58 GMT", + "type": "unknown", + "status": "unknown" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_listbyrg.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_listbyrg.json new file mode 100644 index 000000000000..026c2c17bc5e --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_listbyrg.json @@ -0,0 +1,117 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-31", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub", + "name": "testHub", + "type": "Microsoft.Devices/IotHubs", + "location": "centraluseuap", + "tags": {}, + "etag": "AAAAAAFD6M4=", + "properties": { + "state": "Active", + "provisioningState": "Succeeded", + "ipFilterRules": [ + { + "filterName": "rule1", + "action": "Accept", + "ipMask": "131.117.159.53" + }, + { + "filterName": "rule2", + "action": "Accept", + "ipMask": "157.55.59.128/25" + } + ], + "networkRuleSets": { + "defaultAction": "Deny", + "applyToBuiltInEventHubEndpoint": true, + "ipRules": [ + { + "filterName": "rule1", + "action": "Allow", + "ipMask": "131.117.159.53" + }, + { + "filterName": "rule2", + "action": "Allow", + "ipMask": "157.55.59.128/25" + } + ] + }, + "hostName": "iot-dps-cit-hub-1.azure-devices.net", + "eventHubEndpoints": { + "events": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1", + "endpoint": "sb://iothub-ns-iot-dps-ci-245306-76aca8e13b.servicebus.windows.net/" + } + }, + "routing": { + "endpoints": { + "serviceBusQueues": [], + "serviceBusTopics": [], + "eventHubs": [], + "storageContainers": [] + }, + "routes": [], + "fallbackRoute": { + "name": "$fallback", + "source": "DeviceMessages", + "condition": "true", + "endpointNames": [ + "events" + ], + "isEnabled": true + } + }, + "storageEndpoints": { + "$default": { + "sasTtlAsIso8601": "PT1H", + "connectionString": "", + "containerName": "" + } + }, + "messagingEndpoints": { + "fileNotifications": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "enableFileUploadNotifications": false, + "cloudToDevice": { + "maxDeliveryCount": 10, + "defaultTtlAsIso8601": "PT1H", + "feedback": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "features": "None" + }, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_listbysubscription.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_listbysubscription.json new file mode 100644 index 000000000000..8d88cbb6e29f --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_listbysubscription.json @@ -0,0 +1,116 @@ +{ + "parameters": { + "resourceName": "testHub", + "api-version": "2021-03-31", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub", + "name": "testHub", + "type": "Microsoft.Devices/IotHubs", + "location": "centraluseuap", + "tags": {}, + "etag": "AAAAAAFD6M4=", + "properties": { + "state": "Active", + "provisioningState": "Succeeded", + "ipFilterRules": [ + { + "filterName": "rule1", + "action": "Accept", + "ipMask": "131.117.159.53" + }, + { + "filterName": "rule2", + "action": "Accept", + "ipMask": "157.55.59.128/25" + } + ], + "networkRuleSets": { + "defaultAction": "Deny", + "applyToBuiltInEventHubEndpoint": true, + "ipRules": [ + { + "filterName": "rule1", + "action": "Allow", + "ipMask": "131.117.159.53" + }, + { + "filterName": "rule2", + "action": "Allow", + "ipMask": "157.55.59.128/25" + } + ] + }, + "hostName": "iot-dps-cit-hub-1.azure-devices.net", + "eventHubEndpoints": { + "events": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1", + "endpoint": "sb://iothub-ns-iot-dps-ci-245306-76aca8e13b.servicebus.windows.net/" + } + }, + "routing": { + "endpoints": { + "serviceBusQueues": [], + "serviceBusTopics": [], + "eventHubs": [], + "storageContainers": [] + }, + "routes": [], + "fallbackRoute": { + "name": "$fallback", + "source": "DeviceMessages", + "condition": "true", + "endpointNames": [ + "events" + ], + "isEnabled": true + } + }, + "storageEndpoints": { + "$default": { + "sasTtlAsIso8601": "PT1H", + "connectionString": "", + "containerName": "" + } + }, + "messagingEndpoints": { + "fileNotifications": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "enableFileUploadNotifications": false, + "cloudToDevice": { + "maxDeliveryCount": 10, + "defaultTtlAsIso8601": "PT1H", + "feedback": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "features": "None" + }, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_listcertificates.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_listcertificates.json new file mode 100644 index 000000000000..39c2acd07842 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_listcertificates.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "resourceName": "testhub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-31", + "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", + "certificate": "############################################" + }, + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/andbuc-hub/certificates/cert", + "name": "cert", + "type": "Microsoft.Devices/IotHubs/Certificates", + "etag": "AAAAAAExpNs=" + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_listehgroups.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_listehgroups.json new file mode 100644 index 000000000000..d484c6804eae --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_listehgroups.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-31", + "eventHubEndpointName": "events", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "created": "Thu, 15 Jun 2017 19:20:58 GMT" + }, + "id": "/subscriptions/cmd-sub-1/resourceGroups/cmd-rg-1/providers/Microsoft.Devices/IotHubs/test-hub-2/eventHubEndpoints/events/ConsumerGroups/%24Default", + "name": "$Default", + "type": "Microsoft.Devices/IotHubs/EventHubEndpoints/ConsumerGroups", + "etag": "AAAAAAFD6M4=" + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_listjobs.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_listjobs.json new file mode 100644 index 000000000000..e6a3070cd034 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_listjobs.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-31", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "jobId": "test", + "startTimeUtc": "Thu, 15 Jun 2017 19:20:58 GMT", + "endTimeUtc": "Thu, 15 Jun 2017 19:20:58 GMT", + "type": "unknown", + "status": "unknown" + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_listkeys.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_listkeys.json new file mode 100644 index 000000000000..3f1e983d22dd --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_listkeys.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-31", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "keyName": "iothubowner", + "primaryKey": "", + "secondaryKey": "", + "rights": "RegistryWrite, ServiceConnect, DeviceConnect" + }, + { + "keyName": "service", + "primaryKey": "", + "secondaryKey": "", + "rights": "ServiceConnect" + }, + { + "keyName": "device", + "primaryKey": "", + "secondaryKey": "", + "rights": "DeviceConnect" + }, + { + "keyName": "registryRead", + "primaryKey": "", + "secondaryKey": "", + "rights": "RegistryRead" + }, + { + "keyName": "registryReadWrite", + "primaryKey": "", + "secondaryKey": "", + "rights": "RegistryWrite" + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_listprivateendpointconnections.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_listprivateendpointconnections.json new file mode 100644 index 000000000000..8fe9dfa08e14 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_listprivateendpointconnections.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-31", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": [ + { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub/PrivateEndpointConnections/myPrivateEndpointConnection", + "name": "myPrivateEndpointConnection", + "type": "Microsoft.Devices/IotHubs/PrivateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/a9eba280-4734-4d49-878f-b5549d1d0453/resourceGroups/networkResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "Please approve my request!", + "actionsRequired": "None" + } + } + } + ] + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_listprivatelinkresources.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_listprivatelinkresources.json new file mode 100644 index 000000000000..769cbc127a7f --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_listprivatelinkresources.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-31", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub/PrivateLinkResources/iotHub", + "name": "iotHub", + "type": "Microsoft.Devices/IotHubs/PrivateLinkResources", + "properties": { + "groupId": "iotHub", + "requiredMembers": [ + "iotHub" + ], + "requiredZoneNames": [ + "privatelink.azure-devices.net" + ] + } + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_operations.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_operations.json new file mode 100644 index 000000000000..df5600c2dd2b --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_operations.json @@ -0,0 +1,328 @@ +{ + "parameters": { + "api-version": "2021-03-31" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Devices/register/action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Register Resource Provider", + "description": "Register the subscription for the IotHub resource provider and enables the creation of IotHub resources" + } + }, + { + "name": "Microsoft.Devices/IotHubs/diagnosticSettings/read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get Diagnostic Setting", + "description": "Gets the diagnostic setting for the resource" + } + }, + { + "name": "Microsoft.Devices/IotHubs/diagnosticSettings/write", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Set Diagnostic Setting", + "description": "Creates or updates the diagnostic setting for the resource" + } + }, + { + "name": "Microsoft.Devices/IotHubs/metricDefinitions/read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Read IotHub service metric definitions", + "description": "Gets the available metrics for the IotHub service" + } + }, + { + "name": "Microsoft.Devices/IotHubs/logDefinitions/read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Read IotHub service log definitions", + "description": "Gets the available log definitions for the IotHub Service" + } + }, + { + "name": "Microsoft.Devices/operations/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get All ResourceProvider Operations", + "description": "Get All ResourceProvider Operations" + } + }, + { + "name": "Microsoft.Devices/checkNameAvailability/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Check If IotHub name is available", + "description": "Check If IotHub name is available" + } + }, + { + "name": "Microsoft.Devices/usages/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get Subscription Usages", + "description": "Get subscription usage details for this provider." + } + }, + { + "name": "Microsoft.Devices/iotHubs/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get IotHub(s)", + "description": "Gets the IotHub resource(s)" + } + }, + { + "name": "Microsoft.Devices/iotHubs/Write", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Create or update IotHub Resource", + "description": "Create or update IotHub Resource" + } + }, + { + "name": "Microsoft.Devices/iotHubs/Delete", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Delete IotHub Resource", + "description": "Delete IotHub Resource" + } + }, + { + "name": "Microsoft.Devices/iotHubs/iotHubStats/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get IotHub Statistics", + "description": "Get IotHub Statistics" + } + }, + { + "name": "Microsoft.Devices/iotHubs/skus/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get valid IotHub Skus", + "description": "Get valid IotHub Skus" + } + }, + { + "name": "Microsoft.Devices/iotHubs/listkeys/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get all IotHub Keys", + "description": "Get all IotHub Keys" + } + }, + { + "name": "Microsoft.Devices/iotHubs/iotHubKeys/listkeys/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get IotHub Key for the given name", + "description": "Get IotHub Key for the given name" + } + }, + { + "name": "Microsoft.Devices/iotHubs/eventHubEndpoints/consumerGroups/Write", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Create EventHub Consumer Group", + "description": "Create EventHub Consumer Group" + } + }, + { + "name": "Microsoft.Devices/iotHubs/eventHubEndpoints/consumerGroups/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get EventHub Consumer Group(s)", + "description": "Get EventHub Consumer Group(s)" + } + }, + { + "name": "Microsoft.Devices/iotHubs/eventHubEndpoints/consumerGroups/Delete", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Delete EventHub Consumer Group", + "description": "Delete EventHub Consumer Group" + } + }, + { + "name": "Microsoft.Devices/iotHubs/exportDevices/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Export Devices", + "description": "Export Devices" + } + }, + { + "name": "Microsoft.Devices/iotHubs/importDevices/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Import Devices", + "description": "Import Devices" + } + }, + { + "name": "Microsoft.Devices/iotHubs/jobs/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get the Job(s) on IotHub", + "description": "Get Job(s) details submitted on given IotHub" + } + }, + { + "name": "Microsoft.Devices/iotHubs/quotaMetrics/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get Quota Metrics", + "description": "Get Quota Metrics" + } + }, + { + "name": "Microsoft.Devices/iotHubs/routing/routes/$testall/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Routing Rule Test All", + "description": "Test a message against all existing Routes" + } + }, + { + "name": "Microsoft.Devices/iotHubs/routing/routes/$testnew/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Routing Rule Test Route", + "description": "Test a message against a provided test Route" + } + }, + { + "name": "Microsoft.Devices/iotHubs/routingEndpointsHealth/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get Endpoint Health", + "description": "Gets the health of all routing Endpoints for an IotHub" + } + }, + { + "name": "Microsoft.Devices/ProvisioningServices/diagnosticSettings/read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get Diagnostic Setting", + "description": "Gets the diagnostic setting for the resource" + } + }, + { + "name": "Microsoft.Devices/ProvisioningServices/diagnosticSettings/write", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Set Diagnostic Setting", + "description": "Creates or updates the diagnostic setting for the resource" + } + }, + { + "name": "Microsoft.Devices/ProvisioningServices/metricDefinitions/read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Read DPS service metric definitions", + "description": "Gets the available metrics for the DPS service" + } + }, + { + "name": "Microsoft.Devices/ProvisioningServices/logDefinitions/read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Read DPS service log definitions", + "description": "Gets the available log definitions for the DPS Service" + } + }, + { + "name": "Microsoft.Devices/checkProvisioningServiceNameAvailability/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "ProvisioningServives", + "operation": "Check If Provisioning Service name is available", + "description": "Check If Provisioning Service name is available" + } + }, + { + "name": "Microsoft.Devices/provisioningServices/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "ProvisioningServices", + "operation": "Get Provisioning Service resource", + "description": "Get Provisioning Service resource" + } + }, + { + "name": "Microsoft.Devices/provisioningServices/Write", + "display": { + "provider": "Microsoft Devices", + "resource": "ProvisioningServices", + "operation": "Create Provisioning Service resource", + "description": "Create Provisioning Service resource" + } + }, + { + "name": "Microsoft.Devices/provisioningServices/Delete", + "display": { + "provider": "Microsoft Devices", + "resource": "ProvisioningServices", + "operation": "Delete Provisioning Service resource", + "description": "Delete Provisioning Service resource" + } + }, + { + "name": "Microsoft.Devices/provisioningServices/skus/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "ProvisioningServices", + "operation": "Delete Provisioning Service resource", + "description": "Delete Provisioning Service resource" + } + }, + { + "name": "Microsoft.Devices/provisioningServices/listkeys/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "ProvisioningServices", + "operation": "get security related metadata", + "description": "get security related metadata" + } + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_patch.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_patch.json new file mode 100644 index 000000000000..f46e48be52b0 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_patch.json @@ -0,0 +1,122 @@ +{ + "parameters": { + "resourceName": "myHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-31", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "location": "East US", + "type": "Microsoft.Devices/IotHubs", + "IotHubTags": { + "tags": { + "foo": "bar" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ae24ff83-d2ca-4fc8-9717-05dae4bba489/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub", + "name": "testHub", + "type": "Microsoft.Devices/IotHubs", + "location": "centraluseuap", + "tags": { + "foo": "bar" + }, + "etag": "AAAAAAFD6M4=", + "properties": { + "state": "Active", + "provisioningState": "Succeeded", + "ipFilterRules": [ + { + "filterName": "rule1", + "action": "Accept", + "ipMask": "131.117.159.53" + }, + { + "filterName": "rule2", + "action": "Accept", + "ipMask": "157.55.59.128/25" + } + ], + "networkRuleSets": { + "defaultAction": "Deny", + "applyToBuiltInEventHubEndpoint": true, + "ipRules": [ + { + "filterName": "rule1", + "action": "Allow", + "ipMask": "131.117.159.53" + }, + { + "filterName": "rule2", + "action": "Allow", + "ipMask": "157.55.59.128/25" + } + ] + }, + "hostName": "iot-dps-cit-hub-1.azure-devices.net", + "eventHubEndpoints": { + "events": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1", + "endpoint": "sb://iothub-ns-iot-dps-ci-245306-76aca8e13b.servicebus.windows.net/" + } + }, + "routing": { + "endpoints": { + "serviceBusQueues": [], + "serviceBusTopics": [], + "eventHubs": [], + "storageContainers": [] + }, + "routes": [], + "fallbackRoute": { + "name": "$fallback", + "source": "DeviceMessages", + "condition": "true", + "endpointNames": [ + "events" + ], + "isEnabled": true + } + }, + "storageEndpoints": { + "$default": { + "sasTtlAsIso8601": "PT1H", + "connectionString": "", + "containerName": "" + } + }, + "messagingEndpoints": { + "fileNotifications": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "enableFileUploadNotifications": false, + "cloudToDevice": { + "maxDeliveryCount": 10, + "defaultTtlAsIso8601": "PT1H", + "feedback": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "features": "None" + }, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_quotametrics.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_quotametrics.json new file mode 100644 index 000000000000..d70a1c59b989 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_quotametrics.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-31", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "TotalMessages", + "currentValue": 0, + "maxValue": 400000 + }, + { + "name": "TotalDeviceCount", + "currentValue": 0, + "maxValue": 500000 + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_routingendpointhealth.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_routingendpointhealth.json new file mode 100644 index 000000000000..4c50c85c3c3c --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_routingendpointhealth.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "iotHubName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-31", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "endpointId": "id1", + "healthStatus": "healthy", + "lastSuccessfulSendAttemptTime": "2020-03-26T21:20:57Z", + "lastSendAttemptTime": "2020-03-26T21:24:57Z" + }, + { + "endpointId": "id2", + "healthStatus": "unknown" + }, + { + "endpointId": "id3", + "healthStatus": "unhealthy", + "lastKnownError": "NotFound", + "lastKnownErrorTime": "2020-03-26T21:24:57Z", + "lastSuccessfulSendAttemptTime": "2020-03-26T21:20:57Z", + "lastSendAttemptTime": "2020-03-26T21:24:57Z" + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_stats.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_stats.json new file mode 100644 index 000000000000..1a7bcb918e7e --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_stats.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-04-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "totalDeviceCount": 0, + "enabledDeviceCount": 0, + "disabledDeviceCount": 0 + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_testallroutes.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_testallroutes.json new file mode 100644 index 000000000000..c34064eb485f --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_testallroutes.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "iotHubName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-31", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "input": { + "routingSource": "DeviceMessages", + "message": { + "body": "Body of message", + "appProperties": { + "key1": "value1" + }, + "systemProperties": { + "key1": "value1" + } + } + } + }, + "responses": { + "200": { + "body": { + "routes": [ + { + "properties": { + "name": "Routeid", + "source": "DeviceMessages", + "endpointNames": [ + "id1" + ], + "isEnabled": true + } + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_testnewroute.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_testnewroute.json new file mode 100644 index 000000000000..7fc146f5aea1 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_testnewroute.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "iotHubName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-31", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "input": { + "message": { + "body": "Body of message", + "appProperties": { + "key1": "value1" + }, + "systemProperties": { + "key1": "value1" + } + }, + "route": { + "name": "Routeid", + "source": "DeviceMessages", + "endpointNames": [ + "id1" + ], + "isEnabled": true + } + } + }, + "responses": { + "200": { + "body": { + "result": "false", + "details": { + "compilationErrors": [ + { + "message": "string response", + "severity": "error", + "location": { + "start": { + "line": 12, + "column": 12 + }, + "end": { + "line": 12, + "column": 24 + } + } + } + ] + } + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_updateprivateendpointconnection.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_updateprivateendpointconnection.json new file mode 100644 index 000000000000..2af4e5c91266 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_updateprivateendpointconnection.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-03-31", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "privateEndpointConnectionName": "myPrivateEndpointConnection", + "privateEndpointConnection": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@contoso.com" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub/PrivateEndpointConnections/myPrivateEndpointConnection", + "name": "myPrivateEndpointConnection", + "type": "Microsoft.Devices/IotHubs/PrivateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/a9eba280-4734-4d49-878f-b5549d1d0453/resourceGroups/networkResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@contoso.com", + "actionsRequired": "None" + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub/PrivateEndpointConnections/myPrivateEndpointConnection", + "name": "myPrivateEndpointConnection", + "type": "Microsoft.Devices/IotHubs/PrivateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/a9eba280-4734-4d49-878f-b5549d1d0453/resourceGroups/networkResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@contoso.com", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_usages.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_usages.json new file mode 100644 index 000000000000..e9b3a432f91a --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/examples/iothub_usages.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2021-03-31", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscription/91d12660-3dec-467a-be2a-213b5544ddc0/providers/Microsoft.Devices/usages/freeHubCount", + "type": "/subscription/91d12660-3dec-467a-be2a-213b5544ddc0/providers/Microsoft.Devices/usages", + "unit": "count", + "currentValue": 1, + "limit": 1, + "name": { + "value": "FreeHubCount", + "localizedValue": "Free Hub Count" + } + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/iothub.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/iothub.json new file mode 100644 index 000000000000..5bb154b33103 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2021-03-31/iothub.json @@ -0,0 +1,4373 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-03-31", + "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. If certain properties are missing in the JSON, updating IoT Hub may cause these values to fallback to default, which may lead to unexpected behavior.", + "operationId": "IotHubResource_CreateOrUpdate", + "x-ms-examples": { + "IotHubResource_CreateOrUpdate": { + "$ref": "./examples/iothub_createOrUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "iotHubDescription", + "in": "body", + "description": "The IoT hub metadata and security metadata.", + "required": true, + "schema": { + "$ref": "#/definitions/IotHubDescription" + } + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "ETag of the IoT Hub. Do not specify for creating a brand new IoT Hub. Required to update an existing IoT Hub." + } + ], + "responses": { + "201": { + "description": "This is a long running operation. The operation returns a 201 if the validation is complete. The response includes an Azure-AsyncOperation header that contains a status URL. Clients are expected to poll the status URL for the status of the operation. If successful, the operation returns HTTP status code of 201 (OK).", + "schema": { + "$ref": "#/definitions/IotHubDescription" + } + }, + "200": { + "description": "This is returned as a response to the status polling request for the create or update operation. The body contains the resource representation that indicates a transitional provisioning state.", + "schema": { + "$ref": "#/definitions/IotHubDescription" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + }, + "patch": { + "tags": [ + "PATCH" + ], + "summary": "Update an existing IoT Hubs tags.", + "description": "Update an existing IoT Hub tags. to update other fields use the CreateOrUpdate method", + "x-ms-long-running-operation": true, + "operationId": "IotHubResource_Update", + "x-ms-examples": { + "IotHubResource_Update": { + "$ref": "./examples/iothub_patch.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "Resource group identifier." + }, + { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of iot hub to update." + }, + { + "name": "IotHubTags", + "in": "body", + "required": true, + "description": "Updated tag information to set into the iot hub instance.", + "schema": { + "$ref": "#/definitions/TagsResource" + } + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "Iot Hub was successfully updated", + "schema": { + "$ref": "#/definitions/IotHubDescription" + } + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + }, + "delete": { + "tags": [ + "DELETE" + ], + "summary": "Delete an IoT hub", + "description": "Delete an IoT hub.", + "operationId": "IotHubResource_Delete", + "x-ms-examples": { + "IotHubResource_Delete": { + "$ref": "./examples/iothub_delete.json" + } + }, + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "202": { + "description": "The Iot Hub resource provider always returns a 202 Accepted status code with valid Location and Retry-After headers. The resource provider also sets the Azure-AsyncOperation header with a URL that points to the operation resource for this operation. Subsequent GET attempts on the resource after a DELETE operation return a resource representation that indicates a transitional provisioning state (such as Terminating). To retrieve the status of the operation, a client can either poll the URL returned in the Location header after the Retry-After interval, get the IoT Hub service status directly, or query the operation resource.", + "schema": { + "$ref": "#/definitions/IotHubDescription" + } + }, + "200": { + "description": "This is returned as a response to the status polling request for the delete operation. The body contains the resource representation that indicates a transitional provisioning state.", + "schema": { + "$ref": "#/definitions/IotHubDescription" + } + }, + "204": { + "description": "Once the long running delete operation completes successfully, a 204 No Content status code is returned when the status polling request finds the Iot hub metadata in the service and the status of the delete operation is set to a completed state." + }, + "404": { + "description": "After the long running delete operation completes successfully, a 404 Not Found is returned when the status polling request no longer finds the Iot hub metadata in the service.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Devices/IotHubs": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get all the IoT hubs in a subscription", + "description": "Get all the IoT hubs in a subscription.", + "operationId": "IotHubResource_ListBySubscription", + "x-ms-examples": { + "IotHubResource_ListBySubscription": { + "$ref": "./examples/iothub_listbysubscription.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized array of the metadata from all the IoT hubs in the subscription.", + "schema": { + "$ref": "#/definitions/IotHubDescriptionListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get all the IoT hubs in a resource group", + "description": "Get all the IoT hubs in a resource group.", + "operationId": "IotHubResource_ListByResourceGroup", + "x-ms-examples": { + "IotHubResource_ListByResourceGroup": { + "$ref": "./examples/iothub_listbyrg.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized array of the metadata from all the IoT hubs in the resource group.", + "schema": { + "$ref": "#/definitions/IotHubDescriptionListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/IotHubStats": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get the statistics from an IoT hub", + "description": "Get the statistics from an IoT hub.", + "operationId": "IotHubResource_GetStats", + "x-ms-examples": { + "IotHubResource_GetStats": { + "$ref": "./examples/iothub_stats.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains JSON-serialized statistics from the identity registry in the IoT hub.", + "schema": { + "$ref": "#/definitions/RegistryStatistics" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/skus": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get the list of valid SKUs for an IoT hub", + "description": "Get the list of valid SKUs for an IoT hub.", + "operationId": "IotHubResource_GetValidSkus", + "x-ms-examples": { + "IotHubResource_GetValidSkus": { + "$ref": "./examples/iothub_getskus.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized array of the valid SKUs for this IoT hub.", + "schema": { + "$ref": "#/definitions/IotHubSkuDescriptionListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/eventHubEndpoints/{eventHubEndpointName}/ConsumerGroups": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get a list of the consumer groups in the Event Hub-compatible device-to-cloud endpoint in an IoT hub", + "description": "Get a list of the consumer groups in the Event Hub-compatible device-to-cloud endpoint in an IoT hub.", + "operationId": "IotHubResource_ListEventHubConsumerGroups", + "x-ms-examples": { + "IotHubResource_ListEventHubConsumerGroups": { + "$ref": "./examples/iothub_listehgroups.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "eventHubEndpointName", + "in": "path", + "description": "The name of the Event Hub-compatible endpoint.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized list of the consumer groups in the Event Hub-compatible endpoint in this IoT hub", + "schema": { + "$ref": "#/definitions/EventHubConsumerGroupsListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/eventHubEndpoints/{eventHubEndpointName}/ConsumerGroups/{name}": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get a consumer group from the Event Hub-compatible device-to-cloud endpoint for an IoT hub", + "description": "Get a consumer group from the Event Hub-compatible device-to-cloud endpoint for an IoT hub.", + "operationId": "IotHubResource_GetEventHubConsumerGroup", + "x-ms-examples": { + "IotHubResource_ListEventHubConsumerGroups": { + "$ref": "./examples/iothub_getconsumergroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "eventHubEndpointName", + "in": "path", + "description": "The name of the Event Hub-compatible endpoint in the IoT hub.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the consumer group to retrieve.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized consumer group.", + "schema": { + "$ref": "#/definitions/EventHubConsumerGroupInfo" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + }, + "put": { + "tags": [ + "PUT" + ], + "summary": "Add a consumer group to an Event Hub-compatible endpoint in an IoT hub", + "description": "Add a consumer group to an Event Hub-compatible endpoint in an IoT hub.", + "operationId": "IotHubResource_CreateEventHubConsumerGroup", + "x-ms-examples": { + "IotHubResource_CreateEventHubConsumerGroup": { + "$ref": "./examples/iothub_createconsumergroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "eventHubEndpointName", + "in": "path", + "description": "The name of the Event Hub-compatible endpoint in the IoT hub.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the consumer group to add.", + "required": true, + "type": "string" + }, + { + "name": "consumerGroupBody", + "in": "body", + "description": "The consumer group to add.", + "required": true, + "schema": { + "$ref": "#/definitions/EventHubConsumerGroupBodyDescription" + } + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation.", + "schema": { + "$ref": "#/definitions/EventHubConsumerGroupInfo" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + }, + "delete": { + "tags": [ + "DELETE" + ], + "summary": "Delete a consumer group from an Event Hub-compatible endpoint in an IoT hub", + "description": "Delete a consumer group from an Event Hub-compatible endpoint in an IoT hub.", + "operationId": "IotHubResource_DeleteEventHubConsumerGroup", + "x-ms-examples": { + "IotHubResource_DeleteEventHubConsumerGroup": { + "$ref": "./examples/iothub_deleteconsumergroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "eventHubEndpointName", + "in": "path", + "description": "The name of the Event Hub-compatible endpoint in the IoT hub.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the consumer group to delete.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation." + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/jobs": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get a list of all the jobs in an IoT hub. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-identity-registry", + "description": "Get a list of all the jobs in an IoT hub. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-identity-registry.", + "operationId": "IotHubResource_ListJobs", + "x-ms-examples": { + "IotHubResource_ListJobs": { + "$ref": "./examples/iothub_listjobs.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The response contains a JSON-serialized array of all the jobs in the IoT hub.", + "schema": { + "$ref": "#/definitions/JobResponseListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/jobs/{jobId}": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get the details of a job from an IoT hub. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-identity-registry", + "description": "Get the details of a job from an IoT hub. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-identity-registry.", + "operationId": "IotHubResource_GetJob", + "x-ms-examples": { + "IotHubResource_GetJob": { + "$ref": "./examples/iothub_getjob.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "jobId", + "in": "path", + "description": "The job identifier.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The response contains a JSON-serialized description of the job in the IoT hub.", + "schema": { + "$ref": "#/definitions/JobResponse" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/quotaMetrics": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get the quota metrics for an IoT hub", + "description": "Get the quota metrics for an IoT hub.", + "operationId": "IotHubResource_GetQuotaMetrics", + "x-ms-examples": { + "IotHubResource_GetQuotaMetrics": { + "$ref": "./examples/iothub_quotametrics.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The response contains a JSON-serialized array of the quota metrics for the IoT hub.", + "schema": { + "$ref": "#/definitions/IotHubQuotaMetricInfoListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{iotHubName}/routingEndpointsHealth": { + "get": { + "tags": [ + "GET" + ], + "operationId": "IotHubResource_GetEndpointHealth", + "summary": "Get the health for routing endpoints", + "description": "Get the health for routing endpoints.", + "x-ms-examples": { + "IotHubResource_GetEndpointHealth": { + "$ref": "./examples/iothub_routingendpointhealth.json" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "iotHubName", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/EndpointHealthDataListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Devices/checkNameAvailability": { + "post": { + "tags": [ + "POST" + ], + "summary": "Check if an IoT hub name is available", + "description": "Check if an IoT hub name is available.", + "operationId": "IotHubResource_CheckNameAvailability", + "x-ms-examples": { + "IotHubResource_CheckNameAvailability": { + "$ref": "./examples/checkNameAvailability.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "operationInputs", + "in": "body", + "description": "Set the name parameter in the OperationInputs structure to the name of the IoT hub to check.", + "required": true, + "schema": { + "$ref": "#/definitions/OperationInputs" + } + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized response that specifies whether the IoT hub name is available. If the name is not available, the body contains the reason.", + "schema": { + "$ref": "#/definitions/IotHubNameAvailabilityInfo" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Devices/usages": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get the number of iot hubs in the subscription", + "description": "Get the number of free and paid iot hubs in the subscription", + "operationId": "ResourceProviderCommon_GetSubscriptionQuota", + "x-ms-examples": { + "ResourceProviderCommon_GetSubscriptionQuota": { + "$ref": "./examples/iothub_usages.json" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/UserSubscriptionQuotaListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{iotHubName}/routing/routes/$testall": { + "post": { + "tags": [ + "POST" + ], + "operationId": "IotHubResource_TestAllRoutes", + "summary": "Test all routes", + "description": "Test all routes configured in this Iot Hub", + "x-ms-examples": { + "IotHubResource_TestAllRoutes": { + "$ref": "./examples/iothub_testallroutes.json" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "input", + "description": "Input for testing all routes", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TestAllRoutesInput" + } + }, + { + "name": "iotHubName", + "description": "IotHub to be tested", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "description": "resource group which Iot Hub belongs to", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TestAllRoutesResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{iotHubName}/routing/routes/$testnew": { + "post": { + "tags": [ + "POST" + ], + "operationId": "IotHubResource_TestRoute", + "summary": "Test the new route", + "description": "Test the new route for this Iot Hub", + "x-ms-examples": { + "IotHubResource_TestRoute": { + "$ref": "./examples/iothub_testnewroute.json" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "input", + "description": "Route that needs to be tested", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TestRouteInput" + } + }, + { + "name": "iotHubName", + "description": "IotHub to be tested", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "description": "resource group which Iot Hub belongs to", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TestRouteResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/listkeys": { + "post": { + "tags": [ + "POST" + ], + "summary": "Get the security metadata for an IoT hub. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-security", + "description": "Get the security metadata for an IoT hub. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-security.", + "operationId": "IotHubResource_ListKeys", + "x-ms-examples": { + "IotHubResource_ListKeys": { + "$ref": "./examples/iothub_listkeys.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized array of shared access policies, including keys, that you can use to access the IoT hub endpoints.", + "schema": { + "$ref": "#/definitions/SharedAccessSignatureAuthorizationRuleListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/IotHubKeys/{keyName}/listkeys": { + "post": { + "tags": [ + "POST" + ], + "summary": "Get a shared access policy by name from an IoT hub. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-security", + "description": "Get a shared access policy by name from an IoT hub. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-security.", + "operationId": "IotHubResource_GetKeysForKeyName", + "x-ms-examples": { + "IotHubResource_GetKeysForKeyName": { + "$ref": "./examples/iothub_getkey.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "keyName", + "in": "path", + "description": "The name of the shared access policy.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized shared access policy, including keys, that you can use to access one or more IoT hub endpoints.", + "schema": { + "$ref": "#/definitions/SharedAccessSignatureAuthorizationRule" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/exportDevices": { + "post": { + "tags": [ + "POST" + ], + "summary": "Exports all the device identities in the IoT hub identity registry to an Azure Storage blob container. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-identity-registry#import-and-export-device-identities", + "description": "Exports all the device identities in the IoT hub identity registry to an Azure Storage blob container. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-identity-registry#import-and-export-device-identities.", + "operationId": "IotHubResource_ExportDevices", + "x-ms-examples": { + "IotHubResource_ExportDevices": { + "$ref": "./examples/iothub_exportdevices.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "exportDevicesParameters", + "in": "body", + "description": "The parameters that specify the export devices operation.", + "required": true, + "schema": { + "$ref": "#/definitions/ExportDevicesRequest" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/JobResponse" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/importDevices": { + "post": { + "tags": [ + "POST" + ], + "summary": "Import, update, or delete device identities in the IoT hub identity registry from a blob. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-identity-registry#import-and-export-device-identities", + "description": "Import, update, or delete device identities in the IoT hub identity registry from a blob. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-identity-registry#import-and-export-device-identities.", + "operationId": "IotHubResource_ImportDevices", + "x-ms-examples": { + "IotHubResource_ImportDevices": { + "$ref": "./examples/iothub_importdevices.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "importDevicesParameters", + "in": "body", + "description": "The parameters that specify the import devices operation.", + "required": true, + "schema": { + "$ref": "#/definitions/ImportDevicesRequest" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/JobResponse" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/certificates": { + "get": { + "tags": [ + "Certificates" + ], + "summary": "Get the certificate list.", + "description": "Returns the list of certificates.", + "operationId": "Certificates_ListByIotHub", + "x-ms-examples": { + "Certificates_ListByIotHub": { + "$ref": "./examples/iothub_listcertificates.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "200": { + "description": "The body contains all the certificate list.", + "schema": { + "$ref": "#/definitions/CertificateListDescription" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/certificates/{certificateName}": { + "get": { + "tags": [ + "Certificates" + ], + "summary": "Get the certificate.", + "description": "Returns the certificate.", + "operationId": "Certificates_Get", + "x-ms-examples": { + "Certificates_Get": { + "$ref": "./examples/iothub_getcertificate.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "$ref": "#/parameters/certificateName" + } + ], + "responses": { + "200": { + "description": "The body contains the certificate.", + "schema": { + "$ref": "#/definitions/CertificateDescription" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + }, + "put": { + "tags": [ + "Certificates" + ], + "summary": "Upload the certificate to the IoT hub.", + "description": "Adds new or replaces existing certificate.", + "operationId": "Certificates_CreateOrUpdate", + "x-ms-examples": { + "Certificates_CreateOrUpdate": { + "$ref": "./examples/iothub_certificatescreateorupdate.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "$ref": "#/parameters/certificateName" + }, + { + "name": "certificateDescription", + "in": "body", + "description": "The certificate body.", + "required": true, + "schema": { + "$ref": "#/definitions/CertificateDescription" + } + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "ETag of the Certificate. Do not specify for creating a brand new certificate. Required to update an existing certificate." + } + ], + "responses": { + "201": { + "description": "If certificate didn't exist creation was successful, the operation returns HTTP status code of 201 (OK).", + "schema": { + "$ref": "#/definitions/CertificateDescription" + } + }, + "200": { + "description": "If certificate already exist and update was successful, the operation returns HTTP status code of 201 (OK).", + "schema": { + "$ref": "#/definitions/CertificateDescription" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + }, + "delete": { + "tags": [ + "Certificates" + ], + "summary": "Delete an X509 certificate.", + "description": "Deletes an existing X509 certificate or does nothing if it does not exist.", + "operationId": "Certificates_Delete", + "x-ms-examples": { + "Certificates_Delete": { + "$ref": "./examples/iothub_certificatesdelete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "$ref": "#/parameters/certificateName" + }, + { + "name": "If-Match", + "in": "header", + "required": true, + "type": "string", + "description": "ETag of the Certificate." + } + ], + "responses": { + "200": { + "description": "Certificate has been deleted." + }, + "204": { + "description": "Certificate does not exist." + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/certificates/{certificateName}/generateVerificationCode": { + "post": { + "tags": [ + "Certificates" + ], + "summary": "Generate verification code for proof of possession flow.", + "description": "Generates verification code for proof of possession flow. The verification code will be used to generate a leaf certificate.", + "operationId": "Certificates_GenerateVerificationCode", + "x-ms-examples": { + "Certificates_GenerateVerificationCode": { + "$ref": "./examples/iothub_generateverificationcode.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "$ref": "#/parameters/certificateName" + }, + { + "name": "If-Match", + "in": "header", + "required": true, + "type": "string", + "description": "ETag of the Certificate." + } + ], + "responses": { + "200": { + "description": "The body contains the certificate.", + "schema": { + "$ref": "#/definitions/CertificateWithNonceDescription" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/certificates/{certificateName}/verify": { + "post": { + "tags": [ + "Certificates" + ], + "summary": "Verify certificate's private key possession.", + "description": "Verifies the certificate's private key possession by providing the leaf cert issued by the verifying pre uploaded certificate.", + "operationId": "Certificates_Verify", + "x-ms-examples": { + "Certificates_Verify": { + "$ref": "./examples/iothub_certverify.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "$ref": "#/parameters/certificateName" + }, + { + "name": "certificateVerificationBody", + "in": "body", + "description": "The name of the certificate", + "required": true, + "schema": { + "$ref": "#/definitions/CertificateVerificationDescription" + } + }, + { + "name": "If-Match", + "in": "header", + "required": true, + "type": "string", + "description": "ETag of the Certificate." + } + ], + "responses": { + "200": { + "description": "The body contains the certificate.", + "schema": { + "$ref": "#/definitions/CertificateDescription" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{iotHubName}/failover": { + "post": { + "tags": [ + "POST" + ], + "operationId": "IotHub_ManualFailover", + "summary": "Manually initiate a failover for the IoT Hub to its secondary region", + "description": "Manually initiate a failover for the IoT Hub to its secondary region. To learn more, see https://aka.ms/manualfailover", + "x-ms-examples": { + "IotHub_ManualFailover": { + "$ref": "./examples/IotHub_ManualFailover.json" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-long-running-operation": true, + "parameters": [ + { + "name": "iotHubName", + "description": "Name of the IoT hub to failover", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "failoverInput", + "description": "Region to failover to. Must be the Azure paired region. Get the value from the secondary location in the locations property. To learn more, see https://aka.ms/manualfailover/region", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FailoverInput" + } + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "description": "Name of the resource group containing the IoT hub resource", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "Long running manual failover operation for the IoT hub completed" + }, + "202": { + "description": "Manual failover initiated" + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/iotHubs/{resourceName}/privateLinkResources": { + "get": { + "tags": [ + "GET" + ], + "summary": "List private link resources", + "description": "List private link resources for the given IotHub", + "operationId": "PrivateLinkResources_List", + "x-ms-examples": { + "PrivateLinkResources_List": { + "$ref": "./examples/iothub_listprivatelinkresources.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "200": { + "description": "The body contains the list of private link resources", + "schema": { + "$ref": "#/definitions/PrivateLinkResources" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/iotHubs/{resourceName}/privateLinkResources/{groupId}": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get the specified private link resource", + "description": "Get the specified private link resource for the given IotHub", + "operationId": "PrivateLinkResources_Get", + "x-ms-examples": { + "PrivateLinkResources_List": { + "$ref": "./examples/iothub_getprivatelinkresources.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "$ref": "#/parameters/groupId" + } + ], + "responses": { + "200": { + "description": "The body contains the specified of private link resource", + "schema": { + "$ref": "#/definitions/GroupIdInformation" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/iotHubs/{resourceName}/privateEndpointConnections": { + "get": { + "tags": [ + "GET" + ], + "summary": "List private endpoint connections", + "description": "List private endpoint connection properties", + "operationId": "PrivateEndpointConnections_List", + "x-ms-examples": { + "PrivateEndpointConnections_List": { + "$ref": "./examples/iothub_listprivateendpointconnections.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "200": { + "description": "The body contains the list of private endpoint connection properties", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionsList" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/iotHubs/{resourceName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get private endpoint connection", + "description": "Get private endpoint connection properties", + "operationId": "PrivateEndpointConnections_Get", + "x-ms-examples": { + "PrivateEndpointConnection_Get": { + "$ref": "./examples/iothub_getprivateendpointconnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "$ref": "#/parameters/privateEndpointConnectionName" + } + ], + "responses": { + "200": { + "description": "The body contains the private endpoint connection properties", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + }, + "put": { + "tags": [ + "PUT" + ], + "summary": "Update private endpoint connection", + "description": "Update the status of a private endpoint connection with the specified name", + "operationId": "PrivateEndpointConnections_Update", + "x-ms-examples": { + "PrivateEndpointConnection_Update": { + "$ref": "./examples/iothub_updateprivateendpointconnection.json" + } + }, + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "$ref": "#/parameters/privateEndpointConnectionName" + }, + { + "name": "privateEndpointConnection", + "in": "body", + "description": "The private endpoint connection with updated properties", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + } + ], + "responses": { + "201": { + "description": "This is a long running operation. The operation returns a 201 if the validation is complete. The response includes an Azure-AsyncOperation header that contains a status URL. Clients are expected to poll the status URL for the status of the operation. If successful, the operation returns HTTP status code of 201 (OK).", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "200": { + "description": "This is returned as a response to the status polling request for the update operation.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + }, + "delete": { + "tags": [ + "DELETE" + ], + "summary": "Delete private endpoint connection", + "description": "Delete private endpoint connection with the specified name", + "operationId": "PrivateEndpointConnections_Delete", + "x-ms-examples": { + "PrivateEndpointConnection_Delete": { + "$ref": "./examples/iothub_deleteprivateendpointconnection.json" + } + }, + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "$ref": "#/parameters/privateEndpointConnectionName" + } + ], + "responses": { + "202": { + "description": "This is a long running operation. The operation returns a 202 if the validation is complete. The response includes an Azure-AsyncOperation header that contains a status URL. Clients are expected to poll the status URL for the status of the operation.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "200": { + "description": "This is returned as a response to the status polling request for the delete operation.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "204": { + "description": "PrivateEndpoint does not exist." + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + } + }, + "definitions": { + "CertificateVerificationDescription": { + "description": "The JSON-serialized leaf certificate", + "type": "object", + "properties": { + "certificate": { + "description": "base-64 representation of X509 certificate .cer file or just .pem file content.", + "type": "string" + } + } + }, + "CertificateListDescription": { + "description": "The JSON-serialized array of Certificate objects.", + "type": "object", + "properties": { + "value": { + "description": "The array of Certificate objects.", + "type": "array", + "items": { + "$ref": "#/definitions/CertificateDescription" + } + } + } + }, + "CertificateBodyDescription": { + "description": "The JSON-serialized X509 Certificate.", + "type": "object", + "properties": { + "certificate": { + "description": "base-64 representation of the X509 leaf certificate .cer file or just .pem file content.", + "type": "string" + } + } + }, + "CertificateDescription": { + "description": "The X509 Certificate.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/CertificateProperties" + }, + "id": { + "readOnly": true, + "type": "string", + "description": "The resource identifier." + }, + "name": { + "description": "The name of the certificate.", + "type": "string", + "readOnly": true + }, + "etag": { + "description": "The entity tag.", + "type": "string", + "readOnly": true + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + } + }, + "x-ms-azure-resource": true + }, + "CertificateWithNonceDescription": { + "description": "The X509 Certificate.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/CertificatePropertiesWithNonce" + }, + "id": { + "readOnly": true, + "type": "string", + "description": "The resource identifier." + }, + "name": { + "description": "The name of the certificate.", + "type": "string", + "readOnly": true + }, + "etag": { + "description": "The entity tag.", + "type": "string", + "readOnly": true + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + } + }, + "x-ms-azure-resource": true + }, + "SharedAccessSignatureAuthorizationRule": { + "description": "The properties of an IoT hub shared access policy.", + "type": "object", + "properties": { + "keyName": { + "description": "The name of the shared access policy.", + "type": "string" + }, + "primaryKey": { + "description": "The primary key.", + "type": "string" + }, + "secondaryKey": { + "description": "The secondary key.", + "type": "string" + }, + "rights": { + "description": "The permissions assigned to the shared access policy.", + "enum": [ + "RegistryRead", + "RegistryWrite", + "ServiceConnect", + "DeviceConnect", + "RegistryRead, RegistryWrite", + "RegistryRead, ServiceConnect", + "RegistryRead, DeviceConnect", + "RegistryWrite, ServiceConnect", + "RegistryWrite, DeviceConnect", + "ServiceConnect, DeviceConnect", + "RegistryRead, RegistryWrite, ServiceConnect", + "RegistryRead, RegistryWrite, DeviceConnect", + "RegistryRead, ServiceConnect, DeviceConnect", + "RegistryWrite, ServiceConnect, DeviceConnect", + "RegistryRead, RegistryWrite, ServiceConnect, DeviceConnect" + ], + "type": "string", + "x-ms-enum": { + "name": "AccessRights", + "modelAsString": false + } + } + }, + "required": [ + "keyName", + "rights" + ] + }, + "CertificateProperties": { + "description": "The description of an X509 CA Certificate.", + "type": "object", + "properties": { + "subject": { + "description": "The certificate's subject name.", + "type": "string", + "readOnly": true + }, + "expiry": { + "description": "The certificate's expiration date and time.", + "type": "string", + "format": "date-time-rfc1123", + "readOnly": true + }, + "thumbprint": { + "description": "The certificate's thumbprint.", + "type": "string", + "readOnly": true + }, + "isVerified": { + "description": "Determines whether certificate has been verified.", + "type": "boolean", + "readOnly": true + }, + "created": { + "description": "The certificate's create date and time.", + "type": "string", + "format": "date-time-rfc1123", + "readOnly": true + }, + "updated": { + "description": "The certificate's last update date and time.", + "type": "string", + "format": "date-time-rfc1123", + "readOnly": true + }, + "certificate": { + "description": "The certificate content", + "type": "string" + } + } + }, + "CertificatePropertiesWithNonce": { + "description": "The description of an X509 CA Certificate including the challenge nonce issued for the Proof-Of-Possession flow.", + "type": "object", + "properties": { + "subject": { + "description": "The certificate's subject name.", + "type": "string", + "readOnly": true + }, + "expiry": { + "description": "The certificate's expiration date and time.", + "type": "string", + "format": "date-time-rfc1123", + "readOnly": true + }, + "thumbprint": { + "description": "The certificate's thumbprint.", + "type": "string", + "readOnly": true + }, + "isVerified": { + "description": "Determines whether certificate has been verified.", + "type": "boolean", + "readOnly": true + }, + "created": { + "description": "The certificate's create date and time.", + "type": "string", + "format": "date-time-rfc1123", + "readOnly": true + }, + "updated": { + "description": "The certificate's last update date and time.", + "type": "string", + "format": "date-time-rfc1123", + "readOnly": true + }, + "verificationCode": { + "description": "The certificate's verification code that will be used for proof of possession.", + "type": "string", + "readOnly": true + }, + "certificate": { + "description": "The certificate content", + "type": "string", + "readOnly": true + } + } + }, + "IotHubProperties": { + "description": "The properties of an IoT hub.", + "type": "object", + "properties": { + "authorizationPolicies": { + "description": "The shared access policies you can use to secure a connection to the IoT hub.", + "type": "array", + "items": { + "$ref": "#/definitions/SharedAccessSignatureAuthorizationRule" + } + }, + "publicNetworkAccess": { + "type": "string", + "description": "Whether requests from Public Network are allowed", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "modelAsString": true, + "name": "PublicNetworkAccess" + } + }, + "ipFilterRules": { + "description": "The IP filter rules.", + "type": "array", + "items": { + "$ref": "#/definitions/IpFilterRule" + } + }, + "networkRuleSets": { + "$ref": "#/definitions/NetworkRuleSetProperties" + }, + "minTlsVersion": { + "type": "string", + "description": "Specifies the minimum TLS version to support for this hub. Can be set to \"1.2\" to have clients that use a TLS version below 1.2 to be rejected." + }, + "privateEndpointConnections": { + "description": "Private endpoint connections created on this IotHub", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "provisioningState": { + "description": "The provisioning state.", + "type": "string", + "readOnly": true + }, + "state": { + "description": "The hub state.", + "type": "string", + "readOnly": true + }, + "hostName": { + "description": "The name of the host.", + "type": "string", + "readOnly": true + }, + "eventHubEndpoints": { + "description": "The Event Hub-compatible endpoint properties. The only possible keys to this dictionary is events. This key has to be present in the dictionary while making create or update calls for the IoT hub.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/EventHubProperties" + } + }, + "routing": { + "$ref": "#/definitions/RoutingProperties" + }, + "storageEndpoints": { + "description": "The list of Azure Storage endpoints where you can upload files. Currently you can configure only one Azure Storage account and that MUST have its key as $default. Specifying more than one storage account causes an error to be thrown. Not specifying a value for this property when the enableFileUploadNotifications property is set to True, causes an error to be thrown.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/StorageEndpointProperties" + } + }, + "messagingEndpoints": { + "description": "The messaging endpoint properties for the file upload notification queue.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/MessagingEndpointProperties" + } + }, + "enableFileUploadNotifications": { + "description": "If True, file upload notifications are enabled.", + "type": "boolean" + }, + "cloudToDevice": { + "$ref": "#/definitions/CloudToDeviceProperties" + }, + "comments": { + "description": "IoT hub comments.", + "type": "string" + }, + "features": { + "description": "The capabilities and features enabled for the IoT hub.", + "enum": [ + "None", + "DeviceManagement" + ], + "type": "string", + "x-ms-enum": { + "name": "Capabilities", + "modelAsString": true + } + }, + "locations": { + "description": "Primary and secondary location for iot hub", + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/IotHubLocationDescription" + } + } + } + }, + "IotHubSkuInfo": { + "description": "Information about the SKU of the IoT hub.", + "type": "object", + "properties": { + "name": { + "description": "The name of the SKU.", + "enum": [ + "F1", + "S1", + "S2", + "S3", + "B1", + "B2", + "B3" + ], + "type": "string", + "x-ms-enum": { + "name": "IotHubSku", + "modelAsString": true + } + }, + "tier": { + "description": "The billing tier for the IoT hub.", + "enum": [ + "Free", + "Standard", + "Basic" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "IotHubSkuTier", + "modelAsString": false + } + }, + "capacity": { + "format": "int64", + "description": "The number of provisioned IoT Hub units. See: https://docs.microsoft.com/azure/azure-subscription-service-limits#iot-hub-limits.", + "type": "integer" + } + }, + "required": [ + "name" + ] + }, + "EventHubProperties": { + "description": "The properties of the provisioned Event Hub-compatible endpoint used by the IoT hub.", + "type": "object", + "properties": { + "retentionTimeInDays": { + "format": "int64", + "description": "The retention time for device-to-cloud messages in days. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#device-to-cloud-messages", + "type": "integer" + }, + "partitionCount": { + "format": "int32", + "description": "The number of partitions for receiving device-to-cloud messages in the Event Hub-compatible endpoint. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#device-to-cloud-messages.", + "type": "integer" + }, + "partitionIds": { + "description": "The partition ids in the Event Hub-compatible endpoint.", + "readOnly": true, + "type": "array", + "items": { + "type": "string" + } + }, + "path": { + "description": "The Event Hub-compatible name.", + "type": "string", + "readOnly": true + }, + "endpoint": { + "description": "The Event Hub-compatible endpoint.", + "type": "string", + "readOnly": true + } + } + }, + "StorageEndpointProperties": { + "description": "The properties of the Azure Storage endpoint for file upload.", + "type": "object", + "properties": { + "sasTtlAsIso8601": { + "description": "The period of time for which the SAS URI generated by IoT Hub for file upload is valid. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-file-upload#file-upload-notification-configuration-options.", + "type": "string", + "format": "duration" + }, + "connectionString": { + "description": "The connection string for the Azure Storage account to which files are uploaded.", + "type": "string" + }, + "containerName": { + "description": "The name of the root container where you upload files. The container need not exist but should be creatable using the connectionString specified.", + "type": "string" + }, + "authenticationType": { + "description": "Specifies authentication type being used for connecting to the storage account.", + "enum": [ + "keyBased", + "identityBased" + ], + "type": "string", + "x-ms-enum": { + "name": "AuthenticationType", + "modelAsString": true + } + }, + "identity": { + "description": "Managed identity properties of storage endpoint for file upload.", + "$ref": "#/definitions/ManagedIdentity" + } + }, + "required": [ + "connectionString", + "containerName" + ] + }, + "MessagingEndpointProperties": { + "description": "The properties of the messaging endpoints used by this IoT hub.", + "type": "object", + "properties": { + "lockDurationAsIso8601": { + "description": "The lock duration. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-file-upload.", + "type": "string", + "format": "duration" + }, + "ttlAsIso8601": { + "description": "The period of time for which a message is available to consume before it is expired by the IoT hub. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-file-upload.", + "type": "string", + "format": "duration" + }, + "maxDeliveryCount": { + "description": "The number of times the IoT hub attempts to deliver a message. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-file-upload.", + "format": "int32", + "type": "integer", + "minimum": 1, + "maximum": 100 + } + } + }, + "CloudToDeviceProperties": { + "description": "The IoT hub cloud-to-device messaging properties.", + "type": "object", + "properties": { + "maxDeliveryCount": { + "description": "The max delivery count for cloud-to-device messages in the device queue. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages.", + "format": "int32", + "type": "integer", + "minimum": 1, + "maximum": 100 + }, + "defaultTtlAsIso8601": { + "description": "The default time to live for cloud-to-device messages in the device queue. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages.", + "type": "string", + "format": "duration" + }, + "feedback": { + "$ref": "#/definitions/FeedbackProperties" + } + } + }, + "IpFilterRule": { + "description": "The IP filter rules for the IoT hub.", + "type": "object", + "properties": { + "filterName": { + "description": "The name of the IP filter rule.", + "type": "string" + }, + "action": { + "description": "The desired action for requests captured by this rule.", + "enum": [ + "Accept", + "Reject" + ], + "type": "string", + "x-ms-enum": { + "name": "IpFilterActionType", + "modelAsString": false + } + }, + "ipMask": { + "description": "A string that contains the IP address range in CIDR notation for the rule.", + "type": "string" + } + }, + "required": [ + "filterName", + "action", + "ipMask" + ] + }, + "NetworkRuleSetProperties": { + "description": "Network Rule Set Properties of IotHub", + "type": "object", + "properties": { + "defaultAction": { + "type": "string", + "description": "Default Action for Network Rule Set", + "enum": [ + "Deny", + "Allow" + ], + "x-ms-enum": { + "name": "DefaultAction", + "modelAsString": true + }, + "default": "Deny" + }, + "applyToBuiltInEventHubEndpoint": { + "type": "boolean", + "description": "If True, then Network Rule Set is also applied to BuiltIn EventHub EndPoint of IotHub" + }, + "ipRules": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkRuleSetIpRule" + }, + "description": "List of IP Rules" + } + }, + "required": [ + "applyToBuiltInEventHubEndpoint", + "ipRules" + ] + }, + "NetworkRuleSetIpRule": { + "description": "IP Rule to be applied as part of Network Rule Set", + "type": "object", + "properties": { + "filterName": { + "type": "string", + "description": "Name of the IP filter rule." + }, + "action": { + "type": "string", + "description": "IP Filter Action", + "enum": [ + "Allow" + ], + "x-ms-enum": { + "name": "NetworkRuleIPAction", + "modelAsString": true + }, + "default": "Allow" + }, + "ipMask": { + "type": "string", + "description": "A string that contains the IP address range in CIDR notation for the rule." + } + }, + "required": [ + "filterName", + "ipMask" + ] + }, + "PrivateLinkResources": { + "description": "The available private link resources for an IotHub", + "type": "object", + "properties": { + "value": { + "description": "The list of available private link resources for an IotHub", + "type": "array", + "items": { + "$ref": "#/definitions/GroupIdInformation" + } + } + } + }, + "GroupIdInformation": { + "description": "The group information for creating a private endpoint on an IotHub", + "type": "object", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The resource identifier." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The resource name." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + }, + "properties": { + "$ref": "#/definitions/GroupIdInformationProperties" + } + }, + "required": [ + "properties" + ] + }, + "GroupIdInformationProperties": { + "description": "The properties for a group information object", + "type": "object", + "properties": { + "groupId": { + "type": "string", + "description": "The group id" + }, + "requiredMembers": { + "description": "The required members for a specific group id", + "type": "array", + "items": { + "type": "string" + } + }, + "requiredZoneNames": { + "description": "The required DNS zones for a specific group id", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "PrivateEndpointConnectionsList": { + "description": "The list of private endpoint connections for an IotHub", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "PrivateEndpointConnection": { + "description": "The private endpoint connection of an IotHub", + "x-ms-azure-resource": true, + "type": "object", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The resource identifier." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The resource name." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + }, + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties" + } + }, + "required": [ + "properties" + ] + }, + "PrivateEndpointConnectionProperties": { + "description": "The properties of a private endpoint connection", + "type": "object", + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionState" + } + }, + "required": [ + "privateLinkServiceConnectionState" + ] + }, + "PrivateEndpoint": { + "description": "The private endpoint property of a private endpoint connection", + "type": "object", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The resource identifier." + } + } + }, + "PrivateLinkServiceConnectionState": { + "description": "The current state of a private endpoint connection", + "type": "object", + "properties": { + "status": { + "description": "The status of a private endpoint connection", + "enum": [ + "Pending", + "Approved", + "Rejected", + "Disconnected" + ], + "type": "string", + "x-ms-enum": { + "name": "PrivateLinkServiceConnectionStatus", + "modelAsString": true + } + }, + "description": { + "type": "string", + "description": "The description for the current state of a private endpoint connection" + }, + "actionsRequired": { + "type": "string", + "description": "Actions required for a private endpoint connection" + } + }, + "required": [ + "status", + "description" + ] + }, + "FeedbackProperties": { + "description": "The properties of the feedback queue for cloud-to-device messages.", + "type": "object", + "properties": { + "lockDurationAsIso8601": { + "description": "The lock duration for the feedback queue. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages.", + "type": "string", + "format": "duration" + }, + "ttlAsIso8601": { + "description": "The period of time for which a message is available to consume before it is expired by the IoT hub. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages.", + "type": "string", + "format": "duration" + }, + "maxDeliveryCount": { + "description": "The number of times the IoT hub attempts to deliver a message on the feedback queue. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages.", + "format": "int32", + "type": "integer", + "minimum": 1, + "maximum": 100 + } + } + }, + "RoutingProperties": { + "description": "The routing related properties of the IoT hub. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging", + "type": "object", + "properties": { + "endpoints": { + "$ref": "#/definitions/RoutingEndpoints" + }, + "routes": { + "description": "The list of user-provided routing rules that the IoT hub uses to route messages to built-in and custom endpoints. A maximum of 100 routing rules are allowed for paid hubs and a maximum of 5 routing rules are allowed for free hubs.", + "type": "array", + "items": { + "$ref": "#/definitions/RouteProperties" + } + }, + "fallbackRoute": { + "description": "The properties of the route that is used as a fall-back route when none of the conditions specified in the 'routes' section are met. This is an optional parameter. When this property is not set, the messages which do not meet any of the conditions specified in the 'routes' section get routed to the built-in eventhub endpoint.", + "$ref": "#/definitions/FallbackRouteProperties" + }, + "enrichments": { + "description": "The list of user-provided enrichments that the IoT hub applies to messages to be delivered to built-in and custom endpoints. See: https://aka.ms/telemetryoneventgrid", + "type": "array", + "items": { + "$ref": "#/definitions/EnrichmentProperties" + } + } + } + }, + "RoutingEndpoints": { + "description": "The properties related to the custom endpoints to which your IoT hub routes messages based on the routing rules. A maximum of 10 custom endpoints are allowed across all endpoint types for paid hubs and only 1 custom endpoint is allowed across all endpoint types for free hubs.", + "type": "object", + "properties": { + "serviceBusQueues": { + "description": "The list of Service Bus queue endpoints that IoT hub routes the messages to, based on the routing rules.", + "type": "array", + "items": { + "$ref": "#/definitions/RoutingServiceBusQueueEndpointProperties" + } + }, + "serviceBusTopics": { + "description": "The list of Service Bus topic endpoints that the IoT hub routes the messages to, based on the routing rules.", + "type": "array", + "items": { + "$ref": "#/definitions/RoutingServiceBusTopicEndpointProperties" + } + }, + "eventHubs": { + "description": "The list of Event Hubs endpoints that IoT hub routes messages to, based on the routing rules. This list does not include the built-in Event Hubs endpoint.", + "type": "array", + "items": { + "$ref": "#/definitions/RoutingEventHubProperties" + } + }, + "storageContainers": { + "description": "The list of storage container endpoints that IoT hub routes messages to, based on the routing rules.", + "type": "array", + "items": { + "$ref": "#/definitions/RoutingStorageContainerProperties" + } + } + } + }, + "RoutingServiceBusQueueEndpointProperties": { + "description": "The properties related to service bus queue endpoint types.", + "type": "object", + "properties": { + "id": { + "description": "Id of the service bus queue endpoint", + "type": "string" + }, + "connectionString": { + "description": "The connection string of the service bus queue endpoint.", + "type": "string" + }, + "endpointUri": { + "description": "The url of the service bus queue endpoint. It must include the protocol sb://", + "type": "string" + }, + "entityPath": { + "description": "Queue name on the service bus namespace", + "type": "string" + }, + "authenticationType": { + "description": "Method used to authenticate against the service bus queue endpoint", + "enum": [ + "keyBased", + "identityBased" + ], + "type": "string", + "x-ms-enum": { + "name": "authenticationType", + "modelAsString": true + } + }, + "identity": { + "description": "Managed identity properties of routing service bus queue endpoint.", + "$ref": "#/definitions/ManagedIdentity" + }, + "name": { + "description": "The name that identifies this endpoint. The name can only include alphanumeric characters, periods, underscores, hyphens and has a maximum length of 64 characters. The following names are reserved: events, fileNotifications, $default. Endpoint names must be unique across endpoint types. The name need not be the same as the actual queue name.", + "type": "string", + "pattern": "^[A-Za-z0-9-._]{1,64}$" + }, + "subscriptionId": { + "description": "The subscription identifier of the service bus queue endpoint.", + "type": "string" + }, + "resourceGroup": { + "description": "The name of the resource group of the service bus queue endpoint.", + "type": "string" + } + }, + "required": [ + "name" + ] + }, + "RoutingServiceBusTopicEndpointProperties": { + "description": "The properties related to service bus topic endpoint types.", + "type": "object", + "properties": { + "id": { + "description": "Id of the service bus topic endpoint", + "type": "string" + }, + "connectionString": { + "description": "The connection string of the service bus topic endpoint.", + "type": "string" + }, + "endpointUri": { + "description": "The url of the service bus topic endpoint. It must include the protocol sb://", + "type": "string" + }, + "entityPath": { + "description": "Queue name on the service bus topic", + "type": "string" + }, + "authenticationType": { + "description": "Method used to authenticate against the service bus topic endpoint", + "enum": [ + "keyBased", + "identityBased" + ], + "type": "string", + "x-ms-enum": { + "name": "authenticationType", + "modelAsString": true + } + }, + "identity": { + "description": "Managed identity properties of routing service bus topic endpoint.", + "$ref": "#/definitions/ManagedIdentity" + }, + "name": { + "description": "The name that identifies this endpoint. The name can only include alphanumeric characters, periods, underscores, hyphens and has a maximum length of 64 characters. The following names are reserved: events, fileNotifications, $default. Endpoint names must be unique across endpoint types. The name need not be the same as the actual topic name.", + "type": "string", + "pattern": "^[A-Za-z0-9-._]{1,64}$" + }, + "subscriptionId": { + "description": "The subscription identifier of the service bus topic endpoint.", + "type": "string" + }, + "resourceGroup": { + "description": "The name of the resource group of the service bus topic endpoint.", + "type": "string" + } + }, + "required": [ + "name" + ] + }, + "RoutingEventHubProperties": { + "description": "The properties related to an event hub endpoint.", + "type": "object", + "properties": { + "id": { + "description": "Id of the event hub endpoint", + "type": "string" + }, + "connectionString": { + "description": "The connection string of the event hub endpoint. ", + "type": "string" + }, + "endpointUri": { + "description": "The url of the event hub endpoint. It must include the protocol sb://", + "type": "string" + }, + "entityPath": { + "description": "Event hub name on the event hub namespace", + "type": "string" + }, + "authenticationType": { + "description": "Method used to authenticate against the event hub endpoint", + "enum": [ + "keyBased", + "identityBased" + ], + "type": "string", + "x-ms-enum": { + "name": "authenticationType", + "modelAsString": true + } + }, + "identity": { + "description": "Managed identity properties of routing event hub endpoint.", + "$ref": "#/definitions/ManagedIdentity" + }, + "name": { + "description": "The name that identifies this endpoint. The name can only include alphanumeric characters, periods, underscores, hyphens and has a maximum length of 64 characters. The following names are reserved: events, fileNotifications, $default. Endpoint names must be unique across endpoint types.", + "type": "string", + "pattern": "^[A-Za-z0-9-._]{1,64}$" + }, + "subscriptionId": { + "description": "The subscription identifier of the event hub endpoint.", + "type": "string" + }, + "resourceGroup": { + "description": "The name of the resource group of the event hub endpoint.", + "type": "string" + } + }, + "required": [ + "name" + ] + }, + "RoutingStorageContainerProperties": { + "description": "The properties related to a storage container endpoint.", + "type": "object", + "properties": { + "id": { + "description": "Id of the storage container endpoint", + "type": "string" + }, + "connectionString": { + "description": "The connection string of the storage account.", + "type": "string" + }, + "endpointUri": { + "description": "The url of the storage endpoint. It must include the protocol https://", + "type": "string" + }, + "authenticationType": { + "description": "Method used to authenticate against the storage endpoint", + "enum": [ + "keyBased", + "identityBased" + ], + "type": "string", + "x-ms-enum": { + "name": "authenticationType", + "modelAsString": true + } + }, + "identity": { + "description": "Managed identity properties of routing storage endpoint.", + "$ref": "#/definitions/ManagedIdentity" + }, + "name": { + "description": "The name that identifies this endpoint. The name can only include alphanumeric characters, periods, underscores, hyphens and has a maximum length of 64 characters. The following names are reserved: events, fileNotifications, $default. Endpoint names must be unique across endpoint types.", + "type": "string", + "pattern": "^[A-Za-z0-9-._]{1,64}$" + }, + "subscriptionId": { + "description": "The subscription identifier of the storage account.", + "type": "string" + }, + "resourceGroup": { + "description": "The name of the resource group of the storage account.", + "type": "string" + }, + "containerName": { + "description": "The name of storage container in the storage account.", + "type": "string" + }, + "fileNameFormat": { + "description": "File name format for the blob. Default format is {iothub}/{partition}/{YYYY}/{MM}/{DD}/{HH}/{mm}. All parameters are mandatory but can be reordered.", + "type": "string" + }, + "batchFrequencyInSeconds": { + "description": "Time interval at which blobs are written to storage. Value should be between 60 and 720 seconds. Default value is 300 seconds.", + "format": "int32", + "type": "integer", + "maximum": 720, + "minimum": 60 + }, + "maxChunkSizeInBytes": { + "description": "Maximum number of bytes for each blob written to storage. Value should be between 10485760(10MB) and 524288000(500MB). Default value is 314572800(300MB).", + "format": "int32", + "type": "integer", + "maximum": 524288000, + "minimum": 10485760 + }, + "encoding": { + "description": "Encoding that is used to serialize messages to blobs. Supported values are 'avro', 'avrodeflate', and 'JSON'. Default value is 'avro'.", + "type": "string", + "enum": [ + "Avro", + "AvroDeflate", + "JSON" + ] + } + }, + "required": [ + "name", + "containerName" + ] + }, + "RouteProperties": { + "description": "The properties of a routing rule that your IoT hub uses to route messages to endpoints.", + "type": "object", + "properties": { + "name": { + "description": "The name of the route. The name can only include alphanumeric characters, periods, underscores, hyphens, has a maximum length of 64 characters, and must be unique.", + "type": "string", + "pattern": "^[A-Za-z0-9-._]{1,64}$" + }, + "source": { + "description": "The source that the routing rule is to be applied to, such as DeviceMessages.", + "enum": [ + "Invalid", + "DeviceMessages", + "TwinChangeEvents", + "DeviceLifecycleEvents", + "DeviceJobLifecycleEvents", + "DeviceConnectionStateEvents" + ], + "type": "string", + "x-ms-enum": { + "name": "RoutingSource", + "modelAsString": true + } + }, + "condition": { + "description": "The condition that is evaluated to apply the routing rule. If no condition is provided, it evaluates to true by default. For grammar, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-query-language", + "type": "string" + }, + "endpointNames": { + "description": "The list of endpoints to which messages that satisfy the condition are routed. Currently only one endpoint is allowed.", + "minItems": 1, + "maxItems": 1, + "type": "array", + "items": { + "type": "string" + } + }, + "isEnabled": { + "description": "Used to specify whether a route is enabled.", + "type": "boolean" + } + }, + "required": [ + "name", + "endpointNames", + "source", + "isEnabled" + ] + }, + "FallbackRouteProperties": { + "description": "The properties of the fallback route. IoT Hub uses these properties when it routes messages to the fallback endpoint.", + "type": "object", + "properties": { + "name": { + "description": "The name of the route. The name can only include alphanumeric characters, periods, underscores, hyphens, has a maximum length of 64 characters, and must be unique.", + "type": "string" + }, + "source": { + "description": "The source to which the routing rule is to be applied to. For example, DeviceMessages", + "enum": [ + "DeviceMessages" + ], + "type": "string", + "x-ms-enum": { + "name": "RoutingSource", + "modelAsString": true + } + }, + "condition": { + "description": "The condition which is evaluated in order to apply the fallback route. If the condition is not provided it will evaluate to true by default. For grammar, See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-query-language", + "type": "string" + }, + "endpointNames": { + "description": "The list of endpoints to which the messages that satisfy the condition are routed to. Currently only 1 endpoint is allowed.", + "minItems": 1, + "maxItems": 1, + "type": "array", + "items": { + "type": "string" + } + }, + "isEnabled": { + "description": "Used to specify whether the fallback route is enabled.", + "type": "boolean" + } + }, + "required": [ + "endpointNames", + "source", + "isEnabled" + ] + }, + "EnrichmentProperties": { + "description": "The properties of an enrichment that your IoT hub applies to messages delivered to endpoints.", + "type": "object", + "properties": { + "key": { + "description": "The key or name for the enrichment property.", + "type": "string" + }, + "value": { + "description": "The value for the enrichment property.", + "type": "string" + }, + "endpointNames": { + "description": "The list of endpoints for which the enrichment is applied to the message.", + "minItems": 1, + "type": "array", + "items": { + "type": "string" + } + } + }, + "required": [ + "key", + "value", + "endpointNames" + ] + }, + "IotHubDescription": { + "description": "The description of the IoT hub.", + "type": "object", + "properties": { + "etag": { + "description": "The Etag field is *not* required. If it is provided in the response body, it must also be provided as a header per the normal ETag convention.", + "type": "string" + }, + "properties": { + "description": "IotHub properties", + "$ref": "#/definitions/IotHubProperties" + }, + "sku": { + "description": "IotHub SKU info", + "$ref": "#/definitions/IotHubSkuInfo" + }, + "identity": { + "description": "The managed identities for the IotHub.", + "$ref": "#/definitions/ArmIdentity" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "required": [ + "sku" + ] + }, + "Resource": { + "description": "The common properties of an Azure resource.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The resource identifier." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The resource name.", + "pattern": "^(?![0-9]+$)(?!-)[a-zA-Z0-9-]{2,49}[a-zA-Z0-9]$" + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + }, + "location": { + "type": "string", + "description": "The resource location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The resource tags." + } + }, + "x-ms-azure-resource": true, + "required": [ + "location" + ] + }, + "SharedAccessSignatureAuthorizationRuleListResult": { + "description": "The list of shared access policies with a next link.", + "type": "object", + "properties": { + "value": { + "description": "The list of shared access policies.", + "type": "array", + "items": { + "$ref": "#/definitions/SharedAccessSignatureAuthorizationRule" + } + }, + "nextLink": { + "description": "The next link.", + "type": "string", + "readOnly": true + } + } + }, + "OperationListResult": { + "description": "Result of the request to list IoT Hub operations. It contains a list of operations and a URL link to get the next set of results.", + "properties": { + "value": { + "description": "List of IoT Hub operations supported by the Microsoft.Devices resource provider.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Operation" + } + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "Operation": { + "description": "IoT Hub REST API operation", + "type": "object", + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "Operation name: {provider}/{resource}/{read | write | action | delete}" + }, + "display": { + "description": "The object that represents the operation.", + "properties": { + "provider": { + "readOnly": true, + "type": "string", + "description": "Service provider: Microsoft Devices" + }, + "resource": { + "readOnly": true, + "type": "string", + "description": "Resource Type: IotHubs" + }, + "operation": { + "readOnly": true, + "type": "string", + "description": "Name of the operation" + }, + "description": { + "readOnly": true, + "type": "string", + "description": "Description of the operation" + } + } + } + } + }, + "ErrorDetails": { + "description": "Error details.", + "type": "object", + "properties": { + "code": { + "description": "The error code.", + "type": "string", + "readOnly": true + }, + "httpStatusCode": { + "description": "The HTTP status code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "The error message.", + "type": "string", + "readOnly": true + }, + "details": { + "description": "The error details.", + "type": "string", + "readOnly": true + } + } + }, + "IotHubQuotaMetricInfoListResult": { + "description": "The JSON-serialized array of IotHubQuotaMetricInfo objects with a next link.", + "type": "object", + "properties": { + "value": { + "description": "The array of quota metrics objects.", + "type": "array", + "items": { + "$ref": "#/definitions/IotHubQuotaMetricInfo" + } + }, + "nextLink": { + "description": "The next link.", + "type": "string", + "readOnly": true + } + } + }, + "EndpointHealthDataListResult": { + "description": "The JSON-serialized array of EndpointHealthData objects with a next link.", + "type": "object", + "properties": { + "value": { + "description": "JSON-serialized array of Endpoint health data", + "type": "array", + "items": { + "$ref": "#/definitions/EndpointHealthData" + } + }, + "nextLink": { + "description": "Link to more results", + "type": "string", + "readOnly": true + } + } + }, + "EndpointHealthData": { + "description": "The health data for an endpoint", + "type": "object", + "properties": { + "endpointId": { + "description": "Id of the endpoint", + "type": "string" + }, + "healthStatus": { + "description": "Health statuses have following meanings. The 'healthy' status shows that the endpoint is accepting messages as expected. The 'unhealthy' status shows that the endpoint is not accepting messages as expected and IoT Hub is retrying to send data to this endpoint. The status of an unhealthy endpoint will be updated to healthy when IoT Hub has established an eventually consistent state of health. The 'dead' status shows that the endpoint is not accepting messages, after IoT Hub retried sending messages for the retrial period. See IoT Hub metrics to identify errors and monitor issues with endpoints. The 'unknown' status shows that the IoT Hub has not established a connection with the endpoint. No messages have been delivered to or rejected from this endpoint", + "enum": [ + "unknown", + "healthy", + "degraded", + "unhealthy", + "dead" + ], + "type": "string", + "x-ms-enum": { + "name": "EndpointHealthStatus", + "modelAsString": true + } + }, + "lastKnownError": { + "description": "Last error obtained when a message failed to be delivered to iot hub", + "type": "string" + }, + "lastKnownErrorTime": { + "description": "Time at which the last known error occurred", + "type": "string", + "format": "date-time-rfc1123" + }, + "lastSuccessfulSendAttemptTime": { + "description": "Last time iot hub successfully sent a message to the endpoint", + "type": "string", + "format": "date-time-rfc1123" + }, + "lastSendAttemptTime": { + "description": "Last time iot hub tried to send a message to the endpoint", + "type": "string", + "format": "date-time-rfc1123" + } + } + }, + "RegistryStatistics": { + "description": "Identity registry statistics.", + "type": "object", + "properties": { + "totalDeviceCount": { + "format": "int64", + "description": "The total count of devices in the identity registry.", + "type": "integer", + "readOnly": true + }, + "enabledDeviceCount": { + "format": "int64", + "description": "The count of enabled devices in the identity registry.", + "type": "integer", + "readOnly": true + }, + "disabledDeviceCount": { + "format": "int64", + "description": "The count of disabled devices in the identity registry.", + "type": "integer", + "readOnly": true + } + } + }, + "JobResponseListResult": { + "description": "The JSON-serialized array of JobResponse objects with a next link.", + "type": "object", + "properties": { + "value": { + "description": "The array of JobResponse objects.", + "type": "array", + "items": { + "$ref": "#/definitions/JobResponse" + } + }, + "nextLink": { + "description": "The next link.", + "type": "string", + "readOnly": true + } + } + }, + "IotHubSkuDescription": { + "description": "SKU properties.", + "type": "object", + "properties": { + "resourceType": { + "description": "The type of the resource.", + "type": "string", + "readOnly": true + }, + "sku": { + "description": "The type of the resource.", + "$ref": "#/definitions/IotHubSkuInfo" + }, + "capacity": { + "description": "IotHub capacity", + "$ref": "#/definitions/IotHubCapacity" + } + }, + "required": [ + "sku", + "capacity" + ] + }, + "TagsResource": { + "properties": { + "tags": { + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "description": "A container holding only the Tags for a resource, allowing the user to update the tags on an IoT Hub instance." + }, + "IotHubCapacity": { + "description": "IoT Hub capacity information.", + "type": "object", + "properties": { + "minimum": { + "format": "int64", + "description": "The minimum number of units.", + "type": "integer", + "minimum": 1, + "maximum": 1, + "readOnly": true + }, + "maximum": { + "format": "int64", + "description": "The maximum number of units.", + "type": "integer", + "readOnly": true + }, + "default": { + "format": "int64", + "description": "The default number of units.", + "type": "integer", + "readOnly": true + }, + "scaleType": { + "description": "The type of the scaling enabled.", + "enum": [ + "Automatic", + "Manual", + "None" + ], + "readOnly": true, + "type": "string", + "x-ms-enum": { + "name": "IotHubScaleType", + "modelAsString": false + } + } + } + }, + "EventHubConsumerGroupsListResult": { + "description": "The JSON-serialized array of Event Hub-compatible consumer group names with a next link.", + "type": "object", + "properties": { + "value": { + "description": "List of consumer groups objects", + "type": "array", + "items": { + "$ref": "#/definitions/EventHubConsumerGroupInfo" + } + }, + "nextLink": { + "description": "The next link.", + "type": "string", + "readOnly": true + } + } + }, + "EventHubConsumerGroupBodyDescription": { + "description": "The EventHub consumer group.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/EventHubConsumerGroupName" + } + }, + "required": [ + "properties" + ] + }, + "EventHubConsumerGroupName": { + "description": "The EventHub consumer group name.", + "type": "object", + "properties": { + "name": { + "description": "EventHub consumer group name", + "type": "string" + } + }, + "required": [ + "name" + ] + }, + "EventHubConsumerGroupInfo": { + "description": "The properties of the EventHubConsumerGroupInfo object.", + "x-ms-azure-resource": true, + "type": "object", + "properties": { + "properties": { + "description": "The tags.", + "type": "object", + "additionalProperties": {} + }, + "id": { + "description": "The Event Hub-compatible consumer group identifier.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The Event Hub-compatible consumer group name.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "the resource type.", + "type": "string", + "readOnly": true + }, + "etag": { + "description": "The etag.", + "type": "string", + "readOnly": true + } + } + }, + "IotHubSkuDescriptionListResult": { + "description": "The JSON-serialized array of IotHubSkuDescription objects with a next link.", + "type": "object", + "properties": { + "value": { + "description": "The array of IotHubSkuDescription.", + "type": "array", + "items": { + "$ref": "#/definitions/IotHubSkuDescription" + } + }, + "nextLink": { + "description": "The next link.", + "type": "string", + "readOnly": true + } + } + }, + "JobResponse": { + "description": "The properties of the Job Response object.", + "type": "object", + "properties": { + "jobId": { + "description": "The job identifier.", + "type": "string", + "readOnly": true + }, + "startTimeUtc": { + "format": "date-time-rfc1123", + "description": "The start time of the job.", + "type": "string", + "readOnly": true + }, + "endTimeUtc": { + "format": "date-time-rfc1123", + "description": "The time the job stopped processing.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The type of the job.", + "enum": [ + "unknown", + "export", + "import", + "backup", + "readDeviceProperties", + "writeDeviceProperties", + "updateDeviceConfiguration", + "rebootDevice", + "factoryResetDevice", + "firmwareUpdate" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "JobType", + "modelAsString": true + } + }, + "status": { + "description": "The status of the job.", + "enum": [ + "unknown", + "enqueued", + "running", + "completed", + "failed", + "cancelled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "JobStatus", + "modelAsString": false + } + }, + "failureReason": { + "description": "If status == failed, this string containing the reason for the failure.", + "type": "string", + "readOnly": true + }, + "statusMessage": { + "description": "The status message for the job.", + "type": "string", + "readOnly": true + }, + "parentJobId": { + "description": "The job identifier of the parent job, if any.", + "type": "string", + "readOnly": true + } + } + }, + "IotHubDescriptionListResult": { + "description": "The JSON-serialized array of IotHubDescription objects with a next link.", + "type": "object", + "properties": { + "value": { + "description": "The array of IotHubDescription objects.", + "type": "array", + "items": { + "$ref": "#/definitions/IotHubDescription" + } + }, + "nextLink": { + "description": "The next link.", + "type": "string", + "readOnly": true + } + } + }, + "IotHubQuotaMetricInfo": { + "description": "Quota metrics properties.", + "type": "object", + "properties": { + "name": { + "description": "The name of the quota metric.", + "type": "string", + "readOnly": true + }, + "currentValue": { + "format": "int64", + "description": "The current value for the quota metric.", + "type": "integer", + "readOnly": true + }, + "maxValue": { + "format": "int64", + "description": "The maximum value of the quota metric.", + "type": "integer", + "readOnly": true + } + } + }, + "OperationInputs": { + "description": "Input values.", + "type": "object", + "properties": { + "name": { + "description": "The name of the IoT hub to check.", + "type": "string" + } + }, + "required": [ + "name" + ] + }, + "IotHubNameAvailabilityInfo": { + "description": "The properties indicating whether a given IoT hub name is available.", + "type": "object", + "properties": { + "nameAvailable": { + "description": "The value which indicates whether the provided name is available.", + "type": "boolean", + "readOnly": true + }, + "reason": { + "description": "The reason for unavailability.", + "enum": [ + "Invalid", + "AlreadyExists" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "IotHubNameUnavailabilityReason", + "modelAsString": false + } + }, + "message": { + "description": "The detailed reason message.", + "type": "string" + } + } + }, + "UserSubscriptionQuotaListResult": { + "type": "object", + "description": "Json-serialized array of User subscription quota response", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/UserSubscriptionQuota" + } + }, + "nextLink": { + "type": "string", + "readOnly": true + } + } + }, + "UserSubscriptionQuota": { + "description": "User subscription quota response", + "type": "object", + "properties": { + "id": { + "description": "IotHub type id", + "type": "string" + }, + "type": { + "description": "Response type", + "type": "string" + }, + "unit": { + "description": "Unit of IotHub type", + "type": "string" + }, + "currentValue": { + "description": "Current number of IotHub type", + "format": "int32", + "type": "integer" + }, + "limit": { + "description": "Numerical limit on IotHub type", + "format": "int32", + "type": "integer" + }, + "name": { + "description": "IotHub type", + "$ref": "#/definitions/Name" + } + } + }, + "Name": { + "description": "Name of Iot Hub type", + "type": "object", + "properties": { + "value": { + "description": "IotHub type", + "type": "string" + }, + "localizedValue": { + "description": "Localized value of name", + "type": "string" + } + } + }, + "TestAllRoutesInput": { + "description": "Input for testing all routes", + "type": "object", + "properties": { + "routingSource": { + "description": "Routing source", + "enum": [ + "Invalid", + "DeviceMessages", + "TwinChangeEvents", + "DeviceLifecycleEvents", + "DeviceJobLifecycleEvents", + "DeviceConnectionStateEvents" + ], + "type": "string", + "x-ms-enum": { + "name": "RoutingSource", + "modelAsString": true + } + }, + "message": { + "description": "Routing message", + "$ref": "#/definitions/RoutingMessage" + }, + "twin": { + "description": "Routing Twin Reference", + "$ref": "#/definitions/RoutingTwin" + } + } + }, + "RoutingTwin": { + "description": "Twin reference input parameter. This is an optional parameter", + "type": "object", + "properties": { + "tags": { + "description": "Twin Tags", + "type": "object" + }, + "properties": { + "properties": { + "desired": { + "description": "Twin desired properties", + "type": "object" + }, + "reported": { + "description": "Twin desired properties", + "type": "object" + } + } + } + } + }, + "RoutingMessage": { + "description": "Routing message", + "type": "object", + "properties": { + "body": { + "description": "Body of routing message", + "type": "string" + }, + "appProperties": { + "description": "App properties", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "systemProperties": { + "description": "System properties", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "TestAllRoutesResult": { + "description": "Result of testing all routes", + "type": "object", + "properties": { + "routes": { + "description": "JSON-serialized array of matched routes", + "type": "array", + "items": { + "$ref": "#/definitions/MatchedRoute" + } + } + } + }, + "MatchedRoute": { + "description": "Routes that matched", + "type": "object", + "properties": { + "properties": { + "description": "Properties of routes that matched", + "$ref": "#/definitions/RouteProperties" + } + } + }, + "TestRouteInput": { + "required": [ + "route" + ], + "description": "Input for testing route", + "type": "object", + "properties": { + "message": { + "description": "Routing message", + "$ref": "#/definitions/RoutingMessage" + }, + "route": { + "description": "Route properties", + "$ref": "#/definitions/RouteProperties" + }, + "twin": { + "description": "Routing Twin Reference", + "$ref": "#/definitions/RoutingTwin" + } + } + }, + "TestRouteResult": { + "description": "Result of testing one route", + "type": "object", + "properties": { + "result": { + "description": "Result of testing route", + "enum": [ + "undefined", + "false", + "true" + ], + "type": "string", + "x-ms-enum": { + "name": "TestResultStatus", + "modelAsString": true + } + }, + "details": { + "description": "Detailed result of testing route", + "$ref": "#/definitions/TestRouteResultDetails" + } + } + }, + "TestRouteResultDetails": { + "description": "Detailed result of testing a route", + "type": "object", + "properties": { + "compilationErrors": { + "description": "JSON-serialized list of route compilation errors", + "type": "array", + "items": { + "$ref": "#/definitions/RouteCompilationError" + } + } + } + }, + "RouteCompilationError": { + "description": "Compilation error when evaluating route", + "type": "object", + "properties": { + "message": { + "description": "Route error message", + "type": "string" + }, + "severity": { + "description": "Severity of the route error", + "enum": [ + "error", + "warning" + ], + "type": "string", + "x-ms-enum": { + "name": "RouteErrorSeverity", + "modelAsString": true + } + }, + "location": { + "description": "Location where the route error happened", + "$ref": "#/definitions/RouteErrorRange" + } + } + }, + "RouteErrorRange": { + "description": "Range of route errors", + "type": "object", + "properties": { + "start": { + "description": "Start where the route error happened", + "$ref": "#/definitions/RouteErrorPosition" + }, + "end": { + "description": "End where the route error happened", + "$ref": "#/definitions/RouteErrorPosition" + } + } + }, + "RouteErrorPosition": { + "description": "Position where the route error happened", + "type": "object", + "properties": { + "line": { + "description": "Line where the route error happened", + "format": "int32", + "type": "integer" + }, + "column": { + "description": "Column where the route error happened", + "format": "int32", + "type": "integer" + } + } + }, + "ExportDevicesRequest": { + "description": "Use to provide parameters when requesting an export of all devices in the IoT hub.", + "type": "object", + "properties": { + "exportBlobContainerUri": { + "description": "The export blob container URI.", + "type": "string" + }, + "excludeKeys": { + "description": "The value indicating whether keys should be excluded during export.", + "type": "boolean" + }, + "exportBlobName": { + "description": "The name of the blob that will be created in the provided output blob container. This blob will contain the exported device registry information for the IoT Hub.", + "type": "string" + }, + "authenticationType": { + "description": "Specifies authentication type being used for connecting to the storage account.", + "enum": [ + "keyBased", + "identityBased" + ], + "type": "string", + "x-ms-enum": { + "name": "AuthenticationType", + "modelAsString": true + } + }, + "identity": { + "description": "Managed identity properties of storage endpoint for export devices.", + "$ref": "#/definitions/ManagedIdentity" + }, + "includeConfigurations": { + "description": "The value indicating whether configurations should be exported.", + "type": "boolean" + }, + "configurationsBlobName": { + "description": "The name of the blob that will be created in the provided output blob container. This blob will contain the exported configurations for the Iot Hub.", + "type": "string" + } + }, + "required": [ + "exportBlobContainerUri", + "excludeKeys" + ] + }, + "ImportDevicesRequest": { + "description": "Use to provide parameters when requesting an import of all devices in the hub.", + "type": "object", + "properties": { + "inputBlobContainerUri": { + "description": "The input blob container URI.", + "type": "string" + }, + "outputBlobContainerUri": { + "description": "The output blob container URI.", + "type": "string" + }, + "inputBlobName": { + "description": "The blob name to be used when importing from the provided input blob container.", + "type": "string" + }, + "outputBlobName": { + "description": "The blob name to use for storing the status of the import job.", + "type": "string" + }, + "authenticationType": { + "description": "Specifies authentication type being used for connecting to the storage account.", + "enum": [ + "keyBased", + "identityBased" + ], + "type": "string", + "x-ms-enum": { + "name": "AuthenticationType", + "modelAsString": true + } + }, + "identity": { + "description": "Managed identity properties of storage endpoint for import devices.", + "$ref": "#/definitions/ManagedIdentity" + }, + "includeConfigurations": { + "description": "The value indicating whether configurations should be imported.", + "type": "boolean" + }, + "configurationsBlobName": { + "description": "The blob name to be used when importing configurations from the provided input blob container.", + "type": "string" + } + }, + "required": [ + "inputBlobContainerUri", + "outputBlobContainerUri" + ] + }, + "FailoverInput": { + "description": "Use to provide failover region when requesting manual Failover for a hub.", + "type": "object", + "properties": { + "failoverRegion": { + "description": "Region the hub will be failed over to", + "type": "string" + } + }, + "required": [ + "failoverRegion" + ] + }, + "IotHubLocationDescription": { + "description": "Public representation of one of the locations where a resource is provisioned.", + "type": "object", + "properties": { + "location": { + "description": "The name of the Azure region", + "type": "string" + }, + "role": { + "description": "The role of the region, can be either primary or secondary. The primary region is where the IoT hub is currently provisioned. The secondary region is the Azure disaster recovery (DR) paired region and also the region where the IoT hub can failover to.", + "enum": [ + "primary", + "secondary" + ], + "type": "string", + "x-ms-enum": { + "name": "IotHubReplicaRoleType", + "modelAsString": true + } + } + } + }, + "ArmIdentity": { + "type": "object", + "properties": { + "principalId": { + "description": "Principal Id", + "type": "string", + "readOnly": true + }, + "tenantId": { + "description": "Tenant Id", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The type of identity used for the resource. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user assigned identities. The type 'None' will remove any identities from the service.", + "type": "string", + "enum": [ + "SystemAssigned", + "UserAssigned", + "SystemAssigned, UserAssigned", + "None" + ], + "x-ms-enum": { + "name": "ResourceIdentityType", + "modelAsString": false + } + }, + "userAssignedIdentities": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/ArmUserIdentity" + } + } + } + }, + "ArmUserIdentity": { + "type": "object", + "properties": { + "principalId": { + "type": "string", + "readOnly": true + }, + "clientId": { + "type": "string", + "readOnly": true + } + } + }, + "ManagedIdentity": { + "description": "The properties of the Managed identity.", + "type": "object", + "properties": { + "userAssignedIdentity": { + "type": "string", + "description": "The user assigned identity." + } + } + } + }, + "parameters": { + "subscriptionId": { + "name": "subscriptionId", + "in": "path", + "description": "The subscription identifier.", + "required": true, + "type": "string" + }, + "api-version": { + "name": "api-version", + "in": "query", + "description": "The version of the API.", + "required": true, + "type": "string" + }, + "resourceGroupName": { + "name": "resourceGroupName", + "description": "The name of the resource group that contains the IoT hub.", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "resourceName": { + "name": "resourceName", + "in": "path", + "description": "The name of the IoT hub.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "certificateName": { + "name": "certificateName", + "in": "path", + "description": "The name of the certificate", + "required": true, + "type": "string", + "pattern": "^[A-Za-z0-9-._]{1,64}$", + "x-ms-parameter-location": "method" + }, + "groupId": { + "name": "groupId", + "in": "path", + "description": "The name of the private link resource", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "privateEndpointConnectionName": { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/iothub/resource-manager/readme.azureresourceschema.md b/specification/iothub/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index a3004e5e4dc3..000000000000 --- a/specification/iothub/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,216 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-devices-2020-08-31-preview - - tag: schema-devices-2020-08-31 - - tag: schema-devices-2020-08-01 - - tag: schema-devices-2020-07-10-preview - - tag: schema-devices-2020-06-15 - - tag: schema-devices-2020-04-01 - - tag: schema-devices-2020-03-01 - - tag: schema-devices-2019-11-04 - - tag: schema-devices-2019-07-01-preview - - tag: schema-devices-2019-03-22-preview - - tag: schema-devices-2019-03-22 - - tag: schema-devices-2018-12-01-preview - - tag: schema-devices-2018-04-01 - - tag: schema-devices-2018-01-22 - - tag: schema-devices-2017-07-01 - - tag: schema-devices-2017-01-19 - - tag: schema-devices-2016-02-03 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-devices-2020-08-31-preview and azureresourceschema - -``` yaml $(tag) == 'schema-devices-2020-08-31-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Devices/preview/2020-08-31-preview/iothub.json - -``` - -### Tag: schema-devices-2020-08-31 and azureresourceschema - -``` yaml $(tag) == 'schema-devices-2020-08-31' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Devices/stable/2020-08-31/iothub.json - -``` - -### Tag: schema-devices-2020-08-01 and azureresourceschema - -``` yaml $(tag) == 'schema-devices-2020-08-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Devices/stable/2020-08-01/iothub.json - -``` - -### Tag: schema-devices-2020-07-10-preview and azureresourceschema - -``` yaml $(tag) == 'schema-devices-2020-07-10-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Devices/preview/2020-07-10-preview/iothub.json - -``` - -### Tag: schema-devices-2020-06-15 and azureresourceschema - -``` yaml $(tag) == 'schema-devices-2020-06-15' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Devices/stable/2020-06-15/iothub.json - -``` - -### Tag: schema-devices-2020-04-01 and azureresourceschema - -``` yaml $(tag) == 'schema-devices-2020-04-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Devices/stable/2020-04-01/iothub.json - -``` - -### Tag: schema-devices-2020-03-01 and azureresourceschema - -``` yaml $(tag) == 'schema-devices-2020-03-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Devices/stable/2020-03-01/iothub.json - -``` - -### Tag: schema-devices-2019-11-04 and azureresourceschema - -``` yaml $(tag) == 'schema-devices-2019-11-04' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Devices/stable/2019-11-04/iothub.json - -``` - -### Tag: schema-devices-2019-07-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-devices-2019-07-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Devices/preview/2019-07-01-preview/iothub.json - -``` - -### Tag: schema-devices-2019-03-22-preview and azureresourceschema - -``` yaml $(tag) == 'schema-devices-2019-03-22-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Devices/preview/2019-03-22-preview/iothub.json - -``` - -### Tag: schema-devices-2019-03-22 and azureresourceschema - -``` yaml $(tag) == 'schema-devices-2019-03-22' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Devices/stable/2019-03-22/iothub.json - -``` - -### Tag: schema-devices-2018-12-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-devices-2018-12-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Devices/preview/2018-12-01-preview/iothub.json - -``` - -### Tag: schema-devices-2018-04-01 and azureresourceschema - -``` yaml $(tag) == 'schema-devices-2018-04-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Devices/stable/2018-04-01/iothub.json - -``` - -### Tag: schema-devices-2018-01-22 and azureresourceschema - -``` yaml $(tag) == 'schema-devices-2018-01-22' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Devices/stable/2018-01-22/iothub.json - -``` - -### Tag: schema-devices-2017-07-01 and azureresourceschema - -``` yaml $(tag) == 'schema-devices-2017-07-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Devices/stable/2017-07-01/iothub.json - -``` - -### Tag: schema-devices-2017-01-19 and azureresourceschema - -``` yaml $(tag) == 'schema-devices-2017-01-19' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Devices/stable/2017-01-19/iothub.json - -``` - -### Tag: schema-devices-2016-02-03 and azureresourceschema - -``` yaml $(tag) == 'schema-devices-2016-02-03' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Devices/stable/2016-02-03/iothub.json - -``` diff --git a/specification/iothub/resource-manager/readme.go.md b/specification/iothub/resource-manager/readme.go.md index 0d97d1318696..7c8970ce5386 100644 --- a/specification/iothub/resource-manager/readme.go.md +++ b/specification/iothub/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: devices clear-output-folder: true ``` @@ -13,6 +13,7 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-preview-2021-03 - tag: package-2020-03 - tag: package-preview-2019-07 - tag: package-preview-2019-03 @@ -24,6 +25,15 @@ batch: - tag: package-2016-02 ``` +### Tag: package-preview-2021-03 and go + +These settings apply only when `--tag=package-preview-2021-03 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-preview-2021-03' && $(go) +output-folder: $(go-sdk-folder)/services/preview/iothub/mgmt/2021-03-03-preview/$(namespace) +``` + ### Tag: package-2020-03 and go These settings apply only when `--tag=package-2020-03 --go` is specified on the command line. diff --git a/specification/iothub/resource-manager/readme.md b/specification/iothub/resource-manager/readme.md index fcad7c02c0ac..3a5861d84b29 100644 --- a/specification/iothub/resource-manager/readme.md +++ b/specification/iothub/resource-manager/readme.md @@ -26,18 +26,36 @@ These are the global settings for the IotHub API. ``` yaml openapi-type: arm -tag: package-preview-2021-03 +tag: package-preview-2021-07 ``` +### Tag: package-preview-2021-07 + +These settings apply only when `--tag=package-preview-2021-07` is specified on the command line. + +```yaml $(tag) == 'package-preview-2021-07' +input-file: + - Microsoft.Devices/preview/2021-07-01-preview/iothub.json +``` +### Tag: package-2021-03 + +These settings apply only when `--tag=package-2021-03` is specified on the command line. + +``` yaml $(tag) == 'package-2021-03' +input-file: + - Microsoft.Devices/stable/2021-03-31/iothub.json +``` + ### Tag: package-preview-2021-03 These settings apply only when `--tag=package-preview-2021-03` is specified on the command line. -```yaml $(tag) == 'package-preview-2021-03' +``` yaml $(tag) == 'package-preview-2021-03' input-file: - Microsoft.Devices/preview/2021-03-03-preview/iothub.json ``` + ### Tag: package-preview-2021-02 These settings apply only when `--tag=package-preview-2021-02` is specified on the command line. @@ -224,6 +242,7 @@ swagger-to-sdk: - repo: azure-sdk-for-python after_scripts: - python ./scripts/multiapi_init_gen.py azure-mgmt-iothub + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-java - repo: azure-sdk-for-go - repo: azure-sdk-for-js @@ -232,8 +251,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_iot_hub'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js iothub/resource-manager ``` ## C# @@ -250,6 +267,10 @@ csharp: clear-output-folder: true ``` +## Python + +See configuration in [readme.python.md](./readme.python.md) + ## Go See configuration in [readme.go.md](./readme.go.md) @@ -257,7 +278,3 @@ See configuration in [readme.go.md](./readme.go.md) ## Java See configuration in [readme.java.md](./readme.go.md) - -## AzureResourceSchema - -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/iothub/resource-manager/readme.python.md b/specification/iothub/resource-manager/readme.python.md index c46cafabce12..52813f675475 100644 --- a/specification/iothub/resource-manager/readme.python.md +++ b/specification/iothub/resource-manager/readme.python.md @@ -4,7 +4,7 @@ These settings apply only when `--python` is specified on the command line. Please also specify `--python-sdks-folder=`. Use `--python-mode=update` if you already have a setup.py and just want to update the code itself. -``` yaml $(python) +``` yaml $(python) && !$(track2) python: azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION @@ -16,14 +16,27 @@ python: no-namespace-folders: true ``` +``` yaml $(python) && $(track2) +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +namespace: azure.mgmt.iothub +package-name: azure-mgmt-iothub +package-version: 0.8.2 +clear-output-folder: true +no-namespace-folders: true +``` + ### Python multi-api Generate all API versions currently shipped for this package -```yaml $(python) && $(multiapi) +```yaml $(python) && $(multiapi) && !$(track2) batch: + - tag: package-2021-03 + - tag: package-preview-2021-03 - tag: package-2020-03 - tag: package-2019-11 + - tag: package-preview-2019-07 - tag: package-2019-03 - tag: package-2018-04 - tag: package-2018-01 @@ -32,12 +45,62 @@ batch: - tag: package-2016-02 ``` +```yaml $(python) && $(multiapi) && $(track2) +batch: + - tag: package-2021-03 + - tag: package-preview-2021-03 + - tag: package-2020-03 + - tag: package-2019-11 + - tag: package-preview-2019-07 + - tag: package-2019-03 + - tag: package-2018-04 + - tag: package-2018-01 + - tag: package-2017-07 + - tag: package-2017-01 + - tag: package-2016-02 + - multiapiscript: true +``` + +``` yaml $(multiapiscript) +output-folder: $(python-sdks-folder)/iothub/azure-mgmt-iothub/azure/mgmt/iothub/ +clear-output-folder: false +perform-load: false +``` + +### Tag: package-2021-03 and python + +These settings apply only when `--tag=package-2021-03 --python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-2021-03' && $(python) +namespace: azure.mgmt.iothub.v2021_03_31 +output-folder: $(python-sdks-folder)/iothub/azure-mgmt-iothub/azure/mgmt/iothub/v2021_03_31 +python: + namespace: azure.mgmt.iothub.v2021_03_31 + output-folder: $(python-sdks-folder)/iothub/azure-mgmt-iothub/azure/mgmt/iothub/v2021_03_31 +``` + +### Tag: package-preview-2021-03 and python + +These settings apply only when `--tag=package-preview-2021-03 --python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-preview-2021-03' && $(python) +namespace: azure.mgmt.iothub.v2021_03_03_preview +output-folder: $(python-sdks-folder)/iothub/azure-mgmt-iothub/azure/mgmt/iothub/v2021_03_03_preview +python: + namespace: azure.mgmt.iothub.v2021_03_03_preview + output-folder: $(python-sdks-folder)/iothub/azure-mgmt-iothub/azure/mgmt/iothub/v2021_03_03_preview +``` + ### Tag: package-2020-03 and python These settings apply only when `--tag=package-2020-03 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. ``` yaml $(tag) == 'package-2020-03' && $(python) +namespace: azure.mgmt.iothub.v2020_03_01 +output-folder: $(python-sdks-folder)/iothub/azure-mgmt-iothub/azure/mgmt/iothub/v2020_03_01 python: namespace: azure.mgmt.iothub.v2020_03_01 output-folder: $(python-sdks-folder)/iothub/azure-mgmt-iothub/azure/mgmt/iothub/v2020_03_01 @@ -49,17 +112,34 @@ These settings apply only when `--tag=package-2019-11 --python` is specified on Please also specify `--python-sdks-folder=`. ``` yaml $(tag) == 'package-2019-11' && $(python) +namespace: azure.mgmt.iothub.v2019_11_04 +output-folder: $(python-sdks-folder)/iothub/azure-mgmt-iothub/azure/mgmt/iothub/v2019_11_04 python: namespace: azure.mgmt.iothub.v2019_11_04 output-folder: $(python-sdks-folder)/iothub/azure-mgmt-iothub/azure/mgmt/iothub/v2019_11_04 ``` +### Tag: package-preview-2019-07 and python + +These settings apply only when `--tag=package-preview-2019-07 --python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-preview-2019-07' && $(python) +namespace: azure.mgmt.iothub.v2019_07_01_preview +output-folder: $(python-sdks-folder)/iothub/azure-mgmt-iothub/azure/mgmt/iothub/v2019_07_01_preview +python: + namespace: azure.mgmt.iothub.v2019_07_01_preview + output-folder: $(python-sdks-folder)/iothub/azure-mgmt-iothub/azure/mgmt/iothub/v2019_07_01_preview +``` + ### Tag: package-2019-03 and python These settings apply only when `--tag=package-2019-03 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. ``` yaml $(tag) == 'package-2019-03' && $(python) +namespace: azure.mgmt.iothub.v2019_03_22 +output-folder: $(python-sdks-folder)/iothub/azure-mgmt-iothub/azure/mgmt/iothub/v2019_03_22 python: namespace: azure.mgmt.iothub.v2019_03_22 output-folder: $(python-sdks-folder)/iothub/azure-mgmt-iothub/azure/mgmt/iothub/v2019_03_22 @@ -71,6 +151,8 @@ These settings apply only when `--tag=package-2018-04 --python` is specified on Please also specify `--python-sdks-folder=`. ``` yaml $(tag) == 'package-2018-04' && $(python) +namespace: azure.mgmt.iothub.v2018_04_01 +output-folder: $(python-sdks-folder)/iothub/azure-mgmt-iothub/azure/mgmt/iothub/v2018_04_01 python: namespace: azure.mgmt.iothub.v2018_04_01 output-folder: $(python-sdks-folder)/iothub/azure-mgmt-iothub/azure/mgmt/iothub/v2018_04_01 @@ -82,6 +164,8 @@ These settings apply only when `--tag=package-2018-01 --python` is specified on Please also specify `--python-sdks-folder=`. ``` yaml $(tag) == 'package-2018-01' && $(python) +namespace: azure.mgmt.iothub.v2018_01_22 +output-folder: $(python-sdks-folder)/iothub/azure-mgmt-iothub/azure/mgmt/iothub/v2018_01_22 python: namespace: azure.mgmt.iothub.v2018_01_22 output-folder: $(python-sdks-folder)/iothub/azure-mgmt-iothub/azure/mgmt/iothub/v2018_01_22 @@ -93,6 +177,8 @@ These settings apply only when `--tag=package-2017-07 --python` is specified on Please also specify `--python-sdks-folder=`. ``` yaml $(tag) == 'package-2017-07' && $(python) +namespace: azure.mgmt.iothub.v2017_07_01 +output-folder: $(python-sdks-folder)/iothub/azure-mgmt-iothub/azure/mgmt/iothub/v2017_07_01 python: namespace: azure.mgmt.iothub.v2017_07_01 output-folder: $(python-sdks-folder)/iothub/azure-mgmt-iothub/azure/mgmt/iothub/v2017_07_01 @@ -104,6 +190,8 @@ These settings apply only when `--tag=package-2017-01 --python` is specified on Please also specify `--python-sdks-folder=`. ``` yaml $(tag) == 'package-2017-01' && $(python) +namespace: azure.mgmt.iothub.v2017_01_19 +output-folder: $(python-sdks-folder)/iothub/azure-mgmt-iothub/azure/mgmt/iothub/v2017_01_19 python: namespace: azure.mgmt.iothub.v2017_01_19 output-folder: $(python-sdks-folder)/iothub/azure-mgmt-iothub/azure/mgmt/iothub/v2017_01_19 @@ -115,6 +203,8 @@ These settings apply only when `--tag=package-2016-02 --python` is specified on Please also specify `--python-sdks-folder=`. ``` yaml $(tag) == 'package-2016-02' && $(python) +namespace: azure.mgmt.iothub.v2016_02_03 +output-folder: $(python-sdks-folder)/iothub/azure-mgmt-iothub/azure/mgmt/iothub/v2016_02_03 python: namespace: azure.mgmt.iothub.v2016_02_03 output-folder: $(python-sdks-folder)/iothub/azure-mgmt-iothub/azure/mgmt/iothub/v2016_02_03 diff --git a/specification/iotsecurity/resource-manager/Microsoft.IoTSecurity/preview/2021-02-01-preview/devices.json b/specification/iotsecurity/resource-manager/Microsoft.IoTSecurity/preview/2021-02-01-preview/devices.json new file mode 100644 index 000000000000..42c426802e0a --- /dev/null +++ b/specification/iotsecurity/resource-manager/Microsoft.IoTSecurity/preview/2021-02-01-preview/devices.json @@ -0,0 +1,746 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Defender for IoT", + "description": "API spec for Microsoft.IoTSecurity (Azure Defender for IoT) resource provider", + "version": "2021-02-01-preview" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.IoTSecurity/locations/{iotDefenderLocation}/deviceGroups/{deviceGroupName}/devices": { + "get": { + "x-ms-examples": { + "List devices": { + "$ref": "./examples/Devices/List.json" + } + }, + "tags": [ + "Devices" + ], + "description": "List devices", + "operationId": "Devices_List", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/IotDefenderLocation" + }, + { + "$ref": "#/parameters/DeviceGroupName" + }, + { + "in": "query", + "name": "$skipToken", + "required": false, + "type": "string", + "description": "Skip token used for pagination" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DeviceList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.IoTSecurity/locations/{iotDefenderLocation}/deviceGroups/{deviceGroupName}/devices/{deviceId}": { + "get": { + "x-ms-examples": { + "Get device": { + "$ref": "./examples/Devices/Get.json" + } + }, + "tags": [ + "Devices" + ], + "operationId": "Devices_Get", + "description": "Get device", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/IotDefenderLocation" + }, + { + "$ref": "#/parameters/DeviceGroupName" + }, + { + "$ref": "#/parameters/DeviceId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DeviceModel" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "DeviceList": { + "description": "List of devices", + "type": "object", + "properties": { + "value": { + "description": "List data", + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/DeviceModel" + } + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "When there are too many devices for one page, use this URI to fetch the next page." + } + } + }, + "DeviceModel": { + "type": "object", + "description": "Device", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Device properties", + "$ref": "#/definitions/DeviceProperties" + }, + "systemData": { + "readOnly": true, + "type": "object", + "description": "Azure Resource Manager metadata containing createdBy and modifiedBy information.", + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData" + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ] + }, + "DeviceProperties": { + "type": "object", + "description": "Device properties", + "properties": { + "schemaVersion": { + "readOnly": true, + "type": "string", + "description": "Version of the device model schema" + }, + "deviceDataSource": { + "readOnly": true, + "type": "string", + "$ref": "#/definitions/DeviceDataSource", + "description": "Device data source." + }, + "sensor": { + "readOnly": true, + "type": "object", + "description": "Sensor that scanned this device.", + "$ref": "#/definitions/Sensor" + }, + "mergedDevices": { + "readOnly": true, + "type": "array", + "description": "List of merged devices data", + "items": { + "$ref": "#/definitions/MergedDevice" + } + }, + "mergedToDeviceId": { + "readOnly": true, + "type": "string", + "description": "The device Id that this device was merged into" + }, + "onboardingStatus": { + "readOnly": true, + "type": "string", + "enum": [ + "Onboarded", + "NotOnboarded", + "NotSupported", + "InsufficientInfo" + ], + "x-ms-enum": { + "name": "OnboardingStatus", + "modelAsString": true + }, + "description": "Device onboarding status." + }, + "deviceName": { + "type": "string", + "description": "Device name" + }, + "deviceCategoryId": { + "type": "integer", + "format": "int32", + "minimum": 0, + "description": "Device category id" + }, + "deviceTypeId": { + "type": "integer", + "format": "int32", + "minimum": 0, + "description": "Device type id" + }, + "deviceSubTypeId": { + "type": "integer", + "format": "int32", + "minimum": 0, + "description": "Device sub type id" + }, + "deviceCategoryDisplayName": { + "readOnly": true, + "type": "string", + "description": "Device category display name" + }, + "deviceTypeDisplayName": { + "readOnly": true, + "type": "string", + "description": "Device type display name" + }, + "deviceSubTypeDisplayName": { + "readOnly": true, + "type": "string", + "description": "Device sub type display name" + }, + "profilingConfidence": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "Confidence of the device profile" + }, + "riskScore": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "risk score of the device." + }, + "criticality": { + "type": "string", + "enum": [ + "Low", + "Normal", + "High" + ], + "x-ms-enum": { + "name": "Criticality", + "modelAsString": true + }, + "description": "Device criticality." + }, + "deviceTags": { + "type": "array", + "description": "Device tags", + "items": { + "type": "string" + } + }, + "firstSeen": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "First time the device was seen." + }, + "lastSeen": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "Last time the device was seen." + }, + "lastUpdated": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "Last time the device was updated by the profiler." + }, + "hardware": { + "type": "object", + "description": "Device hardware data", + "$ref": "#/definitions/Hardware" + }, + "firmwares": { + "type": "array", + "description": "List of device firmwares.", + "items": { + "$ref": "#/definitions/Firmware" + } + }, + "operatingSystem": { + "type": "object", + "description": "Device operating system data", + "$ref": "#/definitions/OperatingSystem" + }, + "businessFunction": { + "type": "string", + "description": "Device business function" + }, + "purdueLevel": { + "type": "string", + "enum": [ + "ProcessControl", + "Supervisory", + "Enterprise" + ], + "x-ms-enum": { + "name": "PurdueLevel", + "modelAsString": true + }, + "description": "Purdue level of the device." + }, + "authorizedState": { + "type": "string", + "enum": [ + "Authorized", + "Unauthorized" + ], + "description": "Authorized state of the device.", + "x-ms-enum": { + "name": "AuthorizedState", + "modelAsString": true + } + }, + "programmingState": { + "readOnly": true, + "type": "string", + "enum": [ + "ProgrammingDevice", + "NotProgrammingDevice" + ], + "x-ms-enum": { + "name": "ProgrammingState", + "modelAsString": true + }, + "description": "Indicates whether this device is programming" + }, + "lastProgrammingTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "last time the device was programming or programed." + }, + "cpes": { + "readOnly": true, + "type": "array", + "description": "List of Common Platform Enumeration (CPE)", + "items": { + "type": "string" + } + }, + "nics": { + "readOnly": true, + "type": "array", + "description": "List of the device network interface cards.", + "items": { + "$ref": "#/definitions/Nic" + } + }, + "deviceStatus": { + "readOnly": true, + "type": "string", + "enum": [ + "Active", + "Inactive", + "Removed", + "Deleted" + ], + "x-ms-enum": { + "name": "DeviceStatus", + "modelAsString": true + }, + "description": "Device status." + }, + "slots": { + "readOnly": true, + "type": "array", + "description": "List of the device slot in the backplane", + "items": { + "$ref": "#/definitions/Slot" + } + }, + "parentDeviceId": { + "readOnly": true, + "type": "string", + "description": "For nested device, this is the parent device id." + }, + "parentRackNumber": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "For nested device, this is the rack number in the parent device that holds the nested device." + }, + "parentSlotNumber": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "For nested device, this is the slot number in the parent device that holds the nested device." + }, + "packages": { + "type": "array", + "description": "List of device packages", + "items": { + "$ref": "#/definitions/Package" + } + }, + "additionalFields": { + "type": "object", + "description": " A bag of fields which extends the device information." + } + } + }, + "Slot": { + "type": "object", + "description": "Slot data in PLC backplane", + "properties": { + "slotNumber": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "Slot number inside the rack" + }, + "rackNumber": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "Rack number in the backplane" + }, + "slotType": { + "type": "string", + "enum": [ + "Supply", + "AnalogIO", + "CommAdapter", + "DigitalIO", + "Cpu", + "Hmi", + "Generic" + ], + "x-ms-enum": { + "name": "SlotType", + "modelAsString": true + }, + "description": "Slot type." + }, + "hardwareVendor": { + "type": "string", + "description": "Hardware vendor of the slot." + }, + "hardwareRevision": { + "type": "string", + "description": "Hardware revision of the slot." + }, + "firmwareVersion": { + "type": "string", + "description": "Firmware revision of the slot." + }, + "model": { + "type": "string", + "description": "Model of the slot." + }, + "moduleVersion": { + "type": "string", + "description": "Module version of the slot." + }, + "serialNumber": { + "type": "string", + "description": "Serial number of the slot." + }, + "productCode": { + "type": "string", + "description": "Product code of the slot." + }, + "cpes": { + "readOnly": true, + "type": "array", + "description": "List of Common Platform Enumeration (CPE) of the slot", + "items": { + "type": "string" + } + }, + "additionalData": { + "type": "object", + "description": " A bag of fields which extends the slot information." + } + } + }, + "Nic": { + "type": "object", + "description": "Network interface card properties", + "properties": { + "lastSeen": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "Last seen time" + }, + "ipv4Address": { + "readOnly": true, + "type": "string", + "description": "Ipv4 address" + }, + "ipv6Address": { + "readOnly": true, + "type": "string", + "description": "Ipv6 address" + }, + "macAddress": { + "readOnly": true, + "type": "string", + "description": "Mac address" + }, + "networkAdapterVendor": { + "readOnly": true, + "type": "string", + "description": "Network adapter vendor." + }, + "macCertainty": { + "readOnly": true, + "type": "string", + "enum": [ + "Guess", + "Certain" + ], + "x-ms-enum": { + "name": "MacCertainty", + "modelAsString": true + }, + "description": "Indicates whether the association of the mac to the ip address is certain or a guess." + }, + "vlans": { + "readOnly": true, + "type": "array", + "description": "List of virtual LAN (vlan)", + "items": { + "type": "string" + } + } + } + }, + "Sensor": { + "type": "object", + "description": "Sensor that scanned the device", + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "Sensor name." + }, + "type": { + "readOnly": true, + "type": "string", + "enum": [ + "Ot", + "Enterprise" + ], + "x-ms-enum": { + "name": "SensorType", + "modelAsString": true + }, + "description": "Sensor type." + }, + "zone": { + "readOnly": true, + "type": "string", + "description": "Sensor zone." + }, + "site": { + "readOnly": true, + "type": "string", + "description": "Sensor site." + } + } + }, + "Hardware": { + "type": "object", + "description": "Device hardware data", + "properties": { + "model": { + "type": "string", + "description": "Hardware model." + }, + "vendor": { + "type": "string", + "description": "Hardware vendor." + }, + "serialNumber": { + "type": "string", + "description": "Hardware serial number." + } + } + }, + "Firmware": { + "type": "object", + "description": "Device firmware data", + "properties": { + "name": { + "type": "string", + "description": "Firmware name." + }, + "vendor": { + "type": "string", + "description": "Firmware vendor." + }, + "version": { + "type": "string", + "description": "Firmware version." + }, + "moduleAddress": { + "type": "string", + "description": "Firmware module address." + } + } + }, + "Package": { + "type": "object", + "description": "Device package data", + "properties": { + "name": { + "type": "string", + "description": "Package name." + }, + "version": { + "type": "string", + "description": "Package version." + } + } + }, + "OperatingSystem": { + "type": "object", + "description": "Device operating system data", + "properties": { + "build": { + "type": "string", + "description": "OS build" + }, + "distribution": { + "type": "string", + "description": "OS distribution" + }, + "version": { + "type": "string", + "description": "OS version" + }, + "platform": { + "type": "string", + "description": "OS platform" + }, + "architecture": { + "type": "string", + "description": "OS architecture" + } + } + }, + "MergedDevice": { + "readOnly": true, + "type": "object", + "description": "Merged device data", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "device id" + }, + "deviceDataSource": { + "readOnly": true, + "type": "string", + "$ref": "#/definitions/DeviceDataSource", + "description": "Device data source" + }, + "sensor": { + "readOnly": true, + "type": "object", + "$ref": "#/definitions/Sensor", + "description": "Device sensor data" + } + } + }, + "DeviceDataSource": { + "type": "string", + "enum": [ + "OtSensor", + "CorpSensor", + "Mde", + "Other" + ], + "x-ms-enum": { + "name": "DeviceDataSource", + "modelAsString": true + }, + "description": "Device data source" + } + }, + "parameters": { + "DeviceGroupName": { + "name": "deviceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "Device group name", + "x-ms-parameter-location": "method" + }, + "DeviceId": { + "name": "deviceId", + "in": "path", + "required": true, + "description": "Device Id", + "type": "string", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/iotsecurity/resource-manager/Microsoft.IoTSecurity/preview/2021-02-01-preview/examples/Devices/Get.json b/specification/iotsecurity/resource-manager/Microsoft.IoTSecurity/preview/2021-02-01-preview/examples/Devices/Get.json new file mode 100644 index 000000000000..c540ab4b7946 --- /dev/null +++ b/specification/iotsecurity/resource-manager/Microsoft.IoTSecurity/preview/2021-02-01-preview/examples/Devices/Get.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "iotDefenderLocation": "eastus", + "deviceGroupName": "myGroup", + "deviceId": "fa30e727-16e1-4e81-84f1-d26b9153d1b2" + }, + "responses": { + "200": { + "body": { + "name": "fa30e727-16e1-4e81-84f1-d26b9153d1b2", + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.IoTSecurity/locations/eastus/deviceGroups/myGroup/devices/fa30e727-16e1-4e81-84f1-d26b9153d1b2", + "type": "Microsoft.IoTSecurity/locations/deviceGroups/devices", + "properties": { + "schemaVersion": "1", + "deviceDataSource": "OtSensor", + "sensor": { + "name": "mySensor", + "zone": "myZone", + "site": "mySite" + }, + "onboardingStatus": "InsufficientInfo", + "deviceName": "10.168.140.1", + "deviceCategoryId": 6, + "deviceTypeId": 17, + "deviceSubTypeId": 2, + "deviceCategoryDisplayName": "OT", + "deviceTypeDisplayName": "Industrial", + "deviceSubTypeDisplayName": "Historian", + "riskScore": 90, + "criticality": "Normal", + "firstSeen": "2020-05-13T06:32:25Z", + "lastSeen": "2020-05-13T06:32:25Z", + "lastUpdated": "2020-05-13T06:32:25Z", + "operatingSystem": { + "version": "10\\1604", + "platform": "Windows" + }, + "purdueLevel": "ProcessControl", + "authorizedState": "Authorized", + "programmingState": "NotProgrammingDevice", + "nics": [ + { + "lastSeen": "2020-05-13T06:32:25Z", + "ipv4Address": "10.168.140.1", + "macAddress": "34-E1-2D-77-80-D0", + "macCertainty": "Certain", + "vlans": [ + "name(1)->2", + "3", + "another_name(4)" + ] + } + ], + "deviceStatus": "Active" + }, + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2020-04-27T21:53:29.0928001Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-04-27T21:53:29.0928001Z" + } + } + } + } +} diff --git a/specification/iotsecurity/resource-manager/Microsoft.IoTSecurity/preview/2021-02-01-preview/examples/Devices/List.json b/specification/iotsecurity/resource-manager/Microsoft.IoTSecurity/preview/2021-02-01-preview/examples/Devices/List.json new file mode 100644 index 000000000000..f3a48afcba78 --- /dev/null +++ b/specification/iotsecurity/resource-manager/Microsoft.IoTSecurity/preview/2021-02-01-preview/examples/Devices/List.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "iotDefenderLocation": "eastus", + "deviceGroupName": "myGroup" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "fa30e727-16e1-4e81-84f1-d26b9153d1b2", + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.IoTSecurity/locations/eastus/deviceGroups/myGroup/devices/fa30e727-16e1-4e81-84f1-d26b9153d1b2", + "type": "Microsoft.IoTSecurity/locations/deviceGroups/devices", + "properties": { + "schemaVersion": "1", + "deviceDataSource": "OtSensor", + "sensor": { + "name": "mySensor", + "zone": "myZone", + "site": "mySite" + }, + "onboardingStatus": "InsufficientInfo", + "deviceName": "10.168.140.1", + "deviceCategoryId": 6, + "deviceTypeId": 17, + "deviceSubTypeId": 2, + "deviceCategoryDisplayName": "OT", + "deviceTypeDisplayName": "Industrial", + "deviceSubTypeDisplayName": "Historian", + "riskScore": 90, + "criticality": "Normal", + "firstSeen": "2020-05-13T06:32:25Z", + "lastSeen": "2020-05-13T06:32:25Z", + "lastUpdated": "2020-05-13T06:32:25Z", + "operatingSystem": { + "version": "10\\1604", + "platform": "Windows" + }, + "purdueLevel": "ProcessControl", + "authorizedState": "Authorized", + "programmingState": "NotProgrammingDevice", + "nics": [ + { + "lastSeen": "2020-05-13T06:32:25Z", + "ipv4Address": "10.168.140.1", + "macAddress": "34-E1-2D-77-80-D0", + "macCertainty": "Certain", + "vlans": [ + "name(1)->2", + "3", + "another_name(4)" + ] + } + ], + "deviceStatus": "Active" + }, + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2020-04-27T21:53:29.0928001Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-04-27T21:53:29.0928001Z" + } + } + ] + } + } + } +} diff --git a/specification/iotsecurity/resource-manager/Microsoft.IoTSecurity/preview/2021-02-01-preview/examples/Sensors/Get.json b/specification/iotsecurity/resource-manager/Microsoft.IoTSecurity/preview/2021-02-01-preview/examples/Sensors/Get.json index cc065e620092..7448efebc105 100644 --- a/specification/iotsecurity/resource-manager/Microsoft.IoTSecurity/preview/2021-02-01-preview/examples/Sensors/Get.json +++ b/specification/iotsecurity/resource-manager/Microsoft.IoTSecurity/preview/2021-02-01-preview/examples/Sensors/Get.json @@ -19,7 +19,8 @@ "tiAutomaticUpdates": true, "tiStatus": "Ok", "tiVersion": "2020-11-17T12:31:25Z", - "zone": "Zone Name" + "zone": "Zone Name", + "sensorType": "Ot" }, "systemData": { "createdBy": "string", diff --git a/specification/iotsecurity/resource-manager/Microsoft.IoTSecurity/preview/2021-02-01-preview/examples/Sensors/List.json b/specification/iotsecurity/resource-manager/Microsoft.IoTSecurity/preview/2021-02-01-preview/examples/Sensors/List.json index 314ba6bd301a..df5b64d56593 100644 --- a/specification/iotsecurity/resource-manager/Microsoft.IoTSecurity/preview/2021-02-01-preview/examples/Sensors/List.json +++ b/specification/iotsecurity/resource-manager/Microsoft.IoTSecurity/preview/2021-02-01-preview/examples/Sensors/List.json @@ -20,7 +20,8 @@ "tiAutomaticUpdates": true, "tiStatus": "Ok", "tiVersion": "2020-11-17T12:31:25Z", - "zone": "Zone Name" + "zone": "Zone Name", + "sensorType": "Ot" }, "systemData": { "createdBy": "string", @@ -44,7 +45,8 @@ "tiAutomaticUpdates": true, "tiStatus": "Ok", "tiVersion": "2020-11-17T12:31:25Z", - "zone": "Zone Name" + "zone": "Zone Name", + "sensorType": "Ot" }, "systemData": { "createdBy": "string", diff --git a/specification/iotsecurity/resource-manager/Microsoft.IoTSecurity/preview/2021-02-01-preview/examples/Sensors/Put.json b/specification/iotsecurity/resource-manager/Microsoft.IoTSecurity/preview/2021-02-01-preview/examples/Sensors/Put.json index e2387bf4655c..93034b813e1b 100644 --- a/specification/iotsecurity/resource-manager/Microsoft.IoTSecurity/preview/2021-02-01-preview/examples/Sensors/Put.json +++ b/specification/iotsecurity/resource-manager/Microsoft.IoTSecurity/preview/2021-02-01-preview/examples/Sensors/Put.json @@ -6,7 +6,8 @@ "sensorModel": { "properties": { "tiAutomaticUpdates": true, - "zone": "Zone Name" + "zone": "Zone Name", + "sensorType": "Ot" } } }, @@ -25,7 +26,8 @@ "tiAutomaticUpdates": true, "tiStatus": "Ok", "tiVersion": "2020-11-17T12:31:25Z", - "zone": "Zone Name" + "zone": "Zone Name", + "sensorType": "Ot" } } }, @@ -43,7 +45,8 @@ "tiAutomaticUpdates": true, "tiStatus": "Ok", "tiVersion": "2020-11-17T12:31:25Z", - "zone": "Zone Name" + "zone": "Zone Name", + "sensorType": "Ot" }, "systemData": { "createdBy": "string", diff --git a/specification/iotsecurity/resource-manager/Microsoft.IoTSecurity/preview/2021-02-01-preview/sensors.json b/specification/iotsecurity/resource-manager/Microsoft.IoTSecurity/preview/2021-02-01-preview/sensors.json index 9c78f9cc1865..19a11fa8f7c8 100644 --- a/specification/iotsecurity/resource-manager/Microsoft.IoTSecurity/preview/2021-02-01-preview/sensors.json +++ b/specification/iotsecurity/resource-manager/Microsoft.IoTSecurity/preview/2021-02-01-preview/sensors.json @@ -461,6 +461,27 @@ "type": "string", "description": "Zone of the IoT sensor", "example": "A12" + }, + "sensorType": { + "description": "Type of sensor", + "example": "Ot", + "type": "string", + "enum": [ + "Ot", + "Enterprise" + ], + "x-ms-enum": { + "name": "sensorType", + "modelAsString": true, + "values": [ + { + "value": "Ot" + }, + { + "value": "Enterprise" + } + ] + } } } }, diff --git a/specification/iotsecurity/resource-manager/readme.azureresourceschema.md b/specification/iotsecurity/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 4d94f6202df6..000000000000 --- a/specification/iotsecurity/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,28 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-iotsecurity-2021-02-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-iotsecurity-2021-02-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-iotsecurity-2021-02-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.IoTSecurity/preview/2021-02-01-preview/defenderSettings.json - - Microsoft.IoTSecurity/preview/2021-02-01-preview/operations.json - - Microsoft.IoTSecurity/preview/2021-02-01-preview/sites.json - - Microsoft.IoTSecurity/preview/2021-02-01-preview/sensors.json - - Microsoft.IoTSecurity/preview/2021-02-01-preview/onPremiseSensors.json - -``` diff --git a/specification/iotsecurity/resource-manager/readme.md b/specification/iotsecurity/resource-manager/readme.md index bf8d3eb5236f..2c31d6faad9b 100644 --- a/specification/iotsecurity/resource-manager/readme.md +++ b/specification/iotsecurity/resource-manager/readme.md @@ -66,6 +66,7 @@ input-file: - Microsoft.IoTSecurity/preview/2021-02-01-preview/onPremiseSensors.json - Microsoft.IoTSecurity/preview/2021-02-01-preview/locations.json - Microsoft.IoTSecurity/preview/2021-02-01-preview/deviceGroups.json +- Microsoft.IoTSecurity/preview/2021-02-01-preview/devices.json ``` --- diff --git a/specification/iotspaces/resource-manager/readme.azureresourceschema.md b/specification/iotspaces/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 280d1ea3abba..000000000000 --- a/specification/iotspaces/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,24 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-iotspaces-2017-10-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-iotspaces-2017-10-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-iotspaces-2017-10-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.IoTSpaces/preview/2017-10-01-preview/iotspaces.json - -``` diff --git a/specification/iotspaces/resource-manager/readme.go.md b/specification/iotspaces/resource-manager/readme.go.md index 012dc608367f..e788836dee9b 100644 --- a/specification/iotspaces/resource-manager/readme.go.md +++ b/specification/iotspaces/resource-manager/readme.go.md @@ -5,7 +5,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION clear-output-folder: true namespace: iotspaces ``` diff --git a/specification/iotspaces/resource-manager/readme.md b/specification/iotspaces/resource-manager/readme.md index 49a0a68b3682..9fc9741c018c 100644 --- a/specification/iotspaces/resource-manager/readme.md +++ b/specification/iotspaces/resource-manager/readme.md @@ -74,8 +74,6 @@ swagger-to-sdk: - repo: azure-sdk-for-js - repo: azure-sdk-for-node - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js iotspaces/resource-manager ``` ## CSharp Settings @@ -97,7 +95,5 @@ csharp: See configuration in [readme.go.md](./readme.go.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/keys.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/keys.json index c17fb4bfb725..af7ae178dfdc 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/keys.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/keys.json @@ -1295,7 +1295,7 @@ "properties": { "exportable": { "type": "boolean", - "description": "Indicates if the private key can be exported." + "description": "Not supported in this version. Indicates if the private key can be exported." }, "kty": { "x-ms-client-name": "keyType", diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2-preview/examples/securitydomaindownloadpost-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2-preview/examples/securitydomaindownloadpost-example.json index 6a7fd333b63f..5b6df4776f48 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2-preview/examples/securitydomaindownloadpost-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2-preview/examples/securitydomaindownloadpost-example.json @@ -66,11 +66,6 @@ "api-version": "7.2-preview" }, "responses": { - "200": { - "body": { - "value": "eyJFbmNEYXRhIjp7ImRhdGEiOlt7ImNvbXBhY3RfandlIjoiZXlKaGJHY2lPaUprYVhJaUxDSmxibU1pT2lKQk1qVTJRMEpETFVoVE5URXlJaXdpYTJsa0lqb2lhSE50WDJKaFkydDFjQ0o5Li53dGhUcG5Dakh6d0Fvbm14SlJrcmhnLmIxU21NcjJkX2J3VUZJS0tlRnZ0Y2lvS1BiUXo3OGJyd1duclVBZE4tM0txY01FUXNtSU5FN09WZ2JLbFZ0V2tkemJmaGdrUHd1dUhtaG9QUHpJd2tHQTQwYXVLZW9OaC1EN2RWanBJd2NVcDVMNDVVVlNRWXM5elRQQnRmSnItcy0xbk1DNEhwZnpXRHNhZUxUTzhfcGRtNGxISi1lN3dGeTE3NVJQMDRZR0xPZlVEaVBTaUZXTzVQd3djQjRsSUx1ZXI4cmgyaGYtSFN1M3lnYW02N3VGdjc1WTAtU0gxN1F3VHpwbkRtXzZUbzNaUWZIRHp3WUprQjlWYmRvaHVMcWl4QUY2MS14UjVvXzc3MUdtOHlkZHF1Ri1qV2ppUjAwNWZBSnFLb1UyM3lmYXhZdmROaFdNQVUwU3RfTG5HTnYxaXRQYVg3cXV2aWkzOFlhbjd3TU9VZGg4TW5VS19rN1hhSU96VTJfUFVWVll2R2RNcXFlaVRNLXBrekFxZC02LU5vZ3llc000NzdXdnBNa0F2STZLS2xvRkJKQzRfUlFYYUxITHZwMnAxTlM0NUZLNTEzb1JJeHROd3AtM3JUME5FU2RTbnZfb3ZCeDhFVGpZdF9Mcm1RNHplb2pqRFVLZC1EWmxQcFlGUVAwZWFfNmpSckpsZ3lvVC16czhWTEFFREdoX1lmZDRydHNENVhFZGVMZ0IyMEF2NWlLRk1jcHhtTVVSakRJQTZES1hNUXFIa1RLam1pQmU2aHROZ2FNNjE3S2FYclRuWjE5Ui0zWlIxbGs4UmhoQm5yZ0NBamlWd1lVcE8xUGl0ZDY2bl82VFlTVTJ5eFkxMkxoZ0V3Z1hxR2pzOGJIVEtGYnZVVmxKQTduV1RSN2hTUHpTZDJjanlBaUNDR1ZEUjQ4VjBTY1FBVXFLTGVFZUl5NzhueXJQSE9kXzk3dGtGSXBsdmhncnBkdXRISUNyakQ3T1BMWVJ6UGpFQlJxUFFzQm1RSzl2V1NDNDk5ZGFITzRJOUtRTG9mVTc1VmhOOGt0NlV4aGZFVF95eURfSGM0UGJLZkc5TG1hYUlxVGVtVWZCVnU5REx4RXJLbzhLVC1RX1dFRi1LOEZFbXhZdUFKWEgyMktrTWxfSGFva280NlRCV0FPcTduLW8zaHRpbVBlUmxuSkZxa0lqbTBIc3UzWEJETkdpMEFZZGtpakE0QzgtOFVwNk9ZSWVDZnZOeVEzYVllcmhJVGpHR1puMnJ5SEZCRnR3WVIwbkJCc0ZfMFo4SkR6NTlvTEtlMThheVlvaUp1UHNTdWp4VHFNeF8yNG44WndQTnB6LVhYLXBEVWpkSUZvVS1FSXV0UWxnT3dqUmVKZ3I3WF8yUks5cVBfT25ERkRNUnZzUU5oS1pIWklhREdVdEROd2JxMmNHQzBNRElpeDgzR2RIS29kbGJqNkJ6VXEtUXFXT1dSdUtiQ1NnTFdULVdSdnNzUXlONnhIYXRHb1VSMUVMcVpPejJUZmw0cm5Ka2QtSTlRTE15c01zbVFiZldlTXBJWXA3M29STGxVNm9iRnNkM2JNNnVGeGFGcDUzT0pDamNGUUNlLWM4X0xEMWk2dWhFeFNZenNSYjhLR2cyX0dpMFNCSkcwdjBSb205X3oyVklScER5MFdyZmhnLV9YRjZUdFNtZkhoYWpRVzVqTC1xMnNmQkNlcVI5M3FXYUt1TFJQS0RfSm4zWElJR1R4UklDMzRETTlfbXprRTE2SUZDa0dnN3FEMmZCZ2EwNHA2c1hrdlEtUkdYVFhKZGlOd3NpVW1RUFR3Ql9LSVA2OFRNQWdSTWpBMEFJMjZOSmZ0b2Z4eng2X0w2VTU1SDZELVZ1UjdDOWsyR2lWa2Y0VnU0Q2p4WTI5TWdwUERlaHdScjVVMXRBUFU3Wi1nVU9Eb0NTcGRINVRjY1NROGtKb3FEby04SWRKMjlYa0NEUTdDX3U2aTFVVF9feUhLbjFwSUxocnBxZm5lb081SE5sNEJTbjJ5cEdFZUpfYldCNl9GMU4tYXBoVDNjRmpQWjVnb0tfM3ZPVWw4N0gtSjMxNnhpUGRiZGhiM3ZkSTVkQ3daekhzOEZwbFpVaXJGNGlsRHM4bklrRGs0cXdIZGZvQ2VWTlgtWE1neUFOUTlKZTQxOHJEZkprZF82OWFiSzB6MXlKcmg4ZHhNajFHSnc2N2FzZHZ1XzV1elZPcjBldE95WDUzUVMtUkhLeEs4RWZUZ0U2SThwVjBTQ1hRYkg5S2lNd1dYcm45cjk0QzFhZ3dJLUZ1b0JlNFl4eHo4OFc2RUdvUzJMMmkwWTM0LWFjWVJxSTl5M3l2aVJ3T29Ub2NnUmF3NDFUU3ZROE5zUzBPQUlyY1JzMlJfMWhOeFlObFAyUm04VktPcldEcjQ1MHNJRC13elYzUmJxenJLcVJnbmxBOEFKcnVCa1FPbTQzVUFIVnBDY1pvVGtUMVYxYi1Weml3bUQzV0hHZFFnM216RVItdmlGR0RJLWJKX09NN1JWdlFwT21xQVFBWTFvQ3ljOWh0cUZKSUlhYTdibzEtQ1lqcDNTd0ItYnBsTjhuWDhHVWFUbkNFbVM1N1VTbDMxUGVpNkszeXJmUWVJWl84Q2RSdngtZzUya2E5NU1nRmZGcUFOdFNQUzhXbTJQSm55aDlxYTliTVhzSmI5RmVYUnFZSlV2OGxfc2VkVWJEWFRBS3BGWl9hWVI3VUpLa0xWejNiNEcxQWptcFJQQXdzd01TWDJtUkFzcGt4Z2ZrdV94QjRyaDBuX2t4NDQ3Q2pYa1VjSncxNlpBVHI1Nk92THZCNmZoRXNqejhVWGRyNTJHQ1R2MzluUjBsUGVLQzlZcC1GTGZHaXNNTVk3TEM4WHNFU3ZhWVU0NnZGZzJGVUhjYmgyM19xbENiWldPWm9vd1FrSnFJM2VCU2s1Rkc3ZXVPOERLS2tBU2N3dkFmc3cxM0VCTHJ2djhLem5mMndRbFN1VFVEMjdWaEt3Mk55SUtuUTJkeTN5d0NtT0EyRnNBdkRwUWpybXNITjVmVDVTLWlTRjRyZTBrMFU1VzVJUVg2RzNJMlBDWFJDOHJnZFA3SjFNOHEwVGtOZE0yRUVqdzBtbWpkaVM2RFUzbWMtUDVya0hEdTh0anpPYktESE5MbTJfa0NoQWFqTXNtcUlDMzFiOUxvTUg0c2xYbUNjUDhQTXF6M1c4TXB0V2NGSHFLT3pDeDJTWmlVRkdaN2h2a1c0dWFyczFDMG95ekFJYTA3eDF5aWZxSFUtbW1Mai1FTEp1Y0xkZ1VOSkJjeGFuVFNSc3VpRjhnNU5iUFBIdDVHdEtiUC1SdmlQd2V2cHdjbjdrVU9RUDNRUnpiUjlLdUpFZ0JTdGFndU1GMlNwVjRDNlJNZ2E1RlB6UDRVajdtNmdDMk9WSjB4RG95ZEdYSnJPa2NiRlhHQnRfXzFHSG1uWUw1cVhVbGJBT3F4RS03ZmJiem91OGhpSi1IeFBTY1lfUHJwOG9ZUUZ0Q29sSkhMZFFHaHBUT1hKd19lU0phRU5jaGczbDVFNkxCNVU5TFlkeTRmSnh0ekY4dDdHenR4Z1BlMnFLN0xBTkRVZXNxZUJEMzJTVEd6cVhzVG43UWNlcEEwcjBzTnlyaXFuSERTYk9vXzNTdDNKbkJzdlNselRiWWFuZEozY1pJN1c2RWsxQlZLeGhVNUQtRGNJb1R2cWNvN0t0WW1pS29FT1hjbG9jQkZLTFhPWENhMVhvUUZsUnRCdGNUQW9LTDNZSmZTS0ZwRUw4VVc3bnZlcTlfcXZ2UFRtMmpUUW96UHAtYjhNZFJDZjFVc3RId1JxeDcyVXNxcDBKbnhTVERaRi10Sm1zdlZHYkJHcVIzZmNmT1lGaExZN3c0UDYxVS01U2NUMWpxaGhnOVVQbDdJVFFBMTlJRHJkWHZrSEotSkZsVXRoVHY2YnNaT3FuMmNNaURjdUdTY3BLckgxMHRnZmZ2cWxSZWcxLVlJTGJMLXJ4eDk0ZER2R3RkXzV2eWNBZjFiY2Qwd3RaRzdLaWg4OVhZaS1xVjZVc0stYWZyT2V4VG9pX1Y5clNPMmZ4RG9GQ0JoV2dUc3RMc1pIQUN4VU82SzZzbFFwbVBpRTFKNldXdjIzYnZORF84Q3dwM004UURsay1TUWlsNEJUZnFjeVdzRHN0Y05tRnJGVkJBMWdGdFdGVWh4cTlHQVUyQ2o1bWtWM2REekgwM3FYLWI2cGdpSlE1SFFWRmw1SkV2bTFLQWd2ajJQRGFwNmhyd3NXZVBIanhjMXNwQ0dJcnA2Sk91LVZQMm84Mk5hWXY0S1UxUkFRai1mdXYtVFhfaG4zSG9Md2lDa2NRaEdpWWpWRjJvVEdDTEhkLV9rVEFRRjZDZ2hDRjlQVXFmdVNaSFlfRW94MG1NdlBZRDB6NURZMFhISUY4UzQ4cExOUE9seUJRZ3pSNU84c0VHZk5BOVM0cnJwVVdJQmpETnpyVGlZMjVqV3V0czNIaHhVUU53X0c1dFFqLS1hVTlCcUItZkg0TVVKNm9HM1lDSHpkcUVBd05MclVWQkF3M2s4NFhkZ0xjVnFhVzJBSUpxMTBLQ1NQdUxOY3ZURHM2WEhXS3kyTHd0UTRHdUN6REhCQWliT19vV0hQcjZyaERKVWcyZTV2aGV0cVBlejV1M0oxeFN0VDhyYUIyT3ZOYk9ob05BYmNwMDRQbGJ3UHJpZ0FFQ0dTMVQ4ODVaTjdqYjlEd1FOckxwWU9Db0lQRGNlaVhuYXg1al9UNmF4LUhadF9jQTAya1JZMFNBSEJITkZOQXE4eUxIdkh1MmJxQkpiUmZ4cEo5TkZmeFF6ZEoyYlpSNmJHOG54dVNUSmVqeXVRdlJaNzBOZUZqR05FaERFQ3JTNUoySTBBVFBaMDVPTE1OUU53NnZERGJBSmR5NV9WT2F6c3BhLWoxM3dwVVJuSDBzWlBJd1YwVWpSdHRjUTVHNzRNLXctZXppNUk2dkdZOTlyUHhZZkZRMlVITnJzTV9COVVxTlZXZk1qcjFRM2Z5cWxuZ2IwUmF6WHRoX2FjLVJiOFBtV3FBYnBvV3N6cXctZnFDQ0otb0drWkwtLXhOeGFjdjBfWDh4QjlYT21NajgyWGFKdkhNVmJpdWZwUUNsWnBPS0E2QmtjQlhqSVM0LTkwWDVneXlhTVd3bHozcEdud1UxSFZNRHBNeVBJN1VKYUZtdkRQcFU2WlhZZXZWRUZEMzg2NVBKeEZDZnBfdVhoWVBqMEFZLVRNRWpPZlIzUEktMjJ4bDl0REEzOUNuMlhzeDNrQ2c1Vkhlb01BbWZsM3YtaWZxUWxnZ0YyVS1uNEJXXzA0QlpOb1F5Y0ZQdnA0Q0Y1c21MVXUwSmVsN3BuMFF4OFQ4cjRLaEVRdWRoUk13RTJtWlc4TEZTeVdobXFzRDRXNVRDYi1QVTBQZXNHMDdFMXJLYkdFV2NaWi0xek5pam1SWUpxUHdZSWRnUmdhMV8wZktCNFcxZEVRNnE5elRESnl6YTNTS0M3TVhhbjR6d2F5aGM0aTc5Ty1NM3JPSUIzT0lJUFc2RjY1MTM1WXlUVVpETGJqZUJPOGZ2NlJCQU9MR0xqXzgyc2hPQUFrRXNJcThPSnVHTWNiMEZUVXVqYUNHQURaLW85RWNhWDdMMm4xanJBNVVEaFNaV2xhQ0JfZ2pFTzhDTTdJV2xYMnVRYTVJOVg4ZDd5VE9TZFZWX0ZDbk5zcjRUdWNvcWNZalpDd1VmaUpSLXJfYWxKbVluVE5RMFphOGt5ZVRWZWZYTDkyNnFyQ1FqSUcxV29BV2FtYkRNUHV6QkJNZG5sWVNyaXMyV2VyU3hFX3RjeTE3djdvaU9Xbm05TGFVam5ob0VXVTlTTjBBSEJ1Mmhsa2dHOGM0TzhHMmo2eEd0QUVURnJJRnk3MTNJMi03eGVCNjNFMjJqZ0FQSlFqbVV4RzZaaExFSFJBOXNHWUt5Snl6dTNmd3c0SGxFS1EzdFpXN0JTV01ueXFYOUJsVG5rZEJrSHVBTkpiLW1JcWl6UVR5ekVodTBLQU5GY2w3OFpaNzYyU0pfdERaQTRhZDhweGR6TVZoZnpvYkt2Qmo2dUlKcjFvQlpIbmp3cFJvM1Y5OXV2bElGSWZBS3NfVmlSRWl0QUdxT29GaTczYlpuWFN5RDlmZ1hYNU53Ri1mcGd5S0VlQk10anM5Ti1xYUNlRFVRYVJaWVNlc1JCOVItMUVNa2pqdHBjSWlOaGxIbGxnZ21tOWd2T2N5LXR4bXRZcTZYRTgwQ3NQN05vSWZIZ3JYSTVwcURnWGtESjB3SWJxRHV3aFF4NWNmQVpFV3FuUDVPSkJURm5BbEUzSWpqdEFnMXRVNi1taUt5c29HNG05VlZUejNGNnh2V0N0aXFZeFVFX01tdy03UXBwcjdQdEV3d3B1ZUNoczZGQ1MwSXY0YTlQUF9Iei16QUt0Zm11Tjg4emhyY3hjcVhJNFRqeHpLenQ0NDk1RW5MLWVqR1ZUR3Q2OG1fMjYwUklIa0wzamlQLVd4NlJaRkVFb1RhMFo3TTBIdnhkb3JORVVsYXFqaDFXRmRKVFV3dG40SmJpeVJFTGthZUNMTEYtdlF4dkVwVmg4M29udUtZakVFV19CUXdrbW9ITG00MlYtZTJ3eVR4Rmt4eWpBNnJFQmk4anh2V0RYeWtySVVYbjRKRXZyS0MyWmZuZklBNUJGR3B5aU5MbU0zSVkxNHhKQ3VRY1g2aFVwajVWMVpfbllBLW1mTFJ5V2Y4MkIzZEVOdzBUZFY5QTU5T2NmUlRlamx3WVdDSEhxcFpPTXJQXzZtUjJmSTlIVGhIVjM1UXhIMS03eWJ5SEN5YTF1dzhhNGdPMkpXWjFqY1dTWDZndm5UTThRazh4bjdGcnFnaWdhYTJ4Y2RiUlhlbHlocUZUX3gtSUlSQUFNbEJLZW94cnZXaTRQQTZDc3BxSzJBSjk0ZVFEeHRjZi11ajQxek8xajJnQTJiNGdicGh1dlBHZUVDUTVJUDJzNzhYczY0SlVPVmpIZUxJdVBQM0laaUZsWGt0cl9SZ3BwTzZZS3FGTXFMNEZlUExHbWVDQTZfczBfdEhtNzJscmFFSzlmWnpfalBwRWYtQ1YwMlZLN2hmM3BIdlBTcmJlZmtMdXJaSXJmOXJrLS1LbWFmdGQtQXhfdzU2clJXLVprdGZJd043ck52bXVPQlZRaVRyZ3o5TC1PeDhVbTFSejRMS3hzRWpKZU5XcE1JWW1ENlN3a01vNVE2bnpLS2tZeVBvbjIxTVVqTTliU0tTUm1MVUVMeEhKN1RYV0l1UmVZRkIxb2l3eVR6OHdZdmtMSUJlNUE0U2ZfVTZPNGh1ZmVXLXJ1c2NDSWtqNmhudXNWSjh1dmpibTRndlBPZC1fRHh5aDJmLVBiZVQyWUg2QXFsQlRZbGZhQV9STXJpRWpFc0ZWamRsYmxVZVVWamxQT3MyVEhIS1U0aUxRSm9yeUV1UFBucGE1dFVJRW15dHBtSjZ5c29adzd3UkFBbkxfTjNGVi1nemtkOFdXejZSbldrdUhWVG5PWE1GUWQ4UlRQNzI2S1otMzJHdGxHRmZKUE1pdUZoOHBKOUl1VkFnTHBoY0VNeGxYbWc3RUViUnVEZ0otbXVqRkdRZWlpTHVLSUpqRFd6dFlnOE1LbTA1M0gzT1AxQldxc1o1bHotZnRSeHZtQm5vOFFDVjYzTXltajhmUHBKMHgwYTc0OEhydVhLTGhSY213SVoyZjJqRExqNGw0a04xbDdmUlI1YmlIMzZHRm01OENLQURqOXlGQ2hBckdmNzNjSkkwX3VCU2l1UHFBMTJRdmNxeF9IVjkwXzdUN2tyR2diTVlkZ1Iwem4xcjN5LVJkek9VVnV1QXphWm9ISmFZVXBEY3E3dVk0ajVrUXJ2WmZtY1V2ZV9iclFDSkNKenJaTkVNY2xtRTdCMjlOVm5DZDVKMDVZZVozb2s5bVlyd0dlOXZQeGZVUmxtYTllT2hFR0ZDXzV5T0dxT0wwWHY4eF9uUWxaaTNNVHF1UWJUTE9pVlY4OG9OeFdXQ1dhUkxIdkpPUzNBMmNsd0JzVFNSdV9ZMHZCQUlacXBtZXY0WXhzOFpWcXZtWUdsRjJ2bk82cm5ybWNYWHRPclFFX000TTJrbXRlenJheUpUek8tMXRhSjRWdkk3ZmplZG1tamU2eTREZmFkbjRlTnAybmVubUl1cmJFeE5mekdINnl6TFMtR3pZV1VLbGFOTXpyYjNYSGViNVBSMTNmZEJZeE81ZmZoUHUxZE9tblFiNXRtYV9pTGpkRlFkQThFUVQ5bXhnOHpDUWFjZDBNeXM0NGoxRXZiaEhzcTViRDFka0pQaXhKMmw3LXlxLU54Sm1ieVdhOEZLeEM5aHRIaEF3VHV2OVJ6akFJM0N2Y09rTnVVcVRaWi1XTFMzbFBxSVhGNjZDZnlSa0VTUXk5UXFGdjYwTld5UXl6ZUhDLU9jVUJuSFhMLVBiYVBKNFpNYTIwRDlYNW80RzdoNjYwMXo2MkJiMEx2dUVJcFg0Z1gxZ3JURU1SSW9NbHZNdDk3NkRCTDc0emJDN0VqT0hEMnpxQ20zT1dDSXREY3NBb0E2Sm5vc2lONmpTWFFEUlJhYXViUVNweXhHYWZNamlIZDlvbk5pb3dGREo5LUxsTkdOckhqNy0yT0lWTVpMMkFIMnVsYWNuNjVJa2pWU2FJdzlfNHh5X1FUOVM5c1B2R0RlZkVja1VMcnJuUi1JRHZTcVFXSXFKYm03TTQxbVhMa3hXLVR1VDM1YlcwQ3RlNUJLRFJKSExPU3lFZHZkdllfV190RnktY290SGF1VmlHZUt4U0tfa1RFeEFDVWxWT3pDcWZIMmlNXzVqdXU1RDZacVhRZlZfekpIYTVURkN0UjRyS1VkVmU2Q0tabjFFZjFDV3R4X2gxeDFLRnRMc2lIT25ER0tJUHptb1ZjcDQ1T0NJY0hjMEJPN19CTHVsUklacFpWcmNlXzFNMzdOb0pGdDkxZktxOXZ5dC00NGdfYVpRMS1ZWmZWYUlraHpxLWdjNWJUcThmN2M4U3JCdU1aaThUWU9WaXlnc0h0U3hWRHNaTFhwcWU1Yl9JWFZ1cEItQm1tRzZ6Zk0xZmFDRnNaYVc4TWNoOVBPTF9PQndNVTdCNG5TdXZ5ZTFHb19udkFvSHZmbDJWV1VnTXI3MERidE9NNjhteEExVlBSS0M1dDJJUVgyN1lRWmhyRFNaTG00OGh0cktVR0NVSjFaMmFSOVdhc0FrclRNODJ1YzdwanFvQzd6R1BhbnFGSHFLdmlzVVk5Rkp0MFZXYXd4OGxXZ2xYWlFISHNEVzZyVmpSNjFJYjJGV2ZCRURfcFUwc2x6YUNZQWl5eEtkQVdzejJfQ3hvR2l6VDhnNVd3YjIybzFad3VPZ05Kcy12SzhYWXVYdkx3UzdILTBrVlhLQkhDSG9SMkh6dnlnR21Qa2tEekpyZnJVN3hzczlIdUo1SC1SSnJacXhmLU5pbUxPWm5nemJiYWpiOUJzcGFScFRwUWwwbmF2TkpWbXNMSTJYelJwVldsWlctaTVWdUhDZkZEMjdORW9LalB6MFRiY0dQZ0NtRUdOdWo3dTRkS0t2NFdsWkxHby1WT1RsLWpkVV9aY0VGNy1vVlBZTXZqU05oVFp3WWw5TEowN2xxYkt6aGE1NE5iZUt2ZTk1c3RVVThibWFNcXd1M1dxUkltNmFiSUtfeW15el9COVRqalZpSzluU2hhWDRNektDTmpiaFk1MXB6b1lrc240akhDWTBxVDJHOVkzWnoyZlZuQ01LdU1ZV0p0Z0E3bXlZN1BQSEtycU1OWnJ0cmNvaTd2YkxkUk03MGY3aFZIemVFenhYZFIxMXBjN1F0VnVpUFlSRWx2UE5GUFBFRkJuZDZPNmpnbGxHaTRWSHoxV2tQOWJ3VUVPellQcXdoQkpvTVNpUnRrakFJd196c0lUY2R2RTFtUWxSMGx5RFJKTU9BQjRKVTdpRWcxU29QSGN2TmZibFphRDY3NUJKcFZwUkZKUk4xbUYwV3lpRUlvOHAxU2Jqa0hWUWxVcXRLZTg0clEyUGtUV0NWRnhsOVJMMzRjcHcyZjFaanVtbDFYYUZnS2ZWdTZLSnFkZnpzUHBHYW1UdGZEbTdkaFdZSUZrUjdhVzNvWUllMTVIZ0tnSDFkZmRDbjBUZVgybVM3UTFHTzJHNVlsUm1FOHJXLWp0Y21xVEM2d3hidUxHdXZiQm1GeTlzMUtyWV92Q1dXcGk4Q1hnMm1KekkxYjlKSFB4MXVvUE1MLVRfUXg2dGhnR0JEeUZpcmVPUkg4ZUhaOE9PMnR2TWk4Rkw3YnJMS3E5a3Uzdm1valplWFpZbExvRGJYTk9Jd0s0UFozaWNZVVRjWUkxWms0OVRpV21NNmR6dmVvamQ4dnpVNGZLRGVmUFZ1WXM3OG1ISG5EYkZ6eklGeHhRa2N1OWNsb2UyS3NZNHJvY01qbllad2d3eW9WSkIzUGJGNnJvZVl3VlFXNzJ4TFpMdktHa0VGQ1dKMVR2YUVRN2dHa3FJNHIzZEE0LWttUm5UQWxzT3dTZFpYZ3NlZ296RzJQUTZqZTV4SGNTUG9lNkRoUk4xbWhLNWZZR19KZGpmSl83LXVkLVo2NlMxZVQtcS1waUc2OGVfaVhMaWJHRno0WmFjZDBWVjNKN1VhMnF4ODRXX1BQQjRTZE5lQkNkYjlDb3ZXRm0xalhUcW9RRWFMQ0c1WTgyMEFTN3VvUGxJejE0R2xocWQxZHFKbmt5REl5UWllZ3JQTG9PaFdjaDMteDlmbGkwTWpiUHRzM3QtOEVDb3piVWlpeVBZcF9hZzFSZUhFbHNxUG1yQUZCMXJnVUI5SmxJMDUtTTRtaEJ5alMxX0NiejVLRHJFSkRfcFBXc0l4eUlSUnNKZWVaNE9NX2NnYlRxN2dCbEdzNGZwR0U2SUdZZzMtVkZ3Y1NXaUhwdmxWOGR4djU0aWhrTUZRVDVBbjRNVXZUM2M1YzdWODQxZzlrbUhpdjJqRElPc0ZYRDlncDNtZGpFUjRsQUNRdUdiVTlmd3Vmc25xaF9PcUdNT2x2TzNqN3VSek5XRktvdGJHZzI1Zm93MmdTbllfNTNCdHRGRFhFdGVFZDdLcGJZYm5ldS0ySF9yUVJobjJpcUNjODRrSUw1amlRVEVPdG9rT0lCQmEyYWUyY3MtRDhIVmpnV05KTHF6bDVsOVdwcVVUV2RDYVJMa3U5RGZ1YWkxenBjOEJKQkM4M00zazZOQTZMbFZpeDN0OWNqNUd2VjdHbC1QYXdidjA0ZFBhMXQwVDBjNFNxbzR5OTJ6YktIN3ZpTzA2ZjJlQWhwYkFiQ1UweEZyX19tWEtnSzJYclNlM2xZcU0yUHdBbVBBU1ZkWHNCc0p2djdfTXpHaWttWmxBSzJLYTV2UjRFeEY0Y3p3NHZvSGMxR3pfbjJpZlotWmxLRmJLTTYzdXNtTHlndHFZN0VGaDFyd0pTWnJIY0d4Mnk3V2N4SWVRY2otVG11RG9xcG9kdXNQenN2R0tQbzM5dHJSeFRuNmVOZF9lMzhNT3BNU1Q5VEtMQmhVdW80WUVaM29IU2phUnA4TEtKbjZjNUFDelREUVo4cVJVaEw2Z2R2N21FRlBpMWFTVjNTLVc1RU1YOFRTRU9oZnpDcmxfUTlGR2lYaW1KZ1dSdE1Na1JHeGNILWFsRzRYWkthdTlwcmhZcUM3SEtiNVZOQkx4OUFhemtxQVExRG5xRkdkNEdYd3luWjdXNHVBRHFfUm9BM29VN3VnQlJzVmNIeC1MNjJITU9PQWFYYnpVZWMwaWM2d2ltVXVpdmJpa3dZSnUyeGgyc09qVHA1QlZRQXFGelV1NDRYMUVpaUJxUldIWW5pNGNFazhpajk1Ynh0bTVDUjBweThzRlREUDBGcXEtWVoycUt6MndiSF94SmVpOXg3bkRxUHlhRDBEaWk2MWR2UVhramtrNGhFSGtuUWpoeUR2NGZLN1hGejBGWUxXYkwwQ05ORmdHeWJhQjJWT2FGYkJQVmdtSjRFNkJxTHdTWE1UR1dVd3g4cjZWU1puQ1l6NjRfV29HZ1BteFFDckdRWXBaWVRXNkFYb3MyWTRtQ2dNeWdDV2hKTng2a2ptbGRkdDZTeFNWdXVlS3RmWkMwNmktYzdpa0ZvM0ZYRzF0YmpwdFN3OFpMbWdWb0k4M19scTNxY29QNTNkVklZVy1GQnUySXJwYU1DZDZYNTJWUEZ1SGhKYlEzWDF0VG4zLXNxTkFvdXdWckZjMmNTbHJvSXRFOHBYdlVaRS1NQTR3QloxejRJYlpjYk4yLV80ZVM5Q0Q0c2xVSlJyQU5MdzlEd3BaSlo3T3NvZUJTWUZKeWw4SFprMWwzTlNDdFpNQUIxX05QODFpWjV2amdrUUszWXpWTDB6SmV1cUJUc2VSb0xlY3BPWEY1V2dEaFdrUFRlY25mdHFMdXZpZGc2d01HRkt0blhnYTVrbWZQbUs0d2xxVUhQR1BSbXZDV1ZZelRUN2pMT01XWFUzVmZsUlpabXpJdzhla3pLODQ5Zm5ZQkR3YnYtWjJvcVhFNGFQUUswUUNYeUczTU9QM0JpcFFXc2VtQ1JLRWdnRlBTNEQ0TlRjS1FKVHQtLWUtVXpMOTluM2NZOWpXUVpPZU9iSTlxTl83MVRPVnA1UE1mYjJ0MEhCTU1KNkxwcVRuOXFQQVF3QkdZYTM5aWRqU2ZtTXNXd013a25naTJFZEZWSTM5Uk01OGdlMnJITVFjRlF4bGhyb3M0aS1kNnlSek04azVNcGRsYW91UDZ3VWlGZ1E1ekdtMEpVNTJrQ09VakxnaUJNakhLZDUxUWs3ejY2YXZicWlvelFRSnlneDlfM29WSzMyMXBFQXJHd0Q2cjBKLUJySWJBamFmYU1sb2xPbm1TY254NVM2dE9rQ1VEXzlIN1RQRjRoUTBBQl9sZmFpNHFoSFAtdi02c2xxQ0xqT0FmTk5mTmUtX2tnU1lfdVpGMUQ2T3FmZTVDOThPc2tfU1ZHalBsYTNrNk1CdFl5TEZpZjdoVktSQkVibk44Sjc1MFp6VHV6bjIzMTExY3ZyZlhpeG8ycUY3cWgzUHlDMEc1YnpiWFFMNmtXc21TS2R1ZGFXN1N4NG9WVHZVMnlHTVVzdWt2ajhmd183OGhJYW95d0RRS242T1p0WEszZFUzczFxVkk0QlAyRUduWXd3MU9INWdKNnd5endqUzBjTWVLbldiWVh1c3NpTVFmdEcyN3l4OThKcFpncGZFemFsaHIzOHE5bGxBc3RlWnhvS3g4ZmRhcnFjTU51WWJLblRPdjZTZkFfZFR1VmgzejZDMVV2cl96MF9nd1VtVWFhX1ZxMk9kTWVVV2IwSF9xSGc2X3FKNFZPWWhOODdFMm55WkcyTElja0VPc2k3TnNNZW9VeHg0LTc4ZXFxTGk5U3BscUgyWEFLbEtTaWQ0eGVlVDV3OVI5YVJDVGZ0cVNxSEpfa0YyTzl6elRDSV9XTkdGX3l1c2R0eER4bllMTHFtNElqUWVzTmRSV2duNURDZ0Q4Q3NqRWZic0lpNVgxWUFUZ29KQS05Z2VuVFV3LU14aEc2WHl0ZjlCM0piSHJoMFZQa2Y1cE5RZjIwT0xPSFMwSVNLOU9QMGx4ckZSQUFXa3A3RF9aNGRIOENySUUtRnFjWHAwc3E3QndSOGZFRUMzMWhicjl4NEp0T1FiRnN4NjNSaGEzdTltOE1NSzNUeUU3eWE4aDJVdTYyT3p1Q1JrSl9mUnJEODc5cEl2T3RRYW5rYzRJUE9Ia2tiNHV5SWxiTEo5QUF4eGdXZTBfRWdhYnVPMWdDTVJDUG56RWFHel9pajNmVXFFVmpXVzF3WFZXUjlVOGRiS3N2UFd3TkV3dmNJeXF0X0ZlMzFaM0ZsVEF2eDY1UlpGQV9XYmg4bVF1NGg1MXVzazNBWTRGdUppdWpFZVBnNXNLcFZyaWRXbVpIS0hSWndjRF8tNG1CNVV3b0hRcXhWVEZaRjBlcXJ0T0FXMGdXb0l3OEdULUpWelVrR3JWQ0JiemQ2MHJHNE51ZDJzZjUxMnN3MXFOZGhGZXFoT0gxMWJCNzItLXhkOTl3aHl3MVE2a3o0Ym9OaHdpRTA0cmtBdGM4RHpVczFmcldoLmd4amVtYTRfSkxNQk9mTV9LNWR4SDd3aldzZ2hzSFJYNTcxNnZGWmFnZFEiLCJ0YWciOiJoc21fYmFja3VwIn0seyJjb21wYWN0X2p3ZSI6ImV5SmhiR2NpT2lKa2FYSWlMQ0psYm1NaU9pSkJNalUyUTBKRExVaFROVEV5SWl3aWEybGtJam9pWW1GelpWOWxibU5zWVhabFgySmhZMnQxY0NKOS4uUjNJN2ZhODFxMkxiSHRCSlNld2VCZy50Q3BZMlZBWTlpZHE0YWVZaEh4c29HVlcyT3lKdTdOVHRvbEJZYUFJSDBsNkFXR09IUDZrVGQwYVp4bFV6dDYzbjV6WUwxa3hSeFdMVEJuVUFYTG1tT0IwZjZlS0poYzdmSmRVZTU3cDhNTDRjSktIbDJSS1FwdGpfRVQ5VHVOc0RZZ1ltVXg2RDN1MllWak5GcWMxcFhVbUQ3dW54dE05eU4xVFNGdjNWY21BNHFmNXZ1T3Z5Q3NsYWd0T1pzbkthR1V6ZGpZak9RS0pHRXoyeTdZSVlYT0tHLWljZ1h0Z201Zl9RcDZIWUJlSWFobi0tSDhMS25uT05rQVRKdFJRQVBFUllrTEtuZHNaN1JLNmFacnFaR25SRm9FRDdNWkloRG4zWENKQ2xZZ3Fsemw3a2FHQlU4ZUpsZGpKMjVnTnIzdTIxamZNeDBDN2o2ZUZaOTd5NFJhQ0JGUUptUGlRVWFmQkdYSDJPTGNBS2lNOXc2MWtzRjU4N0V1cDk1T0tYSjBrSEZ4OG9oVmlxbGJnNVV1QjhaY3l0eHZ0S3pmWG5RVEJqS2ZDYmJvYlBkU3FrNVBEVWtCWWJ5WGVSS1ZXMHREeVZFZk9haldzWE0xdVRsWXItRDgtQW8xV29jT0hBYkhGM3h1dVBhZnNEdklYcTd3Mk5fckJwOXZNOWpPQzBqdExEeldYeFlwcjIxWmNIdmhwaWJCM3F3ZEVNS1pfZDc1SkM5Y0VmMU85LUlNaVBUSVpja1podEVyazVQQVI3ZnJYQVBBOHJrVjJtTVlJQUxOWV9EQjhDcHVIR2JHeGZ6cE1iZ2d2U1R1OUtacV82YWhIbGVIT0VqRklXNXpiWHp3NG05ZXpMRHpQTnJzWUwxa25uLXAxT0k4TWdzZjVmd1hZS1NtT1VFeEZDdUI2NDd2dldhdmg5eXM5YUxZWFNOb2pEQWxqZlRrRmU5RlVVdUZLSmV5S0V5a2RDS1JPZHZlSXhqSHk4emFBdGNBZGdVSXAwT1FWdkFON3VnZkI4SVJQLWU1a2k1VlptNHpXR1AyQkVWTV92WWxlMkE2VEp0SDNMUFQ3TVV6VGxvMVBVMWtLVExrZ3EyVWp4MERldmZrLTg4WjNTbFhVZWtRVG5QV0lZY2lhY1hDMVptenRVQVpwYTBraV9TcXVmRjNmdGQ4TFFJR3dFNHpkZGZtc0R6aWxlSFpLR3ZUZi10MUtkTm9VbkJtYnFOb0JObUR1blNuTHlBeldFWE16Z2VIZHBsLXZLWVpTUXA5ZnJpdkRlV2ZlOGxXVmJPUmxiUDRxNzlKQ2tVZHBoMXJnM2l5cXRjaHpMa0J4N1pqeGJkUEZ6MkU3Q1B2UGFFYnJUZ3o5WDRUN3VZa1JVTmtDRkpscF9NS0VfdEthNXNwREwtckx2bHgySlV3ZWpXUGJyRWdWRDdocXdhVklMNXdwZzhHSlI4eEhpeVdMbzNVcU1fU0FlZmV6MUNDcElFb1QwT1E1TV94VTlhNWp3bDAuby1JSU5IdzFXTlJBc2xSRnE4OGlZclllTmVibVRhOVRrRlB1Um9LRl9lWSIsInRhZyI6ImJhc2VfZW5jbGF2ZV9iYWNrdXAifSx7ImNvbXBhY3RfandlIjoiZXlKaGJHY2lPaUprYVhJaUxDSmxibU1pT2lKQk1qVTJRMEpETFVoVE5URXlJaXdpYTJsa0lqb2lhMjF6Y0Y5bGJtTnNZWFpsWDJKaFkydDFjQ0o5Li5XYW82Q1FQYXdIN1lGRXdHN2Uza05nLjNVSWh4SGFtV0FLWGlBUG9qVzNlcW56NThRbEpPQm9OcDJGcHVzT0k0UXR6RmIyZHM0M29TVjl6Q3lRaklrc0ZYRko0Q2Zra0QwQUhxQUtna01LZ1JWd09aT2xyRTJHZEpKRVk1bzk2QlU4eEhqZF9BVFo2dlFiMlVMRVIwRnFUZnZIOU5yZlY5SGRfX1lUS01UdVE2ME5XWWtUX1R3TUxRX2kyRDdHd0J0S3pLN0FnbEVjbVM3RXpuWHA0Zlk2RmJRTmN0ZDNjNHpWWUFieDJxbndHMWYzTDNaMndkZGdySVhEMmJlam5RQmJMX3VIRWJUM18yM2hZeDZFdHhEQ3E0bXIzNXB1MVNINDF1UGlnQTcyNG13clNXYUR3NkdJRHlwZVpzc1RYNmc2RXQ5ZHJ2aG85UHpZTjNtdkxpR29PdHBPTUN1cTFyd3J1QmZNMmlkNkdfU1FMT1dkR3NQOWdIUEsxV0FYZTQ3LW1qWXBkbGhiaGFNTjFVaVJBZWxORVR1al8zaDl5Wjl1aFcxbm9TOVdJYU9WekxFVXBDZnJNTVlMLWdubkxuUXZWSkhWNjJGTUQ4V2VkUlUzelVSSzQ3VFZxTGtzY2RoYmxNZUJHUWhJV0R4aEFuSzNHcUFOR25ZM3Bnb1p6QzRTdHVfWmNNS2tsMVZ0bnZiZUZoTExHMnpmMFQ0QTM1Q29ZVHV3TnV0LUNVS0prOW5mZ0x5YXZWNVJGclg1cFJTV3lGS0dUNzY4Rk82MmhBY3pCZDhVeVdwdVJvNGhZZkZjOUI4dUNKZ21JSF9KWXhRVlgwMjh1akdyYm04cjVFa01GNHMyN0RZWmkwRTVCMkZGczNLOEsyQTJxM0l0R3ZKWXdkc2c1Q0g3eGVhelZGNmtjTW5vU3ZvM0c2MVp2WU1lOE1wQ0c0ekMxekdTeDdHSnpjRkxyUG9OcWVnTzhob1p5YzJOSzc1elBFWUN1TTkzcTB1Q01QYTlQbmxPV2tLZzVzX3RLTVZiQV9sMEd2eHdla3hVUlRKSzBXbjRxc0diLXRqb3lmdDd0MmxzcG9LMnprWEtPRGFSUlZfUXhicmJxYlFzSXpGLXIwNnB6c1JRSExGTlR4WUJBX3Yyc1BBSXFkSGowdEpLcUs3UG5XMkk3ZW5BNE5UM1NaOVp6WkdCY3Jua3R5Mm1fQVYyQTNWaHRlRk43X0I4VUVnYXhKenNLNVZkQnhGLUJDNFZlSkdvMXRLcXJ0WktQX0dqQk1NTGxiNlhZOEVoS3BQT1M0a2RIQnNsVFdPLWNwZzhnNDZxRnpmRDdqOE5IUTF4UkJqRmZ3ZnI5ZjB0YjhZckNHek9RNWMwQjdGQUxDSk5LSUZnc3JWallkT2Q5b1l1QTV0YlpmdlJBdDJHTllfLVRId0xyMHBZYWQzY21XTU5VUFBjd2R3cjRqNkI1Qks5amJRX2d0UldGcUF3SHVCaHRCbklpajF1UFRPNDZlRmttUXZWT1E2dll6M015M1djak5Lbnl2X1dmdGdHVFJIdnM5RXlfblFMZ2ViV2dUSGI3S3VsVjhKN2dFWTBOOERob3Vsb0dVTXFsaVh0bjZqYWV0VWVSQmFoT2hUbkkxWGVaNGZzdGdpbHc3dnhEeFI1dTVXcEdHQWtHMi1kc281b045QVVEcHh2dlh4Wld3S0g3NkNvcUZqbmJIQTBXVlh5R0hENEw2SVlrQThkWHhncFltOUU5OFM3YjRnaTEycTB6TWVMR2Y3dktJRG1ObWpvRVZoWEtGS1BOXzM0RjBMeE1NVWtfMW5BM3lxb2FXbUd6UlNWV3EtLXloa05QendNSDF4WDJrQ1p5b1hsZ25kSzh6dzVkSXBza2RsZkhuU1piMVpEdjZtTWhQbklLMWhhblJZb1NzS1ZtZG9wRUhtODdDVFVpWUVydHlPSDdmU2FpalR3M1dUUnY0N21VcUdvdTBXdUNIZlJlVXMxMFYtblJpYWNoSVBqLTV2U1NNS0NTcFdscWJ1Q1V2RDlsdnktRVNubEw0T19abEVRckRnNVRTSUxZNU44WGw5cVM0eDREd05DR1ZiSnZJMUJfeE5CTkJmRFVmcVF2UXk3UlU3d1ZhSHFLelIyM0h1eThzQU8xV0JXMGpCdW1RSjI3NUpHZldTVngtRjFhXzhIWkcwR1ZLczAySXFGdDRTOWRyMENPNXRHMmsxTnNzTXVrWXl0YnRzcXJJdGxzblRRVjdiTUhFZ1pGSWJ6TGpBd3lhUWM4NWQwSXhsQmJibUJZZUhkWnRubGRkdGs5QnZ5NHNqckRnSVZlQWVwdVZxRjNONklrcXVJM1UtZ2p3S0FjQTNKMVJkZENEeXJMVTJhakZGOVdhU0FuYWlOcXJ1R3o3WVY5SDFiaWlkWFJiSFBoRXNFNDNLMkpoX2ljOVBoTFUzdlBXbGNRODV1R3RrWkxRTTNlbUF1RzJLR1NGQTcxd1pyb1hocVRIQUxKNWpLTElhQ0Rld2hfTHBOTHNjM3RVS0xOMDRaVjJHSDhTdFl1N3ZlOUE2QXlTcmhUZjFKRGV5aWdael9kU1ktQXNpaGszRDFjSTN4Rmh5LUdsZTNWQ3ZPRjFSTFFfZHh2NjV2bldTWkdBeHRNdXFHV2VNTnVZY09saXplRGZnNFVuM2RPN1VpdDhpb1R4dU1WMndyRVNPVXpRdThpb0d6TzNpV3RXWWxfMll0LTF1eGZVRjVMSF9EOW9pazFpQTJ3RE9ydnFJemhBczJGakxMQmhqS3BIcWViODJTZ2J3elJRbzJFQmZuenJiMzBWNmtPTjUzOEJkanRCS0hvYUdJSnhLUnNnRjZzUkkxQy1uSVR4NWFZeVhJMExDU0JBRWU5eUpUWkxVV2tqT3AtX3pSSnZfR3dkTnhTWnZMSEdkcFlWT3ByMTF6OFU0azhYTE1xSnRhWXAtZk1CcVh4eWJMZDNxaE1kX1B2V0dNdlJHYm9pd3F3cnYtWllwbHU5Y1I1a1RvZmlHY1I1SFpaWXhTcjN1ZVVubXpjY0kyRUJNQVFqc3UyLWthU2NLMnNWang2emNUaHU0UFBxSXpELVpzdDlRbGpqVGEtZW5kU1ktby1NUjFvbDdkNjR4eTViVzM3Q0NOcHJYX0Zud3djaEhCMXVHUzNLbEx3UUxkV0NlX3dPYjY3NDNNSHFZamExNm4zdW9UZFF0TVFIUkt6N09kaWl2TDF0NGJQdFVrZVFfZkpsRGpDbjJTRGpRelBUWWY4SlY0eFpkTFZlcEE3V0NaNHUyWXNyUFBKUk1SdU51M1VNWUVxYjVhX2lzdXJJYzJNRDUzYVJpZHlxODBSN1lkaVRIMV9oZDRfR3pEWTd1UDBqSm51RHV0SUNNUkJLNTlqejIxWWpydy1ycGdnNFFrRlQ2Sm1CbnFSS20tWC1YTlNDMFdLeFJGcjRmQlFLVXA3bEFfRDlIVWdzdjlPUE9RREF5V2ZVMzdja2ZfWEFNNERiYVJZTkZrdEk5enUzazhWUk1NRE9PdVJPdTM0WHBhU2VUaVg0Z1ZtdHp1bDkzUnd2VUplMDBBT0FyQU53ZmpKRUZHSU5fN1ZxMWVHTmhsWlMwSkZBaXY0OGJzU3cwTTB0eWpmVGMtZlJrMWh1UUx4cC1HOURyMHg0V2ZaWC16dVgzaUx5VnRsdkIzNHo3eXcxSTU4aklTeFdMZlczRXR5T0xod0RKb2pYTHJpeU5fWnJRQ21BS0tfZ19NU2hvY0FLMlo3S0wzSy1ETGw2NnFLR3RwV0FkS0JnNWxsWS1YUXJjWnF2MGlkbWlaSndqZ2kyZFg3VmVmVUw2cld4TkQyM05Vb1U3QUVVempzdThKMHF2ZmQtU3h3SHpseFpLYUo4NTV0aTdTS2RUNThUY19MTFN4UDFXUXAyaENOdkJ2MDJQNlJ6VUR0LUNSSVZOWWpUYzFaVXNSTzByRExTMERmNmxkekZWeHFaUnh6eTlpQ2ZhczRFVndMNW84WHJVbmh0elFLamNUY090bjVyWjh5OHZidUhGWkdyZlMzRG5vemNuc2dRekVwWGw5X0cwRlYwRFY3bGN6TWlEajk1eGh3cnJtbmttdlY4VktZOFFTSkQzbklYOTlCZ05LWldyNmdWWm92RHYxUmpBd2JiSlJOcnJDYS16R3JoRW9WX0pPUGRITC1OZlNsNjA0TnhvR1NIR3RtekNCUktQYjdHNUJfWFVsUGE0NEZReXgtSk03RmlxbE45Q3lJckpkZVRXcWtjalFEWk9Mb0M0UFB0Y3ZDZldCOFZ3N3VCN1Rfbmx5emlFZk9zVkd5S1VUMGE1Tm9BdkZpNVJGSE9Xalg2bkJDWUZOaHhUWVVkU0R2RFRhOWlYN1Zyd3NNaVRvMGxCbzJQMm9OQng5Q0M0ajNVaTVOV180eDJNdWlKSEtqc3dXa2d1cDhxd3pyeTlxYU1fSDFFdXZVZWl0X09kRTN6MFV4N3RkT0QyM0lqZFVuTnZ5eGROMTVYcGU0Q2lReGJMU25kME9KQnpoWHZ2V2ZyQlVnZmttMkYxVjc1V1J4Y0h4NmFrX1Axay1oa3ZGb3dGZnEtZUR1cEU4aHM1NFdGZFFBSmpYczV3MzdkWXZNUXh2WXdKa0VwTDNiN3ZkRHdJWWNqRlg5SWctMmJJVTZJNnNKX1pwYlNONlpjbG4yaE5tblg0WmVZNHVQRTAxVVJlNm03R205QWZwRTJhS2lPMS1pVm56SkdBOElKUHh1NXp0WkxtWUNPaG85Nk50V1VzR1E4MEpTbmgwWXVELThZclhmWnBLSjJmRGFPODZ4NVB0NWN5UVJYc3h0ZTBPUjhGMDd5Tm1nclNIZ2NGMEJGTG5fd2xXbGJUd2tiRHk1ZWRhcWVFMFdZdEY1Mnl1Zjd1MnZvZXhZckEuRFVIdHJDMk1iVVhUZ05XTTZZdlppMkdIVkpMenJsY2dVVXF2RXBrNkpCYyIsInRhZyI6Imttc3BfZW5jbGF2ZV9iYWNrdXAifV0sImtkZiI6InNwMTA4X2tkZiJ9LCJTaGFyZWRLZXlzIjp7ImVuY19zaGFyZXMiOlt7ImVuY19rZXkiOiJleUpoYkdjaU9pSlNVMEV0VDBGRlVDMHlOVFlpTENKbGJtTWlPaUpCTWpVMlEwSkRMVWhUTlRFeUlpd2lhMmxrSWpvaWJtOTBJSFZ6WldRaWZRLk0tQXhHUVlKNlVDQ0xtZVhwOWdTUjJFVTFsbktMRXEyZjFWd01uT0pXaWFMRGJIZ01sX20tRlZ1X1hsNEdNczM2T056YTFJZ3FEM19aQ2h4dmJUSzRtb2JnczlyQzBWR0tYeDdHN3FkbTdNbDhFVGZCampMTVl3ZElReUdyeVREWVdYZW5UdEFacVpJNnc1NmZhX1REMmhzejNGQ2NkLVBmdExYZm04aDFMaFlHZVlfUVlqMzBPeVhlV29FZ1ZndzYtQ2d1RGlhNUdxWjhISl85S0Z4ZVZPQl9zQkt1QjdWWmdpRjN5LVVkQ1FNV0JSSkhITU5mTWs0QTV1bU81aWFRbzFVN3pDekRDVGpodjBVX1U5U2ZOdHFFUFdkbFZxanYwdXpaNXJOSUdxQjI0cE5NT0V5dU8ySDZWTi10R0xkX1pLNlNHUmNPc09BVlllazN1WjZyejhiekFZRVVYLXlXNFBUUWV2Ujg2WlJzc3BIdXRjYldaNi0ySG5YUV9UUTBJNFMtcTJIVUVUNEE1QWk2cy1NQkFLeDQ5eFV4c1VDUmxQTHFnUGUwRERlaDJmOVVpQnRGQy1pazA4ZXBYa2xHVnJqVWFXLTU2RUU1b1R3WWN1bVpNMy1nUHdPV3JUN1luRThWd3BveEt1Z3Bua01YNENJZWpOWTlCRzVlcGxfc0VfLTRpMWRpaWprdDR6UUtDNHVTOWhDMXRSdVdfYW5wZHBpd3VYUFVOaWRNX2VpWDVRVWVNT256cVFjLWtxcmdRR1dUYVp6S2lyZGNQOHpsTzdYQnZWaW1Rc2V3dVVJZnVfRVpMQ010WVdLZEVLTk5Kb19LTTB5bm9qZ04zcmxia1N5ZWRTcE4wVXVnTjdPd3o2YmZXM2xSNHdKajhOclo0bzM5cjBLVDhZLnZjYWFxQ2RMM0U2U2wyRkpVeFZNdVEubXFTa3RpZ3pYbkZpTkhoUTBXQ1RheEtBODFYWlpFU1A4QnNuMlhTSFlzRnpOOXZOdHFRN052d2I3RFItSnJzaVRRRWxZb0NSanFyemZCQm5EbC1Vd2g5QS1LanBzUFJKcXRHd2dSWW9vRlUueW1ObTVRWlJxeWdadjdoQ1dmQUJpNF9KRHI2dmdQNVFNQmpoMEd2WDlMOCIsIng1dF8yNTYiOiI3ODd2MUR0V3E0OU03bzB6dlRRbmp0V3gzdmNTc2xZZzBxYnoxdlJUa080In0seyJlbmNfa2V5IjoiZXlKaGJHY2lPaUpTVTBFdFQwRkZVQzB5TlRZaUxDSmxibU1pT2lKQk1qVTJRMEpETFVoVE5URXlJaXdpYTJsa0lqb2libTkwSUhWelpXUWlmUS5ndUFieGdOUmNDcXJNOUF3TnJEOWR2VnFBcUYwSUVuUjBTbWZGR1Q3T2hpUDhZdVVKbFd2OUt1MmVva05GLVZrbUZuZkdfMWlIVVZoYUxNNEN3X0RBRjQ1YnVtMlBCc29qcEYxY1FNTDJPR3NyZ0xnZG1sMWNtbEpKaXh3UGk2Y29TVTgxMGFrdTdpalVVU0xDSmlSaHJvQnpmVm1PS0lqQ0duaGVEcl9pdVdwN1NaUkRsejYzaFMyVGh1bXZ0LS1TVzU2TGxSeHpLelJaeFliOUctWTBvYXF4UkhsMThLSWp6MGZNeEswS2ROMk5LQTdWaDZEUnlRR3BvRUFZTjRtYkxJbDgwb3A5VlFCUE1uVE1KRnRHY1pQV0JvNlVDQk9HRTN6eWUyRGEyakZnTGtnOV9xRV81MXY4RGllZUJYY2FGTFlzV3lxbTZRLXJnczFxNlozVktEZkNONFNDNllvSFBsd0xCMkIwOTJDdzNkM0kwVm52eUtTdndmMEdtNW9zUG9tbm1SN0NXa20ySGVUMEFJbFJoUG41Y1V1T3ZjV1BhNFFtbEdyRG5sZ2RTOVRqSmdjVFhQdEVLU2ljWmtYdFhtdUtNUHVNbmNSVFNOVHI0WGZ3aUJtNEFtMjJKd1FtN0xPS1M5X2cxNi1DMDFTcFh5UDQtNkZSV3NZMWczMFVjZkxPS1pjRWVtUTVSVGRDWkJRU3dQMTZEZ05PLXluM2JTUVl2ZGFUYm5qV0pVSjEyTWppMXMwckxMdDFkOE5GbS1XRVVXdUFZd1B5YlJLa2JBRXdFajR0MjhyRmZHaFZBdmc0R3otSHh3OHFLLUhuSkNwWVFtTXFqT0hpaUN1OWNVUUYyeXBmTGxEVU9SUlpYd1Bobnc5NUNWV3JPcmhWWENIVWk5bUwtdy55dFVSMjVSVjg5WFNjR1JtSW83MWxBLl9TWGs1bzF5Wldpdk5NbGVIYl85Z21NeWZuNjZwTFdyLUxhbVZ0VmhjNHFZZlg1RFFiSjFoalVXYmVtcHZRc2hHVUxqX08xMkpKbU9tblZLRGYwR05FbnJGOUlFRlRpbzJPZy1TeHNKdTQ0LmYtRnlTYVg0Y3pnSGM5X3haalAyeEdibDl4bnRvMzBNMDU3VnRCaHNrLUkiLCJ4NXRfMjU2IjoibmhHaVdaM3NEdWdBS1pObnBVNGY5MHdYbFpRTTAzR1Y2UGZzYk5MczhObyJ9LHsiZW5jX2tleSI6ImV5SmhiR2NpT2lKU1UwRXRUMEZGVUMweU5UWWlMQ0psYm1NaU9pSkJNalUyUTBKRExVaFROVEV5SWl3aWEybGtJam9pYm05MElIVnpaV1FpZlEuZXRadTJjek9zVTBBZWRRSWdnamxsNFZIWk40SFlXc1FpZG9EdUx0VVlSMlUxWnBLU3RYSjUtUjduUm1Mdk1USVZVQ0pWcU0yTkZxNjB6cjZMZUc1VXNPY0ZGal9MQzgyMlRyMEJJa1BaZnRWZ1gzUnJHTmJzcmNKWGtxcW9fa05WNDM3Tl81VlgwVE5ldFZURk13RDM4Q3FXX0otQkUwd1JKQ21FTVk4QlpvckROc0dOTnVhUlg1bDdod0NRX1RtN1NKRVhlNGR1alJXVEVEWXM5dXdMelgxcFplcVRFa0NfZTl0TVd1Q2ZDZlo4Q1JyQ25oQ3oyemJ2bUQxSldaVVlRc253a3I1LWxtZnQwUm9UczF2cGVQbGtIdjl3UkplYkp3U29KUWJjQ3JPMlJRRE9od1BCNkdXbk1WTTY1WnU5MVh5V3RQNFdjUHFvak5wdDZHSEZPdmEzX3RTaG1LV3RYNXhhM0dzUUVJaTNCSTdGOVdMNEJ1NkhqclFkMDVjcHZVcm80X2hUeURiWUtET0g5NFlPVi1qUXg1Sl9RUXJWVnJDbFJZd0Y0ZjMzcFItTzJJbnh1N1UzZGJNLVFQNDlLYUo3Y2g4MkpmOTRxY2N0dGJoVGpxNG5TdzVNV2VjbkNQZjRIa1JjdWw5RGtJZEVwY0RIMmRaVXFkV0JHYjFuRWNldlc0NDBUbFJuNkcwVHhqSzBaX2dpekx4dXVsZklPUTEySEpNdlBjWXd3OV8tMWdGZWdUdDgzb3N5OEJmVjNwNDA3eFpXRVROUFR5ZWNMNTV2enRKUjJjUjZLWmRlTkdsNlpENTgwNmVPYzlaUGIwS1Fnb2I3MkRVM05mODJidDN1cFB0LXEwaFNuZzNIWHpUZUhWYlFRV01NWmxBcEN2aHdpWml0SGcuY2c0d2tyQ0p1YzVBbmJaY2lQWVhDUS5YOW1Hc0QxdWJSU0lFUzBiclJiOWhQU0xaY2tTaGNkbmtBRzE3MTFpcnpmcmlEMWZwS1pna1RwQzZfQ2daTnBiU2JHT3psQTZkZ2pReXpxM0dFN1JGa0MxRzh4cW9DZE8xTVp1MUVsQzdXMC40dUZFdEFSUktzVHdxWUtjRDRTNm1HQ2JNZmhxeU9xd1VHdFpPMWtYNExjIiwieDV0XzI1NiI6IndkOUVyWmhYUVppeHB3TTZPLUVCOWNLQWlBaVM3YVdnUkdkQWtNMU0yNzAifV0sImtleV9hbGdvcml0aG0iOiJzaGFtaXJfc2hhcmUiLCJyZXF1aXJlZCI6Mn0sInZlcnNpb24iOjJ9" - } - }, "202": { "headers": { "Retry-After": 5, diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2-preview/keys.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2-preview/keys.json index a060cfb01a9e..0d94c348ec13 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2-preview/keys.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2-preview/keys.json @@ -1298,6 +1298,10 @@ }, "KeyProperties": { "properties": { + "exportable": { + "type": "boolean", + "description": "Not supported in this version. Indicates if the private key can be exported." + }, "kty": { "x-ms-client-name": "keyType", "type": "string", diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2-preview/securitydomain.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2-preview/securitydomain.json index 4febb7f058a1..755ee97ead36 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2-preview/securitydomain.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2-preview/securitydomain.json @@ -97,12 +97,6 @@ } } }, - "200": { - "description": "The response contains the confirmed Security Domain.", - "schema": { - "$ref": "#/definitions/SecurityDomainObject" - } - }, "default": { "description": "Key Vault error response describing why the operation failed.", "schema": { diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.3-preview/examples/GetKeyRotationPolicy-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.3-preview/examples/GetKeyRotationPolicy-example.json new file mode 100644 index 000000000000..a811e1a71e74 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.3-preview/examples/GetKeyRotationPolicy-example.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "key01", + "api-version": "7.3-preview" + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/keys/key01/rotationpolicy", + "lifetimeActions": [ + { + "trigger": { + "timeAfterCreate": "P90D" + }, + "action": { + "type": "rotate" + } + }, + { + "trigger": { + "timeBeforeExpiry": "P30D" + }, + "action": { + "type": "notify" + } + } + ], + "attributes": { + "expiryTime": "P2Y", + "created": 1482188947, + "updated": 1482188948 + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.3-preview/examples/GetRandomBytes-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.3-preview/examples/GetRandomBytes-example.json new file mode 100644 index 000000000000..7d945a43bce0 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.3-preview/examples/GetRandomBytes-example.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myhsm.managedhsm.azure.net/", + "api-version": "7.3-preview", + "parameters": { + "count": 4 + } + }, + "responses": { + "200": { + "body": { + "value": "MTIzNA" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.3-preview/examples/RotateKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.3-preview/examples/RotateKey-example.json new file mode 100644 index 000000000000..9446ddf7bb9e --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.3-preview/examples/RotateKey-example.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "Key01", + "api-version": "7.3-preview" + }, + "responses": { + "200": { + "body": { + "key": { + "kid": "https://myvault.vault.azure.net/keys/CreateSoftKeyTest/78deebed173b48e48f55abf87ed4cf71", + "kty": "RSA", + "key_ops": [ + "encrypt", + "decrypt", + "sign", + "verify", + "wrapKey", + "unwrapKey" + ], + "n": "2HJAE5fU3Cw2Rt9hEuq-F6XjINKGa-zskfISVqopqUy60GOs2eyhxbWbJBeUXNor_gf-tXtNeuqeBgitLeVa640UDvnEjYTKWjCniTxZRaU7ewY8BfTSk-7KxoDdLsPSpX_MX4rwlAx-_1UGk5t4sQgTbm9T6Fm2oqFd37dsz5-Gj27UP2GTAShfJPFD7MqU_zIgOI0pfqsbNL5xTQVM29K6rX4jSPtylZV3uWJtkoQIQnrIHhk1d0SC0KwlBV3V7R_LVYjiXLyIXsFzSNYgQ68ZjAwt8iL7I8Osa-ehQLM13DVvLASaf7Jnu3sC3CWl3Gyirgded6cfMmswJzY87w", + "e": "AQAB" + }, + "attributes": { + "enabled": true, + "created": 1493942451, + "updated": 1493942451, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "purpose": "unit test", + "test name ": "CreateGetDeleteKeyTest" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.3-preview/examples/UpdateKeyRotationPolicy-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.3-preview/examples/UpdateKeyRotationPolicy-example.json new file mode 100644 index 000000000000..5de3b4d2eac9 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.3-preview/examples/UpdateKeyRotationPolicy-example.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "updateKey01", + "api-version": "7.3-preview", + "keyRotationPolicy": { + "lifetimeActions": [ + { + "trigger": { + "timeAfterCreate": "P90D" + }, + "action": { + "type": "rotate" + } + }, + { + "trigger": { + "timeBeforeExpiry": "P30D" + }, + "action": { + "type": "notify" + } + } + ], + "attributes": { + "expirationTime": "P2Y" + } + } + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/keys/updateKey01/rotationpolicy", + "lifetimeActions": [ + { + "trigger": { + "timeAfterCreate": "P90D" + }, + "action": { + "type": "rotate" + } + }, + { + "trigger": { + "timeBeforeExpiry": "P30D" + }, + "action": { + "type": "notify" + } + } + ], + "attributes": { + "expiryTime": "P2Y", + "created": 1482188947, + "updated": 1482188948 + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.3-preview/examples/export-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.3-preview/examples/export-example.json index cfbf3a7b4112..7fb29483badc 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.3-preview/examples/export-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.3-preview/examples/export-example.json @@ -5,7 +5,7 @@ "key-version": "4eb68492b5f6421e835d961ad2be3155", "api-version": "7.3-preview", "parameters": { - "kek": { + "wrappingKey": { "kty": "RSA", "key_ops": [ "encrypt", diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.3-preview/examples/release-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.3-preview/examples/release-example.json index 47b1ae507792..796aae0d7d0e 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.3-preview/examples/release-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.3-preview/examples/release-example.json @@ -5,7 +5,7 @@ "key-version": "4eb68492b5f6421e835d961ad2be3155", "api-version": "7.3-preview", "parameters": { - "env": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6IkdXQXkxNk5ieFJJQ3lCUzVKckJxRk5DdXdjS2YxYUVYbS1hUDVsUlJ4UEUiLCJqa3UiOiJodHRwOi8vbG9jYWxob3N0OjgwMjMva2V5cyJ9.eyJhYXMtZWhkIjoiZXlKclpYbHpJanBiZXlKbElqb2lRVkZCUWlJc0ltdGxlVjl2Y0hNaU9sc2laR1ZqY25sd2RDSXNJbVZ1WTNKNWNIUWlYU3dpYTJsa0lqb2lOVE16TmpReU5HTXRaV1kzWlMxaU1tRm1MVFU1WmprdE5HUXdPRGhtTURRMFpHVTFJaXdpYTNSNUlqb2lVbE5CSWl3aWJpSTZJbkJPYkhoWVNuRTNPSGRPUkVVd2FXMVNOa1JCWWs5alNrRXpUekp1UlZvNVdFaGtjMDVQTjB0b00xWlJRVTh5VWt0eFlqQk9iRXh4TVhwUFRVOTVZVlJPUW5rNWMzUTRjbG95TURWYU1EWTFjalY2YlRKa1FrSllkRkJUU21Sc1VtSm9WRXd0TlRCcWFFVXpiRUV4WjFVemVYcDJaR0o1U1Zob2NtMDNkWEJFVGtKemFXeFNlR1ZVUW1KUGNWOW1XSE5vT1dGMVVHeGxVM0pOWlZCR2JGbElkVmRNTjJacGNYWktiMHMyZUZSSVZFSmZUa2R1WjBWMlFrMTVPRGRxWlVsbExWbEJUbUYxWkRsRk5GYzFhWHBLZFVwNmJGOHhORkJFY1VWdWVGcFNTM0F5YW1WUGJsZEpTRXRVVm0wMWFsRmhiakZoTlVkdmJGWmxRV2szWlhoalNtRXlNaTFLZERSRWEwNHlWakZMTUZCZlR6YzJSME5ETjNCWlVYVlpTWEkxZFZWclExUmtWVVYxYmxKSWIyaFRWbTFHZVZGaldFSlVkVmxuUVdNMVJFZEpaVGQ1UjNSRFdtOW9WRjlsVmxGQ2NESldVU0lzSW5WelpTSTZJbVZ1WXlKOVhYMCIsImlzcyI6Imh0dHA6Ly9sb2NhbGhvc3Q6ODAyMy8iLCJzZ3gtbXJlbmNsYXZlIjoiMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCIsInNneC1tcnNpZ25lciI6Ijg2Nzg4ZmU0MDQ0OGYyYTEyZTIwYmY4ZDVlN2ExYzMxMzliYzVmZGMxNDMyYjM3MGMxZGEzNDg5YWI2NDlhODUiLCJpcy1kZWJ1Z2dhYmxlIjp0cnVlLCJ0ZWUiOiJzZ3giLCJpYXQiOjE1ODc0MjUxNzMsImV4cCI6MTU4ODAyOTk3M30.CA9gO0kRMHt6e9xTKopwEnDt-Mc52oAAe6zicFwX3REZd5E0m3WzJuSYS8H9iKTGL1dfusflPx74C5xLTZiHe0D2YFHYoW3efEm3r55DwkpTbA6tbDjMY7OIC9XuC7prAf4nQ5hYRk0LATzwytYIZ-c-R08ZEt5CV5XqR5MuSDKWWslPm36BHD3l03VVNEEG4hC9KuCIZ2z9YK5ofGze-IY1J9x1EwnG-y_1RF6rDKENjOROOaOH9JvohHGIfK0FKVj8_7E6JxMTQMb7K-45GfE20tTVdCs4A4k3jXNrIRcGmSK5EMrB_LbHzk0PIc6sjl-VuPZVqGxhsaAyoH3cdA" + "target": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6IkdXQXkxNk5ieFJJQ3lCUzVKckJxRk5DdXdjS2YxYUVYbS1hUDVsUlJ4UEUiLCJqa3UiOiJodHRwOi8vbG9jYWxob3N0OjgwMjMva2V5cyJ9.eyJhYXMtZWhkIjoiZXlKclpYbHpJanBiZXlKbElqb2lRVkZCUWlJc0ltdGxlVjl2Y0hNaU9sc2laR1ZqY25sd2RDSXNJbVZ1WTNKNWNIUWlYU3dpYTJsa0lqb2lOVE16TmpReU5HTXRaV1kzWlMxaU1tRm1MVFU1WmprdE5HUXdPRGhtTURRMFpHVTFJaXdpYTNSNUlqb2lVbE5CSWl3aWJpSTZJbkJPYkhoWVNuRTNPSGRPUkVVd2FXMVNOa1JCWWs5alNrRXpUekp1UlZvNVdFaGtjMDVQTjB0b00xWlJRVTh5VWt0eFlqQk9iRXh4TVhwUFRVOTVZVlJPUW5rNWMzUTRjbG95TURWYU1EWTFjalY2YlRKa1FrSllkRkJUU21Sc1VtSm9WRXd0TlRCcWFFVXpiRUV4WjFVemVYcDJaR0o1U1Zob2NtMDNkWEJFVGtKemFXeFNlR1ZVUW1KUGNWOW1XSE5vT1dGMVVHeGxVM0pOWlZCR2JGbElkVmRNTjJacGNYWktiMHMyZUZSSVZFSmZUa2R1WjBWMlFrMTVPRGRxWlVsbExWbEJUbUYxWkRsRk5GYzFhWHBLZFVwNmJGOHhORkJFY1VWdWVGcFNTM0F5YW1WUGJsZEpTRXRVVm0wMWFsRmhiakZoTlVkdmJGWmxRV2szWlhoalNtRXlNaTFLZERSRWEwNHlWakZMTUZCZlR6YzJSME5ETjNCWlVYVlpTWEkxZFZWclExUmtWVVYxYmxKSWIyaFRWbTFHZVZGaldFSlVkVmxuUVdNMVJFZEpaVGQ1UjNSRFdtOW9WRjlsVmxGQ2NESldVU0lzSW5WelpTSTZJbVZ1WXlKOVhYMCIsImlzcyI6Imh0dHA6Ly9sb2NhbGhvc3Q6ODAyMy8iLCJzZ3gtbXJlbmNsYXZlIjoiMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCIsInNneC1tcnNpZ25lciI6Ijg2Nzg4ZmU0MDQ0OGYyYTEyZTIwYmY4ZDVlN2ExYzMxMzliYzVmZGMxNDMyYjM3MGMxZGEzNDg5YWI2NDlhODUiLCJpcy1kZWJ1Z2dhYmxlIjp0cnVlLCJ0ZWUiOiJzZ3giLCJpYXQiOjE1ODc0MjUxNzMsImV4cCI6MTU4ODAyOTk3M30.CA9gO0kRMHt6e9xTKopwEnDt-Mc52oAAe6zicFwX3REZd5E0m3WzJuSYS8H9iKTGL1dfusflPx74C5xLTZiHe0D2YFHYoW3efEm3r55DwkpTbA6tbDjMY7OIC9XuC7prAf4nQ5hYRk0LATzwytYIZ-c-R08ZEt5CV5XqR5MuSDKWWslPm36BHD3l03VVNEEG4hC9KuCIZ2z9YK5ofGze-IY1J9x1EwnG-y_1RF6rDKENjOROOaOH9JvohHGIfK0FKVj8_7E6JxMTQMb7K-45GfE20tTVdCs4A4k3jXNrIRcGmSK5EMrB_LbHzk0PIc6sjl-VuPZVqGxhsaAyoH3cdA" } }, "responses": { diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.3-preview/examples/securitydomaindownloadpost-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.3-preview/examples/securitydomaindownloadpost-example.json index 3f78158d4491..d0d853a1abb1 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.3-preview/examples/securitydomaindownloadpost-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.3-preview/examples/securitydomaindownloadpost-example.json @@ -66,11 +66,6 @@ "api-version": "7.3-preview" }, "responses": { - "200": { - "body": { - "value": "eyJFbmNEYXRhIjp7ImRhdGEiOlt7ImNvbXBhY3RfandlIjoiZXlKaGJHY2lPaUprYVhJaUxDSmxibU1pT2lKQk1qVTJRMEpETFVoVE5URXlJaXdpYTJsa0lqb2lhSE50WDJKaFkydDFjQ0o5Li53dGhUcG5Dakh6d0Fvbm14SlJrcmhnLmIxU21NcjJkX2J3VUZJS0tlRnZ0Y2lvS1BiUXo3OGJyd1duclVBZE4tM0txY01FUXNtSU5FN09WZ2JLbFZ0V2tkemJmaGdrUHd1dUhtaG9QUHpJd2tHQTQwYXVLZW9OaC1EN2RWanBJd2NVcDVMNDVVVlNRWXM5elRQQnRmSnItcy0xbk1DNEhwZnpXRHNhZUxUTzhfcGRtNGxISi1lN3dGeTE3NVJQMDRZR0xPZlVEaVBTaUZXTzVQd3djQjRsSUx1ZXI4cmgyaGYtSFN1M3lnYW02N3VGdjc1WTAtU0gxN1F3VHpwbkRtXzZUbzNaUWZIRHp3WUprQjlWYmRvaHVMcWl4QUY2MS14UjVvXzc3MUdtOHlkZHF1Ri1qV2ppUjAwNWZBSnFLb1UyM3lmYXhZdmROaFdNQVUwU3RfTG5HTnYxaXRQYVg3cXV2aWkzOFlhbjd3TU9VZGg4TW5VS19rN1hhSU96VTJfUFVWVll2R2RNcXFlaVRNLXBrekFxZC02LU5vZ3llc000NzdXdnBNa0F2STZLS2xvRkJKQzRfUlFYYUxITHZwMnAxTlM0NUZLNTEzb1JJeHROd3AtM3JUME5FU2RTbnZfb3ZCeDhFVGpZdF9Mcm1RNHplb2pqRFVLZC1EWmxQcFlGUVAwZWFfNmpSckpsZ3lvVC16czhWTEFFREdoX1lmZDRydHNENVhFZGVMZ0IyMEF2NWlLRk1jcHhtTVVSakRJQTZES1hNUXFIa1RLam1pQmU2aHROZ2FNNjE3S2FYclRuWjE5Ui0zWlIxbGs4UmhoQm5yZ0NBamlWd1lVcE8xUGl0ZDY2bl82VFlTVTJ5eFkxMkxoZ0V3Z1hxR2pzOGJIVEtGYnZVVmxKQTduV1RSN2hTUHpTZDJjanlBaUNDR1ZEUjQ4VjBTY1FBVXFLTGVFZUl5NzhueXJQSE9kXzk3dGtGSXBsdmhncnBkdXRISUNyakQ3T1BMWVJ6UGpFQlJxUFFzQm1RSzl2V1NDNDk5ZGFITzRJOUtRTG9mVTc1VmhOOGt0NlV4aGZFVF95eURfSGM0UGJLZkc5TG1hYUlxVGVtVWZCVnU5REx4RXJLbzhLVC1RX1dFRi1LOEZFbXhZdUFKWEgyMktrTWxfSGFva280NlRCV0FPcTduLW8zaHRpbVBlUmxuSkZxa0lqbTBIc3UzWEJETkdpMEFZZGtpakE0QzgtOFVwNk9ZSWVDZnZOeVEzYVllcmhJVGpHR1puMnJ5SEZCRnR3WVIwbkJCc0ZfMFo4SkR6NTlvTEtlMThheVlvaUp1UHNTdWp4VHFNeF8yNG44WndQTnB6LVhYLXBEVWpkSUZvVS1FSXV0UWxnT3dqUmVKZ3I3WF8yUks5cVBfT25ERkRNUnZzUU5oS1pIWklhREdVdEROd2JxMmNHQzBNRElpeDgzR2RIS29kbGJqNkJ6VXEtUXFXT1dSdUtiQ1NnTFdULVdSdnNzUXlONnhIYXRHb1VSMUVMcVpPejJUZmw0cm5Ka2QtSTlRTE15c01zbVFiZldlTXBJWXA3M29STGxVNm9iRnNkM2JNNnVGeGFGcDUzT0pDamNGUUNlLWM4X0xEMWk2dWhFeFNZenNSYjhLR2cyX0dpMFNCSkcwdjBSb205X3oyVklScER5MFdyZmhnLV9YRjZUdFNtZkhoYWpRVzVqTC1xMnNmQkNlcVI5M3FXYUt1TFJQS0RfSm4zWElJR1R4UklDMzRETTlfbXprRTE2SUZDa0dnN3FEMmZCZ2EwNHA2c1hrdlEtUkdYVFhKZGlOd3NpVW1RUFR3Ql9LSVA2OFRNQWdSTWpBMEFJMjZOSmZ0b2Z4eng2X0w2VTU1SDZELVZ1UjdDOWsyR2lWa2Y0VnU0Q2p4WTI5TWdwUERlaHdScjVVMXRBUFU3Wi1nVU9Eb0NTcGRINVRjY1NROGtKb3FEby04SWRKMjlYa0NEUTdDX3U2aTFVVF9feUhLbjFwSUxocnBxZm5lb081SE5sNEJTbjJ5cEdFZUpfYldCNl9GMU4tYXBoVDNjRmpQWjVnb0tfM3ZPVWw4N0gtSjMxNnhpUGRiZGhiM3ZkSTVkQ3daekhzOEZwbFpVaXJGNGlsRHM4bklrRGs0cXdIZGZvQ2VWTlgtWE1neUFOUTlKZTQxOHJEZkprZF82OWFiSzB6MXlKcmg4ZHhNajFHSnc2N2FzZHZ1XzV1elZPcjBldE95WDUzUVMtUkhLeEs4RWZUZ0U2SThwVjBTQ1hRYkg5S2lNd1dYcm45cjk0QzFhZ3dJLUZ1b0JlNFl4eHo4OFc2RUdvUzJMMmkwWTM0LWFjWVJxSTl5M3l2aVJ3T29Ub2NnUmF3NDFUU3ZROE5zUzBPQUlyY1JzMlJfMWhOeFlObFAyUm04VktPcldEcjQ1MHNJRC13elYzUmJxenJLcVJnbmxBOEFKcnVCa1FPbTQzVUFIVnBDY1pvVGtUMVYxYi1Weml3bUQzV0hHZFFnM216RVItdmlGR0RJLWJKX09NN1JWdlFwT21xQVFBWTFvQ3ljOWh0cUZKSUlhYTdibzEtQ1lqcDNTd0ItYnBsTjhuWDhHVWFUbkNFbVM1N1VTbDMxUGVpNkszeXJmUWVJWl84Q2RSdngtZzUya2E5NU1nRmZGcUFOdFNQUzhXbTJQSm55aDlxYTliTVhzSmI5RmVYUnFZSlV2OGxfc2VkVWJEWFRBS3BGWl9hWVI3VUpLa0xWejNiNEcxQWptcFJQQXdzd01TWDJtUkFzcGt4Z2ZrdV94QjRyaDBuX2t4NDQ3Q2pYa1VjSncxNlpBVHI1Nk92THZCNmZoRXNqejhVWGRyNTJHQ1R2MzluUjBsUGVLQzlZcC1GTGZHaXNNTVk3TEM4WHNFU3ZhWVU0NnZGZzJGVUhjYmgyM19xbENiWldPWm9vd1FrSnFJM2VCU2s1Rkc3ZXVPOERLS2tBU2N3dkFmc3cxM0VCTHJ2djhLem5mMndRbFN1VFVEMjdWaEt3Mk55SUtuUTJkeTN5d0NtT0EyRnNBdkRwUWpybXNITjVmVDVTLWlTRjRyZTBrMFU1VzVJUVg2RzNJMlBDWFJDOHJnZFA3SjFNOHEwVGtOZE0yRUVqdzBtbWpkaVM2RFUzbWMtUDVya0hEdTh0anpPYktESE5MbTJfa0NoQWFqTXNtcUlDMzFiOUxvTUg0c2xYbUNjUDhQTXF6M1c4TXB0V2NGSHFLT3pDeDJTWmlVRkdaN2h2a1c0dWFyczFDMG95ekFJYTA3eDF5aWZxSFUtbW1Mai1FTEp1Y0xkZ1VOSkJjeGFuVFNSc3VpRjhnNU5iUFBIdDVHdEtiUC1SdmlQd2V2cHdjbjdrVU9RUDNRUnpiUjlLdUpFZ0JTdGFndU1GMlNwVjRDNlJNZ2E1RlB6UDRVajdtNmdDMk9WSjB4RG95ZEdYSnJPa2NiRlhHQnRfXzFHSG1uWUw1cVhVbGJBT3F4RS03ZmJiem91OGhpSi1IeFBTY1lfUHJwOG9ZUUZ0Q29sSkhMZFFHaHBUT1hKd19lU0phRU5jaGczbDVFNkxCNVU5TFlkeTRmSnh0ekY4dDdHenR4Z1BlMnFLN0xBTkRVZXNxZUJEMzJTVEd6cVhzVG43UWNlcEEwcjBzTnlyaXFuSERTYk9vXzNTdDNKbkJzdlNselRiWWFuZEozY1pJN1c2RWsxQlZLeGhVNUQtRGNJb1R2cWNvN0t0WW1pS29FT1hjbG9jQkZLTFhPWENhMVhvUUZsUnRCdGNUQW9LTDNZSmZTS0ZwRUw4VVc3bnZlcTlfcXZ2UFRtMmpUUW96UHAtYjhNZFJDZjFVc3RId1JxeDcyVXNxcDBKbnhTVERaRi10Sm1zdlZHYkJHcVIzZmNmT1lGaExZN3c0UDYxVS01U2NUMWpxaGhnOVVQbDdJVFFBMTlJRHJkWHZrSEotSkZsVXRoVHY2YnNaT3FuMmNNaURjdUdTY3BLckgxMHRnZmZ2cWxSZWcxLVlJTGJMLXJ4eDk0ZER2R3RkXzV2eWNBZjFiY2Qwd3RaRzdLaWg4OVhZaS1xVjZVc0stYWZyT2V4VG9pX1Y5clNPMmZ4RG9GQ0JoV2dUc3RMc1pIQUN4VU82SzZzbFFwbVBpRTFKNldXdjIzYnZORF84Q3dwM004UURsay1TUWlsNEJUZnFjeVdzRHN0Y05tRnJGVkJBMWdGdFdGVWh4cTlHQVUyQ2o1bWtWM2REekgwM3FYLWI2cGdpSlE1SFFWRmw1SkV2bTFLQWd2ajJQRGFwNmhyd3NXZVBIanhjMXNwQ0dJcnA2Sk91LVZQMm84Mk5hWXY0S1UxUkFRai1mdXYtVFhfaG4zSG9Md2lDa2NRaEdpWWpWRjJvVEdDTEhkLV9rVEFRRjZDZ2hDRjlQVXFmdVNaSFlfRW94MG1NdlBZRDB6NURZMFhISUY4UzQ4cExOUE9seUJRZ3pSNU84c0VHZk5BOVM0cnJwVVdJQmpETnpyVGlZMjVqV3V0czNIaHhVUU53X0c1dFFqLS1hVTlCcUItZkg0TVVKNm9HM1lDSHpkcUVBd05MclVWQkF3M2s4NFhkZ0xjVnFhVzJBSUpxMTBLQ1NQdUxOY3ZURHM2WEhXS3kyTHd0UTRHdUN6REhCQWliT19vV0hQcjZyaERKVWcyZTV2aGV0cVBlejV1M0oxeFN0VDhyYUIyT3ZOYk9ob05BYmNwMDRQbGJ3UHJpZ0FFQ0dTMVQ4ODVaTjdqYjlEd1FOckxwWU9Db0lQRGNlaVhuYXg1al9UNmF4LUhadF9jQTAya1JZMFNBSEJITkZOQXE4eUxIdkh1MmJxQkpiUmZ4cEo5TkZmeFF6ZEoyYlpSNmJHOG54dVNUSmVqeXVRdlJaNzBOZUZqR05FaERFQ3JTNUoySTBBVFBaMDVPTE1OUU53NnZERGJBSmR5NV9WT2F6c3BhLWoxM3dwVVJuSDBzWlBJd1YwVWpSdHRjUTVHNzRNLXctZXppNUk2dkdZOTlyUHhZZkZRMlVITnJzTV9COVVxTlZXZk1qcjFRM2Z5cWxuZ2IwUmF6WHRoX2FjLVJiOFBtV3FBYnBvV3N6cXctZnFDQ0otb0drWkwtLXhOeGFjdjBfWDh4QjlYT21NajgyWGFKdkhNVmJpdWZwUUNsWnBPS0E2QmtjQlhqSVM0LTkwWDVneXlhTVd3bHozcEdud1UxSFZNRHBNeVBJN1VKYUZtdkRQcFU2WlhZZXZWRUZEMzg2NVBKeEZDZnBfdVhoWVBqMEFZLVRNRWpPZlIzUEktMjJ4bDl0REEzOUNuMlhzeDNrQ2c1Vkhlb01BbWZsM3YtaWZxUWxnZ0YyVS1uNEJXXzA0QlpOb1F5Y0ZQdnA0Q0Y1c21MVXUwSmVsN3BuMFF4OFQ4cjRLaEVRdWRoUk13RTJtWlc4TEZTeVdobXFzRDRXNVRDYi1QVTBQZXNHMDdFMXJLYkdFV2NaWi0xek5pam1SWUpxUHdZSWRnUmdhMV8wZktCNFcxZEVRNnE5elRESnl6YTNTS0M3TVhhbjR6d2F5aGM0aTc5Ty1NM3JPSUIzT0lJUFc2RjY1MTM1WXlUVVpETGJqZUJPOGZ2NlJCQU9MR0xqXzgyc2hPQUFrRXNJcThPSnVHTWNiMEZUVXVqYUNHQURaLW85RWNhWDdMMm4xanJBNVVEaFNaV2xhQ0JfZ2pFTzhDTTdJV2xYMnVRYTVJOVg4ZDd5VE9TZFZWX0ZDbk5zcjRUdWNvcWNZalpDd1VmaUpSLXJfYWxKbVluVE5RMFphOGt5ZVRWZWZYTDkyNnFyQ1FqSUcxV29BV2FtYkRNUHV6QkJNZG5sWVNyaXMyV2VyU3hFX3RjeTE3djdvaU9Xbm05TGFVam5ob0VXVTlTTjBBSEJ1Mmhsa2dHOGM0TzhHMmo2eEd0QUVURnJJRnk3MTNJMi03eGVCNjNFMjJqZ0FQSlFqbVV4RzZaaExFSFJBOXNHWUt5Snl6dTNmd3c0SGxFS1EzdFpXN0JTV01ueXFYOUJsVG5rZEJrSHVBTkpiLW1JcWl6UVR5ekVodTBLQU5GY2w3OFpaNzYyU0pfdERaQTRhZDhweGR6TVZoZnpvYkt2Qmo2dUlKcjFvQlpIbmp3cFJvM1Y5OXV2bElGSWZBS3NfVmlSRWl0QUdxT29GaTczYlpuWFN5RDlmZ1hYNU53Ri1mcGd5S0VlQk10anM5Ti1xYUNlRFVRYVJaWVNlc1JCOVItMUVNa2pqdHBjSWlOaGxIbGxnZ21tOWd2T2N5LXR4bXRZcTZYRTgwQ3NQN05vSWZIZ3JYSTVwcURnWGtESjB3SWJxRHV3aFF4NWNmQVpFV3FuUDVPSkJURm5BbEUzSWpqdEFnMXRVNi1taUt5c29HNG05VlZUejNGNnh2V0N0aXFZeFVFX01tdy03UXBwcjdQdEV3d3B1ZUNoczZGQ1MwSXY0YTlQUF9Iei16QUt0Zm11Tjg4emhyY3hjcVhJNFRqeHpLenQ0NDk1RW5MLWVqR1ZUR3Q2OG1fMjYwUklIa0wzamlQLVd4NlJaRkVFb1RhMFo3TTBIdnhkb3JORVVsYXFqaDFXRmRKVFV3dG40SmJpeVJFTGthZUNMTEYtdlF4dkVwVmg4M29udUtZakVFV19CUXdrbW9ITG00MlYtZTJ3eVR4Rmt4eWpBNnJFQmk4anh2V0RYeWtySVVYbjRKRXZyS0MyWmZuZklBNUJGR3B5aU5MbU0zSVkxNHhKQ3VRY1g2aFVwajVWMVpfbllBLW1mTFJ5V2Y4MkIzZEVOdzBUZFY5QTU5T2NmUlRlamx3WVdDSEhxcFpPTXJQXzZtUjJmSTlIVGhIVjM1UXhIMS03eWJ5SEN5YTF1dzhhNGdPMkpXWjFqY1dTWDZndm5UTThRazh4bjdGcnFnaWdhYTJ4Y2RiUlhlbHlocUZUX3gtSUlSQUFNbEJLZW94cnZXaTRQQTZDc3BxSzJBSjk0ZVFEeHRjZi11ajQxek8xajJnQTJiNGdicGh1dlBHZUVDUTVJUDJzNzhYczY0SlVPVmpIZUxJdVBQM0laaUZsWGt0cl9SZ3BwTzZZS3FGTXFMNEZlUExHbWVDQTZfczBfdEhtNzJscmFFSzlmWnpfalBwRWYtQ1YwMlZLN2hmM3BIdlBTcmJlZmtMdXJaSXJmOXJrLS1LbWFmdGQtQXhfdzU2clJXLVprdGZJd043ck52bXVPQlZRaVRyZ3o5TC1PeDhVbTFSejRMS3hzRWpKZU5XcE1JWW1ENlN3a01vNVE2bnpLS2tZeVBvbjIxTVVqTTliU0tTUm1MVUVMeEhKN1RYV0l1UmVZRkIxb2l3eVR6OHdZdmtMSUJlNUE0U2ZfVTZPNGh1ZmVXLXJ1c2NDSWtqNmhudXNWSjh1dmpibTRndlBPZC1fRHh5aDJmLVBiZVQyWUg2QXFsQlRZbGZhQV9STXJpRWpFc0ZWamRsYmxVZVVWamxQT3MyVEhIS1U0aUxRSm9yeUV1UFBucGE1dFVJRW15dHBtSjZ5c29adzd3UkFBbkxfTjNGVi1nemtkOFdXejZSbldrdUhWVG5PWE1GUWQ4UlRQNzI2S1otMzJHdGxHRmZKUE1pdUZoOHBKOUl1VkFnTHBoY0VNeGxYbWc3RUViUnVEZ0otbXVqRkdRZWlpTHVLSUpqRFd6dFlnOE1LbTA1M0gzT1AxQldxc1o1bHotZnRSeHZtQm5vOFFDVjYzTXltajhmUHBKMHgwYTc0OEhydVhLTGhSY213SVoyZjJqRExqNGw0a04xbDdmUlI1YmlIMzZHRm01OENLQURqOXlGQ2hBckdmNzNjSkkwX3VCU2l1UHFBMTJRdmNxeF9IVjkwXzdUN2tyR2diTVlkZ1Iwem4xcjN5LVJkek9VVnV1QXphWm9ISmFZVXBEY3E3dVk0ajVrUXJ2WmZtY1V2ZV9iclFDSkNKenJaTkVNY2xtRTdCMjlOVm5DZDVKMDVZZVozb2s5bVlyd0dlOXZQeGZVUmxtYTllT2hFR0ZDXzV5T0dxT0wwWHY4eF9uUWxaaTNNVHF1UWJUTE9pVlY4OG9OeFdXQ1dhUkxIdkpPUzNBMmNsd0JzVFNSdV9ZMHZCQUlacXBtZXY0WXhzOFpWcXZtWUdsRjJ2bk82cm5ybWNYWHRPclFFX000TTJrbXRlenJheUpUek8tMXRhSjRWdkk3ZmplZG1tamU2eTREZmFkbjRlTnAybmVubUl1cmJFeE5mekdINnl6TFMtR3pZV1VLbGFOTXpyYjNYSGViNVBSMTNmZEJZeE81ZmZoUHUxZE9tblFiNXRtYV9pTGpkRlFkQThFUVQ5bXhnOHpDUWFjZDBNeXM0NGoxRXZiaEhzcTViRDFka0pQaXhKMmw3LXlxLU54Sm1ieVdhOEZLeEM5aHRIaEF3VHV2OVJ6akFJM0N2Y09rTnVVcVRaWi1XTFMzbFBxSVhGNjZDZnlSa0VTUXk5UXFGdjYwTld5UXl6ZUhDLU9jVUJuSFhMLVBiYVBKNFpNYTIwRDlYNW80RzdoNjYwMXo2MkJiMEx2dUVJcFg0Z1gxZ3JURU1SSW9NbHZNdDk3NkRCTDc0emJDN0VqT0hEMnpxQ20zT1dDSXREY3NBb0E2Sm5vc2lONmpTWFFEUlJhYXViUVNweXhHYWZNamlIZDlvbk5pb3dGREo5LUxsTkdOckhqNy0yT0lWTVpMMkFIMnVsYWNuNjVJa2pWU2FJdzlfNHh5X1FUOVM5c1B2R0RlZkVja1VMcnJuUi1JRHZTcVFXSXFKYm03TTQxbVhMa3hXLVR1VDM1YlcwQ3RlNUJLRFJKSExPU3lFZHZkdllfV190RnktY290SGF1VmlHZUt4U0tfa1RFeEFDVWxWT3pDcWZIMmlNXzVqdXU1RDZacVhRZlZfekpIYTVURkN0UjRyS1VkVmU2Q0tabjFFZjFDV3R4X2gxeDFLRnRMc2lIT25ER0tJUHptb1ZjcDQ1T0NJY0hjMEJPN19CTHVsUklacFpWcmNlXzFNMzdOb0pGdDkxZktxOXZ5dC00NGdfYVpRMS1ZWmZWYUlraHpxLWdjNWJUcThmN2M4U3JCdU1aaThUWU9WaXlnc0h0U3hWRHNaTFhwcWU1Yl9JWFZ1cEItQm1tRzZ6Zk0xZmFDRnNaYVc4TWNoOVBPTF9PQndNVTdCNG5TdXZ5ZTFHb19udkFvSHZmbDJWV1VnTXI3MERidE9NNjhteEExVlBSS0M1dDJJUVgyN1lRWmhyRFNaTG00OGh0cktVR0NVSjFaMmFSOVdhc0FrclRNODJ1YzdwanFvQzd6R1BhbnFGSHFLdmlzVVk5Rkp0MFZXYXd4OGxXZ2xYWlFISHNEVzZyVmpSNjFJYjJGV2ZCRURfcFUwc2x6YUNZQWl5eEtkQVdzejJfQ3hvR2l6VDhnNVd3YjIybzFad3VPZ05Kcy12SzhYWXVYdkx3UzdILTBrVlhLQkhDSG9SMkh6dnlnR21Qa2tEekpyZnJVN3hzczlIdUo1SC1SSnJacXhmLU5pbUxPWm5nemJiYWpiOUJzcGFScFRwUWwwbmF2TkpWbXNMSTJYelJwVldsWlctaTVWdUhDZkZEMjdORW9LalB6MFRiY0dQZ0NtRUdOdWo3dTRkS0t2NFdsWkxHby1WT1RsLWpkVV9aY0VGNy1vVlBZTXZqU05oVFp3WWw5TEowN2xxYkt6aGE1NE5iZUt2ZTk1c3RVVThibWFNcXd1M1dxUkltNmFiSUtfeW15el9COVRqalZpSzluU2hhWDRNektDTmpiaFk1MXB6b1lrc240akhDWTBxVDJHOVkzWnoyZlZuQ01LdU1ZV0p0Z0E3bXlZN1BQSEtycU1OWnJ0cmNvaTd2YkxkUk03MGY3aFZIemVFenhYZFIxMXBjN1F0VnVpUFlSRWx2UE5GUFBFRkJuZDZPNmpnbGxHaTRWSHoxV2tQOWJ3VUVPellQcXdoQkpvTVNpUnRrakFJd196c0lUY2R2RTFtUWxSMGx5RFJKTU9BQjRKVTdpRWcxU29QSGN2TmZibFphRDY3NUJKcFZwUkZKUk4xbUYwV3lpRUlvOHAxU2Jqa0hWUWxVcXRLZTg0clEyUGtUV0NWRnhsOVJMMzRjcHcyZjFaanVtbDFYYUZnS2ZWdTZLSnFkZnpzUHBHYW1UdGZEbTdkaFdZSUZrUjdhVzNvWUllMTVIZ0tnSDFkZmRDbjBUZVgybVM3UTFHTzJHNVlsUm1FOHJXLWp0Y21xVEM2d3hidUxHdXZiQm1GeTlzMUtyWV92Q1dXcGk4Q1hnMm1KekkxYjlKSFB4MXVvUE1MLVRfUXg2dGhnR0JEeUZpcmVPUkg4ZUhaOE9PMnR2TWk4Rkw3YnJMS3E5a3Uzdm1valplWFpZbExvRGJYTk9Jd0s0UFozaWNZVVRjWUkxWms0OVRpV21NNmR6dmVvamQ4dnpVNGZLRGVmUFZ1WXM3OG1ISG5EYkZ6eklGeHhRa2N1OWNsb2UyS3NZNHJvY01qbllad2d3eW9WSkIzUGJGNnJvZVl3VlFXNzJ4TFpMdktHa0VGQ1dKMVR2YUVRN2dHa3FJNHIzZEE0LWttUm5UQWxzT3dTZFpYZ3NlZ296RzJQUTZqZTV4SGNTUG9lNkRoUk4xbWhLNWZZR19KZGpmSl83LXVkLVo2NlMxZVQtcS1waUc2OGVfaVhMaWJHRno0WmFjZDBWVjNKN1VhMnF4ODRXX1BQQjRTZE5lQkNkYjlDb3ZXRm0xalhUcW9RRWFMQ0c1WTgyMEFTN3VvUGxJejE0R2xocWQxZHFKbmt5REl5UWllZ3JQTG9PaFdjaDMteDlmbGkwTWpiUHRzM3QtOEVDb3piVWlpeVBZcF9hZzFSZUhFbHNxUG1yQUZCMXJnVUI5SmxJMDUtTTRtaEJ5alMxX0NiejVLRHJFSkRfcFBXc0l4eUlSUnNKZWVaNE9NX2NnYlRxN2dCbEdzNGZwR0U2SUdZZzMtVkZ3Y1NXaUhwdmxWOGR4djU0aWhrTUZRVDVBbjRNVXZUM2M1YzdWODQxZzlrbUhpdjJqRElPc0ZYRDlncDNtZGpFUjRsQUNRdUdiVTlmd3Vmc25xaF9PcUdNT2x2TzNqN3VSek5XRktvdGJHZzI1Zm93MmdTbllfNTNCdHRGRFhFdGVFZDdLcGJZYm5ldS0ySF9yUVJobjJpcUNjODRrSUw1amlRVEVPdG9rT0lCQmEyYWUyY3MtRDhIVmpnV05KTHF6bDVsOVdwcVVUV2RDYVJMa3U5RGZ1YWkxenBjOEJKQkM4M00zazZOQTZMbFZpeDN0OWNqNUd2VjdHbC1QYXdidjA0ZFBhMXQwVDBjNFNxbzR5OTJ6YktIN3ZpTzA2ZjJlQWhwYkFiQ1UweEZyX19tWEtnSzJYclNlM2xZcU0yUHdBbVBBU1ZkWHNCc0p2djdfTXpHaWttWmxBSzJLYTV2UjRFeEY0Y3p3NHZvSGMxR3pfbjJpZlotWmxLRmJLTTYzdXNtTHlndHFZN0VGaDFyd0pTWnJIY0d4Mnk3V2N4SWVRY2otVG11RG9xcG9kdXNQenN2R0tQbzM5dHJSeFRuNmVOZF9lMzhNT3BNU1Q5VEtMQmhVdW80WUVaM29IU2phUnA4TEtKbjZjNUFDelREUVo4cVJVaEw2Z2R2N21FRlBpMWFTVjNTLVc1RU1YOFRTRU9oZnpDcmxfUTlGR2lYaW1KZ1dSdE1Na1JHeGNILWFsRzRYWkthdTlwcmhZcUM3SEtiNVZOQkx4OUFhemtxQVExRG5xRkdkNEdYd3luWjdXNHVBRHFfUm9BM29VN3VnQlJzVmNIeC1MNjJITU9PQWFYYnpVZWMwaWM2d2ltVXVpdmJpa3dZSnUyeGgyc09qVHA1QlZRQXFGelV1NDRYMUVpaUJxUldIWW5pNGNFazhpajk1Ynh0bTVDUjBweThzRlREUDBGcXEtWVoycUt6MndiSF94SmVpOXg3bkRxUHlhRDBEaWk2MWR2UVhramtrNGhFSGtuUWpoeUR2NGZLN1hGejBGWUxXYkwwQ05ORmdHeWJhQjJWT2FGYkJQVmdtSjRFNkJxTHdTWE1UR1dVd3g4cjZWU1puQ1l6NjRfV29HZ1BteFFDckdRWXBaWVRXNkFYb3MyWTRtQ2dNeWdDV2hKTng2a2ptbGRkdDZTeFNWdXVlS3RmWkMwNmktYzdpa0ZvM0ZYRzF0YmpwdFN3OFpMbWdWb0k4M19scTNxY29QNTNkVklZVy1GQnUySXJwYU1DZDZYNTJWUEZ1SGhKYlEzWDF0VG4zLXNxTkFvdXdWckZjMmNTbHJvSXRFOHBYdlVaRS1NQTR3QloxejRJYlpjYk4yLV80ZVM5Q0Q0c2xVSlJyQU5MdzlEd3BaSlo3T3NvZUJTWUZKeWw4SFprMWwzTlNDdFpNQUIxX05QODFpWjV2amdrUUszWXpWTDB6SmV1cUJUc2VSb0xlY3BPWEY1V2dEaFdrUFRlY25mdHFMdXZpZGc2d01HRkt0blhnYTVrbWZQbUs0d2xxVUhQR1BSbXZDV1ZZelRUN2pMT01XWFUzVmZsUlpabXpJdzhla3pLODQ5Zm5ZQkR3YnYtWjJvcVhFNGFQUUswUUNYeUczTU9QM0JpcFFXc2VtQ1JLRWdnRlBTNEQ0TlRjS1FKVHQtLWUtVXpMOTluM2NZOWpXUVpPZU9iSTlxTl83MVRPVnA1UE1mYjJ0MEhCTU1KNkxwcVRuOXFQQVF3QkdZYTM5aWRqU2ZtTXNXd013a25naTJFZEZWSTM5Uk01OGdlMnJITVFjRlF4bGhyb3M0aS1kNnlSek04azVNcGRsYW91UDZ3VWlGZ1E1ekdtMEpVNTJrQ09VakxnaUJNakhLZDUxUWs3ejY2YXZicWlvelFRSnlneDlfM29WSzMyMXBFQXJHd0Q2cjBKLUJySWJBamFmYU1sb2xPbm1TY254NVM2dE9rQ1VEXzlIN1RQRjRoUTBBQl9sZmFpNHFoSFAtdi02c2xxQ0xqT0FmTk5mTmUtX2tnU1lfdVpGMUQ2T3FmZTVDOThPc2tfU1ZHalBsYTNrNk1CdFl5TEZpZjdoVktSQkVibk44Sjc1MFp6VHV6bjIzMTExY3ZyZlhpeG8ycUY3cWgzUHlDMEc1YnpiWFFMNmtXc21TS2R1ZGFXN1N4NG9WVHZVMnlHTVVzdWt2ajhmd183OGhJYW95d0RRS242T1p0WEszZFUzczFxVkk0QlAyRUduWXd3MU9INWdKNnd5endqUzBjTWVLbldiWVh1c3NpTVFmdEcyN3l4OThKcFpncGZFemFsaHIzOHE5bGxBc3RlWnhvS3g4ZmRhcnFjTU51WWJLblRPdjZTZkFfZFR1VmgzejZDMVV2cl96MF9nd1VtVWFhX1ZxMk9kTWVVV2IwSF9xSGc2X3FKNFZPWWhOODdFMm55WkcyTElja0VPc2k3TnNNZW9VeHg0LTc4ZXFxTGk5U3BscUgyWEFLbEtTaWQ0eGVlVDV3OVI5YVJDVGZ0cVNxSEpfa0YyTzl6elRDSV9XTkdGX3l1c2R0eER4bllMTHFtNElqUWVzTmRSV2duNURDZ0Q4Q3NqRWZic0lpNVgxWUFUZ29KQS05Z2VuVFV3LU14aEc2WHl0ZjlCM0piSHJoMFZQa2Y1cE5RZjIwT0xPSFMwSVNLOU9QMGx4ckZSQUFXa3A3RF9aNGRIOENySUUtRnFjWHAwc3E3QndSOGZFRUMzMWhicjl4NEp0T1FiRnN4NjNSaGEzdTltOE1NSzNUeUU3eWE4aDJVdTYyT3p1Q1JrSl9mUnJEODc5cEl2T3RRYW5rYzRJUE9Ia2tiNHV5SWxiTEo5QUF4eGdXZTBfRWdhYnVPMWdDTVJDUG56RWFHel9pajNmVXFFVmpXVzF3WFZXUjlVOGRiS3N2UFd3TkV3dmNJeXF0X0ZlMzFaM0ZsVEF2eDY1UlpGQV9XYmg4bVF1NGg1MXVzazNBWTRGdUppdWpFZVBnNXNLcFZyaWRXbVpIS0hSWndjRF8tNG1CNVV3b0hRcXhWVEZaRjBlcXJ0T0FXMGdXb0l3OEdULUpWelVrR3JWQ0JiemQ2MHJHNE51ZDJzZjUxMnN3MXFOZGhGZXFoT0gxMWJCNzItLXhkOTl3aHl3MVE2a3o0Ym9OaHdpRTA0cmtBdGM4RHpVczFmcldoLmd4amVtYTRfSkxNQk9mTV9LNWR4SDd3aldzZ2hzSFJYNTcxNnZGWmFnZFEiLCJ0YWciOiJoc21fYmFja3VwIn0seyJjb21wYWN0X2p3ZSI6ImV5SmhiR2NpT2lKa2FYSWlMQ0psYm1NaU9pSkJNalUyUTBKRExVaFROVEV5SWl3aWEybGtJam9pWW1GelpWOWxibU5zWVhabFgySmhZMnQxY0NKOS4uUjNJN2ZhODFxMkxiSHRCSlNld2VCZy50Q3BZMlZBWTlpZHE0YWVZaEh4c29HVlcyT3lKdTdOVHRvbEJZYUFJSDBsNkFXR09IUDZrVGQwYVp4bFV6dDYzbjV6WUwxa3hSeFdMVEJuVUFYTG1tT0IwZjZlS0poYzdmSmRVZTU3cDhNTDRjSktIbDJSS1FwdGpfRVQ5VHVOc0RZZ1ltVXg2RDN1MllWak5GcWMxcFhVbUQ3dW54dE05eU4xVFNGdjNWY21BNHFmNXZ1T3Z5Q3NsYWd0T1pzbkthR1V6ZGpZak9RS0pHRXoyeTdZSVlYT0tHLWljZ1h0Z201Zl9RcDZIWUJlSWFobi0tSDhMS25uT05rQVRKdFJRQVBFUllrTEtuZHNaN1JLNmFacnFaR25SRm9FRDdNWkloRG4zWENKQ2xZZ3Fsemw3a2FHQlU4ZUpsZGpKMjVnTnIzdTIxamZNeDBDN2o2ZUZaOTd5NFJhQ0JGUUptUGlRVWFmQkdYSDJPTGNBS2lNOXc2MWtzRjU4N0V1cDk1T0tYSjBrSEZ4OG9oVmlxbGJnNVV1QjhaY3l0eHZ0S3pmWG5RVEJqS2ZDYmJvYlBkU3FrNVBEVWtCWWJ5WGVSS1ZXMHREeVZFZk9haldzWE0xdVRsWXItRDgtQW8xV29jT0hBYkhGM3h1dVBhZnNEdklYcTd3Mk5fckJwOXZNOWpPQzBqdExEeldYeFlwcjIxWmNIdmhwaWJCM3F3ZEVNS1pfZDc1SkM5Y0VmMU85LUlNaVBUSVpja1podEVyazVQQVI3ZnJYQVBBOHJrVjJtTVlJQUxOWV9EQjhDcHVIR2JHeGZ6cE1iZ2d2U1R1OUtacV82YWhIbGVIT0VqRklXNXpiWHp3NG05ZXpMRHpQTnJzWUwxa25uLXAxT0k4TWdzZjVmd1hZS1NtT1VFeEZDdUI2NDd2dldhdmg5eXM5YUxZWFNOb2pEQWxqZlRrRmU5RlVVdUZLSmV5S0V5a2RDS1JPZHZlSXhqSHk4emFBdGNBZGdVSXAwT1FWdkFON3VnZkI4SVJQLWU1a2k1VlptNHpXR1AyQkVWTV92WWxlMkE2VEp0SDNMUFQ3TVV6VGxvMVBVMWtLVExrZ3EyVWp4MERldmZrLTg4WjNTbFhVZWtRVG5QV0lZY2lhY1hDMVptenRVQVpwYTBraV9TcXVmRjNmdGQ4TFFJR3dFNHpkZGZtc0R6aWxlSFpLR3ZUZi10MUtkTm9VbkJtYnFOb0JObUR1blNuTHlBeldFWE16Z2VIZHBsLXZLWVpTUXA5ZnJpdkRlV2ZlOGxXVmJPUmxiUDRxNzlKQ2tVZHBoMXJnM2l5cXRjaHpMa0J4N1pqeGJkUEZ6MkU3Q1B2UGFFYnJUZ3o5WDRUN3VZa1JVTmtDRkpscF9NS0VfdEthNXNwREwtckx2bHgySlV3ZWpXUGJyRWdWRDdocXdhVklMNXdwZzhHSlI4eEhpeVdMbzNVcU1fU0FlZmV6MUNDcElFb1QwT1E1TV94VTlhNWp3bDAuby1JSU5IdzFXTlJBc2xSRnE4OGlZclllTmVibVRhOVRrRlB1Um9LRl9lWSIsInRhZyI6ImJhc2VfZW5jbGF2ZV9iYWNrdXAifSx7ImNvbXBhY3RfandlIjoiZXlKaGJHY2lPaUprYVhJaUxDSmxibU1pT2lKQk1qVTJRMEpETFVoVE5URXlJaXdpYTJsa0lqb2lhMjF6Y0Y5bGJtTnNZWFpsWDJKaFkydDFjQ0o5Li5XYW82Q1FQYXdIN1lGRXdHN2Uza05nLjNVSWh4SGFtV0FLWGlBUG9qVzNlcW56NThRbEpPQm9OcDJGcHVzT0k0UXR6RmIyZHM0M29TVjl6Q3lRaklrc0ZYRko0Q2Zra0QwQUhxQUtna01LZ1JWd09aT2xyRTJHZEpKRVk1bzk2QlU4eEhqZF9BVFo2dlFiMlVMRVIwRnFUZnZIOU5yZlY5SGRfX1lUS01UdVE2ME5XWWtUX1R3TUxRX2kyRDdHd0J0S3pLN0FnbEVjbVM3RXpuWHA0Zlk2RmJRTmN0ZDNjNHpWWUFieDJxbndHMWYzTDNaMndkZGdySVhEMmJlam5RQmJMX3VIRWJUM18yM2hZeDZFdHhEQ3E0bXIzNXB1MVNINDF1UGlnQTcyNG13clNXYUR3NkdJRHlwZVpzc1RYNmc2RXQ5ZHJ2aG85UHpZTjNtdkxpR29PdHBPTUN1cTFyd3J1QmZNMmlkNkdfU1FMT1dkR3NQOWdIUEsxV0FYZTQ3LW1qWXBkbGhiaGFNTjFVaVJBZWxORVR1al8zaDl5Wjl1aFcxbm9TOVdJYU9WekxFVXBDZnJNTVlMLWdubkxuUXZWSkhWNjJGTUQ4V2VkUlUzelVSSzQ3VFZxTGtzY2RoYmxNZUJHUWhJV0R4aEFuSzNHcUFOR25ZM3Bnb1p6QzRTdHVfWmNNS2tsMVZ0bnZiZUZoTExHMnpmMFQ0QTM1Q29ZVHV3TnV0LUNVS0prOW5mZ0x5YXZWNVJGclg1cFJTV3lGS0dUNzY4Rk82MmhBY3pCZDhVeVdwdVJvNGhZZkZjOUI4dUNKZ21JSF9KWXhRVlgwMjh1akdyYm04cjVFa01GNHMyN0RZWmkwRTVCMkZGczNLOEsyQTJxM0l0R3ZKWXdkc2c1Q0g3eGVhelZGNmtjTW5vU3ZvM0c2MVp2WU1lOE1wQ0c0ekMxekdTeDdHSnpjRkxyUG9OcWVnTzhob1p5YzJOSzc1elBFWUN1TTkzcTB1Q01QYTlQbmxPV2tLZzVzX3RLTVZiQV9sMEd2eHdla3hVUlRKSzBXbjRxc0diLXRqb3lmdDd0MmxzcG9LMnprWEtPRGFSUlZfUXhicmJxYlFzSXpGLXIwNnB6c1JRSExGTlR4WUJBX3Yyc1BBSXFkSGowdEpLcUs3UG5XMkk3ZW5BNE5UM1NaOVp6WkdCY3Jua3R5Mm1fQVYyQTNWaHRlRk43X0I4VUVnYXhKenNLNVZkQnhGLUJDNFZlSkdvMXRLcXJ0WktQX0dqQk1NTGxiNlhZOEVoS3BQT1M0a2RIQnNsVFdPLWNwZzhnNDZxRnpmRDdqOE5IUTF4UkJqRmZ3ZnI5ZjB0YjhZckNHek9RNWMwQjdGQUxDSk5LSUZnc3JWallkT2Q5b1l1QTV0YlpmdlJBdDJHTllfLVRId0xyMHBZYWQzY21XTU5VUFBjd2R3cjRqNkI1Qks5amJRX2d0UldGcUF3SHVCaHRCbklpajF1UFRPNDZlRmttUXZWT1E2dll6M015M1djak5Lbnl2X1dmdGdHVFJIdnM5RXlfblFMZ2ViV2dUSGI3S3VsVjhKN2dFWTBOOERob3Vsb0dVTXFsaVh0bjZqYWV0VWVSQmFoT2hUbkkxWGVaNGZzdGdpbHc3dnhEeFI1dTVXcEdHQWtHMi1kc281b045QVVEcHh2dlh4Wld3S0g3NkNvcUZqbmJIQTBXVlh5R0hENEw2SVlrQThkWHhncFltOUU5OFM3YjRnaTEycTB6TWVMR2Y3dktJRG1ObWpvRVZoWEtGS1BOXzM0RjBMeE1NVWtfMW5BM3lxb2FXbUd6UlNWV3EtLXloa05QendNSDF4WDJrQ1p5b1hsZ25kSzh6dzVkSXBza2RsZkhuU1piMVpEdjZtTWhQbklLMWhhblJZb1NzS1ZtZG9wRUhtODdDVFVpWUVydHlPSDdmU2FpalR3M1dUUnY0N21VcUdvdTBXdUNIZlJlVXMxMFYtblJpYWNoSVBqLTV2U1NNS0NTcFdscWJ1Q1V2RDlsdnktRVNubEw0T19abEVRckRnNVRTSUxZNU44WGw5cVM0eDREd05DR1ZiSnZJMUJfeE5CTkJmRFVmcVF2UXk3UlU3d1ZhSHFLelIyM0h1eThzQU8xV0JXMGpCdW1RSjI3NUpHZldTVngtRjFhXzhIWkcwR1ZLczAySXFGdDRTOWRyMENPNXRHMmsxTnNzTXVrWXl0YnRzcXJJdGxzblRRVjdiTUhFZ1pGSWJ6TGpBd3lhUWM4NWQwSXhsQmJibUJZZUhkWnRubGRkdGs5QnZ5NHNqckRnSVZlQWVwdVZxRjNONklrcXVJM1UtZ2p3S0FjQTNKMVJkZENEeXJMVTJhakZGOVdhU0FuYWlOcXJ1R3o3WVY5SDFiaWlkWFJiSFBoRXNFNDNLMkpoX2ljOVBoTFUzdlBXbGNRODV1R3RrWkxRTTNlbUF1RzJLR1NGQTcxd1pyb1hocVRIQUxKNWpLTElhQ0Rld2hfTHBOTHNjM3RVS0xOMDRaVjJHSDhTdFl1N3ZlOUE2QXlTcmhUZjFKRGV5aWdael9kU1ktQXNpaGszRDFjSTN4Rmh5LUdsZTNWQ3ZPRjFSTFFfZHh2NjV2bldTWkdBeHRNdXFHV2VNTnVZY09saXplRGZnNFVuM2RPN1VpdDhpb1R4dU1WMndyRVNPVXpRdThpb0d6TzNpV3RXWWxfMll0LTF1eGZVRjVMSF9EOW9pazFpQTJ3RE9ydnFJemhBczJGakxMQmhqS3BIcWViODJTZ2J3elJRbzJFQmZuenJiMzBWNmtPTjUzOEJkanRCS0hvYUdJSnhLUnNnRjZzUkkxQy1uSVR4NWFZeVhJMExDU0JBRWU5eUpUWkxVV2tqT3AtX3pSSnZfR3dkTnhTWnZMSEdkcFlWT3ByMTF6OFU0azhYTE1xSnRhWXAtZk1CcVh4eWJMZDNxaE1kX1B2V0dNdlJHYm9pd3F3cnYtWllwbHU5Y1I1a1RvZmlHY1I1SFpaWXhTcjN1ZVVubXpjY0kyRUJNQVFqc3UyLWthU2NLMnNWang2emNUaHU0UFBxSXpELVpzdDlRbGpqVGEtZW5kU1ktby1NUjFvbDdkNjR4eTViVzM3Q0NOcHJYX0Zud3djaEhCMXVHUzNLbEx3UUxkV0NlX3dPYjY3NDNNSHFZamExNm4zdW9UZFF0TVFIUkt6N09kaWl2TDF0NGJQdFVrZVFfZkpsRGpDbjJTRGpRelBUWWY4SlY0eFpkTFZlcEE3V0NaNHUyWXNyUFBKUk1SdU51M1VNWUVxYjVhX2lzdXJJYzJNRDUzYVJpZHlxODBSN1lkaVRIMV9oZDRfR3pEWTd1UDBqSm51RHV0SUNNUkJLNTlqejIxWWpydy1ycGdnNFFrRlQ2Sm1CbnFSS20tWC1YTlNDMFdLeFJGcjRmQlFLVXA3bEFfRDlIVWdzdjlPUE9RREF5V2ZVMzdja2ZfWEFNNERiYVJZTkZrdEk5enUzazhWUk1NRE9PdVJPdTM0WHBhU2VUaVg0Z1ZtdHp1bDkzUnd2VUplMDBBT0FyQU53ZmpKRUZHSU5fN1ZxMWVHTmhsWlMwSkZBaXY0OGJzU3cwTTB0eWpmVGMtZlJrMWh1UUx4cC1HOURyMHg0V2ZaWC16dVgzaUx5VnRsdkIzNHo3eXcxSTU4aklTeFdMZlczRXR5T0xod0RKb2pYTHJpeU5fWnJRQ21BS0tfZ19NU2hvY0FLMlo3S0wzSy1ETGw2NnFLR3RwV0FkS0JnNWxsWS1YUXJjWnF2MGlkbWlaSndqZ2kyZFg3VmVmVUw2cld4TkQyM05Vb1U3QUVVempzdThKMHF2ZmQtU3h3SHpseFpLYUo4NTV0aTdTS2RUNThUY19MTFN4UDFXUXAyaENOdkJ2MDJQNlJ6VUR0LUNSSVZOWWpUYzFaVXNSTzByRExTMERmNmxkekZWeHFaUnh6eTlpQ2ZhczRFVndMNW84WHJVbmh0elFLamNUY090bjVyWjh5OHZidUhGWkdyZlMzRG5vemNuc2dRekVwWGw5X0cwRlYwRFY3bGN6TWlEajk1eGh3cnJtbmttdlY4VktZOFFTSkQzbklYOTlCZ05LWldyNmdWWm92RHYxUmpBd2JiSlJOcnJDYS16R3JoRW9WX0pPUGRITC1OZlNsNjA0TnhvR1NIR3RtekNCUktQYjdHNUJfWFVsUGE0NEZReXgtSk03RmlxbE45Q3lJckpkZVRXcWtjalFEWk9Mb0M0UFB0Y3ZDZldCOFZ3N3VCN1Rfbmx5emlFZk9zVkd5S1VUMGE1Tm9BdkZpNVJGSE9Xalg2bkJDWUZOaHhUWVVkU0R2RFRhOWlYN1Zyd3NNaVRvMGxCbzJQMm9OQng5Q0M0ajNVaTVOV180eDJNdWlKSEtqc3dXa2d1cDhxd3pyeTlxYU1fSDFFdXZVZWl0X09kRTN6MFV4N3RkT0QyM0lqZFVuTnZ5eGROMTVYcGU0Q2lReGJMU25kME9KQnpoWHZ2V2ZyQlVnZmttMkYxVjc1V1J4Y0h4NmFrX1Axay1oa3ZGb3dGZnEtZUR1cEU4aHM1NFdGZFFBSmpYczV3MzdkWXZNUXh2WXdKa0VwTDNiN3ZkRHdJWWNqRlg5SWctMmJJVTZJNnNKX1pwYlNONlpjbG4yaE5tblg0WmVZNHVQRTAxVVJlNm03R205QWZwRTJhS2lPMS1pVm56SkdBOElKUHh1NXp0WkxtWUNPaG85Nk50V1VzR1E4MEpTbmgwWXVELThZclhmWnBLSjJmRGFPODZ4NVB0NWN5UVJYc3h0ZTBPUjhGMDd5Tm1nclNIZ2NGMEJGTG5fd2xXbGJUd2tiRHk1ZWRhcWVFMFdZdEY1Mnl1Zjd1MnZvZXhZckEuRFVIdHJDMk1iVVhUZ05XTTZZdlppMkdIVkpMenJsY2dVVXF2RXBrNkpCYyIsInRhZyI6Imttc3BfZW5jbGF2ZV9iYWNrdXAifV0sImtkZiI6InNwMTA4X2tkZiJ9LCJTaGFyZWRLZXlzIjp7ImVuY19zaGFyZXMiOlt7ImVuY19rZXkiOiJleUpoYkdjaU9pSlNVMEV0VDBGRlVDMHlOVFlpTENKbGJtTWlPaUpCTWpVMlEwSkRMVWhUTlRFeUlpd2lhMmxrSWpvaWJtOTBJSFZ6WldRaWZRLk0tQXhHUVlKNlVDQ0xtZVhwOWdTUjJFVTFsbktMRXEyZjFWd01uT0pXaWFMRGJIZ01sX20tRlZ1X1hsNEdNczM2T056YTFJZ3FEM19aQ2h4dmJUSzRtb2JnczlyQzBWR0tYeDdHN3FkbTdNbDhFVGZCampMTVl3ZElReUdyeVREWVdYZW5UdEFacVpJNnc1NmZhX1REMmhzejNGQ2NkLVBmdExYZm04aDFMaFlHZVlfUVlqMzBPeVhlV29FZ1ZndzYtQ2d1RGlhNUdxWjhISl85S0Z4ZVZPQl9zQkt1QjdWWmdpRjN5LVVkQ1FNV0JSSkhITU5mTWs0QTV1bU81aWFRbzFVN3pDekRDVGpodjBVX1U5U2ZOdHFFUFdkbFZxanYwdXpaNXJOSUdxQjI0cE5NT0V5dU8ySDZWTi10R0xkX1pLNlNHUmNPc09BVlllazN1WjZyejhiekFZRVVYLXlXNFBUUWV2Ujg2WlJzc3BIdXRjYldaNi0ySG5YUV9UUTBJNFMtcTJIVUVUNEE1QWk2cy1NQkFLeDQ5eFV4c1VDUmxQTHFnUGUwRERlaDJmOVVpQnRGQy1pazA4ZXBYa2xHVnJqVWFXLTU2RUU1b1R3WWN1bVpNMy1nUHdPV3JUN1luRThWd3BveEt1Z3Bua01YNENJZWpOWTlCRzVlcGxfc0VfLTRpMWRpaWprdDR6UUtDNHVTOWhDMXRSdVdfYW5wZHBpd3VYUFVOaWRNX2VpWDVRVWVNT256cVFjLWtxcmdRR1dUYVp6S2lyZGNQOHpsTzdYQnZWaW1Rc2V3dVVJZnVfRVpMQ010WVdLZEVLTk5Kb19LTTB5bm9qZ04zcmxia1N5ZWRTcE4wVXVnTjdPd3o2YmZXM2xSNHdKajhOclo0bzM5cjBLVDhZLnZjYWFxQ2RMM0U2U2wyRkpVeFZNdVEubXFTa3RpZ3pYbkZpTkhoUTBXQ1RheEtBODFYWlpFU1A4QnNuMlhTSFlzRnpOOXZOdHFRN052d2I3RFItSnJzaVRRRWxZb0NSanFyemZCQm5EbC1Vd2g5QS1LanBzUFJKcXRHd2dSWW9vRlUueW1ObTVRWlJxeWdadjdoQ1dmQUJpNF9KRHI2dmdQNVFNQmpoMEd2WDlMOCIsIng1dF8yNTYiOiI3ODd2MUR0V3E0OU03bzB6dlRRbmp0V3gzdmNTc2xZZzBxYnoxdlJUa080In0seyJlbmNfa2V5IjoiZXlKaGJHY2lPaUpTVTBFdFQwRkZVQzB5TlRZaUxDSmxibU1pT2lKQk1qVTJRMEpETFVoVE5URXlJaXdpYTJsa0lqb2libTkwSUhWelpXUWlmUS5ndUFieGdOUmNDcXJNOUF3TnJEOWR2VnFBcUYwSUVuUjBTbWZGR1Q3T2hpUDhZdVVKbFd2OUt1MmVva05GLVZrbUZuZkdfMWlIVVZoYUxNNEN3X0RBRjQ1YnVtMlBCc29qcEYxY1FNTDJPR3NyZ0xnZG1sMWNtbEpKaXh3UGk2Y29TVTgxMGFrdTdpalVVU0xDSmlSaHJvQnpmVm1PS0lqQ0duaGVEcl9pdVdwN1NaUkRsejYzaFMyVGh1bXZ0LS1TVzU2TGxSeHpLelJaeFliOUctWTBvYXF4UkhsMThLSWp6MGZNeEswS2ROMk5LQTdWaDZEUnlRR3BvRUFZTjRtYkxJbDgwb3A5VlFCUE1uVE1KRnRHY1pQV0JvNlVDQk9HRTN6eWUyRGEyakZnTGtnOV9xRV81MXY4RGllZUJYY2FGTFlzV3lxbTZRLXJnczFxNlozVktEZkNONFNDNllvSFBsd0xCMkIwOTJDdzNkM0kwVm52eUtTdndmMEdtNW9zUG9tbm1SN0NXa20ySGVUMEFJbFJoUG41Y1V1T3ZjV1BhNFFtbEdyRG5sZ2RTOVRqSmdjVFhQdEVLU2ljWmtYdFhtdUtNUHVNbmNSVFNOVHI0WGZ3aUJtNEFtMjJKd1FtN0xPS1M5X2cxNi1DMDFTcFh5UDQtNkZSV3NZMWczMFVjZkxPS1pjRWVtUTVSVGRDWkJRU3dQMTZEZ05PLXluM2JTUVl2ZGFUYm5qV0pVSjEyTWppMXMwckxMdDFkOE5GbS1XRVVXdUFZd1B5YlJLa2JBRXdFajR0MjhyRmZHaFZBdmc0R3otSHh3OHFLLUhuSkNwWVFtTXFqT0hpaUN1OWNVUUYyeXBmTGxEVU9SUlpYd1Bobnc5NUNWV3JPcmhWWENIVWk5bUwtdy55dFVSMjVSVjg5WFNjR1JtSW83MWxBLl9TWGs1bzF5Wldpdk5NbGVIYl85Z21NeWZuNjZwTFdyLUxhbVZ0VmhjNHFZZlg1RFFiSjFoalVXYmVtcHZRc2hHVUxqX08xMkpKbU9tblZLRGYwR05FbnJGOUlFRlRpbzJPZy1TeHNKdTQ0LmYtRnlTYVg0Y3pnSGM5X3haalAyeEdibDl4bnRvMzBNMDU3VnRCaHNrLUkiLCJ4NXRfMjU2IjoibmhHaVdaM3NEdWdBS1pObnBVNGY5MHdYbFpRTTAzR1Y2UGZzYk5MczhObyJ9LHsiZW5jX2tleSI6ImV5SmhiR2NpT2lKU1UwRXRUMEZGVUMweU5UWWlMQ0psYm1NaU9pSkJNalUyUTBKRExVaFROVEV5SWl3aWEybGtJam9pYm05MElIVnpaV1FpZlEuZXRadTJjek9zVTBBZWRRSWdnamxsNFZIWk40SFlXc1FpZG9EdUx0VVlSMlUxWnBLU3RYSjUtUjduUm1Mdk1USVZVQ0pWcU0yTkZxNjB6cjZMZUc1VXNPY0ZGal9MQzgyMlRyMEJJa1BaZnRWZ1gzUnJHTmJzcmNKWGtxcW9fa05WNDM3Tl81VlgwVE5ldFZURk13RDM4Q3FXX0otQkUwd1JKQ21FTVk4QlpvckROc0dOTnVhUlg1bDdod0NRX1RtN1NKRVhlNGR1alJXVEVEWXM5dXdMelgxcFplcVRFa0NfZTl0TVd1Q2ZDZlo4Q1JyQ25oQ3oyemJ2bUQxSldaVVlRc253a3I1LWxtZnQwUm9UczF2cGVQbGtIdjl3UkplYkp3U29KUWJjQ3JPMlJRRE9od1BCNkdXbk1WTTY1WnU5MVh5V3RQNFdjUHFvak5wdDZHSEZPdmEzX3RTaG1LV3RYNXhhM0dzUUVJaTNCSTdGOVdMNEJ1NkhqclFkMDVjcHZVcm80X2hUeURiWUtET0g5NFlPVi1qUXg1Sl9RUXJWVnJDbFJZd0Y0ZjMzcFItTzJJbnh1N1UzZGJNLVFQNDlLYUo3Y2g4MkpmOTRxY2N0dGJoVGpxNG5TdzVNV2VjbkNQZjRIa1JjdWw5RGtJZEVwY0RIMmRaVXFkV0JHYjFuRWNldlc0NDBUbFJuNkcwVHhqSzBaX2dpekx4dXVsZklPUTEySEpNdlBjWXd3OV8tMWdGZWdUdDgzb3N5OEJmVjNwNDA3eFpXRVROUFR5ZWNMNTV2enRKUjJjUjZLWmRlTkdsNlpENTgwNmVPYzlaUGIwS1Fnb2I3MkRVM05mODJidDN1cFB0LXEwaFNuZzNIWHpUZUhWYlFRV01NWmxBcEN2aHdpWml0SGcuY2c0d2tyQ0p1YzVBbmJaY2lQWVhDUS5YOW1Hc0QxdWJSU0lFUzBiclJiOWhQU0xaY2tTaGNkbmtBRzE3MTFpcnpmcmlEMWZwS1pna1RwQzZfQ2daTnBiU2JHT3psQTZkZ2pReXpxM0dFN1JGa0MxRzh4cW9DZE8xTVp1MUVsQzdXMC40dUZFdEFSUktzVHdxWUtjRDRTNm1HQ2JNZmhxeU9xd1VHdFpPMWtYNExjIiwieDV0XzI1NiI6IndkOUVyWmhYUVppeHB3TTZPLUVCOWNLQWlBaVM3YVdnUkdkQWtNMU0yNzAifV0sImtleV9hbGdvcml0aG0iOiJzaGFtaXJfc2hhcmUiLCJyZXF1aXJlZCI6Mn0sInZlcnNpb24iOjJ9" - } - }, "202": { "headers": { "Retry-After": 5, diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.3-preview/keys.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.3-preview/keys.json index 73c09f36125d..efc639d42e50 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.3-preview/keys.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.3-preview/keys.json @@ -79,6 +79,48 @@ } } }, + "/keys/{key-name}/rotate": { + "post": { + "tags": [ + "Keys" + ], + "operationId": "RotateKey", + "summary": "Creates a new key version, stores it, then returns key parameters, attributes and policy to the client.", + "description": "The operation will rotate the key based on the key policy. It requires the keys/rotate permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z-]+$", + "description": "The name of key to be rotated. The system will generate a new version in the specified key." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A key bundle containing the result of the rotate key request.", + "schema": { + "$ref": "#/definitions/KeyBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Rotate key": { + "$ref": "./examples/RotateKey-example.json" + } + } + } + }, "/keys/{key-name}": { "put": { "tags": [ @@ -1088,15 +1130,173 @@ } } } + }, + "/keys/{key-name}/rotationpolicy": { + "get": { + "tags": [ + "Keys" + ], + "operationId": "GetKeyRotationPolicy", + "summary": "Lists the policy for a key.", + "description": "The GetKeyRotationPolicy operation returns the specified key policy resources in the specified key vault. This operation requires the keys/get permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the key in a given key vault." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The key rotation policy.", + "schema": { + "$ref": "#/definitions/KeyRotationPolicy" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "GetKeyRotationPolicy": { + "$ref": "./examples/GetKeyRotationPolicy-example.json" + } + } + }, + "put": { + "tags": [ + "keys" + ], + "operationId": "UpdateKeyRotationPolicy", + "summary": "Updates the rotation policy for a key.", + "description": "Set specified members in the key policy. Leave others as undefined. This operation requires the keys/update permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the key in the given vault." + }, + { + "name": "keyRotationPolicy", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/KeyRotationPolicy" + }, + "description": "The policy for the key." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The policy for the key.", + "schema": { + "$ref": "#/definitions/KeyRotationPolicy" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "UpdateKeyRotationPolicy": { + "$ref": "./examples/UpdateKeyRotationPolicy-example.json" + } + } + } + }, + "/rng": { + "post": { + "tags": [ + "RNG" + ], + "operationId": "GetRandomBytes", + "summary": "Get the requested number of bytes containing random values.", + "description": "Get the requested number of bytes containing random values from a managed HSM.", + "parameters": [ + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/GetRandomBytesRequest" + }, + "description": "The request object to get random bytes." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The bytes encoded as a base64url string.", + "schema": { + "$ref": "#/definitions/RandomBytes" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "GetRandomBytes": { + "$ref": "./examples/GetRandomBytes-example.json" + } + } + } } }, "definitions": { + "GetRandomBytesRequest": { + "properties": { + "count": { + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 128, + "description": "The requested number of random bytes." + } + }, + "description": "The get random bytes request object.", + "required": [ + "count" + ] + }, + "RandomBytes": { + "properties": { + "value": { + "type": "string", + "format": "base64url", + "description": "The bytes encoded as a base64url string." + } + }, + "description": "The get random bytes response object containing the bytes." + }, "KeyReleasePolicy": { "properties": { "contentType": { "description": "Content type and version of key release policy", "type": "string", - "default": "application/json; charset=utf-8; version=1.0" + "default": "application/json; charset=utf-8" }, "data": { "description": "Blob encoding the policy rules under which the key can be released.", @@ -1352,6 +1552,7 @@ }, "release_policy": { "$ref": "#/definitions/KeyReleasePolicy", + "x-nullable": true, "description": "The policy rules under which the key can be exported." } }, @@ -1562,6 +1763,7 @@ }, "release_policy": { "$ref": "#/definitions/KeyReleasePolicy", + "x-nullable": true, "description": "The policy rules under which the key can be exported." } }, @@ -1594,6 +1796,7 @@ }, "release_policy": { "$ref": "#/definitions/KeyReleasePolicy", + "x-nullable": true, "description": "The policy rules under which the key can be exported." } }, @@ -1604,28 +1807,60 @@ }, "KeyExportParameters": { "properties": { - "kek": { + "wrappingKey": { "$ref": "#/definitions/JsonWebKey", "description": "The export key encryption Json web key. This key MUST be a RSA key that supports encryption." + }, + "wrappingKid": { + "type": "string", + "description": "The export key encryption key identifier. This key MUST be a RSA key that supports encryption." + }, + "enc": { + "type": "string", + "minLength": 1, + "description": "The encryption algorithm to use to protected the exported key material", + "enum": [ + "CKM_RSA_AES_KEY_WRAP", + "RSA_AES_KEY_WRAP_256", + "RSA_AES_KEY_WRAP_384" + ], + "x-ms-enum": { + "name": "KeyEncryptionAlgorithm", + "modelAsString": true + } } }, - "description": "The export key parameters.", - "required": [ - "kek" - ] + "description": "The export key parameters." }, "KeyReleaseParameters": { "properties": { - "env": { - "x-ms-client-name": "environment", + "target": { "type": "string", "minLength": 1, - "description": "The target environment assertion." + "description": "The attestation assertion for the target of the key release." + }, + "nonce": { + "type": "string", + "description": "A client provided nonce for freshness." + }, + "enc": { + "type": "string", + "minLength": 1, + "description": "The encryption algorithm to use to protected the exported key material", + "enum": [ + "CKM_RSA_AES_KEY_WRAP", + "RSA_AES_KEY_WRAP_256", + "RSA_AES_KEY_WRAP_384" + ], + "x-ms-enum": { + "name": "KeyEncryptionAlgorithm", + "modelAsString": true + } } }, "description": "The release key parameters.", "required": [ - "env" + "target" ] }, "KeyOperationsParameters": { @@ -1846,6 +2081,7 @@ }, "release_policy": { "$ref": "#/definitions/KeyReleasePolicy", + "x-nullable": true, "description": "The policy rules under which the key can be exported." } }, @@ -1955,16 +2191,110 @@ }, "description": "The backup key result, containing the backup blob." }, + "KeyRotationPolicy": { + "properties": { + "id": { + "type": "string", + "description": "The key policy id.", + "readOnly": true + }, + "lifetimeActions": { + "type": "array", + "items": { + "$ref": "#/definitions/LifetimeActions" + }, + "description": "Actions that will be performed by Key Vault over the lifetime of a key. For preview, lifetimeActions can only have two items at maximum: one for rotate, one for notify. Notification time would be default to 30 days before expiry and it is not configurable." + }, + "attributes": { + "$ref": "#/definitions/KeyRotationPolicyAttributes", + "description": "The key rotation policy attributes." + } + }, + "description": "Management policy for a key." + }, + "LifetimeActions": { + "properties": { + "trigger": { + "$ref": "#/definitions/LifetimeActionsTrigger", + "description": "The condition that will execute the action." + }, + "action": { + "$ref": "#/definitions/LifetimeActionsType", + "description": "The action that will be executed." + } + }, + "description": "Action and its trigger that will be performed by Key Vault over the lifetime of a key." + }, + "LifetimeActionsTrigger": { + "properties": { + "timeAfterCreate": { + "type": "string", + "description": "Time after creation to attempt rotate. It will be in ISO 8601 format. Example: 90 days : \"P90D\" " + }, + "timeBeforeExpiry": { + "type": "string", + "description": "Time before expiry to attempt rotate. It will be in ISO 8601 format. Example: 90 days : \"P90D\"" + } + }, + "description": "A condition to be satisfied for an action to be executed." + }, + "LifetimeActionsType": { + "properties": { + "type": { + "type": "string", + "description": "The type of the action.", + "enum": [ + "rotate", + "notify" + ], + "x-ms-enum": { + "name": "ActionType", + "modelAsString": false, + "values": [ + { + "value": "rotate", + "description": "Rotate the key based on the key policy." + }, + { + "value": "notify", + "description": "Trigger event grid events. For preview, the notification time is not configurable and it is default to 30 days before expiry." + } + ] + } + } + }, + "description": "The action that will be executed." + }, + "KeyRotationPolicyAttributes": { + "properties": { + "expiryTime": { + "type": "string", + "description": "The expiryTime will be applied on the new key version. It should be at least 28 days. It will be in ISO 8601 Format. Examples: 90 days: P90D, 3 months: P3M, 48 hours: PT48H, 1 year and 10 days: P1Y10D" + }, + "created": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The key rotation policy created time in UTC." + }, + "updated": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The key rotation policy's last updated time in UTC." + } + }, + "description": "The key rotation policy attributes." + }, "KeyReleaseResult": { "properties": { "value": { "type": "string", - "format": "base64url", "readOnly": true, - "description": "The blob containing the released key." + "description": "A signed object containing the released key." } }, - "description": "The release result, containing the released key blob." + "description": "The release result, containing the released key." } }, "parameters": { diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.3-preview/securitydomain.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.3-preview/securitydomain.json index ac6af6edaaa0..a9a6508bb32e 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.3-preview/securitydomain.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.3-preview/securitydomain.json @@ -97,12 +97,6 @@ } } }, - "200": { - "description": "The response contains the confirmed Security Domain.", - "schema": { - "$ref": "#/definitions/SecurityDomainObject" - } - }, "default": { "description": "Key Vault error response describing why the operation failed.", "schema": { diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/keys.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/keys.json index f0a3aa63cc26..7ef2eba49bf3 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/keys.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/keys.json @@ -1295,7 +1295,7 @@ "properties": { "exportable": { "type": "boolean", - "description": "Indicates if the private key can be exported." + "description": "Not supported in this version. Indicates if the private key can be exported." }, "kty": { "x-ms-client-name": "keyType", diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/backuprestore.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/backuprestore.json new file mode 100644 index 000000000000..772b6755bbac --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/backuprestore.json @@ -0,0 +1,442 @@ +{ + "swagger": "2.0", + "info": { + "title": "KeyVaultClient", + "description": "The key vault client performs cryptographic key operations and vault operations against the Key Vault service.", + "version": "7.2" + }, + "x-ms-parameterized-host": { + "hostTemplate": "{vaultBaseUrl}", + "useSchemePrefix": false, + "positionInOperation": "first", + "parameters": [ + { + "name": "vaultBaseUrl", + "description": "The vault name, for example https://myvault.vault.azure.net.", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true + } + ] + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/backup": { + "post": { + "tags": [ + "FullBackup" + ], + "operationId": "FullBackup", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "description": "Creates a full backup using a user-provided SAS token to an Azure blob storage container.", + "parameters": [ + { + "in": "body", + "name": "azureStorageBlobContainerUri", + "schema": { + "$ref": "#/definitions/SASTokenParameter" + }, + "description": "Azure blob shared access signature token pointing to a valid Azure blob container where full backup needs to be stored. This token needs to be valid for at least next 24 hours from the time of making this call" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Started full backup", + "headers": { + "Retry-After": { + "description": "The recommended number of seconds to wait before calling the URI specified in Azure-AsyncOperation.", + "type": "integer" + }, + "Azure-AsyncOperation": { + "description": "The URI to poll for completion status.", + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/FullBackupOperation" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Create full backup": { + "$ref": "./examples/FullBackup-example.json" + } + } + } + }, + "/backup/{jobId}/pending": { + "get": { + "tags": [ + "FullBackup" + ], + "operationId": "FullBackupStatus", + "description": "Returns the status of full backup operation", + "parameters": [ + { + "name": "jobId", + "in": "path", + "required": true, + "type": "string", + "description": "The id returned as part of the backup request" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the full backup status", + "schema": { + "$ref": "#/definitions/FullBackupOperation" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Full backup status": { + "$ref": "./examples/FullBackup-pending-example.json" + } + } + } + }, + "/restore": { + "put": { + "tags": [ + "FullRestore" + ], + "operationId": "FullRestoreOperation", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "description": "Restores all key materials using the SAS token pointing to a previously stored Azure Blob storage backup folder", + "parameters": [ + { + "name": "restoreBlobDetails", + "in": "body", + "schema": { + "$ref": "#/definitions/RestoreOperationParameters" + }, + "description": "The Azure blob SAS token pointing to a folder where the previous successful full backup was stored" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Started restore operation from the previously stored backup", + "headers": { + "Retry-After": { + "description": "The recommended number of seconds to wait before calling the URI specified in Azure-AsyncOperation.", + "type": "integer" + }, + "Azure-AsyncOperation": { + "description": "The URI to poll for completion status.", + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/RestoreOperation" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Create full restore from backup": { + "$ref": "./examples/FullRestore-example.json" + } + } + } + }, + "/restore/{jobId}/pending": { + "get": { + "tags": [ + "FullRestore" + ], + "operationId": "RestoreStatus", + "description": "Returns the status of restore operation", + "parameters": [ + { + "name": "jobId", + "in": "path", + "required": true, + "type": "string", + "description": "The Job Id returned part of the restore operation" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the full restore status", + "schema": { + "$ref": "#/definitions/RestoreOperation" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Restore status": { + "$ref": "./examples/Restore-pending-example.json" + } + } + } + }, + "/keys/{keyName}/restore": { + "put": { + "tags": [ + "Keys" + ], + "operationId": "SelectiveKeyRestoreOperation", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "description": "Restores all key versions of a given key using user supplied SAS token pointing to a previously stored Azure Blob storage backup folder", + "parameters": [ + { + "name": "keyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the key to be restored from the user supplied backup" + }, + { + "name": "restoreBlobDetails", + "in": "body", + "schema": { + "$ref": "#/definitions/SelectiveKeyRestoreOperationParameters" + }, + "description": "The Azure blob SAS token pointing to a folder where the previous successful full backup was stored" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Started selective key restore operation from the previously stored backup", + "headers": { + "Retry-After": { + "description": "The recommended number of seconds to wait before calling the URI specified in Azure-AsyncOperation.", + "type": "integer" + }, + "Azure-AsyncOperation": { + "description": "The URI to poll for completion status.", + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/SelectiveKeyRestoreOperation" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Selectively restore key from a backup": { + "$ref": "./examples/SelectiveRestore-example.json" + } + } + } + } + }, + "definitions": { + "RestoreOperationParameters": { + "properties": { + "sasTokenParameters": { + "$ref": "#/definitions/SASTokenParameter", + "description": "SAS token parameter object containing Azure storage resourceUri and token" + }, + "folderToRestore": { + "type": "string", + "description": "The Folder name of the blob where the previous successful full backup was stored" + } + }, + "required": [ + "folderToRestore", + "sasTokenParameters" + ] + }, + "SelectiveKeyRestoreOperationParameters": { + "properties": { + "sasTokenParameters": { + "$ref": "#/definitions/SASTokenParameter", + "description": "SAS token parameter object containing Azure storage resourceUri and token" + }, + "folder": { + "type": "string", + "description": "The Folder name of the blob where the previous successful full backup was stored" + } + }, + "required": [ + "folder", + "sasTokenParameters" + ] + }, + "SelectiveKeyRestoreOperation": { + "properties": { + "status": { + "type": "string", + "description": "Status of the restore operation." + }, + "statusDetails": { + "type": "string", + "description": "The status details of restore operation." + }, + "error": { + "$ref": "common.json#/definitions/Error", + "description": "Error encountered, if any, during the selective key restore operation." + }, + "jobId": { + "type": "string", + "description": "Identifier for the selective key restore operation." + }, + "startTime": { + "type": "integer", + "format": "unixtime", + "description": "The start time of the restore operation" + }, + "endTime": { + "type": "integer", + "format": "unixtime", + "description": "The end time of the restore operation", + "x-nullable": true + } + }, + "description": "Selective Key Restore operation" + }, + "SASTokenParameter": { + "properties": { + "storageResourceUri": { + "type": "string", + "description": "Azure Blob storage container Uri" + }, + "token": { + "type": "string", + "description": "The SAS token pointing to an Azure Blob storage container" + } + }, + "required": [ + "storageResourceUri", + "token" + ] + }, + "FullBackupOperation": { + "properties": { + "status": { + "type": "string", + "description": "Status of the backup operation." + }, + "statusDetails": { + "type": "string", + "description": "The status details of backup operation." + }, + "error": { + "$ref": "common.json#/definitions/Error", + "description": "Error encountered, if any, during the full backup operation." + }, + "startTime": { + "type": "integer", + "format": "unixtime", + "description": "The start time of the backup operation in UTC" + }, + "endTime": { + "type": "integer", + "format": "unixtime", + "description": "The end time of the backup operation in UTC", + "x-nullable": true + }, + "jobId": { + "type": "string", + "description": "Identifier for the full backup operation." + }, + "azureStorageBlobContainerUri": { + "type": "string", + "description": "The Azure blob storage container Uri which contains the full backup" + } + }, + "description": "Full backup operation" + }, + "RestoreOperation": { + "properties": { + "status": { + "type": "string", + "description": "Status of the restore operation." + }, + "statusDetails": { + "type": "string", + "description": "The status details of restore operation." + }, + "error": { + "$ref": "common.json#/definitions/Error", + "description": "Error encountered, if any, during the restore operation." + }, + "jobId": { + "type": "string", + "description": "Identifier for the restore operation." + }, + "startTime": { + "type": "integer", + "format": "unixtime", + "description": "The start time of the restore operation" + }, + "endTime": { + "type": "integer", + "format": "unixtime", + "description": "The end time of the restore operation", + "x-nullable": true + } + }, + "description": "Restore operation" + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client API version." + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/certificates.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/certificates.json new file mode 100644 index 000000000000..9e43b572818f --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/certificates.json @@ -0,0 +1,2084 @@ +{ + "swagger": "2.0", + "info": { + "title": "KeyVaultClient", + "description": "The key vault client performs cryptographic key operations and vault operations against the Key Vault service.", + "version": "7.2" + }, + "x-ms-parameterized-host": { + "hostTemplate": "{vaultBaseUrl}", + "useSchemePrefix": false, + "positionInOperation": "first", + "parameters": [ + { + "name": "vaultBaseUrl", + "description": "The vault name, for example https://myvault.vault.azure.net.", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true + } + ] + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/certificates": { + "get": { + "tags": [ + "Certificates" + ], + "operationId": "GetCertificates", + "summary": "List certificates in a specified key vault", + "description": "The GetCertificates operation returns the set of certificates resources in the specified key vault. This operation requires the certificates/list permission.", + "parameters": [ + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified the service will return up to 25 results." + }, + { + "name": "includePending", + "in": "query", + "required": false, + "type": "boolean", + "description": "Specifies whether to include certificates which are not completely provisioned." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of certificates along with a link to the next page of certificates.", + "schema": { + "$ref": "#/definitions/CertificateListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetCertificates": { + "$ref": "./examples/GetCertificates-example.json" + } + } + } + }, + "/certificates/{certificate-name}": { + "delete": { + "tags": [ + "Certificates" + ], + "operationId": "DeleteCertificate", + "summary": "Deletes a certificate from a specified key vault.", + "description": "Deletes all versions of a certificate object along with its associated policy. Delete certificate cannot be used to remove individual versions of a certificate object. This operation requires the certificates/delete permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the certificate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The deleted certificate.", + "schema": { + "$ref": "#/definitions/DeletedCertificateBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "DeleteCertificate": { + "$ref": "./examples/DeleteCertificate-example.json" + } + } + } + }, + "/certificates/contacts": { + "put": { + "tags": [ + "Certificates" + ], + "operationId": "SetCertificateContacts", + "description": "Sets the certificate contacts for the specified key vault. This operation requires the certificates/managecontacts permission.", + "summary": "Sets the certificate contacts for the specified key vault.", + "parameters": [ + { + "name": "contacts", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Contacts" + }, + "description": "The contacts for the key vault certificate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The contacts for the key vault certificate.", + "schema": { + "$ref": "#/definitions/Contacts" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "SetCertificateContacts": { + "$ref": "./examples/SetCertificateContacts-example.json" + } + } + }, + "get": { + "tags": [ + "Certificates" + ], + "operationId": "GetCertificateContacts", + "summary": "Lists the certificate contacts for a specified key vault.", + "description": "The GetCertificateContacts operation returns the set of certificate contact resources in the specified key vault. This operation requires the certificates/managecontacts permission.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The contacts for the key vault certificate.", + "schema": { + "$ref": "#/definitions/Contacts" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "GetCertificateContacts": { + "$ref": "./examples/GetCertificateContacts-example.json" + } + } + }, + "delete": { + "tags": [ + "Certificates" + ], + "operationId": "DeleteCertificateContacts", + "description": "Deletes the certificate contacts for a specified key vault certificate. This operation requires the certificates/managecontacts permission.", + "summary": "Deletes the certificate contacts for a specified key vault.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The contacts for the key vault certificate.", + "schema": { + "$ref": "#/definitions/Contacts" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "DeleteCertificateContacts": { + "$ref": "./examples/DeleteCertificateContacts-example.json" + } + } + } + }, + "/certificates/issuers": { + "get": { + "tags": [ + "Certificates" + ], + "operationId": "GetCertificateIssuers", + "summary": "List certificate issuers for a specified key vault.", + "description": "The GetCertificateIssuers operation returns the set of certificate issuer resources in the specified key vault. This operation requires the certificates/manageissuers/getissuers permission.", + "parameters": [ + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified the service will return up to 25 results." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of certificate issuers in a key vault along with a link to the next page of certificate issuers.", + "schema": { + "$ref": "#/definitions/CertificateIssuerListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetCertificateIssuers": { + "$ref": "./examples/GetCertificateIssuers-example.json" + } + } + } + }, + "/certificates/issuers/{issuer-name}": { + "put": { + "tags": [ + "Certificates" + ], + "operationId": "SetCertificateIssuer", + "summary": "Sets the specified certificate issuer.", + "description": "The SetCertificateIssuer operation adds or updates the specified certificate issuer. This operation requires the certificates/setissuers permission.", + "parameters": [ + { + "name": "issuer-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the issuer." + }, + { + "name": "parameter", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/CertificateIssuerSetParameters" + }, + "description": "Certificate issuer set parameter." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The issuer for the key vault certificate.", + "schema": { + "$ref": "#/definitions/IssuerBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "SetCertificateIssuer": { + "$ref": "./examples/SetCertificateIssuer-example.json" + } + } + }, + "patch": { + "tags": [ + "Certificates" + ], + "operationId": "UpdateCertificateIssuer", + "summary": "Updates the specified certificate issuer.", + "description": "The UpdateCertificateIssuer operation performs an update on the specified certificate issuer entity. This operation requires the certificates/setissuers permission.", + "parameters": [ + { + "name": "issuer-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the issuer." + }, + { + "name": "parameter", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/CertificateIssuerUpdateParameters" + }, + "description": "Certificate issuer update parameter." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The issuer for the key vault certificate.", + "schema": { + "$ref": "#/definitions/IssuerBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "UpdateCertificateIssuer": { + "$ref": "./examples/UpdateCertificateIssuer-example.json" + } + } + }, + "get": { + "tags": [ + "Certificates" + ], + "operationId": "GetCertificateIssuer", + "summary": "Lists the specified certificate issuer.", + "description": "The GetCertificateIssuer operation returns the specified certificate issuer resources in the specified key vault. This operation requires the certificates/manageissuers/getissuers permission.", + "parameters": [ + { + "name": "issuer-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the issuer." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The issuer for the key vault certificate.", + "schema": { + "$ref": "#/definitions/IssuerBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "GetCertificateIssuer": { + "$ref": "./examples/GetCertificateIssuer-example.json" + } + } + }, + "delete": { + "tags": [ + "Certificates" + ], + "operationId": "DeleteCertificateIssuer", + "summary": "Deletes the specified certificate issuer.", + "description": "The DeleteCertificateIssuer operation permanently removes the specified certificate issuer from the vault. This operation requires the certificates/manageissuers/deleteissuers permission.", + "parameters": [ + { + "name": "issuer-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the issuer." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The issuer for the key vault certificate.", + "schema": { + "$ref": "#/definitions/IssuerBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "DeleteCertificateIssuer": { + "$ref": "./examples/DeleteCertificateIssuer-example.json" + } + } + } + }, + "/certificates/{certificate-name}/create": { + "post": { + "tags": [ + "Certificates" + ], + "operationId": "CreateCertificate", + "summary": "Creates a new certificate.", + "description": "If this is the first version, the certificate resource is created. This operation requires the certificates/create permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z-]+$", + "description": "The name of the certificate." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/CertificateCreateParameters" + }, + "description": "The parameters to create a certificate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Created certificate bundle.", + "schema": { + "$ref": "#/definitions/CertificateOperation" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "CreateCertificate": { + "$ref": "./examples/CreateCertificate-example.json" + } + } + } + }, + "/certificates/{certificate-name}/import": { + "post": { + "tags": [ + "Certificates" + ], + "operationId": "ImportCertificate", + "summary": "Imports a certificate into a specified key vault.", + "description": "Imports an existing valid certificate, containing a private key, into Azure Key Vault. The certificate to be imported can be in either PFX or PEM format. If the certificate is in PEM format the PEM file must contain the key as well as x509 certificates. This operation requires the certificates/import permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z-]+$", + "description": "The name of the certificate." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/CertificateImportParameters" + }, + "description": "The parameters to import the certificate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Imported certificate bundle to the vault.", + "schema": { + "$ref": "#/definitions/CertificateBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "ImportCertificate": { + "$ref": "./examples/ImportCertificate-example.json" + } + } + } + }, + "/certificates/{certificate-name}/versions": { + "get": { + "tags": [ + "Certificates" + ], + "operationId": "GetCertificateVersions", + "summary": "List the versions of a certificate.", + "description": "The GetCertificateVersions operation returns the versions of a certificate in the specified key vault. This operation requires the certificates/list permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the certificate." + }, + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified the service will return up to 25 results." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of certificates in the key vault along with a link to the next page of keys.", + "schema": { + "$ref": "#/definitions/CertificateListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetCertificateVersions": { + "$ref": "./examples/GetCertificateVersions-example.json" + } + } + } + }, + "/certificates/{certificate-name}/policy": { + "get": { + "tags": [ + "Certificates" + ], + "operationId": "GetCertificatePolicy", + "summary": "Lists the policy for a certificate.", + "description": "The GetCertificatePolicy operation returns the specified certificate policy resources in the specified key vault. This operation requires the certificates/get permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the certificate in a given key vault." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The certificate policy.", + "schema": { + "$ref": "#/definitions/CertificatePolicy" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "GetCertificatePolicy": { + "$ref": "./examples/GetCertificatePolicy-example.json" + } + } + }, + "patch": { + "tags": [ + "Certificates" + ], + "operationId": "UpdateCertificatePolicy", + "summary": "Updates the policy for a certificate.", + "description": "Set specified members in the certificate policy. Leave others as null. This operation requires the certificates/update permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the certificate in the given vault." + }, + { + "name": "certificatePolicy", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CertificatePolicy" + }, + "description": "The policy for the certificate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The certificate policy", + "schema": { + "$ref": "#/definitions/CertificatePolicy" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "UpdateCertificatePolicy": { + "$ref": "./examples/UpdateCertificatePolicy-example.json" + } + } + } + }, + "/certificates/{certificate-name}/{certificate-version}": { + "patch": { + "tags": [ + "Certificates" + ], + "operationId": "UpdateCertificate", + "summary": "Updates the specified attributes associated with the given certificate.", + "description": "The UpdateCertificate operation applies the specified update on the given certificate; the only elements updated are the certificate's attributes. This operation requires the certificates/update permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the certificate in the given key vault." + }, + { + "name": "certificate-version", + "in": "path", + "required": true, + "type": "string", + "description": "The version of the certificate." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/CertificateUpdateParameters" + }, + "description": "The parameters for certificate update." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The updated certificate.", + "schema": { + "$ref": "#/definitions/CertificateBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "UpdateCertificate": { + "$ref": "./examples/UpdateCertificate-example.json" + } + } + }, + "get": { + "tags": [ + "Certificates" + ], + "operationId": "GetCertificate", + "summary": "Gets information about a certificate.", + "description": "Gets information about a specific certificate. This operation requires the certificates/get permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the certificate in the given vault." + }, + { + "name": "certificate-version", + "in": "path", + "required": true, + "type": "string", + "description": "The version of the certificate. This URI fragment is optional. If not specified, the latest version of the certificate is returned." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The retrieved certificate.", + "schema": { + "$ref": "#/definitions/CertificateBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "GetCertificate": { + "$ref": "./examples/GetCertificate-example.json" + } + } + } + }, + "/certificates/{certificate-name}/pending": { + "patch": { + "tags": [ + "Certificates" + ], + "operationId": "UpdateCertificateOperation", + "summary": "Updates a certificate operation.", + "description": "Updates a certificate creation operation that is already in progress. This operation requires the certificates/update permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the certificate." + }, + { + "name": "certificateOperation", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/CertificateOperationUpdateParameter" + }, + "description": "The certificate operation response." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A message containing the certificate operation response.", + "schema": { + "$ref": "#/definitions/CertificateOperation" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "UpdateCertificateOperation": { + "$ref": "./examples/UpdateCertificateOperation-example.json" + } + } + }, + "get": { + "tags": [ + "Certificates" + ], + "operationId": "GetCertificateOperation", + "summary": "Gets the creation operation of a certificate.", + "description": "Gets the creation operation associated with a specified certificate. This operation requires the certificates/get permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the certificate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The certificate operation response.", + "schema": { + "$ref": "#/definitions/CertificateOperation" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "GetCertificateOperation": { + "$ref": "./examples/GetCertificateOperation-example.json" + } + } + }, + "delete": { + "tags": [ + "Certificates" + ], + "operationId": "DeleteCertificateOperation", + "summary": "Deletes the creation operation for a specific certificate.", + "description": "Deletes the creation operation for a specified certificate that is in the process of being created. The certificate is no longer created. This operation requires the certificates/update permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the certificate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A message containing the certificate operation response.", + "schema": { + "$ref": "#/definitions/CertificateOperation" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "DeleteCertificateOperation": { + "$ref": "./examples/DeleteCertificateOperation-example.json" + } + } + } + }, + "/certificates/{certificate-name}/pending/merge": { + "post": { + "tags": [ + "Certificates" + ], + "operationId": "MergeCertificate", + "summary": "Merges a certificate or a certificate chain with a key pair existing on the server.", + "description": "The MergeCertificate operation performs the merging of a certificate or certificate chain with a key pair currently available in the service. This operation requires the certificates/create permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the certificate." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/CertificateMergeParameters" + }, + "description": "The parameters to merge certificate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Merged certificate bundle to the vault.", + "schema": { + "$ref": "#/definitions/CertificateBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "MergeCertificate": { + "$ref": "./examples/MergeCertificate-example.json" + } + } + } + }, + "/certificates/{certificate-name}/backup": { + "post": { + "tags": [ + "Certificates" + ], + "operationId": "BackupCertificate", + "summary": "Backs up the specified certificate.", + "description": "Requests that a backup of the specified certificate be downloaded to the client. All versions of the certificate will be downloaded. This operation requires the certificates/backup permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the certificate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The backup blob containing the backed up certificate.", + "schema": { + "$ref": "#/definitions/BackupCertificateResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "BackupCertificate": { + "$ref": "./examples/BackupCertificate-example.json" + } + } + } + }, + "/certificates/restore": { + "post": { + "tags": [ + "Certificates" + ], + "operationId": "RestoreCertificate", + "summary": "Restores a backed up certificate to a vault.", + "description": "Restores a backed up certificate, and all its versions, to a vault. This operation requires the certificates/restore permission.", + "parameters": [ + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/CertificateRestoreParameters" + }, + "description": "The parameters to restore the certificate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Restored certificate bundle in the vault.", + "schema": { + "$ref": "#/definitions/CertificateBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "RestoreCertificate": { + "$ref": "./examples/RestoreCertificate-example.json" + } + } + } + }, + "/deletedcertificates": { + "get": { + "tags": [ + "DeletedCertificates" + ], + "operationId": "GetDeletedCertificates", + "summary": "Lists the deleted certificates in the specified vault currently available for recovery.", + "description": "The GetDeletedCertificates operation retrieves the certificates in the current vault which are in a deleted state and ready for recovery or purging. This operation includes deletion-specific information. This operation requires the certificates/get/list permission. This operation can only be enabled on soft-delete enabled vaults.", + "parameters": [ + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified the service will return up to 25 results." + }, + { + "name": "includePending", + "in": "query", + "required": false, + "type": "boolean", + "description": "Specifies whether to include certificates which are not completely provisioned." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of deleted certificates in the vault along with a link to the next page of deleted certificates", + "schema": { + "$ref": "#/definitions/DeletedCertificateListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetDeletedCertificates": { + "$ref": "./examples/GetDeletedCertificates-example.json" + } + } + } + }, + "/deletedcertificates/{certificate-name}": { + "get": { + "tags": [ + "DeletedCertificates" + ], + "operationId": "GetDeletedCertificate", + "summary": "Retrieves information about the specified deleted certificate.", + "description": "The GetDeletedCertificate operation retrieves the deleted certificate information plus its attributes, such as retention interval, scheduled permanent deletion and the current deletion recovery level. This operation requires the certificates/get permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the certificate" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A Certificate bundle of the certificate and its attributes", + "schema": { + "$ref": "#/definitions/DeletedCertificateBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "GetDeletedCertificate": { + "$ref": "./examples/GetDeletedCertificate-example.json" + } + } + }, + "delete": { + "tags": [ + "DeletedCertificates" + ], + "operationId": "PurgeDeletedCertificate", + "summary": "Permanently deletes the specified deleted certificate.", + "description": "The PurgeDeletedCertificate operation performs an irreversible deletion of the specified certificate, without possibility for recovery. The operation is not available if the recovery level does not specify 'Purgeable'. This operation requires the certificate/purge permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the certificate" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No content signaling that the certificate was purged forever." + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "PurgeDeletedCertificate": { + "$ref": "./examples/PurgeDeletedCertificate-example.json" + } + } + } + }, + "/deletedcertificates/{certificate-name}/recover": { + "post": { + "tags": [ + "DeletedCertificates" + ], + "operationId": "RecoverDeletedCertificate", + "summary": "Recovers the deleted certificate back to its current version under /certificates.", + "description": "The RecoverDeletedCertificate operation performs the reversal of the Delete operation. The operation is applicable in vaults enabled for soft-delete, and must be issued during the retention interval (available in the deleted certificate's attributes). This operation requires the certificates/recover permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deleted certificate" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A Certificate bundle of the original certificate and its attributes", + "schema": { + "$ref": "#/definitions/CertificateBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "RecoverDeletedCertificate": { + "$ref": "./examples/RecoverDeletedCertificate-example.json" + } + } + } + } + }, + "definitions": { + "CertificateAttributes": { + "allOf": [ + { + "$ref": "common.json#/definitions/Attributes" + } + ], + "properties": { + "recoverableDays": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "softDelete data retention days. Value should be >=7 and <=90 when softDelete enabled, otherwise 0." + }, + "recoveryLevel": { + "type": "string", + "description": "Reflects the deletion recovery level currently in effect for certificates in the current vault. If it contains 'Purgeable', the certificate can be permanently deleted by a privileged user; otherwise, only the system can purge the certificate, at the end of the retention interval.", + "enum": [ + "Purgeable", + "Recoverable+Purgeable", + "Recoverable", + "Recoverable+ProtectedSubscription", + "CustomizedRecoverable+Purgeable", + "CustomizedRecoverable", + "CustomizedRecoverable+ProtectedSubscription" + ], + "x-ms-enum": { + "name": "DeletionRecoveryLevel", + "modelAsString": true, + "values": [ + { + "value": "Purgeable", + "description": "Denotes a vault state in which deletion is an irreversible operation, without the possibility for recovery. This level corresponds to no protection being available against a Delete operation; the data is irretrievably lost upon accepting a Delete operation at the entity level or higher (vault, resource group, subscription etc.)" + }, + { + "value": "Recoverable+Purgeable", + "description": "Denotes a vault state in which deletion is recoverable, and which also permits immediate and permanent deletion (i.e. purge). This level guarantees the recoverability of the deleted entity during the retention interval (90 days), unless a Purge operation is requested, or the subscription is cancelled. System wil permanently delete it after 90 days, if not recovered" + }, + { + "value": "Recoverable", + "description": "Denotes a vault state in which deletion is recoverable without the possibility for immediate and permanent deletion (i.e. purge). This level guarantees the recoverability of the deleted entity during the retention interval(90 days) and while the subscription is still available. System wil permanently delete it after 90 days, if not recovered" + }, + { + "value": "Recoverable+ProtectedSubscription", + "description": "Denotes a vault and subscription state in which deletion is recoverable within retention interval (90 days), immediate and permanent deletion (i.e. purge) is not permitted, and in which the subscription itself cannot be permanently canceled. System wil permanently delete it after 90 days, if not recovered" + }, + { + "value": "CustomizedRecoverable+Purgeable", + "description": "Denotes a vault state in which deletion is recoverable, and which also permits immediate and permanent deletion (i.e. purge when 7<= SoftDeleteRetentionInDays < 90). This level guarantees the recoverability of the deleted entity during the retention interval, unless a Purge operation is requested, or the subscription is cancelled." + }, + { + "value": "CustomizedRecoverable", + "description": "Denotes a vault state in which deletion is recoverable without the possibility for immediate and permanent deletion (i.e. purge when 7<= SoftDeleteRetentionInDays < 90).This level guarantees the recoverability of the deleted entity during the retention interval and while the subscription is still available." + }, + { + "value": "CustomizedRecoverable+ProtectedSubscription", + "description": "Denotes a vault and subscription state in which deletion is recoverable, immediate and permanent deletion (i.e. purge) is not permitted, and in which the subscription itself cannot be permanently canceled when 7<= SoftDeleteRetentionInDays < 90. This level guarantees the recoverability of the deleted entity during the retention interval, and also reflects the fact that the subscription itself cannot be cancelled." + } + ] + }, + "readOnly": true, + "x-nullable": false + } + }, + "description": "The certificate management attributes." + }, + "CertificateItem": { + "properties": { + "id": { + "type": "string", + "description": "Certificate identifier." + }, + "attributes": { + "$ref": "#/definitions/CertificateAttributes", + "description": "The certificate management attributes." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + }, + "x5t": { + "x-ms-client-name": "X509Thumbprint", + "type": "string", + "format": "base64url", + "description": "Thumbprint of the certificate." + } + }, + "description": "The certificate item containing certificate metadata." + }, + "CertificateIssuerItem": { + "properties": { + "id": { + "type": "string", + "description": "Certificate Identifier." + }, + "provider": { + "type": "string", + "description": "The issuer provider." + } + }, + "description": "The certificate issuer item containing certificate issuer metadata." + }, + "CertificateBundle": { + "properties": { + "id": { + "type": "string", + "description": "The certificate id.", + "readOnly": true + }, + "kid": { + "type": "string", + "description": "The key id.", + "readOnly": true + }, + "sid": { + "type": "string", + "description": "The secret id.", + "readOnly": true + }, + "x5t": { + "x-ms-client-name": "X509Thumbprint", + "type": "string", + "format": "base64url", + "description": "Thumbprint of the certificate.", + "readOnly": true + }, + "policy": { + "$ref": "#/definitions/CertificatePolicy", + "description": "The management policy.", + "readOnly": true + }, + "cer": { + "type": "string", + "format": "byte", + "description": "CER contents of x509 certificate." + }, + "contentType": { + "type": "string", + "description": "The content type of the secret." + }, + "attributes": { + "$ref": "#/definitions/CertificateAttributes", + "description": "The certificate attributes." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs" + } + }, + "description": "A certificate bundle consists of a certificate (X509) plus its attributes." + }, + "DeletedCertificateBundle": { + "allOf": [ + { + "$ref": "#/definitions/CertificateBundle" + } + ], + "properties": { + "recoveryId": { + "type": "string", + "description": "The url of the recovery object, used to identify and recover the deleted certificate." + }, + "scheduledPurgeDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the certificate is scheduled to be purged, in UTC" + }, + "deletedDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the certificate was deleted, in UTC" + } + }, + "description": "A Deleted Certificate consisting of its previous id, attributes and its tags, as well as information on when it will be purged." + }, + "DeletedCertificateItem": { + "allOf": [ + { + "$ref": "#/definitions/CertificateItem" + } + ], + "properties": { + "recoveryId": { + "type": "string", + "description": "The url of the recovery object, used to identify and recover the deleted certificate." + }, + "scheduledPurgeDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the certificate is scheduled to be purged, in UTC" + }, + "deletedDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the certificate was deleted, in UTC" + } + }, + "description": "The deleted certificate item containing metadata about the deleted certificate." + }, + "CertificateOperation": { + "properties": { + "id": { + "type": "string", + "description": "The certificate id.", + "readOnly": true + }, + "issuer": { + "x-ms-client-name": "IssuerParameters", + "$ref": "#/definitions/IssuerParameters", + "description": "Parameters for the issuer of the X509 component of a certificate." + }, + "csr": { + "type": "string", + "format": "byte", + "description": "The certificate signing request (CSR) that is being used in the certificate operation." + }, + "cancellation_requested": { + "type": "boolean", + "description": "Indicates if cancellation was requested on the certificate operation." + }, + "status": { + "type": "string", + "description": "Status of the certificate operation." + }, + "status_details": { + "type": "string", + "description": "The status details of the certificate operation." + }, + "error": { + "$ref": "common.json#/definitions/Error", + "description": "Error encountered, if any, during the certificate operation." + }, + "target": { + "type": "string", + "description": "Location which contains the result of the certificate operation." + }, + "request_id": { + "type": "string", + "description": "Identifier for the certificate operation." + } + }, + "description": "A certificate operation is returned in case of asynchronous requests." + }, + "CertificatePolicy": { + "properties": { + "id": { + "type": "string", + "description": "The certificate id.", + "readOnly": true + }, + "key_props": { + "x-ms-client-name": "KeyProperties", + "$ref": "keys.json#/definitions/KeyProperties", + "description": "Properties of the key backing a certificate." + }, + "secret_props": { + "x-ms-client-name": "SecretProperties", + "$ref": "secrets.json#/definitions/SecretProperties", + "description": "Properties of the secret backing a certificate." + }, + "x509_props": { + "x-ms-client-name": "X509CertificateProperties", + "$ref": "#/definitions/X509CertificateProperties", + "description": "Properties of the X509 component of a certificate." + }, + "lifetime_actions": { + "type": "array", + "items": { + "$ref": "#/definitions/LifetimeAction" + }, + "description": "Actions that will be performed by Key Vault over the lifetime of a certificate." + }, + "issuer": { + "x-ms-client-name": "IssuerParameters", + "$ref": "#/definitions/IssuerParameters", + "description": "Parameters for the issuer of the X509 component of a certificate." + }, + "attributes": { + "$ref": "#/definitions/CertificateAttributes", + "description": "The certificate attributes." + } + }, + "description": "Management policy for a certificate." + }, + "X509CertificateProperties": { + "properties": { + "subject": { + "type": "string", + "description": "The subject name. Should be a valid X509 distinguished Name." + }, + "ekus": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The enhanced key usage." + }, + "sans": { + "x-ms-client-name": "SubjectAlternativeNames", + "$ref": "#/definitions/SubjectAlternativeNames", + "description": "The subject alternative names." + }, + "key_usage": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "digitalSignature", + "nonRepudiation", + "keyEncipherment", + "dataEncipherment", + "keyAgreement", + "keyCertSign", + "cRLSign", + "encipherOnly", + "decipherOnly" + ], + "x-ms-enum": { + "name": "KeyUsageType", + "modelAsString": true + } + }, + "description": "List of key usages." + }, + "validity_months": { + "x-ms-client-name": "ValidityInMonths", + "type": "integer", + "format": "int32", + "minimum": 0, + "description": "The duration that the certificate is valid in months." + } + }, + "description": "Properties of the X509 component of a certificate." + }, + "IssuerParameters": { + "properties": { + "name": { + "type": "string", + "description": "Name of the referenced issuer object or reserved names; for example, 'Self' or 'Unknown'." + }, + "cty": { + "x-ms-client-name": "CertificateType", + "type": "string", + "description": "Certificate type as supported by the provider (optional); for example 'OV-SSL', 'EV-SSL'" + }, + "cert_transparency": { + "x-ms-client-name": "CertificateTransparency", + "type": "boolean", + "description": "Indicates if the certificates generated under this policy should be published to certificate transparency logs." + } + }, + "description": "Parameters for the issuer of the X509 component of a certificate." + }, + "LifetimeAction": { + "properties": { + "trigger": { + "$ref": "#/definitions/Trigger", + "description": "The condition that will execute the action." + }, + "action": { + "$ref": "#/definitions/Action", + "description": "The action that will be executed." + } + }, + "description": "Action and its trigger that will be performed by Key Vault over the lifetime of a certificate." + }, + "Action": { + "properties": { + "action_type": { + "type": "string", + "description": "The type of the action.", + "enum": [ + "EmailContacts", + "AutoRenew" + ], + "x-ms-enum": { + "name": "ActionType", + "modelAsString": false + } + } + }, + "description": "The action that will be executed." + }, + "Trigger": { + "properties": { + "lifetime_percentage": { + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 99, + "description": "Percentage of lifetime at which to trigger. Value should be between 1 and 99." + }, + "days_before_expiry": { + "type": "integer", + "format": "int32", + "description": "Days before expiry to attempt renewal. Value should be between 1 and validity_in_months multiplied by 27. If validity_in_months is 36, then value should be between 1 and 972 (36 * 27)." + } + }, + "description": "A condition to be satisfied for an action to be executed." + }, + "SubjectAlternativeNames": { + "properties": { + "emails": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Email addresses." + }, + "dns_names": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Domain names." + }, + "upns": { + "type": "array", + "items": { + "type": "string" + }, + "description": "User principal names." + } + }, + "description": "The subject alternate names of a X509 object." + }, + "IssuerBundle": { + "properties": { + "id": { + "type": "string", + "description": "Identifier for the issuer object.", + "readOnly": true + }, + "provider": { + "type": "string", + "description": "The issuer provider." + }, + "credentials": { + "$ref": "#/definitions/IssuerCredentials", + "description": "The credentials to be used for the issuer." + }, + "org_details": { + "x-ms-client-name": "OrganizationDetails", + "$ref": "#/definitions/OrganizationDetails", + "description": "Details of the organization as provided to the issuer." + }, + "attributes": { + "$ref": "#/definitions/IssuerAttributes", + "description": "Attributes of the issuer object." + } + }, + "description": "The issuer for Key Vault certificate." + }, + "IssuerAttributes": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Determines whether the issuer is enabled." + }, + "created": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "Creation time in UTC." + }, + "updated": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "Last updated time in UTC." + } + }, + "description": "The attributes of an issuer managed by the Key Vault service." + }, + "IssuerCredentials": { + "properties": { + "account_id": { + "type": "string", + "description": "The user name/account name/account id." + }, + "pwd": { + "x-ms-client-name": "Password", + "type": "string", + "description": "The password/secret/account key." + } + }, + "description": "The credentials to be used for the certificate issuer." + }, + "OrganizationDetails": { + "properties": { + "id": { + "type": "string", + "description": "Id of the organization." + }, + "admin_details": { + "type": "array", + "items": { + "$ref": "#/definitions/AdministratorDetails" + }, + "description": "Details of the organization administrator." + } + }, + "description": "Details of the organization of the certificate issuer." + }, + "AdministratorDetails": { + "properties": { + "first_name": { + "type": "string", + "description": "First name." + }, + "last_name": { + "type": "string", + "description": "Last name." + }, + "email": { + "x-ms-client-name": "EmailAddress", + "type": "string", + "description": "Email address." + }, + "phone": { + "type": "string", + "description": "Phone number." + } + }, + "description": "Details of the organization administrator of the certificate issuer." + }, + "Contacts": { + "properties": { + "id": { + "type": "string", + "description": "Identifier for the contacts collection.", + "readOnly": true + }, + "contacts": { + "x-ms-client-name": "ContactList", + "type": "array", + "items": { + "$ref": "#/definitions/Contact" + }, + "description": "The contact list for the vault certificates." + } + }, + "description": "The contacts for the vault certificates." + }, + "Contact": { + "properties": { + "email": { + "x-ms-client-name": "EmailAddress", + "type": "string", + "description": "Email address." + }, + "name": { + "type": "string", + "description": "Name." + }, + "phone": { + "type": "string", + "description": "Phone number." + } + }, + "description": "The contact information for the vault certificates." + }, + "CertificateCreateParameters": { + "properties": { + "policy": { + "x-ms-client-name": "CertificatePolicy", + "$ref": "#/definitions/CertificatePolicy", + "description": "The management policy for the certificate." + }, + "attributes": { + "x-ms-client-name": "CertificateAttributes", + "$ref": "#/definitions/CertificateAttributes", + "description": "The attributes of the certificate (optional)." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + } + }, + "description": "The certificate create parameters." + }, + "CertificateImportParameters": { + "properties": { + "value": { + "x-ms-client-name": "base64EncodedCertificate", + "type": "string", + "description": "Base64 encoded representation of the certificate object to import. This certificate needs to contain the private key." + }, + "pwd": { + "x-ms-client-name": "password", + "type": "string", + "description": "If the private key in base64EncodedCertificate is encrypted, the password used for encryption." + }, + "policy": { + "x-ms-client-name": "CertificatePolicy", + "$ref": "#/definitions/CertificatePolicy", + "description": "The management policy for the certificate." + }, + "attributes": { + "x-ms-client-name": "CertificateAttributes", + "$ref": "#/definitions/CertificateAttributes", + "description": "The attributes of the certificate (optional)." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + } + }, + "description": "The certificate import parameters.", + "required": [ + "value" + ] + }, + "CertificateUpdateParameters": { + "properties": { + "policy": { + "x-ms-client-name": "CertificatePolicy", + "$ref": "#/definitions/CertificatePolicy", + "description": "The management policy for the certificate." + }, + "attributes": { + "x-ms-client-name": "CertificateAttributes", + "$ref": "#/definitions/CertificateAttributes", + "description": "The attributes of the certificate (optional)." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + } + }, + "description": "The certificate update parameters." + }, + "CertificateMergeParameters": { + "properties": { + "x5c": { + "x-ms-client-name": "x509Certificates", + "type": "array", + "items": { + "type": "string", + "format": "byte" + }, + "description": "The certificate or the certificate chain to merge." + }, + "attributes": { + "x-ms-client-name": "CertificateAttributes", + "$ref": "#/definitions/CertificateAttributes", + "description": "The attributes of the certificate (optional)." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + } + }, + "description": "The certificate merge parameters", + "required": [ + "x5c" + ] + }, + "CertificateIssuerSetParameters": { + "properties": { + "provider": { + "type": "string", + "description": "The issuer provider." + }, + "credentials": { + "$ref": "#/definitions/IssuerCredentials", + "description": "The credentials to be used for the issuer." + }, + "org_details": { + "x-ms-client-name": "OrganizationDetails", + "$ref": "#/definitions/OrganizationDetails", + "description": "Details of the organization as provided to the issuer." + }, + "attributes": { + "$ref": "#/definitions/IssuerAttributes", + "description": "Attributes of the issuer object." + } + }, + "description": "The certificate issuer set parameters.", + "required": [ + "provider" + ] + }, + "CertificateIssuerUpdateParameters": { + "properties": { + "provider": { + "type": "string", + "description": "The issuer provider." + }, + "credentials": { + "$ref": "#/definitions/IssuerCredentials", + "description": "The credentials to be used for the issuer." + }, + "org_details": { + "x-ms-client-name": "OrganizationDetails", + "$ref": "#/definitions/OrganizationDetails", + "description": "Details of the organization as provided to the issuer." + }, + "attributes": { + "$ref": "#/definitions/IssuerAttributes", + "description": "Attributes of the issuer object." + } + }, + "description": "The certificate issuer update parameters." + }, + "CertificateOperationUpdateParameter": { + "properties": { + "cancellation_requested": { + "type": "boolean", + "description": "Indicates if cancellation was requested on the certificate operation." + } + }, + "description": "The certificate operation update parameters.", + "required": [ + "cancellation_requested" + ] + }, + "CertificateListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/CertificateItem" + }, + "readOnly": true, + "description": "A response message containing a list of certificates in the key vault along with a link to the next page of certificates." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of certificates." + } + }, + "description": "The certificate list result." + }, + "DeletedCertificateListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeletedCertificateItem" + }, + "readOnly": true, + "description": "A response message containing a list of deleted certificates in the vault along with a link to the next page of deleted certificates" + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of deleted certificates." + } + }, + "description": "A list of certificates that have been deleted in this vault." + }, + "CertificateIssuerListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/CertificateIssuerItem" + }, + "readOnly": true, + "description": "A response message containing a list of certificate issuers in the key vault along with a link to the next page of certificate issuers." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of certificate issuers." + } + }, + "description": "The certificate issuer list result." + }, + "PendingCertificateSigningRequestResult": { + "properties": { + "value": { + "type": "string", + "readOnly": true, + "description": "The pending certificate signing request as Base64 encoded string." + } + }, + "description": "The pending certificate signing request result." + }, + "CertificateRestoreParameters": { + "properties": { + "value": { + "type": "string", + "x-ms-client-name": "certificateBundleBackup", + "format": "base64url", + "description": "The backup blob associated with a certificate bundle." + } + }, + "description": "The certificate restore parameters.", + "required": [ + "value" + ] + }, + "BackupCertificateResult": { + "properties": { + "value": { + "type": "string", + "format": "base64url", + "readOnly": true, + "description": "The backup blob containing the backed up certificate." + } + }, + "description": "The backup certificate result, containing the backup blob." + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client API version." + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/common.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/common.json new file mode 100644 index 000000000000..d95db7adc3a3 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/common.json @@ -0,0 +1,74 @@ +{ + "swagger": "2.0", + "info": { + "title": "KeyVaultClient", + "description": "The key vault client performs cryptographic key operations and vault operations against the Key Vault service.", + "version": "7.2" + }, + "paths": {}, + "definitions": { + "Attributes": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Determines whether the object is enabled." + }, + "nbf": { + "x-ms-client-name": "NotBefore", + "type": "integer", + "format": "unixtime", + "description": "Not before date in UTC." + }, + "exp": { + "x-ms-client-name": "Expires", + "type": "integer", + "format": "unixtime", + "description": "Expiry date in UTC." + }, + "created": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "Creation time in UTC." + }, + "updated": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "Last updated time in UTC." + } + }, + "description": "The object attributes managed by the KeyVault service." + }, + "KeyVaultError": { + "properties": { + "error": { + "readOnly": true, + "$ref": "#/definitions/Error" + } + }, + "description": "The key vault error exception." + }, + "Error": { + "properties": { + "code": { + "type": "string", + "readOnly": true, + "description": "The error code." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The error message." + }, + "innererror": { + "x-ms-client-name": "innerError", + "readOnly": true, + "$ref": "#/definitions/Error" + } + }, + "description": "The key vault server error.", + "x-nullable": true + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/BackupCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/BackupCertificate-example.json new file mode 100644 index 000000000000..fe2fdfb8d9f5 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/BackupCertificate-example.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "testcert", + "api-version": "7.2" + }, + "responses": { + "200": { + "body": { + "value": "JkF6dXJlS2V5VmF1bHRLZXlCYWNrdXBWMS5taWNyb3NvZnQuY29tZXlKcmFXUWlPaUkwTXpnMVlqQTNZaTFrTlRRM0xUUXlaVFV0WVdVNVpTMDJNVEJrWXpNNVpHWmhaamdpTENKaGJHY2lPaUpTVTBFdFQwRkZVQ0lzSW1WdVl5STZJa0V4TWpoRFFrTXRTRk15TlRZaWZRLm85bmpNWEFSZWVla2NaRXBsVTNjdUxQcVZlWmxFbGRDM01XOWpYR0h6bnBXRTdHRGVOSXJraGZscHdTWXFnQnBYQkozMFpUQkRpRmpROENXSnJfUGlsUWNDRkZyN0xrdWJhWUs0TW1zcVh5WGIzbkRJcUJkQmZIUVNpZ1ZET0J5Ym9sUlRNNDYzYjBTbXhLVzJheEdFS2NuZzQ5WFkycG1SR0Vrb0plcHJWZ0tyRkpOUGQ3cGJIS3hQSWdDOFlnT2xudnZxR280RlRDSzh0ZWotcUt2UzBfRGV6Uk5vdTZqZ25SekpxX0g2NGxWMk1hQ0NnUy0xbTlyOGVOTVVvSlhTV1hwc0lneng1RzdEbzIya1ZEY25vMW9rajlCMXNvbklkWmtuY1JybDJBVHNRZVlzZXdkUVd1VmhxRzVLN0pNQWo5YzBRdkxhTmlpdl9PY2pFcm5qUS4zbmI4azJ3SEcyNHFJelNNb184WG13LnJzc3NMNjJ1aUNfTm9IbG5zQlgzcEEtck1uY3g5R3V2NmJYSHpKamxwOWNMUnVaSDBSWlJYVXRwU3BPQWdyZ20tU3BxeEdWSjd2bmprbV9FSzJwYy1sZHNjUWtRSDB4bVFVcGZFNzN5b1VTYTNXVVNMS2VIVnJLdUg5MUtJR0tLODE5ejc5d1Y5Y0F3UjlzcHJxbFFWZnlKdlNFM2tnZTh1RVBpRFFVMFl5WnJqVjBsMGJCU3VkeTN1MVlsVHB6Wk1EWmpUcE05ZGtMclgtaGdxZ1FGa2xFa1hNRWlzd0RDZVM3Y3J2bFg1bnVzbWh5SkZCMklCd3dxNWJieHptV1diU3JOc3lFMmJmWEpXOWN4TFlQcnJJZFpfbkd0X29RSGVQcUFZTS1iVnpTdzdBRGJjMU15NTZwclBGLW9PSm40MHptOTBaaFBTVGMyQXNKRGFBa3R5WFU4WktOYUhFVUlHLWI1SGhUdFBuZ20wN0FrWEtQNngwaDhzZ3ZIaGdCeGpfdWRfQVpQc3pLWG1HdUhFTW9lRGhpT3NkQVdRR0pwR2t0NHVlbmZyamNSeXVlaXJiTC1RV3o4MEtZUnk1QklxbzVJc19RVHpWN2dqMGstYS0td24tazNsNTJ4YjhaNkRXd2tWZ3hqUlNXOXZnV0pVd2U5M1ZrVWtHM3NLRW5SOE9ueTNjWlhQVl9LbWtBTEdlR0ZzQm53SmQwY3dueTBCN2I5VWQyQ19kWEZ0N1BvbnFVNldfT016cC1Nb1NtRzRHbEFpUkVfQ3FrWlhkalhIMVItSmpObUNfdXlPUTdaN1BVaDAtNmd2YUxpcE1CamlWR1FwdzlEZDhmVmtCbWk4VW5uOUxPYXJmSXVtcEJyUE43TTJhM05KdjN6b0NkanhZVFVUMTN1aElpYWl3aExoUFZhT2pUbFRmTkpqbHhIbG5lbGJ1RWJsZTk0bVV1bW8wcjhKRlFMSDdfRjhXMVo0OC1BcjhYYXJwMXhIY0FReHk1WWYwclktdUU1dTAyRnRHUHlPZ0JfNV9WdFlNR2VfRE1mdENLOGVMZGFnVllMRDJDNDUxTldZeVVfeHdNUWdQbXBaMWFnSEdCb2s0ejhsSFBndVhCQ3R2WFFuTHBXQTVBamdOLWNoWjNwUGJmc2RkNjBhekJuWDVaVXQza2hYaWNDdWk4b0xidEtzQUdmckNOZzFwT2Q0MHBHMEJlVy1lNVE1WWQydjY4eFh5a2RiTXhFblFCM3Fzd1djVlh1QXBIR18wREZVVmZvSlc2aVBZcDNWVE51amM5M3QtMDcxWnlZbUZ4V0RfVThMYTAtM19RLV8yZ0pwMVBaVV8tMVBRM1huLXdSWk1vb3JkZGZQa1VPZ0lqdWkwa1IwZWt5RjZvdWdLNnJrSVZHaGp3YUp0ekdKczJLdGxncnRCcEs2MXZEaE5zbFR5VHU5OUp2T2RFTXhwRG5lTEg4NnlvVnhxT3lIT3lxNjByXzdpTHgtdy03Q3FzWTloT3dmQlBZZ3BQVlM2bm9oZVBocTkwaGJTX0lrM21YbnRkRUNMREtSMi1wWFh6bjlPRjZIN09EdHB4S0VXQkdCaHJ0Ykxmd2JZS3dmWmZSVTJVUHpkLUxFd1lQdDloU203Z3lSODNoYkZiSFNBV1cySncxRWl1c3FURWRsRW1lQ3k2cFp1MVFZWko0TUQ0OG5rVXMwdmVHUVhTU2Ytb2RhQm1fYjZZdVh1cWcyWk03MlZjUTd4ZzV4MmpFenFqcllmdjdTTGJINFZBcWp0aFg5LUdRaWEwWEZaS18xempIenhkd1B0R2lSOHJfMkFFZTgtRXFoNi1FaTZKdjRFZjYyMnRrNWFJUWx3R1pETWpGSVNuUkpRdV8xcnJiY1E3enZsbWhUSWFQcUJNRFVxeHBEOXNWUlhuSHdIaTl1b1BCUTllbWJIMkV5WDV6MEhWRXlDa1JEbUd3cmR2RGdsOFVzMUhURjVwYXlYZmF2WkZUZjl3WFZyQXpsRFBEQkFJVFMzWnVJMEJWR2pJUGV1SnRiako4S1pTczRFQVNRRTVyVjViTUpNQXcwa19nYkVRTEZGSjJVb0ZzcWU1QUszM2xGXzR5cGMxU0JaWjJfUzYtbEQyNkpyRFVJSjFFRmJhbWtoUk12bWJIT1Utc0hDT0lRcHdadlJzV3Q3NExSQ1ZyQ09jMGpUdE5TT1JPUW5XRHVXRlFXSzk1TkRGMG96WjIyLVFEMU9YOE9iU3daaHdOXzNfS1pHRmtVMEhNdzNjSTI5LWUxbFltRDV3cmJ0ZlRFbllOeHJKOGpuUWFBY2FoNy14Q0JKeUQ3elo1MXIzRVVyY2VnazBzc1dLeHRPVjRLcTZENmxuVmU3bFpUT1dfTU5aZi1JSzJUbnZCaVZIMHk0SkVGaUxzSDJHbTM1d28yYlZVaXJsT1ljVEk1NlZhdDhMRWhGaEotVlUyNk84NHo2dUJFZmJucEZLbmdKc3pfYVlucW1zNWV1bmd3ek5ndjdlT0U0cUdKSURyMTRBUXRWdEYxcWdrZHNnVllWVXg4U29SQ0NobE5VUzRNRGxhc1hwS1VmV19ENWIxbDRkbXZiNEZNRHJqakJ6djk5dGJSeGZFYUVOSFlYTHZFZnJ0b0pMeW9na2tmNkxlbVoxVDZRbnRtNlR4S1IycU81WU1vMnRJZHlQNmZNRmkweEYtdE1IaHNSdVN3VEpybW1nREcteHVpZllVNkpfaElSNkMzVmo2VkFMMW1oZy0xeW1pRXZuanVLbElONzc4NmFWdVNpNmx5TjJJNzZqY0R6SHZ0VW1ibkVvWWtORHNPQXdqQk9MNFBlS0VjR1hWcm5YNDJhNW5IRWM2cmZQdjZ0Q2tVSUI0UldIdzEyUTFiNDM2N1JvRS1PTWN3TnV6ampob1M0S1ZJbHo4UEFMOW9YYTR4NXlQeG1aVzZ0UUVna1pKeFhEcS00SWRtd1UzTnpVZUoxdGpNaXFsc0xRWDdlc29fTHRtTWJ3bm83YkI3bjRlVnZ4aUtQU3p3dW94c25aaGs1b3ZSSE1xU0NtZjU2MjJvUTZvWEdmNUJLWExlQWdqaE1Sd21razEtUzlGajlyc1hlT19VYjJOMF9hVEFLemlidXIxNVcxaHI3Wk1PVFlxOFlSSGVPaWxSX3Bkdjl5NTlDRDQ1WmE0ZXFURHVrNmRxZ1d4YnoyVVVtMnpwM3pvTHVKSVZ1Y3FIaUVRTVNfMnFKcy1xQTAwT2FFY3huZTM2Q1RsZVNwZjF5cjh2VjNWNW1mQU5zRnJBa21CMnBRWTNfZ21UbldTYTJ3UWlMa2RFRllPSExTeEk5UVowNHo4ZFRfbW5QMmIwWV96N3ZLa0VGQmFpNU02UFdPWjVIOUx1M3Rnay1fR0g0ODd6ZHpuQm0weWZZY3ZIOHJUd1QyQl9UZVRFMG4xcWFRdDRiQ0diUkFQNE1DTDl0SGlIcmlzWEllejQzZlZ3b1c4R2x4YmxKanlLWkpXbmlRNjlBYks3SmYyUER6d2NVSHhkZU5HNGxEZmt6WmFxU2lybGRzZlhXOHBGLWZ6WFVVWHR4eDF4Um5nQ1hJVkxLbU5ZbV9CNnNrNGo0VzROVFMwQTBOcFhsZGJCWjZWWmFDMDNvRHVGUFY0MGtwdWQ0WEd3Q1l3M244ZjFHb0Z6Sk42QjFqOTRLeTdtNE5YT1JsQ3ZaRW5qZTl6T241T1d1ZG9USWRoRzBobXVDUTZ6TXI2YkVaTUFoV1ZFdlREY19iXzZsOWdLWmVxNmVtekxvcmptOEQzLXcyLXRBYlE2Tmpjd0J3eEhMZzlCRllRRFdvaU9UVmJKN2VBcUVFMHVxVkhBcE9KbFVIc2tmQy1uV3NzOV9fRTFURHBLcjRfRE93NFhPUGNzT3dlVU9EUWg3cVFXRE1ZcDVHU1poVWE4MVVHczhmemZKU3JPbmtaTmRVTS10Y0h3R01mX3didy11dmt4UFUtV0tvNUNqR2M2aU5KMDB4MjZZdUpCWXd6TVFyeDBJQWgxMjVBWlozX2FvaFFpLWw3a1pZVE82Q0JVOVZsYllNMndrZXp4ZGhrQ1oxd080Z1NNbDlKU3A5ejhxNV84SU1WM1pma00xV1VqSGZMQk4xRXdFMjRxZFVzcWxyU3NZN1hQaVlpcXQ5ZktXVmZDTWw4RU0yd2ZHYlhxMUI4eWl2UlpMcko0eEk2MUdVUWJFVGU4akNTYTF2aUxxZ0FIa25IYjVjVHIwbDRhTW1EZGZKWnJxZEdpb1lPb2IwdHBuc3IxanRfZm1obGhJa1NSQnREUk5XWEU1OXBjVXlULXpyVjBxZl9sOHN2TlNEV2N3d09YQ3lITWZzLWw0T29xMldVWTVLQi1nSG1HYUJod0oxa19ra3V2S0hlMl9TY0loc3JjTXV1eW5aLW14Vzl5NHBBS3pvdVFsQjR0ZGZvbHdSRk5KX0tHYWJPZXJiWFdDT0ZTd0JVTjdNaG0wOXNyVS1VWG5od1IwdTYyTjVvMDlfbGN5eThnWDg1ZUVrenhuOGZ2NHd2T0Y2dUd1cFk5UGxpSTRLMTNqSHlOd0ZuY2VmRlp2b0dxVlhkcUg5RGJkYS0zY1FhbVFlNmlMek0wRDlnLXlFc2NBTkpKS3ltelVzemZZdV8yY0p0TEhsd0I3NVhLeW1EMG9nUkRvRkRwTmNPd1dRRUlwdVJwU0pfdWtzR2EwZkd3MGVBTU4tQmc1OUs3emhRWHJISUZOckN1S1VPMVdvTkV5WkM2UGlKSUwtUlRsTFQ2WlBNZmdSZzZiUl9aQk43X2dseHBIakNDaFZXMkZ3MnJFUDJJX1pSeHFqdS1WbmVwV2o4eU1CaHZXZzdXNm9QWm1odmVtUTBkQUljNVZTbVVaelhvNFVURmJxSFN2MGlyVTNscVk2eUl1MGRPd2t2MlF4ZENfQVdRUmdLSGRUeG1xYXFUSXJwclZyUHZ1MDFQSGlFbVRnaDZZVEZ6Yllqb3JEeFExWDhlTUN5Rl80cWNjMnhOdTJRblBIdUR0RGZkSy1NV2xJUDhHUEhSMmhPMjlCa0JJSEM4TlgxZmxDN1ZSZkZsQ09McGVIeWl0MGRSd1d2S2tieGNIWl9fRE5ZLVBNQlZMZGpyR3lxT2JoQnpQZHZMeFpXWVU3THNRbnM1dmxiMTc5YXczX3VmclRIWGs0MVpjaDY2ekFRRl9tekQ3ZEVuMm1fb2tBaTh6NTRwdzdxUDAwNHkzenNPd0RmR0htYWF2c3dGMW5NMUN2YXhXajRINE45dVNUaV9DM1oza3lTRHlUNGdUZjNqc0FKUEJybXdSQVBpaU5PTTU3c0x2Y3dJRk9ENnA5QkdWbjFwbjQyZGRTU3A1M3JieTZEcnlwcHdDaDFrampQX3lCbTZRZnd6MElGUWJiSG1zVDNVa2RMb1dURjFSMF9sbjJtR1kxU0hHT2o3VHl1YnQ5d2xLVW5nczVMTWhVcHo3NU1LR3F6UkFnWXNKcHVKUVl1RVpKeGFPSHNmY2VwakdrcFdoMEtfWkhZUEJESzIwOFVqb3FqMDdlVVVueTBaXzJrNXUxTjQzWGJ3V0ZvWVBhdndheW1MYkhWdkRwbzdwMU9JT1IyNkt0SzdPeGlnZ0ZybGVISWNaODFwQzRCdlNzRnZsY1BCZEpHLTZxWTU0Q3J0R2xhaDRvQWplUXgxWS1YU0NLNnZLYUIwWnZHc2lIajhRQ0ZURjRuLUJqTWIzWDcycDJ5Q0tPRlpMRk5qcVR1aHJoYXNnMi1pWTNOTWdwVEQ5eVBSdjA2X1VpcEVfYjVsQ0R0Mmx5QU5NYVpZR1RvSmJTSVhBcFlyU1hEM1dFWllhTGUzQmFSUEJUYTAyeWpyVFZPRDRGNHRFR3c5MkZJZThOSk5NYXRXMFhPSFAwVWxKTXlQUDF2MVdvOUh5aFllaDFfdWg3SlRLcS1hWnJjOS1Xd0ItQXBKTHBQeGxmRzlGZkgwdjNwSTl0Z1VndWJmSkJQVjMwNll2MlNqQ0M2MmVYN3VFTUgzcXQ3TmFYcFVsNXZEVHpfMF9Vc3VlWERQcDNqV01XQTMwenFaYTRFT0dXdElMb0tEM1RjRWNVcmJONGV1bHFQSkFNcWdWdmk2YWRGdTgxU2w5cU1rVVUwaWpqMjZhZDFaeVlEUUZtWlJ4NjJYUW9ZdG81bXJ0eFZhYWtNNndqbkVPSUdJaHhBTnJoX0dNVzVxREhzMEV6TDU4b3lOY0Q5dE1MUC03N1FCbTZwUTFsR0swMVJ6Y3FzTk14ZzRMTzl2ZHQ3NFpIdEhMXzA1TjF2TUt4TE5GbkdhZmwxN1E0eEM0Z3NQeXpYdzBjcklyV2tIQlNQX0NoWE94SmZORWdyNjJOMXEzQVJZa0U1TVlCbzctM3djb3dNT09GcTlrakN1ZGpoekplRjRTUHdfMnFVWVhZRTZsNXJTYjYwUFlFSkJxdW82Skh5ZmdlOXFJX0Rzdmg4eEY1STJfLWtLT2pxU3FZam02NjU0cXVES3phQ3JWLUJFLWtQNF9DOU5OQ0xTaEVWUV92Z3hYdDhzbTRWNGNRMElDRmFzaWV6VnNuV1QtYmRQTGxBT2RqOS15RmhYVTRUYVF3YnZqQ0E2UHQ0aDNVWGdnQzNqWU5IMmJtRGpYSzhFdFJYRTV6cmJsTDRKMFZ1OGxHQVBZaGtOcGNOakNrNWhSSW5jT0dybE9aUk9jdTdSeVczR2JWM2Y1MGJKN0xLNHJjMnJCMTZuemhBdk41WXlydWdwQzdCOE9OR3NTY25ha1V1alJzRzZGYVpydDNzTDJMOW5RTUNoNE9INFF3VWpKWFZKUFJ2MHhPTF9jVEQtdjk0QWgwbWdtcFJ2Q1dhUkl5MXRxeDZHTmZ1R1Nyb0tObmtHYjRiRE1oblpZMmwxQWluWHlCMG5uRGlvci1EUmo1cjhRZi1iaUR6cGhTallzZTZrakdLR0ZObzU4WjFfaGxEaGFob1pQX1lRdlBtWi1Tb2pNaGhMRXZqMXEyZzZWRVd6a1FDWTdIWVEwM1Y3cHVCVm4yaXM1NXpBSGV4cGpERWoxWDgxWU92bnVTdXRhMGx3VkFEMkRoNjZDcmM2VVh2SEtUZTBCeFlsQWdVdkhQc1BkSy1OdVk4S3RaeGNqTWNDVWM0OVl6VW43RVBTamFNaHJ2Ni1mM0pwc09Na3JwREpLM0dPTUVRMUV4cnhYV1lGaGtLaHR2UXZkMXZCVS12b0pRcWJveU9vS1hMM29Xb0FRVnljWlR3Y2laeW4wbUtkVF96NDNFZGhNcDNKS3N5blJ3OVZtSzk3Q3lldGl5LV9HaWVMSngtWDladVMzOUdNa0YxaFVmYmkyc3FJZGZMZ0diem5uMTluTlRVUDlOR3dhaWhybU9Ib1lZeUJ6WE4tby1UWUxhSS01bkNuQ2FSSW9QTF9XSVhyWDZPSzdZU21IWjk4a2xJS19JNTlPSXlWSllrMVh6bGVwd1lPLXUwU0x6bTEtN0dKSE54RGVOMlZhUEk3TThVem10X0x5alliWWxocFFJQnNyUktsMmZZeExKaGt6Q3NjcWp2bVhDemRLVDNhNFV3NDJ4eDlsOWl6dFQ0UmtnV21fYV9YWWk0b0gwdjNCUXRSZ3NfUTBPaGo2T2Y2dEtyZU5XZmcxVDRjMk01SERJd3UxTkl2QXBqNzZtOXJWQkdPWTZFUnhfa2Y3d2twb1g5dWRvcjBCbEx4a1FCc0lwZXpUdzc1MTBncU81Nm1UWXlBUzFCUVdOY1Q2aWhfN3F4ZTVoUkVlZVB5YUpFMnhqR2JNWGg3V1hGYjN0ejVWVWJOTFpxMjBiM3E0UFdkdjJXX1Foc2VUY0JTRDY1eVFPYndTai1UcVpNNi1teUZHb3B6dVdfRWcxU3pzNzRaY3RMSUxyN3pMLXRyeC1WTTVfVHllMVZXbG9ZOTZVYUJyUktpQWU1SVhKMlBQd2RIY1p4SWx4N3dBRXdueXVOZXA2b2NKcXRwZUJ1elB0LTFaX3UyWjZrQmR4V0lpYlVEaGxOU3AxM1NkTGw0Z2hkemVqZWFaYVllRDVtTGltWWJ4dEhsQ1ZiTm0yNU1ZbDYxMFU3QlZnNVJJSXB6VUdmZ2Z5NnpJRzRLQjBMR3BISzNhdHRRUExvQ1VlTDRYNVdBUUFsb3BRa0RKOU5lTHFGdHN4cWpZaGJnZ1Z5am9ScjNPOVhzYzlJVEtVaXJaUDlyTVl0eFduT0tUck9YYVk2WVR2Wi05QUhpT3ZfdTRhOElTS01DVng3OUlnXzdqTjFfREhjdGd5cEEzVnpkbjNKdlJJQTlfbHZDV2dTSS1NUjlPQ19xekhIUmU5dENqWklDVzhwRURSYVhZOHc4UUQ0bXJicmFLTTNsWmtTNUF2NVp2WjFRTDJlZkExbXlJdmN2czhmekxRUFM0Nm0xX3ZPVzcxN05ydDQzeUcwbUZxZnk4aExaZEUzQ2RkMzRtVVFXWVdqSkdvQXZ0VHBXRmpwWkwwOERjQUd0RzVzdkU0Mi1WWjRqSVVYQ2JsemZaczl3N2VsNThvRkJLUng5dUJLby1PWmYxTVloVEZrSlU1V3YtUEVreXRPSVpfU09nZVM2RTVMTUZsOVpZenZ0QkJuWWF0bDY4NGpEdWx0STh4LXpmSHdwUEFwNk9CQVpxalk3S3JoSVJuVGRoc2Y1VUpCcmtvU1JGUFlaaXE4RjJLWHA2Nm1PbDMyRm5RTVprMUlDVkxiYVpnUFlWNnl5UXpZdEdhbjhOc3BFTG10RWkwMVlTZE1ySUxkUF9TVTZwXzJ1NU1oY0RPMDF0Y2hwMHp6eUVfTVp4YWJodXpMWUVIeXJvYl83cjFKdWNjZUQ4SlM5T3JBdEk1YXdsbEhGSFRRWExOWGJuTHdTQ2JrdHNiTGFoa05ya0ZXR1RDNFRzUlBfYTlHMVhFTE5DRkhaMVhvS3NsQTdMMzFGaWpyNFpEYjRQeW5hT1BrSlhCcEx6MGNLN2FmeFVxNWlySHhZNEQyVkdNT3gwUmc5UEJJeE1vdzN6TmVGZ3Y5dzRTdkJ5VUpQdjNGV3huX004M3g5dldiWFh3bU9LbHlLNVpWQi11LWxKVno5Rm81YWRfVEtwUkxqSGdNWURKNU9Ka2dhaEFQMmhOaG9lb0FicnBPNzVYT2tYZ3pONDdwVW1kdzhmZV9FN3ZSeUREZi1LNVZNS2UzOXRPSi0xRmxtemJVc0pET0lScHp5WVl0Y2Q4cGtPU3JQYnIzMWdJNFRIUjJHV2xwZWJCZ3VhYmppck9UTjI1Zy02MmRPWWVKNHVwNjI3MjdnbWNQWF9EYmJfSFdrTnVLaXBmdkJ1UmVNN2J1WE9LVzg2bllHSW5ZNzJZZ2lvYVpIaEJnY3pHbktuUUlkWTJ2U3NzQ3E2b1FSUGJqeHRQZ1gxT1h2bXNucmNBencwN01ULTNueWF1RDBfNG90RGJueF92dm1fM203ajBwcjBGUWZ6NWs1UEVNUG1sOFVhenFxX2xEU3djV2JOU21JbWF3OWt3U2NXN2xrOUViNTRLRTRhaWt2bVRxXzRuN3lkSDNQblI3bC1RMXE2X2k5VWdHUVFfSmk5UDZQbmszQzd6TTVYbDBpYllEVXVUV2FUdlRrX2ZjaXo0VUJXWkV1T0lLU2xZaHVBVzFQUTJPU3NiUWxPbDU4U3ZvTEYtS2w3TmNkRXRBODJVWjdkLVFCN2xKNWFCcnd0Vmx6TDFxX2Y1UGd6a2NtcW1pLVViM2tUQ0xlNjJYbzN1MmFvSnNTQ0c4bXhwZkJ6dVFVVkk3WXdTa2ktWUtNUnlJSGhuOG9xRDNQS0xMbHk2LVZkZy1VREE1RWhhLXA0TnZYb2lLb3ptRHdBZFFpeG1IcnJTdUEwWmh0eE14N0FSc0pqc285blZKR1BOSzhCeTMtbXQycnNOOHlMdHpyRXdkUzBtLW1sRHRKak9CWHJ1NmhWOFBPeV9vSWVzYmJtWkcxSk96Tkl5YmhPOWdNakpsNTBSQXVmcW1sSXJpOEVXQk9vdzdVT1RKQjgtTkR6VzVXdWNiS0VLOGotdWtSYXhhQklPcTJBTnI1Tl9hTEF2RFpmalp1cDl1RGNTc2FUOTNWR0dmQlhHX1BYRlhGWnNtd2NnamxsQWN3bkhCS2V6QWd3SnprRXpFaEdEOFhQMVh0dXJPZHh2YTRyd2ZtVG1yM1pHVWFmY0tTUm5malpnVERSVThVRFd4ZjRwMjB1T1h5RzBBUzlJLUF6WGN0Nm5EOFVQUlB1WDQ3UG1fN05mdWFVTkt4SEZ2RFdOdWYwcVE1OFlvZmhydjJlRDlzUFJFWV9CWjhXWm9IYy0tbVZ5MmM0aDdvTTUzQlFKbTQzRzNkaXotclRwWE0xUDExakc4em5XU3RBQkJxbW40LXdKVVl1UGpDV0VtY29qdGtRZEZmcjQzRUNqTzE1SDJaZGN6MkphZmpUcmxPdWlQOG96ZjEwa2RTYjBURTFVOXI1dHRIU0ZzOUxPVlZHVjJnQUxjUGtMU3R0clgwMXZHMWZLS1ZTRVI2TzlZM0pZYW02X0FwU2xONnlRbmlqM3NJTzdKc2xYdHhaMzY2bXI2Vnl6WmphajVVODlJSjdJUlY3eXBkOWtuZy1RRlZMT0FhRGU1eENvZG1jRjY4ZGp4LTZBVWpQWnBHOFYxVG04OXh5c3BTaU40M0lmLURacTlaMXFjSXNDOUJ4XzlxTHE2S3kwNTIydnBKWkw4NEdCZElXM0FuUUdKbFY2dkRXbThpcF9LMjg2NG8zcEg4UTdFWnpqc05KZ3p6RFU2SkU2Y2psTVdhMDR5dkVMa2dnUm9feVM1MWUzam1BNUFFdWpXLUJ6TXlzTjVkeUpiZC1HcnN4VFltck1wMWI0dFNhMXV1ZHBSdWl2cUFLdV9qbTBvYTA4UHZqRjJyNjRXYXZQZHVxcUs2VGUtMDc1RkFQNHFEZE5ocmpJSHpneWEtUWowY2NCRWtZbUo3di1mUWxneUxzaF80bHJZQmVyWnNCMDM1Z2Z2b19CakQ0Q1VWVWFTRkRya2U2OE41N1prblU0UkZXN1NNQXViaE93WjlCd1pmT0tuajV3bDhfemRFTDVLVDBQUm5IejRjQk01OTZGNXhleDFORzNqME80Y3JDbzVod0xMMUVwMnVweVlULXpfTkdkT1MwMG50bGt0dnNKMGFZSURuQy1SSDRYcUdBUXlpY3hJVzNnTXh3LUNvYlIyUGdPa1dLTVBJN2xFelNLN0VKcjZkZENmblhHRF9scE9HSXgtUTROdjFOU3E4VGw1dkRtdmdOXzZCOEhHbmV5bXdpQUlJZ3NpWWhfUmR0NnBrdWJLVF92aFkwMTI1WWZkck9NaW9keTFLbEpNR3NJNGxqX1dJYVRHQjdoY1dtY0stMy1NNWlZVnJUSktaR2RZbUFobXI3bkZVT28zWFFCZkVVZFpKb2Itc1R6eDdNYWttd2JEcHdQdHB5OXFQem03akI0ZC1yYmlncDI3azRTYlVFOXNFWTZVeVVJVk80Y2l5R3ltZThpOEdLY2dSWXJ3YTZmVlItTnNvcm16dmd5eGZVcDFGWDZuR0xNbE5VMDNEblBVU0JLT1RWTzVnM2JuNG1DNWI3anBVQnUwQTk5R2ZkTEJGaXg4dURwR2NsQm51TFhncjcyRFdCRmFKeldkZXNZbTlaLWk0WDBaUTh4cVZwdGpXTnI5Sm5sVDlLeDVKZXdRSHZkeXRRdHRaTXc3TS01Unc5UHJreklWd1JPZE5PVkxwRWl5RmVqM3YyZmJGRFVoRmg2ME00NWRMQ0hqU0k5eC15dDZ6LUVtQlBpdGtkcWpUT3hLam1qVV9WNzIta09tVndhZkY3MzdTcVRKa0lpWlVic002bEJoQ3Rxd2cwNi1DelR4U1pMYVgzOF95dE51aUY1S0JfcXVwcU54SGJ4TTVZN0l5SnJUcGR4MG9qNFZzWDlxWkFjTGxCZnRNaTFUSTVLMkJRSERSNW5FY2UwT2J1SWpjdlNrcjNYMmZwUWQ1cHlLdnBXcXpNbnNuQ3NsVnYyWUY5ZDZHVWFKeHlfQ2MzRVJqOXZIMnRJb2hBckh6VzJlN1lNUTRyQnducnowOXc0aWNnNG11TDdVSnVsVnJLcjdJS3FDYjJyWFViTDBIRUVrTUd3T0pISEVnVWxlYzRGajRNQl9ZNnh4SFJuekVKMVVBRXVTeDJaZG9Bd1JsSjMwRHZYTWMxcFo0NWktYXE5eV9oOFJxaUZSUlQwSktjYzFpeFA1Y1JWRmVpbFhKWXN0cDV6X1pKZ1FrSTdCQlBaR0M2bkZ5RC11LWh4MzhQN0IzQjdUUzdoWVlXdm9ETFpGSkI0a1ZGRUhvNlRKdWNDVlpJaEFMdHlfN3dreFFxdU1mMFNOREQtV0FPWUJkY3JpZzZmYnNKSVhvc2lMSWNDM3hOOGw2X1dzNk1UMXdXODZkcWRUWkJnN1Z6YUlnREJ2RDRNakRLdjk2M0k2c3ZmeG5FWWNEQ3dDalo5M2JwUGRJd0htZEY1ZE0xTGZVLTExMktBN3dCQTJWYjU2cFdBMWk2QXo3Z1N6RXhQRkZvVkNBdFlJUnBFcHh5SVBaQUVHV05zeDNpNEk2Z2lyZi1hUmFWejFXUURCemd3ZDd3TlpqV2xrRVlyRFBBZTFPVnl0bU9HQWlGZmZiQWVPaVF0V1lzMHYzVGFTOGcydk9peXRvakE4ZzM2dDQwQTB6T3pKYnlzUUM0Z0hjODJuVDdQUDJBTFdPU0RLTmxSX2M0eHFWTkxjdlhxZHFBNmpVRlBUY1FONzk4U1FRbGprcmd1bzhEcGxTZTBnODl1VHUwV0ttcFltSFA0WEtmeXRGRWlBR1FDSmIwZUl6NVZsTlAyVnFiRGRMcW1JSzhuNVlNSUtDY2ItY0FUdGFoRXU4QkxQcVE2VC1aa2t4MF93M2RmZjhVX3ZCZUFwS090SERMWUVqcTBnVktxUHhaUWczY3RJS2oxdXJPeTIybnJ5aTlnZWZVc2QzZUYyMnBCQkx2YWVWSk96QUZndk5YdnRiTXFsUW1CXzQxNG1tVGVtaGFlNktjOW9KRF9sLUxKWDZPU1FISlo4MHQ4Ql9VZkdacFZES1NubmFmMmY4UHYyMy1EUmlGNlNyQ0ZKN0d4TEhUNXJSNzU2MW1YUlV5Qy1leWtocVI1ZFZSZDZhOVQwSGY0TlZSbjJiaVdxeWhPR2VUa0hKazE0YllOUFdYTm5XSHl1VTdyNEZoOVVsb2lES2xIQjQ0VjlmYS1YMzE0c2VHZHRqUFNLdWhFRHBMeV90VU95aWU3aThJaGNIaE1XOHlFNi1Oa0lZSnF4cU5EbjAwdUkzSEhEUWtGYzFQV0RYdlVIcnBJUFRJcFFBQ3c1dkNWT2JpUmFoQVBJM2tFRFh4ZkY1S2VLMXRuS1hsZWRxQmRIc3lCUkZuNnp6T1p1UHdOWktKNHlYVDhoS2wyamQtNTlqdWpibDBmNF9WdVJFdmVQOW9FWWtTOHU3UmlBVEVHa1lPVkg3MkZXTzBzLVNJWGVRRkQzX3VvWjdrM0xjSm9GVjlXMDZrQUVWY1dURVZGRUlwamtNMy1FYnJSUVdMcy1heWVYQkNFSUxsQ2t0di1LblA2N0pyZFV0bTI2cnFlVXZ5MzdTMTBCTE53YjRiNHBvREhMS2FveGFuZy1iRjZUb29PR01UU01MWXUzaUlLc0R3Wm9kZG1WR0xyQ3FxNWJJR1BFZTNoMnc1RjFNZ1hyVEU2TmFubXpKckh5eHVPc0VyaGctaEpGeGVCcWE4WjZZWFduTXIxNDhLanNoYVAyeVpFSWV6OG81UEc3cWRWaHFRenhYT1c3eEQwSTUycjBvbkhxM1hzcV9SOGhFby1UYVdPbmY1NW1YYTNWMk81LV9XanZxZThWdzdwTUF5dG95dmh2NTVTVk9xcVdkNXNIdGhITzd0OWlMdDNFYVMxX0ZnaU8zVmVENmlvUVBNNjZsWmhaYkpZZHo4b1RFeU9SR09KbkpjSVpqVm1YSlJIbXF2eXZsUlpjdkVMM19KR1hEOEZGNHlBVE0zaGhlNDN6VEJVdk9oYlRjckhNQTRLZjhWczR4cU02QWFsczVBZzRUbVZSSnVLLUVRWFZCaFE0TEpBbEgxVXZzN3lKYTdLM2hsQlZEMWo5WXRWS2htMVhPNFJySTNrZmVxYmxoMTRHQ1NEdnI2OExyTk53SUZsY1JEY1pKalBOQi1GWGhUd25PbW50ZVItOFY0UTJVa19tczdTTm9ZUElWRnJqY1R6X1ZkQ3dYRTFmMjNocHpqQ2tnWGlsSUlNNEpNMkZmcDNTZTY2c1JHc1RXXzBBbF81R3Fqd3ZfZFBYWDA0RHJNMFI5dGljTHhLczBnM3hkSXF1M0huamxBRFU3S0c1Yl9NUmxUdWJCQ3pEamtJQWRRUEFwcUhaWktnODYyLWloMDE4bERfbFViWEwyMGhFNFBNbTE0eEg3R0dPQ3FWa1o3RVU4ekd5Yl9xWHV4RF9LZHFLSVR5eUc2WC00MHhOeTJ1cWpDMmlvVVpiM25Tam5kZWFiX19kbC1jMDBLWkU4RnhTRnRMN0RreWxpTWM2Yy1VQXBhUlZKQy1aa2NBaXlPZ2NBOVZQa0x5a2xlcGRNYXY1Y1J2a3FvTHhmS3RMU2FhS0taWEdveFd5OWp2am5KZHZfMmZDTXlUeFdOUWl6MzI5NG9mNkNNY09sTmc5VW5iaUlHb1JVX20tMHQzamNRWHBrZ0pDWlMwcmQyZ3RGVExYdUVlYU9ZTnJjZ2dPWkVQMkstc19kNUlCU2JqNXE1QS1HYU9hbzFuRmdFOEFlMDdEVXVzeTBYeVEzd0cxb3JIOXUtSUxpSHpyd01Ickx5ZWkwYmpYSm9HcVBuSWd5d29nWjdZRmF6a1ZSTGE4OTBZQjlXR2p2SEdqZ19yYmVabWRDWkFoalNiTlRveFN3bGkxMnh0bl93WkNWVkhlNzUtSGNkTHZHaGgyekwwVjlROG84NFI1NUFKVV9fNjI2REMxT2w0cXVLcEt1Z1EwMHowZElPbzMwcG5IT3hqa2xlcGRMM0dyN3dHNXZsSUJKbXVWMlBReC1Hc0JmX3lYbUhxOXBZZ2RJeXl3ZjNqSjlDcmROYXM1RGNseUExUS1Sa3MzdWtyU3dublN1ZE5OeTNCRlJ5ZkgtbHhWQmpYSHQxUUlQM2JLbjRvNmRPSHNLclc5XzRPVnBNREQ0UjNMRmpYNFM3MDJ5ZmdXSkk5Wld6TDFadk40X2t0Zy1iVHNYOC1zdzJfa2Y3dXVldmJmMkYzLThmM3lvNDNUZ2dQaDU2TEZjbFNidGdaNE05MDRTLWF5SGQ2NkhVbmU5T1Axc1NldGdKWXdZZVN6TTgzY2FUUXVqRVA4bFhEQWxKZGJ0MTRhZ2FValJkNlBNLVVIUGdGUmNtRTd5Y0k4YzNSdWxrVkU2Wk5qeUU4VkNnaFRoN2JMNTJNYXhUcVMzQWJKNUpHak9ESkk4ZTczV1BFZHZPZ1FPNnZvak0xNDFnSjFtaW9rTFNIbXNwVWRhSFdIdkNkc2VHeTZyZmJfYktmeGJGS3FNTEN6T3VKbjhxd3hlNUxJQms2djJCUmNzM1I4ZnI1VjBSQXB5U3J3bmRuWExFRHdVRU90YzdwSTBqajVNeGFJaWxKU1FMb00ydXpiWXZaVE1INklXSndEdU1hNW04MlFCRnV3TWFZRDd6WmNwM0RGb2dFc0N5YnFjZFd5SFBhV3NxQk5GSDRuYXdwRnMwQ2xZMWMwbGZQR1RnTWZJeTRxRnV5U012cHNkYWZORUdBdVFpYU5zRzROSnNJV2NYbFNFQ1FsLVhRaHF2YkpUWE03NldPVTVld0RneGRGeG5WREVhdFRlQWZZaUVEN1ZBelFNUXNFenU4VUx4VmI3RWJzX3RsUW5hU2hVX3E3RjNUVEV3VUpPdDNCeFdPcWFCbmhNdUdOdU5CNXJabFd3YVhrUTFNdGxwOEFmWTBXSF9kX2F3VXdQbUpCQXFEX0xKRncybWVBS25OZl85NlZiUW5iU2J1ME5uejlvTnVXVmNMcWZIeDIzX1JfVVE5enZibTlkaGlSaUxSMnVDUzN2d21XS1UzVG9vbks2c1NpeWNmYnh2QjE1TnFnN2l4UUV6M2U2emVkX3pQYy1GdF91ckRrR1dOTFJ1d2Zyb001REQ5XzQ0UFVvLU1SQ2NiVGp1emxqQmVjOXRUc1NRdnZWVnp3WHdNY004Zl8yWEJxcU5OVl91b3V6dVRPWkFfbkNVTDV0T1dFSXZIZmlDRWxJV3lrS0U1TUFUUVlUY3FRd0VwNUlBeDFDOXdudnZtVk5NcmFFNHpDSDJuZllsUGNIYWpMUGlXcHpUdUR4anJGeFhIbVBUc1JTM0Q1YU1yTmM5emwyZkR6ckJsbzV0Y1pPT0ladlR4X0ExeFA3RlFnNjMtbUZzTGlRZG16NzM1bWVjUEFmdkROMnV4dWp3YXFITGx5NGlLelljVVRjbHFhYV92X25VM09ESUxkcWt1S1pCZFZzZGwwX19YeDdkSlFHNG5nN3kxU0d1V2Z1NEdRRnV3azE5b1hJM0ptU0c2WVZHSW5wSUlNYjcwSy1BREliMlZBWjlVaUloMW1HNmpUZWRHWHJtMzF5b3Jnak1PUlRERU1rYnZCeTFaazVrR0E0V05aSmRKRnlSQUtXT3VNbVZOVXRWcTFWRHpkTkpNdGhaWUZHQUU5MEtBZVlaZDdmaFRSZlY3ZlFYdzhWOENmM3IxdmdMTXJyZ2JSOGwzeUsybFBLMnhMcFl0cVpRanFaREpvSjlwUHBlcHEwRF9Dc1JEcVlDVi0zNE5GbldXWklZQmtmZTRPSGFFZTRlXzNQOGxNVTFKUWlJY1dXWmJ1ZUJXSnlpNDQ1b24wRm0zVzdlYTRnUUJCN2c1MzU4MUJBZW9ZQVRUYnFFV0J0LWU4OS1YMDd1Nk1vSDVKUU80OV9kSW0wNU11VVlrV3ZQODFHNDMySDFPYmgxRUJBNG1WdHYtM2ZqeGVDRldiZHVzTWxxa3RYbXVodjBEVWdmWGh4OEoxS2JaMUdjN3cyT1E4S29KZXNGM2QyTzIycjFkdHRIamdmbHBUZlVXOGFaN2hPZ2otSy0wRHg5dXV3ZmNVVWMwUnd6bkNMbVdqd0lnZ2NfQWZJbVRpd1ljZWgzQzlpVnpLdkcyV3BfZHpCMjgzM3YycGI3SlRKbmFYT3VSSlhiM1JQS0pONGcyVXV1NnNYc1JBd2FlTnVtVVVpM1B5b0pCY3dhZFRsbVVrQ2JNcjJMQzBzYmZkbjNMOHk0bTd1UGg3VTJ1RE5EaGk1LTZaWUNYZE5SRVNzajVrR0QxNzJoUHRSVEV6RzhUeEN6Nlp4dE5MQ004a3pHVWtjS2FLeVctZFdaaFVWRENsZVdnQ3F0NWdvNUI1OEVaV2RJbi1SRTRxREZ5RlBDNDg3bk9nMUVyVmZBN0NHWldha1F2QXN5ZUhKb3dkc0RrdzZIV0x0Y2ZwQTJENHEyZ1Z2aDdraHVNMmwxSE5DdWxNOWJSXzZZYlhuTGlCMzIzN3Zjc1d2bHpBVmJCd0J3WHRQT3RGWEEwc0V3c3Qtb2N5V3Z4WFNsT19kdlhRNUdHa2pLcjhFX1hzM0dvZmlqaHpsZF91OWFROGNTek1XbE5xRGNPWncxdncxNUtaeFNXR1QzcDJ4S1VHLWtSZW1Jc1h6VW91TFdma2RCbk41Vk1tUTdJTXA1RkFfcmdHWnFwVHByaHJMSlVaeTNZN3I4bG1McW15Z055a2FMNWkyVEpIT3RWVHB2eHVzck1LMnUtSzdpbUJVMHlkQndFaHNOS1RWMXlGZng4Q2JZazJTeUo2QVlWeWZLM1FhVEdqb2FFMGxocGNPRUIycmpfUDhFWHAydlJ3TWZsYjBtc2daYTFCOE93d1BXRUJMdlROVjVzUEYycFpUaFlnM2xWVzFjSlZlTlBLRTJfYU1zS0p3UGVIY19YTTNrdDBXVkpMbTBnZzE2ek5EMjlsaUlfNTBjOW1VN2NpVG1hNEd5ZzJtSkUzVkg3VWxUanVkRldmNTZpSEZHNlJpU0FqVUFtMmtBTkNGMjFyb3ljVUhFTGo1aVlQZF90S09vcmJvRDlWRGcweDRDc3BQMmRKZWVzMVR6aVMwNU5qU096cnd4dG5qMTBBZ3kyd3B5XzUtbVl6dVJvYTUtNXVPSFhDRkFNSW5QQ2doakFudHVYUGw5REJRb1ZSMWYwUS1NdnJWQU1Qc3pfaXMxc2xZaTlFT3NDUWp1R2hsNGlxYmVNWWRhbFVZZllGYnd5dktaTGNlZndjaVdpY3EycWhpM2FxaWQ5WkVwVGRyR0FvRjItdmd5cWVsSjlRb2NfSG8xRldZdjFrVUR3RTBmQ2ZlV1FteHBFMTQyYmlZNVNnV01CaE9tVTBKWkt1c0hCV3B1ZWJ1TDVlc2RHVEJwRWtpcEpHWmtQSlB0YzBvTlJSVU90TVdZTTYxbXZaXzRTTFpqOW9kZ2U1akMwMHBzSHVYTUExTG5USDZ0R3FnSDlTd1Izd08zOTNTQnRMRU5oNy10UEVEVWc0dHpJeXAxTHQ4R2dWS09DTl8tc2RCbnlpSjJaNmYwSThEMXVPQnJYN0JGb3E2aHlkOWtMWnZiX2E1VHFUdzNKZDJCdHRzOHBWS3hhaXFtTW1WUmZPbU4xYmRJSHhlVUNCQzdXdE1LZUc0M2FNLXpYZDBfUmI4MkxJTVVVRDJadUxXb0MwUGZzUmpiYWNpOVhBOFlBVTE1WllTOVh1YV82NUZYT2xxcl9sT1RuUjd5Y0JZY2J5T2tIeGpIWVFmRGkyQmZRV0NkMElXaF9WcUxNZWozT3ZEUW5FZDZvNEU1N21FQ1lQUEJUSkFIZTNHTjU2UEl6T2xLNTRtVV9USUNpX0JKTkRXemJvdl8wSnVEWExZMmUxZnhCOXNURmc4c1hINUozYUhYY2dpYUdSaHlnMjRKZElJV3dkcXFRbmlLZWNfS1IxVTJhbEVqX2xPQTNNb3FadHk5Zzhnc2RCMjRmQlRLOWJZUnc5eW9OVWhrSl9fM2NxNlozVVFvc3VrWklreDJwVlRoTkU3THdEQ2gxbnVRYlpvUlZrN1NKc1pjWkZ1TTd1SUJRWUNVMGRIQzFRS2lublQxc3R5WDduM3RRLXZPWGRsSENaOEtmSERpR2tsemdKUkhVSFUwdU9JQUNuNGtUbkRzN1ZrRGtEZ2YxalBhYXVYLUR4X19Cdm5oWXIxRFp5eS01N2x3SG85c21rZDFNcGFUVGRLR0cxOVktUDh3MmcyNXJCcVlWQjhBZXRlbXQ1bEtZdE8yckhJNmZSSDZrLVhSM2I3WkVlSFA5MV9UTkc4QVZtV1djMUhaMmdYN0gySzgyUzRoUk1JcEItdkxUaFI2QmV4bTdDeXJHSFZqNHN3M0dtZWd0cG1obmJlNEZQRVo1UTZnNGhScUpmYTJvOUswZDI1aktwaURBTFllRVY3Y1VDUjhBVjRYNU5WR3hWdWppOVdYN0gwaU1mUjZHMmpIVkFZSmloSkxOSC1JSENWcVhxdng0ZWNSRmVxNGRqUjNBWjRITm5kNUJBaGlTSHRObkhlM3EzeG93cFduQVh4M0hHeFZKcUozZ0pVdDVtdGcyb29pYnJiTTVFVU1HT290QlZGT0k5eGd4RmZYT3dhYXNPNWxIbTVoQnFWZVczOHlXS1FqYU50VG16TjlITjFrRWFfS0JacHU0d3RGeGswNkdWTmFEUS1QbmZBV0FJalByQ1FjSjJMQ25kS2FBSHJyYTQ3WTI0dWJYd1hPNUZsSVh6NElaZzI3Z3NzTXpVR3kwdUtGc29LdnJrZkFLdjVWblR1WlJ6aklrZzNoZExLR2FMb3RPVmFwZkp5VnNidGh6T0JrSERUMDllcVlOYkFwbWdYWGdoVTZSb05nV3IwOURSMmZQV1FyaUVzbm9Gc21yZWc1MUUtc2JUWjJCb3FqVW1zRnlndjJZdVhpdTVXdFFUNGtKQ1NxczZZVEw0cGhoQy1sTEhubWs3Q0ZKVnNMUHpUM2ZUcVF5M2V6Sno5dUxyUWJKRXVVMGgyWHQtNGwzaENtNU1hQlVVUGU1SU0tWHZhVk5QM3FQUGN6NjEzZkt1WmwzV3NmZVVtYzl4OWhrbElxRlI4RE1aOFdpYnhJSG5CXy1vTnpvcGV3SXZkOU1RV18wQ0hJRlNWWV9lMDNfNlN4SDBiLU5DX1Y3MXZHNXpNTXpqUkc2WXB1d3hMVUQzQnV6cHNWSVR5ZTd4M1RSWFBxNE42aXF4cFlTeWpyMUUwVnk2UXhzWGc1Q0NsZEozN0p0R082b3pTY1gtdDNKOFJBbVk5Zk41WTRURUZCZkxFT3VtdkQ0WXdjd0xuVktKMnVYN3A5MWZjTTUzVVRhTVc4UTZSZ2JFaTlnZjg5SXl1OFc0WTBIQ0REbDE2dVhCSXdZR3IxX1lyRy1zOUU1dU9FbjVpVm9oY1JsX0RrZlNNenBsSUhPWkJzLVM2X0tud2lZMXZYeThhTWlqb2tFaTVOZnBMbUdZdklwdk1MUFViUzBrQXhGTWo3dktnRXR0S09pU2wxVTJleFF5d0tsYnJtUGxFamZ3YnFjRVZkbmZvTFhIYXpfNlhYTE1Qb1FobWhKUWtvVFN6UDFIb2J4UWY4Uk53VmpaeGF0enpxMGtpMjVmUXlTNTlET0wtVGtiWlFqOTByUnpCQ0hVaTZlNWFmNUN2b3p1T2NIdEJmRnJHVkw4R0JQMk1JWi1UTGsxZXcteFpBbE10UVRITEVuUE1US1Q3X0VwY2dJalNDQTVsZHFXQndZVWxJaXZWd3NzNXRlWEswQkNvWjY3OWxyTVdTOEIwUmRwbjM1djlPU1JOejh3TUFTNER4UVV3OXhOTzBrSjdCWHdUM1dOem90dVFFVDFIeWpEcDV0UHY2MVZuVlVDc3pRME1TaTcwakU2OGtnVm9TM0sxaHFxNUhyZlJoYTVEM2MzZDFBWnJzaUVsMXpMNU5OamktNnBpZENKVmxZeFNBa0gyc2VlZ3lGeUVVV2p3ejZRZzBzeWYtUGtCWVFaRGtKOGJsUWFyUjRMdVJGVmViUTZ0bnQtVThmS0M1d3kydzFXMUhiWUZOWHRzUnVkcm03WWVtUDI2eVVNRzNPUEktLS1zV3VEUW1VblIzemNaVGZkcVBkc3ZyRmtES1JESWZfN3hsbDBLVGtIbHEyRjJOTTBiYjlDb281SG5RdERpX1pJZmIxa3pZd1BHTDZMV1hsazdhcENaQ3daWVBLNWNmbHkyWU84QzRuX2w4eDJkLXdkclBMWGNMRi1xZnRtX2RzZmNrNjBrNUtGenozZEJKV0otY2l1ZWM0S010Sm1JMklxUm50MVpJRnNTOGhEcTF3b0ItLXVTX3ZfZ3lMMVRxRklNWE80b1dUZktOV0l6d1NOUVM3UGdCYXdIMHVIemZDeFJ1bmh5enRMTEdMZEtBamZxc3d6R2dDMnV0THcyOVJoZWtLWVNyaElGWFVoNFFjZF9GOUxfNXZyc3pSaXpKekRUMGVkWlhSVkZNdTFsV29zQUs2YV8wUGVZbFI5cC1XMS03eWo3dGJveGZGdzMyd3o2VlNWamJrMHlIUnpRYmtwNkp6QlIwcm1QU3VlU1QtcHNCSWVwSGI3S0dHQjA0ZmJvLXk2N3VSRkxKTHZlcTJua1o3dDFIRGozQ2taVGduUmJ0S0xYRVNkb3RFY0toQ1ZXaXNrTDZabURLVWJJTkF1MXpLMlJhZkJhNzVDNlVPX2llVnAweTBJX1JnT3hEd1Z4QzVReS0zdVZkc2trcFo5VGduUGhXQWlURF9tQlBmeWhQN2NCbFZvUUhoY1lKYWVjQ21jQmtVcTd3cmx1emdEWEduUkFveUp6MXlwZWNjWC1IUnlqOEFFYXhxSkVUeGpWTFpNODBNS0xtRjNXZWt1dVMxSDIxLTFYUFcyaDBfSkE1OTg1cm9uWnBCSUtoaXptUU44YVNndjBIbFlmVi03cTl1Vi0wLXFrNXVQWnljQkRDYnpUZnlGaEdzWGdKU0tPSm5PYkU0QWktMW14NHpJY3FSRmNiWkt1cF80clc5Z2lFX1pfYjBpTWlMTGlBUHJ5dGo5T241ckx1MnJhY2UxUHFvb2VrZzFuWWxCRllTdzA0eHBWSjNGNURCOTBDMHh0SzAyMEtEakpRU1VCZW52dUpsZ3V4WVMwWnQ1N3dKcnVXdmFpYUlIalFBTmRjMU1lSVJEZjF1Z2EwZ1NwVjZPbEltMlY2aTVDMllfcmY1eHJITmVlWjdwU3A1X3c1UTk5YlU4RkdEMHZNbXE5azc1eTdsR3NTMVlwc2stY2RZd0pSek5oa3RPeW5GOFZBNlcxSjkzVmZsa2Q0NTFnMGRJM3dGd05kY0FqWG8xdUMzWF9zdU1JOUl2ZU9jcWFqWlVNcEFCMTZzbU9waHVpQXlBcjNTbTltMTJMMVBvbzVVVDE4V1lEbFl6eXhNYkRmWmRUX0I2R2lNUnpFYVlHSENyQjJoaUhsYXlDdlpCNW9lbkVTUG1rS1c0dFNmOXhRc0R4U2U1ZnR0UGh4enJ4UWxieEM1V2dINlBibzdYdFcxdUpMUEVzVnlwdGRjS2lPSHczQ0d4dXA1NnVNdjhlRW50SGRHdVFERmVfalk5TUJYZXNsdnMtQTdBVzg0VUFvWE0xd0RYUFo0SVZjdmozSWRpbTh1WUVDU0dXMHlPcUo2MEVBYk9nM2ZERW1wbEpNVTBuc2kzREZmbWlqNkVRZ25hdk4yVUN0Z1lKVUUtUVoxU3lHTEY3OVlIRXhFVFRUZ0RheHNIYnZCX2NibWFwNC0zaGhPS041OXlQUmN1ZldZTGtrMUhpODg2c3V6VWJZa2MxTkZRWlBGekdYV28yUUFvUXlCQm5DS01YT2QyZzBPS2RaSFBYRUtVR05FM3A2blo1WVFCMUx4dXJhTVJCSUNqV2lHN1E2cC1XdXRpNHFvNnRvUjgyQlFFZUtqSC1KV2t4a0NoZ2tFaXpUSjFGcjlHRFZ0c3duOUdFcTBKZjJ0aFhKWXZUTkdTY2tTVFEwUzFIa0NlcVNLOXAyN0p3NHl4RTlocmFVdHYzaXl4MEhFZmNnTlNLVTk0WmpFa0R5UFozUXNLUUlCa0xweHJReGRsZ1hSV2ptMEpJSWQ3WmRiT3I0YUZPN2ozZlM2a3EwQk5SVzFBVnhRWXpkLThFWkV3b2w0MFNyNmFfaG5tUUo4WWZvYlFoTDBhZFBfWUNaT3dBc0g3alc4U0lKbGV1b0hLX2hPc2Fha1hkTnJPaFNoQ2VVYjNpNUQxRmxkak12SWFEajJFN1dfUDJodmVna25PNkFhOFJlZ1JRN1dvQkVpdGU4OEszeVdPOWJkdmZ1NjFJaTBIRU1RUm5LQVBILU83RVpMVWdzTmd1ak5YRW1jRmdmRmhmU1Zudko4Vjd1UnNmbE9NcEZkTmZzNU1KUDdEcEF6R3Q0aGRQaG14ZlBseDdqTXh4cnpOQ19GS0tvRDBwcWdJdWtTVnlMZzdrbXkwOE9paTk1QUNMREZsTnlQZjNtaUVUMHRfaHBmWFZrckhCZDB1Qk5Banltb2J6WmF5bW05SFhLTTFVSUFJN21WQWdUZnVUYmQ3eEY5TjlDNUJTZXVyVDJtYnNaY0JtWFNfa3hZTWtSWjFkSkdjN3FwVFBSZUxOVm10UURBVzZWdTZUWlpHNDREMHdRNllKalItNlFiVnNSR2NReGtxR09KQ2MyYm44SEdvMnZCSG50TTdEZVM0RXdLUXh0bVduVXdITTNVT0ZHaWVOVmRvZDhzcllzaE9sM2tvZlN1YUxIUkZiRGdVQlZoaHBFV3dUejF1VlhOd2VVN003N0R1dGJZYTFiRXRJY0hneXJjQUJTVW41dlh4cEhhbVY1RTJHczhEeDhYTmlBaWdYREJfbmhFZEdWWkVqSmd1TDg5VXltR0c0X3Z0cVMtN3hGYmtJaFpPMXBEVHZTMm1KM04zNUduNGI2S1FWcUEyWEY5amJwRFF0VFY0bEgwZWhiLUFyeGtGMkJjbnA0RUdNZWs0eDRXN1RfNEdtNzlFb3V0TjJzSW9iSFhXYi14bURJbUVId3ZHZkFsYkc5ZFFLZ1pDT3Rrb3EzUHJvY0hEMVFUTElpNEpQYU0zc1VFNngwcy00NXR5cEFHQ3N2MDhralVkUW5GbUVTYUhTYzJjSE5CUEFFX2ZzMGU2bm1fakRLektON095RkV5Ymd1bHZ5RTRsb2ZxWkxfcnNxWFlPN3lvT2oxX2FLVHhGa2ptallGNWhiS2FjcDhCNWstRUZUWVZYMzMzWG9OelJreDRnOFNWZW0xVUNibE1QOTJxb3BLUklPaWNJQWpmN2dkS2hhQmZTaE04UUt6bDJBVjBVU3lwMkdrUFRja0NrWEtXUXhhbl9RLWhtZ2l0V2w5ZVpOR3BpUjVSUGxqR3VRaVRYNlJENGZKcUdEQWNMSnEwYjZYZGhva24zMHd0Tmktc2J0RUN6NC1HV1ZOZVVBYThETl9haFNaMXAwT1MwMkRkbGVKOG1ZcW5vYThEbF90ZGZEV0xiNDg4WVplU3JwUmV2WlBJWm5OQ1lQUngxTDdxMVVGcWhfajVrQ1N3Q0VWTEpDUFdzaXlKSzluXzU5c3lUaW9DemxyM2tuTVZ2bDBZSnFYdXF2eW95TUZrcDdGdVdBbWtfYUR4eURaYm1mRGNLNVFnM0c2YlVwVXhPQVJyamgteWtreVpfcmxsa1hLUjVrTnJJMFFKYkw5UHBiWFNtMzZVSTFNajB4alVael9IYmx1Z3J3c2lzRUtGcGw0T0k2bUY1cUNLZVAwWmFmaW1nblhxS0d0RW9wNU9kTHNGRXNoa3BSSWh4Wk02eTVta0RZM0FrX0c5N0FuLUxzaVVWdG5IN2NYNUJPbHZIMVktREFGdzhkQTBpOFhPbkJoWnZ4aFZqdXctbWtHWjBITURVS0RMWk5uUVR1RXNnVEpDT1RQOVc5R0xtaGNfMGRSS1UwQTQ0RFVRU0l4SmxEYzNYWmdYOV9XdWxMY08tdjJib3pvLUhLcTB3blN0dmlPSU9YQ21BRW9PWDFodWROaUJmdktBc2NYTnE1bGc1YmtaN3dDR0xSQWoxUjRSelhDMnVsaUkyZ3lpMTFHZU1VanpoU0h5Ylk4NG5vWGpDODNJcGFTX1FTYl9WUFEyeWhMWExVdnp4SHJ4YldpajQ1a1VEMWJEZUkxOHhhQmd4UzJ6VlRVMF9FcW1WaU9wbjRnTWczd2oxMW5tV0JYOHVHUHlkUENhV2dtbFJTVXNxVXVGQ0dYZ3RNUFN2R09XRkl0LV82YzFWdVlzMGJDNzl3QnhwYy1MdENkRXIweVM4NWZKQTE3aktoclFINUJLQXNneUhKbzFVU21FZGMtTDRweWpkMS1obnZUYzZxRHBXQmhSREhieV9DeXBfc28ycERfYk12eFZ1YnBDX3FIT0dlaVRLSkpTcHdmMC1OdFRLSnAyUzloUXNQYnhIeUFlQy11ZThIMXA0WlcwWVVyWGpJRDVoS2pKRzQ4b1E2THBsaEJTWlNCa0xpczRqNm5nV2ozN0dLZEFNN01jNlpKVFZRdEw4RXZjWWNTSUlEN0liMHAzXzBIQzRKX21NTEtjRlZWWVp4TjlvSkVPZWJLUFVzbndwelVUX05KbjQ4VVZrMGwzeGtDaFlEVDVmMENoNl9MSmhSSzY3ckI0dXk2WTY3N2ZKN3RjRGFfWWsxZlotcmVpSlBRNHhMTnNOZ05hU0FoQ2tqZE5Nb241bmlPUFNhQUtVcWdDbkhsZzN5bDhPOXFhcVk1aXk0TzFlS1hHcmY1THkxV0lNX1luNmcyeFg4aF9TZ3hlcTdRN2ZOYlhIT0Ztd1Ywdk04aXhhRmJZYnF0N2hHT1pjWnVQaFVOaVdDSF8xb0MyUHlIUE1IcEtWcWdaOUNYYkdQNmFhY3J0UmpRMkxZdUZNSnNWRVhlN1gxNm1xMDZpd0dLUWxsUlZxXzZoZGtqUUs2SVpDVTNzMXV3cFlGeHdaTW1CQVVCaG1lb2kzUVItQlhrYnc0RU9nYXllQTJkSUV6a2g3cXFOYmNXNlNBdnp2eXd4cUlQT1FTSWYtMVlSRnZfSDBpYXN2MmQ0R0kxNHpDWXUtXzMwT0hqYzYyX0VMLWg4V29pa2Z3cTNXZWZNMTduN2hGSmZzMFNWNTVHY2U3UTdDQkxxNEVkSTlXc0t1MDlxeWhNWHJwUlZPWTBrZzdsNjYxa281c0VsN1RxYzgxNWl6OU1wS3RZU1RlV1lsd3pnb011clJDNktNYmZEV2poUmlldGo0Z0RkSW9GaUQ0dHJGNjZvU2k0WTE2WkNxYkVPMWVKNGNseWZZWk8zbzBwSk1NQ0gybUlwTVZPMkRueGJSSURIOUxiSEU2VE1qQjYtZkw1a3d3WUVoSHI3UnNaMnFFYUdWMDdXcFkwMUdoTWpEZXE5dGI3Qm0xXzFvcWtsdVcwMjZRUng5Vzcxa0RwU0xPNkxia1RWS2xuMlB4VmdZa3F5V0pHNlZUbU81T21fRWxlblhQMmx0bV9VVXN4MXgwdkxWczR1ejlHV1VYTGZKbVlzZnViQXBwVF85anZyRDlkV2xWc3NKdUMwRlVVNWxOUVUyOEJWSXpycV9ublJVRUJjc3BLR2d1RmN0Mjk0V2xFVjZzNFdTSU5vNG8zaVM1RWtfX1FsZEp3c3JKT3ZQS2M0S05OM1F2cFJDa3hPQ2VwZGpZZEMtbVdfMGxNdWVoVzVmcGUzRnhFMGhjeHFrZmkyUXA1Mk5VYkVZVWpPV2JRZ3UySVVmX3ZBMWpIRW9UTzRQNS1vYTBrRHZaUmxPQldRbTMyS0g0RkhwYWpiNndLTWVIOU1VZ2ZlS0dBNWVJRDRxaWwxWURONkRMa1BKT3FkeU91UGdqMTQ2WWJkZEtQdmFDOF9YS2w5Nm5BV1lfMVo3ZTNKYW9NNzhZR2pMaEV3alFpdHlSOElLRTV1ZmFDZHdYMWNPMG5FQlRnYTZPNzFrSEJkMEpGLTQ5X2FPX2RoWWo0WmVLWVNxOVhkQ1NHNGQzSFNxVGVsT2ozX0tzUGp5dk5ScmkzY0loVmJVWHkwcVoyN1NqdlRRcHFEaW5yMDBra1Q2OC13SXMxcXJhazQtcjZoQUFUeTM4S2FrUFJWYy1WMUQxUVppR3hFYUdrbUg5bF9YT2hFOEtHREIzZFgxNVNOREptRi1PR1dKSlJZNWhqZmpFWVNEVUhmb1NHTElNei01Wk5hVUs5cm42cFBMcWZfcTc1dkZ1TWRISzZhcTl3eWUtQTdLTjZyS0xqMlNfclV3RHk4dnBlbFBBTktNTG5Td09mV2U2eXdFRmFJTDRVLS01Z0NvczJBbGd0OWE4QmRKOVpsUDBUSzZEb0RVY0JTbE9VTWNJNGZXb0lDYkhwc3FnS1d3MUJXc0xGTFU1UnNSZVF0ZHhmSFNZdWs4azFWUlNhQnZnSEh5Uk9NemJXYzhSWmJCVjlQc1doaEpMeVpMM3RldzJ0RkhaM2h2U1A2SUVidWpxSE0tYnRWSXFqb3BEOHFDMG90YkNERnNqdXV0bFdVekgxTXhNVFFGdk1KY1Rfa0swM3NOSVBNTnc1MVlrQm1fV0hiQTNZY1V6d3BPd1JNNnQ4YWFVV2diRUkyNm93Szlhd3BUTzJmVHVncjdzNTJoWTFBNVRpMXRobDM4TU84UGNfeTFyYWJBeEVsMGloTUw3VlRFWmxhUml2VW5JS09ORDdXSXE0U2RHbjZzbXJLWW1LUGRFNy1vZzJfMXVhWkJyblRScHNrd1FiZUVlM09tT0lRUjltb3ZmNkRCdlZlVGtieG4zTHgyM2hwUVRRYlpFSTRORFFHMnlzTXcwSnQ4OHl2dEo3NkpwSEFYbWhkZUpBNWI0QTBYb2JvSW80a1JGTjNlUWlCQlB1eTVsZU1qeEZnVVE0N3Y2M0pyNmtibXpfSEVTZHowOGhNeUozakN4Q3ViNWdJVGhtbVdkQ1lIUjZRYjRtWlowMjhIT0ZCNTl6MkY4QVVENXNwU2wyZmhKZHBtUl9aZ1BsaVBuUm9YNGVPU25Dc2ZLTW95X1YwNk1KRTl3VGZPSXU1ME40cEhoTE9qQXNUX3NCSHBfYWJMb0x1ekpJZXdtV29SRThVR2xWVENOX2hJQk1pdWI1V01lbDgwa09nbHJTNXRMZnNCdW1qTTZXUEladUpjRG1jWlozdXpEeFBkRWdHbFZydXE0ZmpfMFBoUF9uNS1FcEVtYTkzZDFaLURCTXU3Wk54QWYwS1ZBOXVJOXZ1WFNQRDJOVmRpMG5QRFFjbFRCRWhKYW8wM01uc1VGbkxBNVZqQlJnQVV2Y05Cd3ZlYzRfOE9WMDJLRVRxZ0hMZ2tzbkIxdU1jZ0cxYnVQWHF5cmJJelN3WGJiTFViOTFWSkZERl9ZNGFTWGhWR0kyUzFpdGdZOVlsYzl3aFlJYU9pQy1KcTNiRUZiVnZiZnJnemMwOUtiYl9ya214ZjFpWDVRczh0blYybHpSaVB1eExibGx6dmlEYkM4ZkpMRE44VHo4NExMa0lMZHNmdjBHaWtkRThSelU5cFNnMVU5ZURUT0RnVktDRmtzaXdJbEJ5MDRqd0d5NnNwb1BudUxweG53OWhKQnpUc0M5dVRUTmlZeUk0SmxpdWs4Z3ZpR0JTT2lMeGNiRVlXTGFpN2NNQUYtcnI4VTYya2hDYlZZVU1mVGhnQjg5aklmNlZSa3pVSGs0QXVSR1k1QnpraWxBcDhHeHg2M1RacnVXR3ZMa1FKek5wNS1PVGN3V3hEN2N1VlFULU5icVNZRmZYMnZVcEt2Unp0WjNxeTJOMTRIYmdIeUZMYnl6SVVoTXdiNkY2M3dwcnlIN0hfMHp3OGRfb0N3bWVCMVBTQVBUcFhiYjhRZjluQlRXbjFCWlBMbUNVc1ZCaUFYQV8zUWp2SWkwUXlrN3gtb3BGc1E3OFdJUVpadkhsb0NRNWI4UGd0bVdaNUFwVDhPc1dXQU1sYkFzdXRLdXZjTFkzbW9DeFZIOGxzclZxOHVXSjhlQzgxUV9uOG5YNGFqcnZiNm51M2ZXTXRDNmxFeWwzSW1JSHRHd3lvVVZOVW4xZWlBQVpnYzdiQUlnNlBoV1pxS25DMkFyU19lbEVheVFUd0ZTWWxrM2Zjdlo4Z3RMOHB5THY0YkpEalI5NUprM1g4NGJEek5uSndfY2o2Y2Fqb0F3WW9nc3RRZFRnd0pqTU1WaU1Fa2hraVE2SVRUU3lDNUJmOTBCa2VXbWZwM2N3Y3c2cThwMG5NZEdnMjNDc0p4VHNla18zbFotRS1KcHZESHJnVUV4d3g1Z3lCVy1STjdrX2xnaGd3OUw3QUNTbHdGb2pHVzlZSzA4T0J3Tjg4ZEQwLVlmMkZSRmFnaFVQY0RfWXhmaC1qNDkyaGY1SnE1WWtyOGJMZENiZjdBTGgyeUp6UTRoUGREMDdnNW1uNThnT3ZMUWo4Z2tvTTBfMHVGOHBRaHpqenRjVlRaM2NBNkZobEI2a0Zkdk9OQXZVLXI5YkpFb2NOaW5fRTJmb1B4VUxqOVdEdGxaX3N2bWtEVzBjR05fRWRlR1dKLXhLcTdWNDRzck5vd0lCOEprZHE4dUhZXzFadVg3bWV6MHNYc0lNSEFFSWhkSnBJelpYQzVjYW9lTDRfalVxelB3dzJzMG1IU29CSlpQNjNWODhFQVpMVkdtaklwaC1PTkhQeU9QemFlQ21xajFlTVFaODdJSGNhYm1yUGNaWDFITTVvRi1meTZ5RFVzdUJyRkx1dmRyX0VJQ21TM0sxWEZmWVhsMkZCU1ZsRGNpUDJ0YVF1RzR0dHhjaWhoRWpERDVDcEZ4S2dha0lRSWc3VVFBTy1rUTN3THZHdW5CcG4wVy04eGpWRFBoU28zUUNOc29sNF9zWnFqVTBoeEVNTVo3YkVxTzNSVDNTVW1OM3RjdG9LWTBySzBxZmR1bk5iSXNjdG5TcUVPYzg3dWd4VTBXNHlQYjBNOEoyQUwySkV0bXlRZmN5RTBDalkzVjVZMjNlN19UVV83bEk5alBTbnhvVi0wdUhCRjZ0Z2xYN3p1akdJSG82MU5CMHo2MHpXZ01hYklqd0Rha3dPYXV2Uy1yX2RqbEZpeUUyZlJvQnNPNDN5WlI1OGJqcHhpRHJxOWdnMEtJcktBQ0gtWjliTUdxeFBIbHVrb1FGeHAtMWszQjdndE5GdGh4dEJqMng5Q1FBVUJwMFNZYXRhUmgwVlBPRGptMWhLd2FUTnUyNDlxZW0tbERiNTRhNFplaGZqVExkS1RoalFiMktwY2FCbVg4ekpQbnRhVlA2MXdDeVRGVDBSN2RIVHloZUhfS0NYbHA0WDN0ekdoRTg5VDVVWjVxVEZJWmNDR2I4YzM1c0pjYnh5bWZ0aUJJd05sUFRlbkNid3dfQXlOUWhreG95Wk1iai1lQ3NBN1M4V3FaUEp6ZVozWE5iV0ZJeS13S3hFMnVyTTJKRXd4eExXRllwOFQ1cFBQQVF1NG1NT0k3SDlfNzRTcWpMRFpCU1Myd3dUdU1YZW1aSDJuWVI0WmdCUF94UkZENzYyM204ZzRuLUdNNGhibVZPMW1LTllJbDlHdzljbkpQOHpSSWlNbUppWEdXTjktbjRPVHFRWExFVnlKbnlUQ0RCMzFTSFctTThyeUJMemEtOUxOdFZhUzVTWkM1UG1vem9EMFZyY2hFVEZmelhwREJfZGYwNk1aYS1icEpBQklTVWJidi1hM0Zobm9JUU0yRW1uT1N2Rkw1ZFdDRlZMcXAwREJOZEVOS0FiQmJaNGdaaGNEREVoSVQwQzh4dWJ5MjN1MW55ZlowRld0WXFoTTh1TS0xVzVOTlNLZGkwVFVhQ2d5OHhBdEh5Wk9YeWgzVFRMVTh2ME1rbjFRRjh5ODRsOVJlejE5VTR5Z2JqX01CVUJreGYtNnhpSFRVQkNpQmN1UnoxM1pSTkVMNUFzTUZLalQ3Y25zRDJxNS1fdDk4dEZ3SmNQejBTLVctbzFtVnBRSkFjZWZ1ZXBRcUdvVzdLNWIzMWFCVHUwWVc3MTZCeW1pSVEwTU5VdC1Cbnc0VTZtdG9wWWJVRjExVXhSSHl2R050dVVUMlp1MDFJSWlKTVRvYmxoZXlYQkFraEVUaDJTXy1Cckc4cG5oZWFZaE94a2wwZE1nZy1ISlJ6V0RXSHJTZ2tUN2plaThNNnhOY0Nwc19veC1kNkdsX1FwYnRkRGZWaGQ3clRaTzhCNTFQSVN3Yk9aYUhkZHotRlhUZmd1c3p6S0RwZmtSWjN0T010VFJ0U1ZWR2t3eG8wRWdfQW9iRVJSNnBBblRfN1hZQmpFWl9BSVVwQkhmYldjZENyUkN5YnR4b2VUU0RvS0twblJkV0E3cnpiLUtDQmVzNG9mdWhicnNldEdWXy1rT0dLc2FuT0lPbkNPQWdHc2VFb19NTnBvZVpjWmd5QlRlaHFmNXlCQ3FZN2FmM2E2Q0F0V2hfSE1IVzl4cGk1TVlZVk9sRVBWWHZHTFp4bi1xS2hzUDVwM0g4a0VHam10d21CWGFuQVhkNE1HemZtWnA2UkZ2d0VIaFJHNFJQQkZYSkZld3laMW1oSzZZVDZXYnpuUGloTC1PTjJPVnJEc25CSWdEUGVtclpnaVJIVWdnMkk0MXNnX1RMWTQ2N2NYUm1JZUc4NWpUTmRieEhkRkt5UWhNS045UUVBYXhDTGJsaF9FZFF1LWJtcnFfNVZoRmIwSDlocF93S0M2bFlOM3BFR3ZsajN5QzNIYU1LTW8xSVlBTkROcmhGM096U2VHUS1SWmZHeFQtZTNwdmRzc2ROTHE5XzNrdWdGZnB5ck1GY01iMkl5MFk1ajN2bF9vNTFvLVdiYUN1Wl9KZEZfb19JZV9zZ1ZnTUhoTVA0elIzRlBEVjVjVUR0bEtWWldSa25XMTRaZ1hnbFNRRG5kSG5lbmpqR1N0WkZnelh6c0FqX2xibm5BXzZnS2ktZHQ5SXk4aW92cFN1SzhTMmMxRFdqU2xIQ1FMS2tCdWR0REI4RFRaYjZneHJCZ0piNEpFUWp1LV9mUXlPR1NOellNZ01ISHFiVTVVbmpxOFVlQkFlclNnQnEzTWRza0xRNjlRVS04clRZbGszVEVLeFQzS3hhTUx6MmxWTkZSMzRkUDl5Zm9HMnZvOW9PS1VEb3VUaXRwNkdhV29Vdm5jWkdDME52bktJaUIzc1NiQ3pOWFdWbFpDWDhWdFhRQnB4NV9USDNhYi14bUJOUnVQMUZ4dlExNERsanZHQVBOM19DcHhxaHAwTmxzbk9xNzlqYmV0TmtqVHVrUTFZLVVhS1lUVFZOaTlQV21CbWJJTGx6X1FfQ21lSml1M1BwVVUyM28yNHlkR0JFTzZNZFg3aldMdHp5c1hxSVJyV1JUS0g1dG1rT3VwNlQzck03UGotb0NNMURacGZHdFUycU9aVW5hZF9TNGR2V3RBT0EzMVVsLU1DQjlLLUpHZEhyU1NKS0xoODNqM2d1ZDdoTUswVFJmYzVXLWdaZzdiT2xUc2EwcTB5anVKTzAxYmZQdjdQTjN2cTRkT1RabWluNnBJMzJSbzBTQU5NZzlBRkdvR1g3TElaR0Y5bVRMZkZGbkJTUlctaW5taW0yRW1NR1piQV9hNUdvTWxOamhmV2JvLW5aNHZubkI0M1NjZlNwZnI2LWRvRzd2VUZzMHlPUURuM0VvZF9ZcHBwUUwtLWtKR3VlYndlTVk4ZmdtVy14NktjRENjSEl6NU04MzhROC1KTEpPNzVLS0ZqREZGa3JtTGZfTGF5ZTJuekpKVGxhN0NnMUMyWS1kMFJGZnd3ODRHb1JjaGpVS0RPQnlFUDVlNzRpcnVSc2hjQjl4QVUweFpyZlIydmdQM2gwbG9UYjJ5UG9wekVwaXV3N01XZDA0eGhsMWhJUm1haXloRFMxc3R3WFh3aDN5SlNuWE5NMngwdnY5bGpQTmRDTzBiQ1lyZVQ1SXY3eFp0WEl1VW5jaWI3eldUQWZNZHM2cXF6Unp6Wkx5YXFTT0JrQkxJLW82R05SMm9PX3F6dTZteG5tMlJGOUlMcEdxYnRnZHhYTTdScVNkNVBEa1RfVjhrVzdOOXlfTUJuc2RpV05uelo3WndPNldrUlNvbkJPc0licVFVS3NXR1dUZ1E4ajE4dy1hd3hnWVJNQlhrY3lEakt5S0piMjZrWjhnRXNlcVQtM3RPTHdFeGM5cjh1MEtLT1M5YlROZDF3YTRFTWZHMEhFeE1SdmdqQ2N5QTlLa1pnU3Y3eTlNRm1BS2k1M3FXNnVvRHRfX1Bwa0lFLVpqUGhLLTdSa3Y1TmJUQnI1bmctTlR6ekFHc2s2enVPdnBpU05JSWxBRXNlUUJERWNES0c0M1Fsa0N0X3g0VmJ2QW9kQk9lTVJpZWNMeTVtLXo2SVZyME9xX0Jnek16ZW85Wl9xZFhWdFZobTU5ZkhDek1rcEM5WEN2dTVXaVU5UzhsV3Y0VmM1STZXa294QW9vZ081QXJFVVV4T3JsMzlma0ZpR2FvUmNBbWM0dG81anhUUjhuWVJXQ2tFdUQ1dEoxcFFUNkhpaW9XMk1OTXR0OExMTTFpeUMwejI4bWFlcmdBZUxGQ3pTODZ6QnJybXVTWFJEQlhhaW9DWGM3VkoxSEtmSUFYcDY2ZEZ3RjhRUkdUOE9LMm55dlZIMzlvRWhSX2M2T1NiRzJvYkxTOXdWM2RFSUFiY0RhR3hjVUpCU1JXeTdUR0ZhcWdhemlwRVRnejF0NThlNUZhS1AyUnoxMHV3LVRHSWN3VVJtRXhlSzVnbDZJWWdMVThKYmVNdWtpbTM4dVFXaklVQXEwOWhva3RsRFNueG8zRFg2STJjdFYtRk9xYk9rX1dLRURHRG9aRG9neG84UFNELUJWeGJrQldRZEwtTUNENUpzblBGRjZhLV9BdFBaWktKYnZoM0t5bWQwNXVfbk9qTURUdXFKU0xuNUV4MjFPbXAzQW9WZlpNYVlTV1hzaXpOWU10cEVReEMwbWp4aDFFLTNmRm5uOE9GdzVnTXFXNXN5d0ZHRklYcUF5MFlmc0Fsb0ZBTkstRVZvVmpCbjY0b0Q5X1NsNVBwZmxFZVlaSFFRS09IRmxWazVwdUhlZHdpckNfZGhkdGp2TnV2ZlNSb1BLU0VJWGxnV2owRHRrRkFiaXJkd1FNTFBUc21CT2pOYnhSWFkzVG9Qd0RSZGo3eC03VVJxY2Ftbjh2VW9UT1MxYWE4WVRMNm5FNVhsVHpuOW01MEh6ek1Rb2tnemcxQlFLSjRsMFJkbWw1a1RiX2tTRm5XY0hobHp5UGt3RUxvZnZfYnlBN0lSXzV0d21LLUZGcUVsYnE5WW1IaXNrR1BWMlpHTDFmTDFGaU1RSmtxLXNzeFlTNjZJRVZ3b1pCaGw4dUZJbnVidXhFeGJaSEpTX2xQY0pLTnQzcExWazJJSzJpc2duVFgwTnlJRWNzMG9pdDlfQVRERUJ5OHZwWTYyTjIxYk9la1lJM1o1Q0pleFFpVTc5VU1wektndTJvTGlaWnBaeXJ4TnVMa3BWSzJpT2toanNaN3gzNDhRdjBSUjdRN3p1aWM4b2hnbWYySUs5cjltOW93MTg4MlpRNFlETTdlOGlxc0t3dkZkOWZuOERlcWl2cmROQUhRcjFlQTZnN3BVSkpZZTNiUDJKLWpGSnN1azQwWXBFUXZVdGFaZjF0cUpPQlMtWlhvOE00aGEwUE5KTWx0bFhmZGJub2x6aHRnYVF5blR3WHJBRTBSZmtnWjlMaHFtenI3ay16TWEyM0t3UHdncDJmUGgzSmV0Z202Nkp4eHBnVjQ2dVl3UTVwSUFibll3MDFOTUxFTXlQaUNySlFFRWtwaXo4WG9hOGtJMkdRdkh3b1pTYlMtNzFZcHMzQ2oyLVZkRTBNaV8zUnRJUEZyaVVTUERfS2cxQ25pQlduN0IzS1pUYjd1MFFwOXl0VE1TdDNRbUNwcnR4YlktVWFwWEtESUYwYVVCN1RPaDRuN2lFZ0pQYzV5M1A1LVZkQ1VxUHJKS2VwckUxN3AzMmFyWjE4VFFwZE5rRHdXRWJWZFlMZDNvc2tTdkhCMHBmbTFablpMZzNpSGo3SmxFX0VsT0RIOVQ4MXRBS3ZyUFlzZUJsWnZQbEdUbDdRN29XN0tSZ21zVDJHMmlqOW11RlVEWEoyLU9ycFhHTWFURGxpdGNhcmpXR0tjMXFJRWhzQ0IybjI3LUlDX2FnbDdHbG4xUkdCRC02bEZGQjFuTVBWcHJpVGljQjA3THJZblNHSTVRdzFpY0pYNnV1TzYyOHRTMEh6Z0llUEdRVzhPMEtyR0xEZkktX2ozQkphbEN1eEpMeW5sdmE4MDVaWFZ3RUdCcEcyaGFOSlVleXhJeWFSamM2SGdOZzNHXzNIbFItWXhiUjBfSmtEODJwczhfd1VmZTBGOW4yYkUzWEVNeEd1bm9rbWdWbTdxQ3I0TzNxQk1HZ0dvN3ExNFRVTGhndk9GeXVZU3BKdkJ2a290NVptZS02SC1idVYySlVjNENQYUN6Y0pFSnB6QlNmTnk3eEFlQmNvbEN4Q0w2MzZDZS0yeUFGVTFFdjJ0NkN1U1BHZUlyY0RrRlUzT2RWOWxvRVlJaG5nNUdEdDdXUjN1RDJsRkh0M1dWLS1ieHkwSFU4YkZmT0c4b0hoU25NN1hsOWtGR1ROWUVxUndIUjk4eENYeXVlS1ZEMHVlN0ZPNnotY3dxV1NxX3BFb0ZUX0V4OFlHU0EtS1k4N1RCRFY1ODlYSEdMYW05bm43RXJybTdNc1p5Znp4V0NBb0U4YkktX0hRN3dTLVVTc3JuZkh0eVJCVkRMcHRSUDVXWDhTSW5jekUwbTFsZFdRUFRZdDFZTVdld1M1Wk5GWll0SFFVSU9FUzNRVlZ5dWlrcXZQczBQWE5Db1p1ZUJoVVViZlVab0E1WFpDTXFYWVdsQnBUMzRVWkRTV3RxUnRVcXhjZlk5YmpvNzZWNjRfSFAxUHJ4V2NQMFZFVi1QVmhxTE55VmRZd0VsRTB5YnlyWlNsRjRwVlM4VTdsd1VlS01UMnpHNWVDLUktakxpUEU5S1M0eWU5WEdtZjlVZEZjd1V3cXBiMjl0cVFFdXRUNFRmUU54elM1dzFqblUySF9BVmxvNm5LZGJiLWt5RjB5WGZyRXB4VHJtR1VSZTRqMEVzMHBXbU0xOVZxY05yeDJDczh0UDlGTlFxNlptQnJ1QVY5ajE0SlpOdUhvY1ozMmU3cTdsN2tfcWlseEtDN1hjR3lRS3U0YlpXdS1qWUEzdm5OSDVORnAyaEd4aWFLVmRka1pDQVlTUnBqMHVNZ1FuVGNEUkppTTJoV1piaGY0OXBUaUVwak90dmhIbHV0WDdYdmpnTDVZcWtVRzNBbUZVelZIOWs1QkFpUXo2VUtwVVJjUFVNUnFPTG5fbkpMd0VsY2xKUE0xYldZdEhZNHNTdzl0OTMzSjZxdzdENFdNRGJRLVI0QlJubkxwNUZZRUtSY2Z1cHVKWWtxV29xd3dQUzc4b1E1UmZfSF9VbVlBZEFOUXhsLVU0MUw5RTE1TEZqaFBsMUZObFhNLUp5ZVNJNjhlbUJ1NGNWY1l4d0oyMGd6Y2NuSWs5UEtjdXdUWE1IUjVIMmNtZENxRnVBY3lYUlJCaGhGRVBfNjFmbmxnRjMxMFZSdS02c3JmOVhnTGFuMEdtaVNZSC1UaVpmcUFrUjItRVlvdWxFUG9UWUw5OUhTekcwQTBveXhpc2YyaER3Z1NxNDVpbjJaTU9BQnRrNGpGT2ZKQ2kyOVZxMkV5YXVOQmRodkFQeUVzVHJpcV9ydHZPN1phUUs1Ulc3QndPZ0RsY3k5b0ROcmVfRG5mZm9jRUNmc3hMVndab0Z0Sm02eUpoNmU5SDVTOFdMcmF3MEhDTklaR2QyaWNTUTJEMG5oMjh6b3JSY1lfanpIYjBwX0VIZk1iNjhxa1hoQmREVE80ZVQxeGNtRmZuUXRCQnRCMVJYaEd6cW1MRlhTUXJRRWxHWFY0czZxNWFYRlJQNkljdGowQk02VkxHWXVpOUdZb3YxZEVrWVRaS3Y0QUtnQndySWRGazl4N0hOT29YRm8yRlgzY0hWTUpWU0hzck4xY00wekN5SVNGdDNkaHB4TnVsVHY5TkdfQWZmUUg4X3NQa05Ua1R6clcyRlM1RkZpTjVrQXJLeUZRRGlWNEZHZTRxWE5WbFhfOURtLW1Hdk03Q2lPWDg2Q3Z1OEg2c2JEckxFR2VxdVJFSHdxaE9DYnR1VDljczNIYlBsbDlvODhxTkw4TV9CSzc3aUh2a0lSQUc2Qkl3Qkt5ZFo1QUNpVnh0NVhIZ0tEUE05a1VaMTdLM3FwYXFUblk1YWw1QjF3bXVYMkwwSDVGckxxQjJTTFBPUE9zcU1RTlNidGExQXBkai1KMm0ybzFWY1JPaGhWeVJza29iLVNOUDd5WGJrbGlUOWJTSHl5YzFvbzFXcTZKYnNZd2hwdVI5aS1YX1cwYkc5M0hyYS10c2pvYmZPYjFBeW5sRXotRGpqZXl1eEt1UGVtLXVvRVlTWkZfbXRsd1JxbVNFSkFwWmlxQms5VHFTZW04LVBCZWxRR000MVhBOWtFeHc3cm41anROODZEdTdUX3JvRnRTWGxpakFQUm44ZTI4XzcyNEwyTWtrN3FPREpLMkg4Mzdvc3J5bjNXRWE5MW80OTJuTS1BcGNTZ0pfUUEzbURqUTJtaHZNVElPakh5TFRCZlBjaW4tby1UQzRhc28wdmpJUEhLZ3pUeE5oWnpYNHMySjFSRF9ldW91cHhfNXhocDdCTDZSTWt4eWVMd0o3Y2VwZFhDVmNmdzdzRDEwQnlyVGVtSnVoT2oxaWhrc1lVUmdEZFI4M3pweFl1Sk11a0ZqbjlxbEQ2a3c5YndNWnRpU2h4QjFZUHNuV1daV3U0TXFsVTg3SldZQzlEMzFUdXhiNFltYndsd1RsQTV6dFBTS3diTk1fYUI4aXZVUUhUazBPdFFwcndXMTlCdU9FbjFtWnpBYnJ0WkUyZ3NFQ2w3TTREWjZWR29nMGtza3gwSUlDVks3WkxEQmZRYXhIWmxFOFk2SGFCS0JrekhKSHE3MUNfcnMwcEo0UWZRV1NiNGdkRFpIeVpWY3JaNktPbEZsQTBma25LdEN4YnpjM3U2TUM5enFXa1ZYWWZZeWVvM1JSNUg3UVJZaUJqM1R6SjJVMVF4U1VqQjZyU19XeW9vWlhnNHNyeG5QRWdKak01TTdfMC1yY3NWVlVVdVNzT2RXMXFybjRlSy1Kd3Q0elkwUHhLYU5wZzRkMTFLUURIVXJkRjdPbnd4UmJ0NktLSFlGYW03UGh0ZVozV0dGbnBIbktzdHJYOVk2bEREYjBTLW5KQ3o4ODF5cUhUSmZ5YkhfRWFxS3R0ZU5ub3dDc190Nkt4NTVBS3o4c2VaU1psOXJnb0k1V0FrVkR5YmlfSlFFdTJnZnp0YzN0M1hCMnlTVDg4bl9BcDJNbU80X0V4QXBoVEpfNzdrYmJvWkl1Yll2ejA2Sjh5ZjR5Mk1yXzgySlFLVVBQYWhuNEozejR3eS16d2EtaDFLRkkyZThQTDZzODF3YmZ1QndrNlBHNFItZWg4UVhybEJrSXVqMkJ4eGU4VUZ3VUZONW9kbzY4VC1SWTF0bVdPRlZndnpDUkJKc1Zjb3htLU1CTGZsdW5XbTBVdDRvd0F1MlRKQ3lUaTRpWDhIM3E0X1lQTy1zMXBiQnRRaU0wQU01azVFNkdoZlc3MS1lQjJ2cHMtMjRORzE5R2gzTEhvTzNlelJtWmhwX3k3QXYxV0I5OURrbmJ6NXZ6dGxwcW92Y2hNNWRDOFNQalFkMDBDRW5NRmtwaVQ3SDZZTmFKVG5BcnVoanhTU2RKLXUxSmdGSE1ObzJpNEtfR0xxY1BlSGlIaTlPZDM5S2NGdVNQeHAxOV9wc0Z5bHRzWVp5cXhoNldJSG55bkRvdEpiOHd4dFU0bk1FMWFvazFZNk9yc1FUeGFtNnBFQnludFljbzFoLUlhanZHSGliWkV2UGdLNjgyc2RoZ295RjJ5OG1na2JTNWxHVDd6U2tYWm0yeUZwOGk0X0tVUnlYWUtqUndFZWdKTmktQ0gxWWs3ZHgwbExOaElOVzJEWkdyN3RFd1dOd2tFMzFHdWwtaXZWZzdGMTNMN2xXNW9OWTk1WXFXQlh0RzBsRHVoUlduSHg5dTNWV0twSDFmT0xDcnVIS1VXdzM3MmhtX21KS3U5UW1tQjNrWDF3SURXSkQ0SnFfeWlaekMxWEdIOEFzRmJfOFhtTGo3YW1aUmRwRFRRSmV3WlE2NXFJem44VEx0ekFhTUktUUlQZXJDSEZmeDFYWW81ZUpWdHc4MWphVHFRQWJCLVZ5X3ZXMG4zNXhUVklEOGdJUlpYakhRVEg3YTgtaDY3ZVFPdUNtS00yR2NZQjlFSmNRLVRPdUd5ck5Cd0lBckNxSGxDSzF3SjlPZjFYMjQ2cjY3dnd6MkJCQUdRWWp5dF9yZ09PcFFadGthV0pMd25ncXEwRE1pYWt5cE5LSlVJbEViX3ZkUGp6SFFKMV9IVzlMSFB2UWVHUmVJRTY2YzEyWlBBTm5tcndDaXR4M3hzcWNJZVd2d0Vya0ZzcWMteUlZbFd0V1Y4ejVmdklMY2JvSWRxVTJ4c3RqR0lvZDhudEp3RVRMeDJJQTZ6TUZHZ2E1UDZkcVhiMm85TUtxT3U3Z3UxYzBUaGtjVzB1QUFSb1F5ZzhDcnMzX0VfcC1YRXpCZGVWNzBIWUhXNk5CaV91OUVfLWVKVm13Vl9RcmJxanM4bEJxeEhsR1ZyUHVIbjd0ZU1ncXk5cjY4b0c4RVZRRFZUV0tXYWZ1U3Q1bHJpWXlTMlk5QnFqbXduUlBFR3lqTzJtLXVNRTRHQU84d0s2eFZVeWF1emlRQ0FyLnN4blQ5QmJTbklGT0RKQ1Y4WGR3RXc" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/BackupKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/BackupKey-example.json new file mode 100644 index 000000000000..8237c1fcb63c --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/BackupKey-example.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "testkey", + "api-version": "7.2" + }, + "responses": { + "200": { + "body": { + "value": "JkF6dXJlS2V5VmF1bHRLZXlCYWNrdXBWMS5taWNyb3NvZnQuY29tZXlKcmFXUWlPaUppTlRjMk5ESTVaaTB5TlRZNExUUTFZbVV0WW1aaFlTMHpOMlZrTURkbVl6QmpPREVpTENKaGJHY2lPaUpTVTBFdFQwRkZVQ0lzSW1WdVl5STZJa0V4TWpoRFFrTXRTRk15TlRZaWZRLllNSVBfTXJRcTQ2X2ZwRExfSDNSSkpzSUotM05oeUJkMXlrOWJCS05JOGdnTjMxYWg2cWVoY1BISExnSnJ4OGprQkxMWFBxcDVmMXpsaWxfclVrLUtrT3J5YzhaSTljc3NNNV9TeTN4cEk0Wnk2V0ljNWNqUFd1R0NDbUJwQXlydEdPVnpoalF4bzNyVFcxRFNxZ1pVdnI4VEpseTJQS3J2aUlfUmduRWQ2LVJWS3V1Vk40ZWZWYUs5WFZUbW4xdmZ5Z3pwVHJfVFdDOVBGbXpoT0p6Z1U5OF85X25WcldWSE5TMXVMWEpYbldoQU9mUll0VlJORVFJRU5lTGMtZzNjTXJLOTFzNk5XeE5xZkZfR0w2UHg2cVhHMldXQ09nMzU3ZkJnT1ZTdERLaVZINk4xTWVkUTVwaWFkeHhUVDZMSFpva0I0eDFKbEFJZkxfYlU2OVBWdy5GOVFiM3RWbE1LcHJDS0stWUVpODJ3LlQwTVFpYXV3MGw5TWJfRFdEY1hvbzFqTjZJWXU1OVk3U0VMMm1ndFUweDNYTDl5VHNqZUY0Y2I0NExBaF9vUDdnbUgzbjdKLVZEX3hKN2hXY01XNnlTNDlFX005aXlndDlTQ2w5ZjRTdWtpM0NZdkwwUUVSVFlLSW1qMi1BRkRMWkl3Tm1HYmE4RzhheFBxR2NOS3NSZ0daZ1lUVG9pWUxxQnJ5cmJ2TEp1ZENxZ2plUWRpNU1tdHlQRnBhZ0hwSHZLa3VjRkdwLVhtSjFLYk8yQTJRT1dRVFFaOUNlcmVCcXJDbjI0SXdhUXJVQzRyTkQydzBVQTFUY3dFZXVWQkdFTGRKWm9zWHM2Q0dEZmpaSHFjdnB6NzRKd3g1T0VpcV9EUHM5VEtya01ob3djRXBsWjhaSk1jTlFSZnU5Sjg5ZDdZWGdHZEI1aWtKenA1WlY4OXcxMmIwekNITllKamdkZEhTNjJmalZlYUUxT09QXzd5Zlg1dEpiNmQ1QVhpZ3ItSkozbGI3Y2JhOXE2NHBsYmlhck1LemFiNUhtMkxNRnVLQnI1TmFrbzVQMDBoUUJnR2M2aXBJSzhNT2NLc2RhQjJGcjUwX1ViNnJEUzA4NnUzNy1DSHRGRnF5LTFBaGlDaXhRakNNTF9rWGtJMHZEYmJqRi1feGtNZGFCVi1BdTc5TzZ6V2pzRGVlV0t0VXZWUW5CMGM0Qnk3SVdDTGVWdzIyaTA5WWk3MnpCcWZPRjRyTmd4VTNrSjdfLTVib1dteVlXNndNOGVzTjR4R1kzUGhVNHlLRV91RGc2dk5Od3Q1c2NXWW9TMHh4NlBDb3M4S0R0Y3ItVXlwUTkydGhVX0ZYZ3E5U3RUWXEyWWdWV0dQbnM1Q0RMT0RBSi1sMTFJNklpdGxQN0hoeUxvMzlqNzdpV2ZUS0RnTDVrcDdEOUUzX3FkUFprdGpWUER1M1pRY1Q3MzlOMnp6XzFrWHJEb20tNlBQcXdWUzZtUXpBVW1xaXhTaXZjcWJxalpJRnRPbGxLRkE2cWVyaDJlU0FZelRNU0N1d0p4REJSQjUtbjBNUWxJSGpDMTdkTFpoVnFEMVNiNlBycV95OXN2Mml2V3E5TGE5R2ZHbEhBNlZZM1QzUWRTQ3VrWVJqWFhxLUItTm5WZGhGTVZhbFZ2b3NySmZuSEZhWGZMaTBnczVVOUt1NHlqRDdRb1cxeVIxSVk5T3JaNHFSUXdrcG5tOU8ycnJIMXBtX1hTekxRVDRrWmNLYnVneHNvWXRsRE9TaW9iS0RYdTFNdENxdkRudnh6OEZ3MUdwTXJCdUxrVlFEVmVlUDJqNFp3TGxPbkxUTmk4YlNjTm1fN3ZUc1RQbTRJRDltanBXSThCYXA4M1RLaTNkelAxazFpM0dncnIxSEpVQU96Q0NjUTRnaWxES1o4UkVsUWUyMUJBcUo3eUVublZsdWN5RzZBV2E3dmlZWXV4eEJIa0RsN1hHZHZYMGpJMjZyd2NTX0ZIMnlOaWFmZDN3SkkxMzQyWEF2VDdDUWVoOGRaZWRKU3FYUUdqQjVCSGF5Vl9vZnplVXBfOEhqRkRoS1VkcmNJNGkwa0ZwcEhkUFhNQXUxMjh3RHUyTG5VenlNNEpad1NJdW1fbmpiUTNJU1R5bUVMTngzd3QyV1NFT2Q3QUt5S3lCNEJzU3NkUE1HZXdLSTFnc2otSENFb05Cd3hQQkF2VnFDSUkzbGY5NG0tRU04LVh6TnRCVXFpT3Y5ZERCa2d2ekptSTlrMk9fVmpjbUZrbkdKb2kxVnpZcGlRVTRYbElaempDd3NDRHFrYWh1YmNxWFdyMDhVdFBtV0hGRXk0Q0tvclZMN1VIaVhsVnJPR1VHdFN2dWN3S2RjS1RPeldsUngtRGNGMExDek1kR1p3Y2czZWk1bWl0bFliRjJVbGJOMmJaU0NQWDljOWxFU2RBUUhxUEVsNXJhVDY3aDlWeGxPc3doYW54SkZvNGVuRENaYWZObURGRzJMYTY5RXFCVjZLTHowXzR1S1pDNW14YXZEazZXS3lmb0ROeXFzdVZMdG83WXNqUk4xNTJYMDVYSEhuRVN6NG5lM2MwandXYXo2MFpJR0Q1TUhNUUhQeTdPNFdnYWthVnNKZU9mYUNza3diYjQ5cV9tQnNYME5mWlBjcWFiRFhoWjdCWUxROVhFUkdibndkM0pEQmgtX1RUN2s2WERpY0tUblZQdWVGN3dzVl80aE9HUkpkVEk2UFRmV2o1dWY4dTdxRU9BdUt5NmV1Vk1LeTk3TVdLT1Q4LVpRbDBoSWowcmJWR1pILVI0cnFIMXZfVmdRUGRpLXFXb3FXcWt5MGFaSzNDTkEzUXhXZnRMR3AwcUVXcHU2T1EtQ2hONy12eE4wdFVlZGREWlF5V1d0d3g2VFcxS2hDQldaR2pabTlBQzY4YlUyQnVOTUU1NW9VV0dsbmNOOUVuRnpnTm1RTVR1SzV2VGd3WkJITWpmUXpsSUdfeWZ3QXVtSHljSzVPT092eDk1SGM3d0RBRDJXMVdSb2h5MDV5TFJkbEJ2XzREUXJyTWthZEVwZjB1dHZod1V3ZXZSNU1jVkV5Yk93VUw2Z2Y5a3JDNEw0YlR1bUJRbG9Ccng1aDNuTHhZdzkwcmlqbG5LajVZYkthZWpyTXdiSW15Ri1xVk5NbWpTd2I1MlN0SjB3T0czeE9HZkJRRHhQWHJtSXhoMERSOEdzSzBkeS0xSElJZWo1LW9STWRfSjlhVkt6MFk0d3g2VjIzaC1qUDNxMjRKYmF3dndsQTZyVjVpVUZkaDZKUXJpTU5DLV9hRF91X181VTd0OENIN1pWQ3VQM25JaTV4N2dtcWFsSzNlZ0htM3BkYl9sb3dYRTRaRUJETHZ0a2lobC13LVBGc3VZb1VKSUZWcUZ2VnM1RW5TU01XMFBJWE9TZlZNWW1KWmVrYmlHX1FqeGtCMjNCaHpZclNqQ3oxcW5TTXg5a3ZicDlRaDFuZFJYSkpJUFUyamVIdUxCNE9nVzNoenluQ2FxQXZQRXVHMlhuS3B4WGZ4QUtOeldpTElOLTBsUTRfUXQ0dHctZmphWVJVVjVLVWpyYlZnazI1MDZIUG1ZVEdWUVdRX203Z1NBU1BaajZEYklua3U3SzhFWnI2b3d1SDI1M1hxazlrSWwyTE1CcHZqT2tOTWFRTXhLcjItMllkUEV5LS1mTUFQTHBfVU15MnhqbEtMS2s3blhJdV9IMXZSbmdfVlVyVkhuZUdqRmFuODdRRU9SU1Y3clRBcHJPMmZUMmpfOWhoNkptdFlrUXFnRzg2WXlKa3NValdzM3hwZGk2TlBGRUxqQWd5T0ZDLTRrTWdLbGdJM2lUSElCV1Ezamp0U2UwR2N0MUs3QnBCSlJySUFGLTFVQjZKVDZjSjI4Z01zd0k5OGt1ZDVob1hZbVQ1bEEtWmFELUk4ZE0wcUZ0SEg4a1lXX256em85bTY5LWlZZlZfd3N5Mm1CdnVlb05RZGRRS0JrbWlVTW54VjkwdEF5RWc4WXJaWUwxck9jWHFjb2VJNl84UmV0bXZZeFZNMWJwdXFfajlmTXYtelRBOUpDZXlKMXFBTjVWQWFpY0lnZzFKWElDTEI5amVTT09zUXcxYXZxdk03TjFBcndDcjZvTUhycTVaQ0VLODV5VmI1RzhjY3Rld29pSFlzdVlPT0hnSDNMbmNoV3pmSjNNaUVjTTZfVjdSZHZCUWQwM2tQekdFVjh1STJ1aDl0bUxrNkY3VUt6WU02RXhJNW1LUEM5LVFOMk14ZTB6NDZrZTJteEdHR3cteXFMNjFHR0FpS0FjcENsSzVHeHlRbVBuREo4RHFKTk9WWDNoX283YTExVW8zMmtkdEcyaHVYcERVc2F5NkU4VGJ5R1dFZ3dmWDdaVnZrN1VNM2VqdDNqWXBxYmRZSlBNTUJCMGdNOU9mSVFjS0lUcm9IMHJEbFE2Wmt4UGM0ZHBlQ21NMzg3NXBXTlFrZzFKSnVRZzN4cE9WZ0VGallabEVENTBFaVZKNzg3cUM1YUdtakxRWl9yLVA3X2hJN09lcExWZ1BHSEFTUkxsd0dOLUZwTDc4UW9VempfWHUwNlBkNkF1VExtYmpoVmlERC11ZG5xdTVVR3dKNGxZamJqSkNBN3VQT2VfdWpzUWhZd1VHQV9YQnlsbkVySWxMN09YSE9UeGFEbEpHSDQtNHdNcm9hbmhPWTVoZ2NWZHZVQlpVZ1JEVWg0MGwzejhGVWJhUmxpaEUxeXQwdU5vR3F3TWRyWnZoTkl3YVFjUFlQeVV3UTdBdWh1dl9qSXRVcWlGQm9ncnlSb3Njd3oycXR0am12OEFRWUh5QWx5OXVqdmJ1cnk1TGNJaF9FUWZUekJuSnlfcDVZdzBDWG5CSzg3ZkVIOHJhWkh4V0VUcHFseHlmWWRWZjlQakRYTGJMYWJWQ2J6TXNSMnNYZkFvNm00VmhnaEYtQ0dOV3lta25EMDBUbWU0TGE0Vy1BLU9lR2o3Mi1uOFZjNmI5Zzc4d25tYkF0dGRyUThQWVdLUXZjdXlEbHZ5RUdHSF81VW10bFN5ajJKbHRLZXN3N1dzai1hazhDWDFidGRzU2xoQldjYUJ0dGozUmp3bEN4aEQyTXlWdHR6dDIwN3JPQjdxdEFJeVg1enJZMUxaSHB3RW1NeDhkWnM3NDdlY2ZhZVM0ZFFCWmN6U3lCNFZFWVRRWGdIeWdFX3EtYndfZXhqNWs5c0RHeHNTRnF5elFCVm9VOUtlbmFtZTRESnNMWFdaaW51UEhZUVNtWDJUZFBabXNkSHhCa3BBcHJiLUg0SGdFSnBPYWxCa0d3aFhza0hwYjZUTkhQeHktb09tLWhBaXptTVZPZzlnTDJOSHpSdUFtb0kzVTRFd2FfR0Vub3d0ZUFRU0xlY016WjZxZ3l1ZGswcG51UnlONlAxbTNCU1ExODRXUzNqeDFDNDYwTEFKM2FySS00QWV1aW5fMFZYM3FHdmEzNDR2ZXQ4N0RSN0liTUUzS01rWWtUdXotaHpqbnhHVVQ1cXZhWnYwNzdQVHExbTVDUVBUZGVlNlNnMzRmLXlseGg3MGoxSS1OWnZ3aFAyTFZ2OTJkdVZ4SlJSN3hzbEp6UzU3NXE3aWZ1UEcwUnp0NE55M1lESno0TWVDTk5wWklwTUJKeGR2bkc3azhsbXlvQlVRYmR6OHhCdW5YT3FsRDFHU205M05LYy13bzdxZnpJanYwWjF6WVpwLW5LN0o2NEUtSnp4MkQxZ2xJRG5vZGw5R215UzlwbzMzOUlZYU9QZlJnSTNad1FTVkdwcEJQN0dNRUdsRkVxbG83bTUtNFNZWEc2SmRYYU5yM2lRVmdoUEtkQWVpLWJDTEFQbGJGSkNFQVU1NXJfSEVmS2xUNS0zNlN5ZHRlcWFTZEdvMVhGRXpadWFILV96OEJsd1hXME4wdFJpdHo3SXh1OU5BTkM4R3V0Z2t2WHVFUl9Obnc1VUlsYXJlcE02VERfWl9lOHJGRDdoYXhWMVd0b1pkOUJTd05iUm1JeXU2Y2ZaelgyeFNPVlJVSndWSEctWTNaRGRpcWtzb19XR0J2TFJKQlRWT3NvZVZucWUxWktqb0NRSzFEYUZPb3B4UDdTTWhwOVlpY29XRk9VUU5ONS1EQjMtNjhDbURzdjE1LXMzRFRxUUM1OHhpd2JZLTRuWWt0eVNRV2F5elRvYlZOWG1idmI5SzktdWowYVRWRkx6SDFHMFl2TG1oU1NTd2tfM08tY3RSUExFblhQU1FWNkdVT2p5d0xIT1hTRDZfY1lTN1JrVXR4Mmc4bV8xbmhJUW0wOFd1aTVNSkdQR0JEb0RmN0szd3oyMnRnUVFXTDEwY2J0SlVvQkYyNjJVaUg3TE5pMjJWQ2tsMElYMVVRNy13cEkwcDhkV1NvV282U25PYTdkUTVpQkliZjlQX3JRd1dhYVl1NV9aQlpwQ000VXFWY2dhR1NZVnNxRHpXRVY4LXRjazBYOE51STJyZ3JSOTRDSnhjSms5MWwtb3owbldhTUFocHJubjJfd3hSWEdOYXkzNmJqU3EzWXhNMXN0dDFNN1JjenU3UTJQei1mZGpHWUFOSHZxQUtYUTZpbUphQXNwbE50Skh1SUp1andyTlRQd0ZzNGE5bDRkWHdNMDRRSWZoYzR5em1icDlYRjdVWVU0MjNXTWhRU2RMNUpaTld5QXVxOEFuRzdtd2dTUDNUMjROVGh1U0Z6Zjd1Tk5ySmdfUFk5VUNWcmlPS3FEN1lVS0FSZ1FFQ0EtTmthbG5YU0V1VEN2azJpZkVYOEh6cTJJbDV3TEZyOVFKVjBmT19EUkNyUzVzRHVaVmJ3RDI0Y2VqT3libWd1VWFuTDhiMklqS3h6TFVPT2tlMkVPNVRRTXRQUWZjeTYydkV5c2NwQzJFYXd6YUN2V3ViMVNXS2RZVnUtcVBzdFV4eWlPUHNpcFR3V1kzTXVNRkpwclNscWFVUDFJa3N6M0Q0VGpqSElzb0c2TUFsbFRZcUItSWpuSEhmYzI2blM3cmExeVVjbHRIRWtEd3Q4R1I2bmctNk9XNWJtT0J2VFFDamRUUDhSbXZ3b2tIRXZGQTlXbGs2OVZIVFpFSlNaNGdRZXFzcW83SEJJQ0h3dlViOW16YkhnaU50bGQ1WUFHT3V1U3BOTE1UcTM5LTMzVVZoTjBLa0hLUXZCenI1OXFmaFBIU3lVRnVMZzI4b2pYMGRvb3gySlFEZ1BobHZVYkR3cGluREJqVHBiMDdsY09EYVI3ZWN2M0tDOUhJQVdreDlhV0lza21Yb0FWYVNWTDBsZ05NQzNHVkxSMURfcGVoQTZySWs2Rl9qbDY0N0w4SERqRFJEbjZRRnRIa21BYW10TU9WSzdPMS1UXy1UTldwaDZ3YVFOdTBrV1ktZXAyRERndDk2enRYUkZTVWdNOXJMMnk3OENOMkVFWW1mQUktM1VjamdUblUxRnJXaEZ3dC1JNlVmNFZwNlY4XzZxTjJzVDJyeWFLWHo0Y0JJY0NoNm8tS0RpOW95SDV3MFF5eDhWb0xTNlN0YVEyYU5FejlKamctZ0N4aVp0Q1JYeWlnaWx3NTQ5VWFWMldreHR2bDZkeWRmZmFTM2ptYUxqaDRmOXhHa1JQRUdqZmZvMVY0dUN5QkI5QkNoaVVCZG1qVGxlVlJROG5Ccm5WQW5qYXVIYTRsV3VkNkhjSzU5VjJNTlpNTVdtS0tvb0E4cWtuMzVUY25EdXluSjJITUNnZElCSnVQVU9TeTI1QnhuZnA4RU5NSlZrV19UeU9uTXk5b3JtNTVobHhmSjRENThad2FRREs0QWlFZk1IVHdJc09uZ2pnU0o0S1JDdjFRa1NVeDdYRVhNU0lNUWtUYTBqS19aNS1PQ1ZNc3NBbzEzVzg1VlFKbVpDQ0tZRzZWbS1ybnVYSUdZZlZWLTg1OG93OEJZUGhDYVRhVzRkVnBLWERDRDVfc1FsamdJSnd0Vmc0T0RKY1dxelJpWWpUaXMyVzVjdlBvT1haNUIyZnFaVTlCWGVPQWM4S3Y2a2ZDVWp0OFV5UDFTaGswN2xtZ1A5b25PMWJ0eVc5VnhQSE5uUHcxNjZDeXJmVVcxaEFHQjB1YTFNYmtEVTdfdk40SlowY3VWNV9iLW9sUm80eV9yeGQ3UGRWREJsZHBWTUxsV3haLVhiV1VqdFpTVndaT01rOEtvV2F0bld6NVI0S1ZLNkFnbWJFTHhpa1MxSjYxZ1lJNlhTcm8wRnF1N0dNM2JXdlZQYm1xR3Q4SV9UcjNHamlKeDZ3OUhvZGlLbEZQc2JMakE3OWJuSG5DcHdwSEZBWGI5d3E3dmMtSF8wTU1WVGw3eE56bzhIZ1FfR2tPWEl1OV9uMVJiZS1SRDRXUmlId1RuYm5ZbXpHNjN4b3dHTlBJN2c4R203ZkxfTnpDWGhveDdUSUhXMjh0WFFCeVk4ZmR3X3YtMUtvU2lhSjNwNHBJUnlRQm1rQnpmOTlGRlpPS2g1bUxLMnBrSE9INWFlblFFNng2cHFDakNkcW53Uzk3eGJ0Skp1TkF4M1V6UDdHM2l5WlN5ZWw4SEd0YU1UZVdITzFuaE9lZFNlcTVhaGk4dEFFeVp2MFFScUxsQTRaQUxrVGh5ZUNZckpBd1cyaUJaOW5DRUVnemxqT01wdTJndHpDRnk5WktZWUloaWZKdVQ3dlBHdVhGTUtLVlg0WFU5ZmVoOFhIMUVWbnZ4cENuRjl5eEZneThuVW5CdUdsRkVWOFVCVU5oOE5BcElZY3BlTDd5Q1F5bDZQN3Fock43SEhINEloNmhLS2lVaUItWjRNMHJUSk9mZkd6MFhGWmlaSDdYT21KazBNc3pCbEVhaEFFbjJTU1JaaVFXTThsRFRRcEdrX0p3QkpRX1FVTmtMZnhCcHpsSzBUMGFxS1d3M2doWFktT3FqelM4cTFXOHVBYzNabFRUMFZHRWdWdU8yNl9vRXpXTnZYYnpKMUVfVEFxUkVWS0xfOWFlem1zM3JqYy1GdldSR2pMV09OTXhUdGw5ZzE5RFdhbFA2alJlUlJFeEg3djBLTEdvSHV1RW5IVHNQX2hsMnZuM05WWWl3dFFualFCOXpiMjZKRmxwZzZFaEF1STN4bFZMM3hwRE9qZUlPNXM3MllKY1MzcjAzYkIzbTVHMUljRVU4SkR2WTF5MjJQaG5iOGVmNno1cmk4RDY5clVLWThFOXFraExXYVhOMjRTLTZBYjNRZUtKcmxIR09yaEc2ZkpCdElqTF93Rk9kWjJqOFo0bVBZdmJaNUNEUTdnM01yYVh1aVJ6cWdvdXk3TkliempzOEZETkQ4ZHNMR1Z0OUNLanRVMnR5a0JrSUpQZlhrZ3U0LUpSVFRETjNINGdwek9md1B5V18xOXRMdlBKNEpRbHlzbnhKaEptSW5TUEtUUTljclJHVFFlS0F3THZZemdCMG5QWkIxd2dQVWJHaXRsaHlTV1pqbWplVU5oSnNnb0Z3ZHRFdTloTjRDejROWUVLZ1ozWnBKTC1sZmVJbmp0VEIwN1A4dWtpV3FHeGNBaVI5TDRPdl94VmxNYm9hblduNENNLThVSnZjRGhVRGtpTGt0eHRJOE03Zk01bngtMkFSX3MwcnlDV0F1YmVmQUxRdHVEUnQ1MVZrZnlJZkJ2UWFyb3dINnpIX1ZfZ1lJWFdOdDlvTElMT3FrNHlqcmR5Z0ZXWTl2QXZQN1Y4Q1lraUZuSVVrWGNaeUNsT2dmcTM5bXRKeHBMM2Nzb3VaWFRIcDExZ0xibWRUNUVTbjIwRThiblpEcTVvSEVEWGxPbGZHSE9ldmx6RnRCX1V4R1h0S1lYOUoxQWlLekJyZGI3QmJvemRFcDAteHVpeTZYRFp1Yjc5LW1LcnVQTDJaWWIxaTVoVmpRQUN2RnAyUHBaT2k3eFVmSlJoT0Z3Zi00OUphVE9XTjMtYVhVb0N1a0NpMWdqODhkQ29QWWNVdWs5WmxNelpkV1hJcDlnQ1gyN196U0U1WURCYWlWQ1dPc3c0Q0pGYmMta1FUOUNaMzRkU1hiczZ4S1N0OS1haHI5b3NpY2JHY2laMUlDV182WWRLM0l6ckh1UUV6TnNDQ0tEdW9iVVFRZFpBUlFMeWFlR2w0NWczN21Gb0tQN2J4b01aY1AzRjB3MzdBR0xMVzFjVi02dU5uaWhZQ1p0dThZckZQdWF4aF9VVUxPTk1SZXN5TFVsRHVydmxuQVV5ajFVMU1TbEMxTGtPbV9VV29NdVBzX1VqU2M3SDc3RTgwcmd2QmZCQTdaMkRQMmpWOFFRUmI2Q1RieEtpRkk5TFhmRlI3MjlFcURZVXVRRUk1ZDN0Y3liN3U4TzJlQnZfVGo5TzRPREx5Wjk3Z3BMdVZ3dUpVb3FqQVJnRU91U2lHdWwxaFJxYTl5NlZ0ZmpMNE5qajJJYjFsY2JyQS5OcXpkcGU4Yjdxc2MzQmpYRlhaWVpR" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/BackupSecret-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/BackupSecret-example.json new file mode 100644 index 000000000000..cfb9e1945665 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/BackupSecret-example.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "secret-name": "testsecret", + "api-version": "7.2" + }, + "responses": { + "200": { + "body": { + "value": "KUF6dXJlS2V5VmF1bHRTZWNyZXRCYWNrdXBWMS5taWNyb3NvZnQuY29tZXlKcmFXUWlPaUppTlRjMk5ESTVaaTB5TlRZNExUUTFZbVV0WW1aaFlTMHpOMlZrTURkbVl6QmpPREVpTENKaGJHY2lPaUpTVTBFdFQwRkZVQ0lzSW1WdVl5STZJa0V4TWpoRFFrTXRTRk15TlRZaWZRLmhERDdfVW9aU1ptR2JYN1dYUTU5WDkxZ0FQb05kdDcwZE1BbmgzbjQ3eWNjbkRNOU5vTm1hY0NHZmlNeUwxU0FlZDk0UjhBNDAtVE81TDNfQ05Qal9pdWIyaW03Z21nbHNPNnFFUVVIWU1tOEh2Wl9odFRrdEl4QzRPWEowYTB0S2hscnczZlBvVVFDZHVGcFg0ekEzYTR4VTZXTUNfYjZZVXZqUjZnSGM5TFRUR2tIazh1RTY0aVQ4cmt5RDRrU3RNcXhnU2lfRVZwUUdjWGdfNE9wQ1dBOUFha0N1NkpybGRaQW9BLUtXTWpQbGhaWHFYWGMyVkJlbUJjRTQ1YzY3QWhqYjJrSi1uQ1c5dHBjWS1JZ3JEUHFzWkswOS1WbHVtcl9SbzQzcG5FeW5jVFpTdzZlX1h6VnN0dUFOZHdiM0E2OVR1c1hfYkJKZ0J2SGQ4cDJSUS5WMTlhMVRacjZ2UjJHdEVaWGtOOXJRLmhwMU5IMmwtZklWbVgwWlNfTlRzekJfUEs1aktDUU5rSnJyRUhRQmZjQ2VjdHhmVU5uVlB6MVBqRWNDblZuV0pCUk4zTlFKZm01MjFLRHp1MzBIVUFEUGVmVHJyMFVFS2x5QTM2cThoWFY3VTdoQ0dHNk85NVpYclRsZlVENDI5RTNTNTQxdVBmWGpGR2cxbHlucFNTNnAtVkFzaXFlY1lpQWNuM1hhNzRhUm5xS3N3ZzhyU1ZOX09hSVU3ak1VVUhYZWY1ZmN0NlFrdWFfYkt6Z2dtR2ZiT2RTdVdNRmVQaF9mMkJMUFNGN3k1NThEMFZxSVlNY0JJR0dMU3BQUU93Q094OFF3Y3NVUEp4ZDFuWkVYYjRVNEJZYlhBcmFMX0NwekYxZlhYWVBsdmVUSGdKNVdrR28tWXNJVzAtT3ZqVGdLN2hIamxpR1psd29HOVUtbTJSVDZfbkhseHhVRFMyY3JseGNmay1OOTlXd0tEdUxFMTM5ZE1mN2RCSEl1aTdxd0RXdm1TN2JMTHYzM05Wd19XSl9DT1VGQjgycy1ELXk0UEdIRzVackhsSDgxa25mLVpRblU0SmZfY2lhMWhmWlY3ZFMxb21UZDQtNnJwZmpTMGxFT3VfZTQ5bUpYUGFpZ0hyLWFQYkFzTXJJQ2JvOUVIR2IzMXJ5SlR2QXF2ZmJDbU10bkdLUDV6aUNiZFh3SU5ONzBJTk5lZnJLWGZkZFBUd0RSV3d1ZkxCcGNlU0U0SG5EWVZVQmdkMDl4UUZidG12UDhhTXhhUlpGSTNpWG1fbmpCNmZfdlNhZUNUakdVYVVuRE1QQkdOQWQ5T2xVX3dvUnMtalNCVnVqd1FQSGlGcm5RWElkXzBRdXRYSm54cTU4aUtlTGJvNDJtOHgwaXBRcnB4aEZoUDdHNmZOWXAwVmxXR0RxZ1Q0VlpPQkZsZWRKUU0yaDQtb2xTbXdtUms0M0Y1cjdKd3h4aENqU1JReWx1MGEyQ0ZONWMyZjIxTElZaFliLWNReWFXMDNpV3hsb04zWld5cDJIb1FlUmZPR3lXUzBiU2NBT3JndGpBYnJaUFIwMGRRNnpSOHNBczFYUzh3dzBlaVczbFpsdjJwVWFxOVpTeVhnTS14b2NTOS1ueXRaWGtWWlUwX2dDVXJBV0ZKNG5XdW9oTGM1RkkyRWFQNWR0SXVWa3dnbXlsR1gtYk9ZeHp3dzVGYmI1V3VEbnJ5aDBMSnVic3Q4VXdLdnl3bk1jQ3duMjZSVTNxQVRudGJubVhJS0FyeGkwMldQVk9oTXdpUWZuX2h1TWk5emp3MEVuaXNWdktNWUNnR2xqNWlGZW5Tc0FKUXBiLUY4bng3OWFJQlJaTUc1a0huUDR5dGxmNm9FTkRsRXNJY21aeEtOdEIzcmJPdVROYUhLTXZBNmxSNzlMMDJZSTZrcEdrUUZnaHpIaTBjTWkwbFdCejRTM1AzUEMzZElZSVlQZ0Q2S05kT2FLWHkta0dWdUlsWFNmVlVrMnpzM0NBeTJhZEJjV0NMV094ZkRoQnlwNTl4MHpBRExvdnZySHRLOWF6TGN3N0lTbVl6eUhYMkpobVdReUYtTFd1VzhfcW41SkFVYlB5Z0RTRDYyMi1PTGZQVDZmc2VTWUVBUTFLVWRwZTFnSV9hZWxVT3FaRWN1aE5SckU1YUp0LTN5TEVLVWZIWXF6WTlGbHJrUE5MUC03Y2xRbmEySEhfZmMzZV9LTGtGUDFhQTJjM0RVaERseGhsTzB2bFVmV0c5eXpXaDNZN0NmRFlFMlBaUzZBcFBlYy0wa1NDcEVKMmtCcnFzWG4yeDJDX0FDdTdCTTVGZXNJQkN0M2NqSEdQSVVQRnEteGVmT0RCXzBQcXZDTXpBOHg5Zm10Ny1sNHhVQlJaa0dtZExhZFoxVzdFUXRNRVpsSWMtbDF1V1UzTU15cFZpVWR0OWxJUHVQVUEwc1NrbWxrTGhNSjgyNE5QN0hyVi01dC1ZNDcxaWVKMHdEUjFxMmU4MU8yazdNeTFlTDY3TlY4OVBHYU81SVR5WG1ueUVXMGtVbl9qa3l1UVRkV3dsS09HZVZIYkJWNFpxSXZHWjdQUS02TEE5eXc3a0dyZFRhVFZXOEdOOV9GY1c2VUhjbzA0U3dqTzY2S2x4VlFJWWpBdEZPZlBjWW5xNzF1RndyQS1UZHVDZG1sUFBHOVpjc2tiQmdrbF8wVk90dmhuc0pwYXZKZ2Zka0d3OF9qMkQzd0Jzemd0VndHNk9nNW16eVFwM2pFc0w3UmNtcXd6WFBOaDdKYXdHVDBJMlRvZHYyQ1Z3MDkzWjJlODFXR1NxRnlIejAxdjFBaGN2T2VWdmFjUGM2Y1JJaVduNW93ZF80d2FBdjlyNjVVdmtWa1FLRXpHUmo5eTZILXdZTTMyV1JyMzBlOU9MRTNKUU5POV9kNjRTRmIwSjZHa2VxUmtnNkVXc2xqN1JYLVU1VlhrS1BtMzNpS3c5dGU2NVBqQUNnZThRVDBYVWZEaUx5a1pGeUdpZ09ZMS1TVDFxUlE1eUhMTXhEc3BPRjFXd1lMQ2c2b3hocTlWMm55Z0U1cUJ2ZnYyWUtFaDdjM1dWNjJrYkw3UXJ2d0xkMHVRZ1FwYmUza3E3dGJzcC1lNWlud3cyY0YxQzByeHNScGZJRHlJMmg4b2xHMi1RQUZkWmtlMUlmaE1FZmNfdUdXX2pqSGJSWXVzYnZCRnpKMDdaOVJsVnFMR1A2WXBnTDFsRTFOY09xUVJyYVdxckdDTWZ6SzZMVENQSl93aHJRam9WTzdVRDJIUEVnUjZ2S3U3cWlmTmo3UjE5OUJuRi1EZmlnbk1TYTFKZkZadDNuVXVZOEhMUXRoUzN4MUMxOE50d3dsaDVuNGxYS3d5MERHenljbVNweE05QkdPNTFRckFmSXRfY0xHbUlzMlJ4MzMyeDRIdEZ3Z05nRzFBazNIUno4TlJ4V3lhNWhjb1NoYURXekhES2gyOVp3Vm4wYXVzeWJpal9uNlFGcnZZbjRSOHdPNlRQV3FrS09JcHkxc1lQNWxyNDc1anZSRVZGaFdCWDBiUXdJdnNlM0Q0a0dFQzgzU3FWYkhxY3phZTNwOFNxaG5tQW5ZYzBIbWp4clJfZUMzT0hYVFBGUFZmNDlVWHdrQjIwY1lvcjJ1dzBaTzJ2TUg3S1QwcjBSWDBQVy1qcGpORFpjSGRSNVVCMXFacGlWLWxaYkw0eF9IZW14aWUxY0RPOHNQSXhIOElUSWtOV0tTR1N2eWdraHBBbGl2RzVEZXJObElkeFE2c0tHQ3RtMDEyT2xjN2thaVFaNHh0TjR5ZVpPU2xyS0s0OTlIcWhObzhkNTNsbFFfMW5ncWlHbzhUSDlzWkFrclYwclc3dkJOSF92UlhBdTc2MnlpZGhZUURYYXJXSEFUMm9DU2hEN1lOdnotekoyZGtEajJMcW5CdFNCWFh5T2xsM3o0ZWFITDd2MDZ1QTgxMVBKQU5YZUdoenNaNFVQQUQ2Q0E4cGlxSHB4WGkxODRHNEJETVU4S2VHeHZLWnJiUlNOT2pTOFNrQUJKZERfSklIZ1RhNEFhNzdPUmNZcVY3OWZ5djFZVHNma2lLR2NUYzZIUjZzUVpsamt2U0NQNjdtTTRGUHRqTHlfX1pDQlNwdnRSVWd5UlpNM1dSOUViNHkxa29uRG4zUjMzN2lpSzdfbGtIa1UtZ21VbUpZUVdnUjYzT01pZUdRUHdNR3BSZXlRWE5yckJVTDN2Z2JYdjlac1ZDcDh1NHRwQjBleXJvUXgxZC1KSWJvOWVyR1VlX0ZzU1Fpd0tIaGFIUk02Nzh5dENkcHJFbDBWeG92TFVrX0xNcTFjN1R4MG5jbFl2WE4yUjhEMXNhU2FibkJSd19CU2tZMFNMSXdhb2RpY2o2ZzdLd0ZfMXB2eThhNF9LbnJNLUNkenBvdHA0aTd4QUJuY2JRVUEwWkpsYlp1elRpR0F4ZjFnclk1Z0dZOTVoWi1XZG1lOWlSazBHRTJGN3d4MlJyLUVvS3lZRjNjak0xMWt6MWFmME9fNFdyOXJoU3JrX1NHU3l2a3ZCTW9NZ0xOX0tSS1BlTjlqUnpwRlVST2VnN2NCbGlhdy1odnZhY2lCeDN2UWRqTE5jTldQdU1UbzVmME1QbmU4TUtXcFBoWjBySElMaEVuYW1pcG82X3pzNjczcE9ma09FS0JWWE9mUDEzR0UwS25SWTBab2JPLWRub254LVdBY1dodFZvX08xbkwwTWE5ZXFMMURhRGhJU0JNbVRIM1hkY2dDTnF0emIwcVMtS1l5Mk9zRzZOakRDVEM1aEI3MXIwU09WMUprNFV2QjdYemxTTW9YUXJnTzF2ZFVwSGtxaVhUM1RJZmlQMWRKcDEweDlSMlp5R0lzUzljQUtNMEZyMGRxQmJmQy16NTJpcWZweW4zUVVqb1Fld2hPYnJwUEZGOF9lUmVNRlIwSXZjUkxnMHpwek56UzU1N1pkQkZhemxNTThLcnkwN2QyUDAyTnZtclUtN1ZjOW8wZm1qem9WOHVVTG9PMkJHdmFRdnFJNmtBTmQ5VWo1X2JkY2NVUzBhcklzcGFZa1UtUXQtNnQxYU5YUUdGZEtUbFMwSVowek54bkNIZWRySEE4SkYtOFg3d1ZpRW1McXJQbU1Sd25sbWx3SnhxLVlReWMydmdUallSbUxCVU5TS3VrZkJsa2VnMmlCRWdySksxVlNyRWswX0ZvOXkzV1EwVlZuNXhEZXlGc1JuWDI4Tkl6alFQLVNXaHhYbzdPYm5YY1cxZHlWNE1fYjdzM096cEMwOTJWcGZYQkpaTDhBeHgxNGY2TmJzTEpXLW95VEdsaTJFb2FCZHJKQ2JkQlNOdWJlbGdRRmU2V2hqSjRGdlNrYVJISjFTT3ltbGFtQmYwaVNDOGM2X1g2SkZORjNmOXYuQjc5SDJvbVIyTU52SndydHVzclJ4UQ" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/CreateCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/CreateCertificate-example.json new file mode 100644 index 000000000000..25d1be0668f1 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/CreateCertificate-example.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "selfSignedCert01", + "api-version": "7.2", + "parameters": { + "policy": { + "key_props": { + "exportable": true, + "kty": "RSA", + "key_size": 2048, + "reuse_key": false + }, + "secret_props": { + "contentType": "application/x-pkcs12" + }, + "x509_props": { + "subject": "CN=*.microsoft.com", + "sans": { + "dns_names": [ + "onedrive.microsoft.com", + "xbox.microsoft.com" + ] + } + }, + "issuer": { + "name": "Self" + } + } + } + }, + "responses": { + "202": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/selfSignedCert01/pending", + "issuer": { + "name": "Self" + }, + "csr": "MIIC4zCCAcsCAQAwGjEYMBYGA1UEAwwPKi5taWNyb3NvZnQuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAqe8aINnShK+wQC8QU7fwsviQc9+yiOnqU3adXA6qNjn21HTdRBa7cyQIk1STxHIBLTT/GaEJwqsUi6UvZaPEHokOWsr1bP9M7xOPTicBcRyMrr6bOxsmGczYtu1z2TzzXDD7q7IEignE7/LowGEaIADCIU9iuWk7TiJ+1Q/VLh/B3xPsgVjY+n7zEQ53gBiDHSl7XfELfwmslOQ28TVNogUyXsxHcVxQQYJeI7HqqY448LeleK69Ld86lkBixLEm1pD7HSbEx3WI2lyUQAGR6hD3YFaiIWVpQeEyI7p1jmtQlnfZdEL4q9wdlEEcwd3h3PAZpEBhCixahF54fci3pwIDAQABoIGDMIGABgkqhkiG9w0BCQ4xczBxMA4GA1UdDwEB/wQEAwIFoDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwNQYDVR0RBC4wLIIWb25lZHJpdmUubWljcm9zb2Z0LmNvbYISeGJveC5taWNyb3NvZnQuY29tMAkGA1UdEwQCMAAwDQYJKoZIhvcNAQELBQADggEBACiLeghirF+yCuYGVUPDB3wKQJn2iLY1za9ncxCehIVqOkFK09AphzoxF6Yid90AKCaa/dT/Ohm7oTyVQ+YcZnT00LUNFVG48AOE8YDiw9tjAG9OORsAz80xnv2qaLw2TCVIQ6NjrI83LqAm1GJ8rAnpdD/ZTuWM7TvSO5g/jm/Q0oSuKpMgj3YxpwgB9Ac6YEfVzOnm76OkUcpvR5MS4BoTfRv4thdSnU+uwqxM+HtdSVTbHQeC2U/hM1cyzDMpl1rZRklmiEOoPUeDasEIBVTJhAxR8xAeKJJD7Wzj4mJPw4UMvF8zQZzW8EKYvB1hkVYY+HQ85L+XcXd8lco7hU4=", + "cancellation_requested": false, + "status": "inProgress", + "status_details": "Pending certificate created. Certificate request is in progress. This may take some time based on the issuer provider. Please check again later.", + "request_id": "6faacd568ab049a2803861e8dd3ae21f" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/CreateKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/CreateKey-example.json new file mode 100644 index 000000000000..7b85f41c1fbb --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/CreateKey-example.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "CreateSoftKeyTest", + "api-version": "7.2", + "parameters": { + "kty": "RSA", + "key_size": 2048, + "key_ops": [ + "encrypt", + "decrypt", + "sign", + "verify", + "wrapKey", + "unwrapKey" + ], + "attributes": {}, + "tags": { + "purpose": "unit test", + "test name ": "CreateGetDeleteKeyTest" + } + } + }, + "responses": { + "200": { + "body": { + "key": { + "kid": "https://myvault.vault.azure.net/keys/CreateSoftKeyTest/78deebed173b48e48f55abf87ed4cf71", + "kty": "RSA", + "key_ops": [ + "encrypt", + "decrypt", + "sign", + "verify", + "wrapKey", + "unwrapKey" + ], + "n": "2HJAE5fU3Cw2Rt9hEuq-F6XjINKGa-zskfISVqopqUy60GOs2eyhxbWbJBeUXNor_gf-tXtNeuqeBgitLeVa640UDvnEjYTKWjCniTxZRaU7ewY8BfTSk-7KxoDdLsPSpX_MX4rwlAx-_1UGk5t4sQgTbm9T6Fm2oqFd37dsz5-Gj27UP2GTAShfJPFD7MqU_zIgOI0pfqsbNL5xTQVM29K6rX4jSPtylZV3uWJtkoQIQnrIHhk1d0SC0KwlBV3V7R_LVYjiXLyIXsFzSNYgQ68ZjAwt8iL7I8Osa-ehQLM13DVvLASaf7Jnu3sC3CWl3Gyirgded6cfMmswJzY87w", + "e": "AQAB" + }, + "attributes": { + "enabled": true, + "created": 1493942451, + "updated": 1493942451, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "purpose": "unit test", + "test name ": "CreateGetDeleteKeyTest" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/DeleteCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/DeleteCertificate-example.json new file mode 100644 index 000000000000..190694116bfc --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/DeleteCertificate-example.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "importCert01", + "api-version": "7.2" + }, + "responses": { + "200": { + "body": { + "recoveryId": "https://myvault.vault.azure.net/deletedcertificates/importCert01", + "deletedDate": 1493938558, + "scheduledPurgeDate": 1501714558, + "id": "https://myvault.vault.azure.net/certificates/importCert01/f00e72f0ddee4dddadc27c0f605d84d7", + "kid": "https://myvault.vault.azure.net/keys/importCert01/f00e72f0ddee4dddadc27c0f605d84d7", + "sid": "https://myvault.vault.azure.net/secrets/importCert01/f00e72f0ddee4dddadc27c0f605d84d7", + "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", + "cer": "MIICODCCAeagAwIBAgIQqHmpBAv+CY9IJFoUhlbziTAJBgUrDgMCHQUAMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5MB4XDTE1MDQyOTIxNTM0MVoXDTM5MTIzMTIzNTk1OVowFzEVMBMGA1UEAxMMS2V5VmF1bHRUZXN0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5bVAT73zr4+N4WVv2+SvTunAw08ksS4BrJW/nNliz3S9XuzMBMXvmYzU5HJ8TtEgluBiZZYd5qsMJD+OXHSNbsLdmMhni0jYX09h3XlC2VJw2sGKeYF+xEaavXm337aZZaZyjrFBrrUl51UePaN+kVFXNlBb3N3TYpqa7KokXenJQuR+i9Gv9a77c0UsSsDSryxppYhKK7HvTZCpKrhVtulF5iPMswWe9np3uggfMamyIsK/0L7X9w9B2qN7993RR0A00nOk4H6CnkuwO77dSsD0KJsk6FyAoZBzRXDZh9+d9R76zCL506NcQy/jl0lCiQYwsUX73PG5pxOh02OwKwIDAQABo0swSTBHBgNVHQEEQDA+gBAS5AktBh0dTwCNYSHcFmRjoRgwFjEUMBIGA1UEAxMLUm9vdCBBZ2VuY3mCEAY3bACqAGSKEc+41KpcNfQwCQYFKw4DAh0FAANBAGqIjo2geVagzuzaZOe1ClGKhZeiCKfWAxklaGN+qlGUbVS4IN4V1lot3VKnzabasmkEHeNxPwLn1qvSD0cX9CE=", + "attributes": { + "enabled": true, + "nbf": 1430344421, + "exp": 2208988799, + "created": 1493938557, + "updated": 1493938557, + "recoveryLevel": "Recoverable+Purgeable" + }, + "policy": { + "id": "https://myvault.vault.azure.net/certificates/importCert01/policy", + "key_props": { + "exportable": true, + "kty": "RSA", + "key_size": 2048, + "reuse_key": false + }, + "secret_props": { + "contentType": "application/x-pkcs12" + }, + "x509_props": { + "subject": "CN=KeyVaultTest", + "ekus": [], + "key_usage": [], + "validity_months": 297 + }, + "lifetime_actions": [ + { + "trigger": { + "lifetime_percentage": 80 + }, + "action": { + "action_type": "EmailContacts" + } + } + ], + "issuer": { + "name": "Unknown" + }, + "attributes": { + "enabled": true, + "created": 1493938557, + "updated": 1493938557 + } + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/DeleteCertificateContacts-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/DeleteCertificateContacts-example.json new file mode 100644 index 000000000000..8c3ff80b5292 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/DeleteCertificateContacts-example.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.2" + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/contacts", + "contacts": [ + { + "email": "admin@contoso.com", + "name": "John Doe", + "phone": "1111111111" + }, + { + "email": "admin@contoso2.com", + "name": "Johnathan Doeman", + "phone": "2222222222" + } + ] + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/DeleteCertificateIssuer-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/DeleteCertificateIssuer-example.json new file mode 100644 index 000000000000..41ab2ac01a5e --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/DeleteCertificateIssuer-example.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "issuer-name": "issuer01", + "api-version": "7.2" + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/issuers/issuer01", + "provider": "Test", + "credentials": { + "account_id": "keyvaultuser" + }, + "org_details": { + "admin_details": [ + { + "first_name": "John", + "last_name": "Doe", + "email": "admin@microsoft.com", + "phone": "4255555555" + } + ] + }, + "attributes": { + "enabled": true, + "created": 1482188806, + "updated": 1482189526 + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/DeleteCertificateOperation-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/DeleteCertificateOperation-example.json new file mode 100644 index 000000000000..0edf0234818c --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/DeleteCertificateOperation-example.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "deletedRequestedCert01", + "api-version": "7.2" + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/deletedRequestedCert01/pending", + "issuer": { + "name": "issuer03" + }, + "csr": "MIIC4zCCAcsCAQAwGjEYMBYGA1UEAwwPKi5taWNyb3NvZnQuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEApf+kGcL+5uivj/ToYbQ15zcx3caEnpzXaX2eJgL0/Kwaz4u2/bNJ9+hoXnlOFFbCp4canVoNvgu8fw5NOu9U3gJNFQwjHeAqfsg8okZGkIk0riIpp4MMb/4GQb2y3B28AcTu2FANdzLoZzBqmQs51KBe1RONkdtqDYXIvnb5G+9+P7PCy5G//Ga0JAP6Y6P8+TrE9JLEj6Sny0ljLMpMyt4rIRAtNfKYSeiWVQmYX4jZfImIW3iq91zwMsRlrzTm80mNfHPCv7V/8NmYuh0MQgCr49lLbbKCgzDyo9h8sblVQvR5TAylpIk7bSQNf4tSdVNHnsF6CJWu6Pg31hyMpQIDAQABoIGDMIGABgkqhkiG9w0BCQ4xczBxMA4GA1UdDwEB/wQEAwIFoDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwNQYDVR0RBC4wLIIWb25lZHJpdmUubWljcm9zb2Z0LmNvbYISeGJveC5taWNyb3NvZnQuY29tMAkGA1UdEwQCMAAwDQYJKoZIhvcNAQELBQADggEBAHVjmYFs3FmecaJ1ExhK1WCFJaQJUTVbPJ1xJ93UJlLivhzI1yhQO9nMC2DKV+E+UCxceqjae6OG5LUhXfYAziS0HTc80+ZcUqrZRb5ZRt+8HU0TPbTDDqjj8wMZ4VlgQ3eXGAGesMfZV3AqWwa5itofvqm8KAmL4Yn/XMSHcKfRx3h9WnC6RXgZ8WNYK+r5o+gHlmuF7/AaNFh8UjIsjjOZQ0Yin/vA4yBEYTt1/OC7pScs3bdL9CIf4rC98qaMSf4B2W/vfrXUo0gGPYcep25jy7xnIltSY80Trn3Mty5YQ0IT+KPQcJKhbryGg6bIy4jJDwS7zkn51MR1q3kNoOA=", + "cancellation_requested": false, + "status": "inProgress", + "status_details": "Pending certificate created. Certificate request is in progress. This may take some time based on the issuer provider. Please check again later.", + "request_id": "b88791e33d9c4d609d3e3cc3d2d40d11" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/DeleteKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/DeleteKey-example.json new file mode 100644 index 000000000000..dd7792e20c1d --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/DeleteKey-example.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "CreateSoftKeyTest", + "api-version": "7.2" + }, + "responses": { + "200": { + "body": { + "recoveryId": "https://myvault.vault.azure.net/deletedkeys/CreateSoftKeyTest", + "deletedDate": 1493942452, + "scheduledPurgeDate": 1501718452, + "key": { + "kid": "https://myvault.vault.azure.net/keys/CreateSoftKeyTest/78deebed173b48e48f55abf87ed4cf71", + "kty": "RSA", + "key_ops": [ + "encrypt", + "decrypt", + "sign", + "verify", + "wrapKey", + "unwrapKey" + ], + "n": "2HJAE5fU3Cw2Rt9hEuq-F6XjINKGa-zskfISVqopqUy60GOs2eyhxbWbJBeUXNor_gf-tXtNeuqeBgitLeVa640UDvnEjYTKWjCniTxZRaU7ewY8BfTSk-7KxoDdLsPSpX_MX4rwlAx-_1UGk5t4sQgTbm9T6Fm2oqFd37dsz5-Gj27UP2GTAShfJPFD7MqU_zIgOI0pfqsbNL5xTQVM29K6rX4jSPtylZV3uWJtkoQIQnrIHhk1d0SC0KwlBV3V7R_LVYjiXLyIXsFzSNYgQ68ZjAwt8iL7I8Osa-ehQLM13DVvLASaf7Jnu3sC3CWl3Gyirgded6cfMmswJzY87w", + "e": "AQAB" + }, + "attributes": { + "enabled": true, + "created": 1493942451, + "updated": 1493942451, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "purpose": "unit test", + "test name ": "CreateGetDeleteKeyTest" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/DeleteRoleAssignments-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/DeleteRoleAssignments-example.json new file mode 100644 index 000000000000..3e6e4541642b --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/DeleteRoleAssignments-example.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "scope": "keys", + "roleAssignmentName": "roleAssignmentName", + "api-version": "7.2" + }, + "responses": { + "200": { + "body": { + "properties": { + "roleDefinitionId": "/keys/providers/Microsoft.Authorization/roleDefinitions/roleDefinitionId", + "principalId": "principalId", + "scope": "/keys" + }, + "id": "/keys/providers/Microsoft.Authorization/roleAssignments/roleAssignmentId", + "type": "Microsoft.Authorization/roleAssignments", + "name": "roleAssignmentId" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/DeleteRoleDefinition-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/DeleteRoleDefinition-example.json new file mode 100644 index 000000000000..3467578f100f --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/DeleteRoleDefinition-example.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "scope": "/", + "api-version": "7.2", + "roleDefinitionName": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "properties": { + "roleName": "My custom role", + "type": "CustomRole", + "description": "Role description", + "assignableScopes": [ + "/" + ], + "permissions": [ + { + "dataActions": [ + "Microsoft.KeyVault/managedHsm/keys/sign/action" + ] + } + ] + }, + "id": "Microsoft.KeyVault/providers/Microsoft.Authorization/roleDefinitions/00000000-0000-0000-0000-000000000000", + "type": "Microsoft.Authorization/roleDefinitions", + "name": "00000000-0000-0000-0000-000000000000" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/DeleteSecret-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/DeleteSecret-example.json new file mode 100644 index 000000000000..c563ffbaaf75 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/DeleteSecret-example.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "secret-name": "GetDeletedSecretTest", + "api-version": "7.2" + }, + "responses": { + "200": { + "body": { + "recoveryId": "https://myvault.vault.azure.net/deletedsecrets/GetDeletedSecretTest", + "deletedDate": 1493938433, + "scheduledPurgeDate": 1501714433, + "id": "https://myvault.vault.azure.net/secrets/GetDeletedSecretTest/b595353d9c39413d80626575b3b5d865", + "attributes": { + "enabled": true, + "created": 1493938433, + "updated": 1493938433, + "recoveryLevel": "Recoverable+Purgeable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/FullBackup-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/FullBackup-example.json new file mode 100644 index 000000000000..21bdba1d0e1d --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/FullBackup-example.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "azureStorageBlobContainerUri": { + "storageResourceUri": "https://myaccount.blob.core.windows.net/sascontainer/sasContainer", + "token": "se=2018-02-01T00%3A00Z&spr=https&sv=2017-04-17&sr=b&sig=XXFNfuMCHYrBx0bhemJ7PWn0xGfImMXT6LfbXWvtRUk%3D" + }, + "api-version": "7.2" + }, + "responses": { + "202": { + "headers": { + "Retry-After": 5, + "Azure-AsyncOperation": "https://myvault.vault.azure.net/backup/45aacd568ab049a2803861e8dd3ae21f/pending" + }, + "body": { + "status": "InProgress", + "statusDetails": "Full backup is in progress", + "azureStorageBlobContainerUri": "https://myaccount.blob.core.windows.net/sascontainer/fullbackup-pool-61e8dd3ae21f-1579243113", + "jobId": "45aacd568ab049a2803861e8dd3ae21f", + "startTime": 1490790000, + "endTime": 0 + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/FullBackup-pending-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/FullBackup-pending-example.json new file mode 100644 index 000000000000..a5864119c9ac --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/FullBackup-pending-example.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "jobId": "45aacd568ab049a2803861e8dd3ae21f", + "api-version": "7.2" + }, + "responses": { + "200": { + "body": { + "status": "InProgress", + "statusDetails": "Full backup is in progress", + "azureStorageBlobContainerUri": "https://myaccount.blob.core.windows.net/sascontainer/.fullbackup-pool-61e8dd3ae21f-1579243113", + "jobId": "45aacd568ab049a2803861e8dd3ae21f", + "startTime": 1490790000, + "endTime": 0 + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/FullRestore-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/FullRestore-example.json new file mode 100644 index 000000000000..a55edd614149 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/FullRestore-example.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myhsm.managedhsm.azure.net", + "restoreBlobDetails": { + "sasTokenParameters": { + "storageResourceUri": "https://myaccount.blob.core.windows.net/sascontainer/sasContainer", + "token": "se=2018-02-01T00%3A00Z&spr=https&sv=2017-04-17&sr=b&sig=XXFNfuMCHYrBx0bhemJ7PWn0xGfImMXT6LfbXWvtRUk%3D" + }, + "folderToRestore": "mhsm-mypool-20200303062926785" + }, + "api-version": "7.2" + }, + "responses": { + "202": { + "headers": { + "Retry-After": 5, + "Azure-AsyncOperation": "https://myvault.vault.azure.net/restore/45aacd568ab049a2803861e8dd3ae21f/pending" + }, + "body": { + "status": "InProgress", + "statusDetails": "Full restore is in progress", + "jobId": "45aacd568ab049a2803861e8dd3ae21f", + "startTime": 1490790000, + "endTime": 0 + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetCertificate-example.json new file mode 100644 index 000000000000..1b99549832d0 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetCertificate-example.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "selfSignedCert01", + "certificate-version": "pending", + "api-version": "7.2" + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/selfSignedCert01/f60f2a4f8ae442cfb41ca2090bd4b769", + "kid": "https://myvault.vault.azure.net/keys/selfSignedCert01/f60f2a4f8ae442cfb41ca2090bd4b769", + "sid": "https://myvault.vault.azure.net/secrets/selfSignedCert01/f60f2a4f8ae442cfb41ca2090bd4b769", + "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", + "cer": "MIICODCCAeagAwIBAgIQqHmpBAv+CY9IJFoUhlbziTAJBgUrDgMCHQUAMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5MB4XDTE1MDQyOTIxNTM0MVoXDTM5MTIzMTIzNTk1OVowFzEVMBMGA1UEAxMMS2V5VmF1bHRUZXN0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5bVAT73zr4+N4WVv2+SvTunAw08ksS4BrJW/nNliz3S9XuzMBMXvmYzU5HJ8TtEgluBiZZYd5qsMJD+OXHSNbsLdmMhni0jYX09h3XlC2VJw2sGKeYF+xEaavXm337aZZaZyjrFBrrUl51UePaN+kVFXNlBb3N3TYpqa7KokXenJQuR+i9Gv9a77c0UsSsDSryxppYhKK7HvTZCpKrhVtulF5iPMswWe9np3uggfMamyIsK/0L7X9w9B2qN7993RR0A00nOk4H6CnkuwO77dSsD0KJsk6FyAoZBzRXDZh9+d9R76zCL506NcQy/jl0lCiQYwsUX73PG5pxOh02OwKwIDAQABo0swSTBHBgNVHQEEQDA+gBAS5AktBh0dTwCNYSHcFmRjoRgwFjEUMBIGA1UEAxMLUm9vdCBBZ2VuY3mCEAY3bACqAGSKEc+41KpcNfQwCQYFKw4DAh0FAANBAGqIjo2geVagzuzaZOe1ClGKhZeiCKfWAxklaGN+qlGUbVS4IN4V1lot3VKnzabasmkEHeNxPwLn1qvSD0cX9CE=", + "attributes": { + "enabled": true, + "nbf": 1430344421, + "exp": 2208988799, + "created": 1493938289, + "updated": 1493938291, + "recoveryLevel": "Recoverable+Purgeable" + }, + "policy": { + "id": "https://myvault.vault.azure.net/certificates/selfSignedCert01/policy", + "key_props": { + "exportable": true, + "kty": "RSA", + "key_size": 2048, + "reuse_key": false + }, + "secret_props": { + "contentType": "application/x-pkcs12" + }, + "x509_props": { + "subject": "CN=KeyVaultTest", + "ekus": [], + "key_usage": [], + "validity_months": 297 + }, + "lifetime_actions": [ + { + "trigger": { + "lifetime_percentage": 80 + }, + "action": { + "action_type": "EmailContacts" + } + } + ], + "issuer": { + "name": "Unknown" + }, + "attributes": { + "enabled": true, + "created": 1493938289, + "updated": 1493938291 + } + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetCertificateContacts-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetCertificateContacts-example.json new file mode 100644 index 000000000000..8c3ff80b5292 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetCertificateContacts-example.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.2" + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/contacts", + "contacts": [ + { + "email": "admin@contoso.com", + "name": "John Doe", + "phone": "1111111111" + }, + { + "email": "admin@contoso2.com", + "name": "Johnathan Doeman", + "phone": "2222222222" + } + ] + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetCertificateIssuer-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetCertificateIssuer-example.json new file mode 100644 index 000000000000..41ab2ac01a5e --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetCertificateIssuer-example.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "issuer-name": "issuer01", + "api-version": "7.2" + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/issuers/issuer01", + "provider": "Test", + "credentials": { + "account_id": "keyvaultuser" + }, + "org_details": { + "admin_details": [ + { + "first_name": "John", + "last_name": "Doe", + "email": "admin@microsoft.com", + "phone": "4255555555" + } + ] + }, + "attributes": { + "enabled": true, + "created": 1482188806, + "updated": 1482189526 + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetCertificateIssuers-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetCertificateIssuers-example.json new file mode 100644 index 000000000000..fc0746e37ab9 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetCertificateIssuers-example.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.2" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "https://myvault.vault.azure.net/certificates/issuers/issuer01", + "provider": "Test" + }, + { + "id": "https://myvault.vault.azure.net/certificates/issuers/issuer02", + "provider": "Test" + }, + { + "id": "https://myvault.vault.azure.net/certificates/issuers/issuer03", + "provider": "Test" + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetCertificateOperation-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetCertificateOperation-example.json new file mode 100644 index 000000000000..4d2a89144b6b --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetCertificateOperation-example.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "selfSignedCert01", + "api-version": "7.2" + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/selfSignedCert01/pending", + "issuer": { + "name": "Self" + }, + "csr": "MIIC4zCCAcsCAQAwGjEYMBYGA1UEAwwPKi5taWNyb3NvZnQuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAqe8aINnShK+wQC8QU7fwsviQc9+yiOnqU3adXA6qNjn21HTdRBa7cyQIk1STxHIBLTT/GaEJwqsUi6UvZaPEHokOWsr1bP9M7xOPTicBcRyMrr6bOxsmGczYtu1z2TzzXDD7q7IEignE7/LowGEaIADCIU9iuWk7TiJ+1Q/VLh/B3xPsgVjY+n7zEQ53gBiDHSl7XfELfwmslOQ28TVNogUyXsxHcVxQQYJeI7HqqY448LeleK69Ld86lkBixLEm1pD7HSbEx3WI2lyUQAGR6hD3YFaiIWVpQeEyI7p1jmtQlnfZdEL4q9wdlEEcwd3h3PAZpEBhCixahF54fci3pwIDAQABoIGDMIGABgkqhkiG9w0BCQ4xczBxMA4GA1UdDwEB/wQEAwIFoDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwNQYDVR0RBC4wLIIWb25lZHJpdmUubWljcm9zb2Z0LmNvbYISeGJveC5taWNyb3NvZnQuY29tMAkGA1UdEwQCMAAwDQYJKoZIhvcNAQELBQADggEBACiLeghirF+yCuYGVUPDB3wKQJn2iLY1za9ncxCehIVqOkFK09AphzoxF6Yid90AKCaa/dT/Ohm7oTyVQ+YcZnT00LUNFVG48AOE8YDiw9tjAG9OORsAz80xnv2qaLw2TCVIQ6NjrI83LqAm1GJ8rAnpdD/ZTuWM7TvSO5g/jm/Q0oSuKpMgj3YxpwgB9Ac6YEfVzOnm76OkUcpvR5MS4BoTfRv4thdSnU+uwqxM+HtdSVTbHQeC2U/hM1cyzDMpl1rZRklmiEOoPUeDasEIBVTJhAxR8xAeKJJD7Wzj4mJPw4UMvF8zQZzW8EKYvB1hkVYY+HQ85L+XcXd8lco7hU4=", + "cancellation_requested": false, + "status": "inProgress", + "status_details": "Pending certificate created. Certificate request is in progress. This may take some time based on the issuer provider. Please check again later.", + "request_id": "6faacd568ab049a2803861e8dd3ae21f" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetCertificatePolicy-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetCertificatePolicy-example.json new file mode 100644 index 000000000000..c9a6f3d8fc01 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetCertificatePolicy-example.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "updateCert01", + "api-version": "7.2" + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/updateCert01/policy", + "key_props": { + "exportable": true, + "kty": "RSA", + "key_size": 2048, + "reuse_key": false + }, + "secret_props": { + "contentType": "application/x-pkcs12" + }, + "x509_props": { + "subject": "CN=KeyVaultTest", + "ekus": [], + "key_usage": [], + "validity_months": 297 + }, + "lifetime_actions": [ + { + "trigger": { + "lifetime_percentage": 80 + }, + "action": { + "action_type": "EmailContacts" + } + } + ], + "issuer": { + "name": "Unknown" + }, + "attributes": { + "enabled": true, + "created": 1482188947, + "updated": 1482188947 + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetCertificateVersions-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetCertificateVersions-example.json new file mode 100644 index 000000000000..0b4016ce05f4 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetCertificateVersions-example.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "listVersionsCert01", + "api-version": "7.2" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "https://myvault.vault.azure.net/certificates/listVersionsCert01/002ade539442463aba45c0efb42e3e84", + "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", + "attributes": { + "enabled": true, + "nbf": 1430344421, + "exp": 2208988799, + "created": 1482189534, + "updated": 1482189534 + } + }, + { + "id": "https://myvault.vault.azure.net/certificates/listVersionsCert01/7fcb3e9eb8bf43f3a6ff4b9c3740801d", + "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", + "attributes": { + "enabled": true, + "nbf": 1430344421, + "exp": 2208988799, + "created": 1482189532, + "updated": 1482189532 + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetCertificates-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetCertificates-example.json new file mode 100644 index 000000000000..6c59b53dde50 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetCertificates-example.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.2" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "https://myvault.vault.azure.net/certificates/listCert01", + "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", + "attributes": { + "enabled": true, + "nbf": 1430344421, + "exp": 2208988799, + "created": 1482188987, + "updated": 1482188987 + } + }, + { + "id": "https://myvault.vault.azure.net/certificates/listCert02", + "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", + "attributes": { + "enabled": true, + "nbf": 1430344421, + "exp": 2208988799, + "created": 1482188988, + "updated": 1482188988 + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetDeletedCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetDeletedCertificate-example.json new file mode 100644 index 000000000000..371b53b8bcb9 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetDeletedCertificate-example.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "getDeletedCert", + "api-version": "7.2" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "recoveryId": "https://myvault.vault.azure.net/deletedcertificates/getDeletedCert", + "deletedDate": 1493938292, + "scheduledPurgeDate": 1501714292, + "id": "https://myvault.vault.azure.net/certificates/getDeletedCert/f60f2a4f8ae442cfb41ca2090bd4b769", + "kid": "https://myvault.vault.azure.net/keys/getDeletedCert/f60f2a4f8ae442cfb41ca2090bd4b769", + "sid": "https://myvault.vault.azure.net/secrets/getDeletedCert/f60f2a4f8ae442cfb41ca2090bd4b769", + "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", + "cer": "MIICODCCAeagAwIBAgIQqHmpBAv+CY9IJFoUhlbziTAJBgUrDgMCHQUAMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5MB4XDTE1MDQyOTIxNTM0MVoXDTM5MTIzMTIzNTk1OVowFzEVMBMGA1UEAxMMS2V5VmF1bHRUZXN0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5bVAT73zr4+N4WVv2+SvTunAw08ksS4BrJW/nNliz3S9XuzMBMXvmYzU5HJ8TtEgluBiZZYd5qsMJD+OXHSNbsLdmMhni0jYX09h3XlC2VJw2sGKeYF+xEaavXm337aZZaZyjrFBrrUl51UePaN+kVFXNlBb3N3TYpqa7KokXenJQuR+i9Gv9a77c0UsSsDSryxppYhKK7HvTZCpKrhVtulF5iPMswWe9np3uggfMamyIsK/0L7X9w9B2qN7993RR0A00nOk4H6CnkuwO77dSsD0KJsk6FyAoZBzRXDZh9+d9R76zCL506NcQy/jl0lCiQYwsUX73PG5pxOh02OwKwIDAQABo0swSTBHBgNVHQEEQDA+gBAS5AktBh0dTwCNYSHcFmRjoRgwFjEUMBIGA1UEAxMLUm9vdCBBZ2VuY3mCEAY3bACqAGSKEc+41KpcNfQwCQYFKw4DAh0FAANBAGqIjo2geVagzuzaZOe1ClGKhZeiCKfWAxklaGN+qlGUbVS4IN4V1lot3VKnzabasmkEHeNxPwLn1qvSD0cX9CE=", + "attributes": { + "enabled": true, + "nbf": 1430344421, + "exp": 2208988799, + "created": 1493938289, + "updated": 1493938291, + "recoveryLevel": "Recoverable+Purgeable" + }, + "policy": { + "id": "https://myvault.vault.azure.net/certificates/getDeletedCert/policy", + "key_props": { + "exportable": true, + "kty": "RSA", + "key_size": 2048, + "reuse_key": false + }, + "secret_props": { + "contentType": "application/x-pkcs12" + }, + "x509_props": { + "subject": "CN=KeyVaultTest", + "ekus": [], + "key_usage": [], + "validity_months": 297 + }, + "lifetime_actions": [ + { + "trigger": { + "lifetime_percentage": 80 + }, + "action": { + "action_type": "EmailContacts" + } + } + ], + "issuer": { + "name": "Unknown" + }, + "attributes": { + "enabled": true, + "created": 1493938289, + "updated": 1493938291 + } + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetDeletedCertificates-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetDeletedCertificates-example.json new file mode 100644 index 000000000000..1a4afa6a5c48 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetDeletedCertificates-example.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.2", + "maxresults": 1 + }, + "responses": { + "200": { + "body": { + "value": [ + { + "recoveryId": "https://myvault.vault.azure.net/deletedcertificates/listdeletedcerttest0", + "deletedDate": 1493937659, + "scheduledPurgeDate": 1501713659, + "id": "https://myvault.vault.azure.net/certificates/listdeletedcerttest0", + "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", + "attributes": { + "enabled": true, + "nbf": 1430344421, + "exp": 2208988799, + "created": 1493937658, + "updated": 1493937658, + "recoveryLevel": "Recoverable+Purgeable" + } + } + ], + "nextLink": "https://myvault.vault.azure.net:443/deletedcertificates?api-version=7.2&$skiptoken=eyJOZXh0TWFya2VyIjoiMiExMTIhTURBd01ETTVJV05sY25ScFptbGpZWFJsTDB4SlUxUkVSVXhGVkVWRVEwVlNWRlJGVTFRd0wxQlBURWxEV1NFd01EQXdNamdoT1RrNU9TMHhNaTB6TVZReU16bzFPVG8xT1M0NU9UazVPVGs1V2lFLSIsIlRhcmdldExvY2F0aW9uIjowfQ&maxresults=1" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetDeletedKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetDeletedKey-example.json new file mode 100644 index 000000000000..dd7792e20c1d --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetDeletedKey-example.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "CreateSoftKeyTest", + "api-version": "7.2" + }, + "responses": { + "200": { + "body": { + "recoveryId": "https://myvault.vault.azure.net/deletedkeys/CreateSoftKeyTest", + "deletedDate": 1493942452, + "scheduledPurgeDate": 1501718452, + "key": { + "kid": "https://myvault.vault.azure.net/keys/CreateSoftKeyTest/78deebed173b48e48f55abf87ed4cf71", + "kty": "RSA", + "key_ops": [ + "encrypt", + "decrypt", + "sign", + "verify", + "wrapKey", + "unwrapKey" + ], + "n": "2HJAE5fU3Cw2Rt9hEuq-F6XjINKGa-zskfISVqopqUy60GOs2eyhxbWbJBeUXNor_gf-tXtNeuqeBgitLeVa640UDvnEjYTKWjCniTxZRaU7ewY8BfTSk-7KxoDdLsPSpX_MX4rwlAx-_1UGk5t4sQgTbm9T6Fm2oqFd37dsz5-Gj27UP2GTAShfJPFD7MqU_zIgOI0pfqsbNL5xTQVM29K6rX4jSPtylZV3uWJtkoQIQnrIHhk1d0SC0KwlBV3V7R_LVYjiXLyIXsFzSNYgQ68ZjAwt8iL7I8Osa-ehQLM13DVvLASaf7Jnu3sC3CWl3Gyirgded6cfMmswJzY87w", + "e": "AQAB" + }, + "attributes": { + "enabled": true, + "created": 1493942451, + "updated": 1493942451, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "purpose": "unit test", + "test name ": "CreateGetDeleteKeyTest" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetDeletedKeys-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetDeletedKeys-example.json new file mode 100644 index 000000000000..643e9167cd74 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetDeletedKeys-example.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.2", + "maxresults": 1, + "$skiptoken": "eyJOZXh0TWFya2VyIjoiMiE5MiFNREF3TURJeklXdGxlUzlNU1ZOVVJFVk1SVlJGUkV0RldWUkZVMVF3SVRBd01EQXlPQ0V5TURFM0xUQTFMVEEwVkRJeU9qRTJPakF5TGpnM09URXpOemxhSVEtLSIsIlRhcmdldExvY2F0aW9uIjowfQ" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "recoveryId": "https://myvault.vault.azure.net/deletedkeys/listdeletedkeytest0", + "deletedDate": 1493938031, + "scheduledPurgeDate": 1501714031, + "kid": "https://myvault.vault.azure.net/keys/listdeletedkeytest0", + "attributes": { + "enabled": true, + "created": 1493938031, + "updated": 1493938031, + "recoveryLevel": "Recoverable+Purgeable" + } + } + ], + "nextLink": "https://myvault.vault.azure.net:443/deletedkeys?api-version=7.2&$skiptoken=eyJOZXh0TWFya2VyIjoiMiExMzYhTURBd01EVTJJV3RsZVM5TVNWTlVSRVZNUlZSRlJFdEZXVlJGVTFRd0x6RkRRa0ZGTkVaQk5qQTBNelJGTmtZNE9FUXdORE5GTkRFM09FUkNPVFE1SVRBd01EQXlPQ0V5TURFM0xUQTFMVEEwVkRJeU9qUTNPakU1TGpVeU1UZ3dPVEZhSVEtLSIsIlRhcmdldExvY2F0aW9uIjowfQ&maxresults=1" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetDeletedSecret-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetDeletedSecret-example.json new file mode 100644 index 000000000000..c563ffbaaf75 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetDeletedSecret-example.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "secret-name": "GetDeletedSecretTest", + "api-version": "7.2" + }, + "responses": { + "200": { + "body": { + "recoveryId": "https://myvault.vault.azure.net/deletedsecrets/GetDeletedSecretTest", + "deletedDate": 1493938433, + "scheduledPurgeDate": 1501714433, + "id": "https://myvault.vault.azure.net/secrets/GetDeletedSecretTest/b595353d9c39413d80626575b3b5d865", + "attributes": { + "enabled": true, + "created": 1493938433, + "updated": 1493938433, + "recoveryLevel": "Recoverable+Purgeable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetDeletedSecrets-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetDeletedSecrets-example.json new file mode 100644 index 000000000000..4507f4f76312 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetDeletedSecrets-example.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.2", + "maxresults": 1, + "$skiptoken": "eyJOZXh0TWFya2VyIjoiMiExMDAhTURBd01ESTVJWE5sWTNKbGRDOU1TVk5VUkVWTVJWUkZSRk5GUTFKRlZGUkZVMVF3SVRBd01EQXlPQ0V5TURFM0xUQTFMVEEwVkRFNU9qSTFPakU0TGpJNE5qUXdORFZhSVEtLSIsIlRhcmdldExvY2F0aW9uIjowfQ" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "recoveryId": "https://myvault.vault.azure.net/deletedsecrets/listdeletedsecrettest0", + "deletedDate": 1493937855, + "scheduledPurgeDate": 1501713855, + "contentType": "plainText", + "id": "https://myvault.vault.azure.net/secrets/listdeletedsecrettest0", + "attributes": { + "enabled": true, + "created": 1493937855, + "updated": 1493937855, + "recoveryLevel": "Recoverable+Purgeable" + } + } + ], + "nextLink": "https://myvault.vault.azure.net:443/deletedsecrets?api-version=7.2&$skiptoken=eyJOZXh0TWFya2VyIjoiMiExNDQhTURBd01EWXlJWE5sWTNKbGRDOU1TVk5VUkVWTVJWUkZSRk5GUTFKRlZGUkZVMVF3THpZMU16ZERSRVJGTlRJNU5qUkRSa1pDTVRkQ1JVWXhORGszUXpSQ1JEZEVJVEF3TURBeU9DRXlNREUzTFRBMUxUQTBWREl5T2pRME9qUXdMamsxTnpZeE1UbGFJUS0tIiwiVGFyZ2V0TG9jYXRpb24iOjB9&maxresults=1" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetKey-example.json new file mode 100644 index 000000000000..13e2517c16ea --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetKey-example.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "CreateSoftKeyTest", + "key-version": "78deebed173b48e48f55abf87ed4cf71", + "api-version": "7.2" + }, + "responses": { + "200": { + "body": { + "key": { + "kid": "https://myvault.vault.azure.net/keys/CreateSoftKeyTest/78deebed173b48e48f55abf87ed4cf71", + "kty": "RSA", + "key_ops": [ + "encrypt", + "decrypt", + "sign", + "verify", + "wrapKey", + "unwrapKey" + ], + "n": "2HJAE5fU3Cw2Rt9hEuq-F6XjINKGa-zskfISVqopqUy60GOs2eyhxbWbJBeUXNor_gf-tXtNeuqeBgitLeVa640UDvnEjYTKWjCniTxZRaU7ewY8BfTSk-7KxoDdLsPSpX_MX4rwlAx-_1UGk5t4sQgTbm9T6Fm2oqFd37dsz5-Gj27UP2GTAShfJPFD7MqU_zIgOI0pfqsbNL5xTQVM29K6rX4jSPtylZV3uWJtkoQIQnrIHhk1d0SC0KwlBV3V7R_LVYjiXLyIXsFzSNYgQ68ZjAwt8iL7I8Osa-ehQLM13DVvLASaf7Jnu3sC3CWl3Gyirgded6cfMmswJzY87w", + "e": "AQAB" + }, + "attributes": { + "enabled": true, + "created": 1493942451, + "updated": 1493942451, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "purpose": "unit test", + "test name ": "CreateGetDeleteKeyTest" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetKeyVersions-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetKeyVersions-example.json new file mode 100644 index 000000000000..72300aa42e13 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetKeyVersions-example.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "listkeyversionstest", + "api-version": "7.2", + "maxresults": 1, + "$skiptoken": "eyJOZXh0TWFya2VyIjoiMiExMzYhTURBd01EVTJJV3RsZVM5TVNWTlVTMFZaVmtWU1UwbFBUbE5VUlZOVUx6ZERPVVJETmpjM05VUXdSVFF4TnpjNE1qZERORVk1T0VZME9ESkdRekV5SVRBd01EQXlPQ0U1T1RrNUxURXlMVE14VkRJek9qVTVPalU1TGprNU9UazVPVGxhSVEtLSIsIlRhcmdldExvY2F0aW9uIjowfQ" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "kid": "https://myvault.vault.azure.net/keys/listkeyversionstest/7c9dc6775d0e4177827c4f98f482fc12", + "attributes": { + "enabled": true, + "created": 1493937851, + "updated": 1493937851, + "recoveryLevel": "Recoverable+Purgeable" + } + } + ], + "nextLink": "https://myvault.vault.azure.net:443/keys/listkeyversionstest/versions?api-version=7.2&$skiptoken=eyJOZXh0TWFya2VyIjoiMiExMzYhTURBd01EVTJJV3RsZVM5TVNWTlVTMFZaVmtWU1UwbFBUbE5VUlZOVUwwRXdPRUZDUVVVNE1UZ3pNalF5TVRsQ05EUXpPREZFTWpoRVJURkdSVEJESVRBd01EQXlPQ0U1T1RrNUxURXlMVE14VkRJek9qVTVPalU1TGprNU9UazVPVGxhSVEtLSIsIlRhcmdldExvY2F0aW9uIjowfQ&maxresults=1" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetKeys-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetKeys-example.json new file mode 100644 index 000000000000..c94c6b477db1 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetKeys-example.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.2", + "maxresults": 1, + "$skiptoken": "eyJOZXh0TWFya2VyIjoiMiE4MCFNREF3TURFMElXdGxlUzlUUkV0VVJWTlVTMFZaSVRBd01EQXlPQ0V5TURFM0xUQXlMVEUzVkRBd09qQXhPakEyTGpnd056azBOemhhSVEtLSIsIlRhcmdldExvY2F0aW9uIjowfQ" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "kid": "https://myvault.vault.azure.net/keys/sdktestkey", + "attributes": { + "enabled": true, + "created": 1493937656, + "updated": 1493937656, + "recoveryLevel": "Recoverable+Purgeable" + } + } + ], + "nextLink": "https://myvault.vault.azure.net:443/keys?api-version=7.2&$skiptoken=eyJOZXh0TWFya2VyIjoiMiE5NiFNREF3TURJM0lXdGxlUzlWVUVSQlZFVkxSVmxCVkZSU1NVSlZWRVZUVkVWVFZDRXdNREF3TWpnaE1qQXhOeTB3TlMwd05GUXdNVG94TVRveE5pNDNNekE0TnpReVdpRS0iLCJUYXJnZXRMb2NhdGlvbiI6MH0&maxresults=1" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetRoleAssignments-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetRoleAssignments-example.json new file mode 100644 index 000000000000..3e6e4541642b --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetRoleAssignments-example.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "scope": "keys", + "roleAssignmentName": "roleAssignmentName", + "api-version": "7.2" + }, + "responses": { + "200": { + "body": { + "properties": { + "roleDefinitionId": "/keys/providers/Microsoft.Authorization/roleDefinitions/roleDefinitionId", + "principalId": "principalId", + "scope": "/keys" + }, + "id": "/keys/providers/Microsoft.Authorization/roleAssignments/roleAssignmentId", + "type": "Microsoft.Authorization/roleAssignments", + "name": "roleAssignmentId" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetRoleDefinition-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetRoleDefinition-example.json new file mode 100644 index 000000000000..3467578f100f --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetRoleDefinition-example.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "scope": "/", + "api-version": "7.2", + "roleDefinitionName": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "properties": { + "roleName": "My custom role", + "type": "CustomRole", + "description": "Role description", + "assignableScopes": [ + "/" + ], + "permissions": [ + { + "dataActions": [ + "Microsoft.KeyVault/managedHsm/keys/sign/action" + ] + } + ] + }, + "id": "Microsoft.KeyVault/providers/Microsoft.Authorization/roleDefinitions/00000000-0000-0000-0000-000000000000", + "type": "Microsoft.Authorization/roleDefinitions", + "name": "00000000-0000-0000-0000-000000000000" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetSecret-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetSecret-example.json new file mode 100644 index 000000000000..a6bf9f841e75 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetSecret-example.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "secret-name": "mysecretname", + "secret-version": "4387e9f3d6e14c459867679a90fd0f79", + "api-version": "7.2" + }, + "responses": { + "200": { + "body": { + "value": "mysecretvalue", + "id": "https://myvault.vault.azure.net/secrets/mysecretname/4387e9f3d6e14c459867679a90fd0f79", + "attributes": { + "enabled": true, + "created": 1493938410, + "updated": 1493938410, + "recoveryLevel": "Recoverable+Purgeable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetSecretVersions-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetSecretVersions-example.json new file mode 100644 index 000000000000..3aabf272b36a --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetSecretVersions-example.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "secret-name": "listsecretversionstest", + "api-version": "7.2", + "maxresults": 1 + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "https://myvault.vault.azure.net/secrets/listsecretversionstest/11a536561da34d6b8b452d880df58f3a", + "attributes": { + "enabled": true, + "created": 1481851699, + "updated": 1481851699 + } + } + ], + "nextLink": "https://myvault.vault.azure.net:443/secrets/listsecretversionstest/versions?api-version=7.2&$skiptoken=eyJOZXh0TWFya2VyIjoiMiExNDQhTURBd01EWXlJWE5sWTNKbGRDOU1TVk5VVTBWRFVrVlVWa1ZTVTBsUFRsTlVSVk5VTHpGRU5EazJNa0l4UlVRM09EUkVRa1k0T1RsR016TXpNa1UwTnpZNFFqY3dJVEF3TURBeU9DRTVPVGs1TFRFeUxUTXhWREl6T2pVNU9qVTVMams1T1RrNU9UbGFJUS0tIiwiVGFyZ2V0TG9jYXRpb24iOjB9&maxresults=1" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetSecrets-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetSecrets-example.json new file mode 100644 index 000000000000..71e2a564986b --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/GetSecrets-example.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.2", + "maxresults": 1 + }, + "responses": { + "200": { + "body": { + "value": [ + { + "contentType": "plainText", + "id": "https://myvault.vault.azure.net/secrets/listsecrettest0", + "attributes": { + "enabled": true, + "created": 1482189047, + "updated": 1482189047 + } + } + ], + "nextLink": "https://myvault.vault.azure.net:443/secrets?api-version=7.2&$skiptoken=eyJOZXh0TWFya2VyIjoiMiE4OCFNREF3TURJeUlYTmxZM0psZEM5TVNWTlVVMFZEVWtWVVZFVlRWREVoTURBd01ESTRJVEl3TVRZdE1USXRNVGxVTWpNNk1UQTZORFV1T0RneE9ERXhNRm9oIiwiVGFyZ2V0TG9jYXRpb24iOjB9&maxresults=1" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/ImportCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/ImportCertificate-example.json new file mode 100644 index 000000000000..88168fe065e6 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/ImportCertificate-example.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "importCert01", + "api-version": "7.2", + "parameters": { + "value": "", + "pwd": "123", + "policy": { + "key_props": { + "exportable": true, + "kty": "RSA", + "key_size": 2048, + "reuse_key": false + }, + "secret_props": { + "contentType": "application/x-pkcs12" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/importCert01/f00e72f0ddee4dddadc27c0f605d84d7", + "kid": "https://myvault.vault.azure.net/keys/importCert01/f00e72f0ddee4dddadc27c0f605d84d7", + "sid": "https://myvault.vault.azure.net/secrets/importCert01/f00e72f0ddee4dddadc27c0f605d84d7", + "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", + "cer": "MIICODCCAeagAwIBAgIQqHmpBAv+CY9IJFoUhlbziTAJBgUrDgMCHQUAMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5MB4XDTE1MDQyOTIxNTM0MVoXDTM5MTIzMTIzNTk1OVowFzEVMBMGA1UEAxMMS2V5VmF1bHRUZXN0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5bVAT73zr4+N4WVv2+SvTunAw08ksS4BrJW/nNliz3S9XuzMBMXvmYzU5HJ8TtEgluBiZZYd5qsMJD+OXHSNbsLdmMhni0jYX09h3XlC2VJw2sGKeYF+xEaavXm337aZZaZyjrFBrrUl51UePaN+kVFXNlBb3N3TYpqa7KokXenJQuR+i9Gv9a77c0UsSsDSryxppYhKK7HvTZCpKrhVtulF5iPMswWe9np3uggfMamyIsK/0L7X9w9B2qN7993RR0A00nOk4H6CnkuwO77dSsD0KJsk6FyAoZBzRXDZh9+d9R76zCL506NcQy/jl0lCiQYwsUX73PG5pxOh02OwKwIDAQABo0swSTBHBgNVHQEEQDA+gBAS5AktBh0dTwCNYSHcFmRjoRgwFjEUMBIGA1UEAxMLUm9vdCBBZ2VuY3mCEAY3bACqAGSKEc+41KpcNfQwCQYFKw4DAh0FAANBAGqIjo2geVagzuzaZOe1ClGKhZeiCKfWAxklaGN+qlGUbVS4IN4V1lot3VKnzabasmkEHeNxPwLn1qvSD0cX9CE=", + "attributes": { + "enabled": true, + "nbf": 1430344421, + "exp": 2208988799, + "created": 1493938557, + "updated": 1493938557, + "recoveryLevel": "Recoverable+Purgeable" + }, + "policy": { + "id": "https://myvault.vault.azure.net/certificates/importCert01/policy", + "key_props": { + "exportable": true, + "kty": "RSA", + "key_size": 2048, + "reuse_key": false + }, + "secret_props": { + "contentType": "application/x-pkcs12" + }, + "x509_props": { + "subject": "CN=KeyVaultTest", + "ekus": [], + "key_usage": [], + "validity_months": 297 + }, + "lifetime_actions": [ + { + "trigger": { + "lifetime_percentage": 80 + }, + "action": { + "action_type": "EmailContacts" + } + } + ], + "issuer": { + "name": "Unknown" + }, + "attributes": { + "enabled": true, + "created": 1493938557, + "updated": 1493938557 + } + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/ImportKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/ImportKey-example.json new file mode 100644 index 000000000000..93d7cc152dc8 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/ImportKey-example.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "ImportSoftKeyTest", + "api-version": "7.2", + "parameters": { + "key": { + "kty": "RSA", + "n": "nKAwarTrOpzd1hhH4cQNdVTgRF-b0ubPD8ZNVf0UXjb62QuAk3Dn68ESThcF7SoDYRx2QVcfoMC9WCcuQUQDieJF-lvJTSer1TwH72NBovwKlHvrXqEI0a6_uVYY5n-soGt7qFZNbwQLdWWA6PrbqTLIkv6r01dcuhTiQQAn6OWEa0JbFvWfF1kILQIaSBBBaaQ4R7hZs7-VQTHGD7J1xGteof4gw2VTiwNdcE8p5UG5b6S9KQwAeET4yB4KFPwQ3TDdzxJQ89mwYVi_sgAIggN54hTq4oEKYJHBOMtFGIN0_HQ60ZSUnpOi87xNC-8VFqnv4rfTQ7nkK6XMvjMVfw", + "e": "AQAB", + "d": "GeT1_D5LAZa7qlC7WZ0DKJnOth8kcPrN0urTEFtWCbmHQWkAad_px_VUpGp0BWDDzENbXbQcu4QCCdf4crve5eXt8dVI86OSah-RpEdBq8OFsETIhg2Tmq8MbYTJexoynRcIC62xAaCmkFMmu931gQSvWnYWTEuOPgmD2oE_F-bP9TFlGRc69a6MSbtcSRyFTsd5KsUr40QS4zf2W4kZCOWejyLuxk88SXgUqcJx86Ulc1Ol1KkTBLadvReAZCyCMwKBlNRGw46BU_iK0vK7rTD9fmEd639Gjti6eLpnyQYpnVe8uGgwVU1fHBkAKyapWoEG6VMhMntcrvgukKLIsQ", + "dp": "ZGnmWx-Nca71z9a9vvT4g02iv3S-3kSgmhl8JST09YQwK8tfiK7nXnNMtXJi2K4dLKKnLicGtCzB6W3mXdLcP2SUOWDOeStoBt8HEBT4MrI1psCKqnBum78WkHju90rBFj99amkP6UeQy5EASAzgmKQu2nUaUnRV0lYP8LHMCkE", + "dq": "dtpke0foFs04hPS6XYLA5lc7-1MAHfZKN4CkMAofwDqPmRQzCxpDJUk0gMWGJEdU_Lqfbg22Py44cci0dczH36NW3UU5BL86T2_SPPDOuyX7kDscrIJCdowxQCGJHGRBEozM_uTL46wu6UnUIv7m7cuGgodJyZBcdwpo6ziFink", + "qi": "Y9KD5GaHkAYmAqpOfAQUMr71QuAAaBb0APzMuUvoEYw39PD3_vJeh9HZ15QmJ8zCX10-nlzUB-bWwvK-rGcJXbK4pArilr5MiaYv7e8h5eW2zs2_itDJ6Oebi-wVbMhg7DvUTBbkCvPhhIedE4UlDQmMYP7RhzVVs7SfmkGs_DQ", + "p": "v1jeCPnuJQM2PW2690Q9KJk0Ulok8VFGjkcHUHVi3orKdy7y_TCIWM6ZGvgFzI6abinzYbTEPKV4wFdMAwvOWmawXj5YrsoeB44_HXJ0ak_5_iP6XXR8MLGXbd0ZqsxvAZyzMj9vyle7EN2cBod6aenI2QZoRDucPvjPwZsZotk", + "q": "0Yv-Dj6qnvx_LL70lUnKA6MgHE_bUC4drl5ZNDDsUdUUYfxIK4G1rGU45kHGtp-Qg-Uyf9s52ywLylhcVE3jfbjOgEozlSwKyhqfXkLpMLWHqOKj9fcfYd4PWKPOgpzWsqjA6fJbBUMYo0CU2G9cWCtVodO7sBJVSIZunWrAlBc" + }, + "tags": { + "purpose": "unit test" + } + } + }, + "responses": { + "200": { + "body": { + "key": { + "kid": "https://myvault.vault.azure.net/keys/ImportSoftKeyTest/2eb4a15d74184c6f84159c3ca90f0f4b", + "kty": "RSA", + "key_ops": [ + "encrypt", + "decrypt", + "sign", + "verify", + "wrapKey", + "unwrapKey" + ], + "n": "nKAwarTrOpzd1hhH4cQNdVTgRF-b0ubPD8ZNVf0UXjb62QuAk3Dn68ESThcF7SoDYRx2QVcfoMC9WCcuQUQDieJF-lvJTSer1TwH72NBovwKlHvrXqEI0a6_uVYY5n-soGt7qFZNbwQLdWWA6PrbqTLIkv6r01dcuhTiQQAn6OWEa0JbFvWfF1kILQIaSBBBaaQ4R7hZs7-VQTHGD7J1xGteof4gw2VTiwNdcE8p5UG5b6S9KQwAeET4yB4KFPwQ3TDdzxJQ89mwYVi_sgAIggN54hTq4oEKYJHBOMtFGIN0_HQ60ZSUnpOi87xNC-8VFqnv4rfTQ7nkK6XMvjMVfw", + "e": "AQAB" + }, + "attributes": { + "enabled": true, + "created": 1493942691, + "updated": 1493942691, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "purpose": "unit test" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/ListRoleAssignments-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/ListRoleAssignments-example.json new file mode 100644 index 000000000000..9565a150e483 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/ListRoleAssignments-example.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "scope": "keys", + "api-version": "7.2" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "roleDefinitionId": "/keys/providers/Microsoft.Authorization/roleDefinitions/roleDefinitionId", + "principalId": "principalId", + "scope": "/keys" + }, + "id": "/keys/providers/Microsoft.Authorization/roleAssignments/roleAssignmentId", + "type": "Microsoft.Authorization/roleAssignments", + "name": "roleAssignmentId" + } + ] + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/ListRoleDefinitions-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/ListRoleDefinitions-example.json new file mode 100644 index 000000000000..788abd771e1e --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/ListRoleDefinitions-example.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "scope": "keys", + "api-version": "7.2" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "roleName": "Role name", + "type": "roletype", + "description": "Role description", + "assignableScopes": [ + "/keys" + ], + "permissions": [ + { + "actions": [ + "get" + ], + "notActions": [] + } + ] + }, + "id": "/keys/providers/Microsoft.Authorization/roleDefinitions/roleDefinitionId", + "type": "Microsoft.Authorization/roleDefinitions", + "name": "roleDefinitionId" + } + ] + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/MergeCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/MergeCertificate-example.json new file mode 100644 index 000000000000..63f12ec29fcb --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/MergeCertificate-example.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "testcert", + "api-version": "7.2", + "parameters": { + "x5c": [ + "MIICxTCCAb....trimmed for brevitiy...EPAQj8=" + ] + } + }, + "responses": { + "201": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/mycert1/f366e1a9dd774288ad84a45a5f620352", + "kid": "https:// mykeyvault.vault.azure.net/keys/mycert1/f366e1a9dd774288ad84a45a5f620352", + "sid": " mykeyvault.vault.azure.net/secrets/mycert1/f366e1a9dd774288ad84a45a5f620352", + "cer": "……de34534……", + "x5t": "n14q2wbvyXr71Pcb58NivuiwJKk", + "attributes": { + "enabled": true, + "exp": 1530394215, + "nbf": 1435699215, + "created": 1435699919, + "updated": 1435699919 + }, + "policy": { + "id": "https:// mykeyvault.vault.azure.net/certificates/mycert1/policy", + "key_props": { + "exportable": false, + "kty": "RSA", + "key_size": 2048, + "reuse_key": false + }, + "secret_props": { + "contentType": "application/x-pkcs12" + }, + "x509_props": { + "subject": "CN=Mycert1", + "ekus": [ + "1.3.6.1.5.5.7.3.1", + "1.3.6.1.5.5.7.3.2" + ], + "validity_months": 12 + }, + "lifetime_actions": [ + { + "trigger": { + "lifetime_percentage": 80 + }, + "action": { + "action_type": "EmailContacts" + } + } + ], + "issuer": { + "name": "Unknown" + }, + "attributes": { + "enabled": true, + "created": 1435699811, + "updated": 1435699811 + } + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/PurgeDeletedCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/PurgeDeletedCertificate-example.json new file mode 100644 index 000000000000..aa6f569aaafc --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/PurgeDeletedCertificate-example.json @@ -0,0 +1,10 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "deletedcertificates", + "api-version": "7.2" + }, + "responses": { + "204": {} + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/PurgeDeletedKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/PurgeDeletedKey-example.json new file mode 100644 index 000000000000..aaaa87078730 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/PurgeDeletedKey-example.json @@ -0,0 +1,10 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "testdeletedkey", + "api-version": "7.2" + }, + "responses": { + "204": {} + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/PurgeDeletedSecret-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/PurgeDeletedSecret-example.json new file mode 100644 index 000000000000..a3d02192d810 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/PurgeDeletedSecret-example.json @@ -0,0 +1,10 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "secret-name": "testsecret", + "api-version": "7.2" + }, + "responses": { + "204": {} + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/PutRoleAssignments-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/PutRoleAssignments-example.json new file mode 100644 index 000000000000..ce0a5d30c8fb --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/PutRoleAssignments-example.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "scope": "keys", + "roleAssignmentName": "roleAssignmentName", + "parameters": { + "properties": { + "roleDefinitionId": "/keys/providers/Microsoft.Authorization/roleDefinitions/roleDefinitionId", + "principalId": "principalId" + } + }, + "api-version": "7.2" + }, + "responses": { + "201": { + "body": { + "properties": { + "roleDefinitionId": "/keys/providers/Microsoft.Authorization/roleDefinitions/roleDefinitionId", + "principalId": "principalId", + "scope": "/keys" + }, + "id": "/keys/providers/Microsoft.Authorization/roleAssignments/roleAssignmentId", + "type": "Microsoft.Authorization/roleAssignments", + "name": "roleAssignmentId" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/PutRoleDefinition-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/PutRoleDefinition-example.json new file mode 100644 index 000000000000..3ebee9173313 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/PutRoleDefinition-example.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "scope": "keys", + "roleDefinitionName": "00000000-0000-0000-0000-000000000000", + "parameters": { + "properties": { + "roleName": "My custom role", + "type": "CustomRole", + "description": "Role description", + "permissions": [ + { + "dataActions": [ + "Microsoft.KeyVault/managedHsm/keys/sign/action" + ] + } + ] + } + }, + "api-version": "7.2" + }, + "responses": { + "201": { + "body": { + "properties": { + "roleName": "My custom role", + "type": "CustomRole", + "description": "Role description", + "assignableScopes": [ + "/" + ], + "permissions": [ + { + "dataActions": [ + "Microsoft.KeyVault/managedHsm/keys/sign/action" + ] + } + ] + }, + "id": "Microsoft.KeyVault/providers/Microsoft.Authorization/roleDefinitions/00000000-0000-0000-0000-000000000000", + "type": "Microsoft.Authorization/roleDefinitions", + "name": "00000000-0000-0000-0000-000000000000" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/RecoverDeletedCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/RecoverDeletedCertificate-example.json new file mode 100644 index 000000000000..02bba3b14140 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/RecoverDeletedCertificate-example.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "CertCreateDeleteRecoverPurgeTest", + "api-version": "7.2" + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/CertCreateDeleteRecoverPurgeTest/9ff2572a2c3145679057da8b7f6a4b1d", + "kid": "https://myvault.vault.azure.net/keys/CertCreateDeleteRecoverPurgeTest/9ff2572a2c3145679057da8b7f6a4b1d", + "sid": "https://myvault.vault.azure.net/secrets/CertCreateDeleteRecoverPurgeTest/9ff2572a2c3145679057da8b7f6a4b1d", + "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", + "cer": "MIICODCCAeagAwIBAgIQqHmpBAv+CY9IJFoUhlbziTAJBgUrDgMCHQUAMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5MB4XDTE1MDQyOTIxNTM0MVoXDTM5MTIzMTIzNTk1OVowFzEVMBMGA1UEAxMMS2V5VmF1bHRUZXN0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5bVAT73zr4+N4WVv2+SvTunAw08ksS4BrJW/nNliz3S9XuzMBMXvmYzU5HJ8TtEgluBiZZYd5qsMJD+OXHSNbsLdmMhni0jYX09h3XlC2VJw2sGKeYF+xEaavXm337aZZaZyjrFBrrUl51UePaN+kVFXNlBb3N3TYpqa7KokXenJQuR+i9Gv9a77c0UsSsDSryxppYhKK7HvTZCpKrhVtulF5iPMswWe9np3uggfMamyIsK/0L7X9w9B2qN7993RR0A00nOk4H6CnkuwO77dSsD0KJsk6FyAoZBzRXDZh9+d9R76zCL506NcQy/jl0lCiQYwsUX73PG5pxOh02OwKwIDAQABo0swSTBHBgNVHQEEQDA+gBAS5AktBh0dTwCNYSHcFmRjoRgwFjEUMBIGA1UEAxMLUm9vdCBBZ2VuY3mCEAY3bACqAGSKEc+41KpcNfQwCQYFKw4DAh0FAANBAGqIjo2geVagzuzaZOe1ClGKhZeiCKfWAxklaGN+qlGUbVS4IN4V1lot3VKnzabasmkEHeNxPwLn1qvSD0cX9CE=", + "attributes": { + "enabled": true, + "nbf": 1430344421, + "exp": 2208988799, + "created": 1493938486, + "updated": 1493938486, + "recoveryLevel": "Recoverable+Purgeable" + }, + "policy": { + "id": "https://myvault.vault.azure.net/certificates/CertCreateDeleteRecoverPurgeTest/policy", + "key_props": { + "exportable": true, + "kty": "RSA", + "key_size": 2048, + "reuse_key": false + }, + "secret_props": { + "contentType": "application/x-pkcs12" + }, + "x509_props": { + "subject": "CN=KeyVaultTest", + "ekus": [], + "key_usage": [], + "validity_months": 297 + }, + "lifetime_actions": [ + { + "trigger": { + "lifetime_percentage": 80 + }, + "action": { + "action_type": "EmailContacts" + } + } + ], + "issuer": { + "name": "Unknown" + }, + "attributes": { + "enabled": true, + "created": 1493938486, + "updated": 1493938486 + } + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/RecoverDeletedKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/RecoverDeletedKey-example.json new file mode 100644 index 000000000000..fde0ee68b0b2 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/RecoverDeletedKey-example.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "CreateDeleteRecoverPurgeTest", + "api-version": "7.2" + }, + "responses": { + "200": { + "body": { + "key": { + "kid": "https://myvault.vault.azure.net/keys/CreateDeleteRecoverPurgeTest/6fc2be54c6be4a7ea7bbb8a2a99a1996", + "kty": "RSA", + "key_ops": [ + "encrypt", + "decrypt", + "sign", + "verify", + "wrapKey", + "unwrapKey" + ], + "n": "v-SWMCmPNKoK_rB_pNXUl6Iwh9Kqd3XzQlh6SXi_slBishqP7pyKEFjNbUvMSlyvPt21rJupLbJr-yhsK2Rq2V6O0doGuCsoadgNGih1aVAuUJAJls1-b-G1IJjD18ArM4RitnCvJmQFqyK2RVHa3EpEfaQW4gcRrsRAhiJDjc1L1S3skdt-E_rZfL7DIh1ZtqFyQAqIWSAG0BXDdbgfEx1kJKqH-HRokDKeMCIaJtKZof6e-DJr3e9Iy8aAR7V-BsZ7vY7JMjyeEukMzEji4MEsIyOESL67DgFllDEi4OM_3WKyxr6uXxzHDzmppWsk2ykLsYA_ALLnR3ZNZCuL9Q", + "e": "AQAB" + }, + "attributes": { + "enabled": true, + "created": 1493938342, + "updated": 1493938342, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "purpose": "unit test", + "test name ": "CreateDeleteRecoverPurgeTest" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/RecoverDeletedSecret-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/RecoverDeletedSecret-example.json new file mode 100644 index 000000000000..49dd7d2cb5f8 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/RecoverDeletedSecret-example.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "secret-name": "SecretCreateDeleteRecoverPurgeTest", + "api-version": "7.2" + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/secrets/SecretCreateDeleteRecoverPurgeTest/16f5f7feb7004280b7f3b8ac50cd01f9", + "attributes": { + "enabled": true, + "created": 1493937960, + "updated": 1493937960, + "recoveryLevel": "Recoverable+Purgeable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/Restore-pending-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/Restore-pending-example.json new file mode 100644 index 000000000000..045c38670047 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/Restore-pending-example.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "jobId": "45aacd568ab049a2803861e8dd3ae21f", + "api-version": "7.2" + }, + "responses": { + "200": { + "body": { + "status": "InProgress", + "statusDetails": "Full restore is in progress", + "jobId": "45aacd568ab049a2803861e8dd3ae21f", + "startTime": 1490790000, + "endTime": 0 + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/RestoreCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/RestoreCertificate-example.json new file mode 100644 index 000000000000..10521928e0db --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/RestoreCertificate-example.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "parameters": { + "value": "JkF6dXJlS2V5VmF1bHRLZXlCYWNrdXBWMS5taWNyb3NvZnQuY29tZXlKcmFXUWlPaUkwTXpnMVlqQTNZaTFrTlRRM0xUUXlaVFV0WVdVNVpTMDJNVEJrWXpNNVpHWmhaamdpTENKaGJHY2lPaUpTVTBFdFQwRkZVQ0lzSW1WdVl5STZJa0V4TWpoRFFrTXRTRk15TlRZaWZRLm85bmpNWEFSZWVla2NaRXBsVTNjdUxQcVZlWmxFbGRDM01XOWpYR0h6bnBXRTdHRGVOSXJraGZscHdTWXFnQnBYQkozMFpUQkRpRmpROENXSnJfUGlsUWNDRkZyN0xrdWJhWUs0TW1zcVh5WGIzbkRJcUJkQmZIUVNpZ1ZET0J5Ym9sUlRNNDYzYjBTbXhLVzJheEdFS2NuZzQ5WFkycG1SR0Vrb0plcHJWZ0tyRkpOUGQ3cGJIS3hQSWdDOFlnT2xudnZxR280RlRDSzh0ZWotcUt2UzBfRGV6Uk5vdTZqZ25SekpxX0g2NGxWMk1hQ0NnUy0xbTlyOGVOTVVvSlhTV1hwc0lneng1RzdEbzIya1ZEY25vMW9rajlCMXNvbklkWmtuY1JybDJBVHNRZVlzZXdkUVd1VmhxRzVLN0pNQWo5YzBRdkxhTmlpdl9PY2pFcm5qUS4zbmI4azJ3SEcyNHFJelNNb184WG13LnJzc3NMNjJ1aUNfTm9IbG5zQlgzcEEtck1uY3g5R3V2NmJYSHpKamxwOWNMUnVaSDBSWlJYVXRwU3BPQWdyZ20tU3BxeEdWSjd2bmprbV9FSzJwYy1sZHNjUWtRSDB4bVFVcGZFNzN5b1VTYTNXVVNMS2VIVnJLdUg5MUtJR0tLODE5ejc5d1Y5Y0F3UjlzcHJxbFFWZnlKdlNFM2tnZTh1RVBpRFFVMFl5WnJqVjBsMGJCU3VkeTN1MVlsVHB6Wk1EWmpUcE05ZGtMclgtaGdxZ1FGa2xFa1hNRWlzd0RDZVM3Y3J2bFg1bnVzbWh5SkZCMklCd3dxNWJieHptV1diU3JOc3lFMmJmWEpXOWN4TFlQcnJJZFpfbkd0X29RSGVQcUFZTS1iVnpTdzdBRGJjMU15NTZwclBGLW9PSm40MHptOTBaaFBTVGMyQXNKRGFBa3R5WFU4WktOYUhFVUlHLWI1SGhUdFBuZ20wN0FrWEtQNngwaDhzZ3ZIaGdCeGpfdWRfQVpQc3pLWG1HdUhFTW9lRGhpT3NkQVdRR0pwR2t0NHVlbmZyamNSeXVlaXJiTC1RV3o4MEtZUnk1QklxbzVJc19RVHpWN2dqMGstYS0td24tazNsNTJ4YjhaNkRXd2tWZ3hqUlNXOXZnV0pVd2U5M1ZrVWtHM3NLRW5SOE9ueTNjWlhQVl9LbWtBTEdlR0ZzQm53SmQwY3dueTBCN2I5VWQyQ19kWEZ0N1BvbnFVNldfT016cC1Nb1NtRzRHbEFpUkVfQ3FrWlhkalhIMVItSmpObUNfdXlPUTdaN1BVaDAtNmd2YUxpcE1CamlWR1FwdzlEZDhmVmtCbWk4VW5uOUxPYXJmSXVtcEJyUE43TTJhM05KdjN6b0NkanhZVFVUMTN1aElpYWl3aExoUFZhT2pUbFRmTkpqbHhIbG5lbGJ1RWJsZTk0bVV1bW8wcjhKRlFMSDdfRjhXMVo0OC1BcjhYYXJwMXhIY0FReHk1WWYwclktdUU1dTAyRnRHUHlPZ0JfNV9WdFlNR2VfRE1mdENLOGVMZGFnVllMRDJDNDUxTldZeVVfeHdNUWdQbXBaMWFnSEdCb2s0ejhsSFBndVhCQ3R2WFFuTHBXQTVBamdOLWNoWjNwUGJmc2RkNjBhekJuWDVaVXQza2hYaWNDdWk4b0xidEtzQUdmckNOZzFwT2Q0MHBHMEJlVy1lNVE1WWQydjY4eFh5a2RiTXhFblFCM3Fzd1djVlh1QXBIR18wREZVVmZvSlc2aVBZcDNWVE51amM5M3QtMDcxWnlZbUZ4V0RfVThMYTAtM19RLV8yZ0pwMVBaVV8tMVBRM1huLXdSWk1vb3JkZGZQa1VPZ0lqdWkwa1IwZWt5RjZvdWdLNnJrSVZHaGp3YUp0ekdKczJLdGxncnRCcEs2MXZEaE5zbFR5VHU5OUp2T2RFTXhwRG5lTEg4NnlvVnhxT3lIT3lxNjByXzdpTHgtdy03Q3FzWTloT3dmQlBZZ3BQVlM2bm9oZVBocTkwaGJTX0lrM21YbnRkRUNMREtSMi1wWFh6bjlPRjZIN09EdHB4S0VXQkdCaHJ0Ykxmd2JZS3dmWmZSVTJVUHpkLUxFd1lQdDloU203Z3lSODNoYkZiSFNBV1cySncxRWl1c3FURWRsRW1lQ3k2cFp1MVFZWko0TUQ0OG5rVXMwdmVHUVhTU2Ytb2RhQm1fYjZZdVh1cWcyWk03MlZjUTd4ZzV4MmpFenFqcllmdjdTTGJINFZBcWp0aFg5LUdRaWEwWEZaS18xempIenhkd1B0R2lSOHJfMkFFZTgtRXFoNi1FaTZKdjRFZjYyMnRrNWFJUWx3R1pETWpGSVNuUkpRdV8xcnJiY1E3enZsbWhUSWFQcUJNRFVxeHBEOXNWUlhuSHdIaTl1b1BCUTllbWJIMkV5WDV6MEhWRXlDa1JEbUd3cmR2RGdsOFVzMUhURjVwYXlYZmF2WkZUZjl3WFZyQXpsRFBEQkFJVFMzWnVJMEJWR2pJUGV1SnRiako4S1pTczRFQVNRRTVyVjViTUpNQXcwa19nYkVRTEZGSjJVb0ZzcWU1QUszM2xGXzR5cGMxU0JaWjJfUzYtbEQyNkpyRFVJSjFFRmJhbWtoUk12bWJIT1Utc0hDT0lRcHdadlJzV3Q3NExSQ1ZyQ09jMGpUdE5TT1JPUW5XRHVXRlFXSzk1TkRGMG96WjIyLVFEMU9YOE9iU3daaHdOXzNfS1pHRmtVMEhNdzNjSTI5LWUxbFltRDV3cmJ0ZlRFbllOeHJKOGpuUWFBY2FoNy14Q0JKeUQ3elo1MXIzRVVyY2VnazBzc1dLeHRPVjRLcTZENmxuVmU3bFpUT1dfTU5aZi1JSzJUbnZCaVZIMHk0SkVGaUxzSDJHbTM1d28yYlZVaXJsT1ljVEk1NlZhdDhMRWhGaEotVlUyNk84NHo2dUJFZmJucEZLbmdKc3pfYVlucW1zNWV1bmd3ek5ndjdlT0U0cUdKSURyMTRBUXRWdEYxcWdrZHNnVllWVXg4U29SQ0NobE5VUzRNRGxhc1hwS1VmV19ENWIxbDRkbXZiNEZNRHJqakJ6djk5dGJSeGZFYUVOSFlYTHZFZnJ0b0pMeW9na2tmNkxlbVoxVDZRbnRtNlR4S1IycU81WU1vMnRJZHlQNmZNRmkweEYtdE1IaHNSdVN3VEpybW1nREcteHVpZllVNkpfaElSNkMzVmo2VkFMMW1oZy0xeW1pRXZuanVLbElONzc4NmFWdVNpNmx5TjJJNzZqY0R6SHZ0VW1ibkVvWWtORHNPQXdqQk9MNFBlS0VjR1hWcm5YNDJhNW5IRWM2cmZQdjZ0Q2tVSUI0UldIdzEyUTFiNDM2N1JvRS1PTWN3TnV6ampob1M0S1ZJbHo4UEFMOW9YYTR4NXlQeG1aVzZ0UUVna1pKeFhEcS00SWRtd1UzTnpVZUoxdGpNaXFsc0xRWDdlc29fTHRtTWJ3bm83YkI3bjRlVnZ4aUtQU3p3dW94c25aaGs1b3ZSSE1xU0NtZjU2MjJvUTZvWEdmNUJLWExlQWdqaE1Sd21razEtUzlGajlyc1hlT19VYjJOMF9hVEFLemlidXIxNVcxaHI3Wk1PVFlxOFlSSGVPaWxSX3Bkdjl5NTlDRDQ1WmE0ZXFURHVrNmRxZ1d4YnoyVVVtMnpwM3pvTHVKSVZ1Y3FIaUVRTVNfMnFKcy1xQTAwT2FFY3huZTM2Q1RsZVNwZjF5cjh2VjNWNW1mQU5zRnJBa21CMnBRWTNfZ21UbldTYTJ3UWlMa2RFRllPSExTeEk5UVowNHo4ZFRfbW5QMmIwWV96N3ZLa0VGQmFpNU02UFdPWjVIOUx1M3Rnay1fR0g0ODd6ZHpuQm0weWZZY3ZIOHJUd1QyQl9UZVRFMG4xcWFRdDRiQ0diUkFQNE1DTDl0SGlIcmlzWEllejQzZlZ3b1c4R2x4YmxKanlLWkpXbmlRNjlBYks3SmYyUER6d2NVSHhkZU5HNGxEZmt6WmFxU2lybGRzZlhXOHBGLWZ6WFVVWHR4eDF4Um5nQ1hJVkxLbU5ZbV9CNnNrNGo0VzROVFMwQTBOcFhsZGJCWjZWWmFDMDNvRHVGUFY0MGtwdWQ0WEd3Q1l3M244ZjFHb0Z6Sk42QjFqOTRLeTdtNE5YT1JsQ3ZaRW5qZTl6T241T1d1ZG9USWRoRzBobXVDUTZ6TXI2YkVaTUFoV1ZFdlREY19iXzZsOWdLWmVxNmVtekxvcmptOEQzLXcyLXRBYlE2Tmpjd0J3eEhMZzlCRllRRFdvaU9UVmJKN2VBcUVFMHVxVkhBcE9KbFVIc2tmQy1uV3NzOV9fRTFURHBLcjRfRE93NFhPUGNzT3dlVU9EUWg3cVFXRE1ZcDVHU1poVWE4MVVHczhmemZKU3JPbmtaTmRVTS10Y0h3R01mX3didy11dmt4UFUtV0tvNUNqR2M2aU5KMDB4MjZZdUpCWXd6TVFyeDBJQWgxMjVBWlozX2FvaFFpLWw3a1pZVE82Q0JVOVZsYllNMndrZXp4ZGhrQ1oxd080Z1NNbDlKU3A5ejhxNV84SU1WM1pma00xV1VqSGZMQk4xRXdFMjRxZFVzcWxyU3NZN1hQaVlpcXQ5ZktXVmZDTWw4RU0yd2ZHYlhxMUI4eWl2UlpMcko0eEk2MUdVUWJFVGU4akNTYTF2aUxxZ0FIa25IYjVjVHIwbDRhTW1EZGZKWnJxZEdpb1lPb2IwdHBuc3IxanRfZm1obGhJa1NSQnREUk5XWEU1OXBjVXlULXpyVjBxZl9sOHN2TlNEV2N3d09YQ3lITWZzLWw0T29xMldVWTVLQi1nSG1HYUJod0oxa19ra3V2S0hlMl9TY0loc3JjTXV1eW5aLW14Vzl5NHBBS3pvdVFsQjR0ZGZvbHdSRk5KX0tHYWJPZXJiWFdDT0ZTd0JVTjdNaG0wOXNyVS1VWG5od1IwdTYyTjVvMDlfbGN5eThnWDg1ZUVrenhuOGZ2NHd2T0Y2dUd1cFk5UGxpSTRLMTNqSHlOd0ZuY2VmRlp2b0dxVlhkcUg5RGJkYS0zY1FhbVFlNmlMek0wRDlnLXlFc2NBTkpKS3ltelVzemZZdV8yY0p0TEhsd0I3NVhLeW1EMG9nUkRvRkRwTmNPd1dRRUlwdVJwU0pfdWtzR2EwZkd3MGVBTU4tQmc1OUs3emhRWHJISUZOckN1S1VPMVdvTkV5WkM2UGlKSUwtUlRsTFQ2WlBNZmdSZzZiUl9aQk43X2dseHBIakNDaFZXMkZ3MnJFUDJJX1pSeHFqdS1WbmVwV2o4eU1CaHZXZzdXNm9QWm1odmVtUTBkQUljNVZTbVVaelhvNFVURmJxSFN2MGlyVTNscVk2eUl1MGRPd2t2MlF4ZENfQVdRUmdLSGRUeG1xYXFUSXJwclZyUHZ1MDFQSGlFbVRnaDZZVEZ6Yllqb3JEeFExWDhlTUN5Rl80cWNjMnhOdTJRblBIdUR0RGZkSy1NV2xJUDhHUEhSMmhPMjlCa0JJSEM4TlgxZmxDN1ZSZkZsQ09McGVIeWl0MGRSd1d2S2tieGNIWl9fRE5ZLVBNQlZMZGpyR3lxT2JoQnpQZHZMeFpXWVU3THNRbnM1dmxiMTc5YXczX3VmclRIWGs0MVpjaDY2ekFRRl9tekQ3ZEVuMm1fb2tBaTh6NTRwdzdxUDAwNHkzenNPd0RmR0htYWF2c3dGMW5NMUN2YXhXajRINE45dVNUaV9DM1oza3lTRHlUNGdUZjNqc0FKUEJybXdSQVBpaU5PTTU3c0x2Y3dJRk9ENnA5QkdWbjFwbjQyZGRTU3A1M3JieTZEcnlwcHdDaDFrampQX3lCbTZRZnd6MElGUWJiSG1zVDNVa2RMb1dURjFSMF9sbjJtR1kxU0hHT2o3VHl1YnQ5d2xLVW5nczVMTWhVcHo3NU1LR3F6UkFnWXNKcHVKUVl1RVpKeGFPSHNmY2VwakdrcFdoMEtfWkhZUEJESzIwOFVqb3FqMDdlVVVueTBaXzJrNXUxTjQzWGJ3V0ZvWVBhdndheW1MYkhWdkRwbzdwMU9JT1IyNkt0SzdPeGlnZ0ZybGVISWNaODFwQzRCdlNzRnZsY1BCZEpHLTZxWTU0Q3J0R2xhaDRvQWplUXgxWS1YU0NLNnZLYUIwWnZHc2lIajhRQ0ZURjRuLUJqTWIzWDcycDJ5Q0tPRlpMRk5qcVR1aHJoYXNnMi1pWTNOTWdwVEQ5eVBSdjA2X1VpcEVfYjVsQ0R0Mmx5QU5NYVpZR1RvSmJTSVhBcFlyU1hEM1dFWllhTGUzQmFSUEJUYTAyeWpyVFZPRDRGNHRFR3c5MkZJZThOSk5NYXRXMFhPSFAwVWxKTXlQUDF2MVdvOUh5aFllaDFfdWg3SlRLcS1hWnJjOS1Xd0ItQXBKTHBQeGxmRzlGZkgwdjNwSTl0Z1VndWJmSkJQVjMwNll2MlNqQ0M2MmVYN3VFTUgzcXQ3TmFYcFVsNXZEVHpfMF9Vc3VlWERQcDNqV01XQTMwenFaYTRFT0dXdElMb0tEM1RjRWNVcmJONGV1bHFQSkFNcWdWdmk2YWRGdTgxU2w5cU1rVVUwaWpqMjZhZDFaeVlEUUZtWlJ4NjJYUW9ZdG81bXJ0eFZhYWtNNndqbkVPSUdJaHhBTnJoX0dNVzVxREhzMEV6TDU4b3lOY0Q5dE1MUC03N1FCbTZwUTFsR0swMVJ6Y3FzTk14ZzRMTzl2ZHQ3NFpIdEhMXzA1TjF2TUt4TE5GbkdhZmwxN1E0eEM0Z3NQeXpYdzBjcklyV2tIQlNQX0NoWE94SmZORWdyNjJOMXEzQVJZa0U1TVlCbzctM3djb3dNT09GcTlrakN1ZGpoekplRjRTUHdfMnFVWVhZRTZsNXJTYjYwUFlFSkJxdW82Skh5ZmdlOXFJX0Rzdmg4eEY1STJfLWtLT2pxU3FZam02NjU0cXVES3phQ3JWLUJFLWtQNF9DOU5OQ0xTaEVWUV92Z3hYdDhzbTRWNGNRMElDRmFzaWV6VnNuV1QtYmRQTGxBT2RqOS15RmhYVTRUYVF3YnZqQ0E2UHQ0aDNVWGdnQzNqWU5IMmJtRGpYSzhFdFJYRTV6cmJsTDRKMFZ1OGxHQVBZaGtOcGNOakNrNWhSSW5jT0dybE9aUk9jdTdSeVczR2JWM2Y1MGJKN0xLNHJjMnJCMTZuemhBdk41WXlydWdwQzdCOE9OR3NTY25ha1V1alJzRzZGYVpydDNzTDJMOW5RTUNoNE9INFF3VWpKWFZKUFJ2MHhPTF9jVEQtdjk0QWgwbWdtcFJ2Q1dhUkl5MXRxeDZHTmZ1R1Nyb0tObmtHYjRiRE1oblpZMmwxQWluWHlCMG5uRGlvci1EUmo1cjhRZi1iaUR6cGhTallzZTZrakdLR0ZObzU4WjFfaGxEaGFob1pQX1lRdlBtWi1Tb2pNaGhMRXZqMXEyZzZWRVd6a1FDWTdIWVEwM1Y3cHVCVm4yaXM1NXpBSGV4cGpERWoxWDgxWU92bnVTdXRhMGx3VkFEMkRoNjZDcmM2VVh2SEtUZTBCeFlsQWdVdkhQc1BkSy1OdVk4S3RaeGNqTWNDVWM0OVl6VW43RVBTamFNaHJ2Ni1mM0pwc09Na3JwREpLM0dPTUVRMUV4cnhYV1lGaGtLaHR2UXZkMXZCVS12b0pRcWJveU9vS1hMM29Xb0FRVnljWlR3Y2laeW4wbUtkVF96NDNFZGhNcDNKS3N5blJ3OVZtSzk3Q3lldGl5LV9HaWVMSngtWDladVMzOUdNa0YxaFVmYmkyc3FJZGZMZ0diem5uMTluTlRVUDlOR3dhaWhybU9Ib1lZeUJ6WE4tby1UWUxhSS01bkNuQ2FSSW9QTF9XSVhyWDZPSzdZU21IWjk4a2xJS19JNTlPSXlWSllrMVh6bGVwd1lPLXUwU0x6bTEtN0dKSE54RGVOMlZhUEk3TThVem10X0x5alliWWxocFFJQnNyUktsMmZZeExKaGt6Q3NjcWp2bVhDemRLVDNhNFV3NDJ4eDlsOWl6dFQ0UmtnV21fYV9YWWk0b0gwdjNCUXRSZ3NfUTBPaGo2T2Y2dEtyZU5XZmcxVDRjMk01SERJd3UxTkl2QXBqNzZtOXJWQkdPWTZFUnhfa2Y3d2twb1g5dWRvcjBCbEx4a1FCc0lwZXpUdzc1MTBncU81Nm1UWXlBUzFCUVdOY1Q2aWhfN3F4ZTVoUkVlZVB5YUpFMnhqR2JNWGg3V1hGYjN0ejVWVWJOTFpxMjBiM3E0UFdkdjJXX1Foc2VUY0JTRDY1eVFPYndTai1UcVpNNi1teUZHb3B6dVdfRWcxU3pzNzRaY3RMSUxyN3pMLXRyeC1WTTVfVHllMVZXbG9ZOTZVYUJyUktpQWU1SVhKMlBQd2RIY1p4SWx4N3dBRXdueXVOZXA2b2NKcXRwZUJ1elB0LTFaX3UyWjZrQmR4V0lpYlVEaGxOU3AxM1NkTGw0Z2hkemVqZWFaYVllRDVtTGltWWJ4dEhsQ1ZiTm0yNU1ZbDYxMFU3QlZnNVJJSXB6VUdmZ2Z5NnpJRzRLQjBMR3BISzNhdHRRUExvQ1VlTDRYNVdBUUFsb3BRa0RKOU5lTHFGdHN4cWpZaGJnZ1Z5am9ScjNPOVhzYzlJVEtVaXJaUDlyTVl0eFduT0tUck9YYVk2WVR2Wi05QUhpT3ZfdTRhOElTS01DVng3OUlnXzdqTjFfREhjdGd5cEEzVnpkbjNKdlJJQTlfbHZDV2dTSS1NUjlPQ19xekhIUmU5dENqWklDVzhwRURSYVhZOHc4UUQ0bXJicmFLTTNsWmtTNUF2NVp2WjFRTDJlZkExbXlJdmN2czhmekxRUFM0Nm0xX3ZPVzcxN05ydDQzeUcwbUZxZnk4aExaZEUzQ2RkMzRtVVFXWVdqSkdvQXZ0VHBXRmpwWkwwOERjQUd0RzVzdkU0Mi1WWjRqSVVYQ2JsemZaczl3N2VsNThvRkJLUng5dUJLby1PWmYxTVloVEZrSlU1V3YtUEVreXRPSVpfU09nZVM2RTVMTUZsOVpZenZ0QkJuWWF0bDY4NGpEdWx0STh4LXpmSHdwUEFwNk9CQVpxalk3S3JoSVJuVGRoc2Y1VUpCcmtvU1JGUFlaaXE4RjJLWHA2Nm1PbDMyRm5RTVprMUlDVkxiYVpnUFlWNnl5UXpZdEdhbjhOc3BFTG10RWkwMVlTZE1ySUxkUF9TVTZwXzJ1NU1oY0RPMDF0Y2hwMHp6eUVfTVp4YWJodXpMWUVIeXJvYl83cjFKdWNjZUQ4SlM5T3JBdEk1YXdsbEhGSFRRWExOWGJuTHdTQ2JrdHNiTGFoa05ya0ZXR1RDNFRzUlBfYTlHMVhFTE5DRkhaMVhvS3NsQTdMMzFGaWpyNFpEYjRQeW5hT1BrSlhCcEx6MGNLN2FmeFVxNWlySHhZNEQyVkdNT3gwUmc5UEJJeE1vdzN6TmVGZ3Y5dzRTdkJ5VUpQdjNGV3huX004M3g5dldiWFh3bU9LbHlLNVpWQi11LWxKVno5Rm81YWRfVEtwUkxqSGdNWURKNU9Ka2dhaEFQMmhOaG9lb0FicnBPNzVYT2tYZ3pONDdwVW1kdzhmZV9FN3ZSeUREZi1LNVZNS2UzOXRPSi0xRmxtemJVc0pET0lScHp5WVl0Y2Q4cGtPU3JQYnIzMWdJNFRIUjJHV2xwZWJCZ3VhYmppck9UTjI1Zy02MmRPWWVKNHVwNjI3MjdnbWNQWF9EYmJfSFdrTnVLaXBmdkJ1UmVNN2J1WE9LVzg2bllHSW5ZNzJZZ2lvYVpIaEJnY3pHbktuUUlkWTJ2U3NzQ3E2b1FSUGJqeHRQZ1gxT1h2bXNucmNBencwN01ULTNueWF1RDBfNG90RGJueF92dm1fM203ajBwcjBGUWZ6NWs1UEVNUG1sOFVhenFxX2xEU3djV2JOU21JbWF3OWt3U2NXN2xrOUViNTRLRTRhaWt2bVRxXzRuN3lkSDNQblI3bC1RMXE2X2k5VWdHUVFfSmk5UDZQbmszQzd6TTVYbDBpYllEVXVUV2FUdlRrX2ZjaXo0VUJXWkV1T0lLU2xZaHVBVzFQUTJPU3NiUWxPbDU4U3ZvTEYtS2w3TmNkRXRBODJVWjdkLVFCN2xKNWFCcnd0Vmx6TDFxX2Y1UGd6a2NtcW1pLVViM2tUQ0xlNjJYbzN1MmFvSnNTQ0c4bXhwZkJ6dVFVVkk3WXdTa2ktWUtNUnlJSGhuOG9xRDNQS0xMbHk2LVZkZy1VREE1RWhhLXA0TnZYb2lLb3ptRHdBZFFpeG1IcnJTdUEwWmh0eE14N0FSc0pqc285blZKR1BOSzhCeTMtbXQycnNOOHlMdHpyRXdkUzBtLW1sRHRKak9CWHJ1NmhWOFBPeV9vSWVzYmJtWkcxSk96Tkl5YmhPOWdNakpsNTBSQXVmcW1sSXJpOEVXQk9vdzdVT1RKQjgtTkR6VzVXdWNiS0VLOGotdWtSYXhhQklPcTJBTnI1Tl9hTEF2RFpmalp1cDl1RGNTc2FUOTNWR0dmQlhHX1BYRlhGWnNtd2NnamxsQWN3bkhCS2V6QWd3SnprRXpFaEdEOFhQMVh0dXJPZHh2YTRyd2ZtVG1yM1pHVWFmY0tTUm5malpnVERSVThVRFd4ZjRwMjB1T1h5RzBBUzlJLUF6WGN0Nm5EOFVQUlB1WDQ3UG1fN05mdWFVTkt4SEZ2RFdOdWYwcVE1OFlvZmhydjJlRDlzUFJFWV9CWjhXWm9IYy0tbVZ5MmM0aDdvTTUzQlFKbTQzRzNkaXotclRwWE0xUDExakc4em5XU3RBQkJxbW40LXdKVVl1UGpDV0VtY29qdGtRZEZmcjQzRUNqTzE1SDJaZGN6MkphZmpUcmxPdWlQOG96ZjEwa2RTYjBURTFVOXI1dHRIU0ZzOUxPVlZHVjJnQUxjUGtMU3R0clgwMXZHMWZLS1ZTRVI2TzlZM0pZYW02X0FwU2xONnlRbmlqM3NJTzdKc2xYdHhaMzY2bXI2Vnl6WmphajVVODlJSjdJUlY3eXBkOWtuZy1RRlZMT0FhRGU1eENvZG1jRjY4ZGp4LTZBVWpQWnBHOFYxVG04OXh5c3BTaU40M0lmLURacTlaMXFjSXNDOUJ4XzlxTHE2S3kwNTIydnBKWkw4NEdCZElXM0FuUUdKbFY2dkRXbThpcF9LMjg2NG8zcEg4UTdFWnpqc05KZ3p6RFU2SkU2Y2psTVdhMDR5dkVMa2dnUm9feVM1MWUzam1BNUFFdWpXLUJ6TXlzTjVkeUpiZC1HcnN4VFltck1wMWI0dFNhMXV1ZHBSdWl2cUFLdV9qbTBvYTA4UHZqRjJyNjRXYXZQZHVxcUs2VGUtMDc1RkFQNHFEZE5ocmpJSHpneWEtUWowY2NCRWtZbUo3di1mUWxneUxzaF80bHJZQmVyWnNCMDM1Z2Z2b19CakQ0Q1VWVWFTRkRya2U2OE41N1prblU0UkZXN1NNQXViaE93WjlCd1pmT0tuajV3bDhfemRFTDVLVDBQUm5IejRjQk01OTZGNXhleDFORzNqME80Y3JDbzVod0xMMUVwMnVweVlULXpfTkdkT1MwMG50bGt0dnNKMGFZSURuQy1SSDRYcUdBUXlpY3hJVzNnTXh3LUNvYlIyUGdPa1dLTVBJN2xFelNLN0VKcjZkZENmblhHRF9scE9HSXgtUTROdjFOU3E4VGw1dkRtdmdOXzZCOEhHbmV5bXdpQUlJZ3NpWWhfUmR0NnBrdWJLVF92aFkwMTI1WWZkck9NaW9keTFLbEpNR3NJNGxqX1dJYVRHQjdoY1dtY0stMy1NNWlZVnJUSktaR2RZbUFobXI3bkZVT28zWFFCZkVVZFpKb2Itc1R6eDdNYWttd2JEcHdQdHB5OXFQem03akI0ZC1yYmlncDI3azRTYlVFOXNFWTZVeVVJVk80Y2l5R3ltZThpOEdLY2dSWXJ3YTZmVlItTnNvcm16dmd5eGZVcDFGWDZuR0xNbE5VMDNEblBVU0JLT1RWTzVnM2JuNG1DNWI3anBVQnUwQTk5R2ZkTEJGaXg4dURwR2NsQm51TFhncjcyRFdCRmFKeldkZXNZbTlaLWk0WDBaUTh4cVZwdGpXTnI5Sm5sVDlLeDVKZXdRSHZkeXRRdHRaTXc3TS01Unc5UHJreklWd1JPZE5PVkxwRWl5RmVqM3YyZmJGRFVoRmg2ME00NWRMQ0hqU0k5eC15dDZ6LUVtQlBpdGtkcWpUT3hLam1qVV9WNzIta09tVndhZkY3MzdTcVRKa0lpWlVic002bEJoQ3Rxd2cwNi1DelR4U1pMYVgzOF95dE51aUY1S0JfcXVwcU54SGJ4TTVZN0l5SnJUcGR4MG9qNFZzWDlxWkFjTGxCZnRNaTFUSTVLMkJRSERSNW5FY2UwT2J1SWpjdlNrcjNYMmZwUWQ1cHlLdnBXcXpNbnNuQ3NsVnYyWUY5ZDZHVWFKeHlfQ2MzRVJqOXZIMnRJb2hBckh6VzJlN1lNUTRyQnducnowOXc0aWNnNG11TDdVSnVsVnJLcjdJS3FDYjJyWFViTDBIRUVrTUd3T0pISEVnVWxlYzRGajRNQl9ZNnh4SFJuekVKMVVBRXVTeDJaZG9Bd1JsSjMwRHZYTWMxcFo0NWktYXE5eV9oOFJxaUZSUlQwSktjYzFpeFA1Y1JWRmVpbFhKWXN0cDV6X1pKZ1FrSTdCQlBaR0M2bkZ5RC11LWh4MzhQN0IzQjdUUzdoWVlXdm9ETFpGSkI0a1ZGRUhvNlRKdWNDVlpJaEFMdHlfN3dreFFxdU1mMFNOREQtV0FPWUJkY3JpZzZmYnNKSVhvc2lMSWNDM3hOOGw2X1dzNk1UMXdXODZkcWRUWkJnN1Z6YUlnREJ2RDRNakRLdjk2M0k2c3ZmeG5FWWNEQ3dDalo5M2JwUGRJd0htZEY1ZE0xTGZVLTExMktBN3dCQTJWYjU2cFdBMWk2QXo3Z1N6RXhQRkZvVkNBdFlJUnBFcHh5SVBaQUVHV05zeDNpNEk2Z2lyZi1hUmFWejFXUURCemd3ZDd3TlpqV2xrRVlyRFBBZTFPVnl0bU9HQWlGZmZiQWVPaVF0V1lzMHYzVGFTOGcydk9peXRvakE4ZzM2dDQwQTB6T3pKYnlzUUM0Z0hjODJuVDdQUDJBTFdPU0RLTmxSX2M0eHFWTkxjdlhxZHFBNmpVRlBUY1FONzk4U1FRbGprcmd1bzhEcGxTZTBnODl1VHUwV0ttcFltSFA0WEtmeXRGRWlBR1FDSmIwZUl6NVZsTlAyVnFiRGRMcW1JSzhuNVlNSUtDY2ItY0FUdGFoRXU4QkxQcVE2VC1aa2t4MF93M2RmZjhVX3ZCZUFwS090SERMWUVqcTBnVktxUHhaUWczY3RJS2oxdXJPeTIybnJ5aTlnZWZVc2QzZUYyMnBCQkx2YWVWSk96QUZndk5YdnRiTXFsUW1CXzQxNG1tVGVtaGFlNktjOW9KRF9sLUxKWDZPU1FISlo4MHQ4Ql9VZkdacFZES1NubmFmMmY4UHYyMy1EUmlGNlNyQ0ZKN0d4TEhUNXJSNzU2MW1YUlV5Qy1leWtocVI1ZFZSZDZhOVQwSGY0TlZSbjJiaVdxeWhPR2VUa0hKazE0YllOUFdYTm5XSHl1VTdyNEZoOVVsb2lES2xIQjQ0VjlmYS1YMzE0c2VHZHRqUFNLdWhFRHBMeV90VU95aWU3aThJaGNIaE1XOHlFNi1Oa0lZSnF4cU5EbjAwdUkzSEhEUWtGYzFQV0RYdlVIcnBJUFRJcFFBQ3c1dkNWT2JpUmFoQVBJM2tFRFh4ZkY1S2VLMXRuS1hsZWRxQmRIc3lCUkZuNnp6T1p1UHdOWktKNHlYVDhoS2wyamQtNTlqdWpibDBmNF9WdVJFdmVQOW9FWWtTOHU3UmlBVEVHa1lPVkg3MkZXTzBzLVNJWGVRRkQzX3VvWjdrM0xjSm9GVjlXMDZrQUVWY1dURVZGRUlwamtNMy1FYnJSUVdMcy1heWVYQkNFSUxsQ2t0di1LblA2N0pyZFV0bTI2cnFlVXZ5MzdTMTBCTE53YjRiNHBvREhMS2FveGFuZy1iRjZUb29PR01UU01MWXUzaUlLc0R3Wm9kZG1WR0xyQ3FxNWJJR1BFZTNoMnc1RjFNZ1hyVEU2TmFubXpKckh5eHVPc0VyaGctaEpGeGVCcWE4WjZZWFduTXIxNDhLanNoYVAyeVpFSWV6OG81UEc3cWRWaHFRenhYT1c3eEQwSTUycjBvbkhxM1hzcV9SOGhFby1UYVdPbmY1NW1YYTNWMk81LV9XanZxZThWdzdwTUF5dG95dmh2NTVTVk9xcVdkNXNIdGhITzd0OWlMdDNFYVMxX0ZnaU8zVmVENmlvUVBNNjZsWmhaYkpZZHo4b1RFeU9SR09KbkpjSVpqVm1YSlJIbXF2eXZsUlpjdkVMM19KR1hEOEZGNHlBVE0zaGhlNDN6VEJVdk9oYlRjckhNQTRLZjhWczR4cU02QWFsczVBZzRUbVZSSnVLLUVRWFZCaFE0TEpBbEgxVXZzN3lKYTdLM2hsQlZEMWo5WXRWS2htMVhPNFJySTNrZmVxYmxoMTRHQ1NEdnI2OExyTk53SUZsY1JEY1pKalBOQi1GWGhUd25PbW50ZVItOFY0UTJVa19tczdTTm9ZUElWRnJqY1R6X1ZkQ3dYRTFmMjNocHpqQ2tnWGlsSUlNNEpNMkZmcDNTZTY2c1JHc1RXXzBBbF81R3Fqd3ZfZFBYWDA0RHJNMFI5dGljTHhLczBnM3hkSXF1M0huamxBRFU3S0c1Yl9NUmxUdWJCQ3pEamtJQWRRUEFwcUhaWktnODYyLWloMDE4bERfbFViWEwyMGhFNFBNbTE0eEg3R0dPQ3FWa1o3RVU4ekd5Yl9xWHV4RF9LZHFLSVR5eUc2WC00MHhOeTJ1cWpDMmlvVVpiM25Tam5kZWFiX19kbC1jMDBLWkU4RnhTRnRMN0RreWxpTWM2Yy1VQXBhUlZKQy1aa2NBaXlPZ2NBOVZQa0x5a2xlcGRNYXY1Y1J2a3FvTHhmS3RMU2FhS0taWEdveFd5OWp2am5KZHZfMmZDTXlUeFdOUWl6MzI5NG9mNkNNY09sTmc5VW5iaUlHb1JVX20tMHQzamNRWHBrZ0pDWlMwcmQyZ3RGVExYdUVlYU9ZTnJjZ2dPWkVQMkstc19kNUlCU2JqNXE1QS1HYU9hbzFuRmdFOEFlMDdEVXVzeTBYeVEzd0cxb3JIOXUtSUxpSHpyd01Ickx5ZWkwYmpYSm9HcVBuSWd5d29nWjdZRmF6a1ZSTGE4OTBZQjlXR2p2SEdqZ19yYmVabWRDWkFoalNiTlRveFN3bGkxMnh0bl93WkNWVkhlNzUtSGNkTHZHaGgyekwwVjlROG84NFI1NUFKVV9fNjI2REMxT2w0cXVLcEt1Z1EwMHowZElPbzMwcG5IT3hqa2xlcGRMM0dyN3dHNXZsSUJKbXVWMlBReC1Hc0JmX3lYbUhxOXBZZ2RJeXl3ZjNqSjlDcmROYXM1RGNseUExUS1Sa3MzdWtyU3dublN1ZE5OeTNCRlJ5ZkgtbHhWQmpYSHQxUUlQM2JLbjRvNmRPSHNLclc5XzRPVnBNREQ0UjNMRmpYNFM3MDJ5ZmdXSkk5Wld6TDFadk40X2t0Zy1iVHNYOC1zdzJfa2Y3dXVldmJmMkYzLThmM3lvNDNUZ2dQaDU2TEZjbFNidGdaNE05MDRTLWF5SGQ2NkhVbmU5T1Axc1NldGdKWXdZZVN6TTgzY2FUUXVqRVA4bFhEQWxKZGJ0MTRhZ2FValJkNlBNLVVIUGdGUmNtRTd5Y0k4YzNSdWxrVkU2Wk5qeUU4VkNnaFRoN2JMNTJNYXhUcVMzQWJKNUpHak9ESkk4ZTczV1BFZHZPZ1FPNnZvak0xNDFnSjFtaW9rTFNIbXNwVWRhSFdIdkNkc2VHeTZyZmJfYktmeGJGS3FNTEN6T3VKbjhxd3hlNUxJQms2djJCUmNzM1I4ZnI1VjBSQXB5U3J3bmRuWExFRHdVRU90YzdwSTBqajVNeGFJaWxKU1FMb00ydXpiWXZaVE1INklXSndEdU1hNW04MlFCRnV3TWFZRDd6WmNwM0RGb2dFc0N5YnFjZFd5SFBhV3NxQk5GSDRuYXdwRnMwQ2xZMWMwbGZQR1RnTWZJeTRxRnV5U012cHNkYWZORUdBdVFpYU5zRzROSnNJV2NYbFNFQ1FsLVhRaHF2YkpUWE03NldPVTVld0RneGRGeG5WREVhdFRlQWZZaUVEN1ZBelFNUXNFenU4VUx4VmI3RWJzX3RsUW5hU2hVX3E3RjNUVEV3VUpPdDNCeFdPcWFCbmhNdUdOdU5CNXJabFd3YVhrUTFNdGxwOEFmWTBXSF9kX2F3VXdQbUpCQXFEX0xKRncybWVBS25OZl85NlZiUW5iU2J1ME5uejlvTnVXVmNMcWZIeDIzX1JfVVE5enZibTlkaGlSaUxSMnVDUzN2d21XS1UzVG9vbks2c1NpeWNmYnh2QjE1TnFnN2l4UUV6M2U2emVkX3pQYy1GdF91ckRrR1dOTFJ1d2Zyb001REQ5XzQ0UFVvLU1SQ2NiVGp1emxqQmVjOXRUc1NRdnZWVnp3WHdNY004Zl8yWEJxcU5OVl91b3V6dVRPWkFfbkNVTDV0T1dFSXZIZmlDRWxJV3lrS0U1TUFUUVlUY3FRd0VwNUlBeDFDOXdudnZtVk5NcmFFNHpDSDJuZllsUGNIYWpMUGlXcHpUdUR4anJGeFhIbVBUc1JTM0Q1YU1yTmM5emwyZkR6ckJsbzV0Y1pPT0ladlR4X0ExeFA3RlFnNjMtbUZzTGlRZG16NzM1bWVjUEFmdkROMnV4dWp3YXFITGx5NGlLelljVVRjbHFhYV92X25VM09ESUxkcWt1S1pCZFZzZGwwX19YeDdkSlFHNG5nN3kxU0d1V2Z1NEdRRnV3azE5b1hJM0ptU0c2WVZHSW5wSUlNYjcwSy1BREliMlZBWjlVaUloMW1HNmpUZWRHWHJtMzF5b3Jnak1PUlRERU1rYnZCeTFaazVrR0E0V05aSmRKRnlSQUtXT3VNbVZOVXRWcTFWRHpkTkpNdGhaWUZHQUU5MEtBZVlaZDdmaFRSZlY3ZlFYdzhWOENmM3IxdmdMTXJyZ2JSOGwzeUsybFBLMnhMcFl0cVpRanFaREpvSjlwUHBlcHEwRF9Dc1JEcVlDVi0zNE5GbldXWklZQmtmZTRPSGFFZTRlXzNQOGxNVTFKUWlJY1dXWmJ1ZUJXSnlpNDQ1b24wRm0zVzdlYTRnUUJCN2c1MzU4MUJBZW9ZQVRUYnFFV0J0LWU4OS1YMDd1Nk1vSDVKUU80OV9kSW0wNU11VVlrV3ZQODFHNDMySDFPYmgxRUJBNG1WdHYtM2ZqeGVDRldiZHVzTWxxa3RYbXVodjBEVWdmWGh4OEoxS2JaMUdjN3cyT1E4S29KZXNGM2QyTzIycjFkdHRIamdmbHBUZlVXOGFaN2hPZ2otSy0wRHg5dXV3ZmNVVWMwUnd6bkNMbVdqd0lnZ2NfQWZJbVRpd1ljZWgzQzlpVnpLdkcyV3BfZHpCMjgzM3YycGI3SlRKbmFYT3VSSlhiM1JQS0pONGcyVXV1NnNYc1JBd2FlTnVtVVVpM1B5b0pCY3dhZFRsbVVrQ2JNcjJMQzBzYmZkbjNMOHk0bTd1UGg3VTJ1RE5EaGk1LTZaWUNYZE5SRVNzajVrR0QxNzJoUHRSVEV6RzhUeEN6Nlp4dE5MQ004a3pHVWtjS2FLeVctZFdaaFVWRENsZVdnQ3F0NWdvNUI1OEVaV2RJbi1SRTRxREZ5RlBDNDg3bk9nMUVyVmZBN0NHWldha1F2QXN5ZUhKb3dkc0RrdzZIV0x0Y2ZwQTJENHEyZ1Z2aDdraHVNMmwxSE5DdWxNOWJSXzZZYlhuTGlCMzIzN3Zjc1d2bHpBVmJCd0J3WHRQT3RGWEEwc0V3c3Qtb2N5V3Z4WFNsT19kdlhRNUdHa2pLcjhFX1hzM0dvZmlqaHpsZF91OWFROGNTek1XbE5xRGNPWncxdncxNUtaeFNXR1QzcDJ4S1VHLWtSZW1Jc1h6VW91TFdma2RCbk41Vk1tUTdJTXA1RkFfcmdHWnFwVHByaHJMSlVaeTNZN3I4bG1McW15Z055a2FMNWkyVEpIT3RWVHB2eHVzck1LMnUtSzdpbUJVMHlkQndFaHNOS1RWMXlGZng4Q2JZazJTeUo2QVlWeWZLM1FhVEdqb2FFMGxocGNPRUIycmpfUDhFWHAydlJ3TWZsYjBtc2daYTFCOE93d1BXRUJMdlROVjVzUEYycFpUaFlnM2xWVzFjSlZlTlBLRTJfYU1zS0p3UGVIY19YTTNrdDBXVkpMbTBnZzE2ek5EMjlsaUlfNTBjOW1VN2NpVG1hNEd5ZzJtSkUzVkg3VWxUanVkRldmNTZpSEZHNlJpU0FqVUFtMmtBTkNGMjFyb3ljVUhFTGo1aVlQZF90S09vcmJvRDlWRGcweDRDc3BQMmRKZWVzMVR6aVMwNU5qU096cnd4dG5qMTBBZ3kyd3B5XzUtbVl6dVJvYTUtNXVPSFhDRkFNSW5QQ2doakFudHVYUGw5REJRb1ZSMWYwUS1NdnJWQU1Qc3pfaXMxc2xZaTlFT3NDUWp1R2hsNGlxYmVNWWRhbFVZZllGYnd5dktaTGNlZndjaVdpY3EycWhpM2FxaWQ5WkVwVGRyR0FvRjItdmd5cWVsSjlRb2NfSG8xRldZdjFrVUR3RTBmQ2ZlV1FteHBFMTQyYmlZNVNnV01CaE9tVTBKWkt1c0hCV3B1ZWJ1TDVlc2RHVEJwRWtpcEpHWmtQSlB0YzBvTlJSVU90TVdZTTYxbXZaXzRTTFpqOW9kZ2U1akMwMHBzSHVYTUExTG5USDZ0R3FnSDlTd1Izd08zOTNTQnRMRU5oNy10UEVEVWc0dHpJeXAxTHQ4R2dWS09DTl8tc2RCbnlpSjJaNmYwSThEMXVPQnJYN0JGb3E2aHlkOWtMWnZiX2E1VHFUdzNKZDJCdHRzOHBWS3hhaXFtTW1WUmZPbU4xYmRJSHhlVUNCQzdXdE1LZUc0M2FNLXpYZDBfUmI4MkxJTVVVRDJadUxXb0MwUGZzUmpiYWNpOVhBOFlBVTE1WllTOVh1YV82NUZYT2xxcl9sT1RuUjd5Y0JZY2J5T2tIeGpIWVFmRGkyQmZRV0NkMElXaF9WcUxNZWozT3ZEUW5FZDZvNEU1N21FQ1lQUEJUSkFIZTNHTjU2UEl6T2xLNTRtVV9USUNpX0JKTkRXemJvdl8wSnVEWExZMmUxZnhCOXNURmc4c1hINUozYUhYY2dpYUdSaHlnMjRKZElJV3dkcXFRbmlLZWNfS1IxVTJhbEVqX2xPQTNNb3FadHk5Zzhnc2RCMjRmQlRLOWJZUnc5eW9OVWhrSl9fM2NxNlozVVFvc3VrWklreDJwVlRoTkU3THdEQ2gxbnVRYlpvUlZrN1NKc1pjWkZ1TTd1SUJRWUNVMGRIQzFRS2lublQxc3R5WDduM3RRLXZPWGRsSENaOEtmSERpR2tsemdKUkhVSFUwdU9JQUNuNGtUbkRzN1ZrRGtEZ2YxalBhYXVYLUR4X19Cdm5oWXIxRFp5eS01N2x3SG85c21rZDFNcGFUVGRLR0cxOVktUDh3MmcyNXJCcVlWQjhBZXRlbXQ1bEtZdE8yckhJNmZSSDZrLVhSM2I3WkVlSFA5MV9UTkc4QVZtV1djMUhaMmdYN0gySzgyUzRoUk1JcEItdkxUaFI2QmV4bTdDeXJHSFZqNHN3M0dtZWd0cG1obmJlNEZQRVo1UTZnNGhScUpmYTJvOUswZDI1aktwaURBTFllRVY3Y1VDUjhBVjRYNU5WR3hWdWppOVdYN0gwaU1mUjZHMmpIVkFZSmloSkxOSC1JSENWcVhxdng0ZWNSRmVxNGRqUjNBWjRITm5kNUJBaGlTSHRObkhlM3EzeG93cFduQVh4M0hHeFZKcUozZ0pVdDVtdGcyb29pYnJiTTVFVU1HT290QlZGT0k5eGd4RmZYT3dhYXNPNWxIbTVoQnFWZVczOHlXS1FqYU50VG16TjlITjFrRWFfS0JacHU0d3RGeGswNkdWTmFEUS1QbmZBV0FJalByQ1FjSjJMQ25kS2FBSHJyYTQ3WTI0dWJYd1hPNUZsSVh6NElaZzI3Z3NzTXpVR3kwdUtGc29LdnJrZkFLdjVWblR1WlJ6aklrZzNoZExLR2FMb3RPVmFwZkp5VnNidGh6T0JrSERUMDllcVlOYkFwbWdYWGdoVTZSb05nV3IwOURSMmZQV1FyaUVzbm9Gc21yZWc1MUUtc2JUWjJCb3FqVW1zRnlndjJZdVhpdTVXdFFUNGtKQ1NxczZZVEw0cGhoQy1sTEhubWs3Q0ZKVnNMUHpUM2ZUcVF5M2V6Sno5dUxyUWJKRXVVMGgyWHQtNGwzaENtNU1hQlVVUGU1SU0tWHZhVk5QM3FQUGN6NjEzZkt1WmwzV3NmZVVtYzl4OWhrbElxRlI4RE1aOFdpYnhJSG5CXy1vTnpvcGV3SXZkOU1RV18wQ0hJRlNWWV9lMDNfNlN4SDBiLU5DX1Y3MXZHNXpNTXpqUkc2WXB1d3hMVUQzQnV6cHNWSVR5ZTd4M1RSWFBxNE42aXF4cFlTeWpyMUUwVnk2UXhzWGc1Q0NsZEozN0p0R082b3pTY1gtdDNKOFJBbVk5Zk41WTRURUZCZkxFT3VtdkQ0WXdjd0xuVktKMnVYN3A5MWZjTTUzVVRhTVc4UTZSZ2JFaTlnZjg5SXl1OFc0WTBIQ0REbDE2dVhCSXdZR3IxX1lyRy1zOUU1dU9FbjVpVm9oY1JsX0RrZlNNenBsSUhPWkJzLVM2X0tud2lZMXZYeThhTWlqb2tFaTVOZnBMbUdZdklwdk1MUFViUzBrQXhGTWo3dktnRXR0S09pU2wxVTJleFF5d0tsYnJtUGxFamZ3YnFjRVZkbmZvTFhIYXpfNlhYTE1Qb1FobWhKUWtvVFN6UDFIb2J4UWY4Uk53VmpaeGF0enpxMGtpMjVmUXlTNTlET0wtVGtiWlFqOTByUnpCQ0hVaTZlNWFmNUN2b3p1T2NIdEJmRnJHVkw4R0JQMk1JWi1UTGsxZXcteFpBbE10UVRITEVuUE1US1Q3X0VwY2dJalNDQTVsZHFXQndZVWxJaXZWd3NzNXRlWEswQkNvWjY3OWxyTVdTOEIwUmRwbjM1djlPU1JOejh3TUFTNER4UVV3OXhOTzBrSjdCWHdUM1dOem90dVFFVDFIeWpEcDV0UHY2MVZuVlVDc3pRME1TaTcwakU2OGtnVm9TM0sxaHFxNUhyZlJoYTVEM2MzZDFBWnJzaUVsMXpMNU5OamktNnBpZENKVmxZeFNBa0gyc2VlZ3lGeUVVV2p3ejZRZzBzeWYtUGtCWVFaRGtKOGJsUWFyUjRMdVJGVmViUTZ0bnQtVThmS0M1d3kydzFXMUhiWUZOWHRzUnVkcm03WWVtUDI2eVVNRzNPUEktLS1zV3VEUW1VblIzemNaVGZkcVBkc3ZyRmtES1JESWZfN3hsbDBLVGtIbHEyRjJOTTBiYjlDb281SG5RdERpX1pJZmIxa3pZd1BHTDZMV1hsazdhcENaQ3daWVBLNWNmbHkyWU84QzRuX2w4eDJkLXdkclBMWGNMRi1xZnRtX2RzZmNrNjBrNUtGenozZEJKV0otY2l1ZWM0S010Sm1JMklxUm50MVpJRnNTOGhEcTF3b0ItLXVTX3ZfZ3lMMVRxRklNWE80b1dUZktOV0l6d1NOUVM3UGdCYXdIMHVIemZDeFJ1bmh5enRMTEdMZEtBamZxc3d6R2dDMnV0THcyOVJoZWtLWVNyaElGWFVoNFFjZF9GOUxfNXZyc3pSaXpKekRUMGVkWlhSVkZNdTFsV29zQUs2YV8wUGVZbFI5cC1XMS03eWo3dGJveGZGdzMyd3o2VlNWamJrMHlIUnpRYmtwNkp6QlIwcm1QU3VlU1QtcHNCSWVwSGI3S0dHQjA0ZmJvLXk2N3VSRkxKTHZlcTJua1o3dDFIRGozQ2taVGduUmJ0S0xYRVNkb3RFY0toQ1ZXaXNrTDZabURLVWJJTkF1MXpLMlJhZkJhNzVDNlVPX2llVnAweTBJX1JnT3hEd1Z4QzVReS0zdVZkc2trcFo5VGduUGhXQWlURF9tQlBmeWhQN2NCbFZvUUhoY1lKYWVjQ21jQmtVcTd3cmx1emdEWEduUkFveUp6MXlwZWNjWC1IUnlqOEFFYXhxSkVUeGpWTFpNODBNS0xtRjNXZWt1dVMxSDIxLTFYUFcyaDBfSkE1OTg1cm9uWnBCSUtoaXptUU44YVNndjBIbFlmVi03cTl1Vi0wLXFrNXVQWnljQkRDYnpUZnlGaEdzWGdKU0tPSm5PYkU0QWktMW14NHpJY3FSRmNiWkt1cF80clc5Z2lFX1pfYjBpTWlMTGlBUHJ5dGo5T241ckx1MnJhY2UxUHFvb2VrZzFuWWxCRllTdzA0eHBWSjNGNURCOTBDMHh0SzAyMEtEakpRU1VCZW52dUpsZ3V4WVMwWnQ1N3dKcnVXdmFpYUlIalFBTmRjMU1lSVJEZjF1Z2EwZ1NwVjZPbEltMlY2aTVDMllfcmY1eHJITmVlWjdwU3A1X3c1UTk5YlU4RkdEMHZNbXE5azc1eTdsR3NTMVlwc2stY2RZd0pSek5oa3RPeW5GOFZBNlcxSjkzVmZsa2Q0NTFnMGRJM3dGd05kY0FqWG8xdUMzWF9zdU1JOUl2ZU9jcWFqWlVNcEFCMTZzbU9waHVpQXlBcjNTbTltMTJMMVBvbzVVVDE4V1lEbFl6eXhNYkRmWmRUX0I2R2lNUnpFYVlHSENyQjJoaUhsYXlDdlpCNW9lbkVTUG1rS1c0dFNmOXhRc0R4U2U1ZnR0UGh4enJ4UWxieEM1V2dINlBibzdYdFcxdUpMUEVzVnlwdGRjS2lPSHczQ0d4dXA1NnVNdjhlRW50SGRHdVFERmVfalk5TUJYZXNsdnMtQTdBVzg0VUFvWE0xd0RYUFo0SVZjdmozSWRpbTh1WUVDU0dXMHlPcUo2MEVBYk9nM2ZERW1wbEpNVTBuc2kzREZmbWlqNkVRZ25hdk4yVUN0Z1lKVUUtUVoxU3lHTEY3OVlIRXhFVFRUZ0RheHNIYnZCX2NibWFwNC0zaGhPS041OXlQUmN1ZldZTGtrMUhpODg2c3V6VWJZa2MxTkZRWlBGekdYV28yUUFvUXlCQm5DS01YT2QyZzBPS2RaSFBYRUtVR05FM3A2blo1WVFCMUx4dXJhTVJCSUNqV2lHN1E2cC1XdXRpNHFvNnRvUjgyQlFFZUtqSC1KV2t4a0NoZ2tFaXpUSjFGcjlHRFZ0c3duOUdFcTBKZjJ0aFhKWXZUTkdTY2tTVFEwUzFIa0NlcVNLOXAyN0p3NHl4RTlocmFVdHYzaXl4MEhFZmNnTlNLVTk0WmpFa0R5UFozUXNLUUlCa0xweHJReGRsZ1hSV2ptMEpJSWQ3WmRiT3I0YUZPN2ozZlM2a3EwQk5SVzFBVnhRWXpkLThFWkV3b2w0MFNyNmFfaG5tUUo4WWZvYlFoTDBhZFBfWUNaT3dBc0g3alc4U0lKbGV1b0hLX2hPc2Fha1hkTnJPaFNoQ2VVYjNpNUQxRmxkak12SWFEajJFN1dfUDJodmVna25PNkFhOFJlZ1JRN1dvQkVpdGU4OEszeVdPOWJkdmZ1NjFJaTBIRU1RUm5LQVBILU83RVpMVWdzTmd1ak5YRW1jRmdmRmhmU1Zudko4Vjd1UnNmbE9NcEZkTmZzNU1KUDdEcEF6R3Q0aGRQaG14ZlBseDdqTXh4cnpOQ19GS0tvRDBwcWdJdWtTVnlMZzdrbXkwOE9paTk1QUNMREZsTnlQZjNtaUVUMHRfaHBmWFZrckhCZDB1Qk5Banltb2J6WmF5bW05SFhLTTFVSUFJN21WQWdUZnVUYmQ3eEY5TjlDNUJTZXVyVDJtYnNaY0JtWFNfa3hZTWtSWjFkSkdjN3FwVFBSZUxOVm10UURBVzZWdTZUWlpHNDREMHdRNllKalItNlFiVnNSR2NReGtxR09KQ2MyYm44SEdvMnZCSG50TTdEZVM0RXdLUXh0bVduVXdITTNVT0ZHaWVOVmRvZDhzcllzaE9sM2tvZlN1YUxIUkZiRGdVQlZoaHBFV3dUejF1VlhOd2VVN003N0R1dGJZYTFiRXRJY0hneXJjQUJTVW41dlh4cEhhbVY1RTJHczhEeDhYTmlBaWdYREJfbmhFZEdWWkVqSmd1TDg5VXltR0c0X3Z0cVMtN3hGYmtJaFpPMXBEVHZTMm1KM04zNUduNGI2S1FWcUEyWEY5amJwRFF0VFY0bEgwZWhiLUFyeGtGMkJjbnA0RUdNZWs0eDRXN1RfNEdtNzlFb3V0TjJzSW9iSFhXYi14bURJbUVId3ZHZkFsYkc5ZFFLZ1pDT3Rrb3EzUHJvY0hEMVFUTElpNEpQYU0zc1VFNngwcy00NXR5cEFHQ3N2MDhralVkUW5GbUVTYUhTYzJjSE5CUEFFX2ZzMGU2bm1fakRLektON095RkV5Ymd1bHZ5RTRsb2ZxWkxfcnNxWFlPN3lvT2oxX2FLVHhGa2ptallGNWhiS2FjcDhCNWstRUZUWVZYMzMzWG9OelJreDRnOFNWZW0xVUNibE1QOTJxb3BLUklPaWNJQWpmN2dkS2hhQmZTaE04UUt6bDJBVjBVU3lwMkdrUFRja0NrWEtXUXhhbl9RLWhtZ2l0V2w5ZVpOR3BpUjVSUGxqR3VRaVRYNlJENGZKcUdEQWNMSnEwYjZYZGhva24zMHd0Tmktc2J0RUN6NC1HV1ZOZVVBYThETl9haFNaMXAwT1MwMkRkbGVKOG1ZcW5vYThEbF90ZGZEV0xiNDg4WVplU3JwUmV2WlBJWm5OQ1lQUngxTDdxMVVGcWhfajVrQ1N3Q0VWTEpDUFdzaXlKSzluXzU5c3lUaW9DemxyM2tuTVZ2bDBZSnFYdXF2eW95TUZrcDdGdVdBbWtfYUR4eURaYm1mRGNLNVFnM0c2YlVwVXhPQVJyamgteWtreVpfcmxsa1hLUjVrTnJJMFFKYkw5UHBiWFNtMzZVSTFNajB4alVael9IYmx1Z3J3c2lzRUtGcGw0T0k2bUY1cUNLZVAwWmFmaW1nblhxS0d0RW9wNU9kTHNGRXNoa3BSSWh4Wk02eTVta0RZM0FrX0c5N0FuLUxzaVVWdG5IN2NYNUJPbHZIMVktREFGdzhkQTBpOFhPbkJoWnZ4aFZqdXctbWtHWjBITURVS0RMWk5uUVR1RXNnVEpDT1RQOVc5R0xtaGNfMGRSS1UwQTQ0RFVRU0l4SmxEYzNYWmdYOV9XdWxMY08tdjJib3pvLUhLcTB3blN0dmlPSU9YQ21BRW9PWDFodWROaUJmdktBc2NYTnE1bGc1YmtaN3dDR0xSQWoxUjRSelhDMnVsaUkyZ3lpMTFHZU1VanpoU0h5Ylk4NG5vWGpDODNJcGFTX1FTYl9WUFEyeWhMWExVdnp4SHJ4YldpajQ1a1VEMWJEZUkxOHhhQmd4UzJ6VlRVMF9FcW1WaU9wbjRnTWczd2oxMW5tV0JYOHVHUHlkUENhV2dtbFJTVXNxVXVGQ0dYZ3RNUFN2R09XRkl0LV82YzFWdVlzMGJDNzl3QnhwYy1MdENkRXIweVM4NWZKQTE3aktoclFINUJLQXNneUhKbzFVU21FZGMtTDRweWpkMS1obnZUYzZxRHBXQmhSREhieV9DeXBfc28ycERfYk12eFZ1YnBDX3FIT0dlaVRLSkpTcHdmMC1OdFRLSnAyUzloUXNQYnhIeUFlQy11ZThIMXA0WlcwWVVyWGpJRDVoS2pKRzQ4b1E2THBsaEJTWlNCa0xpczRqNm5nV2ozN0dLZEFNN01jNlpKVFZRdEw4RXZjWWNTSUlEN0liMHAzXzBIQzRKX21NTEtjRlZWWVp4TjlvSkVPZWJLUFVzbndwelVUX05KbjQ4VVZrMGwzeGtDaFlEVDVmMENoNl9MSmhSSzY3ckI0dXk2WTY3N2ZKN3RjRGFfWWsxZlotcmVpSlBRNHhMTnNOZ05hU0FoQ2tqZE5Nb241bmlPUFNhQUtVcWdDbkhsZzN5bDhPOXFhcVk1aXk0TzFlS1hHcmY1THkxV0lNX1luNmcyeFg4aF9TZ3hlcTdRN2ZOYlhIT0Ztd1Ywdk04aXhhRmJZYnF0N2hHT1pjWnVQaFVOaVdDSF8xb0MyUHlIUE1IcEtWcWdaOUNYYkdQNmFhY3J0UmpRMkxZdUZNSnNWRVhlN1gxNm1xMDZpd0dLUWxsUlZxXzZoZGtqUUs2SVpDVTNzMXV3cFlGeHdaTW1CQVVCaG1lb2kzUVItQlhrYnc0RU9nYXllQTJkSUV6a2g3cXFOYmNXNlNBdnp2eXd4cUlQT1FTSWYtMVlSRnZfSDBpYXN2MmQ0R0kxNHpDWXUtXzMwT0hqYzYyX0VMLWg4V29pa2Z3cTNXZWZNMTduN2hGSmZzMFNWNTVHY2U3UTdDQkxxNEVkSTlXc0t1MDlxeWhNWHJwUlZPWTBrZzdsNjYxa281c0VsN1RxYzgxNWl6OU1wS3RZU1RlV1lsd3pnb011clJDNktNYmZEV2poUmlldGo0Z0RkSW9GaUQ0dHJGNjZvU2k0WTE2WkNxYkVPMWVKNGNseWZZWk8zbzBwSk1NQ0gybUlwTVZPMkRueGJSSURIOUxiSEU2VE1qQjYtZkw1a3d3WUVoSHI3UnNaMnFFYUdWMDdXcFkwMUdoTWpEZXE5dGI3Qm0xXzFvcWtsdVcwMjZRUng5Vzcxa0RwU0xPNkxia1RWS2xuMlB4VmdZa3F5V0pHNlZUbU81T21fRWxlblhQMmx0bV9VVXN4MXgwdkxWczR1ejlHV1VYTGZKbVlzZnViQXBwVF85anZyRDlkV2xWc3NKdUMwRlVVNWxOUVUyOEJWSXpycV9ublJVRUJjc3BLR2d1RmN0Mjk0V2xFVjZzNFdTSU5vNG8zaVM1RWtfX1FsZEp3c3JKT3ZQS2M0S05OM1F2cFJDa3hPQ2VwZGpZZEMtbVdfMGxNdWVoVzVmcGUzRnhFMGhjeHFrZmkyUXA1Mk5VYkVZVWpPV2JRZ3UySVVmX3ZBMWpIRW9UTzRQNS1vYTBrRHZaUmxPQldRbTMyS0g0RkhwYWpiNndLTWVIOU1VZ2ZlS0dBNWVJRDRxaWwxWURONkRMa1BKT3FkeU91UGdqMTQ2WWJkZEtQdmFDOF9YS2w5Nm5BV1lfMVo3ZTNKYW9NNzhZR2pMaEV3alFpdHlSOElLRTV1ZmFDZHdYMWNPMG5FQlRnYTZPNzFrSEJkMEpGLTQ5X2FPX2RoWWo0WmVLWVNxOVhkQ1NHNGQzSFNxVGVsT2ozX0tzUGp5dk5ScmkzY0loVmJVWHkwcVoyN1NqdlRRcHFEaW5yMDBra1Q2OC13SXMxcXJhazQtcjZoQUFUeTM4S2FrUFJWYy1WMUQxUVppR3hFYUdrbUg5bF9YT2hFOEtHREIzZFgxNVNOREptRi1PR1dKSlJZNWhqZmpFWVNEVUhmb1NHTElNei01Wk5hVUs5cm42cFBMcWZfcTc1dkZ1TWRISzZhcTl3eWUtQTdLTjZyS0xqMlNfclV3RHk4dnBlbFBBTktNTG5Td09mV2U2eXdFRmFJTDRVLS01Z0NvczJBbGd0OWE4QmRKOVpsUDBUSzZEb0RVY0JTbE9VTWNJNGZXb0lDYkhwc3FnS1d3MUJXc0xGTFU1UnNSZVF0ZHhmSFNZdWs4azFWUlNhQnZnSEh5Uk9NemJXYzhSWmJCVjlQc1doaEpMeVpMM3RldzJ0RkhaM2h2U1A2SUVidWpxSE0tYnRWSXFqb3BEOHFDMG90YkNERnNqdXV0bFdVekgxTXhNVFFGdk1KY1Rfa0swM3NOSVBNTnc1MVlrQm1fV0hiQTNZY1V6d3BPd1JNNnQ4YWFVV2diRUkyNm93Szlhd3BUTzJmVHVncjdzNTJoWTFBNVRpMXRobDM4TU84UGNfeTFyYWJBeEVsMGloTUw3VlRFWmxhUml2VW5JS09ORDdXSXE0U2RHbjZzbXJLWW1LUGRFNy1vZzJfMXVhWkJyblRScHNrd1FiZUVlM09tT0lRUjltb3ZmNkRCdlZlVGtieG4zTHgyM2hwUVRRYlpFSTRORFFHMnlzTXcwSnQ4OHl2dEo3NkpwSEFYbWhkZUpBNWI0QTBYb2JvSW80a1JGTjNlUWlCQlB1eTVsZU1qeEZnVVE0N3Y2M0pyNmtibXpfSEVTZHowOGhNeUozakN4Q3ViNWdJVGhtbVdkQ1lIUjZRYjRtWlowMjhIT0ZCNTl6MkY4QVVENXNwU2wyZmhKZHBtUl9aZ1BsaVBuUm9YNGVPU25Dc2ZLTW95X1YwNk1KRTl3VGZPSXU1ME40cEhoTE9qQXNUX3NCSHBfYWJMb0x1ekpJZXdtV29SRThVR2xWVENOX2hJQk1pdWI1V01lbDgwa09nbHJTNXRMZnNCdW1qTTZXUEladUpjRG1jWlozdXpEeFBkRWdHbFZydXE0ZmpfMFBoUF9uNS1FcEVtYTkzZDFaLURCTXU3Wk54QWYwS1ZBOXVJOXZ1WFNQRDJOVmRpMG5QRFFjbFRCRWhKYW8wM01uc1VGbkxBNVZqQlJnQVV2Y05Cd3ZlYzRfOE9WMDJLRVRxZ0hMZ2tzbkIxdU1jZ0cxYnVQWHF5cmJJelN3WGJiTFViOTFWSkZERl9ZNGFTWGhWR0kyUzFpdGdZOVlsYzl3aFlJYU9pQy1KcTNiRUZiVnZiZnJnemMwOUtiYl9ya214ZjFpWDVRczh0blYybHpSaVB1eExibGx6dmlEYkM4ZkpMRE44VHo4NExMa0lMZHNmdjBHaWtkRThSelU5cFNnMVU5ZURUT0RnVktDRmtzaXdJbEJ5MDRqd0d5NnNwb1BudUxweG53OWhKQnpUc0M5dVRUTmlZeUk0SmxpdWs4Z3ZpR0JTT2lMeGNiRVlXTGFpN2NNQUYtcnI4VTYya2hDYlZZVU1mVGhnQjg5aklmNlZSa3pVSGs0QXVSR1k1QnpraWxBcDhHeHg2M1RacnVXR3ZMa1FKek5wNS1PVGN3V3hEN2N1VlFULU5icVNZRmZYMnZVcEt2Unp0WjNxeTJOMTRIYmdIeUZMYnl6SVVoTXdiNkY2M3dwcnlIN0hfMHp3OGRfb0N3bWVCMVBTQVBUcFhiYjhRZjluQlRXbjFCWlBMbUNVc1ZCaUFYQV8zUWp2SWkwUXlrN3gtb3BGc1E3OFdJUVpadkhsb0NRNWI4UGd0bVdaNUFwVDhPc1dXQU1sYkFzdXRLdXZjTFkzbW9DeFZIOGxzclZxOHVXSjhlQzgxUV9uOG5YNGFqcnZiNm51M2ZXTXRDNmxFeWwzSW1JSHRHd3lvVVZOVW4xZWlBQVpnYzdiQUlnNlBoV1pxS25DMkFyU19lbEVheVFUd0ZTWWxrM2Zjdlo4Z3RMOHB5THY0YkpEalI5NUprM1g4NGJEek5uSndfY2o2Y2Fqb0F3WW9nc3RRZFRnd0pqTU1WaU1Fa2hraVE2SVRUU3lDNUJmOTBCa2VXbWZwM2N3Y3c2cThwMG5NZEdnMjNDc0p4VHNla18zbFotRS1KcHZESHJnVUV4d3g1Z3lCVy1STjdrX2xnaGd3OUw3QUNTbHdGb2pHVzlZSzA4T0J3Tjg4ZEQwLVlmMkZSRmFnaFVQY0RfWXhmaC1qNDkyaGY1SnE1WWtyOGJMZENiZjdBTGgyeUp6UTRoUGREMDdnNW1uNThnT3ZMUWo4Z2tvTTBfMHVGOHBRaHpqenRjVlRaM2NBNkZobEI2a0Zkdk9OQXZVLXI5YkpFb2NOaW5fRTJmb1B4VUxqOVdEdGxaX3N2bWtEVzBjR05fRWRlR1dKLXhLcTdWNDRzck5vd0lCOEprZHE4dUhZXzFadVg3bWV6MHNYc0lNSEFFSWhkSnBJelpYQzVjYW9lTDRfalVxelB3dzJzMG1IU29CSlpQNjNWODhFQVpMVkdtaklwaC1PTkhQeU9QemFlQ21xajFlTVFaODdJSGNhYm1yUGNaWDFITTVvRi1meTZ5RFVzdUJyRkx1dmRyX0VJQ21TM0sxWEZmWVhsMkZCU1ZsRGNpUDJ0YVF1RzR0dHhjaWhoRWpERDVDcEZ4S2dha0lRSWc3VVFBTy1rUTN3THZHdW5CcG4wVy04eGpWRFBoU28zUUNOc29sNF9zWnFqVTBoeEVNTVo3YkVxTzNSVDNTVW1OM3RjdG9LWTBySzBxZmR1bk5iSXNjdG5TcUVPYzg3dWd4VTBXNHlQYjBNOEoyQUwySkV0bXlRZmN5RTBDalkzVjVZMjNlN19UVV83bEk5alBTbnhvVi0wdUhCRjZ0Z2xYN3p1akdJSG82MU5CMHo2MHpXZ01hYklqd0Rha3dPYXV2Uy1yX2RqbEZpeUUyZlJvQnNPNDN5WlI1OGJqcHhpRHJxOWdnMEtJcktBQ0gtWjliTUdxeFBIbHVrb1FGeHAtMWszQjdndE5GdGh4dEJqMng5Q1FBVUJwMFNZYXRhUmgwVlBPRGptMWhLd2FUTnUyNDlxZW0tbERiNTRhNFplaGZqVExkS1RoalFiMktwY2FCbVg4ekpQbnRhVlA2MXdDeVRGVDBSN2RIVHloZUhfS0NYbHA0WDN0ekdoRTg5VDVVWjVxVEZJWmNDR2I4YzM1c0pjYnh5bWZ0aUJJd05sUFRlbkNid3dfQXlOUWhreG95Wk1iai1lQ3NBN1M4V3FaUEp6ZVozWE5iV0ZJeS13S3hFMnVyTTJKRXd4eExXRllwOFQ1cFBQQVF1NG1NT0k3SDlfNzRTcWpMRFpCU1Myd3dUdU1YZW1aSDJuWVI0WmdCUF94UkZENzYyM204ZzRuLUdNNGhibVZPMW1LTllJbDlHdzljbkpQOHpSSWlNbUppWEdXTjktbjRPVHFRWExFVnlKbnlUQ0RCMzFTSFctTThyeUJMemEtOUxOdFZhUzVTWkM1UG1vem9EMFZyY2hFVEZmelhwREJfZGYwNk1aYS1icEpBQklTVWJidi1hM0Zobm9JUU0yRW1uT1N2Rkw1ZFdDRlZMcXAwREJOZEVOS0FiQmJaNGdaaGNEREVoSVQwQzh4dWJ5MjN1MW55ZlowRld0WXFoTTh1TS0xVzVOTlNLZGkwVFVhQ2d5OHhBdEh5Wk9YeWgzVFRMVTh2ME1rbjFRRjh5ODRsOVJlejE5VTR5Z2JqX01CVUJreGYtNnhpSFRVQkNpQmN1UnoxM1pSTkVMNUFzTUZLalQ3Y25zRDJxNS1fdDk4dEZ3SmNQejBTLVctbzFtVnBRSkFjZWZ1ZXBRcUdvVzdLNWIzMWFCVHUwWVc3MTZCeW1pSVEwTU5VdC1Cbnc0VTZtdG9wWWJVRjExVXhSSHl2R050dVVUMlp1MDFJSWlKTVRvYmxoZXlYQkFraEVUaDJTXy1Cckc4cG5oZWFZaE94a2wwZE1nZy1ISlJ6V0RXSHJTZ2tUN2plaThNNnhOY0Nwc19veC1kNkdsX1FwYnRkRGZWaGQ3clRaTzhCNTFQSVN3Yk9aYUhkZHotRlhUZmd1c3p6S0RwZmtSWjN0T010VFJ0U1ZWR2t3eG8wRWdfQW9iRVJSNnBBblRfN1hZQmpFWl9BSVVwQkhmYldjZENyUkN5YnR4b2VUU0RvS0twblJkV0E3cnpiLUtDQmVzNG9mdWhicnNldEdWXy1rT0dLc2FuT0lPbkNPQWdHc2VFb19NTnBvZVpjWmd5QlRlaHFmNXlCQ3FZN2FmM2E2Q0F0V2hfSE1IVzl4cGk1TVlZVk9sRVBWWHZHTFp4bi1xS2hzUDVwM0g4a0VHam10d21CWGFuQVhkNE1HemZtWnA2UkZ2d0VIaFJHNFJQQkZYSkZld3laMW1oSzZZVDZXYnpuUGloTC1PTjJPVnJEc25CSWdEUGVtclpnaVJIVWdnMkk0MXNnX1RMWTQ2N2NYUm1JZUc4NWpUTmRieEhkRkt5UWhNS045UUVBYXhDTGJsaF9FZFF1LWJtcnFfNVZoRmIwSDlocF93S0M2bFlOM3BFR3ZsajN5QzNIYU1LTW8xSVlBTkROcmhGM096U2VHUS1SWmZHeFQtZTNwdmRzc2ROTHE5XzNrdWdGZnB5ck1GY01iMkl5MFk1ajN2bF9vNTFvLVdiYUN1Wl9KZEZfb19JZV9zZ1ZnTUhoTVA0elIzRlBEVjVjVUR0bEtWWldSa25XMTRaZ1hnbFNRRG5kSG5lbmpqR1N0WkZnelh6c0FqX2xibm5BXzZnS2ktZHQ5SXk4aW92cFN1SzhTMmMxRFdqU2xIQ1FMS2tCdWR0REI4RFRaYjZneHJCZ0piNEpFUWp1LV9mUXlPR1NOellNZ01ISHFiVTVVbmpxOFVlQkFlclNnQnEzTWRza0xRNjlRVS04clRZbGszVEVLeFQzS3hhTUx6MmxWTkZSMzRkUDl5Zm9HMnZvOW9PS1VEb3VUaXRwNkdhV29Vdm5jWkdDME52bktJaUIzc1NiQ3pOWFdWbFpDWDhWdFhRQnB4NV9USDNhYi14bUJOUnVQMUZ4dlExNERsanZHQVBOM19DcHhxaHAwTmxzbk9xNzlqYmV0TmtqVHVrUTFZLVVhS1lUVFZOaTlQV21CbWJJTGx6X1FfQ21lSml1M1BwVVUyM28yNHlkR0JFTzZNZFg3aldMdHp5c1hxSVJyV1JUS0g1dG1rT3VwNlQzck03UGotb0NNMURacGZHdFUycU9aVW5hZF9TNGR2V3RBT0EzMVVsLU1DQjlLLUpHZEhyU1NKS0xoODNqM2d1ZDdoTUswVFJmYzVXLWdaZzdiT2xUc2EwcTB5anVKTzAxYmZQdjdQTjN2cTRkT1RabWluNnBJMzJSbzBTQU5NZzlBRkdvR1g3TElaR0Y5bVRMZkZGbkJTUlctaW5taW0yRW1NR1piQV9hNUdvTWxOamhmV2JvLW5aNHZubkI0M1NjZlNwZnI2LWRvRzd2VUZzMHlPUURuM0VvZF9ZcHBwUUwtLWtKR3VlYndlTVk4ZmdtVy14NktjRENjSEl6NU04MzhROC1KTEpPNzVLS0ZqREZGa3JtTGZfTGF5ZTJuekpKVGxhN0NnMUMyWS1kMFJGZnd3ODRHb1JjaGpVS0RPQnlFUDVlNzRpcnVSc2hjQjl4QVUweFpyZlIydmdQM2gwbG9UYjJ5UG9wekVwaXV3N01XZDA0eGhsMWhJUm1haXloRFMxc3R3WFh3aDN5SlNuWE5NMngwdnY5bGpQTmRDTzBiQ1lyZVQ1SXY3eFp0WEl1VW5jaWI3eldUQWZNZHM2cXF6Unp6Wkx5YXFTT0JrQkxJLW82R05SMm9PX3F6dTZteG5tMlJGOUlMcEdxYnRnZHhYTTdScVNkNVBEa1RfVjhrVzdOOXlfTUJuc2RpV05uelo3WndPNldrUlNvbkJPc0licVFVS3NXR1dUZ1E4ajE4dy1hd3hnWVJNQlhrY3lEakt5S0piMjZrWjhnRXNlcVQtM3RPTHdFeGM5cjh1MEtLT1M5YlROZDF3YTRFTWZHMEhFeE1SdmdqQ2N5QTlLa1pnU3Y3eTlNRm1BS2k1M3FXNnVvRHRfX1Bwa0lFLVpqUGhLLTdSa3Y1TmJUQnI1bmctTlR6ekFHc2s2enVPdnBpU05JSWxBRXNlUUJERWNES0c0M1Fsa0N0X3g0VmJ2QW9kQk9lTVJpZWNMeTVtLXo2SVZyME9xX0Jnek16ZW85Wl9xZFhWdFZobTU5ZkhDek1rcEM5WEN2dTVXaVU5UzhsV3Y0VmM1STZXa294QW9vZ081QXJFVVV4T3JsMzlma0ZpR2FvUmNBbWM0dG81anhUUjhuWVJXQ2tFdUQ1dEoxcFFUNkhpaW9XMk1OTXR0OExMTTFpeUMwejI4bWFlcmdBZUxGQ3pTODZ6QnJybXVTWFJEQlhhaW9DWGM3VkoxSEtmSUFYcDY2ZEZ3RjhRUkdUOE9LMm55dlZIMzlvRWhSX2M2T1NiRzJvYkxTOXdWM2RFSUFiY0RhR3hjVUpCU1JXeTdUR0ZhcWdhemlwRVRnejF0NThlNUZhS1AyUnoxMHV3LVRHSWN3VVJtRXhlSzVnbDZJWWdMVThKYmVNdWtpbTM4dVFXaklVQXEwOWhva3RsRFNueG8zRFg2STJjdFYtRk9xYk9rX1dLRURHRG9aRG9neG84UFNELUJWeGJrQldRZEwtTUNENUpzblBGRjZhLV9BdFBaWktKYnZoM0t5bWQwNXVfbk9qTURUdXFKU0xuNUV4MjFPbXAzQW9WZlpNYVlTV1hzaXpOWU10cEVReEMwbWp4aDFFLTNmRm5uOE9GdzVnTXFXNXN5d0ZHRklYcUF5MFlmc0Fsb0ZBTkstRVZvVmpCbjY0b0Q5X1NsNVBwZmxFZVlaSFFRS09IRmxWazVwdUhlZHdpckNfZGhkdGp2TnV2ZlNSb1BLU0VJWGxnV2owRHRrRkFiaXJkd1FNTFBUc21CT2pOYnhSWFkzVG9Qd0RSZGo3eC03VVJxY2Ftbjh2VW9UT1MxYWE4WVRMNm5FNVhsVHpuOW01MEh6ek1Rb2tnemcxQlFLSjRsMFJkbWw1a1RiX2tTRm5XY0hobHp5UGt3RUxvZnZfYnlBN0lSXzV0d21LLUZGcUVsYnE5WW1IaXNrR1BWMlpHTDFmTDFGaU1RSmtxLXNzeFlTNjZJRVZ3b1pCaGw4dUZJbnVidXhFeGJaSEpTX2xQY0pLTnQzcExWazJJSzJpc2duVFgwTnlJRWNzMG9pdDlfQVRERUJ5OHZwWTYyTjIxYk9la1lJM1o1Q0pleFFpVTc5VU1wektndTJvTGlaWnBaeXJ4TnVMa3BWSzJpT2toanNaN3gzNDhRdjBSUjdRN3p1aWM4b2hnbWYySUs5cjltOW93MTg4MlpRNFlETTdlOGlxc0t3dkZkOWZuOERlcWl2cmROQUhRcjFlQTZnN3BVSkpZZTNiUDJKLWpGSnN1azQwWXBFUXZVdGFaZjF0cUpPQlMtWlhvOE00aGEwUE5KTWx0bFhmZGJub2x6aHRnYVF5blR3WHJBRTBSZmtnWjlMaHFtenI3ay16TWEyM0t3UHdncDJmUGgzSmV0Z202Nkp4eHBnVjQ2dVl3UTVwSUFibll3MDFOTUxFTXlQaUNySlFFRWtwaXo4WG9hOGtJMkdRdkh3b1pTYlMtNzFZcHMzQ2oyLVZkRTBNaV8zUnRJUEZyaVVTUERfS2cxQ25pQlduN0IzS1pUYjd1MFFwOXl0VE1TdDNRbUNwcnR4YlktVWFwWEtESUYwYVVCN1RPaDRuN2lFZ0pQYzV5M1A1LVZkQ1VxUHJKS2VwckUxN3AzMmFyWjE4VFFwZE5rRHdXRWJWZFlMZDNvc2tTdkhCMHBmbTFablpMZzNpSGo3SmxFX0VsT0RIOVQ4MXRBS3ZyUFlzZUJsWnZQbEdUbDdRN29XN0tSZ21zVDJHMmlqOW11RlVEWEoyLU9ycFhHTWFURGxpdGNhcmpXR0tjMXFJRWhzQ0IybjI3LUlDX2FnbDdHbG4xUkdCRC02bEZGQjFuTVBWcHJpVGljQjA3THJZblNHSTVRdzFpY0pYNnV1TzYyOHRTMEh6Z0llUEdRVzhPMEtyR0xEZkktX2ozQkphbEN1eEpMeW5sdmE4MDVaWFZ3RUdCcEcyaGFOSlVleXhJeWFSamM2SGdOZzNHXzNIbFItWXhiUjBfSmtEODJwczhfd1VmZTBGOW4yYkUzWEVNeEd1bm9rbWdWbTdxQ3I0TzNxQk1HZ0dvN3ExNFRVTGhndk9GeXVZU3BKdkJ2a290NVptZS02SC1idVYySlVjNENQYUN6Y0pFSnB6QlNmTnk3eEFlQmNvbEN4Q0w2MzZDZS0yeUFGVTFFdjJ0NkN1U1BHZUlyY0RrRlUzT2RWOWxvRVlJaG5nNUdEdDdXUjN1RDJsRkh0M1dWLS1ieHkwSFU4YkZmT0c4b0hoU25NN1hsOWtGR1ROWUVxUndIUjk4eENYeXVlS1ZEMHVlN0ZPNnotY3dxV1NxX3BFb0ZUX0V4OFlHU0EtS1k4N1RCRFY1ODlYSEdMYW05bm43RXJybTdNc1p5Znp4V0NBb0U4YkktX0hRN3dTLVVTc3JuZkh0eVJCVkRMcHRSUDVXWDhTSW5jekUwbTFsZFdRUFRZdDFZTVdld1M1Wk5GWll0SFFVSU9FUzNRVlZ5dWlrcXZQczBQWE5Db1p1ZUJoVVViZlVab0E1WFpDTXFYWVdsQnBUMzRVWkRTV3RxUnRVcXhjZlk5YmpvNzZWNjRfSFAxUHJ4V2NQMFZFVi1QVmhxTE55VmRZd0VsRTB5YnlyWlNsRjRwVlM4VTdsd1VlS01UMnpHNWVDLUktakxpUEU5S1M0eWU5WEdtZjlVZEZjd1V3cXBiMjl0cVFFdXRUNFRmUU54elM1dzFqblUySF9BVmxvNm5LZGJiLWt5RjB5WGZyRXB4VHJtR1VSZTRqMEVzMHBXbU0xOVZxY05yeDJDczh0UDlGTlFxNlptQnJ1QVY5ajE0SlpOdUhvY1ozMmU3cTdsN2tfcWlseEtDN1hjR3lRS3U0YlpXdS1qWUEzdm5OSDVORnAyaEd4aWFLVmRka1pDQVlTUnBqMHVNZ1FuVGNEUkppTTJoV1piaGY0OXBUaUVwak90dmhIbHV0WDdYdmpnTDVZcWtVRzNBbUZVelZIOWs1QkFpUXo2VUtwVVJjUFVNUnFPTG5fbkpMd0VsY2xKUE0xYldZdEhZNHNTdzl0OTMzSjZxdzdENFdNRGJRLVI0QlJubkxwNUZZRUtSY2Z1cHVKWWtxV29xd3dQUzc4b1E1UmZfSF9VbVlBZEFOUXhsLVU0MUw5RTE1TEZqaFBsMUZObFhNLUp5ZVNJNjhlbUJ1NGNWY1l4d0oyMGd6Y2NuSWs5UEtjdXdUWE1IUjVIMmNtZENxRnVBY3lYUlJCaGhGRVBfNjFmbmxnRjMxMFZSdS02c3JmOVhnTGFuMEdtaVNZSC1UaVpmcUFrUjItRVlvdWxFUG9UWUw5OUhTekcwQTBveXhpc2YyaER3Z1NxNDVpbjJaTU9BQnRrNGpGT2ZKQ2kyOVZxMkV5YXVOQmRodkFQeUVzVHJpcV9ydHZPN1phUUs1Ulc3QndPZ0RsY3k5b0ROcmVfRG5mZm9jRUNmc3hMVndab0Z0Sm02eUpoNmU5SDVTOFdMcmF3MEhDTklaR2QyaWNTUTJEMG5oMjh6b3JSY1lfanpIYjBwX0VIZk1iNjhxa1hoQmREVE80ZVQxeGNtRmZuUXRCQnRCMVJYaEd6cW1MRlhTUXJRRWxHWFY0czZxNWFYRlJQNkljdGowQk02VkxHWXVpOUdZb3YxZEVrWVRaS3Y0QUtnQndySWRGazl4N0hOT29YRm8yRlgzY0hWTUpWU0hzck4xY00wekN5SVNGdDNkaHB4TnVsVHY5TkdfQWZmUUg4X3NQa05Ua1R6clcyRlM1RkZpTjVrQXJLeUZRRGlWNEZHZTRxWE5WbFhfOURtLW1Hdk03Q2lPWDg2Q3Z1OEg2c2JEckxFR2VxdVJFSHdxaE9DYnR1VDljczNIYlBsbDlvODhxTkw4TV9CSzc3aUh2a0lSQUc2Qkl3Qkt5ZFo1QUNpVnh0NVhIZ0tEUE05a1VaMTdLM3FwYXFUblk1YWw1QjF3bXVYMkwwSDVGckxxQjJTTFBPUE9zcU1RTlNidGExQXBkai1KMm0ybzFWY1JPaGhWeVJza29iLVNOUDd5WGJrbGlUOWJTSHl5YzFvbzFXcTZKYnNZd2hwdVI5aS1YX1cwYkc5M0hyYS10c2pvYmZPYjFBeW5sRXotRGpqZXl1eEt1UGVtLXVvRVlTWkZfbXRsd1JxbVNFSkFwWmlxQms5VHFTZW04LVBCZWxRR000MVhBOWtFeHc3cm41anROODZEdTdUX3JvRnRTWGxpakFQUm44ZTI4XzcyNEwyTWtrN3FPREpLMkg4Mzdvc3J5bjNXRWE5MW80OTJuTS1BcGNTZ0pfUUEzbURqUTJtaHZNVElPakh5TFRCZlBjaW4tby1UQzRhc28wdmpJUEhLZ3pUeE5oWnpYNHMySjFSRF9ldW91cHhfNXhocDdCTDZSTWt4eWVMd0o3Y2VwZFhDVmNmdzdzRDEwQnlyVGVtSnVoT2oxaWhrc1lVUmdEZFI4M3pweFl1Sk11a0ZqbjlxbEQ2a3c5YndNWnRpU2h4QjFZUHNuV1daV3U0TXFsVTg3SldZQzlEMzFUdXhiNFltYndsd1RsQTV6dFBTS3diTk1fYUI4aXZVUUhUazBPdFFwcndXMTlCdU9FbjFtWnpBYnJ0WkUyZ3NFQ2w3TTREWjZWR29nMGtza3gwSUlDVks3WkxEQmZRYXhIWmxFOFk2SGFCS0JrekhKSHE3MUNfcnMwcEo0UWZRV1NiNGdkRFpIeVpWY3JaNktPbEZsQTBma25LdEN4YnpjM3U2TUM5enFXa1ZYWWZZeWVvM1JSNUg3UVJZaUJqM1R6SjJVMVF4U1VqQjZyU19XeW9vWlhnNHNyeG5QRWdKak01TTdfMC1yY3NWVlVVdVNzT2RXMXFybjRlSy1Kd3Q0elkwUHhLYU5wZzRkMTFLUURIVXJkRjdPbnd4UmJ0NktLSFlGYW03UGh0ZVozV0dGbnBIbktzdHJYOVk2bEREYjBTLW5KQ3o4ODF5cUhUSmZ5YkhfRWFxS3R0ZU5ub3dDc190Nkt4NTVBS3o4c2VaU1psOXJnb0k1V0FrVkR5YmlfSlFFdTJnZnp0YzN0M1hCMnlTVDg4bl9BcDJNbU80X0V4QXBoVEpfNzdrYmJvWkl1Yll2ejA2Sjh5ZjR5Mk1yXzgySlFLVVBQYWhuNEozejR3eS16d2EtaDFLRkkyZThQTDZzODF3YmZ1QndrNlBHNFItZWg4UVhybEJrSXVqMkJ4eGU4VUZ3VUZONW9kbzY4VC1SWTF0bVdPRlZndnpDUkJKc1Zjb3htLU1CTGZsdW5XbTBVdDRvd0F1MlRKQ3lUaTRpWDhIM3E0X1lQTy1zMXBiQnRRaU0wQU01azVFNkdoZlc3MS1lQjJ2cHMtMjRORzE5R2gzTEhvTzNlelJtWmhwX3k3QXYxV0I5OURrbmJ6NXZ6dGxwcW92Y2hNNWRDOFNQalFkMDBDRW5NRmtwaVQ3SDZZTmFKVG5BcnVoanhTU2RKLXUxSmdGSE1ObzJpNEtfR0xxY1BlSGlIaTlPZDM5S2NGdVNQeHAxOV9wc0Z5bHRzWVp5cXhoNldJSG55bkRvdEpiOHd4dFU0bk1FMWFvazFZNk9yc1FUeGFtNnBFQnludFljbzFoLUlhanZHSGliWkV2UGdLNjgyc2RoZ295RjJ5OG1na2JTNWxHVDd6U2tYWm0yeUZwOGk0X0tVUnlYWUtqUndFZWdKTmktQ0gxWWs3ZHgwbExOaElOVzJEWkdyN3RFd1dOd2tFMzFHdWwtaXZWZzdGMTNMN2xXNW9OWTk1WXFXQlh0RzBsRHVoUlduSHg5dTNWV0twSDFmT0xDcnVIS1VXdzM3MmhtX21KS3U5UW1tQjNrWDF3SURXSkQ0SnFfeWlaekMxWEdIOEFzRmJfOFhtTGo3YW1aUmRwRFRRSmV3WlE2NXFJem44VEx0ekFhTUktUUlQZXJDSEZmeDFYWW81ZUpWdHc4MWphVHFRQWJCLVZ5X3ZXMG4zNXhUVklEOGdJUlpYakhRVEg3YTgtaDY3ZVFPdUNtS00yR2NZQjlFSmNRLVRPdUd5ck5Cd0lBckNxSGxDSzF3SjlPZjFYMjQ2cjY3dnd6MkJCQUdRWWp5dF9yZ09PcFFadGthV0pMd25ncXEwRE1pYWt5cE5LSlVJbEViX3ZkUGp6SFFKMV9IVzlMSFB2UWVHUmVJRTY2YzEyWlBBTm5tcndDaXR4M3hzcWNJZVd2d0Vya0ZzcWMteUlZbFd0V1Y4ejVmdklMY2JvSWRxVTJ4c3RqR0lvZDhudEp3RVRMeDJJQTZ6TUZHZ2E1UDZkcVhiMm85TUtxT3U3Z3UxYzBUaGtjVzB1QUFSb1F5ZzhDcnMzX0VfcC1YRXpCZGVWNzBIWUhXNk5CaV91OUVfLWVKVm13Vl9RcmJxanM4bEJxeEhsR1ZyUHVIbjd0ZU1ncXk5cjY4b0c4RVZRRFZUV0tXYWZ1U3Q1bHJpWXlTMlk5QnFqbXduUlBFR3lqTzJtLXVNRTRHQU84d0s2eFZVeWF1emlRQ0FyLnN4blQ5QmJTbklGT0RKQ1Y4WGR3RXc" + }, + "api-version": "7.2" + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/testcert/21983500952149bbb3129b0c60e367a6", + "kid": "https://myvault.vault.azure.net/keys/testcert/21983500952149bbb3129b0c60e367a6", + "sid": "https://myvault.vault.azure.net/secrets/testcert/21983500952149bbb3129b0c60e367a6", + "x5t": "Z-n6Mydb08bmyOgk7bmx5HT8tyo", + "cer": "MIIDMjCCAhqgAwIBAgIQGn/FrGQZT/Cd9kgXIsytEjANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDEwtleGFtcGxlLmNvbTAeFw0xODA0MTcxODI2MjZaFw0xOTA0MTcxODM2MjZaMBYxFDASBgNVBAMTC2V4YW1wbGUuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsODIu9EJhfnn57k4++j6dC1M6Egi9aZucFQ9Jc29vFG9L9BkzllPGluKKdH1ypsrAUif7yGaq5d1nDyLhZUncU8dV/YIA7oll/fC+d0H4A37kVbM/60zXhXnKRx+DRZ2hJQzNBOodCaZpyZZEuYvtWdSCSILpa0R7yXYevjLaG5LfckOzuurXqeos7WB+l2q1c+6zx1KbNXbBl7QOz2nzk9oJU7CdhPOc+LOLppmsXRwwluKtmCDyKdrKAF/dANp5zGXFsognQcRctLSGQp8FbgBVQyZ+v81n9bPpSaBoUQMcH4uG9jPO6CWwbDSWE+FVYAm5kgjuW/1hqRSnOEV8QIDAQABo3wwejAOBgNVHQ8BAf8EBAMCBaAwCQYDVR0TBAIwADAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwHwYDVR0jBBgwFoAUaYJoBFokrORdsxOTA8sgrosMOmgwHQYDVR0OBBYEFGmCaARaJKzkXbMTkwPLIK6LDDpoMA0GCSqGSIb3DQEBCwUAA4IBAQAxL3t0kV1dq/PGUztjW+qK6Nh4sx7jsU59JtjON6zcibJ4hM+Q3Z+cEvW9zuGkuTbLz6fKNL9VnkF1LnlWTsyRmS7bF15/7iOgfdrr0vkJKVM1Zv/tqKEpBJ7Cbc0vW/VJQxZN+OlqGNc9bcx3cnqkRwpkgM25T0dVpoWtCgMwayUtbPFbTZWHHbpzHLF2BzYf5HyW1BoKXcVPM3r/rS7RETasRRsz2GqXXdfhjCd+HKVyv5kD9N3WcFNUsaq3TqAUZyOx9bO0Cn3gkmgz05JpfhPEylXwVpVAccOoXsNoFdxEKGO0w7pk7PwOhsW8sFprdXWp6OxtL0rrCNFF/llT", + "attributes": { + "enabled": true, + "nbf": 1523989586, + "exp": 1555526186, + "created": 1523990186, + "updated": 1523990186, + "recoveryLevel": "Purgeable" + }, + "policy": { + "id": "https://myvault.vault.azure.net/certificates/testcert/policy", + "key_props": { + "exportable": true, + "kty": "RSA", + "key_size": 2048, + "reuse_key": false + }, + "secret_props": { + "contentType": "application/x-pkcs12" + }, + "x509_props": { + "subject": "CN=example.com", + "ekus": [ + "1.3.6.1.5.5.7.3.1", + "1.3.6.1.5.5.7.3.2" + ], + "key_usage": [ + "digitalSignature", + "keyEncipherment" + ], + "validity_months": 12 + }, + "lifetime_actions": [ + { + "trigger": { + "lifetime_percentage": 80 + }, + "action": { + "action_type": "AutoRenew" + } + } + ], + "issuer": { + "name": "Self" + }, + "attributes": { + "enabled": true, + "created": 1523990175, + "updated": 1523990175 + } + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/RestoreKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/RestoreKey-example.json new file mode 100644 index 000000000000..d9c7946afbe3 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/RestoreKey-example.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "parameters": { + "value": "JkF6dXJlS2V5VmF1bHRLZXlCYWNrdXBWMS5taWNyb3NvZnQuY29tZXlKcmFXUWlPaUppTlRjMk5ESTVaaTB5TlRZNExUUTFZbVV0WW1aaFlTMHpOMlZrTURkbVl6QmpPREVpTENKaGJHY2lPaUpTVTBFdFQwRkZVQ0lzSW1WdVl5STZJa0V4TWpoRFFrTXRTRk15TlRZaWZRLllNSVBfTXJRcTQ2X2ZwRExfSDNSSkpzSUotM05oeUJkMXlrOWJCS05JOGdnTjMxYWg2cWVoY1BISExnSnJ4OGprQkxMWFBxcDVmMXpsaWxfclVrLUtrT3J5YzhaSTljc3NNNV9TeTN4cEk0Wnk2V0ljNWNqUFd1R0NDbUJwQXlydEdPVnpoalF4bzNyVFcxRFNxZ1pVdnI4VEpseTJQS3J2aUlfUmduRWQ2LVJWS3V1Vk40ZWZWYUs5WFZUbW4xdmZ5Z3pwVHJfVFdDOVBGbXpoT0p6Z1U5OF85X25WcldWSE5TMXVMWEpYbldoQU9mUll0VlJORVFJRU5lTGMtZzNjTXJLOTFzNk5XeE5xZkZfR0w2UHg2cVhHMldXQ09nMzU3ZkJnT1ZTdERLaVZINk4xTWVkUTVwaWFkeHhUVDZMSFpva0I0eDFKbEFJZkxfYlU2OVBWdy5GOVFiM3RWbE1LcHJDS0stWUVpODJ3LlQwTVFpYXV3MGw5TWJfRFdEY1hvbzFqTjZJWXU1OVk3U0VMMm1ndFUweDNYTDl5VHNqZUY0Y2I0NExBaF9vUDdnbUgzbjdKLVZEX3hKN2hXY01XNnlTNDlFX005aXlndDlTQ2w5ZjRTdWtpM0NZdkwwUUVSVFlLSW1qMi1BRkRMWkl3Tm1HYmE4RzhheFBxR2NOS3NSZ0daZ1lUVG9pWUxxQnJ5cmJ2TEp1ZENxZ2plUWRpNU1tdHlQRnBhZ0hwSHZLa3VjRkdwLVhtSjFLYk8yQTJRT1dRVFFaOUNlcmVCcXJDbjI0SXdhUXJVQzRyTkQydzBVQTFUY3dFZXVWQkdFTGRKWm9zWHM2Q0dEZmpaSHFjdnB6NzRKd3g1T0VpcV9EUHM5VEtya01ob3djRXBsWjhaSk1jTlFSZnU5Sjg5ZDdZWGdHZEI1aWtKenA1WlY4OXcxMmIwekNITllKamdkZEhTNjJmalZlYUUxT09QXzd5Zlg1dEpiNmQ1QVhpZ3ItSkozbGI3Y2JhOXE2NHBsYmlhck1LemFiNUhtMkxNRnVLQnI1TmFrbzVQMDBoUUJnR2M2aXBJSzhNT2NLc2RhQjJGcjUwX1ViNnJEUzA4NnUzNy1DSHRGRnF5LTFBaGlDaXhRakNNTF9rWGtJMHZEYmJqRi1feGtNZGFCVi1BdTc5TzZ6V2pzRGVlV0t0VXZWUW5CMGM0Qnk3SVdDTGVWdzIyaTA5WWk3MnpCcWZPRjRyTmd4VTNrSjdfLTVib1dteVlXNndNOGVzTjR4R1kzUGhVNHlLRV91RGc2dk5Od3Q1c2NXWW9TMHh4NlBDb3M4S0R0Y3ItVXlwUTkydGhVX0ZYZ3E5U3RUWXEyWWdWV0dQbnM1Q0RMT0RBSi1sMTFJNklpdGxQN0hoeUxvMzlqNzdpV2ZUS0RnTDVrcDdEOUUzX3FkUFprdGpWUER1M1pRY1Q3MzlOMnp6XzFrWHJEb20tNlBQcXdWUzZtUXpBVW1xaXhTaXZjcWJxalpJRnRPbGxLRkE2cWVyaDJlU0FZelRNU0N1d0p4REJSQjUtbjBNUWxJSGpDMTdkTFpoVnFEMVNiNlBycV95OXN2Mml2V3E5TGE5R2ZHbEhBNlZZM1QzUWRTQ3VrWVJqWFhxLUItTm5WZGhGTVZhbFZ2b3NySmZuSEZhWGZMaTBnczVVOUt1NHlqRDdRb1cxeVIxSVk5T3JaNHFSUXdrcG5tOU8ycnJIMXBtX1hTekxRVDRrWmNLYnVneHNvWXRsRE9TaW9iS0RYdTFNdENxdkRudnh6OEZ3MUdwTXJCdUxrVlFEVmVlUDJqNFp3TGxPbkxUTmk4YlNjTm1fN3ZUc1RQbTRJRDltanBXSThCYXA4M1RLaTNkelAxazFpM0dncnIxSEpVQU96Q0NjUTRnaWxES1o4UkVsUWUyMUJBcUo3eUVublZsdWN5RzZBV2E3dmlZWXV4eEJIa0RsN1hHZHZYMGpJMjZyd2NTX0ZIMnlOaWFmZDN3SkkxMzQyWEF2VDdDUWVoOGRaZWRKU3FYUUdqQjVCSGF5Vl9vZnplVXBfOEhqRkRoS1VkcmNJNGkwa0ZwcEhkUFhNQXUxMjh3RHUyTG5VenlNNEpad1NJdW1fbmpiUTNJU1R5bUVMTngzd3QyV1NFT2Q3QUt5S3lCNEJzU3NkUE1HZXdLSTFnc2otSENFb05Cd3hQQkF2VnFDSUkzbGY5NG0tRU04LVh6TnRCVXFpT3Y5ZERCa2d2ekptSTlrMk9fVmpjbUZrbkdKb2kxVnpZcGlRVTRYbElaempDd3NDRHFrYWh1YmNxWFdyMDhVdFBtV0hGRXk0Q0tvclZMN1VIaVhsVnJPR1VHdFN2dWN3S2RjS1RPeldsUngtRGNGMExDek1kR1p3Y2czZWk1bWl0bFliRjJVbGJOMmJaU0NQWDljOWxFU2RBUUhxUEVsNXJhVDY3aDlWeGxPc3doYW54SkZvNGVuRENaYWZObURGRzJMYTY5RXFCVjZLTHowXzR1S1pDNW14YXZEazZXS3lmb0ROeXFzdVZMdG83WXNqUk4xNTJYMDVYSEhuRVN6NG5lM2MwandXYXo2MFpJR0Q1TUhNUUhQeTdPNFdnYWthVnNKZU9mYUNza3diYjQ5cV9tQnNYME5mWlBjcWFiRFhoWjdCWUxROVhFUkdibndkM0pEQmgtX1RUN2s2WERpY0tUblZQdWVGN3dzVl80aE9HUkpkVEk2UFRmV2o1dWY4dTdxRU9BdUt5NmV1Vk1LeTk3TVdLT1Q4LVpRbDBoSWowcmJWR1pILVI0cnFIMXZfVmdRUGRpLXFXb3FXcWt5MGFaSzNDTkEzUXhXZnRMR3AwcUVXcHU2T1EtQ2hONy12eE4wdFVlZGREWlF5V1d0d3g2VFcxS2hDQldaR2pabTlBQzY4YlUyQnVOTUU1NW9VV0dsbmNOOUVuRnpnTm1RTVR1SzV2VGd3WkJITWpmUXpsSUdfeWZ3QXVtSHljSzVPT092eDk1SGM3d0RBRDJXMVdSb2h5MDV5TFJkbEJ2XzREUXJyTWthZEVwZjB1dHZod1V3ZXZSNU1jVkV5Yk93VUw2Z2Y5a3JDNEw0YlR1bUJRbG9Ccng1aDNuTHhZdzkwcmlqbG5LajVZYkthZWpyTXdiSW15Ri1xVk5NbWpTd2I1MlN0SjB3T0czeE9HZkJRRHhQWHJtSXhoMERSOEdzSzBkeS0xSElJZWo1LW9STWRfSjlhVkt6MFk0d3g2VjIzaC1qUDNxMjRKYmF3dndsQTZyVjVpVUZkaDZKUXJpTU5DLV9hRF91X181VTd0OENIN1pWQ3VQM25JaTV4N2dtcWFsSzNlZ0htM3BkYl9sb3dYRTRaRUJETHZ0a2lobC13LVBGc3VZb1VKSUZWcUZ2VnM1RW5TU01XMFBJWE9TZlZNWW1KWmVrYmlHX1FqeGtCMjNCaHpZclNqQ3oxcW5TTXg5a3ZicDlRaDFuZFJYSkpJUFUyamVIdUxCNE9nVzNoenluQ2FxQXZQRXVHMlhuS3B4WGZ4QUtOeldpTElOLTBsUTRfUXQ0dHctZmphWVJVVjVLVWpyYlZnazI1MDZIUG1ZVEdWUVdRX203Z1NBU1BaajZEYklua3U3SzhFWnI2b3d1SDI1M1hxazlrSWwyTE1CcHZqT2tOTWFRTXhLcjItMllkUEV5LS1mTUFQTHBfVU15MnhqbEtMS2s3blhJdV9IMXZSbmdfVlVyVkhuZUdqRmFuODdRRU9SU1Y3clRBcHJPMmZUMmpfOWhoNkptdFlrUXFnRzg2WXlKa3NValdzM3hwZGk2TlBGRUxqQWd5T0ZDLTRrTWdLbGdJM2lUSElCV1Ezamp0U2UwR2N0MUs3QnBCSlJySUFGLTFVQjZKVDZjSjI4Z01zd0k5OGt1ZDVob1hZbVQ1bEEtWmFELUk4ZE0wcUZ0SEg4a1lXX256em85bTY5LWlZZlZfd3N5Mm1CdnVlb05RZGRRS0JrbWlVTW54VjkwdEF5RWc4WXJaWUwxck9jWHFjb2VJNl84UmV0bXZZeFZNMWJwdXFfajlmTXYtelRBOUpDZXlKMXFBTjVWQWFpY0lnZzFKWElDTEI5amVTT09zUXcxYXZxdk03TjFBcndDcjZvTUhycTVaQ0VLODV5VmI1RzhjY3Rld29pSFlzdVlPT0hnSDNMbmNoV3pmSjNNaUVjTTZfVjdSZHZCUWQwM2tQekdFVjh1STJ1aDl0bUxrNkY3VUt6WU02RXhJNW1LUEM5LVFOMk14ZTB6NDZrZTJteEdHR3cteXFMNjFHR0FpS0FjcENsSzVHeHlRbVBuREo4RHFKTk9WWDNoX283YTExVW8zMmtkdEcyaHVYcERVc2F5NkU4VGJ5R1dFZ3dmWDdaVnZrN1VNM2VqdDNqWXBxYmRZSlBNTUJCMGdNOU9mSVFjS0lUcm9IMHJEbFE2Wmt4UGM0ZHBlQ21NMzg3NXBXTlFrZzFKSnVRZzN4cE9WZ0VGallabEVENTBFaVZKNzg3cUM1YUdtakxRWl9yLVA3X2hJN09lcExWZ1BHSEFTUkxsd0dOLUZwTDc4UW9VempfWHUwNlBkNkF1VExtYmpoVmlERC11ZG5xdTVVR3dKNGxZamJqSkNBN3VQT2VfdWpzUWhZd1VHQV9YQnlsbkVySWxMN09YSE9UeGFEbEpHSDQtNHdNcm9hbmhPWTVoZ2NWZHZVQlpVZ1JEVWg0MGwzejhGVWJhUmxpaEUxeXQwdU5vR3F3TWRyWnZoTkl3YVFjUFlQeVV3UTdBdWh1dl9qSXRVcWlGQm9ncnlSb3Njd3oycXR0am12OEFRWUh5QWx5OXVqdmJ1cnk1TGNJaF9FUWZUekJuSnlfcDVZdzBDWG5CSzg3ZkVIOHJhWkh4V0VUcHFseHlmWWRWZjlQakRYTGJMYWJWQ2J6TXNSMnNYZkFvNm00VmhnaEYtQ0dOV3lta25EMDBUbWU0TGE0Vy1BLU9lR2o3Mi1uOFZjNmI5Zzc4d25tYkF0dGRyUThQWVdLUXZjdXlEbHZ5RUdHSF81VW10bFN5ajJKbHRLZXN3N1dzai1hazhDWDFidGRzU2xoQldjYUJ0dGozUmp3bEN4aEQyTXlWdHR6dDIwN3JPQjdxdEFJeVg1enJZMUxaSHB3RW1NeDhkWnM3NDdlY2ZhZVM0ZFFCWmN6U3lCNFZFWVRRWGdIeWdFX3EtYndfZXhqNWs5c0RHeHNTRnF5elFCVm9VOUtlbmFtZTRESnNMWFdaaW51UEhZUVNtWDJUZFBabXNkSHhCa3BBcHJiLUg0SGdFSnBPYWxCa0d3aFhza0hwYjZUTkhQeHktb09tLWhBaXptTVZPZzlnTDJOSHpSdUFtb0kzVTRFd2FfR0Vub3d0ZUFRU0xlY016WjZxZ3l1ZGswcG51UnlONlAxbTNCU1ExODRXUzNqeDFDNDYwTEFKM2FySS00QWV1aW5fMFZYM3FHdmEzNDR2ZXQ4N0RSN0liTUUzS01rWWtUdXotaHpqbnhHVVQ1cXZhWnYwNzdQVHExbTVDUVBUZGVlNlNnMzRmLXlseGg3MGoxSS1OWnZ3aFAyTFZ2OTJkdVZ4SlJSN3hzbEp6UzU3NXE3aWZ1UEcwUnp0NE55M1lESno0TWVDTk5wWklwTUJKeGR2bkc3azhsbXlvQlVRYmR6OHhCdW5YT3FsRDFHU205M05LYy13bzdxZnpJanYwWjF6WVpwLW5LN0o2NEUtSnp4MkQxZ2xJRG5vZGw5R215UzlwbzMzOUlZYU9QZlJnSTNad1FTVkdwcEJQN0dNRUdsRkVxbG83bTUtNFNZWEc2SmRYYU5yM2lRVmdoUEtkQWVpLWJDTEFQbGJGSkNFQVU1NXJfSEVmS2xUNS0zNlN5ZHRlcWFTZEdvMVhGRXpadWFILV96OEJsd1hXME4wdFJpdHo3SXh1OU5BTkM4R3V0Z2t2WHVFUl9Obnc1VUlsYXJlcE02VERfWl9lOHJGRDdoYXhWMVd0b1pkOUJTd05iUm1JeXU2Y2ZaelgyeFNPVlJVSndWSEctWTNaRGRpcWtzb19XR0J2TFJKQlRWT3NvZVZucWUxWktqb0NRSzFEYUZPb3B4UDdTTWhwOVlpY29XRk9VUU5ONS1EQjMtNjhDbURzdjE1LXMzRFRxUUM1OHhpd2JZLTRuWWt0eVNRV2F5elRvYlZOWG1idmI5SzktdWowYVRWRkx6SDFHMFl2TG1oU1NTd2tfM08tY3RSUExFblhQU1FWNkdVT2p5d0xIT1hTRDZfY1lTN1JrVXR4Mmc4bV8xbmhJUW0wOFd1aTVNSkdQR0JEb0RmN0szd3oyMnRnUVFXTDEwY2J0SlVvQkYyNjJVaUg3TE5pMjJWQ2tsMElYMVVRNy13cEkwcDhkV1NvV282U25PYTdkUTVpQkliZjlQX3JRd1dhYVl1NV9aQlpwQ000VXFWY2dhR1NZVnNxRHpXRVY4LXRjazBYOE51STJyZ3JSOTRDSnhjSms5MWwtb3owbldhTUFocHJubjJfd3hSWEdOYXkzNmJqU3EzWXhNMXN0dDFNN1JjenU3UTJQei1mZGpHWUFOSHZxQUtYUTZpbUphQXNwbE50Skh1SUp1andyTlRQd0ZzNGE5bDRkWHdNMDRRSWZoYzR5em1icDlYRjdVWVU0MjNXTWhRU2RMNUpaTld5QXVxOEFuRzdtd2dTUDNUMjROVGh1U0Z6Zjd1Tk5ySmdfUFk5VUNWcmlPS3FEN1lVS0FSZ1FFQ0EtTmthbG5YU0V1VEN2azJpZkVYOEh6cTJJbDV3TEZyOVFKVjBmT19EUkNyUzVzRHVaVmJ3RDI0Y2VqT3libWd1VWFuTDhiMklqS3h6TFVPT2tlMkVPNVRRTXRQUWZjeTYydkV5c2NwQzJFYXd6YUN2V3ViMVNXS2RZVnUtcVBzdFV4eWlPUHNpcFR3V1kzTXVNRkpwclNscWFVUDFJa3N6M0Q0VGpqSElzb0c2TUFsbFRZcUItSWpuSEhmYzI2blM3cmExeVVjbHRIRWtEd3Q4R1I2bmctNk9XNWJtT0J2VFFDamRUUDhSbXZ3b2tIRXZGQTlXbGs2OVZIVFpFSlNaNGdRZXFzcW83SEJJQ0h3dlViOW16YkhnaU50bGQ1WUFHT3V1U3BOTE1UcTM5LTMzVVZoTjBLa0hLUXZCenI1OXFmaFBIU3lVRnVMZzI4b2pYMGRvb3gySlFEZ1BobHZVYkR3cGluREJqVHBiMDdsY09EYVI3ZWN2M0tDOUhJQVdreDlhV0lza21Yb0FWYVNWTDBsZ05NQzNHVkxSMURfcGVoQTZySWs2Rl9qbDY0N0w4SERqRFJEbjZRRnRIa21BYW10TU9WSzdPMS1UXy1UTldwaDZ3YVFOdTBrV1ktZXAyRERndDk2enRYUkZTVWdNOXJMMnk3OENOMkVFWW1mQUktM1VjamdUblUxRnJXaEZ3dC1JNlVmNFZwNlY4XzZxTjJzVDJyeWFLWHo0Y0JJY0NoNm8tS0RpOW95SDV3MFF5eDhWb0xTNlN0YVEyYU5FejlKamctZ0N4aVp0Q1JYeWlnaWx3NTQ5VWFWMldreHR2bDZkeWRmZmFTM2ptYUxqaDRmOXhHa1JQRUdqZmZvMVY0dUN5QkI5QkNoaVVCZG1qVGxlVlJROG5Ccm5WQW5qYXVIYTRsV3VkNkhjSzU5VjJNTlpNTVdtS0tvb0E4cWtuMzVUY25EdXluSjJITUNnZElCSnVQVU9TeTI1QnhuZnA4RU5NSlZrV19UeU9uTXk5b3JtNTVobHhmSjRENThad2FRREs0QWlFZk1IVHdJc09uZ2pnU0o0S1JDdjFRa1NVeDdYRVhNU0lNUWtUYTBqS19aNS1PQ1ZNc3NBbzEzVzg1VlFKbVpDQ0tZRzZWbS1ybnVYSUdZZlZWLTg1OG93OEJZUGhDYVRhVzRkVnBLWERDRDVfc1FsamdJSnd0Vmc0T0RKY1dxelJpWWpUaXMyVzVjdlBvT1haNUIyZnFaVTlCWGVPQWM4S3Y2a2ZDVWp0OFV5UDFTaGswN2xtZ1A5b25PMWJ0eVc5VnhQSE5uUHcxNjZDeXJmVVcxaEFHQjB1YTFNYmtEVTdfdk40SlowY3VWNV9iLW9sUm80eV9yeGQ3UGRWREJsZHBWTUxsV3haLVhiV1VqdFpTVndaT01rOEtvV2F0bld6NVI0S1ZLNkFnbWJFTHhpa1MxSjYxZ1lJNlhTcm8wRnF1N0dNM2JXdlZQYm1xR3Q4SV9UcjNHamlKeDZ3OUhvZGlLbEZQc2JMakE3OWJuSG5DcHdwSEZBWGI5d3E3dmMtSF8wTU1WVGw3eE56bzhIZ1FfR2tPWEl1OV9uMVJiZS1SRDRXUmlId1RuYm5ZbXpHNjN4b3dHTlBJN2c4R203ZkxfTnpDWGhveDdUSUhXMjh0WFFCeVk4ZmR3X3YtMUtvU2lhSjNwNHBJUnlRQm1rQnpmOTlGRlpPS2g1bUxLMnBrSE9INWFlblFFNng2cHFDakNkcW53Uzk3eGJ0Skp1TkF4M1V6UDdHM2l5WlN5ZWw4SEd0YU1UZVdITzFuaE9lZFNlcTVhaGk4dEFFeVp2MFFScUxsQTRaQUxrVGh5ZUNZckpBd1cyaUJaOW5DRUVnemxqT01wdTJndHpDRnk5WktZWUloaWZKdVQ3dlBHdVhGTUtLVlg0WFU5ZmVoOFhIMUVWbnZ4cENuRjl5eEZneThuVW5CdUdsRkVWOFVCVU5oOE5BcElZY3BlTDd5Q1F5bDZQN3Fock43SEhINEloNmhLS2lVaUItWjRNMHJUSk9mZkd6MFhGWmlaSDdYT21KazBNc3pCbEVhaEFFbjJTU1JaaVFXTThsRFRRcEdrX0p3QkpRX1FVTmtMZnhCcHpsSzBUMGFxS1d3M2doWFktT3FqelM4cTFXOHVBYzNabFRUMFZHRWdWdU8yNl9vRXpXTnZYYnpKMUVfVEFxUkVWS0xfOWFlem1zM3JqYy1GdldSR2pMV09OTXhUdGw5ZzE5RFdhbFA2alJlUlJFeEg3djBLTEdvSHV1RW5IVHNQX2hsMnZuM05WWWl3dFFualFCOXpiMjZKRmxwZzZFaEF1STN4bFZMM3hwRE9qZUlPNXM3MllKY1MzcjAzYkIzbTVHMUljRVU4SkR2WTF5MjJQaG5iOGVmNno1cmk4RDY5clVLWThFOXFraExXYVhOMjRTLTZBYjNRZUtKcmxIR09yaEc2ZkpCdElqTF93Rk9kWjJqOFo0bVBZdmJaNUNEUTdnM01yYVh1aVJ6cWdvdXk3TkliempzOEZETkQ4ZHNMR1Z0OUNLanRVMnR5a0JrSUpQZlhrZ3U0LUpSVFRETjNINGdwek9md1B5V18xOXRMdlBKNEpRbHlzbnhKaEptSW5TUEtUUTljclJHVFFlS0F3THZZemdCMG5QWkIxd2dQVWJHaXRsaHlTV1pqbWplVU5oSnNnb0Z3ZHRFdTloTjRDejROWUVLZ1ozWnBKTC1sZmVJbmp0VEIwN1A4dWtpV3FHeGNBaVI5TDRPdl94VmxNYm9hblduNENNLThVSnZjRGhVRGtpTGt0eHRJOE03Zk01bngtMkFSX3MwcnlDV0F1YmVmQUxRdHVEUnQ1MVZrZnlJZkJ2UWFyb3dINnpIX1ZfZ1lJWFdOdDlvTElMT3FrNHlqcmR5Z0ZXWTl2QXZQN1Y4Q1lraUZuSVVrWGNaeUNsT2dmcTM5bXRKeHBMM2Nzb3VaWFRIcDExZ0xibWRUNUVTbjIwRThiblpEcTVvSEVEWGxPbGZHSE9ldmx6RnRCX1V4R1h0S1lYOUoxQWlLekJyZGI3QmJvemRFcDAteHVpeTZYRFp1Yjc5LW1LcnVQTDJaWWIxaTVoVmpRQUN2RnAyUHBaT2k3eFVmSlJoT0Z3Zi00OUphVE9XTjMtYVhVb0N1a0NpMWdqODhkQ29QWWNVdWs5WmxNelpkV1hJcDlnQ1gyN196U0U1WURCYWlWQ1dPc3c0Q0pGYmMta1FUOUNaMzRkU1hiczZ4S1N0OS1haHI5b3NpY2JHY2laMUlDV182WWRLM0l6ckh1UUV6TnNDQ0tEdW9iVVFRZFpBUlFMeWFlR2w0NWczN21Gb0tQN2J4b01aY1AzRjB3MzdBR0xMVzFjVi02dU5uaWhZQ1p0dThZckZQdWF4aF9VVUxPTk1SZXN5TFVsRHVydmxuQVV5ajFVMU1TbEMxTGtPbV9VV29NdVBzX1VqU2M3SDc3RTgwcmd2QmZCQTdaMkRQMmpWOFFRUmI2Q1RieEtpRkk5TFhmRlI3MjlFcURZVXVRRUk1ZDN0Y3liN3U4TzJlQnZfVGo5TzRPREx5Wjk3Z3BMdVZ3dUpVb3FqQVJnRU91U2lHdWwxaFJxYTl5NlZ0ZmpMNE5qajJJYjFsY2JyQS5OcXpkcGU4Yjdxc2MzQmpYRlhaWVpR" + }, + "api-version": "7.2" + }, + "responses": { + "200": { + "body": { + "key": { + "kid": "https://myvault.vault.azure.net/keys/KeyBackupRestoreTest/d7a019f5da8843aea30722a7edcc37f7", + "kty": "RSA", + "key_ops": [ + "encrypt", + "decrypt", + "sign", + "verify", + "wrapKey", + "unwrapKey" + ], + "n": "v6XXEveP0G4tVvtszozRrSSo6zYDOScH8YBVBBY1CR2MCXBk-iMnKgzUyePi9_ofP3AmOxXx-2AsLC8rxi6n3jQNbGtIvQ4oMdUEhWVcVkmwdl0XyOouofEmIHeSxRg6wXFG4tYAKLmKsO9HqmU5n7ebdDlYngcobc1xHsP0u8e0ltntlgWBlSthmY8AMKW9Sb_teEYhilbkvt_ALr00G_4XHmfq7hSOZePWbGSWQW6yC7__9MrlDfzaSlHyBIyLppPEB7u6Zewrl_eNJWoUVrouIGA32qNETIOr_wxXRVGKoerTt-wFC-CXPn30W_6CmKSxoFBNvnzijg5hAU9V0w", + "e": "AQAB" + }, + "attributes": { + "enabled": false, + "nbf": 1262332800, + "exp": 1893484800, + "created": 1493938217, + "updated": 1493938217, + "recoveryLevel": "Recoverable+Purgeable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/RestoreSecret-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/RestoreSecret-example.json new file mode 100644 index 000000000000..d6a6cc93ddc7 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/RestoreSecret-example.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.2", + "parameters": { + "value": "KUF6dXJlS2V5VmF1bHRTZWNyZXRCYWNrdXBWMS5taWNyb3NvZnQuY29tZXlKcmFXUWlPaUppTlRjMk5ESTVaaTB5TlRZNExUUTFZbVV0WW1aaFlTMHpOMlZrTURkbVl6QmpPREVpTENKaGJHY2lPaUpTVTBFdFQwRkZVQ0lzSW1WdVl5STZJa0V4TWpoRFFrTXRTRk15TlRZaWZRLmhERDdfVW9aU1ptR2JYN1dYUTU5WDkxZ0FQb05kdDcwZE1BbmgzbjQ3eWNjbkRNOU5vTm1hY0NHZmlNeUwxU0FlZDk0UjhBNDAtVE81TDNfQ05Qal9pdWIyaW03Z21nbHNPNnFFUVVIWU1tOEh2Wl9odFRrdEl4QzRPWEowYTB0S2hscnczZlBvVVFDZHVGcFg0ekEzYTR4VTZXTUNfYjZZVXZqUjZnSGM5TFRUR2tIazh1RTY0aVQ4cmt5RDRrU3RNcXhnU2lfRVZwUUdjWGdfNE9wQ1dBOUFha0N1NkpybGRaQW9BLUtXTWpQbGhaWHFYWGMyVkJlbUJjRTQ1YzY3QWhqYjJrSi1uQ1c5dHBjWS1JZ3JEUHFzWkswOS1WbHVtcl9SbzQzcG5FeW5jVFpTdzZlX1h6VnN0dUFOZHdiM0E2OVR1c1hfYkJKZ0J2SGQ4cDJSUS5WMTlhMVRacjZ2UjJHdEVaWGtOOXJRLmhwMU5IMmwtZklWbVgwWlNfTlRzekJfUEs1aktDUU5rSnJyRUhRQmZjQ2VjdHhmVU5uVlB6MVBqRWNDblZuV0pCUk4zTlFKZm01MjFLRHp1MzBIVUFEUGVmVHJyMFVFS2x5QTM2cThoWFY3VTdoQ0dHNk85NVpYclRsZlVENDI5RTNTNTQxdVBmWGpGR2cxbHlucFNTNnAtVkFzaXFlY1lpQWNuM1hhNzRhUm5xS3N3ZzhyU1ZOX09hSVU3ak1VVUhYZWY1ZmN0NlFrdWFfYkt6Z2dtR2ZiT2RTdVdNRmVQaF9mMkJMUFNGN3k1NThEMFZxSVlNY0JJR0dMU3BQUU93Q094OFF3Y3NVUEp4ZDFuWkVYYjRVNEJZYlhBcmFMX0NwekYxZlhYWVBsdmVUSGdKNVdrR28tWXNJVzAtT3ZqVGdLN2hIamxpR1psd29HOVUtbTJSVDZfbkhseHhVRFMyY3JseGNmay1OOTlXd0tEdUxFMTM5ZE1mN2RCSEl1aTdxd0RXdm1TN2JMTHYzM05Wd19XSl9DT1VGQjgycy1ELXk0UEdIRzVackhsSDgxa25mLVpRblU0SmZfY2lhMWhmWlY3ZFMxb21UZDQtNnJwZmpTMGxFT3VfZTQ5bUpYUGFpZ0hyLWFQYkFzTXJJQ2JvOUVIR2IzMXJ5SlR2QXF2ZmJDbU10bkdLUDV6aUNiZFh3SU5ONzBJTk5lZnJLWGZkZFBUd0RSV3d1ZkxCcGNlU0U0SG5EWVZVQmdkMDl4UUZidG12UDhhTXhhUlpGSTNpWG1fbmpCNmZfdlNhZUNUakdVYVVuRE1QQkdOQWQ5T2xVX3dvUnMtalNCVnVqd1FQSGlGcm5RWElkXzBRdXRYSm54cTU4aUtlTGJvNDJtOHgwaXBRcnB4aEZoUDdHNmZOWXAwVmxXR0RxZ1Q0VlpPQkZsZWRKUU0yaDQtb2xTbXdtUms0M0Y1cjdKd3h4aENqU1JReWx1MGEyQ0ZONWMyZjIxTElZaFliLWNReWFXMDNpV3hsb04zWld5cDJIb1FlUmZPR3lXUzBiU2NBT3JndGpBYnJaUFIwMGRRNnpSOHNBczFYUzh3dzBlaVczbFpsdjJwVWFxOVpTeVhnTS14b2NTOS1ueXRaWGtWWlUwX2dDVXJBV0ZKNG5XdW9oTGM1RkkyRWFQNWR0SXVWa3dnbXlsR1gtYk9ZeHp3dzVGYmI1V3VEbnJ5aDBMSnVic3Q4VXdLdnl3bk1jQ3duMjZSVTNxQVRudGJubVhJS0FyeGkwMldQVk9oTXdpUWZuX2h1TWk5emp3MEVuaXNWdktNWUNnR2xqNWlGZW5Tc0FKUXBiLUY4bng3OWFJQlJaTUc1a0huUDR5dGxmNm9FTkRsRXNJY21aeEtOdEIzcmJPdVROYUhLTXZBNmxSNzlMMDJZSTZrcEdrUUZnaHpIaTBjTWkwbFdCejRTM1AzUEMzZElZSVlQZ0Q2S05kT2FLWHkta0dWdUlsWFNmVlVrMnpzM0NBeTJhZEJjV0NMV094ZkRoQnlwNTl4MHpBRExvdnZySHRLOWF6TGN3N0lTbVl6eUhYMkpobVdReUYtTFd1VzhfcW41SkFVYlB5Z0RTRDYyMi1PTGZQVDZmc2VTWUVBUTFLVWRwZTFnSV9hZWxVT3FaRWN1aE5SckU1YUp0LTN5TEVLVWZIWXF6WTlGbHJrUE5MUC03Y2xRbmEySEhfZmMzZV9LTGtGUDFhQTJjM0RVaERseGhsTzB2bFVmV0c5eXpXaDNZN0NmRFlFMlBaUzZBcFBlYy0wa1NDcEVKMmtCcnFzWG4yeDJDX0FDdTdCTTVGZXNJQkN0M2NqSEdQSVVQRnEteGVmT0RCXzBQcXZDTXpBOHg5Zm10Ny1sNHhVQlJaa0dtZExhZFoxVzdFUXRNRVpsSWMtbDF1V1UzTU15cFZpVWR0OWxJUHVQVUEwc1NrbWxrTGhNSjgyNE5QN0hyVi01dC1ZNDcxaWVKMHdEUjFxMmU4MU8yazdNeTFlTDY3TlY4OVBHYU81SVR5WG1ueUVXMGtVbl9qa3l1UVRkV3dsS09HZVZIYkJWNFpxSXZHWjdQUS02TEE5eXc3a0dyZFRhVFZXOEdOOV9GY1c2VUhjbzA0U3dqTzY2S2x4VlFJWWpBdEZPZlBjWW5xNzF1RndyQS1UZHVDZG1sUFBHOVpjc2tiQmdrbF8wVk90dmhuc0pwYXZKZ2Zka0d3OF9qMkQzd0Jzemd0VndHNk9nNW16eVFwM2pFc0w3UmNtcXd6WFBOaDdKYXdHVDBJMlRvZHYyQ1Z3MDkzWjJlODFXR1NxRnlIejAxdjFBaGN2T2VWdmFjUGM2Y1JJaVduNW93ZF80d2FBdjlyNjVVdmtWa1FLRXpHUmo5eTZILXdZTTMyV1JyMzBlOU9MRTNKUU5POV9kNjRTRmIwSjZHa2VxUmtnNkVXc2xqN1JYLVU1VlhrS1BtMzNpS3c5dGU2NVBqQUNnZThRVDBYVWZEaUx5a1pGeUdpZ09ZMS1TVDFxUlE1eUhMTXhEc3BPRjFXd1lMQ2c2b3hocTlWMm55Z0U1cUJ2ZnYyWUtFaDdjM1dWNjJrYkw3UXJ2d0xkMHVRZ1FwYmUza3E3dGJzcC1lNWlud3cyY0YxQzByeHNScGZJRHlJMmg4b2xHMi1RQUZkWmtlMUlmaE1FZmNfdUdXX2pqSGJSWXVzYnZCRnpKMDdaOVJsVnFMR1A2WXBnTDFsRTFOY09xUVJyYVdxckdDTWZ6SzZMVENQSl93aHJRam9WTzdVRDJIUEVnUjZ2S3U3cWlmTmo3UjE5OUJuRi1EZmlnbk1TYTFKZkZadDNuVXVZOEhMUXRoUzN4MUMxOE50d3dsaDVuNGxYS3d5MERHenljbVNweE05QkdPNTFRckFmSXRfY0xHbUlzMlJ4MzMyeDRIdEZ3Z05nRzFBazNIUno4TlJ4V3lhNWhjb1NoYURXekhES2gyOVp3Vm4wYXVzeWJpal9uNlFGcnZZbjRSOHdPNlRQV3FrS09JcHkxc1lQNWxyNDc1anZSRVZGaFdCWDBiUXdJdnNlM0Q0a0dFQzgzU3FWYkhxY3phZTNwOFNxaG5tQW5ZYzBIbWp4clJfZUMzT0hYVFBGUFZmNDlVWHdrQjIwY1lvcjJ1dzBaTzJ2TUg3S1QwcjBSWDBQVy1qcGpORFpjSGRSNVVCMXFacGlWLWxaYkw0eF9IZW14aWUxY0RPOHNQSXhIOElUSWtOV0tTR1N2eWdraHBBbGl2RzVEZXJObElkeFE2c0tHQ3RtMDEyT2xjN2thaVFaNHh0TjR5ZVpPU2xyS0s0OTlIcWhObzhkNTNsbFFfMW5ncWlHbzhUSDlzWkFrclYwclc3dkJOSF92UlhBdTc2MnlpZGhZUURYYXJXSEFUMm9DU2hEN1lOdnotekoyZGtEajJMcW5CdFNCWFh5T2xsM3o0ZWFITDd2MDZ1QTgxMVBKQU5YZUdoenNaNFVQQUQ2Q0E4cGlxSHB4WGkxODRHNEJETVU4S2VHeHZLWnJiUlNOT2pTOFNrQUJKZERfSklIZ1RhNEFhNzdPUmNZcVY3OWZ5djFZVHNma2lLR2NUYzZIUjZzUVpsamt2U0NQNjdtTTRGUHRqTHlfX1pDQlNwdnRSVWd5UlpNM1dSOUViNHkxa29uRG4zUjMzN2lpSzdfbGtIa1UtZ21VbUpZUVdnUjYzT01pZUdRUHdNR3BSZXlRWE5yckJVTDN2Z2JYdjlac1ZDcDh1NHRwQjBleXJvUXgxZC1KSWJvOWVyR1VlX0ZzU1Fpd0tIaGFIUk02Nzh5dENkcHJFbDBWeG92TFVrX0xNcTFjN1R4MG5jbFl2WE4yUjhEMXNhU2FibkJSd19CU2tZMFNMSXdhb2RpY2o2ZzdLd0ZfMXB2eThhNF9LbnJNLUNkenBvdHA0aTd4QUJuY2JRVUEwWkpsYlp1elRpR0F4ZjFnclk1Z0dZOTVoWi1XZG1lOWlSazBHRTJGN3d4MlJyLUVvS3lZRjNjak0xMWt6MWFmME9fNFdyOXJoU3JrX1NHU3l2a3ZCTW9NZ0xOX0tSS1BlTjlqUnpwRlVST2VnN2NCbGlhdy1odnZhY2lCeDN2UWRqTE5jTldQdU1UbzVmME1QbmU4TUtXcFBoWjBySElMaEVuYW1pcG82X3pzNjczcE9ma09FS0JWWE9mUDEzR0UwS25SWTBab2JPLWRub254LVdBY1dodFZvX08xbkwwTWE5ZXFMMURhRGhJU0JNbVRIM1hkY2dDTnF0emIwcVMtS1l5Mk9zRzZOakRDVEM1aEI3MXIwU09WMUprNFV2QjdYemxTTW9YUXJnTzF2ZFVwSGtxaVhUM1RJZmlQMWRKcDEweDlSMlp5R0lzUzljQUtNMEZyMGRxQmJmQy16NTJpcWZweW4zUVVqb1Fld2hPYnJwUEZGOF9lUmVNRlIwSXZjUkxnMHpwek56UzU1N1pkQkZhemxNTThLcnkwN2QyUDAyTnZtclUtN1ZjOW8wZm1qem9WOHVVTG9PMkJHdmFRdnFJNmtBTmQ5VWo1X2JkY2NVUzBhcklzcGFZa1UtUXQtNnQxYU5YUUdGZEtUbFMwSVowek54bkNIZWRySEE4SkYtOFg3d1ZpRW1McXJQbU1Sd25sbWx3SnhxLVlReWMydmdUallSbUxCVU5TS3VrZkJsa2VnMmlCRWdySksxVlNyRWswX0ZvOXkzV1EwVlZuNXhEZXlGc1JuWDI4Tkl6alFQLVNXaHhYbzdPYm5YY1cxZHlWNE1fYjdzM096cEMwOTJWcGZYQkpaTDhBeHgxNGY2TmJzTEpXLW95VEdsaTJFb2FCZHJKQ2JkQlNOdWJlbGdRRmU2V2hqSjRGdlNrYVJISjFTT3ltbGFtQmYwaVNDOGM2X1g2SkZORjNmOXYuQjc5SDJvbVIyTU52SndydHVzclJ4UQ" + } + }, + "responses": { + "200": { + "body": { + "contentType": "text", + "id": "https://myvault.vault.azure.net/secrets/SecretBackupRestoreTest/01ddd6e3a0d34d35bb5bccecb1251837", + "attributes": { + "enabled": true, + "nbf": 1262332800, + "exp": 1893484800, + "created": 1493938113, + "updated": 1493938113, + "recoveryLevel": "Recoverable+Purgeable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/SelectiveRestore-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/SelectiveRestore-example.json new file mode 100644 index 000000000000..e1757f1971b9 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/SelectiveRestore-example.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net", + "keyName": "hsm-mail-key", + "restoreBlobDetails": { + "sasTokenParameters": { + "storageResourceUri": "https://myaccount.blob.core.windows.net/sascontainer/sasContainer", + "token": "se=2018-02-01T00%3A00Z&spr=https&sv=2017-04-17&sr=b&sig=XXFNfuMCH112BxhemJ7PWn0xGfImMXT6LfbXWvtRUk%3D" + }, + "folder": "mhsm-mypool-20200303062926785" + }, + "api-version": "7.2" + }, + "responses": { + "202": { + "headers": { + "Retry-After": 5, + "Azure-AsyncOperation": "https://myvault.vault.azure.net/restore/45aacd568a23b0s49a2803861e8dd3ase21f/pending" + }, + "body": { + "status": "InProgress", + "statusDetails": "Selective Key restore is in progress", + "jobId": "45aacd568a23b0s49a2803861e8dd3ase21f", + "startTime": 1490790000, + "endTime": 0 + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/SetCertificateContacts-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/SetCertificateContacts-example.json new file mode 100644 index 000000000000..b79e0089d539 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/SetCertificateContacts-example.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.2", + "contacts": { + "contacts": [ + { + "email": "admin@contoso.com", + "name": "John Doe", + "phone": "1111111111" + }, + { + "email": "admin@contoso2.com", + "name": "Johnathan Doeman", + "phone": "2222222222" + } + ] + } + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/contacts", + "contacts": [ + { + "email": "admin@contoso.com", + "name": "John Doe", + "phone": "1111111111" + }, + { + "email": "admin@contoso2.com", + "name": "Johnathan Doeman", + "phone": "2222222222" + } + ] + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/SetCertificateIssuer-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/SetCertificateIssuer-example.json new file mode 100644 index 000000000000..a1ce5d55cf17 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/SetCertificateIssuer-example.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "issuer-name": "issuer01", + "api-version": "7.2", + "parameter": { + "provider": "Test", + "credentials": { + "account_id": "keyvaultuser", + "pwd": "password" + }, + "org_details": { + "admin_details": [ + { + "first_name": "John", + "last_name": "Doe", + "email": "admin@microsoft.com", + "phone": "4255555555" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/issuers/issuer01", + "provider": "Test", + "credentials": { + "account_id": "keyvaultuser" + }, + "org_details": { + "admin_details": [ + { + "first_name": "John", + "last_name": "Doe", + "email": "admin@microsoft.com", + "phone": "4255555555" + } + ] + }, + "attributes": { + "enabled": true, + "created": 1482188806, + "updated": 1482189526 + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/SetSecret-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/SetSecret-example.json new file mode 100644 index 000000000000..95ddca249cb0 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/SetSecret-example.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "secret-name": "crpsecret", + "api-version": "7.2", + "parameters": { + "value": "mysecretvalue" + } + }, + "responses": { + "200": { + "body": { + "value": "mysecretvalue", + "id": "https://myvault.vault.azure.net/secrets/crpsecret/03bcccc7c8cf4546a0e3e21e52560441", + "attributes": { + "enabled": true, + "created": 1493938459, + "updated": 1493938459, + "recoveryLevel": "Recoverable+Purgeable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/UpdateCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/UpdateCertificate-example.json new file mode 100644 index 000000000000..35c6279f7dd3 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/UpdateCertificate-example.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "updateCert01", + "certificate-version": "c3d31d7b36c942ad83ef36fc0785a4fc", + "api-version": "7.2", + "parameters": { + "attributes": { + "enabled": true, + "nbf": 1430344421, + "exp": 2208988799 + }, + "tags": { + "department": "KeyVaultTest" + } + } + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/updateCert01/c3d31d7b36c942ad83ef36fc0785a4fc", + "kid": "https://myvault.vault.azure.net/keys/updateCert01/c3d31d7b36c942ad83ef36fc0785a4fc", + "sid": "https://myvault.vault.azure.net/secrets/updateCert01/c3d31d7b36c942ad83ef36fc0785a4fc", + "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", + "cer": "MIICODCCAeagAwIBAgIQqHmpBAv+CY9IJFoUhlbziTAJBgUrDgMCHQUAMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5MB4XDTE1MDQyOTIxNTM0MVoXDTM5MTIzMTIzNTk1OVowFzEVMBMGA1UEAxMMS2V5VmF1bHRUZXN0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5bVAT73zr4+N4WVv2+SvTunAw08ksS4BrJW/nNliz3S9XuzMBMXvmYzU5HJ8TtEgluBiZZYd5qsMJD+OXHSNbsLdmMhni0jYX09h3XlC2VJw2sGKeYF+xEaavXm337aZZaZyjrFBrrUl51UePaN+kVFXNlBb3N3TYpqa7KokXenJQuR+i9Gv9a77c0UsSsDSryxppYhKK7HvTZCpKrhVtulF5iPMswWe9np3uggfMamyIsK/0L7X9w9B2qN7993RR0A00nOk4H6CnkuwO77dSsD0KJsk6FyAoZBzRXDZh9+d9R76zCL506NcQy/jl0lCiQYwsUX73PG5pxOh02OwKwIDAQABo0swSTBHBgNVHQEEQDA+gBAS5AktBh0dTwCNYSHcFmRjoRgwFjEUMBIGA1UEAxMLUm9vdCBBZ2VuY3mCEAY3bACqAGSKEc+41KpcNfQwCQYFKw4DAh0FAANBAGqIjo2geVagzuzaZOe1ClGKhZeiCKfWAxklaGN+qlGUbVS4IN4V1lot3VKnzabasmkEHeNxPwLn1qvSD0cX9CE=", + "attributes": { + "enabled": true, + "nbf": 1430344421, + "exp": 2208988799, + "created": 1482188981, + "updated": 1482188981 + }, + "tags": { + "department": "KeyVaultTest" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/UpdateCertificateIssuer-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/UpdateCertificateIssuer-example.json new file mode 100644 index 000000000000..9b7e0cbc2ff5 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/UpdateCertificateIssuer-example.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "issuer-name": "issuer01", + "api-version": "7.2", + "parameter": { + "provider": "Test", + "credentials": { + "account_id": "newuseraccount", + "pwd": "newpassword" + } + } + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/issuers/issuer01", + "provider": "Test", + "credentials": { + "account_id": "newuseraccount" + }, + "org_details": { + "admin_details": [ + { + "first_name": "John", + "last_name": "Doe", + "email": "admin@microsoft.com", + "phone": "4255555555" + } + ] + }, + "attributes": { + "enabled": true, + "created": 1482188806, + "updated": 1482189526 + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/UpdateCertificateOperation-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/UpdateCertificateOperation-example.json new file mode 100644 index 000000000000..6dfcbac6fe3d --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/UpdateCertificateOperation-example.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "cancellationRequestedCert01", + "api-version": "7.2", + "certificateOperation": { + "cancellation_requested": true + } + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/cancellationRequestedCert01/pending", + "issuer": { + "name": "issuer02" + }, + "csr": "MIIC4zCCAcsCAQAwGjEYMBYGA1UEAwwPKi5taWNyb3NvZnQuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxxM2zqnPtpH8aiHX5TdEoZLO0Y6fsjk9QcjKgnHomrwUc9vK20UYYEPKt9aGOT7HNx0do8OulPCnLPrKowci8UHu1qRW/qHvsOJQ/UrQoMCHxtXptVc7Avx8WQb045sCdgp/Cl4xO8LMZa70kE4dghZU9zmNZk8wqDIxyYdh1lqqfGe49EWOxcfszTeeKs8KCsQznjExbsudBHLLWoX4VFTGMe3VcIPcV6iFf70buHKznDMXFiRC0IYwkc/GyWIadB1CSEae8k/0evsPI5lYYZLaO/kLffEUtzysqxZNCQR+S0eVPTGTLHa+fndnPPs65XZDzSZi2fZL01oXUfCAQQIDAQABoIGDMIGABgkqhkiG9w0BCQ4xczBxMA4GA1UdDwEB/wQEAwIFoDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwNQYDVR0RBC4wLIIWb25lZHJpdmUubWljcm9zb2Z0LmNvbYISeGJveC5taWNyb3NvZnQuY29tMAkGA1UdEwQCMAAwDQYJKoZIhvcNAQELBQADggEBAKto/ZF9+02fQ3sLuIsRuap/O/AZz3IhAubNfyCaWvVGVAQz/Aqpf5c/liyKhxqRG6LR9Zu50oxRK5222ezR+56vJikjdXRVShf2xYsMm1CbCM1JuzsnkTeoUHHE12xx1srH/9TH+DVZIk6NXxc4wVIagbpwxiS5gR3Nly5k0ZVv7R1B79J0GUqSwK6qjuooWrBsYMEx319hz8fB/Y4jnPE8p+Cnn3AGEqnebVngXncq/QnHxnrRVfvKFVySqRvlsvM8buILmBbIaywEUqwhNtZX2i9E7reEJ8aeZcf+lAeKF3YDvffaXGTc75aiZlBk30Lv/hn0vs9T0/FedUnIae4=", + "cancellation_requested": true, + "status": "inProgress", + "status_details": "Pending certificate created. Certificate request is in progress. This may take some time based on the issuer provider. Please check again later.", + "request_id": "3dd81d528cc84c5a837c607f1a50f2e1" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/UpdateCertificatePolicy-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/UpdateCertificatePolicy-example.json new file mode 100644 index 000000000000..f2bf78082507 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/UpdateCertificatePolicy-example.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "updateCert01", + "api-version": "7.2", + "certificatePolicy": { + "key_props": { + "exportable": true, + "kty": "RSA", + "key_size": 2048, + "reuse_key": false + }, + "secret_props": { + "contentType": "application/x-pkcs12" + }, + "x509_props": { + "subject": "CN=KeyVaultTest", + "ekus": [], + "key_usage": [], + "validity_months": 297 + }, + "lifetime_actions": [ + { + "trigger": { + "lifetime_percentage": 80 + }, + "action": { + "action_type": "EmailContacts" + } + } + ], + "issuer": { + "name": "Self" + }, + "attributes": { + "enabled": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/updateCert01/policy", + "key_props": { + "exportable": true, + "kty": "RSA", + "key_size": 2048, + "reuse_key": false + }, + "secret_props": { + "contentType": "application/x-pkcs12" + }, + "x509_props": { + "subject": "CN=KeyVaultTest", + "ekus": [], + "key_usage": [], + "validity_months": 297 + }, + "lifetime_actions": [ + { + "trigger": { + "lifetime_percentage": 80 + }, + "action": { + "action_type": "EmailContacts" + } + } + ], + "issuer": { + "name": "Self" + }, + "attributes": { + "enabled": true, + "created": 1482188947, + "updated": 1482188948 + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/UpdateKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/UpdateKey-example.json new file mode 100644 index 000000000000..872994b16399 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/UpdateKey-example.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "UpdateKeyAttributesTest", + "key-version": "3d31e6e5c4c14eaf9be8d42c00225088", + "api-version": "7.2", + "parameters": { + "key_ops": [ + "decrypt", + "encrypt" + ], + "attributes": { + "enabled": false, + "nbf": 631180800, + "exp": 662716800 + } + } + }, + "responses": { + "200": { + "body": { + "key": { + "kid": "https://myvault.vault.azure.net/keys/UpdateKeyAttributesTest/3d31e6e5c4c14eaf9be8d42c00225088", + "kty": "RSA", + "key_ops": [ + "decrypt", + "encrypt" + ], + "n": "tHCSyq1FqGHXIFHs1m4riKYgPFNSTlJGPzxwfUyZJUxxZsFWMxmZRzbM3kcXC5N40AJfeqDOMs0gY0LZEfhw8kJHBf2GEH2Sz923E4OQjLk_ECdAiKPW_8t22cqD_pGIuB7uibjLZgFFRv7oe0t8cTXKn7IwAH5gQBLs8NNV7hx1Ozy82ekCgOovFldmD3c3P1oZQ_v_-jOP6O202aEfDcZut42J6zI8eYwvGiDKmo2fCPPeth1LYBOeUMnrEZGT_f_w3yAgqvuSkHCL0x4MjZzc2EoNI_3ooAHZohDaPHLRfz8neDPADZzbHA6SDn3GgvC1K_Je5GBmqjTH3aIMlw", + "e": "AQAB" + }, + "attributes": { + "enabled": false, + "nbf": 631180800, + "exp": 662716800, + "created": 1493860275, + "updated": 1493860277, + "recoveryLevel": "Recoverable+Purgeable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/UpdateSecret-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/UpdateSecret-example.json new file mode 100644 index 000000000000..f155b69483fa --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/UpdateSecret-example.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "secret-name": "crpsecret", + "secret-version": "03bcccc7c8cf4546a0e3e21e52560441", + "api-version": "7.2", + "parameters": { + "tags": { + "mytag": "myvalue" + }, + "contentType": "myContentType", + "attributes": { + "enabled": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/secrets/crpsecret/03bcccc7c8cf4546a0e3e21e52560441", + "contentType": "myContentType", + "attributes": { + "enabled": true, + "created": 1493938459, + "updated": 1493938459, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "mytag": "myvalue" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/backupStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/backupStorageAccount.json new file mode 100644 index 000000000000..bda0bfcae801 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/backupStorageAccount.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "backupStrg01", + "api-version": "7.2" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": "KUF6dXJlS2V5VmF1bHRTZWNyZXRCYWNrdXBWMS5taWNyb3NvZnQuY29tZXlKcmFXUWlPaUkwTXpnMVlqQTNZaTFrTlRRM0xUUXlaVFV0WVdVNVpTMDJNVEJrWXpNNVpHWmhaamdpTENKaGJHY2lPaUpTVTBFdFQwRkZVQ0lzSW1WdVl5STZJa0V4TWpoRFFrTXRTRk15TlRZaWZRLk1JeFMyLXh0eHAxekpaZ3ZrTUY3d2pGMWxiLVJyNWFrbHFMLXpBaVVOODJKZFJNUDFwak5iS0phRktIOXBRcDg4ODBKeERDSmdESUZHc19OOGlnYmdIZ0Q1c0xVMi1pRzdKM29Hc00taFRMb05oaUd6aGY1YVREakYzWjZpZVhxcFMzVFVOVUFkeFhpTkpIYk94YjBmWHNtcWFtNnA0dXJ3Yzl3Qnk1c2pwRnJheHNRM3NRcHBDLXZybXlVZExaelJIWS0xYnhwaFQxVUdiS0Zsd1dSODU5TmFSQ1BZOFhDWUVrX0hxNnc5S0lWSXRTTlRYYWYxUWFzUDJob0NHT19PMzkzVUNzWGp0NzRtOURqdi1vTHRoMUl6TU5sSWp0STg2MTRhTGs0RTFMUXd6ZUx2X2Y1cndKeXJOWkF1c3VWRlRieFp1Zzh6T3BfYTdCOGhGSEJyQS5rc3pPdTN3blllb1ZUUjRLc2dqMUxBLmYyY3huVE1BbU13Ty1RcmdHSUFYUFN2bEdZUDRYWmJvMFVFOGxtY2xZa3ZhRE5ab3E0Wm41MVNKTDNuUFZsVnBaRFlrUmlpd05BSUxvRS12QWtVbmZoLUczOWo3RHhqWm1zZW02bXBmOWxoZjBnZFFNTDdmejBqRDZ0dW1xSVFaWUhFalV3VG5xdDloeEw5N0lnUUV0WmtFV0VnUEJETnJJNFpYWXdNU2ZyR0FfdkgzYXU1MWpabDFTWjlGajJsTHpEblNqbFd0U05QSzc3X2RwbUxrTXNCSmMtamRteUpxYmVxdmdRcGFTSUNsOXpUUXFQM2RxN1VQV2c1R1ZDNmlNZjlTcnBoUVRKX1V2bnp4LWk4ZWR6ZUppd2hYNW9HQ043RDNDWjkxTzNLQkhmYklOX1VvQWlQVWxzazFveU9KOEVjMk5mbHhOaFlrNFRKUTFBN2xnbXlLRlNQeVMyaFlwUDA2VEpTb0JUenVTQk5OTVdmT0RaTDFfV3V5eThJcDktdlVHMW5JOENDQ1hIeEVVN2FVLW5nRVR5aFBfbWt3Q2FGLWx2WTNqZlV1Z29wSllLR3VscXZadk1VZHhLYU1oemR2a05ubFdGeXlJNXdiRUdZcWgzWEJ0MS11TThrOFZVTDdQallzVUt4S1dYbzBMblJPZmFTbTZpTm9ZTmFOTm5YbF9fVW9rd05fSWM0eVVYR3RuMFhUcTZ4anQwZUpEajlET3FyYmdiLTZoclltRmxLTUNqalVxSGtLU1VPaHVYSE9jOFdFa0JEM1hiR29idi03b3c0c0gyN0YxbHh2UVh0OVgtOUl1akN5dHBMYmt6YnJVdHZJT2puY19xTUNjMXFFTG1wZHJCTGFoMzVmWHZQZXotVk9zSXBNOGdsekhWUUgyWWZHU0UwaTJqVkxpVllkZlFHeDNwdTZPamdUc1hPUm5acldlbFExMVlNbUJkWlVqWFNlZkVlQkxuT1lBbUNtYWM0dHNTa2JHTXZzQm92OWNEc1NRLWlsQUhsT1Fsanp3Umt1bnIxdk1ITlFhRDJLUEE5eGxxZ2NKU3FGT3d3RzROSzBxamhyb0NoZDFxM2RHR2V3U2tTd2xZbW44ZlM0VEJ5VjFMYmtWb2NZZHpiWDhiZG54dHRhVDhKS0pUbjJETWxjVFpvR1hFbWQzN2ZZVnlaNm5uMXdxZExtVW9XLW5OQXc3T3RLV3hyMXJUNV9qOHZjRGhTWk1HdTF6aV81NDEyVTRLcG01dlQ3c3BpWXA4aDl3Rk5scmFjYnVjZGVlaS1zMWR6cDlqWGo2NjRuWWxoYzNjOHJubjJ4ZWlna09YLTNUSWxnbmdxeXpJWG5ROHU0dTc5TC1ObXk1VFNjLU4wTnJVTUxQVE51MnhsUlE4Y0VLT0h4QkJGQV80Nk1yVXlhbjUwODFMSlYtTVVyaXAycl9tS3FJRjJET2wxS2V1aGg5am9PeFVybUk0T19MYkduVjJTbUdoZEZSd3FxUS15U2pxcFE2OFBza3hlQmxTdDZnX28tLVl6Qkg3dDI4V3ZYYzdIT3paNFBwa0psTjVmWFRwOXgtOGNuTGptcG5Pc2hUZWxTUXRYaDMwcTU3LXJZbVJzc2t2cFZfaTZFX2JUMTk2VWtTOHo2WUp1QXh3LXdlZ2tPY1ZITUxkeW5vaDU2UUtuWDhMVFdHdjhqWWNQazlaSlNSbXljTExOcWNtRnpUU1JEbzBXMXBkQVJXY2tqRFM2VFZIdTlHSElsTG9oRnpONEU1T3FqdUMxRjEwSFZjUGxoNTc5UmczWk1SNWJoVjltSEZNOFhJZU9HTHAxZFkxbnNLY2dqRVVlUW5qcF9za0RzanJZMVVncXRkTTVNVWhNSHlEZlhaZ3libk1jSDVRaml0YjdWZktrQk1YcGRwU3pLQWx0WDNjelIwODRPVm5nVGtiV2JZQURDTUQ2N1dlLWM1ZDFONHI2WFdFb2RXelNyWlhyZmc0RVRNNG1UZnV3ZjB0d3NORkRJdW5BWDkwbnZJWm1Ualo2RktpTjBiRnVNWmRpR1NKNTZNUEZMcFd3N3p0dmVmN0xENmhjNHJESXBQbEkwTVlVWTJSLWZGakdaZ29JTmdKMkVuMGFFM0c1V1RySjRxcHhhdHB4MVk3ZUgzOUk3WTYzcEJFWEtkRWIwTmstM0tnM0ljbDJPSkp6SU1fM1VHSlJTTmRQWGlfV3ViNGRTMDV4eURzZTR0d1FXdm9rb1QybHlZNGphNlVOc3lvYWN1eGFsTUZvUFR5dHF4YlVTaXFIMEZab0pWcm84amZja2wyYklmSzRqRzN6TnJIOWU1c3VUVWJDV09wYjczeFNMMG9TLVQ0T1JSNnBRbTZHQk05bFJ0eUhtMHJUMy1sNXc0c2ItNnRDcTM4S3FRdURRTGVTcDI1Rk8zMU1uVE5nTFlUeEUwUEZDT3hmRG1RY3BOOFRoWHBGbzZLNHNrd0dmQkpKTU9BTWtIUWZnMUM0c0V5cS1PLS1FWFhjbVV6QjJGRnR4c1gwR3o0aGJSdTFiUlhXcWMxU0IyUk82d0JsWGdPUmJqZjJlLWJQUFFMdmtGcWR3bFpUTE1kaWVUdjQyQmd1SFd3dzI5OEVqcnNNUXg1WG9aRG11MDFRTzlZSjFmTEYtWjkwWEVOU2p5OTM0M3UyUHhrNjhheG10bnp2ZTdwd3Q3Z0ZMMUoxZlZEd3BqMUtBZDdwdGZoWG4yUzJmT1Bfc3JOM3QxNk1qX29qOUVLQm5VNC1jQ3RLWGRkZS1EWk5zQkNhSGZ1bEtHSkFHYmx1UWs2Yi1kQk5oUS05Z19kajdfcjZub2Z2aDRielEybGlQd1E3M1RTazNiQTdzd2EzclZ5ZTVDTVNlOVotNkVKV1phek1sN0w4VUJ3cFllN0J0eHhUNEVBVGo2SXBvYWhGNTgtRHpiMmRsc1c1ZDZIWmpYZUNMTGtVRmQ5Mll3eDBibFlCanc4eTVzM040OEJMME84WG51ak42c0F0eG04Sm9hWXFVUUd3LXNBS1pTZHAzNk1GNlZXYkpUcHBoZHQ2aEhWQjFoRzdpSGN1STBTRzY0WjczNXEzZ0tSYXFHdzhIUXItSWNyeks0VEQwenk5b01NMHpRLVFBSE1PdzAyX0ozU3pVQWZ1bzFWNU42ajB0VGsyeEt0TFp3cmlHOHJNRl9NWTJrN09mdkxqNFlCb3VNN2lBNVM4LnNfM0VabFhIb1lrV283ZzdpRUp1bHc" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/decrypt-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/decrypt-example.json new file mode 100644 index 000000000000..5025f94f8ee4 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/decrypt-example.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "sdktestkey", + "key-version": "4eb68492b5f6421e835d961ad2be3155", + "api-version": "7.2", + "parameters": { + "alg": "RSA-OAEP", + "value": "sid-4nG3FzRIFWXLXlG-FZo6H1-kzbNX5Exe0_VRqcGLuJWjI9oSofsn-2IagDsQzkpNAXv9V8aoIizelrK_14darhxaAV8OejO7Oh7spjxa7IxMVS3e-cwcLdEHzMbMfM1uFpDyRFqEUASHI0H8F1M2m1e9TUSXOVW3KMqm7cK94ZQMFvd4AYdLfmfnStMp_MqIQh4kpIkB6h2b1M3possVrLKH_l2L3uT-qFiwQlH9-dt0Cje5mrkpsYCy4hAXNFUPhIyBWAZwOQylIE2sPuopFs55lRIHpWP2CqNe-IK8tX87BRuJ_Vy3GIFxDjD5uu74scIyQCKMImB6xQ_-mQ" + } + }, + "responses": { + "200": { + "body": { + "kid": "https://myvault.vault.azure.net/keys/sdktestkey/4eb68492b5f6421e835d961ad2be3155", + "value": "dvDmrSBpjRjtYg" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/deleteStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/deleteStorageAccount.json new file mode 100644 index 000000000000..9c32386c223d --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/deleteStorageAccount.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "deleteStrg01", + "api-version": "7.2" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/deleteStrg01", + "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc", + "activeKeyName": "key1", + "autoRegenerateKey": true, + "regenerationPeriod": "P30D", + "recoveryId": "https://myvault.vault.azure.net/deletedstorage/deleteStrg01", + "scheduledPurgeDate": 1490790000, + "deletedDate": 1490760000, + "attributes": { + "enabled": true, + "created": 1490738386, + "updated": 1490738386, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "tag1": "val1", + "tag2": "val2" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/deleteStorageSasDefinition.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/deleteStorageSasDefinition.json new file mode 100644 index 000000000000..56a808e7ed53 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/deleteStorageSasDefinition.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "deletesas01", + "sas-definition-name": "deleteStrgSasDef01", + "api-version": "7.2" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/deletesas01/sas/deleteStrgSasDef01", + "sid": "https://myvault.vault.azure.net/secrets/deletesas01-deleteStrgSasDef01", + "templateUri": "se=2018-02-01T00%3A00Z&spr=https&sv=2017-04-17&sr=b&sig=XXFNfuMCHYrBx0bhemJ7PWn0xGfImMXT6LfbXWvtRUk%3D", + "sasType": "service", + "validityPeriod": "P15D", + "recoveryId": "https://myvault.vault.azure.net/deletedstorage/deletesas01/sas/deleteStrgSasDef01", + "scheduledPurgeDate": 1490790000, + "deletedDate": 1490760000, + "attributes": { + "enabled": true, + "created": 1490738438, + "updated": 1490738438, + "recoveryLevel": "Recoverable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/encrypt-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/encrypt-example.json new file mode 100644 index 000000000000..aee6d857c7ca --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/encrypt-example.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "sdktestkey", + "key-version": "f6bc1f3d37c14b2bb1a2ebb4b24e9535", + "api-version": "7.2", + "parameters": { + "alg": "RSA1_5", + "value": "5ka5IVsnGrzufA" + } + }, + "responses": { + "200": { + "body": { + "kid": "https://myvault.vault.azure.net/keys/sdktestkey/f6bc1f3d37c14b2bb1a2ebb4b24e9535", + "value": "CR0Hk0z72oOit5TxObqRpo-WFGZkb5BeN1C0xJFKHxzdDCESYPCNB-OkiWVAnMcSyu6g2aC8riVRRxY5MC2CWKj-CJ_SMke5X2kTi5yi4hJ5vuOLzmg_M6Bmqib7LsI-TeJHr9rs3-tZaSCdZ2zICeFWYduWV5rPjTnAD98epTorT8AA1zMaYHMIhKpmttcj18-dHr0E0T55dgRtsjK04uC3FlRd3odl4RhO1UHAmYpDd5FUqN-20R0dK0Zk8F8sOtThLhEmuLvqPHOCUBiGUhHA4nRDq1La4SUbThu2KMQJL6BbxxEymuliaYcNNtW7MxgVOf6V3mFxVNRY622i9g" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/getDeletedStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/getDeletedStorageAccount.json new file mode 100644 index 000000000000..9c32386c223d --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/getDeletedStorageAccount.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "deleteStrg01", + "api-version": "7.2" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/deleteStrg01", + "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc", + "activeKeyName": "key1", + "autoRegenerateKey": true, + "regenerationPeriod": "P30D", + "recoveryId": "https://myvault.vault.azure.net/deletedstorage/deleteStrg01", + "scheduledPurgeDate": 1490790000, + "deletedDate": 1490760000, + "attributes": { + "enabled": true, + "created": 1490738386, + "updated": 1490738386, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "tag1": "val1", + "tag2": "val2" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/getDeletedStorageSasDefinition.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/getDeletedStorageSasDefinition.json new file mode 100644 index 000000000000..56a808e7ed53 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/getDeletedStorageSasDefinition.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "deletesas01", + "sas-definition-name": "deleteStrgSasDef01", + "api-version": "7.2" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/deletesas01/sas/deleteStrgSasDef01", + "sid": "https://myvault.vault.azure.net/secrets/deletesas01-deleteStrgSasDef01", + "templateUri": "se=2018-02-01T00%3A00Z&spr=https&sv=2017-04-17&sr=b&sig=XXFNfuMCHYrBx0bhemJ7PWn0xGfImMXT6LfbXWvtRUk%3D", + "sasType": "service", + "validityPeriod": "P15D", + "recoveryId": "https://myvault.vault.azure.net/deletedstorage/deletesas01/sas/deleteStrgSasDef01", + "scheduledPurgeDate": 1490790000, + "deletedDate": 1490760000, + "attributes": { + "enabled": true, + "created": 1490738438, + "updated": 1490738438, + "recoveryLevel": "Recoverable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/getStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/getStorageAccount.json new file mode 100644 index 000000000000..f7e015dee1dc --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/getStorageAccount.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "readStrg01", + "api-version": "7.2" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/readStrg01", + "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc", + "activeKeyName": "key1", + "autoRegenerateKey": true, + "regenerationPeriod": "P30D", + "attributes": { + "enabled": true, + "created": 1490738386, + "updated": 1490738386, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "tag1": "val1", + "tag2": "val2" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/getStorageSasDefinition.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/getStorageSasDefinition.json new file mode 100644 index 000000000000..1c20ad12c958 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/getStorageSasDefinition.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "getsas01", + "sas-definition-name": "getStrgSasDef01", + "api-version": "7.2" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/getsas01/sas/getStrgSasDef01", + "sid": "https://myvault.vault.azure.net/secrets/getsas01-getStrgSasDef01", + "templateUri": "se=2018-02-01T00%3A00Z&spr=https&sv=2017-04-17&sr=b&sig=XXFNfuMCHYrBx0bhemJ7PWn0xGfImMXT6LfbXWvtRUk%3D", + "sasType": "service", + "validityPeriod": "P15D", + "attributes": { + "enabled": true, + "created": 1490738438, + "updated": 1490738438, + "recoveryLevel": "Recoverable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/listDeletedStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/listDeletedStorageAccount.json new file mode 100644 index 000000000000..8f1e16506a6a --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/listDeletedStorageAccount.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.2" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "https://myvault.vault.azure.net/storage/listDeletedStorage01", + "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc1", + "recoveryId": "https://myvault.vault.azure.net/deletedstorage/listDeletedStorage01", + "scheduledPurgeDate": 1490790000, + "deletedDate": 1490760000, + "attributes": { + "enabled": true, + "created": 1490738386, + "updated": 1490738386, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "tag1": "val1", + "tag2": "val2" + } + }, + { + "id": "https://myvault.vault.azure.net/storage/listDeletedStorage02", + "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc2", + "recoveryId": "https://myvault.vault.azure.net/deletedstorage/listDeletedStorage02", + "scheduledPurgeDate": 1490790000, + "deletedDate": 1490760000, + "attributes": { + "enabled": true, + "created": 1490738386, + "updated": 1490738386, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "tag3": "val3", + "tag4": "val4" + } + } + ], + "nextLink": "https://{BaseUri}/storage?api-version=7.2&%24skiptoken=" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/listDeletedStorageSasDefinition.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/listDeletedStorageSasDefinition.json new file mode 100644 index 000000000000..69f442b51c63 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/listDeletedStorageSasDefinition.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "listsas01", + "api-version": "7.2" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "https://myvault.vault.azure.net/storage/listsas01/sas/listDeletedSasDef01", + "sid": "https://myvault.vault.azure.net/secrets/listsas01-listDeletedSasDef01", + "recoveryId": "https://myvault.vault.azure.net/deletedstorage/listsas01/sas/listDeletedSasDef01", + "scheduledPurgeDate": 1490790000, + "deletedDate": 1490760000, + "attributes": { + "enabled": true, + "created": 1490738438, + "updated": 1490738438, + "recoveryLevel": "Recoverable" + } + }, + { + "id": "https://myvault.vault.azure.net/storage/listsas01/sas/listDeletedSasDef02", + "sid": "https://myvault.vault.azure.net/secrets/listsas01-listDeletedSasDef02", + "recoveryId": "https://myvault.vault.azure.net/deletedstorage/listsas01/sas/listDeletedSasDef02", + "scheduledPurgeDate": 1490790000, + "deletedDate": 1490760000, + "attributes": { + "enabled": true, + "created": 1490738438, + "updated": 1490738438, + "recoveryLevel": "Recoverable" + } + } + ], + "nextLink": "https://{BaseUri}/deletedstorage/listsas01/sas?api-version=7.2&%24skiptoken=" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/listStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/listStorageAccount.json new file mode 100644 index 000000000000..f5664f50ff90 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/listStorageAccount.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.2" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "https://myvault.vault.azure.net/storage/listStorage01", + "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc1", + "attributes": { + "enabled": true, + "created": 1490738386, + "updated": 1490738386, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "tag1": "val1", + "tag2": "val2" + } + }, + { + "id": "https://myvault.vault.azure.net/storage/listStorage02", + "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc2", + "attributes": { + "enabled": true, + "created": 1490738386, + "updated": 1490738386, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "tag3": "val3", + "tag4": "val4" + } + } + ], + "nextLink": "https://{BaseUri}/storage?api-version=7.2&%24skiptoken=" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/listStorageSasDefinition.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/listStorageSasDefinition.json new file mode 100644 index 000000000000..6d08bab1d56c --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/listStorageSasDefinition.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "listsas01", + "api-version": "7.2" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "https://myvault.vault.azure.net/storage/listsas01/sas/listStrgSasDef01", + "sid": "https://myvault.vault.azure.net/secrets/listsas01-listStrgSasDef01", + "attributes": { + "enabled": true, + "created": 1490738438, + "updated": 1490738438, + "recoveryLevel": "Recoverable" + } + }, + { + "id": "https://myvault.vault.azure.net/storage/listsas01/sas/listStrgSasDef02", + "sid": "https://myvault.vault.azure.net/secrets/listsas01-listStrgSasDef02", + "attributes": { + "enabled": true, + "created": 1490738438, + "updated": 1490738438, + "recoveryLevel": "Recoverable" + } + } + ], + "nextLink": "https://{BaseUri}/storage/listsas01/sas?api-version=7.2&%24skiptoken=" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/purgeStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/purgeStorageAccount.json new file mode 100644 index 000000000000..1ff9470792ea --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/purgeStorageAccount.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "purgeStrg01", + "api-version": "7.2" + }, + "responses": { + "204": { + "headers": {} + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/recoverStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/recoverStorageAccount.json new file mode 100644 index 000000000000..30437e552465 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/recoverStorageAccount.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "recoverStrg01", + "api-version": "7.2" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/recoverStrg01", + "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc", + "activeKeyName": "key1", + "autoRegenerateKey": true, + "regenerationPeriod": "P30D", + "attributes": { + "enabled": true, + "created": 1490738386, + "updated": 1490738386, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "tag1": "val1", + "tag2": "val2" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/recoverStorageSasDefinition.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/recoverStorageSasDefinition.json new file mode 100644 index 000000000000..a400b82dcad9 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/recoverStorageSasDefinition.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "recoversas01", + "sas-definition-name": "recoverStrgSasDef01", + "api-version": "7.2" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/recoversas01/sas/recoverStrgSasDef01", + "sid": "https://myvault.vault.azure.net/secrets/recoversas01-recoverStrgSasDef01", + "templateUri": "se=2018-02-01T00%3A00Z&spr=https&sv=2017-04-17&sr=b&sig=XXFNfuMCHYrBx0bhemJ7PWn0xGfImMXT6LfbXWvtRUk%3D", + "sasType": "service", + "validityPeriod": "P15D", + "attributes": { + "enabled": true, + "created": 1490738438, + "updated": 1490738438, + "recoveryLevel": "Recoverable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/regenerateStorageAccountKey.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/regenerateStorageAccountKey.json new file mode 100644 index 000000000000..277aff2d2032 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/regenerateStorageAccountKey.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "regenerateKey01", + "api-version": "7.2", + "parameters": { + "keyName": "key2" + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/regenerateKey01", + "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc", + "activeKeyName": "key2", + "autoRegenerateKey": true, + "regenerationPeriod": "P10D", + "attributes": { + "enabled": true, + "created": 1490738386, + "updated": 1490738386, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "tag1": "val1", + "tag2": "val2" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/restoreStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/restoreStorageAccount.json new file mode 100644 index 000000000000..600544e58ff5 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/restoreStorageAccount.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "readStrg01", + "api-version": "7.2", + "parameters": { + "value": "KUF6dXJlS2V5VmF1bHRTZWNyZXRCYWNrdXBWMS5taWNyb3NvZnQuY29tZXlKcmFXUWlPaUkwTXpnMVlqQTNZaTFrTlRRM0xUUXlaVFV0WVdVNVpTMDJNVEJrWXpNNVpHWmhaamdpTENKaGJHY2lPaUpTVTBFdFQwRkZVQ0lzSW1WdVl5STZJa0V4TWpoRFFrTXRTRk15TlRZaWZRLk1JeFMyLXh0eHAxekpaZ3ZrTUY3d2pGMWxiLVJyNWFrbHFMLXpBaVVOODJKZFJNUDFwak5iS0phRktIOXBRcDg4ODBKeERDSmdESUZHc19OOGlnYmdIZ0Q1c0xVMi1pRzdKM29Hc00taFRMb05oaUd6aGY1YVREakYzWjZpZVhxcFMzVFVOVUFkeFhpTkpIYk94YjBmWHNtcWFtNnA0dXJ3Yzl3Qnk1c2pwRnJheHNRM3NRcHBDLXZybXlVZExaelJIWS0xYnhwaFQxVUdiS0Zsd1dSODU5TmFSQ1BZOFhDWUVrX0hxNnc5S0lWSXRTTlRYYWYxUWFzUDJob0NHT19PMzkzVUNzWGp0NzRtOURqdi1vTHRoMUl6TU5sSWp0STg2MTRhTGs0RTFMUXd6ZUx2X2Y1cndKeXJOWkF1c3VWRlRieFp1Zzh6T3BfYTdCOGhGSEJyQS5rc3pPdTN3blllb1ZUUjRLc2dqMUxBLmYyY3huVE1BbU13Ty1RcmdHSUFYUFN2bEdZUDRYWmJvMFVFOGxtY2xZa3ZhRE5ab3E0Wm41MVNKTDNuUFZsVnBaRFlrUmlpd05BSUxvRS12QWtVbmZoLUczOWo3RHhqWm1zZW02bXBmOWxoZjBnZFFNTDdmejBqRDZ0dW1xSVFaWUhFalV3VG5xdDloeEw5N0lnUUV0WmtFV0VnUEJETnJJNFpYWXdNU2ZyR0FfdkgzYXU1MWpabDFTWjlGajJsTHpEblNqbFd0U05QSzc3X2RwbUxrTXNCSmMtamRteUpxYmVxdmdRcGFTSUNsOXpUUXFQM2RxN1VQV2c1R1ZDNmlNZjlTcnBoUVRKX1V2bnp4LWk4ZWR6ZUppd2hYNW9HQ043RDNDWjkxTzNLQkhmYklOX1VvQWlQVWxzazFveU9KOEVjMk5mbHhOaFlrNFRKUTFBN2xnbXlLRlNQeVMyaFlwUDA2VEpTb0JUenVTQk5OTVdmT0RaTDFfV3V5eThJcDktdlVHMW5JOENDQ1hIeEVVN2FVLW5nRVR5aFBfbWt3Q2FGLWx2WTNqZlV1Z29wSllLR3VscXZadk1VZHhLYU1oemR2a05ubFdGeXlJNXdiRUdZcWgzWEJ0MS11TThrOFZVTDdQallzVUt4S1dYbzBMblJPZmFTbTZpTm9ZTmFOTm5YbF9fVW9rd05fSWM0eVVYR3RuMFhUcTZ4anQwZUpEajlET3FyYmdiLTZoclltRmxLTUNqalVxSGtLU1VPaHVYSE9jOFdFa0JEM1hiR29idi03b3c0c0gyN0YxbHh2UVh0OVgtOUl1akN5dHBMYmt6YnJVdHZJT2puY19xTUNjMXFFTG1wZHJCTGFoMzVmWHZQZXotVk9zSXBNOGdsekhWUUgyWWZHU0UwaTJqVkxpVllkZlFHeDNwdTZPamdUc1hPUm5acldlbFExMVlNbUJkWlVqWFNlZkVlQkxuT1lBbUNtYWM0dHNTa2JHTXZzQm92OWNEc1NRLWlsQUhsT1Fsanp3Umt1bnIxdk1ITlFhRDJLUEE5eGxxZ2NKU3FGT3d3RzROSzBxamhyb0NoZDFxM2RHR2V3U2tTd2xZbW44ZlM0VEJ5VjFMYmtWb2NZZHpiWDhiZG54dHRhVDhKS0pUbjJETWxjVFpvR1hFbWQzN2ZZVnlaNm5uMXdxZExtVW9XLW5OQXc3T3RLV3hyMXJUNV9qOHZjRGhTWk1HdTF6aV81NDEyVTRLcG01dlQ3c3BpWXA4aDl3Rk5scmFjYnVjZGVlaS1zMWR6cDlqWGo2NjRuWWxoYzNjOHJubjJ4ZWlna09YLTNUSWxnbmdxeXpJWG5ROHU0dTc5TC1ObXk1VFNjLU4wTnJVTUxQVE51MnhsUlE4Y0VLT0h4QkJGQV80Nk1yVXlhbjUwODFMSlYtTVVyaXAycl9tS3FJRjJET2wxS2V1aGg5am9PeFVybUk0T19MYkduVjJTbUdoZEZSd3FxUS15U2pxcFE2OFBza3hlQmxTdDZnX28tLVl6Qkg3dDI4V3ZYYzdIT3paNFBwa0psTjVmWFRwOXgtOGNuTGptcG5Pc2hUZWxTUXRYaDMwcTU3LXJZbVJzc2t2cFZfaTZFX2JUMTk2VWtTOHo2WUp1QXh3LXdlZ2tPY1ZITUxkeW5vaDU2UUtuWDhMVFdHdjhqWWNQazlaSlNSbXljTExOcWNtRnpUU1JEbzBXMXBkQVJXY2tqRFM2VFZIdTlHSElsTG9oRnpONEU1T3FqdUMxRjEwSFZjUGxoNTc5UmczWk1SNWJoVjltSEZNOFhJZU9HTHAxZFkxbnNLY2dqRVVlUW5qcF9za0RzanJZMVVncXRkTTVNVWhNSHlEZlhaZ3libk1jSDVRaml0YjdWZktrQk1YcGRwU3pLQWx0WDNjelIwODRPVm5nVGtiV2JZQURDTUQ2N1dlLWM1ZDFONHI2WFdFb2RXelNyWlhyZmc0RVRNNG1UZnV3ZjB0d3NORkRJdW5BWDkwbnZJWm1Ualo2RktpTjBiRnVNWmRpR1NKNTZNUEZMcFd3N3p0dmVmN0xENmhjNHJESXBQbEkwTVlVWTJSLWZGakdaZ29JTmdKMkVuMGFFM0c1V1RySjRxcHhhdHB4MVk3ZUgzOUk3WTYzcEJFWEtkRWIwTmstM0tnM0ljbDJPSkp6SU1fM1VHSlJTTmRQWGlfV3ViNGRTMDV4eURzZTR0d1FXdm9rb1QybHlZNGphNlVOc3lvYWN1eGFsTUZvUFR5dHF4YlVTaXFIMEZab0pWcm84amZja2wyYklmSzRqRzN6TnJIOWU1c3VUVWJDV09wYjczeFNMMG9TLVQ0T1JSNnBRbTZHQk05bFJ0eUhtMHJUMy1sNXc0c2ItNnRDcTM4S3FRdURRTGVTcDI1Rk8zMU1uVE5nTFlUeEUwUEZDT3hmRG1RY3BOOFRoWHBGbzZLNHNrd0dmQkpKTU9BTWtIUWZnMUM0c0V5cS1PLS1FWFhjbVV6QjJGRnR4c1gwR3o0aGJSdTFiUlhXcWMxU0IyUk82d0JsWGdPUmJqZjJlLWJQUFFMdmtGcWR3bFpUTE1kaWVUdjQyQmd1SFd3dzI5OEVqcnNNUXg1WG9aRG11MDFRTzlZSjFmTEYtWjkwWEVOU2p5OTM0M3UyUHhrNjhheG10bnp2ZTdwd3Q3Z0ZMMUoxZlZEd3BqMUtBZDdwdGZoWG4yUzJmT1Bfc3JOM3QxNk1qX29qOUVLQm5VNC1jQ3RLWGRkZS1EWk5zQkNhSGZ1bEtHSkFHYmx1UWs2Yi1kQk5oUS05Z19kajdfcjZub2Z2aDRielEybGlQd1E3M1RTazNiQTdzd2EzclZ5ZTVDTVNlOVotNkVKV1phek1sN0w4VUJ3cFllN0J0eHhUNEVBVGo2SXBvYWhGNTgtRHpiMmRsc1c1ZDZIWmpYZUNMTGtVRmQ5Mll3eDBibFlCanc4eTVzM040OEJMME84WG51ak42c0F0eG04Sm9hWXFVUUd3LXNBS1pTZHAzNk1GNlZXYkpUcHBoZHQ2aEhWQjFoRzdpSGN1STBTRzY0WjczNXEzZ0tSYXFHdzhIUXItSWNyeks0VEQwenk5b01NMHpRLVFBSE1PdzAyX0ozU3pVQWZ1bzFWNU42ajB0VGsyeEt0TFp3cmlHOHJNRl9NWTJrN09mdkxqNFlCb3VNN2lBNVM4LnNfM0VabFhIb1lrV283ZzdpRUp1bHc" + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/restoreStrg01", + "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc", + "activeKeyName": "key1", + "autoRegenerateKey": true, + "regenerationPeriod": "P30D", + "attributes": { + "enabled": true, + "created": 1490738386, + "updated": 1490738386, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "tag1": "val1", + "tag2": "val2" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/securitydomaindownloadpost-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/securitydomaindownloadpost-example.json new file mode 100644 index 000000000000..170bac4a49b5 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/securitydomaindownloadpost-example.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "CertificateInfoObject": { + "certificates": [ + { + "value": { + "kid": "id1", + "kty": "RSA", + "key_ops": [ + "verify", + "encrypt", + "wrapKey" + ], + "alg": "RSA-OAEP-256", + "x5c": [ + "MIIEnTCCBAgIBATANBgkAoWgAwIqhkiG9w0BAQsFADAQMQ4wDAYDVQQDDAVjZXJ0QTAeFw0yMDA0MjYwMzU1NDNaFw0yMTA0MjYwMzU1NDNaMBAxDjAMBgNVBAMMBWNlcnRBMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAi0+23X8hLsFgrh7O2VtM2fVrSRIUDM/7+/D7A+FQOyt1jsMC8CSYHixo65l/FbAWGx79mqANMa0v2NX4UPDgkRhHlnQXstXa+VRgylqKpS+Da0x9Om/mivTQ26aDwb1Pd8h+SGcgJNy1VOnmI5+uvgfh9Qj6glJZHEyvh6dat6f4DDTwRVf6Vvc5noB+6PXXM/nReFWs32fiojoFeUbneQthQnRCS7CeokqIF1KJoOIrTZFCJ+hw2qtCtKrr8K+0rqC/Jq5r1cu6o0/NOweOqKgwRQKapcrbdY0JsmcTERisX07w9fMbtMA/yiilaMj1GPW0Bwg5u5atZcjzTb6wOFYOGd2Y1WFBwQqqxriWo62Fp/TO5+kQigYkgVZXcPjbm2c0hdkisPt+APqEdMotmYTANxtC6McP+9KOO8+12K2fj2a9NEhRJOboGQeZ0M7DJoQDl4wg8f2nswxH/36Vfc5ad+nxRYwYObRYfgOh8vpYaw3cpj5+UHBaPQ8ZiQNDoWHJWvX5z1nTmCc2NmLHdi3ijkoc7AKHIv/ZX7qbNhv11a76gJRi/IoHkcf1UTpxCoD+eTbo8Isxt4c9fBTk1vS4wSGsJCewxcyMlTB9FHufPM8k5Uz/ZCOrc+RoaznKPGamgMJOOwbPE1WcBnxuG4rQcskdCa59NiZXyZsx5vsCAwEAAaMCMAAwDQYJKoZIhvcNAQELBQADggIBAAjHy9GCPejDYIVb/iv8Wo40n317LQN7H6ay+YB5L2byEQATvC1ixde6VqwU6k9VdoQOTfP3xJhfstKrO+n5mFJBL4KG8BZBbd6XQu/ggPLKEIVZFbeQkX6o03K54gY8GxYjHr6gF12I6heLWVKA/Qi480GqSlp2Nz+LE1jgPp9u52xpUPjsvRHXtxYZ7Q3O2jhPToNr3D/TZSu3tmQOeqj9M/igLDe9TxqN9C9jraUGR7Lr4zN1srtvIKhxGMS3Q9kC4Mq+ZNNIwC9+jzzd8fB2pGJP/iTFDzB0pDh9Jz0/CR4O4aGoYqkQEx629aZH2TzhOh2yf04TaniwkHXnUEsPTxrpY8ty/OUG3HzBMHCDhS08ZSimrrxhiWyH6g0OEglXVGrI2nH6nnQIn1MTNILcjUTMRt/WSOz6G07oZciAouKD2YS/W1qPap600kGhTya81BuYThGmFoXVMs7Mk3XBzZ81b6hJ6ncwCLb3g4YzqeQ8bOf42jYJctq4tPNaXTfoC7N0FX7lPVJpRdh6BFcHYcg0NPWJsdk6LtSJB6bp2qptRAgJ5S94s843FRd8PRFE10TKDfj3YFRBNkx7qDjwUhtN8/JC9+RHHw0Ngd0x2/BLqeCEMAQaJoC53h0aMLW6PSyovnsLvdJbN/rYc15qUXSz8TtjaHFpjsy/Fo5H" + ], + "x5t": "dJKBile6IJDrRGqa3k5d8_IKFdI", + "x5t#S256": "0HylM2tkO5ny9CyZ9VLASxspFr8GknnsvuoJEzuZO2A", + "n": "i0-23X8hLsFgrh7O2VtM2fVrSRIUDM_7-_D7A-FQOyt1jsMC8CSYHixo65l_FbAWGx79mqANMa0v2NX4UPDgkRhHlnQXstXa-VRgylqKpS-Da0x9Om_mivTQ26aDwb1Pd8h-SGcgJNy1VOnmI5-uvgfh9Qj6glJZHEyvh6dat6f4DDTwRVf6Vvc5noB-6PXXM_nReFWs32fiojoFeUbneQthQnRCS7CeokqIF1KJoOIrTZFCJ-hw2qtCtKrr8K-0rqC_Jq5r1cu6o0_NOweOqKgwRQKapcrbdY0JsmcTERisX07w9fMbtMA_yiilaMj1GPW0Bwg5u5atZcjzTb6wOFYOGd2Y1WFBwQqqxriWo62Fp_TO5-kQigYkgVZXcPjbm2c0hdkisPt-APqEdMotmYTANxtC6McP-9KOO8-12K2fj2a9NEhRJOboGQeZ0M7DJoQDl4wg8f2nswxH_36Vfc5ad-nxRYwYObRYfgOh8vpYaw3cpj5-UHBaPQ8ZiQNDoWHJWvX5z1nTmCc2NmLHdi3ijkoc7AKHIv_ZX7qbNhv11a76gJRi_IoHkcf1UTpxCoD-eTbo8Isxt4c9fBTk1vS4wSGsJCewxcyMlTB9FHufPM8k5Uz_ZCOrc-RoaznKPGamgMJOOwbPE1WcBnxuG4rQcskdCa59NiZXyZsx5vs", + "e": "AQAB" + } + }, + { + "value": { + "kid": "id2", + "kty": "RSA", + "key_ops": [ + "verify", + "encrypt", + "wrapKey" + ], + "alg": "RSA-OAEP-256", + "x5c": [ + "MIIEnTCCBAgIBAoWgAwIqhkiG9w0BTANBgkAAQsFADAQMQ4wDAYDVQQDDAVjZXJ0QTAeFw0yMDA0MjYwMzU1NDNaFw0yMTA0MjYwMzU1NDNaMBAxDjAMBgNVBAMMBWNlcnRBMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAi0+23X8hLsFgrh7O2VtM2fVrSRIUDM/7+/D7A+FQOyt1jsMC8CSYHixo65l/FbAWGx79mqANMa0v2NX4UPDgkRhHlnQXstXa+VRgylqKpS+Da0x9Om/mivTQ26aDwb1Pd8h+SGcgJNy1VOnmI5+uvgfh9Qj6glJZHEyvh6dat6f4DDTwRVf6Vvc5noB+6PXXM/nReFWs32fiojoFeUbneQthQnRCS7CeokqIF1KJoOIrTZFCJ+hw2qtCtKrr8K+0rqC/Jq5r1cu6o0/NOweOqKgwRQKapcrbdY0JsmcTERisX07w9fMbtMA/yiilaMj1GPW0Bwg5u5atZcjzTb6wOFYOGd2Y1WFBwQqqxriWo62Fp/TO5+kQigYkgVZXcPjbm2c0hdkisPt+APqEdMotmYTANxtC6McP+9KOO8+12K2fj2a9NEhRJOboGQeZ0M7DJoQDl4wg8f2nswxH/36Vfc5ad+nxRYwYObRYfgOh8vpYaw3cpj5+UHBaPQ8ZiQNDoWHJWvX5z1nTmCc2NmLHdi3ijkoc7AKHIv/ZX7qbNhv11a76gJRi/IoHkcf1UTpxCoD+eTbo8Isxt4c9fBTk1vS4wSGsJCewxcyMlTB9FHufPM8k5Uz/ZCOrc+RoaznKPGamgMJOOwbPE1WcBnxuG4rQcskdCa59NiZXyZsx5vsCAwEAAaMCMAAwDQYJKoZIhvcNAQELBQADggIBAAjHy9GCPejDYIVb/iv8Wo40n317LQN7H6ay+YB5L2byEQATvC1ixde6VqwU6k9VdoQOTfP3xJhfstKrO+n5mFJBL4KG8BZBbd6XQu/ggPLKEIVZFbeQkX6o03K54gY8GxYjHr6gF12I6heLWVKA/Qi480GqSlp2Nz+LE1jgPp9u52xpUPjsvRHXtxYZ7Q3O2jhPToNr3D/TZSu3tmQOeqj9M/igLDe9TxqN9C9jraUGR7Lr4zN1srtvIKhxGMS3Q9kC4Mq+ZNNIwC9+jzzd8fB2pGJP/iTFDzB0pDh9Jz0/CR4O4aGoYqkQEx629aZH2TzhOh2yf04TaniwkHXnUEsPTxrpY8ty/OUG3HzBMHCDhS08ZSimrrxhiWyH6g0OEglXVGrI2nH6nnQIn1MTNILcjUTMRt/WSOz6G07oZciAouKD2YS/W1qPap600kGhTya81BuYThGmFoXVMs7Mk3XBzZ81b6hJ6ncwCLb3g4YzqeQ8bOf42jYJctq4tPNaXTfoC7N0FX7lPVJpRdh6BFcHYcg0NPWJsdk6LtSJB6bp2qptRAgJ5S94s843FRd8PRFE10TKDfj3YFRBNkx7qDjwUhtN8/JC9+RHHw0Ngd0x2/BLqeCEMAQaJoC53h0aMLW6PSyovnsLvdJbN/rYc15qUXSz8TtjaHFpjsy/Fo5H" + ], + "x5t": "dJKBile6IJDrRGqa3k5d8_IKFdI", + "x5t#S256": "0HylM2tkO5ny9CyZ9VLASxspFr8GknnsvuoJEzuZO2A", + "n": "i0-23X8hLsFgrh7O2VtM2fVrSRIUDM_7-_D7A-FQOyt1jsMC8CSYHixo65l_FbAWGx79mqANMa0v2NX4UPDgkRhHlnQXstXa-VRgylqKpS-Da0x9Om_mivTQ26aDwb1Pd8h-SGcgJNy1VOnmI5-uvgfh9Qj6glJZHEyvh6dat6f4DDTwRVf6Vvc5noB-6PXXM_nReFWs32fiojoFeUbneQthQnRCS7CeokqIF1KJoOIrTZFCJ-hw2qtCtKrr8K-0rqC_Jq5r1cu6o0_NOweOqKgwRQKapcrbdY0JsmcTERisX07w9fMbtMA_yiilaMj1GPW0Bwg5u5atZcjzTb6wOFYOGd2Y1WFBwQqqxriWo62Fp_TO5-kQigYkgVZXcPjbm2c0hdkisPt-APqEdMotmYTANxtC6McP-9KOO8-12K2fj2a9NEhRJOboGQeZ0M7DJoQDl4wg8f2nswxH_36Vfc5ad-nxRYwYObRYfgOh8vpYaw3cpj5-UHBaPQ8ZiQNDoWHJWvX5z1nTmCc2NmLHdi3ijkoc7AKHIv_ZX7qbNhv11a76gJRi_IoHkcf1UTpxCoD-eTbo8Isxt4c9fBTk1vS4wSGsJCewxcyMlTB9FHufPM8k5Uz_ZCOrc-RoaznKPGamgMJOOwbPE1WcBnxuG4rQcskdCa59NiZXyZsx5vs", + "e": "AQAB" + } + }, + { + "value": { + "kid": "id3", + "kty": "RSA", + "key_ops": [ + "verify", + "encrypt", + "wrapKey" + ], + "alg": "RSA-OAEP-256", + "x5c": [ + "MIIEnTCCBkiG9w0BAQsFADAQMQ4wDAYDVQQDDAgIBATANBgkAoWgAwIqhAVjZXJ0QTAeFw0yMDA0MjYwMzU1NDNaFw0yMTA0MjYwMzU1NDNaMBAxDjAMBgNVBAMMBWNlcnRBMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAi0+23X8hLsFgrh7O2VtM2fVrSRIUDM/7+/D7A+FQOyt1jsMC8CSYHixo65l/FbAWGx79mqANMa0v2NX4UPDgkRhHlnQXstXa+VRgylqKpS+Da0x9Om/mivTQ26aDwb1Pd8h+SGcgJNy1VOnmI5+uvgfh9Qj6glJZHEyvh6dat6f4DDTwRVf6Vvc5noB+6PXXM/nReFWs32fiojoFeUbneQthQnRCS7CeokqIF1KJoOIrTZFCJ+hw2qtCtKrr8K+0rqC/Jq5r1cu6o0/NOweOqKgwRQKapcrbdY0JsmcTERisX07w9fMbtMA/yiilaMj1GPW0Bwg5u5atZcjzTb6wOFYOGd2Y1WFBwQqqxriWo62Fp/TO5+kQigYkgVZXcPjbm2c0hdkisPt+APqEdMotmYTANxtC6McP+9KOO8+12K2fj2a9NEhRJOboGQeZ0M7DJoQDl4wg8f2nswxH/36Vfc5ad+nxRYwYObRYfgOh8vpYaw3cpj5+UHBaPQ8ZiQNDoWHJWvX5z1nTmCc2NmLHdi3ijkoc7AKHIv/ZX7qbNhv11a76gJRi/IoHkcf1UTpxCoD+eTbo8Isxt4c9fBTk1vS4wSGsJCewxcyMlTB9FHufPM8k5Uz/ZCOrc+RoaznKPGamgMJOOwbPE1WcBnxuG4rQcskdCa59NiZXyZsx5vsCAwEAAaMCMAAwDQYJKoZIhvcNAQELBQADggIBAAjHy9GCPejDYIVb/iv8Wo40n317LQN7H6ay+YB5L2byEQATvC1ixde6VqwU6k9VdoQOTfP3xJhfstKrO+n5mFJBL4KG8BZBbd6XQu/ggPLKEIVZFbeQkX6o03K54gY8GxYjHr6gF12I6heLWVKA/Qi480GqSlp2Nz+LE1jgPp9u52xpUPjsvRHXtxYZ7Q3O2jhPToNr3D/TZSu3tmQOeqj9M/igLDe9TxqN9C9jraUGR7Lr4zN1srtvIKhxGMS3Q9kC4Mq+ZNNIwC9+jzzd8fB2pGJP/iTFDzB0pDh9Jz0/CR4O4aGoYqkQEx629aZH2TzhOh2yf04TaniwkHXnUEsPTxrpY8ty/OUG3HzBMHCDhS08ZSimrrxhiWyH6g0OEglXVGrI2nH6nnQIn1MTNILcjUTMRt/WSOz6G07oZciAouKD2YS/W1qPap600kGhTya81BuYThGmFoXVMs7Mk3XBzZ81b6hJ6ncwCLb3g4YzqeQ8bOf42jYJctq4tPNaXTfoC7N0FX7lPVJpRdh6BFcHYcg0NPWJsdk6LtSJB6bp2qptRAgJ5S94s843FRd8PRFE10TKDfj3YFRBNkx7qDjwUhtN8/JC9+RHHw0Ngd0x2/BLqeCEMAQaJoC53h0aMLW6PSyovnsLvdJbN/rYc15qUXSz8TtjaHFpjsy/Fo5H" + ], + "x5t": "dJKBile6IJDrRGqa3k5d8_IKFdI", + "x5t#S256": "0HylM2tkO5ny9CyZ9VLASxspFr8GknnsvuoJEzuZO2A", + "n": "i0-23X8hLsFgrh7O2VtM2fVrSRIUDM_7-_D7A-FQOyt1jsMC8CSYHixo65l_FbAWGx79mqANMa0v2NX4UPDgkRhHlnQXstXa-VRgylqKpS-Da0x9Om_mivTQ26aDwb1Pd8h-SGcgJNy1VOnmI5-uvgfh9Qj6glJZHEyvh6dat6f4DDTwRVf6Vvc5noB-6PXXM_nReFWs32fiojoFeUbneQthQnRCS7CeokqIF1KJoOIrTZFCJ-hw2qtCtKrr8K-0rqC_Jq5r1cu6o0_NOweOqKgwRQKapcrbdY0JsmcTERisX07w9fMbtMA_yiilaMj1GPW0Bwg5u5atZcjzTb6wOFYOGd2Y1WFBwQqqxriWo62Fp_TO5-kQigYkgVZXcPjbm2c0hdkisPt-APqEdMotmYTANxtC6McP-9KOO8-12K2fj2a9NEhRJOboGQeZ0M7DJoQDl4wg8f2nswxH_36Vfc5ad-nxRYwYObRYfgOh8vpYaw3cpj5-UHBaPQ8ZiQNDoWHJWvX5z1nTmCc2NmLHdi3ijkoc7AKHIv_ZX7qbNhv11a76gJRi_IoHkcf1UTpxCoD-eTbo8Isxt4c9fBTk1vS4wSGsJCewxcyMlTB9FHufPM8k5Uz_ZCOrc-RoaznKPGamgMJOOwbPE1WcBnxuG4rQcskdCa59NiZXyZsx5vs", + "e": "AQAB" + } + } + ], + "required": 2 + }, + "api-version": "7.2" + }, + "responses": { + "202": { + "headers": { + "Retry-After": 5, + "Azure-AsyncOperation": "https://myvault.vault.azure.net/securitydomain/download/pending" + }, + "body": { + "value": "eyJFbmNEYXRhIjp7ImRhdGEiOlt7ImNvbXBhY3RfandlIjoiZXlKaGJHY2lPaUprYVhJaUxDSmxibU1pT2lKQk1qVTJRMEpETFVoVE5URXlJaXdpYTJsa0lqb2lhSE50WDJKaFkydDFjQ0o5Li53dGhUcG5Dakh6d0Fvbm14SlJrcmhnLmIxU21NcjJkX2J3VUZJS0tlRnZ0Y2lvS1BiUXo3OGJyd1duclVBZE4tM0txY01FUXNtSU5FN09WZ2JLbFZ0V2tkemJmaGdrUHd1dUhtaG9QUHpJd2tHQTQwYXVLZW9OaC1EN2RWanBJd2NVcDVMNDVVVlNRWXM5elRQQnRmSnItcy0xbk1DNEhwZnpXRHNhZUxUTzhfcGRtNGxISi1lN3dGeTE3NVJQMDRZR0xPZlVEaVBTaUZXTzVQd3djQjRsSUx1ZXI4cmgyaGYtSFN1M3lnYW02N3VGdjc1WTAtU0gxN1F3VHpwbkRtXzZUbzNaUWZIRHp3WUprQjlWYmRvaHVMcWl4QUY2MS14UjVvXzc3MUdtOHlkZHF1Ri1qV2ppUjAwNWZBSnFLb1UyM3lmYXhZdmROaFdNQVUwU3RfTG5HTnYxaXRQYVg3cXV2aWkzOFlhbjd3TU9VZGg4TW5VS19rN1hhSU96VTJfUFVWVll2R2RNcXFlaVRNLXBrekFxZC02LU5vZ3llc000NzdXdnBNa0F2STZLS2xvRkJKQzRfUlFYYUxITHZwMnAxTlM0NUZLNTEzb1JJeHROd3AtM3JUME5FU2RTbnZfb3ZCeDhFVGpZdF9Mcm1RNHplb2pqRFVLZC1EWmxQcFlGUVAwZWFfNmpSckpsZ3lvVC16czhWTEFFREdoX1lmZDRydHNENVhFZGVMZ0IyMEF2NWlLRk1jcHhtTVVSakRJQTZES1hNUXFIa1RLam1pQmU2aHROZ2FNNjE3S2FYclRuWjE5Ui0zWlIxbGs4UmhoQm5yZ0NBamlWd1lVcE8xUGl0ZDY2bl82VFlTVTJ5eFkxMkxoZ0V3Z1hxR2pzOGJIVEtGYnZVVmxKQTduV1RSN2hTUHpTZDJjanlBaUNDR1ZEUjQ4VjBTY1FBVXFLTGVFZUl5NzhueXJQSE9kXzk3dGtGSXBsdmhncnBkdXRISUNyakQ3T1BMWVJ6UGpFQlJxUFFzQm1RSzl2V1NDNDk5ZGFITzRJOUtRTG9mVTc1VmhOOGt0NlV4aGZFVF95eURfSGM0UGJLZkc5TG1hYUlxVGVtVWZCVnU5REx4RXJLbzhLVC1RX1dFRi1LOEZFbXhZdUFKWEgyMktrTWxfSGFva280NlRCV0FPcTduLW8zaHRpbVBlUmxuSkZxa0lqbTBIc3UzWEJETkdpMEFZZGtpakE0QzgtOFVwNk9ZSWVDZnZOeVEzYVllcmhJVGpHR1puMnJ5SEZCRnR3WVIwbkJCc0ZfMFo4SkR6NTlvTEtlMThheVlvaUp1UHNTdWp4VHFNeF8yNG44WndQTnB6LVhYLXBEVWpkSUZvVS1FSXV0UWxnT3dqUmVKZ3I3WF8yUks5cVBfT25ERkRNUnZzUU5oS1pIWklhREdVdEROd2JxMmNHQzBNRElpeDgzR2RIS29kbGJqNkJ6VXEtUXFXT1dSdUtiQ1NnTFdULVdSdnNzUXlONnhIYXRHb1VSMUVMcVpPejJUZmw0cm5Ka2QtSTlRTE15c01zbVFiZldlTXBJWXA3M29STGxVNm9iRnNkM2JNNnVGeGFGcDUzT0pDamNGUUNlLWM4X0xEMWk2dWhFeFNZenNSYjhLR2cyX0dpMFNCSkcwdjBSb205X3oyVklScER5MFdyZmhnLV9YRjZUdFNtZkhoYWpRVzVqTC1xMnNmQkNlcVI5M3FXYUt1TFJQS0RfSm4zWElJR1R4UklDMzRETTlfbXprRTE2SUZDa0dnN3FEMmZCZ2EwNHA2c1hrdlEtUkdYVFhKZGlOd3NpVW1RUFR3Ql9LSVA2OFRNQWdSTWpBMEFJMjZOSmZ0b2Z4eng2X0w2VTU1SDZELVZ1UjdDOWsyR2lWa2Y0VnU0Q2p4WTI5TWdwUERlaHdScjVVMXRBUFU3Wi1nVU9Eb0NTcGRINVRjY1NROGtKb3FEby04SWRKMjlYa0NEUTdDX3U2aTFVVF9feUhLbjFwSUxocnBxZm5lb081SE5sNEJTbjJ5cEdFZUpfYldCNl9GMU4tYXBoVDNjRmpQWjVnb0tfM3ZPVWw4N0gtSjMxNnhpUGRiZGhiM3ZkSTVkQ3daekhzOEZwbFpVaXJGNGlsRHM4bklrRGs0cXdIZGZvQ2VWTlgtWE1neUFOUTlKZTQxOHJEZkprZF82OWFiSzB6MXlKcmg4ZHhNajFHSnc2N2FzZHZ1XzV1elZPcjBldE95WDUzUVMtUkhLeEs4RWZUZ0U2SThwVjBTQ1hRYkg5S2lNd1dYcm45cjk0QzFhZ3dJLUZ1b0JlNFl4eHo4OFc2RUdvUzJMMmkwWTM0LWFjWVJxSTl5M3l2aVJ3T29Ub2NnUmF3NDFUU3ZROE5zUzBPQUlyY1JzMlJfMWhOeFlObFAyUm04VktPcldEcjQ1MHNJRC13elYzUmJxenJLcVJnbmxBOEFKcnVCa1FPbTQzVUFIVnBDY1pvVGtUMVYxYi1Weml3bUQzV0hHZFFnM216RVItdmlGR0RJLWJKX09NN1JWdlFwT21xQVFBWTFvQ3ljOWh0cUZKSUlhYTdibzEtQ1lqcDNTd0ItYnBsTjhuWDhHVWFUbkNFbVM1N1VTbDMxUGVpNkszeXJmUWVJWl84Q2RSdngtZzUya2E5NU1nRmZGcUFOdFNQUzhXbTJQSm55aDlxYTliTVhzSmI5RmVYUnFZSlV2OGxfc2VkVWJEWFRBS3BGWl9hWVI3VUpLa0xWejNiNEcxQWptcFJQQXdzd01TWDJtUkFzcGt4Z2ZrdV94QjRyaDBuX2t4NDQ3Q2pYa1VjSncxNlpBVHI1Nk92THZCNmZoRXNqejhVWGRyNTJHQ1R2MzluUjBsUGVLQzlZcC1GTGZHaXNNTVk3TEM4WHNFU3ZhWVU0NnZGZzJGVUhjYmgyM19xbENiWldPWm9vd1FrSnFJM2VCU2s1Rkc3ZXVPOERLS2tBU2N3dkFmc3cxM0VCTHJ2djhLem5mMndRbFN1VFVEMjdWaEt3Mk55SUtuUTJkeTN5d0NtT0EyRnNBdkRwUWpybXNITjVmVDVTLWlTRjRyZTBrMFU1VzVJUVg2RzNJMlBDWFJDOHJnZFA3SjFNOHEwVGtOZE0yRUVqdzBtbWpkaVM2RFUzbWMtUDVya0hEdTh0anpPYktESE5MbTJfa0NoQWFqTXNtcUlDMzFiOUxvTUg0c2xYbUNjUDhQTXF6M1c4TXB0V2NGSHFLT3pDeDJTWmlVRkdaN2h2a1c0dWFyczFDMG95ekFJYTA3eDF5aWZxSFUtbW1Mai1FTEp1Y0xkZ1VOSkJjeGFuVFNSc3VpRjhnNU5iUFBIdDVHdEtiUC1SdmlQd2V2cHdjbjdrVU9RUDNRUnpiUjlLdUpFZ0JTdGFndU1GMlNwVjRDNlJNZ2E1RlB6UDRVajdtNmdDMk9WSjB4RG95ZEdYSnJPa2NiRlhHQnRfXzFHSG1uWUw1cVhVbGJBT3F4RS03ZmJiem91OGhpSi1IeFBTY1lfUHJwOG9ZUUZ0Q29sSkhMZFFHaHBUT1hKd19lU0phRU5jaGczbDVFNkxCNVU5TFlkeTRmSnh0ekY4dDdHenR4Z1BlMnFLN0xBTkRVZXNxZUJEMzJTVEd6cVhzVG43UWNlcEEwcjBzTnlyaXFuSERTYk9vXzNTdDNKbkJzdlNselRiWWFuZEozY1pJN1c2RWsxQlZLeGhVNUQtRGNJb1R2cWNvN0t0WW1pS29FT1hjbG9jQkZLTFhPWENhMVhvUUZsUnRCdGNUQW9LTDNZSmZTS0ZwRUw4VVc3bnZlcTlfcXZ2UFRtMmpUUW96UHAtYjhNZFJDZjFVc3RId1JxeDcyVXNxcDBKbnhTVERaRi10Sm1zdlZHYkJHcVIzZmNmT1lGaExZN3c0UDYxVS01U2NUMWpxaGhnOVVQbDdJVFFBMTlJRHJkWHZrSEotSkZsVXRoVHY2YnNaT3FuMmNNaURjdUdTY3BLckgxMHRnZmZ2cWxSZWcxLVlJTGJMLXJ4eDk0ZER2R3RkXzV2eWNBZjFiY2Qwd3RaRzdLaWg4OVhZaS1xVjZVc0stYWZyT2V4VG9pX1Y5clNPMmZ4RG9GQ0JoV2dUc3RMc1pIQUN4VU82SzZzbFFwbVBpRTFKNldXdjIzYnZORF84Q3dwM004UURsay1TUWlsNEJUZnFjeVdzRHN0Y05tRnJGVkJBMWdGdFdGVWh4cTlHQVUyQ2o1bWtWM2REekgwM3FYLWI2cGdpSlE1SFFWRmw1SkV2bTFLQWd2ajJQRGFwNmhyd3NXZVBIanhjMXNwQ0dJcnA2Sk91LVZQMm84Mk5hWXY0S1UxUkFRai1mdXYtVFhfaG4zSG9Md2lDa2NRaEdpWWpWRjJvVEdDTEhkLV9rVEFRRjZDZ2hDRjlQVXFmdVNaSFlfRW94MG1NdlBZRDB6NURZMFhISUY4UzQ4cExOUE9seUJRZ3pSNU84c0VHZk5BOVM0cnJwVVdJQmpETnpyVGlZMjVqV3V0czNIaHhVUU53X0c1dFFqLS1hVTlCcUItZkg0TVVKNm9HM1lDSHpkcUVBd05MclVWQkF3M2s4NFhkZ0xjVnFhVzJBSUpxMTBLQ1NQdUxOY3ZURHM2WEhXS3kyTHd0UTRHdUN6REhCQWliT19vV0hQcjZyaERKVWcyZTV2aGV0cVBlejV1M0oxeFN0VDhyYUIyT3ZOYk9ob05BYmNwMDRQbGJ3UHJpZ0FFQ0dTMVQ4ODVaTjdqYjlEd1FOckxwWU9Db0lQRGNlaVhuYXg1al9UNmF4LUhadF9jQTAya1JZMFNBSEJITkZOQXE4eUxIdkh1MmJxQkpiUmZ4cEo5TkZmeFF6ZEoyYlpSNmJHOG54dVNUSmVqeXVRdlJaNzBOZUZqR05FaERFQ3JTNUoySTBBVFBaMDVPTE1OUU53NnZERGJBSmR5NV9WT2F6c3BhLWoxM3dwVVJuSDBzWlBJd1YwVWpSdHRjUTVHNzRNLXctZXppNUk2dkdZOTlyUHhZZkZRMlVITnJzTV9COVVxTlZXZk1qcjFRM2Z5cWxuZ2IwUmF6WHRoX2FjLVJiOFBtV3FBYnBvV3N6cXctZnFDQ0otb0drWkwtLXhOeGFjdjBfWDh4QjlYT21NajgyWGFKdkhNVmJpdWZwUUNsWnBPS0E2QmtjQlhqSVM0LTkwWDVneXlhTVd3bHozcEdud1UxSFZNRHBNeVBJN1VKYUZtdkRQcFU2WlhZZXZWRUZEMzg2NVBKeEZDZnBfdVhoWVBqMEFZLVRNRWpPZlIzUEktMjJ4bDl0REEzOUNuMlhzeDNrQ2c1Vkhlb01BbWZsM3YtaWZxUWxnZ0YyVS1uNEJXXzA0QlpOb1F5Y0ZQdnA0Q0Y1c21MVXUwSmVsN3BuMFF4OFQ4cjRLaEVRdWRoUk13RTJtWlc4TEZTeVdobXFzRDRXNVRDYi1QVTBQZXNHMDdFMXJLYkdFV2NaWi0xek5pam1SWUpxUHdZSWRnUmdhMV8wZktCNFcxZEVRNnE5elRESnl6YTNTS0M3TVhhbjR6d2F5aGM0aTc5Ty1NM3JPSUIzT0lJUFc2RjY1MTM1WXlUVVpETGJqZUJPOGZ2NlJCQU9MR0xqXzgyc2hPQUFrRXNJcThPSnVHTWNiMEZUVXVqYUNHQURaLW85RWNhWDdMMm4xanJBNVVEaFNaV2xhQ0JfZ2pFTzhDTTdJV2xYMnVRYTVJOVg4ZDd5VE9TZFZWX0ZDbk5zcjRUdWNvcWNZalpDd1VmaUpSLXJfYWxKbVluVE5RMFphOGt5ZVRWZWZYTDkyNnFyQ1FqSUcxV29BV2FtYkRNUHV6QkJNZG5sWVNyaXMyV2VyU3hFX3RjeTE3djdvaU9Xbm05TGFVam5ob0VXVTlTTjBBSEJ1Mmhsa2dHOGM0TzhHMmo2eEd0QUVURnJJRnk3MTNJMi03eGVCNjNFMjJqZ0FQSlFqbVV4RzZaaExFSFJBOXNHWUt5Snl6dTNmd3c0SGxFS1EzdFpXN0JTV01ueXFYOUJsVG5rZEJrSHVBTkpiLW1JcWl6UVR5ekVodTBLQU5GY2w3OFpaNzYyU0pfdERaQTRhZDhweGR6TVZoZnpvYkt2Qmo2dUlKcjFvQlpIbmp3cFJvM1Y5OXV2bElGSWZBS3NfVmlSRWl0QUdxT29GaTczYlpuWFN5RDlmZ1hYNU53Ri1mcGd5S0VlQk10anM5Ti1xYUNlRFVRYVJaWVNlc1JCOVItMUVNa2pqdHBjSWlOaGxIbGxnZ21tOWd2T2N5LXR4bXRZcTZYRTgwQ3NQN05vSWZIZ3JYSTVwcURnWGtESjB3SWJxRHV3aFF4NWNmQVpFV3FuUDVPSkJURm5BbEUzSWpqdEFnMXRVNi1taUt5c29HNG05VlZUejNGNnh2V0N0aXFZeFVFX01tdy03UXBwcjdQdEV3d3B1ZUNoczZGQ1MwSXY0YTlQUF9Iei16QUt0Zm11Tjg4emhyY3hjcVhJNFRqeHpLenQ0NDk1RW5MLWVqR1ZUR3Q2OG1fMjYwUklIa0wzamlQLVd4NlJaRkVFb1RhMFo3TTBIdnhkb3JORVVsYXFqaDFXRmRKVFV3dG40SmJpeVJFTGthZUNMTEYtdlF4dkVwVmg4M29udUtZakVFV19CUXdrbW9ITG00MlYtZTJ3eVR4Rmt4eWpBNnJFQmk4anh2V0RYeWtySVVYbjRKRXZyS0MyWmZuZklBNUJGR3B5aU5MbU0zSVkxNHhKQ3VRY1g2aFVwajVWMVpfbllBLW1mTFJ5V2Y4MkIzZEVOdzBUZFY5QTU5T2NmUlRlamx3WVdDSEhxcFpPTXJQXzZtUjJmSTlIVGhIVjM1UXhIMS03eWJ5SEN5YTF1dzhhNGdPMkpXWjFqY1dTWDZndm5UTThRazh4bjdGcnFnaWdhYTJ4Y2RiUlhlbHlocUZUX3gtSUlSQUFNbEJLZW94cnZXaTRQQTZDc3BxSzJBSjk0ZVFEeHRjZi11ajQxek8xajJnQTJiNGdicGh1dlBHZUVDUTVJUDJzNzhYczY0SlVPVmpIZUxJdVBQM0laaUZsWGt0cl9SZ3BwTzZZS3FGTXFMNEZlUExHbWVDQTZfczBfdEhtNzJscmFFSzlmWnpfalBwRWYtQ1YwMlZLN2hmM3BIdlBTcmJlZmtMdXJaSXJmOXJrLS1LbWFmdGQtQXhfdzU2clJXLVprdGZJd043ck52bXVPQlZRaVRyZ3o5TC1PeDhVbTFSejRMS3hzRWpKZU5XcE1JWW1ENlN3a01vNVE2bnpLS2tZeVBvbjIxTVVqTTliU0tTUm1MVUVMeEhKN1RYV0l1UmVZRkIxb2l3eVR6OHdZdmtMSUJlNUE0U2ZfVTZPNGh1ZmVXLXJ1c2NDSWtqNmhudXNWSjh1dmpibTRndlBPZC1fRHh5aDJmLVBiZVQyWUg2QXFsQlRZbGZhQV9STXJpRWpFc0ZWamRsYmxVZVVWamxQT3MyVEhIS1U0aUxRSm9yeUV1UFBucGE1dFVJRW15dHBtSjZ5c29adzd3UkFBbkxfTjNGVi1nemtkOFdXejZSbldrdUhWVG5PWE1GUWQ4UlRQNzI2S1otMzJHdGxHRmZKUE1pdUZoOHBKOUl1VkFnTHBoY0VNeGxYbWc3RUViUnVEZ0otbXVqRkdRZWlpTHVLSUpqRFd6dFlnOE1LbTA1M0gzT1AxQldxc1o1bHotZnRSeHZtQm5vOFFDVjYzTXltajhmUHBKMHgwYTc0OEhydVhLTGhSY213SVoyZjJqRExqNGw0a04xbDdmUlI1YmlIMzZHRm01OENLQURqOXlGQ2hBckdmNzNjSkkwX3VCU2l1UHFBMTJRdmNxeF9IVjkwXzdUN2tyR2diTVlkZ1Iwem4xcjN5LVJkek9VVnV1QXphWm9ISmFZVXBEY3E3dVk0ajVrUXJ2WmZtY1V2ZV9iclFDSkNKenJaTkVNY2xtRTdCMjlOVm5DZDVKMDVZZVozb2s5bVlyd0dlOXZQeGZVUmxtYTllT2hFR0ZDXzV5T0dxT0wwWHY4eF9uUWxaaTNNVHF1UWJUTE9pVlY4OG9OeFdXQ1dhUkxIdkpPUzNBMmNsd0JzVFNSdV9ZMHZCQUlacXBtZXY0WXhzOFpWcXZtWUdsRjJ2bk82cm5ybWNYWHRPclFFX000TTJrbXRlenJheUpUek8tMXRhSjRWdkk3ZmplZG1tamU2eTREZmFkbjRlTnAybmVubUl1cmJFeE5mekdINnl6TFMtR3pZV1VLbGFOTXpyYjNYSGViNVBSMTNmZEJZeE81ZmZoUHUxZE9tblFiNXRtYV9pTGpkRlFkQThFUVQ5bXhnOHpDUWFjZDBNeXM0NGoxRXZiaEhzcTViRDFka0pQaXhKMmw3LXlxLU54Sm1ieVdhOEZLeEM5aHRIaEF3VHV2OVJ6akFJM0N2Y09rTnVVcVRaWi1XTFMzbFBxSVhGNjZDZnlSa0VTUXk5UXFGdjYwTld5UXl6ZUhDLU9jVUJuSFhMLVBiYVBKNFpNYTIwRDlYNW80RzdoNjYwMXo2MkJiMEx2dUVJcFg0Z1gxZ3JURU1SSW9NbHZNdDk3NkRCTDc0emJDN0VqT0hEMnpxQ20zT1dDSXREY3NBb0E2Sm5vc2lONmpTWFFEUlJhYXViUVNweXhHYWZNamlIZDlvbk5pb3dGREo5LUxsTkdOckhqNy0yT0lWTVpMMkFIMnVsYWNuNjVJa2pWU2FJdzlfNHh5X1FUOVM5c1B2R0RlZkVja1VMcnJuUi1JRHZTcVFXSXFKYm03TTQxbVhMa3hXLVR1VDM1YlcwQ3RlNUJLRFJKSExPU3lFZHZkdllfV190RnktY290SGF1VmlHZUt4U0tfa1RFeEFDVWxWT3pDcWZIMmlNXzVqdXU1RDZacVhRZlZfekpIYTVURkN0UjRyS1VkVmU2Q0tabjFFZjFDV3R4X2gxeDFLRnRMc2lIT25ER0tJUHptb1ZjcDQ1T0NJY0hjMEJPN19CTHVsUklacFpWcmNlXzFNMzdOb0pGdDkxZktxOXZ5dC00NGdfYVpRMS1ZWmZWYUlraHpxLWdjNWJUcThmN2M4U3JCdU1aaThUWU9WaXlnc0h0U3hWRHNaTFhwcWU1Yl9JWFZ1cEItQm1tRzZ6Zk0xZmFDRnNaYVc4TWNoOVBPTF9PQndNVTdCNG5TdXZ5ZTFHb19udkFvSHZmbDJWV1VnTXI3MERidE9NNjhteEExVlBSS0M1dDJJUVgyN1lRWmhyRFNaTG00OGh0cktVR0NVSjFaMmFSOVdhc0FrclRNODJ1YzdwanFvQzd6R1BhbnFGSHFLdmlzVVk5Rkp0MFZXYXd4OGxXZ2xYWlFISHNEVzZyVmpSNjFJYjJGV2ZCRURfcFUwc2x6YUNZQWl5eEtkQVdzejJfQ3hvR2l6VDhnNVd3YjIybzFad3VPZ05Kcy12SzhYWXVYdkx3UzdILTBrVlhLQkhDSG9SMkh6dnlnR21Qa2tEekpyZnJVN3hzczlIdUo1SC1SSnJacXhmLU5pbUxPWm5nemJiYWpiOUJzcGFScFRwUWwwbmF2TkpWbXNMSTJYelJwVldsWlctaTVWdUhDZkZEMjdORW9LalB6MFRiY0dQZ0NtRUdOdWo3dTRkS0t2NFdsWkxHby1WT1RsLWpkVV9aY0VGNy1vVlBZTXZqU05oVFp3WWw5TEowN2xxYkt6aGE1NE5iZUt2ZTk1c3RVVThibWFNcXd1M1dxUkltNmFiSUtfeW15el9COVRqalZpSzluU2hhWDRNektDTmpiaFk1MXB6b1lrc240akhDWTBxVDJHOVkzWnoyZlZuQ01LdU1ZV0p0Z0E3bXlZN1BQSEtycU1OWnJ0cmNvaTd2YkxkUk03MGY3aFZIemVFenhYZFIxMXBjN1F0VnVpUFlSRWx2UE5GUFBFRkJuZDZPNmpnbGxHaTRWSHoxV2tQOWJ3VUVPellQcXdoQkpvTVNpUnRrakFJd196c0lUY2R2RTFtUWxSMGx5RFJKTU9BQjRKVTdpRWcxU29QSGN2TmZibFphRDY3NUJKcFZwUkZKUk4xbUYwV3lpRUlvOHAxU2Jqa0hWUWxVcXRLZTg0clEyUGtUV0NWRnhsOVJMMzRjcHcyZjFaanVtbDFYYUZnS2ZWdTZLSnFkZnpzUHBHYW1UdGZEbTdkaFdZSUZrUjdhVzNvWUllMTVIZ0tnSDFkZmRDbjBUZVgybVM3UTFHTzJHNVlsUm1FOHJXLWp0Y21xVEM2d3hidUxHdXZiQm1GeTlzMUtyWV92Q1dXcGk4Q1hnMm1KekkxYjlKSFB4MXVvUE1MLVRfUXg2dGhnR0JEeUZpcmVPUkg4ZUhaOE9PMnR2TWk4Rkw3YnJMS3E5a3Uzdm1valplWFpZbExvRGJYTk9Jd0s0UFozaWNZVVRjWUkxWms0OVRpV21NNmR6dmVvamQ4dnpVNGZLRGVmUFZ1WXM3OG1ISG5EYkZ6eklGeHhRa2N1OWNsb2UyS3NZNHJvY01qbllad2d3eW9WSkIzUGJGNnJvZVl3VlFXNzJ4TFpMdktHa0VGQ1dKMVR2YUVRN2dHa3FJNHIzZEE0LWttUm5UQWxzT3dTZFpYZ3NlZ296RzJQUTZqZTV4SGNTUG9lNkRoUk4xbWhLNWZZR19KZGpmSl83LXVkLVo2NlMxZVQtcS1waUc2OGVfaVhMaWJHRno0WmFjZDBWVjNKN1VhMnF4ODRXX1BQQjRTZE5lQkNkYjlDb3ZXRm0xalhUcW9RRWFMQ0c1WTgyMEFTN3VvUGxJejE0R2xocWQxZHFKbmt5REl5UWllZ3JQTG9PaFdjaDMteDlmbGkwTWpiUHRzM3QtOEVDb3piVWlpeVBZcF9hZzFSZUhFbHNxUG1yQUZCMXJnVUI5SmxJMDUtTTRtaEJ5alMxX0NiejVLRHJFSkRfcFBXc0l4eUlSUnNKZWVaNE9NX2NnYlRxN2dCbEdzNGZwR0U2SUdZZzMtVkZ3Y1NXaUhwdmxWOGR4djU0aWhrTUZRVDVBbjRNVXZUM2M1YzdWODQxZzlrbUhpdjJqRElPc0ZYRDlncDNtZGpFUjRsQUNRdUdiVTlmd3Vmc25xaF9PcUdNT2x2TzNqN3VSek5XRktvdGJHZzI1Zm93MmdTbllfNTNCdHRGRFhFdGVFZDdLcGJZYm5ldS0ySF9yUVJobjJpcUNjODRrSUw1amlRVEVPdG9rT0lCQmEyYWUyY3MtRDhIVmpnV05KTHF6bDVsOVdwcVVUV2RDYVJMa3U5RGZ1YWkxenBjOEJKQkM4M00zazZOQTZMbFZpeDN0OWNqNUd2VjdHbC1QYXdidjA0ZFBhMXQwVDBjNFNxbzR5OTJ6YktIN3ZpTzA2ZjJlQWhwYkFiQ1UweEZyX19tWEtnSzJYclNlM2xZcU0yUHdBbVBBU1ZkWHNCc0p2djdfTXpHaWttWmxBSzJLYTV2UjRFeEY0Y3p3NHZvSGMxR3pfbjJpZlotWmxLRmJLTTYzdXNtTHlndHFZN0VGaDFyd0pTWnJIY0d4Mnk3V2N4SWVRY2otVG11RG9xcG9kdXNQenN2R0tQbzM5dHJSeFRuNmVOZF9lMzhNT3BNU1Q5VEtMQmhVdW80WUVaM29IU2phUnA4TEtKbjZjNUFDelREUVo4cVJVaEw2Z2R2N21FRlBpMWFTVjNTLVc1RU1YOFRTRU9oZnpDcmxfUTlGR2lYaW1KZ1dSdE1Na1JHeGNILWFsRzRYWkthdTlwcmhZcUM3SEtiNVZOQkx4OUFhemtxQVExRG5xRkdkNEdYd3luWjdXNHVBRHFfUm9BM29VN3VnQlJzVmNIeC1MNjJITU9PQWFYYnpVZWMwaWM2d2ltVXVpdmJpa3dZSnUyeGgyc09qVHA1QlZRQXFGelV1NDRYMUVpaUJxUldIWW5pNGNFazhpajk1Ynh0bTVDUjBweThzRlREUDBGcXEtWVoycUt6MndiSF94SmVpOXg3bkRxUHlhRDBEaWk2MWR2UVhramtrNGhFSGtuUWpoeUR2NGZLN1hGejBGWUxXYkwwQ05ORmdHeWJhQjJWT2FGYkJQVmdtSjRFNkJxTHdTWE1UR1dVd3g4cjZWU1puQ1l6NjRfV29HZ1BteFFDckdRWXBaWVRXNkFYb3MyWTRtQ2dNeWdDV2hKTng2a2ptbGRkdDZTeFNWdXVlS3RmWkMwNmktYzdpa0ZvM0ZYRzF0YmpwdFN3OFpMbWdWb0k4M19scTNxY29QNTNkVklZVy1GQnUySXJwYU1DZDZYNTJWUEZ1SGhKYlEzWDF0VG4zLXNxTkFvdXdWckZjMmNTbHJvSXRFOHBYdlVaRS1NQTR3QloxejRJYlpjYk4yLV80ZVM5Q0Q0c2xVSlJyQU5MdzlEd3BaSlo3T3NvZUJTWUZKeWw4SFprMWwzTlNDdFpNQUIxX05QODFpWjV2amdrUUszWXpWTDB6SmV1cUJUc2VSb0xlY3BPWEY1V2dEaFdrUFRlY25mdHFMdXZpZGc2d01HRkt0blhnYTVrbWZQbUs0d2xxVUhQR1BSbXZDV1ZZelRUN2pMT01XWFUzVmZsUlpabXpJdzhla3pLODQ5Zm5ZQkR3YnYtWjJvcVhFNGFQUUswUUNYeUczTU9QM0JpcFFXc2VtQ1JLRWdnRlBTNEQ0TlRjS1FKVHQtLWUtVXpMOTluM2NZOWpXUVpPZU9iSTlxTl83MVRPVnA1UE1mYjJ0MEhCTU1KNkxwcVRuOXFQQVF3QkdZYTM5aWRqU2ZtTXNXd013a25naTJFZEZWSTM5Uk01OGdlMnJITVFjRlF4bGhyb3M0aS1kNnlSek04azVNcGRsYW91UDZ3VWlGZ1E1ekdtMEpVNTJrQ09VakxnaUJNakhLZDUxUWs3ejY2YXZicWlvelFRSnlneDlfM29WSzMyMXBFQXJHd0Q2cjBKLUJySWJBamFmYU1sb2xPbm1TY254NVM2dE9rQ1VEXzlIN1RQRjRoUTBBQl9sZmFpNHFoSFAtdi02c2xxQ0xqT0FmTk5mTmUtX2tnU1lfdVpGMUQ2T3FmZTVDOThPc2tfU1ZHalBsYTNrNk1CdFl5TEZpZjdoVktSQkVibk44Sjc1MFp6VHV6bjIzMTExY3ZyZlhpeG8ycUY3cWgzUHlDMEc1YnpiWFFMNmtXc21TS2R1ZGFXN1N4NG9WVHZVMnlHTVVzdWt2ajhmd183OGhJYW95d0RRS242T1p0WEszZFUzczFxVkk0QlAyRUduWXd3MU9INWdKNnd5endqUzBjTWVLbldiWVh1c3NpTVFmdEcyN3l4OThKcFpncGZFemFsaHIzOHE5bGxBc3RlWnhvS3g4ZmRhcnFjTU51WWJLblRPdjZTZkFfZFR1VmgzejZDMVV2cl96MF9nd1VtVWFhX1ZxMk9kTWVVV2IwSF9xSGc2X3FKNFZPWWhOODdFMm55WkcyTElja0VPc2k3TnNNZW9VeHg0LTc4ZXFxTGk5U3BscUgyWEFLbEtTaWQ0eGVlVDV3OVI5YVJDVGZ0cVNxSEpfa0YyTzl6elRDSV9XTkdGX3l1c2R0eER4bllMTHFtNElqUWVzTmRSV2duNURDZ0Q4Q3NqRWZic0lpNVgxWUFUZ29KQS05Z2VuVFV3LU14aEc2WHl0ZjlCM0piSHJoMFZQa2Y1cE5RZjIwT0xPSFMwSVNLOU9QMGx4ckZSQUFXa3A3RF9aNGRIOENySUUtRnFjWHAwc3E3QndSOGZFRUMzMWhicjl4NEp0T1FiRnN4NjNSaGEzdTltOE1NSzNUeUU3eWE4aDJVdTYyT3p1Q1JrSl9mUnJEODc5cEl2T3RRYW5rYzRJUE9Ia2tiNHV5SWxiTEo5QUF4eGdXZTBfRWdhYnVPMWdDTVJDUG56RWFHel9pajNmVXFFVmpXVzF3WFZXUjlVOGRiS3N2UFd3TkV3dmNJeXF0X0ZlMzFaM0ZsVEF2eDY1UlpGQV9XYmg4bVF1NGg1MXVzazNBWTRGdUppdWpFZVBnNXNLcFZyaWRXbVpIS0hSWndjRF8tNG1CNVV3b0hRcXhWVEZaRjBlcXJ0T0FXMGdXb0l3OEdULUpWelVrR3JWQ0JiemQ2MHJHNE51ZDJzZjUxMnN3MXFOZGhGZXFoT0gxMWJCNzItLXhkOTl3aHl3MVE2a3o0Ym9OaHdpRTA0cmtBdGM4RHpVczFmcldoLmd4amVtYTRfSkxNQk9mTV9LNWR4SDd3aldzZ2hzSFJYNTcxNnZGWmFnZFEiLCJ0YWciOiJoc21fYmFja3VwIn0seyJjb21wYWN0X2p3ZSI6ImV5SmhiR2NpT2lKa2FYSWlMQ0psYm1NaU9pSkJNalUyUTBKRExVaFROVEV5SWl3aWEybGtJam9pWW1GelpWOWxibU5zWVhabFgySmhZMnQxY0NKOS4uUjNJN2ZhODFxMkxiSHRCSlNld2VCZy50Q3BZMlZBWTlpZHE0YWVZaEh4c29HVlcyT3lKdTdOVHRvbEJZYUFJSDBsNkFXR09IUDZrVGQwYVp4bFV6dDYzbjV6WUwxa3hSeFdMVEJuVUFYTG1tT0IwZjZlS0poYzdmSmRVZTU3cDhNTDRjSktIbDJSS1FwdGpfRVQ5VHVOc0RZZ1ltVXg2RDN1MllWak5GcWMxcFhVbUQ3dW54dE05eU4xVFNGdjNWY21BNHFmNXZ1T3Z5Q3NsYWd0T1pzbkthR1V6ZGpZak9RS0pHRXoyeTdZSVlYT0tHLWljZ1h0Z201Zl9RcDZIWUJlSWFobi0tSDhMS25uT05rQVRKdFJRQVBFUllrTEtuZHNaN1JLNmFacnFaR25SRm9FRDdNWkloRG4zWENKQ2xZZ3Fsemw3a2FHQlU4ZUpsZGpKMjVnTnIzdTIxamZNeDBDN2o2ZUZaOTd5NFJhQ0JGUUptUGlRVWFmQkdYSDJPTGNBS2lNOXc2MWtzRjU4N0V1cDk1T0tYSjBrSEZ4OG9oVmlxbGJnNVV1QjhaY3l0eHZ0S3pmWG5RVEJqS2ZDYmJvYlBkU3FrNVBEVWtCWWJ5WGVSS1ZXMHREeVZFZk9haldzWE0xdVRsWXItRDgtQW8xV29jT0hBYkhGM3h1dVBhZnNEdklYcTd3Mk5fckJwOXZNOWpPQzBqdExEeldYeFlwcjIxWmNIdmhwaWJCM3F3ZEVNS1pfZDc1SkM5Y0VmMU85LUlNaVBUSVpja1podEVyazVQQVI3ZnJYQVBBOHJrVjJtTVlJQUxOWV9EQjhDcHVIR2JHeGZ6cE1iZ2d2U1R1OUtacV82YWhIbGVIT0VqRklXNXpiWHp3NG05ZXpMRHpQTnJzWUwxa25uLXAxT0k4TWdzZjVmd1hZS1NtT1VFeEZDdUI2NDd2dldhdmg5eXM5YUxZWFNOb2pEQWxqZlRrRmU5RlVVdUZLSmV5S0V5a2RDS1JPZHZlSXhqSHk4emFBdGNBZGdVSXAwT1FWdkFON3VnZkI4SVJQLWU1a2k1VlptNHpXR1AyQkVWTV92WWxlMkE2VEp0SDNMUFQ3TVV6VGxvMVBVMWtLVExrZ3EyVWp4MERldmZrLTg4WjNTbFhVZWtRVG5QV0lZY2lhY1hDMVptenRVQVpwYTBraV9TcXVmRjNmdGQ4TFFJR3dFNHpkZGZtc0R6aWxlSFpLR3ZUZi10MUtkTm9VbkJtYnFOb0JObUR1blNuTHlBeldFWE16Z2VIZHBsLXZLWVpTUXA5ZnJpdkRlV2ZlOGxXVmJPUmxiUDRxNzlKQ2tVZHBoMXJnM2l5cXRjaHpMa0J4N1pqeGJkUEZ6MkU3Q1B2UGFFYnJUZ3o5WDRUN3VZa1JVTmtDRkpscF9NS0VfdEthNXNwREwtckx2bHgySlV3ZWpXUGJyRWdWRDdocXdhVklMNXdwZzhHSlI4eEhpeVdMbzNVcU1fU0FlZmV6MUNDcElFb1QwT1E1TV94VTlhNWp3bDAuby1JSU5IdzFXTlJBc2xSRnE4OGlZclllTmVibVRhOVRrRlB1Um9LRl9lWSIsInRhZyI6ImJhc2VfZW5jbGF2ZV9iYWNrdXAifSx7ImNvbXBhY3RfandlIjoiZXlKaGJHY2lPaUprYVhJaUxDSmxibU1pT2lKQk1qVTJRMEpETFVoVE5URXlJaXdpYTJsa0lqb2lhMjF6Y0Y5bGJtTnNZWFpsWDJKaFkydDFjQ0o5Li5XYW82Q1FQYXdIN1lGRXdHN2Uza05nLjNVSWh4SGFtV0FLWGlBUG9qVzNlcW56NThRbEpPQm9OcDJGcHVzT0k0UXR6RmIyZHM0M29TVjl6Q3lRaklrc0ZYRko0Q2Zra0QwQUhxQUtna01LZ1JWd09aT2xyRTJHZEpKRVk1bzk2QlU4eEhqZF9BVFo2dlFiMlVMRVIwRnFUZnZIOU5yZlY5SGRfX1lUS01UdVE2ME5XWWtUX1R3TUxRX2kyRDdHd0J0S3pLN0FnbEVjbVM3RXpuWHA0Zlk2RmJRTmN0ZDNjNHpWWUFieDJxbndHMWYzTDNaMndkZGdySVhEMmJlam5RQmJMX3VIRWJUM18yM2hZeDZFdHhEQ3E0bXIzNXB1MVNINDF1UGlnQTcyNG13clNXYUR3NkdJRHlwZVpzc1RYNmc2RXQ5ZHJ2aG85UHpZTjNtdkxpR29PdHBPTUN1cTFyd3J1QmZNMmlkNkdfU1FMT1dkR3NQOWdIUEsxV0FYZTQ3LW1qWXBkbGhiaGFNTjFVaVJBZWxORVR1al8zaDl5Wjl1aFcxbm9TOVdJYU9WekxFVXBDZnJNTVlMLWdubkxuUXZWSkhWNjJGTUQ4V2VkUlUzelVSSzQ3VFZxTGtzY2RoYmxNZUJHUWhJV0R4aEFuSzNHcUFOR25ZM3Bnb1p6QzRTdHVfWmNNS2tsMVZ0bnZiZUZoTExHMnpmMFQ0QTM1Q29ZVHV3TnV0LUNVS0prOW5mZ0x5YXZWNVJGclg1cFJTV3lGS0dUNzY4Rk82MmhBY3pCZDhVeVdwdVJvNGhZZkZjOUI4dUNKZ21JSF9KWXhRVlgwMjh1akdyYm04cjVFa01GNHMyN0RZWmkwRTVCMkZGczNLOEsyQTJxM0l0R3ZKWXdkc2c1Q0g3eGVhelZGNmtjTW5vU3ZvM0c2MVp2WU1lOE1wQ0c0ekMxekdTeDdHSnpjRkxyUG9OcWVnTzhob1p5YzJOSzc1elBFWUN1TTkzcTB1Q01QYTlQbmxPV2tLZzVzX3RLTVZiQV9sMEd2eHdla3hVUlRKSzBXbjRxc0diLXRqb3lmdDd0MmxzcG9LMnprWEtPRGFSUlZfUXhicmJxYlFzSXpGLXIwNnB6c1JRSExGTlR4WUJBX3Yyc1BBSXFkSGowdEpLcUs3UG5XMkk3ZW5BNE5UM1NaOVp6WkdCY3Jua3R5Mm1fQVYyQTNWaHRlRk43X0I4VUVnYXhKenNLNVZkQnhGLUJDNFZlSkdvMXRLcXJ0WktQX0dqQk1NTGxiNlhZOEVoS3BQT1M0a2RIQnNsVFdPLWNwZzhnNDZxRnpmRDdqOE5IUTF4UkJqRmZ3ZnI5ZjB0YjhZckNHek9RNWMwQjdGQUxDSk5LSUZnc3JWallkT2Q5b1l1QTV0YlpmdlJBdDJHTllfLVRId0xyMHBZYWQzY21XTU5VUFBjd2R3cjRqNkI1Qks5amJRX2d0UldGcUF3SHVCaHRCbklpajF1UFRPNDZlRmttUXZWT1E2dll6M015M1djak5Lbnl2X1dmdGdHVFJIdnM5RXlfblFMZ2ViV2dUSGI3S3VsVjhKN2dFWTBOOERob3Vsb0dVTXFsaVh0bjZqYWV0VWVSQmFoT2hUbkkxWGVaNGZzdGdpbHc3dnhEeFI1dTVXcEdHQWtHMi1kc281b045QVVEcHh2dlh4Wld3S0g3NkNvcUZqbmJIQTBXVlh5R0hENEw2SVlrQThkWHhncFltOUU5OFM3YjRnaTEycTB6TWVMR2Y3dktJRG1ObWpvRVZoWEtGS1BOXzM0RjBMeE1NVWtfMW5BM3lxb2FXbUd6UlNWV3EtLXloa05QendNSDF4WDJrQ1p5b1hsZ25kSzh6dzVkSXBza2RsZkhuU1piMVpEdjZtTWhQbklLMWhhblJZb1NzS1ZtZG9wRUhtODdDVFVpWUVydHlPSDdmU2FpalR3M1dUUnY0N21VcUdvdTBXdUNIZlJlVXMxMFYtblJpYWNoSVBqLTV2U1NNS0NTcFdscWJ1Q1V2RDlsdnktRVNubEw0T19abEVRckRnNVRTSUxZNU44WGw5cVM0eDREd05DR1ZiSnZJMUJfeE5CTkJmRFVmcVF2UXk3UlU3d1ZhSHFLelIyM0h1eThzQU8xV0JXMGpCdW1RSjI3NUpHZldTVngtRjFhXzhIWkcwR1ZLczAySXFGdDRTOWRyMENPNXRHMmsxTnNzTXVrWXl0YnRzcXJJdGxzblRRVjdiTUhFZ1pGSWJ6TGpBd3lhUWM4NWQwSXhsQmJibUJZZUhkWnRubGRkdGs5QnZ5NHNqckRnSVZlQWVwdVZxRjNONklrcXVJM1UtZ2p3S0FjQTNKMVJkZENEeXJMVTJhakZGOVdhU0FuYWlOcXJ1R3o3WVY5SDFiaWlkWFJiSFBoRXNFNDNLMkpoX2ljOVBoTFUzdlBXbGNRODV1R3RrWkxRTTNlbUF1RzJLR1NGQTcxd1pyb1hocVRIQUxKNWpLTElhQ0Rld2hfTHBOTHNjM3RVS0xOMDRaVjJHSDhTdFl1N3ZlOUE2QXlTcmhUZjFKRGV5aWdael9kU1ktQXNpaGszRDFjSTN4Rmh5LUdsZTNWQ3ZPRjFSTFFfZHh2NjV2bldTWkdBeHRNdXFHV2VNTnVZY09saXplRGZnNFVuM2RPN1VpdDhpb1R4dU1WMndyRVNPVXpRdThpb0d6TzNpV3RXWWxfMll0LTF1eGZVRjVMSF9EOW9pazFpQTJ3RE9ydnFJemhBczJGakxMQmhqS3BIcWViODJTZ2J3elJRbzJFQmZuenJiMzBWNmtPTjUzOEJkanRCS0hvYUdJSnhLUnNnRjZzUkkxQy1uSVR4NWFZeVhJMExDU0JBRWU5eUpUWkxVV2tqT3AtX3pSSnZfR3dkTnhTWnZMSEdkcFlWT3ByMTF6OFU0azhYTE1xSnRhWXAtZk1CcVh4eWJMZDNxaE1kX1B2V0dNdlJHYm9pd3F3cnYtWllwbHU5Y1I1a1RvZmlHY1I1SFpaWXhTcjN1ZVVubXpjY0kyRUJNQVFqc3UyLWthU2NLMnNWang2emNUaHU0UFBxSXpELVpzdDlRbGpqVGEtZW5kU1ktby1NUjFvbDdkNjR4eTViVzM3Q0NOcHJYX0Zud3djaEhCMXVHUzNLbEx3UUxkV0NlX3dPYjY3NDNNSHFZamExNm4zdW9UZFF0TVFIUkt6N09kaWl2TDF0NGJQdFVrZVFfZkpsRGpDbjJTRGpRelBUWWY4SlY0eFpkTFZlcEE3V0NaNHUyWXNyUFBKUk1SdU51M1VNWUVxYjVhX2lzdXJJYzJNRDUzYVJpZHlxODBSN1lkaVRIMV9oZDRfR3pEWTd1UDBqSm51RHV0SUNNUkJLNTlqejIxWWpydy1ycGdnNFFrRlQ2Sm1CbnFSS20tWC1YTlNDMFdLeFJGcjRmQlFLVXA3bEFfRDlIVWdzdjlPUE9RREF5V2ZVMzdja2ZfWEFNNERiYVJZTkZrdEk5enUzazhWUk1NRE9PdVJPdTM0WHBhU2VUaVg0Z1ZtdHp1bDkzUnd2VUplMDBBT0FyQU53ZmpKRUZHSU5fN1ZxMWVHTmhsWlMwSkZBaXY0OGJzU3cwTTB0eWpmVGMtZlJrMWh1UUx4cC1HOURyMHg0V2ZaWC16dVgzaUx5VnRsdkIzNHo3eXcxSTU4aklTeFdMZlczRXR5T0xod0RKb2pYTHJpeU5fWnJRQ21BS0tfZ19NU2hvY0FLMlo3S0wzSy1ETGw2NnFLR3RwV0FkS0JnNWxsWS1YUXJjWnF2MGlkbWlaSndqZ2kyZFg3VmVmVUw2cld4TkQyM05Vb1U3QUVVempzdThKMHF2ZmQtU3h3SHpseFpLYUo4NTV0aTdTS2RUNThUY19MTFN4UDFXUXAyaENOdkJ2MDJQNlJ6VUR0LUNSSVZOWWpUYzFaVXNSTzByRExTMERmNmxkekZWeHFaUnh6eTlpQ2ZhczRFVndMNW84WHJVbmh0elFLamNUY090bjVyWjh5OHZidUhGWkdyZlMzRG5vemNuc2dRekVwWGw5X0cwRlYwRFY3bGN6TWlEajk1eGh3cnJtbmttdlY4VktZOFFTSkQzbklYOTlCZ05LWldyNmdWWm92RHYxUmpBd2JiSlJOcnJDYS16R3JoRW9WX0pPUGRITC1OZlNsNjA0TnhvR1NIR3RtekNCUktQYjdHNUJfWFVsUGE0NEZReXgtSk03RmlxbE45Q3lJckpkZVRXcWtjalFEWk9Mb0M0UFB0Y3ZDZldCOFZ3N3VCN1Rfbmx5emlFZk9zVkd5S1VUMGE1Tm9BdkZpNVJGSE9Xalg2bkJDWUZOaHhUWVVkU0R2RFRhOWlYN1Zyd3NNaVRvMGxCbzJQMm9OQng5Q0M0ajNVaTVOV180eDJNdWlKSEtqc3dXa2d1cDhxd3pyeTlxYU1fSDFFdXZVZWl0X09kRTN6MFV4N3RkT0QyM0lqZFVuTnZ5eGROMTVYcGU0Q2lReGJMU25kME9KQnpoWHZ2V2ZyQlVnZmttMkYxVjc1V1J4Y0h4NmFrX1Axay1oa3ZGb3dGZnEtZUR1cEU4aHM1NFdGZFFBSmpYczV3MzdkWXZNUXh2WXdKa0VwTDNiN3ZkRHdJWWNqRlg5SWctMmJJVTZJNnNKX1pwYlNONlpjbG4yaE5tblg0WmVZNHVQRTAxVVJlNm03R205QWZwRTJhS2lPMS1pVm56SkdBOElKUHh1NXp0WkxtWUNPaG85Nk50V1VzR1E4MEpTbmgwWXVELThZclhmWnBLSjJmRGFPODZ4NVB0NWN5UVJYc3h0ZTBPUjhGMDd5Tm1nclNIZ2NGMEJGTG5fd2xXbGJUd2tiRHk1ZWRhcWVFMFdZdEY1Mnl1Zjd1MnZvZXhZckEuRFVIdHJDMk1iVVhUZ05XTTZZdlppMkdIVkpMenJsY2dVVXF2RXBrNkpCYyIsInRhZyI6Imttc3BfZW5jbGF2ZV9iYWNrdXAifV0sImtkZiI6InNwMTA4X2tkZiJ9LCJTaGFyZWRLZXlzIjp7ImVuY19zaGFyZXMiOlt7ImVuY19rZXkiOiJleUpoYkdjaU9pSlNVMEV0VDBGRlVDMHlOVFlpTENKbGJtTWlPaUpCTWpVMlEwSkRMVWhUTlRFeUlpd2lhMmxrSWpvaWJtOTBJSFZ6WldRaWZRLk0tQXhHUVlKNlVDQ0xtZVhwOWdTUjJFVTFsbktMRXEyZjFWd01uT0pXaWFMRGJIZ01sX20tRlZ1X1hsNEdNczM2T056YTFJZ3FEM19aQ2h4dmJUSzRtb2JnczlyQzBWR0tYeDdHN3FkbTdNbDhFVGZCampMTVl3ZElReUdyeVREWVdYZW5UdEFacVpJNnc1NmZhX1REMmhzejNGQ2NkLVBmdExYZm04aDFMaFlHZVlfUVlqMzBPeVhlV29FZ1ZndzYtQ2d1RGlhNUdxWjhISl85S0Z4ZVZPQl9zQkt1QjdWWmdpRjN5LVVkQ1FNV0JSSkhITU5mTWs0QTV1bU81aWFRbzFVN3pDekRDVGpodjBVX1U5U2ZOdHFFUFdkbFZxanYwdXpaNXJOSUdxQjI0cE5NT0V5dU8ySDZWTi10R0xkX1pLNlNHUmNPc09BVlllazN1WjZyejhiekFZRVVYLXlXNFBUUWV2Ujg2WlJzc3BIdXRjYldaNi0ySG5YUV9UUTBJNFMtcTJIVUVUNEE1QWk2cy1NQkFLeDQ5eFV4c1VDUmxQTHFnUGUwRERlaDJmOVVpQnRGQy1pazA4ZXBYa2xHVnJqVWFXLTU2RUU1b1R3WWN1bVpNMy1nUHdPV3JUN1luRThWd3BveEt1Z3Bua01YNENJZWpOWTlCRzVlcGxfc0VfLTRpMWRpaWprdDR6UUtDNHVTOWhDMXRSdVdfYW5wZHBpd3VYUFVOaWRNX2VpWDVRVWVNT256cVFjLWtxcmdRR1dUYVp6S2lyZGNQOHpsTzdYQnZWaW1Rc2V3dVVJZnVfRVpMQ010WVdLZEVLTk5Kb19LTTB5bm9qZ04zcmxia1N5ZWRTcE4wVXVnTjdPd3o2YmZXM2xSNHdKajhOclo0bzM5cjBLVDhZLnZjYWFxQ2RMM0U2U2wyRkpVeFZNdVEubXFTa3RpZ3pYbkZpTkhoUTBXQ1RheEtBODFYWlpFU1A4QnNuMlhTSFlzRnpOOXZOdHFRN052d2I3RFItSnJzaVRRRWxZb0NSanFyemZCQm5EbC1Vd2g5QS1LanBzUFJKcXRHd2dSWW9vRlUueW1ObTVRWlJxeWdadjdoQ1dmQUJpNF9KRHI2dmdQNVFNQmpoMEd2WDlMOCIsIng1dF8yNTYiOiI3ODd2MUR0V3E0OU03bzB6dlRRbmp0V3gzdmNTc2xZZzBxYnoxdlJUa080In0seyJlbmNfa2V5IjoiZXlKaGJHY2lPaUpTVTBFdFQwRkZVQzB5TlRZaUxDSmxibU1pT2lKQk1qVTJRMEpETFVoVE5URXlJaXdpYTJsa0lqb2libTkwSUhWelpXUWlmUS5ndUFieGdOUmNDcXJNOUF3TnJEOWR2VnFBcUYwSUVuUjBTbWZGR1Q3T2hpUDhZdVVKbFd2OUt1MmVva05GLVZrbUZuZkdfMWlIVVZoYUxNNEN3X0RBRjQ1YnVtMlBCc29qcEYxY1FNTDJPR3NyZ0xnZG1sMWNtbEpKaXh3UGk2Y29TVTgxMGFrdTdpalVVU0xDSmlSaHJvQnpmVm1PS0lqQ0duaGVEcl9pdVdwN1NaUkRsejYzaFMyVGh1bXZ0LS1TVzU2TGxSeHpLelJaeFliOUctWTBvYXF4UkhsMThLSWp6MGZNeEswS2ROMk5LQTdWaDZEUnlRR3BvRUFZTjRtYkxJbDgwb3A5VlFCUE1uVE1KRnRHY1pQV0JvNlVDQk9HRTN6eWUyRGEyakZnTGtnOV9xRV81MXY4RGllZUJYY2FGTFlzV3lxbTZRLXJnczFxNlozVktEZkNONFNDNllvSFBsd0xCMkIwOTJDdzNkM0kwVm52eUtTdndmMEdtNW9zUG9tbm1SN0NXa20ySGVUMEFJbFJoUG41Y1V1T3ZjV1BhNFFtbEdyRG5sZ2RTOVRqSmdjVFhQdEVLU2ljWmtYdFhtdUtNUHVNbmNSVFNOVHI0WGZ3aUJtNEFtMjJKd1FtN0xPS1M5X2cxNi1DMDFTcFh5UDQtNkZSV3NZMWczMFVjZkxPS1pjRWVtUTVSVGRDWkJRU3dQMTZEZ05PLXluM2JTUVl2ZGFUYm5qV0pVSjEyTWppMXMwckxMdDFkOE5GbS1XRVVXdUFZd1B5YlJLa2JBRXdFajR0MjhyRmZHaFZBdmc0R3otSHh3OHFLLUhuSkNwWVFtTXFqT0hpaUN1OWNVUUYyeXBmTGxEVU9SUlpYd1Bobnc5NUNWV3JPcmhWWENIVWk5bUwtdy55dFVSMjVSVjg5WFNjR1JtSW83MWxBLl9TWGs1bzF5Wldpdk5NbGVIYl85Z21NeWZuNjZwTFdyLUxhbVZ0VmhjNHFZZlg1RFFiSjFoalVXYmVtcHZRc2hHVUxqX08xMkpKbU9tblZLRGYwR05FbnJGOUlFRlRpbzJPZy1TeHNKdTQ0LmYtRnlTYVg0Y3pnSGM5X3haalAyeEdibDl4bnRvMzBNMDU3VnRCaHNrLUkiLCJ4NXRfMjU2IjoibmhHaVdaM3NEdWdBS1pObnBVNGY5MHdYbFpRTTAzR1Y2UGZzYk5MczhObyJ9LHsiZW5jX2tleSI6ImV5SmhiR2NpT2lKU1UwRXRUMEZGVUMweU5UWWlMQ0psYm1NaU9pSkJNalUyUTBKRExVaFROVEV5SWl3aWEybGtJam9pYm05MElIVnpaV1FpZlEuZXRadTJjek9zVTBBZWRRSWdnamxsNFZIWk40SFlXc1FpZG9EdUx0VVlSMlUxWnBLU3RYSjUtUjduUm1Mdk1USVZVQ0pWcU0yTkZxNjB6cjZMZUc1VXNPY0ZGal9MQzgyMlRyMEJJa1BaZnRWZ1gzUnJHTmJzcmNKWGtxcW9fa05WNDM3Tl81VlgwVE5ldFZURk13RDM4Q3FXX0otQkUwd1JKQ21FTVk4QlpvckROc0dOTnVhUlg1bDdod0NRX1RtN1NKRVhlNGR1alJXVEVEWXM5dXdMelgxcFplcVRFa0NfZTl0TVd1Q2ZDZlo4Q1JyQ25oQ3oyemJ2bUQxSldaVVlRc253a3I1LWxtZnQwUm9UczF2cGVQbGtIdjl3UkplYkp3U29KUWJjQ3JPMlJRRE9od1BCNkdXbk1WTTY1WnU5MVh5V3RQNFdjUHFvak5wdDZHSEZPdmEzX3RTaG1LV3RYNXhhM0dzUUVJaTNCSTdGOVdMNEJ1NkhqclFkMDVjcHZVcm80X2hUeURiWUtET0g5NFlPVi1qUXg1Sl9RUXJWVnJDbFJZd0Y0ZjMzcFItTzJJbnh1N1UzZGJNLVFQNDlLYUo3Y2g4MkpmOTRxY2N0dGJoVGpxNG5TdzVNV2VjbkNQZjRIa1JjdWw5RGtJZEVwY0RIMmRaVXFkV0JHYjFuRWNldlc0NDBUbFJuNkcwVHhqSzBaX2dpekx4dXVsZklPUTEySEpNdlBjWXd3OV8tMWdGZWdUdDgzb3N5OEJmVjNwNDA3eFpXRVROUFR5ZWNMNTV2enRKUjJjUjZLWmRlTkdsNlpENTgwNmVPYzlaUGIwS1Fnb2I3MkRVM05mODJidDN1cFB0LXEwaFNuZzNIWHpUZUhWYlFRV01NWmxBcEN2aHdpWml0SGcuY2c0d2tyQ0p1YzVBbmJaY2lQWVhDUS5YOW1Hc0QxdWJSU0lFUzBiclJiOWhQU0xaY2tTaGNkbmtBRzE3MTFpcnpmcmlEMWZwS1pna1RwQzZfQ2daTnBiU2JHT3psQTZkZ2pReXpxM0dFN1JGa0MxRzh4cW9DZE8xTVp1MUVsQzdXMC40dUZFdEFSUktzVHdxWUtjRDRTNm1HQ2JNZmhxeU9xd1VHdFpPMWtYNExjIiwieDV0XzI1NiI6IndkOUVyWmhYUVppeHB3TTZPLUVCOWNLQWlBaVM3YVdnUkdkQWtNMU0yNzAifV0sImtleV9hbGdvcml0aG0iOiJzaGFtaXJfc2hhcmUiLCJyZXF1aXJlZCI6Mn0sInZlcnNpb24iOjJ9" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/securitydomainoperationstatus-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/securitydomainoperationstatus-example.json new file mode 100644 index 000000000000..aa4334fbf91c --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/securitydomainoperationstatus-example.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.2" + }, + "responses": { + "200": { + "body": { + "status": "InProgress", + "status_details": "" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/securitydomaintransferkey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/securitydomaintransferkey-example.json new file mode 100644 index 000000000000..acf3b8edb70c --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/securitydomaintransferkey-example.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.2" + }, + "responses": { + "200": { + "body": { + "key_format": "jwk", + "transfer_key": { + "kid": "https://myvault.vault.azure.net/transfer_key", + "kty": "RSA", + "key_ops": [ + "encrypt" + ], + "n": "2HJAE5fU3Cw2Rt9hEuq-F6XjINKGa-zskfISVqopqUy60GOs2eyhxbWbJBeUXNor_gf-tXtNeuqeBgitLeVa640UDvnEjYTKWjCniTxZRaU7ewY8BfTSk-7KxoDdLsPSpX_MX4rwlAx-_1UGk5t4sQgTbm9T6Fm2oqFd37dsz5-Gj27UP2GTAShfJPFD7MqU_zIgOI0pfqsbNL5xTQVM29K6rX4jSPtylZV3uWJtkoQIQnrIHhk1d0SC0KwlBV3V7R_LVYjiXLyIXsFzSNYgQ68ZjAwt8iL7I8Osa-ehQLM13DVvLASaf7Jnu3sC3CWl3Gyirgded6cfMmswJzY87w", + "e": "AQAB", + "alg": "RSA-OAEP-256", + "x5c": [ + "MIIEnTCCBAgIBATANBgkAoWgAwIqhkiG9w0BAQsFADAQMQ4wDAYDVQQDDAVjZXJ0QTAeFw0yMDA0MjYwM/mivTQ26aDwb1Pd8h+SGcgJNy1VOnmI5+uvgfh9Qj6glJZHEyvh6dat6f4DDTwRVf6Vvc5noB/yiilaMj1GPW0Bwg5u5atZcjzTb6wOFYOGd2Y1WFBwQqqxriWo62Fp/TO5+kQigYkgVZXcPjbm2c0hdkisPt+APqEdMotmYTANxtC6McP+9KOO8+12K2fj2a9NEhRJOboGQeZ0M7DJoQDl4wg8f2nswxH/36Vfc5ad+nxRYwYObRYfgOh8vpYaw3cpj5+UHBaPQ8ZiQNDoWHJWvX5z1nTmCc2NmLHdi3ijkoc7AKHIv/ZX7qbNhv11a76gJRi/IoHkcf1UTpxCoD+eTbo8Isxt4c9fBTk1vS4wSGsJCewxcyMlTB9FHufPM8k5Uz/ZCOrc+RoaznKPGamgMJOOwbPE1WcBnxuG4rQcskdCa59NiZXyZsx5vsCAwEAAaMCMAAwDQYJKoZIhvcNAQELBQADggIBAAjHy9GCPejDYIVb/iv8Wo40n317LQN7H6ay+YB5L2byEQATvC1ixde6VqwU6k9VdoQOTfP3xJhfstKrO+n5mFJBL4KG8BZBbd6XQu/ggPLKEIVZFbeQkX6o03K54gY8GxYjHr6gF12I6heLWVKA/Qi480GqSlp2Nz+LE1jgPp9u52xpUPjsvRHXtxYZ7Q3O2jhPToNr3D/TZSu3tmQOeqj9M/igLDe9TxqN9C9jraUGR7Lr4zN1srtvIKhxGMS3Q9kC4Mq+ZNNIwC9+jzzd8fB2pGJP/iTFDzB0pDh9Jz0/CR4O4aGoYqkQEx629aZH2TzhOh2yf04TaniwkHXnUEsPTxrpY8ty/OUG3HzBMHCDhS08ZSimrrxhiWyH6g0OEglXVGrI2nH6nnQIn1MTNILcjUTMRt/WSOz6G07oZciAouKD2YS/W1qPap600kGhTya81BuYThGmFoXVMs7Mk3XBzZ81b6hJ6ncwCLb3g4YzqeQ8bOf42jYJctq4tPNaXTfoC7N0FX7lPVJpRdh6BFcHYcg0NPWJsdk6LtSJB6bp2qptRAgJ5S94s843FRd8PRFE10TKDfj3YFRBNkx7qDjwUhtN8/JC9+RHHw0Ngd0x2/BLqeCEMAQaJoC53h0aMLW6PSyovnsLvdJbN/rYc15qUXSz8TtjaHFpjsy/Fo5H" + ], + "x5t": "dJKBile6IJDrRGqa3k5d8_IKFdI", + "x5t#S256": "gIBQCTDDN" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/securitydomainuploadoperation-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/securitydomainuploadoperation-example.json new file mode 100644 index 000000000000..371b99be7974 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/securitydomainuploadoperation-example.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "security_domain": { + "value": "eyJFbmNEYXRhIjp7ImRhdGEiOlt7ImNvbXBhY3RfandlIjoiZXlKaGJHY2lPaUprYVhJaUxDSmxibU1pT2lKQk1qVTJRMEpETFVoVE5URXlJaXdpYTJsa0lqb2lhSE50WDJKaFkydDFjQ0o5Li53dGhUcG5Dakh6d0Fvbm14SlJrcmhnLmIxU21NcjJkX2J3VUZJS0tlRnZ0Y2lvS1BiUXo3OGJyd1duclVBZE4tM0txY01FUXNtSU5FN09WZ2JLbFZ0V2tkemJmaGdrUHd1dUhtaG9QUHpJd2tHQTQwYXVLZW9OaC1EN2RWanBJd2NVcDVMNDVVVlNRWXM5elRQQnRmSnItcy0xbk1DNEhwZnpXRHNhZUxUTzhfcGRtNGxISi1lN3dGeTE3NVJQMDRZR0xPZlVEaVBTaUZXTzVQd3djQjRsSUx1ZXI4cmgyaGYtSFN1M3lnYW02N3VGdjc1WTAtU0gxN1F3VHpwbkRtXzZUbzNaUWZIRHp3WUprQjlWYmRvaHVMcWl4QUY2MS14UjVvXzc3MUdtOHlkZHF1Ri1qV2ppUjAwNWZBSnFLb1UyM3lmYXhZdmROaFdNQVUwU3RfTG5HTnYxaXRQYVg3cXV2aWkzOFlhbjd3TU9VZGg4TW5VS19rN1hhSU96VTJfUFVWVll2R2RNcXFlaVRNLXBrekFxZC02LU5vZ3llc000NzdXdnBNa0F2STZLS2xvRkJKQzRfUlFYYUxITHZwMnAxTlM0NUZLNTEzb1JJeHROd3AtM3JUME5FU2RTbnZfb3ZCeDhFVGpZdF9Mcm1RNHplb2pqRFVLZC1EWmxQcFlGUVAwZWFfNmpSckpsZ3lvVC16czhWTEFFREdoX1lmZDRydHNENVhFZGVMZ0IyMEF2NWlLRk1jcHhtTVVSakRJQTZES1hNUXFIa1RLam1pQmU2aHROZ2FNNjE3S2FYclRuWjE5Ui0zWlIxbGs4UmhoQm5yZ0NBamlWd1lVcE8xUGl0ZDY2bl82VFlTVTJ5eFkxMkxoZ0V3Z1hxR2pzOGJIVEtGYnZVVmxKQTduV1RSN2hTUHpTZDJjanlBaUNDR1ZEUjQ4VjBTY1FBVXFLTGVFZUl5NzhueXJQSE9kXzk3dGtGSXBsdmhncnBkdXRISUNyakQ3T1BMWVJ6UGpFQlJxUFFzQm1RSzl2V1NDNDk5ZGFITzRJOUtRTG9mVTc1VmhOOGt0NlV4aGZFVF95eURfSGM0UGJLZkc5TG1hYUlxVGVtVWZCVnU5REx4RXJLbzhLVC1RX1dFRi1LOEZFbXhZdUFKWEgyMktrTWxfSGFva280NlRCV0FPcTduLW8zaHRpbVBlUmxuSkZxa0lqbTBIc3UzWEJETkdpMEFZZGtpakE0QzgtOFVwNk9ZSWVDZnZOeVEzYVllcmhJVGpHR1puMnJ5SEZCRnR3WVIwbkJCc0ZfMFo4SkR6NTlvTEtlMThheVlvaUp1UHNTdWp4VHFNeF8yNG44WndQTnB6LVhYLXBEVWpkSUZvVS1FSXV0UWxnT3dqUmVKZ3I3WF8yUks5cVBfT25ERkRNUnZzUU5oS1pIWklhREdVdEROd2JxMmNHQzBNRElpeDgzR2RIS29kbGJqNkJ6VXEtUXFXT1dSdUtiQ1NnTFdULVdSdnNzUXlONnhIYXRHb1VSMUVMcVpPejJUZmw0cm5Ka2QtSTlRTE15c01zbVFiZldlTXBJWXA3M29STGxVNm9iRnNkM2JNNnVGeGFGcDUzT0pDamNGUUNlLWM4X0xEMWk2dWhFeFNZenNSYjhLR2cyX0dpMFNCSkcwdjBSb205X3oyVklScER5MFdyZmhnLV9YRjZUdFNtZkhoYWpRVzVqTC1xMnNmQkNlcVI5M3FXYUt1TFJQS0RfSm4zWElJR1R4UklDMzRETTlfbXprRTE2SUZDa0dnN3FEMmZCZ2EwNHA2c1hrdlEtUkdYVFhKZGlOd3NpVW1RUFR3Ql9LSVA2OFRNQWdSTWpBMEFJMjZOSmZ0b2Z4eng2X0w2VTU1SDZELVZ1UjdDOWsyR2lWa2Y0VnU0Q2p4WTI5TWdwUERlaHdScjVVMXRBUFU3Wi1nVU9Eb0NTcGRINVRjY1NROGtKb3FEby04SWRKMjlYa0NEUTdDX3U2aTFVVF9feUhLbjFwSUxocnBxZm5lb081SE5sNEJTbjJ5cEdFZUpfYldCNl9GMU4tYXBoVDNjRmpQWjVnb0tfM3ZPVWw4N0gtSjMxNnhpUGRiZGhiM3ZkSTVkQ3daekhzOEZwbFpVaXJGNGlsRHM4bklrRGs0cXdIZGZvQ2VWTlgtWE1neUFOUTlKZTQxOHJEZkprZF82OWFiSzB6MXlKcmg4ZHhNajFHSnc2N2FzZHZ1XzV1elZPcjBldE95WDUzUVMtUkhLeEs4RWZUZ0U2SThwVjBTQ1hRYkg5S2lNd1dYcm45cjk0QzFhZ3dJLUZ1b0JlNFl4eHo4OFc2RUdvUzJMMmkwWTM0LWFjWVJxSTl5M3l2aVJ3T29Ub2NnUmF3NDFUU3ZROE5zUzBPQUlyY1JzMlJfMWhOeFlObFAyUm04VktPcldEcjQ1MHNJRC13elYzUmJxenJLcVJnbmxBOEFKcnVCa1FPbTQzVUFIVnBDY1pvVGtUMVYxYi1Weml3bUQzV0hHZFFnM216RVItdmlGR0RJLWJKX09NN1JWdlFwT21xQVFBWTFvQ3ljOWh0cUZKSUlhYTdibzEtQ1lqcDNTd0ItYnBsTjhuWDhHVWFUbkNFbVM1N1VTbDMxUGVpNkszeXJmUWVJWl84Q2RSdngtZzUya2E5NU1nRmZGcUFOdFNQUzhXbTJQSm55aDlxYTliTVhzSmI5RmVYUnFZSlV2OGxfc2VkVWJEWFRBS3BGWl9hWVI3VUpLa0xWejNiNEcxQWptcFJQQXdzd01TWDJtUkFzcGt4Z2ZrdV94QjRyaDBuX2t4NDQ3Q2pYa1VjSncxNlpBVHI1Nk92THZCNmZoRXNqejhVWGRyNTJHQ1R2MzluUjBsUGVLQzlZcC1GTGZHaXNNTVk3TEM4WHNFU3ZhWVU0NnZGZzJGVUhjYmgyM19xbENiWldPWm9vd1FrSnFJM2VCU2s1Rkc3ZXVPOERLS2tBU2N3dkFmc3cxM0VCTHJ2djhLem5mMndRbFN1VFVEMjdWaEt3Mk55SUtuUTJkeTN5d0NtT0EyRnNBdkRwUWpybXNITjVmVDVTLWlTRjRyZTBrMFU1VzVJUVg2RzNJMlBDWFJDOHJnZFA3SjFNOHEwVGtOZE0yRUVqdzBtbWpkaVM2RFUzbWMtUDVya0hEdTh0anpPYktESE5MbTJfa0NoQWFqTXNtcUlDMzFiOUxvTUg0c2xYbUNjUDhQTXF6M1c4TXB0V2NGSHFLT3pDeDJTWmlVRkdaN2h2a1c0dWFyczFDMG95ekFJYTA3eDF5aWZxSFUtbW1Mai1FTEp1Y0xkZ1VOSkJjeGFuVFNSc3VpRjhnNU5iUFBIdDVHdEtiUC1SdmlQd2V2cHdjbjdrVU9RUDNRUnpiUjlLdUpFZ0JTdGFndU1GMlNwVjRDNlJNZ2E1RlB6UDRVajdtNmdDMk9WSjB4RG95ZEdYSnJPa2NiRlhHQnRfXzFHSG1uWUw1cVhVbGJBT3F4RS03ZmJiem91OGhpSi1IeFBTY1lfUHJwOG9ZUUZ0Q29sSkhMZFFHaHBUT1hKd19lU0phRU5jaGczbDVFNkxCNVU5TFlkeTRmSnh0ekY4dDdHenR4Z1BlMnFLN0xBTkRVZXNxZUJEMzJTVEd6cVhzVG43UWNlcEEwcjBzTnlyaXFuSERTYk9vXzNTdDNKbkJzdlNselRiWWFuZEozY1pJN1c2RWsxQlZLeGhVNUQtRGNJb1R2cWNvN0t0WW1pS29FT1hjbG9jQkZLTFhPWENhMVhvUUZsUnRCdGNUQW9LTDNZSmZTS0ZwRUw4VVc3bnZlcTlfcXZ2UFRtMmpUUW96UHAtYjhNZFJDZjFVc3RId1JxeDcyVXNxcDBKbnhTVERaRi10Sm1zdlZHYkJHcVIzZmNmT1lGaExZN3c0UDYxVS01U2NUMWpxaGhnOVVQbDdJVFFBMTlJRHJkWHZrSEotSkZsVXRoVHY2YnNaT3FuMmNNaURjdUdTY3BLckgxMHRnZmZ2cWxSZWcxLVlJTGJMLXJ4eDk0ZER2R3RkXzV2eWNBZjFiY2Qwd3RaRzdLaWg4OVhZaS1xVjZVc0stYWZyT2V4VG9pX1Y5clNPMmZ4RG9GQ0JoV2dUc3RMc1pIQUN4VU82SzZzbFFwbVBpRTFKNldXdjIzYnZORF84Q3dwM004UURsay1TUWlsNEJUZnFjeVdzRHN0Y05tRnJGVkJBMWdGdFdGVWh4cTlHQVUyQ2o1bWtWM2REekgwM3FYLWI2cGdpSlE1SFFWRmw1SkV2bTFLQWd2ajJQRGFwNmhyd3NXZVBIanhjMXNwQ0dJcnA2Sk91LVZQMm84Mk5hWXY0S1UxUkFRai1mdXYtVFhfaG4zSG9Md2lDa2NRaEdpWWpWRjJvVEdDTEhkLV9rVEFRRjZDZ2hDRjlQVXFmdVNaSFlfRW94MG1NdlBZRDB6NURZMFhISUY4UzQ4cExOUE9seUJRZ3pSNU84c0VHZk5BOVM0cnJwVVdJQmpETnpyVGlZMjVqV3V0czNIaHhVUU53X0c1dFFqLS1hVTlCcUItZkg0TVVKNm9HM1lDSHpkcUVBd05MclVWQkF3M2s4NFhkZ0xjVnFhVzJBSUpxMTBLQ1NQdUxOY3ZURHM2WEhXS3kyTHd0UTRHdUN6REhCQWliT19vV0hQcjZyaERKVWcyZTV2aGV0cVBlejV1M0oxeFN0VDhyYUIyT3ZOYk9ob05BYmNwMDRQbGJ3UHJpZ0FFQ0dTMVQ4ODVaTjdqYjlEd1FOckxwWU9Db0lQRGNlaVhuYXg1al9UNmF4LUhadF9jQTAya1JZMFNBSEJITkZOQXE4eUxIdkh1MmJxQkpiUmZ4cEo5TkZmeFF6ZEoyYlpSNmJHOG54dVNUSmVqeXVRdlJaNzBOZUZqR05FaERFQ3JTNUoySTBBVFBaMDVPTE1OUU53NnZERGJBSmR5NV9WT2F6c3BhLWoxM3dwVVJuSDBzWlBJd1YwVWpSdHRjUTVHNzRNLXctZXppNUk2dkdZOTlyUHhZZkZRMlVITnJzTV9COVVxTlZXZk1qcjFRM2Z5cWxuZ2IwUmF6WHRoX2FjLVJiOFBtV3FBYnBvV3N6cXctZnFDQ0otb0drWkwtLXhOeGFjdjBfWDh4QjlYT21NajgyWGFKdkhNVmJpdWZwUUNsWnBPS0E2QmtjQlhqSVM0LTkwWDVneXlhTVd3bHozcEdud1UxSFZNRHBNeVBJN1VKYUZtdkRQcFU2WlhZZXZWRUZEMzg2NVBKeEZDZnBfdVhoWVBqMEFZLVRNRWpPZlIzUEktMjJ4bDl0REEzOUNuMlhzeDNrQ2c1Vkhlb01BbWZsM3YtaWZxUWxnZ0YyVS1uNEJXXzA0QlpOb1F5Y0ZQdnA0Q0Y1c21MVXUwSmVsN3BuMFF4OFQ4cjRLaEVRdWRoUk13RTJtWlc4TEZTeVdobXFzRDRXNVRDYi1QVTBQZXNHMDdFMXJLYkdFV2NaWi0xek5pam1SWUpxUHdZSWRnUmdhMV8wZktCNFcxZEVRNnE5elRESnl6YTNTS0M3TVhhbjR6d2F5aGM0aTc5Ty1NM3JPSUIzT0lJUFc2RjY1MTM1WXlUVVpETGJqZUJPOGZ2NlJCQU9MR0xqXzgyc2hPQUFrRXNJcThPSnVHTWNiMEZUVXVqYUNHQURaLW85RWNhWDdMMm4xanJBNVVEaFNaV2xhQ0JfZ2pFTzhDTTdJV2xYMnVRYTVJOVg4ZDd5VE9TZFZWX0ZDbk5zcjRUdWNvcWNZalpDd1VmaUpSLXJfYWxKbVluVE5RMFphOGt5ZVRWZWZYTDkyNnFyQ1FqSUcxV29BV2FtYkRNUHV6QkJNZG5sWVNyaXMyV2VyU3hFX3RjeTE3djdvaU9Xbm05TGFVam5ob0VXVTlTTjBBSEJ1Mmhsa2dHOGM0TzhHMmo2eEd0QUVURnJJRnk3MTNJMi03eGVCNjNFMjJqZ0FQSlFqbVV4RzZaaExFSFJBOXNHWUt5Snl6dTNmd3c0SGxFS1EzdFpXN0JTV01ueXFYOUJsVG5rZEJrSHVBTkpiLW1JcWl6UVR5ekVodTBLQU5GY2w3OFpaNzYyU0pfdERaQTRhZDhweGR6TVZoZnpvYkt2Qmo2dUlKcjFvQlpIbmp3cFJvM1Y5OXV2bElGSWZBS3NfVmlSRWl0QUdxT29GaTczYlpuWFN5RDlmZ1hYNU53Ri1mcGd5S0VlQk10anM5Ti1xYUNlRFVRYVJaWVNlc1JCOVItMUVNa2pqdHBjSWlOaGxIbGxnZ21tOWd2T2N5LXR4bXRZcTZYRTgwQ3NQN05vSWZIZ3JYSTVwcURnWGtESjB3SWJxRHV3aFF4NWNmQVpFV3FuUDVPSkJURm5BbEUzSWpqdEFnMXRVNi1taUt5c29HNG05VlZUejNGNnh2V0N0aXFZeFVFX01tdy03UXBwcjdQdEV3d3B1ZUNoczZGQ1MwSXY0YTlQUF9Iei16QUt0Zm11Tjg4emhyY3hjcVhJNFRqeHpLenQ0NDk1RW5MLWVqR1ZUR3Q2OG1fMjYwUklIa0wzamlQLVd4NlJaRkVFb1RhMFo3TTBIdnhkb3JORVVsYXFqaDFXRmRKVFV3dG40SmJpeVJFTGthZUNMTEYtdlF4dkVwVmg4M29udUtZakVFV19CUXdrbW9ITG00MlYtZTJ3eVR4Rmt4eWpBNnJFQmk4anh2V0RYeWtySVVYbjRKRXZyS0MyWmZuZklBNUJGR3B5aU5MbU0zSVkxNHhKQ3VRY1g2aFVwajVWMVpfbllBLW1mTFJ5V2Y4MkIzZEVOdzBUZFY5QTU5T2NmUlRlamx3WVdDSEhxcFpPTXJQXzZtUjJmSTlIVGhIVjM1UXhIMS03eWJ5SEN5YTF1dzhhNGdPMkpXWjFqY1dTWDZndm5UTThRazh4bjdGcnFnaWdhYTJ4Y2RiUlhlbHlocUZUX3gtSUlSQUFNbEJLZW94cnZXaTRQQTZDc3BxSzJBSjk0ZVFEeHRjZi11ajQxek8xajJnQTJiNGdicGh1dlBHZUVDUTVJUDJzNzhYczY0SlVPVmpIZUxJdVBQM0laaUZsWGt0cl9SZ3BwTzZZS3FGTXFMNEZlUExHbWVDQTZfczBfdEhtNzJscmFFSzlmWnpfalBwRWYtQ1YwMlZLN2hmM3BIdlBTcmJlZmtMdXJaSXJmOXJrLS1LbWFmdGQtQXhfdzU2clJXLVprdGZJd043ck52bXVPQlZRaVRyZ3o5TC1PeDhVbTFSejRMS3hzRWpKZU5XcE1JWW1ENlN3a01vNVE2bnpLS2tZeVBvbjIxTVVqTTliU0tTUm1MVUVMeEhKN1RYV0l1UmVZRkIxb2l3eVR6OHdZdmtMSUJlNUE0U2ZfVTZPNGh1ZmVXLXJ1c2NDSWtqNmhudXNWSjh1dmpibTRndlBPZC1fRHh5aDJmLVBiZVQyWUg2QXFsQlRZbGZhQV9STXJpRWpFc0ZWamRsYmxVZVVWamxQT3MyVEhIS1U0aUxRSm9yeUV1UFBucGE1dFVJRW15dHBtSjZ5c29adzd3UkFBbkxfTjNGVi1nemtkOFdXejZSbldrdUhWVG5PWE1GUWQ4UlRQNzI2S1otMzJHdGxHRmZKUE1pdUZoOHBKOUl1VkFnTHBoY0VNeGxYbWc3RUViUnVEZ0otbXVqRkdRZWlpTHVLSUpqRFd6dFlnOE1LbTA1M0gzT1AxQldxc1o1bHotZnRSeHZtQm5vOFFDVjYzTXltajhmUHBKMHgwYTc0OEhydVhLTGhSY213SVoyZjJqRExqNGw0a04xbDdmUlI1YmlIMzZHRm01OENLQURqOXlGQ2hBckdmNzNjSkkwX3VCU2l1UHFBMTJRdmNxeF9IVjkwXzdUN2tyR2diTVlkZ1Iwem4xcjN5LVJkek9VVnV1QXphWm9ISmFZVXBEY3E3dVk0ajVrUXJ2WmZtY1V2ZV9iclFDSkNKenJaTkVNY2xtRTdCMjlOVm5DZDVKMDVZZVozb2s5bVlyd0dlOXZQeGZVUmxtYTllT2hFR0ZDXzV5T0dxT0wwWHY4eF9uUWxaaTNNVHF1UWJUTE9pVlY4OG9OeFdXQ1dhUkxIdkpPUzNBMmNsd0JzVFNSdV9ZMHZCQUlacXBtZXY0WXhzOFpWcXZtWUdsRjJ2bk82cm5ybWNYWHRPclFFX000TTJrbXRlenJheUpUek8tMXRhSjRWdkk3ZmplZG1tamU2eTREZmFkbjRlTnAybmVubUl1cmJFeE5mekdINnl6TFMtR3pZV1VLbGFOTXpyYjNYSGViNVBSMTNmZEJZeE81ZmZoUHUxZE9tblFiNXRtYV9pTGpkRlFkQThFUVQ5bXhnOHpDUWFjZDBNeXM0NGoxRXZiaEhzcTViRDFka0pQaXhKMmw3LXlxLU54Sm1ieVdhOEZLeEM5aHRIaEF3VHV2OVJ6akFJM0N2Y09rTnVVcVRaWi1XTFMzbFBxSVhGNjZDZnlSa0VTUXk5UXFGdjYwTld5UXl6ZUhDLU9jVUJuSFhMLVBiYVBKNFpNYTIwRDlYNW80RzdoNjYwMXo2MkJiMEx2dUVJcFg0Z1gxZ3JURU1SSW9NbHZNdDk3NkRCTDc0emJDN0VqT0hEMnpxQ20zT1dDSXREY3NBb0E2Sm5vc2lONmpTWFFEUlJhYXViUVNweXhHYWZNamlIZDlvbk5pb3dGREo5LUxsTkdOckhqNy0yT0lWTVpMMkFIMnVsYWNuNjVJa2pWU2FJdzlfNHh5X1FUOVM5c1B2R0RlZkVja1VMcnJuUi1JRHZTcVFXSXFKYm03TTQxbVhMa3hXLVR1VDM1YlcwQ3RlNUJLRFJKSExPU3lFZHZkdllfV190RnktY290SGF1VmlHZUt4U0tfa1RFeEFDVWxWT3pDcWZIMmlNXzVqdXU1RDZacVhRZlZfekpIYTVURkN0UjRyS1VkVmU2Q0tabjFFZjFDV3R4X2gxeDFLRnRMc2lIT25ER0tJUHptb1ZjcDQ1T0NJY0hjMEJPN19CTHVsUklacFpWcmNlXzFNMzdOb0pGdDkxZktxOXZ5dC00NGdfYVpRMS1ZWmZWYUlraHpxLWdjNWJUcThmN2M4U3JCdU1aaThUWU9WaXlnc0h0U3hWRHNaTFhwcWU1Yl9JWFZ1cEItQm1tRzZ6Zk0xZmFDRnNaYVc4TWNoOVBPTF9PQndNVTdCNG5TdXZ5ZTFHb19udkFvSHZmbDJWV1VnTXI3MERidE9NNjhteEExVlBSS0M1dDJJUVgyN1lRWmhyRFNaTG00OGh0cktVR0NVSjFaMmFSOVdhc0FrclRNODJ1YzdwanFvQzd6R1BhbnFGSHFLdmlzVVk5Rkp0MFZXYXd4OGxXZ2xYWlFISHNEVzZyVmpSNjFJYjJGV2ZCRURfcFUwc2x6YUNZQWl5eEtkQVdzejJfQ3hvR2l6VDhnNVd3YjIybzFad3VPZ05Kcy12SzhYWXVYdkx3UzdILTBrVlhLQkhDSG9SMkh6dnlnR21Qa2tEekpyZnJVN3hzczlIdUo1SC1SSnJacXhmLU5pbUxPWm5nemJiYWpiOUJzcGFScFRwUWwwbmF2TkpWbXNMSTJYelJwVldsWlctaTVWdUhDZkZEMjdORW9LalB6MFRiY0dQZ0NtRUdOdWo3dTRkS0t2NFdsWkxHby1WT1RsLWpkVV9aY0VGNy1vVlBZTXZqU05oVFp3WWw5TEowN2xxYkt6aGE1NE5iZUt2ZTk1c3RVVThibWFNcXd1M1dxUkltNmFiSUtfeW15el9COVRqalZpSzluU2hhWDRNektDTmpiaFk1MXB6b1lrc240akhDWTBxVDJHOVkzWnoyZlZuQ01LdU1ZV0p0Z0E3bXlZN1BQSEtycU1OWnJ0cmNvaTd2YkxkUk03MGY3aFZIemVFenhYZFIxMXBjN1F0VnVpUFlSRWx2UE5GUFBFRkJuZDZPNmpnbGxHaTRWSHoxV2tQOWJ3VUVPellQcXdoQkpvTVNpUnRrakFJd196c0lUY2R2RTFtUWxSMGx5RFJKTU9BQjRKVTdpRWcxU29QSGN2TmZibFphRDY3NUJKcFZwUkZKUk4xbUYwV3lpRUlvOHAxU2Jqa0hWUWxVcXRLZTg0clEyUGtUV0NWRnhsOVJMMzRjcHcyZjFaanVtbDFYYUZnS2ZWdTZLSnFkZnpzUHBHYW1UdGZEbTdkaFdZSUZrUjdhVzNvWUllMTVIZ0tnSDFkZmRDbjBUZVgybVM3UTFHTzJHNVlsUm1FOHJXLWp0Y21xVEM2d3hidUxHdXZiQm1GeTlzMUtyWV92Q1dXcGk4Q1hnMm1KekkxYjlKSFB4MXVvUE1MLVRfUXg2dGhnR0JEeUZpcmVPUkg4ZUhaOE9PMnR2TWk4Rkw3YnJMS3E5a3Uzdm1valplWFpZbExvRGJYTk9Jd0s0UFozaWNZVVRjWUkxWms0OVRpV21NNmR6dmVvamQ4dnpVNGZLRGVmUFZ1WXM3OG1ISG5EYkZ6eklGeHhRa2N1OWNsb2UyS3NZNHJvY01qbllad2d3eW9WSkIzUGJGNnJvZVl3VlFXNzJ4TFpMdktHa0VGQ1dKMVR2YUVRN2dHa3FJNHIzZEE0LWttUm5UQWxzT3dTZFpYZ3NlZ296RzJQUTZqZTV4SGNTUG9lNkRoUk4xbWhLNWZZR19KZGpmSl83LXVkLVo2NlMxZVQtcS1waUc2OGVfaVhMaWJHRno0WmFjZDBWVjNKN1VhMnF4ODRXX1BQQjRTZE5lQkNkYjlDb3ZXRm0xalhUcW9RRWFMQ0c1WTgyMEFTN3VvUGxJejE0R2xocWQxZHFKbmt5REl5UWllZ3JQTG9PaFdjaDMteDlmbGkwTWpiUHRzM3QtOEVDb3piVWlpeVBZcF9hZzFSZUhFbHNxUG1yQUZCMXJnVUI5SmxJMDUtTTRtaEJ5alMxX0NiejVLRHJFSkRfcFBXc0l4eUlSUnNKZWVaNE9NX2NnYlRxN2dCbEdzNGZwR0U2SUdZZzMtVkZ3Y1NXaUhwdmxWOGR4djU0aWhrTUZRVDVBbjRNVXZUM2M1YzdWODQxZzlrbUhpdjJqRElPc0ZYRDlncDNtZGpFUjRsQUNRdUdiVTlmd3Vmc25xaF9PcUdNT2x2TzNqN3VSek5XRktvdGJHZzI1Zm93MmdTbllfNTNCdHRGRFhFdGVFZDdLcGJZYm5ldS0ySF9yUVJobjJpcUNjODRrSUw1amlRVEVPdG9rT0lCQmEyYWUyY3MtRDhIVmpnV05KTHF6bDVsOVdwcVVUV2RDYVJMa3U5RGZ1YWkxenBjOEJKQkM4M00zazZOQTZMbFZpeDN0OWNqNUd2VjdHbC1QYXdidjA0ZFBhMXQwVDBjNFNxbzR5OTJ6YktIN3ZpTzA2ZjJlQWhwYkFiQ1UweEZyX19tWEtnSzJYclNlM2xZcU0yUHdBbVBBU1ZkWHNCc0p2djdfTXpHaWttWmxBSzJLYTV2UjRFeEY0Y3p3NHZvSGMxR3pfbjJpZlotWmxLRmJLTTYzdXNtTHlndHFZN0VGaDFyd0pTWnJIY0d4Mnk3V2N4SWVRY2otVG11RG9xcG9kdXNQenN2R0tQbzM5dHJSeFRuNmVOZF9lMzhNT3BNU1Q5VEtMQmhVdW80WUVaM29IU2phUnA4TEtKbjZjNUFDelREUVo4cVJVaEw2Z2R2N21FRlBpMWFTVjNTLVc1RU1YOFRTRU9oZnpDcmxfUTlGR2lYaW1KZ1dSdE1Na1JHeGNILWFsRzRYWkthdTlwcmhZcUM3SEtiNVZOQkx4OUFhemtxQVExRG5xRkdkNEdYd3luWjdXNHVBRHFfUm9BM29VN3VnQlJzVmNIeC1MNjJITU9PQWFYYnpVZWMwaWM2d2ltVXVpdmJpa3dZSnUyeGgyc09qVHA1QlZRQXFGelV1NDRYMUVpaUJxUldIWW5pNGNFazhpajk1Ynh0bTVDUjBweThzRlREUDBGcXEtWVoycUt6MndiSF94SmVpOXg3bkRxUHlhRDBEaWk2MWR2UVhramtrNGhFSGtuUWpoeUR2NGZLN1hGejBGWUxXYkwwQ05ORmdHeWJhQjJWT2FGYkJQVmdtSjRFNkJxTHdTWE1UR1dVd3g4cjZWU1puQ1l6NjRfV29HZ1BteFFDckdRWXBaWVRXNkFYb3MyWTRtQ2dNeWdDV2hKTng2a2ptbGRkdDZTeFNWdXVlS3RmWkMwNmktYzdpa0ZvM0ZYRzF0YmpwdFN3OFpMbWdWb0k4M19scTNxY29QNTNkVklZVy1GQnUySXJwYU1DZDZYNTJWUEZ1SGhKYlEzWDF0VG4zLXNxTkFvdXdWckZjMmNTbHJvSXRFOHBYdlVaRS1NQTR3QloxejRJYlpjYk4yLV80ZVM5Q0Q0c2xVSlJyQU5MdzlEd3BaSlo3T3NvZUJTWUZKeWw4SFprMWwzTlNDdFpNQUIxX05QODFpWjV2amdrUUszWXpWTDB6SmV1cUJUc2VSb0xlY3BPWEY1V2dEaFdrUFRlY25mdHFMdXZpZGc2d01HRkt0blhnYTVrbWZQbUs0d2xxVUhQR1BSbXZDV1ZZelRUN2pMT01XWFUzVmZsUlpabXpJdzhla3pLODQ5Zm5ZQkR3YnYtWjJvcVhFNGFQUUswUUNYeUczTU9QM0JpcFFXc2VtQ1JLRWdnRlBTNEQ0TlRjS1FKVHQtLWUtVXpMOTluM2NZOWpXUVpPZU9iSTlxTl83MVRPVnA1UE1mYjJ0MEhCTU1KNkxwcVRuOXFQQVF3QkdZYTM5aWRqU2ZtTXNXd013a25naTJFZEZWSTM5Uk01OGdlMnJITVFjRlF4bGhyb3M0aS1kNnlSek04azVNcGRsYW91UDZ3VWlGZ1E1ekdtMEpVNTJrQ09VakxnaUJNakhLZDUxUWs3ejY2YXZicWlvelFRSnlneDlfM29WSzMyMXBFQXJHd0Q2cjBKLUJySWJBamFmYU1sb2xPbm1TY254NVM2dE9rQ1VEXzlIN1RQRjRoUTBBQl9sZmFpNHFoSFAtdi02c2xxQ0xqT0FmTk5mTmUtX2tnU1lfdVpGMUQ2T3FmZTVDOThPc2tfU1ZHalBsYTNrNk1CdFl5TEZpZjdoVktSQkVibk44Sjc1MFp6VHV6bjIzMTExY3ZyZlhpeG8ycUY3cWgzUHlDMEc1YnpiWFFMNmtXc21TS2R1ZGFXN1N4NG9WVHZVMnlHTVVzdWt2ajhmd183OGhJYW95d0RRS242T1p0WEszZFUzczFxVkk0QlAyRUduWXd3MU9INWdKNnd5endqUzBjTWVLbldiWVh1c3NpTVFmdEcyN3l4OThKcFpncGZFemFsaHIzOHE5bGxBc3RlWnhvS3g4ZmRhcnFjTU51WWJLblRPdjZTZkFfZFR1VmgzejZDMVV2cl96MF9nd1VtVWFhX1ZxMk9kTWVVV2IwSF9xSGc2X3FKNFZPWWhOODdFMm55WkcyTElja0VPc2k3TnNNZW9VeHg0LTc4ZXFxTGk5U3BscUgyWEFLbEtTaWQ0eGVlVDV3OVI5YVJDVGZ0cVNxSEpfa0YyTzl6elRDSV9XTkdGX3l1c2R0eER4bllMTHFtNElqUWVzTmRSV2duNURDZ0Q4Q3NqRWZic0lpNVgxWUFUZ29KQS05Z2VuVFV3LU14aEc2WHl0ZjlCM0piSHJoMFZQa2Y1cE5RZjIwT0xPSFMwSVNLOU9QMGx4ckZSQUFXa3A3RF9aNGRIOENySUUtRnFjWHAwc3E3QndSOGZFRUMzMWhicjl4NEp0T1FiRnN4NjNSaGEzdTltOE1NSzNUeUU3eWE4aDJVdTYyT3p1Q1JrSl9mUnJEODc5cEl2T3RRYW5rYzRJUE9Ia2tiNHV5SWxiTEo5QUF4eGdXZTBfRWdhYnVPMWdDTVJDUG56RWFHel9pajNmVXFFVmpXVzF3WFZXUjlVOGRiS3N2UFd3TkV3dmNJeXF0X0ZlMzFaM0ZsVEF2eDY1UlpGQV9XYmg4bVF1NGg1MXVzazNBWTRGdUppdWpFZVBnNXNLcFZyaWRXbVpIS0hSWndjRF8tNG1CNVV3b0hRcXhWVEZaRjBlcXJ0T0FXMGdXb0l3OEdULUpWelVrR3JWQ0JiemQ2MHJHNE51ZDJzZjUxMnN3MXFOZGhGZXFoT0gxMWJCNzItLXhkOTl3aHl3MVE2a3o0Ym9OaHdpRTA0cmtBdGM4RHpVczFmcldoLmd4amVtYTRfSkxNQk9mTV9LNWR4SDd3aldzZ2hzSFJYNTcxNnZGWmFnZFEiLCJ0YWciOiJoc21fYmFja3VwIn0seyJjb21wYWN0X2p3ZSI6ImV5SmhiR2NpT2lKa2FYSWlMQ0psYm1NaU9pSkJNalUyUTBKRExVaFROVEV5SWl3aWEybGtJam9pWW1GelpWOWxibU5zWVhabFgySmhZMnQxY0NKOS4uUjNJN2ZhODFxMkxiSHRCSlNld2VCZy50Q3BZMlZBWTlpZHE0YWVZaEh4c29HVlcyT3lKdTdOVHRvbEJZYUFJSDBsNkFXR09IUDZrVGQwYVp4bFV6dDYzbjV6WUwxa3hSeFdMVEJuVUFYTG1tT0IwZjZlS0poYzdmSmRVZTU3cDhNTDRjSktIbDJSS1FwdGpfRVQ5VHVOc0RZZ1ltVXg2RDN1MllWak5GcWMxcFhVbUQ3dW54dE05eU4xVFNGdjNWY21BNHFmNXZ1T3Z5Q3NsYWd0T1pzbkthR1V6ZGpZak9RS0pHRXoyeTdZSVlYT0tHLWljZ1h0Z201Zl9RcDZIWUJlSWFobi0tSDhMS25uT05rQVRKdFJRQVBFUllrTEtuZHNaN1JLNmFacnFaR25SRm9FRDdNWkloRG4zWENKQ2xZZ3Fsemw3a2FHQlU4ZUpsZGpKMjVnTnIzdTIxamZNeDBDN2o2ZUZaOTd5NFJhQ0JGUUptUGlRVWFmQkdYSDJPTGNBS2lNOXc2MWtzRjU4N0V1cDk1T0tYSjBrSEZ4OG9oVmlxbGJnNVV1QjhaY3l0eHZ0S3pmWG5RVEJqS2ZDYmJvYlBkU3FrNVBEVWtCWWJ5WGVSS1ZXMHREeVZFZk9haldzWE0xdVRsWXItRDgtQW8xV29jT0hBYkhGM3h1dVBhZnNEdklYcTd3Mk5fckJwOXZNOWpPQzBqdExEeldYeFlwcjIxWmNIdmhwaWJCM3F3ZEVNS1pfZDc1SkM5Y0VmMU85LUlNaVBUSVpja1podEVyazVQQVI3ZnJYQVBBOHJrVjJtTVlJQUxOWV9EQjhDcHVIR2JHeGZ6cE1iZ2d2U1R1OUtacV82YWhIbGVIT0VqRklXNXpiWHp3NG05ZXpMRHpQTnJzWUwxa25uLXAxT0k4TWdzZjVmd1hZS1NtT1VFeEZDdUI2NDd2dldhdmg5eXM5YUxZWFNOb2pEQWxqZlRrRmU5RlVVdUZLSmV5S0V5a2RDS1JPZHZlSXhqSHk4emFBdGNBZGdVSXAwT1FWdkFON3VnZkI4SVJQLWU1a2k1VlptNHpXR1AyQkVWTV92WWxlMkE2VEp0SDNMUFQ3TVV6VGxvMVBVMWtLVExrZ3EyVWp4MERldmZrLTg4WjNTbFhVZWtRVG5QV0lZY2lhY1hDMVptenRVQVpwYTBraV9TcXVmRjNmdGQ4TFFJR3dFNHpkZGZtc0R6aWxlSFpLR3ZUZi10MUtkTm9VbkJtYnFOb0JObUR1blNuTHlBeldFWE16Z2VIZHBsLXZLWVpTUXA5ZnJpdkRlV2ZlOGxXVmJPUmxiUDRxNzlKQ2tVZHBoMXJnM2l5cXRjaHpMa0J4N1pqeGJkUEZ6MkU3Q1B2UGFFYnJUZ3o5WDRUN3VZa1JVTmtDRkpscF9NS0VfdEthNXNwREwtckx2bHgySlV3ZWpXUGJyRWdWRDdocXdhVklMNXdwZzhHSlI4eEhpeVdMbzNVcU1fU0FlZmV6MUNDcElFb1QwT1E1TV94VTlhNWp3bDAuby1JSU5IdzFXTlJBc2xSRnE4OGlZclllTmVibVRhOVRrRlB1Um9LRl9lWSIsInRhZyI6ImJhc2VfZW5jbGF2ZV9iYWNrdXAifSx7ImNvbXBhY3RfandlIjoiZXlKaGJHY2lPaUprYVhJaUxDSmxibU1pT2lKQk1qVTJRMEpETFVoVE5URXlJaXdpYTJsa0lqb2lhMjF6Y0Y5bGJtTnNZWFpsWDJKaFkydDFjQ0o5Li5XYW82Q1FQYXdIN1lGRXdHN2Uza05nLjNVSWh4SGFtV0FLWGlBUG9qVzNlcW56NThRbEpPQm9OcDJGcHVzT0k0UXR6RmIyZHM0M29TVjl6Q3lRaklrc0ZYRko0Q2Zra0QwQUhxQUtna01LZ1JWd09aT2xyRTJHZEpKRVk1bzk2QlU4eEhqZF9BVFo2dlFiMlVMRVIwRnFUZnZIOU5yZlY5SGRfX1lUS01UdVE2ME5XWWtUX1R3TUxRX2kyRDdHd0J0S3pLN0FnbEVjbVM3RXpuWHA0Zlk2RmJRTmN0ZDNjNHpWWUFieDJxbndHMWYzTDNaMndkZGdySVhEMmJlam5RQmJMX3VIRWJUM18yM2hZeDZFdHhEQ3E0bXIzNXB1MVNINDF1UGlnQTcyNG13clNXYUR3NkdJRHlwZVpzc1RYNmc2RXQ5ZHJ2aG85UHpZTjNtdkxpR29PdHBPTUN1cTFyd3J1QmZNMmlkNkdfU1FMT1dkR3NQOWdIUEsxV0FYZTQ3LW1qWXBkbGhiaGFNTjFVaVJBZWxORVR1al8zaDl5Wjl1aFcxbm9TOVdJYU9WekxFVXBDZnJNTVlMLWdubkxuUXZWSkhWNjJGTUQ4V2VkUlUzelVSSzQ3VFZxTGtzY2RoYmxNZUJHUWhJV0R4aEFuSzNHcUFOR25ZM3Bnb1p6QzRTdHVfWmNNS2tsMVZ0bnZiZUZoTExHMnpmMFQ0QTM1Q29ZVHV3TnV0LUNVS0prOW5mZ0x5YXZWNVJGclg1cFJTV3lGS0dUNzY4Rk82MmhBY3pCZDhVeVdwdVJvNGhZZkZjOUI4dUNKZ21JSF9KWXhRVlgwMjh1akdyYm04cjVFa01GNHMyN0RZWmkwRTVCMkZGczNLOEsyQTJxM0l0R3ZKWXdkc2c1Q0g3eGVhelZGNmtjTW5vU3ZvM0c2MVp2WU1lOE1wQ0c0ekMxekdTeDdHSnpjRkxyUG9OcWVnTzhob1p5YzJOSzc1elBFWUN1TTkzcTB1Q01QYTlQbmxPV2tLZzVzX3RLTVZiQV9sMEd2eHdla3hVUlRKSzBXbjRxc0diLXRqb3lmdDd0MmxzcG9LMnprWEtPRGFSUlZfUXhicmJxYlFzSXpGLXIwNnB6c1JRSExGTlR4WUJBX3Yyc1BBSXFkSGowdEpLcUs3UG5XMkk3ZW5BNE5UM1NaOVp6WkdCY3Jua3R5Mm1fQVYyQTNWaHRlRk43X0I4VUVnYXhKenNLNVZkQnhGLUJDNFZlSkdvMXRLcXJ0WktQX0dqQk1NTGxiNlhZOEVoS3BQT1M0a2RIQnNsVFdPLWNwZzhnNDZxRnpmRDdqOE5IUTF4UkJqRmZ3ZnI5ZjB0YjhZckNHek9RNWMwQjdGQUxDSk5LSUZnc3JWallkT2Q5b1l1QTV0YlpmdlJBdDJHTllfLVRId0xyMHBZYWQzY21XTU5VUFBjd2R3cjRqNkI1Qks5amJRX2d0UldGcUF3SHVCaHRCbklpajF1UFRPNDZlRmttUXZWT1E2dll6M015M1djak5Lbnl2X1dmdGdHVFJIdnM5RXlfblFMZ2ViV2dUSGI3S3VsVjhKN2dFWTBOOERob3Vsb0dVTXFsaVh0bjZqYWV0VWVSQmFoT2hUbkkxWGVaNGZzdGdpbHc3dnhEeFI1dTVXcEdHQWtHMi1kc281b045QVVEcHh2dlh4Wld3S0g3NkNvcUZqbmJIQTBXVlh5R0hENEw2SVlrQThkWHhncFltOUU5OFM3YjRnaTEycTB6TWVMR2Y3dktJRG1ObWpvRVZoWEtGS1BOXzM0RjBMeE1NVWtfMW5BM3lxb2FXbUd6UlNWV3EtLXloa05QendNSDF4WDJrQ1p5b1hsZ25kSzh6dzVkSXBza2RsZkhuU1piMVpEdjZtTWhQbklLMWhhblJZb1NzS1ZtZG9wRUhtODdDVFVpWUVydHlPSDdmU2FpalR3M1dUUnY0N21VcUdvdTBXdUNIZlJlVXMxMFYtblJpYWNoSVBqLTV2U1NNS0NTcFdscWJ1Q1V2RDlsdnktRVNubEw0T19abEVRckRnNVRTSUxZNU44WGw5cVM0eDREd05DR1ZiSnZJMUJfeE5CTkJmRFVmcVF2UXk3UlU3d1ZhSHFLelIyM0h1eThzQU8xV0JXMGpCdW1RSjI3NUpHZldTVngtRjFhXzhIWkcwR1ZLczAySXFGdDRTOWRyMENPNXRHMmsxTnNzTXVrWXl0YnRzcXJJdGxzblRRVjdiTUhFZ1pGSWJ6TGpBd3lhUWM4NWQwSXhsQmJibUJZZUhkWnRubGRkdGs5QnZ5NHNqckRnSVZlQWVwdVZxRjNONklrcXVJM1UtZ2p3S0FjQTNKMVJkZENEeXJMVTJhakZGOVdhU0FuYWlOcXJ1R3o3WVY5SDFiaWlkWFJiSFBoRXNFNDNLMkpoX2ljOVBoTFUzdlBXbGNRODV1R3RrWkxRTTNlbUF1RzJLR1NGQTcxd1pyb1hocVRIQUxKNWpLTElhQ0Rld2hfTHBOTHNjM3RVS0xOMDRaVjJHSDhTdFl1N3ZlOUE2QXlTcmhUZjFKRGV5aWdael9kU1ktQXNpaGszRDFjSTN4Rmh5LUdsZTNWQ3ZPRjFSTFFfZHh2NjV2bldTWkdBeHRNdXFHV2VNTnVZY09saXplRGZnNFVuM2RPN1VpdDhpb1R4dU1WMndyRVNPVXpRdThpb0d6TzNpV3RXWWxfMll0LTF1eGZVRjVMSF9EOW9pazFpQTJ3RE9ydnFJemhBczJGakxMQmhqS3BIcWViODJTZ2J3elJRbzJFQmZuenJiMzBWNmtPTjUzOEJkanRCS0hvYUdJSnhLUnNnRjZzUkkxQy1uSVR4NWFZeVhJMExDU0JBRWU5eUpUWkxVV2tqT3AtX3pSSnZfR3dkTnhTWnZMSEdkcFlWT3ByMTF6OFU0azhYTE1xSnRhWXAtZk1CcVh4eWJMZDNxaE1kX1B2V0dNdlJHYm9pd3F3cnYtWllwbHU5Y1I1a1RvZmlHY1I1SFpaWXhTcjN1ZVVubXpjY0kyRUJNQVFqc3UyLWthU2NLMnNWang2emNUaHU0UFBxSXpELVpzdDlRbGpqVGEtZW5kU1ktby1NUjFvbDdkNjR4eTViVzM3Q0NOcHJYX0Zud3djaEhCMXVHUzNLbEx3UUxkV0NlX3dPYjY3NDNNSHFZamExNm4zdW9UZFF0TVFIUkt6N09kaWl2TDF0NGJQdFVrZVFfZkpsRGpDbjJTRGpRelBUWWY4SlY0eFpkTFZlcEE3V0NaNHUyWXNyUFBKUk1SdU51M1VNWUVxYjVhX2lzdXJJYzJNRDUzYVJpZHlxODBSN1lkaVRIMV9oZDRfR3pEWTd1UDBqSm51RHV0SUNNUkJLNTlqejIxWWpydy1ycGdnNFFrRlQ2Sm1CbnFSS20tWC1YTlNDMFdLeFJGcjRmQlFLVXA3bEFfRDlIVWdzdjlPUE9RREF5V2ZVMzdja2ZfWEFNNERiYVJZTkZrdEk5enUzazhWUk1NRE9PdVJPdTM0WHBhU2VUaVg0Z1ZtdHp1bDkzUnd2VUplMDBBT0FyQU53ZmpKRUZHSU5fN1ZxMWVHTmhsWlMwSkZBaXY0OGJzU3cwTTB0eWpmVGMtZlJrMWh1UUx4cC1HOURyMHg0V2ZaWC16dVgzaUx5VnRsdkIzNHo3eXcxSTU4aklTeFdMZlczRXR5T0xod0RKb2pYTHJpeU5fWnJRQ21BS0tfZ19NU2hvY0FLMlo3S0wzSy1ETGw2NnFLR3RwV0FkS0JnNWxsWS1YUXJjWnF2MGlkbWlaSndqZ2kyZFg3VmVmVUw2cld4TkQyM05Vb1U3QUVVempzdThKMHF2ZmQtU3h3SHpseFpLYUo4NTV0aTdTS2RUNThUY19MTFN4UDFXUXAyaENOdkJ2MDJQNlJ6VUR0LUNSSVZOWWpUYzFaVXNSTzByRExTMERmNmxkekZWeHFaUnh6eTlpQ2ZhczRFVndMNW84WHJVbmh0elFLamNUY090bjVyWjh5OHZidUhGWkdyZlMzRG5vemNuc2dRekVwWGw5X0cwRlYwRFY3bGN6TWlEajk1eGh3cnJtbmttdlY4VktZOFFTSkQzbklYOTlCZ05LWldyNmdWWm92RHYxUmpBd2JiSlJOcnJDYS16R3JoRW9WX0pPUGRITC1OZlNsNjA0TnhvR1NIR3RtekNCUktQYjdHNUJfWFVsUGE0NEZReXgtSk03RmlxbE45Q3lJckpkZVRXcWtjalFEWk9Mb0M0UFB0Y3ZDZldCOFZ3N3VCN1Rfbmx5emlFZk9zVkd5S1VUMGE1Tm9BdkZpNVJGSE9Xalg2bkJDWUZOaHhUWVVkU0R2RFRhOWlYN1Zyd3NNaVRvMGxCbzJQMm9OQng5Q0M0ajNVaTVOV180eDJNdWlKSEtqc3dXa2d1cDhxd3pyeTlxYU1fSDFFdXZVZWl0X09kRTN6MFV4N3RkT0QyM0lqZFVuTnZ5eGROMTVYcGU0Q2lReGJMU25kME9KQnpoWHZ2V2ZyQlVnZmttMkYxVjc1V1J4Y0h4NmFrX1Axay1oa3ZGb3dGZnEtZUR1cEU4aHM1NFdGZFFBSmpYczV3MzdkWXZNUXh2WXdKa0VwTDNiN3ZkRHdJWWNqRlg5SWctMmJJVTZJNnNKX1pwYlNONlpjbG4yaE5tblg0WmVZNHVQRTAxVVJlNm03R205QWZwRTJhS2lPMS1pVm56SkdBOElKUHh1NXp0WkxtWUNPaG85Nk50V1VzR1E4MEpTbmgwWXVELThZclhmWnBLSjJmRGFPODZ4NVB0NWN5UVJYc3h0ZTBPUjhGMDd5Tm1nclNIZ2NGMEJGTG5fd2xXbGJUd2tiRHk1ZWRhcWVFMFdZdEY1Mnl1Zjd1MnZvZXhZckEuRFVIdHJDMk1iVVhUZ05XTTZZdlppMkdIVkpMenJsY2dVVXF2RXBrNkpCYyIsInRhZyI6Imttc3BfZW5jbGF2ZV9iYWNrdXAifV0sImtkZiI6InNwMTA4X2tkZiJ9LCJTaGFyZWRLZXlzIjp7ImVuY19zaGFyZXMiOlt7ImVuY19rZXkiOiJleUpoYkdjaU9pSlNVMEV0VDBGRlVDMHlOVFlpTENKbGJtTWlPaUpCTWpVMlEwSkRMVWhUTlRFeUlpd2lhMmxrSWpvaWJtOTBJSFZ6WldRaWZRLk0tQXhHUVlKNlVDQ0xtZVhwOWdTUjJFVTFsbktMRXEyZjFWd01uT0pXaWFMRGJIZ01sX20tRlZ1X1hsNEdNczM2T056YTFJZ3FEM19aQ2h4dmJUSzRtb2JnczlyQzBWR0tYeDdHN3FkbTdNbDhFVGZCampMTVl3ZElReUdyeVREWVdYZW5UdEFacVpJNnc1NmZhX1REMmhzejNGQ2NkLVBmdExYZm04aDFMaFlHZVlfUVlqMzBPeVhlV29FZ1ZndzYtQ2d1RGlhNUdxWjhISl85S0Z4ZVZPQl9zQkt1QjdWWmdpRjN5LVVkQ1FNV0JSSkhITU5mTWs0QTV1bU81aWFRbzFVN3pDekRDVGpodjBVX1U5U2ZOdHFFUFdkbFZxanYwdXpaNXJOSUdxQjI0cE5NT0V5dU8ySDZWTi10R0xkX1pLNlNHUmNPc09BVlllazN1WjZyejhiekFZRVVYLXlXNFBUUWV2Ujg2WlJzc3BIdXRjYldaNi0ySG5YUV9UUTBJNFMtcTJIVUVUNEE1QWk2cy1NQkFLeDQ5eFV4c1VDUmxQTHFnUGUwRERlaDJmOVVpQnRGQy1pazA4ZXBYa2xHVnJqVWFXLTU2RUU1b1R3WWN1bVpNMy1nUHdPV3JUN1luRThWd3BveEt1Z3Bua01YNENJZWpOWTlCRzVlcGxfc0VfLTRpMWRpaWprdDR6UUtDNHVTOWhDMXRSdVdfYW5wZHBpd3VYUFVOaWRNX2VpWDVRVWVNT256cVFjLWtxcmdRR1dUYVp6S2lyZGNQOHpsTzdYQnZWaW1Rc2V3dVVJZnVfRVpMQ010WVdLZEVLTk5Kb19LTTB5bm9qZ04zcmxia1N5ZWRTcE4wVXVnTjdPd3o2YmZXM2xSNHdKajhOclo0bzM5cjBLVDhZLnZjYWFxQ2RMM0U2U2wyRkpVeFZNdVEubXFTa3RpZ3pYbkZpTkhoUTBXQ1RheEtBODFYWlpFU1A4QnNuMlhTSFlzRnpOOXZOdHFRN052d2I3RFItSnJzaVRRRWxZb0NSanFyemZCQm5EbC1Vd2g5QS1LanBzUFJKcXRHd2dSWW9vRlUueW1ObTVRWlJxeWdadjdoQ1dmQUJpNF9KRHI2dmdQNVFNQmpoMEd2WDlMOCIsIng1dF8yNTYiOiI3ODd2MUR0V3E0OU03bzB6dlRRbmp0V3gzdmNTc2xZZzBxYnoxdlJUa080In0seyJlbmNfa2V5IjoiZXlKaGJHY2lPaUpTVTBFdFQwRkZVQzB5TlRZaUxDSmxibU1pT2lKQk1qVTJRMEpETFVoVE5URXlJaXdpYTJsa0lqb2libTkwSUhWelpXUWlmUS5ndUFieGdOUmNDcXJNOUF3TnJEOWR2VnFBcUYwSUVuUjBTbWZGR1Q3T2hpUDhZdVVKbFd2OUt1MmVva05GLVZrbUZuZkdfMWlIVVZoYUxNNEN3X0RBRjQ1YnVtMlBCc29qcEYxY1FNTDJPR3NyZ0xnZG1sMWNtbEpKaXh3UGk2Y29TVTgxMGFrdTdpalVVU0xDSmlSaHJvQnpmVm1PS0lqQ0duaGVEcl9pdVdwN1NaUkRsejYzaFMyVGh1bXZ0LS1TVzU2TGxSeHpLelJaeFliOUctWTBvYXF4UkhsMThLSWp6MGZNeEswS2ROMk5LQTdWaDZEUnlRR3BvRUFZTjRtYkxJbDgwb3A5VlFCUE1uVE1KRnRHY1pQV0JvNlVDQk9HRTN6eWUyRGEyakZnTGtnOV9xRV81MXY4RGllZUJYY2FGTFlzV3lxbTZRLXJnczFxNlozVktEZkNONFNDNllvSFBsd0xCMkIwOTJDdzNkM0kwVm52eUtTdndmMEdtNW9zUG9tbm1SN0NXa20ySGVUMEFJbFJoUG41Y1V1T3ZjV1BhNFFtbEdyRG5sZ2RTOVRqSmdjVFhQdEVLU2ljWmtYdFhtdUtNUHVNbmNSVFNOVHI0WGZ3aUJtNEFtMjJKd1FtN0xPS1M5X2cxNi1DMDFTcFh5UDQtNkZSV3NZMWczMFVjZkxPS1pjRWVtUTVSVGRDWkJRU3dQMTZEZ05PLXluM2JTUVl2ZGFUYm5qV0pVSjEyTWppMXMwckxMdDFkOE5GbS1XRVVXdUFZd1B5YlJLa2JBRXdFajR0MjhyRmZHaFZBdmc0R3otSHh3OHFLLUhuSkNwWVFtTXFqT0hpaUN1OWNVUUYyeXBmTGxEVU9SUlpYd1Bobnc5NUNWV3JPcmhWWENIVWk5bUwtdy55dFVSMjVSVjg5WFNjR1JtSW83MWxBLl9TWGs1bzF5Wldpdk5NbGVIYl85Z21NeWZuNjZwTFdyLUxhbVZ0VmhjNHFZZlg1RFFiSjFoalVXYmVtcHZRc2hHVUxqX08xMkpKbU9tblZLRGYwR05FbnJGOUlFRlRpbzJPZy1TeHNKdTQ0LmYtRnlTYVg0Y3pnSGM5X3haalAyeEdibDl4bnRvMzBNMDU3VnRCaHNrLUkiLCJ4NXRfMjU2IjoibmhHaVdaM3NEdWdBS1pObnBVNGY5MHdYbFpRTTAzR1Y2UGZzYk5MczhObyJ9LHsiZW5jX2tleSI6ImV5SmhiR2NpT2lKU1UwRXRUMEZGVUMweU5UWWlMQ0psYm1NaU9pSkJNalUyUTBKRExVaFROVEV5SWl3aWEybGtJam9pYm05MElIVnpaV1FpZlEuZXRadTJjek9zVTBBZWRRSWdnamxsNFZIWk40SFlXc1FpZG9EdUx0VVlSMlUxWnBLU3RYSjUtUjduUm1Mdk1USVZVQ0pWcU0yTkZxNjB6cjZMZUc1VXNPY0ZGal9MQzgyMlRyMEJJa1BaZnRWZ1gzUnJHTmJzcmNKWGtxcW9fa05WNDM3Tl81VlgwVE5ldFZURk13RDM4Q3FXX0otQkUwd1JKQ21FTVk4QlpvckROc0dOTnVhUlg1bDdod0NRX1RtN1NKRVhlNGR1alJXVEVEWXM5dXdMelgxcFplcVRFa0NfZTl0TVd1Q2ZDZlo4Q1JyQ25oQ3oyemJ2bUQxSldaVVlRc253a3I1LWxtZnQwUm9UczF2cGVQbGtIdjl3UkplYkp3U29KUWJjQ3JPMlJRRE9od1BCNkdXbk1WTTY1WnU5MVh5V3RQNFdjUHFvak5wdDZHSEZPdmEzX3RTaG1LV3RYNXhhM0dzUUVJaTNCSTdGOVdMNEJ1NkhqclFkMDVjcHZVcm80X2hUeURiWUtET0g5NFlPVi1qUXg1Sl9RUXJWVnJDbFJZd0Y0ZjMzcFItTzJJbnh1N1UzZGJNLVFQNDlLYUo3Y2g4MkpmOTRxY2N0dGJoVGpxNG5TdzVNV2VjbkNQZjRIa1JjdWw5RGtJZEVwY0RIMmRaVXFkV0JHYjFuRWNldlc0NDBUbFJuNkcwVHhqSzBaX2dpekx4dXVsZklPUTEySEpNdlBjWXd3OV8tMWdGZWdUdDgzb3N5OEJmVjNwNDA3eFpXRVROUFR5ZWNMNTV2enRKUjJjUjZLWmRlTkdsNlpENTgwNmVPYzlaUGIwS1Fnb2I3MkRVM05mODJidDN1cFB0LXEwaFNuZzNIWHpUZUhWYlFRV01NWmxBcEN2aHdpWml0SGcuY2c0d2tyQ0p1YzVBbmJaY2lQWVhDUS5YOW1Hc0QxdWJSU0lFUzBiclJiOWhQU0xaY2tTaGNkbmtBRzE3MTFpcnpmcmlEMWZwS1pna1RwQzZfQ2daTnBiU2JHT3psQTZkZ2pReXpxM0dFN1JGa0MxRzh4cW9DZE8xTVp1MUVsQzdXMC40dUZFdEFSUktzVHdxWUtjRDRTNm1HQ2JNZmhxeU9xd1VHdFpPMWtYNExjIiwieDV0XzI1NiI6IndkOUVyWmhYUVppeHB3TTZPLUVCOWNLQWlBaVM3YVdnUkdkQWtNMU0yNzAifV0sImtleV9hbGdvcml0aG0iOiJzaGFtaXJfc2hhcmUiLCJyZXF1aXJlZCI6Mn0sInZlcnNpb24iOjJ9" + }, + "api-version": "7.2" + }, + "responses": { + "202": { + "headers": { + "Retry-After": 5, + "Azure-AsyncOperation": "https://myvault.vault.azure.net/securitydomain/upload/pending" + }, + "body": { + "status": "InProgress", + "status_details": "" + } + }, + "204": {} + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/setStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/setStorageAccount.json new file mode 100644 index 000000000000..417c49c34fa4 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/setStorageAccount.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "setStrg01", + "api-version": "7.2", + "parameters": { + "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc", + "activeKeyName": "key2", + "autoRegenerateKey": true, + "regenerationPeriod": "P15D", + "attributes": { + "enabled": true + }, + "tags": { + "tag1": "val1", + "tag2": "val2" + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/setStrg01", + "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc", + "activeKeyName": "key2", + "autoRegenerateKey": true, + "regenerationPeriod": "P15D", + "attributes": { + "enabled": true, + "created": 1490738386, + "updated": 1490738386, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "tag1": "val1", + "tag2": "val2" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/setStorageSasDefinition.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/setStorageSasDefinition.json new file mode 100644 index 000000000000..aea8d9a6f38e --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/setStorageSasDefinition.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "setsas01", + "sas-definition-name": "setStrgSasDef01", + "api-version": "7.2", + "parameters": { + "templateUri": "se=2018-02-01T00%3A00Z&spr=https&sv=2017-04-17&sr=b&sig=XXFNfuMCHYrBx0bhemJ7PWn0xGfImMXT6LfbXWvtRUk%3D", + "sasType": "service", + "validityPeriod": "P15D", + "attributes": { + "enabled": true + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/setsas01/sas/setStrgSasDef01", + "sid": "https://myvault.vault.azure.net/secrets/setsas01-setStrgSasDef01", + "templateUri": "se=2018-02-01T00%3A00Z&spr=https&sv=2017-04-17&sr=b&sig=XXFNfuMCHYrBx0bhemJ7PWn0xGfImMXT6LfbXWvtRUk%3D", + "sasType": "service", + "validityPeriod": "P15D", + "attributes": { + "enabled": true, + "created": 1490738438, + "updated": 1490738438, + "recoveryLevel": "Recoverable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/sign-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/sign-example.json new file mode 100644 index 000000000000..8a7131bebf39 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/sign-example.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "testkey", + "key-version": "9885aa558e8d448789683188f8c194b0", + "api-version": "7.2", + "parameters": { + "alg": "RS512", + "value": "RUE3Nzg4NTQ4QjQ5RjFFN0U2NzAyQzhDNEMwMkJDOTA1MTYyOTUzNjI5NDhBNzZDQTlFOTM1NDA2M0ZGMjk2Mg" + } + }, + "responses": { + "200": { + "body": { + "kid": "https://myvault.vault.azure.net/keys/testkey/9885aa558e8d448789683188f8c194b0", + "value": "aKFG8NXcfTzqyR44rW42484K_zZI_T7zZuebvWuNgAoEI1gXYmxrshp42CunSmmu4oqo4-IrCikPkNIBkHXnAW2cv03Ad0UpwXhVfepK8zzDBaJPMKVGS-ZRz8CshEyGDKaLlb3J3zEkXpM3RrSEr0mdV6hndHD_mznLB5RmFui5DsKAhez4vUqajgtkgcPfCekMqeSwp6r9ItVL-gEoAohx8XMDsPedqu-7BuZcBcdayaPuBRL4wWoTDULA11P-UN_sJ5qMj3BbiRYhIlBWGR04wIGfZ3pkJjHJUpOvgH2QajdYPzUBauOCewMYbq9XkLRSzI_A7HkkDVycugSeAA" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/unwrapKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/unwrapKey-example.json new file mode 100644 index 000000000000..d1b627b3b94d --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/unwrapKey-example.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "sdktestkey", + "key-version": "0698c2156c1a4e1da5b6bab6f6422fd6", + "api-version": "7.2", + "parameters": { + "alg": "RSA1_5", + "value": "khwIe26NuAZazS7upywDBpGRmRNMW5-4h_JQKxOdB78nYVxZWnBXwCxOv7a3Sr_mCjiVzKsoQQZwL-CJzhYa0512tfYem56zls5a44y5QsdcfvuSzOvpthVhA9XkEfCJSqSY_sip5d8BelT_w_ikvd_8KqiQ_0H54RqYUN8svCpu28paHgBocHFNXTQ9NtU9ec2qgESXk7Jp4OTy9HJtQJavKDUqTJ3YmtLxUgsgBCe0FNMHUSEYC0Ys6PavYzdTwIzYCq84idmAxJOj-O_6eALJFH2sDTOQYHjzOae2t8eFmw6C-t55qjrCI91a9mUJEGPhYixiG4gR4PaEJ7wGvw" + } + }, + "responses": { + "200": { + "body": { + "kid": "https://myvault.vault.azure.net/keys/sdktestkey/0698c2156c1a4e1da5b6bab6f6422fd6", + "value": "ovQIlbB0DgWhZA7sgkPxbg9H-Ly-VlNGPSgGrrZvlIo" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/updateStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/updateStorageAccount.json new file mode 100644 index 000000000000..4f5d8424a24f --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/updateStorageAccount.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "patchStrg01", + "api-version": "7.2", + "parameters": { + "activeKeyName": "key1", + "regenerationPeriod": "P10D" + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/patchStrg01", + "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc", + "activeKeyName": "key1", + "autoRegenerateKey": true, + "regenerationPeriod": "P10D", + "attributes": { + "enabled": true, + "created": 1490738386, + "updated": 1490738386, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "tag1": "val1", + "tag2": "val2" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/updateStorageSasDefinition.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/updateStorageSasDefinition.json new file mode 100644 index 000000000000..b7651760925d --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/updateStorageSasDefinition.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "patchsas01", + "sas-definition-name": "patchStrgSasDef01", + "api-version": "7.2", + "parameters": { + "templateUri": "se=2018-02-01T00%3A00Z&spr=https&sv=2017-04-17&sr=b&sig=XXFNfuMCHYrBx0bhemJ7PWn0xGfImMXT6LfbXWvtRUk%3D", + "sasType": "service", + "validityPeriod": "P15D", + "attributes": { + "enabled": true + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/patchsas01/sas/patchStrgSasDef01", + "sid": "https://myvault.vault.azure.net/secrets/patchsas01-patchStrgSasDef01", + "templateUri": "se=2018-02-01T00%3A00Z&spr=https&sv=2017-04-17&sr=b&sig=XXFNfuMCHYrBx0bhemJ7PWn0xGfImMXT6LfbXWvtRUk%3D", + "sasType": "service", + "validityPeriod": "P15D", + "attributes": { + "enabled": true, + "created": 1490738438, + "updated": 1490738438, + "recoveryLevel": "Recoverable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/verify-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/verify-example.json new file mode 100644 index 000000000000..406e1faf031e --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/verify-example.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "testkey", + "key-version": "9885aa558e8d448789683188f8c194b0", + "api-version": "7.2", + "parameters": { + "alg": "RS512", + "value": "RUE3Nzg4NTQ4QjQ5RjFFN0U2NzAyQzhDNEMwMkJDOTA1MTYyOTUzNjI5NDhBNzZDQTlFOTM1NDA2M0ZGMjk2Mg", + "digest": "aKFG8NXcfTzqyR44rW42484K_zZI_T7zZuebvWuNgAoEI1gXYmxrshp42CunSmmu4oqo4-IrCikPkNIBkHXnAW2cv03Ad0UpwXhVfepK8zzDBaJPMKVGS-ZRz8CshEyGDKaLlb3J3zEkXpM3RrSEr0mdV6hndHD_mznLB5RmFui5DsKAhez4vUqajgtkgcPfCekMqeSwp6r9ItVL-gEoAohx8XMDsPedqu-7BuZcBcdayaPuBRL4wWoTDULA11P-UN_sJ5qMj3BbiRYhIlBWGR04wIGfZ3pkJjHJUpOvgH2QajdYPzUBauOCewMYbq9XkLRSzI_A7HkkDVycugSeAA" + } + }, + "responses": { + "200": { + "body": { + "value": true + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/wrapKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/wrapKey-example.json new file mode 100644 index 000000000000..93d252284bef --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/examples/wrapKey-example.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "sdktestkey", + "key-version": "0698c2156c1a4e1da5b6bab6f6422fd6", + "api-version": "7.2", + "parameters": { + "alg": "RSA1_5", + "value": "ovQIlbB0DgWhZA7sgkPxbg9H-Ly-VlNGPSgGrrZvlIo" + } + }, + "responses": { + "200": { + "body": { + "kid": "https://myvault.vault.azure.net/keys/sdktestkey/0698c2156c1a4e1da5b6bab6f6422fd6", + "value": "khwIe26NuAZazS7upywDBpGRmRNMW5-4h_JQKxOdB78nYVxZWnBXwCxOv7a3Sr_mCjiVzKsoQQZwL-CJzhYa0512tfYem56zls5a44y5QsdcfvuSzOvpthVhA9XkEfCJSqSY_sip5d8BelT_w_ikvd_8KqiQ_0H54RqYUN8svCpu28paHgBocHFNXTQ9NtU9ec2qgESXk7Jp4OTy9HJtQJavKDUqTJ3YmtLxUgsgBCe0FNMHUSEYC0Ys6PavYzdTwIzYCq84idmAxJOj-O_6eALJFH2sDTOQYHjzOae2t8eFmw6C-t55qjrCI91a9mUJEGPhYixiG4gR4PaEJ7wGvw" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/index.md b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/index.md new file mode 100644 index 000000000000..1d8c9d77ab0e --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/index.md @@ -0,0 +1,26 @@ +--- +ms.assetid: 357c9947-1098-4a03-9f1e-7b27e5aa75bf +ms.title: Azure Key Vault REST Reference +ms.prod: +ms.service: azure-keyvault +author: BrucePerlerMS +ms.author: bruceper +ms.manager: mbaldwin +--- + +# Azure Key Vault + +Azure Key Vault enables users to store and use cryptographic keys within the Microsoft Azure environment. Azure Key Vault supports multiple key types and algorithms, and enables the use of Hardware Security Modules (HSM) for high value customer keys. Key Vault also supports storage of secrets, limited size octet objects. Certificate management is also available through Key Vault including support for renewal processing and working with a range of certificate authorities. + +## REST Operation Groups + +| Operation Group | Description | +|-----------------|-------------| +|Keys | Operations for interacting with keys including create, import, update, and delete.| +|Secrets | Operations for interacting with secrets including create, update, and delete.| +|Certificates | Operations for interacting with certificates including create, import, update, delete and a set of contact and renewal management tasks.| +|Storage | Operations for interacting with storage accounts including create, read, update, delete, list, regeneratekey and a set of sas definition related tasks.| + +## See Also + +- [About keys, secrets, certificates and storage](link) diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/keys.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/keys.json new file mode 100644 index 000000000000..78625b964131 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/keys.json @@ -0,0 +1,1790 @@ +{ + "swagger": "2.0", + "info": { + "title": "KeyVaultClient", + "description": "The key vault client performs cryptographic key operations and vault operations against the Key Vault service.", + "version": "7.2" + }, + "x-ms-parameterized-host": { + "hostTemplate": "{vaultBaseUrl}", + "useSchemePrefix": false, + "positionInOperation": "first", + "parameters": [ + { + "name": "vaultBaseUrl", + "description": "The vault name, for example https://myvault.vault.azure.net.", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true + } + ] + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/keys/{key-name}/create": { + "post": { + "tags": [ + "Keys" + ], + "operationId": "CreateKey", + "summary": "Creates a new key, stores it, then returns key parameters and attributes to the client.", + "description": "The create key operation can be used to create any key type in Azure Key Vault. If the named key already exists, Azure Key Vault creates a new version of the key. It requires the keys/create permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z-]+$", + "description": "The name for the new key. The system will generate the version name for the new key." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/KeyCreateParameters" + }, + "description": "The parameters to create a key." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A key bundle containing the result of the create key request.", + "schema": { + "$ref": "#/definitions/KeyBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Create key": { + "$ref": "./examples/CreateKey-example.json" + } + } + } + }, + "/keys/{key-name}": { + "put": { + "tags": [ + "Keys" + ], + "operationId": "ImportKey", + "summary": "Imports an externally created key, stores it, and returns key parameters and attributes to the client.", + "description": "The import key operation may be used to import any key type into an Azure Key Vault. If the named key already exists, Azure Key Vault creates a new version of the key. This operation requires the keys/import permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z-]+$", + "description": "Name for the imported key." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/KeyImportParameters" + }, + "description": "The parameters to import a key." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Imported key bundle to the vault.", + "schema": { + "$ref": "#/definitions/KeyBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Import key": { + "$ref": "./examples/ImportKey-example.json" + } + } + }, + "delete": { + "tags": [ + "Keys" + ], + "operationId": "DeleteKey", + "summary": "Deletes a key of any type from storage in Azure Key Vault.", + "description": "The delete key operation cannot be used to remove individual versions of a key. This operation removes the cryptographic material associated with the key, which means the key is not usable for Sign/Verify, Wrap/Unwrap or Encrypt/Decrypt operations. This operation requires the keys/delete permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the key to delete." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The public part of the deleted key and deletion information on when the key will be purged.", + "schema": { + "$ref": "#/definitions/DeletedKeyBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Delete key": { + "$ref": "./examples/DeleteKey-example.json" + } + } + } + }, + "/keys/{key-name}/{key-version}": { + "patch": { + "tags": [ + "Keys" + ], + "operationId": "UpdateKey", + "summary": "The update key operation changes specified attributes of a stored key and can be applied to any key type and key version stored in Azure Key Vault.", + "description": "In order to perform this operation, the key must already exist in the Key Vault. Note: The cryptographic material of a key itself cannot be changed. This operation requires the keys/update permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of key to update." + }, + { + "name": "key-version", + "in": "path", + "required": true, + "type": "string", + "description": "The version of the key to update." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/KeyUpdateParameters" + }, + "description": "The parameters of the key to update." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The updated key.", + "schema": { + "$ref": "#/definitions/KeyBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Update key": { + "$ref": "./examples/UpdateKey-example.json" + } + } + }, + "get": { + "tags": [ + "Keys" + ], + "operationId": "GetKey", + "summary": "Gets the public part of a stored key.", + "description": "The get key operation is applicable to all key types. If the requested key is symmetric, then no key material is released in the response. This operation requires the keys/get permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the key to get." + }, + { + "name": "key-version", + "in": "path", + "required": true, + "type": "string", + "description": "Adding the version parameter retrieves a specific version of a key. This URI fragment is optional. If not specified, the latest version of the key is returned." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A key bundle containing the key and its attributes.", + "schema": { + "$ref": "#/definitions/KeyBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Get key": { + "$ref": "./examples/GetKey-example.json" + } + } + } + }, + "/keys/{key-name}/versions": { + "get": { + "tags": [ + "Keys" + ], + "operationId": "GetKeyVersions", + "summary": "Retrieves a list of individual key versions with the same key name.", + "description": "The full key identifier, attributes, and tags are provided in the response. This operation requires the keys/list permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the key." + }, + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified the service will return up to 25 results." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of keys along with a link to the next page of keys.", + "schema": { + "$ref": "#/definitions/KeyListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetKeyVersions": { + "$ref": "./examples/GetKeyVersions-example.json" + } + } + } + }, + "/keys": { + "get": { + "tags": [ + "Keys" + ], + "operationId": "GetKeys", + "summary": "List keys in the specified vault.", + "description": "Retrieves a list of the keys in the Key Vault as JSON Web Key structures that contain the public part of a stored key. The LIST operation is applicable to all key types, however only the base key identifier, attributes, and tags are provided in the response. Individual versions of a key are not listed in the response. This operation requires the keys/list permission.", + "parameters": [ + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified the service will return up to 25 results." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of keys in the vault along with a link to the next page of keys.", + "schema": { + "$ref": "#/definitions/KeyListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetKeys": { + "$ref": "./examples/GetKeys-example.json" + } + } + } + }, + "/keys/{key-name}/backup": { + "post": { + "tags": [ + "Keys" + ], + "operationId": "BackupKey", + "summary": "Requests that a backup of the specified key be downloaded to the client.", + "description": "The Key Backup operation exports a key from Azure Key Vault in a protected form. Note that this operation does NOT return key material in a form that can be used outside the Azure Key Vault system, the returned key material is either protected to a Azure Key Vault HSM or to Azure Key Vault itself. The intent of this operation is to allow a client to GENERATE a key in one Azure Key Vault instance, BACKUP the key, and then RESTORE it into another Azure Key Vault instance. The BACKUP operation may be used to export, in protected form, any key type from Azure Key Vault. Individual versions of a key cannot be backed up. BACKUP / RESTORE can be performed within geographical boundaries only; meaning that a BACKUP from one geographical area cannot be restored to another geographical area. For example, a backup from the US geographical area cannot be restored in an EU geographical area. This operation requires the key/backup permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the key." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The backup blob containing the backed up key.", + "schema": { + "$ref": "#/definitions/BackupKeyResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "BackupKey": { + "$ref": "./examples/BackupKey-example.json" + } + } + } + }, + "/keys/restore": { + "post": { + "tags": [ + "Keys" + ], + "operationId": "RestoreKey", + "summary": "Restores a backed up key to a vault.", + "description": "Imports a previously backed up key into Azure Key Vault, restoring the key, its key identifier, attributes and access control policies. The RESTORE operation may be used to import a previously backed up key. Individual versions of a key cannot be restored. The key is restored in its entirety with the same key name as it had when it was backed up. If the key name is not available in the target Key Vault, the RESTORE operation will be rejected. While the key name is retained during restore, the final key identifier will change if the key is restored to a different vault. Restore will restore all versions and preserve version identifiers. The RESTORE operation is subject to security constraints: The target Key Vault must be owned by the same Microsoft Azure Subscription as the source Key Vault The user must have RESTORE permission in the target Key Vault. This operation requires the keys/restore permission.", + "parameters": [ + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/KeyRestoreParameters" + }, + "description": "The parameters to restore the key." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Restored key bundle in the vault.", + "schema": { + "$ref": "#/definitions/KeyBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "RestoreKey": { + "$ref": "./examples/RestoreKey-example.json" + } + } + } + }, + "/keys/{key-name}/{key-version}/encrypt": { + "post": { + "tags": [ + "Keys" + ], + "operationId": "encrypt", + "summary": "Encrypts an arbitrary sequence of bytes using an encryption key that is stored in a key vault.", + "description": "The ENCRYPT operation encrypts an arbitrary sequence of bytes using an encryption key that is stored in Azure Key Vault. Note that the ENCRYPT operation only supports a single block of data, the size of which is dependent on the target key and the encryption algorithm to be used. The ENCRYPT operation is only strictly necessary for symmetric keys stored in Azure Key Vault since protection with an asymmetric key can be performed using public portion of the key. This operation is supported for asymmetric keys as a convenience for callers that have a key-reference but do not have access to the public key material. This operation requires the keys/encrypt permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the key." + }, + { + "name": "key-version", + "in": "path", + "required": true, + "type": "string", + "description": "The version of the key." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/KeyOperationsParameters" + }, + "description": "The parameters for the encryption operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The encryption result.", + "schema": { + "$ref": "#/definitions/KeyOperationResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Encrypt example": { + "$ref": "./examples/encrypt-example.json" + } + } + } + }, + "/keys/{key-name}/{key-version}/decrypt": { + "post": { + "tags": [ + "Keys" + ], + "operationId": "decrypt", + "summary": "Decrypts a single block of encrypted data.", + "description": "The DECRYPT operation decrypts a well-formed block of ciphertext using the target encryption key and specified algorithm. This operation is the reverse of the ENCRYPT operation; only a single block of data may be decrypted, the size of this block is dependent on the target key and the algorithm to be used. The DECRYPT operation applies to asymmetric and symmetric keys stored in Azure Key Vault since it uses the private portion of the key. This operation requires the keys/decrypt permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the key." + }, + { + "name": "key-version", + "in": "path", + "required": true, + "type": "string", + "description": "The version of the key." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/KeyOperationsParameters" + }, + "description": "The parameters for the decryption operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The decryption result.", + "schema": { + "$ref": "#/definitions/KeyOperationResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Decrypt example": { + "$ref": "./examples/decrypt-example.json" + } + } + } + }, + "/keys/{key-name}/{key-version}/sign": { + "post": { + "tags": [ + "Keys" + ], + "operationId": "sign", + "summary": "Creates a signature from a digest using the specified key.", + "description": "The SIGN operation is applicable to asymmetric and symmetric keys stored in Azure Key Vault since this operation uses the private portion of the key. This operation requires the keys/sign permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the key." + }, + { + "name": "key-version", + "in": "path", + "required": true, + "type": "string", + "description": "The version of the key." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/KeySignParameters" + }, + "description": "The parameters for the signing operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The signature value.", + "schema": { + "$ref": "#/definitions/KeyOperationResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Sign": { + "$ref": "./examples/sign-example.json" + } + } + } + }, + "/keys/{key-name}/{key-version}/verify": { + "post": { + "tags": [ + "Keys" + ], + "operationId": "verify", + "summary": "Verifies a signature using a specified key.", + "description": "The VERIFY operation is applicable to symmetric keys stored in Azure Key Vault. VERIFY is not strictly necessary for asymmetric keys stored in Azure Key Vault since signature verification can be performed using the public portion of the key but this operation is supported as a convenience for callers that only have a key-reference and not the public portion of the key. This operation requires the keys/verify permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the key." + }, + { + "name": "key-version", + "in": "path", + "required": true, + "type": "string", + "description": "The version of the key." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/KeyVerifyParameters" + }, + "description": "The parameters for verify operations." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The verification result.", + "schema": { + "$ref": "#/definitions/KeyVerifyResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Verify": { + "$ref": "./examples/verify-example.json" + } + } + } + }, + "/keys/{key-name}/{key-version}/wrapkey": { + "post": { + "tags": [ + "Keys" + ], + "operationId": "wrapKey", + "summary": "Wraps a symmetric key using a specified key.", + "description": "The WRAP operation supports encryption of a symmetric key using a key encryption key that has previously been stored in an Azure Key Vault. The WRAP operation is only strictly necessary for symmetric keys stored in Azure Key Vault since protection with an asymmetric key can be performed using the public portion of the key. This operation is supported for asymmetric keys as a convenience for callers that have a key-reference but do not have access to the public key material. This operation requires the keys/wrapKey permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the key." + }, + { + "name": "key-version", + "in": "path", + "required": true, + "type": "string", + "description": "The version of the key." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/KeyOperationsParameters" + }, + "description": "The parameters for wrap operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The wrapped symmetric key.", + "schema": { + "$ref": "#/definitions/KeyOperationResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Wrapkey": { + "$ref": "./examples/wrapKey-example.json" + } + } + } + }, + "/keys/{key-name}/{key-version}/unwrapkey": { + "post": { + "tags": [ + "Keys" + ], + "operationId": "unwrapKey", + "summary": "Unwraps a symmetric key using the specified key that was initially used for wrapping that key.", + "description": "The UNWRAP operation supports decryption of a symmetric key using the target key encryption key. This operation is the reverse of the WRAP operation. The UNWRAP operation applies to asymmetric and symmetric keys stored in Azure Key Vault since it uses the private portion of the key. This operation requires the keys/unwrapKey permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the key." + }, + { + "name": "key-version", + "in": "path", + "required": true, + "type": "string", + "description": "The version of the key." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/KeyOperationsParameters" + }, + "description": "The parameters for the key operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The unwrapped symmetric key.", + "schema": { + "$ref": "#/definitions/KeyOperationResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Unwrapkey": { + "$ref": "./examples/unwrapKey-example.json" + } + } + } + }, + "/deletedkeys": { + "get": { + "tags": [ + "DeletedKeys" + ], + "operationId": "GetDeletedKeys", + "summary": "Lists the deleted keys in the specified vault.", + "description": "Retrieves a list of the keys in the Key Vault as JSON Web Key structures that contain the public part of a deleted key. This operation includes deletion-specific information. The Get Deleted Keys operation is applicable for vaults enabled for soft-delete. While the operation can be invoked on any vault, it will return an error if invoked on a non soft-delete enabled vault. This operation requires the keys/list permission.", + "parameters": [ + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified the service will return up to 25 results." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of deleted keys in the vault along with a link to the next page of deleted keys.", + "schema": { + "$ref": "#/definitions/DeletedKeyListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetDeletedKeys": { + "$ref": "./examples/GetDeletedKeys-example.json" + } + } + } + }, + "/deletedkeys/{key-name}": { + "get": { + "tags": [ + "DeletedKeys" + ], + "operationId": "GetDeletedKey", + "summary": "Gets the public part of a deleted key.", + "description": "The Get Deleted Key operation is applicable for soft-delete enabled vaults. While the operation can be invoked on any vault, it will return an error if invoked on a non soft-delete enabled vault. This operation requires the keys/get permission. ", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the key." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A DeletedKeyBundle consisting of a WebKey plus its Attributes and deletion information.", + "schema": { + "$ref": "#/definitions/DeletedKeyBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "GetDeletedKey": { + "$ref": "./examples/GetDeletedKey-example.json" + } + } + }, + "delete": { + "tags": [ + "DeletedKeys" + ], + "operationId": "PurgeDeletedKey", + "summary": "Permanently deletes the specified key.", + "description": "The Purge Deleted Key operation is applicable for soft-delete enabled vaults. While the operation can be invoked on any vault, it will return an error if invoked on a non soft-delete enabled vault. This operation requires the keys/purge permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the key" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No content, signaling that the key was permanently purged." + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "PurgeDeletedKey": { + "$ref": "./examples/PurgeDeletedKey-example.json" + } + } + } + }, + "/deletedkeys/{key-name}/recover": { + "post": { + "tags": [ + "DeletedKeys" + ], + "operationId": "RecoverDeletedKey", + "summary": "Recovers the deleted key to its latest version.", + "description": "The Recover Deleted Key operation is applicable for deleted keys in soft-delete enabled vaults. It recovers the deleted key back to its latest version under /keys. An attempt to recover an non-deleted key will return an error. Consider this the inverse of the delete operation on soft-delete enabled vaults. This operation requires the keys/recover permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deleted key." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A Key bundle of the original key and its attributes", + "schema": { + "$ref": "#/definitions/KeyBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "RecoverDeletedKey": { + "$ref": "./examples/RecoverDeletedKey-example.json" + } + } + } + } + }, + "definitions": { + "JsonWebKey": { + "properties": { + "kid": { + "type": "string", + "description": "Key identifier." + }, + "kty": { + "type": "string", + "description": "JsonWebKey Key Type (kty), as defined in https://tools.ietf.org/html/draft-ietf-jose-json-web-algorithms-40.", + "enum": [ + "EC", + "EC-HSM", + "RSA", + "RSA-HSM", + "oct", + "oct-HSM" + ], + "x-ms-enum": { + "name": "JsonWebKeyType", + "modelAsString": true, + "values": [ + { + "value": "EC", + "description": "Elliptic Curve." + }, + { + "value": "EC-HSM", + "description": "Elliptic Curve with a private key which is not exportable from the HSM." + }, + { + "value": "RSA", + "description": "RSA (https://tools.ietf.org/html/rfc3447)" + }, + { + "value": "RSA-HSM", + "description": "RSA with a private key which is not exportable from the HSM." + }, + { + "value": "oct", + "description": "Octet sequence (used to represent symmetric keys)" + }, + { + "value": "oct-HSM", + "description": "Octet sequence (used to represent symmetric keys) which is not exportable from the HSM." + } + ] + } + }, + "key_ops": { + "type": "array", + "items": { + "type": "string", + "description": "Supported key operations." + } + }, + "n": { + "type": "string", + "format": "base64url", + "description": "RSA modulus." + }, + "e": { + "type": "string", + "format": "base64url", + "description": "RSA public exponent." + }, + "d": { + "type": "string", + "format": "base64url", + "description": "RSA private exponent, or the D component of an EC private key." + }, + "dp": { + "x-ms-client-name": "DP", + "type": "string", + "format": "base64url", + "description": "RSA private key parameter." + }, + "dq": { + "x-ms-client-name": "DQ", + "type": "string", + "format": "base64url", + "description": "RSA private key parameter." + }, + "qi": { + "x-ms-client-name": "QI", + "type": "string", + "format": "base64url", + "description": "RSA private key parameter." + }, + "p": { + "type": "string", + "format": "base64url", + "description": "RSA secret prime." + }, + "q": { + "type": "string", + "format": "base64url", + "description": "RSA secret prime, with p < q." + }, + "k": { + "type": "string", + "format": "base64url", + "description": "Symmetric key." + }, + "key_hsm": { + "x-ms-client-name": "t", + "type": "string", + "format": "base64url", + "description": "Protected Key, used with 'Bring Your Own Key'." + }, + "crv": { + "type": "string", + "description": "Elliptic curve name. For valid values, see JsonWebKeyCurveName.", + "enum": [ + "P-256", + "P-384", + "P-521", + "P-256K" + ], + "x-ms-enum": { + "name": "JsonWebKeyCurveName", + "modelAsString": true, + "values": [ + { + "value": "P-256", + "description": "The NIST P-256 elliptic curve, AKA SECG curve SECP256R1." + }, + { + "value": "P-384", + "description": "The NIST P-384 elliptic curve, AKA SECG curve SECP384R1." + }, + { + "value": "P-521", + "description": "The NIST P-521 elliptic curve, AKA SECG curve SECP521R1." + }, + { + "value": "P-256K", + "description": "The SECG SECP256K1 elliptic curve." + } + ] + } + }, + "x": { + "type": "string", + "format": "base64url", + "description": "X component of an EC public key." + }, + "y": { + "type": "string", + "format": "base64url", + "description": "Y component of an EC public key." + } + }, + "description": "As of http://tools.ietf.org/html/draft-ietf-jose-json-web-key-18" + }, + "KeyAttributes": { + "allOf": [ + { + "$ref": "common.json#/definitions/Attributes" + } + ], + "properties": { + "recoverableDays": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "softDelete data retention days. Value should be >=7 and <=90 when softDelete enabled, otherwise 0." + }, + "recoveryLevel": { + "type": "string", + "description": "Reflects the deletion recovery level currently in effect for keys in the current vault. If it contains 'Purgeable' the key can be permanently deleted by a privileged user; otherwise, only the system can purge the key, at the end of the retention interval.", + "enum": [ + "Purgeable", + "Recoverable+Purgeable", + "Recoverable", + "Recoverable+ProtectedSubscription", + "CustomizedRecoverable+Purgeable", + "CustomizedRecoverable", + "CustomizedRecoverable+ProtectedSubscription" + ], + "x-ms-enum": { + "name": "DeletionRecoveryLevel", + "modelAsString": true, + "values": [ + { + "value": "Purgeable", + "description": "Denotes a vault state in which deletion is an irreversible operation, without the possibility for recovery. This level corresponds to no protection being available against a Delete operation; the data is irretrievably lost upon accepting a Delete operation at the entity level or higher (vault, resource group, subscription etc.)" + }, + { + "value": "Recoverable+Purgeable", + "description": "Denotes a vault state in which deletion is recoverable, and which also permits immediate and permanent deletion (i.e. purge). This level guarantees the recoverability of the deleted entity during the retention interval (90 days), unless a Purge operation is requested, or the subscription is cancelled. System wil permanently delete it after 90 days, if not recovered" + }, + { + "value": "Recoverable", + "description": "Denotes a vault state in which deletion is recoverable without the possibility for immediate and permanent deletion (i.e. purge). This level guarantees the recoverability of the deleted entity during the retention interval(90 days) and while the subscription is still available. System wil permanently delete it after 90 days, if not recovered" + }, + { + "value": "Recoverable+ProtectedSubscription", + "description": "Denotes a vault and subscription state in which deletion is recoverable within retention interval (90 days), immediate and permanent deletion (i.e. purge) is not permitted, and in which the subscription itself cannot be permanently canceled. System wil permanently delete it after 90 days, if not recovered" + }, + { + "value": "CustomizedRecoverable+Purgeable", + "description": "Denotes a vault state in which deletion is recoverable, and which also permits immediate and permanent deletion (i.e. purge when 7<= SoftDeleteRetentionInDays < 90). This level guarantees the recoverability of the deleted entity during the retention interval, unless a Purge operation is requested, or the subscription is cancelled." + }, + { + "value": "CustomizedRecoverable", + "description": "Denotes a vault state in which deletion is recoverable without the possibility for immediate and permanent deletion (i.e. purge when 7<= SoftDeleteRetentionInDays < 90).This level guarantees the recoverability of the deleted entity during the retention interval and while the subscription is still available." + }, + { + "value": "CustomizedRecoverable+ProtectedSubscription", + "description": "Denotes a vault and subscription state in which deletion is recoverable, immediate and permanent deletion (i.e. purge) is not permitted, and in which the subscription itself cannot be permanently canceled when 7<= SoftDeleteRetentionInDays < 90. This level guarantees the recoverability of the deleted entity during the retention interval, and also reflects the fact that the subscription itself cannot be cancelled." + } + ] + }, + "readOnly": true, + "x-nullable": false + } + }, + "description": "The attributes of a key managed by the key vault service." + }, + "KeyBundle": { + "properties": { + "key": { + "$ref": "#/definitions/JsonWebKey", + "description": "The Json web key." + }, + "attributes": { + "$ref": "#/definitions/KeyAttributes", + "description": "The key management attributes." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + }, + "managed": { + "type": "boolean", + "readOnly": true, + "description": "True if the key's lifetime is managed by key vault. If this is a key backing a certificate, then managed will be true." + } + }, + "description": "A KeyBundle consisting of a WebKey plus its attributes." + }, + "KeyItem": { + "properties": { + "kid": { + "type": "string", + "description": "Key identifier." + }, + "attributes": { + "$ref": "#/definitions/KeyAttributes", + "description": "The key management attributes." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + }, + "managed": { + "type": "boolean", + "readOnly": true, + "description": "True if the key's lifetime is managed by key vault. If this is a key backing a certificate, then managed will be true." + } + }, + "description": "The key item containing key metadata." + }, + "DeletedKeyBundle": { + "allOf": [ + { + "$ref": "#/definitions/KeyBundle" + } + ], + "properties": { + "recoveryId": { + "type": "string", + "description": "The url of the recovery object, used to identify and recover the deleted key." + }, + "scheduledPurgeDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the key is scheduled to be purged, in UTC" + }, + "deletedDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the key was deleted, in UTC" + } + }, + "description": "A DeletedKeyBundle consisting of a WebKey plus its Attributes and deletion info" + }, + "DeletedKeyItem": { + "allOf": [ + { + "$ref": "#/definitions/KeyItem" + } + ], + "properties": { + "recoveryId": { + "type": "string", + "description": "The url of the recovery object, used to identify and recover the deleted key." + }, + "scheduledPurgeDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the key is scheduled to be purged, in UTC" + }, + "deletedDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the key was deleted, in UTC" + } + }, + "description": "The deleted key item containing the deleted key metadata and information about deletion." + }, + "KeyProperties": { + "properties": { + "exportable": { + "type": "boolean", + "description": "Not supported in this version. Indicates if the private key can be exported." + }, + "kty": { + "x-ms-client-name": "keyType", + "type": "string", + "description": "The type of key pair to be used for the certificate.", + "enum": [ + "EC", + "EC-HSM", + "RSA", + "RSA-HSM", + "oct", + "oct-HSM" + ], + "x-ms-enum": { + "name": "JsonWebKeyType", + "modelAsString": true + } + }, + "key_size": { + "type": "integer", + "format": "int32", + "description": "The key size in bits. For example: 2048, 3072, or 4096 for RSA." + }, + "reuse_key": { + "type": "boolean", + "description": "Indicates if the same key pair will be used on certificate renewal." + }, + "crv": { + "x-ms-client-name": "curve", + "type": "string", + "description": "Elliptic curve name. For valid values, see JsonWebKeyCurveName.", + "enum": [ + "P-256", + "P-384", + "P-521", + "P-256K" + ], + "x-ms-enum": { + "name": "JsonWebKeyCurveName", + "modelAsString": true + } + } + }, + "description": "Properties of the key pair backing a certificate." + }, + "KeyCreateParameters": { + "properties": { + "kty": { + "type": "string", + "minLength": 1, + "description": "The type of key to create. For valid values, see JsonWebKeyType.", + "enum": [ + "EC", + "EC-HSM", + "RSA", + "RSA-HSM", + "oct", + "oct-HSM" + ], + "x-ms-enum": { + "name": "JsonWebKeyType", + "modelAsString": true + } + }, + "key_size": { + "type": "integer", + "format": "int32", + "description": "The key size in bits. For example: 2048, 3072, or 4096 for RSA." + }, + "public_exponent": { + "type": "integer", + "format": "int32", + "description": "The public exponent for a RSA key." + }, + "key_ops": { + "type": "array", + "items": { + "type": "string", + "description": "JSON web key operations. For more information, see JsonWebKeyOperation.", + "enum": [ + "encrypt", + "decrypt", + "sign", + "verify", + "wrapKey", + "unwrapKey", + "import" + ], + "x-ms-enum": { + "name": "JsonWebKeyOperation", + "modelAsString": true + } + } + }, + "attributes": { + "x-ms-client-name": "keyAttributes", + "$ref": "#/definitions/KeyAttributes" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + }, + "crv": { + "x-ms-client-name": "curve", + "type": "string", + "description": "Elliptic curve name. For valid values, see JsonWebKeyCurveName.", + "enum": [ + "P-256", + "P-384", + "P-521", + "P-256K" + ], + "x-ms-enum": { + "name": "JsonWebKeyCurveName", + "modelAsString": true + } + } + }, + "description": "The key create parameters.", + "required": [ + "kty" + ] + }, + "KeyImportParameters": { + "properties": { + "Hsm": { + "type": "boolean", + "description": "Whether to import as a hardware key (HSM) or software key." + }, + "key": { + "$ref": "#/definitions/JsonWebKey", + "description": "The Json web key" + }, + "attributes": { + "x-ms-client-name": "keyAttributes", + "$ref": "#/definitions/KeyAttributes", + "description": "The key management attributes." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + } + }, + "description": "The key import parameters.", + "required": [ + "key" + ] + }, + "KeyOperationsParameters": { + "properties": { + "alg": { + "x-ms-client-name": "algorithm", + "type": "string", + "minLength": 1, + "description": "algorithm identifier", + "enum": [ + "RSA-OAEP", + "RSA-OAEP-256", + "RSA1_5", + "A128GCM", + "A192GCM", + "A256GCM", + "A128KW", + "A192KW", + "A256KW", + "A128CBC", + "A192CBC", + "A256CBC", + "A128CBCPAD", + "A192CBCPAD", + "A256CBCPAD" + ], + "x-ms-enum": { + "name": "JsonWebKeyEncryptionAlgorithm", + "modelAsString": true + } + }, + "value": { + "type": "string", + "format": "base64url" + }, + "iv": { + "type": "string", + "format": "base64url", + "description": "Initialization vector for symmetric algorithms." + }, + "aad": { + "type": "string", + "format": "base64url", + "description": "Additional data to authenticate but not encrypt/decrypt when using authenticated crypto algorithms." + }, + "tag": { + "type": "string", + "format": "base64url", + "description": "The tag to authenticate when performing decryption with an authenticated algorithm." + } + }, + "description": "The key operations parameters.", + "required": [ + "alg", + "value" + ] + }, + "KeySignParameters": { + "properties": { + "alg": { + "x-ms-client-name": "algorithm", + "type": "string", + "minLength": 1, + "description": "The signing/verification algorithm identifier. For more information on possible algorithm types, see JsonWebKeySignatureAlgorithm.", + "enum": [ + "PS256", + "PS384", + "PS512", + "RS256", + "RS384", + "RS512", + "RSNULL", + "ES256", + "ES384", + "ES512", + "ES256K" + ], + "x-ms-enum": { + "name": "JsonWebKeySignatureAlgorithm", + "modelAsString": true, + "values": [ + { + "value": "PS256", + "description": "RSASSA-PSS using SHA-256 and MGF1 with SHA-256, as described in https://tools.ietf.org/html/rfc7518" + }, + { + "value": "PS384", + "description": "RSASSA-PSS using SHA-384 and MGF1 with SHA-384, as described in https://tools.ietf.org/html/rfc7518" + }, + { + "value": "PS512", + "description": "RSASSA-PSS using SHA-512 and MGF1 with SHA-512, as described in https://tools.ietf.org/html/rfc7518" + }, + { + "value": "RS256", + "description": "RSASSA-PKCS1-v1_5 using SHA-256, as described in https://tools.ietf.org/html/rfc7518" + }, + { + "value": "RS384", + "description": "RSASSA-PKCS1-v1_5 using SHA-384, as described in https://tools.ietf.org/html/rfc7518" + }, + { + "value": "RS512", + "description": "RSASSA-PKCS1-v1_5 using SHA-512, as described in https://tools.ietf.org/html/rfc7518" + }, + { + "value": "RSNULL", + "description": "Reserved" + }, + { + "value": "ES256", + "description": "ECDSA using P-256 and SHA-256, as described in https://tools.ietf.org/html/rfc7518." + }, + { + "value": "ES384", + "description": "ECDSA using P-384 and SHA-384, as described in https://tools.ietf.org/html/rfc7518" + }, + { + "value": "ES512", + "description": "ECDSA using P-521 and SHA-512, as described in https://tools.ietf.org/html/rfc7518" + }, + { + "value": "ES256K", + "description": "ECDSA using P-256K and SHA-256, as described in https://tools.ietf.org/html/rfc7518" + } + ] + } + }, + "value": { + "type": "string", + "format": "base64url" + } + }, + "description": "The key operations parameters.", + "required": [ + "alg", + "value" + ] + }, + "KeyVerifyParameters": { + "properties": { + "alg": { + "x-ms-client-name": "algorithm", + "type": "string", + "minLength": 1, + "description": "The signing/verification algorithm. For more information on possible algorithm types, see JsonWebKeySignatureAlgorithm.", + "enum": [ + "PS256", + "PS384", + "PS512", + "RS256", + "RS384", + "RS512", + "RSNULL", + "ES256", + "ES384", + "ES512", + "ES256K" + ], + "x-ms-enum": { + "name": "JsonWebKeySignatureAlgorithm", + "modelAsString": true + } + }, + "digest": { + "type": "string", + "format": "base64url", + "description": "The digest used for signing." + }, + "value": { + "x-ms-client-name": "signature", + "type": "string", + "format": "base64url", + "description": "The signature to be verified." + } + }, + "description": "The key verify parameters.", + "required": [ + "alg", + "digest", + "value" + ] + }, + "KeyUpdateParameters": { + "properties": { + "key_ops": { + "type": "array", + "items": { + "type": "string", + "description": "JSON web key operations. For more information, see JsonWebKeyOperation.", + "enum": [ + "encrypt", + "decrypt", + "sign", + "verify", + "wrapKey", + "unwrapKey", + "import" + ], + "x-ms-enum": { + "name": "JsonWebKeyOperation", + "modelAsString": true + } + }, + "description": "Json web key operations. For more information on possible key operations, see JsonWebKeyOperation." + }, + "attributes": { + "x-ms-client-name": "keyAttributes", + "$ref": "#/definitions/KeyAttributes" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + } + }, + "description": "The key update parameters." + }, + "KeyRestoreParameters": { + "properties": { + "value": { + "type": "string", + "x-ms-client-name": "keyBundleBackup", + "format": "base64url", + "description": "The backup blob associated with a key bundle." + } + }, + "description": "The key restore parameters.", + "required": [ + "value" + ] + }, + "KeyOperationResult": { + "properties": { + "kid": { + "type": "string", + "description": "Key identifier", + "readOnly": true + }, + "value": { + "x-ms-client-name": "result", + "type": "string", + "format": "base64url", + "readOnly": true + }, + "iv": { + "type": "string", + "format": "base64url", + "readOnly": true + }, + "tag": { + "type": "string", + "x-ms-client-name": "authenticationTag", + "format": "base64url", + "readOnly": true + }, + "aad": { + "type": "string", + "x-ms-client-name": "additionalAuthenticatedData", + "format": "base64url", + "readOnly": true + } + }, + "description": "The key operation result." + }, + "KeyVerifyResult": { + "properties": { + "value": { + "type": "boolean", + "readOnly": true, + "description": "True if the signature is verified, otherwise false." + } + }, + "description": "The key verify result." + }, + "KeyListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/KeyItem" + }, + "readOnly": true, + "description": "A response message containing a list of keys in the key vault along with a link to the next page of keys." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of keys." + } + }, + "description": "The key list result." + }, + "DeletedKeyListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeletedKeyItem" + }, + "readOnly": true, + "description": "A response message containing a list of deleted keys in the vault along with a link to the next page of deleted keys" + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of deleted keys." + } + }, + "description": "A list of keys that have been deleted in this vault." + }, + "BackupKeyResult": { + "properties": { + "value": { + "type": "string", + "format": "base64url", + "readOnly": true, + "description": "The backup blob containing the backed up key." + } + }, + "description": "The backup key result, containing the backup blob." + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client API version." + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/rbac.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/rbac.json new file mode 100644 index 000000000000..2a14101e482f --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/rbac.json @@ -0,0 +1,902 @@ +{ + "swagger": "2.0", + "info": { + "title": "KeyVaultClient", + "description": "The key vault client performs cryptographic key operations and vault operations against the Key Vault service.", + "version": "7.2" + }, + "x-ms-parameterized-host": { + "hostTemplate": "{vaultBaseUrl}", + "useSchemePrefix": false, + "positionInOperation": "first", + "parameters": [ + { + "name": "vaultBaseUrl", + "description": "The vault name, for example https://myvault.vault.azure.net.", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true + } + ] + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/{scope}/providers/Microsoft.Authorization/roleDefinitions/{roleDefinitionName}": { + "delete": { + "tags": [ + "RoleDefinitions" + ], + "operationId": "RoleDefinitions_Delete", + "description": "Deletes a custom role definition.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role definition to delete. Managed HSM only supports '/'.", + "x-ms-skip-url-encoding": true + }, + { + "name": "roleDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name (GUID) of the role definition to delete." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the role definition that was deleted.", + "schema": { + "$ref": "#/definitions/RoleDefinition" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "DeleteRoleDefinition": { + "$ref": "./examples/DeleteRoleDefinition-example.json" + } + } + }, + "put": { + "tags": [ + "RoleDefinitions" + ], + "operationId": "RoleDefinitions_CreateOrUpdate", + "description": "Creates or updates a custom role definition.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role definition to create or update. Managed HSM only supports '/'.", + "x-ms-skip-url-encoding": true + }, + { + "name": "roleDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the role definition to create or update. It can be any valid GUID." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RoleDefinitionCreateParameters" + }, + "description": "Parameters for the role definition." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Created - Returns information about the role definition.", + "schema": { + "$ref": "#/definitions/RoleDefinition" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "PutRoleDefinition": { + "$ref": "./examples/PutRoleDefinition-example.json" + } + } + }, + "get": { + "tags": [ + "RoleDefinitions" + ], + "operationId": "RoleDefinitions_Get", + "description": "Get the specified role definition.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role definition to get. Managed HSM only supports '/'.", + "x-ms-skip-url-encoding": true + }, + { + "name": "roleDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the role definition to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the role definition.", + "schema": { + "$ref": "#/definitions/RoleDefinition" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "GetRoleAssignments": { + "$ref": "./examples/GetRoleDefinition-example.json" + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/roleDefinitions": { + "get": { + "tags": [ + "RoleDefinitions" + ], + "operationId": "RoleDefinitions_List", + "description": "Get all role definitions that are applicable at scope and above.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role definition.", + "x-ms-skip-url-encoding": true + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. Use atScopeAndBelow filter to search below the given scope as well." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of role definitions.", + "schema": { + "$ref": "#/definitions/RoleDefinitionListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "ListRoleDefinitions": { + "$ref": "./examples/ListRoleDefinitions-example.json" + } + }, + "x-ms-odata": "#/definitions/RoleDefinitionFilter" + } + }, + "/{scope}/providers/Microsoft.Authorization/roleAssignments/{roleAssignmentName}": { + "delete": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_Delete", + "description": "Deletes a role assignment.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role assignment to delete.", + "x-ms-skip-url-encoding": true + }, + { + "name": "roleAssignmentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the role assignment to delete." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the role assignment.", + "schema": { + "$ref": "#/definitions/RoleAssignment" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "DeleteRoleAssignments": { + "$ref": "./examples/DeleteRoleAssignments-example.json" + } + } + }, + "put": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_Create", + "description": "Creates a role assignment.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role assignment to create.", + "x-ms-skip-url-encoding": true + }, + { + "name": "roleAssignmentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the role assignment to create. It can be any valid GUID." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RoleAssignmentCreateParameters" + }, + "description": "Parameters for the role assignment." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Created - Returns information about the role assignment.", + "schema": { + "$ref": "#/definitions/RoleAssignment" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "PutRoleAssignments": { + "$ref": "./examples/PutRoleAssignments-example.json" + } + } + }, + "get": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_Get", + "description": "Get the specified role assignment.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role assignment.", + "x-ms-skip-url-encoding": true + }, + { + "name": "roleAssignmentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the role assignment to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the role assignment.", + "schema": { + "$ref": "#/definitions/RoleAssignment" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "GetRoleAssignments": { + "$ref": "./examples/GetRoleAssignments-example.json" + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/roleAssignments": { + "get": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_ListForScope", + "description": "Gets role assignments for a scope.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role assignments.", + "x-ms-skip-url-encoding": true + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. Use $filter=atScope() to return all role assignments at or above the scope. Use $filter=principalId eq {id} to return all role assignments at, above or below the scope for the specified principal." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of role assignments.", + "schema": { + "$ref": "#/definitions/RoleAssignmentListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "ListRoleAssignments": { + "$ref": "./examples/ListRoleAssignments-example.json" + } + }, + "x-ms-odata": "#/definitions/RoleAssignmentFilter" + } + } + }, + "definitions": { + "RoleAssignmentFilter": { + "properties": { + "principalId": { + "type": "string", + "description": "Returns role assignment of the specific principal." + } + }, + "description": "Role Assignments filter" + }, + "RoleAssignmentPropertiesWithScope": { + "properties": { + "scope": { + "$ref": "#/definitions/RoleScope" + }, + "roleDefinitionId": { + "type": "string", + "description": "The role definition ID." + }, + "principalId": { + "type": "string", + "description": "The principal ID." + } + }, + "description": "Role assignment properties with scope." + }, + "RoleAssignment": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The role assignment ID." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The role assignment name." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "The role assignment type." + }, + "properties": { + "$ref": "#/definitions/RoleAssignmentPropertiesWithScope", + "description": "Role assignment properties." + } + }, + "description": "Role Assignments" + }, + "RoleAssignmentListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RoleAssignment" + }, + "description": "Role assignment list." + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "Role assignment list operation result." + }, + "RoleAssignmentProperties": { + "properties": { + "roleDefinitionId": { + "type": "string", + "description": "The role definition ID used in the role assignment." + }, + "principalId": { + "type": "string", + "description": "The principal ID assigned to the role. This maps to the ID inside the Active Directory. It can point to a user, service principal, or security group." + } + }, + "required": [ + "roleDefinitionId", + "principalId" + ], + "description": "Role assignment properties." + }, + "RoleDefinitionCreateParameters": { + "properties": { + "properties": { + "$ref": "#/definitions/RoleDefinitionProperties", + "description": "Role definition properties." + } + }, + "required": [ + "properties" + ], + "description": "Role definition create parameters." + }, + "RoleAssignmentCreateParameters": { + "properties": { + "properties": { + "$ref": "#/definitions/RoleAssignmentProperties", + "description": "Role assignment properties." + } + }, + "required": [ + "properties" + ], + "description": "Role assignment create parameters." + }, + "RoleDefinitionFilter": { + "properties": { + "roleName": { + "type": "string", + "description": "Returns role definition with the specific name." + } + }, + "description": "Role Definitions filter" + }, + "Permission": { + "properties": { + "actions": { + "type": "array", + "description": "Action permissions that are granted.", + "items": { + "type": "string" + } + }, + "notActions": { + "type": "array", + "description": "Action permissions that are excluded but not denied. They may be granted by other role definitions assigned to a principal.", + "items": { + "type": "string", + "description": "Not actions." + } + }, + "dataActions": { + "type": "array", + "description": "Data action permissions that are granted.", + "items": { + "$ref": "#/definitions/DataAction" + } + }, + "notDataActions": { + "type": "array", + "description": "Data action permissions that are excluded but not denied. They may be granted by other role definitions assigned to a principal.", + "items": { + "$ref": "#/definitions/DataAction" + } + } + }, + "description": "Role definition permissions." + }, + "RoleDefinitionProperties": { + "properties": { + "roleName": { + "type": "string", + "description": "The role name." + }, + "description": { + "type": "string", + "description": "The role definition description." + }, + "type": { + "type": "string", + "description": "The role type.", + "enum": [ + "AKVBuiltInRole", + "CustomRole" + ], + "x-ms-enum": { + "name": "RoleType", + "modelAsString": true, + "values": [ + { + "name": "BuiltInRole", + "value": "AKVBuiltInRole", + "description": "Built in role." + }, + { + "value": "CustomRole", + "description": "Custom role." + } + ] + }, + "x-ms-client-name": "roleType" + }, + "permissions": { + "type": "array", + "items": { + "$ref": "#/definitions/Permission" + }, + "description": "Role definition permissions." + }, + "assignableScopes": { + "type": "array", + "items": { + "$ref": "#/definitions/RoleScope" + }, + "description": "Role definition assignable scopes." + } + }, + "description": "Role definition properties." + }, + "RoleDefinition": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The role definition ID." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The role definition name." + }, + "type": { + "type": "string", + "description": "The role definition type.", + "readOnly": true, + "enum": [ + "Microsoft.Authorization/roleDefinitions" + ], + "x-ms-enum": { + "name": "RoleDefinitionType", + "modelAsString": true + } + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RoleDefinitionProperties", + "description": "Role definition properties." + } + }, + "description": "Role definition." + }, + "RoleDefinitionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RoleDefinition" + }, + "description": "Role definition list." + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "Role definition list operation result." + }, + "RoleScope": { + "type": "string", + "description": "The role scope.", + "enum": [ + "/", + "/keys" + ], + "x-ms-enum": { + "name": "RoleScope", + "modelAsString": true, + "values": [ + { + "name": "Global", + "value": "/", + "description": "Global scope" + }, + { + "name": "Keys", + "value": "/keys", + "description": "Keys scope" + } + ] + } + }, + "DataAction": { + "type": "string", + "description": "Supported permissions for data actions.", + "enum": [ + "Microsoft.KeyVault/managedHsm/keys/read/action", + "Microsoft.KeyVault/managedHsm/keys/write/action", + "Microsoft.KeyVault/managedHsm/keys/deletedKeys/read/action", + "Microsoft.KeyVault/managedHsm/keys/deletedKeys/recover/action", + "Microsoft.KeyVault/managedHsm/keys/backup/action", + "Microsoft.KeyVault/managedHsm/keys/restore/action", + "Microsoft.KeyVault/managedHsm/roleAssignments/delete/action", + "Microsoft.KeyVault/managedHsm/roleAssignments/read/action", + "Microsoft.KeyVault/managedHsm/roleAssignments/write/action", + "Microsoft.KeyVault/managedHsm/roleDefinitions/read/action", + "Microsoft.KeyVault/managedHsm/keys/encrypt/action", + "Microsoft.KeyVault/managedHsm/keys/decrypt/action", + "Microsoft.KeyVault/managedHsm/keys/wrap/action", + "Microsoft.KeyVault/managedHsm/keys/unwrap/action", + "Microsoft.KeyVault/managedHsm/keys/sign/action", + "Microsoft.KeyVault/managedHsm/keys/verify/action", + "Microsoft.KeyVault/managedHsm/keys/create", + "Microsoft.KeyVault/managedHsm/keys/delete", + "Microsoft.KeyVault/managedHsm/keys/export/action", + "Microsoft.KeyVault/managedHsm/keys/import/action", + "Microsoft.KeyVault/managedHsm/keys/deletedKeys/delete", + "Microsoft.KeyVault/managedHsm/securitydomain/download/action", + "Microsoft.KeyVault/managedHsm/securitydomain/upload/action", + "Microsoft.KeyVault/managedHsm/securitydomain/upload/read", + "Microsoft.KeyVault/managedHsm/securitydomain/transferkey/read", + "Microsoft.KeyVault/managedHsm/backup/start/action", + "Microsoft.KeyVault/managedHsm/restore/start/action", + "Microsoft.KeyVault/managedHsm/backup/status/action", + "Microsoft.KeyVault/managedHsm/restore/status/action" + ], + "x-ms-enum": { + "name": "DataAction", + "modelAsString": true, + "values": [ + { + "name": "ReadHsmKey", + "value": "Microsoft.KeyVault/managedHsm/keys/read/action", + "description": "Read HSM key metadata." + }, + { + "name": "WriteHsmKey", + "value": "Microsoft.KeyVault/managedHsm/keys/write/action", + "description": "Update an HSM key." + }, + { + "name": "ReadDeletedHsmKey", + "value": "Microsoft.KeyVault/managedHsm/keys/deletedKeys/read/action", + "description": "Read deleted HSM key." + }, + { + "name": "RecoverDeletedHsmKey", + "value": "Microsoft.KeyVault/managedHsm/keys/deletedKeys/recover/action", + "description": "Recover deleted HSM key." + }, + { + "name": "BackupHsmKeys", + "value": "Microsoft.KeyVault/managedHsm/keys/backup/action", + "description": "Backup HSM keys." + }, + { + "name": "RestoreHsmKeys", + "value": "Microsoft.KeyVault/managedHsm/keys/restore/action", + "description": "Restore HSM keys." + }, + { + "name": "DeleteRoleAssignment", + "value": "Microsoft.KeyVault/managedHsm/roleAssignments/delete/action", + "description": "Delete role assignment." + }, + { + "name": "GetRoleAssignment", + "value": "Microsoft.KeyVault/managedHsm/roleAssignments/read/action", + "description": "Get role assignment." + }, + { + "name": "WriteRoleAssignment", + "value": "Microsoft.KeyVault/managedHsm/roleAssignments/write/action", + "description": "Create or update role assignment." + }, + { + "name": "ReadRoleDefinition", + "value": "Microsoft.KeyVault/managedHsm/roleDefinitions/read/action", + "description": "Get role definition." + }, + { + "name": "EncryptHsmKey", + "value": "Microsoft.KeyVault/managedHsm/keys/encrypt/action", + "description": "Encrypt using an HSM key." + }, + { + "name": "DecryptHsmKey", + "value": "Microsoft.KeyVault/managedHsm/keys/decrypt/action", + "description": "Decrypt using an HSM key." + }, + { + "name": "WrapHsmKey", + "value": "Microsoft.KeyVault/managedHsm/keys/wrap/action", + "description": "Wrap using an HSM key." + }, + { + "name": "UnwrapHsmKey", + "value": "Microsoft.KeyVault/managedHsm/keys/unwrap/action", + "description": "Unwrap using an HSM key." + }, + { + "name": "SignHsmKey", + "value": "Microsoft.KeyVault/managedHsm/keys/sign/action", + "description": "Sign using an HSM key." + }, + { + "name": "VerifyHsmKey", + "value": "Microsoft.KeyVault/managedHsm/keys/verify/action", + "description": "Verify using an HSM key." + }, + { + "name": "CreateHsmKey", + "value": "Microsoft.KeyVault/managedHsm/keys/create", + "description": "Create an HSM key." + }, + { + "name": "DeleteHsmKey", + "value": "Microsoft.KeyVault/managedHsm/keys/delete", + "description": "Delete an HSM key." + }, + { + "name": "ExportHsmKey", + "value": "Microsoft.KeyVault/managedHsm/keys/export/action", + "description": "Export an HSM key." + }, + { + "name": "ImportHsmKey", + "value": "Microsoft.KeyVault/managedHsm/keys/import/action", + "description": "Import an HSM key." + }, + { + "name": "PurgeDeletedHsmKey", + "value": "Microsoft.KeyVault/managedHsm/keys/deletedKeys/delete", + "description": "Purge a deleted HSM key." + }, + { + "name": "DownloadHsmSecurityDomain", + "value": "Microsoft.KeyVault/managedHsm/securitydomain/download/action", + "description": "Download an HSM security domain." + }, + { + "name": "UploadHsmSecurityDomain", + "value": "Microsoft.KeyVault/managedHsm/securitydomain/upload/action", + "description": "Upload an HSM security domain." + }, + { + "name": "ReadHsmSecurityDomainStatus", + "value": "Microsoft.KeyVault/managedHsm/securitydomain/upload/read", + "description": "Check the status of the HSM security domain exchange file." + }, + { + "name": "ReadHsmSecurityDomainTransferKey", + "value": "Microsoft.KeyVault/managedHsm/securitydomain/transferkey/read", + "description": "Download an HSM security domain transfer key." + }, + { + "name": "StartHsmBackup", + "value": "Microsoft.KeyVault/managedHsm/backup/start/action", + "description": "Start an HSM backup." + }, + { + "name": "StartHsmRestore", + "value": "Microsoft.KeyVault/managedHsm/restore/start/action", + "description": "Start an HSM restore." + }, + { + "name": "ReadHsmBackupStatus", + "value": "Microsoft.KeyVault/managedHsm/backup/status/action", + "description": "Read an HSM backup status." + }, + { + "name": "ReadHsmRestoreStatus", + "value": "Microsoft.KeyVault/managedHsm/restore/status/action", + "description": "Read an HSM restore status." + } + ] + } + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client API version." + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/secrets.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/secrets.json new file mode 100644 index 000000000000..406e02ce990b --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/secrets.json @@ -0,0 +1,891 @@ +{ + "swagger": "2.0", + "info": { + "title": "KeyVaultClient", + "description": "The key vault client performs cryptographic key operations and vault operations against the Key Vault service.", + "version": "7.2" + }, + "x-ms-parameterized-host": { + "hostTemplate": "{vaultBaseUrl}", + "useSchemePrefix": false, + "positionInOperation": "first", + "parameters": [ + { + "name": "vaultBaseUrl", + "description": "The vault name, for example https://myvault.vault.azure.net.", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true + } + ] + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/secrets/{secret-name}": { + "put": { + "tags": [ + "Secrets" + ], + "operationId": "SetSecret", + "summary": "Sets a secret in a specified key vault.", + "description": " The SET operation adds a secret to the Azure Key Vault. If the named secret already exists, Azure Key Vault creates a new version of that secret. This operation requires the secrets/set permission.", + "parameters": [ + { + "name": "secret-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z-]+$", + "description": "The name of the secret." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/SecretSetParameters" + }, + "description": "The parameters for setting the secret." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A secret bundle containing the result of the set secret request.", + "schema": { + "$ref": "#/definitions/SecretBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "SetSecret": { + "$ref": "./examples/SetSecret-example.json" + } + } + }, + "delete": { + "tags": [ + "Secrets" + ], + "operationId": "DeleteSecret", + "summary": "Deletes a secret from a specified key vault.", + "description": "The DELETE operation applies to any secret stored in Azure Key Vault. DELETE cannot be applied to an individual version of a secret. This operation requires the secrets/delete permission.", + "parameters": [ + { + "name": "secret-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the secret." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The deleted secret and information on when the secret will be deleted, and how to recover the deleted secret.", + "schema": { + "$ref": "#/definitions/DeletedSecretBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "DeleteSecret": { + "$ref": "./examples/DeleteSecret-example.json" + } + } + } + }, + "/secrets/{secret-name}/{secret-version}": { + "patch": { + "tags": [ + "Secrets" + ], + "operationId": "UpdateSecret", + "summary": "Updates the attributes associated with a specified secret in a given key vault.", + "description": "The UPDATE operation changes specified attributes of an existing stored secret. Attributes that are not specified in the request are left unchanged. The value of a secret itself cannot be changed. This operation requires the secrets/set permission.", + "parameters": [ + { + "name": "secret-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the secret." + }, + { + "name": "secret-version", + "in": "path", + "required": true, + "type": "string", + "description": "The version of the secret." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/SecretUpdateParameters" + }, + "description": "The parameters for update secret operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The updated secret.", + "schema": { + "$ref": "#/definitions/SecretBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "UpdateSecret": { + "$ref": "./examples/UpdateSecret-example.json" + } + } + }, + "get": { + "tags": [ + "Secrets" + ], + "operationId": "GetSecret", + "summary": "Get a specified secret from a given key vault.", + "description": "The GET operation is applicable to any secret stored in Azure Key Vault. This operation requires the secrets/get permission.", + "parameters": [ + { + "name": "secret-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the secret." + }, + { + "name": "secret-version", + "in": "path", + "required": true, + "type": "string", + "description": "The version of the secret. This URI fragment is optional. If not specified, the latest version of the secret is returned." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The retrieved secret.", + "schema": { + "$ref": "#/definitions/SecretBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "GetSecret": { + "$ref": "./examples/GetSecret-example.json" + } + } + } + }, + "/secrets": { + "get": { + "tags": [ + "Secrets" + ], + "operationId": "GetSecrets", + "summary": "List secrets in a specified key vault.", + "description": "The Get Secrets operation is applicable to the entire vault. However, only the base secret identifier and its attributes are provided in the response. Individual secret versions are not listed in the response. This operation requires the secrets/list permission.", + "parameters": [ + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified, the service will return up to 25 results." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of secrets in the vault along with a link to the next page of secrets.", + "schema": { + "$ref": "#/definitions/SecretListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetSecrets": { + "$ref": "./examples/GetSecrets-example.json" + } + } + } + }, + "/secrets/{secret-name}/versions": { + "get": { + "tags": [ + "Secrets" + ], + "operationId": "GetSecretVersions", + "summary": "List all versions of the specified secret.", + "description": "The full secret identifier and attributes are provided in the response. No values are returned for the secrets. This operations requires the secrets/list permission.", + "parameters": [ + { + "name": "secret-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the secret." + }, + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified, the service will return up to 25 results." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of secrets along with a link to the next page of secrets.", + "schema": { + "$ref": "#/definitions/SecretListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetSecretVersions": { + "$ref": "./examples/GetSecretVersions-example.json" + } + } + } + }, + "/deletedsecrets": { + "get": { + "tags": [ + "DeletedSecrets" + ], + "operationId": "GetDeletedSecrets", + "summary": "Lists deleted secrets for the specified vault.", + "description": "The Get Deleted Secrets operation returns the secrets that have been deleted for a vault enabled for soft-delete. This operation requires the secrets/list permission.", + "parameters": [ + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified the service will return up to 25 results." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of deleted secrets in the vault, along with a link to the next page of deleted secrets.", + "schema": { + "$ref": "#/definitions/DeletedSecretListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetDeletedSecrets": { + "$ref": "./examples/GetDeletedSecrets-example.json" + } + } + } + }, + "/deletedsecrets/{secret-name}": { + "get": { + "tags": [ + "DeletedSecrets" + ], + "operationId": "GetDeletedSecret", + "summary": "Gets the specified deleted secret.", + "description": "The Get Deleted Secret operation returns the specified deleted secret along with its attributes. This operation requires the secrets/get permission.", + "parameters": [ + { + "name": "secret-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the secret." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A secret bundle of the secret and its attributes.", + "schema": { + "$ref": "#/definitions/DeletedSecretBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "GetDeletedSecret": { + "$ref": "./examples/GetDeletedSecret-example.json" + } + } + }, + "delete": { + "tags": [ + "DeletedSecrets" + ], + "operationId": "PurgeDeletedSecret", + "summary": "Permanently deletes the specified secret.", + "description": "The purge deleted secret operation removes the secret permanently, without the possibility of recovery. This operation can only be enabled on a soft-delete enabled vault. This operation requires the secrets/purge permission.", + "parameters": [ + { + "name": "secret-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the secret." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No content signaling that the secret was purged forever." + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "PurgeDeletedSecret": { + "$ref": "./examples/PurgeDeletedSecret-example.json" + } + } + } + }, + "/deletedsecrets/{secret-name}/recover": { + "post": { + "tags": [ + "DeletedSecrets" + ], + "operationId": "RecoverDeletedSecret", + "summary": "Recovers the deleted secret to the latest version.", + "description": "Recovers the deleted secret in the specified vault. This operation can only be performed on a soft-delete enabled vault. This operation requires the secrets/recover permission.", + "parameters": [ + { + "name": "secret-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deleted secret." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A Secret bundle of the original secret and its attributes.", + "schema": { + "$ref": "#/definitions/SecretBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "RecoverDeletedSecret": { + "$ref": "./examples/RecoverDeletedSecret-example.json" + } + } + } + }, + "/secrets/{secret-name}/backup": { + "post": { + "tags": [ + "Secrets" + ], + "operationId": "BackupSecret", + "summary": "Backs up the specified secret.", + "description": "Requests that a backup of the specified secret be downloaded to the client. All versions of the secret will be downloaded. This operation requires the secrets/backup permission.", + "parameters": [ + { + "name": "secret-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the secret." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The backup blob containing the backed up secret.", + "schema": { + "$ref": "#/definitions/BackupSecretResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "BackupSecret": { + "$ref": "./examples/BackupSecret-example.json" + } + } + } + }, + "/secrets/restore": { + "post": { + "tags": [ + "Secrets" + ], + "operationId": "RestoreSecret", + "summary": "Restores a backed up secret to a vault.", + "description": "Restores a backed up secret, and all its versions, to a vault. This operation requires the secrets/restore permission.", + "parameters": [ + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/SecretRestoreParameters" + }, + "description": "The parameters to restore the secret." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Restored secret bundle in the vault.", + "schema": { + "$ref": "#/definitions/SecretBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "RestoreSecret": { + "$ref": "./examples/RestoreSecret-example.json" + } + } + } + } + }, + "definitions": { + "SecretBundle": { + "properties": { + "value": { + "type": "string", + "description": "The secret value." + }, + "id": { + "type": "string", + "description": "The secret id." + }, + "contentType": { + "type": "string", + "description": "The content type of the secret." + }, + "attributes": { + "$ref": "#/definitions/SecretAttributes", + "description": "The secret management attributes." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + }, + "kid": { + "type": "string", + "readOnly": true, + "description": "If this is a secret backing a KV certificate, then this field specifies the corresponding key backing the KV certificate." + }, + "managed": { + "type": "boolean", + "readOnly": true, + "description": "True if the secret's lifetime is managed by key vault. If this is a secret backing a certificate, then managed will be true." + } + }, + "description": "A secret consisting of a value, id and its attributes." + }, + "SecretItem": { + "properties": { + "id": { + "type": "string", + "description": "Secret identifier." + }, + "attributes": { + "$ref": "#/definitions/SecretAttributes", + "description": "The secret management attributes." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + }, + "contentType": { + "type": "string", + "description": "Type of the secret value such as a password." + }, + "managed": { + "type": "boolean", + "readOnly": true, + "description": "True if the secret's lifetime is managed by key vault. If this is a key backing a certificate, then managed will be true." + } + }, + "description": "The secret item containing secret metadata." + }, + "DeletedSecretBundle": { + "allOf": [ + { + "$ref": "#/definitions/SecretBundle" + } + ], + "properties": { + "recoveryId": { + "type": "string", + "description": "The url of the recovery object, used to identify and recover the deleted secret." + }, + "scheduledPurgeDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the secret is scheduled to be purged, in UTC" + }, + "deletedDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the secret was deleted, in UTC" + } + }, + "description": "A Deleted Secret consisting of its previous id, attributes and its tags, as well as information on when it will be purged." + }, + "DeletedSecretItem": { + "allOf": [ + { + "$ref": "#/definitions/SecretItem" + } + ], + "properties": { + "recoveryId": { + "type": "string", + "description": "The url of the recovery object, used to identify and recover the deleted secret." + }, + "scheduledPurgeDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the secret is scheduled to be purged, in UTC" + }, + "deletedDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the secret was deleted, in UTC" + } + }, + "description": "The deleted secret item containing metadata about the deleted secret." + }, + "SecretAttributes": { + "allOf": [ + { + "$ref": "common.json#/definitions/Attributes" + } + ], + "properties": { + "recoverableDays": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "softDelete data retention days. Value should be >=7 and <=90 when softDelete enabled, otherwise 0." + }, + "recoveryLevel": { + "type": "string", + "description": "Reflects the deletion recovery level currently in effect for secrets in the current vault. If it contains 'Purgeable', the secret can be permanently deleted by a privileged user; otherwise, only the system can purge the secret, at the end of the retention interval.", + "enum": [ + "Purgeable", + "Recoverable+Purgeable", + "Recoverable", + "Recoverable+ProtectedSubscription", + "CustomizedRecoverable+Purgeable", + "CustomizedRecoverable", + "CustomizedRecoverable+ProtectedSubscription" + ], + "x-ms-enum": { + "name": "DeletionRecoveryLevel", + "modelAsString": true, + "values": [ + { + "value": "Purgeable", + "description": "Denotes a vault state in which deletion is an irreversible operation, without the possibility for recovery. This level corresponds to no protection being available against a Delete operation; the data is irretrievably lost upon accepting a Delete operation at the entity level or higher (vault, resource group, subscription etc.)" + }, + { + "value": "Recoverable+Purgeable", + "description": "Denotes a vault state in which deletion is recoverable, and which also permits immediate and permanent deletion (i.e. purge). This level guarantees the recoverability of the deleted entity during the retention interval (90 days), unless a Purge operation is requested, or the subscription is cancelled. System wil permanently delete it after 90 days, if not recovered" + }, + { + "value": "Recoverable", + "description": "Denotes a vault state in which deletion is recoverable without the possibility for immediate and permanent deletion (i.e. purge). This level guarantees the recoverability of the deleted entity during the retention interval(90 days) and while the subscription is still available. System wil permanently delete it after 90 days, if not recovered" + }, + { + "value": "Recoverable+ProtectedSubscription", + "description": "Denotes a vault and subscription state in which deletion is recoverable within retention interval (90 days), immediate and permanent deletion (i.e. purge) is not permitted, and in which the subscription itself cannot be permanently canceled. System wil permanently delete it after 90 days, if not recovered" + }, + { + "value": "CustomizedRecoverable+Purgeable", + "description": "Denotes a vault state in which deletion is recoverable, and which also permits immediate and permanent deletion (i.e. purge when 7<= SoftDeleteRetentionInDays < 90). This level guarantees the recoverability of the deleted entity during the retention interval, unless a Purge operation is requested, or the subscription is cancelled." + }, + { + "value": "CustomizedRecoverable", + "description": "Denotes a vault state in which deletion is recoverable without the possibility for immediate and permanent deletion (i.e. purge when 7<= SoftDeleteRetentionInDays < 90).This level guarantees the recoverability of the deleted entity during the retention interval and while the subscription is still available." + }, + { + "value": "CustomizedRecoverable+ProtectedSubscription", + "description": "Denotes a vault and subscription state in which deletion is recoverable, immediate and permanent deletion (i.e. purge) is not permitted, and in which the subscription itself cannot be permanently canceled when 7<= SoftDeleteRetentionInDays < 90. This level guarantees the recoverability of the deleted entity during the retention interval, and also reflects the fact that the subscription itself cannot be cancelled." + } + ] + }, + "readOnly": true, + "x-nullable": false + } + }, + "description": "The secret management attributes." + }, + "SecretRestoreParameters": { + "properties": { + "value": { + "type": "string", + "x-ms-client-name": "secretBundleBackup", + "format": "base64url", + "description": "The backup blob associated with a secret bundle." + } + }, + "description": "The secret restore parameters.", + "required": [ + "value" + ] + }, + "SecretProperties": { + "properties": { + "contentType": { + "type": "string", + "description": "The media type (MIME type)." + } + }, + "description": "Properties of the key backing a certificate." + }, + "SecretSetParameters": { + "properties": { + "value": { + "type": "string", + "description": "The value of the secret." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + }, + "contentType": { + "type": "string", + "description": "Type of the secret value such as a password." + }, + "attributes": { + "x-ms-client-name": "secretAttributes", + "$ref": "#/definitions/SecretAttributes", + "description": "The secret management attributes." + } + }, + "description": "The secret set parameters.", + "required": [ + "value" + ] + }, + "SecretUpdateParameters": { + "properties": { + "contentType": { + "type": "string", + "description": "Type of the secret value such as a password." + }, + "attributes": { + "x-ms-client-name": "secretAttributes", + "$ref": "#/definitions/SecretAttributes", + "description": "The secret management attributes." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + } + }, + "description": "The secret update parameters." + }, + "SecretListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SecretItem" + }, + "readOnly": true, + "description": "A response message containing a list of secrets in the key vault along with a link to the next page of secrets." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of secrets." + } + }, + "description": "The secret list result." + }, + "DeletedSecretListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeletedSecretItem" + }, + "readOnly": true, + "description": "A response message containing a list of the deleted secrets in the vault along with a link to the next page of deleted secrets" + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of deleted secrets." + } + }, + "description": "The deleted secret list result" + }, + "BackupSecretResult": { + "properties": { + "value": { + "type": "string", + "format": "base64url", + "readOnly": true, + "description": "The backup blob containing the backed up secret." + } + }, + "description": "The backup secret result, containing the backup blob." + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client API version." + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/securitydomain.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/securitydomain.json new file mode 100644 index 000000000000..7257afea5782 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/securitydomain.json @@ -0,0 +1,384 @@ +{ + "swagger": "2.0", + "info": { + "title": "KeyVaultClient", + "description": "The key vault client performs cryptographic key operations and vault operations against the Key Vault service.", + "version": "7.2" + }, + "x-ms-parameterized-host": { + "hostTemplate": "{vaultBaseUrl}", + "useSchemePrefix": false, + "positionInOperation": "first", + "parameters": [ + { + "name": "vaultBaseUrl", + "description": "The vault name, for example https://myvault.vault.azure.net.", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true + } + ] + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/securitydomain/download/pending": { + "get": { + "tags": [ + "HSMSecurityDomain" + ], + "operationId": "HSMSecurityDomain_DownloadPending", + "description": "Retrieves the Security Domain download operation status", + "responses": { + "200": { + "description": "Security Domain download operation status", + "schema": { + "$ref": "#/definitions/SecurityDomainOperationStatus" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Find Security Domain download operation status": { + "$ref": "./examples/securitydomainoperationstatus-example.json" + } + } + } + }, + "/securitydomain/download": { + "post": { + "tags": [ + "HSMSecurityDomain" + ], + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "operationId": "HSMSecurityDomain_Download", + "description": "Retrieves the Security Domain from the managed HSM. Calling this endpoint can be used to activate a provisioned managed HSM resource.", + "parameters": [ + { + "in": "body", + "name": "CertificateInfoObject", + "required": true, + "schema": { + "$ref": "#/definitions/CertificateInfoObject" + }, + "description": "The Security Domain download operation requires customer to provide N certificates (minimum 3 and maximum 10) containing a public key in JWK format." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The response contains the Security Domain that is being confirmed.", + "schema": { + "$ref": "#/definitions/SecurityDomainObject" + }, + "headers": { + "Retry-After": { + "description": "The recommended number of seconds to wait before calling the URI specified in Azure-AsyncOperation.", + "type": "integer" + }, + "Azure-AsyncOperation": { + "description": "The URI to poll for completion status.", + "type": "string" + } + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Retrieve Security Domain": { + "$ref": "./examples/securitydomaindownloadpost-example.json" + } + } + } + }, + "/securitydomain/upload": { + "get": { + "tags": [ + "HSMSecurityDomain" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "operationId": "HSMSecurityDomain_TransferKey", + "description": "Retrieve Security Domain transfer key", + "responses": { + "200": { + "description": "Security Domain transfer key response", + "schema": { + "$ref": "#/definitions/TransferKey" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Retrieve Security Domain transfer key": { + "$ref": "./examples/securitydomaintransferkey-example.json" + } + } + }, + "post": { + "tags": [ + "HSMSecurityDomain" + ], + "operationId": "HSMSecurityDomain_Upload", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "description": "Restore the provided Security Domain.", + "parameters": [ + { + "in": "body", + "name": "security_domain", + "description": "The Security Domain to be restored.", + "required": true, + "schema": { + "$ref": "#/definitions/SecurityDomainObject" + } + } + ], + "responses": { + "202": { + "description": "Restore of the Security Domain started.", + "headers": { + "Retry-After": { + "description": "The recommended number of seconds to wait before calling the URI specified in Azure-AsyncOperation.", + "type": "integer" + }, + "Azure-AsyncOperation": { + "description": "The URI to poll for completion status.", + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/SecurityDomainOperationStatus" + } + }, + "204": { + "description": "Final response" + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Security Domain upload operation": { + "$ref": "./examples/securitydomainuploadoperation-example.json" + } + } + } + }, + "/securitydomain/upload/pending": { + "get": { + "tags": [ + "HSMSecurityDomain" + ], + "operationId": "HSMSecurityDomain_UploadPending", + "description": "Get Security Domain upload operation status", + "responses": { + "200": { + "description": "Security Domain upload operation status", + "schema": { + "$ref": "#/definitions/SecurityDomainOperationStatus" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Find Security Domain upload operation status": { + "$ref": "./examples/securitydomainoperationstatus-example.json" + } + } + } + } + }, + "definitions": { + "CertificateInfoObject": { + "properties": { + "certificates": { + "type": "array", + "items": { + "$ref": "#/definitions/SecurityDomainCertificateItem" + }, + "minItems": 3, + "maxItems": 10, + "uniqueItems": true, + "description": "Certificates needed from customer" + }, + "required": { + "description": "Customer to specify the number of certificates (minimum 2 and maximum 10) to restore Security Domain", + "type": "integer", + "default": 2, + "minimum": 2, + "maximum": 10 + } + }, + "required": [ + "certificates" + ] + }, + "SecurityDomainCertificateItem": { + "properties": { + "value": { + "$ref": "#/definitions/SecurityDomainJsonWebKey", + "description": "Customer generated certificate containing public key in JWK format" + } + }, + "required": [ + "value" + ] + }, + "TransferKey": { + "properties": { + "key_format": { + "type": "string", + "default": "jwk", + "description": "Specifies the format of the transfer key" + }, + "transfer_key": { + "$ref": "#/definitions/SecurityDomainJsonWebKey", + "description": "Specifies the transfer key in JWK format" + } + }, + "required": [ + "transfer_key" + ] + }, + "SecurityDomainObject": { + "properties": { + "value": { + "type": "string", + "description": "The Security Domain." + } + }, + "description": "The Security Domain.", + "required": [ + "value" + ] + }, + "SecurityDomainOperationStatus": { + "properties": { + "status": { + "description": "operation status", + "enum": [ + "Success", + "InProgress", + "Failed" + ], + "x-ms-enum": { + "modelAsString": false, + "name": "OperationStatus" + }, + "type": "string" + }, + "status_details": { + "type": "string" + } + } + }, + "SecurityDomainJsonWebKey": { + "properties": { + "kid": { + "type": "string", + "description": "Key identifier." + }, + "kty": { + "type": "string", + "description": "JsonWebKey Key Type (kty), as defined in https://tools.ietf.org/html/draft-ietf-jose-json-web-algorithms-40. For Security Domain this value must be RSA." + }, + "key_ops": { + "type": "array", + "items": { + "type": "string", + "description": "Supported key operations." + } + }, + "n": { + "type": "string", + "description": "RSA modulus." + }, + "e": { + "type": "string", + "description": "RSA public exponent." + }, + "x5c": { + "description": "X509 certificate chain parameter", + "type": "array", + "items": { + "type": "string" + } + }, + "use": { + "description": "Public Key Use Parameter. This is optional and if present must be enc.", + "type": "string" + }, + "x5t": { + "description": "X509 certificate SHA1 thumbprint. This is optional.", + "type": "string" + }, + "x5t#S256": { + "description": "X509 certificate SHA256 thumbprint.", + "type": "string" + }, + "alg": { + "description": "Algorithm intended for use with the key.", + "type": "string" + } + }, + "required": [ + "kty", + "key_ops", + "alg", + "kid", + "x5c", + "x5t#S256", + "n", + "e" + ] + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client API version." + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/storage.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/storage.json new file mode 100644 index 000000000000..c6b525e99736 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.2/storage.json @@ -0,0 +1,1622 @@ +{ + "swagger": "2.0", + "info": { + "title": "KeyVaultClient", + "description": "The key vault client performs cryptographic key operations and vault operations against the Key Vault service.", + "version": "7.2" + }, + "x-ms-parameterized-host": { + "hostTemplate": "{vaultBaseUrl}", + "useSchemePrefix": false, + "positionInOperation": "first", + "parameters": [ + { + "name": "vaultBaseUrl", + "description": "The vault name, for example https://myvault.vault.azure.net.", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true + } + ] + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/storage": { + "get": { + "tags": [ + "Storage" + ], + "operationId": "GetStorageAccounts", + "description": "List storage accounts managed by the specified key vault. This operation requires the storage/list permission.", + "parameters": [ + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified the service will return up to 25 results." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of storage accounts along with a link to the next page of storage accounts.", + "schema": { + "$ref": "#/definitions/StorageListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Storage account": { + "$ref": "./examples/listStorageAccount.json" + } + } + } + }, + "/deletedstorage": { + "get": { + "tags": [ + "DeletedStorage" + ], + "operationId": "GetDeletedStorageAccounts", + "summary": "Lists deleted storage accounts for the specified vault.", + "description": "The Get Deleted Storage Accounts operation returns the storage accounts that have been deleted for a vault enabled for soft-delete. This operation requires the storage/list permission.", + "parameters": [ + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified the service will return up to 25 results." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of deleted storage accounts in the vault, along with a link to the next page of deleted storage accounts.", + "schema": { + "$ref": "#/definitions/DeletedStorageListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Deleted Storage Accounts": { + "$ref": "./examples/listDeletedStorageAccount.json" + } + } + } + }, + "/deletedstorage/{storage-account-name}": { + "get": { + "tags": [ + "DeletedStorage" + ], + "operationId": "GetDeletedStorageAccount", + "summary": "Gets the specified deleted storage account.", + "description": "The Get Deleted Storage Account operation returns the specified deleted storage account along with its attributes. This operation requires the storage/get permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The deleted storage account and information on when it will be purged, and how to recover the deleted storage account.", + "schema": { + "$ref": "#/definitions/DeletedStorageBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Get Deleted Storage": { + "$ref": "./examples/getDeletedStorageAccount.json" + } + } + }, + "delete": { + "tags": [ + "DeletedStorage" + ], + "operationId": "PurgeDeletedStorageAccount", + "summary": "Permanently deletes the specified storage account.", + "description": "The purge deleted storage account operation removes the secret permanently, without the possibility of recovery. This operation can only be performed on a soft-delete enabled vault. This operation requires the storage/purge permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No content signaling that the storage account was purged forever." + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Purge Deleted Storage Account": { + "$ref": "./examples/purgeStorageAccount.json" + } + } + } + }, + "/deletedstorage/{storage-account-name}/recover": { + "post": { + "tags": [ + "DeletedStorage" + ], + "operationId": "RecoverDeletedStorageAccount", + "summary": "Recovers the deleted storage account.", + "description": "Recovers the deleted storage account in the specified vault. This operation can only be performed on a soft-delete enabled vault. This operation requires the storage/recover permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A storage bundle of the original storage account and its attributes.", + "schema": { + "$ref": "#/definitions/StorageBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Recover Deleted Storage Account": { + "$ref": "./examples/recoverStorageAccount.json" + } + } + } + }, + "/storage/{storage-account-name}/backup": { + "post": { + "tags": [ + "Storage" + ], + "operationId": "BackupStorageAccount", + "summary": "Backs up the specified storage account.", + "description": "Requests that a backup of the specified storage account be downloaded to the client. This operation requires the storage/backup permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the storage account." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The backup blob containing the backed up storage account.", + "schema": { + "$ref": "#/definitions/BackupStorageResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Backup Storage Account": { + "$ref": "./examples/backupStorageAccount.json" + } + } + } + }, + "/storage/restore": { + "post": { + "tags": [ + "Storage" + ], + "operationId": "RestoreStorageAccount", + "summary": "Restores a backed up storage account to a vault.", + "description": "Restores a backed up storage account to a vault. This operation requires the storage/restore permission.", + "parameters": [ + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/StorageRestoreParameters" + }, + "description": "The parameters to restore the storage account." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Restored storage account bundle in the vault.", + "schema": { + "$ref": "#/definitions/StorageBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Restore Storage Account": { + "$ref": "./examples/restoreStorageAccount.json" + } + } + } + }, + "/storage/{storage-account-name}": { + "delete": { + "tags": [ + "Storage" + ], + "operationId": "DeleteStorageAccount", + "description": "Deletes a storage account. This operation requires the storage/delete permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The deleted storage account and information on when the storage account will be deleted, and how to recover the deleted storage account.", + "schema": { + "$ref": "#/definitions/DeletedStorageBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Delete Storage account": { + "$ref": "./examples/deleteStorageAccount.json" + } + } + }, + "get": { + "tags": [ + "Storage" + ], + "operationId": "GetStorageAccount", + "description": "Gets information about a specified storage account. This operation requires the storage/get permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The retrieved storage account.", + "schema": { + "$ref": "#/definitions/StorageBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Get Storage account": { + "$ref": "./examples/getStorageAccount.json" + } + } + }, + "put": { + "tags": [ + "Storage" + ], + "operationId": "SetStorageAccount", + "description": "Creates or updates a new storage account. This operation requires the storage/set permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/StorageAccountCreateParameters" + }, + "description": "The parameters to create a storage account." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The created storage account.", + "schema": { + "$ref": "#/definitions/StorageBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Set Storage account": { + "$ref": "./examples/setStorageAccount.json" + } + } + }, + "patch": { + "tags": [ + "Storage" + ], + "operationId": "UpdateStorageAccount", + "description": "Updates the specified attributes associated with the given storage account. This operation requires the storage/set/update permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/StorageAccountUpdateParameters" + }, + "description": "The parameters to update a storage account." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The updated storage account.", + "schema": { + "$ref": "#/definitions/StorageBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Update Storage account": { + "$ref": "./examples/updateStorageAccount.json" + } + } + } + }, + "/storage/{storage-account-name}/regeneratekey": { + "post": { + "tags": [ + "Storage" + ], + "operationId": "RegenerateStorageAccountKey", + "description": "Regenerates the specified key value for the given storage account. This operation requires the storage/regeneratekey permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/StorageAccountRegenerteKeyParameters" + }, + "description": "The parameters to regenerate storage account key." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The updated storage account.", + "schema": { + "$ref": "#/definitions/StorageBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Regenerate Storage account key": { + "$ref": "./examples/regenerateStorageAccountKey.json" + } + } + } + }, + "/storage/{storage-account-name}/sas": { + "get": { + "tags": [ + "Storage" + ], + "operationId": "GetSasDefinitions", + "description": "List storage SAS definitions for the given storage account. This operation requires the storage/listsas permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified the service will return up to 25 results." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of SAS definitions along with a link to the next page of SAS definitions.", + "schema": { + "$ref": "#/definitions/SasDefinitionListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Storage Sas Definition": { + "$ref": "./examples/listStorageSasDefinition.json" + } + } + } + }, + "/deletedstorage/{storage-account-name}/sas": { + "get": { + "tags": [ + "DeletedStorage" + ], + "operationId": "GetDeletedSasDefinitions", + "summary": "Lists deleted SAS definitions for the specified vault and storage account.", + "description": "The Get Deleted Sas Definitions operation returns the SAS definitions that have been deleted for a vault enabled for soft-delete. This operation requires the storage/listsas permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified the service will return up to 25 results." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of deleted SAS definitions for the storage account, along with a link to the next page of deleted SAS definitions.", + "schema": { + "$ref": "#/definitions/DeletedSasDefinitionListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Deleted Storage Sas Definitions": { + "$ref": "./examples/listDeletedStorageSasDefinition.json" + } + } + } + }, + "/deletedstorage/{storage-account-name}/sas/{sas-definition-name}": { + "get": { + "tags": [ + "DeletedStorage" + ], + "operationId": "GetDeletedSasDefinition", + "summary": "Gets the specified deleted sas definition.", + "description": "The Get Deleted SAS Definition operation returns the specified deleted SAS definition along with its attributes. This operation requires the storage/getsas permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "name": "sas-definition-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the SAS definition." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The deleted SAS definition and information on when the it will be purged, and how to recover the deleted SAS definition.", + "schema": { + "$ref": "#/definitions/DeletedSasDefinitionBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Get Deleted Storage Sas Definition": { + "$ref": "./examples/getDeletedStorageSasDefinition.json" + } + } + } + }, + "/deletedstorage/{storage-account-name}/sas/{sas-definition-name}/recover": { + "post": { + "tags": [ + "DeletedStorage" + ], + "operationId": "RecoverDeletedSasDefinition", + "summary": "Recovers the deleted SAS definition.", + "description": "Recovers the deleted SAS definition for the specified storage account. This operation can only be performed on a soft-delete enabled vault. This operation requires the storage/recover permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "name": "sas-definition-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the SAS definition." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A SAS definition bundle of the original SAS definition and its attributes.", + "schema": { + "$ref": "#/definitions/SasDefinitionBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Recover Deleted Storage Sas Definition": { + "$ref": "./examples/recoverStorageSasDefinition.json" + } + } + } + }, + "/storage/{storage-account-name}/sas/{sas-definition-name}": { + "delete": { + "tags": [ + "Storage" + ], + "operationId": "DeleteSasDefinition", + "description": "Deletes a SAS definition from a specified storage account. This operation requires the storage/deletesas permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "name": "sas-definition-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the SAS definition." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The deleted SAS definition and information on when the SAS definition will be deleted, and how to recover the deleted SAS definition.", + "schema": { + "$ref": "#/definitions/DeletedSasDefinitionBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Delete Storage Sas Definition": { + "$ref": "./examples/deleteStorageSasDefinition.json" + } + } + }, + "get": { + "tags": [ + "Storage" + ], + "operationId": "GetSasDefinition", + "description": "Gets information about a SAS definition for the specified storage account. This operation requires the storage/getsas permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "name": "sas-definition-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the SAS definition." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The retrieved SAS definition.", + "schema": { + "$ref": "#/definitions/SasDefinitionBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Get Storage Sas Definition": { + "$ref": "./examples/getStorageSasDefinition.json" + } + } + }, + "put": { + "tags": [ + "Storage" + ], + "operationId": "SetSasDefinition", + "description": "Creates or updates a new SAS definition for the specified storage account. This operation requires the storage/setsas permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "name": "sas-definition-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the SAS definition." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/SasDefinitionCreateParameters" + }, + "description": "The parameters to create a SAS definition." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The created SAS definition.", + "schema": { + "$ref": "#/definitions/SasDefinitionBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Set Storage Sas definition": { + "$ref": "./examples/setStorageSasDefinition.json" + } + } + }, + "patch": { + "tags": [ + "Storage" + ], + "operationId": "UpdateSasDefinition", + "description": "Updates the specified attributes associated with the given SAS definition. This operation requires the storage/setsas permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "name": "sas-definition-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the SAS definition." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/SasDefinitionUpdateParameters" + }, + "description": "The parameters to update a SAS definition." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The updated SAS definition.", + "schema": { + "$ref": "#/definitions/SasDefinitionBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Update Storage Sas definition": { + "$ref": "./examples/updateStorageSasDefinition.json" + } + } + } + } + }, + "definitions": { + "StorageRestoreParameters": { + "properties": { + "value": { + "type": "string", + "x-ms-client-name": "storageBundleBackup", + "format": "base64url", + "description": "The backup blob associated with a storage account." + } + }, + "description": "The secret restore parameters.", + "required": [ + "value" + ] + }, + "StorageAccountAttributes": { + "properties": { + "enabled": { + "type": "boolean", + "description": "the enabled state of the object." + }, + "created": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "Creation time in UTC." + }, + "updated": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "Last updated time in UTC." + }, + "recoverableDays": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "softDelete data retention days. Value should be >=7 and <=90 when softDelete enabled, otherwise 0." + }, + "recoveryLevel": { + "type": "string", + "description": "Reflects the deletion recovery level currently in effect for storage accounts in the current vault. If it contains 'Purgeable' the storage account can be permanently deleted by a privileged user; otherwise, only the system can purge the storage account, at the end of the retention interval.", + "enum": [ + "Purgeable", + "Recoverable+Purgeable", + "Recoverable", + "Recoverable+ProtectedSubscription", + "CustomizedRecoverable+Purgeable", + "CustomizedRecoverable", + "CustomizedRecoverable+ProtectedSubscription" + ], + "x-ms-enum": { + "name": "DeletionRecoveryLevel", + "modelAsString": true, + "values": [ + { + "value": "Purgeable", + "description": "Denotes a vault state in which deletion is an irreversible operation, without the possibility for recovery. This level corresponds to no protection being available against a Delete operation; the data is irretrievably lost upon accepting a Delete operation at the entity level or higher (vault, resource group, subscription etc.)" + }, + { + "value": "Recoverable+Purgeable", + "description": "Denotes a vault state in which deletion is recoverable, and which also permits immediate and permanent deletion (i.e. purge). This level guarantees the recoverability of the deleted entity during the retention interval (90 days), unless a Purge operation is requested, or the subscription is cancelled. System wil permanently delete it after 90 days, if not recovered" + }, + { + "value": "Recoverable", + "description": "Denotes a vault state in which deletion is recoverable without the possibility for immediate and permanent deletion (i.e. purge). This level guarantees the recoverability of the deleted entity during the retention interval(90 days) and while the subscription is still available. System wil permanently delete it after 90 days, if not recovered" + }, + { + "value": "Recoverable+ProtectedSubscription", + "description": "Denotes a vault and subscription state in which deletion is recoverable within retention interval (90 days), immediate and permanent deletion (i.e. purge) is not permitted, and in which the subscription itself cannot be permanently canceled. System wil permanently delete it after 90 days, if not recovered" + }, + { + "value": "CustomizedRecoverable+Purgeable", + "description": "Denotes a vault state in which deletion is recoverable, and which also permits immediate and permanent deletion (i.e. purge when 7<= SoftDeleteRetentionInDays < 90). This level guarantees the recoverability of the deleted entity during the retention interval, unless a Purge operation is requested, or the subscription is cancelled." + }, + { + "value": "CustomizedRecoverable", + "description": "Denotes a vault state in which deletion is recoverable without the possibility for immediate and permanent deletion (i.e. purge when 7<= SoftDeleteRetentionInDays < 90).This level guarantees the recoverability of the deleted entity during the retention interval and while the subscription is still available." + }, + { + "value": "CustomizedRecoverable+ProtectedSubscription", + "description": "Denotes a vault and subscription state in which deletion is recoverable, immediate and permanent deletion (i.e. purge) is not permitted, and in which the subscription itself cannot be permanently canceled when 7<= SoftDeleteRetentionInDays < 90. This level guarantees the recoverability of the deleted entity during the retention interval, and also reflects the fact that the subscription itself cannot be cancelled." + } + ] + }, + "readOnly": true, + "x-nullable": false + } + }, + "description": "The storage account management attributes." + }, + "StorageBundle": { + "properties": { + "id": { + "type": "string", + "description": "The storage account id.", + "readOnly": true + }, + "resourceId": { + "type": "string", + "description": "The storage account resource id.", + "readOnly": true + }, + "activeKeyName": { + "type": "string", + "description": "The current active storage account key name.", + "readOnly": true + }, + "autoRegenerateKey": { + "type": "boolean", + "description": "whether keyvault should manage the storage account for the user.", + "readOnly": true + }, + "regenerationPeriod": { + "type": "string", + "description": "The key regeneration time duration specified in ISO-8601 format.", + "readOnly": true + }, + "attributes": { + "$ref": "#/definitions/StorageAccountAttributes", + "description": "The storage account attributes.", + "readOnly": true + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs", + "readOnly": true + } + }, + "description": "A Storage account bundle consists of key vault storage account details plus its attributes." + }, + "DeletedStorageBundle": { + "allOf": [ + { + "$ref": "#/definitions/StorageBundle" + } + ], + "properties": { + "recoveryId": { + "type": "string", + "description": "The url of the recovery object, used to identify and recover the deleted storage account." + }, + "scheduledPurgeDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the storage account is scheduled to be purged, in UTC" + }, + "deletedDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the storage account was deleted, in UTC" + } + }, + "description": "A deleted storage account bundle consisting of its previous id, attributes and its tags, as well as information on when it will be purged." + }, + "StorageAccountCreateParameters": { + "properties": { + "resourceId": { + "type": "string", + "description": "Storage account resource id." + }, + "activeKeyName": { + "type": "string", + "description": "Current active storage account key name." + }, + "autoRegenerateKey": { + "type": "boolean", + "description": "whether keyvault should manage the storage account for the user." + }, + "regenerationPeriod": { + "type": "string", + "description": "The key regeneration time duration specified in ISO-8601 format." + }, + "attributes": { + "x-ms-client-name": "StorageAccountAttributes", + "$ref": "#/definitions/StorageAccountAttributes", + "description": "The attributes of the storage account." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + } + }, + "description": "The storage account create parameters.", + "required": [ + "resourceId", + "activeKeyName", + "autoRegenerateKey" + ] + }, + "StorageAccountUpdateParameters": { + "properties": { + "activeKeyName": { + "type": "string", + "description": "The current active storage account key name." + }, + "autoRegenerateKey": { + "type": "boolean", + "description": "whether keyvault should manage the storage account for the user." + }, + "regenerationPeriod": { + "type": "string", + "description": "The key regeneration time duration specified in ISO-8601 format." + }, + "attributes": { + "x-ms-client-name": "StorageAccountAttributes", + "$ref": "#/definitions/StorageAccountAttributes", + "description": "The attributes of the storage account." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + } + }, + "description": "The storage account update parameters." + }, + "StorageAccountRegenerteKeyParameters": { + "properties": { + "keyName": { + "type": "string", + "description": "The storage account key name." + } + }, + "description": "The storage account key regenerate parameters.", + "required": [ + "keyName" + ] + }, + "StorageAccountItem": { + "properties": { + "id": { + "type": "string", + "description": "Storage identifier.", + "readOnly": true + }, + "resourceId": { + "type": "string", + "description": "Storage account resource Id.", + "readOnly": true + }, + "attributes": { + "$ref": "#/definitions/StorageAccountAttributes", + "description": "The storage account management attributes.", + "readOnly": true + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs.", + "readOnly": true + } + }, + "description": "The storage account item containing storage account metadata." + }, + "DeletedStorageAccountItem": { + "allOf": [ + { + "$ref": "#/definitions/StorageAccountItem" + } + ], + "properties": { + "recoveryId": { + "type": "string", + "description": "The url of the recovery object, used to identify and recover the deleted storage account." + }, + "scheduledPurgeDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the storage account is scheduled to be purged, in UTC" + }, + "deletedDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the storage account was deleted, in UTC" + } + }, + "description": "The deleted storage account item containing metadata about the deleted storage account." + }, + "StorageListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/StorageAccountItem" + }, + "readOnly": true, + "description": "A response message containing a list of storage accounts in the key vault along with a link to the next page of storage accounts." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of storage accounts." + } + }, + "description": "The storage accounts list result." + }, + "DeletedStorageListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeletedStorageAccountItem" + }, + "readOnly": true, + "description": "A response message containing a list of the deleted storage accounts in the vault along with a link to the next page of deleted storage accounts" + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of deleted storage accounts." + } + }, + "description": "The deleted storage account list result" + }, + "SasDefinitionAttributes": { + "properties": { + "enabled": { + "type": "boolean", + "description": "the enabled state of the object." + }, + "created": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "Creation time in UTC." + }, + "updated": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "Last updated time in UTC." + }, + "recoverableDays": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "softDelete data retention days. Value should be >=7 and <=90 when softDelete enabled, otherwise 0." + }, + "recoveryLevel": { + "type": "string", + "description": "Reflects the deletion recovery level currently in effect for SAS definitions in the current vault. If it contains 'Purgeable' the SAS definition can be permanently deleted by a privileged user; otherwise, only the system can purge the SAS definition, at the end of the retention interval.", + "enum": [ + "Purgeable", + "Recoverable+Purgeable", + "Recoverable", + "Recoverable+ProtectedSubscription", + "CustomizedRecoverable+Purgeable", + "CustomizedRecoverable", + "CustomizedRecoverable+ProtectedSubscription" + ], + "x-ms-enum": { + "name": "DeletionRecoveryLevel", + "modelAsString": true + }, + "readOnly": true, + "x-nullable": false + } + }, + "description": "The SAS definition management attributes." + }, + "SasDefinitionBundle": { + "properties": { + "id": { + "type": "string", + "description": "The SAS definition id.", + "readOnly": true + }, + "sid": { + "x-ms-client-name": "SecretId", + "type": "string", + "description": "Storage account SAS definition secret id.", + "readOnly": true + }, + "templateUri": { + "type": "string", + "description": "The SAS definition token template signed with an arbitrary key. Tokens created according to the SAS definition will have the same properties as the template.", + "readOnly": true + }, + "sasType": { + "type": "string", + "description": "The type of SAS token the SAS definition will create.", + "enum": [ + "account", + "service" + ], + "x-ms-enum": { + "name": "SasTokenType", + "modelAsString": true + }, + "readOnly": true + }, + "validityPeriod": { + "type": "string", + "description": "The validity period of SAS tokens created according to the SAS definition.", + "readOnly": true + }, + "attributes": { + "$ref": "#/definitions/SasDefinitionAttributes", + "description": "The SAS definition attributes.", + "readOnly": true + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs", + "readOnly": true + } + }, + "description": "A SAS definition bundle consists of key vault SAS definition details plus its attributes." + }, + "DeletedSasDefinitionBundle": { + "allOf": [ + { + "$ref": "#/definitions/SasDefinitionBundle" + } + ], + "properties": { + "recoveryId": { + "type": "string", + "description": "The url of the recovery object, used to identify and recover the deleted SAS definition." + }, + "scheduledPurgeDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the SAS definition is scheduled to be purged, in UTC" + }, + "deletedDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the SAS definition was deleted, in UTC" + } + }, + "description": "A deleted SAS definition bundle consisting of its previous id, attributes and its tags, as well as information on when it will be purged." + }, + "SasDefinitionItem": { + "properties": { + "id": { + "type": "string", + "description": "The storage SAS identifier.", + "readOnly": true + }, + "sid": { + "x-ms-client-name": "SecretId", + "type": "string", + "description": "The storage account SAS definition secret id.", + "readOnly": true + }, + "attributes": { + "$ref": "#/definitions/SasDefinitionAttributes", + "description": "The SAS definition management attributes.", + "readOnly": true + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs.", + "readOnly": true + } + }, + "description": "The SAS definition item containing storage SAS definition metadata." + }, + "DeletedSasDefinitionItem": { + "allOf": [ + { + "$ref": "#/definitions/SasDefinitionItem" + } + ], + "properties": { + "recoveryId": { + "type": "string", + "description": "The url of the recovery object, used to identify and recover the deleted SAS definition." + }, + "scheduledPurgeDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the SAS definition is scheduled to be purged, in UTC" + }, + "deletedDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the SAS definition was deleted, in UTC" + } + }, + "description": "The deleted SAS definition item containing metadata about the deleted SAS definition." + }, + "SasDefinitionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SasDefinitionItem" + }, + "readOnly": true, + "description": "A response message containing a list of SAS definitions along with a link to the next page of SAS definitions." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of SAS definitions." + } + }, + "description": "The storage account SAS definition list result." + }, + "DeletedSasDefinitionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeletedSasDefinitionItem" + }, + "readOnly": true, + "description": "A response message containing a list of the deleted SAS definitions in the vault along with a link to the next page of deleted sas definitions" + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of deleted SAS definitions." + } + }, + "description": "The deleted SAS definition list result" + }, + "SasDefinitionCreateParameters": { + "properties": { + "templateUri": { + "type": "string", + "description": "The SAS definition token template signed with an arbitrary key. Tokens created according to the SAS definition will have the same properties as the template." + }, + "sasType": { + "type": "string", + "description": "The type of SAS token the SAS definition will create.", + "enum": [ + "account", + "service" + ], + "x-ms-enum": { + "name": "SasTokenType", + "modelAsString": true + } + }, + "validityPeriod": { + "type": "string", + "description": "The validity period of SAS tokens created according to the SAS definition." + }, + "attributes": { + "x-ms-client-name": "SasDefinitionAttributes", + "$ref": "#/definitions/SasDefinitionAttributes", + "description": "The attributes of the SAS definition." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + } + }, + "description": "The SAS definition create parameters.", + "required": [ + "templateUri", + "sasType", + "validityPeriod" + ] + }, + "SasDefinitionUpdateParameters": { + "properties": { + "templateUri": { + "type": "string", + "description": "The SAS definition token template signed with an arbitrary key. Tokens created according to the SAS definition will have the same properties as the template." + }, + "sasType": { + "type": "string", + "description": "The type of SAS token the SAS definition will create.", + "enum": [ + "account", + "service" + ], + "x-ms-enum": { + "name": "SasTokenType", + "modelAsString": true + } + }, + "validityPeriod": { + "type": "string", + "description": "The validity period of SAS tokens created according to the SAS definition." + }, + "attributes": { + "x-ms-client-name": "SasDefinitionAttributes", + "$ref": "#/definitions/SasDefinitionAttributes", + "description": "The attributes of the SAS definition." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + } + }, + "description": "The SAS definition update parameters." + }, + "BackupStorageResult": { + "properties": { + "value": { + "type": "string", + "format": "base64url", + "readOnly": true, + "description": "The backup blob containing the backed up storage account." + } + }, + "description": "The backup storage result, containing the backup blob." + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client API version." + } + } +} diff --git a/specification/keyvault/data-plane/readme.go.md b/specification/keyvault/data-plane/readme.go.md index 051165621376..e045bd7b10fa 100644 --- a/specification/keyvault/data-plane/readme.go.md +++ b/specification/keyvault/data-plane/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: keyvault clear-output-folder: true ``` @@ -13,20 +13,20 @@ go: ``` yaml $(go) && $(multiapi) batch: - - tag: package-7.2-preview + - tag: package-7.2 - tag: package-7.1 - tag: package-7.0 - tag: package-2016-10 - tag: package-2015-06 ``` -### Tag: package-7.2-preview and go +### Tag: package-7.2 and go -These settings apply only when `--tag=package-7.2-preview --go` is specified on the command line. +These settings apply only when `--tag=package-7.2 --go` is specified on the command line. Please also specify `--go-sdk-folder=`. -``` yaml $(tag) == 'package-7.2-preview' && $(go) -output-folder: $(go-sdk-folder)/services/preview/$(namespace)/v7.2-preview/$(namespace) +``` yaml $(tag) == 'package-7.2' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/v7.2/$(namespace) ``` ### Tag: package-7.1 and go diff --git a/specification/keyvault/data-plane/readme.md b/specification/keyvault/data-plane/readme.md index d2abd30a2e45..e747463f9951 100644 --- a/specification/keyvault/data-plane/readme.md +++ b/specification/keyvault/data-plane/readme.md @@ -45,6 +45,23 @@ input-file: - Microsoft.KeyVault/preview/7.3-preview/securitydomain.json - Microsoft.KeyVault/preview/7.3-preview/storage.json ``` + +### Tag: package-7.2 + +These settings apply only when `--tag=package-7.2` is specified on the command line. + +``` yaml $(tag) == 'package-7.2' +input-file: +- Microsoft.KeyVault/stable/7.2/certificates.json +- Microsoft.KeyVault/stable/7.2/common.json +- Microsoft.KeyVault/stable/7.2/keys.json +- Microsoft.KeyVault/stable/7.2/rbac.json +- Microsoft.KeyVault/stable/7.2/secrets.json +- Microsoft.KeyVault/stable/7.2/storage.json +- Microsoft.KeyVault/stable/7.2/backuprestore.json +- Microsoft.KeyVault/stable/7.2/securitydomain.json +``` + ### Tag: package-7.2-preview These settings apply only when `--tag=package-7.2-preview` is specified on the command line. diff --git a/specification/keyvault/data-plane/readme.python.md b/specification/keyvault/data-plane/readme.python.md index c81823f93009..5b690cc38cc7 100644 --- a/specification/keyvault/data-plane/readme.python.md +++ b/specification/keyvault/data-plane/readme.python.md @@ -23,7 +23,7 @@ batch: - tag: package-2016-10 - tag: package-7.0 - tag: package-7.1 -- tag: package-7.2-preview +- tag: package-7.2 - multiapiscript: true ``` @@ -33,13 +33,13 @@ clear-output-folder: false perform-load: false ``` -### Tag: package-7.2-preview +### Tag: package-7.2 -These settings apply only when `--tag=package-7.2-preview` is specified on the command line. +These settings apply only when `--tag=package-7.2` is specified on the command line. -``` yaml $(tag) == 'package-7.2-preview' +``` yaml $(tag) == 'package-7.2' namespace: azure.keyvault.v7_2 -output-folder: $(python-sdks-folder)/keyvault/azure-keyvault/azure/keyvault/v7_2_preview +output-folder: $(python-sdks-folder)/keyvault/azure-keyvault/azure/keyvault/v7_2 ``` ### Tag: package-7.1 diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/createKey.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/createKey.json new file mode 100644 index 000000000000..edb4e5fa5e1f --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/createKey.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "sample-group", + "vaultName": "sample-vault-name", + "keyName": "sample-key-name", + "api-version": "2020-04-01-preview", + "parameters": { + "properties": { + "kty": "RSA" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault-name/keys/sample-key-name", + "name": "sample-key-name", + "type": "Microsoft.KeyVault/vaults/keys", + "location": "westus", + "properties": { + "attributes": { + "enabled": true, + "created": 1598533051, + "updated": 1598533051, + "recoveryLevel": "Purgeable" + }, + "kty": "RSA", + "keyOps": [ + "encrypt", + "decrypt", + "sign", + "verify", + "wrapKey", + "unwrapKey" + ], + "keySize": 2048, + "keyUri": "https://sample-vault-name.vault.azure.net:443/keys/sample-key-name", + "keyUriWithVersion": "https://sample-vault-name.vault.azure.net:443/keys/sample-key-name/fd618d9519b74f9aae94ade66b876acc" + } + } + }, + "default": { + "headers": {}, + "body": { + "error": { + "code": "", + "message": "" + } + } + } + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/createVault.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/createVault.json index 76976744c720..1273e559bbe0 100644 --- a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/createVault.json +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/createVault.json @@ -78,6 +78,14 @@ "type": "Microsoft.KeyVault/vaults", "location": "westus", "tags": {}, + "systemData": { + "createdBy": "keyVaultUser1", + "createdByType": "User", + "createdAt": "2020-01-01T12:00:00.0000000Z", + "lastModifiedBy": "keyVaultUser2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-01T12:00:00.0000000Z" + }, "properties": { "sku": { "family": "A", @@ -181,6 +189,14 @@ "type": "Microsoft.KeyVault/vaults", "location": "westus", "tags": {}, + "systemData": { + "createdBy": "keyVaultUser1", + "createdByType": "User", + "createdAt": "2020-01-01T12:00:00.0000000Z", + "lastModifiedBy": "keyVaultUser2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-01T12:00:00.0000000Z" + }, "properties": { "sku": { "family": "A", diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/createVaultWithNetworkAcls.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/createVaultWithNetworkAcls.json index 9e6c943f6abb..9c11ace919e7 100644 --- a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/createVaultWithNetworkAcls.json +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/createVaultWithNetworkAcls.json @@ -43,6 +43,14 @@ "type": "Microsoft.KeyVault/vaults", "location": "westus", "tags": {}, + "systemData": { + "createdBy": "keyVaultUser1", + "createdByType": "User", + "createdAt": "2020-01-01T12:00:00.0000000Z", + "lastModifiedBy": "keyVaultUser2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-01T12:00:00.0000000Z" + }, "properties": { "sku": { "family": "A", @@ -80,6 +88,14 @@ "type": "Microsoft.KeyVault/vaults", "location": "westus", "tags": {}, + "systemData": { + "createdBy": "keyVaultUser1", + "createdByType": "User", + "createdAt": "2020-01-01T12:00:00.0000000Z", + "lastModifiedBy": "keyVaultUser2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-01T12:00:00.0000000Z" + }, "properties": { "sku": { "family": "A", diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/getKey.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/getKey.json new file mode 100644 index 000000000000..32fa33d90f3f --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/getKey.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "sample-group", + "vaultName": "sample-vault-name", + "keyName": "sample-key-name", + "api-version": "2020-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault-name/keys/sample-key-name", + "name": "sample-key-name", + "type": "Microsoft.KeyVault/vaults/keys", + "location": "westus", + "properties": { + "attributes": { + "enabled": true, + "created": 1598533051, + "updated": 1598533051, + "recoveryLevel": "Purgeable" + }, + "kty": "RSA", + "keyOps": [ + "encrypt", + "decrypt", + "sign", + "verify", + "wrapKey", + "unwrapKey" + ], + "keySize": 2048, + "keyUri": "https://sample-vault-name.vault.azure.net:443/keys/sample-key-name", + "keyUriWithVersion": "https://sample-vault-name.vault.azure.net:443/keys/sample-key-name/fd618d9519b74f9aae94ade66b876acc" + } + } + }, + "default": { + "headers": {}, + "body": { + "error": { + "code": "", + "message": "" + } + } + } + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/getKeyVersion.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/getKeyVersion.json new file mode 100644 index 000000000000..7ee4099e3188 --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/getKeyVersion.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "sample-group", + "vaultName": "sample-vault-name", + "keyName": "sample-key-name", + "keyVersion": "fd618d9519b74f9aae94ade66b876acc", + "api-version": "2020-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault-name/keys/sample-key-name/versions/fd618d9519b74f9aae94ade66b876acc", + "name": "fd618d9519b74f9aae94ade66b876acc", + "type": "Microsoft.KeyVault/vaults/keys/versions", + "location": "westus", + "properties": { + "attributes": { + "enabled": true, + "created": 1598533051, + "updated": 1598533051, + "recoveryLevel": "Purgeable" + }, + "kty": "RSA", + "keyOps": [ + "encrypt", + "decrypt", + "sign", + "verify", + "wrapKey", + "unwrapKey" + ], + "keySize": 2048, + "keyUri": "https://sample-vault-name.vault.azure.net:443/keys/sample-key-name", + "keyUriWithVersion": "https://sample-vault-name.vault.azure.net:443/keys/sample-key-name/fd618d9519b74f9aae94ade66b876acc" + } + } + }, + "default": { + "headers": {}, + "body": { + "error": { + "code": "", + "message": "" + } + } + } + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/getVault.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/getVault.json index 6d61831d11d2..2ad346522a06 100644 --- a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/getVault.json +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/getVault.json @@ -13,6 +13,14 @@ "type": "Microsoft.KeyVault/vaults", "location": "westus", "tags": {}, + "systemData": { + "createdBy": "keyVaultUser1", + "createdByType": "User", + "createdAt": "2020-01-01T12:00:00.0000000Z", + "lastModifiedBy": "keyVaultUser2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-01T12:00:00.0000000Z" + }, "properties": { "sku": { "family": "A", diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/listKeyVersions.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/listKeyVersions.json new file mode 100644 index 000000000000..7e6f342ea784 --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/listKeyVersions.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "sample-group", + "vaultName": "sample-vault-name", + "keyName": "sample-key-name", + "api-version": "2020-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault-name/keys/sample-key-name/versions/c2296aa24acf4daf86942bff5aca73dd", + "name": "c2296aa24acf4daf86942bff5aca73dd", + "type": "Microsoft.KeyVault/vaults/keys/versions", + "location": "westus", + "properties": { + "attributes": { + "enabled": true, + "created": 1598641074, + "updated": 1598641074, + "recoveryLevel": "Purgeable" + }, + "keyUri": "https://sample-vault-name.vault.azure.net:443/keys/sample-key-name", + "keyUriWithVersion": "https://sample-vault-name.vault.azure.net:443/keys/sample-key-name/c2296aa24acf4daf86942bff5aca73dd" + } + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault-name/keys/sample-key-name/versions/d5a04667b6f44b0ca62825f5eae93da6", + "name": "d5a04667b6f44b0ca62825f5eae93da6", + "type": "Microsoft.KeyVault/vaults/keys/versions", + "location": "westus", + "properties": { + "attributes": { + "enabled": true, + "created": 1598641295, + "updated": 1598641295, + "recoveryLevel": "Purgeable" + }, + "keyUri": "https://sample-vault-name.vault.azure.net:443/keys/sample-key-name", + "keyUriWithVersion": "https://sample-vault-name.vault.azure.net:443/keys/sample-key-name/d5a04667b6f44b0ca62825f5eae93da6" + } + } + ] + } + }, + "default": { + "headers": {}, + "body": { + "error": { + "code": "", + "message": "" + } + } + } + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/listKeys.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/listKeys.json new file mode 100644 index 000000000000..e51a9ebdfeb8 --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/listKeys.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "sample-group", + "vaultName": "sample-vault-name", + "api-version": "2020-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault-name/keys/sample-key-name-1", + "name": "sample-key-name-1", + "type": "Microsoft.KeyVault/vaults/keys", + "location": "westus", + "properties": { + "attributes": { + "enabled": true, + "created": 1596493796, + "updated": 1596493796, + "recoveryLevel": "Purgeable" + }, + "keyUri": "https://sample-vault-name.vault.azure.net:443/keys/sample-key-name-1" + } + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault-name/keys/sample-key-name-2", + "name": "sample-key-name-2", + "type": "Microsoft.KeyVault/vaults/keys", + "location": "westus", + "properties": { + "attributes": { + "enabled": true, + "created": 1596493797, + "updated": 1596493797, + "recoveryLevel": "Purgeable" + }, + "keyUri": "https://sample-vault-name.vault.azure.net:443/keys/sample-key-name-2" + } + } + ] + } + }, + "default": { + "headers": {}, + "body": { + "error": { + "code": "", + "message": "" + } + } + } + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/listVaultByResourceGroup.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/listVaultByResourceGroup.json index b68471d72365..aa68a7be784d 100644 --- a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/listVaultByResourceGroup.json +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/listVaultByResourceGroup.json @@ -15,6 +15,14 @@ "type": "Microsoft.KeyVault/vaults", "location": "westus", "tags": {}, + "systemData": { + "createdBy": "keyVaultUser1", + "createdByType": "User", + "createdAt": "2020-01-01T12:00:00.0000000Z", + "lastModifiedBy": "keyVaultUser2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-01T12:00:00.0000000Z" + }, "properties": { "sku": { "family": "A", diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/listVaultBySubscription.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/listVaultBySubscription.json index 47f4f46bf374..d09aa1ceff02 100644 --- a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/listVaultBySubscription.json +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/listVaultBySubscription.json @@ -14,6 +14,14 @@ "type": "Microsoft.KeyVault/vaults", "location": "westus", "tags": {}, + "systemData": { + "createdBy": "keyVaultUser1", + "createdByType": "User", + "createdAt": "2020-01-01T12:00:00.0000000Z", + "lastModifiedBy": "keyVaultUser2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-01T12:00:00.0000000Z" + }, "properties": { "sku": { "family": "A", diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/updateVault.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/updateVault.json index a30f3eea92bb..3762bc883cd7 100644 --- a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/updateVault.json +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/updateVault.json @@ -77,6 +77,14 @@ "type": "Microsoft.KeyVault/vaults", "location": "westus", "tags": {}, + "systemData": { + "createdBy": "keyVaultUser1", + "createdByType": "User", + "createdAt": "2020-01-01T12:00:00.0000000Z", + "lastModifiedBy": "keyVaultUser2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-01T13:00:00.0000000Z" + }, "properties": { "sku": { "family": "A", @@ -180,6 +188,14 @@ "type": "Microsoft.KeyVault/vaults", "location": "westus", "tags": {}, + "systemData": { + "createdBy": "keyVaultUser1", + "createdByType": "User", + "createdAt": "2020-01-01T12:00:00.0000000Z", + "lastModifiedBy": "keyVaultUser2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-01T13:00:00.0000000Z" + }, "properties": { "sku": { "family": "A", diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/keys.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/keys.json new file mode 100644 index 000000000000..98ba4bad544b --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/keys.json @@ -0,0 +1,557 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-04-01-preview", + "title": "KeyVaultManagementClient", + "description": "The Azure management API provides a RESTful set of web services that interact with Azure Key Vault." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}/keys/{keyName}": { + "put": { + "tags": [ + "Keys" + ], + "operationId": "Keys_CreateIfNotExist", + "description": "Creates the first version of a new key if it does not exist. If it already exists, then the existing key is returned without any write operations being performed. This API does not create subsequent versions, and does not update existing keys.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group which contains the specified key vault." + }, + { + "name": "vaultName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9-]{3,24}$", + "description": "The name of the key vault which contains the key to be created." + }, + { + "name": "keyName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9-]{1,127}$", + "description": "The name of the key to be created." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/KeyCreateParameters" + }, + "description": "The parameters used to create the specified key." + } + ], + "responses": { + "200": { + "description": "The created key.", + "schema": { + "$ref": "#/definitions/Key" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create a key": { + "$ref": "./examples/createKey.json" + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + }, + "get": { + "tags": [ + "Keys" + ], + "operationId": "Keys_Get", + "description": "Gets the current version of the specified key from the specified key vault.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group which contains the specified key vault." + }, + { + "name": "vaultName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9-]{3,24}$", + "description": "The name of the vault which contains the key to be retrieved." + }, + { + "name": "keyName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9-]{1,127}$", + "description": "The name of the key to be retrieved." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The retrieved key.", + "schema": { + "$ref": "#/definitions/Key" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get a key": { + "$ref": "./examples/getKey.json" + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}/keys": { + "get": { + "tags": [ + "Keys" + ], + "operationId": "Keys_List", + "description": "Lists the keys in the specified key vault.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group which contains the specified key vault." + }, + { + "name": "vaultName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9-]{3,24}$", + "description": "The name of the vault which contains the keys to be retrieved." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The retrieved page of keys.", + "schema": { + "$ref": "#/definitions/KeyListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List keys in the vault": { + "$ref": "./examples/listKeys.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}/keys/{keyName}/versions/{keyVersion}": { + "get": { + "tags": [ + "Keys" + ], + "operationId": "Keys_GetVersion", + "description": "Gets the specified version of the specified key in the specified key vault.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group which contains the specified key vault." + }, + { + "name": "vaultName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9-]{3,24}$", + "description": "The name of the vault which contains the key version to be retrieved." + }, + { + "name": "keyName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9-]{1,127}$", + "description": "The name of the key version to be retrieved." + }, + { + "name": "keyVersion", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-fA-F0-9]{32}$", + "description": "The version of the key to be retrieved." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The retrieved key version.", + "schema": { + "$ref": "#/definitions/Key" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get a key version": { + "$ref": "./examples/getKeyVersion.json" + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}/keys/{keyName}/versions": { + "get": { + "tags": [ + "Keys" + ], + "operationId": "Keys_ListVersions", + "description": "Lists the versions of the specified key in the specified key vault.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group which contains the specified key vault." + }, + { + "name": "vaultName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9-]{3,24}$", + "description": "The name of the vault which contains the key versions to be retrieved." + }, + { + "name": "keyName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9-]{1,127}$", + "description": "The name of the key versions to be retrieved." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The retrieved page of key versions.", + "schema": { + "$ref": "#/definitions/KeyListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List key versions in the vault": { + "$ref": "./examples/listKeyVersions.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + } + } + }, + "definitions": { + "KeyProperties": { + "properties": { + "attributes": { + "$ref": "#/definitions/KeyAttributes", + "description": "The attributes of the key." + }, + "kty": { + "type": "string", + "minLength": 1, + "description": "The type of the key. For valid values, see JsonWebKeyType.", + "enum": [ + "EC", + "EC-HSM", + "RSA", + "RSA-HSM" + ], + "x-ms-enum": { + "name": "JsonWebKeyType", + "modelAsString": true + } + }, + "keyOps": { + "type": "array", + "items": { + "type": "string", + "description": "The permitted JSON web key operations of the key. For more information, see JsonWebKeyOperation.", + "enum": [ + "encrypt", + "decrypt", + "sign", + "verify", + "wrapKey", + "unwrapKey", + "import" + ], + "x-ms-enum": { + "name": "JsonWebKeyOperation", + "modelAsString": true + } + } + }, + "keySize": { + "type": "integer", + "format": "int32", + "description": "The key size in bits. For example: 2048, 3072, or 4096 for RSA." + }, + "curveName": { + "type": "string", + "description": "The elliptic curve name. For valid values, see JsonWebKeyCurveName.", + "enum": [ + "P-256", + "P-384", + "P-521", + "P-256K" + ], + "x-ms-enum": { + "name": "JsonWebKeyCurveName", + "modelAsString": true + } + }, + "keyUri": { + "type": "string", + "description": "The URI to retrieve the current version of the key.", + "readOnly": true + }, + "keyUriWithVersion": { + "type": "string", + "description": "The URI to retrieve the specific version of the key.", + "readOnly": true + } + }, + "description": "The properties of the key." + }, + "KeyAttributes": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Determines whether or not the object is enabled." + }, + "nbf": { + "x-ms-client-name": "NotBefore", + "type": "integer", + "format": "int64", + "description": "Not before date in seconds since 1970-01-01T00:00:00Z." + }, + "exp": { + "x-ms-client-name": "Expires", + "type": "integer", + "format": "int64", + "description": "Expiry date in seconds since 1970-01-01T00:00:00Z." + }, + "created": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "Creation time in seconds since 1970-01-01T00:00:00Z." + }, + "updated": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "Last updated time in seconds since 1970-01-01T00:00:00Z." + }, + "recoveryLevel": { + "type": "string", + "description": "The deletion recovery level currently in effect for the object. If it contains 'Purgeable', then the object can be permanently deleted by a privileged user; otherwise, only the system can purge the object at the end of the retention interval.", + "enum": [ + "Purgeable", + "Recoverable+Purgeable", + "Recoverable", + "Recoverable+ProtectedSubscription" + ], + "x-ms-enum": { + "name": "DeletionRecoveryLevel", + "modelAsString": true + }, + "readOnly": true, + "x-nullable": false + } + }, + "description": "The attributes of the key." + }, + "KeyCreateParameters": { + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The tags that will be assigned to the key." + }, + "properties": { + "$ref": "#/definitions/KeyProperties", + "description": "The properties of the key to be created." + } + }, + "description": "The parameters used to create a key.", + "required": [ + "properties" + ], + "x-ms-azure-resource": true + }, + "Key": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/KeyProperties", + "description": "The properties of the key." + } + }, + "required": [ + "properties" + ], + "allOf": [ + { + "$ref": "./keyvault.json#/definitions/Resource" + } + ], + "description": "The key resource." + }, + "KeyListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Key" + }, + "description": "The key resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next page of keys." + } + }, + "description": "The page of keys." + } + }, + "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." + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/keyvault.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/keyvault.json index 5157b3045c0d..1d91670a216f 100644 --- a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/keyvault.json +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/keyvault.json @@ -720,6 +720,7 @@ "name": "api-version", "in": "query", "required": true, + "x-ms-api-version": false, "type": "string", "enum": [ "2015-11-01" @@ -1532,6 +1533,10 @@ }, "description": "Tags assigned to the key vault resource." }, + "systemData": { + "description": "System metadata for the key vault.", + "$ref": "#/definitions/SystemData" + }, "properties": { "$ref": "#/definitions/VaultProperties", "description": "Properties of the vault" @@ -1778,6 +1783,10 @@ "type": "string", "description": "Id of private endpoint connection." }, + "etag": { + "type": "string", + "description": "Modified whenever there is a change in the state of private endpoint connection." + }, "properties": { "$ref": "#/definitions/PrivateEndpointConnectionProperties", "x-ms-client-flatten": true, @@ -1939,6 +1948,53 @@ } }, "description": "Properties of a private link resource." + }, + "SystemData": { + "description": "Metadata pertaining to creation and last modification of key vault resource.", + "type": "object", + "readOnly": true, + "properties": { + "createdBy": { + "type": "string", + "description": "The identity that created key vault resource." + }, + "createdByType": { + "description": "The type of identity that created key vault resource.", + "$ref": "#/definitions/IdentityType" + }, + "createdAt": { + "type": "string", + "format": "date-time", + "description": "The timestamp of key vault resource creation (UTC)." + }, + "lastModifiedBy": { + "type": "string", + "description": "The identity that last modified key vault resource." + }, + "lastModifiedByType": { + "description": "The type of identity that last modified key vault resource.", + "$ref": "#/definitions/IdentityType" + }, + "lastModifiedAt": { + "type": "string", + "format": "date-time", + "description": "The timestamp of key vault resource last modification (UTC)." + } + } + }, + "IdentityType": { + "type": "string", + "description": "The type of identity.", + "enum": [ + "User", + "Application", + "ManagedIdentity", + "Key" + ], + "x-ms-enum": { + "name": "identityType", + "modelAsString": true + } } }, "parameters": { diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/common.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/common.json new file mode 100644 index 000000000000..62e88433aed2 --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/common.json @@ -0,0 +1,91 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-04-01-preview", + "title": "KeyVaultManagementClient", + "description": "The Azure management API provides a RESTful set of web services that interact with Azure Key Vault." + }, + "paths": {}, + "definitions": { + "CloudError": { + "description": "An error response from Key Vault resource provider", + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorBody" + } + }, + "x-ms-external": true + }, + "CloudErrorBody": { + "description": "An error response from Key Vault resource provider", + "properties": { + "code": { + "type": "string", + "description": "Error code. This is a mnemonic that can be consumed programmatically." + }, + "message": { + "type": "string", + "description": "User friendly error message. The message is typically localized and may vary with service version." + } + }, + "x-ms-external": true + }, + "SystemData": { + "description": "Metadata pertaining to creation and last modification of the key vault resource.", + "readOnly": true, + "properties": { + "createdBy": { + "type": "string", + "description": "The identity that created the key vault resource." + }, + "createdByType": { + "description": "The type of identity that created the key vault resource.", + "$ref": "#/definitions/IdentityType" + }, + "createdAt": { + "type": "string", + "format": "date-time", + "description": "The timestamp of the key vault resource creation (UTC)." + }, + "lastModifiedBy": { + "type": "string", + "description": "The identity that last modified the key vault resource." + }, + "lastModifiedByType": { + "description": "The type of identity that last modified the key vault resource.", + "$ref": "#/definitions/IdentityType" + }, + "lastModifiedAt": { + "type": "string", + "format": "date-time", + "description": "The timestamp of the key vault resource last modification (UTC)." + } + } + }, + "IdentityType": { + "type": "string", + "description": "The type of identity.", + "enum": [ + "User", + "Application", + "ManagedIdentity", + "Key" + ], + "x-ms-enum": { + "name": "identityType", + "modelAsString": true + } + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/DeletedManagedHsm_Get.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/DeletedManagedHsm_Get.json new file mode 100644 index 000000000000..23864badaaa4 --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/DeletedManagedHsm_Get.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "name": "hsm1", + "location": "westus", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.KeyVault/locations/westus/deletedManagedHSMs/hsm1", + "name": "vault-agile-drawer-6404", + "type": "Microsoft.KeyVault/deletedManagedHSMs", + "properties": { + "mhsmId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/hsm-group/providers/Microsoft.KeyVault/managedHSMs/hsm1", + "location": "westus", + "deletionDate": "2021-04-01T00:00:59Z", + "scheduledPurgeDate": "2021-04-01T00:00:59Z", + "purgeProtectionEnabled": true, + "tags": { + "Dept": "hsm", + "Environment": "production" + } + } + } + } + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/DeletedManagedHsm_List.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/DeletedManagedHsm_List.json new file mode 100644 index 000000000000..3eb8ad51f8fe --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/DeletedManagedHsm_List.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.KeyVault/locations/westus/deletedManagedHSMs/hsm1", + "name": "vault-agile-drawer-6404", + "type": "Microsoft.KeyVault/deletedManagedHSMs", + "properties": { + "mhsmId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/hsm-group/providers/Microsoft.KeyVault/managedHSMs/hsm1", + "location": "westus", + "deletionDate": "2021-04-01T00:00:59Z", + "scheduledPurgeDate": "2021-04-01T00:00:59Z", + "purgeProtectionEnabled": true, + "tags": { + "Dept": "hsm", + "Environment": "production" + } + } + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.KeyVault/locations/westus/deletedManagedHSMs/hsm2", + "name": "vault-agile-drawer-6404", + "type": "Microsoft.KeyVault/deletedManagedHSMs", + "properties": { + "mhsmId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/hsm-group/providers/Microsoft.KeyVault/managedHSMs/hsm2", + "location": "westus", + "deletionDate": "2021-04-01T00:00:59Z", + "scheduledPurgeDate": "2021-04-01T00:00:59Z", + "purgeProtectionEnabled": true, + "tags": { + "Dept": "hsm", + "Environment": "production" + } + } + } + ], + "nextLink": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.KeyVault/deletedManagedHSMs?api-version=2021-04-01-preview&$skiptoken=dmF1bHQtcGVza3ktanVyeS03MzA3Ng==" + } + } + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/DeletedManagedHsm_Purge.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/DeletedManagedHsm_Purge.json new file mode 100644 index 000000000000..ea4b3fe0d2da --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/DeletedManagedHsm_Purge.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "name": "hsm1", + "location": "westus", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-04-01-preview" + }, + "responses": { + "202": {} + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/ManagedHsm_CreateOrUpdate.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/ManagedHsm_CreateOrUpdate.json new file mode 100644 index 000000000000..2c5b075c07c1 --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/ManagedHsm_CreateOrUpdate.json @@ -0,0 +1,86 @@ +{ + "parameters": { + "resourceGroupName": "hsm-group", + "name": "hsm1", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-04-01-preview", + "parameters": { + "properties": { + "tenantId": "00000000-0000-0000-0000-000000000000", + "initialAdminObjectIds": [ + "00000000-0000-0000-0000-000000000000" + ], + "enableSoftDelete": true, + "softDeleteRetentionInDays": 90, + "enablePurgeProtection": true + }, + "location": "westus", + "sku": { + "family": "B", + "name": "Standard_B1" + }, + "tags": { + "Dept": "hsm", + "Environment": "dogfood" + } + } + }, + "responses": { + "202": { + "body": { + "properties": { + "tenantId": "00000000-0000-0000-0000-000000000000", + "initialAdminObjectIds": [ + "00000000-0000-0000-0000-000000000000" + ], + "enableSoftDelete": true, + "softDeleteRetentionInDays": 90, + "enablePurgeProtection": true, + "hsmUri": null, + "provisioningState": "Provisioning", + "statusMessage": "Allocating hardware" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/hsm-group/providers/Microsoft.KeyVault/managedHSMs/hsm1", + "name": "hsm1", + "type": "Microsoft.KeyVault/managedHSMs", + "location": "westus", + "sku": { + "family": "B", + "name": "Standard_B1" + }, + "tags": { + "Dept": "hsm", + "Environment": "dogfood" + } + } + }, + "200": { + "body": { + "properties": { + "tenantId": "00000000-0000-0000-0000-000000000000", + "initialAdminObjectIds": [ + "00000000-0000-0000-0000-000000000000" + ], + "enableSoftDelete": true, + "softDeleteRetentionInDays": 90, + "enablePurgeProtection": true, + "hsmUri": "https://westus.hsm1.managedhsm.azure.net", + "provisioningState": "Succeeded", + "statusMessage": "ManagedHsm is functional." + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/hsm-group/providers/Microsoft.KeyVault/managedHSMs/hsm1", + "name": "hsm1", + "type": "Microsoft.KeyVault/managedHSMs", + "location": "westus", + "sku": { + "family": "B", + "name": "Standard_B1" + }, + "tags": { + "Dept": "hsm", + "Environment": "dogfood" + } + } + } + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/ManagedHsm_Delete.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/ManagedHsm_Delete.json new file mode 100644 index 000000000000..5e05d05cfee1 --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/ManagedHsm_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "resourceGroupName": "hsm-group", + "name": "hsm1", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/ManagedHsm_Get.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/ManagedHsm_Get.json new file mode 100644 index 000000000000..4ead0b217567 --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/ManagedHsm_Get.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "resourceGroupName": "hsm-group", + "name": "hsm1", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "tenantId": "00000000-0000-0000-0000-000000000000", + "initialAdminObjectIds": [ + "00000000-0000-0000-0000-000000000000" + ], + "enableSoftDelete": true, + "softDeleteRetentionInDays": 90, + "enablePurgeProtection": true, + "hsmUri": "https://westus.hsm1.managedhsm.azure.net", + "provisioningState": "Succeeded", + "statusMessage": "ManagedHsm is functional." + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/hsm-group/providers/Microsoft.KeyVault/managedHSMs/hsm1", + "name": "hsm1", + "type": "Microsoft.KeyVault/managedHSMs", + "location": "westus", + "sku": { + "family": "B", + "name": "Standard_B1" + }, + "tags": { + "Dept": "hsm", + "Environment": "dogfood" + } + } + }, + "202": { + "headers": { + "Retry-After": "60", + "Location": "https://some.endpoint.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/hsm-group/providers/Microsoft.KeyVault/managedHSMs/hsm1?api-version=2021-04-01-preview&kv-operation=abJjb2RkIjoiAGVsZXRlTWFuYWdlZEhzbUFzeW5jYm9" + } + }, + "204": {} + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/ManagedHsm_ListByResourceGroup.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/ManagedHsm_ListByResourceGroup.json new file mode 100644 index 000000000000..4ba77550a22a --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/ManagedHsm_ListByResourceGroup.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "resourceGroupName": "hsm-group", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "tenantId": "00000000-0000-0000-0000-000000000000", + "initialAdminObjectIds": [ + "00000000-0000-0000-0000-000000000000" + ], + "enableSoftDelete": true, + "softDeleteRetentionInDays": 90, + "enablePurgeProtection": true, + "hsmUri": "https://westus.hsm1.managedhsm.azure.net", + "provisioningState": "Succeeded", + "statusMessage": "ManagedHsm is functional." + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/hsm-group/providers/Microsoft.KeyVault/managedHSMs/hsm1", + "name": "hsm1", + "type": "Microsoft.KeyVault/managedHSMs", + "location": "westus", + "sku": { + "family": "B", + "name": "Standard_B1" + }, + "tags": { + "Dept": "hsm", + "Environment": "dogfood" + } + }, + { + "properties": { + "tenantId": "00000000-0000-0000-0000-000000000000", + "initialAdminObjectIds": [ + "00000000-0000-0000-0000-000000000000" + ], + "enableSoftDelete": true, + "softDeleteRetentionInDays": 90, + "enablePurgeProtection": true, + "hsmUri": "https://westus.hsm2.managedhsm.azure.net", + "provisioningState": "Succeeded", + "statusMessage": "ManagedHsm is functional." + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/hsm-group/providers/Microsoft.KeyVault/managedHSMs/hsm2", + "name": "hsm2", + "type": "Microsoft.KeyVault/managedHSMs", + "location": "westus", + "sku": { + "family": "B", + "name": "Standard_B1" + }, + "tags": { + "Dept": "hsm", + "Environment": "production" + } + } + ], + "nextLink": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/hsm-group/providers/Microsoft.KeyVault/managedHSMs?api-version=2021-04-01-preview&$skiptoken=dmF1bHQtcGVza3ktanVyeS03MzA3Ng==" + } + } + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/ManagedHsm_ListBySubscription.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/ManagedHsm_ListBySubscription.json new file mode 100644 index 000000000000..393b9f297487 --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/ManagedHsm_ListBySubscription.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "tenantId": "00000000-0000-0000-0000-000000000000", + "initialAdminObjectIds": [ + "00000000-0000-0000-0000-000000000000" + ], + "enableSoftDelete": true, + "softDeleteRetentionInDays": 90, + "enablePurgeProtection": true, + "hsmUri": "https://westus.hsm1.managedhsm.azure.net", + "provisioningState": "Succeeded", + "statusMessage": "ManagedHsm is functional." + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/hsm-group/providers/Microsoft.KeyVault/managedHSMs/hsm1", + "name": "hsm1", + "type": "Microsoft.KeyVault/managedHSMs", + "location": "westus", + "sku": { + "family": "B", + "name": "Standard_B1" + }, + "tags": { + "Dept": "hsm", + "Environment": "dogfood" + } + }, + { + "properties": { + "tenantId": "00000000-0000-0000-0000-000000000000", + "initialAdminObjectIds": [ + "00000000-0000-0000-0000-000000000000" + ], + "enableSoftDelete": true, + "softDeleteRetentionInDays": 90, + "enablePurgeProtection": true, + "hsmUri": "https://westus.hsm2.managedhsm.azure.net", + "provisioningState": "Succeeded", + "statusMessage": "ManagedHsm is functional." + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/hsm-group/providers/Microsoft.KeyVault/managedHSMs/hsm2", + "name": "hsm2", + "type": "Microsoft.KeyVault/managedHSMs", + "location": "westus", + "sku": { + "family": "B", + "name": "Standard_B1" + }, + "tags": { + "Dept": "hsm", + "Environment": "production" + } + } + ], + "nextLink": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.KeyVault/managedHSMs?api-version=2021-04-01-preview&$skiptoken=dmF1bHQtcGVza3ktanVyeS03MzA3Ng==" + } + } + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/ManagedHsm_ListPrivateEndpointConnectionsByResource.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/ManagedHsm_ListPrivateEndpointConnectionsByResource.json new file mode 100644 index 000000000000..86fbaad62cea --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/ManagedHsm_ListPrivateEndpointConnectionsByResource.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "sample-group", + "name": "sample-mhsm", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/managedhsms/sample-mhsm/privateEndpointConnections/sample-pec1", + "name": "sample-pec1", + "type": "Microsoft.KeyVault/managedhsms/privateEndpointConnections", + "etag": "", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-0000-0000-1234-000000000000/resourceGroups/sample-group/providers/Microsoft.Network/privateEndpoints/sample-pe1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "This was automatically approved by user1234@contoso.com", + "actionsRequired": "None" + } + } + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/managedhsms/sample-mhsm/privateEndpointConnections/sample-pec2", + "name": "sample-pec2", + "type": "Microsoft.KeyVault/managedhsms/privateEndpointConnections", + "etag": "", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-0000-0000-1234-000000000000/resourceGroups/sample-group/providers/Microsoft.Network/privateEndpoints/sample-pe2" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "This was automatically approved by user1234@contoso.com", + "actionsRequired": "None" + } + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/ManagedHsm_Update.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/ManagedHsm_Update.json new file mode 100644 index 000000000000..defc35777707 --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/ManagedHsm_Update.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "resourceGroupName": "hsm-group", + "name": "hsm1", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-04-01-preview", + "parameters": { + "tags": { + "Dept": "hsm", + "Environment": "dogfood", + "Slice": "A" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "tenantId": "00000000-0000-0000-0000-000000000000", + "initialAdminObjectIds": [ + "00000000-0000-0000-0000-000000000000" + ], + "enableSoftDelete": true, + "softDeleteRetentionInDays": 90, + "enablePurgeProtection": true, + "hsmUri": "https://westus.hsm1.managedhsm.azure.net", + "provisioningState": "Succeeded", + "statusMessage": "ManagedHsm is functional." + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/hsm-group/providers/Microsoft.KeyVault/managedHSMs/hsm1", + "name": "hsm1", + "type": "Microsoft.KeyVault/managedHSMs", + "location": "westus", + "sku": { + "family": "B", + "name": "Standard_B1" + }, + "tags": { + "Dept": "hsm", + "Environment": "dogfood", + "Slice": "A" + } + } + }, + "202": { + "body": { + "properties": { + "tenantId": "00000000-0000-0000-0000-000000000000", + "initialAdminObjectIds": [ + "00000000-0000-0000-0000-000000000000" + ], + "enableSoftDelete": true, + "softDeleteRetentionInDays": 90, + "enablePurgeProtection": true, + "hsmUri": "https://westus.hsm1.managedhsm.azure.net", + "provisioningState": "Updating", + "statusMessage": "ManagedHsm is updating." + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/hsm-group/providers/Microsoft.KeyVault/managedHSMs/hsm1", + "name": "hsm1", + "type": "Microsoft.KeyVault/managedHSMs", + "location": "westus", + "sku": { + "family": "B", + "name": "Standard_B1" + }, + "tags": { + "Dept": "hsm", + "Environment": "dogfood", + "Slice": "A" + } + } + } + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/ManagedHsm_deletePrivateEndpointConnection.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/ManagedHsm_deletePrivateEndpointConnection.json new file mode 100644 index 000000000000..c174600e7542 --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/ManagedHsm_deletePrivateEndpointConnection.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "sample-group", + "name": "sample-mhsm", + "privateEndpointConnectionName": "sample-pec", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/managedhsms/sample-vault/privateEndpointConnections/sample-pec", + "name": "sample-pec", + "type": "Microsoft.KeyVault/managedhsms/privateEndpointConnections", + "properties": { + "provisioningState": "Disconnected" + } + } + }, + "202": { + "headers": { + "Retry-After": "60", + "Location": "https://some.endpoint.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/managedhsms/sample-mhsm/privateEndpointConnections/sample-pec?operationid=25334578" + } + }, + "204": {} + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/ManagedHsm_getPrivateEndpointConnection.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/ManagedHsm_getPrivateEndpointConnection.json new file mode 100644 index 000000000000..077fc6d4b967 --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/ManagedHsm_getPrivateEndpointConnection.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "sample-group", + "name": "sample-mhsm", + "privateEndpointConnectionName": "sample-pec", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/managedhsms/sample-mhsm/privateEndpointConnections/sample-pec", + "name": "sample-pec", + "type": "Microsoft.KeyVault/managedhsms/privateEndpointConnections", + "etag": "", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-0000-0000-1234-000000000000/resourceGroups/sample-group/providers/Microsoft.Network/privateEndpoints/sample-pe" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "This was automatically approved by user1234@contoso.com", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/ManagedHsm_listPrivateLinkResources.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/ManagedHsm_listPrivateLinkResources.json new file mode 100644 index 000000000000..fca5d6991e3d --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/ManagedHsm_listPrivateLinkResources.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "sample-group", + "name": "sample-mhsm", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-resource-group/providers/Microsoft.KeyVault/managedhsms/sample-mhsm/privateLinkResources/managedhsm", + "name": "managedhsm", + "type": "Microsoft.KeyVault/managedhsms/privateLinkResources", + "properties": { + "groupId": "managedhsms", + "requiredMembers": [ + "default" + ], + "requiredZoneNames": [ + "privatelink.managedhsm.azure.net" + ] + } + } + ] + } + } + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/ManagedHsm_putPrivateEndpointConnection.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/ManagedHsm_putPrivateEndpointConnection.json new file mode 100644 index 000000000000..e77cf51673bd --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/ManagedHsm_putPrivateEndpointConnection.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "sample-group", + "name": "sample-mhsm", + "privateEndpointConnectionName": "sample-pec", + "api-version": "2021-04-01-preview", + "properties": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "My name is Joe and I'm approving this." + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/managedhsms/sample-mhsm/privateEndpointConnections/sample-pec", + "name": "sample-pec", + "type": "Microsoft.KeyVault/managedhsms/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-0000-0000-1234-000000000000/resourceGroups/sample-group/providers/Microsoft.Network/privateEndpoints/sample-pe" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "My name is Joe and I'm approving this.", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/checkVaultNameAvailability.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/checkVaultNameAvailability.json new file mode 100644 index 000000000000..594d98546dc1 --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/checkVaultNameAvailability.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-04-01-preview", + "vaultName": { + "name": "sample-vault", + "type": "Microsoft.KeyVault/vaults" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": true + } + } + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/createKey.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/createKey.json new file mode 100644 index 000000000000..5524232b01bf --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/createKey.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "sample-group", + "vaultName": "sample-vault-name", + "keyName": "sample-key-name", + "api-version": "2021-04-01-preview", + "parameters": { + "properties": { + "kty": "RSA" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault-name/keys/sample-key-name", + "name": "sample-key-name", + "type": "Microsoft.KeyVault/vaults/keys", + "location": "westus", + "properties": { + "attributes": { + "enabled": true, + "created": 1598533051, + "updated": 1598533051, + "recoveryLevel": "Purgeable" + }, + "kty": "RSA", + "keyOps": [ + "encrypt", + "decrypt", + "sign", + "verify", + "wrapKey", + "unwrapKey" + ], + "keySize": 2048, + "keyUri": "https://sample-vault-name.vault.azure.net:443/keys/sample-key-name", + "keyUriWithVersion": "https://sample-vault-name.vault.azure.net:443/keys/sample-key-name/fd618d9519b74f9aae94ade66b876acc" + } + } + }, + "default": { + "headers": {}, + "body": { + "error": { + "code": "", + "message": "" + } + } + } + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/createSecret.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/createSecret.json new file mode 100644 index 000000000000..503196790e05 --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/createSecret.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "resourceGroupName": "sample-group", + "vaultName": "sample-vault", + "secretName": "secret-name", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-04-01-preview", + "parameters": { + "properties": { + "value": "secret-value" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/secrets/secret-name", + "name": "secret-name", + "type": "Microsoft.KeyVault/vaults/secrets", + "location": "westus", + "properties": { + "attributes": { + "enabled": true, + "created": 1514938738, + "updated": 1514938738 + }, + "secretUri": "https://sample-vault.vault.azure.net/secrets/secret-name", + "secretUriWithVersion": "https:/sample-vault.vault.azure.net/secrets/secret-name/baf6de32c4774c7c81345f6476cf90a4" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/secrets/secret-name", + "name": "secret-name", + "type": "Microsoft.KeyVault/vaults/secrets", + "location": "westus", + "properties": { + "attributes": { + "enabled": true, + "created": 1514938738, + "updated": 1514938738 + }, + "secretUri": "https://sample-vault.vault.azure.net/secrets/secret-name", + "secretUriWithVersion": "https:/sample-vault.vault.azure.net/secrets/secret-name/baf6de32c4774c7c81345f6476cf90a4" + } + } + } + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/createVault.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/createVault.json new file mode 100644 index 000000000000..11ff6d983fef --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/createVault.json @@ -0,0 +1,288 @@ +{ + "parameters": { + "resourceGroupName": "sample-resource-group", + "vaultName": "sample-vault", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-04-01-preview", + "parameters": { + "location": "westus", + "properties": { + "tenantId": "00000000-0000-0000-0000-000000000000", + "sku": { + "family": "A", + "name": "standard" + }, + "accessPolicies": [ + { + "tenantId": "00000000-0000-0000-0000-000000000000", + "objectId": "00000000-0000-0000-0000-000000000000", + "permissions": { + "keys": [ + "encrypt", + "decrypt", + "wrapKey", + "unwrapKey", + "sign", + "verify", + "get", + "list", + "create", + "update", + "import", + "delete", + "backup", + "restore", + "recover", + "purge" + ], + "secrets": [ + "get", + "list", + "set", + "delete", + "backup", + "restore", + "recover", + "purge" + ], + "certificates": [ + "get", + "list", + "delete", + "create", + "import", + "update", + "managecontacts", + "getissuers", + "listissuers", + "setissuers", + "deleteissuers", + "manageissuers", + "recover", + "purge" + ] + } + } + ], + "enabledForDeployment": true, + "enabledForDiskEncryption": true, + "enabledForTemplateDeployment": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-resource-group/providers/Microsoft.KeyVault/vaults/sample-vault", + "name": "sample-vault", + "type": "Microsoft.KeyVault/vaults", + "location": "westus", + "tags": {}, + "systemData": { + "createdBy": "keyVaultUser1", + "createdByType": "User", + "createdAt": "2020-01-01T12:00:00.0000000Z", + "lastModifiedBy": "keyVaultUser2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-01T12:00:00.0000000Z" + }, + "properties": { + "sku": { + "family": "A", + "name": "standard" + }, + "tenantId": "00000000-0000-0000-0000-000000000000", + "networkAcls": { + "bypass": "AzureServices", + "defaultAction": "Deny", + "ipRules": [ + { + "value": "" + } + ], + "virtualNetworkRules": [ + { + "id": "", + "ignoreMissingVnetServiceEndpoint": false + } + ] + }, + "accessPolicies": [ + { + "tenantId": "00000000-0000-0000-0000-000000000000", + "objectId": "00000000-0000-0000-0000-000000000000", + "permissions": { + "keys": [ + "encrypt", + "decrypt", + "wrapKey", + "unwrapKey", + "sign", + "verify", + "get", + "list", + "create", + "update", + "import", + "delete", + "backup", + "restore", + "recover", + "purge" + ], + "secrets": [ + "get", + "list", + "set", + "delete", + "backup", + "restore", + "recover", + "purge" + ], + "certificates": [ + "get", + "list", + "delete", + "create", + "import", + "update", + "managecontacts", + "getissuers", + "listissuers", + "setissuers", + "deleteissuers", + "manageissuers", + "recover", + "purge" + ] + } + } + ], + "privateEndpointConnections": [ + { + "id": "", + "etag": "", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "actionsRequired": "None" + } + } + } + ], + "enabledForDeployment": true, + "enabledForDiskEncryption": true, + "enabledForTemplateDeployment": true, + "hsmPoolResourceId": "00000000-0000-0000-0000-000000000000", + "vaultUri": "https://sample-vault.vault.azure.net", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-resource-group/providers/Microsoft.KeyVault/vaults/sample-vault", + "name": "sample-vault", + "type": "Microsoft.KeyVault/vaults", + "location": "westus", + "tags": {}, + "systemData": { + "createdBy": "keyVaultUser1", + "createdByType": "User", + "createdAt": "2020-01-01T12:00:00.0000000Z", + "lastModifiedBy": "keyVaultUser2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-01T12:00:00.0000000Z" + }, + "properties": { + "sku": { + "family": "A", + "name": "standard" + }, + "tenantId": "00000000-0000-0000-0000-000000000000", + "accessPolicies": [ + { + "tenantId": "00000000-0000-0000-0000-000000000000", + "objectId": "00000000-0000-0000-0000-000000000000", + "permissions": { + "keys": [ + "encrypt", + "decrypt", + "wrapKey", + "unwrapKey", + "sign", + "verify", + "get", + "list", + "create", + "update", + "import", + "delete", + "backup", + "restore", + "recover", + "purge" + ], + "secrets": [ + "get", + "list", + "set", + "delete", + "backup", + "restore", + "recover", + "purge" + ], + "certificates": [ + "get", + "list", + "delete", + "create", + "import", + "update", + "managecontacts", + "getissuers", + "listissuers", + "setissuers", + "deleteissuers", + "manageissuers", + "recover", + "purge" + ] + } + } + ], + "enabledForDeployment": true, + "enabledForDiskEncryption": true, + "enabledForTemplateDeployment": true, + "hsmPoolResourceId": "00000000-0000-0000-0000-000000000000", + "vaultUri": "https://sample-vault.vault.azure.net", + "provisioningState": "Succeeded" + } + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "", + "message": "" + } + } + }, + "409": { + "headers": {}, + "body": { + "error": { + "code": "", + "message": "" + } + } + } + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/createVaultWithNetworkAcls.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/createVaultWithNetworkAcls.json new file mode 100644 index 000000000000..2694b2d4a3db --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/createVaultWithNetworkAcls.json @@ -0,0 +1,150 @@ +{ + "parameters": { + "resourceGroupName": "sample-resource-group", + "vaultName": "sample-vault", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-04-01-preview", + "parameters": { + "location": "westus", + "properties": { + "tenantId": "00000000-0000-0000-0000-000000000000", + "sku": { + "family": "A", + "name": "standard" + }, + "networkAcls": { + "defaultAction": "Deny", + "bypass": "AzureServices", + "ipRules": [ + { + "value": "124.56.78.91" + }, + { + "value": "'10.91.4.0/24'" + } + ], + "virtualNetworkRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "enabledForDeployment": true, + "enabledForDiskEncryption": true, + "enabledForTemplateDeployment": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-resource-group/providers/Microsoft.KeyVault/vaults/sample-vault", + "name": "sample-vault", + "type": "Microsoft.KeyVault/vaults", + "location": "westus", + "tags": {}, + "systemData": { + "createdBy": "keyVaultUser1", + "createdByType": "User", + "createdAt": "2020-01-01T12:00:00.0000000Z", + "lastModifiedBy": "keyVaultUser2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-01T12:00:00.0000000Z" + }, + "properties": { + "sku": { + "family": "A", + "name": "standard" + }, + "tenantId": "00000000-0000-0000-0000-000000000000", + "networkAcls": { + "defaultAction": "Deny", + "bypass": "AzureServices", + "ipRules": [ + { + "value": "124.56.78.91/32" + }, + { + "value": "'10.91.4.0/24'" + } + ], + "virtualNetworkRules": [ + { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/microsoft.network/virtualnetworks/test-vnet/subnets/subnet1" + } + ] + }, + "enabledForDeployment": true, + "enabledForDiskEncryption": true, + "enabledForTemplateDeployment": true, + "hsmPoolResourceId": "00000000-0000-0000-0000-000000000000", + "vaultUri": "https://sample-vault.vault.azure.net" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-resource-group/providers/Microsoft.KeyVault/vaults/sample-vault", + "name": "sample-vault", + "type": "Microsoft.KeyVault/vaults", + "location": "westus", + "tags": {}, + "systemData": { + "createdBy": "keyVaultUser1", + "createdByType": "User", + "createdAt": "2020-01-01T12:00:00.0000000Z", + "lastModifiedBy": "keyVaultUser2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-01T12:00:00.0000000Z" + }, + "properties": { + "sku": { + "family": "A", + "name": "standard" + }, + "tenantId": "00000000-0000-0000-0000-000000000000", + "networkAcls": { + "defaultAction": "Deny", + "bypass": "AzureServices", + "ipRules": [ + { + "value": "124.56.78.91/32" + }, + { + "value": "'10.91.4.0/24'" + } + ], + "virtualNetworkRules": [ + { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/microsoft.network/virtualnetworks/test-vnet/subnets/subnet1" + } + ] + }, + "enabledForDeployment": true, + "enabledForDiskEncryption": true, + "enabledForTemplateDeployment": true, + "hsmPoolResourceId": "00000000-0000-0000-0000-000000000000", + "vaultUri": "https://sample-vault.vault.azure.net" + } + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "", + "message": "" + } + } + }, + "409": { + "headers": {}, + "body": { + "error": { + "code": "", + "message": "" + } + } + } + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/deletePrivateEndpointConnection.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/deletePrivateEndpointConnection.json new file mode 100644 index 000000000000..2e927897cf70 --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/deletePrivateEndpointConnection.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "sample-group", + "vaultName": "sample-vault", + "privateEndpointConnectionName": "sample-pec", + "api-version": "2018-02-14" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/privateEndpointConnections/sample-pec", + "name": "sample-pec", + "type": "Microsoft.KeyVault/vaults/privateEndpointConnections", + "properties": { + "provisioningState": "Disconnected" + } + } + }, + "202": { + "headers": { + "Retry-After": "60", + "Location": "https://some.endpoint.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/privateEndpointConnections/sample-pec?operationid=25334578" + } + }, + "204": {} + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/deleteVault.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/deleteVault.json new file mode 100644 index 000000000000..c33aa9dbd5de --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/deleteVault.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "resourceGroupName": "sample-resource-group", + "vaultName": "sample-vault", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "headers": {} + }, + "204": { + "headers": {} + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "", + "message": "" + } + } + } + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/getDeletedVault.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/getDeletedVault.json new file mode 100644 index 000000000000..8cc5b4bb48a5 --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/getDeletedVault.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "vaultName": "sample-vault", + "location": "westus", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.KeyVault/locations/westus/deletedVaults/sample-vault", + "name": "sample-vault", + "type": "Microsoft.KeyVault/deletedVaults", + "properties": { + "vaultId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault", + "location": "westus", + "tags": {}, + "deletionDate": "2017-01-01T00:00:59Z", + "scheduledPurgeDate": "2017-04-01T00:00:59Z", + "purgeProtectionEnabled": true + } + } + } + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/getKey.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/getKey.json new file mode 100644 index 000000000000..042d8d8276cd --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/getKey.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "sample-group", + "vaultName": "sample-vault-name", + "keyName": "sample-key-name", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault-name/keys/sample-key-name", + "name": "sample-key-name", + "type": "Microsoft.KeyVault/vaults/keys", + "location": "westus", + "properties": { + "attributes": { + "enabled": true, + "created": 1598533051, + "updated": 1598533051, + "recoveryLevel": "Purgeable" + }, + "kty": "RSA", + "keyOps": [ + "encrypt", + "decrypt", + "sign", + "verify", + "wrapKey", + "unwrapKey" + ], + "keySize": 2048, + "keyUri": "https://sample-vault-name.vault.azure.net:443/keys/sample-key-name", + "keyUriWithVersion": "https://sample-vault-name.vault.azure.net:443/keys/sample-key-name/fd618d9519b74f9aae94ade66b876acc" + } + } + }, + "default": { + "headers": {}, + "body": { + "error": { + "code": "", + "message": "" + } + } + } + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/getKeyVersion.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/getKeyVersion.json new file mode 100644 index 000000000000..5ac40ea13ce2 --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/getKeyVersion.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "sample-group", + "vaultName": "sample-vault-name", + "keyName": "sample-key-name", + "keyVersion": "fd618d9519b74f9aae94ade66b876acc", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault-name/keys/sample-key-name/versions/fd618d9519b74f9aae94ade66b876acc", + "name": "fd618d9519b74f9aae94ade66b876acc", + "type": "Microsoft.KeyVault/vaults/keys/versions", + "location": "westus", + "properties": { + "attributes": { + "enabled": true, + "created": 1598533051, + "updated": 1598533051, + "recoveryLevel": "Purgeable" + }, + "kty": "RSA", + "keyOps": [ + "encrypt", + "decrypt", + "sign", + "verify", + "wrapKey", + "unwrapKey" + ], + "keySize": 2048, + "keyUri": "https://sample-vault-name.vault.azure.net:443/keys/sample-key-name", + "keyUriWithVersion": "https://sample-vault-name.vault.azure.net:443/keys/sample-key-name/fd618d9519b74f9aae94ade66b876acc" + } + } + }, + "default": { + "headers": {}, + "body": { + "error": { + "code": "", + "message": "" + } + } + } + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/getPrivateEndpointConnection.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/getPrivateEndpointConnection.json new file mode 100644 index 000000000000..287caee88a94 --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/getPrivateEndpointConnection.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "sample-group", + "vaultName": "sample-vault", + "privateEndpointConnectionName": "sample-pec", + "api-version": "2018-02-14" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/privateEndpointConnections/sample-pec", + "name": "sample-pec", + "type": "Microsoft.KeyVault/vaults/privateEndpointConnections", + "etag": "", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-0000-0000-1234-000000000000/resourceGroups/sample-group/providers/Microsoft.Network/privateEndpoints/sample-pe" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "This was automatically approved by user1234@contoso.com", + "actionsRequired": "None" + } + } + } + }, + "204": { + "headers": {} + } + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/getSecret.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/getSecret.json new file mode 100644 index 000000000000..4a5f1a1d97b8 --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/getSecret.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "resourceGroupName": "sample-group", + "vaultName": "sample-vault", + "secretName": "secret-name", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/secrets/secret-name", + "name": "secret-name", + "type": "Microsoft.KeyVault/vaults/secrets", + "location": "westus", + "properties": { + "attributes": { + "enabled": true, + "created": 1514940950, + "updated": 1514940950 + }, + "secretUri": "https://sample-vault.vault.azure.net/secrets/secret-name", + "secretUriWithVersion": "https://sample-vault.vault.azure.net/secrets/secret-name/77445834f7de41bab81d0723bf996860" + } + } + } + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/getVault.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/getVault.json new file mode 100644 index 000000000000..527cac26db5d --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/getVault.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "resourceGroupName": "sample-resource-group", + "vaultName": "sample-vault", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-resource-group/providers/Microsoft.KeyVault/vaults/sample-vault", + "name": "sample-vault", + "type": "Microsoft.KeyVault/vaults", + "location": "westus", + "tags": {}, + "systemData": { + "createdBy": "keyVaultUser1", + "createdByType": "User", + "createdAt": "2020-01-01T12:00:00.0000000Z", + "lastModifiedBy": "keyVaultUser2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-01T12:00:00.0000000Z" + }, + "properties": { + "sku": { + "family": "A", + "name": "standard" + }, + "tenantId": "00000000-0000-0000-0000-000000000000", + "accessPolicies": [ + { + "tenantId": "00000000-0000-0000-0000-000000000000", + "objectId": "00000000-0000-0000-0000-000000000000", + "permissions": { + "keys": [ + "encrypt", + "decrypt", + "wrapKey", + "unwrapKey", + "sign", + "verify", + "get", + "list", + "create", + "update", + "import", + "delete", + "backup", + "restore", + "recover", + "purge" + ], + "secrets": [ + "get", + "list", + "set", + "delete", + "backup", + "restore", + "recover", + "purge" + ], + "certificates": [ + "get", + "list", + "delete", + "create", + "import", + "update", + "managecontacts", + "getissuers", + "listissuers", + "setissuers", + "deleteissuers", + "manageissuers", + "recover", + "purge" + ] + } + } + ], + "enabledForDeployment": true, + "enabledForDiskEncryption": true, + "enabledForTemplateDeployment": true, + "hsmPoolResourceId": "00000000-0000-0000-0000-000000000000", + "vaultUri": "https://sample-vault.vault.azure.net", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/listDeletedVaults.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/listDeletedVaults.json new file mode 100644 index 000000000000..a29a2823f8f6 --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/listDeletedVaults.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "$top": 1, + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.KeyVault/locations/westus/deletedVaults/sample-vault", + "name": "vault-agile-drawer-6404", + "type": "Microsoft.KeyVault/deletedVaults", + "properties": { + "vaultId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault", + "location": "westus", + "tags": {}, + "deletionDate": "2017-01-01T00:00:59Z", + "scheduledPurgeDate": "2017-04-01T00:00:59Z", + "purgeProtectionEnabled": true + } + } + ], + "nextLink": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.KeyVault/deletedVaults?api-version=2021-04-01-preview&%24skiptoken=HY3RaoMwAEX%2fRcbeYhJrnRXKYNWOuqpME0sfNcYui0Yxade19N8ne7hcDlzOvVuKX81eKKmt4G4dooLQwgqsL2NGHUDYV6o68Z4rY1e388RtNvRQn2vNJjEaMSgNvcbneMUcsKg8BFwft8DndQ0w9hu2QOiFLRs4TsNFNHzSMBFsGvTQGvuD%2f5bVuTOw4R03vPkH%2fVqNAlzm5SxfOwh7ACOA8POTlvPjILlaU1ke8jImOc23JCppQVfZnna0DXc4ISc3vSVuRo5zJE6%2bj25C3vwk2v2kEV2mMn7PyOc1DbtNGkonnzuLym1G400uI5QRZj0efw%3d%3d" + } + } + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/listKeyVersions.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/listKeyVersions.json new file mode 100644 index 000000000000..207aa53a9a1e --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/listKeyVersions.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "sample-group", + "vaultName": "sample-vault-name", + "keyName": "sample-key-name", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault-name/keys/sample-key-name/versions/c2296aa24acf4daf86942bff5aca73dd", + "name": "c2296aa24acf4daf86942bff5aca73dd", + "type": "Microsoft.KeyVault/vaults/keys/versions", + "location": "westus", + "properties": { + "attributes": { + "enabled": true, + "created": 1598641074, + "updated": 1598641074, + "recoveryLevel": "Purgeable" + }, + "keyUri": "https://sample-vault-name.vault.azure.net:443/keys/sample-key-name", + "keyUriWithVersion": "https://sample-vault-name.vault.azure.net:443/keys/sample-key-name/c2296aa24acf4daf86942bff5aca73dd" + } + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault-name/keys/sample-key-name/versions/d5a04667b6f44b0ca62825f5eae93da6", + "name": "d5a04667b6f44b0ca62825f5eae93da6", + "type": "Microsoft.KeyVault/vaults/keys/versions", + "location": "westus", + "properties": { + "attributes": { + "enabled": true, + "created": 1598641295, + "updated": 1598641295, + "recoveryLevel": "Purgeable" + }, + "keyUri": "https://sample-vault-name.vault.azure.net:443/keys/sample-key-name", + "keyUriWithVersion": "https://sample-vault-name.vault.azure.net:443/keys/sample-key-name/d5a04667b6f44b0ca62825f5eae93da6" + } + } + ] + } + }, + "default": { + "headers": {}, + "body": { + "error": { + "code": "", + "message": "" + } + } + } + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/listKeys.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/listKeys.json new file mode 100644 index 000000000000..c64851348641 --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/listKeys.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "sample-group", + "vaultName": "sample-vault-name", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault-name/keys/sample-key-name-1", + "name": "sample-key-name-1", + "type": "Microsoft.KeyVault/vaults/keys", + "location": "westus", + "properties": { + "attributes": { + "enabled": true, + "created": 1596493796, + "updated": 1596493796, + "recoveryLevel": "Purgeable" + }, + "keyUri": "https://sample-vault-name.vault.azure.net:443/keys/sample-key-name-1" + } + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault-name/keys/sample-key-name-2", + "name": "sample-key-name-2", + "type": "Microsoft.KeyVault/vaults/keys", + "location": "westus", + "properties": { + "attributes": { + "enabled": true, + "created": 1596493797, + "updated": 1596493797, + "recoveryLevel": "Purgeable" + }, + "keyUri": "https://sample-vault-name.vault.azure.net:443/keys/sample-key-name-2" + } + } + ] + } + }, + "default": { + "headers": {}, + "body": { + "error": { + "code": "", + "message": "" + } + } + } + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/listOperations.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/listOperations.json new file mode 100644 index 000000000000..d57998626891 --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/listOperations.json @@ -0,0 +1,332 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.KeyVault/vaults/read", + "display": { + "provider": "Microsoft Key Vault", + "resource": "Key Vault", + "operation": "View Key Vault", + "description": "View the properties of a key vault" + }, + "isDataAction": false + }, + { + "name": "Microsoft.KeyVault/vaults/write", + "display": { + "provider": "Microsoft Key Vault", + "resource": "Key Vault", + "operation": "Update Key Vault", + "description": "Create a new key vault or update the properties of an existing key vault" + }, + "isDataAction": false + }, + { + "name": "Microsoft.KeyVault/vaults/delete", + "display": { + "provider": "Microsoft Key Vault", + "resource": "Key Vault", + "operation": "Delete Key Vault", + "description": "Delete a key vault" + }, + "isDataAction": false + }, + { + "name": "Microsoft.KeyVault/vaults/deploy/action", + "display": { + "provider": "Microsoft Key Vault", + "resource": "Key Vault", + "operation": "Use Vault for Azure Deployments", + "description": "Enables access to secrets in a key vault when deploying Azure resources" + }, + "isDataAction": false + }, + { + "name": "Microsoft.KeyVault/vaults/secrets/read", + "display": { + "provider": "Microsoft Key Vault", + "resource": "Secret", + "operation": "View Secret Properties", + "description": "View the properties of a secret, but not its value" + }, + "isDataAction": false + }, + { + "name": "Microsoft.KeyVault/vaults/secrets/write", + "display": { + "provider": "Microsoft Key Vault", + "resource": "Secret", + "operation": "Update Secret", + "description": "Create a new secret or update the value of an existing secret" + }, + "isDataAction": false + }, + { + "name": "Microsoft.KeyVault/vaults/accessPolicies/write", + "display": { + "provider": "Microsoft Key Vault", + "resource": "Access Policy", + "operation": "Update Access Policy", + "description": "Update an existing access policy by merging or replacing, or add a new access policy to a vault." + }, + "isDataAction": false + }, + { + "origin": "system", + "name": "Microsoft.KeyVault/vaults/providers/Microsoft.Insights/logDefinitions/read", + "display": { + "provider": "Microsoft Key Vault", + "resource": "Key Vault Log Definition", + "operation": "Read log definition", + "description": "Gets the available logs for a key vault" + }, + "isDataAction": false, + "properties": { + "serviceSpecification": { + "logSpecifications": [ + { + "name": "AuditEvent", + "displayName": "Audit Logs", + "blobDuration": "PT1H" + } + ], + "metricSpecifications": [ + { + "name": "ServiceApiHit", + "displayName": "", + "displayDescription": "", + "unit": "", + "aggregationType": "", + "supportedAggregationTypes": [ + "" + ], + "supportedTimeGrainTypes": [ + "" + ], + "lockAggregationType": "", + "dimensions": [ + { + "name": "ActivityType", + "displayName": "", + "toBeExportedForShoebox": true + }, + { + "name": "ActivityName", + "displayName": "", + "toBeExportedForShoebox": true + } + ], + "fillGapWithZero": false, + "internalMetricName": "AuditEvent" + } + ] + } + } + }, + { + "origin": "system", + "name": "Microsoft.KeyVault/vaults/providers/Microsoft.Insights/diagnosticSettings/Read", + "display": { + "provider": "Microsoft Key Vault", + "resource": "Key Vault Diagnostic Settings", + "operation": "Read diagnostic setting", + "description": "Gets the diagnostic setting for the resource" + }, + "isDataAction": false + }, + { + "origin": "system", + "name": "Microsoft.KeyVault/vaults/providers/Microsoft.Insights/diagnosticSettings/Write", + "display": { + "provider": "Microsoft Key Vault", + "resource": "Key Vault Diagnostic Settings", + "operation": "Write diagnostic setting", + "description": "Creates or updates the diagnostic setting for the resource" + }, + "isDataAction": false + }, + { + "name": "Microsoft.KeyVault/register/action", + "display": { + "provider": "Microsoft Key Vault", + "resource": "Subscription", + "operation": "Register Subscription", + "description": "Registers a subscription" + }, + "isDataAction": false + }, + { + "name": "Microsoft.KeyVault/unregister/action", + "display": { + "provider": "Microsoft Key Vault", + "resource": "Subscription", + "operation": "Unregister Subscription", + "description": "Unregisters a subscription" + }, + "isDataAction": false + }, + { + "name": "Microsoft.KeyVault/operations/read", + "display": { + "provider": "Microsoft Key Vault", + "resource": "Operations", + "operation": "Available Key Vault Operations", + "description": "Lists operations available on Microsoft.KeyVault resource provider" + }, + "isDataAction": false + }, + { + "name": "Microsoft.KeyVault/checkNameAvailability/read", + "display": { + "provider": "Microsoft Key Vault", + "resource": "Name Availability", + "operation": "Check Name Availability", + "description": "Checks that a key vault name is valid and is not in use" + }, + "isDataAction": false + }, + { + "name": "Microsoft.KeyVault/deletedVaults/read", + "display": { + "provider": "Microsoft Key Vault", + "resource": "Soft Deleted Key Vault", + "operation": "View Soft Deleted Vaults", + "description": "View the properties of soft deleted key vaults" + }, + "isDataAction": false + }, + { + "name": "Microsoft.KeyVault/locations/deletedVaults/read", + "display": { + "provider": "Microsoft Key Vault", + "resource": "Soft Deleted Key Vault", + "operation": "View Soft Deleted Key Vault", + "description": "View the properties of a soft deleted key vault" + }, + "isDataAction": false + }, + { + "name": "Microsoft.KeyVault/locations/deletedVaults/purge/action", + "display": { + "provider": "Microsoft Key Vault", + "resource": "Soft Deleted Key Vault", + "operation": "Purge Soft Deleted Key Vault", + "description": "Purge a soft deleted key vault" + }, + "isDataAction": false + }, + { + "name": "Microsoft.KeyVault/locations/operationResults/read", + "display": { + "provider": "Microsoft Key Vault", + "resource": "Long Run Operation Result", + "operation": "Check Operation Result", + "description": "Check the result of a long run operation" + }, + "isDataAction": false + }, + { + "name": "Microsoft.KeyVault/hsmPools/read", + "display": { + "provider": "Microsoft Key Vault", + "resource": "HSM pool", + "operation": "View HSM pool", + "description": "View the properties of an HSM pool" + }, + "isDataAction": false + }, + { + "name": "Microsoft.KeyVault/hsmPools/write", + "display": { + "provider": "Microsoft Key Vault", + "resource": "HSM pool", + "operation": "Create or Update HSM pool", + "description": "Create a new HSM pool of update the properties of an existing HSM pool" + }, + "isDataAction": false + }, + { + "name": "Microsoft.KeyVault/hsmPools/delete", + "display": { + "provider": "Microsoft Key Vault", + "resource": "HSM pool", + "operation": "Delete HSM pool", + "description": "Delete an HSM pool" + }, + "isDataAction": false + }, + { + "name": "Microsoft.KeyVault/hsmPools/joinVault/action", + "display": { + "provider": "Microsoft Key Vault", + "resource": "HSM pool", + "operation": "Join KeyVault to HSM pool", + "description": "Join a key vault to an HSM pool" + }, + "isDataAction": false + }, + { + "name": "Microsoft.KeyVault/managedHSMs/read", + "display": { + "provider": "Microsoft Key Vault", + "resource": "Managed HSM", + "operation": "View Managed HSM", + "description": "View the properties of a Managed HSM" + }, + "isDataAction": false + }, + { + "name": "Microsoft.KeyVault/managedHSMs/write", + "display": { + "provider": "Microsoft Key Vault", + "resource": "Managed HSM", + "operation": "Create or Update Managed HSM", + "description": "Create a new Managed HSM of update the properties of an existing Managed HSM" + }, + "isDataAction": false + }, + { + "name": "Microsoft.KeyVault/managedHSMs/delete", + "display": { + "provider": "Microsoft Key Vault", + "resource": "Managed HSM", + "operation": "Delete Managed HSM", + "description": "Delete a Managed HSM" + }, + "isDataAction": false + }, + { + "origin": "system", + "name": "Microsoft.KeyVault/vaults/providers/Microsoft.Insights/metricDefinitions/read", + "display": { + "provider": "Microsoft Key Vault", + "resource": "Key Vault Metric Definition", + "operation": "Read metric definition", + "description": "Gets the available metrics for a key vault" + }, + "isDataAction": false, + "properties": { + "serviceSpecification": {} + } + }, + { + "origin": "system", + "name": "Microsoft.KeyVault/locations/deleteVirtualNetworkOrSubnets/action", + "display": { + "provider": "Microsoft Key Vault", + "resource": "Location", + "operation": "Modify Network ACLs containing the deleted Vitual Network or Subnet ", + "description": "Notifies Microsoft.KeyVault that a virtual network or subnet is being deleted" + }, + "isDataAction": false + } + ] + } + } + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/listPrivateEndpointConnection.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/listPrivateEndpointConnection.json new file mode 100644 index 000000000000..89716ba8f8fc --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/listPrivateEndpointConnection.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "sample-group", + "vaultName": "sample-vault", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/privateEndpointConnections/sample-pec", + "name": "sample-pec", + "type": "Microsoft.KeyVault/vaults/privateEndpointConnections", + "etag": "", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-0000-0000-1234-000000000000/resourceGroups/sample-group/providers/Microsoft.Network/privateEndpoints/sample-pe" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "This was automatically approved by user1234@contoso.com", + "actionsRequired": "None" + } + } + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/privateEndpointConnections/sample-pec", + "name": "sample-pec", + "type": "Microsoft.KeyVault/vaults/privateEndpointConnections", + "etag": "", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-0000-0000-1234-000000000000/resourceGroups/sample-group/providers/Microsoft.Network/privateEndpoints/sample-pe" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "This was automatically approved by user1234@contoso.com", + "actionsRequired": "None" + } + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/listPrivateLinkResources.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/listPrivateLinkResources.json new file mode 100644 index 000000000000..f76786fad20e --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/listPrivateLinkResources.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "sample-group", + "vaultName": "sample-vault", + "api-version": "2018-02-14" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-resource-group/providers/Microsoft.KeyVault/vaults/sample-vault/privateLinkResources/vault", + "name": "vault", + "type": "Microsoft.KeyVault/vaults/privateLinkResources", + "properties": { + "groupId": "vault", + "requiredMembers": [ + "default" + ], + "requiredZoneNames": [ + "privatelink.vaultcore.azure.net" + ] + } + } + ] + } + } + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/listSecrets.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/listSecrets.json new file mode 100644 index 000000000000..4dcd8cd1ef66 --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/listSecrets.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "resourceGroupName": "sample-group", + "vaultName": "sample-vault", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/secrets/secret-name", + "name": "secret-name", + "type": "Microsoft.KeyVault/vaults/secrets", + "location": "westus", + "properties": { + "attributes": { + "enabled": true, + "created": 1514941476, + "updated": 1514941476 + }, + "secretUri": "https://sample-vault.vault.azure.net/secrets/secret-name", + "secretUriWithVersion": "https://sample-vault.vault.azure.net/secrets/secret-name/40af42fbc10047f8a756a73211492f56" + } + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/secrets/secret-name2", + "name": "secret-name2", + "type": "Microsoft.KeyVault/vaults/secrets", + "location": "westus", + "properties": { + "attributes": { + "enabled": true, + "created": 1514941476, + "updated": 1514941476 + }, + "secretUri": "https://sample-vault.vault.azure.net/secrets/secret-name2", + "secretUriWithVersion": "https://sample-vault.vault.azure.net/secrets/secret-name2/cd7264a6f56c44d1b594423c80609aae" + } + } + ] + } + } + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/listVault.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/listVault.json new file mode 100644 index 000000000000..3397baaa9f83 --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/listVault.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "$filter": "resourceType eq 'Microsoft.KeyVault/vaults'", + "$top": 1, + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2015-11-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault", + "name": "sample-vault", + "type": "Microsoft.KeyVault/vaults", + "location": "westus", + "tags": {} + } + ], + "nextLink": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resources?%24filter=resourceType+eq+%27Microsoft.KeyVault%2fvaults%27&%24top=4&api-version=2015-11-01&%24skiptoken=eyJuZXh0UGFydGl0aW9uS2V5IjoiMSE4IVEwTTJNVGMtIiwibmV4dFJvd0tleSI6IjEhMTMyIU5rUTRSVEU1UXpJelFUWXdORGd4UmpoRlFrSXhNVGhFUXpNd01EZEROVVJmVkVkT1RDMU5TVU5TVDFOUFJsUTZNa1ZMUlZsV1FWVk1WRG95UmxaQlZVeFVVeTFUVTFKSExVcEpUVG95UkZSRlUxUTZNa1JXUVZWTVZDMVhSVk5VVlZNLSJ9" + } + } + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/listVaultByResourceGroup.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/listVaultByResourceGroup.json new file mode 100644 index 000000000000..dd4ee2b1d6cf --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/listVaultByResourceGroup.json @@ -0,0 +1,98 @@ +{ + "parameters": { + "$top": 1, + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "sample-group", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault", + "name": "sample-vault", + "type": "Microsoft.KeyVault/vaults", + "location": "westus", + "tags": {}, + "systemData": { + "createdBy": "keyVaultUser1", + "createdByType": "User", + "createdAt": "2020-01-01T12:00:00.0000000Z", + "lastModifiedBy": "keyVaultUser2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-01T12:00:00.0000000Z" + }, + "properties": { + "sku": { + "family": "A", + "name": "premium" + }, + "tenantId": "00000000-0000-0000-0000-000000000000", + "accessPolicies": [ + { + "tenantId": "00000000-0000-0000-0000-000000000000", + "objectId": "00000000-0000-0000-0000-000000000000", + "permissions": { + "keys": [ + "encrypt", + "decrypt", + "wrapKey", + "unwrapKey", + "sign", + "verify", + "get", + "list", + "create", + "update", + "import", + "delete", + "backup", + "restore", + "recover", + "purge" + ], + "secrets": [ + "get", + "list", + "set", + "delete", + "backup", + "restore", + "recover", + "purge" + ], + "certificates": [ + "get", + "list", + "delete", + "create", + "import", + "update", + "managecontacts", + "getissuers", + "listissuers", + "setissuers", + "deleteissuers", + "manageissuers", + "recover", + "purge" + ] + } + } + ], + "enabledForDeployment": true, + "enabledForDiskEncryption": true, + "enabledForTemplateDeployment": true, + "enableSoftDelete": true, + "hsmPoolResourceId": "00000000-0000-0000-0000-000000000000", + "vaultUri": "https://sample-vault.vault.azure.net/", + "provisioningState": "Succeeded" + } + } + ], + "nextLink": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults?api-version=2021-04-01-preview&$skiptoken=dmF1bHQtcGVza3ktanVyeS03MzA3Ng==" + } + } + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/listVaultBySubscription.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/listVaultBySubscription.json new file mode 100644 index 000000000000..da013843842f --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/listVaultBySubscription.json @@ -0,0 +1,97 @@ +{ + "parameters": { + "$top": 1, + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault", + "name": "sample-vault", + "type": "Microsoft.KeyVault/vaults", + "location": "westus", + "tags": {}, + "systemData": { + "createdBy": "keyVaultUser1", + "createdByType": "User", + "createdAt": "2020-01-01T12:00:00.0000000Z", + "lastModifiedBy": "keyVaultUser2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-01T12:00:00.0000000Z" + }, + "properties": { + "sku": { + "family": "A", + "name": "premium" + }, + "tenantId": "00000000-0000-0000-0000-000000000000", + "accessPolicies": [ + { + "tenantId": "00000000-0000-0000-0000-000000000000", + "objectId": "00000000-0000-0000-0000-000000000000", + "permissions": { + "keys": [ + "encrypt", + "decrypt", + "wrapKey", + "unwrapKey", + "sign", + "verify", + "get", + "list", + "create", + "update", + "import", + "delete", + "backup", + "restore", + "recover", + "purge" + ], + "secrets": [ + "get", + "list", + "set", + "delete", + "backup", + "restore", + "recover", + "purge" + ], + "certificates": [ + "get", + "list", + "delete", + "create", + "import", + "update", + "managecontacts", + "getissuers", + "listissuers", + "setissuers", + "deleteissuers", + "manageissuers", + "recover", + "purge" + ] + } + } + ], + "enabledForDeployment": true, + "enabledForDiskEncryption": true, + "enabledForTemplateDeployment": true, + "enableSoftDelete": true, + "hsmPoolResourceId": "00000000-0000-0000-0000-000000000000", + "vaultUri": "https://sample-vault.vault.azure.net/", + "provisioningState": "Succeeded" + } + } + ], + "nextLink": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resources?api-version=22021-04-01-preview&$skiptoken=dmF1bHQtcGVza3ktanVyeS03MzA3Ng==" + } + } + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/purgeDeletedVault.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/purgeDeletedVault.json new file mode 100644 index 000000000000..1b3308e1ae9a --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/purgeDeletedVault.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "vaultName": "sample-vault", + "location": "westus", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "headers": {} + }, + "202": { + "headers": {} + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "", + "message": "" + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "", + "message": "" + } + } + } + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/putPrivateEndpointConnection.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/putPrivateEndpointConnection.json new file mode 100644 index 000000000000..1a33f385b23d --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/putPrivateEndpointConnection.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "sample-group", + "vaultName": "sample-vault", + "privateEndpointConnectionName": "sample-pec", + "api-version": "2018-02-14", + "properties": { + "etag": "", + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "My name is Joe and I'm approving this." + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/privateEndpointConnections/sample-pec", + "name": "sample-pec", + "type": "Microsoft.KeyVault/vaults/privateEndpointConnections", + "etag": "", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-0000-0000-1234-000000000000/resourceGroups/sample-group/providers/Microsoft.Network/privateEndpoints/sample-pe" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "My name is Joe and I'm approving this.", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/updateAccessPoliciesAdd.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/updateAccessPoliciesAdd.json new file mode 100644 index 000000000000..eb488048b3f3 --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/updateAccessPoliciesAdd.json @@ -0,0 +1,109 @@ +{ + "parameters": { + "resourceGroupName": "sample-group", + "vaultName": "sample-vault", + "operationKind": "add", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-04-01-preview", + "parameters": { + "properties": { + "accessPolicies": [ + { + "tenantId": "00000000-0000-0000-0000-000000000000", + "objectId": "00000000-0000-0000-0000-000000000000", + "permissions": { + "keys": [ + "encrypt" + ], + "secrets": [ + "get" + ], + "certificates": [ + "get" + ] + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/accessPolicies/", + "type": "Microsoft.KeyVault/vaults/accessPolicies", + "properties": { + "accessPolicies": [ + { + "tenantId": "00000000-0000-0000-0000-000000000000", + "objectId": "00000000-0000-0000-0000-000000000000", + "permissions": { + "keys": [ + "encrypt" + ], + "secrets": [ + "get" + ], + "certificates": [ + "get" + ] + } + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/accessPolicies/", + "type": "Microsoft.KeyVault/vaults/accessPolicies", + "properties": { + "accessPolicies": [ + { + "tenantId": "00000000-0000-0000-0000-000000000000", + "objectId": "00000000-0000-0000-0000-000000000000", + "permissions": { + "keys": [ + "encrypt" + ], + "secrets": [ + "get" + ], + "certificates": [ + "get" + ] + } + } + ] + } + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "", + "message": "" + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "", + "message": "" + } + } + }, + "409": { + "headers": {}, + "body": { + "error": { + "code": "", + "message": "" + } + } + } + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/updateSecret.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/updateSecret.json new file mode 100644 index 000000000000..5f4851a59fdf --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/updateSecret.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "resourceGroupName": "sample-group", + "vaultName": "sample-vault", + "secretName": "secret-name", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-04-01-preview", + "parameters": { + "properties": { + "value": "secret-value2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/secrets/secret-name", + "name": "secret-name", + "type": "Microsoft.KeyVault/vaults/secrets", + "location": "westus", + "properties": { + "attributes": { + "enabled": true, + "created": 1514940684, + "updated": 1514940698 + }, + "secretUri": "https://sample-vault.vault.azure.net/secrets/secret-name", + "secretUriWithVersion": "https://sample-vault.vault.azure.net/secrets/secret-name/b8c802f549764f2d97885d152f92ee9d" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/secrets/secret-name", + "name": "secret-name", + "type": "Microsoft.KeyVault/vaults/secrets", + "location": "westus", + "properties": { + "attributes": { + "enabled": true, + "created": 1514940684, + "updated": 1514940698 + }, + "secretUri": "https://sample-vault.vault.azure.net/secrets/secret-name", + "secretUriWithVersion": "https://sample-vault.vault.azure.net/secrets/secret-name/b8c802f549764f2d97885d152f92ee9d" + } + } + } + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/updateVault.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/updateVault.json new file mode 100644 index 000000000000..cc307b3f0ca4 --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/examples/updateVault.json @@ -0,0 +1,286 @@ +{ + "parameters": { + "resourceGroupName": "sample-resource-group", + "vaultName": "sample-vault", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-04-01-preview", + "parameters": { + "properties": { + "tenantId": "00000000-0000-0000-0000-000000000000", + "sku": { + "family": "A", + "name": "standard" + }, + "accessPolicies": [ + { + "tenantId": "00000000-0000-0000-0000-000000000000", + "objectId": "00000000-0000-0000-0000-000000000000", + "permissions": { + "keys": [ + "encrypt", + "decrypt", + "wrapKey", + "unwrapKey", + "sign", + "verify", + "get", + "list", + "create", + "update", + "import", + "delete", + "backup", + "restore", + "recover", + "purge" + ], + "secrets": [ + "get", + "list", + "set", + "delete", + "backup", + "restore", + "recover", + "purge" + ], + "certificates": [ + "get", + "list", + "delete", + "create", + "import", + "update", + "managecontacts", + "getissuers", + "listissuers", + "setissuers", + "deleteissuers", + "manageissuers", + "recover", + "purge" + ] + } + } + ], + "enabledForDeployment": true, + "enabledForDiskEncryption": true, + "enabledForTemplateDeployment": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-resource-group/providers/Microsoft.KeyVault/vaults/sample-vault", + "name": "sample-vault", + "type": "Microsoft.KeyVault/vaults", + "location": "westus", + "tags": {}, + "systemData": { + "createdBy": "keyVaultUser1", + "createdByType": "User", + "createdAt": "2020-01-01T12:00:00.0000000Z", + "lastModifiedBy": "keyVaultUser2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-01T12:00:00.0000000Z" + }, + "properties": { + "sku": { + "family": "A", + "name": "standard" + }, + "tenantId": "00000000-0000-0000-0000-000000000000", + "networkAcls": { + "bypass": "AzureServices", + "defaultAction": "Deny", + "ipRules": [ + { + "value": "" + } + ], + "virtualNetworkRules": [ + { + "id": "", + "ignoreMissingVnetServiceEndpoint": false + } + ] + }, + "accessPolicies": [ + { + "tenantId": "00000000-0000-0000-0000-000000000000", + "objectId": "00000000-0000-0000-0000-000000000000", + "permissions": { + "keys": [ + "encrypt", + "decrypt", + "wrapKey", + "unwrapKey", + "sign", + "verify", + "get", + "list", + "create", + "update", + "import", + "delete", + "backup", + "restore", + "recover", + "purge" + ], + "secrets": [ + "get", + "list", + "set", + "delete", + "backup", + "restore", + "recover", + "purge" + ], + "certificates": [ + "get", + "list", + "delete", + "create", + "import", + "update", + "managecontacts", + "getissuers", + "listissuers", + "setissuers", + "deleteissuers", + "manageissuers", + "recover", + "purge" + ] + } + } + ], + "privateEndpointConnections": [ + { + "id": "", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "actionsRequired": "None" + } + } + } + ], + "enabledForDeployment": true, + "enabledForDiskEncryption": true, + "enabledForTemplateDeployment": true, + "hsmPoolResourceId": "00000000-0000-0000-0000-000000000000", + "vaultUri": "https://sample-vault.vault.azure.net", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-resource-group/providers/Microsoft.KeyVault/vaults/sample-vault", + "name": "sample-vault", + "type": "Microsoft.KeyVault/vaults", + "location": "westus", + "tags": {}, + "systemData": { + "createdBy": "keyVaultUser1", + "createdByType": "User", + "createdAt": "2020-01-01T12:00:00.0000000Z", + "lastModifiedBy": "keyVaultUser2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-01T12:00:00.0000000Z" + }, + "properties": { + "sku": { + "family": "A", + "name": "standard" + }, + "tenantId": "00000000-0000-0000-0000-000000000000", + "accessPolicies": [ + { + "tenantId": "00000000-0000-0000-0000-000000000000", + "objectId": "00000000-0000-0000-0000-000000000000", + "permissions": { + "keys": [ + "encrypt", + "decrypt", + "wrapKey", + "unwrapKey", + "sign", + "verify", + "get", + "list", + "create", + "update", + "import", + "delete", + "backup", + "restore", + "recover", + "purge" + ], + "secrets": [ + "get", + "list", + "set", + "delete", + "backup", + "restore", + "recover", + "purge" + ], + "certificates": [ + "get", + "list", + "delete", + "create", + "import", + "update", + "managecontacts", + "getissuers", + "listissuers", + "setissuers", + "deleteissuers", + "manageissuers", + "recover", + "purge" + ] + } + } + ], + "enabledForDeployment": true, + "enabledForDiskEncryption": true, + "enabledForTemplateDeployment": true, + "hsmPoolResourceId": "00000000-0000-0000-0000-000000000000", + "vaultUri": "https://sample-vault.vault.azure.net", + "provisioningState": "Succeeded" + } + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "", + "message": "" + } + } + }, + "409": { + "headers": {}, + "body": { + "error": { + "code": "", + "message": "" + } + } + } + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/keys.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/keys.json new file mode 100644 index 000000000000..31deba9a7489 --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/keys.json @@ -0,0 +1,636 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-04-01-preview", + "title": "KeyVaultManagementClient", + "description": "The Azure management API provides a RESTful set of web services that interact with Azure Key Vault." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}/keys/{keyName}": { + "put": { + "tags": [ + "Keys" + ], + "operationId": "Keys_CreateIfNotExist", + "description": "Creates the first version of a new key if it does not exist. If it already exists, then the existing key is returned without any write operations being performed. This API does not create subsequent versions, and does not update existing keys.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group which contains the specified key vault." + }, + { + "name": "vaultName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9-]{3,24}$", + "description": "The name of the key vault which contains the key to be created." + }, + { + "name": "keyName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9-]{1,127}$", + "description": "The name of the key to be created." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/KeyCreateParameters" + }, + "description": "The parameters used to create the specified key." + } + ], + "responses": { + "200": { + "description": "The created key.", + "schema": { + "$ref": "#/definitions/Key" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create a key": { + "$ref": "./examples/createKey.json" + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + }, + "get": { + "tags": [ + "Keys" + ], + "operationId": "Keys_Get", + "description": "Gets the current version of the specified key from the specified key vault.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group which contains the specified key vault." + }, + { + "name": "vaultName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9-]{3,24}$", + "description": "The name of the vault which contains the key to be retrieved." + }, + { + "name": "keyName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9-]{1,127}$", + "description": "The name of the key to be retrieved." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The retrieved key.", + "schema": { + "$ref": "#/definitions/Key" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get a key": { + "$ref": "./examples/getKey.json" + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}/keys": { + "get": { + "tags": [ + "Keys" + ], + "operationId": "Keys_List", + "description": "Lists the keys in the specified key vault.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group which contains the specified key vault." + }, + { + "name": "vaultName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9-]{3,24}$", + "description": "The name of the vault which contains the keys to be retrieved." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The retrieved page of keys.", + "schema": { + "$ref": "#/definitions/KeyListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List keys in the vault": { + "$ref": "./examples/listKeys.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}/keys/{keyName}/versions/{keyVersion}": { + "get": { + "tags": [ + "Keys" + ], + "operationId": "Keys_GetVersion", + "description": "Gets the specified version of the specified key in the specified key vault.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group which contains the specified key vault." + }, + { + "name": "vaultName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9-]{3,24}$", + "description": "The name of the vault which contains the key version to be retrieved." + }, + { + "name": "keyName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9-]{1,127}$", + "description": "The name of the key version to be retrieved." + }, + { + "name": "keyVersion", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-fA-F0-9]{32}$", + "description": "The version of the key to be retrieved." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The retrieved key version.", + "schema": { + "$ref": "#/definitions/Key" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get a key version": { + "$ref": "./examples/getKeyVersion.json" + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}/keys/{keyName}/versions": { + "get": { + "tags": [ + "Keys" + ], + "operationId": "Keys_ListVersions", + "description": "Lists the versions of the specified key in the specified key vault.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group which contains the specified key vault." + }, + { + "name": "vaultName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9-]{3,24}$", + "description": "The name of the vault which contains the key versions to be retrieved." + }, + { + "name": "keyName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9-]{1,127}$", + "description": "The name of the key versions to be retrieved." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The retrieved page of key versions.", + "schema": { + "$ref": "#/definitions/KeyListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List key versions in the vault": { + "$ref": "./examples/listKeyVersions.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + } + } + }, + "definitions": { + "KeyProperties": { + "properties": { + "attributes": { + "$ref": "#/definitions/KeyAttributes", + "description": "The attributes of the key." + }, + "kty": { + "type": "string", + "minLength": 1, + "description": "The type of the key. For valid values, see JsonWebKeyType.", + "enum": [ + "EC", + "EC-HSM", + "RSA", + "RSA-HSM" + ], + "x-ms-enum": { + "name": "JsonWebKeyType", + "modelAsString": true + } + }, + "keyOps": { + "type": "array", + "items": { + "type": "string", + "description": "The permitted JSON web key operations of the key. For more information, see JsonWebKeyOperation.", + "enum": [ + "encrypt", + "decrypt", + "sign", + "verify", + "wrapKey", + "unwrapKey", + "import" + ], + "x-ms-enum": { + "name": "JsonWebKeyOperation", + "modelAsString": true + } + } + }, + "keySize": { + "type": "integer", + "format": "int32", + "description": "The key size in bits. For example: 2048, 3072, or 4096 for RSA." + }, + "curveName": { + "type": "string", + "description": "The elliptic curve name. For valid values, see JsonWebKeyCurveName.", + "enum": [ + "P-256", + "P-384", + "P-521", + "P-256K" + ], + "x-ms-enum": { + "name": "JsonWebKeyCurveName", + "modelAsString": true + } + }, + "keyUri": { + "type": "string", + "description": "The URI to retrieve the current version of the key.", + "readOnly": true + }, + "keyUriWithVersion": { + "type": "string", + "description": "The URI to retrieve the specific version of the key.", + "readOnly": true + }, + "rotationPolicy": { + "$ref": "#/definitions/RotationPolicy", + "description": "Key rotation policy in response. It will be used for both output and input. Omitted if empty" + } + }, + "description": "The properties of the key." + }, + "KeyAttributes": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Determines whether or not the object is enabled." + }, + "nbf": { + "x-ms-client-name": "NotBefore", + "type": "integer", + "format": "int64", + "description": "Not before date in seconds since 1970-01-01T00:00:00Z." + }, + "exp": { + "x-ms-client-name": "Expires", + "type": "integer", + "format": "int64", + "description": "Expiry date in seconds since 1970-01-01T00:00:00Z." + }, + "created": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "Creation time in seconds since 1970-01-01T00:00:00Z." + }, + "updated": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "Last updated time in seconds since 1970-01-01T00:00:00Z." + }, + "recoveryLevel": { + "type": "string", + "description": "The deletion recovery level currently in effect for the object. If it contains 'Purgeable', then the object can be permanently deleted by a privileged user; otherwise, only the system can purge the object at the end of the retention interval.", + "enum": [ + "Purgeable", + "Recoverable+Purgeable", + "Recoverable", + "Recoverable+ProtectedSubscription" + ], + "x-ms-enum": { + "name": "DeletionRecoveryLevel", + "modelAsString": true + }, + "readOnly": true, + "x-nullable": false + } + }, + "description": "The object attributes managed by the Azure Key Vault service." + }, + "KeyCreateParameters": { + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The tags that will be assigned to the key." + }, + "properties": { + "$ref": "#/definitions/KeyProperties", + "description": "The properties of the key to be created." + } + }, + "description": "The parameters used to create a key.", + "required": [ + "properties" + ], + "x-ms-azure-resource": true + }, + "Key": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/KeyProperties", + "description": "The properties of the key." + } + }, + "required": [ + "properties" + ], + "allOf": [ + { + "$ref": "./keyvault.json#/definitions/Resource" + } + ], + "description": "The key resource." + }, + "KeyListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Key" + }, + "description": "The key resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next page of keys." + } + }, + "description": "The page of keys." + }, + "RotationPolicy": { + "properties": { + "attributes": { + "$ref": "#/definitions/KeyRotationPolicyAttributes", + "description": "The attributes of key rotation policy." + }, + "lifetimeActions": { + "type": "array", + "items": { + "$ref": "#/definitions/LifetimeAction" + }, + "description": "The lifetimeActions for key rotation action." + } + } + }, + "KeyRotationPolicyAttributes": { + "properties": { + "created": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "Creation time in seconds since 1970-01-01T00:00:00Z." + }, + "updated": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "Last updated time in seconds since 1970-01-01T00:00:00Z." + }, + "expiryTime": { + "type": "string", + "description": "The expiration time for the new key version. It should be in ISO8601 format. Eg: 'P90D', 'P1Y'." + } + } + }, + "LifetimeAction": { + "properties": { + "trigger": { + "$ref": "#/definitions/Trigger", + "description": "The trigger of key rotation policy lifetimeAction." + }, + "action": { + "$ref": "#/definitions/Action", + "description": "The action of key rotation policy lifetimeAction." + } + } + }, + "Trigger": { + "properties": { + "timeAfterCreate": { + "type": "string", + "description": "The time duration after key creation to rotate the key. It should be in ISO8601 format. Eg: 'P90D', 'P1Y'." + }, + "timeBeforeExpiry": { + "type": "string", + "description": "The time duration before key expiring to rotate the key. It should be in ISO8601 format. Eg: 'P90D', 'P1Y'." + } + } + }, + "Action": { + "properties": { + "type": { + "type": "string", + "description": "The type of action.", + "enum": [ + "rotate", + "notify" + ], + "x-ms-enum": { + "name": "KeyRotationPolicyActionType", + "modelAsString": false + } + } + } + } + }, + "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." + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/keyvault.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/keyvault.json new file mode 100644 index 000000000000..b262450c4d41 --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/keyvault.json @@ -0,0 +1,2078 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-04-01-preview", + "title": "KeyVaultManagementClient", + "description": "The Azure management API provides a RESTful set of web services that interact with Azure Key Vault." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}": { + "put": { + "tags": [ + "Vaults" + ], + "operationId": "Vaults_CreateOrUpdate", + "x-ms-long-running-operation": true, + "description": "Create or update a key vault in the specified subscription.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Resource Group to which the server belongs." + }, + { + "name": "vaultName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9-]{3,24}$", + "description": "Name of the vault" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VaultCreateOrUpdateParameters" + }, + "description": "Parameters to create or update the vault" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Created or updated vault", + "schema": { + "$ref": "#/definitions/Vault" + } + }, + "200": { + "description": "Created or updated vault", + "schema": { + "$ref": "#/definitions/Vault" + } + }, + "400": { + "description": "Bad request.", + "schema": { + "$ref": "common.json#/definitions/CloudError" + }, + "x-ms-error-response": true + }, + "409": { + "description": "A conflict occurred to prevent the operation from completing.", + "schema": { + "$ref": "common.json#/definitions/CloudError" + }, + "x-ms-error-response": true + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create a new vault or update an existing vault": { + "$ref": "./examples/createVault.json" + }, + "Create or update a vault with network acls": { + "$ref": "./examples/createVaultWithNetworkAcls.json" + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + }, + "patch": { + "tags": [ + "Vaults" + ], + "operationId": "Vaults_Update", + "description": "Update a key vault in the specified subscription.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Resource Group to which the server belongs." + }, + { + "name": "vaultName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9-]{3,24}$", + "description": "Name of the vault" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VaultPatchParameters" + }, + "description": "Parameters to patch the vault" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Patched vault", + "schema": { + "$ref": "#/definitions/Vault" + } + }, + "200": { + "description": "Patched vault", + "schema": { + "$ref": "#/definitions/Vault" + } + }, + "400": { + "description": "Bad request.", + "schema": { + "$ref": "common.json#/definitions/CloudError" + }, + "x-ms-error-response": true + }, + "409": { + "description": "A conflict occurred to prevent the operation from completing.", + "schema": { + "$ref": "common.json#/definitions/CloudError" + }, + "x-ms-error-response": true + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update an existing vault": { + "$ref": "./examples/updateVault.json" + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + }, + "delete": { + "tags": [ + "Vaults" + ], + "operationId": "Vaults_Delete", + "description": "Deletes the specified Azure key vault.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Resource Group to which the vault belongs." + }, + { + "name": "vaultName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vault to delete" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK Response." + }, + "204": { + "description": "No Content." + }, + "400": { + "description": "Bad request.", + "schema": { + "$ref": "common.json#/definitions/CloudError" + }, + "x-ms-error-response": true + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete a vault": { + "$ref": "./examples/deleteVault.json" + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + }, + "get": { + "tags": [ + "Vaults" + ], + "operationId": "Vaults_Get", + "description": "Gets the specified Azure key vault.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Resource Group to which the vault belongs." + }, + { + "name": "vaultName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vault." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Retrieved vault", + "schema": { + "$ref": "#/definitions/Vault" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Retrieve a vault": { + "$ref": "./examples/getVault.json" + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}/accessPolicies/{operationKind}": { + "put": { + "tags": [ + "Vaults" + ], + "operationId": "Vaults_UpdateAccessPolicy", + "description": "Update access policies in a key vault in the specified subscription.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Resource Group to which the vault belongs." + }, + { + "name": "vaultName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9-]{3,24}$", + "description": "Name of the vault" + }, + { + "name": "operationKind", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "add", + "replace", + "remove" + ], + "x-ms-enum": { + "name": "AccessPolicyUpdateKind", + "modelAsString": false + }, + "description": "Name of the operation" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VaultAccessPolicyParameters" + }, + "description": "Access policy to merge into the vault" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "The updated access policies", + "schema": { + "$ref": "#/definitions/VaultAccessPolicyParameters" + } + }, + "200": { + "description": "The updated access policies", + "schema": { + "$ref": "#/definitions/VaultAccessPolicyParameters" + } + }, + "400": { + "description": "Bad request.", + "schema": { + "$ref": "common.json#/definitions/CloudError" + }, + "x-ms-error-response": true + }, + "404": { + "description": "The specified resource does not exist.", + "schema": { + "$ref": "common.json#/definitions/CloudError" + }, + "x-ms-error-response": true + }, + "409": { + "description": "A conflict occurred to prevent the operation from completing.", + "schema": { + "$ref": "common.json#/definitions/CloudError" + }, + "x-ms-error-response": true + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Add an access policy, or update an access policy with new permissions": { + "$ref": "./examples/updateAccessPoliciesAdd.json" + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults": { + "get": { + "tags": [ + "Vaults" + ], + "operationId": "Vaults_ListByResourceGroup", + "description": "The List operation gets information about the vaults associated with the subscription and within the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Resource Group to which the vault belongs." + }, + { + "name": "$top", + "in": "query", + "type": "integer", + "format": "int32", + "description": "Maximum number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Get information about all key vaults in the specified resource group.", + "schema": { + "$ref": "#/definitions/VaultListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List vaults in the specified resource group": { + "$ref": "./examples/listVaultByResourceGroup.json" + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.KeyVault/vaults": { + "get": { + "tags": [ + "Vaults" + ], + "operationId": "Vaults_ListBySubscription", + "description": "The List operation gets information about the vaults associated with the subscription.", + "parameters": [ + { + "name": "$top", + "in": "query", + "type": "integer", + "format": "int32", + "description": "Maximum number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Get information about all key vaults in the specified subscription.", + "schema": { + "$ref": "#/definitions/VaultListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List vaults in the specified subscription": { + "$ref": "./examples/listVaultBySubscription.json" + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.KeyVault/deletedVaults": { + "get": { + "tags": [ + "Vaults" + ], + "operationId": "Vaults_ListDeleted", + "description": "Gets information about the deleted vaults in a subscription.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Retrieved information about all deleted key vaults in a subscription.", + "schema": { + "$ref": "#/definitions/DeletedVaultListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List deleted vaults in the specified subscription": { + "$ref": "./examples/listDeletedVaults.json" + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.KeyVault/locations/{location}/deletedVaults/{vaultName}": { + "get": { + "tags": [ + "Vaults" + ], + "operationId": "Vaults_GetDeleted", + "description": "Gets the deleted Azure key vault.", + "parameters": [ + { + "name": "vaultName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vault." + }, + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the deleted vault." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Retrieved information about the deleted vault.", + "schema": { + "$ref": "#/definitions/DeletedVault" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Retrieve a deleted vault": { + "$ref": "./examples/getDeletedVault.json" + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.KeyVault/locations/{location}/deletedVaults/{vaultName}/purge": { + "post": { + "tags": [ + "Vaults" + ], + "operationId": "Vaults_PurgeDeleted", + "x-ms-long-running-operation": true, + "description": "Permanently deletes the specified vault. aka Purges the deleted Azure key vault.", + "parameters": [ + { + "name": "vaultName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the soft-deleted vault." + }, + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the soft-deleted vault." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The vault is purged." + }, + "202": { + "description": "Vault is being purged." + }, + "400": { + "description": "Bad request.", + "schema": { + "$ref": "common.json#/definitions/CloudError" + }, + "x-ms-error-response": true + }, + "404": { + "description": "The specified resource does not exist.", + "schema": { + "$ref": "common.json#/definitions/CloudError" + }, + "x-ms-error-response": true + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Purge a deleted vault": { + "$ref": "./examples/purgeDeletedVault.json" + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + } + }, + "/subscriptions/{subscriptionId}/resources": { + "get": { + "tags": [ + "Vaults" + ], + "operationId": "Vaults_List", + "description": "The List operation gets information about the vaults associated with the subscription.", + "parameters": [ + { + "name": "$filter", + "in": "query", + "required": true, + "type": "string", + "enum": [ + "resourceType eq 'Microsoft.KeyVault/vaults'" + ], + "description": "The filter to apply on the operation." + }, + { + "name": "$top", + "in": "query", + "type": "integer", + "format": "int32", + "description": "Maximum number of results to return." + }, + { + "name": "api-version", + "in": "query", + "required": true, + "x-ms-api-version": false, + "type": "string", + "enum": [ + "2015-11-01" + ], + "description": "Azure Resource Manager Api Version." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Get information about all key vaults in the subscription.", + "schema": { + "$ref": "#/definitions/ResourceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List vaults in the specified subscription": { + "$ref": "./examples/listVault.json" + } + }, + "produces": [ + "application/json" + ] + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.KeyVault/checkNameAvailability": { + "post": { + "tags": [ + "Vaults" + ], + "operationId": "Vaults_CheckNameAvailability", + "description": "Checks that the vault name is valid and is not already in use.", + "parameters": [ + { + "name": "vaultName", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VaultCheckNameAvailabilityParameters" + }, + "description": "The name of the vault." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Operation to check the vault name availability was successful.", + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Validate a vault name": { + "$ref": "./examples/checkVaultNameAvailability.json" + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Get", + "description": "Gets the specified private endpoint connection associated with the key vault.", + "x-ms-examples": { + "KeyVaultGetPrivateEndpointConnection": { + "$ref": "./examples/getPrivateEndpointConnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "Private endpoint connection successfully returned.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "204": { + "description": "The private endpoint connection does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Put", + "description": "Updates the specified private endpoint connection associated with the key vault.", + "x-ms-examples": { + "KeyVaultPutPrivateEndpointConnection": { + "$ref": "./examples/putPrivateEndpointConnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "properties", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "The intended state of private endpoint connection." + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "The state of private endpoint connection was updated successfully.", + "headers": { + "Retry-After": { + "description": "(specified only if operation does not finish synchronously) The recommended number of seconds to wait before calling the URI specified in Azure-AsyncOperation.", + "type": "integer", + "format": "int32" + }, + "Azure-AsyncOperation": { + "description": "(specified only if operation does not finish synchronously) The URI to poll for completion status. The response of this URI may be synchronous or asynchronous.", + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Delete", + "description": "Deletes the specified private endpoint connection associated with the key vault.", + "x-ms-examples": { + "KeyVaultDeletePrivateEndpointConnection": { + "$ref": "./examples/deletePrivateEndpointConnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "The private endpoint connection was successfully deleted.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "202": { + "description": "The private endpoint connection is being deleted.", + "headers": { + "Retry-After": { + "description": "The recommended number of seconds to wait before calling the URI specified in the location header.", + "type": "integer", + "format": "int32" + }, + "Location": { + "description": "The URI to poll for completion status.", + "type": "string" + } + } + }, + "204": { + "description": "The private endpoint connection does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}/privateEndpointConnections": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_ListByResource", + "description": "The List operation gets information about the private endpoint connections associated with the vault.", + "x-ms-examples": { + "KeyVaultListPrivateEndpointConnection": { + "$ref": "./examples/listPrivateEndpointConnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "Get information about all private endpoint connections in the specified resource group.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}/privateLinkResources": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "operationId": "PrivateLinkResources_ListByVault", + "description": "Gets the private link resources supported for the key vault.", + "x-ms-examples": { + "KeyVaultListPrivateLinkResources": { + "$ref": "./examples/listPrivateLinkResources.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "Successfully retrieved private link resources.", + "schema": { + "$ref": "#/definitions/PrivateLinkResourceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "Sku": { + "properties": { + "family": { + "type": "string", + "description": "SKU family name", + "enum": [ + "A" + ], + "x-ms-client-default": "A", + "x-ms-enum": { + "name": "SkuFamily", + "modelAsString": true + } + }, + "name": { + "type": "string", + "description": "SKU name to specify whether the key vault is a standard vault or a premium vault.", + "enum": [ + "standard", + "premium" + ], + "x-ms-enum": { + "name": "SkuName", + "modelAsString": false + } + } + }, + "description": "SKU details", + "required": [ + "name", + "family" + ] + }, + "AccessPolicyEntry": { + "properties": { + "tenantId": { + "type": "string", + "format": "uuid", + "description": "The Azure Active Directory tenant ID that should be used for authenticating requests to the key vault." + }, + "objectId": { + "type": "string", + "description": "The object ID of a user, service principal or security group in the Azure Active Directory tenant for the vault. The object ID must be unique for the list of access policies." + }, + "applicationId": { + "type": "string", + "format": "uuid", + "description": " Application ID of the client making request on behalf of a principal" + }, + "permissions": { + "$ref": "#/definitions/Permissions", + "description": "Permissions the identity has for keys, secrets and certificates." + } + }, + "description": "An identity that have access to the key vault. All identities in the array must use the same tenant ID as the key vault's tenant ID.", + "required": [ + "tenantId", + "objectId", + "permissions" + ] + }, + "Permissions": { + "properties": { + "keys": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "encrypt", + "decrypt", + "wrapKey", + "unwrapKey", + "sign", + "verify", + "get", + "list", + "create", + "update", + "import", + "delete", + "backup", + "restore", + "recover", + "purge" + ], + "x-ms-enum": { + "name": "KeyPermissions", + "modelAsString": true + } + }, + "description": "Permissions to keys" + }, + "secrets": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "get", + "list", + "set", + "delete", + "backup", + "restore", + "recover", + "purge" + ], + "x-ms-enum": { + "name": "SecretPermissions", + "modelAsString": true + } + }, + "description": "Permissions to secrets" + }, + "certificates": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "get", + "list", + "delete", + "create", + "import", + "update", + "managecontacts", + "getissuers", + "listissuers", + "setissuers", + "deleteissuers", + "manageissuers", + "recover", + "purge", + "backup", + "restore" + ], + "x-ms-enum": { + "name": "CertificatePermissions", + "modelAsString": true + } + }, + "description": "Permissions to certificates" + }, + "storage": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "get", + "list", + "delete", + "set", + "update", + "regeneratekey", + "recover", + "purge", + "backup", + "restore", + "setsas", + "listsas", + "getsas", + "deletesas" + ], + "x-ms-enum": { + "name": "StoragePermissions", + "modelAsString": true + } + }, + "description": "Permissions to storage accounts" + } + }, + "description": "Permissions the identity has for keys, secrets, certificates and storage." + }, + "VaultProperties": { + "properties": { + "tenantId": { + "type": "string", + "format": "uuid", + "description": "The Azure Active Directory tenant ID that should be used for authenticating requests to the key vault." + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "SKU details" + }, + "accessPolicies": { + "type": "array", + "items": { + "$ref": "#/definitions/AccessPolicyEntry" + }, + "description": "An array of 0 to 1024 identities that have access to the key vault. All identities in the array must use the same tenant ID as the key vault's tenant ID. When `createMode` is set to `recover`, access policies are not required. Otherwise, access policies are required." + }, + "vaultUri": { + "type": "string", + "description": "The URI of the vault for performing operations on keys and secrets." + }, + "hsmPoolResourceId": { + "type": "string", + "description": "The resource id of HSM Pool.", + "readOnly": true + }, + "enabledForDeployment": { + "type": "boolean", + "description": "Property to specify whether Azure Virtual Machines are permitted to retrieve certificates stored as secrets from the key vault." + }, + "enabledForDiskEncryption": { + "type": "boolean", + "description": "Property to specify whether Azure Disk Encryption is permitted to retrieve secrets from the vault and unwrap keys." + }, + "enabledForTemplateDeployment": { + "type": "boolean", + "description": "Property to specify whether Azure Resource Manager is permitted to retrieve secrets from the key vault." + }, + "enableSoftDelete": { + "type": "boolean", + "default": true, + "description": "Property to specify whether the 'soft delete' functionality is enabled for this key vault. If it's not set to any value(true or false) when creating new key vault, it will be set to true by default. Once set to true, it cannot be reverted to false." + }, + "softDeleteRetentionInDays": { + "type": "integer", + "format": "int32", + "default": 90, + "description": "softDelete data retention days. It accepts >=7 and <=90." + }, + "enableRbacAuthorization": { + "type": "boolean", + "default": false, + "description": "Property that controls how data actions are authorized. When true, the key vault will use Role Based Access Control (RBAC) for authorization of data actions, and the access policies specified in vault properties will be ignored (warning: this is a preview feature). When false, the key vault will use the access policies specified in vault properties, and any policy stored on Azure Resource Manager will be ignored. If null or not specified, the vault is created with the default value of false. Note that management actions are always authorized with RBAC." + }, + "createMode": { + "type": "string", + "description": "The vault's create mode to indicate whether the vault need to be recovered or not.", + "enum": [ + "recover", + "default" + ], + "x-ms-enum": { + "name": "CreateMode", + "modelAsString": false + }, + "x-ms-mutability": [ + "create", + "update" + ] + }, + "enablePurgeProtection": { + "type": "boolean", + "description": "Property specifying whether protection against purge is enabled for this vault. Setting this property to true activates protection against purge for this vault and its content - only the Key Vault service may initiate a hard, irrecoverable deletion. The setting is effective only if soft delete is also enabled. Enabling this functionality is irreversible - that is, the property does not accept false as its value." + }, + "networkAcls": { + "$ref": "#/definitions/NetworkRuleSet", + "description": "Rules governing the accessibility of the key vault from specific network locations." + }, + "provisioningState": { + "type": "string", + "description": "Provisioning state of the vault.", + "enum": [ + "Succeeded", + "RegisteringDns" + ], + "x-ms-enum": { + "name": "VaultProvisioningState", + "modelAsString": true + } + }, + "privateEndpointConnections": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnectionItem" + }, + "description": "List of private endpoint connections associated with the key vault." + } + }, + "required": [ + "tenantId", + "sku" + ], + "description": "Properties of the vault" + }, + "VaultPatchProperties": { + "properties": { + "tenantId": { + "type": "string", + "format": "uuid", + "description": "The Azure Active Directory tenant ID that should be used for authenticating requests to the key vault." + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "SKU details" + }, + "accessPolicies": { + "type": "array", + "items": { + "$ref": "#/definitions/AccessPolicyEntry" + }, + "description": "An array of 0 to 16 identities that have access to the key vault. All identities in the array must use the same tenant ID as the key vault's tenant ID." + }, + "enabledForDeployment": { + "type": "boolean", + "description": "Property to specify whether Azure Virtual Machines are permitted to retrieve certificates stored as secrets from the key vault." + }, + "enabledForDiskEncryption": { + "type": "boolean", + "description": "Property to specify whether Azure Disk Encryption is permitted to retrieve secrets from the vault and unwrap keys." + }, + "enabledForTemplateDeployment": { + "type": "boolean", + "description": "Property to specify whether Azure Resource Manager is permitted to retrieve secrets from the key vault." + }, + "enableSoftDelete": { + "type": "boolean", + "description": "Property to specify whether the 'soft delete' functionality is enabled for this key vault. Once set to true, it cannot be reverted to false." + }, + "enableRbacAuthorization": { + "type": "boolean", + "description": "Property that controls how data actions are authorized. When true, the key vault will use Role Based Access Control (RBAC) for authorization of data actions, and the access policies specified in vault properties will be ignored (warning: this is a preview feature). When false, the key vault will use the access policies specified in vault properties, and any policy stored on Azure Resource Manager will be ignored. If null or not specified, the value of this property will not change." + }, + "softDeleteRetentionInDays": { + "type": "integer", + "format": "int32", + "description": "softDelete data retention days. It accepts >=7 and <=90." + }, + "createMode": { + "type": "string", + "description": "The vault's create mode to indicate whether the vault need to be recovered or not.", + "enum": [ + "recover", + "default" + ], + "x-ms-enum": { + "name": "CreateMode", + "modelAsString": false + } + }, + "enablePurgeProtection": { + "type": "boolean", + "description": "Property specifying whether protection against purge is enabled for this vault. Setting this property to true activates protection against purge for this vault and its content - only the Key Vault service may initiate a hard, irrecoverable deletion. The setting is effective only if soft delete is also enabled. Enabling this functionality is irreversible - that is, the property does not accept false as its value." + }, + "networkAcls": { + "$ref": "#/definitions/NetworkRuleSet", + "description": "A collection of rules governing the accessibility of the vault from specific network locations." + } + }, + "description": "Properties of the vault" + }, + "VaultAccessPolicyProperties": { + "properties": { + "accessPolicies": { + "type": "array", + "items": { + "$ref": "#/definitions/AccessPolicyEntry" + }, + "description": "An array of 0 to 16 identities that have access to the key vault. All identities in the array must use the same tenant ID as the key vault's tenant ID." + } + }, + "required": [ + "accessPolicies" + ], + "description": "Properties of the vault access policy" + }, + "DeletedVaultProperties": { + "properties": { + "vaultId": { + "readOnly": true, + "type": "string", + "description": "The resource id of the original vault." + }, + "location": { + "readOnly": true, + "type": "string", + "description": "The location of the original vault." + }, + "deletionDate": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The deleted date." + }, + "scheduledPurgeDate": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The scheduled purged date." + }, + "tags": { + "readOnly": true, + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Tags of the original vault." + }, + "purgeProtectionEnabled": { + "readOnly": true, + "type": "boolean", + "description": "Purge protection status of the original vault." + } + }, + "description": "Properties of the deleted vault." + }, + "VaultCreateOrUpdateParameters": { + "properties": { + "location": { + "type": "string", + "description": "The supported Azure location where the key vault should be created." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The tags that will be assigned to the key vault." + }, + "properties": { + "$ref": "#/definitions/VaultProperties", + "description": "Properties of the vault" + } + }, + "description": "Parameters for creating or updating a vault", + "required": [ + "location", + "properties" + ], + "x-ms-azure-resource": true + }, + "VaultPatchParameters": { + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The tags that will be assigned to the key vault. " + }, + "properties": { + "$ref": "#/definitions/VaultPatchProperties", + "description": "Properties of the vault" + } + }, + "description": "Parameters for creating or updating a vault", + "x-ms-azure-resource": true + }, + "VaultAccessPolicyParameters": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The resource id of the access policy." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The resource name of the access policy." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource name of the access policy." + }, + "location": { + "readOnly": true, + "type": "string", + "description": "The resource type of the access policy." + }, + "properties": { + "$ref": "#/definitions/VaultAccessPolicyProperties", + "description": "Properties of the access policy" + } + }, + "description": "Parameters for updating the access policy in a vault", + "required": [ + "properties" + ], + "x-ms-azure-resource": true + }, + "Vault": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Fully qualified identifier of the key vault resource." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Name of the key vault resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type of the key vault resource." + }, + "location": { + "type": "string", + "description": "Azure location of the key vault resource." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Tags assigned to the key vault resource." + }, + "systemData": { + "description": "System metadata for the key vault.", + "$ref": "common.json#/definitions/SystemData" + }, + "properties": { + "$ref": "#/definitions/VaultProperties", + "description": "Properties of the vault" + } + }, + "required": [ + "properties" + ], + "description": "Resource information with extended details.", + "x-ms-azure-resource": true + }, + "DeletedVault": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The resource ID for the deleted key vault." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the key vault." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type of the key vault." + }, + "properties": { + "$ref": "#/definitions/DeletedVaultProperties", + "description": "Properties of the vault" + } + }, + "description": "Deleted vault information with extended details." + }, + "VaultListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Vault" + }, + "description": "The list of vaults." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of vaults." + } + }, + "description": "List of vaults" + }, + "DeletedVaultListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeletedVault" + }, + "description": "The list of deleted vaults." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of deleted vaults." + } + }, + "description": "List of vaults" + }, + "ResourceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Resource" + }, + "description": "The list of vault resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of vault resources." + } + }, + "description": "List of vault resources." + }, + "Resource": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Fully qualified identifier of the key vault resource." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Name of the key vault resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type of the key vault resource." + }, + "location": { + "readOnly": true, + "type": "string", + "description": "Azure location of the key vault resource." + }, + "tags": { + "readOnly": true, + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Tags assigned to the key vault resource." + } + }, + "description": "Key Vault resource", + "x-ms-azure-resource": true + }, + "VaultCheckNameAvailabilityParameters": { + "properties": { + "name": { + "type": "string", + "description": "The vault name." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.KeyVault/vaults" + ], + "x-ms-enum": { + "name": "Type", + "modelAsString": false + }, + "description": "The type of resource, Microsoft.KeyVault/vaults" + } + }, + "required": [ + "name", + "type" + ], + "description": "The parameters used to check the availability of the vault name." + }, + "CheckNameAvailabilityResult": { + "properties": { + "nameAvailable": { + "readOnly": true, + "type": "boolean", + "description": "A boolean value that indicates whether the name is available for you to use. If true, the name is available. If false, the name has already been taken or is invalid and cannot be used." + }, + "reason": { + "readOnly": true, + "type": "string", + "description": "The reason that a vault name could not be used. The Reason element is only returned if NameAvailable is false.", + "enum": [ + "AccountNameInvalid", + "AlreadyExists" + ], + "x-ms-enum": { + "name": "Reason", + "modelAsString": false + } + }, + "message": { + "readOnly": true, + "type": "string", + "description": "An error message explaining the Reason value in more detail." + } + }, + "description": "The CheckNameAvailability operation response." + }, + "NetworkRuleSet": { + "properties": { + "bypass": { + "type": "string", + "description": "Tells what traffic can bypass network rules. This can be 'AzureServices' or 'None'. If not specified the default is 'AzureServices'.", + "enum": [ + "AzureServices", + "None" + ], + "x-ms-enum": { + "name": "NetworkRuleBypassOptions", + "modelAsString": true + } + }, + "defaultAction": { + "type": "string", + "description": "The default action when no rule from ipRules and from virtualNetworkRules match. This is only used after the bypass property has been evaluated.", + "enum": [ + "Allow", + "Deny" + ], + "x-ms-enum": { + "name": "NetworkRuleAction", + "modelAsString": true + } + }, + "ipRules": { + "type": "array", + "items": { + "$ref": "#/definitions/IPRule" + }, + "description": "The list of IP address rules." + }, + "virtualNetworkRules": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkRule" + }, + "description": "The list of virtual network rules." + } + }, + "description": "A set of rules governing the network accessibility of a vault." + }, + "IPRule": { + "properties": { + "value": { + "type": "string", + "description": "An IPv4 address range in CIDR notation, such as '124.56.78.91' (simple IP address) or '124.56.78.0/24' (all addresses that start with 124.56.78)." + } + }, + "required": [ + "value" + ], + "description": "A rule governing the accessibility of a vault from a specific ip address or ip range." + }, + "VirtualNetworkRule": { + "properties": { + "id": { + "type": "string", + "description": "Full resource id of a vnet subnet, such as '/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1'." + }, + "ignoreMissingVnetServiceEndpoint": { + "type": "boolean", + "description": "Property to specify whether NRP will ignore the check if parent subnet has serviceEndpoints configured." + } + }, + "required": [ + "id" + ], + "description": "A rule governing the accessibility of a vault from a specific virtual network." + }, + "PrivateEndpointConnectionItem": { + "properties": { + "id": { + "type": "string", + "description": "Id of private endpoint connection." + }, + "etag": { + "type": "string", + "description": "Modified whenever there is a change in the state of private endpoint connection." + }, + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "x-ms-client-flatten": true, + "description": "Private endpoint connection properties." + } + }, + "description": "Private endpoint connection item." + }, + "PrivateEndpointConnection": { + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "x-ms-client-flatten": true, + "description": "Resource properties." + }, + "etag": { + "type": "string", + "description": "Modified whenever there is a change in the state of private endpoint connection." + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Private endpoint connection resource.", + "x-ms-azure-resource": true + }, + "PrivateEndpointConnectionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "The list of private endpoint connections." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of private endpoint connections." + } + }, + "description": "List of private endpoint connections." + }, + "PrivateEndpointConnectionProperties": { + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpoint", + "description": "Properties of the private endpoint object." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionState", + "description": "Approval state of the private link connection." + }, + "provisioningState": { + "$ref": "#/definitions/PrivateEndpointConnectionProvisioningState", + "description": "Provisioning state of the private endpoint connection." + } + }, + "description": "Properties of the private endpoint connection resource." + }, + "PrivateEndpoint": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Full identifier of the private endpoint resource." + } + }, + "description": "Private endpoint object properties." + }, + "PrivateLinkServiceConnectionState": { + "properties": { + "status": { + "$ref": "#/definitions/PrivateEndpointServiceConnectionStatus", + "description": "Indicates whether the connection has been approved, rejected or removed by the key vault owner." + }, + "description": { + "type": "string", + "description": "The reason for approval or rejection." + }, + "actionsRequired": { + "type": "string", + "description": "A message indicating if changes on the service provider require any updates on the consumer.", + "enum": [ + "None" + ], + "x-ms-enum": { + "name": "ActionsRequired", + "modelAsString": true + } + } + }, + "description": "An object that represents the approval state of the private link connection." + }, + "PrivateEndpointServiceConnectionStatus": { + "type": "string", + "description": "The private endpoint connection status.", + "enum": [ + "Pending", + "Approved", + "Rejected", + "Disconnected" + ], + "x-ms-enum": { + "name": "PrivateEndpointServiceConnectionStatus", + "modelAsString": true + } + }, + "PrivateEndpointConnectionProvisioningState": { + "type": "string", + "readOnly": true, + "description": "The current provisioning state.", + "enum": [ + "Succeeded", + "Creating", + "Updating", + "Deleting", + "Failed", + "Disconnected" + ], + "x-ms-enum": { + "name": "PrivateEndpointConnectionProvisioningState", + "modelAsString": true + } + }, + "PrivateLinkResourceListResult": { + "properties": { + "value": { + "type": "array", + "description": "Array of private link resources", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + } + } + }, + "description": "A list of private link resources" + }, + "PrivateLinkResource": { + "properties": { + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "A private link resource" + }, + "PrivateLinkResourceProperties": { + "properties": { + "groupId": { + "description": "Group identifier of private link resource.", + "type": "string", + "readOnly": true + }, + "requiredMembers": { + "description": "Required member names of private link resource.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "requiredZoneNames": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Required DNS zone names of the the private link resource." + } + }, + "description": "Properties of a private link resource." + } + }, + "parameters": { + "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." + }, + "ResourceGroupName": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the resource group that contains the key vault.", + "x-ms-parameter-location": "method" + }, + "VaultName": { + "name": "vaultName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9-]{3,24}$", + "description": "The name of the key vault.", + "x-ms-parameter-location": "method" + }, + "PrivateEndpointConnectionName": { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the private endpoint connection associated with the key vault.", + "x-ms-parameter-location": "method" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client Api Version." + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/managedHsm.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/managedHsm.json new file mode 100644 index 000000000000..c8cf0caf2c0b --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/managedHsm.json @@ -0,0 +1,1426 @@ +{ + "swagger": "2.0", + "info": { + "title": "KeyVaultManagementClient", + "description": "The Azure management API provides a RESTful set of web services that interact with Azure Key Vault.", + "version": "2021-04-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.KeyVault/managedHSMs/{name}": { + "put": { + "tags": [ + "ManagedHsms" + ], + "operationId": "ManagedHsms_CreateOrUpdate", + "x-ms-long-running-operation": true, + "description": "Create or update a managed HSM Pool in the specified subscription.", + "parameters": [ + { + "$ref": "#/parameters/ManagedHsmResourceGroupName" + }, + { + "name": "name", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the managed HSM Pool" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ManagedHsm" + }, + "description": "Parameters to create or update the managed HSM Pool" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/ManagedHsm" + } + }, + "200": { + "description": "Created or updated managed HSM Pool", + "schema": { + "$ref": "#/definitions/ManagedHsm" + } + }, + "default": { + "description": "The error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ManagedHsmError" + } + } + }, + "x-ms-examples": { + "Create a new managed HSM Pool or update an existing managed HSM Pool": { + "$ref": "./examples/ManagedHsm_CreateOrUpdate.json" + } + } + }, + "patch": { + "tags": [ + "ManagedHsms" + ], + "operationId": "ManagedHsms_Update", + "x-ms-long-running-operation": true, + "description": "Update a managed HSM Pool in the specified subscription.", + "parameters": [ + { + "$ref": "#/parameters/ManagedHsmResourceGroupName" + }, + { + "name": "name", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the managed HSM Pool" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ManagedHsm" + }, + "description": "Parameters to patch the managed HSM Pool" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/ManagedHsm" + } + }, + "200": { + "description": "Patched managed HSM Pool", + "schema": { + "$ref": "#/definitions/ManagedHsm" + } + }, + "default": { + "description": "The error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ManagedHsmError" + } + } + }, + "x-ms-examples": { + "Update an existing managed HSM Pool": { + "$ref": "./examples/ManagedHsm_Update.json" + } + } + }, + "delete": { + "tags": [ + "ManagedHsms" + ], + "operationId": "ManagedHsms_Delete", + "description": "Deletes the specified managed HSM Pool.", + "parameters": [ + { + "$ref": "#/parameters/ManagedHsmResourceGroupName" + }, + { + "name": "name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the managed HSM Pool to delete" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "The error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ManagedHsmError" + } + } + }, + "x-ms-examples": { + "Delete a managed HSM Pool": { + "$ref": "./examples/ManagedHsm_Delete.json" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "ManagedHsms" + ], + "operationId": "ManagedHsms_Get", + "description": "Gets the specified managed HSM Pool.", + "parameters": [ + { + "$ref": "#/parameters/ManagedHsmResourceGroupName" + }, + { + "name": "name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the managed HSM Pool." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Retrieved managed HSM Pool", + "schema": { + "$ref": "#/definitions/ManagedHsm" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource does not exist." + }, + "default": { + "description": "The error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ManagedHsmError" + } + } + }, + "x-ms-examples": { + "Retrieve a managed HSM Pool": { + "$ref": "./examples/ManagedHsm_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/managedHSMs": { + "get": { + "tags": [ + "ManagedHsms" + ], + "operationId": "ManagedHsms_ListByResourceGroup", + "description": "The List operation gets information about the managed HSM Pools associated with the subscription and within the specified resource group.", + "parameters": [ + { + "$ref": "#/parameters/ManagedHsmResourceGroupName" + }, + { + "name": "$top", + "in": "query", + "type": "integer", + "format": "int32", + "description": "Maximum number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Get information about all managed HSM Pools in the specified resource group.", + "schema": { + "$ref": "#/definitions/ManagedHsmListResult" + } + }, + "default": { + "description": "The error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ManagedHsmError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List managed HSM Pools in a resource group": { + "$ref": "./examples/ManagedHsm_ListByResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.KeyVault/managedHSMs": { + "get": { + "tags": [ + "ManagedHsms" + ], + "operationId": "ManagedHsms_ListBySubscription", + "description": "The List operation gets information about the managed HSM Pools associated with the subscription.", + "parameters": [ + { + "name": "$top", + "in": "query", + "type": "integer", + "format": "int32", + "description": "Maximum number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Get information about all managed HSM Pools in the specified subscription.", + "schema": { + "$ref": "#/definitions/ManagedHsmListResult" + } + }, + "default": { + "description": "The error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ManagedHsmError" + } + } + }, + "x-ms-examples": { + "List managed HSM Pools in a subscription": { + "$ref": "./examples/ManagedHsm_ListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/managedHSMs/{name}/privateEndpointConnections": { + "get": { + "tags": [ + "MHSMListPrivateEndpointConnections" + ], + "operationId": "MHSMPrivateEndpointConnections_ListByResource", + "description": "The List operation gets information about the private endpoint connections associated with the managed HSM Pool.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ManagedHsmResourceGroupName" + }, + { + "name": "name", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the managed HSM Pool" + } + ], + "responses": { + "200": { + "description": "Get information about all managed HSM Pools in the specified subscription.", + "schema": { + "$ref": "#/definitions/MHSMPrivateEndpointConnectionsListResult" + } + }, + "default": { + "description": "The error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ManagedHsmError" + } + } + }, + "x-ms-examples": { + "List managed HSM Pools in a subscription": { + "$ref": "./examples/ManagedHsm_ListPrivateEndpointConnectionsByResource.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.KeyVault/deletedManagedHSMs": { + "get": { + "tags": [ + "ManagedHsms" + ], + "operationId": "ManagedHsms_ListDeleted", + "description": "The List operation gets information about the deleted managed HSMs associated with the subscription.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Retrieved information about all managed HSMs in the specified subscription.", + "schema": { + "$ref": "#/definitions/DeletedManagedHsmListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ManagedHsmError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List deleted managed HSMs in the specified subscription": { + "$ref": "./examples/DeletedManagedHsm_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.KeyVault/locations/{location}/deletedManagedHSMs/{name}": { + "get": { + "tags": [ + "ManagedHsms" + ], + "operationId": "ManagedHsms_GetDeleted", + "description": "Gets the specified deleted managed HSM.", + "parameters": [ + { + "name": "name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deleted managed HSM." + }, + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the deleted managed HSM." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Retrieved information about the specified deleted managed HSM.", + "schema": { + "$ref": "#/definitions/DeletedManagedHsm" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ManagedHsmError" + } + } + }, + "x-ms-examples": { + "Retrieve a deleted managed HSM": { + "$ref": "./examples/DeletedManagedHsm_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.KeyVault/locations/{location}/deletedManagedHSMs/{name}/purge": { + "post": { + "tags": [ + "ManagedHsms" + ], + "operationId": "ManagedHsms_PurgeDeleted", + "description": "Permanently deletes the specified managed HSM.", + "parameters": [ + { + "name": "name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the soft-deleted managed HSM." + }, + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the soft-deleted managed HSM." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "The error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ManagedHsmError" + } + } + }, + "x-ms-examples": { + "Purge a managed HSM Pool": { + "$ref": "./examples/DeletedManagedHsm_Purge.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/managedHSMs/{name}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "MHSMPrivateEndpointConnections" + ], + "operationId": "MHSMPrivateEndpointConnections_Get", + "description": "Gets the specified private endpoint connection associated with the managed HSM Pool.", + "x-ms-examples": { + "ManagedHsmGetPrivateEndpointConnection": { + "$ref": "./examples/ManagedHsm_getPrivateEndpointConnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ManagedHsmResourceGroupName" + }, + { + "name": "name", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the managed HSM Pool" + }, + { + "$ref": "#/parameters/MHSMPrivateEndpointConnectionName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "Private endpoint connection successfully returned.", + "schema": { + "$ref": "#/definitions/MHSMPrivateEndpointConnection" + } + }, + "default": { + "description": "The error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ManagedHsmError" + } + } + } + }, + "put": { + "tags": [ + "MHSMPrivateEndpointConnections" + ], + "operationId": "MHSMPrivateEndpointConnections_Put", + "description": "Updates the specified private endpoint connection associated with the managed hsm pool.", + "x-ms-examples": { + "ManagedHsmPutPrivateEndpointConnection": { + "$ref": "./examples/ManagedHsm_putPrivateEndpointConnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ManagedHsmResourceGroupName" + }, + { + "name": "name", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the managed HSM Pool" + }, + { + "$ref": "#/parameters/MHSMPrivateEndpointConnectionName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "properties", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/MHSMPrivateEndpointConnection" + }, + "description": "The intended state of private endpoint connection." + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "The state of private endpoint connection was updated successfully.", + "headers": { + "Retry-After": { + "description": "(specified only if operation does not finish synchronously) The recommended number of seconds to wait before calling the URI specified in Azure-AsyncOperation.", + "type": "integer", + "format": "int32" + }, + "Azure-AsyncOperation": { + "description": "(specified only if operation does not finish synchronously) The URI to poll for completion status. The response of this URI may be synchronous or asynchronous.", + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/MHSMPrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "MHSMPrivateEndpointConnections" + ], + "operationId": "MHSMPrivateEndpointConnections_Delete", + "description": "Deletes the specified private endpoint connection associated with the managed hsm pool.", + "x-ms-examples": { + "ManagedHsmDeletePrivateEndpointConnection": { + "$ref": "./examples/ManagedHsm_deletePrivateEndpointConnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ManagedHsmResourceGroupName" + }, + { + "name": "name", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the managed HSM Pool" + }, + { + "$ref": "#/parameters/MHSMPrivateEndpointConnectionName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "The private endpoint connection was successfully deleted.", + "schema": { + "$ref": "#/definitions/MHSMPrivateEndpointConnection" + } + }, + "202": { + "description": "The private endpoint connection is being deleted.", + "headers": { + "Retry-After": { + "description": "The recommended number of seconds to wait before calling the URI specified in the location header.", + "type": "integer", + "format": "int32" + }, + "Location": { + "description": "The URI to poll for completion status.", + "type": "string" + } + } + }, + "204": { + "description": "The private endpoint connection does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/managedHSMs/{name}/privateLinkResources": { + "get": { + "tags": [ + "MHSMPrivateLinkResources" + ], + "operationId": "MHSMPrivateLinkResources_ListByMHSMResource", + "description": "Gets the private link resources supported for the managed hsm pool.", + "x-ms-examples": { + "KeyVaultListPrivateLinkResources": { + "$ref": "./examples/ManagedHsm_listPrivateLinkResources.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ManagedHsmResourceGroupName" + }, + { + "name": "name", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the managed HSM Pool" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "Successfully retrieved private link resources.", + "schema": { + "$ref": "#/definitions/MHSMPrivateLinkResourceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "ManagedHsmSku": { + "properties": { + "family": { + "type": "string", + "description": "SKU Family of the managed HSM Pool", + "enum": [ + "B" + ], + "x-ms-client-default": "B", + "x-ms-enum": { + "name": "ManagedHsmSkuFamily", + "modelAsString": true + } + }, + "name": { + "type": "string", + "description": "SKU of the managed HSM Pool", + "enum": [ + "Standard_B1", + "Custom_B32" + ], + "x-ms-enum": { + "name": "ManagedHsmSkuName", + "modelAsString": false + } + } + }, + "description": "SKU details", + "required": [ + "name", + "family" + ] + }, + "ManagedHsmProperties": { + "properties": { + "tenantId": { + "type": "string", + "format": "uuid", + "description": "The Azure Active Directory tenant ID that should be used for authenticating requests to the managed HSM pool." + }, + "initialAdminObjectIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Array of initial administrators object ids for this managed hsm pool." + }, + "hsmUri": { + "type": "string", + "readOnly": true, + "description": "The URI of the managed hsm pool for performing operations on keys." + }, + "enableSoftDelete": { + "type": "boolean", + "default": true, + "description": "Property to specify whether the 'soft delete' functionality is enabled for this managed HSM pool. If it's not set to any value(true or false) when creating new managed HSM pool, it will be set to true by default. Once set to true, it cannot be reverted to false." + }, + "softDeleteRetentionInDays": { + "type": "integer", + "format": "int32", + "default": 90, + "description": "softDelete data retention days. It accepts >=7 and <=90." + }, + "enablePurgeProtection": { + "type": "boolean", + "default": true, + "description": "Property specifying whether protection against purge is enabled for this managed HSM pool. Setting this property to true activates protection against purge for this managed HSM pool and its content - only the Managed HSM service may initiate a hard, irrecoverable deletion. The setting is effective only if soft delete is also enabled. Enabling this functionality is irreversible." + }, + "createMode": { + "type": "string", + "description": "The create mode to indicate whether the resource is being created or is being recovered from a deleted resource.", + "enum": [ + "recover", + "default" + ], + "x-ms-enum": { + "name": "CreateMode", + "modelAsString": false, + "values": [ + { + "value": "recover", + "description": "Recover the managed HSM pool from a soft-deleted resource." + }, + { + "value": "default", + "description": "Create a new managed HSM pool. This is the default option." + } + ] + } + }, + "statusMessage": { + "readOnly": true, + "type": "string", + "description": "Resource Status Message." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "Provisioning state.", + "enum": [ + "Succeeded", + "Provisioning", + "Failed", + "Updating", + "Deleting", + "Activated", + "SecurityDomainRestore", + "Restoring" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true, + "values": [ + { + "value": "Succeeded", + "description": "The managed HSM Pool has been full provisioned." + }, + { + "value": "Provisioning", + "description": "The managed HSM Pool is currently being provisioned." + }, + { + "value": "Failed", + "description": "Provisioning of the managed HSM Pool has failed." + }, + { + "value": "Updating", + "description": "The managed HSM Pool is currently being updated." + }, + { + "value": "Deleting", + "description": "The managed HSM Pool is currently being deleted." + }, + { + "value": "Activated", + "description": "The managed HSM pool is ready for normal use." + }, + { + "value": "SecurityDomainRestore", + "description": "The managed HSM pool is waiting for a security domain restore action." + }, + { + "value": "Restoring", + "description": "The managed HSM pool is being restored from full HSM backup." + } + ] + } + }, + "networkAcls": { + "$ref": "#/definitions/MHSMNetworkRuleSet", + "description": "Rules governing the accessibility of the key vault from specific network locations." + }, + "privateEndpointConnections": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/MHSMPrivateEndpointConnectionItem" + }, + "description": "List of private endpoint connections associated with the managed hsm pool." + }, + "publicNetworkAccess": { + "description": "Control permission for data plane traffic coming from public networks while private endpoint is enabled.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "PublicNetworkAccess", + "modelAsString": true + } + }, + "scheduledPurgeDate": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The scheduled purge date in UTC." + } + }, + "description": "Properties of the managed HSM Pool" + }, + "ManagedHsm": { + "properties": { + "properties": { + "$ref": "#/definitions/ManagedHsmProperties", + "description": "Properties of the managed HSM" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ManagedHsmResource" + } + ], + "description": "Resource information with extended details." + }, + "ManagedHsmResource": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The Azure Resource Manager resource ID for the managed HSM Pool." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the managed HSM Pool." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type of the managed HSM Pool." + }, + "location": { + "type": "string", + "description": "The supported Azure location where the managed HSM Pool should be created.", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "sku": { + "$ref": "#/definitions/ManagedHsmSku", + "description": "SKU details" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + }, + "systemData": { + "$ref": "common.json#/definitions/SystemData" + } + }, + "description": "Managed HSM resource", + "x-ms-azure-resource": true + }, + "ManagedHsmListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ManagedHsm" + }, + "description": "The list of managed HSM Pools." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of managed HSM Pools." + } + }, + "description": "List of managed HSM Pools" + }, + "MHSMPrivateEndpointConnectionsListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/MHSMPrivateEndpointConnection" + }, + "description": "The private endpoint connection associated with a managed HSM Pools." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of managed HSM Pools." + } + }, + "description": "List of private endpoint connections associated with a managed HSM Pools" + }, + "ManagedHsmError": { + "properties": { + "error": { + "readOnly": true, + "description": "The server error.", + "$ref": "#/definitions/Error" + } + }, + "description": "The error exception." + }, + "Error": { + "properties": { + "code": { + "type": "string", + "readOnly": true, + "description": "The error code." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The error message." + }, + "innererror": { + "x-ms-client-name": "innerError", + "readOnly": true, + "description": "The inner error, contains a more specific error code.", + "$ref": "#/definitions/Error" + } + }, + "description": "The server error." + }, + "DeletedManagedHsm": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The Azure Resource Manager resource ID for the deleted managed HSM Pool." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the managed HSM Pool." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type of the managed HSM Pool." + }, + "properties": { + "$ref": "#/definitions/DeletedManagedHsmProperties", + "description": "Properties of the deleted managed HSM" + } + } + }, + "DeletedManagedHsmProperties": { + "properties": { + "mhsmId": { + "readOnly": true, + "type": "string", + "description": "The resource id of the original managed HSM." + }, + "location": { + "readOnly": true, + "type": "string", + "description": "The location of the original managed HSM." + }, + "deletionDate": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The deleted date." + }, + "scheduledPurgeDate": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The scheduled purged date." + }, + "purgeProtectionEnabled": { + "readOnly": true, + "type": "boolean", + "description": "Purge protection status of the original managed HSM." + }, + "tags": { + "readOnly": true, + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Tags of the original managed HSM." + } + }, + "description": "Properties of the deleted managed HSM." + }, + "DeletedManagedHsmListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeletedManagedHsm" + }, + "description": "The list of deleted managed HSM Pools." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of deleted managed HSM Pools." + } + }, + "description": "List of deleted managed HSM Pools" + }, + "MHSMNetworkRuleSet": { + "properties": { + "bypass": { + "type": "string", + "description": "Tells what traffic can bypass network rules. This can be 'AzureServices' or 'None'. If not specified the default is 'AzureServices'.", + "enum": [ + "AzureServices", + "None" + ], + "x-ms-enum": { + "name": "NetworkRuleBypassOptions", + "modelAsString": true + } + }, + "defaultAction": { + "type": "string", + "description": "The default action when no rule from ipRules and from virtualNetworkRules match. This is only used after the bypass property has been evaluated.", + "enum": [ + "Allow", + "Deny" + ], + "x-ms-enum": { + "name": "NetworkRuleAction", + "modelAsString": true + } + }, + "ipRules": { + "type": "array", + "items": { + "$ref": "#/definitions/MHSMIPRule" + }, + "description": "The list of IP address rules." + }, + "virtualNetworkRules": { + "type": "array", + "items": { + "$ref": "#/definitions/MHSMVirtualNetworkRule" + }, + "description": "The list of virtual network rules." + } + }, + "description": "A set of rules governing the network accessibility of a managed hsm pool." + }, + "MHSMIPRule": { + "properties": { + "value": { + "type": "string", + "description": "An IPv4 address range in CIDR notation, such as '124.56.78.91' (simple IP address) or '124.56.78.0/24' (all addresses that start with 124.56.78)." + } + }, + "required": [ + "value" + ], + "description": "A rule governing the accessibility of a managed hsm pool from a specific ip address or ip range." + }, + "MHSMVirtualNetworkRule": { + "properties": { + "id": { + "type": "string", + "description": "Full resource id of a vnet subnet, such as '/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1'." + } + }, + "required": [ + "id" + ], + "description": "A rule governing the accessibility of a managed hsm pool from a specific virtual network." + }, + "MHSMPrivateEndpointConnectionItem": { + "properties": { + "properties": { + "$ref": "#/definitions/MHSMPrivateEndpointConnectionProperties", + "x-ms-client-flatten": true, + "description": "Private endpoint connection properties." + } + }, + "description": "Private endpoint connection item." + }, + "MHSMPrivateEndpointConnection": { + "properties": { + "properties": { + "$ref": "#/definitions/MHSMPrivateEndpointConnectionProperties", + "x-ms-client-flatten": true, + "description": "Resource properties." + }, + "etag": { + "type": "string", + "description": "Modified whenever there is a change in the state of private endpoint connection." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ManagedHsmResource" + } + ], + "description": "Private endpoint connection resource.", + "x-ms-azure-resource": true + }, + "MHSMPrivateEndpointConnectionProperties": { + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/MHSMPrivateEndpoint", + "description": "Properties of the private endpoint object." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/MHSMPrivateLinkServiceConnectionState", + "description": "Approval state of the private link connection." + }, + "provisioningState": { + "$ref": "#/definitions/MHSMPrivateEndpointConnectionProvisioningState", + "description": "Provisioning state of the private endpoint connection." + } + }, + "description": "Properties of the private endpoint connection resource." + }, + "MHSMPrivateEndpoint": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Full identifier of the private endpoint resource." + } + }, + "description": "Private endpoint object properties." + }, + "MHSMPrivateLinkServiceConnectionState": { + "properties": { + "status": { + "$ref": "#/definitions/MHSMPrivateEndpointServiceConnectionStatus", + "description": "Indicates whether the connection has been approved, rejected or removed by the key vault owner." + }, + "description": { + "type": "string", + "description": "The reason for approval or rejection." + }, + "actionsRequired": { + "type": "string", + "description": "A message indicating if changes on the service provider require any updates on the consumer.", + "enum": [ + "None" + ], + "x-ms-enum": { + "name": "ActionsRequired", + "modelAsString": true + } + } + }, + "description": "An object that represents the approval state of the private link connection." + }, + "MHSMPrivateEndpointServiceConnectionStatus": { + "type": "string", + "description": "The private endpoint connection status.", + "enum": [ + "Pending", + "Approved", + "Rejected", + "Disconnected" + ], + "x-ms-enum": { + "name": "PrivateEndpointServiceConnectionStatus", + "modelAsString": true + } + }, + "MHSMPrivateEndpointConnectionProvisioningState": { + "type": "string", + "readOnly": true, + "description": "The current provisioning state.", + "enum": [ + "Succeeded", + "Creating", + "Updating", + "Deleting", + "Failed", + "Disconnected" + ], + "x-ms-enum": { + "name": "PrivateEndpointConnectionProvisioningState", + "modelAsString": true + } + }, + "MHSMPrivateLinkResourceListResult": { + "properties": { + "value": { + "type": "array", + "description": "Array of private link resources", + "items": { + "$ref": "#/definitions/MHSMPrivateLinkResource" + } + } + }, + "description": "A list of private link resources" + }, + "MHSMPrivateLinkResource": { + "properties": { + "properties": { + "$ref": "#/definitions/MHSMPrivateLinkResourceProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/ManagedHsmResource" + } + ], + "description": "A private link resource" + }, + "MHSMPrivateLinkResourceProperties": { + "properties": { + "groupId": { + "description": "Group identifier of private link resource.", + "type": "string", + "readOnly": true + }, + "requiredMembers": { + "description": "Required member names of private link resource.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "requiredZoneNames": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Required DNS zone names of the the private link resource." + } + }, + "description": "Properties of a private link resource." + } + }, + "parameters": { + "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." + }, + "ManagedHsmResourceGroupName": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the resource group that contains the managed HSM pool.", + "x-ms-parameter-location": "method" + }, + "MHSMPrivateEndpointConnectionName": { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the private endpoint connection associated with the managed hsm pool.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/providers.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/providers.json new file mode 100644 index 000000000000..364b48fcaa86 --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/providers.json @@ -0,0 +1,272 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-04-01-preview", + "title": "KeyVaultManagementClient", + "description": "The Azure management API provides a RESTful set of web services that interact with Azure Key Vault." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ], + "paths": { + "/providers/Microsoft.KeyVault/operations": { + "get": { + "tags": [ + "Operations" + ], + "description": "Lists all of the available Key Vault Rest API operations.", + "operationId": "Operations_List", + "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": "common.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Lists available Rest API operations.": { + "$ref": "./examples/listOperations.json" + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + } + } + }, + "definitions": { + "OperationListResult": { + "description": "Result of the request to list Storage operations. It contains a list of operations and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "description": "List of Storage operations supported by the Storage resource provider." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of operations." + } + } + }, + "Operation": { + "description": "Key Vault REST API operation definition.", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}", + "type": "string" + }, + "display": { + "description": "Display metadata associated with the operation.", + "properties": { + "provider": { + "description": "Service provider: Microsoft Key Vault.", + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed etc.", + "type": "string" + }, + "operation": { + "description": "Type of operation: get, read, delete, etc.", + "type": "string" + }, + "description": { + "description": "Description of operation.", + "type": "string" + } + } + }, + "origin": { + "type": "string", + "description": "The origin of operations." + }, + "properties": { + "description": "Properties of operation, include metric specifications.", + "x-ms-client-flatten": true, + "x-ms-client-name": "OperationProperties", + "$ref": "#/definitions/OperationProperties" + }, + "isDataAction": { + "type": "boolean", + "description": "Property to specify whether the action is a data action." + } + } + }, + "OperationProperties": { + "description": "Properties of operation, include metric specifications.", + "properties": { + "serviceSpecification": { + "$ref": "#/definitions/ServiceSpecification", + "description": "One property of operation, include metric specifications." + } + } + }, + "ServiceSpecification": { + "description": "One property of operation, include log specifications.", + "properties": { + "logSpecifications": { + "description": "Log specifications of operation.", + "type": "array", + "items": { + "$ref": "#/definitions/LogSpecification" + } + }, + "metricSpecifications": { + "description": "Metric specifications of operation.", + "type": "array", + "items": { + "$ref": "#/definitions/MetricSpecification" + } + } + } + }, + "LogSpecification": { + "description": "Log specification of operation.", + "properties": { + "name": { + "type": "string", + "description": "Name of log specification." + }, + "displayName": { + "type": "string", + "description": "Display name of log specification." + }, + "blobDuration": { + "type": "string", + "description": "Blob duration of specification." + } + } + }, + "MetricSpecification": { + "description": "Metric specification of operation.", + "properties": { + "name": { + "type": "string", + "description": "Name of metric specification." + }, + "displayName": { + "type": "string", + "description": "Display name of metric specification." + }, + "displayDescription": { + "type": "string", + "description": "Display description of metric specification." + }, + "unit": { + "type": "string", + "description": "The metric unit. Possible values include: 'Bytes', 'Count', 'Milliseconds'." + }, + "aggregationType": { + "type": "string", + "description": "The metric aggregation type. Possible values include: 'Average', 'Count', 'Total'." + }, + "supportedAggregationTypes": { + "type": "array", + "description": "The supported aggregation types for the metrics.", + "items": { + "type": "string" + } + }, + "supportedTimeGrainTypes": { + "type": "array", + "description": "The supported time grain types for the metrics.", + "items": { + "type": "string" + } + }, + "lockAggregationType": { + "type": "string", + "description": "The metric lock aggregation type." + }, + "dimensions": { + "type": "array", + "description": "The dimensions of metric", + "items": { + "$ref": "#/definitions/DimensionProperties" + } + }, + "fillGapWithZero": { + "type": "boolean", + "description": "Property to specify whether to fill gap with zero." + }, + "internalMetricName": { + "type": "string", + "description": "The internal metric name." + } + } + }, + "DimensionProperties": { + "description": "Type of operation: get, read, delete, etc.", + "properties": { + "name": { + "type": "string", + "description": "Name of dimension." + }, + "displayName": { + "type": "string", + "description": "Display name of dimension." + }, + "toBeExportedForShoebox": { + "type": "boolean", + "description": "Property to specify whether the dimension should be exported for Shoebox." + } + } + } + }, + "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." + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/secrets.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/secrets.json new file mode 100644 index 000000000000..417dbbda91aa --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2021-04-01-preview/secrets.json @@ -0,0 +1,483 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-04-01-preview", + "title": "KeyVaultManagementClient", + "description": "The Azure management API provides a RESTful set of web services that interact with Azure Key Vault." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}/secrets/{secretName}": { + "put": { + "tags": [ + "Secrets" + ], + "operationId": "Secrets_CreateOrUpdate", + "description": "Create or update a secret in a key vault in the specified subscription. NOTE: This API is intended for internal use in ARM deployments. Users should use the data-plane REST service for interaction with vault secrets.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Resource Group to which the vault belongs." + }, + { + "name": "vaultName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9-]{3,24}$", + "description": "Name of the vault" + }, + { + "name": "secretName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9-]{1,127}$", + "description": "Name of the secret" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SecretCreateOrUpdateParameters" + }, + "description": "Parameters to create or update the secret" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Created or updated vault", + "schema": { + "$ref": "#/definitions/Secret" + } + }, + "200": { + "description": "Created or updated secret", + "schema": { + "$ref": "#/definitions/Secret" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create a secret": { + "$ref": "./examples/createSecret.json" + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + }, + "patch": { + "tags": [ + "Secrets" + ], + "operationId": "Secrets_Update", + "description": "Update a secret in the specified subscription. NOTE: This API is intended for internal use in ARM deployments. Users should use the data-plane REST service for interaction with vault secrets.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Resource Group to which the vault belongs." + }, + { + "name": "vaultName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9-]{3,24}$", + "description": "Name of the vault" + }, + { + "name": "secretName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9-]{1,127}$", + "description": "Name of the secret" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SecretPatchParameters" + }, + "description": "Parameters to patch the secret" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Patched secret", + "schema": { + "$ref": "#/definitions/Secret" + } + }, + "200": { + "description": "Patched secret", + "schema": { + "$ref": "#/definitions/Secret" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update a secret": { + "$ref": "./examples/updateSecret.json" + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + }, + "get": { + "tags": [ + "Secrets" + ], + "operationId": "Secrets_Get", + "description": "Gets the specified secret. NOTE: This API is intended for internal use in ARM deployments. Users should use the data-plane REST service for interaction with vault secrets.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Resource Group to which the vault belongs." + }, + { + "name": "vaultName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vault." + }, + { + "name": "secretName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the secret." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Retrieved secret", + "schema": { + "$ref": "#/definitions/Secret" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get a secret": { + "$ref": "./examples/getSecret.json" + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}/secrets": { + "get": { + "tags": [ + "Secrets" + ], + "operationId": "Secrets_List", + "description": "The List operation gets information about the secrets in a vault. NOTE: This API is intended for internal use in ARM deployments. Users should use the data-plane REST service for interaction with vault secrets.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Resource Group to which the vault belongs." + }, + { + "name": "vaultName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vault." + }, + { + "name": "$top", + "in": "query", + "type": "integer", + "format": "int32", + "description": "Maximum number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Get information about secrets in the specified vault.", + "schema": { + "$ref": "#/definitions/SecretListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List secrets in the vault": { + "$ref": "./examples/listSecrets.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + } + } + }, + "definitions": { + "Attributes": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Determines whether the object is enabled." + }, + "nbf": { + "x-ms-client-name": "NotBefore", + "type": "integer", + "format": "int64", + "description": "Not before date in seconds since 1970-01-01T00:00:00Z." + }, + "exp": { + "x-ms-client-name": "Expires", + "type": "integer", + "format": "int64", + "description": "Expiry date in seconds since 1970-01-01T00:00:00Z." + }, + "created": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "Creation time in seconds since 1970-01-01T00:00:00Z." + }, + "updated": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "Last updated time in seconds since 1970-01-01T00:00:00Z." + } + }, + "description": "The object attributes managed by the KeyVault service." + }, + "SecretProperties": { + "properties": { + "value": { + "type": "string", + "description": "The value of the secret. NOTE: 'value' will never be returned from the service, as APIs using this model are is intended for internal use in ARM deployments. Users should use the data-plane REST service for interaction with vault secrets." + }, + "contentType": { + "type": "string", + "description": "The content type of the secret." + }, + "attributes": { + "$ref": "#/definitions/SecretAttributes", + "description": "The attributes of the secret." + }, + "secretUri": { + "type": "string", + "description": "The URI to retrieve the current version of the secret.", + "readOnly": true + }, + "secretUriWithVersion": { + "type": "string", + "description": "The URI to retrieve the specific version of the secret.", + "readOnly": true + } + }, + "description": "Properties of the secret" + }, + "SecretPatchProperties": { + "properties": { + "value": { + "type": "string", + "description": "The value of the secret." + }, + "contentType": { + "type": "string", + "description": "The content type of the secret." + }, + "attributes": { + "$ref": "#/definitions/SecretAttributes", + "description": "The attributes of the secret." + } + }, + "description": "Properties of the secret" + }, + "SecretAttributes": { + "allOf": [ + { + "$ref": "#/definitions/Attributes" + } + ], + "description": "The secret management attributes." + }, + "SecretCreateOrUpdateParameters": { + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The tags that will be assigned to the secret. " + }, + "properties": { + "$ref": "#/definitions/SecretProperties", + "description": "Properties of the secret" + } + }, + "description": "Parameters for creating or updating a secret", + "required": [ + "properties" + ], + "x-ms-azure-resource": true + }, + "SecretPatchParameters": { + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The tags that will be assigned to the secret. " + }, + "properties": { + "$ref": "#/definitions/SecretPatchProperties", + "description": "Properties of the secret" + } + }, + "description": "Parameters for patching a secret", + "x-ms-azure-resource": true + }, + "Secret": { + "properties": { + "properties": { + "$ref": "#/definitions/SecretProperties", + "description": "Properties of the secret" + } + }, + "required": [ + "properties" + ], + "allOf": [ + { + "$ref": "./keyvault.json#/definitions/Resource" + } + ], + "description": "Resource information with extended details." + }, + "SecretListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Secret" + }, + "description": "The list of secrets." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of secrets." + } + }, + "description": "List of secrets" + } + }, + "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." + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/keyvault/resource-manager/readme.azureresourceschema.md b/specification/keyvault/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 331b24762f0e..000000000000 --- a/specification/keyvault/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,96 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-keyvault-2020-04-01-preview - - tag: schema-keyvault-2019-09-01 - - tag: schema-keyvault-2018-02-14-preview - - tag: schema-keyvault-2018-02-14 - - tag: schema-keyvault-2016-10-01 - - tag: schema-keyvault-2015-06-01 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-keyvault-2020-04-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-keyvault-2020-04-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.KeyVault/preview/2020-04-01-preview/managedHsm.json - - Microsoft.KeyVault/preview/2020-04-01-preview/keyvault.json - - Microsoft.KeyVault/preview/2020-04-01-preview/providers.json - - Microsoft.KeyVault/preview/2020-04-01-preview/secrets.json - -``` - -### Tag: schema-keyvault-2019-09-01 and azureresourceschema - -``` yaml $(tag) == 'schema-keyvault-2019-09-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.KeyVault/stable/2019-09-01/keyvault.json - - Microsoft.KeyVault/stable/2019-09-01/providers.json - - Microsoft.KeyVault/stable/2019-09-01/keys.json - - Microsoft.KeyVault/stable/2019-09-01/secrets.json - -``` - -### Tag: schema-keyvault-2018-02-14-preview and azureresourceschema - -``` yaml $(tag) == 'schema-keyvault-2018-02-14-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.KeyVault/preview/2018-02-14-preview/keyvault.json - - Microsoft.KeyVault/preview/2018-02-14-preview/providers.json - - Microsoft.KeyVault/preview/2018-02-14-preview/secrets.json - -``` - -### Tag: schema-keyvault-2018-02-14 and azureresourceschema - -``` yaml $(tag) == 'schema-keyvault-2018-02-14' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.KeyVault/stable/2018-02-14/keyvault.json - - Microsoft.KeyVault/stable/2018-02-14/providers.json - - Microsoft.KeyVault/stable/2018-02-14/secrets.json - -``` - -### Tag: schema-keyvault-2016-10-01 and azureresourceschema - -``` yaml $(tag) == 'schema-keyvault-2016-10-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.KeyVault/stable/2016-10-01/keyvault.json - - Microsoft.KeyVault/stable/2016-10-01/providers.json - - Microsoft.KeyVault/stable/2016-10-01/secrets.json - -``` - -### Tag: schema-keyvault-2015-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-keyvault-2015-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.KeyVault/stable/2015-06-01/keyvault.json - -``` diff --git a/specification/keyvault/resource-manager/readme.go.md b/specification/keyvault/resource-manager/readme.go.md index 3bb372ff5eee..df788384ab81 100644 --- a/specification/keyvault/resource-manager/readme.go.md +++ b/specification/keyvault/resource-manager/readme.go.md @@ -2,13 +2,21 @@ These settings apply only when `--go` is specified on the command line. -``` yaml $(go) +``` yaml $(go) && !$(track2) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: keyvault clear-output-folder: true ``` +``` yaml $(go) && $(track2) +license-header: MICROSOFT_MIT_NO_VERSION +module-name: sdk/keyvault/armkeyvault +module: github.com/Azure/azure-sdk-for-go/$(module-name) +output-folder: $(go-sdk-folder)/$(module-name) +azure-arm: true +``` + ### Go multi-api ``` yaml $(go) && $(multiapi) diff --git a/specification/keyvault/resource-manager/readme.md b/specification/keyvault/resource-manager/readme.md index 6529df04b2b7..853a6931905e 100644 --- a/specification/keyvault/resource-manager/readme.md +++ b/specification/keyvault/resource-manager/readme.md @@ -26,15 +26,29 @@ These are the global settings for the KeyVault API. ``` yaml openapi-type: arm -tag: package-2019-09 +tag: package-preview-2021-04 ``` + +### Tag: package-preview-2021-04 + +These settings apply only when `--tag=package-preview-2021-04` is specified on the command line. + +```yaml $(tag) == 'package-preview-2021-04' +input-file: + - Microsoft.KeyVault/preview/2021-04-01-preview/keys.json + - Microsoft.KeyVault/preview/2021-04-01-preview/common.json + - Microsoft.KeyVault/preview/2021-04-01-preview/keyvault.json + - Microsoft.KeyVault/preview/2021-04-01-preview/managedHsm.json + - Microsoft.KeyVault/preview/2021-04-01-preview/providers.json + - Microsoft.KeyVault/preview/2021-04-01-preview/secrets.json +``` ### Tag: package-preview-2020-04 These settings apply only when `--tag=package-preview-2020-04` is specified on the command line. This tag is for the development of preview features related to managed HSM of Azure CLI and PowerShell. -```yaml $(tag) == 'package-preview-2020-04' +``` yaml $(tag) == 'package-preview-2020-04' input-file: - Microsoft.KeyVault/stable/2019-09-01/keyvault.json - Microsoft.KeyVault/stable/2019-09-01/providers.json @@ -45,8 +59,9 @@ input-file: These settings apply only when `--tag=package-preview-2020-04-full` is specified on the command line. -```yaml $(tag) == 'package-preview-2020-04-full' +``` yaml $(tag) == 'package-preview-2020-04-full' input-file: + - Microsoft.KeyVault/preview/2020-04-01-preview/keys.json - Microsoft.KeyVault/preview/2020-04-01-preview/keyvault.json - Microsoft.KeyVault/preview/2020-04-01-preview/providers.json - Microsoft.KeyVault/preview/2020-04-01-preview/secrets.json @@ -122,6 +137,9 @@ directive: - suppress: - R3026 # The 'PrivateEndpointConnection' and 'PrivateLinkResource' sub-resources don't define PATCH as per Network Team's specification. - R3025 # The 'PrivateLinkResource' is only accessible via List operation; does not define GET as per Network Team's specification. + - R4015 # The 'MHSMPrivateEndpointConnection' sub-resource doesn't define List as per Network Team's specification. + - R2005 # The 'ManagedHsms_PurgeDeleted' operation should not return a mix of 202 and syncronous return types (200, 201, 204) as directed by SDK team. + - R4009 # Vault object is the only one that need to be tracked with SystemData ``` --- @@ -145,19 +163,18 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_key_vault'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js keyvault/resource-manager ``` ## Go See configuration in [readme.go.md](./readme.go.md) +## Python + +See configuration in [readme.python.md](./readme.python.md) + ## Java See configuration in [readme.java.md](./readme.java.md) -## AzureResourceSchema - -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/keyvault/resource-manager/readme.python.md b/specification/keyvault/resource-manager/readme.python.md index 675ede4cc8ae..a2a5ddb5284d 100644 --- a/specification/keyvault/resource-manager/readme.python.md +++ b/specification/keyvault/resource-manager/readme.python.md @@ -4,10 +4,13 @@ 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 +``` yaml $(python) && $(track2) +python-mode: create azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION +namespace: azure.mgmt.keyvault package-name: azure-mgmt-keyvault +package-version: 1.0.0b1 no-namespace-folders: true ``` @@ -21,7 +24,8 @@ batch: - tag: package-2019-09 - tag: package-2018-02 - tag: package-2016-10 - - tag: package-preview-2020-04 + - tag: package-preview-2020-04-full + - tag: package-preview-2021-04 - multiapiscript: true ``` @@ -30,12 +34,20 @@ output-folder: $(python-sdks-folder)/keyvault/azure-mgmt-keyvault/azure/mgmt/key clear-output-folder: false perform-load: false ``` +### Tag: package-preview-2021-04 and python -### Tag: package-preview-2020-04 and python +These settings apply only when `--tag=package-preview-2021-04 --python` is specified on the command line. -These settings apply only when `--tag=package-preview-2020-04 --python` is specified on the command line. +``` yaml $(tag) == 'package-preview-2021-04' +namespace: azure.mgmt.keyvault.v2021_04_01_preview +output-folder: $(python-sdks-folder)/keyvault/azure-mgmt-keyvault/azure/mgmt/keyvault/v2021_04_01_preview +``` + +### Tag: package-preview-2020-04-full and python + +These settings apply only when `--tag=package-preview-2020-04-full --python` is specified on the command line. -``` yaml $(tag) == 'package-preview-2020-04' +``` yaml $(tag) == 'package-preview-2020-04-full' namespace: azure.mgmt.keyvault.v2020_04_01_preview output-folder: $(python-sdks-folder)/keyvault/azure-mgmt-keyvault/azure/mgmt/keyvault/v2020_04_01_preview ``` diff --git a/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/common/2021-05-01-preview/definitions.json b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/common/2021-05-01-preview/definitions.json new file mode 100644 index 000000000000..45c6850f3d05 --- /dev/null +++ b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/common/2021-05-01-preview/definitions.json @@ -0,0 +1,62 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-05-01-preview", + "title": "Common types and definitions", + "description": "Definitions and parameters common for all resource types of KubernetesConfiguration RP" + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "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": {}, + "parameters": { + "ClusterRpParameter": { + "name": "clusterRp", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "Microsoft.ContainerService", + "Microsoft.Kubernetes" + ], + "description": "The Kubernetes cluster RP - either Microsoft.ContainerService (for AKS clusters) or Microsoft.Kubernetes (for OnPrem K8S clusters).", + "x-ms-parameter-location": "method" + }, + "ClusterResourceNameParameter": { + "name": "clusterResourceName", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "managedClusters", + "connectedClusters" + ], + "description": "The Kubernetes cluster resource name - either managedClusters (for AKS clusters) or connectedClusters (for OnPrem K8S clusters).", + "x-ms-parameter-location": "method" + }, + "ClusterNameParameter": { + "name": "clusterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the kubernetes cluster.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/examples/ClusterExtensionType_Get.json b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/examples/ClusterExtensionType_Get.json new file mode 100644 index 000000000000..00d08509e4b8 --- /dev/null +++ b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/examples/ClusterExtensionType_Get.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "subscriptionId": "aaaaaaaaaa", + "resourceGroupName": "rgextensionTypes", + "clusterRp": "Microsoft.ContainerService", + "clusterType": "managedClusters", + "clusterName": "aaaaaaaaaaaaaaaaaaaaa", + "api-version": "2021-05-01-preview", + "extensionTypeName": "aaaaaa" + }, + "responses": { + "200": { + "body": { + "properties": { + "releaseTrains": [ + "aaaaaaaaaaaaaaaaaaaaaa" + ], + "clusterTypes": "connectedClusters", + "supportedScopes": { + "defaultScope": "aaaaaaaaaaa", + "clusterScopeSettings": { + "properties": { + "allowMultipleInstances": true, + "defaultReleaseNamespace": "aaaaaaaaaaaaaaaaaaaaaaa" + }, + "id": "aaaaaaaaaaaaaaaa", + "name": "aaaaaaaaaa", + "type": "aaaaaaaaaaaaaaaaaaa" + } + } + }, + "systemData": { + "createdBy": "aaaaaaaa", + "createdByType": "User", + "createdAt": "2021-04-14T22:44:27.144Z", + "lastModifiedBy": "aaaaaaaaa", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-04-14T22:44:27.144Z" + } + } + } + } +} diff --git a/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/examples/ClusterExtensionTypes_List.json b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/examples/ClusterExtensionTypes_List.json new file mode 100644 index 000000000000..36c86047383c --- /dev/null +++ b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/examples/ClusterExtensionTypes_List.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "aaaaaaaaaa", + "resourceGroupName": "rgextensionTypes", + "clusterRp": "Microsoft.ContainerService", + "clusterName": "aaaaaaaaaaaaaaaaaaaaa", + "api-version": "2021-05-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "releaseTrains": [ + "aaaaaaaaaaaaaaaaaaaaaa" + ], + "clusterTypes": "connectedClusters", + "supportedScopes": { + "defaultScope": "aaaaaaaaaaa", + "clusterScopeSettings": { + "properties": { + "allowMultipleInstances": true, + "defaultReleaseNamespace": "aaaaaaaaaaaaaaaaaaaaaaa" + }, + "id": "aaaaaaaaaaaaaaaa", + "name": "aaaaaaaaaa", + "type": "aaaaaaaaaaaaaaaaaaa" + } + } + }, + "systemData": { + "createdBy": "aaaaaaaa", + "createdByType": "User", + "createdAt": "2021-04-14T22:44:27.144Z", + "lastModifiedBy": "aaaaaaaaa", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-04-14T22:44:27.144Z" + } + } + ], + "nextLink": "aaaaaaaaaaaaaaaaaaaaa" + } + } + } +} diff --git a/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/examples/CreateExtension.json b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/examples/CreateExtension.json new file mode 100644 index 000000000000..03da19eedb9f --- /dev/null +++ b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/examples/CreateExtension.json @@ -0,0 +1,106 @@ +{ + "parameters": { + "subscriptionId": "subId1", + "resourceGroupName": "rg1", + "clusterRp": "Microsoft.Kubernetes", + "clusterResourceName": "connectedClusters", + "extensionName": "ClusterMonitor", + "api-version": "2021-05-01-preview", + "clusterName": "clusterName1", + "extension": { + "properties": { + "extensionType": "azuremonitor-containers", + "autoUpgradeMinorVersion": true, + "releaseTrain": "Preview", + "scope": { + "cluster": { + "releaseNamespace": "kube-system" + } + }, + "configurationSettings": { + "omsagent.secret.wsid": "a38cef99-5a89-52ed-b6db-22095c23664b", + "omsagent.env.clusterName": "clusterName1" + }, + "configurationProtectedSettings": { + "omsagent.secret.key": "secretKeyValue01" + } + } + } + }, + "responses": { + "201": { + "headers": { + "Operation-Location": "/subscriptions/subId1/resourceGroups/rg1/providers/Microsoft.Kubernetes/connectedClusters/clusterName1/providers/Microsoft.KubernetesConfiguration/extensions/ClusterMonitor/operations/{operationId}", + "x-ms-async-operation-timeout": "PT48H" + }, + "description": "Details of the Kubernetes Extension's current status.", + "body": { + "id": "/subscriptions/subId1/resourceGroups/rg1/providers/Microsoft.Kubernetes/connectedClusters/clusterName1/providers/Microsoft.KubernetesConfiguration/extensions/ClusterMonitor", + "type": "Microsoft.KubernetesConfiguration/extensions", + "name": "ClusterMonitor", + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2021-05-08T05:10:57.027Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2021-05-08T05:10:57.027Z" + }, + "properties": { + "extensionType": "azuremonitor-containers", + "autoUpgradeMinorVersion": true, + "releaseTrain": "Preview", + "version": "0.1.4", + "scope": { + "cluster": { + "releaseNamespace": "kube-system" + } + }, + "configurationSettings": { + "omsagent.secret.wsid": "a38cef99-5a89-52ed-b6db-22095c23664b", + "omsagent.env.clusterName": "clusterName1" + }, + "provisioningState": "Creating", + "statuses": [] + } + } + }, + "200": { + "headers": { + "Operation-Location": "/subscriptions/subId1/resourceGroups/rg1/providers/Microsoft.Kubernetes/connectedClusters/clusterName1/providers/Microsoft.KubernetesConfiguration/extensions/ClusterMonitor/operations/{operationId}", + "x-ms-async-operation-timeout": "PT48H" + }, + "description": "Details of the Kubernetes Extension's current status.", + "body": { + "id": "/subscriptions/subId1/resourceGroups/rg1/providers/Microsoft.Kubernetes/connectedClusters/clusterName1/providers/Microsoft.KubernetesConfiguration/extensions/ClusterMonitor", + "type": "Microsoft.KubernetesConfiguration/extensions", + "name": "ClusterMonitor", + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2021-05-08T05:10:57.027Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2021-05-08T05:10:57.027Z" + }, + "properties": { + "extensionType": "azuremonitor-containers", + "autoUpgradeMinorVersion": true, + "releaseTrain": "Preview", + "version": "0.1.4", + "scope": { + "cluster": { + "releaseNamespace": "kube-system" + } + }, + "configurationSettings": { + "omsagent.secret.wsid": "a38cef99-5a89-52ed-b6db-22095c23664b", + "omsagent.env.clusterName": "clusterName1" + }, + "provisioningState": "Creating", + "statuses": [] + } + } + } + } +} diff --git a/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/examples/CreateSourceControlConfiguration.json b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/examples/CreateSourceControlConfiguration.json new file mode 100644 index 000000000000..eb5a9418057c --- /dev/null +++ b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/examples/CreateSourceControlConfiguration.json @@ -0,0 +1,110 @@ +{ + "parameters": { + "subscriptionId": "subId1", + "resourceGroupName": "rg1", + "clusterRp": "Microsoft.Kubernetes", + "clusterResourceName": "connectedClusters", + "sourceControlConfigurationName": "SRS_GitHubConfig", + "api-version": "2021-05-01-preview", + "clusterName": "clusterName1", + "sourceControlConfiguration": { + "properties": { + "repositoryUrl": "git@github.com:k8sdeveloper425/flux-get-started", + "operatorNamespace": "SRS_Namespace", + "operatorInstanceName": "SRSGitHubFluxOp-01", + "operatorType": "Flux", + "operatorScope": "namespace", + "operatorParams": "--git-email=xyzgituser@users.srs.github.com", + "configurationProtectedSettings": { + "protectedSetting1Key": "protectedSetting1Value" + }, + "enableHelmOperator": true, + "sshKnownHostsContents": "c3NoLmRldi5henVyZS5jb20gc3NoLXJzYSBBQUFBQjNOemFDMXljMkVBQUFBREFRQUJBQUFCQVFDN0hyMW9UV3FOcU9sekdKT2ZHSjROYWtWeUl6ZjFyWFlkNGQ3d282akJsa0x2Q0E0b2RCbEwwbURVeVowL1FVZlRUcWV1K3RtMjJnT3N2K1ZyVlRNazZ2d1JVNzVnWS95OXV0NU1iM2JSNUJWNThkS1h5cTlBOVVlQjVDYWtlaG41WmdtNngxbUtvVnlmK0ZGbjI2aVlxWEpSZ3pJWlpjWjVWNmhyRTBRZzM5a1ptNGF6NDhvMEFVYmY2U3A0U0xkdm51TWEyc1ZOd0hCYm9TN0VKa201N1hRUFZVMy9RcHlOTEhiV0Rkend0cmxTK2V6MzBTM0FkWWhMS0VPeEFHOHdlT255cnRMSkFVZW45bVRrb2w4b0lJMWVkZjdtV1diV1ZmMG5CbWx5MjErblpjbUNUSVNRQnRkY3lQYUVubzdmRlFNREQyNi9zMGxmS29iNEt3OEg=", + "helmOperatorProperties": { + "chartVersion": "0.3.0", + "chartValues": "--set git.ssh.secretName=flux-git-deploy --set tillerNamespace=kube-system" + } + } + } + }, + "responses": { + "201": { + "headers": {}, + "description": "Details of the Kubernetes Configuration's current status.", + "body": { + "id": "/subscriptions/subId1/resourceGroups/rg1/providers/Microsoft.Kubernetes/connectedClusters/clusterName1/providers/Microsoft.KubernetesConfiguration/sourceControlConfigurations/SRS_GitHubConfig", + "type": "Microsoft.KubernetesConfiguration/sourceControlConfigurations", + "name": "SRS_GitHubConfig", + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-09-08T05:10:57.027Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-09-08T05:10:57.027Z" + }, + "properties": { + "repositoryUrl": "git@github.com:k8sdeveloper425/flux-get-started", + "operatorNamespace": "SRS_Namespace", + "operatorInstanceName": "SRSGitHubFluxOp-01", + "operatorType": "Flux", + "operatorScope": "namespace", + "operatorParams": "--git-email=xyzgituser@users.srs.github.com", + "enableHelmOperator": true, + "helmOperatorProperties": { + "chartVersion": "0.3.0", + "chartValues": "--set git.ssh.secretName=flux-git-deploy --set tillerNamespace=kube-system" + }, + "repositoryPublicKey": "ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAQEAqvTzeL+BWgcHnC1CTBRMg2ZfCh9khlrvb2avFHiGG24rRvjLHlKqtfiiw+cZNCKskUyVKqamD2RHrhyn/wXvJ9fFRt0LhYLKn4hJhJaPx4IawdWnW1MUv4U+Mr8o3Cxps4EmiZemqri3fOrhzEIlPL272whKpzlDLV7L4W1XQIGmVPwQ93HTzKEd5uHuEuw6JyFftDDLlCnd3Q1kQ7HOabFEfcSSr9cMx2MU4j/Pjuf3Rd/CzeksvKtU009KSXSnWKm8LL1fihSc1H1WDTi8iuZtT63hsNYH1yxrPRpMVScs3ufLViAGO9NEHQSgDdl/OERQQqKisUn2Qm6adgmftw== rsa-key-20190909", + "sshKnownHostsContents": "c3NoLmRldi5henVyZS5jb20gc3NoLXJzYSBBQUFBQjNOemFDMXljMkVBQUFBREFRQUJBQUFCQVFDN0hyMW9UV3FOcU9sekdKT2ZHSjROYWtWeUl6ZjFyWFlkNGQ3d282akJsa0x2Q0E0b2RCbEwwbURVeVowL1FVZlRUcWV1K3RtMjJnT3N2K1ZyVlRNazZ2d1JVNzVnWS95OXV0NU1iM2JSNUJWNThkS1h5cTlBOVVlQjVDYWtlaG41WmdtNngxbUtvVnlmK0ZGbjI2aVlxWEpSZ3pJWlpjWjVWNmhyRTBRZzM5a1ptNGF6NDhvMEFVYmY2U3A0U0xkdm51TWEyc1ZOd0hCYm9TN0VKa201N1hRUFZVMy9RcHlOTEhiV0Rkend0cmxTK2V6MzBTM0FkWWhMS0VPeEFHOHdlT255cnRMSkFVZW45bVRrb2w4b0lJMWVkZjdtV1diV1ZmMG5CbWx5MjErblpjbUNUSVNRQnRkY3lQYUVubzdmRlFNREQyNi9zMGxmS29iNEt3OEg=", + "provisioningState": "Succeeded", + "complianceStatus": { + "complianceState": "Pending", + "lastConfigApplied": "2020-09-08T05:25:32.122Z", + "message": "Configuration successfully created", + "messageLevel": "Info" + } + } + } + }, + "200": { + "headers": {}, + "description": "Details of the Kubernetes Configuration's current status.", + "body": { + "id": "/subscriptions/subId1/resourceGroups/rg1/providers/Microsoft.Kubernetes/connectedClusters/clusterName1/providers/Microsoft.KubernetesConfiguration/sourceControlConfigurations/SRS_GitHubConfig", + "type": "Microsoft.KubernetesConfiguration/sourceControlConfigurations", + "name": "SRS_GitHubConfig", + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-09-08T05:10:57.027Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-09-08T05:10:57.027Z" + }, + "properties": { + "repositoryUrl": "git@github.com:k8sdeveloper425/flux-get-started", + "operatorNamespace": "SRS_Namespace", + "operatorInstanceName": "SRSGitHubFluxOp-01", + "operatorType": "Flux", + "operatorScope": "namespace", + "operatorParams": "--git-email=xyzgituser@users.srs.github.com", + "enableHelmOperator": true, + "helmOperatorProperties": { + "chartVersion": "0.3.0", + "chartValues": "--set git.ssh.secretName=flux-git-deploy --set tillerNamespace=kube-system" + }, + "repositoryPublicKey": "ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAQEAqvTzeL+BWgcHnC1CTBRMg2ZfCh9khlrvb2avFHiGG24rRvjLHlKqtfiiw+cZNCKskUyVKqamD2RHrhyn/wXvJ9fFRt0LhYLKn4hJhJaPx4IawdWnW1MUv4U+Mr8o3Cxps4EmiZemqri3fOrhzEIlPL272whKpzlDLV7L4W1XQIGmVPwQ93HTzKEd5uHuEuw6JyFftDDLlCnd3Q1kQ7HOabFEfcSSr9cMx2MU4j/Pjuf3Rd/CzeksvKtU009KSXSnWKm8LL1fihSc1H1WDTi8iuZtT63hsNYH1yxrPRpMVScs3ufLViAGO9NEHQSgDdl/OERQQqKisUn2Qm6adgmftw== rsa-key-20190909", + "sshKnownHostsContents": "c3NoLmRldi5henVyZS5jb20gc3NoLXJzYSBBQUFBQjNOemFDMXljMkVBQUFBREFRQUJBQUFCQVFDN0hyMW9UV3FOcU9sekdKT2ZHSjROYWtWeUl6ZjFyWFlkNGQ3d282akJsa0x2Q0E0b2RCbEwwbURVeVowL1FVZlRUcWV1K3RtMjJnT3N2K1ZyVlRNazZ2d1JVNzVnWS95OXV0NU1iM2JSNUJWNThkS1h5cTlBOVVlQjVDYWtlaG41WmdtNngxbUtvVnlmK0ZGbjI2aVlxWEpSZ3pJWlpjWjVWNmhyRTBRZzM5a1ptNGF6NDhvMEFVYmY2U3A0U0xkdm51TWEyc1ZOd0hCYm9TN0VKa201N1hRUFZVMy9RcHlOTEhiV0Rkend0cmxTK2V6MzBTM0FkWWhMS0VPeEFHOHdlT255cnRMSkFVZW45bVRrb2w4b0lJMWVkZjdtV1diV1ZmMG5CbWx5MjErblpjbUNUSVNRQnRkY3lQYUVubzdmRlFNREQyNi9zMGxmS29iNEt3OEg=", + "provisioningState": "Succeeded", + "complianceStatus": { + "complianceState": "Pending", + "lastConfigApplied": "2020-09-08T05:25:32.122Z", + "message": "Configuration successfully created", + "messageLevel": "Info" + } + } + } + } + } +} diff --git a/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/examples/DeleteExtension.json b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/examples/DeleteExtension.json new file mode 100644 index 000000000000..6833265594b6 --- /dev/null +++ b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/examples/DeleteExtension.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "subId1", + "resourceGroupName": "rg1", + "clusterRp": "Microsoft.Kubernetes", + "clusterResourceName": "connectedClusters", + "extensionName": "ClusterMonitor", + "api-version": "2021-05-01-preview", + "clusterName": "clusterName1" + }, + "responses": { + "202": { + "headers": { + "Operation-Location": "/subscriptions/subId1/resourceGroups/rg1/providers/Microsoft.Kubernetes/connectedClusters/clusterName1/providers/Microsoft.KubernetesConfiguration/extensions/ClusterMonitor/operations/{operationId}", + "x-ms-async-operation-timeout": "PT1H" + }, + "description": "Details of the Kubernetes Extension's current status." + }, + "200": {}, + "204": {} + } +} diff --git a/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/examples/DeleteSourceControlConfiguration.json b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/examples/DeleteSourceControlConfiguration.json new file mode 100644 index 000000000000..b479cc7588e6 --- /dev/null +++ b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/examples/DeleteSourceControlConfiguration.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "subId1", + "resourceGroupName": "rg1", + "clusterRp": "Microsoft.Kubernetes", + "clusterResourceName": "connectedClusters", + "sourceControlConfigurationName": "SRS_GitHubConfig", + "api-version": "2021-05-01-preview", + "clusterName": "clusterName1" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/examples/ExtensionTypeVersions_List.json b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/examples/ExtensionTypeVersions_List.json new file mode 100644 index 000000000000..de2110441dc5 --- /dev/null +++ b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/examples/ExtensionTypeVersions_List.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "aaaaaaaaaa", + "location": "aaaaaa", + "extensionTypeName": "aaaaaa", + "api-version": "2021-05-01-preview" + }, + "responses": { + "200": { + "body": { + "versions": [ + { + "releaseTrain": "aaaa", + "versions": [ + "aaaaaaaaaaaaaa" + ] + } + ], + "nextLink": "aaa", + "systemData": { + "createdBy": "aaaaaaaa", + "createdByType": "User", + "createdAt": "2021-04-14T22:44:27.144Z", + "lastModifiedBy": "aaaaaaaaa", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-04-14T22:44:27.144Z" + } + } + } + } +} diff --git a/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/examples/GetAsyncOperationStatus.json b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/examples/GetAsyncOperationStatus.json new file mode 100644 index 000000000000..f012668066e3 --- /dev/null +++ b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/examples/GetAsyncOperationStatus.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "subId1", + "resourceGroupName": "rg1", + "clusterRp": "Microsoft.Kubernetes", + "clusterResourceName": "connectedClusters", + "extensionName": "ClusterMonitor", + "api-version": "2021-05-01-preview", + "clusterName": "clusterName1", + "operationId": "99999999-9999-9999-9999-999999999999" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/subId1/resourceGroups/rg1/providers/Microsoft.Kubernetes/connectedClusters/clusterName1/providers/Microsoft.KubernetesConfiguration/extensions/ClusterMonitor/operations/99999999-9999-9999-9999-999999999999", + "name": "99999999-9999-9999-9999-999999999999", + "status": "Succeeded", + "properties": {}, + "error": null + } + } + } +} diff --git a/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/examples/GetExtension.json b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/examples/GetExtension.json new file mode 100644 index 000000000000..ca96095deed9 --- /dev/null +++ b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/examples/GetExtension.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "subId1", + "resourceGroupName": "rg1", + "clusterRp": "Microsoft.Kubernetes", + "clusterResourceName": "connectedClusters", + "extensionName": "ClusterMonitor", + "api-version": "2021-05-01-preview", + "clusterName": "clusterName1" + }, + "responses": { + "200": { + "headers": {}, + "description": "Details of the Kubernetes Extension's current status.", + "body": { + "id": "/subscriptions/subId1/resourceGroups/rg1/providers/Microsoft.Kubernetes/connectedClusters/clusterName1/providers/Microsoft.KubernetesConfiguration/extensions/ClusterMonitor", + "type": "Microsoft.KubernetesConfiguration/extensions", + "name": "ClusterMonitor", + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2021-05-08T05:10:57.027Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2021-05-08T05:10:57.027Z" + }, + "properties": { + "extensionType": "azuremonitor-containers", + "autoUpgradeMinorVersion": true, + "releaseTrain": "Preview", + "version": "0.1.4", + "scope": { + "cluster": { + "releaseNamespace": "kube-system" + } + }, + "configurationSettings": { + "omsagent.secret.wsid": "a38cef99-5a89-52ed-b6db-22095c23664b", + "omsagent.env.clusterName": "clusterName1" + }, + "provisioningState": "Creating", + "statuses": [] + } + } + } + } +} diff --git a/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/examples/GetSourceControlConfiguration.json b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/examples/GetSourceControlConfiguration.json new file mode 100644 index 000000000000..2c6a47deb4c4 --- /dev/null +++ b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/examples/GetSourceControlConfiguration.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "subId1", + "resourceGroupName": "rg1", + "clusterRp": "Microsoft.Kubernetes", + "clusterResourceName": "connectedClusters", + "sourceControlConfigurationName": "SRS_GitHubConfig", + "api-version": "2021-05-01-preview", + "clusterName": "clusterName1" + }, + "responses": { + "200": { + "headers": {}, + "description": "Details of the Source Control Configuration's current status.", + "body": { + "id": "/subscriptions/subId1/resourceGroups/rg1/providers/Microsoft.Kubernetes/connectedClusters/clusterName1/providers/Microsoft.KubernetesConfiguration/sourceControlConfigurations/SRS_GitHubConfig", + "type": "Microsoft.KubernetesConfiguration/sourceControlConfigurations", + "name": "SRS_GitHubConfig", + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-09-08T05:10:57.027Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-09-08T05:10:57.027Z" + }, + "properties": { + "repositoryUrl": "git@github.com:k8sdeveloper425/flux-get-started", + "operatorNamespace": "SRS_Namespace", + "operatorInstanceName": "SRSGitHubFluxOp-01", + "operatorType": "Flux", + "operatorScope": "namespace", + "operatorParams": "--git-email=xyzgituser@users.srs.github.com", + "helmOperatorProperties": { + "chartVersion": "0.3.0", + "chartValues": "--set git.ssh.secretName=flux-git-deploy --set tillerNamespace=kube-system" + }, + "repositoryPublicKey": "ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAQEAqvTzeL+BWgcHnC1CTBRMg2ZfCh9khlrvb2avFHiGG24rRvjLHlKqtfiiw+cZNCKskUyVKqamD2RHrhyn/wXvJ9fFRt0LhYLKn4hJhJaPx4IawdWnW1MUv4U+Mr8o3Cxps4EmiZemqri3fOrhzEIlPL272whKpzlDLV7L4W1XQIGmVPwQ93HTzKEd5uHuEuw6JyFftDDLlCnd3Q1kQ7HOabFEfcSSr9cMx2MU4j/Pjuf3Rd/CzeksvKtU009KSXSnWKm8LL1fihSc1H1WDTi8iuZtT63hsNYH1yxrPRpMVScs3ufLViAGO9NEHQSgDdl/OERQQqKisUn2Qm6adgmftw== rsa-key-20190909", + "sshKnownHostsContents": "c3NoLmRldi5henVyZS5jb20gc3NoLXJzYSBBQUFBQjNOemFDMXljMkVBQUFBREFRQUJBQUFCQVFDN0hyMW9UV3FOcU9sekdKT2ZHSjROYWtWeUl6ZjFyWFlkNGQ3d282akJsa0x2Q0E0b2RCbEwwbURVeVowL1FVZlRUcWV1K3RtMjJnT3N2K1ZyVlRNazZ2d1JVNzVnWS95OXV0NU1iM2JSNUJWNThkS1h5cTlBOVVlQjVDYWtlaG41WmdtNngxbUtvVnlmK0ZGbjI2aVlxWEpSZ3pJWlpjWjVWNmhyRTBRZzM5a1ptNGF6NDhvMEFVYmY2U3A0U0xkdm51TWEyc1ZOd0hCYm9TN0VKa201N1hRUFZVMy9RcHlOTEhiV0Rkend0cmxTK2V6MzBTM0FkWWhMS0VPeEFHOHdlT255cnRMSkFVZW45bVRrb2w4b0lJMWVkZjdtV1diV1ZmMG5CbWx5MjErblpjbUNUSVNRQnRkY3lQYUVubzdmRlFNREQyNi9zMGxmS29iNEt3OEg=", + "provisioningState": "Succeeded", + "complianceStatus": { + "complianceState": "Pending", + "lastConfigApplied": "2020-09-08T05:25:32.122Z", + "message": "Configuration successfully created", + "messageLevel": "Info" + } + } + } + } + } +} diff --git a/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/examples/ListAsyncOperationStatus.json b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/examples/ListAsyncOperationStatus.json new file mode 100644 index 000000000000..618c923dc5df --- /dev/null +++ b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/examples/ListAsyncOperationStatus.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "subId1", + "resourceGroupName": "rg1", + "clusterRp": "Microsoft.Kubernetes", + "clusterResourceName": "connectedClusters", + "api-version": "2021-05-01-preview", + "clusterName": "clusterName1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subId1/resourceGroups/rg1/providers/Microsoft.Kubernetes/connectedClusters/clusterName1/providers/Microsoft.KubernetesConfiguration/extensions/ClusterMonitor/operations/99999999-9999-9999-9999-999999999999", + "name": "99999999-9999-9999-9999-999999999999", + "status": "Deleting", + "properties": {}, + "error": null + }, + { + "id": "/subscriptions/subId1/resourceGroups/rg1/providers/Microsoft.Kubernetes/connectedClusters/clusterName1/providers/Microsoft.KubernetesConfiguration/extensions/ClusterMonitor/operations/88888888-8888-8888-8888-888888888888", + "name": "88888888-8888-8888-8888-888888888888", + "status": "Creating", + "properties": {}, + "error": null + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/examples/ListExtensions.json b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/examples/ListExtensions.json new file mode 100644 index 000000000000..c90248b9547b --- /dev/null +++ b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/examples/ListExtensions.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "subscriptionId": "subId1", + "resourceGroupName": "rg1", + "clusterRp": "Microsoft.Kubernetes", + "clusterResourceName": "connectedClusters", + "api-version": "2021-05-01-preview", + "clusterName": "clusterName1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subId1/resourceGroups/rg1/providers/Microsoft.Kubernetes/connectedClusters/clusterName1/providers/Microsoft.KubernetesConfiguration/extensions/ClusterMonitor", + "type": "Microsoft.KubernetesConfiguration/extensions", + "name": "ClusterMonitor", + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2021-05-08T05:10:57.027Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2021-05-08T05:10:57.027Z" + }, + "properties": { + "extensionType": "azuremonitor-containers", + "autoUpgradeMinorVersion": true, + "releaseTrain": "Preview", + "version": "0.1.4", + "scope": { + "cluster": { + "releaseNamespace": "kube-system" + } + }, + "configurationSettings": { + "omsagent.secret.wsid": "a38cef99-5a89-52ed-b6db-22095c23664b", + "omsagent.env.clusterName": "clusterName1" + }, + "provisioningState": "Creating", + "statuses": [] + } + }, + { + "id": "/subscriptions/subId1/resourceGroups/rg1/providers/Microsoft.Kubernetes/connectedClusters/clusterName1/providers/Microsoft.KubernetesConfiguration/extensions/BackupVault01", + "type": "Microsoft.KubernetesConfiguration/extensions", + "name": "App1Monitor", + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2021-05-08T04:09:23.011Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2021-05-08T04:09:23.011Z" + }, + "properties": { + "extensionType": "Microsoft.RecoveryServices/recoveryVault", + "autoUpgradeMinorVersion": false, + "releaseTrain": "Stable", + "version": "1.0.1", + "scope": { + "cluster": { + "releaseNamespace": "myKVNamespace" + } + }, + "configurationSettings": {}, + "provisioningState": "Creating", + "statuses": [] + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/examples/ListSourceControlConfiguration.json b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/examples/ListSourceControlConfiguration.json new file mode 100644 index 000000000000..042572b24cff --- /dev/null +++ b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/examples/ListSourceControlConfiguration.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "subscriptionId": "subId1", + "resourceGroupName": "rg1", + "clusterRp": "Microsoft.Kubernetes", + "clusterResourceName": "connectedClusters", + "api-version": "2021-05-01-preview", + "clusterName": "clusterName1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subId1/resourceGroups/rg1/providers/Microsoft.Kubernetes/connectedClusters/clusterName1/providers/Microsoft.KubernetesConfiguration/sourceControlConfigurations/SRS_GitHubConfig", + "type": "Microsoft.KubernetesConfiguration/sourceControlConfigurations", + "name": "SRS_GitHubConfig", + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-09-08T05:10:57.027Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-09-08T05:10:57.027Z" + }, + "properties": { + "repositoryUrl": "git@github.com:k8sdeveloper425/SRSClusterconfigs", + "operatorNamespace": "SRS_Namespace", + "operatorInstanceName": "SRSGitHubFluxOp-01", + "operatorType": "Flux", + "operatorScope": "namespace", + "sshKnownHostsContents": "c3NoLmRldi5henVyZS5jb20gc3NoLXJzYSBBQUFBQjNOemFDMXljMkVBQUFBREFRQUJBQUFCQVFDN0hyMW9UV3FOcU9sekdKT2ZHSjROYWtWeUl6ZjFyWFlkNGQ3d282akJsa0x2Q0E0b2RCbEwwbURVeVowL1FVZlRUcWV1K3RtMjJnT3N2K1ZyVlRNazZ2d1JVNzVnWS95OXV0NU1iM2JSNUJWNThkS1h5cTlBOVVlQjVDYWtlaG41WmdtNngxbUtvVnlmK0ZGbjI2aVlxWEpSZ3pJWlpjWjVWNmhyRTBRZzM5a1ptNGF6NDhvMEFVYmY2U3A0U0xkdm51TWEyc1ZOd0hCYm9TN0VKa201N1hRUFZVMy9RcHlOTEhiV0Rkend0cmxTK2V6MzBTM0FkWWhMS0VPeEFHOHdlT255cnRMSkFVZW45bVRrb2w4b0lJMWVkZjdtV1diV1ZmMG5CbWx5MjErblpjbUNUSVNRQnRkY3lQYUVubzdmRlFNREQyNi9zMGxmS29iNEt3OEg=", + "provisioningState": "Succeeded", + "complianceStatus": { + "complianceState": "Compliant" + } + } + }, + { + "id": "/subscriptions/subId1/resourceGroups/rg1/providers/Microsoft.Kubernetes/connectedClusters/clusterName1/providers/Microsoft.KubernetesConfiguration/sourceControlConfigurations/SCRS_GitHubConfig", + "type": "Microsoft.KubernetesConfiguration/sourceControlConfigurations", + "name": "SCRS_GitHubConfig", + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-09-08T05:10:57.027Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-09-08T05:10:57.027Z" + }, + "properties": { + "repositoryUrl": "git@github.com:k8sdeveloper425/SCRSClusterconfigs", + "operatorNamespace": "SCRS_Namespace", + "operatorInstanceName": "SCRSGitHubFluxOp-02", + "operatorType": "Flux", + "operatorScope": "cluster", + "sshKnownHostsContents": "c3NoLmRldi5henVyZS5jb20gc3NoLXJzYSBBQUFBQjNOemFDMXljMkVBQUFBREFRQUJBQUFCQVFDN0hyMW9UV3FOcU9sekdKT2ZHSjROYWtWeUl6ZjFyWFlkNGQ3d282akJsa0x2Q0E0b2RCbEwwbURVeVowL1FVZlRUcWV1K3RtMjJnT3N2K1ZyVlRNazZ2d1JVNzVnWS95OXV0NU1iM2JSNUJWNThkS1h5cTlBOVVlQjVDYWtlaG41WmdtNngxbUtvVnlmK0ZGbjI2aVlxWEpSZ3pJWlpjWjVWNmhyRTBRZzM5a1ptNGF6NDhvMEFVYmY2U3A0U0xkdm51TWEyc1ZOd0hCYm9TN0VKa201N1hRUFZVMy9RcHlOTEhiV0Rkend0cmxTK2V6MzBTM0FkWWhMS0VPeEFHOHdlT255cnRMSkFVZW45bVRrb2w4b0lJMWVkZjdtV1diV1ZmMG5CbWx5MjErblpjbUNUSVNRQnRkY3lQYUVubzdmRlFNREQyNi9zMGxmS29iNEt3OEg=", + "provisioningState": "Succeeded", + "complianceStatus": { + "complianceState": "Compliant" + } + } + } + ] + } + } + } +} diff --git a/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/examples/LocationExtensionTypes_List.json b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/examples/LocationExtensionTypes_List.json new file mode 100644 index 000000000000..27eee20dca0a --- /dev/null +++ b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/examples/LocationExtensionTypes_List.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "aaaaaaaaaa", + "location": "aaaaaa", + "api-version": "2021-05-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "releaseTrains": [ + "aaaaaaaaaaaaaaaaaaaaaa" + ], + "clusterTypes": "connectedClusters", + "supportedScopes": { + "defaultScope": "aaaaaaaaaaa", + "clusterScopeSettings": { + "properties": { + "allowMultipleInstances": true, + "defaultReleaseNamespace": "aaaaaaaaaaaaaaaaaaaaaaa" + }, + "id": "aaaaaaaaaaaaaaaa", + "name": "aaaaaaaaaa", + "type": "aaaaaaaaaaaaaaaaaaa" + } + } + }, + "systemData": { + "createdBy": "aaaaaaaa", + "createdByType": "User", + "createdAt": "2021-04-14T22:44:27.144Z", + "lastModifiedBy": "aaaaaaaaa", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-04-14T22:44:27.144Z" + } + } + ], + "nextLink": "aaaaaaaaaaaaaaaaaaaaa" + } + } + } +} diff --git a/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/examples/OperationsList.json b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/examples/OperationsList.json new file mode 100644 index 000000000000..ef15e52b5903 --- /dev/null +++ b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/examples/OperationsList.json @@ -0,0 +1,110 @@ +{ + "parameters": { + "api-version": "2021-05-01-preview" + }, + "responses": { + "200": { + "body": [ + { + "name": "Microsoft.KubernetesConfiguration/sourceControlConfigurations/write", + "display": { + "operation": "Microsoft.KubernetesConfiguration/sourceControlConfigurations/write", + "resource": "Microsoft.KubernetesConfiguration/sourceControlConfigurations", + "description": "Creates or updates source control configuration.", + "provider": "Microsoft Kubernetes Configuration" + }, + "isDataAction": false, + "origin": "user,system" + }, + { + "name": "Microsoft.KubernetesConfiguration/sourceControlConfigurations/read", + "display": { + "operation": "Microsoft.KubernetesConfiguration/sourceControlConfigurations/read", + "resource": "Microsoft.KubernetesConfiguration/sourceControlConfigurations", + "description": "Gets source control configuration.", + "provider": "Microsoft Kubernetes Configuration" + }, + "isDataAction": false, + "origin": "user,system" + }, + { + "name": "Microsoft.KubernetesConfiguration/sourceControlConfigurations/delete", + "display": { + "operation": "Microsoft.KubernetesConfiguration/sourceControlConfigurations/delete", + "resource": "Microsoft.KubernetesConfiguration/sourceControlConfigurations", + "description": "Deletes source control configuration.", + "provider": "Microsoft Kubernetes Configuration" + }, + "isDataAction": false, + "origin": "user,system" + }, + { + "name": "Microsoft.KubernetesConfiguration/extensions/read", + "display": { + "provider": "Microsoft KubernetesConfiguration", + "resource": "extensions", + "operation": "Get extension", + "description": "Get the specified Extension." + }, + "isDataAction": false, + "origin": "user,system" + }, + { + "name": "Microsoft.KubernetesConfiguration/extensions/write", + "display": { + "provider": "Microsoft KubernetesConfiguration", + "resource": "extensions", + "operation": "Create a Extension", + "description": "Create the Extension specified." + }, + "isDataAction": false, + "origin": "user,system" + }, + { + "name": "Microsoft.KubernetesConfiguration/extensions/delete", + "display": { + "provider": "Microsoft KubernetesConfiguration", + "resource": "extensions", + "operation": "Delete Extension", + "description": "Delete the specified Extension." + }, + "isDataAction": false, + "origin": "user,system" + }, + { + "name": "Microsoft.KubernetesConfiguration/extensions/operations/read", + "display": { + "provider": "Microsoft KubernetesConfiguration", + "resource": "extensions", + "operation": "Get Extension Async Operation Status", + "description": "Get the Status of the Extension Async Operation." + }, + "isDataAction": false, + "origin": "user,system" + }, + { + "name": "Microsoft.KubernetesConfiguration/register/action", + "display": { + "operation": "Microsoft.KubernetesConfiguration/register/action", + "resource": "Register", + "description": "Registers subscription to Microsoft.KubernetesConfiguration resource provider.", + "provider": "Microsoft Kubernetes Configuration" + }, + "isDataAction": false, + "origin": "user,system" + }, + { + "name": "Microsoft.KubernetesConfiguration/extensionTypes/read", + "display": { + "provider": "Microsoft.KubernetesConfiguration", + "resource": "extensionTypes", + "operation": "Get Kubernetes Configuration Available Extensions", + " provider": "Microsoft Kuberntes Configuration" + }, + "isDataAction": false, + "origin": "user,system" + } + ] + } + } +} diff --git a/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/extensionTypes.json b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/extensionTypes.json new file mode 100644 index 000000000000..ef25065a4138 --- /dev/null +++ b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/extensionTypes.json @@ -0,0 +1,412 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-05-01-preview", + "title": "ExtensionTypes", + "description": "Use these APIs to create extension resources through ARM, for Kubernetes Clusters." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{clusterRp}/{clusterType}/{clusterName}/providers/Microsoft.KubernetesConfiguration/extensionTypes/{extensionTypeName}": { + "get": { + "description": "Get Extension Type details", + "operationId": "ClusterExtensionType_Get", + "x-ms-examples": { + "ClusterExtensionType_Get_MaximumSet_Gen": { + "$ref": "./examples/ClusterExtensionType_Get.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ClusterRpParameter" + }, + { + "$ref": "#/parameters/ClusterTypeParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ExtensionTypeNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ExtensionType" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{clusterRp}/connectedClusters/{clusterName}/providers/Microsoft.KubernetesConfiguration/extensionTypes": { + "get": { + "description": "Get Extension Types", + "operationId": "ClusterExtensionTypes_List", + "x-ms-examples": { + "ClusterExtensionTypes_List_MaximumSet_Gen": { + "$ref": "./examples/ClusterExtensionTypes_List.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ClusterRpParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ExtensionTypeList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.KubernetesConfiguration/locations/{location}/extensionTypes/{extensionTypeName}/versions": { + "get": { + "description": "List available versions for an Extension Type", + "operationId": "ExtensionTypeVersions_List", + "x-ms-examples": { + "ExtensionTypeVersions_List_MaximumSet_Gen": { + "$ref": "./examples/ExtensionTypeVersions_List.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ExtensionLocationParameter" + }, + { + "$ref": "#/parameters/ExtensionTypeNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ExtensionVersionList" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink", + "itemName": "versions" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.KubernetesConfiguration/locations/{location}/extensionTypes": { + "get": { + "tags": [ + "ExtensionType" + ], + "description": "List all Extension Types", + "operationId": "LocationExtensionTypes_List", + "x-ms-examples": { + "LocationExtensionTypes_List_MaximumSet_Gen": { + "$ref": "./examples/LocationExtensionTypes_List.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ExtensionLocationParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ExtensionTypeList" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "ExtensionTypeList": { + "description": "List Extension Types", + "type": "object", + "properties": { + "value": { + "description": "The list of Extension Types", + "type": "array", + "items": { + "$ref": "#/definitions/ExtensionType" + } + }, + "nextLink": { + "description": "The link to fetch the next page of Extension Types", + "type": "string" + } + } + }, + "ExtensionType": { + "type": "object", + "description": "Represents an Extension Type.", + "required": [ + "properties" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExtensionTypeProperties", + "description": "Describes the Resource Type properties." + }, + "systemData": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData", + "readOnly": true, + "description": "Metadata pertaining to creation and last modification of the resource." + } + } + }, + "ExtensionTypeProperties": { + "description": "Properties of the connected cluster.", + "type": "object", + "properties": { + "releaseTrains": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "Extension release train: preview or stable" + }, + "clusterTypes": { + "description": "Cluster types", + "readOnly": true, + "type": "string", + "enum": [ + "connectedClusters", + "managedClusters" + ], + "x-ms-enum": { + "name": "clusterTypes", + "modelAsString": false + } + }, + "supportedScopes": { + "readOnly": true, + "type": "object", + "description": "Extension scopes", + "$ref": "#/definitions/SupportedScopes" + } + } + }, + "ExtensionVersionList": { + "description": "List versions for an Extension", + "type": "object", + "properties": { + "versions": { + "description": "Versions available for this Extension Type", + "type": "array", + "items": { + "type": "object", + "properties": { + "releaseTrain": { + "description": "The release train for this Extension Type", + "type": "string" + }, + "versions": { + "type": "array", + "description": "Versions available for this Extension Type and release train", + "items": { + "type": "string" + } + } + } + } + }, + "nextLink": { + "description": "The link to fetch the next page of Extension Types", + "type": "string" + }, + "systemData": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData", + "readOnly": true, + "description": "Metadata pertaining to creation and last modification of the resource." + } + } + }, + "SupportedScopes": { + "type": "object", + "description": "Extension scopes", + "properties": { + "defaultScope": { + "type": "string", + "description": "Default extension scopes: cluster or namespace" + }, + "clusterScopeSettings": { + "description": "Scope settings", + "$ref": "#/definitions/ClusterScopeSettings" + } + } + }, + "ClusterScopeSettings": { + "type": "object", + "description": "Extension scope settings", + "properties": { + "properties": { + "type": "object", + "x-ms-client-flatten": true, + "description": "Extension scope settings", + "properties": { + "allowMultipleInstances": { + "type": "boolean", + "description": "Describes if multiple instances of the extension are allowed" + }, + "defaultReleaseNamespace": { + "type": "string", + "description": "Default extension release namespace" + } + } + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ] + } + }, + "parameters": { + "ClusterRpParameter": { + "name": "clusterRp", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "Microsoft.ContainerService", + "Microsoft.Kubernetes" + ], + "description": "The Kubernetes cluster RP - either Microsoft.ContainerService (for AKS clusters) or Microsoft.Kubernetes (for OnPrem K8S clusters).", + "x-ms-parameter-location": "method" + }, + "ClusterTypeParameter": { + "name": "clusterType", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "managedClusters", + "connectedClusters" + ], + "description": "The Kubernetes cluster resource name - either managedClusters (for AKS clusters) or connectedClusters (for OnPrem K8S clusters).", + "x-ms-parameter-location": "method" + }, + "ClusterNameParameter": { + "name": "clusterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the kubernetes cluster.", + "x-ms-parameter-location": "method" + }, + "ExtensionLocationParameter": { + "name": "location", + "in": "path", + "description": "extension location", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ExtensionTypeNameParameter": { + "name": "extensionTypeName", + "in": "path", + "required": true, + "type": "string", + "description": "Extension type name", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/extensions.json b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/extensions.json new file mode 100644 index 000000000000..3e6105278d57 --- /dev/null +++ b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/extensions.json @@ -0,0 +1,659 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-05-01-preview", + "title": "ExtensionsClient", + "description": "Use these APIs to create extension resources through ARM, for Kubernetes Clusters." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{clusterRp}/{clusterResourceName}/{clusterName}/providers/Microsoft.KubernetesConfiguration/extensions/{extensionName}": { + "put": { + "tags": [ + "Extensions", + "ClusterExtensions" + ], + "description": "Create a new Kubernetes Cluster Extension.", + "operationId": "Extensions_Create", + "x-ms-examples": { + "Create Extension": { + "$ref": "./examples/CreateExtension.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/2021-05-01-preview/definitions.json#/parameters/ClusterRpParameter" + }, + { + "$ref": "../../common/2021-05-01-preview/definitions.json#/parameters/ClusterResourceNameParameter" + }, + { + "$ref": "../../common/2021-05-01-preview/definitions.json#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/ExtensionNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "extension", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Extension" + }, + "description": "Properties necessary to Create an Extension." + } + ], + "responses": { + "201": { + "description": "Request received successfully.", + "schema": { + "$ref": "#/definitions/Extension" + } + }, + "200": { + "description": "Request received successfully for an existing resource.", + "schema": { + "$ref": "#/definitions/Extension" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "Extensions", + "ClusterExtensions" + ], + "description": "Gets Kubernetes Cluster Extension.", + "operationId": "Extensions_Get", + "x-ms-examples": { + "Get Extension": { + "$ref": "./examples/GetExtension.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/2021-05-01-preview/definitions.json#/parameters/ClusterRpParameter" + }, + { + "$ref": "../../common/2021-05-01-preview/definitions.json#/parameters/ClusterResourceNameParameter" + }, + { + "$ref": "../../common/2021-05-01-preview/definitions.json#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/ExtensionNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Extension" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Extensions", + "ClusterExtensions" + ], + "description": "Delete a Kubernetes Cluster Extension. This will cause the Agent to Uninstall the extension from the cluster.", + "operationId": "Extensions_Delete", + "x-ms-examples": { + "Delete Extension": { + "$ref": "./examples/DeleteExtension.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/2021-05-01-preview/definitions.json#/parameters/ClusterRpParameter" + }, + { + "$ref": "../../common/2021-05-01-preview/definitions.json#/parameters/ClusterResourceNameParameter" + }, + { + "$ref": "../../common/2021-05-01-preview/definitions.json#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/ExtensionNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "forceDelete", + "in": "query", + "description": "Delete the extension resource in Azure - not the normal asynchronous delete.", + "type": "boolean" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted. The request has been accepted for processing." + }, + "204": { + "description": "No Content. The request has been accepted but the extension was not found." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{clusterRp}/{clusterResourceName}/{clusterName}/providers/Microsoft.KubernetesConfiguration/extensions": { + "get": { + "tags": [ + "Extensions", + "ClusterExtensions" + ], + "description": "List all Extensions in the cluster.", + "operationId": "Extensions_List", + "x-ms-examples": { + "List Extensions": { + "$ref": "./examples/ListExtensions.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/2021-05-01-preview/definitions.json#/parameters/ClusterRpParameter" + }, + { + "$ref": "../../common/2021-05-01-preview/definitions.json#/parameters/ClusterResourceNameParameter" + }, + { + "$ref": "../../common/2021-05-01-preview/definitions.json#/parameters/ClusterNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ExtensionsList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{clusterRp}/{clusterResourceName}/{clusterName}/providers/Microsoft.KubernetesConfiguration/operations": { + "get": { + "tags": [ + "Operations in a Cluster" + ], + "operationId": "OperationStatus_List", + "description": "List Async Operations, currently in progress, in a cluster", + "x-ms-examples": { + "AsyncOperationStatus List": { + "$ref": "./examples/ListAsyncOperationStatus.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/2021-05-01-preview/definitions.json#/parameters/ClusterRpParameter" + }, + { + "$ref": "../../common/2021-05-01-preview/definitions.json#/parameters/ClusterResourceNameParameter" + }, + { + "$ref": "../../common/2021-05-01-preview/definitions.json#/parameters/ClusterNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Operations in a cluster", + "schema": { + "$ref": "#/definitions/OperationStatusList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{clusterRp}/{clusterResourceName}/{clusterName}/providers/Microsoft.KubernetesConfiguration/extensions/{extensionName}/operations/{operationId}": { + "get": { + "tags": [ + "Operation Status" + ], + "operationId": "OperationStatus_Get", + "description": "Get Async Operation status", + "x-ms-examples": { + "AsyncOperationStatus Get": { + "$ref": "./examples/GetAsyncOperationStatus.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/2021-05-01-preview/definitions.json#/parameters/ClusterRpParameter" + }, + { + "$ref": "../../common/2021-05-01-preview/definitions.json#/parameters/ClusterResourceNameParameter" + }, + { + "$ref": "../../common/2021-05-01-preview/definitions.json#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/ExtensionNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "operationId", + "in": "path", + "description": "operation Id", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Operation Status", + "schema": { + "$ref": "#/definitions/OperationStatusResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "ScopeCluster": { + "description": "Specifies that the scope of the extension is Cluster", + "type": "object", + "properties": { + "releaseNamespace": { + "description": "Namespace where the extension Release must be placed, for a Cluster scoped extension. If this namespace does not exist, it will be created", + "type": "string" + } + } + }, + "ScopeNamespace": { + "description": "Specifies that the scope of the extension is Namespace", + "type": "object", + "properties": { + "targetNamespace": { + "description": "Namespace where the extension will be created for an Namespace scoped extension. If this namespace does not exist, it will be created", + "type": "string" + } + } + }, + "Scope": { + "description": "Scope of the extension. It can be either Cluster or Namespace; but not both.", + "type": "object", + "properties": { + "cluster": { + "type": "object", + "x-nullable": true, + "description": "Specifies that the scope of the extension is Cluster", + "$ref": "#/definitions/ScopeCluster" + }, + "namespace": { + "type": "object", + "x-nullable": true, + "description": "Specifies that the scope of the extension is Namespace", + "$ref": "#/definitions/ScopeNamespace" + } + } + }, + "provisioningState": { + "type": "string", + "description": "The provisioning state of the extension resource.", + "enum": [ + "Succeeded", + "Failed", + "Canceled", + "Creating", + "Updating", + "Deleting" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "ExtensionStatus": { + "description": "Status from the extension.", + "type": "object", + "readOnly": true, + "properties": { + "code": { + "type": "string", + "description": "Status code provided by the Extension" + }, + "displayStatus": { + "type": "string", + "description": "Short description of status of the extension." + }, + "level": { + "type": "string", + "description": "Level of the status.", + "enum": [ + "Error", + "Warning", + "Information" + ], + "default": "Information", + "x-ms-enum": { + "name": "LevelType", + "modelAsString": true + } + }, + "message": { + "type": "string", + "description": "Detailed message of the status from the Extension." + }, + "time": { + "type": "string", + "description": "DateLiteral (per ISO8601) noting the time of installation status." + } + } + }, + "Extension": { + "description": "The Extension object.", + "properties": { + "properties": { + "type": "object", + "x-ms-client-flatten": true, + "description": "Properties of an Extension resource", + "properties": { + "extensionType": { + "description": "Type of the Extension, of which this resource is an instance of. It must be one of the Extension Types registered with Microsoft.KubernetesConfiguration by the Extension publisher.", + "type": "string" + }, + "autoUpgradeMinorVersion": { + "description": "Flag to note if this extension participates in auto upgrade of minor version, or not.", + "type": "boolean", + "default": true + }, + "releaseTrain": { + "description": "ReleaseTrain this extension participates in for auto-upgrade (e.g. Stable, Preview, etc.) - only if autoUpgradeMinorVersion is 'true'.", + "type": "string", + "default": "Stable" + }, + "version": { + "description": "Version of the extension for this extension, if it is 'pinned' to a specific version. autoUpgradeMinorVersion must be 'false'.", + "type": "string" + }, + "scope": { + "description": "Scope at which the extension is installed.", + "$ref": "#/definitions/Scope" + }, + "configurationSettings": { + "description": "Configuration settings, as name-value pairs for configuring this extension.", + "type": "object", + "x-nullable": true, + "additionalProperties": { + "type": "string" + } + }, + "configurationProtectedSettings": { + "description": "Configuration settings that are sensitive, as name-value pairs for configuring this extension.", + "type": "object", + "x-nullable": true, + "x-ms-secret": true, + "additionalProperties": { + "type": "string" + } + }, + "provisioningState": { + "description": "Status of installation of this extension.", + "type": "string", + "readOnly": true, + "$ref": "#/definitions/provisioningState" + }, + "statuses": { + "description": "Status from this extension.", + "type": "array", + "x-nullable": true, + "items": { + "$ref": "#/definitions/ExtensionStatus" + } + }, + "errorInfo": { + "description": "Error information from the Agent - e.g. errors during installation.", + "type": "object", + "readOnly": true, + "x-nullable": true, + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorDetail" + }, + "customLocationSettings": { + "description": "Custom Location settings properties.", + "type": "object", + "readOnly": true, + "x-nullable": true, + "additionalProperties": { + "type": "string" + } + }, + "packageUri": { + "description": "Uri of the Helm package", + "type": "string", + "readOnly": true, + "x-nullable": true + } + } + }, + "identity": { + "description": "Identity of the Extension resource", + "x-nullable": true, + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/Identity" + }, + "systemData": { + "description": "Top level metadata https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/common-api-contracts.md#system-metadata-for-all-azure-resources", + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData" + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ] + }, + "ExtensionsList": { + "description": "Result of the request to list Extensions. It contains a list of Extension objects and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Extension" + }, + "description": "List of Extensions within a Kubernetes cluster." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "URL to get the next set of extension objects, if any." + } + } + }, + "OperationStatusResult": { + "description": "The current status of an async operation.", + "type": "object", + "required": [ + "status" + ], + "properties": { + "id": { + "description": "Fully qualified ID for the async operation.", + "type": "string" + }, + "name": { + "description": "Name of the async operation.", + "type": "string" + }, + "status": { + "description": "Operation status.", + "type": "string" + }, + "properties": { + "description": "Additional information, if available.", + "type": "object", + "x-nullable": true, + "additionalProperties": { + "type": "string" + } + }, + "error": { + "description": "If present, details of the operation error.", + "type": "object", + "readOnly": true, + "x-nullable": true, + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorDetail" + } + } + }, + "OperationStatusList": { + "description": "The async operations in progress, in the cluster.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/OperationStatusResult" + }, + "description": "List of async operations in progress, in the cluster." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "URL to get the next set of Operation Result objects, if any." + } + } + } + }, + "parameters": { + "ExtensionNameParameter": { + "name": "extensionName", + "in": "path", + "description": "Name of the Extension.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/kubernetesconfiguration.json b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/kubernetesconfiguration.json new file mode 100644 index 000000000000..66cc021c757f --- /dev/null +++ b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/kubernetesconfiguration.json @@ -0,0 +1,566 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-05-01-preview", + "title": "SourceControlConfigurationClient", + "description": "Use these APIs to create Source Control Configuration resources through ARM, for Kubernetes Clusters." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{clusterRp}/{clusterResourceName}/{clusterName}/providers/Microsoft.KubernetesConfiguration/sourceControlConfigurations/{sourceControlConfigurationName}": { + "get": { + "tags": [ + "SourceControlConfiguration" + ], + "description": "Gets details of the Source Control Configuration.", + "operationId": "SourceControlConfigurations_Get", + "x-ms-examples": { + "Get Source Control Configuration": { + "$ref": "./examples/GetSourceControlConfiguration.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/2021-05-01-preview/definitions.json#/parameters/ClusterRpParameter" + }, + { + "$ref": "../../common/2021-05-01-preview/definitions.json#/parameters/ClusterResourceNameParameter" + }, + { + "$ref": "../../common/2021-05-01-preview/definitions.json#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/SourceControlConfigurationNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SourceControlConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "SourceControlConfiguration" + ], + "description": "Create a new Kubernetes Source Control Configuration.", + "operationId": "SourceControlConfigurations_CreateOrUpdate", + "x-ms-examples": { + "Create Source Control Configuration": { + "$ref": "./examples/CreateSourceControlConfiguration.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/2021-05-01-preview/definitions.json#/parameters/ClusterRpParameter" + }, + { + "$ref": "../../common/2021-05-01-preview/definitions.json#/parameters/ClusterResourceNameParameter" + }, + { + "$ref": "../../common/2021-05-01-preview/definitions.json#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/SourceControlConfigurationNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "sourceControlConfiguration", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SourceControlConfiguration" + }, + "description": "Properties necessary to Create KubernetesConfiguration." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SourceControlConfiguration" + } + }, + "201": { + "description": "Created.", + "schema": { + "$ref": "#/definitions/SourceControlConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "SourceControlConfiguration" + ], + "description": "This will delete the YAML file used to set up the Source control configuration, thus stopping future sync from the source repo.", + "operationId": "SourceControlConfigurations_Delete", + "x-ms-examples": { + "Delete Source Control Configuration": { + "$ref": "./examples/DeleteSourceControlConfiguration.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/2021-05-01-preview/definitions.json#/parameters/ClusterRpParameter" + }, + { + "$ref": "../../common/2021-05-01-preview/definitions.json#/parameters/ClusterResourceNameParameter" + }, + { + "$ref": "../../common/2021-05-01-preview/definitions.json#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/SourceControlConfigurationNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has been completed successfully." + }, + "204": { + "description": "No Content. The request has been accepted but the configuration was not found." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{clusterRp}/{clusterResourceName}/{clusterName}/providers/Microsoft.KubernetesConfiguration/sourceControlConfigurations": { + "get": { + "tags": [ + "SourceControlConfiguration" + ], + "description": "List all Source Control Configurations.", + "operationId": "SourceControlConfigurations_List", + "x-ms-examples": { + "List Source Control Configuration": { + "$ref": "./examples/ListSourceControlConfiguration.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/2021-05-01-preview/definitions.json#/parameters/ClusterRpParameter" + }, + { + "$ref": "../../common/2021-05-01-preview/definitions.json#/parameters/ClusterResourceNameParameter" + }, + { + "$ref": "../../common/2021-05-01-preview/definitions.json#/parameters/ClusterNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SourceControlConfigurationList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.KubernetesConfiguration/operations": { + "get": { + "tags": [ + "Operations" + ], + "operationId": "Operations_List", + "x-ms-examples": { + "BatchAccountDelete": { + "$ref": "./examples/OperationsList.json" + } + }, + "description": "List all the available operations the KubernetesConfiguration resource provider supports.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/ResourceProviderOperationList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "ComplianceStatus": { + "description": "Compliance Status details", + "type": "object", + "readOnly": true, + "properties": { + "complianceState": { + "description": "The compliance state of the configuration.", + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ComplianceStateType", + "modelAsString": true + }, + "enum": [ + "Pending", + "Compliant", + "Noncompliant", + "Installed", + "Failed" + ] + }, + "lastConfigApplied": { + "description": "Datetime the configuration was last applied.", + "type": "string", + "format": "date-time" + }, + "message": { + "description": "Message from when the configuration was applied.", + "type": "string" + }, + "messageLevel": { + "description": "Level of the message.", + "type": "string", + "enum": [ + "Error", + "Warning", + "Information" + ], + "x-ms-enum": { + "name": "MessageLevelType", + "modelAsString": true + } + } + } + }, + "ChartVersion": { + "description": "Version of the operator Helm chart.", + "type": "string" + }, + "ChartValues": { + "description": "Values override for the operator Helm chart.", + "type": "string" + }, + "HelmOperatorProperties": { + "description": "Properties for Helm operator.", + "type": "object", + "properties": { + "chartVersion": { + "description": "Version of the operator Helm chart.", + "$ref": "#/definitions/ChartVersion" + }, + "chartValues": { + "description": "Values override for the operator Helm chart.", + "$ref": "#/definitions/ChartValues" + } + } + }, + "ConfigurationProtectedSettings": { + "description": "Name-value pairs of protected configuration settings for the configuration", + "additionalProperties": { + "type": "string" + } + }, + "OperatorTypeDefinition": { + "description": "Type of the operator", + "type": "string", + "enum": [ + "Flux" + ], + "x-ms-enum": { + "name": "OperatorType", + "modelAsString": true + } + }, + "OperatorScopeDefinition": { + "description": "Scope at which the operator will be installed.", + "type": "string", + "enum": [ + "cluster", + "namespace" + ], + "default": "cluster", + "x-ms-enum": { + "name": "OperatorScopeType", + "modelAsString": true + } + }, + "SourceControlConfiguration": { + "description": "The SourceControl Configuration object returned in Get & Put response.", + "properties": { + "properties": { + "type": "object", + "x-ms-client-flatten": true, + "description": "Properties to create a Source Control Configuration resource", + "properties": { + "repositoryUrl": { + "type": "string", + "description": "Url of the SourceControl Repository." + }, + "operatorNamespace": { + "description": "The namespace to which this operator is installed to. Maximum of 253 lower case alphanumeric characters, hyphen and period only.", + "type": "string", + "default": "default" + }, + "operatorInstanceName": { + "description": "Instance name of the operator - identifying the specific configuration.", + "type": "string" + }, + "operatorType": { + "description": "Type of the operator", + "$ref": "#/definitions/OperatorTypeDefinition" + }, + "operatorParams": { + "description": "Any Parameters for the Operator instance in string format.", + "type": "string" + }, + "configurationProtectedSettings": { + "description": "Name-value pairs of protected configuration settings for the configuration", + "type": "object", + "$ref": "#/definitions/ConfigurationProtectedSettings" + }, + "operatorScope": { + "description": "Scope at which the operator will be installed.", + "$ref": "#/definitions/OperatorScopeDefinition" + }, + "repositoryPublicKey": { + "description": "Public Key associated with this SourceControl configuration (either generated within the cluster or provided by the user).", + "type": "string", + "readOnly": true + }, + "sshKnownHostsContents": { + "description": "Base64-encoded known_hosts contents containing public SSH keys required to access private Git instances", + "type": "string" + }, + "enableHelmOperator": { + "description": "Option to enable Helm Operator for this git configuration.", + "type": "boolean" + }, + "helmOperatorProperties": { + "description": "Properties for Helm operator.", + "type": "object", + "$ref": "#/definitions/HelmOperatorProperties" + }, + "provisioningState": { + "type": "string", + "description": "The provisioning state of the resource provider.", + "readOnly": true, + "x-ms-enum": { + "modelAsString": true, + "name": "ProvisioningStateType" + }, + "enum": [ + "Accepted", + "Deleting", + "Running", + "Succeeded", + "Failed" + ] + }, + "complianceStatus": { + "type": "object", + "description": "Compliance Status of the Configuration", + "readOnly": true, + "$ref": "#/definitions/ComplianceStatus" + } + } + }, + "systemData": { + "description": "Top level metadata https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/common-api-contracts.md#system-metadata-for-all-azure-resources", + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData" + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ] + }, + "SourceControlConfigurationList": { + "description": "Result of the request to list Source Control Configurations. It contains a list of SourceControlConfiguration objects and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/SourceControlConfiguration" + }, + "description": "List of Source Control Configurations within a Kubernetes cluster." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "URL to get the next set of configuration objects, if any." + } + } + }, + "ResourceProviderOperation": { + "description": "Supported operation of this resource provider.", + "readOnly": true, + "properties": { + "name": { + "description": "Operation name, in format of {provider}/{resource}/{operation}", + "type": "string" + }, + "display": { + "description": "Display metadata associated with the operation.", + "properties": { + "provider": { + "description": "Resource provider: Microsoft KubernetesConfiguration.", + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed.", + "type": "string" + }, + "operation": { + "description": "Type of operation: get, read, delete, etc.", + "type": "string" + }, + "description": { + "description": "Description of this operation.", + "type": "string" + } + } + }, + "origin": { + "description": "The intended executor of the operation;governs the display of the operation in the RBAC UX and the audit logs UX", + "type": "string" + }, + "isDataAction": { + "description": "The flag that indicates whether the operation applies to data plane.", + "type": "boolean", + "readOnly": true + } + } + }, + "ResourceProviderOperationList": { + "description": "Result of the request to list operations.", + "readOnly": true, + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceProviderOperation" + }, + "description": "List of operations supported by this resource provider." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "URL to the next set of results, if any." + } + } + } + }, + "parameters": { + "SourceControlConfigurationNameParameter": { + "name": "sourceControlConfigurationName", + "in": "path", + "description": "Name of the Source Control Configuration.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/stable/2021-03-01/kubernetesconfiguration.json b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/stable/2021-03-01/kubernetesconfiguration.json index e74239719a43..77b40eba2add 100644 --- a/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/stable/2021-03-01/kubernetesconfiguration.json +++ b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/stable/2021-03-01/kubernetesconfiguration.json @@ -66,7 +66,7 @@ "$ref": "#/parameters/SourceControlConfigurationNameParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -115,7 +115,7 @@ "$ref": "#/parameters/SourceControlConfigurationNameParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" }, { "name": "sourceControlConfiguration", @@ -179,7 +179,7 @@ "$ref": "#/parameters/SourceControlConfigurationNameParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -228,7 +228,7 @@ "$ref": "#/parameters/ClusterNameParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -264,7 +264,7 @@ "description": "List all the available operations the KubernetesConfiguration resource provider supports.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -635,13 +635,6 @@ "description": "The name of the kubernetes cluster.", "x-ms-parameter-location": "method" }, - "ApiVersionParameter": { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to be used with the HTTP request." - }, "SourceControlConfigurationNameParameter": { "name": "sourceControlConfigurationName", "in": "path", diff --git a/specification/kubernetesconfiguration/resource-manager/readme.azureresourceschema.md b/specification/kubernetesconfiguration/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 91b45b331a14..000000000000 --- a/specification/kubernetesconfiguration/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,48 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-kubernetesconfiguration-2021-03-01 - - tag: schema-kubernetesconfiguration-2020-10-01-preview - - tag: schema-kubernetesconfiguration-2019-11-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-kubernetesconfiguration-2021-03-01 and azureresourceschema - -``` yaml $(tag) == 'schema-kubernetesconfiguration-2021-03-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.KubernetesConfiguration/stable/2021-03-01/kubernetesconfiguration.json - -``` - -### Tag: schema-kubernetesconfiguration-2020-10-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-kubernetesconfiguration-2020-10-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.KubernetesConfiguration/preview/2020-10-01-preview/kubernetesconfiguration.json - -``` - -### Tag: schema-kubernetesconfiguration-2019-11-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-kubernetesconfiguration-2019-11-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.KubernetesConfiguration/preview/2019-11-01-preview/kubernetesconfiguration.json - -``` diff --git a/specification/kubernetesconfiguration/resource-manager/readme.go.md b/specification/kubernetesconfiguration/resource-manager/readme.go.md index 6e0ee087d1ce..d24dd70dc6ba 100644 --- a/specification/kubernetesconfiguration/resource-manager/readme.go.md +++ b/specification/kubernetesconfiguration/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ```yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: kubernetesconfiguration clear-output-folder: true ``` @@ -13,11 +13,22 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-preview-2021-05 - tag: package-2021-03 - tag: package-2019-11-01-preview - tag: package-2020-07-01-preview ``` +### Tag: package-preview-2021-05 and go + +These settings apply only when `--tag=package-preview-2021-05 --go` is specified on the command line. +Please also specify `--go-sdks-folder=`. + +```yaml $(tag) == 'package-preview-2021-05' && $(go) +namespace: kubernetesconfiguration +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2021-05-01-preview/$(namespace) +``` + ### Tag: package-2021-03 and go These settings apply only when `--tag=package-2021-03 --go` is specified on the command line. @@ -26,6 +37,9 @@ Please also specify `--go-sdks-folder=`. - ```yaml $(tag) == 'package-2020-07-01-preview' && $(go) namespace: kubernetesconfiguration output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2020-07-01-preview/$(namespace) -``` diff --git a/specification/kubernetesconfiguration/resource-manager/readme.java.md b/specification/kubernetesconfiguration/resource-manager/readme.java.md index 8e476cd0f2fb..8a36719a3c7d 100644 --- a/specification/kubernetesconfiguration/resource-manager/readme.java.md +++ b/specification/kubernetesconfiguration/resource-manager/readme.java.md @@ -16,19 +16,34 @@ output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-kubernetesconfigura ``` yaml $(java) && $(multiapi) batch: - - tag: package-2019-11-01-preview + - tag: package-2021-05-01-preview + - tag: package-2021-03-01 - tag: package-2020-07-01-preview + - tag: package-2019-11-01-preview ``` -### Tag: package-2019-11-01-preview and java +### Tag: package-2021-05-01-preview and java -These settings apply only when `--tag=package-2019-11-01-preview --java` is specified on the command line. +These settings apply only when `--tag=package-2021-05-01-preview --java` is specified on the command line. Please also specify `--azure-libraries-for-java-folder=`. -``` yaml $(tag) == 'package-2019-11-01-preview' && $(java) && $(multiapi) +``` yaml $(tag) == 'package-2021-05-01-preview' && $(java) && $(multiapi) java: - namespace: com.microsoft.azure.management.kubernetesconfiguration.v2019_11_01_preview - output-folder: $(azure-libraries-for-java-folder)/sdk/kubernetesconfiguration/mgmt-v2019_11_01_preview + namespace: com.microsoft.azure.management.kubernetesconfiguration.v2021_05_01_preview + output-folder: $(azure-libraries-for-java-folder)/sdk/kubernetesconfiguration/mgmt-v2021_05_01_preview + regenerate-manager: true + generate-interface: true +``` + +### Tag: package-2021-03-01 and java + +These settings apply only when `--tag=package-2021-03-01 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-2021-03-01' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.kubernetesconfiguration.v2021_03_01 + output-folder: $(azure-libraries-for-java-folder)/sdk/kubernetesconfiguration/mgmt_v2021_03_01 regenerate-manager: true generate-interface: true ``` @@ -44,4 +59,17 @@ java: output-folder: $(azure-libraries-for-java-folder)/sdk/kubernetesconfiguration/mgmt-v2020_07_01_preview regenerate-manager: true generate-interface: true -``` \ No newline at end of file +``` + +### Tag: package-2019-11-01-preview and java + +These settings apply only when `--tag=package-2019-11-01-preview --java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-2019-11-01-preview' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.kubernetesconfiguration.v2019_11_01_preview + output-folder: $(azure-libraries-for-java-folder)/sdk/kubernetesconfiguration/mgmt-v2019_11_01_preview + regenerate-manager: true + generate-interface: true +``` diff --git a/specification/kubernetesconfiguration/resource-manager/readme.md b/specification/kubernetesconfiguration/resource-manager/readme.md index 17ddc1e2c5ec..8d33b069ead1 100644 --- a/specification/kubernetesconfiguration/resource-manager/readme.md +++ b/specification/kubernetesconfiguration/resource-manager/readme.md @@ -28,18 +28,29 @@ These are the global settings for the KubernetesConfiguration. title: SourceControlConfigurationClient description: KubernetesConfiguration Client openapi-type: arm -tag: package-2021-03 +tag: package-preview-2021-05 ``` +### Tag: package-preview-2021-05 + +These settings apply only when `--tag=package-preview-2021-05` is specified on the command line. + +```yaml $(tag) == 'package-preview-2021-05' +input-file: + - Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/extensions.json + - Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/extensionTypes.json + - Microsoft.KubernetesConfiguration/preview/2021-05-01-preview/kubernetesconfiguration.json +``` ### Tag: package-2021-03 These settings apply only when `--tag=package-2021-03` is specified on the command line. -```yaml $(tag) == 'package-2021-03' +``` yaml $(tag) == 'package-2021-03' input-file: - Microsoft.KubernetesConfiguration/stable/2021-03-01/kubernetesconfiguration.json ``` + ### Tag: package-preview-2020-10 These settings apply only when `--tag=package-preview-2020-10` is specified on the command line. @@ -53,13 +64,12 @@ input-file: These settings apply only when `--tag=package-2020-07-01-preview` is specified on the command line. -```yaml $(tag) == 'package-2020-07-01-preview' +``` yaml $(tag) == 'package-2020-07-01-preview' input-file: - Microsoft.KubernetesConfiguration/preview/2020-07-01-preview/kubernetesconfiguration.json - Microsoft.KubernetesConfiguration/preview/2020-07-01-preview/extensions.json ``` - ### Tag: package-2019-11-01-preview These settings apply only when `--tag=package-2019-11-01-preview` is specified on the command line. @@ -90,7 +100,7 @@ This is not used by Autorest itself. ``` yaml $(swagger-to-sdk) swagger-to-sdk: - repo: azure-powershell - - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-java - repo: azure-sdk-for-go - repo: azure-sdk-for-js @@ -98,11 +108,8 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_kubernetesconfiguration'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js kubernetesconfiguration/resource-manager ``` - ## Go See configuration in [readme.go.md](./readme.go.md) @@ -123,6 +130,3 @@ See configuration in [readme.typescript.md](./readme.typescript.md) See configuration in [readme.csharp.md](./readme.csharp.md) -## AzureResourceSchema - -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) \ No newline at end of file diff --git a/specification/kubernetesconfiguration/resource-manager/readme.python.md b/specification/kubernetesconfiguration/resource-manager/readme.python.md index cc0640133e87..ee6fcd558f05 100644 --- a/specification/kubernetesconfiguration/resource-manager/readme.python.md +++ b/specification/kubernetesconfiguration/resource-manager/readme.python.md @@ -4,24 +4,20 @@ These settings apply only when `--python` is specified on the command line. Please also specify `--python-sdks-folder=`. Use `--python-mode=update` if you already have a setup.py and just want to update the code itself. -```yaml $(python) -python: - python-mode: create - azure-arm: true - license-header: MICROSOFT_MIT_NO_VERSION - payload-flattening-threshold: 2 - namespace: azure.mgmt.kubernetesconfiguration - package-name: azure-mgmt-kubernetesconfiguration - package-version: 0.1.1 - clear-output-folder: true +```yaml $(python) && $(track2) +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +namespace: azure.mgmt.kubernetesconfiguration +package-name: azure-mgmt-kubernetesconfiguration +no-namespace-folders: true +package-version: 1.0.0b1 +clear-output-folder: true ``` -``` yaml $(python) && $(python-mode) == 'update' -python: - no-namespace-folders: true - output-folder: $(python-sdks-folder)/kubernetesconfiguration/azure-mgmt-kubernetesconfiguration/azure/mgmt/kubernetesconfiguration +``` yaml $(python) && $(python-mode) == 'update' && $(track2) +no-namespace-folders: true +output-folder: $(python-sdks-folder)/kubernetesconfiguration/azure-mgmt-kubernetesconfiguration/azure/mgmt/kubernetesconfiguration ``` -``` yaml $(python) && $(python-mode) == 'create' -python: - basic-setup-py: true - output-folder: $(python-sdks-folder)/kubernetesconfiguration/azure-mgmt-kubernetesconfiguration +``` yaml $(python) && $(python-mode) == 'create' && $(track2) +basic-setup-py: true +output-folder: $(python-sdks-folder)/kubernetesconfiguration/azure-mgmt-kubernetesconfiguration ``` \ No newline at end of file diff --git a/specification/kubernetesconfiguration/resource-manager/readme.ruby.md b/specification/kubernetesconfiguration/resource-manager/readme.ruby.md index 74936bd89980..9360ba1303da 100644 --- a/specification/kubernetesconfiguration/resource-manager/readme.ruby.md +++ b/specification/kubernetesconfiguration/resource-manager/readme.ruby.md @@ -12,8 +12,30 @@ azure-arm: true ``` yaml $(ruby) && $(multiapi) batch: - - tag: package-2019-11-01-preview' + - tag: package-2021-05-01-preview' + - tag: package-2021-03-01' - tag: package-2020-07-01-preview' + - tag: package-2019-11-01-preview' +``` + +### Tag: package-2021-05-01-preview and ruby + +These settings apply only when `--tag=package-2021-05-01-preview --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +```yaml $(tag) == 'package-2021-05-01-preview' && $(ruby) +namespace: "Azure::KubernetesConfiguration::Mgmt::V2021_05_01_preview" +output-folder: $(ruby-sdks-folder)/management/azure_mgmt_kubernetesconfiguration/lib +``` + +### Tag: package-2021-03-01 and ruby + +These settings apply only when `--tag=package-2021-03-01 --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +```yaml $(tag) == 'package-2021-03-01' && $(ruby) +namespace: "Azure::KubernetesConfiguration::Mgmt::V2021_03_01" +output-folder: $(ruby-sdks-folder)/management/azure_mgmt_kubernetesconfiguration/lib ``` ### Tag: package-2019-11-01-preview and ruby diff --git a/specification/labservices/resource-manager/readme.azureresourceschema.md b/specification/labservices/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 50ff2afcfdf7..000000000000 --- a/specification/labservices/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,24 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-labservices-2018-10-15 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-labservices-2018-10-15 and azureresourceschema - -``` yaml $(tag) == 'schema-labservices-2018-10-15' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.LabServices/stable/2018-10-15/ML.json - -``` diff --git a/specification/labservices/resource-manager/readme.go.md b/specification/labservices/resource-manager/readme.go.md index b760fe2f8a35..526e93ce3e54 100644 --- a/specification/labservices/resource-manager/readme.go.md +++ b/specification/labservices/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: labservices clear-output-folder: true ``` diff --git a/specification/labservices/resource-manager/readme.md b/specification/labservices/resource-manager/readme.md index 95fe61bb6daa..5bd1a1501470 100644 --- a/specification/labservices/resource-manager/readme.md +++ b/specification/labservices/resource-manager/readme.md @@ -52,6 +52,7 @@ This is not used by Autorest itself. swagger-to-sdk: - repo: azure-sdk-for-net - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-java - repo: azure-sdk-for-go - repo: azure-sdk-for-js @@ -60,8 +61,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_labservices'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js labservices/resource-manager ``` @@ -81,46 +80,7 @@ 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) && !$(track2) -python-mode: create -python: - azure-arm: true - license-header: MICROSOFT_MIT_NO_VERSION - payload-flattening-threshold: 2 - namespace: azure.mgmt.labservices - package-name: azure-mgmt-labservices - clear-output-folder: true -``` -``` yaml $(python) && $(track2) -python-mode: create -azure-arm: true -license-header: MICROSOFT_MIT_NO_VERSION -namespace: azure.mgmt.labservices -package-name: azure-mgmt-labservices -clear-output-folder: true -``` -``` yaml $(python) && $(python-mode) == 'update' && !$(track2) -python: - no-namespace-folders: true - output-folder: $(python-sdks-folder)/labservices/azure-mgmt-labservices/azure/mgmt/labservices -``` -``` yaml $(python) && $(python-mode) == 'create' && !$(track2) -python: - basic-setup-py: true - output-folder: $(python-sdks-folder)/labservices/azure-mgmt-labservices -``` -``` yaml $(python) && $(python-mode) == 'update' && $(track2) -no-namespace-folders: true -output-folder: $(python-sdks-folder)/labservices/azure-mgmt-labservices/azure/mgmt/labservices -``` -``` yaml $(python) && $(python-mode) == 'create' && $(track2) -basic-setup-py: true -output-folder: $(python-sdks-folder)/labservices/azure-mgmt-labservices -``` +See configuration in [readme.python.md](./readme.python.md) ## Go @@ -163,7 +123,5 @@ generate-interface: true -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/labservices/resource-manager/readme.python.md b/specification/labservices/resource-manager/readme.python.md new file mode 100644 index 000000000000..6b206e0b7f9f --- /dev/null +++ b/specification/labservices/resource-manager/readme.python.md @@ -0,0 +1,44 @@ +## 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) && !$(track2) +python-mode: create +python: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 2 + namespace: azure.mgmt.labservices + package-name: azure-mgmt-labservices + package-version: 1.0.0b1 + clear-output-folder: true +``` +``` yaml $(python) && $(track2) +python-mode: create +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +namespace: azure.mgmt.labservices +package-name: azure-mgmt-labservices +package-version: 1.0.0b1 +clear-output-folder: true +``` +``` yaml $(python) && $(python-mode) == 'update' && !$(track2) +python: + no-namespace-folders: true + output-folder: $(python-sdks-folder)/labservices/azure-mgmt-labservices/azure/mgmt/labservices +``` +``` yaml $(python) && $(python-mode) == 'create' && !$(track2) +python: + basic-setup-py: true + output-folder: $(python-sdks-folder)/labservices/azure-mgmt-labservices +``` +``` yaml $(python) && $(python-mode) == 'update' && $(track2) +no-namespace-folders: true +output-folder: $(python-sdks-folder)/labservices/azure-mgmt-labservices/azure/mgmt/labservices +``` +``` yaml $(python) && $(python-mode) == 'create' && $(track2) +basic-setup-py: true +output-folder: $(python-sdks-folder)/labservices/azure-mgmt-labservices +``` diff --git a/specification/logic/resource-manager/readme.azureresourceschema.md b/specification/logic/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 409ee65ae052..000000000000 --- a/specification/logic/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,72 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-logic-2019-05-01 - - tag: schema-logic-2018-07-01-preview - - tag: schema-logic-2016-06-01 - - tag: schema-logic-2015-08-01-preview - - tag: schema-logic-2015-02-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-logic-2019-05-01 and azureresourceschema - -``` yaml $(tag) == 'schema-logic-2019-05-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Logic/stable/2019-05-01/logic.json - -``` - -### Tag: schema-logic-2018-07-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-logic-2018-07-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Logic/preview/2018-07-01-preview/logic.json - -``` - -### Tag: schema-logic-2016-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-logic-2016-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Logic/stable/2016-06-01/logic.json - -``` - -### Tag: schema-logic-2015-08-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-logic-2015-08-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Logic/preview/2015-08-01-preview/logic.json - -``` - -### Tag: schema-logic-2015-02-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-logic-2015-02-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Logic/preview/2015-02-01-preview/logic.json - -``` diff --git a/specification/logic/resource-manager/readme.go.md b/specification/logic/resource-manager/readme.go.md index 443c49c31735..3111a2cd00d3 100644 --- a/specification/logic/resource-manager/readme.go.md +++ b/specification/logic/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: logic clear-output-folder: true ``` diff --git a/specification/logic/resource-manager/readme.md b/specification/logic/resource-manager/readme.md index fbf1a3f1b55b..49d696dc92cc 100644 --- a/specification/logic/resource-manager/readme.md +++ b/specification/logic/resource-manager/readme.md @@ -137,8 +137,6 @@ swagger-to-sdk: - bundle install && rake arm:regen_all_profiles['azure_mgmt_logic'] - repo: azure-cli-extensions - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js logic/resource-manager ``` ## C# @@ -248,9 +246,7 @@ regenerate-manager: true generate-interface: true ``` -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) ## Terraform diff --git a/specification/logz/resource-manager/Microsoft.Logz/preview/2020-10-01-preview/examples/MainAccount_VMHosts_List.json b/specification/logz/resource-manager/Microsoft.Logz/preview/2020-10-01-preview/examples/MainAccount_VMHosts_List.json new file mode 100644 index 000000000000..f33ac27f57e6 --- /dev/null +++ b/specification/logz/resource-manager/Microsoft.Logz/preview/2020-10-01-preview/examples/MainAccount_VMHosts_List.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "api-version": "2020-10-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "monitorName": "myMonitor" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/virtual1", + "agentVersion": "1.0.0beta" + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/logz/resource-manager/Microsoft.Logz/preview/2020-10-01-preview/examples/MainAccount_VMHosts_Payload.json b/specification/logz/resource-manager/Microsoft.Logz/preview/2020-10-01-preview/examples/MainAccount_VMHosts_Payload.json new file mode 100644 index 000000000000..d3682689a598 --- /dev/null +++ b/specification/logz/resource-manager/Microsoft.Logz/preview/2020-10-01-preview/examples/MainAccount_VMHosts_Payload.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "api-version": "2020-10-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "monitorName": "myMonitor" + }, + "responses": { + "200": { + "body": { + "apiKey": "00000000-0000-0000-0000-000000000000", + "region": "West US 2" + } + } + } +} diff --git a/specification/logz/resource-manager/Microsoft.Logz/preview/2020-10-01-preview/examples/MainAccount_VMHosts_Update.json b/specification/logz/resource-manager/Microsoft.Logz/preview/2020-10-01-preview/examples/MainAccount_VMHosts_Update.json new file mode 100644 index 000000000000..0555326c83df --- /dev/null +++ b/specification/logz/resource-manager/Microsoft.Logz/preview/2020-10-01-preview/examples/MainAccount_VMHosts_Update.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2020-10-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "monitorName": "myMonitor", + "requestBody": { + "state": "Install", + "vmResources": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/virtual1", + "agentVersion": "1.0.0beta" + } + ] + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/virtual1", + "agentVersion": "1.0.0beta" + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/logz/resource-manager/Microsoft.Logz/preview/2020-10-01-preview/examples/MainAccount_listUserRoles.json b/specification/logz/resource-manager/Microsoft.Logz/preview/2020-10-01-preview/examples/MainAccount_listUserRoles.json new file mode 100644 index 000000000000..d650d24e863b --- /dev/null +++ b/specification/logz/resource-manager/Microsoft.Logz/preview/2020-10-01-preview/examples/MainAccount_listUserRoles.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2020-10-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "monitorName": "myMonitor" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "role": "Admin" + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/logz/resource-manager/Microsoft.Logz/preview/2020-10-01-preview/examples/SubAccount_VMHosts_List.json b/specification/logz/resource-manager/Microsoft.Logz/preview/2020-10-01-preview/examples/SubAccount_VMHosts_List.json new file mode 100644 index 000000000000..8b1aaca97604 --- /dev/null +++ b/specification/logz/resource-manager/Microsoft.Logz/preview/2020-10-01-preview/examples/SubAccount_VMHosts_List.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2020-10-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "monitorName": "myMonitor", + "subAccountName": "SubAccount1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/virtual1", + "agentVersion": "1.0.0beta" + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/logz/resource-manager/Microsoft.Logz/preview/2020-10-01-preview/examples/SubAccount_VMHosts_Payload.json b/specification/logz/resource-manager/Microsoft.Logz/preview/2020-10-01-preview/examples/SubAccount_VMHosts_Payload.json new file mode 100644 index 000000000000..4a3a174da1ab --- /dev/null +++ b/specification/logz/resource-manager/Microsoft.Logz/preview/2020-10-01-preview/examples/SubAccount_VMHosts_Payload.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2020-10-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "monitorName": "myMonitor", + "subAccountName": "SubAccount1" + }, + "responses": { + "200": { + "body": { + "apiKey": "00000000-0000-0000-0000-000000000000", + "region": "West US 2" + } + } + } +} diff --git a/specification/logz/resource-manager/Microsoft.Logz/preview/2020-10-01-preview/examples/SubAccount_VMHosts_Update.json b/specification/logz/resource-manager/Microsoft.Logz/preview/2020-10-01-preview/examples/SubAccount_VMHosts_Update.json new file mode 100644 index 000000000000..163983d11feb --- /dev/null +++ b/specification/logz/resource-manager/Microsoft.Logz/preview/2020-10-01-preview/examples/SubAccount_VMHosts_Update.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2020-10-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "monitorName": "myMonitor", + "subAccountName": "SubAccount1", + "requestBody": { + "state": "Install", + "vmResources": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/virtual1", + "agentVersion": "1.0.0beta" + } + ] + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/virtual1", + "agentVersion": "1.0.0beta" + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/logz/resource-manager/Microsoft.Logz/preview/2020-10-01-preview/logz.json b/specification/logz/resource-manager/Microsoft.Logz/preview/2020-10-01-preview/logz.json index a9fd5750fbd6..22d69541bb72 100644 --- a/specification/logz/resource-manager/Microsoft.Logz/preview/2020-10-01-preview/logz.json +++ b/specification/logz/resource-manager/Microsoft.Logz/preview/2020-10-01-preview/logz.json @@ -1351,6 +1351,368 @@ } } } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Logz/monitors/{monitorName}/accounts/{subAccountName}/vmHostPayload": { + "post": { + "tags": [ + "VM_Host" + ], + "summary": "Returns the payload that needs to be passed as a request for installing Logz.io agent on a VM.", + "operationId": "SubAccount_VMHostPayload", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/MonitorNameParameter" + }, + { + "$ref": "#/parameters/SubAccountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/VMExtensionPayload" + } + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "SubAccount_VMHosts_Payload": { + "$ref": "./examples/SubAccount_VMHosts_Payload.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Logz/monitors/{monitorName}/accounts/{subAccountName}/vmHostUpdate": { + "post": { + "tags": [ + "VM_Host" + ], + "summary": "Sending request to update the collection when Logz.io agent has been installed on a VM for a given monitor.", + "operationId": "SubAccount_ListVmHostUpdate", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/MonitorNameParameter" + }, + { + "$ref": "#/parameters/SubAccountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "body", + "description": "Request body to update the collection for agent installed in the given monitor.", + "schema": { + "$ref": "#/definitions/VMHostUpdateRequest" + } + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/VMResourcesListResponse" + } + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "SubAccount_VMHosts_Update": { + "$ref": "./examples/SubAccount_VMHosts_Update.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Logz/monitors/{monitorName}/accounts/{subAccountName}/listVMHosts": { + "post": { + "tags": [ + "VM_Host" + ], + "summary": "List the compute resources currently being monitored by the Logz sub account resource.", + "operationId": "SubAccount_ListVMHosts", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/MonitorNameParameter" + }, + { + "$ref": "#/parameters/SubAccountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/VMResourcesListResponse" + } + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "SubAccount_VMHosts_List": { + "$ref": "./examples/SubAccount_VMHosts_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Logz/monitors/{monitorName}/vmHostPayload": { + "post": { + "tags": [ + "VM_Host" + ], + "summary": "Returns the payload that needs to be passed in the request body for installing Logz.io agent on a VM.", + "operationId": "Monitor_VMHostPayload", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/MonitorNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/VMExtensionPayload" + } + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "MainAccount_VMHosts_Payload": { + "$ref": "./examples/MainAccount_VMHosts_Payload.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Logz/monitors/{monitorName}/vmHostUpdate": { + "post": { + "tags": [ + "VM_Host" + ], + "summary": "Sending request to update the collection when Logz.io agent has been installed on a VM for a given monitor.", + "operationId": "Monitor_ListVmHostUpdate", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/MonitorNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "body", + "description": "Request body to update the collection for agent installed in the given monitor.", + "schema": { + "$ref": "#/definitions/VMHostUpdateRequest" + } + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/VMResourcesListResponse" + } + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "MainAccount_VMHosts_Update": { + "$ref": "./examples/MainAccount_VMHosts_Update.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Logz/monitors/{monitorName}/listVMHosts": { + "post": { + "tags": [ + "VM_Host" + ], + "summary": "List the compute resources currently being monitored by the Logz main account resource.", + "operationId": "Monitor_ListVMHosts", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/MonitorNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/VMResourcesListResponse" + } + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "MainAccount_VMHosts_List": { + "$ref": "./examples/MainAccount_VMHosts_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Logz/monitors/{monitorName}/listUserRoles": { + "post": { + "tags": [ + "Monitors" + ], + "summary": "List the user's roles configured on Logz.io side for the account corresponding to the monitor resource.", + "operationId": "Monitors_ListUserRoles", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/MonitorNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "body", + "schema": { + "$ref": "#/definitions/UserRoleRequest" + } + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/UserRoleListResponse" + } + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "MainAccount_VMHosts_Update": { + "$ref": "./examples/MainAccount_listUserRoles.json" + } + } + } } }, "definitions": { @@ -1472,6 +1834,7 @@ "Deleted", "NotSpecified" ], + "description": "Flag specifying if the resource provisioning state as tracked by ARM.", "type": "string", "x-ms-enum": { "modelAsString": true, @@ -1518,6 +1881,10 @@ "enterpriseAppId": { "description": "The Id of the Enterprise App used for Single sign on.", "type": "string" + }, + "singleSignOnUrl": { + "description": "The login URL specific to this Logz Organization.", + "type": "string" } } }, @@ -1789,6 +2156,9 @@ "description": "Definition of the properties for a TagRules resource.", "type": "object", "properties": { + "provisioningState": { + "$ref": "#/definitions/ProvisioningState" + }, "logRules": { "$ref": "#/definitions/LogRules" }, @@ -1920,6 +2290,131 @@ "type": "string" } } + }, + "VMExtensionPayload": { + "description": "Response of payload to be passed while installing VM agent.", + "type": "object", + "properties": { + "apiKey": { + "description": "API Key corresponding to the resource.", + "type": "string", + "x-ms-secret": true + }, + "region": { + "description": "Logz.io region where the resource has been created.", + "type": "string" + } + } + }, + "VMHostUpdateState": { + "description": "Various states of the updating vm extension on resource", + "enum": [ + "Install", + "Delete" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "VMHostUpdateStates" + } + }, + "VMResources": { + "description": "VM Resource Ids", + "type": "object", + "properties": { + "id": { + "description": "Request of a list vm host update operation.", + "type": "string" + }, + "agentVersion": { + "description": "Version of the Logz agent installed on the VM.", + "type": "string" + } + } + }, + "VMHostUpdateRequest": { + "description": "Request of a list VM Host Update Operation.", + "type": "object", + "properties": { + "vmResourceIds": { + "description": "Request of a list vm host update operation.", + "type": "array", + "items": { + "$ref": "#/definitions/VMResources" + } + }, + "state": { + "description": "Specifies the state of the operation - install/ delete.", + "$ref": "#/definitions/VMHostUpdateState" + } + } + }, + "VMResourcesListResponse": { + "description": "Response of a list VM Host Update Operation.", + "type": "object", + "properties": { + "value": { + "description": "Response of a list vm host update operation.", + "type": "array", + "items": { + "$ref": "#/definitions/VMResources" + } + }, + "nextLink": { + "description": "Link to the next set of results, if any.", + "type": "string" + } + } + }, + "UserRoleRequest": { + "description": "Request for checking user's role for Logz.io account.", + "type": "object", + "properties": { + "emailAddress": { + "description": "Email of the user used by Logz for contacting them if needed", + "pattern": "^[A-Za-z0-9._%+-]+@(?:[A-Za-z0-9-]+\\.)+[A-Za-z]{2,}$", + "type": "string" + } + } + }, + "UserRole": { + "description": "User roles on configured in Logz.io account.", + "enum": [ + "None", + "User", + "Admin" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "UserRole" + } + }, + "UserRoleResponse": { + "description": "Response for checking user's role for Logz.io account.", + "type": "object", + "properties": { + "role": { + "$ref": "#/definitions/UserRole" + } + } + }, + "UserRoleListResponse": { + "description": "Response for list of user's role for Logz.io account.", + "type": "object", + "properties": { + "value": { + "description": "List of user roles for Logz.io account.", + "type": "array", + "items": { + "$ref": "#/definitions/UserRoleResponse" + } + }, + "nextLink": { + "description": "Link to the next set of results, if any.", + "type": "string" + } + } } }, "parameters": { diff --git a/specification/logz/resource-manager/readme.az.md b/specification/logz/resource-manager/readme.az.md index 3a6d36dbbfb1..1001ad1b4184 100644 --- a/specification/logz/resource-manager/readme.az.md +++ b/specification/logz/resource-manager/readme.az.md @@ -11,7 +11,7 @@ az: package-name: azure-mgmt-logz az-output-folder: $(azure-cli-extension-folder)/src/logz python-sdk-output-folder: "$(az-output-folder)/azext_logz/vendored_sdks/logz" -# add additinal configuration here specific for Azure CLI +# add additional configuration here specific for Azure CLI # refer to the faq.md for more details ``` diff --git a/specification/logz/resource-manager/readme.azureresourceschema.md b/specification/logz/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 4f3714103ebb..000000000000 --- a/specification/logz/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,23 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-logz-2020-10-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-logz-2020-10-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-logz-2020-10-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Logz/preview/2020-10-01-preview/logz.json -``` diff --git a/specification/logz/resource-manager/readme.csharp.md b/specification/logz/resource-manager/readme.csharp.md index e3d05ffbfa7f..97be282a6d23 100644 --- a/specification/logz/resource-manager/readme.csharp.md +++ b/specification/logz/resource-manager/readme.csharp.md @@ -7,9 +7,8 @@ Please also specify `--csharp-sdks-folder=`. + +``` yaml $(tag)=='package-2021-03-25-preview' && $(go) +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2021-03-25-preview/$(namespace) +``` \ No newline at end of file diff --git a/specification/m365securityandcompliance/resource-manager/readme.md b/specification/m365securityandcompliance/resource-manager/readme.md new file mode 100644 index 000000000000..9ae619ddf445 --- /dev/null +++ b/specification/m365securityandcompliance/resource-manager/readme.md @@ -0,0 +1,145 @@ +# M365SecurityAndCompliance + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for M365SecurityAndCompliance. + + + +--- +## Getting Started +To build the SDK for M365SecurityAndCompliance, 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 M365SecurityAndCompliance API. + +``` yaml +title: M365SecurityAndComplianceClient +description: Security And Compliance Client +openapi-type: arm +tag: package-2021-03-25-preview +``` + +### Tag: package-2021-03-25-preview + +These settings apply only when `--tag=package-2021-03-25-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2021-03-25-preview' +input-file: +- Microsoft.M365SecurityAndCompliance/preview/2021-03-25-preview/common-types.json +- Microsoft.M365SecurityAndCompliance/preview/2021-03-25-preview/privateLinkServicesForEDMUpload.json +- Microsoft.M365SecurityAndCompliance/preview/2021-03-25-preview/privateLinkServicesForM365ComplianceCenter.json +- Microsoft.M365SecurityAndCompliance/preview/2021-03-25-preview/privateLinkServicesForM365SecurityCenter.json +- Microsoft.M365SecurityAndCompliance/preview/2021-03-25-preview/privateLinkServicesForO365ManagementActivityAPI.json +- Microsoft.M365SecurityAndCompliance/preview/2021-03-25-preview/privateLinkServicesForSCCPowershell.json +- Microsoft.M365SecurityAndCompliance/preview/2021-03-25-preview/privateLinkServicesForMIPPolicySync.json +``` + +--- +# Code Generation + + +## Swagger to SDK + +This section describes what SDK should be generated by the automatic system. +This is not used by Autorest itself. + +``` yaml $(swagger-to-sdk) +swagger-to-sdk: + - repo: azure-sdk-for-net + - repo: azure-sdk-for-go + - repo: azure-sdk-for-js + - repo: azure-sdk-for-node + - repo: azure-sdk-for-python + - repo: azure-resource-manager-schemas +``` + +## 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.M365SecurityAndCompliance + output-folder: $(csharp-sdks-folder)/m365securityandcompliance/Microsoft.Azure.Management.M365SecurityAndCompliance/src/Generated + clear-output-folder: true +``` + +## Go + +See configuration in [readme.go.md](./readme.go.md) + +## Java + +These settings apply only when `--java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(java) +azure-arm: true +fluent: true +namespace: com.microsoft.azure.management.m365securityandcompliance +license-header: MICROSOFT_MIT_NO_CODEGEN +payload-flattening-threshold: 1 +output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-m365securityandcompliance +``` + +### Java multi-api + +``` yaml $(java) && $(multiapi) +batch: + - tag: package-2021-03-25-preview +``` + +### Tag: package-2021-03-25-preview and java + +These settings apply only when `--tag=package-2021-03-25-preview --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2021-03-25-preview' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.m365securityandcompliance.v2021_01_11 + output-folder: $(azure-libraries-for-java-folder)/sdk/m365securityandcompliance/mgmt-v2021_01_11 +regenerate-manager: true +generate-interface: true +``` + +``` yaml $(java) && $(multiapi) +batch: + - tag: package-2021-03-25-preview +``` + +### Tag: package-2021-03-25-preview and java + +These settings apply only when `--tag=package-2021-03-25-preview --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2021-03-25-preview' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.m365securityandcompliance.v2021_03_08 + output-folder: $(azure-libraries-for-java-folder)/sdk/m365securityandcompliance/mgmt-v2021_03_08 +regenerate-manager: true +generate-interface: true +``` + +## Python + +See configuration in [readme.python.md](./readme.python.md) + + + + + diff --git a/specification/m365securityandcompliance/resource-manager/readme.nodejs.md b/specification/m365securityandcompliance/resource-manager/readme.nodejs.md new file mode 100644 index 000000000000..6b42256fa1f0 --- /dev/null +++ b/specification/m365securityandcompliance/resource-manager/readme.nodejs.md @@ -0,0 +1,14 @@ +## Node.js + +These settings apply only when `--nodejs` is specified on the command line. +Please also specify `--node-sdks-folder=`. + +``` yaml $(nodejs) +nodejs: + azure-arm: true + package-name: azure-arm-m365securityandcompliance + output-folder: $(node-sdks-folder)/lib/services/m365securityandcomplianceManagement + generate-license-txt: true + generate-package-json: true + generate-readme-md: true +``` diff --git a/specification/m365securityandcompliance/resource-manager/readme.python.md b/specification/m365securityandcompliance/resource-manager/readme.python.md new file mode 100644 index 000000000000..52bf45542a48 --- /dev/null +++ b/specification/m365securityandcompliance/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.m365securityandcompliance + package-name: azure-mgmt-m365securityandcompliance + package-version: 2.0.0 + clear-output-folder: true +``` +``` yaml $(python) && $(python-mode) == 'update' +python: + no-namespace-folders: true + output-folder: $(python-sdks-folder)/m365securityandcompliance/azure-mgmt-m365securityandcompliance/azure/mgmt/m365securityandcompliance +``` +``` yaml $(python) && $(python-mode) == 'create' +python: + basic-setup-py: true + output-folder: $(python-sdks-folder)/m365securityandcompliance/azure-mgmt-m365securityandcompliance +``` diff --git a/specification/m365securityandcompliance/resource-manager/readme.typescript.md b/specification/m365securityandcompliance/resource-manager/readme.typescript.md new file mode 100644 index 000000000000..38f5b92c9a1b --- /dev/null +++ b/specification/m365securityandcompliance/resource-manager/readme.typescript.md @@ -0,0 +1,13 @@ +## TypeScript + +These settings apply only when `--typescript` is specified on the command line. +Please also specify `--typescript-sdks-folder=`. + +``` yaml $(typescript) +typescript: + azure-arm: true + package-name: "@azure/arm-m365securityandcompliance" + output-folder: "$(typescript-sdks-folder)/sdk/m365securityandcompliance/arm-m365securityandcompliance" + clear-output-folder: true + generate-metadata: true +``` diff --git a/specification/machinelearning/resource-manager/readme.azureresourceschema.md b/specification/machinelearning/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 6f38975b63c5..000000000000 --- a/specification/machinelearning/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,61 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-machinelearning-2019-10-01 - - tag: schema-machinelearning-2017-01-01 - - tag: schema-machinelearning-2016-05-01-preview - - tag: schema-machinelearning-2016-04-01 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-machinelearning-2019-10-01 and azureresourceschema - -``` yaml $(tag) == 'schema-machinelearning-2019-10-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.MachineLearning/stable/2019-10-01/workspaces.json - -``` - -### Tag: schema-machinelearning-2017-01-01 and azureresourceschema - -``` yaml $(tag) == 'schema-machinelearning-2017-01-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.MachineLearning/stable/2017-01-01/webservices.json - -``` - -### Tag: schema-machinelearning-2016-05-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-machinelearning-2016-05-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.MachineLearning/preview/2016-05-01-preview/commitmentPlans.json - - Microsoft.MachineLearning/preview/2016-05-01-preview/webservices.json - -``` - -### Tag: schema-machinelearning-2016-04-01 and azureresourceschema - -``` yaml $(tag) == 'schema-machinelearning-2016-04-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.MachineLearning/stable/2016-04-01/workspaces.json - -``` diff --git a/specification/machinelearning/resource-manager/readme.go.md b/specification/machinelearning/resource-manager/readme.go.md index 0997e567ae12..5b6eda47f7f2 100644 --- a/specification/machinelearning/resource-manager/readme.go.md +++ b/specification/machinelearning/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION clear-output-folder: true ``` diff --git a/specification/machinelearning/resource-manager/readme.md b/specification/machinelearning/resource-manager/readme.md index bf21f829d033..152f7ade7fe8 100644 --- a/specification/machinelearning/resource-manager/readme.md +++ b/specification/machinelearning/resource-manager/readme.md @@ -119,8 +119,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_machine_learning'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js machinelearning/resource-manager ``` @@ -254,7 +252,5 @@ generate-interface: true -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/machinelearningcompute/resource-manager/readme.azureresourceschema.md b/specification/machinelearningcompute/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 7e519071558f..000000000000 --- a/specification/machinelearningcompute/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,36 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-machinelearningcompute-2017-08-01-preview - - tag: schema-machinelearningcompute-2017-06-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-machinelearningcompute-2017-08-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-machinelearningcompute-2017-08-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.MachineLearningCompute/preview/2017-08-01-preview/machineLearningCompute.json - -``` - -### Tag: schema-machinelearningcompute-2017-06-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-machinelearningcompute-2017-06-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.MachineLearningCompute/preview/2017-06-01-preview/machineLearningCompute.json - -``` diff --git a/specification/machinelearningcompute/resource-manager/readme.go.md b/specification/machinelearningcompute/resource-manager/readme.go.md index 321517e1a1ce..5f31ac79920e 100644 --- a/specification/machinelearningcompute/resource-manager/readme.go.md +++ b/specification/machinelearningcompute/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION clear-output-folder: true namespace: compute ``` diff --git a/specification/machinelearningcompute/resource-manager/readme.md b/specification/machinelearningcompute/resource-manager/readme.md index 1a5e302eeb77..f8f3d72cbc6d 100644 --- a/specification/machinelearningcompute/resource-manager/readme.md +++ b/specification/machinelearningcompute/resource-manager/readme.md @@ -62,14 +62,12 @@ This is not used by Autorest itself. ``` yaml $(swagger-to-sdk) swagger-to-sdk: - repo: azure-sdk-for-net - - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-java - repo: azure-sdk-for-go - repo: azure-sdk-for-js - repo: azure-sdk-for-node - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js machinelearningcompute/resource-manager ``` @@ -127,7 +125,5 @@ generate-interface: true -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/machinelearningcompute/resource-manager/readme.python.md b/specification/machinelearningcompute/resource-manager/readme.python.md index a6388632b155..03495b585d25 100644 --- a/specification/machinelearningcompute/resource-manager/readme.python.md +++ b/specification/machinelearningcompute/resource-manager/readme.python.md @@ -4,24 +4,21 @@ These settings apply only when `--python` is specified on the command line. Please also specify `--python-sdks-folder=`. Use `--python-mode=update` if you already have a setup.py and just want to update the code itself. -``` yaml $(python) +``` yaml $(python) && $(track2) python-mode: create -python: - azure-arm: true - license-header: MICROSOFT_MIT_NO_VERSION - payload-flattening-threshold: 2 - namespace: azure.mgmt.machinelearningcompute - package-name: azure-mgmt-machinelearningcompute - package-version: 0.5.0 - clear-output-folder: true +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +namespace: azure.mgmt.machinelearningcompute +package-name: azure-mgmt-machinelearningcompute +package-version: 1.0.0b1 +clear-output-folder: true ``` -``` yaml $(python) && $(python-mode) == 'update' -python: - no-namespace-folders: true - output-folder: $(python-sdks-folder)/machinelearning/azure-mgmt-machinelearningcompute/azure/mgmt/machinelearningcompute + +``` yaml $(python) && $(python-mode) == 'update' && $(track2) +no-namespace-folders: true +output-folder: $(python-sdks-folder)/machinelearning/azure-mgmt-machinelearningcompute/azure/mgmt/machinelearningcompute ``` -``` yaml $(python) && $(python-mode) == 'create' -python: - basic-setup-py: true - output-folder: $(python-sdks-folder)/machinelearning/azure-mgmt-machinelearningcompute +``` yaml $(python) && $(python-mode) == 'create' && $(track2) +basic-setup-py: true +output-folder: $(python-sdks-folder)/machinelearning/azure-mgmt-machinelearningcompute ``` diff --git a/specification/machinelearningexperimentation/resource-manager/readme.azureresourceschema.md b/specification/machinelearningexperimentation/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 7bed65196c80..000000000000 --- a/specification/machinelearningexperimentation/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,24 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-machinelearningexperimentation-2017-05-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-machinelearningexperimentation-2017-05-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-machinelearningexperimentation-2017-05-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.MachineLearningExperimentation/preview/2017-05-01-preview/machineLearningExperimentation.json - -``` diff --git a/specification/machinelearningexperimentation/resource-manager/readme.go.md b/specification/machinelearningexperimentation/resource-manager/readme.go.md index 5385b2049af8..e7cb8dac8bb8 100644 --- a/specification/machinelearningexperimentation/resource-manager/readme.go.md +++ b/specification/machinelearningexperimentation/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION clear-output-folder: true namespace: experimentation ``` diff --git a/specification/machinelearningexperimentation/resource-manager/readme.md b/specification/machinelearningexperimentation/resource-manager/readme.md index 49d88e3711b6..48a5be5ae667 100644 --- a/specification/machinelearningexperimentation/resource-manager/readme.md +++ b/specification/machinelearningexperimentation/resource-manager/readme.md @@ -55,8 +55,6 @@ swagger-to-sdk: - repo: azure-sdk-for-js - repo: azure-sdk-for-node - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js machinelearningexperimentation/resource-manager ``` @@ -114,7 +112,5 @@ generate-interface: true -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/BatchDeployment/createOrUpdate.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/BatchDeployment/createOrUpdate.json new file mode 100644 index 000000000000..e0665a3471b5 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/BatchDeployment/createOrUpdate.json @@ -0,0 +1,234 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup-1234", + "workspaceName": "testworkspace", + "api-version": "2021-03-01-preview", + "endpointName": "testBatchEndpoint", + "deploymentName": "testBatchDeployment", + "body": { + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "location": "string", + "kind": "string", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myuseridentity": { + "principalId": "string", + "clientId": "string" + } + } + }, + "properties": { + "compute": { + "target": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/computes/testcompute", + "instanceCount": 0, + "isLocal": false, + "location": "string", + "instanceType": "string", + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + }, + "errorThreshold": 0, + "retrySettings": { + "maxRetries": 0, + "timeout": "string" + }, + "partitionKeys": [ + "string" + ], + "miniBatchSize": 0, + "loggingLevel": "Info", + "outputConfiguration": { + "outputAction": "SummaryOnly", + "appendRowFileName": "string" + }, + "description": "string", + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "model": { + "referenceType": "Id", + "assetId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/models/testmodel/versions/1" + }, + "codeConfiguration": { + "codeId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/codes/testcode/versions/1", + "scoringScript": "score.py" + }, + "environmentId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/environments/myenv", + "environmentVariables": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/batchEndpoints/testBatchEndpoint/deployments/testBatchDeployment", + "name": "testBatchDeployment", + "type": "Microsoft.MachineLearningServices/workspaces/batchEndpoints/deployments", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "location": "string", + "kind": "string", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myuseridentity": { + "clientId": "string" + } + } + }, + "properties": { + "compute": { + "target": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/computes/testcompute", + "instanceCount": 0, + "isLocal": false, + "location": "string", + "instanceType": "string", + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + }, + "errorThreshold": 0, + "retrySettings": { + "maxRetries": 0, + "timeout": "string" + }, + "partitionKeys": [ + "string" + ], + "miniBatchSize": 0, + "loggingLevel": "Info", + "outputConfiguration": { + "outputAction": "SummaryOnly", + "appendRowFileName": "string" + }, + "description": "string", + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "model": { + "referenceType": "Id", + "assetId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/models/testmodel/versions/1" + }, + "codeConfiguration": { + "codeId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/codes/testcode/versions/1", + "scoringScript": "score.py" + }, + "environmentId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/environments/myenv", + "environmentVariables": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + }, + "systemData": { + "createdAt": "2021-03-25T20:46:47.062Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2021-03-25T20:46:47.062Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/batchEndpoints/testBatchEndpoint/deployments/testBatchDeployment", + "name": "testBatchDeployment", + "type": "Microsoft.MachineLearningServices/workspaces/batchEndpoints/deployments", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "location": "string", + "kind": "string", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myuseridentity": { + "clientId": "string" + } + } + }, + "properties": { + "compute": { + "target": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/computes/testcompute", + "instanceCount": 0, + "isLocal": false, + "location": "string", + "instanceType": "string", + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + }, + "errorThreshold": 0, + "retrySettings": { + "maxRetries": 0, + "timeout": "string" + }, + "partitionKeys": [ + "string" + ], + "miniBatchSize": 0, + "loggingLevel": "Info", + "outputConfiguration": { + "outputAction": "SummaryOnly", + "appendRowFileName": "string" + }, + "description": "string", + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "model": { + "referenceType": "Id", + "assetId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/models/testmodel/versions/1" + }, + "codeConfiguration": { + "codeId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/codes/testcode/versions/1", + "scoringScript": "score.py" + }, + "environmentId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/environments/myenv", + "environmentVariables": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + }, + "systemData": { + "createdAt": "2021-03-25T20:46:47.062Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2021-03-25T20:46:47.062Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/BatchDeployment/delete.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/BatchDeployment/delete.json new file mode 100644 index 000000000000..ea9d9cf451e0 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/BatchDeployment/delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup-1234", + "workspaceName": "testworkspace", + "endpointName": "testBatchEndpoint", + "deploymentName": "testBatchDeployment", + "api-version": "2021-03-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/BatchDeployment/get.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/BatchDeployment/get.json new file mode 100644 index 000000000000..7b8786b625e3 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/BatchDeployment/get.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup-1234", + "workspaceName": "testworkspace", + "endpointName": "testBatchEndpoint", + "deploymentName": "testBatchDeployment", + "api-version": "2021-03-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/batchEndpoints/testBatchEndpoint/deployments/testBatchDeployment", + "name": "testBatchDeployment", + "type": "Microsoft.MachineLearningServices/workspaces/batchEndpoints/deployments", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "location": "string", + "kind": "string", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myuseridentity": { + "clientId": "string" + } + } + }, + "properties": { + "compute": { + "target": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/computes/testcompute", + "instanceCount": 0, + "isLocal": false, + "location": "string", + "instanceType": "string", + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + }, + "errorThreshold": 0, + "retrySettings": { + "maxRetries": 0, + "timeout": "string" + }, + "partitionKeys": [ + "string" + ], + "miniBatchSize": 0, + "loggingLevel": "Info", + "outputConfiguration": { + "outputAction": "SummaryOnly", + "appendRowFileName": "string" + }, + "description": "string", + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "model": { + "referenceType": "Id", + "assetId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/models/testmodel/versions/1" + }, + "codeConfiguration": { + "codeId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/codes/testcode/versions/1", + "scoringScript": "score.py" + }, + "environmentId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/environments/myenv", + "environmentVariables": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + }, + "systemData": { + "createdAt": "2021-03-25T20:46:47.062Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2021-03-25T20:46:47.062Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/BatchDeployment/list.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/BatchDeployment/list.json new file mode 100644 index 000000000000..60fd50774dd4 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/BatchDeployment/list.json @@ -0,0 +1,94 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup-1234", + "workspaceName": "testworkspace", + "endpointName": "testBatchEndpoint", + "api-version": "2021-03-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/batchEndpoints/testBatchEndpoint/deployments/testBatchDeployment", + "name": "testBatchDeployment", + "type": "Microsoft.MachineLearningServices/workspaces/batchEndpoints/deployments", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "location": "string", + "kind": "string", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myuseridentity": { + "clientId": "string" + } + } + }, + "properties": { + "compute": { + "target": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/computes/testcompute", + "instanceCount": 0, + "isLocal": false, + "location": "string", + "instanceType": "string", + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + }, + "errorThreshold": 0, + "retrySettings": { + "maxRetries": 0, + "timeout": "string" + }, + "partitionKeys": [ + "string" + ], + "miniBatchSize": 0, + "loggingLevel": "Info", + "outputConfiguration": { + "outputAction": "SummaryOnly", + "appendRowFileName": "string" + }, + "description": "string", + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "model": { + "referenceType": "Id", + "assetId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/models/testmodel/versions/1" + }, + "codeConfiguration": { + "codeId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/codes/testcode/versions/1", + "scoringScript": "score.py" + }, + "environmentId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/environments/myenv", + "environmentVariables": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + }, + "systemData": { + "createdAt": "2021-03-25T20:46:47.062Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2021-03-25T20:46:47.062Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + ], + "nextLink": "string" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/BatchDeployment/update.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/BatchDeployment/update.json new file mode 100644 index 000000000000..47b43f35442c --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/BatchDeployment/update.json @@ -0,0 +1,97 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "workspace123", + "api-version": "2021-03-01-preview", + "endpointName": "testBatchEndpoint", + "deploymentName": "testBatchDeployment", + "body": { + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/batchEndpoints/testBatchEndpoint/deployments/testBatchDeployment", + "name": "testBatchDeployment", + "type": "Microsoft.MachineLearningServices/workspaces/batchEndpoints/deployments", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "location": "string", + "kind": "string", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myuseridentity": { + "clientId": "string" + } + } + }, + "properties": { + "compute": { + "target": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/computes/testcompute", + "instanceCount": 0, + "isLocal": false, + "location": "string", + "instanceType": "string", + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + }, + "errorThreshold": 0, + "retrySettings": { + "maxRetries": 0, + "timeout": "string" + }, + "partitionKeys": [ + "string" + ], + "miniBatchSize": 0, + "loggingLevel": "Info", + "outputConfiguration": { + "outputAction": "SummaryOnly", + "appendRowFileName": "string" + }, + "description": "string", + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "model": { + "referenceType": "Id", + "assetId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/models/testmodel/versions/1" + }, + "codeConfiguration": { + "codeId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/codes/testcode/versions/1", + "scoringScript": "score.py" + }, + "environmentId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/environments/myenv", + "environmentVariables": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + }, + "systemData": { + "createdAt": "2021-03-25T20:46:47.062Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2021-03-25T20:46:47.062Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/BatchEndpoint/createOrUpdate.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/BatchEndpoint/createOrUpdate.json new file mode 100644 index 000000000000..7193dc10d7ae --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/BatchEndpoint/createOrUpdate.json @@ -0,0 +1,136 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup-1234", + "workspaceName": "testworkspace", + "api-version": "2021-03-01-preview", + "endpointName": "testBatchEndpoint", + "body": { + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "location": "string", + "kind": "string", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myuseridentity": { + "principalId": "string", + "clientId": "string" + } + } + }, + "properties": { + "authMode": "AMLToken", + "description": "string", + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "traffic": { + "myDeployment1": 0, + "myDeployment2": 1 + }, + "keys": { + "primaryKey": "string", + "secondaryKey": "string" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/batchEndpoints/testBatchEndpoint", + "name": "testBatchEndpoint", + "type": "Microsoft.MachineLearningServices/workspaces/batchEndpoints", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "location": "string", + "kind": "string", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myuseridentity": { + "clientId": "string" + } + } + }, + "properties": { + "authMode": "AMLToken", + "description": "string", + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "traffic": { + "myDeployment1": 0, + "myDeployment2": 1 + }, + "scoringUri": "string", + "swaggerUri": "string" + }, + "systemData": { + "createdAt": "2021-03-25T20:46:47.062Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2021-03-25T20:46:47.062Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/batchEndpoints/testBatchEndpoint", + "name": "testBatchEndpoint", + "type": "Microsoft.MachineLearningServices/workspaces/batchEndpoints", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "location": "string", + "kind": "string", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myuseridentity": { + "clientId": "string" + } + } + }, + "properties": { + "authMode": "AMLToken", + "description": "string", + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "traffic": { + "myDeployment1": 0, + "myDeployment2": 1 + }, + "scoringUri": "string", + "swaggerUri": "string" + }, + "systemData": { + "createdAt": "2021-03-25T20:46:47.062Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2021-03-25T20:46:47.062Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/BatchEndpoint/delete.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/BatchEndpoint/delete.json new file mode 100644 index 000000000000..45104ebc1299 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/BatchEndpoint/delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup-1234", + "workspaceName": "testworkspace", + "endpointName": "testBatchEndpoint", + "api-version": "2021-03-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/BatchEndpoint/get.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/BatchEndpoint/get.json new file mode 100644 index 000000000000..48ee8272b3b9 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/BatchEndpoint/get.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup-1234", + "workspaceName": "testworkspace", + "endpointName": "testBatchEndpoint", + "api-version": "2021-03-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/batchEndpoints/testBatchEndpoint", + "name": "testBatchEndpoint", + "type": "Microsoft.MachineLearningServices/workspaces/batchEndpoints", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "location": "string", + "kind": "string", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myuseridentity": { + "clientId": "string" + } + } + }, + "properties": { + "authMode": "AMLToken", + "description": "string", + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "traffic": { + "myDeployment1": 0, + "myDeployment2": 1 + }, + "scoringUri": "string", + "swaggerUri": "string" + }, + "systemData": { + "createdAt": "2021-03-25T20:46:47.062Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2021-03-25T20:46:47.062Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/BatchEndpoint/list.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/BatchEndpoint/list.json new file mode 100644 index 000000000000..6912243fd754 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/BatchEndpoint/list.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup-1234", + "workspaceName": "testworkspace", + "api-version": "2021-03-01-preview", + "count": 1 + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/batchEndpoints/testBatchEndpoint", + "name": "testBatchEndpoint", + "type": "Microsoft.MachineLearningServices/workspaces/batchEndpoints", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "location": "string", + "kind": "string", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myuseridentity": { + "clientId": "string" + } + } + }, + "properties": { + "authMode": "AMLToken", + "description": "string", + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "traffic": { + "myDeployment1": 0, + "myDeployment2": 1 + }, + "scoringUri": "string", + "swaggerUri": "string" + }, + "systemData": { + "createdAt": "2021-03-25T20:46:47.062Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2021-03-25T20:46:47.062Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + ], + "nextLink": "string" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/BatchEndpoint/listKeys.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/BatchEndpoint/listKeys.json new file mode 100644 index 000000000000..ac3d3b432d0a --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/BatchEndpoint/listKeys.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup-1234", + "workspaceName": "testworkspace", + "api-version": "2021-03-01-preview", + "endpointName": "testBatchEndpoint" + }, + "responses": { + "200": { + "body": { + "primaryKey": "string", + "secondaryKey": "string" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/BatchEndpoint/update.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/BatchEndpoint/update.json new file mode 100644 index 000000000000..06fab02ba585 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/BatchEndpoint/update.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "workspace123", + "api-version": "2021-03-01-preview", + "endpointName": "testBatchEndpoint", + "body": { + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/batchEndpoints/testBatchEndpoint", + "name": "testBatchEndpoint", + "type": "Microsoft.MachineLearningServices/workspaces/batchEndpoints", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "location": "string", + "kind": "string", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myuseridentity": { + "clientId": "string" + } + } + }, + "properties": { + "authMode": "AMLToken", + "description": "string", + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "traffic": { + "myDeployment1": 0, + "myDeployment2": 1 + }, + "scoringUri": "string", + "swaggerUri": "string" + }, + "systemData": { + "createdAt": "2021-03-25T20:46:47.062Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2021-03-25T20:46:47.062Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/CodeContainer/createOrUpdate.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/CodeContainer/createOrUpdate.json new file mode 100644 index 000000000000..71ebee7ba51b --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/CodeContainer/createOrUpdate.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "testworkspace", + "api-version": "2021-03-01-preview", + "name": "testContainer", + "body": { + "properties": { + "description": "string", + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/codes/testContainer", + "name": "testContainer", + "type": "Microsoft.MachineLearningServices/workspaces/codes", + "properties": { + "description": "string", + "tags": { + "property1": "string", + "property2": "string" + } + }, + "systemData": { + "createdAt": "2020-12-01T12:00:00.000Z", + "createdBy": "John Smith", + "createdByType": "User", + "lastModifiedAt": "2020-12-01T12:00:00.000Z", + "lastModifiedBy": "John Smith", + "lastModifiedByType": "User" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/codes/testContainer", + "name": "testContainer", + "type": "Microsoft.MachineLearningServices/workspaces/codes", + "properties": { + "description": "string", + "tags": { + "property1": "string", + "property2": "string" + } + }, + "systemData": { + "createdAt": "2020-12-01T12:00:00.000Z", + "createdBy": "John Smith", + "createdByType": "User", + "lastModifiedAt": "2020-12-01T12:00:00.000Z", + "lastModifiedBy": "John Smith", + "lastModifiedByType": "User" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/CodeContainer/delete.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/CodeContainer/delete.json new file mode 100644 index 000000000000..9198deab4166 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/CodeContainer/delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "testworkspace", + "api-version": "2021-03-01-preview", + "name": "testContainer" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/CodeContainer/get.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/CodeContainer/get.json new file mode 100644 index 000000000000..6446f2e5fabb --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/CodeContainer/get.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "testworkspace", + "api-version": "2021-03-01-preview", + "name": "testContainer" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/codes/testContainer", + "name": "testContainer", + "type": "Microsoft.MachineLearningServices/workspaces/codes", + "properties": { + "description": "string", + "tags": { + "property1": "string", + "property2": "string" + } + }, + "systemData": { + "createdAt": "2020-12-01T12:00:00.000Z", + "createdBy": "John Smith", + "createdByType": "User", + "lastModifiedAt": "2020-08-01T12:00:00.000Z", + "lastModifiedBy": "John Smith", + "lastModifiedByType": "User" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/CodeContainer/list.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/CodeContainer/list.json new file mode 100644 index 000000000000..73e02ca2c0bc --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/CodeContainer/list.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "testworkspace", + "api-version": "2021-03-01-preview", + "$skipToken": "skiptoken" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/codes/testContainer", + "name": "testContainer", + "type": "Microsoft.MachineLearningServices/workspaces/codes", + "properties": { + "description": "string", + "tags": { + "property1": "string", + "property2": "string" + } + }, + "systemData": { + "createdAt": "2020-08-01T12:00:00.000Z", + "createdBy": "John Smith", + "createdByType": "User", + "lastModifiedAt": "2020-08-01T12:00:00.000Z", + "lastModifiedBy": "John Smith", + "lastModifiedByType": "User" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/codes/testContainer2", + "name": "testContainer2", + "type": "Microsoft.MachineLearningServices/workspaces/codes", + "properties": { + "description": "string", + "tags": { + "property1": "string", + "property2": "string" + } + }, + "systemData": { + "createdAt": "2020-08-01T12:00:00.000Z", + "createdBy": "John Smith", + "createdByType": "User", + "lastModifiedAt": "2020-08-01T12:00:00.000Z", + "lastModifiedBy": "John Smith", + "lastModifiedByType": "User" + } + } + ], + "nextLink": "string" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/CodeVersion/createOrUpdate.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/CodeVersion/createOrUpdate.json new file mode 100644 index 000000000000..a8f88ec37b5b --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/CodeVersion/createOrUpdate.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "testworkspace", + "api-version": "2021-03-01-preview", + "name": "testContainer", + "version": "1", + "body": { + "properties": { + "datastoreId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/datastores/mydatastore", + "path": "path/to/file.py", + "isAnonymous": true, + "description": "string", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/codes/testContainer/versions/1", + "name": "1", + "type": "Microsoft.MachineLearningServices/workspaces/codes/versions", + "properties": { + "datastoreId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/datastores/mydatastore", + "path": "path/to/file.py", + "isAnonymous": true, + "description": "string", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + }, + "systemData": { + "createdAt": "2021-03-25T20:58:39.312Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2021-03-25T20:58:39.312Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/codes/testContainer/versions/1", + "name": "1", + "type": "Microsoft.MachineLearningServices/workspaces/codes/versions", + "properties": { + "datastoreId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/datastores/mydatastore", + "path": "path/to/file.py", + "isAnonymous": true, + "description": "string", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + }, + "systemData": { + "createdAt": "2021-03-25T20:58:39.312Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2021-03-25T20:58:39.312Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/CodeVersion/delete.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/CodeVersion/delete.json new file mode 100644 index 000000000000..6bb446d6869e --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/CodeVersion/delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "testworkspace", + "api-version": "2021-03-01-preview", + "name": "testContainer", + "version": "1" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/CodeVersion/get.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/CodeVersion/get.json new file mode 100644 index 000000000000..054e0b6192b5 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/CodeVersion/get.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "testworkspace", + "api-version": "2021-03-01-preview", + "name": "testContainer", + "version": "1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/codes/testContainer/versions/1", + "name": "1", + "type": "Microsoft.MachineLearningServices/workspaces/codes/versions", + "properties": { + "datastoreId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/datastores/mydatastore", + "path": "path/to/file.py", + "isAnonymous": true, + "description": "string", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + }, + "systemData": { + "createdAt": "2021-03-25T20:58:39.312Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2021-03-25T20:58:39.312Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/CodeVersion/list.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/CodeVersion/list.json new file mode 100644 index 000000000000..72fcc4480273 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/CodeVersion/list.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "testworkspace", + "api-version": "2021-03-01-preview", + "name": "testContainer", + "$skipToken": "skiptoken" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/codes/testContainer/versions/1", + "name": "1", + "type": "Microsoft.MachineLearningServices/workspaces/codes/versions", + "properties": { + "datastoreId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/datastores/mydatastore", + "path": "path/to/file.py", + "isAnonymous": true, + "description": "string", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + }, + "systemData": { + "createdAt": "2021-03-25T20:58:39.312Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2021-03-25T20:58:39.312Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + ], + "nextLink": "string" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/createOrUpdate/AKSCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/createOrUpdate/AKSCompute.json new file mode 100644 index 000000000000..37026eb9cf01 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/createOrUpdate/AKSCompute.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2021-03-01-preview", + "parameters": { + "location": "eastus", + "properties": { + "description": "some compute", + "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute123-56826-c9b00420020b2", + "computeType": "AKS", + "properties": { + "agentCount": 4 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "description": "some compute", + "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute123-56826-c9b00420020b2", + "computeType": "AKS", + "provisioningState": "Updating" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "description": "some compute", + "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute123-56826-c9b00420020b2", + "computeType": "AKS", + "provisioningState": "Updating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/createOrUpdate/AmlCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/createOrUpdate/AmlCompute.json new file mode 100644 index 000000000000..1deb507610ef --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/createOrUpdate/AmlCompute.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2021-03-01-preview", + "parameters": { + "location": "eastus", + "properties": { + "computeType": "AmlCompute", + "description": "some compute", + "properties": { + "scaleSettings": { + "maxNodeCount": 4, + "minNodeCount": 4, + "nodeIdleTimeBeforeScaleDown": "PT5M" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus2", + "properties": { + "description": "some compute", + "computeType": "AmlCompute", + "provisioningState": "Updating" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus2", + "properties": { + "description": "some compute", + "computeType": "AmlCompute", + "provisioningState": "Updating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/createOrUpdate/BasicAKSCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/createOrUpdate/BasicAKSCompute.json new file mode 100644 index 000000000000..c6e2e55ce2b5 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/createOrUpdate/BasicAKSCompute.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2021-03-01-preview", + "parameters": { + "location": "eastus", + "properties": { + "computeType": "AKS" + } + } + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "AKS", + "provisioningState": "Creating" + } + } + }, + "201": { + "body": { + "id": "subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "AKS", + "provisioningState": "Creating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/createOrUpdate/BasicAmlCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/createOrUpdate/BasicAmlCompute.json new file mode 100644 index 000000000000..f0f4f84724be --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/createOrUpdate/BasicAmlCompute.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2021-03-01-preview", + "parameters": { + "location": "eastus", + "properties": { + "computeType": "AmlCompute", + "properties": { + "vmSize": "STANDARD_NC6", + "vmPriority": "Dedicated", + "osType": "Windows", + "virtualMachineImage": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/myImageGallery/images/myImageDefinition/versions/0.0.1" + }, + "isolatedNetwork": false, + "scaleSettings": { + "maxNodeCount": 1, + "minNodeCount": 0, + "nodeIdleTimeBeforeScaleDown": "PT5M" + }, + "remoteLoginPortPublicAccess": "NotSpecified", + "enableNodePublicIp": true + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "AmlCompute", + "provisioningState": "Creating" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "AmlCompute", + "provisioningState": "Creating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/createOrUpdate/BasicDataFactoryCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/createOrUpdate/BasicDataFactoryCompute.json new file mode 100644 index 000000000000..a65e47b06092 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/createOrUpdate/BasicDataFactoryCompute.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2021-03-01-preview", + "parameters": { + "location": "eastus", + "properties": { + "computeType": "DataFactory" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "DataFactory", + "provisioningState": "Creating" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "DataFactory", + "provisioningState": "Creating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/createOrUpdate/ComputeInstance.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/createOrUpdate/ComputeInstance.json new file mode 100644 index 000000000000..f03287c70c29 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/createOrUpdate/ComputeInstance.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2021-03-01-preview", + "parameters": { + "location": "eastus", + "properties": { + "computeType": "ComputeInstance", + "properties": { + "vmSize": "STANDARD_NC6", + "subnet": "test-subnet-resource-id", + "applicationSharingPolicy": "Personal", + "sshSettings": { + "sshPublicAccess": "Disabled" + }, + "computeInstanceAuthorizationType": "personal", + "personalComputeInstanceSettings": { + "assignedUser": { + "objectId": "00000000-0000-0000-0000-000000000000", + "tenantId": "00000000-0000-0000-0000-000000000000" + } + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "ComputeInstance", + "provisioningState": "Creating" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "ComputeInstance", + "provisioningState": "Creating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/createOrUpdate/ComputeInstanceMinimal.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/createOrUpdate/ComputeInstanceMinimal.json new file mode 100644 index 000000000000..f297720608bf --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/createOrUpdate/ComputeInstanceMinimal.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2021-03-01-preview", + "parameters": { + "location": "eastus", + "properties": { + "computeType": "ComputeInstance", + "properties": { + "vmSize": "STANDARD_NC6" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "ComputeInstance", + "provisioningState": "Creating" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "ComputeInstance", + "provisioningState": "Creating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/createOrUpdate/ComputeInstanceWithSchedules.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/createOrUpdate/ComputeInstanceWithSchedules.json new file mode 100644 index 000000000000..eb954d42090e --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/createOrUpdate/ComputeInstanceWithSchedules.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2021-03-01-preview", + "parameters": { + "location": "eastus", + "properties": { + "computeType": "ComputeInstance", + "properties": { + "vmSize": "STANDARD_NC6", + "subnet": "test-subnet-resource-id", + "applicationSharingPolicy": "Personal", + "sshSettings": { + "sshPublicAccess": "Disabled" + }, + "computeInstanceAuthorizationType": "personal", + "personalComputeInstanceSettings": { + "assignedUser": { + "objectId": "00000000-0000-0000-0000-000000000000", + "tenantId": "00000000-0000-0000-0000-000000000000" + } + }, + "schedules": { + "computeStartStop": [ + { + "status": "Enabled", + "action": "Stop", + "triggerType": "Cron", + "cron": { + "expression": "0 18 * * *", + "startTime": "2021-04-23T01:30:00", + "timeZone": "Pacific Standard Time" + } + } + ] + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "ComputeInstance", + "provisioningState": "Creating" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "ComputeInstance", + "provisioningState": "Creating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/delete.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/delete.json new file mode 100644 index 000000000000..add22e2b48cc --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/delete.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2021-03-01-preview", + "underlyingResourceAction": "Delete" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus...", + "Location": "https://management.azure.com/subscriptions/...pathToOperationResult..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/get/AKSCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/get/AKSCompute.json new file mode 100644 index 000000000000..59a7d4b7009d --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/get/AKSCompute.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2021-03-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "createdOn": "2021-04-01T22:00:00.0000000+00:00", + "modifiedOn": "2021-04-01T22:00:00.0000000+00:00", + "description": "some compute", + "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute123-56826-c9b00420020b2", + "computeType": "AKS", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/get/AmlCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/get/AmlCompute.json new file mode 100644 index 000000000000..b422464ed390 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/get/AmlCompute.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2021-03-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus2", + "properties": { + "description": "some compute", + "createdOn": "2021-04-01T22:00:00.0000000+00:00", + "modifiedOn": "2021-04-01T22:00:00.0000000+00:00", + "computeType": "AmlCompute", + "provisioningState": "Succeeded", + "properties": { + "vmSize": "STANDARD_NC6", + "vmPriority": "Dedicated", + "osType": "Windows", + "virtualMachineImage": null, + "isolatedNetwork": false, + "subnet": "test-subnet-resource-id", + "scaleSettings": { + "maxNodeCount": 1, + "minNodeCount": 0, + "nodeIdleTimeBeforeScaleDown": "PT5M" + }, + "remoteLoginPortPublicAccess": "Enabled", + "allocationState": "Resizing", + "allocationStateTransitionTime": "2017-09-27T22:28:08.998Z", + "errors": null, + "currentNodeCount": 0, + "targetNodeCount": 1, + "nodeStateCounts": { + "preparingNodeCount": 0, + "runningNodeCount": 0, + "idleNodeCount": 0, + "unusableNodeCount": 0, + "leavingNodeCount": 0, + "preemptedNodeCount": 0 + }, + "enableNodePublicIp": true + } + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/get/ComputeInstance.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/get/ComputeInstance.json new file mode 100644 index 000000000000..3d2d0c42183d --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/get/ComputeInstance.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2021-03-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus2", + "properties": { + "description": "some compute", + "createdOn": "2021-04-01T22:00:00.0000000+00:00", + "modifiedOn": "2021-04-01T22:00:00.0000000+00:00", + "computeType": "ComputeInstance", + "provisioningState": "Succeeded", + "properties": { + "vmSize": "STANDARD_NC6", + "subnet": "test-subnet-resource-id", + "applicationSharingPolicy": "Shared", + "sshSettings": { + "sshPublicAccess": "Enabled", + "adminUserName": "azureuser", + "sshPort": 22 + }, + "computeInstanceAuthorizationType": "personal", + "personalComputeInstanceSettings": { + "assignedUser": { + "objectId": "00000000-0000-0000-0000-000000000000", + "tenantId": "00000000-0000-0000-0000-000000000000" + } + }, + "createdBy": { + "userName": "foobar@microsoft.com", + "userOrgId": "00000000-0000-0000-0000-000000000000", + "userId": "00000000-0000-0000-0000-000000000000" + }, + "connectivityEndpoints": { + "publicIpAddress": "10.0.0.1", + "privateIpAddress": "10.0.0.1" + }, + "applications": [ + { + "displayName": "Jupyter", + "endpointUri": "https://compute123.eastus2.azureml.net/jupyter" + } + ], + "errors": null, + "state": "Running" + } + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/list.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/list.json new file mode 100644 index 000000000000..657146bbdf03 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/list.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "api-version": "2021-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "description": "some compute", + "createdOn": "2021-04-01T22:00:00.0000000+00:00", + "modifiedOn": "2021-04-01T22:00:00.0000000+00:00", + "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute123-56826-c9b00420020b2", + "computeType": "AKS", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute1234", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute1234", + "location": "eastus", + "properties": { + "description": "some compute", + "createdOn": "2021-04-01T22:00:00.0000000+00:00", + "modifiedOn": "2021-04-01T22:00:00.0000000+00:00", + "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute1234-56826-c9b00420020b2", + "computeType": "AKS", + "provisioningState": "Succeeded" + } + } + ], + "nextLink": "nextLink" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/listKeys.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/listKeys.json new file mode 100644 index 000000000000..41de00a059cb --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/listKeys.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2021-03-01-preview" + }, + "responses": { + "200": { + "body": { + "computeType": "AKS", + "userKubeConfig": "user kube config...", + "adminKubeConfig": "admin kube config...", + "imagePullSecretName": "the image pull secret name" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/listNodes.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/listNodes.json new file mode 100644 index 000000000000..58892c22ca92 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/listNodes.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2021-03-01-preview" + }, + "responses": { + "200": { + "body": { + "computeType": "AmlCompute", + "nodes": [ + { + "nodeId": "tvm-3601533753_1-20170719t162906z", + "privateIpAddress": "13.84.190.124", + "publicIpAddress": "13.84.190.134", + "port": 50000, + "nodeState": "running", + "runId": "2f378a44-38f2-443a-9f0d-9909d0b47890" + }, + { + "nodeId": "tvm-3601533753_2-20170719t162906z", + "privateIpAddress": "13.84.190.124", + "publicIpAddress": "13.84.190.134", + "port": 50001, + "nodeState": "idle" + } + ], + "nextLink": "nextLink" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/patch.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/patch.json new file mode 100644 index 000000000000..b4088fd335cb --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/patch.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2021-03-01-preview", + "parameters": { + "properties": { + "scaleSettings": { + "maxNodeCount": 4, + "minNodeCount": 4, + "nodeIdleTimeBeforeScaleDown": "PT5M" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus2", + "properties": { + "description": "some compute", + "computeType": "AmlCompute", + "provisioningState": "Updating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/restart.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/restart.json new file mode 100644 index 000000000000..8647ef440852 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/restart.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2021-03-01-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/start.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/start.json new file mode 100644 index 000000000000..9f3b7e87c2b5 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/start.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2021-03-01-preview" + }, + "responses": { + "202": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/stop.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/stop.json new file mode 100644 index 000000000000..9f3b7e87c2b5 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/stop.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2021-03-01-preview" + }, + "responses": { + "202": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/updateSchedules.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/updateSchedules.json new file mode 100644 index 000000000000..293bec00382c --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Compute/updateSchedules.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2021-03-01-preview", + "parameters": { + "computeStartStop": [ + { + "status": "Enabled", + "action": "Start", + "triggerType": "Recurrence", + "recurrence": { + "frequency": "Day", + "interval": 1, + "startTime": "2021-04-23T01:30:00", + "timeZone": "Pacific Standard Time", + "schedule": { + "hours": [ + 18 + ], + "minutes": [ + 30 + ], + "weekDays": null + } + } + } + ] + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/DataContainer/createOrUpdate.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/DataContainer/createOrUpdate.json new file mode 100644 index 000000000000..bdc677161a55 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/DataContainer/createOrUpdate.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "workspace123", + "api-version": "2021-03-01-preview", + "name": "datacontainer123", + "body": { + "properties": { + "description": "string", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "properties1": "value1", + "properties2": "value2" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspace123/data/datacontainer123", + "name": "datacontainer123", + "type": "Microsoft.MachineLearningServices/workspaces/data", + "properties": { + "description": "string", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "properties1": "value1", + "properties2": "value2" + } + }, + "systemData": { + "createdAt": "2020-12-01T12:00:00.000Z", + "createdBy": "John Smith", + "createdByType": "User", + "lastModifiedAt": "2020-12-01T12:00:00.000Z", + "lastModifiedBy": "John Smith", + "lastModifiedByType": "User" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspace123/data/datacontainer123", + "name": "datacontainer123", + "type": "Microsoft.MachineLearningServices/workspaces/data", + "properties": { + "description": "string", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "properties1": "value1", + "properties2": "value2" + } + }, + "systemData": { + "createdAt": "2020-12-01T12:00:00.000Z", + "createdBy": "John Smith", + "createdByType": "User", + "lastModifiedAt": "2020-12-01T12:00:00.000Z", + "lastModifiedBy": "John Smith", + "lastModifiedByType": "User" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/DataContainer/delete.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/DataContainer/delete.json new file mode 100644 index 000000000000..8f4fac7c6b98 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/DataContainer/delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "workspace123", + "api-version": "2021-03-01-preview", + "name": "datacontainer123" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/DataContainer/get.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/DataContainer/get.json new file mode 100644 index 000000000000..4cb6ef56aa05 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/DataContainer/get.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "workspace123", + "api-version": "2021-03-01-preview", + "name": "datacontainer123" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspace123/data/datacontainer123", + "name": "datacontainer123", + "type": "Microsoft.MachineLearningServices/workspaces/data", + "properties": { + "description": "string", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "properties1": "value1", + "properties2": "value2" + } + }, + "systemData": { + "createdAt": "2020-12-01T12:00:00.000Z", + "createdBy": "John Smith", + "createdByType": "User", + "lastModifiedAt": "2020-12-01T12:00:00.000Z", + "lastModifiedBy": "John Smith", + "lastModifiedByType": "User" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/DataContainer/list.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/DataContainer/list.json new file mode 100644 index 000000000000..ec4cd60666d2 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/DataContainer/list.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "workspace123", + "api-version": "2021-03-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspace123/data/datacontainer123", + "name": "datastore123", + "type": "Microsoft.MachineLearningServices/workspaces/data", + "properties": { + "description": "string", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "properties1": "value1", + "properties2": "value2" + } + }, + "systemData": { + "createdAt": "2020-12-01T12:00:00.000Z", + "createdBy": "John Smith", + "createdByType": "User", + "lastModifiedAt": "2020-12-01T12:00:00.000Z", + "lastModifiedBy": "John Smith", + "lastModifiedByType": "User" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspace123/data/datacontainer124", + "name": "datastore124", + "type": "Microsoft.MachineLearningServices/workspaces/data", + "properties": { + "description": "string", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "properties1": "value1", + "properties2": "value2" + } + }, + "systemData": { + "createdAt": "2020-12-01T12:00:00.000Z", + "createdBy": "John Smith", + "createdByType": "User", + "lastModifiedAt": "2020-12-01T12:00:00.000Z", + "lastModifiedBy": "John Smith", + "lastModifiedByType": "User" + } + } + ], + "nextLink": "nextlink" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/DataVersion/createOrUpdate.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/DataVersion/createOrUpdate.json new file mode 100644 index 000000000000..0723a7cb2785 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/DataVersion/createOrUpdate.json @@ -0,0 +1,95 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "workspace123", + "api-version": "2021-03-01-preview", + "name": "dataset123", + "version": "1", + "body": { + "properties": { + "datasetType": "Simple", + "datastoreId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/datastores/mydatastore", + "path": "path/to/file.csv", + "isAnonymous": true, + "description": "string", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/data/dataset123/versions/1", + "name": "1", + "type": "Microsoft.MachineLearningServices/workspaces/data/versions", + "properties": { + "datasetType": "Simple", + "datastoreId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/datastores/mydatastore", + "path": "path/to/file.csv", + "isAnonymous": true, + "description": "string", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + }, + "systemData": { + "createdAt": "2021-03-25T21:39:02.230Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2021-03-25T21:39:02.230Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/data/dataset123/versions/1", + "name": "1", + "type": "Microsoft.MachineLearningServices/workspaces/data/versions", + "properties": { + "datasetType": "Simple", + "datastoreId": "string", + "path": "string", + "isAnonymous": true, + "description": "string", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + }, + "systemData": { + "createdAt": "2021-03-25T21:39:02.230Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2021-03-25T21:39:02.230Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/DataVersion/delete.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/DataVersion/delete.json new file mode 100644 index 000000000000..015e64c15dba --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/DataVersion/delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "workspace123", + "api-version": "2021-03-01-preview", + "name": "dataset123", + "version": "1" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/DataVersion/get.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/DataVersion/get.json new file mode 100644 index 000000000000..e57de45a9dfe --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/DataVersion/get.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "workspace123", + "api-version": "2021-03-01-preview", + "name": "dataset123", + "version": "1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/data/dataset123/versions/1", + "name": "1", + "type": "Microsoft.MachineLearningServices/workspaces/data/versions", + "properties": { + "datasetType": "Simple", + "datastoreId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/datastores/mydatastore", + "path": "path/to/file.csv", + "isAnonymous": true, + "description": "string", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + }, + "systemData": { + "createdAt": "2021-03-25T21:39:02.230Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2021-03-25T21:39:02.230Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/DataVersion/list.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/DataVersion/list.json new file mode 100644 index 000000000000..237aaf98a68b --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/DataVersion/list.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "workspace123", + "api-version": "2021-03-01-preview", + "name": "dataset123" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/data/dataset123/versions/1", + "name": "1", + "type": "Microsoft.MachineLearningServices/workspaces/data/versions", + "properties": { + "datasetType": "Simple", + "datastoreId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/datastores/mydatastore", + "path": "path/to/file.csv", + "isAnonymous": true, + "description": "string", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + }, + "systemData": { + "createdAt": "2021-03-25T21:39:02.230Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2021-03-25T21:39:02.230Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + ], + "nextLink": "string" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Datastore/AzureBlobWAccountKey/createOrUpdate.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Datastore/AzureBlobWAccountKey/createOrUpdate.json new file mode 100644 index 000000000000..4256b6a716c7 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Datastore/AzureBlobWAccountKey/createOrUpdate.json @@ -0,0 +1,136 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "testworkspace", + "api-version": "2021-03-01-preview", + "name": "testDatastore", + "body": { + "properties": { + "contents": { + "contentsType": "AzureBlob", + "credentials": { + "credentialsType": "AccountKey", + "secrets": { + "secretsType": "AccountKey", + "key": "string" + } + }, + "accountName": "string", + "containerName": "string", + "endpoint": "core.windows.net", + "protocol": "https" + }, + "isDefault": true, + "linkedInfo": { + "linkedId": "string", + "linkedResourceName": "string", + "origin": "Synapse" + }, + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "description": "string", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + } + } + }, + "responses": { + "200": { + "body": { + "systemData": { + "createdAt": "2021-03-25T21:00:18.462Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2021-03-25T21:00:18.462Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/datastores/testDatastore", + "name": "testDatastore", + "type": "Microsoft.MachineLearningServices/workspaces/datastores", + "properties": { + "contents": { + "contentsType": "AzureBlob", + "credentials": { + "credentialsType": "AccountKey" + }, + "accountName": "string", + "containerName": "string", + "endpoint": "core.windows.net", + "protocol": "https" + }, + "hasBeenValidated": true, + "isDefault": true, + "linkedInfo": { + "linkedId": "string", + "linkedResourceName": "string", + "origin": "Synapse" + }, + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "description": "string", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + } + } + }, + "201": { + "body": { + "systemData": { + "createdAt": "2021-03-25T21:00:18.462Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2021-03-25T21:00:18.462Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/datastores/testDatastore", + "name": "testDatastore", + "type": "Microsoft.MachineLearningServices/workspaces/datastores", + "properties": { + "contents": { + "contentsType": "AzureBlob", + "credentials": { + "credentialsType": "AccountKey" + }, + "accountName": "string", + "containerName": "string", + "endpoint": "core.windows.net", + "protocol": "https" + }, + "hasBeenValidated": true, + "isDefault": true, + "linkedInfo": { + "linkedId": "string", + "linkedResourceName": "string", + "origin": "Synapse" + }, + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "description": "string", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Datastore/AzureDataLakeGen1WServicePrincipal/createOrUpdate.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Datastore/AzureDataLakeGen1WServicePrincipal/createOrUpdate.json new file mode 100644 index 000000000000..4fc78ee17415 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Datastore/AzureDataLakeGen1WServicePrincipal/createOrUpdate.json @@ -0,0 +1,139 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "testworkspace", + "api-version": "2021-03-01-preview", + "name": "testDatastore", + "body": { + "properties": { + "contents": { + "contentsType": "AzureDataLakeGen1", + "credentials": { + "credentialsType": "ServicePrincipal", + "authorityUrl": "string", + "resourceUri": "string", + "tenantId": "00000000-1111-2222-3333-444444444444", + "clientId": "00000000-1111-2222-3333-444444444444", + "secrets": { + "secretsType": "ServicePrincipal", + "clientSecret": "string" + } + }, + "storeName": "testStore" + }, + "isDefault": true, + "linkedInfo": { + "linkedId": "string", + "linkedResourceName": "string", + "origin": "Synapse" + }, + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "description": "string", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + } + } + }, + "responses": { + "200": { + "body": { + "systemData": { + "createdAt": "2021-03-25T21:00:18.462Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2021-03-25T21:00:18.462Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/datastores/testDatastore", + "name": "testDatastore", + "type": "Microsoft.MachineLearningServices/workspaces/datastores", + "properties": { + "contents": { + "contentsType": "AzureDataLakeGen1", + "credentials": { + "credentialsType": "ServicePrincipal", + "authorityUrl": "string", + "resourceUri": "string", + "tenantId": "00000000-1111-2222-3333-444444444444", + "clientId": "00000000-1111-2222-3333-444444444444" + }, + "storeName": "testStore" + }, + "hasBeenValidated": true, + "isDefault": true, + "linkedInfo": { + "linkedId": "string", + "linkedResourceName": "string", + "origin": "Synapse" + }, + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "description": "string", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + } + } + }, + "201": { + "body": { + "systemData": { + "createdAt": "2021-03-25T21:00:18.462Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2021-03-25T21:00:18.462Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/datastores/testDatastore", + "name": "testDatastore", + "type": "Microsoft.MachineLearningServices/workspaces/datastores", + "properties": { + "contents": { + "contentsType": "AzureDataLakeGen1", + "credentials": { + "credentialsType": "ServicePrincipal", + "authorityUrl": "string", + "resourceUri": "string", + "tenantId": "00000000-1111-2222-3333-444444444444", + "clientId": "00000000-1111-2222-3333-444444444444" + }, + "storeName": "testStore" + }, + "hasBeenValidated": true, + "isDefault": true, + "linkedInfo": { + "linkedId": "string", + "linkedResourceName": "string", + "origin": "Synapse" + }, + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "description": "string", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Datastore/AzureDataLakeGen2WServicePrincipal/createOrUpdate.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Datastore/AzureDataLakeGen2WServicePrincipal/createOrUpdate.json new file mode 100644 index 000000000000..c01877c5ce1b --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Datastore/AzureDataLakeGen2WServicePrincipal/createOrUpdate.json @@ -0,0 +1,148 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "testworkspace", + "api-version": "2021-03-01-preview", + "name": "testDatastore", + "body": { + "properties": { + "contents": { + "contentsType": "AzureBlob", + "credentials": { + "credentialsType": "ServicePrincipal", + "authorityUrl": "string", + "resourceUri": "string", + "tenantId": "00000000-1111-2222-3333-444444444444", + "clientId": "00000000-1111-2222-3333-444444444444", + "secrets": { + "secretsType": "ServicePrincipal", + "clientSecret": "string" + } + }, + "accountName": "string", + "containerName": "string", + "endpoint": "core.windows.net", + "protocol": "https" + }, + "isDefault": true, + "linkedInfo": { + "linkedId": "string", + "linkedResourceName": "string", + "origin": "Synapse" + }, + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "description": "string", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + } + } + }, + "responses": { + "200": { + "body": { + "systemData": { + "createdAt": "2021-03-25T21:00:18.462Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2021-03-25T21:00:18.462Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/datastores/testDatastore", + "name": "testDatastore", + "type": "Microsoft.MachineLearningServices/workspaces/datastores", + "properties": { + "contents": { + "contentsType": "AzureBlob", + "credentials": { + "credentialsType": "ServicePrincipal", + "authorityUrl": "string", + "resourceUri": "string", + "tenantId": "00000000-1111-2222-3333-444444444444", + "clientId": "00000000-1111-2222-3333-444444444444" + }, + "accountName": "string", + "containerName": "string", + "endpoint": "core.windows.net", + "protocol": "https" + }, + "hasBeenValidated": true, + "isDefault": true, + "linkedInfo": { + "linkedId": "string", + "linkedResourceName": "string", + "origin": "Synapse" + }, + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "description": "string", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + } + } + }, + "201": { + "body": { + "systemData": { + "createdAt": "2021-03-25T21:00:18.462Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2021-03-25T21:00:18.462Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/datastores/testDatastore", + "name": "testDatastore", + "type": "Microsoft.MachineLearningServices/workspaces/datastores", + "properties": { + "contents": { + "contentsType": "AzureBlob", + "credentials": { + "credentialsType": "ServicePrincipal", + "authorityUrl": "string", + "resourceUri": "string", + "tenantId": "00000000-1111-2222-3333-444444444444", + "clientId": "00000000-1111-2222-3333-444444444444" + }, + "accountName": "string", + "containerName": "string", + "endpoint": "core.windows.net", + "protocol": "https" + }, + "hasBeenValidated": true, + "isDefault": true, + "linkedInfo": { + "linkedId": "string", + "linkedResourceName": "string", + "origin": "Synapse" + }, + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "description": "string", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Datastore/AzureFileWAccountKey/createOrUpdate.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Datastore/AzureFileWAccountKey/createOrUpdate.json new file mode 100644 index 000000000000..2147d4985c96 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Datastore/AzureFileWAccountKey/createOrUpdate.json @@ -0,0 +1,136 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "testworkspace", + "api-version": "2021-03-01-preview", + "name": "testDatastore", + "body": { + "properties": { + "contents": { + "contentsType": "AzureFile", + "credentials": { + "credentialsType": "AccountKey", + "secrets": { + "secretsType": "AccountKey", + "key": "string" + } + }, + "accountName": "string", + "containerName": "string", + "endpoint": "core.windows.net", + "protocol": "https" + }, + "isDefault": true, + "linkedInfo": { + "linkedId": "string", + "linkedResourceName": "string", + "origin": "Synapse" + }, + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "description": "string", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + } + } + }, + "responses": { + "200": { + "body": { + "systemData": { + "createdAt": "2021-03-25T21:00:18.462Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2021-03-25T21:00:18.462Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/datastores/testDatastore", + "name": "testDatastore", + "type": "Microsoft.MachineLearningServices/workspaces/datastores", + "properties": { + "contents": { + "contentsType": "AzureFile", + "credentials": { + "credentialsType": "AccountKey" + }, + "accountName": "string", + "containerName": "string", + "endpoint": "core.windows.net", + "protocol": "https" + }, + "hasBeenValidated": true, + "isDefault": true, + "linkedInfo": { + "linkedId": "string", + "linkedResourceName": "string", + "origin": "Synapse" + }, + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "description": "string", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + } + } + }, + "201": { + "body": { + "systemData": { + "createdAt": "2021-03-25T21:00:18.462Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2021-03-25T21:00:18.462Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/datastores/testDatastore", + "name": "testDatastore", + "type": "Microsoft.MachineLearningServices/workspaces/datastores", + "properties": { + "contents": { + "contentsType": "AzureFile", + "credentials": { + "credentialsType": "AccountKey" + }, + "accountName": "string", + "containerName": "string", + "endpoint": "core.windows.net", + "protocol": "https" + }, + "hasBeenValidated": true, + "isDefault": true, + "linkedInfo": { + "linkedId": "string", + "linkedResourceName": "string", + "origin": "Synapse" + }, + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "description": "string", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Datastore/AzurePostgreSqlWSqlAdmin/createOrUpdate.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Datastore/AzurePostgreSqlWSqlAdmin/createOrUpdate.json new file mode 100644 index 000000000000..cfc68b024e2a --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Datastore/AzurePostgreSqlWSqlAdmin/createOrUpdate.json @@ -0,0 +1,142 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "testworkspace", + "api-version": "2021-03-01-preview", + "name": "testDatastore", + "body": { + "properties": { + "contents": { + "contentsType": "AzurePostgreSql", + "credentials": { + "credentialsType": "SqlAdmin", + "userId": "string", + "secrets": { + "secretsType": "SqlAdmin", + "password": "string" + } + }, + "enableSSL": true, + "databaseName": "string", + "endpoint": "string", + "portNumber": 123, + "serverName": "string" + }, + "isDefault": true, + "linkedInfo": { + "linkedId": "string", + "linkedResourceName": "string", + "origin": "Synapse" + }, + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "description": "string", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + } + } + }, + "responses": { + "200": { + "body": { + "systemData": { + "createdAt": "2021-03-25T21:00:18.462Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2021-03-25T21:00:18.462Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/datastores/testDatastore", + "name": "testDatastore", + "type": "Microsoft.MachineLearningServices/workspaces/datastores", + "properties": { + "contents": { + "contentsType": "AzurePostgreSql", + "credentials": { + "credentialsType": "SqlAdmin", + "userId": "string" + }, + "enableSSL": true, + "databaseName": "string", + "endpoint": "string", + "portNumber": 123, + "serverName": "string" + }, + "hasBeenValidated": true, + "isDefault": true, + "linkedInfo": { + "linkedId": "string", + "linkedResourceName": "string", + "origin": "Synapse" + }, + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "description": "string", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + } + } + }, + "201": { + "body": { + "systemData": { + "createdAt": "2021-03-25T21:00:18.462Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2021-03-25T21:00:18.462Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/datastores/testDatastore", + "name": "testDatastore", + "type": "Microsoft.MachineLearningServices/workspaces/datastores", + "properties": { + "contents": { + "contentsType": "AzurePostgreSql", + "credentials": { + "credentialsType": "SqlAdmin", + "userId": "string" + }, + "enableSSL": true, + "databaseName": "string", + "endpoint": "string", + "portNumber": 123, + "serverName": "string" + }, + "hasBeenValidated": true, + "isDefault": true, + "linkedInfo": { + "linkedId": "string", + "linkedResourceName": "string", + "origin": "Synapse" + }, + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "description": "string", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Datastore/AzureSqlDatabaseWSqlAdmin/createOrUpdate.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Datastore/AzureSqlDatabaseWSqlAdmin/createOrUpdate.json new file mode 100644 index 000000000000..605e1811706c --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Datastore/AzureSqlDatabaseWSqlAdmin/createOrUpdate.json @@ -0,0 +1,139 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "testworkspace", + "api-version": "2021-03-01-preview", + "name": "testDatastore", + "body": { + "properties": { + "contents": { + "contentsType": "AzureSqlDatabase", + "credentials": { + "credentialsType": "SqlAdmin", + "userId": "string", + "secrets": { + "secretsType": "SqlAdmin", + "password": "string" + } + }, + "databaseName": "string", + "endpoint": "string", + "portNumber": 123, + "serverName": "string" + }, + "isDefault": true, + "linkedInfo": { + "linkedId": "string", + "linkedResourceName": "string", + "origin": "Synapse" + }, + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "description": "string", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + } + } + }, + "responses": { + "200": { + "body": { + "systemData": { + "createdAt": "2021-03-25T21:00:18.462Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2021-03-25T21:00:18.462Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/datastores/testDatastore", + "name": "testDatastore", + "type": "Microsoft.MachineLearningServices/workspaces/datastores", + "properties": { + "contents": { + "contentsType": "AzureSqlDatabase", + "credentials": { + "credentialsType": "SqlAdmin", + "userId": "string" + }, + "databaseName": "string", + "endpoint": "string", + "portNumber": 123, + "serverName": "string" + }, + "hasBeenValidated": true, + "isDefault": true, + "linkedInfo": { + "linkedId": "string", + "linkedResourceName": "string", + "origin": "Synapse" + }, + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "description": "string", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + } + } + }, + "201": { + "body": { + "systemData": { + "createdAt": "2021-03-25T21:00:18.462Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2021-03-25T21:00:18.462Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/datastores/testDatastore", + "name": "testDatastore", + "type": "Microsoft.MachineLearningServices/workspaces/datastores", + "properties": { + "contents": { + "contentsType": "AzureSqlDatabase", + "credentials": { + "credentialsType": "SqlAdmin", + "userId": "string" + }, + "databaseName": "string", + "endpoint": "string", + "portNumber": 123, + "serverName": "string" + }, + "hasBeenValidated": true, + "isDefault": true, + "linkedInfo": { + "linkedId": "string", + "linkedResourceName": "string", + "origin": "Synapse" + }, + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "description": "string", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Datastore/delete.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Datastore/delete.json new file mode 100644 index 000000000000..d953f417799a --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Datastore/delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "testworkspace", + "api-version": "2021-03-01-preview", + "name": "testDatastore" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Datastore/get.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Datastore/get.json new file mode 100644 index 000000000000..6d9a1ff86179 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Datastore/get.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "testworkspace", + "api-version": "2021-03-01-preview", + "name": "testDatastore" + }, + "responses": { + "200": { + "body": { + "systemData": { + "createdAt": "2021-03-25T21:00:18.462Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2021-03-25T21:00:18.462Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/datastores/testDatastore", + "name": "testDatastore", + "type": "Microsoft.MachineLearningServices/workspaces/datastores", + "properties": { + "contents": { + "contentsType": "AzureBlob", + "credentials": { + "credentialsType": "AccountKey" + }, + "accountName": "string", + "containerName": "string", + "endpoint": "core.windows.net", + "protocol": "https" + }, + "hasBeenValidated": true, + "isDefault": true, + "linkedInfo": { + "linkedId": "string", + "linkedResourceName": "string", + "origin": "Synapse" + }, + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "description": "string", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Datastore/list.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Datastore/list.json new file mode 100644 index 000000000000..37bf195e3f4e --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Datastore/list.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "testworkspace", + "api-version": "2021-03-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "systemData": { + "createdAt": "2021-03-25T21:00:18.462Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2021-03-25T21:00:18.462Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/datastores/testDatastore", + "name": "testDatastore", + "type": "Microsoft.MachineLearningServices/workspaces/datastores", + "properties": { + "contents": { + "contentsType": "AzureBlob", + "credentials": { + "credentialsType": "AccountKey" + }, + "accountName": "string", + "containerName": "string", + "endpoint": "core.windows.net", + "protocol": "https" + }, + "hasBeenValidated": true, + "isDefault": true, + "linkedInfo": { + "linkedId": "string", + "linkedResourceName": "string", + "origin": "Synapse" + }, + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "description": "string", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + } + } + ], + "nextLink": "string" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Datastore/listSecrets.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Datastore/listSecrets.json new file mode 100644 index 000000000000..ca384be6e731 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Datastore/listSecrets.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "testworkspace", + "api-version": "2021-03-01-preview", + "name": "testDatastore" + }, + "responses": { + "200": { + "body": { + "secretsType": "AccountKey", + "key": "string" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/EnvironmentContainer/createOrUpdate.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/EnvironmentContainer/createOrUpdate.json new file mode 100644 index 000000000000..e596ec038359 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/EnvironmentContainer/createOrUpdate.json @@ -0,0 +1,82 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "testworkspace", + "api-version": "2021-03-01-preview", + "name": "testEnvironment", + "body": { + "properties": { + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "description": "string" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/environments/testEnvironment", + "name": "testEnvironment", + "type": "Microsoft.MachineLearningServices/workspaces/environments", + "properties": { + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "description": "string" + }, + "systemData": { + "createdAt": "2020-12-04T03:39:11.300Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-12-04T03:39:11.300Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/environments/testEnvironment", + "name": "testEnvironment", + "type": "Microsoft.MachineLearningServices/workspaces/environments", + "properties": { + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "description": "string" + }, + "systemData": { + "createdAt": "2020-12-04T03:39:11.301Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-12-04T03:39:11.301Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/EnvironmentContainer/delete.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/EnvironmentContainer/delete.json new file mode 100644 index 000000000000..9198deab4166 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/EnvironmentContainer/delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "testworkspace", + "api-version": "2021-03-01-preview", + "name": "testContainer" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/EnvironmentContainer/get.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/EnvironmentContainer/get.json new file mode 100644 index 000000000000..46258d640ce4 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/EnvironmentContainer/get.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "testworkspace", + "api-version": "2021-03-01-preview", + "name": "testEnvironment" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/environments/testEnvironment", + "name": "testEnvironment", + "type": "Microsoft.MachineLearningServices/workspaces/environments", + "properties": { + "description": "string", + "tags": { + "tag1": "value1", + "tag2": "value2" + } + }, + "systemData": { + "createdAt": "2020-12-01T12:00:00.000Z", + "createdBy": "John Smith", + "createdByType": "User", + "lastModifiedAt": "2020-12-01T12:00:00.000Z", + "lastModifiedBy": "John Smith", + "lastModifiedByType": "User" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/EnvironmentContainer/list.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/EnvironmentContainer/list.json new file mode 100644 index 000000000000..2d7de2bcc85e --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/EnvironmentContainer/list.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "testworkspace", + "api-version": "2021-03-01-preview", + "$skipToken": "skiptoken" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/environments/testEnvironment", + "name": "testEnvironment", + "type": "Microsoft.MachineLearningServices/workspaces/environments", + "properties": { + "description": "string", + "tags": { + "tag1": "value1", + "tag2": "value2" + } + }, + "systemData": { + "createdAt": "2020-12-01T12:00:00.000Z", + "createdBy": "John Smith", + "createdByType": "User", + "lastModifiedAt": "2020-12-01T12:00:00.000Z", + "lastModifiedBy": "John Smith", + "lastModifiedByType": "User" + } + } + ], + "nextLink": "string" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/EnvironmentSpecificationVersion/createOrUpdate.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/EnvironmentSpecificationVersion/createOrUpdate.json new file mode 100644 index 000000000000..581526e4d985 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/EnvironmentSpecificationVersion/createOrUpdate.json @@ -0,0 +1,98 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "testworkspace", + "name": "testEnvironment", + "version": "1", + "api-version": "2021-03-01-preview", + "body": { + "properties": { + "docker": { + "dockerSpecificationType": "Build", + "dockerfile": "FROM myimage" + }, + "condaFile": "channels:\n- defaults\ndependencies:\n- python=3.7.7\nname: my-env", + "description": "string", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/environments/testEnvironment/versions/1", + "name": "1", + "type": "Microsoft.MachineLearningServices/workspaces/environments/versions", + "properties": { + "docker": { + "dockerSpecificationType": "Build", + "dockerfile": "FROM myimage" + }, + "condaFile": "channels:\n- defaults\ndependencies:\n- python=3.7.7\nname: my-env", + "description": "string", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + }, + "systemData": { + "createdAt": "2020-12-08T01:15:45.909Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-12-08T01:15:45.909Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/environments/testEnvironment/versions/1", + "name": "1", + "type": "Microsoft.MachineLearningServices/workspaces/environments/versions", + "properties": { + "docker": { + "dockerSpecificationType": "Build", + "dockerfile": "FROM myimage" + }, + "condaFile": "channels:\n- defaults\ndependencies:\n- python=3.7.7\nname: my-env", + "description": "string", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + }, + "systemData": { + "createdAt": "2020-12-08T01:15:45.909Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-12-08T01:15:45.909Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/EnvironmentSpecificationVersion/delete.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/EnvironmentSpecificationVersion/delete.json new file mode 100644 index 000000000000..11bfc42fbc54 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/EnvironmentSpecificationVersion/delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "testworkspace", + "name": "testContainer", + "version": "1", + "api-version": "2021-03-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/EnvironmentSpecificationVersion/get.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/EnvironmentSpecificationVersion/get.json new file mode 100644 index 000000000000..09d4f131f6c8 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/EnvironmentSpecificationVersion/get.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "testworkspace", + "name": "testEnvironment", + "version": "1", + "api-version": "2021-03-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/environments/testEnvironment/versions/1", + "name": "1", + "type": "Microsoft.MachineLearningServices/workspaces/environments/versions", + "properties": { + "docker": { + "dockerSpecificationType": "Build", + "dockerfile": "FROM myimage" + }, + "condaFile": "channels:\n- defaults\ndependencies:\n- python=3.7.7\nname: my-env", + "description": "string", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + }, + "systemData": { + "createdAt": "2020-12-08T01:15:45.909Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-12-08T01:15:45.909Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/EnvironmentSpecificationVersion/list.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/EnvironmentSpecificationVersion/list.json new file mode 100644 index 000000000000..388d9d8f13f0 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/EnvironmentSpecificationVersion/list.json @@ -0,0 +1,82 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "testworkspace", + "name": "testEnvironment", + "api-version": "2021-03-01-preview", + "$skipToken": "skiptoken" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/environments/testEnvironment/versions/1", + "name": "1", + "type": "Microsoft.MachineLearningServices/workspaces/environments/versions", + "properties": { + "docker": { + "dockerSpecificationType": "Build", + "dockerfile": "FROM myimage" + }, + "condaFile": "channels:\n- defaults\ndependencies:\n- python=3.7.7\nname: my-env", + "description": "string", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + }, + "systemData": { + "createdAt": "2020-12-08T01:15:45.909Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-12-08T01:15:45.909Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/environments/testEnvironment/versions/1", + "name": "2", + "type": "Microsoft.MachineLearningServices/workspaces/environments/versions", + "properties": { + "environmentSpecificationType": "Curated", + "docker": { + "dockerSpecificationType": "Build", + "dockerfile": "FROM myimage" + }, + "condaFile": "channels:\n- defaults\ndependencies:\n- python=3.7.7\nname: my-env", + "description": "string", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + }, + "systemData": { + "createdAt": "2020-12-08T01:15:45.909Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-12-08T01:15:45.909Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + ], + "nextLink": "string" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Job/CommandJob/createOrUpdate.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Job/CommandJob/createOrUpdate.json new file mode 100644 index 000000000000..64e43cbdfe63 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Job/CommandJob/createOrUpdate.json @@ -0,0 +1,181 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "testworkspace", + "api-version": "2021-03-01-preview", + "id": "testJob", + "body": { + "properties": { + "jobType": "Command", + "codeId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/codes/mycode/versions/1", + "command": "python file.py test", + "environmentId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/environments/AzureML-Tutorial/versions/1", + "compute": { + "target": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/computes/mycompute", + "instanceCount": 1 + }, + "timeout": "PT1M", + "experimentName": "myExperiment", + "inputDataBindings": { + "test": { + "dataId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/data/mydataset/versions/1", + "pathOnCompute": "path/on/compute" + } + }, + "outputDataBindings": { + "test": { + "datastoreId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/datastore/mydatastore", + "pathOnCompute": "path/on/compute" + } + }, + "identity": { + "identityType": "AMLToken" + }, + "distribution": { + "distributionType": "PyTorch", + "processCount": 2 + }, + "environmentVariables": { + "MY_ENV_VAR1": "string", + "MY_ENV_VAR2": "string" + }, + "description": "string", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/jobs/testJob", + "name": "testJob", + "type": "Microsoft.MachineLearningServices/workspaces/jobs", + "properties": { + "jobType": "Command", + "codeId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/codes/mycode/versions/1", + "command": "python file.py test", + "environmentId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/environments/AzureML-Tutorial/versions/1", + "compute": { + "target": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/computes/mycompute", + "instanceCount": 1 + }, + "timeout": "PT1M", + "experimentName": "myExperiment", + "inputDataBindings": { + "test": { + "dataId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/data/mydataset/versions/1", + "pathOnCompute": "path/on/compute" + } + }, + "outputDataBindings": { + "test": { + "datastoreId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/datastore/mydatastore", + "pathOnCompute": "path/on/compute" + } + }, + "identity": { + "identityType": "AMLToken" + }, + "distribution": { + "distributionType": "PyTorch", + "processCount": 2 + }, + "environmentVariables": { + "MY_ENV_VAR1": "string", + "MY_ENV_VAR2": "string" + }, + "description": "string", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + }, + "systemData": { + "createdAt": "2020-12-08T01:18:36.134Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-12-08T01:18:36.134Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/jobs/testJob", + "name": "testJob", + "type": "Microsoft.MachineLearningServices/workspaces/jobs", + "properties": { + "jobType": "Command", + "codeId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/codes/mycode/versions/1", + "command": "python file.py test", + "environmentId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/environments/AzureML-Tutorial/versions/1", + "compute": { + "target": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/computes/mycompute", + "instanceCount": 1 + }, + "timeout": "PT1M", + "experimentName": "myExperiment", + "inputDataBindings": { + "test": { + "dataId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/data/mydataset/versions/1", + "pathOnCompute": "path/on/compute" + } + }, + "outputDataBindings": { + "test": { + "datastoreId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/datastore/mydatastore", + "pathOnCompute": "path/on/compute" + } + }, + "identity": { + "identityType": "AMLToken" + }, + "distribution": { + "distributionType": "PyTorch", + "processCount": 2 + }, + "environmentVariables": { + "MY_ENV_VAR1": "string", + "MY_ENV_VAR2": "string" + }, + "description": "string", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + }, + "systemData": { + "createdAt": "2020-12-08T01:18:36.134Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-12-08T01:18:36.134Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Job/CommandJob/get.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Job/CommandJob/get.json new file mode 100644 index 000000000000..554ab3dff455 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Job/CommandJob/get.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "testworkspace", + "api-version": "2021-03-01-preview", + "id": "testJob" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/jobs/testJob", + "name": "testJob", + "type": "Microsoft.MachineLearningServices/workspaces/jobs", + "properties": { + "jobType": "Command", + "provisioningState": "Succeeded", + "status": "Running", + "interactionEndpoints": { + "Tracking": { + "jobEndpointType": "Tracking", + "port": null, + "endpoint": "azureml://tracking/endpoint", + "properties": {} + }, + "Studio": { + "jobEndpointType": "Studio", + "port": null, + "endpoint": "https://studio/endpoint", + "properties": {} + } + }, + "output": { + "datastoreId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/datastore/outputdatastore", + "path": "path/to/output" + }, + "codeId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/codes/mycode/versions/1", + "command": "python file.py test", + "environmentId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/environments/AzureML-Tutorial/versions/1", + "compute": { + "target": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/computes/mycompute", + "instanceCount": 1 + }, + "timeout": "PT1M", + "experimentName": "myExperiment", + "inputDataBindings": { + "test": { + "dataId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/data/mydataset/versions/1", + "pathOnCompute": "path/on/compute" + } + }, + "outputDataBindings": { + "test": { + "datastoreId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/datastore/mydatastore", + "pathOnCompute": "path/on/compute" + } + }, + "identity": { + "identityType": "AMLToken" + }, + "distribution": { + "distributionType": "PyTorch", + "processCount": 2 + }, + "environmentVariables": { + "MY_ENV_VAR1": "string", + "MY_ENV_VAR2": "string" + }, + "description": "string", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + }, + "systemData": { + "createdAt": "2020-12-08T01:18:36.134Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-12-08T01:18:36.134Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Job/CommandJob/list.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Job/CommandJob/list.json new file mode 100644 index 000000000000..43150c34a05f --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Job/CommandJob/list.json @@ -0,0 +1,98 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "testworkspace", + "api-version": "2021-03-01-preview", + "jobType": "Command", + "$skipToken": "skiptoken" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/jobs/testJob", + "name": "testJob", + "type": "Microsoft.MachineLearningServices/workspaces/jobs", + "properties": { + "jobType": "Command", + "provisioningState": "Succeeded", + "status": "Running", + "interactionEndpoints": { + "Tracking": { + "jobEndpointType": "Tracking", + "port": null, + "endpoint": "azureml://tracking/endpoint", + "properties": {} + }, + "Studio": { + "jobEndpointType": "Studio", + "port": null, + "endpoint": "https://studio/endpoint", + "properties": {} + } + }, + "output": { + "datastoreId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/datastore/outputdatastore", + "path": "path/to/output" + }, + "codeId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/codes/mycode/versions/1", + "command": "python file.py test", + "environmentId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/environments/AzureML-Tutorial/versions/1", + "compute": { + "target": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/computes/mycompute", + "instanceCount": 1 + }, + "timeout": "PT1M", + "experimentName": "myExperiment", + "inputDataBindings": { + "test": { + "dataId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/data/mydataset/versions/1", + "pathOnCompute": "path/on/compute" + } + }, + "outputDataBindings": { + "test": { + "datastoreId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/datastore/mydatastore", + "pathOnCompute": "path/on/compute" + } + }, + "identity": { + "identityType": "AMLToken" + }, + "distribution": { + "distributionType": "PyTorch", + "processCount": 2 + }, + "environmentVariables": { + "MY_ENV_VAR1": "string", + "MY_ENV_VAR2": "string" + }, + "description": "string", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + }, + "systemData": { + "createdAt": "2020-12-08T01:18:36.134Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-12-08T01:18:36.134Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + ], + "nextLink": "string" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Job/SweepJob/createOrUpdate.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Job/SweepJob/createOrUpdate.json new file mode 100644 index 000000000000..eda95df628e9 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Job/SweepJob/createOrUpdate.json @@ -0,0 +1,217 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "testworkspace", + "api-version": "2021-03-01-preview", + "id": "testJob", + "body": { + "properties": { + "jobType": "Sweep", + "searchSpace": { + "name": {} + }, + "objective": { + "primaryMetric": "string", + "goal": "Minimize" + }, + "algorithm": "Grid", + "description": "string", + "timeout": "PT1M", + "identity": { + "identityType": "AMLToken" + }, + "compute": { + "target": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/computes/mycompute", + "instanceCount": 1 + }, + "maxTotalTrials": 1, + "maxConcurrentTrials": 1, + "trial": { + "codeId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/codes/mycode/versions/1", + "command": "python file.py test", + "environmentId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/environments/AzureML-Tutorial/versions/1", + "timeout": "PT1M", + "inputDataBindings": { + "test": { + "dataId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/data/mydataset/versions/1", + "pathOnCompute": "path/on/compute" + } + }, + "outputDataBindings": { + "test": { + "datastoreId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/datastore/mydatastore", + "pathOnCompute": "path/on/compute" + } + }, + "distribution": { + "distributionType": "PyTorch", + "processCount": 2 + }, + "environmentVariables": { + "MY_ENV_VAR1": "string", + "MY_ENV_VAR2": "string" + } + }, + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/jobs/testJob", + "name": "testJob", + "type": "Microsoft.MachineLearningServices/workspaces/jobs", + "properties": { + "jobType": "Sweep", + "searchSpace": { + "name": {} + }, + "objective": { + "primaryMetric": "string", + "goal": "Minimize" + }, + "algorithm": "Grid", + "description": "string", + "timeout": "PT1M", + "identity": { + "identityType": "AMLToken" + }, + "compute": { + "target": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/computes/mycompute", + "instanceCount": 1 + }, + "maxTotalTrials": 1, + "maxConcurrentTrials": 1, + "trial": { + "codeId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/codes/mycode/versions/1", + "command": "python file.py test", + "environmentId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/environments/AzureML-Tutorial/versions/1", + "timeout": "PT1M", + "inputDataBindings": { + "test": { + "dataId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/data/mydataset/versions/1", + "pathOnCompute": "path/on/compute" + } + }, + "outputDataBindings": { + "test": { + "datastoreId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/datastore/mydatastore", + "pathOnCompute": "path/on/compute" + } + }, + "distribution": { + "distributionType": "PyTorch", + "processCount": 2 + }, + "environmentVariables": { + "MY_ENV_VAR1": "string", + "MY_ENV_VAR2": "string" + } + }, + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + }, + "systemData": { + "createdAt": "2020-12-08T01:18:36.134Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-12-08T01:18:36.134Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + }, + "201": { + "body": { + "id": "string", + "name": "string", + "type": "string", + "properties": { + "jobType": "Sweep", + "searchSpace": { + "name": {} + }, + "objective": { + "primaryMetric": "string", + "goal": "Minimize" + }, + "algorithm": "Grid", + "description": "string", + "timeout": "PT1M", + "identity": { + "identityType": "AMLToken" + }, + "compute": { + "target": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/computes/mycompute", + "instanceCount": 1 + }, + "maxTotalTrials": 1, + "maxConcurrentTrials": 1, + "trial": { + "codeId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/codes/mycode/versions/1", + "command": "python file.py test", + "environmentId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/environments/AzureML-Tutorial/versions/1", + "timeout": "PT1M", + "inputDataBindings": { + "test": { + "dataId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/data/mydataset/versions/1", + "pathOnCompute": "path/on/compute" + } + }, + "outputDataBindings": { + "test": { + "datastoreId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/datastore/mydatastore", + "pathOnCompute": "path/on/compute" + } + }, + "distribution": { + "distributionType": "PyTorch", + "processCount": 2 + }, + "environmentVariables": { + "MY_ENV_VAR1": "string", + "MY_ENV_VAR2": "string" + } + }, + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + }, + "systemData": { + "createdAt": "2020-12-08T01:18:36.134Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-12-08T01:18:36.134Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Job/SweepJob/get.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Job/SweepJob/get.json new file mode 100644 index 000000000000..4e010f6936c1 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Job/SweepJob/get.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "testworkspace", + "api-version": "2021-03-01-preview", + "id": "testJob" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/jobs/testJob", + "name": "testJob", + "type": "Microsoft.MachineLearningServices/workspaces/jobs", + "properties": { + "jobType": "Sweep", + "searchSpace": { + "name": {} + }, + "objective": { + "primaryMetric": "string", + "goal": "Minimize" + }, + "algorithm": "Grid", + "description": "string", + "timeout": "PT1M", + "identity": { + "identityType": "AMLToken" + }, + "compute": { + "target": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/computes/mycompute", + "instanceCount": 1 + }, + "maxTotalTrials": 1, + "maxConcurrentTrials": 1, + "trial": { + "codeId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/codes/mycode/versions/1", + "command": "python file.py test", + "environmentId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/environments/AzureML-Tutorial/versions/1", + "timeout": "PT1M", + "inputDataBindings": { + "test": { + "dataId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/data/mydataset/versions/1", + "pathOnCompute": "path/on/compute" + } + }, + "outputDataBindings": { + "test": { + "datastoreId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/datastore/mydatastore", + "pathOnCompute": "path/on/compute" + } + }, + "distribution": { + "distributionType": "PyTorch", + "processCount": 2 + }, + "environmentVariables": { + "MY_ENV_VAR1": "string", + "MY_ENV_VAR2": "string" + } + }, + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + }, + "systemData": { + "createdAt": "2020-12-08T01:18:36.134Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-12-08T01:18:36.134Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Job/SweepJob/list.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Job/SweepJob/list.json new file mode 100644 index 000000000000..599a00dbdda0 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Job/SweepJob/list.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "testworkspace", + "api-version": "2021-03-01-preview", + "jobType": "Sweep", + "$skipToken": "skiptoken" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/jobs/testJob", + "name": "testJob", + "type": "Microsoft.MachineLearningServices/workspaces/jobs", + "properties": { + "jobType": "Sweep", + "searchSpace": { + "name": {} + }, + "objective": { + "primaryMetric": "string", + "goal": "Minimize" + }, + "algorithm": "Grid", + "description": "string", + "timeout": "PT1M", + "identity": { + "identityType": "AMLToken" + }, + "compute": { + "target": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/computes/mycompute", + "instanceCount": 1 + }, + "maxTotalTrials": 1, + "maxConcurrentTrials": 1, + "trial": { + "codeId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/codes/mycode/versions/1", + "command": "python file.py test", + "environmentId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/environments/AzureML-Tutorial/versions/1", + "timeout": "PT1M", + "inputDataBindings": { + "test": { + "dataId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/data/mydataset/versions/1", + "pathOnCompute": "path/on/compute" + } + }, + "outputDataBindings": { + "test": { + "datastoreId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/datastore/mydatastore", + "pathOnCompute": "path/on/compute" + } + }, + "distribution": { + "distributionType": "PyTorch", + "processCount": 2 + }, + "environmentVariables": { + "MY_ENV_VAR1": "string", + "MY_ENV_VAR2": "string" + } + }, + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + } + }, + "systemData": { + "createdAt": "2020-12-08T01:18:36.134Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-12-08T01:18:36.134Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + ], + "nextLink": "string" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Job/cancel.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Job/cancel.json new file mode 100644 index 000000000000..df2eaa220536 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Job/cancel.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "testworkspace", + "api-version": "2021-03-01-preview", + "id": "testJob" + }, + "responses": { + "200": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Job/delete.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Job/delete.json new file mode 100644 index 000000000000..3eb00d3f546a --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Job/delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "testworkspace", + "api-version": "2021-03-01-preview", + "id": "testJob" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/LabelingJob/createOrUpdate.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/LabelingJob/createOrUpdate.json new file mode 100644 index 000000000000..8cdc2d8909b1 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/LabelingJob/createOrUpdate.json @@ -0,0 +1,275 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workspace-1234", + "workspaceName": "testworkspace", + "api-version": "2021-03-01-preview", + "id": "testLabelingJob", + "body": { + "properties": { + "jobType": "Labeling", + "description": "string", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "labelCategories": { + "myCategory1": { + "displayName": "myCategory1Title", + "allowMultiSelect": true, + "classes": { + "myLabelClass1": { + "displayName": "myLabelClass1", + "subclasses": {} + }, + "myLabelClass2": { + "displayName": "myLabelClass2", + "subclasses": {} + } + } + }, + "myCategory2": { + "displayName": "myCategory2Title", + "allowMultiSelect": true, + "classes": { + "myLabelClass1": { + "displayName": "myLabelClass1", + "subclasses": {} + }, + "myLabelClass2": { + "displayName": "myLabelClass2", + "subclasses": {} + } + } + } + }, + "jobInstructions": { + "uri": "link/to/instructions" + }, + "datasetConfiguration": { + "assetName": "myAsset", + "incrementalDatasetRefreshEnabled": true, + "datasetVersion": "1" + }, + "mlAssistConfiguration": { + "inferencingComputeBinding": { + "target": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/computes/myscoringcompute", + "instanceCount": 1 + }, + "trainingComputeBinding": { + "target": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/computes/mytrainingcompute", + "instanceCount": 1 + }, + "mlAssistEnabled": true + }, + "labelingJobMediaProperties": { + "mediaType": "Image" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/labelingJobs/testLabelingJob", + "name": "testLabelingJob", + "type": "Microsoft.MachineLearningServices/workspaces/labelingJobs", + "properties": { + "jobType": "Labeling", + "description": "string", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "labelCategories": { + "myCategory1": { + "displayName": "myCategory1Title", + "allowMultiSelect": true, + "classes": { + "myLabelClass1": { + "displayName": "myLabelClass1", + "subclasses": {} + }, + "myLabelClass2": { + "displayName": "myLabelClass2", + "subclasses": {} + } + } + }, + "myCategory2": { + "displayName": "myCategory2Title", + "allowMultiSelect": true, + "classes": { + "myLabelClass1": { + "displayName": "myLabelClass1", + "subclasses": {} + }, + "myLabelClass2": { + "displayName": "myLabelClass2", + "subclasses": {} + } + } + } + }, + "jobInstructions": { + "uri": "link/to/instructions" + }, + "datasetConfiguration": { + "assetName": "myAsset", + "incrementalDatasetRefreshEnabled": true, + "datasetVersion": "1" + }, + "mlAssistConfiguration": { + "inferencingComputeBinding": { + "target": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/computes/myscoringcompute", + "instanceCount": 1 + }, + "trainingComputeBinding": { + "target": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/computes/mytrainingcompute", + "instanceCount": 1 + }, + "mlAssistEnabled": true + }, + "labelingJobMediaProperties": { + "mediaType": "Image" + }, + "projectId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", + "status": "NotStarted", + "progressMetrics": { + "totalDatapointCount": 0, + "completedDatapointCount": 0, + "skippedDatapointCount": 0, + "incrementalDatasetLastRefreshTime": "2020-12-08T01:23:37.234Z" + }, + "statusMessages": [ + { + "level": "Error", + "code": "string", + "message": "string", + "createdTimeUtc": "2020-12-08T01:23:37.234Z" + } + ], + "createdTimeUtc": "2020-12-08T01:23:37.234Z" + }, + "systemData": { + "createdAt": "2020-12-08T01:23:37.235Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-12-08T01:23:37.235Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/labelingJobs/testLabelingJob", + "name": "testLabelingJob", + "type": "Microsoft.MachineLearningServices/workspaces/labelingJobs", + "properties": { + "jobType": "Labeling", + "description": "string", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "labelCategories": { + "myCategory1": { + "displayName": "myCategory1Title", + "allowMultiSelect": true, + "classes": { + "myLabelClass1": { + "displayName": "myLabelClass1", + "subclasses": {} + }, + "myLabelClass2": { + "displayName": "myLabelClass2", + "subclasses": {} + } + } + }, + "myCategory2": { + "displayName": "myCategory2Title", + "allowMultiSelect": true, + "classes": { + "myLabelClass1": { + "displayName": "myLabelClass1", + "subclasses": {} + }, + "myLabelClass2": { + "displayName": "myLabelClass2", + "subclasses": {} + } + } + } + }, + "jobInstructions": { + "uri": "link/to/instructions" + }, + "datasetConfiguration": { + "assetName": "myAsset", + "incrementalDatasetRefreshEnabled": true, + "datasetVersion": "1" + }, + "mlAssistConfiguration": { + "inferencingComputeBinding": { + "target": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/computes/myscoringcompute", + "instanceCount": 1 + }, + "trainingComputeBinding": { + "target": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/computes/mytrainingcompute", + "instanceCount": 1 + }, + "mlAssistEnabled": true + }, + "labelingJobMediaProperties": { + "mediaType": "Image" + }, + "projectId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", + "status": "NotStarted", + "progressMetrics": { + "totalDatapointCount": 0, + "completedDatapointCount": 0, + "skippedDatapointCount": 0, + "incrementalDatasetLastRefreshTime": "2020-12-08T01:23:37.234Z" + }, + "statusMessages": [ + { + "level": "Error", + "code": "string", + "message": "string", + "createdTimeUtc": "2020-12-08T01:23:37.234Z" + } + ], + "createdTimeUtc": "2020-12-08T01:23:37.234Z" + }, + "systemData": { + "createdAt": "2020-12-08T01:23:37.235Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-12-08T01:23:37.235Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/LabelingJob/delete.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/LabelingJob/delete.json new file mode 100644 index 000000000000..1ba8bb4c1baf --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/LabelingJob/delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workspace-1234", + "workspaceName": "testworkspace", + "api-version": "2021-03-01-preview", + "id": "testLabelingJob" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/LabelingJob/exportLabels.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/LabelingJob/exportLabels.json new file mode 100644 index 000000000000..9618c15e7951 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/LabelingJob/exportLabels.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workspace-1234", + "workspaceName": "testworkspace", + "api-version": "2021-03-01-preview", + "id": "testLabelingJob", + "body": { + "format": "Dataset" + } + }, + "responses": { + "200": { + "body": { + "format": "Dataset", + "labelingJobId": "string", + "exportedRowCount": 0, + "startTimeUtc": "2021-02-08T23:34:40.730Z", + "endTimeUtc": "2021-02-08T23:34:40.730Z" + } + }, + "202": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/LabelingJob/get.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/LabelingJob/get.json new file mode 100644 index 000000000000..543d65f09dd1 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/LabelingJob/get.json @@ -0,0 +1,111 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workspace-1234", + "workspaceName": "testworkspace", + "api-version": "2021-03-01-preview", + "id": "testLabelingJob", + "includeJobInstructions": true, + "includeLabelCategories": true + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/labelingJobs/testLabelingJob", + "name": "testLabelingJob", + "type": "Microsoft.MachineLearningServices/workspaces/labelingJobs", + "properties": { + "jobType": "Labeling", + "description": "string", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "labelCategories": { + "myCategory1": { + "displayName": "myCategory1Title", + "allowMultiSelect": true, + "classes": { + "myLabelClass1": { + "displayName": "myLabelClass1", + "subclasses": {} + }, + "myLabelClass2": { + "displayName": "myLabelClass2", + "subclasses": {} + } + } + }, + "myCategory2": { + "displayName": "myCategory2Title", + "allowMultiSelect": true, + "classes": { + "myLabelClass1": { + "displayName": "myLabelClass1", + "subclasses": {} + }, + "myLabelClass2": { + "displayName": "myLabelClass2", + "subclasses": {} + } + } + } + }, + "jobInstructions": { + "uri": "link/to/instructions" + }, + "datasetConfiguration": { + "assetName": "myAsset", + "incrementalDatasetRefreshEnabled": true, + "datasetVersion": "1" + }, + "mlAssistConfiguration": { + "inferencingComputeBinding": { + "target": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/computes/myscoringcompute", + "instanceCount": 1 + }, + "trainingComputeBinding": { + "target": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/computes/mytrainingcompute", + "instanceCount": 1 + }, + "mlAssistEnabled": true + }, + "labelingJobMediaProperties": { + "mediaType": "Image" + }, + "projectId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", + "status": "NotStarted", + "progressMetrics": { + "totalDatapointCount": 0, + "completedDatapointCount": 0, + "skippedDatapointCount": 0, + "incrementalDatasetLastRefreshTime": "2020-12-08T01:23:37.234Z" + }, + "statusMessages": [ + { + "level": "Error", + "code": "string", + "message": "string", + "createdTimeUtc": "2020-12-08T01:23:37.234Z" + } + ], + "createdTimeUtc": "2020-12-08T01:23:37.234Z" + }, + "systemData": { + "createdAt": "2020-12-08T01:23:37.235Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-12-08T01:23:37.235Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/LabelingJob/list.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/LabelingJob/list.json new file mode 100644 index 000000000000..69c756def7da --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/LabelingJob/list.json @@ -0,0 +1,115 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workspace-1234", + "workspaceName": "testworkspace", + "api-version": "2021-03-01-preview", + "$skipToken": "skiptoken", + "count": "10" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/labelingJobs/testLabelingJob", + "name": "testLabelingJob", + "type": "Microsoft.MachineLearningServices/workspaces/labelingJobs", + "properties": { + "jobType": "Labeling", + "description": "string", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "labelCategories": { + "myCategory1": { + "displayName": "myCategory1Title", + "allowMultiSelect": true, + "classes": { + "myLabelClass1": { + "displayName": "myLabelClass1", + "subclasses": {} + }, + "myLabelClass2": { + "displayName": "myLabelClass2", + "subclasses": {} + } + } + }, + "myCategory2": { + "displayName": "myCategory2Title", + "allowMultiSelect": true, + "classes": { + "myLabelClass1": { + "displayName": "myLabelClass1", + "subclasses": {} + }, + "myLabelClass2": { + "displayName": "myLabelClass2", + "subclasses": {} + } + } + } + }, + "jobInstructions": { + "uri": "link/to/instructions" + }, + "datasetConfiguration": { + "assetName": "myAsset", + "incrementalDatasetRefreshEnabled": true, + "datasetVersion": "1" + }, + "mlAssistConfiguration": { + "inferencingComputeBinding": { + "target": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/computes/myscoringcompute", + "instanceCount": 1 + }, + "trainingComputeBinding": { + "target": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/computes/mytrainingcompute", + "instanceCount": 1 + }, + "mlAssistEnabled": true + }, + "labelingJobMediaProperties": { + "mediaType": "Image" + }, + "projectId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", + "status": "NotStarted", + "progressMetrics": { + "totalDatapointCount": 0, + "completedDatapointCount": 0, + "skippedDatapointCount": 0, + "incrementalDatasetLastRefreshTime": "2020-12-08T01:23:37.234Z" + }, + "statusMessages": [ + { + "level": "Error", + "code": "string", + "message": "string", + "createdTimeUtc": "2020-12-08T01:23:37.234Z" + } + ], + "createdTimeUtc": "2020-12-08T01:23:37.234Z" + }, + "systemData": { + "createdAt": "2020-12-08T01:23:37.235Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-12-08T01:23:37.235Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + ], + "nextLink": "nextlink" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/LabelingJob/pause.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/LabelingJob/pause.json new file mode 100644 index 000000000000..604eb10453eb --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/LabelingJob/pause.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workspace-1234", + "workspaceName": "testworkspace", + "api-version": "2021-03-01-preview", + "id": "testLabelingJob" + }, + "responses": { + "200": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/LabelingJob/resume.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/LabelingJob/resume.json new file mode 100644 index 000000000000..2d9060120bdf --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/LabelingJob/resume.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workspace-1234", + "workspaceName": "testworkspace", + "api-version": "2021-03-01-preview", + "id": "testLabelingJob" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/MachineLearningService/createOrUpdate.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/MachineLearningService/createOrUpdate.json new file mode 100644 index 000000000000..325f3a42f14e --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/MachineLearningService/createOrUpdate.json @@ -0,0 +1,225 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "api-version": "2021-03-01-preview", + "serviceName": "service456", + "properties": { + "computeType": "ACI", + "environmentImageRequest": { + "driverProgram": "score.py", + "assets": [ + { + "id": null, + "mimeType": "application/x-python", + "url": "aml://storage/azureml/score.py", + "unpack": false + } + ], + "models": [ + { + "name": "sklearn_regression_model.pkl", + "url": "aml://storage/azureml/sklearn_regression_model.pkl", + "mimeType": "application/x-python" + } + ], + "environment": { + "name": "AzureML-Scikit-learn-0.20.3", + "version": "3", + "python": { + "interpreterPath": "python", + "userManagedDependencies": false, + "condaDependencies": { + "channels": [ + "conda-forge" + ], + "dependencies": [ + "python=3.6.2", + { + "pip": [ + "azureml-core==1.0.69", + "azureml-defaults==1.0.69", + "azureml-telemetry==1.0.69", + "azureml-train-restclients-hyperdrive==1.0.69", + "azureml-train-core==1.0.69", + "scikit-learn==0.20.3", + "scipy==1.2.1", + "numpy==1.16.2", + "joblib==0.13.2" + ] + } + ], + "name": "azureml_ae1acbe6e1e6aabbad900b53c491a17c" + }, + "baseCondaEnvironment": null + }, + "environmentVariables": { + "EXAMPLE_ENV_VAR": "EXAMPLE_VALUE" + }, + "docker": { + "baseImage": "mcr.microsoft.com/azureml/base:openmpi3.1.2-ubuntu16.04", + "baseDockerfile": null, + "baseImageRegistry": { + "address": null, + "username": null, + "password": null + } + }, + "spark": { + "repositories": [], + "packages": [], + "precachePackages": true + }, + "inferencingStackVersion": null + } + }, + "containerResourceRequirements": { + "cpu": 1, + "memoryInGB": 1 + }, + "location": "eastus2", + "authEnabled": true, + "appInsightsEnabled": true + } + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/services/service456", + "type": "Microsoft.MachineLearningServices/workspaces/services", + "name": "service456", + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-02-03T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-02-04T02:03:01.1974346Z" + }, + "properties": { + "computeType": "ACI", + "containerResourceRequirements": { + "cpu": 0.1, + "memoryInGB": 0.5, + "gpu": null, + "fpga": null + }, + "scoringUri": "http://ddde8e29-3e3a-42d2-980d-8fb7e005ab81.eastus2.azurecontainer.io/score", + "location": "eastus2", + "authEnabled": true, + "sslEnabled": false, + "appInsightsEnabled": true, + "dataCollection": { + "eventHubEnabled": false, + "storageEnabled": false + }, + "sslCertificate": "", + "sslKey": "", + "cname": null, + "publicIp": "52.177.232.98", + "publicFqdn": "ddde8e29-3e3a-42d2-980d-8fb7e005ab81.eastus2.azurecontainer.io", + "modelConfigMap": { + "accountContext": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "accountName": "workspaces123", + "workspaceId": "57b243e8-3d24-4427-90e0-8dc47f41c387" + }, + "models": { + "sklearn_regression_model1.pkl": { + "version": 2, + "id": "sklearn_regression_model1.pkl:2", + "internalId": "3ab27a5b0d0e48d99f18a5195cc258bc" + } + }, + "modelsInfo": { + "sklearn_regression_model1.pkl": { + "2": { + "version": 2, + "id": "sklearn_regression_model1.pkl:2", + "internalId": "3ab27a5b0d0e48d99f18a5195cc258bc", + "dataCollectorStoragePath": "/modeldata/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/testrg123/workspaces123/service123/sklearn_regression_model1.pkl/2/" + } + } + } + }, + "environmentImageRequest": { + "driverProgram": "score.py", + "assets": [ + { + "id": null, + "mimeType": "application/x-python", + "url": "aml://artifact/LocalUpload/200518T200218a1a8c0af/score.py", + "unpack": false + } + ], + "modelIds": [ + "sklearn_regression_model1.pkl:2" + ], + "environment": { + "name": "AzureML-Scikit-learn-0.20.3", + "version": "3", + "python": { + "interpreterPath": "python", + "userManagedDependencies": false, + "condaDependencies": { + "channels": [ + "conda-forge" + ], + "dependencies": [ + "python=3.6.2", + { + "pip": [ + "azureml-core==1.0.69", + "azureml-defaults==1.0.69", + "azureml-telemetry==1.0.69", + "azureml-train-restclients-hyperdrive==1.0.69", + "azureml-train-core==1.0.69", + "scikit-learn==0.20.3", + "scipy==1.2.1", + "numpy==1.16.2", + "joblib==0.13.2" + ] + } + ], + "name": "azureml_ae1acbe6e1e6aabbad900b53c491a17c" + }, + "baseCondaEnvironment": null + }, + "environmentVariables": { + "EXAMPLE_ENV_VAR": "EXAMPLE_VALUE" + }, + "docker": { + "baseImage": "mcr.microsoft.com/azureml/base:openmpi3.1.2-ubuntu16.04", + "baseDockerfile": null, + "baseImageRegistry": { + "address": null + } + }, + "spark": { + "repositories": [], + "packages": [], + "precachePackages": true + }, + "inferencingStackVersion": null + } + }, + "description": null, + "kvTags": {}, + "properties": { + "hasInferenceSchema": "False", + "hasHttps": "False" + }, + "state": "Transitioning" + } + } + }, + "201": { + "description": "The request was accepted.", + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/MachineLearningService/delete.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/MachineLearningService/delete.json new file mode 100644 index 000000000000..bea1a68fa41a --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/MachineLearningService/delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "serviceName": "service123", + "api-version": "2021-03-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/MachineLearningService/get.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/MachineLearningService/get.json new file mode 100644 index 000000000000..97943860d3eb --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/MachineLearningService/get.json @@ -0,0 +1,157 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "api-version": "2021-03-01-preview", + "serviceName": "service123" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/services/service123", + "type": "Microsoft.MachineLearningServices/workspaces/services", + "name": "service123", + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-02-03T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-02-04T02:03:01.1974346Z" + }, + "properties": { + "computeType": "AKS", + "containerResourceRequirements": { + "cpu": 0.1, + "memoryInGB": 0.5, + "gpu": null, + "fpga": null + }, + "maxConcurrentRequestsPerContainer": 1, + "maxQueueWaitMs": 500, + "computeName": "my-aks-compute", + "namespace": "azureml-workspaces123", + "numReplicas": 1, + "dataCollection": { + "eventHubEnabled": false, + "storageEnabled": false + }, + "appInsightsEnabled": true, + "autoScaler": { + "autoscaleEnabled": false, + "minReplicas": null, + "maxReplicas": null, + "targetUtilization": null, + "refreshPeriodInSeconds": null + }, + "scoringUri": "http://192.168.1.5:80/api/v1/service/service123/score", + "scoringTimeoutMs": null, + "livenessProbeRequirements": { + "failureThreshold": 3, + "successThreshold": 1, + "timeoutSeconds": 120, + "periodSeconds": 5, + "initialDelaySeconds": 310 + }, + "authEnabled": true, + "aadAuthEnabled": false, + "swaggerUri": "http://192.168.1.5/api/v1/service/service123/swagger.json", + "modelConfigMap": { + "accountContext": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "accountName": "workspaces123", + "workspaceId": "57b243e8-3d24-4427-90e0-8dc47f41c387" + }, + "models": { + "sklearn_regression_model1.pkl": { + "version": 2, + "id": "sklearn_regression_model1.pkl:2", + "internalId": "3ab27a5b0d0e48d99f18a5195cc258bc" + } + }, + "modelsInfo": { + "sklearn_regression_model1.pkl": { + "2": { + "version": 2, + "id": "sklearn_regression_model1.pkl:2", + "internalId": "3ab27a5b0d0e48d99f18a5195cc258bc", + "dataCollectorStoragePath": "/modeldata/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/testrg123/workspaces123/service123/sklearn_regression_model1.pkl/2/" + } + } + } + }, + "environmentImageRequest": { + "driverProgram": "score.py", + "assets": [ + { + "id": null, + "mimeType": "application/x-python", + "url": "aml://artifact/LocalUpload/200518T200218a1a8c0af/score.py", + "unpack": false + } + ], + "modelIds": [ + "sklearn_regression_model1.pkl:2" + ], + "environment": { + "name": "AzureML-Scikit-learn-0.20.3", + "version": "3", + "python": { + "interpreterPath": "python", + "userManagedDependencies": false, + "condaDependencies": { + "channels": [ + "conda-forge" + ], + "dependencies": [ + "python=3.6.2", + { + "pip": [ + "azureml-core==1.0.69", + "azureml-defaults==1.0.69", + "azureml-telemetry==1.0.69", + "azureml-train-restclients-hyperdrive==1.0.69", + "azureml-train-core==1.0.69", + "scikit-learn==0.20.3", + "scipy==1.2.1", + "numpy==1.16.2", + "joblib==0.13.2" + ] + } + ], + "name": "azureml_ae1acbe6e1e6aabbad900b53c491a17c" + }, + "baseCondaEnvironment": null + }, + "environmentVariables": { + "EXAMPLE_ENV_VAR": "EXAMPLE_VALUE" + }, + "docker": { + "baseImage": "mcr.microsoft.com/azureml/base:openmpi3.1.2-ubuntu16.04", + "baseDockerfile": null, + "baseImageRegistry": { + "address": null + } + }, + "spark": { + "repositories": [], + "packages": [], + "precachePackages": true + }, + "inferencingStackVersion": null + } + }, + "description": null, + "kvTags": {}, + "properties": { + "hasInferenceSchema": "False", + "hasHttps": "False" + }, + "state": "Healthy" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/MachineLearningService/listByWorkspace.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/MachineLearningService/listByWorkspace.json new file mode 100644 index 000000000000..57a28523a5a7 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/MachineLearningService/listByWorkspace.json @@ -0,0 +1,282 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "api-version": "2021-03-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/services/service123", + "type": "Microsoft.MachineLearningServices/workspaces/services", + "name": "service123", + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-02-03T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-02-04T02:03:01.1974346Z" + }, + "properties": { + "computeType": "AKS", + "containerResourceRequirements": { + "cpu": 0.1, + "memoryInGB": 0.5, + "gpu": null, + "fpga": null + }, + "maxConcurrentRequestsPerContainer": 1, + "maxQueueWaitMs": 500, + "computeName": "my-aks-compute", + "namespace": "azureml-workspaces123", + "numReplicas": 1, + "dataCollection": { + "eventHubEnabled": false, + "storageEnabled": false + }, + "appInsightsEnabled": true, + "autoScaler": { + "autoscaleEnabled": false, + "minReplicas": null, + "maxReplicas": null, + "targetUtilization": null, + "refreshPeriodInSeconds": null + }, + "scoringUri": "http://192.168.1.5:80/api/v1/service/service123/score", + "scoringTimeoutMs": null, + "livenessProbeRequirements": { + "failureThreshold": 3, + "successThreshold": 1, + "timeoutSeconds": 120, + "periodSeconds": 5, + "initialDelaySeconds": 310 + }, + "authEnabled": true, + "aadAuthEnabled": false, + "swaggerUri": "http://192.168.1.5/api/v1/service/service123/swagger.json", + "modelConfigMap": { + "accountContext": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "accountName": "workspaces123", + "workspaceId": "57b243e8-3d24-4427-90e0-8dc47f41c387" + }, + "models": { + "sklearn_regression_model1.pkl": { + "version": 2, + "id": "sklearn_regression_model1.pkl:2", + "internalId": "3ab27a5b0d0e48d99f18a5195cc258bc" + } + }, + "modelsInfo": { + "sklearn_regression_model1.pkl": { + "2": { + "version": 2, + "id": "sklearn_regression_model1.pkl:2", + "internalId": "3ab27a5b0d0e48d99f18a5195cc258bc", + "dataCollectorStoragePath": "/modeldata/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/testrg123/workspaces123/service123/sklearn_regression_model1.pkl/2/" + } + } + } + }, + "environmentImageRequest": { + "driverProgram": "score.py", + "assets": [ + { + "id": null, + "mimeType": "application/x-python", + "url": "aml://artifact/LocalUpload/200518T200218a1a8c0af/score.py", + "unpack": false + } + ], + "modelIds": [ + "sklearn_regression_model1.pkl:2" + ], + "environment": { + "name": "AzureML-Scikit-learn-0.20.3", + "version": "3", + "python": { + "interpreterPath": "python", + "userManagedDependencies": false, + "condaDependencies": { + "channels": [ + "conda-forge" + ], + "dependencies": [ + "python=3.6.2", + { + "pip": [ + "azureml-core==1.0.69", + "azureml-defaults==1.0.69", + "azureml-telemetry==1.0.69", + "azureml-train-restclients-hyperdrive==1.0.69", + "azureml-train-core==1.0.69", + "scikit-learn==0.20.3", + "scipy==1.2.1", + "numpy==1.16.2", + "joblib==0.13.2" + ] + } + ], + "name": "azureml_ae1acbe6e1e6aabbad900b53c491a17c" + }, + "baseCondaEnvironment": null + }, + "environmentVariables": { + "EXAMPLE_ENV_VAR": "EXAMPLE_VALUE" + }, + "docker": { + "baseImage": "mcr.microsoft.com/azureml/base:openmpi3.1.2-ubuntu16.04", + "baseDockerfile": null, + "baseImageRegistry": { + "address": null + } + }, + "spark": { + "repositories": [], + "packages": [], + "precachePackages": true + }, + "inferencingStackVersion": null + } + }, + "description": null, + "kvTags": {}, + "properties": { + "hasInferenceSchema": "False", + "hasHttps": "False" + }, + "state": "Healthy" + } + }, + { + "id": "subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/services/service456", + "type": "Microsoft.MachineLearningServices/workspaces/services", + "name": "service456", + "properties": { + "computeType": "ACI", + "containerResourceRequirements": { + "cpu": 0.1, + "memoryInGB": 0.5, + "gpu": null, + "fpga": null + }, + "scoringUri": "http://ddde8e29-3e3a-42d2-980d-8fb7e005ab81.eastus2.azurecontainer.io/score", + "location": "eastus2", + "authEnabled": true, + "sslEnabled": false, + "appInsightsEnabled": true, + "dataCollection": { + "eventHubEnabled": false, + "storageEnabled": false + }, + "sslCertificate": "", + "sslKey": "", + "cname": null, + "publicIp": "52.177.232.98", + "publicFqdn": "ddde8e29-3e3a-42d2-980d-8fb7e005ab81.eastus2.azurecontainer.io", + "modelConfigMap": { + "accountContext": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "accountName": "workspaces123", + "workspaceId": "57b243e8-3d24-4427-90e0-8dc47f41c387" + }, + "models": { + "sklearn_regression_model1.pkl": { + "version": 2, + "id": "sklearn_regression_model1.pkl:2", + "internalId": "3ab27a5b0d0e48d99f18a5195cc258bc" + } + }, + "modelsInfo": { + "sklearn_regression_model1.pkl": { + "2": { + "version": 2, + "id": "sklearn_regression_model1.pkl:2", + "internalId": "3ab27a5b0d0e48d99f18a5195cc258bc", + "dataCollectorStoragePath": "/modeldata/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/testrg123/workspaces123/service123/sklearn_regression_model1.pkl/2/" + } + } + } + }, + "environmentImageRequest": { + "driverProgram": "score.py", + "assets": [ + { + "id": null, + "mimeType": "application/x-python", + "url": "aml://artifact/LocalUpload/200518T200218a1a8c0af/score.py", + "unpack": false + } + ], + "modelIds": [ + "sklearn_regression_model1.pkl:2" + ], + "environment": { + "name": "AzureML-Scikit-learn-0.20.3", + "version": "3", + "python": { + "interpreterPath": "python", + "userManagedDependencies": false, + "condaDependencies": { + "channels": [ + "conda-forge" + ], + "dependencies": [ + "python=3.6.2", + { + "pip": [ + "azureml-core==1.0.69", + "azureml-defaults==1.0.69", + "azureml-telemetry==1.0.69", + "azureml-train-restclients-hyperdrive==1.0.69", + "azureml-train-core==1.0.69", + "scikit-learn==0.20.3", + "scipy==1.2.1", + "numpy==1.16.2", + "joblib==0.13.2" + ] + } + ], + "name": "azureml_ae1acbe6e1e6aabbad900b53c491a17c" + }, + "baseCondaEnvironment": null + }, + "environmentVariables": { + "EXAMPLE_ENV_VAR": "EXAMPLE_VALUE" + }, + "docker": { + "baseImage": "mcr.microsoft.com/azureml/base:openmpi3.1.2-ubuntu16.04", + "baseDockerfile": null, + "baseImageRegistry": { + "address": null + } + }, + "spark": { + "repositories": [], + "packages": [], + "precachePackages": true + }, + "inferencingStackVersion": null + } + }, + "description": null, + "kvTags": {}, + "properties": { + "hasInferenceSchema": "False", + "hasHttps": "False" + }, + "state": "Healthy" + } + } + ], + "nextLink": "nextLink" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/ModelContainer/createOrUpdate.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/ModelContainer/createOrUpdate.json new file mode 100644 index 000000000000..9cbbffb51201 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/ModelContainer/createOrUpdate.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "workspace123", + "api-version": "2021-03-01-preview", + "name": "testContainer", + "body": { + "properties": { + "description": "Model container description", + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspace123/models/testContainer", + "name": "testContainer", + "type": "Microsoft.MachineLearningServices/workspaces/models", + "properties": { + "description": "Model container description", + "tags": { + "tag1": "value1", + "tag2": "value2" + } + }, + "systemData": { + "createdAt": "2020-12-01T12:00:00.000Z", + "createdBy": "John Smith", + "createdByType": "User", + "lastModifiedAt": "2020-12-01T12:00:00.000Z", + "lastModifiedBy": "John Smith", + "lastModifiedByType": "User" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspace123/models/testContainer", + "name": "testContainer", + "type": "Microsoft.MachineLearningServices/workspaces/models", + "properties": { + "description": "Model container description", + "tags": { + "tag1": "value1", + "tag2": "value2" + } + }, + "systemData": { + "createdAt": "2020-12-01T12:00:00.000Z", + "createdBy": "John Smith", + "createdByType": "User", + "lastModifiedAt": "2020-12-01T12:00:00.000Z", + "lastModifiedBy": "John Smith", + "lastModifiedByType": "User" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/ModelContainer/delete.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/ModelContainer/delete.json new file mode 100644 index 000000000000..b27feae6a399 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/ModelContainer/delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "workspace123", + "api-version": "2021-03-01-preview", + "name": "testContainer" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/ModelContainer/get.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/ModelContainer/get.json new file mode 100644 index 000000000000..882f7bea8801 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/ModelContainer/get.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "workspace123", + "api-version": "2021-03-01-preview", + "name": "testContainer" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspace123/models/testContainer", + "name": "testContainer", + "type": "Microsoft.MachineLearningServices/workspaces/models", + "properties": { + "description": "Model container description", + "tags": { + "tag1": "value1", + "tag2": "value2" + } + }, + "systemData": { + "createdAt": "2020-12-01T12:00:00.000Z", + "createdBy": "John Smith", + "createdByType": "User", + "lastModifiedAt": "2020-12-01T12:00:00.000Z", + "lastModifiedBy": "John Smith", + "lastModifiedByType": "User" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/ModelContainer/list.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/ModelContainer/list.json new file mode 100644 index 000000000000..c9b29bd90be7 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/ModelContainer/list.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "workspace123", + "api-version": "2021-03-01-preview", + "name": "testContainer" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspace123/models/testContainer", + "name": "testContainer", + "type": "Microsoft.MachineLearningServices/workspaces/models", + "properties": { + "description": "Model container description", + "tags": { + "tag1": "value1", + "tag2": "value2" + } + }, + "systemData": { + "createdAt": "2020-12-01T12:00:00.000Z", + "createdBy": "John Smith", + "createdByType": "User", + "lastModifiedAt": "2020-12-01T12:00:00.000Z", + "lastModifiedBy": "John Smith", + "lastModifiedByType": "User" + } + } + ], + "nextLink": "nextlink" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/ModelVersion/createOrUpdate.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/ModelVersion/createOrUpdate.json new file mode 100644 index 000000000000..7b286b921069 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/ModelVersion/createOrUpdate.json @@ -0,0 +1,97 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "workspace123", + "api-version": "2021-03-01-preview", + "name": "testContainer", + "version": "1", + "body": { + "properties": { + "description": "Model version description", + "datastoreId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspace123/datastores/datastore123", + "flavors": { + "python_function": { + "data": { + "loader_module": "myLoaderModule" + } + } + }, + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "prop1": "value1", + "prop2": "value2" + }, + "path": "path/in/datastore" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspace123/models/testContainer/versions/1", + "name": "1", + "type": "Microsoft.MachineLearningService/workspaces/models/versions", + "properties": { + "description": "Model version description", + "datastoreId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspace123/datastores/datastore123", + "flavors": { + "python_function": { + "data": { + "loader_module": "myLoaderModule" + } + } + }, + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "prop1": "value1", + "prop2": "value2" + }, + "path": "path/in/datastore" + }, + "systemData": { + "createdAt": "2020-12-01T12:00:00.000Z", + "createdBy": "John Smith", + "createdByType": "User", + "lastModifiedAt": "2020-12-01T12:00:00.000Z", + "lastModifiedBy": "John Smith", + "lastModifiedByType": "User" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspace123/models/testContainer/versions/999", + "name": "999", + "type": "Microsoft.MachineLearningService/workspaces/models/versions", + "properties": { + "description": "Model version description", + "datastoreId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspace123/datastores/datastore123", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "prop1": "value1", + "prop2": "value2" + }, + "path": "LocalUpload/12345/some/path" + }, + "systemData": { + "createdAt": "2020-12-01T12:00:00.000Z", + "createdBy": "John Smith", + "createdByType": "User", + "lastModifiedAt": "2020-12-01T12:00:00.000Z", + "lastModifiedBy": "John Smith", + "lastModifiedByType": "User" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/ModelVersion/delete.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/ModelVersion/delete.json new file mode 100644 index 000000000000..006074c8bb12 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/ModelVersion/delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "workspace123", + "api-version": "2021-03-01-preview", + "name": "testContainer", + "version": "999" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/ModelVersion/get.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/ModelVersion/get.json new file mode 100644 index 000000000000..3f53e8828158 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/ModelVersion/get.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "workspace123", + "api-version": "2021-03-01-preview", + "name": "testContainer", + "version": "1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspace123/models/testContainer/versions/1", + "name": "1", + "type": "Microsoft.MachineLearningService/workspaces/models/versions", + "properties": { + "description": "Model version description", + "datastoreId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspace123/datastores/datastore123", + "flavors": { + "python_function": { + "data": { + "loader_module": "myLoaderModule" + } + } + }, + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "prop1": "value1", + "prop2": "value2" + }, + "path": "path/in/datastore" + }, + "systemData": { + "createdAt": "2020-12-01T12:00:00.000Z", + "createdBy": "John Smith", + "createdByType": "User", + "lastModifiedAt": "2020-12-01T12:00:00.000Z", + "lastModifiedBy": "John Smith", + "lastModifiedByType": "User" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/ModelVersion/list.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/ModelVersion/list.json new file mode 100644 index 000000000000..076652c890a0 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/ModelVersion/list.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "workspace123", + "api-version": "2021-03-01-preview", + "name": "testContainer", + "version": "1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspace123/models/testContainer/versions/1", + "name": "1", + "type": "Microsoft.MachineLearningService/workspaces/models/versions", + "properties": { + "description": "Model version description", + "datastoreId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspace123/datastores/datastore123", + "flavors": { + "python_function": { + "data": { + "loader_module": "myLoaderModule" + } + } + }, + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "prop1": "value1", + "prop2": "value2" + }, + "path": "path/in/datastore" + }, + "systemData": { + "createdAt": "2020-12-01T12:00:00.000Z", + "createdBy": "John Smith", + "createdByType": "User", + "lastModifiedAt": "2020-12-01T12:00:00.000Z", + "lastModifiedBy": "John Smith", + "lastModifiedByType": "User" + } + } + ], + "nextLink": "nextlink" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Notebook/listKeys.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Notebook/listKeys.json new file mode 100644 index 000000000000..b714bf5583d5 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Notebook/listKeys.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "api-version": "2021-03-01-preview" + }, + "responses": { + "200": { + "body": { + "primaryAccessKey": null, + "secondaryAccessKey": null + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Notebook/prepare.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Notebook/prepare.json new file mode 100644 index 000000000000..be05b7933fbb --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Notebook/prepare.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "api-version": "2021-03-01-preview" + }, + "responses": { + "200": { + "body": { + "resourceId": "aabbccddee112233445566778899", + "fqdn": "testnotebook.notebooks.azure.com", + "notebookPreparationError": { + "statusCode": 500, + "errorMessage": "general error" + } + } + }, + "202": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/OnlineDeployment/K8sOnlineDeployment/createOrUpdate.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/OnlineDeployment/K8sOnlineDeployment/createOrUpdate.json new file mode 100644 index 000000000000..93263fb1ded9 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/OnlineDeployment/K8sOnlineDeployment/createOrUpdate.json @@ -0,0 +1,203 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "workspace123", + "api-version": "2021-03-01-preview", + "endpointName": "testEndpoint", + "deploymentName": "testDeployment", + "body": { + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "location": "string", + "kind": "string", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myuseridentity": { + "principalId": "string", + "clientId": "string" + } + } + }, + "properties": { + "endpointComputeType": "K8S", + "scaleSettings": { + "pollingInterval": "PT1M", + "scaleType": "Auto", + "targetUtilizationPercentage": 50 + }, + "containerResourceRequirements": { + "cpu": 4, + "cpuLimit": 4, + "memoryInGB": 64, + "memoryInGBLimit": 64 + }, + "requestSettings": { + "maxQueueWait": "PT1M", + "requestTimeout": "PT1M", + "maxConcurrentRequestsPerInstance": 5 + }, + "provisioningState": "Creating", + "description": "string", + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "appInsightsEnabled": true, + "livenessProbe": { + "failureThreshold": 50, + "successThreshold": 50, + "timeout": "PT1M", + "period": "PT1M", + "initialDelay": "PT1M" + }, + "model": { + "referenceType": "Id", + "assetId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/models/model123" + }, + "codeConfiguration": { + "codeId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/codes/code123/versions/1", + "scoringScript": "string" + }, + "environmentId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/environments/env123" + } + } + }, + "responses": { + "200": { + "body": { + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "location": "string", + "kind": "string", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myuseridentity": { + "clientId": "string" + } + } + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/onlineEndpoints/testEndpoint/deployments/testDeployment", + "name": "testDeployment", + "type": "Microsoft.MachineLearningServices/workspaces/onlineEndpoints/deployments", + "properties": { + "endpointComputeType": "K8S", + "containerResourceRequirements": { + "cpu": 4, + "cpuLimit": 4, + "memoryInGB": 64, + "memoryInGBLimit": 64 + }, + "scaleSettings": { + "pollingInterval": "PT1M", + "scaleType": "Auto", + "targetUtilizationPercentage": 50 + }, + "requestSettings": { + "maxQueueWait": "PT1M", + "requestTimeout": "PT1M", + "maxConcurrentRequestsPerInstance": 5 + }, + "provisioningState": "Creating", + "description": "string", + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "appInsightsEnabled": true, + "livenessProbe": { + "failureThreshold": 50, + "successThreshold": 50, + "timeout": "PT1M", + "period": "PT1M", + "initialDelay": "PT1M" + }, + "model": { + "referenceType": "Id", + "assetId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/models/model123" + }, + "codeConfiguration": { + "codeId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/codes/code123/versions/1", + "scoringScript": "string" + }, + "environmentId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/environments/env123" + } + } + }, + "201": { + "body": { + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "location": "string", + "kind": "string", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myuseridentity": { + "clientId": "string" + } + } + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/onlineEndpoints/testEndpoint/deployments/testDeployment", + "name": "testDeployment", + "type": "Microsoft.MachineLearningServices/workspaces/onlineEndpoints/deployments", + "properties": { + "endpointComputeType": "K8S", + "containerResourceRequirements": { + "cpu": 4, + "cpuLimit": 4, + "memoryInGB": 64, + "memoryInGBLimit": 64 + }, + "scaleSettings": { + "pollingInterval": "PT1M", + "scaleType": "Auto", + "targetUtilizationPercentage": 50 + }, + "requestSettings": { + "maxQueueWait": "PT1M", + "requestTimeout": "PT1M", + "maxConcurrentRequestsPerInstance": 5 + }, + "provisioningState": "Creating", + "description": "string", + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "appInsightsEnabled": true, + "livenessProbe": { + "failureThreshold": 50, + "successThreshold": 50, + "timeout": "PT1M", + "period": "PT1M", + "initialDelay": "PT1M" + }, + "model": { + "referenceType": "Id", + "assetId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/models/model123" + }, + "codeConfiguration": { + "codeId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/codes/code123/versions/1", + "scoringScript": "string" + }, + "environmentId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/environments/env123" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/OnlineDeployment/K8sOnlineDeployment/get.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/OnlineDeployment/K8sOnlineDeployment/get.json new file mode 100644 index 000000000000..6883341f031c --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/OnlineDeployment/K8sOnlineDeployment/get.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "workspace123", + "api-version": "2021-03-01-preview", + "endpointName": "testEndpoint", + "deploymentName": "testDeployment" + }, + "responses": { + "200": { + "body": { + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "location": "string", + "kind": "string", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myuseridentity": { + "clientId": "string" + } + } + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/onlineEndpoints/testEndpoint/deployments/testDeployment", + "name": "testDeployment", + "type": "Microsoft.MachineLearningServices/workspaces/onlineEndpoints/deployments", + "properties": { + "endpointComputeType": "K8S", + "containerResourceRequirements": { + "cpu": 4, + "cpuLimit": 4, + "memoryInGB": 64, + "memoryInGBLimit": 64 + }, + "scaleSettings": { + "pollingInterval": "PT1M", + "scaleType": "Auto", + "targetUtilizationPercentage": 50 + }, + "requestSettings": { + "maxQueueWait": "PT1M", + "requestTimeout": "PT1M", + "maxConcurrentRequestsPerInstance": 5 + }, + "provisioningState": "Creating", + "description": "string", + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "appInsightsEnabled": true, + "livenessProbe": { + "failureThreshold": 50, + "successThreshold": 50, + "timeout": "PT1M", + "period": "PT1M", + "initialDelay": "PT1M" + }, + "model": { + "referenceType": "Id", + "assetId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/models/model123" + }, + "codeConfiguration": { + "codeId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/codes/code123/versions/1", + "scoringScript": "string" + }, + "environmentId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/environments/env123" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/OnlineDeployment/K8sOnlineDeployment/update.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/OnlineDeployment/K8sOnlineDeployment/update.json new file mode 100644 index 000000000000..abd51f90e041 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/OnlineDeployment/K8sOnlineDeployment/update.json @@ -0,0 +1,108 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "workspace123", + "api-version": "2021-03-01-preview", + "endpointName": "testEndpoint", + "deploymentName": "testDeployment", + "body": { + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "kind": "string", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myuseridentity": { + "principalId": "string", + "clientId": "string" + } + } + }, + "properties": { + "endpointComputeType": "K8S", + "containerResourceRequirements": { + "cpu": 4, + "cpuLimit": 4, + "memoryInGB": 64, + "memoryInGBLimit": 64 + }, + "scaleSettings": { + "pollingInterval": "PT1M", + "scaleType": "Auto" + } + } + } + }, + "responses": { + "200": { + "body": { + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "location": "string", + "kind": "string", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myuseridentity": { + "clientId": "string" + } + } + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/onlineEndpoints/testEndpoint/deployments/testDeployment", + "name": "testDeployment", + "type": "Microsoft.MachineLearningServices/workspaces/onlineEndpoints/deployments", + "properties": { + "endpointComputeType": "K8S", + "containerResourceRequirements": { + "cpu": 4, + "cpuLimit": 4, + "memoryInGB": 64, + "memoryInGBLimit": 64 + }, + "scaleSettings": { + "pollingInterval": "PT1M", + "scaleType": "Auto", + "targetUtilizationPercentage": 50 + }, + "requestSettings": { + "maxQueueWait": "PT1M", + "requestTimeout": "PT1M", + "maxConcurrentRequestsPerInstance": 5 + }, + "provisioningState": "Creating", + "description": "string", + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "appInsightsEnabled": true, + "livenessProbe": { + "failureThreshold": 50, + "successThreshold": 50, + "timeout": "PT1M", + "period": "PT1M", + "initialDelay": "PT1M" + }, + "model": { + "referenceType": "Id", + "assetId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/models/model123" + }, + "codeConfiguration": { + "codeId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/codes/code123/versions/1", + "scoringScript": "string" + }, + "environmentId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/environments/env123" + } + } + }, + "202": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/OnlineDeployment/ManagedOnlineDeployment/createOrUpdate.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/OnlineDeployment/ManagedOnlineDeployment/createOrUpdate.json new file mode 100644 index 000000000000..8592645864d3 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/OnlineDeployment/ManagedOnlineDeployment/createOrUpdate.json @@ -0,0 +1,199 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "workspace123", + "api-version": "2021-03-01-preview", + "endpointName": "testEndpoint", + "deploymentName": "testDeployment", + "body": { + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "location": "string", + "kind": "string", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myuseridentity": { + "principalId": "string", + "clientId": "string" + } + } + }, + "properties": { + "endpointComputeType": "Managed", + "scaleSettings": { + "pollingInterval": "PT1M", + "scaleType": "Auto", + "targetUtilizationPercentage": 50 + }, + "requestSettings": { + "maxQueueWait": "PT1M", + "requestTimeout": "PT1M", + "maxConcurrentRequestsPerInstance": 5 + }, + "provisioningState": "Creating", + "description": "string", + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "appInsightsEnabled": true, + "livenessProbe": { + "failureThreshold": 50, + "successThreshold": 50, + "timeout": "PT1M", + "period": "PT1M", + "initialDelay": "PT1M" + }, + "model": { + "referenceType": "Id", + "assetId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/models/model123" + }, + "codeConfiguration": { + "codeId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/codes/code123/versions/1", + "scoringScript": "string" + }, + "environmentId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/environments/env123" + } + } + }, + "responses": { + "200": { + "body": { + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "location": "string", + "kind": "string", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myuseridentity": { + "clientId": "string" + } + } + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/onlineEndpoints/testEndpoint/deployments/testDeployment", + "name": "testDeployment", + "type": "Microsoft.MachineLearningServices/workspaces/onlineEndpoints/deployments", + "properties": { + "endpointComputeType": "Managed", + "readinessProbe": { + "failureThreshold": 50, + "successThreshold": 50, + "timeout": "PT1M", + "period": "PT1M", + "initialDelay": "PT1M" + }, + "scaleSettings": { + "pollingInterval": "PT1M", + "scaleType": "Auto", + "targetUtilizationPercentage": 50 + }, + "requestSettings": { + "maxQueueWait": "PT1M", + "requestTimeout": "PT1M", + "maxConcurrentRequestsPerInstance": 5 + }, + "provisioningState": "Creating", + "description": "string", + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "appInsightsEnabled": true, + "livenessProbe": { + "failureThreshold": 50, + "successThreshold": 50, + "timeout": "PT1M", + "period": "PT1M", + "initialDelay": "PT1M" + }, + "model": { + "referenceType": "Id", + "assetId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/models/model123" + }, + "codeConfiguration": { + "codeId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/codes/code123/versions/1", + "scoringScript": "string" + }, + "environmentId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/environments/env123" + } + } + }, + "201": { + "body": { + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "location": "string", + "kind": "string", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myuseridentity": { + "clientId": "string" + } + } + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/onlineEndpoints/testEndpoint/deployments/testDeployment", + "name": "testDeployment", + "type": "Microsoft.MachineLearningServices/workspaces/onlineEndpoints/deployments", + "properties": { + "endpointComputeType": "Managed", + "readinessProbe": { + "failureThreshold": 50, + "successThreshold": 50, + "timeout": "PT1M", + "period": "PT1M", + "initialDelay": "PT1M" + }, + "scaleSettings": { + "pollingInterval": "PT1M", + "scaleType": "Auto", + "targetUtilizationPercentage": 50 + }, + "requestSettings": { + "maxQueueWait": "PT1M", + "requestTimeout": "PT1M", + "maxConcurrentRequestsPerInstance": 5 + }, + "provisioningState": "Creating", + "description": "string", + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "appInsightsEnabled": true, + "livenessProbe": { + "failureThreshold": 50, + "successThreshold": 50, + "timeout": "PT1M", + "period": "PT1M", + "initialDelay": "PT1M" + }, + "model": { + "referenceType": "Id", + "assetId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/models/model123" + }, + "codeConfiguration": { + "codeId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/codes/code123/versions/1", + "scoringScript": "string" + }, + "environmentId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/environments/env123" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/OnlineDeployment/ManagedOnlineDeployment/get.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/OnlineDeployment/ManagedOnlineDeployment/get.json new file mode 100644 index 000000000000..442ca1f3ee70 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/OnlineDeployment/ManagedOnlineDeployment/get.json @@ -0,0 +1,78 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "workspace123", + "api-version": "2021-03-01-preview", + "endpointName": "testEndpoint", + "deploymentName": "testDeployment" + }, + "responses": { + "200": { + "body": { + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "location": "string", + "kind": "string", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myuseridentity": { + "clientId": "string" + } + } + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/onlineEndpoints/testEndpoint/deployments/testDeployment", + "name": "testDeployment", + "type": "Microsoft.MachineLearningServices/workspaces/onlineEndpoints/deployments", + "properties": { + "endpointComputeType": "Managed", + "readinessProbe": { + "failureThreshold": 50, + "successThreshold": 50, + "timeout": "PT1M", + "period": "PT1M", + "initialDelay": "PT1M" + }, + "scaleSettings": { + "pollingInterval": "PT1M", + "scaleType": "Auto", + "targetUtilizationPercentage": 50 + }, + "requestSettings": { + "maxQueueWait": "PT1M", + "requestTimeout": "PT1M", + "maxConcurrentRequestsPerInstance": 5 + }, + "provisioningState": "Creating", + "description": "string", + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "appInsightsEnabled": true, + "livenessProbe": { + "failureThreshold": 50, + "successThreshold": 50, + "timeout": "PT1M", + "period": "PT1M", + "initialDelay": "PT1M" + }, + "model": { + "referenceType": "Id", + "assetId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/models/model123" + }, + "codeConfiguration": { + "codeId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/codes/code123/versions/1", + "scoringScript": "string" + }, + "environmentId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/environments/env123" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/OnlineDeployment/ManagedOnlineDeployment/update.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/OnlineDeployment/ManagedOnlineDeployment/update.json new file mode 100644 index 000000000000..86048d903773 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/OnlineDeployment/ManagedOnlineDeployment/update.json @@ -0,0 +1,110 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "workspace123", + "api-version": "2021-03-01-preview", + "endpointName": "testEndpoint", + "deploymentName": "testDeployment", + "body": { + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "kind": "string", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myuseridentity": { + "principalId": "string", + "clientId": "string" + } + } + }, + "properties": { + "endpointComputeType": "Managed", + "readinessProbe": { + "failureThreshold": 50, + "successThreshold": 50, + "timeout": "PT1M", + "period": "PT1M", + "initialDelay": "PT1M" + }, + "scaleSettings": { + "pollingInterval": "PT1M", + "scaleType": "Auto" + } + } + } + }, + "responses": { + "200": { + "body": { + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "location": "string", + "kind": "string", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myuseridentity": { + "clientId": "string" + } + } + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/onlineEndpoints/testEndpoint/deployments/testDeployment", + "name": "testDeployment", + "type": "Microsoft.MachineLearningServices/workspaces/onlineEndpoints/deployments", + "properties": { + "endpointComputeType": "Managed", + "readinessProbe": { + "failureThreshold": 50, + "successThreshold": 50, + "timeout": "PT1M", + "period": "PT1M", + "initialDelay": "PT1M" + }, + "scaleSettings": { + "pollingInterval": "PT1M", + "scaleType": "Auto", + "targetUtilizationPercentage": 50 + }, + "requestSettings": { + "maxQueueWait": "PT1M", + "requestTimeout": "PT1M", + "maxConcurrentRequestsPerInstance": 5 + }, + "provisioningState": "Creating", + "description": "string", + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "appInsightsEnabled": true, + "livenessProbe": { + "failureThreshold": 50, + "successThreshold": 50, + "timeout": "PT1M", + "period": "PT1M", + "initialDelay": "PT1M" + }, + "model": { + "referenceType": "Id", + "assetId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/models/model123" + }, + "codeConfiguration": { + "codeId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/codes/code123/versions/1", + "scoringScript": "string" + }, + "environmentId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/environments/env123" + } + } + }, + "202": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/OnlineDeployment/delete.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/OnlineDeployment/delete.json new file mode 100644 index 000000000000..8fb52c1c3862 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/OnlineDeployment/delete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "workspace123", + "api-version": "2021-03-01-preview", + "endpointName": "testEndpoint", + "deploymentName": "testDeployment" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/OnlineDeployment/getLogs.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/OnlineDeployment/getLogs.json new file mode 100644 index 000000000000..00e4108887a5 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/OnlineDeployment/getLogs.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "workspace123", + "api-version": "2021-03-01-preview", + "endpointName": "testEndpoint", + "deploymentName": "testDeployment", + "body": { + "containerType": "StorageInitializer", + "tail": 0 + } + }, + "responses": { + "200": { + "body": { + "content": "string" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/OnlineDeployment/list.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/OnlineDeployment/list.json new file mode 100644 index 000000000000..8fce3fd11e32 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/OnlineDeployment/list.json @@ -0,0 +1,145 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "workspace123", + "api-version": "2021-03-01-preview", + "endpointName": "testEndpoint" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "location": "string", + "kind": "string", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myuseridentity": { + "clientId": "string" + } + } + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/onlineEndpoints/testEndpoint/deployments/testDeployment", + "name": "testDeployment", + "type": "Microsoft.MachineLearningServices/workspaces/onlineEndpoints/deployments", + "properties": { + "endpointComputeType": "Managed", + "readinessProbe": { + "failureThreshold": 50, + "successThreshold": 50, + "timeout": "PT1M", + "period": "PT1M", + "initialDelay": "PT1M" + }, + "scaleSettings": { + "pollingInterval": "PT1M", + "scaleType": "Auto", + "targetUtilizationPercentage": 50 + }, + "requestSettings": { + "maxQueueWait": "PT1M", + "requestTimeout": "PT1M", + "maxConcurrentRequestsPerInstance": 5 + }, + "provisioningState": "Creating", + "description": "string", + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "appInsightsEnabled": true, + "livenessProbe": { + "failureThreshold": 50, + "successThreshold": 50, + "timeout": "PT1M", + "period": "PT1M", + "initialDelay": "PT1M" + }, + "model": { + "referenceType": "Id", + "assetId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/models/model123" + }, + "codeConfiguration": { + "codeId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/codes/code123/versions/1", + "scoringScript": "string" + }, + "environmentId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/environments/env123" + } + }, + { + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "location": "string", + "kind": "string", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myuseridentity": { + "clientId": "string" + } + } + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/onlineEndpoints/testEndpoint/deployments/testDeployment", + "name": "testDeployment", + "type": "Microsoft.MachineLearningServices/workspaces/onlineEndpoints/deployments", + "properties": { + "endpointComputeType": "K8S", + "containerResourceRequirements": { + "cpu": 4, + "cpuLimit": 4, + "memoryInGB": 64, + "memoryInGBLimit": 64 + }, + "scaleSettings": { + "pollingInterval": "PT1M", + "scaleType": "Auto", + "targetUtilizationPercentage": 50 + }, + "requestSettings": { + "maxQueueWait": "PT1M", + "requestTimeout": "PT1M", + "maxConcurrentRequestsPerInstance": 5 + }, + "provisioningState": "Creating", + "description": "string", + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "appInsightsEnabled": true, + "livenessProbe": { + "failureThreshold": 50, + "successThreshold": 50, + "timeout": "PT1M", + "period": "PT1M", + "initialDelay": "PT1M" + }, + "model": { + "referenceType": "Id", + "assetId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/models/model123" + }, + "codeConfiguration": { + "codeId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/codes/code123/versions/1", + "scoringScript": "string" + }, + "environmentId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/environments/env123" + } + } + ], + "nextLink": "string" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/OnlineEndpoint/createOrUpdate.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/OnlineEndpoint/createOrUpdate.json new file mode 100644 index 000000000000..2c3bca23230a --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/OnlineEndpoint/createOrUpdate.json @@ -0,0 +1,125 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "workspace123", + "api-version": "2021-03-01-preview", + "endpointName": "testEndpoint", + "body": { + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "location": "string", + "kind": "string", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myuseridentity": { + "principalId": "string", + "clientId": "string" + } + } + }, + "properties": { + "description": "string", + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "traffic": { + "myDeployment1": 0, + "myDeployment2": 1 + }, + "keys": { + "primaryKey": "string", + "secondaryKey": "string" + }, + "target": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/computes/compute123", + "authMode": "AMLToken" + } + } + }, + "responses": { + "200": { + "body": { + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "location": "string", + "kind": "string", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myuseridentity": { + "clientId": "string" + } + } + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/onlineEndpoints/testEndpoint", + "name": "testEndpoint", + "type": "Microsoft.MachineLearningServices/workspaces/onlineEndpoints", + "properties": { + "provisioningState": "Creating", + "description": "string", + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "traffic": { + "myDeployment1": 0, + "myDeployment2": 1 + }, + "scoringUri": "string", + "swaggerUri": "string", + "target": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/computes/compute123", + "authMode": "AMLToken" + } + } + }, + "201": { + "body": { + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "location": "string", + "kind": "string", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myuseridentity": { + "clientId": "string" + } + } + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/onlineEndpoints/testEndpoint", + "name": "testEndpoint", + "type": "Microsoft.MachineLearningServices/workspaces/onlineEndpoints", + "properties": { + "provisioningState": "Creating", + "description": "string", + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "traffic": { + "myDeployment1": 0, + "myDeployment2": 1 + }, + "scoringUri": "string", + "swaggerUri": "string", + "target": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/computes/compute123", + "authMode": "AMLToken" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/OnlineEndpoint/delete.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/OnlineEndpoint/delete.json new file mode 100644 index 000000000000..441d05a10f9c --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/OnlineEndpoint/delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "workspace123", + "api-version": "2021-03-01-preview", + "endpointName": "testEndpoint" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/OnlineEndpoint/get.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/OnlineEndpoint/get.json new file mode 100644 index 000000000000..efffbb9b8232 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/OnlineEndpoint/get.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "workspace123", + "api-version": "2021-03-01-preview", + "endpointName": "testEndpoint" + }, + "responses": { + "200": { + "body": { + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "location": "string", + "kind": "string", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myuseridentity": { + "clientId": "string" + } + } + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/onlineEndpoints/testEndpoint", + "name": "testEndpoint", + "type": "Microsoft.MachineLearningServices/workspaces/onlineEndpoints", + "properties": { + "provisioningState": "Creating", + "description": "string", + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "traffic": { + "myDeployment1": 0, + "myDeployment2": 1 + }, + "scoringUri": "string", + "swaggerUri": "string", + "target": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/computes/compute123", + "authMode": "AMLToken" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/OnlineEndpoint/getToken.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/OnlineEndpoint/getToken.json new file mode 100644 index 000000000000..2e602c96c444 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/OnlineEndpoint/getToken.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "workspace123", + "api-version": "2021-03-01-preview", + "endpointName": "testEndpoint" + }, + "responses": { + "200": { + "body": { + "accessToken": "string", + "tokenType": "string", + "expiryTimeUtc": 0, + "refreshAfterTimeUtc": 0 + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/OnlineEndpoint/list.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/OnlineEndpoint/list.json new file mode 100644 index 000000000000..930030042af7 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/OnlineEndpoint/list.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "workspace123", + "api-version": "2021-03-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "location": "string", + "kind": "string", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myuseridentity": { + "clientId": "string" + } + } + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/onlineEndpoints/testEndpoint", + "name": "testEndpoint", + "type": "Microsoft.MachineLearningServices/workspaces/onlineEndpoints", + "properties": { + "provisioningState": "Creating", + "description": "string", + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "traffic": { + "myDeployment1": 0, + "myDeployment2": 1 + }, + "scoringUri": "string", + "swaggerUri": "string", + "target": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/computes/compute123", + "authMode": "AMLToken" + } + } + ], + "nextLink": "string" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/OnlineEndpoint/listKeys.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/OnlineEndpoint/listKeys.json new file mode 100644 index 000000000000..9da4478dae98 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/OnlineEndpoint/listKeys.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "workspace123", + "api-version": "2021-03-01-preview", + "endpointName": "testEndpoint" + }, + "responses": { + "200": { + "body": { + "primaryKey": "string", + "secondaryKey": "string" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/OnlineEndpoint/regenerateKeys.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/OnlineEndpoint/regenerateKeys.json new file mode 100644 index 000000000000..70f21e732c3c --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/OnlineEndpoint/regenerateKeys.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "workspace123", + "api-version": "2021-03-01-preview", + "endpointName": "testEndpoint", + "body": { + "keyType": "Primary", + "keyValue": "string" + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/OnlineEndpoint/update.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/OnlineEndpoint/update.json new file mode 100644 index 000000000000..e2ef99f27303 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/OnlineEndpoint/update.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg123", + "workspaceName": "workspace123", + "api-version": "2021-03-01-preview", + "endpointName": "testEndpoint", + "body": { + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "kind": "string", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myuseridentity": { + "principalId": "string", + "clientId": "string" + } + } + }, + "properties": { + "traffic": { + "myDeployment1": 0, + "myDeployment2": 1 + } + } + } + }, + "responses": { + "200": { + "body": { + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "location": "string", + "kind": "string", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myuseridentity": { + "clientId": "string" + } + } + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/onlineEndpoints/testEndpoint", + "name": "testEndpoint", + "type": "Microsoft.MachineLearningServices/workspaces/onlineEndpoints", + "properties": { + "provisioningState": "Creating", + "description": "string", + "properties": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "traffic": { + "myDeployment1": 0, + "myDeployment2": 1 + }, + "scoringUri": "string", + "swaggerUri": "string", + "target": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/computes/compute123", + "authMode": "AMLToken" + } + } + }, + "202": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/PrivateEndpointConnection/createOrUpdate.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/PrivateEndpointConnection/createOrUpdate.json new file mode 100644 index 000000000000..c6e630977a8e --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/PrivateEndpointConnection/createOrUpdate.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg-1234", + "workspaceName": "testworkspace", + "privateEndpointConnectionName": "{privateEndpointConnectionName}", + "api-version": "2021-03-01-preview", + "monitor": "true", + "properties": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/privateEndpointConnections/{privateEndpointConnectionName}", + "name": "{privateEndpointConnectionName}", + "type": "Microsoft.MachineLearningServices/workspaces/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg-1234/providers/Microsoft.Network/privateEndpoints/petest01" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/PrivateEndpointConnection/delete.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/PrivateEndpointConnection/delete.json new file mode 100644 index 000000000000..9dcf8128f7e0 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/PrivateEndpointConnection/delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg-1234", + "workspaceName": "testworkspace", + "privateEndpointConnectionName": "{privateEndpointConnectionName}", + "api-version": "2021-03-01-preview", + "monitor": "true" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/PrivateEndpointConnection/get.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/PrivateEndpointConnection/get.json new file mode 100644 index 000000000000..6c2ee3ff04c6 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/PrivateEndpointConnection/get.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg-1234", + "workspaceName": "testworkspace", + "privateEndpointConnectionName": "{privateEndpointConnectionName}", + "api-version": "2021-03-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/privateEndpointConnections/{privateEndpointConnectionName}", + "name": "{privateEndpointConnectionName}", + "type": "Microsoft.MachineLearningServices/workspaces/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg-1234/providers/Microsoft.Network/privateEndpoints/petest01" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/PrivateEndpointConnection/list.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/PrivateEndpointConnection/list.json new file mode 100644 index 000000000000..ba184dd346ba --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/PrivateEndpointConnection/list.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg-1234", + "workspaceName": "testworkspace", + "privateEndpointConnectionName": "{privateEndpointConnectionName}", + "api-version": "2021-03-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/privateEndpointConnections/{privateEndpointConnectionName}", + "name": "{privateEndpointConnectionName}", + "type": "Microsoft.MachineLearningServices/workspaces/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg-1234/providers/Microsoft.Network/privateEndpoints/petest01" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionsRequired": "None" + } + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/privateEndpointConnections/{privateEndpointConnectionName}", + "name": "{privateEndpointConnectionName}", + "type": "Microsoft.MachineLearningServices/workspaces/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg-1234/providers/Microsoft.Network/privateEndpoints/petest01" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionsRequired": "None" + } + } + } + ] + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/PrivateLinkResource/list.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/PrivateLinkResource/list.json new file mode 100644 index 000000000000..a032d8e9e649 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/PrivateLinkResource/list.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg-1234", + "workspaceName": "testworkspace", + "api-version": "2021-03-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/privateLinkResources/amlworkspace", + "name": "amlworkspace", + "type": "Microsoft.Storage/workspaces/privateLinkResources", + "properties": { + "groupId": "amlworkspace", + "requiredMembers": [ + "default" + ] + } + } + ] + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Quota/list.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Quota/list.json new file mode 100644 index 000000000000..54e636a63c3d --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Quota/list.json @@ -0,0 +1,415 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "eastus", + "api-version": "2021-03-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_D_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 48, + "name": { + "localizedValue": "Standard D Family Cluster Dedicated vCPUs", + "value": "Standard D Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_D_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 12, + "name": { + "value": "Standard D Family Cluster Dedicated vCPUs", + "localizedValue": "Standard D Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_D_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 12, + "name": { + "value": "Standard D Family Cluster Dedicated vCPUs", + "localizedValue": "Standard D Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_D_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard D Family Cluster Dedicated vCPUs", + "localizedValue": "Standard D Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quota", + "limit": 24, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 12, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 12, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_Dv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 24, + "name": { + "localizedValue": "Standard Dv2 Family Cluster Dedicated vCPUs", + "value": "Standard Dv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_Dv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard Dv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard Dv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_Dv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard Dv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard Dv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_Dv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard Dv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard Dv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_FSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 24, + "name": { + "value": "Standard FSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard FSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_FSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard FSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard FSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_FSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard FSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard FSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_FSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 12, + "name": { + "value": "Standard FSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard FSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 24, + "name": { + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs", + "value": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard NC Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard NC Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard NC Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_NCv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 0, + "name": { + "localizedValue": "Standard NCv2 Family Cluster Dedicated vCPUs", + "value": "Standard NCv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_NCv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NCv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NCv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_NCv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NCv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NCv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_NCv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NCv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NCv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_NCv3_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 0, + "name": { + "localizedValue": "Standard NCv3 Family Cluster Dedicated vCPUs", + "value": "Standard NCv3 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_NCv3_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NCv3 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NCv3 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_NCv3_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NCv3 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NCv3 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_NCv3_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NCv3 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NCv3 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_ND_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 0, + "name": { + "localizedValue": "Standard ND Family Cluster Dedicated vCPUs", + "value": "Standard ND Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_ND_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard ND Family Cluster Dedicated vCPUs", + "localizedValue": "Standard ND Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_ND_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard ND Family Cluster Dedicated vCPUs", + "localizedValue": "Standard ND Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_ND_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard ND Family Cluster Dedicated vCPUs", + "localizedValue": "Standard ND Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_NDv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 0, + "name": { + "value": "Standard NDv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NDv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_NDv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NDv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NDv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_NDv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NDv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NDv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_NDv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NDv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NDv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_NV_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 24, + "name": { + "localizedValue": "Standard NV Family Cluster Dedicated vCPUs", + "value": "Standard NV Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_NV_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard NV Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NV Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_NV_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard NV Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NV Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_NV_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard NV Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NV Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + } + ] + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Quota/update.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Quota/update.json new file mode 100644 index 000000000000..8640a422e99d --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Quota/update.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "eastus", + "api-version": "2021-03-01-preview", + "parameters": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 100, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 200, + "unit": "Count" + } + ] + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 100, + "unit": "Count", + "status": "Success" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 200, + "unit": "Count", + "status": "Success" + } + ] + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Usage/list.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Usage/list.json new file mode 100644 index 000000000000..1bf89278a5bd --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Usage/list.json @@ -0,0 +1,400 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "eastus", + "api-version": "2021-03-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages", + "type": "Microsoft.MachineLearningServices/totalCores/usages", + "currentValue": 7, + "limit": 100, + "name": { + "localizedValue": "Clusters", + "value": "Clusters" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages", + "type": "Microsoft.MachineLearningServices/dedicatedCores/usages", + "currentValue": 14, + "limit": 24, + "name": { + "localizedValue": "Total Cluster Dedicated Regional vCPUs", + "value": "Total Cluster Dedicated Regional vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_D_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 48, + "name": { + "localizedValue": "Standard D Family Cluster Dedicated vCPUs", + "value": "Standard D Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 2, + "limit": 24, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/usages/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/usages", + "currentValue": 2, + "limit": 24, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/computes/demo_cluster1_dsv2/usages/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/computes/usages", + "currentValue": 2, + "limit": 24, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/computes/demo_cluster2_dsv2/usages/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/computes/usages", + "currentValue": 0, + "limit": 24, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_Dv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 24, + "name": { + "localizedValue": "Standard Dv2 Family Cluster Dedicated vCPUs", + "value": "Standard Dv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_FSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 24, + "name": { + "value": "Standard FSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard FSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 12, + "limit": 24, + "name": { + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs", + "value": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/usages/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspace/usages", + "currentValue": 6, + "limit": 24, + "name": { + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs", + "value": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/computes/demo_cluster1_nc/usages/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspace/computes/usages", + "currentValue": 6, + "limit": 24, + "name": { + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs", + "value": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/usages/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/usages", + "currentValue": 6, + "limit": 24, + "name": { + "value": "Standard NC Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/computes/demo_cluser1_nc/usages/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/computes/usages", + "currentValue": 6, + "limit": 24, + "name": { + "value": "Standard NC Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NCv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 0, + "name": { + "localizedValue": "Standard NCv2 Family Cluster Dedicated vCPUs", + "value": "Standard NCv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NCv3_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 0, + "name": { + "localizedValue": "Standard NCv3 Family Cluster Dedicated vCPUs", + "value": "Standard NCv3 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_ND_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 0, + "name": { + "localizedValue": "Standard ND Family Cluster Dedicated vCPUs", + "value": "Standard ND Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NDv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 0, + "name": { + "value": "Standard NDv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NDv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NV_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 24, + "name": { + "localizedValue": "Standard NV Family Cluster Dedicated vCPUs", + "value": "Standard NV Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages", + "type": "Microsoft.MachineLearningServices/lowPriorityCores/usages", + "currentValue": 18, + "limit": 50, + "name": { + "localizedValue": "Total Cluster LowPriority Regional vCPUs", + "value": "Total Cluster LowPriority Regional vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_D_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "value": "Standard D Family Cluster LowPriority vCPUs", + "localizedValue": "Standard D Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_DSv2_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard DSv2 Family Cluster LowPriority vCPUs", + "value": "Standard DSv2 Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_Dv2_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard Dv2 Family Cluster LowPriority vCPUs", + "value": "Standard Dv2 Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_FSv2_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard FSv2 Family Cluster LowPriority vCPUs", + "value": "Standard FSv2 Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NC_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 18, + "limit": -1, + "name": { + "localizedValue": "Standard NC Family Cluster LowPriority vCPUs", + "value": "Standard NC Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/usages/Standard_NC_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/workspace/usages", + "currentValue": 6, + "limit": -1, + "name": { + "localizedValue": "Standard NC Family Cluster LowPriority vCPUs", + "value": "Standard NC Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/computes/demo_cluster1_lowPriority_nc/usages/Standard_NC_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/workspace/computes/usages", + "currentValue": 6, + "limit": -1, + "name": { + "localizedValue": "Standard NC Family Cluster LowPriority vCPUs", + "value": "Standard NC Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/usages/Standard_NC_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/workspace/usages", + "currentValue": 12, + "limit": -1, + "name": { + "localizedValue": "Standard NC Family Cluster LowPriority vCPUs", + "value": "Standard NC Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/computes/demo_cluster2_lowPriority_nc/usages/Standard_NC_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/workspace/computes/usages", + "currentValue": 6, + "limit": -1, + "name": { + "localizedValue": "Standard NC Family Cluster LowPriority vCPUs", + "value": "Standard NC Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/computes/demo_cluster3_lowPriority_nc/usages/Standard_NC_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/workspace/computes/usages", + "currentValue": 6, + "limit": -1, + "name": { + "localizedValue": "Standard NC Family Cluster LowPriority vCPUs", + "value": "Standard NC Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NCv2_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard NCv2 Family Cluster LowPriority vCPUs", + "value": "Standard NCv2 Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NCv3_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard NCv3 Family Cluster LowPriority vCPUs", + "value": "Standard NCv3 Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_ND_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard ND Family Cluster LowPriority vCPUs", + "value": "Standard ND Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NDv2_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard NDv2 Family Cluster LowPriority vCPUs", + "value": "Standard NDv2 Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NV_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard NV Family Cluster LowPriority vCPUs", + "value": "Standard NV Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + } + ] + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/VirtualMachineSize/list.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/VirtualMachineSize/list.json new file mode 100644 index 000000000000..c592abfa96ae --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/VirtualMachineSize/list.json @@ -0,0 +1,348 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "api-version": "2021-03-01-preview", + "location": "eastus" + }, + "responses": { + "200": { + "body": { + "amlCompute": [ + { + "name": "Standard_D1_v2", + "family": "standardDv2Family", + "vCPUs": 1, + "gpus": 0, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 51200, + "memoryGB": 3.5, + "lowPriorityCapable": true, + "premiumIO": false, + "estimatedVMPrices": { + "billingCurrency": "USD", + "unitOfMeasure": "OneHour", + "values": [ + { + "retailPrice": 0.05, + "osType": "Windows", + "vmTier": "LowPriority" + }, + { + "retailPrice": 0.12, + "osType": "Windows", + "vmTier": "Standard" + }, + { + "retailPrice": 0.01, + "osType": "Linux", + "vmTier": "LowPriority" + }, + { + "retailPrice": 0.06, + "osType": "Linux", + "vmTier": "Standard" + } + ] + } + }, + { + "name": "Standard_D2_v2", + "family": "standardDv2Family", + "vCPUs": 2, + "gpus": 0, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 102400, + "memoryGB": 7, + "lowPriorityCapable": true, + "premiumIO": false, + "estimatedVMPrices": { + "billingCurrency": "USD", + "unitOfMeasure": "OneHour", + "values": [ + { + "retailPrice": 0.09, + "osType": "Windows", + "vmTier": "LowPriority" + }, + { + "retailPrice": 0.23, + "osType": "Windows", + "vmTier": "Standard" + }, + { + "retailPrice": 0.11, + "osType": "Linux", + "vmTier": "Standard" + }, + { + "retailPrice": 0.02, + "osType": "Linux", + "vmTier": "LowPriority" + } + ] + } + }, + { + "name": "Standard_D11_v2", + "family": "standardDv2Family", + "vCPUs": 2, + "gpus": 0, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 102400, + "memoryGB": 14, + "lowPriorityCapable": true, + "premiumIO": false, + "estimatedVMPrices": { + "billingCurrency": "USD", + "unitOfMeasure": "OneHour", + "values": [ + { + "retailPrice": 0.15, + "osType": "Linux", + "vmTier": "Standard" + }, + { + "retailPrice": 0.1, + "osType": "Windows", + "vmTier": "LowPriority" + }, + { + "retailPrice": 0.03, + "osType": "Linux", + "vmTier": "LowPriority" + }, + { + "retailPrice": 0.24, + "osType": "Windows", + "vmTier": "Standard" + } + ] + } + }, + { + "name": "Standard_DS1_v2", + "family": "standardDSv2Family", + "vCPUs": 1, + "gpus": 0, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 7168, + "memoryGB": 3.5, + "lowPriorityCapable": true, + "premiumIO": true, + "estimatedVMPrices": { + "billingCurrency": "USD", + "unitOfMeasure": "OneHour", + "values": [ + { + "retailPrice": 0.05, + "osType": "Windows", + "vmTier": "LowPriority" + }, + { + "retailPrice": 0.12, + "osType": "Windows", + "vmTier": "Standard" + }, + { + "retailPrice": 0.01, + "osType": "Linux", + "vmTier": "LowPriority" + }, + { + "retailPrice": 0.06, + "osType": "Linux", + "vmTier": "Standard" + } + ] + } + }, + { + "name": "Standard_F2s_v2", + "family": "standardFSv2Family", + "vCPUs": 2, + "gpus": 0, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 16384, + "memoryGB": 4, + "lowPriorityCapable": true, + "premiumIO": true, + "estimatedVMPrices": { + "billingCurrency": "USD", + "unitOfMeasure": "OneHour", + "values": [ + { + "retailPrice": 0.02, + "osType": "Linux", + "vmTier": "LowPriority" + }, + { + "retailPrice": 0.08, + "osType": "Linux", + "vmTier": "Standard" + }, + { + "retailPrice": 0.06, + "osType": "Windows", + "vmTier": "LowPriority" + }, + { + "retailPrice": 0.16, + "osType": "Windows", + "vmTier": "Standard" + } + ] + } + }, + { + "name": "Standard_M32-8ms", + "family": "standardMSFamily", + "vCPUs": 32, + "gpus": 0, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1024000, + "memoryGB": 875, + "lowPriorityCapable": true, + "premiumIO": true, + "estimatedVMPrices": { + "billingCurrency": "USD", + "unitOfMeasure": "OneHour", + "values": [ + { + "retailPrice": 8.43, + "osType": "Windows", + "vmTier": "Standard" + }, + { + "retailPrice": 1.23, + "osType": "Linux", + "vmTier": "LowPriority" + }, + { + "retailPrice": 3.37, + "osType": "Windows", + "vmTier": "LowPriority" + }, + { + "retailPrice": 6.15, + "osType": "Linux", + "vmTier": "Standard" + } + ] + } + }, + { + "name": "Standard_NC6", + "family": "standardNCFamily", + "vCPUs": 6, + "gpus": 1, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 389120, + "memoryGB": 56, + "lowPriorityCapable": true, + "premiumIO": false, + "estimatedVMPrices": { + "billingCurrency": "USD", + "unitOfMeasure": "OneHour", + "values": [ + { + "retailPrice": 0.18, + "osType": "Linux", + "vmTier": "LowPriority" + }, + { + "retailPrice": 0.43, + "osType": "Windows", + "vmTier": "LowPriority" + }, + { + "retailPrice": 0.9, + "osType": "Linux", + "vmTier": "Standard" + }, + { + "retailPrice": 1.08, + "osType": "Windows", + "vmTier": "Standard" + } + ] + } + }, + { + "name": "Standard_NV6", + "family": "standardNVFamily", + "vCPUs": 6, + "gpus": 1, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 389120, + "memoryGB": 56, + "lowPriorityCapable": true, + "premiumIO": false, + "estimatedVMPrices": { + "billingCurrency": "USD", + "unitOfMeasure": "OneHour", + "values": [ + { + "retailPrice": 1.28, + "osType": "Windows", + "vmTier": "Standard" + }, + { + "retailPrice": 0.51, + "osType": "Windows", + "vmTier": "LowPriority" + }, + { + "retailPrice": 0.22, + "osType": "Linux", + "vmTier": "LowPriority" + }, + { + "retailPrice": 1.09, + "osType": "Linux", + "vmTier": "Standard" + } + ] + } + }, + { + "name": "Standard_ND6s", + "family": "standardNDSFamily", + "vCPUs": 6, + "gpus": 1, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 344064, + "memoryGB": 112, + "lowPriorityCapable": true, + "premiumIO": true, + "estimatedVMPrices": { + "billingCurrency": "USD", + "unitOfMeasure": "OneHour", + "values": [ + { + "retailPrice": 2.07, + "osType": "Linux", + "vmTier": "Standard" + }, + { + "retailPrice": 0.36, + "osType": "Linux", + "vmTier": "LowPriority" + }, + { + "retailPrice": 0.87, + "osType": "Windows", + "vmTier": "LowPriority" + }, + { + "retailPrice": 2.49, + "osType": "Windows", + "vmTier": "Standard" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Workspace/create.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Workspace/create.json new file mode 100644 index 000000000000..854a7225b1c6 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Workspace/create.json @@ -0,0 +1,157 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workspace-1234", + "workspaceName": "testworkspace", + "api-version": "2021-03-01-preview", + "parameters": { + "location": "eastus2euap", + "identity": { + "type": "SystemAssigned,UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testuai": {} + } + }, + "properties": { + "friendlyName": "HelloName", + "description": "test description", + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "encryption": { + "status": "Enabled", + "identity": { + "userAssignedIdentity": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testuai" + }, + "keyVaultProperties": { + "keyVaultArmId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "keyIdentifier": "https://testkv.vault.azure.net/keys/testkey/aabbccddee112233445566778899aabb", + "identityClientId": "" + } + }, + "hbiWorkspace": false, + "sharedPrivateLinkResources": [ + { + "name": "testdbresource", + "properties": { + "privateLinkResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.DocumentDB/databaseAccounts/testdbresource/privateLinkResources/Sql", + "groupId": "Sql", + "requestMessage": "Please approve", + "status": "Approved" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "identity": { + "principalId": "00000000-1111-2222-3333-444444444444", + "tenantId": "00000000-1111-2222-3333-444444444444", + "type": "SystemAssigned,UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testuai": { + "principalId": "00000000-1111-2222-3333-444444444444", + "clientId": "00000000-1111-2222-3333-444444444444", + "tenantId": "00000000-1111-2222-3333-444444444444" + } + } + }, + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "friendlyName": "HelloName", + "description": "test description", + "encryption": { + "status": "Enabled", + "identity": { + "userAssignedIdentity": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testuai" + }, + "keyVaultProperties": { + "keyVaultArmId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "keyIdentifier": "https://testkv.vault.azure.net/keys/testkey/aabbccddee112233445566778899aabb", + "identityClientId": "" + } + }, + "hbiWorkspace": false, + "allowPublicAccessWhenBehindVnet": false, + "sharedPrivateLinkResources": [ + { + "name": "testdbresource", + "properties": { + "privateLinkResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.DocumentDB/databaseAccounts/testdbresource/privateLinkResources/Sql", + "groupId": "Sql", + "requestMessage": "Please approve", + "status": "Approved" + } + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "identity": { + "principalId": "00000000-1111-2222-3333-444444444444", + "tenantId": "00000000-1111-2222-3333-444444444444", + "type": "SystemAssigned,UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testuai": { + "principalId": "00000000-1111-2222-3333-444444444444", + "clientId": "00000000-1111-2222-3333-444444444444", + "tenantId": "00000000-1111-2222-3333-444444444444" + } + } + }, + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "friendlyName": "HelloName", + "description": "test description", + "encryption": { + "status": "Enabled", + "identity": { + "userAssignedIdentity": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testuai" + }, + "keyVaultProperties": { + "keyVaultArmId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "keyIdentifier": "https://testkv.vault.azure.net/keys/testkey/aabbccddee112233445566778899aabb", + "identityClientId": "" + } + }, + "hbiWorkspace": false, + "allowPublicAccessWhenBehindVnet": false, + "sharedPrivateLinkResources": [ + { + "name": "testdbresource", + "properties": { + "privateLinkResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.DocumentDB/databaseAccounts/testdbresource/privateLinkResources/Sql", + "groupId": "Sql", + "requestMessage": "Please approve", + "status": "Approved" + } + } + ] + } + } + }, + "202": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Workspace/delete.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Workspace/delete.json new file mode 100644 index 000000000000..629525537333 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Workspace/delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workspace-1234", + "workspaceName": "testworkspace", + "api-version": "2021-03-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Workspace/get.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Workspace/get.json new file mode 100644 index 000000000000..306f17931b98 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Workspace/get.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workspace-1234", + "workspaceName": "testworkspace", + "api-version": "2021-03-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "identity": { + "principalId": "00000000-1111-2222-3333-444444444444", + "tenantId": "00000000-1111-2222-3333-444444444444", + "type": "SystemAssigned,UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testuai": { + "principalId": "00000000-1111-2222-3333-444444444444", + "clientId": "00000000-1111-2222-3333-444444444444", + "tenantId": "00000000-1111-2222-3333-444444444444" + } + } + }, + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "friendlyName": "HelloName", + "description": "test description", + "encryption": { + "status": "Enabled", + "identity": { + "userAssignedIdentity": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testuai" + }, + "keyVaultProperties": { + "keyVaultArmId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "keyIdentifier": "https://testkv.vault.azure.net/keys/testkey/aabbccddee112233445566778899aabb", + "identityClientId": "" + } + }, + "hbiWorkspace": false, + "serviceProvisionedResourceGroup": "testworkspace_0000111122223333", + "privateLinkCount": 0, + "allowPublicAccessWhenBehindVnet": false, + "imageBuildCompute": "testcompute", + "privateEndpointConnections": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/privateEndpointConnections/testprivatelinkconnection", + "name": "testprivatelinkconnection", + "type": "Microsoft.MachineLearningServices/workspaces/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg-1234/providers/Microsoft.Network/privateEndpoints/petest01" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionsRequired": "None" + } + } + } + ], + "sharedPrivateLinkResources": [ + { + "name": "testcosmosdbresource", + "properties": { + "privateLinkResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.DocumentDB/databaseAccounts/testcosmosdbresource/privateLinkResources/Sql", + "groupId": "Sql", + "requestMessage": "Please approve", + "status": "Approved" + } + } + ] + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Workspace/listByResourceGroup.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Workspace/listByResourceGroup.json new file mode 100644 index 000000000000..36b5c9335b5c --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Workspace/listByResourceGroup.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workspace-1234", + "api-version": "2021-03-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "friendlyName": "HelloName", + "description": "test description" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace1", + "name": "testworkspace1", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistryNew", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkvNew", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccountOld", + "discoveryUrl": "http://example.com", + "friendlyName": "HelloName 1", + "description": "test description" + } + } + ], + "nextLink": "nextLink" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Workspace/listBySubscription.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Workspace/listBySubscription.json new file mode 100644 index 000000000000..98c76fe04ec1 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Workspace/listBySubscription.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "api-version": "2021-03-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "friendlyName": "HelloName", + "description": "test description" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-5678/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistryNew", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkvNew", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccountOld", + "discoveryUrl": "http://example.com", + "friendlyName": "HelloName", + "description": "test description" + } + } + ], + "nextLink": "nextLink" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Workspace/listKeys.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Workspace/listKeys.json new file mode 100644 index 000000000000..6a75a7357a2a --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Workspace/listKeys.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "api-version": "2021-03-01-preview" + }, + "responses": { + "200": { + "body": { + "userStorageKey": null, + "userStorageResourceId": "/subscriptions/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/resourceGroups/ragargeastus2euap/providers/Microsoft.Storage/storageAccounts/testdemoworkazashomr", + "appInsightsInstrumentationKey": null, + "containerRegistryCredentials": { + "location": null, + "username": "testdemoworkjmjmeykp", + "passwords": [ + { + "name": "password", + "value": "" + }, + { + "name": "password2", + "value": "0KARRQoQHSUq1yViPWg7YFernOS=Ic/t" + } + ] + }, + "notebookAccessKeys": { + "primaryAccessKey": null, + "secondaryAccessKey": null + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Workspace/listNotebookAccessToken.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Workspace/listNotebookAccessToken.json new file mode 100644 index 000000000000..1e02bb8bf985 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Workspace/listNotebookAccessToken.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workspace-1234", + "workspaceName": "testworkspace", + "api-version": "2021-03-01-preview" + }, + "responses": { + "200": { + "body": { + "notebookResourceId": "94350843095843059", + "hostName": "Host product name", + "publicDns": "resource.notebooks.azure.net", + "tokenType": "Bearer", + "expiresIn": 28800.0, + "scope": "aznb_identity" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Workspace/listStorageAccountKeys.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Workspace/listStorageAccountKeys.json new file mode 100644 index 000000000000..b2489c8310bc --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Workspace/listStorageAccountKeys.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "api-version": "2021-03-01-preview" + }, + "responses": { + "200": { + "body": { + "userStorageKey": null + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Workspace/resyncKeys.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Workspace/resyncKeys.json new file mode 100644 index 000000000000..ad5607a0f414 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Workspace/resyncKeys.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "api-version": "2021-03-01-preview" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Workspace/update.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Workspace/update.json new file mode 100644 index 000000000000..cfaf8e966a91 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/Workspace/update.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workspace-1234", + "workspaceName": "testworkspace", + "api-version": "2021-03-01-preview", + "parameters": { + "properties": { + "friendlyName": "New friendly name", + "description": "new description" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "identity": { + "principalId": "00000000-1111-2222-3333-444444444444", + "tenantId": "00000000-1111-2222-3333-444444444444", + "type": "SystemAssigned" + }, + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "friendlyName": "New friendly name", + "description": "new description" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/WorkspaceConnection/create.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/WorkspaceConnection/create.json new file mode 100644 index 000000000000..93a1b75e8794 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/WorkspaceConnection/create.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup-1", + "workspaceName": "workspace-1", + "connectionName": "connection-1", + "api-version": "2021-03-01-preview", + "parameters": { + "name": "connection-1", + "properties": { + "category": "ACR", + "target": "www.facebook.com", + "authType": "PAT", + "value": "secrets" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1/providers/Microsoft.MachineLearningServices/workspaces/workspace-1/connections/connection-1", + "name": "connection-1", + "type": "Microsoft.MachineLearningServices/workspaces/connections", + "properties": { + "category": "ACR", + "target": "www.facebook.com", + "authType": "PAT", + "value": "secrets" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/WorkspaceConnection/delete.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/WorkspaceConnection/delete.json new file mode 100644 index 000000000000..9af6a18fa37f --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/WorkspaceConnection/delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup-1", + "workspaceName": "workspace-1", + "connectionName": "connection-1", + "api-version": "2021-03-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/WorkspaceConnection/get.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/WorkspaceConnection/get.json new file mode 100644 index 000000000000..eb63cb4de626 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/WorkspaceConnection/get.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup-1", + "workspaceName": "workspace-1", + "connectionName": "connection-1", + "api-version": "2021-03-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1/providers/Microsoft.MachineLearningServices/workspaces/workspace-1/connections/connection-1", + "name": "connection-1", + "type": "Microsoft.MachineLearningServices/workspaces/connections", + "properties": { + "category": "ACR", + "target": "www.facebook.com", + "authType": "PAT", + "value": "secrets" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/WorkspaceConnection/list.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/WorkspaceConnection/list.json new file mode 100644 index 000000000000..bcf7a9fc3dab --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/WorkspaceConnection/list.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup-1", + "workspaceName": "workspace-1", + "api-version": "2021-03-01-preview", + "target": "www.facebook.com", + "category": "ACR" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1/providers/Microsoft.MachineLearningServices/workspaces/workspace-1/linkedWorkspaces/connection-1", + "name": "connection-1", + "type": "Microsoft.MachineLearningServices/workspaces/connections", + "properties": { + "category": "ACR", + "target": "www.facebook.com", + "authType": "PAT", + "value": "secrets" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1/providers/Microsoft.MachineLearningServices/workspaces/workspace-1/linkedWorkspaces/connection-2", + "name": "connection-2", + "type": "Microsoft.MachineLearningServices/workspaces/connections", + "properties": { + "category": "ACR", + "target": "www.facebook.com", + "authType": "PAT", + "value": "secrets" + } + } + ] + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/WorkspaceFeature/list.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/WorkspaceFeature/list.json new file mode 100644 index 000000000000..87d906febb22 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/WorkspaceFeature/list.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "workspaceName": "testworkspace" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "automatedml_createeditexperimentsui", + "displayName": "Create edit experiments UI", + "description": "Create, edit or delete AutoML experiments in the SDK" + }, + { + "id": "workspace_upgradeworkspaceui", + "displayName": "Upgrade workspace UI", + "description": "Upgrade workspace from Basic to enterprise from the UI" + } + ] + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/WorkspaceSku/list.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/WorkspaceSku/list.json new file mode 100644 index 000000000000..4349f3de6716 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/examples/WorkspaceSku/list.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "{subscription-id}" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "workspaces", + "name": "Basic", + "tier": "Basic", + "locations": [ + "westus" + ], + "locationInfo": [ + { + "location": "westus", + "zones": [ + "westus-AZ02", + "westus-AZ01" + ] + } + ], + "capabilities": [ + { + "name": "automatedml_readhyperdrivesdk", + "value": "{\n \"id\": \"automatedml_ readhyperdrivesdk\",\n \"name\": \"Read hyperdrive SDK\",\n \"description\": \"Read only access to Hyperdrive in the SDK\"\n}" + }, + { + "name": "workspace_upgradeworkspacesdk", + "value": "{\n \"id\": \"workspace_upgradeworkspacesdk\",\n \"name\": \"Upgrade workspace SDK\",\n \"description\": \"Upgrade workspace from Basic to enterprise from the SDK\"\n}" + } + ], + "restrictions": [] + }, + { + "resourceType": "workspaces", + "name": "Enterprise", + "tier": "Enterprise", + "locations": [ + "westus" + ], + "locationInfo": [ + { + "location": "westus", + "zones": [ + "westus-AZ01" + ], + "zoneDetails": [ + { + "name": [ + "westus-AZ01" + ], + "capabilities": [ + { + "name": "automatedml_createeditexperimentssdk", + "value": "{\n \"id\": \"automatedml_createeditexperimentssdk\",\n \"name\": \"Create edit experiments SDK\",\n \"description\": \"Create, edit or delete AutoML experiments in the SDK\"\n}" + } + ] + } + ] + } + ], + "capabilities": [ + { + "name": "automatedml_createeditexperimentssdk", + "value": "{\n \"id\": \"automatedml_createeditexperimentssdk\",\n \"name\": \"Create edit experiments SDK\",\n \"description\": \"Create, edit or delete AutoML experiments in the SDK\"\n}" + } + ], + "restrictions": [] + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/machineLearningServices.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/machineLearningServices.json new file mode 100644 index 000000000000..0761b7b2c7cf --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/machineLearningServices.json @@ -0,0 +1,4849 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Machine Learning Workspaces", + "description": "These APIs allow end users to operate on Azure Machine Learning Workspace resources.", + "version": "2021-03-01-preview" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/providers/Microsoft.MachineLearningServices/operations": { + "get": { + "tags": [ + "Operation" + ], + "description": "Lists all of the available Azure Machine Learning Workspaces REST API operations.", + "operationId": "Operations_List", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}": { + "get": { + "tags": [ + "Workspaces" + ], + "description": "Gets the properties of the specified machine learning workspace.", + "operationId": "Workspaces_Get", + "x-ms-examples": { + "Get Workspace": { + "$ref": "./examples/Workspace/get.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Workspaces" + ], + "description": "Creates or updates a workspace with the specified parameters.", + "operationId": "Workspaces_CreateOrUpdate", + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create Workspace": { + "$ref": "./examples/Workspace/create.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "description": "The parameters for creating or updating a machine learning workspace.", + "required": true, + "schema": { + "$ref": "#/definitions/Workspace" + } + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "201": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "202": { + "description": "The request was successful; the request was well-formed and received properly." + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Workspaces" + ], + "description": "Deletes a machine learning workspace.", + "operationId": "Workspaces_Delete", + "x-ms-examples": { + "Delete Workspace": { + "$ref": "./examples/Workspace/delete.json" + } + }, + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly." + }, + "202": { + "description": "The request was accepted; the request was well-formed and received properly." + }, + "204": { + "description": "The machine learning workspace does not exist in the subscription." + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Workspaces" + ], + "description": "Updates a machine learning workspace with the specified parameters.", + "operationId": "Workspaces_Update", + "x-ms-examples": { + "Update Workspace": { + "$ref": "./examples/Workspace/update.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "description": "The parameters for updating a machine learning workspace.", + "required": true, + "schema": { + "$ref": "#/definitions/WorkspaceUpdateParameters" + } + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces": { + "get": { + "tags": [ + "Workspaces" + ], + "description": "Lists all the available machine learning workspaces under the specified resource group.", + "operationId": "Workspaces_ListByResourceGroup", + "x-ms-examples": { + "Get Workspaces by Resource Group": { + "$ref": "./examples/Workspace/listByResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/PaginationParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/WorkspaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/listKeys": { + "post": { + "tags": [ + "Workspaces" + ], + "description": "Lists all the keys associated with this workspace. This includes keys for the storage account, app insights and password for container registry", + "operationId": "Workspaces_ListKeys", + "x-ms-examples": { + "List Workspace Keys": { + "$ref": "./examples/Workspace/listKeys.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/ListWorkspaceKeysResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/resyncKeys": { + "post": { + "tags": [ + "Workspaces" + ], + "description": "Resync all the keys associated with this workspace. This includes keys for the storage account, app insights and password for container registry", + "operationId": "Workspaces_ResyncKeys", + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Resync Workspace Keys": { + "$ref": "./examples/Workspace/resyncKeys.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly." + }, + "202": { + "description": "The request was accepted; the request was well-formed and received properly." + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/locations/{location}/usages": { + "get": { + "tags": [ + "Usage" + ], + "operationId": "Usages_List", + "description": "Gets the current usage information as well as limits for AML resources for given subscription and location.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location for which resource usage is queried.", + "pattern": "^[-\\w\\._]+$" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ListUsagesResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Usages": { + "$ref": "./examples/Usage/list.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/locations/{location}/vmSizes": { + "get": { + "tags": [ + "VirtualMachineSizes" + ], + "operationId": "VirtualMachineSizes_List", + "description": "Returns supported VM Sizes in a location", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location upon which virtual-machine-sizes is queried.", + "pattern": "^[-\\w\\._]+$" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineSizeListResult" + } + } + }, + "x-ms-examples": { + "List VM Sizes": { + "$ref": "./examples/VirtualMachineSize/list.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/locations/{location}/updateQuotas": { + "post": { + "tags": [ + "Quota" + ], + "operationId": "Quotas_Update", + "description": "Update quota for each VM family in workspace.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location for update quota is queried.", + "pattern": "^[-\\w\\._]+$" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/QuotaUpdateParameters" + }, + "description": "Quota update parameters." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful.", + "schema": { + "$ref": "#/definitions/UpdateWorkspaceQuotasResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "update quotas": { + "$ref": "./examples/Quota/update.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/locations/{location}/quotas": { + "get": { + "tags": [ + "Quota" + ], + "operationId": "Quotas_List", + "description": "Gets the currently assigned Workspace Quotas based on VMFamily.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location for which resource usage is queried.", + "pattern": "^[-\\w\\._]+$" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ListWorkspaceQuotas" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List workspace quotas by VMFamily": { + "$ref": "./examples/Quota/list.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/workspaces": { + "get": { + "tags": [ + "Workspaces" + ], + "description": "Lists all the available machine learning workspaces under the specified subscription.", + "operationId": "Workspaces_ListBySubscription", + "x-ms-examples": { + "Get Workspaces by subscription": { + "$ref": "./examples/Workspace/listBySubscription.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/PaginationParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/WorkspaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/computes": { + "get": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "operationId": "Compute_List", + "description": "Gets computes in specified workspace.", + "x-ms-examples": { + "Get Computes": { + "$ref": "./examples/Compute/list.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/PaginationParameter" + } + ], + "responses": { + "200": { + "description": "The response includes a paginated array of Machine Learning computes and a URI to the next set of results, if any. For the more information the limits of the number of items in a resource group, see https://azure.microsoft.com/en-us/documentation/articles/azure-subscription-service-limits/.", + "schema": { + "$ref": "#/definitions/PaginatedComputeResourcesList" + } + }, + "default": { + "description": "Error response describing why the request failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/computes/{computeName}": { + "get": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "operationId": "Compute_Get", + "description": "Gets compute definition by its name. Any secrets (storage keys, service credentials, etc) are not returned - use 'keys' nested resource to get them.", + "x-ms-examples": { + "Get a AKS Compute": { + "$ref": "./examples/Compute/get/AKSCompute.json" + }, + "Get a AML Compute": { + "$ref": "./examples/Compute/get/AmlCompute.json" + }, + "Get an ComputeInstance": { + "$ref": "./examples/Compute/get/ComputeInstance.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success.", + "schema": { + "$ref": "#/definitions/ComputeResource" + } + }, + "default": { + "description": "Error response describing why the request failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "operationId": "Compute_CreateOrUpdate", + "description": "Creates or updates compute. This call will overwrite a compute if it exists. This is a nonrecoverable operation. If your intent is to create a new compute, do a GET first to verify that it does not exist yet.", + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create a AML Compute": { + "$ref": "./examples/Compute/createOrUpdate/BasicAmlCompute.json" + }, + "Create an ComputeInstance Compute with minimal inputs": { + "$ref": "./examples/Compute/createOrUpdate/ComputeInstanceMinimal.json" + }, + "Create an ComputeInstance Compute": { + "$ref": "./examples/Compute/createOrUpdate/ComputeInstance.json" + }, + "Create an ComputeInstance Compute with Schedules": { + "$ref": "./examples/Compute/createOrUpdate/ComputeInstanceWithSchedules.json" + }, + "Create AKS Compute": { + "$ref": "./examples/Compute/createOrUpdate/BasicAKSCompute.json" + }, + "Create a DataFactory Compute": { + "$ref": "./examples/Compute/createOrUpdate/BasicDataFactoryCompute.json" + }, + "Update a AML Compute": { + "$ref": "./examples/Compute/createOrUpdate/AmlCompute.json" + }, + "Update a AKS Compute": { + "$ref": "./examples/Compute/createOrUpdate/AKSCompute.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ComputeDefinitionParameter" + } + ], + "responses": { + "200": { + "description": "Compute creation or update initiated.", + "schema": { + "$ref": "#/definitions/ComputeResource" + } + }, + "201": { + "description": "Compute creation or update initiated.", + "headers": { + "Azure-AsyncOperation": { + "description": "URI to poll for asynchronous operation status.", + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/ComputeResource" + } + }, + "default": { + "description": "Error response describing why the request failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "operationId": "Compute_Update", + "description": "Updates properties of a compute. This call will overwrite a compute if it exists. This is a nonrecoverable operation.", + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update a AmlCompute Compute": { + "$ref": "./examples/Compute/patch.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ClusterUpdateParameters" + }, + "description": "Additional parameters for cluster update." + } + ], + "responses": { + "200": { + "description": "Compute update initiated.", + "schema": { + "$ref": "#/definitions/ComputeResource" + } + }, + "default": { + "description": "Error response describing why the request failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "operationId": "Compute_Delete", + "description": "Deletes specified Machine Learning compute.", + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete Compute": { + "$ref": "./examples/Compute/delete.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/UnderlyingResourceActionParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly." + }, + "202": { + "description": "Compute deletion initiated.", + "headers": { + "Azure-AsyncOperation": { + "description": "URI to poll for asynchronous operation status.", + "type": "string" + }, + "Location": { + "description": "URI to poll for asynchronous operation result.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the request failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/computes/{computeName}/listNodes": { + "post": { + "tags": [ + "MachineLearningComputes" + ], + "operationId": "Compute_ListNodes", + "description": "Get the details (e.g IP address, port etc) of all the compute nodes in the compute.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful. The response contains the list of IP addresses.", + "schema": { + "$ref": "#/definitions/AmlComputeNodesInformation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink", + "itemName": "nodes" + }, + "x-ms-examples": { + "Get compute nodes information for a compute": { + "$ref": "./examples/Compute/listNodes.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/listNotebookAccessToken": { + "post": { + "tags": [ + "Workspaces" + ], + "description": "return notebook access token and refresh token", + "operationId": "Workspaces_ListNotebookAccessToken", + "x-ms-examples": { + "List Workspace Keys": { + "$ref": "./examples/Workspace/listNotebookAccessToken.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/NotebookAccessTokenResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/computes/{computeName}/listKeys": { + "post": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "operationId": "Compute_ListKeys", + "description": "Gets secrets related to Machine Learning compute (storage keys, service credentials, etc).", + "x-ms-examples": { + "List AKS Compute Keys": { + "$ref": "./examples/Compute/listKeys.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success.", + "schema": { + "$ref": "#/definitions/ComputeSecrets" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/computes/{computeName}/start": { + "post": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "operationId": "Compute_Start", + "description": "Posts a start action to a compute instance", + "x-ms-examples": { + "Start ComputeInstance Compute": { + "$ref": "./examples/Compute/start.json" + } + }, + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Success." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/computes/{computeName}/stop": { + "post": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "operationId": "Compute_Stop", + "description": "Posts a stop action to a compute instance", + "x-ms-examples": { + "Stop ComputeInstance Compute": { + "$ref": "./examples/Compute/stop.json" + } + }, + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Success." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/computes/{computeName}/restart": { + "post": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "operationId": "Compute_Restart", + "description": "Posts a restart action to a compute instance", + "x-ms-examples": { + "Restart ComputeInstance Compute": { + "$ref": "./examples/Compute/restart.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/computes/{computeName}/updateSchedules": { + "post": { + "tags": [ + "MachineLearningComputes" + ], + "operationId": "Compute_UpdateSchedules", + "description": "Updates schedules of a compute instance", + "x-ms-examples": { + "Update schedules of ComputeInstance": { + "$ref": "./examples/Compute/updateSchedules.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "description": "The object for updating schedules of specified ComputeInstance.", + "schema": { + "$ref": "#/definitions/ComputeSchedules" + } + } + ], + "responses": { + "200": { + "description": "Success." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/privateEndpointConnections": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_List", + "description": "List all the private endpoint connections associated with the workspace.", + "x-ms-examples": { + "StorageAccountListPrivateEndpointConnections": { + "$ref": "./examples/PrivateEndpointConnection/list.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Successfully retrieved private endpoint connections.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "WorkspacePrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Get", + "description": "Gets the specified private endpoint connection associated with the workspace.", + "x-ms-examples": { + "WorkspaceGetPrivateEndpointConnection": { + "$ref": "./examples/PrivateEndpointConnection/get.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionName" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Get the private endpoint connection properties successfully.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WorkspacePrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_CreateOrUpdate", + "description": "Update the state of specified private endpoint connection associated with the workspace.", + "x-ms-examples": { + "WorkspacePutPrivateEndpointConnection": { + "$ref": "./examples/PrivateEndpointConnection/createOrUpdate.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionName" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "properties", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "The private endpoint connection properties." + } + ], + "responses": { + "200": { + "description": "OK -- Update the private endpoint connection properties successfully.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WorkspacePrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Delete", + "description": "Deletes the specified private endpoint connection associated with the workspace.", + "x-ms-examples": { + "WorkspaceDeletePrivateEndpointConnection": { + "$ref": "./examples/PrivateEndpointConnection/delete.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionName" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Delete the private endpoint connection successfully." + }, + "204": { + "description": "No Content -- The private endpoint connection does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/privateLinkResources": { + "get": { + "tags": [ + "WorkspacePrivateLinkResources" + ], + "operationId": "PrivateLinkResources_List", + "description": "Gets the private link resources that need to be created for a workspace.", + "x-ms-examples": { + "WorkspaceListPrivateLinkResources": { + "$ref": "./examples/PrivateLinkResource/list.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private link resources.", + "schema": { + "$ref": "#/definitions/PrivateLinkResourceListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/prepareNotebook": { + "post": { + "tags": [ + "ProxyOperations" + ], + "operationId": "Notebooks_Prepare", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Prepare Notebook": { + "$ref": "./examples/Notebook/prepare.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/NotebookResourceInfo" + } + }, + "202": { + "description": "The request was successful; the request was well-formed and received properly." + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/listStorageAccountKeys": { + "post": { + "tags": [ + "ProxyOperations" + ], + "operationId": "Workspaces_ListStorageAccountKeys", + "x-ms-examples": { + "List Workspace Keys": { + "$ref": "./examples/Workspace/listStorageAccountKeys.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/ListStorageAccountKeysResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/listNotebookKeys": { + "post": { + "tags": [ + "ProxyOperations" + ], + "operationId": "Notebooks_ListKeys", + "x-ms-examples": { + "List Workspace Keys": { + "$ref": "./examples/Notebook/listKeys.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/ListNotebookKeysResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/connections": { + "get": { + "tags": [ + "WorkspaceConnections" + ], + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "ListWorkspaceConnections": { + "$ref": "./examples/WorkspaceConnection/list.json" + } + }, + "operationId": "WorkspaceConnections_List", + "description": "List all connections under a AML workspace.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/TargetParameter" + }, + { + "$ref": "#/parameters/CategoryParameter" + } + ], + "responses": { + "200": { + "description": "The response includes a paginated array of Workspace connections and a URI to the next set of results, if any. For the more information the limits of the number of items in a resource group, see https://azure.microsoft.com/en-us/documentation/articles/azure-subscription-service-limits/.", + "schema": { + "$ref": "#/definitions/PaginatedWorkspaceConnectionsList" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/connections/{connectionName}": { + "put": { + "tags": [ + "WorkspaceConnections" + ], + "operationId": "WorkspaceConnections_Create", + "description": "Add a new workspace connection.", + "x-ms-examples": { + "CreateWorkspaceConnection": { + "$ref": "./examples/WorkspaceConnection/create.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ConnectionName" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "description": "The object for creating or updating a new workspace connection", + "required": true, + "schema": { + "$ref": "#/definitions/WorkspaceConnectionDto" + } + } + ], + "responses": { + "200": { + "description": "Successfully created the workspace connection.", + "schema": { + "$ref": "#/definitions/WorkspaceConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "WorkspaceConnections" + ], + "operationId": "WorkspaceConnections_Get", + "description": "Get the detail of a workspace connection.", + "x-ms-examples": { + "GetWorkspaceConnection": { + "$ref": "./examples/WorkspaceConnection/get.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ConnectionName" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the detail of the linked workspace.", + "schema": { + "$ref": "#/definitions/WorkspaceConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WorkspaceConnections" + ], + "operationId": "WorkspaceConnections_Delete", + "description": "Delete a workspace connection.", + "x-ms-examples": { + "DeleteWorkspaceConnection": { + "$ref": "./examples/WorkspaceConnection/delete.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ConnectionName" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the workspace connection." + }, + "204": { + "description": "Specific workspace connection not found." + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "parameters": { + "WorkspaceNameParameter": { + "name": "workspaceName", + "description": "Name of Azure Machine Learning workspace.", + "in": "path", + "type": "string", + "required": true, + "x-ms-parameter-location": "method" + }, + "ComputeNameParameter": { + "name": "computeName", + "description": "Name of the Azure Machine Learning compute.", + "in": "path", + "type": "string", + "required": true, + "x-ms-parameter-location": "method" + }, + "AsyncOperationIdParameter": { + "name": "asyncOperationId", + "description": "Identifier of an asynchronous Azure Machine Learning compute operation.", + "in": "path", + "type": "string", + "required": true, + "x-ms-parameter-location": "method" + }, + "LocationParameter": { + "name": "location", + "description": "The name of the Azure location/region.", + "in": "path", + "type": "string", + "required": true, + "x-ms-parameter-location": "method" + }, + "PaginationParameter": { + "in": "query", + "name": "$skip", + "type": "string", + "description": "Continuation token for pagination.", + "required": false, + "x-ms-parameter-location": "method" + }, + "ComputeDefinitionParameter": { + "in": "body", + "name": "parameters", + "description": "Payload with Machine Learning compute definition.", + "required": true, + "schema": { + "$ref": "#/definitions/ComputeResource" + }, + "x-ms-parameter-location": "method" + }, + "ComputeTypeParameter": { + "in": "query", + "name": "compute-type", + "type": "string", + "description": "Type of compute to filter by.", + "required": false, + "x-ms-parameter-location": "method" + }, + "UnderlyingResourceActionParameter": { + "in": "query", + "name": "underlyingResourceAction", + "type": "string", + "description": "Delete the underlying compute if 'Delete', or detach the underlying compute from workspace if 'Detach'.", + "required": true, + "enum": [ + "Delete", + "Detach" + ], + "x-ms-enum": { + "name": "UnderlyingResourceAction", + "modelAsString": true + }, + "x-ms-parameter-location": "method" + }, + "PrivateEndpointConnectionName": { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint connection associated with the workspace", + "x-ms-parameter-location": "method" + }, + "ConnectionName": { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "Friendly name of the workspace connection", + "x-ms-parameter-location": "method" + }, + "TargetParameter": { + "in": "query", + "name": "target", + "type": "string", + "description": "Target of the workspace connection.", + "required": false, + "x-ms-parameter-location": "method" + }, + "CategoryParameter": { + "in": "query", + "name": "category", + "type": "string", + "description": "Category of the workspace connection.", + "required": false, + "x-ms-parameter-location": "method" + } + }, + "definitions": { + "Operation": { + "description": "Azure Machine Learning workspace REST API operation", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}", + "type": "string" + }, + "display": { + "description": "Display name of operation", + "properties": { + "provider": { + "description": "The resource provider name: Microsoft.MachineLearningExperimentation", + "type": "string" + }, + "resource": { + "description": "The resource on which the operation is performed.", + "type": "string" + }, + "operation": { + "description": "The operation that users can perform.", + "type": "string" + }, + "description": { + "description": "The description for the operation.", + "type": "string" + } + } + } + } + }, + "OperationListResult": { + "description": "An array of operations supported by the resource provider.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "description": "List of AML workspace operations supported by the AML workspace resource provider." + } + } + }, + "Workspace": { + "type": "object", + "description": "An object that represents a machine learning workspace.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/WorkspaceProperties", + "description": "The properties of the machine learning workspace.", + "x-ms-client-flatten": true + }, + "identity": { + "$ref": "#/definitions/Identity", + "description": "The identity of the resource." + }, + "location": { + "description": "Specifies the location of the resource.", + "type": "string" + }, + "tags": { + "description": "Contains resource tags defined as key/value pairs.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "The sku of the workspace." + }, + "systemData": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData" + } + } + }, + "WorkspaceProperties": { + "type": "object", + "description": "The properties of a machine learning workspace.", + "properties": { + "workspaceId": { + "description": "The immutable id associated with this workspace.", + "type": "string", + "readOnly": true + }, + "description": { + "description": "The description of this workspace.", + "type": "string" + }, + "friendlyName": { + "description": "The friendly name for this workspace. This name in mutable", + "type": "string" + }, + "keyVault": { + "description": "ARM id of the key vault associated with this workspace. This cannot be changed once the workspace has been created", + "type": "string" + }, + "applicationInsights": { + "description": "ARM id of the application insights associated with this workspace. This cannot be changed once the workspace has been created", + "type": "string" + }, + "containerRegistry": { + "description": "ARM id of the container registry associated with this workspace. This cannot be changed once the workspace has been created", + "type": "string" + }, + "storageAccount": { + "description": "ARM id of the storage account associated with this workspace. This cannot be changed once the workspace has been created", + "type": "string" + }, + "discoveryUrl": { + "description": "Url for the discovery service to identify regional endpoints for machine learning experimentation services", + "type": "string" + }, + "provisioningState": { + "type": "string", + "enum": [ + "Unknown", + "Updating", + "Creating", + "Deleting", + "Succeeded", + "Failed", + "Canceled" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + }, + "readOnly": true, + "description": "The current deployment state of workspace resource. The provisioningState is to indicate states for resource provisioning." + }, + "encryption": { + "$ref": "#/definitions/EncryptionProperty", + "description": "The encryption settings of Azure ML workspace." + }, + "hbiWorkspace": { + "type": "boolean", + "description": "The flag to signal HBI data in the workspace and reduce diagnostic data collected by the service", + "default": false + }, + "serviceProvisionedResourceGroup": { + "type": "string", + "description": "The name of the managed resource group created by workspace RP in customer subscription if the workspace is CMK workspace", + "readOnly": true + }, + "privateLinkCount": { + "type": "integer", + "format": "int32", + "description": "Count of private connections in the workspace", + "readOnly": true + }, + "imageBuildCompute": { + "description": "The compute name for image build", + "type": "string" + }, + "allowPublicAccessWhenBehindVnet": { + "type": "boolean", + "description": "The flag to indicate whether to allow public access when behind VNet.", + "default": false + }, + "privateEndpointConnections": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "The list of private endpoint connections in the workspace." + }, + "sharedPrivateLinkResources": { + "type": "array", + "items": { + "$ref": "#/definitions/SharedPrivateLinkResource" + }, + "description": "The list of shared private link resources in this workspace." + }, + "notebookInfo": { + "readOnly": true, + "$ref": "#/definitions/NotebookResourceInfo", + "description": "The notebook info of Azure ML workspace." + }, + "serviceManagedResourcesSettings": { + "$ref": "#/definitions/ServiceManagedResourcesSettings", + "description": "The service managed resource settings." + }, + "primaryUserAssignedIdentity": { + "description": "The user assigned identity resource id that represents the workspace identity.", + "type": "string" + }, + "tenantId": { + "description": "The tenant id associated with this workspace.", + "type": "string", + "readOnly": true + } + } + }, + "WorkspaceUpdateParameters": { + "description": "The parameters for updating a machine learning workspace.", + "properties": { + "tags": { + "description": "The resource tags for the machine learning workspace.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "The sku of the workspace." + }, + "identity": { + "$ref": "#/definitions/Identity", + "description": "The identity of the resource." + }, + "properties": { + "$ref": "#/definitions/WorkspacePropertiesUpdateParameters", + "description": "The properties that the machine learning workspace will be updated with.", + "x-ms-client-flatten": true + } + } + }, + "WorkspacePropertiesUpdateParameters": { + "description": "The parameters for updating the properties of a machine learning workspace.", + "properties": { + "description": { + "description": "The description of this workspace.", + "type": "string" + }, + "friendlyName": { + "description": "The friendly name for this workspace.", + "type": "string" + }, + "imageBuildCompute": { + "description": "The compute name for image build", + "type": "string" + }, + "serviceManagedResourcesSettings": { + "$ref": "#/definitions/ServiceManagedResourcesSettings", + "description": "The service managed resource settings." + }, + "primaryUserAssignedIdentity": { + "description": "The user assigned identity resource id that represents the workspace identity.", + "type": "string" + } + } + }, + "UsageName": { + "properties": { + "value": { + "readOnly": true, + "type": "string", + "description": "The name of the resource." + }, + "localizedValue": { + "readOnly": true, + "type": "string", + "description": "The localized name of the resource." + } + }, + "description": "The Usage Names." + }, + "Usage": { + "type": "object", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Specifies the resource ID." + }, + "amlWorkspaceLocation": { + "readOnly": true, + "type": "string", + "description": "Region of the AML workspace in the id." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Specifies the resource type." + }, + "unit": { + "readOnly": true, + "type": "string", + "description": "An enum describing the unit of usage measurement.", + "enum": [ + "Count" + ], + "x-ms-enum": { + "name": "UsageUnit", + "modelAsString": true + } + }, + "currentValue": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The current usage of the resource." + }, + "limit": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The maximum permitted usage of the resource." + }, + "name": { + "readOnly": true, + "$ref": "#/definitions/UsageName", + "description": "The name of the type of usage." + } + }, + "description": "Describes AML Resource Usage." + }, + "ListUsagesResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Usage" + }, + "description": "The list of AML resource usages." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URI to fetch the next page of AML resource usage information. Call ListNext() with this to fetch the next page of AML resource usage information." + } + }, + "description": "The List Usages operation response." + }, + "VirtualMachineSize": { + "properties": { + "name": { + "type": "string", + "title": "Virtual Machine size name", + "description": "The name of the virtual machine size.", + "readOnly": true + }, + "family": { + "type": "string", + "title": "Virtual Machine family name", + "description": "The family name of the virtual machine size.", + "readOnly": true + }, + "vCPUs": { + "type": "integer", + "format": "int32", + "title": "Number of vPUs", + "description": "The number of vCPUs supported by the virtual machine size.", + "readOnly": true + }, + "gpus": { + "type": "integer", + "format": "int32", + "title": "Number of gPUs", + "description": "The number of gPUs supported by the virtual machine size.", + "readOnly": true + }, + "osVhdSizeMB": { + "type": "integer", + "format": "int32", + "title": "OS VHD Disk size", + "description": "The OS VHD disk size, in MB, allowed by the virtual machine size.", + "readOnly": true + }, + "maxResourceVolumeMB": { + "type": "integer", + "format": "int32", + "title": "Resource volume size", + "description": "The resource volume size, in MB, allowed by the virtual machine size.", + "readOnly": true + }, + "memoryGB": { + "type": "number", + "format": "double", + "title": "Memory size", + "description": "The amount of memory, in GB, supported by the virtual machine size.", + "readOnly": true + }, + "lowPriorityCapable": { + "type": "boolean", + "title": "Low priority capable", + "description": "Specifies if the virtual machine size supports low priority VMs.", + "readOnly": true + }, + "premiumIO": { + "type": "boolean", + "title": "Premium IO supported", + "description": "Specifies if the virtual machine size supports premium IO.", + "readOnly": true + }, + "estimatedVMPrices": { + "title": "Estimated VM prices", + "description": "The estimated price information for using a VM.", + "$ref": "#/definitions/EstimatedVMPrices" + } + }, + "description": "Describes the properties of a VM size." + }, + "EstimatedVMPrices": { + "properties": { + "billingCurrency": { + "type": "string", + "title": "Billing currency", + "description": "Three lettered code specifying the currency of the VM price. Example: USD", + "enum": [ + "USD" + ], + "x-ms-enum": { + "name": "BillingCurrency", + "modelAsString": true + } + }, + "unitOfMeasure": { + "type": "string", + "title": "Unit of time measure", + "description": "The unit of time measurement for the specified VM price. Example: OneHour", + "enum": [ + "OneHour" + ], + "x-ms-enum": { + "name": "UnitOfMeasure", + "modelAsString": true + } + }, + "values": { + "type": "array", + "items": { + "$ref": "#/definitions/EstimatedVMPrice" + }, + "title": "List of estimated VM prices.", + "description": "The list of estimated prices for using a VM of a particular OS type, tier, etc." + } + }, + "required": [ + "billingCurrency", + "unitOfMeasure", + "values" + ], + "description": "The estimated price info for using a VM." + }, + "EstimatedVMPrice": { + "properties": { + "retailPrice": { + "type": "number", + "format": "double", + "title": "Retail price", + "description": "The price charged for using the VM." + }, + "osType": { + "type": "string", + "title": "OS type", + "description": "Operating system type used by the VM.", + "enum": [ + "Linux", + "Windows" + ], + "x-ms-enum": { + "name": "VMPriceOSType", + "modelAsString": true + } + }, + "vmTier": { + "type": "string", + "title": "VM tier", + "description": "The type of the VM.", + "enum": [ + "Standard", + "LowPriority", + "Spot" + ], + "x-ms-enum": { + "name": "VMTier", + "modelAsString": true + } + } + }, + "required": [ + "retailPrice", + "osType", + "vmTier" + ], + "description": "The estimated price info for using a VM of a particular OS type, tier, etc." + }, + "VirtualMachineSizeListResult": { + "properties": { + "amlCompute": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineSize" + }, + "description": "The list of virtual machine sizes supported by AmlCompute." + } + }, + "description": "The List Virtual Machine size operation response." + }, + "WorkspaceListResult": { + "description": "The result of a request to list machine learning workspaces.", + "properties": { + "value": { + "description": "The list of machine learning workspaces. Since this list may be incomplete, the nextLink field should be used to request the next list of machine learning workspaces.", + "type": "array", + "items": { + "$ref": "#/definitions/Workspace" + } + }, + "nextLink": { + "description": "The URI that can be used to request the next list of machine learning workspaces.", + "type": "string" + } + } + }, + "QuotaBaseProperties": { + "properties": { + "id": { + "type": "string", + "description": "Specifies the resource ID." + }, + "type": { + "type": "string", + "description": "Specifies the resource type." + }, + "limit": { + "type": "integer", + "format": "int64", + "title": "Limit.", + "description": "The maximum permitted quota of the resource." + }, + "unit": { + "type": "string", + "description": "An enum describing the unit of quota measurement.", + "enum": [ + "Count" + ], + "x-ms-enum": { + "name": "QuotaUnit", + "modelAsString": true + } + } + }, + "description": "The properties for Quota update or retrieval." + }, + "QuotaUpdateParameters": { + "properties": { + "value": { + "description": "The list for update quota.", + "type": "array", + "items": { + "$ref": "#/definitions/QuotaBaseProperties" + } + }, + "location": { + "description": "Region of workspace quota to be updated.", + "type": "string" + } + }, + "description": "Quota update parameters." + }, + "UpdateWorkspaceQuotasResult": { + "properties": { + "value": { + "description": "The list of workspace quota update result.", + "items": { + "$ref": "#/definitions/UpdateWorkspaceQuotas" + }, + "readOnly": true, + "type": "array" + }, + "nextLink": { + "description": "The URI to fetch the next page of workspace quota update result. Call ListNext() with this to fetch the next page of Workspace Quota update result.", + "readOnly": true, + "type": "string" + } + }, + "description": "The result of update workspace quota." + }, + "UpdateWorkspaceQuotas": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Specifies the resource ID." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Specifies the resource type." + }, + "limit": { + "type": "integer", + "format": "int64", + "title": "Limit.", + "description": "The maximum permitted quota of the resource." + }, + "unit": { + "readOnly": true, + "type": "string", + "description": "An enum describing the unit of quota measurement.", + "enum": [ + "Count" + ], + "x-ms-enum": { + "name": "QuotaUnit", + "modelAsString": true + } + }, + "status": { + "type": "string", + "readOnly": false, + "title": "Update Workspace Quota Status.", + "description": "Status of update workspace quota.", + "enum": [ + "Undefined", + "Success", + "Failure", + "InvalidQuotaBelowClusterMinimum", + "InvalidQuotaExceedsSubscriptionLimit", + "InvalidVMFamilyName", + "OperationNotSupportedForSku", + "OperationNotEnabledForRegion" + ], + "x-ms-enum": { + "name": "status", + "modelAsString": true + } + } + }, + "description": "The properties for update Quota response." + }, + "ResourceName": { + "properties": { + "value": { + "readOnly": true, + "type": "string", + "description": "The name of the resource." + }, + "localizedValue": { + "readOnly": true, + "type": "string", + "description": "The localized name of the resource." + } + }, + "description": "The Resource Name." + }, + "ResourceQuota": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Specifies the resource ID." + }, + "amlWorkspaceLocation": { + "readOnly": true, + "type": "string", + "description": "Region of the AML workspace in the id." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Specifies the resource type." + }, + "name": { + "$ref": "#/definitions/ResourceName", + "description": "Name of the resource.", + "readOnly": true + }, + "limit": { + "readOnly": true, + "type": "integer", + "format": "int64", + "title": "Limit.", + "description": "The maximum permitted quota of the resource." + }, + "unit": { + "readOnly": true, + "type": "string", + "description": "An enum describing the unit of quota measurement.", + "enum": [ + "Count" + ], + "x-ms-enum": { + "name": "QuotaUnit", + "modelAsString": true + } + } + }, + "description": "The quota assigned to a resource." + }, + "ListWorkspaceQuotas": { + "properties": { + "value": { + "description": "The list of Workspace Quotas by VM Family", + "items": { + "$ref": "#/definitions/ResourceQuota" + }, + "readOnly": true, + "type": "array" + }, + "nextLink": { + "description": "The URI to fetch the next page of workspace quota information by VM Family. Call ListNext() with this to fetch the next page of Workspace Quota information.", + "readOnly": true, + "type": "string" + } + }, + "description": "The List WorkspaceQuotasByVMFamily operation response." + }, + "Identity": { + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal ID of resource identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant ID of resource." + }, + "type": { + "type": "string", + "description": "The identity type.", + "enum": [ + "SystemAssigned", + "SystemAssigned,UserAssigned", + "UserAssigned", + "None" + ], + "x-ms-enum": { + "name": "ResourceIdentityType", + "modelAsString": false + } + }, + "userAssignedIdentities": { + "$ref": "#/definitions/UserAssignedIdentities", + "description": "The user assigned identities associated with the resource." + } + }, + "description": "Identity for the resource." + }, + "UserAssignedIdentities": { + "description": "dictionary containing all the user assigned identities, with resourceId of the UAI as key.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/UserAssignedIdentity" + } + }, + "UserAssignedIdentity": { + "description": "User Assigned Identity", + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal ID of the user assigned identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant ID of the user assigned identity." + }, + "clientId": { + "readOnly": true, + "type": "string", + "description": "The clientId(aka appId) of the user assigned identity." + } + } + }, + "ResourceId": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the resource" + } + }, + "required": [ + "id" + ], + "description": "Represents a resource ID. For example, for a subnet, it is the resource URL for the subnet.", + "x-ms-azure-resource": true + }, + "ListWorkspaceKeysResult": { + "type": "object", + "properties": { + "userStorageKey": { + "readOnly": true, + "type": "string", + "x-ms-secret": true + }, + "userStorageResourceId": { + "readOnly": true, + "type": "string" + }, + "appInsightsInstrumentationKey": { + "readOnly": true, + "type": "string", + "x-ms-secret": true + }, + "containerRegistryCredentials": { + "readOnly": true, + "$ref": "#/definitions/RegistryListCredentialsResult" + }, + "notebookAccessKeys": { + "readOnly": true, + "$ref": "#/definitions/ListNotebookKeysResult" + } + } + }, + "NotebookAccessTokenResult": { + "type": "object", + "properties": { + "notebookResourceId": { + "readOnly": true, + "type": "string" + }, + "hostName": { + "readOnly": true, + "type": "string" + }, + "publicDns": { + "readOnly": true, + "type": "string" + }, + "accessToken": { + "readOnly": true, + "type": "string", + "x-ms-secret": true + }, + "tokenType": { + "readOnly": true, + "type": "string" + }, + "expiresIn": { + "readOnly": true, + "type": "integer", + "format": "int32" + }, + "refreshToken": { + "readOnly": true, + "type": "string", + "x-ms-secret": true + }, + "scope": { + "readOnly": true, + "type": "string" + } + } + }, + "RegistryListCredentialsResult": { + "type": "object", + "properties": { + "location": { + "readOnly": true, + "type": "string" + }, + "username": { + "readOnly": true, + "type": "string" + }, + "passwords": { + "type": "array", + "items": { + "$ref": "#/definitions/Password" + } + } + } + }, + "Password": { + "type": "object", + "properties": { + "name": { + "readOnly": true, + "type": "string" + }, + "value": { + "readOnly": true, + "type": "string" + } + } + }, + "PaginatedComputeResourcesList": { + "type": "object", + "description": "Paginated list of Machine Learning compute objects wrapped in ARM resource envelope.", + "properties": { + "value": { + "type": "array", + "description": "An array of Machine Learning compute objects wrapped in ARM resource envelope.", + "items": { + "$ref": "#/definitions/ComputeResource" + } + }, + "nextLink": { + "type": "string", + "description": "A continuation link (absolute URI) to the next page of results in the list." + } + } + }, + "ComputeResource": { + "type": "object", + "description": "Machine Learning compute object wrapped into ARM resource envelope.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/Resource" + }, + { + "type": "object", + "properties": { + "properties": { + "description": "Compute properties", + "$ref": "#/definitions/Compute" + } + } + } + ], + "properties": { + "identity": { + "$ref": "#/definitions/Identity", + "description": "The identity of the resource." + }, + "location": { + "description": "Specifies the location of the resource.", + "type": "string" + }, + "tags": { + "description": "Contains resource tags defined as key/value pairs.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "The sku of the workspace." + }, + "systemData": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData" + } + } + }, + "Compute": { + "type": "object", + "description": "Machine Learning compute object.", + "discriminator": "computeType", + "properties": { + "computeType": { + "description": "The type of compute", + "$ref": "#/definitions/ComputeType" + }, + "computeLocation": { + "description": "Location for the underlying compute", + "type": "string" + }, + "provisioningState": { + "type": "string", + "description": "The provision state of the cluster. Valid values are Unknown, Updating, Provisioning, Succeeded, and Failed.", + "enum": [ + "Unknown", + "Updating", + "Creating", + "Deleting", + "Succeeded", + "Failed", + "Canceled" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + }, + "readOnly": true + }, + "description": { + "type": "string", + "description": "The description of the Machine Learning compute." + }, + "createdOn": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The time at which the compute was created." + }, + "modifiedOn": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The time at which the compute was last modified." + }, + "resourceId": { + "type": "string", + "description": "ARM resource id of the underlying compute" + }, + "provisioningErrors": { + "type": "array", + "description": "Errors during provisioning", + "items": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "readOnly": true + }, + "isAttachedCompute": { + "type": "boolean", + "description": "Indicating whether the compute was provisioned by user and brought from outside if true, or machine learning service provisioned it if false.", + "readOnly": true + }, + "disableLocalAuth": { + "type": "boolean", + "description": "Opt-out of local authentication and ensure customers can use only MSI and AAD exclusively for authentication." + } + }, + "required": [ + "computeType" + ] + }, + "AKS": { + "description": "A Machine Learning compute based on AKS.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + }, + { + "type": "object", + "properties": { + "properties": { + "type": "object", + "description": "AKS properties", + "properties": { + "clusterFqdn": { + "description": "Cluster full qualified domain name", + "type": "string" + }, + "systemServices": { + "type": "array", + "description": "System services", + "items": { + "$ref": "#/definitions/SystemService" + }, + "readOnly": true + }, + "agentCount": { + "description": "Number of agents", + "type": "integer", + "format": "int32", + "minimum": 0 + }, + "agentVmSize": { + "description": "Agent virtual machine size", + "type": "string" + }, + "clusterPurpose": { + "description": "Intended usage of the cluster", + "type": "string", + "default": "FastProd", + "enum": [ + "FastProd", + "DenseProd", + "DevTest" + ], + "x-ms-enum": { + "name": "ClusterPurpose", + "modelAsString": true + } + }, + "sslConfiguration": { + "description": "SSL configuration", + "$ref": "#/definitions/SslConfiguration" + }, + "aksNetworkingConfiguration": { + "description": "AKS networking configuration for vnet", + "$ref": "#/definitions/AksNetworkingConfiguration" + }, + "loadBalancerType": { + "description": "Load Balancer Type", + "type": "string", + "default": "PublicIp", + "enum": [ + "PublicIp", + "InternalLoadBalancer" + ], + "x-ms-enum": { + "name": "LoadBalancerType", + "modelAsString": true + } + }, + "loadBalancerSubnet": { + "description": "Load Balancer Subnet", + "type": "string" + } + } + } + } + } + ], + "x-ms-discriminator-value": "AKS" + }, + "AmlCompute": { + "description": "An Azure Machine Learning compute.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + }, + { + "type": "object", + "properties": { + "properties": { + "type": "object", + "description": "AML Compute properties", + "properties": { + "osType": { + "description": "Compute OS Type", + "type": "string", + "default": "Linux", + "enum": [ + "Linux", + "Windows" + ], + "x-ms-enum": { + "name": "OsType", + "modelAsString": true + } + }, + "vmSize": { + "description": "Virtual Machine Size", + "type": "string" + }, + "vmPriority": { + "description": "Virtual Machine priority", + "type": "string", + "enum": [ + "Dedicated", + "LowPriority" + ], + "x-ms-enum": { + "name": "VmPriority", + "modelAsString": true + } + }, + "virtualMachineImage": { + "description": "Virtual Machine image for AML Compute - windows only", + "$ref": "#/definitions/VirtualMachineImage" + }, + "isolatedNetwork": { + "description": "Network is isolated or not", + "type": "boolean" + }, + "scaleSettings": { + "description": "Scale settings for AML Compute", + "$ref": "#/definitions/ScaleSettings" + }, + "userAccountCredentials": { + "title": "User account credentials.", + "description": "Credentials for an administrator user account that will be created on each compute node.", + "$ref": "#/definitions/UserAccountCredentials" + }, + "subnet": { + "title": "Subnet.", + "description": "Virtual network subnet resource ID the compute nodes belong to.", + "$ref": "#/definitions/ResourceId" + }, + "remoteLoginPortPublicAccess": { + "type": "string", + "default": "NotSpecified", + "title": "Close remote Login Access Port", + "description": "State of the public SSH port. Possible values are: Disabled - Indicates that the public ssh port is closed on all nodes of the cluster. Enabled - Indicates that the public ssh port is open on all nodes of the cluster. NotSpecified - Indicates that the public ssh port is closed on all nodes of the cluster if VNet is defined, else is open all public nodes. It can be default only during cluster creation time, after creation it will be either enabled or disabled.", + "enum": [ + "Enabled", + "Disabled", + "NotSpecified" + ], + "x-ms-enum": { + "name": "remoteLoginPortPublicAccess", + "modelAsString": true + } + }, + "allocationState": { + "type": "string", + "readOnly": true, + "title": "Allocation state.", + "description": "Allocation state of the compute. Possible values are: steady - Indicates that the compute is not resizing. There are no changes to the number of compute nodes in the compute in progress. A compute enters this state when it is created and when no operations are being performed on the compute to change the number of compute nodes. resizing - Indicates that the compute is resizing; that is, compute nodes are being added to or removed from the compute.", + "enum": [ + "Steady", + "Resizing" + ], + "x-ms-enum": { + "name": "AllocationState", + "modelAsString": true + } + }, + "allocationStateTransitionTime": { + "type": "string", + "readOnly": true, + "format": "date-time", + "title": "Allocation state transition time.", + "description": "The time at which the compute entered its current allocation state." + }, + "errors": { + "readOnly": true, + "title": "Errors.", + "description": "Collection of errors encountered by various compute nodes during node setup.", + "type": "array", + "items": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "currentNodeCount": { + "type": "integer", + "readOnly": true, + "format": "int32", + "title": "Current node count.", + "description": "The number of compute nodes currently assigned to the compute." + }, + "targetNodeCount": { + "type": "integer", + "readOnly": true, + "format": "int32", + "title": "Target node count.", + "description": "The target number of compute nodes for the compute. If the allocationState is resizing, this property denotes the target node count for the ongoing resize operation. If the allocationState is steady, this property denotes the target node count for the previous resize operation." + }, + "nodeStateCounts": { + "title": "Node state counts.", + "description": "Counts of various node states on the compute.", + "readOnly": true, + "$ref": "#/definitions/NodeStateCounts" + }, + "enableNodePublicIp": { + "type": "boolean", + "default": true, + "title": "Enable node public IP.", + "description": "Enable or disable node public IP address provisioning. Possible values are: Possible values are: true - Indicates that the compute nodes will have public IPs provisioned. false - Indicates that the compute nodes will have a private endpoint and no public IPs." + } + } + } + } + } + ], + "x-ms-discriminator-value": "AmlCompute" + }, + "ComputeInstance": { + "description": "An Azure Machine Learning compute instance.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + }, + { + "type": "object", + "properties": { + "properties": { + "description": "Compute Instance properties", + "type": "object", + "properties": { + "vmSize": { + "description": "Virtual Machine Size", + "type": "string" + }, + "subnet": { + "title": "Subnet.", + "description": "Virtual network subnet resource ID the compute nodes belong to.", + "$ref": "#/definitions/ResourceId" + }, + "applicationSharingPolicy": { + "type": "string", + "default": "Shared", + "title": "Sharing policy for applications on this compute instance", + "description": "Policy for sharing applications on this compute instance among users of parent workspace. If Personal, only the creator can access applications on this compute instance. When Shared, any workspace user can access applications on this instance depending on his/her assigned role.", + "enum": [ + "Personal", + "Shared" + ], + "x-ms-enum": { + "name": "applicationSharingPolicy", + "modelAsString": true + } + }, + "sshSettings": { + "description": "Specifies policy and settings for SSH access.", + "$ref": "#/definitions/ComputeInstanceSshSettings" + }, + "connectivityEndpoints": { + "readOnly": true, + "description": "Describes all connectivity endpoints available for this ComputeInstance.", + "$ref": "#/definitions/ComputeInstanceConnectivityEndpoints" + }, + "applications": { + "type": "array", + "readOnly": true, + "description": "Describes available applications and their endpoints on this ComputeInstance.", + "items": { + "$ref": "#/definitions/ComputeInstanceApplication" + } + }, + "createdBy": { + "readOnly": true, + "description": "Describes information on user who created this ComputeInstance.", + "$ref": "#/definitions/ComputeInstanceCreatedBy" + }, + "errors": { + "readOnly": true, + "title": "Errors.", + "description": "Collection of errors encountered on this ComputeInstance.", + "type": "array", + "items": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "state": { + "description": "The current state of this ComputeInstance.", + "$ref": "#/definitions/ComputeInstanceState", + "readOnly": true + }, + "computeInstanceAuthorizationType": { + "type": "string", + "title": "Compute Instance Authorization type.", + "description": "The Compute Instance Authorization type. Available values are personal (default).", + "default": "personal", + "enum": [ + "personal" + ], + "x-ms-enum": { + "name": "ComputeInstanceAuthorizationType", + "modelAsString": true + } + }, + "personalComputeInstanceSettings": { + "title": "Personal Compute Instance settings.", + "description": "Settings for a personal compute instance.", + "$ref": "#/definitions/PersonalComputeInstanceSettings" + }, + "setupScripts": { + "description": "Details of customized scripts to execute for setting up the cluster.", + "$ref": "#/definitions/SetupScripts" + }, + "lastOperation": { + "description": "The last operation on ComputeInstance.", + "$ref": "#/definitions/ComputeInstanceLastOperation", + "readOnly": true + }, + "schedules": { + "description": "The list of schedules to be applied on the compute instance.", + "$ref": "#/definitions/ComputeSchedules" + } + } + } + } + } + ], + "x-ms-discriminator-value": "ComputeInstance" + }, + "VirtualMachine": { + "description": "A Machine Learning compute based on Azure Virtual Machines.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + }, + { + "type": "object", + "properties": { + "properties": { + "type": "object", + "properties": { + "virtualMachineSize": { + "description": "Virtual Machine size", + "type": "string" + }, + "sshPort": { + "description": "Port open for ssh connections.", + "type": "integer", + "format": "int32" + }, + "address": { + "description": "Public IP address of the virtual machine.", + "type": "string" + }, + "administratorAccount": { + "description": "Admin credentials for virtual machine", + "$ref": "#/definitions/VirtualMachineSshCredentials" + }, + "isNotebookInstanceCompute": { + "description": "Indicates whether this compute will be used for running notebooks.", + "type": "boolean" + } + } + } + } + } + ], + "x-ms-discriminator-value": "VirtualMachine" + }, + "HDInsight": { + "description": "A HDInsight compute.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + }, + { + "type": "object", + "properties": { + "properties": { + "type": "object", + "properties": { + "sshPort": { + "description": "Port open for ssh connections on the master node of the cluster.", + "type": "integer", + "format": "int32" + }, + "address": { + "description": "Public IP address of the master node of the cluster.", + "type": "string" + }, + "administratorAccount": { + "description": "Admin credentials for master node of the cluster", + "$ref": "#/definitions/VirtualMachineSshCredentials" + } + } + } + } + } + ], + "x-ms-discriminator-value": "HDInsight" + }, + "DataFactory": { + "description": "A DataFactory compute.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + } + ], + "x-ms-discriminator-value": "DataFactory" + }, + "Databricks": { + "description": "A DataFactory compute.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + }, + { + "type": "object", + "properties": { + "properties": { + "type": "object", + "properties": { + "databricksAccessToken": { + "description": "Databricks access token", + "type": "string" + }, + "workspaceUrl": { + "description": "Workspace Url", + "type": "string" + } + } + } + } + } + ], + "x-ms-discriminator-value": "Databricks" + }, + "DataLakeAnalytics": { + "description": "A DataLakeAnalytics compute.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + }, + { + "type": "object", + "properties": { + "properties": { + "type": "object", + "properties": { + "dataLakeStoreAccountName": { + "description": "DataLake Store Account Name", + "type": "string" + } + } + } + } + } + ], + "x-ms-discriminator-value": "DataLakeAnalytics" + }, + "SynapseSpark": { + "description": "A SynapseSpark compute.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + }, + { + "$ref": "#/definitions/SynapseSparkPoolProperties" + } + ], + "x-ms-discriminator-value": "SynapseSpark" + }, + "ServicePrincipalCredentials": { + "type": "object", + "description": "Service principal credentials.", + "properties": { + "clientId": { + "description": "Client Id", + "type": "string" + }, + "clientSecret": { + "description": "Client secret", + "type": "string" + } + }, + "required": [ + "clientId", + "clientSecret" + ] + }, + "SystemService": { + "type": "object", + "description": "A system service running on a compute.", + "properties": { + "systemServiceType": { + "description": "The type of this system service.", + "readOnly": true, + "type": "string" + }, + "publicIpAddress": { + "type": "string", + "description": "Public IP address", + "readOnly": true + }, + "version": { + "description": "The version for this type.", + "readOnly": true, + "type": "string" + } + } + }, + "SslConfiguration": { + "type": "object", + "description": "The ssl configuration for scoring", + "properties": { + "status": { + "description": "Enable or disable ssl for scoring", + "type": "string", + "enum": [ + "Disabled", + "Enabled", + "Auto" + ] + }, + "cert": { + "description": "Cert data", + "type": "string" + }, + "key": { + "description": "Key data", + "type": "string" + }, + "cname": { + "description": "CNAME of the cert", + "type": "string" + }, + "leafDomainLabel": { + "description": "Leaf domain label of public endpoint", + "type": "string" + }, + "overwriteExistingDomain": { + "description": "Indicates whether to overwrite existing domain label.", + "type": "boolean" + } + } + }, + "AksNetworkingConfiguration": { + "type": "object", + "description": "Advance configuration for AKS networking", + "properties": { + "subnetId": { + "description": "Virtual network subnet resource ID the compute nodes belong to", + "type": "string" + }, + "serviceCidr": { + "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}(\\/([0-9]|[1-2][0-9]|3[0-2]))?$", + "description": "A CIDR notation IP range from which to assign service cluster IPs. It must not overlap with any Subnet IP ranges.", + "type": "string" + }, + "dnsServiceIP": { + "pattern": "^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$", + "description": "An IP address assigned to the Kubernetes DNS service. It must be within the Kubernetes service address range specified in serviceCidr.", + "type": "string" + }, + "dockerBridgeCidr": { + "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}(\\/([0-9]|[1-2][0-9]|3[0-2]))?$", + "description": "A CIDR notation IP range assigned to the Docker bridge network. It must not overlap with any Subnet IP ranges or the Kubernetes service address range.", + "type": "string" + } + } + }, + "UserAccountCredentials": { + "properties": { + "adminUserName": { + "type": "string", + "title": "User name.", + "description": "Name of the administrator user account which can be used to SSH to nodes." + }, + "adminUserSshPublicKey": { + "type": "string", + "title": "SSH public key.", + "description": "SSH public key of the administrator user account." + }, + "adminUserPassword": { + "type": "string", + "title": "Password.", + "description": "Password of the administrator user account." + } + }, + "required": [ + "adminUserName" + ], + "description": "Settings for user account that gets created on each on the nodes of a compute." + }, + "ScaleSettings": { + "type": "object", + "description": "scale settings for AML Compute", + "properties": { + "maxNodeCount": { + "description": "Max number of nodes to use", + "type": "integer", + "format": "int32" + }, + "minNodeCount": { + "description": "Min number of nodes to use", + "type": "integer", + "format": "int32", + "default": 0 + }, + "nodeIdleTimeBeforeScaleDown": { + "type": "string", + "format": "duration", + "description": "Node Idle Time before scaling down amlCompute. This string needs to be in the RFC Format." + } + }, + "required": [ + "maxNodeCount" + ] + }, + "VirtualMachineImage": { + "type": "object", + "description": "Virtual Machine image for Windows AML Compute", + "properties": { + "id": { + "description": "Virtual Machine image path", + "type": "string" + } + }, + "required": [ + "id" + ] + }, + "NodeStateCounts": { + "properties": { + "idleNodeCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "title": "Idle node count.", + "description": "Number of compute nodes in idle state." + }, + "runningNodeCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "title": "Running node count.", + "description": "Number of compute nodes which are running jobs." + }, + "preparingNodeCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "title": "Preparing node count.", + "description": "Number of compute nodes which are being prepared." + }, + "unusableNodeCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "title": "Unusable node count.", + "description": "Number of compute nodes which are in unusable state." + }, + "leavingNodeCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "title": "Leaving node count.", + "description": "Number of compute nodes which are leaving the amlCompute." + }, + "preemptedNodeCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "title": "Preempted node count.", + "description": "Number of compute nodes which are in preempted state." + } + }, + "description": "Counts of various compute node states on the amlCompute." + }, + "ClusterUpdateProperties": { + "properties": { + "scaleSettings": { + "$ref": "#/definitions/ScaleSettings", + "title": "Scale settings.", + "description": "Desired scale settings for the amlCompute." + } + }, + "description": "The properties of a amlCompute that need to be updated." + }, + "ClusterUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ClusterUpdateProperties", + "description": "The properties of the amlCompute." + } + }, + "description": "AmlCompute update parameters." + }, + "ComputeNodesInformation": { + "type": "object", + "description": "Compute nodes information related to a Machine Learning compute. Might differ for every type of compute.", + "discriminator": "computeType", + "properties": { + "computeType": { + "description": "The type of compute", + "$ref": "#/definitions/ComputeType" + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The continuation token." + } + }, + "required": [ + "computeType" + ] + }, + "AmlComputeNodesInformation": { + "description": "Compute node information related to a AmlCompute.", + "allOf": [ + { + "$ref": "#/definitions/ComputeNodesInformation" + }, + { + "type": "object", + "properties": { + "nodes": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/AmlComputeNodeInformation" + }, + "description": "The collection of returned AmlCompute nodes details." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The continuation token." + } + } + } + ], + "x-ms-discriminator-value": "AmlCompute" + }, + "AmlComputeNodeInformation": { + "description": "Compute node information related to a AmlCompute.", + "properties": { + "nodeId": { + "readOnly": true, + "type": "string", + "title": "Node ID.", + "description": "ID of the compute node." + }, + "privateIpAddress": { + "readOnly": true, + "type": "string", + "title": "Private IP address.", + "description": "Private IP address of the compute node." + }, + "publicIpAddress": { + "readOnly": true, + "type": "string", + "title": "Public IP address.", + "description": "Public IP address of the compute node." + }, + "port": { + "readOnly": true, + "type": "number", + "format": "int32", + "title": "Port.", + "description": "SSH port number of the node." + }, + "nodeState": { + "readOnly": true, + "type": "string", + "enum": [ + "idle", + "running", + "preparing", + "unusable", + "leaving", + "preempted" + ], + "description": "State of the compute node. Values are idle, running, preparing, unusable, leaving and preempted.", + "x-ms-enum": { + "name": "nodeState", + "modelAsString": true + } + }, + "runId": { + "readOnly": true, + "type": "string", + "title": "Run ID.", + "description": "ID of the Experiment running on the node, if any else null." + } + }, + "x-ms-discriminator-value": "AmlCompute" + }, + "VirtualMachineSshCredentials": { + "type": "object", + "description": "Admin credentials for virtual machine", + "properties": { + "username": { + "description": "Username of admin account", + "type": "string" + }, + "password": { + "description": "Password of admin account", + "type": "string" + }, + "publicKeyData": { + "description": "Public key data", + "type": "string" + }, + "privateKeyData": { + "description": "Private key data", + "type": "string" + } + } + }, + "ComputeSecrets": { + "type": "object", + "description": "Secrets related to a Machine Learning compute. Might differ for every type of compute.", + "discriminator": "computeType", + "properties": { + "computeType": { + "description": "The type of compute", + "$ref": "#/definitions/ComputeType" + } + }, + "required": [ + "computeType" + ] + }, + "AksComputeSecrets": { + "description": "Secrets related to a Machine Learning compute based on AKS.", + "allOf": [ + { + "$ref": "#/definitions/ComputeSecrets" + }, + { + "type": "object", + "properties": { + "userKubeConfig": { + "type": "string", + "description": "Content of kubeconfig file that can be used to connect to the Kubernetes cluster." + }, + "adminKubeConfig": { + "type": "string", + "description": "Content of kubeconfig file that can be used to connect to the Kubernetes cluster." + }, + "imagePullSecretName": { + "type": "string", + "description": "Image registry pull secret." + } + } + } + ], + "x-ms-discriminator-value": "AKS" + }, + "VirtualMachineSecrets": { + "description": "Secrets related to a Machine Learning compute based on AKS.", + "allOf": [ + { + "$ref": "#/definitions/ComputeSecrets" + }, + { + "type": "object", + "properties": { + "administratorAccount": { + "description": "Admin credentials for virtual machine.", + "$ref": "#/definitions/VirtualMachineSshCredentials" + } + } + } + ], + "x-ms-discriminator-value": "VirtualMachine" + }, + "DatabricksComputeSecrets": { + "description": "Secrets related to a Machine Learning compute based on Databricks.", + "allOf": [ + { + "$ref": "#/definitions/ComputeSecrets" + }, + { + "type": "object", + "properties": { + "databricksAccessToken": { + "description": "access token for databricks account.", + "type": "string" + } + } + } + ], + "x-ms-discriminator-value": "Databricks" + }, + "ComputeType": { + "type": "string", + "description": "The type of compute", + "enum": [ + "AKS", + "AmlCompute", + "ComputeInstance", + "DataFactory", + "VirtualMachine", + "HDInsight", + "Databricks", + "DataLakeAnalytics", + "SynapseSpark" + ], + "x-ms-enum": { + "name": "ComputeType", + "modelAsString": true + } + }, + "Sku": { + "description": "Sku of the resource", + "type": "object", + "properties": { + "name": { + "description": "Name of the sku", + "type": "string" + }, + "tier": { + "description": "Tier of the sku like Basic or Enterprise", + "type": "string" + } + } + }, + "PrivateEndpointConnectionListResult": { + "properties": { + "value": { + "type": "array", + "description": "Array of private endpoint connections", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + } + }, + "description": "List of private endpoint connection associated with the specified workspace" + }, + "PrivateEndpointConnection": { + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "x-ms-client-flatten": true, + "description": "Resource properties." + }, + "identity": { + "$ref": "#/definitions/Identity", + "description": "The identity of the resource." + }, + "location": { + "description": "Specifies the location of the resource.", + "type": "string" + }, + "tags": { + "description": "Contains resource tags defined as key/value pairs.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "The sku of the workspace." + }, + "systemData": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData" + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/Resource" + } + ], + "description": "The Private Endpoint Connection resource." + }, + "PrivateEndpointConnectionProperties": { + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpoint", + "description": "The resource of private end point." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionState", + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "provisioningState": { + "$ref": "#/definitions/PrivateEndpointConnectionProvisioningState", + "description": "The provisioning state of the private endpoint connection resource." + } + }, + "required": [ + "privateLinkServiceConnectionState" + ], + "description": "Properties of the PrivateEndpointConnectProperties." + }, + "PrivateEndpoint": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ARM identifier for Private Endpoint" + }, + "subnetArmId": { + "readOnly": true, + "type": "string", + "description": "The ARM identifier for Subnet resource that private endpoint links to" + } + }, + "description": "The Private Endpoint resource." + }, + "PrivateLinkServiceConnectionState": { + "properties": { + "status": { + "$ref": "#/definitions/PrivateEndpointServiceConnectionStatus", + "description": "Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service." + }, + "description": { + "type": "string", + "description": "The reason for approval/rejection of the connection." + }, + "actionsRequired": { + "type": "string", + "description": "A message indicating if changes on the service provider require any updates on the consumer." + } + }, + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "PrivateEndpointServiceConnectionStatus": { + "type": "string", + "description": "The private endpoint connection status.", + "enum": [ + "Pending", + "Approved", + "Rejected", + "Disconnected", + "Timeout" + ], + "x-ms-enum": { + "name": "PrivateEndpointServiceConnectionStatus", + "modelAsString": true + } + }, + "PrivateEndpointConnectionProvisioningState": { + "type": "string", + "readOnly": true, + "description": "The current provisioning state.", + "enum": [ + "Succeeded", + "Creating", + "Deleting", + "Failed" + ], + "x-ms-enum": { + "name": "PrivateEndpointConnectionProvisioningState", + "modelAsString": true + } + }, + "PrivateLinkResourceListResult": { + "properties": { + "value": { + "type": "array", + "description": "Array of private link resources", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + } + } + }, + "description": "A list of private link resources" + }, + "PrivateLinkResource": { + "properties": { + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + }, + "identity": { + "$ref": "#/definitions/Identity", + "description": "The identity of the resource." + }, + "location": { + "description": "Specifies the location of the resource.", + "type": "string" + }, + "tags": { + "description": "Contains resource tags defined as key/value pairs.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "The sku of the workspace." + }, + "systemData": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData" + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/Resource" + } + ], + "description": "A private link resource" + }, + "PrivateLinkResourceProperties": { + "properties": { + "groupId": { + "description": "The private link resource group id.", + "type": "string", + "readOnly": true + }, + "requiredMembers": { + "description": "The private link resource required member names.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "requiredZoneNames": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The private link resource Private link DNS zone name." + } + }, + "description": "Properties of a private link resource." + }, + "SharedPrivateLinkResource": { + "properties": { + "name": { + "description": "Unique name of the private link.", + "type": "string" + }, + "properties": { + "$ref": "#/definitions/SharedPrivateLinkResourceProperty", + "x-ms-client-flatten": true, + "description": "Resource properties." + } + } + }, + "SharedPrivateLinkResourceProperty": { + "properties": { + "privateLinkResourceId": { + "description": "The resource id that private link links to.", + "type": "string" + }, + "groupId": { + "description": "The private link resource group id.", + "type": "string" + }, + "requestMessage": { + "description": "Request message.", + "type": "string" + }, + "status": { + "$ref": "#/definitions/PrivateEndpointServiceConnectionStatus", + "description": "Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service." + } + }, + "description": "Properties of a shared private link resource." + }, + "EncryptionProperty": { + "properties": { + "status": { + "description": "Indicates whether or not the encryption is enabled for the workspace.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "EncryptionStatus", + "modelAsString": true + } + }, + "identity": { + "$ref": "#/definitions/IdentityForCmk", + "description": "The identity that will be used to access the key vault for encryption at rest." + }, + "keyVaultProperties": { + "$ref": "#/definitions/KeyVaultProperties", + "description": "Customer Key vault properties." + } + }, + "required": [ + "status", + "keyVaultProperties" + ], + "type": "object" + }, + "KeyVaultProperties": { + "properties": { + "keyVaultArmId": { + "description": "The ArmId of the keyVault where the customer owned encryption key is present.", + "type": "string" + }, + "keyIdentifier": { + "description": "Key vault uri to access the encryption key.", + "type": "string" + }, + "identityClientId": { + "description": "For future use - The client id of the identity which will be used to access key vault.", + "type": "string" + } + }, + "required": [ + "keyIdentifier", + "keyVaultArmId" + ], + "type": "object" + }, + "IdentityForCmk": { + "description": "Identity that will be used to access key vault for encryption at rest", + "type": "object", + "properties": { + "userAssignedIdentity": { + "description": "The ArmId of the user assigned identity that will be used to access the customer managed key vault", + "type": "string" + } + } + }, + "ContainerResourceRequirements": { + "description": "The resource requirements for the container (cpu and memory).", + "type": "object", + "properties": { + "cpu": { + "format": "double", + "description": "The minimum amount of CPU cores to be used by the container. More info:\nhttps://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/", + "type": "number", + "example": 4 + }, + "cpuLimit": { + "format": "double", + "description": "The maximum amount of CPU cores allowed to be used by the container. More info:\nhttps://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/", + "type": "number", + "example": 4 + }, + "memoryInGB": { + "format": "double", + "description": "The minimum amount of memory (in GB) to be used by the container. More info:\nhttps://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/", + "type": "number", + "example": 64 + }, + "memoryInGBLimit": { + "format": "double", + "description": "The maximum amount of memory (in GB) allowed to be used by the container. More info:\nhttps://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/", + "type": "number", + "example": 64 + }, + "gpu": { + "format": "int32", + "description": "The number of GPU cores in the container.", + "type": "integer" + }, + "fpga": { + "format": "int32", + "description": "The number of FPGA PCIE devices exposed to the container. Must be multiple of 2.", + "type": "integer" + } + } + }, + "ComputeInstanceSshSettings": { + "type": "object", + "description": "Specifies policy and settings for SSH access.", + "properties": { + "sshPublicAccess": { + "type": "string", + "default": "Disabled", + "title": "Access policy for SSH", + "description": "State of the public SSH port. Possible values are: Disabled - Indicates that the public ssh port is closed on this instance. Enabled - Indicates that the public ssh port is open and accessible according to the VNet/subnet policy if applicable.", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "sshPublicAccess", + "modelAsString": true + } + }, + "adminUserName": { + "type": "string", + "readOnly": true, + "description": "Describes the admin user name." + }, + "sshPort": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "Describes the port for connecting through SSH." + }, + "adminPublicKey": { + "type": "string", + "description": "Specifies the SSH rsa public key file as a string. Use \"ssh-keygen -t rsa -b 2048\" to generate your SSH key pairs." + } + } + }, + "ComputeInstanceState": { + "type": "string", + "description": "Current state of an ComputeInstance.", + "enum": [ + "Creating", + "CreateFailed", + "Deleting", + "Running", + "Restarting", + "JobRunning", + "SettingUp", + "SetupFailed", + "Starting", + "Stopped", + "Stopping", + "UserSettingUp", + "UserSetupFailed", + "Unknown", + "Unusable" + ], + "x-ms-enum": { + "name": "ComputeInstanceState", + "modelAsString": true + } + }, + "ComputeInstanceLastOperation": { + "type": "object", + "description": "The last operation on ComputeInstance.", + "properties": { + "operationName": { + "type": "string", + "description": "Name of the last operation.", + "enum": [ + "Create", + "Start", + "Stop", + "Restart", + "Reimage", + "Delete" + ], + "x-ms-enum": { + "name": "OperationName", + "modelAsString": true + } + }, + "operationTime": { + "type": "string", + "format": "date-time", + "description": "Time of the last operation." + }, + "operationStatus": { + "type": "string", + "description": "Operation status.", + "enum": [ + "InProgress", + "Succeeded", + "CreateFailed", + "StartFailed", + "StopFailed", + "RestartFailed", + "ReimageFailed", + "DeleteFailed" + ], + "x-ms-enum": { + "name": "OperationStatus", + "modelAsString": true + } + } + } + }, + "ComputeInstanceApplication": { + "type": "object", + "description": "Defines an Aml Instance application and its connectivity endpoint URI.", + "properties": { + "displayName": { + "type": "string", + "description": "Name of the ComputeInstance application." + }, + "endpointUri": { + "type": "string", + "description": "Application' endpoint URI." + } + } + }, + "ComputeInstanceConnectivityEndpoints": { + "type": "object", + "readOnly": true, + "description": "Defines all connectivity endpoints and properties for an ComputeInstance.", + "properties": { + "publicIpAddress": { + "type": "string", + "readOnly": true, + "description": "Public IP Address of this ComputeInstance." + }, + "privateIpAddress": { + "type": "string", + "readOnly": true, + "description": "Private IP Address of this ComputeInstance (local to the VNET in which the compute instance is deployed)." + } + } + }, + "ComputeInstanceCreatedBy": { + "type": "object", + "readOnly": true, + "description": "Describes information on user who created this ComputeInstance.", + "properties": { + "userName": { + "type": "string", + "readOnly": true, + "description": "Name of the user." + }, + "userOrgId": { + "type": "string", + "readOnly": true, + "description": "Uniquely identifies user' Azure Active Directory organization." + }, + "userId": { + "type": "string", + "readOnly": true, + "description": "Uniquely identifies the user within his/her organization." + } + } + }, + "PersonalComputeInstanceSettings": { + "type": "object", + "properties": { + "assignedUser": { + "$ref": "#/definitions/AssignedUser", + "title": "Assigned User.", + "description": "A user explicitly assigned to a personal compute instance." + } + }, + "description": "Settings for a personal compute instance." + }, + "AssignedUser": { + "type": "object", + "description": "A user that can be assigned to a compute instance.", + "properties": { + "objectId": { + "type": "string", + "description": "User’s AAD Object Id." + }, + "tenantId": { + "type": "string", + "description": "User’s AAD Tenant Id." + } + }, + "required": [ + "objectId", + "tenantId" + ] + }, + "ServiceManagedResourcesSettings": { + "type": "object", + "properties": { + "cosmosDb": { + "$ref": "#/definitions/CosmosDbSettings", + "description": "The settings for the service managed cosmosdb account." + } + } + }, + "CosmosDbSettings": { + "type": "object", + "properties": { + "collectionsThroughput": { + "type": "integer", + "format": "int32", + "description": "The throughput of the collections in cosmosdb database" + } + } + }, + "NotebookResourceInfo": { + "type": "object", + "properties": { + "fqdn": { + "type": "string" + }, + "resourceId": { + "type": "string", + "description": "the data plane resourceId that used to initialize notebook component" + }, + "notebookPreparationError": { + "$ref": "#/definitions/NotebookPreparationError", + "description": "The error that occurs when preparing notebook." + } + } + }, + "NotebookPreparationError": { + "type": "object", + "properties": { + "errorMessage": { + "type": "string" + }, + "statusCode": { + "format": "int32", + "type": "integer" + } + } + }, + "ListNotebookKeysResult": { + "type": "object", + "properties": { + "primaryAccessKey": { + "readOnly": true, + "type": "string", + "x-ms-secret": true + }, + "secondaryAccessKey": { + "readOnly": true, + "type": "string", + "x-ms-secret": true + } + } + }, + "ListStorageAccountKeysResult": { + "type": "object", + "properties": { + "userStorageKey": { + "readOnly": true, + "type": "string", + "x-ms-secret": true + } + } + }, + "PaginatedWorkspaceConnectionsList": { + "type": "object", + "description": "Paginated list of Workspace connection objects.", + "properties": { + "value": { + "type": "array", + "description": "An array of Workspace connection objects.", + "items": { + "$ref": "#/definitions/WorkspaceConnection" + } + }, + "nextLink": { + "type": "string", + "description": "A continuation link (absolute URI) to the next page of results in the list." + } + } + }, + "WorkspaceConnection": { + "x-ms-azure-resource": true, + "description": "Workspace connection.", + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "ResourceId of the workspace connection.", + "readOnly": true + }, + "name": { + "type": "string", + "description": "Friendly name of the workspace connection.", + "readOnly": true + }, + "type": { + "type": "string", + "description": "Resource type of workspace connection.", + "readOnly": true + }, + "properties": { + "type": "object", + "description": "Properties of workspace connection.", + "$ref": "#/definitions/WorkspaceConnectionProps", + "x-ms-client-flatten": true + } + } + }, + "WorkspaceConnectionDto": { + "type": "object", + "description": "object used for creating workspace connection.", + "properties": { + "name": { + "description": "Friendly name of the workspace connection", + "type": "string" + }, + "properties": { + "type": "object", + "description": "Properties of workspace connection.", + "$ref": "#/definitions/WorkspaceConnectionProps", + "x-ms-client-flatten": true + } + } + }, + "WorkspaceConnectionProps": { + "type": "object", + "description": "Workspace Connection specific properties.", + "properties": { + "category": { + "description": "Category of the workspace connection.", + "type": "string" + }, + "target": { + "description": "Target of the workspace connection.", + "type": "string" + }, + "authType": { + "description": "Authorization type of the workspace connection.", + "type": "string" + }, + "value": { + "description": "Value details of the workspace connection.", + "type": "string" + }, + "valueFormat": { + "description": "format for the workspace connection value", + "type": "string", + "enum": [ + "JSON" + ], + "x-ms-enum": { + "name": "ValueFormat", + "modelAsString": true + } + } + } + }, + "SetupScripts": { + "type": "object", + "description": "Details of customized scripts to execute for setting up the cluster.", + "properties": { + "scripts": { + "description": "Customized setup scripts", + "$ref": "#/definitions/ScriptsToExecute" + } + } + }, + "ScriptsToExecute": { + "type": "object", + "description": "Customized setup scripts", + "properties": { + "startupScript": { + "description": "Script that's run every time the machine starts.", + "$ref": "#/definitions/ScriptReference" + }, + "creationScript": { + "description": "Script that's run only once during provision of the compute.", + "$ref": "#/definitions/ScriptReference" + } + } + }, + "ScriptReference": { + "type": "object", + "description": "Script reference", + "properties": { + "scriptSource": { + "description": "The storage source of the script: inline, workspace.", + "type": "string" + }, + "scriptData": { + "description": "The location of scripts in the mounted volume.", + "type": "string" + }, + "scriptArguments": { + "description": "Optional command line arguments passed to the script to run.", + "type": "string" + }, + "timeout": { + "description": "Optional time period passed to timeout command.", + "type": "string" + } + } + }, + "AutoScaleProperties": { + "type": "object", + "description": "Auto scale properties", + "properties": { + "minNodeCount": { + "format": "int32", + "type": "integer" + }, + "enabled": { + "type": "boolean" + }, + "maxNodeCount": { + "format": "int32", + "type": "integer" + } + } + }, + "AutoPauseProperties": { + "type": "object", + "description": "Auto pause properties", + "properties": { + "delayInMinutes": { + "format": "int32", + "type": "integer" + }, + "enabled": { + "type": "boolean" + } + } + }, + "SynapseSparkPoolProperties": { + "type": "object", + "description": "Properties specific to Synapse Spark pools.", + "properties": { + "properties": { + "type": "object", + "description": "AKS properties", + "properties": { + "autoScaleProperties": { + "description": "Auto scale properties.", + "$ref": "#/definitions/AutoScaleProperties" + }, + "autoPauseProperties": { + "description": "Auto pause properties.", + "$ref": "#/definitions/AutoPauseProperties" + }, + "sparkVersion": { + "description": "Spark version.", + "type": "string" + }, + "nodeCount": { + "description": "The number of compute nodes currently assigned to the compute.", + "type": "integer", + "format": "int32" + }, + "nodeSize": { + "description": "Node size.", + "type": "string" + }, + "nodeSizeFamily": { + "description": "Node size family.", + "type": "string" + }, + "subscriptionId": { + "description": "Azure subscription identifier.", + "type": "string" + }, + "resourceGroup": { + "description": "Name of the resource group in which workspace is located.", + "type": "string" + }, + "workspaceName": { + "description": "Name of Azure Machine Learning workspace.", + "type": "string" + }, + "poolName": { + "description": "Pool name.", + "type": "string" + } + } + } + } + }, + "ComputeStartStopSchedule": { + "type": "object", + "description": "Compute start stop schedule properties", + "properties": { + "id": { + "description": "Schedule id.", + "readOnly": true, + "type": "string" + }, + "provisioningStatus": { + "type": "string", + "enum": [ + "Completed", + "Provisioning", + "Failed" + ], + "x-ms-enum": { + "name": "provisioningStatus", + "modelAsString": true + }, + "readOnly": true, + "description": "The current deployment state of schedule." + }, + "status": { + "$ref": "#/definitions/ScheduleStatus" + }, + "triggerType": { + "$ref": "#/definitions/TriggerType" + }, + "action": { + "$ref": "#/definitions/ComputePowerAction" + }, + "recurrence": { + "$ref": "#/definitions/Recurrence" + }, + "cron": { + "$ref": "#/definitions/Cron" + } + } + }, + "ScheduleStatus": { + "type": "string", + "description": "The schedule status.", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "ScheduleStatus", + "modelAsString": true + } + }, + "ScheduleType": { + "type": "string", + "description": "The schedule type.", + "enum": [ + "ComputeStartStop" + ], + "x-ms-enum": { + "name": "ScheduleType", + "modelAsString": true + } + }, + "ComputePowerAction": { + "type": "string", + "description": "The compute power action.", + "enum": [ + "Start", + "Stop" + ], + "x-ms-enum": { + "name": "ComputePowerAction", + "modelAsString": true + } + }, + "TriggerType": { + "type": "string", + "description": "The schedule trigger type.", + "enum": [ + "Recurrence", + "Cron" + ], + "x-ms-enum": { + "name": "TriggerType", + "modelAsString": true + } + }, + "RecurrenceFrequency": { + "type": "string", + "description": "The recurrence frequency.", + "enum": [ + "NotSpecified", + "Second", + "Minute", + "Hour", + "Day", + "Week", + "Month", + "Year" + ], + "x-ms-enum": { + "name": "RecurrenceFrequency", + "modelAsString": true + } + }, + "RecurrenceSchedule": { + "type": "object", + "description": "The recurrence schedule", + "properties": { + "minutes": { + "type": "array", + "items": { + "type": "integer", + "format": "int32" + }, + "description": "The minutes." + }, + "hours": { + "type": "array", + "items": { + "type": "integer", + "format": "int32" + }, + "description": "The hours." + }, + "weekDays": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Sunday", + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday" + ], + "x-ms-enum": { + "name": "DaysOfWeek", + "modelAsString": false + } + }, + "description": "The days of the week." + } + } + }, + "Recurrence": { + "type": "object", + "description": "The workflow trigger recurrence for ComputeStartStop schedule type.", + "properties": { + "frequency": { + "$ref": "#/definitions/RecurrenceFrequency" + }, + "interval": { + "type": "integer", + "format": "int32", + "description": "The interval." + }, + "startTime": { + "type": "string", + "description": "The start time." + }, + "timeZone": { + "type": "string", + "description": "The time zone." + }, + "schedule": { + "$ref": "#/definitions/RecurrenceSchedule" + } + } + }, + "Cron": { + "type": "object", + "description": "The workflow trigger cron for ComputeStartStop schedule type.", + "properties": { + "startTime": { + "type": "string", + "description": "The start time." + }, + "timeZone": { + "type": "string", + "description": "The time zone." + }, + "expression": { + "type": "string", + "description": "The cron expression." + } + } + }, + "ComputeSchedules": { + "type": "object", + "description": "The list of schedules to be applied on the computes", + "properties": { + "computeStartStop": { + "type": "array", + "items": { + "$ref": "#/definitions/ComputeStartStopSchedule" + }, + "description": "The list of compute start stop schedules to be applied." + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/mfe.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/mfe.json new file mode 100644 index 000000000000..1b4f163670f0 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/mfe.json @@ -0,0 +1,9515 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Machine Learning Workspaces", + "version": "2021-03-01-preview" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/batchEndpoints": { + "get": { + "tags": [ + "BatchEndpoint" + ], + "summary": "Lists Batch inference endpoint in the workspace.", + "operationId": "BatchEndpoints_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "in": "query", + "name": "count", + "description": "Number of endpoints to be retrieved in a page of results.", + "type": "integer", + "format": "int32" + }, + { + "$ref": "machineLearningServices.json#/parameters/PaginationParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/BatchEndpointTrackedResourceArmPaginatedResult" + } + } + }, + "x-ms-examples": { + "List Batch Endpoint.": { + "$ref": "./examples/BatchEndpoint/list.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/batchEndpoints/{endpointName}": { + "delete": { + "tags": [ + "BatchEndpoint" + ], + "summary": "Delete Batch Inference Endpoint.", + "operationId": "BatchEndpoints_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "endpointName", + "description": "Inference Endpoint name.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success" + }, + "204": { + "description": "No Content" + } + }, + "x-ms-examples": { + "Delete Batch Endpoint.": { + "$ref": "./examples/BatchEndpoint/delete.json" + } + } + }, + "get": { + "tags": [ + "BatchEndpoint" + ], + "summary": "Gets a batch inference endpoint by name.", + "operationId": "BatchEndpoints_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "endpointName", + "description": "Name for the Batch Endpoint.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/BatchEndpointTrackedResource" + } + } + }, + "x-ms-examples": { + "Get Batch Endpoint.": { + "$ref": "./examples/BatchEndpoint/get.json" + } + } + }, + "patch": { + "tags": [ + "BatchEndpoint" + ], + "summary": "Update a batch inference endpoint.", + "operationId": "BatchEndpoints_Update", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "endpointName", + "description": "Name for the Batch inference endpoint.", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9\\-_]{0,254}$" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + }, + { + "in": "body", + "name": "body", + "description": "Mutable batch inference endpoint definition object.", + "required": true, + "schema": { + "$ref": "#/definitions/PartialBatchEndpointPartialTrackedResource" + } + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/BatchEndpointTrackedResource" + } + } + }, + "x-ms-examples": { + "Update Batch Endpoint.": { + "$ref": "./examples/BatchEndpoint/update.json" + } + } + }, + "put": { + "tags": [ + "BatchEndpoint" + ], + "summary": "Creates a batch inference endpoint.", + "operationId": "BatchEndpoints_CreateOrUpdate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "endpointName", + "description": "Name for the Batch inference endpoint.", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9\\-_]{0,254}$" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + }, + { + "in": "body", + "name": "body", + "description": "Batch inference endpoint definition object.", + "required": true, + "schema": { + "$ref": "#/definitions/BatchEndpointTrackedResource" + } + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/BatchEndpointTrackedResource" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/BatchEndpointTrackedResource" + } + } + }, + "x-ms-examples": { + "CreateOrUpdate Batch Endpoint.": { + "$ref": "./examples/BatchEndpoint/createOrUpdate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/batchEndpoints/{endpointName}/deployments": { + "get": { + "tags": [ + "BatchDeployment" + ], + "summary": "Lists Batch inference deployments in the workspace.", + "operationId": "BatchDeployments_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "endpointName", + "description": "Endpoint name", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "in": "query", + "name": "$orderBy", + "description": "Ordering of list.", + "type": "string" + }, + { + "in": "query", + "name": "$top", + "description": "Top of list.", + "type": "integer", + "format": "int32" + }, + { + "$ref": "machineLearningServices.json#/parameters/PaginationParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/BatchDeploymentTrackedResourceArmPaginatedResult" + } + } + }, + "x-ms-examples": { + "List Batch Deployment.": { + "$ref": "./examples/BatchDeployment/list.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/batchEndpoints/{endpointName}/deployments/{deploymentName}": { + "delete": { + "tags": [ + "BatchDeployment" + ], + "summary": "Delete Batch Inference deployment.", + "operationId": "BatchDeployments_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "endpointName", + "description": "Endpoint name", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "deploymentName", + "description": "Inference deployment identifier.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success" + }, + "204": { + "description": "No Content" + } + }, + "x-ms-examples": { + "Delete Batch Deployment.": { + "$ref": "./examples/BatchDeployment/delete.json" + } + } + }, + "get": { + "tags": [ + "BatchDeployment" + ], + "summary": "Gets a batch inference deployment by id.", + "operationId": "BatchDeployments_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "endpointName", + "description": "Endpoint name", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "deploymentName", + "description": "The identifier for the Batch deployments.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/BatchDeploymentTrackedResource" + } + } + }, + "x-ms-examples": { + "Get Batch Deployment.": { + "$ref": "./examples/BatchDeployment/get.json" + } + } + }, + "patch": { + "tags": [ + "BatchDeployment" + ], + "summary": "Update a batch inference deployment.", + "operationId": "BatchDeployments_Update", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "endpointName", + "description": "Inference endpoint name", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9\\-_]{0,254}$" + }, + { + "in": "path", + "name": "deploymentName", + "description": "The identifier for the Batch inference deployment.", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9\\-_]{0,254}$" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + }, + { + "in": "body", + "name": "body", + "description": "Batch inference deployment definition object.", + "required": true, + "schema": { + "$ref": "#/definitions/PartialBatchDeploymentPartialTrackedResource" + } + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/BatchDeploymentTrackedResource" + } + } + }, + "x-ms-examples": { + "Update Batch Deployment.": { + "$ref": "./examples/BatchDeployment/update.json" + } + } + }, + "put": { + "tags": [ + "BatchDeployment" + ], + "summary": "Creates/updates a batch inference deployment.", + "operationId": "BatchDeployments_CreateOrUpdate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "endpointName", + "description": "Inference endpoint name", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9\\-_]{0,254}$" + }, + { + "in": "path", + "name": "deploymentName", + "description": "The identifier for the Batch inference deployment.", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9\\-_]{0,254}$" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + }, + { + "in": "body", + "name": "body", + "description": "Batch inference deployment definition object.", + "required": true, + "schema": { + "$ref": "#/definitions/BatchDeploymentTrackedResource" + } + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/BatchDeploymentTrackedResource" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/BatchDeploymentTrackedResource" + } + } + }, + "x-ms-examples": { + "CreateOrUpdate Batch Deployment.": { + "$ref": "./examples/BatchDeployment/createOrUpdate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/batchEndpoints/{endpointName}/listkeys": { + "post": { + "tags": [ + "BatchEndpoint" + ], + "summary": "Lists batch Inference Endpoint keys.", + "operationId": "BatchEndpoints_ListKeys", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "endpointName", + "description": "Inference Endpoint name.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/EndpointAuthKeys" + } + } + }, + "x-ms-examples": { + "ListKeys Batch Endpoint.": { + "$ref": "./examples/BatchEndpoint/listKeys.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/codes": { + "get": { + "tags": [ + "CodeContainer" + ], + "summary": "List containers.", + "operationId": "CodeContainers_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/PaginationParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/CodeContainerResourceArmPaginatedResult" + } + } + }, + "x-ms-examples": { + "List Code Container.": { + "$ref": "./examples/CodeContainer/list.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/codes/{name}": { + "delete": { + "tags": [ + "CodeContainer" + ], + "summary": "Delete container.", + "operationId": "CodeContainers_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "name", + "description": "Container name.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success" + }, + "204": { + "description": "No Content" + } + }, + "x-ms-examples": { + "Delete Code Container.": { + "$ref": "./examples/CodeContainer/delete.json" + } + } + }, + "get": { + "tags": [ + "CodeContainer" + ], + "summary": "Get container.", + "operationId": "CodeContainers_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "name", + "description": "Container name.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/CodeContainerResource" + } + } + }, + "x-ms-examples": { + "Get Code Container.": { + "$ref": "./examples/CodeContainer/get.json" + } + } + }, + "put": { + "tags": [ + "CodeContainer" + ], + "summary": "Create or update container.", + "operationId": "CodeContainers_CreateOrUpdate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "name", + "description": "Container name.", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9\\-_]{0,254}$" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + }, + { + "in": "body", + "name": "body", + "description": "Container entity to create or update.", + "required": true, + "schema": { + "$ref": "#/definitions/CodeContainerResource" + } + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/CodeContainerResource" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/CodeContainerResource" + } + } + }, + "x-ms-examples": { + "CreateOrUpdate Code Container.": { + "$ref": "./examples/CodeContainer/createOrUpdate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/codes/{name}/versions": { + "get": { + "tags": [ + "CodeVersion" + ], + "summary": "List versions.", + "operationId": "CodeVersions_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "name", + "description": "Container name.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "in": "query", + "name": "$orderBy", + "description": "Ordering of list.", + "type": "string" + }, + { + "in": "query", + "name": "$top", + "description": "Maximum number of records to return.", + "type": "integer", + "format": "int32" + }, + { + "$ref": "machineLearningServices.json#/parameters/PaginationParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/CodeVersionResourceArmPaginatedResult" + } + } + }, + "x-ms-examples": { + "List Code Version.": { + "$ref": "./examples/CodeVersion/list.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/codes/{name}/versions/{version}": { + "delete": { + "tags": [ + "CodeVersion" + ], + "summary": "Delete version.", + "operationId": "CodeVersions_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "name", + "description": "Container name.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "version", + "description": "Version identifier.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success" + }, + "204": { + "description": "No Content" + } + }, + "x-ms-examples": { + "Delete Code Version.": { + "$ref": "./examples/CodeVersion/delete.json" + } + } + }, + "get": { + "tags": [ + "CodeVersion" + ], + "summary": "Get version.", + "operationId": "CodeVersions_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "name", + "description": "Container name.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "version", + "description": "Version identifier.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/CodeVersionResource" + } + } + }, + "x-ms-examples": { + "Get Code Version.": { + "$ref": "./examples/CodeVersion/get.json" + } + } + }, + "put": { + "tags": [ + "CodeVersion" + ], + "summary": "Create or update version.", + "operationId": "CodeVersions_CreateOrUpdate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "name", + "description": "Container name.", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9\\-_]{0,254}$" + }, + { + "in": "path", + "name": "version", + "description": "Version identifier.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + }, + { + "in": "body", + "name": "body", + "description": "Version entity to create or update.", + "required": true, + "schema": { + "$ref": "#/definitions/CodeVersionResource" + } + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/CodeVersionResource" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/CodeVersionResource" + } + } + }, + "x-ms-examples": { + "CreateOrUpdate Code Version.": { + "$ref": "./examples/CodeVersion/createOrUpdate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/data": { + "get": { + "tags": [ + "DataContainer" + ], + "summary": "List containers.", + "operationId": "DataContainers_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/PaginationParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DataContainerResourceArmPaginatedResult" + } + } + }, + "x-ms-examples": { + "List Data Container.": { + "$ref": "./examples/DataContainer/list.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/data/{name}": { + "delete": { + "tags": [ + "DataContainer" + ], + "summary": "Delete container.", + "operationId": "DataContainers_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "name", + "description": "Container name.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success" + }, + "204": { + "description": "No Content" + } + }, + "x-ms-examples": { + "Delete Data Container.": { + "$ref": "./examples/DataContainer/delete.json" + } + } + }, + "get": { + "tags": [ + "DataContainer" + ], + "summary": "Get container.", + "operationId": "DataContainers_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "name", + "description": "Container name.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DataContainerResource" + } + } + }, + "x-ms-examples": { + "Get Data Container.": { + "$ref": "./examples/DataContainer/get.json" + } + } + }, + "put": { + "tags": [ + "DataContainer" + ], + "summary": "Create or update container.", + "operationId": "DataContainers_CreateOrUpdate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "name", + "description": "Container name.", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9\\-_]{0,254}$" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + }, + { + "in": "body", + "name": "body", + "description": "Container entity to create or update.", + "required": true, + "schema": { + "$ref": "#/definitions/DataContainerResource" + } + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DataContainerResource" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/DataContainerResource" + } + } + }, + "x-ms-examples": { + "CreateOrUpdate Data Container.": { + "$ref": "./examples/DataContainer/createOrUpdate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/data/{name}/versions": { + "get": { + "tags": [ + "DataVersion" + ], + "summary": "List data versions.", + "operationId": "DataVersions_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "name", + "description": "Data name.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "in": "query", + "name": "$orderBy", + "description": "Ordering of list.", + "type": "string" + }, + { + "in": "query", + "name": "$top", + "description": "Maximum number of records to return.", + "type": "integer", + "format": "int32" + }, + { + "$ref": "machineLearningServices.json#/parameters/PaginationParameter" + }, + { + "in": "query", + "name": "$tags", + "description": "Comma-separated list of tag names (and optionally values). Example: tag1,tag2=value2", + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DataVersionResourceArmPaginatedResult" + } + } + }, + "x-ms-examples": { + "List Data Version.": { + "$ref": "./examples/DataVersion/list.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/data/{name}/versions/{version}": { + "delete": { + "tags": [ + "DataVersion" + ], + "summary": "Delete version.", + "operationId": "DataVersions_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "name", + "description": "Container name.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "version", + "description": "Version identifier.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success" + }, + "204": { + "description": "No Content" + } + }, + "x-ms-examples": { + "Delete Data Version.": { + "$ref": "./examples/DataVersion/delete.json" + } + } + }, + "get": { + "tags": [ + "DataVersion" + ], + "summary": "Get version.", + "operationId": "DataVersions_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "name", + "description": "Container name.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "version", + "description": "Version identifier.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DataVersionResource" + } + } + }, + "x-ms-examples": { + "Get Data Version.": { + "$ref": "./examples/DataVersion/get.json" + } + } + }, + "put": { + "tags": [ + "DataVersion" + ], + "summary": "Create or update version.", + "operationId": "DataVersions_CreateOrUpdate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "name", + "description": "Container name.", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9\\-_]{0,254}$" + }, + { + "in": "path", + "name": "version", + "description": "Version identifier.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + }, + { + "in": "body", + "name": "body", + "description": "Version entity to create or update.", + "required": true, + "schema": { + "$ref": "#/definitions/DataVersionResource" + } + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DataVersionResource" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/DataVersionResource" + } + } + }, + "x-ms-examples": { + "CreateOrUpdate Data Version.": { + "$ref": "./examples/DataVersion/createOrUpdate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/datastores": { + "get": { + "tags": [ + "Datastore" + ], + "summary": "List datastores.", + "operationId": "Datastores_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/PaginationParameter" + }, + { + "in": "query", + "name": "count", + "description": "Maximum number of results to return.", + "type": "integer", + "format": "int32", + "default": 30 + }, + { + "in": "query", + "name": "isDefault", + "description": "Filter down to the workspace default datastore.", + "type": "boolean" + }, + { + "in": "query", + "name": "names", + "description": "Names of datastores to return.", + "type": "array", + "items": { + "type": "string" + } + }, + { + "in": "query", + "name": "searchText", + "description": "Text to search for in the datastore names.", + "type": "string" + }, + { + "in": "query", + "name": "orderBy", + "description": "Order by property (createdtime | modifiedtime | name).", + "type": "string" + }, + { + "in": "query", + "name": "orderByAsc", + "description": "Order by property in ascending order.", + "type": "boolean", + "default": false + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DatastorePropertiesResourceArmPaginatedResult" + } + } + }, + "x-ms-examples": { + "List datastores.": { + "$ref": "./examples/Datastore/list.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/datastores/{name}": { + "delete": { + "tags": [ + "Datastore" + ], + "summary": "Delete datastore.", + "operationId": "Datastores_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "name", + "description": "Datastore name.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success" + }, + "204": { + "description": "No Content" + } + }, + "x-ms-examples": { + "Delete datastore.": { + "$ref": "./examples/Datastore/delete.json" + } + } + }, + "get": { + "tags": [ + "Datastore" + ], + "summary": "Get datastore.", + "operationId": "Datastores_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "name", + "description": "Datastore name.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DatastorePropertiesResource" + } + } + }, + "x-ms-examples": { + "Get datastore.": { + "$ref": "./examples/Datastore/get.json" + } + } + }, + "put": { + "tags": [ + "Datastore" + ], + "summary": "Create or update datastore.", + "operationId": "Datastores_CreateOrUpdate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "name", + "description": "Datastore name.", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9\\-_]{0,254}$" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "in": "query", + "name": "skipValidation", + "description": "Flag to skip validation.", + "type": "boolean", + "default": false + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + }, + { + "in": "body", + "name": "body", + "description": "Datastore entity to create or update.", + "required": true, + "schema": { + "$ref": "#/definitions/DatastorePropertiesResource" + } + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DatastorePropertiesResource" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/DatastorePropertiesResource" + } + } + }, + "x-ms-examples": { + "CreateOrUpdate datastore (AzureBlob w/ AccountKey).": { + "$ref": "./examples/Datastore/AzureBlobWAccountKey/createOrUpdate.json" + }, + "CreateOrUpdate datastore (Azure Data Lake Gen1 w/ ServicePrincipal).": { + "$ref": "./examples/Datastore/AzureDataLakeGen1WServicePrincipal/createOrUpdate.json" + }, + "CreateOrUpdate datastore (Azure Data Lake Gen2 w/ Service Principal).": { + "$ref": "./examples/Datastore/AzureDataLakeGen2WServicePrincipal/createOrUpdate.json" + }, + "CreateOrUpdate datastore (Azure File store w/ AccountKey).": { + "$ref": "./examples/Datastore/AzureFileWAccountKey/createOrUpdate.json" + }, + "CreateOrUpdate datastore (Azure Postgre SQL w/ SQL Admin).": { + "$ref": "./examples/Datastore/AzurePostgreSqlWSqlAdmin/createOrUpdate.json" + }, + "CreateOrUpdate datastore (Azure SQL Database w/ SQL Admin).": { + "$ref": "./examples/Datastore/AzureSqlDatabaseWSqlAdmin/createOrUpdate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/datastores/{name}/listSecrets": { + "post": { + "tags": [ + "Datastore" + ], + "summary": "Get datastore secrets.", + "operationId": "Datastores_ListSecrets", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "name", + "description": "Datastore name.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "description": "Base definition for datastore secrets.", + "$ref": "#/definitions/DatastoreSecrets" + } + } + }, + "x-ms-examples": { + "Get datastore secrets.": { + "$ref": "./examples/Datastore/listSecrets.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/environments": { + "get": { + "tags": [ + "EnvironmentContainer" + ], + "summary": "List containers.", + "operationId": "EnvironmentContainers_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/PaginationParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/EnvironmentContainerResourceArmPaginatedResult" + } + } + }, + "x-ms-examples": { + "List Environment Container.": { + "$ref": "./examples/EnvironmentContainer/list.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/environments/{name}": { + "delete": { + "tags": [ + "EnvironmentContainer" + ], + "summary": "Delete container.", + "operationId": "EnvironmentContainers_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "name", + "description": "Container name.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success" + }, + "204": { + "description": "No Content" + } + }, + "x-ms-examples": { + "Delete Environment Container.": { + "$ref": "./examples/EnvironmentContainer/delete.json" + } + } + }, + "get": { + "tags": [ + "EnvironmentContainer" + ], + "summary": "Get container.", + "operationId": "EnvironmentContainers_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "name", + "description": "Container name.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/EnvironmentContainerResource" + } + } + }, + "x-ms-examples": { + "Get Environment Container.": { + "$ref": "./examples/EnvironmentContainer/get.json" + } + } + }, + "put": { + "tags": [ + "EnvironmentContainer" + ], + "summary": "Create or update container.", + "operationId": "EnvironmentContainers_CreateOrUpdate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "name", + "description": "Container name.", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9\\-_]{0,254}$" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + }, + { + "in": "body", + "name": "body", + "description": "Container entity to create or update.", + "required": true, + "schema": { + "$ref": "#/definitions/EnvironmentContainerResource" + } + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/EnvironmentContainerResource" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/EnvironmentContainerResource" + } + } + }, + "x-ms-examples": { + "CreateOrUpdate Environment Container.": { + "$ref": "./examples/EnvironmentContainer/createOrUpdate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/environments/{name}/versions": { + "get": { + "tags": [ + "EnvironmentSpecification" + ], + "summary": "List versions.", + "operationId": "EnvironmentSpecificationVersions_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "name", + "description": "Container name.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "in": "query", + "name": "$orderBy", + "description": "Ordering of list.", + "type": "string" + }, + { + "in": "query", + "name": "$top", + "description": "Maximum number of records to return.", + "type": "integer", + "format": "int32" + }, + { + "$ref": "machineLearningServices.json#/parameters/PaginationParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/EnvironmentSpecificationVersionResourceArmPaginatedResult" + } + } + }, + "x-ms-examples": { + "List Environment Specification Version.": { + "$ref": "./examples/EnvironmentSpecificationVersion/list.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/environments/{name}/versions/{version}": { + "delete": { + "tags": [ + "EnvironmentSpecification" + ], + "summary": "Delete version.", + "operationId": "EnvironmentSpecificationVersions_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "name", + "description": "Container name.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "version", + "description": "Version identifier.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success" + }, + "204": { + "description": "No Content" + } + }, + "x-ms-examples": { + "Delete Environment Specification Version.": { + "$ref": "./examples/EnvironmentSpecificationVersion/delete.json" + } + } + }, + "get": { + "tags": [ + "EnvironmentSpecification" + ], + "summary": "Get version.", + "operationId": "EnvironmentSpecificationVersions_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "name", + "description": "Container name.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "version", + "description": "Version identifier.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/EnvironmentSpecificationVersionResource" + } + } + }, + "x-ms-examples": { + "Get Environment Specification Version.": { + "$ref": "./examples/EnvironmentSpecificationVersion/get.json" + } + } + }, + "put": { + "tags": [ + "EnvironmentSpecification" + ], + "summary": "Creates or updates an EnvironmentSpecificationVersion.", + "operationId": "EnvironmentSpecificationVersions_CreateOrUpdate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "name", + "description": "Name of EnvironmentSpecificationVersion.", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9\\-_]{0,254}$" + }, + { + "in": "path", + "name": "version", + "description": "Version of EnvironmentSpecificationVersion.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + }, + { + "in": "body", + "name": "body", + "description": "Definition of EnvironmentSpecificationVersion.", + "required": true, + "schema": { + "$ref": "#/definitions/EnvironmentSpecificationVersionResource" + } + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/EnvironmentSpecificationVersionResource" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/EnvironmentSpecificationVersionResource" + } + } + }, + "x-ms-examples": { + "CreateOrUpdate Environment Specification Version.": { + "$ref": "./examples/EnvironmentSpecificationVersion/createOrUpdate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/jobs": { + "get": { + "tags": [ + "Job" + ], + "summary": "Lists Jobs in the workspace.", + "operationId": "Jobs_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/PaginationParameter" + }, + { + "in": "query", + "name": "jobType", + "description": "Type of job to be returned.", + "type": "string" + }, + { + "in": "query", + "name": "tags", + "description": "Tags for job to be returned.", + "type": "string" + }, + { + "in": "query", + "name": "tag", + "description": "Jobs returned will have this tag key.", + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/JobBaseResourceArmPaginatedResult" + } + } + }, + "x-ms-examples": { + "List Command Job.": { + "$ref": "./examples/Job/CommandJob/list.json" + }, + "List Sweep Job.": { + "$ref": "./examples/Job/SweepJob/list.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/jobs/{id}": { + "delete": { + "tags": [ + "Job" + ], + "summary": "Deletes a Job (asynchronous).", + "operationId": "Jobs_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "id", + "description": "The name and identifier for the Job.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success" + }, + "202": { + "description": "Accepted", + "headers": { + "x-ms-async-operation-timeout": { + "description": "Timeout for the client to use when polling the asynchronous operation.", + "type": "string", + "format": "duration" + }, + "Location": { + "description": "URI to poll for asynchronous operation result.", + "type": "string" + }, + "Retry-After": { + "description": "Duration the client should wait between requests, in seconds.", + "type": "integer", + "format": "int32", + "maximum": 600, + "minimum": 10 + } + } + }, + "204": { + "description": "No Content" + } + }, + "x-ms-examples": { + "Delete Job.": { + "$ref": "./examples/Job/delete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "Job" + ], + "summary": "Gets a Job by name/id.", + "operationId": "Jobs_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "id", + "description": "The name and identifier for the Job.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/JobBaseResource" + } + } + }, + "x-ms-examples": { + "Get Command Job.": { + "$ref": "./examples/Job/CommandJob/get.json" + }, + "Get Sweep Job.": { + "$ref": "./examples/Job/SweepJob/get.json" + } + } + }, + "put": { + "tags": [ + "Job" + ], + "summary": "Creates and executes a Job.", + "operationId": "Jobs_CreateOrUpdate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "id", + "description": "The name and identifier for the Job.", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9\\-_]{0,254}$" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + }, + { + "in": "body", + "name": "body", + "description": "Job definition object.", + "required": true, + "schema": { + "$ref": "#/definitions/JobBaseResource" + } + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/JobBaseResource" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/JobBaseResource" + } + } + }, + "x-ms-examples": { + "CreateOrUpdate Command Job.": { + "$ref": "./examples/Job/CommandJob/createOrUpdate.json" + }, + "CreateOrUpdate Sweep Job.": { + "$ref": "./examples/Job/SweepJob/createOrUpdate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/jobs/{id}/cancel": { + "post": { + "tags": [ + "Job" + ], + "summary": "Cancels a Job.", + "operationId": "Jobs_Cancel", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "id", + "description": "The name and identifier for the Job.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success" + } + }, + "x-ms-examples": { + "Cancel Job.": { + "$ref": "./examples/Job/cancel.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/labelingJobs": { + "get": { + "tags": [ + "LabelingJob" + ], + "summary": "Lists labeling jobs in the workspace.", + "operationId": "LabelingJobs_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/PaginationParameter" + }, + { + "in": "query", + "name": "count", + "description": "Number of labeling jobs to return.", + "type": "integer", + "format": "int32" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/LabelingJobResourceArmPaginatedResult" + } + } + }, + "x-ms-examples": { + "List Labeling Job.": { + "$ref": "./examples/LabelingJob/list.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/labelingJobs/{id}": { + "delete": { + "tags": [ + "LabelingJob" + ], + "summary": "Delete a labeling job.", + "operationId": "LabelingJobs_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "id", + "description": "The name and identifier for the LabelingJob.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success" + }, + "204": { + "description": "No Content" + } + }, + "x-ms-examples": { + "Delete Labeling Job.": { + "$ref": "./examples/LabelingJob/delete.json" + } + } + }, + "get": { + "tags": [ + "LabelingJob" + ], + "summary": "Gets a labeling job by name/id.", + "operationId": "LabelingJobs_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "id", + "description": "The name and identifier for the LabelingJob.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "in": "query", + "name": "includeJobInstructions", + "description": "Boolean value to indicate whether to include JobInstructions in response.", + "type": "boolean" + }, + { + "in": "query", + "name": "includeLabelCategories", + "description": "Boolean value to indicate Whether to include LabelCategories in response.", + "type": "boolean" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/LabelingJobResource" + } + } + }, + "x-ms-examples": { + "Get Labeling Job.": { + "$ref": "./examples/LabelingJob/get.json" + } + } + }, + "put": { + "tags": [ + "LabelingJob" + ], + "summary": "Creates or updates a labeling job (asynchronous).", + "operationId": "LabelingJobs_CreateOrUpdate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "id", + "description": "The name and identifier for the LabelingJob.", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9\\-_]{0,254}$" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + }, + { + "in": "body", + "name": "body", + "description": "LabelingJob definition object.", + "required": true, + "schema": { + "$ref": "#/definitions/LabelingJobResource" + } + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/LabelingJobResource" + }, + "headers": { + "x-ms-async-operation-timeout": { + "description": "Timeout for the client to use when polling the asynchronous operation.", + "type": "string", + "format": "duration" + }, + "Azure-AsyncOperation": { + "description": "URI to poll for asynchronous operation status.", + "type": "string" + } + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/LabelingJobResource" + } + } + }, + "x-ms-examples": { + "CreateOrUpdate Labeling Job.": { + "$ref": "./examples/LabelingJob/createOrUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/labelingJobs/{id}/exportLabels": { + "post": { + "tags": [ + "LabelingJob" + ], + "summary": "Export labels from a labeling job (asynchronous).", + "operationId": "LabelingJobs_ExportLabels", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "id", + "description": "The name and identifier for the LabelingJob.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + }, + { + "in": "body", + "name": "body", + "description": "The export summary.", + "required": true, + "schema": { + "$ref": "#/definitions/ExportSummary" + } + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ExportSummary" + } + }, + "202": { + "description": "Accepted", + "headers": { + "Location": { + "description": "URI to poll for asynchronous operation result.", + "type": "string" + }, + "Retry-After": { + "description": "Duration the client should wait between requests, in seconds.", + "type": "integer", + "format": "int32", + "maximum": 600, + "minimum": 10 + } + } + } + }, + "x-ms-examples": { + "ExportLabels Labeling Job.": { + "$ref": "./examples/LabelingJob/exportLabels.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/labelingJobs/{id}/pause": { + "post": { + "tags": [ + "LabelingJob" + ], + "summary": "Pause a labeling job.", + "operationId": "LabelingJobs_Pause", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "id", + "description": "The name and identifier for the LabelingJob.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success" + } + }, + "x-ms-examples": { + "Pause Labeling Job.": { + "$ref": "./examples/LabelingJob/pause.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/labelingJobs/{id}/resume": { + "post": { + "tags": [ + "LabelingJob" + ], + "summary": "Resume a labeling job (asynchronous).", + "operationId": "LabelingJobs_Resume", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "id", + "description": "The name and identifier for the LabelingJob.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success" + }, + "202": { + "description": "Accepted", + "headers": { + "Location": { + "description": "URI to poll for asynchronous operation result.", + "type": "string" + }, + "Retry-After": { + "description": "Duration the client should wait between requests, in seconds.", + "type": "integer", + "format": "int32", + "maximum": 600, + "minimum": 10 + } + } + } + }, + "x-ms-examples": { + "Resume Labeling Job.": { + "$ref": "./examples/LabelingJob/resume.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/models": { + "get": { + "tags": [ + "ModelContainer" + ], + "summary": "List model containers.", + "operationId": "ModelContainers_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/PaginationParameter" + }, + { + "in": "query", + "name": "count", + "description": "Maximum number of results to return.", + "type": "integer", + "format": "int32" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ModelContainerResourceArmPaginatedResult" + } + } + }, + "x-ms-examples": { + "List Model Container.": { + "$ref": "./examples/ModelContainer/list.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/models/{name}": { + "delete": { + "tags": [ + "ModelContainer" + ], + "summary": "Delete container.", + "operationId": "ModelContainers_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "name", + "description": "Container name.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success" + }, + "204": { + "description": "No Content" + } + }, + "x-ms-examples": { + "Delete Model Container.": { + "$ref": "./examples/ModelContainer/delete.json" + } + } + }, + "get": { + "tags": [ + "ModelContainer" + ], + "summary": "Get container.", + "operationId": "ModelContainers_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "name", + "description": "Container name.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ModelContainerResource" + } + } + }, + "x-ms-examples": { + "Get Model Container.": { + "$ref": "./examples/ModelContainer/get.json" + } + } + }, + "put": { + "tags": [ + "ModelContainer" + ], + "summary": "Create or update container.", + "operationId": "ModelContainers_CreateOrUpdate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "name", + "description": "Container name.", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9\\-_]{0,254}$" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + }, + { + "in": "body", + "name": "body", + "description": "Container entity to create or update.", + "required": true, + "schema": { + "$ref": "#/definitions/ModelContainerResource" + } + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ModelContainerResource" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/ModelContainerResource" + } + } + }, + "x-ms-examples": { + "CreateOrUpdate Model Container.": { + "$ref": "./examples/ModelContainer/createOrUpdate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/models/{name}/versions": { + "get": { + "tags": [ + "ModelVersion" + ], + "summary": "List model versions.", + "operationId": "ModelVersions_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "name", + "description": "Model name.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/PaginationParameter" + }, + { + "in": "query", + "name": "$orderBy", + "description": "Ordering of list.", + "type": "string" + }, + { + "in": "query", + "name": "$top", + "description": "Maximum number of records to return.", + "type": "integer", + "format": "int32" + }, + { + "in": "query", + "name": "version", + "description": "Model version.", + "type": "string" + }, + { + "in": "query", + "name": "description", + "description": "Model description.", + "type": "string" + }, + { + "in": "query", + "name": "offset", + "description": "Number of initial results to skip.", + "type": "integer", + "format": "int32" + }, + { + "in": "query", + "name": "tags", + "description": "Comma-separated list of tag names (and optionally values). Example: tag1,tag2=value2", + "type": "string" + }, + { + "in": "query", + "name": "properties", + "description": "Comma-separated list of property names (and optionally values). Example: prop1,prop2=value2", + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ModelVersionResourceArmPaginatedResult" + } + } + }, + "x-ms-examples": { + "List Model Version.": { + "$ref": "./examples/ModelVersion/list.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/models/{name}/versions/{version}": { + "delete": { + "tags": [ + "ModelVersion" + ], + "summary": "Delete version.", + "operationId": "ModelVersions_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "name", + "description": "Container name.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "version", + "description": "Version identifier.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success" + }, + "204": { + "description": "No Content" + } + }, + "x-ms-examples": { + "Delete Model Version.": { + "$ref": "./examples/ModelVersion/delete.json" + } + } + }, + "get": { + "tags": [ + "ModelVersion" + ], + "summary": "Get version.", + "operationId": "ModelVersions_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "name", + "description": "Container name.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "version", + "description": "Version identifier.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ModelVersionResource" + } + } + }, + "x-ms-examples": { + "Get Model Version.": { + "$ref": "./examples/ModelVersion/get.json" + } + } + }, + "put": { + "tags": [ + "ModelVersion" + ], + "summary": "Create or update version.", + "operationId": "ModelVersions_CreateOrUpdate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "name", + "description": "Container name.", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9\\-_]{0,254}$" + }, + { + "in": "path", + "name": "version", + "description": "Version identifier.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + }, + { + "in": "body", + "name": "body", + "description": "Version entity to create or update.", + "required": true, + "schema": { + "$ref": "#/definitions/ModelVersionResource" + } + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ModelVersionResource" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/ModelVersionResource" + } + } + }, + "x-ms-examples": { + "CreateOrUpdate Model Version.": { + "$ref": "./examples/ModelVersion/createOrUpdate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/onlineEndpoints": { + "get": { + "tags": [ + "OnlineEndpoint" + ], + "summary": "List Online Endpoints.", + "operationId": "OnlineEndpoints_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "in": "query", + "name": "name", + "description": "Name of the endpoint.", + "type": "string" + }, + { + "in": "query", + "name": "count", + "description": "Number of endpoints to be retrieved in a page of results.", + "type": "integer", + "format": "int32" + }, + { + "in": "query", + "name": "computeType", + "description": "EndpointComputeType to be filtered by.", + "type": "string", + "enum": [ + "Managed", + "K8S", + "AzureMLCompute" + ], + "x-ms-enum": { + "name": "EndpointComputeType", + "modelAsString": true + } + }, + { + "$ref": "machineLearningServices.json#/parameters/PaginationParameter" + }, + { + "in": "query", + "name": "tags", + "description": "A set of tags with which to filter the returned models. It is a comma separated string of tags key or tags key=value. Example: tagKey1,tagKey2,tagKey3=value3 .", + "type": "string" + }, + { + "in": "query", + "name": "properties", + "description": "A set of properties with which to filter the returned models. It is a comma separated string of properties key and/or properties key=value Example: propKey1,propKey2,propKey3=value3 .", + "type": "string" + }, + { + "in": "query", + "name": "orderBy", + "description": "The option to order the response.", + "type": "string", + "enum": [ + "CreatedAtDesc", + "CreatedAtAsc", + "UpdatedAtDesc", + "UpdatedAtAsc" + ], + "x-ms-enum": { + "name": "OrderString", + "modelAsString": true + } + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/OnlineEndpointTrackedResourceArmPaginatedResult" + } + } + }, + "x-ms-examples": { + "List Online Endpoint.": { + "$ref": "./examples/OnlineEndpoint/list.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/onlineEndpoints/{endpointName}": { + "delete": { + "tags": [ + "OnlineEndpoint" + ], + "summary": "Delete Online Endpoint (asynchronous).", + "operationId": "OnlineEndpoints_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "endpointName", + "description": "Online Endpoint name.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "204": { + "description": "No Content" + }, + "202": { + "description": "Accepted", + "headers": { + "x-ms-async-operation-timeout": { + "description": "Timeout for the client to use when polling the asynchronous operation.", + "type": "string", + "format": "duration" + }, + "Location": { + "description": "URI to poll for asynchronous operation result.", + "type": "string" + }, + "Retry-After": { + "description": "Duration the client should wait between requests, in seconds.", + "type": "integer", + "format": "int32", + "maximum": 600, + "minimum": 10 + } + } + }, + "200": { + "description": "Success" + } + }, + "x-ms-examples": { + "Delete Online Endpoint.": { + "$ref": "./examples/OnlineEndpoint/delete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "OnlineEndpoint" + ], + "summary": "Get Online Endpoint.", + "operationId": "OnlineEndpoints_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "endpointName", + "description": "Online Endpoint name.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/OnlineEndpointTrackedResource" + } + } + }, + "x-ms-examples": { + "Get Online Endpoint.": { + "$ref": "./examples/OnlineEndpoint/get.json" + } + } + }, + "patch": { + "tags": [ + "OnlineEndpoint" + ], + "summary": "Update Online Endpoint (asynchronous).", + "operationId": "OnlineEndpoints_Update", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "endpointName", + "description": "Online Endpoint name.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + }, + { + "in": "body", + "name": "body", + "description": "Online Endpoint entity to apply during operation.", + "required": true, + "schema": { + "$ref": "#/definitions/PartialOnlineEndpointPartialTrackedResource" + } + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/OnlineEndpointTrackedResource" + } + }, + "202": { + "description": "Accepted", + "headers": { + "x-ms-async-operation-timeout": { + "description": "Timeout for the client to use when polling the asynchronous operation.", + "type": "string", + "format": "duration" + }, + "Location": { + "description": "URI to poll for asynchronous operation result.", + "type": "string" + }, + "Retry-After": { + "description": "Duration the client should wait between requests, in seconds.", + "type": "integer", + "format": "int32", + "maximum": 600, + "minimum": 10 + } + } + } + }, + "x-ms-examples": { + "Update Online Endpoint.": { + "$ref": "./examples/OnlineEndpoint/update.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "put": { + "tags": [ + "OnlineEndpoint" + ], + "summary": "Create or update Online Endpoint (asynchronous).", + "operationId": "OnlineEndpoints_CreateOrUpdate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "endpointName", + "description": "Online Endpoint name.", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9\\-_]{0,254}$" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + }, + { + "in": "body", + "name": "body", + "description": "Online Endpoint entity to apply during operation.", + "required": true, + "schema": { + "$ref": "#/definitions/OnlineEndpointTrackedResource" + } + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/OnlineEndpointTrackedResource" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/OnlineEndpointTrackedResource" + }, + "headers": { + "x-ms-async-operation-timeout": { + "description": "Timeout for the client to use when polling the asynchronous operation.", + "type": "string", + "format": "duration" + }, + "Azure-AsyncOperation": { + "description": "URI to poll for asynchronous operation status.", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "CreateOrUpdate Online Endpoint.": { + "$ref": "./examples/OnlineEndpoint/createOrUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/onlineEndpoints/{endpointName}/deployments": { + "get": { + "tags": [ + "OnlineDeployment" + ], + "summary": "List Inference Endpoint Deployments.", + "operationId": "OnlineDeployments_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "endpointName", + "description": "Inference endpoint name.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "in": "query", + "name": "$orderBy", + "description": "Ordering of list.", + "type": "string" + }, + { + "in": "query", + "name": "$top", + "description": "Top of list.", + "type": "integer", + "format": "int32" + }, + { + "$ref": "machineLearningServices.json#/parameters/PaginationParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/OnlineDeploymentTrackedResourceArmPaginatedResult" + } + } + }, + "x-ms-examples": { + "List Online Deployments.": { + "$ref": "./examples/OnlineDeployment/list.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/onlineEndpoints/{endpointName}/deployments/{deploymentName}": { + "delete": { + "tags": [ + "OnlineDeployment" + ], + "summary": "Delete Inference Endpoint Deployment (asynchronous).", + "operationId": "OnlineDeployments_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "endpointName", + "description": "Inference endpoint name.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "deploymentName", + "description": "Inference Endpoint Deployment name.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success" + }, + "204": { + "description": "No Content" + }, + "202": { + "description": "Accepted", + "headers": { + "x-ms-async-operation-timeout": { + "description": "Timeout for the client to use when polling the asynchronous operation.", + "type": "string", + "format": "duration" + }, + "Location": { + "description": "URI to poll for asynchronous operation result.", + "type": "string" + }, + "Retry-After": { + "description": "Duration the client should wait between requests, in seconds.", + "type": "integer", + "format": "int32", + "maximum": 600, + "minimum": 10 + } + } + } + }, + "x-ms-examples": { + "Delete Online Deployment.": { + "$ref": "./examples/OnlineDeployment/delete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "OnlineDeployment" + ], + "summary": "Get Inference Deployment Deployment.", + "operationId": "OnlineDeployments_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "endpointName", + "description": "Inference endpoint name.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "deploymentName", + "description": "Inference Endpoint Deployment name.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/OnlineDeploymentTrackedResource" + } + } + }, + "x-ms-examples": { + "Get Managed Online Deployment.": { + "$ref": "./examples/OnlineDeployment/ManagedOnlineDeployment/get.json" + }, + "Get K8S Online Deployment.": { + "$ref": "./examples/OnlineDeployment/K8sOnlineDeployment/get.json" + } + } + }, + "patch": { + "tags": [ + "OnlineDeployment" + ], + "summary": "Update Online Deployment (asynchronous).", + "operationId": "OnlineDeployments_Update", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "endpointName", + "description": "Online Endpoint name.", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9\\-_]{0,254}$" + }, + { + "in": "path", + "name": "deploymentName", + "description": "Inference Endpoint Deployment name.", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9\\-_]{0,254}$" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + }, + { + "in": "body", + "name": "body", + "description": "Online Endpoint entity to apply during operation.", + "required": true, + "schema": { + "$ref": "#/definitions/PartialOnlineDeploymentPartialTrackedResource" + } + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/OnlineDeploymentTrackedResource" + } + }, + "202": { + "description": "Accepted", + "headers": { + "x-ms-async-operation-timeout": { + "description": "Timeout for the client to use when polling the asynchronous operation.", + "type": "string", + "format": "duration" + }, + "Location": { + "description": "URI to poll for asynchronous operation result.", + "type": "string" + }, + "Retry-After": { + "description": "Duration the client should wait between requests, in seconds.", + "type": "integer", + "format": "int32", + "maximum": 600, + "minimum": 10 + } + } + } + }, + "x-ms-examples": { + "Update Managed Online Deployment.": { + "$ref": "./examples/OnlineDeployment/ManagedOnlineDeployment/update.json" + }, + "Update K8S Online Deployment.": { + "$ref": "./examples/OnlineDeployment/K8sOnlineDeployment/update.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "put": { + "tags": [ + "OnlineDeployment" + ], + "summary": "Create or update Inference Endpoint Deployment (asynchronous).", + "operationId": "OnlineDeployments_CreateOrUpdate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "endpointName", + "description": "Inference endpoint name.", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9\\-_]{0,254}$" + }, + { + "in": "path", + "name": "deploymentName", + "description": "Inference Endpoint Deployment name.", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9\\-_]{0,254}$" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + }, + { + "in": "body", + "name": "body", + "description": "Inference Endpoint entity to apply during operation.", + "required": true, + "schema": { + "$ref": "#/definitions/OnlineDeploymentTrackedResource" + } + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/OnlineDeploymentTrackedResource" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/OnlineDeploymentTrackedResource" + }, + "headers": { + "x-ms-async-operation-timeout": { + "description": "Timeout for the client to use when polling the asynchronous operation.", + "type": "string", + "format": "duration" + }, + "Azure-AsyncOperation": { + "description": "URI to poll for asynchronous operation status.", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "CreateOrUpdate Managed Online Deployment.": { + "$ref": "./examples/OnlineDeployment/ManagedOnlineDeployment/createOrUpdate.json" + }, + "CreateOrUpdate K8S Online Deployment.": { + "$ref": "./examples/OnlineDeployment/K8sOnlineDeployment/createOrUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/onlineEndpoints/{endpointName}/deployments/{deploymentName}/getLogs": { + "post": { + "tags": [ + "OnlineDeployment" + ], + "summary": "Polls an Endpoint operation.", + "operationId": "OnlineDeployments_GetLogs", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "endpointName", + "description": "Inference endpoint name.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "deploymentName", + "description": "The name and identifier for the endpoint.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + }, + { + "in": "body", + "name": "body", + "description": "The request containing parameters for retrieving logs.", + "required": true, + "schema": { + "$ref": "#/definitions/DeploymentLogsRequest" + } + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeploymentLogs" + } + } + }, + "x-ms-examples": { + "Get Online Deployment Logs.": { + "$ref": "./examples/OnlineDeployment/getLogs.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/onlineEndpoints/{endpointName}/listKeys": { + "post": { + "tags": [ + "OnlineEndpoint" + ], + "summary": "List EndpointAuthKeys for an Endpoint using Key-based authentication.", + "operationId": "OnlineEndpoints_ListKeys", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "endpointName", + "description": "Online Endpoint name.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/EndpointAuthKeys" + } + } + }, + "x-ms-examples": { + "ListKeys Online Endpoint.": { + "$ref": "./examples/OnlineEndpoint/listKeys.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/onlineEndpoints/{endpointName}/regenerateKeys": { + "post": { + "tags": [ + "OnlineEndpoint" + ], + "summary": "Regenerate EndpointAuthKeys for an Endpoint using Key-based authentication (asynchronous).", + "operationId": "OnlineEndpoints_RegenerateKeys", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "endpointName", + "description": "Online Endpoint name.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + }, + { + "in": "body", + "name": "body", + "description": "RegenerateKeys request .", + "required": true, + "schema": { + "$ref": "#/definitions/RegenerateEndpointKeysRequest" + } + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success" + }, + "202": { + "description": "Accepted", + "headers": { + "Location": { + "description": "URI to poll for asynchronous operation result.", + "type": "string" + }, + "Retry-After": { + "description": "Duration the client should wait between requests, in seconds.", + "type": "integer", + "format": "int32", + "maximum": 600, + "minimum": 10 + } + } + } + }, + "x-ms-examples": { + "RegenerateKeys Online Endpoint.": { + "$ref": "./examples/OnlineEndpoint/regenerateKeys.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/onlineEndpoints/{endpointName}/token": { + "post": { + "tags": [ + "OnlineEndpoint" + ], + "summary": "Retrieve a valid AAD token for an Endpoint using AMLToken-based authentication.", + "operationId": "OnlineEndpoints_GetToken", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "endpointName", + "description": "Online Endpoint name.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/EndpointAuthToken" + } + } + }, + "x-ms-examples": { + "GetToken Online Endpoint.": { + "$ref": "./examples/OnlineEndpoint/getToken.json" + } + } + } + } + }, + "definitions": { + "AccountKeyDatastoreCredentials": { + "description": "Account key datastore credentials configuration.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatastoreCredentials" + } + ], + "properties": { + "secrets": { + "description": "Storage account secrets.", + "$ref": "#/definitions/AccountKeyDatastoreSecrets", + "x-ms-mutability": [ + "create", + "update" + ], + "x-ms-secret": true + } + }, + "x-ms-discriminator-value": "AccountKey", + "additionalProperties": false + }, + "AccountKeyDatastoreSecrets": { + "description": "Datastore account key secrets.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatastoreSecrets" + } + ], + "properties": { + "key": { + "description": "Storage account key.", + "type": "string" + } + }, + "x-ms-discriminator-value": "AccountKey", + "additionalProperties": false + }, + "AmlToken": { + "description": "AML Token identity configuration.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/IdentityConfiguration" + } + ], + "x-ms-discriminator-value": "AMLToken", + "additionalProperties": false + }, + "AssetReferenceBase": { + "description": "Base definition for asset references.", + "required": [ + "referenceType" + ], + "type": "object", + "properties": { + "referenceType": { + "description": "Specifies the type of asset reference.", + "$ref": "#/definitions/ReferenceType" + } + }, + "discriminator": "referenceType" + }, + "AutoScaleSettings": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/OnlineScaleSettings" + } + ], + "properties": { + "pollingInterval": { + "format": "duration", + "description": "The polling interval in ISO 8691 format. Only supports duration with precision as low as Seconds.", + "type": "string" + }, + "targetUtilizationPercentage": { + "format": "int32", + "type": "integer" + } + }, + "x-ms-discriminator-value": "Auto", + "additionalProperties": false + }, + "AzureBlobContents": { + "description": "Azure Blob datastore configuration.", + "required": [ + "accountName", + "containerName", + "credentials", + "endpoint", + "protocol" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatastoreContents" + } + ], + "properties": { + "accountName": { + "description": "Storage account name.", + "pattern": "[a-zA-Z0-9_]", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "containerName": { + "description": "Storage account container name.", + "pattern": "[a-zA-Z0-9_]", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "credentials": { + "description": "Account credentials.", + "$ref": "#/definitions/DatastoreCredentials" + }, + "endpoint": { + "description": "Azure cloud endpoint for the storage account.", + "pattern": "[a-zA-Z0-9_]", + "type": "string", + "example": "core.windows.net", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "protocol": { + "description": "Protocol used to communicate with the storage account.", + "pattern": "[a-zA-Z0-9_]", + "type": "string", + "example": "https", + "x-ms-mutability": [ + "create", + "read" + ] + } + }, + "x-ms-discriminator-value": "AzureBlob", + "additionalProperties": false + }, + "AzureDataLakeGen1Contents": { + "description": "Azure Data Lake Gen1 datastore configuration.", + "required": [ + "credentials", + "storeName" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatastoreContents" + } + ], + "properties": { + "credentials": { + "description": "Account credentials.", + "$ref": "#/definitions/DatastoreCredentials" + }, + "storeName": { + "description": "Azure Data Lake store name.", + "pattern": "[a-zA-Z0-9_]", + "type": "string" + } + }, + "x-ms-discriminator-value": "AzureDataLakeGen1", + "additionalProperties": false + }, + "AzureDataLakeGen2Contents": { + "description": "Azure Data Lake Gen2 datastore configuration.", + "required": [ + "accountName", + "containerName", + "credentials", + "endpoint", + "protocol" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatastoreContents" + } + ], + "properties": { + "accountName": { + "description": "Storage account name.", + "pattern": "[a-zA-Z0-9_]", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "containerName": { + "description": "Storage account container name.", + "pattern": "[a-zA-Z0-9_]", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "credentials": { + "description": "Account credentials.", + "$ref": "#/definitions/DatastoreCredentials" + }, + "endpoint": { + "description": "Azure cloud endpoint for the storage account.", + "pattern": "[a-zA-Z0-9_]", + "type": "string", + "example": "core.windows.net", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "protocol": { + "description": "Protocol used to communicate with the storage account.", + "pattern": "[a-zA-Z0-9_]", + "type": "string", + "example": "https", + "x-ms-mutability": [ + "create", + "read" + ] + } + }, + "x-ms-discriminator-value": "AzureDataLakeGen2", + "additionalProperties": false + }, + "AzureFileContents": { + "description": "Azure File datastore configuration.", + "required": [ + "accountName", + "containerName", + "credentials", + "endpoint", + "protocol" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatastoreContents" + } + ], + "properties": { + "accountName": { + "description": "Storage account name.", + "pattern": "[a-zA-Z0-9_]", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "containerName": { + "description": "Storage account container name.", + "pattern": "[a-zA-Z0-9_]", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "credentials": { + "description": "Account credentials.", + "$ref": "#/definitions/DatastoreCredentials" + }, + "endpoint": { + "description": "Azure cloud endpoint for the storage account.", + "pattern": "[a-zA-Z0-9_]", + "type": "string", + "example": "core.windows.net", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "protocol": { + "description": "Protocol used to communicate with the storage account.", + "pattern": "[a-zA-Z0-9_]", + "type": "string", + "example": "https", + "x-ms-mutability": [ + "create", + "read" + ] + } + }, + "x-ms-discriminator-value": "AzureFile", + "additionalProperties": false + }, + "AzurePostgreSqlContents": { + "description": "Azure Postgre SQL datastore configuration.", + "required": [ + "credentials", + "databaseName", + "endpoint", + "portNumber", + "serverName" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatastoreContents" + } + ], + "properties": { + "credentials": { + "description": "Account credentials.", + "$ref": "#/definitions/DatastoreCredentials" + }, + "databaseName": { + "description": "Azure SQL database name.", + "pattern": "[a-zA-Z0-9_]", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "enableSSL": { + "description": "Whether the Azure PostgreSQL server requires SSL.", + "type": "boolean", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "endpoint": { + "description": "Azure cloud endpoint for the database.", + "pattern": "[a-zA-Z0-9_]", + "type": "string", + "example": "database.windows.net", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "portNumber": { + "format": "int32", + "description": "Azure SQL server port.", + "type": "integer", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "serverName": { + "description": "Azure SQL server name.", + "pattern": "[a-zA-Z0-9_]", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + } + }, + "x-ms-discriminator-value": "AzurePostgreSql", + "additionalProperties": false + }, + "AzureSqlDatabaseContents": { + "description": "Azure SQL Database datastore configuration.", + "required": [ + "credentials", + "databaseName", + "endpoint", + "portNumber", + "serverName" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatastoreContents" + } + ], + "properties": { + "credentials": { + "description": "Account credentials.", + "$ref": "#/definitions/DatastoreCredentials" + }, + "databaseName": { + "description": "Azure SQL database name.", + "pattern": "[a-zA-Z0-9_]", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "endpoint": { + "description": "Azure cloud endpoint for the database.", + "pattern": "[a-zA-Z0-9_]", + "type": "string", + "example": "database.windows.net", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "portNumber": { + "format": "int32", + "description": "Azure SQL server port.", + "type": "integer", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "serverName": { + "description": "Azure SQL server name.", + "pattern": "[a-zA-Z0-9_]", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + } + }, + "x-ms-discriminator-value": "AzureSqlDatabase", + "additionalProperties": false + }, + "BanditPolicy": { + "description": "Defines an early termination policy based on slack criteria, and a frequency and delay interval for evaluation", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/EarlyTerminationPolicy" + } + ], + "properties": { + "slackAmount": { + "format": "float", + "type": "number" + }, + "slackFactor": { + "format": "float", + "type": "number" + } + }, + "x-ms-discriminator-value": "Bandit", + "additionalProperties": false + }, + "BatchDeployment": { + "description": "Batch inference settings per deployment.", + "type": "object", + "properties": { + "codeConfiguration": { + "description": "Code configuration for the endpoint deployment.", + "$ref": "#/definitions/CodeConfiguration" + }, + "compute": { + "description": "Configuration for compute binding.", + "$ref": "#/definitions/ComputeConfiguration" + }, + "description": { + "description": "Description of the endpoint deployment.", + "type": "string" + }, + "environmentId": { + "description": "ARM resource ID of the environment specification for the endpoint deployment.", + "type": "string" + }, + "environmentVariables": { + "description": "Environment variables configuration for the deployment.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "errorThreshold": { + "format": "int32", + "description": "Error threshold, if the error count for the entire input goes above this value,\r\nthe batch inference will be aborted. Range is [-1, int.MaxValue].\r\nFor FileDataset, this value is the count of file failures.\r\nFor TabularDataset, this value is the count of record failures.\r\nIf set to -1 (the lower bound), all failures during batch inference will be ignored.", + "type": "integer" + }, + "loggingLevel": { + "description": "Logging level for batch inference operation.", + "$ref": "#/definitions/BatchLoggingLevel" + }, + "miniBatchSize": { + "format": "int64", + "description": "Size of the mini-batch passed to each batch invocation.\r\nFor FileDataset, this is the number of files per mini-batch.\r\nFor TabularDataset, this is the size of the records in bytes, per mini-batch.", + "type": "integer" + }, + "model": { + "description": "Reference to the model asset for the endpoint deployment.", + "$ref": "#/definitions/AssetReferenceBase" + }, + "outputConfiguration": { + "description": "Output configuration for the batch inference operation.", + "$ref": "#/definitions/BatchOutputConfiguration" + }, + "partitionKeys": { + "description": "Partition keys list used for Named partitioning.", + "type": "array", + "items": { + "type": "string" + } + }, + "properties": { + "description": "Property dictionary. Properties can be added, but not removed or altered.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "retrySettings": { + "description": "Retry Settings for the batch inference operation.", + "$ref": "#/definitions/BatchRetrySettings" + } + }, + "additionalProperties": false + }, + "BatchDeploymentTrackedResource": { + "required": [ + "location", + "properties" + ], + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/TrackedResource" + } + ], + "properties": { + "identity": { + "description": "Service identity associated with a resource.", + "$ref": "#/definitions/ResourceIdentity" + }, + "kind": { + "type": "string" + }, + "properties": { + "description": "Additional attributes of the entity.", + "$ref": "#/definitions/BatchDeployment" + }, + "systemData": { + "description": "System data associated with resource provider", + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + } + }, + "additionalProperties": false + }, + "BatchDeploymentTrackedResourceArmPaginatedResult": { + "description": "A paginated list of BatchDeployment entities.", + "type": "object", + "properties": { + "nextLink": { + "type": "string" + }, + "value": { + "description": "An array of objects of type BatchDeployment.", + "type": "array", + "items": { + "$ref": "#/definitions/BatchDeploymentTrackedResource" + } + } + }, + "additionalProperties": false + }, + "BatchEndpoint": { + "description": "Batch endpoint configuration.", + "type": "object", + "properties": { + "authMode": { + "description": "Enum to determine endpoint authentication mode.", + "$ref": "#/definitions/EndpointAuthMode" + }, + "description": { + "description": "Description of the inference endpoint.", + "type": "string" + }, + "keys": { + "description": "EndpointAuthKeys to set initially on an Endpoint.\r\nThis property will always be returned as null. AuthKey values must be retrieved using the ListKeys API.", + "$ref": "#/definitions/EndpointAuthKeys", + "x-ms-mutability": [ + "create" + ], + "x-ms-secret": true + }, + "properties": { + "description": "Property dictionary. Properties can be added, but not removed or altered.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "scoringUri": { + "format": "uri", + "description": "Endpoint URI.", + "type": "string", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + }, + "swaggerUri": { + "format": "uri", + "description": "Endpoint Swagger URI.", + "type": "string", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + }, + "traffic": { + "description": "Traffic rules on how the traffic will be routed across deployments.", + "type": "object", + "additionalProperties": { + "format": "int32", + "type": "integer" + } + } + }, + "additionalProperties": false + }, + "BatchEndpointTrackedResource": { + "required": [ + "location", + "properties" + ], + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/TrackedResource" + } + ], + "properties": { + "identity": { + "description": "Service identity associated with a resource.", + "$ref": "#/definitions/ResourceIdentity" + }, + "kind": { + "type": "string" + }, + "properties": { + "description": "Additional attributes of the entity.", + "$ref": "#/definitions/BatchEndpoint" + }, + "systemData": { + "description": "System data associated with resource provider", + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + } + }, + "additionalProperties": false + }, + "BatchEndpointTrackedResourceArmPaginatedResult": { + "description": "A paginated list of BatchEndpoint entities.", + "type": "object", + "properties": { + "nextLink": { + "type": "string" + }, + "value": { + "description": "An array of objects of type BatchEndpoint.", + "type": "array", + "items": { + "$ref": "#/definitions/BatchEndpointTrackedResource" + } + } + }, + "additionalProperties": false + }, + "BatchLoggingLevel": { + "description": "Log verbosity for batch inferencing.\r\nIncreasing verbosity order for logging is : Warning, Info and Debug.\r\nThe default value is Info.", + "enum": [ + "Info", + "Warning", + "Debug" + ], + "type": "string", + "x-ms-enum": { + "name": "BatchLoggingLevel", + "modelAsString": true + }, + "additionalProperties": false + }, + "BatchOutputAction": { + "description": "Enum to determine how batch inferencing will handle output", + "enum": [ + "SummaryOnly", + "AppendRow" + ], + "type": "string", + "x-ms-enum": { + "name": "BatchOutputAction", + "modelAsString": true + }, + "additionalProperties": false + }, + "BatchOutputConfiguration": { + "description": "Batch inference output configuration.", + "type": "object", + "properties": { + "appendRowFileName": { + "description": "Customized output file name for append_row output action.", + "type": "string" + }, + "outputAction": { + "description": "Indicates how the output will be organized.", + "$ref": "#/definitions/BatchOutputAction" + } + }, + "additionalProperties": false + }, + "BatchRetrySettings": { + "description": "Retry settings for a batch inference operation.", + "type": "object", + "properties": { + "maxRetries": { + "format": "int32", + "description": "Maximum retry count for a mini-batch", + "type": "integer" + }, + "timeout": { + "format": "duration", + "description": "Invocation timeout for a mini-batch, in ISO 8601 format.", + "type": "string" + } + }, + "additionalProperties": false + }, + "CertificateDatastoreCredentials": { + "description": "Certificate datastore credentials configuration.", + "required": [ + "clientId", + "tenantId", + "thumbprint" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatastoreCredentials" + } + ], + "properties": { + "authorityUrl": { + "description": "Authority URL used for authentication.", + "type": "string" + }, + "clientId": { + "format": "uuid", + "description": "Service principal client ID.", + "type": "string" + }, + "resourceUri": { + "description": "Resource the service principal has access to.", + "type": "string" + }, + "secrets": { + "description": "Service principal secrets.", + "$ref": "#/definitions/CertificateDatastoreSecrets", + "x-ms-mutability": [ + "create", + "update" + ], + "x-ms-secret": true + }, + "tenantId": { + "format": "uuid", + "description": "ID of the tenant to which the service principal belongs.", + "type": "string" + }, + "thumbprint": { + "description": "Thumbprint of the certificate used for authentication.", + "pattern": "[a-zA-Z0-9_]", + "type": "string" + } + }, + "x-ms-discriminator-value": "Certificate", + "additionalProperties": false + }, + "CertificateDatastoreSecrets": { + "description": "Datastore certificate secrets.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatastoreSecrets" + } + ], + "properties": { + "certificate": { + "description": "Service principal certificate.", + "type": "string" + } + }, + "x-ms-discriminator-value": "Certificate", + "additionalProperties": false + }, + "CocoExportSummary": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ExportSummary" + } + ], + "properties": { + "containerName": { + "description": "The container name to which the labels will be exported.", + "type": "string", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + }, + "snapshotPath": { + "description": "The output path where the labels will be exported.", + "type": "string", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + } + }, + "x-ms-discriminator-value": "Coco", + "additionalProperties": false + }, + "CodeConfiguration": { + "description": "Configuration for a scoring code asset.", + "required": [ + "scoringScript" + ], + "type": "object", + "properties": { + "codeId": { + "description": "ARM resource ID of the code asset.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "scoringScript": { + "description": "The script to execute on startup. eg. \"score.py\"", + "minLength": 1, + "pattern": "[a-zA-Z0-9_]", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + } + }, + "additionalProperties": false + }, + "CodeContainer": { + "description": "Container for code asset versions.", + "type": "object", + "properties": { + "description": { + "description": "The asset description text.", + "type": "string" + }, + "properties": { + "description": "The asset property dictionary.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "tags": { + "description": "Tag dictionary. Tags can be added, removed, and updated.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "additionalProperties": false + }, + "CodeContainerResource": { + "description": "Azure Resource Manager resource envelope.", + "required": [ + "properties" + ], + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "Additional attributes of the entity.", + "$ref": "#/definitions/CodeContainer" + }, + "systemData": { + "description": "System data associated with resource provider", + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + } + }, + "additionalProperties": false + }, + "CodeContainerResourceArmPaginatedResult": { + "description": "A paginated list of CodeContainer entities.", + "type": "object", + "properties": { + "nextLink": { + "type": "string" + }, + "value": { + "description": "An array of objects of type CodeContainer.", + "type": "array", + "items": { + "$ref": "#/definitions/CodeContainerResource" + } + } + }, + "additionalProperties": false + }, + "CodeVersion": { + "description": "Code asset version details.", + "required": [ + "path" + ], + "type": "object", + "properties": { + "datastoreId": { + "description": "ARM resource ID of the datastore where the asset is located.", + "type": "string" + }, + "description": { + "description": "The asset description text.", + "type": "string" + }, + "isAnonymous": { + "description": "If the name version are system generated (anonymous registration).", + "type": "boolean", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "path": { + "description": "The path of the file/directory in the datastore.", + "pattern": "[a-zA-Z0-9_]", + "type": "string" + }, + "properties": { + "description": "The asset property dictionary.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "tags": { + "description": "Tag dictionary. Tags can be added, removed, and updated.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "additionalProperties": false + }, + "CodeVersionResource": { + "description": "Azure Resource Manager resource envelope.", + "required": [ + "properties" + ], + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "Additional attributes of the entity.", + "$ref": "#/definitions/CodeVersion" + }, + "systemData": { + "description": "System data associated with resource provider", + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + } + }, + "additionalProperties": false + }, + "CodeVersionResourceArmPaginatedResult": { + "description": "A paginated list of CodeVersion entities.", + "type": "object", + "properties": { + "nextLink": { + "type": "string" + }, + "value": { + "description": "An array of objects of type CodeVersion.", + "type": "array", + "items": { + "$ref": "#/definitions/CodeVersionResource" + } + } + }, + "additionalProperties": false + }, + "CommandJob": { + "description": "Command job definition.", + "required": [ + "command", + "compute" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/JobBase" + } + ], + "properties": { + "codeId": { + "description": "ARM resource ID of the code asset.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "command": { + "description": "The command to execute on startup of the job. eg. \"python train.py\"", + "minLength": 1, + "pattern": "[a-zA-Z0-9_]", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "compute": { + "description": "Compute binding for the job.", + "$ref": "#/definitions/ComputeConfiguration", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "distribution": { + "description": "Distribution configuration of the job. If set, this should be one of Mpi, Tensorflow, PyTorch, or null.", + "$ref": "#/definitions/DistributionConfiguration", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "environmentId": { + "description": "The ARM resource ID of the Environment specification for the job.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "environmentVariables": { + "description": "Environment variables included in the job.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-ms-mutability": [ + "create", + "read" + ] + }, + "experimentName": { + "description": "The name of the experiment the job belongs to. If not set, the job is placed in the \"Default\" experiment.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "identity": { + "description": "Identity configuration. If set, this should be one of AmlToken, ManagedIdentity, or null.\r\nDefaults to AmlToken if null.", + "$ref": "#/definitions/IdentityConfiguration", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "inputDataBindings": { + "description": "Mapping of input data bindings used in the job.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/InputDataBinding" + }, + "x-ms-mutability": [ + "create", + "read" + ] + }, + "output": { + "description": "Location of the job output logs and artifacts.", + "$ref": "#/definitions/JobOutput", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + }, + "outputDataBindings": { + "description": "Mapping of output data bindings used in the job.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/OutputDataBinding" + }, + "x-ms-mutability": [ + "create", + "read" + ] + }, + "parameters": { + "description": "Input parameters.", + "type": "object", + "additionalProperties": {}, + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + }, + "priority": { + "format": "int32", + "description": "Job priority for scheduling policy. Only applies to AMLCompute.\r\nPrivate preview feature and only available to users on the allow list.", + "type": "integer", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "status": { + "description": "Status of the job.", + "$ref": "#/definitions/JobStatus", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + }, + "timeout": { + "format": "duration", + "description": "The max run duration in ISO 8601 format, after which the job will be cancelled. Only supports duration with precision as low as Seconds.", + "type": "string" + } + }, + "x-ms-discriminator-value": "Command", + "additionalProperties": false + }, + "ComputeConfiguration": { + "description": "Configuration for compute binding.", + "type": "object", + "properties": { + "instanceCount": { + "format": "int32", + "description": "Number of instances or nodes.", + "type": "integer", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "instanceType": { + "description": "SKU type to run on.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "isLocal": { + "description": "Set to true for jobs running on local compute.", + "type": "boolean", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "location": { + "description": "Location for virtual cluster run.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "properties": { + "description": "Additional properties.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "target": { + "description": "ARM resource ID of the compute resource.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + } + }, + "additionalProperties": false + }, + "ContainerType": { + "enum": [ + "StorageInitializer", + "InferenceServer" + ], + "type": "string", + "x-ms-enum": { + "name": "ContainerType", + "modelAsString": true + }, + "additionalProperties": false + }, + "ContentsType": { + "description": "Enum to determine the datastore contents type.", + "enum": [ + "AzureBlob", + "AzureDataLakeGen1", + "AzureDataLakeGen2", + "AzureFile", + "AzureMySql", + "AzurePostgreSql", + "AzureSqlDatabase", + "GlusterFs" + ], + "type": "string", + "x-ms-enum": { + "name": "ContentsType", + "modelAsString": true + }, + "additionalProperties": false + }, + "CredentialsType": { + "description": "Enum to determine the datastore credentials type.", + "enum": [ + "AccountKey", + "Certificate", + "None", + "Sas", + "ServicePrincipal", + "SqlAdmin" + ], + "type": "string", + "x-ms-enum": { + "name": "CredentialsType", + "modelAsString": true + }, + "additionalProperties": false + }, + "CsvExportSummary": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ExportSummary" + } + ], + "properties": { + "containerName": { + "description": "The container name to which the labels will be exported.", + "type": "string", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + }, + "snapshotPath": { + "description": "The output path where the labels will be exported.", + "type": "string", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + } + }, + "x-ms-discriminator-value": "CSV", + "additionalProperties": false + }, + "DataBindingMode": { + "description": "Describes how the data should be attached to the container.", + "enum": [ + "Mount", + "Download", + "Upload" + ], + "type": "string", + "x-ms-enum": { + "name": "DataBindingMode", + "modelAsString": true + }, + "additionalProperties": false + }, + "DataContainer": { + "description": "Container for data asset versions.", + "type": "object", + "properties": { + "description": { + "description": "The asset description text.", + "type": "string" + }, + "properties": { + "description": "The asset property dictionary.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "tags": { + "description": "Tag dictionary. Tags can be added, removed, and updated.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "additionalProperties": false + }, + "DataContainerResource": { + "description": "Azure Resource Manager resource envelope.", + "required": [ + "properties" + ], + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "Additional attributes of the entity.", + "$ref": "#/definitions/DataContainer" + }, + "systemData": { + "description": "System data associated with resource provider", + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + } + }, + "additionalProperties": false + }, + "DataContainerResourceArmPaginatedResult": { + "description": "A paginated list of DataContainer entities.", + "type": "object", + "properties": { + "nextLink": { + "type": "string" + }, + "value": { + "description": "An array of objects of type DataContainer.", + "type": "array", + "items": { + "$ref": "#/definitions/DataContainerResource" + } + } + }, + "additionalProperties": false + }, + "DataPathAssetReference": { + "description": "Reference to an asset via its path in a datastore.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AssetReferenceBase" + } + ], + "properties": { + "datastoreId": { + "description": "ARM resource ID of the datastore where the asset is located.", + "type": "string" + }, + "path": { + "description": "The path of the file/directory in the datastore.", + "type": "string" + } + }, + "x-ms-discriminator-value": "DataPath", + "additionalProperties": false + }, + "DataVersion": { + "description": "Data asset version details.", + "required": [ + "path" + ], + "type": "object", + "properties": { + "datasetType": { + "description": "The Format of dataset.", + "$ref": "#/definitions/DatasetType" + }, + "datastoreId": { + "description": "ARM resource ID of the datastore where the asset is located.", + "type": "string" + }, + "description": { + "description": "The asset description text.", + "type": "string" + }, + "isAnonymous": { + "description": "If the name version are system generated (anonymous registration).", + "type": "boolean", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "path": { + "description": "The path of the file/directory in the datastore.", + "pattern": "[a-zA-Z0-9_]", + "type": "string" + }, + "properties": { + "description": "The asset property dictionary.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "tags": { + "description": "Tag dictionary. Tags can be added, removed, and updated.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "additionalProperties": false + }, + "DataVersionResource": { + "description": "Azure Resource Manager resource envelope.", + "required": [ + "properties" + ], + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "Additional attributes of the entity.", + "$ref": "#/definitions/DataVersion" + }, + "systemData": { + "description": "System data associated with resource provider", + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + } + }, + "additionalProperties": false + }, + "DataVersionResourceArmPaginatedResult": { + "description": "A paginated list of DataVersion entities.", + "type": "object", + "properties": { + "nextLink": { + "type": "string" + }, + "value": { + "description": "An array of objects of type DataVersion.", + "type": "array", + "items": { + "$ref": "#/definitions/DataVersionResource" + } + } + }, + "additionalProperties": false + }, + "DatasetExportSummary": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ExportSummary" + } + ], + "properties": { + "labeledAssetName": { + "description": "The unique name of the labeled data asset.", + "type": "string", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + } + }, + "x-ms-discriminator-value": "Dataset", + "additionalProperties": false + }, + "DatasetType": { + "enum": [ + "Simple", + "Dataflow" + ], + "type": "string", + "x-ms-enum": { + "name": "DatasetType", + "modelAsString": true + }, + "additionalProperties": false + }, + "DatastoreContents": { + "description": "Base definition for datastore contents configuration.", + "required": [ + "contentsType" + ], + "type": "object", + "properties": { + "contentsType": { + "description": "Storage type backing the datastore.", + "$ref": "#/definitions/ContentsType" + } + }, + "discriminator": "contentsType" + }, + "DatastoreCredentials": { + "description": "Base definition for datastore credentials.", + "required": [ + "credentialsType" + ], + "type": "object", + "properties": { + "credentialsType": { + "description": "Credential type used to authentication with storage.", + "$ref": "#/definitions/CredentialsType" + } + }, + "discriminator": "credentialsType" + }, + "DatastoreProperties": { + "description": "Datastore definition.", + "required": [ + "contents" + ], + "type": "object", + "properties": { + "contents": { + "description": "Reference to the datastore storage contents.", + "$ref": "#/definitions/DatastoreContents" + }, + "description": { + "description": "The asset description text.", + "type": "string" + }, + "hasBeenValidated": { + "description": "Whether the service has validated access to the datastore with the provided credentials.", + "type": "boolean", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + }, + "isDefault": { + "description": "Whether this datastore is the default for the workspace.", + "type": "boolean" + }, + "linkedInfo": { + "description": "Information about the datastore origin, if linked.", + "$ref": "#/definitions/LinkedInfo" + }, + "properties": { + "description": "The asset property dictionary.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "tags": { + "description": "Tag dictionary. Tags can be added, removed, and updated.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "additionalProperties": false + }, + "DatastorePropertiesResource": { + "description": "Azure Resource Manager resource envelope.", + "required": [ + "properties" + ], + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "Additional attributes of the entity.", + "$ref": "#/definitions/DatastoreProperties" + }, + "systemData": { + "description": "System data associated with resource provider", + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + } + }, + "additionalProperties": false + }, + "DatastorePropertiesResourceArmPaginatedResult": { + "description": "A paginated list of DatastoreProperties entities.", + "type": "object", + "properties": { + "nextLink": { + "type": "string" + }, + "value": { + "description": "An array of objects of type DatastoreProperties.", + "type": "array", + "items": { + "$ref": "#/definitions/DatastorePropertiesResource" + } + } + }, + "additionalProperties": false + }, + "DatastoreSecrets": { + "description": "Base definition for datastore secrets.", + "required": [ + "secretsType" + ], + "type": "object", + "properties": { + "secretsType": { + "description": "Credential type used to authentication with storage.", + "$ref": "#/definitions/SecretsType" + } + }, + "discriminator": "secretsType" + }, + "DeploymentLogs": { + "type": "object", + "properties": { + "content": { + "type": "string" + } + }, + "additionalProperties": false + }, + "DeploymentLogsRequest": { + "type": "object", + "properties": { + "containerType": { + "description": "The type of container to retrieve logs from.", + "$ref": "#/definitions/ContainerType" + }, + "tail": { + "format": "int32", + "description": "The maximum number of lines to tail.", + "type": "integer" + } + }, + "additionalProperties": false + }, + "DeploymentProvisioningState": { + "enum": [ + "Creating", + "Deleting", + "Scaling", + "Updating", + "Succeeded", + "Failed", + "Canceled" + ], + "type": "string", + "x-ms-enum": { + "name": "DeploymentProvisioningState", + "modelAsString": true + }, + "additionalProperties": false + }, + "DistributionConfiguration": { + "description": "Base definition for job distribution configuration.", + "required": [ + "distributionType" + ], + "type": "object", + "properties": { + "distributionType": { + "description": "Specifies the type of distribution framework.", + "$ref": "#/definitions/DistributionType", + "x-ms-mutability": [ + "create", + "read" + ] + } + }, + "discriminator": "distributionType" + }, + "DistributionType": { + "description": "Enum to determine the job distribution type.", + "enum": [ + "PyTorch", + "TensorFlow", + "Mpi" + ], + "type": "string", + "x-ms-enum": { + "name": "DistributionType", + "modelAsString": true + }, + "additionalProperties": false + }, + "DockerBuild": { + "description": "Class to represent configuration settings for Docker Build", + "required": [ + "dockerfile" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DockerSpecification" + } + ], + "properties": { + "context": { + "description": "Path to a snapshot of the Docker Context. This property is only valid if Dockerfile is specified.\r\nThe path is relative to the asset path which must contain a single Blob URI value.\r\n", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "dockerfile": { + "description": "Docker command line instructions to assemble an image.\r\n", + "pattern": "[a-zA-Z0-9_]", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + } + }, + "x-ms-discriminator-value": "Build", + "additionalProperties": false + }, + "DockerImage": { + "description": "Class to represent configuration settings for Docker Build", + "required": [ + "dockerImageUri" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DockerSpecification" + } + ], + "properties": { + "dockerImageUri": { + "description": "Image name of a custom base image.\r\n", + "pattern": "[a-zA-Z0-9_]", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + } + }, + "x-ms-discriminator-value": "Image", + "additionalProperties": false + }, + "DockerImagePlatform": { + "type": "object", + "properties": { + "operatingSystemType": { + "description": "The OS type the Environment.", + "$ref": "#/definitions/OperatingSystemType" + } + }, + "additionalProperties": false + }, + "DockerSpecification": { + "description": "Configuration settings for Docker", + "required": [ + "dockerSpecificationType" + ], + "type": "object", + "properties": { + "dockerSpecificationType": { + "description": "Docker specification must be either Build or Image", + "$ref": "#/definitions/DockerSpecificationType", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "platform": { + "description": "The platform information of the docker image.", + "$ref": "#/definitions/DockerImagePlatform", + "x-ms-mutability": [ + "create", + "read" + ] + } + }, + "discriminator": "dockerSpecificationType" + }, + "DockerSpecificationType": { + "description": "Enum to determine docker specification type. Must be either Build or Image.", + "enum": [ + "Build", + "Image" + ], + "type": "string", + "x-ms-enum": { + "name": "DockerSpecificationType", + "modelAsString": true + }, + "additionalProperties": false + }, + "EarlyTerminationPolicy": { + "description": "Early termination policies enable canceling poor-performing runs before they complete", + "required": [ + "policyType" + ], + "type": "object", + "properties": { + "delayEvaluation": { + "format": "int32", + "type": "integer" + }, + "evaluationInterval": { + "format": "int32", + "type": "integer" + }, + "policyType": { + "description": "Name of policy configuration", + "$ref": "#/definitions/EarlyTerminationPolicyType" + } + }, + "discriminator": "policyType" + }, + "EarlyTerminationPolicyType": { + "enum": [ + "Bandit", + "MedianStopping", + "TruncationSelection" + ], + "type": "string", + "x-ms-enum": { + "name": "EarlyTerminationPolicyType", + "modelAsString": true + }, + "additionalProperties": false + }, + "EndpointAuthKeys": { + "description": "Keys for endpoint authentication.", + "type": "object", + "properties": { + "primaryKey": { + "description": "The primary key.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "secondaryKey": { + "description": "The secondary key.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + } + }, + "additionalProperties": false + }, + "EndpointAuthMode": { + "description": "Enum to determine endpoint authentication mode.", + "enum": [ + "AMLToken", + "Key", + "AADToken" + ], + "type": "string", + "x-ms-enum": { + "name": "EndpointAuthMode", + "modelAsString": true + }, + "additionalProperties": false + }, + "EndpointAuthToken": { + "description": "Service Token", + "type": "object", + "properties": { + "accessToken": { + "description": "Access token.", + "type": "string" + }, + "expiryTimeUtc": { + "format": "int64", + "description": "Access token expiry time (UTC).", + "type": "integer" + }, + "refreshAfterTimeUtc": { + "format": "int64", + "description": "Refresh access token after time (UTC).", + "type": "integer" + }, + "tokenType": { + "description": "Access token type.", + "type": "string" + } + }, + "additionalProperties": false + }, + "EndpointComputeType": { + "description": "Enum to determine endpoint compute type.", + "enum": [ + "Managed", + "K8S", + "AzureMLCompute" + ], + "type": "string", + "x-ms-enum": { + "name": "EndpointComputeType", + "modelAsString": true + }, + "additionalProperties": false + }, + "EndpointProvisioningState": { + "description": "State of endpoint provisioning.", + "enum": [ + "Creating", + "Deleting", + "Succeeded", + "Failed", + "Updating", + "Canceled" + ], + "type": "string", + "x-ms-enum": { + "name": "EndpointProvisioningState", + "modelAsString": true + }, + "additionalProperties": false + }, + "EnvironmentContainer": { + "description": "Container for environment specification versions.", + "type": "object", + "properties": { + "description": { + "description": "The asset description text.", + "type": "string" + }, + "properties": { + "description": "The asset property dictionary.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "tags": { + "description": "Tag dictionary. Tags can be added, removed, and updated.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "additionalProperties": false + }, + "EnvironmentContainerResource": { + "description": "Azure Resource Manager resource envelope.", + "required": [ + "properties" + ], + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "Additional attributes of the entity.", + "$ref": "#/definitions/EnvironmentContainer" + }, + "systemData": { + "description": "System data associated with resource provider", + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + } + }, + "additionalProperties": false + }, + "EnvironmentContainerResourceArmPaginatedResult": { + "description": "A paginated list of EnvironmentContainer entities.", + "type": "object", + "properties": { + "nextLink": { + "type": "string" + }, + "value": { + "description": "An array of objects of type EnvironmentContainer.", + "type": "array", + "items": { + "$ref": "#/definitions/EnvironmentContainerResource" + } + } + }, + "additionalProperties": false + }, + "EnvironmentSpecificationType": { + "description": "Environment specification is either user created or curated by Azure ML service", + "enum": [ + "Curated", + "UserCreated" + ], + "type": "string", + "x-ms-enum": { + "name": "EnvironmentSpecificationType", + "modelAsString": true + }, + "additionalProperties": false + }, + "EnvironmentSpecificationVersion": { + "description": "Environment specification version details.\r\n", + "type": "object", + "properties": { + "condaFile": { + "description": "Standard configuration file used by Conda that lets you install any kind of package, including Python, R, and C/C++ packages.\r\n", + "type": "string" + }, + "description": { + "description": "The asset description text.", + "type": "string" + }, + "docker": { + "description": "Configuration settings for Docker.", + "$ref": "#/definitions/DockerSpecification" + }, + "environmentSpecificationType": { + "description": "Environment specification is either user managed or curated by the Azure ML service\r\n", + "$ref": "#/definitions/EnvironmentSpecificationType", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + }, + "inferenceContainerProperties": { + "description": "Defines configuration specific to inference.", + "$ref": "#/definitions/InferenceContainerProperties" + }, + "isAnonymous": { + "description": "If the name version are system generated (anonymous registration).", + "type": "boolean", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "properties": { + "description": "The asset property dictionary.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "tags": { + "description": "Tag dictionary. Tags can be added, removed, and updated.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "additionalProperties": false + }, + "EnvironmentSpecificationVersionResource": { + "description": "Azure Resource Manager resource envelope.", + "required": [ + "properties" + ], + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "Additional attributes of the entity.", + "$ref": "#/definitions/EnvironmentSpecificationVersion" + }, + "systemData": { + "description": "System data associated with resource provider", + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + } + }, + "additionalProperties": false + }, + "EnvironmentSpecificationVersionResourceArmPaginatedResult": { + "description": "A paginated list of EnvironmentSpecificationVersion entities.", + "type": "object", + "properties": { + "nextLink": { + "type": "string" + }, + "value": { + "description": "An array of objects of type EnvironmentSpecificationVersion.", + "type": "array", + "items": { + "$ref": "#/definitions/EnvironmentSpecificationVersionResource" + } + } + }, + "additionalProperties": false + }, + "ExportFormatType": { + "description": "The format of exported labels.", + "enum": [ + "Dataset", + "Coco", + "CSV" + ], + "type": "string", + "x-ms-enum": { + "name": "ExportFormatType", + "modelAsString": true + }, + "additionalProperties": false + }, + "ExportSummary": { + "required": [ + "format" + ], + "type": "object", + "properties": { + "endTimeUtc": { + "format": "date-time", + "description": "The time when the export was completed.", + "type": "string", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + }, + "exportedRowCount": { + "format": "int64", + "description": "The total number of labeled datapoints exported.", + "type": "integer", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + }, + "format": { + "description": "The format of exported labels, also as the discriminator.", + "$ref": "#/definitions/ExportFormatType", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "labelingJobId": { + "description": "Name and identifier of the job containing exported labels.", + "type": "string", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + }, + "startTimeUtc": { + "format": "date-time", + "description": "The time when the export was requested.", + "type": "string", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + } + }, + "discriminator": "format" + }, + "FlavorData": { + "type": "object", + "properties": { + "data": { + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "additionalProperties": false + }, + "GlusterFsContents": { + "description": "GlusterFs datastore configuration.", + "required": [ + "serverAddress", + "volumeName" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatastoreContents" + } + ], + "properties": { + "serverAddress": { + "description": "GlusterFS server address (can be the IP address or server name).", + "pattern": "[a-zA-Z0-9_]", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "volumeName": { + "description": "GlusterFS volume name.", + "pattern": "[a-zA-Z0-9_]", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + } + }, + "x-ms-discriminator-value": "GlusterFs", + "additionalProperties": false + }, + "Goal": { + "description": "Defines supported metric goals for hyperparameter tuning", + "enum": [ + "Minimize", + "Maximize" + ], + "type": "string", + "x-ms-enum": { + "name": "Goal", + "modelAsString": true + }, + "additionalProperties": false + }, + "IdAssetReference": { + "description": "Reference to an asset via its ARM resource ID.", + "required": [ + "assetId" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AssetReferenceBase" + } + ], + "properties": { + "assetId": { + "description": "ARM resource ID of the asset.", + "pattern": "[a-zA-Z0-9_]", + "type": "string" + } + }, + "x-ms-discriminator-value": "Id", + "additionalProperties": false + }, + "IdentityConfiguration": { + "description": "Base definition for identity configuration.", + "required": [ + "identityType" + ], + "type": "object", + "properties": { + "identityType": { + "description": "Specifies the type of identity framework.", + "$ref": "#/definitions/IdentityConfigurationType", + "x-ms-mutability": [ + "create", + "read" + ] + } + }, + "discriminator": "identityType" + }, + "IdentityConfigurationType": { + "description": "Enum to determine identity framework.", + "enum": [ + "Managed", + "AMLToken" + ], + "type": "string", + "x-ms-enum": { + "name": "IdentityConfigurationType", + "modelAsString": true + }, + "additionalProperties": false + }, + "ImageAnnotationType": { + "description": "Annotation type of image data.", + "enum": [ + "Classification", + "BoundingBox", + "InstanceSegmentation" + ], + "type": "string", + "x-ms-enum": { + "name": "ImageAnnotationType", + "modelAsString": true + }, + "additionalProperties": false + }, + "InferenceContainerProperties": { + "type": "object", + "properties": { + "livenessRoute": { + "description": "The route to check the liveness of the inference server container.", + "$ref": "#/definitions/Route" + }, + "readinessRoute": { + "description": "The route to check the readiness of the inference server container.", + "$ref": "#/definitions/Route" + }, + "scoringRoute": { + "description": "The port to send the scoring requests to, within the inference server container.", + "$ref": "#/definitions/Route" + } + }, + "additionalProperties": false + }, + "InputDataBinding": { + "type": "object", + "properties": { + "dataId": { + "description": "ARM resource ID of the registered dataVersion.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "mode": { + "description": "Mechanism for accessing the data artifact.", + "$ref": "#/definitions/DataBindingMode", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "pathOnCompute": { + "description": "Location of data inside the container process.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + } + }, + "additionalProperties": false + }, + "JobBase": { + "description": "Base definition for a job.", + "required": [ + "jobType" + ], + "type": "object", + "properties": { + "description": { + "description": "The asset description text.", + "type": "string" + }, + "interactionEndpoints": { + "description": "List of JobEndpoints.\r\nFor local jobs, a job endpoint will have an endpoint value of FileStreamObject.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/JobEndpoint" + }, + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + }, + "jobType": { + "description": "Specifies the type of job.", + "$ref": "#/definitions/JobType", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "properties": { + "description": "The asset property dictionary.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "provisioningState": { + "$ref": "#/definitions/JobProvisioningState", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + }, + "tags": { + "description": "Tag dictionary. Tags can be added, removed, and updated.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "discriminator": "jobType" + }, + "JobBaseResource": { + "description": "Azure Resource Manager resource envelope.", + "required": [ + "properties" + ], + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "Additional attributes of the entity.", + "$ref": "#/definitions/JobBase" + }, + "systemData": { + "description": "System data associated with resource provider", + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + } + }, + "additionalProperties": false + }, + "JobBaseResourceArmPaginatedResult": { + "description": "A paginated list of JobBase entities.", + "type": "object", + "properties": { + "nextLink": { + "type": "string" + }, + "value": { + "description": "An array of objects of type JobBase.", + "type": "array", + "items": { + "$ref": "#/definitions/JobBaseResource" + } + } + }, + "additionalProperties": false + }, + "JobEndpoint": { + "description": "Job endpoint definition", + "type": "object", + "properties": { + "endpoint": { + "description": "Url for endpoint.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "jobEndpointType": { + "description": "Endpoint type.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "port": { + "format": "int32", + "description": "Port for endpoint.", + "type": "integer", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "properties": { + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "additionalProperties": false + }, + "JobOutput": { + "description": "Job output definition container information on where to find job output/logs.", + "type": "object", + "properties": { + "datastoreId": { + "description": "ARM ID of the datastore where the job logs and artifacts are stored, or null for the default container (\"azureml\") in the workspace's storage account.", + "type": "string", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + }, + "path": { + "description": "Path within the datastore to the job logs and artifacts.", + "type": "string", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + } + }, + "additionalProperties": false + }, + "JobProvisioningState": { + "enum": [ + "Succeeded", + "Failed", + "Canceled", + "InProgress" + ], + "type": "string", + "x-ms-enum": { + "name": "JobProvisioningState", + "modelAsString": true + }, + "additionalProperties": false + }, + "JobStatus": { + "description": "The status of a job.", + "enum": [ + "NotStarted", + "Starting", + "Provisioning", + "Preparing", + "Queued", + "Running", + "Finalizing", + "CancelRequested", + "Completed", + "Failed", + "Canceled", + "NotResponding", + "Paused", + "Unknown" + ], + "type": "string", + "x-ms-enum": { + "name": "JobStatus", + "modelAsString": true + }, + "additionalProperties": false + }, + "JobType": { + "description": "Enum to determine the type of job.", + "enum": [ + "Command", + "Sweep", + "Labeling" + ], + "type": "string", + "x-ms-enum": { + "name": "JobType", + "modelAsString": true + }, + "additionalProperties": false + }, + "K8sOnlineDeployment": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/OnlineDeployment" + } + ], + "properties": { + "containerResourceRequirements": { + "$ref": "machineLearningServices.json#/definitions/ContainerResourceRequirements" + } + }, + "x-ms-discriminator-value": "K8S", + "additionalProperties": false + }, + "KeyType": { + "enum": [ + "Primary", + "Secondary" + ], + "type": "string", + "x-ms-enum": { + "name": "KeyType", + "modelAsString": true + }, + "additionalProperties": false + }, + "LabelCategory": { + "description": "Label category definition", + "type": "object", + "properties": { + "allowMultiSelect": { + "description": "Indicates whether it is allowed to select multiple classes in this category.", + "type": "boolean", + "x-ms-mutability": [ + "create", + "read", + "update" + ] + }, + "classes": { + "description": "Dictionary of label classes in this category.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/LabelClass" + }, + "x-ms-mutability": [ + "create", + "read", + "update" + ] + }, + "displayName": { + "description": "Display name of the label category.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + } + }, + "additionalProperties": false + }, + "LabelClass": { + "description": "Label class definition", + "type": "object", + "properties": { + "displayName": { + "description": "Display name of the label class.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "subclasses": { + "description": "Dictionary of subclasses of the label class.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/LabelClass" + }, + "x-ms-mutability": [ + "create", + "read", + "update" + ] + } + }, + "additionalProperties": false + }, + "LabelingDatasetConfiguration": { + "description": "Labeling dataset configuration definition", + "type": "object", + "properties": { + "assetName": { + "description": "Name of the data asset to perform labeling.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "datasetVersion": { + "description": "AML dataset version.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "incrementalDatasetRefreshEnabled": { + "description": "Indicates whether to enable incremental dataset refresh.", + "type": "boolean", + "x-ms-mutability": [ + "create", + "read", + "update" + ] + } + }, + "additionalProperties": false + }, + "LabelingJob": { + "description": "Labeling job definition", + "required": [ + "jobType" + ], + "type": "object", + "properties": { + "createdTimeUtc": { + "format": "date-time", + "description": "Created time of the job in UTC timezone.", + "type": "string", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + }, + "datasetConfiguration": { + "description": "Configuration of dataset used in the job.", + "$ref": "#/definitions/LabelingDatasetConfiguration", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "description": { + "description": "The asset description text.", + "type": "string" + }, + "interactionEndpoints": { + "description": "List of JobEndpoints.\r\nFor local jobs, a job endpoint will have an endpoint value of FileStreamObject.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/JobEndpoint" + }, + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + }, + "jobInstructions": { + "description": "Labeling instructions of the job.", + "$ref": "#/definitions/LabelingJobInstructions", + "x-ms-mutability": [ + "create", + "read", + "update" + ] + }, + "jobType": { + "description": "Specifies the type of job. This field should always be set to \"Labeling\".", + "$ref": "#/definitions/JobType", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "labelCategories": { + "description": "Label categories of the job.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/LabelCategory" + }, + "x-ms-mutability": [ + "create", + "read", + "update" + ] + }, + "labelingJobMediaProperties": { + "description": "Media type specific properties in the job.", + "$ref": "#/definitions/LabelingJobMediaProperties", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "mlAssistConfiguration": { + "description": "Configuration of MLAssist feature in the job.", + "$ref": "#/definitions/MLAssistConfiguration" + }, + "progressMetrics": { + "description": "Progress metrics of the job.", + "$ref": "#/definitions/ProgressMetrics", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + }, + "projectId": { + "format": "uuid", + "description": "Internal id of the job(Previously called project).", + "type": "string", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + }, + "properties": { + "description": "The asset property dictionary.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "provisioningState": { + "$ref": "#/definitions/JobProvisioningState", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + }, + "status": { + "description": "Status of the job.", + "$ref": "#/definitions/JobStatus", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + }, + "statusMessages": { + "description": "Status messages of the job.", + "type": "array", + "items": { + "$ref": "#/definitions/StatusMessage" + }, + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + }, + "tags": { + "description": "Tag dictionary. Tags can be added, removed, and updated.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "additionalProperties": false + }, + "LabelingJobImageProperties": { + "description": "Properties of a labeling job for image data", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LabelingJobMediaProperties" + } + ], + "properties": { + "annotationType": { + "description": "Annotation type of image labeling job.", + "$ref": "#/definitions/ImageAnnotationType", + "x-ms-mutability": [ + "create", + "read" + ] + } + }, + "x-ms-discriminator-value": "Image", + "additionalProperties": false + }, + "LabelingJobInstructions": { + "description": "Instructions for labeling job", + "type": "object", + "properties": { + "uri": { + "description": "The link to a page with detailed labeling instructions for labelers.", + "type": "string", + "x-ms-mutability": [ + "create", + "read", + "update" + ] + } + }, + "additionalProperties": false + }, + "LabelingJobMediaProperties": { + "description": "Properties of a labeling job", + "required": [ + "mediaType" + ], + "type": "object", + "properties": { + "mediaType": { + "description": "Media type of the job.", + "$ref": "#/definitions/MediaType", + "x-ms-mutability": [ + "create", + "read" + ] + } + }, + "discriminator": "mediaType" + }, + "LabelingJobResource": { + "description": "Azure Resource Manager resource envelope.", + "required": [ + "properties" + ], + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "Additional attributes of the entity.", + "$ref": "#/definitions/LabelingJob" + }, + "systemData": { + "description": "System data associated with resource provider", + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + } + }, + "additionalProperties": false + }, + "LabelingJobResourceArmPaginatedResult": { + "description": "A paginated list of LabelingJob entities.", + "type": "object", + "properties": { + "nextLink": { + "type": "string" + }, + "value": { + "description": "An array of objects of type LabelingJob.", + "type": "array", + "items": { + "$ref": "#/definitions/LabelingJobResource" + } + } + }, + "additionalProperties": false + }, + "LabelingJobTextProperties": { + "description": "Properties of a labeling job for text data", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LabelingJobMediaProperties" + } + ], + "properties": { + "annotationType": { + "description": "Annotation type of text labeling job.", + "$ref": "#/definitions/TextAnnotationType", + "x-ms-mutability": [ + "create", + "read" + ] + } + }, + "x-ms-discriminator-value": "Text", + "additionalProperties": false + }, + "LinkedInfo": { + "description": "Information about a datastore origin, if linked.", + "type": "object", + "properties": { + "linkedId": { + "description": "Linked service ID.", + "type": "string" + }, + "linkedResourceName": { + "description": "Linked service resource name.", + "type": "string" + }, + "origin": { + "description": "Type of the linked service.", + "$ref": "#/definitions/OriginType" + } + }, + "additionalProperties": false + }, + "MLAssistConfiguration": { + "description": "Labeling MLAssist configuration definition", + "type": "object", + "properties": { + "inferencingComputeBinding": { + "description": "AML compute binding used in inferencing.", + "$ref": "#/definitions/ComputeConfiguration", + "x-ms-mutability": [ + "create", + "read", + "update" + ] + }, + "mlAssistEnabled": { + "description": "Indicates whether MLAssist feature is enabled.", + "type": "boolean" + }, + "trainingComputeBinding": { + "description": "AML compute binding used in training.", + "$ref": "#/definitions/ComputeConfiguration", + "x-ms-mutability": [ + "create", + "read", + "update" + ] + } + }, + "additionalProperties": false + }, + "ManagedIdentity": { + "description": "Managed identity configuration.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/IdentityConfiguration" + } + ], + "properties": { + "clientId": { + "format": "uuid", + "description": "Specifies a user-assigned identity by client ID. For system-assigned, do not set this field.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "objectId": { + "format": "uuid", + "description": "Specifies a user-assigned identity by object ID. For system-assigned, do not set this field.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "resourceId": { + "description": "Specifies a user-assigned identity by ARM resource ID. For system-assigned, do not set this field.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + } + }, + "x-ms-discriminator-value": "Managed", + "additionalProperties": false + }, + "ManagedOnlineDeployment": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/OnlineDeployment" + } + ], + "properties": { + "instanceType": { + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "readinessProbe": { + "$ref": "#/definitions/ProbeSettings" + } + }, + "x-ms-discriminator-value": "Managed", + "additionalProperties": false + }, + "ManualScaleSettings": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/OnlineScaleSettings" + } + ], + "properties": { + "instanceCount": { + "format": "int32", + "type": "integer" + } + }, + "x-ms-discriminator-value": "Manual", + "additionalProperties": false + }, + "MediaType": { + "description": "Media type of data asset.", + "enum": [ + "Image", + "Text" + ], + "type": "string", + "x-ms-enum": { + "name": "MediaType", + "modelAsString": true + }, + "additionalProperties": false + }, + "MedianStoppingPolicy": { + "description": "Defines an early termination policy based on running averages of the primary metric of all runs", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/EarlyTerminationPolicy" + } + ], + "x-ms-discriminator-value": "MedianStopping", + "additionalProperties": false + }, + "ModelContainer": { + "type": "object", + "properties": { + "description": { + "description": "The asset description text.", + "type": "string" + }, + "properties": { + "description": "The asset property dictionary.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "tags": { + "description": "Tag dictionary. Tags can be added, removed, and updated.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "additionalProperties": false + }, + "ModelContainerResource": { + "description": "Azure Resource Manager resource envelope.", + "required": [ + "properties" + ], + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "Additional attributes of the entity.", + "$ref": "#/definitions/ModelContainer" + }, + "systemData": { + "description": "System data associated with resource provider", + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + } + }, + "additionalProperties": false + }, + "ModelContainerResourceArmPaginatedResult": { + "description": "A paginated list of ModelContainer entities.", + "type": "object", + "properties": { + "nextLink": { + "type": "string" + }, + "value": { + "description": "An array of objects of type ModelContainer.", + "type": "array", + "items": { + "$ref": "#/definitions/ModelContainerResource" + } + } + }, + "additionalProperties": false + }, + "ModelVersion": { + "description": "Model asset version details.", + "required": [ + "path" + ], + "type": "object", + "properties": { + "datastoreId": { + "description": "ARM resource ID of the datastore where the asset is located.", + "type": "string" + }, + "description": { + "description": "The asset description text.", + "type": "string" + }, + "flavors": { + "description": "Mapping of model flavors to their properties.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/FlavorData" + } + }, + "isAnonymous": { + "description": "If the name version are system generated (anonymous registration).", + "type": "boolean", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "path": { + "description": "The path of the file/directory in the datastore.", + "pattern": "[a-zA-Z0-9_]", + "type": "string" + }, + "properties": { + "description": "The asset property dictionary.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "tags": { + "description": "Tag dictionary. Tags can be added, removed, and updated.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "additionalProperties": false + }, + "ModelVersionResource": { + "description": "Azure Resource Manager resource envelope.", + "required": [ + "properties" + ], + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "Additional attributes of the entity.", + "$ref": "#/definitions/ModelVersion" + }, + "systemData": { + "description": "System data associated with resource provider", + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + } + }, + "additionalProperties": false + }, + "ModelVersionResourceArmPaginatedResult": { + "description": "A paginated list of ModelVersion entities.", + "type": "object", + "properties": { + "nextLink": { + "type": "string" + }, + "value": { + "description": "An array of objects of type ModelVersion.", + "type": "array", + "items": { + "$ref": "#/definitions/ModelVersionResource" + } + } + }, + "additionalProperties": false + }, + "Mpi": { + "description": "MPI distribution configuration.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DistributionConfiguration" + } + ], + "properties": { + "processCountPerInstance": { + "format": "int32", + "type": "integer", + "x-ms-mutability": [ + "create", + "read" + ] + } + }, + "x-ms-discriminator-value": "Mpi", + "additionalProperties": false + }, + "NoneDatastoreCredentials": { + "description": "Empty/none datastore credentials.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatastoreCredentials" + } + ], + "properties": { + "secrets": { + "description": "Empty/none datastore secret.", + "$ref": "#/definitions/NoneDatastoreSecrets", + "x-ms-mutability": [ + "create", + "update" + ], + "x-ms-secret": true + } + }, + "x-ms-discriminator-value": "None", + "additionalProperties": false + }, + "NoneDatastoreSecrets": { + "description": "Empty/none datastore secret.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatastoreSecrets" + } + ], + "x-ms-discriminator-value": "None", + "additionalProperties": false + }, + "Objective": { + "required": [ + "goal", + "primaryMetric" + ], + "type": "object", + "properties": { + "goal": { + "description": "Defines supported metric goals for hyperparameter tuning", + "$ref": "#/definitions/Goal" + }, + "primaryMetric": { + "pattern": "[a-zA-Z0-9_]", + "type": "string" + } + }, + "additionalProperties": false + }, + "OnlineDeployment": { + "required": [ + "endpointComputeType" + ], + "type": "object", + "properties": { + "appInsightsEnabled": { + "description": "If true, enables Application Insights logging.", + "type": "boolean" + }, + "codeConfiguration": { + "description": "Code configuration for the endpoint deployment.", + "$ref": "#/definitions/CodeConfiguration" + }, + "description": { + "description": "Description of the endpoint deployment.", + "type": "string" + }, + "endpointComputeType": { + "description": "The compute type of the endpoint.", + "$ref": "#/definitions/EndpointComputeType" + }, + "environmentId": { + "description": "ARM resource ID of the environment specification for the endpoint deployment.", + "type": "string" + }, + "environmentVariables": { + "description": "Environment variables configuration for the deployment.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "livenessProbe": { + "$ref": "#/definitions/ProbeSettings" + }, + "model": { + "description": "Reference to the model asset for the endpoint deployment.", + "$ref": "#/definitions/AssetReferenceBase" + }, + "properties": { + "description": "Property dictionary. Properties can be added, but not removed or altered.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "provisioningState": { + "description": "Provisioning state for the endpoint deployment.", + "$ref": "#/definitions/DeploymentProvisioningState", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + }, + "requestSettings": { + "$ref": "#/definitions/OnlineRequestSettings" + }, + "scaleSettings": { + "$ref": "#/definitions/OnlineScaleSettings" + } + }, + "discriminator": "endpointComputeType" + }, + "OnlineDeploymentTrackedResource": { + "required": [ + "location", + "properties" + ], + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/TrackedResource" + } + ], + "properties": { + "identity": { + "description": "Service identity associated with a resource.", + "$ref": "#/definitions/ResourceIdentity" + }, + "kind": { + "type": "string" + }, + "properties": { + "description": "Additional attributes of the entity.", + "$ref": "#/definitions/OnlineDeployment" + }, + "systemData": { + "description": "System data associated with resource provider", + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + } + }, + "additionalProperties": false + }, + "OnlineDeploymentTrackedResourceArmPaginatedResult": { + "description": "A paginated list of OnlineDeployment entities.", + "type": "object", + "properties": { + "nextLink": { + "type": "string" + }, + "value": { + "description": "An array of objects of type OnlineDeployment.", + "type": "array", + "items": { + "$ref": "#/definitions/OnlineDeploymentTrackedResource" + } + } + }, + "additionalProperties": false + }, + "OnlineEndpoint": { + "description": "Online endpoint configuration", + "required": [ + "authMode" + ], + "type": "object", + "properties": { + "authMode": { + "description": "Inference endpoint authentication mode type", + "$ref": "#/definitions/EndpointAuthMode" + }, + "description": { + "description": "Description of the inference endpoint.", + "type": "string" + }, + "keys": { + "description": "EndpointAuthKeys to set initially on an Endpoint.\r\nThis property will always be returned as null. AuthKey values must be retrieved using the ListKeys API.", + "$ref": "#/definitions/EndpointAuthKeys", + "x-ms-mutability": [ + "create" + ], + "x-ms-secret": true + }, + "properties": { + "description": "Property dictionary. Properties can be added, but not removed or altered.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "provisioningState": { + "description": "State of endpoint provisioning.", + "$ref": "#/definitions/EndpointProvisioningState", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + }, + "scoringUri": { + "format": "uri", + "description": "Endpoint URI.", + "type": "string", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + }, + "swaggerUri": { + "format": "uri", + "description": "Endpoint Swagger URI.", + "type": "string", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + }, + "target": { + "description": "ARM resource ID of the compute if it exists.\r\noptional", + "type": "string" + }, + "traffic": { + "description": "Traffic rules on how the traffic will be routed across deployments.", + "type": "object", + "additionalProperties": { + "format": "int32", + "type": "integer" + } + } + }, + "additionalProperties": false + }, + "OnlineEndpointTrackedResource": { + "required": [ + "location", + "properties" + ], + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/TrackedResource" + } + ], + "properties": { + "identity": { + "description": "Service identity associated with a resource.", + "$ref": "#/definitions/ResourceIdentity" + }, + "kind": { + "type": "string" + }, + "properties": { + "description": "Additional attributes of the entity.", + "$ref": "#/definitions/OnlineEndpoint" + }, + "systemData": { + "description": "System data associated with resource provider", + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + } + }, + "additionalProperties": false + }, + "OnlineEndpointTrackedResourceArmPaginatedResult": { + "description": "A paginated list of OnlineEndpoint entities.", + "type": "object", + "properties": { + "nextLink": { + "type": "string" + }, + "value": { + "description": "An array of objects of type OnlineEndpoint.", + "type": "array", + "items": { + "$ref": "#/definitions/OnlineEndpointTrackedResource" + } + } + }, + "additionalProperties": false + }, + "OnlineRequestSettings": { + "type": "object", + "properties": { + "maxConcurrentRequestsPerInstance": { + "format": "int32", + "type": "integer" + }, + "maxQueueWait": { + "format": "duration", + "description": "The maximum queue wait time in ISO 8601 format. Supports millisecond precision.", + "type": "string" + }, + "requestTimeout": { + "format": "duration", + "description": "The request timeout in ISO 8601 format. Supports millisecond precision.", + "type": "string" + } + }, + "additionalProperties": false + }, + "OnlineScaleSettings": { + "required": [ + "scaleType" + ], + "type": "object", + "properties": { + "maxInstances": { + "format": "int32", + "type": "integer" + }, + "minInstances": { + "format": "int32", + "type": "integer" + }, + "scaleType": { + "$ref": "#/definitions/ScaleType" + } + }, + "discriminator": "scaleType" + }, + "OperatingSystemType": { + "description": "The type of operating system.", + "enum": [ + "Linux", + "Windows" + ], + "type": "string", + "x-ms-enum": { + "name": "OperatingSystemType", + "modelAsString": true + }, + "additionalProperties": false + }, + "OrderString": { + "enum": [ + "CreatedAtDesc", + "CreatedAtAsc", + "UpdatedAtDesc", + "UpdatedAtAsc" + ], + "type": "string", + "x-ms-enum": { + "name": "OrderString", + "modelAsString": true + }, + "additionalProperties": false + }, + "OriginType": { + "description": "Enum to determine the type of linked service.", + "enum": [ + "Synapse" + ], + "type": "string", + "x-ms-enum": { + "name": "OriginType", + "modelAsString": true + }, + "additionalProperties": false + }, + "OutputDataBinding": { + "type": "object", + "properties": { + "datastoreId": { + "description": "ARM resource ID of the datastore where the data output will be stored.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "mode": { + "description": "Mechanism for data movement to datastore.", + "$ref": "#/definitions/DataBindingMode", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "pathOnCompute": { + "description": "Location of data inside the container process.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "pathOnDatastore": { + "description": "Path within the datastore to the data.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + } + }, + "additionalProperties": false + }, + "OutputPathAssetReference": { + "description": "Reference to an asset via its path in a job output.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AssetReferenceBase" + } + ], + "properties": { + "jobId": { + "description": "ARM resource ID of the job.", + "type": "string" + }, + "path": { + "description": "The path of the file/directory in the job output.", + "type": "string" + } + }, + "x-ms-discriminator-value": "OutputPath", + "additionalProperties": false + }, + "PartialAksOnlineDeployment": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/PartialOnlineDeployment" + } + ], + "properties": { + "containerResourceRequirements": { + "$ref": "machineLearningServices.json#/definitions/ContainerResourceRequirements" + } + }, + "x-ms-discriminator-value": "K8S", + "additionalProperties": false + }, + "PartialBatchDeployment": { + "description": "Mutable batch inference settings per deployment.", + "type": "object", + "properties": { + "description": { + "description": "Description of the endpoint deployment.", + "type": "string" + } + }, + "additionalProperties": false + }, + "PartialBatchDeploymentPartialTrackedResource": { + "description": "Strictly used in update requests.", + "type": "object", + "properties": { + "identity": { + "description": "Service identity associated with a resource.", + "$ref": "#/definitions/ResourceIdentity" + }, + "kind": { + "type": "string" + }, + "location": { + "type": "string" + }, + "properties": { + "description": "Additional attributes of the entity.", + "$ref": "#/definitions/PartialBatchDeployment" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "additionalProperties": false + }, + "PartialBatchEndpoint": { + "description": "Mutable Batch endpoint configuration", + "type": "object", + "properties": { + "traffic": { + "description": "Traffic rules on how the traffic will be routed across deployments.", + "type": "object", + "additionalProperties": { + "format": "int32", + "type": "integer" + } + } + }, + "additionalProperties": false + }, + "PartialBatchEndpointPartialTrackedResource": { + "description": "Strictly used in update requests.", + "type": "object", + "properties": { + "identity": { + "description": "Service identity associated with a resource.", + "$ref": "#/definitions/ResourceIdentity" + }, + "kind": { + "type": "string" + }, + "location": { + "type": "string" + }, + "properties": { + "description": "Additional attributes of the entity.", + "$ref": "#/definitions/PartialBatchEndpoint" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "additionalProperties": false + }, + "PartialManagedOnlineDeployment": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/PartialOnlineDeployment" + } + ], + "properties": { + "readinessProbe": { + "$ref": "#/definitions/ProbeSettings" + } + }, + "x-ms-discriminator-value": "Managed", + "additionalProperties": false + }, + "PartialOnlineDeployment": { + "description": "Mutable online deployment configuration", + "required": [ + "endpointComputeType" + ], + "type": "object", + "properties": { + "appInsightsEnabled": { + "type": "boolean" + }, + "endpointComputeType": { + "description": "Enum to determine endpoint compute type.", + "$ref": "#/definitions/EndpointComputeType" + }, + "livenessProbe": { + "$ref": "#/definitions/ProbeSettings" + }, + "requestSettings": { + "$ref": "#/definitions/OnlineRequestSettings" + }, + "scaleSettings": { + "$ref": "#/definitions/OnlineScaleSettings" + } + }, + "discriminator": "endpointComputeType" + }, + "PartialOnlineDeploymentPartialTrackedResource": { + "description": "Strictly used in update requests.", + "type": "object", + "properties": { + "identity": { + "description": "Service identity associated with a resource.", + "$ref": "#/definitions/ResourceIdentity" + }, + "kind": { + "type": "string" + }, + "location": { + "type": "string" + }, + "properties": { + "description": "Additional attributes of the entity.", + "$ref": "#/definitions/PartialOnlineDeployment" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "additionalProperties": false + }, + "PartialOnlineEndpoint": { + "description": "Mutable online endpoint configuration", + "type": "object", + "properties": { + "traffic": { + "description": "Traffic rules on how the traffic will be routed across deployments.", + "type": "object", + "additionalProperties": { + "format": "int32", + "type": "integer" + } + } + }, + "additionalProperties": false + }, + "PartialOnlineEndpointPartialTrackedResource": { + "description": "Strictly used in update requests.", + "type": "object", + "properties": { + "identity": { + "description": "Service identity associated with a resource.", + "$ref": "#/definitions/ResourceIdentity" + }, + "kind": { + "type": "string" + }, + "location": { + "type": "string" + }, + "properties": { + "description": "Additional attributes of the entity.", + "$ref": "#/definitions/PartialOnlineEndpoint" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "additionalProperties": false + }, + "ProbeSettings": { + "type": "object", + "properties": { + "failureThreshold": { + "format": "int32", + "description": "The number of failures to allow before returning an unhealthy status.", + "type": "integer" + }, + "initialDelay": { + "format": "duration", + "description": "The delay before the first probe in ISO 8601 format.", + "type": "string" + }, + "period": { + "format": "duration", + "description": "The length of time between probes in ISO 8601 format.", + "type": "string" + }, + "successThreshold": { + "format": "int32", + "description": "The number of successful probes before returning a healthy status.", + "type": "integer" + }, + "timeout": { + "format": "duration", + "description": "The probe timeout in ISO 8601 format.", + "type": "string" + } + }, + "additionalProperties": false + }, + "ProgressMetrics": { + "description": "Progress metrics definition", + "type": "object", + "properties": { + "completedDatapointCount": { + "format": "int64", + "description": "The completed datapoint count.", + "type": "integer", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + }, + "incrementalDatasetLastRefreshTime": { + "format": "date-time", + "description": "The time of last successful incremental dataset refresh in UTC.", + "type": "string", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + }, + "skippedDatapointCount": { + "format": "int64", + "description": "The skipped datapoint count.", + "type": "integer", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + }, + "totalDatapointCount": { + "format": "int64", + "description": "The total datapoint count.", + "type": "integer", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + } + }, + "additionalProperties": false + }, + "PyTorch": { + "description": "PyTorch distribution configuration.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DistributionConfiguration" + } + ], + "properties": { + "processCount": { + "format": "int32", + "description": "Total process count for the distributed job.", + "type": "integer" + } + }, + "x-ms-discriminator-value": "PyTorch", + "additionalProperties": false + }, + "ReferenceType": { + "description": "Enum to determine which reference method to use for an asset.", + "enum": [ + "Id", + "DataPath", + "OutputPath" + ], + "type": "string", + "x-ms-enum": { + "name": "ReferenceType", + "modelAsString": true + }, + "additionalProperties": false + }, + "RegenerateEndpointKeysRequest": { + "required": [ + "keyType" + ], + "type": "object", + "properties": { + "keyType": { + "description": "Specification for which type of key to generate. Primary or Secondary.", + "$ref": "#/definitions/KeyType" + }, + "keyValue": { + "description": "The value the key is set to.", + "type": "string" + } + }, + "additionalProperties": false + }, + "ResourceIdentity": { + "description": "Service identity associated with a resource.", + "type": "object", + "properties": { + "principalId": { + "description": "Client ID that is used when authenticating.", + "type": "string", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + }, + "tenantId": { + "description": "AAD Tenant where this identity lives.", + "type": "string", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + }, + "type": { + "description": "Defines values for a ResourceIdentity's type.", + "$ref": "#/definitions/ResourceIdentityAssignment" + }, + "userAssignedIdentities": { + "description": "Dictionary of the user assigned identities, key is ARM resource ID of the UAI.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/UserAssignedIdentityMeta" + } + } + }, + "additionalProperties": false + }, + "ResourceIdentityAssignment": { + "description": "Defines values for a ResourceIdentity's type.", + "enum": [ + "SystemAssigned", + "UserAssigned", + "SystemAssigned,UserAssigned", + "None" + ], + "type": "string", + "x-ms-enum": { + "name": "ResourceIdentityAssignment", + "modelAsString": true + }, + "additionalProperties": false + }, + "Route": { + "required": [ + "path", + "port" + ], + "type": "object", + "properties": { + "path": { + "description": "The path for the route.", + "pattern": "[a-zA-Z0-9_]", + "type": "string" + }, + "port": { + "format": "int32", + "description": "The port for the route.", + "type": "integer" + } + }, + "additionalProperties": false + }, + "SamplingAlgorithm": { + "enum": [ + "Grid", + "Random", + "Bayesian" + ], + "type": "string", + "x-ms-enum": { + "name": "SamplingAlgorithm", + "modelAsString": true + }, + "additionalProperties": false + }, + "SasDatastoreCredentials": { + "description": "SAS datastore credentials configuration.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatastoreCredentials" + } + ], + "properties": { + "secrets": { + "description": "Storage container secrets.", + "$ref": "#/definitions/SasDatastoreSecrets", + "x-ms-mutability": [ + "create", + "update" + ], + "x-ms-secret": true + } + }, + "x-ms-discriminator-value": "Sas", + "additionalProperties": false + }, + "SasDatastoreSecrets": { + "description": "Datastore SAS secrets.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatastoreSecrets" + } + ], + "properties": { + "sasToken": { + "description": "Storage container SAS token.", + "type": "string" + } + }, + "x-ms-discriminator-value": "Sas", + "additionalProperties": false + }, + "ScaleType": { + "enum": [ + "Auto", + "Manual" + ], + "type": "string", + "x-ms-enum": { + "name": "ScaleType", + "modelAsString": true + }, + "additionalProperties": false + }, + "SecretsType": { + "description": "Enum to determine the datastore secrets type.", + "enum": [ + "AccountKey", + "Certificate", + "None", + "Sas", + "ServicePrincipal", + "SqlAdmin" + ], + "type": "string", + "x-ms-enum": { + "name": "SecretsType", + "modelAsString": true + }, + "additionalProperties": false + }, + "ServicePrincipalDatastoreCredentials": { + "description": "Service Principal datastore credentials configuration.", + "required": [ + "clientId", + "tenantId" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatastoreCredentials" + } + ], + "properties": { + "authorityUrl": { + "description": "Authority URL used for authentication.", + "type": "string" + }, + "clientId": { + "format": "uuid", + "description": "Service principal client ID.", + "type": "string" + }, + "resourceUri": { + "description": "Resource the service principal has access to.", + "type": "string" + }, + "secrets": { + "description": "Service principal secrets.", + "$ref": "#/definitions/ServicePrincipalDatastoreSecrets", + "x-ms-mutability": [ + "create", + "update" + ], + "x-ms-secret": true + }, + "tenantId": { + "format": "uuid", + "description": "ID of the tenant to which the service principal belongs.", + "type": "string" + } + }, + "x-ms-discriminator-value": "ServicePrincipal", + "additionalProperties": false + }, + "ServicePrincipalDatastoreSecrets": { + "description": "Datastore Service Principal secrets.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatastoreSecrets" + } + ], + "properties": { + "clientSecret": { + "description": "Service principal secret.", + "type": "string" + } + }, + "x-ms-discriminator-value": "ServicePrincipal", + "additionalProperties": false + }, + "SqlAdminDatastoreCredentials": { + "description": "SQL Admin datastore credentials configuration.", + "required": [ + "userId" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatastoreCredentials" + } + ], + "properties": { + "secrets": { + "description": "SQL database secrets.", + "$ref": "#/definitions/SqlAdminDatastoreSecrets", + "x-ms-mutability": [ + "create", + "update" + ], + "x-ms-secret": true + }, + "userId": { + "description": "SQL database user name.", + "pattern": "[a-zA-Z0-9_]", + "type": "string" + } + }, + "x-ms-discriminator-value": "SqlAdmin", + "additionalProperties": false + }, + "SqlAdminDatastoreSecrets": { + "description": "Datastore SQL Admin secrets.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatastoreSecrets" + } + ], + "properties": { + "password": { + "description": "SQL database password.", + "type": "string" + } + }, + "x-ms-discriminator-value": "SqlAdmin", + "additionalProperties": false + }, + "StatusMessage": { + "description": "Active message associated with project", + "type": "object", + "properties": { + "code": { + "description": "Service-defined message code.", + "type": "string", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + }, + "createdTimeUtc": { + "format": "date-time", + "description": "Time in UTC at which the message was created.", + "type": "string", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + }, + "level": { + "description": "Severity level of message.", + "$ref": "#/definitions/StatusMessageLevel", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + }, + "message": { + "description": "A human-readable representation of the message code.", + "type": "string", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + } + }, + "additionalProperties": false + }, + "StatusMessageLevel": { + "enum": [ + "Error", + "Information", + "Warning" + ], + "type": "string", + "x-ms-enum": { + "name": "StatusMessageLevel", + "modelAsString": true + }, + "additionalProperties": false + }, + "SweepJob": { + "description": "Sweep job definition.", + "required": [ + "algorithm", + "compute", + "objective", + "searchSpace" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/JobBase" + } + ], + "properties": { + "algorithm": { + "description": "Type of the hyperparameter sampling algorithms", + "$ref": "#/definitions/SamplingAlgorithm" + }, + "compute": { + "description": "Compute binding for the job.", + "$ref": "#/definitions/ComputeConfiguration", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "earlyTermination": { + "description": "Early termination policies enable canceling poor-performing runs before they complete", + "$ref": "#/definitions/EarlyTerminationPolicy" + }, + "experimentName": { + "description": "The name of the experiment the job belongs to. If not set, the job is placed in the \"Default\" experiment.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "identity": { + "description": "Identity configuration. If set, this should be one of AmlToken, ManagedIdentity or null.\r\nDefaults to AmlToken if null.", + "$ref": "#/definitions/IdentityConfiguration", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "maxConcurrentTrials": { + "format": "int32", + "type": "integer" + }, + "maxTotalTrials": { + "format": "int32", + "type": "integer" + }, + "objective": { + "$ref": "#/definitions/Objective" + }, + "output": { + "description": "Location of the job output logs and artifacts.", + "$ref": "#/definitions/JobOutput", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + }, + "priority": { + "format": "int32", + "description": "Job priority for scheduling policy. Only applies to AMLCompute.\r\nPrivate preview feature and only available to users on the allow list.", + "type": "integer", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "searchSpace": { + "description": "A dictionary containing each parameter and its distribution. The dictionary key is the name of the parameter", + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "status": { + "description": "The status of a job.", + "$ref": "#/definitions/JobStatus", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + }, + "timeout": { + "format": "duration", + "description": "The total timeout in ISO 8601 format. Only supports duration with precision as low as Minutes.", + "type": "string" + }, + "trial": { + "description": "Trial component definition.", + "$ref": "#/definitions/TrialComponent" + } + }, + "x-ms-discriminator-value": "Sweep", + "additionalProperties": false + }, + "TensorFlow": { + "description": "TensorFlow distribution configuration.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DistributionConfiguration" + } + ], + "properties": { + "parameterServerCount": { + "format": "int32", + "type": "integer", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "workerCount": { + "format": "int32", + "description": "Number of workers. Overwrites the node count in compute binding.", + "type": "integer", + "x-ms-mutability": [ + "create", + "read" + ] + } + }, + "x-ms-discriminator-value": "TensorFlow", + "additionalProperties": false + }, + "TextAnnotationType": { + "description": "Annotation type of text data.", + "enum": [ + "Classification" + ], + "type": "string", + "x-ms-enum": { + "name": "TextAnnotationType", + "modelAsString": true + }, + "additionalProperties": false + }, + "TrialComponent": { + "description": "Trial component definition.", + "required": [ + "command" + ], + "type": "object", + "properties": { + "codeId": { + "description": "ARM resource ID of the code asset.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "command": { + "description": "The command to execute on startup of the job. eg. \"python train.py\"", + "minLength": 1, + "pattern": "[a-zA-Z0-9_]", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "distribution": { + "description": "Distribution configuration of the job. If set, this should be one of Mpi, Tensorflow, PyTorch, or null.", + "$ref": "#/definitions/DistributionConfiguration", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "environmentId": { + "description": "The ARM resource ID of the Environment specification for the job.", + "type": "string" + }, + "environmentVariables": { + "description": "Environment variables included in the job.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-ms-mutability": [ + "create", + "read" + ] + }, + "inputDataBindings": { + "description": "Mapping of input data bindings used in the job.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/InputDataBinding" + }, + "x-ms-mutability": [ + "create", + "read" + ] + }, + "outputDataBindings": { + "description": "Mapping of output data bindings used in the job.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/OutputDataBinding" + }, + "x-ms-mutability": [ + "create", + "read" + ] + }, + "timeout": { + "format": "duration", + "description": "The max run duration in ISO 8601 format, after which the trial component will be cancelled.\r\nOnly supports duration with precision as low as Seconds.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + } + }, + "additionalProperties": false + }, + "TruncationSelectionPolicy": { + "description": "Defines an early termination policy that cancels a given percentage of runs at each evaluation interval.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/EarlyTerminationPolicy" + } + ], + "properties": { + "truncationPercentage": { + "format": "int32", + "type": "integer" + } + }, + "x-ms-discriminator-value": "TruncationSelection", + "additionalProperties": false + }, + "UserAssignedIdentityMeta": { + "description": "User assigned identities associated with a resource.", + "type": "object", + "properties": { + "clientId": { + "description": "Aka application ID, a unique identifier generated by Azure AD that is tied to an application and service principal during its initial provisioning.", + "type": "string" + }, + "principalId": { + "description": "The object ID of the service principal object for your managed identity that is used to grant role-based access to an Azure resource.", + "type": "string" + } + }, + "additionalProperties": false + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow." + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/services.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/services.json new file mode 100644 index 000000000000..08ff3461ab86 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/services.json @@ -0,0 +1,1832 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Machine Learning Workspaces", + "version": "2021-03-01-preview" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/services": { + "get": { + "tags": [ + "MachineLearningServices" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "operationId": "MachineLearningServices_ListByWorkspace", + "description": "Gets services in specified workspace.", + "x-ms-examples": { + "Get Services": { + "$ref": "./examples/MachineLearningService/listByWorkspace.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/PaginationParameter" + }, + { + "$ref": "#/parameters/ModelIdParameter" + }, + { + "$ref": "#/parameters/ModelNameParameter" + }, + { + "$ref": "#/parameters/WebServiceTagParameter" + }, + { + "$ref": "#/parameters/WebServiceTagsParameter" + }, + { + "$ref": "#/parameters/WebServicePropertiesParameter" + }, + { + "$ref": "#/parameters/WebServiceRunIdParameter" + }, + { + "$ref": "#/parameters/WebServiceExpandParameter" + }, + { + "$ref": "#/parameters/WebServiceOrderByParameter" + } + ], + "responses": { + "200": { + "description": "The response includes a paginated array of Machine Learning services and a URI to the next set of results, if any. For the more information the limits of the number of items in a resource group, see https://azure.microsoft.com/en-us/documentation/articles/azure-subscription-service-limits/.", + "schema": { + "$ref": "#/definitions/PaginatedServiceList" + } + }, + "default": { + "description": "Error response describing why the request failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/services/{serviceName}": { + "get": { + "tags": [ + "MachineLearningServices" + ], + "operationId": "MachineLearningServices_Get", + "description": "Get a Service by name.", + "x-ms-examples": { + "Get Service": { + "$ref": "./examples/MachineLearningService/get.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/WebServiceNameParameter" + }, + { + "in": "query", + "name": "expand", + "description": "Set to True to include Model details.", + "type": "boolean", + "default": false + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ServiceResource" + } + }, + "default": { + "description": "Error response describing why the request failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "MachineLearningServices" + ], + "operationId": "MachineLearningServices_Delete", + "description": "Delete a specific Service..", + "x-ms-examples": { + "Delete Service": { + "$ref": "./examples/MachineLearningService/delete.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/WebServiceNameParameter" + } + ], + "responses": { + "200": { + "description": "The resource exists and was deleted successfully." + }, + "204": { + "description": "The resource does not exist and the request was well formed." + }, + "default": { + "description": "Error response describing why the request failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "MachineLearningServices" + ], + "description": "Creates or updates service. This call will update a service if it exists. This is a nonrecoverable operation. If your intent is to create a new service, do a GET first to verify that it does not exist yet.", + "operationId": "MachineLearningServices_CreateOrUpdate", + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create Or Update service": { + "$ref": "./examples/MachineLearningService/createOrUpdate.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/WebServiceNameParameter" + }, + { + "in": "body", + "name": "properties", + "description": "The payload that is used to create or update the Service.", + "required": true, + "schema": { + "$ref": "#/definitions/CreateServiceRequest" + } + } + ], + "responses": { + "200": { + "description": "Service creation or update initiated.", + "schema": { + "$ref": "#/definitions/ServiceResource" + } + }, + "201": { + "description": "Service creation or update initiated.", + "headers": { + "Azure-AsyncOperation": { + "description": "URI to poll for asynchronous operation status.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "parameters": { + "ModelIdParameter": { + "in": "query", + "name": "modelId", + "type": "string", + "description": "The Model Id.", + "required": false, + "x-ms-parameter-location": "method" + }, + "ModelNameParameter": { + "in": "query", + "name": "modelName", + "type": "string", + "description": "The Model name.", + "required": false, + "x-ms-parameter-location": "method" + }, + "WebServiceNameParameter": { + "name": "serviceName", + "description": "Name of the Azure Machine Learning service.", + "in": "path", + "type": "string", + "required": true, + "x-ms-parameter-location": "method" + }, + "WebServiceTagParameter": { + "in": "query", + "name": "tag", + "type": "string", + "description": "The object tag.", + "required": false, + "x-ms-parameter-location": "method" + }, + "WebServiceCountParameter": { + "in": "query", + "name": "count", + "type": "integer", + "format": "int32", + "description": "The number of items to retrieve in a page.", + "required": false, + "x-ms-parameter-location": "method" + }, + "WebServiceTagsParameter": { + "in": "query", + "name": "tags", + "type": "string", + "description": "A set of tags with which to filter the returned services. It is a comma separated string of tags key or tags key=value Example: tagKey1,tagKey2,tagKey3=value3 .", + "required": false, + "x-ms-parameter-location": "method" + }, + "WebServicePropertiesParameter": { + "in": "query", + "name": "properties", + "type": "string", + "description": "A set of properties with which to filter the returned services. It is a comma separated string of properties key and/or properties key=value Example: propKey1,propKey2,propKey3=value3 .", + "required": false, + "x-ms-parameter-location": "method" + }, + "WebServiceRunIdParameter": { + "in": "query", + "name": "runId", + "type": "string", + "description": "runId for model associated with service.", + "required": false, + "x-ms-parameter-location": "method" + }, + "WebServiceExpandParameter": { + "in": "query", + "name": "expand", + "type": "boolean", + "description": "Set to True to include Model details.", + "required": false, + "x-ms-parameter-location": "method" + }, + "WebServiceOrderByParameter": { + "in": "query", + "name": "orderby", + "type": "string", + "description": "The option to order the response.", + "required": false, + "default": "UpdatedAtDesc", + "enum": [ + "CreatedAtDesc", + "CreatedAtAsc", + "UpdatedAtDesc", + "UpdatedAtAsc" + ], + "x-ms-enum": { + "name": "OrderString", + "modelAsString": true + }, + "x-ms-parameter-location": "method" + } + }, + "definitions": { + "ServiceResource": { + "type": "object", + "description": "Machine Learning service object wrapped into ARM resource envelope.", + "properties": { + "identity": { + "$ref": "machineLearningServices.json#/definitions/Identity", + "description": "The identity of the resource." + }, + "location": { + "description": "Specifies the location of the resource.", + "type": "string" + }, + "tags": { + "description": "Contains resource tags defined as key/value pairs.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "sku": { + "$ref": "machineLearningServices.json#/definitions/Sku", + "description": "The sku of the workspace." + }, + "systemData": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData" + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/Resource" + }, + { + "type": "object", + "properties": { + "properties": { + "description": "Service properties", + "$ref": "#/definitions/ServiceResponseBase" + } + } + } + ] + }, + "ServiceResponseBase": { + "description": "The base service response. The correct inherited response based on computeType will be returned (ex. ACIServiceResponse)", + "required": [ + "computeType" + ], + "type": "object", + "properties": { + "description": { + "description": "The service description.", + "type": "string" + }, + "kvTags": { + "description": "The service tag dictionary. Tags are mutable.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "properties": { + "description": "The service property dictionary. Properties are immutable.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "state": { + "description": "The current state of the service.", + "enum": [ + "Transitioning", + "Healthy", + "Unhealthy", + "Failed", + "Unschedulable" + ], + "type": "string", + "example": "Healthy", + "x-ms-enum": { + "name": "WebServiceState", + "modelAsString": true + }, + "readOnly": true + }, + "error": { + "description": "The error details.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + ], + "readOnly": true + }, + "computeType": { + "description": "The compute environment type for the service.", + "enum": [ + "ACI", + "AKS" + ], + "type": "string", + "example": "AKS", + "x-ms-enum": { + "name": "ComputeEnvironmentType", + "modelAsString": true + } + }, + "deploymentType": { + "description": "The deployment type for the service.", + "enum": [ + "GRPCRealtimeEndpoint", + "HttpRealtimeEndpoint", + "Batch" + ], + "type": "string", + "example": "HttpRealtimeEndpoint", + "x-ms-enum": { + "name": "DeploymentType", + "modelAsString": true + } + } + }, + "discriminator": "computeType" + }, + "PaginatedServiceList": { + "type": "object", + "description": "Paginated list of Machine Learning service objects wrapped in ARM resource envelope.", + "properties": { + "value": { + "readOnly": true, + "type": "array", + "description": "An array of Machine Learning compute objects wrapped in ARM resource envelope.", + "items": { + "$ref": "#/definitions/ServiceResource" + } + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "A continuation link (absolute URI) to the next page of results in the list." + } + } + }, + "ACIServiceResponse": { + "description": "The response for an ACI service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ServiceResponseBase" + }, + { + "type": "object", + "properties": { + "containerResourceRequirements": { + "description": "The container resource requirements.", + "$ref": "machineLearningServices.json#/definitions/ContainerResourceRequirements" + }, + "scoringUri": { + "description": "The Uri for sending scoring requests.", + "type": "string", + "readOnly": true + }, + "location": { + "description": "The name of the Azure location/region.", + "type": "string" + }, + "authEnabled": { + "description": "Whether or not authentication is enabled on the service.", + "type": "boolean" + }, + "sslEnabled": { + "description": "Whether or not SSL is enabled.", + "type": "boolean" + }, + "appInsightsEnabled": { + "description": "Whether or not Application Insights is enabled.", + "type": "boolean" + }, + "dataCollection": { + "description": "Details of the data collection options specified.", + "allOf": [ + { + "$ref": "#/definitions/ModelDataCollection" + } + ] + }, + "sslCertificate": { + "description": "The public SSL certificate in PEM format to use if SSL is enabled.", + "type": "string" + }, + "sslKey": { + "description": "The public SSL key in PEM format for the certificate.", + "type": "string" + }, + "cname": { + "description": "The CName for the service.", + "type": "string" + }, + "publicIp": { + "description": "The public IP address for the service.", + "type": "string" + }, + "publicFqdn": { + "description": "The public Fqdn for the service.", + "type": "string" + }, + "swaggerUri": { + "description": "The Uri for sending swagger requests.", + "type": "string", + "readOnly": true + }, + "modelConfigMap": { + "description": "Details on the models and configurations.", + "type": "object", + "additionalProperties": { + "type": "object" + }, + "readOnly": true + }, + "models": { + "description": "The list of models.", + "type": "array", + "items": { + "$ref": "#/definitions/Model" + } + }, + "environmentImageRequest": { + "description": "The Environment, models and assets used for inferencing.", + "allOf": [ + { + "$ref": "#/definitions/EnvironmentImageResponse" + } + ] + }, + "vnetConfiguration": { + "description": "The virtual network configuration.", + "allOf": [ + { + "$ref": "#/definitions/VnetConfiguration" + } + ] + }, + "encryptionProperties": { + "description": "The encryption properties.", + "allOf": [ + { + "$ref": "#/definitions/EncryptionProperties" + } + ] + } + } + } + ], + "x-ms-discriminator-value": "ACI" + }, + "ModelDataCollection": { + "description": "The Model data collection properties.", + "type": "object", + "properties": { + "eventHubEnabled": { + "description": "Option for enabling/disabling Event Hub.", + "type": "boolean" + }, + "storageEnabled": { + "description": "Option for enabling/disabling storage.", + "type": "boolean" + } + } + }, + "VnetConfiguration": { + "type": "object", + "properties": { + "vnetName": { + "description": "The name of the virtual network.", + "type": "string" + }, + "subnetName": { + "description": "The name of the virtual network subnet.", + "type": "string" + } + } + }, + "EncryptionProperties": { + "type": "object", + "properties": { + "vaultBaseUrl": { + "description": "vault base Url", + "type": "string" + }, + "keyName": { + "description": "Encryption Key name", + "type": "string" + }, + "keyVersion": { + "description": "Encryption Key Version", + "type": "string" + } + }, + "required": [ + "vaultBaseUrl", + "keyName", + "keyVersion" + ] + }, + "Model": { + "description": "An Azure Machine Learning Model.", + "required": [ + "mimeType", + "name", + "url" + ], + "type": "object", + "properties": { + "id": { + "description": "The Model Id.", + "type": "string", + "example": "sklearn_mnist:1" + }, + "name": { + "description": "The Model name.", + "type": "string", + "example": "sklearn_mnist" + }, + "framework": { + "description": "The Model framework.", + "type": "string" + }, + "frameworkVersion": { + "description": "The Model framework version.", + "type": "string" + }, + "version": { + "format": "int64", + "description": "The Model version assigned by Model Management Service.", + "type": "integer", + "example": 1 + }, + "datasets": { + "description": "The list of datasets associated with the model.", + "type": "array", + "items": { + "$ref": "#/definitions/DatasetReference" + } + }, + "url": { + "description": "The URL of the Model. Usually a SAS URL.", + "type": "string" + }, + "mimeType": { + "description": "The MIME type of Model content. For more details about MIME type, please open https://www.iana.org/assignments/media-types/media-types.xhtml", + "type": "string" + }, + "description": { + "description": "The Model description text.", + "type": "string", + "example": "A mnist model, first version." + }, + "createdTime": { + "format": "date-time", + "description": "The Model creation time (UTC).", + "type": "string" + }, + "modifiedTime": { + "format": "date-time", + "description": "The Model last modified time (UTC).", + "type": "string" + }, + "unpack": { + "description": "Indicates whether we need to unpack the Model during docker Image creation.", + "type": "boolean" + }, + "parentModelId": { + "description": "The Parent Model Id.", + "type": "string", + "example": "sklearn_mnist_root:1" + }, + "runId": { + "description": "The RunId that created this model.", + "type": "string" + }, + "experimentName": { + "description": "The name of the experiment where this model was created.", + "type": "string" + }, + "kvTags": { + "description": "The Model tag dictionary. Items are mutable.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "properties": { + "description": "The Model property dictionary. Properties are immutable.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "derivedModelIds": { + "description": "Models derived from this model", + "type": "array", + "items": { + "type": "string" + } + }, + "sampleInputData": { + "description": "Sample Input Data for the Model. A reference to a dataset in the workspace in the format aml://dataset/{datasetId}", + "type": "string" + }, + "sampleOutputData": { + "description": "Sample Output Data for the Model. A reference to a dataset in the workspace in the format aml://dataset/{datasetId}", + "type": "string" + }, + "resourceRequirements": { + "description": "Resource requirements for the model", + "$ref": "machineLearningServices.json#/definitions/ContainerResourceRequirements" + } + } + }, + "EnvironmentImageRequest": { + "description": "Request to create a Docker image based on Environment.", + "type": "object", + "properties": { + "driverProgram": { + "description": "The name of the driver file.", + "type": "string" + }, + "assets": { + "description": "The list of assets.", + "type": "array", + "items": { + "$ref": "#/definitions/ImageAsset" + } + }, + "modelIds": { + "description": "The list of model Ids.", + "type": "array", + "items": { + "type": "string" + } + }, + "models": { + "description": "The list of models.", + "type": "array", + "items": { + "$ref": "#/definitions/Model" + } + }, + "environment": { + "description": "The details of the AZURE ML environment.", + "allOf": [ + { + "$ref": "#/definitions/ModelEnvironmentDefinition" + } + ] + }, + "environmentReference": { + "description": "The unique identifying details of the AZURE ML environment.", + "allOf": [ + { + "$ref": "#/definitions/EnvironmentReference" + } + ] + } + } + }, + "EnvironmentImageResponse": { + "description": "Request to create a Docker image based on Environment.", + "type": "object", + "properties": { + "driverProgram": { + "description": "The name of the driver file.", + "type": "string" + }, + "assets": { + "description": "The list of assets.", + "type": "array", + "items": { + "$ref": "#/definitions/ImageAsset" + } + }, + "modelIds": { + "description": "The list of model Ids.", + "type": "array", + "items": { + "type": "string" + } + }, + "models": { + "description": "The list of models.", + "type": "array", + "items": { + "$ref": "#/definitions/Model" + } + }, + "environment": { + "description": "The details of the AZURE ML environment.", + "allOf": [ + { + "$ref": "#/definitions/ModelEnvironmentDefinitionResponse" + } + ] + }, + "environmentReference": { + "description": "The unique identifying details of the AZURE ML environment.", + "allOf": [ + { + "$ref": "#/definitions/EnvironmentReference" + } + ] + } + } + }, + "ImageAsset": { + "description": "An Image asset.", + "type": "object", + "properties": { + "id": { + "description": "The Asset Id.", + "type": "string" + }, + "mimeType": { + "description": "The mime type.", + "type": "string" + }, + "url": { + "description": "The Url of the Asset.", + "type": "string" + }, + "unpack": { + "description": "Whether the Asset is unpacked.", + "type": "boolean" + } + } + }, + "ModelEnvironmentDefinition": { + "type": "object", + "properties": { + "name": { + "description": "The name of the environment.", + "type": "string", + "example": "mydevenvironment" + }, + "version": { + "description": "The environment version.", + "type": "string", + "example": "1" + }, + "python": { + "description": "Settings for a Python environment.", + "allOf": [ + { + "$ref": "#/definitions/ModelPythonSection" + } + ] + }, + "environmentVariables": { + "description": "Definition of environment variables to be defined in the environment.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "docker": { + "description": "The definition of a Docker container.", + "allOf": [ + { + "$ref": "#/definitions/ModelDockerSection" + } + ] + }, + "spark": { + "description": "The configuration for a Spark environment.", + "allOf": [ + { + "$ref": "#/definitions/ModelSparkSection" + } + ] + }, + "r": { + "description": "Settings for a R environment.", + "allOf": [ + { + "$ref": "#/definitions/RSection" + } + ] + }, + "inferencingStackVersion": { + "description": "The inferencing stack version added to the image. To avoid adding an inferencing stack, do not set this value. Valid values: \"latest\".", + "type": "string", + "example": "latest" + } + } + }, + "ModelEnvironmentDefinitionResponse": { + "type": "object", + "properties": { + "name": { + "description": "The name of the environment.", + "type": "string", + "example": "mydevenvironment" + }, + "version": { + "description": "The environment version.", + "type": "string", + "example": "1" + }, + "python": { + "description": "Settings for a Python environment.", + "allOf": [ + { + "$ref": "#/definitions/ModelPythonSection" + } + ] + }, + "environmentVariables": { + "description": "Definition of environment variables to be defined in the environment.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "docker": { + "description": "The definition of a Docker container.", + "allOf": [ + { + "$ref": "#/definitions/ModelDockerSectionResponse" + } + ] + }, + "spark": { + "description": "The configuration for a Spark environment.", + "allOf": [ + { + "$ref": "#/definitions/ModelSparkSection" + } + ] + }, + "r": { + "description": "Settings for a R environment.", + "allOf": [ + { + "$ref": "#/definitions/RSectionResponse" + } + ] + }, + "inferencingStackVersion": { + "description": "The inferencing stack version added to the image. To avoid adding an inferencing stack, do not set this value. Valid values: \"latest\".", + "type": "string", + "example": "latest" + } + } + }, + "EnvironmentReference": { + "type": "object", + "properties": { + "name": { + "description": "Name of the environment.", + "type": "string" + }, + "version": { + "description": "Version of the environment.", + "type": "string" + } + } + }, + "ModelPythonSection": { + "type": "object", + "properties": { + "interpreterPath": { + "description": "The python interpreter path to use if an environment build is not required. The path specified gets used to call the user script.", + "type": "string" + }, + "userManagedDependencies": { + "description": "True means that AzureML reuses an existing python environment; False means that AzureML will create a python environment based on the Conda dependencies specification.", + "type": "boolean" + }, + "condaDependencies": { + "description": "A JObject containing Conda dependencies.", + "type": "object" + }, + "baseCondaEnvironment": { + "type": "string" + } + } + }, + "ContainerRegistry": { + "type": "object", + "properties": { + "address": { + "type": "string" + }, + "username": { + "type": "string", + "x-ms-secret": true + }, + "password": { + "type": "string", + "x-ms-secret": true + } + } + }, + "ContainerRegistryResponse": { + "type": "object", + "properties": { + "address": { + "type": "string" + } + } + }, + "ModelDockerSection": { + "type": "object", + "properties": { + "baseImage": { + "description": "Base image used for Docker-based runs. Mutually exclusive with BaseDockerfile.", + "type": "string", + "example": "ubuntu:latest" + }, + "baseDockerfile": { + "description": "Base Dockerfile used for Docker-based runs. Mutually exclusive with BaseImage.", + "type": "string", + "example": "FROM ubuntu:latest\r\nRUN echo \"Hello world!\"" + }, + "baseImageRegistry": { + "description": "Image registry that contains the base image.", + "allOf": [ + { + "$ref": "#/definitions/ContainerRegistry" + } + ] + } + } + }, + "ModelDockerSectionResponse": { + "type": "object", + "properties": { + "baseImage": { + "description": "Base image used for Docker-based runs. Mutually exclusive with BaseDockerfile.", + "type": "string", + "example": "ubuntu:latest" + }, + "baseDockerfile": { + "description": "Base Dockerfile used for Docker-based runs. Mutually exclusive with BaseImage.", + "type": "string", + "example": "FROM ubuntu:latest\r\nRUN echo \"Hello world!\"" + }, + "baseImageRegistry": { + "description": "Image registry that contains the base image.", + "allOf": [ + { + "$ref": "#/definitions/ContainerRegistryResponse" + } + ] + } + } + }, + "SparkMavenPackage": { + "type": "object", + "properties": { + "group": { + "type": "string" + }, + "artifact": { + "type": "string" + }, + "version": { + "type": "string" + } + } + }, + "ModelSparkSection": { + "type": "object", + "properties": { + "repositories": { + "description": "The list of spark repositories.", + "type": "array", + "items": { + "type": "string" + } + }, + "packages": { + "description": "The Spark packages to use.", + "type": "array", + "items": { + "$ref": "#/definitions/SparkMavenPackage" + } + }, + "precachePackages": { + "description": "Whether to precache the packages.", + "type": "boolean" + } + } + }, + "RCranPackage": { + "type": "object", + "properties": { + "name": { + "description": "The package name.", + "type": "string" + }, + "repository": { + "description": "The repository name.", + "type": "string" + } + } + }, + "RGitHubPackage": { + "type": "object", + "properties": { + "repository": { + "description": "Repository address in the format username/repo[/subdir][@ref|#pull].", + "type": "string" + }, + "authToken": { + "description": "Personal access token to install from a private repo", + "type": "string", + "x-ms-secret": true + } + } + }, + "RGitHubPackageResponse": { + "type": "object", + "properties": { + "repository": { + "description": "Repository address in the format username/repo[/subdir][@ref|#pull].", + "type": "string" + } + } + }, + "RSection": { + "type": "object", + "properties": { + "rVersion": { + "description": "The version of R to be installed", + "type": "string" + }, + "userManaged": { + "description": "Indicates whether the environment is managed by user or by AzureML.", + "type": "boolean" + }, + "rscriptPath": { + "description": "The Rscript path to use if an environment build is not required.\r\nThe path specified gets used to call the user script.", + "type": "string" + }, + "snapshotDate": { + "description": "Date of MRAN snapshot to use in YYYY-MM-DD format, e.g. \"2019-04-17\"", + "type": "string" + }, + "cranPackages": { + "description": "The CRAN packages to use.", + "type": "array", + "items": { + "$ref": "#/definitions/RCranPackage" + } + }, + "gitHubPackages": { + "description": "The packages directly from GitHub.", + "type": "array", + "items": { + "$ref": "#/definitions/RGitHubPackage" + } + }, + "customUrlPackages": { + "description": "The packages from custom urls.", + "type": "array", + "items": { + "type": "string" + } + }, + "bioConductorPackages": { + "description": "The packages from Bioconductor.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "RSectionResponse": { + "type": "object", + "properties": { + "rVersion": { + "description": "The version of R to be installed", + "type": "string" + }, + "userManaged": { + "description": "Indicates whether the environment is managed by user or by AzureML.", + "type": "boolean" + }, + "rscriptPath": { + "description": "The Rscript path to use if an environment build is not required.\r\nThe path specified gets used to call the user script.", + "type": "string" + }, + "snapshotDate": { + "description": "Date of MRAN snapshot to use in YYYY-MM-DD format, e.g. \"2019-04-17\"", + "type": "string" + }, + "cranPackages": { + "description": "The CRAN packages to use.", + "type": "array", + "items": { + "$ref": "#/definitions/RCranPackage" + } + }, + "gitHubPackages": { + "description": "The packages directly from GitHub.", + "type": "array", + "items": { + "$ref": "#/definitions/RGitHubPackageResponse" + } + }, + "customUrlPackages": { + "description": "The packages from custom urls.", + "type": "array", + "items": { + "type": "string" + } + }, + "bioConductorPackages": { + "description": "The packages from Bioconductor.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "DatasetReference": { + "description": "The dataset reference object.", + "type": "object", + "properties": { + "name": { + "description": "The name of the dataset reference.", + "type": "string" + }, + "id": { + "description": "The id of the dataset reference.", + "type": "string" + } + } + }, + "AKSVariantResponse": { + "description": "The response for an AKS variant.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ServiceResponseBase" + }, + { + "type": "object", + "properties": { + "isDefault": { + "description": "Is this the default variant.", + "type": "boolean" + }, + "trafficPercentile": { + "format": "float", + "description": "The amount of traffic variant receives.", + "type": "number", + "example": 100 + }, + "type": { + "description": "The type of the variant.", + "enum": [ + "Control", + "Treatment" + ], + "type": "string", + "example": "Control", + "x-ms-enum": { + "name": "VariantType", + "modelAsString": true + } + } + } + } + ], + "x-ms-discriminator-value": "Custom" + }, + "AutoScaler": { + "description": "The Auto Scaler properties.", + "type": "object", + "properties": { + "autoscaleEnabled": { + "description": "Option to enable/disable auto scaling.", + "type": "boolean" + }, + "minReplicas": { + "format": "int32", + "description": "The minimum number of replicas to scale down to.", + "type": "integer", + "example": 1 + }, + "maxReplicas": { + "format": "int32", + "description": "The maximum number of replicas in the cluster.", + "type": "integer", + "example": 3 + }, + "targetUtilization": { + "format": "int32", + "description": "The target utilization percentage to use for determining whether to scale the cluster.", + "type": "integer", + "example": 70 + }, + "refreshPeriodInSeconds": { + "format": "int32", + "description": "The amount of seconds to wait between auto scale updates.", + "type": "integer", + "example": 120 + } + } + }, + "AKSReplicaStatus": { + "type": "object", + "properties": { + "desiredReplicas": { + "format": "int32", + "description": "The desired number of replicas.", + "type": "integer", + "example": 2 + }, + "updatedReplicas": { + "format": "int32", + "description": "The number of updated replicas.", + "type": "integer", + "example": 1 + }, + "availableReplicas": { + "format": "int32", + "description": "The number of available replicas.", + "type": "integer", + "example": 1 + }, + "error": { + "description": "The error details.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + ] + } + } + }, + "LivenessProbeRequirements": { + "description": "The liveness probe requirements.", + "type": "object", + "properties": { + "failureThreshold": { + "format": "int32", + "description": "The number of failures to allow before returning an unhealthy status.", + "type": "integer" + }, + "successThreshold": { + "format": "int32", + "description": "The number of successful probes before returning a healthy status.", + "type": "integer" + }, + "timeoutSeconds": { + "format": "int32", + "description": "The probe timeout in seconds.", + "type": "integer" + }, + "periodSeconds": { + "format": "int32", + "description": "The length of time between probes in seconds.", + "type": "integer" + }, + "initialDelaySeconds": { + "format": "int32", + "description": "The delay before the first probe in seconds.", + "type": "integer" + } + } + }, + "AKSServiceResponse": { + "description": "The response for an AKS service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AKSVariantResponse" + }, + { + "type": "object", + "properties": { + "models": { + "description": "The list of models.", + "type": "array", + "items": { + "$ref": "#/definitions/Model" + } + }, + "containerResourceRequirements": { + "description": "The container resource requirements.", + "$ref": "machineLearningServices.json#/definitions/ContainerResourceRequirements" + }, + "maxConcurrentRequestsPerContainer": { + "format": "int32", + "description": "The maximum number of concurrent requests per container.", + "type": "integer", + "example": 100 + }, + "maxQueueWaitMs": { + "format": "int32", + "description": "Maximum time a request will wait in the queue (in milliseconds). After this time, the service will return 503 (Service Unavailable)", + "type": "integer", + "example": 250 + }, + "computeName": { + "description": "The name of the compute resource.", + "type": "string" + }, + "namespace": { + "description": "The Kubernetes namespace of the deployment.", + "type": "string", + "example": "default" + }, + "numReplicas": { + "format": "int32", + "description": "The number of replicas on the cluster.", + "type": "integer", + "example": 1 + }, + "dataCollection": { + "description": "Details of the data collection options specified.", + "allOf": [ + { + "$ref": "#/definitions/ModelDataCollection" + } + ] + }, + "appInsightsEnabled": { + "description": "Whether or not Application Insights is enabled.", + "type": "boolean" + }, + "autoScaler": { + "description": "The auto scaler properties.", + "allOf": [ + { + "$ref": "#/definitions/AutoScaler" + } + ] + }, + "scoringUri": { + "description": "The Uri for sending scoring requests.", + "type": "string", + "readOnly": true + }, + "deploymentStatus": { + "description": "The deployment status.", + "readOnly": true, + "allOf": [ + { + "$ref": "#/definitions/AKSReplicaStatus" + } + ] + }, + "scoringTimeoutMs": { + "format": "int32", + "description": "The scoring timeout in milliseconds.", + "type": "integer", + "example": 100 + }, + "livenessProbeRequirements": { + "description": "The liveness probe requirements.", + "allOf": [ + { + "$ref": "#/definitions/LivenessProbeRequirements" + } + ] + }, + "authEnabled": { + "description": "Whether or not authentication is enabled.", + "type": "boolean" + }, + "aadAuthEnabled": { + "description": "Whether or not AAD authentication is enabled.", + "type": "boolean" + }, + "swaggerUri": { + "description": "The Uri for sending swagger requests.", + "type": "string", + "readOnly": true + }, + "modelConfigMap": { + "description": "Details on the models and configurations.", + "type": "object", + "additionalProperties": { + "type": "object" + }, + "readOnly": true + }, + "environmentImageRequest": { + "description": "The Environment, models and assets used for inferencing.", + "allOf": [ + { + "$ref": "#/definitions/EnvironmentImageResponse" + } + ] + } + } + } + ], + "x-ms-discriminator-value": "AKS" + }, + "AuthKeys": { + "type": "object", + "properties": { + "primaryKey": { + "description": "The primary key.", + "type": "string" + }, + "secondaryKey": { + "description": "The secondary key.", + "type": "string" + } + } + }, + "CreateServiceRequest": { + "description": "The base class for creating a service.", + "required": [ + "computeType" + ], + "type": "object", + "properties": { + "description": { + "description": "The description of the service.", + "type": "string" + }, + "kvTags": { + "description": "The service tag dictionary. Tags are mutable.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "properties": { + "description": "The service properties dictionary. Properties are immutable.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "keys": { + "description": "The authentication keys.", + "allOf": [ + { + "$ref": "#/definitions/AuthKeys" + } + ] + }, + "computeType": { + "description": "The compute environment type for the service.", + "enum": [ + "ACI", + "AKS" + ], + "type": "string", + "example": "AKS", + "x-ms-enum": { + "name": "ComputeEnvironmentType", + "modelAsString": true + } + }, + "environmentImageRequest": { + "description": "The Environment, models and assets needed for inferencing.", + "allOf": [ + { + "$ref": "#/definitions/EnvironmentImageRequest" + } + ] + }, + "location": { + "description": "The name of the Azure location/region.", + "type": "string" + } + }, + "discriminator": "computeType" + }, + "ACIServiceCreateRequest": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CreateServiceRequest" + }, + { + "type": "object", + "properties": { + "containerResourceRequirements": { + "description": "The container resource requirements.", + "$ref": "machineLearningServices.json#/definitions/ContainerResourceRequirements" + }, + "authEnabled": { + "description": "Whether or not authentication is enabled on the service.", + "default": false, + "type": "boolean" + }, + "sslEnabled": { + "description": "Whether or not SSL is enabled.", + "default": false, + "type": "boolean" + }, + "appInsightsEnabled": { + "description": "Whether or not Application Insights is enabled.", + "default": false, + "type": "boolean" + }, + "dataCollection": { + "description": "Details of the data collection options specified.", + "allOf": [ + { + "$ref": "#/definitions/ModelDataCollection" + } + ] + }, + "sslCertificate": { + "description": "The public SSL certificate in PEM format to use if SSL is enabled.", + "type": "string" + }, + "sslKey": { + "description": "The public SSL key in PEM format for the certificate.", + "type": "string" + }, + "cname": { + "description": "The CName for the service.", + "type": "string" + }, + "dnsNameLabel": { + "description": "The Dns label for the service.", + "type": "string" + }, + "vnetConfiguration": { + "description": "The virtual network configuration.", + "allOf": [ + { + "$ref": "#/definitions/VnetConfiguration" + } + ] + }, + "encryptionProperties": { + "description": "The encryption properties.", + "allOf": [ + { + "$ref": "#/definitions/EncryptionProperties" + } + ] + } + } + } + ], + "x-ms-discriminator-value": "ACI" + }, + "AKSServiceCreateRequest": { + "description": "The request to create an AKS service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CreateEndpointVariantRequest" + }, + { + "type": "object", + "properties": { + "numReplicas": { + "format": "int32", + "description": "The number of replicas on the cluster.", + "type": "integer", + "example": 1 + }, + "dataCollection": { + "description": "Details of the data collection options specified.", + "allOf": [ + { + "$ref": "#/definitions/ModelDataCollection" + } + ] + }, + "computeName": { + "description": "The name of the compute resource.", + "type": "string" + }, + "appInsightsEnabled": { + "description": "Whether or not Application Insights is enabled.", + "type": "boolean" + }, + "autoScaler": { + "description": "The auto scaler properties.", + "allOf": [ + { + "$ref": "#/definitions/AutoScaler" + } + ] + }, + "containerResourceRequirements": { + "description": "The container resource requirements.", + "$ref": "machineLearningServices.json#/definitions/ContainerResourceRequirements" + }, + "maxConcurrentRequestsPerContainer": { + "format": "int32", + "description": "The maximum number of concurrent requests per container.", + "type": "integer", + "example": 100 + }, + "maxQueueWaitMs": { + "format": "int32", + "description": "Maximum time a request will wait in the queue (in milliseconds). After this time, the service will return 503 (Service Unavailable)", + "type": "integer", + "example": 250 + }, + "namespace": { + "description": "Kubernetes namespace for the service.", + "type": "string", + "example": "default" + }, + "scoringTimeoutMs": { + "format": "int32", + "description": "The scoring timeout in milliseconds.", + "type": "integer", + "example": 100 + }, + "authEnabled": { + "description": "Whether or not authentication is enabled.", + "type": "boolean" + }, + "livenessProbeRequirements": { + "description": "The liveness probe requirements.", + "allOf": [ + { + "$ref": "#/definitions/LivenessProbeRequirements" + } + ] + }, + "aadAuthEnabled": { + "description": "Whether or not AAD authentication is enabled.", + "type": "boolean" + } + } + } + ], + "x-ms-discriminator-value": "AKS" + }, + "CreateEndpointVariantRequest": { + "description": "The Variant properties.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CreateServiceRequest" + }, + { + "type": "object", + "properties": { + "isDefault": { + "description": "Is this the default variant.", + "type": "boolean" + }, + "trafficPercentile": { + "format": "float", + "description": "The amount of traffic variant receives.", + "type": "number", + "example": 100 + }, + "type": { + "description": "The type of the variant.", + "enum": [ + "Control", + "Treatment" + ], + "type": "string", + "example": "Control", + "x-ms-enum": { + "name": "VariantType", + "modelAsString": true + } + } + } + } + ], + "x-ms-discriminator-value": "Custom" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow." + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/workspaceFeatures.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/workspaceFeatures.json new file mode 100644 index 000000000000..be4345ff1e6e --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/workspaceFeatures.json @@ -0,0 +1,113 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Machine Learning Workspaces", + "version": "2021-03-01-preview" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/features": { + "get": { + "tags": [ + "Workspaces" + ], + "description": "Lists all enabled features for a workspace", + "operationId": "WorkspaceFeatures_List", + "x-ms-examples": { + "List Workspace features": { + "$ref": "./examples/WorkspaceFeature/list.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/ListAmlUserFeatureResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "AmlUserFeature": { + "description": "Features enabled for a workspace", + "type": "object", + "properties": { + "id": { + "description": "Specifies the feature ID", + "type": "string" + }, + "displayName": { + "description": "Specifies the feature name ", + "type": "string" + }, + "description": { + "description": "Describes the feature for user experience", + "type": "string" + } + } + }, + "ListAmlUserFeatureResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/AmlUserFeature" + }, + "description": "The list of AML user facing features." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URI to fetch the next page of AML user features information. Call ListNext() with this to fetch the next page of AML user features information." + } + }, + "description": "The List Aml user feature operation response." + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow." + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/workspaceSkus.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/workspaceSkus.json new file mode 100644 index 000000000000..1df2a3a27317 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2021-03-01-preview/workspaceSkus.json @@ -0,0 +1,230 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Machine Learning Workspaces", + "version": "2021-03-01-preview" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/workspaces/skus": { + "get": { + "tags": [ + "WorkspaceSkus" + ], + "description": "Lists all skus with associated features", + "operationId": "WorkspaceSkus_List", + "x-ms-examples": { + "List Skus": { + "$ref": "./examples/WorkspaceSku/list.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/SkuListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "SkuListResult": { + "description": "List of skus with features", + "type": "object", + "properties": { + "value": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/WorkspaceSku" + } + }, + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of Workspace Skus. Call ListNext() with this URI to fetch the next page of Workspace Skus" + } + } + }, + "SKUCapability": { + "description": "Features/user capabilities associated with the sku", + "type": "object", + "properties": { + "name": { + "description": "Capability/Feature ID", + "type": "string" + }, + "value": { + "description": "Details about the feature/capability", + "type": "string" + } + } + }, + "Restriction": { + "properties": { + "type": { + "readOnly": true, + "type": "string", + "description": "The type of restrictions. As of now only possible value for this is location." + }, + "values": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The value of restrictions. If the restriction type is set to location. This would be different locations where the SKU is restricted." + }, + "reasonCode": { + "type": "string", + "enum": [ + "NotSpecified", + "NotAvailableForRegion", + "NotAvailableForSubscription" + ], + "x-ms-enum": { + "name": "ReasonCode", + "modelAsString": true + }, + "description": "The reason for the restriction." + } + }, + "description": "The restriction because of which SKU cannot be used." + }, + "ResourceSkuLocationInfo": { + "properties": { + "location": { + "readOnly": true, + "type": "string", + "description": "Location of the SKU" + }, + "zones": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "List of availability zones where the SKU is supported." + }, + "zoneDetails": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ResourceSkuZoneDetails" + }, + "description": "Details of capabilities available to a SKU in specific zones." + } + } + }, + "ResourceSkuZoneDetails": { + "properties": { + "name": { + "type": "array", + "readOnly": true, + "items": { + "type": "string" + }, + "description": "The set of zones that the SKU is available in with the specified capabilities." + }, + "capabilities": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/SKUCapability" + }, + "description": "A list of capabilities that are available for the SKU in the specified list of zones." + } + }, + "description": "Describes The zonal capabilities of a SKU." + }, + "WorkspaceSku": { + "description": "Describes Workspace Sku details and features", + "type": "object", + "properties": { + "locations": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The set of locations that the SKU is available. This will be supported and registered Azure Geo Regions (e.g. West US, East US, Southeast Asia, etc.)." + }, + "locationInfo": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ResourceSkuLocationInfo" + }, + "description": "A list of locations and availability zones in those locations where the SKU is available." + }, + "tier": { + "description": "Sku Tier like Basic or Enterprise", + "type": "string", + "readOnly": true + }, + "resourceType": { + "type": "string", + "readOnly": true + }, + "name": { + "type": "string", + "readOnly": true + }, + "capabilities": { + "description": "List of features/user capabilities associated with the sku", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/SKUCapability" + }, + "readOnly": true + }, + "restrictions": { + "type": "array", + "items": { + "$ref": "#/definitions/Restriction" + }, + "description": "The restrictions because of which SKU cannot be used. This is empty if there are no restrictions." + } + } + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow." + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/ListSkus.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/ListSkus.json new file mode 100644 index 000000000000..b278654e9d24 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/ListSkus.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "api-version": "2021-04-01", + "subscriptionId": "{subscription-id}" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "workspaces", + "name": "Basic", + "tier": "Basic", + "locations": [ + "westus" + ], + "locationInfo": [ + { + "location": "westus", + "zones": [ + "westus-AZ02", + "westus-AZ01" + ] + } + ], + "capabilities": [ + { + "name": "automatedml_readhyperdrivesdk", + "value": "{\n \"id\": \"automatedml_ readhyperdrivesdk\",\n \"name\": \"Read hyperdrive SDK\",\n \"description\": \"Read only access to Hyperdrive in the SDK\"\n}" + }, + { + "name": "workspace_upgradeworkspacesdk", + "value": "{\n \"id\": \"workspace_upgradeworkspacesdk\",\n \"name\": \"Upgrade workspace SDK\",\n \"description\": \"Upgrade workspace from Basic to enterprise from the SDK\"\n}" + } + ], + "restrictions": [] + }, + { + "resourceType": "workspaces", + "name": "Enterprise", + "tier": "Enterprise", + "locations": [ + "westus" + ], + "locationInfo": [ + { + "location": "westus", + "zones": [ + "westus-AZ01" + ], + "zoneDetails": [ + { + "name": [ + "westus-AZ01" + ], + "capabilities": [ + { + "name": "automatedml_createeditexperimentssdk", + "value": "{\n \"id\": \"automatedml_createeditexperimentssdk\",\n \"name\": \"Create edit experiments SDK\",\n \"description\": \"Create, edit or delete AutoML experiments in the SDK\"\n}" + } + ] + } + ] + } + ], + "capabilities": [ + { + "name": "automatedml_createeditexperimentssdk", + "value": "{\n \"id\": \"automatedml_createeditexperimentssdk\",\n \"name\": \"Create edit experiments SDK\",\n \"description\": \"Create, edit or delete AutoML experiments in the SDK\"\n}" + } + ], + "restrictions": [] + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/ListUsages.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/ListUsages.json new file mode 100644 index 000000000000..77970b4c0002 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/ListUsages.json @@ -0,0 +1,400 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "eastus", + "api-version": "2021-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages", + "type": "Microsoft.MachineLearningServices/totalCores/usages", + "currentValue": 7, + "limit": 100, + "name": { + "localizedValue": "Clusters", + "value": "Clusters" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages", + "type": "Microsoft.MachineLearningServices/dedicatedCores/usages", + "currentValue": 14, + "limit": 24, + "name": { + "localizedValue": "Total Cluster Dedicated Regional vCPUs", + "value": "Total Cluster Dedicated Regional vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_D_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 48, + "name": { + "localizedValue": "Standard D Family Cluster Dedicated vCPUs", + "value": "Standard D Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 2, + "limit": 24, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/usages/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/usages", + "currentValue": 2, + "limit": 24, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/computes/demo_cluster1_dsv2/usages/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/computes/usages", + "currentValue": 2, + "limit": 24, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/computes/demo_cluster2_dsv2/usages/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/computes/usages", + "currentValue": 0, + "limit": 24, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_Dv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 24, + "name": { + "localizedValue": "Standard Dv2 Family Cluster Dedicated vCPUs", + "value": "Standard Dv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_FSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 24, + "name": { + "value": "Standard FSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard FSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 12, + "limit": 24, + "name": { + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs", + "value": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/usages/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspace/usages", + "currentValue": 6, + "limit": 24, + "name": { + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs", + "value": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/computes/demo_cluster1_nc/usages/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspace/computes/usages", + "currentValue": 6, + "limit": 24, + "name": { + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs", + "value": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/usages/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/usages", + "currentValue": 6, + "limit": 24, + "name": { + "value": "Standard NC Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/computes/demo_cluser1_nc/usages/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/computes/usages", + "currentValue": 6, + "limit": 24, + "name": { + "value": "Standard NC Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NCv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 0, + "name": { + "localizedValue": "Standard NCv2 Family Cluster Dedicated vCPUs", + "value": "Standard NCv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NCv3_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 0, + "name": { + "localizedValue": "Standard NCv3 Family Cluster Dedicated vCPUs", + "value": "Standard NCv3 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_ND_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 0, + "name": { + "localizedValue": "Standard ND Family Cluster Dedicated vCPUs", + "value": "Standard ND Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NDv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 0, + "name": { + "value": "Standard NDv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NDv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NV_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 24, + "name": { + "localizedValue": "Standard NV Family Cluster Dedicated vCPUs", + "value": "Standard NV Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages", + "type": "Microsoft.MachineLearningServices/lowPriorityCores/usages", + "currentValue": 18, + "limit": 50, + "name": { + "localizedValue": "Total Cluster LowPriority Regional vCPUs", + "value": "Total Cluster LowPriority Regional vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_D_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "value": "Standard D Family Cluster LowPriority vCPUs", + "localizedValue": "Standard D Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_DSv2_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard DSv2 Family Cluster LowPriority vCPUs", + "value": "Standard DSv2 Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_Dv2_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard Dv2 Family Cluster LowPriority vCPUs", + "value": "Standard Dv2 Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_FSv2_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard FSv2 Family Cluster LowPriority vCPUs", + "value": "Standard FSv2 Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NC_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 18, + "limit": -1, + "name": { + "localizedValue": "Standard NC Family Cluster LowPriority vCPUs", + "value": "Standard NC Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/usages/Standard_NC_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/workspace/usages", + "currentValue": 6, + "limit": -1, + "name": { + "localizedValue": "Standard NC Family Cluster LowPriority vCPUs", + "value": "Standard NC Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/computes/demo_cluster1_lowPriority_nc/usages/Standard_NC_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/workspace/computes/usages", + "currentValue": 6, + "limit": -1, + "name": { + "localizedValue": "Standard NC Family Cluster LowPriority vCPUs", + "value": "Standard NC Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/usages/Standard_NC_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/workspace/usages", + "currentValue": 12, + "limit": -1, + "name": { + "localizedValue": "Standard NC Family Cluster LowPriority vCPUs", + "value": "Standard NC Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/computes/demo_cluster2_lowPriority_nc/usages/Standard_NC_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/workspace/computes/usages", + "currentValue": 6, + "limit": -1, + "name": { + "localizedValue": "Standard NC Family Cluster LowPriority vCPUs", + "value": "Standard NC Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/computes/demo_cluster3_lowPriority_nc/usages/Standard_NC_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/workspace/computes/usages", + "currentValue": 6, + "limit": -1, + "name": { + "localizedValue": "Standard NC Family Cluster LowPriority vCPUs", + "value": "Standard NC Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NCv2_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard NCv2 Family Cluster LowPriority vCPUs", + "value": "Standard NCv2 Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NCv3_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard NCv3 Family Cluster LowPriority vCPUs", + "value": "Standard NCv3 Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_ND_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard ND Family Cluster LowPriority vCPUs", + "value": "Standard ND Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NDv2_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard NDv2 Family Cluster LowPriority vCPUs", + "value": "Standard NDv2 Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NV_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard NV Family Cluster LowPriority vCPUs", + "value": "Standard NV Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + } + ] + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/ListVMSizesResult.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/ListVMSizesResult.json new file mode 100644 index 000000000000..67c43915df17 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/ListVMSizesResult.json @@ -0,0 +1,348 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "api-version": "2021-04-01", + "location": "eastus" + }, + "responses": { + "200": { + "body": { + "amlCompute": [ + { + "name": "Standard_D1_v2", + "family": "standardDv2Family", + "vCPUs": 1, + "gpus": 0, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 51200, + "memoryGB": 3.5, + "lowPriorityCapable": true, + "premiumIO": false, + "estimatedVMPrices": { + "billingCurrency": "USD", + "unitOfMeasure": "OneHour", + "values": [ + { + "retailPrice": 0.05, + "osType": "Windows", + "vmTier": "LowPriority" + }, + { + "retailPrice": 0.12, + "osType": "Windows", + "vmTier": "Standard" + }, + { + "retailPrice": 0.01, + "osType": "Linux", + "vmTier": "LowPriority" + }, + { + "retailPrice": 0.06, + "osType": "Linux", + "vmTier": "Standard" + } + ] + } + }, + { + "name": "Standard_D2_v2", + "family": "standardDv2Family", + "vCPUs": 2, + "gpus": 0, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 102400, + "memoryGB": 7, + "lowPriorityCapable": true, + "premiumIO": false, + "estimatedVMPrices": { + "billingCurrency": "USD", + "unitOfMeasure": "OneHour", + "values": [ + { + "retailPrice": 0.09, + "osType": "Windows", + "vmTier": "LowPriority" + }, + { + "retailPrice": 0.23, + "osType": "Windows", + "vmTier": "Standard" + }, + { + "retailPrice": 0.11, + "osType": "Linux", + "vmTier": "Standard" + }, + { + "retailPrice": 0.02, + "osType": "Linux", + "vmTier": "LowPriority" + } + ] + } + }, + { + "name": "Standard_D11_v2", + "family": "standardDv2Family", + "vCPUs": 2, + "gpus": 0, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 102400, + "memoryGB": 14, + "lowPriorityCapable": true, + "premiumIO": false, + "estimatedVMPrices": { + "billingCurrency": "USD", + "unitOfMeasure": "OneHour", + "values": [ + { + "retailPrice": 0.15, + "osType": "Linux", + "vmTier": "Standard" + }, + { + "retailPrice": 0.1, + "osType": "Windows", + "vmTier": "LowPriority" + }, + { + "retailPrice": 0.03, + "osType": "Linux", + "vmTier": "LowPriority" + }, + { + "retailPrice": 0.24, + "osType": "Windows", + "vmTier": "Standard" + } + ] + } + }, + { + "name": "Standard_DS1_v2", + "family": "standardDSv2Family", + "vCPUs": 1, + "gpus": 0, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 7168, + "memoryGB": 3.5, + "lowPriorityCapable": true, + "premiumIO": true, + "estimatedVMPrices": { + "billingCurrency": "USD", + "unitOfMeasure": "OneHour", + "values": [ + { + "retailPrice": 0.05, + "osType": "Windows", + "vmTier": "LowPriority" + }, + { + "retailPrice": 0.12, + "osType": "Windows", + "vmTier": "Standard" + }, + { + "retailPrice": 0.01, + "osType": "Linux", + "vmTier": "LowPriority" + }, + { + "retailPrice": 0.06, + "osType": "Linux", + "vmTier": "Standard" + } + ] + } + }, + { + "name": "Standard_F2s_v2", + "family": "standardFSv2Family", + "vCPUs": 2, + "gpus": 0, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 16384, + "memoryGB": 4, + "lowPriorityCapable": true, + "premiumIO": true, + "estimatedVMPrices": { + "billingCurrency": "USD", + "unitOfMeasure": "OneHour", + "values": [ + { + "retailPrice": 0.02, + "osType": "Linux", + "vmTier": "LowPriority" + }, + { + "retailPrice": 0.08, + "osType": "Linux", + "vmTier": "Standard" + }, + { + "retailPrice": 0.06, + "osType": "Windows", + "vmTier": "LowPriority" + }, + { + "retailPrice": 0.16, + "osType": "Windows", + "vmTier": "Standard" + } + ] + } + }, + { + "name": "Standard_M32-8ms", + "family": "standardMSFamily", + "vCPUs": 32, + "gpus": 0, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1024000, + "memoryGB": 875, + "lowPriorityCapable": true, + "premiumIO": true, + "estimatedVMPrices": { + "billingCurrency": "USD", + "unitOfMeasure": "OneHour", + "values": [ + { + "retailPrice": 8.43, + "osType": "Windows", + "vmTier": "Standard" + }, + { + "retailPrice": 1.23, + "osType": "Linux", + "vmTier": "LowPriority" + }, + { + "retailPrice": 3.37, + "osType": "Windows", + "vmTier": "LowPriority" + }, + { + "retailPrice": 6.15, + "osType": "Linux", + "vmTier": "Standard" + } + ] + } + }, + { + "name": "Standard_NC6", + "family": "standardNCFamily", + "vCPUs": 6, + "gpus": 1, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 389120, + "memoryGB": 56, + "lowPriorityCapable": true, + "premiumIO": false, + "estimatedVMPrices": { + "billingCurrency": "USD", + "unitOfMeasure": "OneHour", + "values": [ + { + "retailPrice": 0.18, + "osType": "Linux", + "vmTier": "LowPriority" + }, + { + "retailPrice": 0.43, + "osType": "Windows", + "vmTier": "LowPriority" + }, + { + "retailPrice": 0.9, + "osType": "Linux", + "vmTier": "Standard" + }, + { + "retailPrice": 1.08, + "osType": "Windows", + "vmTier": "Standard" + } + ] + } + }, + { + "name": "Standard_NV6", + "family": "standardNVFamily", + "vCPUs": 6, + "gpus": 1, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 389120, + "memoryGB": 56, + "lowPriorityCapable": true, + "premiumIO": false, + "estimatedVMPrices": { + "billingCurrency": "USD", + "unitOfMeasure": "OneHour", + "values": [ + { + "retailPrice": 1.28, + "osType": "Windows", + "vmTier": "Standard" + }, + { + "retailPrice": 0.51, + "osType": "Windows", + "vmTier": "LowPriority" + }, + { + "retailPrice": 0.22, + "osType": "Linux", + "vmTier": "LowPriority" + }, + { + "retailPrice": 1.09, + "osType": "Linux", + "vmTier": "Standard" + } + ] + } + }, + { + "name": "Standard_ND6s", + "family": "standardNDSFamily", + "vCPUs": 6, + "gpus": 1, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 344064, + "memoryGB": 112, + "lowPriorityCapable": true, + "premiumIO": true, + "estimatedVMPrices": { + "billingCurrency": "USD", + "unitOfMeasure": "OneHour", + "values": [ + { + "retailPrice": 2.07, + "osType": "Linux", + "vmTier": "Standard" + }, + { + "retailPrice": 0.36, + "osType": "Linux", + "vmTier": "LowPriority" + }, + { + "retailPrice": 0.87, + "osType": "Windows", + "vmTier": "LowPriority" + }, + { + "retailPrice": 2.49, + "osType": "Windows", + "vmTier": "Standard" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/ListWorkspaceFeatures.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/ListWorkspaceFeatures.json new file mode 100644 index 000000000000..45bc14282ce4 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/ListWorkspaceFeatures.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2021-04-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "workspaceName": "testworkspace" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "automatedml_createeditexperimentsui", + "displayName": "Create edit experiments UI", + "description": "Create, edit or delete AutoML experiments in the SDK" + }, + { + "id": "workspace_upgradeworkspaceui", + "displayName": "Upgrade workspace UI", + "description": "Upgrade workspace from Basic to enterprise from the UI" + } + ] + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/ListWorkspaceQuotasByVMFamily.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/ListWorkspaceQuotasByVMFamily.json new file mode 100644 index 000000000000..3b3ad33a2397 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/ListWorkspaceQuotasByVMFamily.json @@ -0,0 +1,415 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "eastus", + "api-version": "2021-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_D_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 48, + "name": { + "localizedValue": "Standard D Family Cluster Dedicated vCPUs", + "value": "Standard D Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_D_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 12, + "name": { + "value": "Standard D Family Cluster Dedicated vCPUs", + "localizedValue": "Standard D Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_D_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 12, + "name": { + "value": "Standard D Family Cluster Dedicated vCPUs", + "localizedValue": "Standard D Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_D_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard D Family Cluster Dedicated vCPUs", + "localizedValue": "Standard D Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quota", + "limit": 24, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 12, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 12, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_Dv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 24, + "name": { + "localizedValue": "Standard Dv2 Family Cluster Dedicated vCPUs", + "value": "Standard Dv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_Dv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard Dv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard Dv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_Dv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard Dv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard Dv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_Dv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard Dv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard Dv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_FSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 24, + "name": { + "value": "Standard FSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard FSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_FSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard FSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard FSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_FSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard FSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard FSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_FSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 12, + "name": { + "value": "Standard FSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard FSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 24, + "name": { + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs", + "value": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard NC Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard NC Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard NC Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_NCv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 0, + "name": { + "localizedValue": "Standard NCv2 Family Cluster Dedicated vCPUs", + "value": "Standard NCv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_NCv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NCv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NCv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_NCv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NCv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NCv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_NCv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NCv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NCv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_NCv3_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 0, + "name": { + "localizedValue": "Standard NCv3 Family Cluster Dedicated vCPUs", + "value": "Standard NCv3 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_NCv3_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NCv3 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NCv3 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_NCv3_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NCv3 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NCv3 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_NCv3_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NCv3 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NCv3 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_ND_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 0, + "name": { + "localizedValue": "Standard ND Family Cluster Dedicated vCPUs", + "value": "Standard ND Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_ND_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard ND Family Cluster Dedicated vCPUs", + "localizedValue": "Standard ND Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_ND_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard ND Family Cluster Dedicated vCPUs", + "localizedValue": "Standard ND Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_ND_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard ND Family Cluster Dedicated vCPUs", + "localizedValue": "Standard ND Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_NDv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 0, + "name": { + "value": "Standard NDv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NDv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_NDv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NDv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NDv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_NDv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NDv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NDv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_NDv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NDv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NDv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_NV_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 24, + "name": { + "localizedValue": "Standard NV Family Cluster Dedicated vCPUs", + "value": "Standard NV Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_NV_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard NV Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NV Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_NV_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard NV Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NV Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_NV_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard NV Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NV Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + } + ] + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/amlComputeListNodes.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/amlComputeListNodes.json new file mode 100644 index 000000000000..f769623a5e7b --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/amlComputeListNodes.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2021-04-01" + }, + "responses": { + "200": { + "body": { + "computeType": "AmlCompute", + "nodes": [ + { + "nodeId": "tvm-3601533753_1-20170719t162906z", + "privateIpAddress": "13.84.190.124", + "publicIpAddress": "13.84.190.134", + "port": 50000, + "nodeState": "running", + "runId": "2f378a44-38f2-443a-9f0d-9909d0b47890" + }, + { + "nodeId": "tvm-3601533753_2-20170719t162906z", + "privateIpAddress": "13.84.190.124", + "publicIpAddress": "13.84.190.134", + "port": 50001, + "nodeState": "idle" + } + ], + "nextLink": "nextLink" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/createBasicAKSCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/createBasicAKSCompute.json new file mode 100644 index 000000000000..9585ffacc15b --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/createBasicAKSCompute.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2021-04-01", + "parameters": { + "location": "eastus", + "properties": { + "computeType": "AKS" + } + } + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "AKS", + "provisioningState": "Creating" + } + } + }, + "201": { + "body": { + "id": "subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "AKS", + "provisioningState": "Creating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/createBasicAmlCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/createBasicAmlCompute.json new file mode 100644 index 000000000000..fc56e0855973 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/createBasicAmlCompute.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2021-04-01", + "parameters": { + "location": "eastus", + "properties": { + "computeType": "AmlCompute", + "properties": { + "vmSize": "STANDARD_NC6", + "vmPriority": "Dedicated", + "osType": "Windows", + "virtualMachineImage": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/myImageGallery/images/myImageDefinition/versions/0.0.1" + }, + "isolatedNetwork": false, + "scaleSettings": { + "maxNodeCount": 1, + "minNodeCount": 0, + "nodeIdleTimeBeforeScaleDown": "PT5M" + }, + "remoteLoginPortPublicAccess": "NotSpecified", + "enableNodePublicIp": true + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "AmlCompute", + "provisioningState": "Creating" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "AmlCompute", + "provisioningState": "Creating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/createBasicDataFactoryCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/createBasicDataFactoryCompute.json new file mode 100644 index 000000000000..fad53bdc7598 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/createBasicDataFactoryCompute.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2021-04-01", + "parameters": { + "location": "eastus", + "properties": { + "computeType": "DataFactory" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "DataFactory", + "provisioningState": "Creating" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "DataFactory", + "provisioningState": "Creating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/createComputeInstance.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/createComputeInstance.json new file mode 100644 index 000000000000..6d3b484b5d7a --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/createComputeInstance.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2021-04-01", + "parameters": { + "location": "eastus", + "properties": { + "computeType": "ComputeInstance", + "properties": { + "vmSize": "STANDARD_NC6", + "subnet": "test-subnet-resource-id", + "applicationSharingPolicy": "Personal", + "sshSettings": { + "sshPublicAccess": "Disabled" + }, + "computeInstanceAuthorizationType": "personal", + "personalComputeInstanceSettings": { + "assignedUser": { + "objectId": "00000000-0000-0000-0000-000000000000", + "tenantId": "00000000-0000-0000-0000-000000000000" + } + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "ComputeInstance", + "provisioningState": "Creating" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "ComputeInstance", + "provisioningState": "Creating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/createComputeInstanceMinimal.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/createComputeInstanceMinimal.json new file mode 100644 index 000000000000..f3dc554563a8 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/createComputeInstanceMinimal.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2021-04-01", + "parameters": { + "location": "eastus", + "properties": { + "computeType": "ComputeInstance", + "properties": { + "vmSize": "STANDARD_NC6" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "ComputeInstance", + "provisioningState": "Creating" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "ComputeInstance", + "provisioningState": "Creating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/createOrUpdateService.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/createOrUpdateService.json new file mode 100644 index 000000000000..e61e067bb910 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/createOrUpdateService.json @@ -0,0 +1,225 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "api-version": "2021-04-01", + "serviceName": "service456", + "properties": { + "computeType": "ACI", + "environmentImageRequest": { + "driverProgram": "score.py", + "assets": [ + { + "id": null, + "mimeType": "application/x-python", + "url": "aml://storage/azureml/score.py", + "unpack": false + } + ], + "models": [ + { + "name": "sklearn_regression_model.pkl", + "url": "aml://storage/azureml/sklearn_regression_model.pkl", + "mimeType": "application/x-python" + } + ], + "environment": { + "name": "AzureML-Scikit-learn-0.20.3", + "version": "3", + "python": { + "interpreterPath": "python", + "userManagedDependencies": false, + "condaDependencies": { + "channels": [ + "conda-forge" + ], + "dependencies": [ + "python=3.6.2", + { + "pip": [ + "azureml-core==1.0.69", + "azureml-defaults==1.0.69", + "azureml-telemetry==1.0.69", + "azureml-train-restclients-hyperdrive==1.0.69", + "azureml-train-core==1.0.69", + "scikit-learn==0.20.3", + "scipy==1.2.1", + "numpy==1.16.2", + "joblib==0.13.2" + ] + } + ], + "name": "azureml_ae1acbe6e1e6aabbad900b53c491a17c" + }, + "baseCondaEnvironment": null + }, + "environmentVariables": { + "EXAMPLE_ENV_VAR": "EXAMPLE_VALUE" + }, + "docker": { + "baseImage": "mcr.microsoft.com/azureml/base:openmpi3.1.2-ubuntu16.04", + "baseDockerfile": null, + "baseImageRegistry": { + "address": null, + "username": null, + "password": null + } + }, + "spark": { + "repositories": [], + "packages": [], + "precachePackages": true + }, + "inferencingStackVersion": null + } + }, + "containerResourceRequirements": { + "cpu": 1, + "memoryInGB": 1 + }, + "location": "eastus2", + "authEnabled": true, + "appInsightsEnabled": true + } + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/services/service456", + "type": "Microsoft.MachineLearningServices/workspaces/services", + "name": "service456", + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-02-03T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-02-04T02:03:01.1974346Z" + }, + "properties": { + "computeType": "ACI", + "containerResourceRequirements": { + "cpu": 0.1, + "memoryInGB": 0.5, + "gpu": null, + "fpga": null + }, + "scoringUri": "http://ddde8e29-3e3a-42d2-980d-8fb7e005ab81.eastus2.azurecontainer.io/score", + "location": "eastus2", + "authEnabled": true, + "sslEnabled": false, + "appInsightsEnabled": true, + "dataCollection": { + "eventHubEnabled": false, + "storageEnabled": false + }, + "sslCertificate": "", + "sslKey": "", + "cname": null, + "publicIp": "52.177.232.98", + "publicFqdn": "ddde8e29-3e3a-42d2-980d-8fb7e005ab81.eastus2.azurecontainer.io", + "modelConfigMap": { + "accountContext": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "accountName": "workspaces123", + "workspaceId": "57b243e8-3d24-4427-90e0-8dc47f41c387" + }, + "models": { + "sklearn_regression_model1.pkl": { + "version": 2, + "id": "sklearn_regression_model1.pkl:2", + "internalId": "3ab27a5b0d0e48d99f18a5195cc258bc" + } + }, + "modelsInfo": { + "sklearn_regression_model1.pkl": { + "2": { + "version": 2, + "id": "sklearn_regression_model1.pkl:2", + "internalId": "3ab27a5b0d0e48d99f18a5195cc258bc", + "dataCollectorStoragePath": "/modeldata/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/testrg123/workspaces123/service123/sklearn_regression_model1.pkl/2/" + } + } + } + }, + "environmentImageRequest": { + "driverProgram": "score.py", + "assets": [ + { + "id": null, + "mimeType": "application/x-python", + "url": "aml://artifact/LocalUpload/200518T200218a1a8c0af/score.py", + "unpack": false + } + ], + "modelIds": [ + "sklearn_regression_model1.pkl:2" + ], + "environment": { + "name": "AzureML-Scikit-learn-0.20.3", + "version": "3", + "python": { + "interpreterPath": "python", + "userManagedDependencies": false, + "condaDependencies": { + "channels": [ + "conda-forge" + ], + "dependencies": [ + "python=3.6.2", + { + "pip": [ + "azureml-core==1.0.69", + "azureml-defaults==1.0.69", + "azureml-telemetry==1.0.69", + "azureml-train-restclients-hyperdrive==1.0.69", + "azureml-train-core==1.0.69", + "scikit-learn==0.20.3", + "scipy==1.2.1", + "numpy==1.16.2", + "joblib==0.13.2" + ] + } + ], + "name": "azureml_ae1acbe6e1e6aabbad900b53c491a17c" + }, + "baseCondaEnvironment": null + }, + "environmentVariables": { + "EXAMPLE_ENV_VAR": "EXAMPLE_VALUE" + }, + "docker": { + "baseImage": "mcr.microsoft.com/azureml/base:openmpi3.1.2-ubuntu16.04", + "baseDockerfile": null, + "baseImageRegistry": { + "address": null + } + }, + "spark": { + "repositories": [], + "packages": [], + "precachePackages": true + }, + "inferencingStackVersion": null + } + }, + "description": null, + "kvTags": {}, + "properties": { + "hasInferenceSchema": "False", + "hasHttps": "False" + }, + "state": "Transitioning" + } + } + }, + "201": { + "description": "The request was accepted.", + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/createWorkspace.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/createWorkspace.json new file mode 100644 index 000000000000..81dc89958504 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/createWorkspace.json @@ -0,0 +1,157 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workspace-1234", + "workspaceName": "testworkspace", + "api-version": "2021-04-01", + "parameters": { + "location": "eastus2euap", + "identity": { + "type": "SystemAssigned,UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testuai": {} + } + }, + "properties": { + "friendlyName": "HelloName", + "description": "test description", + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "encryption": { + "status": "Enabled", + "identity": { + "userAssignedIdentity": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testuai" + }, + "keyVaultProperties": { + "keyVaultArmId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "keyIdentifier": "https://testkv.vault.azure.net/keys/testkey/aabbccddee112233445566778899aabb", + "identityClientId": "" + } + }, + "hbiWorkspace": false, + "sharedPrivateLinkResources": [ + { + "name": "testdbresource", + "properties": { + "privateLinkResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.DocumentDB/databaseAccounts/testdbresource/privateLinkResources/Sql", + "groupId": "Sql", + "requestMessage": "Please approve", + "status": "Approved" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "identity": { + "principalId": "00000000-1111-2222-3333-444444444444", + "tenantId": "00000000-1111-2222-3333-444444444444", + "type": "SystemAssigned,UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testuai": { + "principalId": "00000000-1111-2222-3333-444444444444", + "clientId": "00000000-1111-2222-3333-444444444444", + "tenantId": "00000000-1111-2222-3333-444444444444" + } + } + }, + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "friendlyName": "HelloName", + "description": "test description", + "encryption": { + "status": "Enabled", + "identity": { + "userAssignedIdentity": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testuai" + }, + "keyVaultProperties": { + "keyVaultArmId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "keyIdentifier": "https://testkv.vault.azure.net/keys/testkey/aabbccddee112233445566778899aabb", + "identityClientId": "" + } + }, + "hbiWorkspace": false, + "allowPublicAccessWhenBehindVnet": false, + "sharedPrivateLinkResources": [ + { + "name": "testdbresource", + "properties": { + "privateLinkResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.DocumentDB/databaseAccounts/testdbresource/privateLinkResources/Sql", + "groupId": "Sql", + "requestMessage": "Please approve", + "status": "Approved" + } + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "identity": { + "principalId": "00000000-1111-2222-3333-444444444444", + "tenantId": "00000000-1111-2222-3333-444444444444", + "type": "SystemAssigned,UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testuai": { + "principalId": "00000000-1111-2222-3333-444444444444", + "clientId": "00000000-1111-2222-3333-444444444444", + "tenantId": "00000000-1111-2222-3333-444444444444" + } + } + }, + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "friendlyName": "HelloName", + "description": "test description", + "encryption": { + "status": "Enabled", + "identity": { + "userAssignedIdentity": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testuai" + }, + "keyVaultProperties": { + "keyVaultArmId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "keyIdentifier": "https://testkv.vault.azure.net/keys/testkey/aabbccddee112233445566778899aabb", + "identityClientId": "" + } + }, + "hbiWorkspace": false, + "allowPublicAccessWhenBehindVnet": false, + "sharedPrivateLinkResources": [ + { + "name": "testdbresource", + "properties": { + "privateLinkResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.DocumentDB/databaseAccounts/testdbresource/privateLinkResources/Sql", + "groupId": "Sql", + "requestMessage": "Please approve", + "status": "Approved" + } + } + ] + } + } + }, + "202": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/createWorkspaceConnection.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/createWorkspaceConnection.json new file mode 100644 index 000000000000..048a72c9ddee --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/createWorkspaceConnection.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup-1", + "workspaceName": "workspace-1", + "connectionName": "connection-1", + "api-version": "2021-04-01", + "parameters": { + "name": "connection-1", + "properties": { + "category": "ACR", + "target": "www.facebook.com", + "authType": "PAT", + "value": "secrets" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1/providers/Microsoft.MachineLearningServices/workspaces/workspace-1/connections/connection-1", + "name": "connection-1", + "type": "Microsoft.MachineLearningServices/workspaces/connections", + "properties": { + "category": "ACR", + "target": "www.facebook.com", + "authType": "PAT", + "value": "secrets" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/deleteCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/deleteCompute.json new file mode 100644 index 000000000000..661c6f32341c --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/deleteCompute.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2021-04-01", + "underlyingResourceAction": "Delete" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus...", + "Location": "https://management.azure.com/subscriptions/...pathToOperationResult..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/deleteService.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/deleteService.json new file mode 100644 index 000000000000..8f0c3e18fa3f --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/deleteService.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "serviceName": "service123", + "api-version": "2021-04-01" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/deleteWorkspace.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/deleteWorkspace.json new file mode 100644 index 000000000000..16629317b7bd --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/deleteWorkspace.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workspace-1234", + "workspaceName": "testworkspace", + "api-version": "2021-04-01" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/deleteWorkspaceConnection.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/deleteWorkspaceConnection.json new file mode 100644 index 000000000000..2bef74cf4ca3 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/deleteWorkspaceConnection.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup-1", + "workspaceName": "workspace-1", + "connectionName": "connection-1", + "api-version": "2021-04-01" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/getAKSCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/getAKSCompute.json new file mode 100644 index 000000000000..22b32ed47a7f --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/getAKSCompute.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2021-04-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "createdOn": "2021-04-01T22:00:00.0000000+00:00", + "modifiedOn": "2021-04-01T22:00:00.0000000+00:00", + "description": "some compute", + "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute123-56826-c9b00420020b2", + "computeType": "AKS", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/getAmlCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/getAmlCompute.json new file mode 100644 index 000000000000..3edda8a526cd --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/getAmlCompute.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2021-04-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus2", + "properties": { + "description": "some compute", + "createdOn": "2021-04-01T22:00:00.0000000+00:00", + "modifiedOn": "2021-04-01T22:00:00.0000000+00:00", + "computeType": "AmlCompute", + "provisioningState": "Succeeded", + "properties": { + "vmSize": "STANDARD_NC6", + "vmPriority": "Dedicated", + "osType": "Windows", + "virtualMachineImage": null, + "isolatedNetwork": false, + "subnet": "test-subnet-resource-id", + "scaleSettings": { + "maxNodeCount": 1, + "minNodeCount": 0, + "nodeIdleTimeBeforeScaleDown": "PT5M" + }, + "remoteLoginPortPublicAccess": "Enabled", + "allocationState": "Resizing", + "allocationStateTransitionTime": "2017-09-27T22:28:08.998Z", + "errors": null, + "currentNodeCount": 0, + "targetNodeCount": 1, + "nodeStateCounts": { + "preparingNodeCount": 0, + "runningNodeCount": 0, + "idleNodeCount": 0, + "unusableNodeCount": 0, + "leavingNodeCount": 0, + "preemptedNodeCount": 0 + }, + "enableNodePublicIp": true + } + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/getComputeInstance.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/getComputeInstance.json new file mode 100644 index 000000000000..64cc1ba1f9fc --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/getComputeInstance.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2021-04-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus2", + "properties": { + "description": "some compute", + "createdOn": "2021-04-01T22:00:00.0000000+00:00", + "modifiedOn": "2021-04-01T22:00:00.0000000+00:00", + "computeType": "ComputeInstance", + "provisioningState": "Succeeded", + "properties": { + "vmSize": "STANDARD_NC6", + "subnet": "test-subnet-resource-id", + "applicationSharingPolicy": "Shared", + "sshSettings": { + "sshPublicAccess": "Enabled", + "adminUserName": "azureuser", + "sshPort": 22 + }, + "computeInstanceAuthorizationType": "personal", + "personalComputeInstanceSettings": { + "assignedUser": { + "objectId": "00000000-0000-0000-0000-000000000000", + "tenantId": "00000000-0000-0000-0000-000000000000" + } + }, + "createdBy": { + "userName": "foobar@microsoft.com", + "userOrgId": "00000000-0000-0000-0000-000000000000", + "userId": "00000000-0000-0000-0000-000000000000" + }, + "connectivityEndpoints": { + "publicIpAddress": "10.0.0.1", + "privateIpAddress": "10.0.0.1" + }, + "applications": [ + { + "displayName": "Jupyter", + "endpointUri": "https://compute123.eastus2.azureml.net/jupyter" + } + ], + "errors": null, + "state": "Running" + } + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/getComputes.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/getComputes.json new file mode 100644 index 000000000000..657146bbdf03 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/getComputes.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "api-version": "2021-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "description": "some compute", + "createdOn": "2021-04-01T22:00:00.0000000+00:00", + "modifiedOn": "2021-04-01T22:00:00.0000000+00:00", + "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute123-56826-c9b00420020b2", + "computeType": "AKS", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute1234", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute1234", + "location": "eastus", + "properties": { + "description": "some compute", + "createdOn": "2021-04-01T22:00:00.0000000+00:00", + "modifiedOn": "2021-04-01T22:00:00.0000000+00:00", + "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute1234-56826-c9b00420020b2", + "computeType": "AKS", + "provisioningState": "Succeeded" + } + } + ], + "nextLink": "nextLink" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/getService.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/getService.json new file mode 100644 index 000000000000..16e0b4b8f0f0 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/getService.json @@ -0,0 +1,157 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "api-version": "2021-04-01", + "serviceName": "service123" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/services/service123", + "type": "Microsoft.MachineLearningServices/workspaces/services", + "name": "service123", + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-02-03T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-02-04T02:03:01.1974346Z" + }, + "properties": { + "computeType": "AKS", + "containerResourceRequirements": { + "cpu": 0.1, + "memoryInGB": 0.5, + "gpu": null, + "fpga": null + }, + "maxConcurrentRequestsPerContainer": 1, + "maxQueueWaitMs": 500, + "computeName": "my-aks-compute", + "namespace": "azureml-workspaces123", + "numReplicas": 1, + "dataCollection": { + "eventHubEnabled": false, + "storageEnabled": false + }, + "appInsightsEnabled": true, + "autoScaler": { + "autoscaleEnabled": false, + "minReplicas": null, + "maxReplicas": null, + "targetUtilization": null, + "refreshPeriodInSeconds": null + }, + "scoringUri": "http://192.168.1.5:80/api/v1/service/service123/score", + "scoringTimeoutMs": null, + "livenessProbeRequirements": { + "failureThreshold": 3, + "successThreshold": 1, + "timeoutSeconds": 120, + "periodSeconds": 5, + "initialDelaySeconds": 310 + }, + "authEnabled": true, + "aadAuthEnabled": false, + "swaggerUri": "http://192.168.1.5/api/v1/service/service123/swagger.json", + "modelConfigMap": { + "accountContext": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "accountName": "workspaces123", + "workspaceId": "57b243e8-3d24-4427-90e0-8dc47f41c387" + }, + "models": { + "sklearn_regression_model1.pkl": { + "version": 2, + "id": "sklearn_regression_model1.pkl:2", + "internalId": "3ab27a5b0d0e48d99f18a5195cc258bc" + } + }, + "modelsInfo": { + "sklearn_regression_model1.pkl": { + "2": { + "version": 2, + "id": "sklearn_regression_model1.pkl:2", + "internalId": "3ab27a5b0d0e48d99f18a5195cc258bc", + "dataCollectorStoragePath": "/modeldata/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/testrg123/workspaces123/service123/sklearn_regression_model1.pkl/2/" + } + } + } + }, + "environmentImageRequest": { + "driverProgram": "score.py", + "assets": [ + { + "id": null, + "mimeType": "application/x-python", + "url": "aml://artifact/LocalUpload/200518T200218a1a8c0af/score.py", + "unpack": false + } + ], + "modelIds": [ + "sklearn_regression_model1.pkl:2" + ], + "environment": { + "name": "AzureML-Scikit-learn-0.20.3", + "version": "3", + "python": { + "interpreterPath": "python", + "userManagedDependencies": false, + "condaDependencies": { + "channels": [ + "conda-forge" + ], + "dependencies": [ + "python=3.6.2", + { + "pip": [ + "azureml-core==1.0.69", + "azureml-defaults==1.0.69", + "azureml-telemetry==1.0.69", + "azureml-train-restclients-hyperdrive==1.0.69", + "azureml-train-core==1.0.69", + "scikit-learn==0.20.3", + "scipy==1.2.1", + "numpy==1.16.2", + "joblib==0.13.2" + ] + } + ], + "name": "azureml_ae1acbe6e1e6aabbad900b53c491a17c" + }, + "baseCondaEnvironment": null + }, + "environmentVariables": { + "EXAMPLE_ENV_VAR": "EXAMPLE_VALUE" + }, + "docker": { + "baseImage": "mcr.microsoft.com/azureml/base:openmpi3.1.2-ubuntu16.04", + "baseDockerfile": null, + "baseImageRegistry": { + "address": null + } + }, + "spark": { + "repositories": [], + "packages": [], + "precachePackages": true + }, + "inferencingStackVersion": null + } + }, + "description": null, + "kvTags": {}, + "properties": { + "hasInferenceSchema": "False", + "hasHttps": "False" + }, + "state": "Healthy" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/getServices.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/getServices.json new file mode 100644 index 000000000000..9fa009beb772 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/getServices.json @@ -0,0 +1,282 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "api-version": "2021-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/services/service123", + "type": "Microsoft.MachineLearningServices/workspaces/services", + "name": "service123", + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-02-03T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-02-04T02:03:01.1974346Z" + }, + "properties": { + "computeType": "AKS", + "containerResourceRequirements": { + "cpu": 0.1, + "memoryInGB": 0.5, + "gpu": null, + "fpga": null + }, + "maxConcurrentRequestsPerContainer": 1, + "maxQueueWaitMs": 500, + "computeName": "my-aks-compute", + "namespace": "azureml-workspaces123", + "numReplicas": 1, + "dataCollection": { + "eventHubEnabled": false, + "storageEnabled": false + }, + "appInsightsEnabled": true, + "autoScaler": { + "autoscaleEnabled": false, + "minReplicas": null, + "maxReplicas": null, + "targetUtilization": null, + "refreshPeriodInSeconds": null + }, + "scoringUri": "http://192.168.1.5:80/api/v1/service/service123/score", + "scoringTimeoutMs": null, + "livenessProbeRequirements": { + "failureThreshold": 3, + "successThreshold": 1, + "timeoutSeconds": 120, + "periodSeconds": 5, + "initialDelaySeconds": 310 + }, + "authEnabled": true, + "aadAuthEnabled": false, + "swaggerUri": "http://192.168.1.5/api/v1/service/service123/swagger.json", + "modelConfigMap": { + "accountContext": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "accountName": "workspaces123", + "workspaceId": "57b243e8-3d24-4427-90e0-8dc47f41c387" + }, + "models": { + "sklearn_regression_model1.pkl": { + "version": 2, + "id": "sklearn_regression_model1.pkl:2", + "internalId": "3ab27a5b0d0e48d99f18a5195cc258bc" + } + }, + "modelsInfo": { + "sklearn_regression_model1.pkl": { + "2": { + "version": 2, + "id": "sklearn_regression_model1.pkl:2", + "internalId": "3ab27a5b0d0e48d99f18a5195cc258bc", + "dataCollectorStoragePath": "/modeldata/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/testrg123/workspaces123/service123/sklearn_regression_model1.pkl/2/" + } + } + } + }, + "environmentImageRequest": { + "driverProgram": "score.py", + "assets": [ + { + "id": null, + "mimeType": "application/x-python", + "url": "aml://artifact/LocalUpload/200518T200218a1a8c0af/score.py", + "unpack": false + } + ], + "modelIds": [ + "sklearn_regression_model1.pkl:2" + ], + "environment": { + "name": "AzureML-Scikit-learn-0.20.3", + "version": "3", + "python": { + "interpreterPath": "python", + "userManagedDependencies": false, + "condaDependencies": { + "channels": [ + "conda-forge" + ], + "dependencies": [ + "python=3.6.2", + { + "pip": [ + "azureml-core==1.0.69", + "azureml-defaults==1.0.69", + "azureml-telemetry==1.0.69", + "azureml-train-restclients-hyperdrive==1.0.69", + "azureml-train-core==1.0.69", + "scikit-learn==0.20.3", + "scipy==1.2.1", + "numpy==1.16.2", + "joblib==0.13.2" + ] + } + ], + "name": "azureml_ae1acbe6e1e6aabbad900b53c491a17c" + }, + "baseCondaEnvironment": null + }, + "environmentVariables": { + "EXAMPLE_ENV_VAR": "EXAMPLE_VALUE" + }, + "docker": { + "baseImage": "mcr.microsoft.com/azureml/base:openmpi3.1.2-ubuntu16.04", + "baseDockerfile": null, + "baseImageRegistry": { + "address": null + } + }, + "spark": { + "repositories": [], + "packages": [], + "precachePackages": true + }, + "inferencingStackVersion": null + } + }, + "description": null, + "kvTags": {}, + "properties": { + "hasInferenceSchema": "False", + "hasHttps": "False" + }, + "state": "Healthy" + } + }, + { + "id": "subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/services/service456", + "type": "Microsoft.MachineLearningServices/workspaces/services", + "name": "service456", + "properties": { + "computeType": "ACI", + "containerResourceRequirements": { + "cpu": 0.1, + "memoryInGB": 0.5, + "gpu": null, + "fpga": null + }, + "scoringUri": "http://ddde8e29-3e3a-42d2-980d-8fb7e005ab81.eastus2.azurecontainer.io/score", + "location": "eastus2", + "authEnabled": true, + "sslEnabled": false, + "appInsightsEnabled": true, + "dataCollection": { + "eventHubEnabled": false, + "storageEnabled": false + }, + "sslCertificate": "", + "sslKey": "", + "cname": null, + "publicIp": "52.177.232.98", + "publicFqdn": "ddde8e29-3e3a-42d2-980d-8fb7e005ab81.eastus2.azurecontainer.io", + "modelConfigMap": { + "accountContext": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "accountName": "workspaces123", + "workspaceId": "57b243e8-3d24-4427-90e0-8dc47f41c387" + }, + "models": { + "sklearn_regression_model1.pkl": { + "version": 2, + "id": "sklearn_regression_model1.pkl:2", + "internalId": "3ab27a5b0d0e48d99f18a5195cc258bc" + } + }, + "modelsInfo": { + "sklearn_regression_model1.pkl": { + "2": { + "version": 2, + "id": "sklearn_regression_model1.pkl:2", + "internalId": "3ab27a5b0d0e48d99f18a5195cc258bc", + "dataCollectorStoragePath": "/modeldata/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/testrg123/workspaces123/service123/sklearn_regression_model1.pkl/2/" + } + } + } + }, + "environmentImageRequest": { + "driverProgram": "score.py", + "assets": [ + { + "id": null, + "mimeType": "application/x-python", + "url": "aml://artifact/LocalUpload/200518T200218a1a8c0af/score.py", + "unpack": false + } + ], + "modelIds": [ + "sklearn_regression_model1.pkl:2" + ], + "environment": { + "name": "AzureML-Scikit-learn-0.20.3", + "version": "3", + "python": { + "interpreterPath": "python", + "userManagedDependencies": false, + "condaDependencies": { + "channels": [ + "conda-forge" + ], + "dependencies": [ + "python=3.6.2", + { + "pip": [ + "azureml-core==1.0.69", + "azureml-defaults==1.0.69", + "azureml-telemetry==1.0.69", + "azureml-train-restclients-hyperdrive==1.0.69", + "azureml-train-core==1.0.69", + "scikit-learn==0.20.3", + "scipy==1.2.1", + "numpy==1.16.2", + "joblib==0.13.2" + ] + } + ], + "name": "azureml_ae1acbe6e1e6aabbad900b53c491a17c" + }, + "baseCondaEnvironment": null + }, + "environmentVariables": { + "EXAMPLE_ENV_VAR": "EXAMPLE_VALUE" + }, + "docker": { + "baseImage": "mcr.microsoft.com/azureml/base:openmpi3.1.2-ubuntu16.04", + "baseDockerfile": null, + "baseImageRegistry": { + "address": null + } + }, + "spark": { + "repositories": [], + "packages": [], + "precachePackages": true + }, + "inferencingStackVersion": null + } + }, + "description": null, + "kvTags": {}, + "properties": { + "hasInferenceSchema": "False", + "hasHttps": "False" + }, + "state": "Healthy" + } + } + ], + "nextLink": "nextLink" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/getWorkspace.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/getWorkspace.json new file mode 100644 index 000000000000..593ced4b17f0 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/getWorkspace.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workspace-1234", + "workspaceName": "testworkspace", + "api-version": "2021-04-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "identity": { + "principalId": "00000000-1111-2222-3333-444444444444", + "tenantId": "00000000-1111-2222-3333-444444444444", + "type": "SystemAssigned,UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testuai": { + "principalId": "00000000-1111-2222-3333-444444444444", + "clientId": "00000000-1111-2222-3333-444444444444", + "tenantId": "00000000-1111-2222-3333-444444444444" + } + } + }, + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "friendlyName": "HelloName", + "description": "test description", + "encryption": { + "status": "Enabled", + "identity": { + "userAssignedIdentity": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testuai" + }, + "keyVaultProperties": { + "keyVaultArmId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "keyIdentifier": "https://testkv.vault.azure.net/keys/testkey/aabbccddee112233445566778899aabb", + "identityClientId": "" + } + }, + "hbiWorkspace": false, + "serviceProvisionedResourceGroup": "testworkspace_0000111122223333", + "privateLinkCount": 0, + "allowPublicAccessWhenBehindVnet": false, + "imageBuildCompute": "testcompute", + "privateEndpointConnections": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/privateEndpointConnections/testprivatelinkconnection", + "name": "testprivatelinkconnection", + "type": "Microsoft.MachineLearningServices/workspaces/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg-1234/providers/Microsoft.Network/privateEndpoints/petest01" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionsRequired": "None" + } + } + } + ], + "sharedPrivateLinkResources": [ + { + "name": "testcosmosdbresource", + "properties": { + "privateLinkResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.DocumentDB/databaseAccounts/testcosmosdbresource/privateLinkResources/Sql", + "groupId": "Sql", + "requestMessage": "Please approve", + "status": "Approved" + } + } + ] + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/getWorkspaceConnection.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/getWorkspaceConnection.json new file mode 100644 index 000000000000..9c8ea2587b37 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/getWorkspaceConnection.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup-1", + "workspaceName": "workspace-1", + "connectionName": "connection-1", + "api-version": "2021-04-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1/providers/Microsoft.MachineLearningServices/workspaces/workspace-1/connections/connection-1", + "name": "connection-1", + "type": "Microsoft.MachineLearningServices/workspaces/connections", + "properties": { + "category": "ACR", + "target": "www.facebook.com", + "authType": "PAT", + "value": "secrets" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/getWorkspacesByResourceGroup.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/getWorkspacesByResourceGroup.json new file mode 100644 index 000000000000..5ee3757f2018 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/getWorkspacesByResourceGroup.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workspace-1234", + "api-version": "2021-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "friendlyName": "HelloName", + "description": "test description" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace1", + "name": "testworkspace1", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistryNew", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkvNew", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccountOld", + "discoveryUrl": "http://example.com", + "friendlyName": "HelloName 1", + "description": "test description" + } + } + ], + "nextLink": "nextLink" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/getWorkspacesBySubscription.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/getWorkspacesBySubscription.json new file mode 100644 index 000000000000..066261e0c0a9 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/getWorkspacesBySubscription.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "api-version": "2021-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "friendlyName": "HelloName", + "description": "test description" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-5678/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistryNew", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkvNew", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccountOld", + "discoveryUrl": "http://example.com", + "friendlyName": "HelloName", + "description": "test description" + } + } + ], + "nextLink": "nextLink" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/listKeysAKSCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/listKeysAKSCompute.json new file mode 100644 index 000000000000..93b7281ad70c --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/listKeysAKSCompute.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2021-04-01" + }, + "responses": { + "200": { + "body": { + "computeType": "AKS", + "userKubeConfig": "user kube config...", + "adminKubeConfig": "admin kube config...", + "imagePullSecretName": "the image pull secret name" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/listNotebookAccessToken.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/listNotebookAccessToken.json new file mode 100644 index 000000000000..d2aa56f56020 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/listNotebookAccessToken.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workspace-1234", + "workspaceName": "testworkspace", + "api-version": "2021-04-01" + }, + "responses": { + "200": { + "body": { + "notebookResourceId": "94350843095843059", + "hostName": "Host product name", + "publicDns": "resource.notebooks.azure.net", + "tokenType": "Bearer", + "expiresIn": 28800.0, + "scope": "aznb_identity" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/listNotebookKeys.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/listNotebookKeys.json new file mode 100644 index 000000000000..4abc178d2897 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/listNotebookKeys.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "api-version": "2021-04-01" + }, + "responses": { + "200": { + "body": { + "primaryAccessKey": null, + "secondaryAccessKey": null + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/listStorageAccountKeys.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/listStorageAccountKeys.json new file mode 100644 index 000000000000..01d212d17a90 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/listStorageAccountKeys.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "api-version": "2021-04-01" + }, + "responses": { + "200": { + "body": { + "userStorageKey": null + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/listWorkspaceConnections.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/listWorkspaceConnections.json new file mode 100644 index 000000000000..9fcb9a44d569 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/listWorkspaceConnections.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup-1", + "workspaceName": "workspace-1", + "api-version": "2021-04-01", + "target": "www.facebook.com", + "category": "ACR" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1/providers/Microsoft.MachineLearningServices/workspaces/workspace-1/linkedWorkspaces/connection-1", + "name": "connection-1", + "type": "Microsoft.MachineLearningServices/workspaces/connections", + "properties": { + "category": "ACR", + "target": "www.facebook.com", + "authType": "PAT", + "value": "secrets" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup-1/providers/Microsoft.MachineLearningServices/workspaces/workspace-1/linkedWorkspaces/connection-2", + "name": "connection-2", + "type": "Microsoft.MachineLearningServices/workspaces/connections", + "properties": { + "category": "ACR", + "target": "www.facebook.com", + "authType": "PAT", + "value": "secrets" + } + } + ] + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/listWorkspaceKeys.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/listWorkspaceKeys.json new file mode 100644 index 000000000000..3ad2001d73a1 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/listWorkspaceKeys.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "api-version": "2021-04-01" + }, + "responses": { + "200": { + "body": { + "userStorageKey": null, + "userStorageResourceId": "/subscriptions/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/resourceGroups/ragargeastus2euap/providers/Microsoft.Storage/storageAccounts/testdemoworkazashomr", + "appInsightsInstrumentationKey": null, + "containerRegistryCredentials": { + "location": null, + "username": "testdemoworkjmjmeykp", + "passwords": [ + { + "name": "password", + "value": "" + }, + { + "name": "password2", + "value": "0KARRQoQHSUq1yViPWg7YFernOS=Ic/t" + } + ] + }, + "notebookAccessKeys": { + "primaryAccessKey": null, + "secondaryAccessKey": null + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/patchAmlCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/patchAmlCompute.json new file mode 100644 index 000000000000..10b2d05e1594 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/patchAmlCompute.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2021-04-01", + "parameters": { + "properties": { + "scaleSettings": { + "maxNodeCount": 4, + "minNodeCount": 4, + "nodeIdleTimeBeforeScaleDown": "PT5M" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus2", + "properties": { + "description": "some compute", + "computeType": "AmlCompute", + "provisioningState": "Updating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/restartComputeInstance.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/restartComputeInstance.json new file mode 100644 index 000000000000..14ed35e2d8c2 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/restartComputeInstance.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2021-04-01" + }, + "responses": { + "200": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/resyncWorkspaceKeys.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/resyncWorkspaceKeys.json new file mode 100644 index 000000000000..0f541acd48a5 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/resyncWorkspaceKeys.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "api-version": "2021-04-01" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/startComputeInstance.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/startComputeInstance.json new file mode 100644 index 000000000000..cfcd3c6a0a65 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/startComputeInstance.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2021-04-01" + }, + "responses": { + "202": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/stopComputeInstance.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/stopComputeInstance.json new file mode 100644 index 000000000000..cfcd3c6a0a65 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/stopComputeInstance.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2021-04-01" + }, + "responses": { + "202": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/updateAKSCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/updateAKSCompute.json new file mode 100644 index 000000000000..5472e4dd1829 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/updateAKSCompute.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2021-04-01", + "parameters": { + "location": "eastus", + "properties": { + "description": "some compute", + "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute123-56826-c9b00420020b2", + "computeType": "AKS", + "properties": { + "agentCount": 4 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "description": "some compute", + "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute123-56826-c9b00420020b2", + "computeType": "AKS", + "provisioningState": "Updating" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "description": "some compute", + "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute123-56826-c9b00420020b2", + "computeType": "AKS", + "provisioningState": "Updating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/updateAmlCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/updateAmlCompute.json new file mode 100644 index 000000000000..aa6d97c43858 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/updateAmlCompute.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2021-04-01", + "parameters": { + "location": "eastus", + "properties": { + "computeType": "AmlCompute", + "description": "some compute", + "properties": { + "scaleSettings": { + "maxNodeCount": 4, + "minNodeCount": 4, + "nodeIdleTimeBeforeScaleDown": "PT5M" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus2", + "properties": { + "description": "some compute", + "computeType": "AmlCompute", + "provisioningState": "Updating" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus2", + "properties": { + "description": "some compute", + "computeType": "AmlCompute", + "provisioningState": "Updating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/updateQuota.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/updateQuota.json new file mode 100644 index 000000000000..6d6387350f36 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/updateQuota.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "eastus", + "api-version": "2021-04-01", + "parameters": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 100, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 200, + "unit": "Count" + } + ] + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 100, + "unit": "Count", + "status": "Success" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 200, + "unit": "Count", + "status": "Success" + } + ] + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/updateWorkspace.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/updateWorkspace.json new file mode 100644 index 000000000000..94a938bc46e3 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/updateWorkspace.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workspace-1234", + "workspaceName": "testworkspace", + "api-version": "2021-04-01", + "parameters": { + "properties": { + "friendlyName": "New friendly name", + "description": "new description" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "identity": { + "principalId": "00000000-1111-2222-3333-444444444444", + "tenantId": "00000000-1111-2222-3333-444444444444", + "type": "SystemAssigned" + }, + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "friendlyName": "New friendly name", + "description": "new description" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/workspaceDeletePrivateEndpointConnection.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/workspaceDeletePrivateEndpointConnection.json new file mode 100644 index 000000000000..9d97638f0312 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/workspaceDeletePrivateEndpointConnection.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg-1234", + "workspaceName": "testworkspace", + "privateEndpointConnectionName": "{privateEndpointConnectionName}", + "api-version": "2021-04-01", + "monitor": "true" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/workspaceGetPrivateEndpointConnection.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/workspaceGetPrivateEndpointConnection.json new file mode 100644 index 000000000000..832e9bcc718f --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/workspaceGetPrivateEndpointConnection.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg-1234", + "workspaceName": "testworkspace", + "privateEndpointConnectionName": "{privateEndpointConnectionName}", + "api-version": "2021-04-01", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/privateEndpointConnections/{privateEndpointConnectionName}", + "name": "{privateEndpointConnectionName}", + "type": "Microsoft.MachineLearningServices/workspaces/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg-1234/providers/Microsoft.Network/privateEndpoints/petest01" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/workspaceListPrivateLinkResources.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/workspaceListPrivateLinkResources.json new file mode 100644 index 000000000000..f2be95d4b53a --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/workspaceListPrivateLinkResources.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg-1234", + "workspaceName": "testworkspace", + "api-version": "2021-04-01", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/privateLinkResources/amlworkspace", + "name": "amlworkspace", + "type": "Microsoft.Storage/workspaces/privateLinkResources", + "properties": { + "groupId": "amlworkspace", + "requiredMembers": [ + "default" + ] + } + } + ] + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/workspacePrepareNotebook.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/workspacePrepareNotebook.json new file mode 100644 index 000000000000..b70e6f184550 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/workspacePrepareNotebook.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "api-version": "2021-04-01" + }, + "responses": { + "200": { + "body": { + "resourceId": "aabbccddee112233445566778899", + "fqdn": "testnotebook.notebooks.azure.com", + "notebookPreparationError": { + "statusCode": 500, + "errorMessage": "general error" + } + } + }, + "202": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/workspacePutPrivateEndpointConnection.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/workspacePutPrivateEndpointConnection.json new file mode 100644 index 000000000000..292c8cc49442 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/examples/workspacePutPrivateEndpointConnection.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg-1234", + "workspaceName": "testworkspace", + "privateEndpointConnectionName": "{privateEndpointConnectionName}", + "api-version": "2021-04-01", + "monitor": "true", + "properties": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/privateEndpointConnections/{privateEndpointConnectionName}", + "name": "{privateEndpointConnectionName}", + "type": "Microsoft.MachineLearningServices/workspaces/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg-1234/providers/Microsoft.Network/privateEndpoints/petest01" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/machineLearningServices.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/machineLearningServices.json new file mode 100644 index 000000000000..2f6b62c632cf --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2021-04-01/machineLearningServices.json @@ -0,0 +1,6665 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Machine Learning Workspaces", + "description": "These APIs allow end users to operate on Azure Machine Learning Workspace resources.", + "version": "2021-04-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/providers/Microsoft.MachineLearningServices/operations": { + "get": { + "tags": [ + "Operation" + ], + "description": "Lists all of the available Azure Machine Learning Workspaces REST API operations.", + "operationId": "Operations_List", + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}": { + "get": { + "tags": [ + "Workspaces" + ], + "description": "Gets the properties of the specified machine learning workspace.", + "operationId": "Workspaces_Get", + "x-ms-examples": { + "Get Workspace": { + "$ref": "./examples/getWorkspace.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + }, + "put": { + "tags": [ + "Workspaces" + ], + "description": "Creates or updates a workspace with the specified parameters.", + "operationId": "Workspaces_CreateOrUpdate", + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create Workspace": { + "$ref": "./examples/createWorkspace.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "description": "The parameters for creating or updating a machine learning workspace.", + "required": true, + "schema": { + "$ref": "#/definitions/Workspace" + } + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "201": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "202": { + "description": "The request was successful; the request was well-formed and received properly." + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + }, + "delete": { + "tags": [ + "Workspaces" + ], + "description": "Deletes a machine learning workspace.", + "operationId": "Workspaces_Delete", + "x-ms-examples": { + "Delete Workspace": { + "$ref": "./examples/deleteWorkspace.json" + } + }, + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly." + }, + "202": { + "description": "The request was accepted; the request was well-formed and received properly." + }, + "204": { + "description": "The machine learning workspace does not exist in the subscription." + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + }, + "patch": { + "tags": [ + "Workspaces" + ], + "description": "Updates a machine learning workspace with the specified parameters.", + "operationId": "Workspaces_Update", + "x-ms-examples": { + "Update Workspace": { + "$ref": "./examples/updateWorkspace.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "description": "The parameters for updating a machine learning workspace.", + "required": true, + "schema": { + "$ref": "#/definitions/WorkspaceUpdateParameters" + } + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/features": { + "get": { + "tags": [ + "Workspaces" + ], + "description": "Lists all enabled features for a workspace", + "operationId": "WorkspaceFeatures_List", + "x-ms-examples": { + "List Workspace features": { + "$ref": "./examples/ListWorkspaceFeatures.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/ListAmlUserFeatureResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces": { + "get": { + "tags": [ + "Workspaces" + ], + "description": "Lists all the available machine learning workspaces under the specified resource group.", + "operationId": "Workspaces_ListByResourceGroup", + "x-ms-examples": { + "Get Workspaces by Resource Group": { + "$ref": "./examples/getWorkspacesByResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/PaginationParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/WorkspaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/listKeys": { + "post": { + "tags": [ + "Workspaces" + ], + "description": "Lists all the keys associated with this workspace. This includes keys for the storage account, app insights and password for container registry", + "operationId": "Workspaces_ListKeys", + "x-ms-examples": { + "List Workspace Keys": { + "$ref": "./examples/listWorkspaceKeys.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/ListWorkspaceKeysResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/resyncKeys": { + "post": { + "tags": [ + "Workspaces" + ], + "description": "Resync all the keys associated with this workspace. This includes keys for the storage account, app insights and password for container registry", + "operationId": "Workspaces_ResyncKeys", + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Resync Workspace Keys": { + "$ref": "./examples/resyncWorkspaceKeys.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly." + }, + "202": { + "description": "The request was accepted; the request was well-formed and received properly." + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/locations/{location}/usages": { + "get": { + "tags": [ + "Usage" + ], + "operationId": "Usages_List", + "description": "Gets the current usage information as well as limits for AML resources for given subscription and location.", + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location for which resource usage is queried.", + "pattern": "^[-\\w\\._]+$" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ListUsagesResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Usages": { + "$ref": "./examples/ListUsages.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/locations/{location}/vmSizes": { + "get": { + "tags": [ + "VirtualMachineSizes" + ], + "operationId": "VirtualMachineSizes_List", + "description": "Returns supported VM Sizes in a location", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location upon which virtual-machine-sizes is queried.", + "pattern": "^[-\\w\\._]+$" + }, + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineSizeListResult" + } + } + }, + "x-ms-examples": { + "List VM Sizes": { + "$ref": "./examples/ListVMSizesResult.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/locations/{location}/updateQuotas": { + "post": { + "tags": [ + "Quota" + ], + "operationId": "Quotas_Update", + "description": "Update quota for each VM family in workspace.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location for update quota is queried.", + "pattern": "^[-\\w\\._]+$" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/QuotaUpdateParameters" + }, + "description": "Quota update parameters." + }, + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful.", + "schema": { + "$ref": "#/definitions/UpdateWorkspaceQuotasResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + }, + "x-ms-examples": { + "update quotas": { + "$ref": "./examples/updateQuota.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/locations/{location}/quotas": { + "get": { + "tags": [ + "Quota" + ], + "operationId": "Quotas_List", + "description": "Gets the currently assigned Workspace Quotas based on VMFamily.", + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location for which resource usage is queried.", + "pattern": "^[-\\w\\._]+$" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ListWorkspaceQuotas" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List workspace quotas by VMFamily": { + "$ref": "./examples/ListWorkspaceQuotasByVMFamily.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/workspaces": { + "get": { + "tags": [ + "Workspaces" + ], + "description": "Lists all the available machine learning workspaces under the specified subscription.", + "operationId": "Workspaces_ListBySubscription", + "x-ms-examples": { + "Get Workspaces by subscription": { + "$ref": "./examples/getWorkspacesBySubscription.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/PaginationParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/WorkspaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/computes": { + "get": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "operationId": "MachineLearningCompute_ListByWorkspace", + "description": "Gets computes in specified workspace.", + "x-ms-examples": { + "Get Computes": { + "$ref": "./examples/getComputes.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/PaginationParameter" + } + ], + "responses": { + "200": { + "description": "The response includes a paginated array of Machine Learning computes and a URI to the next set of results, if any. For the more information the limits of the number of items in a resource group, see https://azure.microsoft.com/en-us/documentation/articles/azure-subscription-service-limits/.", + "schema": { + "$ref": "#/definitions/PaginatedComputeResourcesList" + } + }, + "default": { + "description": "Error response describing why the request failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/computes/{computeName}": { + "get": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "operationId": "MachineLearningCompute_Get", + "description": "Gets compute definition by its name. Any secrets (storage keys, service credentials, etc) are not returned - use 'keys' nested resource to get them.", + "x-ms-examples": { + "Get a AKS Compute": { + "$ref": "./examples/getAKSCompute.json" + }, + "Get a AML Compute": { + "$ref": "./examples/getAmlCompute.json" + }, + "Get an ComputeInstance": { + "$ref": "./examples/getComputeInstance.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success.", + "schema": { + "$ref": "#/definitions/ComputeResource" + } + }, + "default": { + "description": "Error response describing why the request failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + }, + "put": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "operationId": "MachineLearningCompute_CreateOrUpdate", + "description": "Creates or updates compute. This call will overwrite a compute if it exists. This is a nonrecoverable operation. If your intent is to create a new compute, do a GET first to verify that it does not exist yet.", + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create a AML Compute": { + "$ref": "./examples/createBasicAmlCompute.json" + }, + "Create an ComputeInstance Compute with minimal inputs": { + "$ref": "./examples/createComputeInstanceMinimal.json" + }, + "Create an ComputeInstance Compute": { + "$ref": "./examples/createComputeInstance.json" + }, + "Create AKS Compute": { + "$ref": "./examples/createBasicAKSCompute.json" + }, + "Create a DataFactory Compute": { + "$ref": "./examples/createBasicDataFactoryCompute.json" + }, + "Update a AML Compute": { + "$ref": "./examples/updateAmlCompute.json" + }, + "Update a AKS Compute": { + "$ref": "./examples/updateAKSCompute.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/ComputeDefinitionParameter" + } + ], + "responses": { + "200": { + "description": "Compute creation or update initiated.", + "schema": { + "$ref": "#/definitions/ComputeResource" + } + }, + "201": { + "description": "Compute creation or update initiated.", + "headers": { + "Azure-AsyncOperation": { + "description": "URI to poll for asynchronous operation status.", + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/ComputeResource" + } + }, + "default": { + "description": "Error response describing why the request failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + }, + "patch": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "operationId": "MachineLearningCompute_Update", + "description": "Updates properties of a compute. This call will overwrite a compute if it exists. This is a nonrecoverable operation.", + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update a AmlCompute Compute": { + "$ref": "./examples/patchAmlCompute.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ClusterUpdateParameters" + }, + "description": "Additional parameters for cluster update." + } + ], + "responses": { + "200": { + "description": "Compute update initiated.", + "schema": { + "$ref": "#/definitions/ComputeResource" + } + }, + "default": { + "description": "Error response describing why the request failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + }, + "delete": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "operationId": "MachineLearningCompute_Delete", + "description": "Deletes specified Machine Learning compute.", + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete Compute": { + "$ref": "./examples/deleteCompute.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/UnderlyingResourceActionParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly." + }, + "202": { + "description": "Compute deletion initiated.", + "headers": { + "Azure-AsyncOperation": { + "description": "URI to poll for asynchronous operation status.", + "type": "string" + }, + "Location": { + "description": "URI to poll for asynchronous operation result.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the request failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/computes/{computeName}/listNodes": { + "post": { + "tags": [ + "MachineLearningComputes" + ], + "operationId": "MachineLearningCompute_ListNodes", + "description": "Get the details (e.g IP address, port etc) of all the compute nodes in the compute.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful. The response contains the list of IP addresses.", + "schema": { + "$ref": "#/definitions/AmlComputeNodesInformation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink", + "itemName": "nodes" + }, + "x-ms-examples": { + "Get compute nodes information for a compute": { + "$ref": "./examples/amlComputeListNodes.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/listNotebookAccessToken": { + "post": { + "tags": [ + "Workspaces" + ], + "description": "return notebook access token and refresh token", + "operationId": "Workspaces_ListNotebookAccessToken", + "x-ms-examples": { + "List Workspace Keys": { + "$ref": "./examples/listNotebookAccessToken.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/NotebookAccessTokenResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/computes/{computeName}/listKeys": { + "post": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "operationId": "MachineLearningCompute_ListKeys", + "description": "Gets secrets related to Machine Learning compute (storage keys, service credentials, etc).", + "x-ms-examples": { + "List AKS Compute Keys": { + "$ref": "./examples/listKeysAKSCompute.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success.", + "schema": { + "$ref": "#/definitions/ComputeSecrets" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/computes/{computeName}/start": { + "post": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "operationId": "MachineLearningCompute_Start", + "description": "Posts a start action to a compute instance", + "x-ms-examples": { + "Start ComputeInstance Compute": { + "$ref": "./examples/startComputeInstance.json" + } + }, + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "202": { + "description": "Success." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/computes/{computeName}/stop": { + "post": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "operationId": "MachineLearningCompute_Stop", + "description": "Posts a stop action to a compute instance", + "x-ms-examples": { + "Stop ComputeInstance Compute": { + "$ref": "./examples/stopComputeInstance.json" + } + }, + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "202": { + "description": "Success." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/computes/{computeName}/restart": { + "post": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "operationId": "MachineLearningCompute_Restart", + "description": "Posts a restart action to a compute instance", + "x-ms-examples": { + "Restart ComputeInstance Compute": { + "$ref": "./examples/restartComputeInstance.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/workspaces/skus": { + "get": { + "tags": [ + "WorkspaceSkus" + ], + "description": "Lists all skus with associated features", + "operationId": "Workspace_ListSkus", + "x-ms-examples": { + "List Skus": { + "$ref": "./examples/ListSkus.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/SkuListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "WorkspacePrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Get", + "description": "Gets the specified private endpoint connection associated with the workspace.", + "x-ms-examples": { + "WorkspaceGetPrivateEndpointConnection": { + "$ref": "./examples/workspaceGetPrivateEndpointConnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionName" + }, + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Get the private endpoint connection properties successfully.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + }, + "put": { + "tags": [ + "WorkspacePrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Put", + "description": "Update the state of specified private endpoint connection associated with the workspace.", + "x-ms-examples": { + "WorkspacePutPrivateEndpointConnection": { + "$ref": "./examples/workspacePutPrivateEndpointConnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionName" + }, + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "name": "properties", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "The private endpoint connection properties." + } + ], + "responses": { + "200": { + "description": "OK -- Update the private endpoint connection properties successfully.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + }, + "delete": { + "tags": [ + "WorkspacePrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Delete", + "description": "Deletes the specified private endpoint connection associated with the workspace.", + "x-ms-examples": { + "WorkspaceDeletePrivateEndpointConnection": { + "$ref": "./examples/workspaceDeletePrivateEndpointConnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionName" + }, + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Delete the private endpoint connection successfully." + }, + "204": { + "description": "No Content -- The private endpoint connection does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/privateLinkResources": { + "get": { + "tags": [ + "WorkspacePrivateLinkResources" + ], + "operationId": "PrivateLinkResources_ListByWorkspace", + "description": "Gets the private link resources that need to be created for a workspace.", + "x-ms-examples": { + "WorkspaceListPrivateLinkResources": { + "$ref": "./examples/workspaceListPrivateLinkResources.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private link resources.", + "schema": { + "$ref": "#/definitions/PrivateLinkResourceListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/services": { + "get": { + "tags": [ + "MachineLearningServices" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "operationId": "MachineLearningService_ListByWorkspace", + "description": "Gets services in specified workspace.", + "x-ms-examples": { + "Get Services": { + "$ref": "./examples/getServices.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/PaginationParameter" + }, + { + "$ref": "#/parameters/ModelIdParameter" + }, + { + "$ref": "#/parameters/ModelNameParameter" + }, + { + "$ref": "#/parameters/WebServiceTagParameter" + }, + { + "$ref": "#/parameters/WebServiceTagsParameter" + }, + { + "$ref": "#/parameters/WebServicePropertiesParameter" + }, + { + "$ref": "#/parameters/WebServiceRunIdParameter" + }, + { + "$ref": "#/parameters/WebServiceExpandParameter" + }, + { + "$ref": "#/parameters/WebServiceOrderByParameter" + } + ], + "responses": { + "200": { + "description": "The response includes a paginated array of Machine Learning services and a URI to the next set of results, if any. For the more information the limits of the number of items in a resource group, see https://azure.microsoft.com/en-us/documentation/articles/azure-subscription-service-limits/.", + "schema": { + "$ref": "#/definitions/PaginatedServiceList" + } + }, + "default": { + "description": "Error response describing why the request failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/services/{serviceName}": { + "get": { + "tags": [ + "MachineLearningServices" + ], + "operationId": "MachineLearningService_Get", + "description": "Get a Service by name.", + "x-ms-examples": { + "Get Service": { + "$ref": "./examples/getService.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/WebServiceNameParameter" + }, + { + "in": "query", + "name": "expand", + "description": "Set to True to include Model details.", + "type": "boolean", + "default": false + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ServiceResource" + } + }, + "default": { + "description": "Error response describing why the request failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + }, + "delete": { + "tags": [ + "MachineLearningServices" + ], + "operationId": "MachineLearningService_Delete", + "description": "Delete a specific Service..", + "x-ms-examples": { + "Delete Service": { + "$ref": "./examples/deleteService.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/WebServiceNameParameter" + } + ], + "responses": { + "200": { + "description": "The resource exists and was deleted successfully." + }, + "204": { + "description": "The resource does not exist and the request was well formed." + }, + "default": { + "description": "Error response describing why the request failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + }, + "put": { + "tags": [ + "MachineLearningServices" + ], + "description": "Creates or updates service. This call will update a service if it exists. This is a nonrecoverable operation. If your intent is to create a new service, do a GET first to verify that it does not exist yet.", + "operationId": "MachineLearningService_CreateOrUpdate", + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create Or Update service": { + "$ref": "./examples/createOrUpdateService.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/WebServiceNameParameter" + }, + { + "in": "body", + "name": "properties", + "description": "The payload that is used to create or update the Service.", + "required": true, + "schema": { + "$ref": "#/definitions/CreateServiceRequest" + } + } + ], + "responses": { + "200": { + "description": "Service creation or update initiated.", + "schema": { + "$ref": "#/definitions/ServiceResource" + } + }, + "201": { + "description": "Service creation or update initiated.", + "headers": { + "Azure-AsyncOperation": { + "description": "URI to poll for asynchronous operation status.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/prepareNotebook": { + "post": { + "tags": [ + "ProxyOperations" + ], + "operationId": "Notebooks_Prepare", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Prepare Notebook": { + "$ref": "./examples/workspacePrepareNotebook.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/NotebookResourceInfo" + } + }, + "202": { + "description": "The request was successful; the request was well-formed and received properly." + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/listStorageAccountKeys": { + "post": { + "tags": [ + "ProxyOperations" + ], + "operationId": "StorageAccount_ListKeys", + "x-ms-examples": { + "List Workspace Keys": { + "$ref": "./examples/listStorageAccountKeys.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/ListStorageAccountKeysResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/listNotebookKeys": { + "post": { + "tags": [ + "ProxyOperations" + ], + "operationId": "Notebooks_ListKeys", + "x-ms-examples": { + "List Workspace Keys": { + "$ref": "./examples/listNotebookKeys.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/ListNotebookKeysResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/connections": { + "get": { + "tags": [ + "WorkspaceConnections" + ], + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "ListWorkspaceConnections": { + "$ref": "./examples/listWorkspaceConnections.json" + } + }, + "operationId": "WorkspaceConnections_List", + "description": "List all connections under a AML workspace.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/TargetParameter" + }, + { + "$ref": "#/parameters/CategoryParameter" + } + ], + "responses": { + "200": { + "description": "The response includes a paginated array of Workspace connections and a URI to the next set of results, if any. For the more information the limits of the number of items in a resource group, see https://azure.microsoft.com/en-us/documentation/articles/azure-subscription-service-limits/.", + "schema": { + "$ref": "#/definitions/PaginatedWorkspaceConnectionsList" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/connections/{connectionName}": { + "put": { + "tags": [ + "WorkspaceConnections" + ], + "operationId": "WorkspaceConnections_Create", + "description": "Add a new workspace connection.", + "x-ms-examples": { + "CreateWorkspaceConnection": { + "$ref": "./examples/createWorkspaceConnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ConnectionName" + }, + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "description": "The object for creating or updating a new workspace connection", + "required": true, + "schema": { + "$ref": "#/definitions/WorkspaceConnectionDto" + } + } + ], + "responses": { + "200": { + "description": "Successfully created the workspace connection.", + "schema": { + "$ref": "#/definitions/WorkspaceConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + }, + "get": { + "tags": [ + "WorkspaceConnections" + ], + "operationId": "WorkspaceConnections_Get", + "description": "Get the detail of a workspace connection.", + "x-ms-examples": { + "GetWorkspaceConnection": { + "$ref": "./examples/getWorkspaceConnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ConnectionName" + }, + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the detail of the linked workspace.", + "schema": { + "$ref": "#/definitions/WorkspaceConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + }, + "delete": { + "tags": [ + "WorkspaceConnections" + ], + "operationId": "WorkspaceConnections_Delete", + "description": "Delete a workspace connection.", + "x-ms-examples": { + "DeleteWorkspaceConnection": { + "$ref": "./examples/deleteWorkspaceConnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ConnectionName" + }, + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the workspace connection." + }, + "204": { + "description": "Specific workspace connection not found." + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "description": "Azure subscription identifier.", + "in": "path", + "type": "string", + "required": true + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "description": "Name of the resource group in which workspace is located.", + "in": "path", + "type": "string", + "required": true, + "x-ms-parameter-location": "method" + }, + "WorkspaceNameParameter": { + "name": "workspaceName", + "description": "Name of Azure Machine Learning workspace.", + "in": "path", + "type": "string", + "required": true, + "x-ms-parameter-location": "method" + }, + "ComputeNameParameter": { + "name": "computeName", + "description": "Name of the Azure Machine Learning compute.", + "in": "path", + "type": "string", + "required": true, + "x-ms-parameter-location": "method" + }, + "AsyncOperationIdParameter": { + "name": "asyncOperationId", + "description": "Identifier of an asynchronous Azure Machine Learning compute operation.", + "in": "path", + "type": "string", + "required": true, + "x-ms-parameter-location": "method" + }, + "LocationParameter": { + "name": "location", + "description": "The name of the Azure location/region.", + "in": "path", + "type": "string", + "required": true, + "x-ms-parameter-location": "method" + }, + "APIVersionParameter": { + "in": "query", + "name": "api-version", + "type": "string", + "description": "Version of Azure Machine Learning resource provider API.", + "required": true + }, + "PaginationParameter": { + "in": "query", + "name": "$skip", + "type": "string", + "description": "Continuation token for pagination.", + "required": false, + "x-ms-parameter-location": "method" + }, + "ComputeDefinitionParameter": { + "in": "body", + "name": "parameters", + "description": "Payload with Machine Learning compute definition.", + "required": true, + "schema": { + "$ref": "#/definitions/ComputeResource" + }, + "x-ms-parameter-location": "method" + }, + "ComputeTypeParameter": { + "in": "query", + "name": "compute-type", + "type": "string", + "description": "Type of compute to filter by.", + "required": false, + "x-ms-parameter-location": "method" + }, + "UnderlyingResourceActionParameter": { + "in": "query", + "name": "underlyingResourceAction", + "type": "string", + "description": "Delete the underlying compute if 'Delete', or detach the underlying compute from workspace if 'Detach'.", + "required": true, + "enum": [ + "Delete", + "Detach" + ], + "x-ms-enum": { + "name": "UnderlyingResourceAction", + "modelAsString": true + }, + "x-ms-parameter-location": "method" + }, + "PrivateEndpointConnectionName": { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint connection associated with the workspace", + "x-ms-parameter-location": "method" + }, + "ModelIdParameter": { + "in": "query", + "name": "modelId", + "type": "string", + "description": "The Model Id.", + "required": false, + "x-ms-parameter-location": "method" + }, + "ModelNameParameter": { + "in": "query", + "name": "modelName", + "type": "string", + "description": "The Model name.", + "required": false, + "x-ms-parameter-location": "method" + }, + "WebServiceNameParameter": { + "name": "serviceName", + "description": "Name of the Azure Machine Learning service.", + "in": "path", + "type": "string", + "required": true, + "x-ms-parameter-location": "method" + }, + "WebServiceTagParameter": { + "in": "query", + "name": "tag", + "type": "string", + "description": "The object tag.", + "required": false, + "x-ms-parameter-location": "method" + }, + "WebServiceCountParameter": { + "in": "query", + "name": "count", + "type": "integer", + "format": "int32", + "description": "The number of items to retrieve in a page.", + "required": false, + "x-ms-parameter-location": "method" + }, + "WebServiceTagsParameter": { + "in": "query", + "name": "tags", + "type": "string", + "description": "A set of tags with which to filter the returned services. It is a comma separated string of tags key or tags key=value Example: tagKey1,tagKey2,tagKey3=value3 .", + "required": false, + "x-ms-parameter-location": "method" + }, + "WebServicePropertiesParameter": { + "in": "query", + "name": "properties", + "type": "string", + "description": "A set of properties with which to filter the returned services. It is a comma separated string of properties key and/or properties key=value Example: propKey1,propKey2,propKey3=value3 .", + "required": false, + "x-ms-parameter-location": "method" + }, + "WebServiceRunIdParameter": { + "in": "query", + "name": "runId", + "type": "string", + "description": "runId for model associated with service.", + "required": false, + "x-ms-parameter-location": "method" + }, + "WebServiceExpandParameter": { + "in": "query", + "name": "expand", + "type": "boolean", + "description": "Set to True to include Model details.", + "required": false, + "x-ms-parameter-location": "method" + }, + "WebServiceOrderByParameter": { + "in": "query", + "name": "orderby", + "type": "string", + "description": "The option to order the response.", + "required": false, + "default": "UpdatedAtDesc", + "enum": [ + "CreatedAtDesc", + "CreatedAtAsc", + "UpdatedAtDesc", + "UpdatedAtAsc" + ], + "x-ms-enum": { + "name": "OrderString", + "modelAsString": true + }, + "x-ms-parameter-location": "method" + }, + "ConnectionName": { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "Friendly name of the workspace connection", + "x-ms-parameter-location": "method" + }, + "TargetParameter": { + "in": "query", + "name": "target", + "type": "string", + "description": "Target of the workspace connection.", + "required": false, + "x-ms-parameter-location": "method" + }, + "CategoryParameter": { + "in": "query", + "name": "category", + "type": "string", + "description": "Category of the workspace connection.", + "required": false, + "x-ms-parameter-location": "method" + } + }, + "definitions": { + "Operation": { + "description": "Azure Machine Learning workspace REST API operation", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}", + "type": "string" + }, + "display": { + "description": "Display name of operation", + "properties": { + "provider": { + "description": "The resource provider name: Microsoft.MachineLearningExperimentation", + "type": "string" + }, + "resource": { + "description": "The resource on which the operation is performed.", + "type": "string" + }, + "operation": { + "description": "The operation that users can perform.", + "type": "string" + }, + "description": { + "description": "The description for the operation.", + "type": "string" + } + } + } + } + }, + "OperationListResult": { + "description": "An array of operations supported by the resource provider.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "description": "List of AML workspace operations supported by the AML workspace resource provider." + } + } + }, + "Workspace": { + "type": "object", + "description": "An object that represents a machine learning workspace.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/WorkspaceProperties", + "description": "The properties of the machine learning workspace.", + "x-ms-client-flatten": true + } + } + }, + "WorkspaceProperties": { + "type": "object", + "description": "The properties of a machine learning workspace.", + "properties": { + "workspaceId": { + "description": "The immutable id associated with this workspace.", + "type": "string", + "readOnly": true + }, + "description": { + "description": "The description of this workspace.", + "type": "string" + }, + "friendlyName": { + "description": "The friendly name for this workspace. This name in mutable", + "type": "string" + }, + "keyVault": { + "description": "ARM id of the key vault associated with this workspace. This cannot be changed once the workspace has been created", + "type": "string" + }, + "applicationInsights": { + "description": "ARM id of the application insights associated with this workspace. This cannot be changed once the workspace has been created", + "type": "string" + }, + "containerRegistry": { + "description": "ARM id of the container registry associated with this workspace. This cannot be changed once the workspace has been created", + "type": "string" + }, + "storageAccount": { + "description": "ARM id of the storage account associated with this workspace. This cannot be changed once the workspace has been created", + "type": "string" + }, + "discoveryUrl": { + "description": "Url for the discovery service to identify regional endpoints for machine learning experimentation services", + "type": "string" + }, + "provisioningState": { + "type": "string", + "enum": [ + "Unknown", + "Updating", + "Creating", + "Deleting", + "Succeeded", + "Failed", + "Canceled" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + }, + "readOnly": true, + "description": "The current deployment state of workspace resource. The provisioningState is to indicate states for resource provisioning." + }, + "encryption": { + "$ref": "#/definitions/EncryptionProperty", + "description": "The encryption settings of Azure ML workspace." + }, + "hbiWorkspace": { + "type": "boolean", + "description": "The flag to signal HBI data in the workspace and reduce diagnostic data collected by the service", + "default": false + }, + "serviceProvisionedResourceGroup": { + "type": "string", + "description": "The name of the managed resource group created by workspace RP in customer subscription if the workspace is CMK workspace", + "readOnly": true + }, + "privateLinkCount": { + "type": "integer", + "format": "int32", + "description": "Count of private connections in the workspace", + "readOnly": true + }, + "imageBuildCompute": { + "description": "The compute name for image build", + "type": "string" + }, + "allowPublicAccessWhenBehindVnet": { + "type": "boolean", + "description": "The flag to indicate whether to allow public access when behind VNet.", + "default": false + }, + "privateEndpointConnections": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "The list of private endpoint connections in the workspace." + }, + "sharedPrivateLinkResources": { + "type": "array", + "items": { + "$ref": "#/definitions/SharedPrivateLinkResource" + }, + "description": "The list of shared private link resources in this workspace." + }, + "notebookInfo": { + "readOnly": true, + "$ref": "#/definitions/NotebookResourceInfo", + "description": "The notebook info of Azure ML workspace." + }, + "serviceManagedResourcesSettings": { + "$ref": "#/definitions/ServiceManagedResourcesSettings", + "description": "The service managed resource settings." + }, + "primaryUserAssignedIdentity": { + "description": "The user assigned identity resource id that represents the workspace identity.", + "type": "string" + }, + "tenantId": { + "description": "The tenant id associated with this workspace.", + "type": "string", + "readOnly": true + } + } + }, + "WorkspaceUpdateParameters": { + "description": "The parameters for updating a machine learning workspace.", + "properties": { + "tags": { + "description": "The resource tags for the machine learning workspace.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "The sku of the workspace." + }, + "identity": { + "$ref": "#/definitions/Identity", + "description": "The identity of the resource." + }, + "properties": { + "$ref": "#/definitions/WorkspacePropertiesUpdateParameters", + "description": "The properties that the machine learning workspace will be updated with.", + "x-ms-client-flatten": true + } + } + }, + "WorkspacePropertiesUpdateParameters": { + "description": "The parameters for updating the properties of a machine learning workspace.", + "properties": { + "description": { + "description": "The description of this workspace.", + "type": "string" + }, + "friendlyName": { + "description": "The friendly name for this workspace.", + "type": "string" + }, + "imageBuildCompute": { + "description": "The compute name for image build", + "type": "string" + }, + "serviceManagedResourcesSettings": { + "$ref": "#/definitions/ServiceManagedResourcesSettings", + "description": "The service managed resource settings." + }, + "primaryUserAssignedIdentity": { + "description": "The user assigned identity resource id that represents the workspace identity.", + "type": "string" + } + } + }, + "AmlUserFeature": { + "description": "Features enabled for a workspace", + "type": "object", + "properties": { + "id": { + "description": "Specifies the feature ID", + "type": "string" + }, + "displayName": { + "description": "Specifies the feature name ", + "type": "string" + }, + "description": { + "description": "Describes the feature for user experience", + "type": "string" + } + } + }, + "ListAmlUserFeatureResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/AmlUserFeature" + }, + "description": "The list of AML user facing features." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URI to fetch the next page of AML user features information. Call ListNext() with this to fetch the next page of AML user features information." + } + }, + "description": "The List Aml user feature operation response." + }, + "UsageName": { + "properties": { + "value": { + "readOnly": true, + "type": "string", + "description": "The name of the resource." + }, + "localizedValue": { + "readOnly": true, + "type": "string", + "description": "The localized name of the resource." + } + }, + "description": "The Usage Names." + }, + "Usage": { + "type": "object", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Specifies the resource ID." + }, + "amlWorkspaceLocation": { + "readOnly": true, + "type": "string", + "description": "Region of the AML workspace in the id." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Specifies the resource type." + }, + "unit": { + "readOnly": true, + "type": "string", + "description": "An enum describing the unit of usage measurement.", + "enum": [ + "Count" + ], + "x-ms-enum": { + "name": "UsageUnit", + "modelAsString": true + } + }, + "currentValue": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The current usage of the resource." + }, + "limit": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The maximum permitted usage of the resource." + }, + "name": { + "readOnly": true, + "$ref": "#/definitions/UsageName", + "description": "The name of the type of usage." + } + }, + "description": "Describes AML Resource Usage." + }, + "ListUsagesResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Usage" + }, + "description": "The list of AML resource usages." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URI to fetch the next page of AML resource usage information. Call ListNext() with this to fetch the next page of AML resource usage information." + } + }, + "description": "The List Usages operation response." + }, + "VirtualMachineSize": { + "properties": { + "name": { + "type": "string", + "title": "Virtual Machine size name", + "description": "The name of the virtual machine size.", + "readOnly": true + }, + "family": { + "type": "string", + "title": "Virtual Machine family name", + "description": "The family name of the virtual machine size.", + "readOnly": true + }, + "vCPUs": { + "type": "integer", + "format": "int32", + "title": "Number of vPUs", + "description": "The number of vCPUs supported by the virtual machine size.", + "readOnly": true + }, + "gpus": { + "type": "integer", + "format": "int32", + "title": "Number of gPUs", + "description": "The number of gPUs supported by the virtual machine size.", + "readOnly": true + }, + "osVhdSizeMB": { + "type": "integer", + "format": "int32", + "title": "OS VHD Disk size", + "description": "The OS VHD disk size, in MB, allowed by the virtual machine size.", + "readOnly": true + }, + "maxResourceVolumeMB": { + "type": "integer", + "format": "int32", + "title": "Resource volume size", + "description": "The resource volume size, in MB, allowed by the virtual machine size.", + "readOnly": true + }, + "memoryGB": { + "type": "number", + "format": "double", + "title": "Memory size", + "description": "The amount of memory, in GB, supported by the virtual machine size.", + "readOnly": true + }, + "lowPriorityCapable": { + "type": "boolean", + "title": "Low priority capable", + "description": "Specifies if the virtual machine size supports low priority VMs.", + "readOnly": true + }, + "premiumIO": { + "type": "boolean", + "title": "Premium IO supported", + "description": "Specifies if the virtual machine size supports premium IO.", + "readOnly": true + }, + "estimatedVMPrices": { + "title": "Estimated VM prices", + "description": "The estimated price information for using a VM.", + "$ref": "#/definitions/EstimatedVMPrices" + } + }, + "description": "Describes the properties of a VM size." + }, + "EstimatedVMPrices": { + "properties": { + "billingCurrency": { + "type": "string", + "title": "Billing currency", + "description": "Three lettered code specifying the currency of the VM price. Example: USD", + "enum": [ + "USD" + ], + "x-ms-enum": { + "name": "BillingCurrency", + "modelAsString": true + } + }, + "unitOfMeasure": { + "type": "string", + "title": "Unit of time measure", + "description": "The unit of time measurement for the specified VM price. Example: OneHour", + "enum": [ + "OneHour" + ], + "x-ms-enum": { + "name": "UnitOfMeasure", + "modelAsString": true + } + }, + "values": { + "type": "array", + "items": { + "$ref": "#/definitions/EstimatedVMPrice" + }, + "title": "List of estimated VM prices.", + "description": "The list of estimated prices for using a VM of a particular OS type, tier, etc." + } + }, + "required": [ + "billingCurrency", + "unitOfMeasure", + "values" + ], + "description": "The estimated price info for using a VM." + }, + "EstimatedVMPrice": { + "properties": { + "retailPrice": { + "type": "number", + "format": "double", + "title": "Retail price", + "description": "The price charged for using the VM." + }, + "osType": { + "type": "string", + "title": "OS type", + "description": "Operating system type used by the VM.", + "enum": [ + "Linux", + "Windows" + ], + "x-ms-enum": { + "name": "VMPriceOSType", + "modelAsString": true + } + }, + "vmTier": { + "type": "string", + "title": "VM tier", + "description": "The type of the VM.", + "enum": [ + "Standard", + "LowPriority", + "Spot" + ], + "x-ms-enum": { + "name": "VMTier", + "modelAsString": true + } + } + }, + "required": [ + "retailPrice", + "osType", + "vmTier" + ], + "description": "The estimated price info for using a VM of a particular OS type, tier, etc." + }, + "VirtualMachineSizeListResult": { + "properties": { + "amlCompute": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineSize" + }, + "description": "The list of virtual machine sizes supported by AmlCompute." + } + }, + "description": "The List Virtual Machine size operation response." + }, + "WorkspaceListResult": { + "description": "The result of a request to list machine learning workspaces.", + "properties": { + "value": { + "description": "The list of machine learning workspaces. Since this list may be incomplete, the nextLink field should be used to request the next list of machine learning workspaces.", + "type": "array", + "items": { + "$ref": "#/definitions/Workspace" + } + }, + "nextLink": { + "description": "The URI that can be used to request the next list of machine learning workspaces.", + "type": "string" + } + } + }, + "QuotaBaseProperties": { + "properties": { + "id": { + "type": "string", + "description": "Specifies the resource ID." + }, + "type": { + "type": "string", + "description": "Specifies the resource type." + }, + "limit": { + "type": "integer", + "format": "int64", + "title": "Limit.", + "description": "The maximum permitted quota of the resource." + }, + "unit": { + "type": "string", + "description": "An enum describing the unit of quota measurement.", + "enum": [ + "Count" + ], + "x-ms-enum": { + "name": "QuotaUnit", + "modelAsString": true + } + } + }, + "description": "The properties for Quota update or retrieval." + }, + "QuotaUpdateParameters": { + "properties": { + "value": { + "description": "The list for update quota.", + "type": "array", + "items": { + "$ref": "#/definitions/QuotaBaseProperties" + } + }, + "location": { + "description": "Region of workspace quota to be updated.", + "type": "string" + } + }, + "description": "Quota update parameters." + }, + "UpdateWorkspaceQuotasResult": { + "properties": { + "value": { + "description": "The list of workspace quota update result.", + "items": { + "$ref": "#/definitions/UpdateWorkspaceQuotas" + }, + "readOnly": true, + "type": "array" + }, + "nextLink": { + "description": "The URI to fetch the next page of workspace quota update result. Call ListNext() with this to fetch the next page of Workspace Quota update result.", + "readOnly": true, + "type": "string" + } + }, + "description": "The result of update workspace quota." + }, + "UpdateWorkspaceQuotas": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Specifies the resource ID." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Specifies the resource type." + }, + "limit": { + "type": "integer", + "format": "int64", + "title": "Limit.", + "description": "The maximum permitted quota of the resource." + }, + "unit": { + "readOnly": true, + "type": "string", + "description": "An enum describing the unit of quota measurement.", + "enum": [ + "Count" + ], + "x-ms-enum": { + "name": "QuotaUnit", + "modelAsString": true + } + }, + "status": { + "type": "string", + "readOnly": false, + "title": "Update Workspace Quota Status.", + "description": "Status of update workspace quota.", + "enum": [ + "Undefined", + "Success", + "Failure", + "InvalidQuotaBelowClusterMinimum", + "InvalidQuotaExceedsSubscriptionLimit", + "InvalidVMFamilyName", + "OperationNotSupportedForSku", + "OperationNotEnabledForRegion" + ], + "x-ms-enum": { + "name": "status", + "modelAsString": true + } + } + }, + "description": "The properties for update Quota response." + }, + "ResourceName": { + "properties": { + "value": { + "readOnly": true, + "type": "string", + "description": "The name of the resource." + }, + "localizedValue": { + "readOnly": true, + "type": "string", + "description": "The localized name of the resource." + } + }, + "description": "The Resource Name." + }, + "ResourceQuota": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Specifies the resource ID." + }, + "amlWorkspaceLocation": { + "readOnly": true, + "type": "string", + "description": "Region of the AML workspace in the id." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Specifies the resource type." + }, + "name": { + "$ref": "#/definitions/ResourceName", + "description": "Name of the resource.", + "readOnly": true + }, + "limit": { + "readOnly": true, + "type": "integer", + "format": "int64", + "title": "Limit.", + "description": "The maximum permitted quota of the resource." + }, + "unit": { + "readOnly": true, + "type": "string", + "description": "An enum describing the unit of quota measurement.", + "enum": [ + "Count" + ], + "x-ms-enum": { + "name": "QuotaUnit", + "modelAsString": true + } + } + }, + "description": "The quota assigned to a resource." + }, + "ListWorkspaceQuotas": { + "properties": { + "value": { + "description": "The list of Workspace Quotas by VM Family", + "items": { + "$ref": "#/definitions/ResourceQuota" + }, + "readOnly": true, + "type": "array" + }, + "nextLink": { + "description": "The URI to fetch the next page of workspace quota information by VM Family. Call ListNext() with this to fetch the next page of Workspace Quota information.", + "readOnly": true, + "type": "string" + } + }, + "description": "The List WorkspaceQuotasByVMFamily operation response." + }, + "Identity": { + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal ID of resource identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant ID of resource." + }, + "type": { + "type": "string", + "description": "The identity type.", + "enum": [ + "SystemAssigned", + "SystemAssigned,UserAssigned", + "UserAssigned", + "None" + ], + "x-ms-enum": { + "name": "ResourceIdentityType", + "modelAsString": false + } + }, + "userAssignedIdentities": { + "$ref": "#/definitions/UserAssignedIdentities", + "description": "The user assigned identities associated with the resource." + } + }, + "description": "Identity for the resource." + }, + "UserAssignedIdentities": { + "description": "dictionary containing all the user assigned identities, with resourceId of the UAI as key.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/UserAssignedIdentity" + } + }, + "UserAssignedIdentity": { + "description": "User Assigned Identity", + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal ID of the user assigned identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant ID of the user assigned identity." + }, + "clientId": { + "readOnly": true, + "type": "string", + "description": "The clientId(aka appId) of the user assigned identity." + } + } + }, + "Resource": { + "description": "Azure Resource Manager resource envelope.", + "x-ms-azure-resource": true, + "properties": { + "id": { + "description": "Specifies the resource ID.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Specifies the name of the resource.", + "type": "string", + "readOnly": true + }, + "identity": { + "$ref": "#/definitions/Identity", + "description": "The identity of the resource." + }, + "location": { + "description": "Specifies the location of the resource.", + "type": "string" + }, + "type": { + "description": "Specifies the type of the resource.", + "type": "string", + "readOnly": true + }, + "tags": { + "description": "Contains resource tags defined as key/value pairs.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "The sku of the workspace." + }, + "systemData": { + "$ref": "#/definitions/SystemData", + "readOnly": true + } + } + }, + "ResourceId": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the resource" + } + }, + "required": [ + "id" + ], + "description": "Represents a resource ID. For example, for a subnet, it is the resource URL for the subnet.", + "x-ms-azure-resource": true + }, + "ListWorkspaceKeysResult": { + "type": "object", + "properties": { + "userStorageKey": { + "readOnly": true, + "type": "string", + "x-ms-secret": true + }, + "userStorageResourceId": { + "readOnly": true, + "type": "string" + }, + "appInsightsInstrumentationKey": { + "readOnly": true, + "type": "string", + "x-ms-secret": true + }, + "containerRegistryCredentials": { + "readOnly": true, + "$ref": "#/definitions/RegistryListCredentialsResult" + }, + "notebookAccessKeys": { + "readOnly": true, + "$ref": "#/definitions/ListNotebookKeysResult" + } + } + }, + "NotebookAccessTokenResult": { + "type": "object", + "properties": { + "notebookResourceId": { + "readOnly": true, + "type": "string" + }, + "hostName": { + "readOnly": true, + "type": "string" + }, + "publicDns": { + "readOnly": true, + "type": "string" + }, + "accessToken": { + "readOnly": true, + "type": "string", + "x-ms-secret": true + }, + "tokenType": { + "readOnly": true, + "type": "string" + }, + "expiresIn": { + "readOnly": true, + "type": "integer", + "format": "int32" + }, + "refreshToken": { + "readOnly": true, + "type": "string", + "x-ms-secret": true + }, + "scope": { + "readOnly": true, + "type": "string" + } + } + }, + "RegistryListCredentialsResult": { + "type": "object", + "properties": { + "location": { + "readOnly": true, + "type": "string" + }, + "username": { + "readOnly": true, + "type": "string" + }, + "passwords": { + "type": "array", + "items": { + "$ref": "#/definitions/Password" + } + } + } + }, + "Password": { + "type": "object", + "properties": { + "name": { + "readOnly": true, + "type": "string" + }, + "value": { + "readOnly": true, + "type": "string" + } + } + }, + "PaginatedComputeResourcesList": { + "type": "object", + "description": "Paginated list of Machine Learning compute objects wrapped in ARM resource envelope.", + "properties": { + "value": { + "type": "array", + "description": "An array of Machine Learning compute objects wrapped in ARM resource envelope.", + "items": { + "$ref": "#/definitions/ComputeResource" + } + }, + "nextLink": { + "type": "string", + "description": "A continuation link (absolute URI) to the next page of results in the list." + } + } + }, + "ComputeResource": { + "type": "object", + "description": "Machine Learning compute object wrapped into ARM resource envelope.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + }, + { + "type": "object", + "properties": { + "properties": { + "description": "Compute properties", + "$ref": "#/definitions/Compute" + } + } + } + ] + }, + "Compute": { + "type": "object", + "description": "Machine Learning compute object.", + "discriminator": "computeType", + "properties": { + "computeType": { + "description": "The type of compute", + "$ref": "#/definitions/ComputeType" + }, + "computeLocation": { + "description": "Location for the underlying compute", + "type": "string" + }, + "provisioningState": { + "type": "string", + "description": "The provision state of the cluster. Valid values are Unknown, Updating, Provisioning, Succeeded, and Failed.", + "enum": [ + "Unknown", + "Updating", + "Creating", + "Deleting", + "Succeeded", + "Failed", + "Canceled" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + }, + "readOnly": true + }, + "description": { + "type": "string", + "description": "The description of the Machine Learning compute." + }, + "createdOn": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The time at which the compute was created." + }, + "modifiedOn": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The time at which the compute was last modified." + }, + "resourceId": { + "type": "string", + "description": "ARM resource id of the underlying compute" + }, + "provisioningErrors": { + "type": "array", + "description": "Errors during provisioning", + "items": { + "$ref": "#/definitions/MachineLearningServiceError" + }, + "readOnly": true + }, + "isAttachedCompute": { + "type": "boolean", + "description": "Indicating whether the compute was provisioned by user and brought from outside if true, or machine learning service provisioned it if false.", + "readOnly": true + }, + "disableLocalAuth": { + "type": "boolean", + "description": "Opt-out of local authentication and ensure customers can use only MSI and AAD exclusively for authentication." + } + }, + "required": [ + "computeType" + ] + }, + "AKS": { + "description": "A Machine Learning compute based on AKS.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + }, + { + "type": "object", + "properties": { + "properties": { + "type": "object", + "description": "AKS properties", + "properties": { + "clusterFqdn": { + "description": "Cluster full qualified domain name", + "type": "string" + }, + "systemServices": { + "type": "array", + "description": "System services", + "items": { + "$ref": "#/definitions/SystemService" + }, + "readOnly": true + }, + "agentCount": { + "description": "Number of agents", + "type": "integer", + "format": "int32", + "minimum": 0 + }, + "agentVmSize": { + "description": "Agent virtual machine size", + "type": "string" + }, + "clusterPurpose": { + "description": "Intended usage of the cluster", + "type": "string", + "default": "FastProd", + "enum": [ + "FastProd", + "DenseProd", + "DevTest" + ], + "x-ms-enum": { + "name": "ClusterPurpose", + "modelAsString": true + } + }, + "sslConfiguration": { + "description": "SSL configuration", + "$ref": "#/definitions/SslConfiguration" + }, + "aksNetworkingConfiguration": { + "description": "AKS networking configuration for vnet", + "$ref": "#/definitions/AksNetworkingConfiguration" + }, + "loadBalancerType": { + "description": "Load Balancer Type", + "type": "string", + "default": "PublicIp", + "enum": [ + "PublicIp", + "InternalLoadBalancer" + ], + "x-ms-enum": { + "name": "LoadBalancerType", + "modelAsString": true + } + }, + "loadBalancerSubnet": { + "description": "Load Balancer Subnet", + "type": "string" + } + } + } + } + } + ], + "x-ms-discriminator-value": "AKS" + }, + "AmlCompute": { + "description": "An Azure Machine Learning compute.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + }, + { + "type": "object", + "properties": { + "properties": { + "type": "object", + "description": "AML Compute properties", + "properties": { + "osType": { + "description": "Compute OS Type", + "type": "string", + "default": "Linux", + "enum": [ + "Linux", + "Windows" + ], + "x-ms-enum": { + "name": "OsType", + "modelAsString": true + } + }, + "vmSize": { + "description": "Virtual Machine Size", + "type": "string" + }, + "vmPriority": { + "description": "Virtual Machine priority", + "type": "string", + "enum": [ + "Dedicated", + "LowPriority" + ], + "x-ms-enum": { + "name": "VmPriority", + "modelAsString": true + } + }, + "virtualMachineImage": { + "description": "Virtual Machine image for AML Compute - windows only", + "$ref": "#/definitions/VirtualMachineImage" + }, + "isolatedNetwork": { + "description": "Network is isolated or not", + "type": "boolean" + }, + "scaleSettings": { + "description": "Scale settings for AML Compute", + "$ref": "#/definitions/ScaleSettings" + }, + "userAccountCredentials": { + "title": "User account credentials.", + "description": "Credentials for an administrator user account that will be created on each compute node.", + "$ref": "#/definitions/UserAccountCredentials" + }, + "subnet": { + "title": "Subnet.", + "description": "Virtual network subnet resource ID the compute nodes belong to.", + "$ref": "#/definitions/ResourceId" + }, + "remoteLoginPortPublicAccess": { + "type": "string", + "default": "NotSpecified", + "title": "Close remote Login Access Port", + "description": "State of the public SSH port. Possible values are: Disabled - Indicates that the public ssh port is closed on all nodes of the cluster. Enabled - Indicates that the public ssh port is open on all nodes of the cluster. NotSpecified - Indicates that the public ssh port is closed on all nodes of the cluster if VNet is defined, else is open all public nodes. It can be default only during cluster creation time, after creation it will be either enabled or disabled.", + "enum": [ + "Enabled", + "Disabled", + "NotSpecified" + ], + "x-ms-enum": { + "name": "remoteLoginPortPublicAccess", + "modelAsString": true + } + }, + "allocationState": { + "type": "string", + "readOnly": true, + "title": "Allocation state.", + "description": "Allocation state of the compute. Possible values are: steady - Indicates that the compute is not resizing. There are no changes to the number of compute nodes in the compute in progress. A compute enters this state when it is created and when no operations are being performed on the compute to change the number of compute nodes. resizing - Indicates that the compute is resizing; that is, compute nodes are being added to or removed from the compute.", + "enum": [ + "Steady", + "Resizing" + ], + "x-ms-enum": { + "name": "AllocationState", + "modelAsString": true + } + }, + "allocationStateTransitionTime": { + "type": "string", + "readOnly": true, + "format": "date-time", + "title": "Allocation state transition time.", + "description": "The time at which the compute entered its current allocation state." + }, + "errors": { + "readOnly": true, + "title": "Errors.", + "description": "Collection of errors encountered by various compute nodes during node setup.", + "type": "array", + "items": { + "$ref": "#/definitions/MachineLearningServiceError" + } + }, + "currentNodeCount": { + "type": "integer", + "readOnly": true, + "format": "int32", + "title": "Current node count.", + "description": "The number of compute nodes currently assigned to the compute." + }, + "targetNodeCount": { + "type": "integer", + "readOnly": true, + "format": "int32", + "title": "Target node count.", + "description": "The target number of compute nodes for the compute. If the allocationState is resizing, this property denotes the target node count for the ongoing resize operation. If the allocationState is steady, this property denotes the target node count for the previous resize operation." + }, + "nodeStateCounts": { + "title": "Node state counts.", + "description": "Counts of various node states on the compute.", + "readOnly": true, + "$ref": "#/definitions/NodeStateCounts" + }, + "enableNodePublicIp": { + "type": "boolean", + "default": true, + "title": "Enable node public IP.", + "description": "Enable or disable node public IP address provisioning. Possible values are: Possible values are: true - Indicates that the compute nodes will have public IPs provisioned. false - Indicates that the compute nodes will have a private endpoint and no public IPs." + } + } + } + } + } + ], + "x-ms-discriminator-value": "AmlCompute" + }, + "ComputeInstance": { + "description": "An Azure Machine Learning compute instance.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + }, + { + "type": "object", + "properties": { + "properties": { + "description": "Compute Instance properties", + "type": "object", + "properties": { + "vmSize": { + "description": "Virtual Machine Size", + "type": "string" + }, + "subnet": { + "title": "Subnet.", + "description": "Virtual network subnet resource ID the compute nodes belong to.", + "$ref": "#/definitions/ResourceId" + }, + "applicationSharingPolicy": { + "type": "string", + "default": "Shared", + "title": "Sharing policy for applications on this compute instance", + "description": "Policy for sharing applications on this compute instance among users of parent workspace. If Personal, only the creator can access applications on this compute instance. When Shared, any workspace user can access applications on this instance depending on his/her assigned role.", + "enum": [ + "Personal", + "Shared" + ], + "x-ms-enum": { + "name": "applicationSharingPolicy", + "modelAsString": true + } + }, + "sshSettings": { + "description": "Specifies policy and settings for SSH access.", + "$ref": "#/definitions/ComputeInstanceSshSettings" + }, + "connectivityEndpoints": { + "readOnly": true, + "description": "Describes all connectivity endpoints available for this ComputeInstance.", + "$ref": "#/definitions/ComputeInstanceConnectivityEndpoints" + }, + "applications": { + "type": "array", + "readOnly": true, + "description": "Describes available applications and their endpoints on this ComputeInstance.", + "items": { + "$ref": "#/definitions/ComputeInstanceApplication" + } + }, + "createdBy": { + "readOnly": true, + "description": "Describes information on user who created this ComputeInstance.", + "$ref": "#/definitions/ComputeInstanceCreatedBy" + }, + "errors": { + "readOnly": true, + "title": "Errors.", + "description": "Collection of errors encountered on this ComputeInstance.", + "type": "array", + "items": { + "$ref": "#/definitions/MachineLearningServiceError" + } + }, + "state": { + "description": "The current state of this ComputeInstance.", + "$ref": "#/definitions/ComputeInstanceState", + "readOnly": true + }, + "computeInstanceAuthorizationType": { + "type": "string", + "title": "Compute Instance Authorization type.", + "description": "The Compute Instance Authorization type. Available values are personal (default).", + "default": "personal", + "enum": [ + "personal" + ], + "x-ms-enum": { + "name": "ComputeInstanceAuthorizationType", + "modelAsString": true + } + }, + "personalComputeInstanceSettings": { + "title": "Personal Compute Instance settings.", + "description": "Settings for a personal compute instance.", + "$ref": "#/definitions/PersonalComputeInstanceSettings" + }, + "setupScripts": { + "description": "Details of customized scripts to execute for setting up the cluster.", + "$ref": "#/definitions/SetupScripts" + }, + "lastOperation": { + "description": "The last operation on ComputeInstance.", + "$ref": "#/definitions/ComputeInstanceLastOperation", + "readOnly": true + } + } + } + } + } + ], + "x-ms-discriminator-value": "ComputeInstance" + }, + "VirtualMachine": { + "description": "A Machine Learning compute based on Azure Virtual Machines.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + }, + { + "type": "object", + "properties": { + "properties": { + "type": "object", + "properties": { + "virtualMachineSize": { + "description": "Virtual Machine size", + "type": "string" + }, + "sshPort": { + "description": "Port open for ssh connections.", + "type": "integer", + "format": "int32" + }, + "address": { + "description": "Public IP address of the virtual machine.", + "type": "string" + }, + "administratorAccount": { + "description": "Admin credentials for virtual machine", + "$ref": "#/definitions/VirtualMachineSshCredentials" + }, + "isNotebookInstanceCompute": { + "description": "Indicates whether this compute will be used for running notebooks.", + "type": "boolean" + } + } + } + } + } + ], + "x-ms-discriminator-value": "VirtualMachine" + }, + "HDInsight": { + "description": "A HDInsight compute.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + }, + { + "type": "object", + "properties": { + "properties": { + "type": "object", + "properties": { + "sshPort": { + "description": "Port open for ssh connections on the master node of the cluster.", + "type": "integer", + "format": "int32" + }, + "address": { + "description": "Public IP address of the master node of the cluster.", + "type": "string" + }, + "administratorAccount": { + "description": "Admin credentials for master node of the cluster", + "$ref": "#/definitions/VirtualMachineSshCredentials" + } + } + } + } + } + ], + "x-ms-discriminator-value": "HDInsight" + }, + "DataFactory": { + "description": "A DataFactory compute.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + } + ], + "x-ms-discriminator-value": "DataFactory" + }, + "Databricks": { + "description": "A DataFactory compute.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + }, + { + "type": "object", + "properties": { + "properties": { + "type": "object", + "properties": { + "databricksAccessToken": { + "description": "Databricks access token", + "type": "string" + }, + "workspaceUrl": { + "description": "Workspace Url", + "type": "string" + } + } + } + } + } + ], + "x-ms-discriminator-value": "Databricks" + }, + "DataLakeAnalytics": { + "description": "A DataLakeAnalytics compute.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + }, + { + "type": "object", + "properties": { + "properties": { + "type": "object", + "properties": { + "dataLakeStoreAccountName": { + "description": "DataLake Store Account Name", + "type": "string" + } + } + } + } + } + ], + "x-ms-discriminator-value": "DataLakeAnalytics" + }, + "SynapseSpark": { + "description": "A SynapseSpark compute.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + }, + { + "$ref": "#/definitions/SynapseSparkPoolProperties" + } + ], + "x-ms-discriminator-value": "SynapseSpark" + }, + "ServicePrincipalCredentials": { + "type": "object", + "description": "Service principal credentials.", + "properties": { + "clientId": { + "description": "Client Id", + "type": "string" + }, + "clientSecret": { + "description": "Client secret", + "type": "string" + } + }, + "required": [ + "clientId", + "clientSecret" + ] + }, + "SystemService": { + "type": "object", + "description": "A system service running on a compute.", + "properties": { + "systemServiceType": { + "description": "The type of this system service.", + "readOnly": true, + "type": "string" + }, + "publicIpAddress": { + "type": "string", + "description": "Public IP address", + "readOnly": true + }, + "version": { + "description": "The version for this type.", + "readOnly": true, + "type": "string" + } + } + }, + "SslConfiguration": { + "type": "object", + "description": "The ssl configuration for scoring", + "properties": { + "status": { + "description": "Enable or disable ssl for scoring", + "type": "string", + "enum": [ + "Disabled", + "Enabled", + "Auto" + ] + }, + "cert": { + "description": "Cert data", + "type": "string" + }, + "key": { + "description": "Key data", + "type": "string" + }, + "cname": { + "description": "CNAME of the cert", + "type": "string" + }, + "leafDomainLabel": { + "description": "Leaf domain label of public endpoint", + "type": "string" + }, + "overwriteExistingDomain": { + "description": "Indicates whether to overwrite existing domain label.", + "type": "boolean" + } + } + }, + "AksNetworkingConfiguration": { + "type": "object", + "description": "Advance configuration for AKS networking", + "properties": { + "subnetId": { + "description": "Virtual network subnet resource ID the compute nodes belong to", + "type": "string" + }, + "serviceCidr": { + "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}(\\/([0-9]|[1-2][0-9]|3[0-2]))?$", + "description": "A CIDR notation IP range from which to assign service cluster IPs. It must not overlap with any Subnet IP ranges.", + "type": "string" + }, + "dnsServiceIP": { + "pattern": "^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$", + "description": "An IP address assigned to the Kubernetes DNS service. It must be within the Kubernetes service address range specified in serviceCidr.", + "type": "string" + }, + "dockerBridgeCidr": { + "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}(\\/([0-9]|[1-2][0-9]|3[0-2]))?$", + "description": "A CIDR notation IP range assigned to the Docker bridge network. It must not overlap with any Subnet IP ranges or the Kubernetes service address range.", + "type": "string" + } + } + }, + "UserAccountCredentials": { + "properties": { + "adminUserName": { + "type": "string", + "title": "User name.", + "description": "Name of the administrator user account which can be used to SSH to nodes." + }, + "adminUserSshPublicKey": { + "type": "string", + "title": "SSH public key.", + "description": "SSH public key of the administrator user account." + }, + "adminUserPassword": { + "type": "string", + "title": "Password.", + "description": "Password of the administrator user account." + } + }, + "required": [ + "adminUserName" + ], + "description": "Settings for user account that gets created on each on the nodes of a compute." + }, + "ScaleSettings": { + "type": "object", + "description": "scale settings for AML Compute", + "properties": { + "maxNodeCount": { + "description": "Max number of nodes to use", + "type": "integer", + "format": "int32" + }, + "minNodeCount": { + "description": "Min number of nodes to use", + "type": "integer", + "format": "int32", + "default": 0 + }, + "nodeIdleTimeBeforeScaleDown": { + "type": "string", + "format": "duration", + "description": "Node Idle Time before scaling down amlCompute. This string needs to be in the RFC Format." + } + }, + "required": [ + "maxNodeCount" + ] + }, + "VirtualMachineImage": { + "type": "object", + "description": "Virtual Machine image for Windows AML Compute", + "properties": { + "id": { + "description": "Virtual Machine image path", + "type": "string" + } + }, + "required": [ + "id" + ] + }, + "NodeStateCounts": { + "properties": { + "idleNodeCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "title": "Idle node count.", + "description": "Number of compute nodes in idle state." + }, + "runningNodeCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "title": "Running node count.", + "description": "Number of compute nodes which are running jobs." + }, + "preparingNodeCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "title": "Preparing node count.", + "description": "Number of compute nodes which are being prepared." + }, + "unusableNodeCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "title": "Unusable node count.", + "description": "Number of compute nodes which are in unusable state." + }, + "leavingNodeCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "title": "Leaving node count.", + "description": "Number of compute nodes which are leaving the amlCompute." + }, + "preemptedNodeCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "title": "Preempted node count.", + "description": "Number of compute nodes which are in preempted state." + } + }, + "description": "Counts of various compute node states on the amlCompute." + }, + "ClusterUpdateProperties": { + "properties": { + "scaleSettings": { + "$ref": "#/definitions/ScaleSettings", + "title": "Scale settings.", + "description": "Desired scale settings for the amlCompute." + } + }, + "description": "The properties of a amlCompute that need to be updated." + }, + "ClusterUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ClusterUpdateProperties", + "description": "The properties of the amlCompute." + } + }, + "description": "AmlCompute update parameters." + }, + "ComputeNodesInformation": { + "type": "object", + "description": "Compute nodes information related to a Machine Learning compute. Might differ for every type of compute.", + "discriminator": "computeType", + "properties": { + "computeType": { + "description": "The type of compute", + "$ref": "#/definitions/ComputeType" + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The continuation token." + } + }, + "required": [ + "computeType" + ] + }, + "AmlComputeNodesInformation": { + "description": "Compute node information related to a AmlCompute.", + "allOf": [ + { + "$ref": "#/definitions/ComputeNodesInformation" + }, + { + "type": "object", + "properties": { + "nodes": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/AmlComputeNodeInformation" + }, + "description": "The collection of returned AmlCompute nodes details." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The continuation token." + } + } + } + ], + "x-ms-discriminator-value": "AmlCompute" + }, + "AmlComputeNodeInformation": { + "description": "Compute node information related to a AmlCompute.", + "properties": { + "nodeId": { + "readOnly": true, + "type": "string", + "title": "Node ID.", + "description": "ID of the compute node." + }, + "privateIpAddress": { + "readOnly": true, + "type": "string", + "title": "Private IP address.", + "description": "Private IP address of the compute node." + }, + "publicIpAddress": { + "readOnly": true, + "type": "string", + "title": "Public IP address.", + "description": "Public IP address of the compute node." + }, + "port": { + "readOnly": true, + "type": "number", + "format": "int32", + "title": "Port.", + "description": "SSH port number of the node." + }, + "nodeState": { + "readOnly": true, + "type": "string", + "enum": [ + "idle", + "running", + "preparing", + "unusable", + "leaving", + "preempted" + ], + "description": "State of the compute node. Values are idle, running, preparing, unusable, leaving and preempted.", + "x-ms-enum": { + "name": "nodeState", + "modelAsString": true + } + }, + "runId": { + "readOnly": true, + "type": "string", + "title": "Run ID.", + "description": "ID of the Experiment running on the node, if any else null." + } + }, + "x-ms-discriminator-value": "AmlCompute" + }, + "VirtualMachineSshCredentials": { + "type": "object", + "description": "Admin credentials for virtual machine", + "properties": { + "username": { + "description": "Username of admin account", + "type": "string" + }, + "password": { + "description": "Password of admin account", + "type": "string" + }, + "publicKeyData": { + "description": "Public key data", + "type": "string" + }, + "privateKeyData": { + "description": "Private key data", + "type": "string" + } + } + }, + "ComputeSecrets": { + "type": "object", + "description": "Secrets related to a Machine Learning compute. Might differ for every type of compute.", + "discriminator": "computeType", + "properties": { + "computeType": { + "description": "The type of compute", + "$ref": "#/definitions/ComputeType" + } + }, + "required": [ + "computeType" + ] + }, + "AksComputeSecrets": { + "description": "Secrets related to a Machine Learning compute based on AKS.", + "allOf": [ + { + "$ref": "#/definitions/ComputeSecrets" + }, + { + "type": "object", + "properties": { + "userKubeConfig": { + "type": "string", + "description": "Content of kubeconfig file that can be used to connect to the Kubernetes cluster." + }, + "adminKubeConfig": { + "type": "string", + "description": "Content of kubeconfig file that can be used to connect to the Kubernetes cluster." + }, + "imagePullSecretName": { + "type": "string", + "description": "Image registry pull secret." + } + } + } + ], + "x-ms-discriminator-value": "AKS" + }, + "VirtualMachineSecrets": { + "description": "Secrets related to a Machine Learning compute based on AKS.", + "allOf": [ + { + "$ref": "#/definitions/ComputeSecrets" + }, + { + "type": "object", + "properties": { + "administratorAccount": { + "description": "Admin credentials for virtual machine.", + "$ref": "#/definitions/VirtualMachineSshCredentials" + } + } + } + ], + "x-ms-discriminator-value": "VirtualMachine" + }, + "DatabricksComputeSecrets": { + "description": "Secrets related to a Machine Learning compute based on Databricks.", + "allOf": [ + { + "$ref": "#/definitions/ComputeSecrets" + }, + { + "type": "object", + "properties": { + "databricksAccessToken": { + "description": "access token for databricks account.", + "type": "string" + } + } + } + ], + "x-ms-discriminator-value": "Databricks" + }, + "ComputeType": { + "type": "string", + "description": "The type of compute", + "enum": [ + "AKS", + "AmlCompute", + "ComputeInstance", + "DataFactory", + "VirtualMachine", + "HDInsight", + "Databricks", + "DataLakeAnalytics", + "SynapseSpark" + ], + "x-ms-enum": { + "name": "ComputeType", + "modelAsString": true + } + }, + "MachineLearningServiceError": { + "type": "object", + "description": "Wrapper for error response to follow ARM guidelines.", + "properties": { + "error": { + "description": "The error response.", + "$ref": "#/definitions/ErrorResponse", + "readOnly": true + } + } + }, + "ErrorResponse": { + "type": "object", + "description": "Error response information.", + "properties": { + "code": { + "type": "string", + "description": "Error code.", + "readOnly": true + }, + "message": { + "type": "string", + "description": "Error message.", + "readOnly": true + }, + "target": { + "type": "string", + "description": "The target of the particular error", + "readOnly": true + }, + "details": { + "type": "array", + "description": "An array of error detail objects.", + "items": { + "$ref": "#/definitions/ErrorDetail" + }, + "readOnly": true + } + } + }, + "ErrorDetail": { + "type": "object", + "description": "Error detail information.", + "properties": { + "code": { + "type": "string", + "description": "Error code." + }, + "message": { + "type": "string", + "description": "Error message." + } + }, + "required": [ + "code", + "message" + ] + }, + "SKUCapability": { + "description": "Features/user capabilities associated with the sku", + "type": "object", + "properties": { + "name": { + "description": "Capability/Feature ID", + "type": "string" + }, + "value": { + "description": "Details about the feature/capability", + "type": "string" + } + } + }, + "ResourceSkuLocationInfo": { + "properties": { + "location": { + "readOnly": true, + "type": "string", + "description": "Location of the SKU" + }, + "zones": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "List of availability zones where the SKU is supported." + }, + "zoneDetails": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ResourceSkuZoneDetails" + }, + "description": "Details of capabilities available to a SKU in specific zones." + } + } + }, + "ResourceSkuZoneDetails": { + "properties": { + "name": { + "type": "array", + "readOnly": true, + "items": { + "type": "string" + }, + "description": "The set of zones that the SKU is available in with the specified capabilities." + }, + "capabilities": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/SKUCapability" + }, + "description": "A list of capabilities that are available for the SKU in the specified list of zones." + } + }, + "description": "Describes The zonal capabilities of a SKU." + }, + "WorkspaceSku": { + "description": "Describes Workspace Sku details and features", + "type": "object", + "properties": { + "locations": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The set of locations that the SKU is available. This will be supported and registered Azure Geo Regions (e.g. West US, East US, Southeast Asia, etc.)." + }, + "locationInfo": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ResourceSkuLocationInfo" + }, + "description": "A list of locations and availability zones in those locations where the SKU is available." + }, + "tier": { + "description": "Sku Tier like Basic or Enterprise", + "type": "string", + "readOnly": true + }, + "resourceType": { + "type": "string", + "readOnly": true + }, + "name": { + "type": "string", + "readOnly": true + }, + "capabilities": { + "description": "List of features/user capabilities associated with the sku", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/SKUCapability" + }, + "readOnly": true + }, + "restrictions": { + "type": "array", + "items": { + "$ref": "#/definitions/Restriction" + }, + "description": "The restrictions because of which SKU cannot be used. This is empty if there are no restrictions." + } + } + }, + "Restriction": { + "properties": { + "type": { + "readOnly": true, + "type": "string", + "description": "The type of restrictions. As of now only possible value for this is location." + }, + "values": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The value of restrictions. If the restriction type is set to location. This would be different locations where the SKU is restricted." + }, + "reasonCode": { + "type": "string", + "enum": [ + "NotSpecified", + "NotAvailableForRegion", + "NotAvailableForSubscription" + ], + "x-ms-enum": { + "name": "ReasonCode", + "modelAsString": true + }, + "description": "The reason for the restriction." + } + }, + "description": "The restriction because of which SKU cannot be used." + }, + "SkuListResult": { + "description": "List of skus with features", + "type": "object", + "properties": { + "value": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/WorkspaceSku" + } + }, + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of Workspace Skus. Call ListNext() with this URI to fetch the next page of Workspace Skus" + } + } + }, + "Sku": { + "description": "Sku of the resource", + "type": "object", + "properties": { + "name": { + "description": "Name of the sku", + "type": "string" + }, + "tier": { + "description": "Tier of the sku like Basic or Enterprise", + "type": "string" + } + } + }, + "PrivateEndpointConnection": { + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "x-ms-client-flatten": true, + "description": "Resource properties." + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "The Private Endpoint Connection resource." + }, + "PrivateEndpointConnectionProperties": { + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpoint", + "description": "The resource of private end point." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionState", + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "provisioningState": { + "$ref": "#/definitions/PrivateEndpointConnectionProvisioningState", + "description": "The provisioning state of the private endpoint connection resource." + } + }, + "required": [ + "privateLinkServiceConnectionState" + ], + "description": "Properties of the PrivateEndpointConnectProperties." + }, + "PrivateEndpoint": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ARM identifier for Private Endpoint" + }, + "subnetArmId": { + "readOnly": true, + "type": "string", + "description": "The ARM identifier for Subnet resource that private endpoint links to" + } + }, + "description": "The Private Endpoint resource." + }, + "PrivateLinkServiceConnectionState": { + "properties": { + "status": { + "$ref": "#/definitions/PrivateEndpointServiceConnectionStatus", + "description": "Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service." + }, + "description": { + "type": "string", + "description": "The reason for approval/rejection of the connection." + }, + "actionsRequired": { + "type": "string", + "description": "A message indicating if changes on the service provider require any updates on the consumer." + } + }, + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "PrivateEndpointServiceConnectionStatus": { + "type": "string", + "description": "The private endpoint connection status.", + "enum": [ + "Pending", + "Approved", + "Rejected", + "Disconnected", + "Timeout" + ], + "x-ms-enum": { + "name": "PrivateEndpointServiceConnectionStatus", + "modelAsString": true + } + }, + "PrivateEndpointConnectionProvisioningState": { + "type": "string", + "readOnly": true, + "description": "The current provisioning state.", + "enum": [ + "Succeeded", + "Creating", + "Deleting", + "Failed" + ], + "x-ms-enum": { + "name": "PrivateEndpointConnectionProvisioningState", + "modelAsString": true + } + }, + "PrivateLinkResourceListResult": { + "properties": { + "value": { + "type": "array", + "description": "Array of private link resources", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + } + } + }, + "description": "A list of private link resources" + }, + "PrivateLinkResource": { + "properties": { + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "A private link resource" + }, + "PrivateLinkResourceProperties": { + "properties": { + "groupId": { + "description": "The private link resource group id.", + "type": "string", + "readOnly": true + }, + "requiredMembers": { + "description": "The private link resource required member names.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "requiredZoneNames": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The private link resource Private link DNS zone name." + } + }, + "description": "Properties of a private link resource." + }, + "SharedPrivateLinkResource": { + "properties": { + "name": { + "description": "Unique name of the private link.", + "type": "string" + }, + "properties": { + "$ref": "#/definitions/SharedPrivateLinkResourceProperty", + "x-ms-client-flatten": true, + "description": "Resource properties." + } + } + }, + "SharedPrivateLinkResourceProperty": { + "properties": { + "privateLinkResourceId": { + "description": "The resource id that private link links to.", + "type": "string" + }, + "groupId": { + "description": "The private link resource group id.", + "type": "string" + }, + "requestMessage": { + "description": "Request message.", + "type": "string" + }, + "status": { + "$ref": "#/definitions/PrivateEndpointServiceConnectionStatus", + "description": "Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service." + } + }, + "description": "Properties of a shared private link resource." + }, + "EncryptionProperty": { + "properties": { + "status": { + "description": "Indicates whether or not the encryption is enabled for the workspace.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "EncryptionStatus", + "modelAsString": true + } + }, + "identity": { + "$ref": "#/definitions/IdentityForCmk", + "description": "The identity that will be used to access the key vault for encryption at rest." + }, + "keyVaultProperties": { + "$ref": "#/definitions/KeyVaultProperties", + "description": "Customer Key vault properties." + } + }, + "required": [ + "status", + "keyVaultProperties" + ], + "type": "object" + }, + "KeyVaultProperties": { + "properties": { + "keyVaultArmId": { + "description": "The ArmId of the keyVault where the customer owned encryption key is present.", + "type": "string" + }, + "keyIdentifier": { + "description": "Key vault uri to access the encryption key.", + "type": "string" + }, + "identityClientId": { + "description": "For future use - The client id of the identity which will be used to access key vault.", + "type": "string" + } + }, + "required": [ + "keyIdentifier", + "keyVaultArmId" + ], + "type": "object" + }, + "IdentityForCmk": { + "description": "Identity that will be used to access key vault for encryption at rest", + "type": "object", + "properties": { + "userAssignedIdentity": { + "description": "The ArmId of the user assigned identity that will be used to access the customer managed key vault", + "type": "string" + } + } + }, + "ServiceResource": { + "type": "object", + "description": "Machine Learning service object wrapped into ARM resource envelope.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + }, + { + "type": "object", + "properties": { + "properties": { + "description": "Service properties", + "$ref": "#/definitions/ServiceResponseBase" + } + } + } + ] + }, + "SystemData": { + "description": "Read only system data", + "type": "object", + "properties": { + "createdBy": { + "type": "string", + "description": "An identifier for the identity that created the resource" + }, + "createdByType": { + "$ref": "#/definitions/IdentityType", + "description": "The type of identity that created the resource" + }, + "createdAt": { + "type": "string", + "format": "date-time", + "description": "The timestamp of resource creation (UTC)" + }, + "lastModifiedBy": { + "type": "string", + "description": "An identifier for the identity that last modified the resource" + }, + "lastModifiedByType": { + "$ref": "#/definitions/IdentityType", + "description": "The type of identity that last modified the resource" + }, + "lastModifiedAt": { + "type": "string", + "format": "date-time", + "description": "The timestamp of resource last modification (UTC)" + } + } + }, + "IdentityType": { + "description": "The type of identity that creates/modifies resources", + "type": "string", + "enum": [ + "User", + "Application", + "ManagedIdentity", + "Key" + ], + "x-ms-enum": { + "name": "IdentityType", + "modelAsString": true + } + }, + "ServiceResponseBase": { + "description": "The base service response. The correct inherited response based on computeType will be returned (ex. ACIServiceResponse)", + "required": [ + "computeType" + ], + "type": "object", + "properties": { + "description": { + "description": "The service description.", + "type": "string" + }, + "kvTags": { + "description": "The service tag dictionary. Tags are mutable.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "properties": { + "description": "The service property dictionary. Properties are immutable.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "state": { + "description": "The current state of the service.", + "enum": [ + "Transitioning", + "Healthy", + "Unhealthy", + "Failed", + "Unschedulable" + ], + "type": "string", + "example": "Healthy", + "x-ms-enum": { + "name": "WebServiceState", + "modelAsString": true + }, + "readOnly": true + }, + "error": { + "description": "The error details.", + "allOf": [ + { + "$ref": "#/definitions/MachineLearningServiceError" + } + ], + "readOnly": true + }, + "computeType": { + "description": "The compute environment type for the service.", + "enum": [ + "ACI", + "AKS" + ], + "type": "string", + "example": "AKS", + "x-ms-enum": { + "name": "ComputeEnvironmentType", + "modelAsString": true + } + }, + "deploymentType": { + "description": "The deployment type for the service.", + "enum": [ + "GRPCRealtimeEndpoint", + "HttpRealtimeEndpoint", + "Batch" + ], + "type": "string", + "example": "HttpRealtimeEndpoint", + "x-ms-enum": { + "name": "DeploymentType", + "modelAsString": true + } + } + }, + "discriminator": "computeType" + }, + "PaginatedServiceList": { + "type": "object", + "description": "Paginated list of Machine Learning service objects wrapped in ARM resource envelope.", + "properties": { + "value": { + "readOnly": true, + "type": "array", + "description": "An array of Machine Learning compute objects wrapped in ARM resource envelope.", + "items": { + "$ref": "#/definitions/ServiceResource" + } + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "A continuation link (absolute URI) to the next page of results in the list." + } + } + }, + "ACIServiceResponse": { + "description": "The response for an ACI service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ServiceResponseBase" + }, + { + "type": "object", + "properties": { + "containerResourceRequirements": { + "description": "The container resource requirements.", + "$ref": "#/definitions/ContainerResourceRequirements" + }, + "scoringUri": { + "description": "The Uri for sending scoring requests.", + "type": "string", + "readOnly": true + }, + "location": { + "description": "The name of the Azure location/region.", + "type": "string" + }, + "authEnabled": { + "description": "Whether or not authentication is enabled on the service.", + "type": "boolean" + }, + "sslEnabled": { + "description": "Whether or not SSL is enabled.", + "type": "boolean" + }, + "appInsightsEnabled": { + "description": "Whether or not Application Insights is enabled.", + "type": "boolean" + }, + "dataCollection": { + "description": "Details of the data collection options specified.", + "allOf": [ + { + "$ref": "#/definitions/ModelDataCollection" + } + ] + }, + "sslCertificate": { + "description": "The public SSL certificate in PEM format to use if SSL is enabled.", + "type": "string" + }, + "sslKey": { + "description": "The public SSL key in PEM format for the certificate.", + "type": "string" + }, + "cname": { + "description": "The CName for the service.", + "type": "string" + }, + "publicIp": { + "description": "The public IP address for the service.", + "type": "string" + }, + "publicFqdn": { + "description": "The public Fqdn for the service.", + "type": "string" + }, + "swaggerUri": { + "description": "The Uri for sending swagger requests.", + "type": "string", + "readOnly": true + }, + "modelConfigMap": { + "description": "Details on the models and configurations.", + "type": "object", + "additionalProperties": { + "type": "object" + }, + "readOnly": true + }, + "models": { + "description": "The list of models.", + "type": "array", + "items": { + "$ref": "#/definitions/Model" + } + }, + "environmentImageRequest": { + "description": "The Environment, models and assets used for inferencing.", + "allOf": [ + { + "$ref": "#/definitions/EnvironmentImageResponse" + } + ] + }, + "vnetConfiguration": { + "description": "The virtual network configuration.", + "allOf": [ + { + "$ref": "#/definitions/VnetConfiguration" + } + ] + }, + "encryptionProperties": { + "description": "The encryption properties.", + "allOf": [ + { + "$ref": "#/definitions/EncryptionProperties" + } + ] + } + } + } + ], + "x-ms-discriminator-value": "ACI" + }, + "ContainerResourceRequirements": { + "description": "The resource requirements for the container (cpu and memory).", + "type": "object", + "properties": { + "cpu": { + "format": "double", + "description": "The minimum amount of CPU cores to be used by the container. More info:\nhttps://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/", + "type": "number", + "example": 4 + }, + "cpuLimit": { + "format": "double", + "description": "The maximum amount of CPU cores allowed to be used by the container. More info:\nhttps://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/", + "type": "number", + "example": 4 + }, + "memoryInGB": { + "format": "double", + "description": "The minimum amount of memory (in GB) to be used by the container. More info:\nhttps://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/", + "type": "number", + "example": 64 + }, + "memoryInGBLimit": { + "format": "double", + "description": "The maximum amount of memory (in GB) allowed to be used by the container. More info:\nhttps://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/", + "type": "number", + "example": 64 + }, + "gpu": { + "format": "int32", + "description": "The number of GPU cores in the container.", + "type": "integer" + }, + "fpga": { + "format": "int32", + "description": "The number of FPGA PCIE devices exposed to the container. Must be multiple of 2.", + "type": "integer" + } + } + }, + "ModelDataCollection": { + "description": "The Model data collection properties.", + "type": "object", + "properties": { + "eventHubEnabled": { + "description": "Option for enabling/disabling Event Hub.", + "type": "boolean" + }, + "storageEnabled": { + "description": "Option for enabling/disabling storage.", + "type": "boolean" + } + } + }, + "VnetConfiguration": { + "type": "object", + "properties": { + "vnetName": { + "description": "The name of the virtual network.", + "type": "string" + }, + "subnetName": { + "description": "The name of the virtual network subnet.", + "type": "string" + } + } + }, + "EncryptionProperties": { + "type": "object", + "properties": { + "vaultBaseUrl": { + "description": "vault base Url", + "type": "string" + }, + "keyName": { + "description": "Encryption Key name", + "type": "string" + }, + "keyVersion": { + "description": "Encryption Key Version", + "type": "string" + } + }, + "required": [ + "vaultBaseUrl", + "keyName", + "keyVersion" + ] + }, + "Model": { + "description": "An Azure Machine Learning Model.", + "required": [ + "mimeType", + "name", + "url" + ], + "type": "object", + "properties": { + "id": { + "description": "The Model Id.", + "type": "string", + "example": "sklearn_mnist:1" + }, + "name": { + "description": "The Model name.", + "type": "string", + "example": "sklearn_mnist" + }, + "framework": { + "description": "The Model framework.", + "type": "string" + }, + "frameworkVersion": { + "description": "The Model framework version.", + "type": "string" + }, + "version": { + "format": "int64", + "description": "The Model version assigned by Model Management Service.", + "type": "integer", + "example": 1 + }, + "datasets": { + "description": "The list of datasets associated with the model.", + "type": "array", + "items": { + "$ref": "#/definitions/DatasetReference" + } + }, + "url": { + "description": "The URL of the Model. Usually a SAS URL.", + "type": "string" + }, + "mimeType": { + "description": "The MIME type of Model content. For more details about MIME type, please open https://www.iana.org/assignments/media-types/media-types.xhtml", + "type": "string" + }, + "description": { + "description": "The Model description text.", + "type": "string", + "example": "A mnist model, first version." + }, + "createdTime": { + "format": "date-time", + "description": "The Model creation time (UTC).", + "type": "string" + }, + "modifiedTime": { + "format": "date-time", + "description": "The Model last modified time (UTC).", + "type": "string" + }, + "unpack": { + "description": "Indicates whether we need to unpack the Model during docker Image creation.", + "type": "boolean" + }, + "parentModelId": { + "description": "The Parent Model Id.", + "type": "string", + "example": "sklearn_mnist_root:1" + }, + "runId": { + "description": "The RunId that created this model.", + "type": "string" + }, + "experimentName": { + "description": "The name of the experiment where this model was created.", + "type": "string" + }, + "kvTags": { + "description": "The Model tag dictionary. Items are mutable.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "properties": { + "description": "The Model property dictionary. Properties are immutable.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "derivedModelIds": { + "description": "Models derived from this model", + "type": "array", + "items": { + "type": "string" + } + }, + "sampleInputData": { + "description": "Sample Input Data for the Model. A reference to a dataset in the workspace in the format aml://dataset/{datasetId}", + "type": "string" + }, + "sampleOutputData": { + "description": "Sample Output Data for the Model. A reference to a dataset in the workspace in the format aml://dataset/{datasetId}", + "type": "string" + }, + "resourceRequirements": { + "description": "Resource requirements for the model", + "$ref": "#/definitions/ContainerResourceRequirements" + } + } + }, + "EnvironmentImageRequest": { + "description": "Request to create a Docker image based on Environment.", + "type": "object", + "properties": { + "driverProgram": { + "description": "The name of the driver file.", + "type": "string" + }, + "assets": { + "description": "The list of assets.", + "type": "array", + "items": { + "$ref": "#/definitions/ImageAsset" + } + }, + "modelIds": { + "description": "The list of model Ids.", + "type": "array", + "items": { + "type": "string" + } + }, + "models": { + "description": "The list of models.", + "type": "array", + "items": { + "$ref": "#/definitions/Model" + } + }, + "environment": { + "description": "The details of the AZURE ML environment.", + "allOf": [ + { + "$ref": "#/definitions/ModelEnvironmentDefinition" + } + ] + }, + "environmentReference": { + "description": "The unique identifying details of the AZURE ML environment.", + "allOf": [ + { + "$ref": "#/definitions/EnvironmentReference" + } + ] + } + } + }, + "EnvironmentImageResponse": { + "description": "Request to create a Docker image based on Environment.", + "type": "object", + "properties": { + "driverProgram": { + "description": "The name of the driver file.", + "type": "string" + }, + "assets": { + "description": "The list of assets.", + "type": "array", + "items": { + "$ref": "#/definitions/ImageAsset" + } + }, + "modelIds": { + "description": "The list of model Ids.", + "type": "array", + "items": { + "type": "string" + } + }, + "models": { + "description": "The list of models.", + "type": "array", + "items": { + "$ref": "#/definitions/Model" + } + }, + "environment": { + "description": "The details of the AZURE ML environment.", + "allOf": [ + { + "$ref": "#/definitions/ModelEnvironmentDefinitionResponse" + } + ] + }, + "environmentReference": { + "description": "The unique identifying details of the AZURE ML environment.", + "allOf": [ + { + "$ref": "#/definitions/EnvironmentReference" + } + ] + } + } + }, + "ImageAsset": { + "description": "An Image asset.", + "type": "object", + "properties": { + "id": { + "description": "The Asset Id.", + "type": "string" + }, + "mimeType": { + "description": "The mime type.", + "type": "string" + }, + "url": { + "description": "The Url of the Asset.", + "type": "string" + }, + "unpack": { + "description": "Whether the Asset is unpacked.", + "type": "boolean" + } + } + }, + "ModelEnvironmentDefinition": { + "type": "object", + "properties": { + "name": { + "description": "The name of the environment.", + "type": "string", + "example": "mydevenvironment" + }, + "version": { + "description": "The environment version.", + "type": "string", + "example": "1" + }, + "python": { + "description": "Settings for a Python environment.", + "allOf": [ + { + "$ref": "#/definitions/ModelPythonSection" + } + ] + }, + "environmentVariables": { + "description": "Definition of environment variables to be defined in the environment.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "docker": { + "description": "The definition of a Docker container.", + "allOf": [ + { + "$ref": "#/definitions/ModelDockerSection" + } + ] + }, + "spark": { + "description": "The configuration for a Spark environment.", + "allOf": [ + { + "$ref": "#/definitions/ModelSparkSection" + } + ] + }, + "r": { + "description": "Settings for a R environment.", + "allOf": [ + { + "$ref": "#/definitions/RSection" + } + ] + }, + "inferencingStackVersion": { + "description": "The inferencing stack version added to the image. To avoid adding an inferencing stack, do not set this value. Valid values: \"latest\".", + "type": "string", + "example": "latest" + } + } + }, + "ModelEnvironmentDefinitionResponse": { + "type": "object", + "properties": { + "name": { + "description": "The name of the environment.", + "type": "string", + "example": "mydevenvironment" + }, + "version": { + "description": "The environment version.", + "type": "string", + "example": "1" + }, + "python": { + "description": "Settings for a Python environment.", + "allOf": [ + { + "$ref": "#/definitions/ModelPythonSection" + } + ] + }, + "environmentVariables": { + "description": "Definition of environment variables to be defined in the environment.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "docker": { + "description": "The definition of a Docker container.", + "allOf": [ + { + "$ref": "#/definitions/ModelDockerSectionResponse" + } + ] + }, + "spark": { + "description": "The configuration for a Spark environment.", + "allOf": [ + { + "$ref": "#/definitions/ModelSparkSection" + } + ] + }, + "r": { + "description": "Settings for a R environment.", + "allOf": [ + { + "$ref": "#/definitions/RSectionResponse" + } + ] + }, + "inferencingStackVersion": { + "description": "The inferencing stack version added to the image. To avoid adding an inferencing stack, do not set this value. Valid values: \"latest\".", + "type": "string", + "example": "latest" + } + } + }, + "EnvironmentReference": { + "type": "object", + "properties": { + "name": { + "description": "Name of the environment.", + "type": "string" + }, + "version": { + "description": "Version of the environment.", + "type": "string" + } + } + }, + "ModelPythonSection": { + "type": "object", + "properties": { + "interpreterPath": { + "description": "The python interpreter path to use if an environment build is not required. The path specified gets used to call the user script.", + "type": "string" + }, + "userManagedDependencies": { + "description": "True means that AzureML reuses an existing python environment; False means that AzureML will create a python environment based on the Conda dependencies specification.", + "type": "boolean" + }, + "condaDependencies": { + "description": "A JObject containing Conda dependencies.", + "type": "object" + }, + "baseCondaEnvironment": { + "type": "string" + } + } + }, + "ContainerRegistry": { + "type": "object", + "properties": { + "address": { + "type": "string" + }, + "username": { + "type": "string", + "x-ms-secret": true + }, + "password": { + "type": "string", + "x-ms-secret": true + } + } + }, + "ContainerRegistryResponse": { + "type": "object", + "properties": { + "address": { + "type": "string" + } + } + }, + "ModelDockerSection": { + "type": "object", + "properties": { + "baseImage": { + "description": "Base image used for Docker-based runs. Mutually exclusive with BaseDockerfile.", + "type": "string", + "example": "ubuntu:latest" + }, + "baseDockerfile": { + "description": "Base Dockerfile used for Docker-based runs. Mutually exclusive with BaseImage.", + "type": "string", + "example": "FROM ubuntu:latest\r\nRUN echo \"Hello world!\"" + }, + "baseImageRegistry": { + "description": "Image registry that contains the base image.", + "allOf": [ + { + "$ref": "#/definitions/ContainerRegistry" + } + ] + } + } + }, + "ModelDockerSectionResponse": { + "type": "object", + "properties": { + "baseImage": { + "description": "Base image used for Docker-based runs. Mutually exclusive with BaseDockerfile.", + "type": "string", + "example": "ubuntu:latest" + }, + "baseDockerfile": { + "description": "Base Dockerfile used for Docker-based runs. Mutually exclusive with BaseImage.", + "type": "string", + "example": "FROM ubuntu:latest\r\nRUN echo \"Hello world!\"" + }, + "baseImageRegistry": { + "description": "Image registry that contains the base image.", + "allOf": [ + { + "$ref": "#/definitions/ContainerRegistryResponse" + } + ] + } + } + }, + "SparkMavenPackage": { + "type": "object", + "properties": { + "group": { + "type": "string" + }, + "artifact": { + "type": "string" + }, + "version": { + "type": "string" + } + } + }, + "ModelSparkSection": { + "type": "object", + "properties": { + "repositories": { + "description": "The list of spark repositories.", + "type": "array", + "items": { + "type": "string" + } + }, + "packages": { + "description": "The Spark packages to use.", + "type": "array", + "items": { + "$ref": "#/definitions/SparkMavenPackage" + } + }, + "precachePackages": { + "description": "Whether to precache the packages.", + "type": "boolean" + } + } + }, + "RCranPackage": { + "type": "object", + "properties": { + "name": { + "description": "The package name.", + "type": "string" + }, + "repository": { + "description": "The repository name.", + "type": "string" + } + } + }, + "RGitHubPackage": { + "type": "object", + "properties": { + "repository": { + "description": "Repository address in the format username/repo[/subdir][@ref|#pull].", + "type": "string" + }, + "authToken": { + "description": "Personal access token to install from a private repo", + "type": "string", + "x-ms-secret": true + } + } + }, + "RGitHubPackageResponse": { + "type": "object", + "properties": { + "repository": { + "description": "Repository address in the format username/repo[/subdir][@ref|#pull].", + "type": "string" + } + } + }, + "RSection": { + "type": "object", + "properties": { + "rVersion": { + "description": "The version of R to be installed", + "type": "string" + }, + "userManaged": { + "description": "Indicates whether the environment is managed by user or by AzureML.", + "type": "boolean" + }, + "rscriptPath": { + "description": "The Rscript path to use if an environment build is not required.\r\nThe path specified gets used to call the user script.", + "type": "string" + }, + "snapshotDate": { + "description": "Date of MRAN snapshot to use in YYYY-MM-DD format, e.g. \"2019-04-17\"", + "type": "string" + }, + "cranPackages": { + "description": "The CRAN packages to use.", + "type": "array", + "items": { + "$ref": "#/definitions/RCranPackage" + } + }, + "gitHubPackages": { + "description": "The packages directly from GitHub.", + "type": "array", + "items": { + "$ref": "#/definitions/RGitHubPackage" + } + }, + "customUrlPackages": { + "description": "The packages from custom urls.", + "type": "array", + "items": { + "type": "string" + } + }, + "bioConductorPackages": { + "description": "The packages from Bioconductor.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "RSectionResponse": { + "type": "object", + "properties": { + "rVersion": { + "description": "The version of R to be installed", + "type": "string" + }, + "userManaged": { + "description": "Indicates whether the environment is managed by user or by AzureML.", + "type": "boolean" + }, + "rscriptPath": { + "description": "The Rscript path to use if an environment build is not required.\r\nThe path specified gets used to call the user script.", + "type": "string" + }, + "snapshotDate": { + "description": "Date of MRAN snapshot to use in YYYY-MM-DD format, e.g. \"2019-04-17\"", + "type": "string" + }, + "cranPackages": { + "description": "The CRAN packages to use.", + "type": "array", + "items": { + "$ref": "#/definitions/RCranPackage" + } + }, + "gitHubPackages": { + "description": "The packages directly from GitHub.", + "type": "array", + "items": { + "$ref": "#/definitions/RGitHubPackageResponse" + } + }, + "customUrlPackages": { + "description": "The packages from custom urls.", + "type": "array", + "items": { + "type": "string" + } + }, + "bioConductorPackages": { + "description": "The packages from Bioconductor.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "DatasetReference": { + "description": "The dataset reference object.", + "type": "object", + "properties": { + "name": { + "description": "The name of the dataset reference.", + "type": "string" + }, + "id": { + "description": "The id of the dataset reference.", + "type": "string" + } + } + }, + "AKSVariantResponse": { + "description": "The response for an AKS variant.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ServiceResponseBase" + }, + { + "type": "object", + "properties": { + "isDefault": { + "description": "Is this the default variant.", + "type": "boolean" + }, + "trafficPercentile": { + "format": "float", + "description": "The amount of traffic variant receives.", + "type": "number", + "example": 100 + }, + "type": { + "description": "The type of the variant.", + "enum": [ + "Control", + "Treatment" + ], + "type": "string", + "example": "Control", + "x-ms-enum": { + "name": "VariantType", + "modelAsString": true + } + } + } + } + ], + "x-ms-discriminator-value": "Custom" + }, + "AutoScaler": { + "description": "The Auto Scaler properties.", + "type": "object", + "properties": { + "autoscaleEnabled": { + "description": "Option to enable/disable auto scaling.", + "type": "boolean" + }, + "minReplicas": { + "format": "int32", + "description": "The minimum number of replicas to scale down to.", + "type": "integer", + "example": 1 + }, + "maxReplicas": { + "format": "int32", + "description": "The maximum number of replicas in the cluster.", + "type": "integer", + "example": 3 + }, + "targetUtilization": { + "format": "int32", + "description": "The target utilization percentage to use for determining whether to scale the cluster.", + "type": "integer", + "example": 70 + }, + "refreshPeriodInSeconds": { + "format": "int32", + "description": "The amount of seconds to wait between auto scale updates.", + "type": "integer", + "example": 120 + } + } + }, + "AKSReplicaStatus": { + "type": "object", + "properties": { + "desiredReplicas": { + "format": "int32", + "description": "The desired number of replicas.", + "type": "integer", + "example": 2 + }, + "updatedReplicas": { + "format": "int32", + "description": "The number of updated replicas.", + "type": "integer", + "example": 1 + }, + "availableReplicas": { + "format": "int32", + "description": "The number of available replicas.", + "type": "integer", + "example": 1 + }, + "error": { + "description": "The error details.", + "allOf": [ + { + "$ref": "#/definitions/MachineLearningServiceError" + } + ] + } + } + }, + "LivenessProbeRequirements": { + "description": "The liveness probe requirements.", + "type": "object", + "properties": { + "failureThreshold": { + "format": "int32", + "description": "The number of failures to allow before returning an unhealthy status.", + "type": "integer" + }, + "successThreshold": { + "format": "int32", + "description": "The number of successful probes before returning a healthy status.", + "type": "integer" + }, + "timeoutSeconds": { + "format": "int32", + "description": "The probe timeout in seconds.", + "type": "integer" + }, + "periodSeconds": { + "format": "int32", + "description": "The length of time between probes in seconds.", + "type": "integer" + }, + "initialDelaySeconds": { + "format": "int32", + "description": "The delay before the first probe in seconds.", + "type": "integer" + } + } + }, + "AKSServiceResponse": { + "description": "The response for an AKS service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AKSVariantResponse" + }, + { + "type": "object", + "properties": { + "models": { + "description": "The list of models.", + "type": "array", + "items": { + "$ref": "#/definitions/Model" + } + }, + "containerResourceRequirements": { + "description": "The container resource requirements.", + "$ref": "#/definitions/ContainerResourceRequirements" + }, + "maxConcurrentRequestsPerContainer": { + "format": "int32", + "description": "The maximum number of concurrent requests per container.", + "type": "integer", + "example": 100 + }, + "maxQueueWaitMs": { + "format": "int32", + "description": "Maximum time a request will wait in the queue (in milliseconds). After this time, the service will return 503 (Service Unavailable)", + "type": "integer", + "example": 250 + }, + "computeName": { + "description": "The name of the compute resource.", + "type": "string" + }, + "namespace": { + "description": "The Kubernetes namespace of the deployment.", + "type": "string", + "example": "default" + }, + "numReplicas": { + "format": "int32", + "description": "The number of replicas on the cluster.", + "type": "integer", + "example": 1 + }, + "dataCollection": { + "description": "Details of the data collection options specified.", + "allOf": [ + { + "$ref": "#/definitions/ModelDataCollection" + } + ] + }, + "appInsightsEnabled": { + "description": "Whether or not Application Insights is enabled.", + "type": "boolean" + }, + "autoScaler": { + "description": "The auto scaler properties.", + "allOf": [ + { + "$ref": "#/definitions/AutoScaler" + } + ] + }, + "scoringUri": { + "description": "The Uri for sending scoring requests.", + "type": "string", + "readOnly": true + }, + "deploymentStatus": { + "description": "The deployment status.", + "readOnly": true, + "allOf": [ + { + "$ref": "#/definitions/AKSReplicaStatus" + } + ] + }, + "scoringTimeoutMs": { + "format": "int32", + "description": "The scoring timeout in milliseconds.", + "type": "integer", + "example": 100 + }, + "livenessProbeRequirements": { + "description": "The liveness probe requirements.", + "allOf": [ + { + "$ref": "#/definitions/LivenessProbeRequirements" + } + ] + }, + "authEnabled": { + "description": "Whether or not authentication is enabled.", + "type": "boolean" + }, + "aadAuthEnabled": { + "description": "Whether or not AAD authentication is enabled.", + "type": "boolean" + }, + "swaggerUri": { + "description": "The Uri for sending swagger requests.", + "type": "string", + "readOnly": true + }, + "modelConfigMap": { + "description": "Details on the models and configurations.", + "type": "object", + "additionalProperties": { + "type": "object" + }, + "readOnly": true + }, + "environmentImageRequest": { + "description": "The Environment, models and assets used for inferencing.", + "allOf": [ + { + "$ref": "#/definitions/EnvironmentImageResponse" + } + ] + } + } + } + ], + "x-ms-discriminator-value": "AKS" + }, + "AuthKeys": { + "type": "object", + "properties": { + "primaryKey": { + "description": "The primary key.", + "type": "string" + }, + "secondaryKey": { + "description": "The secondary key.", + "type": "string" + } + } + }, + "CreateServiceRequest": { + "description": "The base class for creating a service.", + "required": [ + "computeType" + ], + "type": "object", + "properties": { + "description": { + "description": "The description of the service.", + "type": "string" + }, + "kvTags": { + "description": "The service tag dictionary. Tags are mutable.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "properties": { + "description": "The service properties dictionary. Properties are immutable.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "keys": { + "description": "The authentication keys.", + "allOf": [ + { + "$ref": "#/definitions/AuthKeys" + } + ] + }, + "computeType": { + "description": "The compute environment type for the service.", + "enum": [ + "ACI", + "AKS" + ], + "type": "string", + "example": "AKS", + "x-ms-enum": { + "name": "ComputeEnvironmentType", + "modelAsString": true + } + }, + "environmentImageRequest": { + "description": "The Environment, models and assets needed for inferencing.", + "allOf": [ + { + "$ref": "#/definitions/EnvironmentImageRequest" + } + ] + }, + "location": { + "description": "The name of the Azure location/region.", + "type": "string" + } + }, + "discriminator": "computeType" + }, + "ACIServiceCreateRequest": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CreateServiceRequest" + }, + { + "type": "object", + "properties": { + "containerResourceRequirements": { + "description": "The container resource requirements.", + "$ref": "#/definitions/ContainerResourceRequirements" + }, + "authEnabled": { + "description": "Whether or not authentication is enabled on the service.", + "default": false, + "type": "boolean" + }, + "sslEnabled": { + "description": "Whether or not SSL is enabled.", + "default": false, + "type": "boolean" + }, + "appInsightsEnabled": { + "description": "Whether or not Application Insights is enabled.", + "default": false, + "type": "boolean" + }, + "dataCollection": { + "description": "Details of the data collection options specified.", + "allOf": [ + { + "$ref": "#/definitions/ModelDataCollection" + } + ] + }, + "sslCertificate": { + "description": "The public SSL certificate in PEM format to use if SSL is enabled.", + "type": "string" + }, + "sslKey": { + "description": "The public SSL key in PEM format for the certificate.", + "type": "string" + }, + "cname": { + "description": "The CName for the service.", + "type": "string" + }, + "dnsNameLabel": { + "description": "The Dns label for the service.", + "type": "string" + }, + "vnetConfiguration": { + "description": "The virtual network configuration.", + "allOf": [ + { + "$ref": "#/definitions/VnetConfiguration" + } + ] + }, + "encryptionProperties": { + "description": "The encryption properties.", + "allOf": [ + { + "$ref": "#/definitions/EncryptionProperties" + } + ] + } + } + } + ], + "x-ms-discriminator-value": "ACI" + }, + "AKSServiceCreateRequest": { + "description": "The request to create an AKS service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CreateEndpointVariantRequest" + }, + { + "type": "object", + "properties": { + "numReplicas": { + "format": "int32", + "description": "The number of replicas on the cluster.", + "type": "integer", + "example": 1 + }, + "dataCollection": { + "description": "Details of the data collection options specified.", + "allOf": [ + { + "$ref": "#/definitions/ModelDataCollection" + } + ] + }, + "computeName": { + "description": "The name of the compute resource.", + "type": "string" + }, + "appInsightsEnabled": { + "description": "Whether or not Application Insights is enabled.", + "type": "boolean" + }, + "autoScaler": { + "description": "The auto scaler properties.", + "allOf": [ + { + "$ref": "#/definitions/AutoScaler" + } + ] + }, + "containerResourceRequirements": { + "description": "The container resource requirements.", + "$ref": "#/definitions/ContainerResourceRequirements" + }, + "maxConcurrentRequestsPerContainer": { + "format": "int32", + "description": "The maximum number of concurrent requests per container.", + "type": "integer", + "example": 100 + }, + "maxQueueWaitMs": { + "format": "int32", + "description": "Maximum time a request will wait in the queue (in milliseconds). After this time, the service will return 503 (Service Unavailable)", + "type": "integer", + "example": 250 + }, + "namespace": { + "description": "Kubernetes namespace for the service.", + "type": "string", + "example": "default" + }, + "scoringTimeoutMs": { + "format": "int32", + "description": "The scoring timeout in milliseconds.", + "type": "integer", + "example": 100 + }, + "authEnabled": { + "description": "Whether or not authentication is enabled.", + "type": "boolean" + }, + "livenessProbeRequirements": { + "description": "The liveness probe requirements.", + "allOf": [ + { + "$ref": "#/definitions/LivenessProbeRequirements" + } + ] + }, + "aadAuthEnabled": { + "description": "Whether or not AAD authentication is enabled.", + "type": "boolean" + } + } + } + ], + "x-ms-discriminator-value": "AKS" + }, + "CreateEndpointVariantRequest": { + "description": "The Variant properties.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CreateServiceRequest" + }, + { + "type": "object", + "properties": { + "isDefault": { + "description": "Is this the default variant.", + "type": "boolean" + }, + "trafficPercentile": { + "format": "float", + "description": "The amount of traffic variant receives.", + "type": "number", + "example": 100 + }, + "type": { + "description": "The type of the variant.", + "enum": [ + "Control", + "Treatment" + ], + "type": "string", + "example": "Control", + "x-ms-enum": { + "name": "VariantType", + "modelAsString": true + } + } + } + } + ], + "x-ms-discriminator-value": "Custom" + }, + "ComputeInstanceSshSettings": { + "type": "object", + "description": "Specifies policy and settings for SSH access.", + "properties": { + "sshPublicAccess": { + "type": "string", + "default": "Disabled", + "title": "Access policy for SSH", + "description": "State of the public SSH port. Possible values are: Disabled - Indicates that the public ssh port is closed on this instance. Enabled - Indicates that the public ssh port is open and accessible according to the VNet/subnet policy if applicable.", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "sshPublicAccess", + "modelAsString": true + } + }, + "adminUserName": { + "type": "string", + "readOnly": true, + "description": "Describes the admin user name." + }, + "sshPort": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "Describes the port for connecting through SSH." + }, + "adminPublicKey": { + "type": "string", + "description": "Specifies the SSH rsa public key file as a string. Use \"ssh-keygen -t rsa -b 2048\" to generate your SSH key pairs." + } + } + }, + "ComputeInstanceState": { + "type": "string", + "description": "Current state of an ComputeInstance.", + "enum": [ + "Creating", + "CreateFailed", + "Deleting", + "Running", + "Restarting", + "JobRunning", + "SettingUp", + "SetupFailed", + "Starting", + "Stopped", + "Stopping", + "UserSettingUp", + "UserSetupFailed", + "Unknown", + "Unusable" + ], + "x-ms-enum": { + "name": "ComputeInstanceState", + "modelAsString": true + } + }, + "ComputeInstanceLastOperation": { + "type": "object", + "description": "The last operation on ComputeInstance.", + "properties": { + "operationName": { + "type": "string", + "description": "Name of the last operation.", + "enum": [ + "Create", + "Start", + "Stop", + "Restart", + "Reimage", + "Delete" + ], + "x-ms-enum": { + "name": "OperationName", + "modelAsString": true + } + }, + "operationTime": { + "type": "string", + "format": "date-time", + "description": "Time of the last operation." + }, + "operationStatus": { + "type": "string", + "description": "Operation status.", + "enum": [ + "InProgress", + "Succeeded", + "CreateFailed", + "StartFailed", + "StopFailed", + "RestartFailed", + "ReimageFailed", + "DeleteFailed" + ], + "x-ms-enum": { + "name": "OperationStatus", + "modelAsString": true + } + } + } + }, + "ComputeInstanceApplication": { + "type": "object", + "description": "Defines an Aml Instance application and its connectivity endpoint URI.", + "properties": { + "displayName": { + "type": "string", + "description": "Name of the ComputeInstance application." + }, + "endpointUri": { + "type": "string", + "description": "Application' endpoint URI." + } + } + }, + "ComputeInstanceConnectivityEndpoints": { + "type": "object", + "readOnly": true, + "description": "Defines all connectivity endpoints and properties for an ComputeInstance.", + "properties": { + "publicIpAddress": { + "type": "string", + "readOnly": true, + "description": "Public IP Address of this ComputeInstance." + }, + "privateIpAddress": { + "type": "string", + "readOnly": true, + "description": "Private IP Address of this ComputeInstance (local to the VNET in which the compute instance is deployed)." + } + } + }, + "ComputeInstanceCreatedBy": { + "type": "object", + "readOnly": true, + "description": "Describes information on user who created this ComputeInstance.", + "properties": { + "userName": { + "type": "string", + "readOnly": true, + "description": "Name of the user." + }, + "userOrgId": { + "type": "string", + "readOnly": true, + "description": "Uniquely identifies user' Azure Active Directory organization." + }, + "userId": { + "type": "string", + "readOnly": true, + "description": "Uniquely identifies the user within his/her organization." + } + } + }, + "PersonalComputeInstanceSettings": { + "type": "object", + "properties": { + "assignedUser": { + "$ref": "#/definitions/AssignedUser", + "title": "Assigned User.", + "description": "A user explicitly assigned to a personal compute instance." + } + }, + "description": "Settings for a personal compute instance." + }, + "AssignedUser": { + "type": "object", + "description": "A user that can be assigned to a compute instance.", + "properties": { + "objectId": { + "type": "string", + "description": "User’s AAD Object Id." + }, + "tenantId": { + "type": "string", + "description": "User’s AAD Tenant Id." + } + }, + "required": [ + "objectId", + "tenantId" + ] + }, + "ServiceManagedResourcesSettings": { + "type": "object", + "properties": { + "cosmosDb": { + "$ref": "#/definitions/CosmosDbSettings", + "description": "The settings for the service managed cosmosdb account." + } + } + }, + "CosmosDbSettings": { + "type": "object", + "properties": { + "collectionsThroughput": { + "type": "integer", + "format": "int32", + "description": "The throughput of the collections in cosmosdb database" + } + } + }, + "NotebookResourceInfo": { + "type": "object", + "properties": { + "fqdn": { + "type": "string" + }, + "resourceId": { + "type": "string", + "description": "the data plane resourceId that used to initialize notebook component" + }, + "notebookPreparationError": { + "$ref": "#/definitions/NotebookPreparationError", + "description": "The error that occurs when preparing notebook." + } + } + }, + "NotebookPreparationError": { + "type": "object", + "properties": { + "errorMessage": { + "type": "string" + }, + "statusCode": { + "format": "int32", + "type": "integer" + } + } + }, + "ListNotebookKeysResult": { + "type": "object", + "properties": { + "primaryAccessKey": { + "readOnly": true, + "type": "string", + "x-ms-secret": true + }, + "secondaryAccessKey": { + "readOnly": true, + "type": "string", + "x-ms-secret": true + } + } + }, + "ListStorageAccountKeysResult": { + "type": "object", + "properties": { + "userStorageKey": { + "readOnly": true, + "type": "string", + "x-ms-secret": true + } + } + }, + "PaginatedWorkspaceConnectionsList": { + "type": "object", + "description": "Paginated list of Workspace connection objects.", + "properties": { + "value": { + "type": "array", + "description": "An array of Workspace connection objects.", + "items": { + "$ref": "#/definitions/WorkspaceConnection" + } + }, + "nextLink": { + "type": "string", + "description": "A continuation link (absolute URI) to the next page of results in the list." + } + } + }, + "WorkspaceConnection": { + "x-ms-azure-resource": true, + "description": "Workspace connection.", + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "ResourceId of the workspace connection.", + "readOnly": true + }, + "name": { + "type": "string", + "description": "Friendly name of the workspace connection.", + "readOnly": true + }, + "type": { + "type": "string", + "description": "Resource type of workspace connection.", + "readOnly": true + }, + "properties": { + "type": "object", + "description": "Properties of workspace connection.", + "$ref": "#/definitions/WorkspaceConnectionProps", + "x-ms-client-flatten": true + } + } + }, + "WorkspaceConnectionDto": { + "type": "object", + "description": "object used for creating workspace connection.", + "properties": { + "name": { + "description": "Friendly name of the workspace connection", + "type": "string" + }, + "properties": { + "type": "object", + "description": "Properties of workspace connection.", + "$ref": "#/definitions/WorkspaceConnectionProps", + "x-ms-client-flatten": true + } + } + }, + "WorkspaceConnectionProps": { + "type": "object", + "description": "Workspace Connection specific properties.", + "properties": { + "category": { + "description": "Category of the workspace connection.", + "type": "string" + }, + "target": { + "description": "Target of the workspace connection.", + "type": "string" + }, + "authType": { + "description": "Authorization type of the workspace connection.", + "type": "string" + }, + "value": { + "description": "Value details of the workspace connection.", + "type": "string" + }, + "valueFormat": { + "description": "format for the workspace connection value", + "type": "string", + "enum": [ + "JSON" + ], + "x-ms-enum": { + "name": "ValueFormat", + "modelAsString": true + } + } + } + }, + "SetupScripts": { + "type": "object", + "description": "Details of customized scripts to execute for setting up the cluster.", + "properties": { + "scripts": { + "description": "Customized setup scripts", + "$ref": "#/definitions/ScriptsToExecute" + } + } + }, + "ScriptsToExecute": { + "type": "object", + "description": "Customized setup scripts", + "properties": { + "startupScript": { + "description": "Script that's run every time the machine starts.", + "$ref": "#/definitions/ScriptReference" + }, + "creationScript": { + "description": "Script that's run only once during provision of the compute.", + "$ref": "#/definitions/ScriptReference" + } + } + }, + "ScriptReference": { + "type": "object", + "description": "Script reference", + "properties": { + "scriptSource": { + "description": "The storage source of the script: inline, workspace.", + "type": "string" + }, + "scriptData": { + "description": "The location of scripts in the mounted volume.", + "type": "string" + }, + "scriptArguments": { + "description": "Optional command line arguments passed to the script to run.", + "type": "string" + }, + "timeout": { + "description": "Optional time period passed to timeout command.", + "type": "string" + } + } + }, + "AutoScaleProperties": { + "type": "object", + "description": "Auto scale properties", + "properties": { + "minNodeCount": { + "format": "int32", + "type": "integer" + }, + "enabled": { + "type": "boolean" + }, + "maxNodeCount": { + "format": "int32", + "type": "integer" + } + } + }, + "AutoPauseProperties": { + "type": "object", + "description": "Auto pause properties", + "properties": { + "delayInMinutes": { + "format": "int32", + "type": "integer" + }, + "enabled": { + "type": "boolean" + } + } + }, + "SynapseSparkPoolProperties": { + "type": "object", + "description": "Properties specific to Synapse Spark pools.", + "properties": { + "properties": { + "type": "object", + "description": "AKS properties", + "properties": { + "autoScaleProperties": { + "description": "Auto scale properties.", + "$ref": "#/definitions/AutoScaleProperties" + }, + "autoPauseProperties": { + "description": "Auto pause properties.", + "$ref": "#/definitions/AutoPauseProperties" + }, + "sparkVersion": { + "description": "Spark version.", + "type": "string" + }, + "nodeCount": { + "description": "The number of compute nodes currently assigned to the compute.", + "type": "integer", + "format": "int32" + }, + "nodeSize": { + "description": "Node size.", + "type": "string" + }, + "nodeSizeFamily": { + "description": "Node size family.", + "type": "string" + }, + "subscriptionId": { + "description": "Azure subscription identifier.", + "type": "string" + }, + "resourceGroup": { + "description": "Name of the resource group in which workspace is located.", + "type": "string" + }, + "workspaceName": { + "description": "Name of Azure Machine Learning workspace.", + "type": "string" + }, + "poolName": { + "description": "Pool name.", + "type": "string" + } + } + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/readme.azureresourceschema.md b/specification/machinelearningservices/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index f7a7514e7bdd..000000000000 --- a/specification/machinelearningservices/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,205 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-machinelearningservices-2021-01-01 - - tag: schema-machinelearningservices-2020-09-01-preview - - tag: schema-machinelearningservices-2020-08-01 - - tag: schema-machinelearningservices-2020-06-01 - - tag: schema-machinelearningservices-2020-05-15-preview - - tag: schema-machinelearningservices-2020-05-01-preview - - tag: schema-machinelearningservices-2020-04-01-preview - - tag: schema-machinelearningservices-2020-04-01 - - tag: schema-machinelearningservices-2020-03-01 - - tag: schema-machinelearningservices-2020-02-18-preview - - tag: schema-machinelearningservices-2020-01-01 - - tag: schema-machinelearningservices-2019-11-01 - - tag: schema-machinelearningservices-2019-06-01 - - tag: schema-machinelearningservices-2019-05-01 - - tag: schema-machinelearningservices-2018-11-19 - - tag: schema-machinelearningservices-2018-03-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-machinelearningservices-2021-01-01 and azureresourceschema - -``` yaml $(tag) == 'schema-machinelearningservices-2021-01-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.MachineLearningServices/stable/2021-01-01/machineLearningServices.json - -``` - -### Tag: schema-machinelearningservices-2020-09-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-machinelearningservices-2020-09-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.MachineLearningServices/preview/2020-09-01-preview/jobs.json - - Microsoft.MachineLearningServices/preview/2020-09-01-preview/machineLearningServices.json - -``` - -### Tag: schema-machinelearningservices-2020-08-01 and azureresourceschema - -``` yaml $(tag) == 'schema-machinelearningservices-2020-08-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.MachineLearningServices/stable/2020-08-01/machineLearningServices.json - -``` - -### Tag: schema-machinelearningservices-2020-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-machinelearningservices-2020-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.MachineLearningServices/stable/2020-06-01/machineLearningServices.json - -``` - -### Tag: schema-machinelearningservices-2020-05-15-preview and azureresourceschema - -``` yaml $(tag) == 'schema-machinelearningservices-2020-05-15-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.MachineLearningServices/preview/2020-05-15-preview/machineLearningServices.json - -``` - -### Tag: schema-machinelearningservices-2020-05-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-machinelearningservices-2020-05-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.MachineLearningServices/preview/2020-05-01-preview/machineLearningServices.json - -``` - -### Tag: schema-machinelearningservices-2020-04-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-machinelearningservices-2020-04-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.MachineLearningServices/preview/2020-04-01-preview/machineLearningServices.json - -``` - -### Tag: schema-machinelearningservices-2020-04-01 and azureresourceschema - -``` yaml $(tag) == 'schema-machinelearningservices-2020-04-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.MachineLearningServices/stable/2020-04-01/machineLearningServices.json - -``` - -### Tag: schema-machinelearningservices-2020-03-01 and azureresourceschema - -``` yaml $(tag) == 'schema-machinelearningservices-2020-03-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.MachineLearningServices/stable/2020-03-01/machineLearningServices.json - -``` - -### Tag: schema-machinelearningservices-2020-02-18-preview and azureresourceschema - -``` yaml $(tag) == 'schema-machinelearningservices-2020-02-18-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.MachineLearningServices/preview/2020-02-18-preview/machineLearningServices.json - -``` - -### Tag: schema-machinelearningservices-2020-01-01 and azureresourceschema - -``` yaml $(tag) == 'schema-machinelearningservices-2020-01-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.MachineLearningServices/stable/2020-01-01/machineLearningServices.json - -``` - -### Tag: schema-machinelearningservices-2019-11-01 and azureresourceschema - -``` yaml $(tag) == 'schema-machinelearningservices-2019-11-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.MachineLearningServices/stable/2019-11-01/machineLearningServices.json - -``` - -### Tag: schema-machinelearningservices-2019-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-machinelearningservices-2019-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.MachineLearningServices/stable/2019-06-01/machineLearningServices.json - -``` - -### Tag: schema-machinelearningservices-2019-05-01 and azureresourceschema - -``` yaml $(tag) == 'schema-machinelearningservices-2019-05-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.MachineLearningServices/stable/2019-05-01/machineLearningServices.json - -``` - -### Tag: schema-machinelearningservices-2018-11-19 and azureresourceschema - -``` yaml $(tag) == 'schema-machinelearningservices-2018-11-19' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.MachineLearningServices/stable/2018-11-19/machineLearningServices.json - -``` - -### Tag: schema-machinelearningservices-2018-03-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-machinelearningservices-2018-03-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.MachineLearningServices/preview/2018-03-01-preview/machineLearningServices.json - -``` diff --git a/specification/machinelearningservices/resource-manager/readme.go.md b/specification/machinelearningservices/resource-manager/readme.go.md index 77714b85fff2..dce4e4fc53d2 100644 --- a/specification/machinelearningservices/resource-manager/readme.go.md +++ b/specification/machinelearningservices/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ```yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION clear-output-folder: true namespace: machinelearningservices ``` @@ -13,6 +13,7 @@ go: ```yaml $(go) && $(multiapi) batch: + - tag: package-2021-03-01-preview - tag: package-2020-04-01 - tag: package-2020-03-01 - tag: package-2020-01-01 @@ -23,6 +24,15 @@ batch: - tag: package-2020-02-18-preview - tag: package-2018-03-preview ``` +## Tag: package-2021-03-01-preview and go + +These settings apply only when `--tag=package-2021-03-01-preview --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +```yaml $(tag)=='package-2021-03-01-preview' && $(go) +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2021-03-01-preview/$(namespace) +``` + ## Tag: package-2020-04-01 and go These settings apply only when `--tag=package-2020-04-01 --go` is specified on the command line. diff --git a/specification/machinelearningservices/resource-manager/readme.java.md b/specification/machinelearningservices/resource-manager/readme.java.md new file mode 100644 index 000000000000..38010227dd0b --- /dev/null +++ b/specification/machinelearningservices/resource-manager/readme.java.md @@ -0,0 +1,245 @@ +## Java + +These settings apply only when `--java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(java) +azure-arm: true +fluent: true +namespace: com.microsoft.azure.management.machinelearning.services +license-header: MICROSOFT_MIT_NO_CODEGEN +payload-flattening-threshold: 1 +output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-machinelearning/services + +service-name: MachineLearningServices +``` + +### Java multi-api + +``` yaml $(java) && $(multiapi) +batch: + - tag: package-2021-03-01-preview + - tag: package-2021-04-01 + - tag: package-2021-01-01 + - tag: package-2020-08-01 + - tag: package-2020-06-01 + - tag: package-2020-04-01 + - tag: package-2020-03-01 + - tag: package-2020-01-01 + - tag: package-2019-11-01 + - tag: package-2019-06-01 + - tag: package-2019-05-01 + - tag: package-2018-11-19 + - tag: package-2020-09-01-preview + - tag: package-2020-05-01-preview + - tag: package-2020-04-01-preview + - tag: package-2020-02-18-preview + - tag: package-2018-03-preview +``` +### Tag: package-2021-03-01-preview and java + +These settings apply only when `--tag=package-2021-03-01-preview --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2021-03-01-preview' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.machinelearningservices.v2021_03_01_preview + output-folder: $(azure-libraries-for-java-folder)/sdk/machinelearningservices/mgmt-v2021_03_01_preview +regenerate-manager: true +generate-interface: true +``` + +### Tag: package-2021-04-01 and java + +These settings apply only when `--tag=package-2021-04-01 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2021-04-01' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.machinelearningservices.v2021_04_01 + output-folder: $(azure-libraries-for-java-folder)/sdk/machinelearningservices/mgmt-v2021_04_01 +regenerate-manager: true +generate-interface: true +``` + +### Tag: package-2021-01-01 and java + +These settings apply only when `--tag=package-2021-01-01 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2021-01-01' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.machinelearningservices.v2021_01_01 + output-folder: $(azure-libraries-for-java-folder)/sdk/machinelearningservices/mgmt-v2021_01_01 +regenerate-manager: true +generate-interface: true +``` + +### Tag: package-2020-08-01 and java + +These settings apply only when `--tag=package-2020-08-01 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2020-08-01' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.machinelearningservices.v2020_08_01 + output-folder: $(azure-libraries-for-java-folder)/sdk/machinelearningservices/mgmt-v2020_08_01 +regenerate-manager: true +generate-interface: true +``` + +### Tag: package-2020-06-01 and java + +These settings apply only when `--tag=package-2020-06-01 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2020-06-01' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.machinelearningservices.v2020_06_01 + output-folder: $(azure-libraries-for-java-folder)/sdk/machinelearningservices/mgmt-v2020_06_01 +regenerate-manager: true +generate-interface: true +``` + +### Tag: package-2020-04-01 and java + +These settings apply only when `--tag=package-2020-04-01 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2020-04-01' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.machinelearningservices.v2020_04_01 + output-folder: $(azure-libraries-for-java-folder)/sdk/machinelearningservices/mgmt-v2020_04_01 +regenerate-manager: true +generate-interface: true +``` + +### Tag: package-2020-03-01 and java + +These settings apply only when `--tag=package-2020-03-01 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2020-03-01' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.machinelearningservices.v2020_03_01 + output-folder: $(azure-libraries-for-java-folder)/sdk/machinelearningservices/mgmt-v2020_03_01 +regenerate-manager: true +generate-interface: true +``` + +### Tag: package-2020-01-01 and java + +These settings apply only when `--tag=package-2020-01-01 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2020-01-01' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.machinelearningservices.v2020_01_01 + output-folder: $(azure-libraries-for-java-folder)/sdk/machinelearningservices/mgmt-v2020_01_01 +regenerate-manager: true +generate-interface: true +``` + +### Tag: package-2019-11-01 and java + +These settings apply only when `--tag=package-2019-11-01 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2019-11-01' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.machinelearningservices.v2019_11_01 + output-folder: $(azure-libraries-for-java-folder)/sdk/machinelearningservices/mgmt-v2019_11_01 +regenerate-manager: true +generate-interface: true +``` + +### Tag: package-2019-06-01 and java + +These settings apply only when `--tag=package-2019-06-01 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2019-06-01' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.machinelearningservices.v2019_06_01 + output-folder: $(azure-libraries-for-java-folder)/sdk/machinelearningservices/mgmt-v2019_06_01 +regenerate-manager: true +generate-interface: true +``` + +### Tag: package-2019-05-01 and java + +These settings apply only when `--tag=package-2019-05-01 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2019-05-01' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.machinelearningservices.v2019_05_01 + output-folder: $(azure-libraries-for-java-folder)/sdk/machinelearningservices/mgmt-v2019_05_01 +regenerate-manager: true +generate-interface: true +``` + +### Tag: package-2018-11-19 and java + +These settings apply only when `--tag=package-2018-11-19 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2018-11-19' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.machinelearningservices.v2018_11_19 + output-folder: $(azure-libraries-for-java-folder)/sdk/machinelearningservices/mgmt-v2018_11_19 +regenerate-manager: true +generate-interface: true +``` + +### Tag: package-2020-09-01-preview and java + +These settings apply only when `--tag=package-2020-09-01-preview --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2020-09-01-preview' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.machinelearningservices.v2020_09_01_preview + output-folder: $(azure-libraries-for-java-folder)/sdk/machinelearningservices/mgmt-v2020_09_01_preview +regenerate-manager: true +generate-interface: true +``` + +### Tag: package-2020-05-01-preview and java + +These settings apply only when `--tag=package-2020-05-01-preview --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2020-05-01-preview' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.machinelearningservices.v2020_05_01_preview + output-folder: $(azure-libraries-for-java-folder)/sdk/machinelearningservices/mgmt-v2020_05_01_preview +regenerate-manager: true +generate-interface: true +``` + +### Tag: package-2020-04-01-preview and java + +These settings apply only when `--tag=package-2020-04-01-preview --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2020-04-01-preview' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.machinelearningservices.v2020_04_01_preview + output-folder: $(azure-libraries-for-java-folder)/sdk/machinelearningservices/mgmt-v2020_04_01_preview +regenerate-manager: true +generate-interface: true +``` + +### Tag: package-2018-03-preview and java + +These settings apply only when `--tag=package-2018-03-preview --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2018-03-preview' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.machinelearningservices.v2018_03_01_preview + output-folder: $(azure-libraries-for-java-folder)/sdk/machinelearningservices/mgmt-v2018_03_01_preview +regenerate-manager: true +generate-interface: true +``` diff --git a/specification/machinelearningservices/resource-manager/readme.md b/specification/machinelearningservices/resource-manager/readme.md index 421d55af5b7d..3429e0c1672d 100644 --- a/specification/machinelearningservices/resource-manager/readme.md +++ b/specification/machinelearningservices/resource-manager/readme.md @@ -8,7 +8,7 @@ This is the AutoRest configuration file for Machine Learning Services. ## Getting Started -To build the SDK for EventHub, simply [Install AutoRest](https://aka.ms/autorest/install) and in this folder, run: +To build the SDK for Azure Machine Learning, simply [Install AutoRest](https://aka.ms/autorest/install) and in this folder, run: > `autorest` @@ -24,9 +24,19 @@ To see additional help and options, run: These are the global settings for the Machine Learning Services API. + ``` yaml openapi-type: arm -tag: package-2021-01-01 +tag: package-2021-04-01 +``` + +### Tag: package-2021-04-01 + +These settings apply only when `--tag=package-2021-04` is specified on the command line. + +```yaml $(tag) == 'package-2021-04-01' +input-file: + - Microsoft.MachineLearningServices/stable/2021-04-01/machineLearningServices.json ``` ### Tag: package-2021-01-01 @@ -38,11 +48,24 @@ input-file: - Microsoft.MachineLearningServices/stable/2021-01-01/machineLearningServices.json ``` + +### Tag: package-2021-03-01-preview + +These settings apply only when `--tag=package-2021-03-01-preview` is specified on the command line. + +```yaml $(tag) == 'package-2021-03-01-preview' +input-file: + - Microsoft.MachineLearningServices/preview/2021-03-01-preview/machineLearningServices.json + - Microsoft.MachineLearningServices/preview/2021-03-01-preview/mfe.json + - Microsoft.MachineLearningServices/preview/2021-03-01-preview/services.json + - Microsoft.MachineLearningServices/preview/2021-03-01-preview/workspaceFeatures.json + - Microsoft.MachineLearningServices/preview/2021-03-01-preview/workspaceSkus.json +``` ### Tag: package-2020-08-01 These settings apply only when `--tag=package-2020-08` is specified on the command line. -```yaml $(tag) == 'package-2020-08-01' +``` yaml $(tag) == 'package-2020-08-01' input-file: - Microsoft.MachineLearningServices/stable/2020-08-01/machineLearningServices.json ``` @@ -188,12 +211,11 @@ swagger-to-sdk: - repo: azure-sdk-for-net - repo: azure-sdk-for-go - repo: azure-sdk-for-python + - repo: azure-sdk-for-java - repo: azure-sdk-for-js - repo: azure-sdk-for-node - repo: azure-cli-extensions - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js machinelearningservices/resource-manager ``` ## C# @@ -216,220 +238,6 @@ See configuration in [readme.go.md](./readme.go.md) ## Java -These settings apply only when `--java` is specified on the command line. -Please also specify `--azure-libraries-for-java-folder=`. - -``` yaml $(java) -azure-arm: true -fluent: true -namespace: com.microsoft.azure.management.machinelearning.services -license-header: MICROSOFT_MIT_NO_CODEGEN -payload-flattening-threshold: 1 -output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-machinelearning/services -``` - -### Java multi-api - -``` yaml $(java) && $(multiapi) -batch: - - tag: package-2021-01-01 - - tag: package-2020-08-01 - - tag: package-2020-06-01 - - tag: package-2020-04-01 - - tag: package-2020-03-01 - - tag: package-2020-01-01 - - tag: package-2019-11-01 - - tag: package-2019-06-01 - - tag: package-2019-05-01 - - tag: package-2018-11-19 - - tag: package-2020-09-01-preview - - tag: package-2020-05-01-preview - - tag: package-2020-04-01-preview - - tag: package-2020-02-18-preview - - tag: package-2018-03-preview -``` -### Tag: package-2021-01-01 and java - -These settings apply only when `--tag=package-2021-01-01 --java` is specified on the command line. -Please also specify `--azure-libraries-for-java=`. - -``` yaml $(tag) == 'package-2021-01-01' && $(java) && $(multiapi) -java: - namespace: com.microsoft.azure.management.machinelearningservices.v2021_01_01 - output-folder: $(azure-libraries-for-java-folder)/sdk/machinelearningservices/mgmt-v2021_01_01 -regenerate-manager: true -generate-interface: true -``` - -### Tag: package-2020-08-01 and java - -These settings apply only when `--tag=package-2020-08-01 --java` is specified on the command line. -Please also specify `--azure-libraries-for-java=`. - -``` yaml $(tag) == 'package-2020-08-01' && $(java) && $(multiapi) -java: - namespace: com.microsoft.azure.management.machinelearningservices.v2020_08_01 - output-folder: $(azure-libraries-for-java-folder)/sdk/machinelearningservices/mgmt-v2020_08_01 -regenerate-manager: true -generate-interface: true -``` - -### Tag: package-2020-06-01 and java - -These settings apply only when `--tag=package-2020-06-01 --java` is specified on the command line. -Please also specify `--azure-libraries-for-java=`. - -``` yaml $(tag) == 'package-2020-06-01' && $(java) && $(multiapi) -java: - namespace: com.microsoft.azure.management.machinelearningservices.v2020_06_01 - output-folder: $(azure-libraries-for-java-folder)/sdk/machinelearningservices/mgmt-v2020_06_01 -regenerate-manager: true -generate-interface: true -``` - -### Tag: package-2020-04-01 and java - -These settings apply only when `--tag=package-2020-04-01 --java` is specified on the command line. -Please also specify `--azure-libraries-for-java=`. - -``` yaml $(tag) == 'package-2020-04-01' && $(java) && $(multiapi) -java: - namespace: com.microsoft.azure.management.machinelearningservices.v2020_04_01 - output-folder: $(azure-libraries-for-java-folder)/sdk/machinelearningservices/mgmt-v2020_04_01 -regenerate-manager: true -generate-interface: true -``` - -### Tag: package-2020-03-01 and java - -These settings apply only when `--tag=package-2020-03-01 --java` is specified on the command line. -Please also specify `--azure-libraries-for-java=`. - -``` yaml $(tag) == 'package-2020-03-01' && $(java) && $(multiapi) -java: - namespace: com.microsoft.azure.management.machinelearningservices.v2020_03_01 - output-folder: $(azure-libraries-for-java-folder)/sdk/machinelearningservices/mgmt-v2020_03_01 -regenerate-manager: true -generate-interface: true -``` - -### Tag: package-2020-01-01 and java - -These settings apply only when `--tag=package-2020-01-01 --java` is specified on the command line. -Please also specify `--azure-libraries-for-java=`. - -``` yaml $(tag) == 'package-2020-01-01' && $(java) && $(multiapi) -java: - namespace: com.microsoft.azure.management.machinelearningservices.v2020_01_01 - output-folder: $(azure-libraries-for-java-folder)/sdk/machinelearningservices/mgmt-v2020_01_01 -regenerate-manager: true -generate-interface: true -``` - -### Tag: package-2019-11-01 and java - -These settings apply only when `--tag=package-2019-11-01 --java` is specified on the command line. -Please also specify `--azure-libraries-for-java=`. - -``` yaml $(tag) == 'package-2019-11-01' && $(java) && $(multiapi) -java: - namespace: com.microsoft.azure.management.machinelearningservices.v2019_11_01 - output-folder: $(azure-libraries-for-java-folder)/sdk/machinelearningservices/mgmt-v2019_11_01 -regenerate-manager: true -generate-interface: true -``` - -### Tag: package-2019-06-01 and java - -These settings apply only when `--tag=package-2019-06-01 --java` is specified on the command line. -Please also specify `--azure-libraries-for-java=`. - -``` yaml $(tag) == 'package-2019-06-01' && $(java) && $(multiapi) -java: - namespace: com.microsoft.azure.management.machinelearningservices.v2019_06_01 - output-folder: $(azure-libraries-for-java-folder)/sdk/machinelearningservices/mgmt-v2019_06_01 -regenerate-manager: true -generate-interface: true -``` - -### Tag: package-2019-05-01 and java - -These settings apply only when `--tag=package-2019-05-01 --java` is specified on the command line. -Please also specify `--azure-libraries-for-java=`. - -``` yaml $(tag) == 'package-2019-05-01' && $(java) && $(multiapi) -java: - namespace: com.microsoft.azure.management.machinelearningservices.v2019_05_01 - output-folder: $(azure-libraries-for-java-folder)/sdk/machinelearningservices/mgmt-v2019_05_01 -regenerate-manager: true -generate-interface: true -``` - -### Tag: package-2018-11-19 and java - -These settings apply only when `--tag=package-2018-11-19 --java` is specified on the command line. -Please also specify `--azure-libraries-for-java=`. - -``` yaml $(tag) == 'package-2018-11-19' && $(java) && $(multiapi) -java: - namespace: com.microsoft.azure.management.machinelearningservices.v2018_11_19 - output-folder: $(azure-libraries-for-java-folder)/sdk/machinelearningservices/mgmt-v2018_11_19 -regenerate-manager: true -generate-interface: true -``` - -### Tag: package-2020-09-01-preview and java - -These settings apply only when `--tag=package-2020-09-01-preview --java` is specified on the command line. -Please also specify `--azure-libraries-for-java=`. - -``` yaml $(tag) == 'package-2020-09-01-preview' && $(java) && $(multiapi) -java: - namespace: com.microsoft.azure.management.machinelearningservices.v2020_09_01_preview - output-folder: $(azure-libraries-for-java-folder)/sdk/machinelearningservices/mgmt-v2020_09_01_preview -regenerate-manager: true -generate-interface: true -``` - -### Tag: package-2020-05-01-preview and java - -These settings apply only when `--tag=package-2020-05-01-preview --java` is specified on the command line. -Please also specify `--azure-libraries-for-java=`. - -``` yaml $(tag) == 'package-2020-05-01-preview' && $(java) && $(multiapi) -java: - namespace: com.microsoft.azure.management.machinelearningservices.v2020_05_01_preview - output-folder: $(azure-libraries-for-java-folder)/sdk/machinelearningservices/mgmt-v2020_05_01_preview -regenerate-manager: true -generate-interface: true -``` - -### Tag: package-2020-04-01-preview and java - -These settings apply only when `--tag=package-2020-04-01-preview --java` is specified on the command line. -Please also specify `--azure-libraries-for-java=`. - -``` yaml $(tag) == 'package-2020-04-01-preview' && $(java) && $(multiapi) -java: - namespace: com.microsoft.azure.management.machinelearningservices.v2020_04_01_preview - output-folder: $(azure-libraries-for-java-folder)/sdk/machinelearningservices/mgmt-v2020_04_01_preview -regenerate-manager: true -generate-interface: true -``` - -### Tag: package-2018-03-preview and java - -These settings apply only when `--tag=package-2018-03-preview --java` is specified on the command line. -Please also specify `--azure-libraries-for-java=`. - -``` yaml $(tag) == 'package-2018-03-preview' && $(java) && $(multiapi) -java: - namespace: com.microsoft.azure.management.machinelearningservices.v2018_03_01_preview - output-folder: $(azure-libraries-for-java-folder)/sdk/machinelearningservices/mgmt-v2018_03_01_preview -regenerate-manager: true -generate-interface: true -``` +See configuration in [readme.java.md](./readme.java.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/Maintenance.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/Maintenance.json new file mode 100644 index 000000000000..515204c864ae --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/Maintenance.json @@ -0,0 +1,2140 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-05-01", + "title": "MaintenanceManagementClient", + "description": "Azure Maintenance Management Client" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Maintenance/publicMaintenanceConfigurations": { + "get": { + "tags": [ + "PublicMaintenanceConfigurations" + ], + "summary": "Get Public Maintenance Configuration records", + "operationId": "PublicMaintenanceConfigurations_List", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ListMaintenanceConfigurationsResult" + } + }, + "default": { + "description": "BadRequest", + "schema": { + "$ref": "#/definitions/MaintenanceError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "PublicMaintenanceConfigurations_List": { + "$ref": "./examples/PublicMaintenanceConfigurations_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/{resourceName}": { + "get": { + "tags": [ + "PublicMaintenanceConfigurations" + ], + "summary": "Get Public Maintenance Configuration record", + "operationId": "PublicMaintenanceConfigurations_Get", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceName", + "in": "path", + "description": "Maintenance Configuration Name", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MaintenanceConfiguration" + } + }, + "default": { + "description": "BadRequest", + "schema": { + "$ref": "#/definitions/MaintenanceError" + } + } + }, + "x-ms-examples": { + "PublicMaintenanceConfigurations_GetForResource": { + "$ref": "./examples/PublicMaintenanceConfigurations_GetForResource.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceParentType}/{resourceParentName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/applyUpdates/{applyUpdateName}": { + "get": { + "tags": [ + "ApplyUpdates" + ], + "summary": "Track Updates to resource with parent", + "description": "Track maintenance updates to resource with parent", + "operationId": "ApplyUpdates_GetParent", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "resourceParentType", + "in": "path", + "description": "Resource parent type", + "required": true, + "type": "string" + }, + { + "name": "resourceParentName", + "in": "path", + "description": "Resource parent identifier", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "name": "applyUpdateName", + "in": "path", + "description": "applyUpdate Id", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ApplyUpdate" + } + }, + "default": { + "description": "BadRequest", + "schema": { + "$ref": "#/definitions/MaintenanceError" + } + } + }, + "x-ms-examples": { + "ApplyUpdates_GetParent": { + "$ref": "./examples/ApplyUpdates_GetParent.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/applyUpdates/{applyUpdateName}": { + "get": { + "tags": [ + "ApplyUpdates" + ], + "summary": "Track Updates to resource", + "description": "Track maintenance updates to resource", + "operationId": "ApplyUpdates_Get", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "name": "applyUpdateName", + "in": "path", + "description": "applyUpdate Id", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ApplyUpdate" + } + }, + "default": { + "description": "BadRequest", + "schema": { + "$ref": "#/definitions/MaintenanceError" + } + } + }, + "x-ms-examples": { + "ApplyUpdates_Get": { + "$ref": "./examples/ApplyUpdates_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceParentType}/{resourceParentName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/applyUpdates/default": { + "put": { + "tags": [ + "ApplyUpdates" + ], + "summary": "Apply Updates to resource with parent", + "description": "Apply maintenance updates to resource with parent", + "operationId": "ApplyUpdates_CreateOrUpdateParent", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceParentType", + "in": "path", + "description": "Resource parent type", + "required": true, + "type": "string" + }, + { + "name": "resourceParentName", + "in": "path", + "description": "Resource parent identifier", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ApplyUpdate" + } + }, + "default": { + "description": "BadRequest", + "schema": { + "$ref": "#/definitions/MaintenanceError" + } + } + }, + "x-ms-examples": { + "ApplyUpdates_CreateOrUpdateParent": { + "$ref": "./examples/ApplyUpdates_CreateOrUpdateParent.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/applyUpdates/default": { + "put": { + "tags": [ + "ApplyUpdates" + ], + "summary": "Apply Updates to resource", + "description": "Apply maintenance updates to resource", + "operationId": "ApplyUpdates_CreateOrUpdate", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ApplyUpdate" + } + }, + "default": { + "description": "BadRequest", + "schema": { + "$ref": "#/definitions/MaintenanceError" + } + } + }, + "x-ms-examples": { + "ApplyUpdates_CreateOrUpdate": { + "$ref": "./examples/ApplyUpdates_CreateOrUpdate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceParentType}/{resourceParentName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/configurationAssignments/{configurationAssignmentName}": { + "put": { + "tags": [ + "ConfigurationAssignments" + ], + "summary": "Create configuration assignment", + "description": "Register configuration for resource.", + "operationId": "ConfigurationAssignments_CreateOrUpdateParent", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceParentType", + "in": "path", + "description": "Resource parent type", + "required": true, + "type": "string" + }, + { + "name": "resourceParentName", + "in": "path", + "description": "Resource parent identifier", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "name": "configurationAssignmentName", + "in": "path", + "description": "Configuration assignment name", + "required": true, + "type": "string" + }, + { + "name": "configurationAssignment", + "in": "body", + "description": "The configurationAssignment", + "required": true, + "schema": { + "$ref": "#/definitions/ConfigurationAssignment" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ConfigurationAssignment" + } + }, + "default": { + "description": "BadRequest", + "schema": { + "$ref": "#/definitions/MaintenanceError" + } + } + }, + "x-ms-examples": { + "ConfigurationAssignments_CreateOrUpdateParent": { + "$ref": "./examples/ConfigurationAssignments_CreateOrUpdateParent.json" + } + } + }, + "delete": { + "tags": [ + "ConfigurationAssignments" + ], + "summary": "Unregister configuration for resource", + "description": "Unregister configuration for resource.", + "operationId": "ConfigurationAssignments_DeleteParent", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceParentType", + "in": "path", + "description": "Resource parent type", + "required": true, + "type": "string" + }, + { + "name": "resourceParentName", + "in": "path", + "description": "Resource parent identifier", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "name": "configurationAssignmentName", + "in": "path", + "description": "Unique configuration assignment name", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ConfigurationAssignment" + } + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "BadRequest", + "schema": { + "$ref": "#/definitions/MaintenanceError" + } + } + }, + "x-ms-examples": { + "ConfigurationAssignments_DeleteParent": { + "$ref": "./examples/ConfigurationAssignments_DeleteParent.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/configurationAssignments/{configurationAssignmentName}": { + "put": { + "tags": [ + "ConfigurationAssignments" + ], + "summary": "Create configuration assignment", + "description": "Register configuration for resource.", + "operationId": "ConfigurationAssignments_CreateOrUpdate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "name": "configurationAssignmentName", + "in": "path", + "description": "Configuration assignment name", + "required": true, + "type": "string" + }, + { + "name": "configurationAssignment", + "in": "body", + "description": "The configurationAssignment", + "required": true, + "schema": { + "$ref": "#/definitions/ConfigurationAssignment" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ConfigurationAssignment" + } + }, + "default": { + "description": "BadRequest", + "schema": { + "$ref": "#/definitions/MaintenanceError" + } + } + }, + "x-ms-examples": { + "ConfigurationAssignments_CreateOrUpdate": { + "$ref": "./examples/ConfigurationAssignments_CreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "ConfigurationAssignments" + ], + "summary": "Unregister configuration for resource", + "description": "Unregister configuration for resource.", + "operationId": "ConfigurationAssignments_Delete", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "name": "configurationAssignmentName", + "in": "path", + "description": "Unique configuration assignment name", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ConfigurationAssignment" + } + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "BadRequest", + "schema": { + "$ref": "#/definitions/MaintenanceError" + } + } + }, + "x-ms-examples": { + "ConfigurationAssignments_Delete": { + "$ref": "./examples/ConfigurationAssignments_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceParentType}/{resourceParentName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/configurationAssignments": { + "get": { + "tags": [ + "ConfigurationAssignments" + ], + "summary": "List configurationAssignments for resource", + "description": "List configurationAssignments for resource.", + "operationId": "ConfigurationAssignments_ListParent", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceParentType", + "in": "path", + "description": "Resource parent type", + "required": true, + "type": "string" + }, + { + "name": "resourceParentName", + "in": "path", + "description": "Resource parent identifier", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ListConfigurationAssignmentsResult" + } + }, + "default": { + "description": "BadRequest", + "schema": { + "$ref": "#/definitions/MaintenanceError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "ConfigurationAssignments_ListParent": { + "$ref": "./examples/ConfigurationAssignments_ListParent.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/configurationAssignments": { + "get": { + "tags": [ + "ConfigurationAssignments" + ], + "summary": "List configurationAssignments for resource", + "description": "List configurationAssignments for resource.", + "operationId": "ConfigurationAssignments_List", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ListConfigurationAssignmentsResult" + } + }, + "default": { + "description": "BadRequest", + "schema": { + "$ref": "#/definitions/MaintenanceError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "ConfigurationAssignments_List": { + "$ref": "./examples/ConfigurationAssignments_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Maintenance/maintenanceConfigurations/{resourceName}": { + "get": { + "tags": [ + "MaintenanceConfigurations" + ], + "summary": "Get Configuration record", + "operationId": "MaintenanceConfigurations_Get", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource Group Name", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Maintenance Configuration Name", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MaintenanceConfiguration" + } + }, + "default": { + "description": "BadRequest", + "schema": { + "$ref": "#/definitions/MaintenanceError" + } + } + }, + "x-ms-examples": { + "MaintenanceConfigurations_GetForResource": { + "$ref": "./examples/MaintenanceConfigurations_GetForResource.json" + } + } + }, + "put": { + "tags": [ + "MaintenanceConfigurations" + ], + "summary": "Create or Update configuration record", + "operationId": "MaintenanceConfigurations_CreateOrUpdate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource Group Name", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Maintenance Configuration Name", + "required": true, + "type": "string" + }, + { + "name": "configuration", + "in": "body", + "description": "The configuration", + "required": true, + "schema": { + "$ref": "#/definitions/MaintenanceConfiguration" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MaintenanceConfiguration" + } + }, + "default": { + "description": "BadRequest", + "schema": { + "$ref": "#/definitions/MaintenanceError" + } + } + }, + "x-ms-examples": { + "MaintenanceConfigurations_CreateOrUpdateForResource": { + "$ref": "./examples/MaintenanceConfigurations_CreateOrUpdateForResource.json" + } + } + }, + "delete": { + "tags": [ + "MaintenanceConfigurations" + ], + "summary": "Delete Configuration record", + "operationId": "MaintenanceConfigurations_Delete", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource Group Name", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Maintenance Configuration Name", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MaintenanceConfiguration" + } + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "BadRequest", + "schema": { + "$ref": "#/definitions/MaintenanceError" + } + } + }, + "x-ms-examples": { + "MaintenanceConfigurations_DeleteForResource": { + "$ref": "./examples/MaintenanceConfigurations_DeleteForResource.json" + } + } + }, + "patch": { + "tags": [ + "MaintenanceConfigurations" + ], + "summary": "Patch configuration record", + "operationId": "MaintenanceConfigurations_Update", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource Group Name", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Maintenance Configuration Name", + "required": true, + "type": "string" + }, + { + "name": "configuration", + "in": "body", + "description": "The configuration", + "required": true, + "schema": { + "$ref": "#/definitions/MaintenanceConfiguration" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MaintenanceConfiguration" + } + }, + "default": { + "description": "BadRequest", + "schema": { + "$ref": "#/definitions/MaintenanceError" + } + } + }, + "x-ms-examples": { + "MaintenanceConfigurations_UpdateForResource": { + "$ref": "./examples/MaintenanceConfigurations_UpdateForResource.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Maintenance/maintenanceConfigurations": { + "get": { + "tags": [ + "MaintenanceConfigurations" + ], + "summary": "Get Configuration records within a subscription", + "operationId": "MaintenanceConfigurations_List", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ListMaintenanceConfigurationsResult" + } + }, + "default": { + "description": "BadRequest", + "schema": { + "$ref": "#/definitions/MaintenanceError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "MaintenanceConfigurations_List": { + "$ref": "./examples/MaintenanceConfigurations_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Maintenance/maintenanceConfigurations": { + "get": { + "tags": [ + "MaintenanceConfigurations" + ], + "summary": "Get Configuration records within a subscription and resource group", + "operationId": "MaintenanceConfigurationsForResourceGroup_List", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource Group Name", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ListMaintenanceConfigurationsResult" + } + }, + "default": { + "description": "BadRequest", + "schema": { + "$ref": "#/definitions/MaintenanceError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "MaintenanceConfigurationsResourceGroup_List": { + "$ref": "./examples/MaintenanceConfigurationsResourceGroup_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Maintenance/applyUpdates": { + "get": { + "tags": [ + "ApplyUpdate" + ], + "summary": "Get Configuration records within a subscription", + "operationId": "ApplyUpdates_List", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ListApplyUpdate" + } + }, + "default": { + "description": "BadRequest", + "schema": { + "$ref": "#/definitions/MaintenanceError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "ApplyUpdates_List": { + "$ref": "./examples/ApplyUpdates_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Maintenance/applyUpdates": { + "get": { + "tags": [ + "ApplyUpdate" + ], + "summary": "Get Configuration records within a subscription and resource group", + "operationId": "ApplyUpdateForResourceGroup_List", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource Group Name", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ListApplyUpdate" + } + }, + "default": { + "description": "BadRequest", + "schema": { + "$ref": "#/definitions/MaintenanceError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "ApplyUpdatesResourceGroup_List": { + "$ref": "./examples/ApplyUpdatesResourceGroup_List.json" + } + } + } + }, + "/providers/Microsoft.Maintenance/operations": { + "get": { + "tags": [ + "Operations" + ], + "summary": "List available operations", + "description": "List the available operations supported by the Microsoft.Maintenance resource provider", + "operationId": "Operations_List", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationsListResult" + } + }, + "default": { + "description": "BadRequest", + "schema": { + "$ref": "#/definitions/MaintenanceError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "Operations_List": { + "$ref": "./examples/Operations_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceParentType}/{resourceParentName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/updates": { + "get": { + "tags": [ + "Updates" + ], + "summary": "Get Updates to resource", + "description": "Get updates to resources.", + "operationId": "Updates_ListParent", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceParentType", + "in": "path", + "description": "Resource parent type", + "required": true, + "type": "string" + }, + { + "name": "resourceParentName", + "in": "path", + "description": "Resource parent identifier", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ListUpdatesResult" + } + }, + "default": { + "description": "BadRequest", + "schema": { + "$ref": "#/definitions/MaintenanceError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "Updates_ListParent": { + "$ref": "./examples/Updates_ListParent.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/updates": { + "get": { + "tags": [ + "Updates" + ], + "summary": "Get Updates to resource", + "description": "Get updates to resources.", + "operationId": "Updates_List", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ListUpdatesResult" + } + }, + "default": { + "description": "BadRequest", + "schema": { + "$ref": "#/definitions/MaintenanceError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "Updates_List": { + "$ref": "./examples/Updates_List.json" + } + } + } + } + }, + "definitions": { + "ApplyUpdateProperties": { + "description": "Properties for apply update", + "type": "object", + "properties": { + "status": { + "description": "The status", + "enum": [ + "Pending", + "InProgress", + "Completed", + "RetryNow", + "RetryLater" + ], + "type": "string", + "x-ms-enum": { + "name": "UpdateStatus", + "modelAsString": true, + "values": [ + { + "value": "Pending", + "description": "There are pending updates to be installed." + }, + { + "value": "InProgress", + "description": "Updates installation are in progress." + }, + { + "value": "Completed", + "description": "All updates are successfully applied." + }, + { + "value": "RetryNow", + "description": "Updates installation failed but are ready to retry again." + }, + { + "value": "RetryLater", + "description": "Updates installation failed and should be retried later." + } + ] + } + }, + "resourceId": { + "description": "The resourceId", + "type": "string" + }, + "lastUpdateTime": { + "format": "date-time", + "description": "Last Update time", + "type": "string" + } + } + }, + "Resource": { + "description": "Definition of a Resource", + "type": "object", + "properties": { + "id": { + "description": "Fully qualified identifier of the resource", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name of the resource", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Type of the resource", + "type": "string", + "readOnly": true + }, + "systemData": { + "readOnly": true, + "type": "object", + "description": "Azure Resource Manager metadata containing createdBy and modifiedBy information.", + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData" + } + }, + "x-ms-azure-resource": true + }, + "ApplyUpdate": { + "description": "Apply Update request", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ApplyUpdateProperties", + "description": "Properties of the apply update", + "x-ms-client-flatten": true + } + } + }, + "ListApplyUpdate": { + "description": "Response for ApplyUpdate list", + "type": "object", + "properties": { + "value": { + "description": "The list of apply updates", + "type": "array", + "items": { + "$ref": "#/definitions/ApplyUpdate" + } + } + } + }, + "ConfigurationAssignmentProperties": { + "description": "Properties for configuration assignment", + "type": "object", + "properties": { + "maintenanceConfigurationId": { + "description": "The maintenance configuration Id", + "type": "string" + }, + "resourceId": { + "description": "The unique resourceId", + "type": "string" + } + } + }, + "ConfigurationAssignment": { + "description": "Configuration Assignment", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "location": { + "description": "Location of the resource", + "type": "string" + }, + "properties": { + "$ref": "#/definitions/ConfigurationAssignmentProperties", + "description": "Properties of the configuration assignment", + "x-ms-client-flatten": true + } + } + }, + "ListConfigurationAssignmentsResult": { + "description": "Response for ConfigurationAssignments list", + "type": "object", + "properties": { + "value": { + "description": "The list of configuration Assignments", + "type": "array", + "items": { + "$ref": "#/definitions/ConfigurationAssignment" + } + } + } + }, + "MaintenanceWindow": { + "description": "Definition of a MaintenanceWindow", + "type": "object", + "properties": { + "startDateTime": { + "description": "Effective start date of the maintenance window in YYYY-MM-DD hh:mm format. The start date can be set to either the current date or future date. The window will be created in the time zone provided and adjusted to daylight savings according to that time zone.", + "type": "string" + }, + "expirationDateTime": { + "description": "Effective expiration date of the maintenance window in YYYY-MM-DD hh:mm format. The window will be created in the time zone provided and adjusted to daylight savings according to that time zone. Expiration date must be set to a future date. If not provided, it will be set to the maximum datetime 9999-12-31 23:59:59.", + "type": "string" + }, + "duration": { + "description": "Duration of the maintenance window in HH:mm format. If not provided, default value will be used based on maintenance scope provided. Example: 05:00.", + "type": "string" + }, + "timeZone": { + "description": "Name of the timezone. List of timezones can be obtained by executing [System.TimeZoneInfo]::GetSystemTimeZones() in PowerShell. Example: Pacific Standard Time, UTC, W. Europe Standard Time, Korea Standard Time, Cen. Australia Standard Time.", + "type": "string" + }, + "recurEvery": { + "description": "Rate at which a Maintenance window is expected to recur. The rate can be expressed as daily, weekly, or monthly schedules. Daily schedule are formatted as recurEvery: [Frequency as integer]['Day(s)']. If no frequency is provided, the default frequency is 1. Daily schedule examples are recurEvery: Day, recurEvery: 3Days. Weekly schedule are formatted as recurEvery: [Frequency as integer]['Week(s)'] [Optional comma separated list of weekdays Monday-Sunday]. Weekly schedule examples are recurEvery: 3Weeks, recurEvery: Week Saturday,Sunday. Monthly schedules are formatted as [Frequency as integer]['Month(s)'] [Comma separated list of month days] or [Frequency as integer]['Month(s)'] [Week of Month (First, Second, Third, Fourth, Last)] [Weekday Monday-Sunday]. Monthly schedule examples are recurEvery: Month, recurEvery: 2Months, recurEvery: Month day23,day24, recurEvery: Month Last Sunday, recurEvery: Month Fourth Monday.", + "type": "string" + } + } + }, + "MaintenanceConfigurationProperties": { + "description": "Properties for maintenance configuration", + "type": "object", + "properties": { + "namespace": { + "description": "Gets or sets namespace of the resource", + "type": "string" + }, + "extensionProperties": { + "description": "Gets or sets extensionProperties of the maintenanceConfiguration", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "maintenanceScope": { + "description": "Gets or sets maintenanceScope of the configuration", + "enum": [ + "Host", + "OSImage", + "Extension", + "InGuestPatch", + "SQLDB", + "SQLManagedInstance" + ], + "type": "string", + "x-ms-enum": { + "name": "MaintenanceScope", + "modelAsString": true, + "values": [ + { + "value": "Host", + "description": "This maintenance scope controls installation of azure platform updates i.e. services on physical nodes hosting customer VMs." + }, + { + "value": "OSImage", + "description": "This maintenance scope controls os image installation on VM/VMSS" + }, + { + "value": "Extension", + "description": "This maintenance scope controls extension installation on VM/VMSS" + }, + { + "value": "InGuestPatch", + "description": "This maintenance scope controls installation of windows and linux packages on VM/VMSS" + }, + { + "value": "SQLDB", + "description": "This maintenance scope controls installation of SQL server platform updates." + }, + { + "value": "SQLManagedInstance", + "description": "This maintenance scope controls installation of SQL managed instance platform update." + } + ] + } + }, + "maintenanceWindow": { + "$ref": "#/definitions/MaintenanceWindow", + "description": "Definition of a MaintenanceWindow", + "x-ms-client-flatten": true + }, + "visibility": { + "description": "Gets or sets the visibility of the configuration. The default value is 'Custom'", + "enum": [ + "Custom", + "Public" + ], + "type": "string", + "x-ms-enum": { + "name": "Visibility", + "modelAsString": true, + "values": [ + { + "value": "Custom", + "description": "Only visible to users with permissions." + }, + { + "value": "Public", + "description": "Visible to all users." + } + ] + } + } + } + }, + "MaintenanceConfiguration": { + "description": "Maintenance configuration record type", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "location": { + "description": "Gets or sets location of the resource", + "type": "string" + }, + "tags": { + "description": "Gets or sets tags of the resource", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "properties": { + "$ref": "#/definitions/MaintenanceConfigurationProperties", + "description": "Gets or sets properties of the resource", + "x-ms-client-flatten": true + } + } + }, + "MaintenanceError": { + "description": "An error response received from the Azure Maintenance service.", + "type": "object", + "properties": { + "error": { + "$ref": "#/definitions/ErrorDetails", + "description": "Details of the error" + } + } + }, + "ErrorDetails": { + "description": "An error response details received from the Azure Maintenance service.", + "type": "object", + "properties": { + "code": { + "description": "Service-defined error code. This code serves as a sub-status for the HTTP error code specified in the response.", + "type": "string" + }, + "message": { + "description": "Human-readable representation of the error.", + "type": "string" + } + } + }, + "ListMaintenanceConfigurationsResult": { + "description": "Response for MaintenanceConfigurations list", + "type": "object", + "properties": { + "value": { + "description": "The list of maintenance Configurations", + "type": "array", + "items": { + "$ref": "#/definitions/MaintenanceConfiguration" + } + } + } + }, + "OperationsListResult": { + "description": "Result of the List Operations operation", + "type": "object", + "properties": { + "value": { + "description": "A collection of operations", + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + } + } + } + }, + "Operation": { + "description": "Represents an operation returned by the GetOperations request", + "type": "object", + "properties": { + "name": { + "description": "Name of the operation", + "type": "string" + }, + "display": { + "$ref": "#/definitions/OperationInfo", + "description": "Display name of the operation" + }, + "origin": { + "description": "Origin of the operation", + "type": "string" + }, + "properties": { + "description": "Properties of the operation", + "type": "object", + "x-ms-client-flatten": true + }, + "isDataAction": { + "description": "Indicates whether the operation is a data action", + "type": "boolean" + } + } + }, + "OperationInfo": { + "description": "Information about an operation", + "type": "object", + "properties": { + "provider": { + "description": "Name of the provider", + "type": "string" + }, + "resource": { + "description": "Name of the resource type", + "type": "string" + }, + "operation": { + "description": "Name of the operation", + "type": "string" + }, + "description": { + "description": "Description of the operation", + "type": "string" + } + } + }, + "ListUpdatesResult": { + "description": "Response for Updates list", + "type": "object", + "properties": { + "value": { + "description": "The pending updates", + "type": "array", + "items": { + "$ref": "#/definitions/Update" + } + } + } + }, + "Update": { + "description": "Maintenance update on a resource", + "type": "object", + "properties": { + "maintenanceScope": { + "description": "The impact area", + "enum": [ + "Host", + "OSImage", + "Extension", + "InGuestPatch", + "SQLDB", + "SQLManagedInstance" + ], + "type": "string", + "x-ms-enum": { + "name": "MaintenanceScope", + "modelAsString": true, + "values": [ + { + "value": "Host", + "description": "This maintenance scope controls installation of azure platform updates i.e. services on physical nodes hosting customer VMs." + }, + { + "value": "OSImage", + "description": "This maintenance scope controls os image installation on VM/VMSS" + }, + { + "value": "Extension", + "description": "This maintenance scope controls extension installation on VM/VMSS" + }, + { + "value": "InGuestPatch", + "description": "This maintenance scope controls installation of windows and linux packages on VM/VMSS" + }, + { + "value": "SQLDB", + "description": "This maintenance scope controls installation of SQL server platform updates." + }, + { + "value": "SQLManagedInstance", + "description": "This maintenance scope controls installation of SQL managed instance platform update." + } + ] + } + }, + "impactType": { + "description": "The impact type", + "enum": [ + "None", + "Freeze", + "Restart", + "Redeploy" + ], + "type": "string", + "x-ms-enum": { + "name": "ImpactType", + "modelAsString": true, + "values": [ + { + "value": "None", + "description": "Pending updates has no impact on resource." + }, + { + "value": "Freeze", + "description": "Pending updates can freeze network or disk io operation on resource." + }, + { + "value": "Restart", + "description": "Pending updates can cause resource to restart." + }, + { + "value": "Redeploy", + "description": "Pending updates can redeploy resource." + } + ] + } + }, + "status": { + "description": "The status", + "enum": [ + "Pending", + "InProgress", + "Completed", + "RetryNow", + "RetryLater" + ], + "type": "string", + "x-ms-enum": { + "name": "UpdateStatus", + "modelAsString": true, + "values": [ + { + "value": "Pending", + "description": "There are pending updates to be installed." + }, + { + "value": "InProgress", + "description": "Updates installation are in progress." + }, + { + "value": "Completed", + "description": "All updates are successfully applied." + }, + { + "value": "RetryNow", + "description": "Updates installation failed but are ready to retry again." + }, + { + "value": "RetryLater", + "description": "Updates installation failed and should be retried later." + } + ] + } + }, + "impactDurationInSec": { + "format": "int32", + "description": "Duration of impact in seconds", + "type": "integer" + }, + "notBefore": { + "format": "date-time", + "description": "Time when Azure will start force updates if not self-updated by customer before this time", + "type": "string" + }, + "properties": { + "$ref": "#/definitions/UpdateProperties", + "description": "Properties of the apply update", + "x-ms-client-flatten": true + } + } + }, + "UpdateProperties": { + "description": "Properties for update", + "type": "object", + "properties": { + "resourceId": { + "description": "The resourceId", + "type": "string" + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Subscription credentials that uniquely identify a Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.", + "required": true, + "type": "string" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "Version of the API to be used with the client request.", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/ApplyUpdatesResourceGroup_List.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/ApplyUpdatesResourceGroup_List.json new file mode 100644 index 000000000000..31a10c746ef5 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/ApplyUpdatesResourceGroup_List.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "providerName": "Microsoft.Maintenance", + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/providers/Microsoft.Maintenance/applyUpdates/e9b9685d-78e4-44c4-a81c-64a14f9b87b6", + "name": "e9b9685d-78e4-44c4-a81c-64a14f9b87b6", + "type": "Microsoft.Maintenance/applyUpdates", + "properties": { + "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1", + "status": "Completed" + } + } + ] + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/ApplyUpdates_CreateOrUpdate.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/ApplyUpdates_CreateOrUpdate.json new file mode 100644 index 000000000000..76888d05b845 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/ApplyUpdates_CreateOrUpdate.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "providerName": "Microsoft.Compute", + "resourceType": "virtualMachineScaleSets", + "resourceName": "smdtest1", + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/providers/Microsoft.Maintenance/applyUpdates/e9b9685d-78e4-44c4-a81c-64a14f9b87b6", + "name": "e9b9685d-78e4-44c4-a81c-64a14f9b87b6", + "type": "Microsoft.Maintenance/applyUpdates", + "properties": { + "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1", + "status": "Pending" + } + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/ApplyUpdates_CreateOrUpdateParent.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/ApplyUpdates_CreateOrUpdateParent.json new file mode 100644 index 000000000000..95df6baf478a --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/ApplyUpdates_CreateOrUpdateParent.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "providerName": "Microsoft.Compute", + "resourceParentType": "virtualMachineScaleSets", + "resourceParentName": "smdtest1", + "resourceType": "virtualMachines", + "resourceName": "smdvm1", + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/virtualMachines/smdvm1/providers/Microsoft.Maintenance/applyUpdates/e9b9685d-78e4-44c4-a81c-64a14f9b87b6", + "name": "e9b9685d-78e4-44c4-a81c-64a14f9b87b6", + "type": "Microsoft.Maintenance/applyUpdates", + "properties": { + "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/virtualMachines/smdvm1", + "status": "Pending" + } + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/ApplyUpdates_Get.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/ApplyUpdates_Get.json new file mode 100644 index 000000000000..3b3ab2522c79 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/ApplyUpdates_Get.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "providerName": "Microsoft.Compute", + "resourceType": "virtualMachineScaleSets", + "resourceName": "smdtest1", + "applyUpdateName": "e9b9685d-78e4-44c4-a81c-64a14f9b87b6", + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/providers/Microsoft.Maintenance/applyUpdates/e9b9685d-78e4-44c4-a81c-64a14f9b87b6", + "name": "e9b9685d-78e4-44c4-a81c-64a14f9b87b6", + "type": "Microsoft.Maintenance/applyUpdates", + "properties": { + "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1", + "status": "Completed" + } + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/ApplyUpdates_GetParent.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/ApplyUpdates_GetParent.json new file mode 100644 index 000000000000..60cb22d3aa7c --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/ApplyUpdates_GetParent.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "providerName": "Microsoft.Compute", + "resourceParentType": "virtualMachineScaleSets", + "resourceParentName": "smdtest1", + "resourceType": "virtualMachines", + "resourceName": "smdvm1", + "applyUpdateName": "e9b9685d-78e4-44c4-a81c-64a14f9b87b6", + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/virtualMachines/smdvm1/providers/Microsoft.Maintenance/applyUpdates/e9b9685d-78e4-44c4-a81c-64a14f9b87b6", + "name": "e9b9685d-78e4-44c4-a81c-64a14f9b87b6", + "type": "Microsoft.Maintenance/applyUpdates", + "properties": { + "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/virtualMachines/smdvm1", + "status": "Completed" + } + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/ApplyUpdates_List.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/ApplyUpdates_List.json new file mode 100644 index 000000000000..a4addb796463 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/ApplyUpdates_List.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "providerName": "Microsoft.Maintenance", + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/providers/Microsoft.Maintenance/applyUpdates/e9b9685d-78e4-44c4-a81c-64a14f9b87b6", + "name": "e9b9685d-78e4-44c4-a81c-64a14f9b87b6", + "type": "Microsoft.Maintenance/applyUpdates", + "properties": { + "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1", + "status": "Completed" + } + } + ] + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/ConfigurationAssignments_CreateOrUpdate.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/ConfigurationAssignments_CreateOrUpdate.json new file mode 100644 index 000000000000..943ad655ada6 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/ConfigurationAssignments_CreateOrUpdate.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "providerName": "Microsoft.Compute", + "resourceType": "virtualMachineScaleSets", + "resourceName": "smdtest1", + "configurationAssignmentName": "workervmConfiguration", + "api-version": "2021-05-01", + "configurationAssignment": { + "properties": { + "maintenanceConfigurationId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/configuration1" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/providers/Microsoft.Maintenance/configurationAssignments/workervmConfiguration", + "name": "workervmConfiguration", + "type": "Microsoft.Maintenance/configurationAssignments", + "properties": { + "maintenanceConfigurationId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/configuration1", + "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1" + } + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/ConfigurationAssignments_CreateOrUpdateParent.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/ConfigurationAssignments_CreateOrUpdateParent.json new file mode 100644 index 000000000000..b646a1871fa5 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/ConfigurationAssignments_CreateOrUpdateParent.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "providerName": "Microsoft.Compute", + "resourceParentType": "virtualMachineScaleSets", + "resourceParentName": "smdtest1", + "resourceType": "virtualMachines", + "resourceName": "smdvm1", + "configurationAssignmentName": "workervmPolicy", + "api-version": "2021-05-01", + "configurationAssignment": { + "properties": { + "maintenanceConfigurationId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/policy1" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/virtualMachines/smdvm1/providers/Microsoft.Maintenance/configurationAssignments/workervmPolicy", + "name": "workervmPolicy", + "type": "Microsoft.Maintenance/configurationAssignments", + "properties": { + "maintenanceConfigurationId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/policy1", + "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/virtualMachines/smdvm1" + } + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/ConfigurationAssignments_Delete.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/ConfigurationAssignments_Delete.json new file mode 100644 index 000000000000..48e3102adcac --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/ConfigurationAssignments_Delete.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "providerName": "Microsoft.Compute", + "resourceType": "virtualMachineScaleSets", + "resourceName": "smdtest1", + "configurationAssignmentName": "workervmConfiguration", + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/providers/Microsoft.Maintenance/configurationAssignments/workervmConfiguration", + "name": "workervmConfiguration", + "type": "Microsoft.Maintenance/configurationAssignments" + } + }, + "204": {} + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/ConfigurationAssignments_DeleteParent.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/ConfigurationAssignments_DeleteParent.json new file mode 100644 index 000000000000..cd61ccef87d2 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/ConfigurationAssignments_DeleteParent.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "providerName": "Microsoft.Compute", + "resourceParentType": "virtualMachineScaleSets", + "resourceParentName": "smdtest1", + "resourceType": "virtualMachines", + "resourceName": "smdvm1", + "configurationAssignmentName": "workervmConfiguration", + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/providers/Microsoft.Maintenance/configurationAssignments/workervmConfiguration", + "name": "workervmConfiguration", + "type": "Microsoft.Maintenance/configurationAssignments" + } + }, + "204": {} + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/ConfigurationAssignments_List.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/ConfigurationAssignments_List.json new file mode 100644 index 000000000000..c56d8c181bc1 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/ConfigurationAssignments_List.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "providerName": "Microsoft.Compute", + "resourceType": "virtualMachineScaleSets", + "resourceName": "smdtest1", + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/providers/Microsoft.Maintenance/configurationAssignments/workervmConfiguration", + "name": "workervmConfiguration", + "type": "Microsoft.Maintenance/configurationAssignments", + "properties": { + "maintenanceConfigurationId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/configuration1", + "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1" + } + } + ] + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/ConfigurationAssignments_ListParent.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/ConfigurationAssignments_ListParent.json new file mode 100644 index 000000000000..66b6143d8fbf --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/ConfigurationAssignments_ListParent.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "providerName": "Microsoft.Compute", + "resourceParentType": "virtualMachineScaleSets", + "resourceParentName": "smdtest1", + "resourceType": "virtualMachines", + "resourceName": "smdtestvm1", + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/virtualMachines/smdtestvm1/providers/Microsoft.Maintenance/configurationAssignments/workervmPolicy", + "name": "workervmPolicy", + "type": "Microsoft.Maintenance/configurationAssignments", + "properties": { + "maintenanceConfigurationId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/policy1", + "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/virtualMachines/smdtestvm1" + } + } + ] + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/MaintenanceConfigurationsResourceGroup_List.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/MaintenanceConfigurationsResourceGroup_List.json new file mode 100644 index 000000000000..dce517196d25 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/MaintenanceConfigurationsResourceGroup_List.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/configuration1", + "name": "configuration1", + "location": "westus2", + "properties": { + "namespace": "Microsoft.Maintenance", + "maintenanceScope": "Host", + "visibility": "Custom", + "maintenanceWindow": { + "startDateTime": "2020-04-30 08:00", + "expirationDateTime": "9999-12-31 00:00", + "duration": "05:00", + "timeZone": "Pacific Standard Time", + "recurEvery": "Week Saturday,Sunday" + } + } + } + ] + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/MaintenanceConfigurations_CreateOrUpdateForResource.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/MaintenanceConfigurations_CreateOrUpdateForResource.json new file mode 100644 index 000000000000..6842242f2cc1 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/MaintenanceConfigurations_CreateOrUpdateForResource.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "resourceName": "configuration1", + "api-version": "2021-05-01", + "configuration": { + "location": "westus2", + "properties": { + "namespace": "Microsoft.Maintenance", + "visibility": "Custom", + "maintenanceScope": "Host", + "maintenanceWindow": { + "startDateTime": "2020-04-30 08:00", + "expirationDateTime": "9999-12-31 00:00", + "duration": "05:00", + "timeZone": "Pacific Standard Time", + "recurEvery": "Day" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/configuration1", + "name": "configuration1", + "location": "westus2", + "properties": { + "namespace": "Microsoft.Maintenance", + "visibility": "Custom", + "maintenanceScope": "Host", + "maintenanceWindow": { + "startDateTime": "2020-04-30 08:00", + "expirationDateTime": "9999-12-31 00:00", + "duration": "05:00", + "timeZone": "Pacific Standard Time", + "recurEvery": "Day" + } + } + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/MaintenanceConfigurations_DeleteForResource.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/MaintenanceConfigurations_DeleteForResource.json new file mode 100644 index 000000000000..8a79311281e7 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/MaintenanceConfigurations_DeleteForResource.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "resourceName": "example1", + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/configuration1", + "name": "configuration1", + "location": "westus2", + "properties": { + "namespace": "Microsoft.Maintenance" + } + } + }, + "204": {} + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/MaintenanceConfigurations_GetForResource.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/MaintenanceConfigurations_GetForResource.json new file mode 100644 index 000000000000..20872c61755a --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/MaintenanceConfigurations_GetForResource.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "resourceName": "configuration1", + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/configuration1", + "name": "configuration1", + "location": "westus2", + "properties": { + "namespace": "Microsoft.Maintenance", + "maintenanceScope": "Host", + "visibility": "Custom", + "maintenanceWindow": { + "startDateTime": "2020-04-30 08:00", + "expirationDateTime": "9999-12-31 00:00", + "duration": "05:00", + "timeZone": "Pacific Standard Time", + "recurEvery": "5Days" + } + } + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/MaintenanceConfigurations_List.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/MaintenanceConfigurations_List.json new file mode 100644 index 000000000000..75f4d6361962 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/MaintenanceConfigurations_List.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/configuration1", + "name": "configuration1", + "location": "westus2", + "properties": { + "namespace": "Microsoft.Maintenance", + "maintenanceScope": "Host", + "visibility": "Custom", + "maintenanceWindow": { + "startDateTime": "2020-04-30 08:00", + "expirationDateTime": "9999-12-31 00:00", + "duration": "05:00", + "timeZone": "Pacific Standard Time", + "recurEvery": "Week Saturday,Sunday" + } + } + } + ] + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/MaintenanceConfigurations_UpdateForResource.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/MaintenanceConfigurations_UpdateForResource.json new file mode 100644 index 000000000000..6bba6dde5a2a --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/MaintenanceConfigurations_UpdateForResource.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "resourceName": "configuration1", + "api-version": "2021-05-01", + "configuration": { + "location": "westus2", + "properties": { + "namespace": "Microsoft.Maintenance", + "visibility": "Custom", + "maintenanceScope": "Host", + "maintenanceWindow": { + "startDateTime": "2020-04-30 08:00", + "expirationDateTime": "9999-12-31 00:00", + "duration": "05:00", + "timeZone": "Pacific Standard Time", + "recurEvery": "Month Third Sunday" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/configuration1", + "name": "configuration1", + "location": "westus2", + "properties": { + "namespace": "Microsoft.Maintenance", + "maintenanceScope": "Host", + "visibility": "Custom", + "maintenanceWindow": { + "startDateTime": "2020-04-30 08:00", + "expirationDateTime": "9999-12-31 00:00", + "duration": "05:00", + "timeZone": "Pacific Standard Time", + "recurEvery": "Month Third Sunday" + } + } + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/Operations_List.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/Operations_List.json new file mode 100644 index 000000000000..0a736210a177 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/Operations_List.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "body": { + "value": [] + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/PublicMaintenanceConfigurations_GetForResource.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/PublicMaintenanceConfigurations_GetForResource.json new file mode 100644 index 000000000000..e7199942bab0 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/PublicMaintenanceConfigurations_GetForResource.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceName": "configuration1", + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/configuration1", + "name": "configuration1", + "location": "westus2", + "properties": { + "namespace": "Microsoft.Maintenance", + "maintenanceScope": "SQLDB", + "visibility": "Public", + "maintenanceWindow": { + "startDateTime": "2020-04-30 08:00", + "expirationDateTime": "9999-12-31 00:00", + "duration": "05:00", + "timeZone": "Pacific Standard Time", + "recurEvery": "2Weeks" + } + } + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/PublicMaintenanceConfigurations_List.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/PublicMaintenanceConfigurations_List.json new file mode 100644 index 000000000000..86f536f46e68 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/PublicMaintenanceConfigurations_List.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/configuration1", + "name": "configuration1", + "location": "westus2", + "properties": { + "namespace": "Microsoft.Maintenance", + "maintenanceScope": "SQLDB", + "visibility": "Public", + "maintenanceWindow": { + "startDateTime": "2020-04-30 08:00:00", + "expirationDateTime": "9999-12-31 00:00:00", + "duration": "05:00:00", + "timeZone": "Pacific Standard Time", + "recurEvery": "Week Saturday,Sunday" + } + } + } + ] + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/Updates_List.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/Updates_List.json new file mode 100644 index 000000000000..2dd8805b9152 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/Updates_List.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "providerName": "Microsoft.Compute", + "resourceType": "virtualMachineScaleSets", + "resourceName": "smdtest1", + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "maintenanceScope": "Resource", + "status": "Pending", + "impactType": "Reboot", + "impactDurationInSec": 1440, + "notBefore": "2018-10-09T06:17:44.235Z", + "properties": { + "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1" + } + } + ] + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/Updates_ListParent.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/Updates_ListParent.json new file mode 100644 index 000000000000..29fbcd332b55 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2021-05-01/examples/Updates_ListParent.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "providerName": "Microsoft.Compute", + "resourceParentType": "virtualMachineScaleSets", + "resourceParentName": "smdtest1", + "resourceType": "virtualMachines", + "resourceName": "1", + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "maintenanceScope": "Resource", + "status": "Pending", + "impactType": "Reboot", + "impactDurationInSec": 1440, + "notBefore": "2018-10-09T06:17:44.235Z", + "properties": { + "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/virtualMachines/1" + } + } + ] + } + } + } +} diff --git a/specification/maintenance/resource-manager/readme.azureresourceschema.md b/specification/maintenance/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 8389c3ee894a..000000000000 --- a/specification/maintenance/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,60 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-maintenance-2021-04-01-preview - - tag: schema-maintenance-2020-07-01-preview - - tag: schema-maintenance-2020-04-01 - - tag: schema-maintenance-2018-06-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-maintenance-2021-04-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-maintenance-2021-04-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Maintenance/preview/2021-04-01-preview/Maintenance.json - -``` - -### Tag: schema-maintenance-2020-07-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-maintenance-2020-07-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Maintenance/preview/2020-07-01-preview/Maintenance.json - -``` - -### Tag: schema-maintenance-2020-04-01 and azureresourceschema - -``` yaml $(tag) == 'schema-maintenance-2020-04-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Maintenance/stable/2020-04-01/Maintenance.json - -``` - -### Tag: schema-maintenance-2018-06-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-maintenance-2018-06-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Maintenance/preview/2018-06-01-preview/Maintenance.json - -``` diff --git a/specification/maintenance/resource-manager/readme.go.md b/specification/maintenance/resource-manager/readme.go.md index 5c36ca80143c..f3f797190a71 100644 --- a/specification/maintenance/resource-manager/readme.go.md +++ b/specification/maintenance/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: maintenance clear-output-folder: true ``` @@ -13,10 +13,20 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-2021-05 - tag: package-2020-04 - tag: package-2018-06-preview ``` +### Tag: package-2021-05 and go + +These settings apply only when `--tag=package-2021-05 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2021-05' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2021-05-01/$(namespace) +``` + ### Tag: package-2020-04 and go These settings apply only when `--tag=package-2020-04 --go` is specified on the command line. diff --git a/specification/maintenance/resource-manager/readme.md b/specification/maintenance/resource-manager/readme.md index 682f65078d11..105ccf603947 100644 --- a/specification/maintenance/resource-manager/readme.md +++ b/specification/maintenance/resource-manager/readme.md @@ -25,21 +25,28 @@ To see additional help and options, run: These are the global settings for the Azure Maintenance API. ``` yaml -title: MaintenanceClient -description: Maintenance Client openapi-type: arm -tag: package-preview-2021-04 +tag: package-2021-05 ``` +### Tag: package-2021-05 + +These settings apply only when `--tag=package-2021-05` is specified on the command line. + +```yaml $(tag) == 'package-2021-05' +input-file: + - Microsoft.Maintenance/stable/2021-05-01/Maintenance.json +``` ### Tag: package-preview-2021-04 These settings apply only when `--tag=package-preview-2021-04` is specified on the command line. -```yaml $(tag) == 'package-preview-2021-04' +``` yaml $(tag) == 'package-preview-2021-04' input-file: - Microsoft.Maintenance/preview/2021-04-01-preview/Maintenance.json ``` + ### Tag: package-preview-2020-07 These settings apply only when `--tag=package-preview-2020-07` is specified on the command line. @@ -79,12 +86,11 @@ This is not used by Autorest itself. ``` yaml $(swagger-to-sdk) swagger-to-sdk: - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-libraries-for-java - repo: azure-sdk-for-go - repo: azure-sdk-for-node - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js maintenance/resource-manager ``` ## C# @@ -98,7 +104,7 @@ csharp: license-header: MICROSOFT_MIT_NO_VERSION namespace: Microsoft.Azure.Management.Maintenance payload-flattening-threshold: 1 - output-folder: $(csharp-sdks-folder)/Maintenance/Management.Maintenance/Generated + output-folder: $(csharp-sdks-folder)/maintenance/Microsoft.Azure.Management.Maintenance/src/Generated/ clear-output-folder: true ``` @@ -114,6 +120,4 @@ See configuration in [readme.go.md](./readme.go.md) See configuration in [readme.java.md](./readme.java.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/managednetwork/resource-manager/readme.azureresourceschema.md b/specification/managednetwork/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 2a4dc2aa6f21..000000000000 --- a/specification/managednetwork/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,24 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-managednetwork-2019-06-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-managednetwork-2019-06-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-managednetwork-2019-06-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ManagedNetwork/preview/2019-06-01-preview/managedNetwork.json - -``` diff --git a/specification/managednetwork/resource-manager/readme.go.md b/specification/managednetwork/resource-manager/readme.go.md index f1cd2be36ad8..c00cfafb0c1d 100644 --- a/specification/managednetwork/resource-manager/readme.go.md +++ b/specification/managednetwork/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: managednetwork clear-output-folder: true ``` diff --git a/specification/managednetwork/resource-manager/readme.md b/specification/managednetwork/resource-manager/readme.md index c7aba395d3be..81a1cb549adb 100644 --- a/specification/managednetwork/resource-manager/readme.md +++ b/specification/managednetwork/resource-manager/readme.md @@ -55,8 +55,6 @@ swagger-to-sdk: - repo: azure-sdk-for-node - repo: azure-sdk-for-ruby - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js managednetwork/resource-manager ``` ## C# @@ -76,7 +74,5 @@ csharp: See configuration in [readme.cli.md](./readme.cli.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/managedservices/resource-manager/Microsoft.ManagedServices/preview/2020-02-01-preview/examples/GetRegistrationDefinition.json b/specification/managedservices/resource-manager/Microsoft.ManagedServices/preview/2020-02-01-preview/examples/GetRegistrationDefinition.json index 74c110b7344a..065d892c01f7 100644 --- a/specification/managedservices/resource-manager/Microsoft.ManagedServices/preview/2020-02-01-preview/examples/GetRegistrationDefinition.json +++ b/specification/managedservices/resource-manager/Microsoft.ManagedServices/preview/2020-02-01-preview/examples/GetRegistrationDefinition.json @@ -30,7 +30,13 @@ { "justInTimeAccessPolicy": { "multiFactorAuthProvider": "Azure", - "maximumActivationDuration": "PT8H" + "maximumActivationDuration": "PT8H", + "managedByTenantApprovers": [ + { + "principalId": "d9b22cd6-6407-43cc-8c60-07c56df0b51a", + "principalIdDisplayName": "Approver Group" + } + ] }, "principalId": "3e0ed8c6-e902-4fc5-863c-e3ddbb2ae2a2", "principalIdDisplayName": "Support User", diff --git a/specification/managedservices/resource-manager/Microsoft.ManagedServices/preview/2020-02-01-preview/examples/GetRegistrationDefinitions.json b/specification/managedservices/resource-manager/Microsoft.ManagedServices/preview/2020-02-01-preview/examples/GetRegistrationDefinitions.json index 798e0175e0b7..d88e7509f99f 100644 --- a/specification/managedservices/resource-manager/Microsoft.ManagedServices/preview/2020-02-01-preview/examples/GetRegistrationDefinitions.json +++ b/specification/managedservices/resource-manager/Microsoft.ManagedServices/preview/2020-02-01-preview/examples/GetRegistrationDefinitions.json @@ -31,7 +31,13 @@ { "justInTimeAccessPolicy": { "multiFactorAuthProvider": "Azure", - "maximumActivationDuration": "PT8H" + "maximumActivationDuration": "PT8H", + "managedByTenantApprovers": [ + { + "principalId": "d9b22cd6-6407-43cc-8c60-07c56df0b51a", + "principalIdDisplayName": "Approver Group" + } + ] }, "principalId": "3e0ed8c6-e902-4fc5-863c-e3ddbb2ae2a2", "principalIdDisplayName": "Support User", diff --git a/specification/managedservices/resource-manager/Microsoft.ManagedServices/preview/2020-02-01-preview/examples/PutRegistrationDefinition.json b/specification/managedservices/resource-manager/Microsoft.ManagedServices/preview/2020-02-01-preview/examples/PutRegistrationDefinition.json index 589fd42e8057..3c06d8529b23 100644 --- a/specification/managedservices/resource-manager/Microsoft.ManagedServices/preview/2020-02-01-preview/examples/PutRegistrationDefinition.json +++ b/specification/managedservices/resource-manager/Microsoft.ManagedServices/preview/2020-02-01-preview/examples/PutRegistrationDefinition.json @@ -30,7 +30,13 @@ "roleDefinitionId": "ae349356-3a1b-4a5e-921d-050484c6347e", "justInTimeAccessPolicy": { "multiFactorAuthProvider": "Azure", - "maximumActivationDuration": "PT8H" + "maximumActivationDuration": "PT8H", + "managedByTenantApprovers": [ + { + "principalId": "d9b22cd6-6407-43cc-8c60-07c56df0b51a", + "principalIdDisplayName": "Approver Group" + } + ] } } ] @@ -69,7 +75,13 @@ { "justInTimeAccessPolicy": { "multiFactorAuthProvider": "Azure", - "maximumActivationDuration": "PT8H" + "maximumActivationDuration": "PT8H", + "managedByTenantApprovers": [ + { + "principalId": "d9b22cd6-6407-43cc-8c60-07c56df0b51a", + "principalIdDisplayName": "Approver Group" + } + ] }, "principalId": "3e0ed8c6-e902-4fc5-863c-e3ddbb2ae2a2", "principalIdDisplayName": "Support User", @@ -115,7 +127,13 @@ { "justInTimeAccessPolicy": { "multiFactorAuthProvider": "Azure", - "maximumActivationDuration": "PT8H" + "maximumActivationDuration": "PT8H", + "managedByTenantApprovers": [ + { + "principalId": "d9b22cd6-6407-43cc-8c60-07c56df0b51a", + "principalIdDisplayName": "Approver Group" + } + ] }, "principalId": "3e0ed8c6-e902-4fc5-863c-e3ddbb2ae2a2", "principalIdDisplayName": "Support User", diff --git a/specification/managedservices/resource-manager/Microsoft.ManagedServices/preview/2020-02-01-preview/managedservices.json b/specification/managedservices/resource-manager/Microsoft.ManagedServices/preview/2020-02-01-preview/managedservices.json index 88f869b9a7ac..bc65be70cb12 100644 --- a/specification/managedservices/resource-manager/Microsoft.ManagedServices/preview/2020-02-01-preview/managedservices.json +++ b/specification/managedservices/resource-manager/Microsoft.ManagedServices/preview/2020-02-01-preview/managedservices.json @@ -1072,6 +1072,23 @@ "type": "object", "description": "Eligible authorization tuple containing principle Id (of user/service principal/security group), role definition id, and the just-in-time access setting." }, + "EligibleApprover": { + "properties": { + "principalId": { + "type": "string", + "description": "Principal Id of the user or security group that will approve JIT activation requests for the eligible authorization." + }, + "principalIdDisplayName": { + "type": "string", + "description": "Display name of the principal Id." + } + }, + "required": [ + "principalId" + ], + "type": "object", + "description": "A principal Id and user-friendly display name representing an eligible authorization approver." + }, "JustInTimeAccessPolicy": { "properties": { "multiFactorAuthProvider": { @@ -1084,12 +1101,21 @@ "x-ms-enum": { "name": "MultiFactorAuthProvider", "modelAsString": true - } + }, + "default": "None" }, "maximumActivationDuration": { "type": "string", "format": "duration", - "description": "Maximum access duration in ISO 8601 format. The default value is \"PT8H\"." + "description": "Maximum access duration in ISO 8601 format.", + "default": "PT8H" + }, + "managedByTenantApprovers": { + "type": "array", + "items": { + "$ref": "#/definitions/EligibleApprover" + }, + "description": "The list of managedByTenant approvers for the eligible authorization." } }, "required": [ diff --git a/specification/managedservices/resource-manager/readme.azureresourceschema.md b/specification/managedservices/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 2c60bbe0f4c2..000000000000 --- a/specification/managedservices/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,72 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-managedservices-2020-02-01-preview - - tag: schema-managedservices-2019-09-01 - - tag: schema-managedservices-2019-06-01 - - tag: schema-managedservices-2019-04-01-preview - - tag: schema-managedservices-2018-06-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-managedservices-2020-02-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-managedservices-2020-02-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ManagedServices/preview/2020-02-01-preview/managedservices.json - -``` - -### Tag: schema-managedservices-2019-09-01 and azureresourceschema - -``` yaml $(tag) == 'schema-managedservices-2019-09-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ManagedServices/stable/2019-09-01/managedservices.json - -``` - -### Tag: schema-managedservices-2019-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-managedservices-2019-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ManagedServices/stable/2019-06-01/managedservices.json - -``` - -### Tag: schema-managedservices-2019-04-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-managedservices-2019-04-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ManagedServices/preview/2019-04-01-preview/managedservices.json - -``` - -### Tag: schema-managedservices-2018-06-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-managedservices-2018-06-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ManagedServices/preview/2018-06-01-preview/managedservices.json - -``` diff --git a/specification/managedservices/resource-manager/readme.go.md b/specification/managedservices/resource-manager/readme.go.md index ccecacca42db..facef2d138cf 100644 --- a/specification/managedservices/resource-manager/readme.go.md +++ b/specification/managedservices/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: managedservices clear-output-folder: true ``` diff --git a/specification/managedservices/resource-manager/readme.md b/specification/managedservices/resource-manager/readme.md index 2f2b6ced062b..e5add8768388 100644 --- a/specification/managedservices/resource-manager/readme.md +++ b/specification/managedservices/resource-manager/readme.md @@ -87,6 +87,7 @@ This is not used by Autorest itself. swagger-to-sdk: - repo: azure-sdk-for-net - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-java - repo: azure-sdk-for-go - repo: azure-sdk-for-js @@ -95,8 +96,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_billing'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js managedservices/resource-manager ``` ## C# @@ -117,7 +116,5 @@ csharp: See configuration in [readme.go.md](./readme.go.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/managedservices/resource-manager/readme.python.md b/specification/managedservices/resource-manager/readme.python.md index 466e93c78c34..a14444330699 100644 --- a/specification/managedservices/resource-manager/readme.python.md +++ b/specification/managedservices/resource-manager/readme.python.md @@ -30,7 +30,7 @@ python: no-namespace-folders: true output-folder: $(python-sdks-folder)/managedservices/azure-mgmt-managedservices/azure/mgmt/managedservices ``` -``` yaml $(python) && $(python-mode) == 'create' && $(track2) +``` yaml $(python) && $(python-mode) == 'create' && !$(track2) python: basic-setup-py: true output-folder: $(python-sdks-folder)/managedservices/azure-mgmt-managedservices diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-05-01/management.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-05-01/management.json index c6f541ac5f51..9b17bfba4f29 100644 --- a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-05-01/management.json +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-05-01/management.json @@ -1220,14 +1220,6 @@ "items": { "$ref": "#/definitions/ManagementGroupChildInfo" } - }, - "path": { - "description": "The path from the root to the current group.", - "x-nullable": true, - "type": "array", - "items": { - "$ref": "#/definitions/ManagementGroupPathElement" - } } } }, @@ -1252,6 +1244,14 @@ "parent": { "title": "Parent", "$ref": "#/definitions/ParentGroupInfo" + }, + "path": { + "description": "The path from the root to the current group.", + "x-nullable": true, + "type": "array", + "items": { + "$ref": "#/definitions/ManagementGroupPathElement" + } } } }, diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/AddManagementGroupSubscription.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/AddManagementGroupSubscription.json new file mode 100644 index 000000000000..f7ac80087f1e --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/AddManagementGroupSubscription.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2020-10-01", + "groupId": "Group", + "subscriptionId": "728bcbe4-8d56-4510-86c2-4921b8beefbc", + "Cache-Control": "no-cache" + }, + "responses": { + "200": { + "body": { + "name": "728bcbe4-8d56-4510-86c2-4921b8beefbc", + "id": " /providers/Microsoft.Management/managementGroups/Group/subscriptions/728bcbe4-8d56-4510-86c2-4921b8beefbc", + "type": "Microsoft.Management/managementGroups/subscriptions", + "properties": { + "displayName": "Group", + "parent": { + "id": "/providers/Microsoft.Management/managementGroups/Group" + }, + "state": "Active", + "tenant": "e751ac82-623b-4913-8d74-22637c832373" + } + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/CheckManagementGroupNameAvailability.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/CheckManagementGroupNameAvailability.json new file mode 100644 index 000000000000..45f512e4c75a --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/CheckManagementGroupNameAvailability.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2020-10-01", + "checkNameAvailabilityRequest": { + "name": "nameTocheck", + "type": "Microsoft.Management/managementGroups" + }, + "Cache-Control": "no-cache" + }, + "responses": { + "200": { + "body": { + "nameAvailable": false, + "reason": "AlreadyExists", + "message": "Error message" + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/DeleteHierarchySettings.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/DeleteHierarchySettings.json new file mode 100644 index 000000000000..03038ac7a840 --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/DeleteHierarchySettings.json @@ -0,0 +1,9 @@ +{ + "parameters": { + "api-version": "2020-10-01", + "groupId": "root" + }, + "responses": { + "200": {} + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/DeleteManagementGroup.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/DeleteManagementGroup.json new file mode 100644 index 000000000000..78caea237ff0 --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/DeleteManagementGroup.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2020-10-01", + "groupId": "GroupToDelete", + "Cache-Control": "no-cache" + }, + "responses": { + "202": { + "body": { + "id": "/providers/Microsoft.Management/managementGroups/GroupToDelete", + "type": "Microsoft.Management/managementGroups", + "name": "GroupToDelete", + "status": "NotStarted" + } + }, + "204": {} + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/GetAllSubscriptionsFromManagementGroup.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/GetAllSubscriptionsFromManagementGroup.json new file mode 100644 index 000000000000..c7f222b00311 --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/GetAllSubscriptionsFromManagementGroup.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2020-10-01", + "groupId": "Group" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "728bcbe4-8d56-4510-86c2-4921b8beefbc", + "id": "/providers/Microsoft.Management/managementGroups/Group/subscriptions/728bcbe4-8d56-4510-86c2-4921b8beefbc", + "type": "Microsoft.Management/managementGroups/subscriptions", + "properties": { + "displayName": "S5", + "parent": { + "id": "/providers/Microsoft.Management/managementGroups/Group" + }, + "state": "Active", + "tenant": "e751ac82-623b-4913-8d74-22637c832373" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/GetDescendants.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/GetDescendants.json new file mode 100644 index 000000000000..411fce1d8f7e --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/GetDescendants.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2020-10-01", + "groupId": "20000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Management/managementGroups/20000000-0001-0000-0000-000000000000", + "type": "Microsoft.Management/managementGroups", + "name": "20000000-0001-0000-0000-000000000000", + "properties": { + "displayName": "Group 1", + "parent": { + "id": "/providers/Microsoft.Management/managementGroups/20000000-0000-0000-0000-000000000000" + } + } + }, + { + "id": "/subscriptions/20000000-0004-0000-0000-000000000000", + "type": "Microsoft.Management/managementGroups/subscriptions", + "name": "20000000-0004-0000-0000-000000000000", + "properties": { + "displayName": "Subscription 4", + "parent": { + "id": "/providers/Microsoft.Management/managementGroups/20000000-0000-0000-0000-000000000000" + } + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/GetEntities.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/GetEntities.json new file mode 100644 index 000000000000..0907534dd5a8 --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/GetEntities.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2020-10-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Management/managementGroups/20000000-0001-0000-0000-000000000000", + "type": "Microsoft.Management/managementGroups", + "name": "20000000-0001-0000-0000-000000000000", + "properties": { + "tenantId": "20000000-0000-0000-0000-000000000000", + "displayName": "Group 1 Tenant 2", + "parent": { + "id": "/providers/Microsoft.Management/managementGroups/20000000-0000-0000-0000-000000000000" + }, + "permissions": "view", + "inheritedPermissions": "view", + "parentDisplayNameChain": [ + "Tenant Root Group", + "Group 1 Tenant 2 Parent" + ], + "parentNameChain": [ + "TenantRootGroup", + "Group1Tenant2Parent" + ], + "numberOfDescendants": 3, + "numberOfChildren": 2, + "numberOfChildGroups": 1 + } + }, + { + "id": "/providers/Microsoft.Management/managementGroups/20000000-0004-0000-0000-000000000000", + "type": "Microsoft.Management/managementGroups", + "name": "20000000-0004-0000-0000-000000000000", + "properties": { + "tenantId": "20000000-0000-0000-0000-000000000000", + "displayName": "Group 4 Tenant 2", + "parent": { + "id": "/providers/Microsoft.Management/managementGroups/20000000-0000-0000-0000-000000000000" + }, + "permissions": "delete", + "inheritedPermissions": "delete", + "parentDisplayNameChain": [ + "Tenant Root Group", + "Group 4 Tenant 2 Parent" + ], + "parentNameChain": [ + "TenantRootGroup", + "Group4 Tenant2Parent" + ], + "numberOfDescendants": 0, + "numberOfChildren": 0, + "numberOfChildGroups": 0 + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/GetHierarchySettings.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/GetHierarchySettings.json new file mode 100644 index 000000000000..79cef0072868 --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/GetHierarchySettings.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2020-10-01", + "groupId": "root" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Management/managementGroups/root/settings/default", + "type": "Microsoft.Management/managementGroups/settings", + "name": "root", + "properties": { + "tenantId": "20000000-0000-0000-0000-000000000000", + "defaultManagementGroup": "/providers/Microsoft.Management/managementGroups/DefaultGroup", + "requireAuthorizationForGroupCreation": true + } + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/GetManagementGroup.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/GetManagementGroup.json new file mode 100644 index 000000000000..442512517de8 --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/GetManagementGroup.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2020-10-01", + "groupId": "20000000-0001-0000-0000-000000000000", + "Cache-Control": "no-cache" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Management/managementGroups/20000000-0001-0000-0000-000000000000", + "type": "Microsoft.Management/managementGroups", + "name": "20000000-0001-0000-0000-000000000000", + "properties": { + "tenantId": "20000000-0000-0000-0000-000000000000", + "displayName": "Group 1 Tenant 2", + "details": { + "version": 1, + "updatedTime": "2018-01-01T00:00:00.00Z", + "updatedBy": "16b8ef21-5c9f-420c-bcc9-e4f8c9f30b4b", + "parent": { + "id": "/providers/Microsoft.Management/managementGroups/RootGroup", + "name": "RootGroup", + "displayName": "RootGroup" + } + } + } + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/GetManagementGroupWithAncestors.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/GetManagementGroupWithAncestors.json new file mode 100644 index 000000000000..59cc4301a17f --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/GetManagementGroupWithAncestors.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2020-10-01", + "groupId": "20000000-0001-0000-0000-000000000000", + "$expand": "ancestors", + "Cache-Control": "no-cache" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Management/managementGroups/20000000-0001-0000-0000-000000000000", + "type": "Microsoft.Management/managementGroups", + "name": "20000000-0001-0000-0000-000000000000", + "properties": { + "tenantId": "20000000-0000-0000-0000-000000000000", + "displayName": "Group 1 Tenant 2", + "details": { + "version": 1, + "updatedTime": "2018-01-01T00:00:00.00Z", + "updatedBy": "Test", + "parent": { + "id": "/providers/Microsoft.Management/managementGroups/20000000-0000-0000-0000-000000000001", + "name": "20000000-0000-0000-0000-000000000001", + "displayName": "Parent display name" + }, + "managementGroupAncestors": [ + "20000000-0000-0000-0000-000000000001", + "20000000-0000-0000-0000-000000000000" + ] + } + } + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/GetManagementGroupWithExpand.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/GetManagementGroupWithExpand.json new file mode 100644 index 000000000000..fea9231dc010 --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/GetManagementGroupWithExpand.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "api-version": "2020-10-01", + "groupId": "20000000-0001-0000-0000-000000000000", + "$expand": "children", + "Cache-Control": "no-cache" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Management/managementGroups/20000000-0001-0000-0000-000000000000", + "type": "Microsoft.Management/managementGroups", + "name": "20000000-0001-0000-0000-000000000000", + "properties": { + "tenantId": "20000000-0000-0000-0000-000000000000", + "displayName": "Group 1 Tenant 2", + "details": { + "version": 1, + "updatedTime": "2018-01-01T00:00:00.00Z", + "updatedBy": "Test", + "parent": { + "id": "/providers/Microsoft.Management/managementGroups/20000000-0000-0000-0000-000000000000", + "name": "20000000-0000-0000-0000-000000000000", + "displayName": "20000000-0000-0000-0000-000000000000" + } + }, + "children": [ + { + "id": "/providers/Microsoft.Management/managementGroups/20000000-0002-0000-0000-000000000000", + "type": "Microsoft.Management/managementGroups", + "name": "20000000-0002-0000-0000-000000000000", + "displayName": "Group 2 Tenant 2" + }, + { + "id": "/providers/Microsoft.Management/managementGroups/20000000-0003-0000-0000-000000000000", + "type": "Microsoft.Management/managementGroups", + "name": "20000000-0003-0000-0000-000000000000", + "displayName": "Group 3 Tenant 2" + }, + { + "id": "/subscriptions/10000000-F004-0000-0000-000000000000", + "type": "/subscriptions", + "name": "10000000-F004-0000-0000-000000000000", + "displayName": "Subscription 4 Tenant 1" + }, + { + "id": "/subscriptions/20000000-F005-0000-0000-000000000000", + "type": "/subscriptions", + "name": "20000000-F005-0000-0000-000000000000", + "displayName": "Subscription 5 Tenant 2" + }, + { + "id": "/subscriptions/30000000-F003-0000-0000-000000000000", + "type": "/subscriptions", + "name": "30000000-F003-0000-0000-000000000000", + "displayName": "Subscription 3 Tenant 3" + } + ] + } + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/GetManagementGroupWithExpandAndRecurse.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/GetManagementGroupWithExpandAndRecurse.json new file mode 100644 index 000000000000..48bcfc6068d2 --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/GetManagementGroupWithExpandAndRecurse.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "api-version": "2020-10-01", + "groupId": "20000000-0001-0000-0000-000000000000", + "$expand": "children", + "$recurse": true, + "Cache-Control": "no-cache" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Management/managementGroups/RootGroup", + "type": "Microsoft.Management/managementGroups", + "name": "RootGroup", + "properties": { + "tenantId": "20000000-0000-0000-0000-000000000000", + "displayName": "RootGroup", + "details": { + "version": 2, + "updatedTime": "2018-01-25T02:26:49.0022093Z", + "updatedBy": "bd490e30-04cb-433e-b8c8-6066959a8bab", + "parent": { + "id": "/providers/Microsoft.Management/managementGroups/20000000-0000-0000-0000-000000000000", + "name": "20000000-0000-0000-0000-000000000000", + "displayName": "20000000-0000-0000-0000-000000000000" + } + }, + "children": [ + { + "id": "/providers/Microsoft.Management/managementGroups/Child", + "type": "Microsoft.Management/managementGroups", + "name": "Child", + "displayName": "Child", + "children": [ + { + "id": "/providers/Microsoft.Management/managementGroups/Leaf", + "type": "Microsoft.Management/managementGroups", + "name": "Leaf", + "displayName": "Leaf", + "children": [ + { + "id": "/subscriptions/728bcbe4-8d56-4510-86c2-4921b8beefbc", + "type": "/subscriptions", + "name": "728bcbe4-8d56-4510-86c2-4921b8beefbc", + "displayName": "Pay-As-You-Go" + } + ] + } + ] + }, + { + "id": "/providers/Microsoft.Management/managementGroups/AnotherChild", + "type": "Microsoft.Management/managementGroups", + "name": "AnotherChild", + "displayName": "Leaf" + } + ] + } + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/GetManagementGroupWithPath.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/GetManagementGroupWithPath.json new file mode 100644 index 000000000000..ac96e22ad5ab --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/GetManagementGroupWithPath.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2020-10-01", + "groupId": "20000000-0001-0000-0000-000000000000", + "$expand": "path", + "Cache-Control": "no-cache" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Management/managementGroups/20000000-0001-0000-0000-000000000000", + "type": "Microsoft.Management/managementGroups", + "name": "20000000-0001-0000-0000-000000000000", + "properties": { + "tenantId": "20000000-0000-0000-0000-000000000000", + "displayName": "Group 1 Tenant 2", + "details": { + "version": 1, + "updatedTime": "2018-01-01T00:00:00.00Z", + "updatedBy": "Test", + "parent": { + "id": "/providers/Microsoft.Management/managementGroups/20000000-0000-0000-0000-000000000001", + "name": "20000000-0000-0000-0000-000000000001", + "displayName": "Parent display name" + }, + "path": [ + { + "name": "20000000-0000-0000-0000-000000000000", + "displayName": "Grandparent display name" + }, + { + "name": "20000000-0000-0000-0000-000000000001", + "displayName": "Parent display name" + } + ] + } + } + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/GetSubscriptionFromManagementGroup.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/GetSubscriptionFromManagementGroup.json new file mode 100644 index 000000000000..f7ac80087f1e --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/GetSubscriptionFromManagementGroup.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2020-10-01", + "groupId": "Group", + "subscriptionId": "728bcbe4-8d56-4510-86c2-4921b8beefbc", + "Cache-Control": "no-cache" + }, + "responses": { + "200": { + "body": { + "name": "728bcbe4-8d56-4510-86c2-4921b8beefbc", + "id": " /providers/Microsoft.Management/managementGroups/Group/subscriptions/728bcbe4-8d56-4510-86c2-4921b8beefbc", + "type": "Microsoft.Management/managementGroups/subscriptions", + "properties": { + "displayName": "Group", + "parent": { + "id": "/providers/Microsoft.Management/managementGroups/Group" + }, + "state": "Active", + "tenant": "e751ac82-623b-4913-8d74-22637c832373" + } + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/ListHierarchySettings.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/ListHierarchySettings.json new file mode 100644 index 000000000000..05aa8a9e391b --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/ListHierarchySettings.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2020-10-01", + "groupId": "root" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Management/managementGroups/root/settings/default", + "type": "Microsoft.Management/managementGroups/settings", + "name": "root", + "properties": { + "tenantId": "20000000-0000-0000-0000-000000000000", + "defaultManagementGroup": "/providers/Microsoft.Management/managementGroups/DefaultGroup", + "requireAuthorizationForGroupCreation": true + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/ListManagementGroups.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/ListManagementGroups.json new file mode 100644 index 000000000000..707b791f87e7 --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/ListManagementGroups.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2020-10-01", + "Cache-Control": "no-cache" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Management/managementGroups/20000000-0001-0000-0000-000000000000", + "type": "Microsoft.Management/managementGroups", + "name": "20000000-0001-0000-0000-000000000000", + "properties": { + "tenantId": "20000000-0000-0000-0000-000000000000", + "displayName": "Group 1 Tenant 2" + } + }, + { + "id": "/providers/Microsoft.Management/managementGroups/20000000-0004-0000-0000-000000000000", + "type": "Microsoft.Management/managementGroups", + "name": "20000000-0004-0000-0000-000000000000", + "properties": { + "tenantId": "20000000-0000-0000-0000-000000000000", + "displayName": "Group 4 Tenant 2" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/PatchHierarchySettings.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/PatchHierarchySettings.json new file mode 100644 index 000000000000..05b91efa0ecd --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/PatchHierarchySettings.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2020-10-01", + "groupId": "root", + "CreateTenantSettingsRequest": { + "properties": { + "defaultManagementGroup": "/providers/Microsoft.Management/managementGroups/DefaultGroup", + "requireAuthorizationForGroupCreation": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Management/managementGroups/root/settings/default", + "type": "Microsoft.Management/managementGroups/settings", + "name": "root", + "properties": { + "tenantId": "20000000-0000-0000-0000-000000000000", + "defaultManagementGroup": "/providers/Microsoft.Management/managementGroups/DefaultGroup", + "requireAuthorizationForGroupCreation": true + } + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/PatchManagementGroup.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/PatchManagementGroup.json new file mode 100644 index 000000000000..945f8f41ec07 --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/PatchManagementGroup.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2020-10-01", + "groupId": "ChildGroup", + "patchGroupRequest": { + "displayName": "AlternateDisplayName", + "parentGroupId": "/providers/Microsoft.Management/managementGroups/AlternateRootGroup" + }, + "Cache-Control": "no-cache" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Management/managementGroups/ChildGroup", + "type": "Microsoft.Management/managementGroups", + "name": "ChildGroup", + "properties": { + "tenantId": "20000000-0000-0000-0000-000000000000", + "displayName": "AlternateDisplayName", + "details": { + "version": 2, + "updatedTime": "2018-01-25T02:46:59.0545645Z", + "updatedBy": "bd490e30-04cb-433e-b8c8-6066959a8bab", + "parent": { + "id": "/providers/Microsoft.Management/managementGroups/AlternateRootGroup", + "name": "AlternateRootGroup", + "displayName": "AlternateRootGroup" + } + } + } + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/PutHierarchySettings.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/PutHierarchySettings.json new file mode 100644 index 000000000000..05b91efa0ecd --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/PutHierarchySettings.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2020-10-01", + "groupId": "root", + "CreateTenantSettingsRequest": { + "properties": { + "defaultManagementGroup": "/providers/Microsoft.Management/managementGroups/DefaultGroup", + "requireAuthorizationForGroupCreation": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Management/managementGroups/root/settings/default", + "type": "Microsoft.Management/managementGroups/settings", + "name": "root", + "properties": { + "tenantId": "20000000-0000-0000-0000-000000000000", + "defaultManagementGroup": "/providers/Microsoft.Management/managementGroups/DefaultGroup", + "requireAuthorizationForGroupCreation": true + } + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/PutManagementGroup.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/PutManagementGroup.json new file mode 100644 index 000000000000..cb7fae222e36 --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/PutManagementGroup.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2020-10-01", + "groupId": "ChildGroup", + "createManagementGroupRequest": { + "properties": { + "displayName": "ChildGroup", + "details": { + "parent": { + "id": "/providers/Microsoft.Management/managementGroups/RootGroup" + } + } + } + }, + "Cache-Control": "no-cache" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Management/managementGroups/ChildGroup", + "type": "Microsoft.Management/managementGroups", + "name": "ChildGroup", + "properties": { + "tenantId": "20000000-0000-0000-0000-000000000000", + "displayName": "ChildGroup", + "details": { + "version": 1, + "updatedTime": "2018-01-01T00:00:00.00Z", + "updatedBy": "16b8ef21-5c9f-420c-bcc9-e4f8c9f30b4b", + "parent": { + "id": "/providers/Microsoft.Management/managementGroups/RootGroup", + "name": "RootGroup", + "displayName": "RootGroup" + } + } + } + } + }, + "202": { + "body": { + "id": "/providers/Microsoft.Management/managementGroups/ChildGroup", + "type": "Microsoft.Management/managementGroups", + "name": "ChildGroup", + "status": "NotStarted" + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/RemoveManagementGroupSubscription.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/RemoveManagementGroupSubscription.json new file mode 100644 index 000000000000..ef4b6a52cf2c --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/RemoveManagementGroupSubscription.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2020-10-01", + "groupId": "Group", + "subscriptionId": "728bcbe4-8d56-4510-86c2-4921b8beefbc", + "Cache-Control": "no-cache" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/StartTenantBackfillRequest.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/StartTenantBackfillRequest.json new file mode 100644 index 000000000000..faa955d711c2 --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/StartTenantBackfillRequest.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-10-01", + "startTenantBackfillRequest": {} + }, + "responses": { + "200": { + "body": { + "tenantId": "20000000-0000-0000-0000-000000000000", + "status": "Started" + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/TenantBackfillStatusRequest.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/TenantBackfillStatusRequest.json new file mode 100644 index 000000000000..8e21d9e0773a --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/examples/TenantBackfillStatusRequest.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-10-01", + "tenantBackfillStatusRequest": {} + }, + "responses": { + "200": { + "body": { + "tenantId": "20000000-0000-0000-0000-000000000000", + "status": "Started" + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/management.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/management.json new file mode 100644 index 000000000000..94e2e99ed7cf --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-10-01/management.json @@ -0,0 +1,2115 @@ +{ + "swagger": "2.0", + "host": "management.azure.com", + "info": { + "version": "2020-10-01", + "title": "Management Groups API", + "description": "The Azure Management Groups API enables consolidation of multiple \nsubscriptions/resources into an organizational hierarchy and centrally \nmanage access control, policies, alerting and reporting for those resources.\n" + }, + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "tags": [ + { + "name": "ManagementGroups", + "description": "A Management Group is a customer defined scope (grouping mechanism) that \nprovides access control (authorization), policy management and reporting. \nManagement Groups are organized in a strictly tree-based hierarchy.\n" + }, + { + "name": "Operations", + "description": "Management operations supported by the Microsoft.Management resource provider.\n" + }, + { + "name": "Entities", + "description": "A list of entities that belong to the Management Groups.\n" + } + ], + "paths": { + "/providers/Microsoft.Management/managementGroups": { + "get": { + "tags": [ + "ManagementGroups" + ], + "operationId": "ManagementGroups_List", + "description": "List management groups for the authenticated user.\n", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/CacheControlHeader" + }, + { + "$ref": "#/parameters/SkipTokenParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ManagementGroupListResult" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "ListManagementGroups": { + "$ref": "./examples/ListManagementGroups.json" + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}": { + "get": { + "tags": [ + "ManagementGroups" + ], + "operationId": "ManagementGroups_Get", + "description": "Get the details of the management group.\n", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ExpandParameter" + }, + { + "$ref": "#/parameters/RecurseParameter" + }, + { + "$ref": "#/parameters/FilterParameter" + }, + { + "$ref": "#/parameters/CacheControlHeader" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ManagementGroup" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "GetManagementGroup": { + "$ref": "./examples/GetManagementGroup.json" + }, + "GetManagementGroupWithPath": { + "$ref": "./examples/GetManagementGroupWithPath.json" + }, + "GetManagementGroupWithAncestors": { + "$ref": "./examples/GetManagementGroupWithAncestors.json" + }, + "GetManagementGroupWithExpand": { + "$ref": "./examples/GetManagementGroupWithExpand.json" + }, + "GetManagementGroupsWithExpandAndRecurse": { + "$ref": "./examples/GetManagementGroupWithExpandAndRecurse.json" + } + } + }, + "put": { + "tags": [ + "ManagementGroups" + ], + "operationId": "ManagementGroups_CreateOrUpdate", + "description": "Create or update a management group.\nIf a management group is already created and a subsequent create request is issued with different properties, the management group properties will be updated.\n", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/CacheControlHeader" + }, + { + "$ref": "#/parameters/CreateManagementGroupRequestParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ManagementGroup" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/AzureAsyncOperationResults" + }, + "headers": { + "Location": { + "description": "URL for determining when an operation has completed. Send a GET request to the URL in Location header.\nThe URI should return a 202 until the operation reaches a terminal state and 200 once it reaches a terminal state.\n\nFor more info: https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/Addendum.md#202-accepted-and-location-headers", + "type": "string" + }, + "Azure-AsyncOperation": { + "description": "URL for checking the ongoing status of the operation.\nTo get the status of the asynchronous operation, send a GET request to the URL in Azure-AsyncOperation header value.\n\nFor more info: https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/Addendum.md#asynchronous-operations", + "type": "string" + } + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "PutManagementGroup": { + "$ref": "./examples/PutManagementGroup.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "ManagementGroups" + ], + "operationId": "ManagementGroups_Update", + "description": "Update a management group.\n", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/CacheControlHeader" + }, + { + "$ref": "#/parameters/PatchGroupRequestParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ManagementGroup" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "PatchManagementGroup": { + "$ref": "./examples/PatchManagementGroup.json" + } + } + }, + "delete": { + "tags": [ + "ManagementGroups" + ], + "operationId": "ManagementGroups_Delete", + "description": "Delete management group.\nIf a management group contains child resources, the request will fail.\n", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/CacheControlHeader" + } + ], + "responses": { + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/AzureAsyncOperationResults" + }, + "headers": { + "Location": { + "description": "URL for determining when an operation has completed. Send a GET request to the URL in Location header.\nThe URI should return a 202 until the operation reaches a terminal state and 200 once it reaches a terminal state.\n\nFor more info: https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/Addendum.md#202-accepted-and-location-headers", + "type": "string" + }, + "Azure-AsyncOperation": { + "description": "URL for checking the ongoing status of the operation.\nTo get the status of the asynchronous operation, send a GET request to the URL in Azure-AsyncOperation header value.\n\nFor more info: https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/Addendum.md#asynchronous-operations", + "type": "string" + } + } + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "DeleteManagementGroup": { + "$ref": "./examples/DeleteManagementGroup.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/descendants": { + "get": { + "tags": [ + "ManagementGroups" + ], + "operationId": "ManagementGroups_GetDescendants", + "description": "List all entities that descend from a management group.\n", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SkipTokenParameter" + }, + { + "$ref": "#/parameters/TopParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DescendantListResult" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetDescendants": { + "$ref": "./examples/GetDescendants.json" + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/subscriptions/{subscriptionId}": { + "put": { + "tags": [ + "ManagementGroups" + ], + "operationId": "ManagementGroupSubscriptions_Create", + "description": "Associates existing subscription with the management group.\n", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/CacheControlHeader" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SubscriptionUnderManagementGroup" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "AddSubscriptionToManagementGroup": { + "$ref": "./examples/AddManagementGroupSubscription.json" + } + } + }, + "delete": { + "tags": [ + "ManagementGroups" + ], + "operationId": "ManagementGroupSubscriptions_Delete", + "description": "De-associates subscription from the management group.\n", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/CacheControlHeader" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "DeleteSubscriptionFromManagementGroup": { + "$ref": "./examples/RemoveManagementGroupSubscription.json" + } + } + }, + "get": { + "tags": [ + "ManagementGroups" + ], + "operationId": "ManagementGroupSubscriptions_GetSubscription", + "description": "Retrieves details about given subscription which is associated with the management group.\n", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/CacheControlHeader" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SubscriptionUnderManagementGroup" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "GetSubscriptionFromManagementGroup": { + "$ref": "./examples/GetSubscriptionFromManagementGroup.json" + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/subscriptions": { + "get": { + "tags": [ + "ManagementGroups" + ], + "operationId": "ManagementGroupSubscriptions_GetSubscriptionsUnderManagementGroup", + "description": "Retrieves details about all subscriptions which are associated with the management group.\n", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SkipTokenParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ListSubscriptionUnderManagementGroup" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetAllSubscriptionsFromManagementGroup": { + "$ref": "./examples/GetAllSubscriptionsFromManagementGroup.json" + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/settings": { + "get": { + "tags": [ + "ManagementGroups" + ], + "operationId": "HierarchySettings_List", + "description": "Gets all the hierarchy settings defined at the Management Group level. Settings can only be set on the root Management Group of the hierarchy.\n", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/HierarchySettingsList" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ListGroupSettings": { + "$ref": "./examples/ListHierarchySettings.json" + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/settings/default": { + "get": { + "tags": [ + "ManagementGroups" + ], + "operationId": "HierarchySettings_Get", + "description": "Gets the hierarchy settings defined at the Management Group level. Settings can only be set on the root Management Group of the hierarchy.\n", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/HierarchySettings" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "GetGroupSettings": { + "$ref": "./examples/GetHierarchySettings.json" + } + } + }, + "put": { + "tags": [ + "ManagementGroups" + ], + "operationId": "HierarchySettings_CreateOrUpdate", + "description": "Creates or updates the hierarchy settings defined at the Management Group level.\n", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/CreateOrUpdateManagementGroupSettingsRequestParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/HierarchySettings" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "GetGroupSettings": { + "$ref": "./examples/PutHierarchySettings.json" + } + } + }, + "patch": { + "tags": [ + "ManagementGroups" + ], + "operationId": "HierarchySettings_Update", + "description": "Updates the hierarchy settings defined at the Management Group level.\n", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/CreateOrUpdateManagementGroupSettingsRequestParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/HierarchySettings" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "GetGroupSettings": { + "$ref": "./examples/PatchHierarchySettings.json" + } + } + }, + "delete": { + "tags": [ + "ManagementGroups" + ], + "operationId": "HierarchySettings_Delete", + "description": "Deletes the hierarchy settings defined at the Management Group level.\n", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "GetGroupSettings": { + "$ref": "./examples/DeleteHierarchySettings.json" + } + } + } + }, + "/providers/Microsoft.Management/operations": { + "get": { + "tags": [ + "Operations" + ], + "operationId": "Operations_List", + "description": "Lists all of the available Management REST API operations.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Management/checkNameAvailability": { + "post": { + "tags": [ + "CheckNameAvailability" + ], + "operationId": "CheckNameAvailability", + "description": "Checks if the specified management group name is valid and unique", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/CheckNameAvailabilityParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "CheckManagementGroupNameAvailability": { + "$ref": "./examples/CheckManagementGroupNameAvailability.json" + } + } + } + }, + "/providers/Microsoft.Management/getEntities": { + "post": { + "tags": [ + "Entities" + ], + "operationId": "Entities_List", + "description": "List all entities (Management Groups, Subscriptions, etc.) for the authenticated user.\n", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SkipTokenParameter" + }, + { + "$ref": "#/parameters/SkipParameter" + }, + { + "$ref": "#/parameters/TopParameter" + }, + { + "$ref": "#/parameters/SelectParameter" + }, + { + "$ref": "#/parameters/SearchParameter" + }, + { + "$ref": "#/parameters/EntityFilterParameter" + }, + { + "$ref": "#/parameters/EntityViewParameter" + }, + { + "$ref": "#/parameters/GroupNameParameter" + }, + { + "$ref": "#/parameters/CacheControlHeader" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/EntityListResult" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetEntities": { + "$ref": "./examples/GetEntities.json" + } + } + } + }, + "/providers/Microsoft.Management/startTenantBackfill": { + "post": { + "tags": [ + "TenantBackfill" + ], + "operationId": "StartTenantBackfill", + "description": "Starts backfilling subscriptions for the Tenant.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/TenantBackfillStatusResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "StartTenantBackfill": { + "$ref": "./examples/StartTenantBackfillRequest.json" + } + } + } + }, + "/providers/Microsoft.Management/tenantBackfillStatus": { + "post": { + "tags": [ + "TenantBackfill" + ], + "operationId": "TenantBackfillStatus", + "description": "Gets tenant backfill status", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/TenantBackfillStatusResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "TenantBackfillStatus": { + "$ref": "./examples/TenantBackfillStatusRequest.json" + } + } + } + } + }, + "definitions": { + "ErrorResponse": { + "description": "The error object.", + "properties": { + "error": { + "title": "Error", + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "ErrorDetails": { + "description": "The details of the error.", + "properties": { + "code": { + "description": "One of a server-defined set of error codes.", + "type": "string" + }, + "message": { + "description": "A human-readable representation of the error.", + "type": "string" + }, + "details": { + "description": "A human-readable representation of the error's details.", + "type": "string" + } + } + }, + "Operation": { + "description": "Operation supported by the Microsoft.Management resource provider.", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}.", + "type": "string", + "readOnly": true + }, + "display": { + "title": "Display", + "$ref": "#/definitions/OperationDisplayProperties" + } + } + }, + "OperationDisplayProperties": { + "description": "The object that represents the operation.", + "properties": { + "provider": { + "description": "The name of the provider.", + "type": "string", + "readOnly": true + }, + "resource": { + "description": "The resource on which the operation is performed.", + "type": "string", + "readOnly": true + }, + "operation": { + "description": "The operation that can be performed.", + "type": "string", + "readOnly": true + }, + "description": { + "description": "Operation description.", + "type": "string", + "readOnly": true + } + } + }, + "OperationListResult": { + "description": "Describes the result of the request to list Microsoft.Management operations.", + "properties": { + "value": { + "description": "List of operations supported by the Microsoft.Management 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 + } + } + }, + "CheckNameAvailabilityResult": { + "description": "Describes the result of the request to check management group name availability.", + "properties": { + "nameAvailable": { + "description": "Required. True indicates name is valid and available. False indicates the name is invalid, unavailable, or both.", + "type": "boolean", + "readOnly": true + }, + "reason": { + "description": "Required if nameAvailable == false. 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.", + "type": "string", + "enum": [ + "Invalid", + "AlreadyExists" + ], + "x-ms-enum": { + "name": "Reason", + "modelAsString": false, + "values": [ + { + "value": "Invalid" + }, + { + "value": "AlreadyExists" + } + ] + }, + "readOnly": true + }, + "message": { + "description": "Required if nameAvailable == false. Localized. 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.", + "type": "string", + "readOnly": true + } + } + }, + "TenantBackfillStatusResult": { + "description": "The tenant backfill status", + "properties": { + "tenantId": { + "type": "string", + "description": "The AAD Tenant ID associated with the management group. For example, 00000000-0000-0000-0000-000000000000", + "readOnly": true + }, + "status": { + "description": "The status of the Tenant Backfill", + "type": "string", + "enum": [ + "NotStarted", + "NotStartedButGroupsExist", + "Started", + "Failed", + "Cancelled", + "Completed" + ], + "x-ms-enum": { + "name": "Status", + "modelAsString": false, + "values": [ + { + "value": "NotStarted" + }, + { + "value": "NotStartedButGroupsExist" + }, + { + "value": "Started" + }, + { + "value": "Failed" + }, + { + "value": "Cancelled" + }, + { + "value": "Completed" + } + ] + }, + "readOnly": true + } + } + }, + "ManagementGroupListResult": { + "description": "Describes the result of the request to list management groups.", + "properties": { + "value": { + "description": "The list of management groups.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagementGroupInfo" + } + }, + "nextLink": { + "description": "The URL to use for getting the next set of results.", + "type": "string", + "readOnly": true + } + } + }, + "ManagementGroupInfo": { + "description": "The management group resource.", + "properties": { + "id": { + "type": "string", + "description": "The fully qualified ID for the management group. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000", + "readOnly": true + }, + "type": { + "type": "string", + "description": "The type of the resource. For example, Microsoft.Management/managementGroups", + "readOnly": true + }, + "name": { + "type": "string", + "description": "The name of the management group. For example, 00000000-0000-0000-0000-000000000000", + "readOnly": true + }, + "properties": { + "x-ms-client-flatten": true, + "title": "Properties", + "$ref": "#/definitions/ManagementGroupInfoProperties" + } + } + }, + "ManagementGroupInfoProperties": { + "description": "The generic properties of a management group.", + "type": "object", + "properties": { + "tenantId": { + "type": "string", + "description": "The AAD Tenant ID associated with the management group. For example, 00000000-0000-0000-0000-000000000000" + }, + "displayName": { + "type": "string", + "description": "The friendly name of the management group." + } + } + }, + "ListSubscriptionUnderManagementGroup": { + "description": "The details of all subscriptions under management group.", + "properties": { + "value": { + "description": "The list of subscriptions.", + "type": "array", + "items": { + "$ref": "#/definitions/SubscriptionUnderManagementGroup" + } + }, + "nextLink": { + "description": "The URL to use for getting the next set of results.", + "type": "string", + "readOnly": true + } + } + }, + "SubscriptionUnderManagementGroup": { + "description": "The details of subscription under management group.", + "x-ms-azure-resource": true, + "properties": { + "id": { + "type": "string", + "description": "The fully qualified ID for the subscription. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000/subscriptions/0000000-0000-0000-0000-000000000001", + "readOnly": true + }, + "type": { + "type": "string", + "description": "The type of the resource. For example, Microsoft.Management/managementGroups/subscriptions", + "readOnly": true + }, + "name": { + "type": "string", + "description": "The stringified id of the subscription. For example, 00000000-0000-0000-0000-000000000000", + "readOnly": true + }, + "properties": { + "title": "Properties", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SubscriptionUnderManagementGroupProperties" + } + } + }, + "SubscriptionUnderManagementGroupProperties": { + "description": "The generic properties of subscription under a management group.", + "type": "object", + "properties": { + "tenant": { + "type": "string", + "description": "The AAD Tenant ID associated with the subscription. For example, 00000000-0000-0000-0000-000000000000" + }, + "displayName": { + "type": "string", + "description": "The friendly name of the subscription." + }, + "parent": { + "title": "Parent", + "$ref": "#/definitions/DescendantParentGroupInfo", + "x-nullable": true + }, + "state": { + "type": "string", + "description": "The state of the subscription." + } + } + }, + "ManagementGroup": { + "description": "The management group details.", + "x-ms-azure-resource": true, + "properties": { + "id": { + "type": "string", + "description": "The fully qualified ID for the management group. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000", + "readOnly": true + }, + "type": { + "type": "string", + "description": "The type of the resource. For example, Microsoft.Management/managementGroups", + "readOnly": true + }, + "name": { + "type": "string", + "description": "The name of the management group. For example, 00000000-0000-0000-0000-000000000000", + "readOnly": true + }, + "properties": { + "title": "Properties", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ManagementGroupProperties" + } + } + }, + "ManagementGroupProperties": { + "description": "The generic properties of a management group.", + "type": "object", + "properties": { + "tenantId": { + "type": "string", + "description": "The AAD Tenant ID associated with the management group. For example, 00000000-0000-0000-0000-000000000000" + }, + "displayName": { + "type": "string", + "description": "The friendly name of the management group." + }, + "details": { + "title": "Details", + "$ref": "#/definitions/ManagementGroupDetails" + }, + "children": { + "description": "The list of children.", + "x-nullable": true, + "type": "array", + "items": { + "$ref": "#/definitions/ManagementGroupChildInfo" + } + } + } + }, + "ManagementGroupDetails": { + "description": "The details of a management group.", + "type": "object", + "properties": { + "version": { + "type": "number", + "format": "int32", + "description": "The version number of the object." + }, + "updatedTime": { + "type": "string", + "format": "date-time", + "description": "The date and time when this object was last updated." + }, + "updatedBy": { + "type": "string", + "description": "The identity of the principal or process that updated the object." + }, + "parent": { + "title": "Parent", + "$ref": "#/definitions/ParentGroupInfo" + }, + "path": { + "description": "The path from the root to the current group.", + "x-nullable": true, + "type": "array", + "items": { + "$ref": "#/definitions/ManagementGroupPathElement" + } + }, + "managementGroupAncestors": { + "description": "The ancestors of the management group.", + "x-nullable": true, + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "ManagementGroupChildInfo": { + "description": "The child information of a management group.", + "properties": { + "type": { + "title": "The type of child resource.", + "$ref": "#/definitions/ManagementGroupChildType", + "description": "The fully qualified resource type which includes provider namespace (e.g. Microsoft.Management/managementGroups)" + }, + "id": { + "type": "string", + "description": "The fully qualified ID for the child resource (management group or subscription). For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000" + }, + "name": { + "type": "string", + "description": "The name of the child entity." + }, + "displayName": { + "type": "string", + "description": "The friendly name of the child resource." + }, + "children": { + "description": "The list of children.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagementGroupChildInfo" + } + } + } + }, + "ManagementGroupPathElement": { + "description": "A path element of a management group ancestors.", + "properties": { + "name": { + "type": "string", + "description": "The name of the group." + }, + "displayName": { + "type": "string", + "description": "The friendly name of the group." + } + } + }, + "ParentGroupInfo": { + "description": "(Optional) The ID of the parent management group.", + "properties": { + "id": { + "type": "string", + "description": "The fully qualified ID for the parent management group. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000" + }, + "name": { + "type": "string", + "description": "The name of the parent management group" + }, + "displayName": { + "type": "string", + "description": "The friendly name of the parent management group." + } + } + }, + "ManagementGroupChildType": { + "type": "string", + "enum": [ + "Microsoft.Management/managementGroups", + "/subscriptions" + ], + "description": "The type of child resource." + }, + "OperationResults": { + "description": "The results of an asynchronous operation.", + "properties": { + "id": { + "type": "string", + "description": "The fully qualified ID for the management group. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000", + "readOnly": true + }, + "type": { + "type": "string", + "description": "The type of the resource. For example, Microsoft.Management/managementGroups", + "readOnly": true + }, + "name": { + "type": "string", + "description": "The name of the management group. For example, 00000000-0000-0000-0000-000000000000", + "readOnly": true + }, + "properties": { + "title": "Properties", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ManagementGroupInfoProperties" + } + } + }, + "AzureAsyncOperationResults": { + "description": "The results of Azure-AsyncOperation.", + "properties": { + "id": { + "type": "string", + "description": "The fully qualified ID for the management group. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000", + "readOnly": true + }, + "type": { + "type": "string", + "description": "The type of the resource. For example, Microsoft.Management/managementGroups", + "readOnly": true + }, + "name": { + "type": "string", + "description": "The name of the management group. For example, 00000000-0000-0000-0000-000000000000", + "readOnly": true + }, + "status": { + "type": "string", + "description": "The current status of the asynchronous operation performed . For example, Running, Succeeded, Failed", + "readOnly": true + }, + "properties": { + "title": "Properties", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ManagementGroupInfoProperties" + } + } + }, + "HierarchySettings": { + "description": "Settings defined at the Management Group scope.", + "x-ms-azure-resource": true, + "properties": { + "id": { + "type": "string", + "description": "The fully qualified ID for the settings object. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000/settings/default.", + "readOnly": true + }, + "type": { + "type": "string", + "description": "The type of the resource. For example, Microsoft.Management/managementGroups/settings.", + "readOnly": true + }, + "name": { + "type": "string", + "description": "The name of the object. In this case, default.", + "readOnly": true + }, + "properties": { + "title": "Properties", + "x-ms-client-flatten": true, + "$ref": "#/definitions/HierarchySettingsProperties" + } + } + }, + "HierarchySettingsProperties": { + "description": "The generic properties of hierarchy settings.", + "type": "object", + "properties": { + "tenantId": { + "type": "string", + "description": "The AAD Tenant ID associated with the hierarchy settings. For example, 00000000-0000-0000-0000-000000000000" + }, + "requireAuthorizationForGroupCreation": { + "type": "boolean", + "description": "Indicates whether RBAC access is required upon group creation under the root Management Group. If set to true, user will require Microsoft.Management/managementGroups/write action on the root Management Group scope in order to create new Groups directly under the root. This will prevent new users from creating new Management Groups, unless they are given access." + }, + "defaultManagementGroup": { + "type": "string", + "description": "Settings that sets the default Management Group under which new subscriptions get added in this tenant. For example, /providers/Microsoft.Management/managementGroups/defaultGroup" + } + } + }, + "HierarchySettingsList": { + "description": "Lists all hierarchy settings.", + "properties": { + "value": { + "description": "The list of hierarchy settings.", + "type": "array", + "items": { + "$ref": "#/definitions/HierarchySettingsInfo" + } + }, + "nextLink": { + "description": "The URL to use for getting the next set of results.", + "type": "string", + "readOnly": true + } + } + }, + "HierarchySettingsInfo": { + "description": "The hierarchy settings resource.", + "properties": { + "id": { + "type": "string", + "description": "The fully qualified ID for the settings object. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000/settings/default.", + "readOnly": true + }, + "type": { + "type": "string", + "description": "The type of the resource. For example, Microsoft.Management/managementGroups/settings.", + "readOnly": true + }, + "name": { + "type": "string", + "description": "The name of the object. In this case, default.", + "readOnly": true + }, + "properties": { + "x-ms-client-flatten": true, + "title": "Properties", + "$ref": "#/definitions/HierarchySettingsProperties" + } + } + }, + "CreateOrUpdateSettingsRequest": { + "description": "Parameters for creating or updating Management Group settings", + "type": "object", + "x-ms-azure-resource": true, + "properties": { + "properties": { + "title": "Properties", + "x-ms-client-flatten": true, + "$ref": "#/definitions/CreateOrUpdateSettingsProperties" + } + } + }, + "CreateOrUpdateSettingsProperties": { + "description": "The properties of the request to create or update Management Group settings", + "type": "object", + "x-ms-azure-resource": true, + "properties": { + "requireAuthorizationForGroupCreation": { + "type": "boolean", + "description": "Indicates whether RBAC access is required upon group creation under the root Management Group. If set to true, user will require Microsoft.Management/managementGroups/write action on the root Management Group scope in order to create new Groups directly under the root. This will prevent new users from creating new Management Groups, unless they are given access." + }, + "defaultManagementGroup": { + "type": "string", + "description": "Settings that sets the default Management Group under which new subscriptions get added in this tenant. For example, /providers/Microsoft.Management/managementGroups/defaultGroup" + } + } + }, + "DescendantListResult": { + "description": "Describes the result of the request to view descendants.", + "properties": { + "value": { + "description": "The list of descendants.", + "type": "array", + "items": { + "$ref": "#/definitions/DescendantInfo" + } + }, + "nextLink": { + "description": "The URL to use for getting the next set of results.", + "type": "string", + "readOnly": true + } + } + }, + "DescendantInfo": { + "description": "The descendant.", + "properties": { + "id": { + "type": "string", + "description": "The fully qualified ID for the descendant. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000 or /subscriptions/0000000-0000-0000-0000-000000000000", + "readOnly": true, + "x-nullable": true + }, + "type": { + "type": "string", + "description": "The type of the resource. For example, Microsoft.Management/managementGroups or /subscriptions", + "readOnly": true, + "x-nullable": true + }, + "name": { + "type": "string", + "description": "The name of the descendant. For example, 00000000-0000-0000-0000-000000000000", + "readOnly": true + }, + "properties": { + "title": "Properties", + "x-ms-client-flatten": true, + "x-nullable": true, + "$ref": "#/definitions/DescendantInfoProperties" + } + } + }, + "DescendantInfoProperties": { + "description": "The generic properties of an descendant.", + "type": "object", + "properties": { + "displayName": { + "type": "string", + "description": "The friendly name of the management group.", + "x-nullable": true + }, + "parent": { + "title": "Parent", + "$ref": "#/definitions/DescendantParentGroupInfo", + "x-nullable": true + } + } + }, + "DescendantParentGroupInfo": { + "description": "The ID of the parent management group.", + "properties": { + "id": { + "type": "string", + "description": "The fully qualified ID for the parent management group. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000" + } + } + }, + "EntityListResult": { + "description": "Describes the result of the request to view entities.", + "properties": { + "value": { + "description": "The list of entities.", + "type": "array", + "items": { + "$ref": "#/definitions/EntityInfo" + } + }, + "count": { + "description": "Total count of records that match the filter", + "type": "integer", + "readOnly": true + }, + "nextLink": { + "description": "The URL to use for getting the next set of results.", + "type": "string", + "readOnly": true + } + } + }, + "EntityInfo": { + "description": "The entity.", + "properties": { + "id": { + "type": "string", + "description": "The fully qualified ID for the entity. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000", + "readOnly": true, + "x-nullable": true + }, + "type": { + "type": "string", + "description": "The type of the resource. For example, Microsoft.Management/managementGroups", + "readOnly": true, + "x-nullable": true + }, + "name": { + "type": "string", + "description": "The name of the entity. For example, 00000000-0000-0000-0000-000000000000", + "readOnly": true + }, + "properties": { + "title": "Properties", + "x-ms-client-flatten": true, + "x-nullable": true, + "$ref": "#/definitions/EntityInfoProperties" + } + } + }, + "EntityInfoProperties": { + "description": "The generic properties of an entity.", + "type": "object", + "properties": { + "tenantId": { + "type": "string", + "description": "The AAD Tenant ID associated with the entity. For example, 00000000-0000-0000-0000-000000000000", + "x-nullable": true + }, + "displayName": { + "type": "string", + "description": "The friendly name of the management group.", + "x-nullable": true + }, + "parent": { + "title": "Parent", + "$ref": "#/definitions/EntityParentGroupInfo", + "x-nullable": true + }, + "permissions": { + "title": "Permissions", + "x-nullable": true, + "$ref": "#/definitions/Permissions" + }, + "inheritedPermissions": { + "title": "Inherited Permissions", + "x-nullable": true, + "$ref": "#/definitions/Permissions" + }, + "numberOfDescendants": { + "title": "Number of Descendants", + "type": "integer", + "x-nullable": true + }, + "numberOfChildren": { + "title": "Number of Children", + "description": "Number of children is the number of Groups and Subscriptions that are exactly one level underneath the current Group.", + "type": "integer", + "x-nullable": true + }, + "numberOfChildGroups": { + "title": "Number of Child Groups", + "description": "Number of children is the number of Groups that are exactly one level underneath the current Group.", + "type": "integer", + "x-nullable": true + }, + "parentDisplayNameChain": { + "type": "array", + "description": "The parent display name chain from the root group to the immediate parent", + "x-nullable": true, + "items": { + "type": "string" + } + }, + "parentNameChain": { + "type": "array", + "description": "The parent name chain from the root group to the immediate parent", + "x-nullable": true, + "items": { + "type": "string" + } + } + } + }, + "EntityParentGroupInfo": { + "description": "(Optional) The ID of the parent management group.", + "properties": { + "id": { + "type": "string", + "description": "The fully qualified ID for the parent management group. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000" + } + } + }, + "EntityHierarchyItem": { + "description": "The management group details for the hierarchy view.", + "x-ms-azure-resource": true, + "properties": { + "id": { + "type": "string", + "description": "The fully qualified ID for the management group. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000", + "readOnly": true + }, + "type": { + "type": "string", + "description": "The type of the resource. For example, Microsoft.Management/managementGroups", + "readOnly": true + }, + "name": { + "type": "string", + "description": "The name of the management group. For example, 00000000-0000-0000-0000-000000000000", + "readOnly": true + }, + "properties": { + "title": "Properties", + "x-ms-client-flatten": true, + "$ref": "#/definitions/EntityHierarchyItemProperties" + } + } + }, + "EntityHierarchyItemProperties": { + "description": "The generic properties of a management group.", + "type": "object", + "properties": { + "displayName": { + "type": "string", + "description": "The friendly name of the management group." + }, + "permissions": { + "title": "Permissions", + "$ref": "#/definitions/Permissions" + }, + "children": { + "type": "array", + "description": "The list of children.", + "x-nullable": true, + "items": { + "$ref": "#/definitions/EntityHierarchyItem" + } + } + } + }, + "PatchManagementGroupRequest": { + "description": "Management group patch parameters.", + "type": "object", + "properties": { + "displayName": { + "type": "string", + "description": "The friendly name of the management group.", + "x-nullable": true + }, + "parentGroupId": { + "type": "string", + "description": "(Optional) The fully qualified ID for the parent management group. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000", + "x-nullable": true + } + } + }, + "CreateManagementGroupRequest": { + "description": "Management group creation parameters.", + "type": "object", + "x-ms-azure-resource": true, + "properties": { + "id": { + "type": "string", + "description": "The fully qualified ID for the management group. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000", + "readOnly": true + }, + "type": { + "type": "string", + "description": "The type of the resource. For example, Microsoft.Management/managementGroups", + "readOnly": true + }, + "name": { + "type": "string", + "description": "The name of the management group. For example, 00000000-0000-0000-0000-000000000000" + }, + "properties": { + "title": "Properties", + "x-ms-client-flatten": true, + "$ref": "#/definitions/CreateManagementGroupProperties" + } + } + }, + "CreateManagementGroupProperties": { + "description": "The generic properties of a management group used during creation.", + "type": "object", + "properties": { + "tenantId": { + "type": "string", + "readOnly": true, + "description": "The AAD Tenant ID associated with the management group. For example, 00000000-0000-0000-0000-000000000000" + }, + "displayName": { + "type": "string", + "description": "The friendly name of the management group. If no value is passed then this field will be set to the groupId.", + "x-nullable": true + }, + "details": { + "title": "Details", + "$ref": "#/definitions/CreateManagementGroupDetails" + }, + "children": { + "description": "The list of children.", + "readOnly": true, + "x-nullable": true, + "type": "array", + "items": { + "$ref": "#/definitions/CreateManagementGroupChildInfo" + } + } + } + }, + "CreateManagementGroupDetails": { + "description": "The details of a management group used during creation.", + "type": "object", + "properties": { + "version": { + "type": "number", + "readOnly": true, + "format": "int32", + "description": "The version number of the object." + }, + "updatedTime": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The date and time when this object was last updated." + }, + "updatedBy": { + "type": "string", + "readOnly": true, + "description": "The identity of the principal or process that updated the object." + }, + "parent": { + "title": "Parent", + "$ref": "#/definitions/CreateParentGroupInfo" + } + } + }, + "CreateManagementGroupChildInfo": { + "description": "The child information of a management group used during creation.", + "properties": { + "type": { + "title": "The type of child resource.", + "readOnly": true, + "$ref": "#/definitions/ManagementGroupChildType", + "description": "The fully qualified resource type which includes provider namespace (e.g. Microsoft.Management/managementGroups)" + }, + "id": { + "type": "string", + "readOnly": true, + "description": "The fully qualified ID for the child resource (management group or subscription). For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the child entity." + }, + "displayName": { + "type": "string", + "readOnly": true, + "description": "The friendly name of the child resource." + }, + "children": { + "description": "The list of children.", + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/CreateManagementGroupChildInfo" + } + } + } + }, + "CreateParentGroupInfo": { + "description": "(Optional) The ID of the parent management group used during creation.", + "properties": { + "id": { + "type": "string", + "description": "The fully qualified ID for the parent management group. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the parent management group" + }, + "displayName": { + "type": "string", + "readOnly": true, + "description": "The friendly name of the parent management group." + } + } + }, + "Permissions": { + "type": "string", + "enum": [ + "noaccess", + "view", + "edit", + "delete" + ], + "description": "The users specific permissions to this item." + }, + "CheckNameAvailabilityRequest": { + "description": "Management group name availability check parameters.", + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "the name to check for availability" + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Management/managementGroups" + ], + "x-ms-enum": { + "name": "Type", + "modelAsString": false, + "values": [ + { + "value": "Microsoft.Management/managementGroups" + } + ] + }, + "description": "fully qualified resource type which includes provider namespace" + } + } + } + }, + "parameters": { + "GroupIdParameter": { + "name": "groupId", + "in": "path", + "required": true, + "type": "string", + "description": "Management Group ID.", + "x-ms-parameter-location": "method" + }, + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Subscription ID.", + "x-ms-parameter-location": "method" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Version of the API to be used with the client request. The current version is 2018-01-01-preview." + }, + "ExpandParameter": { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "enum": [ + "children", + "path", + "ancestors" + ], + "x-ms-parameter-location": "method", + "description": "The $expand=children query string parameter allows clients to request inclusion of children in the response payload. $expand=path includes the path from the root group to the current group. $expand=ancestors includes the ancestor Ids of the current group." + }, + "RecurseParameter": { + "name": "$recurse", + "in": "query", + "required": false, + "type": "boolean", + "x-ms-parameter-location": "method", + "description": "The $recurse=true query string parameter allows clients to request inclusion of entire hierarchy in the response payload. Note that $expand=children must be passed up if $recurse is set to true." + }, + "CreateManagementGroupRequestParameter": { + "name": "createManagementGroupRequest", + "in": "body", + "required": true, + "description": "Management group creation parameters.", + "schema": { + "$ref": "#/definitions/CreateManagementGroupRequest" + }, + "x-ms-parameter-location": "method" + }, + "PatchGroupRequestParameter": { + "name": "patchGroupRequest", + "in": "body", + "required": true, + "description": "Management group patch parameters.", + "schema": { + "$ref": "#/definitions/PatchManagementGroupRequest" + }, + "x-ms-parameter-location": "method" + }, + "FilterParameter": { + "name": "$filter", + "in": "query", + "required": false, + "description": "A filter which allows the exclusion of subscriptions from results (i.e. '$filter=children.childType ne Subscription')", + "type": "string", + "x-ms-parameter-location": "method" + }, + "EntityFilterParameter": { + "name": "$filter", + "in": "query", + "required": false, + "description": "The filter parameter allows you to filter on the the name or display name fields. You can check for equality on the name field (e.g. name eq '{entityName}') and you can check for substrings on either the name or display name fields(e.g. contains(name, '{substringToSearch}'), contains(displayName, '{substringToSearch')). Note that the '{entityName}' and '{substringToSearch}' fields are checked case insensitively.", + "type": "string", + "x-ms-parameter-location": "method" + }, + "SelectParameter": { + "name": "$select", + "in": "query", + "required": false, + "description": "This parameter specifies the fields to include in the response. Can include any combination of Name,DisplayName,Type,ParentDisplayNameChain,ParentChain, e.g. '$select=Name,DisplayName,Type,ParentDisplayNameChain,ParentNameChain'. When specified the $select parameter can override select in $skipToken.", + "type": "string", + "x-ms-parameter-location": "method" + }, + "SearchParameter": { + "name": "$search", + "in": "query", + "required": false, + "type": "string", + "enum": [ + "AllowedParents", + "AllowedChildren", + "ParentAndFirstLevelChildren", + "ParentOnly", + "ChildrenOnly" + ], + "x-ms-parameter-location": "method", + "description": "The $search parameter is used in conjunction with the $filter parameter to return three different outputs depending on the parameter passed in. \nWith $search=AllowedParents the API will return the entity info of all groups that the requested entity will be able to reparent to as determined by the user's permissions.\nWith $search=AllowedChildren the API will return the entity info of all entities that can be added as children of the requested entity.\nWith $search=ParentAndFirstLevelChildren the API will return the parent and first level of children that the user has either direct access to or indirect access via one of their descendants.\nWith $search=ParentOnly the API will return only the group if the user has access to at least one of the descendants of the group.\nWith $search=ChildrenOnly the API will return only the first level of children of the group entity info specified in $filter. The user must have direct access to the children entities or one of it's descendants for it to show up in the results." + }, + "GroupNameParameter": { + "name": "groupName", + "in": "query", + "required": false, + "description": "A filter which allows the get entities call to focus on a particular group (i.e. \"$filter=name eq 'groupName'\")", + "type": "string", + "x-ms-parameter-location": "method" + }, + "CreateOrUpdateManagementGroupSettingsRequestParameter": { + "name": "CreateTenantSettingsRequest", + "in": "body", + "required": true, + "description": "Tenant level settings request parameter.", + "schema": { + "$ref": "#/definitions/CreateOrUpdateSettingsRequest" + }, + "x-ms-parameter-location": "method" + }, + "CheckNameAvailabilityParameter": { + "name": "checkNameAvailabilityRequest", + "in": "body", + "required": true, + "description": "Management group name availability check parameters.", + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityRequest" + }, + "x-ms-parameter-location": "method" + }, + "SkipParameter": { + "name": "$skip", + "in": "query", + "required": false, + "type": "integer", + "description": "Number of entities to skip over when retrieving results. Passing this in will override $skipToken.", + "x-ms-parameter-location": "method" + }, + "TopParameter": { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "description": "Number of elements to return when retrieving results. Passing this in will override $skipToken.", + "x-ms-parameter-location": "method" + }, + "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", + "x-ms-parameter-location": "method" + }, + "CacheControlHeader": { + "name": "Cache-Control", + "in": "header", + "default": "no-cache", + "description": "Indicates whether the request should utilize any caches. Populate the header with 'no-cache' value to bypass existing caches.", + "type": "string", + "x-ms-parameter-location": "method" + }, + "EntityViewParameter": { + "name": "$view", + "in": "query", + "required": false, + "type": "string", + "enum": [ + "FullHierarchy", + "GroupsOnly", + "SubscriptionsOnly", + "Audit" + ], + "x-ms-parameter-location": "method", + "description": "The view parameter allows clients to filter the type of data that is returned by the getEntities call." + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/AddManagementGroupSubscription.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/AddManagementGroupSubscription.json new file mode 100644 index 000000000000..1e62ffcd9c5b --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/AddManagementGroupSubscription.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2021-04-01", + "groupId": "Group", + "subscriptionId": "728bcbe4-8d56-4510-86c2-4921b8beefbc", + "Cache-Control": "no-cache" + }, + "responses": { + "200": { + "body": { + "name": "728bcbe4-8d56-4510-86c2-4921b8beefbc", + "id": " /providers/Microsoft.Management/managementGroups/Group/subscriptions/728bcbe4-8d56-4510-86c2-4921b8beefbc", + "type": "Microsoft.Management/managementGroups/subscriptions", + "properties": { + "displayName": "Group", + "parent": { + "id": "/providers/Microsoft.Management/managementGroups/Group" + }, + "state": "Active", + "tenant": "e751ac82-623b-4913-8d74-22637c832373" + } + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/CheckManagementGroupNameAvailability.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/CheckManagementGroupNameAvailability.json new file mode 100644 index 000000000000..a76fd281ba86 --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/CheckManagementGroupNameAvailability.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2021-04-01", + "checkNameAvailabilityRequest": { + "name": "nameTocheck", + "type": "Microsoft.Management/managementGroups" + }, + "Cache-Control": "no-cache" + }, + "responses": { + "200": { + "body": { + "nameAvailable": false, + "reason": "AlreadyExists", + "message": "Error message" + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/DeleteHierarchySettings.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/DeleteHierarchySettings.json new file mode 100644 index 000000000000..940b5356e2dd --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/DeleteHierarchySettings.json @@ -0,0 +1,9 @@ +{ + "parameters": { + "api-version": "2021-04-01", + "groupId": "root" + }, + "responses": { + "200": {} + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/DeleteManagementGroup.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/DeleteManagementGroup.json new file mode 100644 index 000000000000..94bb28c71f43 --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/DeleteManagementGroup.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2021-04-01", + "groupId": "GroupToDelete", + "Cache-Control": "no-cache" + }, + "responses": { + "202": { + "body": { + "id": "/providers/Microsoft.Management/managementGroups/GroupToDelete", + "type": "Microsoft.Management/managementGroups", + "name": "GroupToDelete", + "status": "NotStarted" + } + }, + "204": {} + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/GetAllSubscriptionsFromManagementGroup.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/GetAllSubscriptionsFromManagementGroup.json new file mode 100644 index 000000000000..ef5c1c9161eb --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/GetAllSubscriptionsFromManagementGroup.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2021-04-01", + "groupId": "Group" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "728bcbe4-8d56-4510-86c2-4921b8beefbc", + "id": "/providers/Microsoft.Management/managementGroups/Group/subscriptions/728bcbe4-8d56-4510-86c2-4921b8beefbc", + "type": "Microsoft.Management/managementGroups/subscriptions", + "properties": { + "displayName": "S5", + "parent": { + "id": "/providers/Microsoft.Management/managementGroups/Group" + }, + "state": "Active", + "tenant": "e751ac82-623b-4913-8d74-22637c832373" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/GetDescendants.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/GetDescendants.json new file mode 100644 index 000000000000..67c042a7e5a2 --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/GetDescendants.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2021-04-01", + "groupId": "20000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Management/managementGroups/20000000-0001-0000-0000-000000000000", + "type": "Microsoft.Management/managementGroups", + "name": "20000000-0001-0000-0000-000000000000", + "properties": { + "displayName": "Group 1", + "parent": { + "id": "/providers/Microsoft.Management/managementGroups/20000000-0000-0000-0000-000000000000" + } + } + }, + { + "id": "/subscriptions/20000000-0004-0000-0000-000000000000", + "type": "Microsoft.Management/managementGroups/subscriptions", + "name": "20000000-0004-0000-0000-000000000000", + "properties": { + "displayName": "Subscription 4", + "parent": { + "id": "/providers/Microsoft.Management/managementGroups/20000000-0000-0000-0000-000000000000" + } + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/GetEntities.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/GetEntities.json new file mode 100644 index 000000000000..3f2b659e7f56 --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/GetEntities.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2021-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Management/managementGroups/20000000-0001-0000-0000-000000000000", + "type": "Microsoft.Management/managementGroups", + "name": "20000000-0001-0000-0000-000000000000", + "properties": { + "tenantId": "20000000-0000-0000-0000-000000000000", + "displayName": "Group 1 Tenant 2", + "parent": { + "id": "/providers/Microsoft.Management/managementGroups/20000000-0000-0000-0000-000000000000" + }, + "permissions": "view", + "inheritedPermissions": "view", + "parentDisplayNameChain": [ + "Tenant Root Group", + "Group 1 Tenant 2 Parent" + ], + "parentNameChain": [ + "TenantRootGroup", + "Group1Tenant2Parent" + ], + "numberOfDescendants": 3, + "numberOfChildren": 2, + "numberOfChildGroups": 1 + } + }, + { + "id": "/providers/Microsoft.Management/managementGroups/20000000-0004-0000-0000-000000000000", + "type": "Microsoft.Management/managementGroups", + "name": "20000000-0004-0000-0000-000000000000", + "properties": { + "tenantId": "20000000-0000-0000-0000-000000000000", + "displayName": "Group 4 Tenant 2", + "parent": { + "id": "/providers/Microsoft.Management/managementGroups/20000000-0000-0000-0000-000000000000" + }, + "permissions": "delete", + "inheritedPermissions": "delete", + "parentDisplayNameChain": [ + "Tenant Root Group", + "Group 4 Tenant 2 Parent" + ], + "parentNameChain": [ + "TenantRootGroup", + "Group4 Tenant2Parent" + ], + "numberOfDescendants": 0, + "numberOfChildren": 0, + "numberOfChildGroups": 0 + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/GetHierarchySettings.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/GetHierarchySettings.json new file mode 100644 index 000000000000..dcb2a7931649 --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/GetHierarchySettings.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2021-04-01", + "groupId": "root" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Management/managementGroups/root/settings/default", + "type": "Microsoft.Management/managementGroups/settings", + "name": "root", + "properties": { + "tenantId": "20000000-0000-0000-0000-000000000000", + "defaultManagementGroup": "/providers/Microsoft.Management/managementGroups/DefaultGroup", + "requireAuthorizationForGroupCreation": true + } + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/GetManagementGroup.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/GetManagementGroup.json new file mode 100644 index 000000000000..97656bacaeb3 --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/GetManagementGroup.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2021-04-01", + "groupId": "20000000-0001-0000-0000-000000000000", + "Cache-Control": "no-cache" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Management/managementGroups/20000000-0001-0000-0000-000000000000", + "type": "Microsoft.Management/managementGroups", + "name": "20000000-0001-0000-0000-000000000000", + "properties": { + "tenantId": "20000000-0000-0000-0000-000000000000", + "displayName": "Group 1 Tenant 2", + "details": { + "version": 1, + "updatedTime": "2018-01-01T00:00:00.00Z", + "updatedBy": "16b8ef21-5c9f-420c-bcc9-e4f8c9f30b4b", + "parent": { + "id": "/providers/Microsoft.Management/managementGroups/RootGroup", + "name": "RootGroup", + "displayName": "RootGroup" + } + } + } + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/GetManagementGroupWithAncestors.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/GetManagementGroupWithAncestors.json new file mode 100644 index 000000000000..6b0417365aff --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/GetManagementGroupWithAncestors.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2021-04-01", + "groupId": "20000000-0001-0000-0000-00000000000", + "$expand": "ancestors", + "Cache-Control": "no-cache" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Management/managementGroups/20000000-0001-0000-0000-000000000000", + "type": "Microsoft.Management/managementGroups", + "name": "20000000-0001-0000-0000-000000000000", + "properties": { + "tenantId": "20000000-0000-0000-0000-000000000000", + "displayName": "Group 1 Tenant 2", + "details": { + "version": 1, + "updatedTime": "2018-01-01T00:00:00.00Z", + "updatedBy": "Test", + "parent": { + "id": "/providers/Microsoft.Management/managementGroups/20000000-0000-0000-0000-000000000001", + "name": "20000000-0000-0000-0000-000000000001", + "displayName": "Parent display name" + }, + "managementGroupAncestorsChain": [ + { + "name": "20000000-0000-0000-0000-000000000001", + "displayName": "Parent display name" + }, + { + "name": "20000000-0000-0000-0000-000000000000", + "displayName": "Grandparent display name" + } + ] + } + } + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/GetManagementGroupWithExpand.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/GetManagementGroupWithExpand.json new file mode 100644 index 000000000000..da862ac5bd0a --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/GetManagementGroupWithExpand.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "api-version": "2021-04-01", + "groupId": "20000000-0001-0000-0000-000000000000", + "$expand": "children", + "Cache-Control": "no-cache" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Management/managementGroups/20000000-0001-0000-0000-000000000000", + "type": "Microsoft.Management/managementGroups", + "name": "20000000-0001-0000-0000-000000000000", + "properties": { + "tenantId": "20000000-0000-0000-0000-000000000000", + "displayName": "Group 1 Tenant 2", + "details": { + "version": 1, + "updatedTime": "2018-01-01T00:00:00.00Z", + "updatedBy": "Test", + "parent": { + "id": "/providers/Microsoft.Management/managementGroups/20000000-0000-0000-0000-000000000000", + "name": "20000000-0000-0000-0000-000000000000", + "displayName": "20000000-0000-0000-0000-000000000000" + } + }, + "children": [ + { + "id": "/providers/Microsoft.Management/managementGroups/20000000-0002-0000-0000-000000000000", + "type": "Microsoft.Management/managementGroups", + "name": "20000000-0002-0000-0000-000000000000", + "displayName": "Group 2 Tenant 2" + }, + { + "id": "/providers/Microsoft.Management/managementGroups/20000000-0003-0000-0000-000000000000", + "type": "Microsoft.Management/managementGroups", + "name": "20000000-0003-0000-0000-000000000000", + "displayName": "Group 3 Tenant 2" + }, + { + "id": "/subscriptions/10000000-F004-0000-0000-000000000000", + "type": "/subscriptions", + "name": "10000000-F004-0000-0000-000000000000", + "displayName": "Subscription 4 Tenant 1" + }, + { + "id": "/subscriptions/20000000-F005-0000-0000-000000000000", + "type": "/subscriptions", + "name": "20000000-F005-0000-0000-000000000000", + "displayName": "Subscription 5 Tenant 2" + }, + { + "id": "/subscriptions/30000000-F003-0000-0000-000000000000", + "type": "/subscriptions", + "name": "30000000-F003-0000-0000-000000000000", + "displayName": "Subscription 3 Tenant 3" + } + ] + } + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/GetManagementGroupWithExpandAndRecurse.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/GetManagementGroupWithExpandAndRecurse.json new file mode 100644 index 000000000000..3b411790c6ed --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/GetManagementGroupWithExpandAndRecurse.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "api-version": "2021-04-01", + "groupId": "20000000-0001-0000-0000-000000000000", + "$expand": "children", + "$recurse": true, + "Cache-Control": "no-cache" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Management/managementGroups/RootGroup", + "type": "Microsoft.Management/managementGroups", + "name": "RootGroup", + "properties": { + "tenantId": "20000000-0000-0000-0000-000000000000", + "displayName": "RootGroup", + "details": { + "version": 2, + "updatedTime": "2018-01-25T02:26:49.0022093Z", + "updatedBy": "bd490e30-04cb-433e-b8c8-6066959a8bab", + "parent": { + "id": "/providers/Microsoft.Management/managementGroups/20000000-0000-0000-0000-000000000000", + "name": "20000000-0000-0000-0000-000000000000", + "displayName": "20000000-0000-0000-0000-000000000000" + } + }, + "children": [ + { + "id": "/providers/Microsoft.Management/managementGroups/Child", + "type": "Microsoft.Management/managementGroups", + "name": "Child", + "displayName": "Child", + "children": [ + { + "id": "/providers/Microsoft.Management/managementGroups/Leaf", + "type": "Microsoft.Management/managementGroups", + "name": "Leaf", + "displayName": "Leaf", + "children": [ + { + "id": "/subscriptions/728bcbe4-8d56-4510-86c2-4921b8beefbc", + "type": "/subscriptions", + "name": "728bcbe4-8d56-4510-86c2-4921b8beefbc", + "displayName": "Pay-As-You-Go" + } + ] + } + ] + }, + { + "id": "/providers/Microsoft.Management/managementGroups/AnotherChild", + "type": "Microsoft.Management/managementGroups", + "name": "AnotherChild", + "displayName": "Leaf" + } + ] + } + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/GetManagementGroupWithPath.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/GetManagementGroupWithPath.json new file mode 100644 index 000000000000..8e9cbec283e7 --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/GetManagementGroupWithPath.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2021-04-01", + "groupId": "20000000-0001-0000-0000-000000000000", + "$expand": "path", + "Cache-Control": "no-cache" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Management/managementGroups/20000000-0001-0000-0000-000000000000", + "type": "Microsoft.Management/managementGroups", + "name": "20000000-0001-0000-0000-000000000000", + "properties": { + "tenantId": "20000000-0000-0000-0000-000000000000", + "displayName": "Group 1 Tenant 2", + "details": { + "version": 1, + "updatedTime": "2018-01-01T00:00:00.00Z", + "updatedBy": "Test", + "parent": { + "id": "/providers/Microsoft.Management/managementGroups/20000000-0000-0000-0000-000000000001", + "name": "20000000-0000-0000-0000-000000000001", + "displayName": "Parent display name" + }, + "path": [ + { + "name": "20000000-0000-0000-0000-000000000000", + "displayName": "Grandparent display name" + }, + { + "name": "20000000-0000-0000-0000-000000000001", + "displayName": "Parent display name" + } + ] + } + } + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/GetSubscriptionFromManagementGroup.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/GetSubscriptionFromManagementGroup.json new file mode 100644 index 000000000000..1e62ffcd9c5b --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/GetSubscriptionFromManagementGroup.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2021-04-01", + "groupId": "Group", + "subscriptionId": "728bcbe4-8d56-4510-86c2-4921b8beefbc", + "Cache-Control": "no-cache" + }, + "responses": { + "200": { + "body": { + "name": "728bcbe4-8d56-4510-86c2-4921b8beefbc", + "id": " /providers/Microsoft.Management/managementGroups/Group/subscriptions/728bcbe4-8d56-4510-86c2-4921b8beefbc", + "type": "Microsoft.Management/managementGroups/subscriptions", + "properties": { + "displayName": "Group", + "parent": { + "id": "/providers/Microsoft.Management/managementGroups/Group" + }, + "state": "Active", + "tenant": "e751ac82-623b-4913-8d74-22637c832373" + } + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/ListHierarchySettings.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/ListHierarchySettings.json new file mode 100644 index 000000000000..3d56530cb7d1 --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/ListHierarchySettings.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2021-04-01", + "groupId": "root" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Management/managementGroups/root/settings/default", + "type": "Microsoft.Management/managementGroups/settings", + "name": "root", + "properties": { + "tenantId": "20000000-0000-0000-0000-000000000000", + "defaultManagementGroup": "/providers/Microsoft.Management/managementGroups/DefaultGroup", + "requireAuthorizationForGroupCreation": true + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/ListManagementGroups.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/ListManagementGroups.json new file mode 100644 index 000000000000..189cb209d9dc --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/ListManagementGroups.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2021-04-01", + "Cache-Control": "no-cache" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Management/managementGroups/20000000-0001-0000-0000-000000000000", + "type": "Microsoft.Management/managementGroups", + "name": "20000000-0001-0000-0000-000000000000", + "properties": { + "tenantId": "20000000-0000-0000-0000-000000000000", + "displayName": "Group 1 Tenant 2" + } + }, + { + "id": "/providers/Microsoft.Management/managementGroups/20000000-0004-0000-0000-000000000000", + "type": "Microsoft.Management/managementGroups", + "name": "20000000-0004-0000-0000-000000000000", + "properties": { + "tenantId": "20000000-0000-0000-0000-000000000000", + "displayName": "Group 4 Tenant 2" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/PatchHierarchySettings.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/PatchHierarchySettings.json new file mode 100644 index 000000000000..adce49ba8880 --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/PatchHierarchySettings.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2021-04-01", + "groupId": "root", + "CreateTenantSettingsRequest": { + "properties": { + "defaultManagementGroup": "/providers/Microsoft.Management/managementGroups/DefaultGroup", + "requireAuthorizationForGroupCreation": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Management/managementGroups/root/settings/default", + "type": "Microsoft.Management/managementGroups/settings", + "name": "root", + "properties": { + "tenantId": "20000000-0000-0000-0000-000000000000", + "defaultManagementGroup": "/providers/Microsoft.Management/managementGroups/DefaultGroup", + "requireAuthorizationForGroupCreation": true + } + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/PatchManagementGroup.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/PatchManagementGroup.json new file mode 100644 index 000000000000..e7e3c57c8d45 --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/PatchManagementGroup.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2021-04-01", + "groupId": "ChildGroup", + "patchGroupRequest": { + "displayName": "AlternateDisplayName", + "parentGroupId": "/providers/Microsoft.Management/managementGroups/AlternateRootGroup" + }, + "Cache-Control": "no-cache" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Management/managementGroups/ChildGroup", + "type": "Microsoft.Management/managementGroups", + "name": "ChildGroup", + "properties": { + "tenantId": "20000000-0000-0000-0000-000000000000", + "displayName": "AlternateDisplayName", + "details": { + "version": 2, + "updatedTime": "2018-01-25T02:46:59.0545645Z", + "updatedBy": "bd490e30-04cb-433e-b8c8-6066959a8bab", + "parent": { + "id": "/providers/Microsoft.Management/managementGroups/AlternateRootGroup", + "name": "AlternateRootGroup", + "displayName": "AlternateRootGroup" + } + } + } + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/PutHierarchySettings.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/PutHierarchySettings.json new file mode 100644 index 000000000000..adce49ba8880 --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/PutHierarchySettings.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2021-04-01", + "groupId": "root", + "CreateTenantSettingsRequest": { + "properties": { + "defaultManagementGroup": "/providers/Microsoft.Management/managementGroups/DefaultGroup", + "requireAuthorizationForGroupCreation": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Management/managementGroups/root/settings/default", + "type": "Microsoft.Management/managementGroups/settings", + "name": "root", + "properties": { + "tenantId": "20000000-0000-0000-0000-000000000000", + "defaultManagementGroup": "/providers/Microsoft.Management/managementGroups/DefaultGroup", + "requireAuthorizationForGroupCreation": true + } + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/PutManagementGroup.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/PutManagementGroup.json new file mode 100644 index 000000000000..8e8df63375df --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/PutManagementGroup.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2021-04-01", + "groupId": "ChildGroup", + "createManagementGroupRequest": { + "properties": { + "displayName": "ChildGroup", + "details": { + "parent": { + "id": "/providers/Microsoft.Management/managementGroups/RootGroup" + } + } + } + }, + "Cache-Control": "no-cache" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Management/managementGroups/ChildGroup", + "type": "Microsoft.Management/managementGroups", + "name": "ChildGroup", + "properties": { + "tenantId": "20000000-0000-0000-0000-000000000000", + "displayName": "ChildGroup", + "details": { + "version": 1, + "updatedTime": "2018-01-01T00:00:00.00Z", + "updatedBy": "16b8ef21-5c9f-420c-bcc9-e4f8c9f30b4b", + "parent": { + "id": "/providers/Microsoft.Management/managementGroups/RootGroup", + "name": "RootGroup", + "displayName": "RootGroup" + } + } + } + } + }, + "202": { + "body": { + "id": "/providers/Microsoft.Management/managementGroups/ChildGroup", + "type": "Microsoft.Management/managementGroups", + "name": "ChildGroup", + "status": "NotStarted" + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/RemoveManagementGroupSubscription.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/RemoveManagementGroupSubscription.json new file mode 100644 index 000000000000..04c4b4c8dc88 --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/RemoveManagementGroupSubscription.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2021-04-01", + "groupId": "Group", + "subscriptionId": "728bcbe4-8d56-4510-86c2-4921b8beefbc", + "Cache-Control": "no-cache" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/StartTenantBackfillRequest.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/StartTenantBackfillRequest.json new file mode 100644 index 000000000000..f91d0a36e18f --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/StartTenantBackfillRequest.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-04-01", + "startTenantBackfillRequest": {} + }, + "responses": { + "200": { + "body": { + "tenantId": "20000000-0000-0000-0000-000000000000", + "status": "Started" + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/TenantBackfillStatusRequest.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/TenantBackfillStatusRequest.json new file mode 100644 index 000000000000..e7b3132ee405 --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/examples/TenantBackfillStatusRequest.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-04-01", + "tenantBackfillStatusRequest": {} + }, + "responses": { + "200": { + "body": { + "tenantId": "20000000-0000-0000-0000-000000000000", + "status": "Started" + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/management.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/management.json new file mode 100644 index 000000000000..dac391a711a6 --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2021-04-01/management.json @@ -0,0 +1,2123 @@ +{ + "swagger": "2.0", + "host": "management.azure.com", + "info": { + "version": "2021-04-01", + "title": "Management Groups API", + "description": "The Azure Management Groups API enables consolidation of multiple \nsubscriptions/resources into an organizational hierarchy and centrally \nmanage access control, policies, alerting and reporting for those resources.\n" + }, + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "tags": [ + { + "name": "ManagementGroups", + "description": "A Management Group is a customer defined scope (grouping mechanism) that \nprovides access control (authorization), policy management and reporting. \nManagement Groups are organized in a strictly tree-based hierarchy.\n" + }, + { + "name": "Operations", + "description": "Management operations supported by the Microsoft.Management resource provider.\n" + }, + { + "name": "Entities", + "description": "A list of entities that belong to the Management Groups.\n" + } + ], + "paths": { + "/providers/Microsoft.Management/managementGroups": { + "get": { + "tags": [ + "ManagementGroups" + ], + "operationId": "ManagementGroups_List", + "description": "List management groups for the authenticated user.\n", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/CacheControlHeader" + }, + { + "$ref": "#/parameters/SkipTokenParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ManagementGroupListResult" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "ListManagementGroups": { + "$ref": "./examples/ListManagementGroups.json" + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}": { + "get": { + "tags": [ + "ManagementGroups" + ], + "operationId": "ManagementGroups_Get", + "description": "Get the details of the management group.\n", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ExpandParameter" + }, + { + "$ref": "#/parameters/RecurseParameter" + }, + { + "$ref": "#/parameters/FilterParameter" + }, + { + "$ref": "#/parameters/CacheControlHeader" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ManagementGroup" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "GetManagementGroup": { + "$ref": "./examples/GetManagementGroup.json" + }, + "GetManagementGroupWithPath": { + "$ref": "./examples/GetManagementGroupWithPath.json" + }, + "GetManagementGroupWithAncestors": { + "$ref": "./examples/GetManagementGroupWithAncestors.json" + }, + "GetManagementGroupWithExpand": { + "$ref": "./examples/GetManagementGroupWithExpand.json" + }, + "GetManagementGroupsWithExpandAndRecurse": { + "$ref": "./examples/GetManagementGroupWithExpandAndRecurse.json" + } + } + }, + "put": { + "tags": [ + "ManagementGroups" + ], + "operationId": "ManagementGroups_CreateOrUpdate", + "description": "Create or update a management group.\nIf a management group is already created and a subsequent create request is issued with different properties, the management group properties will be updated.\n", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/CacheControlHeader" + }, + { + "$ref": "#/parameters/CreateManagementGroupRequestParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ManagementGroup" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/AzureAsyncOperationResults" + }, + "headers": { + "Location": { + "description": "URL for determining when an operation has completed. Send a GET request to the URL in Location header.\nThe URI should return a 202 until the operation reaches a terminal state and 200 once it reaches a terminal state.\n\nFor more info: https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/Addendum.md#202-accepted-and-location-headers", + "type": "string" + }, + "Azure-AsyncOperation": { + "description": "URL for checking the ongoing status of the operation.\nTo get the status of the asynchronous operation, send a GET request to the URL in Azure-AsyncOperation header value.\n\nFor more info: https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/Addendum.md#asynchronous-operations", + "type": "string" + } + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "PutManagementGroup": { + "$ref": "./examples/PutManagementGroup.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "ManagementGroups" + ], + "operationId": "ManagementGroups_Update", + "description": "Update a management group.\n", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/CacheControlHeader" + }, + { + "$ref": "#/parameters/PatchGroupRequestParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ManagementGroup" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "PatchManagementGroup": { + "$ref": "./examples/PatchManagementGroup.json" + } + } + }, + "delete": { + "tags": [ + "ManagementGroups" + ], + "operationId": "ManagementGroups_Delete", + "description": "Delete management group.\nIf a management group contains child resources, the request will fail.\n", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/CacheControlHeader" + } + ], + "responses": { + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/AzureAsyncOperationResults" + }, + "headers": { + "Location": { + "description": "URL for determining when an operation has completed. Send a GET request to the URL in Location header.\nThe URI should return a 202 until the operation reaches a terminal state and 200 once it reaches a terminal state.\n\nFor more info: https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/Addendum.md#202-accepted-and-location-headers", + "type": "string" + }, + "Azure-AsyncOperation": { + "description": "URL for checking the ongoing status of the operation.\nTo get the status of the asynchronous operation, send a GET request to the URL in Azure-AsyncOperation header value.\n\nFor more info: https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/Addendum.md#asynchronous-operations", + "type": "string" + } + } + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "DeleteManagementGroup": { + "$ref": "./examples/DeleteManagementGroup.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/descendants": { + "get": { + "tags": [ + "ManagementGroups" + ], + "operationId": "ManagementGroups_GetDescendants", + "description": "List all entities that descend from a management group.\n", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SkipTokenParameter" + }, + { + "$ref": "#/parameters/TopParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DescendantListResult" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetDescendants": { + "$ref": "./examples/GetDescendants.json" + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/subscriptions/{subscriptionId}": { + "put": { + "tags": [ + "ManagementGroups" + ], + "operationId": "ManagementGroupSubscriptions_Create", + "description": "Associates existing subscription with the management group.\n", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/CacheControlHeader" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SubscriptionUnderManagementGroup" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "AddSubscriptionToManagementGroup": { + "$ref": "./examples/AddManagementGroupSubscription.json" + } + } + }, + "delete": { + "tags": [ + "ManagementGroups" + ], + "operationId": "ManagementGroupSubscriptions_Delete", + "description": "De-associates subscription from the management group.\n", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/CacheControlHeader" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "DeleteSubscriptionFromManagementGroup": { + "$ref": "./examples/RemoveManagementGroupSubscription.json" + } + } + }, + "get": { + "tags": [ + "ManagementGroups" + ], + "operationId": "ManagementGroupSubscriptions_GetSubscription", + "description": "Retrieves details about given subscription which is associated with the management group.\n", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/CacheControlHeader" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SubscriptionUnderManagementGroup" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "GetSubscriptionFromManagementGroup": { + "$ref": "./examples/GetSubscriptionFromManagementGroup.json" + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/subscriptions": { + "get": { + "tags": [ + "ManagementGroups" + ], + "operationId": "ManagementGroupSubscriptions_GetSubscriptionsUnderManagementGroup", + "description": "Retrieves details about all subscriptions which are associated with the management group.\n", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SkipTokenParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ListSubscriptionUnderManagementGroup" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetAllSubscriptionsFromManagementGroup": { + "$ref": "./examples/GetAllSubscriptionsFromManagementGroup.json" + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/settings": { + "get": { + "tags": [ + "ManagementGroups" + ], + "operationId": "HierarchySettings_List", + "description": "Gets all the hierarchy settings defined at the Management Group level. Settings can only be set on the root Management Group of the hierarchy.\n", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/HierarchySettingsList" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ListGroupSettings": { + "$ref": "./examples/ListHierarchySettings.json" + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/settings/default": { + "get": { + "tags": [ + "ManagementGroups" + ], + "operationId": "HierarchySettings_Get", + "description": "Gets the hierarchy settings defined at the Management Group level. Settings can only be set on the root Management Group of the hierarchy.\n", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/HierarchySettings" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "GetGroupSettings": { + "$ref": "./examples/GetHierarchySettings.json" + } + } + }, + "put": { + "tags": [ + "ManagementGroups" + ], + "operationId": "HierarchySettings_CreateOrUpdate", + "description": "Creates or updates the hierarchy settings defined at the Management Group level.\n", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/CreateOrUpdateManagementGroupSettingsRequestParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/HierarchySettings" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "GetGroupSettings": { + "$ref": "./examples/PutHierarchySettings.json" + } + } + }, + "patch": { + "tags": [ + "ManagementGroups" + ], + "operationId": "HierarchySettings_Update", + "description": "Updates the hierarchy settings defined at the Management Group level.\n", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/CreateOrUpdateManagementGroupSettingsRequestParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/HierarchySettings" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "GetGroupSettings": { + "$ref": "./examples/PatchHierarchySettings.json" + } + } + }, + "delete": { + "tags": [ + "ManagementGroups" + ], + "operationId": "HierarchySettings_Delete", + "description": "Deletes the hierarchy settings defined at the Management Group level.\n", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "GetGroupSettings": { + "$ref": "./examples/DeleteHierarchySettings.json" + } + } + } + }, + "/providers/Microsoft.Management/operations": { + "get": { + "tags": [ + "Operations" + ], + "operationId": "Operations_List", + "description": "Lists all of the available Management REST API operations.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Management/checkNameAvailability": { + "post": { + "tags": [ + "CheckNameAvailability" + ], + "operationId": "CheckNameAvailability", + "description": "Checks if the specified management group name is valid and unique", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/CheckNameAvailabilityParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "CheckManagementGroupNameAvailability": { + "$ref": "./examples/CheckManagementGroupNameAvailability.json" + } + } + } + }, + "/providers/Microsoft.Management/getEntities": { + "post": { + "tags": [ + "Entities" + ], + "operationId": "Entities_List", + "description": "List all entities (Management Groups, Subscriptions, etc.) for the authenticated user.\n", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SkipTokenParameter" + }, + { + "$ref": "#/parameters/SkipParameter" + }, + { + "$ref": "#/parameters/TopParameter" + }, + { + "$ref": "#/parameters/SelectParameter" + }, + { + "$ref": "#/parameters/SearchParameter" + }, + { + "$ref": "#/parameters/EntityFilterParameter" + }, + { + "$ref": "#/parameters/EntityViewParameter" + }, + { + "$ref": "#/parameters/GroupNameParameter" + }, + { + "$ref": "#/parameters/CacheControlHeader" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/EntityListResult" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetEntities": { + "$ref": "./examples/GetEntities.json" + } + } + } + }, + "/providers/Microsoft.Management/startTenantBackfill": { + "post": { + "tags": [ + "TenantBackfill" + ], + "operationId": "StartTenantBackfill", + "description": "Starts backfilling subscriptions for the Tenant.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/TenantBackfillStatusResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "StartTenantBackfill": { + "$ref": "./examples/StartTenantBackfillRequest.json" + } + } + } + }, + "/providers/Microsoft.Management/tenantBackfillStatus": { + "post": { + "tags": [ + "TenantBackfill" + ], + "operationId": "TenantBackfillStatus", + "description": "Gets tenant backfill status", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/TenantBackfillStatusResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "TenantBackfillStatus": { + "$ref": "./examples/TenantBackfillStatusRequest.json" + } + } + } + } + }, + "definitions": { + "ErrorResponse": { + "description": "The error object.", + "properties": { + "error": { + "title": "Error", + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "ErrorDetails": { + "description": "The details of the error.", + "properties": { + "code": { + "description": "One of a server-defined set of error codes.", + "type": "string" + }, + "message": { + "description": "A human-readable representation of the error.", + "type": "string" + }, + "details": { + "description": "A human-readable representation of the error's details.", + "type": "string" + } + } + }, + "Operation": { + "description": "Operation supported by the Microsoft.Management resource provider.", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}.", + "type": "string", + "readOnly": true + }, + "display": { + "title": "Display", + "$ref": "#/definitions/OperationDisplayProperties" + } + } + }, + "OperationDisplayProperties": { + "description": "The object that represents the operation.", + "properties": { + "provider": { + "description": "The name of the provider.", + "type": "string", + "readOnly": true + }, + "resource": { + "description": "The resource on which the operation is performed.", + "type": "string", + "readOnly": true + }, + "operation": { + "description": "The operation that can be performed.", + "type": "string", + "readOnly": true + }, + "description": { + "description": "Operation description.", + "type": "string", + "readOnly": true + } + } + }, + "OperationListResult": { + "description": "Describes the result of the request to list Microsoft.Management operations.", + "properties": { + "value": { + "description": "List of operations supported by the Microsoft.Management 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 + } + } + }, + "CheckNameAvailabilityResult": { + "description": "Describes the result of the request to check management group name availability.", + "properties": { + "nameAvailable": { + "description": "Required. True indicates name is valid and available. False indicates the name is invalid, unavailable, or both.", + "type": "boolean", + "readOnly": true + }, + "reason": { + "description": "Required if nameAvailable == false. 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.", + "type": "string", + "enum": [ + "Invalid", + "AlreadyExists" + ], + "x-ms-enum": { + "name": "Reason", + "modelAsString": false, + "values": [ + { + "value": "Invalid" + }, + { + "value": "AlreadyExists" + } + ] + }, + "readOnly": true + }, + "message": { + "description": "Required if nameAvailable == false. Localized. 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.", + "type": "string", + "readOnly": true + } + } + }, + "TenantBackfillStatusResult": { + "description": "The tenant backfill status", + "properties": { + "tenantId": { + "type": "string", + "description": "The AAD Tenant ID associated with the management group. For example, 00000000-0000-0000-0000-000000000000", + "readOnly": true + }, + "status": { + "description": "The status of the Tenant Backfill", + "type": "string", + "enum": [ + "NotStarted", + "NotStartedButGroupsExist", + "Started", + "Failed", + "Cancelled", + "Completed" + ], + "x-ms-enum": { + "name": "Status", + "modelAsString": false, + "values": [ + { + "value": "NotStarted" + }, + { + "value": "NotStartedButGroupsExist" + }, + { + "value": "Started" + }, + { + "value": "Failed" + }, + { + "value": "Cancelled" + }, + { + "value": "Completed" + } + ] + }, + "readOnly": true + } + } + }, + "ManagementGroupListResult": { + "description": "Describes the result of the request to list management groups.", + "properties": { + "value": { + "description": "The list of management groups.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagementGroupInfo" + } + }, + "nextLink": { + "description": "The URL to use for getting the next set of results.", + "type": "string", + "readOnly": true + } + } + }, + "ManagementGroupInfo": { + "description": "The management group resource.", + "properties": { + "id": { + "type": "string", + "description": "The fully qualified ID for the management group. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000", + "readOnly": true + }, + "type": { + "type": "string", + "description": "The type of the resource. For example, Microsoft.Management/managementGroups", + "readOnly": true + }, + "name": { + "type": "string", + "description": "The name of the management group. For example, 00000000-0000-0000-0000-000000000000", + "readOnly": true + }, + "properties": { + "x-ms-client-flatten": true, + "title": "Properties", + "$ref": "#/definitions/ManagementGroupInfoProperties" + } + } + }, + "ManagementGroupInfoProperties": { + "description": "The generic properties of a management group.", + "type": "object", + "properties": { + "tenantId": { + "type": "string", + "description": "The AAD Tenant ID associated with the management group. For example, 00000000-0000-0000-0000-000000000000" + }, + "displayName": { + "type": "string", + "description": "The friendly name of the management group." + } + } + }, + "ListSubscriptionUnderManagementGroup": { + "description": "The details of all subscriptions under management group.", + "properties": { + "value": { + "description": "The list of subscriptions.", + "type": "array", + "items": { + "$ref": "#/definitions/SubscriptionUnderManagementGroup" + } + }, + "nextLink": { + "description": "The URL to use for getting the next set of results.", + "type": "string", + "readOnly": true + } + } + }, + "SubscriptionUnderManagementGroup": { + "description": "The details of subscription under management group.", + "x-ms-azure-resource": true, + "properties": { + "id": { + "type": "string", + "description": "The fully qualified ID for the subscription. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000/subscriptions/0000000-0000-0000-0000-000000000001", + "readOnly": true + }, + "type": { + "type": "string", + "description": "The type of the resource. For example, Microsoft.Management/managementGroups/subscriptions", + "readOnly": true + }, + "name": { + "type": "string", + "description": "The stringified id of the subscription. For example, 00000000-0000-0000-0000-000000000000", + "readOnly": true + }, + "properties": { + "title": "Properties", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SubscriptionUnderManagementGroupProperties" + } + } + }, + "SubscriptionUnderManagementGroupProperties": { + "description": "The generic properties of subscription under a management group.", + "type": "object", + "properties": { + "tenant": { + "type": "string", + "description": "The AAD Tenant ID associated with the subscription. For example, 00000000-0000-0000-0000-000000000000" + }, + "displayName": { + "type": "string", + "description": "The friendly name of the subscription." + }, + "parent": { + "title": "Parent", + "$ref": "#/definitions/DescendantParentGroupInfo", + "x-nullable": true + }, + "state": { + "type": "string", + "description": "The state of the subscription." + } + } + }, + "ManagementGroup": { + "description": "The management group details.", + "x-ms-azure-resource": true, + "properties": { + "id": { + "type": "string", + "description": "The fully qualified ID for the management group. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000", + "readOnly": true + }, + "type": { + "type": "string", + "description": "The type of the resource. For example, Microsoft.Management/managementGroups", + "readOnly": true + }, + "name": { + "type": "string", + "description": "The name of the management group. For example, 00000000-0000-0000-0000-000000000000", + "readOnly": true + }, + "properties": { + "title": "Properties", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ManagementGroupProperties" + } + } + }, + "ManagementGroupProperties": { + "description": "The generic properties of a management group.", + "type": "object", + "properties": { + "tenantId": { + "type": "string", + "description": "The AAD Tenant ID associated with the management group. For example, 00000000-0000-0000-0000-000000000000" + }, + "displayName": { + "type": "string", + "description": "The friendly name of the management group." + }, + "details": { + "title": "Details", + "$ref": "#/definitions/ManagementGroupDetails" + }, + "children": { + "description": "The list of children.", + "x-nullable": true, + "type": "array", + "items": { + "$ref": "#/definitions/ManagementGroupChildInfo" + } + } + } + }, + "ManagementGroupDetails": { + "description": "The details of a management group.", + "type": "object", + "properties": { + "version": { + "type": "number", + "format": "int32", + "description": "The version number of the object." + }, + "updatedTime": { + "type": "string", + "format": "date-time", + "description": "The date and time when this object was last updated." + }, + "updatedBy": { + "type": "string", + "description": "The identity of the principal or process that updated the object." + }, + "parent": { + "title": "Parent", + "$ref": "#/definitions/ParentGroupInfo" + }, + "path": { + "description": "The path from the root to the current group.", + "x-nullable": true, + "type": "array", + "items": { + "$ref": "#/definitions/ManagementGroupPathElement" + } + }, + "managementGroupAncestors": { + "description": "The ancestors of the management group.", + "x-nullable": true, + "type": "array", + "items": { + "type": "string" + } + }, + "managementGroupAncestorsChain": { + "description": "The ancestors of the management group displayed in reversed order, from immediate parent to the root.", + "x-nullable": true, + "type": "array", + "items": { + "$ref": "#/definitions/ManagementGroupPathElement" + } + } + } + }, + "ManagementGroupChildInfo": { + "description": "The child information of a management group.", + "properties": { + "type": { + "title": "The type of child resource.", + "$ref": "#/definitions/ManagementGroupChildType", + "description": "The fully qualified resource type which includes provider namespace (e.g. Microsoft.Management/managementGroups)" + }, + "id": { + "type": "string", + "description": "The fully qualified ID for the child resource (management group or subscription). For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000" + }, + "name": { + "type": "string", + "description": "The name of the child entity." + }, + "displayName": { + "type": "string", + "description": "The friendly name of the child resource." + }, + "children": { + "description": "The list of children.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagementGroupChildInfo" + } + } + } + }, + "ManagementGroupPathElement": { + "description": "A path element of a management group ancestors.", + "properties": { + "name": { + "type": "string", + "description": "The name of the group." + }, + "displayName": { + "type": "string", + "description": "The friendly name of the group." + } + } + }, + "ParentGroupInfo": { + "description": "(Optional) The ID of the parent management group.", + "properties": { + "id": { + "type": "string", + "description": "The fully qualified ID for the parent management group. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000" + }, + "name": { + "type": "string", + "description": "The name of the parent management group" + }, + "displayName": { + "type": "string", + "description": "The friendly name of the parent management group." + } + } + }, + "ManagementGroupChildType": { + "type": "string", + "enum": [ + "Microsoft.Management/managementGroups", + "/subscriptions" + ], + "description": "The type of child resource." + }, + "OperationResults": { + "description": "The results of an asynchronous operation.", + "properties": { + "id": { + "type": "string", + "description": "The fully qualified ID for the management group. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000", + "readOnly": true + }, + "type": { + "type": "string", + "description": "The type of the resource. For example, Microsoft.Management/managementGroups", + "readOnly": true + }, + "name": { + "type": "string", + "description": "The name of the management group. For example, 00000000-0000-0000-0000-000000000000", + "readOnly": true + }, + "properties": { + "title": "Properties", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ManagementGroupInfoProperties" + } + } + }, + "AzureAsyncOperationResults": { + "description": "The results of Azure-AsyncOperation.", + "properties": { + "id": { + "type": "string", + "description": "The fully qualified ID for the management group. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000", + "readOnly": true + }, + "type": { + "type": "string", + "description": "The type of the resource. For example, Microsoft.Management/managementGroups", + "readOnly": true + }, + "name": { + "type": "string", + "description": "The name of the management group. For example, 00000000-0000-0000-0000-000000000000", + "readOnly": true + }, + "status": { + "type": "string", + "description": "The current status of the asynchronous operation performed . For example, Running, Succeeded, Failed", + "readOnly": true + }, + "properties": { + "title": "Properties", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ManagementGroupInfoProperties" + } + } + }, + "HierarchySettings": { + "description": "Settings defined at the Management Group scope.", + "x-ms-azure-resource": true, + "properties": { + "id": { + "type": "string", + "description": "The fully qualified ID for the settings object. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000/settings/default.", + "readOnly": true + }, + "type": { + "type": "string", + "description": "The type of the resource. For example, Microsoft.Management/managementGroups/settings.", + "readOnly": true + }, + "name": { + "type": "string", + "description": "The name of the object. In this case, default.", + "readOnly": true + }, + "properties": { + "title": "Properties", + "x-ms-client-flatten": true, + "$ref": "#/definitions/HierarchySettingsProperties" + } + } + }, + "HierarchySettingsProperties": { + "description": "The generic properties of hierarchy settings.", + "type": "object", + "properties": { + "tenantId": { + "type": "string", + "description": "The AAD Tenant ID associated with the hierarchy settings. For example, 00000000-0000-0000-0000-000000000000" + }, + "requireAuthorizationForGroupCreation": { + "type": "boolean", + "description": "Indicates whether RBAC access is required upon group creation under the root Management Group. If set to true, user will require Microsoft.Management/managementGroups/write action on the root Management Group scope in order to create new Groups directly under the root. This will prevent new users from creating new Management Groups, unless they are given access." + }, + "defaultManagementGroup": { + "type": "string", + "description": "Settings that sets the default Management Group under which new subscriptions get added in this tenant. For example, /providers/Microsoft.Management/managementGroups/defaultGroup" + } + } + }, + "HierarchySettingsList": { + "description": "Lists all hierarchy settings.", + "properties": { + "value": { + "description": "The list of hierarchy settings.", + "type": "array", + "items": { + "$ref": "#/definitions/HierarchySettingsInfo" + } + }, + "nextLink": { + "description": "The URL to use for getting the next set of results.", + "type": "string", + "readOnly": true + } + } + }, + "HierarchySettingsInfo": { + "description": "The hierarchy settings resource.", + "properties": { + "id": { + "type": "string", + "description": "The fully qualified ID for the settings object. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000/settings/default.", + "readOnly": true + }, + "type": { + "type": "string", + "description": "The type of the resource. For example, Microsoft.Management/managementGroups/settings.", + "readOnly": true + }, + "name": { + "type": "string", + "description": "The name of the object. In this case, default.", + "readOnly": true + }, + "properties": { + "x-ms-client-flatten": true, + "title": "Properties", + "$ref": "#/definitions/HierarchySettingsProperties" + } + } + }, + "CreateOrUpdateSettingsRequest": { + "description": "Parameters for creating or updating Management Group settings", + "type": "object", + "x-ms-azure-resource": true, + "properties": { + "properties": { + "title": "Properties", + "x-ms-client-flatten": true, + "$ref": "#/definitions/CreateOrUpdateSettingsProperties" + } + } + }, + "CreateOrUpdateSettingsProperties": { + "description": "The properties of the request to create or update Management Group settings", + "type": "object", + "x-ms-azure-resource": true, + "properties": { + "requireAuthorizationForGroupCreation": { + "type": "boolean", + "description": "Indicates whether RBAC access is required upon group creation under the root Management Group. If set to true, user will require Microsoft.Management/managementGroups/write action on the root Management Group scope in order to create new Groups directly under the root. This will prevent new users from creating new Management Groups, unless they are given access." + }, + "defaultManagementGroup": { + "type": "string", + "description": "Settings that sets the default Management Group under which new subscriptions get added in this tenant. For example, /providers/Microsoft.Management/managementGroups/defaultGroup" + } + } + }, + "DescendantListResult": { + "description": "Describes the result of the request to view descendants.", + "properties": { + "value": { + "description": "The list of descendants.", + "type": "array", + "items": { + "$ref": "#/definitions/DescendantInfo" + } + }, + "nextLink": { + "description": "The URL to use for getting the next set of results.", + "type": "string", + "readOnly": true + } + } + }, + "DescendantInfo": { + "description": "The descendant.", + "properties": { + "id": { + "type": "string", + "description": "The fully qualified ID for the descendant. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000 or /subscriptions/0000000-0000-0000-0000-000000000000", + "readOnly": true, + "x-nullable": true + }, + "type": { + "type": "string", + "description": "The type of the resource. For example, Microsoft.Management/managementGroups or /subscriptions", + "readOnly": true, + "x-nullable": true + }, + "name": { + "type": "string", + "description": "The name of the descendant. For example, 00000000-0000-0000-0000-000000000000", + "readOnly": true + }, + "properties": { + "title": "Properties", + "x-ms-client-flatten": true, + "x-nullable": true, + "$ref": "#/definitions/DescendantInfoProperties" + } + } + }, + "DescendantInfoProperties": { + "description": "The generic properties of an descendant.", + "type": "object", + "properties": { + "displayName": { + "type": "string", + "description": "The friendly name of the management group.", + "x-nullable": true + }, + "parent": { + "title": "Parent", + "$ref": "#/definitions/DescendantParentGroupInfo", + "x-nullable": true + } + } + }, + "DescendantParentGroupInfo": { + "description": "The ID of the parent management group.", + "properties": { + "id": { + "type": "string", + "description": "The fully qualified ID for the parent management group. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000" + } + } + }, + "EntityListResult": { + "description": "Describes the result of the request to view entities.", + "properties": { + "value": { + "description": "The list of entities.", + "type": "array", + "items": { + "$ref": "#/definitions/EntityInfo" + } + }, + "count": { + "description": "Total count of records that match the filter", + "type": "integer", + "readOnly": true + }, + "nextLink": { + "description": "The URL to use for getting the next set of results.", + "type": "string", + "readOnly": true + } + } + }, + "EntityInfo": { + "description": "The entity.", + "properties": { + "id": { + "type": "string", + "description": "The fully qualified ID for the entity. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000", + "readOnly": true, + "x-nullable": true + }, + "type": { + "type": "string", + "description": "The type of the resource. For example, Microsoft.Management/managementGroups", + "readOnly": true, + "x-nullable": true + }, + "name": { + "type": "string", + "description": "The name of the entity. For example, 00000000-0000-0000-0000-000000000000", + "readOnly": true + }, + "properties": { + "title": "Properties", + "x-ms-client-flatten": true, + "x-nullable": true, + "$ref": "#/definitions/EntityInfoProperties" + } + } + }, + "EntityInfoProperties": { + "description": "The generic properties of an entity.", + "type": "object", + "properties": { + "tenantId": { + "type": "string", + "description": "The AAD Tenant ID associated with the entity. For example, 00000000-0000-0000-0000-000000000000", + "x-nullable": true + }, + "displayName": { + "type": "string", + "description": "The friendly name of the management group.", + "x-nullable": true + }, + "parent": { + "title": "Parent", + "$ref": "#/definitions/EntityParentGroupInfo", + "x-nullable": true + }, + "permissions": { + "title": "Permissions", + "x-nullable": true, + "$ref": "#/definitions/Permissions" + }, + "inheritedPermissions": { + "title": "Inherited Permissions", + "x-nullable": true, + "$ref": "#/definitions/Permissions" + }, + "numberOfDescendants": { + "title": "Number of Descendants", + "type": "integer", + "x-nullable": true + }, + "numberOfChildren": { + "title": "Number of Children", + "description": "Number of children is the number of Groups and Subscriptions that are exactly one level underneath the current Group.", + "type": "integer", + "x-nullable": true + }, + "numberOfChildGroups": { + "title": "Number of Child Groups", + "description": "Number of children is the number of Groups that are exactly one level underneath the current Group.", + "type": "integer", + "x-nullable": true + }, + "parentDisplayNameChain": { + "type": "array", + "description": "The parent display name chain from the root group to the immediate parent", + "x-nullable": true, + "items": { + "type": "string" + } + }, + "parentNameChain": { + "type": "array", + "description": "The parent name chain from the root group to the immediate parent", + "x-nullable": true, + "items": { + "type": "string" + } + } + } + }, + "EntityParentGroupInfo": { + "description": "(Optional) The ID of the parent management group.", + "properties": { + "id": { + "type": "string", + "description": "The fully qualified ID for the parent management group. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000" + } + } + }, + "EntityHierarchyItem": { + "description": "The management group details for the hierarchy view.", + "x-ms-azure-resource": true, + "properties": { + "id": { + "type": "string", + "description": "The fully qualified ID for the management group. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000", + "readOnly": true + }, + "type": { + "type": "string", + "description": "The type of the resource. For example, Microsoft.Management/managementGroups", + "readOnly": true + }, + "name": { + "type": "string", + "description": "The name of the management group. For example, 00000000-0000-0000-0000-000000000000", + "readOnly": true + }, + "properties": { + "title": "Properties", + "x-ms-client-flatten": true, + "$ref": "#/definitions/EntityHierarchyItemProperties" + } + } + }, + "EntityHierarchyItemProperties": { + "description": "The generic properties of a management group.", + "type": "object", + "properties": { + "displayName": { + "type": "string", + "description": "The friendly name of the management group." + }, + "permissions": { + "title": "Permissions", + "$ref": "#/definitions/Permissions" + }, + "children": { + "type": "array", + "description": "The list of children.", + "x-nullable": true, + "items": { + "$ref": "#/definitions/EntityHierarchyItem" + } + } + } + }, + "PatchManagementGroupRequest": { + "description": "Management group patch parameters.", + "type": "object", + "properties": { + "displayName": { + "type": "string", + "description": "The friendly name of the management group.", + "x-nullable": true + }, + "parentGroupId": { + "type": "string", + "description": "(Optional) The fully qualified ID for the parent management group. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000", + "x-nullable": true + } + } + }, + "CreateManagementGroupRequest": { + "description": "Management group creation parameters.", + "type": "object", + "x-ms-azure-resource": true, + "properties": { + "id": { + "type": "string", + "description": "The fully qualified ID for the management group. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000", + "readOnly": true + }, + "type": { + "type": "string", + "description": "The type of the resource. For example, Microsoft.Management/managementGroups", + "readOnly": true + }, + "name": { + "type": "string", + "description": "The name of the management group. For example, 00000000-0000-0000-0000-000000000000" + }, + "properties": { + "title": "Properties", + "x-ms-client-flatten": true, + "$ref": "#/definitions/CreateManagementGroupProperties" + } + } + }, + "CreateManagementGroupProperties": { + "description": "The generic properties of a management group used during creation.", + "type": "object", + "properties": { + "tenantId": { + "type": "string", + "readOnly": true, + "description": "The AAD Tenant ID associated with the management group. For example, 00000000-0000-0000-0000-000000000000" + }, + "displayName": { + "type": "string", + "description": "The friendly name of the management group. If no value is passed then this field will be set to the groupId.", + "x-nullable": true + }, + "details": { + "title": "Details", + "$ref": "#/definitions/CreateManagementGroupDetails" + }, + "children": { + "description": "The list of children.", + "readOnly": true, + "x-nullable": true, + "type": "array", + "items": { + "$ref": "#/definitions/CreateManagementGroupChildInfo" + } + } + } + }, + "CreateManagementGroupDetails": { + "description": "The details of a management group used during creation.", + "type": "object", + "properties": { + "version": { + "type": "number", + "readOnly": true, + "format": "int32", + "description": "The version number of the object." + }, + "updatedTime": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The date and time when this object was last updated." + }, + "updatedBy": { + "type": "string", + "readOnly": true, + "description": "The identity of the principal or process that updated the object." + }, + "parent": { + "title": "Parent", + "$ref": "#/definitions/CreateParentGroupInfo" + } + } + }, + "CreateManagementGroupChildInfo": { + "description": "The child information of a management group used during creation.", + "properties": { + "type": { + "title": "The type of child resource.", + "readOnly": true, + "$ref": "#/definitions/ManagementGroupChildType", + "description": "The fully qualified resource type which includes provider namespace (e.g. Microsoft.Management/managementGroups)" + }, + "id": { + "type": "string", + "readOnly": true, + "description": "The fully qualified ID for the child resource (management group or subscription). For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the child entity." + }, + "displayName": { + "type": "string", + "readOnly": true, + "description": "The friendly name of the child resource." + }, + "children": { + "description": "The list of children.", + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/CreateManagementGroupChildInfo" + } + } + } + }, + "CreateParentGroupInfo": { + "description": "(Optional) The ID of the parent management group used during creation.", + "properties": { + "id": { + "type": "string", + "description": "The fully qualified ID for the parent management group. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the parent management group" + }, + "displayName": { + "type": "string", + "readOnly": true, + "description": "The friendly name of the parent management group." + } + } + }, + "Permissions": { + "type": "string", + "enum": [ + "noaccess", + "view", + "edit", + "delete" + ], + "description": "The users specific permissions to this item." + }, + "CheckNameAvailabilityRequest": { + "description": "Management group name availability check parameters.", + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "the name to check for availability" + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Management/managementGroups" + ], + "x-ms-enum": { + "name": "Type", + "modelAsString": false, + "values": [ + { + "value": "Microsoft.Management/managementGroups" + } + ] + }, + "description": "fully qualified resource type which includes provider namespace" + } + } + } + }, + "parameters": { + "GroupIdParameter": { + "name": "groupId", + "in": "path", + "required": true, + "type": "string", + "description": "Management Group ID.", + "x-ms-parameter-location": "method" + }, + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Subscription ID.", + "x-ms-parameter-location": "method" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Version of the API to be used with the client request. The current version is 2018-01-01-preview." + }, + "ExpandParameter": { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "enum": [ + "children", + "path", + "ancestors" + ], + "x-ms-parameter-location": "method", + "description": "The $expand=children query string parameter allows clients to request inclusion of children in the response payload. $expand=path includes the path from the root group to the current group. $expand=ancestors includes the ancestor Ids of the current group." + }, + "RecurseParameter": { + "name": "$recurse", + "in": "query", + "required": false, + "type": "boolean", + "x-ms-parameter-location": "method", + "description": "The $recurse=true query string parameter allows clients to request inclusion of entire hierarchy in the response payload. Note that $expand=children must be passed up if $recurse is set to true." + }, + "CreateManagementGroupRequestParameter": { + "name": "createManagementGroupRequest", + "in": "body", + "required": true, + "description": "Management group creation parameters.", + "schema": { + "$ref": "#/definitions/CreateManagementGroupRequest" + }, + "x-ms-parameter-location": "method" + }, + "PatchGroupRequestParameter": { + "name": "patchGroupRequest", + "in": "body", + "required": true, + "description": "Management group patch parameters.", + "schema": { + "$ref": "#/definitions/PatchManagementGroupRequest" + }, + "x-ms-parameter-location": "method" + }, + "FilterParameter": { + "name": "$filter", + "in": "query", + "required": false, + "description": "A filter which allows the exclusion of subscriptions from results (i.e. '$filter=children.childType ne Subscription')", + "type": "string", + "x-ms-parameter-location": "method" + }, + "EntityFilterParameter": { + "name": "$filter", + "in": "query", + "required": false, + "description": "The filter parameter allows you to filter on the the name or display name fields. You can check for equality on the name field (e.g. name eq '{entityName}') and you can check for substrings on either the name or display name fields(e.g. contains(name, '{substringToSearch}'), contains(displayName, '{substringToSearch')). Note that the '{entityName}' and '{substringToSearch}' fields are checked case insensitively.", + "type": "string", + "x-ms-parameter-location": "method" + }, + "SelectParameter": { + "name": "$select", + "in": "query", + "required": false, + "description": "This parameter specifies the fields to include in the response. Can include any combination of Name,DisplayName,Type,ParentDisplayNameChain,ParentChain, e.g. '$select=Name,DisplayName,Type,ParentDisplayNameChain,ParentNameChain'. When specified the $select parameter can override select in $skipToken.", + "type": "string", + "x-ms-parameter-location": "method" + }, + "SearchParameter": { + "name": "$search", + "in": "query", + "required": false, + "type": "string", + "enum": [ + "AllowedParents", + "AllowedChildren", + "ParentAndFirstLevelChildren", + "ParentOnly", + "ChildrenOnly" + ], + "x-ms-parameter-location": "method", + "description": "The $search parameter is used in conjunction with the $filter parameter to return three different outputs depending on the parameter passed in. \nWith $search=AllowedParents the API will return the entity info of all groups that the requested entity will be able to reparent to as determined by the user's permissions.\nWith $search=AllowedChildren the API will return the entity info of all entities that can be added as children of the requested entity.\nWith $search=ParentAndFirstLevelChildren the API will return the parent and first level of children that the user has either direct access to or indirect access via one of their descendants.\nWith $search=ParentOnly the API will return only the group if the user has access to at least one of the descendants of the group.\nWith $search=ChildrenOnly the API will return only the first level of children of the group entity info specified in $filter. The user must have direct access to the children entities or one of it's descendants for it to show up in the results." + }, + "GroupNameParameter": { + "name": "groupName", + "in": "query", + "required": false, + "description": "A filter which allows the get entities call to focus on a particular group (i.e. \"$filter=name eq 'groupName'\")", + "type": "string", + "x-ms-parameter-location": "method" + }, + "CreateOrUpdateManagementGroupSettingsRequestParameter": { + "name": "CreateTenantSettingsRequest", + "in": "body", + "required": true, + "description": "Tenant level settings request parameter.", + "schema": { + "$ref": "#/definitions/CreateOrUpdateSettingsRequest" + }, + "x-ms-parameter-location": "method" + }, + "CheckNameAvailabilityParameter": { + "name": "checkNameAvailabilityRequest", + "in": "body", + "required": true, + "description": "Management group name availability check parameters.", + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityRequest" + }, + "x-ms-parameter-location": "method" + }, + "SkipParameter": { + "name": "$skip", + "in": "query", + "required": false, + "type": "integer", + "description": "Number of entities to skip over when retrieving results. Passing this in will override $skipToken.", + "x-ms-parameter-location": "method" + }, + "TopParameter": { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "description": "Number of elements to return when retrieving results. Passing this in will override $skipToken.", + "x-ms-parameter-location": "method" + }, + "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", + "x-ms-parameter-location": "method" + }, + "CacheControlHeader": { + "name": "Cache-Control", + "in": "header", + "default": "no-cache", + "description": "Indicates whether the request should utilize any caches. Populate the header with 'no-cache' value to bypass existing caches.", + "type": "string", + "x-ms-parameter-location": "method" + }, + "EntityViewParameter": { + "name": "$view", + "in": "query", + "required": false, + "type": "string", + "enum": [ + "FullHierarchy", + "GroupsOnly", + "SubscriptionsOnly", + "Audit" + ], + "x-ms-parameter-location": "method", + "description": "The view parameter allows clients to filter the type of data that is returned by the getEntities call." + } + } +} diff --git a/specification/managementgroups/resource-manager/readme.azureresourceschema.md b/specification/managementgroups/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 5361de218b69..000000000000 --- a/specification/managementgroups/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,96 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-management-2020-05-01 - - tag: schema-management-2020-02-01 - - tag: schema-management-2019-11-01 - - tag: schema-management-2018-03-01-preview - - tag: schema-management-2018-01-01-preview - - tag: schema-management-2017-11-01-preview - - tag: schema-management-2017-08-31-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-management-2020-05-01 and azureresourceschema - -``` yaml $(tag) == 'schema-management-2020-05-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Management/stable/2020-05-01/management.json - -``` - -### Tag: schema-management-2020-02-01 and azureresourceschema - -``` yaml $(tag) == 'schema-management-2020-02-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Management/stable/2020-02-01/management.json - -``` - -### Tag: schema-management-2019-11-01 and azureresourceschema - -``` yaml $(tag) == 'schema-management-2019-11-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Management/stable/2019-11-01/management.json - -``` - -### Tag: schema-management-2018-03-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-management-2018-03-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Management/preview/2018-03-01-preview/management.json - -``` - -### Tag: schema-management-2018-01-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-management-2018-01-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Management/preview/2018-01-01-preview/management.json - -``` - -### Tag: schema-management-2017-11-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-management-2017-11-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Management/preview/2017-11-01-preview/management.json - -``` - -### Tag: schema-management-2017-08-31-preview and azureresourceschema - -``` yaml $(tag) == 'schema-management-2017-08-31-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Management/preview/2017-08-31-preview/management.json - -``` diff --git a/specification/managementgroups/resource-manager/readme.go.md b/specification/managementgroups/resource-manager/readme.go.md index 43c0be9f163f..60c68669323e 100644 --- a/specification/managementgroups/resource-manager/readme.go.md +++ b/specification/managementgroups/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION clear-output-folder: true namespace: managementgroups ``` @@ -13,6 +13,8 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-2021-04 + - tag: package-2020-10 - tag: package-2020-05 - tag: package-2020-02 - tag: package-2019-11 @@ -21,6 +23,24 @@ batch: - tag: package-2017-11 - tag: package-2017-08 ``` +### Tag: package-2021-04 and go + +These settings apply only when `--tag=package-2021-04 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag)=='package-2021-04' && $(go) +output-folder: $(go-sdk-folder)/services/resources/mgmt/2021-04-01/$(namespace) +``` + +### Tag: package-2020-10 and go + +These settings apply only when `--tag=package-2020-10 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag)=='package-2020-10' && $(go) +output-folder: $(go-sdk-folder)/services/resources/mgmt/2020-10-01/$(namespace) +``` + ### Tag: package-2020-05 and go These settings apply only when `--tag=package-2020-05 --go` is specified on the command line. diff --git a/specification/managementgroups/resource-manager/readme.md b/specification/managementgroups/resource-manager/readme.md index 2b9de18f0e63..d95f4e63afc7 100644 --- a/specification/managementgroups/resource-manager/readme.md +++ b/specification/managementgroups/resource-manager/readme.md @@ -24,7 +24,23 @@ These are the global settings for the API. ``` yaml openapi-type: arm -tag: package-2020-05 +tag: package-2021-04 +``` + +### Tag: package-2021-04 +These settings apply only when `--tag=package-2021-04` is specified on the command line. + +``` yaml $(tag) == 'package-2021-04' +input-file: + - Microsoft.Management/stable/2021-04-01/management.json +``` + +### Tag: package-2020-10 +These settings apply only when `--tag=package-2020-10` is specified on the command line. + +``` yaml $(tag) == 'package-2020-10' +input-file: + - Microsoft.Management/stable/2020-10-01/management.json ``` ### Tag: package-2020-05 @@ -95,15 +111,13 @@ This is not used by Autorest itself. ``` yaml $(swagger-to-sdk) swagger-to-sdk: - repo: azure-sdk-for-net - - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-java - repo: azure-sdk-for-go - repo: azure-sdk-for-js - repo: azure-sdk-for-node - repo: azure-cli-extensions - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js managementgroups/resource-manager ``` ## C# @@ -176,6 +190,8 @@ batch: - tag: package-2019-11 - tag: package-2020-02 - tag: package-2020-05 + - tag: package-2020-10 + - tag: package-2021-04 ``` ### Tag: package-2017-08 and java @@ -269,8 +285,32 @@ regenerate-manager: true generate-interface: true ``` +### Tag: package-2020-10 and java + +These settings apply only when `--tag=package-2020-10 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2020-10' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.managementgroups.v2020_10_01 + output-folder: $(azure-libraries-for-java-folder)/sdk/managementgroups/mgmt-v2020_10_01 +regenerate-manager: true +generate-interface: true +``` + +### Tag: package-2021-04 and java + +These settings apply only when `--tag=package-2021-04 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2021-04' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.managementgroups.v2021_04_01 + output-folder: $(azure-libraries-for-java-folder)/sdk/managementgroups/mgmt-v2021_04_01 +regenerate-manager: true +generate-interface: true +``` + -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/managementgroups/resource-manager/readme.python.md b/specification/managementgroups/resource-manager/readme.python.md index e4c72147fa71..66b6cad41013 100644 --- a/specification/managementgroups/resource-manager/readme.python.md +++ b/specification/managementgroups/resource-manager/readme.python.md @@ -3,15 +3,6 @@ These settings apply only when `--python` is specified on the command line. Please also specify `--python-sdks-folder=`. -```yaml $(python) && !$(track2) -python: - azure-arm: true - license-header: MICROSOFT_MIT_NO_VERSION - namespace: azure.mgmt.managementgroups - package-name: azure-mgmt-managementgroups - package-version: 2019-05-01 - clear-output-folder: true -``` ```yaml $(python) && $(track2) azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION @@ -20,17 +11,6 @@ package-name: azure-mgmt-managementgroups package-version: 2019-05-01 clear-output-folder: true ``` - -``` yaml $(python) && $(python-mode) == 'update' && !$(track2) -python: - no-namespace-folders: true - output-folder: $(python-sdks-folder)/managementgroups/azure-mgmt-managementgroups/azure/mgmt/managementgroups -``` -``` yaml $(python) && $(python-mode) == 'create' && !$(track2) -python: - basic-setup-py: true - output-folder: $(python-sdks-folder)/managementgroups/azure-mgmt-managementgroups -``` ``` yaml $(python) && $(python-mode) == 'update' && $(track2) no-namespace-folders: true output-folder: $(python-sdks-folder)/managementgroups/azure-mgmt-managementgroups/azure/mgmt/managementgroups diff --git a/specification/managementpartner/resource-manager/readme.azureresourceschema.md b/specification/managementpartner/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 57b48d05aee9..000000000000 --- a/specification/managementpartner/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,24 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-managementpartner-2018-02-01 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-managementpartner-2018-02-01 and azureresourceschema - -``` yaml $(tag) == 'schema-managementpartner-2018-02-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ManagementPartner/preview/2018-02-01/ManagementPartner.json - -``` diff --git a/specification/managementpartner/resource-manager/readme.go.md b/specification/managementpartner/resource-manager/readme.go.md index 6ef8799909e6..1a75f3e679e6 100644 --- a/specification/managementpartner/resource-manager/readme.go.md +++ b/specification/managementpartner/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION clear-output-folder: true namespace: managementpartner ``` diff --git a/specification/managementpartner/resource-manager/readme.md b/specification/managementpartner/resource-manager/readme.md index 1ee6437e3a9b..259a5fcbf830 100644 --- a/specification/managementpartner/resource-manager/readme.md +++ b/specification/managementpartner/resource-manager/readme.md @@ -72,13 +72,11 @@ This is not used by Autorest itself. ``` yaml $(swagger-to-sdk) swagger-to-sdk: - repo: azure-sdk-for-net - - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-go - repo: azure-sdk-for-js - repo: azure-sdk-for-node - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js managementpartner/resource-manager ``` ## C# @@ -99,7 +97,5 @@ csharp: See configuration in [readme.go.md](./readme.go.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/managementpartner/resource-manager/readme.python.md b/specification/managementpartner/resource-manager/readme.python.md index 91fcdbcf2f6e..f22350219988 100644 --- a/specification/managementpartner/resource-manager/readme.python.md +++ b/specification/managementpartner/resource-manager/readme.python.md @@ -5,37 +5,16 @@ 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) && !$(track2) -python-mode: create -python: - azure-arm: true - license-header: MICROSOFT_MIT_NO_VERSION - payload-flattening-threshold: 2 - namespace: azure.mgmt.managementpartner - package-name: azure-mgmt-managementpartner - package-version: 0.2.0 - clear-output-folder: true -``` ``` yaml $(python) && $(track2) python-mode: create azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION namespace: azure.mgmt.managementpartner package-name: azure-mgmt-managementpartner -package-version: 0.2.0 +package-version: 1.0.0b1 clear-output-folder: true ``` -``` yaml $(python) && $(python-mode) == 'update' && !$(track2) -python: - no-namespace-folders: true - output-folder: $(python-sdks-folder)/managementpartner/azure-mgmt-managementpartner/azure/mgmt/managementpartner -``` -``` yaml $(python) && $(python-mode) == 'create' && !$(track2) -python: - basic-setup-py: true - output-folder: $(python-sdks-folder)/managementpartner/azure-mgmt-managementpartner -``` ``` yaml $(python) && $(python-mode) == 'update' && $(track2) no-namespace-folders: true output-folder: $(python-sdks-folder)/managementpartner/azure-mgmt-managementpartner/azure/mgmt/managementpartner diff --git a/specification/maps/data-plane/Microsoft.Maps/Alias/preview/1.0/alias.json b/specification/maps/data-plane/Microsoft.Maps/Alias/preview/1.0/alias.json index 13630019c12b..5f6ef30ed777 100644 --- a/specification/maps/data-plane/Microsoft.Maps/Alias/preview/1.0/alias.json +++ b/specification/maps/data-plane/Microsoft.Maps/Alias/preview/1.0/alias.json @@ -5,7 +5,14 @@ "version": "1.0", "description": "APIs for managing aliases in Azure Maps." }, - "host": "atlas.microsoft.com", + "x-ms-parameterized-host": { + "hostTemplate": "{geography}.atlas.microsoft.com", + "parameters": [ + { + "$ref": "#/parameters/GeographicResourceLocation" + } + ] + }, "schemes": [ "https" ], @@ -87,6 +94,33 @@ } }, "parameters": { + "GeographicResourceLocation": { + "name": "geography", + "description": "This parameter specifies where the Azure Maps Creator resource is located. Valid values are us and eu.", + "in": "path", + "required": true, + "type": "string", + "default": "us", + "enum": [ + "us", + "eu" + ], + "x-ms-enum": { + "name": "GeographicResourceLocation", + "modelAsString": true, + "values": [ + { + "value": "us", + "description": "Used to access an Azure Maps Creator resource in the United States" + }, + { + "value": "eu", + "description": "Used to access an Azure Maps Creator resource in Europe" + } + ] + }, + "x-ms-parameter-location": "client" + }, "SubscriptionKey": { "name": "subscription-key", "description": "One of the Azure Maps keys provided from an Azure Map Account. Please refer to this [article](https://docs.microsoft.com/azure/azure-maps/how-to-manage-authentication) for details on how to manage authentication.", @@ -133,7 +167,7 @@ "/alias": { "post": { "x-publish": true, - "description": "**Alias - Create API**\n\n**Applies to:** S1 pricing tier.\n
    \n\nThis API allows the caller to create an alias.
    \nYou can also assign the alias during the create request as well.\n\n\n### Submit Create Request\n\nTo create your alias, you will use a `POST` request. If you would like to assign the alias during the creation, you will pass the `resourceId` query parameter.
    \n\n\n### Create Alias Response\n\nThe Create API returns a HTTP `201 Created` response the id of the alias, `aliasId`, in the body.\nThe response will look something like:\n\n```json\n{\n \"aliasId\" : \"d7e5efc8-2239-4387-a286-5bb51aa804e3\"\n}\n```\n\n
    ", + "description": "**Alias - Create API**\n\n**Applies to**: see pricing [tiers](https://azure.microsoft.com/en-us/pricing/details/azure-maps/).\n
    \n\nThis API allows the caller to create an alias.
    \nYou can also assign the alias during the create request as well.\n\n\n### Submit Create Request\n\nTo create your alias, you will use a `POST` request. If you would like to assign the alias during the creation, you will pass the `resourceId` query parameter.
    \n\n\n### Create Alias Response\n\nThe Create API returns a HTTP `201 Created` response the id of the alias, `aliasId`, in the body.\nThe response will look something like:\n\n```json\n{\n \"aliasId\" : \"d7e5efc8-2239-4387-a286-5bb51aa804e3\"\n}\n```\n\n
    ", "operationId": "Alias_CreatePreview", "x-ms-examples": { "Create an alias that does not reference any resource": { @@ -180,7 +214,7 @@ }, "get": { "x-publish": true, - "description": "**Alias - List API**\n\n**Applies to:** S1 pricing tier.\n
    \n\nThis API allows the caller to fetch a list of all previously successfully created aliases.\n\n\n### Submit List Request\n\nTo list all your aliases, you will issue a `GET` request with no additional parameters.
    \n\n\n### List Data Response\n\nThe List API returns the complete list of all aliases in `json` format. The response contains the following details for each alias resource:\n\n > createdTimestamp - The timestamp that the alias was created.\n > aliasId - The id for the alias.\n > resourceId - The id for the resource that this alias references (could be null if the alias has not been assigned).\n > lastUpdatedTimestamp - The last time the alias was assigned to a resource.\n\n\nHere's a sample response returning 2 alias resources: \n\n
    \n\n```json\n{\n \"aliases\": [\n {\n \"createdTimestamp\": \"2020-02-13T21:19:11+00:00\",\n \"aliasId\": \"a8a4b8bb-ecf4-fb27-a618-f41721552766\",\n \"resourceId\": \"e89aebb9-70a3-8fe1-32bb-1fbd0c725f14\",\n \"lastUpdatedTimestamp\": \"2020-02-13T21:19:22+00:00\"\n },\n {\n \"createdTimestamp\": \"2020-02-18T19:53:33+00:00\",\n \"aliasId\": \"1856dbfc-7a66-ee5a-bf8d-51dbfe1906f6\",\n \"resourceId\": null,\n \"lastUpdatedTimestamp\": \"2020-02-18T19:53:33+00:00\"\n }\n ]\n}\n```\n\n
    ", + "description": "**Alias - List API**\n\n**Applies to**: see pricing [tiers](https://azure.microsoft.com/en-us/pricing/details/azure-maps/).\n
    \n\nThis API allows the caller to fetch a list of all previously successfully created aliases.\n\n\n### Submit List Request\n\nTo list all your aliases, you will issue a `GET` request with no additional parameters.
    \n\n\n### List Data Response\n\nThe List API returns the complete list of all aliases in `json` format. The response contains the following details for each alias resource:\n\n > createdTimestamp - The timestamp that the alias was created.\n > aliasId - The id for the alias.\n > resourceId - The id for the resource that this alias references (could be null if the alias has not been assigned).\n > lastUpdatedTimestamp - The last time the alias was assigned to a resource.\n\n\nHere's a sample response returning 2 alias resources: \n\n
    \n\n```json\n{\n \"aliases\": [\n {\n \"createdTimestamp\": \"2020-02-13T21:19:11+00:00\",\n \"aliasId\": \"a8a4b8bb-ecf4-fb27-a618-f41721552766\",\n \"resourceId\": \"e89aebb9-70a3-8fe1-32bb-1fbd0c725f14\",\n \"lastUpdatedTimestamp\": \"2020-02-13T21:19:22+00:00\"\n },\n {\n \"createdTimestamp\": \"2020-02-18T19:53:33+00:00\",\n \"aliasId\": \"1856dbfc-7a66-ee5a-bf8d-51dbfe1906f6\",\n \"resourceId\": null,\n \"lastUpdatedTimestamp\": \"2020-02-18T19:53:33+00:00\"\n }\n ]\n}\n```\n\n
    ", "operationId": "Alias_ListPreview", "x-ms-examples": { "List all the previously created aliases": { @@ -223,7 +257,7 @@ "/alias/assign/{aliasId}": { "patch": { "x-publish": true, - "description": "**Alias - Assign API**\n\n**Applies to:** S1 pricing tier.\n
    \n\nThis API allows the caller to assign an alias to reference a resource.
    \n\n\n### Submit Assign Request\n\nTo assign your alias to a resource, you will use a `PATCH` request with the `aliasId` in the path and the `resourceId` passed as a query parameter.
    \n\n\n### Create Alias Response\n\nThe Assign API returns a HTTP `204 No Content` response with an empty body, if the alias was assigned successfully.
    ", + "description": "**Alias - Assign API**\n\n**Applies to**: see pricing [tiers](https://azure.microsoft.com/en-us/pricing/details/azure-maps/).\n
    \n\nThis API allows the caller to assign an alias to reference a resource.
    \n\n\n### Submit Assign Request\n\nTo assign your alias to a resource, you will use a `PATCH` request with the `aliasId` in the path and the `resourceId` passed as a query parameter.
    \n\n\n### Create Alias Response\n\nThe Assign API returns a HTTP `204 No Content` response with an empty body, if the alias was assigned successfully.
    ", "operationId": "Alias_AssignPreview", "x-ms-examples": { "Assign an alias to a resource": { @@ -272,7 +306,7 @@ "/alias/{aliasId}": { "delete": { "x-publish": true, - "description": "**Alias - Delete API**\n\n**Applies to:** S1 pricing tier.\n
    \n\nThis API allows the caller to delete a previously created alias.
    \nYou can also use this API to delete old/unused aliases to create space for new content.\nThis API does not delete the references resource, only the alias referencing the resource.\n\n\n### Submit Delete Request\n\nTo delete your alias you will issue a `DELETE` request where the path will contain the `aliasId` of the alias to delete.
    \n\n\n### Delete Alias Response\n\nThe Delete API returns a HTTP `204 No Content` response with an empty body, if the alias was deleted successfully.
    \nA HTTP `400 Bad Request` error response will be returned if the alias with the passed-in `aliasId` is not found. ", + "description": "**Alias - Delete API**\n\n**Applies to**: see pricing [tiers](https://azure.microsoft.com/en-us/pricing/details/azure-maps/).\n
    \n\nThis API allows the caller to delete a previously created alias.
    \nYou can also use this API to delete old/unused aliases to create space for new content.\nThis API does not delete the references resource, only the alias referencing the resource.\n\n\n### Submit Delete Request\n\nTo delete your alias you will issue a `DELETE` request where the path will contain the `aliasId` of the alias to delete.
    \n\n\n### Delete Alias Response\n\nThe Delete API returns a HTTP `204 No Content` response with an empty body, if the alias was deleted successfully.
    \nA HTTP `400 Bad Request` error response will be returned if the alias with the passed-in `aliasId` is not found. ", "operationId": "Alias_DeletePreview", "x-ms-examples": { "Delete previously created alias": { diff --git a/specification/maps/data-plane/Microsoft.Maps/Alias/preview/1.0/examples/Alias_Assign.json b/specification/maps/data-plane/Microsoft.Maps/Alias/preview/1.0/examples/Alias_Assign.json index 352eacf788fc..510eadf5d277 100644 --- a/specification/maps/data-plane/Microsoft.Maps/Alias/preview/1.0/examples/Alias_Assign.json +++ b/specification/maps/data-plane/Microsoft.Maps/Alias/preview/1.0/examples/Alias_Assign.json @@ -1,5 +1,6 @@ { "parameters": { + "geography": "us", "api-version": "1.0", "subscription-key": "[subscription-key]", "aliasId": "[aliasId]", diff --git a/specification/maps/data-plane/Microsoft.Maps/Alias/preview/1.0/examples/Alias_Create.json b/specification/maps/data-plane/Microsoft.Maps/Alias/preview/1.0/examples/Alias_Create.json index 173db30afe23..4ceff472346f 100644 --- a/specification/maps/data-plane/Microsoft.Maps/Alias/preview/1.0/examples/Alias_Create.json +++ b/specification/maps/data-plane/Microsoft.Maps/Alias/preview/1.0/examples/Alias_Create.json @@ -1,5 +1,6 @@ { "parameters": { + "geography": "us", "api-version": "1.0", "subscription-key": "[subscription-key]" }, diff --git a/specification/maps/data-plane/Microsoft.Maps/Alias/preview/1.0/examples/Alias_Delete.json b/specification/maps/data-plane/Microsoft.Maps/Alias/preview/1.0/examples/Alias_Delete.json index 11adb1e66418..fc920bdb905e 100644 --- a/specification/maps/data-plane/Microsoft.Maps/Alias/preview/1.0/examples/Alias_Delete.json +++ b/specification/maps/data-plane/Microsoft.Maps/Alias/preview/1.0/examples/Alias_Delete.json @@ -1,5 +1,6 @@ { "parameters": { + "geography": "us", "api-version": "1.0", "subscription-key": "[subscription-key]", "aliasId": "[aliasId]" diff --git a/specification/maps/data-plane/Microsoft.Maps/Alias/preview/1.0/examples/Alias_List.json b/specification/maps/data-plane/Microsoft.Maps/Alias/preview/1.0/examples/Alias_List.json index e74d2c24197f..918b6bc1c103 100644 --- a/specification/maps/data-plane/Microsoft.Maps/Alias/preview/1.0/examples/Alias_List.json +++ b/specification/maps/data-plane/Microsoft.Maps/Alias/preview/1.0/examples/Alias_List.json @@ -1,5 +1,6 @@ { "parameters": { + "geography": "us", "api-version": "1.0", "subscription-key": "[subscription-key]" }, diff --git a/specification/maps/data-plane/Microsoft.Maps/Alias/preview/2.0/alias.json b/specification/maps/data-plane/Microsoft.Maps/Alias/preview/2.0/alias.json new file mode 100644 index 000000000000..c90b224da3d1 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Alias/preview/2.0/alias.json @@ -0,0 +1,498 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Maps Alias Service", + "version": "2.0", + "description": "APIs for managing aliases in Azure Maps." + }, + "schemes": [ + "https" + ], + "x-ms-parameterized-host": { + "hostTemplate": "{geography}.atlas.microsoft.com", + "parameters": [ + { + "$ref": "#/parameters/GeographicResourceLocation" + } + ] + }, + "consumes": [], + "produces": [ + "application/json", + "application/xml" + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "These are the [Azure Active Directory OAuth2](https://docs.microsoft.com/en-us/azure/active-directory/develop/v1-overview) Flows. When paired with [Azure Role Based Access](https://docs.microsoft.com/en-us/azure/role-based-access-control/overview) control it can be used to control access to Azure Maps REST APIs. Azure Role based access controls are used to designate access to one or more Azure Maps resource account or sub-resources. Any user, group, or service principal can be granted access via a built in role or a custom role composed of one or more permissions to Azure Maps REST APIs.\n\nTo implement scenarios we recommend viewing [authentication concepts](https://aka.ms/amauth). In summary, this security definition provides a solution for modeling application(s) via objects capable of access control on specific APIs and scopes.\n\n#### Note\n* This security definition **requires** the use of the `x-ms-client-id` header to indicate which Azure Maps resource the application is requesting access to. This can be acquired from the [Maps management API](https://aka.ms/amauthdetails).\n* The `Authorization URL` is specific to the Azure public cloud instance. Sovereign clouds have unique Authorization URLs and Azure Active directory configurations. \n* The Azure role based access control is configured from the [Azure management plane](https://aka.ms/amrbac) via Azure portal, Powershell, CLI, Azure SDKs, or REST APIs.\n* Usage of the [Azure Maps Web SDK](https://aka.ms/amaadmc) allows for configuration based setup of an application for multiple use cases.\n* Currently Azure Active Directory [v1.0](https://docs.microsoft.com/en-us/azure/active-directory/develop/azure-ad-endpoint-comparison) tokens are supported.", + "scopes": { + "user_impersonation": "Impersonates a user's Azure Active Directory account." + } + }, + "apiKeyQuery": { + "type": "apiKey", + "description": "This is a shared key which is provisioned when creating an [Azure Maps resource](https://aka.ms/amauth) through the Azure management plane via Azure portal, Powershell, CLI, Azure SDKs, or REST APIs. With this key, any application is authorized to access all REST APIs. In other words, these can currently be treated as master keys to the account which they are issued for. For publicly exposed applications our recommendation is to use server to server access of Azure Maps REST APIs where this key can be securely stored.", + "name": "subscription-key", + "in": "query" + } + }, + "security": [ + { + "azure_auth": [] + }, + { + "apiKeyQuery": [] + } + ], + "responses": { + "201": { + "description": "Resource Created: The alias resource has been created." + }, + "400": { + "description": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "401": { + "description": "Access denied due to invalid subscription key or invalid Azure Active Directory bearer token. Make sure to provide a valid key for an active Azure subscription and Maps resource. Otherwise, verify the [WWW-Authenticate](https://tools.ietf.org/html/rfc6750#section-3.1) header for error code and description of the provided AAD bearer token.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + }, + "headers": { + "WWW-Authenticate": { + "type": "string", + "description": "Bearer realm=\"https://atlas.microsoft.com/\", error=\"invalid_token\", error_description=\"The access token expired\"" + } + } + }, + "403": { + "description": "Permission, capacity, or authentication issues.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "404": { + "description": "Not Found: the requested resource could not be found, but it may be available again in the future.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "500": { + "description": "An error occurred while processing the request. Please try again later.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + } + }, + "parameters": { + "GeographicResourceLocation": { + "name": "geography", + "description": "This parameter specifies where the Azure Maps Creator resource is located. Valid values are us and eu.", + "in": "path", + "required": true, + "type": "string", + "default": "us", + "enum": [ + "us", + "eu" + ], + "x-ms-enum": { + "name": "GeographicResourceLocation", + "modelAsString": true, + "values": [ + { + "value": "us", + "description": "Used to access an Azure Maps Creator resource in the United States" + }, + { + "value": "eu", + "description": "Used to access an Azure Maps Creator resource in Europe" + } + ] + }, + "x-ms-parameter-location": "client" + }, + "SubscriptionKey": { + "name": "subscription-key", + "description": "One of the Azure Maps keys provided from an Azure Map Account. Please refer to this [article](https://docs.microsoft.com/azure/azure-maps/how-to-manage-authentication) for details on how to manage authentication.", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "client" + }, + "ApiVersion": { + "name": "api-version", + "description": "Version number of Azure Maps API. Current version is 2.0", + "type": "string", + "in": "query", + "required": true, + "default": "2.0", + "x-ms-parameter-location": "client" + }, + "CreateCreatorDataItemId": { + "name": "creatorDataItemId", + "description": "The unique id that references a creator data item to be aliased.", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "method" + }, + "AssignCreatorDataItemId": { + "name": "creatorDataItemId", + "description": "The unique id that references a creator data item to be aliased.", + "type": "string", + "in": "query", + "required": true, + "x-ms-parameter-location": "method" + }, + "AliasId": { + "name": "aliasId", + "description": "The unique id that references an existing alias.", + "type": "string", + "in": "path", + "required": true, + "x-ms-parameter-location": "method" + } + }, + "paths": { + "/aliases": { + "post": { + "x-publish": true, + "description": "**Applies to:** see pricing [tiers](https://aka.ms/AzureMapsPricingTier).\n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. [This](https://docs.microsoft.com/azure/azure-maps/creator-indoor-maps) article introduces concepts and tools that apply to Azure Maps Creator.\n\nThis API allows the caller to create an alias. You can also assign the alias during the create request. An alias can reference an ID generated by a creator service, but cannot reference another alias ID.\n\n### Submit Create Request\n\nTo create your alias, you will use a `POST` request. If you would like to assign the alias during the creation, you will pass the `resourceId` query parameter.\n\n### Create Alias Response\n\nThe Create API returns a HTTP `201 Created` response with the alias resource in the body.\n\nA sample response from creating an alias:\n\n```json\n{\n \"createdTimestamp\": \"2020-02-13T21:19:11.123Z\",\n \"aliasId\": \"a8a4b8bb-ecf4-fb27-a618-f41721552766\",\n \"creatorDataItemId\": \"e89aebb9-70a3-8fe1-32bb-1fbd0c725f14\",\n \"lastUpdatedTimestamp\": \"2020-02-13T21:19:22.123Z\"\n}\n```", + "operationId": "Alias_Create", + "x-ms-examples": { + "Create an alias that does not reference any resource": { + "$ref": "./examples/Alias_Create.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/CreateCreatorDataItemId" + } + ], + "responses": { + "201": { + "description": "Content created successfully. The response body contains the newly created alias id `aliasId`.", + "schema": { + "$ref": "#/definitions/AliasCreateResponse" + }, + "headers": { + "Access-Control-Expose-Headers": { + "type": "string", + "description": "The list of response headers that can be read by the client." + } + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + }, + "get": { + "x-publish": true, + "description": "**Applies to:** see pricing [tiers](https://aka.ms/AzureMapsPricingTier).\n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. [This](https://docs.microsoft.com/azure/azure-maps/creator-indoor-maps) article introduces concepts and tools that apply to Azure Maps Creator.\n\nThis API allows the caller to fetch a list of all previously successfully created aliases.\n\n### Submit List Request\n\nTo list all your aliases, you will issue a `GET` request with no additional parameters.\n\n### List Data Response\n\nThe List API returns the complete list of all aliases in `json` format. The response contains the following details for each alias resource:\n > createdTimestamp - The timestamp that the alias was created. Format yyyy-MM-ddTHH:mm:ss.sssZ\n > aliasId - The id for the alias.\n > creatorDataItemId - The id for the creator data item that this alias references (could be null if the alias has not been assigned).\n > lastUpdatedTimestamp - The last time the alias was assigned to a resource. Format yyyy-MM-ddTHH:mm:ss.sssZ\n\nA sample response returning 2 alias resources:\n\n```json\n{\n \"aliases\": [\n {\n \"createdTimestamp\": \"2020-02-13T21:19:11.123Z\",\n \"aliasId\": \"a8a4b8bb-ecf4-fb27-a618-f41721552766\",\n \"creatorDataItemId\": \"e89aebb9-70a3-8fe1-32bb-1fbd0c725f14\",\n \"lastUpdatedTimestamp\": \"2020-02-13T21:19:22.123Z\"\n },\n {\n \"createdTimestamp\": \"2020-02-18T19:53:33.123Z\",\n \"aliasId\": \"1856dbfc-7a66-ee5a-bf8d-51dbfe1906f6\",\n \"creatorDataItemId\": null,\n \"lastUpdatedTimestamp\": \"2020-02-18T19:53:33.123Z\"\n }\n ]\n}\n```", + "operationId": "Alias_List", + "x-ms-examples": { + "List all the previously created aliases": { + "$ref": "./examples/Alias_List.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "List alias request completed successfully. The response body contains a list of all the previously created aliases.", + "schema": { + "$ref": "#/definitions/AliasListResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/aliases/{aliasId}": { + "put": { + "x-publish": true, + "description": "**Applies to:** see pricing [tiers](https://aka.ms/AzureMapsPricingTier).\n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. [This](https://docs.microsoft.com/azure/azure-maps/creator-indoor-maps) article introduces concepts and tools that apply to Azure Maps Creator.\n\nThis API allows the caller to assign an alias to reference a resource.\n\n### Submit Assign Request\n\nTo assign your alias to a resource, you will use a `PUT` request with the `aliasId` in the path and the `creatorDataItemId` passed as a query parameter.\n\n### Assign Alias Response\n\nThe Assign API returns a HTTP `200 OK` response with the updated alias resource in the body, if the alias was assigned successfully. A sample of the assign response is\n\n```json\n{\n \"createdTimestamp\": \"2020-02-13T21:19:11.123Z\",\n \"aliasId\": \"a8a4b8bb-ecf4-fb27-a618-f41721552766\",\n \"creatorDataItemId\": \"e89aebb9-70a3-8fe1-32bb-1fbd0c725f14\",\n \"lastUpdatedTimestamp\": \"2020-02-13T21:19:22.123Z\"\n}\n```", + "operationId": "Alias_Assign", + "x-ms-examples": { + "Assign an alias to a resource": { + "$ref": "./examples/Alias_Assign.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/AliasId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/AssignCreatorDataItemId" + } + ], + "responses": { + "200": { + "description": "Alias was assigned successfully.", + "schema": { + "$ref": "#/definitions/AliasListItem" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + }, + "delete": { + "x-publish": true, + "description": "**Applies to:** see pricing [tiers](https://aka.ms/AzureMapsPricingTier).\n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. [This](https://docs.microsoft.com/azure/azure-maps/creator-indoor-maps) article introduces concepts and tools that apply to Azure Maps Creator.\n\nThis API allows the caller to delete a previously created alias. You can also use this API to delete old/unused aliases to create space for new content.This API does not delete the references resource, only the alias referencing the resource.\n\n### Submit Delete Request\n\nTo delete your alias you will issue a `DELETE` request where the path will contain the `aliasId` of the alias to delete.\n\n### Delete Alias Response\n\nThe Delete API returns a HTTP `204 No Content` response with an empty body, if the alias was deleted successfully.", + "operationId": "Alias_Delete", + "x-ms-examples": { + "Delete previously created alias": { + "$ref": "./examples/Alias_Delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/AliasId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + } + ], + "responses": { + "204": { + "description": "Alias delete request completed successfully. The content for `aliasId` was deleted on the server." + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + }, + "get": { + "x-publish": true, + "description": "**Applies to:** see pricing [tiers](https://aka.ms/AzureMapsPricingTier).\n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. [This](https://docs.microsoft.com/azure/azure-maps/creator-indoor-maps) article introduces concepts and tools that apply to Azure Maps Creator.\n\nThis API allows the caller to fetch the details of a previously created alias.\n\n### Submit Get Details Request\n\nTo get the details of your alias, you will issue a `GET` request with the `aliasId` in the path.\n\n### Get Details Response\n\nThe Get Details API returns the previously created alias in `json` format. The response contains the following details for the alias resource:\n > createdTimestamp - The timestamp that the alias was created.\n > aliasId - The id for the alias.\n > creatorDataItemId - The id for the creator data item that this alias references (could be null if the alias has not been assigned).\n > lastUpdatedTimestamp - The last time the alias was assigned to a resource.\n\nHere's a sample response:\n```json\n{\n \"createdTimestamp\": \"2020-02-13T21:19:11.123Z\",\n \"aliasId\": \"a8a4b8bb-ecf4-fb27-a618-f41721552766\",\n \"creatorDataItemId\": \"e89aebb9-70a3-8fe1-32bb-1fbd0c725f14\",\n \"lastUpdatedTimestamp\": \"2020-02-13T21:19:22.123Z\"\n}\n```", + "operationId": "Alias_GetDetails", + "x-ms-examples": { + "Get a previously created alias": { + "$ref": "./examples/Alias_GetDetails.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/AliasId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "Get alias request completed successfully. The response body contains the previously created alias.", + "schema": { + "$ref": "#/definitions/AliasListItem" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + } + }, + "definitions": { + "ODataErrorResponse": { + "type": "object", + "description": "This response object is returned when an error occurs in the Maps API.", + "properties": { + "error": { + "$ref": "#/definitions/ODataError" + } + } + }, + "ODataError": { + "type": "object", + "description": "This object is returned when an error occurs in the Maps API.", + "properties": { + "code": { + "type": "string", + "readOnly": true, + "description": "The ODataError code." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "If available, a human readable description of the error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ODataError" + } + }, + "target": { + "type": "string", + "readOnly": true, + "description": "If available, the target causing the error." + } + } + }, + "AliasCreateResponse": { + "description": "The response model for the Alias Create API for the case when the alias was successfully created.", + "type": "object", + "properties": { + "createdTimestamp": { + "description": "The created timestamp for the alias.", + "type": "string", + "readOnly": true + }, + "aliasId": { + "description": "The id for the alias.", + "type": "string", + "readOnly": true + }, + "creatorDataItemId": { + "description": "The id for the creator data item that this alias references (could be null if the alias has not been assigned).", + "type": "string", + "readOnly": true + }, + "lastUpdatedTimestamp": { + "description": "The timestamp of the last time the alias was assigned.", + "type": "string", + "readOnly": true + } + } + }, + "AliasListResponse": { + "description": "The response model for the List API. Returns a list of all the previously created aliases.", + "type": "object", + "properties": { + "aliases": { + "description": "A list of all the previously created aliases.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/AliasListItem" + } + }, + "nextLink": { + "description": "If present, the location of the next page of data.", + "type": "string", + "readOnly": true + } + } + }, + "AliasListItem": { + "description": "Detailed information for the alias.", + "type": "object", + "properties": { + "createdTimestamp": { + "description": "The created timestamp for the alias.", + "type": "string", + "readOnly": true + }, + "aliasId": { + "description": "The id for the alias.", + "type": "string", + "readOnly": true + }, + "creatorDataItemId": { + "description": "The id for the creator data item that this alias references (could be null if the alias has not been assigned).", + "type": "string", + "readOnly": true + }, + "lastUpdatedTimestamp": { + "description": "The timestamp of the last time the alias was assigned.", + "type": "string", + "readOnly": true + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Alias/preview/2.0/examples/Alias_Assign.json b/specification/maps/data-plane/Microsoft.Maps/Alias/preview/2.0/examples/Alias_Assign.json new file mode 100644 index 000000000000..06c22746fa8a --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Alias/preview/2.0/examples/Alias_Assign.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "geography": "us", + "api-version": "2.0", + "subscription-key": "[subscription-key]", + "aliasId": "[aliasId]", + "creatorDataItemId": "[creatorDataItemId]" + }, + "responses": { + "200": { + "body": { + "createdTimestamp": "2021-05-01T01:02:03.456Z", + "aliasId": "25084fb7-307a-4720-8f91-7952a0b91012", + "creatorDataItemId": "633a009a-dfa2-4d51-a419-420122e11c94", + "lastUpdatedTimestamp": "2021-05-01T01:02:03.456Z" + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request - Error message." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found - The requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "Unknown error - An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Alias/preview/2.0/examples/Alias_Create.json b/specification/maps/data-plane/Microsoft.Maps/Alias/preview/2.0/examples/Alias_Create.json new file mode 100644 index 000000000000..5f84baa43a03 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Alias/preview/2.0/examples/Alias_Create.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "geography": "us", + "api-version": "2.0", + "subscription-key": "[subscription-key]" + }, + "responses": { + "201": { + "headers": {}, + "body": { + "createdTimestamp": "2021-05-01T01:02:03.456Z", + "aliasId": "25084fb7-307a-4720-8f91-7952a0b91012", + "creatorDataItemId": null, + "lastUpdatedTimestamp": "2021-05-01T01:02:03.456Z" + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request - Error message." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found - The requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "Unknown error - An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Alias/preview/2.0/examples/Alias_Delete.json b/specification/maps/data-plane/Microsoft.Maps/Alias/preview/2.0/examples/Alias_Delete.json new file mode 100644 index 000000000000..5e847f338d4e --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Alias/preview/2.0/examples/Alias_Delete.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "geography": "us", + "api-version": "2.0", + "subscription-key": "[subscription-key]", + "aliasId": "[aliasId]" + }, + "responses": { + "204": {}, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request - One or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found - The requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "Unknown error - An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Alias/preview/2.0/examples/Alias_GetDetails.json b/specification/maps/data-plane/Microsoft.Maps/Alias/preview/2.0/examples/Alias_GetDetails.json new file mode 100644 index 000000000000..432cd5547706 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Alias/preview/2.0/examples/Alias_GetDetails.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "geography": "us", + "api-version": "2.0", + "subscription-key": "[subscription-key]", + "aliasId": "[aliasId]" + }, + "responses": { + "200": { + "body": { + "createdTimestamp": "2020-02-13T21:19:11+00:00", + "aliasId": "a8a4b8bb-ecf4-fb27-a618-f41721552766", + "creatorDataItemId": "e89aebb9-70a3-8fe1-32bb-1fbd0c725f14", + "lastUpdatedTimestamp": "2020-02-13T21:19:22+00:00" + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request - One or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found - The requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "Unknown error - An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Alias/preview/2.0/examples/Alias_List.json b/specification/maps/data-plane/Microsoft.Maps/Alias/preview/2.0/examples/Alias_List.json new file mode 100644 index 000000000000..078148c410a1 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Alias/preview/2.0/examples/Alias_List.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "geography": "us", + "api-version": "2.0", + "subscription-key": "[subscription-key]" + }, + "responses": { + "200": { + "body": { + "aliases": [ + { + "createdTimestamp": "2020-02-13T21:19:11+00:00", + "aliasId": "a8a4b8bb-ecf4-fb27-a618-f41721552766", + "creatorDataItemId": "e89aebb9-70a3-8fe1-32bb-1fbd0c725f14", + "lastUpdatedTimestamp": "2020-02-13T21:19:22+00:00" + }, + { + "createdTimestamp": "2020-02-13T21:19:11+00:00", + "aliasId": "1856dbfc-7a66-ee5a-bf8d-51dbfe1906f6", + "creatorDataItemId": null, + "lastUpdatedTimestamp": "2020-02-13T21:19:11+00:00" + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request - One or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found - The requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "Unknown error - An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/DEM/preview/1.0/elevation.json b/specification/maps/data-plane/Microsoft.Maps/DEM/preview/1.0/elevation.json index a215e4290567..d5cbc47fbca0 100644 --- a/specification/maps/data-plane/Microsoft.Maps/DEM/preview/1.0/elevation.json +++ b/specification/maps/data-plane/Microsoft.Maps/DEM/preview/1.0/elevation.json @@ -19,14 +19,14 @@ "type": "oauth2", "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", "flow": "implicit", - "description": "These are the [Azure Active Directory OAuth2](https://docs.microsoft.com/en-us/azure/active-directory/develop/v1-overview) Flows. When paired with [Azure Role Based Access](https://docs.microsoft.com/en-us/azure/role-based-access-control/overview) control it can be used to control access to Azure Maps REST APIs. Azure Role based access controls are used to designate access to one or more Azure Maps resource account or sub-resources. Any user, group, or service principal can be granted access via a built in role or a custom role composed of one or more permissions to Azure Maps REST APIs.\n\nTo implement scenarios we recommend viewing [authentication concepts](https://aka.ms/amauth). In summary, this security definition provides a solution for modeling application(s) via objects capable of access control on specific APIs and scopes.\n\n#### Note\n* This security definition **requires** the use of the `x-ms-client-id` header to indicate which Azure Maps resource the application is requesting access to. This can be acquired from the [Maps management API](https://aka.ms/amauthdetails).\n* The `Authorization URL` is specific to the Azure public cloud instance. Sovereign clouds have unique Authorization URLs and Azure Active directory configurations. \n* The Azure role based access control is configured from the [Azure management plane](https://aka.ms/amrbac) via Azure portal, Powershell, CLI, Azure SDKs, or REST APIs.\n* Usage of the [Azure Maps Web SDK](https://aka.ms/amaadmc) allows for configuration based setup of an application for multiple use cases.\n* Currently Azure Active Directory [v1.0](https://docs.microsoft.com/en-us/azure/active-directory/develop/azure-ad-endpoint-comparison) tokens are supported.", + "description": "These are the [Azure Active Directory OAuth2](https://docs.microsoft.com/en-us/azure/active-directory/develop/v1-overview) Flows. When paired with [Azure role-based access](https://docs.microsoft.com/en-us/azure/role-based-access-control/overview) control it can be used to control access to Azure Maps REST APIs. Azure role-based access controls are used to designate access to one or more Azure Maps resource account or sub-resources. Any user, group, or service principal can be granted access via a built-in role or a custom role composed of one or more permissions to Azure Maps REST APIs.\n\nTo implement scenarios, we recommend viewing [authentication concepts](https://aka.ms/amauth). In summary, this security definition provides a solution for modeling application(s) via objects capable of access control on specific APIs and scopes.\n\n#### Notes\n* This security definition **requires** the use of the `x-ms-client-id` header to indicate which Azure Maps resource the application is requesting access to. This can be acquired from the [Maps management API](https://aka.ms/amauthdetails).\n* \nThe `Authorization URL` is specific to the Azure public cloud instance. Sovereign clouds have unique Authorization URLs and Azure Active directory configurations. \n* \nThe Azure role-based access control is configured from the [Azure management plane](https://aka.ms/amrbac) via Azure portal, PowerShell, CLI, Azure SDKs, or REST APIs.\n* \nUsage of the [Azure Maps Web SDK](https://aka.ms/amaadmc) allows for configuration based setup of an application for multiple use cases.\n* Currently, Azure Active Directory [v1.0](https://docs.microsoft.com/en-us/azure/active-directory/develop/azure-ad-endpoint-comparison) tokens are supported.", "scopes": { "user_impersonation": "Impersonates a user's Azure Active Directory account." } }, "apiKeyQuery": { "type": "apiKey", - "description": "This is a shared key which is provisioned when creating an [Azure Maps resource](https://aka.ms/amauth) through the Azure management plane via Azure portal, Powershell, CLI, Azure SDKs, or REST APIs. With this key, any application is authorized to access all REST APIs. In other words, these can currently be treated as master keys to the account which they are issued for. For publicly exposed applications our recommendation is to use server to server access of Azure Maps REST APIs where this key can be securely stored.", + "description": "This is a shared key that is provisioned when creating an [Azure Maps resource](https://aka.ms/amauth) through the Azure management plane via Azure portal, PowerShell, CLI, Azure SDKs, or REST APIs.\n\n With this key, any application is authorized to access all REST APIs. In other words, these can currently be treated as master keys to the account which they are issued for.\n\n For publicly exposed applications, our recommendation is to use server-to-server access of Azure Maps REST APIs where this key can be securely stored.", "name": "subscription-key", "in": "query" } @@ -48,7 +48,7 @@ "x-ms-error-response": true }, "401": { - "description": "Access denied due to invalid subscription key or invalid Azure Active Directory bearer token. Make sure to provide a valid key for an active Azure subscription and Maps resource. Otherwise, verify the [WWW-Authenticate](https://tools.ietf.org/html/rfc6750#section-3.1) header for error code and description of the provided AAD bearer token.", + "description": "Access denied due to invalid subscription key or invalid Azure Active Directory (Azure AD) bearer token. Make sure to provide a valid key for an active Azure subscription and Maps resource. Otherwise, verify the [WWW-Authenticate](https://tools.ietf.org/html/rfc6750#section-3.1) header for error code and description of the provided Azure AD bearer token.", "schema": { "$ref": "#/definitions/ODataErrorResponse" }, @@ -85,7 +85,7 @@ "parameters": { "ClientId": { "name": "x-ms-client-id", - "description": "Specifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.", + "description": "Specifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from the Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.", "type": "string", "in": "header", "required": false, @@ -110,7 +110,7 @@ ], "x-ms-enum": { "name": "JsonFormat", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "json", @@ -133,8 +133,8 @@ "paths": { "/elevation/point/{format}": { "get": { - "summary": "Get elevation data on one or more points.", - "description": "**Applies to**: S1 pricing tier.\nThe Get Data for Points API provides elevation data for one or more points. A point is defined in lat,long coordinate format. Due to the URL character length limit of 2048, it's not possible to pass more than 100 coordinates as a pipeline delimited string in a URL GET request. If you intend to pass more than 100 coordinates as a pipeline delimited string, use the [POST Data\n For Points](https://docs.microsoft.com/en-us/rest/api/maps/elevation/postdataforpoints).", + "summary": "Get Elevation Data on One or More Points", + "description": "**Applies to**: S1 pricing tier.\n\nThe Get Data for Points API provides elevation data for one or more points. A point is defined in lat,long coordinate format.\n\n Due to the URL character length limit of 2048, it's not possible to pass more than 100 coordinates as a pipeline delimited string in a URL GET request. If you intend to pass more than 100 coordinates as a pipeline delimited string, use the [POST Data\n For Points](https://docs.microsoft.com/en-us/rest/api/maps/elevation/postdataforpoints).", "operationId": "Elevation_GetDataForPoints", "x-ms-examples": { "GetDataForPoints": { @@ -198,8 +198,8 @@ } }, "post": { - "summary": "Query elevation data for multiple points.", - "description": "**Applies to**: S1 pricing tier.\nThe Post Data for Points API provides elevation data for multiple points. A point is defined in lat/lon coordinate format. Use the POST endpoint only if you intend to pass multiple points in the request. If you intend to pass a single coordinate into the API, use the [GET Data For Points API](https://docs.microsoft.com/en-us/rest/api/maps/elevation/getdataforpoints).", + "summary": "Query Elevation Data for Multiple Points", + "description": "**Applies to**: S1 pricing tier.\n\nThe Post Data for Points API provides elevation data for multiple points. A point is defined in lat/lon coordinate format. Use the POST endpoint only if you intend to pass multiple points in the request. If you intend to pass a single coordinate into the API, use the [GET Data For Points API](https://docs.microsoft.com/en-us/rest/api/maps/elevation/getdataforpoints).", "operationId": "Elevation_PostDataForPoints", "x-ms-examples": { "PostDataForPoints": { @@ -259,8 +259,8 @@ }, "/elevation/line/{format}": { "get": { - "summary": "Get elevation data along a polyline.", - "description": "**Applies to**: S1 pricing tier.\n\nThe Get Data for Polyline API provides elevation data along a polyline. A polyline is defined by passing in between 2 and N endpoint coordinates separated by a pipe ('|') character. In addition to passing in endpoints, customers can specify number of sample points that will be used to divide polyline into equally spaced segments. Elevation data at both start and end points and equally spaced points along the polyline will be returned. A line between two endpoints is a straight Cartesian line, the shortest line between those two points in the coordinate reference system. Note that the point is chosen based on Euclidean distance and may markedly differ from the geodesic path along the curved surface of the reference ellipsoid.", + "summary": "Get Elevation Data Along a Polyline", + "description": "**Applies to**: S1 pricing tier.\n\nThe Get Data for Polyline API provides elevation data along a polyline.\n\n A polyline is defined by passing in between 2 and N endpoint coordinates separated by a pipe ('|') character. In addition to passing in endpoints, customers can specify the number of sample points that will be used to divide polyline into equally spaced segments. Elevation data at both start and endpoints and equally spaced points along the polyline will be returned.\n\n A line between two endpoints is a straight Cartesian line, the shortest line between those two points in the coordinate reference system. Note that the point is chosen based on Euclidean distance and may markedly differ from the geodesic path along the curved surface of the reference ellipsoid.", "operationId": "Elevation_GetDataForPolyline", "x-ms-examples": { "GetDataForPolyLine": { @@ -283,7 +283,7 @@ { "name": "lines", "in": "query", - "description": "The string representation of a polyline path. A polyline is defined by endpoint coordinates, with each endpoint separated by a pipe ('|') character. The polyline should be defined in the following format: [longitude_point1, latitude_point1 | longitude_point2, latitude_point2, ..., longitude_pointN, latitude_pointN]. The longitude and latitude values refer to the World Geodetic System (WGS84) coordinate reference system. The resolution of the data used to compute the elevation will depend on the distance between the endpoints.", + "description": "The string representation of a polyline path. A polyline is defined by endpoint coordinates, with each endpoint separated by a pipe ('|') character. The polyline should be defined in the following format: `[longitude_point1, latitude_point1 | longitude_point2, latitude_point2, ..., longitude_pointN, latitude_pointN]`.\n\n The longitude and latitude values refer to the World Geodetic System (WGS84) coordinate reference system. The resolution of the data used to compute the elevation depends on the distance between the endpoints.", "required": true, "type": "array", "collectionFormat": "pipes", @@ -298,7 +298,7 @@ { "name": "samples", "in": "query", - "description": "The samples parameter specifies the number of equally spaced points at which elevation values should be provided along a polyline path. The number of samples should range from 2 to 2,000. Default value is 10 if not provided.", + "description": "The samples parameter specifies the number of equally spaced points at which elevation values should be provided along a polyline path. The number of samples should range from 2 to 2,000. Default value is 10.", "type": "number", "minimum": 2, "maximum": 2000, @@ -334,8 +334,8 @@ } }, "post": { - "summary": "Query elevation data along a polyline.", - "description": "**Applies to**: S1 pricing tier.\nThe Post Data for Polyline API provides elevation data along a polyline. A polyline is defined by passing in between 2 and N endpoint coordinates separated by a pipe ('|') character. In addition to passing in endpoints, customers can specify number of sample points that will be used to divide polyline into equally spaced segments. Elevation data at both start and end points and equally spaced points along the polyline will be returned. A line between two endpoints is a straight Cartesian line, the shortest line between those two points in the coordinate reference system. Note that the point is chosen based on Euclidean distance and may markedly differ from the geodesic path along the curved surface of the reference ellipsoid.", + "summary": "Query Elevation Data Along a Polyline", + "description": "**Applies to**: S1 pricing tier.\n\n The Post Data for Polyline API provides elevation data along a polyline. A polyline is defined by passing in between 2 and N endpoint coordinates separated by a pipe ('|') character. In addition to passing in endpoints, customers can specify the number of sample points that will be used to divide polyline into equally spaced segments.\n\n Elevation data at both start and end points and equally spaced points along the polyline will be returned. A line between two endpoints is a straight Cartesian line, the shortest line between those two points in the coordinate reference system. Note that the point is chosen based on Euclidean distance and may markedly differ from the geodesic path along the curved surface of the reference ellipsoid.", "operationId": "Elevation_PostDataForPolyline", "x-ms-examples": { "PostDataForPolyLine": { @@ -358,7 +358,7 @@ { "name": "linesRequestBody", "in": "body", - "description": "The string representation of a polyline path. A polyline is defined by endpoint coordinates, with each endpoint separated by a pipe ('|') character. The polyline should be defined in the following format: [longitude_point1, latitude_point1 | longitude_point2, latitude_point2, ..., longitude_pointN, latitude_pointN]. The longitude and latitude values refer to the World Geodetic System (WGS84) coordinate reference system. The resolution of the data used to compute the elevation will depend on the distance between the endpoints.", + "description": "The string representation of a polyline path. A polyline is defined by endpoint coordinates, with each endpoint separated by a pipe ('|') character. The polyline should be defined in the following format: `[longitude_point1, latitude_point1 | longitude_point2, latitude_point2, ..., longitude_pointN, latitude_pointN]`. The longitude and latitude values refer to the World Geodetic System (WGS84) coordinate reference system. The resolution of the data used to compute the elevation will depend on the distance between the endpoints.", "required": true, "schema": { "$ref": "#/definitions/LinesInRequestBody" @@ -367,7 +367,7 @@ { "name": "samples", "in": "query", - "description": "The samples parameter specifies the number of equally spaced points at which elevation values should be provided along a polyline path. The number of samples should range from 2 to 2,000. Default value is 10 if not provided.", + "description": "The samples parameter specifies the number of equally spaced points at which elevation values should be provided along a polyline path. The number of samples should range from 2 to 2,000. Default value is 10.", "type": "number", "minimum": 2, "maximum": 2000, @@ -405,8 +405,8 @@ }, "/elevation/lattice/{format}": { "get": { - "summary": "Get elevation data at equally-spaced locations within a bounding box.", - "description": "**Applies to**: S1 pricing tier.\n\nThe Get Data for Bounding Box API provides elevation data at equally-spaced locations within a bounding box. A bounding box is defined by the coordinates for two corners (southwest, northeast) and then subsequently divided into rows and columns. Elevations are returned for the vertices of the grid created by the rows and columns. Up to 2000 elevations can be returned in a single request. The returned elevation values are ordered, starting at the southwest corner, and then proceeding west to east along the row. At the end of the row, it moves north to the next row, and repeats the process until it reaches the far northeast corner.", + "summary": "Get Elevation Data at Equally Spaced Locations Within a Bounding Box", + "description": "**Applies to**: S1 pricing tier.\n\nThe Get Data for Bounding Box API provides elevation data at equally spaced locations within a bounding box. A bounding box is defined by the coordinates for two corners (southwest, northeast) and then subsequently divided into rows and columns.\n\n Elevations are returned for the vertices of the grid created by the rows and columns. Up to 2,000 elevations can be returned in a single request. The returned elevation values are ordered, starting at the southwest corner, and then proceeding west to east along the row. At the end of the row, it moves north to the next row, and repeats the process until it reaches the far northeast corner.", "operationId": "Elevation_GetDataForBoundingBox", "x-ms-examples": { "GetDataForBoundingBox": { @@ -429,7 +429,7 @@ { "name": "bounds", "in": "query", - "description": "The string that represents the rectangular area of a bounding box. The bounds parameter is defined by the 4 bounding box coordinates, with WGS84 longitude and latitude of the southwest corner followed by WGS84 longitude and latitude of the northeast corner. The string is presented in the following format: [SouthwestCorner_Longitude, SouthwestCorner_Latitude, NortheastCorner_Longitude, NortheastCorner_Latitude].", + "description": "The string that represents the rectangular area of a bounding box. The bounds parameter is defined by the 4 bounding box coordinates, with WGS84 longitude and latitude of the southwest corner followed by WGS84 longitude and latitude of the northeast corner. The string is presented in the following format: `[SouthwestCorner_Longitude, SouthwestCorner_Latitude, NortheastCorner_Longitude, NortheastCorner_Latitude]`.", "required": true, "type": "array", "collectionFormat": "csv", @@ -440,7 +440,7 @@ { "name": "rows", "in": "query", - "description": "Specifies the number of rows to use to divide the bounding box area into a grid. The number of vertices in the grid should be less than 2000. ", + "description": "Specifies the number of rows to use to divide the bounding box area into a grid. The number of vertices in the grid should be less than 2,000. ", "type": "number", "minimum": 2, "maximum": 1000, @@ -449,7 +449,7 @@ { "name": "columns", "in": "query", - "description": "Specifies the number of columns to use to divide the bounding box area into a grid. The number of vertices in the grid should be less than 2000. ", + "description": "Specifies the number of columns to use to divide the bounding box area into a grid. The number of vertices in the grid should be less than 2,000. ", "type": "number", "minimum": 2, "maximum": 1000, @@ -488,7 +488,7 @@ "definitions": { "ODataErrorResponse": { "type": "object", - "description": "This response object is returned when an error occurs in the Maps API.", + "description": "This response object is returned when an error occurs in the Azure Maps API.", "properties": { "error": { "$ref": "#/definitions/ODataError" @@ -497,7 +497,7 @@ }, "ODataError": { "type": "object", - "description": "This object is returned when an error occurs in the Maps API.", + "description": "This object is returned when an error occurs in the Azure Maps API.", "properties": { "code": { "type": "string", @@ -507,7 +507,7 @@ "message": { "type": "string", "readOnly": true, - "description": "If available, a human readable description of the error." + "description": "If available, a human-readable description of the error." }, "details": { "type": "array", @@ -587,7 +587,7 @@ } }, "ElevationLatticeResponse": { - "description": "The response from the Get Data for Bounding Box API. The results will be ordered starting with the southwest corner, and then proceed west to east and south to north.", + "description": "The response from the Get Data for Bounding Box API. The results are ordered starting with the southwest corner, and then proceed west to east and south to north.", "type": "array", "readOnly": true, "items": { diff --git a/specification/maps/data-plane/Microsoft.Maps/Data/preview/1.0/data.json b/specification/maps/data-plane/Microsoft.Maps/Data/preview/1.0/data.json index 3661631adc93..329cb1ec6e98 100644 --- a/specification/maps/data-plane/Microsoft.Maps/Data/preview/1.0/data.json +++ b/specification/maps/data-plane/Microsoft.Maps/Data/preview/1.0/data.json @@ -5,7 +5,14 @@ "version": "1.0", "description": "APIs for uploading map data to Azure Maps." }, - "host": "atlas.microsoft.com", + "x-ms-parameterized-host": { + "hostTemplate": "{geography}.atlas.microsoft.com", + "parameters": [ + { + "$ref": "#/parameters/GeographicResourceLocation" + } + ] + }, "schemes": [ "https" ], @@ -98,6 +105,33 @@ } }, "parameters": { + "GeographicResourceLocation": { + "name": "geography", + "description": "This parameter specifies where the Azure Maps Creator resource is located. Valid values are us and eu.", + "in": "path", + "required": true, + "type": "string", + "default": "us", + "enum": [ + "us", + "eu" + ], + "x-ms-enum": { + "name": "GeographicResourceLocation", + "modelAsString": true, + "values": [ + { + "value": "us", + "description": "Used to access an Azure Maps Creator resource in the United States" + }, + { + "value": "eu", + "description": "Used to access an Azure Maps Creator resource in Europe" + } + ] + }, + "x-ms-parameter-location": "client" + }, "ClientId": { "name": "x-ms-client-id", "description": "Specifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.", @@ -134,7 +168,7 @@ ], "x-ms-enum": { "name": "JsonFormat", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "json", @@ -156,7 +190,7 @@ ], "x-ms-enum": { "name": "UploadDataFormat", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "geojson", @@ -525,7 +559,7 @@ ], "x-ms-enum": { "name": "type", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "NotStarted", diff --git a/specification/maps/data-plane/Microsoft.Maps/Data/preview/1.0/examples/Delete.json b/specification/maps/data-plane/Microsoft.Maps/Data/preview/1.0/examples/Delete.json index ccf95148e20a..50c9ce448af5 100644 --- a/specification/maps/data-plane/Microsoft.Maps/Data/preview/1.0/examples/Delete.json +++ b/specification/maps/data-plane/Microsoft.Maps/Data/preview/1.0/examples/Delete.json @@ -1,5 +1,6 @@ { "parameters": { + "geography": "us", "api-version": "1.0", "subscription-key": "[subscription-key]", "udid": "25084fb7-307a-4720-8f91-7952a0b91012" diff --git a/specification/maps/data-plane/Microsoft.Maps/Data/preview/1.0/examples/Download.json b/specification/maps/data-plane/Microsoft.Maps/Data/preview/1.0/examples/Download.json index 1c065fe041ea..92222b3078f2 100644 --- a/specification/maps/data-plane/Microsoft.Maps/Data/preview/1.0/examples/Download.json +++ b/specification/maps/data-plane/Microsoft.Maps/Data/preview/1.0/examples/Download.json @@ -1,5 +1,6 @@ { "parameters": { + "geography": "us", "api-version": "1.0", "subscription-key": "[subscription-key]", "udid": "25084fb7-307a-4720-8f91-7952a0b91012" diff --git a/specification/maps/data-plane/Microsoft.Maps/Data/preview/1.0/examples/List.json b/specification/maps/data-plane/Microsoft.Maps/Data/preview/1.0/examples/List.json index 741fdd026baf..5123768fe957 100644 --- a/specification/maps/data-plane/Microsoft.Maps/Data/preview/1.0/examples/List.json +++ b/specification/maps/data-plane/Microsoft.Maps/Data/preview/1.0/examples/List.json @@ -1,5 +1,6 @@ { "parameters": { + "geography": "us", "api-version": "1.0", "subscription-key": "[subscription-key]" }, diff --git a/specification/maps/data-plane/Microsoft.Maps/Data/preview/1.0/examples/Update.json b/specification/maps/data-plane/Microsoft.Maps/Data/preview/1.0/examples/Update.json index 20caaf53f5d6..fbefa37257db 100644 --- a/specification/maps/data-plane/Microsoft.Maps/Data/preview/1.0/examples/Update.json +++ b/specification/maps/data-plane/Microsoft.Maps/Data/preview/1.0/examples/Update.json @@ -1,5 +1,6 @@ { "parameters": { + "geography": "us", "api-version": "1.0", "subscription-key": "[subscription-key]", "udid": "25084fb7-307a-4720-8f91-7952a0b91012", diff --git a/specification/maps/data-plane/Microsoft.Maps/Data/preview/1.0/examples/Upload.json b/specification/maps/data-plane/Microsoft.Maps/Data/preview/1.0/examples/Upload.json index dd663049a9a0..1eef53581827 100644 --- a/specification/maps/data-plane/Microsoft.Maps/Data/preview/1.0/examples/Upload.json +++ b/specification/maps/data-plane/Microsoft.Maps/Data/preview/1.0/examples/Upload.json @@ -1,5 +1,6 @@ { "parameters": { + "geography": "us", "api-version": "1.0", "subscription-key": "[subscription-key]", "dataFormat": "geojson", diff --git a/specification/maps/data-plane/Microsoft.Maps/Data/preview/2.0/data.json b/specification/maps/data-plane/Microsoft.Maps/Data/preview/2.0/data.json new file mode 100644 index 000000000000..858e1943bf5b --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Data/preview/2.0/data.json @@ -0,0 +1,702 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Maps Data Service", + "version": "2.0", + "description": "APIs for uploading map data to Azure Maps." + }, + "x-ms-parameterized-host": { + "hostTemplate": "{geography}.atlas.microsoft.com", + "parameters": [ + { + "$ref": "#/parameters/GeographicResourceLocation" + } + ] + }, + "schemes": [ + "https" + ], + "consumes": [], + "produces": [ + "application/json" + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "These are the [Azure Active Directory OAuth2](https://docs.microsoft.com/en-us/azure/active-directory/develop/v1-overview) Flows. When paired with [Azure Role Based Access](https://docs.microsoft.com/en-us/azure/role-based-access-control/overview) control it can be used to control access to Azure Maps REST APIs. Azure Role based access controls are used to designate access to one or more Azure Maps resource account or sub-resources. Any user, group, or service principal can be granted access via a built in role or a custom role composed of one or more permissions to Azure Maps REST APIs.\n\nTo implement scenarios we recommend viewing [authentication concepts](https://aka.ms/amauth). In summary, this security definition provides a solution for modeling application(s) via objects capable of access control on specific APIs and scopes.\n\n#### Note\n* This security definition **requires** the use of the `x-ms-client-id` header to indicate which Azure Maps resource the application is requesting access to. This can be acquired from the [Maps management API](https://aka.ms/amauthdetails).\n* The `Authorization URL` is specific to the Azure public cloud instance. Sovereign clouds have unique Authorization URLs and Azure Active directory configurations. \n* The Azure role based access control is configured from the [Azure management plane](https://aka.ms/amrbac) via Azure portal, Powershell, CLI, Azure SDKs, or REST APIs.\n* Usage of the [Azure Maps Web SDK](https://aka.ms/amaadmc) allows for configuration based setup of an application for multiple use cases.\n* Currently Azure Active Directory [v1.0](https://docs.microsoft.com/en-us/azure/active-directory/develop/azure-ad-endpoint-comparison) tokens are supported.", + "scopes": { + "user_impersonation": "Impersonates a user's Azure Active Directory account." + } + }, + "apiKeyQuery": { + "type": "apiKey", + "description": "This is a shared key which is provisioned when creating an [Azure Maps resource](https://aka.ms/amauth) through the Azure management plane via Azure portal, Powershell, CLI, Azure SDKs, or REST APIs. With this key, any application is authorized to access all REST APIs. In other words, these can currently be treated as master keys to the account which they are issued for. For publicly exposed applications our recommendation is to use server to server access of Azure Maps REST APIs where this key can be securely stored.", + "name": "subscription-key", + "in": "query" + } + }, + "security": [ + { + "azure_auth": [] + }, + { + "apiKeyQuery": [] + } + ], + "responses": { + "400": { + "description": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "401": { + "description": "Access denied due to invalid subscription key or invalid Azure Active Directory bearer token. Make sure to provide a valid key for an active Azure subscription and Maps resource. Otherwise, verify the [WWW-Authenticate](https://tools.ietf.org/html/rfc6750#section-3.1) header for error code and description of the provided AAD bearer token.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + }, + "headers": { + "WWW-Authenticate": { + "type": "string", + "description": "Bearer realm=\"https://atlas.microsoft.com/\", error=\"invalid_token\", error_description=\"The access token expired\"" + } + } + }, + "403": { + "description": "Permission, capacity, or authentication issues.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "404": { + "description": "Not Found: the requested resource could not be found, but it may be available again in the future.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "500": { + "description": "An error occurred while processing the request. Please try again later.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "200Async": { + "description": "The operation is running or complete. If the operation was successful, use the Resource-Location header to obtain the path to the result.", + "schema": { + "$ref": "#/definitions/LongRunningOperationResult" + }, + "headers": { + "Resource-Location": { + "type": "string", + "description": "If successful, a URI where details on the newly created resource can be found." + } + } + }, + "202Accepted": { + "description": "Request Accepted: The request has been accepted for processing. Please use the URL in the Operation-Location Header to obtain status.", + "headers": { + "Operation-Location": { + "type": "string", + "description": "New URL to check for the results of the long running process." + } + } + } + }, + "parameters": { + "GeographicResourceLocation": { + "name": "geography", + "description": "This parameter specifies where the Azure Maps Creator resource is located. Valid values are us and eu.", + "in": "path", + "required": true, + "type": "string", + "default": "us", + "enum": [ + "us", + "eu" + ], + "x-ms-enum": { + "name": "GeographicResourceLocation", + "modelAsString": true, + "values": [ + { + "value": "us", + "description": "Used to access an Azure Maps Creator resource in the United States" + }, + { + "value": "eu", + "description": "Used to access an Azure Maps Creator resource in Europe" + } + ] + }, + "x-ms-parameter-location": "client" + }, + "ClientId": { + "name": "x-ms-client-id", + "description": "Specifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.", + "type": "string", + "in": "header", + "required": false, + "x-ms-parameter-location": "client" + }, + "SubscriptionKey": { + "name": "subscription-key", + "description": "One of the Azure Maps keys provided from an Azure Map Account. Please refer to this [article](https://docs.microsoft.com/azure/azure-maps/how-to-manage-authentication) for details on how to manage authentication.", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "client" + }, + "ApiVersion": { + "name": "api-version", + "description": "Version number of Azure Maps API. Current version is 2.0", + "type": "string", + "in": "query", + "required": true, + "default": "2.0", + "x-ms-parameter-location": "client" + }, + "JsonFormat": { + "name": "format", + "description": "Desired format of the response. Only `json` format is supported.", + "type": "string", + "in": "path", + "required": true, + "enum": [ + "json" + ], + "x-ms-enum": { + "name": "JsonFormat", + "modelAsString": true, + "values": [ + { + "value": "json", + "description": "[The JavaScript Object Notation Data Interchange Format](https://tools.ietf.org/html/rfc8259)" + } + ] + }, + "x-ms-parameter-location": "method" + }, + "UploadDataFormat": { + "name": "dataFormat", + "description": "Data format of the content being uploaded.", + "type": "string", + "in": "query", + "required": true, + "enum": [ + "geojson", + "zip", + "dwgzippackage" + ], + "x-ms-enum": { + "name": "UploadDataFormat", + "modelAsString": true, + "values": [ + { + "value": "geojson", + "description": "[GeoJSON](https://tools.ietf.org/html/rfc7946) is a JSON based geospatial data interchange format." + }, + { + "value": "zip", + "description": "Compressed data format." + }, + { + "value": "dwgzippackage", + "description": "" + } + ] + }, + "x-ms-parameter-location": "method" + }, + "Udid": { + "name": "udid", + "description": "The unique data id for the content. The `udid` must have been obtained from a successful [Data Upload API](https://docs.microsoft.com/en-us/rest/api/maps/data%20v2/uploadpreview) call.", + "type": "string", + "in": "path", + "required": true, + "x-ms-parameter-location": "method" + }, + "Description": { + "name": "description", + "description": "The description to be given to the upload.", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "method" + }, + "DataUploadOperationId": { + "name": "operationId", + "type": "string", + "in": "path", + "description": "The ID to query the status for the data upload request.", + "required": true, + "x-ms-parameter-location": "method" + } + }, + "paths": { + "/mapData": { + "post": { + "x-publish": true, + "description": "**Applies to:** see pricing [tiers](https://aka.ms/AzureMapsPricingTier).\n\nThe Data Upload API allows the caller to upload data content to the Azure Maps service.\nYou can use this API in a scenario like uploading a collection of Geofences in `GeoJSON` \nformat, for use in our [Azure Maps Geofencing Service](https://docs.microsoft.com/rest/api/maps/spatial).\n\n## Submit Upload Request\n\nTo upload your content you will use a `POST` request. The request body will contain the data to upload. The \n`dataFormat` query parameter will contain the format for the data, the `dataSharingLevel` query parameter \ncan contain the sharing level for the data. The `Content-Type` header will be set to the content type of the \ndata.\n\nFor example, to upload a collection of geofences in `GeoJSON` format, set the request body to the geofence \ncontent. Set the `dataFormat` query parameter to _geojson_, and set the `Content-Type` header to either one \nof the following media types:\n\n- `application/json`\n- `application/vnd.geo+json`\n- `application/octet-stream`\n\nHere's a sample request body for uploading a simple Geofence represented as a circle geometry using a center \npoint and a radius. The sample below is in `GeoJSON`:\n\n```json\n{\n \"type\": \"FeatureCollection\",\n \"features\": [{\n \"type\": \"Feature\",\n \"geometry\": {\n \"type\": \"Point\",\n \"coordinates\": [-122.126986, 47.639754]\n },\n \"properties\": {\n \"geometryId\": \"001\",\n \"radius\": 500\n }\n }]\n}\n```\n\nThe Data Upload API performs a \n[long-running request](https://aka.ms/am-creator-lrt-v2).\n\n## Data Upload Limits\n\nPlease, be aware that currently every Azure Maps account has a [data storage limit](https://docs.microsoft.com/en-us/azure/azure-resource-manager/management/azure-subscription-service-limits#azure-maps-limits). \nOnce the storage limit is reached, all the new upload API calls will return a `409 Conflict` http error response. \nYou can always use the [Data Delete API](https://docs.microsoft.com/rest/api/maps/data%20v2/deletepreview) to \ndelete old/unused content and create space for new uploads.", + "operationId": "Data_UploadPreview", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Upload GeoJSON data containing geometries that represent a collection of geofences": { + "$ref": "./examples/Upload.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/Description" + }, + { + "$ref": "#/parameters/UploadDataFormat" + }, + { + "name": "UploadContent", + "in": "body", + "description": "The content to upload.", + "required": true, + "schema": { + "type": "object" + } + } + ], + "responses": { + "200": { + "description": "Data upload failed. The uploaded content did not satisfy all the validation checks. The response body contains all the errors that were encountered.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "202": { + "$ref": "#/responses/202Accepted" + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + }, + "get": { + "x-publish": true, + "description": "**Applies to:** see pricing [tiers](https://aka.ms/AzureMapsPricingTier).\n\nThis API allows the caller to fetch a list of all content uploaded previously using the [Data Upload API](https://docs.microsoft.com/en-us/rest/api/maps/data%20v2/uploadpreview). \n\n\n### Submit List Request\n\nTo list all your map data content you will issue a `GET` request with no additional parameters.\n\n\n### List Data Response\n\nThe Data List API returns the complete list of all data in `json` format. The response contains the following details for each data resource:\n\n > udid - The unique data id for the data resource.\n\n > location - The location of the data resource. Execute a HTTP `GET` on this location to download the data.\n\n\nHere's a sample response returning the `udid` and `location` of 3 data resources: \n\n
    \n\n```json\n{\n \"mapDataList\": \n [\n {\n \"udid\": \"9a1288fa-1858-4a3b-b68d-13a8j5af7d7c\",\n \"location\": \"https://us.atlas.microsoft.com/mapData/9a1288fa-1858-4a3b-b68d-13a8j5af7d7c?api-version=1.0\",\n \"sizeInBytes\": 29920,\n \"uploadStatus\": \"Completed\"\n },\n {\n \"udid\": \"8b1288fa-1958-4a2b-b68e-13a7i5af7d7c\",\n \"location\": \"https://us.atlas.microsoft.com/mapData/8b1288fa-1958-4a2b-b68e-13a7i5af7d7c?api-version=1.0\",\n \"sizeInBytes\": 1339,\n \"uploadStatus\": \"Completed\"\n },\n {\n \"udid\": \"7c1288fa-2058-4a1b-b68f-13a6h5af7d7c\",\n \"location\": \"https://us.atlas.microsoft.com/mapData/7c1288fa-2058-4a1b-b68f-13a6h5af7d7c?api-version=1.0\",\n \"sizeInBytes\": 1650,\n \"uploadStatus\": \"Pending\"\n }]\n}\n```\n\n
    ", + "operationId": "Data_ListPreview", + "x-ms-examples": { + "List all the previously uploaded data": { + "$ref": "./examples/List.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "List data request completed successfully. The response body contains a list of all the previously uploaded data.", + "schema": { + "$ref": "#/definitions/MapDataListResponse" + }, + "headers": { + "Content-Type": { + "type": "string", + "description": "The content-type for the Download API response." + } + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/mapData/{udid}": { + "put": { + "x-publish": true, + "description": "**Applies to:** see pricing [tiers](https://aka.ms/AzureMapsPricingTier).\n\nThe Data Update API allows the caller to update a previously uploaded data content.\n\nYou can use this API in a scenario like adding or removing geofences to or from an existing collection of geofences. \nGeofences are uploaded using the [Data Upload API](https://docs.microsoft.com/rest/api/maps/data%20v2/uploadpreview), for \nuse in the [Azure Maps Geofencing Service](https://docs.microsoft.com/rest/api/maps/spatial).\n\nPlease note that the Update API will *replace* and *override* the existing data content.\n\n## Submit Update Request\n\nTo update your content you will use a `PUT` request. The request body will contain the new data that will replace \nthe existing data. The `Content-Type` header will be set to the content type of the data, and the path will contain \nthe `udid` of the data to be update.\n\nFor example, to update a collection of geofences that were previously uploaded using the Upload API, place the new \ngeofence content in the request body. Set the `udid` parameter in the path to the `udid` of the data received \npreviously in the upload API response. And set the `Content-Type` header to one of the following media types:\n\n- `application/json`\n- `application/vnd.geo+json`\n- `application/octet-stream`\n\nHere's a sample request body for updating a simple Geofence. It's represented as a circle geometry using a center \npoint and a radius. The sample below is in `GeoJSON`:\n\n```json\n{\n \"type\": \"FeatureCollection\",\n \"features\": [{\n \"type\": \"Feature\",\n \"geometry\": {\n \"type\": \"Point\",\n \"coordinates\": [-122.126986, 47.639754]\n },\n \"properties\": {\n \"geometryId\": \"001\",\n \"radius\": 500\n }\n }]\n}\n```\n\nThe previously uploaded geofence had a radius of 100m. The above request will update it to 500m.\n\nThe Data Update API performs a \n[long-running request](https://aka.ms/am-creator-lrt-v2).\n\n## Data Update Limits\n\nPlease, be aware that currently every Azure Maps account has a [data storage limit](https://docs.microsoft.com/en-us/azure/azure-resource-manager/management/azure-subscription-service-limits#azure-maps-limits). \nOnce the storage limit is reached, all the new upload API calls will return a `409 Conflict` http error response. \nYou can always use the [Data Delete API](https://docs.microsoft.com/rest/api/maps/data%20v2/deletepreview) to \ndelete old/unused content and create space for new uploads.", + "operationId": "Data_UpdatePreview", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Update previously uploaded GeoJSON data containing geometries that represent a collection of geofences": { + "$ref": "./examples/Update.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/Udid" + }, + { + "$ref": "#/parameters/Description" + }, + { + "name": "UpdateContent", + "in": "body", + "description": "The new content that will update/replace the previously uploaded content.", + "required": true, + "schema": { + "type": "object" + } + } + ], + "responses": { + "200": { + "description": "Data update failed. The uploaded content did not satisfy all the validation checks. The response body contains all the errors that were encountered.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "202": { + "$ref": "#/responses/202Accepted" + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + }, + "get": { + "x-publish": true, + "description": "**Applies to:** see pricing [tiers](https://aka.ms/AzureMapsPricingTier).\n\nThis API allows the caller to download a previously uploaded data content.
    \nYou can use this API in a scenario like downloading an existing collection of geofences uploaded previously using the [Data Upload API](https://docs.microsoft.com/en-us/rest/api/maps/data%20v2/uploadpreview) for use in our [Azure Maps Geofencing Service](https://docs.microsoft.com/en-us/rest/api/maps/spatial). \n\n\n### Submit Download Request\n\nTo download your content you will use a `GET` request where the path will contain the `udid` of the data to download. Optionally, you can also pass in an `Accept` header to specify a preference for the `Content-Type` of the data response.
    \nFor example, to download a collection of geofences previously uploaded using the Upload API, set the `udid` parameter in the path to the `udid` of the data received previously in the upload API response and set the `Accept` header to either one of the following media types: \n \n - `application/json`\n - `application/vnd.geo+json`\n - `application/octet-stream`\n\n\n### Download Data Response\n\nThe Download API will return a HTTP `200 OK` response if the data resource with the passed-in `udid` is found, where the response body will contain the content of the data resource.
    \nA HTTP `400 Bad Request` error response will be returned if the data resource with the passed-in `udid` is not found.
    \n\nHere's a sample response body for a simple geofence represented in `GeoJSON` uploaded previously using the Upload API:\n
    \n\n```json\n{\n \"type\": \"FeatureCollection\",\n \"features\": [{\n \"type\": \"Feature\",\n \"geometry\": {\n \"type\": \"Point\",\n \"coordinates\": [-122.126986, 47.639754]\n },\n \"properties\": {\n \"geometryId\": \"001\",\n \"radius\": 500\n }\n }]\n}\n```", + "operationId": "Data_DownloadPreview", + "x-ms-examples": { + "Download previously uploaded GeoJSON data containing geometries that represent a collection of geofences": { + "$ref": "./examples/Download.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/Udid" + } + ], + "responses": { + "200": { + "description": "Data download request completed successfully. The response body will contain the content for the passed in `udid`.", + "schema": { + "$ref": "#/definitions/MapDataDownloadResponse" + }, + "headers": { + "Content-Type": { + "type": "string", + "description": "The content-type for the Download API response." + } + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + }, + "delete": { + "x-publish": true, + "description": "**Applies to:** see pricing [tiers](https://aka.ms/AzureMapsPricingTier).\n\nThis API allows the caller to delete a previously uploaded data content.
    \nYou can use this API in a scenario like removing geofences previously uploaded using the [Data Upload API](https://docs.microsoft.com/en-us/rest/api/maps/data%20v2/uploadpreview) for use in our [Azure Maps Geofencing Service](https://docs.microsoft.com/en-us/rest/api/maps/spatial). You can also use this API to delete old/unused uploaded content and create space for new content.\n\n\n### Submit Delete Request\n\nTo delete your content you will issue a `DELETE` request where the path will contain the `udid` of the data to delete.
    \nFor example, to delete a collection of geofences previously uploaded using the Upload API, set the `udid` parameter in the path to the `udid` of the data received previously in the upload API response. \n\n\n### Delete Data Response\n\nThe Data Delete API returns a HTTP `204 No Content` response with an empty body, if the data resource was deleted successfully.
    \nA HTTP `400 Bad Request` error response will be returned if the data resource with the passed-in `udid` is not found. ", + "operationId": "Data_DeletePreview", + "x-ms-examples": { + "Delete previously uploaded GeoJSON data containing geometries that represent a collection of geofences": { + "$ref": "./examples/Delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/Udid" + } + ], + "responses": { + "204": { + "description": "Data delete request completed successfully. The content for `udid` was deleted on the server." + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/mapData/operations/{operationId}": { + "get": { + "description": "This path will be obtained from a call to POST /mapData. While in progress, an http200 will be returned with no extra headers - followed by an http200 with Resource-Location header once completed.", + "operationId": "Data_GetOperationPreview", + "x-ms-examples": { + "Get the status of an operation which is still running": { + "$ref": "./examples/GetOperationStillRunning.json" + }, + "Get the status of an operation which has finished successfully": { + "$ref": "./examples/GetOperation.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/DataUploadOperationId" + } + ], + "responses": { + "200": { + "$ref": "#/responses/200Async" + }, + "400": { + "$ref": "#/responses/400" + } + } + } + } + }, + "definitions": { + "ODataErrorResponse": { + "type": "object", + "description": "This response object is returned when an error occurs in the Maps API.", + "properties": { + "error": { + "$ref": "#/definitions/ODataError" + } + } + }, + "ODataError": { + "type": "object", + "description": "This object is returned when an error occurs in the Maps API.", + "properties": { + "code": { + "type": "string", + "readOnly": true, + "description": "The ODataError code." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "If available, a human readable description of the error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ODataError" + } + }, + "target": { + "type": "string", + "readOnly": true, + "description": "If available, the target causing the error." + } + } + }, + "LongRunningOperationResult": { + "description": "The response model for a Long-Running Operations API.", + "type": "object", + "properties": { + "operationId": { + "description": "The Id for this long-running operation.", + "type": "string" + }, + "status": { + "description": "The status state of the request.", + "type": "string", + "enum": [ + "NotStarted", + "Running", + "Failed", + "Succeeded" + ], + "x-ms-enum": { + "name": "type", + "modelAsString": true, + "values": [ + { + "value": "NotStarted", + "description": "The request has not started processing yet." + }, + { + "value": "Running", + "description": "The request has started processing." + }, + { + "value": "Failed", + "description": "The request has one or more failures." + }, + { + "value": "Succeeded", + "description": "The request has successfully completed." + } + ] + }, + "readOnly": true + }, + "created": { + "description": "The created timestamp.", + "type": "string", + "readOnly": true + }, + "error": { + "$ref": "#/definitions/ODataError" + }, + "warning": { + "$ref": "#/definitions/ODataError" + } + } + }, + "MapDataDownloadResponse": { + "description": "The response model for the Data Download API. The response body will contain the content for the passed in `udid`.", + "type": "object" + }, + "MapDataListResponse": { + "description": "The response model for the Data List API. Returns a list of all the previously uploaded data.", + "type": "object", + "properties": { + "mapDataList": { + "description": "A list of all the previously uploaded data.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/MapDataDetailInfo" + } + } + } + }, + "MapDataDetailInfo": { + "description": "Detail information for the data.", + "type": "object", + "properties": { + "udid": { + "description": "The unique data id for the data.", + "type": "string", + "readOnly": true + }, + "location": { + "description": "The location of the data. Execute a HTTP `GET` on this location to download the data.", + "type": "string", + "readOnly": true + }, + "sizeInBytes": { + "description": "The size of the content in bytes.", + "type": "integer", + "format": "int64", + "readOnly": true + }, + "uploadStatus": { + "description": "The current upload status of the content.", + "type": "string", + "readOnly": true + }, + "dataFormat": { + "description": "", + "type": "string", + "readOnly": true + }, + "description": { + "description": "", + "type": "string", + "readOnly": true + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Data/preview/2.0/examples/Delete.json b/specification/maps/data-plane/Microsoft.Maps/Data/preview/2.0/examples/Delete.json new file mode 100644 index 000000000000..b7c4a889fc7d --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Data/preview/2.0/examples/Delete.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "geography": "us", + "api-version": "2.0", + "subscription-key": "[subscription-key]", + "udid": "25084fb7-307a-4720-8f91-7952a0b91012" + }, + "responses": { + "204": {}, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Data/preview/2.0/examples/Download.json b/specification/maps/data-plane/Microsoft.Maps/Data/preview/2.0/examples/Download.json new file mode 100644 index 000000000000..4221397b08d7 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Data/preview/2.0/examples/Download.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "geography": "us", + "api-version": "2.0", + "subscription-key": "[subscription-key]", + "udid": "25084fb7-307a-4720-8f91-7952a0b91012" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "type": "FeatureCollection", + "features": [ + { + "type": "Feature", + "geometry": { + "type": "Point", + "coordinates": [ + -122.126986, + 47.639754 + ] + }, + "properties": { + "geometryId": "001", + "radius": 500 + } + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Data/preview/2.0/examples/GetOperation.json b/specification/maps/data-plane/Microsoft.Maps/Data/preview/2.0/examples/GetOperation.json new file mode 100644 index 000000000000..2bef2e8eb555 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Data/preview/2.0/examples/GetOperation.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "geography": "us", + "api-version": "2.0", + "subscription-key": "[subscription-key]", + "operationId": "8b1288fa-1958-4a2b-b68e-13a7i5af7d7c" + }, + "responses": { + "200": { + "body": { + "operationId": "8b1288fa-1958-4a2b-b68e-13a7i5af7d7c", + "created": "2021-04-20T22:43:14.9401559+00:00", + "status": "Succeeded" + }, + "headers": { + "Resource-Location": "https://us.atlas.microsoft.com/mapData/3e36b996-f6d1-b068-0fcb-dd6b014c3447?api-version=2.0" + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Data/preview/2.0/examples/GetOperationStillRunning.json b/specification/maps/data-plane/Microsoft.Maps/Data/preview/2.0/examples/GetOperationStillRunning.json new file mode 100644 index 000000000000..4a0559be1343 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Data/preview/2.0/examples/GetOperationStillRunning.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "geography": "us", + "api-version": "2.0", + "subscription-key": "[subscription-key]", + "operationId": "8b1288fa-1958-4a2b-b68e-13a7i5af7d7c" + }, + "responses": { + "200": { + "body": { + "operationId": "8b1288fa-1958-4a2b-b68e-13a7i5af7d7c", + "created": "2021-04-23T19:14:03.2452596+00:00", + "status": "Running" + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Data/preview/2.0/examples/List.json b/specification/maps/data-plane/Microsoft.Maps/Data/preview/2.0/examples/List.json new file mode 100644 index 000000000000..12b929a1bca9 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Data/preview/2.0/examples/List.json @@ -0,0 +1,78 @@ +{ + "parameters": { + "geography": "us", + "api-version": "2.0", + "subscription-key": "[subscription-key]" + }, + "responses": { + "200": { + "body": { + "mapDataList": [ + { + "udid": "f6495f62-94f8-0ec2-c252-45626f82fcb2", + "location": "https://us.atlas.microsoft.com/mapData/f6495f62-94f8-0ec2-c252-45626f82fcb2?api-version=1.0", + "sizeInBytes": 29920, + "uploadStatus": "Completed" + }, + { + "udid": "8b1288fa-1958-4a2b-b68e-13a7i5af7d7c", + "location": "https://us.atlas.microsoft.com/mapData/8b1288fa-1958-4a2b-b68e-13a7i5af7d7c?api-version=1.0", + "sizeInBytes": 1339, + "uploadStatus": "Completed" + }, + { + "udid": "7c1288fa-2058-4a1b-b68f-13a6h5af7d7c", + "location": "https://us.atlas.microsoft.com/mapData/7c1288fa-2058-4a1b-b68f-13a6h5af7d7c?api-version=1.0", + "sizeInBytes": 1650, + "uploadStatus": "Pending" + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Data/preview/2.0/examples/Update.json b/specification/maps/data-plane/Microsoft.Maps/Data/preview/2.0/examples/Update.json new file mode 100644 index 000000000000..daa93e7fb031 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Data/preview/2.0/examples/Update.json @@ -0,0 +1,89 @@ +{ + "parameters": { + "geography": "us", + "api-version": "2.0", + "subscription-key": "[subscription-key]", + "udid": "25084fb7-307a-4720-8f91-7952a0b91012", + "UpdateContent": { + "type": "FeatureCollection", + "features": [ + { + "type": "Feature", + "geometry": { + "type": "Point", + "coordinates": [ + -122.126986, + 47.639754 + ] + }, + "properties": { + "geometryId": "001", + "radius": 500 + } + } + ] + } + }, + "responses": { + "202": { + "headers": { + "Operation-Location": "https://us.atlas.microsoft.com/mapData/operations/{operationId}?api-version=1.0", + "Access-Control-Expose-Headers": "Operation-Location" + } + }, + "200": { + "headers": {}, + "body": { + "error": { + "code": "400 Bad Request", + "message": "Upload request failed. Your data has been removed as we encountered the following problems with it: Map data is not a valid GeoJSON geometry." + } + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Data/preview/2.0/examples/Upload.json b/specification/maps/data-plane/Microsoft.Maps/Data/preview/2.0/examples/Upload.json new file mode 100644 index 000000000000..b6918a7d2d40 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Data/preview/2.0/examples/Upload.json @@ -0,0 +1,89 @@ +{ + "parameters": { + "geography": "us", + "api-version": "2.0", + "subscription-key": "[subscription-key]", + "dataFormat": "geojson", + "UploadContent": { + "type": "FeatureCollection", + "features": [ + { + "type": "Feature", + "geometry": { + "type": "Point", + "coordinates": [ + -122.126986, + 47.639754 + ] + }, + "properties": { + "geometryId": "001", + "radius": 500 + } + } + ] + } + }, + "responses": { + "202": { + "headers": { + "Operation-Location": "https://us.atlas.microsoft.com/mapData/operations/{udid}?api-version=2.0", + "Access-Control-Expose-Headers": "Operation-Location" + } + }, + "200": { + "headers": {}, + "body": { + "error": { + "code": "400 Bad Request", + "message": "Upload request failed. Your data has been removed as we encountered the following problems with it: Map data is not a valid GeoJSON geometry." + } + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/1.0/dataset.json b/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/1.0/dataset.json index 6f2f381712b8..629ca82f3036 100644 --- a/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/1.0/dataset.json +++ b/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/1.0/dataset.json @@ -5,7 +5,14 @@ "version": "1.0", "description": "APIs for managing datasets from uploaded data in Azure Maps." }, - "host": "atlas.microsoft.com", + "x-ms-parameterized-host": { + "hostTemplate": "{geography}.atlas.microsoft.com", + "parameters": [ + { + "$ref": "#/parameters/GeographicResourceLocation" + } + ] + }, "schemes": [ "https" ], @@ -105,6 +112,33 @@ } }, "parameters": { + "GeographicResourceLocation": { + "name": "geography", + "description": "This parameter specifies where the Azure Maps Creator resource is located. Valid values are us and eu.", + "in": "path", + "required": true, + "type": "string", + "default": "us", + "enum": [ + "us", + "eu" + ], + "x-ms-enum": { + "name": "GeographicResourceLocation", + "modelAsString": true, + "values": [ + { + "value": "us", + "description": "Used to access an Azure Maps Creator resource in the United States" + }, + { + "value": "eu", + "description": "Used to access an Azure Maps Creator resource in Europe" + } + ] + }, + "x-ms-parameter-location": "client" + }, "SubscriptionKey": { "name": "subscription-key", "description": "One of the Azure Maps keys provided from an Azure Map Account. Please refer to this [article](https://docs.microsoft.com/azure/azure-maps/how-to-manage-authentication) for details on how to manage authentication.", @@ -164,7 +198,7 @@ ], "x-ms-enum": { "name": "DatasetType", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "facility", @@ -193,7 +227,7 @@ ], "x-ms-enum": { "name": "ImportDataType", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "fixture", @@ -225,7 +259,7 @@ "/dataset/create": { "post": { "x-publish": true, - "description": "**Dataset Create API**\n\n**Applies to:** S1 pricing tier.\n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API \nand SDK. The Dataset APIs are part of Creator. This API allows the caller to create a dataset from data that \nwas uploaded to the Azure Maps Data Service.\n\nYou can use this API in a scenario like uploading a DWG zip package for a building, converting the zip package using \nthe Azure Maps Conversion Service, creating a dataset from the converted zip package. The created dataset can be \nused to create tilesets using the Azure Maps Tileset Service and can be queried via the Azure Maps WFS Service.\n\n## Submit Create Request\n\nTo create your dataset, you will use a `POST` request where the `conversionId` query parameter is an id that represents \nthe converted DWG zip package, the `type` parameter will describe the data type to use for the dataset, the `datasetId`\nparameter will describe if the provided data should be appended to a current dataset and, optionally, the \n`description` query parameter will contain a description (if description is not provided a default description will be \ngiven).\n\nThe Create API is a \n[long-running request](https://aka.ms/am-creator-lrt).", + "description": "**Dataset Create API**\n\n**Applies to**: see pricing [tiers](https://azure.microsoft.com/en-us/pricing/details/azure-maps/).\n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API \nand SDK. The Dataset APIs are part of Creator. This API allows the caller to create a dataset from data that \nwas uploaded to the Azure Maps Data Service.\n\nYou can use this API in a scenario like uploading a DWG zip package for a building, converting the zip package using \nthe Azure Maps Conversion Service, creating a dataset from the converted zip package. The created dataset can be \nused to create tilesets using the Azure Maps Tileset Service and can be queried via the Azure Maps WFS Service.\n\n## Submit Create Request\n\nTo create your dataset, you will use a `POST` request where the `conversionId` query parameter is an id that represents \nthe converted DWG zip package, the `type` parameter will describe the data type to use for the dataset, the `datasetId`\nparameter will describe if the provided data should be appended to a current dataset and, optionally, the \n`description` query parameter will contain a description (if description is not provided a default description will be \ngiven).\n\nThe Create API is a \n[long-running request](https://aka.ms/am-creator-lrt).", "operationId": "Dataset_CreatePreview", "x-ms-long-running-operation": true, "x-ms-long-running-operation-options": { @@ -287,7 +321,7 @@ "/dataset/import/{datasetId}": { "patch": { "x-publish": true, - "description": "**Dataset Import API**\n\n**Applies to:** S1 pricing tier.\n
    \n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API \nand SDK. The Dataset APIs are part of Creator. This API allows the caller to bulk import data into a dataset \nfrom data that was uploaded to the Azure Maps Data service.
    \n\n### Submit Import Request\n\nTo import data into your dataset, you will use a `PATCH` request where the `datasetId` query parameter is the \ndataset you want to import your data into, the `udid` query parameter is the data you want to import, and the `type` \nparameter will describe the data type to use for the import data.
    \n\nThe Import API is a \n[long-running request](https://aka.ms/am-creator-lrt).", + "description": "**Dataset Import API**\n\n**Applies to**: see pricing [tiers](https://azure.microsoft.com/en-us/pricing/details/azure-maps/).\n
    \n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API \nand SDK. The Dataset APIs are part of Creator. This API allows the caller to bulk import data into a dataset \nfrom data that was uploaded to the Azure Maps Data service.
    \n\n### Submit Import Request\n\nTo import data into your dataset, you will use a `PATCH` request where the `datasetId` query parameter is the \ndataset you want to import your data into, the `udid` query parameter is the data you want to import, and the `type` \nparameter will describe the data type to use for the import data.
    \n\nThe Import API is a \n[long-running request](https://aka.ms/am-creator-lrt).", "operationId": "Dataset_ImportPreview", "x-ms-examples": { "Import data into previously created dataset": { @@ -339,7 +373,7 @@ "/dataset/{datasetId}": { "delete": { "x-publish": true, - "description": "**Dataset Delete API**\n\n**Applies to:** S1 pricing tier.\n
    \n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. The Dataset APIs are part of Creator.\nThis API allows the caller to delete a previously created dataset.
    \nYou can also use this API to delete old/unused datasets to create space for new Creator content.\n\n\n### Submit Delete Request\n\nTo delete your content you will issue a `DELETE` request where the path will contain the `datasetId` of the dataset to delete.
    \n\n\n### Delete Data Response\n\nThe Delete API returns a HTTP `204 No Content` response if the dataset resource was deleted successfully.
    ", + "description": "**Dataset Delete API**\n\n**Applies to**: see pricing [tiers](https://azure.microsoft.com/en-us/pricing/details/azure-maps/).\n
    \n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. The Dataset APIs are part of Creator.\nThis API allows the caller to delete a previously created dataset.
    \nYou can also use this API to delete old/unused datasets to create space for new Creator content.\n\n\n### Submit Delete Request\n\nTo delete your content you will issue a `DELETE` request where the path will contain the `datasetId` of the dataset to delete.
    \n\n\n### Delete Data Response\n\nThe Delete API returns a HTTP `204 No Content` response if the dataset resource was deleted successfully.
    ", "operationId": "Dataset_DeletePreview", "x-ms-examples": { "Delete previously created dataset": { @@ -385,7 +419,7 @@ "/dataset": { "get": { "x-publish": true, - "description": "**Dataset List API**\n\n**Applies to:** S1 pricing tier.\n
    \n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. The Dataset APIs are part of Creator.\nThis API allows the caller to fetch a list of all previously successfully created datasets.\n\n\n### Submit List Request\n\nTo list all your datasets, you will issue a `GET` request with no additional parameters.
    \n\n\n### List Data Response\n\nThe List API returns the complete list of all datasets in `json` format. The response contains the following fields (if they are not null or empty):\n > created - The timestamp the dataset was created.\n > datasetId - The id for the dataset.\n > description - The description for the dataset.\n > datasetSources - The source data that was used when the create request was issued.\n\nThe `datasetSources` describes the source data that was used when the create request was issued and contains the following elements (if they are not null or empty):\n > conversionIds - The list of `conversionId` (null if none were provided).\n > udids - The list of `udid` (null if none were provided).\n > appendDatasetId - The `datasetId` that was used for an append operation (null if none was used).\n > type - The type of data stored in the dataset that was created.\n\nHere's a sample response returning the `timestamp`, `datasetId`, `description`, and `datasetSources` of 3 dataset resources:\n\n
    \n\n```json\n{\n \"datasets\": [\n {\n \"timestamp\": \"2020-01-01T22:50:48+00:00\",\n \"datasetId\": \"f6495f62-94f8-0ec2-c252-45626f82fcb2\",\n \"description\": \"Some description or comment for the dataset.\",\n \"datasetSources\": {\n \"conversionIds\": [\n \"15d21452-c9bb-27b6-5e79-743ca5c3205d\"\n ],\n \"type\": \"facility\"\n },\n \"status\": \"Succeeded\"\n },\n {\n \"timestamp\": \"2020-01-01T22:57:53+00:00\",\n \"datasetId\": \"8b1288fa-1958-4a2b-b68e-13a7i5af7d7c\",\n \"description\": \"Create from upload '0c1288fa-2058-4a1b-b68d-13a5f5af7d7c'.\",\n \"datasetSources\": {\n \"udids\": [\n \"0c1288fa-2058-4a1b-b68d-13a5f5af7d7c\"\n ],\n \"type\": \"facility\"\n },\n \"status\": \"Succeeded\"\n },\n {\n \"timestamp\": \"2020-01-01T20:39:36+00:00\",\n \"datasetId\": \"7c1288fa-2058-4a1b-b68f-13a6h5af7d7c\",\n \"description\": \"Some other description or comment for the dataset.\",\n \"datasetSources\": {\n \"conversionIds\": [\n \"15d21452-c9bb-27b6-5e79-743ca5c3205d\"\n ],\n \"appendDatasetId\": \"8b1288fa-1958-4a2b-b68e-13a7i5af7d7c\",\n \"type\": \"facility\"\n },\n \"status\": \"Succeeded\"\n }\n ]\n}\n```\n
    ", + "description": "**Dataset List API**\n\n**Applies to**: see pricing [tiers](https://azure.microsoft.com/en-us/pricing/details/azure-maps/).\n
    \n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. The Dataset APIs are part of Creator.\nThis API allows the caller to fetch a list of all previously successfully created datasets.\n\n\n### Submit List Request\n\nTo list all your datasets, you will issue a `GET` request with no additional parameters.
    \n\n\n### List Data Response\n\nThe List API returns the complete list of all datasets in `json` format. The response contains the following fields (if they are not null or empty):\n > created - The timestamp the dataset was created.\n > datasetId - The id for the dataset.\n > description - The description for the dataset.\n > datasetSources - The source data that was used when the create request was issued.\n\nThe `datasetSources` describes the source data that was used when the create request was issued and contains the following elements (if they are not null or empty):\n > conversionIds - The list of `conversionId` (null if none were provided).\n > udids - The list of `udid` (null if none were provided).\n > appendDatasetId - The `datasetId` that was used for an append operation (null if none was used).\n > type - The type of data stored in the dataset that was created.\n\nHere's a sample response returning the `timestamp`, `datasetId`, `description`, and `datasetSources` of 3 dataset resources:\n\n
    \n\n```json\n{\n \"datasets\": [\n {\n \"timestamp\": \"2020-01-01T22:50:48+00:00\",\n \"datasetId\": \"f6495f62-94f8-0ec2-c252-45626f82fcb2\",\n \"description\": \"Some description or comment for the dataset.\",\n \"datasetSources\": {\n \"conversionIds\": [\n \"15d21452-c9bb-27b6-5e79-743ca5c3205d\"\n ],\n \"type\": \"facility\"\n },\n \"status\": \"Succeeded\"\n },\n {\n \"timestamp\": \"2020-01-01T22:57:53+00:00\",\n \"datasetId\": \"8b1288fa-1958-4a2b-b68e-13a7i5af7d7c\",\n \"description\": \"Create from upload '0c1288fa-2058-4a1b-b68d-13a5f5af7d7c'.\",\n \"datasetSources\": {\n \"udids\": [\n \"0c1288fa-2058-4a1b-b68d-13a5f5af7d7c\"\n ],\n \"type\": \"facility\"\n },\n \"status\": \"Succeeded\"\n },\n {\n \"timestamp\": \"2020-01-01T20:39:36+00:00\",\n \"datasetId\": \"7c1288fa-2058-4a1b-b68f-13a6h5af7d7c\",\n \"description\": \"Some other description or comment for the dataset.\",\n \"datasetSources\": {\n \"conversionIds\": [\n \"15d21452-c9bb-27b6-5e79-743ca5c3205d\"\n ],\n \"appendDatasetId\": \"8b1288fa-1958-4a2b-b68e-13a7i5af7d7c\",\n \"type\": \"facility\"\n },\n \"status\": \"Succeeded\"\n }\n ]\n}\n```\n
    ", "operationId": "Dataset_ListPreview", "x-ms-examples": { "List all the previously created datasets": { @@ -482,7 +516,7 @@ ], "x-ms-enum": { "name": "type", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "NotStarted", diff --git a/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/1.0/examples/Dataset_Create.json b/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/1.0/examples/Dataset_Create.json index 6d8513252576..e59db5d0820e 100644 --- a/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/1.0/examples/Dataset_Create.json +++ b/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/1.0/examples/Dataset_Create.json @@ -1,5 +1,6 @@ { "parameters": { + "geography": "us", "api-version": "1.0", "subscription-key": "[subscription-key]", "conversionId": "[conversionId]", @@ -8,19 +9,19 @@ "responses": { "201": { "headers": { - "Location": "https://atlas.microsoft.com/dataset/{datasetId}?api-version=1.0", + "Location": "https://us.atlas.microsoft.com/dataset/{datasetId}?api-version=1.0", "Access-Control-Expose-Headers": "Location" }, "body": { "operationId": "{operationId}", "status": "Succeeded", "created": "2020-01-02 1:02:03 AM +00:00", - "resourceLocation": "https://atlas.microsoft.com/dataset/{datasetId}?api-version=1.0" + "resourceLocation": "https://us.atlas.microsoft.com/dataset/{datasetId}?api-version=1.0" } }, "202": { "headers": { - "Location": "https://atlas.microsoft.com/dataset/operations/{operationId}?api-version=1.0", + "Location": "https://us.atlas.microsoft.com/dataset/operations/{operationId}?api-version=1.0", "Access-Control-Expose-Headers": "Location" } }, diff --git a/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/1.0/examples/Dataset_Delete.json b/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/1.0/examples/Dataset_Delete.json index 3ad9cf60de1c..865652b9cbd8 100644 --- a/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/1.0/examples/Dataset_Delete.json +++ b/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/1.0/examples/Dataset_Delete.json @@ -1,5 +1,6 @@ { "parameters": { + "geography": "us", "api-version": "1.0", "subscription-key": "[subscription-key]", "datasetId": "[datasetId]" diff --git a/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/1.0/examples/Dataset_Import.json b/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/1.0/examples/Dataset_Import.json index fa4cb9ca8950..074bd5c20371 100644 --- a/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/1.0/examples/Dataset_Import.json +++ b/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/1.0/examples/Dataset_Import.json @@ -1,5 +1,6 @@ { "parameters": { + "geography": "us", "api-version": "1.0", "subscription-key": "[subscription-key]", "datasetId": "[conversionId]", @@ -13,12 +14,12 @@ "operationId": "{operationId}", "status": "Succeeded", "created": "2020-01-02 03:04:05 AM +00:00", - "resourceLocation": "https://atlas.microsoft.com/dataset/{datasetId}?api-version=1.0" + "resourceLocation": "https://us.atlas.microsoft.com/dataset/{datasetId}?api-version=1.0" } }, "202": { "headers": { - "Location": "https://atlas.microsoft.com/dataset/operations/{operationId}?api-version=1.0", + "Location": "https://us.atlas.microsoft.com/dataset/operations/{operationId}?api-version=1.0", "Access-Control-Expose-Headers": "Location" } }, diff --git a/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/1.0/examples/Dataset_List.json b/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/1.0/examples/Dataset_List.json index 4937c40e2e95..70a28edebb38 100644 --- a/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/1.0/examples/Dataset_List.json +++ b/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/1.0/examples/Dataset_List.json @@ -1,5 +1,6 @@ { "parameters": { + "geography": "us", "api-version": "1.0", "subscription-key": "[subscription-key]" }, diff --git a/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/2.0/dataset.json b/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/2.0/dataset.json new file mode 100644 index 000000000000..28318cb9aa31 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/2.0/dataset.json @@ -0,0 +1,570 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Maps Dataset Service", + "version": "2.0", + "description": "APIs for managing datasets from uploaded data in Azure Maps." + }, + "x-ms-parameterized-host": { + "hostTemplate": "{geography}.atlas.microsoft.com", + "parameters": [ + { + "$ref": "#/parameters/GeographicResourceLocation" + } + ] + }, + "schemes": [ + "https" + ], + "consumes": [], + "produces": [ + "application/json", + "application/xml" + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "These are the [Azure Active Directory OAuth2](https://docs.microsoft.com/en-us/azure/active-directory/develop/v1-overview) Flows. When paired with [Azure Role Based Access](https://docs.microsoft.com/en-us/azure/role-based-access-control/overview) control it can be used to control access to Azure Maps REST APIs. Azure Role based access controls are used to designate access to one or more Azure Maps resource account or sub-resources. Any user, group, or service principal can be granted access via a built in role or a custom role composed of one or more permissions to Azure Maps REST APIs.\n\nTo implement scenarios we recommend viewing [authentication concepts](https://aka.ms/amauth). In summary, this security definition provides a solution for modeling application(s) via objects capable of access control on specific APIs and scopes.\n\n#### Note\n* This security definition **requires** the use of the `x-ms-client-id` header to indicate which Azure Maps resource the application is requesting access to. This can be acquired from the [Maps management API](https://aka.ms/amauthdetails).\n* The `Authorization URL` is specific to the Azure public cloud instance. Sovereign clouds have unique Authorization URLs and Azure Active directory configurations. \n* The Azure role based access control is configured from the [Azure management plane](https://aka.ms/amrbac) via Azure portal, Powershell, CLI, Azure SDKs, or REST APIs.\n* Usage of the [Azure Maps Web SDK](https://aka.ms/amaadmc) allows for configuration based setup of an application for multiple use cases.\n* Currently Azure Active Directory [v1.0](https://docs.microsoft.com/en-us/azure/active-directory/develop/azure-ad-endpoint-comparison) tokens are supported.", + "scopes": { + "user_impersonation": "Impersonates a user's Azure Active Directory account." + } + }, + "apiKeyQuery": { + "type": "apiKey", + "description": "This is a shared key which is provisioned when creating an [Azure Maps resource](https://aka.ms/amauth) through the Azure management plane via Azure portal, Powershell, CLI, Azure SDKs, or REST APIs. With this key, any application is authorized to access all REST APIs. In other words, these can currently be treated as master keys to the account which they are issued for. For publicly exposed applications our recommendation is to use server to server access of Azure Maps REST APIs where this key can be securely stored.", + "name": "subscription-key", + "in": "query" + } + }, + "security": [ + { + "azure_auth": [] + }, + { + "apiKeyQuery": [] + } + ], + "responses": { + "400": { + "description": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "401": { + "description": "Access denied due to invalid subscription key or invalid Azure Active Directory bearer token. Make sure to provide a valid key for an active Azure subscription and Maps resource. Otherwise, verify the [WWW-Authenticate](https://tools.ietf.org/html/rfc6750#section-3.1) header for error code and description of the provided AAD bearer token.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + }, + "headers": { + "WWW-Authenticate": { + "type": "string", + "description": "Bearer realm=\"https://atlas.microsoft.com/\", error=\"invalid_token\", error_description=\"The access token expired\"" + } + } + }, + "403": { + "description": "Permission, capacity, or authentication issues.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "404": { + "description": "Not Found: the requested resource could not be found, but it may be available again in the future.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "500": { + "description": "An error occurred while processing the request. Please try again later.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "200Async": { + "description": "The operation is running or complete. If the operation was successful, use the Resource-Location header to obtain the path to the result.", + "schema": { + "$ref": "#/definitions/LongRunningOperationResult" + }, + "headers": { + "Resource-Location": { + "type": "string", + "description": "If successful, a URI where details on the newly created resource can be found." + } + } + }, + "202Accepted": { + "description": "Request Accepted: The request has been accepted for processing. Please use the URL in the Operation-Location Header to obtain status.", + "headers": { + "Operation-Location": { + "type": "string", + "description": "New URL to check for the results of the long running process." + } + } + } + }, + "parameters": { + "GeographicResourceLocation": { + "name": "geography", + "description": "This parameter specifies where the Azure Maps Creator resource is located. Valid values are us and eu.", + "in": "path", + "required": true, + "type": "string", + "default": "us", + "enum": [ + "us", + "eu" + ], + "x-ms-enum": { + "name": "GeographicResourceLocation", + "modelAsString": true, + "values": [ + { + "value": "us", + "description": "Used to access an Azure Maps Creator resource in the United States" + }, + { + "value": "eu", + "description": "Used to access an Azure Maps Creator resource in Europe" + } + ] + }, + "x-ms-parameter-location": "client" + }, + "SubscriptionKey": { + "name": "subscription-key", + "description": "One of the Azure Maps keys provided from an Azure Map Account. Please refer to this [article](https://docs.microsoft.com/azure/azure-maps/how-to-manage-authentication) for details on how to manage authentication.", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "client" + }, + "ApiVersion": { + "name": "api-version", + "description": "Version number of Azure Maps API. Current version is 2.0", + "type": "string", + "in": "query", + "required": true, + "default": "2.0", + "x-ms-parameter-location": "client" + }, + "ConversionIdQuery": { + "name": "conversionId", + "description": "The unique ID used to create the dataset. The `conversionId` must have been obtained from a successful call to the Conversion Service Convert API and may be provided with multiple query parameters with same name (if more than one is provided).", + "type": "string", + "in": "query", + "required": true, + "x-ms-parameter-location": "method" + }, + "DescriptionDataset": { + "name": "description", + "description": "The description to be given to the dataset.", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "method" + }, + "DatasetId": { + "name": "datasetId", + "type": "string", + "in": "path", + "description": "The identifier for the dataset to query from.", + "required": true, + "x-ms-parameter-location": "method" + }, + "AppendDatasetId": { + "name": "datasetId", + "type": "string", + "in": "query", + "description": "The ID for the dataset to append with. The dataset must originate from a previous dataset creation call that matches the datasetId", + "required": false, + "x-ms-parameter-location": "method" + }, + "DatasetOperationId": { + "name": "operationId", + "type": "string", + "in": "path", + "description": "The ID to query the status for the dataset create/import request.", + "required": true, + "x-ms-parameter-location": "method" + } + }, + "paths": { + "/datasets": { + "post": { + "x-publish": true, + "description": "**Applies to:** see pricing [tiers](https://aka.ms/AzureMapsPricingTier).\n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. [This](https://docs.microsoft.com/azure/azure-maps/creator-indoor-maps) article introduces concepts and tools that apply to Azure Maps Creator.\n\n This API allows the caller to create a dataset from data that was uploaded to the Azure Maps Data Service and converted using the Azure Maps Conversion Service.\n\nYou can use this API in a scenario like uploading a DWG zip package for a building, converting the zip package using the Azure Maps Conversion Service, and creating a dataset from the converted zip package. The created dataset can be used to create tilesets using the Azure Maps Tileset Service and can be queried via the Azure Maps WFS Service.\n\n### Submit Create Request\n\nTo create your dataset, you will use a `POST` request where the `conversionId` query parameter is an ID that represents the converted DWG zip package, the `datasetId` parameter will be the ID of a previously created dataset to append with the current dataset and, optionally, the `description` query parameter will contain a description (if description is not provided a default description will be given).\n\nThe Create API is a [long-running request](https://aka.ms/am-creator-lrt-v2).", + "operationId": "Dataset_Create", + "x-ms-examples": { + "Create dataset from a converted CAD file provided by conversionId": { + "$ref": "./examples/Dataset_Create.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ConversionIdQuery" + }, + { + "$ref": "#/parameters/AppendDatasetId" + }, + { + "$ref": "#/parameters/DescriptionDataset" + } + ], + "responses": { + "202": { + "$ref": "#/responses/202Accepted" + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + }, + "get": { + "x-publish": true, + "description": "**Applies to:** see pricing [tiers](https://aka.ms/AzureMapsPricingTier).\n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. [This](https://docs.microsoft.com/azure/azure-maps/creator-indoor-maps) article introduces concepts and tools that apply to Azure Maps Creator.\n\nThis API allows the caller to fetch a list of all previously successfully created datasets.\n\n### Submit List Request\n\nTo list all your datasets, you will issue a `GET` request with no additional parameters.\n\n\n### List Data Response\n\nThe List API returns the complete list of all datasets in `json` format. The response contains the following fields (if they are not null or empty):\n> created - The timestamp the dataset was created.\n> datasetId - The id for the dataset.\n> description - The description for the dataset.\n> datasetSources - The source data that was used when the create request was issued.\n> ontology - The source [ontology](https://docs.microsoft.com/en-us/azure/azure-maps/creator-facility-ontology) that was used in the conversion service for the input data.
    \n\nThe `datasetSources` describes the source data that was used when the create request was issued and contains the following elements (if they are not null or empty):\n\n> conversionIds - The list of `conversionId` (null if none were provided).\n> appendDatasetId - The `datasetId` that was used for an append operation (null if none was used).\n>featureCounts - The counts for each feature type in the dataset.
    \n\nHere's a sample response returning the `timestamp`, `datasetId`, `description`, `datasetSources`, and `ontology` of 3 dataset resources:\n\n\n```json\n{\n \"datasets\": [\n {\n \"timestamp\": \"2020-01-01T22:50:48.123Z\",\n \"datasetId\": \"f6495f62-94f8-0ec2-c252-45626f82fcb2\",\n \"description\": \"Some description or comment for the dataset.\",\n \"datasetSources\": {\n \"conversionIds\": [\n \"15d21452-c9bb-27b6-5e79-743ca5c3205d\"\n ], },\n \"ontology\": \"facility-2.0\",\n \"featureCounts\": {\n \"directoryInfo\": 2,\n \"category\": 10,\n \"facility\": 1,\n \"level\": 3,\n \"unit\": 183,\n \"zone\": 3,\n \"verticalPenetration\": 6,\n \"opening\": 48,\n \"areaElement\": 108\n }\n },\n {\n \"timestamp\": \"2020-01-01T22:57:53.123Z\",\n \"datasetId\": \"8b1288fa-1958-4a2b-b68e-13a7i5af7d7c\",\n \"description\": \"Create from upload '0c1288fa-2058-4a1b-b68d-13a5f5af7d7c'.\",\n \"datasetSources\": {\n \"conversionIds\": [\n \"0c1288fa-2058-4a1b-b68d-13a5f5af7d7c\"\n ],\n \"appendDatasetId\": \"46d1edb6-d29e-4786-9589-dbd4efd7a977\"\n },\n \"ontology\": \"facility-2.0\",\n \"featureCounts\": {\n \"directoryInfo\": 2,\n \"category\": 10,\n \"facility\": 1,\n \"level\": 3,\n \"unit\": 183,\n \"zone\": 3,\n \"verticalPenetration\": 6,\n \"opening\": 48,\n \"areaElement\": 108\n }\n }\n ]\n}\n```", + "operationId": "Dataset_List", + "x-ms-examples": { + "List all the previously created datasets": { + "$ref": "./examples/Dataset_List.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "The dataset request completed successfully. The response body contains the previously created dataset.", + "schema": { + "$ref": "#/definitions/DatasetListResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/datasets/{datasetId}": { + "get": { + "x-publish": true, + "description": "**Applies to:** see pricing [tiers](https://aka.ms/AzureMapsPricingTier).\n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. [This](https://docs.microsoft.com/azure/azure-maps/creator-indoor-maps) article introduces concepts and tools that apply to Azure Maps Creator.\n\nThis API allows the caller to fetch a previously successfully created dataset.\n\n### Submit Get Details Request\n\nTo get the details for a previously created dataset, you will issue a `GET` request with the `datasetId` in the path.\n\n### Get Details Response\n\nThe Get Details API returns the details for a dataset in `json` format. The response contains the following fields (if they are not null or empty):\n> created - The timestamp the dataset was created.\n> datasetId - The id for the dataset.\n> description - The description for the dataset.\n> datasetSources - The source data that was used when the create request was issued.\n> ontology - The source [ontology](https://docs.microsoft.com/en-us/azure/azure-maps/creator-facility-ontology) that was used in the conversion service for the input data.
    \n\nThe `datasetSources` describes the source data that was used when the create request was issued and contains the following elements (if they are not null or empty):\n> conversionIds - The list of `conversionId` (null if none were provided).\n> appendDatasetId - The `datasetId` that was used for an append operation (null if none was used).\n>featureCounts - The counts for each feature type in the dataset.
    \n\nHere's a sample response returning the `timestamp`, `datasetId`, `description`, `datasetSources`, and `ontology` of a dataset resource:\n\n```json\n{\n \"timestamp\": \"2020-01-01T22:50:48.123Z\",\n \"datasetId\": \"f6495f62-94f8-0ec2-c252-45626f82fcb2\",\n \"description\": \"Some description or comment for the dataset.\",\n \"datasetSources\": {\n \"conversionIds\": [\n \"15d21452-c9bb-27b6-5e79-743ca5c3205d\"\n ],\n },\n \"ontology\": \"facility-2.0\",\n \"featureCounts\": {\n \"directoryInfo\": 2,\n \"category\": 10,\n \"facility\": 1,\n \"level\": 3,\n \"unit\": 183,\n \"zone\": 3,\n \"verticalPenetration\": 6,\n \"opening\": 48,\n \"areaElement\": 108\n }\n }\n```", + "operationId": "Dataset_Get", + "x-ms-examples": { + "Get details for a previously created dataset": { + "$ref": "./examples/Dataset_GetDetails.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/DatasetId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "The get dataset request completed successfully.", + "schema": { + "$ref": "#/definitions/DatasetDetailInfo" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + }, + "delete": { + "x-publish": true, + "description": "**Applies to:** see pricing [tiers](https://aka.ms/AzureMapsPricingTier).\n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. [This](https://docs.microsoft.com/azure/azure-maps/creator-indoor-maps) article introduces concepts and tools that apply to Azure Maps Creator.\n\nYou can also use this API to delete old/unused datasets to create space for new Creator content.\n\n### Submit Delete Request\n\nTo delete your content you will issue a `DELETE` request where the path will contain the `datasetId` of the dataset to delete.", + "operationId": "Dataset_Delete", + "x-ms-examples": { + "Delete previously created dataset": { + "$ref": "./examples/Dataset_Delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/DatasetId" + } + ], + "responses": { + "204": { + "description": "The dataset delete request completed successfully. The resource referenced by the `datasetId` was deleted from the server." + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/datasets/operations/{operationId}": { + "get": { + "description": "This API allows the caller to view the current progress of a dataset operation and the path is obtained from a call to the Create API.\n\n### Submit Operations Request\n\nTo view the current progress of a dataset operation, you will use a `GET` request where the `operationId` given the path is the ID that represents the operation.\n\n### Operation Response\n\nWhile in progress, a `200-OK` http status code will be returned with no extra headers. If the operation succeeds, a `200-OK` http status code with Resource-Location header will be returned.", + "operationId": "Dataset_GetOperation", + "x-ms-examples": { + "Get the status of an operation which is still running": { + "$ref": "./examples/GetOperationStillRunning.json" + }, + "Get the status of an operation which has finished successfully": { + "$ref": "./examples/GetOperation.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/DatasetOperationId" + } + ], + "responses": { + "200": { + "$ref": "#/responses/200Async" + }, + "400": { + "$ref": "#/responses/400" + } + } + } + } + }, + "definitions": { + "ODataErrorResponse": { + "type": "object", + "description": "This response object is returned when an error occurs in the Maps API.", + "properties": { + "error": { + "$ref": "#/definitions/ODataError" + } + } + }, + "ODataError": { + "type": "object", + "description": "This object is returned when an error occurs in the Maps API.", + "properties": { + "code": { + "type": "string", + "readOnly": true, + "description": "The ODataError code." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "If available, a human readable description of the error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ODataError" + } + }, + "target": { + "type": "string", + "readOnly": true, + "description": "If available, the target causing the error." + } + } + }, + "LongRunningOperationResult": { + "description": "The response model for a Long-Running Operations API.", + "type": "object", + "properties": { + "operationId": { + "description": "The Id for this long-running operation.", + "type": "string" + }, + "status": { + "description": "The status state of the request.", + "type": "string", + "enum": [ + "NotStarted", + "Running", + "Failed", + "Succeeded" + ], + "x-ms-enum": { + "name": "type", + "modelAsString": true, + "values": [ + { + "value": "NotStarted", + "description": "The request has not started processing yet." + }, + { + "value": "Running", + "description": "The request has started processing." + }, + { + "value": "Failed", + "description": "The request has one or more failures." + }, + { + "value": "Succeeded", + "description": "The request has successfully completed." + } + ] + }, + "readOnly": true + }, + "created": { + "description": "The created timestamp.", + "type": "string", + "readOnly": true + }, + "error": { + "$ref": "#/definitions/ODataError" + }, + "warning": { + "$ref": "#/definitions/ODataError" + } + } + }, + "DatasetListResponse": { + "description": "The response model for the Dataset List API. The response body will contain a list of all the previously created datasets.", + "type": "object", + "properties": { + "datasets": { + "description": "A list of all the previously created datasets.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/DatasetDetailInfo" + } + }, + "nextLink": { + "description": "If present, the location of the next page of data.", + "type": "string", + "readOnly": true + } + } + }, + "DatasetDetailInfo": { + "description": "Detail information for the dataset.", + "type": "object", + "properties": { + "created": { + "description": "The created timestamp for the dataset.", + "type": "string", + "readOnly": true + }, + "datasetId": { + "description": "The id for the dataset.", + "type": "string", + "readOnly": true + }, + "ontology": { + "description": "", + "type": "string", + "readOnly": true + }, + "description": { + "description": "The description for the dataset.", + "type": "string", + "readOnly": true + }, + "datasetSources": { + "$ref": "#/definitions/DatasetSources" + }, + "featureCounts": { + "description": "The feature counts for the dataset.", + "type": "object", + "readOnly": true + } + } + }, + "DatasetSources": { + "description": "Information about the details of the create request for the dataset.", + "type": "object", + "properties": { + "conversionIds": { + "description": "The list of `conversionId` that were used to create the dataset.", + "type": "array", + "readOnly": true, + "items": { + "type": "string" + } + }, + "appendDatasetId": { + "description": "The dataset that was appended to to create the current dataset.", + "type": "string", + "readOnly": true + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/2.0/examples/Dataset_Create.json b/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/2.0/examples/Dataset_Create.json new file mode 100644 index 000000000000..78ef1912aeed --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/2.0/examples/Dataset_Create.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "geography": "us", + "api-version": "2.0", + "subscription-key": "[subscription-key]", + "conversionId": "[conversionId]" + }, + "responses": { + "202": { + "headers": { + "Operation-Location": "https://us.atlas.microsoft.com/datasets/operations/{operationId}?api-version=2.0", + "Access-Control-Expose-Headers": "Operation-Location" + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request - Error message." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found - The requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "Unknown error - An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/2.0/examples/Dataset_Delete.json b/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/2.0/examples/Dataset_Delete.json new file mode 100644 index 000000000000..93c5dc5ed157 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/2.0/examples/Dataset_Delete.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "geography": "us", + "api-version": "2.0", + "subscription-key": "[subscription-key]", + "datasetId": "[datasetId]" + }, + "responses": { + "204": {}, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request - One or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found - The requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "Unknown error - An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/2.0/examples/Dataset_GetDetails.json b/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/2.0/examples/Dataset_GetDetails.json new file mode 100644 index 000000000000..1b096ca550d9 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/2.0/examples/Dataset_GetDetails.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "geography": "us", + "api-version": "2.0", + "subscription-key": "[subscription-key]", + "datasetId": "[datasetId]" + }, + "responses": { + "200": { + "headers": { + "Location": "https://us.atlas.microsoft.com/dataset/{datasetId}?api-version=1.0", + "Access-Control-Expose-Headers": "Resource-Location" + }, + "body": { + "created": "2021-05-21T01:02:03.456Z", + "datasetId": "[datasetId]", + "description": "Some description or comment about the dataset", + "datasetSources": { + "conversionIds": [ + "15d21452-c9bb-27b6-5e79-743ca5c3205d", + "c39de51c-b4f5-4733-aeeb-d8cb6f8b2f1d" + ], + "appendDatasetId": "6a49a490-1d9c-4f05-bf1e-51998fbc4733" + }, + "featureCounts": { + "directoryInfo": 2, + "category": 10, + "facility": 1, + "level": 3, + "unit": 183, + "zone": 3, + "verticalPenetration": 6, + "opening": 48, + "areaElement": 108 + }, + "ontology": "facility-2.0" + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request - Error message." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found - The requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "Unknown error - An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/2.0/examples/Dataset_List.json b/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/2.0/examples/Dataset_List.json new file mode 100644 index 000000000000..6f94246882ff --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/2.0/examples/Dataset_List.json @@ -0,0 +1,103 @@ +{ + "parameters": { + "geography": "us", + "api-version": "2.0", + "subscription-key": "[subscription-key]" + }, + "responses": { + "200": { + "body": { + "datasets": [ + { + "created": "2021-05-21T03:04:05.678Z", + "datasetId": "f6495f62-94f8-0ec2-c252-45626f82fcb2", + "description": "Some description or comment for the dataset.", + "datasetSources": { + "conversionIds": [ + "db63843c-3c70-4b4e-94ff-dfcf4013c4a9" + ] + }, + "featureCounts": { + "directoryInfo": 1, + "category": 18, + "facility": 1, + "level": 6, + "unit": 775, + "opening": 471, + "areaElement": 496 + }, + "ontology": "facility-2.0" + }, + { + "created": "2021-05-21T03:04:05.678Z", + "datasetId": "7c1288fa-2058-4a1b-b68f-13a6h5af7d7c", + "description": "Some other description or comment for the dataset.", + "datasetSources": { + "conversionIds": [ + "15d21452-c9bb-27b6-5e79-743ca5c3205d" + ], + "appendDatasetId": "8b1288fa-1958-4a2b-b68e-13a7i5af7d7c" + }, + "featureCounts": { + "directoryInfo": 2, + "category": 10, + "facility": 1, + "level": 3, + "unit": 183, + "zone": 3, + "verticalPenetration": 6, + "opening": 48, + "areaElement": 108 + }, + "ontology": "facility-2.0" + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request - One or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found - The requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "Unknown error - An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/2.0/examples/GetOperation.json b/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/2.0/examples/GetOperation.json new file mode 100644 index 000000000000..f213ab7656b9 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/2.0/examples/GetOperation.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "geography": "us", + "api-version": "2.0", + "subscription-key": "[subscription-key]", + "operationId": "8b1288fa-1958-4a2b-b68e-13a7i5af7d7c" + }, + "responses": { + "200": { + "body": { + "operationId": "8b1288fa-1958-4a2b-b68e-13a7i5af7d7c", + "created": "2021-04-20T22:43:14.9401559+00:00", + "status": "Succeeded" + }, + "headers": { + "Resource-Location": "https://us.atlas.microsoft.com/datasets/3e36b996-f6d1-b068-0fcb-dd6b014c3447?api-version=2.0" + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/2.0/examples/GetOperationStillRunning.json b/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/2.0/examples/GetOperationStillRunning.json new file mode 100644 index 000000000000..4a0559be1343 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/2.0/examples/GetOperationStillRunning.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "geography": "us", + "api-version": "2.0", + "subscription-key": "[subscription-key]", + "operationId": "8b1288fa-1958-4a2b-b68e-13a7i5af7d7c" + }, + "responses": { + "200": { + "body": { + "operationId": "8b1288fa-1958-4a2b-b68e-13a7i5af7d7c", + "created": "2021-04-23T19:14:03.2452596+00:00", + "status": "Running" + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/DwgConversion/preview/1.0/dwgconversion.json b/specification/maps/data-plane/Microsoft.Maps/DwgConversion/preview/1.0/dwgconversion.json index 1d5486f6caba..227ec56ce6ce 100644 --- a/specification/maps/data-plane/Microsoft.Maps/DwgConversion/preview/1.0/dwgconversion.json +++ b/specification/maps/data-plane/Microsoft.Maps/DwgConversion/preview/1.0/dwgconversion.json @@ -5,7 +5,14 @@ "version": "1.0", "description": "APIs for converting DWG Packages in Azure Maps." }, - "host": "atlas.microsoft.com", + "x-ms-parameterized-host": { + "hostTemplate": "{geography}.atlas.microsoft.com", + "parameters": [ + { + "$ref": "#/parameters/GeographicResourceLocation" + } + ] + }, "schemes": [ "https" ], @@ -98,6 +105,33 @@ } }, "parameters": { + "GeographicResourceLocation": { + "name": "geography", + "description": "This parameter specifies where the Azure Maps Creator resource is located. Valid values are us and eu.", + "in": "path", + "required": true, + "type": "string", + "default": "us", + "enum": [ + "us", + "eu" + ], + "x-ms-enum": { + "name": "GeographicResourceLocation", + "modelAsString": true, + "values": [ + { + "value": "us", + "description": "Used to access an Azure Maps Creator resource in the United States" + }, + { + "value": "eu", + "description": "Used to access an Azure Maps Creator resource in Europe" + } + ] + }, + "x-ms-parameter-location": "client" + }, "ClientId": { "name": "x-ms-client-id", "description": "Specifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.", @@ -150,7 +184,7 @@ ], "x-ms-enum": { "name": "ConversionInputType", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "DWG", @@ -173,7 +207,7 @@ "/conversion/convert": { "post": { "x-publish": true, - "description": "**Conversion Create API**\n\n**Applies to:** S1 pricing tier.
    \n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and \nSDK. The Conversion API is part of Creator.
    \n\nThe Conversion API lets the caller import a set of DWG design files as a zipped [Drawing Package](https://aka.ms/am-drawing-package) into Azure Maps. The [Drawing Package](https://aka.ms/am-drawing-package) should first be \nuploaded using the [Azure Maps Data Service](https://docs.microsoft.com/rest/api/maps/data). Once uploaded, use the \n`udid` returned by the [Data Upload API](https://docs.microsoft.com/rest/api/maps/data/uploadpreview) to call \nthis Conversion API.\n\n## Convert DWG package\n\nThe Conversion API performs a \n[long-running request](https://aka.ms/am-creator-lrt).\n\n## Debug DWG package issues\n\n\nDuring the Conversion process, if there are any issues with the DWG package [errors and warnings](https://aka.ms/am-conversion-errors) are provided in the response along with a *diagnostic package* to visualize \nand diagnose these issues. In case any issues are encountered with your DWG package, the Conversion operation status process as detailed \n[here](https://aka.ms/am-creator-lrt) returns the location of the *diagnostic\npackage* that can be downloaded by the caller to help them visualize and diagnose these issues. The *diagnostic package* location\ncan be found in the properties section of the conversion operation status response and looks like the following:\n\n```json\n{\n \"properties\": {\n \"diagnosticPackageLocation\": \"https://atlas.microsoft.com/mapdata/{DiagnosticPackageId}?api-version=1.0\" \n } \n}\n```\n\nThe *diagnostic package* can be downloaded by executing a `HTTP GET` request on the `diagnosticPackageLocation`.\nFor more details on how to use the tool to visualize and diagnose all the errors and warnings see [Drawing Error Visualizer](https://aka.ms/am-drawing-errors-visualizer).
    \n\nA conversion operation will be marked as *success* if there are zero or more warnings but will be marked as *failed* if any errors are encountered. ", + "description": "**Conversion Create API**\n\n**Applies to**: see pricing [tiers](https://azure.microsoft.com/en-us/pricing/details/azure-maps/).
    \n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and \nSDK. [This](https://docs.microsoft.com/en-us/azure/azure-maps/creator-indoor-maps) article introduces concepts and tools that apply to Azure Maps Creator.
    \n\nThe Conversion API lets the caller import a set of DWG design files as a zipped [Drawing Package](https://aka.ms/am-drawing-package) into Azure Maps. The [Drawing Package](https://aka.ms/am-drawing-package) should first be \nuploaded using the [Azure Maps Data Service](https://docs.microsoft.com/rest/api/maps/data). Once uploaded, use the \n`udid` returned by the [Data Upload API](https://docs.microsoft.com/rest/api/maps/data/uploadpreview) to call \nthis Conversion API.\n\n## Convert DWG package\n\nThe Conversion API performs a \n[long-running request](https://aka.ms/am-creator-lrt).\n\n## Debug DWG package issues\n\n\nDuring the Conversion process, if there are any issues with the DWG package [errors and warnings](https://aka.ms/am-conversion-errors) are provided in the response along with a *diagnostic package* to visualize \nand diagnose these issues. In case any issues are encountered with your DWG package, the Conversion operation status process as detailed \n[here](https://aka.ms/am-creator-lrt) returns the location of the *diagnostic\npackage* that can be downloaded by the caller to help them visualize and diagnose these issues. The *diagnostic package* location\ncan be found in the properties section of the conversion operation status response and looks like the following:\n\n```json\n{\n \"properties\": {\n \"diagnosticPackageLocation\": \"https://us.atlas.microsoft.com/mapdata/{DiagnosticPackageId}?api-version=1.0\" \n } \n}\n```\n\nThe *diagnostic package* can be downloaded by executing a `HTTP GET` request on the `diagnosticPackageLocation`.\nFor more details on how to use the tool to visualize and diagnose all the errors and warnings see [Drawing Error Visualizer](https://aka.ms/am-drawing-errors-visualizer).
    \n\nA conversion operation will be marked as *success* if there are zero or more warnings but will be marked as *failed* if any errors are encountered. ", "operationId": "Conversion_ConvertPreview", "x-ms-long-running-operation": true, "x-ms-long-running-operation-options": { @@ -232,7 +266,7 @@ "/conversion": { "get": { "x-publish": true, - "description": "**Conversion List API**\n\n**Applies to:** S1 pricing tier.
    \n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. The Conversion API is part of Creator.
    \n\nThis API allows the caller to fetch a list of all successful data conversions submitted previously using the [Conversion API](https://docs.microsoft.com/en-us/rest/api/maps/conversion/convertpreview). \n\n### Submit List Request\n\nTo list all successful conversions you will issue a `GET` request with no additional parameters.\n\n### List Data Response\n\nThe Conversion List API returns the complete list of all conversion details in `json` format.
    \n\nHere is a sample response returning the details of two successful conversion requests: \n\n
    \n\n```json\n{\n \"conversions\": \n [\n {\n \"conversionId\": \"54398242-ea6c-1f31-4fa6-79b1ae0fc24d\",\n \"udid\": \"31838736-8b84-11ea-bc55-0242ac130003\",\n \"created\": \"5/19/2020 9:00:00 AM +00:00\",\n \"description\": \"User provided description.\",\n \"featureCounts\": {\n \"DIR\": 1,\n \"LVL\": 3,\n \"FCL\": 1,\n \"UNIT\": 150,\n \"CTG\": 8,\n \"AEL\": 0,\n \"OPN\": 10\n }\n },\n {\n \"conversionId\": \"2acf7d32-8b84-11ea-bc55-0242ac130003\",\n \"udid\": \"1214bc58-8b84-11ea-bc55-0242ac1300039\",\n \"created\": \"5/19/2020 9:00:00 AM +00:00\",\n \"description\": \"User provided description.\",\n \"featureCounts\": {\n \"DIR\": 1,\n \"LVL\": 3,\n \"FCL\": 1,\n \"UNIT\": 150,\n \"CTG\": 8,\n \"AEL\": 0,\n \"OPN\": 10\n }\n }\n ]\n}\n```\n\n
    ", + "description": "**Conversion List API**\n\n**Applies to**: see pricing [tiers](https://azure.microsoft.com/en-us/pricing/details/azure-maps/).
    \n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. [This](https://docs.microsoft.com/en-us/azure/azure-maps/creator-indoor-maps) article introduces concepts and tools that apply to Azure Maps Creator.
    \n\nThis API allows the caller to fetch a list of all successful data conversions submitted previously using the [Conversion API](https://docs.microsoft.com/en-us/rest/api/maps/conversion/convertpreview). \n\n### Submit List Request\n\nTo list all successful conversions you will issue a `GET` request with no additional parameters.\n\n### List Data Response\n\nThe Conversion List API returns the complete list of all conversion details in `json` format.
    \n\nHere is a sample response returning the details of two successful conversion requests: \n\n
    \n\n```json\n{\n \"conversions\": \n [\n {\n \"conversionId\": \"54398242-ea6c-1f31-4fa6-79b1ae0fc24d\",\n \"udid\": \"31838736-8b84-11ea-bc55-0242ac130003\",\n \"created\": \"5/19/2020 9:00:00 AM +00:00\",\n \"description\": \"User provided description.\",\n \"featureCounts\": {\n \"DIR\": 1,\n \"LVL\": 3,\n \"FCL\": 1,\n \"UNIT\": 150,\n \"CTG\": 8,\n \"AEL\": 0,\n \"OPN\": 10\n }\n },\n {\n \"conversionId\": \"2acf7d32-8b84-11ea-bc55-0242ac130003\",\n \"udid\": \"1214bc58-8b84-11ea-bc55-0242ac1300039\",\n \"created\": \"5/19/2020 9:00:00 AM +00:00\",\n \"description\": \"User provided description.\",\n \"featureCounts\": {\n \"DIR\": 1,\n \"LVL\": 3,\n \"FCL\": 1,\n \"UNIT\": 150,\n \"CTG\": 8,\n \"AEL\": 0,\n \"OPN\": 10\n }\n }\n ]\n}\n```\n\n
    ", "operationId": "Conversion_ListPreview", "x-ms-examples": { "Returns a list of all the data processed by the Conversion Service for the account": { @@ -278,7 +312,7 @@ "/conversion/{conversionId}": { "delete": { "x-publish": true, - "description": "**Conversion Delete API**\n\n**Applies to:** S1 pricing tier.
    \n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. The Delete API is part of Creator.
    \n\nThis API allows the caller to delete any data conversions created previously using the [Conversion API](https://docs.microsoft.com/en-us/rest/api/maps/conversion/convertpreview).\n\n### Submit Delete Request\n\nTo delete your conversion data you will issue a `DELETE` request where the path will contain the `conversionId` of the data to delete.\n\n### Conversion Delete Response\n\nThe Conversion Delete API returns a HTTP `204 No Content` response with an empty body, if the converted data resources were deleted successfully.
    \nA HTTP `400 Bad Request` error response will be returned if no resource associated with the passed-in `conversionId` is found. ", + "description": "**Conversion Delete API**\n\n**Applies to**: see pricing [tiers](https://azure.microsoft.com/en-us/pricing/details/azure-maps/).
    \n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. [This](https://docs.microsoft.com/en-us/azure/azure-maps/creator-indoor-maps) article introduces concepts and tools that apply to Azure Maps Creator.
    \n\nThis API allows the caller to delete any data conversions created previously using the [Conversion API](https://docs.microsoft.com/en-us/rest/api/maps/conversion/convertpreview).\n\n### Submit Delete Request\n\nTo delete your conversion data you will issue a `DELETE` request where the path will contain the `conversionId` of the data to delete.\n\n### Conversion Delete Response\n\nThe Conversion Delete API returns a HTTP `204 No Content` response with an empty body, if the converted data resources were deleted successfully.
    \nA HTTP `400 Bad Request` error response will be returned if no resource associated with the passed-in `conversionId` is found. ", "operationId": "Conversion_DeletePreview", "x-ms-examples": { "Delete previously converted content": { @@ -381,7 +415,7 @@ ], "x-ms-enum": { "name": "type", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "NotStarted", diff --git a/specification/maps/data-plane/Microsoft.Maps/DwgConversion/preview/1.0/examples/Conversion.json b/specification/maps/data-plane/Microsoft.Maps/DwgConversion/preview/1.0/examples/Conversion.json index b9af945a36d8..620928efd64a 100644 --- a/specification/maps/data-plane/Microsoft.Maps/DwgConversion/preview/1.0/examples/Conversion.json +++ b/specification/maps/data-plane/Microsoft.Maps/DwgConversion/preview/1.0/examples/Conversion.json @@ -1,5 +1,6 @@ { "parameters": { + "geography": "us", "api-version": "1.0", "subscription-key": "[subscription-key]", "udid": "25084fb7-307a-4720-8f91-7952a0b91012", @@ -8,19 +9,19 @@ "responses": { "201": { "headers": { - "Location": "https://atlas.microsoft.com/conversion/{conversionId}?api-version=1.0", + "Location": "https://us.atlas.microsoft.com/conversion/{conversionId}?api-version=1.0", "Access-Control-Expose-Headers": "Location" }, "body": { "operationId": "{operationId}", "status": "Succeeded", "created": "2020-01-02 1:02:03 AM +00:00", - "resourceLocation": "https://atlas.microsoft.com/conversion/{conversionId}?api-version=1.0" + "resourceLocation": "https://us.atlas.microsoft.com/conversion/{conversionId}?api-version=1.0" } }, "202": { "headers": { - "Location": "https://atlas.microsoft.com/conversion/operations/{operationId}?api-version=1.0", + "Location": "https://us.atlas.microsoft.com/conversion/operations/{operationId}?api-version=1.0", "Access-Control-Expose-Headers": "Location" } }, diff --git a/specification/maps/data-plane/Microsoft.Maps/DwgConversion/preview/1.0/examples/Delete.json b/specification/maps/data-plane/Microsoft.Maps/DwgConversion/preview/1.0/examples/Delete.json index a0858462d16c..a2437b22c532 100644 --- a/specification/maps/data-plane/Microsoft.Maps/DwgConversion/preview/1.0/examples/Delete.json +++ b/specification/maps/data-plane/Microsoft.Maps/DwgConversion/preview/1.0/examples/Delete.json @@ -1,5 +1,6 @@ { "parameters": { + "geography": "us", "api-version": "1.0", "subscription-key": "[subscription-key]", "conversionId": "99884fb7-87a9-0920-7f93-7952a0b91012" diff --git a/specification/maps/data-plane/Microsoft.Maps/DwgConversion/preview/1.0/examples/List.json b/specification/maps/data-plane/Microsoft.Maps/DwgConversion/preview/1.0/examples/List.json index 357a0d0ab352..2b7782a6acf3 100644 --- a/specification/maps/data-plane/Microsoft.Maps/DwgConversion/preview/1.0/examples/List.json +++ b/specification/maps/data-plane/Microsoft.Maps/DwgConversion/preview/1.0/examples/List.json @@ -1,5 +1,6 @@ { "parameters": { + "geography": "us", "api-version": "1.0", "subscription-key": "[subscription-key]" }, diff --git a/specification/maps/data-plane/Microsoft.Maps/DwgConversion/preview/2.0/dwgconversion.json b/specification/maps/data-plane/Microsoft.Maps/DwgConversion/preview/2.0/dwgconversion.json new file mode 100644 index 000000000000..013f51c645f5 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/DwgConversion/preview/2.0/dwgconversion.json @@ -0,0 +1,572 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Maps Conversion Service", + "version": "2.0", + "description": "APIs for converting DWG Packages in Azure Maps." + }, + "x-ms-parameterized-host": { + "hostTemplate": "{geography}.atlas.microsoft.com", + "parameters": [ + { + "$ref": "#/parameters/GeographicResourceLocation" + } + ] + }, + "schemes": [ + "https" + ], + "consumes": [], + "produces": [ + "application/json" + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "These are the [Azure Active Directory OAuth2](https://docs.microsoft.com/en-us/azure/active-directory/develop/v1-overview) Flows. When paired with [Azure Role Based Access](https://docs.microsoft.com/en-us/azure/role-based-access-control/overview) control it can be used to control access to Azure Maps REST APIs. Azure Role based access controls are used to designate access to one or more Azure Maps resource account or sub-resources. Any user, group, or service principal can be granted access via a built in role or a custom role composed of one or more permissions to Azure Maps REST APIs.\n\nTo implement scenarios we recommend viewing [authentication concepts](https://aka.ms/amauth). In summary, this security definition provides a solution for modeling application(s) via objects capable of access control on specific APIs and scopes.\n\n#### Note\n* This security definition **requires** the use of the `x-ms-client-id` header to indicate which Azure Maps resource the application is requesting access to. This can be acquired from the [Maps management API](https://aka.ms/amauthdetails).\n* The `Authorization URL` is specific to the Azure public cloud instance. Sovereign clouds have unique Authorization URLs and Azure Active directory configurations. \n* The Azure role based access control is configured from the [Azure management plane](https://aka.ms/amrbac) via Azure portal, Powershell, CLI, Azure SDKs, or REST APIs.\n* Usage of the [Azure Maps Web SDK](https://aka.ms/amaadmc) allows for configuration based setup of an application for multiple use cases.\n* Currently Azure Active Directory [v1.0](https://docs.microsoft.com/en-us/azure/active-directory/develop/azure-ad-endpoint-comparison) tokens are supported.", + "scopes": { + "user_impersonation": "Impersonates a user's Azure Active Directory account." + } + }, + "apiKeyQuery": { + "type": "apiKey", + "description": "This is a shared key which is provisioned when creating an [Azure Maps resource](https://aka.ms/amauth) through the Azure management plane via Azure portal, Powershell, CLI, Azure SDKs, or REST APIs. With this key, any application is authorized to access all REST APIs. In other words, these can currently be treated as master keys to the account which they are issued for. For publicly exposed applications our recommendation is to use server to server access of Azure Maps REST APIs where this key can be securely stored.", + "name": "subscription-key", + "in": "query" + } + }, + "security": [ + { + "azure_auth": [] + }, + { + "apiKeyQuery": [] + } + ], + "responses": { + "400": { + "description": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "401": { + "description": "Access denied due to invalid subscription key or invalid Azure Active Directory bearer token. Make sure to provide a valid key for an active Azure subscription and Maps resource. Otherwise, verify the [WWW-Authenticate](https://tools.ietf.org/html/rfc6750#section-3.1) header for error code and description of the provided AAD bearer token.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + }, + "headers": { + "WWW-Authenticate": { + "type": "string", + "description": "Bearer realm=\"https://atlas.microsoft.com/\", error=\"invalid_token\", error_description=\"The access token expired\"" + } + } + }, + "403": { + "description": "Permission, capacity, or authentication issues.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "404": { + "description": "Not Found: the requested resource could not be found, but it may be available again in the future.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "500": { + "description": "An error occurred while processing the request. Please try again later.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "200Async": { + "description": "The operation is running or complete. If the operation was successful, use the Resource-Location header to obtain the path to the result.", + "schema": { + "$ref": "#/definitions/LongRunningOperationResult" + }, + "headers": { + "Resource-Location": { + "type": "string", + "description": "If successful, a URI where details on the newly created resource can be found." + } + } + }, + "202Accepted": { + "description": "Request Accepted: The request has been accepted for processing. Please use the URL in the Operation-Location Header to obtain status.", + "headers": { + "Operation-Location": { + "type": "string", + "description": "New URL to check for the results of the long running process." + } + } + } + }, + "parameters": { + "GeographicResourceLocation": { + "name": "geography", + "description": "This parameter specifies where the Azure Maps Creator resource is located. Valid values are us and eu.", + "in": "path", + "required": true, + "type": "string", + "default": "us", + "enum": [ + "us", + "eu" + ], + "x-ms-enum": { + "name": "GeographicResourceLocation", + "modelAsString": true, + "values": [ + { + "value": "us", + "description": "Used to access an Azure Maps Creator resource in the United States" + }, + { + "value": "eu", + "description": "Used to access an Azure Maps Creator resource in Europe" + } + ] + }, + "x-ms-parameter-location": "client" + }, + "ClientId": { + "name": "x-ms-client-id", + "description": "Specifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.", + "type": "string", + "in": "header", + "required": false, + "x-ms-parameter-location": "client" + }, + "SubscriptionKey": { + "name": "subscription-key", + "description": "One of the Azure Maps keys provided from an Azure Map Account. Please refer to this [article](https://docs.microsoft.com/azure/azure-maps/how-to-manage-authentication) for details on how to manage authentication.", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "client" + }, + "ApiVersion": { + "name": "api-version", + "description": "Version number of Azure Maps API. Current version is 2.0", + "type": "string", + "in": "query", + "required": true, + "default": "2.0", + "x-ms-parameter-location": "client" + }, + "UdidQuery": { + "name": "udid", + "description": "The unique data id for the content. The `udid` must have been obtained from a successful [Data Upload API](https://docs.microsoft.com/en-us/rest/api/maps/data%20v2/uploadpreview) call.", + "type": "string", + "in": "query", + "required": true, + "x-ms-parameter-location": "method" + }, + "ConversionId": { + "name": "conversionId", + "description": "The conversion id for the content. The `conversionId` must have been obtained from a successful [Conversion API](https://docs.microsoft.com/en-us/rest/api/maps/v2/conversion/convert) call.", + "type": "string", + "in": "path", + "required": true, + "x-ms-parameter-location": "method" + }, + "OutputOntology": { + "name": "outputOntology", + "description": "Output ontology version. \"facility-2.0\" is the only supported value at this time. Please refer to this [article](https://docs.microsoft.com/en-us/azure/azure-maps/creator-facility-ontology) for more information about Azure Maps Creator ontologies.", + "type": "string", + "in": "query", + "required": true, + "x-ms-parameter-location": "method" + }, + "DescriptionDwgConversion": { + "name": "description", + "description": "User provided description of the content being converted.", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "method" + }, + "ConversionOperationId": { + "name": "operationId", + "type": "string", + "in": "path", + "description": "The ID to query the status for the dataset create/import request.", + "required": true, + "x-ms-parameter-location": "method" + } + }, + "paths": { + "/conversions": { + "post": { + "x-publish": true, + "description": "**Applies to:** see pricing [tiers](https://aka.ms/AzureMapsPricingTier).\n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. [This](https://docs.microsoft.com/azure/azure-maps/creator-indoor-maps) article introduces concepts and tools that apply to Azure Maps Creator.\n\nThe Conversion API lets the caller import a set of DWG design files as a zipped [Drawing Package](https://aka.ms/am-drawing-package) into Azure Maps. The [Drawing Package](https://aka.ms/am-drawing-package) should first be uploaded using the [Azure Maps Data Service](https://docs.microsoft.com/rest/api/maps/data). Once uploaded, use the `udid` returned by the [Data Upload API](https://docs.microsoft.com/rest/api/maps/data/uploadpreview) to call this Conversion API.\n\n## Convert DWG package\n\nThe Conversion API performs a [long-running request](https://aka.ms/am-creator-lrt-v2).\n\n## Debug DWG package issues\n\n\nDuring the Conversion process, if there are any issues with the DWG package [errors and warnings](https://aka.ms/am-conversion-errors) are provided in the response along with a *diagnostic package* to visualize and diagnose these issues. In case any issues are encountered with your DWG package, the Conversion operation status process as detailed [here](https://aka.ms/am-creator-lrt-v2) returns the location of the *diagnostic package* that can be downloaded by the caller to help them visualize and diagnose these issues. The *diagnostic package* location can be found in the properties section of the conversion operation status response and looks like the following:\n\n```json\n{\n \"properties\": {\n \"diagnosticPackageLocation\": \"https://us.atlas.microsoft.com/mapdata/{DiagnosticPackageId}?api-version=1.0\" \n } \n}\n```\n\nThe *diagnostic package* can be downloaded by executing a `HTTP GET` request on the `diagnosticPackageLocation`.\nFor more details on how to use the tool to visualize and diagnose all the errors and warnings see [Drawing Error Visualizer](https://aka.ms/am-drawing-errors-visualizer).
    \n\nA conversion operation will be marked as *success* if there are zero or more warnings but will be marked as *failed* if any errors are encountered. ", + "operationId": "Conversion_Convert", + "x-ms-examples": { + "Convert previously uploaded DWG Package": { + "$ref": "./examples/Conversion.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/UdidQuery" + }, + { + "$ref": "#/parameters/OutputOntology" + }, + { + "$ref": "#/parameters/DescriptionDwgConversion" + } + ], + "responses": { + "202": { + "$ref": "#/responses/202Accepted" + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + }, + "get": { + "x-publish": true, + "description": "**Applies to:** see pricing [tiers](https://aka.ms/AzureMapsPricingTier).\n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. [This](https://docs.microsoft.com/azure/azure-maps/creator-indoor-maps) article introduces concepts and tools that apply to Azure Maps Creator.\n\nThis API allows the caller to fetch a list of all successful data conversions submitted previously using the [Conversion API](https://docs.microsoft.com/en-us/rest/api/maps/conversion/convertpreview). \n\n### Submit List Request\n\nTo list all successful conversions you will issue a `GET` request with no additional parameters.\n\n### List Data Response\n\nThe Conversion List API returns the complete list of all conversion details in `json` format.
    \n\nHere is a sample response returning the details of two successful conversion requests: \n\n
    \n\n```json\n{\n \"conversions\": \n [\n {\n \"conversionId\": \"54398242-ea6c-1f31-4fa6-79b1ae0fc24d\",\n \"udid\": \"31838736-8b84-11ea-bc55-0242ac130003\",\n \"created\": \"5/19/2020 9:00:00 AM +00:00\",\n \"description\": \"User provided description.\",\n \"featureCounts\": {\n \"DIR\": 1,\n \"LVL\": 3,\n \"FCL\": 1,\n \"UNIT\": 150,\n \"CTG\": 8,\n \"AEL\": 0,\n \"OPN\": 10\n }\n },\n {\n \"conversionId\": \"2acf7d32-8b84-11ea-bc55-0242ac130003\",\n \"udid\": \"1214bc58-8b84-11ea-bc55-0242ac1300039\",\n \"created\": \"5/19/2020 9:00:00 AM +00:00\",\n \"description\": \"User provided description.\",\n \"featureCounts\": {\n \"DIR\": 1,\n \"LVL\": 3,\n \"FCL\": 1,\n \"UNIT\": 150,\n \"CTG\": 8,\n \"AEL\": 0,\n \"OPN\": 10\n }\n }\n ]\n}\n```\n\n
    ", + "operationId": "Conversion_List", + "x-ms-examples": { + "Returns a list of all the data processed by the Conversion Service for the account": { + "$ref": "./examples/List.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "List request completed successfully.", + "schema": { + "$ref": "#/definitions/ConversionListResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/conversions/{conversionId}": { + "get": { + "x-publish": true, + "description": "**Applies to:** see pricing [tiers](https://aka.ms/AzureMapsPricingTier).\n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. [This](https://docs.microsoft.com/azure/azure-maps/creator-indoor-maps) article introduces concepts and tools that apply to Azure Maps Creator.\n\nThis API allows the caller to fetch a successful data conversion submitted previously using the [Conversion API](https://docs.microsoft.com/en-us/rest/api/maps/conversion/convertpreview). ", + "operationId": "Conversion_Get", + "x-ms-examples": { + "Get the details for one conversion operation": { + "$ref": "./examples/Get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ConversionId" + } + ], + "responses": { + "200": { + "description": "Returns details of the specified conversion.", + "schema": { + "$ref": "#/definitions/ConversionListDetailInfo" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + }, + "delete": { + "x-publish": true, + "description": "**Applies to:** see pricing [tiers](https://aka.ms/AzureMapsPricingTier).\n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. [This](https://docs.microsoft.com/azure/azure-maps/creator-indoor-maps) article introduces concepts and tools that apply to Azure Maps Creator.\n\nThis API allows the caller to delete any data conversions created previously using the [Conversion API](https://docs.microsoft.com/en-us/rest/api/maps/conversion/convertpreview).\n\n### Submit Delete Request\n\nTo delete your conversion data you will issue a `DELETE` request where the path will contain the `conversionId` of the data to delete.\n\n### Conversion Delete Response\n\nThe Conversion Delete API returns a HTTP `204 No Content` response with an empty body, if the converted data resources were deleted successfully.
    \nA HTTP `400 Bad Request` error response will be returned if no resource associated with the passed-in `conversionId` is found. ", + "operationId": "Conversion_Delete", + "x-ms-examples": { + "Delete previously converted content": { + "$ref": "./examples/Delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ConversionId" + } + ], + "responses": { + "204": { + "description": "Conversion delete request completed successfully. The content for `conversionId` was deleted on the server." + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/conversions/operations/{operationId}": { + "get": { + "description": "This path will be obtained from a call to POST /conversions. While in progress, an http200 will be returned with no extra headers - followed by an http200 with Resource-Location header once successfully completed.", + "operationId": "Conversion_GetOperation", + "x-ms-examples": { + "Get the status of an operation which is still running": { + "$ref": "./examples/GetOperationStillRunning.json" + }, + "Get the status of an operation which has finished successfully, with non-fatal warnings": { + "$ref": "./examples/GetOperation.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ConversionOperationId" + } + ], + "responses": { + "200": { + "$ref": "#/responses/200Async" + }, + "400": { + "$ref": "#/responses/400" + } + } + } + } + }, + "definitions": { + "ODataErrorResponse": { + "type": "object", + "description": "This response object is returned when an error occurs in the Maps API.", + "properties": { + "error": { + "$ref": "#/definitions/ODataError" + } + } + }, + "ODataError": { + "type": "object", + "description": "This object is returned when an error occurs in the Maps API.", + "properties": { + "code": { + "type": "string", + "readOnly": true, + "description": "The ODataError code." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "If available, a human readable description of the error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ODataError" + } + }, + "target": { + "type": "string", + "readOnly": true, + "description": "If available, the target causing the error." + } + } + }, + "LongRunningOperationResult": { + "description": "The response model for a Long-Running Operations API.", + "type": "object", + "properties": { + "operationId": { + "description": "The Id for this long-running operation.", + "type": "string" + }, + "status": { + "description": "The status state of the request.", + "type": "string", + "enum": [ + "NotStarted", + "Running", + "Failed", + "Succeeded" + ], + "x-ms-enum": { + "name": "type", + "modelAsString": true, + "values": [ + { + "value": "NotStarted", + "description": "The request has not started processing yet." + }, + { + "value": "Running", + "description": "The request has started processing." + }, + { + "value": "Failed", + "description": "The request has one or more failures." + }, + { + "value": "Succeeded", + "description": "The request has successfully completed." + } + ] + }, + "readOnly": true + }, + "created": { + "description": "The created timestamp.", + "type": "string", + "readOnly": true + }, + "error": { + "$ref": "#/definitions/ODataError" + }, + "warning": { + "$ref": "#/definitions/ODataError" + } + } + }, + "ConversionListResponse": { + "description": "The response model for the Conversion List API.", + "type": "object", + "properties": { + "conversions": { + "description": "A list of all the previously submitted conversion requests.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ConversionListDetailInfo" + } + }, + "nextLink": { + "description": "If present, the location of the next page of data.", + "type": "string", + "readOnly": true + } + } + }, + "ConversionListDetailInfo": { + "description": "Detail information for the conversion requests.", + "type": "object", + "properties": { + "conversionId": { + "description": "A unique id that represents the artifact of a _successfully_ completed conversion process.", + "type": "string", + "readOnly": true + }, + "ontology": { + "description": "", + "type": "string", + "readOnly": true + }, + "udid": { + "description": "The unique id of the content provided to create this conversion.", + "type": "string", + "readOnly": true + }, + "created": { + "description": "The date and time of this conversion.", + "type": "string", + "readOnly": true + }, + "description": { + "description": "User provided description of the content being converted.", + "type": "string", + "readOnly": true + }, + "featureCounts": { + "description": "A summary of feature counts in this conversion.", + "type": "object", + "readOnly": true + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/DwgConversion/preview/2.0/examples/Conversion.json b/specification/maps/data-plane/Microsoft.Maps/DwgConversion/preview/2.0/examples/Conversion.json new file mode 100644 index 000000000000..90672fcd2a75 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/DwgConversion/preview/2.0/examples/Conversion.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "geography": "us", + "api-version": "2.0", + "subscription-key": "[subscription-key]", + "udid": "25084fb7-307a-4720-8f91-7952a0b91012", + "inputType": "DWG", + "outputOntology": "facility-2.0" + }, + "responses": { + "202": { + "headers": { + "Operation-Location": "https://us.atlas.microsoft.com/conversions/operations/{operationId}?api-version=2.0", + "Access-Control-Expose-Headers": "Operation-Location" + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/DwgConversion/preview/2.0/examples/Delete.json b/specification/maps/data-plane/Microsoft.Maps/DwgConversion/preview/2.0/examples/Delete.json new file mode 100644 index 000000000000..4c85aa105362 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/DwgConversion/preview/2.0/examples/Delete.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "geography": "us", + "api-version": "2.0", + "subscription-key": "[subscription-key]", + "conversionId": "99884fb7-87a9-0920-7f93-7952a0b91012" + }, + "responses": { + "204": {}, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/DwgConversion/preview/2.0/examples/Get.json b/specification/maps/data-plane/Microsoft.Maps/DwgConversion/preview/2.0/examples/Get.json new file mode 100644 index 000000000000..58c847dd3957 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/DwgConversion/preview/2.0/examples/Get.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "geography": "us", + "api-version": "2.0", + "subscription-key": "[subscription-key]", + "conversionId": "54398242-ea6c-1f31-4fa6-79b1ae0fc24d" + }, + "responses": { + "200": { + "body": { + "conversionId": "54398242-ea6c-1f31-4fa6-79b1ae0fc24d", + "udid": "31838736-8b84-11ea-bc55-0242ac130003", + "created": "5/19/2020 9:00:00 AM +00:00", + "description": "User provided description.", + "featureCounts": { + "directoryInfo": 1, + "level": 3, + "facility": 1, + "unit": 150, + "category": 8, + "areaElement": 0, + "opening": 10 + } + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/DwgConversion/preview/2.0/examples/GetOperation.json b/specification/maps/data-plane/Microsoft.Maps/DwgConversion/preview/2.0/examples/GetOperation.json new file mode 100644 index 000000000000..a5e709e1acb8 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/DwgConversion/preview/2.0/examples/GetOperation.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "geography": "us", + "api-version": "2.0", + "subscription-key": "[subscription-key]", + "operationId": "8b1288fa-1958-4a2b-b68e-13a7i5af7d7c" + }, + "responses": { + "200": { + "body": { + "operationId": "8b1288fa-1958-4a2b-b68e-13a7i5af7d7c", + "created": "2021-04-20T22:43:14.9401559+00:00", + "status": "Succeeded", + "warning": { + "code": "dwgConversionProblem", + "details": [ + { + "code": "warning", + "details": [ + { + "code": "manifestWarning", + "message": "Ignoring unexpected JSON property: unitProperties[0].nonWheelchairAccessible with value False" + } + ] + } + ] + } + }, + "headers": { + "Resource-Location": "https://us.atlas.microsoft.com/conversions/3e36b996-f6d1-b068-0fcb-dd6b014c3447?api-version=2.0" + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/DwgConversion/preview/2.0/examples/GetOperationStillRunning.json b/specification/maps/data-plane/Microsoft.Maps/DwgConversion/preview/2.0/examples/GetOperationStillRunning.json new file mode 100644 index 000000000000..4a0559be1343 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/DwgConversion/preview/2.0/examples/GetOperationStillRunning.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "geography": "us", + "api-version": "2.0", + "subscription-key": "[subscription-key]", + "operationId": "8b1288fa-1958-4a2b-b68e-13a7i5af7d7c" + }, + "responses": { + "200": { + "body": { + "operationId": "8b1288fa-1958-4a2b-b68e-13a7i5af7d7c", + "created": "2021-04-23T19:14:03.2452596+00:00", + "status": "Running" + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/DwgConversion/preview/2.0/examples/List.json b/specification/maps/data-plane/Microsoft.Maps/DwgConversion/preview/2.0/examples/List.json new file mode 100644 index 000000000000..1f95d858a3f5 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/DwgConversion/preview/2.0/examples/List.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "geography": "us", + "api-version": "2.0", + "subscription-key": "[subscription-key]" + }, + "responses": { + "200": { + "body": { + "conversions": [ + { + "conversionId": "54398242-ea6c-1f31-4fa6-79b1ae0fc24d", + "udid": "31838736-8b84-11ea-bc55-0242ac130003", + "created": "5/19/2020 9:00:00 AM +00:00", + "description": "User provided description.", + "featureCounts": { + "directoryInfo": 1, + "level": 3, + "facility": 1, + "unit": 150, + "category": 8, + "areaElement": 0, + "opening": 10 + } + }, + { + "conversionId": "2acf7d32-8b84-11ea-bc55-0242ac130003", + "udid": "1214bc58-8b84-11ea-bc55-0242ac1300039", + "created": "5/19/2020 9:00:00 AM +00:00", + "description": "User provided description.", + "featureCounts": { + "directoryInfo": 1, + "level": 3, + "facility": 1, + "unit": 150, + "category": 8, + "areaElement": 0, + "opening": 10 + } + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/CreateStateset.json b/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/CreateStateset.json index 4867a31308b1..26077a93784b 100644 --- a/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/CreateStateset.json +++ b/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/CreateStateset.json @@ -1,5 +1,6 @@ { "parameters": { + "geography": "us", "api-version": "1.0", "subscription-key": "[subscription-key]", "datasetId": "5d34fbe8-87b7-f7c0-3144-c50e003a3c75", diff --git a/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/DeleteFeatureState.json b/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/DeleteFeatureState.json index 86a97a62d209..4fae12773bc9 100644 --- a/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/DeleteFeatureState.json +++ b/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/DeleteFeatureState.json @@ -1,5 +1,6 @@ { "parameters": { + "geography": "us", "api-version": "1.0", "subscription-key": "[subscription-key]", "statesetId": "b24bdb73-1305-3212-1909-a428d937b64", diff --git a/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/DeleteStateset.json b/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/DeleteStateset.json index e6bf9ebe20a6..18a62b07b2d0 100644 --- a/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/DeleteStateset.json +++ b/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/DeleteStateset.json @@ -1,5 +1,6 @@ { "parameters": { + "geography": "us", "api-version": "1.0", "subscription-key": "[subscription-key]", "statesetId": "b24bdb73-1305-3212-1909-a428d937b64f" diff --git a/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/GetStates.json b/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/GetStates.json index e581ce3b7b5d..0f83e1814041 100644 --- a/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/GetStates.json +++ b/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/GetStates.json @@ -1,5 +1,6 @@ { "parameters": { + "geography": "us", "api-version": "1.0", "subscription-key": "[subscription-key]", "statesetId": "b24bdb73-1305-3212-1909-a428d937b64", diff --git a/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/GetStateset.json b/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/GetStateset.json index 5d2a45831fbf..655b55546d1c 100644 --- a/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/GetStateset.json +++ b/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/GetStateset.json @@ -1,5 +1,6 @@ { "parameters": { + "geography": "us", "api-version": "1.0", "subscription-key": "[subscription-key]", "statesetId": "b24bdb73-1305-3212-1909-a428d937b64" diff --git a/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/Stateset_List.json b/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/Stateset_List.json index bf547d808b57..94eede94963b 100644 --- a/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/Stateset_List.json +++ b/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/Stateset_List.json @@ -1,5 +1,6 @@ { "parameters": { + "geography": "us", "api-version": "1.0", "subscription-key": "[subscription-key]" }, diff --git a/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/UpdateStates.json b/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/UpdateStates.json index d19d997f16f9..a2e115192cc9 100644 --- a/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/UpdateStates.json +++ b/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/UpdateStates.json @@ -1,5 +1,6 @@ { "parameters": { + "geography": "us", "api-version": "1.0", "subscription-key": "[subscription-key]", "statesetId": "b24bdb73-1305-3212-1909-a428d937b64", diff --git a/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/UpdateStateset.json b/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/UpdateStateset.json index e540bcda431a..02d4c988a0a1 100644 --- a/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/UpdateStateset.json +++ b/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/UpdateStateset.json @@ -1,5 +1,6 @@ { "parameters": { + "geography": "us", "api-version": "1.0", "subscription-key": "[subscription-key]", "statesetId": "b24bdb73-1305-3212-1909-a428d937b64", diff --git a/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/featurestate.json b/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/featurestate.json index 5f16128d33da..df8b036ffb72 100644 --- a/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/featurestate.json +++ b/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/featurestate.json @@ -5,7 +5,14 @@ "version": "1.0", "description": "APIs for managing the dynamic feature states in Azure Maps." }, - "host": "atlas.microsoft.com", + "x-ms-parameterized-host": { + "hostTemplate": "{geography}.atlas.microsoft.com", + "parameters": [ + { + "$ref": "#/parameters/GeographicResourceLocation" + } + ] + }, "schemes": [ "https" ], @@ -83,6 +90,33 @@ } }, "parameters": { + "GeographicResourceLocation": { + "name": "geography", + "description": "This parameter specifies where the Azure Maps Creator resource is located. Valid values are us and eu.", + "in": "path", + "required": true, + "type": "string", + "default": "us", + "enum": [ + "us", + "eu" + ], + "x-ms-enum": { + "name": "GeographicResourceLocation", + "modelAsString": true, + "values": [ + { + "value": "us", + "description": "Used to access an Azure Maps Creator resource in the United States" + }, + { + "value": "eu", + "description": "Used to access an Azure Maps Creator resource in Europe" + } + ] + }, + "x-ms-parameter-location": "client" + }, "SubscriptionKey": { "name": "subscription-key", "description": "One of the Azure Maps keys provided from an Azure Map Account. Please refer to this [article](https://docs.microsoft.com/azure/azure-maps/how-to-manage-authentication) for details on how to manage authentication.", @@ -161,7 +195,7 @@ "/featureState/stateset/{statesetId}": { "get": { "x-publish": true, - "description": "**Applies to:** S1 pricing tier.\n
    \n\nThis GET API allows the user to get the stateset Information.\n\nThe stateset Information includes the datasetId associated to the stateset, and the styles of that stateset.", + "description": "**Applies to**: see pricing [tiers](https://azure.microsoft.com/en-us/pricing/details/azure-maps/).\n
    \n\nThis GET API allows the user to get the stateset Information.\n\nThe stateset Information includes the datasetId associated to the stateset, and the styles of that stateset.", "operationId": "FeatureState_GetStatesetPreview", "x-ms-examples": { "Get stateset information with a statesetId": { @@ -205,7 +239,7 @@ }, "delete": { "x-publish": true, - "description": "**Applies to:** S1 pricing tier.
    This DELETE API allows the user to delete the stateset and the associated data.", + "description": "**Applies to**: see pricing [tiers](https://azure.microsoft.com/en-us/pricing/details/azure-maps/).
    This DELETE API allows the user to delete the stateset and the associated data.", "operationId": "FeatureState_DeleteStatesetPreview", "x-ms-examples": { "Delete an existing stateset": { @@ -246,7 +280,7 @@ }, "put": { "x-publish": true, - "description": "**Applies to:** S1 pricing tier.\n
    \n\nThis PUT API allows the user to update the stateset style rules.", + "description": "**Applies to**: see pricing [tiers](https://azure.microsoft.com/en-us/pricing/details/azure-maps/).\n
    \n\nThis PUT API allows the user to update the stateset style rules.", "operationId": "FeatureState_PutStatesetPreview", "x-ms-examples": { "Update stateset style rules with a statesetId": { @@ -298,7 +332,7 @@ "/featureState/stateset": { "post": { "x-publish": true, - "description": "**Applies to:** S1 pricing tier.\n
    \n\nThis POST API allows the user to create a new Stateset and define stateset style using request body.\n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. The Feature State API is part of Creator. \n\nThe Feature State service allows the user to update the states of a feature and query them to be used in other services. The dynamic properties of a feature that don't belong to the dataset are referred to as *states* here.\n\nThis Feature State service pivot on the Stateset. Like Tileset, Stateset encapsulates the storage mechanism for feature states for a dataset.\n\nOnce the stateset is created, users can use that statesetId to post feature state updates and retrieve the current feature states. A feature can have only one state at a given point in time. \n\nFeature state is defined by the key name, value and the timestamp. When a feature state update is posted to Azure Maps, the state value gets updated only if the provided state’s timestamp is later than the stored timestamp. \n\nAzure Maps MapControl provides a way to use these feature states to style the features. Please refer to the State Tile documentation for more information.", + "description": "**Applies to**: see pricing [tiers](https://azure.microsoft.com/en-us/pricing/details/azure-maps/).\n
    \n\nThis POST API allows the user to create a new Stateset and define stateset style using request body.\n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. The Feature State API is part of Creator. \n\nThe Feature State service allows the user to update the states of a feature and query them to be used in other services. The dynamic properties of a feature that don't belong to the dataset are referred to as *states* here.\n\nThis Feature State service pivot on the Stateset. Like Tileset, Stateset encapsulates the storage mechanism for feature states for a dataset.\n\nOnce the stateset is created, users can use that statesetId to post feature state updates and retrieve the current feature states. A feature can have only one state at a given point in time. \n\nFeature state is defined by the key name, value and the timestamp. When a feature state update is posted to Azure Maps, the state value gets updated only if the provided state’s timestamp is later than the stored timestamp. \n\nAzure Maps MapControl provides a way to use these feature states to style the features. Please refer to the State Tile documentation for more information.", "operationId": "FeatureState_CreateStatesetPreview", "x-ms-examples": { "Create a new stateset with a datasetId": { @@ -351,7 +385,7 @@ }, "get": { "x-publish": true, - "description": "**Applies to:** S1 pricing tier.
    This API allows the caller to fetch a list of all previously successfully created statesets.", + "description": "**Applies to**: see pricing [tiers](https://azure.microsoft.com/en-us/pricing/details/azure-maps/).
    This API allows the caller to fetch a list of all previously successfully created statesets.", "operationId": "FeatureState_ListStatesetPreview", "x-ms-examples": { "List all the previously created statesets": { @@ -395,7 +429,7 @@ "get": { "x-publish": true, "operationId": "FeatureState_GetStatesPreview", - "description": "**Applies to:** S1 pricing tier.
    This API returns the current state information associated with the given feature in the given stateset.", + "description": "**Applies to**: see pricing [tiers](https://azure.microsoft.com/en-us/pricing/details/azure-maps/).
    This API returns the current state information associated with the given feature in the given stateset.", "x-ms-examples": { "Get the current states of a feature": { "$ref": "./examples/GetStates.json" @@ -442,7 +476,7 @@ "post": { "x-publish": true, "operationId": "FeatureState_UpdateStatesPreview", - "description": "**Applies to:** S1 pricing tier.
    \nThis POST API allows the user to update the state of the given feature in the given stateset.", + "description": "**Applies to**: see pricing [tiers](https://azure.microsoft.com/en-us/pricing/details/azure-maps/).
    \nThis POST API allows the user to update the state of the given feature in the given stateset.", "x-ms-examples": { "Update the states of a feature": { "$ref": "./examples/UpdateStates.json" @@ -495,7 +529,7 @@ "delete": { "x-publish": true, "operationId": "FeatureState_DeleteStatePreview", - "description": "**Applies to:** S1 pricing tier.
    This API deletes the state information identified by the StateKeyName parameter for the feature identified by the FeatureId parameter in the the stateset.", + "description": "**Applies to**: see pricing [tiers](https://azure.microsoft.com/en-us/pricing/details/azure-maps/).
    This API deletes the state information identified by the StateKeyName parameter for the feature identified by the FeatureId parameter in the the stateset.", "x-ms-examples": { "Delete the given feature state": { "$ref": "./examples/DeleteFeatureState.json" diff --git a/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/2.0/examples/CreateStateset.json b/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/2.0/examples/CreateStateset.json new file mode 100644 index 000000000000..5b802bba7f5d --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/2.0/examples/CreateStateset.json @@ -0,0 +1,118 @@ +{ + "parameters": { + "geography": "us", + "api-version": "2.0", + "subscription-key": "[subscription-key]", + "description": "Stateset for Azure Maps POC.", + "datasetId": "5d34fbe8-87b7-f7c0-3144-c50e003a3c75", + "statesetCreateRequestBody": { + "styles": [ + { + "keyname": "s1", + "type": "boolean", + "rules": [ + { + "true": "#FF0000", + "false": "#00FF00" + } + ] + }, + { + "keyname": "s2", + "type": "number", + "rules": [ + { + "range": { + "exclusiveMaximum": 50 + }, + "color": "#343deb" + }, + { + "range": { + "minimum": 50, + "exclusiveMaximum": 70 + }, + "color": "#34ebb1" + }, + { + "range": { + "minimum": 70, + "exclusiveMaximum": 90 + }, + "color": "#eba834" + }, + { + "range": { + "minimum": 90 + }, + "color": "#eb3434" + } + ] + }, + { + "keyname": "s3", + "type": "string", + "rules": [ + { + "stateValue1": "#FF0000", + "stateValue2": "#FF00AA", + "stateValueN": "#00FF00" + } + ] + } + ] + } + }, + "responses": { + "200": { + "body": { + "statesetId": "b24bdb73-1305-3212-1909-a428d937b64f" + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/2.0/examples/DeleteFeatureState.json b/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/2.0/examples/DeleteFeatureState.json new file mode 100644 index 000000000000..ed49ef199221 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/2.0/examples/DeleteFeatureState.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "geography": "us", + "api-version": "2.0", + "subscription-key": "[subscription-key]", + "statesetId": "b24bdb73-1305-3212-1909-a428d937b64", + "featureId": "SPC4709", + "stateKeyName": "keyName1" + }, + "responses": { + "204": {}, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "409": { + "headers": {}, + "body": { + "error": { + "code": "409 Conflict", + "message": "The request could not be completed due to a conflict with the current state of the resource." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/2.0/examples/DeleteStateset.json b/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/2.0/examples/DeleteStateset.json new file mode 100644 index 000000000000..0cf29bde1d89 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/2.0/examples/DeleteStateset.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "geography": "us", + "api-version": "2.0", + "subscription-key": "[subscription-key]", + "statesetId": "b24bdb73-1305-3212-1909-a428d937b64f" + }, + "responses": { + "204": {}, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/2.0/examples/GetStates.json b/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/2.0/examples/GetStates.json new file mode 100644 index 000000000000..4d25498eb5a2 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/2.0/examples/GetStates.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "geography": "us", + "api-version": "2.0", + "subscription-key": "[subscription-key]", + "statesetId": "b24bdb73-1305-3212-1909-a428d937b64", + "featureId": "SPC4709" + }, + "responses": { + "200": { + "body": { + "states": [ + { + "keyName": "s1", + "value": true, + "eventTimestamp": "2019-08-16 13:01" + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/2.0/examples/GetStateset.json b/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/2.0/examples/GetStateset.json new file mode 100644 index 000000000000..3a745cac530e --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/2.0/examples/GetStateset.json @@ -0,0 +1,119 @@ +{ + "parameters": { + "geography": "us", + "api-version": "2.0", + "subscription-key": "[subscription-key]", + "statesetId": "b24bdb73-1305-3212-1909-a428d937b64" + }, + "responses": { + "200": { + "body": { + "description": "Stateset for Azure Maps POC.", + "datasetIds": [ + "8d700cc7-fd2c-4e21-b402-ad3f5e524f36" + ], + "statesetStyle": { + "styles": [ + { + "keyName": "s1", + "type": "boolean", + "rules": [ + { + "true": "#FFFF00", + "false": "#FFFFFF" + } + ] + }, + { + "keyName": "s2", + "type": "number", + "rules": [ + { + "range": { + "minimum": null, + "maximum": null, + "exclusiveMinumum": null, + "exclusiveMaximum": "50" + }, + "color": "#343deb" + }, + { + "range": { + "minimum": "50", + "maximum": null, + "exclusiveMinumum": null, + "exclusiveMaximum": "69" + }, + "color": "#34ebb1" + }, + { + "range": { + "minimum": "69", + "maximum": null, + "exclusiveMinumum": null, + "exclusiveMaximum": "90" + }, + "color": "#eba834" + }, + { + "range": { + "minimum": "90", + "maximum": null, + "exclusiveMinumum": null, + "exclusiveMaximum": null + }, + "color": "#eb3434" + } + ] + } + ] + } + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/2.0/examples/Stateset_List.json b/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/2.0/examples/Stateset_List.json new file mode 100644 index 000000000000..bd356007f6f9 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/2.0/examples/Stateset_List.json @@ -0,0 +1,123 @@ +{ + "parameters": { + "geography": "us", + "api-version": "2.0", + "subscription-key": "[subscription-key]" + }, + "responses": { + "200": { + "body": { + "statesets": [ + { + "statesetId": "09abcdf8-cad0-b3dd-a38f-d5ee3cff5eea", + "description": "Stateset for Main campus.", + "datasetIds": [ + "8d700cc7-fd2c-4e21-b402-ad3f5e524f36" + ], + "statesetStyle": { + "styles": [ + { + "keyName": "s1", + "type": "boolean", + "rules": [ + { + "true": "#0FFF00", + "false": "#00FFF0" + } + ] + }, + { + "keyName": "s2", + "type": "number", + "rules": [ + { + "range": { + "minimum": null, + "maximum": null, + "exclusiveMinumum": null, + "exclusiveMaximum": "50" + }, + "color": "#343deb" + }, + { + "range": { + "minimum": "50", + "maximum": null, + "exclusiveMinumum": null, + "exclusiveMaximum": "69" + }, + "color": "#34ebb1" + }, + { + "range": { + "minimum": "69", + "maximum": null, + "exclusiveMinumum": null, + "exclusiveMaximum": "90" + }, + "color": "#eba834" + }, + { + "range": { + "minimum": "90", + "maximum": null, + "exclusiveMinumum": null, + "exclusiveMaximum": null + }, + "color": "#eb3434" + } + ] + } + ] + } + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/2.0/examples/UpdateStates.json b/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/2.0/examples/UpdateStates.json new file mode 100644 index 000000000000..ce3ec07ee9c6 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/2.0/examples/UpdateStates.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "geography": "us", + "api-version": "2.0", + "subscription-key": "[subscription-key]", + "statesetId": "b24bdb73-1305-3212-1909-a428d937b64", + "featureId": "SPC4709", + "featureStateUpdateRequestBody": { + "states": [ + { + "keyName": "s1", + "value": true, + "eventTimestamp": "2019-08-16 13:01" + } + ] + } + }, + "responses": { + "200": {}, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/2.0/examples/UpdateStateset.json b/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/2.0/examples/UpdateStateset.json new file mode 100644 index 000000000000..2fd16cb893d5 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/2.0/examples/UpdateStateset.json @@ -0,0 +1,102 @@ +{ + "parameters": { + "geography": "us", + "api-version": "2.0", + "subscription-key": "[subscription-key]", + "statesetId": "b24bdb73-1305-3212-1909-a428d937b64", + "statesetStyleUpdateRequestBody": { + "styles": [ + { + "keyname": "s1", + "type": "boolean", + "rules": [ + { + "true": "#FFFF00", + "false": "#FFFFFF" + } + ] + }, + { + "keyname": "s2", + "type": "number", + "rules": [ + { + "range": { + "exclusiveMaximum": 50 + }, + "color": "#343deb" + }, + { + "range": { + "minimum": 50, + "exclusiveMaximum": 69 + }, + "color": "#34ebb1" + }, + { + "range": { + "minimum": 69, + "exclusiveMaximum": 90 + }, + "color": "#eba834" + }, + { + "range": { + "minimum": 90 + }, + "color": "#eb3434" + } + ] + } + ] + } + }, + "responses": { + "200": {}, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/2.0/featurestate.json b/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/2.0/featurestate.json new file mode 100644 index 000000000000..7398a11f654f --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/2.0/featurestate.json @@ -0,0 +1,893 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Maps Feature State Service", + "version": "2.0", + "description": "APIs for managing the dynamic feature states in Azure Maps." + }, + "x-ms-parameterized-host": { + "hostTemplate": "{geography}.atlas.microsoft.com", + "parameters": [ + { + "$ref": "#/parameters/GeographicResourceLocation" + } + ] + }, + "schemes": [ + "https" + ], + "consumes": [], + "produces": [ + "application/json" + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "These are the [Azure Active Directory OAuth2](https://docs.microsoft.com/en-us/azure/active-directory/develop/v1-overview) Flows. When paired with [Azure Role Based Access](https://docs.microsoft.com/en-us/azure/role-based-access-control/overview) control it can be used to control access to Azure Maps REST APIs. Azure Role based access controls are used to designate access to one or more Azure Maps resource account or sub-resources. Any user, group, or service principal can be granted access via a built in role or a custom role composed of one or more permissions to Azure Maps REST APIs.\n\nTo implement scenarios we recommend viewing [authentication concepts](https://aka.ms/amauth). In summary, this security definition provides a solution for modeling application(s) via objects capable of access control on specific APIs and scopes.\n\n#### Note\n* This security definition **requires** the use of the `x-ms-client-id` header to indicate which Azure Maps resource the application is requesting access to. This can be acquired from the [Maps management API](https://aka.ms/amauthdetails).\n* The `Authorization URL` is specific to the Azure public cloud instance. Sovereign clouds have unique Authorization URLs and Azure Active directory configurations. \n* The Azure role based access control is configured from the [Azure management plane](https://aka.ms/amrbac) via Azure portal, Powershell, CLI, Azure SDKs, or REST APIs.\n* Usage of the [Azure Maps Web SDK](https://aka.ms/amaadmc) allows for configuration based setup of an application for multiple use cases.\n* Currently Azure Active Directory [v1.0](https://docs.microsoft.com/en-us/azure/active-directory/develop/azure-ad-endpoint-comparison) tokens are supported.", + "scopes": { + "user_impersonation": "Impersonates a user's Azure Active Directory account." + } + }, + "apiKeyQuery": { + "type": "apiKey", + "description": "This is a shared key which is provisioned when creating an [Azure Maps resource](https://aka.ms/amauth) through the Azure management plane via Azure portal, Powershell, CLI, Azure SDKs, or REST APIs. With this key, any application is authorized to access all REST APIs. In other words, these can currently be treated as master keys to the account which they are issued for. For publicly exposed applications our recommendation is to use server to server access of Azure Maps REST APIs where this key can be securely stored.", + "name": "subscription-key", + "in": "query" + } + }, + "security": [ + { + "azure_auth": [] + }, + { + "apiKeyQuery": [] + } + ], + "responses": { + "400": { + "description": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "401": { + "description": "Access denied due to invalid subscription key or invalid Azure Active Directory bearer token. Make sure to provide a valid key for an active Azure subscription and Maps resource. Otherwise, verify the [WWW-Authenticate](https://tools.ietf.org/html/rfc6750#section-3.1) header for error code and description of the provided AAD bearer token.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + }, + "headers": { + "WWW-Authenticate": { + "type": "string", + "description": "Bearer realm=\"https://atlas.microsoft.com/\", error=\"invalid_token\", error_description=\"The access token expired\"" + } + } + }, + "403": { + "description": "Permission, capacity, or authentication issues.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "404": { + "description": "Not Found: the requested resource could not be found, but it may be available again in the future.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "409": { + "description": "The request could not be completed due to a conflict with the current state of the resource. Likely caused by a parallel update to the same resource.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "500": { + "description": "An error occurred while processing the request. Please try again later.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + } + }, + "parameters": { + "GeographicResourceLocation": { + "name": "geography", + "description": "This parameter specifies where the Azure Maps Creator resource is located. Valid values are us and eu.", + "in": "path", + "required": true, + "type": "string", + "default": "us", + "enum": [ + "us", + "eu" + ], + "x-ms-enum": { + "name": "GeographicResourceLocation", + "modelAsString": true, + "values": [ + { + "value": "us", + "description": "Used to access an Azure Maps Creator resource in the United States" + }, + { + "value": "eu", + "description": "Used to access an Azure Maps Creator resource in Europe" + } + ] + }, + "x-ms-parameter-location": "client" + }, + "SubscriptionKey": { + "name": "subscription-key", + "description": "One of the Azure Maps keys provided from an Azure Map Account. Please refer to this [article](https://docs.microsoft.com/azure/azure-maps/how-to-manage-authentication) for details on how to manage authentication.", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "client" + }, + "ApiVersion": { + "name": "api-version", + "description": "Version number of Azure Maps API. Current version is 2.0", + "type": "string", + "in": "query", + "required": true, + "default": "2.0", + "x-ms-parameter-location": "client" + }, + "FeatureStateSetDescription": { + "name": "description", + "description": "Description for the stateset. Max length allowed is 1000.", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "method" + }, + "DatasetIdForCreate": { + "name": "datasetId", + "description": "The datasetId must have been obtained from a successful [Dataset Create API](https://docs.microsoft.com/en-us/rest/api/maps/v2/dataset/create) call.", + "type": "string", + "in": "query", + "required": true, + "x-ms-parameter-location": "method" + }, + "StatesetIdInPath": { + "name": "statesetId", + "description": "The stateset id that was created.", + "type": "string", + "in": "path", + "required": true, + "x-ms-parameter-location": "method" + }, + "FeatureIdSet": { + "name": "featureId", + "description": "The id of a feature in the given dataset. If the featureId is not present in the dataset, Bad Request response will be returned.", + "type": "string", + "in": "path", + "required": true, + "x-ms-parameter-location": "method" + }, + "FeatureIdGet": { + "name": "featureId", + "description": "The id of a feature in the given stateset. If no state was set for the featureId in the stateset earlier, Bad Request response will be returned.", + "type": "string", + "in": "path", + "required": true, + "x-ms-parameter-location": "method" + }, + "FeatureIdDelete": { + "name": "featureId", + "description": "The id of a feature in the given stateset. If no state was set for the featureId in the stateset earlier, Bad Request response will be returned.", + "type": "string", + "in": "path", + "required": true, + "x-ms-parameter-location": "method" + }, + "StateKeyNameDelete": { + "name": "stateKeyName", + "description": "The Name of the state to be deleted.", + "type": "string", + "in": "query", + "required": true, + "x-ms-parameter-location": "method" + } + }, + "paths": { + "/featureStateSets": { + "post": { + "x-publish": true, + "description": "**Applies to:** see pricing [tiers](https://aka.ms/AzureMapsPricingTier).\n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. [This](https://docs.microsoft.com/azure/azure-maps/creator-indoor-maps) article introduces concepts and tools that apply to Azure Maps Creator.\n\nThis POST API allows the user to create a new Stateset and define stateset style using request body.\n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. The Feature State API is part of Creator. \n\nThe Feature State service allows the user to update the states of a feature and query them to be used in other services. The dynamic properties of a feature that don't belong to the dataset are referred to as *states* here.\n\nThis Feature State service pivot on the Stateset. Like Tileset, Stateset encapsulates the storage mechanism for feature states for a dataset.\n\nOnce the stateset is created, users can use that statesetId to post feature state updates and retrieve the current feature states. A feature can have only one state at a given point in time. \n\nFeature state is defined by the key name, value and the timestamp. When a feature state update is posted to Azure Maps, the state value gets updated only if the provided state’s timestamp is later than the stored timestamp. \n\nAzure Maps MapControl provides a way to use these feature states to style the features. Please refer to the State Tile documentation for more information.", + "operationId": "FeatureState_CreateStateset", + "x-ms-examples": { + "Create a new stateset with a datasetId": { + "$ref": "./examples/CreateStateset.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/DatasetIdForCreate" + }, + { + "$ref": "#/parameters/FeatureStateSetDescription" + }, + { + "name": "statesetCreateRequestBody", + "in": "body", + "description": "The stateset style JSON data.", + "required": true, + "schema": { + "$ref": "#/definitions/StylesObject" + } + } + ], + "responses": { + "200": { + "description": "Stateset created.", + "schema": { + "$ref": "#/definitions/StatesetCreatedResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + }, + "get": { + "x-publish": true, + "description": "**Applies to:** see pricing [tiers](https://aka.ms/AzureMapsPricingTier).\n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. [This](https://docs.microsoft.com/azure/azure-maps/creator-indoor-maps) article introduces concepts and tools that apply to Azure Maps Creator.\n\n This API allows the caller to fetch a list of all previously successfully created statesets.", + "operationId": "FeatureState_ListStateset", + "x-ms-examples": { + "List all the previously created statesets": { + "$ref": "./examples/Stateset_List.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "The list stateset request completed successfully. The response body contains a list of all the previously created statesets.", + "schema": { + "$ref": "#/definitions/StatesetListResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/featureStateSets/{statesetId}": { + "put": { + "x-publish": true, + "description": "**Applies to:** see pricing [tiers](https://aka.ms/AzureMapsPricingTier).\n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. [This](https://docs.microsoft.com/azure/azure-maps/creator-indoor-maps) article introduces concepts and tools that apply to Azure Maps Creator.\n\nThis PUT API allows the user to update the stateset style rules.", + "operationId": "FeatureState_PutStateset", + "x-ms-examples": { + "Update stateset style rules with a statesetId": { + "$ref": "./examples/UpdateStateset.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/StatesetIdInPath" + }, + { + "name": "statesetStyleUpdateRequestBody", + "in": "body", + "description": "The stateset style JSON data. Only style rules are allowed to be updated, update on keyname and type is not allowed.", + "required": true, + "schema": { + "$ref": "#/definitions/StylesObject" + } + } + ], + "responses": { + "200": { + "description": "Stateset styles are updated successfully." + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + }, + "delete": { + "x-publish": true, + "description": "**Applies to:** see pricing [tiers](https://aka.ms/AzureMapsPricingTier).\n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. [This](https://docs.microsoft.com/azure/azure-maps/creator-indoor-maps) article introduces concepts and tools that apply to Azure Maps Creator.\n\n This DELETE API allows the user to delete the stateset and the associated data.", + "operationId": "FeatureState_DeleteStateset", + "x-ms-examples": { + "Delete an existing stateset": { + "$ref": "./examples/DeleteStateset.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/StatesetIdInPath" + } + ], + "responses": { + "204": { + "description": "Stateset Deleted." + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + }, + "get": { + "x-publish": true, + "description": "**Applies to:** see pricing [tiers](https://aka.ms/AzureMapsPricingTier).\n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. [This](https://docs.microsoft.com/azure/azure-maps/creator-indoor-maps) article introduces concepts and tools that apply to Azure Maps Creator.\n\nThis GET API allows the user to get the stateset Information.\n\nThe stateset Information includes the datasetId associated to the stateset, and the styles of that stateset.", + "operationId": "FeatureState_GetStateset", + "x-ms-examples": { + "Get stateset information with a statesetId": { + "$ref": "./examples/GetStateset.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/StatesetIdInPath" + } + ], + "responses": { + "200": { + "description": "Get request completed successfully.", + "schema": { + "$ref": "#/definitions/StatesetGetResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/featureStateSets/{statesetId}/featureStates/{featureId}": { + "put": { + "x-publish": true, + "operationId": "FeatureState_UpdateStates", + "description": "**Applies to:** see pricing [tiers](https://aka.ms/AzureMapsPricingTier).\n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. [This](https://docs.microsoft.com/azure/azure-maps/creator-indoor-maps) article introduces concepts and tools that apply to Azure Maps Creator.\n\nThis PUT API allows the user to update the state of the given feature in the given stateset.", + "x-ms-examples": { + "Update the states of a feature": { + "$ref": "./examples/UpdateStates.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/StatesetIdInPath" + }, + { + "$ref": "#/parameters/FeatureIdSet" + }, + { + "name": "featureStateUpdateRequestBody", + "in": "body", + "description": "The feature state JSON data. A feature can have only one state at a given point in time. The specified state keyname must have been defined during the stateset creation.", + "required": true, + "schema": { + "$ref": "#/definitions/FeatureStatesStructure" + } + } + ], + "responses": { + "200": { + "description": "Feature states are updated successfully." + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + }, + "delete": { + "x-publish": true, + "operationId": "FeatureState_DeleteState", + "description": "**Applies to:** see pricing [tiers](https://aka.ms/AzureMapsPricingTier).\n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. [This](https://docs.microsoft.com/azure/azure-maps/creator-indoor-maps) article introduces concepts and tools that apply to Azure Maps Creator.\n\n This API deletes the state information identified by the StateKeyName parameter for the feature identified by the FeatureId parameter in the the stateset.", + "x-ms-examples": { + "Delete the given feature state": { + "$ref": "./examples/DeleteFeatureState.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/StatesetIdInPath" + }, + { + "$ref": "#/parameters/FeatureIdDelete" + }, + { + "$ref": "#/parameters/StateKeyNameDelete" + } + ], + "responses": { + "204": { + "description": "Feature states deleted successfully." + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "409": { + "$ref": "#/responses/409" + }, + "500": { + "$ref": "#/responses/500" + } + } + }, + "get": { + "x-publish": true, + "operationId": "FeatureState_GetStates", + "description": "**Applies to:** see pricing [tiers](https://aka.ms/AzureMapsPricingTier).\n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. [This](https://docs.microsoft.com/azure/azure-maps/creator-indoor-maps) article introduces concepts and tools that apply to Azure Maps Creator.\n\n This API returns the current state information associated with the given feature in the given stateset.", + "x-ms-examples": { + "Get the current states of a feature": { + "$ref": "./examples/GetStates.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/StatesetIdInPath" + }, + { + "$ref": "#/parameters/FeatureIdGet" + } + ], + "responses": { + "200": { + "description": "Get request completed successfully.", + "schema": { + "$ref": "#/definitions/FeatureStatesStructure" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + } + }, + "definitions": { + "ODataErrorResponse": { + "type": "object", + "description": "This response object is returned when an error occurs in the Maps API.", + "properties": { + "error": { + "$ref": "#/definitions/ODataError" + } + } + }, + "ODataError": { + "type": "object", + "description": "This object is returned when an error occurs in the Maps API.", + "properties": { + "code": { + "type": "string", + "readOnly": true, + "description": "The ODataError code." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "If available, a human readable description of the error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ODataError" + } + }, + "target": { + "type": "string", + "readOnly": true, + "description": "If available, the target causing the error." + } + } + }, + "StatesetGetResponse": { + "description": "The response model for the successful Stateset Get API.", + "type": "object", + "properties": { + "description": { + "description": "Description associated with the stateset.", + "type": "string", + "readOnly": true + }, + "datasetIds": { + "description": "Dataset ID associated with the stateset.", + "type": "array", + "items": { + "type": "string" + } + }, + "statesetStyle": { + "$ref": "#/definitions/StylesObject" + } + } + }, + "StatesetListResponse": { + "description": "The response model for the successful Stateset List API.", + "type": "object", + "properties": { + "statesets": { + "description": "A list of statesets information.", + "type": "array", + "items": { + "$ref": "#/definitions/StatesetInfoObject" + } + }, + "nextLink": { + "description": "If present, the location of the next page of data.", + "type": "string", + "readOnly": true + } + } + }, + "StatesetInfoObject": { + "description": "The stateset information detail.", + "type": "object", + "properties": { + "statesetId": { + "description": "The stateset ID of this stateset.", + "type": "string" + }, + "description": { + "description": "Description associated with the stateset.", + "type": "string", + "readOnly": true + }, + "datasetIds": { + "description": "Dataset ID associated with the stateset.", + "type": "array", + "items": { + "type": "string" + } + }, + "statesetStyle": { + "$ref": "#/definitions/StylesObject" + } + } + }, + "StatesetCreatedResponse": { + "description": "The response model for the successful Stateset Create API.", + "type": "object", + "properties": { + "statesetId": { + "description": "The ID for the new stateset created.", + "type": "string", + "readOnly": true + } + } + }, + "FeatureStatesStructure": { + "description": "The feature states model for a feature.", + "type": "object", + "properties": { + "states": { + "description": "The feature states array.", + "type": "array", + "items": { + "$ref": "#/definitions/FeatureStateObject" + } + } + } + }, + "FeatureStateObject": { + "description": "Single feature state model.", + "type": "object", + "properties": { + "keyName": { + "description": "Feature state Keyname. Maximum length allowed is 1000.", + "type": "string" + }, + "value": { + "description": "Value for the feature state. Type should comply with the style definition attached to the featurestate. Maximum length allowed for string type is 1024.", + "type": "object" + }, + "eventTimestamp": { + "description": "Valid Timestamp when the feature state was captured.", + "type": "string" + } + } + }, + "StylesObject": { + "description": "The styles model.", + "type": "object", + "properties": { + "styles": { + "description": "An array of stateset styles. The style rule could be a numeric or string or a boolean type style rule. Refer to NumberRuleObject, StringRuleObject and BooleanRuleObject definitions [here](https://aka.ms/AzureMapsStatesetStylesObject). ", + "type": "array", + "items": { + "$ref": "#/definitions/StyleObject" + } + } + } + }, + "StyleObject": { + "description": "The stateset style model. The style rule could be a numeric type style rule or a boolean type style rule. Refer to NumberRuleObject, StringRuleObject and BooleanRuleObject definitions [here](https://aka.ms/AzureMapsStatesetStylesObject). ", + "type": "object" + }, + "NumberRuleObject": { + "description": "The numeric rule", + "type": "object", + "properties": { + "range": { + "$ref": "#/definitions/RangeObject" + }, + "color": { + "description": "Color is a JSON string in a variety of permitted formats, HTML-style hex values, RGB (\"#ff0\", \"#ffff00\", \"rgb(255, 255, 0)\"), RGBA (\"rgba(255, 255, 0, 1)\"), HSL(\"hsl(100, 50%, 50%)\"), and HSLA(\"hsla(100, 50%, 50%, 1)\"). Predefined HTML colors names, like yellow and blue, are also permitted.", + "type": "string" + } + } + }, + "RangeObject": { + "description": "The numeric value range for this style rule, If the value is in the range, all the conditions must hold true.", + "type": "object", + "properties": { + "minimum": { + "description": "All the number x that x ≥ minimum.", + "type": "number", + "format": "double" + }, + "maximum": { + "description": "All the number x that x ≤ maximum.", + "type": "number", + "format": "double" + }, + "exclusiveMinimum": { + "description": "All the number x that x > exclusiveMinimum.", + "type": "number", + "format": "double" + }, + "exclusiveMaximum": { + "description": "All the number x that x < exclusiveMaximum.", + "type": "number", + "format": "double" + } + } + }, + "BooleanRuleObject": { + "description": "the boolean rule", + "type": "object", + "properties": { + "true": { + "description": "The color when value is true.", + "type": "string" + }, + "false": { + "description": "The color when value is false.", + "type": "string" + } + } + }, + "StringRuleObject": { + "description": "The string rule. The string value matching is case sensitive. If a feature's state doesn't match any of the values defined here, that feature will not have any dynamic style. If duplicate string values are given, the first one takes precedence.", + "type": "object", + "properties": { + "stateValue1": { + "description": "The color when value string is stateValue1.", + "type": "string" + }, + "stateValue2": { + "description": "The color when value string is stateValue2.", + "type": "string" + }, + "stateValueN": { + "description": "The color when value string is stateValueN.", + "type": "string" + } + } + }, + "StyleRuleBase": { + "description": "contains common properties for numeric, string and boolean style rules.", + "discriminator": "type", + "required": [ + "keyName", + "type" + ], + "properties": { + "keyName": { + "description": "Stateset style key name. Key names are random strings but they should be unique inside style array. Maximum length allowed is 1000.", + "type": "string" + }, + "type": { + "description": "The type of stateset style.", + "type": "string", + "enum": [ + "number", + "boolean", + "string" + ] + } + } + }, + "BooleanTypeStyleRule": { + "description": "the boolean type style rule object.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/StyleRuleBase" + } + ], + "properties": { + "rules": { + "description": "Boolean style rules.", + "type": "array", + "items": { + "$ref": "#/definitions/BooleanRuleObject" + } + } + } + }, + "NumberTypeStyleRule": { + "description": "The numeric type style rule object.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/StyleRuleBase" + } + ], + "properties": { + "rules": { + "description": "Numeric style rules.", + "type": "array", + "items": { + "$ref": "#/definitions/NumberRuleObject" + } + } + } + }, + "StringTypeStyleRule": { + "description": "The string type style rule object.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/StyleRuleBase" + } + ], + "properties": { + "rules": { + "description": "String style rules.", + "type": "array", + "items": { + "$ref": "#/definitions/StringRuleObject" + } + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Feedback/preview/1.0/feedback.json b/specification/maps/data-plane/Microsoft.Maps/Feedback/preview/1.0/feedback.json index c6c282364104..e32a48a67715 100644 --- a/specification/maps/data-plane/Microsoft.Maps/Feedback/preview/1.0/feedback.json +++ b/specification/maps/data-plane/Microsoft.Maps/Feedback/preview/1.0/feedback.json @@ -171,7 +171,7 @@ ], "x-ms-enum": { "name": "GeoJSONGeometryType", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "Point", diff --git a/specification/maps/data-plane/Microsoft.Maps/Geolocation/preview/1.0/geolocation.json b/specification/maps/data-plane/Microsoft.Maps/Geolocation/preview/1.0/geolocation.json index af145ea5c56c..237abbe0d7c6 100644 --- a/specification/maps/data-plane/Microsoft.Maps/Geolocation/preview/1.0/geolocation.json +++ b/specification/maps/data-plane/Microsoft.Maps/Geolocation/preview/1.0/geolocation.json @@ -113,7 +113,7 @@ ], "x-ms-enum": { "name": "JsonFormat", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "json", diff --git a/specification/maps/data-plane/Microsoft.Maps/Mobility/preview/1.0/mobility.json b/specification/maps/data-plane/Microsoft.Maps/Mobility/preview/1.0/mobility.json index 3af3f353c1f6..82686274d07f 100644 --- a/specification/maps/data-plane/Microsoft.Maps/Mobility/preview/1.0/mobility.json +++ b/specification/maps/data-plane/Microsoft.Maps/Mobility/preview/1.0/mobility.json @@ -112,7 +112,7 @@ ], "x-ms-enum": { "name": "JsonFormat", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "json", @@ -184,7 +184,7 @@ ], "x-ms-enum": { "name": "MetroAreaQueryType", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "position", @@ -274,7 +274,7 @@ ], "x-ms-enum": { "name": "MetroAreaDetailType", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "agencies", @@ -463,7 +463,7 @@ ], "x-ms-enum": { "name": "TransitLineDetailType", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "alerts", @@ -568,7 +568,7 @@ "default": "stopId", "x-ms-enum": { "name": "TransitStopQueryType", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "stopId", @@ -598,7 +598,7 @@ ], "x-ms-enum": { "name": "TransitStopDetailType", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "alerts", @@ -696,7 +696,7 @@ "default": "position", "x-ms-enum": { "name": "OriginType", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "position", @@ -735,7 +735,7 @@ ], "x-ms-enum": { "name": "DestinationType", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "position", @@ -768,7 +768,7 @@ ], "x-ms-enum": { "name": "ModeType", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "walk", @@ -807,7 +807,7 @@ ], "x-ms-enum": { "name": "TransitTypeFilter", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "bus", @@ -870,7 +870,7 @@ ], "x-ms-enum": { "name": "AgencyType", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "agencyId", @@ -909,7 +909,7 @@ ], "x-ms-enum": { "name": "TimeType", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "arrival", @@ -940,7 +940,7 @@ ], "x-ms-enum": { "name": "TransitRouteType", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "optimal", @@ -1038,7 +1038,7 @@ ], "x-ms-enum": { "name": "TransitItineraryDetailType", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "geometry", @@ -1130,7 +1130,7 @@ "default": "stops", "x-ms-enum": { "name": "RealTimeArrivalsQueryType", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "stops", @@ -1165,7 +1165,7 @@ "default": "stopId", "x-ms-enum": { "name": "StopQueryType", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "stopId", @@ -1215,7 +1215,7 @@ ], "x-ms-enum": { "name": "TransitTypeFilter", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "bus", @@ -1278,7 +1278,7 @@ ], "x-ms-enum": { "name": "AgencyType", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "agencyId", @@ -1411,7 +1411,7 @@ ], "x-ms-enum": { "name": "GeoJSONGeometryType", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "Point", @@ -2088,7 +2088,7 @@ ], "x-ms-enum": { "name": "LegType", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "Walk", @@ -2268,7 +2268,7 @@ ], "x-ms-enum": { "name": "RelativeDirection", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "depart", @@ -2340,7 +2340,7 @@ ], "x-ms-enum": { "name": "AbsoluteDirection", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "north", @@ -2481,7 +2481,7 @@ ], "x-ms-enum": { "name": "TransitType", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "Bus", @@ -2571,7 +2571,7 @@ ], "x-ms-enum": { "name": "ScheduleType", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "scheduledTime", diff --git a/specification/maps/data-plane/Microsoft.Maps/Render/preview/1.0/render.json b/specification/maps/data-plane/Microsoft.Maps/Render/preview/1.0/render.json index 3b9a123fb0a5..3fe229eaf2f9 100644 --- a/specification/maps/data-plane/Microsoft.Maps/Render/preview/1.0/render.json +++ b/specification/maps/data-plane/Microsoft.Maps/Render/preview/1.0/render.json @@ -114,7 +114,7 @@ ], "x-ms-enum": { "name": "RasterTileFormat", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "png", @@ -144,7 +144,7 @@ ], "x-ms-enum": { "name": "TileFormat", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "png", @@ -190,7 +190,7 @@ ], "x-ms-enum": { "name": "TextFormat", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "json", @@ -300,7 +300,7 @@ ], "x-ms-enum": { "name": "StaticMapLayer", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "basic", @@ -330,7 +330,7 @@ ], "x-ms-enum": { "name": "MapImageStyle", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "main", @@ -488,7 +488,7 @@ "type": "string", "x-ms-enum": { "name": "MapTileLayer", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "basic", @@ -522,7 +522,7 @@ ], "x-ms-enum": { "name": "MapTileStyle", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "main", @@ -561,7 +561,7 @@ ], "x-ms-enum": { "name": "MapTileSize", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "256", @@ -761,7 +761,7 @@ ], "x-ms-enum": { "name": "MapImageryStyle", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "satellite", diff --git a/specification/maps/data-plane/Microsoft.Maps/Render/preview/2.0/render.json b/specification/maps/data-plane/Microsoft.Maps/Render/preview/2.0/render.json index edf172e99f21..3035ae4e980e 100644 --- a/specification/maps/data-plane/Microsoft.Maps/Render/preview/2.0/render.json +++ b/specification/maps/data-plane/Microsoft.Maps/Render/preview/2.0/render.json @@ -125,7 +125,7 @@ ], "x-ms-enum": { "name": "TilesetID", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "microsoft.base", @@ -290,7 +290,7 @@ ], "x-ms-enum": { "name": "TileSize", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "256", diff --git a/specification/maps/data-plane/Microsoft.Maps/Route/preview/1.0/route.json b/specification/maps/data-plane/Microsoft.Maps/Route/preview/1.0/route.json index 20db41da9378..2a974720a1c5 100644 --- a/specification/maps/data-plane/Microsoft.Maps/Route/preview/1.0/route.json +++ b/specification/maps/data-plane/Microsoft.Maps/Route/preview/1.0/route.json @@ -132,7 +132,7 @@ ], "x-ms-enum": { "name": "JsonFormat", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "json", @@ -154,7 +154,7 @@ ], "x-ms-enum": { "name": "TextFormat", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "json", @@ -190,7 +190,7 @@ ], "x-ms-enum": { "name": "VehicleLoadType", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "USHazmatClass1", @@ -259,7 +259,7 @@ ], "x-ms-enum": { "name": "RouteType", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "fastest", @@ -295,7 +295,7 @@ ], "x-ms-enum": { "name": "Windingness", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "low", @@ -327,7 +327,7 @@ ], "x-ms-enum": { "name": "Hilliness", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "low", @@ -364,7 +364,7 @@ ], "x-ms-enum": { "name": "TravelMode", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "car", @@ -419,7 +419,7 @@ ], "x-ms-enum": { "name": "Avoid", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "tollRoads", @@ -466,7 +466,7 @@ "default": "combustion", "x-ms-enum": { "name": "VehicleEngineType", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "combustion", @@ -698,7 +698,7 @@ ], "x-ms-enum": { "name": "SectionType", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "carTrain", @@ -767,7 +767,7 @@ ], "x-ms-enum": { "name": "RouteRepresentation", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "polyline", @@ -798,7 +798,7 @@ ], "x-ms-enum": { "name": "ComputeTravelTimeFor", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "none", @@ -852,7 +852,7 @@ ], "x-ms-enum": { "name": "AlternativeRouteType", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "anyRoute", @@ -879,7 +879,7 @@ ], "x-ms-enum": { "name": "RouteInstructionsType", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "coded", @@ -1768,7 +1768,7 @@ ], "x-ms-enum": { "name": "GeoJSONGeometryType", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "Point", @@ -2229,7 +2229,7 @@ ], "x-ms-enum": { "name": "MagnitudeOfDelay", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "0", @@ -2328,7 +2328,7 @@ ], "x-ms-enum": { "name": "GuidanceInstructionType", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "TURN", @@ -2402,7 +2402,7 @@ ], "x-ms-enum": { "name": "JunctionType", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "REGULAR", @@ -2444,7 +2444,7 @@ ], "x-ms-enum": { "name": "DrivingSide", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "LEFT", @@ -2498,7 +2498,7 @@ ], "x-ms-enum": { "name": "GuidanceManeuver", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "ARRIVE", diff --git a/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/search.json b/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/search.json index 8546751c3d02..55803cc5462c 100644 --- a/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/search.json +++ b/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/search.json @@ -132,7 +132,7 @@ ], "x-ms-enum": { "name": "JsonFormat", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "json", @@ -154,7 +154,7 @@ ], "x-ms-enum": { "name": "TextFormat", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "json", @@ -290,7 +290,7 @@ ], "x-ms-enum": { "name": "SearchIndexSet", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "Addr", @@ -422,7 +422,7 @@ ], "x-ms-enum": { "name": "ConnectorSet", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "StandardHouseholdCountrySpecific", @@ -485,7 +485,7 @@ ], "x-ms-enum": { "name": "OpeningHours", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "nextSevenDays", @@ -1237,7 +1237,7 @@ ], "x-ms-enum": { "name": "EntityType", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "Country", @@ -2030,7 +2030,7 @@ ], "x-ms-enum": { "name": "GeoJSONGeometryType", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "Point", @@ -3539,7 +3539,7 @@ ], "x-ms-enum": { "name": "EntityType", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "Country", diff --git a/specification/maps/data-plane/Microsoft.Maps/Spatial/preview/1.0/spatial.json b/specification/maps/data-plane/Microsoft.Maps/Spatial/preview/1.0/spatial.json index 06acf54d01db..6b3c8366926e 100644 --- a/specification/maps/data-plane/Microsoft.Maps/Spatial/preview/1.0/spatial.json +++ b/specification/maps/data-plane/Microsoft.Maps/Spatial/preview/1.0/spatial.json @@ -123,7 +123,7 @@ ], "x-ms-enum": { "name": "JsonFormat", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "json", @@ -145,7 +145,7 @@ ], "x-ms-enum": { "name": "TextFormat", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "json", @@ -171,7 +171,7 @@ ], "x-ms-enum": { "name": "GeofenceMode", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "All", @@ -204,7 +204,7 @@ ], "x-ms-enum": { "name": "SpatialDataUploadFormat", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "geojson", @@ -1049,7 +1049,7 @@ ], "x-ms-enum": { "name": "GeoJSONGeometryType", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "Point", diff --git a/specification/maps/data-plane/Microsoft.Maps/Tileset/preview/1.0/examples/Create.json b/specification/maps/data-plane/Microsoft.Maps/Tileset/preview/1.0/examples/Create.json index 8767d242b699..d95ef6727f62 100644 --- a/specification/maps/data-plane/Microsoft.Maps/Tileset/preview/1.0/examples/Create.json +++ b/specification/maps/data-plane/Microsoft.Maps/Tileset/preview/1.0/examples/Create.json @@ -1,5 +1,6 @@ { "parameters": { + "geography": "us", "api-version": "1.0", "subscription-key": "[subscription-key]", "datasetId": "[dataset-Id]" @@ -7,19 +8,19 @@ "responses": { "201": { "headers": { - "Location": "https://atlas.microsoft.com/tileset/{tilesetId}?api-version=1.0", + "Location": "https://us.atlas.microsoft.com/tileset/{tilesetId}?api-version=1.0", "Access-Control-Expose-Headers": "Location" }, "body": { "operationId": "{operationId}", "status": "Succeeded", "created": "2020-01-02 1:02:03 AM +00:00", - "resourceLocation": "https://atlas.microsoft.com/tileset/{tilesetId}?api-version=1.0" + "resourceLocation": "https://us.atlas.microsoft.com/tileset/{tilesetId}?api-version=1.0" } }, "202": { "headers": { - "Location": "https://atlas.microsoft.com/tileset/operations/{operationId}?api-version=1.0", + "Location": "https://us.atlas.microsoft.com/tileset/operations/{operationId}?api-version=1.0", "Access-Control-Expose-Headers": "Location" } }, diff --git a/specification/maps/data-plane/Microsoft.Maps/Tileset/preview/1.0/examples/Delete.json b/specification/maps/data-plane/Microsoft.Maps/Tileset/preview/1.0/examples/Delete.json index 8f36f5a7d813..645e0fcb102b 100644 --- a/specification/maps/data-plane/Microsoft.Maps/Tileset/preview/1.0/examples/Delete.json +++ b/specification/maps/data-plane/Microsoft.Maps/Tileset/preview/1.0/examples/Delete.json @@ -1,5 +1,6 @@ { "parameters": { + "geography": "us", "api-version": "1.0", "subscription-key": "[subscription-key]", "tilesetId": "25084fb7-307a-4720-8f91-7952a0b91012" diff --git a/specification/maps/data-plane/Microsoft.Maps/Tileset/preview/1.0/examples/List.json b/specification/maps/data-plane/Microsoft.Maps/Tileset/preview/1.0/examples/List.json index 382cb4025edf..ec95c2ccc02e 100644 --- a/specification/maps/data-plane/Microsoft.Maps/Tileset/preview/1.0/examples/List.json +++ b/specification/maps/data-plane/Microsoft.Maps/Tileset/preview/1.0/examples/List.json @@ -1,5 +1,6 @@ { "parameters": { + "geography": "us", "api-version": "1.0", "subscription-key": "[subscription-key]" }, diff --git a/specification/maps/data-plane/Microsoft.Maps/Tileset/preview/1.0/tileset.json b/specification/maps/data-plane/Microsoft.Maps/Tileset/preview/1.0/tileset.json index fa4aaaf6ef44..804c435ff954 100644 --- a/specification/maps/data-plane/Microsoft.Maps/Tileset/preview/1.0/tileset.json +++ b/specification/maps/data-plane/Microsoft.Maps/Tileset/preview/1.0/tileset.json @@ -5,7 +5,14 @@ "version": "1.0", "description": "APIs for managing Tilesets." }, - "host": "atlas.microsoft.com", + "x-ms-parameterized-host": { + "hostTemplate": "{geography}.atlas.microsoft.com", + "parameters": [ + { + "$ref": "#/parameters/GeographicResourceLocation" + } + ] + }, "schemes": [ "https" ], @@ -98,6 +105,33 @@ } }, "parameters": { + "GeographicResourceLocation": { + "name": "geography", + "description": "This parameter specifies where the Azure Maps Creator resource is located. Valid values are us and eu.", + "in": "path", + "required": true, + "type": "string", + "default": "us", + "enum": [ + "us", + "eu" + ], + "x-ms-enum": { + "name": "GeographicResourceLocation", + "modelAsString": true, + "values": [ + { + "value": "us", + "description": "Used to access an Azure Maps Creator resource in the United States" + }, + { + "value": "eu", + "description": "Used to access an Azure Maps Creator resource in Europe" + } + ] + }, + "x-ms-parameter-location": "client" + }, "ClientId": { "name": "x-ms-client-id", "description": "Specifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.", @@ -134,7 +168,7 @@ ], "x-ms-enum": { "name": "JsonFormat", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "json", @@ -173,7 +207,7 @@ "/tileset/create/vector": { "post": { "x-publish": true, - "description": "**Tileset Create API**\n\n**Applies to**: S1 pricing tier.\n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API \nand SDK. The Tileset API is part of Creator.\n\nThe Tileset Create API allows the caller to create a tileset from a dataset. A tileset contains a set of tiles that can be consumed \nfrom the [Get Map Tile](/rest/api/maps/render/getmaptile) to retrieve custom tiles. To make a dataset, use the \n[DataSet Create API](/rest/api/maps/dataset/createpreview).\n\n## Submit Create Request\n\nTo create your tileset you will make a `POST` request with an empty body. The `datasetId` query parameter will be \nused as the source of the tileset data.\n\nThe Create Tileset API is a \n[long-running request](https://aka.ms/am-creator-lrt).", + "description": "**Tileset Create API**\n\n**Applies to**: see pricing [tiers](https://azure.microsoft.com/en-us/pricing/details/azure-maps/).\n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API \nand SDK. [This](https://docs.microsoft.com/en-us/azure/azure-maps/creator-indoor-maps) article introduces concepts and tools that apply to Azure Maps Creator.\n\nThe Tileset Create API allows the caller to create a tileset from a dataset. A tileset contains a set of tiles that can be consumed \nfrom the [Get Map Tile](/rest/api/maps/render/getmaptile) to retrieve custom tiles. To make a dataset, use the \n[DataSet Create API](/rest/api/maps/dataset/createpreview).\n\n## Submit Create Request\n\nTo create your tileset you will make a `POST` request with an empty body. The `datasetId` query parameter will be \nused as the source of the tileset data.\n\nThe Create Tileset API is a \n[long-running request](https://aka.ms/am-creator-lrt).", "operationId": "Tileset_CreatePreview", "x-ms-long-running-operation": true, "x-ms-long-running-operation-options": { @@ -229,7 +263,7 @@ "/tileset": { "get": { "x-publish": true, - "description": "**Tileset List API**\n\n**Applies to:** S1 pricing tier.\n
    \n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. The Tileset API is part of Creator.\nThis API allows the caller to fetch a list of all tilesets created. \n
    ", + "description": "**Tileset List API**\n\n**Applies to**: see pricing [tiers](https://azure.microsoft.com/en-us/pricing/details/azure-maps/).\n
    \n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. [This](https://docs.microsoft.com/en-us/azure/azure-maps/creator-indoor-maps) article introduces concepts and tools that apply to Azure Maps Creator.\nThis API allows the caller to fetch a list of all tilesets created. \n
    ", "operationId": "Tileset_ListPreview", "x-ms-examples": { "Get a list of all tilesets": { @@ -275,7 +309,7 @@ "/tileset/{tilesetId}": { "delete": { "x-publish": true, - "description": "**Tileset Delete API**\n\n**Applies to:** S1 pricing tier.\n
    \n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. The Tileset API is part of Creator.\nThis API allows the caller to delete a created tileset.
    \nYou can use this API if a tileset is no longer needed. \n\n### Submit Delete Request\n\nTo delete your content you will issue a `DELETE` request where the path will contain the `tilesetId` of the tileset to delete.
    \n\n#### Delete request \"Successful\"\n\nThe Tileset Delete API returns a HTTP `204 No Content` response with an empty body, if the tileset was deleted successfully.
    \n\n#### Delete request \"Failed\"\n\nA HTTP `400 Bad Request` error response will be returned if the tileset with the passed-in `tilesetId` is not found. \n\nHere is a sample error response:\n\n
    \n\n```json\n{\n \"error\": {\n \"code\": \"400 BadRequest\",\n \"message\": \"Bad request - Tileset Id: d85b5b27-5fc4-4599-8b50-47160e90f8ce does not exist.\"\n }\n}\n```", + "description": "**Tileset Delete API**\n\n**Applies to**: see pricing [tiers](https://azure.microsoft.com/en-us/pricing/details/azure-maps/).\n
    \n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. [This](https://docs.microsoft.com/en-us/azure/azure-maps/creator-indoor-maps) article introduces concepts and tools that apply to Azure Maps Creator.\nThis API allows the caller to delete a created tileset.
    \nYou can use this API if a tileset is no longer needed. \n\n### Submit Delete Request\n\nTo delete your content you will issue a `DELETE` request where the path will contain the `tilesetId` of the tileset to delete.
    \n\n#### Delete request \"Successful\"\n\nThe Tileset Delete API returns a HTTP `204 No Content` response with an empty body, if the tileset was deleted successfully.
    \n\n#### Delete request \"Failed\"\n\nA HTTP `400 Bad Request` error response will be returned if the tileset with the passed-in `tilesetId` is not found. \n\nHere is a sample error response:\n\n
    \n\n```json\n{\n \"error\": {\n \"code\": \"400 BadRequest\",\n \"message\": \"Bad request - Tileset Id: d85b5b27-5fc4-4599-8b50-47160e90f8ce does not exist.\"\n }\n}\n```", "operationId": "Tileset_DeletePreview", "x-ms-examples": { "Delete a created tileset": { @@ -378,7 +412,7 @@ ], "x-ms-enum": { "name": "type", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "NotStarted", diff --git a/specification/maps/data-plane/Microsoft.Maps/Tileset/preview/2.0/examples/Create.json b/specification/maps/data-plane/Microsoft.Maps/Tileset/preview/2.0/examples/Create.json new file mode 100644 index 000000000000..e716a4723b7b --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Tileset/preview/2.0/examples/Create.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "geography": "us", + "api-version": "2.0", + "subscription-key": "[subscription-key]", + "datasetId": "[dataset-Id]" + }, + "responses": { + "202": { + "headers": { + "Operation-Location": "https://us.atlas.microsoft.com/tilesets/operations/{operationId}?api-version=2.0", + "Access-Control-Expose-Headers": "Operation-Location" + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Tileset/preview/2.0/examples/Delete.json b/specification/maps/data-plane/Microsoft.Maps/Tileset/preview/2.0/examples/Delete.json new file mode 100644 index 000000000000..ae7659af0fd1 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Tileset/preview/2.0/examples/Delete.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "geography": "us", + "api-version": "2.0", + "subscription-key": "[subscription-key]", + "tilesetId": "25084fb7-307a-4720-8f91-7952a0b91012" + }, + "responses": { + "204": {}, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Tileset/preview/2.0/examples/Get.json b/specification/maps/data-plane/Microsoft.Maps/Tileset/preview/2.0/examples/Get.json new file mode 100644 index 000000000000..f5020314cf6d --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Tileset/preview/2.0/examples/Get.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "geography": "us", + "api-version": "2.0", + "subscription-key": "[subscription-key]", + "tilesetId": "d8fa86de-bb0f-4a02-a6ff-62ae7545dd84" + }, + "responses": { + "200": { + "body": { + "tilesetId": "d8fa86de-bb0f-4a02-a6ff-62ae7545dd84", + "datasetId": "63b18a6b-ac35-4b23-a1d9-ffa1003ad50b", + "description": "My first tileset", + "minZoom": 16, + "maxZoom": 18, + "bbox": [ + -122.13595, + 47.636524, + -122.1329, + 47.637525 + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Tileset/preview/2.0/examples/GetOperation.json b/specification/maps/data-plane/Microsoft.Maps/Tileset/preview/2.0/examples/GetOperation.json new file mode 100644 index 000000000000..c3ec377fb2a7 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Tileset/preview/2.0/examples/GetOperation.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "geography": "us", + "api-version": "2.0", + "subscription-key": "[subscription-key]", + "operationId": "8b1288fa-1958-4a2b-b68e-13a7i5af7d7c" + }, + "responses": { + "200": { + "body": { + "operationId": "8b1288fa-1958-4a2b-b68e-13a7i5af7d7c", + "created": "2021-04-20T22:43:14.9401559+00:00", + "status": "Succeeded" + }, + "headers": { + "Resource-Location": "https://us.atlas.microsoft.com/tilesets/3e36b996-f6d1-b068-0fcb-dd6b014c3447?api-version=2.0" + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Tileset/preview/2.0/examples/GetOperationStillRunning.json b/specification/maps/data-plane/Microsoft.Maps/Tileset/preview/2.0/examples/GetOperationStillRunning.json new file mode 100644 index 000000000000..4a0559be1343 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Tileset/preview/2.0/examples/GetOperationStillRunning.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "geography": "us", + "api-version": "2.0", + "subscription-key": "[subscription-key]", + "operationId": "8b1288fa-1958-4a2b-b68e-13a7i5af7d7c" + }, + "responses": { + "200": { + "body": { + "operationId": "8b1288fa-1958-4a2b-b68e-13a7i5af7d7c", + "created": "2021-04-23T19:14:03.2452596+00:00", + "status": "Running" + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Tileset/preview/2.0/examples/List.json b/specification/maps/data-plane/Microsoft.Maps/Tileset/preview/2.0/examples/List.json new file mode 100644 index 000000000000..5132f8691aef --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Tileset/preview/2.0/examples/List.json @@ -0,0 +1,86 @@ +{ + "parameters": { + "geography": "us", + "api-version": "2.0", + "subscription-key": "[subscription-key]" + }, + "responses": { + "200": { + "body": { + "tilesets": [ + { + "tilesetId": "d8fa86de-bb0f-4a02-a6ff-62ae7545dd84", + "datasetId": "63b18a6b-ac35-4b23-a1d9-ffa1003ad50b", + "description": "My first tileset", + "minZoom": 16, + "maxZoom": 18, + "bbox": [ + -122.13595, + 47.636524, + -122.1329, + 47.637525 + ] + }, + { + "tilesetId": "b8dca8b3-8aad-4afe-abd6-0efe37b5a2e3", + "datasetId": "c0a01139-662e-4d5a-bf5f-92ea4a292aad", + "description": "My second tileset", + "minZoom": 19, + "maxZoom": 19, + "bbox": [ + -122.13595, + 47.636524, + -122.1329, + 47.637525 + ] + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Tileset/preview/2.0/tileset.json b/specification/maps/data-plane/Microsoft.Maps/Tileset/preview/2.0/tileset.json new file mode 100644 index 000000000000..5c44d0fe5382 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Tileset/preview/2.0/tileset.json @@ -0,0 +1,590 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Maps Tileset Service", + "version": "2.0", + "description": "APIs for managing Tilesets." + }, + "x-ms-parameterized-host": { + "hostTemplate": "{geography}.atlas.microsoft.com", + "parameters": [ + { + "$ref": "#/parameters/GeographicResourceLocation" + } + ] + }, + "schemes": [ + "https" + ], + "consumes": [], + "produces": [ + "application/json" + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "These are the [Azure Active Directory OAuth2](https://docs.microsoft.com/en-us/azure/active-directory/develop/v1-overview) Flows. When paired with [Azure Role Based Access](https://docs.microsoft.com/en-us/azure/role-based-access-control/overview) control it can be used to control access to Azure Maps REST APIs. Azure Role based access controls are used to designate access to one or more Azure Maps resource account or sub-resources. Any user, group, or service principal can be granted access via a built in role or a custom role composed of one or more permissions to Azure Maps REST APIs.\n\nTo implement scenarios we recommend viewing [authentication concepts](https://aka.ms/amauth). In summary, this security definition provides a solution for modeling application(s) via objects capable of access control on specific APIs and scopes.\n\n#### Note\n* This security definition **requires** the use of the `x-ms-client-id` header to indicate which Azure Maps resource the application is requesting access to. This can be acquired from the [Maps management API](https://aka.ms/amauthdetails).\n* The `Authorization URL` is specific to the Azure public cloud instance. Sovereign clouds have unique Authorization URLs and Azure Active directory configurations. \n* The Azure role based access control is configured from the [Azure management plane](https://aka.ms/amrbac) via Azure portal, Powershell, CLI, Azure SDKs, or REST APIs.\n* Usage of the [Azure Maps Web SDK](https://aka.ms/amaadmc) allows for configuration based setup of an application for multiple use cases.\n* Currently Azure Active Directory [v1.0](https://docs.microsoft.com/en-us/azure/active-directory/develop/azure-ad-endpoint-comparison) tokens are supported.", + "scopes": { + "user_impersonation": "Impersonates a user's Azure Active Directory account." + } + }, + "apiKeyQuery": { + "type": "apiKey", + "description": "This is a shared key which is provisioned when creating an [Azure Maps resource](https://aka.ms/amauth) through the Azure management plane via Azure portal, Powershell, CLI, Azure SDKs, or REST APIs. With this key, any application is authorized to access all REST APIs. In other words, these can currently be treated as master keys to the account which they are issued for. For publicly exposed applications our recommendation is to use server to server access of Azure Maps REST APIs where this key can be securely stored.", + "name": "subscription-key", + "in": "query" + } + }, + "security": [ + { + "azure_auth": [] + }, + { + "apiKeyQuery": [] + } + ], + "responses": { + "400": { + "description": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "401": { + "description": "Access denied due to invalid subscription key or invalid Azure Active Directory bearer token. Make sure to provide a valid key for an active Azure subscription and Maps resource. Otherwise, verify the [WWW-Authenticate](https://tools.ietf.org/html/rfc6750#section-3.1) header for error code and description of the provided AAD bearer token.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + }, + "headers": { + "WWW-Authenticate": { + "type": "string", + "description": "Bearer realm=\"https://atlas.microsoft.com/\", error=\"invalid_token\", error_description=\"The access token expired\"" + } + } + }, + "403": { + "description": "Permission, capacity, or authentication issues.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "404": { + "description": "Not Found: the requested resource could not be found, but it may be available again in the future.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "500": { + "description": "An error occurred while processing the request. Please try again later.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "200Async": { + "description": "The operation is running or complete. If the operation was successful, use the Resource-Location header to obtain the path to the result.", + "schema": { + "$ref": "#/definitions/LongRunningOperationResult" + }, + "headers": { + "Resource-Location": { + "type": "string", + "description": "If successful, a URI where details on the newly created resource can be found." + } + } + }, + "202Accepted": { + "description": "Request Accepted: The request has been accepted for processing. Please use the URL in the Operation-Location Header to obtain status.", + "headers": { + "Operation-Location": { + "type": "string", + "description": "New URL to check for the results of the long running process." + } + } + } + }, + "parameters": { + "GeographicResourceLocation": { + "name": "geography", + "description": "This parameter specifies where the Azure Maps Creator resource is located. Valid values are us and eu.", + "in": "path", + "required": true, + "type": "string", + "default": "us", + "enum": [ + "us", + "eu" + ], + "x-ms-enum": { + "name": "GeographicResourceLocation", + "modelAsString": true, + "values": [ + { + "value": "us", + "description": "Used to access an Azure Maps Creator resource in the United States" + }, + { + "value": "eu", + "description": "Used to access an Azure Maps Creator resource in Europe" + } + ] + }, + "x-ms-parameter-location": "client" + }, + "ClientId": { + "name": "x-ms-client-id", + "description": "Specifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.", + "type": "string", + "in": "header", + "required": false, + "x-ms-parameter-location": "client" + }, + "SubscriptionKey": { + "name": "subscription-key", + "description": "One of the Azure Maps keys provided from an Azure Map Account. Please refer to this [article](https://docs.microsoft.com/azure/azure-maps/how-to-manage-authentication) for details on how to manage authentication.", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "client" + }, + "ApiVersion": { + "name": "api-version", + "description": "Version number of Azure Maps API. Current version is 2.0", + "type": "string", + "in": "query", + "required": true, + "default": "2.0", + "x-ms-parameter-location": "client" + }, + "JsonFormat": { + "name": "format", + "description": "Desired format of the response. Only `json` format is supported.", + "type": "string", + "in": "path", + "required": true, + "enum": [ + "json" + ], + "x-ms-enum": { + "name": "JsonFormat", + "modelAsString": true, + "values": [ + { + "value": "json", + "description": "[The JavaScript Object Notation Data Interchange Format](https://tools.ietf.org/html/rfc8259)" + } + ] + }, + "x-ms-parameter-location": "method" + }, + "DatasetIdQuery": { + "name": "datasetId", + "description": "The unique `datasetId` that the tileset create API uses to retrieve features to generate tiles. The `datasetId` must have been obtained from a successful [Dataset Create API](/en-us/rest/api/maps/dataset/createpreview) call.", + "type": "string", + "in": "query", + "required": true, + "x-ms-parameter-location": "client" + }, + "TilesetId": { + "name": "tilesetId", + "description": "The Tileset Id", + "type": "string", + "in": "path", + "required": true, + "x-ms-parameter-location": "method" + }, + "DescriptionTileset": { + "name": "description", + "description": "User provided description of the tileset.", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "method" + }, + "TilesetOperationId": { + "name": "operationId", + "type": "string", + "in": "path", + "description": "The ID to query the status for the dataset create/import request.", + "required": true, + "x-ms-parameter-location": "method" + } + }, + "paths": { + "/tilesets": { + "post": { + "x-publish": true, + "description": "**Applies to:** see pricing [tiers](https://aka.ms/AzureMapsPricingTier).\n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. [This](https://docs.microsoft.com/azure/azure-maps/creator-indoor-maps) article introduces concepts and tools that apply to Azure Maps Creator.\n\n [This](https://docs.microsoft.com/en-us/azure/azure-maps/creator-indoor-maps) article introduces concepts and tools that apply to Azure Maps Creator.\n\nThe Tileset Create API allows the caller to create a tileset from a dataset. A tileset contains a set of tiles that can be consumed \nfrom the [Get Map Tile](/rest/api/maps/render/getmaptile) to retrieve custom tiles. To make a dataset, use the \n[DataSet Create API](/rest/api/maps/dataset/createpreview).\n\n## Submit Create Request\n\nTo create your tileset you will make a `POST` request with an empty body. The `datasetId` query parameter will be \nused as the source of the tileset data.\n\nThe Create Tileset API is a \n[long-running request](https://aka.ms/am-creator-lrt-v2).", + "operationId": "Tileset_Create", + "x-ms-examples": { + "Create Tileset by providing a Dataset Id": { + "$ref": "./examples/Create.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/DatasetIdQuery" + }, + { + "$ref": "#/parameters/DescriptionTileset" + } + ], + "responses": { + "202": { + "$ref": "#/responses/202Accepted" + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + }, + "get": { + "x-publish": true, + "description": "**Applies to:** see pricing [tiers](https://aka.ms/AzureMapsPricingTier).\n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. [This](https://docs.microsoft.com/azure/azure-maps/creator-indoor-maps) article introduces concepts and tools that apply to Azure Maps Creator.\n\nThis API allows the caller to fetch a list of all tilesets created. \n
    ", + "operationId": "Tileset_List", + "x-ms-examples": { + "Get a list of all tilesets": { + "$ref": "./examples/List.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "List tileset request completed successfully. The response body contains a list of all tilesets.", + "schema": { + "$ref": "#/definitions/TilesetListResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/tilesets/{tilesetId}": { + "get": { + "x-publish": true, + "description": "**Applies to:** see pricing [tiers](https://aka.ms/AzureMapsPricingTier).\n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. [This](https://docs.microsoft.com/azure/azure-maps/creator-indoor-maps) article introduces concepts and tools that apply to Azure Maps Creator.\n\nThis API allows the caller to fetch a tileset.", + "operationId": "Tileset_Get", + "x-ms-examples": { + "Gets the details for a single tileset": { + "$ref": "./examples/Get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/TilesetId" + } + ], + "responses": { + "200": { + "description": "List tileset request completed successfully. The response body contains a list of all tilesets.", + "schema": { + "$ref": "#/definitions/TilesetDetailInfo" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + }, + "delete": { + "x-publish": true, + "description": "**Applies to:** see pricing [tiers](https://aka.ms/AzureMapsPricingTier).\n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. [This](https://docs.microsoft.com/azure/azure-maps/creator-indoor-maps) article introduces concepts and tools that apply to Azure Maps Creator.\n\nThis API allows the caller to delete a created tileset.
    \nYou can use this API if a tileset is no longer needed. \n\n### Submit Delete Request\n\nTo delete your content you will issue a `DELETE` request where the path will contain the `tilesetId` of the tileset to delete.
    \n\n#### Delete request \"Successful\"\n\nThe Tileset Delete API returns a HTTP `204 No Content` response with an empty body, if the tileset was deleted successfully.
    \n\n#### Delete request \"Failed\"\n\nA HTTP `400 Bad Request` error response will be returned if the tileset with the passed-in `tilesetId` is not found. \n\nHere is a sample error response:\n\n
    \n\n```json\n{\n \"error\": {\n \"code\": \"400 BadRequest\",\n \"message\": \"Bad request - Tileset Id: d85b5b27-5fc4-4599-8b50-47160e90f8ce does not exist.\"\n }\n}\n```", + "operationId": "Tileset_Delete", + "x-ms-examples": { + "Delete a created tileset": { + "$ref": "./examples/Delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/TilesetId" + } + ], + "responses": { + "204": { + "description": "Tileset delete request completed successfully." + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/tilesets/operations/{operationId}": { + "get": { + "description": "This path will be obtained from a call to /tilesets/create. While in progress, an http200 will be returned with no extra headers - followed by an http200 with Resource-Location header once successfully completed.", + "operationId": "Tileset_GetOperation", + "x-ms-examples": { + "Get the status of an operation which is still running": { + "$ref": "./examples/GetOperationStillRunning.json" + }, + "Get the status of an operation which has finished successfully": { + "$ref": "./examples/GetOperation.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/TilesetOperationId" + } + ], + "responses": { + "200": { + "$ref": "#/responses/200Async" + }, + "400": { + "$ref": "#/responses/400" + } + } + } + } + }, + "definitions": { + "ODataErrorResponse": { + "type": "object", + "description": "This response object is returned when an error occurs in the Maps API.", + "properties": { + "error": { + "$ref": "#/definitions/ODataError" + } + } + }, + "ODataError": { + "type": "object", + "description": "This object is returned when an error occurs in the Maps API.", + "properties": { + "code": { + "type": "string", + "readOnly": true, + "description": "The ODataError code." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "If available, a human readable description of the error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ODataError" + } + }, + "target": { + "type": "string", + "readOnly": true, + "description": "If available, the target causing the error." + } + } + }, + "LongRunningOperationResult": { + "description": "The response model for a Long-Running Operations API.", + "type": "object", + "properties": { + "operationId": { + "description": "The Id for this long-running operation.", + "type": "string" + }, + "status": { + "description": "The status state of the request.", + "type": "string", + "enum": [ + "NotStarted", + "Running", + "Failed", + "Succeeded" + ], + "x-ms-enum": { + "name": "type", + "modelAsString": true, + "values": [ + { + "value": "NotStarted", + "description": "The request has not started processing yet." + }, + { + "value": "Running", + "description": "The request has started processing." + }, + { + "value": "Failed", + "description": "The request has one or more failures." + }, + { + "value": "Succeeded", + "description": "The request has successfully completed." + } + ] + }, + "readOnly": true + }, + "created": { + "description": "The created timestamp.", + "type": "string", + "readOnly": true + }, + "error": { + "$ref": "#/definitions/ODataError" + }, + "warning": { + "$ref": "#/definitions/ODataError" + } + } + }, + "TilesetListResponse": { + "description": "The response model for the Tileset List API. Returns a list of all tilesets.", + "type": "object", + "properties": { + "tilesets": { + "description": "A list of all tilesets.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/TilesetDetailInfo" + } + }, + "nextLink": { + "description": "If present, the location of the next page of data.", + "type": "string", + "readOnly": true + } + } + }, + "TilesetDetailInfo": { + "description": "Detail information for the data.", + "type": "object", + "properties": { + "tilesetId": { + "description": "The unique tileset id for the tileset.", + "type": "string", + "readOnly": true + }, + "ontology": { + "description": "The ontology of the source dataset. Please refer to this [article](https://docs.microsoft.com/en-us/azure/azure-maps/creator-facility-ontology) for more information about Azure Maps Creator ontologies.", + "type": "string", + "readOnly": true + }, + "datasetId": { + "description": "The unique dataset Id used to create the tileset.", + "type": "string", + "readOnly": true + }, + "description": { + "description": "The description the caller provided when creating the tileset. Maximum length 1024 characters.", + "type": "string", + "readOnly": true + }, + "minZoom": { + "description": "The lowest tile zoom level tile generated for the tileset.", + "type": "integer", + "readOnly": true + }, + "maxZoom": { + "description": "The highest tile zoom level tile generated for the tileset.", + "type": "integer", + "readOnly": true + }, + "bbox": { + "description": "Bounding box which all features of the tileset lay within. Projection used - EPSG:3857. Format : 'minLon, minLat, maxLon, maxLat'.", + "type": "array", + "readOnly": true, + "items": { + "type": "number" + } + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Timezone/preview/1.0/timezone.json b/specification/maps/data-plane/Microsoft.Maps/Timezone/preview/1.0/timezone.json index 3ba00c93f71f..057164c29159 100644 --- a/specification/maps/data-plane/Microsoft.Maps/Timezone/preview/1.0/timezone.json +++ b/specification/maps/data-plane/Microsoft.Maps/Timezone/preview/1.0/timezone.json @@ -114,7 +114,7 @@ ], "x-ms-enum": { "name": "JsonFormat", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "json", @@ -146,7 +146,7 @@ ], "x-ms-enum": { "name": "TimezoneOptions", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "none", diff --git a/specification/maps/data-plane/Microsoft.Maps/Traffic/preview/1.0/traffic.json b/specification/maps/data-plane/Microsoft.Maps/Traffic/preview/1.0/traffic.json index 1f90ca86e530..627c49762551 100644 --- a/specification/maps/data-plane/Microsoft.Maps/Traffic/preview/1.0/traffic.json +++ b/specification/maps/data-plane/Microsoft.Maps/Traffic/preview/1.0/traffic.json @@ -123,7 +123,7 @@ ], "x-ms-enum": { "name": "JsonFormat", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "json", @@ -145,7 +145,7 @@ ], "x-ms-enum": { "name": "TextFormat", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "json", @@ -170,7 +170,7 @@ ], "x-ms-enum": { "name": "RasterTileFormat", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "png", @@ -192,7 +192,7 @@ ], "x-ms-enum": { "name": "TileFormat", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "png", @@ -283,7 +283,7 @@ ], "x-ms-enum": { "name": "TrafficFlowTileStyle", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "absolute", @@ -389,7 +389,7 @@ ], "x-ms-enum": { "name": "TrafficFlowSegmentStyle", - "modelAsString": false + "modelAsString": true } }, { @@ -415,7 +415,7 @@ ], "x-ms-enum": { "name": "SpeedUnit", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "KMPH", @@ -510,7 +510,7 @@ ], "x-ms-enum": { "name": "TrafficIncidentTileStyle", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "s1", @@ -615,7 +615,7 @@ ], "x-ms-enum": { "name": "TrafficIncidentDetailStyle", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "s1", @@ -690,7 +690,7 @@ ], "x-ms-enum": { "name": "IncidentGeometryType", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "original", diff --git a/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/DeleteItem.json b/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/DeleteItem.json index 127a25dc1639..72fdf9389540 100644 --- a/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/DeleteItem.json +++ b/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/DeleteItem.json @@ -1,5 +1,6 @@ { "parameters": { + "geography": "us", "api-version": "1.0", "datasetid": "018fda98-e638-0edf-5ef7-28491ff3bed4", "subscription-key": "[subscription-key]", diff --git a/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetCollection.json b/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetCollection.json index 583b150414ee..289c2decdf0c 100644 --- a/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetCollection.json +++ b/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetCollection.json @@ -1,5 +1,6 @@ { "parameters": { + "geography": "us", "api-version": "1.0", "datasetid": "018fda98-e638-0edf-5ef7-28491ff3bed4", "subscription-key": "[subscription-key]", @@ -12,17 +13,17 @@ "description": "A physical and non-overlapping area which might be occupied and traversed by a navigating agent. Can be a hallway, a room, a courtyard, etc. It is surrounded by physical obstruction (wall), unless the isOpenArea attribute is equal to true, and one must add openings where the obstruction shouldn't be there. If isOpenArea attribute is equal to true, all the sides are assumed open to the surroundings and walls are to be added where needed. Walls for open areas are represented as a lineElement or areaElement with isObstruction equal to true.", "links": [ { - "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/unit/definition?api-version=1.0", + "href": "https://us.atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/unit/definition?api-version=1.0", "rel": "describedBy", "title": "Metadata catalogue for unit" }, { - "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/unit/items?api-version=1.0", + "href": "https://us.atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/unit/items?api-version=1.0", "rel": "data", "title": "unit" }, { - "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/unit?api-version=1.0", + "href": "https://us.atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/unit?api-version=1.0", "rel": "self", "title": "Metadata catalogue for unit" } diff --git a/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetCollectionDefinition.json b/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetCollectionDefinition.json index e4d17ccf6650..5abb684137ba 100644 --- a/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetCollectionDefinition.json +++ b/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetCollectionDefinition.json @@ -1,5 +1,6 @@ { "parameters": { + "geography": "us", "api-version": "1.0", "datasetid": "018fda98-e638-0edf-5ef7-28491ff3bed4", "subscription-key": "[subscription-key]", @@ -135,12 +136,12 @@ ], "links": [ { - "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/unit/definition?api-version=1.0", + "href": "https://us.atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/unit/definition?api-version=1.0", "rel": "self", "title": "Metadata catalogue for unit" }, { - "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/unit/items?api-version=1.0", + "href": "https://us.atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/unit/items?api-version=1.0", "rel": "data", "title": "unit" } diff --git a/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetCollections.json b/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetCollections.json index 7048a3299237..c66647770907 100644 --- a/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetCollections.json +++ b/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetCollections.json @@ -1,5 +1,6 @@ { "parameters": { + "geography": "us", "api-version": "1.0", "datasetid": "018fda98-e638-0edf-5ef7-28491ff3bed4", "subscription-key": "[subscription-key]" @@ -13,17 +14,17 @@ "description": "A physical and non-overlapping area which might be occupied and traversed by a navigating agent. Can be a hallway, a room, a courtyard, etc. It is surrounded by physical obstruction (wall), unless the isOpenArea attribute is equal to true, and one must add openings where the obstruction shouldn't be there. If isOpenArea attribute is equal to true, all the sides are assumed open to the surroundings and walls are to be added where needed. Walls for open areas are represented as a lineElement or areaElement with isObstruction equal to true.", "links": [ { - "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/unit/definition?api-version=1.0", + "href": "https://us.atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/unit/definition?api-version=1.0", "rel": "describedBy", "title": "Metadata catalogue for unit" }, { - "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/unit/items?api-version=1.0", + "href": "https://us.atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/unit/items?api-version=1.0", "rel": "data", "title": "unit" }, { - "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/unit?api-version=1.0", + "href": "https://us.atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/unit?api-version=1.0", "rel": "self", "title": "Metadata catalogue for unit" } @@ -34,17 +35,17 @@ "description": "A virtual area. ex, wifi zone, emergency assembly area. Zones can be used as destinations but not meant for through traffic.", "links": [ { - "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/zone/definition?api-version=1.0", + "href": "https://us.atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/zone/definition?api-version=1.0", "rel": "describedBy", "title": "Metadata catalogue for zone" }, { - "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/zone/items?api-version=1.0", + "href": "https://us.atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/zone/items?api-version=1.0", "rel": "data", "title": "zone" }, { - "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/zone?api-version=1.0", + "href": "https://us.atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/zone?api-version=1.0", "rel": "self", "title": "Metadata catalogue for zone" } @@ -55,17 +56,17 @@ "description": "An indication of the extent and vertical position of a set of features.", "links": [ { - "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/level/definition?api-version=1.0", + "href": "https://us.atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/level/definition?api-version=1.0", "rel": "describedBy", "title": "Metadata catalogue for level" }, { - "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/level/items?api-version=1.0", + "href": "https://us.atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/level/items?api-version=1.0", "rel": "data", "title": "level" }, { - "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/level?api-version=1.0", + "href": "https://us.atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/level?api-version=1.0", "rel": "self", "title": "Metadata catalogue for level" } @@ -76,17 +77,17 @@ "description": "Area of the site, building footprint etc.", "links": [ { - "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/facility/definition?api-version=1.0", + "href": "https://us.atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/facility/definition?api-version=1.0", "rel": "describedBy", "title": "Metadata catalogue for facility" }, { - "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/facility/items?api-version=1.0", + "href": "https://us.atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/facility/items?api-version=1.0", "rel": "data", "title": "facility" }, { - "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/facility?api-version=1.0", + "href": "https://us.atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/facility?api-version=1.0", "rel": "self", "title": "Metadata catalogue for facility" } @@ -97,17 +98,17 @@ "description": "An area that, when used in a set, represents a method of navigating vertically between levels. It can be used to model stairs, elevators etc. Geometry can overlap units and other vertical penetration features.", "links": [ { - "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/verticalPenetration/definition?api-version=1.0", + "href": "https://us.atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/verticalPenetration/definition?api-version=1.0", "rel": "describedBy", "title": "Metadata catalogue for verticalPenetration" }, { - "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/verticalPenetration/items?api-version=1.0", + "href": "https://us.atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/verticalPenetration/items?api-version=1.0", "rel": "data", "title": "verticalPenetration" }, { - "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/verticalPenetration?api-version=1.0", + "href": "https://us.atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/verticalPenetration?api-version=1.0", "rel": "self", "title": "Metadata catalogue for verticalPenetration" } @@ -118,17 +119,17 @@ "description": "A usually-traversable boundary between two units, or a unit and verticalPenetration.", "links": [ { - "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/opening/definition?api-version=1.0", + "href": "https://us.atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/opening/definition?api-version=1.0", "rel": "describedBy", "title": "Metadata catalogue for opening" }, { - "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/opening/items?api-version=1.0", + "href": "https://us.atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/opening/items?api-version=1.0", "rel": "data", "title": "opening" }, { - "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/opening?api-version=1.0", + "href": "https://us.atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/opening?api-version=1.0", "rel": "self", "title": "Metadata catalogue for opening" } @@ -139,17 +140,17 @@ "description": "Name, address, phone number, website, and hours of operation for a unit, facility, or an occupant of a unit or facility.", "links": [ { - "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/directoryInfo/definition?api-version=1.0", + "href": "https://us.atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/directoryInfo/definition?api-version=1.0", "rel": "describedBy", "title": "Metadata catalogue for directoryInfo" }, { - "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/directoryInfo/items?api-version=1.0", + "href": "https://us.atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/directoryInfo/items?api-version=1.0", "rel": "data", "title": "directoryInfo" }, { - "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/directoryInfo?api-version=1.0", + "href": "https://us.atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/directoryInfo?api-version=1.0", "rel": "self", "title": "Metadata catalogue for directoryInfo" } @@ -160,17 +161,17 @@ "description": "A point feature in a unit, such as a first aid kit or a sprinkler head.", "links": [ { - "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/pointElement/definition?api-version=1.0", + "href": "https://us.atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/pointElement/definition?api-version=1.0", "rel": "describedBy", "title": "Metadata catalogue for pointElement" }, { - "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/pointElement/items?api-version=1.0", + "href": "https://us.atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/pointElement/items?api-version=1.0", "rel": "data", "title": "pointElement" }, { - "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/pointElement?api-version=1.0", + "href": "https://us.atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/pointElement?api-version=1.0", "rel": "self", "title": "Metadata catalogue for pointElement" } @@ -181,17 +182,17 @@ "description": "A line feature in a unit, such as a dividing wall, window.", "links": [ { - "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/lineElement/definition?api-version=1.0", + "href": "https://us.atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/lineElement/definition?api-version=1.0", "rel": "describedBy", "title": "Metadata catalogue for lineElement" }, { - "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/lineElement/items?api-version=1.0", + "href": "https://us.atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/lineElement/items?api-version=1.0", "rel": "data", "title": "lineElement" }, { - "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/lineElement?api-version=1.0", + "href": "https://us.atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/lineElement?api-version=1.0", "rel": "self", "title": "Metadata catalogue for lineElement" } @@ -202,17 +203,17 @@ "description": "A polygon feature in a unit, such as an area open to below, an obstruction like an island in a unit.", "links": [ { - "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/areaElement/definition?api-version=1.0", + "href": "https://us.atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/areaElement/definition?api-version=1.0", "rel": "describedBy", "title": "Metadata catalogue for areaElement" }, { - "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/areaElement/items?api-version=1.0", + "href": "https://us.atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/areaElement/items?api-version=1.0", "rel": "data", "title": "areaElement" }, { - "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/areaElement?api-version=1.0", + "href": "https://us.atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/areaElement?api-version=1.0", "rel": "self", "title": "Metadata catalogue for areaElement" } @@ -223,17 +224,17 @@ "description": "Category names. e.g. \"room.conference\". The isRoutable attribute puts a feature with that category on the routing graph. The routeThroughBehavior attribute determines whether a feature can be used for through traffic or not.", "links": [ { - "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/category/definition?api-version=1.0", + "href": "https://us.atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/category/definition?api-version=1.0", "rel": "describedBy", "title": "Metadata catalogue for category" }, { - "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/category/items?api-version=1.0", + "href": "https://us.atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/category/items?api-version=1.0", "rel": "data", "title": "category" }, { - "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/category?api-version=1.0", + "href": "https://us.atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/category?api-version=1.0", "rel": "self", "title": "Metadata catalogue for category" } @@ -242,7 +243,7 @@ ], "links": [ { - "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections?api-version=1.0", + "href": "https://us.atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections?api-version=1.0", "rel": "self" } ] diff --git a/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetConformance.json b/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetConformance.json index 2087dca71fe4..48086e702d21 100644 --- a/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetConformance.json +++ b/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetConformance.json @@ -1,5 +1,6 @@ { "parameters": { + "geography": "us", "api-version": "1.0", "datasetid": "018fda98-e638-0edf-5ef7-28491ff3bed4", "subscription-key": "[subscription-key]" diff --git a/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetItem.json b/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetItem.json index a83972b09aa0..20f6305c4e7e 100644 --- a/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetItem.json +++ b/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetItem.json @@ -1,5 +1,6 @@ { "parameters": { + "geography": "us", "api-version": "1.0", "datasetid": "018fda98-e638-0edf-5ef7-28491ff3bed4", "subscription-key": "[subscription-key]", @@ -69,11 +70,11 @@ }, "links": [ { - "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/unit/items/UNIT39?api-version=1.0", + "href": "https://us.atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/unit/items/UNIT39?api-version=1.0", "rel": "self" }, { - "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/unit?api-version=1.0", + "href": "https://us.atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/unit?api-version=1.0", "rel": "data" } ] diff --git a/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetItems.json b/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetItems.json index 0d83c6416334..1862a002e696 100644 --- a/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetItems.json +++ b/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetItems.json @@ -1,5 +1,6 @@ { "parameters": { + "geography": "us", "api-version": "1.0", "datasetid": "018fda98-e638-0edf-5ef7-28491ff3bed4", "subscription-key": "[subscription-key]", @@ -74,15 +75,15 @@ "numberReturned": 1, "links": [ { - "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/unit/items?api-version=1.0&limit=1", + "href": "https://us.atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/unit/items?api-version=1.0&limit=1", "rel": "self" }, { - "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/unit?api-version=1.0", + "href": "https://us.atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/unit?api-version=1.0", "rel": "data" }, { - "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/unit/items?n=PMRG4ZLYOQRDUMJMEJYHEZLWEI5C2ML5&api-version=1.0&limit=1", + "href": "https://us.atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/unit/items?n=PMRG4ZLYOQRDUMJMEJYHEZLWEI5C2ML5&api-version=1.0&limit=1", "rel": "next" } ] diff --git a/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetLandingPage.json b/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetLandingPage.json index 028fa8cfe0aa..508aba14bca4 100644 --- a/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetLandingPage.json +++ b/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetLandingPage.json @@ -1,5 +1,6 @@ { "parameters": { + "geography": "us", "api-version": "1.0", "datasetid": "018fda98-e638-0edf-5ef7-28491ff3bed4", "subscription-key": "[subscription-key]" @@ -9,27 +10,27 @@ "body": { "links": [ { - "href": "https://atlas.microsoft.com/wfs/datasets/018fda98-e638-0edf-5ef7-28491ff3bed4", + "href": "https://us.atlas.microsoft.com/wfs/datasets/018fda98-e638-0edf-5ef7-28491ff3bed4", "rel": "self", "title": "Azure Maps WFS" }, { - "href": "https://atlas.microsoft.com/wfs/datasets/018fda98-e638-0edf-5ef7-28491ff3bed4/api", + "href": "https://us.atlas.microsoft.com/wfs/datasets/018fda98-e638-0edf-5ef7-28491ff3bed4/api", "rel": "service", "title": "The API definition" }, { - "href": "https://atlas.microsoft.com/wfs/datasets/018fda98-e638-0edf-5ef7-28491ff3bed4/conformance", + "href": "https://us.atlas.microsoft.com/wfs/datasets/018fda98-e638-0edf-5ef7-28491ff3bed4/conformance", "rel": "conformance", "title": "WFS 3.0 conformance classes implemented by this server" }, { - "href": "https://atlas.microsoft.com/wfs/datasets/018fda98-e638-0edf-5ef7-28491ff3bed4/version", + "href": "https://us.atlas.microsoft.com/wfs/datasets/018fda98-e638-0edf-5ef7-28491ff3bed4/version", "rel": "data", "title": "The version information" }, { - "href": "https://atlas.microsoft.com/wfs/datasets/018fda98-e638-0edf-5ef7-28491ff3bed4/collections", + "href": "https://us.atlas.microsoft.com/wfs/datasets/018fda98-e638-0edf-5ef7-28491ff3bed4/collections", "rel": "data", "title": "Metadata about the feature collections" } diff --git a/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/wfs.json b/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/wfs.json index 962c2490603e..b3f019323d54 100644 --- a/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/wfs.json +++ b/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/wfs.json @@ -5,7 +5,14 @@ "version": "1.0", "description": "Azure Maps Web Feature REST APIs" }, - "host": "atlas.microsoft.com", + "x-ms-parameterized-host": { + "hostTemplate": "{geography}.atlas.microsoft.com", + "parameters": [ + { + "$ref": "#/parameters/GeographicResourceLocation" + } + ] + }, "schemes": [ "https" ], @@ -87,6 +94,33 @@ } }, "parameters": { + "GeographicResourceLocation": { + "name": "geography", + "description": "This parameter specifies where the Azure Maps Creator resource is located. Valid values are us and eu.", + "in": "path", + "required": true, + "type": "string", + "default": "us", + "enum": [ + "us", + "eu" + ], + "x-ms-enum": { + "name": "GeographicResourceLocation", + "modelAsString": true, + "values": [ + { + "value": "us", + "description": "Used to access an Azure Maps Creator resource in the United States" + }, + { + "value": "eu", + "description": "Used to access an Azure Maps Creator resource in Europe" + } + ] + }, + "x-ms-parameter-location": "client" + }, "ClientId": { "name": "x-ms-client-id", "description": "Specifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.", @@ -134,7 +168,7 @@ "name": "filter", "in": "query", "type": "string", - "description": "Filter expression to search for features with specific property values in a given collection. Only feature properties of scalar type and equals operator are supported.\nThis is a special parameter where the parameter name is the property name. The scheme for this parameter is {property name}={property value}. Unless \"filter\" is one of the property names in the collection, \"filter\" should not be used as a parameter name. To search for features with \"name\" property value \"21N13\", use \"name=21N13\".\nMultiple filters are supported and should be represented as multiple query parameters. E.g., =&= String values are case sensitive.", + "description": "Filter expression to search for features with specific property values in a given collection. Only feature properties of scalar type and equals operator are supported.\nThis is a special parameter where the parameter name is a case sensitive property name. The scheme for this parameter is {property name}={property value}. Unless \"filter\" is one of the property names in the collection, \"filter\" should not be used as a parameter name. To search for features with \"name\" property value \"21N13\", use \"name=21N13\".\nMultiple filters are supported and should be represented as multiple query parameters. E.g., =&= String values are case sensitive.", "x-ms-parameter-location": "method" }, "Bbox": { diff --git a/specification/maps/data-plane/Microsoft.Maps/WFS/preview/2.0/examples/DeleteItem.json b/specification/maps/data-plane/Microsoft.Maps/WFS/preview/2.0/examples/DeleteItem.json new file mode 100644 index 000000000000..5f7f389b443e --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/WFS/preview/2.0/examples/DeleteItem.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "geography": "us", + "api-version": "2.0", + "datasetid": "218fda98-e638-0edf-5ef7-28491ff3bed4", + "subscription-key": "[subscription-key]", + "collectionId": "facility", + "featureId": "FCL39" + }, + "responses": { + "204": {}, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/WFS/preview/2.0/examples/GetCollection.json b/specification/maps/data-plane/Microsoft.Maps/WFS/preview/2.0/examples/GetCollection.json new file mode 100644 index 000000000000..6cb01b9fb6e5 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/WFS/preview/2.0/examples/GetCollection.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "geography": "us", + "api-version": "2.0", + "datasetid": "218fda98-e638-0edf-5ef7-28491ff3bed4", + "subscription-key": "[subscription-key]", + "collectionId": "unit" + }, + "responses": { + "200": { + "body": { + "name": "unit", + "description": "A physical and non-overlapping area which might be occupied and traversed by a navigating agent. Can be a hallway, a room, a courtyard, etc. It is surrounded by physical obstruction (wall), unless the isOpenArea attribute is equal to true, and one must add openings where the obstruction shouldn't be there. If isOpenArea attribute is equal to true, all the sides are assumed open to the surroundings and walls are to be added where needed. Walls for open areas are represented as a lineElement or areaElement with isObstruction equal to true.", + "ontology": "Facility-2.0", + "links": [ + { + "href": "https://us.atlas.microsoft.com/wfs/dataset/218fda98-e638-0edf-5ef7-28491ff3bed4/collections/unit/definition?api-version=2.0", + "rel": "describedBy", + "title": "Metadata catalogue for unit" + }, + { + "href": "https://us.atlas.microsoft.com/wfs/dataset/218fda98-e638-0edf-5ef7-28491ff3bed4/collections/unit/items?api-version=2.0", + "rel": "data", + "title": "unit" + }, + { + "href": "https://us.atlas.microsoft.com/wfs/dataset/218fda98-e638-0edf-5ef7-28491ff3bed4/collections/unit?api-version=2.0", + "rel": "self", + "title": "Metadata catalogue for unit" + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/WFS/preview/2.0/examples/GetCollectionDefinition.json b/specification/maps/data-plane/Microsoft.Maps/WFS/preview/2.0/examples/GetCollectionDefinition.json new file mode 100644 index 000000000000..765d1761b535 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/WFS/preview/2.0/examples/GetCollectionDefinition.json @@ -0,0 +1,161 @@ +{ + "parameters": { + "geography": "us", + "api-version": "2.0", + "datasetid": "218fda98-e638-0edf-5ef7-28491ff3bed4", + "subscription-key": "[subscription-key]", + "collectionId": "unit" + }, + "responses": { + "200": { + "body": { + "idPrefix": "UNIT", + "name": "unit", + "description": "A physical and non-overlapping area which might be occupied and traversed by a navigating agent. Can be a hallway, a room, a courtyard, etc. It is surrounded by physical obstruction (wall), unless the isOpenArea attribute is equal to true, and one must add openings where the obstruction shouldn't be there. If isOpenArea attribute is equal to true, all the sides are assumed open to the surroundings and walls are to be added where needed. Walls for open areas are represented as a lineElement or areaElement with isObstruction equal to true.", + "ontology": "Facility-2.0", + "geometryType": "Polygon", + "featureTypes": [], + "properties": [ + { + "name": "externalId", + "required": false, + "type": "text" + }, + { + "name": "originalId", + "required": false, + "type": "text" + }, + { + "name": "categoryId", + "required": true, + "type": { + "featureId": "category" + } + }, + { + "name": "isOpenArea", + "required": false, + "type": "boolean" + }, + { + "name": "isRoutable", + "required": false, + "type": "boolean" + }, + { + "name": "levelId", + "required": true, + "type": { + "featureId": "level" + } + }, + { + "name": "occupants", + "required": false, + "type": { + "array": { + "featureId": "directoryInfo" + } + } + }, + { + "name": "addressId", + "required": false, + "type": { + "featureId": "directoryInfo" + } + }, + { + "name": "addressRoomNumber", + "required": false, + "type": "text" + }, + { + "name": "name", + "required": false, + "type": "text" + }, + { + "name": "nameSubtitle", + "required": false, + "type": "text" + }, + { + "name": "nameAlt", + "required": false, + "type": "text" + }, + { + "name": "anchorPoint", + "required": false, + "type": { + "geometry": [ + "Point" + ], + "isFragmented": false, + "srid": 4326 + } + } + ], + "links": [ + { + "href": "https://us.atlas.microsoft.com/wfs/dataset/218fda98-e638-0edf-5ef7-28491ff3bed4/collections/unit/definition?api-version=2.0", + "rel": "self", + "title": "Metadata catalogue for unit" + }, + { + "href": "https://us.atlas.microsoft.com/wfs/dataset/218fda98-e638-0edf-5ef7-28491ff3bed4/collections/unit/items?api-version=2.0", + "rel": "data", + "title": "unit" + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/WFS/preview/2.0/examples/GetCollections.json b/specification/maps/data-plane/Microsoft.Maps/WFS/preview/2.0/examples/GetCollections.json new file mode 100644 index 000000000000..678e45acb725 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/WFS/preview/2.0/examples/GetCollections.json @@ -0,0 +1,299 @@ +{ + "parameters": { + "geography": "us", + "api-version": "2.0", + "datasetid": "218fda98-e638-0edf-5ef7-28491ff3bed4", + "subscription-key": "[subscription-key]" + }, + "responses": { + "200": { + "body": { + "ontology": "Facility-2.0", + "collections": [ + { + "name": "unit", + "description": "A physical and non-overlapping area which might be occupied and traversed by a navigating agent. Can be a hallway, a room, a courtyard, etc. It is surrounded by physical obstruction (wall), unless the isOpenArea attribute is equal to true, and one must add openings where the obstruction shouldn't be there. If isOpenArea attribute is equal to true, all the sides are assumed open to the surroundings and walls are to be added where needed. Walls for open areas are represented as a lineElement or areaElement with isObstruction equal to true.", + "links": [ + { + "href": "https://us.atlas.microsoft.com/wfs/dataset/218fda98-e638-0edf-5ef7-28491ff3bed4/collections/unit/definition?api-version=2.0", + "rel": "describedBy", + "title": "Metadata catalogue for unit" + }, + { + "href": "https://us.atlas.microsoft.com/wfs/dataset/218fda98-e638-0edf-5ef7-28491ff3bed4/collections/unit/items?api-version=2.0", + "rel": "data", + "title": "unit" + }, + { + "href": "https://us.atlas.microsoft.com/wfs/dataset/218fda98-e638-0edf-5ef7-28491ff3bed4/collections/unit?api-version=2.0", + "rel": "self", + "title": "Metadata catalogue for unit" + } + ] + }, + { + "name": "zone", + "description": "A virtual area. ex, wifi zone, emergency assembly area. Zones can be used as destinations but not meant for through traffic.", + "links": [ + { + "href": "https://us.atlas.microsoft.com/wfs/dataset/218fda98-e638-0edf-5ef7-28491ff3bed4/collections/zone/definition?api-version=2.0", + "rel": "describedBy", + "title": "Metadata catalogue for zone" + }, + { + "href": "https://us.atlas.microsoft.com/wfs/dataset/218fda98-e638-0edf-5ef7-28491ff3bed4/collections/zone/items?api-version=2.0", + "rel": "data", + "title": "zone" + }, + { + "href": "https://us.atlas.microsoft.com/wfs/dataset/218fda98-e638-0edf-5ef7-28491ff3bed4/collections/zone?api-version=2.0", + "rel": "self", + "title": "Metadata catalogue for zone" + } + ] + }, + { + "name": "level", + "description": "An indication of the extent and vertical position of a set of features.", + "links": [ + { + "href": "https://us.atlas.microsoft.com/wfs/dataset/218fda98-e638-0edf-5ef7-28491ff3bed4/collections/level/definition?api-version=2.0", + "rel": "describedBy", + "title": "Metadata catalogue for level" + }, + { + "href": "https://us.atlas.microsoft.com/wfs/dataset/218fda98-e638-0edf-5ef7-28491ff3bed4/collections/level/items?api-version=2.0", + "rel": "data", + "title": "level" + }, + { + "href": "https://us.atlas.microsoft.com/wfs/dataset/218fda98-e638-0edf-5ef7-28491ff3bed4/collections/level?api-version=2.0", + "rel": "self", + "title": "Metadata catalogue for level" + } + ] + }, + { + "name": "facility", + "description": "Area of the site, building footprint etc.", + "links": [ + { + "href": "https://us.atlas.microsoft.com/wfs/dataset/218fda98-e638-0edf-5ef7-28491ff3bed4/collections/facility/definition?api-version=2.0", + "rel": "describedBy", + "title": "Metadata catalogue for facility" + }, + { + "href": "https://us.atlas.microsoft.com/wfs/dataset/218fda98-e638-0edf-5ef7-28491ff3bed4/collections/facility/items?api-version=2.0", + "rel": "data", + "title": "facility" + }, + { + "href": "https://us.atlas.microsoft.com/wfs/dataset/218fda98-e638-0edf-5ef7-28491ff3bed4/collections/facility?api-version=2.0", + "rel": "self", + "title": "Metadata catalogue for facility" + } + ] + }, + { + "name": "verticalPenetration", + "description": "An area that, when used in a set, represents a method of navigating vertically between levels. It can be used to model stairs, elevators etc. Geometry can overlap units and other vertical penetration features.", + "links": [ + { + "href": "https://us.atlas.microsoft.com/wfs/dataset/218fda98-e638-0edf-5ef7-28491ff3bed4/collections/verticalPenetration/definition?api-version=2.0", + "rel": "describedBy", + "title": "Metadata catalogue for verticalPenetration" + }, + { + "href": "https://us.atlas.microsoft.com/wfs/dataset/218fda98-e638-0edf-5ef7-28491ff3bed4/collections/verticalPenetration/items?api-version=2.0", + "rel": "data", + "title": "verticalPenetration" + }, + { + "href": "https://us.atlas.microsoft.com/wfs/dataset/218fda98-e638-0edf-5ef7-28491ff3bed4/collections/verticalPenetration?api-version=2.0", + "rel": "self", + "title": "Metadata catalogue for verticalPenetration" + } + ] + }, + { + "name": "opening", + "description": "A usually-traversable boundary between two units, or a unit and verticalPenetration.", + "links": [ + { + "href": "https://us.atlas.microsoft.com/wfs/dataset/218fda98-e638-0edf-5ef7-28491ff3bed4/collections/opening/definition?api-version=2.0", + "rel": "describedBy", + "title": "Metadata catalogue for opening" + }, + { + "href": "https://us.atlas.microsoft.com/wfs/dataset/218fda98-e638-0edf-5ef7-28491ff3bed4/collections/opening/items?api-version=2.0", + "rel": "data", + "title": "opening" + }, + { + "href": "https://us.atlas.microsoft.com/wfs/dataset/218fda98-e638-0edf-5ef7-28491ff3bed4/collections/opening?api-version=2.0", + "rel": "self", + "title": "Metadata catalogue for opening" + } + ] + }, + { + "name": "directoryInfo", + "description": "Name, address, phone number, website, and hours of operation for a unit, facility, or an occupant of a unit or facility.", + "links": [ + { + "href": "https://us.atlas.microsoft.com/wfs/dataset/218fda98-e638-0edf-5ef7-28491ff3bed4/collections/directoryInfo/definition?api-version=2.0", + "rel": "describedBy", + "title": "Metadata catalogue for directoryInfo" + }, + { + "href": "https://us.atlas.microsoft.com/wfs/dataset/218fda98-e638-0edf-5ef7-28491ff3bed4/collections/directoryInfo/items?api-version=2.0", + "rel": "data", + "title": "directoryInfo" + }, + { + "href": "https://us.atlas.microsoft.com/wfs/dataset/218fda98-e638-0edf-5ef7-28491ff3bed4/collections/directoryInfo?api-version=2.0", + "rel": "self", + "title": "Metadata catalogue for directoryInfo" + } + ] + }, + { + "name": "pointElement", + "description": "A point feature in a unit, such as a first aid kit or a sprinkler head.", + "links": [ + { + "href": "https://us.atlas.microsoft.com/wfs/dataset/218fda98-e638-0edf-5ef7-28491ff3bed4/collections/pointElement/definition?api-version=2.0", + "rel": "describedBy", + "title": "Metadata catalogue for pointElement" + }, + { + "href": "https://us.atlas.microsoft.com/wfs/dataset/218fda98-e638-0edf-5ef7-28491ff3bed4/collections/pointElement/items?api-version=2.0", + "rel": "data", + "title": "pointElement" + }, + { + "href": "https://us.atlas.microsoft.com/wfs/dataset/218fda98-e638-0edf-5ef7-28491ff3bed4/collections/pointElement?api-version=2.0", + "rel": "self", + "title": "Metadata catalogue for pointElement" + } + ] + }, + { + "name": "lineElement", + "description": "A line feature in a unit, such as a dividing wall, window.", + "links": [ + { + "href": "https://us.atlas.microsoft.com/wfs/dataset/218fda98-e638-0edf-5ef7-28491ff3bed4/collections/lineElement/definition?api-version=2.0", + "rel": "describedBy", + "title": "Metadata catalogue for lineElement" + }, + { + "href": "https://us.atlas.microsoft.com/wfs/dataset/218fda98-e638-0edf-5ef7-28491ff3bed4/collections/lineElement/items?api-version=2.0", + "rel": "data", + "title": "lineElement" + }, + { + "href": "https://us.atlas.microsoft.com/wfs/dataset/218fda98-e638-0edf-5ef7-28491ff3bed4/collections/lineElement?api-version=2.0", + "rel": "self", + "title": "Metadata catalogue for lineElement" + } + ] + }, + { + "name": "areaElement", + "description": "A polygon feature in a unit, such as an area open to below, an obstruction like an island in a unit.", + "links": [ + { + "href": "https://us.atlas.microsoft.com/wfs/dataset/218fda98-e638-0edf-5ef7-28491ff3bed4/collections/areaElement/definition?api-version=2.0", + "rel": "describedBy", + "title": "Metadata catalogue for areaElement" + }, + { + "href": "https://us.atlas.microsoft.com/wfs/dataset/218fda98-e638-0edf-5ef7-28491ff3bed4/collections/areaElement/items?api-version=2.0", + "rel": "data", + "title": "areaElement" + }, + { + "href": "https://us.atlas.microsoft.com/wfs/dataset/218fda98-e638-0edf-5ef7-28491ff3bed4/collections/areaElement?api-version=2.0", + "rel": "self", + "title": "Metadata catalogue for areaElement" + } + ] + }, + { + "name": "category", + "description": "Category names. e.g. \"room.conference\". The isRoutable attribute puts a feature with that category on the routing graph. The routeThroughBehavior attribute determines whether a feature can be used for through traffic or not.", + "links": [ + { + "href": "https://us.atlas.microsoft.com/wfs/dataset/218fda98-e638-0edf-5ef7-28491ff3bed4/collections/category/definition?api-version=2.0", + "rel": "describedBy", + "title": "Metadata catalogue for category" + }, + { + "href": "https://us.atlas.microsoft.com/wfs/dataset/218fda98-e638-0edf-5ef7-28491ff3bed4/collections/category/items?api-version=2.0", + "rel": "data", + "title": "category" + }, + { + "href": "https://us.atlas.microsoft.com/wfs/dataset/218fda98-e638-0edf-5ef7-28491ff3bed4/collections/category?api-version=2.0", + "rel": "self", + "title": "Metadata catalogue for category" + } + ] + } + ], + "links": [ + { + "href": "https://us.atlas.microsoft.com/wfs/dataset/218fda98-e638-0edf-5ef7-28491ff3bed4/collections?api-version=2.0", + "rel": "self" + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/WFS/preview/2.0/examples/GetConformance.json b/specification/maps/data-plane/Microsoft.Maps/WFS/preview/2.0/examples/GetConformance.json new file mode 100644 index 000000000000..2384e3bf7945 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/WFS/preview/2.0/examples/GetConformance.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "geography": "us", + "api-version": "2.0", + "datasetid": "218fda98-e638-0edf-5ef7-28491ff3bed4", + "subscription-key": "[subscription-key]" + }, + "responses": { + "200": { + "body": { + "conformsTo": [ + "http://www.opengis.net/spec/wfs-1/3.0/req/core", + "http://www.opengis.net/spec/wfs-1/3.0/req/oas30", + "http://www.opengis.net/spec/wfs-1/3.0/req/geojson", + "http://tempuri.org/wfs/3.0/edit" + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/WFS/preview/2.0/examples/GetItem.json b/specification/maps/data-plane/Microsoft.Maps/WFS/preview/2.0/examples/GetItem.json new file mode 100644 index 000000000000..e62f4c285a2d --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/WFS/preview/2.0/examples/GetItem.json @@ -0,0 +1,125 @@ +{ + "parameters": { + "geography": "us", + "api-version": "2.0", + "datasetid": "218fda98-e638-0edf-5ef7-28491ff3bed4", + "subscription-key": "[subscription-key]", + "collectionId": "unit", + "featureId": "UNIT39" + }, + "responses": { + "200": { + "body": { + "ontology": "Facility-2.0", + "feature": { + "type": "feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 139.63304057829211, + 35.457686686108559 + ], + [ + 139.63296283234274, + 35.457783904258683 + ], + [ + 139.63308672404617, + 35.457850229062018 + ], + [ + 139.63314516916711, + 35.457777145699858 + ], + [ + 139.63312747036289, + 35.457767670747167 + ], + [ + 139.63314677109963, + 35.457743535881377 + ], + [ + 139.63304057829211, + 35.457686686108559 + ] + ] + ] + }, + "properties": { + "originalId": "ddbbb583-4621-4e11-8859-299d1057e843", + "categoryId": "CTG10", + "isOpenArea": false, + "isRoutable": false, + "levelId": "LVL18", + "occupants": [], + "addressId": "DIR16", + "addressRoomNumber": "", + "name": "21N13", + "nameSubtitle": "", + "nameAlt": "" + }, + "id": "UNIT39", + "featureType": "" + }, + "links": [ + { + "href": "https://us.atlas.microsoft.com/wfs/dataset/218fda98-e638-0edf-5ef7-28491ff3bed4/collections/unit/items/UNIT39?api-version=2.0", + "rel": "self" + }, + { + "href": "https://us.atlas.microsoft.com/wfs/dataset/218fda98-e638-0edf-5ef7-28491ff3bed4/collections/unit?api-version=2.0", + "rel": "data" + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/WFS/preview/2.0/examples/GetItems.json b/specification/maps/data-plane/Microsoft.Maps/WFS/preview/2.0/examples/GetItems.json new file mode 100644 index 000000000000..6610cc697011 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/WFS/preview/2.0/examples/GetItems.json @@ -0,0 +1,134 @@ +{ + "parameters": { + "geography": "us", + "api-version": "2.0", + "datasetid": "018fda98-e638-0edf-5ef7-28491ff3bed4", + "subscription-key": "[subscription-key]", + "collectionId": "unit", + "limit": 1, + "bbox": "-122, 47, -120, 46" + }, + "responses": { + "200": { + "body": { + "type": "FeatureCollection", + "ontology": "Facility-2.0", + "features": [ + { + "type": "feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 139.63304057829211, + 35.457686686108559 + ], + [ + 139.63296283234274, + 35.457783904258683 + ], + [ + 139.63308672404617, + 35.457850229062018 + ], + [ + 139.63314516916711, + 35.457777145699858 + ], + [ + 139.63312747036289, + 35.457767670747167 + ], + [ + 139.63314677109963, + 35.457743535881377 + ], + [ + 139.63304057829211, + 35.457686686108559 + ] + ] + ] + }, + "properties": { + "originalId": "ddbbb583-4621-4e11-8859-299d1057e843", + "categoryId": "CTG10", + "isOpenArea": false, + "isRoutable": false, + "levelId": "LVL18", + "occupants": [], + "addressId": "DIR16", + "addressRoomNumber": "", + "name": "21N13", + "nameSubtitle": "", + "nameAlt": "" + }, + "id": "UNIT39", + "featureType": "" + } + ], + "numberReturned": 1, + "links": [ + { + "href": "https://us.atlas.microsoft.com/wfs/dataset/218fda98-e638-0edf-5ef7-28491ff3bed4/collections/unit/items?api-version=2.0&limit=1", + "rel": "self" + }, + { + "href": "https://us.atlas.microsoft.com/wfs/dataset/218fda98-e638-0edf-5ef7-28491ff3bed4/collections/unit?api-version=2.0", + "rel": "data" + }, + { + "href": "https://us.atlas.microsoft.com/wfs/dataset/218fda98-e638-0edf-5ef7-28491ff3bed4/collections/unit/items?n=PMRG4ZLYOQRDUMJMEJYHEZLWEI5C2ML5&api-version=2.0&limit=1", + "rel": "next" + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/WFS/preview/2.0/examples/GetLandingPage.json b/specification/maps/data-plane/Microsoft.Maps/WFS/preview/2.0/examples/GetLandingPage.json new file mode 100644 index 000000000000..06c981081250 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/WFS/preview/2.0/examples/GetLandingPage.json @@ -0,0 +1,87 @@ +{ + "parameters": { + "geography": "us", + "api-version": "2.0", + "datasetid": "218fda98-e638-0edf-5ef7-28491ff3bed4", + "subscription-key": "[subscription-key]" + }, + "responses": { + "200": { + "body": { + "ontology": "Facility-2.0", + "links": [ + { + "href": "https://us.atlas.microsoft.com/wfs/datasets/218fda98-e638-0edf-5ef7-28491ff3bed4", + "rel": "self", + "title": "Azure Maps WFS" + }, + { + "href": "https://us.atlas.microsoft.com/wfs/datasets/218fda98-e638-0edf-5ef7-28491ff3bed4/api", + "rel": "service", + "title": "The API definition" + }, + { + "href": "https://us.atlas.microsoft.com/wfs/datasets/218fda98-e638-0edf-5ef7-28491ff3bed4/conformance", + "rel": "conformance", + "title": "WFS 3.0 conformance classes implemented by this server" + }, + { + "href": "https://us.atlas.microsoft.com/wfs/datasets/218fda98-e638-0edf-5ef7-28491ff3bed4/version", + "rel": "data", + "title": "The version information" + }, + { + "href": "https://us.atlas.microsoft.com/wfs/datasets/218fda98-e638-0edf-5ef7-28491ff3bed4/collections", + "rel": "data", + "title": "Metadata about the feature collections" + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/WFS/preview/2.0/wfs.json b/specification/maps/data-plane/Microsoft.Maps/WFS/preview/2.0/wfs.json new file mode 100644 index 000000000000..dbd9c75202c5 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/WFS/preview/2.0/wfs.json @@ -0,0 +1,1032 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Maps Web Feature Service", + "version": "2.0", + "description": "Azure Maps Web Feature REST APIs" + }, + "x-ms-parameterized-host": { + "hostTemplate": "{geography}.atlas.microsoft.com", + "parameters": [ + { + "$ref": "#/parameters/GeographicResourceLocation" + } + ] + }, + "schemes": [ + "https" + ], + "consumes": [], + "produces": [ + "application/json", + "application/xml" + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "These are the [Azure Active Directory OAuth2](https://docs.microsoft.com/en-us/azure/active-directory/develop/v1-overview) Flows. When paired with [Azure Role Based Access](https://docs.microsoft.com/en-us/azure/role-based-access-control/overview) control it can be used to control access to Azure Maps REST APIs. Azure Role based access controls are used to designate access to one or more Azure Maps resource account or sub-resources. Any user, group, or service principal can be granted access via a built in role or a custom role composed of one or more permissions to Azure Maps REST APIs.\n\nTo implement scenarios we recommend viewing [authentication concepts](https://aka.ms/amauth). In summary, this security definition provides a solution for modeling application(s) via objects capable of access control on specific APIs and scopes.\n\n#### Note\n* This security definition **requires** the use of the `x-ms-client-id` header to indicate which Azure Maps resource the application is requesting access to. This can be acquired from the [Maps management API](https://aka.ms/amauthdetails).\n* The `Authorization URL` is specific to the Azure public cloud instance. Sovereign clouds have unique Authorization URLs and Azure Active directory configurations. \n* The Azure role based access control is configured from the [Azure management plane](https://aka.ms/amrbac) via Azure portal, Powershell, CLI, Azure SDKs, or REST APIs.\n* Usage of the [Azure Maps Web SDK](https://aka.ms/amaadmc) allows for configuration based setup of an application for multiple use cases.\n* Currently Azure Active Directory [v1.0](https://docs.microsoft.com/en-us/azure/active-directory/develop/azure-ad-endpoint-comparison) tokens are supported.", + "scopes": { + "user_impersonation": "Impersonates a user's Azure Active Directory account." + } + }, + "apiKeyQuery": { + "type": "apiKey", + "description": "This is a shared key which is provisioned when creating an [Azure Maps resource](https://aka.ms/amauth) through the Azure management plane via Azure portal, Powershell, CLI, Azure SDKs, or REST APIs. With this key, any application is authorized to access all REST APIs. In other words, these can currently be treated as master keys to the account which they are issued for. For publicly exposed applications our recommendation is to use server to server access of Azure Maps REST APIs where this key can be securely stored.", + "name": "subscription-key", + "in": "query" + } + }, + "security": [ + { + "azure_auth": [] + }, + { + "apiKeyQuery": [] + } + ], + "responses": { + "400": { + "description": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "401": { + "description": "Access denied due to invalid subscription key or invalid Azure Active Directory bearer token. Make sure to provide a valid key for an active Azure subscription and Maps resource. Otherwise, verify the [WWW-Authenticate](https://tools.ietf.org/html/rfc6750#section-3.1) header for error code and description of the provided AAD bearer token.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + }, + "headers": { + "WWW-Authenticate": { + "type": "string", + "description": "Bearer realm=\"https://atlas.microsoft.com/\", error=\"invalid_token\", error_description=\"The access token expired\"" + } + } + }, + "403": { + "description": "Permission, capacity, or authentication issues.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "404": { + "description": "Not Found: the requested resource could not be found, but it may be available again in the future.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "500": { + "description": "An error occurred while processing the request. Please try again later.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + } + }, + "parameters": { + "GeographicResourceLocation": { + "name": "geography", + "description": "This parameter specifies where the Azure Maps Creator resource is located. Valid values are us and eu.", + "in": "path", + "required": true, + "type": "string", + "default": "us", + "enum": [ + "us", + "eu" + ], + "x-ms-enum": { + "name": "GeographicResourceLocation", + "modelAsString": true, + "values": [ + { + "value": "us", + "description": "Used to access an Azure Maps Creator resource in the United States" + }, + { + "value": "eu", + "description": "Used to access an Azure Maps Creator resource in Europe" + } + ] + }, + "x-ms-parameter-location": "client" + }, + "ClientId": { + "name": "x-ms-client-id", + "description": "Specifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.", + "type": "string", + "in": "header", + "required": false, + "x-ms-parameter-location": "client" + }, + "SubscriptionKey": { + "name": "subscription-key", + "description": "One of the Azure Maps keys provided from an Azure Map Account. Please refer to this [article](https://docs.microsoft.com/azure/azure-maps/how-to-manage-authentication) for details on how to manage authentication.", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "client" + }, + "ApiVersion": { + "name": "api-version", + "description": "Version number of Azure Maps API. Current version is 2.0", + "type": "string", + "in": "query", + "required": true, + "default": "2.0", + "x-ms-parameter-location": "client" + }, + "Datasetid": { + "name": "datasetid", + "type": "string", + "in": "path", + "description": "The identifier for the dataset to query from.", + "required": true, + "x-ms-parameter-location": "method" + }, + "LimitWfs": { + "name": "limit", + "in": "query", + "type": "number", + "minimum": 1, + "maximum": 50, + "default": 10, + "description": "The optional limit parameter limits the number of features that are presented in the response document.\nOnly features that are on the first level of the collection in the response document are counted. Nested objects contained within the explicitly requested features shall not be counted.\n* Minimum = 1 * Maximum = 50 * Default = 10", + "x-ms-parameter-location": "method" + }, + "Filter": { + "name": "filter", + "in": "query", + "type": "string", + "description": "Filter expression to search for features with specific property values in a given collection. Only feature properties of scalar type and equals operator are supported.\nThis is a special parameter where the parameter name is a case sensitive property name. The scheme for this parameter is {property name}={property value}. Unless \"filter\" is one of the property names in the collection, \"filter\" should not be used as a parameter name. To search for features with \"name\" property value \"21N13\", use \"name=21N13\".\nMultiple filters are supported and should be represented as multiple query parameters. E.g., =&= String values are case sensitive.", + "x-ms-parameter-location": "method" + }, + "Bbox": { + "name": "bbox", + "in": "query", + "type": "string", + "description": "Only features that have a geometry that intersects the supplied bounding box are selected.\n* Lower left corner, coordinate axis 1 * Lower left corner, coordinate axis 2 * Upper right corner, coordinate axis 1 * Upper right corner, coordinate axis 2\nThe coordinate reference system of the values is WGS84 longitude/latitude (http://www.opengis.net/def/crs/OGC/1.3/CRS84) unless a different coordinate reference system is specified in the parameter `bbox-crs`.\nFor WGS84 longitude/latitude the values are in most cases the sequence of minimum longitude, minimum latitude, maximum longitude and maximum latitude. However, in cases where the box spans the antimeridian the first value (west-most box edge) is larger than the third value (east-most box edge).", + "required": false, + "x-ms-parameter-location": "method" + }, + "CollectionId": { + "name": "collectionId", + "in": "path", + "type": "string", + "required": true, + "description": "Identifier (name) of a specific collection", + "x-ms-parameter-location": "method" + }, + "FeatureId": { + "name": "featureId", + "in": "path", + "type": "string", + "description": "Local identifier of a specific feature", + "required": true, + "x-ms-parameter-location": "method" + } + }, + "paths": { + "/wfs/datasets/{datasetid}/": { + "get": { + "x-publish": true, + "description": "**Applies to:** see pricing [tiers](https://aka.ms/AzureMapsPricingTier).\n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. [This](https://docs.microsoft.com/azure/azure-maps/creator-indoor-maps) article introduces concepts and tools that apply to Azure Maps Creator.\n\n The Web Feature Service (WFS) API is part of Creator. WFS API follows the [Open Geospatial Consortium API standard for Features](http://docs.opengeospatial.org/is/17-069r3/17-069r3.html) to query [Datasets](https://docs.microsoft.com/en-us/rest/api/maps/dataset/createpreview). \nA dataset consists of multiple feature collections. A feature collection is a collection of features of a similar type, based on a common schema.\nThe Get Landing Page API provides links to the API definition, the Conformance statements and the metadata about the feature data in this dataset.", + "operationId": "WFS_GetLandingPage", + "x-ms-examples": { + "GetLandingPage": { + "$ref": "./examples/GetLandingPage.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/Datasetid" + } + ], + "responses": { + "200": { + "description": "Ok", + "schema": { + "$ref": "#/definitions/Root" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/wfs/datasets/{datasetid}/conformance": { + "get": { + "description": "**Applies to:** see pricing [tiers](https://aka.ms/AzureMapsPricingTier).\n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. [This](https://docs.microsoft.com/azure/azure-maps/creator-indoor-maps) article introduces concepts and tools that apply to Azure Maps Creator.\n\nThe Web Feature Service (WFS) API is part of Creator. WFS API follows the [Open Geospatial Consortium API standard for Features](http://docs.opengeospatial.org/is/17-069r3/17-069r3.html) to query [Datasets](https://docs.microsoft.com/en-us/rest/api/maps/dataset/createpreview). \nA dataset consists of multiple feature collections. A feature collection is a collection of features of a similar type, based on a common schema.\nThe Get Requirements Classes lists all requirements classes specified in the standard that the server conforms to.", + "x-publish": true, + "operationId": "WFS_GetRequirementsClasses", + "x-ms-examples": { + "GetConformance": { + "$ref": "./examples/GetConformance.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/Datasetid" + } + ], + "responses": { + "200": { + "description": "Ok", + "schema": { + "$ref": "#/definitions/ReqClasses" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/wfs/datasets/{datasetid}/collections": { + "get": { + "description": "**Applies to:** see pricing [tiers](https://aka.ms/AzureMapsPricingTier).\n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. [This](https://docs.microsoft.com/azure/azure-maps/creator-indoor-maps) article introduces concepts and tools that apply to Azure Maps Creator.\n\n The Web Feature Service (WFS) API is part of Creator. WFS API follows the [Open Geospatial Consortium API standard for Features](http://docs.opengeospatial.org/is/17-069r3/17-069r3.html) to query [Datasets](https://docs.microsoft.com/en-us/rest/api/maps/dataset/createpreview). \nA dataset consists of multiple feature collections. A feature collection is a collection of features of a similar type, based on a common schema.\nThe Collections Description API provides descriptions of all the collections in a given dataset.", + "operationId": "WFS_CollectionsDescription", + "x-publish": true, + "x-ms-examples": { + "GetCollections": { + "$ref": "./examples/GetCollections.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/Datasetid" + } + ], + "responses": { + "200": { + "description": "Ok", + "schema": { + "$ref": "#/definitions/Content" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/wfs/datasets/{datasetid}/collections/{collectionId}": { + "get": { + "description": "**Applies to:** see pricing [tiers](https://aka.ms/AzureMapsPricingTier).\n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. [This](https://docs.microsoft.com/azure/azure-maps/creator-indoor-maps) article introduces concepts and tools that apply to Azure Maps Creator.\n\n The Web Feature Service (WFS) API is part of Creator. WFS API follows the [Open Geospatial Consortium API standard for Features](http://docs.opengeospatial.org/is/17-069r3/17-069r3.html) to query [Datasets](https://docs.microsoft.com/en-us/rest/api/maps/dataset/createpreview). \nA dataset consists of multiple feature collections. A feature collection is a collection of features of a similar type, based on a common schema.\n \nThe Collection Description API provides the description of a given collection. It includes the links to the operations that can be performed on the collection.", + "operationId": "WFS_CollectionDescription", + "x-publish": true, + "x-ms-examples": { + "GetCollection": { + "$ref": "./examples/GetCollection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/Datasetid" + }, + { + "$ref": "#/parameters/CollectionId" + } + ], + "responses": { + "200": { + "description": "Ok", + "schema": { + "$ref": "#/definitions/CollectionInfo" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/wfs/datasets/{datasetid}/collections/{collectionId}/definition": { + "get": { + "description": "**Applies to:** see pricing [tiers](https://aka.ms/AzureMapsPricingTier).\n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. [This](https://docs.microsoft.com/azure/azure-maps/creator-indoor-maps) article introduces concepts and tools that apply to Azure Maps Creator.\n\n [This](https://docs.microsoft.com/en-us/azure/azure-maps/creator-indoor-maps) article introduces concepts and tools that apply to Azure Maps Creator. WFS API follows the [Open Geospatial Consortium API standard for Features](http://docs.opengeospatial.org/is/17-069r3/17-069r3.html) to query [Datasets](https://docs.microsoft.com/en-us/rest/api/maps/dataset/createpreview). \nA dataset consists of multiple feature collections. A feature collection is a collection of features of a similar type, based on a common schema.\n \nThe Collection Definition API provides the detailed data model of a given collection.", + "operationId": "WFS_CollectionDefinition", + "x-publish": true, + "x-ms-examples": { + "GetCollectionDefinition": { + "$ref": "./examples/GetCollectionDefinition.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/Datasetid" + }, + { + "$ref": "#/parameters/CollectionId" + } + ], + "responses": { + "200": { + "description": "Ok", + "schema": { + "$ref": "#/definitions/CollectionDefinition" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/wfs/datasets/{datasetid}/collections/{collectionId}/items": { + "get": { + "description": "**Applies to:** see pricing [tiers](https://aka.ms/AzureMapsPricingTier).\n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. [This](https://docs.microsoft.com/azure/azure-maps/creator-indoor-maps) article introduces concepts and tools that apply to Azure Maps Creator.\n\n The Web Feature Service (WFS) API is part of Creator. WFS API follows the [Open Geospatial Consortium API standard for Features](http://docs.opengeospatial.org/is/17-069r3/17-069r3.html) to query [Datasets](https://docs.microsoft.com/en-us/rest/api/maps/dataset/createpreview). \nA dataset consists of multiple feature collections. A feature collection is a collection of features of a similar type, based on a common schema.\nThe Get Features API returns the list of features in the given collection.", + "operationId": "WFS_GetFeatures", + "x-publish": true, + "x-ms-examples": { + "Getitems": { + "$ref": "./examples/GetItems.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/Datasetid" + }, + { + "$ref": "#/parameters/CollectionId" + }, + { + "$ref": "#/parameters/LimitWfs" + }, + { + "$ref": "#/parameters/Bbox" + }, + { + "$ref": "#/parameters/Filter" + } + ], + "responses": { + "200": { + "description": "Ok", + "schema": { + "$ref": "#/definitions/FeatureCollectionGeoJSON" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/wfs/datasets/{datasetid}/collections/{collectionId}/items/{featureId}": { + "get": { + "description": "**Applies to:** see pricing [tiers](https://aka.ms/AzureMapsPricingTier).\n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. [This](https://docs.microsoft.com/azure/azure-maps/creator-indoor-maps) article introduces concepts and tools that apply to Azure Maps Creator.\n\n The Web Feature Service (WFS) API is part of Creator. WFS API follows the [Open Geospatial Consortium API standard for Features](http://docs.opengeospatial.org/is/17-069r3/17-069r3.html) to query [Datasets](https://docs.microsoft.com/en-us/rest/api/maps/dataset/createpreview). \nA dataset consists of multiple feature collections. A feature collection is a collection of features of a similar type, based on a common schema.\nThe Get Feature API returns the feature identified by the provided id in the given collection.", + "x-publish": true, + "operationId": "WFS_GetFeature", + "x-ms-examples": { + "GetFeature": { + "$ref": "./examples/GetItem.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/Datasetid" + }, + { + "$ref": "#/parameters/CollectionId" + }, + { + "$ref": "#/parameters/FeatureId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Feature" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + }, + "delete": { + "description": "**Applies to:** see pricing [tiers](https://aka.ms/AzureMapsPricingTier).\n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. [This](https://docs.microsoft.com/azure/azure-maps/creator-indoor-maps) article introduces concepts and tools that apply to Azure Maps Creator.\n\n The Web Feature Service (WFS) API is part of Creator. WFS API follows the [Open Geospatial Consortium API standard for Features](http://docs.opengeospatial.org/is/17-069r3/17-069r3.html) to query [Datasets](https://docs.microsoft.com/en-us/rest/api/maps/dataset/createpreview). \nA dataset consists of multiple feature collections. A feature collection is a collection of features of a similar type, based on a common schema.\nThe Delete Feature API deletes the feature identified by the provided id in the given collection. At this point this API supports only facility features. Deleting a facility feature deletes all the child features of that facility recursively.", + "x-publish": true, + "operationId": "WFS_DeleteFeature", + "x-ms-examples": { + "GetFeature": { + "$ref": "./examples/DeleteItem.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/Datasetid" + }, + { + "$ref": "#/parameters/CollectionId" + }, + { + "$ref": "#/parameters/FeatureId" + } + ], + "responses": { + "204": { + "description": "Feature Deleted." + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + } + }, + "definitions": { + "ODataErrorResponse": { + "type": "object", + "description": "This response object is returned when an error occurs in the Maps API.", + "properties": { + "error": { + "$ref": "#/definitions/ODataError" + } + } + }, + "ODataError": { + "type": "object", + "description": "This object is returned when an error occurs in the Maps API.", + "properties": { + "code": { + "type": "string", + "readOnly": true, + "description": "The ODataError code." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "If available, a human readable description of the error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ODataError" + } + }, + "target": { + "type": "string", + "readOnly": true, + "description": "If available, the target causing the error." + } + } + }, + "Exception": { + "type": "object", + "required": [ + "code" + ], + "properties": { + "code": { + "type": "string" + }, + "description": { + "type": "string" + } + } + }, + "Root": { + "type": "object", + "required": [ + "links" + ], + "properties": { + "ontology": { + "$ref": "#/definitions/Ontology" + }, + "links": { + "type": "array", + "items": { + "$ref": "#/definitions/Link" + } + } + } + }, + "ReqClasses": { + "type": "object", + "required": [ + "conformsTo" + ], + "properties": { + "conformsTo": { + "type": "array", + "items": { + "type": "string" + }, + "example": [ + "http://www.opengis.net/spec/wfs-1/3.0/req/core", + "http://www.opengis.net/spec/wfs-1/3.0/req/oas30", + "http://www.opengis.net/spec/wfs-1/3.0/req/html", + "http://www.opengis.net/spec/wfs-1/3.0/req/geojson" + ] + } + } + }, + "Link": { + "description": "Links to other WFS endpoints", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "type": "string" + }, + "rel": { + "type": "string", + "example": "prev" + }, + "type": { + "type": "string", + "example": "application/geo+json" + }, + "hreflang": { + "type": "string", + "example": "en" + }, + "title": { + "type": "string" + } + } + }, + "Content": { + "type": "object", + "required": [ + "links", + "collections" + ], + "properties": { + "ontology": { + "$ref": "#/definitions/Ontology" + }, + "links": { + "type": "array", + "items": { + "$ref": "#/definitions/Link" + }, + "example": [ + { + "href": "http://data.example.org/collections.json", + "rel": "self", + "type": "application/json", + "title": "this document" + }, + { + "href": "http://data.example.org/collections.html", + "rel": "alternate", + "type": "text/html", + "title": "this document as HTML" + }, + { + "href": "http://schemas.example.org/1.0/foobar.xsd", + "rel": "describedBy", + "type": "application/xml", + "title": "XML schema for Acme Corporation data" + } + ] + }, + "collections": { + "type": "array", + "items": { + "$ref": "#/definitions/CollectionInfo" + } + } + } + }, + "Version": { + "type": "object", + "required": [ + "version", + "revisionTimestamp", + "links" + ], + "properties": { + "version": { + "description": "version number of the dataset", + "type": "string", + "example": "1.0.0" + }, + "revisionTimestamp": { + "description": "timestamp of the revision", + "type": "string", + "example": "2020-01-02T03:04:05" + }, + "links": { + "type": "array", + "items": { + "$ref": "#/definitions/Link" + }, + "example": [ + { + "href": "http://data.example.org/collections.json", + "rel": "self", + "type": "application/json", + "title": "this document" + }, + { + "href": "http://data.example.org/collections.html", + "rel": "alternate", + "type": "text/html", + "title": "this document as HTML" + }, + { + "href": "http://schemas.example.org/1.0/foobar.xsd", + "rel": "describedBy", + "type": "application/xml", + "title": "XML schema for Acme Corporation data" + } + ] + } + } + }, + "CollectionInfo": { + "type": "object", + "required": [ + "name", + "links" + ], + "properties": { + "name": { + "description": "identifier of the collection used, for example, in URIs", + "type": "string", + "example": "buildings" + }, + "title": { + "description": "human readable title of the collection", + "type": "string", + "example": "Buildings" + }, + "ontology": { + "$ref": "#/definitions/Ontology" + }, + "description": { + "description": "a description of the features in the collection", + "type": "string", + "example": "Buildings in the city of Bonn." + }, + "links": { + "type": "array", + "items": { + "$ref": "#/definitions/Link" + }, + "example": [ + { + "href": "http://data.example.org/collections/buildings/items", + "rel": "item", + "type": "application/geo+json", + "title": "Buildings" + }, + { + "href": "http://example.org/concepts/building.html", + "rel": "describedBy", + "type": "text/html", + "title": "Feature catalogue for buildings" + } + ] + } + } + }, + "CollectionDefinition": { + "description": "collection of GeoJSON features", + "type": "object", + "required": [ + "idPrefix", + "name", + "geometryType", + "featureTypes" + ], + "properties": { + "description": { + "description": "describes the collection", + "type": "string" + }, + "idPrefix": { + "description": "prefix of the collection used", + "type": "string", + "example": "BLD" + }, + "name": { + "description": "identifier of the collection used, for example, in URIs", + "type": "string", + "example": "buildings" + }, + "title": { + "description": "title of collection", + "type": "string", + "example": "Feature Class buildings" + }, + "ontology": { + "$ref": "#/definitions/Ontology" + }, + "geometryType": { + "description": "type of geometry returned", + "type": "string", + "enum": [ + "Point", + "MultiPoint", + "LineString", + "MultiLineString", + "Polygon", + "MultiPolygon", + "GeometryCollection" + ] + }, + "featureTypes": { + "description": "type of features returned", + "type": "array", + "items": { + "type": "string" + } + }, + "properties": { + "description": "attributes of the collection used", + "type": "array", + "items": { + "$ref": "#/definitions/DefinitionProperties" + } + }, + "links": { + "type": "array", + "items": { + "$ref": "#/definitions/Link" + } + } + } + }, + "DefinitionProperties": { + "type": "object", + "required": [ + "name", + "required", + "type" + ], + "properties": { + "name": { + "description": "name of attribute", + "type": "string", + "example": "external_id" + }, + "required": { + "description": "is attribute required", + "type": "boolean" + }, + "type": { + "description": "type of attribute", + "type": "object" + } + } + }, + "FeatureCollectionGeoJSON": { + "type": "object", + "required": [ + "type", + "features" + ], + "properties": { + "type": { + "type": "string" + }, + "ontology": { + "$ref": "#/definitions/Ontology" + }, + "numberReturned": { + "type": "integer" + }, + "features": { + "type": "array", + "items": { + "$ref": "#/definitions/FeatureGeoJSON" + } + }, + "links": { + "type": "array", + "items": { + "$ref": "#/definitions/Link" + } + } + } + }, + "Feature": { + "type": "object", + "required": [ + "feature" + ], + "properties": { + "ontology": { + "$ref": "#/definitions/Ontology" + }, + "feature": { + "$ref": "#/definitions/FeatureGeoJSON" + }, + "links": { + "type": "array", + "items": { + "$ref": "#/definitions/Link" + } + } + } + }, + "FeatureGeoJSON": { + "description": "GeoJSON Feature", + "type": "object", + "required": [ + "type", + "geometry", + "properties" + ], + "properties": { + "type": { + "description": "feature", + "type": "string" + }, + "geometry": { + "description": "This represents the geometry for one or more geographical features (parks, state boundary etc.) and should be a `GeoJSON` compliant type. Please refer to [RFC 7946](https://tools.ietf.org/html/rfc7946) for details.", + "type": "object" + }, + "properties": { + "description": "Additional properties of the feature.", + "type": "object" + }, + "id": { + "description": "Identifier for the feature.", + "type": "string" + }, + "featureType": { + "description": "The type of the feature. The value depends on the data model the current feature is part of. Some data models may have an empty value.", + "type": "string" + } + } + }, + "Ontology": { + "type": "string", + "description": "The ontology version of this dataset. Please refer to this [article](https://docs.microsoft.com/en-us/azure/azure-maps/creator-facility-ontology) for more information about Azure Maps Creator ontologies.", + "readOnly": true + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Weather/preview/1.0/weather.json b/specification/maps/data-plane/Microsoft.Maps/Weather/preview/1.0/weather.json index 4cf5e087e01c..16dc39630f47 100644 --- a/specification/maps/data-plane/Microsoft.Maps/Weather/preview/1.0/weather.json +++ b/specification/maps/data-plane/Microsoft.Maps/Weather/preview/1.0/weather.json @@ -112,7 +112,7 @@ ], "x-ms-enum": { "name": "JsonFormat", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "json", @@ -143,7 +143,7 @@ ], "x-ms-enum": { "name": "Unit", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "metric", @@ -161,9 +161,8 @@ "paths": { "/weather/forecast/hourly/{format}": { "get": { - "x-publish": true, "description": "**Get Hourly Forecast**\n\n**Applies to**: S0 and S1 pricing tiers.\n\n\nRequest detailed weather forecast by the hour for the next 1, 12, 24 (1 day), 72 (3 days), 120 (5 days), and 240 hours (10 days) for the given the given coordinate location. The API returns details such as temperature, humidity, wind, precipitation, and ultraviolet (UV) index.\n\nIn S0 you can request hourly forecast for the next 1, 12, 24 hours (1 day), and 72 hours (3 days). In S1 you can also request hourly forecast for the next 120 (5 days) and 240 hours (10 days).", - "operationId": "Weather_GetHourlyForecastPreview", + "operationId": "Weather_GetHourlyForecast", "x-ms-examples": { "HourlyForecast": { "$ref": "./examples/GetHourlyForecast.json" @@ -230,9 +229,8 @@ }, "/weather/forecast/minute/{format}": { "get": { - "x-publish": true, "description": "**Get Minute Forecast**\n \n \n**Applies to**: S1 pricing tier.\n\n\nGet Minute Forecast service returns minute-by-minute forecasts for a given location for the next 120 minutes. Users can request weather forecasts in the interval of 1, 5 and 15 minutes. The response will include details such as the type of precipitation (including rain, snow, or a mixture of both), start time, and precipitation intensity value (dBZ).", - "operationId": "Weather_GetMinuteForecastPreview", + "operationId": "Weather_GetMinuteForecast", "x-ms-examples": { "MinuteForecast": { "$ref": "./examples/GetMinuteForecast.json" @@ -296,9 +294,8 @@ }, "/weather/forecast/quarterDay/{format}": { "get": { - "x-publish": true, "description": "**Get Quarter-Day Forecast**\n \n \n**Applies to**: S0 and S1 pricing tiers.\n\n\nService returns detailed weather forecast by quarter-day for the next 1, 5, 10, or 15 days for a given location. Response data is presented by quarters of the day - morning, afternoon, evening, and overnight. Details such as temperature, humidity, wind, precipitation, and UV index are returned.", - "operationId": "Weather_GetQuarterDayForecastPreview", + "operationId": "Weather_GetQuarterDayForecast", "x-ms-examples": { "QuarterDayForecast": { "$ref": "./examples/GetQuarterDayForecast.json" @@ -365,9 +362,8 @@ }, "/weather/currentConditions/{format}": { "get": { - "x-publish": true, "description": "**Get Current Conditions**\n \n \n**Applies to**: S0 and S1 pricing tiers.\n\n\nGet Current Conditions service returns detailed current weather conditions such as precipitation, temperature and wind for a given coordinate location. Also, observations from the past 6 or 24 hours for a particular location can be retrieved. The basic information returned with the response include details such as observation date and time, brief description of the weather conditions, weather icon, precipitation indicator flags, and temperature. Additional details such as RealFeel™ Temperature and UV index are also returned.", - "operationId": "Weather_GetCurrentConditionsPreview", + "operationId": "Weather_GetCurrentConditions", "x-ms-examples": { "CurrentConditions": { "$ref": "./examples/GetCurrentConditions.json" @@ -441,9 +437,8 @@ }, "/weather/forecast/daily/{format}": { "get": { - "x-publish": true, "description": "**Get Daily Forecast**\n \n \n**Applies to**: S0 and S1 pricing tiers.\n\n\nThe service returns detailed weather forecast such as temperature and wind by day for the next 1, 5, 10, 15, 25, or 45 days for a given coordinate location. The response include details such as temperature, wind, precipitation, air quality, and UV index.\n\nIn S0 you can request daily forecast for the next 1, 5, 10, and 15 days. In S1 you can also request daily forecast for the next 25 days, and 45 days.", - "operationId": "Weather_GetDailyForecastPreview", + "operationId": "Weather_GetDailyForecast", "x-ms-examples": { "DailyForecast": { "$ref": "./examples/GetDailyForecast.json" @@ -510,9 +505,8 @@ }, "/weather/route/{format}": { "get": { - "x-publish": true, "description": "**Get Weather along route**\n \n \n **Applies to**: S1 pricing tier.\n\n Weather along a route API returns hyper local (one kilometer or less), up-to-the-minute weather nowcasts, weather hazard assessments, and notifications along a route described as a sequence of waypoints. \n This includes a list of weather hazards affecting the waypoint or route, and the aggregated hazard index for each waypoint might be used to paint each portion of a route according to how safe it is for the driver. When submitting the waypoints, it is recommended to stay within, or close to, the distance that can be traveled within 120-mins or shortly after. Data is updated every five minutes. \n \n The service supplements Azure Maps [Route Service](https://docs.microsoft.com/rest/api/maps/route) that allows you to first request a route between an origin and a destination and use that as an input for Weather Along Route endpoint.\n \n In addition, the service supports scenarios to generate weather notifications for waypoints that experience an increase in intensity of a weather hazard. For example, if the vehicle is expected to begin experiencing heavy rain as it reaches a waypoint, a weather notification for heavy rain will be generated for that waypoint allowing the end product to display a heavy rain notification before the driver reaches that waypoint. \n The trigger for when to display the notification for a waypoint could be based, for example, on a [geofence](https://docs.microsoft.com/azure/azure-maps/tutorial-iot-hub-maps), or selectable distance to the waypoint.\n\n The API covers all regions of the planet except latitudes above Greenland and Antarctica.", - "operationId": "Weather_GetWeatherAlongRoutePreview", + "operationId": "Weather_GetWeatherAlongRoute", "x-ms-examples": { "WeatherAlongRoute": { "$ref": "./examples/GetWeatherAlongRoute.json" @@ -569,9 +563,8 @@ }, "/weather/severe/alerts/{format}": { "get": { - "x-publish": true, "description": "**Get Severe Weather Alerts**\n\n**Applies to**: S0 and S1 pricing tiers.\n\nSevere weather phenomenon can significantly impact our everyday life and business operations. For example, severe weather conditions such as tropical storms, high winds or flooding can close roads and force logistics companies to reroute their fleet causing delays in reaching destinations and breaking the cold chain of refrigerated food products.  Azure Maps Severe Weather Alerts API returns the severe weather alerts that are available worldwide from both official Government Meteorological Agencies and leading global to regional weather alert providers. The service can return details such as alert type, category, level and detailed description about the active severe alerts for the requested location, like hurricanes, thunderstorms, lightning, heat waves or forest fires.", - "operationId": "Weather_GetSevereWeatherAlertsPreview", + "operationId": "Weather_GetSevereWeatherAlerts", "x-ms-examples": { "SevereWeatherAlert": { "$ref": "./examples/GetSevereWeatherAlerts.json" @@ -635,9 +628,8 @@ }, "/weather/indices/daily/{format}": { "get": { - "x-publish": true, - "description": "**Get Daily Indices Preview**\n\n**Applies to**: S0 and S1 pricing tiers.\n\nThere may be times when you want to know if the weather conditions are optimal for a specific activity, for example, for outdoor construction, indoor activities, running or farming including soil moisture information. Azure Maps Indices API returns index values that will guide end users to plan future activities. For example, a health mobile application can notify users that today is good weather for running or for other outdoors activities like for playing golf, and retail stores can optimize their digital marketing campaigns based on predicted index values. The service returns in daily indices values for current and next 5, 10 and 15 days starting from current day.", - "operationId": "Weather_GetDailyIndicesPreview", + "description": "**Get Daily Indices**\n\n**Applies to**: S0 and S1 pricing tiers.\n\nThere may be times when you want to know if the weather conditions are optimal for a specific activity, for example, for outdoor construction, indoor activities, running or farming including soil moisture information. Azure Maps Indices API returns index values that will guide end users to plan future activities. For example, a health mobile application can notify users that today is good weather for running or for other outdoors activities like for playing golf, and retail stores can optimize their digital marketing campaigns based on predicted index values. The service returns in daily indices values for current and next 5, 10 and 15 days starting from current day.", + "operationId": "Weather_GetDailyIndices", "x-ms-examples": { "DailyIndices": { "$ref": "./examples/GetDailyIndices.json" @@ -1146,7 +1138,7 @@ ], "x-ms-enum": { "name": "Quarter", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": 0, @@ -2053,7 +2045,7 @@ ], "x-ms-enum": { "name": "LatestStatusKeyword", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "New", @@ -2303,7 +2295,7 @@ ], "x-ms-enum": { "name": "PollutantType", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "CO", @@ -2364,7 +2356,7 @@ ], "x-ms-enum": { "name": "DominantPollutant", - "modelAsString": false, + "modelAsString": true, "values": [ { "value": "Carbon Monoxide", diff --git a/specification/maps/data-plane/readme.md b/specification/maps/data-plane/readme.md index 28df36208f0c..cd93b9d99169 100644 --- a/specification/maps/data-plane/readme.md +++ b/specification/maps/data-plane/readme.md @@ -27,7 +27,7 @@ These are the global settings for MapsClient. ``` yaml title: MapsClient openapi-type: data-plane -tag: package-1.0-preview +tag: package-preview-2.0 ``` ### Suppression @@ -40,6 +40,33 @@ directive: ``` + +### Tag: package-preview-2.0 + +These settings apply only when `--tag=package-preview-2.0` is specified on the command line. + +```yaml $(tag) == 'package-preview-2.0' +input-file: + - Microsoft.Maps/Alias/preview/2.0/alias.json + - Microsoft.Maps/Data/preview/2.0/data.json + - Microsoft.Maps/Dataset/preview/2.0/dataset.json + - Microsoft.Maps/DEM/preview/1.0/elevation.json + - Microsoft.Maps/DwgConversion/preview/2.0/dwgconversion.json + - Microsoft.Maps/FeatureState/preview/2.0/featurestate.json + - Microsoft.Maps/Feedback/preview/1.0/feedback.json + - Microsoft.Maps/Geolocation/preview/1.0/geolocation.json + - Microsoft.Maps/Mobility/preview/1.0/mobility.json + - Microsoft.Maps/Render/preview/1.0/render.json + - Microsoft.Maps/Render/preview/2.0/render.json + - Microsoft.Maps/Route/preview/1.0/route.json + - Microsoft.Maps/Search/preview/1.0/search.json + - Microsoft.Maps/Spatial/preview/1.0/spatial.json + - Microsoft.Maps/Tileset/preview/2.0/tileset.json + - Microsoft.Maps/Timezone/preview/1.0/timezone.json + - Microsoft.Maps/Traffic/preview/1.0/traffic.json + - Microsoft.Maps/Weather/preview/1.0/weather.json + - Microsoft.Maps/WFS/preview/2.0/wfs.json +``` ### Tag: package-1.0-preview These settings apply only when `--tag=package-1.0-preview` is specified on the command line. diff --git a/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/CreateAccount.json b/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/CreateAccount.json new file mode 100644 index 000000000000..1a23a6678abc --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/CreateAccount.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "api-version": "2021-07-01-preview", + "subscriptionId": "21a9967a-e8a9-4656-a70b-96ff1c4d05a0", + "resourceGroupName": "myResourceGroup", + "accountName": "myMapsAccount", + "MapsAccount": { + "location": "global", + "sku": { + "name": "S0" + }, + "kind": "Gen1", + "tags": { + "test": "true" + }, + "properties": { + "disableLocalAuth": false + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount", + "name": "myMapsAccount", + "type": "Microsoft.Maps/accounts", + "kind": "Gen1", + "location": "global", + "tags": { + "test": "true" + }, + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2021-07-02T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2021-07-02T01:01:01.1075056Z" + }, + "sku": { + "name": "S0", + "tier": "Standard" + }, + "properties": { + "uniqueId": "b2e763e6-d6f3-4858-9e2b-7cf8df85c593", + "provisioningState": "Succeeded", + "disableLocalAuth": false + } + } + }, + "201": { + "body": { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount", + "name": "myMapsAccount", + "type": "Microsoft.Maps/accounts", + "kind": "Gen1", + "location": "global", + "tags": { + "test": "true" + }, + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2021-07-02T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2021-07-02T01:01:01.1075056Z" + }, + "sku": { + "name": "S0", + "tier": "Standard" + }, + "properties": { + "uniqueId": "b2e763e6-d6f3-4858-9e2b-7cf8df85c593", + "provisioningState": "Succeeded", + "disableLocalAuth": false + } + } + } + } +} diff --git a/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/CreateAccountGen2.json b/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/CreateAccountGen2.json new file mode 100644 index 000000000000..1896ba30e097 --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/CreateAccountGen2.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "api-version": "2021-07-01-preview", + "subscriptionId": "21a9967a-e8a9-4656-a70b-96ff1c4d05a0", + "resourceGroupName": "myResourceGroup", + "accountName": "myMapsAccount", + "MapsAccount": { + "location": "global", + "sku": { + "name": "G2" + }, + "kind": "Gen2", + "tags": { + "test": "true" + }, + "properties": { + "disableLocalAuth": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount", + "name": "myMapsAccount", + "type": "Microsoft.Maps/accounts", + "kind": "Gen2", + "location": "global", + "tags": { + "test": "true" + }, + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2021-07-02T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2021-07-02T01:01:01.1075056Z" + }, + "sku": { + "name": "G2", + "tier": "Standard" + }, + "properties": { + "uniqueId": "b2e763e6-d6f3-4858-9e2b-7cf8df85c593", + "provisioningState": "Succeeded", + "disableLocalAuth": true + } + } + }, + "201": { + "body": { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount", + "name": "myMapsAccount", + "type": "Microsoft.Maps/accounts", + "kind": "Gen2", + "location": "global", + "tags": { + "test": "true" + }, + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2021-07-02T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2021-07-02T01:01:01.1075056Z" + }, + "sku": { + "name": "G2", + "tier": "Standard" + }, + "properties": { + "uniqueId": "b2e763e6-d6f3-4858-9e2b-7cf8df85c593", + "provisioningState": "Succeeded", + "disableLocalAuth": true + } + } + } + } +} diff --git a/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/CreateAccountManagedIdentity.json b/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/CreateAccountManagedIdentity.json new file mode 100644 index 000000000000..a08700a3131a --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/CreateAccountManagedIdentity.json @@ -0,0 +1,139 @@ +{ + "parameters": { + "api-version": "2021-07-01-preview", + "subscriptionId": "21a9967a-e8a9-4656-a70b-96ff1c4d05a0", + "resourceGroupName": "myResourceGroup", + "accountName": "myMapsAccount", + "MapsAccount": { + "location": "eastus", + "sku": { + "name": "G2" + }, + "kind": "Gen2", + "tags": { + "test": "true" + }, + "identity": { + "type": "SystemAssigned, UserAssigned", + "userAssignedIdentities": { + "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identityName": {} + } + }, + "properties": { + "disableLocalAuth": false, + "linkedResources": [ + { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Storage/accounts/mystorageacc", + "uniqueName": "myBatchStorageAccount" + }, + { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Storage/accounts/mystorageacc", + "uniqueName": "myBlobDataSource" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount", + "name": "myMapsAccount", + "type": "Microsoft.Maps/accounts", + "kind": "Gen2", + "location": "eastus", + "tags": { + "test": "true" + }, + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2021-07-02T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2021-07-02T01:01:01.1075056Z" + }, + "sku": { + "name": "G2", + "tier": "Standard" + }, + "identity": { + "type": "SystemAssigned, UserAssigned", + "principalId": "77f72dac-e0aa-484e-9acd-e5e7075310ef", + "tenantId": "06006684-60c1-4954-a20c-ffd8fbea7276", + "userAssignedIdentities": { + "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identityName": { + "clientId": "b602d315-01b5-4265-af23-859edc4f2431", + "principalId": "ac287332-364a-41d9-a567-9ad86b9fc299" + } + } + }, + "properties": { + "uniqueId": "b2e763e6-d6f3-4858-9e2b-7cf8df85c593", + "provisioningState": "Succeeded", + "disableLocalAuth": true, + "linkedResources": [ + { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Storage/accounts/mystorageacc", + "uniqueName": "myBatchStorageAccount" + }, + { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Storage/accounts/mystorageacc", + "uniqueName": "myBlobDataSource" + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount", + "name": "myMapsAccount", + "type": "Microsoft.Maps/accounts", + "kind": "Gen2", + "location": "eastus", + "tags": { + "test": "true" + }, + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2021-07-02T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2021-07-02T01:01:01.1075056Z" + }, + "sku": { + "name": "G2", + "tier": "Standard" + }, + "identity": { + "type": "SystemAssigned, UserAssigned", + "principalId": "77f72dac-e0aa-484e-9acd-e5e7075310ef", + "tenantId": "06006684-60c1-4954-a20c-ffd8fbea7276", + "userAssignedIdentities": { + "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identityName": { + "clientId": "b602d315-01b5-4265-af23-859edc4f2431", + "principalId": "ac287332-364a-41d9-a567-9ad86b9fc299" + } + } + }, + "properties": { + "uniqueId": "b2e763e6-d6f3-4858-9e2b-7cf8df85c593", + "provisioningState": "Succeeded", + "disableLocalAuth": true, + "linkedResources": [ + { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Storage/accounts/mystorageacc", + "uniqueName": "myBatchStorageAccount" + }, + { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Storage/accounts/mystorageacc", + "uniqueName": "myBlobDataSource" + } + ] + } + } + } + } +} diff --git a/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/CreateMapsCreator.json b/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/CreateMapsCreator.json new file mode 100644 index 000000000000..aa820b9943d3 --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/CreateMapsCreator.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2021-07-01-preview", + "subscriptionId": "21a9967a-e8a9-4656-a70b-96ff1c4d05a0", + "resourceGroupName": "myResourceGroup", + "accountName": "myMapsAccount", + "creatorName": "myCreator", + "CreatorResource": { + "location": "eastus2", + "tags": { + "test": "true" + }, + "properties": { + "storageUnits": 5 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount/creators/myCreator", + "name": "myCreator", + "type": "Microsoft.Maps/accounts/creators", + "location": "eastus2", + "tags": { + "test": "true" + }, + "properties": { + "provisioningState": "Created", + "storageUnits": 5 + } + } + }, + "201": { + "body": { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount/creators/myCreator", + "name": "myCreator", + "type": "Microsoft.Maps/accounts/creators", + "location": "eastus2", + "tags": { + "test": "true" + }, + "properties": { + "provisioningState": "Created", + "storageUnits": 5 + } + } + } + } +} diff --git a/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/DeleteAccount.json b/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/DeleteAccount.json new file mode 100644 index 000000000000..560ac3c267c6 --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/DeleteAccount.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2021-07-01-preview", + "subscriptionId": "21a9967a-e8a9-4656-a70b-96ff1c4d05a0", + "resourceGroupName": "myResourceGroup", + "accountName": "myMapsAccount" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/DeleteMapsCreator.json b/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/DeleteMapsCreator.json new file mode 100644 index 000000000000..7a281a77dc61 --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/DeleteMapsCreator.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-07-01-preview", + "subscriptionId": "21a9967a-e8a9-4656-a70b-96ff1c4d05a0", + "resourceGroupName": "myResourceGroup", + "accountName": "myMapsAccount", + "creatorName": "myCreator" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/GetAccount.json b/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/GetAccount.json new file mode 100644 index 000000000000..91a835e74180 --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/GetAccount.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2021-07-01-preview", + "subscriptionId": "21a9967a-e8a9-4656-a70b-96ff1c4d05a0", + "resourceGroupName": "myResourceGroup", + "accountName": "myMapsAccount" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount", + "name": "myMapsAccount", + "type": "Microsoft.Maps/accounts", + "location": "global", + "kind": "Gen1", + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2021-07-02T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2021-07-02T01:01:01.1075056Z" + }, + "tags": { + "test": "true" + }, + "sku": { + "name": "S0", + "tier": "Standard" + }, + "properties": { + "uniqueId": "string", + "disableLocalAuth": false, + "provisioningState": "Succeeded", + "linkedResources": [] + } + } + } + } +} diff --git a/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/GetMapsCreator.json b/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/GetMapsCreator.json new file mode 100644 index 000000000000..4a2c72b9abb8 --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/GetMapsCreator.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2021-07-01-preview", + "subscriptionId": "21a9967a-e8a9-4656-a70b-96ff1c4d05a0", + "resourceGroupName": "myResourceGroup", + "accountName": "myMapsAccount", + "creatorName": "myCreator" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount/creators/myCreator", + "name": "myCreator", + "type": "Microsoft.Maps/accounts/creators", + "location": "unitedstates", + "tags": { + "test": "true" + }, + "properties": { + "provisioningState": "Succeeded", + "storageUnits": 5 + } + } + } + } +} diff --git a/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/GetOperations.json b/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/GetOperations.json new file mode 100644 index 000000000000..f5268c90ff83 --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/GetOperations.json @@ -0,0 +1,104 @@ +{ + "parameters": { + "api-version": "2021-07-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Maps/register/action", + "isDataAction": false, + "display": { + "provider": "Microsoft Maps", + "resource": "Maps Account", + "operation": "Register the provider", + "description": "Register the provider" + } + }, + { + "name": "Microsoft.Maps/accounts/write", + "isDataAction": false, + "display": { + "provider": "Microsoft Maps", + "resource": "Maps Account", + "operation": "Create or update a Maps Account.", + "description": "Create or update a Maps Account." + } + }, + { + "name": "Microsoft.Maps/accounts/read", + "isDataAction": false, + "display": { + "provider": "Microsoft Maps", + "resource": "Maps Account", + "operation": "Get a Maps Account.", + "description": "Get a Maps Account." + } + }, + { + "name": "Microsoft.Maps/accounts/delete", + "isDataAction": false, + "display": { + "provider": "Microsoft Maps", + "resource": "Maps Account", + "operation": "Delete a Maps Account.", + "description": "Delete a Maps Account." + } + }, + { + "name": "Microsoft.Maps/accounts/listKeys/action", + "isDataAction": false, + "display": { + "provider": "Microsoft Maps", + "resource": "Maps Account", + "operation": "List keys", + "description": "List Maps Account keys" + } + }, + { + "name": "Microsoft.Maps/accounts/regenerateKey/action", + "isDataAction": false, + "display": { + "provider": "Microsoft Maps", + "resource": "Maps Account", + "operation": "Generate new primary or secondary key", + "description": "Generate new Maps Account primary or secondary key" + } + }, + { + "name": "Microsoft.Maps/accounts/creators/write", + "isDataAction": false, + "display": { + "provider": "Microsoft Maps", + "resource": "Creator", + "operation": "Create or update a Maps Creator.", + "description": "Create or update a Maps Creator." + } + }, + { + "name": "Microsoft.Maps/accounts/creators/read", + "isDataAction": false, + "display": { + "provider": "Microsoft Maps", + "resource": "Creator", + "operation": "Get a Maps Creator.", + "description": "Get a Maps Creator." + } + }, + { + "name": "Microsoft.Maps/accounts/creators/delete", + "isDataAction": false, + "display": { + "provider": "Microsoft Maps", + "resource": "Creator", + "operation": "Delete a Maps Creator.", + "description": "Delete a Maps Creator." + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/ListAccountsByResourceGroup.json b/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/ListAccountsByResourceGroup.json new file mode 100644 index 000000000000..c85b2d489f2b --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/ListAccountsByResourceGroup.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2020-02-01-preview", + "subscriptionId": "21a9967a-e8a9-4656-a70b-96ff1c4d05a0", + "resourceGroupName": "myResourceGroup" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount2", + "name": "myMapsAccount2", + "type": "Microsoft.Maps/accounts", + "location": "global", + "kind": "Gen1", + "tags": { + "test": "true" + }, + "sku": { + "name": "S0", + "tier": "Standard" + }, + "properties": { + "uniqueId": "b2e763e6-d6f3-4858-9e2b-7cf8df85c593", + "provisioningState": "Succeeded", + "disableLocalAuth": false + } + }, + { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount", + "name": "myMapsAccount", + "type": "Microsoft.Maps/accounts", + "location": "global", + "kind": "Gen2", + "tags": { + "test": "true" + }, + "sku": { + "name": "G2", + "tier": "Standard" + }, + "properties": { + "uniqueId": "b2e763e6-d6f3-4858-9e2b-7cf8df85c592", + "provisioningState": "Succeeded", + "disableLocalAuth": true + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/ListAccountsBySubscription.json b/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/ListAccountsBySubscription.json new file mode 100644 index 000000000000..2a76d96a3c2d --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/ListAccountsBySubscription.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2021-07-01-preview", + "subscriptionId": "21a9967a-e8a9-4656-a70b-96ff1c4d05a0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount2", + "name": "myMapsAccount2", + "type": "Microsoft.Maps/accounts", + "location": "global", + "kind": "Gen1", + "tags": { + "test": "true" + }, + "sku": { + "name": "S0", + "tier": "Standard" + }, + "properties": { + "uniqueId": "b2e763e6-d6f3-4858-9e2b-7cf8df85c593", + "provisioningState": "Succeeded", + "disableLocalAuth": false + } + }, + { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount", + "name": "myMapsAccount", + "type": "Microsoft.Maps/accounts", + "location": "global", + "kind": "Gen2", + "tags": { + "test": "true" + }, + "sku": { + "name": "G2", + "tier": "Standard" + }, + "properties": { + "uniqueId": "b2e763e6-d6f3-4858-9e2b-7cf8df85c592", + "provisioningState": "Succeeded", + "disableLocalAuth": true + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/ListKeys.json b/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/ListKeys.json new file mode 100644 index 000000000000..107fa111d954 --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/ListKeys.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2021-07-01-preview", + "subscriptionId": "21a9967a-e8a9-4656-a70b-96ff1c4d05a0", + "resourceGroupName": "myResourceGroup", + "accountName": "myMapsAccount" + }, + "responses": { + "200": { + "body": { + "primaryKey": "", + "primaryKeyLastUpdated": "2021-07-02T01:01:01.1075056Z", + "secondaryKey": "", + "secondaryKeyLastUpdated": "2021-07-02T01:01:01.1075056Z" + } + } + } +} diff --git a/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/ListMapsCreatorsByAccount.json b/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/ListMapsCreatorsByAccount.json new file mode 100644 index 000000000000..cb30035e713c --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/ListMapsCreatorsByAccount.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2021-07-01-preview", + "subscriptionId": "21a9967a-e8a9-4656-a70b-96ff1c4d05a0", + "resourceGroupName": "myResourceGroup", + "accountName": "myMapsAccount" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount/creators/myCreator", + "name": "myCreator", + "type": "Microsoft.Maps/accounts/creators", + "location": "unitedstates", + "tags": { + "test": "true" + }, + "properties": { + "provisioningState": "Succeeded", + "storageUnits": 5 + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/RegenerateKey.json b/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/RegenerateKey.json new file mode 100644 index 000000000000..f7c98d77b98e --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/RegenerateKey.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "api-version": "2021-07-01-preview", + "subscriptionId": "21a9967a-e8a9-4656-a70b-96ff1c4d05a0", + "resourceGroupName": "myResourceGroup", + "accountName": "myMapsAccount", + "keySpecification": { + "keyType": "primary" + } + }, + "responses": { + "200": { + "body": { + "primaryKey": "", + "primaryKeyLastUpdated": "2021-07-02T01:01:01.1075056Z", + "secondaryKey": "", + "secondaryKeyLastUpdated": "2021-07-02T01:01:01.1075056Z" + } + } + } +} diff --git a/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/UpdateAccount.json b/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/UpdateAccount.json new file mode 100644 index 000000000000..c2cb09577ae5 --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/UpdateAccount.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2021-07-01-preview", + "subscriptionId": "21a9967a-e8a9-4656-a70b-96ff1c4d05a0", + "resourceGroupName": "myResourceGroup", + "accountName": "myMapsAccount", + "MapsAccountUpdateParameters": { + "tags": { + "specialTag": "true" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount", + "name": "myMapsAccount", + "type": "Microsoft.Maps/accounts", + "location": "global", + "kind": "Gen1", + "tags": { + "specialTag": "true" + }, + "sku": { + "name": "S0", + "tier": "Standard" + }, + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2021-07-02T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2021-07-02T01:01:01.1075056Z" + }, + "properties": { + "uniqueId": "b2e763e6-d6f3-4858-9e2b-7cf8df85c593", + "provisioningState": "Succeeded", + "disableLocalAuth": false + } + } + } + } +} diff --git a/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/UpdateAccountGen1.json b/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/UpdateAccountGen1.json new file mode 100644 index 000000000000..e870759c8203 --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/UpdateAccountGen1.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2021-07-01-preview", + "subscriptionId": "21a9967a-e8a9-4656-a70b-96ff1c4d05a0", + "resourceGroupName": "myResourceGroup", + "accountName": "myMapsAccount", + "MapsAccountUpdateParameters": { + "kind": "Gen1", + "sku": { + "name": "S1" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount", + "name": "myMapsAccount", + "type": "Microsoft.Maps/accounts", + "location": "global", + "kind": "Gen1", + "sku": { + "name": "S1", + "tier": "Standard" + }, + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2021-07-02T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2021-07-02T01:01:01.1075056Z" + }, + "properties": { + "uniqueId": "b2e763e6-d6f3-4858-9e2b-7cf8df85c593", + "provisioningState": "Succeeded", + "disableLocalAuth": false, + "linkedResources": [] + } + } + } + } +} diff --git a/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/UpdateAccountGen2.json b/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/UpdateAccountGen2.json new file mode 100644 index 000000000000..848b19e3a04c --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/UpdateAccountGen2.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2021-07-01-preview", + "subscriptionId": "21a9967a-e8a9-4656-a70b-96ff1c4d05a0", + "resourceGroupName": "myResourceGroup", + "accountName": "myMapsAccount", + "MapsAccountUpdateParameters": { + "kind": "Gen2", + "sku": { + "name": "G2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount", + "name": "myMapsAccount", + "type": "Microsoft.Maps/accounts", + "location": "global", + "kind": "Gen2", + "sku": { + "name": "G2", + "tier": "Standard" + }, + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2021-07-02T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2021-07-02T01:01:01.1075056Z" + }, + "properties": { + "uniqueId": "b2e763e6-d6f3-4858-9e2b-7cf8df85c593", + "provisioningState": "Succeeded", + "disableLocalAuth": false, + "linkedResources": [] + } + } + } + } +} diff --git a/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/UpdateAccountManagedIdentity.json b/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/UpdateAccountManagedIdentity.json new file mode 100644 index 000000000000..3557013c1dff --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/UpdateAccountManagedIdentity.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "api-version": "2021-07-01-preview", + "subscriptionId": "21a9967a-e8a9-4656-a70b-96ff1c4d05a0", + "resourceGroupName": "myResourceGroup", + "accountName": "myMapsAccount", + "MapsAccountUpdateParameters": { + "kind": "Gen2", + "sku": { + "name": "G2" + }, + "identity": { + "type": "SystemAssigned, UserAssigned", + "userAssignedIdentities": { + "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identityName": {} + } + }, + "properties": { + "linkedResources": [ + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/accounts/{storageName}", + "uniqueName": "myBatchStorageAccount" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount", + "name": "myMapsAccount", + "type": "Microsoft.Maps/accounts", + "location": "eastus", + "kind": "Gen2", + "sku": { + "name": "G2", + "tier": "Standard" + }, + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2021-07-02T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2021-07-02T01:01:01.1075056Z" + }, + "identity": { + "type": "SystemAssigned, UserAssigned", + "principalId": "77f72dac-e0aa-484e-9acd-e5e7075310ef", + "tenantId": "06006684-60c1-4954-a20c-ffd8fbea7276", + "userAssignedIdentities": { + "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identityName": { + "clientId": "b602d315-01b5-4265-af23-859edc4f2431", + "principalId": "ac287332-364a-41d9-a567-9ad86b9fc299" + } + } + }, + "properties": { + "uniqueId": "b2e763e6-d6f3-4858-9e2b-7cf8df85c593", + "provisioningState": "Succeeded", + "disableLocalAuth": false, + "linkedResources": [ + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/accounts/{storageName}", + "uniqueName": "myBatchStorageAccount" + } + ] + } + } + } + } +} diff --git a/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/UpdateMapsCreator.json b/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/UpdateMapsCreator.json new file mode 100644 index 000000000000..53547d59cc81 --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/examples/UpdateMapsCreator.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2021-07-01-preview", + "subscriptionId": "21a9967a-e8a9-4656-a70b-96ff1c4d05a0", + "resourceGroupName": "myResourceGroup", + "accountName": "myMapsAccount", + "creatorName": "myCreator", + "CreatorUpdateParameters": { + "tags": { + "specialTag": "true" + }, + "properties": { + "storageUnits": 10 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount/creators/myCreator", + "name": "myCreator", + "type": "Microsoft.Maps/accounts/creators", + "location": "unitedstates", + "tags": { + "specialTag": "true" + }, + "properties": { + "provisioningState": "Succeeded", + "storageUnits": 10 + } + } + } + } +} diff --git a/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/maps-management.json b/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/maps-management.json new file mode 100644 index 000000000000..3c00b6a954ce --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/preview/2021-07-01-preview/maps-management.json @@ -0,0 +1,1231 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Maps Resource Provider", + "description": "Resource Provider", + "version": "2021-07-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.Maps/accounts/{accountName}": { + "put": { + "tags": [ + "Accounts" + ], + "description": "Create or update a Maps Account. A Maps Account holds the keys which allow access to the Maps REST APIs.", + "operationId": "Accounts_CreateOrUpdate", + "x-ms-examples": { + "Create Gen1 Account": { + "$ref": "./examples/CreateAccount.json" + }, + "Create Gen2 Account": { + "$ref": "./examples/CreateAccountGen2.json" + }, + "Create Account with Managed Identities": { + "$ref": "./examples/CreateAccountManagedIdentity.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "name": "MapsAccount", + "in": "body", + "description": "The new or updated parameters for the Maps Account.", + "required": true, + "schema": { + "$ref": "#/definitions/MapsAccount" + } + } + ], + "responses": { + "200": { + "description": "The Account was successfully updated.", + "schema": { + "$ref": "#/definitions/MapsAccount" + } + }, + "201": { + "description": "The Account was successfully created.", + "schema": { + "$ref": "#/definitions/MapsAccount" + } + }, + "default": { + "description": "An unexpected error occurred.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Accounts" + ], + "description": "Updates a Maps Account. Only a subset of the parameters may be updated after creation, such as Sku, Tags, Properties.", + "operationId": "Accounts_Update", + "x-ms-examples": { + "Update Account Tags": { + "$ref": "./examples/UpdateAccount.json" + }, + "Update to Gen2 Account": { + "$ref": "./examples/UpdateAccountGen2.json" + }, + "Update to Gen1 Account": { + "$ref": "./examples/UpdateAccountGen1.json" + }, + "Update Account Managed Identities": { + "$ref": "./examples/UpdateAccountManagedIdentity.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "name": "MapsAccountUpdateParameters", + "in": "body", + "description": "The updated parameters for the Maps Account.", + "required": true, + "schema": { + "$ref": "#/definitions/MapsAccountUpdateParameters" + } + } + ], + "responses": { + "200": { + "description": "The Account was successfully updated.", + "schema": { + "$ref": "#/definitions/MapsAccount" + } + }, + "default": { + "description": "An unexpected error occurred.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Accounts" + ], + "description": "Delete a Maps Account.", + "operationId": "Accounts_Delete", + "x-ms-examples": { + "DeleteAccount": { + "$ref": "./examples/DeleteAccount.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + } + ], + "responses": { + "200": { + "description": "The Account was deleted successfully." + }, + "204": { + "description": "The specified Account was not found. Nothing was deleted." + }, + "default": { + "description": "An unexpected error occurred.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Accounts" + ], + "description": "Get a Maps Account.", + "operationId": "Accounts_Get", + "x-ms-examples": { + "GetAccount": { + "$ref": "./examples/GetAccount.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful.", + "schema": { + "$ref": "#/definitions/MapsAccount" + } + }, + "default": { + "description": "An unexpected error occurred.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Maps/accounts": { + "get": { + "tags": [ + "Accounts" + ], + "description": "Get all Maps Accounts in a Resource Group", + "operationId": "Accounts_ListByResourceGroup", + "x-ms-examples": { + "List Accounts By Resource Group": { + "$ref": "./examples/ListAccountsByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful.", + "schema": { + "$ref": "#/definitions/MapsAccounts" + } + }, + "default": { + "description": "An unexpected error occurred.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Maps/accounts": { + "get": { + "tags": [ + "Accounts" + ], + "description": "Get all Maps Accounts in a Subscription", + "operationId": "Accounts_ListBySubscription", + "x-ms-examples": { + "List Accounts By Subscription": { + "$ref": "./examples/ListAccountsBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful.", + "schema": { + "$ref": "#/definitions/MapsAccounts" + } + }, + "default": { + "description": "An unexpected error occurred.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Maps/accounts/{accountName}/listKeys": { + "post": { + "tags": [ + "Accounts" + ], + "description": "Get the keys to use with the Maps APIs. A key is used to authenticate and authorize access to the Maps REST APIs. Only one key is needed at a time; two are given to provide seamless key regeneration.", + "operationId": "Accounts_ListKeys", + "x-ms-examples": { + "List Keys": { + "$ref": "./examples/ListKeys.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful.", + "schema": { + "$ref": "#/definitions/MapsAccountKeys" + } + }, + "default": { + "description": "An unexpected error occurred.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Maps/accounts/{accountName}/regenerateKey": { + "post": { + "tags": [ + "Accounts" + ], + "description": "Regenerate either the primary or secondary key for use with the Maps APIs. The old key will stop working immediately.", + "operationId": "Accounts_RegenerateKeys", + "x-ms-examples": { + "Regenerate Key": { + "$ref": "./examples/RegenerateKey.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "name": "keySpecification", + "in": "body", + "required": true, + "description": "Which key to regenerate: primary or secondary.", + "schema": { + "$ref": "#/definitions/MapsKeySpecification" + } + } + ], + "responses": { + "200": { + "description": "The request was successful.", + "schema": { + "$ref": "#/definitions/MapsAccountKeys" + } + }, + "default": { + "description": "An unexpected error occurred.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.Maps/operations": { + "get": { + "tags": [ + "Operations" + ], + "description": "List operations available for the Maps Resource Provider", + "operationId": "Maps_ListOperations", + "x-ms-examples": { + "Get Operations": { + "$ref": "./examples/GetOperations.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful.", + "schema": { + "$ref": "#/definitions/MapsOperations" + } + }, + "default": { + "description": "An unexpected error occurred.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Maps/accounts/{accountName}/creators": { + "get": { + "tags": [ + "Creators" + ], + "description": "Get all Creator instances for an Azure Maps Account", + "operationId": "Creators_ListByAccount", + "x-ms-examples": { + "List Creator Resources By Account": { + "$ref": "./examples/ListMapsCreatorsByAccount.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful.", + "schema": { + "$ref": "#/definitions/CreatorList" + } + }, + "default": { + "description": "An unexpected error occurred.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Maps/accounts/{accountName}/creators/{creatorName}": { + "put": { + "tags": [ + "Creators" + ], + "description": "Create or update a Maps Creator resource. Creator resource will manage Azure resources required to populate a custom set of mapping data. It requires an account to exist before it can be created.", + "operationId": "Creators_CreateOrUpdate", + "x-ms-examples": { + "Create Creator Resource": { + "$ref": "./examples/CreateMapsCreator.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "$ref": "#/parameters/CreatorNameParameter" + }, + { + "name": "CreatorResource", + "in": "body", + "description": "The new or updated parameters for the Creator resource.", + "required": true, + "schema": { + "$ref": "#/definitions/Creator" + } + } + ], + "responses": { + "200": { + "description": "The Creator is updated with the provided properties.", + "schema": { + "$ref": "#/definitions/Creator" + } + }, + "201": { + "description": "The Creator will be created asynchronously. The Creator will be ready to use once the provisioningState property changed to 'Succeeded' through creators Get API.", + "schema": { + "$ref": "#/definitions/Creator" + } + }, + "default": { + "description": "An unexpected error occurred.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Creators" + ], + "description": "Updates the Maps Creator resource. Only a subset of the parameters may be updated after creation, such as Tags.", + "operationId": "Creators_Update", + "x-ms-examples": { + "Update Creator Resource": { + "$ref": "./examples/UpdateMapsCreator.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "$ref": "#/parameters/CreatorNameParameter" + }, + { + "name": "CreatorUpdateParameters", + "in": "body", + "description": "The update parameters for Maps Creator.", + "required": true, + "schema": { + "$ref": "#/definitions/CreatorUpdateParameters" + } + } + ], + "responses": { + "200": { + "description": "The Maps Creator was successfully updated.", + "schema": { + "$ref": "#/definitions/Creator" + } + }, + "default": { + "description": "An unexpected error occurred.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Creators" + ], + "description": "Delete a Maps Creator resource.", + "operationId": "Creators_Delete", + "x-ms-examples": { + "Delete Creator Resource": { + "$ref": "./examples/DeleteMapsCreator.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "$ref": "#/parameters/CreatorNameParameter" + } + ], + "responses": { + "200": { + "description": "The Maps Creator will be deleted." + }, + "204": { + "description": "The specified Maps Creator resource was not found. Nothing was deleted." + }, + "default": { + "description": "An unexpected error occurred.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Creators" + ], + "description": "Get a Maps Creator resource.", + "operationId": "Creators_Get", + "x-ms-examples": { + "Get Creator Resource": { + "$ref": "./examples/GetMapsCreator.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "$ref": "#/parameters/CreatorNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful.", + "schema": { + "$ref": "#/definitions/Creator" + } + }, + "default": { + "description": "An unexpected error occurred.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "parameters": { + "AccountNameParameter": { + "name": "accountName", + "in": "path", + "description": "The name of the Maps Account.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "PrivateAtlasNameParameter": { + "name": "privateAtlasName", + "in": "path", + "description": "The name of the Private Atlas instance.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "CreatorNameParameter": { + "name": "creatorName", + "in": "path", + "description": "The name of the Maps Creator instance.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + }, + "definitions": { + "Creator": { + "description": "An Azure resource which represents Maps Creator product and provides ability to manage private location data.", + "type": "object", + "properties": { + "properties": { + "description": "The Creator resource properties.", + "$ref": "#/definitions/CreatorProperties" + } + }, + "required": [ + "properties" + ], + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/TrackedResource" + } + ], + "x-ms-azure-resource": true + }, + "MapsAccount": { + "description": "An Azure resource which represents access to a suite of Maps REST APIs.", + "type": "object", + "properties": { + "sku": { + "description": "The SKU of this account.", + "$ref": "#/definitions/Sku" + }, + "kind": { + "description": "Get or Set Kind property.", + "$ref": "#/definitions/Kind" + }, + "systemData": { + "readOnly": true, + "description": "The system meta data relating to this resource.", + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData" + }, + "identity": { + "type": "object", + "$ref": "#/definitions/ManagedServiceIdentity", + "description": "Sets the identity property for maps account." + }, + "properties": { + "description": "The map account properties.", + "$ref": "#/definitions/MapsAccountProperties" + } + }, + "required": [ + "sku" + ], + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/TrackedResource" + } + ], + "x-ms-azure-resource": true + }, + "MapsAccountUpdateParameters": { + "description": "Parameters used to update an existing Maps Account.", + "type": "object", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Gets or sets a list of key value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters." + }, + "kind": { + "description": "Get or Set Kind property.", + "$ref": "#/definitions/Kind" + }, + "sku": { + "description": "The SKU of this account.", + "$ref": "#/definitions/Sku" + }, + "identity": { + "type": "object", + "$ref": "#/definitions/ManagedServiceIdentity", + "description": "Sets the identity property for maps account." + }, + "properties": { + "description": "The map account properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/MapsAccountProperties" + } + } + }, + "CreatorUpdateParameters": { + "description": "Parameters used to update an existing Creator resource.", + "type": "object", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Gets or sets a list of key value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters." + }, + "properties": { + "description": "Creator resource properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/CreatorProperties" + } + } + }, + "MapsAccounts": { + "description": "A list of Maps Accounts.", + "type": "object", + "properties": { + "value": { + "description": "a Maps Account.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/MapsAccount" + } + }, + "nextLink": { + "description": "URL client should use to fetch the next page (per server side paging).\r\nIt's null for now, added for future use.", + "type": "string" + } + } + }, + "CreatorList": { + "description": "A list of Creator resources.", + "type": "object", + "properties": { + "value": { + "description": "a Creator account.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Creator" + } + }, + "nextLink": { + "description": "URL client should use to fetch the next page (per server side paging).\r\nIt's null for now, added for future use.", + "type": "string" + } + } + }, + "Kind": { + "description": "The Kind of the Maps Account.", + "type": "string", + "default": "Gen1", + "enum": [ + "Gen1", + "Gen2" + ], + "x-ms-enum": { + "name": "kind", + "modelAsString": true + } + }, + "Sku": { + "description": "The SKU of the Maps Account.", + "type": "object", + "properties": { + "name": { + "description": "The name of the SKU, in standard format (such as S0).", + "type": "string", + "enum": [ + "S0", + "S1", + "G2" + ], + "x-ms-enum": { + "name": "name", + "modelAsString": true + } + }, + "tier": { + "readOnly": true, + "type": "string", + "description": "Gets the sku tier. This is based on the SKU name." + } + }, + "required": [ + "name" + ] + }, + "MapsKeySpecification": { + "description": "Whether the operation refers to the primary or secondary key.", + "type": "object", + "required": [ + "keyType" + ], + "properties": { + "keyType": { + "type": "string", + "enum": [ + "primary", + "secondary" + ], + "x-ms-enum": { + "name": "KeyType", + "modelAsString": true + }, + "description": "Whether the operation refers to the primary or secondary key." + } + } + }, + "MapsAccountKeys": { + "description": "The set of keys which can be used to access the Maps REST APIs. Two keys are provided for key rotation without interruption.", + "type": "object", + "properties": { + "primaryKeyLastUpdated": { + "type": "string", + "readOnly": true, + "description": "The last updated date and time of the primary key." + }, + "primaryKey": { + "type": "string", + "readOnly": true, + "description": "The primary key for accessing the Maps REST APIs." + }, + "secondaryKey": { + "type": "string", + "readOnly": true, + "description": "The secondary key for accessing the Maps REST APIs." + }, + "secondaryKeyLastUpdated": { + "type": "string", + "readOnly": true, + "description": "The last updated date and time of the secondary key." + } + } + }, + "ManagedServiceIdentity": { + "description": "Identity for the resource.", + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal ID of resource identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant ID of resource." + }, + "type": { + "type": "string", + "description": "The identity type.", + "enum": [ + "SystemAssigned", + "UserAssigned", + "SystemAssigned, UserAssigned", + "None" + ], + "x-ms-enum": { + "name": "ResourceIdentityType", + "modelAsString": false + } + }, + "userAssignedIdentities": { + "type": "object", + "description": "The list of user identities associated with the resource. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.", + "additionalProperties": { + "type": "object", + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of user assigned identity." + }, + "clientId": { + "readOnly": true, + "type": "string", + "description": "The client id of user assigned identity." + } + } + } + } + } + }, + "MapsOperations": { + "description": "The set of operations available for Maps.", + "type": "object", + "properties": { + "value": { + "description": "An operation available for Maps.", + "type": "array", + "readOnly": true, + "uniqueItems": false, + "items": { + "$ref": "#/definitions/OperationDetail" + } + }, + "nextLink": { + "description": "URL client should use to fetch the next page (per server side paging).\r\nIt's null for now, added for future use.", + "type": "string" + } + } + }, + "OperationDetail": { + "description": "Operation detail payload", + "type": "object", + "properties": { + "name": { + "description": "Name of the operation", + "type": "string" + }, + "isDataAction": { + "description": "Indicates whether the operation is a data action", + "type": "boolean" + }, + "display": { + "$ref": "#/definitions/OperationDisplay", + "description": "Display of the operation" + }, + "origin": { + "description": "Origin of the operation", + "type": "string" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/OperationProperties", + "description": "Properties of the operation" + } + } + }, + "OperationDisplay": { + "description": "Operation display payload", + "type": "object", + "properties": { + "provider": { + "description": "Resource provider of the operation", + "type": "string" + }, + "resource": { + "description": "Resource of the operation", + "type": "string" + }, + "operation": { + "description": "Localized friendly name for the operation", + "type": "string" + }, + "description": { + "description": "Localized friendly description for the operation", + "type": "string" + } + } + }, + "OperationProperties": { + "description": "Properties of operation, include metric specifications.", + "properties": { + "serviceSpecification": { + "$ref": "#/definitions/ServiceSpecification", + "description": "One property of operation, include metric specifications." + } + } + }, + "ServiceSpecification": { + "description": "One property of operation, include metric specifications.", + "properties": { + "metricSpecifications": { + "description": "Metric specifications of operation.", + "type": "array", + "items": { + "$ref": "#/definitions/MetricSpecification" + } + } + } + }, + "MetricSpecification": { + "description": "Metric specification of operation.", + "properties": { + "name": { + "type": "string", + "description": "Name of metric specification." + }, + "displayName": { + "type": "string", + "description": "Display name of metric specification." + }, + "displayDescription": { + "type": "string", + "description": "Display description of metric specification." + }, + "unit": { + "type": "string", + "description": "Unit could be Count." + }, + "dimensions": { + "description": "Dimensions of map account.", + "type": "array", + "items": { + "$ref": "#/definitions/Dimension" + } + }, + "aggregationType": { + "type": "string", + "description": "Aggregation type could be Average." + }, + "fillGapWithZero": { + "type": "boolean", + "description": "The property to decide fill gap with zero or not." + }, + "category": { + "type": "string", + "description": "The category this metric specification belong to, could be Capacity." + }, + "resourceIdDimensionNameOverride": { + "type": "string", + "description": "Account Resource Id." + } + } + }, + "Dimension": { + "description": "Dimension of map account, for example API Category, Api Name, Result Type, and Response Code.", + "properties": { + "name": { + "type": "string", + "description": "Display name of dimension." + }, + "displayName": { + "type": "string", + "description": "Display name of dimension." + }, + "internalName": { + "type": "string", + "description": "Internal name of the dimension." + }, + "internalMetricName": { + "type": "string", + "description": "Internal metric name of the dimension." + }, + "sourceMdmNamespace": { + "type": "string", + "description": "Source Mdm Namespace of the dimension." + }, + "toBeExportedToShoebox": { + "type": "boolean", + "description": "Flag to indicate exporting to Azure Monitor." + } + } + }, + "MapsAccountProperties": { + "description": "Additional Map account properties", + "type": "object", + "properties": { + "uniqueId": { + "description": "A unique identifier for the maps account", + "type": "string", + "readOnly": true + }, + "disableLocalAuth": { + "description": "Allows toggle functionality on Azure Policy to disable Azure Maps local authentication support. This will disable Shared Keys authentication from any usage.", + "type": "boolean", + "default": false + }, + "provisioningState": { + "type": "string", + "description": "The provisioning state of the Map account resource.", + "readOnly": true + }, + "linkedResources": { + "type": "array", + "$ref": "#/definitions/LinkedResources", + "description": "Sets the resources to be used for Managed Identities based operations for the Map account resource." + } + } + }, + "LinkedResources": { + "type": "array", + "maxItems": 10, + "items": { + "$ref": "#/definitions/LinkedResource" + }, + "description": "The array of associated resources to the Map account. Linked resource in the array cannot individually update, you must update all linked resources in the array together. These resources may be used on operations on the Azure Maps REST API. Access is controlled by the Map Account Managed Identity(s) permissions to those resource(s)." + }, + "LinkedResource": { + "type": "object", + "properties": { + "uniqueName": { + "type": "string", + "description": "A provided name which uniquely identifies the linked resource." + }, + "id": { + "type": "string", + "description": "ARM resource id in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/accounts/{storageName}'." + } + }, + "required": [ + "uniqueName", + "id" + ], + "description": "Linked resource is reference to a resource deployed in an Azure subscription, add the linked resource `uniqueName` value as an optional parameter for operations on Azure Maps Geospatial REST APIs." + }, + "CreatorProperties": { + "description": "Creator resource properties", + "type": "object", + "properties": { + "provisioningState": { + "description": "The state of the resource provisioning, terminal states: Succeeded, Failed, Canceled", + "type": "string", + "readOnly": true + }, + "storageUnits": { + "description": "The storage units to be allocated. Integer values from 1 to 100, inclusive.", + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 100 + } + }, + "required": [ + "storageUnits" + ] + } + } +} diff --git a/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/examples/CreateAccount.json b/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/examples/CreateAccount.json new file mode 100644 index 000000000000..abd6a5aa3d87 --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/examples/CreateAccount.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "21a9967a-e8a9-4656-a70b-96ff1c4d05a0", + "resourceGroupName": "myResourceGroup", + "accountName": "myMapsAccount", + "MapsAccount": { + "location": "global", + "sku": { + "name": "S0" + }, + "kind": "Gen1", + "tags": { + "test": "true" + }, + "properties": { + "disableLocalAuth": false + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount", + "name": "myMapsAccount", + "type": "Microsoft.Maps/accounts", + "kind": "Gen1", + "location": "global", + "tags": { + "test": "true" + }, + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2021-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2021-02-01T01:01:01.1075056Z" + }, + "sku": { + "name": "S0", + "tier": "Standard" + }, + "properties": { + "uniqueId": "b2e763e6-d6f3-4858-9e2b-7cf8df85c593", + "provisioningState": "Succeeded", + "disableLocalAuth": false + } + } + }, + "201": { + "body": { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount", + "name": "myMapsAccount", + "type": "Microsoft.Maps/accounts", + "kind": "Gen1", + "location": "global", + "tags": { + "test": "true" + }, + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2021-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2021-02-01T01:01:01.1075056Z" + }, + "sku": { + "name": "S0", + "tier": "Standard" + }, + "properties": { + "uniqueId": "b2e763e6-d6f3-4858-9e2b-7cf8df85c593", + "provisioningState": "Succeeded", + "disableLocalAuth": false + } + } + } + } +} diff --git a/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/examples/CreateAccountGen2.json b/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/examples/CreateAccountGen2.json new file mode 100644 index 000000000000..619ec69d60b2 --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/examples/CreateAccountGen2.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "21a9967a-e8a9-4656-a70b-96ff1c4d05a0", + "resourceGroupName": "myResourceGroup", + "accountName": "myMapsAccount", + "MapsAccount": { + "location": "global", + "sku": { + "name": "G2" + }, + "kind": "Gen2", + "tags": { + "test": "true" + }, + "properties": { + "disableLocalAuth": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount", + "name": "myMapsAccount", + "type": "Microsoft.Maps/accounts", + "kind": "Gen2", + "location": "global", + "tags": { + "test": "true" + }, + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2021-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2021-02-01T01:01:01.1075056Z" + }, + "sku": { + "name": "G2", + "tier": "Standard" + }, + "properties": { + "uniqueId": "b2e763e6-d6f3-4858-9e2b-7cf8df85c593", + "provisioningState": "Succeeded", + "disableLocalAuth": true + } + } + }, + "201": { + "body": { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount", + "name": "myMapsAccount", + "type": "Microsoft.Maps/accounts", + "kind": "Gen2", + "location": "global", + "tags": { + "test": "true" + }, + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2021-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2021-02-01T01:01:01.1075056Z" + }, + "sku": { + "name": "G2", + "tier": "Standard" + }, + "properties": { + "uniqueId": "b2e763e6-d6f3-4858-9e2b-7cf8df85c593", + "provisioningState": "Succeeded", + "disableLocalAuth": true + } + } + } + } +} diff --git a/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/examples/CreateMapsCreator.json b/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/examples/CreateMapsCreator.json new file mode 100644 index 000000000000..a6c986a1ca55 --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/examples/CreateMapsCreator.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "21a9967a-e8a9-4656-a70b-96ff1c4d05a0", + "resourceGroupName": "myResourceGroup", + "accountName": "myMapsAccount", + "creatorName": "myCreator", + "CreatorResource": { + "location": "eastus2", + "tags": { + "test": "true" + }, + "properties": { + "storageUnits": 5 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount/creators/myCreator", + "name": "myCreator", + "type": "Microsoft.Maps/accounts/creators", + "location": "eastus2", + "tags": { + "test": "true" + }, + "properties": { + "provisioningState": "Created", + "storageUnits": 5 + } + } + }, + "201": { + "body": { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount/creators/myCreator", + "name": "myCreator", + "type": "Microsoft.Maps/accounts/creators", + "location": "eastus2", + "tags": { + "test": "true" + }, + "properties": { + "provisioningState": "Created", + "storageUnits": 5 + } + } + } + } +} diff --git a/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/examples/DeleteAccount.json b/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/examples/DeleteAccount.json new file mode 100644 index 000000000000..1b4a102a5973 --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/examples/DeleteAccount.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "21a9967a-e8a9-4656-a70b-96ff1c4d05a0", + "resourceGroupName": "myResourceGroup", + "accountName": "myMapsAccount" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/examples/DeleteMapsCreator.json b/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/examples/DeleteMapsCreator.json new file mode 100644 index 000000000000..807ae880cd37 --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/examples/DeleteMapsCreator.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "21a9967a-e8a9-4656-a70b-96ff1c4d05a0", + "resourceGroupName": "myResourceGroup", + "accountName": "myMapsAccount", + "creatorName": "myCreator" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/examples/GetAccount.json b/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/examples/GetAccount.json new file mode 100644 index 000000000000..1ea4a575ab21 --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/examples/GetAccount.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "21a9967a-e8a9-4656-a70b-96ff1c4d05a0", + "resourceGroupName": "myResourceGroup", + "accountName": "myMapsAccount" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount", + "name": "myMapsAccount", + "type": "Microsoft.Maps/accounts", + "location": "global", + "kind": "Gen1", + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2021-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2021-02-01T01:01:01.1075056Z" + }, + "tags": { + "test": "true" + }, + "sku": { + "name": "S0", + "tier": "Standard" + }, + "properties": { + "uniqueId": "string", + "disableLocalAuth": false, + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/examples/GetMapsCreator.json b/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/examples/GetMapsCreator.json new file mode 100644 index 000000000000..6abd9e024db8 --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/examples/GetMapsCreator.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "21a9967a-e8a9-4656-a70b-96ff1c4d05a0", + "resourceGroupName": "myResourceGroup", + "accountName": "myMapsAccount", + "creatorName": "myCreator" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount/creators/myCreator", + "name": "myCreator", + "type": "Microsoft.Maps/accounts/creators", + "location": "unitedstates", + "tags": { + "test": "true" + }, + "properties": { + "provisioningState": "Succeeded", + "storageUnits": 5 + } + } + } + } +} diff --git a/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/examples/GetOperations.json b/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/examples/GetOperations.json new file mode 100644 index 000000000000..0846df7633bc --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/examples/GetOperations.json @@ -0,0 +1,104 @@ +{ + "parameters": { + "api-version": "2021-02-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Maps/register/action", + "isDataAction": false, + "display": { + "provider": "Microsoft Maps", + "resource": "Maps Account", + "operation": "Register the provider", + "description": "Register the provider" + } + }, + { + "name": "Microsoft.Maps/accounts/write", + "isDataAction": false, + "display": { + "provider": "Microsoft Maps", + "resource": "Maps Account", + "operation": "Create or update a Maps Account.", + "description": "Create or update a Maps Account." + } + }, + { + "name": "Microsoft.Maps/accounts/read", + "isDataAction": false, + "display": { + "provider": "Microsoft Maps", + "resource": "Maps Account", + "operation": "Get a Maps Account.", + "description": "Get a Maps Account." + } + }, + { + "name": "Microsoft.Maps/accounts/delete", + "isDataAction": false, + "display": { + "provider": "Microsoft Maps", + "resource": "Maps Account", + "operation": "Delete a Maps Account.", + "description": "Delete a Maps Account." + } + }, + { + "name": "Microsoft.Maps/accounts/listKeys/action", + "isDataAction": false, + "display": { + "provider": "Microsoft Maps", + "resource": "Maps Account", + "operation": "List keys", + "description": "List Maps Account keys" + } + }, + { + "name": "Microsoft.Maps/accounts/regenerateKey/action", + "isDataAction": false, + "display": { + "provider": "Microsoft Maps", + "resource": "Maps Account", + "operation": "Generate new primary or secondary key", + "description": "Generate new Maps Account primary or secondary key" + } + }, + { + "name": "Microsoft.Maps/accounts/creators/write", + "isDataAction": false, + "display": { + "provider": "Microsoft Maps", + "resource": "Creator", + "operation": "Create or update a Maps Creator.", + "description": "Create or update a Maps Creator." + } + }, + { + "name": "Microsoft.Maps/accounts/creators/read", + "isDataAction": false, + "display": { + "provider": "Microsoft Maps", + "resource": "Creator", + "operation": "Get a Maps Creator.", + "description": "Get a Maps Creator." + } + }, + { + "name": "Microsoft.Maps/accounts/creators/delete", + "isDataAction": false, + "display": { + "provider": "Microsoft Maps", + "resource": "Creator", + "operation": "Delete a Maps Creator.", + "description": "Delete a Maps Creator." + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/examples/GetOperationsSubscription.json b/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/examples/GetOperationsSubscription.json new file mode 100644 index 000000000000..a61f9c98529e --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/examples/GetOperationsSubscription.json @@ -0,0 +1,105 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "21a9967a-e8a9-4656-a70b-96ff1c4d05a0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Maps/register/action", + "isDataAction": false, + "display": { + "provider": "Microsoft Maps", + "resource": "Maps Account", + "operation": "Register the provider", + "description": "Register the provider" + } + }, + { + "name": "Microsoft.Maps/accounts/write", + "isDataAction": false, + "display": { + "provider": "Microsoft Maps", + "resource": "Maps Account", + "operation": "Create or update a Maps Account.", + "description": "Create or update a Maps Account." + } + }, + { + "name": "Microsoft.Maps/accounts/read", + "isDataAction": false, + "display": { + "provider": "Microsoft Maps", + "resource": "Maps Account", + "operation": "Get a Maps Account.", + "description": "Get a Maps Account." + } + }, + { + "name": "Microsoft.Maps/accounts/delete", + "isDataAction": false, + "display": { + "provider": "Microsoft Maps", + "resource": "Maps Account", + "operation": "Delete a Maps Account.", + "description": "Delete a Maps Account." + } + }, + { + "name": "Microsoft.Maps/accounts/listKeys/action", + "isDataAction": false, + "display": { + "provider": "Microsoft Maps", + "resource": "Maps Account", + "operation": "List keys", + "description": "List Maps Account keys" + } + }, + { + "name": "Microsoft.Maps/accounts/regenerateKey/action", + "isDataAction": false, + "display": { + "provider": "Microsoft Maps", + "resource": "Maps Account", + "operation": "Generate new primary or secondary key", + "description": "Generate new Maps Account primary or secondary key" + } + }, + { + "name": "Microsoft.Maps/accounts/creators/write", + "isDataAction": false, + "display": { + "provider": "Microsoft Maps", + "resource": "Creator", + "operation": "Create or update a Maps Creator.", + "description": "Create or update a Maps Creator." + } + }, + { + "name": "Microsoft.Maps/accounts/creators/read", + "isDataAction": false, + "display": { + "provider": "Microsoft Maps", + "resource": "Creator", + "operation": "Get a Maps Creator.", + "description": "Get a Maps Creator." + } + }, + { + "name": "Microsoft.Maps/accounts/creators/delete", + "isDataAction": false, + "display": { + "provider": "Microsoft Maps", + "resource": "Creator", + "operation": "Delete a Maps Creator.", + "description": "Delete a Maps Creator." + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/examples/ListAccountsByResourceGroup.json b/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/examples/ListAccountsByResourceGroup.json new file mode 100644 index 000000000000..c85b2d489f2b --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/examples/ListAccountsByResourceGroup.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2020-02-01-preview", + "subscriptionId": "21a9967a-e8a9-4656-a70b-96ff1c4d05a0", + "resourceGroupName": "myResourceGroup" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount2", + "name": "myMapsAccount2", + "type": "Microsoft.Maps/accounts", + "location": "global", + "kind": "Gen1", + "tags": { + "test": "true" + }, + "sku": { + "name": "S0", + "tier": "Standard" + }, + "properties": { + "uniqueId": "b2e763e6-d6f3-4858-9e2b-7cf8df85c593", + "provisioningState": "Succeeded", + "disableLocalAuth": false + } + }, + { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount", + "name": "myMapsAccount", + "type": "Microsoft.Maps/accounts", + "location": "global", + "kind": "Gen2", + "tags": { + "test": "true" + }, + "sku": { + "name": "G2", + "tier": "Standard" + }, + "properties": { + "uniqueId": "b2e763e6-d6f3-4858-9e2b-7cf8df85c592", + "provisioningState": "Succeeded", + "disableLocalAuth": true + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/examples/ListAccountsBySubscription.json b/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/examples/ListAccountsBySubscription.json new file mode 100644 index 000000000000..2c10ecc55dea --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/examples/ListAccountsBySubscription.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "21a9967a-e8a9-4656-a70b-96ff1c4d05a0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount2", + "name": "myMapsAccount2", + "type": "Microsoft.Maps/accounts", + "location": "global", + "kind": "Gen1", + "tags": { + "test": "true" + }, + "sku": { + "name": "S0", + "tier": "Standard" + }, + "properties": { + "uniqueId": "b2e763e6-d6f3-4858-9e2b-7cf8df85c593", + "provisioningState": "Succeeded", + "disableLocalAuth": false + } + }, + { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount", + "name": "myMapsAccount", + "type": "Microsoft.Maps/accounts", + "location": "global", + "kind": "Gen2", + "tags": { + "test": "true" + }, + "sku": { + "name": "G2", + "tier": "Standard" + }, + "properties": { + "uniqueId": "b2e763e6-d6f3-4858-9e2b-7cf8df85c592", + "provisioningState": "Succeeded", + "disableLocalAuth": true + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/examples/ListKeys.json b/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/examples/ListKeys.json new file mode 100644 index 000000000000..8b10222161d4 --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/examples/ListKeys.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "21a9967a-e8a9-4656-a70b-96ff1c4d05a0", + "resourceGroupName": "myResourceGroup", + "accountName": "myMapsAccount" + }, + "responses": { + "200": { + "body": { + "primaryKey": "", + "primaryKeyLastUpdated": "2021-02-01T01:01:01.1075056Z", + "secondaryKey": "", + "secondaryKeyLastUpdated": "2021-02-01T01:01:01.1075056Z" + } + } + } +} diff --git a/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/examples/ListMapsCreatorsByAccount.json b/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/examples/ListMapsCreatorsByAccount.json new file mode 100644 index 000000000000..c8bf66ceef6e --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/examples/ListMapsCreatorsByAccount.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "21a9967a-e8a9-4656-a70b-96ff1c4d05a0", + "resourceGroupName": "myResourceGroup", + "accountName": "myMapsAccount" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount/creators/myCreator", + "name": "myCreator", + "type": "Microsoft.Maps/accounts/creators", + "location": "unitedstates", + "tags": { + "test": "true" + }, + "properties": { + "provisioningState": "Succeeded", + "storageUnits": 5 + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/examples/RegenerateKey.json b/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/examples/RegenerateKey.json new file mode 100644 index 000000000000..4d595fdd7959 --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/examples/RegenerateKey.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "21a9967a-e8a9-4656-a70b-96ff1c4d05a0", + "resourceGroupName": "myResourceGroup", + "accountName": "myMapsAccount", + "keySpecification": { + "keyType": "primary" + } + }, + "responses": { + "200": { + "body": { + "primaryKey": "", + "primaryKeyLastUpdated": "2021-02-01T01:01:01.1075056Z", + "secondaryKey": "", + "secondaryKeyLastUpdated": "2021-02-01T01:01:01.1075056Z" + } + } + } +} diff --git a/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/examples/UpdateAccount.json b/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/examples/UpdateAccount.json new file mode 100644 index 000000000000..7891be59afd1 --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/examples/UpdateAccount.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "21a9967a-e8a9-4656-a70b-96ff1c4d05a0", + "resourceGroupName": "myResourceGroup", + "accountName": "myMapsAccount", + "MapsAccountUpdateParameters": { + "tags": { + "specialTag": "true" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount", + "name": "myMapsAccount", + "type": "Microsoft.Maps/accounts", + "location": "global", + "kind": "Gen1", + "tags": { + "specialTag": "true" + }, + "sku": { + "name": "S0", + "tier": "Standard" + }, + "properties": { + "uniqueId": "b2e763e6-d6f3-4858-9e2b-7cf8df85c593", + "provisioningState": "Succeeded", + "disableLocalAuth": false + } + } + } + } +} diff --git a/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/examples/UpdateAccountGen1.json b/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/examples/UpdateAccountGen1.json new file mode 100644 index 000000000000..7a7d0ee1799f --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/examples/UpdateAccountGen1.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "21a9967a-e8a9-4656-a70b-96ff1c4d05a0", + "resourceGroupName": "myResourceGroup", + "accountName": "myMapsAccount", + "MapsAccountUpdateParameters": { + "kind": "Gen1", + "sku": { + "name": "S1" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount", + "name": "myMapsAccount", + "type": "Microsoft.Maps/accounts", + "location": "global", + "kind": "Gen1", + "sku": { + "name": "S1", + "tier": "Standard" + }, + "properties": { + "uniqueId": "b2e763e6-d6f3-4858-9e2b-7cf8df85c593", + "provisioningState": "Succeeded", + "disableLocalAuth": false + } + } + } + } +} diff --git a/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/examples/UpdateAccountGen2.json b/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/examples/UpdateAccountGen2.json new file mode 100644 index 000000000000..42504f70b0ed --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/examples/UpdateAccountGen2.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "21a9967a-e8a9-4656-a70b-96ff1c4d05a0", + "resourceGroupName": "myResourceGroup", + "accountName": "myMapsAccount", + "MapsAccountUpdateParameters": { + "kind": "Gen2", + "sku": { + "name": "G2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount", + "name": "myMapsAccount", + "type": "Microsoft.Maps/accounts", + "location": "global", + "kind": "Gen2", + "sku": { + "name": "G2", + "tier": "Standard" + }, + "properties": { + "uniqueId": "b2e763e6-d6f3-4858-9e2b-7cf8df85c593", + "provisioningState": "Succeeded", + "disableLocalAuth": false + } + } + } + } +} diff --git a/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/examples/UpdateMapsCreator.json b/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/examples/UpdateMapsCreator.json new file mode 100644 index 000000000000..66408b87d9db --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/examples/UpdateMapsCreator.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "21a9967a-e8a9-4656-a70b-96ff1c4d05a0", + "resourceGroupName": "myResourceGroup", + "accountName": "myMapsAccount", + "creatorName": "myCreator", + "CreatorUpdateParameters": { + "tags": { + "specialTag": "true" + }, + "properties": { + "storageUnits": 10 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount/creators/myCreator", + "name": "myCreator", + "type": "Microsoft.Maps/accounts/creators", + "location": "unitedstates", + "tags": { + "specialTag": "true" + }, + "properties": { + "provisioningState": "Succeeded", + "storageUnits": 10 + } + } + } + } +} diff --git a/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/maps-management.json b/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/maps-management.json new file mode 100644 index 000000000000..272f26751a85 --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/stable/2021-02-01/maps-management.json @@ -0,0 +1,1175 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Maps Resource Provider", + "description": "Resource Provider", + "version": "2021-02-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.Maps/accounts/{accountName}": { + "put": { + "tags": [ + "Accounts" + ], + "description": "Create or update a Maps Account. A Maps Account holds the keys which allow access to the Maps REST APIs.", + "operationId": "Accounts_CreateOrUpdate", + "x-ms-examples": { + "Create Gen1 Account": { + "$ref": "./examples/CreateAccount.json" + }, + "Create Gen2 Account": { + "$ref": "./examples/CreateAccountGen2.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "name": "MapsAccount", + "in": "body", + "description": "The new or updated parameters for the Maps Account.", + "required": true, + "schema": { + "$ref": "#/definitions/MapsAccount" + } + } + ], + "responses": { + "200": { + "description": "The Account was successfully updated.", + "schema": { + "$ref": "#/definitions/MapsAccount" + } + }, + "201": { + "description": "The Account was successfully created.", + "schema": { + "$ref": "#/definitions/MapsAccount" + } + }, + "default": { + "description": "An unexpected error occurred.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Accounts" + ], + "description": "Updates a Maps Account. Only a subset of the parameters may be updated after creation, such as Sku, Tags, Properties.", + "operationId": "Accounts_Update", + "x-ms-examples": { + "Update Account Tags": { + "$ref": "./examples/UpdateAccount.json" + }, + "Update to Gen2 Account": { + "$ref": "./examples/UpdateAccountGen2.json" + }, + "Update to Gen1 Account": { + "$ref": "./examples/UpdateAccountGen1.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "name": "MapsAccountUpdateParameters", + "in": "body", + "description": "The updated parameters for the Maps Account.", + "required": true, + "schema": { + "$ref": "#/definitions/MapsAccountUpdateParameters" + } + } + ], + "responses": { + "200": { + "description": "The Account was successfully updated.", + "schema": { + "$ref": "#/definitions/MapsAccount" + } + }, + "default": { + "description": "An unexpected error occurred.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Accounts" + ], + "description": "Delete a Maps Account.", + "operationId": "Accounts_Delete", + "x-ms-examples": { + "DeleteAccount": { + "$ref": "./examples/DeleteAccount.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + } + ], + "responses": { + "200": { + "description": "The Account was deleted successfully." + }, + "204": { + "description": "The specified Account was not found. Nothing was deleted." + }, + "default": { + "description": "An unexpected error occurred.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Accounts" + ], + "description": "Get a Maps Account.", + "operationId": "Accounts_Get", + "x-ms-examples": { + "GetAccount": { + "$ref": "./examples/GetAccount.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful.", + "schema": { + "$ref": "#/definitions/MapsAccount" + } + }, + "default": { + "description": "An unexpected error occurred.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Maps/accounts": { + "get": { + "tags": [ + "Accounts" + ], + "description": "Get all Maps Accounts in a Resource Group", + "operationId": "Accounts_ListByResourceGroup", + "x-ms-examples": { + "List Accounts By Resource Group": { + "$ref": "./examples/ListAccountsByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful.", + "schema": { + "$ref": "#/definitions/MapsAccounts" + } + }, + "default": { + "description": "An unexpected error occurred.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Maps/accounts": { + "get": { + "tags": [ + "Accounts" + ], + "description": "Get all Maps Accounts in a Subscription", + "operationId": "Accounts_ListBySubscription", + "x-ms-examples": { + "List Accounts By Subscription": { + "$ref": "./examples/ListAccountsBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful.", + "schema": { + "$ref": "#/definitions/MapsAccounts" + } + }, + "default": { + "description": "An unexpected error occurred.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Maps/accounts/{accountName}/listKeys": { + "post": { + "tags": [ + "Accounts" + ], + "description": "Get the keys to use with the Maps APIs. A key is used to authenticate and authorize access to the Maps REST APIs. Only one key is needed at a time; two are given to provide seamless key regeneration.", + "operationId": "Accounts_ListKeys", + "x-ms-examples": { + "List Keys": { + "$ref": "./examples/ListKeys.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful.", + "schema": { + "$ref": "#/definitions/MapsAccountKeys" + } + }, + "default": { + "description": "An unexpected error occurred.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Maps/accounts/{accountName}/regenerateKey": { + "post": { + "tags": [ + "Accounts" + ], + "description": "Regenerate either the primary or secondary key for use with the Maps APIs. The old key will stop working immediately.", + "operationId": "Accounts_RegenerateKeys", + "x-ms-examples": { + "Regenerate Key": { + "$ref": "./examples/RegenerateKey.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "name": "keySpecification", + "in": "body", + "required": true, + "description": "Which key to regenerate: primary or secondary.", + "schema": { + "$ref": "#/definitions/MapsKeySpecification" + } + } + ], + "responses": { + "200": { + "description": "The request was successful.", + "schema": { + "$ref": "#/definitions/MapsAccountKeys" + } + }, + "default": { + "description": "An unexpected error occurred.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.Maps/operations": { + "get": { + "tags": [ + "Operations" + ], + "description": "List operations available for the Maps Resource Provider", + "operationId": "Maps_ListOperations", + "x-ms-examples": { + "Get Operations": { + "$ref": "./examples/GetOperations.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful.", + "schema": { + "$ref": "#/definitions/MapsOperations" + } + }, + "default": { + "description": "An unexpected error occurred.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Maps/operations": { + "get": { + "tags": [ + "Operations" + ], + "description": "List operations available for the Maps Resource Provider", + "operationId": "Maps_ListSubscriptionOperations", + "x-ms-examples": { + "Get Operations by Subscription": { + "$ref": "./examples/GetOperationsSubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful.", + "schema": { + "$ref": "#/definitions/MapsOperations" + } + }, + "default": { + "description": "An unexpected error occurred.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Maps/accounts/{accountName}/creators": { + "get": { + "tags": [ + "Creators" + ], + "description": "Get all Creator instances for an Azure Maps Account", + "operationId": "Creators_ListByAccount", + "x-ms-examples": { + "List Creator Resources By Account": { + "$ref": "./examples/ListMapsCreatorsByAccount.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful.", + "schema": { + "$ref": "#/definitions/CreatorList" + } + }, + "default": { + "description": "An unexpected error occurred.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Maps/accounts/{accountName}/creators/{creatorName}": { + "put": { + "tags": [ + "Creators" + ], + "description": "Create or update a Maps Creator resource. Creator resource will manage Azure resources required to populate a custom set of mapping data. It requires an account to exist before it can be created.", + "operationId": "Creators_CreateOrUpdate", + "x-ms-examples": { + "Create Creator Resource": { + "$ref": "./examples/CreateMapsCreator.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "$ref": "#/parameters/CreatorNameParameter" + }, + { + "name": "CreatorResource", + "in": "body", + "description": "The new or updated parameters for the Creator resource.", + "required": true, + "schema": { + "$ref": "#/definitions/Creator" + } + } + ], + "responses": { + "200": { + "description": "The Creator is updated with the provided properties.", + "schema": { + "$ref": "#/definitions/Creator" + } + }, + "201": { + "description": "The Creator will be created asynchronously. The Creator will be ready to use once the provisioningState property changed to 'Succeeded' through creators Get API.", + "schema": { + "$ref": "#/definitions/Creator" + } + }, + "default": { + "description": "An unexpected error occurred.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Creators" + ], + "description": "Updates the Maps Creator resource. Only a subset of the parameters may be updated after creation, such as Tags.", + "operationId": "Creators_Update", + "x-ms-examples": { + "Update Creator Resource": { + "$ref": "./examples/UpdateMapsCreator.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "$ref": "#/parameters/CreatorNameParameter" + }, + { + "name": "CreatorUpdateParameters", + "in": "body", + "description": "The update parameters for Maps Creator.", + "required": true, + "schema": { + "$ref": "#/definitions/CreatorUpdateParameters" + } + } + ], + "responses": { + "200": { + "description": "The Maps Creator was successfully updated.", + "schema": { + "$ref": "#/definitions/Creator" + } + }, + "default": { + "description": "An unexpected error occurred.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Creators" + ], + "description": "Delete a Maps Creator resource.", + "operationId": "Creators_Delete", + "x-ms-examples": { + "Delete Creator Resource": { + "$ref": "./examples/DeleteMapsCreator.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "$ref": "#/parameters/CreatorNameParameter" + } + ], + "responses": { + "200": { + "description": "The Maps Creator will be deleted." + }, + "204": { + "description": "The specified Maps Creator resource was not found. Nothing was deleted." + }, + "default": { + "description": "An unexpected error occurred.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Creators" + ], + "description": "Get a Maps Creator resource.", + "operationId": "Creators_Get", + "x-ms-examples": { + "Get Creator Resource": { + "$ref": "./examples/GetMapsCreator.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "$ref": "#/parameters/CreatorNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful.", + "schema": { + "$ref": "#/definitions/Creator" + } + }, + "default": { + "description": "An unexpected error occurred.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "parameters": { + "AccountNameParameter": { + "name": "accountName", + "in": "path", + "description": "The name of the Maps Account.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "PrivateAtlasNameParameter": { + "name": "privateAtlasName", + "in": "path", + "description": "The name of the Private Atlas instance.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "CreatorNameParameter": { + "name": "creatorName", + "in": "path", + "description": "The name of the Maps Creator instance.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + }, + "definitions": { + "Creator": { + "description": "An Azure resource which represents Maps Creator product and provides ability to manage private location data.", + "type": "object", + "properties": { + "properties": { + "description": "The Creator resource properties.", + "$ref": "#/definitions/CreatorProperties" + } + }, + "required": [ + "properties" + ], + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/TrackedResource" + } + ], + "x-ms-azure-resource": true + }, + "MapsAccount": { + "description": "An Azure resource which represents access to a suite of Maps REST APIs.", + "type": "object", + "properties": { + "sku": { + "description": "The SKU of this account.", + "$ref": "#/definitions/Sku" + }, + "kind": { + "description": "Get or Set Kind property.", + "$ref": "#/definitions/Kind" + }, + "systemData": { + "readOnly": true, + "description": "The system meta data relating to this resource.", + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData" + }, + "properties": { + "description": "The map account properties.", + "$ref": "#/definitions/MapsAccountProperties" + } + }, + "required": [ + "sku" + ], + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/TrackedResource" + } + ], + "x-ms-azure-resource": true + }, + "MapsAccountUpdateParameters": { + "description": "Parameters used to update an existing Maps Account.", + "type": "object", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Gets or sets a list of key value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters." + }, + "kind": { + "description": "Get or Set Kind property.", + "$ref": "#/definitions/Kind" + }, + "sku": { + "description": "The SKU of this account.", + "$ref": "#/definitions/Sku" + }, + "properties": { + "description": "The map account properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/MapsAccountProperties" + } + } + }, + "CreatorUpdateParameters": { + "description": "Parameters used to update an existing Creator resource.", + "type": "object", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Gets or sets a list of key value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters." + }, + "properties": { + "description": "Creator resource properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/CreatorProperties" + } + } + }, + "MapsAccounts": { + "description": "A list of Maps Accounts.", + "type": "object", + "properties": { + "value": { + "description": "a Maps Account.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/MapsAccount" + } + }, + "nextLink": { + "description": "URL client should use to fetch the next page (per server side paging).\r\nIt's null for now, added for future use.", + "type": "string" + } + } + }, + "CreatorList": { + "description": "A list of Creator resources.", + "type": "object", + "properties": { + "value": { + "description": "a Creator account.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Creator" + } + }, + "nextLink": { + "description": "URL client should use to fetch the next page (per server side paging).\r\nIt's null for now, added for future use.", + "type": "string" + } + } + }, + "Kind": { + "description": "The Kind of the Maps Account.", + "type": "string", + "default": "Gen1", + "enum": [ + "Gen1", + "Gen2" + ], + "x-ms-enum": { + "name": "kind", + "modelAsString": true + } + }, + "Sku": { + "description": "The SKU of the Maps Account.", + "type": "object", + "properties": { + "name": { + "description": "The name of the SKU, in standard format (such as S0).", + "type": "string", + "enum": [ + "S0", + "S1", + "G2" + ], + "x-ms-enum": { + "name": "name", + "modelAsString": true + } + }, + "tier": { + "readOnly": true, + "type": "string", + "description": "Gets the sku tier. This is based on the SKU name." + } + }, + "required": [ + "name" + ] + }, + "MapsKeySpecification": { + "description": "Whether the operation refers to the primary or secondary key.", + "type": "object", + "required": [ + "keyType" + ], + "properties": { + "keyType": { + "type": "string", + "enum": [ + "primary", + "secondary" + ], + "x-ms-enum": { + "name": "KeyType", + "modelAsString": true + }, + "description": "Whether the operation refers to the primary or secondary key." + } + } + }, + "MapsAccountKeys": { + "description": "The set of keys which can be used to access the Maps REST APIs. Two keys are provided for key rotation without interruption.", + "type": "object", + "properties": { + "primaryKeyLastUpdated": { + "type": "string", + "readOnly": true, + "description": "The last updated date and time of the primary key." + }, + "primaryKey": { + "type": "string", + "readOnly": true, + "description": "The primary key for accessing the Maps REST APIs." + }, + "secondaryKey": { + "type": "string", + "readOnly": true, + "description": "The secondary key for accessing the Maps REST APIs." + }, + "secondaryKeyLastUpdated": { + "type": "string", + "readOnly": true, + "description": "The last updated date and time of the secondary key." + } + } + }, + "MapsOperations": { + "description": "The set of operations available for Maps.", + "type": "object", + "properties": { + "value": { + "description": "An operation available for Maps.", + "type": "array", + "readOnly": true, + "uniqueItems": false, + "items": { + "$ref": "#/definitions/OperationDetail" + } + }, + "nextLink": { + "description": "URL client should use to fetch the next page (per server side paging).\r\nIt's null for now, added for future use.", + "type": "string" + } + } + }, + "OperationDetail": { + "description": "Operation detail payload", + "type": "object", + "properties": { + "name": { + "description": "Name of the operation", + "type": "string" + }, + "isDataAction": { + "description": "Indicates whether the operation is a data action", + "type": "boolean" + }, + "display": { + "$ref": "#/definitions/OperationDisplay", + "description": "Display of the operation" + }, + "origin": { + "description": "Origin of the operation", + "type": "string" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/OperationProperties", + "description": "Properties of the operation" + } + } + }, + "OperationDisplay": { + "description": "Operation display payload", + "type": "object", + "properties": { + "provider": { + "description": "Resource provider of the operation", + "type": "string" + }, + "resource": { + "description": "Resource of the operation", + "type": "string" + }, + "operation": { + "description": "Localized friendly name for the operation", + "type": "string" + }, + "description": { + "description": "Localized friendly description for the operation", + "type": "string" + } + } + }, + "OperationProperties": { + "description": "Properties of operation, include metric specifications.", + "properties": { + "serviceSpecification": { + "$ref": "#/definitions/ServiceSpecification", + "description": "One property of operation, include metric specifications." + } + } + }, + "ServiceSpecification": { + "description": "One property of operation, include metric specifications.", + "properties": { + "metricSpecifications": { + "description": "Metric specifications of operation.", + "type": "array", + "items": { + "$ref": "#/definitions/MetricSpecification" + } + } + } + }, + "MetricSpecification": { + "description": "Metric specification of operation.", + "properties": { + "name": { + "type": "string", + "description": "Name of metric specification." + }, + "displayName": { + "type": "string", + "description": "Display name of metric specification." + }, + "displayDescription": { + "type": "string", + "description": "Display description of metric specification." + }, + "unit": { + "type": "string", + "description": "Unit could be Count." + }, + "dimensions": { + "description": "Dimensions of map account.", + "type": "array", + "items": { + "$ref": "#/definitions/Dimension" + } + }, + "aggregationType": { + "type": "string", + "description": "Aggregation type could be Average." + }, + "fillGapWithZero": { + "type": "boolean", + "description": "The property to decide fill gap with zero or not." + }, + "category": { + "type": "string", + "description": "The category this metric specification belong to, could be Capacity." + }, + "resourceIdDimensionNameOverride": { + "type": "string", + "description": "Account Resource Id." + } + } + }, + "Dimension": { + "description": "Dimension of map account, for example API Category, Api Name, Result Type, and Response Code.", + "properties": { + "name": { + "type": "string", + "description": "Display name of dimension." + }, + "displayName": { + "type": "string", + "description": "Display name of dimension." + }, + "internalName": { + "type": "string", + "description": "Internal name of the dimension." + }, + "internalMetricName": { + "type": "string", + "description": "Internal metric name of the dimension." + }, + "sourceMdmNamespace": { + "type": "string", + "description": "Source Mdm Namespace of the dimension." + }, + "toBeExportedToShoebox": { + "type": "boolean", + "description": "Flag to indicate exporting to Azure Monitor." + } + } + }, + "MapsAccountProperties": { + "description": "Additional Map account properties", + "type": "object", + "properties": { + "uniqueId": { + "description": "A unique identifier for the maps account", + "type": "string", + "readOnly": true + }, + "disableLocalAuth": { + "description": "Allows toggle functionality on Azure Policy to disable Azure Maps local authentication support. This will disable Shared Keys authentication from any usage.", + "type": "boolean", + "default": false + }, + "provisioningState": { + "type": "string", + "description": "the state of the provisioning.", + "readOnly": true + } + } + }, + "CreatorProperties": { + "description": "Creator resource properties", + "type": "object", + "properties": { + "provisioningState": { + "description": "The state of the resource provisioning, terminal states: Succeeded, Failed, Canceled", + "type": "string", + "readOnly": true + }, + "storageUnits": { + "description": "The storage units to be allocated. Integer values from 1 to 100, inclusive.", + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 100 + } + }, + "required": [ + "storageUnits" + ] + } + } +} diff --git a/specification/maps/resource-manager/readme.azureresourceschema.md b/specification/maps/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index a11c8976cf6d..000000000000 --- a/specification/maps/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,48 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-maps-2020-02-01-preview - - tag: schema-maps-2018-05-01 - - tag: schema-maps-2017-01-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-maps-2020-02-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-maps-2020-02-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Maps/preview/2020-02-01-preview/maps-management.json - -``` - -### Tag: schema-maps-2018-05-01 and azureresourceschema - -``` yaml $(tag) == 'schema-maps-2018-05-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Maps/stable/2018-05-01/maps-management.json - -``` - -### Tag: schema-maps-2017-01-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-maps-2017-01-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Maps/stable/2017-01-01-preview/maps-management.json - -``` diff --git a/specification/maps/resource-manager/readme.go.md b/specification/maps/resource-manager/readme.go.md index 620bc68e8b4c..612c3b55b4e0 100644 --- a/specification/maps/resource-manager/readme.go.md +++ b/specification/maps/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION clear-output-folder: true namespace: maps ``` @@ -13,11 +13,21 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-2021-02 - tag: package-2018-05 - tag: package-2017-01 - tag: package-preview-2020-02 ``` +### Tag: package-2021-02 and go + +These settings apply only when `--tag=package-2021-02 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag)=='package-2021-02' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2021-02-01/$(namespace) +``` + ### Tag: package-preview-2020-02 and go These settings apply only when `--tag=package-preview-2020-02 --go` is specified on the command line. @@ -42,5 +52,5 @@ These settings apply only when `--tag=package-2017-01 --go` is specified on the Please also specify `--go-sdk-folder=`. ``` yaml $(tag)=='package-2017-01' && $(go) -output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2017-01-01-preview/$(namespace) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2017-01-01/$(namespace) ``` \ No newline at end of file diff --git a/specification/maps/resource-manager/readme.md b/specification/maps/resource-manager/readme.md index 028f371de0f1..37d96a20a3ee 100644 --- a/specification/maps/resource-manager/readme.md +++ b/specification/maps/resource-manager/readme.md @@ -25,8 +25,28 @@ To see additional help and options, run: These are the global settings for the Maps API. ``` yaml +title: AzureMapsManagementClient +description: Azure Maps openapi-type: arm -tag: package-preview-2020-02 +tag: package-preview-2021-07 +``` + + +### Tag: package-preview-2021-07 + +These settings apply only when `--tag=package-preview-2021-07` is specified on the command line. + +```yaml $(tag) == 'package-preview-2021-07' +input-file: + - Microsoft.Maps/preview/2021-07-01-preview/maps-management.json +``` +### Tag: package-2021-02 + +These settings apply only when `--tag=package-2021-02` is specified on the command line. + +``` yaml $(tag) == 'package-2021-02' +input-file: + - Microsoft.Maps/stable/2021-02-01/maps-management.json ``` ### Tag: package-preview-2020-02 @@ -69,12 +89,11 @@ This is not used by Autorest itself. swagger-to-sdk: - repo: azure-sdk-for-net - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-go - repo: azure-sdk-for-js - repo: azure-sdk-for-node - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js maps/resource-manager ``` ## C# @@ -182,6 +201,9 @@ directive: - Flattening does not work well with polymorphic models. - PrivateAtlas.properties is an arbitrary dictionary and cannot be flattened. - MapsAccount.properties is an arbitrary dictionary and cannot be flattened. + - suppress: R2026 + from: maps-management.json + reason: Managed identity is standard property being applied to all azure resources. - suppress: R3006 where: - $.definitions.MapsAccount.properties @@ -224,9 +246,23 @@ directive: where: '$.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Maps/accounts/{accountName}/creators/{creatorName}"].put' from: maps-management.json reason: False positive. Structure is the same with addition of provisioningStatus property. + - suppress: DeleteOperationResponses + where: '$.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Maps/accounts/{accountName}/creators/{creatorName}"].delete.responses' + from: maps-management.json + reason: Per ARM Specs addendum, async APIs must return 202 when a response is accepted. + - suppress: RequiredReadOnlySystemData + where: + - '$.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Maps/accounts/{accountName}/creators/{creatorName}"].put' + - '$.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Maps/accounts/{accountName}/creators/{creatorName}"].patch' + - '$.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Maps/accounts/{accountName}/creators/{creatorName}"].get' + from: maps-management.json + reason: Per ARM Specs, only top level tracked resources return systemMetadata. + - suppress: EnumInsteadOfBoolean + where: + - $.definitions.MapsAccountProperties.properties.disableLocalAuth + - $.definitions.OperationDetail.properties.isDataAction + - $.definitions.MetricSpecification.properties.fillGapWithZero + - $.definitions.Dimension.properties.toBeExportedToShoebox + from: maps-management.json + reason: standard property being applied to all azure resources. ``` - -## AzureResourceSchema - -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) - diff --git a/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/preview/2018-06-01-preview/mariadb.json b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/preview/2018-06-01-preview/mariadb.json index 4f68c873ec4f..7e38b7986939 100644 --- a/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/preview/2018-06-01-preview/mariadb.json +++ b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/preview/2018-06-01-preview/mariadb.json @@ -1507,6 +1507,20 @@ "modelAsString": false } }, + "MinimalTlsVersion": { + "type": "string", + "description": "Enforce a minimal Tls version for the server.", + "enum": [ + "TLS1_0", + "TLS1_1", + "TLS1_2", + "TLSEnforcementDisabled" + ], + "x-ms-enum": { + "name": "MinimalTlsVersionEnum", + "modelAsString": true + } + }, "ServerProperties": { "properties": { "administratorLogin": { @@ -1521,6 +1535,10 @@ "$ref": "#/definitions/SslEnforcement", "description": "Enable ssl enforcement or not when connect to server." }, + "minimalTlsVersion": { + "$ref": "#/definitions/MinimalTlsVersion", + "description": "Enforce a minimal Tls version for the server." + }, "userVisibleState": { "type": "string", "description": "A state of a server that is visible to user.", @@ -1617,6 +1635,10 @@ "$ref": "#/definitions/SslEnforcement", "description": "Enable ssl enforcement or not when connect to server." }, + "minimalTlsVersion": { + "$ref": "#/definitions/MinimalTlsVersion", + "description": "Enforce a minimal Tls version for the server." + }, "storageProfile": { "$ref": "#/definitions/StorageProfile", "description": "Storage profile of a server." @@ -1868,6 +1890,10 @@ "$ref": "#/definitions/SslEnforcement", "description": "Enable ssl enforcement or not when connect to server." }, + "minimalTlsVersion": { + "$ref": "#/definitions/MinimalTlsVersion", + "description": "Enforce a minimal Tls version for the server." + }, "replicationRole": { "type": "string", "description": "The replication role of the server." diff --git a/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/preview/2018-06-01-privatepreview/mariadb.json b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/preview/2018-06-01-privatepreview/mariadb.json index e041ba599295..60fe0cbad06f 100644 --- a/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/preview/2018-06-01-privatepreview/mariadb.json +++ b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/preview/2018-06-01-privatepreview/mariadb.json @@ -1880,6 +1880,20 @@ "modelAsString": false } }, + "MinimalTlsVersion": { + "type": "string", + "description": "Enforce a minimal Tls version for the server.", + "enum": [ + "TLS1_0", + "TLS1_1", + "TLS1_2", + "TLSEnforcementDisabled" + ], + "x-ms-enum": { + "name": "MinimalTlsVersionEnum", + "modelAsString": true + } + }, "ServerProperties": { "properties": { "administratorLogin": { @@ -1894,6 +1908,10 @@ "$ref": "#/definitions/SslEnforcement", "description": "Enable ssl enforcement or not when connect to server." }, + "minimalTlsVersion": { + "$ref": "#/definitions/MinimalTlsVersion", + "description": "Enforce a minimal Tls version for the server." + }, "userVisibleState": { "type": "string", "description": "A state of a server that is visible to user.", @@ -1989,6 +2007,10 @@ "$ref": "#/definitions/SslEnforcement", "description": "Enable ssl enforcement or not when connect to server." }, + "minimalTlsVersion": { + "$ref": "#/definitions/MinimalTlsVersion", + "description": "Enforce a minimal Tls version for the server." + }, "storageProfile": { "$ref": "#/definitions/StorageProfile", "description": "Storage profile of a server." @@ -2239,6 +2261,10 @@ "$ref": "#/definitions/SslEnforcement", "description": "Enable ssl enforcement or not when connect to server." }, + "minimalTlsVersion": { + "$ref": "#/definitions/MinimalTlsVersion", + "description": "Enforce a minimal Tls version for the server." + }, "replicationRole": { "type": "string", "description": "The replication role of the server." diff --git a/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/ServerCreate.json b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/ServerCreate.json index 43eafb7b25c3..740d8222ee95 100644 --- a/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/ServerCreate.json +++ b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/ServerCreate.json @@ -10,6 +10,7 @@ "administratorLogin": "cloudsa", "administratorLoginPassword": "", "sslEnforcement": "Enabled", + "minimalTlsVersion": "TLS1_2", "storageProfile": { "storageMB": 128000, "backupRetentionDays": 7, @@ -46,6 +47,7 @@ }, "version": "10.3", "sslEnforcement": "Enabled", + "minimalTlsVersion": "TLS1_2", "userVisibleState": "Ready", "fullyQualifiedDomainName": "mariadbtestsvc4.mariadb.database.azure.com", "earliestRestoreDate": "2018-03-14T18:02:41.577+00:00" diff --git a/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/ServerGet.json b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/ServerGet.json index 0ee1ff4d8aec..499700b642f4 100644 --- a/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/ServerGet.json +++ b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/ServerGet.json @@ -23,6 +23,7 @@ }, "version": "10.3", "sslEnforcement": "Enabled", + "minimalTlsVersion": "TLS1_0", "userVisibleState": "Ready", "fullyQualifiedDomainName": "mariadbtestsvc4.mariadb.database.azure.com", "earliestRestoreDate": "2018-03-14T18:02:41.577+00:00", diff --git a/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/ServerList.json b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/ServerList.json index 8de88d0c8974..d46354fdf75c 100644 --- a/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/ServerList.json +++ b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/ServerList.json @@ -23,6 +23,7 @@ }, "version": "10.3", "sslEnforcement": "Enabled", + "minimalTlsVersion": "TLS1_2", "userVisibleState": "Ready", "fullyQualifiedDomainName": "mariadbtestsvc1.mariadb.database.azure.com", "earliestRestoreDate": "2018-02-28T23:56:02.627+00:00", @@ -50,6 +51,7 @@ }, "version": "10.3", "sslEnforcement": "Enabled", + "minimalTlsVersion": "TLS1_1", "userVisibleState": "Ready", "fullyQualifiedDomainName": "mariadbtstsvc2.mariadb.database.azure.com", "earliestRestoreDate": "2018-02-28T23:56:54.3+00:00", @@ -92,6 +94,7 @@ }, "version": "10.3", "sslEnforcement": "Enabled", + "minimalTlsVersion": "TLS1_0", "userVisibleState": "Ready", "fullyQualifiedDomainName": "mariadbtestsvc3.mariadb.database.azure.com", "earliestRestoreDate": "2018-02-28T23:59:44.847+00:00", diff --git a/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/mariadb.json b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/mariadb.json index 0b4117240996..eb3707e782e9 100644 --- a/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/mariadb.json +++ b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/mariadb.json @@ -1477,6 +1477,20 @@ "modelAsString": false } }, + "MinimalTlsVersion": { + "type": "string", + "description": "Enforce a minimal Tls version for the server.", + "enum": [ + "TLS1_0", + "TLS1_1", + "TLS1_2", + "TLSEnforcementDisabled" + ], + "x-ms-enum": { + "name": "MinimalTlsVersionEnum", + "modelAsString": true + } + }, "PublicNetworkAccess": { "type": "string", "description": "Whether or not public network access is allowed for this server. Value is optional but if passed in, must be 'Enabled' or 'Disabled'", @@ -1598,6 +1612,10 @@ "$ref": "#/definitions/SslEnforcement", "description": "Enable ssl enforcement or not when connect to server." }, + "minimalTlsVersion": { + "$ref": "#/definitions/MinimalTlsVersion", + "description": "Enforce a minimal Tls version for the server." + }, "userVisibleState": { "type": "string", "description": "A state of a server that is visible to user.", @@ -1706,6 +1724,10 @@ "$ref": "#/definitions/SslEnforcement", "description": "Enable ssl enforcement or not when connect to server." }, + "minimalTlsVersion": { + "$ref": "#/definitions/MinimalTlsVersion", + "description": "Enforce a minimal Tls version for the server." + }, "publicNetworkAccess": { "$ref": "#/definitions/PublicNetworkAccess", "description": "Whether or not public network access is allowed for this server. Value is optional but if passed in, must be 'Enabled' or 'Disabled'" @@ -1928,6 +1950,10 @@ "$ref": "#/definitions/SslEnforcement", "description": "Enable ssl enforcement or not when connect to server." }, + "minimalTlsVersion": { + "$ref": "#/definitions/MinimalTlsVersion", + "description": "Enforce a minimal Tls version for the server." + }, "publicNetworkAccess": { "$ref": "#/definitions/PublicNetworkAccess", "description": "Whether or not public network access is allowed for this server. Value is optional but if passed in, must be 'Enabled' or 'Disabled'" diff --git a/specification/mariadb/resource-manager/readme.azureresourceschema.md b/specification/mariadb/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 24eaf7c99a9d..000000000000 --- a/specification/mariadb/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,53 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-dbformariadb-2020-01-01 - - tag: schema-dbformariadb-2018-06-01-preview - - tag: schema-dbformariadb-2018-06-01 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-dbformariadb-2020-01-01 and azureresourceschema - -``` yaml $(tag) == 'schema-dbformariadb-2020-01-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DBforMariaDB/stable/2020-01-01/Servers.json - -``` - -### Tag: schema-dbformariadb-2018-06-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-dbformariadb-2018-06-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DBforMariaDB/preview/2018-06-01-preview/mariadb.json - -``` - -### Tag: schema-dbformariadb-2018-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-dbformariadb-2018-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DBforMariaDB/stable/2018-06-01/mariadb.json - - Microsoft.DBforMariaDB/stable/2018-06-01/QueryPerformanceInsights.json - - Microsoft.DBforMariaDB/stable/2018-06-01/PerformanceRecommendations.json - - Microsoft.DBforMariaDB/stable/2018-06-01/PrivateEndpointConnections.json - - Microsoft.DBforMariaDB/stable/2018-06-01/PrivateLinkResources.json - - Microsoft.DBforMariaDB/stable/2018-06-01/ServerSecurityAlertPolicies.json - -``` diff --git a/specification/mariadb/resource-manager/readme.go.md b/specification/mariadb/resource-manager/readme.go.md index 787e63c11c97..ff9935bcfe77 100644 --- a/specification/mariadb/resource-manager/readme.go.md +++ b/specification/mariadb/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: mariadb clear-output-folder: true ``` diff --git a/specification/mariadb/resource-manager/readme.md b/specification/mariadb/resource-manager/readme.md index b937f22ec1a0..ecc148f8d3fc 100644 --- a/specification/mariadb/resource-manager/readme.md +++ b/specification/mariadb/resource-manager/readme.md @@ -112,14 +112,12 @@ This is not used by Autorest itself. ``` yaml $(swagger-to-sdk) swagger-to-sdk: - repo: azure-sdk-for-net - - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-java - repo: azure-sdk-for-go - repo: azure-sdk-for-js - repo: azure-sdk-for-node - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js mariadb/resource-manager ``` @@ -140,48 +138,7 @@ 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) && !$(track2) -python-mode: create -python: - azure-arm: true - license-header: MICROSOFT_MIT_NO_VERSION - payload-flattening-threshold: 2 - namespace: azure.mgmt.rdbms.mariadb - package-name: azure-mgmt-rdbms - clear-output-folder: true -``` -``` yaml $(python) && $(track2) -python-mode: create -azure-arm: true -license-header: MICROSOFT_MIT_NO_VERSION -namespace: azure.mgmt.rdbms.mariadb -package-name: azure-mgmt-rdbms -clear-output-folder: true -modelerfour: - lenient-model-deduplication: true -``` -``` yaml $(python) && $(python-mode) == 'update' && !$(track2) -python: - no-namespace-folders: true - output-folder: $(python-sdks-folder)/rdbms/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb -``` -``` yaml $(python) && $(python-mode) == 'create' && !$(track2) -python: - basic-setup-py: true - output-folder: $(python-sdks-folder)/rdbms/azure-mgmt-rdbms -``` -``` yaml $(python) && $(python-mode) == 'update' && $(track2) -no-namespace-folders: true -output-folder: $(python-sdks-folder)/rdbms/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb -``` -``` yaml $(python) && $(python-mode) == 'create' && $(track2) -basic-setup-py: true -output-folder: $(python-sdks-folder)/rdbms/azure-mgmt-rdbms -``` +See configuration in [readme.python.md](./readme.python.md) ## Go @@ -191,7 +148,5 @@ See configuration in [readme.go.md](./readme.go.md) See configuration in [readme.java.md](./readme.java.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/mariadb/resource-manager/readme.python.md b/specification/mariadb/resource-manager/readme.python.md new file mode 100644 index 000000000000..6a0735e0f490 --- /dev/null +++ b/specification/mariadb/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) && $(track2) +python-mode: create +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +namespace: azure.mgmt.rdbms.mariadb +package-name: azure-mgmt-rdbms +package-version: 1.0.0b1 +clear-output-folder: true +modelerfour: + lenient-model-deduplication: true +``` + + +``` yaml $(python) && $(python-mode) == 'update' && $(track2) +no-namespace-folders: true +output-folder: $(python-sdks-folder)/rdbms/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb +``` +``` yaml $(python) && $(python-mode) == 'create' && $(track2) +basic-setup-py: true +output-folder: $(python-sdks-folder)/rdbms/azure-mgmt-rdbms +``` \ No newline at end of file diff --git a/specification/marketplace/resource-manager/readme.azureresourceschema.md b/specification/marketplace/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 040e6ae795ef..000000000000 --- a/specification/marketplace/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,48 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-marketplace-2020-12-01 - - tag: schema-marketplace-2020-01-01 - - tag: schema-marketplace-2019-12-01 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-marketplace-2020-12-01 and azureresourceschema - -``` yaml $(tag) == 'schema-marketplace-2020-12-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Marketplace/stable/2020-12-01/Marketplace.json - -``` - -### Tag: schema-marketplace-2020-01-01 and azureresourceschema - -``` yaml $(tag) == 'schema-marketplace-2020-01-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Marketplace/stable/2020-01-01/Marketplace.json - -``` - -### Tag: schema-marketplace-2019-12-01 and azureresourceschema - -``` yaml $(tag) == 'schema-marketplace-2019-12-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Marketplace/stable/2019-12-01/Marketplace.json - -``` diff --git a/specification/marketplace/resource-manager/readme.md b/specification/marketplace/resource-manager/readme.md index 07383496fbbf..06a8de6c4d7d 100644 --- a/specification/marketplace/resource-manager/readme.md +++ b/specification/marketplace/resource-manager/readme.md @@ -79,8 +79,6 @@ This is not used by Autorest itself. swagger-to-sdk: - repo: azure-sdk-for-net - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js marketplace/resource-manager ``` ## C# @@ -99,7 +97,5 @@ csharp: lenient-model-deduplication: true ``` -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/marketplacenotifications/resource-manager/Microsoft.MarketplaceNotifications/stable/2021-03-03/MarketplaceNotifications.json b/specification/marketplacenotifications/resource-manager/Microsoft.MarketplaceNotifications/stable/2021-03-03/MarketplaceNotifications.json new file mode 100644 index 000000000000..46c53b7f0a21 --- /dev/null +++ b/specification/marketplacenotifications/resource-manager/Microsoft.MarketplaceNotifications/stable/2021-03-03/MarketplaceNotifications.json @@ -0,0 +1,369 @@ +{ + "swagger": "2.0", + "info": { + "title": "Microsoft Marketplace Blueprint API", + "description": "Microsoft Marketplace Blueprint API", + "version": "2021-03-03" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscription}/providers/Microsoft.MarketplaceNotifications/reviewsNotifications": { + "get": { + "tags": [ + "Notification" + ], + "operationId": "Notifications_GetWithAuthorization", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/PrincipalId" + }, + { + "$ref": "#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/NotificationList" + } + }, + "default": { + "description": "Microsoft.MarketplaceNotifications error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetReviewsNotifications": { + "$ref": "./examples/GetReviewsNotifications.json" + } + } + } + }, + "/subscriptions/{subscription}/providers/Microsoft.MarketplaceNotifications/reviewsNotification/{notification}": { + "get": { + "tags": [ + "Notification" + ], + "operationId": "Notification_GetWithAuthorization", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/NotificationId" + }, + { + "$ref": "#/parameters/PrincipalId" + }, + { + "$ref": "#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Notification" + } + }, + "default": { + "description": "Microsoft.MarketplaceNotifications error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "GetReviewsNotifications": { + "$ref": "./examples/GetReviewsNotification.json" + } + } + } + }, + "/providers/Microsoft.MarketplaceNotifications/operations": { + "get": { + "tags": [ + "Operations" + ], + "operationId": "Notification_GetOperations", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/AvailableOperations" + } + }, + "default": { + "description": "Microsoft.MarketplaceNotifications error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetReviewsNotificationsOperations": { + "$ref": "./examples/GetReviewsNotificationsOperations.json" + } + } + } + } + }, + "parameters": { + "NotificationId": { + "description": "the notification id", + "type": "string", + "name": "notification", + "in": "path", + "required": true, + "x-ms-parameter-location": "method" + }, + "SubscriptionId": { + "description": "user's subscription id", + "type": "string", + "name": "subscription", + "in": "path", + "required": true, + "x-ms-parameter-location": "method" + }, + "PrincipalId": { + "description": "user's principal id", + "type": "string", + "name": "principalId", + "in": "query", + "required": true, + "x-ms-parameter-location": "method" + }, + "ApiVersion": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the request.", + "x-ms-parameter-location": "method" + } + }, + "definitions": { + "NotificationList": { + "description": "Notifications List", + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Notification" + } + }, + "nextLink": { + "description": "URL client should use to fetch the next page (per server side paging).\r\nIt's null for now, added for future use.", + "type": "string" + } + } + }, + "Notification": { + "description": "Review notification", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "systemData": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/OfferProperties", + "description": "The offer data structure.", + "x-ms-client-flatten": true + } + } + }, + "DiagnosticsInfoDto": { + "description": "Diagnostics Info", + "type": "object", + "properties": { + "ms-cv": { + "description": "MS CV", + "type": "string" + }, + "buildNumber": { + "description": "build number", + "type": "string" + } + } + }, + "ErrorResponse": { + "description": "Error response indicates Microsoft.MarketplaceNotifications service is not able to process the incoming request. The reason is provided in the error message.", + "type": "object", + "properties": { + "error": { + "description": "The details of the error.", + "properties": { + "code": { + "description": "Error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "Error message indicating why the operation failed.", + "type": "string", + "readOnly": true + } + } + } + } + }, + "AvailableOperations": { + "description": "Available operations of the service", + "type": "object", + "properties": { + "value": { + "description": "Collection of available operation details", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/OperationDetail" + } + }, + "nextLink": { + "description": "URL client should use to fetch the next page (per server side paging).\r\nIt's null for now, added for future use.", + "type": "string", + "readOnly": true + } + } + }, + "OperationDetail": { + "description": "Operation detail payload", + "type": "object", + "properties": { + "name": { + "description": "Name of the operation", + "type": "string" + }, + "isDataAction": { + "description": "Indicates whether the operation is a data action", + "type": "boolean" + }, + "display": { + "$ref": "#/definitions/OperationDisplay", + "description": "Display of the operation" + }, + "origin": { + "description": "operation origin", + "type": "string" + }, + "properties": { + "description": "operation properties", + "type": "object" + } + } + }, + "OperationDisplay": { + "description": "Operation display payload", + "type": "object", + "properties": { + "resource": { + "description": "Resource of the operation", + "type": "string" + }, + "provider": { + "description": "Name of the provider for display purposes", + "type": "string" + }, + "operation": { + "description": "Name of the operation for display purposes", + "type": "string" + }, + "description": { + "description": "Localized friendly description for the operation", + "type": "string" + } + } + }, + "Resource": { + "description": "An Azure resource.", + "properties": { + "id": { + "description": "The resource ID.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The name of the resource.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The type of the resource.", + "type": "string", + "readOnly": true + } + }, + "x-ms-azure-resource": true + }, + "OfferProperties": { + "type": "object", + "properties": { + "offerId": { + "description": "legacy offer id of the notification (publisher.offer)", + "type": "string", + "readOnly": true + }, + "createdDate": { + "description": "date for creating the notification", + "format": "date-time", + "type": "string", + "readOnly": true + }, + "offerDisplayName": { + "description": "offer display name", + "type": "string", + "readOnly": true + }, + "principalId": { + "description": "user's principal id", + "type": "string", + "readOnly": true + } + } + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/marketplacenotifications/resource-manager/Microsoft.MarketplaceNotifications/stable/2021-03-03/examples/GetReviewsNotification.json b/specification/marketplacenotifications/resource-manager/Microsoft.MarketplaceNotifications/stable/2021-03-03/examples/GetReviewsNotification.json new file mode 100644 index 000000000000..ee066f1a2f61 --- /dev/null +++ b/specification/marketplacenotifications/resource-manager/Microsoft.MarketplaceNotifications/stable/2021-03-03/examples/GetReviewsNotification.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "notification": "5654d099-303d-4196-9d79-0334246f9edb", + "subscription": "5654d099-303d-4196-9d79-0334246f9edb", + "principalId": "0b12389c-5e1d-4b67-880c-71d0d4a8d751", + "api-version": "03-03-2021" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.MarketplaceNotifications/9b001c71-cb1f-4d0a-bafd-8fa62c978288", + "type": "Microsoft.MarketplaceNotifications/reviewsNotification", + "name": "9b001c71-cb1f-4d0a-bafd-8fa62c978288", + "properties": { + "offerId": "publisher.offer", + "createdDate": "2020-10-04T00:00:00+00:00", + "offerDisplayName": "Offer Name", + "principalId": "0b12389c-5e1d-4b67-880c-71d0d4a8d751" + } + } + } + } +} diff --git a/specification/marketplacenotifications/resource-manager/Microsoft.MarketplaceNotifications/stable/2021-03-03/examples/GetReviewsNotifications.json b/specification/marketplacenotifications/resource-manager/Microsoft.MarketplaceNotifications/stable/2021-03-03/examples/GetReviewsNotifications.json new file mode 100644 index 000000000000..7b24e8f2fead --- /dev/null +++ b/specification/marketplacenotifications/resource-manager/Microsoft.MarketplaceNotifications/stable/2021-03-03/examples/GetReviewsNotifications.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscription": "5654d099-303d-4196-9d79-0334246f9edb", + "principalId": "0b12389c-5e1d-4b67-880c-71d0d4a8d751", + "api-version": "03-03-2021" + }, + "responses": { + "200": { + "body": { + "nextLink": "", + "value": [ + { + "id": "/providers/Microsoft.MarketplaceNotifications/9b001c71-cb1f-4d0a-bafd-8fa62c978288", + "type": "Microsoft.MarketplaceNotifications/reviewsNotification", + "name": "9b001c71-cb1f-4d0a-bafd-8fa62c978288", + "properties": { + "offerId": "publisher.offer", + "createdDate": "2020-10-04T00:00:00+00:00", + "offerDisplayName": "Offer Name", + "principalId": "0b12389c-5e1d-4b67-880c-71d0d4a8d751" + } + } + ] + } + } + } +} diff --git a/specification/marketplacenotifications/resource-manager/Microsoft.MarketplaceNotifications/stable/2021-03-03/examples/GetReviewsNotificationsOperations.json b/specification/marketplacenotifications/resource-manager/Microsoft.MarketplaceNotifications/stable/2021-03-03/examples/GetReviewsNotificationsOperations.json new file mode 100644 index 000000000000..109c0d97d7fa --- /dev/null +++ b/specification/marketplacenotifications/resource-manager/Microsoft.MarketplaceNotifications/stable/2021-03-03/examples/GetReviewsNotificationsOperations.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "03-03-2021" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "operation name", + "isDataAction": true, + "display": { + "description": "operation description", + "resource": "notifications", + "operation": "operation display name", + "provider": "operation provider" + }, + "origin": "user|system|user,system", + "properties": {} + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/marketplacenotifications/resource-manager/readme.azureresourceschema.md b/specification/marketplacenotifications/resource-manager/readme.azureresourceschema.md new file mode 100644 index 000000000000..8b2c8b4db7e5 --- /dev/null +++ b/specification/marketplacenotifications/resource-manager/readme.azureresourceschema.md @@ -0,0 +1,24 @@ +## AzureResourceSchema + +These settings apply only when `--azureresourceschema` is specified on the command line. + +### AzureResourceSchema multi-api + +``` yaml $(azureresourceschema) && $(multiapi) +batch: + - tag: schema-marketplacenotifications-2021-03-03 + +``` + +Please also specify `--azureresourceschema-folder=`. + +### Tag: schema-marketplacenotifications-2021-03-03 and azureresourceschema + +``` yaml $(tag) == 'schema-marketplacenotifications-2021-03-03' && $(azureresourceschema) +output-folder: $(azureresourceschema-folder)/schemas + +# all the input files in this apiVersion +input-file: + - Microsoft.MarketplaceNotifications/stable/2021-03-03/MarketplaceNotifications.json + +``` diff --git a/specification/marketplacenotifications/resource-manager/readme.md b/specification/marketplacenotifications/resource-manager/readme.md new file mode 100644 index 000000000000..3bfaa28a8f61 --- /dev/null +++ b/specification/marketplacenotifications/resource-manager/readme.md @@ -0,0 +1,95 @@ +# marketplace + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for Marketplace. + +--- + +## Getting Started + +To build the SDK for Marketplace notifications, 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 Marketplace notifications API. + +``` yaml +openapi-type: arm +tag: package-2021-03-03 +``` +### Composite packages + +The following packages may be composed from multiple api-versions. + +### Tag: package-composite-v1 + +These settings apply only when `--tag=package-composite-v1` is specified on the command line. + +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. + +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.MarketplaceNotifications/stable/2021-03-03/MarketplaceNotifications.json + +# Needed when there is more than one input file +override-info: + title: MarketplaceManagementClient +``` + +### Tag: package-2021-03-03 + +These settings apply only when `--tag=package-2021-03-03` is specified on the command line. + +``` yaml $(tag) == 'package-2021-03-03' +input-file: + - Microsoft.MarketplaceNotifications/stable/2021-03-03/MarketplaceNotifications.json +``` + +# Code Generation + +## Swagger to SDK + +This section describes what SDK should be generated by the automatic system. +This is not used by Autorest itself. + +``` yaml $(swagger-to-sdk) +swagger-to-sdk: + - repo: azure-sdk-for-net + - repo: azure-resource-manager-schemas + after_scripts: + - node sdkauto_afterscript.js marketplacenotifications/resource-manager +``` + +## 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.MarketplaceNotifications + output-folder: $(csharp-sdks-folder)/marketplacenotifications/Microsoft.Azure.Management.MarketplaceNotifications/src/Generated + clear-output-folder: true + modelerfour: + lenient-model-deduplication: true +``` + +## AzureResourceSchema + +See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) + diff --git a/specification/marketplaceordering/resource-manager/readme.az.md b/specification/marketplaceordering/resource-manager/readme.az.md new file mode 100644 index 000000000000..38021a700ca5 --- /dev/null +++ b/specification/marketplaceordering/resource-manager/readme.az.md @@ -0,0 +1,101 @@ +## AZ + +These settings apply only when `--az` is specified on the command line. + +For new Resource Provider. It is highly recommended to onboard Azure CLI extensions. There's no differences in terms of customer usage. + +This is for command modules that already in azure cli main repo. +``` yaml $(az) && $(target-mode) == 'core' +az: + extensions: marketplaceordering + namespace: azure.mgmt.marketplaceordering + package-name: azure-mgmt-marketplaceordering +az-output-folder: $(azure-cli-folder)/src/azure-cli/azure/cli/command_modules/marketplaceordering +python-sdk-output-folder: "$(az-output-folder)/vendored_sdks/marketplaceordering" + +``` + +``` yaml +directive: + - where: + group: marketplaceordering marketplace-agreement + set: + group: term + - where: + command: term create + set: + command: term accept + - where: + command: term accept + set: + command-description: Accept marketplace terms. + - where: + parameter-name: publisher-id + set: + parameter-name: publisher + - where: + parameter-name: offer-id + set: + parameter-name: product + - where: + parameter-name: plan-id + set: + parameter-name: plan + +cli: + cli-directive: + - where: + group: MarketplaceAgreements + op: GetAgreement + hidden: true + - where: + group: MarketplaceAgreements + op: Sign + hidden: true + - where: + group: MarketplaceAgreements + op: Cancel + hidden: true + - where: + group: MarketplaceAgreements + op: List + hidden: true + - where: + group: MarketplaceAgreements + set: + extensionMode: preview + - where: + group: MarketplaceAgreements + parameter: offerType + default-value: virtualmachine + - where: + group: MarketplaceAgreements + op: Create + param: licenseTextLink + hidden: true + - where: + group: MarketplaceAgreements + op: Create + param: privacyPolicyLink + hidden: true + - where: + group: MarketplaceAgreements + op: Create + param: marketplaceTermsLink + hidden: true + - where: + group: MarketplaceAgreements + op: Create + param: retrieveDatetime + hidden: true + - where: + group: MarketplaceAgreements + op: Create + param: signature + hidden: true + - where: + group: MarketplaceAgreements + op: Create + param: accepted + hidden: true +``` diff --git a/specification/marketplaceordering/resource-manager/readme.azureresourceschema.md b/specification/marketplaceordering/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index f6b697b9fa1b..000000000000 --- a/specification/marketplaceordering/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,36 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-marketplaceordering-2021-01-01 - - tag: schema-marketplaceordering-2015-06-01 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-marketplaceordering-2021-01-01 and azureresourceschema - -``` yaml $(tag) == 'schema-marketplaceordering-2021-01-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.MarketplaceOrdering/stable/2021-01-01/Agreements.json - -``` - -### Tag: schema-marketplaceordering-2015-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-marketplaceordering-2015-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.MarketplaceOrdering/stable/2015-06-01/Agreements.json - -``` diff --git a/specification/marketplaceordering/resource-manager/readme.cli.md b/specification/marketplaceordering/resource-manager/readme.cli.md new file mode 100644 index 000000000000..85e32bc78433 --- /dev/null +++ b/specification/marketplaceordering/resource-manager/readme.cli.md @@ -0,0 +1,6 @@ +## CLI + +These settings apply only when `--cli` is specified on the command line. + +``` yaml $(cli) +``` diff --git a/specification/marketplaceordering/resource-manager/readme.go.md b/specification/marketplaceordering/resource-manager/readme.go.md index 6bbea376b25c..b289a2b98990 100644 --- a/specification/marketplaceordering/resource-manager/readme.go.md +++ b/specification/marketplaceordering/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: marketplaceordering clear-output-folder: true ``` diff --git a/specification/marketplaceordering/resource-manager/readme.md b/specification/marketplaceordering/resource-manager/readme.md index 56252c961c8b..97a75484d98f 100644 --- a/specification/marketplaceordering/resource-manager/readme.md +++ b/specification/marketplaceordering/resource-manager/readme.md @@ -90,8 +90,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_marketplace_ordering'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js marketplaceordering/resource-manager ``` @@ -172,7 +170,5 @@ generate-interface: true -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/mediaservices/resource-manager/Microsoft.Media/stable/2021-05-01/Accounts.json b/specification/mediaservices/resource-manager/Microsoft.Media/stable/2021-05-01/Accounts.json new file mode 100644 index 000000000000..c52aff5fcef9 --- /dev/null +++ b/specification/mediaservices/resource-manager/Microsoft.Media/stable/2021-05-01/Accounts.json @@ -0,0 +1,1524 @@ +{ + "schemes": [ + "https" + ], + "swagger": "2.0", + "info": { + "title": "Azure Media Services", + "description": "This Swagger was generated by the API Framework.", + "version": "2021-05-01" + }, + "host": "management.azure.com", + "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" + } + } + }, + "definitions": { + "Provider": { + "description": "A resource provider.", + "properties": { + "providerName": { + "description": "The provider name.", + "type": "string" + } + }, + "type": "object", + "required": [ + "providerName" + ] + }, + "OperationDisplay": { + "properties": { + "provider": { + "type": "string", + "description": "The service provider." + }, + "resource": { + "type": "string", + "description": "Resource on which the operation is performed." + }, + "operation": { + "type": "string", + "description": "The operation type." + }, + "description": { + "type": "string", + "description": "The operation description." + } + }, + "type": "object", + "description": "Operation details." + }, + "MetricDimension": { + "properties": { + "name": { + "type": "string", + "description": "The metric dimension name.", + "readOnly": true + }, + "displayName": { + "type": "string", + "description": "The display name for the dimension.", + "readOnly": true + }, + "toBeExportedForShoebox": { + "type": "boolean", + "description": "Whether to export metric to shoebox.", + "readOnly": true, + "x-nullable": false + } + }, + "type": "object", + "description": "A metric dimension." + }, + "MetricSpecification": { + "properties": { + "name": { + "type": "string", + "description": "The metric name.", + "readOnly": true + }, + "displayName": { + "type": "string", + "description": "The metric display name.", + "readOnly": true + }, + "displayDescription": { + "type": "string", + "description": "The metric display description.", + "readOnly": true + }, + "unit": { + "type": "string", + "enum": [ + "Bytes", + "Count", + "Milliseconds" + ], + "x-ms-enum": { + "name": "MetricUnit", + "values": [ + { + "value": "Bytes", + "description": "The number of bytes." + }, + { + "value": "Count", + "description": "The count." + }, + { + "value": "Milliseconds", + "description": "The number of milliseconds." + } + ], + "modelAsString": true + }, + "description": "The metric unit", + "readOnly": true, + "x-nullable": false + }, + "aggregationType": { + "type": "string", + "enum": [ + "Average", + "Count", + "Total" + ], + "x-ms-enum": { + "name": "MetricAggregationType", + "values": [ + { + "value": "Average", + "description": "The average." + }, + { + "value": "Count", + "description": "The count of a number of items, usually requests." + }, + { + "value": "Total", + "description": "The sum." + } + ], + "modelAsString": true + }, + "description": "The metric aggregation type", + "readOnly": true, + "x-nullable": false + }, + "lockAggregationType": { + "type": "string", + "enum": [ + "Average", + "Count", + "Total" + ], + "x-ms-enum": { + "name": "MetricAggregationType", + "values": [ + { + "value": "Average", + "description": "The average." + }, + { + "value": "Count", + "description": "The count of a number of items, usually requests." + }, + { + "value": "Total", + "description": "The sum." + } + ], + "modelAsString": true + }, + "description": "The metric lock aggregation type", + "readOnly": true, + "x-nullable": true + }, + "supportedAggregationTypes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Supported aggregation types." + }, + "dimensions": { + "type": "array", + "items": { + "$ref": "#/definitions/MetricDimension" + }, + "description": "The metric dimensions.", + "readOnly": true + }, + "enableRegionalMdmAccount": { + "type": "boolean", + "description": "Indicates whether regional MDM account is enabled.", + "readOnly": true, + "x-nullable": false + }, + "sourceMdmAccount": { + "type": "string", + "description": "The source MDM account.", + "readOnly": true + }, + "sourceMdmNamespace": { + "type": "string", + "description": "The source MDM namespace.", + "readOnly": true + }, + "supportedTimeGrainTypes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The supported time grain types.", + "readOnly": true + } + }, + "type": "object", + "description": "A metric emitted by service." + }, + "Properties": { + "properties": { + "serviceSpecification": { + "$ref": "#/definitions/ServiceSpecification", + "description": "The service specifications.", + "readOnly": true + } + }, + "type": "object", + "description": "The service specification property." + }, + "ServiceSpecification": { + "properties": { + "logSpecifications": { + "type": "array", + "items": { + "$ref": "#/definitions/LogSpecification" + }, + "description": "List of log specifications.", + "readOnly": true + }, + "metricSpecifications": { + "type": "array", + "items": { + "$ref": "#/definitions/MetricSpecification" + }, + "description": "List of metric specifications.", + "readOnly": true + } + }, + "type": "object", + "description": "The service metric specifications." + }, + "LogSpecification": { + "properties": { + "name": { + "type": "string", + "description": "The diagnostic log category name.", + "readOnly": true + }, + "displayName": { + "type": "string", + "description": "The diagnostic log category display name.", + "readOnly": true + }, + "blobDuration": { + "type": "string", + "description": "The time range for requests in each blob.", + "readOnly": true + } + }, + "type": "object", + "description": "A diagnostic log emitted by service." + }, + "Operation": { + "description": "An operation.", + "properties": { + "name": { + "type": "string", + "description": "The operation name." + }, + "display": { + "$ref": "#/definitions/OperationDisplay", + "description": "The operation display name." + }, + "origin": { + "type": "string", + "description": "Origin of the operation." + }, + "properties": { + "$ref": "#/definitions/Properties", + "description": "Operation properties format." + }, + "isDataAction": { + "type": "boolean", + "description": "Whether the operation applies to data-plane.", + "x-nullable": true + }, + "actionType": { + "type": "string", + "enum": [ + "Internal" + ], + "x-ms-enum": { + "name": "ActionType", + "values": [ + { + "value": "Internal", + "description": "An internal action." + } + ], + "modelAsString": true + }, + "description": "Indicates the action type.", + "x-nullable": true + } + }, + "type": "object", + "required": [ + "name" + ] + }, + "Location": { + "properties": { + "name": { + "type": "string" + } + }, + "type": "object", + "required": [ + "name" + ] + }, + "EntityNameAvailabilityCheckOutput": { + "properties": { + "nameAvailable": { + "type": "boolean", + "description": "Specifies if the name is available." + }, + "reason": { + "type": "string", + "description": "Specifies the reason if the name is not available." + }, + "message": { + "type": "string", + "description": "Specifies the detailed reason if the name is not available." + } + }, + "type": "object", + "required": [ + "nameAvailable" + ], + "description": "The response from the check name availability request." + }, + "StorageAccount": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the storage account resource. Media Services relies on tables and queues as well as blobs, so the primary storage account must be a Standard Storage account (either Microsoft.ClassicStorage or Microsoft.Storage). Blob only storage accounts can be added as secondary storage accounts." + }, + "type": { + "type": "string", + "enum": [ + "Primary", + "Secondary" + ], + "x-ms-enum": { + "name": "StorageAccountType", + "values": [ + { + "value": "Primary", + "description": "The primary storage account for the Media Services account." + }, + { + "value": "Secondary", + "description": "A secondary storage account for the Media Services account." + } + ], + "modelAsString": true + }, + "description": "The type of the storage account." + } + }, + "type": "object", + "required": [ + "type" + ], + "description": "The storage account details." + }, + "SyncStorageKeysInput": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the storage account resource." + } + }, + "type": "object", + "description": "The input to the sync storage keys request." + }, + "MediaServiceProperties": { + "properties": { + "mediaServiceId": { + "type": "string", + "format": "uuid", + "description": "The Media Services account ID.", + "readOnly": true, + "x-nullable": false + }, + "storageAccounts": { + "type": "array", + "items": { + "$ref": "#/definitions/StorageAccount" + }, + "description": "The storage accounts for this resource." + }, + "storageAuthentication": { + "type": "string", + "enum": [ + "System", + "ManagedIdentity" + ], + "x-ms-enum": { + "name": "StorageAuthentication", + "values": [ + { + "value": "System", + "description": "System authentication." + }, + { + "value": "ManagedIdentity", + "description": "Managed Identity authentication." + } + ], + "modelAsString": true + }, + "x-nullable": true + }, + "encryption": { + "$ref": "#/definitions/AccountEncryption", + "description": "The account encryption properties." + }, + "keyDelivery": { + "$ref": "#/definitions/KeyDelivery", + "description": "The Key Delivery properties for Media Services account." + } + }, + "type": "object", + "description": "Properties of the Media Services account." + }, + "MediaService": { + "description": "A Media Services account.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/TrackedResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/MediaServiceProperties", + "description": "The resource properties.", + "x-ms-client-flatten": true + }, + "identity": { + "$ref": "#/definitions/MediaServiceIdentity", + "description": "The Managed Identity for the Media Services account." + }, + "systemData": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/systemData", + "description": "The system metadata relating to this resource.", + "readOnly": true + } + }, + "type": "object" + }, + "MediaServiceUpdate": { + "description": "A Media Services account update.", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-ms-mutability": [ + "read", + "create", + "update" + ], + "description": "Resource tags." + }, + "properties": { + "$ref": "#/definitions/MediaServiceProperties", + "description": "The resource properties.", + "x-ms-client-flatten": true + }, + "identity": { + "$ref": "#/definitions/MediaServiceIdentity", + "description": "The Managed Identity for the Media Services account." + } + }, + "type": "object" + }, + "ListEdgePoliciesInput": { + "properties": { + "deviceId": { + "type": "string", + "description": "Unique identifier of the edge device." + } + }, + "type": "object" + }, + "EdgeUsageDataEventHub": { + "properties": { + "name": { + "type": "string", + "description": "Name of the Event Hub where usage will be reported." + }, + "namespace": { + "type": "string", + "description": "Namespace of the Event Hub where usage will be reported." + }, + "token": { + "type": "string", + "description": "SAS token needed to interact with Event Hub." + } + }, + "type": "object" + }, + "EdgeUsageDataCollectionPolicy": { + "properties": { + "dataCollectionFrequency": { + "type": "string", + "description": "Usage data collection frequency in ISO 8601 duration format e.g. PT10M , PT5H." + }, + "dataReportingFrequency": { + "type": "string", + "description": "Usage data reporting frequency in ISO 8601 duration format e.g. PT10M , PT5H." + }, + "maxAllowedUnreportedUsageDuration": { + "type": "string", + "description": "Maximum time for which the functionality of the device will not be hampered for not reporting the usage data." + }, + "eventHubDetails": { + "$ref": "#/definitions/EdgeUsageDataEventHub", + "description": "Details of Event Hub where the usage will be reported." + } + }, + "type": "object" + }, + "EdgePolicies": { + "properties": { + "usageDataCollectionPolicy": { + "$ref": "#/definitions/EdgeUsageDataCollectionPolicy" + } + }, + "type": "object" + }, + "MediaServiceIdentity": { + "properties": { + "type": { + "type": "string", + "enum": [ + "SystemAssigned", + "None" + ], + "x-ms-enum": { + "name": "ManagedIdentityType", + "values": [ + { + "value": "SystemAssigned", + "description": "A system-assigned managed identity." + }, + { + "value": "None", + "description": "No managed identity." + } + ], + "modelAsString": true + }, + "description": "The identity type." + }, + "principalId": { + "type": "string", + "description": "The Principal ID of the identity.", + "readOnly": true + }, + "tenantId": { + "type": "string", + "description": "The Tenant ID of the identity.", + "readOnly": true + } + }, + "type": "object", + "required": [ + "type" + ] + }, + "KeyVaultProperties": { + "properties": { + "keyIdentifier": { + "type": "string", + "description": "The URL of the Key Vault key used to encrypt the account. The key may either be versioned (for example https://vault/keys/mykey/version1) or reference a key without a version (for example https://vault/keys/mykey)." + }, + "currentKeyIdentifier": { + "type": "string", + "description": "The current key used to encrypt the Media Services account, including the key version.", + "readOnly": true + } + }, + "type": "object" + }, + "AccountEncryption": { + "properties": { + "type": { + "type": "string", + "enum": [ + "SystemKey", + "CustomerKey" + ], + "x-ms-enum": { + "name": "AccountEncryptionKeyType", + "values": [ + { + "value": "SystemKey", + "description": "The Account Key is encrypted with a System Key." + }, + { + "value": "CustomerKey", + "description": "The Account Key is encrypted with a Customer Key." + } + ], + "modelAsString": true + }, + "description": "The type of key used to encrypt the Account Key." + }, + "keyVaultProperties": { + "$ref": "#/definitions/KeyVaultProperties", + "description": "The properties of the key used to encrypt the account." + } + }, + "type": "object", + "required": [ + "type" + ] + }, + "AccessControl": { + "properties": { + "defaultAction": { + "type": "string", + "enum": [ + "Allow", + "Deny" + ], + "x-ms-enum": { + "name": "DefaultAction", + "values": [ + { + "value": "Allow", + "description": "All public IP addresses are allowed." + }, + { + "value": "Deny", + "description": "Public IP addresses are blocked." + } + ], + "modelAsString": true + }, + "description": "The behavior for IP access control in Key Delivery." + }, + "ipAllowList": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The IP allow list for access control in Key Delivery. If the default action is set to 'Allow', the IP allow list must be empty." + } + }, + "type": "object" + }, + "KeyDelivery": { + "properties": { + "accessControl": { + "$ref": "#/definitions/AccessControl", + "description": "The access control properties for Key Delivery." + } + }, + "type": "object" + }, + "OperationCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "description": "A collection of Operation items." + }, + "@odata.nextLink": { + "type": "string", + "description": "A link to the next page of the collection (when the collection contains too many results to return in one response)." + } + }, + "type": "object", + "description": "A collection of Operation items." + }, + "MediaServiceCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/MediaService" + }, + "description": "A collection of MediaService items." + }, + "@odata.nextLink": { + "type": "string", + "description": "A link to the next page of the collection (when the collection contains too many results to return in one response)." + } + }, + "type": "object", + "description": "A collection of MediaService items." + }, + "CheckNameAvailabilityInput": { + "description": "The input to the check name availability request.", + "properties": { + "name": { + "description": "The account name.", + "type": "string" + }, + "type": { + "description": "The account type. For a Media Services account, this should be 'MediaServices'.", + "type": "string" + } + }, + "type": "object" + } + }, + "paths": { + "/providers/Microsoft.Media/operations": { + "get": { + "summary": "List Operations", + "description": "Lists all the Media Services operations.", + "operationId": "Operations_List", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationCollection" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../2020-05-01/Common.json#/definitions/ApiError" + } + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + } + ], + "x-ms-pageable": { + "nextLinkName": "@odata.nextLink" + }, + "x-ms-examples": { + "List Operations": { + "$ref": "examples/operations-list-all.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/mediaservices": { + "get": { + "summary": "List Media Services accounts", + "description": "List Media Services accounts in the resource group", + "operationId": "Mediaservices_List", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MediaServiceCollection" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../2020-05-01/Common.json#/definitions/ApiError" + } + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/ApiVersion" + } + ], + "x-ms-pageable": { + "nextLinkName": "@odata.nextLink" + }, + "x-ms-examples": { + "List all Media Services accounts": { + "$ref": "examples/accounts-list-all-accounts.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/mediaservices/{accountName}": { + "get": { + "summary": "Get a Media Services account", + "description": "Get the details of a Media Services account", + "operationId": "Mediaservices_Get", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MediaService" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../2020-05-01/Common.json#/definitions/ApiError" + } + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "description": "The Media Services account name." + }, + { + "$ref": "#/parameters/ApiVersion" + } + ], + "x-ms-examples": { + "Get a Media Services account by name": { + "$ref": "examples/accounts-get-by-name.json" + } + } + }, + "put": { + "summary": "Create or update a Media Services account", + "description": "Creates or updates a Media Services account", + "operationId": "Mediaservices_CreateOrUpdate", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MediaService" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/MediaService" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../2020-05-01/Common.json#/definitions/ApiError" + } + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "description": "The Media Services account name." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/MediaService" + }, + "description": "The request parameters" + }, + { + "$ref": "#/parameters/ApiVersion" + } + ], + "x-ms-examples": { + "Create a Media Services account": { + "$ref": "examples/accounts-create.json" + } + } + }, + "delete": { + "summary": "Delete a Media Services account.", + "description": "Deletes a Media Services account", + "operationId": "Mediaservices_Delete", + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../2020-05-01/Common.json#/definitions/ApiError" + } + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "description": "The Media Services account name." + }, + { + "$ref": "#/parameters/ApiVersion" + } + ], + "x-ms-examples": { + "Delete a Media Services account": { + "$ref": "examples/accounts-delete.json" + } + } + }, + "patch": { + "summary": "Update a Media Services account", + "description": "Updates an existing Media Services account", + "operationId": "Mediaservices_Update", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MediaService" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../2020-05-01/Common.json#/definitions/ApiError" + } + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "description": "The Media Services account name." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/MediaServiceUpdate" + }, + "description": "The request parameters" + }, + { + "$ref": "#/parameters/ApiVersion" + } + ], + "x-ms-examples": { + "Update a Media Services accounts": { + "$ref": "examples/accounts-update.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/mediaservices/{accountName}/syncStorageKeys": { + "post": { + "summary": "Synchronizes Storage Account Keys", + "description": "Synchronizes storage account keys for a storage account associated with the Media Service account.", + "operationId": "Mediaservices_SyncStorageKeys", + "responses": { + "200": { + "description": "OK" + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../2020-05-01/Common.json#/definitions/ApiError" + } + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "description": "The Media Services account name." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SyncStorageKeysInput" + }, + "description": "The request parameters" + }, + { + "$ref": "#/parameters/ApiVersion" + } + ], + "x-ms-examples": { + "Synchronizes Storage Account Keys": { + "$ref": "examples/accounts-sync-storage-keys.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/mediaservices/{accountName}/listEdgePolicies": { + "post": { + "summary": "List the media edge policies associated with the Media Services account.", + "description": "List the media edge policies associated with the Media Services account.", + "operationId": "Mediaservices_ListEdgePolicies", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/EdgePolicies" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../2020-05-01/Common.json#/definitions/ApiError" + } + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "description": "The Media Services account name." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ListEdgePoliciesInput" + }, + "description": "The request parameters" + }, + { + "$ref": "#/parameters/ApiVersion" + } + ], + "x-ms-examples": { + "List the media edge policies.": { + "$ref": "examples/accounts-list-media-edge-policies.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/mediaservices/{accountName}/privateLinkResources": { + "get": { + "summary": "Get list of group IDs.", + "description": "Get list of group IDs.", + "operationId": "PrivateLinkResources_List", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "../../../../../common-types/resource-management/v1/privatelinks.json#/definitions/PrivateLinkResourceListResult" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../2020-05-01/Common.json#/definitions/ApiError" + } + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "description": "The Media Services account name." + }, + { + "$ref": "#/parameters/ApiVersion" + } + ], + "x-ms-examples": { + "Get list of all group IDs.": { + "$ref": "examples/private-link-resources-list.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/mediaservices/{accountName}/privateLinkResources/{name}": { + "get": { + "summary": "Get group ID.", + "description": "Get group ID.", + "operationId": "PrivateLinkResources_Get", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "../../../../../common-types/resource-management/v1/privatelinks.json#/definitions/PrivateLinkResource" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../2020-05-01/Common.json#/definitions/ApiError" + } + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "description": "The Media Services account name." + }, + { + "name": "name", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersion" + } + ], + "x-ms-examples": { + "Get details of a group ID.": { + "$ref": "examples/private-link-resources-get-by-name.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/mediaservices/{accountName}/privateEndpointConnections": { + "get": { + "summary": "Get all private endpoint connections.", + "description": "Get all private endpoint connections.", + "operationId": "PrivateEndpointConnections_List", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "../../../../../common-types/resource-management/v1/privatelinks.json#/definitions/PrivateEndpointConnectionListResult" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../2020-05-01/Common.json#/definitions/ApiError" + } + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "description": "The Media Services account name." + }, + { + "$ref": "#/parameters/ApiVersion" + } + ], + "x-ms-examples": { + "Get all private endpoint connections.": { + "$ref": "examples/private-endpoint-connection-list.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/mediaservices/{accountName}/privateEndpointConnections/{name}": { + "get": { + "summary": "Get private endpoint connection.", + "description": "Get private endpoint connection.", + "operationId": "PrivateEndpointConnections_Get", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "../../../../../common-types/resource-management/v1/privatelinks.json#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../2020-05-01/Common.json#/definitions/ApiError" + } + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "description": "The Media Services account name." + }, + { + "name": "name", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersion" + } + ], + "x-ms-examples": { + "Get private endpoint connection.": { + "$ref": "examples/private-endpoint-connection-get-by-name.json" + } + } + }, + "put": { + "summary": "Update private endpoint connection.", + "description": "Update private endpoint connection.", + "operationId": "PrivateEndpointConnections_CreateOrUpdate", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "../../../../../common-types/resource-management/v1/privatelinks.json#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../2020-05-01/Common.json#/definitions/ApiError" + } + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "description": "The Media Services account name." + }, + { + "name": "name", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "../../../../../common-types/resource-management/v1/privatelinks.json#/definitions/PrivateEndpointConnection" + }, + "description": "The request parameters" + }, + { + "$ref": "#/parameters/ApiVersion" + } + ], + "x-ms-examples": { + "Update private endpoint connection.": { + "$ref": "examples/private-endpoint-connection-put.json" + } + } + }, + "delete": { + "summary": "Delete private endpoint connection.", + "description": "Delete private endpoint connection.", + "operationId": "PrivateEndpointConnections_Delete", + "responses": { + "200": { + "description": "OK" + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../2020-05-01/Common.json#/definitions/ApiError" + } + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "description": "The Media Services account name." + }, + { + "name": "name", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersion" + } + ], + "x-ms-examples": { + "Delete private endpoint connection.": { + "$ref": "examples/private-endpoint-connection-delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Media/locations/{locationName}/checkNameAvailability": { + "post": { + "summary": "Check Name Availability", + "description": "Checks whether the Media Service resource name is available.", + "operationId": "Locations_CheckNameAvailability", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/EntityNameAvailabilityCheckOutput" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../2020-05-01/Common.json#/definitions/ApiError" + } + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "locationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the location" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityInput" + }, + "description": "The request parameters" + }, + { + "$ref": "#/parameters/ApiVersion" + } + ], + "x-ms-examples": { + "Check Name Availability": { + "$ref": "examples/accounts-check-name-availability.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Media/mediaservices": { + "get": { + "summary": "List Media Services accounts", + "description": "List Media Services accounts in the subscription.", + "operationId": "Mediaservices_ListBySubscription", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MediaServiceCollection" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../2020-05-01/Common.json#/definitions/ApiError" + } + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ApiVersion" + } + ], + "x-ms-pageable": { + "nextLinkName": "@odata.nextLink" + }, + "x-ms-examples": { + "List all Media Services accounts": { + "$ref": "examples/accounts-subscription-list-all-accounts.json" + } + } + } + } + }, + "parameters": { + "SubscriptionId": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The unique identifier for a Microsoft Azure subscription." + }, + "ResourceGroupName": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group within the Azure subscription.", + "x-ms-parameter-location": "method" + }, + "ApiVersion": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The version of the API to be used with the client request." + } + } +} diff --git a/specification/mediaservices/resource-manager/Microsoft.Media/stable/2021-05-01/examples/accounts-check-name-availability.json b/specification/mediaservices/resource-manager/Microsoft.Media/stable/2021-05-01/examples/accounts-check-name-availability.json new file mode 100644 index 000000000000..ec514e8f8fbf --- /dev/null +++ b/specification/mediaservices/resource-manager/Microsoft.Media/stable/2021-05-01/examples/accounts-check-name-availability.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "locationName": "japaneast", + "parameters": { + "name": "contosonew", + "type": "Microsoft.Media/MediaService" + }, + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "body": { + "nameAvailable": true, + "reason": "None", + "message": "" + } + } + } +} diff --git a/specification/mediaservices/resource-manager/Microsoft.Media/stable/2021-05-01/examples/accounts-create.json b/specification/mediaservices/resource-manager/Microsoft.Media/stable/2021-05-01/examples/accounts-create.json new file mode 100644 index 000000000000..9507e022ec83 --- /dev/null +++ b/specification/mediaservices/resource-manager/Microsoft.Media/stable/2021-05-01/examples/accounts-create.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "accountName": "contososports", + "api-version": "2021-05-01", + "parameters": { + "location": "South Central US", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "storageAccounts": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso/providers/Microsoft.Storage/storageAccounts/contososportsstore", + "type": "Primary" + } + ] + } + } + }, + "responses": { + "201": { + "body": { + "name": "contososports", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso/providers/Microsoft.Media/mediaservices/contososports", + "type": "Microsoft.Media/mediaservices", + "location": "South Central US", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "mediaServiceId": "42bea25f-1aa9-4f7a-82af-5a417592f22d", + "storageAccounts": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso/providers/Microsoft.Storage/storageAccounts/contososportsstore", + "type": "Primary" + } + ] + } + } + }, + "200": { + "body": { + "name": "contososports", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso/providers/Microsoft.Media/mediaservices/contososports", + "type": "Microsoft.Media/mediaservices", + "location": "South Central US", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "mediaServiceId": "42bea25f-1aa9-4f7a-82af-5a417592f22d", + "storageAccounts": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso/providers/Microsoft.Storage/storageAccounts/contososportsstore", + "type": "Primary" + } + ] + } + } + } + } +} diff --git a/specification/mediaservices/resource-manager/Microsoft.Media/stable/2021-05-01/examples/accounts-delete.json b/specification/mediaservices/resource-manager/Microsoft.Media/stable/2021-05-01/examples/accounts-delete.json new file mode 100644 index 000000000000..44b8c322d53d --- /dev/null +++ b/specification/mediaservices/resource-manager/Microsoft.Media/stable/2021-05-01/examples/accounts-delete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "accountName": "contososports", + "api-version": "2021-05-01" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/mediaservices/resource-manager/Microsoft.Media/stable/2021-05-01/examples/accounts-get-by-name.json b/specification/mediaservices/resource-manager/Microsoft.Media/stable/2021-05-01/examples/accounts-get-by-name.json new file mode 100644 index 000000000000..a26fd73bfaac --- /dev/null +++ b/specification/mediaservices/resource-manager/Microsoft.Media/stable/2021-05-01/examples/accounts-get-by-name.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "accountName": "contosotv", + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "body": { + "name": "contosotv", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso/providers/Microsoft.Media/mediaservices/contosotv", + "type": "Microsoft.Media/mediaservices", + "location": "South Central US", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "mediaServiceId": "6ac94f91-283c-4492-85a7-57976928c17d", + "storageAccounts": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso/providers/Microsoft.Storage/storageAccounts/contosotvstore", + "type": "Primary" + } + ] + } + } + } + } +} diff --git a/specification/mediaservices/resource-manager/Microsoft.Media/stable/2021-05-01/examples/accounts-list-all-accounts.json b/specification/mediaservices/resource-manager/Microsoft.Media/stable/2021-05-01/examples/accounts-list-all-accounts.json new file mode 100644 index 000000000000..fbfc39a490ac --- /dev/null +++ b/specification/mediaservices/resource-manager/Microsoft.Media/stable/2021-05-01/examples/accounts-list-all-accounts.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "contosotv", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso/providers/Microsoft.Media/mediaservices/contosotv", + "type": "Microsoft.Media/mediaservices", + "location": "South Central US", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "mediaServiceId": "6ac94f91-283c-4492-85a7-57976928c17d", + "storageAccounts": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso/providers/Microsoft.Storage/storageAccounts/contosotvstore", + "type": "Primary" + } + ] + } + }, + { + "name": "contosomovies", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso/providers/Microsoft.Media/mediaservices/contosomovies", + "type": "Microsoft.Media/mediaservices", + "location": "South Central US", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "mediaServiceId": "72681c0f-9dd1-4f1c-95c9-8a8d7d31c4ee", + "storageAccounts": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso/providers/Microsoft.Storage/storageAccounts/contosomoviesstore", + "type": "Primary" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/mediaservices/resource-manager/Microsoft.Media/stable/2021-05-01/examples/accounts-list-media-edge-policies.json b/specification/mediaservices/resource-manager/Microsoft.Media/stable/2021-05-01/examples/accounts-list-media-edge-policies.json new file mode 100644 index 000000000000..7c46dbacc38d --- /dev/null +++ b/specification/mediaservices/resource-manager/Microsoft.Media/stable/2021-05-01/examples/accounts-list-media-edge-policies.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "accountName": "contososports", + "api-version": "2021-05-01", + "parameters": { + "deviceId": "contosiothubhost_contosoiotdevice" + } + }, + "responses": { + "200": { + "body": { + "usageDataCollectionPolicy": { + "dataCollectionFrequency": "PT10M", + "dataReportingFrequency": "PT1H", + "maxAllowedUnreportedUsageDuration": "PT36H", + "eventHubDetails": { + "name": "ams-x", + "namespace": "ams-y-1-1", + "token": "SharedAccessSignature sr=sb%3a%2f%2fams-x.servicebus.windows.net%2fams-y-1-1%2fPublishers%2f96a510a1-0565-492a-a67f-83d1aed1d1f6_SampleDeviceId&sig=signature_value%3d&se=1584073736&skn=EdgeUsageData" + } + } + } + } + } +} diff --git a/specification/mediaservices/resource-manager/Microsoft.Media/stable/2021-05-01/examples/accounts-subscription-list-all-accounts.json b/specification/mediaservices/resource-manager/Microsoft.Media/stable/2021-05-01/examples/accounts-subscription-list-all-accounts.json new file mode 100644 index 000000000000..591f78f6f6f8 --- /dev/null +++ b/specification/mediaservices/resource-manager/Microsoft.Media/stable/2021-05-01/examples/accounts-subscription-list-all-accounts.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "contosotv", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso/providers/Microsoft.Media/mediaservices/contosotv", + "type": "Microsoft.Media/mediaservices", + "location": "South Central US", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "mediaServiceId": "6ac94f91-283c-4492-85a7-57976928c17d", + "storageAccounts": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso/providers/Microsoft.Storage/storageAccounts/contosotvstore", + "type": "Primary" + } + ] + } + }, + { + "name": "contosomovies", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso/providers/Microsoft.Media/mediaservices/contosomovies", + "type": "Microsoft.Media/mediaservices", + "location": "South Central US", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "mediaServiceId": "72681c0f-9dd1-4f1c-95c9-8a8d7d31c4ee", + "storageAccounts": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso/providers/Microsoft.Storage/storageAccounts/contosomoviesstore", + "type": "Primary" + } + ] + } + }, + { + "name": "fabrikamnews", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso/providers/Microsoft.Media/mediaservices/fabrikamnews", + "type": "Microsoft.Media/mediaservices", + "location": "East US", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "mediaServiceId": "d96036f9-4e37-491d-8c29-5bc53a29dfcd", + "storageAccounts": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fabrikam/providers/Microsoft.Storage/storageAccounts/fabrikamnewsstore", + "type": "Primary" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/mediaservices/resource-manager/Microsoft.Media/stable/2021-05-01/examples/accounts-sync-storage-keys.json b/specification/mediaservices/resource-manager/Microsoft.Media/stable/2021-05-01/examples/accounts-sync-storage-keys.json new file mode 100644 index 000000000000..07f8108f5788 --- /dev/null +++ b/specification/mediaservices/resource-manager/Microsoft.Media/stable/2021-05-01/examples/accounts-sync-storage-keys.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "accountName": "contososports", + "api-version": "2021-05-01", + "parameters": { + "id": "contososportsstore" + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/mediaservices/resource-manager/Microsoft.Media/stable/2021-05-01/examples/accounts-update.json b/specification/mediaservices/resource-manager/Microsoft.Media/stable/2021-05-01/examples/accounts-update.json new file mode 100644 index 000000000000..6fe37b02c675 --- /dev/null +++ b/specification/mediaservices/resource-manager/Microsoft.Media/stable/2021-05-01/examples/accounts-update.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "accountName": "contososports", + "api-version": "2021-05-01", + "parameters": { + "tags": { + "key1": "value3" + } + } + }, + "responses": { + "200": { + "body": { + "name": "contososports", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso/providers/Microsoft.Media/mediaservices/contososports", + "type": "Microsoft.Media/mediaservices", + "location": "South Central US", + "tags": { + "key1": "value3" + }, + "properties": { + "mediaServiceId": "42bea25f-1aa9-4f7a-82af-5a417592f22d", + "storageAccounts": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso/providers/Microsoft.Storage/storageAccounts/contososportsstore", + "type": "Primary" + } + ] + } + } + } + } +} diff --git a/specification/mediaservices/resource-manager/Microsoft.Media/stable/2021-05-01/examples/operations-list-all.json b/specification/mediaservices/resource-manager/Microsoft.Media/stable/2021-05-01/examples/operations-list-all.json new file mode 100644 index 000000000000..530eeb904efb --- /dev/null +++ b/specification/mediaservices/resource-manager/Microsoft.Media/stable/2021-05-01/examples/operations-list-all.json @@ -0,0 +1,589 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "api-version": "2020-05-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Media/register/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Microsoft Media Services", + "operation": "Registers the Media Services Resource Provider", + "description": "Registers the subscription for the Media Services resource provider and enables the creation of Media Services accounts" + } + }, + { + "name": "Microsoft.Media/unregister/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Microsoft Media Services", + "operation": "Unregisters the Media Services Resource Provider", + "description": "Unregisters the subscription for the Media Services resource provider" + } + }, + { + "name": "Microsoft.Media/checknameavailability/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Microsoft Media Services", + "operation": "Check Name Availability", + "description": "Checks if a Media Services account name is available" + } + }, + { + "name": "Microsoft.Media/operations/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Available Operations", + "operation": "Get Available Operations", + "description": "Get Available Operations" + } + }, + { + "name": "Microsoft.Media/mediaservices/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Media Services Account", + "operation": "Read Media Services Account", + "description": "Read any Media Services Account" + } + }, + { + "name": "Microsoft.Media/mediaservices/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "Media Services Account", + "operation": "Create or Update Media Services Account", + "description": "Create or Update any Media Services Account" + } + }, + { + "name": "Microsoft.Media/mediaservices/delete", + "display": { + "provider": "Microsoft Media Services", + "resource": "Media Services Account", + "operation": "Delete Media Services Account", + "description": "Delete any Media Services Account" + } + }, + { + "name": "Microsoft.Media/mediaservices/syncStorageKeys/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Media Services Account", + "operation": "Synchronize Storage Keys", + "description": "Synchronize the Storage Keys for an attached Azure Storage account" + } + }, + { + "name": "Microsoft.Media/mediaservices/eventGridFilters/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Event Grid Filter", + "operation": "Read Event Grid Filter", + "description": "Read any Event Grid Filter" + } + }, + { + "name": "Microsoft.Media/mediaservices/eventGridFilters/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "Event Grid Filter", + "operation": "Create or Update Event Grid Filter", + "description": "Create or Update any Event Grid Filter" + } + }, + { + "name": "Microsoft.Media/mediaservices/eventGridFilters/delete", + "display": { + "provider": "Microsoft Media Services", + "resource": "Event Grid Filter", + "operation": "Delete Event Grid Filter", + "description": "Delete any Event Grid Filter" + } + }, + { + "name": "Microsoft.Media/mediaservices/assets/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Asset", + "operation": "Read Asset", + "description": "Read any Asset" + } + }, + { + "name": "Microsoft.Media/mediaservices/assets/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "Asset", + "operation": "Create or Update Asset", + "description": "Create or Update any Asset" + } + }, + { + "name": "Microsoft.Media/mediaservices/assets/delete", + "display": { + "provider": "Microsoft Media Services", + "resource": "Asset", + "operation": "Delete Asset", + "description": "Delete any Asset" + } + }, + { + "name": "Microsoft.Media/mediaservices/assets/listContainerSas/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Asset", + "operation": "List Asset Container SAS URLs", + "description": "List Asset Container SAS URLs" + } + }, + { + "name": "Microsoft.Media/mediaservices/assets/getEncryptionKey/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Asset", + "operation": "Get Asset Encryption Key", + "description": "Get Asset Encryption Key" + } + }, + { + "name": "Microsoft.Media/mediaservices/streamingPolicies/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Streaming Policy", + "operation": "Read Streaming Policy", + "description": "Read any Streaming Policy" + } + }, + { + "name": "Microsoft.Media/mediaservices/streamingPolicies/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "Streaming Policy", + "operation": "Create or Update Streaming Policy", + "description": "Create or Update any Streaming Policy" + } + }, + { + "name": "Microsoft.Media/mediaservices/streamingPolicies/delete", + "display": { + "provider": "Microsoft Media Services", + "resource": "Streaming Policy", + "operation": "Delete Streaming Policy", + "description": "Delete any Streaming Policy" + } + }, + { + "name": "Microsoft.Media/mediaservices/streamingLocators/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Streaming Locator", + "operation": "Read Streaming Locator", + "description": "Read any Streaming Locator" + } + }, + { + "name": "Microsoft.Media/mediaservices/streamingLocators/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "Streaming Locator", + "operation": "Create or Update Streaming Locator", + "description": "Create or Update any Streaming Locator" + } + }, + { + "name": "Microsoft.Media/mediaservices/streamingLocators/delete", + "display": { + "provider": "Microsoft Media Services", + "resource": "Streaming Locator", + "operation": "Delete Streaming Locator", + "description": "Delete any Streaming Locator" + } + }, + { + "name": "Microsoft.Media/mediaservices/streamingLocators/listContentKeys/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Streaming Locator", + "operation": "List Content Keys", + "description": "List Content Keys" + } + }, + { + "name": "Microsoft.Media/mediaservices/streamingLocators/listPaths/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Streaming Locator", + "operation": "List Paths", + "description": "List Paths" + } + }, + { + "name": "Microsoft.Media/mediaservices/contentKeyPolicies/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Content Key Policy", + "operation": "Read Content Key Policy", + "description": "Read any Content Key Policy" + } + }, + { + "name": "Microsoft.Media/mediaservices/contentKeyPolicies/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "Content Key Policy", + "operation": "Create or Update Content Key Policy", + "description": "Create or Update any Content Key Policy" + } + }, + { + "name": "Microsoft.Media/mediaservices/contentKeyPolicies/delete", + "display": { + "provider": "Microsoft Media Services", + "resource": "Content Key Policy", + "operation": "Delete Content Key Policy", + "description": "Delete any Content Key Policy" + } + }, + { + "name": "Microsoft.Media/mediaservices/contentKeyPolicies/getPolicyPropertiesWithSecrets/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Content Key Policy", + "operation": "Get Policy Properties With Secrets", + "description": "Get Policy Properties With Secrets" + } + }, + { + "name": "Microsoft.Media/mediaservices/transforms/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Transform", + "operation": "Read Transform", + "description": "Read any Transform" + } + }, + { + "name": "Microsoft.Media/mediaservices/transforms/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "Transform", + "operation": "Create or Update Transform", + "description": "Create or Update any Transform" + } + }, + { + "name": "Microsoft.Media/mediaservices/transforms/delete", + "display": { + "provider": "Microsoft Media Services", + "resource": "Transform", + "operation": "Delete Transform", + "description": "Delete any Transform" + } + }, + { + "name": "Microsoft.Media/mediaservices/transforms/jobs/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Job", + "operation": "Read Job", + "description": "Read any Job" + } + }, + { + "name": "Microsoft.Media/mediaservices/transforms/jobs/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "Job", + "operation": "Create or Update Job", + "description": "Create or Update any Job" + } + }, + { + "name": "Microsoft.Media/mediaservices/transforms/jobs/delete", + "display": { + "provider": "Microsoft Media Services", + "resource": "Job", + "operation": "Delete Job", + "description": "Delete any Job" + } + }, + { + "name": "Microsoft.Media/mediaservices/transforms/jobs/cancelJob/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Job", + "operation": "Cancel Job", + "description": "Cancel Job" + } + }, + { + "name": "Microsoft.Media/mediaservices/streamingEndpoints/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Streaming Endpoint", + "operation": "Read Streaming Endpoint", + "description": "Read any Streaming Endpoint" + } + }, + { + "name": "Microsoft.Media/mediaservices/streamingEndpoints/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "Streaming Endpoint", + "operation": "Create or Update Streaming Endpoint", + "description": "Create or Update any Streaming Endpoint" + } + }, + { + "name": "Microsoft.Media/mediaservices/streamingEndpoints/delete", + "display": { + "provider": "Microsoft Media Services", + "resource": "Streaming Endpoint", + "operation": "Delete Streaming Endpoint", + "description": "Delete any Streaming Endpoint" + } + }, + { + "name": "Microsoft.Media/mediaservices/streamingEndpoints/start/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Streaming Endpoint", + "operation": "Start Streaming Endpoint Operation", + "description": "Start any Streaming Endpoint Operation" + } + }, + { + "name": "Microsoft.Media/mediaservices/streamingEndpoints/stop/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Streaming Endpoint", + "operation": "Stop Streaming Endpoint Operation", + "description": "Stop any Streaming Endpoint Operation" + } + }, + { + "name": "Microsoft.Media/mediaservices/streamingEndpoints/scale/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Streaming Endpoint", + "operation": "Scale Streaming Endpoint Operation", + "description": "Scale any Streaming Endpoint Operation" + } + }, + { + "name": "Microsoft.Media/mediaservices/streamingEndpoints/providers/Microsoft.Insights/diagnosticSettings/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Streaming Endpoints", + "operation": "Read diagnostic setting", + "description": "Gets the diagnostic setting for the resource." + }, + "origin": "system" + }, + { + "name": "Microsoft.Media/mediaservices/streamingEndpoints/providers/Microsoft.Insights/diagnosticSettings/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "Streaming Endpoints", + "operation": "Write diagnostic setting", + "description": "Creates or updates the diagnostic setting for the resource." + }, + "origin": "system" + }, + { + "name": "Microsoft.Media/mediaservices/streamingEndpoints/providers/Microsoft.Insights/metricDefinitions/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Streaming Endpoints", + "operation": "Get list of Media Services Streaming Endpoint Metrics definitions.", + "description": "Get list of Media Services Streaming Endpoint Metrics definitions." + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "metricSpecifications": [ + { + "name": "Egress", + "displayName": "Egress", + "displayDescription": "The amount of Egress data, in bytes.", + "unit": "Bytes", + "aggregationType": "Total", + "dimensions": [ + { + "name": "OutputFormat", + "displayName": "Output Format", + "toBeExportedForShoebox": true + } + ] + }, + { + "name": "SuccessE2ELatency", + "displayName": "Success end to end Latency", + "displayDescription": "The average latency for successful requests in milliseconds.", + "unit": "Milliseconds", + "aggregationType": "Average", + "dimensions": [ + { + "name": "OutputFormat", + "displayName": "Output Format", + "toBeExportedForShoebox": true + } + ] + }, + { + "name": "Requests", + "displayName": "Requests", + "displayDescription": "Requests to a Streaming Endpoint.", + "unit": "Count", + "aggregationType": "Count", + "dimensions": [ + { + "name": "OutputFormat", + "displayName": "Output Format", + "toBeExportedForShoebox": true + }, + { + "name": "HttpStatusCode", + "displayName": "HTTP Status Code", + "toBeExportedForShoebox": true + }, + { + "name": "ErrorCode", + "displayName": "Error Code", + "toBeExportedForShoebox": false + } + ] + } + ] + } + } + }, + { + "name": "Microsoft.Media/mediaservices/liveEvents/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Live Event", + "operation": "Read Live Event", + "description": "Read any Live Event" + } + }, + { + "name": "Microsoft.Media/mediaservices/liveEvents/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "Live Event", + "operation": "Create or Update Live Event", + "description": "Create or Update any Live Event" + } + }, + { + "name": "Microsoft.Media/mediaservices/liveEvents/delete", + "display": { + "provider": "Microsoft Media Services", + "resource": "Live Event", + "operation": "Delete Live Event", + "description": "Delete any Live Event" + } + }, + { + "name": "Microsoft.Media/mediaservices/liveEvents/start/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Live Event", + "operation": "Start Live Event Operation", + "description": "Start any Live Event Operation" + } + }, + { + "name": "Microsoft.Media/mediaservices/liveEvents/stop/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Live Event", + "operation": "Stop Live Event Operation", + "description": "Stop any Live Event Operation" + } + }, + { + "name": "Microsoft.Media/mediaservices/liveEvents/reset/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Live Event", + "operation": "Reset Live Event Operation", + "description": "Reset any Live Event Operation" + } + }, + { + "name": "Microsoft.Media/mediaservices/liveEvents/liveOutputs/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Live Output", + "operation": "Read Live Output", + "description": "Read any Live Output" + } + }, + { + "name": "Microsoft.Media/mediaservices/liveEvents/liveOutputs/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "Live Output", + "operation": "Create or Update Live Output", + "description": "Create or Update any Live Output" + } + }, + { + "name": "Microsoft.Media/mediaservices/liveEvents/liveOutputs/delete", + "display": { + "provider": "Microsoft Media Services", + "resource": "Live Output", + "operation": "Delete Live Output", + "description": "Delete any Live Output" + } + }, + { + "name": "Microsoft.Media/mediaservices/streamingEndpointOperations/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Streaming Endpoint Operation", + "operation": "Read Streaming Endpoint Operation", + "description": "Read any Streaming Endpoint Operation" + } + }, + { + "name": "Microsoft.Media/mediaservices/liveEventOperations/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Live Event Operation", + "operation": "Read Live Event Operation", + "description": "Read any Live Event Operation" + } + }, + { + "name": "Microsoft.Media/mediaservices/liveOutputOperations/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Live Output Operation", + "operation": "Read Live Output Operation", + "description": "Read any Live Output Operation" + } + }, + { + "name": "Microsoft.Media/locations/checkNameAvailability/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Microsoft Media Services", + "operation": "Check Name Availability", + "description": "Checks if a Media Services account name is available" + } + } + ] + } + } + } +} diff --git a/specification/mediaservices/resource-manager/Microsoft.Media/stable/2021-05-01/examples/private-endpoint-connection-delete.json b/specification/mediaservices/resource-manager/Microsoft.Media/stable/2021-05-01/examples/private-endpoint-connection-delete.json new file mode 100644 index 000000000000..ddc3608e5cab --- /dev/null +++ b/specification/mediaservices/resource-manager/Microsoft.Media/stable/2021-05-01/examples/private-endpoint-connection-delete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "accountName": "contososports", + "name": "connectionName1", + "api-version": "2020-05-01" + }, + "responses": { + "200": {} + } +} diff --git a/specification/mediaservices/resource-manager/Microsoft.Media/stable/2021-05-01/examples/private-endpoint-connection-get-by-name.json b/specification/mediaservices/resource-manager/Microsoft.Media/stable/2021-05-01/examples/private-endpoint-connection-get-by-name.json new file mode 100644 index 000000000000..859c2857b95a --- /dev/null +++ b/specification/mediaservices/resource-manager/Microsoft.Media/stable/2021-05-01/examples/private-endpoint-connection-get-by-name.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "accountName": "contososports", + "name": "connectionName1", + "api-version": "2020-05-01" + }, + "responses": { + "200": { + "body": { + "name": "connectionName1", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fabrikam/providers/Microsoft.Media/mediaservices/contososports/privateEndpointConnections/connectionName1", + "type": "Microsoft.Media/mediaservices/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Test description." + }, + "privateEndpoint": { + "id": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/reosuceGroup1/providers/Microsoft.Network/privateEndpoints/privateEndpointName1" + } + } + } + } + } +} diff --git a/specification/mediaservices/resource-manager/Microsoft.Media/stable/2021-05-01/examples/private-endpoint-connection-list.json b/specification/mediaservices/resource-manager/Microsoft.Media/stable/2021-05-01/examples/private-endpoint-connection-list.json new file mode 100644 index 000000000000..785b32db5fb0 --- /dev/null +++ b/specification/mediaservices/resource-manager/Microsoft.Media/stable/2021-05-01/examples/private-endpoint-connection-list.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "accountName": "contososports", + "api-version": "2020-05-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "cn1", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fabrikam/providers/Microsoft.Media/mediaservices/contososports/privateEndpointConnections/cn1", + "type": "Microsoft.Media/mediaservices/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Test description" + }, + "privateEndpoint": { + "id": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/reosuceGroup1/providers/Microsoft.Network/privateEndpoints/pe1" + } + } + }, + { + "name": "cn2", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fabrikam/providers/Microsoft.Media/mediaservices/contososports/privateEndpointConnections/cn2", + "type": "Microsoft.Media/mediaservices/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "Test description" + }, + "privateEndpoint": { + "id": "/subscriptions/22222222-2222-2222-2222-222222222222/resourceGroups/reosuceGroup2/providers/Microsoft.Network/privateEndpoints/pe2" + } + } + } + ] + } + } + } +} diff --git a/specification/mediaservices/resource-manager/Microsoft.Media/stable/2021-05-01/examples/private-endpoint-connection-put.json b/specification/mediaservices/resource-manager/Microsoft.Media/stable/2021-05-01/examples/private-endpoint-connection-put.json new file mode 100644 index 000000000000..03ee510a3286 --- /dev/null +++ b/specification/mediaservices/resource-manager/Microsoft.Media/stable/2021-05-01/examples/private-endpoint-connection-put.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "accountName": "contososports", + "name": "connectionName1", + "api-version": "2020-05-01", + "parameters": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Test description." + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "connectionName1", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fabrikam/providers/Microsoft.Media/mediaservices/contososports/privateEndpointConnections/connectionName1", + "type": "Microsoft.Media/mediaservices/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Test description." + }, + "privateEndpoint": { + "id": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/reosuceGroup1/providers/Microsoft.Network/privateEndpoints/privateEndpointName1" + } + } + } + } + } +} diff --git a/specification/mediaservices/resource-manager/Microsoft.Media/stable/2021-05-01/examples/private-link-resources-get-by-name.json b/specification/mediaservices/resource-manager/Microsoft.Media/stable/2021-05-01/examples/private-link-resources-get-by-name.json new file mode 100644 index 000000000000..7ef5ee153fcd --- /dev/null +++ b/specification/mediaservices/resource-manager/Microsoft.Media/stable/2021-05-01/examples/private-link-resources-get-by-name.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "accountName": "contososports", + "name": "keydelivery", + "api-version": "2020-05-01" + }, + "responses": { + "200": { + "body": { + "name": "keydelivery", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fabrikam/providers/Microsoft.Media/mediaservices/contososports/privateLinkResources/keydelivery", + "type": "Microsoft.Media/mediaservices/privateLinkResources", + "properties": { + "groupId": "keydelivery", + "requiredMembers": [ + "keydelivery" + ] + } + } + } + } +} diff --git a/specification/mediaservices/resource-manager/Microsoft.Media/stable/2021-05-01/examples/private-link-resources-list.json b/specification/mediaservices/resource-manager/Microsoft.Media/stable/2021-05-01/examples/private-link-resources-list.json new file mode 100644 index 000000000000..5aa331ad27fd --- /dev/null +++ b/specification/mediaservices/resource-manager/Microsoft.Media/stable/2021-05-01/examples/private-link-resources-list.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "accountName": "contososports", + "api-version": "2020-05-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "keydelivery", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fabrikam/providers/Microsoft.Media/mediaservices/contososports/privateLinkResources/keydelivery", + "type": "Microsoft.Media/mediaservices/privateLinkResources", + "properties": { + "groupId": "keydelivery", + "requiredMembers": [ + "keydelivery" + ] + } + } + ] + } + } + } +} diff --git a/specification/mediaservices/resource-manager/readme.azureresourceschema.md b/specification/mediaservices/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 7dd1ee754fbb..000000000000 --- a/specification/mediaservices/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,139 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-media-2020-05-01 - - tag: schema-media-2020-02-01-preview - - tag: schema-media-2019-09-01-preview - - tag: schema-media-2019-05-01-preview - - tag: schema-media-2018-07-01 - - tag: schema-media-2018-06-01-preview - - tag: schema-media-2018-03-30-preview - - tag: schema-media-2015-10-01 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-media-2020-05-01 and azureresourceschema - -``` yaml $(tag) == 'schema-media-2020-05-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Media/stable/2020-05-01/AccountFilters.json - - Microsoft.Media/stable/2020-05-01/Accounts.json - - Microsoft.Media/stable/2020-05-01/AssetsAndAssetFilters.json - - Microsoft.Media/stable/2020-05-01/ContentKeyPolicies.json - - Microsoft.Media/stable/2020-05-01/Encoding.json - - Microsoft.Media/stable/2020-05-01/StreamingPoliciesAndStreamingLocators.json - - Microsoft.Media/stable/2020-05-01/streamingservice.json - - Microsoft.Media/stable/2020-05-01/Common.json - -``` - -### Tag: schema-media-2020-02-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-media-2020-02-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Media/preview/2020-02-01-preview/MediaGraphs.json - -``` - -### Tag: schema-media-2019-09-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-media-2019-09-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Media/preview/2019-09-01-preview/MediaGraphs.json - -``` - -### Tag: schema-media-2019-05-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-media-2019-05-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Media/preview/2019-05-01-preview/AccountFilters.json - - Microsoft.Media/preview/2019-05-01-preview/Accounts.json - - Microsoft.Media/preview/2019-05-01-preview/AssetsAndAssetFilters.json - - Microsoft.Media/preview/2019-05-01-preview/Common.json - - Microsoft.Media/preview/2019-05-01-preview/ContentKeyPolicies.json - - Microsoft.Media/preview/2019-05-01-preview/Encoding.json - - Microsoft.Media/preview/2019-05-01-preview/StreamingPoliciesAndStreamingLocators.json - - Microsoft.Media/preview/2019-05-01-preview/streamingservice.json - -``` - -### Tag: schema-media-2018-07-01 and azureresourceschema - -``` yaml $(tag) == 'schema-media-2018-07-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Media/stable/2018-07-01/AccountFilters.json - - Microsoft.Media/stable/2018-07-01/Accounts.json - - Microsoft.Media/stable/2018-07-01/AssetsAndAssetFilters.json - - Microsoft.Media/stable/2018-07-01/ContentKeyPolicies.json - - Microsoft.Media/stable/2018-07-01/Encoding.json - - Microsoft.Media/stable/2018-07-01/StreamingPoliciesAndStreamingLocators.json - - Microsoft.Media/stable/2018-07-01/streamingservice.json - - Microsoft.Media/stable/2018-07-01/Common.json - -``` - -### Tag: schema-media-2018-06-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-media-2018-06-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Media/preview/2018-06-01-preview/Accounts.json - - Microsoft.Media/preview/2018-06-01-preview/Assets.json - - Microsoft.Media/preview/2018-06-01-preview/ContentKeyPolicies.json - - Microsoft.Media/preview/2018-06-01-preview/Encoding.json - - Microsoft.Media/preview/2018-06-01-preview/StreamingPoliciesAndStreamingLocators.json - - Microsoft.Media/preview/2018-06-01-preview/streamingservice.json - -``` - -### Tag: schema-media-2018-03-30-preview and azureresourceschema - -``` yaml $(tag) == 'schema-media-2018-03-30-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Media/preview/2018-03-30-preview/Accounts.json - - Microsoft.Media/preview/2018-03-30-preview/Assets.json - - Microsoft.Media/preview/2018-03-30-preview/ContentKeyPolicies.json - - Microsoft.Media/preview/2018-03-30-preview/Encoding.json - - Microsoft.Media/preview/2018-03-30-preview/StreamingPoliciesAndStreamingLocators.json - - Microsoft.Media/preview/2018-03-30-preview/streamingservice.json - -``` - -### Tag: schema-media-2015-10-01 and azureresourceschema - -``` yaml $(tag) == 'schema-media-2015-10-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Media/stable/2015-10-01/media.json - -``` diff --git a/specification/mediaservices/resource-manager/readme.go.md b/specification/mediaservices/resource-manager/readme.go.md index 67b27da0d748..c788504d54bf 100644 --- a/specification/mediaservices/resource-manager/readme.go.md +++ b/specification/mediaservices/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ```yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: media clear-output-folder: true ``` @@ -13,6 +13,7 @@ go: ```yaml $(go) && $(multiapi) batch: + - tag: package-2021-05 - tag: package-2020-05 - tag: package-2015-10 - tag: package-2018-03-preview @@ -21,6 +22,15 @@ batch: - tag: package-2019-05-preview ``` +### Tag: package-2021-05 and go + +These settings apply only when `--tag=package-2021-05 --go` is specified on the command line. +Please also specify the `--go-sdk-folder=`. + +```yaml $(tag) == 'package-2021-05' && $(go) +output-folder: $(go-sdk-folder)/services/mediaservices/mgmt/2021-05-01/$(namespace) +``` + ### Tag: package-2020-05 and go These settings apply only when `--tag=package-2020-05 --go` is specified on the command line. diff --git a/specification/mediaservices/resource-manager/readme.md b/specification/mediaservices/resource-manager/readme.md index 146b30c69b18..a929be237871 100644 --- a/specification/mediaservices/resource-manager/readme.md +++ b/specification/mediaservices/resource-manager/readme.md @@ -24,12 +24,31 @@ To see additional help and options, run: These are the global settings for the MediaServices API. -``` yaml +```yaml openapi-type: arm -tag: package-2020-05 +tag: package-2021-05 opt-in-extensible-enums: true ``` +### Tag: package-2021-05 + +These settings apply only when `--tag=package-2021-05` is specified on the command line. + +```yaml $(tag) == 'package-2021-05' +input-file: + - Microsoft.Media/stable/2020-05-01/AccountFilters.json + - Microsoft.Media/stable/2021-05-01/Accounts.json + - Microsoft.Media/stable/2020-05-01/AssetsAndAssetFilters.json + - Microsoft.Media/stable/2020-05-01/ContentKeyPolicies.json + - Microsoft.Media/stable/2020-05-01/Encoding.json + - Microsoft.Media/stable/2020-05-01/StreamingPoliciesAndStreamingLocators.json + - Microsoft.Media/stable/2020-05-01/streamingservice.json + - Microsoft.Media/stable/2020-05-01/Common.json +directive: + - suppress: R2016 + where: $.definitions.TrackedResource.required + reason: location is a required property for our patch calls +``` ### Tag: package-2020-05 @@ -50,11 +69,12 @@ directive: where: $.definitions.TrackedResource.required reason: location is a required property for our patch calls ``` + ### Tag: package-2020-02-preview These settings apply only when `--tag=package-2020-02-preview` is specified on the command line. -``` yaml $(tag) == 'package-2020-02-preview' +```yaml $(tag) == 'package-2020-02-preview' input-file: - Microsoft.Media/stable/2018-07-01/AccountFilters.json - Microsoft.Media/stable/2018-07-01/Accounts.json @@ -70,7 +90,7 @@ input-file: These settings apply only when `--tag=package-2019-09-preview` is specified on the command line. -``` yaml $(tag) == 'package-2019-09-preview' +```yaml $(tag) == 'package-2019-09-preview' input-file: - Microsoft.Media/stable/2018-07-01/AccountFilters.json - Microsoft.Media/stable/2018-07-01/Accounts.json @@ -86,7 +106,7 @@ input-file: These settings apply only when `--tag=package-2019-05-preview` is specified on the command line. -``` yaml $(tag) == 'package-2019-05-preview' +```yaml $(tag) == 'package-2019-05-preview' input-file: - Microsoft.Media/preview/2019-05-01-preview/AccountFilters.json - Microsoft.Media/preview/2019-05-01-preview/Accounts.json @@ -102,7 +122,7 @@ input-file: These settings apply only when `--tag=package-2018-07` is specified on the command line. -``` yaml $(tag) == 'package-2018-07' +```yaml $(tag) == 'package-2018-07' input-file: - Microsoft.Media/stable/2018-07-01/AccountFilters.json - Microsoft.Media/stable/2018-07-01/Accounts.json @@ -118,37 +138,37 @@ input-file: These settings apply only when `--tag=package-2015-10` is specified on the command line. -``` yaml $(tag) == 'package-2015-10' +```yaml $(tag) == 'package-2015-10' input-file: -- Microsoft.Media/stable/2015-10-01/media.json + - Microsoft.Media/stable/2015-10-01/media.json ``` ### 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' +```yaml $(tag) == 'package-2018-03-preview' input-file: -- Microsoft.Media/preview/2018-03-30-preview/Accounts.json -- Microsoft.Media/preview/2018-03-30-preview/Assets.json -- Microsoft.Media/preview/2018-03-30-preview/ContentKeyPolicies.json -- Microsoft.Media/preview/2018-03-30-preview/Encoding.json -- Microsoft.Media/preview/2018-03-30-preview/StreamingPoliciesAndStreamingLocators.json -- Microsoft.Media/preview/2018-03-30-preview/streamingservice.json + - Microsoft.Media/preview/2018-03-30-preview/Accounts.json + - Microsoft.Media/preview/2018-03-30-preview/Assets.json + - Microsoft.Media/preview/2018-03-30-preview/ContentKeyPolicies.json + - Microsoft.Media/preview/2018-03-30-preview/Encoding.json + - Microsoft.Media/preview/2018-03-30-preview/StreamingPoliciesAndStreamingLocators.json + - Microsoft.Media/preview/2018-03-30-preview/streamingservice.json ``` ### Tag: package-2018-06-preview These settings apply only when `--tag=package-2018-06-preview` is specified on the command line. -``` yaml $(tag) == 'package-2018-06-preview' +```yaml $(tag) == 'package-2018-06-preview' input-file: -- Microsoft.Media/preview/2018-06-01-preview/Accounts.json -- Microsoft.Media/preview/2018-06-01-preview/Assets.json -- Microsoft.Media/preview/2018-06-01-preview/ContentKeyPolicies.json -- Microsoft.Media/preview/2018-06-01-preview/Encoding.json -- Microsoft.Media/preview/2018-06-01-preview/StreamingPoliciesAndStreamingLocators.json -- Microsoft.Media/preview/2018-06-01-preview/streamingservice.json + - Microsoft.Media/preview/2018-06-01-preview/Accounts.json + - Microsoft.Media/preview/2018-06-01-preview/Assets.json + - Microsoft.Media/preview/2018-06-01-preview/ContentKeyPolicies.json + - Microsoft.Media/preview/2018-06-01-preview/Encoding.json + - Microsoft.Media/preview/2018-06-01-preview/StreamingPoliciesAndStreamingLocators.json + - Microsoft.Media/preview/2018-06-01-preview/streamingservice.json ``` --- @@ -160,10 +180,11 @@ input-file: This section describes what SDK should be generated by the automatic system. This is not used by Autorest itself. -``` yaml $(swagger-to-sdk) +```yaml $(swagger-to-sdk) swagger-to-sdk: - repo: azure-sdk-for-net - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-java - repo: azure-sdk-for-go - repo: azure-sdk-for-js @@ -172,16 +193,14 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_media_services'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js mediaservices/resource-manager ``` -## C# +## C These settings apply only when `--csharp` is specified on the command line. Please also specify `--csharp-sdks-folder=`. -``` yaml $(csharp) +```yaml $(csharp) csharp: # last generated from commit 3586e2989d502434c4f607dd38d40e46aabede5c azure-arm: true @@ -206,7 +225,7 @@ See configuration in [readme.java.md](./readme.java.md) ## Suppression -``` yaml +```yaml directive: - suppress: OBJECT_MISSING_REQUIRED_PROPERTY from: Encoding.json @@ -218,7 +237,3 @@ directive: reason: Output not required for job update ``` -## AzureResourceSchema - -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) - diff --git a/specification/mediaservices/resource-manager/readme.python.md b/specification/mediaservices/resource-manager/readme.python.md index bd2af28ac223..5744ff7aafa0 100644 --- a/specification/mediaservices/resource-manager/readme.python.md +++ b/specification/mediaservices/resource-manager/readme.python.md @@ -12,6 +12,7 @@ python: payload-flattening-threshold: 2 namespace: azure.mgmt.media package-name: azure-mgmt-media + package-version: 1.0.0b1 clear-output-folder: true ``` ``` yaml $(python) && $(track2) @@ -20,6 +21,7 @@ azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION namespace: azure.mgmt.media package-name: azure-mgmt-media +package-version: 1.0.0b1 clear-output-folder: true ``` diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/stable/2019-10-01/examples/ImportCollectors_Create.json b/specification/migrate/resource-manager/Microsoft.Migrate/stable/2019-10-01/examples/ImportCollectors_Create.json new file mode 100644 index 000000000000..8e2a0d3ed652 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/stable/2019-10-01/examples/ImportCollectors_Create.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "resourceGroupName": "markusavstestrg", + "api-version": "2019-10-01", + "subscriptionId": "31be0ff4-c932-4cb3-8efc-efa411d79280", + "projectName": "rajoshCCY9671project", + "importCollectorName": "importCollector2952", + "CollectorBody": { + "id": "/subscriptions/31be0ff4-c932-4cb3-8efc-efa411d79280/resourceGroups/markusavstestrg/providers/Microsoft.Migrate/assessmentprojects/rajoshCCY9671project/importcollectors/importCollector2951", + "name": "importCollector2951", + "eTag": "\"000064a2-0000-3300-0000-605994800000\"", + "type": "Microsoft.Migrate/assessmentprojects/importcollectors", + "properties": { + "discoverySiteId": "/subscriptions/31be0ff4-c932-4cb3-8efc-efa411d79280/resourcegroups/MarkusAVStestRG/providers/microsoft.offazure/importsites/rajoshCCY54cbimportSite" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/31be0ff4-c932-4cb3-8efc-efa411d79280/resourceGroups/markusavstestrg/providers/Microsoft.Migrate/assessmentprojects/rajoshCCY9671project/importcollectors/importCollector2952", + "name": "importCollector2952", + "eTag": "\"0000a7a2-0000-3300-0000-6059964d0000\"", + "type": "Microsoft.Migrate/assessmentprojects/importcollectors", + "properties": { + "discoverySiteId": "/subscriptions/31be0ff4-c932-4cb3-8efc-efa411d79280/resourcegroups/MarkusAVStestRG/providers/microsoft.offazure/importsites/rajoshCCY54cbimportSite", + "createdTimestamp": "2021-03-23T07:18:37.2247735Z", + "updatedTimestamp": "2021-03-23T07:18:37.2247735Z" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/31be0ff4-c932-4cb3-8efc-efa411d79280/resourceGroups/markusavstestrg/providers/Microsoft.Migrate/assessmentprojects/rajoshCCY9671project/importcollectors/importCollector2952", + "name": "importCollector2952", + "eTag": "\"0000a7a2-0000-3300-0000-6059964d0000\"", + "type": "Microsoft.Migrate/assessmentprojects/importcollectors", + "properties": { + "discoverySiteId": "/subscriptions/31be0ff4-c932-4cb3-8efc-efa411d79280/resourcegroups/MarkusAVStestRG/providers/microsoft.offazure/importsites/rajoshCCY54cbimportSite", + "createdTimestamp": "2021-03-23T07:18:37.2247735Z", + "updatedTimestamp": "2021-03-23T07:18:37.2247735Z" + } + } + } + } +} diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/stable/2019-10-01/examples/ImportCollectors_Delete.json b/specification/migrate/resource-manager/Microsoft.Migrate/stable/2019-10-01/examples/ImportCollectors_Delete.json new file mode 100644 index 000000000000..0022a0aae2ef --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/stable/2019-10-01/examples/ImportCollectors_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "resourceGroupName": "markusavstestrg", + "api-version": "2019-10-01", + "subscriptionId": "31be0ff4-c932-4cb3-8efc-efa411d79280", + "projectName": "rajoshCCY9671project", + "importCollectorName": "importCollector2952" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/stable/2019-10-01/examples/ImportCollectors_Get.json b/specification/migrate/resource-manager/Microsoft.Migrate/stable/2019-10-01/examples/ImportCollectors_Get.json new file mode 100644 index 000000000000..874f761f3a1d --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/stable/2019-10-01/examples/ImportCollectors_Get.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "resourceGroupName": "markusavstestrg", + "api-version": "2019-10-01", + "subscriptionId": "31be0ff4-c932-4cb3-8efc-efa411d79280", + "projectName": "rajoshCCY9671project", + "importCollectorName": "importCollector2951" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/31be0ff4-c932-4cb3-8efc-efa411d79280/resourceGroups/markusavstestrg/providers/Microsoft.Migrate/assessmentprojects/rajoshCCY9671project/importcollectors/importCollector2951", + "name": "importCollector2951", + "eTag": "\"000064a2-0000-3300-0000-605994800000\"", + "type": "Microsoft.Migrate/assessmentprojects/importcollectors", + "properties": { + "discoverySiteId": "/subscriptions/31be0ff4-c932-4cb3-8efc-efa411d79280/resourcegroups/MarkusAVStestRG/providers/microsoft.offazure/importsites/rajoshCCY54cbimportSite", + "createdTimestamp": "2021-02-11T04:46:54.9582099Z", + "updatedTimestamp": "2021-03-23T07:10:56.3588497Z" + } + } + } + } +} diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/stable/2019-10-01/examples/ImportCollectors_ListByProject.json b/specification/migrate/resource-manager/Microsoft.Migrate/stable/2019-10-01/examples/ImportCollectors_ListByProject.json new file mode 100644 index 000000000000..e88b99f1d8ca --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/stable/2019-10-01/examples/ImportCollectors_ListByProject.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "resourceGroupName": "markusavstestrg", + "api-version": "2019-10-01", + "subscriptionId": "31be0ff4-c932-4cb3-8efc-efa411d79280", + "projectName": "rajoshCCY9671project" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/31be0ff4-c932-4cb3-8efc-efa411d79280/resourceGroups/markusavstestrg/providers/Microsoft.Migrate/assessmentprojects/rajoshCCY9671project/importcollectors/importCollector2951", + "name": "importCollector2951", + "eTag": "\"000098a2-0000-3300-0000-605995620000\"", + "type": "Microsoft.Migrate/assessmentprojects/importcollectors", + "properties": { + "discoverySiteId": "/subscriptions/31be0ff4-c932-4cb3-8efc-efa411d79280/resourcegroups/MarkusAVStestRG/providers/microsoft.offazure/importsites/rajoshCCY54cbimportSite", + "createdTimestamp": "2021-02-11T04:46:54.9582099Z", + "updatedTimestamp": "2021-03-23T07:14:42.9238657Z" + } + } + ] + } + } + } +} diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/stable/2019-10-01/examples/PrivateEndpointConnections_Create.json b/specification/migrate/resource-manager/Microsoft.Migrate/stable/2019-10-01/examples/PrivateEndpointConnections_Create.json new file mode 100644 index 000000000000..01e97f4e81af --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/stable/2019-10-01/examples/PrivateEndpointConnections_Create.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "resourceGroupName": "abgoyal-westEurope", + "api-version": "2019-10-01", + "subscriptionId": "6393a73f-8d55-47ef-b6dd-179b3e0c7910", + "projectName": "abgoyalWEselfhostb72bproject", + "privateEndpointConnectionName": "custestpece80project3980pe.7e35576b-3df4-478e-9759-f64351cf4f43", + "privateEndpointConnectionBody": { + "eTag": "\"00009300-0000-0300-0000-602b967b0000\"", + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": null, + "actionsRequired": "" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "custestpece80project3980pe.7e35576b-3df4-478e-9759-f64351cf4f43", + "type": "Microsoft.Migrate/assessmentprojects/privateEndpointConnections", + "eTag": "\"00009300-0000-0300-0000-602b967b0000\"", + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/madhavicus/providers/Microsoft.Migrate/assessmentprojects/custestpece80project/privateEndpointConnections/custestpece80project3980pe.7e35576b-3df4-478e-9759-f64351cf4f43", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/31be0ff4-c932-4cb3-8efc-efa411d79280/resourceGroups/PrivLink-SelfHost/providers/Microsoft.Network/privateEndpoints/custestpece80project3980pe" + }, + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": null, + "actionsRequired": "" + } + } + } + }, + "202": { + "body": { + "name": "custestpece80project3980pe.7e35576b-3df4-478e-9759-f64351cf4f43", + "type": "Microsoft.Migrate/assessmentprojects/privateEndpointConnections", + "eTag": "\"00009300-0000-0300-0000-602b967b0000\"", + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/madhavicus/providers/Microsoft.Migrate/assessmentprojects/custestpece80project/privateEndpointConnections/custestpece80project3980pe.7e35576b-3df4-478e-9759-f64351cf4f43", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/31be0ff4-c932-4cb3-8efc-efa411d79280/resourceGroups/PrivLink-SelfHost/providers/Microsoft.Network/privateEndpoints/custestpece80project3980pe" + }, + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": null, + "actionsRequired": "" + } + } + } + } + } +} diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/stable/2019-10-01/examples/PrivateEndpointConnections_Delete.json b/specification/migrate/resource-manager/Microsoft.Migrate/stable/2019-10-01/examples/PrivateEndpointConnections_Delete.json new file mode 100644 index 000000000000..d1a263f54298 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/stable/2019-10-01/examples/PrivateEndpointConnections_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "resourceGroupName": "abgoyal-westEurope", + "api-version": "2019-10-01", + "subscriptionId": "6393a73f-8d55-47ef-b6dd-179b3e0c7910", + "projectName": "abgoyalWEselfhostb72bproject", + "privateEndpointConnectionName": "custestpece80project3980pe.7e35576b-3df4-478e-9759-f64351cf4f43" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/stable/2019-10-01/examples/PrivateEndpointConnections_Get.json b/specification/migrate/resource-manager/Microsoft.Migrate/stable/2019-10-01/examples/PrivateEndpointConnections_Get.json new file mode 100644 index 000000000000..14e36c4390a5 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/stable/2019-10-01/examples/PrivateEndpointConnections_Get.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "resourceGroupName": "abgoyal-westEurope", + "api-version": "2019-10-01", + "subscriptionId": "6393a73f-8d55-47ef-b6dd-179b3e0c7910", + "projectName": "abgoyalWEselfhostb72bproject", + "privateEndpointConnectionName": "custestpece80project3980pe.7e35576b-3df4-478e-9759-f64351cf4f43" + }, + "responses": { + "200": { + "body": { + "name": "custestpece80project3980pe.7e35576b-3df4-478e-9759-f64351cf4f43", + "type": "Microsoft.Migrate/assessmentprojects/privateEndpointConnections", + "eTag": "\"00009300-0000-0300-0000-602b967b0000\"", + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/madhavicus/providers/Microsoft.Migrate/assessmentprojects/custestpece80project/privateEndpointConnections/custestpece80project3980pe.7e35576b-3df4-478e-9759-f64351cf4f43", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/31be0ff4-c932-4cb3-8efc-efa411d79280/resourceGroups/PrivLink-SelfHost/providers/Microsoft.Network/privateEndpoints/custestpece80project3980pe" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": null, + "actionsRequired": "" + } + } + } + } + } +} diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/stable/2019-10-01/examples/PrivateEndpointConnections_ListByProject.json b/specification/migrate/resource-manager/Microsoft.Migrate/stable/2019-10-01/examples/PrivateEndpointConnections_ListByProject.json new file mode 100644 index 000000000000..9da5c1e62397 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/stable/2019-10-01/examples/PrivateEndpointConnections_ListByProject.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "resourceGroupName": "abgoyal-westEurope", + "api-version": "2019-10-01", + "subscriptionId": "6393a73f-8d55-47ef-b6dd-179b3e0c7910", + "projectName": "abgoyalWEselfhostb72bproject" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "custestpece80project3980pe.7e35576b-3df4-478e-9759-f64351cf4f43", + "type": "Microsoft.Migrate/assessmentprojects/privateEndpointConnections", + "eTag": "\"00009300-0000-0300-0000-602b967b0000\"", + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/madhavicus/providers/Microsoft.Migrate/assessmentprojects/custestpece80project/privateEndpointConnections/custestpece80project3980pe.7e35576b-3df4-478e-9759-f64351cf4f43", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/31be0ff4-c932-4cb3-8efc-efa411d79280/resourceGroups/PrivLink-SelfHost/providers/Microsoft.Network/privateEndpoints/custestpece80project3980pe" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": null, + "actionsRequired": "" + } + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/stable/2019-10-01/examples/PrivateLinkResources_Get.json b/specification/migrate/resource-manager/Microsoft.Migrate/stable/2019-10-01/examples/PrivateLinkResources_Get.json new file mode 100644 index 000000000000..7308d2e44100 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/stable/2019-10-01/examples/PrivateLinkResources_Get.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "resourceGroupName": "madhavicus", + "api-version": "2019-10-01", + "subscriptionId": "4bd2aa0f-2bd2-4d67-91a8-5a4533d58600", + "projectName": "custestpece80project", + "privateLinkResourceName": "Default" + }, + "responses": { + "200": { + "body": { + "name": "Default", + "type": "Microsoft.Migrate/assessmentprojects/privateLinkResources", + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/madhavicus/providers/Microsoft.Migrate/assessmentprojects/custestpece80project/privateLinkResources/Default", + "properties": { + "requiredMembers": [ + "CollectorAgent" + ], + "requiredZoneNames": [ + "privatelink.prod.migration.windowsazure.com" + ], + "groupId": "Default" + } + } + } + } +} diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/stable/2019-10-01/examples/PrivateLinkResources_ListByProject.json b/specification/migrate/resource-manager/Microsoft.Migrate/stable/2019-10-01/examples/PrivateLinkResources_ListByProject.json new file mode 100644 index 000000000000..f7cfe2dfea64 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/stable/2019-10-01/examples/PrivateLinkResources_ListByProject.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "resourceGroupName": "madhavicus", + "api-version": "2019-10-01", + "subscriptionId": "4bd2aa0f-2bd2-4d67-91a8-5a4533d58600", + "projectName": "custestpece80project" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Default", + "type": "Microsoft.Migrate/assessmentprojects/privateLinkResources", + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/madhavicus/providers/Microsoft.Migrate/assessmentprojects/custestpece80project/privateLinkResources/Default", + "properties": { + "requiredMembers": [ + "CollectorAgent" + ], + "requiredZoneNames": [ + "privatelink.prod.migration.windowsazure.com" + ], + "groupId": "Default" + } + } + ] + } + } + } +} diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/stable/2019-10-01/examples/ServerCollectors_Create.json b/specification/migrate/resource-manager/Microsoft.Migrate/stable/2019-10-01/examples/ServerCollectors_Create.json new file mode 100644 index 000000000000..b6b3d660b0d0 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/stable/2019-10-01/examples/ServerCollectors_Create.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "resourceGroupName": "pajindtest", + "api-version": "2019-10-01", + "subscriptionId": "4bd2aa0f-2bd2-4d67-91a8-5a4533d58600", + "projectName": "app11141project", + "serverCollectorName": "app23df4collector", + "collectorBody": { + "eTag": "\"00000606-0000-0d00-0000-605999bf0000\"", + "properties": { + "agentProperties": { + "spnDetails": { + "authority": "https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47", + "applicationId": "ad9f701a-cc08-4421-b51f-b5762d58e9ba", + "audience": "https://72f988bf-86f1-41af-91ab-2d7cd011db47/app23df4authandaccessaadapp", + "objectId": "b4975e42-9248-4a36-b99f-37eca377ea00", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47" + } + }, + "discoverySiteId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/ServerSites/app21141site" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindtest/providers/Microsoft.Migrate/assessmentprojects/app11141project/servercollectors/app23df4collector", + "name": "app23df4collector", + "eTag": "\"00000606-0000-0d00-0000-605999bf0000\"", + "type": "Microsoft.Migrate/assessmentprojects/servercollectors", + "properties": { + "agentProperties": { + "id": "dc984f5a-58a3-4f84-818c-a19febefa66a", + "version": "1.0.8.393", + "lastHeartbeatUtc": "2020-09-17T03:51:30.2069337Z", + "spnDetails": { + "authority": "https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47", + "applicationId": "ad9f701a-cc08-4421-b51f-b5762d58e9ba", + "audience": "https://72f988bf-86f1-41af-91ab-2d7cd011db47/app23df4authandaccessaadapp", + "objectId": "b4975e42-9248-4a36-b99f-37eca377ea00", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47" + } + }, + "discoverySiteId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/ServerSites/app21141site", + "createdTimestamp": "2020-09-11T07:15:52.4361521Z", + "updatedTimestamp": "2021-03-23T07:33:19.697297Z" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindtest/providers/Microsoft.Migrate/assessmentprojects/app11141project/servercollectors/app23df4collector", + "name": "app23df4collector", + "eTag": "\"00000606-0000-0d00-0000-605999bf0000\"", + "type": "Microsoft.Migrate/assessmentprojects/servercollectors", + "properties": { + "agentProperties": { + "id": "dc984f5a-58a3-4f84-818c-a19febefa66a", + "version": "1.0.8.393", + "lastHeartbeatUtc": "2020-09-17T03:51:30.2069337Z", + "spnDetails": { + "authority": "https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47", + "applicationId": "ad9f701a-cc08-4421-b51f-b5762d58e9ba", + "audience": "https://72f988bf-86f1-41af-91ab-2d7cd011db47/app23df4authandaccessaadapp", + "objectId": "b4975e42-9248-4a36-b99f-37eca377ea00", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47" + } + }, + "discoverySiteId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/ServerSites/app21141site", + "createdTimestamp": "2020-09-11T07:15:52.4361521Z", + "updatedTimestamp": "2021-03-23T07:33:19.697297Z" + } + } + } + } +} diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/stable/2019-10-01/examples/ServerCollectors_Delete.json b/specification/migrate/resource-manager/Microsoft.Migrate/stable/2019-10-01/examples/ServerCollectors_Delete.json new file mode 100644 index 000000000000..14ad8cc8ab72 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/stable/2019-10-01/examples/ServerCollectors_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "resourceGroupName": "pajindtest", + "api-version": "2019-10-01", + "subscriptionId": "4bd2aa0f-2bd2-4d67-91a8-5a4533d58600", + "projectName": "app11141project", + "serverCollectorName": "app23df4collector" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/stable/2019-10-01/examples/ServerCollectors_Get.json b/specification/migrate/resource-manager/Microsoft.Migrate/stable/2019-10-01/examples/ServerCollectors_Get.json new file mode 100644 index 000000000000..12afc013212b --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/stable/2019-10-01/examples/ServerCollectors_Get.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "resourceGroupName": "pajindtest", + "api-version": "2019-10-01", + "subscriptionId": "4bd2aa0f-2bd2-4d67-91a8-5a4533d58600", + "projectName": "app11141project", + "serverCollectorName": "app23df4collector" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindtest/providers/Microsoft.Migrate/assessmentprojects/app11141project/servercollectors/app23df4collector", + "name": "app23df4collector", + "eTag": "\"00000606-0000-0d00-0000-605999bf0000\"", + "type": "Microsoft.Migrate/assessmentprojects/servercollectors", + "properties": { + "agentProperties": { + "id": "dc984f5a-58a3-4f84-818c-a19febefa66a", + "version": "1.0.8.393", + "lastHeartbeatUtc": "2020-09-17T03:51:30.2069337Z", + "spnDetails": { + "authority": "https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47", + "applicationId": "ad9f701a-cc08-4421-b51f-b5762d58e9ba", + "audience": "https://72f988bf-86f1-41af-91ab-2d7cd011db47/app23df4authandaccessaadapp", + "objectId": "b4975e42-9248-4a36-b99f-37eca377ea00", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47" + } + }, + "discoverySiteId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/ServerSites/app21141site", + "createdTimestamp": "2020-09-11T07:15:52.4361521Z", + "updatedTimestamp": "2021-03-23T07:33:19.697297Z" + } + } + } + } +} diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/stable/2019-10-01/examples/ServerCollectors_ListByProject.json b/specification/migrate/resource-manager/Microsoft.Migrate/stable/2019-10-01/examples/ServerCollectors_ListByProject.json new file mode 100644 index 000000000000..ecb627453faa --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/stable/2019-10-01/examples/ServerCollectors_ListByProject.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "resourceGroupName": "pajindtest", + "api-version": "2019-10-01", + "subscriptionId": "4bd2aa0f-2bd2-4d67-91a8-5a4533d58600", + "projectName": "app11141project" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindtest/providers/Microsoft.Migrate/assessmentprojects/app11141project/servercollectors/app23df4collector", + "name": "app23df4collector", + "eTag": "\"00000606-0000-0d00-0000-605999bf0000\"", + "type": "Microsoft.Migrate/assessmentprojects/servercollectors", + "properties": { + "agentProperties": { + "id": "dc984f5a-58a3-4f84-818c-a19febefa66a", + "version": "1.0.8.393", + "lastHeartbeatUtc": "2020-09-17T03:51:30.2069337Z", + "spnDetails": { + "authority": "https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47", + "applicationId": "ad9f701a-cc08-4421-b51f-b5762d58e9ba", + "audience": "https://72f988bf-86f1-41af-91ab-2d7cd011db47/app23df4authandaccessaadapp", + "objectId": "b4975e42-9248-4a36-b99f-37eca377ea00", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47" + } + }, + "discoverySiteId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/ServerSites/app21141site", + "createdTimestamp": "2020-09-11T07:15:52.4361521Z", + "updatedTimestamp": "2021-03-23T07:33:19.697297Z" + } + } + ] + } + } + } +} diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/stable/2019-10-01/migrate.json b/specification/migrate/resource-manager/Microsoft.Migrate/stable/2019-10-01/migrate.json index 69d6ce32caf7..68a01ced66c2 100644 --- a/specification/migrate/resource-manager/Microsoft.Migrate/stable/2019-10-01/migrate.json +++ b/specification/migrate/resource-manager/Microsoft.Migrate/stable/2019-10-01/migrate.json @@ -91,6 +91,38 @@ "x-ms-parameter-location": "method", "required": true }, + "serverCollectorName": { + "name": "serverCollectorName", + "description": "Unique name of a Server collector within a project.", + "type": "string", + "in": "path", + "x-ms-parameter-location": "method", + "required": true + }, + "importCollectorName": { + "name": "importCollectorName", + "description": "Unique name of a Import collector within a project.", + "type": "string", + "in": "path", + "x-ms-parameter-location": "method", + "required": true + }, + "privateLinkResourceName": { + "name": "privateLinkResourceName", + "description": "Unique name of a private link resource within a project.", + "type": "string", + "in": "path", + "x-ms-parameter-location": "method", + "required": true + }, + "privateEndpointConnectionName": { + "name": "privateEndpointConnectionName", + "description": "Unique name of a private endpoint connection within a project.", + "type": "string", + "in": "path", + "x-ms-parameter-location": "method", + "required": true + }, "assessmentOptionsName": { "name": "assessmentOptionsName", "description": "Name of the assessment options. The only name accepted in default.", @@ -237,6 +269,22 @@ "x-nullable": true, "readOnly": true }, + "publicNetworkAccess": { + "type": "string", + "description": "This value can be set to 'enabled' to avoid breaking changes on existing customer resources and templates. If set to 'disabled', traffic over public interface is not allowed, and private endpoint connections would be the exclusive access method." + }, + "privateEndpointConnections": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "The list of private endpoint connections to the project.", + "readOnly": true + }, + "customerStorageAccountArmId": { + "type": "string", + "description": "The ARM id of the storage account used for interactions when public access is disabled." + }, "provisioningState": { "type": "string", "enum": [ @@ -341,6 +389,10 @@ "format": "date-time", "description": "Time when this group was last updated. Date-Time represented in ISO-8601 format.", "readOnly": true + }, + "groupType": { + "type": "string", + "description": "The type of group." } } }, @@ -1985,6 +2037,22 @@ } } }, + "ImportCollectorProperties": { + "type": "object", + "properties": { + "discoverySiteId": { + "type": "string" + }, + "createdTimestamp": { + "type": "string", + "readOnly": true + }, + "updatedTimestamp": { + "type": "string", + "readOnly": true + } + } + }, "VMwareCollector": { "type": "object", "x-ms-azure-resource": true, @@ -2009,6 +2077,54 @@ } } }, + "ServerCollector": { + "type": "object", + "x-ms-azure-resource": true, + "properties": { + "eTag": { + "type": "string" + }, + "id": { + "type": "string", + "readOnly": true + }, + "name": { + "type": "string", + "readOnly": true + }, + "type": { + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/CollectorProperties" + } + } + }, + "ImportCollector": { + "type": "object", + "x-ms-azure-resource": true, + "properties": { + "eTag": { + "type": "string" + }, + "id": { + "type": "string", + "readOnly": true + }, + "name": { + "type": "string", + "readOnly": true + }, + "type": { + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/ImportCollectorProperties" + } + } + }, "HyperVCollectorList": { "type": "object", "description": "List of Hyper-V collectors.", @@ -2035,6 +2151,32 @@ } } }, + "ServerCollectorList": { + "type": "object", + "description": "List of Server collectors.", + "properties": { + "value": { + "type": "array", + "description": "List of Server collectors.", + "items": { + "$ref": "#/definitions/ServerCollector" + } + } + } + }, + "ImportCollectorList": { + "type": "object", + "description": "List of Import collectors.", + "properties": { + "value": { + "type": "array", + "description": "List of Import collectors.", + "items": { + "$ref": "#/definitions/ImportCollector" + } + } + } + }, "VmFamily": { "type": "object", "description": "VM family name, the list of targeted azure locations and the category of the family.", @@ -2169,6 +2311,190 @@ } } } + }, + "PrivateEndpointConnectionCollection": { + "type": "object", + "description": "A collection of private endpoint connections for a project.", + "properties": { + "value": { + "type": "array", + "description": "A list of private endpoint connections for a project.", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "readOnly": true + }, + "nextLink": { + "type": "string", + "readOnly": true + } + } + }, + "PrivateEndpointConnection": { + "type": "object", + "x-ms-azure-resource": true, + "required": [ + "properties" + ], + "description": "A private endpoint connection for a project.", + "properties": { + "name": { + "type": "string", + "description": "Name of the private endpoint endpoint connection.", + "readOnly": true + }, + "type": { + "type": "string", + "description": "Type of the object = [Microsoft.Migrate/assessmentProjects/privateEndpointConnections].", + "readOnly": true + }, + "eTag": { + "type": "string", + "description": "For optimistic concurrency control." + }, + "id": { + "type": "string", + "description": "Path reference to this private endpoint endpoint connection. /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/assessmentProjects/{projectName}/privateEndpointConnections/{privateEndpointConnectionName}", + "readOnly": true + }, + "properties": { + "description": "Properties of the private endpoint endpoint connection.", + "$ref": "#/definitions/PrivateEndpointConnectionProperties" + } + } + }, + "PrivateEndpointConnectionProperties": { + "type": "object", + "description": "Private endpoint connection properties.", + "properties": { + "provisioningState": { + "enum": [ + "Accepted", + "InProgress", + "Succeeded", + "Failed" + ], + "type": "string", + "description": "Indicates whether there is an ongoing operation on the private endpoint.", + "readOnly": true + }, + "privateEndpoint": { + "description": "ARM id for the private endpoint resource corresponding to the connection.", + "$ref": "#/definitions/ResourceId", + "readOnly": true + }, + "privateLinkServiceConnectionState": { + "description": "State of the private endpoint connection.", + "$ref": "#/definitions/PrivateLinkServiceConnectionState" + } + } + }, + "ResourceId": { + "type": "object", + "description": "ARM id for a resource.", + "properties": { + "id": { + "type": "string", + "readOnly": true + } + } + }, + "PrivateLinkServiceConnectionState": { + "type": "object", + "description": "State of a private endpoint connection.", + "properties": { + "status": { + "enum": [ + "Approved", + "Pending", + "Rejected", + "Disconnected" + ], + "type": "string", + "description": "Connection status of the private endpoint connection." + }, + "description": { + "type": "string", + "description": "Description of the private endpoint connection." + }, + "actionsRequired": { + "type": "string", + "description": "Actions required on the private endpoint connection." + } + } + }, + "PrivateLinkResource": { + "type": "object", + "x-ms-azure-resource": true, + "description": "A private link resource for a project for which a private endpoint can be created.", + "properties": { + "name": { + "type": "string", + "description": "Name of the private link resource.", + "readOnly": true + }, + "type": { + "type": "string", + "description": "Type of the object = [Microsoft.Migrate/assessmentProjects/privateLinkResources].", + "readOnly": true + }, + "id": { + "type": "string", + "description": "Path reference to this private link resource. /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/assessmentProjects/{projectName}/privateLinkResources/{privateLinkResourceName}", + "readOnly": true + }, + "properties": { + "description": "Properties of the private link resource.", + "$ref": "#/definitions/PrivateLinkResourceProperties", + "readOnly": true + } + } + }, + "PrivateLinkResourceProperties": { + "description": "Properties of a private link resource.", + "type": "object", + "properties": { + "requiredMembers": { + "description": "The private link resource required member names.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "requiredZoneNames": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "description": "Required DNS zone names of the the private link resource." + }, + "groupId": { + "description": "The private link resource group id.", + "type": "string", + "readOnly": true + } + } + }, + "PrivateLinkResourceCollection": { + "type": "object", + "description": "A list of private link resources", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } } }, "paths": { @@ -3579,11 +3905,11 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/assessmentProjects/{projectName}/vmwarecollectors": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/assessmentProjects/{projectName}/servercollectors": { "get": { - "summary": "Get a list of VMware collector.", - "description": "Get a list of VMware collector.", - "operationId": "VMwareCollectors_ListByProject", + "summary": "Get a list of Server collector.", + "description": "Get a list of Server collector.", + "operationId": "ServerCollectors_ListByProject", "parameters": [ { "$ref": "#/parameters/subscriptionId" @@ -3600,7 +3926,7 @@ ], "responses": { "200": { - "description": "OK. Returns list of VMware collectors.", + "description": "OK. Returns list of Server collectors.", "headers": { "x-ms-request-id": { "type": "string", @@ -3608,7 +3934,7 @@ } }, "schema": { - "$ref": "#/definitions/VMwareCollectorList" + "$ref": "#/definitions/ServerCollectorList" } }, "default": { @@ -3622,17 +3948,17 @@ "nextLinkName": null }, "x-ms-examples": { - "VMwareCollectors_ListByProject": { - "$ref": "./examples/VMwareCollectors_ListByProject.json" + "ServerCollectors_ListByProject": { + "$ref": "./examples/ServerCollectors_ListByProject.json" } } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/assessmentProjects/{projectName}/vmwarecollectors/{vmWareCollectorName}": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/assessmentProjects/{projectName}/servercollectors/{serverCollectorName}": { "get": { - "summary": "Get a VMware collector.", - "description": "Get a VMware collector.", - "operationId": "VMwareCollectors_Get", + "summary": "Get a Server collector.", + "description": "Get a Server collector.", + "operationId": "ServerCollectors_Get", "parameters": [ { "$ref": "#/parameters/subscriptionId" @@ -3644,7 +3970,7 @@ "$ref": "#/parameters/projectName" }, { - "$ref": "#/parameters/vmWareCollectorName" + "$ref": "#/parameters/serverCollectorName" }, { "$ref": "#/parameters/api-version" @@ -3652,7 +3978,7 @@ ], "responses": { "200": { - "description": "OK. Returns the specific VMware collector.", + "description": "OK. Returns the specific Server collector.", "headers": { "x-ms-request-id": { "type": "string", @@ -3660,7 +3986,7 @@ } }, "schema": { - "$ref": "#/definitions/VMwareCollector" + "$ref": "#/definitions/ServerCollector" } }, "default": { @@ -3671,14 +3997,226 @@ } }, "x-ms-examples": { - "VMwareCollectors_Get": { - "$ref": "./examples/VMwareCollectors_Get.json" + "ServerCollectors_Get": { + "$ref": "./examples/ServerCollectors_Get.json" } } }, "put": { - "summary": "Create or Update VMware collector.", - "description": "Create or Update VMware collector", + "summary": "Create or Update Server collector.", + "description": "Create or Update Server collector", + "operationId": "ServerCollectors_Create", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/serverCollectorName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "name": "collectorBody", + "description": "New or Updated Server collector.", + "in": "body", + "schema": { + "$ref": "#/definitions/ServerCollector" + } + } + ], + "responses": { + "200": { + "description": "OK. Existing Server collector.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + }, + "schema": { + "$ref": "#/definitions/ServerCollector" + } + }, + "201": { + "description": "Created. New Server collector was created.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + }, + "schema": { + "$ref": "#/definitions/ServerCollector" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ServerCollectors_Create": { + "$ref": "./examples/ServerCollectors_Create.json" + } + } + }, + "delete": { + "summary": "Deletes Server collector from the project.", + "description": "Delete a Server collector from the project.", + "operationId": "ServerCollectors_Delete", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/serverCollectorName" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK. Deleted the Server collector.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + } + }, + "204": { + "description": "No content. No Server collector with specified name was found." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ServerCollectors_Delete": { + "$ref": "./examples/ServerCollectors_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/assessmentProjects/{projectName}/vmwarecollectors": { + "get": { + "summary": "Get a list of VMware collector.", + "description": "Get a list of VMware collector.", + "operationId": "VMwareCollectors_ListByProject", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK. Returns list of VMware collectors.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + }, + "schema": { + "$ref": "#/definitions/VMwareCollectorList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "VMwareCollectors_ListByProject": { + "$ref": "./examples/VMwareCollectors_ListByProject.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/assessmentProjects/{projectName}/vmwarecollectors/{vmWareCollectorName}": { + "get": { + "summary": "Get a VMware collector.", + "description": "Get a VMware collector.", + "operationId": "VMwareCollectors_Get", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/vmWareCollectorName" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK. Returns the specific VMware collector.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + }, + "schema": { + "$ref": "#/definitions/VMwareCollector" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "VMwareCollectors_Get": { + "$ref": "./examples/VMwareCollectors_Get.json" + } + } + }, + "put": { + "summary": "Create or Update VMware collector.", + "description": "Create or Update VMware collector", "operationId": "VMwareCollectors_Create", "parameters": [ { @@ -3791,6 +4329,523 @@ } } }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/assessmentProjects/{projectName}/importcollectors": { + "get": { + "summary": "Get a list of Import collector.", + "description": "Get a list of Import collector.", + "operationId": "ImportCollectors_ListByProject", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK. Returns list of Import collectors.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + }, + "schema": { + "$ref": "#/definitions/ImportCollectorList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "ImportCollectors_ListByProject": { + "$ref": "./examples/ImportCollectors_ListByProject.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/assessmentProjects/{projectName}/importcollectors/{importCollectorName}": { + "get": { + "summary": "Get a Import collector.", + "description": "Get a Import collector.", + "operationId": "ImportCollectors_Get", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/importCollectorName" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK. Returns the specific Import collector.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + }, + "schema": { + "$ref": "#/definitions/ImportCollector" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ImportCollectors_Get": { + "$ref": "./examples/ImportCollectors_Get.json" + } + } + }, + "put": { + "summary": "Create or Update Import collector.", + "description": "Create or Update Import collector", + "operationId": "ImportCollectors_Create", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/importCollectorName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "name": "collectorBody", + "description": "New or Updated Import collector.", + "in": "body", + "schema": { + "$ref": "#/definitions/ImportCollector" + } + } + ], + "responses": { + "200": { + "description": "OK. Existing Import collector.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + }, + "schema": { + "$ref": "#/definitions/ImportCollector" + } + }, + "201": { + "description": "Created. New Import collector was created.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + }, + "schema": { + "$ref": "#/definitions/ImportCollector" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ImportCollectors_Create": { + "$ref": "./examples/ImportCollectors_Create.json" + } + } + }, + "delete": { + "summary": "Deletes Import collector from the project.", + "description": "Delete a Import collector from the project.", + "operationId": "ImportCollectors_Delete", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/importCollectorName" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK. Deleted the Import collector.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + } + }, + "204": { + "description": "No content. No Import collector with specified name was found." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ImportCollectors_Delete": { + "$ref": "./examples/ImportCollectors_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/assessmentprojects/{projectName}/privateEndpointConnections": { + "get": { + "summary": "Get all private endpoint connections", + "description": "Get all private endpoint connections in the project. Returns a json array of objects of type 'privateEndpointConnections' as specified in the Models section.", + "operationId": "PrivateEndpointConnection_ListByProject", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + }, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "PrivateEndpointConnections_ListByProject": { + "$ref": "./examples/PrivateEndpointConnections_ListByProject.json" + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/assessmentprojects/{projectName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "summary": "Get a private endpoint connection in the project.", + "description": "Get information related to a specific private endpoint connection in the project. Returns a json object of type 'privateEndpointConnections' as specified in the models section.", + "operationId": "PrivateEndpointConnection_Get", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/privateEndpointConnectionName" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + }, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "PrivateEndpointConnections_Get": { + "$ref": "./examples/PrivateEndpointConnections_Get.json" + } + } + }, + "put": { + "summary": "Update a private endpoint connection in the project.", + "description": "Update a specific private endpoint connection in the project.", + "operationId": "PrivateEndpointConnection_Update", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/privateEndpointConnectionName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "name": "privateEndpointConnectionBody", + "in": "body", + "description": "New or Updated Private Endpoint Connection object.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + } + ], + "responses": { + "200": { + "description": "OK", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + }, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "202": { + "description": "Accepted. Update request is queued for processing.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + }, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "PrivateEndpointConnections_Create": { + "$ref": "./examples/PrivateEndpointConnections_Create.json" + } + } + }, + "delete": { + "summary": "Delete the private endpoint connection", + "description": "Delete the private endpoint connection from the project. T.\n", + "operationId": "PrivateEndpointConnection_Delete", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/privateEndpointConnectionName" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + } + }, + "204": { + "description": "No content. No project with specified name was found." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "PrivateEndpointConnections_Delete": { + "$ref": "./examples/PrivateEndpointConnections_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/assessmentprojects/{projectName}/privateLinkResources/{privateLinkResourceName}": { + "get": { + "summary": "Get a specific private Link Resource.", + "description": "Get information related to a specific private Link Resource in the project. Returns a json object of type 'privateLinkResources' as specified in the models section.", + "operationId": "PrivateLinkResource_Get", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/privateLinkResourceName" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + }, + "schema": { + "$ref": "#/definitions/PrivateLinkResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "PrivateLinkResources_Get": { + "$ref": "./examples/PrivateLinkResources_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/assessmentprojects/{projectName}/privateLinkResources": { + "get": { + "summary": "Get all private link resources", + "description": "Get all private link resources created in the project. Returns a json array of objects of type 'privateLinkResources' as specified in the Models section.", + "operationId": "PrivateLinkResource_ListByProject", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + }, + "schema": { + "$ref": "#/definitions/PrivateLinkResourceCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "PrivateLinkResources_ListByProject": { + "$ref": "./examples/PrivateLinkResources_ListByProject.json" + } + } + } + }, "/providers/Microsoft.Migrate/operations": { "get": { "summary": "Get list of operations supported in the API.", diff --git a/specification/migrate/resource-manager/readme.azureresourceschema.md b/specification/migrate/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 48e3a39e8a41..000000000000 --- a/specification/migrate/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,60 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-offazure-2020-07-07 - - tag: schema-offazure-2020-01-01 - - tag: schema-migrate-2019-10-01 - - tag: schema-migrate-2018-02-02 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-offazure-2020-07-07 and azureresourceschema - -``` yaml $(tag) == 'schema-offazure-2020-07-07' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.OffAzure/stable/2020-07-07/migrate.json - -``` - -### Tag: schema-offazure-2020-01-01 and azureresourceschema - -``` yaml $(tag) == 'schema-offazure-2020-01-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.OffAzure/stable/2020-01-01/migrate.json - -``` - -### Tag: schema-migrate-2019-10-01 and azureresourceschema - -``` yaml $(tag) == 'schema-migrate-2019-10-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Migrate/stable/2019-10-01/migrate.json - -``` - -### Tag: schema-migrate-2018-02-02 and azureresourceschema - -``` yaml $(tag) == 'schema-migrate-2018-02-02' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Migrate/stable/2018-02-02/migrate.json - -``` diff --git a/specification/migrate/resource-manager/readme.go.md b/specification/migrate/resource-manager/readme.go.md index f0a272b6aae2..97b23eb56606 100644 --- a/specification/migrate/resource-manager/readme.go.md +++ b/specification/migrate/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION clear-output-folder: true namespace: migrate ``` diff --git a/specification/migrate/resource-manager/readme.md b/specification/migrate/resource-manager/readme.md index 2326d12504d6..9ad05e0cb0b2 100644 --- a/specification/migrate/resource-manager/readme.md +++ b/specification/migrate/resource-manager/readme.md @@ -70,7 +70,7 @@ These are the global settings for the API. ``` yaml openapi-type: arm -tag: package-2018-09 +tag: package-2019-10 ``` ### Tag: package-2018-02 @@ -127,15 +127,11 @@ swagger-to-sdk: - repo: azure-sdk-for-js - repo: azure-sdk-for-node - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js migrate/resource-manager ``` ## Go See configuration in [readme.go.md](./readme.go.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/migrateprojects/resource-manager/readme.azureresourceschema.md b/specification/migrateprojects/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 53d53c148b61..000000000000 --- a/specification/migrateprojects/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,24 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-migrate-2018-09-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-migrate-2018-09-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-migrate-2018-09-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Migrate/preview/2018-09-01-preview/migrate.json - -``` diff --git a/specification/migrateprojects/resource-manager/readme.md b/specification/migrateprojects/resource-manager/readme.md index 3b4299f2cf5d..8a87829dcf02 100644 --- a/specification/migrateprojects/resource-manager/readme.md +++ b/specification/migrateprojects/resource-manager/readme.md @@ -70,8 +70,6 @@ This is not used by Autorest itself. swagger-to-sdk: - repo: azure-sdk-for-go - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js migrateprojects/resource-manager ``` ## Go @@ -101,7 +99,5 @@ Please also specify `--go-sdk-folder=`. - -### Tag: schema-mixedreality-2021-03-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-mixedreality-2021-03-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.MixedReality/preview/2021-03-01-preview/proxy.json - - Microsoft.MixedReality/preview/2021-03-01-preview/spatial-anchors.json - - Microsoft.MixedReality/preview/2021-03-01-preview/remote-rendering.json - - Microsoft.MixedReality/preview/2021-03-01-preview/object-anchors.json - -``` - -### Tag: schema-mixedreality-2021-01-01 and azureresourceschema - -``` yaml $(tag) == 'schema-mixedreality-2021-01-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.MixedReality/stable/2021-01-01/proxy.json - - Microsoft.MixedReality/stable/2021-01-01/spatial-anchors.json - - Microsoft.MixedReality/stable/2021-01-01/remote-rendering.json - -``` - -### Tag: schema-mixedreality-2020-05-01 and azureresourceschema - -``` yaml $(tag) == 'schema-mixedreality-2020-05-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.MixedReality/stable/2020-05-01/proxy.json - - Microsoft.MixedReality/stable/2020-05-01/spatial-anchors.json - -``` - -### Tag: schema-mixedreality-2020-04-06-preview and azureresourceschema - -``` yaml $(tag) == 'schema-mixedreality-2020-04-06-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.MixedReality/preview/2020-04-06-preview/remote-rendering.json - - Microsoft.MixedReality/preview/2020-04-06-preview/proxy.json - -``` - -### Tag: schema-mixedreality-2019-12-02-preview and azureresourceschema - -``` yaml $(tag) == 'schema-mixedreality-2019-12-02-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.MixedReality/preview/2019-12-02-preview/proxy.json - - Microsoft.MixedReality/preview/2019-12-02-preview/remote-rendering.json - - Microsoft.MixedReality/preview/2019-12-02-preview/spatial-anchors.json - -``` - -### Tag: schema-mixedreality-2019-02-28-preview and azureresourceschema - -``` yaml $(tag) == 'schema-mixedreality-2019-02-28-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.MixedReality/preview/2019-02-28-preview/mixedreality.json - -``` diff --git a/specification/mixedreality/resource-manager/readme.go.md b/specification/mixedreality/resource-manager/readme.go.md index e71e8196387e..dccc746dbeb3 100644 --- a/specification/mixedreality/resource-manager/readme.go.md +++ b/specification/mixedreality/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: mixedreality clear-output-folder: true ``` diff --git a/specification/mixedreality/resource-manager/readme.md b/specification/mixedreality/resource-manager/readme.md index 22a47621716f..24e9224d3a85 100644 --- a/specification/mixedreality/resource-manager/readme.md +++ b/specification/mixedreality/resource-manager/readme.md @@ -162,13 +162,11 @@ This is not used by Autorest itself. ``` yaml $(swagger-to-sdk) swagger-to-sdk: - repo: azure-sdk-for-net - - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-js - repo: azure-sdk-for-go - repo: azure-sdk-for-java - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js mixedreality/resource-manager ``` ## C# @@ -188,55 +186,7 @@ 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) && !$(track2) -python-mode: create -python: - azure-arm: true - license-header: MICROSOFT_MIT_NO_VERSION - payload-flattening-threshold: 2 - namespace: azure.mgmt.mixedreality - package-name: azure-mgmt-mixedreality - package-version: 0.0.1 - clear-output-folder: true -``` - -``` yaml $(python) && $(track2) -python-mode: update -azure-arm: true -license-header: MICROSOFT_MIT_NO_VERSION -namespace: azure.mgmt.mixedreality -package-name: azure-mgmt-mixedreality -package-version: 0.0.1 -clear-output-folder: true -modelerfour: - lenient-model-deduplication: true -``` - -``` yaml $(python) && $(python-mode) == 'update' && !$(track2) -python: - no-namespace-folders: true - output-folder: $(python-sdks-folder)/mixedreality/azure-mgmt-mixedreality/azure/mgmt/mixedreality -``` - -``` yaml $(python) && $(python-mode) == 'create' && !$(track2) -python: - basic-setup-py: true - output-folder: $(python-sdks-folder)/mixedreality/azure-mgmt-mixedreality -``` - -``` yaml $(python) && $(python-mode) == 'update' && $(track2) -no-namespace-folders: true -output-folder: $(python-sdks-folder)/mixedreality/azure-mgmt-mixedreality/azure/mgmt/mixedreality -``` - -``` yaml $(python) && $(python-mode) == 'create' && $(track2) -basic-setup-py: true -output-folder: $(python-sdks-folder)/mixedreality/azure-mgmt-mixedreality -``` +See configuration in [readme.pyhton.md](./readme.python.md) ## Go @@ -246,6 +196,4 @@ See configuration in [readme.go.md](./readme.go.md) See configuration in [readme.java.md](./readme.java.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/mixedreality/resource-manager/readme.python.md b/specification/mixedreality/resource-manager/readme.python.md index 42b8bbb07273..92015bf92be1 100644 --- a/specification/mixedreality/resource-manager/readme.python.md +++ b/specification/mixedreality/resource-manager/readme.python.md @@ -1,4 +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: update +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +namespace: azure.mgmt.mixedreality +package-name: azure-mgmt-mixedreality +package-version: 0.0.1 +clear-output-folder: true +modelerfour: + lenient-model-deduplication: true +``` + +``` yaml $(python) && $(python-mode) == 'update' +no-namespace-folders: true +output-folder: $(python-sdks-folder)/mixedreality/azure-mgmt-mixedreality/azure/mgmt/mixedreality +``` + +``` yaml $(python) && $(python-mode) == 'create' +basic-setup-py: true +output-folder: $(python-sdks-folder)/mixedreality/azure-mgmt-mixedreality +``` \ No newline at end of file diff --git a/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-05-01-preview/examples/GetMetric.json b/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-05-01-preview/examples/GetMetric.json index 07251092bf57..5d03e5a4e1b8 100644 --- a/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-05-01-preview/examples/GetMetric.json +++ b/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-05-01-preview/examples/GetMetric.json @@ -1,31 +1,75 @@ { "parameters": { - "resourceUri": "subscriptions/b324c52b-4073-4807-93af-e07d289c093e/resourceGroups/test/providers/Microsoft.Storage/storageAccounts/larryshoebox/blobServices/default", - "timespan": "2017-04-14T02:20:00Z/2017-04-14T04:20:00Z", + "resourceUri": "d69f0a10-6508-4026-98b0-eff8f6faaade/resourceGroups/quickpulse-int/providers/Microsoft.Storage/storageAccounts/quickpulseintusscdiag/blobServices/default", + "timespan": "2021-04-16T01:00:00.000Z/2021-04-17T02:00:00.000Z", "metric": "BlobCapacity", "$filter": "BlobType eq '*'", "top": "3", - "orderby": "Average asc", - "aggregation": "Average,count", - "interval": "PT1M", + "orderby": "Average desc", + "aggregation": "average,minimum,maximum", + "interval": "PT6H", "api-version": "2017-05-01-preview" }, "responses": { "200": { "body": { - "cost": 0, - "timespan": "2017-04-14T02:20:00Z/2017-04-14T04:20:00Z", - "interval": "PT1M", + "cost": 1499, + "timespan": "2021-04-16T01:00:00Z/2021-04-17T02:00:00Z", + "interval": "PT6H", "value": [ { - "id": "/subscriptions/b324c52b-4073-4807-93af-e07d289c093e/resourceGroups/test/providers/Microsoft.Storage/storageAccounts/larryshoebox/blobServices/default/providers/Microsoft.Insights/metrics/BlobCapacity", + "id": "/subscriptions/d69f0a10-6508-4026-98b0-eff8f6faaade/resourceGroups/quickpulse-int/providers/Microsoft.Storage/storageAccounts/quickpulseintusscdiag/blobServices/default/providers/Microsoft.Insights/metrics/BlobCapacity", "type": "Microsoft.Insights/metrics", "name": { "value": "BlobCapacity", "localizedValue": "Blob Capacity" }, + "displayDescription": "The amount of storage used by the storage account’s Blob service in bytes.", "unit": "Bytes", "timeseries": [ + { + "metadatavalues": [ + { + "name": { + "value": "blobtype", + "localizedValue": "blobtype" + }, + "value": "BlockBlob" + } + ], + "data": [ + { + "timeStamp": "2021-04-16T01:00:00Z", + "average": 35492299169.0, + "minimum": 35492299169.0, + "maximum": 35492299169.0 + }, + { + "timeStamp": "2021-04-16T07:00:00Z", + "average": 35492299169.0, + "minimum": 35492299169.0, + "maximum": 35492299169.0 + }, + { + "timeStamp": "2021-04-16T13:00:00Z", + "average": 35492299169.0, + "minimum": 35492299169.0, + "maximum": 35492299169.0 + }, + { + "timeStamp": "2021-04-16T19:00:00Z", + "average": 35492299169.0, + "minimum": 35492299169.0, + "maximum": 35492299169.0 + }, + { + "timeStamp": "2021-04-17T01:00:00Z", + "average": 35492299169.0, + "minimum": 35492299169.0, + "maximum": 35492299169.0 + } + ] + }, { "metadatavalues": [ { @@ -38,21 +82,34 @@ ], "data": [ { - "timeStamp": "2017-04-14T02:20:00Z", - "count": 0.0 + "timeStamp": "2021-04-16T01:00:00Z", + "average": 0.0, + "minimum": 0.0, + "maximum": 0.0 + }, + { + "timeStamp": "2021-04-16T07:00:00Z", + "average": 0.0, + "minimum": 0.0, + "maximum": 0.0 }, { - "timeStamp": "2017-04-14T02:21:00Z", - "count": 0.0 + "timeStamp": "2021-04-16T13:00:00Z", + "average": 0.0, + "minimum": 0.0, + "maximum": 0.0 }, { - "timeStamp": "2017-04-14T02:22:00Z", - "count": 0.0 + "timeStamp": "2021-04-16T19:00:00Z", + "average": 0.0, + "minimum": 0.0, + "maximum": 0.0 }, { - "timeStamp": "2017-04-14T02:23:00Z", - "count": 1.0, - "average": 0.0 + "timeStamp": "2021-04-17T01:00:00Z", + "average": 0.0, + "minimum": 0.0, + "maximum": 0.0 } ] }, @@ -63,30 +120,44 @@ "value": "blobtype", "localizedValue": "blobtype" }, - "value": "BlockBlob" + "value": "Azure Data Lake Storage" } ], "data": [ { - "timeStamp": "2017-04-14T02:20:00Z", - "count": 0.0 + "timeStamp": "2021-04-16T01:00:00Z", + "average": 0.0, + "minimum": 0.0, + "maximum": 0.0 + }, + { + "timeStamp": "2021-04-16T07:00:00Z", + "average": 0.0, + "minimum": 0.0, + "maximum": 0.0 }, { - "timeStamp": "2017-04-14T02:21:00Z", - "count": 0.0 + "timeStamp": "2021-04-16T13:00:00Z", + "average": 0.0, + "minimum": 0.0, + "maximum": 0.0 }, { - "timeStamp": "2017-04-14T02:22:00Z", - "count": 0.0 + "timeStamp": "2021-04-16T19:00:00Z", + "average": 0.0, + "minimum": 0.0, + "maximum": 0.0 }, { - "timeStamp": "2017-04-14T02:23:00Z", - "count": 1.0, - "average": 245.0 + "timeStamp": "2021-04-17T01:00:00Z", + "average": 0.0, + "minimum": 0.0, + "maximum": 0.0 } ] } - ] + ], + "errorCode": "Success" } ] } diff --git a/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-05-01-preview/examples/GetMetricMetadata.json b/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-05-01-preview/examples/GetMetricMetadata.json index 23a9ca8877b0..a8e2e3e55a4d 100644 --- a/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-05-01-preview/examples/GetMetricMetadata.json +++ b/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-05-01-preview/examples/GetMetricMetadata.json @@ -1,29 +1,27 @@ { "parameters": { - "timespan": "2017-04-14T02:20:00Z/2017-04-14T04:20:00Z", - "metric": "BlobCapacity", + "timespan": "2021-04-18T22:14:26.647Z/2021-04-19T22:14:26.647Z", + "metric": "BlobCount", "$filter": "BlobType eq '*'", - "top": "3", - "orderby": "Average asc", - "aggregation": "Average,count", - "interval": "PT1M", "resulttype": "metadata", - "resourceUri": "subscriptions/b324c52b-4073-4807-93af-e07d289c093e/resourceGroups/test/providers/Microsoft.Storage/storageAccounts/larryshoebox/blobServices/default", + "resourceUri": "subscriptions/1f3fa6d2-851c-4a91-9087-1a050f3a9c38/resourceGroups/todking/providers/Microsoft.Storage/storageAccounts/tkfileserv/blobServices/default", "api-version": "2017-05-01-preview" }, "responses": { "200": { "body": { - "timespan": "2017-04-14T02:20:00Z/2017-04-14T04:20:00Z", + "timespan": "2021-04-18T22:14:26Z/2021-04-19T22:14:26Z", + "interval": "PT1H", "value": [ { - "id": "/subscriptions/b324c52b-4073-4807-93af-e07d289c093e/resourceGroups/test/providers/Microsoft.Storage/storageAccounts/larryshoebox/blobServices/default/providers/Microsoft.Insights/metrics/BlobCapacity", + "id": "/subscriptions/1f3fa6d2-851c-4a91-9087-1a050f3a9c38/resourceGroups/todking/providers/Microsoft.Storage/storageAccounts/tkfileserv/blobServices/default/providers/Microsoft.Insights/metrics/BlobCount", "type": "Microsoft.Insights/metrics", "name": { - "value": "BlobCapacity", - "localizedValue": "Blob Capacity" + "value": "BlobCount", + "localizedValue": "Blob Count" }, - "unit": "Bytes", + "displayDescription": "The number of blob objects stored in the storage account.", + "unit": "Count", "timeseries": [ { "metadatavalues": [ @@ -46,6 +44,17 @@ "value": "PageBlob" } ] + }, + { + "metadatavalues": [ + { + "name": { + "value": "blobtype", + "localizedValue": "blobtype" + }, + "value": "Azure Data Lake Storage" + } + ] } ] } diff --git a/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-05-01-preview/metricDefinitions_API.json b/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-05-01-preview/metricDefinitions_API.json index 194c1df1b31b..8d4f67a2b7a1 100644 --- a/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-05-01-preview/metricDefinitions_API.json +++ b/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-05-01-preview/metricDefinitions_API.json @@ -197,7 +197,7 @@ }, "Unit": { "type": "string", - "description": "the unit of the metric.", + "description": "The unit of the metric.", "enum": [ "Count", "Bytes", @@ -207,7 +207,11 @@ "Percent", "MilliSeconds", "ByteSeconds", - "Unspecified" + "Unspecified", + "Cores", + "MilliCores", + "NanoCores", + "BitsPerSecond" ], "x-ms-enum": { "name": "Unit", @@ -228,6 +232,14 @@ "$ref": "#/definitions/LocalizableString", "description": "the name and the display name of the metric, i.e. it is a localizable string." }, + "displayDescription": { + "type": "string", + "description": "Detailed description of this metric." + }, + "category": { + "type": "string", + "description": "Custom category name for this metric." + }, "unit": { "$ref": "#/definitions/Unit", "description": "the unit of the metric." diff --git a/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-05-01-preview/metrics_API.json b/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-05-01-preview/metrics_API.json index c999f80fc92a..d6bd126f6e6f 100644 --- a/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-05-01-preview/metrics_API.json +++ b/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-05-01-preview/metrics_API.json @@ -104,6 +104,7 @@ "value": "CpuTime", "localizedValue": "CPU Time" }, + "displayDescription": "CPU Time", "unit": "Seconds", "timeseries": [ { @@ -177,7 +178,7 @@ }, "Unit": { "type": "string", - "description": "the unit of the metric.", + "description": "The unit of the metric.", "enum": [ "Count", "Bytes", @@ -187,7 +188,11 @@ "Percent", "MilliSeconds", "ByteSeconds", - "Unspecified" + "Unspecified", + "Cores", + "MilliCores", + "NanoCores", + "BitsPerSecond" ], "x-ms-enum": { "name": "Unit", @@ -266,7 +271,7 @@ "type": "number", "format": "int32", "minimum": 0, - "description": "The integer value representing the cost of the query, for data case." + "description": "The integer value representing the relative cost of the query." }, "timespan": { "type": "string", @@ -306,6 +311,14 @@ "$ref": "#/definitions/LocalizableString", "description": "the name and the display name of the metric, i.e. it is localizable string." }, + "displayDescription": { + "type": "string", + "description": "Detailed description of this metric." + }, + "errorCode": { + "type": "string", + "description": "'Success' or the error details on query failures for this metric." + }, "unit": { "$ref": "#/definitions/Unit", "description": "the unit of the metric." @@ -322,6 +335,7 @@ "id", "type", "name", + "displayDescription", "unit", "timeseries" ], diff --git a/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-12-01-preview/examples/GetMetricNamespaces.json b/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-12-01-preview/examples/GetMetricNamespaces.json index 1eff5dfacb69..41cc86eb5b2a 100644 --- a/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-12-01-preview/examples/GetMetricNamespaces.json +++ b/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-12-01-preview/examples/GetMetricNamespaces.json @@ -1,7 +1,7 @@ { "parameters": { - "resourceUri": "subscriptions/a252e87d-ec06-45b1-8901-57e613be91b0/resourceGroups/larrytest/providers/Microsoft.DocumentDB/databaseAccounts/larrytestdocdb", - "startTime": "2018-08-31T15:53:00Z", + "resourceUri": "subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill", + "startTime": "2020-08-31T15:53:00Z", "api-version": "2017-12-01-preview" }, "responses": { @@ -9,11 +9,21 @@ "body": { "value": [ { - "id": "/subscriptions/a252e87d-ec06-45b1-8901-57e613be91b0/resourceGroups/larrytest/providers/Microsoft.DocumentDB/databaseAccounts/larrytestdocdb/providers/microsoft.insights/metricNamespaces/Microsoft.DocumentDB-databaseAccounts", - "name": "Microsoft.DocumentDB-databaseAccounts", + "id": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill/providers/microsoft.insights/metricNamespaces/Azure.ApplicationInsights", + "name": "Azure.ApplicationInsights", "type": "Microsoft.Insights/metricNamespaces", + "classification": "Custom", "properties": { - "metricNamespaceName": "Microsoft.DocumentDB/databaseAccounts" + "metricNamespaceName": "Azure.ApplicationInsights" + } + }, + { + "id": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill/providers/microsoft.insights/metricNamespaces/microsoft.insights-components", + "name": "microsoft.insights-components", + "type": "Microsoft.Insights/metricNamespaces", + "classification": "Platform", + "properties": { + "metricNamespaceName": "microsoft.insights/components" } } ] diff --git a/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-12-01-preview/metricNamespaces_API.json b/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-12-01-preview/metricNamespaces_API.json index 7003d55c5a8c..37567b416cb7 100644 --- a/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-12-01-preview/metricNamespaces_API.json +++ b/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-12-01-preview/metricNamespaces_API.json @@ -89,12 +89,25 @@ }, "description": "The fully qualified metric namespace name." }, + "NamespaceClassification": { + "type": "string", + "description": "Kind of namespace", + "enum": [ + "Platform", + "Custom", + "Qos" + ], + "x-ms-enum": { + "name": "NamespaceClassification", + "modelAsString": false + } + }, "MetricNamespace": { "type": "object", "properties": { "id": { "type": "string", - "description": "The ID of the metricNamespace." + "description": "The ID of the metric namespace." }, "type": { "type": "string", @@ -102,7 +115,11 @@ }, "name": { "type": "string", - "description": "The name of the namespace." + "description": "The escaped name of the namespace." + }, + "classification": { + "$ref": "#/definitions/NamespaceClassification", + "description": "Kind of namespace" }, "properties": { "$ref": "#/definitions/MetricNamespaceName", diff --git a/specification/monitor/resource-manager/Microsoft.Insights/preview/2021-02-01-preview/scheduledQueryRule_API.json b/specification/monitor/resource-manager/Microsoft.Insights/preview/2021-02-01-preview/scheduledQueryRule_API.json index 13e7d9b71576..c10fe1c4a857 100644 --- a/specification/monitor/resource-manager/Microsoft.Insights/preview/2021-02-01-preview/scheduledQueryRule_API.json +++ b/specification/monitor/resource-manager/Microsoft.Insights/preview/2021-02-01-preview/scheduledQueryRule_API.json @@ -599,12 +599,7 @@ "type": "string", "description": "The name of the metric to be sent. Relevant and required only for rules of the kind LogToMetric." } - }, - "required": [ - "operator", - "threshold", - "timeAggregation" - ] + } }, "Dimension": { "type": "object", diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2015-04-01/autoscale_API.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2015-04-01/autoscale_API.json index 5641244c5c51..4029ceb5d841 100644 --- a/specification/monitor/resource-manager/Microsoft.Insights/stable/2015-04-01/autoscale_API.json +++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2015-04-01/autoscale_API.json @@ -453,6 +453,10 @@ "$ref": "#/definitions/ScaleRuleMetricDimension" }, "description": "List of dimension conditions. For example: [{\"DimensionName\":\"AppName\",\"Operator\":\"Equals\",\"Values\":[\"App1\"]},{\"DimensionName\":\"Deployment\",\"Operator\":\"Equals\",\"Values\":[\"default\"]}]." + }, + "dividePerInstance": { + "type": "boolean", + "description": "a value indicating whether metric should divide per instance." } }, "description": "The trigger that results in a scaling action." diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2015-04-01/examples/createOrUpdateAutoscaleSetting.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2015-04-01/examples/createOrUpdateAutoscaleSetting.json index 4a429d060c9f..b2986cba1e4f 100644 --- a/specification/monitor/resource-manager/Microsoft.Insights/stable/2015-04-01/examples/createOrUpdateAutoscaleSetting.json +++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2015-04-01/examples/createOrUpdateAutoscaleSetting.json @@ -26,7 +26,8 @@ "timeWindow": "PT5M", "timeAggregation": "Average", "operator": "GreaterThan", - "threshold": 10.0 + "threshold": 10.0, + "dividePerInstance": false }, "scaleAction": { "direction": "Increase", @@ -44,7 +45,8 @@ "timeWindow": "PT5M", "timeAggregation": "Average", "operator": "GreaterThan", - "threshold": 15.0 + "threshold": 15.0, + "dividePerInstance": false }, "scaleAction": { "direction": "Decrease", @@ -77,7 +79,8 @@ "timeWindow": "PT5M", "timeAggregation": "Average", "operator": "GreaterThan", - "threshold": 10.0 + "threshold": 10.0, + "dividePerInstance": false }, "scaleAction": { "direction": "Increase", @@ -95,7 +98,8 @@ "timeWindow": "PT5M", "timeAggregation": "Average", "operator": "GreaterThan", - "threshold": 15.0 + "threshold": 15.0, + "dividePerInstance": false }, "scaleAction": { "direction": "Decrease", @@ -176,7 +180,8 @@ "timeWindow": "PT5M", "timeAggregation": "Average", "operator": "GreaterThan", - "threshold": 10.0 + "threshold": 10.0, + "dividePerInstance": false }, "scaleAction": { "direction": "Increase", @@ -194,7 +199,8 @@ "timeWindow": "PT5M", "timeAggregation": "Average", "operator": "GreaterThan", - "threshold": 15.0 + "threshold": 15.0, + "dividePerInstance": false }, "scaleAction": { "direction": "Decrease", @@ -227,7 +233,8 @@ "timeWindow": "PT5M", "timeAggregation": "Average", "operator": "GreaterThan", - "threshold": 10.0 + "threshold": 10.0, + "dividePerInstance": false }, "scaleAction": { "direction": "Increase", @@ -245,7 +252,8 @@ "timeWindow": "PT5M", "timeAggregation": "Average", "operator": "GreaterThan", - "threshold": 15.0 + "threshold": 15.0, + "dividePerInstance": false }, "scaleAction": { "direction": "Decrease", @@ -326,7 +334,8 @@ "timeWindow": "PT5M", "timeAggregation": "Average", "operator": "GreaterThan", - "threshold": 10.0 + "threshold": 10.0, + "dividePerInstance": false }, "scaleAction": { "direction": "Increase", @@ -344,7 +353,8 @@ "timeWindow": "PT5M", "timeAggregation": "Average", "operator": "GreaterThan", - "threshold": 15.0 + "threshold": 15.0, + "dividePerInstance": false }, "scaleAction": { "direction": "Decrease", @@ -377,7 +387,8 @@ "timeWindow": "PT5M", "timeAggregation": "Average", "operator": "GreaterThan", - "threshold": 10.0 + "threshold": 10.0, + "dividePerInstance": false }, "scaleAction": { "direction": "Increase", @@ -395,7 +406,8 @@ "timeWindow": "PT5M", "timeAggregation": "Average", "operator": "GreaterThan", - "threshold": 15.0 + "threshold": 15.0, + "dividePerInstance": false }, "scaleAction": { "direction": "Decrease", diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2015-04-01/examples/getAutoscaleSetting.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2015-04-01/examples/getAutoscaleSetting.json index 940fb7184382..fd1593a3f637 100644 --- a/specification/monitor/resource-manager/Microsoft.Insights/stable/2015-04-01/examples/getAutoscaleSetting.json +++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2015-04-01/examples/getAutoscaleSetting.json @@ -35,7 +35,8 @@ "timeWindow": "PT5M", "timeAggregation": "Average", "operator": "GreaterThan", - "threshold": 10.0 + "threshold": 10.0, + "dividePerInstance": false }, "scaleAction": { "direction": "Increase", @@ -53,7 +54,8 @@ "timeWindow": "PT5M", "timeAggregation": "Average", "operator": "GreaterThan", - "threshold": 15.0 + "threshold": 15.0, + "dividePerInstance": false }, "scaleAction": { "direction": "Decrease", @@ -86,7 +88,8 @@ "timeWindow": "PT5M", "timeAggregation": "Average", "operator": "GreaterThan", - "threshold": 10.0 + "threshold": 10.0, + "dividePerInstance": false }, "scaleAction": { "direction": "Increase", @@ -104,7 +107,8 @@ "timeWindow": "PT5M", "timeAggregation": "Average", "operator": "GreaterThan", - "threshold": 15.0 + "threshold": 15.0, + "dividePerInstance": false }, "scaleAction": { "direction": "Decrease", diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2015-04-01/examples/listAutoscaleSetting.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2015-04-01/examples/listAutoscaleSetting.json index 70ba238c9364..c5902cd536b9 100644 --- a/specification/monitor/resource-manager/Microsoft.Insights/stable/2015-04-01/examples/listAutoscaleSetting.json +++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2015-04-01/examples/listAutoscaleSetting.json @@ -36,7 +36,8 @@ "timeWindow": "PT5M", "timeAggregation": "Average", "operator": "GreaterThan", - "threshold": 10.0 + "threshold": 10.0, + "dividePerInstance": false }, "scaleAction": { "direction": "Increase", @@ -54,7 +55,8 @@ "timeWindow": "PT5M", "timeAggregation": "Average", "operator": "GreaterThan", - "threshold": 15.0 + "threshold": 15.0, + "dividePerInstance": false }, "scaleAction": { "direction": "Decrease", @@ -87,7 +89,8 @@ "timeWindow": "PT5M", "timeAggregation": "Average", "operator": "GreaterThan", - "threshold": 10.0 + "threshold": 10.0, + "dividePerInstance": false }, "scaleAction": { "direction": "Increase", @@ -105,7 +108,8 @@ "timeWindow": "PT5M", "timeAggregation": "Average", "operator": "GreaterThan", - "threshold": 15.0 + "threshold": 15.0, + "dividePerInstance": false }, "scaleAction": { "direction": "Decrease", diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2015-04-01/examples/listAutoscaleSettingBySubscription.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2015-04-01/examples/listAutoscaleSettingBySubscription.json index dddfc3df50e1..06a7b1f00ebe 100644 --- a/specification/monitor/resource-manager/Microsoft.Insights/stable/2015-04-01/examples/listAutoscaleSettingBySubscription.json +++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2015-04-01/examples/listAutoscaleSettingBySubscription.json @@ -35,7 +35,8 @@ "timeWindow": "PT5M", "timeAggregation": "Average", "operator": "GreaterThan", - "threshold": 10.0 + "threshold": 10.0, + "dividePerInstance": false }, "scaleAction": { "direction": "Increase", @@ -53,7 +54,8 @@ "timeWindow": "PT5M", "timeAggregation": "Average", "operator": "GreaterThan", - "threshold": 15.0 + "threshold": 15.0, + "dividePerInstance": false }, "scaleAction": { "direction": "Decrease", @@ -86,7 +88,8 @@ "timeWindow": "PT5M", "timeAggregation": "Average", "operator": "GreaterThan", - "threshold": 10.0 + "threshold": 10.0, + "dividePerInstance": false }, "scaleAction": { "direction": "Increase", @@ -104,7 +107,8 @@ "timeWindow": "PT5M", "timeAggregation": "Average", "operator": "GreaterThan", - "threshold": 15.0 + "threshold": 15.0, + "dividePerInstance": false }, "scaleAction": { "direction": "Decrease", diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2015-04-01/examples/patchAutoscaleSetting.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2015-04-01/examples/patchAutoscaleSetting.json index 3c80bd7a509f..bee8692a13dc 100644 --- a/specification/monitor/resource-manager/Microsoft.Insights/stable/2015-04-01/examples/patchAutoscaleSetting.json +++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2015-04-01/examples/patchAutoscaleSetting.json @@ -27,7 +27,8 @@ "timeWindow": "PT5M", "timeAggregation": "Average", "operator": "GreaterThan", - "threshold": 10.0 + "threshold": 10.0, + "dividePerInstance": false }, "scaleAction": { "direction": "Increase", @@ -45,7 +46,8 @@ "timeWindow": "PT5M", "timeAggregation": "Average", "operator": "GreaterThan", - "threshold": 15.0 + "threshold": 15.0, + "dividePerInstance": false }, "scaleAction": { "direction": "Decrease", @@ -78,7 +80,8 @@ "timeWindow": "PT5M", "timeAggregation": "Average", "operator": "GreaterThan", - "threshold": 10.0 + "threshold": 10.0, + "dividePerInstance": false }, "scaleAction": { "direction": "Increase", @@ -96,7 +99,8 @@ "timeWindow": "PT5M", "timeAggregation": "Average", "operator": "GreaterThan", - "threshold": 15.0 + "threshold": 15.0, + "dividePerInstance": false }, "scaleAction": { "direction": "Decrease", @@ -177,7 +181,8 @@ "timeWindow": "PT5M", "timeAggregation": "Average", "operator": "GreaterThan", - "threshold": 10.0 + "threshold": 10.0, + "dividePerInstance": false }, "scaleAction": { "direction": "Increase", @@ -195,7 +200,8 @@ "timeWindow": "PT5M", "timeAggregation": "Average", "operator": "GreaterThan", - "threshold": 15.0 + "threshold": 15.0, + "dividePerInstance": false }, "scaleAction": { "direction": "Decrease", @@ -228,7 +234,8 @@ "timeWindow": "PT5M", "timeAggregation": "Average", "operator": "GreaterThan", - "threshold": 10.0 + "threshold": 10.0, + "dividePerInstance": false }, "scaleAction": { "direction": "Increase", @@ -246,7 +253,8 @@ "timeWindow": "PT5M", "timeAggregation": "Average", "operator": "GreaterThan", - "threshold": 15.0 + "threshold": 15.0, + "dividePerInstance": false }, "scaleAction": { "direction": "Decrease", diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2016-03-01/examples/GetMetricDefinitions.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2016-03-01/examples/GetMetricDefinitions.json index 68fd82a7aa48..1de0da4671d3 100644 --- a/specification/monitor/resource-manager/Microsoft.Insights/stable/2016-03-01/examples/GetMetricDefinitions.json +++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2016-03-01/examples/GetMetricDefinitions.json @@ -1,6 +1,6 @@ { "parameters": { - "resourceUri": "/subscriptions/df602c9c-7aa0-407d-a6fb-eb20c8bd1192/resourceGroups/andy0802australia/providers/Microsoft.Logic/workflows/andy0803australia", + "resourceUri": "subscriptions/df602c9c-7aa0-407d-a6fb-eb20c8bd1192/resourceGroups/andy0802australia/providers/Microsoft.Logic/workflows/andy0803australia", "api-version": "2016-03-01", "subscriptionId": "df602c9c-7aa0-407d-a6fb-eb20c8bd1192" }, diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2016-03-01/examples/GetMetricDefinitionsFiltered.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2016-03-01/examples/GetMetricDefinitionsFiltered.json index 3362cc71a05a..0cd1e47e978f 100644 --- a/specification/monitor/resource-manager/Microsoft.Insights/stable/2016-03-01/examples/GetMetricDefinitionsFiltered.json +++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2016-03-01/examples/GetMetricDefinitionsFiltered.json @@ -1,6 +1,6 @@ { "parameters": { - "resourceUri": "/subscriptions/df602c9c-7aa0-407d-a6fb-eb20c8bd1192/resourceGroups/andy0802australia/providers/Microsoft.Logic/workflows/andy0803australia", + "resourceUri": "subscriptions/df602c9c-7aa0-407d-a6fb-eb20c8bd1192/resourceGroups/andy0802australia/providers/Microsoft.Logic/workflows/andy0803australia", "api-version": "2016-03-01", "subscriptionId": "df602c9c-7aa0-407d-a6fb-eb20c8bd1192", "$filter": "name.value eq 'RunsStarted' or name.value eq 'RunsSucceeded'" diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2016-03-01/metricDefinitions_API.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2016-03-01/metricDefinitions_API.json index 8e4c1992551a..a559365e72c6 100644 --- a/specification/monitor/resource-manager/Microsoft.Insights/stable/2016-03-01/metricDefinitions_API.json +++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2016-03-01/metricDefinitions_API.json @@ -184,7 +184,7 @@ }, "Unit": { "type": "string", - "description": "the unit of the metric.", + "description": "The unit of the metric.", "enum": [ "Count", "Bytes", @@ -192,7 +192,13 @@ "CountPerSecond", "BytesPerSecond", "Percent", - "MilliSeconds" + "MilliSeconds", + "ByteSeconds", + "Unspecified", + "Cores", + "MilliCores", + "NanoCores", + "BitsPerSecond" ], "x-ms-enum": { "name": "Unit", diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2016-09-01/examples/GetMetric.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2016-09-01/examples/GetMetric.json index fdc5de9cf6d7..51ba066bada4 100644 --- a/specification/monitor/resource-manager/Microsoft.Insights/stable/2016-09-01/examples/GetMetric.json +++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2016-09-01/examples/GetMetric.json @@ -1,6 +1,6 @@ { "parameters": { - "resourceUri": "/subscriptions/df602c9c-7aa0-407d-a6fb-eb20c8bd1192/resourceGroups/andy0802australia/providers/Microsoft.Logic/workflows/andy0803australia", + "resourceUri": "subscriptions/df602c9c-7aa0-407d-a6fb-eb20c8bd1192/resourceGroups/andy0802australia/providers/Microsoft.Logic/workflows/andy0803australia", "api-version": "2016-09-01", "subscriptionId": "df602c9c-7aa0-407d-a6fb-eb20c8bd1192" }, diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2016-09-01/examples/GetMetricFiltered.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2016-09-01/examples/GetMetricFiltered.json index df50abd401b4..cf8e3dfe0575 100644 --- a/specification/monitor/resource-manager/Microsoft.Insights/stable/2016-09-01/examples/GetMetricFiltered.json +++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2016-09-01/examples/GetMetricFiltered.json @@ -1,7 +1,7 @@ { "parameters": { "$filter": "(name.value eq 'RunsStarted') and aggregationType eq 'Total' and startTime eq 2016-11-23 and endTime eq 2016-11-24 and timeGrain eq duration'PT1M'", - "resourceUri": "/subscriptions/df602c9c-7aa0-407d-a6fb-eb20c8bd1192/resourceGroups/andy0802australia/providers/Microsoft.Logic/workflows/andy0803australia", + "resourceUri": "subscriptions/df602c9c-7aa0-407d-a6fb-eb20c8bd1192/resourceGroups/andy0802australia/providers/Microsoft.Logic/workflows/andy0803australia", "api-version": "2016-09-01", "subscriptionId": "df602c9c-7aa0-407d-a6fb-eb20c8bd1192" }, diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2016-09-01/metrics_API.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2016-09-01/metrics_API.json index ea2dcd0237b1..e3de26a122ef 100644 --- a/specification/monitor/resource-manager/Microsoft.Insights/stable/2016-09-01/metrics_API.json +++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2016-09-01/metrics_API.json @@ -156,7 +156,7 @@ }, "Unit": { "type": "string", - "description": "the unit of the metric.", + "description": "The unit of the metric.", "enum": [ "Count", "Bytes", @@ -164,7 +164,13 @@ "CountPerSecond", "BytesPerSecond", "Percent", - "MilliSeconds" + "MilliSeconds", + "ByteSeconds", + "Unspecified", + "Cores", + "MilliCores", + "NanoCores", + "BitsPerSecond" ], "x-ms-enum": { "name": "Unit", diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2018-01-01/examples/GetMetric.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2018-01-01/examples/GetMetric.json index 4f9b0f06a527..365713fa1277 100644 --- a/specification/monitor/resource-manager/Microsoft.Insights/stable/2018-01-01/examples/GetMetric.json +++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2018-01-01/examples/GetMetric.json @@ -23,6 +23,7 @@ { "id": "/subscriptions/b324c52b-4073-4807-93af-e07d289c093e/resourceGroups/test/providers/Microsoft.Storage/storageAccounts/larryshoebox/blobServices/default/providers/Microsoft.Insights/metrics/BlobCapacity", "type": "Microsoft.Insights/metrics", + "displayDescription": "The amount of storage used by the storage account’s Blob service in bytes.", "name": { "value": "BlobCapacity", "localizedValue": "Blob Capacity" diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2018-01-01/examples/GetMetricDefinitionsApplicationInsights.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2018-01-01/examples/GetMetricDefinitionsApplicationInsights.json new file mode 100644 index 000000000000..d35d416122eb --- /dev/null +++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2018-01-01/examples/GetMetricDefinitionsApplicationInsights.json @@ -0,0 +1,1939 @@ +{ + "parameters": { + "resourceUri": "subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill/providers/microsoft.insights/metricdefinitions", + "api-version": "2018-01-01", + "metricnamespace": "microsoft.insights/components" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill/providers/microsoft.insights/metricdefinitions/availabilityResults/availabilityPercentage", + "resourceId": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill", + "namespace": "microsoft.insights/components", + "category": "Availability", + "name": { + "value": "availabilityResults/availabilityPercentage", + "localizedValue": "Availability" + }, + "displayDescription": "Percentage of successfully completed availability tests", + "isDimensionRequired": false, + "unit": "Percent", + "primaryAggregationType": "Average", + "supportedAggregationTypes": [ + "Average" + ], + "metricAvailabilities": [ + { + "timeGrain": "PT1M", + "retention": "P93D" + }, + { + "timeGrain": "PT5M", + "retention": "P93D" + }, + { + "timeGrain": "PT15M", + "retention": "P93D" + }, + { + "timeGrain": "PT30M", + "retention": "P93D" + }, + { + "timeGrain": "PT1H", + "retention": "P93D" + }, + { + "timeGrain": "PT6H", + "retention": "P93D" + }, + { + "timeGrain": "PT12H", + "retention": "P93D" + }, + { + "timeGrain": "P1D", + "retention": "P93D" + } + ], + "dimensions": [ + { + "value": "availabilityResult/name", + "localizedValue": "Test name" + }, + { + "value": "availabilityResult/location", + "localizedValue": "Run location" + } + ] + }, + { + "id": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill/providers/microsoft.insights/metricdefinitions/availabilityResults/count", + "resourceId": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill", + "namespace": "microsoft.insights/components", + "category": "Availability", + "name": { + "value": "availabilityResults/count", + "localizedValue": "Availability tests" + }, + "displayDescription": "Count of availability tests", + "isDimensionRequired": false, + "unit": "Count", + "primaryAggregationType": "Count", + "supportedAggregationTypes": [ + "Count" + ], + "metricAvailabilities": [ + { + "timeGrain": "PT1M", + "retention": "P93D" + }, + { + "timeGrain": "PT5M", + "retention": "P93D" + }, + { + "timeGrain": "PT15M", + "retention": "P93D" + }, + { + "timeGrain": "PT30M", + "retention": "P93D" + }, + { + "timeGrain": "PT1H", + "retention": "P93D" + }, + { + "timeGrain": "PT6H", + "retention": "P93D" + }, + { + "timeGrain": "PT12H", + "retention": "P93D" + }, + { + "timeGrain": "P1D", + "retention": "P93D" + } + ], + "dimensions": [ + { + "value": "availabilityResult/name", + "localizedValue": "Test name" + }, + { + "value": "availabilityResult/location", + "localizedValue": "Run location" + }, + { + "value": "availabilityResult/success", + "localizedValue": "Test result" + } + ] + }, + { + "id": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill/providers/microsoft.insights/metricdefinitions/availabilityResults/duration", + "resourceId": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill", + "namespace": "microsoft.insights/components", + "category": "Availability", + "name": { + "value": "availabilityResults/duration", + "localizedValue": "Availability test duration" + }, + "displayDescription": "Availability test duration", + "isDimensionRequired": false, + "unit": "MilliSeconds", + "primaryAggregationType": "Average", + "supportedAggregationTypes": [ + "Average", + "Maximum", + "Minimum" + ], + "metricAvailabilities": [ + { + "timeGrain": "PT1M", + "retention": "P93D" + }, + { + "timeGrain": "PT5M", + "retention": "P93D" + }, + { + "timeGrain": "PT15M", + "retention": "P93D" + }, + { + "timeGrain": "PT30M", + "retention": "P93D" + }, + { + "timeGrain": "PT1H", + "retention": "P93D" + }, + { + "timeGrain": "PT6H", + "retention": "P93D" + }, + { + "timeGrain": "PT12H", + "retention": "P93D" + }, + { + "timeGrain": "P1D", + "retention": "P93D" + } + ], + "dimensions": [ + { + "value": "availabilityResult/name", + "localizedValue": "Test name" + }, + { + "value": "availabilityResult/location", + "localizedValue": "Run location" + }, + { + "value": "availabilityResult/success", + "localizedValue": "Test result" + } + ] + }, + { + "id": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill/providers/microsoft.insights/metricdefinitions/browserTimings/networkDuration", + "resourceId": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill", + "namespace": "microsoft.insights/components", + "category": "Browser", + "name": { + "value": "browserTimings/networkDuration", + "localizedValue": "Page load network connect time" + }, + "displayDescription": "Time between user request and network connection. Includes DNS lookup and transport connection.", + "isDimensionRequired": false, + "unit": "MilliSeconds", + "primaryAggregationType": "Average", + "supportedAggregationTypes": [ + "Average", + "Maximum", + "Minimum" + ], + "metricAvailabilities": [ + { + "timeGrain": "PT1M", + "retention": "P93D" + }, + { + "timeGrain": "PT5M", + "retention": "P93D" + }, + { + "timeGrain": "PT15M", + "retention": "P93D" + }, + { + "timeGrain": "PT30M", + "retention": "P93D" + }, + { + "timeGrain": "PT1H", + "retention": "P93D" + }, + { + "timeGrain": "PT6H", + "retention": "P93D" + }, + { + "timeGrain": "PT12H", + "retention": "P93D" + }, + { + "timeGrain": "P1D", + "retention": "P93D" + } + ] + }, + { + "id": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill/providers/microsoft.insights/metricdefinitions/browserTimings/processingDuration", + "resourceId": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill", + "namespace": "microsoft.insights/components", + "category": "Browser", + "name": { + "value": "browserTimings/processingDuration", + "localizedValue": "Client processing time" + }, + "displayDescription": "Time between receiving the last byte of a document until the DOM is loaded. Async requests may still be processing.", + "isDimensionRequired": false, + "unit": "MilliSeconds", + "primaryAggregationType": "Average", + "supportedAggregationTypes": [ + "Average", + "Maximum", + "Minimum" + ], + "metricAvailabilities": [ + { + "timeGrain": "PT1M", + "retention": "P93D" + }, + { + "timeGrain": "PT5M", + "retention": "P93D" + }, + { + "timeGrain": "PT15M", + "retention": "P93D" + }, + { + "timeGrain": "PT30M", + "retention": "P93D" + }, + { + "timeGrain": "PT1H", + "retention": "P93D" + }, + { + "timeGrain": "PT6H", + "retention": "P93D" + }, + { + "timeGrain": "PT12H", + "retention": "P93D" + }, + { + "timeGrain": "P1D", + "retention": "P93D" + } + ] + }, + { + "id": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill/providers/microsoft.insights/metricdefinitions/browserTimings/receiveDuration", + "resourceId": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill", + "namespace": "microsoft.insights/components", + "category": "Browser", + "name": { + "value": "browserTimings/receiveDuration", + "localizedValue": "Receiving response time" + }, + "displayDescription": "Time between the first and last bytes, or until disconnection.", + "isDimensionRequired": false, + "unit": "MilliSeconds", + "primaryAggregationType": "Average", + "supportedAggregationTypes": [ + "Average", + "Maximum", + "Minimum" + ], + "metricAvailabilities": [ + { + "timeGrain": "PT1M", + "retention": "P93D" + }, + { + "timeGrain": "PT5M", + "retention": "P93D" + }, + { + "timeGrain": "PT15M", + "retention": "P93D" + }, + { + "timeGrain": "PT30M", + "retention": "P93D" + }, + { + "timeGrain": "PT1H", + "retention": "P93D" + }, + { + "timeGrain": "PT6H", + "retention": "P93D" + }, + { + "timeGrain": "PT12H", + "retention": "P93D" + }, + { + "timeGrain": "P1D", + "retention": "P93D" + } + ] + }, + { + "id": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill/providers/microsoft.insights/metricdefinitions/browserTimings/sendDuration", + "resourceId": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill", + "namespace": "microsoft.insights/components", + "category": "Browser", + "name": { + "value": "browserTimings/sendDuration", + "localizedValue": "Send request time" + }, + "displayDescription": "Time between network connection and receiving the first byte.", + "isDimensionRequired": false, + "unit": "MilliSeconds", + "primaryAggregationType": "Average", + "supportedAggregationTypes": [ + "Average", + "Maximum", + "Minimum" + ], + "metricAvailabilities": [ + { + "timeGrain": "PT1M", + "retention": "P93D" + }, + { + "timeGrain": "PT5M", + "retention": "P93D" + }, + { + "timeGrain": "PT15M", + "retention": "P93D" + }, + { + "timeGrain": "PT30M", + "retention": "P93D" + }, + { + "timeGrain": "PT1H", + "retention": "P93D" + }, + { + "timeGrain": "PT6H", + "retention": "P93D" + }, + { + "timeGrain": "PT12H", + "retention": "P93D" + }, + { + "timeGrain": "P1D", + "retention": "P93D" + } + ] + }, + { + "id": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill/providers/microsoft.insights/metricdefinitions/browserTimings/totalDuration", + "resourceId": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill", + "namespace": "microsoft.insights/components", + "category": "Browser", + "name": { + "value": "browserTimings/totalDuration", + "localizedValue": "Browser page load time" + }, + "displayDescription": "Time from user request until DOM, stylesheets, scripts and images are loaded.", + "isDimensionRequired": false, + "unit": "MilliSeconds", + "primaryAggregationType": "Average", + "supportedAggregationTypes": [ + "Average", + "Maximum", + "Minimum" + ], + "metricAvailabilities": [ + { + "timeGrain": "PT1M", + "retention": "P93D" + }, + { + "timeGrain": "PT5M", + "retention": "P93D" + }, + { + "timeGrain": "PT15M", + "retention": "P93D" + }, + { + "timeGrain": "PT30M", + "retention": "P93D" + }, + { + "timeGrain": "PT1H", + "retention": "P93D" + }, + { + "timeGrain": "PT6H", + "retention": "P93D" + }, + { + "timeGrain": "PT12H", + "retention": "P93D" + }, + { + "timeGrain": "P1D", + "retention": "P93D" + } + ] + }, + { + "id": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill/providers/microsoft.insights/metricdefinitions/dependencies/count", + "resourceId": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill", + "namespace": "microsoft.insights/components", + "category": "Server", + "name": { + "value": "dependencies/count", + "localizedValue": "Dependency calls" + }, + "displayDescription": "Count of calls made by the application to external resources.", + "isDimensionRequired": false, + "unit": "Count", + "primaryAggregationType": "Count", + "supportedAggregationTypes": [ + "Count" + ], + "metricAvailabilities": [ + { + "timeGrain": "PT1M", + "retention": "P93D" + }, + { + "timeGrain": "PT5M", + "retention": "P93D" + }, + { + "timeGrain": "PT15M", + "retention": "P93D" + }, + { + "timeGrain": "PT30M", + "retention": "P93D" + }, + { + "timeGrain": "PT1H", + "retention": "P93D" + }, + { + "timeGrain": "PT6H", + "retention": "P93D" + }, + { + "timeGrain": "PT12H", + "retention": "P93D" + }, + { + "timeGrain": "P1D", + "retention": "P93D" + } + ], + "dimensions": [ + { + "value": "dependency/type", + "localizedValue": "Dependency type" + }, + { + "value": "dependency/performanceBucket", + "localizedValue": "Dependency performance" + }, + { + "value": "dependency/success", + "localizedValue": "Successful call" + }, + { + "value": "dependency/target", + "localizedValue": "Target of a dependency call" + }, + { + "value": "dependency/resultCode", + "localizedValue": "Result code" + }, + { + "value": "operation/synthetic", + "localizedValue": "Is traffic synthetic" + }, + { + "value": "cloud/roleInstance", + "localizedValue": "Cloud role instance" + }, + { + "value": "cloud/roleName", + "localizedValue": "Cloud role name" + } + ] + }, + { + "id": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill/providers/microsoft.insights/metricdefinitions/dependencies/duration", + "resourceId": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill", + "namespace": "microsoft.insights/components", + "category": "Server", + "name": { + "value": "dependencies/duration", + "localizedValue": "Dependency duration" + }, + "displayDescription": "Duration of calls made by the application to external resources.", + "isDimensionRequired": false, + "unit": "MilliSeconds", + "primaryAggregationType": "Average", + "supportedAggregationTypes": [ + "Average", + "Maximum", + "Minimum" + ], + "metricAvailabilities": [ + { + "timeGrain": "PT1M", + "retention": "P93D" + }, + { + "timeGrain": "PT5M", + "retention": "P93D" + }, + { + "timeGrain": "PT15M", + "retention": "P93D" + }, + { + "timeGrain": "PT30M", + "retention": "P93D" + }, + { + "timeGrain": "PT1H", + "retention": "P93D" + }, + { + "timeGrain": "PT6H", + "retention": "P93D" + }, + { + "timeGrain": "PT12H", + "retention": "P93D" + }, + { + "timeGrain": "P1D", + "retention": "P93D" + } + ], + "dimensions": [ + { + "value": "dependency/type", + "localizedValue": "Dependency type" + }, + { + "value": "dependency/performanceBucket", + "localizedValue": "Dependency performance" + }, + { + "value": "dependency/success", + "localizedValue": "Successful call" + }, + { + "value": "dependency/target", + "localizedValue": "Target of a dependency call" + }, + { + "value": "dependency/resultCode", + "localizedValue": "Result code" + }, + { + "value": "operation/synthetic", + "localizedValue": "Is traffic synthetic" + }, + { + "value": "cloud/roleInstance", + "localizedValue": "Cloud role instance" + }, + { + "value": "cloud/roleName", + "localizedValue": "Cloud role name" + } + ] + }, + { + "id": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill/providers/microsoft.insights/metricdefinitions/dependencies/failed", + "resourceId": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill", + "namespace": "microsoft.insights/components", + "category": "Failures", + "name": { + "value": "dependencies/failed", + "localizedValue": "Dependency call failures" + }, + "displayDescription": "Count of failed dependency calls made by the application to external resources.", + "isDimensionRequired": false, + "unit": "Count", + "primaryAggregationType": "Count", + "supportedAggregationTypes": [ + "Count" + ], + "metricAvailabilities": [ + { + "timeGrain": "PT1M", + "retention": "P93D" + }, + { + "timeGrain": "PT5M", + "retention": "P93D" + }, + { + "timeGrain": "PT15M", + "retention": "P93D" + }, + { + "timeGrain": "PT30M", + "retention": "P93D" + }, + { + "timeGrain": "PT1H", + "retention": "P93D" + }, + { + "timeGrain": "PT6H", + "retention": "P93D" + }, + { + "timeGrain": "PT12H", + "retention": "P93D" + }, + { + "timeGrain": "P1D", + "retention": "P93D" + } + ], + "dimensions": [ + { + "value": "dependency/type", + "localizedValue": "Dependency type" + }, + { + "value": "dependency/performanceBucket", + "localizedValue": "Dependency performance" + }, + { + "value": "dependency/target", + "localizedValue": "Target of a dependency call" + }, + { + "value": "dependency/resultCode", + "localizedValue": "Result code" + }, + { + "value": "operation/synthetic", + "localizedValue": "Is traffic synthetic" + }, + { + "value": "cloud/roleInstance", + "localizedValue": "Cloud role instance" + }, + { + "value": "cloud/roleName", + "localizedValue": "Cloud role name" + } + ] + }, + { + "id": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill/providers/microsoft.insights/metricdefinitions/pageViews/count", + "resourceId": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill", + "namespace": "microsoft.insights/components", + "category": "Usage", + "name": { + "value": "pageViews/count", + "localizedValue": "Page views" + }, + "displayDescription": "Count of page views.", + "isDimensionRequired": false, + "unit": "Count", + "primaryAggregationType": "Count", + "supportedAggregationTypes": [ + "Count" + ], + "metricAvailabilities": [ + { + "timeGrain": "PT1M", + "retention": "P93D" + }, + { + "timeGrain": "PT5M", + "retention": "P93D" + }, + { + "timeGrain": "PT15M", + "retention": "P93D" + }, + { + "timeGrain": "PT30M", + "retention": "P93D" + }, + { + "timeGrain": "PT1H", + "retention": "P93D" + }, + { + "timeGrain": "PT6H", + "retention": "P93D" + }, + { + "timeGrain": "PT12H", + "retention": "P93D" + }, + { + "timeGrain": "P1D", + "retention": "P93D" + } + ], + "dimensions": [ + { + "value": "operation/synthetic", + "localizedValue": "Is traffic synthetic" + }, + { + "value": "cloud/roleName", + "localizedValue": "Cloud role name" + } + ] + }, + { + "id": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill/providers/microsoft.insights/metricdefinitions/pageViews/duration", + "resourceId": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill", + "namespace": "microsoft.insights/components", + "category": "Usage", + "name": { + "value": "pageViews/duration", + "localizedValue": "Page view load time" + }, + "displayDescription": "Page view load time", + "isDimensionRequired": false, + "unit": "MilliSeconds", + "primaryAggregationType": "Average", + "supportedAggregationTypes": [ + "Average", + "Maximum", + "Minimum" + ], + "metricAvailabilities": [ + { + "timeGrain": "PT1M", + "retention": "P93D" + }, + { + "timeGrain": "PT5M", + "retention": "P93D" + }, + { + "timeGrain": "PT15M", + "retention": "P93D" + }, + { + "timeGrain": "PT30M", + "retention": "P93D" + }, + { + "timeGrain": "PT1H", + "retention": "P93D" + }, + { + "timeGrain": "PT6H", + "retention": "P93D" + }, + { + "timeGrain": "PT12H", + "retention": "P93D" + }, + { + "timeGrain": "P1D", + "retention": "P93D" + } + ], + "dimensions": [ + { + "value": "operation/synthetic", + "localizedValue": "Is traffic synthetic" + }, + { + "value": "cloud/roleName", + "localizedValue": "Cloud role name" + } + ] + }, + { + "id": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill/providers/microsoft.insights/metricdefinitions/performanceCounters/requestExecutionTime", + "resourceId": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill", + "namespace": "microsoft.insights/components", + "category": "Performance counters", + "name": { + "value": "performanceCounters/requestExecutionTime", + "localizedValue": "HTTP request execution time" + }, + "displayDescription": "Execution time of the most recent request.", + "isDimensionRequired": false, + "unit": "MilliSeconds", + "primaryAggregationType": "Average", + "supportedAggregationTypes": [ + "Average", + "Maximum", + "Minimum" + ], + "metricAvailabilities": [ + { + "timeGrain": "PT1M", + "retention": "P93D" + }, + { + "timeGrain": "PT5M", + "retention": "P93D" + }, + { + "timeGrain": "PT15M", + "retention": "P93D" + }, + { + "timeGrain": "PT30M", + "retention": "P93D" + }, + { + "timeGrain": "PT1H", + "retention": "P93D" + }, + { + "timeGrain": "PT6H", + "retention": "P93D" + }, + { + "timeGrain": "PT12H", + "retention": "P93D" + }, + { + "timeGrain": "P1D", + "retention": "P93D" + } + ], + "dimensions": [ + { + "value": "cloud/roleInstance", + "localizedValue": "Cloud role instance" + } + ] + }, + { + "id": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill/providers/microsoft.insights/metricdefinitions/performanceCounters/requestsInQueue", + "resourceId": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill", + "namespace": "microsoft.insights/components", + "category": "Performance counters", + "name": { + "value": "performanceCounters/requestsInQueue", + "localizedValue": "HTTP requests in application queue" + }, + "displayDescription": "Length of the application request queue.", + "isDimensionRequired": false, + "unit": "Count", + "primaryAggregationType": "Average", + "supportedAggregationTypes": [ + "Average", + "Maximum", + "Minimum" + ], + "metricAvailabilities": [ + { + "timeGrain": "PT1M", + "retention": "P93D" + }, + { + "timeGrain": "PT5M", + "retention": "P93D" + }, + { + "timeGrain": "PT15M", + "retention": "P93D" + }, + { + "timeGrain": "PT30M", + "retention": "P93D" + }, + { + "timeGrain": "PT1H", + "retention": "P93D" + }, + { + "timeGrain": "PT6H", + "retention": "P93D" + }, + { + "timeGrain": "PT12H", + "retention": "P93D" + }, + { + "timeGrain": "P1D", + "retention": "P93D" + } + ], + "dimensions": [ + { + "value": "cloud/roleInstance", + "localizedValue": "Cloud role instance" + } + ] + }, + { + "id": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill/providers/microsoft.insights/metricdefinitions/performanceCounters/requestsPerSecond", + "resourceId": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill", + "namespace": "microsoft.insights/components", + "category": "Performance counters", + "name": { + "value": "performanceCounters/requestsPerSecond", + "localizedValue": "HTTP request rate" + }, + "displayDescription": "Rate of all requests to the application per second from ASP.NET.", + "isDimensionRequired": false, + "unit": "CountPerSecond", + "primaryAggregationType": "Average", + "supportedAggregationTypes": [ + "Average", + "Maximum", + "Minimum" + ], + "metricAvailabilities": [ + { + "timeGrain": "PT1M", + "retention": "P93D" + }, + { + "timeGrain": "PT5M", + "retention": "P93D" + }, + { + "timeGrain": "PT15M", + "retention": "P93D" + }, + { + "timeGrain": "PT30M", + "retention": "P93D" + }, + { + "timeGrain": "PT1H", + "retention": "P93D" + }, + { + "timeGrain": "PT6H", + "retention": "P93D" + }, + { + "timeGrain": "PT12H", + "retention": "P93D" + }, + { + "timeGrain": "P1D", + "retention": "P93D" + } + ], + "dimensions": [ + { + "value": "cloud/roleInstance", + "localizedValue": "Cloud role instance" + } + ] + }, + { + "id": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill/providers/microsoft.insights/metricdefinitions/performanceCounters/exceptionsPerSecond", + "resourceId": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill", + "namespace": "microsoft.insights/components", + "category": "Performance counters", + "name": { + "value": "performanceCounters/exceptionsPerSecond", + "localizedValue": "Exception rate" + }, + "displayDescription": "Count of handled and unhandled exceptions reported to windows, including .NET exceptions and unmanaged exceptions that are converted into .NET exceptions.", + "isDimensionRequired": false, + "unit": "CountPerSecond", + "primaryAggregationType": "Average", + "supportedAggregationTypes": [ + "Average", + "Maximum", + "Minimum" + ], + "metricAvailabilities": [ + { + "timeGrain": "PT1M", + "retention": "P93D" + }, + { + "timeGrain": "PT5M", + "retention": "P93D" + }, + { + "timeGrain": "PT15M", + "retention": "P93D" + }, + { + "timeGrain": "PT30M", + "retention": "P93D" + }, + { + "timeGrain": "PT1H", + "retention": "P93D" + }, + { + "timeGrain": "PT6H", + "retention": "P93D" + }, + { + "timeGrain": "PT12H", + "retention": "P93D" + }, + { + "timeGrain": "P1D", + "retention": "P93D" + } + ], + "dimensions": [ + { + "value": "cloud/roleInstance", + "localizedValue": "Cloud role instance" + } + ] + }, + { + "id": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill/providers/microsoft.insights/metricdefinitions/performanceCounters/processIOBytesPerSecond", + "resourceId": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill", + "namespace": "microsoft.insights/components", + "category": "Performance counters", + "name": { + "value": "performanceCounters/processIOBytesPerSecond", + "localizedValue": "Process IO rate" + }, + "displayDescription": "Total bytes per second read and written to files, network and devices.", + "isDimensionRequired": false, + "unit": "BytesPerSecond", + "primaryAggregationType": "Average", + "supportedAggregationTypes": [ + "Average", + "Maximum", + "Minimum" + ], + "metricAvailabilities": [ + { + "timeGrain": "PT1M", + "retention": "P93D" + }, + { + "timeGrain": "PT5M", + "retention": "P93D" + }, + { + "timeGrain": "PT15M", + "retention": "P93D" + }, + { + "timeGrain": "PT30M", + "retention": "P93D" + }, + { + "timeGrain": "PT1H", + "retention": "P93D" + }, + { + "timeGrain": "PT6H", + "retention": "P93D" + }, + { + "timeGrain": "PT12H", + "retention": "P93D" + }, + { + "timeGrain": "P1D", + "retention": "P93D" + } + ], + "dimensions": [ + { + "value": "cloud/roleInstance", + "localizedValue": "Cloud role instance" + } + ] + }, + { + "id": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill/providers/microsoft.insights/metricdefinitions/performanceCounters/processCpuPercentage", + "resourceId": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill", + "namespace": "microsoft.insights/components", + "category": "Performance counters", + "name": { + "value": "performanceCounters/processCpuPercentage", + "localizedValue": "Process CPU" + }, + "displayDescription": "The percentage of elapsed time that all process threads used the processor to execute instructions. This can vary between 0 to 100. This metric indicates the performance of w3wp process alone.", + "isDimensionRequired": false, + "unit": "Percent", + "primaryAggregationType": "Average", + "supportedAggregationTypes": [ + "Average", + "Maximum", + "Minimum" + ], + "metricAvailabilities": [ + { + "timeGrain": "PT1M", + "retention": "P93D" + }, + { + "timeGrain": "PT5M", + "retention": "P93D" + }, + { + "timeGrain": "PT15M", + "retention": "P93D" + }, + { + "timeGrain": "PT30M", + "retention": "P93D" + }, + { + "timeGrain": "PT1H", + "retention": "P93D" + }, + { + "timeGrain": "PT6H", + "retention": "P93D" + }, + { + "timeGrain": "PT12H", + "retention": "P93D" + }, + { + "timeGrain": "P1D", + "retention": "P93D" + } + ], + "dimensions": [ + { + "value": "cloud/roleInstance", + "localizedValue": "Cloud role instance" + } + ] + }, + { + "id": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill/providers/microsoft.insights/metricdefinitions/performanceCounters/processorCpuPercentage", + "resourceId": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill", + "namespace": "microsoft.insights/components", + "category": "Performance counters", + "name": { + "value": "performanceCounters/processorCpuPercentage", + "localizedValue": "Processor time" + }, + "displayDescription": "The percentage of time that the processor spends in non-idle threads.", + "isDimensionRequired": false, + "unit": "Percent", + "primaryAggregationType": "Average", + "supportedAggregationTypes": [ + "Average", + "Maximum", + "Minimum" + ], + "metricAvailabilities": [ + { + "timeGrain": "PT1M", + "retention": "P93D" + }, + { + "timeGrain": "PT5M", + "retention": "P93D" + }, + { + "timeGrain": "PT15M", + "retention": "P93D" + }, + { + "timeGrain": "PT30M", + "retention": "P93D" + }, + { + "timeGrain": "PT1H", + "retention": "P93D" + }, + { + "timeGrain": "PT6H", + "retention": "P93D" + }, + { + "timeGrain": "PT12H", + "retention": "P93D" + }, + { + "timeGrain": "P1D", + "retention": "P93D" + } + ], + "dimensions": [ + { + "value": "cloud/roleInstance", + "localizedValue": "Cloud role instance" + } + ] + }, + { + "id": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill/providers/microsoft.insights/metricdefinitions/performanceCounters/memoryAvailableBytes", + "resourceId": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill", + "namespace": "microsoft.insights/components", + "category": "Performance counters", + "name": { + "value": "performanceCounters/memoryAvailableBytes", + "localizedValue": "Available memory" + }, + "displayDescription": "Physical memory immediately available for allocation to a process or for system use.", + "isDimensionRequired": false, + "unit": "Bytes", + "primaryAggregationType": "Average", + "supportedAggregationTypes": [ + "Average", + "Maximum", + "Minimum" + ], + "metricAvailabilities": [ + { + "timeGrain": "PT1M", + "retention": "P93D" + }, + { + "timeGrain": "PT5M", + "retention": "P93D" + }, + { + "timeGrain": "PT15M", + "retention": "P93D" + }, + { + "timeGrain": "PT30M", + "retention": "P93D" + }, + { + "timeGrain": "PT1H", + "retention": "P93D" + }, + { + "timeGrain": "PT6H", + "retention": "P93D" + }, + { + "timeGrain": "PT12H", + "retention": "P93D" + }, + { + "timeGrain": "P1D", + "retention": "P93D" + } + ], + "dimensions": [ + { + "value": "cloud/roleInstance", + "localizedValue": "Cloud role instance" + } + ] + }, + { + "id": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill/providers/microsoft.insights/metricdefinitions/performanceCounters/processPrivateBytes", + "resourceId": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill", + "namespace": "microsoft.insights/components", + "category": "Performance counters", + "name": { + "value": "performanceCounters/processPrivateBytes", + "localizedValue": "Process private bytes" + }, + "displayDescription": "Memory exclusively assigned to the monitored application's processes.", + "isDimensionRequired": false, + "unit": "Bytes", + "primaryAggregationType": "Average", + "supportedAggregationTypes": [ + "Average", + "Maximum", + "Minimum" + ], + "metricAvailabilities": [ + { + "timeGrain": "PT1M", + "retention": "P93D" + }, + { + "timeGrain": "PT5M", + "retention": "P93D" + }, + { + "timeGrain": "PT15M", + "retention": "P93D" + }, + { + "timeGrain": "PT30M", + "retention": "P93D" + }, + { + "timeGrain": "PT1H", + "retention": "P93D" + }, + { + "timeGrain": "PT6H", + "retention": "P93D" + }, + { + "timeGrain": "PT12H", + "retention": "P93D" + }, + { + "timeGrain": "P1D", + "retention": "P93D" + } + ], + "dimensions": [ + { + "value": "cloud/roleInstance", + "localizedValue": "Cloud role instance" + } + ] + }, + { + "id": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill/providers/microsoft.insights/metricdefinitions/requests/duration", + "resourceId": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill", + "namespace": "microsoft.insights/components", + "category": "Server", + "name": { + "value": "requests/duration", + "localizedValue": "Server response time" + }, + "displayDescription": "Time between receiving an HTTP request and finishing sending the response.", + "isDimensionRequired": false, + "unit": "MilliSeconds", + "primaryAggregationType": "Average", + "supportedAggregationTypes": [ + "Average", + "Maximum", + "Minimum" + ], + "metricAvailabilities": [ + { + "timeGrain": "PT1M", + "retention": "P93D" + }, + { + "timeGrain": "PT5M", + "retention": "P93D" + }, + { + "timeGrain": "PT15M", + "retention": "P93D" + }, + { + "timeGrain": "PT30M", + "retention": "P93D" + }, + { + "timeGrain": "PT1H", + "retention": "P93D" + }, + { + "timeGrain": "PT6H", + "retention": "P93D" + }, + { + "timeGrain": "PT12H", + "retention": "P93D" + }, + { + "timeGrain": "P1D", + "retention": "P93D" + } + ], + "dimensions": [ + { + "value": "request/performanceBucket", + "localizedValue": "Request performance" + }, + { + "value": "request/resultCode", + "localizedValue": "Result code" + }, + { + "value": "operation/synthetic", + "localizedValue": "Is traffic synthetic" + }, + { + "value": "cloud/roleInstance", + "localizedValue": "Cloud role instance" + }, + { + "value": "request/success", + "localizedValue": "Successful request" + }, + { + "value": "cloud/roleName", + "localizedValue": "Cloud role name" + } + ] + }, + { + "id": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill/providers/microsoft.insights/metricdefinitions/requests/count", + "resourceId": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill", + "namespace": "microsoft.insights/components", + "category": "Server", + "name": { + "value": "requests/count", + "localizedValue": "Server requests" + }, + "displayDescription": "Count of HTTP requests completed.", + "isDimensionRequired": false, + "unit": "Count", + "primaryAggregationType": "Count", + "supportedAggregationTypes": [ + "Count" + ], + "metricAvailabilities": [ + { + "timeGrain": "PT1M", + "retention": "P93D" + }, + { + "timeGrain": "PT5M", + "retention": "P93D" + }, + { + "timeGrain": "PT15M", + "retention": "P93D" + }, + { + "timeGrain": "PT30M", + "retention": "P93D" + }, + { + "timeGrain": "PT1H", + "retention": "P93D" + }, + { + "timeGrain": "PT6H", + "retention": "P93D" + }, + { + "timeGrain": "PT12H", + "retention": "P93D" + }, + { + "timeGrain": "P1D", + "retention": "P93D" + } + ], + "dimensions": [ + { + "value": "request/performanceBucket", + "localizedValue": "Request performance" + }, + { + "value": "request/resultCode", + "localizedValue": "Result code" + }, + { + "value": "operation/synthetic", + "localizedValue": "Is traffic synthetic" + }, + { + "value": "cloud/roleInstance", + "localizedValue": "Cloud role instance" + }, + { + "value": "request/success", + "localizedValue": "Successful request" + }, + { + "value": "cloud/roleName", + "localizedValue": "Cloud role name" + } + ] + }, + { + "id": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill/providers/microsoft.insights/metricdefinitions/requests/failed", + "resourceId": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill", + "namespace": "microsoft.insights/components", + "category": "Failures", + "name": { + "value": "requests/failed", + "localizedValue": "Failed requests" + }, + "displayDescription": "Count of HTTP requests marked as failed. In most cases these are requests with a response code >= 400 and not equal to 401.", + "isDimensionRequired": false, + "unit": "Count", + "primaryAggregationType": "Count", + "supportedAggregationTypes": [ + "Count" + ], + "metricAvailabilities": [ + { + "timeGrain": "PT1M", + "retention": "P93D" + }, + { + "timeGrain": "PT5M", + "retention": "P93D" + }, + { + "timeGrain": "PT15M", + "retention": "P93D" + }, + { + "timeGrain": "PT30M", + "retention": "P93D" + }, + { + "timeGrain": "PT1H", + "retention": "P93D" + }, + { + "timeGrain": "PT6H", + "retention": "P93D" + }, + { + "timeGrain": "PT12H", + "retention": "P93D" + }, + { + "timeGrain": "P1D", + "retention": "P93D" + } + ], + "dimensions": [ + { + "value": "request/performanceBucket", + "localizedValue": "Request performance" + }, + { + "value": "request/resultCode", + "localizedValue": "Result code" + }, + { + "value": "operation/synthetic", + "localizedValue": "Is traffic synthetic" + }, + { + "value": "cloud/roleInstance", + "localizedValue": "Cloud role instance" + }, + { + "value": "cloud/roleName", + "localizedValue": "Cloud role name" + } + ] + }, + { + "id": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill/providers/microsoft.insights/metricdefinitions/requests/rate", + "resourceId": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill", + "namespace": "microsoft.insights/components", + "category": "Server", + "name": { + "value": "requests/rate", + "localizedValue": "Server request rate" + }, + "displayDescription": "Rate of server requests per second", + "isDimensionRequired": false, + "unit": "CountPerSecond", + "primaryAggregationType": "Average", + "supportedAggregationTypes": [ + "Average" + ], + "metricAvailabilities": [ + { + "timeGrain": "PT1M", + "retention": "P93D" + }, + { + "timeGrain": "PT5M", + "retention": "P93D" + }, + { + "timeGrain": "PT15M", + "retention": "P93D" + }, + { + "timeGrain": "PT30M", + "retention": "P93D" + }, + { + "timeGrain": "PT1H", + "retention": "P93D" + }, + { + "timeGrain": "PT6H", + "retention": "P93D" + }, + { + "timeGrain": "PT12H", + "retention": "P93D" + }, + { + "timeGrain": "P1D", + "retention": "P93D" + } + ], + "dimensions": [ + { + "value": "request/performanceBucket", + "localizedValue": "Request performance" + }, + { + "value": "request/resultCode", + "localizedValue": "Result code" + }, + { + "value": "operation/synthetic", + "localizedValue": "Is traffic synthetic" + }, + { + "value": "cloud/roleInstance", + "localizedValue": "Cloud role instance" + }, + { + "value": "request/success", + "localizedValue": "Successful request" + }, + { + "value": "cloud/roleName", + "localizedValue": "Cloud role name" + } + ] + }, + { + "id": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill/providers/microsoft.insights/metricdefinitions/exceptions/count", + "resourceId": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill", + "namespace": "microsoft.insights/components", + "category": "Failures", + "name": { + "value": "exceptions/count", + "localizedValue": "Exceptions" + }, + "displayDescription": "Combined count of all uncaught exceptions.", + "isDimensionRequired": false, + "unit": "Count", + "primaryAggregationType": "Count", + "supportedAggregationTypes": [ + "Count" + ], + "metricAvailabilities": [ + { + "timeGrain": "PT1M", + "retention": "P93D" + }, + { + "timeGrain": "PT5M", + "retention": "P93D" + }, + { + "timeGrain": "PT15M", + "retention": "P93D" + }, + { + "timeGrain": "PT30M", + "retention": "P93D" + }, + { + "timeGrain": "PT1H", + "retention": "P93D" + }, + { + "timeGrain": "PT6H", + "retention": "P93D" + }, + { + "timeGrain": "PT12H", + "retention": "P93D" + }, + { + "timeGrain": "P1D", + "retention": "P93D" + } + ], + "dimensions": [ + { + "value": "cloud/roleName", + "localizedValue": "Cloud role name" + }, + { + "value": "cloud/roleInstance", + "localizedValue": "Cloud role instance" + }, + { + "value": "client/type", + "localizedValue": "Device type" + } + ] + }, + { + "id": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill/providers/microsoft.insights/metricdefinitions/exceptions/browser", + "resourceId": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill", + "namespace": "microsoft.insights/components", + "category": "Failures", + "name": { + "value": "exceptions/browser", + "localizedValue": "Browser exceptions" + }, + "displayDescription": "Count of uncaught exceptions thrown in the browser.", + "isDimensionRequired": false, + "unit": "Count", + "primaryAggregationType": "Count", + "supportedAggregationTypes": [ + "Count" + ], + "metricAvailabilities": [ + { + "timeGrain": "PT1M", + "retention": "P93D" + }, + { + "timeGrain": "PT5M", + "retention": "P93D" + }, + { + "timeGrain": "PT15M", + "retention": "P93D" + }, + { + "timeGrain": "PT30M", + "retention": "P93D" + }, + { + "timeGrain": "PT1H", + "retention": "P93D" + }, + { + "timeGrain": "PT6H", + "retention": "P93D" + }, + { + "timeGrain": "PT12H", + "retention": "P93D" + }, + { + "timeGrain": "P1D", + "retention": "P93D" + } + ], + "dimensions": [ + { + "value": "cloud/roleName", + "localizedValue": "Cloud role name" + } + ] + }, + { + "id": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill/providers/microsoft.insights/metricdefinitions/exceptions/server", + "resourceId": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill", + "namespace": "microsoft.insights/components", + "category": "Failures", + "name": { + "value": "exceptions/server", + "localizedValue": "Server exceptions" + }, + "displayDescription": "Count of uncaught exceptions thrown in the server application.", + "isDimensionRequired": false, + "unit": "Count", + "primaryAggregationType": "Count", + "supportedAggregationTypes": [ + "Count" + ], + "metricAvailabilities": [ + { + "timeGrain": "PT1M", + "retention": "P93D" + }, + { + "timeGrain": "PT5M", + "retention": "P93D" + }, + { + "timeGrain": "PT15M", + "retention": "P93D" + }, + { + "timeGrain": "PT30M", + "retention": "P93D" + }, + { + "timeGrain": "PT1H", + "retention": "P93D" + }, + { + "timeGrain": "PT6H", + "retention": "P93D" + }, + { + "timeGrain": "PT12H", + "retention": "P93D" + }, + { + "timeGrain": "P1D", + "retention": "P93D" + } + ], + "dimensions": [ + { + "value": "cloud/roleName", + "localizedValue": "Cloud role name" + }, + { + "value": "cloud/roleInstance", + "localizedValue": "Cloud role instance" + } + ] + }, + { + "id": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill/providers/microsoft.insights/metricdefinitions/traces/count", + "resourceId": "/subscriptions/182c901a-129a-4f5d-86e4-cc6b294590a2/resourceGroups/hyr-log/providers/microsoft.insights/components/f1-bill", + "namespace": "microsoft.insights/components", + "category": "Usage", + "name": { + "value": "traces/count", + "localizedValue": "Traces" + }, + "displayDescription": "Trace document count", + "isDimensionRequired": false, + "unit": "Count", + "primaryAggregationType": "Count", + "supportedAggregationTypes": [ + "Count" + ], + "metricAvailabilities": [ + { + "timeGrain": "PT1M", + "retention": "P93D" + }, + { + "timeGrain": "PT5M", + "retention": "P93D" + }, + { + "timeGrain": "PT15M", + "retention": "P93D" + }, + { + "timeGrain": "PT30M", + "retention": "P93D" + }, + { + "timeGrain": "PT1H", + "retention": "P93D" + }, + { + "timeGrain": "PT6H", + "retention": "P93D" + }, + { + "timeGrain": "PT12H", + "retention": "P93D" + }, + { + "timeGrain": "P1D", + "retention": "P93D" + } + ], + "dimensions": [ + { + "value": "trace/severityLevel", + "localizedValue": "Severity level" + }, + { + "value": "operation/synthetic", + "localizedValue": "Is traffic synthetic" + }, + { + "value": "cloud/roleName", + "localizedValue": "Cloud role name" + }, + { + "value": "cloud/roleInstance", + "localizedValue": "Cloud role instance" + } + ] + } + ] + } + } + } +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2018-01-01/examples/GetMetricMetadata.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2018-01-01/examples/GetMetricMetadata.json index 2d8a21817013..701b3fda5058 100644 --- a/specification/monitor/resource-manager/Microsoft.Insights/stable/2018-01-01/examples/GetMetricMetadata.json +++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2018-01-01/examples/GetMetricMetadata.json @@ -26,6 +26,7 @@ "value": "BlobCapacity", "localizedValue": "Blob Capacity" }, + "displayDescription": "The amount of storage used by the storage account’s Blob service in bytes.", "unit": "Bytes", "timeseries": [ { 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 186b0b6002f2..ac4c7d13b005 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 @@ -74,6 +74,9 @@ "x-ms-examples": { "Get Metric Definitions without filter": { "$ref": "./examples/GetMetricDefinitions.json" + }, + "Get Application Insights Metric Definitions without filter": { + "$ref": "./examples/GetMetricDefinitionsApplicationInsights.json" } } } @@ -113,7 +116,7 @@ }, "Unit": { "type": "string", - "description": "the unit of the metric.", + "description": "The unit of the metric.", "enum": [ "Count", "Bytes", @@ -168,6 +171,14 @@ "$ref": "#/definitions/LocalizableString", "description": "the name and the display name of the metric, i.e. it is a localizable string." }, + "displayDescription": { + "type": "string", + "description": "Detailed description of this metric." + }, + "category": { + "type": "string", + "description": "Custom category name for this metric." + }, "unit": { "$ref": "#/definitions/Unit", "description": "the unit of the metric." 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 a66c8125be9e..8f531f663b66 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 @@ -127,7 +127,7 @@ }, "Unit": { "type": "string", - "description": "the unit of the metric.", + "description": "The unit of the metric.", "enum": [ "Count", "Bytes", @@ -220,7 +220,7 @@ "type": "number", "format": "int32", "minimum": 0, - "description": "The integer value representing the cost of the query, for data case." + "description": "The integer value representing the relative cost of the query." }, "timespan": { "type": "string", @@ -233,11 +233,11 @@ }, "namespace": { "type": "string", - "description": "The namespace of the metrics been queried" + "description": "The namespace of the metrics being queried" }, "resourceregion": { "type": "string", - "description": "The region of the resource been queried for metrics." + "description": "The region of the resource being queried for metrics." }, "value": { "type": "array", @@ -268,6 +268,14 @@ "$ref": "#/definitions/LocalizableString", "description": "the name and the display name of the metric, i.e. it is localizable string." }, + "displayDescription": { + "type": "string", + "description": "Detailed description of this metric." + }, + "errorCode": { + "type": "string", + "description": "'Success' or the error details on query failures for this metric." + }, "unit": { "$ref": "#/definitions/Unit", "description": "the unit of the metric." @@ -284,6 +292,7 @@ "id", "type", "name", + "displayDescription", "unit", "timeseries" ], diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2018-04-16/scheduledQueryRule_API.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2018-04-16/scheduledQueryRule_API.json index 8a8848328974..6bd3f2400fd7 100644 --- a/specification/monitor/resource-manager/Microsoft.Insights/stable/2018-04-16/scheduledQueryRule_API.json +++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2018-04-16/scheduledQueryRule_API.json @@ -603,6 +603,11 @@ "type": "string", "description": "The display name of the alert rule" }, + "autoMitigate": { + "type": "boolean", + "default": false, + "description": "The flag that indicates whether the alert should be automatically resolved or not. The default is false." + }, "enabled": { "type": "string", "description": "The flag which indicates whether the Log Search rule is enabled. Value should be true or false", diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2019-03-01/actionGroups_API.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2019-03-01/actionGroups_API.json index 37a6c7dd628d..f7bf2ef3138b 100644 --- a/specification/monitor/resource-manager/Microsoft.Insights/stable/2019-03-01/actionGroups_API.json +++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2019-03-01/actionGroups_API.json @@ -516,6 +516,7 @@ }, "useCommonAlertSchema": { "type": "boolean", + "default": false, "description": "Indicates whether to use common alert schema." }, "status": { @@ -526,8 +527,7 @@ }, "required": [ "name", - "emailAddress", - "useCommonAlertSchema" + "emailAddress" ] }, "SmsReceiver": { @@ -570,13 +570,13 @@ }, "useCommonAlertSchema": { "type": "boolean", + "default": false, "description": "Indicates whether to use common alert schema." } }, "required": [ "name", - "serviceUri", - "useCommonAlertSchema" + "serviceUri" ] }, "ItsmReceiver": { @@ -657,6 +657,7 @@ }, "useCommonAlertSchema": { "type": "boolean", + "default": false, "description": "Indicates whether to use common alert schema." } }, @@ -664,8 +665,7 @@ "automationAccountId", "runbookName", "webhookResourceId", - "isGlobalRunbook", - "useCommonAlertSchema" + "isGlobalRunbook" ] }, "VoiceReceiver": { @@ -707,14 +707,14 @@ }, "useCommonAlertSchema": { "type": "boolean", + "default": false, "description": "Indicates whether to use common alert schema." } }, "required": [ "name", "resourceId", - "callbackUrl", - "useCommonAlertSchema" + "callbackUrl" ] }, "AzureFunctionReceiver": { @@ -738,6 +738,7 @@ }, "useCommonAlertSchema": { "type": "boolean", + "default": false, "description": "Indicates whether to use common alert schema." } }, @@ -745,8 +746,7 @@ "name", "functionAppResourceId", "functionName", - "httpTriggerUrl", - "useCommonAlertSchema" + "httpTriggerUrl" ] }, "ArmRoleReceiver": { @@ -762,13 +762,13 @@ }, "useCommonAlertSchema": { "type": "boolean", + "default": false, "description": "Indicates whether to use common alert schema." } }, "required": [ "name", - "roleId", - "useCommonAlertSchema" + "roleId" ] }, "ReceiverStatus": { diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2019-06-01/actionGroups_API.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2019-06-01/actionGroups_API.json index 519fa09d498a..edaa8dbf5028 100644 --- a/specification/monitor/resource-manager/Microsoft.Insights/stable/2019-06-01/actionGroups_API.json +++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2019-06-01/actionGroups_API.json @@ -516,6 +516,7 @@ }, "useCommonAlertSchema": { "type": "boolean", + "default": false, "description": "Indicates whether to use common alert schema." }, "status": { @@ -526,8 +527,7 @@ }, "required": [ "name", - "emailAddress", - "useCommonAlertSchema" + "emailAddress" ] }, "SmsReceiver": { @@ -570,6 +570,7 @@ }, "useCommonAlertSchema": { "type": "boolean", + "default": false, "description": "Indicates whether to use common alert schema." }, "useAadAuth": { @@ -592,8 +593,7 @@ }, "required": [ "name", - "serviceUri", - "useCommonAlertSchema" + "serviceUri" ] }, "ItsmReceiver": { @@ -674,6 +674,7 @@ }, "useCommonAlertSchema": { "type": "boolean", + "default": false, "description": "Indicates whether to use common alert schema." } }, @@ -681,8 +682,7 @@ "automationAccountId", "runbookName", "webhookResourceId", - "isGlobalRunbook", - "useCommonAlertSchema" + "isGlobalRunbook" ] }, "VoiceReceiver": { @@ -724,14 +724,14 @@ }, "useCommonAlertSchema": { "type": "boolean", + "default": false, "description": "Indicates whether to use common alert schema." } }, "required": [ "name", "resourceId", - "callbackUrl", - "useCommonAlertSchema" + "callbackUrl" ] }, "AzureFunctionReceiver": { @@ -755,6 +755,7 @@ }, "useCommonAlertSchema": { "type": "boolean", + "default": false, "description": "Indicates whether to use common alert schema." } }, @@ -762,8 +763,7 @@ "name", "functionAppResourceId", "functionName", - "httpTriggerUrl", - "useCommonAlertSchema" + "httpTriggerUrl" ] }, "ArmRoleReceiver": { @@ -779,13 +779,13 @@ }, "useCommonAlertSchema": { "type": "boolean", + "default": false, "description": "Indicates whether to use common alert schema." } }, "required": [ "name", - "roleId", - "useCommonAlertSchema" + "roleId" ] }, "ReceiverStatus": { diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/dataCollectionEndpoints_API.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/dataCollectionEndpoints_API.json new file mode 100644 index 000000000000..77b785c40fa4 --- /dev/null +++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/dataCollectionEndpoints_API.json @@ -0,0 +1,576 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Monitor Data Collection Endpoints API", + "description": "Provides operations for working with Azure Monitor data collection endpoints", + "version": "2021-04-01", + "x-ms-code-generation-settings": { + "name": "MonitorManagementClient" + } + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/dataCollectionEndpoints": { + "get": { + "tags": [ + "DataCollectionEndpoints" + ], + "summary": "Lists all data collection endpoints in the specified resource group.", + "operationId": "DataCollectionEndpoints_ListByResourceGroup", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request completed successfully", + "schema": { + "$ref": "#/definitions/DataCollectionEndpointResourceListResult" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List data collection endpoints by resource group": { + "$ref": "./examples/DataCollectionEndpointsListByResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Insights/dataCollectionEndpoints": { + "get": { + "tags": [ + "DataCollectionEndpoints" + ], + "summary": "Lists all data collection endpoints in the specified subscription", + "operationId": "DataCollectionEndpoints_ListBySubscription", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request completed successfully", + "schema": { + "$ref": "#/definitions/DataCollectionEndpointResourceListResult" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List data collection endpoints by subscription": { + "$ref": "./examples/DataCollectionEndpointsListBySubscription.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/dataCollectionEndpoints/{dataCollectionEndpointName}": { + "get": { + "tags": [ + "DataCollectionEndpoints" + ], + "summary": "Returns the specified data collection endpoint.", + "operationId": "DataCollectionEndpoints_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DataCollectionEndpointNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request completed successfully", + "schema": { + "$ref": "#/definitions/DataCollectionEndpointResource" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get data collection endpoint": { + "$ref": "./examples/DataCollectionEndpointsGet.json" + } + } + }, + "put": { + "tags": [ + "DataCollectionEndpoints" + ], + "summary": "Creates or updates a data collection endpoint.", + "operationId": "DataCollectionEndpoints_Create", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DataCollectionEndpointNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "body", + "description": "The payload", + "schema": { + "$ref": "#/definitions/DataCollectionEndpointResource" + } + } + ], + "responses": { + "200": { + "description": "Data collection endpoint was successfully updated", + "schema": { + "$ref": "#/definitions/DataCollectionEndpointResource" + } + }, + "201": { + "description": "Data collection endpoint was successfully created", + "schema": { + "$ref": "#/definitions/DataCollectionEndpointResource" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or update data collection endpoint": { + "$ref": "./examples/DataCollectionEndpointsCreate.json" + } + } + }, + "patch": { + "tags": [ + "DataCollectionEndpoints" + ], + "summary": "Updates part of a data collection endpoint.", + "operationId": "DataCollectionEndpoints_Update", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DataCollectionEndpointNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "body", + "description": "The payload", + "schema": { + "$ref": "#/definitions/ResourceForUpdate" + } + } + ], + "responses": { + "200": { + "description": "Data collection endpoint was successfully updated", + "schema": { + "$ref": "#/definitions/DataCollectionEndpointResource" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Update data collection endpoint": { + "$ref": "./examples/DataCollectionEndpointsUpdate.json" + } + } + }, + "delete": { + "tags": [ + "DataCollectionEndpoints" + ], + "summary": "Deletes a data collection endpoint.", + "operationId": "DataCollectionEndpoints_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DataCollectionEndpointNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Data collection endpoint was successfully deleted" + }, + "204": { + "description": "Data collection endpoint did not exist" + }, + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete data collection endpoint": { + "$ref": "./examples/DataCollectionEndpointsDelete.json" + } + } + } + } + }, + "definitions": { + "ConfigurationAccessEndpointSpec": { + "description": "Definition of the endpoint used for accessing configuration.", + "type": "object", + "properties": { + "endpoint": { + "description": "The endpoint. This property is READ-ONLY.", + "type": "string", + "readOnly": true, + "example": "https://mydce-abcd.eastus-1.control.monitor.azure.com", + "x-ms-mutability": [ + "read" + ] + } + } + }, + "LogsIngestionEndpointSpec": { + "description": "Definition of the endpoint used for ingesting logs.", + "type": "object", + "properties": { + "endpoint": { + "description": "The endpoint. This property is READ-ONLY.", + "type": "string", + "readOnly": true, + "example": "https://mydce-abcd.eastus-1.ingest.monitor.azure.com", + "x-ms-mutability": [ + "read" + ] + } + } + }, + "NetworkRuleSet": { + "description": "Definition of the network rules.", + "type": "object", + "properties": { + "publicNetworkAccess": { + "description": "The configuration to set whether network access from public internet to the endpoints are allowed.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "KnownPublicNetworkAccessOptions", + "modelAsString": true + } + } + } + }, + "DataCollectionEndpoint": { + "description": "Definition of data collection endpoint.", + "type": "object", + "properties": { + "description": { + "description": "Description of the data collection endpoint.", + "type": "string" + }, + "immutableId": { + "description": "The immutable ID of this data collection endpoint resource. This property is READ-ONLY.", + "type": "string", + "example": "dce-b74e0d383fc9415abaa584ec41adece3" + }, + "configurationAccess": { + "description": "The endpoint used by agents to access their configuration.", + "allOf": [ + { + "$ref": "#/definitions/ConfigurationAccessEndpointSpec" + } + ] + }, + "logsIngestion": { + "description": "The endpoint used by clients to ingest logs.", + "allOf": [ + { + "$ref": "#/definitions/LogsIngestionEndpointSpec" + } + ] + }, + "networkAcls": { + "description": "Network access control rules for the endpoints.", + "allOf": [ + { + "$ref": "#/definitions/NetworkRuleSet" + } + ] + }, + "provisioningState": { + "description": "The resource provisioning state. This property is READ-ONLY.", + "enum": [ + "Creating", + "Updating", + "Deleting", + "Succeeded", + "Failed" + ], + "type": "string", + "readOnly": true, + "example": "Creating", + "x-ms-enum": { + "name": "KnownDataCollectionEndpointProvisioningState", + "modelAsString": true + }, + "x-ms-mutability": [ + "read" + ] + } + } + }, + "DataCollectionEndpointResource": { + "description": "Definition of ARM tracked top level resource.", + "required": [ + "location" + ], + "type": "object", + "properties": { + "properties": { + "description": "Resource properties.", + "allOf": [ + { + "$ref": "#/definitions/DataCollectionEndpoint" + } + ], + "x-ms-client-flatten": true + }, + "location": { + "description": "The geo-location where the resource lives.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "tags": { + "description": "Resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "kind": { + "description": "The kind of the resource.", + "enum": [ + "Linux", + "Windows" + ], + "type": "string", + "example": "Linux", + "x-ms-enum": { + "name": "KnownDataCollectionEndpointResourceKind", + "modelAsString": true + } + }, + "id": { + "description": "Fully qualified ID of the resource.", + "type": "string", + "readOnly": true, + "example": "/subscriptions/703362b3-f278-4e4b-9179-c76eaf41ffc2/resourceGroups/myResourceGroup/providers/Microsoft.Insights/dataCollectionEndpoints/myCollectionEndpoint", + "x-ms-mutability": [ + "read" + ] + }, + "name": { + "description": "The name of the resource.", + "type": "string", + "readOnly": true, + "example": "myCollectionEndpoint", + "x-ms-mutability": [ + "read" + ] + }, + "type": { + "description": "The type of the resource.", + "type": "string", + "readOnly": true, + "example": "Microsoft.Insights/dataCollectionEndpoints", + "x-ms-mutability": [ + "read" + ] + }, + "etag": { + "description": "Resource entity tag (ETag).", + "type": "string", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + }, + "systemData": { + "description": "Metadata pertaining to creation and last modification of the resource.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData" + } + ], + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + } + }, + "x-ms-azure-resource": true + }, + "DataCollectionEndpointResourceListResult": { + "description": "A pageable list of resources.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "A list of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/DataCollectionEndpointResource" + } + }, + "nextLink": { + "description": "The URL to use for getting the next set of results.", + "type": "string" + } + } + }, + "ResourceForUpdate": { + "description": "Definition of ARM tracked top level resource properties for update operation.", + "type": "object", + "properties": { + "tags": { + "description": "Resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + } + }, + "parameters": { + "DataCollectionEndpointNameParameter": { + "in": "path", + "name": "dataCollectionEndpointName", + "description": "The name of the data collection endpoint. The name is case insensitive.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow" + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/dataCollectionRuleAssociations_API.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/dataCollectionRuleAssociations_API.json new file mode 100644 index 000000000000..61ae89f8e81e --- /dev/null +++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/dataCollectionRuleAssociations_API.json @@ -0,0 +1,423 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Monitor Data Collection Rule Associations API", + "description": "Provides operations for working with Azure Monitor data collection rule associations", + "version": "2021-04-01", + "x-ms-code-generation-settings": { + "name": "MonitorManagementClient" + } + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/{resourceUri}/providers/Microsoft.Insights/dataCollectionRuleAssociations": { + "get": { + "tags": [ + "DataCollectionRuleAssociations" + ], + "summary": "Lists associations for the specified resource.", + "operationId": "DataCollectionRuleAssociations_ListByResource", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ResourceUriParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request completed successfully", + "schema": { + "$ref": "#/definitions/DataCollectionRuleAssociationProxyOnlyResourceListResult" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List associations for specified resource": { + "$ref": "./examples/DataCollectionRuleAssociationsListByResource.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/dataCollectionRules/{dataCollectionRuleName}/associations": { + "get": { + "tags": [ + "DataCollectionRuleAssociations" + ], + "summary": "Lists associations for the specified data collection rule.", + "operationId": "DataCollectionRuleAssociations_ListByRule", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DataCollectionRuleNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request completed successfully", + "schema": { + "$ref": "#/definitions/DataCollectionRuleAssociationProxyOnlyResourceListResult" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List associations for specified data collection rule": { + "$ref": "./examples/DataCollectionRuleAssociationsListByRule.json" + } + } + } + }, + "/{resourceUri}/providers/Microsoft.Insights/dataCollectionRuleAssociations/{associationName}": { + "get": { + "tags": [ + "DataCollectionRuleAssociations" + ], + "summary": "Returns the specified association.", + "operationId": "DataCollectionRuleAssociations_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ResourceUriParameter" + }, + { + "$ref": "#/parameters/AssociationNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request completed successfully", + "schema": { + "$ref": "#/definitions/DataCollectionRuleAssociationProxyOnlyResource" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get association": { + "$ref": "./examples/DataCollectionRuleAssociationsGet.json" + } + } + }, + "put": { + "tags": [ + "DataCollectionRuleAssociations" + ], + "summary": "Creates or updates an association.", + "operationId": "DataCollectionRuleAssociations_Create", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ResourceUriParameter" + }, + { + "$ref": "#/parameters/AssociationNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "body", + "description": "The payload", + "schema": { + "$ref": "#/definitions/DataCollectionRuleAssociationProxyOnlyResource" + } + } + ], + "responses": { + "200": { + "description": "Association was successfully updated", + "schema": { + "$ref": "#/definitions/DataCollectionRuleAssociationProxyOnlyResource" + } + }, + "201": { + "description": "Association was successfully created", + "schema": { + "$ref": "#/definitions/DataCollectionRuleAssociationProxyOnlyResource" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or update association": { + "$ref": "./examples/DataCollectionRuleAssociationsCreate.json" + } + } + }, + "delete": { + "tags": [ + "DataCollectionRuleAssociations" + ], + "summary": "Deletes an association.", + "operationId": "DataCollectionRuleAssociations_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ResourceUriParameter" + }, + { + "$ref": "#/parameters/AssociationNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Association was successfully deleted" + }, + "204": { + "description": "Association did not exist" + }, + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete association": { + "$ref": "./examples/DataCollectionRuleAssociationsDelete.json" + } + } + } + } + }, + "definitions": { + "DataCollectionRuleAssociation": { + "description": "Definition of association of a data collection rule with a monitored Azure resource.", + "type": "object", + "properties": { + "description": { + "description": "Description of the association.", + "type": "string" + }, + "dataCollectionRuleId": { + "description": "The resource ID of the data collection rule that is to be associated.", + "type": "string", + "example": "/subscriptions/703362b3-f278-4e4b-9179-c76eaf41ffc2/resourceGroups/myResourceGroup/providers/Microsoft.Insights/dataCollectionRules/myCollectionRule" + }, + "dataCollectionEndpointId": { + "description": "The resource ID of the data collection endpoint that is to be associated.", + "type": "string", + "example": "/subscriptions/703362b3-f278-4e4b-9179-c76eaf41ffc2/resourceGroups/myResourceGroup/providers/Microsoft.Insights/dataCollectionEndpoints/myCollectionEndpoint" + }, + "provisioningState": { + "description": "The resource provisioning state.", + "enum": [ + "Creating", + "Updating", + "Deleting", + "Succeeded", + "Failed" + ], + "type": "string", + "readOnly": true, + "example": "Creating", + "x-ms-enum": { + "name": "KnownDataCollectionRuleAssociationProvisioningState", + "modelAsString": true + }, + "x-ms-mutability": [ + "read" + ] + } + } + }, + "DataCollectionRuleAssociationProxyOnlyResource": { + "description": "Definition of generic ARM proxy resource.", + "type": "object", + "properties": { + "properties": { + "description": "Resource properties.", + "allOf": [ + { + "$ref": "#/definitions/DataCollectionRuleAssociation" + } + ], + "x-ms-client-flatten": true + }, + "id": { + "description": "Fully qualified ID of the resource.", + "type": "string", + "readOnly": true, + "example": "/subscriptions/703362b3-f278-4e4b-9179-c76eaf41ffc2/resourceGroups/myResourceGroup/providers/Microsoft.Insights/dataCollectionRules/myCollectionRule", + "x-ms-mutability": [ + "read" + ] + }, + "name": { + "description": "The name of the resource.", + "type": "string", + "readOnly": true, + "example": "myCollectionRule", + "x-ms-mutability": [ + "read" + ] + }, + "type": { + "description": "The type of the resource.", + "type": "string", + "readOnly": true, + "example": "Microsoft.Insights/dataCollectionRules", + "x-ms-mutability": [ + "read" + ] + }, + "etag": { + "description": "Resource entity tag (ETag).", + "type": "string", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + }, + "systemData": { + "description": "Metadata pertaining to creation and last modification of the resource.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData" + } + ], + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + } + }, + "x-ms-azure-resource": true + }, + "DataCollectionRuleAssociationProxyOnlyResourceListResult": { + "description": "A pageable list of resources.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "A list of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/DataCollectionRuleAssociationProxyOnlyResource" + } + }, + "nextLink": { + "description": "The URL to use for getting the next set of results.", + "type": "string" + } + } + } + }, + "parameters": { + "AssociationNameParameter": { + "in": "path", + "name": "associationName", + "description": "The name of the association. The name is case insensitive.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "DataCollectionRuleNameParameter": { + "in": "path", + "name": "dataCollectionRuleName", + "description": "The name of the data collection rule. The name is case insensitive.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ResourceUriParameter": { + "in": "path", + "name": "resourceUri", + "description": "The identifier of the resource.", + "required": true, + "type": "string", + "minLength": 1, + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow" + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/dataCollectionRules_API.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/dataCollectionRules_API.json new file mode 100644 index 000000000000..35355020ccc7 --- /dev/null +++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/dataCollectionRules_API.json @@ -0,0 +1,854 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Monitor Data Collection Rules API", + "description": "Provides operations for working with Azure Monitor data collection rules", + "version": "2021-04-01", + "x-ms-code-generation-settings": { + "name": "MonitorManagementClient" + } + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/dataCollectionRules": { + "get": { + "tags": [ + "DataCollectionRules" + ], + "summary": "Lists all data collection rules in the specified resource group.", + "operationId": "DataCollectionRules_ListByResourceGroup", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request completed successfully", + "schema": { + "$ref": "#/definitions/DataCollectionRuleResourceListResult" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List data collection rules by resource group": { + "$ref": "./examples/DataCollectionRulesListByResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Insights/dataCollectionRules": { + "get": { + "tags": [ + "DataCollectionRules" + ], + "summary": "Lists all data collection rules in the specified subscription.", + "operationId": "DataCollectionRules_ListBySubscription", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request completed successfully", + "schema": { + "$ref": "#/definitions/DataCollectionRuleResourceListResult" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List data collection rules by subscription": { + "$ref": "./examples/DataCollectionRulesListBySubscription.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/dataCollectionRules/{dataCollectionRuleName}": { + "get": { + "tags": [ + "DataCollectionRules" + ], + "summary": "Returns the specified data collection rule.", + "operationId": "DataCollectionRules_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DataCollectionRuleNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request completed successfully", + "schema": { + "$ref": "#/definitions/DataCollectionRuleResource" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get data collection rule": { + "$ref": "./examples/DataCollectionRulesGet.json" + } + } + }, + "put": { + "tags": [ + "DataCollectionRules" + ], + "summary": "Creates or updates a data collection rule.", + "operationId": "DataCollectionRules_Create", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DataCollectionRuleNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "body", + "description": "The payload", + "schema": { + "$ref": "#/definitions/DataCollectionRuleResource" + } + } + ], + "responses": { + "200": { + "description": "Data collection rule was successfully updated", + "schema": { + "$ref": "#/definitions/DataCollectionRuleResource" + } + }, + "201": { + "description": "Data collection rule was successfully created", + "schema": { + "$ref": "#/definitions/DataCollectionRuleResource" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or update data collection rule": { + "$ref": "./examples/DataCollectionRulesCreate.json" + } + } + }, + "patch": { + "tags": [ + "DataCollectionRules" + ], + "summary": "Updates part of a data collection rule.", + "operationId": "DataCollectionRules_Update", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DataCollectionRuleNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "body", + "description": "The payload", + "schema": { + "$ref": "#/definitions/ResourceForUpdate" + } + } + ], + "responses": { + "200": { + "description": "Data collection rule was successfully updated", + "schema": { + "$ref": "#/definitions/DataCollectionRuleResource" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Update data collection rule": { + "$ref": "./examples/DataCollectionRulesUpdate.json" + } + } + }, + "delete": { + "tags": [ + "DataCollectionRules" + ], + "summary": "Deletes a data collection rule.", + "operationId": "DataCollectionRules_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DataCollectionRuleNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Data collection rule was successfully deleted" + }, + "204": { + "description": "Data collection rule did not exist" + }, + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete data collection rule": { + "$ref": "./examples/DataCollectionRulesDelete.json" + } + } + } + } + }, + "definitions": { + "PerfCounterDataSource": { + "description": "Definition of which performance counters will be collected and how they will be collected by this data collection rule.\r\nCollected from both Windows and Linux machines where the counter is present.", + "type": "object", + "properties": { + "streams": { + "description": "List of streams that this data source will be sent to.\r\nA stream indicates what schema will be used for this data and usually what table in Log Analytics the data will be sent to.", + "type": "array", + "items": { + "enum": [ + "Microsoft-Perf", + "Microsoft-InsightsMetrics" + ], + "type": "string", + "x-ms-enum": { + "name": "KnownPerfCounterDataSourceStreams", + "modelAsString": true + } + } + }, + "samplingFrequencyInSeconds": { + "format": "int32", + "description": "The number of seconds between consecutive counter measurements (samples).", + "type": "integer", + "example": 15 + }, + "counterSpecifiers": { + "description": "A list of specifier names of the performance counters you want to collect.\r\nUse a wildcard (*) to collect a counter for all instances.\r\nTo get a list of performance counters on Windows, run the command 'typeperf'.", + "type": "array", + "items": { + "type": "string" + } + }, + "name": { + "description": "A friendly name for the data source. \r\nThis name should be unique across all data sources (regardless of type) within the data collection rule.", + "type": "string", + "example": "myDataSource1" + } + } + }, + "WindowsEventLogDataSource": { + "description": "Definition of which Windows Event Log events will be collected and how they will be collected.\r\nOnly collected from Windows machines.", + "type": "object", + "properties": { + "streams": { + "description": "List of streams that this data source will be sent to.\r\nA stream indicates what schema will be used for this data and usually what table in Log Analytics the data will be sent to.", + "type": "array", + "items": { + "enum": [ + "Microsoft-WindowsEvent", + "Microsoft-Event" + ], + "type": "string", + "x-ms-enum": { + "name": "KnownWindowsEventLogDataSourceStreams", + "modelAsString": true + } + } + }, + "xPathQueries": { + "description": "A list of Windows Event Log queries in XPATH format.", + "type": "array", + "items": { + "type": "string" + } + }, + "name": { + "description": "A friendly name for the data source. \r\nThis name should be unique across all data sources (regardless of type) within the data collection rule.", + "type": "string", + "example": "myDataSource1" + } + } + }, + "SyslogDataSource": { + "description": "Definition of which syslog data will be collected and how it will be collected.\r\nOnly collected from Linux machines.", + "type": "object", + "properties": { + "streams": { + "description": "List of streams that this data source will be sent to.\r\nA stream indicates what schema will be used for this data and usually what table in Log Analytics the data will be sent to.", + "type": "array", + "items": { + "enum": [ + "Microsoft-Syslog" + ], + "type": "string", + "x-ms-enum": { + "name": "KnownSyslogDataSourceStreams", + "modelAsString": true + } + } + }, + "facilityNames": { + "description": "The list of facility names.", + "type": "array", + "items": { + "enum": [ + "auth", + "authpriv", + "cron", + "daemon", + "kern", + "lpr", + "mail", + "mark", + "news", + "syslog", + "user", + "uucp", + "local0", + "local1", + "local2", + "local3", + "local4", + "local5", + "local6", + "local7", + "*" + ], + "type": "string", + "x-ms-enum": { + "name": "KnownSyslogDataSourceFacilityNames", + "modelAsString": true + } + } + }, + "logLevels": { + "description": "The log levels to collect.", + "type": "array", + "items": { + "enum": [ + "Debug", + "Info", + "Notice", + "Warning", + "Error", + "Critical", + "Alert", + "Emergency", + "*" + ], + "type": "string", + "x-ms-enum": { + "name": "KnownSyslogDataSourceLogLevels", + "modelAsString": true + } + } + }, + "name": { + "description": "A friendly name for the data source. \r\nThis name should be unique across all data sources (regardless of type) within the data collection rule.", + "type": "string", + "example": "myDataSource1" + } + } + }, + "ExtensionDataSource": { + "description": "Definition of which data will be collected from a separate VM extension that integrates with the Azure Monitor Agent.\r\nCollected from either Windows and Linux machines, depending on which extension is defined.", + "required": [ + "extensionName" + ], + "type": "object", + "properties": { + "streams": { + "description": "List of streams that this data source will be sent to.\r\nA stream indicates what schema will be used for this data and usually what table in Log Analytics the data will be sent to.", + "type": "array", + "items": { + "enum": [ + "Microsoft-Event", + "Microsoft-InsightsMetrics", + "Microsoft-Perf", + "Microsoft-Syslog", + "Microsoft-WindowsEvent" + ], + "type": "string", + "x-ms-enum": { + "name": "KnownExtensionDataSourceStreams", + "modelAsString": true + } + } + }, + "extensionName": { + "description": "The name of the VM extension.", + "type": "string", + "example": "AzureSecurityLinuxAgent" + }, + "extensionSettings": { + "description": "The extension settings. The format is specific for particular extension.", + "type": "object" + }, + "inputDataSources": { + "description": "The list of data sources this extension needs data from.", + "type": "array", + "items": { + "type": "string" + } + }, + "name": { + "description": "A friendly name for the data source. \r\nThis name should be unique across all data sources (regardless of type) within the data collection rule.", + "type": "string", + "example": "myDataSource1" + } + } + }, + "DataSourcesSpec": { + "description": "Specification of data sources that will be collected.", + "type": "object", + "properties": { + "performanceCounters": { + "description": "The list of performance counter data source configurations.", + "type": "array", + "items": { + "$ref": "#/definitions/PerfCounterDataSource" + } + }, + "windowsEventLogs": { + "description": "The list of Windows Event Log data source configurations.", + "type": "array", + "items": { + "$ref": "#/definitions/WindowsEventLogDataSource" + } + }, + "syslog": { + "description": "The list of Syslog data source configurations.", + "type": "array", + "items": { + "$ref": "#/definitions/SyslogDataSource" + } + }, + "extensions": { + "description": "The list of Azure VM extension data source configurations.", + "type": "array", + "items": { + "$ref": "#/definitions/ExtensionDataSource" + } + } + } + }, + "LogAnalyticsDestination": { + "description": "Log Analytics destination.", + "type": "object", + "properties": { + "workspaceResourceId": { + "description": "The resource ID of the Log Analytics workspace.", + "type": "string", + "example": "/subscriptions/703362b3-f278-4e4b-9179-c76eaf41ffc2/resourceGroups/myResourceGroup/providers/Microsoft.OperationalInsights/workspaces/centralTeamWorkspace" + }, + "workspaceId": { + "description": "The Customer ID of the Log Analytics workspace.", + "type": "string", + "readOnly": true, + "example": "9ba8bc53-bd36-4156-8667-e983e7ae0e4f", + "x-ms-mutability": [ + "read" + ] + }, + "name": { + "description": "A friendly name for the destination. \r\nThis name should be unique across all destinations (regardless of type) within the data collection rule.", + "type": "string", + "example": "myDest1" + } + } + }, + "AzureMonitorMetricsDestination": { + "description": "Azure Monitor Metrics destination.", + "type": "object", + "properties": { + "name": { + "description": "A friendly name for the destination. \r\nThis name should be unique across all destinations (regardless of type) within the data collection rule.", + "type": "string", + "example": "myDest1" + } + } + }, + "DestinationsSpec": { + "description": "Specification of destinations that can be used in data flows.", + "type": "object", + "properties": { + "logAnalytics": { + "description": "List of Log Analytics destinations.", + "type": "array", + "items": { + "$ref": "#/definitions/LogAnalyticsDestination" + } + }, + "azureMonitorMetrics": { + "description": "Azure Monitor Metrics destination.", + "allOf": [ + { + "$ref": "#/definitions/AzureMonitorMetricsDestination" + } + ] + } + } + }, + "DataFlow": { + "description": "Definition of which streams are sent to which destinations.", + "type": "object", + "properties": { + "streams": { + "description": "List of streams for this data flow.", + "type": "array", + "items": { + "enum": [ + "Microsoft-Event", + "Microsoft-InsightsMetrics", + "Microsoft-Perf", + "Microsoft-Syslog", + "Microsoft-WindowsEvent" + ], + "type": "string", + "x-ms-enum": { + "name": "KnownDataFlowStreams", + "modelAsString": true + } + } + }, + "destinations": { + "description": "List of destinations for this data flow.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "DataCollectionRule": { + "description": "Definition of what monitoring data to collect and where that data should be sent.", + "type": "object", + "properties": { + "description": { + "description": "Description of the data collection rule.", + "type": "string" + }, + "immutableId": { + "description": "The immutable ID of this data collection rule. This property is READ-ONLY.", + "type": "string", + "readOnly": true, + "example": "dcr-b74e0d383fc9415abaa584ec41adece3", + "x-ms-mutability": [ + "read" + ] + }, + "dataSources": { + "description": "The specification of data sources. \r\nThis property is optional and can be omitted if the rule is meant to be used via direct calls to the provisioned endpoint.", + "allOf": [ + { + "$ref": "#/definitions/DataSourcesSpec" + } + ] + }, + "destinations": { + "description": "The specification of destinations.", + "allOf": [ + { + "$ref": "#/definitions/DestinationsSpec" + } + ] + }, + "dataFlows": { + "description": "The specification of data flows.", + "type": "array", + "items": { + "$ref": "#/definitions/DataFlow" + } + }, + "provisioningState": { + "description": "The resource provisioning state.", + "enum": [ + "Creating", + "Updating", + "Deleting", + "Succeeded", + "Failed" + ], + "type": "string", + "readOnly": true, + "example": "Creating", + "x-ms-enum": { + "name": "KnownDataCollectionRuleProvisioningState", + "modelAsString": true + }, + "x-ms-mutability": [ + "read" + ] + } + } + }, + "DataCollectionRuleResource": { + "description": "Definition of ARM tracked top level resource.", + "required": [ + "location" + ], + "type": "object", + "properties": { + "properties": { + "description": "Resource properties.", + "allOf": [ + { + "$ref": "#/definitions/DataCollectionRule" + } + ], + "x-ms-client-flatten": true + }, + "location": { + "description": "The geo-location where the resource lives.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "tags": { + "description": "Resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "kind": { + "description": "The kind of the resource.", + "enum": [ + "Linux", + "Windows" + ], + "type": "string", + "example": "Linux", + "x-ms-enum": { + "name": "KnownDataCollectionRuleResourceKind", + "modelAsString": true + } + }, + "id": { + "description": "Fully qualified ID of the resource.", + "type": "string", + "readOnly": true, + "example": "/subscriptions/703362b3-f278-4e4b-9179-c76eaf41ffc2/resourceGroups/myResourceGroup/providers/Microsoft.Insights/dataCollectionRules/myCollectionRule", + "x-ms-mutability": [ + "read" + ] + }, + "name": { + "description": "The name of the resource.", + "type": "string", + "readOnly": true, + "example": "myCollectionRule", + "x-ms-mutability": [ + "read" + ] + }, + "type": { + "description": "The type of the resource.", + "type": "string", + "readOnly": true, + "example": "Microsoft.Insights/dataCollectionRules", + "x-ms-mutability": [ + "read" + ] + }, + "etag": { + "description": "Resource entity tag (ETag).", + "type": "string", + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + }, + "systemData": { + "description": "Metadata pertaining to creation and last modification of the resource.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData" + } + ], + "readOnly": true, + "x-ms-mutability": [ + "read" + ] + } + }, + "x-ms-azure-resource": true + }, + "DataCollectionRuleResourceListResult": { + "description": "A pageable list of resources.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "A list of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/DataCollectionRuleResource" + } + }, + "nextLink": { + "description": "The URL to use for getting the next set of results.", + "type": "string" + } + } + }, + "ResourceForUpdate": { + "description": "Definition of ARM tracked top level resource properties for update operation.", + "type": "object", + "properties": { + "tags": { + "description": "Resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + } + }, + "parameters": { + "DataCollectionRuleNameParameter": { + "in": "path", + "name": "dataCollectionRuleName", + "description": "The name of the data collection rule. The name is case insensitive.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow" + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/examples/DataCollectionEndpointsCreate.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/examples/DataCollectionEndpointsCreate.json new file mode 100644 index 000000000000..cc1f973b9930 --- /dev/null +++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/examples/DataCollectionEndpointsCreate.json @@ -0,0 +1,82 @@ +{ + "parameters": { + "subscriptionId": "703362b3-f278-4e4b-9179-c76eaf41ffc2", + "resourceGroupName": "myResourceGroup", + "dataCollectionEndpointName": "myCollectionEndpoint", + "api-version": "2021-04-01", + "body": { + "location": "eastus", + "properties": { + "networkAcls": { + "publicNetworkAccess": "Enabled" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/703362b3-f278-4e4b-9179-c76eaf41ffc2/resourceGroups/myResourceGroup/providers/Microsoft.Insights/dataCollectionEndpoints/myCollectionEndpoint", + "name": "myCollectionEndpoint", + "type": "Microsoft.Insights/dataCollectionEndpoints", + "location": "eastus", + "tags": { + "tag1": "A", + "tag2": "B" + }, + "properties": { + "configurationAccess": { + "endpoint": "https://mycollectionendpoint-abcd.eastus-1.control.monitor.azure.com" + }, + "logsIngestion": { + "endpoint": "https://mycollectionendpoint-abcd.eastus-1.ingest.monitor.azure.com" + }, + "networkAcls": { + "publicNetworkAccess": "Enabled" + } + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2021-04-01T12:34:56.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-04-02T12:34:56.1234567Z" + }, + "etag": "070057da-0000-0000-0000-5ba70d6c0000" + } + }, + "201": { + "body": { + "id": "/subscriptions/703362b3-f278-4e4b-9179-c76eaf41ffc2/resourceGroups/myResourceGroup/providers/Microsoft.Insights/dataCollectionEndpoints/myCollectionEndpoint", + "name": "myCollectionEndpoint", + "type": "Microsoft.Insights/dataCollectionEndpoints", + "location": "eastus", + "tags": { + "tag1": "A", + "tag2": "B" + }, + "properties": { + "configurationAccess": { + "endpoint": "https://mycollectionendpoint-abcd.eastus-1.control.monitor.azure.com" + }, + "logsIngestion": { + "endpoint": "https://mycollectionendpoint-abcd.eastus-1.ingest.monitor.azure.com" + }, + "networkAcls": { + "publicNetworkAccess": "Enabled" + } + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2021-04-01T12:34:56.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-04-02T12:34:56.1234567Z" + }, + "etag": "070057da-0000-0000-0000-5ba70d6c0000" + } + } + } +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/examples/DataCollectionEndpointsDelete.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/examples/DataCollectionEndpointsDelete.json new file mode 100644 index 000000000000..bfce402e320e --- /dev/null +++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/examples/DataCollectionEndpointsDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "703362b3-f278-4e4b-9179-c76eaf41ffc2", + "resourceGroupName": "myResourceGroup", + "dataCollectionEndpointName": "myCollectionEndpoint", + "api-version": "2021-04-01" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/examples/DataCollectionEndpointsGet.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/examples/DataCollectionEndpointsGet.json new file mode 100644 index 000000000000..6d6a7fd06e28 --- /dev/null +++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/examples/DataCollectionEndpointsGet.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "703362b3-f278-4e4b-9179-c76eaf41ffc2", + "resourceGroupName": "myResourceGroup", + "dataCollectionEndpointName": "myCollectionEndpoint", + "api-version": "2021-04-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/703362b3-f278-4e4b-9179-c76eaf41ffc2/resourceGroups/myResourceGroup/providers/Microsoft.Insights/dataCollectionEndpoints/myCollectionEndpoint", + "name": "myCollectionEndpoint", + "type": "Microsoft.Insights/dataCollectionEndpoints", + "location": "eastus", + "tags": { + "tag1": "A", + "tag2": "B" + }, + "properties": { + "configurationAccess": { + "endpoint": "https://mycollectionendpoint-abcd.eastus-1.control.monitor.azure.com" + }, + "logsIngestion": { + "endpoint": "https://mycollectionendpoint-abcd.eastus-1.ingest.monitor.azure.com" + }, + "networkAcls": { + "publicNetworkAccess": "Enabled" + } + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2021-04-01T12:34:56.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-04-02T12:34:56.1234567Z" + }, + "etag": "070057da-0000-0000-0000-5ba70d6c0000" + } + } + } +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/examples/DataCollectionEndpointsListByResourceGroup.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/examples/DataCollectionEndpointsListByResourceGroup.json new file mode 100644 index 000000000000..8df8c7eb6a55 --- /dev/null +++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/examples/DataCollectionEndpointsListByResourceGroup.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "subscriptionId": "703362b3-f278-4e4b-9179-c76eaf41ffc2", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/703362b3-f278-4e4b-9179-c76eaf41ffc2/resourceGroups/myResourceGroup/providers/Microsoft.Insights/dataCollectionEndpoints/myCollectionEndpoint", + "name": "myCollectionEndpoint", + "type": "Microsoft.Insights/dataCollectionEndpoints", + "location": "eastus", + "tags": { + "tag1": "A", + "tag2": "B" + }, + "properties": { + "configurationAccess": { + "endpoint": "https://mycollectionendpoint-abcd.eastus-1.control.monitor.azure.com" + }, + "logsIngestion": { + "endpoint": "https://mycollectionendpoint-abcd.eastus-1.ingest.monitor.azure.com" + }, + "networkAcls": { + "publicNetworkAccess": "Enabled" + } + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2021-04-01T12:34:56.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-04-02T12:34:56.1234567Z" + }, + "etag": "070057da-0000-0000-0000-5ba70d6c0000" + }, + { + "id": "/subscriptions/703362b3-f278-4e4b-9179-c76eaf41ffc2/resourceGroups/myResourceGroup/providers/Microsoft.Insights/dataCollectionEndpoints/herCollectionEndpoint", + "name": "herCollectionEndpoint", + "type": "Microsoft.Insights/dataCollectionEndpoints", + "location": "westus", + "tags": { + "tag1": "A", + "tag2": "B" + }, + "properties": { + "configurationAccess": { + "endpoint": "https://hercollectionendpoint-xywz.eastus-1.control.monitor.azure.com" + }, + "logsIngestion": { + "endpoint": "https://hercollectionendpoint-xywz.eastus-1.ingest.monitor.azure.com" + }, + "networkAcls": { + "publicNetworkAccess": "Disabled" + } + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2021-04-01T12:34:56.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-04-02T12:34:56.1234567Z" + }, + "etag": "070057da-0000-0000-0000-5ba70d6c0000" + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/examples/DataCollectionEndpointsListBySubscription.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/examples/DataCollectionEndpointsListBySubscription.json new file mode 100644 index 000000000000..8f9614a82ebb --- /dev/null +++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/examples/DataCollectionEndpointsListBySubscription.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "subscriptionId": "703362b3-f278-4e4b-9179-c76eaf41ffc2", + "api-version": "2021-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/703362b3-f278-4e4b-9179-c76eaf41ffc2/resourceGroups/myResourceGroup/providers/Microsoft.Insights/dataCollectionEndpoints/myCollectionEndpoint", + "name": "myCollectionEndpoint", + "type": "Microsoft.Insights/dataCollectionEndpoints", + "location": "eastus", + "tags": { + "tag1": "A", + "tag2": "B" + }, + "properties": { + "configurationAccess": { + "endpoint": "https://mycollectionendpoint-abcd.eastus-1.control.monitor.azure.com" + }, + "logsIngestion": { + "endpoint": "https://mycollectionendpoint-abcd.eastus-1.ingest.monitor.azure.com" + }, + "networkAcls": { + "publicNetworkAccess": "Enabled" + } + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2021-04-01T12:34:56.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-04-02T12:34:56.1234567Z" + }, + "etag": "070057da-0000-0000-0000-5ba70d6c0000" + }, + { + "id": "/subscriptions/703362b3-f278-4e4b-9179-c76eaf41ffc2/resourceGroups/herResourceGroup/providers/Microsoft.Insights/dataCollectionEndpoints/herCollectionEndpoint", + "name": "herCollectionEndpoint", + "type": "Microsoft.Insights/dataCollectionEndpoints", + "location": "westus", + "tags": { + "tag1": "A", + "tag2": "B" + }, + "properties": { + "configurationAccess": { + "endpoint": "https://hercollectionendpoint-xywz.eastus-1.control.monitor.azure.com" + }, + "logsIngestion": { + "endpoint": "https://hercollectionendpoint-xywz.eastus-1.ingest.monitor.azure.com" + }, + "networkAcls": { + "publicNetworkAccess": "Disabled" + } + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2021-04-01T12:34:56.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-04-02T12:34:56.1234567Z" + }, + "etag": "070057da-0000-0000-0000-5ba70d6c0000" + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/examples/DataCollectionEndpointsUpdate.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/examples/DataCollectionEndpointsUpdate.json new file mode 100644 index 000000000000..58efa63e0bc6 --- /dev/null +++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/examples/DataCollectionEndpointsUpdate.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "703362b3-f278-4e4b-9179-c76eaf41ffc2", + "resourceGroupName": "myResourceGroup", + "dataCollectionEndpointName": "myCollectionEndpoint", + "api-version": "2021-04-01", + "body": { + "tags": { + "tag1": "A", + "tag2": "B", + "tag3": "C" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/703362b3-f278-4e4b-9179-c76eaf41ffc2/resourceGroups/myResourceGroup/providers/Microsoft.Insights/dataCollectionEndpoints/myCollectionEndpoint", + "name": "myCollectionEndpoint", + "type": "Microsoft.Insights/dataCollectionEndpoints", + "location": "eastus", + "tags": { + "tag1": "A", + "tag2": "B", + "tag3": "C" + }, + "properties": { + "configurationAccess": { + "endpoint": "https://mycollectionendpoint-abcd.eastus-1.control.monitor.azure.com" + }, + "logsIngestion": { + "endpoint": "https://mycollectionendpoint-abcd.eastus-1.ingest.monitor.azure.com" + }, + "networkAcls": { + "publicNetworkAccess": "Enabled" + } + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2021-04-01T12:34:56.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-04-02T12:34:56.1234567Z" + }, + "etag": "070057da-0000-0000-0000-5ba70d6c0000" + } + } + } +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/examples/DataCollectionRuleAssociationsCreate.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/examples/DataCollectionRuleAssociationsCreate.json new file mode 100644 index 000000000000..5101af3d3784 --- /dev/null +++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/examples/DataCollectionRuleAssociationsCreate.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "resourceUri": "subscriptions/703362b3-f278-4e4b-9179-c76eaf41ffc2/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVm", + "associationName": "myAssociation", + "api-version": "2021-04-01", + "body": { + "properties": { + "dataCollectionRuleId": "/subscriptions/703362b3-f278-4e4b-9179-c76eaf41ffc2/resourceGroups/myResourceGroup/providers/Microsoft.Insights/dataCollectionRules/myCollectionRule" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/703362b3-f278-4e4b-9179-c76eaf41ffc2/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVm/providers/Microsoft.Insights/dataCollectionRuleAssociations/myAssociation", + "name": "myAssociation", + "type": "Microsoft.Insights/dataCollectionRuleAssociations", + "properties": { + "dataCollectionRuleId": "/subscriptions/703362b3-f278-4e4b-9179-c76eaf41ffc2/resourceGroups/myResourceGroup/providers/Microsoft.Insights/dataCollectionRules/myCollectionRule", + "provisioningState": "Succeeded" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2021-04-01T12:34:56.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-04-02T12:34:56.1234567Z" + }, + "etag": "070057da-0000-0000-0000-5ba70d6c0000" + } + }, + "201": { + "body": { + "id": "/subscriptions/703362b3-f278-4e4b-9179-c76eaf41ffc2/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVm/providers/Microsoft.Insights/dataCollectionRuleAssociations/myAssociation", + "name": "myAssociation", + "type": "Microsoft.Insights/dataCollectionRuleAssociations", + "properties": { + "dataCollectionRuleId": "/subscriptions/703362b3-f278-4e4b-9179-c76eaf41ffc2/resourceGroups/myResourceGroup/providers/Microsoft.Insights/dataCollectionRules/myCollectionRule", + "provisioningState": "Succeeded" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2021-04-01T12:34:56.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-04-02T12:34:56.1234567Z" + }, + "etag": "070057da-0000-0000-0000-5ba70d6c0000" + } + } + } +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/examples/DataCollectionRuleAssociationsDelete.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/examples/DataCollectionRuleAssociationsDelete.json new file mode 100644 index 000000000000..7b22da7da56f --- /dev/null +++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/examples/DataCollectionRuleAssociationsDelete.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "resourceUri": "subscriptions/703362b3-f278-4e4b-9179-c76eaf41ffc2/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVm", + "associationName": "myAssociation", + "api-version": "2021-04-01" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/examples/DataCollectionRuleAssociationsGet.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/examples/DataCollectionRuleAssociationsGet.json new file mode 100644 index 000000000000..0de2a1ebb778 --- /dev/null +++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/examples/DataCollectionRuleAssociationsGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "resourceUri": "subscriptions/703362b3-f278-4e4b-9179-c76eaf41ffc2/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVm", + "associationName": "myAssociation", + "api-version": "2021-04-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/703362b3-f278-4e4b-9179-c76eaf41ffc2/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVm/providers/Microsoft.Insights/dataCollectionRuleAssociations/myAssociation", + "name": "myAssociation", + "type": "Microsoft.Insights/dataCollectionRuleAssociations", + "properties": { + "dataCollectionRuleId": "/subscriptions/703362b3-f278-4e4b-9179-c76eaf41ffc2/resourceGroups/myResourceGroup/providers/Microsoft.Insights/dataCollectionRules/myCollectionRule", + "provisioningState": "Succeeded" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2021-04-01T12:34:56.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-04-02T12:34:56.1234567Z" + }, + "etag": "070057da-0000-0000-0000-5ba70d6c0000" + } + } + } +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/examples/DataCollectionRuleAssociationsListByResource.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/examples/DataCollectionRuleAssociationsListByResource.json new file mode 100644 index 000000000000..4584ca908f49 --- /dev/null +++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/examples/DataCollectionRuleAssociationsListByResource.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "resourceUri": "subscriptions/703362b3-f278-4e4b-9179-c76eaf41ffc2/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVm", + "api-version": "2021-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/703362b3-f278-4e4b-9179-c76eaf41ffc2/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVm/providers/Microsoft.Insights/dataCollectionRuleAssociations/myRuleAssociation", + "name": "myRuleAssociation", + "type": "Microsoft.Insights/dataCollectionRuleAssociations", + "properties": { + "dataCollectionRuleId": "/subscriptions/703362b3-f278-4e4b-9179-c76eaf41ffc2/resourceGroups/myResourceGroup/providers/Microsoft.Insights/dataCollectionRules/myCollectionRule", + "provisioningState": "Succeeded" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2021-04-01T12:34:56.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-04-02T12:34:56.1234567Z" + }, + "etag": "070057da-0000-0000-0000-5ba70d6c0000" + }, + { + "id": "/subscriptions/703362b3-f278-4e4b-9179-c76eaf41ffc2/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVm/providers/Microsoft.Insights/dataCollectionRuleAssociations/herRuleAssociation", + "name": "herRuleAssociation", + "type": "Microsoft.Insights/dataCollectionRuleAssociations", + "properties": { + "dataCollectionRuleId": "/subscriptions/703362b3-f278-4e4b-9179-c76eaf41ffc2/resourceGroups/myResourceGroup/providers/Microsoft.Insights/dataCollectionRules/herCollectionRule", + "provisioningState": "Succeeded" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2021-04-01T12:34:56.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-04-02T12:34:56.1234567Z" + }, + "etag": "3afa167b-3255-432b-b66d-e74a348468af" + }, + { + "id": "/subscriptions/703362b3-f278-4e4b-9179-c76eaf41ffc2/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVm/providers/Microsoft.Insights/dataCollectionRuleAssociations/myEndpointAssociation", + "name": "myEndpointAssociation", + "type": "Microsoft.Insights/dataCollectionRuleAssociations", + "properties": { + "dataCollectionEndpointId": "/subscriptions/703362b3-f278-4e4b-9179-c76eaf41ffc2/resourceGroups/myResourceGroup/providers/Microsoft.Insights/dataCollectionEndpoints/myCollectionEndpoint", + "provisioningState": "Succeeded" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2021-04-01T12:34:56.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-04-02T12:34:56.1234567Z" + }, + "etag": "562d96b1-29e9-4250-b2fd-8bebfdf77a9d" + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/examples/DataCollectionRuleAssociationsListByRule.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/examples/DataCollectionRuleAssociationsListByRule.json new file mode 100644 index 000000000000..cde0b0711abf --- /dev/null +++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/examples/DataCollectionRuleAssociationsListByRule.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "703362b3-f278-4e4b-9179-c76eaf41ffc2", + "resourceGroupName": "myResourceGroup", + "dataCollectionRuleName": "myCollectionRule", + "api-version": "2021-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/703362b3-f278-4e4b-9179-c76eaf41ffc2/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVm/providers/Microsoft.Insights/dataCollectionRuleAssociations/myAssociation", + "name": "myAssociation", + "type": "Microsoft.Insights/dataCollectionRuleAssociations", + "properties": { + "dataCollectionRuleId": "/subscriptions/703362b3-f278-4e4b-9179-c76eaf41ffc2/resourceGroups/myResourceGroup/providers/Microsoft.Insights/dataCollectionRules/myCollectionRule", + "provisioningState": "Succeeded" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2021-04-01T12:34:56.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-04-02T12:34:56.1234567Z" + }, + "etag": "070057da-0000-0000-0000-5ba70d6c0000" + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/examples/DataCollectionRulesCreate.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/examples/DataCollectionRulesCreate.json new file mode 100644 index 000000000000..b3f4bd995ea1 --- /dev/null +++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/examples/DataCollectionRulesCreate.json @@ -0,0 +1,359 @@ +{ + "parameters": { + "subscriptionId": "703362b3-f278-4e4b-9179-c76eaf41ffc2", + "resourceGroupName": "myResourceGroup", + "dataCollectionRuleName": "myCollectionRule", + "api-version": "2021-04-01", + "body": { + "location": "eastus", + "properties": { + "dataSources": { + "performanceCounters": [ + { + "name": "cloudTeamCoreCounters", + "streams": [ + "Microsoft-Perf" + ], + "samplingFrequencyInSeconds": 15, + "counterSpecifiers": [ + "\\Processor(_Total)\\% Processor Time", + "\\Memory\\Committed Bytes", + "\\LogicalDisk(_Total)\\Free Megabytes", + "\\PhysicalDisk(_Total)\\Avg. Disk Queue Length" + ] + }, + { + "name": "appTeamExtraCounters", + "streams": [ + "Microsoft-Perf" + ], + "samplingFrequencyInSeconds": 30, + "counterSpecifiers": [ + "\\Process(_Total)\\Thread Count" + ] + } + ], + "windowsEventLogs": [ + { + "name": "cloudSecurityTeamEvents", + "streams": [ + "Microsoft-WindowsEvent" + ], + "xPathQueries": [ + "Security!" + ] + }, + { + "name": "appTeam1AppEvents", + "streams": [ + "Microsoft-WindowsEvent" + ], + "xPathQueries": [ + "System![System[(Level = 1 or Level = 2 or Level = 3)]]", + "Application!*[System[(Level = 1 or Level = 2 or Level = 3)]]" + ] + } + ], + "syslog": [ + { + "name": "cronSyslog", + "streams": [ + "Microsoft-Syslog" + ], + "facilityNames": [ + "cron" + ], + "logLevels": [ + "Debug", + "Critical", + "Emergency" + ] + }, + { + "name": "syslogBase", + "streams": [ + "Microsoft-Syslog" + ], + "facilityNames": [ + "syslog" + ], + "logLevels": [ + "Alert", + "Critical", + "Emergency" + ] + } + ] + }, + "destinations": { + "logAnalytics": [ + { + "workspaceResourceId": "/subscriptions/703362b3-f278-4e4b-9179-c76eaf41ffc2/resourceGroups/myResourceGroup/providers/Microsoft.OperationalInsights/workspaces/centralTeamWorkspace", + "name": "centralWorkspace" + } + ] + }, + "dataFlows": [ + { + "streams": [ + "Microsoft-Perf", + "Microsoft-Syslog", + "Microsoft-WindowsEvent" + ], + "destinations": [ + "centralWorkspace" + ] + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/703362b3-f278-4e4b-9179-c76eaf41ffc2/resourceGroups/myResourceGroup/providers/Microsoft.Insights/dataCollectionRules/myCollectionRule", + "name": "myCollectionRule", + "type": "Microsoft.Insights/dataCollectionRules", + "location": "eastus", + "tags": { + "tag1": "A", + "tag2": "B" + }, + "properties": { + "immutableId": "dcr-b74e0d383fc9415abaa584ec41adece3", + "dataSources": { + "performanceCounters": [ + { + "name": "cloudTeamCoreCounters", + "streams": [ + "Microsoft-Perf" + ], + "samplingFrequencyInSeconds": 15, + "counterSpecifiers": [ + "\\Processor(_Total)\\% Processor Time", + "\\Memory\\Committed Bytes", + "\\LogicalDisk(_Total)\\Free Megabytes", + "\\PhysicalDisk(_Total)\\Avg. Disk Queue Length" + ] + }, + { + "name": "appTeamExtraCounters", + "streams": [ + "Microsoft-Perf" + ], + "samplingFrequencyInSeconds": 30, + "counterSpecifiers": [ + "\\Process(_Total)\\Thread Count" + ] + } + ], + "windowsEventLogs": [ + { + "name": "cloudSecurityTeamEvents", + "streams": [ + "Microsoft-WindowsEvent" + ], + "xPathQueries": [ + "Security!" + ] + }, + { + "name": "appTeam1AppEvents", + "streams": [ + "Microsoft-WindowsEvent" + ], + "xPathQueries": [ + "System![System[(Level = 1 or Level = 2 or Level = 3)]]", + "Application!*[System[(Level = 1 or Level = 2 or Level = 3)]]" + ] + } + ], + "syslog": [ + { + "name": "cronSyslog", + "streams": [ + "Microsoft-Syslog" + ], + "facilityNames": [ + "cron" + ], + "logLevels": [ + "Debug", + "Critical", + "Emergency" + ] + }, + { + "name": "syslogBase", + "streams": [ + "Microsoft-Syslog" + ], + "facilityNames": [ + "syslog" + ], + "logLevels": [ + "Alert", + "Critical", + "Emergency" + ] + } + ] + }, + "destinations": { + "logAnalytics": [ + { + "workspaceResourceId": "/subscriptions/703362b3-f278-4e4b-9179-c76eaf41ffc2/resourceGroups/myResourceGroup/providers/Microsoft.OperationalInsights/workspaces/centralTeamWorkspace", + "workspaceId": "9ba8bc53-bd36-4156-8667-e983e7ae0e4f", + "name": "centralWorkspace" + } + ] + }, + "dataFlows": [ + { + "streams": [ + "Microsoft-Perf", + "Microsoft-Syslog", + "Microsoft-WindowsEvent" + ], + "destinations": [ + "centralWorkspace" + ] + } + ] + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2021-04-01T12:34:56.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-04-02T12:34:56.1234567Z" + }, + "etag": "070057da-0000-0000-0000-5ba70d6c0000" + } + }, + "201": { + "body": { + "id": "/subscriptions/703362b3-f278-4e4b-9179-c76eaf41ffc2/resourceGroups/myResourceGroup/providers/Microsoft.Insights/dataCollectionRules/myCollectionRule", + "name": "myCollectionRule", + "type": "Microsoft.Insights/dataCollectionRules", + "location": "eastus", + "tags": { + "tag1": "A", + "tag2": "B" + }, + "properties": { + "immutableId": "dcr-b74e0d383fc9415abaa584ec41adece3", + "dataSources": { + "performanceCounters": [ + { + "name": "cloudTeamCoreCounters", + "streams": [ + "Microsoft-Perf" + ], + "samplingFrequencyInSeconds": 15, + "counterSpecifiers": [ + "\\Processor(_Total)\\% Processor Time", + "\\Memory\\Committed Bytes", + "\\LogicalDisk(_Total)\\Free Megabytes", + "\\PhysicalDisk(_Total)\\Avg. Disk Queue Length" + ] + }, + { + "name": "appTeamExtraCounters", + "streams": [ + "Microsoft-Perf" + ], + "samplingFrequencyInSeconds": 30, + "counterSpecifiers": [ + "\\Process(_Total)\\Thread Count" + ] + } + ], + "windowsEventLogs": [ + { + "name": "cloudSecurityTeamEvents", + "streams": [ + "Microsoft-WindowsEvent" + ], + "xPathQueries": [ + "Security!" + ] + }, + { + "name": "appTeam1AppEvents", + "streams": [ + "Microsoft-WindowsEvent" + ], + "xPathQueries": [ + "System![System[(Level = 1 or Level = 2 or Level = 3)]]", + "Application!*[System[(Level = 1 or Level = 2 or Level = 3)]]" + ] + } + ], + "syslog": [ + { + "name": "cronSyslog", + "streams": [ + "Microsoft-Syslog" + ], + "facilityNames": [ + "cron" + ], + "logLevels": [ + "Debug", + "Critical", + "Emergency" + ] + }, + { + "name": "syslogBase", + "streams": [ + "Microsoft-Syslog" + ], + "facilityNames": [ + "syslog" + ], + "logLevels": [ + "Alert", + "Critical", + "Emergency" + ] + } + ] + }, + "destinations": { + "logAnalytics": [ + { + "workspaceResourceId": "/subscriptions/703362b3-f278-4e4b-9179-c76eaf41ffc2/resourceGroups/myResourceGroup/providers/Microsoft.OperationalInsights/workspaces/centralTeamWorkspace", + "workspaceId": "9ba8bc53-bd36-4156-8667-e983e7ae0e4f", + "name": "centralWorkspace" + } + ] + }, + "dataFlows": [ + { + "streams": [ + "Microsoft-Perf", + "Microsoft-Syslog", + "Microsoft-WindowsEvent" + ], + "destinations": [ + "centralWorkspace" + ] + } + ] + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2021-04-01T12:34:56.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-04-02T12:34:56.1234567Z" + }, + "etag": "070057da-0000-0000-0000-5ba70d6c0000" + } + } + } +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/examples/DataCollectionRulesDelete.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/examples/DataCollectionRulesDelete.json new file mode 100644 index 000000000000..47de56ce55d3 --- /dev/null +++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/examples/DataCollectionRulesDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "703362b3-f278-4e4b-9179-c76eaf41ffc2", + "resourceGroupName": "myResourceGroup", + "dataCollectionRuleName": "myCollectionRule", + "api-version": "2021-04-01" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/examples/DataCollectionRulesGet.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/examples/DataCollectionRulesGet.json new file mode 100644 index 000000000000..415d2870d30c --- /dev/null +++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/examples/DataCollectionRulesGet.json @@ -0,0 +1,133 @@ +{ + "parameters": { + "subscriptionId": "703362b3-f278-4e4b-9179-c76eaf41ffc2", + "resourceGroupName": "myResourceGroup", + "dataCollectionRuleName": "myCollectionRule", + "api-version": "2021-04-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/703362b3-f278-4e4b-9179-c76eaf41ffc2/resourceGroups/myResourceGroup/providers/Microsoft.Insights/dataCollectionRules/myCollectionRule", + "name": "myCollectionRule", + "type": "Microsoft.Insights/dataCollectionRules", + "location": "eastus", + "tags": { + "tag1": "A", + "tag2": "B" + }, + "properties": { + "immutableId": "dcr-b74e0d383fc9415abaa584ec41adece3", + "dataSources": { + "performanceCounters": [ + { + "name": "cloudTeamCoreCounters", + "streams": [ + "Microsoft-Perf" + ], + "samplingFrequencyInSeconds": 15, + "counterSpecifiers": [ + "\\Processor(_Total)\\% Processor Time", + "\\Memory\\Committed Bytes", + "\\LogicalDisk(_Total)\\Free Megabytes", + "\\PhysicalDisk(_Total)\\Avg. Disk Queue Length" + ] + }, + { + "name": "appTeamExtraCounters", + "streams": [ + "Microsoft-Perf" + ], + "samplingFrequencyInSeconds": 30, + "counterSpecifiers": [ + "\\Process(_Total)\\Thread Count" + ] + } + ], + "windowsEventLogs": [ + { + "name": "cloudSecurityTeamEvents", + "streams": [ + "Microsoft-WindowsEvent" + ], + "xPathQueries": [ + "Security!" + ] + }, + { + "name": "appTeam1AppEvents", + "streams": [ + "Microsoft-WindowsEvent" + ], + "xPathQueries": [ + "System![System[(Level = 1 or Level = 2 or Level = 3)]]", + "Application!*[System[(Level = 1 or Level = 2 or Level = 3)]]" + ] + } + ], + "syslog": [ + { + "name": "cronSyslog", + "streams": [ + "Microsoft-Syslog" + ], + "facilityNames": [ + "cron" + ], + "logLevels": [ + "Debug", + "Critical", + "Emergency" + ] + }, + { + "name": "syslogBase", + "streams": [ + "Microsoft-Syslog" + ], + "facilityNames": [ + "syslog" + ], + "logLevels": [ + "Alert", + "Critical", + "Emergency" + ] + } + ] + }, + "destinations": { + "logAnalytics": [ + { + "workspaceResourceId": "/subscriptions/703362b3-f278-4e4b-9179-c76eaf41ffc2/resourceGroups/myResourceGroup/providers/Microsoft.OperationalInsights/workspaces/centralTeamWorkspace", + "workspaceId": "9ba8bc53-bd36-4156-8667-e983e7ae0e4f", + "name": "centralWorkspace" + } + ] + }, + "dataFlows": [ + { + "streams": [ + "Microsoft-Perf", + "Microsoft-Syslog", + "Microsoft-WindowsEvent" + ], + "destinations": [ + "centralWorkspace" + ] + } + ] + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2021-04-01T12:34:56.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-04-02T12:34:56.1234567Z" + }, + "etag": "070057da-0000-0000-0000-5ba70d6c0000" + } + } + } +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/examples/DataCollectionRulesListByResourceGroup.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/examples/DataCollectionRulesListByResourceGroup.json new file mode 100644 index 000000000000..a2021fbc84d5 --- /dev/null +++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/examples/DataCollectionRulesListByResourceGroup.json @@ -0,0 +1,208 @@ +{ + "parameters": { + "subscriptionId": "703362b3-f278-4e4b-9179-c76eaf41ffc2", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/703362b3-f278-4e4b-9179-c76eaf41ffc2/resourceGroups/myResourceGroup/providers/Microsoft.Insights/dataCollectionRules/myCollectionRule", + "name": "myCollectionRule", + "type": "Microsoft.Insights/dataCollectionRules", + "location": "eastus", + "tags": { + "tag1": "A", + "tag2": "B" + }, + "properties": { + "immutableId": "dcr-b74e0d383fc9415abaa584ec41adece3", + "dataSources": { + "performanceCounters": [ + { + "name": "cloudTeamCoreCounters", + "streams": [ + "Microsoft-Perf" + ], + "samplingFrequencyInSeconds": 15, + "counterSpecifiers": [ + "\\Processor(_Total)\\% Processor Time", + "\\Memory\\Committed Bytes", + "\\LogicalDisk(_Total)\\Free Megabytes", + "\\PhysicalDisk(_Total)\\Avg. Disk Queue Length" + ] + }, + { + "name": "appTeamExtraCounters", + "streams": [ + "Microsoft-Perf" + ], + "samplingFrequencyInSeconds": 30, + "counterSpecifiers": [ + "\\Process(_Total)\\Thread Count" + ] + } + ], + "windowsEventLogs": [ + { + "name": "cloudSecurityTeamEvents", + "streams": [ + "Microsoft-WindowsEvent" + ], + "xPathQueries": [ + "Security!" + ] + }, + { + "name": "appTeam1AppEvents", + "streams": [ + "Microsoft-WindowsEvent" + ], + "xPathQueries": [ + "System![System[(Level = 1 or Level = 2 or Level = 3)]]", + "Application!*[System[(Level = 1 or Level = 2 or Level = 3)]]" + ] + } + ], + "syslog": [ + { + "name": "cronSyslog", + "streams": [ + "Microsoft-Syslog" + ], + "facilityNames": [ + "cron" + ], + "logLevels": [ + "Debug", + "Critical", + "Emergency" + ] + }, + { + "name": "syslogBase", + "streams": [ + "Microsoft-Syslog" + ], + "facilityNames": [ + "syslog" + ], + "logLevels": [ + "Alert", + "Critical", + "Emergency" + ] + } + ] + }, + "destinations": { + "logAnalytics": [ + { + "workspaceResourceId": "/subscriptions/703362b3-f278-4e4b-9179-c76eaf41ffc2/resourceGroups/myResourceGroup/providers/Microsoft.OperationalInsights/workspaces/centralTeamWorkspace", + "workspaceId": "9ba8bc53-bd36-4156-8667-e983e7ae0e4f", + "name": "centralWorkspace" + } + ] + }, + "dataFlows": [ + { + "streams": [ + "Microsoft-Perf", + "Microsoft-Syslog", + "Microsoft-WindowsEvent" + ], + "destinations": [ + "centralWorkspace" + ] + } + ] + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2021-04-01T12:34:56.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-04-02T12:34:56.1234567Z" + }, + "etag": "070057da-0000-0000-0000-5ba70d6c0000" + }, + { + "id": "/subscriptions/703362b3-f278-4e4b-9179-c76eaf41ffc2/resourceGroups/myResourceGroup/providers/Microsoft.Insights/dataCollectionRules/herCollectionRule", + "name": "herCollectionRule", + "type": "Microsoft.Insights/dataCollectionRules", + "location": "westus", + "tags": { + "tag1": "C" + }, + "properties": { + "immutableId": "dcr-ca1e6d9dad844b2c94e7961c42af917a", + "dataSources": { + "performanceCounters": [ + { + "name": "herPerfCounters", + "streams": [ + "Microsoft-Perf" + ], + "samplingFrequencyInSeconds": 30, + "counterSpecifiers": [ + "\\Processor(_Total)\\% Processor Time", + "\\LogicalDisk(_Total)\\Free Megabytes", + "\\PhysicalDisk(_Total)\\Avg. Disk Queue Length" + ] + } + ], + "windowsEventLogs": [ + { + "name": "herWindowsEventLogs", + "streams": [ + "Microsoft-WindowsEvent" + ], + "xPathQueries": [ + "Security!*", + "System!*[System[(Level = 1 or Level = 2 or Level = 3)]]", + "Application!*[System[(Level = 1 or Level = 2 or Level = 3)]]" + ] + } + ] + }, + "destinations": { + "logAnalytics": [ + { + "workspaceResourceId": "/subscriptions/703362b3-f278-4e4b-9179-c76eaf41ffc2/resourceGroups/herResourceGroup/providers/Microsoft.OperationalInsights/workspaces/herTeamWorkspace", + "workspaceId": "c49b982a-c4f7-40c4-bd13-d6588f1b4015", + "name": "herWorkspace" + } + ] + }, + "dataFlows": [ + { + "streams": [ + "Microsoft-Perf", + "Microsoft-WindowsEvent" + ], + "destinations": [ + "herWorkspace" + ] + } + ], + "provisioningState": "Succeeded" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2021-04-01T12:34:56.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-04-02T12:34:56.1234567Z" + }, + "etag": "3afa167b-3255-432b-b66d-e74a348468af" + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/examples/DataCollectionRulesListBySubscription.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/examples/DataCollectionRulesListBySubscription.json new file mode 100644 index 000000000000..316d792b137f --- /dev/null +++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/examples/DataCollectionRulesListBySubscription.json @@ -0,0 +1,207 @@ +{ + "parameters": { + "subscriptionId": "703362b3-f278-4e4b-9179-c76eaf41ffc2", + "api-version": "2021-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/703362b3-f278-4e4b-9179-c76eaf41ffc2/resourceGroups/myResourceGroup/providers/Microsoft.Insights/dataCollectionRules/myCollectionRule", + "name": "myCollectionRule", + "type": "Microsoft.Insights/dataCollectionRules", + "location": "eastus", + "tags": { + "tag1": "A", + "tag2": "B" + }, + "properties": { + "immutableId": "dcr-b74e0d383fc9415abaa584ec41adece3", + "dataSources": { + "performanceCounters": [ + { + "name": "cloudTeamCoreCounters", + "streams": [ + "Microsoft-Perf" + ], + "samplingFrequencyInSeconds": 15, + "counterSpecifiers": [ + "\\Processor(_Total)\\% Processor Time", + "\\Memory\\Committed Bytes", + "\\LogicalDisk(_Total)\\Free Megabytes", + "\\PhysicalDisk(_Total)\\Avg. Disk Queue Length" + ] + }, + { + "name": "appTeamExtraCounters", + "streams": [ + "Microsoft-Perf" + ], + "samplingFrequencyInSeconds": 30, + "counterSpecifiers": [ + "\\Process(_Total)\\Thread Count" + ] + } + ], + "windowsEventLogs": [ + { + "name": "cloudSecurityTeamEvents", + "streams": [ + "Microsoft-WindowsEvent" + ], + "xPathQueries": [ + "Security!" + ] + }, + { + "name": "appTeam1AppEvents", + "streams": [ + "Microsoft-WindowsEvent" + ], + "xPathQueries": [ + "System![System[(Level = 1 or Level = 2 or Level = 3)]]", + "Application!*[System[(Level = 1 or Level = 2 or Level = 3)]]" + ] + } + ], + "syslog": [ + { + "name": "cronSyslog", + "streams": [ + "Microsoft-Syslog" + ], + "facilityNames": [ + "cron" + ], + "logLevels": [ + "Debug", + "Critical", + "Emergency" + ] + }, + { + "name": "syslogBase", + "streams": [ + "Microsoft-Syslog" + ], + "facilityNames": [ + "syslog" + ], + "logLevels": [ + "Alert", + "Critical", + "Emergency" + ] + } + ] + }, + "destinations": { + "logAnalytics": [ + { + "workspaceResourceId": "/subscriptions/703362b3-f278-4e4b-9179-c76eaf41ffc2/resourceGroups/myResourceGroup/providers/Microsoft.OperationalInsights/workspaces/centralTeamWorkspace", + "workspaceId": "9ba8bc53-bd36-4156-8667-e983e7ae0e4f", + "name": "centralWorkspace" + } + ] + }, + "dataFlows": [ + { + "streams": [ + "Microsoft-Perf", + "Microsoft-Syslog", + "Microsoft-WindowsEvent" + ], + "destinations": [ + "centralWorkspace" + ] + } + ] + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2021-04-01T12:34:56.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-04-02T12:34:56.1234567Z" + }, + "etag": "070057da-0000-0000-0000-5ba70d6c0000" + }, + { + "id": "/subscriptions/703362b3-f278-4e4b-9179-c76eaf41ffc2/resourceGroups/herResourceGroup/providers/Microsoft.Insights/dataCollectionRules/herCollectionRule", + "name": "herCollectionRule", + "type": "Microsoft.Insights/dataCollectionRules", + "location": "westus", + "tags": { + "tag1": "C" + }, + "properties": { + "immutableId": "dcr-ca1e6d9dad844b2c94e7961c42af917a", + "dataSources": { + "performanceCounters": [ + { + "name": "herPerfCounters", + "streams": [ + "Microsoft-Perf" + ], + "samplingFrequencyInSeconds": 30, + "counterSpecifiers": [ + "\\Processor(_Total)\\% Processor Time", + "\\LogicalDisk(_Total)\\Free Megabytes", + "\\PhysicalDisk(_Total)\\Avg. Disk Queue Length" + ] + } + ], + "windowsEventLogs": [ + { + "name": "herWindowsEventLogs", + "streams": [ + "Microsoft-WindowsEvent" + ], + "xPathQueries": [ + "Security!*", + "System!*[System[(Level = 1 or Level = 2 or Level = 3)]]", + "Application!*[System[(Level = 1 or Level = 2 or Level = 3)]]" + ] + } + ] + }, + "destinations": { + "logAnalytics": [ + { + "workspaceResourceId": "/subscriptions/703362b3-f278-4e4b-9179-c76eaf41ffc2/resourceGroups/herResourceGroup/providers/Microsoft.OperationalInsights/workspaces/herTeamWorkspace", + "workspaceId": "c49b982a-c4f7-40c4-bd13-d6588f1b4015", + "name": "herWorkspace" + } + ] + }, + "dataFlows": [ + { + "streams": [ + "Microsoft-Perf", + "Microsoft-WindowsEvent" + ], + "destinations": [ + "herWorkspace" + ] + } + ], + "provisioningState": "Succeeded" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2021-04-01T12:34:56.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-04-02T12:34:56.1234567Z" + }, + "etag": "3afa167b-3255-432b-b66d-e74a348468af" + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/examples/DataCollectionRulesUpdate.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/examples/DataCollectionRulesUpdate.json new file mode 100644 index 000000000000..82368b61794f --- /dev/null +++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-04-01/examples/DataCollectionRulesUpdate.json @@ -0,0 +1,141 @@ +{ + "parameters": { + "subscriptionId": "703362b3-f278-4e4b-9179-c76eaf41ffc2", + "resourceGroupName": "myResourceGroup", + "dataCollectionRuleName": "myCollectionRule", + "api-version": "2021-04-01", + "body": { + "tags": { + "tag1": "A", + "tag2": "B", + "tag3": "C" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/703362b3-f278-4e4b-9179-c76eaf41ffc2/resourceGroups/myResourceGroup/providers/Microsoft.Insights/dataCollectionRules/myCollectionRule", + "name": "myCollectionRule", + "type": "Microsoft.Insights/dataCollectionRules", + "location": "eastus", + "tags": { + "tag1": "A", + "tag2": "B", + "tag3": "C" + }, + "properties": { + "immutableId": "dcr-b74e0d383fc9415abaa584ec41adece3", + "dataSources": { + "performanceCounters": [ + { + "name": "cloudTeamCoreCounters", + "streams": [ + "Microsoft-Perf" + ], + "samplingFrequencyInSeconds": 15, + "counterSpecifiers": [ + "\\Processor(_Total)\\% Processor Time", + "\\Memory\\Committed Bytes", + "\\LogicalDisk(_Total)\\Free Megabytes", + "\\PhysicalDisk(_Total)\\Avg. Disk Queue Length" + ] + }, + { + "name": "appTeamExtraCounters", + "streams": [ + "Microsoft-Perf" + ], + "samplingFrequencyInSeconds": 30, + "counterSpecifiers": [ + "\\Process(_Total)\\Thread Count" + ] + } + ], + "windowsEventLogs": [ + { + "name": "cloudSecurityTeamEvents", + "streams": [ + "Microsoft-WindowsEvent" + ], + "xPathQueries": [ + "Security!" + ] + }, + { + "name": "appTeam1AppEvents", + "streams": [ + "Microsoft-WindowsEvent" + ], + "xPathQueries": [ + "System![System[(Level = 1 or Level = 2 or Level = 3)]]", + "Application!*[System[(Level = 1 or Level = 2 or Level = 3)]]" + ] + } + ], + "syslog": [ + { + "name": "cronSyslog", + "streams": [ + "Microsoft-Syslog" + ], + "facilityNames": [ + "cron" + ], + "logLevels": [ + "Debug", + "Critical", + "Emergency" + ] + }, + { + "name": "syslogBase", + "streams": [ + "Microsoft-Syslog" + ], + "facilityNames": [ + "syslog" + ], + "logLevels": [ + "Alert", + "Critical", + "Emergency" + ] + } + ] + }, + "destinations": { + "logAnalytics": [ + { + "workspaceResourceId": "/subscriptions/703362b3-f278-4e4b-9179-c76eaf41ffc2/resourceGroups/myResourceGroup/providers/Microsoft.OperationalInsights/workspaces/centralTeamWorkspace", + "workspaceId": "9ba8bc53-bd36-4156-8667-e983e7ae0e4f", + "name": "centralWorkspace" + } + ] + }, + "dataFlows": [ + { + "streams": [ + "Microsoft-Perf", + "Microsoft-Syslog", + "Microsoft-WindowsEvent" + ], + "destinations": [ + "centralWorkspace" + ] + } + ] + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2021-04-01T12:34:56.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-04-02T12:34:56.1234567Z" + }, + "etag": "070057da-0000-0000-0000-5ba70d6c0000" + } + } + } +} diff --git a/specification/monitor/resource-manager/readme.az.md b/specification/monitor/resource-manager/readme.az.md index dd6423900a44..2745b4bde15e 100644 --- a/specification/monitor/resource-manager/readme.az.md +++ b/specification/monitor/resource-manager/readme.az.md @@ -14,7 +14,7 @@ az: package-name: azure-mgmt-amcs az-output-folder: $(azure-cli-extension-folder)/src/monitor-control-service python-sdk-output-folder: "$(az-output-folder)/azext_amcs/vendored_sdks/amcs" -# add additinal configuration here specific for Azure CLI +# add additional configuration here specific for Azure CLI # refer to the faq.md for more details ``` @@ -24,7 +24,7 @@ This directory contains the CLI common model for the Azure Monitor Control Servi > Metadata ``` yaml $(AMCS) -extension-mode: preview +extension-mode: stable directive: @@ -49,20 +49,41 @@ directive: group: monitor data-collection rule-association set: group: monitor data-collection rule association + + - where: + group: monitor monitor-control-service data-collection-endpoint + set: + group: monitor data-collection-endpoint + - where: + group: monitor data-collection-endpoint + set: + group: monitor data-collection endpoint cli: cli-directive: -# -------- data-collection rule --------- +# -------- data-collection endpoint -------- - where: - group: DataCollectionRules - param: dataCollectionRuleName + group: DataCollectionEndpoints + param: dataCollectionEndpointName alias: - name - n - where: - group: DataCollectionRuleAssociations + group: DataCollectionEndpoints op: Create hidden: True + - where: + group: DataCollectionEndpoints + op: Update + hidden: True + +# -------- data-collection rule -------- + - where: + group: DataCollectionRules + param: dataCollectionRuleName + alias: + - name + - n - where: group: DataCollectionRules op: Create @@ -89,4 +110,8 @@ cli: alias: - name - n + - where: + group: DataCollectionRuleAssociations + op: Create + hidden: True ``` diff --git a/specification/monitor/resource-manager/readme.azureresourceschema.md b/specification/monitor/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 511c8c460cf5..000000000000 --- a/specification/monitor/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,310 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-insights-2020-10-01 - - tag: schema-insights-2020-05-01-preview - - tag: schema-insights-2020-01-01-preview - - tag: schema-insights-2019-11-01-preview - - tag: schema-insights-2019-10-17-preview - - tag: schema-insights-2019-06-01 - - tag: schema-insights-2019-03-01 - - tag: schema-insights-2018-11-27-preview - - tag: schema-insights-2018-09-01 - - tag: schema-insights-2018-06-01-preview - - tag: schema-insights-2018-04-16 - - tag: schema-insights-2018-03-01 - - tag: schema-insights-2018-01-01 - - tag: schema-insights-2017-12-01-preview - - tag: schema-insights-2017-11-01-preview - - tag: schema-insights-2017-05-01-preview - - tag: schema-insights-2017-04-01 - - tag: schema-insights-2017-03-01-preview - - tag: schema-insights-2016-09-01 - - tag: schema-insights-2016-03-01 - - tag: schema-insights-2015-07-01 - - tag: schema-insights-2015-04-01 - - tag: schema-insights-2014-04-01 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-insights-2020-10-01 and azureresourceschema - -``` yaml $(tag) == 'schema-insights-2020-10-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Insights/stable/2020-10-01/activityLogAlerts_API.json - -``` - -### Tag: schema-insights-2020-05-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-insights-2020-05-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Insights/preview/2020-05-01-preview/scheduledQueryRule_API.json - -``` - -### Tag: schema-insights-2020-01-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-insights-2020-01-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Insights/preview/2020-01-01-preview/managementGroupDiagnosticSettings_API.json - -``` - -### Tag: schema-insights-2019-11-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-insights-2019-11-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Insights/preview/2019-11-01-preview/dataCollectionRuleAssociations_API.json - - Microsoft.Insights/preview/2019-11-01-preview/dataCollectionRules_API.json - -``` - -### Tag: schema-insights-2019-10-17-preview and azureresourceschema - -``` yaml $(tag) == 'schema-insights-2019-10-17-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Insights/preview/2019-10-17-preview/privateLinkScopes_API.json - -``` - -### Tag: schema-insights-2019-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-insights-2019-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Insights/stable/2019-06-01/actionGroups_API.json - -``` - -### Tag: schema-insights-2019-03-01 and azureresourceschema - -``` yaml $(tag) == 'schema-insights-2019-03-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Insights/stable/2019-03-01/metricBaselines_API.json - - Microsoft.Insights/stable/2019-03-01/actionGroups_API.json - -``` - -### Tag: schema-insights-2018-11-27-preview and azureresourceschema - -``` yaml $(tag) == 'schema-insights-2018-11-27-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Insights/preview/2018-11-27-preview/vmInsightsOnboarding_API.json - -``` - -### Tag: schema-insights-2018-09-01 and azureresourceschema - -``` yaml $(tag) == 'schema-insights-2018-09-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Insights/stable/2018-09-01/actionGroups_API.json - - Microsoft.Insights/stable/2018-09-01/metricBaselines_API.json - - Microsoft.Insights/stable/2018-09-01/baseline_API.json - - Microsoft.Insights/stable/2018-09-01/calculateBaseline_API.json - -``` - -### Tag: schema-insights-2018-06-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-insights-2018-06-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Insights/preview/2018-06-01-preview/guestDiagnosticSettingsAssociation_API.json - - Microsoft.Insights/preview/2018-06-01-preview/guestDiagnosticSettings_API.json - -``` - -### Tag: schema-insights-2018-04-16 and azureresourceschema - -``` yaml $(tag) == 'schema-insights-2018-04-16' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Insights/stable/2018-04-16/scheduledQueryRule_API.json - -``` - -### Tag: schema-insights-2018-03-01 and azureresourceschema - -``` yaml $(tag) == 'schema-insights-2018-03-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Insights/stable/2018-03-01/metricAlert_API.json - - Microsoft.Insights/stable/2018-03-01/actionGroups_API.json - -``` - -### Tag: schema-insights-2018-01-01 and azureresourceschema - -``` yaml $(tag) == 'schema-insights-2018-01-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Insights/stable/2018-01-01/metricDefinitions_API.json - - Microsoft.Insights/stable/2018-01-01/metrics_API.json - -``` - -### Tag: schema-insights-2017-12-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-insights-2017-12-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Insights/preview/2017-12-01-preview/metricNamespaces_API.json - -``` - -### Tag: schema-insights-2017-11-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-insights-2017-11-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Insights/preview/2017-11-01-preview/baseline_API.json - - Microsoft.Insights/preview/2017-11-01-preview/calculateBaseline_API.json - -``` - -### Tag: schema-insights-2017-05-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-insights-2017-05-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Insights/preview/2017-05-01-preview/diagnosticsSettings_API.json - - Microsoft.Insights/preview/2017-05-01-preview/diagnosticsSettingsCategories_API.json - - Microsoft.Insights/preview/2017-05-01-preview/subscriptionDiagnosticsSettings_API.json - - Microsoft.Insights/preview/2017-05-01-preview/metricDefinitions_API.json - - Microsoft.Insights/preview/2017-05-01-preview/metrics_API.json - -``` - -### Tag: schema-insights-2017-04-01 and azureresourceschema - -``` yaml $(tag) == 'schema-insights-2017-04-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Insights/stable/2017-04-01/activityLogAlerts_API.json - - Microsoft.Insights/stable/2017-04-01/actionGroups_API.json - -``` - -### Tag: schema-insights-2017-03-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-insights-2017-03-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Insights/preview/2017-03-01-preview/activityLogAlerts_API.json - -``` - -### Tag: schema-insights-2016-09-01 and azureresourceschema - -``` yaml $(tag) == 'schema-insights-2016-09-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Insights/stable/2016-09-01/metrics_API.json - - Microsoft.Insights/stable/2016-09-01/serviceDiagnosticsSettings_API.json - -``` - -### Tag: schema-insights-2016-03-01 and azureresourceschema - -``` yaml $(tag) == 'schema-insights-2016-03-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Insights/stable/2016-03-01/alertRulesIncidents_API.json - - Microsoft.Insights/stable/2016-03-01/alertRules_API.json - - Microsoft.Insights/stable/2016-03-01/logProfiles_API.json - - Microsoft.Insights/stable/2016-03-01/metricDefinitions_API.json - -``` - -### Tag: schema-insights-2015-07-01 and azureresourceschema - -``` yaml $(tag) == 'schema-insights-2015-07-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Insights/stable/2015-07-01/serviceDiagnosticsSettings_API.json - -``` - -### Tag: schema-insights-2015-04-01 and azureresourceschema - -``` yaml $(tag) == 'schema-insights-2015-04-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Insights/stable/2015-04-01/autoscale_API.json - - Microsoft.Insights/stable/2015-04-01/operations_API.json - - Microsoft.Insights/stable/2015-04-01/activityLogs_API.json - - Microsoft.Insights/stable/2015-04-01/eventCategories_API.json - - Microsoft.Insights/stable/2015-04-01/tenantActivityLogs_API.json - -``` - -### Tag: schema-insights-2014-04-01 and azureresourceschema - -``` yaml $(tag) == 'schema-insights-2014-04-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Insights/stable/2014-04-01/alertRules_API.json - -``` diff --git a/specification/monitor/resource-manager/readme.go.md b/specification/monitor/resource-manager/readme.go.md index 3c49e9cc2674..518dbd0706d2 100644 --- a/specification/monitor/resource-manager/readme.go.md +++ b/specification/monitor/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: insights clear-output-folder: true ``` diff --git a/specification/monitor/resource-manager/readme.md b/specification/monitor/resource-manager/readme.md index e1ba0a364278..df76b99c2348 100644 --- a/specification/monitor/resource-manager/readme.md +++ b/specification/monitor/resource-manager/readme.md @@ -22,6 +22,11 @@ To see additional help and options, run: ### Basic Information +There are the global settings for the Azure Monitor Control Service (AMCS) extension. +``` yaml $(AMCS) +tag: package-2021-04-only +``` + These are the global settings for the MonitorClient API. ``` yaml !$(python) || !$(track2) @@ -37,6 +42,15 @@ openapi-type: arm tag: package-2020-03 ``` +### Tag: package-2021-04-only + +``` yaml $(tag) == 'package-2021-04-only' +input-file: + - Microsoft.Insights/stable/2021-04-01/dataCollectionEndpoints_API.json + - Microsoft.Insights/stable/2021-04-01/dataCollectionRuleAssociations_API.json + - Microsoft.Insights/stable/2021-04-01/dataCollectionRules_API.json +``` + ### Tag: package-2021-02-preview-only These settings apply only when `--tag=package-2021-02-preview-only` is specified on the command line. @@ -93,8 +107,6 @@ input-file: - Microsoft.Insights/stable/2015-04-01/tenantActivityLogs_API.json - Microsoft.Insights/stable/2018-01-01/metricDefinitions_API.json - Microsoft.Insights/stable/2018-01-01/metrics_API.json -- Microsoft.Insights/preview/2017-11-01-preview/baseline_API.json -- Microsoft.Insights/preview/2017-11-01-preview/calculateBaseline_API.json - Microsoft.Insights/stable/2019-03-01/metricBaselines_API.json - Microsoft.Insights/stable/2018-03-01/metricAlert_API.json - Microsoft.Insights/stable/2018-04-16/scheduledQueryRule_API.json @@ -124,8 +136,6 @@ input-file: - Microsoft.Insights/stable/2015-04-01/tenantActivityLogs_API.json - Microsoft.Insights/stable/2018-01-01/metricDefinitions_API.json - Microsoft.Insights/stable/2018-01-01/metrics_API.json -- Microsoft.Insights/preview/2017-11-01-preview/baseline_API.json -- Microsoft.Insights/preview/2017-11-01-preview/calculateBaseline_API.json - Microsoft.Insights/stable/2019-03-01/metricBaselines_API.json - Microsoft.Insights/stable/2018-03-01/metricAlert_API.json - Microsoft.Insights/stable/2018-04-16/scheduledQueryRule_API.json @@ -163,8 +173,6 @@ input-file: - Microsoft.Insights/stable/2015-04-01/tenantActivityLogs_API.json - Microsoft.Insights/stable/2018-01-01/metricDefinitions_API.json - Microsoft.Insights/stable/2018-01-01/metrics_API.json -- Microsoft.Insights/preview/2017-11-01-preview/baseline_API.json -- Microsoft.Insights/preview/2017-11-01-preview/calculateBaseline_API.json - Microsoft.Insights/stable/2019-03-01/metricBaselines_API.json - Microsoft.Insights/stable/2018-03-01/metricAlert_API.json - Microsoft.Insights/stable/2018-04-16/scheduledQueryRule_API.json @@ -192,8 +200,6 @@ input-file: - Microsoft.Insights/stable/2015-04-01/tenantActivityLogs_API.json - Microsoft.Insights/stable/2018-01-01/metricDefinitions_API.json - Microsoft.Insights/stable/2018-01-01/metrics_API.json -- Microsoft.Insights/preview/2017-11-01-preview/baseline_API.json -- Microsoft.Insights/preview/2017-11-01-preview/calculateBaseline_API.json - Microsoft.Insights/stable/2019-03-01/metricBaselines_API.json - Microsoft.Insights/stable/2018-03-01/metricAlert_API.json - Microsoft.Insights/stable/2018-04-16/scheduledQueryRule_API.json @@ -577,8 +583,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_monitor'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js monitor/resource-manager ``` ## Python @@ -611,6 +615,10 @@ output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-monitor directive: - suppress: R3016 reason: The feature (polymorphic types) is in the process of deprecation and fixing this will require changes in the backend. + - suppress: OperationsAPIImplementation + from: dataCollectionEndpoints_API.json + where: $.paths + reason: 'Operations API is defined in a separate swagger spec for Microsoft.Insights namespace (https://github.com/Azure/azure-rest-api-specs/blob/master/specification/monitor/resource-manager/Microsoft.Insights/stable/2015-04-01/operations_API.json)' - suppress: OperationsAPIImplementation from: dataCollectionRules_API.json where: $.paths @@ -666,6 +674,4 @@ input-file: - Microsoft.Insights/stable/2015-04-01/operations_API.json ``` -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/msi/resource-manager/readme.azureresourceschema.md b/specification/msi/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 4ad17aca39dc..000000000000 --- a/specification/msi/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,36 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-managedidentity-2018-11-30 - - tag: schema-managedidentity-2015-08-31-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-managedidentity-2018-11-30 and azureresourceschema - -``` yaml $(tag) == 'schema-managedidentity-2018-11-30' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ManagedIdentity/stable/2018-11-30/ManagedIdentity.json - -``` - -### Tag: schema-managedidentity-2015-08-31-preview and azureresourceschema - -``` yaml $(tag) == 'schema-managedidentity-2015-08-31-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ManagedIdentity/preview/2015-08-31-preview/ManagedIdentity.json - -``` diff --git a/specification/msi/resource-manager/readme.go.md b/specification/msi/resource-manager/readme.go.md index 8117e3fba28b..0152576c1496 100644 --- a/specification/msi/resource-manager/readme.go.md +++ b/specification/msi/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: msi clear-output-folder: true ``` diff --git a/specification/msi/resource-manager/readme.md b/specification/msi/resource-manager/readme.md index 5a9b8cdbc7ef..8719b1a40add 100644 --- a/specification/msi/resource-manager/readme.md +++ b/specification/msi/resource-manager/readme.md @@ -64,7 +64,7 @@ This is not used by Autorest itself. ``` yaml $(swagger-to-sdk) swagger-to-sdk: - repo: azure-sdk-for-net - - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-java - repo: azure-sdk-for-go - repo: azure-sdk-for-ruby @@ -73,10 +73,11 @@ swagger-to-sdk: - repo: azure-sdk-for-js - repo: azure-sdk-for-node - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js msi/resource-manager ``` +## Pyhton + +See configuration in [readme.python.md](./readme.python.md) ## C# @@ -146,7 +147,5 @@ generate-interface: true -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/msi/resource-manager/readme.python.md b/specification/msi/resource-manager/readme.python.md index f0a1928161fb..4cdd5e5671b5 100644 --- a/specification/msi/resource-manager/readme.python.md +++ b/specification/msi/resource-manager/readme.python.md @@ -4,24 +4,20 @@ 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.msi - package-name: azure-mgmt-msi - package-version: 1.0.0 - clear-output-folder: true +``` yaml $(python) && $(track2) +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +package-name: azure-mgmt-msi +no-namespace-folders: true +package-version: 1.0.0b1 +clear-output-folder: true ``` -``` yaml $(python) && $(python-mode) == 'update' -python: - no-namespace-folders: true - output-folder: $(python-sdks-folder)/resources/azure-mgmt-msi/azure/mgmt/msi + +``` yaml $(python) && $(python-mode) == 'update' && $(track2) +no-namespace-folders: true +output-folder: $(python-sdks-folder)/resources/azure-mgmt-msi/azure/mgmt/msi ``` -``` yaml $(python) && $(python-mode) == 'create' -python: - basic-setup-py: true - output-folder: $(python-sdks-folder)/resources/azure-mgmt-msi +``` yaml $(python) && $(python-mode) == 'create' && $(track2) +basic-setup-py: true +output-folder: $(python-sdks-folder)/resources/azure-mgmt-msi ``` diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-preview/examples/ReplicasListByServer.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-preview/examples/ReplicasListByServer.json index b5503df0c06f..353921a4831e 100644 --- a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-preview/examples/ReplicasListByServer.json +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-preview/examples/ReplicasListByServer.json @@ -25,12 +25,15 @@ "storageProfile": { "storageMB": 256000, "storageIops": 200, - "backupRetentionDays": 35 + "backupRetentionDays": 35, + "fileStorageSkuName": "Premium_LRS" }, "administratorLogin": "cloudsa", "sslEnforcement": "Enabled", "publicNetworkAccess": "Enabled", "state": "Ready", + "haState": "NotEnabled", + "haEnabled": "Disabled", "fullyQualifiedDomainName": "testserver.mysql.database.azure.com", "version": "5.7", "replicationRole": "Replica", @@ -54,12 +57,15 @@ "storageProfile": { "storageMB": 256000, "storageIops": 200, - "backupRetentionDays": 35 + "backupRetentionDays": 35, + "fileStorageSkuName": "Premium_LRS" }, "administratorLogin": "cloudsa", "sslEnforcement": "Enabled", "publicNetworkAccess": "Enabled", "state": "Ready", + "haState": "NotEnabled", + "haEnabled": "Disabled", "fullyQualifiedDomainName": "testserver1.mysql.database.azure.com", "version": "5.7", "replicationRole": "Replica", @@ -83,12 +89,15 @@ "storageProfile": { "storageMB": 256000, "storageIops": 200, - "backupRetentionDays": 35 + "backupRetentionDays": 35, + "fileStorageSkuName": "Premium_LRS" }, "administratorLogin": "cloudsa", "sslEnforcement": "Enabled", "publicNetworkAccess": "Enabled", "state": "Ready", + "haState": "NotEnabled", + "haEnabled": "Disabled", "fullyQualifiedDomainName": "testserver2.mysql.database.azure.com", "version": "5.7", "replicationRole": "Replica", diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-preview/examples/ServerCreate.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-preview/examples/ServerCreate.json index 7298f514a683..fb39c89d20e8 100644 --- a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-preview/examples/ServerCreate.json +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-preview/examples/ServerCreate.json @@ -38,12 +38,15 @@ "storageProfile": { "storageMB": 128000, "storageIops": 200, - "backupRetentionDays": 7 + "backupRetentionDays": 7, + "fileStorageSkuName": "Premium_LRS" }, "version": "5.7", "sslEnforcement": "Enabled", "publicNetworkAccess": "Enabled", "state": "Ready", + "haState": "NotEnabled", + "haEnabled": "Disabled", "fullyQualifiedDomainName": "mysqltestsvc4.mysql.database.azure.com" }, "location": "westus", @@ -73,12 +76,15 @@ "storageProfile": { "storageMB": 128000, "storageIops": 200, - "backupRetentionDays": 7 + "backupRetentionDays": 7, + "fileStorageSkuName": "Premium_LRS" }, "version": "5.7", "sslEnforcement": "Enabled", "publicNetworkAccess": "Enabled", "state": "Ready", + "haState": "NotEnabled", + "haEnabled": "Disabled", "fullyQualifiedDomainName": "mysqltestsvc4.mysql.database.azure.com" } } diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-preview/examples/ServerCreateReplica.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-preview/examples/ServerCreateReplica.json index 04d66245e40d..0b9dc18fe255 100644 --- a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-preview/examples/ServerCreateReplica.json +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-preview/examples/ServerCreateReplica.json @@ -24,12 +24,15 @@ "storageProfile": { "storageMB": 128000, "storageIops": 200, - "backupRetentionDays": 14 + "backupRetentionDays": 14, + "fileStorageSkuName": "Premium_LRS" }, "version": "5.7", "sslEnforcement": "Enabled", "publicNetworkAccess": "Enabled", "state": "Ready", + "haState": "NotEnabled", + "haEnabled": "Disabled", "fullyQualifiedDomainName": "targetserver.mysql.database.azure.com", "replicationRole": "Replica", "sourceServerId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/PrimaryResourceGroup/providers/Microsoft.DBforMySQL/flexibleServers/primaryserver", @@ -55,12 +58,15 @@ "storageProfile": { "storageMB": 128000, "storageIops": 200, - "backupRetentionDays": 14 + "backupRetentionDays": 14, + "fileStorageSkuName": "Premium_LRS" }, "version": "5.7", "sslEnforcement": "Enabled", "publicNetworkAccess": "Enabled", "state": "Ready", + "haState": "NotEnabled", + "haEnabled": "Disabled", "fullyQualifiedDomainName": "targetserver.mysql.database.azure.com", "replicationRole": "Replica", "sourceServerId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/PrimaryResourceGroup/providers/Microsoft.DBforMySQL/flexibleServers/primaryserver", diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-preview/examples/ServerCreateWithPointInTimeRestore.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-preview/examples/ServerCreateWithPointInTimeRestore.json index 3c5dfe80c7f1..77bedda6d4b2 100644 --- a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-preview/examples/ServerCreateWithPointInTimeRestore.json +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-preview/examples/ServerCreateWithPointInTimeRestore.json @@ -32,12 +32,15 @@ "storageProfile": { "storageMB": 128000, "storageIops": 200, - "backupRetentionDays": 7 + "backupRetentionDays": 7, + "fileStorageSkuName": "Premium_LRS" }, "version": "5.7", "sslEnforcement": "Enabled", "publicNetworkAccess": "Enabled", "state": "Ready", + "haState": "NotEnabled", + "haEnabled": "Disabled", "fullyQualifiedDomainName": "targetserver.mysql.database.azure.com" }, "location": "brazilsouth", @@ -67,12 +70,15 @@ "storageProfile": { "storageMB": 128000, "storageIops": 200, - "backupRetentionDays": 7 + "backupRetentionDays": 7, + "fileStorageSkuName": "Premium_LRS" }, "version": "5.7", "sslEnforcement": "Enabled", "publicNetworkAccess": "Enabled", "state": "Ready", + "haState": "NotEnabled", + "haEnabled": "Disabled", "fullyQualifiedDomainName": "targetserver.mysql.database.azure.com" } } diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-preview/examples/ServerGet.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-preview/examples/ServerGet.json index a8da20a34712..c516cf0ad055 100644 --- a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-preview/examples/ServerGet.json +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-preview/examples/ServerGet.json @@ -17,7 +17,8 @@ "storageProfile": { "storageMB": 128000, "storageIops": 200, - "backupRetentionDays": 7 + "backupRetentionDays": 7, + "fileStorageSkuName": "Premium_ZRS" }, "version": "5.7", "sslEnforcement": "Enabled", diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-preview/examples/ServerGetWithVnet.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-preview/examples/ServerGetWithVnet.json index 23bfd3609f55..c017b9b7bdfb 100644 --- a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-preview/examples/ServerGetWithVnet.json +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-preview/examples/ServerGetWithVnet.json @@ -17,11 +17,13 @@ "storageProfile": { "storageMB": 128000, "storageIops": 200, - "backupRetentionDays": 7 + "backupRetentionDays": 7, + "fileStorageSkuName": "Premium_LRS" }, "version": "5.7", "sslEnforcement": "Enabled", "state": "Ready", + "haState": "NotEnabled", "fullyQualifiedDomainName": "mysqltestsrv.mysql.database.azure.com", "replicationRole": "None", "sourceServerId": "", diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-preview/examples/ServerUpdate.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-preview/examples/ServerUpdate.json index f23943bfe5f8..5e80312832cf 100644 --- a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-preview/examples/ServerUpdate.json +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-preview/examples/ServerUpdate.json @@ -22,7 +22,8 @@ "administratorLogin": "cloudsa", "storageProfile": { "storageMB": 128000, - "backupRetentionDays": 7 + "backupRetentionDays": 7, + "fileStorageSkuName": "Premium_ZRS" }, "version": "5.7", "sslEnforcement": "Disabled", diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-preview/examples/ServerUpdateWithCustomerMaintenanceWindow.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-preview/examples/ServerUpdateWithCustomerMaintenanceWindow.json index eab5131bebdf..ee1ea3325c8f 100644 --- a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-preview/examples/ServerUpdateWithCustomerMaintenanceWindow.json +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-preview/examples/ServerUpdateWithCustomerMaintenanceWindow.json @@ -26,7 +26,8 @@ "administratorLogin": "cloudsa", "storageProfile": { "storageMB": 128000, - "backupRetentionDays": 7 + "backupRetentionDays": 7, + "fileStorageSkuName": "Premium_LRS" }, "version": "5.7", "sslEnforcement": "Disabled", diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-preview/examples/ServersList.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-preview/examples/ServersList.json index 4380b5404009..0ffc6eeab595 100644 --- a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-preview/examples/ServersList.json +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-preview/examples/ServersList.json @@ -17,11 +17,14 @@ "storageProfile": { "storageMB": 5120, "storageIops": 200, - "backupRetentionDays": 7 + "backupRetentionDays": 7, + "fileStorageSkuName": "Premium_LRS" }, "version": "5.7", "sslEnforcement": "Enabled", "state": "Ready", + "haState": "NotEnabled", + "haEnabled": "Disabled", "fullyQualifiedDomainName": "mysqltestsvc1.mysql.database.azure.com", "publicNetworkAccess": "Enabled" }, @@ -40,11 +43,14 @@ "storageProfile": { "storageMB": 5120, "storageIops": 200, - "backupRetentionDays": 7 + "backupRetentionDays": 7, + "fileStorageSkuName": "Premium_LRS" }, "version": "5.7", "sslEnforcement": "Enabled", "state": "Ready", + "haState": "NotEnabled", + "haEnabled": "Disabled", "fullyQualifiedDomainName": "mysqltstsvc2.mysql.database.azure.com", "publicNetworkAccess": "Enabled" }, @@ -63,11 +69,14 @@ "storageProfile": { "storageMB": 102400, "storageIops": 200, - "backupRetentionDays": 35 + "backupRetentionDays": 35, + "fileStorageSkuName": "Premium_LRS" }, "version": "5.7", "sslEnforcement": "Enabled", "state": "Ready", + "haState": "NotEnabled", + "haEnabled": "Disabled", "fullyQualifiedDomainName": "mysqltestsvc3.mysql.database.azure.com", "publicNetworkAccess": "Enabled" }, diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-preview/examples/ServersListByResourceGroup.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-preview/examples/ServersListByResourceGroup.json index 0dd487649c37..c436a8537779 100644 --- a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-preview/examples/ServersListByResourceGroup.json +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-preview/examples/ServersListByResourceGroup.json @@ -18,11 +18,14 @@ "storageProfile": { "storageMB": 5120, "storageIops": 200, - "backupRetentionDays": 7 + "backupRetentionDays": 7, + "fileStorageSkuName": "Premium_LRS" }, "version": "5.7", "sslEnforcement": "Enabled", "state": "Ready", + "haState": "NotEnabled", + "haEnabled": "Disabled", "fullyQualifiedDomainName": "mysqltestsvc1.mysql.database.azure.com", "publicNetworkAccess": "Enabled" }, @@ -41,11 +44,14 @@ "storageProfile": { "storageMB": 5120, "storageIops": 200, - "backupRetentionDays": 7 + "backupRetentionDays": 7, + "fileStorageSkuName": "Premium_LRS" }, "version": "5.7", "sslEnforcement": "Enabled", "state": "Ready", + "haState": "NotEnabled", + "haEnabled": "Disabled", "fullyQualifiedDomainName": "mysqltstsvc2.mysql.database.azure.com", "publicNetworkAccess": "Enabled" }, diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-preview/mysql.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-preview/mysql.json index 5d80b6e0d11d..c07f0e3043e4 100644 --- a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-preview/mysql.json +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-preview/mysql.json @@ -1591,6 +1591,11 @@ "name": "StorageAutogrow", "modelAsString": true } + }, + "fileStorageSkuName": { + "type": "string", + "readOnly": true, + "description": "The sku name of the file storage." } }, "description": "Storage Profile properties of a server" diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-privatepreview/examples/ReplicasListByServer.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-privatepreview/examples/ReplicasListByServer.json index 81d22cd3151f..9f56275d88b5 100644 --- a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-privatepreview/examples/ReplicasListByServer.json +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-privatepreview/examples/ReplicasListByServer.json @@ -31,6 +31,8 @@ "sslEnforcement": "Enabled", "publicNetworkAccess": "Enabled", "state": "Ready", + "haState": "NotEnabled", + "haEnabled": "Disabled", "fullyQualifiedDomainName": "testserver.mysql.database.azure.com", "version": "5.7", "replicationRole": "Replica", @@ -54,12 +56,15 @@ "storageProfile": { "storageMB": 256000, "storageIops": 200, - "backupRetentionDays": 35 + "backupRetentionDays": 35, + "fileStorageSkuName": "Premium_LRS" }, "administratorLogin": "cloudsa", "sslEnforcement": "Enabled", "publicNetworkAccess": "Enabled", "state": "Ready", + "haState": "NotEnabled", + "haEnabled": "Disabled", "fullyQualifiedDomainName": "testserver1.mysql.database.azure.com", "version": "5.7", "replicationRole": "Replica", @@ -83,12 +88,15 @@ "storageProfile": { "storageMB": 256000, "storageIops": 200, - "backupRetentionDays": 35 + "backupRetentionDays": 35, + "fileStorageSkuName": "Premium_LRS" }, "administratorLogin": "cloudsa", "sslEnforcement": "Enabled", "publicNetworkAccess": "Enabled", "state": "Ready", + "haState": "NotEnabled", + "haEnabled": "Disabled", "fullyQualifiedDomainName": "testserver2.mysql.database.azure.com", "version": "5.7", "replicationRole": "Replica", diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-privatepreview/examples/ServerCreate.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-privatepreview/examples/ServerCreate.json index 6d43ccb49287..265188004cd4 100644 --- a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-privatepreview/examples/ServerCreate.json +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-privatepreview/examples/ServerCreate.json @@ -38,12 +38,15 @@ "storageProfile": { "storageMB": 128000, "storageIops": 200, - "backupRetentionDays": 7 + "backupRetentionDays": 7, + "fileStorageSkuName": "Premium_LRS" }, "version": "5.7", "sslEnforcement": "Enabled", "publicNetworkAccess": "Enabled", "state": "Ready", + "haState": "NotEnabled", + "haEnabled": "Disabled", "fullyQualifiedDomainName": "mysqltestsvc4.mysql.database.azure.com" }, "location": "westus", @@ -73,12 +76,15 @@ "storageProfile": { "storageMB": 128000, "storageIops": 200, - "backupRetentionDays": 7 + "backupRetentionDays": 7, + "fileStorageSkuName": "Premium_LRS" }, "version": "5.7", "sslEnforcement": "Enabled", "publicNetworkAccess": "Enabled", "state": "Ready", + "haState": "NotEnabled", + "haEnabled": "Disabled", "fullyQualifiedDomainName": "mysqltestsvc4.mysql.database.azure.com" } } diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-privatepreview/examples/ServerCreateReplica.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-privatepreview/examples/ServerCreateReplica.json index bc1f9f6d98b5..bb35eb2d5c72 100644 --- a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-privatepreview/examples/ServerCreateReplica.json +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-privatepreview/examples/ServerCreateReplica.json @@ -24,12 +24,15 @@ "storageProfile": { "storageMB": 128000, "storageIops": 200, - "backupRetentionDays": 14 + "backupRetentionDays": 14, + "fileStorageSkuName": "Premium_LRS" }, "version": "5.7", "sslEnforcement": "Enabled", "publicNetworkAccess": "Enabled", "state": "Ready", + "haState": "NotEnabled", + "haEnabled": "Disabled", "fullyQualifiedDomainName": "targetserver.mysql.database.azure.com", "replicationRole": "Replica", "sourceServerId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/PrimaryResourceGroup/providers/Microsoft.DBforMySQL/flexibleServers/primaryserver", @@ -55,12 +58,15 @@ "storageProfile": { "storageMB": 128000, "storageIops": 200, - "backupRetentionDays": 14 + "backupRetentionDays": 14, + "fileStorageSkuName": "Premium_LRS" }, "version": "5.7", "sslEnforcement": "Enabled", "publicNetworkAccess": "Enabled", "state": "Ready", + "haState": "NotEnabled", + "haEnabled": "Disabled", "fullyQualifiedDomainName": "targetserver.mysql.database.azure.com", "replicationRole": "Replica", "sourceServerId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/PrimaryResourceGroup/providers/Microsoft.DBforMySQL/flexibleServers/primaryserver", diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-privatepreview/examples/ServerCreateWithPointInTimeRestore.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-privatepreview/examples/ServerCreateWithPointInTimeRestore.json index 4b3990b72432..c7ff9cfecf53 100644 --- a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-privatepreview/examples/ServerCreateWithPointInTimeRestore.json +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-privatepreview/examples/ServerCreateWithPointInTimeRestore.json @@ -32,12 +32,15 @@ "storageProfile": { "storageMB": 128000, "storageIops": 200, - "backupRetentionDays": 7 + "backupRetentionDays": 7, + "fileStorageSkuName": "Premium_LRS" }, "version": "5.7", "sslEnforcement": "Enabled", "publicNetworkAccess": "Enabled", "state": "Ready", + "haState": "NotEnabled", + "haEnabled": "Disabled", "fullyQualifiedDomainName": "targetserver.mysql.database.azure.com" }, "location": "brazilsouth", @@ -67,12 +70,15 @@ "storageProfile": { "storageMB": 128000, "storageIops": 200, - "backupRetentionDays": 7 + "backupRetentionDays": 7, + "fileStorageSkuName": "Premium_LRS" }, "version": "5.7", "sslEnforcement": "Enabled", "publicNetworkAccess": "Enabled", "state": "Ready", + "haState": "NotEnabled", + "haEnabled": "Disabled", "fullyQualifiedDomainName": "targetserver.mysql.database.azure.com" } } diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-privatepreview/examples/ServerGet.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-privatepreview/examples/ServerGet.json index 7cbb5a26261b..a9ba34aba627 100644 --- a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-privatepreview/examples/ServerGet.json +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-privatepreview/examples/ServerGet.json @@ -17,7 +17,8 @@ "storageProfile": { "storageMB": 128000, "storageIops": 200, - "backupRetentionDays": 7 + "backupRetentionDays": 7, + "fileStorageSkuName": "Premium_ZRS" }, "version": "5.7", "sslEnforcement": "Enabled", diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-privatepreview/examples/ServerGetWithVnet.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-privatepreview/examples/ServerGetWithVnet.json index 389a8dd0ee29..0cbd16848b88 100644 --- a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-privatepreview/examples/ServerGetWithVnet.json +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-privatepreview/examples/ServerGetWithVnet.json @@ -17,11 +17,13 @@ "storageProfile": { "storageMB": 128000, "storageIops": 200, - "backupRetentionDays": 7 + "backupRetentionDays": 7, + "fileStorageSkuName": "Premium_LRS" }, "version": "5.7", "sslEnforcement": "Enabled", "state": "Ready", + "haState": "NotEnabled", "fullyQualifiedDomainName": "mysqltestsrv.mysql.database.azure.com", "replicationRole": "None", "sourceServerId": "", diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-privatepreview/examples/ServerUpdate.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-privatepreview/examples/ServerUpdate.json index d8ae50add972..b48bffac3e8c 100644 --- a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-privatepreview/examples/ServerUpdate.json +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-privatepreview/examples/ServerUpdate.json @@ -22,7 +22,8 @@ "administratorLogin": "cloudsa", "storageProfile": { "storageMB": 128000, - "backupRetentionDays": 7 + "backupRetentionDays": 7, + "fileStorageSkuName": "Premium_ZRS" }, "version": "5.7", "sslEnforcement": "Disabled", diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-privatepreview/examples/ServerUpdateWithCustomerMaintenanceWindow.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-privatepreview/examples/ServerUpdateWithCustomerMaintenanceWindow.json index 417d0843ccfb..4b6f18a5f5dc 100644 --- a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-privatepreview/examples/ServerUpdateWithCustomerMaintenanceWindow.json +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-privatepreview/examples/ServerUpdateWithCustomerMaintenanceWindow.json @@ -26,7 +26,8 @@ "administratorLogin": "cloudsa", "storageProfile": { "storageMB": 128000, - "backupRetentionDays": 7 + "backupRetentionDays": 7, + "fileStorageSkuName": "Premium_LRS" }, "version": "5.7", "sslEnforcement": "Disabled", diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-privatepreview/examples/ServersList.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-privatepreview/examples/ServersList.json index 07bb843e2ef6..66679e942eba 100644 --- a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-privatepreview/examples/ServersList.json +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-privatepreview/examples/ServersList.json @@ -17,11 +17,13 @@ "storageProfile": { "storageMB": 5120, "storageIops": 200, - "backupRetentionDays": 7 + "backupRetentionDays": 7, + "fileStorageSkuName": "Premium_LRS" }, "version": "5.7", "sslEnforcement": "Enabled", "state": "Ready", + "haEnabled": "Disabled", "fullyQualifiedDomainName": "mysqltestsvc1.mysql.database.azure.com", "publicNetworkAccess": "Enabled" }, @@ -40,11 +42,14 @@ "storageProfile": { "storageMB": 5120, "storageIops": 200, - "backupRetentionDays": 7 + "backupRetentionDays": 7, + "fileStorageSkuName": "Premium_LRS" }, "version": "5.7", "sslEnforcement": "Enabled", "state": "Ready", + "haState": "NotEnabled", + "haEnabled": "Disabled", "fullyQualifiedDomainName": "mysqltstsvc2.mysql.database.azure.com", "publicNetworkAccess": "Enabled" }, @@ -63,11 +68,14 @@ "storageProfile": { "storageMB": 102400, "storageIops": 200, - "backupRetentionDays": 35 + "backupRetentionDays": 35, + "fileStorageSkuName": "Premium_LRS" }, "version": "5.7", "sslEnforcement": "Enabled", "state": "Ready", + "haState": "NotEnabled", + "haEnabled": "Disabled", "fullyQualifiedDomainName": "mysqltestsvc3.mysql.database.azure.com", "publicNetworkAccess": "Enabled" }, diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-privatepreview/examples/ServersListByResourceGroup.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-privatepreview/examples/ServersListByResourceGroup.json index e782700573d2..569fec46ab3c 100644 --- a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-privatepreview/examples/ServersListByResourceGroup.json +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-privatepreview/examples/ServersListByResourceGroup.json @@ -18,11 +18,14 @@ "storageProfile": { "storageMB": 5120, "storageIops": 200, - "backupRetentionDays": 7 + "backupRetentionDays": 7, + "fileStorageSkuName": "Premium_LRS" }, "version": "5.7", "sslEnforcement": "Enabled", "state": "Ready", + "haState": "NotEnabled", + "haEnabled": "Disabled", "fullyQualifiedDomainName": "mysqltestsvc1.mysql.database.azure.com", "publicNetworkAccess": "Enabled" }, @@ -41,11 +44,14 @@ "storageProfile": { "storageMB": 5120, "storageIops": 200, - "backupRetentionDays": 7 + "backupRetentionDays": 7, + "fileStorageSkuName": "Premium_LRS" }, "version": "5.7", "sslEnforcement": "Enabled", "state": "Ready", + "haState": "NotEnabled", + "haEnabled": "Disabled", "fullyQualifiedDomainName": "mysqltstsvc2.mysql.database.azure.com", "publicNetworkAccess": "Enabled" }, diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-privatepreview/mysql.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-privatepreview/mysql.json index 1db902d66888..86b63aa1b67d 100644 --- a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-privatepreview/mysql.json +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2020-07-01-privatepreview/mysql.json @@ -1591,6 +1591,11 @@ "name": "StorageAutogrow", "modelAsString": true } + }, + "fileStorageSkuName": { + "type": "string", + "readOnly": true, + "description": "The sku name of the file storage." } }, "description": "Storage Profile properties of a server" diff --git a/specification/mysql/resource-manager/readme.az.md b/specification/mysql/resource-manager/readme.az.md index e4e631ded08e..55419e854d03 100644 --- a/specification/mysql/resource-manager/readme.az.md +++ b/specification/mysql/resource-manager/readme.az.md @@ -9,6 +9,6 @@ az: package-name: azure-mgmt-mysql az-output-folder: $(azure-cli-extension-folder)/src/mysql python-sdk-output-folder: "$(az-output-folder)/azext_mysql/vendored_sdks/mysql" -# add additinal configuration here specific for Azure CLI +# add additional configuration here specific for Azure CLI # refer to the faq.md for more details ``` \ No newline at end of file diff --git a/specification/mysql/resource-manager/readme.azureresourceschema.md b/specification/mysql/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index d2b30e14dbd2..000000000000 --- a/specification/mysql/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,77 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-dbformysql-2020-07-01-preview - - tag: schema-dbformysql-2020-01-01 - - tag: schema-dbformysql-2018-06-01 - - tag: schema-dbformysql-2017-12-01-preview - - tag: schema-dbformysql-2017-12-01 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-dbformysql-2020-07-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-dbformysql-2020-07-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DBforMySQL/preview/2020-07-01-preview/mysql.json - -``` - -### Tag: schema-dbformysql-2020-01-01 and azureresourceschema - -``` yaml $(tag) == 'schema-dbformysql-2020-01-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DBforMySQL/stable/2020-01-01/DataEncryptionKeys.json - - Microsoft.DBforMySQL/stable/2020-01-01/Servers.json - -``` - -### Tag: schema-dbformysql-2018-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-dbformysql-2018-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DBforMySQL/stable/2018-06-01/QueryPerformanceInsights.json - - Microsoft.DBforMySQL/stable/2018-06-01/PerformanceRecommendations.json - - Microsoft.DBforMySQL/stable/2018-06-01/PrivateEndpointConnections.json - - Microsoft.DBforMySQL/stable/2018-06-01/PrivateLinkResources.json - -``` - -### Tag: schema-dbformysql-2017-12-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-dbformysql-2017-12-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DBforMySQL/preview/2017-12-01-preview/mysql.json - -``` - -### Tag: schema-dbformysql-2017-12-01 and azureresourceschema - -``` yaml $(tag) == 'schema-dbformysql-2017-12-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DBforMySQL/stable/2017-12-01/mysql.json - - Microsoft.DBforMySQL/stable/2017-12-01/ServerSecurityAlertPolicies.json - -``` diff --git a/specification/mysql/resource-manager/readme.go.md b/specification/mysql/resource-manager/readme.go.md index 02c81a7eba72..80d9daa37054 100644 --- a/specification/mysql/resource-manager/readme.go.md +++ b/specification/mysql/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION clear-output-folder: true ``` diff --git a/specification/mysql/resource-manager/readme.md b/specification/mysql/resource-manager/readme.md index 1148aea3614b..8895615f5e4a 100644 --- a/specification/mysql/resource-manager/readme.md +++ b/specification/mysql/resource-manager/readme.md @@ -151,8 +151,6 @@ swagger-to-sdk: - repo: azure-sdk-for-js - repo: azure-sdk-for-node - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js mysql/resource-manager ``` @@ -182,7 +180,5 @@ See configuration in [readme.go.md](./readme.go.md) See configuration in [readme.java.md](./readme.java.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Accounts_CreateOrUpdate.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Accounts_CreateOrUpdate.json new file mode 100644 index 000000000000..6dbc6ad0817e --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Accounts_CreateOrUpdate.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "api-version": "2021-04-01-preview", + "body": { + "location": "eastus", + "properties": { + "activeDirectories": [ + { + "site": "SiteName", + "username": "ad_user_name", + "password": "ad_password", + "domain": "10.10.10.3", + "dns": "10.10.10.3, 10.10.10.4", + "smbServerName": "SMBServer", + "organizationalUnit": "Engineering", + "aesEncryption": true, + "ldapSigning": false + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1", + "name": "account1", + "type": "Microsoft.NetApp/netAppAccounts", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1", + "name": "account1", + "type": "Microsoft.NetApp/netAppAccounts", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Accounts_Delete.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Accounts_Delete.json new file mode 100644 index 000000000000..335f53842744 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Accounts_Delete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Accounts_Get.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Accounts_Get.json new file mode 100644 index 000000000000..cccd18a386fd --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Accounts_Get.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1", + "name": "account1", + "type": "Microsoft.NetApp/netAppAccounts", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "activeDirectories": [ + { + "site": "SiteName", + "activeDirectoryId": "02da3711-6c58-2d64-098a-e3af7afaf936", + "username": "ad_user_name", + "domain": "10.10.10.3", + "dns": "10.10.10.3, 10.10.10.4", + "status": "InUse", + "smbServerName": "SMBServer", + "organizationalUnit": "Engineering", + "statusDetails": "Status Details", + "aesEncryption": true, + "ldapSigning": true + } + ] + } + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Accounts_List.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Accounts_List.json new file mode 100644 index 000000000000..c405fe73d906 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Accounts_List.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1", + "name": "account1", + "type": "Microsoft.NetApp/netAppAccounts", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Accounts_Update.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Accounts_Update.json new file mode 100644 index 000000000000..b0f7131c2a45 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Accounts_Update.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "api-version": "2021-04-01-preview", + "body": { + "tags": { + "Tag1": "Value1" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1", + "name": "account1", + "type": "Microsoft.NetApp/netAppAccounts", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded" + } + } + }, + "202": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1", + "name": "account1", + "type": "Microsoft.NetApp/netAppAccounts", + "location": "eastus", + "tags": { + "Tag1": "Value1" + }, + "properties": { + "provisioningState": "Patching", + "encryption": { + "keySource": "Microsoft.NetApp" + } + } + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/BackupPolicies_Create.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/BackupPolicies_Create.json new file mode 100644 index 000000000000..2ce42225ff82 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/BackupPolicies_Create.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "backupPolicyName": "backupPolicyName", + "api-version": "2021-04-01-preview", + "body": { + "location": "westus", + "properties": { + "dailyBackupsToKeep": 10, + "weeklyBackupsToKeep": 10, + "monthlyBackupsToKeep": 10, + "enabled": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/backupPolocies/backupPolicyName", + "name": "account1/backupPolicyName", + "type": "Microsoft.NetApp/netAppAccounts/backupPolicies", + "location": "westus", + "properties": { + "dailyBackupsToKeep": 10, + "weeklyBackupsToKeep": 10, + "monthlyBackupsToKeep": 10, + "enabled": true, + "provisioningState": "creating" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/backupPolocies/backupPolicyName", + "name": "account1/backupPolicyName", + "type": "Microsoft.NetApp/netAppAccounts/backupPolicies", + "location": "westus", + "properties": { + "dailyBackupsToKeep": 10, + "weeklyBackupsToKeep": 10, + "monthlyBackupsToKeep": 10, + "enabled": true, + "provisioningState": "creating" + } + } + }, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/BackupPolicies_Delete.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/BackupPolicies_Delete.json new file mode 100644 index 000000000000..1938895827b3 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/BackupPolicies_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "resourceGroup", + "accountName": "accountName", + "backupPolicyName": "backupPolicyName", + "api-version": "2021-04-01-preview" + }, + "responses": { + "204": {}, + "202": {}, + "200": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/BackupPolicies_Get.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/BackupPolicies_Get.json new file mode 100644 index 000000000000..db9208bf244a --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/BackupPolicies_Get.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "backupPolicyName": "backupPolicyName", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/backupPolocies/backupPolicyName", + "name": "account1/backupPolicyName", + "type": "Microsoft.NetApp/netAppAccounts/backupPolicies", + "location": "eastus", + "properties": { + "name": "Policy 1", + "dailyBackupsToKeep": 10, + "weeklyBackupsToKeep": 10, + "monthlyBackupsToKeep": 10, + "yearlyBackupsToKeep": 10, + "volumesAssigned": 0, + "enabled": true, + "volumeBackups": [ + { + "volumeName": "volume 1", + "backupsCount": 5, + "policyEnabled": true + } + ] + } + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/BackupPolicies_List.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/BackupPolicies_List.json new file mode 100644 index 000000000000..59ff04d60d23 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/BackupPolicies_List.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/backupPolocies/backupPolicy1", + "name": "account1/backupPolicy1", + "type": "Microsoft.NetApp/netAppAccounts/backupPolicies", + "location": "eastus", + "properties": { + "name": "Policy 1", + "dailyBackupsToKeep": 10, + "weeklyBackupsToKeep": 10, + "monthlyBackupsToKeep": 10, + "yearlyBackupsToKeep": 10, + "volumesAssigned": 0, + "enabled": true + } + } + ] + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/BackupPolicies_Update.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/BackupPolicies_Update.json new file mode 100644 index 000000000000..72ba197da7a8 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/BackupPolicies_Update.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "backupPolicyName": "backupPolicyName", + "api-version": "2021-04-01-preview", + "body": { + "location": "westus", + "properties": { + "dailyBackupsToKeep": 5, + "weeklyBackupsToKeep": 10, + "monthlyBackupsToKeep": 10, + "enabled": false + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/backupPolocies/backupPolicyName", + "name": "account1/backupPolicyName", + "type": "Microsoft.NetApp/netAppAccounts/backupPolicies", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "dailyBackupsToKeep": 5, + "weeklyBackupsToKeep": 10, + "monthlyBackupsToKeep": 10, + "yearlyBackupsToKeep": 0, + "volumesAssigned": 1, + "enabled": false, + "volumeBackups": [ + { + "volumeName": "volume 1", + "backupsCount": 5, + "policyEnabled": true + } + ] + } + } + }, + "202": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/backupPolocies/backupPolicyName", + "name": "account1/backupPolicyName", + "type": "Microsoft.NetApp/netAppAccounts/backupPolicies", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "dailyBackupsToKeep": 5, + "weeklyBackupsToKeep": 10, + "monthlyBackupsToKeep": 10, + "yearlyBackupsToKeep": 0, + "volumesAssigned": 1, + "enabled": false, + "volumeBackups": [ + { + "volumeName": "volume 1", + "backupsCount": 5, + "policyEnabled": true + } + ] + } + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Backups_Account_Delete.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Backups_Account_Delete.json new file mode 100644 index 000000000000..32edeab2cb8b --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Backups_Account_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "resourceGroup", + "accountName": "accountName", + "backupName": "backupName", + "api-version": "2021-04-01-preview" + }, + "responses": { + "204": {}, + "202": {}, + "200": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Backups_Account_Get.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Backups_Account_Get.json new file mode 100644 index 000000000000..89c37b436ba7 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Backups_Account_Get.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "backupName": "backup1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/accountBackups/backup1", + "name": "account1/backup1", + "type": "Microsoft.NetApp/netAppAccounts/accountBackups", + "location": "eastus", + "properties": { + "creationDate": "2017-08-15T13:23:33Z", + "provisioningState": "Succeeded", + "size": 10011, + "label": "myLabel", + "backupType": "Manual" + } + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Backups_Account_List.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Backups_Account_List.json new file mode 100644 index 000000000000..1c017243089b --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Backups_Account_List.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/accountBackups/backup1", + "name": "account1/backup1", + "type": "Microsoft.NetApp/netAppAccounts/accountBackups", + "location": "eastus", + "properties": { + "creationDate": "2017-08-15T13:23:33Z", + "provisioningState": "Succeeded", + "size": 10011, + "label": "myLabel", + "backupType": "Manual" + } + } + ] + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Backups_Create.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Backups_Create.json new file mode 100644 index 000000000000..9e3418d064a5 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Backups_Create.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "backupName": "backup1", + "api-version": "2021-04-01-preview", + "body": { + "location": "eastus", + "properties": { + "label": "myLabel" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1/volumes/volume1/backups/backup1", + "name": "account1/pool1/volume1/backup1", + "type": "Microsoft.NetApp/netAppAccounts/capacityPools/volumes/backups", + "location": "eastus", + "properties": { + "creationDate": "2017-08-15T13:23:33Z", + "provisioningState": "Succeeded", + "size": 10011, + "label": "myLabel", + "backupType": "Manual" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1/volumes/volume1/backups/backup1", + "name": "account1/pool1/volume1/backup1", + "type": "Microsoft.NetApp/netAppAccounts/capacityPools/volumes/backups", + "location": "eastus", + "properties": { + "creationDate": "2017-08-15T13:23:33Z", + "provisioningState": "Succeeded", + "size": 10011, + "label": "myLabel", + "backupType": "Manual" + } + } + }, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Backups_Delete.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Backups_Delete.json new file mode 100644 index 000000000000..1001b3a86728 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Backups_Delete.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "resourceGroup", + "accountName": "accountName", + "poolName": "poolName", + "volumeName": "volumeName", + "backupName": "backupName", + "api-version": "2021-04-01-preview" + }, + "responses": { + "204": {}, + "202": {}, + "200": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Backups_Get.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Backups_Get.json new file mode 100644 index 000000000000..8012f9f7e4ce --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Backups_Get.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "backupName": "backup1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1/volumes/volume1/backups/backup1", + "name": "account1/pool1/volume1/backup1", + "type": "Microsoft.NetApp/netAppAccounts/capacityPools/volumes/backups", + "location": "eastus", + "properties": { + "creationDate": "2017-08-15T13:23:33Z", + "provisioningState": "Succeeded", + "size": 10011, + "label": "myLabel", + "backupType": "Manual" + } + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Backups_List.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Backups_List.json new file mode 100644 index 000000000000..55cb1f7b0671 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Backups_List.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1/volumes/volume1/backups/backup1", + "name": "account1/pool1/volume1/backup1", + "type": "Microsoft.NetApp/netAppAccounts/capacityPools/volumes/backups", + "location": "eastus", + "properties": { + "creationDate": "2017-08-15T13:23:33Z", + "provisioningState": "Succeeded", + "size": 10011, + "label": "myLabel", + "backupType": "Manual" + } + } + ] + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Backups_Update.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Backups_Update.json new file mode 100644 index 000000000000..c54c999a9423 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Backups_Update.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "backupName": "backup1", + "api-version": "2021-04-01-preview", + "body": {} + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1/volumes/volume1/backups/backup1", + "name": "account1/pool1/volume1/backup1", + "type": "Microsoft.NetApp/netAppAccounts/capacityPools/volumes/backups", + "location": "eastus", + "properties": { + "creationDate": "2017-08-15T13:23:33Z", + "provisioningState": "Succeeded", + "size": 10011, + "label": "myLabel", + "backupType": "Manual" + } + } + }, + "202": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1/volumes/volume1/backups/backup1", + "name": "account1/pool1/volume1/backup1", + "type": "Microsoft.NetApp/netAppAccounts/capacityPools/volumes/backups", + "location": "eastus", + "properties": { + "creationDate": "2017-08-15T13:23:33Z", + "provisioningState": "Succeeded", + "size": 10011, + "label": "myLabel", + "backupType": "Manual" + } + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/CheckFilePathAvailability.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/CheckFilePathAvailability.json new file mode 100644 index 000000000000..34ce3f909407 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/CheckFilePathAvailability.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "location": "eastus", + "api-version": "2021-04-01-preview", + "body": { + "name": "my-exact-filepth", + "type": "netAppAccount/capacityPools/volume", + "resourceGroup": "myRG" + } + }, + "responses": { + "200": { + "body": { + "isAvailable": true + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/CheckNameAvailability.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/CheckNameAvailability.json new file mode 100644 index 000000000000..dcccd8fba24c --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/CheckNameAvailability.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "location": "eastus", + "api-version": "2021-04-01-preview", + "body": { + "name": "accName", + "type": "netAppAccount", + "resourceGroup": "myRG" + } + }, + "responses": { + "200": { + "body": { + "isAvailable": true + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/CheckQuotaAvailability.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/CheckQuotaAvailability.json new file mode 100644 index 000000000000..c5906d6f6769 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/CheckQuotaAvailability.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "location": "eastus", + "api-version": "2021-04-01-preview", + "body": { + "name": "resource1", + "type": "Microsoft.NetApp/netAppAccounts", + "resourceGroup": "myRG" + } + }, + "responses": { + "200": { + "body": { + "isAvailable": true + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Pools_CreateOrUpdate.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Pools_CreateOrUpdate.json new file mode 100644 index 000000000000..402593723bdb --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Pools_CreateOrUpdate.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "api-version": "2021-04-01-preview", + "body": { + "location": "eastus", + "properties": { + "size": 4398046511104, + "serviceLevel": "Premium", + "qosType": "Auto" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1", + "name": "account1/pool1", + "type": "Microsoft.NetApp/netAppAccounts/capacityPools", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "poolId": "9760acf5-4638-11e7-9bdb-020073ca7778", + "serviceLevel": "Premium", + "size": 4398046511104, + "qosType": "Auto", + "totalThroughputMibps": 281.474 + } + } + }, + "201": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1", + "name": "account1/pool1", + "type": "Microsoft.NetApp/netAppAccounts/capacityPools", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "poolId": "9760acf5-4638-11e7-9bdb-020073ca7778", + "serviceLevel": "Premium", + "size": 4398046511104, + "qosType": "Auto", + "totalThroughputMibps": 281.474 + } + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Pools_Delete.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Pools_Delete.json new file mode 100644 index 000000000000..d09f5096a307 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Pools_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Pools_Get.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Pools_Get.json new file mode 100644 index 000000000000..e90011d11739 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Pools_Get.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1", + "name": "account1/pool1", + "type": "Microsoft.NetApp/netAppAccounts/capacityPools", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "poolId": "9760acf5-4638-11e7-9bdb-020073ca7778", + "serviceLevel": "Premium", + "size": 4398046511104, + "qosType": "Manual", + "totalThroughputMibps": 281.474, + "utilizedThroughputMibps": 100.47 + } + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Pools_List.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Pools_List.json new file mode 100644 index 000000000000..b98aa4e40295 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Pools_List.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1", + "name": "account1/pool1", + "type": "Microsoft.NetApp/netAppAccounts/capacityPools", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "poolId": "9760acf5-4638-11e7-9bdb-020073ca7778", + "serviceLevel": "Premium", + "size": 4398046511104, + "qosType": "Auto", + "totalThroughputMibps": 281.474 + } + } + ] + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Pools_Update.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Pools_Update.json new file mode 100644 index 000000000000..dc687ac41084 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Pools_Update.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "api-version": "2021-04-01-preview", + "body": {} + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1", + "name": "account1/pool1", + "type": "Microsoft.NetApp/netAppAccounts/capacityPools", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "poolId": "9760acf5-4638-11e7-9bdb-020073ca7778", + "serviceLevel": "Premium", + "size": 4398046511104, + "qosType": "Manual", + "totalThroughputMibps": 281.474, + "utilizedThroughputMibps": 100.47 + } + } + }, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/RegionInfo.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/RegionInfo.json new file mode 100644 index 000000000000..b2bccaa7b628 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/RegionInfo.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "location": "eastus", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "storageToNetworkProximity": "T2" + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/SnapshotPolicies_Create.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/SnapshotPolicies_Create.json new file mode 100644 index 000000000000..d5b49821b787 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/SnapshotPolicies_Create.json @@ -0,0 +1,103 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "snapshotPolicyName": "snapshotPolicyName", + "api-version": "2021-04-01-preview", + "body": { + "location": "eastus", + "properties": { + "hourlySchedule": { + "snapshotsToKeep": 2, + "minute": 50 + }, + "dailySchedule": { + "snapshotsToKeep": 4, + "hour": 14, + "minute": 30 + }, + "weeklySchedule": { + "snapshotsToKeep": 3, + "day": "Wednesday", + "hour": 14, + "minute": 45 + }, + "monthlySchedule": { + "snapshotsToKeep": 5, + "daysOfMonth": "10,11,12", + "hour": 14, + "minute": 15 + } + } + } + }, + "responses": { + "200": { + "body": { + "location": "eastus", + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/snapshotPolicies/snapshotPolicy1", + "name": "account1/snapshotPolicy1", + "type": "Microsoft.NetApp/netAppAccounts/snapshotPolicies", + "properties": { + "enabled": true, + "hourlySchedule": { + "snapshotsToKeep": 2, + "minute": 50 + }, + "dailySchedule": { + "snapshotsToKeep": 4, + "hour": 14, + "minute": 30 + }, + "weeklySchedule": { + "snapshotsToKeep": 3, + "day": "Wednesday", + "hour": 14, + "minute": 45 + }, + "monthlySchedule": { + "snapshotsToKeep": 5, + "daysOfMonth": "10,11,12", + "hour": 14, + "minute": 15 + }, + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "location": "eastus", + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/snapshotPolicies/snapshotPolicy1", + "name": "account1/snapshotPolicy1", + "type": "Microsoft.NetApp/netAppAccounts/snapshotPolicies", + "properties": { + "enabled": true, + "hourlySchedule": { + "snapshotsToKeep": 2, + "minute": 50 + }, + "dailySchedule": { + "snapshotsToKeep": 4, + "hour": 14, + "minute": 30 + }, + "weeklySchedule": { + "snapshotsToKeep": 3, + "day": "Wednesday", + "hour": 14, + "minute": 45 + }, + "monthlySchedule": { + "snapshotsToKeep": 5, + "daysOfMonth": "10,11,12", + "hour": 14, + "minute": 15 + }, + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/SnapshotPolicies_Delete.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/SnapshotPolicies_Delete.json new file mode 100644 index 000000000000..9cdb32a5a4f5 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/SnapshotPolicies_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "resourceGroup", + "accountName": "accountName", + "snapshotPolicyName": "snapshotPolicyName", + "api-version": "2021-04-01-preview" + }, + "responses": { + "204": {}, + "202": {}, + "200": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/SnapshotPolicies_Get.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/SnapshotPolicies_Get.json new file mode 100644 index 000000000000..10f9f018d2f1 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/SnapshotPolicies_Get.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "snapshotPolicyName": "snapshotPolicyName", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/snapshotPolicies/snapshotPolicy1", + "name": "account1/snapshotPolicy1", + "type": "Microsoft.NetApp/netAppAccounts/snapshotPolicies", + "location": "eastus", + "properties": { + "enabled": true, + "hourlySchedule": { + "snapshotsToKeep": 2, + "minute": 50 + }, + "dailySchedule": { + "snapshotsToKeep": 4, + "hour": 14, + "minute": 30 + }, + "weeklySchedule": { + "snapshotsToKeep": 3, + "day": "Wednesday", + "hour": 14, + "minute": 45 + }, + "monthlySchedule": { + "snapshotsToKeep": 5, + "daysOfMonth": "10,11,12", + "hour": 14, + "minute": 15 + }, + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/SnapshotPolicies_List.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/SnapshotPolicies_List.json new file mode 100644 index 000000000000..ac03ac6a16a1 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/SnapshotPolicies_List.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/snapshotPolicies/snapshotPolicy1", + "name": "account1/snapshotPolicy1", + "location": "eastus", + "type": "Microsoft.NetApp/netAppAccounts/snapshotPolicies", + "properties": { + "enabled": true, + "hourlySchedule": { + "snapshotsToKeep": 2, + "minute": 50 + }, + "dailySchedule": { + "snapshotsToKeep": 4, + "hour": 14, + "minute": 30 + }, + "weeklySchedule": { + "snapshotsToKeep": 3, + "day": "Wednesday", + "hour": 14, + "minute": 45 + }, + "monthlySchedule": { + "snapshotsToKeep": 5, + "daysOfMonth": "10,11,12", + "hour": 14, + "minute": 15 + }, + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/SnapshotPolicies_ListVolumes.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/SnapshotPolicies_ListVolumes.json new file mode 100644 index 000000000000..e554adfa9055 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/SnapshotPolicies_ListVolumes.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "snapshotPolicyName": "snapshotPolicyName", + "api-version": "2021-04-01-preview", + "body": { + "location": "eastus", + "properties": {} + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1/volumes/volume1", + "name": "account1/pool1/volume1", + "type": "Microsoft.NetApp/netAppAccounts/capacityPools/volumes", + "location": "eastus", + "properties": { + "fileSystemId": "9760acf5-4638-11e7-9bdb-020073ca7778", + "creationToken": "some-amazing-filepath", + "usageThreshold": 107374182400, + "serviceLevel": "Premium", + "provisioningState": "Succeeded", + "throughputMibps": 128, + "subnetId": "/subscriptions/9760acf5-4638-11e7-9bdb-020073ca7778/resourceGroups/myRP/providers/Microsoft.Network/virtualNetworks/testvnet3/subnets/testsubnet3" + } + } + ] + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/SnapshotPolicies_Update.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/SnapshotPolicies_Update.json new file mode 100644 index 000000000000..93ce60920010 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/SnapshotPolicies_Update.json @@ -0,0 +1,104 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "snapshotPolicyName": "snapshotPolicyName", + "api-version": "2021-04-01-preview", + "body": { + "location": "eastus", + "properties": { + "enabled": true, + "hourlySchedule": { + "snapshotsToKeep": 2, + "minute": 50 + }, + "dailySchedule": { + "snapshotsToKeep": 4, + "hour": 14, + "minute": 30 + }, + "weeklySchedule": { + "snapshotsToKeep": 3, + "day": "Wednesday", + "hour": 14, + "minute": 45 + }, + "monthlySchedule": { + "snapshotsToKeep": 5, + "daysOfMonth": "10,11,12", + "hour": 14, + "minute": 15 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/snapshotPolicies/snapshotPolicy1", + "name": "account1/snapshotPolicy1", + "type": "Microsoft.NetApp/netAppAccounts/snapshotPolicies", + "location": "eastus", + "properties": { + "enabled": true, + "hourlySchedule": { + "snapshotsToKeep": 2, + "minute": 50 + }, + "dailySchedule": { + "snapshotsToKeep": 4, + "hour": 14, + "minute": 30 + }, + "weeklySchedule": { + "snapshotsToKeep": 3, + "day": "Wednesday", + "hour": 14, + "minute": 45 + }, + "monthlySchedule": { + "snapshotsToKeep": 5, + "daysOfMonth": "10,11,12", + "hour": 14, + "minute": 15 + }, + "provisioningState": "Succeeded" + } + } + }, + "202": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/snapshotPolicies/snapshotPolicy1", + "name": "account1/snapshotPolicy1", + "type": "Microsoft.NetApp/netAppAccounts/snapshotPolicies", + "location": "eastus", + "properties": { + "enabled": true, + "hourlySchedule": { + "snapshotsToKeep": 2, + "minute": 50 + }, + "dailySchedule": { + "snapshotsToKeep": 4, + "hour": 14, + "minute": 30 + }, + "weeklySchedule": { + "snapshotsToKeep": 3, + "day": "Wednesday", + "hour": 14, + "minute": 45 + }, + "monthlySchedule": { + "snapshotsToKeep": 5, + "daysOfMonth": "10,11,12", + "hour": 14, + "minute": 15 + }, + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Snapshots_Create.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Snapshots_Create.json new file mode 100644 index 000000000000..355c2cfe0b4f --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Snapshots_Create.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "snapshotName": "snapshot1", + "api-version": "2021-04-01-preview", + "body": { + "location": "eastus" + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1/volumes/volume1/snapshots/snapshot1", + "name": "account1/pool1/volume1/snapshot1", + "type": "Microsoft.NetApp/netAppAccounts/capacityPools/volumes/snapshots", + "location": "eastus", + "properties": { + "snapshotId": "9760acf5-4638-11e7-9bdb-020073ca3333", + "created": "2017-08-15T13:23:33Z", + "provisioningState": "Succeeded" + } + } + }, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Snapshots_Delete.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Snapshots_Delete.json new file mode 100644 index 000000000000..a296676e0603 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Snapshots_Delete.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "snapshotName": "snapshot1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "204": {}, + "202": {}, + "200": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Snapshots_Get.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Snapshots_Get.json new file mode 100644 index 000000000000..1754ed50db9d --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Snapshots_Get.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "snapshotName": "snapshot1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1/volumes/volume1/snapshots/snapshot1", + "name": "account1/pool1/volume1/snapshot1", + "type": "Microsoft.NetApp/netAppAccounts/capacityPools/volumes/snapshots", + "location": "eastus", + "properties": { + "snapshotId": "9760acf5-4638-11e7-9bdb-020073ca3333", + "created": "2017-08-15T13:23:33Z", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Snapshots_List.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Snapshots_List.json new file mode 100644 index 000000000000..2ad33a966156 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Snapshots_List.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1/volumes/volume1/snapshots/snapshot1", + "name": "account1/pool1/volume1/snapshot1", + "type": "Microsoft.NetApp/netAppAccounts/capacityPools/volumes/snapshots", + "location": "eastus", + "properties": { + "snapshotId": "9760acf5-4638-11e7-9bdb-020073ca3333", + "created": "2017-08-15T13:23:33Z", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Snapshots_Update.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Snapshots_Update.json new file mode 100644 index 000000000000..cf2b3ed4ee74 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Snapshots_Update.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "snapshotName": "snapshot1", + "api-version": "2021-04-01-preview", + "body": {} + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1/volumes/volume1/snapshots/snapshot1", + "name": "account1/pool1/volume1/snapshot1", + "type": "Microsoft.NetApp/netAppAccounts/capacityPools/volumes/snapshots", + "location": "eastus", + "properties": { + "snapshotId": "9760acf5-4638-11e7-9bdb-020073ca3333", + "created": "2017-08-15T13:23:33Z", + "provisioningState": "Succeeded" + } + } + }, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Vaults_List.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Vaults_List.json new file mode 100644 index 000000000000..b984966f525b --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Vaults_List.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/vaults/vault1", + "name": "account1/vault1", + "type": "Microsoft.NetApp/netAppAccounts/vaults", + "location": "eastus", + "properties": { + "vaultName": "east US" + } + } + ] + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Volumes_AuthorizeReplication.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Volumes_AuthorizeReplication.json new file mode 100644 index 000000000000..5229b6738cd7 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Volumes_AuthorizeReplication.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "api-version": "2021-04-01-preview", + "body": { + "remoteVolumeResourceId": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRemoteRG/providers/Microsoft.NetApp/netAppAccounts/remoteAccount1/capacityPools/remotePool1/volumes/remoteVolume1" + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Volumes_BackupStatus.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Volumes_BackupStatus.json new file mode 100644 index 000000000000..79f6c4aa5234 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Volumes_BackupStatus.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "healthy": true, + "relationshipStatus": "Idle", + "mirrorState": "Mirrored", + "unhealthyReason": "", + "errorMessage": "" + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Volumes_BreakReplication.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Volumes_BreakReplication.json new file mode 100644 index 000000000000..79038237c1c0 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Volumes_BreakReplication.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "api-version": "2021-04-01-preview", + "body": { + "forceBreakReplication": false + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Volumes_CreateOrUpdate.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Volumes_CreateOrUpdate.json new file mode 100644 index 000000000000..085d931e0269 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Volumes_CreateOrUpdate.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "api-version": "2021-04-01-preview", + "body": { + "location": "eastus", + "properties": { + "creationToken": "my-unique-file-path", + "serviceLevel": "Premium", + "subnetId": "/subscriptions/9760acf5-4638-11e7-9bdb-020073ca7778/resourceGroups/myRP/providers/Microsoft.Network/virtualNetworks/testvnet3/subnets/testsubnet3", + "usageThreshold": 107374182400, + "throughputMibps": 128, + "encryptionKeySource": "Microsoft.KeyVault" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1/volumes/volume1", + "location": "eastus", + "name": "account1/pool1/volume1", + "properties": { + "fileSystemId": "9760acf5-4638-11e7-9bdb-020073ca7778", + "creationToken": "some-amazing-filepath", + "usageThreshold": 107374182400, + "serviceLevel": "Premium", + "provisioningState": "Succeeded", + "throughputMibps": 128, + "subnetId": "/subscriptions/9760acf5-4638-11e7-9bdb-020073ca7778/resourceGroups/myRP/providers/Microsoft.Network/virtualNetworks/testvnet3/subnets/testsubnet3", + "encryptionKeySource": "Microsoft.KeyVault" + }, + "type": "Microsoft.NetApp/netAppAccounts/capacityPools/volumes" + } + }, + "201": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1/volumes/volume1", + "location": "eastus", + "name": "account1/pool1/volume1", + "properties": { + "fileSystemId": "9760acf5-4638-11e7-9bdb-020073ca7778", + "creationToken": "some-amazing-filepath", + "usageThreshold": 107374182400, + "serviceLevel": "Premium", + "provisioningState": "Succeeded", + "throughputMibps": 128, + "subnetId": "/subscriptions/9760acf5-4638-11e7-9bdb-020073ca7778/resourceGroups/myRP/providers/Microsoft.Network/virtualNetworks/testvnet3/subnets/testsubnet3", + "encryptionKeySource": "Microsoft.KeyVault" + }, + "type": "Microsoft.NetApp/netAppAccounts/capacityPools/volumes" + } + }, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Volumes_Delete.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Volumes_Delete.json new file mode 100644 index 000000000000..69232da35af2 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Volumes_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Volumes_DeleteReplication.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Volumes_DeleteReplication.json new file mode 100644 index 000000000000..ce131e399622 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Volumes_DeleteReplication.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "api-version": "2021-04-01-preview", + "body": { + "location": "eastus", + "properties": {} + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Volumes_Get.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Volumes_Get.json new file mode 100644 index 000000000000..a507f1315bfb --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Volumes_Get.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1/volumes/volume1", + "name": "account1/pool1/volume1", + "type": "Microsoft.NetApp/netAppAccounts/capacityPools/volumes", + "location": "eastus", + "properties": { + "fileSystemId": "9760acf5-4638-11e7-9bdb-020073ca7778", + "creationToken": "some-amazing-filepath", + "usageThreshold": 107374182400, + "serviceLevel": "Premium", + "provisioningState": "Succeeded", + "throughputMibps": 128, + "subnetId": "/subscriptions/9760acf5-4638-11e7-9bdb-020073ca7778/resourceGroups/myRP/providers/Microsoft.Network/virtualNetworks/testvnet3/subnets/testsubnet3" + } + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Volumes_List.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Volumes_List.json new file mode 100644 index 000000000000..1da25fffbfeb --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Volumes_List.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1/volumes/volume1", + "name": "account1/pool1/volume1", + "type": "Microsoft.NetApp/netAppAccounts/capacityPools/volumes", + "location": "eastus", + "properties": { + "fileSystemId": "9760acf5-4638-11e7-9bdb-020073ca7778", + "creationToken": "some-amazing-filepath", + "usageThreshold": 107374182400, + "serviceLevel": "Premium", + "provisioningState": "Succeeded", + "throughputMibps": 128, + "subnetId": "/subscriptions/9760acf5-4638-11e7-9bdb-020073ca7778/resourceGroups/myRP/providers/Microsoft.Network/virtualNetworks/testvnet3/subnets/testsubnet3" + } + } + ] + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Volumes_PoolChange.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Volumes_PoolChange.json new file mode 100644 index 000000000000..17787ab73132 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Volumes_PoolChange.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "api-version": "2021-04-01-preview", + "body": { + "newPoolResourceId": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1" + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Volumes_ReInitializeReplication.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Volumes_ReInitializeReplication.json new file mode 100644 index 000000000000..ce131e399622 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Volumes_ReInitializeReplication.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "api-version": "2021-04-01-preview", + "body": { + "location": "eastus", + "properties": {} + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Volumes_ReplicationStatus.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Volumes_ReplicationStatus.json new file mode 100644 index 000000000000..8438e431a58a --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Volumes_ReplicationStatus.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "api-version": "2021-04-01-preview", + "body": { + "location": "eastus", + "properties": {} + } + }, + "responses": { + "200": { + "body": { + "healthy": true, + "relationshipStatus": "Idle", + "mirrorState": "Mirrored", + "totalProgress": "1048576", + "errorMessage": "" + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Volumes_ResyncReplication.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Volumes_ResyncReplication.json new file mode 100644 index 000000000000..ce131e399622 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Volumes_ResyncReplication.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "api-version": "2021-04-01-preview", + "body": { + "location": "eastus", + "properties": {} + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Volumes_Revert.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Volumes_Revert.json new file mode 100644 index 000000000000..9aae5857142d --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Volumes_Revert.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "api-version": "2021-04-01-preview", + "body": { + "snapshotId": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1/volumes/volume1/snapshots/snapshot1" + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Volumes_Update.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Volumes_Update.json new file mode 100644 index 000000000000..41562e2f3c9f --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/examples/Volumes_Update.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "api-version": "2021-04-01-preview", + "body": {} + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subscriptionId/resourceGroups/resourceGroup/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1/volumes/volume1", + "name": "account1/pool1/volume1", + "type": "Microsoft.NetApp/netAppAccounts/capacityPools/volumes", + "location": "eastus", + "properties": { + "fileSystemId": "9760acf5-4638-11e7-9bdb-020073ca7778", + "creationToken": "some-amazing-filepath", + "usageThreshold": 107374182400, + "serviceLevel": "Premium", + "provisioningState": "Succeeded", + "throughputMibps": 128, + "subnetId": "/subscriptions/9760acf5-4638-11e7-9bdb-020073ca7778/resourceGroups/myRP/providers/Microsoft.Network/virtualNetworks/testvnet3/subnets/testsubnet3" + } + } + }, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/netapp.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/netapp.json new file mode 100644 index 000000000000..e8af0761067e --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2021-04-01-preview/netapp.json @@ -0,0 +1,5298 @@ +{ + "swagger": "2.0", + "info": { + "title": "Microsoft NetApp", + "description": "Microsoft NetApp Azure Resource Provider specification", + "version": "2021-04-01-preview", + "x-ms-code-generation-settings": { + "name": "AzureNetAppFilesManagementClient" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "schemes": [ + "https" + ], + "host": "management.azure.com", + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/providers/Microsoft.NetApp/operations": { + "get": { + "tags": [ + "Operations" + ], + "summary": "Describes the Resource Provider", + "description": "Lists all of the available Microsoft.NetApp Rest API operations", + "operationId": "Operations_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-pageable": { + "nextLinkName": null + }, + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.NetApp/locations/{location}/checkNameAvailability": { + "post": { + "tags": [ + "NetApp Resource" + ], + "summary": "Check resource name availability", + "description": "Check if a resource name is available.", + "operationId": "NetAppResource_CheckNameAvailability", + "parameters": [ + { + "name": "body", + "in": "body", + "description": "Name availability request.", + "required": true, + "schema": { + "$ref": "#/definitions/ResourceNameAvailabilityRequest" + }, + "x-ms-client-flatten": true + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/location" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CheckAvailabilityResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "CheckNameAvailability": { + "$ref": "./examples/CheckNameAvailability.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.NetApp/locations/{location}/checkFilePathAvailability": { + "post": { + "tags": [ + "NetApp Resource" + ], + "summary": "Check file path availability", + "description": "Check if a file path is available.", + "operationId": "NetAppResource_CheckFilePathAvailability", + "parameters": [ + { + "name": "body", + "in": "body", + "description": "File path availability request.", + "required": true, + "schema": { + "$ref": "#/definitions/ResourceNameAvailabilityRequest" + }, + "x-ms-client-flatten": true + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/location" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CheckAvailabilityResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "CheckFilePathAvailability": { + "$ref": "./examples/CheckFilePathAvailability.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.NetApp/locations/{location}/checkQuotaAvailability": { + "post": { + "tags": [ + "NetApp Resource" + ], + "summary": "Check quota availability", + "description": "Check if a quota is available.", + "operationId": "NetAppResource_CheckQuotaAvailability", + "parameters": [ + { + "name": "body", + "in": "body", + "description": "Quota availability request.", + "required": true, + "schema": { + "$ref": "#/definitions/QuotaAvailabilityRequest" + }, + "x-ms-client-flatten": true + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/location" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CheckAvailabilityResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "CheckQuotaAvailability": { + "$ref": "./examples/CheckQuotaAvailability.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.NetApp/locations/{location}/regionInfo": { + "get": { + "summary": "Describes region specific information.", + "description": "Provides storage to network proximity information.", + "tags": [ + "NetApp Resource" + ], + "operationId": "NetAppResourceRegionInfo_Get", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/location" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/regionInfo" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "RegionInfo_Get": { + "$ref": "./examples/RegionInfo.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts": { + "get": { + "summary": "Describe all NetApp Accounts in a resource group", + "description": "List and describe all NetApp accounts in the resource group.", + "tags": [ + "NetApp Accounts" + ], + "operationId": "Accounts_List", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/netAppAccountList" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "Accounts_List": { + "$ref": "./examples/Accounts_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}": { + "get": { + "summary": "Describe a NetApp Account", + "description": "Get the NetApp account", + "tags": [ + "NetApp Accounts" + ], + "operationId": "Accounts_Get", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/netAppAccount" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "Accounts_Get": { + "$ref": "./examples/Accounts_Get.json" + } + } + }, + "put": { + "tags": [ + "NetApp Accounts" + ], + "operationId": "Accounts_CreateOrUpdate", + "summary": "Create or update a NetApp account", + "description": "Create or update the specified NetApp account within the resource group", + "parameters": [ + { + "name": "body", + "description": "NetApp Account object supplied in the body of the operation.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/netAppAccount" + } + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - account updated", + "schema": { + "$ref": "#/definitions/netAppAccount" + } + }, + "201": { + "description": "Account created", + "schema": { + "$ref": "#/definitions/netAppAccount" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Accounts_CreateOrUpdate": { + "$ref": "./examples/Accounts_CreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "NetApp Accounts" + ], + "operationId": "Accounts_Delete", + "summary": "Delete a NetApp account", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "description": "Delete the specified NetApp account", + "responses": { + "202": { + "description": "Accepted -- Delete request accepted; operation will complete asynchronously" + }, + "204": { + "description": "NoContent -- Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Accounts_Delete": { + "$ref": "./examples/Accounts_Delete.json" + } + } + }, + "patch": { + "tags": [ + "NetApp Accounts" + ], + "operationId": "Accounts_Update", + "summary": "Update a NetApp account", + "description": "Patch the specified NetApp account", + "parameters": [ + { + "name": "body", + "description": "NetApp Account object supplied in the body of the operation.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/netAppAccountPatch" + } + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - account updated", + "schema": { + "$ref": "#/definitions/netAppAccount" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/netAppAccount" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/cloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Accounts_Update": { + "$ref": "./examples/Accounts_Update.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools": { + "get": { + "summary": "Describe all Capacity Pools", + "description": "List all capacity pools in the NetApp Account", + "tags": [ + "Capacity Pools" + ], + "operationId": "Pools_List", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/capacityPoolList" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "Pools_List": { + "$ref": "./examples/Pools_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}": { + "get": { + "summary": "Describe a Capacity Pool", + "description": "Get details of the specified capacity pool", + "tags": [ + "Capacity Pools" + ], + "operationId": "Pools_Get", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/capacityPool" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "Pools_Get": { + "$ref": "./examples/Pools_Get.json" + } + } + }, + "put": { + "tags": [ + "Capacity Pools" + ], + "operationId": "Pools_CreateOrUpdate", + "summary": "Create or Update the specified capacity pool within the resource group", + "description": "Create or Update a capacity pool", + "parameters": [ + { + "name": "body", + "description": "Capacity pool object supplied in the body of the operation.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/capacityPool" + } + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - pool updated", + "schema": { + "$ref": "#/definitions/capacityPool" + } + }, + "201": { + "description": "Pool created", + "schema": { + "$ref": "#/definitions/capacityPool" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Pools_CreateOrUpdate": { + "$ref": "./examples/Pools_CreateOrUpdate.json" + } + } + }, + "patch": { + "tags": [ + "Capacity Pools" + ], + "operationId": "Pools_Update", + "summary": "Update a capacity pool", + "description": "Patch the specified capacity pool", + "parameters": [ + { + "name": "body", + "description": "Capacity pool object supplied in the body of the operation.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/capacityPoolPatch" + } + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/capacityPool" + } + }, + "202": { + "description": "Accepted -- Update request accepted; operation will complete asynchronously" + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Pools_Update": { + "$ref": "./examples/Pools_Update.json" + } + } + }, + "delete": { + "tags": [ + "Capacity Pools" + ], + "operationId": "Pools_Delete", + "summary": "Delete a capacity pool", + "description": "Delete the specified capacity pool", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted -- Delete request accepted; operation will complete asynchronously" + }, + "204": { + "description": "NoContent -- Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Pools_Delete": { + "$ref": "./examples/Pools_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes": { + "get": { + "summary": "Describe all volumes", + "description": "List all volumes within the capacity pool", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "tags": [ + "Volumes" + ], + "operationId": "Volumes_List", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/volumeList" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "Volumes_List": { + "$ref": "./examples/Volumes_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}": { + "get": { + "tags": [ + "Volumes" + ], + "operationId": "Volumes_Get", + "summary": "Describe a volume", + "description": "Get the details of the specified volume", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/volume" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "Volumes_Get": { + "$ref": "./examples/Volumes_Get.json" + } + } + }, + "put": { + "tags": [ + "Volumes" + ], + "operationId": "Volumes_CreateOrUpdate", + "summary": "Create or Update a volume", + "description": "Create or update the specified volume within the capacity pool", + "parameters": [ + { + "name": "body", + "description": "Volume object supplied in the body of the operation.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/volume" + } + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Ok - volume updated", + "schema": { + "$ref": "#/definitions/volume" + } + }, + "201": { + "description": "Volume created", + "schema": { + "$ref": "#/definitions/volume" + } + }, + "202": { + "description": "Accepted -- Create request accepted; operation will complete asynchronously" + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Volumes_CreateOrUpdate": { + "$ref": "./examples/Volumes_CreateOrUpdate.json" + } + } + }, + "patch": { + "tags": [ + "Volumes" + ], + "operationId": "Volumes_Update", + "summary": "Update a volume", + "description": "Patch the specified volume", + "parameters": [ + { + "name": "body", + "description": "Volume object supplied in the body of the operation.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/volumePatch" + } + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/volume" + } + }, + "202": { + "description": "Accepted -- Create or update request accepted; operation will complete asynchronously" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/cloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Volumes_Update": { + "$ref": "./examples/Volumes_Update.json" + } + } + }, + "delete": { + "tags": [ + "Volumes" + ], + "operationId": "Volumes_Delete", + "summary": "Delete a volume", + "description": "Delete the specified volume", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted -- Delete request accepted; operation will complete asynchronously" + }, + "204": { + "description": "NoContent -- Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Volumes_Delete": { + "$ref": "./examples/Volumes_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}/revert": { + "post": { + "tags": [ + "Volumes Revert" + ], + "summary": "Revert a volume to one of its snapshots", + "description": "Revert a volume to the snapshot specified in the body", + "operationId": "Volumes_Revert", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "body", + "description": "Object for snapshot to revert supplied in the body of the operation.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/volumeRevert" + } + } + ], + "responses": { + "200": { + "description": "OK - terminal state" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Volumes_Revert": { + "$ref": "./examples/Volumes_Revert.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}/breakReplication": { + "post": { + "tags": [ + "Volumes Replication" + ], + "summary": "Break volume replication", + "description": "Break the replication connection on the destination volume", + "operationId": "Volumes_BreakReplication", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "body", + "description": "Optional body to force break the replication.", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/breakReplicationRequest" + } + } + ], + "responses": { + "200": { + "description": "OK - terminal state" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Volumes_BreakReplication": { + "$ref": "./examples/Volumes_BreakReplication.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}/replicationStatus": { + "get": { + "tags": [ + "Volumes Replication" + ], + "summary": "Get volume replication status", + "description": "Get the status of the replication", + "operationId": "Volumes_ReplicationStatus", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/replicationStatus" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "Volumes_ReplicationStatus": { + "$ref": "./examples/Volumes_ReplicationStatus.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}/resyncReplication": { + "post": { + "tags": [ + "Volumes Replication" + ], + "summary": "Resync volume replication", + "description": "Resync the connection on the destination volume. If the operation is ran on the source volume it will reverse-resync the connection and sync from destination to source.", + "operationId": "Volumes_ResyncReplication", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - terminal state" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Volumes_ResyncReplication": { + "$ref": "./examples/Volumes_ResyncReplication.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}/deleteReplication": { + "post": { + "tags": [ + "Volumes Replication" + ], + "summary": "Delete volume replication", + "description": "Delete the replication connection on the destination volume, and send release to the source replication", + "operationId": "Volumes_DeleteReplication", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - terminal state" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Volumes_DeleteReplication": { + "$ref": "./examples/Volumes_DeleteReplication.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}/authorizeReplication": { + "post": { + "tags": [ + "Volumes Replication" + ], + "summary": "Authorize source volume replication", + "description": "Authorize the replication connection on the source volume", + "operationId": "Volumes_AuthorizeReplication", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "body", + "description": "Authorize request object supplied in the body of the operation.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/authorizeRequest" + } + } + ], + "responses": { + "200": { + "description": "OK - terminal state" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Volumes_AuthorizeReplication": { + "$ref": "./examples/Volumes_AuthorizeReplication.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}/reinitializeReplication": { + "post": { + "tags": [ + "Volumes Replication" + ], + "summary": "ReInitialize volume replication", + "description": "Re-Initializes the replication connection on the destination volume", + "operationId": "Volumes_ReInitializeReplication", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - terminal state" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Volumes_ReInitializeReplication": { + "$ref": "./examples/Volumes_ReInitializeReplication.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}/poolChange": { + "post": { + "tags": [ + "Pool Change" + ], + "summary": "Change pool for volume", + "description": "Moves volume to another pool", + "operationId": "Volumes_PoolChange", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "body", + "description": "Move volume to the pool supplied in the body of the operation.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/poolChangeRequest" + } + } + ], + "responses": { + "200": { + "description": "OK - terminal state" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Volumes_AuthorizeReplication": { + "$ref": "./examples/Volumes_PoolChange.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}/snapshots": { + "get": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_List", + "summary": "Describe all snapshots", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "description": "List all snapshots associated with the volume", + "x-ms-pageable": { + "nextLinkName": null + }, + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/snapshotsList" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "Snapshots_List": { + "$ref": "./examples/Snapshots_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}/snapshots/{snapshotName}": { + "get": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_Get", + "summary": "Describe a snapshot", + "description": "Get details of the specified snapshot", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/SnapshotName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/snapshot" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "Snapshots_Get": { + "$ref": "./examples/Snapshots_Get.json" + } + } + }, + "put": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_Create", + "summary": "Create a snapshot", + "description": "Create the specified snapshot within the given volume", + "parameters": [ + { + "name": "body", + "description": "Snapshot object supplied in the body of the operation.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/snapshot" + } + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/SnapshotName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Snapshot created", + "schema": { + "$ref": "#/definitions/snapshot" + } + }, + "202": { + "description": "Accepted -- Create request accepted; operation will complete asynchronously" + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Snapshots_Create": { + "$ref": "./examples/Snapshots_Create.json" + } + } + }, + "patch": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_Update", + "summary": "Update a snapshot", + "description": "Patch a snapshot", + "parameters": [ + { + "name": "body", + "description": "Snapshot object supplied in the body of the operation.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/snapshotPatch" + } + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/SnapshotName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/snapshot" + } + }, + "202": { + "description": "Accepted -- Update request accepted; operation will complete asynchronously" + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Snapshots_Update": { + "$ref": "./examples/Snapshots_Update.json" + } + } + }, + "delete": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_Delete", + "summary": "Delete a snapshot", + "description": "Delete snapshot", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/SnapshotName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted -- Delete request accepted; operation will complete asynchronously" + }, + "204": { + "description": "NoContent -- Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Snapshots_Delete": { + "$ref": "./examples/Snapshots_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/snapshotPolicies": { + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "get": { + "tags": [ + "Snapshot Policy" + ], + "operationId": "SnapshotPolicies_List", + "description": "List snapshot policy", + "x-ms-pageable": { + "nextLinkName": null + }, + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/snapshotPoliciesList" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "SnapshotPolicies_List": { + "$ref": "./examples/SnapshotPolicies_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/snapshotPolicies/{snapshotPolicyName}": { + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/SnapshotPolicyName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "get": { + "tags": [ + "Snapshot Policy" + ], + "operationId": "SnapshotPolicies_Get", + "description": "Get a snapshot Policy", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/snapshotPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "SnapshotPolicies_Get": { + "$ref": "./examples/SnapshotPolicies_Get.json" + } + } + }, + "put": { + "tags": [ + "Snapshot Policy" + ], + "operationId": "SnapshotPolicies_Create", + "description": "Create a snapshot policy", + "parameters": [ + { + "name": "body", + "description": "Snapshot policy object supplied in the body of the operation.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/snapshotPolicy" + } + } + ], + "responses": { + "200": { + "description": "OK - snapshot Policy updated", + "schema": { + "$ref": "#/definitions/snapshotPolicy" + } + }, + "201": { + "description": "Snapshot Policy created", + "schema": { + "$ref": "#/definitions/snapshotPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": false, + "x-ms-examples": { + "SnapshotPolicies_Create": { + "$ref": "./examples/SnapshotPolicies_Create.json" + } + } + }, + "patch": { + "tags": [ + "Snapshot Policy" + ], + "operationId": "SnapshotPolicies_Update", + "description": "Patch a snapshot policy", + "parameters": [ + { + "name": "body", + "description": "Snapshot policy object supplied in the body of the operation.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/snapshotPolicyPatch" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/snapshotPolicy" + } + }, + "202": { + "description": "Accepted -- Create or update request accepted; operation will complete asynchronously", + "schema": { + "$ref": "#/definitions/snapshotPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "SnapshotPolicies_Update": { + "$ref": "./examples/SnapshotPolicies_Update.json" + } + } + }, + "delete": { + "tags": [ + "Snapshot Policy" + ], + "operationId": "SnapshotPolicies_Delete", + "description": "Delete snapshot policy", + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted -- Create or update request accepted; operation will complete asynchronously" + }, + "204": { + "description": "NoContent -- Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "SnapshotPolicies_Delete": { + "$ref": "./examples/SnapshotPolicies_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/snapshotPolicies/{snapshotPolicyName}/volumes": { + "get": { + "tags": [ + "Snapshot Policy List Volumes" + ], + "summary": "Get volumes for snapshot policy", + "description": "Get volumes associated with snapshot policy", + "operationId": "SnapshotPolicies_ListVolumes", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/SnapshotPolicyName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/snapshotPolicyVolumeList" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "SnapshotPolicies_ListVolumes": { + "$ref": "./examples/SnapshotPolicies_ListVolumes.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}/backupStatus": { + "get": { + "tags": [ + "Backups" + ], + "summary": "Get volume's backup status", + "description": "Get the status of the backup for a volume", + "operationId": "Backups_GetStatus", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/backupStatus" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "Volumes_BackupStatus": { + "$ref": "./examples/Volumes_BackupStatus.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/accountBackups": { + "get": { + "tags": [ + "Backups" + ], + "summary": "List Backups for a Netapp Account", + "description": "List all Backups for a Netapp Account", + "operationId": "AccountBackups_List", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-pageable": { + "nextLinkName": null + }, + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/backupsList" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "AccountBackups_List": { + "$ref": "./examples/Backups_Account_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/accountBackups/{backupName}": { + "get": { + "tags": [ + "Backups" + ], + "summary": "Get Backup for a Netapp Account", + "description": "Gets the specified backup for a Netapp Account", + "operationId": "AccountBackups_Get", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/BackupName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/backup" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "AccountBackups_Get": { + "$ref": "./examples/Backups_Account_Get.json" + } + } + }, + "delete": { + "tags": [ + "Backups" + ], + "summary": "Delete Backup for a Netapp Account", + "description": "Delete the specified Backup for a Netapp Account", + "operationId": "AccountBackups_Delete", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/BackupName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted -- Create or update request accepted; operation will complete asynchronously" + }, + "204": { + "description": "NoContent -- Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "AccountBackups_Delete": { + "$ref": "./examples/Backups_Account_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}/backups": { + "get": { + "tags": [ + "Backups" + ], + "summary": "List Backups", + "description": "List all backups for a volume", + "operationId": "Backups_List", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-pageable": { + "nextLinkName": null + }, + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/backupsList" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "Backups_List": { + "$ref": "./examples/Backups_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}/backups/{backupName}": { + "get": { + "tags": [ + "Backups" + ], + "summary": "Get a backup", + "description": "Gets the specified backup of the volume", + "operationId": "Backups_Get", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/BackupName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/backup" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "Backups_Get": { + "$ref": "./examples/Backups_Get.json" + } + } + }, + "put": { + "tags": [ + "Backups" + ], + "summary": "Create a backup", + "description": "Create a backup for the volume", + "operationId": "Backups_Create", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/BackupName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "body", + "description": "Backup object supplied in the body of the operation.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/backup" + } + } + ], + "responses": { + "200": { + "description": "OK created", + "schema": { + "$ref": "#/definitions/backup" + } + }, + "201": { + "description": "Backup created", + "schema": { + "$ref": "#/definitions/backup" + } + }, + "202": { + "description": "Accepted -- Create request accepted; operation will complete asynchronously" + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Backups_Create": { + "$ref": "./examples/Backups_Create.json" + } + } + }, + "patch": { + "tags": [ + "Backups" + ], + "summary": "Patch a backup", + "description": "Patch a backup for the volume", + "operationId": "Backups_Update", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/BackupName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "body", + "description": "Backup object supplied in the body of the operation.", + "in": "body", + "schema": { + "$ref": "#/definitions/backupPatch" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/backup" + } + }, + "202": { + "description": "Accepted -- Create or update request accepted; operation will complete asynchronously", + "schema": { + "$ref": "#/definitions/backup" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Backups_Update": { + "$ref": "./examples/Backups_Update.json" + } + } + }, + "delete": { + "tags": [ + "Backups" + ], + "summary": "Delete backup", + "description": "Delete a backup of the volume", + "operationId": "Backups_Delete", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/BackupName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted -- Create or update request accepted; operation will complete asynchronously" + }, + "204": { + "description": "NoContent -- Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Backups_Delete": { + "$ref": "./examples/Backups_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/backupPolicies": { + "get": { + "tags": [ + "Backup Policy" + ], + "summary": "List backup policies", + "description": "List backup policies for Netapp Account", + "operationId": "BackupPolicies_List", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-pageable": { + "nextLinkName": null + }, + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/backupPoliciesList" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "Backups_List": { + "$ref": "./examples/BackupPolicies_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/backupPolicies/{backupPolicyName}": { + "get": { + "tags": [ + "Backup Policy" + ], + "summary": "Get a backup Policy", + "description": "Get a particular backup Policy", + "operationId": "BackupPolicies_Get", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/BackupPolicyName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/backupPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "Backups_Get": { + "$ref": "./examples/BackupPolicies_Get.json" + } + } + }, + "put": { + "tags": [ + "Backup Policy" + ], + "summary": "Create a backup policy", + "description": "Create a backup policy for Netapp Account", + "operationId": "BackupPolicies_Create", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/BackupPolicyName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "body", + "description": "Backup policy object supplied in the body of the operation.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/backupPolicy" + } + } + ], + "responses": { + "200": { + "description": "Backup Policy created", + "schema": { + "$ref": "#/definitions/backupPolicy" + } + }, + "201": { + "description": "Backup created", + "schema": { + "$ref": "#/definitions/backupPolicy" + } + }, + "202": { + "description": "Accepted -- Create request accepted; operation will complete asynchronously" + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "BackupPolicies_Create": { + "$ref": "./examples/BackupPolicies_Create.json" + } + } + }, + "patch": { + "tags": [ + "Backup Policy" + ], + "summary": "Patch a backup policy", + "description": "Patch a backup policy for Netapp Account", + "operationId": "BackupPolicies_Update", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/BackupPolicyName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "body", + "description": "Backup policy object supplied in the body of the operation.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/backupPolicyPatch" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/backupPolicy" + } + }, + "202": { + "description": "Accepted -- Create or update request accepted; operation will complete asynchronously", + "schema": { + "$ref": "#/definitions/backupPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "BackupPolicies_Update": { + "$ref": "./examples/BackupPolicies_Update.json" + } + } + }, + "delete": { + "tags": [ + "Backup Policy" + ], + "summary": "Delete a backup policy", + "description": "Delete backup policy", + "operationId": "BackupPolicies_Delete", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/BackupPolicyName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted -- Create or update request accepted; operation will complete asynchronously" + }, + "204": { + "description": "NoContent -- Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Backups_Delete": { + "$ref": "./examples/BackupPolicies_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/vaults": { + "get": { + "tags": [ + "Vaults" + ], + "summary": "List vaults", + "description": "List vaults for a Netapp Account", + "operationId": "Vaults_List", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-pageable": { + "nextLinkName": null + }, + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/vaultList" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "Vaults_List": { + "$ref": "./examples/Vaults_List.json" + } + } + } + } + }, + "definitions": { + "OperationListResult": { + "description": "Result of the request to list Cloud Volume operations. It contains a list of operations and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "description": "List of Storage operations supported by the Storage resource provider." + } + } + }, + "Operation": { + "description": "Microsoft.NetApp REST API operation definition.", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}", + "type": "string" + }, + "display": { + "description": "Display metadata associated with the operation.", + "properties": { + "provider": { + "description": "Service provider: Microsoft NetApp.", + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed etc.", + "type": "string" + }, + "operation": { + "description": "Type of operation: get, read, delete, etc.", + "type": "string" + }, + "description": { + "description": "Operation description.", + "type": "string" + } + } + }, + "origin": { + "type": "string", + "description": "The origin of operations." + }, + "properties": { + "$ref": "#/definitions/OperationProperties", + "description": "Properties of operation, include metric specifications.", + "x-ms-client-flatten": true + } + } + }, + "OperationProperties": { + "description": "Properties of operation, include metric specifications.", + "properties": { + "serviceSpecification": { + "$ref": "#/definitions/ServiceSpecification", + "description": "One property of operation, include metric specifications." + } + } + }, + "ServiceSpecification": { + "description": "One property of operation, include metric specifications.", + "properties": { + "metricSpecifications": { + "description": "Metric specifications of operation.", + "type": "array", + "items": { + "$ref": "#/definitions/MetricSpecification" + } + } + } + }, + "MetricSpecification": { + "description": "Metric specification of operation.", + "properties": { + "name": { + "type": "string", + "description": "Name of metric specification." + }, + "displayName": { + "type": "string", + "description": "Display name of metric specification." + }, + "displayDescription": { + "type": "string", + "description": "Display description of metric specification." + }, + "unit": { + "type": "string", + "description": "Unit could be Bytes or Count." + }, + "dimensions": { + "description": "Dimensions of blobs, including blob type and access tier.", + "type": "array", + "items": { + "$ref": "#/definitions/Dimension" + } + }, + "aggregationType": { + "type": "string", + "description": "Aggregation type could be Average." + }, + "fillGapWithZero": { + "type": "boolean", + "description": "The property to decide fill gap with zero or not." + }, + "category": { + "type": "string", + "description": "The category this metric specification belong to, could be Capacity." + }, + "resourceIdDimensionNameOverride": { + "type": "string", + "description": "Account Resource Id." + } + } + }, + "Dimension": { + "description": "Dimension of blobs, possibly be blob type or access tier.", + "properties": { + "name": { + "type": "string", + "description": "Display name of dimension." + }, + "displayName": { + "type": "string", + "description": "Display name of dimension." + } + } + }, + "CheckAvailabilityResponse": { + "description": "Information regarding availability of a resource.", + "type": "object", + "properties": { + "isAvailable": { + "description": "true indicates name is valid and available. false indicates the name is invalid, unavailable, or both.", + "type": "boolean" + }, + "reason": { + "description": "Invalid indicates the name provided does not match Azure App Service naming requirements. AlreadyExists indicates that the name is already in use and is therefore unavailable.", + "enum": [ + "Invalid", + "AlreadyExists" + ], + "type": "string", + "x-ms-enum": { + "name": "InAvailabilityReasonType", + "modelAsString": true + } + }, + "message": { + "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 resource name is already in use, and direct them to select a different name.", + "type": "string" + } + } + }, + "regionInfo": { + "description": "Provides region specific information.", + "type": "object", + "properties": { + "storageToNetworkProximity": { + "title": "Storage to Network Proximity", + "description": "Provides storage to network proximity information in the region.", + "type": "string", + "enum": [ + "Default", + "T1", + "T2", + "T1AndT2" + ], + "x-ms-enum": { + "name": "RegionStorageToNetworkProximity", + "modelAsString": true, + "values": [ + { + "value": "Default", + "description": "Basic network connectivity." + }, + { + "value": "T1", + "description": "Standard T1 network connectivity." + }, + { + "value": "T2", + "description": "Standard T2 network connectivity." + }, + { + "value": "T1AndT2", + "description": "Standard T1 and T2 network connectivity." + } + ] + }, + "example": "T2" + } + } + }, + "ResourceNameAvailabilityRequest": { + "description": "Resource name availability request content.", + "required": [ + "name", + "type", + "resourceGroup" + ], + "type": "object", + "properties": { + "name": { + "description": "Resource name to verify.", + "type": "string" + }, + "type": { + "description": "Resource type used for verification.", + "enum": [ + "Microsoft.NetApp/netAppAccounts", + "Microsoft.NetApp/netAppAccounts/capacityPools", + "Microsoft.NetApp/netAppAccounts/capacityPools/volumes", + "Microsoft.NetApp/netAppAccounts/capacityPools/volumes/snapshots" + ], + "type": "string", + "x-ms-enum": { + "name": "CheckNameResourceTypes", + "modelAsString": true + } + }, + "resourceGroup": { + "description": "Resource group name.", + "type": "string" + } + } + }, + "QuotaAvailabilityRequest": { + "description": "Quota availability request content.", + "required": [ + "name", + "type", + "resourceGroup" + ], + "type": "object", + "properties": { + "name": { + "description": "Name of the resource to verify.", + "type": "string" + }, + "type": { + "description": "Resource type used for verification.", + "enum": [ + "Microsoft.NetApp/netAppAccounts", + "Microsoft.NetApp/netAppAccounts/capacityPools", + "Microsoft.NetApp/netAppAccounts/capacityPools/volumes", + "Microsoft.NetApp/netAppAccounts/capacityPools/volumes/snapshots" + ], + "type": "string", + "x-ms-enum": { + "name": "CheckQuotaNameResourceTypes", + "modelAsString": true + } + }, + "resourceGroup": { + "description": "Resource group name.", + "type": "string" + } + } + }, + "netAppAccountList": { + "description": "List of NetApp account resources", + "type": "object", + "properties": { + "value": { + "type": "array", + "description": "Multiple NetApp accounts", + "items": { + "$ref": "#/definitions/netAppAccount" + } + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + } + }, + "netAppAccount": { + "description": "NetApp account resource", + "type": "object", + "x-ms-azure-resource": true, + "required": [ + "location" + ], + "properties": { + "location": { + "type": "string", + "description": "Resource location", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource Id" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Resource name" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type" + }, + "tags": { + "description": "Resource tags", + "$ref": "#/definitions/resourceTags" + }, + "properties": { + "description": "NetApp Account properties", + "$ref": "#/definitions/accountProperties", + "x-ms-client-flatten": true + }, + "systemData": { + "readOnly": true, + "description": "The system meta data relating to this resource.", + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData" + } + } + }, + "netAppAccountPatch": { + "description": "NetApp account patch resource", + "type": "object", + "x-ms-azure-resource": true, + "properties": { + "location": { + "type": "string", + "description": "Resource location" + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource Id" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Resource name" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type" + }, + "tags": { + "description": "Resource tags", + "$ref": "#/definitions/resourceTags" + }, + "properties": { + "description": "NetApp Account properties", + "$ref": "#/definitions/accountProperties", + "x-ms-client-flatten": true + } + } + }, + "accountProperties": { + "description": "NetApp account properties", + "type": "object", + "properties": { + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "Azure lifecycle management" + }, + "activeDirectories": { + "description": "Active Directories", + "type": "array", + "items": { + "$ref": "#/definitions/activeDirectory" + } + }, + "encryption": { + "description": "Encryption settings", + "$ref": "#/definitions/accountEncryption" + } + } + }, + "activeDirectory": { + "description": "Active Directory", + "type": "object", + "properties": { + "activeDirectoryId": { + "type": "string", + "x-nullable": true, + "description": "Id of the Active Directory" + }, + "username": { + "type": "string", + "description": "Username of Active Directory domain administrator" + }, + "password": { + "type": "string", + "x-ms-secret": true, + "description": "Plain text password of Active Directory domain administrator, value is masked in the response" + }, + "domain": { + "type": "string", + "description": "Name of the Active Directory domain" + }, + "dns": { + "type": "string", + "description": "Comma separated list of DNS server IP addresses (IPv4 only) for the Active Directory domain", + "pattern": "^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)((, ?)(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?))*$", + "example": "101.102.103.104,101.102.103.105" + }, + "status": { + "type": "string", + "description": "Status of the Active Directory", + "readOnly": true, + "enum": [ + "Created", + "Updating", + "InUse", + "Deleted", + "Error" + ], + "x-ms-enum": { + "name": "ActiveDirectoryStatus", + "modelAsString": true, + "values": [ + { + "value": "Created", + "description": "Active Directory created but not in use" + }, + { + "value": "InUse", + "description": "Active Directory in use by SMB Volume" + }, + { + "value": "Deleted", + "description": "Active Directory Deleted" + }, + { + "value": "Error", + "description": "Error with the Active Directory" + }, + { + "value": "Updating", + "description": "Active Directory Updating" + } + ] + } + }, + "statusDetails": { + "type": "string", + "description": "Any details in regards to the Status of the Active Directory", + "readOnly": true + }, + "smbServerName": { + "type": "string", + "description": "NetBIOS name of the SMB server. This name will be registered as a computer account in the AD and used to mount volumes" + }, + "organizationalUnit": { + "type": "string", + "default": "CN=Computers", + "description": "The Organizational Unit (OU) within the Windows Active Directory" + }, + "site": { + "type": "string", + "description": "The Active Directory site the service will limit Domain Controller discovery to" + }, + "backupOperators": { + "description": "Users to be added to the Built-in Backup Operator active directory group. A list of unique usernames without domain specifier", + "type": "array", + "items": { + "type": "string", + "maxLength": 255, + "minLength": 1 + }, + "example": [ + "user1", + "user2" + ] + }, + "kdcIP": { + "type": "string", + "pattern": "^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)((, ?)(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?))*$", + "description": "kdc server IP addresses for the active directory machine. This optional parameter is used only while creating kerberos volume.", + "example": "101.102.103.104" + }, + "adName": { + "type": "string", + "maxLength": 64, + "minLength": 1, + "description": "Name of the active directory machine. This optional parameter is used only while creating kerberos volume", + "example": "ADServerName" + }, + "serverRootCACertificate": { + "type": "string", + "maxLength": 10240, + "minLength": 1, + "description": "When LDAP over SSL/TLS is enabled, the LDAP client is required to have base64 encoded Active Directory Certificate Service's self-signed root CA certificate, this optional parameter is used only for dual protocol with LDAP user-mapping volumes.", + "x-ms-secret": true, + "example": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURuVENDQW9XZ0F3SUJBZ0lRR3FXdnRxeHBvSTFJV3Z4VGdJbElWREFOQmdrcWhraUc5dzBCQVFzRkFEQlYKTVJNd0VRWUtDWkltaVpQeUxHUUJHUllEWTI5dE1SY3dGUVlLQ1pJbWlaUHlMR1FCR1JZSGFHRnlhV3R5WWpFbApNQ01HQTFVRUF4TWNhR0Z5YVd0eVlpMVhTVTR0TWtKUFZrRkZTMEkwTkVJdFEwRXRNakFlRncweU1EQTFNRFV3Ck56TTVORGxhRncweU1EQTFNRFl3TnpRNU5EaGFNRlV4RXpBUkJnb0praWFKay9Jc1pBRVpGZ05qYjIweEZ6QVYKQmdvSmtpYUprL0lzWkFFWkZnZG9ZWEpwYTNKaU1TVXdJd1lEVlFRREV4eG9ZWEpwYTNKaUxWZEpUaTB5UWs5VwpRVVZMUWpRMFFpMURRUzB5TUlJQklqQU5CZ2txaGtpRzl3MEJBUUVGQUFPQ0FROEFNSUlCQ2dLQ0FRRUFqMHByCnhaaXpNaDBqYnRwN1ZOc0JrRVJ2MVpZT0MzMEtqaGRWdEExRm1MeFM2cXlycmpMZUdXOXRSd2ZnUkR0eVBodTIKZVJTcVpTUjF6Z1hZR0s0Nys3Y3F0YnB2UElOektCb0dOWERIVTNxVWlleXJWSjFDVzRKNjJodUdrbUV1VVVkMApKMXBxNTVxbjk1SmRUbWh1dmZlTUxxeHB5c01nbGVnY281ZFhoN0hsQkhwaTNKMFN4ZnhVWmxKMVZiOFJZVEZhCkJiMGFlTVZaRzRKeVREaktiMlR1TmFXOG1aUE5vOFBMRDRocjdndFNZUEQvQ1dVVGV5QlpoZC9LTzNPczlWVEIKYmpLUGtWd0J2WEs2SlFMSGprNFBHS3VYZDhaWVFyajBtOWNIZDNmcWNYTXlQUnQ2TlJ4ak0yMTUxckFzSkVhNgpWZC9ta056akpXalBrT2VZUVFJREFRQUJvMmt3WnpBVEJna3JCZ0VFQVlJM0ZBSUVCaDRFQUVNQVFUQU9CZ05WCkhROEJBZjhFQkFNQ0FZWXdEd1lEVlIwVEFRSC9CQVV3QXdFQi96QWRCZ05WSFE0RUZnUVVDVEc2ODJSay9kMysKWGtHa0VMakRFMjI4ZjNnd0VBWUpLd1lCQkFHQ054VUJCQU1DQVFBd0RRWUpLb1pJaHZjTkFRRUxCUUFEZ2dFQgpBR1RjTTNnWExIU05wS014RHEvUFpZbWZCMmNlN3VhMmxxbXpzZSt4QmthSTE0WXdzZE5ZQjZBVTNFWDM3QWpZCjd3bm9xQzY1N0U2RVhTODVDckoyNXJNTHo4OEtONGI3cUg5RUowSS9XVHg5YTdUT0ZENENWQThuL0xwNGh1Ym4KNlBFalY5NFlZWXBXTG1hTkkvbGFReWsxSHVJbDFSTCttVDFnSWQ4ZWZXZ1UvNmlVVEw3eGMrdjkyNHBuTHhISwpOSnNTV3c0NFk5a0R5SU9KOXFjWUlBN1lhTkxPZTRjSysvQlRvdDh0dVVKT1hHLzdBRmtxR2EyQVA4MmFZOStKCnkwSmU2OG5nTHJ1dVU4VHpneVpqdkFHcTRrVEVOdWFoaFdHVC9KWkEzOXhSNUV4MmNMUUplcE5NdnlZbUZ3Z1UKME8zYlA0OWNBVFVCMXoyQ3Y5aTRQbVk9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K" + }, + "aesEncryption": { + "type": "boolean", + "description": "If enabled, AES encryption will be enabled for SMB communication." + }, + "ldapSigning": { + "type": "boolean", + "description": "Specifies whether or not the LDAP traffic needs to be signed." + }, + "securityOperators": { + "type": "array", + "description": "Domain Users in the Active directory to be given SeSecurityPrivilege privilege (Needed for SMB Continuously available shares for SQL). A list of unique usernames without domain specifier", + "items": { + "type": "string", + "maxLength": 255, + "minLength": 1 + }, + "example": [ + "user1", + "user2" + ] + }, + "ldapOverTLS": { + "type": "boolean", + "description": "Specifies whether or not the LDAP traffic needs to be secured via TLS." + }, + "allowLocalNfsUsersWithLdap": { + "type": "boolean", + "description": " If enabled, NFS client local users can also (in addition to LDAP users) access the NFS volumes." + } + } + }, + "accountEncryption": { + "type": "object", + "description": "Encryption settings", + "properties": { + "keySource": { + "type": "string", + "description": "Encryption Key Source. Possible values are: 'Microsoft.NetApp'." + } + } + }, + "capacityPoolList": { + "description": "List of capacity pool resources", + "type": "object", + "properties": { + "value": { + "description": "List of Capacity pools", + "type": "array", + "items": { + "$ref": "#/definitions/capacityPool" + } + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + } + }, + "capacityPool": { + "description": "Capacity pool resource", + "type": "object", + "x-ms-azure-resource": true, + "required": [ + "location", + "properties" + ], + "properties": { + "location": { + "type": "string", + "description": "Resource location", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource Id" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Resource name" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type" + }, + "tags": { + "description": "Resource tags", + "$ref": "#/definitions/resourceTags" + }, + "properties": { + "description": "Capacity pool properties", + "$ref": "#/definitions/poolProperties", + "x-ms-client-flatten": true + } + } + }, + "poolProperties": { + "description": "Pool properties", + "type": "object", + "required": [ + "size", + "serviceLevel" + ], + "properties": { + "poolId": { + "title": "poolId", + "type": "string", + "readOnly": true, + "description": "UUID v4 used to identify the Pool", + "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$", + "maxLength": 36, + "minLength": 36, + "example": "9760acf5-4638-11e7-9bdb-020073ca7778" + }, + "size": { + "title": "size", + "type": "integer", + "format": "int64", + "description": "Provisioned size of the pool (in bytes). Allowed values are in 4TiB chunks (value must be multiply of 4398046511104).", + "minimum": 4398046511104, + "maximum": 549755813888000 + }, + "serviceLevel": { + "title": "serviceLevel", + "type": "string", + "description": "The service level of the file system", + "enum": [ + "Standard", + "Premium", + "Ultra" + ], + "x-ms-enum": { + "name": "ServiceLevel", + "modelAsString": true, + "values": [ + { + "value": "Standard", + "description": "Standard service level" + }, + { + "value": "Premium", + "description": "Premium service level" + }, + { + "value": "Ultra", + "description": "Ultra service level" + } + ] + }, + "example": "Ultra", + "default": "Premium" + }, + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "Azure lifecycle management" + }, + "totalThroughputMibps": { + "type": "number", + "description": "Total throughput of pool in Mibps", + "example": 164.221, + "readOnly": true + }, + "utilizedThroughputMibps": { + "type": "number", + "description": "Utilized throughput of pool in Mibps", + "example": 164.221, + "readOnly": true + }, + "qosType": { + "title": "qosType", + "type": "string", + "description": "The qos type of the pool", + "enum": [ + "Auto", + "Manual" + ], + "x-ms-enum": { + "name": "qosType", + "modelAsString": true, + "values": [ + { + "value": "Auto", + "description": "qos type Auto" + }, + { + "value": "Manual", + "description": "qos type Manual" + } + ] + }, + "example": "Manual", + "default": "Auto" + } + } + }, + "capacityPoolPatch": { + "description": "Capacity pool patch resource", + "type": "object", + "x-ms-azure-resource": true, + "properties": { + "location": { + "type": "string", + "description": "Resource location" + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource Id" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Resource name" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type" + }, + "tags": { + "description": "Resource tags", + "$ref": "#/definitions/resourceTags" + }, + "properties": { + "description": "Capacity pool properties", + "$ref": "#/definitions/poolPatchProperties", + "x-ms-client-flatten": true + } + } + }, + "poolPatchProperties": { + "description": "Patchable pool properties", + "type": "object", + "properties": { + "size": { + "title": "size", + "type": "integer", + "format": "int64", + "description": "Provisioned size of the pool (in bytes). Allowed values are in 4TiB chunks (value must be multiply of 4398046511104).", + "minimum": 4398046511104, + "maximum": 549755813888000, + "default": 4398046511104 + }, + "qosType": { + "title": "qosType", + "type": "string", + "description": "The qos type of the pool", + "enum": [ + "Auto", + "Manual" + ], + "x-ms-enum": { + "name": "qosType", + "modelAsString": true, + "values": [ + { + "value": "Auto", + "description": "qos type Auto" + }, + { + "value": "Manual", + "description": "qos type Manual" + } + ] + }, + "example": "Manual", + "default": "Auto" + } + } + }, + "volumeList": { + "description": "List of volume resources", + "type": "object", + "properties": { + "value": { + "description": "List of volumes", + "type": "array", + "items": { + "$ref": "#/definitions/volume" + } + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + } + }, + "volume": { + "description": "Volume resource", + "type": "object", + "x-ms-azure-resource": true, + "required": [ + "location", + "properties" + ], + "properties": { + "location": { + "type": "string", + "description": "Resource location", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource Id" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Resource name" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type" + }, + "tags": { + "description": "Resource tags", + "$ref": "#/definitions/resourceTags" + }, + "properties": { + "description": "Volume properties", + "$ref": "#/definitions/volumeProperties", + "x-ms-client-flatten": true + } + } + }, + "resourceIdentity": { + "type": "object", + "description": "Identity for the resource.", + "properties": { + "principalId": { + "description": "Object id of the identity resource", + "type": "string", + "readOnly": true + }, + "tenantId": { + "description": "The tenant id of the resource", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Type of Identity. Supported values are: 'None', 'SystemAssigned'", + "type": "string" + } + } + }, + "resourceTags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Tags are a list of key-value pairs that describe the resource" + }, + "volumeProperties": { + "description": "Volume properties", + "type": "object", + "required": [ + "creationToken", + "usageThreshold", + "subnetId" + ], + "properties": { + "fileSystemId": { + "title": "FileSystem ID", + "type": "string", + "readOnly": true, + "description": "Unique FileSystem Identifier.", + "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$", + "maxLength": 36, + "minLength": 36, + "example": "9760acf5-4638-11e7-9bdb-020073ca7778" + }, + "creationToken": { + "title": "Creation Token or File Path", + "type": "string", + "description": "A unique file path for the volume. Used when creating mount targets", + "pattern": "^[a-zA-Z][a-zA-Z0-9\\-]{0,79}$", + "minLength": 1, + "maxLength": 80, + "example": "some-amazing-filepath" + }, + "serviceLevel": { + "title": "serviceLevel", + "type": "string", + "description": "The service level of the file system", + "enum": [ + "Standard", + "Premium", + "Ultra" + ], + "x-ms-enum": { + "name": "ServiceLevel", + "modelAsString": true, + "values": [ + { + "value": "Standard", + "description": "Standard service level" + }, + { + "value": "Premium", + "description": "Premium service level" + }, + { + "value": "Ultra", + "description": "Ultra service level" + } + ] + }, + "example": "Ultra", + "default": "Premium" + }, + "usageThreshold": { + "title": "usageThreshold", + "type": "integer", + "format": "int64", + "description": "Maximum storage quota allowed for a file system in bytes. This is a soft quota used for alerting only. Minimum size is 100 GiB. Upper limit is 100TiB. Specified in bytes.", + "minimum": 107374182400, + "maximum": 109951162777600, + "default": 107374182400, + "example": 107374182400 + }, + "exportPolicy": { + "title": "exportPolicy", + "description": "Set of export policy rules", + "properties": { + "rules": { + "title": "Export policy rule", + "description": "Export policy rule", + "type": "array", + "items": { + "$ref": "#/definitions/exportPolicyRule" + } + } + } + }, + "protocolTypes": { + "title": "protocolTypes", + "description": "Set of protocol types, default NFSv3, CIFS for SMB protocol", + "type": "array", + "items": { + "type": "string" + }, + "example": [ + "NFSv4.1" + ] + }, + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "Azure lifecycle management" + }, + "snapshotId": { + "title": "Snapshot ID", + "type": "string", + "x-nullable": true, + "description": "UUID v4 or resource identifier used to identify the Snapshot.", + "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}|(\\\\?([^\\/]*[\\/])*)([^\\/]+)$", + "maxLength": 36, + "minLength": 36, + "example": "9760acf5-4638-11e7-9bdb-020073ca3333" + }, + "backupId": { + "title": "Backup ID", + "type": "string", + "description": "UUID v4 or resource identifier used to identify the Backup.", + "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}|(\\\\?([^\\/]*[\\/])*)([^\\/]+)$", + "maxLength": 36, + "minLength": 36, + "example": "9760acf5-4638-11e7-9bdb-020073ca3333" + }, + "baremetalTenantId": { + "title": "Baremetal Tenant ID", + "type": "string", + "readOnly": true, + "description": "Unique Baremetal Tenant Identifier.", + "example": "9560acf5-4e3a-12e7-9bdb-02007cca7779" + }, + "subnetId": { + "type": "string", + "description": "The Azure Resource URI for a delegated subnet. Must have the delegation Microsoft.NetApp/volumes" + }, + "networkFeatures": { + "title": "Network features", + "description": "Basic network, or Standard features available to the volume.", + "type": "string", + "enum": [ + "Basic", + "Standard" + ], + "x-ms-enum": { + "name": "NetworkFeatures", + "modelAsString": true, + "values": [ + { + "value": "Basic", + "description": "Basic network feature." + }, + { + "value": "Standard", + "description": "Standard network feature." + } + ] + }, + "example": "Standard", + "default": "Basic" + }, + "networkSiblingSetId": { + "title": "Network Sibling Set ID", + "description": "Network Sibling Set ID for the the group of volumes sharing networking resources.", + "type": "string", + "readOnly": true, + "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$", + "maxLength": 36, + "minLength": 36, + "example": "9760acf5-4638-11e7-9bdb-020073ca3333" + }, + "storageToNetworkProximity": { + "title": "Storage to Network Proximity", + "description": "Provides storage to network proximity information for the volume.", + "type": "string", + "enum": [ + "Default", + "T1", + "T2" + ], + "readOnly": true, + "x-ms-enum": { + "name": "VolumeStorageToNetworkProximity", + "modelAsString": true, + "values": [ + { + "value": "Default", + "description": "Basic storage to network connectivity." + }, + { + "value": "T1", + "description": "Standard T1 storage to network connectivity." + }, + { + "value": "T2", + "description": "Standard T2 storage to network connectivity." + } + ] + }, + "example": 1 + }, + "mountTargets": { + "title": "mountTargets", + "type": "array", + "readOnly": true, + "description": "List of mount targets", + "items": { + "$ref": "#/definitions/mountTargetProperties" + } + }, + "volumeType": { + "type": "string", + "description": "What type of volume is this", + "example": "DataProtection" + }, + "dataProtection": { + "title": "DataProtection", + "description": "DataProtection type volumes include an object containing details of the replication", + "properties": { + "backup": { + "title": "Backup", + "description": "Backup Properties", + "type": "object", + "$ref": "#/definitions/volumeBackupProperties" + }, + "replication": { + "title": "Replication", + "description": "Replication properties", + "type": "object", + "$ref": "#/definitions/replicationObject" + }, + "snapshot": { + "title": "Snapshot", + "description": "Snapshot properties.", + "$ref": "#/definitions/volumeSnapshotProperties" + } + } + }, + "isRestoring": { + "type": "boolean", + "description": "Restoring" + }, + "snapshotDirectoryVisible": { + "type": "boolean", + "default": true, + "description": "If enabled (true) the volume will contain a read-only snapshot directory which provides access to each of the volume's snapshots (default to true)." + }, + "kerberosEnabled": { + "type": "boolean", + "description": "Describe if a volume is KerberosEnabled. To be use with swagger version 2020-05-01 or later", + "example": false, + "default": false + }, + "securityStyle": { + "type": "string", + "description": "The security style of volume, default unix, defaults to ntfs for dual protocol or CIFS protocol", + "default": "unix", + "enum": [ + "ntfs", + "unix" + ], + "x-ms-enum": { + "name": "SecurityStyle", + "modelAsString": true + } + }, + "smbEncryption": { + "type": "boolean", + "description": "Enables encryption for in-flight smb3 data. Only applicable for SMB/DualProtocol volume. To be used with swagger version 2020-08-01 or later", + "example": false, + "default": false + }, + "smbContinuouslyAvailable": { + "type": "boolean", + "description": "Enables continuously available share property for smb volume. Only applicable for SMB volume", + "example": false, + "default": false + }, + "throughputMibps": { + "title": "Maximum throughput in Mibps that can be achieved by this volume", + "type": "number", + "default": 0.0, + "example": 128.22, + "maximum": 4500, + "minimum": 0 + }, + "encryptionKeySource": { + "description": "Encryption Key Source. Possible values are: 'Microsoft.NetApp'", + "type": "string" + }, + "ldapEnabled": { + "type": "boolean", + "description": "Specifies whether LDAP is enabled or not for a given NFS volume.", + "example": false, + "default": false + } + } + }, + "exportPolicyRule": { + "description": "Volume Export Policy Rule", + "type": "object", + "properties": { + "ruleIndex": { + "type": "integer", + "description": "Order index", + "format": "int32" + }, + "unixReadOnly": { + "type": "boolean", + "description": "Read only access" + }, + "unixReadWrite": { + "type": "boolean", + "description": "Read and write access" + }, + "kerberos5ReadOnly": { + "type": "boolean", + "description": "Kerberos5 Read only access. To be use with swagger version 2020-05-01 or later", + "example": false, + "default": false + }, + "kerberos5ReadWrite": { + "type": "boolean", + "description": "Kerberos5 Read and write access. To be use with swagger version 2020-05-01 or later", + "example": true, + "default": false + }, + "kerberos5iReadOnly": { + "type": "boolean", + "description": "Kerberos5i Read only access. To be use with swagger version 2020-05-01 or later", + "example": false, + "default": false + }, + "kerberos5iReadWrite": { + "type": "boolean", + "description": "Kerberos5i Read and write access. To be use with swagger version 2020-05-01 or later", + "example": true, + "default": false + }, + "kerberos5pReadOnly": { + "type": "boolean", + "description": "Kerberos5p Read only access. To be use with swagger version 2020-05-01 or later", + "example": false, + "default": false + }, + "kerberos5pReadWrite": { + "type": "boolean", + "description": "Kerberos5p Read and write access. To be use with swagger version 2020-05-01 or later", + "example": true, + "default": false + }, + "cifs": { + "type": "boolean", + "description": "Allows CIFS protocol" + }, + "nfsv3": { + "type": "boolean", + "description": "Allows NFSv3 protocol. Enable only for NFSv3 type volumes" + }, + "nfsv41": { + "type": "boolean", + "description": "Allows NFSv4.1 protocol. Enable only for NFSv4.1 type volumes" + }, + "allowedClients": { + "type": "string", + "description": "Client ingress specification as comma separated string with IPv4 CIDRs, IPv4 host addresses and host names" + }, + "hasRootAccess": { + "type": "boolean", + "description": "Has root access to volume", + "example": true, + "default": true + } + } + }, + "volumeBackupProperties": { + "description": "Volume Backup Properties", + "type": "object", + "properties": { + "backupPolicyId": { + "type": "string", + "description": "Backup Policy Resource ID" + }, + "policyEnforced": { + "type": "boolean", + "description": "Policy Enforced" + }, + "vaultId": { + "type": "string", + "description": "Vault Resource ID" + }, + "backupEnabled": { + "type": "boolean", + "description": "Backup Enabled" + } + } + }, + "replicationObject": { + "description": "Replication properties", + "type": "object", + "required": [ + "replicationSchedule", + "remoteVolumeResourceId" + ], + "properties": { + "replicationId": { + "type": "string", + "description": "Id" + }, + "endpointType": { + "type": "string", + "description": "Indicates whether the local volume is the source or destination for the Volume Replication", + "enum": [ + "src", + "dst" + ], + "x-ms-enum": { + "name": "EndpointType", + "modelAsString": true + } + }, + "replicationSchedule": { + "type": "string", + "description": "Schedule", + "enum": [ + "_10minutely", + "hourly", + "daily" + ], + "x-ms-enum": { + "name": "ReplicationSchedule", + "modelAsString": true + } + }, + "remoteVolumeResourceId": { + "type": "string", + "description": "The resource ID of the remote volume." + }, + "remoteVolumeRegion": { + "type": "string", + "description": "The remote region for the other end of the Volume Replication." + } + } + }, + "volumeSnapshotProperties": { + "description": "Volume Snapshot Properties", + "type": "object", + "properties": { + "snapshotPolicyId": { + "type": "string", + "description": "Snapshot Policy ResourceId" + } + } + }, + "replicationStatus": { + "description": "Replication status", + "type": "object", + "properties": { + "healthy": { + "type": "boolean", + "description": "Replication health check" + }, + "relationshipStatus": { + "type": "string", + "description": "Status of the mirror relationship", + "enum": [ + "Idle", + "Transferring" + ], + "x-ms-enum": { + "name": "RelationshipStatus", + "modelAsString": true + } + }, + "mirrorState": { + "type": "string", + "description": "The status of the replication", + "enum": [ + "Uninitialized", + "Mirrored", + "Broken" + ], + "x-ms-enum": { + "name": "MirrorState", + "modelAsString": true + } + }, + "totalProgress": { + "type": "string", + "description": "The progress of the replication" + }, + "errorMessage": { + "type": "string", + "description": "Displays error message if the replication is in an error state" + } + } + }, + "volumePatch": { + "description": "Volume patch resource", + "type": "object", + "x-ms-azure-resource": true, + "properties": { + "location": { + "type": "string", + "description": "Resource location" + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource Id" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Resource name" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type" + }, + "tags": { + "description": "Resource tags", + "$ref": "#/definitions/resourceTags" + }, + "properties": { + "description": "Patchable volume properties", + "$ref": "#/definitions/volumePatchProperties", + "x-ms-client-flatten": true + } + } + }, + "volumePatchProperties": { + "description": "Patchable volume properties", + "type": "object", + "properties": { + "serviceLevel": { + "title": "serviceLevel", + "type": "string", + "description": "The service level of the file system", + "enum": [ + "Standard", + "Premium", + "Ultra" + ], + "x-ms-enum": { + "name": "ServiceLevel", + "modelAsString": true, + "values": [ + { + "value": "Standard", + "description": "Standard service level" + }, + { + "value": "Premium", + "description": "Premium service level" + }, + { + "value": "Ultra", + "description": "Ultra service level" + } + ] + }, + "example": "Ultra", + "default": "Premium" + }, + "usageThreshold": { + "title": "usageThreshold", + "type": "integer", + "format": "int64", + "description": "Maximum storage quota allowed for a file system in bytes. This is a soft quota used for alerting only. Minimum size is 100 GiB. Upper limit is 100TiB. Specified in bytes.", + "minimum": 107374182400, + "maximum": 109951162777600, + "default": 107374182400, + "example": 107374182400 + }, + "exportPolicy": { + "title": "exportPolicy", + "description": "Set of export policy rules", + "properties": { + "rules": { + "title": "Export policy rule", + "description": "Export policy rule", + "type": "array", + "items": { + "$ref": "#/definitions/exportPolicyRule" + } + } + } + }, + "throughputMibps": { + "title": "Maximum throughput in Mibps that can be achieved by this volume", + "type": "number", + "example": 128.22, + "maximum": 4500, + "minimum": 1 + }, + "dataProtection": { + "title": "DataProtection", + "description": "DataProtection type volumes include an object containing details of the replication", + "properties": { + "backup": { + "title": "Backup", + "description": "Backup Properties", + "type": "object", + "$ref": "#/definitions/volumeBackupProperties" + }, + "snapshot": { + "title": "Snapshot", + "description": "Snapshot properties.", + "$ref": "#/definitions/volumeSnapshotProperties" + } + } + } + } + }, + "mountTarget": { + "description": "Mount Target", + "type": "object", + "required": [ + "location", + "properties" + ], + "properties": { + "location": { + "type": "string", + "description": "Resource location" + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource Id" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Resource name" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type" + }, + "tags": { + "description": "Resource tags", + "$ref": "#/definitions/resourceTags", + "x-ms-client-flatten": true + }, + "properties": { + "description": "Mount Target Properties", + "$ref": "#/definitions/mountTargetProperties", + "x-ms-client-flatten": true + } + } + }, + "mountTargetProperties": { + "description": "Mount target properties", + "type": "object", + "required": [ + "fileSystemId" + ], + "properties": { + "mountTargetId": { + "title": "mountTargetId", + "type": "string", + "readOnly": true, + "description": "UUID v4 used to identify the MountTarget", + "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$", + "maxLength": 36, + "minLength": 36, + "example": "9760acf5-4638-11e7-9bdb-020073ca3333" + }, + "fileSystemId": { + "title": "fileSystemId", + "type": "string", + "description": "UUID v4 used to identify the MountTarget", + "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$", + "maxLength": 36, + "minLength": 36, + "example": "9760acf5-4638-11e7-9bdb-020073ca3333" + }, + "ipAddress": { + "title": "ipAddress", + "description": "The mount target's IPv4 address", + "type": "string", + "readOnly": true, + "example": "1.2.3.4" + }, + "smbServerFqdn": { + "title": "smbServerFQDN", + "description": "The SMB server's Fully Qualified Domain Name, FQDN", + "type": "string", + "example": "fullyqualified.domainname.com" + } + } + }, + "snapshotsList": { + "description": "List of Snapshots", + "type": "object", + "properties": { + "value": { + "description": "A list of Snapshots", + "type": "array", + "items": { + "$ref": "#/definitions/snapshot" + } + } + } + }, + "snapshot": { + "description": "Snapshot of a Volume", + "type": "object", + "x-ms-azure-resource": true, + "required": [ + "location" + ], + "properties": { + "location": { + "type": "string", + "description": "Resource location", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource Id" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Resource name" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type" + }, + "properties": { + "description": "Snapshot Properties", + "$ref": "#/definitions/snapshotProperties", + "x-ms-client-flatten": true + } + } + }, + "snapshotPatch": { + "description": "Snapshot patch", + "type": "object", + "x-ms-azure-resource": true, + "properties": {} + }, + "snapshotProperties": { + "description": "Snapshot properties", + "type": "object", + "properties": { + "snapshotId": { + "title": "snapshotId", + "type": "string", + "readOnly": true, + "description": "UUID v4 used to identify the Snapshot", + "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$", + "maxLength": 36, + "minLength": 36, + "example": "9760acf5-4638-11e7-9bdb-020073ca3333" + }, + "created": { + "title": "name", + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "The creation date of the snapshot", + "example": "2017-08-15 13:23:33" + }, + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "Azure lifecycle management" + } + } + }, + "snapshotPolicyProperties": { + "description": "Snapshot policy properties", + "type": "object", + "properties": { + "hourlySchedule": { + "title": "hourlySchedule", + "description": "Schedule for hourly snapshots", + "type": "object", + "$ref": "#/definitions/hourlySchedule" + }, + "dailySchedule": { + "title": "dailySchedule", + "description": "Schedule for daily snapshots", + "type": "object", + "$ref": "#/definitions/dailySchedule" + }, + "weeklySchedule": { + "title": "weeklySchedule", + "description": "Schedule for weekly snapshots", + "type": "object", + "$ref": "#/definitions/weeklySchedule" + }, + "monthlySchedule": { + "title": "monthlySchedule", + "description": "Schedule for monthly snapshots", + "type": "object", + "$ref": "#/definitions/monthlySchedule" + }, + "enabled": { + "type": "boolean", + "description": "The property to decide policy is enabled or not" + }, + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "Azure lifecycle management" + } + } + }, + "snapshotPolicy": { + "description": "Snapshot policy information", + "type": "object", + "x-ms-azure-resource": true, + "required": [ + "location", + "properties" + ], + "properties": { + "location": { + "type": "string", + "description": "Resource location", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource Id" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Resource name" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type" + }, + "tags": { + "description": "Resource tags", + "$ref": "#/definitions/resourceTags" + }, + "properties": { + "description": "Snapshot policy Properties", + "$ref": "#/definitions/snapshotPolicyProperties", + "x-ms-client-flatten": true + } + } + }, + "snapshotPoliciesList": { + "description": "List of Snapshot Policies", + "type": "object", + "properties": { + "value": { + "description": "A list of snapshot policies", + "type": "array", + "items": { + "$ref": "#/definitions/snapshotPolicy" + } + } + } + }, + "snapshotPolicyDetails": { + "description": "Snapshot policy properties", + "type": "object", + "properties": { + "location": { + "type": "string", + "description": "Resource location", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource Id" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Resource name" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type" + }, + "tags": { + "description": "Resource tags", + "$ref": "#/definitions/resourceTags" + }, + "properties": { + "description": "Snapshot policy Properties", + "$ref": "#/definitions/snapshotPolicyProperties", + "x-ms-client-flatten": true + } + } + }, + "snapshotPolicyPatch": { + "description": "Snapshot policy Details for create and update", + "type": "object", + "properties": { + "location": { + "type": "string", + "description": "Resource location" + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource Id" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Resource name" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type" + }, + "tags": { + "description": "Resource tags", + "$ref": "#/definitions/resourceTags" + }, + "properties": { + "description": "Snapshot Policy properties", + "$ref": "#/definitions/snapshotPolicyProperties", + "x-ms-client-flatten": true + } + } + }, + "snapshotPolicyVolumeList": { + "description": "Volumes associated with snapshot policy", + "type": "object", + "properties": { + "value": { + "description": "List of volumes", + "type": "array", + "items": { + "type": "object", + "readOnly": true, + "description": "Associated volume resource Id" + } + } + } + }, + "hourlySchedule": { + "description": "Hourly Schedule properties", + "type": "object", + "properties": { + "snapshotsToKeep": { + "type": "integer", + "description": "Hourly snapshot count to keep", + "format": "int32" + }, + "minute": { + "type": "integer", + "description": "Indicates which minute snapshot should be taken", + "example": 30, + "format": "int32" + }, + "usedBytes": { + "type": "integer", + "description": "Resource size in bytes, current storage usage for the volume in bytes", + "format": "int64" + } + } + }, + "dailySchedule": { + "description": "Daily Schedule properties", + "type": "object", + "properties": { + "snapshotsToKeep": { + "type": "integer", + "description": "Daily snapshot count to keep", + "format": "int32" + }, + "hour": { + "type": "integer", + "description": "Indicates which hour in UTC timezone a snapshot should be taken", + "example": 11, + "format": "int32" + }, + "minute": { + "type": "integer", + "description": "Indicates which minute snapshot should be taken", + "example": 30, + "format": "int32" + }, + "usedBytes": { + "type": "integer", + "description": "Resource size in bytes, current storage usage for the volume in bytes", + "format": "int64" + } + } + }, + "weeklySchedule": { + "description": "Weekly Schedule properties, make a snapshot every week at a specific day or days", + "type": "object", + "properties": { + "snapshotsToKeep": { + "type": "integer", + "description": "Weekly snapshot count to keep", + "format": "int32" + }, + "day": { + "type": "string", + "description": "Indicates which weekdays snapshot should be taken, accepts a comma separated list of week day names in english", + "example": "Sunday,Monday" + }, + "hour": { + "type": "integer", + "description": "Indicates which hour in UTC timezone a snapshot should be taken", + "example": 11, + "format": "int32" + }, + "minute": { + "type": "integer", + "description": "Indicates which minute snapshot should be taken", + "example": 30, + "format": "int32" + }, + "usedBytes": { + "type": "integer", + "description": "Resource size in bytes, current storage usage for the volume in bytes", + "format": "int64" + } + } + }, + "monthlySchedule": { + "description": "Monthly Schedule properties", + "type": "object", + "properties": { + "snapshotsToKeep": { + "type": "integer", + "description": "Monthly snapshot count to keep", + "format": "int32" + }, + "daysOfMonth": { + "type": "string", + "description": "Indicates which days of the month snapshot should be taken. A comma delimited string.", + "example": "1,11,21" + }, + "hour": { + "type": "integer", + "description": "Indicates which hour in UTC timezone a snapshot should be taken", + "example": 11, + "format": "int32" + }, + "minute": { + "type": "integer", + "description": "Indicates which minute snapshot should be taken", + "example": 30, + "format": "int32" + }, + "usedBytes": { + "type": "integer", + "description": "Resource size in bytes, current storage usage for the volume in bytes", + "format": "int64" + } + } + }, + "volumeRevert": { + "description": "revert a volume to the snapshot", + "type": "object", + "properties": { + "snapshotId": { + "type": "string", + "description": "Resource id of the snapshot" + } + } + }, + "authorizeRequest": { + "description": "Authorize request", + "type": "object", + "properties": { + "remoteVolumeResourceId": { + "type": "string", + "description": "Resource id of the remote volume" + } + } + }, + "breakReplicationRequest": { + "description": "Break replication request", + "type": "object", + "properties": { + "forceBreakReplication": { + "type": "boolean", + "description": "If replication is in status transferring and you want to force break the replication, set to true" + } + } + }, + "poolChangeRequest": { + "description": "Pool change request", + "type": "object", + "required": [ + "newPoolResourceId" + ], + "properties": { + "newPoolResourceId": { + "type": "string", + "description": "Resource id of the pool to move volume to" + } + } + }, + "backupsList": { + "description": "List of Backups", + "type": "object", + "properties": { + "value": { + "description": "A list of Backups", + "type": "array", + "items": { + "$ref": "#/definitions/backup" + } + } + } + }, + "backup": { + "description": "Backup of a Volume", + "type": "object", + "x-ms-azure-resource": true, + "required": [ + "location", + "properties" + ], + "properties": { + "location": { + "type": "string", + "description": "Resource location", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource Id" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Resource name" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type" + }, + "properties": { + "description": "Backup Properties", + "$ref": "#/definitions/backupProperties", + "x-ms-client-flatten": true + } + } + }, + "backupPatch": { + "description": "Backup patch", + "type": "object", + "x-ms-azure-resource": true, + "properties": { + "tags": { + "description": "Resource tags", + "$ref": "#/definitions/resourceTags" + }, + "properties": { + "description": "Backup Properties", + "$ref": "#/definitions/backupProperties", + "x-ms-client-flatten": true + } + } + }, + "backupProperties": { + "description": "Backup properties", + "type": "object", + "properties": { + "backupId": { + "title": "backupId", + "type": "string", + "readOnly": true, + "description": "UUID v4 used to identify the Backup", + "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$", + "maxLength": 36, + "minLength": 36, + "example": "9760acf5-4638-11e7-9bdb-020073ca3333" + }, + "creationDate": { + "title": "name", + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "The creation date of the backup", + "example": "2017-08-15 13:23:33" + }, + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "Azure lifecycle management" + }, + "size": { + "type": "integer", + "readOnly": true, + "description": "Size of backup", + "format": "int64" + }, + "label": { + "type": "string", + "description": "Label for backup" + }, + "backupType": { + "title": "backupType", + "type": "string", + "readOnly": true, + "description": "Type of backup Manual or Scheduled", + "enum": [ + "Manual", + "Scheduled" + ], + "x-ms-enum": { + "name": "backupType", + "modelAsString": true, + "values": [ + { + "value": "Manual", + "description": "Manual backup" + }, + { + "value": "Scheduled", + "description": "Scheduled backup" + } + ] + }, + "example": "Manual" + }, + "failureReason": { + "type": "string", + "readOnly": true, + "description": "Failure reason" + }, + "volumeName": { + "type": "string", + "readOnly": true, + "description": "Volume name" + }, + "useExistingSnapshot": { + "type": "boolean", + "description": "Manual backup an already existing snapshot. This will always be false for scheduled backups and true/false for manual backups", + "example": true, + "default": false + } + } + }, + "backupPolicyProperties": { + "description": "Backup policy properties", + "type": "object", + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "Name of backup policy" + }, + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "Azure lifecycle management" + }, + "dailyBackupsToKeep": { + "type": "integer", + "description": "Daily backups count to keep", + "format": "int32" + }, + "weeklyBackupsToKeep": { + "type": "integer", + "description": "Weekly backups count to keep", + "format": "int32" + }, + "monthlyBackupsToKeep": { + "type": "integer", + "description": "Monthly backups count to keep", + "format": "int32" + }, + "yearlyBackupsToKeep": { + "type": "integer", + "description": "Yearly backups count to keep", + "format": "int32" + }, + "volumesAssigned": { + "type": "integer", + "description": "Volumes using current backup policy", + "format": "int32" + }, + "enabled": { + "type": "boolean", + "description": "The property to decide policy is enabled or not" + }, + "volumeBackups": { + "description": "A list of volumes assigned to this policy", + "type": "array", + "items": { + "$ref": "#/definitions/volumeBackups" + } + } + } + }, + "backupPolicy": { + "description": "Backup policy information", + "type": "object", + "x-ms-azure-resource": true, + "required": [ + "location", + "properties" + ], + "properties": { + "location": { + "type": "string", + "description": "Resource location", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource Id" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Resource name" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type" + }, + "tags": { + "description": "Resource tags", + "$ref": "#/definitions/resourceTags" + }, + "properties": { + "description": "Backup policy Properties", + "$ref": "#/definitions/backupPolicyProperties", + "x-ms-client-flatten": true + } + } + }, + "backupPoliciesList": { + "description": "List of Backup Policies", + "type": "object", + "properties": { + "value": { + "description": "A list of backup policies", + "type": "array", + "items": { + "$ref": "#/definitions/backupPolicy" + } + } + } + }, + "backupPolicyDetails": { + "description": "Backup policy properties", + "x-ms-azure-resource": true, + "type": "object", + "properties": { + "location": { + "type": "string", + "description": "Resource location", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource Id" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Resource name" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type" + }, + "tags": { + "description": "Resource tags", + "$ref": "#/definitions/resourceTags" + }, + "properties": { + "description": "Backup policy Properties", + "$ref": "#/definitions/backupPolicyProperties", + "x-ms-client-flatten": true + } + } + }, + "backupPolicyPatch": { + "description": "Backup policy Details for create and update", + "type": "object", + "x-ms-azure-resource": true, + "properties": { + "location": { + "type": "string", + "description": "Resource location", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource Id" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Resource name" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type" + }, + "tags": { + "description": "Resource tags", + "$ref": "#/definitions/resourceTags" + }, + "properties": { + "description": "Backup policy Properties", + "$ref": "#/definitions/backupPolicyProperties", + "x-ms-client-flatten": true + } + } + }, + "volumeBackups": { + "description": "Volume details using the backup policy", + "type": "object", + "readOnly": true, + "properties": { + "volumeName": { + "type": "string", + "description": "Volume name" + }, + "backupsCount": { + "type": "integer", + "description": "Total count of backups for volume", + "format": "int32" + }, + "policyEnabled": { + "type": "boolean", + "description": "Policy enabled" + } + } + }, + "vaultList": { + "description": "List of Vaults", + "type": "object", + "properties": { + "value": { + "description": "A list of vaults", + "type": "array", + "items": { + "$ref": "#/definitions/vault" + } + } + } + }, + "vault": { + "description": "Vault information", + "type": "object", + "x-ms-azure-resource": true, + "required": [ + "location", + "properties" + ], + "properties": { + "location": { + "type": "string", + "description": "Resource location", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource Id" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Resource name" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type" + }, + "properties": { + "description": "Vault Properties", + "$ref": "#/definitions/vaultProperties", + "x-ms-client-flatten": true + } + } + }, + "vaultProperties": { + "description": "Vault properties", + "type": "object", + "properties": { + "vaultName": { + "type": "string", + "readOnly": false, + "description": "Vault Name" + } + } + }, + "backupStatus": { + "description": "Backup status", + "type": "object", + "properties": { + "healthy": { + "type": "boolean", + "readOnly": true, + "description": "Backup health status" + }, + "relationshipStatus": { + "type": "string", + "readOnly": true, + "description": "Status of the backup mirror relationship", + "enum": [ + "Idle", + "Transferring" + ], + "x-ms-enum": { + "name": "RelationshipStatus", + "modelAsString": true + } + }, + "mirrorState": { + "type": "string", + "readOnly": true, + "description": "The status of the backup", + "enum": [ + "Uninitialized", + "Mirrored", + "Broken" + ], + "x-ms-enum": { + "name": "MirrorState", + "modelAsString": true + } + }, + "unhealthyReason": { + "type": "string", + "readOnly": true, + "description": "Reason for the unhealthy backup relationship" + }, + "errorMessage": { + "type": "string", + "readOnly": true, + "description": "Displays error message if the backup is in an error state" + } + } + }, + "cloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/cloudErrorBody", + "description": "Cloud error body." + } + }, + "description": "An error response from the service." + }, + "cloudErrorBody": { + "x-ms-external": true, + "properties": { + "code": { + "type": "string", + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "type": "string", + "description": "A message describing the error, intended to be suitable for display in a user interface." + } + }, + "description": "An error response from the service." + } + }, + "parameters": { + "SubscriptionId": { + "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." + }, + "location": { + "name": "location", + "description": "The location", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ResourceGroup": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90, + "x-ms-parameter-location": "method" + }, + "AccountName": { + "name": "accountName", + "type": "string", + "in": "path", + "required": true, + "description": "The name of the NetApp account", + "x-ms-parameter-location": "method" + }, + "PoolName": { + "name": "poolName", + "type": "string", + "in": "path", + "required": true, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9\\-_]{0,63}$", + "minLength": 1, + "maxLength": 64, + "description": "The name of the capacity pool", + "x-ms-parameter-location": "method" + }, + "VolumeName": { + "name": "volumeName", + "type": "string", + "in": "path", + "required": true, + "pattern": "^[a-zA-Z][a-zA-Z0-9\\-_]{0,63}$", + "minLength": 1, + "maxLength": 64, + "description": "The name of the volume", + "x-ms-parameter-location": "method" + }, + "MountTargetName": { + "name": "mountTargetName", + "type": "string", + "in": "path", + "required": true, + "description": "The name of the mount target", + "x-ms-parameter-location": "method" + }, + "SnapshotName": { + "name": "snapshotName", + "type": "string", + "in": "path", + "required": true, + "description": "The name of the mount target", + "x-ms-parameter-location": "method" + }, + "SnapshotPolicyName": { + "name": "snapshotPolicyName", + "type": "string", + "in": "path", + "required": true, + "description": "The name of the snapshot policy target", + "x-ms-parameter-location": "method" + }, + "BackupName": { + "name": "backupName", + "type": "string", + "in": "path", + "required": true, + "description": "The name of the backup", + "x-ms-parameter-location": "method" + }, + "BackupPolicyName": { + "name": "backupPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "Backup policy Name which uniquely identify backup policy.", + "x-ms-parameter-location": "method" + }, + "ApiVersionParameter": { + "name": "api-version", + "description": "Version of the API to be used with the client request.", + "in": "query", + "type": "string", + "required": true, + "default": "2021-04-01-preview" + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-05-01/examples/Backups_Account_Get.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-05-01/examples/Backups_Account_Get.json index 4a0803cf8b04..7786ae787c74 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-05-01/examples/Backups_Account_Get.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-05-01/examples/Backups_Account_Get.json @@ -18,7 +18,7 @@ "provisioningState": "Succeeded", "size": 10011, "label": "myLabel", - "backupType": "adhoc" + "backupType": "Manual" } } } diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-05-01/examples/Backups_Account_List.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-05-01/examples/Backups_Account_List.json index d883871687f9..e4fcd0b0b558 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-05-01/examples/Backups_Account_List.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-05-01/examples/Backups_Account_List.json @@ -19,7 +19,7 @@ "provisioningState": "Succeeded", "size": 10011, "label": "myLabel", - "backupType": "adhoc" + "backupType": "Manual" } } ] diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-05-01/examples/Backups_Create.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-05-01/examples/Backups_Create.json index 99f51a262361..c76ac2ee0c15 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-05-01/examples/Backups_Create.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-05-01/examples/Backups_Create.json @@ -26,7 +26,7 @@ "provisioningState": "Succeeded", "size": 10011, "label": "myLabel", - "backupType": "adhoc" + "backupType": "Manual" } } }, @@ -41,7 +41,7 @@ "provisioningState": "Succeeded", "size": 10011, "label": "myLabel", - "backupType": "adhoc" + "backupType": "Manual" } } }, diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-05-01/examples/Backups_Get.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-05-01/examples/Backups_Get.json index f7c7c65ba47a..70014c60d635 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-05-01/examples/Backups_Get.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-05-01/examples/Backups_Get.json @@ -20,7 +20,7 @@ "provisioningState": "Succeeded", "size": 10011, "label": "myLabel", - "backupType": "adhoc" + "backupType": "Manual" } } } diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-05-01/examples/Backups_List.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-05-01/examples/Backups_List.json index 4f58b64fdc03..5891378761ce 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-05-01/examples/Backups_List.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-05-01/examples/Backups_List.json @@ -21,7 +21,7 @@ "provisioningState": "Succeeded", "size": 10011, "label": "myLabel", - "backupType": "adhoc" + "backupType": "Manual" } } ] diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-05-01/examples/Backups_Update.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-05-01/examples/Backups_Update.json index f0a4f273d521..2f3769abd252 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-05-01/examples/Backups_Update.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-05-01/examples/Backups_Update.json @@ -21,7 +21,7 @@ "provisioningState": "Succeeded", "size": 10011, "label": "myLabel", - "backupType": "adhoc" + "backupType": "Manual" } } } diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-05-01/netapp.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-05-01/netapp.json index 80103c34fa0c..e542f56f4982 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-05-01/netapp.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-05-01/netapp.json @@ -4296,9 +4296,29 @@ "description": "Label for backup" }, "backupType": { + "title": "backupType", "type": "string", "readOnly": true, - "description": "Type of backup adhoc or scheduled" + "description": "Type of backup Manual or Scheduled", + "enum": [ + "Manual", + "Scheduled" + ], + "x-ms-enum": { + "name": "backupType", + "modelAsString": true, + "values": [ + { + "value": "Manual", + "description": "Manual backup" + }, + { + "value": "Scheduled", + "description": "Scheduled backup" + } + ] + }, + "example": "Manual" } } }, diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-06-01/examples/Backups_Account_Get.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-06-01/examples/Backups_Account_Get.json index a1c6de3d81fd..9fa09089e16b 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-06-01/examples/Backups_Account_Get.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-06-01/examples/Backups_Account_Get.json @@ -18,7 +18,7 @@ "provisioningState": "Succeeded", "size": 10011, "label": "myLabel", - "backupType": "adhoc" + "backupType": "Manual" } } } diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-06-01/examples/Backups_Account_List.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-06-01/examples/Backups_Account_List.json index ccec522d23f3..0321411e3a59 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-06-01/examples/Backups_Account_List.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-06-01/examples/Backups_Account_List.json @@ -19,7 +19,7 @@ "provisioningState": "Succeeded", "size": 10011, "label": "myLabel", - "backupType": "adhoc" + "backupType": "Manual" } } ] diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-06-01/examples/Backups_Create.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-06-01/examples/Backups_Create.json index 5f2fbb5fe05b..b90df280ed94 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-06-01/examples/Backups_Create.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-06-01/examples/Backups_Create.json @@ -26,7 +26,7 @@ "provisioningState": "Succeeded", "size": 10011, "label": "myLabel", - "backupType": "adhoc" + "backupType": "Manual" } } }, @@ -41,7 +41,7 @@ "provisioningState": "Succeeded", "size": 10011, "label": "myLabel", - "backupType": "adhoc" + "backupType": "Manual" } } }, diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-06-01/examples/Backups_Get.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-06-01/examples/Backups_Get.json index 08946493d505..900d8f4d432f 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-06-01/examples/Backups_Get.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-06-01/examples/Backups_Get.json @@ -20,7 +20,7 @@ "provisioningState": "Succeeded", "size": 10011, "label": "myLabel", - "backupType": "adhoc" + "backupType": "Manual" } } } diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-06-01/examples/Backups_List.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-06-01/examples/Backups_List.json index b3a2651411a9..4f9a8f470610 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-06-01/examples/Backups_List.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-06-01/examples/Backups_List.json @@ -21,7 +21,7 @@ "provisioningState": "Succeeded", "size": 10011, "label": "myLabel", - "backupType": "adhoc" + "backupType": "Manual" } } ] diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-06-01/examples/Backups_Update.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-06-01/examples/Backups_Update.json index adc5a8cfccf5..49b1f3d48dbe 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-06-01/examples/Backups_Update.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-06-01/examples/Backups_Update.json @@ -21,7 +21,7 @@ "provisioningState": "Succeeded", "size": 10011, "label": "myLabel", - "backupType": "adhoc" + "backupType": "Manual" } } } diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-06-01/netapp.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-06-01/netapp.json index 500cfba450b4..3af474a24e93 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-06-01/netapp.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-06-01/netapp.json @@ -4416,9 +4416,29 @@ "description": "Label for backup" }, "backupType": { + "title": "backupType", "type": "string", "readOnly": true, - "description": "Type of backup adhoc or scheduled" + "description": "Type of backup Manual or Scheduled", + "enum": [ + "Manual", + "Scheduled" + ], + "x-ms-enum": { + "name": "backupType", + "modelAsString": true, + "values": [ + { + "value": "Manual", + "description": "Manual backup" + }, + { + "value": "Scheduled", + "description": "Scheduled backup" + } + ] + }, + "example": "Manual" } } }, diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-07-01/examples/Backups_Account_Get.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-07-01/examples/Backups_Account_Get.json index bd4a0ae81d1a..4241dd1e4271 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-07-01/examples/Backups_Account_Get.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-07-01/examples/Backups_Account_Get.json @@ -18,7 +18,7 @@ "provisioningState": "Succeeded", "size": 10011, "label": "myLabel", - "backupType": "adhoc" + "backupType": "Manual" } } } diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-07-01/examples/Backups_Account_List.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-07-01/examples/Backups_Account_List.json index 350fdb5cbe21..134ebb7ea379 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-07-01/examples/Backups_Account_List.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-07-01/examples/Backups_Account_List.json @@ -19,7 +19,7 @@ "provisioningState": "Succeeded", "size": 10011, "label": "myLabel", - "backupType": "adhoc" + "backupType": "Manual" } } ] diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-07-01/examples/Backups_Create.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-07-01/examples/Backups_Create.json index 79ebda912e3d..ab78fbd93de9 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-07-01/examples/Backups_Create.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-07-01/examples/Backups_Create.json @@ -26,7 +26,7 @@ "provisioningState": "Succeeded", "size": 10011, "label": "myLabel", - "backupType": "adhoc" + "backupType": "Manual" } } }, @@ -41,7 +41,7 @@ "provisioningState": "Succeeded", "size": 10011, "label": "myLabel", - "backupType": "adhoc" + "backupType": "Manual" } } }, diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-07-01/examples/Backups_Get.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-07-01/examples/Backups_Get.json index 73d6e3b5793c..c3126c1f2d43 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-07-01/examples/Backups_Get.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-07-01/examples/Backups_Get.json @@ -20,7 +20,7 @@ "provisioningState": "Succeeded", "size": 10011, "label": "myLabel", - "backupType": "adhoc" + "backupType": "Manual" } } } diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-07-01/examples/Backups_List.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-07-01/examples/Backups_List.json index 715084e053f5..caaea8b0a3f1 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-07-01/examples/Backups_List.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-07-01/examples/Backups_List.json @@ -21,7 +21,7 @@ "provisioningState": "Succeeded", "size": 10011, "label": "myLabel", - "backupType": "adhoc" + "backupType": "Manual" } } ] diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-07-01/examples/Backups_Update.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-07-01/examples/Backups_Update.json index d8eb8c1701a3..eabb4aa16139 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-07-01/examples/Backups_Update.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-07-01/examples/Backups_Update.json @@ -21,7 +21,7 @@ "provisioningState": "Succeeded", "size": 10011, "label": "myLabel", - "backupType": "adhoc" + "backupType": "Manual" } } } diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-07-01/netapp.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-07-01/netapp.json index 0fade55bbdb1..49546603cf33 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-07-01/netapp.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-07-01/netapp.json @@ -4419,9 +4419,29 @@ "description": "Label for backup" }, "backupType": { + "title": "backupType", "type": "string", "readOnly": true, - "description": "Type of backup adhoc or scheduled" + "description": "Type of backup Manual or Scheduled", + "enum": [ + "Manual", + "Scheduled" + ], + "x-ms-enum": { + "name": "backupType", + "modelAsString": true, + "values": [ + { + "value": "Manual", + "description": "Manual backup" + }, + { + "value": "Scheduled", + "description": "Scheduled backup" + } + ] + }, + "example": "Manual" } } }, diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-08-01/examples/Backups_Account_Get.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-08-01/examples/Backups_Account_Get.json index af022f8f6133..562f32e1a3f2 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-08-01/examples/Backups_Account_Get.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-08-01/examples/Backups_Account_Get.json @@ -18,7 +18,7 @@ "provisioningState": "Succeeded", "size": 10011, "label": "myLabel", - "backupType": "adhoc" + "backupType": "Manual" } } } diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-08-01/examples/Backups_Account_List.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-08-01/examples/Backups_Account_List.json index ca0ab97749f8..3bc8589edcfa 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-08-01/examples/Backups_Account_List.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-08-01/examples/Backups_Account_List.json @@ -19,7 +19,7 @@ "provisioningState": "Succeeded", "size": 10011, "label": "myLabel", - "backupType": "adhoc" + "backupType": "Manual" } } ] diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-08-01/examples/Backups_Create.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-08-01/examples/Backups_Create.json index cdf4dbeaa113..26d10ee8cbeb 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-08-01/examples/Backups_Create.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-08-01/examples/Backups_Create.json @@ -26,7 +26,7 @@ "provisioningState": "Succeeded", "size": 10011, "label": "myLabel", - "backupType": "adhoc" + "backupType": "Manual" } } }, @@ -41,7 +41,7 @@ "provisioningState": "Succeeded", "size": 10011, "label": "myLabel", - "backupType": "adhoc" + "backupType": "Manual" } } }, diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-08-01/examples/Backups_Get.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-08-01/examples/Backups_Get.json index d0e57b953ab4..d25b436cd249 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-08-01/examples/Backups_Get.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-08-01/examples/Backups_Get.json @@ -20,7 +20,7 @@ "provisioningState": "Succeeded", "size": 10011, "label": "myLabel", - "backupType": "adhoc" + "backupType": "Manual" } } } diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-08-01/examples/Backups_List.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-08-01/examples/Backups_List.json index 72203acbeda2..31c0d259b878 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-08-01/examples/Backups_List.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-08-01/examples/Backups_List.json @@ -21,7 +21,7 @@ "provisioningState": "Succeeded", "size": 10011, "label": "myLabel", - "backupType": "adhoc" + "backupType": "Manual" } } ] diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-08-01/examples/Backups_Update.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-08-01/examples/Backups_Update.json index 50ee040e7680..cac31ff6214e 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-08-01/examples/Backups_Update.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-08-01/examples/Backups_Update.json @@ -21,7 +21,7 @@ "provisioningState": "Succeeded", "size": 10011, "label": "myLabel", - "backupType": "adhoc" + "backupType": "Manual" } } } diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-08-01/netapp.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-08-01/netapp.json index 84752ef6ab57..dc9c71e00cd7 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-08-01/netapp.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-08-01/netapp.json @@ -4419,9 +4419,29 @@ "description": "Label for backup" }, "backupType": { + "title": "backupType", "type": "string", "readOnly": true, - "description": "Type of backup adhoc or scheduled" + "description": "Type of backup Manual or Scheduled", + "enum": [ + "Manual", + "Scheduled" + ], + "x-ms-enum": { + "name": "backupType", + "modelAsString": true, + "values": [ + { + "value": "Manual", + "description": "Manual backup" + }, + { + "value": "Scheduled", + "description": "Scheduled backup" + } + ] + }, + "example": "Manual" } } }, diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-09-01/examples/Backups_Account_Get.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-09-01/examples/Backups_Account_Get.json index 306e08cc8678..2083a48d2506 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-09-01/examples/Backups_Account_Get.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-09-01/examples/Backups_Account_Get.json @@ -18,7 +18,7 @@ "provisioningState": "Succeeded", "size": 10011, "label": "myLabel", - "backupType": "adhoc" + "backupType": "Manual" } } } diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-09-01/examples/Backups_Account_List.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-09-01/examples/Backups_Account_List.json index 0757e81633ea..3a5b5f476d34 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-09-01/examples/Backups_Account_List.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-09-01/examples/Backups_Account_List.json @@ -19,7 +19,7 @@ "provisioningState": "Succeeded", "size": 10011, "label": "myLabel", - "backupType": "adhoc" + "backupType": "Manual" } } ] diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-09-01/examples/Backups_Create.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-09-01/examples/Backups_Create.json index 635aa100499a..973c35916add 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-09-01/examples/Backups_Create.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-09-01/examples/Backups_Create.json @@ -26,7 +26,7 @@ "provisioningState": "Succeeded", "size": 10011, "label": "myLabel", - "backupType": "adhoc" + "backupType": "Manual" } } }, @@ -41,7 +41,7 @@ "provisioningState": "Succeeded", "size": 10011, "label": "myLabel", - "backupType": "adhoc" + "backupType": "Manual" } } }, diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-09-01/examples/Backups_Get.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-09-01/examples/Backups_Get.json index 305f58d58da1..1f829e469095 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-09-01/examples/Backups_Get.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-09-01/examples/Backups_Get.json @@ -20,7 +20,7 @@ "provisioningState": "Succeeded", "size": 10011, "label": "myLabel", - "backupType": "adhoc" + "backupType": "Manual" } } } diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-09-01/examples/Backups_List.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-09-01/examples/Backups_List.json index dd53d7dd64b6..621342fa83a6 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-09-01/examples/Backups_List.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-09-01/examples/Backups_List.json @@ -21,7 +21,7 @@ "provisioningState": "Succeeded", "size": 10011, "label": "myLabel", - "backupType": "adhoc" + "backupType": "Manual" } } ] diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-09-01/examples/Backups_Update.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-09-01/examples/Backups_Update.json index 96421abfb407..1c3b36357043 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-09-01/examples/Backups_Update.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-09-01/examples/Backups_Update.json @@ -21,7 +21,7 @@ "provisioningState": "Succeeded", "size": 10011, "label": "myLabel", - "backupType": "adhoc" + "backupType": "Manual" } } } diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-09-01/netapp.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-09-01/netapp.json index 450c1451100a..967a7b8bbd8a 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-09-01/netapp.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-09-01/netapp.json @@ -4448,9 +4448,29 @@ "description": "Label for backup" }, "backupType": { + "title": "backupType", "type": "string", "readOnly": true, - "description": "Type of backup adhoc or scheduled" + "description": "Type of backup Manual or Scheduled", + "enum": [ + "Manual", + "Scheduled" + ], + "x-ms-enum": { + "name": "backupType", + "modelAsString": true, + "values": [ + { + "value": "Manual", + "description": "Manual backup" + }, + { + "value": "Scheduled", + "description": "Scheduled backup" + } + ] + }, + "example": "Manual" } } }, diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-11-01/examples/Backups_Account_Get.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-11-01/examples/Backups_Account_Get.json index d826ff867267..f12e0f8d92f0 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-11-01/examples/Backups_Account_Get.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-11-01/examples/Backups_Account_Get.json @@ -18,7 +18,7 @@ "provisioningState": "Succeeded", "size": 10011, "label": "myLabel", - "backupType": "adhoc" + "backupType": "Manual" } } } diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-11-01/examples/Backups_Account_List.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-11-01/examples/Backups_Account_List.json index f235a3c5c753..696ee8da727d 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-11-01/examples/Backups_Account_List.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-11-01/examples/Backups_Account_List.json @@ -19,7 +19,7 @@ "provisioningState": "Succeeded", "size": 10011, "label": "myLabel", - "backupType": "adhoc" + "backupType": "Manual" } } ] diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-11-01/examples/Backups_Create.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-11-01/examples/Backups_Create.json index 0393dfa8a2e1..aac717bdff1c 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-11-01/examples/Backups_Create.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-11-01/examples/Backups_Create.json @@ -26,7 +26,7 @@ "provisioningState": "Succeeded", "size": 10011, "label": "myLabel", - "backupType": "adhoc" + "backupType": "Manual" } } }, @@ -41,7 +41,7 @@ "provisioningState": "Succeeded", "size": 10011, "label": "myLabel", - "backupType": "adhoc" + "backupType": "Manual" } } }, diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-11-01/examples/Backups_Get.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-11-01/examples/Backups_Get.json index 84e0e616949c..65f42b02f547 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-11-01/examples/Backups_Get.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-11-01/examples/Backups_Get.json @@ -20,7 +20,7 @@ "provisioningState": "Succeeded", "size": 10011, "label": "myLabel", - "backupType": "adhoc" + "backupType": "Manual" } } } diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-11-01/examples/Backups_List.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-11-01/examples/Backups_List.json index 6389a6f0fa63..21670902dcdf 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-11-01/examples/Backups_List.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-11-01/examples/Backups_List.json @@ -21,7 +21,7 @@ "provisioningState": "Succeeded", "size": 10011, "label": "myLabel", - "backupType": "adhoc" + "backupType": "Manual" } } ] diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-11-01/examples/Backups_Update.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-11-01/examples/Backups_Update.json index 6c8356a8c4c8..d0a29de5c912 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-11-01/examples/Backups_Update.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-11-01/examples/Backups_Update.json @@ -21,7 +21,7 @@ "provisioningState": "Succeeded", "size": 10011, "label": "myLabel", - "backupType": "adhoc" + "backupType": "Manual" } } }, @@ -36,7 +36,7 @@ "provisioningState": "Succeeded", "size": 10011, "label": "myLabel", - "backupType": "adhoc" + "backupType": "Manual" } } } diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-11-01/netapp.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-11-01/netapp.json index 3561884a7bb0..33f59e3ccf08 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-11-01/netapp.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-11-01/netapp.json @@ -3461,15 +3461,13 @@ }, "protocolTypes": { "title": "protocolTypes", - "description": "Set of protocol types, default NFSv3, CIFS fro SMB protocol", + "description": "Set of protocol types, default NFSv3, CIFS for SMB protocol", "type": "array", "items": { "type": "string" }, "example": [ - [ - "NFSv4.1" - ] + "NFSv4.1" ] }, "provisioningState": { @@ -4531,9 +4529,29 @@ "description": "Label for backup" }, "backupType": { + "title": "backupType", "type": "string", "readOnly": true, - "description": "Type of backup adhoc or scheduled" + "description": "Type of backup Manual or Scheduled", + "enum": [ + "Manual", + "Scheduled" + ], + "x-ms-enum": { + "name": "backupType", + "modelAsString": true, + "values": [ + { + "value": "Manual", + "description": "Manual backup" + }, + { + "value": "Scheduled", + "description": "Scheduled backup" + } + ] + }, + "example": "Manual" }, "failureReason": { "type": "string", diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-12-01/examples/Backups_Account_Get.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-12-01/examples/Backups_Account_Get.json index 7a7ebabefebe..033becfbbb3d 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-12-01/examples/Backups_Account_Get.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-12-01/examples/Backups_Account_Get.json @@ -18,7 +18,7 @@ "provisioningState": "Succeeded", "size": 10011, "label": "myLabel", - "backupType": "adhoc" + "backupType": "Manual" } } } diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-12-01/examples/Backups_Account_List.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-12-01/examples/Backups_Account_List.json index d05af6c9f5b1..71fd3f9301d0 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-12-01/examples/Backups_Account_List.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-12-01/examples/Backups_Account_List.json @@ -19,7 +19,7 @@ "provisioningState": "Succeeded", "size": 10011, "label": "myLabel", - "backupType": "adhoc" + "backupType": "Manual" } } ] diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-12-01/examples/Backups_Create.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-12-01/examples/Backups_Create.json index 87a37199e0af..004852493cc1 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-12-01/examples/Backups_Create.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-12-01/examples/Backups_Create.json @@ -26,7 +26,7 @@ "provisioningState": "Succeeded", "size": 10011, "label": "myLabel", - "backupType": "adhoc" + "backupType": "Manual" } } }, @@ -41,7 +41,7 @@ "provisioningState": "Succeeded", "size": 10011, "label": "myLabel", - "backupType": "adhoc" + "backupType": "Manual" } } }, diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-12-01/examples/Backups_Get.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-12-01/examples/Backups_Get.json index 5b6705676a68..1e11601f8929 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-12-01/examples/Backups_Get.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-12-01/examples/Backups_Get.json @@ -20,7 +20,7 @@ "provisioningState": "Succeeded", "size": 10011, "label": "myLabel", - "backupType": "adhoc" + "backupType": "Manual" } } } diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-12-01/examples/Backups_List.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-12-01/examples/Backups_List.json index 9998aab0de83..eb0799248e5a 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-12-01/examples/Backups_List.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-12-01/examples/Backups_List.json @@ -21,7 +21,7 @@ "provisioningState": "Succeeded", "size": 10011, "label": "myLabel", - "backupType": "adhoc" + "backupType": "Manual" } } ] diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-12-01/examples/Backups_Update.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-12-01/examples/Backups_Update.json index fd6a00681fae..ef263c8f24df 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-12-01/examples/Backups_Update.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-12-01/examples/Backups_Update.json @@ -21,7 +21,7 @@ "provisioningState": "Succeeded", "size": 10011, "label": "myLabel", - "backupType": "adhoc" + "backupType": "Manual" } } }, @@ -36,7 +36,7 @@ "provisioningState": "Succeeded", "size": 10011, "label": "myLabel", - "backupType": "adhoc" + "backupType": "Manual" } } } diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-12-01/netapp.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-12-01/netapp.json index a00e160ebd94..baf52c086942 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-12-01/netapp.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-12-01/netapp.json @@ -3583,15 +3583,13 @@ }, "protocolTypes": { "title": "protocolTypes", - "description": "Set of protocol types, default NFSv3, CIFS fro SMB protocol", + "description": "Set of protocol types, default NFSv3, CIFS for SMB protocol", "type": "array", "items": { "type": "string" }, "example": [ - [ - "NFSv4.1" - ] + "NFSv4.1" ] }, "provisioningState": { @@ -4652,9 +4650,29 @@ "description": "Label for backup" }, "backupType": { + "title": "backupType", "type": "string", "readOnly": true, - "description": "Type of backup adhoc or scheduled" + "description": "Type of backup Manual or Scheduled", + "enum": [ + "Manual", + "Scheduled" + ], + "x-ms-enum": { + "name": "backupType", + "modelAsString": true, + "values": [ + { + "value": "Manual", + "description": "Manual backup" + }, + { + "value": "Scheduled", + "description": "Scheduled backup" + } + ] + }, + "example": "Manual" }, "failureReason": { "type": "string", diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Accounts_CreateOrUpdate.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Accounts_CreateOrUpdate.json new file mode 100644 index 000000000000..ce2b75efb4b6 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Accounts_CreateOrUpdate.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "api-version": "2021-02-01", + "body": { + "location": "eastus", + "properties": { + "activeDirectories": [ + { + "site": "SiteName", + "username": "ad_user_name", + "password": "ad_password", + "domain": "10.10.10.3", + "dns": "10.10.10.3, 10.10.10.4", + "smbServerName": "SMBServer", + "organizationalUnit": "Engineering", + "aesEncryption": true, + "ldapSigning": false, + "ldapOverTLS": false + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1", + "name": "account1", + "type": "Microsoft.NetApp/netAppAccounts", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1", + "name": "account1", + "type": "Microsoft.NetApp/netAppAccounts", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Accounts_Delete.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Accounts_Delete.json new file mode 100644 index 000000000000..7f458547b95c --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Accounts_Delete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "api-version": "2021-02-01" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Accounts_Get.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Accounts_Get.json new file mode 100644 index 000000000000..9c2a329aa67e --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Accounts_Get.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "api-version": "2021-02-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1", + "name": "account1", + "type": "Microsoft.NetApp/netAppAccounts", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "activeDirectories": [ + { + "site": "SiteName", + "activeDirectoryId": "02da3711-6c58-2d64-098a-e3af7afaf936", + "username": "ad_user_name", + "domain": "10.10.10.3", + "dns": "10.10.10.3, 10.10.10.4", + "status": "InUse", + "smbServerName": "SMBServer", + "organizationalUnit": "Engineering", + "statusDetails": "Status Details", + "aesEncryption": true, + "ldapSigning": true + } + ] + } + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Accounts_List.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Accounts_List.json new file mode 100644 index 000000000000..04a55a0fa084 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Accounts_List.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "api-version": "2021-02-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1", + "name": "account1", + "type": "Microsoft.NetApp/netAppAccounts", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Accounts_Update.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Accounts_Update.json new file mode 100644 index 000000000000..3fe78d195256 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Accounts_Update.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "api-version": "2020-11-01", + "body": { + "tags": { + "Tag1": "Value1" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1", + "name": "account1", + "type": "Microsoft.NetApp/netAppAccounts", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded" + } + } + }, + "202": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1", + "name": "account1", + "type": "Microsoft.NetApp/netAppAccounts", + "location": "eastus", + "tags": { + "Tag1": "Value1" + }, + "properties": { + "provisioningState": "Patching", + "encryption": { + "keySource": "Microsoft.NetApp" + } + } + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/BackupPolicies_Create.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/BackupPolicies_Create.json new file mode 100644 index 000000000000..4938b362836d --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/BackupPolicies_Create.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "backupPolicyName": "backupPolicyName", + "api-version": "2021-02-01", + "body": { + "location": "westus", + "properties": { + "dailyBackupsToKeep": 10, + "weeklyBackupsToKeep": 10, + "monthlyBackupsToKeep": 10, + "enabled": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/backupPolocies/backupPolicyName", + "name": "account1/backupPolicyName", + "type": "Microsoft.NetApp/netAppAccounts/backupPolicies", + "location": "westus", + "properties": { + "dailyBackupsToKeep": 10, + "weeklyBackupsToKeep": 10, + "monthlyBackupsToKeep": 10, + "enabled": true, + "provisioningState": "creating" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/backupPolocies/backupPolicyName", + "name": "account1/backupPolicyName", + "type": "Microsoft.NetApp/netAppAccounts/backupPolicies", + "location": "westus", + "properties": { + "dailyBackupsToKeep": 10, + "weeklyBackupsToKeep": 10, + "monthlyBackupsToKeep": 10, + "enabled": true, + "provisioningState": "creating" + } + } + }, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/BackupPolicies_Delete.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/BackupPolicies_Delete.json new file mode 100644 index 000000000000..cffc06051bf5 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/BackupPolicies_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "resourceGroup", + "accountName": "accountName", + "backupPolicyName": "backupPolicyName", + "api-version": "2021-02-01" + }, + "responses": { + "204": {}, + "202": {}, + "200": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/BackupPolicies_Get.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/BackupPolicies_Get.json new file mode 100644 index 000000000000..c443feee7d6d --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/BackupPolicies_Get.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "backupPolicyName": "backupPolicyName", + "api-version": "2021-02-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/backupPolocies/backupPolicyName", + "name": "account1/backupPolicyName", + "type": "Microsoft.NetApp/netAppAccounts/backupPolicies", + "location": "eastus", + "properties": { + "name": "Policy 1", + "dailyBackupsToKeep": 10, + "weeklyBackupsToKeep": 10, + "monthlyBackupsToKeep": 10, + "yearlyBackupsToKeep": 10, + "volumesAssigned": 0, + "enabled": true, + "volumeBackups": [ + { + "volumeName": "volume 1", + "backupsCount": 5, + "policyEnabled": true + } + ] + } + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/BackupPolicies_List.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/BackupPolicies_List.json new file mode 100644 index 000000000000..3064c6f825ba --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/BackupPolicies_List.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "api-version": "2021-02-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/backupPolocies/backupPolicy1", + "name": "account1/backupPolicy1", + "type": "Microsoft.NetApp/netAppAccounts/backupPolicies", + "location": "eastus", + "properties": { + "name": "Policy 1", + "dailyBackupsToKeep": 10, + "weeklyBackupsToKeep": 10, + "monthlyBackupsToKeep": 10, + "yearlyBackupsToKeep": 10, + "volumesAssigned": 0, + "enabled": true + } + } + ] + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/BackupPolicies_Update.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/BackupPolicies_Update.json new file mode 100644 index 000000000000..b152bc355603 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/BackupPolicies_Update.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "backupPolicyName": "backupPolicyName", + "api-version": "2021-02-01", + "body": { + "location": "westus", + "properties": { + "dailyBackupsToKeep": 5, + "weeklyBackupsToKeep": 10, + "monthlyBackupsToKeep": 10, + "enabled": false + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/backupPolocies/backupPolicyName", + "name": "account1/backupPolicyName", + "type": "Microsoft.NetApp/netAppAccounts/backupPolicies", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "dailyBackupsToKeep": 5, + "weeklyBackupsToKeep": 10, + "monthlyBackupsToKeep": 10, + "yearlyBackupsToKeep": 0, + "volumesAssigned": 1, + "enabled": false, + "volumeBackups": [ + { + "volumeName": "volume 1", + "backupsCount": 5, + "policyEnabled": true + } + ] + } + } + }, + "202": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/backupPolocies/backupPolicyName", + "name": "account1/backupPolicyName", + "type": "Microsoft.NetApp/netAppAccounts/backupPolicies", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "dailyBackupsToKeep": 5, + "weeklyBackupsToKeep": 10, + "monthlyBackupsToKeep": 10, + "yearlyBackupsToKeep": 0, + "volumesAssigned": 1, + "enabled": false, + "volumeBackups": [ + { + "volumeName": "volume 1", + "backupsCount": 5, + "policyEnabled": true + } + ] + } + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Backups_Account_Delete.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Backups_Account_Delete.json new file mode 100644 index 000000000000..aa644938e1ce --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Backups_Account_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "resourceGroup", + "accountName": "accountName", + "backupName": "backupName", + "api-version": "2021-02-01" + }, + "responses": { + "204": {}, + "202": {}, + "200": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Backups_Account_Get.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Backups_Account_Get.json new file mode 100644 index 000000000000..d565233428b6 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Backups_Account_Get.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "backupName": "backup1", + "api-version": "2021-02-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/accountBackups/backup1", + "name": "account1/backup1", + "type": "Microsoft.NetApp/netAppAccounts/accountBackups", + "location": "eastus", + "properties": { + "creationDate": "2017-08-15T13:23:33Z", + "provisioningState": "Succeeded", + "size": 10011, + "label": "myLabel", + "backupType": "Manual" + } + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Backups_Account_List.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Backups_Account_List.json new file mode 100644 index 000000000000..9f944cf37a28 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Backups_Account_List.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "api-version": "2021-02-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/accountBackups/backup1", + "name": "account1/backup1", + "type": "Microsoft.NetApp/netAppAccounts/accountBackups", + "location": "eastus", + "properties": { + "creationDate": "2017-08-15T13:23:33Z", + "provisioningState": "Succeeded", + "size": 10011, + "label": "myLabel", + "backupType": "Manual" + } + } + ] + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Backups_Create.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Backups_Create.json new file mode 100644 index 000000000000..d47903ccd8ae --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Backups_Create.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "backupName": "backup1", + "api-version": "2021-02-01", + "body": { + "location": "eastus", + "properties": { + "label": "myLabel" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1/volumes/volume1/backups/backup1", + "name": "account1/pool1/volume1/backup1", + "type": "Microsoft.NetApp/netAppAccounts/capacityPools/volumes/backups", + "location": "eastus", + "properties": { + "creationDate": "2017-08-15T13:23:33Z", + "provisioningState": "Succeeded", + "size": 10011, + "label": "myLabel", + "backupType": "Manual" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1/volumes/volume1/backups/backup1", + "name": "account1/pool1/volume1/backup1", + "type": "Microsoft.NetApp/netAppAccounts/capacityPools/volumes/backups", + "location": "eastus", + "properties": { + "creationDate": "2017-08-15T13:23:33Z", + "provisioningState": "Succeeded", + "size": 10011, + "label": "myLabel", + "backupType": "Manual" + } + } + }, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Backups_Delete.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Backups_Delete.json new file mode 100644 index 000000000000..2b1b539a02ed --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Backups_Delete.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "resourceGroup", + "accountName": "accountName", + "poolName": "poolName", + "volumeName": "volumeName", + "backupName": "backupName", + "api-version": "2021-02-01" + }, + "responses": { + "204": {}, + "202": {}, + "200": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Backups_Get.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Backups_Get.json new file mode 100644 index 000000000000..122e11609e96 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Backups_Get.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "backupName": "backup1", + "api-version": "2021-02-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1/volumes/volume1/backups/backup1", + "name": "account1/pool1/volume1/backup1", + "type": "Microsoft.NetApp/netAppAccounts/capacityPools/volumes/backups", + "location": "eastus", + "properties": { + "creationDate": "2017-08-15T13:23:33Z", + "provisioningState": "Succeeded", + "size": 10011, + "label": "myLabel", + "backupType": "Manual" + } + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Backups_List.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Backups_List.json new file mode 100644 index 000000000000..90de04cdff96 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Backups_List.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "api-version": "2021-02-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1/volumes/volume1/backups/backup1", + "name": "account1/pool1/volume1/backup1", + "type": "Microsoft.NetApp/netAppAccounts/capacityPools/volumes/backups", + "location": "eastus", + "properties": { + "creationDate": "2017-08-15T13:23:33Z", + "provisioningState": "Succeeded", + "size": 10011, + "label": "myLabel", + "backupType": "Manual" + } + } + ] + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Backups_Update.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Backups_Update.json new file mode 100644 index 000000000000..15dd2f181523 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Backups_Update.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "backupName": "backup1", + "api-version": "2021-02-01", + "body": {} + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1/volumes/volume1/backups/backup1", + "name": "account1/pool1/volume1/backup1", + "type": "Microsoft.NetApp/netAppAccounts/capacityPools/volumes/backups", + "location": "eastus", + "properties": { + "creationDate": "2017-08-15T13:23:33Z", + "provisioningState": "Succeeded", + "size": 10011, + "label": "myLabel", + "backupType": "Manual" + } + } + }, + "202": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1/volumes/volume1/backups/backup1", + "name": "account1/pool1/volume1/backup1", + "type": "Microsoft.NetApp/netAppAccounts/capacityPools/volumes/backups", + "location": "eastus", + "properties": { + "creationDate": "2017-08-15T13:23:33Z", + "provisioningState": "Succeeded", + "size": 10011, + "label": "myLabel", + "backupType": "Manual" + } + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/CheckFilePathAvailability.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/CheckFilePathAvailability.json new file mode 100644 index 000000000000..2df2d789d83c --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/CheckFilePathAvailability.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "location": "eastus", + "api-version": "2021-02-01", + "body": { + "name": "my-exact-filepth", + "type": "netAppAccount/capacityPools/volume", + "resourceGroup": "myRG" + } + }, + "responses": { + "200": { + "body": { + "isAvailable": true + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/CheckNameAvailability.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/CheckNameAvailability.json new file mode 100644 index 000000000000..174257d740e1 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/CheckNameAvailability.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "location": "eastus", + "api-version": "2021-02-01", + "body": { + "name": "accName", + "type": "netAppAccount", + "resourceGroup": "myRG" + } + }, + "responses": { + "200": { + "body": { + "isAvailable": true + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/CheckQuotaAvailability.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/CheckQuotaAvailability.json new file mode 100644 index 000000000000..c02b7cf91a06 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/CheckQuotaAvailability.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "location": "eastus", + "api-version": "2021-02-01", + "body": { + "name": "resource1", + "type": "Microsoft.NetApp/netAppAccounts", + "resourceGroup": "myRG" + } + }, + "responses": { + "200": { + "body": { + "isAvailable": true + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Pools_CreateOrUpdate.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Pools_CreateOrUpdate.json new file mode 100644 index 000000000000..bbb611ab0454 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Pools_CreateOrUpdate.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "api-version": "2021-02-01", + "body": { + "location": "eastus", + "properties": { + "size": 4398046511104, + "serviceLevel": "Premium", + "qosType": "Auto" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1", + "name": "account1/pool1", + "type": "Microsoft.NetApp/netAppAccounts/capacityPools", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "poolId": "9760acf5-4638-11e7-9bdb-020073ca7778", + "serviceLevel": "Premium", + "size": 4398046511104, + "qosType": "Auto", + "totalThroughputMibps": 281.474 + } + } + }, + "201": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1", + "name": "account1/pool1", + "type": "Microsoft.NetApp/netAppAccounts/capacityPools", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "poolId": "9760acf5-4638-11e7-9bdb-020073ca7778", + "serviceLevel": "Premium", + "size": 4398046511104, + "qosType": "Auto", + "totalThroughputMibps": 281.474 + } + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Pools_Delete.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Pools_Delete.json new file mode 100644 index 000000000000..f12d3d75d31c --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Pools_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "api-version": "2021-02-01" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Pools_Get.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Pools_Get.json new file mode 100644 index 000000000000..6ad48bc173c9 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Pools_Get.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "api-version": "2021-02-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1", + "name": "account1/pool1", + "type": "Microsoft.NetApp/netAppAccounts/capacityPools", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "poolId": "9760acf5-4638-11e7-9bdb-020073ca7778", + "serviceLevel": "Premium", + "size": 4398046511104, + "qosType": "Manual", + "totalThroughputMibps": 281.474, + "utilizedThroughputMibps": 100.47 + } + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Pools_List.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Pools_List.json new file mode 100644 index 000000000000..be2696e08aca --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Pools_List.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "api-version": "2021-02-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1", + "name": "account1/pool1", + "type": "Microsoft.NetApp/netAppAccounts/capacityPools", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "poolId": "9760acf5-4638-11e7-9bdb-020073ca7778", + "serviceLevel": "Premium", + "size": 4398046511104, + "qosType": "Auto", + "totalThroughputMibps": 281.474 + } + } + ] + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Pools_Update.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Pools_Update.json new file mode 100644 index 000000000000..c77b0ced5098 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Pools_Update.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "api-version": "2021-02-01", + "body": {} + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1", + "name": "account1/pool1", + "type": "Microsoft.NetApp/netAppAccounts/capacityPools", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "poolId": "9760acf5-4638-11e7-9bdb-020073ca7778", + "serviceLevel": "Premium", + "size": 4398046511104, + "qosType": "Manual", + "totalThroughputMibps": 281.474, + "utilizedThroughputMibps": 100.47 + } + } + }, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/SnapshotPolicies_Create.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/SnapshotPolicies_Create.json new file mode 100644 index 000000000000..7703c55406c4 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/SnapshotPolicies_Create.json @@ -0,0 +1,103 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "snapshotPolicyName": "snapshotPolicyName", + "api-version": "2021-02-01", + "body": { + "location": "eastus", + "properties": { + "hourlySchedule": { + "snapshotsToKeep": 2, + "minute": 50 + }, + "dailySchedule": { + "snapshotsToKeep": 4, + "hour": 14, + "minute": 30 + }, + "weeklySchedule": { + "snapshotsToKeep": 3, + "day": "Wednesday", + "hour": 14, + "minute": 45 + }, + "monthlySchedule": { + "snapshotsToKeep": 5, + "daysOfMonth": "10,11,12", + "hour": 14, + "minute": 15 + } + } + } + }, + "responses": { + "200": { + "body": { + "location": "eastus", + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/snapshotPolicies/snapshotPolicy1", + "name": "account1/snapshotPolicy1", + "type": "Microsoft.NetApp/netAppAccounts/snapshotPolicies", + "properties": { + "enabled": true, + "hourlySchedule": { + "snapshotsToKeep": 2, + "minute": 50 + }, + "dailySchedule": { + "snapshotsToKeep": 4, + "hour": 14, + "minute": 30 + }, + "weeklySchedule": { + "snapshotsToKeep": 3, + "day": "Wednesday", + "hour": 14, + "minute": 45 + }, + "monthlySchedule": { + "snapshotsToKeep": 5, + "daysOfMonth": "10,11,12", + "hour": 14, + "minute": 15 + }, + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "location": "eastus", + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/snapshotPolicies/snapshotPolicy1", + "name": "account1/snapshotPolicy1", + "type": "Microsoft.NetApp/netAppAccounts/snapshotPolicies", + "properties": { + "enabled": true, + "hourlySchedule": { + "snapshotsToKeep": 2, + "minute": 50 + }, + "dailySchedule": { + "snapshotsToKeep": 4, + "hour": 14, + "minute": 30 + }, + "weeklySchedule": { + "snapshotsToKeep": 3, + "day": "Wednesday", + "hour": 14, + "minute": 45 + }, + "monthlySchedule": { + "snapshotsToKeep": 5, + "daysOfMonth": "10,11,12", + "hour": 14, + "minute": 15 + }, + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/SnapshotPolicies_Delete.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/SnapshotPolicies_Delete.json new file mode 100644 index 000000000000..65cb3354b642 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/SnapshotPolicies_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "resourceGroup", + "accountName": "accountName", + "snapshotPolicyName": "snapshotPolicyName", + "api-version": "2021-02-01" + }, + "responses": { + "204": {}, + "202": {}, + "200": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/SnapshotPolicies_Get.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/SnapshotPolicies_Get.json new file mode 100644 index 000000000000..fa0f675c8c9e --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/SnapshotPolicies_Get.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "snapshotPolicyName": "snapshotPolicyName", + "api-version": "2021-02-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/snapshotPolicies/snapshotPolicy1", + "name": "account1/snapshotPolicy1", + "type": "Microsoft.NetApp/netAppAccounts/snapshotPolicies", + "location": "eastus", + "properties": { + "enabled": true, + "hourlySchedule": { + "snapshotsToKeep": 2, + "minute": 50 + }, + "dailySchedule": { + "snapshotsToKeep": 4, + "hour": 14, + "minute": 30 + }, + "weeklySchedule": { + "snapshotsToKeep": 3, + "day": "Wednesday", + "hour": 14, + "minute": 45 + }, + "monthlySchedule": { + "snapshotsToKeep": 5, + "daysOfMonth": "10,11,12", + "hour": 14, + "minute": 15 + }, + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/SnapshotPolicies_List.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/SnapshotPolicies_List.json new file mode 100644 index 000000000000..bfa80387556e --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/SnapshotPolicies_List.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "api-version": "2021-02-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/snapshotPolicies/snapshotPolicy1", + "name": "account1/snapshotPolicy1", + "location": "eastus", + "type": "Microsoft.NetApp/netAppAccounts/snapshotPolicies", + "properties": { + "enabled": true, + "hourlySchedule": { + "snapshotsToKeep": 2, + "minute": 50 + }, + "dailySchedule": { + "snapshotsToKeep": 4, + "hour": 14, + "minute": 30 + }, + "weeklySchedule": { + "snapshotsToKeep": 3, + "day": "Wednesday", + "hour": 14, + "minute": 45 + }, + "monthlySchedule": { + "snapshotsToKeep": 5, + "daysOfMonth": "10,11,12", + "hour": 14, + "minute": 15 + }, + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/SnapshotPolicies_ListVolumes.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/SnapshotPolicies_ListVolumes.json new file mode 100644 index 000000000000..73a029e8aeac --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/SnapshotPolicies_ListVolumes.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "snapshotPolicyName": "snapshotPolicyName", + "api-version": "2021-02-01", + "body": { + "location": "eastus", + "properties": {} + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1/volumes/volume1", + "name": "account1/pool1/volume1", + "type": "Microsoft.NetApp/netAppAccounts/capacityPools/volumes", + "location": "eastus", + "properties": { + "fileSystemId": "9760acf5-4638-11e7-9bdb-020073ca7778", + "creationToken": "some-amazing-filepath", + "usageThreshold": 107374182400, + "serviceLevel": "Premium", + "provisioningState": "Succeeded", + "throughputMibps": 128, + "subnetId": "/subscriptions/9760acf5-4638-11e7-9bdb-020073ca7778/resourceGroups/myRP/providers/Microsoft.Network/virtualNetworks/testvnet3/subnets/testsubnet3" + } + } + ] + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/SnapshotPolicies_Update.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/SnapshotPolicies_Update.json new file mode 100644 index 000000000000..3be246d451de --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/SnapshotPolicies_Update.json @@ -0,0 +1,104 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "snapshotPolicyName": "snapshotPolicyName", + "api-version": "2021-02-01", + "body": { + "location": "eastus", + "properties": { + "enabled": true, + "hourlySchedule": { + "snapshotsToKeep": 2, + "minute": 50 + }, + "dailySchedule": { + "snapshotsToKeep": 4, + "hour": 14, + "minute": 30 + }, + "weeklySchedule": { + "snapshotsToKeep": 3, + "day": "Wednesday", + "hour": 14, + "minute": 45 + }, + "monthlySchedule": { + "snapshotsToKeep": 5, + "daysOfMonth": "10,11,12", + "hour": 14, + "minute": 15 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/snapshotPolicies/snapshotPolicy1", + "name": "account1/snapshotPolicy1", + "type": "Microsoft.NetApp/netAppAccounts/snapshotPolicies", + "location": "eastus", + "properties": { + "enabled": true, + "hourlySchedule": { + "snapshotsToKeep": 2, + "minute": 50 + }, + "dailySchedule": { + "snapshotsToKeep": 4, + "hour": 14, + "minute": 30 + }, + "weeklySchedule": { + "snapshotsToKeep": 3, + "day": "Wednesday", + "hour": 14, + "minute": 45 + }, + "monthlySchedule": { + "snapshotsToKeep": 5, + "daysOfMonth": "10,11,12", + "hour": 14, + "minute": 15 + }, + "provisioningState": "Succeeded" + } + } + }, + "202": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/snapshotPolicies/snapshotPolicy1", + "name": "account1/snapshotPolicy1", + "type": "Microsoft.NetApp/netAppAccounts/snapshotPolicies", + "location": "eastus", + "properties": { + "enabled": true, + "hourlySchedule": { + "snapshotsToKeep": 2, + "minute": 50 + }, + "dailySchedule": { + "snapshotsToKeep": 4, + "hour": 14, + "minute": 30 + }, + "weeklySchedule": { + "snapshotsToKeep": 3, + "day": "Wednesday", + "hour": 14, + "minute": 45 + }, + "monthlySchedule": { + "snapshotsToKeep": 5, + "daysOfMonth": "10,11,12", + "hour": 14, + "minute": 15 + }, + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Snapshots_Create.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Snapshots_Create.json new file mode 100644 index 000000000000..4189294b3b36 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Snapshots_Create.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "snapshotName": "snapshot1", + "api-version": "2021-02-01", + "body": { + "location": "eastus" + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1/volumes/volume1/snapshots/snapshot1", + "name": "account1/pool1/volume1/snapshot1", + "type": "Microsoft.NetApp/netAppAccounts/capacityPools/volumes/snapshots", + "location": "eastus", + "properties": { + "snapshotId": "9760acf5-4638-11e7-9bdb-020073ca3333", + "created": "2017-08-15T13:23:33Z", + "provisioningState": "Succeeded" + } + } + }, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Snapshots_Delete.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Snapshots_Delete.json new file mode 100644 index 000000000000..ff80d0ba83f9 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Snapshots_Delete.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "snapshotName": "snapshot1", + "api-version": "2021-02-01" + }, + "responses": { + "204": {}, + "202": {}, + "200": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Snapshots_Get.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Snapshots_Get.json new file mode 100644 index 000000000000..8ade18a15bcb --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Snapshots_Get.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "snapshotName": "snapshot1", + "api-version": "2021-02-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1/volumes/volume1/snapshots/snapshot1", + "name": "account1/pool1/volume1/snapshot1", + "type": "Microsoft.NetApp/netAppAccounts/capacityPools/volumes/snapshots", + "location": "eastus", + "properties": { + "snapshotId": "9760acf5-4638-11e7-9bdb-020073ca3333", + "created": "2017-08-15T13:23:33Z", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Snapshots_List.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Snapshots_List.json new file mode 100644 index 000000000000..f9f5c58400dd --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Snapshots_List.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "api-version": "2021-02-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1/volumes/volume1/snapshots/snapshot1", + "name": "account1/pool1/volume1/snapshot1", + "type": "Microsoft.NetApp/netAppAccounts/capacityPools/volumes/snapshots", + "location": "eastus", + "properties": { + "snapshotId": "9760acf5-4638-11e7-9bdb-020073ca3333", + "created": "2017-08-15T13:23:33Z", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Snapshots_Update.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Snapshots_Update.json new file mode 100644 index 000000000000..e21a40b9d247 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Snapshots_Update.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "snapshotName": "snapshot1", + "api-version": "2021-02-01", + "body": {} + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1/volumes/volume1/snapshots/snapshot1", + "name": "account1/pool1/volume1/snapshot1", + "type": "Microsoft.NetApp/netAppAccounts/capacityPools/volumes/snapshots", + "location": "eastus", + "properties": { + "snapshotId": "9760acf5-4638-11e7-9bdb-020073ca3333", + "created": "2017-08-15T13:23:33Z", + "provisioningState": "Succeeded" + } + } + }, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Vaults_List.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Vaults_List.json new file mode 100644 index 000000000000..ebc18ee77b9c --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Vaults_List.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "api-version": "2021-02-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/vaults/vault1", + "name": "account1/vault1", + "type": "Microsoft.NetApp/netAppAccounts/vaults", + "location": "eastus", + "properties": { + "vaultName": "east US" + } + } + ] + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Volumes_AuthorizeReplication.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Volumes_AuthorizeReplication.json new file mode 100644 index 000000000000..bfa446bb038a --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Volumes_AuthorizeReplication.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "api-version": "2021-02-01", + "body": { + "remoteVolumeResourceId": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRemoteRG/providers/Microsoft.NetApp/netAppAccounts/remoteAccount1/capacityPools/remotePool1/volumes/remoteVolume1" + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Volumes_BackupStatus.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Volumes_BackupStatus.json new file mode 100644 index 000000000000..40c55e4ff7ea --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Volumes_BackupStatus.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "api-version": "2021-02-01" + }, + "responses": { + "200": { + "body": { + "healthy": true, + "relationshipStatus": "Idle", + "mirrorState": "Mirrored", + "unhealthyReason": "", + "errorMessage": "" + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Volumes_BreakReplication.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Volumes_BreakReplication.json new file mode 100644 index 000000000000..2780fc3c2903 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Volumes_BreakReplication.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "api-version": "2021-02-01", + "body": { + "forceBreakReplication": false + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Volumes_CreateOrUpdate.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Volumes_CreateOrUpdate.json new file mode 100644 index 000000000000..fabc2e172923 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Volumes_CreateOrUpdate.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "api-version": "2021-02-01", + "body": { + "location": "eastus", + "properties": { + "creationToken": "my-unique-file-path", + "serviceLevel": "Premium", + "subnetId": "/subscriptions/9760acf5-4638-11e7-9bdb-020073ca7778/resourceGroups/myRP/providers/Microsoft.Network/virtualNetworks/testvnet3/subnets/testsubnet3", + "usageThreshold": 107374182400, + "throughputMibps": 128, + "encryptionKeySource": "Microsoft.KeyVault" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1/volumes/volume1", + "location": "eastus", + "name": "account1/pool1/volume1", + "properties": { + "fileSystemId": "9760acf5-4638-11e7-9bdb-020073ca7778", + "creationToken": "some-amazing-filepath", + "usageThreshold": 107374182400, + "serviceLevel": "Premium", + "provisioningState": "Succeeded", + "throughputMibps": 128, + "subnetId": "/subscriptions/9760acf5-4638-11e7-9bdb-020073ca7778/resourceGroups/myRP/providers/Microsoft.Network/virtualNetworks/testvnet3/subnets/testsubnet3", + "encryptionKeySource": "Microsoft.KeyVault" + }, + "type": "Microsoft.NetApp/netAppAccounts/capacityPools/volumes" + } + }, + "201": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1/volumes/volume1", + "location": "eastus", + "name": "account1/pool1/volume1", + "properties": { + "fileSystemId": "9760acf5-4638-11e7-9bdb-020073ca7778", + "creationToken": "some-amazing-filepath", + "usageThreshold": 107374182400, + "serviceLevel": "Premium", + "provisioningState": "Succeeded", + "throughputMibps": 128, + "subnetId": "/subscriptions/9760acf5-4638-11e7-9bdb-020073ca7778/resourceGroups/myRP/providers/Microsoft.Network/virtualNetworks/testvnet3/subnets/testsubnet3", + "encryptionKeySource": "Microsoft.KeyVault" + }, + "type": "Microsoft.NetApp/netAppAccounts/capacityPools/volumes" + } + }, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Volumes_Delete.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Volumes_Delete.json new file mode 100644 index 000000000000..14f71a646368 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Volumes_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "api-version": "2021-02-01" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Volumes_DeleteReplication.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Volumes_DeleteReplication.json new file mode 100644 index 000000000000..6cd62a54cef3 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Volumes_DeleteReplication.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "api-version": "2021-02-01", + "body": { + "location": "eastus", + "properties": {} + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Volumes_Get.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Volumes_Get.json new file mode 100644 index 000000000000..3c108283a5c3 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Volumes_Get.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "api-version": "2021-02-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1/volumes/volume1", + "name": "account1/pool1/volume1", + "type": "Microsoft.NetApp/netAppAccounts/capacityPools/volumes", + "location": "eastus", + "properties": { + "fileSystemId": "9760acf5-4638-11e7-9bdb-020073ca7778", + "creationToken": "some-amazing-filepath", + "usageThreshold": 107374182400, + "serviceLevel": "Premium", + "provisioningState": "Succeeded", + "throughputMibps": 128, + "subnetId": "/subscriptions/9760acf5-4638-11e7-9bdb-020073ca7778/resourceGroups/myRP/providers/Microsoft.Network/virtualNetworks/testvnet3/subnets/testsubnet3" + } + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Volumes_List.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Volumes_List.json new file mode 100644 index 000000000000..e45f768a9030 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Volumes_List.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "api-version": "2021-02-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1/volumes/volume1", + "name": "account1/pool1/volume1", + "type": "Microsoft.NetApp/netAppAccounts/capacityPools/volumes", + "location": "eastus", + "properties": { + "fileSystemId": "9760acf5-4638-11e7-9bdb-020073ca7778", + "creationToken": "some-amazing-filepath", + "usageThreshold": 107374182400, + "serviceLevel": "Premium", + "provisioningState": "Succeeded", + "throughputMibps": 128, + "subnetId": "/subscriptions/9760acf5-4638-11e7-9bdb-020073ca7778/resourceGroups/myRP/providers/Microsoft.Network/virtualNetworks/testvnet3/subnets/testsubnet3" + } + } + ] + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Volumes_PoolChange.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Volumes_PoolChange.json new file mode 100644 index 000000000000..cbcc7135292e --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Volumes_PoolChange.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "api-version": "2021-02-01", + "body": { + "newPoolResourceId": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1" + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Volumes_ReInitializeReplication.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Volumes_ReInitializeReplication.json new file mode 100644 index 000000000000..6cd62a54cef3 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Volumes_ReInitializeReplication.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "api-version": "2021-02-01", + "body": { + "location": "eastus", + "properties": {} + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Volumes_ReplicationStatus.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Volumes_ReplicationStatus.json new file mode 100644 index 000000000000..8dfc29d1e515 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Volumes_ReplicationStatus.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "api-version": "2021-02-01", + "body": { + "location": "eastus", + "properties": {} + } + }, + "responses": { + "200": { + "body": { + "healthy": true, + "relationshipStatus": "Idle", + "mirrorState": "Mirrored", + "totalProgress": "1048576", + "errorMessage": "" + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Volumes_ResyncReplication.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Volumes_ResyncReplication.json new file mode 100644 index 000000000000..6cd62a54cef3 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Volumes_ResyncReplication.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "api-version": "2021-02-01", + "body": { + "location": "eastus", + "properties": {} + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Volumes_Revert.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Volumes_Revert.json new file mode 100644 index 000000000000..43d68b7a7199 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Volumes_Revert.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "api-version": "2021-02-01", + "body": { + "snapshotId": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1/volumes/volume1/snapshots/snapshot1" + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Volumes_Update.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Volumes_Update.json new file mode 100644 index 000000000000..8fac41503ff3 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/examples/Volumes_Update.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "api-version": "2021-02-01", + "body": {} + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subscriptionId/resourceGroups/resourceGroup/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1/volumes/volume1", + "name": "account1/pool1/volume1", + "type": "Microsoft.NetApp/netAppAccounts/capacityPools/volumes", + "location": "eastus", + "properties": { + "fileSystemId": "9760acf5-4638-11e7-9bdb-020073ca7778", + "creationToken": "some-amazing-filepath", + "usageThreshold": 107374182400, + "serviceLevel": "Premium", + "provisioningState": "Succeeded", + "throughputMibps": 128, + "subnetId": "/subscriptions/9760acf5-4638-11e7-9bdb-020073ca7778/resourceGroups/myRP/providers/Microsoft.Network/virtualNetworks/testvnet3/subnets/testsubnet3", + "dataProtection": { + "snapshot": { + "snapshotPolicyId": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRP/providers/Microsoft.NetApp/netAppAccounts/account1/snapshotPolicies/snapshotPolicy1" + } + } + } + } + }, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/netapp.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/netapp.json new file mode 100644 index 000000000000..a35f4a7675f7 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2021-02-01/netapp.json @@ -0,0 +1,5156 @@ +{ + "swagger": "2.0", + "info": { + "title": "Microsoft NetApp", + "description": "Microsoft NetApp Azure Resource Provider specification", + "version": "2021-02-01", + "x-ms-code-generation-settings": { + "name": "AzureNetAppFilesManagementClient" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "schemes": [ + "https" + ], + "host": "management.azure.com", + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/providers/Microsoft.NetApp/operations": { + "get": { + "tags": [ + "Operations" + ], + "summary": "Describes the Resource Provider", + "description": "Lists all of the available Microsoft.NetApp Rest API operations", + "operationId": "Operations_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-pageable": { + "nextLinkName": null + }, + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.NetApp/locations/{location}/checkNameAvailability": { + "post": { + "tags": [ + "NetApp Resource" + ], + "summary": "Check resource name availability", + "description": "Check if a resource name is available.", + "operationId": "NetAppResource_CheckNameAvailability", + "parameters": [ + { + "name": "body", + "in": "body", + "description": "Name availability request.", + "required": true, + "schema": { + "$ref": "#/definitions/ResourceNameAvailabilityRequest" + }, + "x-ms-client-flatten": true + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/location" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CheckAvailabilityResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "CheckNameAvailability": { + "$ref": "examples/CheckNameAvailability.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.NetApp/locations/{location}/checkFilePathAvailability": { + "post": { + "tags": [ + "NetApp Resource" + ], + "summary": "Check file path availability", + "description": "Check if a file path is available.", + "operationId": "NetAppResource_CheckFilePathAvailability", + "parameters": [ + { + "name": "body", + "in": "body", + "description": "File path availability request.", + "required": true, + "schema": { + "$ref": "#/definitions/ResourceNameAvailabilityRequest" + }, + "x-ms-client-flatten": true + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/location" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CheckAvailabilityResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "CheckFilePathAvailability": { + "$ref": "examples/CheckFilePathAvailability.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.NetApp/locations/{location}/checkQuotaAvailability": { + "post": { + "tags": [ + "NetApp Resource" + ], + "summary": "Check quota availability", + "description": "Check if a quota is available.", + "operationId": "NetAppResource_CheckQuotaAvailability", + "parameters": [ + { + "name": "body", + "in": "body", + "description": "Quota availability request.", + "required": true, + "schema": { + "$ref": "#/definitions/QuotaAvailabilityRequest" + }, + "x-ms-client-flatten": true + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/location" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CheckAvailabilityResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "CheckQuotaAvailability": { + "$ref": "examples/CheckQuotaAvailability.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts": { + "get": { + "summary": "Describe all NetApp Accounts in a resource group", + "description": "List and describe all NetApp accounts in the resource group.", + "tags": [ + "NetApp Accounts" + ], + "operationId": "Accounts_List", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/netAppAccountList" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "Accounts_List": { + "$ref": "examples/Accounts_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}": { + "get": { + "summary": "Describe a NetApp Account", + "description": "Get the NetApp account", + "tags": [ + "NetApp Accounts" + ], + "operationId": "Accounts_Get", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/netAppAccount" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "Accounts_Get": { + "$ref": "examples/Accounts_Get.json" + } + } + }, + "put": { + "tags": [ + "NetApp Accounts" + ], + "operationId": "Accounts_CreateOrUpdate", + "summary": "Create or update a NetApp account", + "description": "Create or update the specified NetApp account within the resource group", + "parameters": [ + { + "name": "body", + "description": "NetApp Account object supplied in the body of the operation.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/netAppAccount" + } + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - account updated", + "schema": { + "$ref": "#/definitions/netAppAccount" + } + }, + "201": { + "description": "Account created", + "schema": { + "$ref": "#/definitions/netAppAccount" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Accounts_CreateOrUpdate": { + "$ref": "examples/Accounts_CreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "NetApp Accounts" + ], + "operationId": "Accounts_Delete", + "summary": "Delete a NetApp account", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "description": "Delete the specified NetApp account", + "responses": { + "202": { + "description": "Accepted -- Delete request accepted; operation will complete asynchronously" + }, + "204": { + "description": "NoContent -- Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Accounts_Delete": { + "$ref": "examples/Accounts_Delete.json" + } + } + }, + "patch": { + "tags": [ + "NetApp Accounts" + ], + "operationId": "Accounts_Update", + "summary": "Update a NetApp account", + "description": "Patch the specified NetApp account", + "parameters": [ + { + "name": "body", + "description": "NetApp Account object supplied in the body of the operation.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/netAppAccountPatch" + } + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - account updated", + "schema": { + "$ref": "#/definitions/netAppAccount" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/netAppAccount" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/cloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Accounts_Update": { + "$ref": "examples/Accounts_Update.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools": { + "get": { + "summary": "Describe all Capacity Pools", + "description": "List all capacity pools in the NetApp Account", + "tags": [ + "Capacity Pools" + ], + "operationId": "Pools_List", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/capacityPoolList" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "Pools_List": { + "$ref": "examples/Pools_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}": { + "get": { + "summary": "Describe a Capacity Pool", + "description": "Get details of the specified capacity pool", + "tags": [ + "Capacity Pools" + ], + "operationId": "Pools_Get", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/capacityPool" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "Pools_Get": { + "$ref": "examples/Pools_Get.json" + } + } + }, + "put": { + "tags": [ + "Capacity Pools" + ], + "operationId": "Pools_CreateOrUpdate", + "summary": "Create or Update the specified capacity pool within the resource group", + "description": "Create or Update a capacity pool", + "parameters": [ + { + "name": "body", + "description": "Capacity pool object supplied in the body of the operation.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/capacityPool" + } + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - pool updated", + "schema": { + "$ref": "#/definitions/capacityPool" + } + }, + "201": { + "description": "Pool created", + "schema": { + "$ref": "#/definitions/capacityPool" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Pools_CreateOrUpdate": { + "$ref": "examples/Pools_CreateOrUpdate.json" + } + } + }, + "patch": { + "tags": [ + "Capacity Pools" + ], + "operationId": "Pools_Update", + "summary": "Update a capacity pool", + "description": "Patch the specified capacity pool", + "parameters": [ + { + "name": "body", + "description": "Capacity pool object supplied in the body of the operation.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/capacityPoolPatch" + } + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/capacityPool" + } + }, + "202": { + "description": "Accepted -- Update request accepted; operation will complete asynchronously" + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Pools_Update": { + "$ref": "examples/Pools_Update.json" + } + } + }, + "delete": { + "tags": [ + "Capacity Pools" + ], + "operationId": "Pools_Delete", + "summary": "Delete a capacity pool", + "description": "Delete the specified capacity pool", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted -- Delete request accepted; operation will complete asynchronously" + }, + "204": { + "description": "NoContent -- Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Pools_Delete": { + "$ref": "examples/Pools_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes": { + "get": { + "summary": "Describe all volumes", + "description": "List all volumes within the capacity pool", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "tags": [ + "Volumes" + ], + "operationId": "Volumes_List", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/volumeList" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "Volumes_List": { + "$ref": "examples/Volumes_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}": { + "get": { + "tags": [ + "Volumes" + ], + "operationId": "Volumes_Get", + "summary": "Describe a volume", + "description": "Get the details of the specified volume", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/volume" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "Volumes_Get": { + "$ref": "examples/Volumes_Get.json" + } + } + }, + "put": { + "tags": [ + "Volumes" + ], + "operationId": "Volumes_CreateOrUpdate", + "summary": "Create or Update a volume", + "description": "Create or update the specified volume within the capacity pool", + "parameters": [ + { + "name": "body", + "description": "Volume object supplied in the body of the operation.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/volume" + } + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Ok - volume updated", + "schema": { + "$ref": "#/definitions/volume" + } + }, + "201": { + "description": "Volume created", + "schema": { + "$ref": "#/definitions/volume" + } + }, + "202": { + "description": "Accepted -- Create request accepted; operation will complete asynchronously" + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Volumes_CreateOrUpdate": { + "$ref": "examples/Volumes_CreateOrUpdate.json" + } + } + }, + "patch": { + "tags": [ + "Volumes" + ], + "operationId": "Volumes_Update", + "summary": "Update a volume", + "description": "Patch the specified volume", + "parameters": [ + { + "name": "body", + "description": "Volume object supplied in the body of the operation.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/volumePatch" + } + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/volume" + } + }, + "202": { + "description": "Accepted -- Create or update request accepted; operation will complete asynchronously" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/cloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Volumes_Update": { + "$ref": "examples/Volumes_Update.json" + } + } + }, + "delete": { + "tags": [ + "Volumes" + ], + "operationId": "Volumes_Delete", + "summary": "Delete a volume", + "description": "Delete the specified volume", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted -- Delete request accepted; operation will complete asynchronously" + }, + "204": { + "description": "NoContent -- Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Volumes_Delete": { + "$ref": "examples/Volumes_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}/revert": { + "post": { + "tags": [ + "Volumes Revert" + ], + "summary": "Revert a volume to one of its snapshots", + "description": "Revert a volume to the snapshot specified in the body", + "operationId": "Volumes_Revert", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "body", + "description": "Object for snapshot to revert supplied in the body of the operation.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/volumeRevert" + } + } + ], + "responses": { + "200": { + "description": "OK - terminal state" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Volumes_Revert": { + "$ref": "examples/Volumes_Revert.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}/breakReplication": { + "post": { + "tags": [ + "Volumes Replication" + ], + "summary": "Break volume replication", + "description": "Break the replication connection on the destination volume", + "operationId": "Volumes_BreakReplication", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "body", + "description": "Optional body to force break the replication.", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/breakReplicationRequest" + } + } + ], + "responses": { + "200": { + "description": "OK - terminal state" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Volumes_BreakReplication": { + "$ref": "examples/Volumes_BreakReplication.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}/replicationStatus": { + "get": { + "tags": [ + "Volumes Replication" + ], + "summary": "Get volume replication status", + "description": "Get the status of the replication", + "operationId": "Volumes_ReplicationStatus", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/replicationStatus" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "Volumes_ReplicationStatus": { + "$ref": "examples/Volumes_ReplicationStatus.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}/resyncReplication": { + "post": { + "tags": [ + "Volumes Replication" + ], + "summary": "Resync volume replication", + "description": "Resync the connection on the destination volume. If the operation is ran on the source volume it will reverse-resync the connection and sync from destination to source.", + "operationId": "Volumes_ResyncReplication", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - terminal state" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Volumes_ResyncReplication": { + "$ref": "examples/Volumes_ResyncReplication.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}/deleteReplication": { + "post": { + "tags": [ + "Volumes Replication" + ], + "summary": "Delete volume replication", + "description": "Delete the replication connection on the destination volume, and send release to the source replication", + "operationId": "Volumes_DeleteReplication", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - terminal state" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Volumes_DeleteReplication": { + "$ref": "examples/Volumes_DeleteReplication.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}/authorizeReplication": { + "post": { + "tags": [ + "Volumes Replication" + ], + "summary": "Authorize source volume replication", + "description": "Authorize the replication connection on the source volume", + "operationId": "Volumes_AuthorizeReplication", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "body", + "description": "Authorize request object supplied in the body of the operation.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/authorizeRequest" + } + } + ], + "responses": { + "200": { + "description": "OK - terminal state" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Volumes_AuthorizeReplication": { + "$ref": "examples/Volumes_AuthorizeReplication.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}/reinitializeReplication": { + "post": { + "tags": [ + "Volumes Replication" + ], + "summary": "ReInitialize volume replication", + "description": "Re-Initializes the replication connection on the destination volume", + "operationId": "Volumes_ReInitializeReplication", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - terminal state" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Volumes_ReInitializeReplication": { + "$ref": "examples/Volumes_ReInitializeReplication.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}/poolChange": { + "post": { + "tags": [ + "Pool Change" + ], + "summary": "Change pool for volume", + "description": "Moves volume to another pool", + "operationId": "Volumes_PoolChange", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "body", + "description": "Move volume to the pool supplied in the body of the operation.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/poolChangeRequest" + } + } + ], + "responses": { + "200": { + "description": "OK - terminal state" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Volumes_AuthorizeReplication": { + "$ref": "examples/Volumes_PoolChange.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}/snapshots": { + "get": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_List", + "summary": "Describe all snapshots", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "description": "List all snapshots associated with the volume", + "x-ms-pageable": { + "nextLinkName": null + }, + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/snapshotsList" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "Snapshots_List": { + "$ref": "examples/Snapshots_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}/snapshots/{snapshotName}": { + "get": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_Get", + "summary": "Describe a snapshot", + "description": "Get details of the specified snapshot", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/SnapshotName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/snapshot" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "Snapshots_Get": { + "$ref": "examples/Snapshots_Get.json" + } + } + }, + "put": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_Create", + "summary": "Create a snapshot", + "description": "Create the specified snapshot within the given volume", + "parameters": [ + { + "name": "body", + "description": "Snapshot object supplied in the body of the operation.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/snapshot" + } + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/SnapshotName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Snapshot created", + "schema": { + "$ref": "#/definitions/snapshot" + } + }, + "202": { + "description": "Accepted -- Create request accepted; operation will complete asynchronously" + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Snapshots_Create": { + "$ref": "examples/Snapshots_Create.json" + } + } + }, + "patch": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_Update", + "summary": "Update a snapshot", + "description": "Patch a snapshot", + "parameters": [ + { + "name": "body", + "description": "Snapshot object supplied in the body of the operation.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/snapshotPatch" + } + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/SnapshotName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/snapshot" + } + }, + "202": { + "description": "Accepted -- Update request accepted; operation will complete asynchronously" + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Snapshots_Update": { + "$ref": "examples/Snapshots_Update.json" + } + } + }, + "delete": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_Delete", + "summary": "Delete a snapshot", + "description": "Delete snapshot", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/SnapshotName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted -- Delete request accepted; operation will complete asynchronously" + }, + "204": { + "description": "NoContent -- Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Snapshots_Delete": { + "$ref": "examples/Snapshots_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/snapshotPolicies": { + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "get": { + "tags": [ + "Snapshot Policy" + ], + "operationId": "SnapshotPolicies_List", + "description": "List snapshot policy", + "x-ms-pageable": { + "nextLinkName": null + }, + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/snapshotPoliciesList" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "SnapshotPolicies_List": { + "$ref": "examples/SnapshotPolicies_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/snapshotPolicies/{snapshotPolicyName}": { + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/SnapshotPolicyName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "get": { + "tags": [ + "Snapshot Policy" + ], + "operationId": "SnapshotPolicies_Get", + "description": "Get a snapshot Policy", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/snapshotPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "SnapshotPolicies_Get": { + "$ref": "examples/SnapshotPolicies_Get.json" + } + } + }, + "put": { + "tags": [ + "Snapshot Policy" + ], + "operationId": "SnapshotPolicies_Create", + "description": "Create a snapshot policy", + "parameters": [ + { + "name": "body", + "description": "Snapshot policy object supplied in the body of the operation.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/snapshotPolicy" + } + } + ], + "responses": { + "200": { + "description": "OK - snapshot Policy updated", + "schema": { + "$ref": "#/definitions/snapshotPolicy" + } + }, + "201": { + "description": "Snapshot Policy created", + "schema": { + "$ref": "#/definitions/snapshotPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": false, + "x-ms-examples": { + "SnapshotPolicies_Create": { + "$ref": "examples/SnapshotPolicies_Create.json" + } + } + }, + "patch": { + "tags": [ + "Snapshot Policy" + ], + "operationId": "SnapshotPolicies_Update", + "description": "Patch a snapshot policy", + "parameters": [ + { + "name": "body", + "description": "Snapshot policy object supplied in the body of the operation.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/snapshotPolicyPatch" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/snapshotPolicy" + } + }, + "202": { + "description": "Accepted -- Create or update request accepted; operation will complete asynchronously", + "schema": { + "$ref": "#/definitions/snapshotPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "SnapshotPolicies_Update": { + "$ref": "examples/SnapshotPolicies_Update.json" + } + } + }, + "delete": { + "tags": [ + "Snapshot Policy" + ], + "operationId": "SnapshotPolicies_Delete", + "description": "Delete snapshot policy", + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted -- Create or update request accepted; operation will complete asynchronously" + }, + "204": { + "description": "NoContent -- Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "SnapshotPolicies_Delete": { + "$ref": "examples/SnapshotPolicies_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/snapshotPolicies/{snapshotPolicyName}/volumes": { + "get": { + "tags": [ + "Snapshot Policy List Volumes" + ], + "summary": "Get volumes for snapshot policy", + "description": "Get volumes associated with snapshot policy", + "operationId": "SnapshotPolicies_ListVolumes", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/SnapshotPolicyName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/snapshotPolicyVolumeList" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "SnapshotPolicies_ListVolumes": { + "$ref": "examples/SnapshotPolicies_ListVolumes.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}/backupStatus": { + "get": { + "tags": [ + "Backups" + ], + "summary": "Get volume's backup status", + "description": "Get the status of the backup for a volume", + "operationId": "Backups_GetStatus", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/backupStatus" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "Volumes_BackupStatus": { + "$ref": "examples/Volumes_BackupStatus.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/accountBackups": { + "get": { + "tags": [ + "Backups" + ], + "summary": "List Backups for a Netapp Account", + "description": "List all Backups for a Netapp Account", + "operationId": "AccountBackups_List", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-pageable": { + "nextLinkName": null + }, + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/backupsList" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "AccountBackups_List": { + "$ref": "examples/Backups_Account_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/accountBackups/{backupName}": { + "get": { + "tags": [ + "Backups" + ], + "summary": "Get Backup for a Netapp Account", + "description": "Gets the specified backup for a Netapp Account", + "operationId": "AccountBackups_Get", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/BackupName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/backup" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "AccountBackups_Get": { + "$ref": "examples/Backups_Account_Get.json" + } + } + }, + "delete": { + "tags": [ + "Backups" + ], + "summary": "Delete Backup for a Netapp Account", + "description": "Delete the specified Backup for a Netapp Account", + "operationId": "AccountBackups_Delete", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/BackupName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted -- Create or update request accepted; operation will complete asynchronously" + }, + "204": { + "description": "NoContent -- Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "AccountBackups_Delete": { + "$ref": "examples/Backups_Account_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}/backups": { + "get": { + "tags": [ + "Backups" + ], + "summary": "List Backups", + "description": "List all backups for a volume", + "operationId": "Backups_List", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-pageable": { + "nextLinkName": null + }, + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/backupsList" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "Backups_List": { + "$ref": "examples/Backups_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}/backups/{backupName}": { + "get": { + "tags": [ + "Backups" + ], + "summary": "Get a backup", + "description": "Gets the specified backup of the volume", + "operationId": "Backups_Get", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/BackupName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/backup" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "Backups_Get": { + "$ref": "examples/Backups_Get.json" + } + } + }, + "put": { + "tags": [ + "Backups" + ], + "summary": "Create a backup", + "description": "Create a backup for the volume", + "operationId": "Backups_Create", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/BackupName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "body", + "description": "Backup object supplied in the body of the operation.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/backup" + } + } + ], + "responses": { + "200": { + "description": "OK created", + "schema": { + "$ref": "#/definitions/backup" + } + }, + "201": { + "description": "Backup created", + "schema": { + "$ref": "#/definitions/backup" + } + }, + "202": { + "description": "Accepted -- Create request accepted; operation will complete asynchronously" + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Backups_Create": { + "$ref": "examples/Backups_Create.json" + } + } + }, + "patch": { + "tags": [ + "Backups" + ], + "summary": "Patch a backup", + "description": "Patch a backup for the volume", + "operationId": "Backups_Update", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/BackupName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "body", + "description": "Backup object supplied in the body of the operation.", + "in": "body", + "schema": { + "$ref": "#/definitions/backupPatch" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/backup" + } + }, + "202": { + "description": "Accepted -- Create or update request accepted; operation will complete asynchronously", + "schema": { + "$ref": "#/definitions/backup" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Backups_Update": { + "$ref": "examples/Backups_Update.json" + } + } + }, + "delete": { + "tags": [ + "Backups" + ], + "summary": "Delete backup", + "description": "Delete a backup of the volume", + "operationId": "Backups_Delete", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/BackupName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted -- Create or update request accepted; operation will complete asynchronously" + }, + "204": { + "description": "NoContent -- Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Backups_Delete": { + "$ref": "examples/Backups_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/backupPolicies": { + "get": { + "tags": [ + "Backup Policy" + ], + "summary": "List backup policies", + "description": "List backup policies for Netapp Account", + "operationId": "BackupPolicies_List", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-pageable": { + "nextLinkName": null + }, + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/backupPoliciesList" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "Backups_List": { + "$ref": "examples/BackupPolicies_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/backupPolicies/{backupPolicyName}": { + "get": { + "tags": [ + "Backup Policy" + ], + "summary": "Get a backup Policy", + "description": "Get a particular backup Policy", + "operationId": "BackupPolicies_Get", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/BackupPolicyName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/backupPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "Backups_Get": { + "$ref": "examples/BackupPolicies_Get.json" + } + } + }, + "put": { + "tags": [ + "Backup Policy" + ], + "summary": "Create a backup policy", + "description": "Create a backup policy for Netapp Account", + "operationId": "BackupPolicies_Create", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/BackupPolicyName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "body", + "description": "Backup policy object supplied in the body of the operation.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/backupPolicy" + } + } + ], + "responses": { + "200": { + "description": "Backup Policy created", + "schema": { + "$ref": "#/definitions/backupPolicy" + } + }, + "201": { + "description": "Backup created", + "schema": { + "$ref": "#/definitions/backupPolicy" + } + }, + "202": { + "description": "Accepted -- Create request accepted; operation will complete asynchronously" + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "BackupPolicies_Create": { + "$ref": "examples/BackupPolicies_Create.json" + } + } + }, + "patch": { + "tags": [ + "Backup Policy" + ], + "summary": "Patch a backup policy", + "description": "Patch a backup policy for Netapp Account", + "operationId": "BackupPolicies_Update", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/BackupPolicyName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "body", + "description": "Backup policy object supplied in the body of the operation.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/backupPolicyPatch" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/backupPolicy" + } + }, + "202": { + "description": "Accepted -- Create or update request accepted; operation will complete asynchronously", + "schema": { + "$ref": "#/definitions/backupPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "BackupPolicies_Update": { + "$ref": "examples/BackupPolicies_Update.json" + } + } + }, + "delete": { + "tags": [ + "Backup Policy" + ], + "summary": "Delete a backup policy", + "description": "Delete backup policy", + "operationId": "BackupPolicies_Delete", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/BackupPolicyName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted -- Create or update request accepted; operation will complete asynchronously" + }, + "204": { + "description": "NoContent -- Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Backups_Delete": { + "$ref": "examples/BackupPolicies_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/vaults": { + "get": { + "tags": [ + "Vaults" + ], + "summary": "List vaults", + "description": "List vaults for a Netapp Account", + "operationId": "Vaults_List", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-pageable": { + "nextLinkName": null + }, + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/vaultList" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "Vaults_List": { + "$ref": "examples/Vaults_List.json" + } + } + } + } + }, + "definitions": { + "OperationListResult": { + "description": "Result of the request to list Cloud Volume operations. It contains a list of operations and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "description": "List of Storage operations supported by the Storage resource provider." + } + } + }, + "Operation": { + "description": "Microsoft.NetApp REST API operation definition.", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}", + "type": "string" + }, + "display": { + "description": "Display metadata associated with the operation.", + "properties": { + "provider": { + "description": "Service provider: Microsoft NetApp.", + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed etc.", + "type": "string" + }, + "operation": { + "description": "Type of operation: get, read, delete, etc.", + "type": "string" + }, + "description": { + "description": "Operation description.", + "type": "string" + } + } + }, + "origin": { + "type": "string", + "description": "The origin of operations." + }, + "properties": { + "$ref": "#/definitions/OperationProperties", + "description": "Properties of operation, include metric specifications.", + "x-ms-client-flatten": true + } + } + }, + "OperationProperties": { + "description": "Properties of operation, include metric specifications.", + "properties": { + "serviceSpecification": { + "$ref": "#/definitions/ServiceSpecification", + "description": "One property of operation, include metric specifications." + } + } + }, + "ServiceSpecification": { + "description": "One property of operation, include metric specifications.", + "properties": { + "metricSpecifications": { + "description": "Metric specifications of operation.", + "type": "array", + "items": { + "$ref": "#/definitions/MetricSpecification" + } + } + } + }, + "MetricSpecification": { + "description": "Metric specification of operation.", + "properties": { + "name": { + "type": "string", + "description": "Name of metric specification." + }, + "displayName": { + "type": "string", + "description": "Display name of metric specification." + }, + "displayDescription": { + "type": "string", + "description": "Display description of metric specification." + }, + "unit": { + "type": "string", + "description": "Unit could be Bytes or Count." + }, + "dimensions": { + "description": "Dimensions of blobs, including blob type and access tier.", + "type": "array", + "items": { + "$ref": "#/definitions/Dimension" + } + }, + "aggregationType": { + "type": "string", + "description": "Aggregation type could be Average." + }, + "fillGapWithZero": { + "type": "boolean", + "description": "The property to decide fill gap with zero or not." + }, + "category": { + "type": "string", + "description": "The category this metric specification belong to, could be Capacity." + }, + "resourceIdDimensionNameOverride": { + "type": "string", + "description": "Account Resource Id." + } + } + }, + "Dimension": { + "description": "Dimension of blobs, possibly be blob type or access tier.", + "properties": { + "name": { + "type": "string", + "description": "Display name of dimension." + }, + "displayName": { + "type": "string", + "description": "Display name of dimension." + } + } + }, + "CheckAvailabilityResponse": { + "description": "Information regarding availability of a resource.", + "type": "object", + "properties": { + "isAvailable": { + "description": "true indicates name is valid and available. false indicates the name is invalid, unavailable, or both.", + "type": "boolean" + }, + "reason": { + "description": "Invalid indicates the name provided does not match Azure App Service naming requirements. AlreadyExists indicates that the name is already in use and is therefore unavailable.", + "enum": [ + "Invalid", + "AlreadyExists" + ], + "type": "string", + "x-ms-enum": { + "name": "InAvailabilityReasonType", + "modelAsString": true + } + }, + "message": { + "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 resource name is already in use, and direct them to select a different name.", + "type": "string" + } + } + }, + "ResourceNameAvailabilityRequest": { + "description": "Resource name availability request content.", + "required": [ + "name", + "type", + "resourceGroup" + ], + "type": "object", + "properties": { + "name": { + "description": "Resource name to verify.", + "type": "string" + }, + "type": { + "description": "Resource type used for verification.", + "enum": [ + "Microsoft.NetApp/netAppAccounts", + "Microsoft.NetApp/netAppAccounts/capacityPools", + "Microsoft.NetApp/netAppAccounts/capacityPools/volumes", + "Microsoft.NetApp/netAppAccounts/capacityPools/volumes/snapshots" + ], + "type": "string", + "x-ms-enum": { + "name": "CheckNameResourceTypes", + "modelAsString": true + } + }, + "resourceGroup": { + "description": "Resource group name.", + "type": "string" + } + } + }, + "QuotaAvailabilityRequest": { + "description": "Quota availability request content.", + "required": [ + "name", + "type", + "resourceGroup" + ], + "type": "object", + "properties": { + "name": { + "description": "Name of the resource to verify.", + "type": "string" + }, + "type": { + "description": "Resource type used for verification.", + "enum": [ + "Microsoft.NetApp/netAppAccounts", + "Microsoft.NetApp/netAppAccounts/capacityPools", + "Microsoft.NetApp/netAppAccounts/capacityPools/volumes", + "Microsoft.NetApp/netAppAccounts/capacityPools/volumes/snapshots" + ], + "type": "string", + "x-ms-enum": { + "name": "CheckQuotaNameResourceTypes", + "modelAsString": true + } + }, + "resourceGroup": { + "description": "Resource group name.", + "type": "string" + } + } + }, + "netAppAccountList": { + "description": "List of NetApp account resources", + "type": "object", + "properties": { + "value": { + "type": "array", + "description": "Multiple NetApp accounts", + "items": { + "$ref": "#/definitions/netAppAccount" + } + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + } + }, + "netAppAccount": { + "description": "NetApp account resource", + "type": "object", + "x-ms-azure-resource": true, + "required": [ + "location" + ], + "properties": { + "location": { + "type": "string", + "description": "Resource location", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource Id" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Resource name" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type" + }, + "tags": { + "description": "Resource tags", + "$ref": "#/definitions/resourceTags" + }, + "properties": { + "description": "NetApp Account properties", + "$ref": "#/definitions/accountProperties", + "x-ms-client-flatten": true + }, + "systemData": { + "readOnly": true, + "description": "The system meta data relating to this resource.", + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData" + } + } + }, + "netAppAccountPatch": { + "description": "NetApp account patch resource", + "type": "object", + "x-ms-azure-resource": true, + "properties": { + "location": { + "type": "string", + "description": "Resource location" + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource Id" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Resource name" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type" + }, + "tags": { + "description": "Resource tags", + "$ref": "#/definitions/resourceTags" + }, + "properties": { + "description": "NetApp Account properties", + "$ref": "#/definitions/accountProperties", + "x-ms-client-flatten": true + } + } + }, + "accountProperties": { + "description": "NetApp account properties", + "type": "object", + "properties": { + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "Azure lifecycle management" + }, + "activeDirectories": { + "description": "Active Directories", + "type": "array", + "items": { + "$ref": "#/definitions/activeDirectory" + } + }, + "encryption": { + "description": "Encryption settings", + "$ref": "#/definitions/accountEncryption" + } + } + }, + "activeDirectory": { + "description": "Active Directory", + "type": "object", + "properties": { + "activeDirectoryId": { + "type": "string", + "x-nullable": true, + "description": "Id of the Active Directory" + }, + "username": { + "type": "string", + "description": "Username of Active Directory domain administrator" + }, + "password": { + "type": "string", + "x-ms-secret": true, + "description": "Plain text password of Active Directory domain administrator, value is masked in the response" + }, + "domain": { + "type": "string", + "description": "Name of the Active Directory domain" + }, + "dns": { + "type": "string", + "description": "Comma separated list of DNS server IP addresses (IPv4 only) for the Active Directory domain", + "pattern": "^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)((, ?)(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?))*$", + "example": "101.102.103.104,101.102.103.105" + }, + "status": { + "type": "string", + "description": "Status of the Active Directory", + "readOnly": true, + "enum": [ + "Created", + "Updating", + "InUse", + "Deleted", + "Error" + ], + "x-ms-enum": { + "name": "ActiveDirectoryStatus", + "modelAsString": true, + "values": [ + { + "value": "Created", + "description": "Active Directory created but not in use" + }, + { + "value": "InUse", + "description": "Active Directory in use by SMB Volume" + }, + { + "value": "Deleted", + "description": "Active Directory Deleted" + }, + { + "value": "Error", + "description": "Error with the Active Directory" + }, + { + "value": "Updating", + "description": "Active Directory Updating" + } + ] + } + }, + "statusDetails": { + "type": "string", + "description": "Any details in regards to the Status of the Active Directory", + "readOnly": true + }, + "smbServerName": { + "type": "string", + "description": "NetBIOS name of the SMB server. This name will be registered as a computer account in the AD and used to mount volumes" + }, + "organizationalUnit": { + "type": "string", + "default": "CN=Computers", + "description": "The Organizational Unit (OU) within the Windows Active Directory" + }, + "site": { + "type": "string", + "description": "The Active Directory site the service will limit Domain Controller discovery to" + }, + "backupOperators": { + "description": "Users to be added to the Built-in Backup Operator active directory group. A list of unique usernames without domain specifier", + "type": "array", + "items": { + "type": "string", + "maxLength": 255, + "minLength": 1 + }, + "example": [ + "user1", + "user2" + ] + }, + "kdcIP": { + "type": "string", + "pattern": "^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)((, ?)(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?))*$", + "description": "kdc server IP addresses for the active directory machine. This optional parameter is used only while creating kerberos volume.", + "example": "101.102.103.104" + }, + "adName": { + "type": "string", + "maxLength": 64, + "minLength": 1, + "description": "Name of the active directory machine. This optional parameter is used only while creating kerberos volume", + "example": "ADServerName" + }, + "serverRootCACertificate": { + "type": "string", + "maxLength": 10240, + "minLength": 1, + "description": "When LDAP over SSL/TLS is enabled, the LDAP client is required to have base64 encoded Active Directory Certificate Service's self-signed root CA certificate, this optional parameter is used only for dual protocol with LDAP user-mapping volumes.", + "x-ms-secret": true, + "example": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURuVENDQW9XZ0F3SUJBZ0lRR3FXdnRxeHBvSTFJV3Z4VGdJbElWREFOQmdrcWhraUc5dzBCQVFzRkFEQlYKTVJNd0VRWUtDWkltaVpQeUxHUUJHUllEWTI5dE1SY3dGUVlLQ1pJbWlaUHlMR1FCR1JZSGFHRnlhV3R5WWpFbApNQ01HQTFVRUF4TWNhR0Z5YVd0eVlpMVhTVTR0TWtKUFZrRkZTMEkwTkVJdFEwRXRNakFlRncweU1EQTFNRFV3Ck56TTVORGxhRncweU1EQTFNRFl3TnpRNU5EaGFNRlV4RXpBUkJnb0praWFKay9Jc1pBRVpGZ05qYjIweEZ6QVYKQmdvSmtpYUprL0lzWkFFWkZnZG9ZWEpwYTNKaU1TVXdJd1lEVlFRREV4eG9ZWEpwYTNKaUxWZEpUaTB5UWs5VwpRVVZMUWpRMFFpMURRUzB5TUlJQklqQU5CZ2txaGtpRzl3MEJBUUVGQUFPQ0FROEFNSUlCQ2dLQ0FRRUFqMHByCnhaaXpNaDBqYnRwN1ZOc0JrRVJ2MVpZT0MzMEtqaGRWdEExRm1MeFM2cXlycmpMZUdXOXRSd2ZnUkR0eVBodTIKZVJTcVpTUjF6Z1hZR0s0Nys3Y3F0YnB2UElOektCb0dOWERIVTNxVWlleXJWSjFDVzRKNjJodUdrbUV1VVVkMApKMXBxNTVxbjk1SmRUbWh1dmZlTUxxeHB5c01nbGVnY281ZFhoN0hsQkhwaTNKMFN4ZnhVWmxKMVZiOFJZVEZhCkJiMGFlTVZaRzRKeVREaktiMlR1TmFXOG1aUE5vOFBMRDRocjdndFNZUEQvQ1dVVGV5QlpoZC9LTzNPczlWVEIKYmpLUGtWd0J2WEs2SlFMSGprNFBHS3VYZDhaWVFyajBtOWNIZDNmcWNYTXlQUnQ2TlJ4ak0yMTUxckFzSkVhNgpWZC9ta056akpXalBrT2VZUVFJREFRQUJvMmt3WnpBVEJna3JCZ0VFQVlJM0ZBSUVCaDRFQUVNQVFUQU9CZ05WCkhROEJBZjhFQkFNQ0FZWXdEd1lEVlIwVEFRSC9CQVV3QXdFQi96QWRCZ05WSFE0RUZnUVVDVEc2ODJSay9kMysKWGtHa0VMakRFMjI4ZjNnd0VBWUpLd1lCQkFHQ054VUJCQU1DQVFBd0RRWUpLb1pJaHZjTkFRRUxCUUFEZ2dFQgpBR1RjTTNnWExIU05wS014RHEvUFpZbWZCMmNlN3VhMmxxbXpzZSt4QmthSTE0WXdzZE5ZQjZBVTNFWDM3QWpZCjd3bm9xQzY1N0U2RVhTODVDckoyNXJNTHo4OEtONGI3cUg5RUowSS9XVHg5YTdUT0ZENENWQThuL0xwNGh1Ym4KNlBFalY5NFlZWXBXTG1hTkkvbGFReWsxSHVJbDFSTCttVDFnSWQ4ZWZXZ1UvNmlVVEw3eGMrdjkyNHBuTHhISwpOSnNTV3c0NFk5a0R5SU9KOXFjWUlBN1lhTkxPZTRjSysvQlRvdDh0dVVKT1hHLzdBRmtxR2EyQVA4MmFZOStKCnkwSmU2OG5nTHJ1dVU4VHpneVpqdkFHcTRrVEVOdWFoaFdHVC9KWkEzOXhSNUV4MmNMUUplcE5NdnlZbUZ3Z1UKME8zYlA0OWNBVFVCMXoyQ3Y5aTRQbVk9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K" + }, + "aesEncryption": { + "type": "boolean", + "description": "If enabled, AES encryption will be enabled for SMB communication." + }, + "ldapSigning": { + "type": "boolean", + "description": "Specifies whether or not the LDAP traffic needs to be signed." + }, + "securityOperators": { + "type": "array", + "description": "Domain Users in the Active directory to be given SeSecurityPrivilege privilege (Needed for SMB Continuously available shares for SQL). A list of unique usernames without domain specifier", + "items": { + "type": "string", + "maxLength": 255, + "minLength": 1 + }, + "example": [ + "user1", + "user2" + ] + }, + "ldapOverTLS": { + "type": "boolean", + "description": "Specifies whether or not the LDAP traffic needs to be secured via TLS." + }, + "allowLocalNfsUsersWithLdap": { + "type": "boolean", + "description": " If enabled, NFS client local users can also (in addition to LDAP users) access the NFS volumes." + } + } + }, + "accountEncryption": { + "type": "object", + "description": "Encryption settings", + "properties": { + "keySource": { + "type": "string", + "description": "Encryption Key Source. Possible values are: 'Microsoft.NetApp'." + } + } + }, + "capacityPoolList": { + "description": "List of capacity pool resources", + "type": "object", + "properties": { + "value": { + "description": "List of Capacity pools", + "type": "array", + "items": { + "$ref": "#/definitions/capacityPool" + } + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + } + }, + "capacityPool": { + "description": "Capacity pool resource", + "type": "object", + "x-ms-azure-resource": true, + "required": [ + "location", + "properties" + ], + "properties": { + "location": { + "type": "string", + "description": "Resource location", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource Id" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Resource name" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type" + }, + "tags": { + "description": "Resource tags", + "$ref": "#/definitions/resourceTags" + }, + "properties": { + "description": "Capacity pool properties", + "$ref": "#/definitions/poolProperties", + "x-ms-client-flatten": true + } + } + }, + "poolProperties": { + "description": "Pool properties", + "type": "object", + "required": [ + "size", + "serviceLevel" + ], + "properties": { + "poolId": { + "title": "poolId", + "type": "string", + "readOnly": true, + "description": "UUID v4 used to identify the Pool", + "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$", + "maxLength": 36, + "minLength": 36, + "example": "9760acf5-4638-11e7-9bdb-020073ca7778" + }, + "size": { + "title": "size", + "type": "integer", + "format": "int64", + "description": "Provisioned size of the pool (in bytes). Allowed values are in 4TiB chunks (value must be multiply of 4398046511104).", + "minimum": 4398046511104, + "maximum": 549755813888000 + }, + "serviceLevel": { + "title": "serviceLevel", + "type": "string", + "description": "The service level of the file system", + "enum": [ + "Standard", + "Premium", + "Ultra" + ], + "x-ms-enum": { + "name": "ServiceLevel", + "modelAsString": true, + "values": [ + { + "value": "Standard", + "description": "Standard service level" + }, + { + "value": "Premium", + "description": "Premium service level" + }, + { + "value": "Ultra", + "description": "Ultra service level" + } + ] + }, + "example": "Ultra", + "default": "Premium" + }, + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "Azure lifecycle management" + }, + "totalThroughputMibps": { + "type": "number", + "description": "Total throughput of pool in Mibps", + "example": 164.221, + "readOnly": true + }, + "utilizedThroughputMibps": { + "type": "number", + "description": "Utilized throughput of pool in Mibps", + "example": 164.221, + "readOnly": true + }, + "qosType": { + "title": "qosType", + "type": "string", + "description": "The qos type of the pool", + "enum": [ + "Auto", + "Manual" + ], + "x-ms-enum": { + "name": "qosType", + "modelAsString": true, + "values": [ + { + "value": "Auto", + "description": "qos type Auto" + }, + { + "value": "Manual", + "description": "qos type Manual" + } + ] + }, + "example": "Manual", + "default": "Auto" + } + } + }, + "capacityPoolPatch": { + "description": "Capacity pool patch resource", + "type": "object", + "x-ms-azure-resource": true, + "properties": { + "location": { + "type": "string", + "description": "Resource location" + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource Id" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Resource name" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type" + }, + "tags": { + "description": "Resource tags", + "$ref": "#/definitions/resourceTags" + }, + "properties": { + "description": "Capacity pool properties", + "$ref": "#/definitions/poolPatchProperties", + "x-ms-client-flatten": true + } + } + }, + "poolPatchProperties": { + "description": "Patchable pool properties", + "type": "object", + "properties": { + "size": { + "title": "size", + "type": "integer", + "format": "int64", + "description": "Provisioned size of the pool (in bytes). Allowed values are in 4TiB chunks (value must be multiply of 4398046511104).", + "minimum": 4398046511104, + "maximum": 549755813888000, + "default": 4398046511104 + }, + "qosType": { + "title": "qosType", + "type": "string", + "description": "The qos type of the pool", + "enum": [ + "Auto", + "Manual" + ], + "x-ms-enum": { + "name": "qosType", + "modelAsString": true, + "values": [ + { + "value": "Auto", + "description": "qos type Auto" + }, + { + "value": "Manual", + "description": "qos type Manual" + } + ] + }, + "example": "Manual", + "default": "Auto" + } + } + }, + "volumeList": { + "description": "List of volume resources", + "type": "object", + "properties": { + "value": { + "description": "List of volumes", + "type": "array", + "items": { + "$ref": "#/definitions/volume" + } + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + } + }, + "volume": { + "description": "Volume resource", + "type": "object", + "x-ms-azure-resource": true, + "required": [ + "location", + "properties" + ], + "properties": { + "location": { + "type": "string", + "description": "Resource location", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource Id" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Resource name" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type" + }, + "tags": { + "description": "Resource tags", + "$ref": "#/definitions/resourceTags" + }, + "properties": { + "description": "Volume properties", + "$ref": "#/definitions/volumeProperties", + "x-ms-client-flatten": true + } + } + }, + "resourceIdentity": { + "type": "object", + "description": "Identity for the resource.", + "properties": { + "principalId": { + "description": "Object id of the identity resource", + "type": "string", + "readOnly": true + }, + "tenantId": { + "description": "The tenant id of the resource", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Type of Identity. Supported values are: 'None', 'SystemAssigned'", + "type": "string" + } + } + }, + "resourceTags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Tags are a list of key-value pairs that describe the resource" + }, + "volumeProperties": { + "description": "Volume properties", + "type": "object", + "required": [ + "creationToken", + "usageThreshold", + "subnetId" + ], + "properties": { + "fileSystemId": { + "title": "FileSystem ID", + "type": "string", + "readOnly": true, + "description": "Unique FileSystem Identifier.", + "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$", + "maxLength": 36, + "minLength": 36, + "example": "9760acf5-4638-11e7-9bdb-020073ca7778" + }, + "creationToken": { + "title": "Creation Token or File Path", + "type": "string", + "description": "A unique file path for the volume. Used when creating mount targets", + "pattern": "^[a-zA-Z][a-zA-Z0-9\\-]{0,79}$", + "minLength": 1, + "maxLength": 80, + "example": "some-amazing-filepath" + }, + "serviceLevel": { + "title": "serviceLevel", + "type": "string", + "description": "The service level of the file system", + "enum": [ + "Standard", + "Premium", + "Ultra" + ], + "x-ms-enum": { + "name": "ServiceLevel", + "modelAsString": true, + "values": [ + { + "value": "Standard", + "description": "Standard service level" + }, + { + "value": "Premium", + "description": "Premium service level" + }, + { + "value": "Ultra", + "description": "Ultra service level" + } + ] + }, + "example": "Ultra", + "default": "Premium" + }, + "usageThreshold": { + "title": "usageThreshold", + "type": "integer", + "format": "int64", + "description": "Maximum storage quota allowed for a file system in bytes. This is a soft quota used for alerting only. Minimum size is 100 GiB. Upper limit is 100TiB. Specified in bytes.", + "minimum": 107374182400, + "maximum": 109951162777600, + "default": 107374182400, + "example": 107374182400 + }, + "exportPolicy": { + "title": "exportPolicy", + "description": "Set of export policy rules", + "properties": { + "rules": { + "title": "Export policy rule", + "description": "Export policy rule", + "type": "array", + "items": { + "$ref": "#/definitions/exportPolicyRule" + } + } + } + }, + "protocolTypes": { + "title": "protocolTypes", + "description": "Set of protocol types, default NFSv3, CIFS for SMB protocol", + "type": "array", + "items": { + "type": "string" + }, + "example": [ + "NFSv4.1" + ] + }, + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "Azure lifecycle management" + }, + "snapshotId": { + "title": "Snapshot ID", + "type": "string", + "x-nullable": true, + "description": "UUID v4 or resource identifier used to identify the Snapshot.", + "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}|(\\\\?([^\\/]*[\\/])*)([^\\/]+)$", + "maxLength": 36, + "minLength": 36, + "example": "9760acf5-4638-11e7-9bdb-020073ca3333" + }, + "backupId": { + "title": "Backup ID", + "type": "string", + "description": "UUID v4 or resource identifier used to identify the Backup.", + "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}|(\\\\?([^\\/]*[\\/])*)([^\\/]+)$", + "maxLength": 36, + "minLength": 36, + "example": "9760acf5-4638-11e7-9bdb-020073ca3333" + }, + "baremetalTenantId": { + "title": "Baremetal Tenant ID", + "type": "string", + "readOnly": true, + "description": "Unique Baremetal Tenant Identifier.", + "example": "9560acf5-4e3a-12e7-9bdb-02007cca7779" + }, + "subnetId": { + "type": "string", + "description": "The Azure Resource URI for a delegated subnet. Must have the delegation Microsoft.NetApp/volumes" + }, + "mountTargets": { + "title": "mountTargets", + "type": "array", + "readOnly": true, + "description": "List of mount targets", + "items": { + "$ref": "#/definitions/mountTargetProperties" + } + }, + "volumeType": { + "type": "string", + "description": "What type of volume is this", + "example": "DataProtection" + }, + "dataProtection": { + "title": "DataProtection", + "description": "DataProtection type volumes include an object containing details of the replication", + "properties": { + "backup": { + "title": "Backup", + "description": "Backup Properties", + "type": "object", + "$ref": "#/definitions/volumeBackupProperties" + }, + "replication": { + "title": "Replication", + "description": "Replication properties", + "type": "object", + "$ref": "#/definitions/replicationObject" + }, + "snapshot": { + "title": "Snapshot", + "description": "Snapshot properties.", + "$ref": "#/definitions/volumeSnapshotProperties" + } + } + }, + "isRestoring": { + "type": "boolean", + "description": "Restoring" + }, + "snapshotDirectoryVisible": { + "type": "boolean", + "default": true, + "description": "If enabled (true) the volume will contain a read-only snapshot directory which provides access to each of the volume's snapshots (default to true)." + }, + "kerberosEnabled": { + "type": "boolean", + "description": "Describe if a volume is KerberosEnabled. To be use with swagger version 2020-05-01 or later", + "example": false, + "default": false + }, + "securityStyle": { + "type": "string", + "description": "The security style of volume, default unix, defaults to ntfs for dual protocol or CIFS protocol", + "default": "unix", + "enum": [ + "ntfs", + "unix" + ], + "x-ms-enum": { + "name": "SecurityStyle", + "modelAsString": true + } + }, + "smbEncryption": { + "type": "boolean", + "description": "Enables encryption for in-flight smb3 data. Only applicable for SMB/DualProtocol volume. To be used with swagger version 2020-08-01 or later", + "example": false, + "default": false + }, + "smbContinuouslyAvailable": { + "type": "boolean", + "description": "Enables continuously available share property for smb volume. Only applicable for SMB volume", + "example": false, + "default": false + }, + "throughputMibps": { + "title": "Maximum throughput in Mibps that can be achieved by this volume", + "type": "number", + "default": 0.0, + "example": 128.22, + "maximum": 4500, + "minimum": 0 + }, + "encryptionKeySource": { + "description": "Encryption Key Source. Possible values are: 'Microsoft.NetApp'", + "type": "string" + }, + "ldapEnabled": { + "type": "boolean", + "description": "Specifies whether LDAP is enabled or not for a given NFS volume.", + "example": false, + "default": false + } + } + }, + "exportPolicyRule": { + "description": "Volume Export Policy Rule", + "type": "object", + "properties": { + "ruleIndex": { + "type": "integer", + "description": "Order index", + "format": "int32" + }, + "unixReadOnly": { + "type": "boolean", + "description": "Read only access" + }, + "unixReadWrite": { + "type": "boolean", + "description": "Read and write access" + }, + "kerberos5ReadOnly": { + "type": "boolean", + "description": "Kerberos5 Read only access. To be use with swagger version 2020-05-01 or later", + "example": false, + "default": false + }, + "kerberos5ReadWrite": { + "type": "boolean", + "description": "Kerberos5 Read and write access. To be use with swagger version 2020-05-01 or later", + "example": true, + "default": false + }, + "kerberos5iReadOnly": { + "type": "boolean", + "description": "Kerberos5i Read only access. To be use with swagger version 2020-05-01 or later", + "example": false, + "default": false + }, + "kerberos5iReadWrite": { + "type": "boolean", + "description": "Kerberos5i Read and write access. To be use with swagger version 2020-05-01 or later", + "example": true, + "default": false + }, + "kerberos5pReadOnly": { + "type": "boolean", + "description": "Kerberos5p Read only access. To be use with swagger version 2020-05-01 or later", + "example": false, + "default": false + }, + "kerberos5pReadWrite": { + "type": "boolean", + "description": "Kerberos5p Read and write access. To be use with swagger version 2020-05-01 or later", + "example": true, + "default": false + }, + "cifs": { + "type": "boolean", + "description": "Allows CIFS protocol" + }, + "nfsv3": { + "type": "boolean", + "description": "Allows NFSv3 protocol. Enable only for NFSv3 type volumes" + }, + "nfsv41": { + "type": "boolean", + "description": "Allows NFSv4.1 protocol. Enable only for NFSv4.1 type volumes" + }, + "allowedClients": { + "type": "string", + "description": "Client ingress specification as comma separated string with IPv4 CIDRs, IPv4 host addresses and host names" + }, + "hasRootAccess": { + "type": "boolean", + "description": "Has root access to volume", + "example": true, + "default": true + } + } + }, + "volumeBackupProperties": { + "description": "Volume Backup Properties", + "type": "object", + "properties": { + "backupPolicyId": { + "type": "string", + "description": "Backup Policy Resource ID" + }, + "policyEnforced": { + "type": "boolean", + "description": "Policy Enforced" + }, + "vaultId": { + "type": "string", + "description": "Vault Resource ID" + }, + "backupEnabled": { + "type": "boolean", + "description": "Backup Enabled" + } + } + }, + "replicationObject": { + "description": "Replication properties", + "type": "object", + "required": [ + "replicationSchedule", + "remoteVolumeResourceId" + ], + "properties": { + "replicationId": { + "type": "string", + "description": "Id" + }, + "endpointType": { + "type": "string", + "description": "Indicates whether the local volume is the source or destination for the Volume Replication", + "enum": [ + "src", + "dst" + ], + "x-ms-enum": { + "name": "EndpointType", + "modelAsString": true + } + }, + "replicationSchedule": { + "type": "string", + "description": "Schedule", + "enum": [ + "_10minutely", + "hourly", + "daily" + ], + "x-ms-enum": { + "name": "ReplicationSchedule", + "modelAsString": true + } + }, + "remoteVolumeResourceId": { + "type": "string", + "description": "The resource ID of the remote volume." + }, + "remoteVolumeRegion": { + "type": "string", + "description": "The remote region for the other end of the Volume Replication." + } + } + }, + "volumeSnapshotProperties": { + "description": "Volume Snapshot Properties", + "type": "object", + "properties": { + "snapshotPolicyId": { + "type": "string", + "description": "Snapshot Policy ResourceId" + } + } + }, + "replicationStatus": { + "description": "Replication status", + "type": "object", + "properties": { + "healthy": { + "type": "boolean", + "description": "Replication health check" + }, + "relationshipStatus": { + "type": "string", + "description": "Status of the mirror relationship", + "enum": [ + "Idle", + "Transferring" + ], + "x-ms-enum": { + "name": "RelationshipStatus", + "modelAsString": true + } + }, + "mirrorState": { + "type": "string", + "description": "The status of the replication", + "enum": [ + "Uninitialized", + "Mirrored", + "Broken" + ], + "x-ms-enum": { + "name": "MirrorState", + "modelAsString": true + } + }, + "totalProgress": { + "type": "string", + "description": "The progress of the replication" + }, + "errorMessage": { + "type": "string", + "description": "Displays error message if the replication is in an error state" + } + } + }, + "volumePatch": { + "description": "Volume patch resource", + "type": "object", + "x-ms-azure-resource": true, + "properties": { + "location": { + "type": "string", + "description": "Resource location" + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource Id" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Resource name" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type" + }, + "tags": { + "description": "Resource tags", + "$ref": "#/definitions/resourceTags" + }, + "properties": { + "description": "Patchable volume properties", + "$ref": "#/definitions/volumePatchProperties", + "x-ms-client-flatten": true + } + } + }, + "volumePatchProperties": { + "description": "Patchable volume properties", + "type": "object", + "properties": { + "serviceLevel": { + "title": "serviceLevel", + "type": "string", + "description": "The service level of the file system", + "enum": [ + "Standard", + "Premium", + "Ultra" + ], + "x-ms-enum": { + "name": "ServiceLevel", + "modelAsString": true, + "values": [ + { + "value": "Standard", + "description": "Standard service level" + }, + { + "value": "Premium", + "description": "Premium service level" + }, + { + "value": "Ultra", + "description": "Ultra service level" + } + ] + }, + "example": "Ultra", + "default": "Premium" + }, + "usageThreshold": { + "title": "usageThreshold", + "type": "integer", + "format": "int64", + "description": "Maximum storage quota allowed for a file system in bytes. This is a soft quota used for alerting only. Minimum size is 100 GiB. Upper limit is 100TiB. Specified in bytes.", + "minimum": 107374182400, + "maximum": 109951162777600, + "default": 107374182400, + "example": 107374182400 + }, + "exportPolicy": { + "title": "exportPolicy", + "description": "Set of export policy rules", + "properties": { + "rules": { + "title": "Export policy rule", + "description": "Export policy rule", + "type": "array", + "items": { + "$ref": "#/definitions/exportPolicyRule" + } + } + } + }, + "throughputMibps": { + "title": "Maximum throughput in Mibps that can be achieved by this volume", + "type": "number", + "example": 128.22, + "maximum": 4500, + "minimum": 1 + }, + "dataProtection": { + "title": "DataProtection", + "description": "DataProtection type volumes include an object containing details of the replication", + "properties": { + "backup": { + "title": "Backup", + "description": "Backup Properties", + "type": "object", + "$ref": "#/definitions/volumeBackupProperties" + }, + "snapshot": { + "title": "Snapshot", + "description": "Snapshot properties.", + "$ref": "#/definitions/volumeSnapshotProperties" + } + } + } + } + }, + "mountTarget": { + "description": "Mount Target", + "type": "object", + "required": [ + "location", + "properties" + ], + "properties": { + "location": { + "type": "string", + "description": "Resource location" + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource Id" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Resource name" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type" + }, + "tags": { + "description": "Resource tags", + "$ref": "#/definitions/resourceTags", + "x-ms-client-flatten": true + }, + "properties": { + "description": "Mount Target Properties", + "$ref": "#/definitions/mountTargetProperties", + "x-ms-client-flatten": true + } + } + }, + "mountTargetProperties": { + "description": "Mount target properties", + "type": "object", + "required": [ + "fileSystemId" + ], + "properties": { + "mountTargetId": { + "title": "mountTargetId", + "type": "string", + "readOnly": true, + "description": "UUID v4 used to identify the MountTarget", + "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$", + "maxLength": 36, + "minLength": 36, + "example": "9760acf5-4638-11e7-9bdb-020073ca3333" + }, + "fileSystemId": { + "title": "fileSystemId", + "type": "string", + "description": "UUID v4 used to identify the MountTarget", + "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$", + "maxLength": 36, + "minLength": 36, + "example": "9760acf5-4638-11e7-9bdb-020073ca3333" + }, + "ipAddress": { + "title": "ipAddress", + "description": "The mount target's IPv4 address", + "type": "string", + "readOnly": true, + "example": "1.2.3.4" + }, + "smbServerFqdn": { + "title": "smbServerFQDN", + "description": "The SMB server's Fully Qualified Domain Name, FQDN", + "type": "string", + "example": "fullyqualified.domainname.com" + } + } + }, + "snapshotsList": { + "description": "List of Snapshots", + "type": "object", + "properties": { + "value": { + "description": "A list of Snapshots", + "type": "array", + "items": { + "$ref": "#/definitions/snapshot" + } + } + } + }, + "snapshot": { + "description": "Snapshot of a Volume", + "type": "object", + "x-ms-azure-resource": true, + "required": [ + "location" + ], + "properties": { + "location": { + "type": "string", + "description": "Resource location", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource Id" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Resource name" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type" + }, + "properties": { + "description": "Snapshot Properties", + "$ref": "#/definitions/snapshotProperties", + "x-ms-client-flatten": true + } + } + }, + "snapshotPatch": { + "description": "Snapshot patch", + "type": "object", + "x-ms-azure-resource": true, + "properties": {} + }, + "snapshotProperties": { + "description": "Snapshot properties", + "type": "object", + "properties": { + "snapshotId": { + "title": "snapshotId", + "type": "string", + "readOnly": true, + "description": "UUID v4 used to identify the Snapshot", + "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$", + "maxLength": 36, + "minLength": 36, + "example": "9760acf5-4638-11e7-9bdb-020073ca3333" + }, + "created": { + "title": "name", + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "The creation date of the snapshot", + "example": "2017-08-15 13:23:33" + }, + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "Azure lifecycle management" + } + } + }, + "snapshotPolicyProperties": { + "description": "Snapshot policy properties", + "type": "object", + "properties": { + "hourlySchedule": { + "title": "hourlySchedule", + "description": "Schedule for hourly snapshots", + "type": "object", + "$ref": "#/definitions/hourlySchedule" + }, + "dailySchedule": { + "title": "dailySchedule", + "description": "Schedule for daily snapshots", + "type": "object", + "$ref": "#/definitions/dailySchedule" + }, + "weeklySchedule": { + "title": "weeklySchedule", + "description": "Schedule for weekly snapshots", + "type": "object", + "$ref": "#/definitions/weeklySchedule" + }, + "monthlySchedule": { + "title": "monthlySchedule", + "description": "Schedule for monthly snapshots", + "type": "object", + "$ref": "#/definitions/monthlySchedule" + }, + "enabled": { + "type": "boolean", + "description": "The property to decide policy is enabled or not" + }, + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "Azure lifecycle management" + } + } + }, + "snapshotPolicy": { + "description": "Snapshot policy information", + "type": "object", + "x-ms-azure-resource": true, + "required": [ + "location", + "properties" + ], + "properties": { + "location": { + "type": "string", + "description": "Resource location", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource Id" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Resource name" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type" + }, + "tags": { + "description": "Resource tags", + "$ref": "#/definitions/resourceTags" + }, + "properties": { + "description": "Snapshot policy Properties", + "$ref": "#/definitions/snapshotPolicyProperties", + "x-ms-client-flatten": true + } + } + }, + "snapshotPoliciesList": { + "description": "List of Snapshot Policies", + "type": "object", + "properties": { + "value": { + "description": "A list of snapshot policies", + "type": "array", + "items": { + "$ref": "#/definitions/snapshotPolicy" + } + } + } + }, + "snapshotPolicyDetails": { + "description": "Snapshot policy properties", + "type": "object", + "properties": { + "location": { + "type": "string", + "description": "Resource location", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource Id" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Resource name" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type" + }, + "tags": { + "description": "Resource tags", + "$ref": "#/definitions/resourceTags" + }, + "properties": { + "description": "Snapshot policy Properties", + "$ref": "#/definitions/snapshotPolicyProperties", + "x-ms-client-flatten": true + } + } + }, + "snapshotPolicyPatch": { + "description": "Snapshot policy Details for create and update", + "type": "object", + "properties": { + "location": { + "type": "string", + "description": "Resource location" + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource Id" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Resource name" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type" + }, + "tags": { + "description": "Resource tags", + "$ref": "#/definitions/resourceTags" + }, + "properties": { + "description": "Snapshot Policy properties", + "$ref": "#/definitions/snapshotPolicyProperties", + "x-ms-client-flatten": true + } + } + }, + "snapshotPolicyVolumeList": { + "description": "Volumes associated with snapshot policy", + "type": "object", + "properties": { + "value": { + "description": "List of volumes", + "type": "array", + "items": { + "type": "object", + "readOnly": true, + "description": "Associated volume resource Id" + } + } + } + }, + "hourlySchedule": { + "description": "Hourly Schedule properties", + "type": "object", + "properties": { + "snapshotsToKeep": { + "type": "integer", + "description": "Hourly snapshot count to keep", + "format": "int32" + }, + "minute": { + "type": "integer", + "description": "Indicates which minute snapshot should be taken", + "example": 30, + "format": "int32" + }, + "usedBytes": { + "type": "integer", + "description": "Resource size in bytes, current storage usage for the volume in bytes", + "format": "int64" + } + } + }, + "dailySchedule": { + "description": "Daily Schedule properties", + "type": "object", + "properties": { + "snapshotsToKeep": { + "type": "integer", + "description": "Daily snapshot count to keep", + "format": "int32" + }, + "hour": { + "type": "integer", + "description": "Indicates which hour in UTC timezone a snapshot should be taken", + "example": 11, + "format": "int32" + }, + "minute": { + "type": "integer", + "description": "Indicates which minute snapshot should be taken", + "example": 30, + "format": "int32" + }, + "usedBytes": { + "type": "integer", + "description": "Resource size in bytes, current storage usage for the volume in bytes", + "format": "int64" + } + } + }, + "weeklySchedule": { + "description": "Weekly Schedule properties, make a snapshot every week at a specific day or days", + "type": "object", + "properties": { + "snapshotsToKeep": { + "type": "integer", + "description": "Weekly snapshot count to keep", + "format": "int32" + }, + "day": { + "type": "string", + "description": "Indicates which weekdays snapshot should be taken, accepts a comma separated list of week day names in english", + "example": "Sunday,Monday" + }, + "hour": { + "type": "integer", + "description": "Indicates which hour in UTC timezone a snapshot should be taken", + "example": 11, + "format": "int32" + }, + "minute": { + "type": "integer", + "description": "Indicates which minute snapshot should be taken", + "example": 30, + "format": "int32" + }, + "usedBytes": { + "type": "integer", + "description": "Resource size in bytes, current storage usage for the volume in bytes", + "format": "int64" + } + } + }, + "monthlySchedule": { + "description": "Monthly Schedule properties", + "type": "object", + "properties": { + "snapshotsToKeep": { + "type": "integer", + "description": "Monthly snapshot count to keep", + "format": "int32" + }, + "daysOfMonth": { + "type": "string", + "description": "Indicates which days of the month snapshot should be taken. A comma delimited string.", + "example": "1,11,21" + }, + "hour": { + "type": "integer", + "description": "Indicates which hour in UTC timezone a snapshot should be taken", + "example": 11, + "format": "int32" + }, + "minute": { + "type": "integer", + "description": "Indicates which minute snapshot should be taken", + "example": 30, + "format": "int32" + }, + "usedBytes": { + "type": "integer", + "description": "Resource size in bytes, current storage usage for the volume in bytes", + "format": "int64" + } + } + }, + "volumeRevert": { + "description": "revert a volume to the snapshot", + "type": "object", + "properties": { + "snapshotId": { + "type": "string", + "description": "Resource id of the snapshot" + } + } + }, + "authorizeRequest": { + "description": "Authorize request", + "type": "object", + "properties": { + "remoteVolumeResourceId": { + "type": "string", + "description": "Resource id of the remote volume" + } + } + }, + "breakReplicationRequest": { + "description": "Break replication request", + "type": "object", + "properties": { + "forceBreakReplication": { + "type": "boolean", + "description": "If replication is in status transferring and you want to force break the replication, set to true" + } + } + }, + "poolChangeRequest": { + "description": "Pool change request", + "type": "object", + "required": [ + "newPoolResourceId" + ], + "properties": { + "newPoolResourceId": { + "type": "string", + "description": "Resource id of the pool to move volume to" + } + } + }, + "backupsList": { + "description": "List of Backups", + "type": "object", + "properties": { + "value": { + "description": "A list of Backups", + "type": "array", + "items": { + "$ref": "#/definitions/backup" + } + } + } + }, + "backup": { + "description": "Backup of a Volume", + "type": "object", + "x-ms-azure-resource": true, + "required": [ + "location", + "properties" + ], + "properties": { + "location": { + "type": "string", + "description": "Resource location", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource Id" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Resource name" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type" + }, + "properties": { + "description": "Backup Properties", + "$ref": "#/definitions/backupProperties", + "x-ms-client-flatten": true + } + } + }, + "backupPatch": { + "description": "Backup patch", + "type": "object", + "x-ms-azure-resource": true, + "properties": { + "tags": { + "description": "Resource tags", + "$ref": "#/definitions/resourceTags" + }, + "properties": { + "description": "Backup Properties", + "$ref": "#/definitions/backupProperties", + "x-ms-client-flatten": true + } + } + }, + "backupProperties": { + "description": "Backup properties", + "type": "object", + "properties": { + "backupId": { + "title": "backupId", + "type": "string", + "readOnly": true, + "description": "UUID v4 used to identify the Backup", + "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$", + "maxLength": 36, + "minLength": 36, + "example": "9760acf5-4638-11e7-9bdb-020073ca3333" + }, + "creationDate": { + "title": "name", + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "The creation date of the backup", + "example": "2017-08-15 13:23:33" + }, + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "Azure lifecycle management" + }, + "size": { + "type": "integer", + "readOnly": true, + "description": "Size of backup", + "format": "int64" + }, + "label": { + "type": "string", + "description": "Label for backup" + }, + "backupType": { + "title": "backupType", + "type": "string", + "readOnly": true, + "description": "Type of backup Manual or Scheduled", + "enum": [ + "Manual", + "Scheduled" + ], + "x-ms-enum": { + "name": "backupType", + "modelAsString": true, + "values": [ + { + "value": "Manual", + "description": "Manual backup" + }, + { + "value": "Scheduled", + "description": "Scheduled backup" + } + ] + }, + "example": "Manual" + }, + "failureReason": { + "type": "string", + "readOnly": true, + "description": "Failure reason" + }, + "volumeName": { + "type": "string", + "readOnly": true, + "description": "Volume name" + }, + "useExistingSnapshot": { + "type": "boolean", + "description": "Manual backup an already existing snapshot. This will always be false for scheduled backups and true/false for manual backups", + "example": true, + "default": false + } + } + }, + "backupPolicyProperties": { + "description": "Backup policy properties", + "type": "object", + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "Name of backup policy" + }, + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "Azure lifecycle management" + }, + "dailyBackupsToKeep": { + "type": "integer", + "description": "Daily backups count to keep", + "format": "int32" + }, + "weeklyBackupsToKeep": { + "type": "integer", + "description": "Weekly backups count to keep", + "format": "int32" + }, + "monthlyBackupsToKeep": { + "type": "integer", + "description": "Monthly backups count to keep", + "format": "int32" + }, + "yearlyBackupsToKeep": { + "type": "integer", + "description": "Yearly backups count to keep", + "format": "int32" + }, + "volumesAssigned": { + "type": "integer", + "description": "Volumes using current backup policy", + "format": "int32" + }, + "enabled": { + "type": "boolean", + "description": "The property to decide policy is enabled or not" + }, + "volumeBackups": { + "description": "A list of volumes assigned to this policy", + "type": "array", + "items": { + "$ref": "#/definitions/volumeBackups" + } + } + } + }, + "backupPolicy": { + "description": "Backup policy information", + "type": "object", + "x-ms-azure-resource": true, + "required": [ + "location", + "properties" + ], + "properties": { + "location": { + "type": "string", + "description": "Resource location", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource Id" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Resource name" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type" + }, + "tags": { + "description": "Resource tags", + "$ref": "#/definitions/resourceTags" + }, + "properties": { + "description": "Backup policy Properties", + "$ref": "#/definitions/backupPolicyProperties", + "x-ms-client-flatten": true + } + } + }, + "backupPoliciesList": { + "description": "List of Backup Policies", + "type": "object", + "properties": { + "value": { + "description": "A list of backup policies", + "type": "array", + "items": { + "$ref": "#/definitions/backupPolicy" + } + } + } + }, + "backupPolicyDetails": { + "description": "Backup policy properties", + "x-ms-azure-resource": true, + "type": "object", + "properties": { + "location": { + "type": "string", + "description": "Resource location", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource Id" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Resource name" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type" + }, + "tags": { + "description": "Resource tags", + "$ref": "#/definitions/resourceTags" + }, + "properties": { + "description": "Backup policy Properties", + "$ref": "#/definitions/backupPolicyProperties", + "x-ms-client-flatten": true + } + } + }, + "backupPolicyPatch": { + "description": "Backup policy Details for create and update", + "type": "object", + "x-ms-azure-resource": true, + "properties": { + "location": { + "type": "string", + "description": "Resource location", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource Id" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Resource name" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type" + }, + "tags": { + "description": "Resource tags", + "$ref": "#/definitions/resourceTags" + }, + "properties": { + "description": "Backup policy Properties", + "$ref": "#/definitions/backupPolicyProperties", + "x-ms-client-flatten": true + } + } + }, + "volumeBackups": { + "description": "Volume details using the backup policy", + "type": "object", + "readOnly": true, + "properties": { + "volumeName": { + "type": "string", + "description": "Volume name" + }, + "backupsCount": { + "type": "integer", + "description": "Total count of backups for volume", + "format": "int32" + }, + "policyEnabled": { + "type": "boolean", + "description": "Policy enabled" + } + } + }, + "vaultList": { + "description": "List of Vaults", + "type": "object", + "properties": { + "value": { + "description": "A list of vaults", + "type": "array", + "items": { + "$ref": "#/definitions/vault" + } + } + } + }, + "vault": { + "description": "Vault information", + "type": "object", + "x-ms-azure-resource": true, + "required": [ + "location", + "properties" + ], + "properties": { + "location": { + "type": "string", + "description": "Resource location", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource Id" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Resource name" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type" + }, + "properties": { + "description": "Vault Properties", + "$ref": "#/definitions/vaultProperties", + "x-ms-client-flatten": true + } + } + }, + "vaultProperties": { + "description": "Vault properties", + "type": "object", + "properties": { + "vaultName": { + "type": "string", + "readOnly": false, + "description": "Vault Name" + } + } + }, + "backupStatus": { + "description": "Backup status", + "type": "object", + "properties": { + "healthy": { + "type": "boolean", + "readOnly": true, + "description": "Backup health status" + }, + "relationshipStatus": { + "type": "string", + "readOnly": true, + "description": "Status of the backup mirror relationship", + "enum": [ + "Idle", + "Transferring" + ], + "x-ms-enum": { + "name": "RelationshipStatus", + "modelAsString": true + } + }, + "mirrorState": { + "type": "string", + "readOnly": true, + "description": "The status of the backup", + "enum": [ + "Uninitialized", + "Mirrored", + "Broken" + ], + "x-ms-enum": { + "name": "MirrorState", + "modelAsString": true + } + }, + "unhealthyReason": { + "type": "string", + "readOnly": true, + "description": "Reason for the unhealthy backup relationship" + }, + "errorMessage": { + "type": "string", + "readOnly": true, + "description": "Displays error message if the backup is in an error state" + } + } + }, + "cloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/cloudErrorBody", + "description": "Cloud error body." + } + }, + "description": "An error response from the service." + }, + "cloudErrorBody": { + "x-ms-external": true, + "properties": { + "code": { + "type": "string", + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "type": "string", + "description": "A message describing the error, intended to be suitable for display in a user interface." + } + }, + "description": "An error response from the service." + } + }, + "parameters": { + "SubscriptionId": { + "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." + }, + "location": { + "name": "location", + "description": "The location", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ResourceGroup": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90, + "x-ms-parameter-location": "method" + }, + "AccountName": { + "name": "accountName", + "type": "string", + "in": "path", + "required": true, + "description": "The name of the NetApp account", + "x-ms-parameter-location": "method" + }, + "PoolName": { + "name": "poolName", + "type": "string", + "in": "path", + "required": true, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9\\-_]{0,63}$", + "minLength": 1, + "maxLength": 64, + "description": "The name of the capacity pool", + "x-ms-parameter-location": "method" + }, + "VolumeName": { + "name": "volumeName", + "type": "string", + "in": "path", + "required": true, + "pattern": "^[a-zA-Z][a-zA-Z0-9\\-_]{0,63}$", + "minLength": 1, + "maxLength": 64, + "description": "The name of the volume", + "x-ms-parameter-location": "method" + }, + "MountTargetName": { + "name": "mountTargetName", + "type": "string", + "in": "path", + "required": true, + "description": "The name of the mount target", + "x-ms-parameter-location": "method" + }, + "SnapshotName": { + "name": "snapshotName", + "type": "string", + "in": "path", + "required": true, + "description": "The name of the mount target", + "x-ms-parameter-location": "method" + }, + "SnapshotPolicyName": { + "name": "snapshotPolicyName", + "type": "string", + "in": "path", + "required": true, + "description": "The name of the snapshot policy target", + "x-ms-parameter-location": "method" + }, + "BackupName": { + "name": "backupName", + "type": "string", + "in": "path", + "required": true, + "description": "The name of the backup", + "x-ms-parameter-location": "method" + }, + "BackupPolicyName": { + "name": "backupPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "Backup policy Name which uniquely identify backup policy.", + "x-ms-parameter-location": "method" + }, + "ApiVersionParameter": { + "name": "api-version", + "description": "Version of the API to be used with the client request.", + "in": "query", + "type": "string", + "required": true, + "default": "2021-02-01" + } + } +} diff --git a/specification/netapp/resource-manager/readme.azureresourceschema.md b/specification/netapp/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 563cea8f232d..000000000000 --- a/specification/netapp/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,205 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-netapp-2020-12-01 - - tag: schema-netapp-2020-11-01 - - tag: schema-netapp-2020-09-01 - - tag: schema-netapp-2020-08-01 - - tag: schema-netapp-2020-07-01 - - tag: schema-netapp-2020-06-01 - - tag: schema-netapp-2020-05-01 - - tag: schema-netapp-2020-03-01 - - tag: schema-netapp-2020-02-01 - - tag: schema-netapp-2019-11-01 - - tag: schema-netapp-2019-10-01 - - tag: schema-netapp-2019-08-01 - - tag: schema-netapp-2019-07-01 - - tag: schema-netapp-2019-06-01 - - tag: schema-netapp-2019-05-01 - - tag: schema-netapp-2017-08-15 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-netapp-2020-12-01 and azureresourceschema - -``` yaml $(tag) == 'schema-netapp-2020-12-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.NetApp/stable/2020-12-01/netapp.json - -``` - - -### Tag: schema-netapp-2020-11-01 and azureresourceschema - -``` yaml $(tag) == 'schema-netapp-2020-11-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.NetApp/stable/2020-11-01/netapp.json - -``` - -### Tag: schema-netapp-2020-09-01 and azureresourceschema - -``` yaml $(tag) == 'schema-netapp-2020-09-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.NetApp/stable/2020-09-01/netapp.json - -``` - -### Tag: schema-netapp-2020-08-01 and azureresourceschema - -``` yaml $(tag) == 'schema-netapp-2020-08-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.NetApp/stable/2020-08-01/netapp.json - -``` - -### Tag: schema-netapp-2020-07-01 and azureresourceschema - -``` yaml $(tag) == 'schema-netapp-2020-07-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.NetApp/stable/2020-07-01/netapp.json - -``` - -### Tag: schema-netapp-2020-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-netapp-2020-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.NetApp/stable/2020-06-01/netapp.json - -``` - -### Tag: schema-netapp-2020-05-01 and azureresourceschema - -``` yaml $(tag) == 'schema-netapp-2020-05-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.NetApp/stable/2020-05-01/netapp.json - -``` - -### Tag: schema-netapp-2020-03-01 and azureresourceschema - -``` yaml $(tag) == 'schema-netapp-2020-03-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.NetApp/stable/2020-03-01/netapp.json - -``` - -### Tag: schema-netapp-2020-02-01 and azureresourceschema - -``` yaml $(tag) == 'schema-netapp-2020-02-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.NetApp/stable/2020-02-01/netapp.json - -``` - -### Tag: schema-netapp-2019-11-01 and azureresourceschema - -``` yaml $(tag) == 'schema-netapp-2019-11-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.NetApp/stable/2019-11-01/netapp.json - -``` - -### Tag: schema-netapp-2019-10-01 and azureresourceschema - -``` yaml $(tag) == 'schema-netapp-2019-10-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.NetApp/stable/2019-10-01/netapp.json - -``` - -### Tag: schema-netapp-2019-08-01 and azureresourceschema - -``` yaml $(tag) == 'schema-netapp-2019-08-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.NetApp/stable/2019-08-01/netapp.json - -``` - -### Tag: schema-netapp-2019-07-01 and azureresourceschema - -``` yaml $(tag) == 'schema-netapp-2019-07-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.NetApp/stable/2019-07-01/netapp.json - -``` - -### Tag: schema-netapp-2019-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-netapp-2019-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.NetApp/stable/2019-06-01/netapp.json - -``` - -### Tag: schema-netapp-2019-05-01 and azureresourceschema - -``` yaml $(tag) == 'schema-netapp-2019-05-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.NetApp/stable/2019-05-01/netapp.json - -``` - -### Tag: schema-netapp-2017-08-15 and azureresourceschema - -``` yaml $(tag) == 'schema-netapp-2017-08-15' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.NetApp/preview/2017-08-15/netapp.json - -``` diff --git a/specification/netapp/resource-manager/readme.go.md b/specification/netapp/resource-manager/readme.go.md index db11cfc1df2f..f54d42d42df1 100644 --- a/specification/netapp/resource-manager/readme.go.md +++ b/specification/netapp/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: netapp clear-output-folder: true ``` @@ -13,6 +13,8 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-netapp-2021-04-01-preview + - tag: package-netapp-2021-02-01 - tag: package-netapp-2020-12-01 - tag: package-netapp-2020-11-01 - tag: package-netapp-2020-09-01 @@ -30,6 +32,25 @@ batch: - tag: package-netapp-2019-05-01 - tag: package-2017-08-15 ``` + +### Tag: package-netapp-2021-04-01-preview and go + +These settings apply only when `--tag=package-netapp-2021-04-01-preview --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-netapp-2021-04-01-preview' && $(go) +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2021-04-01-preview/$(namespace) +``` + +### Tag: package-netapp-2021-02-01 and go + +These settings apply only when `--tag=package-netapp-2021-02-01 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-netapp-2021-02-01' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2021-02-01/$(namespace) +``` + ### Tag: package-netapp-2020-12-01 and go These settings apply only when `--tag=package-netapp-2020-12-01 --go` is specified on the command line. diff --git a/specification/netapp/resource-manager/readme.java.md b/specification/netapp/resource-manager/readme.java.md index 2fc2225f22da..fb8e0cd139a5 100644 --- a/specification/netapp/resource-manager/readme.java.md +++ b/specification/netapp/resource-manager/readme.java.md @@ -18,6 +18,8 @@ output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-netapp ``` yaml $(java) && $(multiapi) batch: + - tag: package-netapp-2021-02-01-preview + - tag: package-netapp-2021-02-01 - tag: package-netapp-2020-12-01 - tag: package-netapp-2020-11-01 - tag: package-netapp-2020-09-01 @@ -36,6 +38,32 @@ batch: - tag: package-2017-08-15 ``` +### Tag: package-netapp-2021-04-01-preview and java + +These settings apply only when `--tag=package-netapp-2021-04-01-preview --java` is specified on the command line. +Please also specify the `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-netapp-2021-04-01-preview' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.netapp.v2021_04_01_preview + output-folder: $(azure-libraries-for-java-folder)/sdk/netapp/mgmt-v2021_04_01_preview +regenerate-manager: true +generate-interface: true +``` + +### Tag: package-netapp-2021-02-01 and java + +These settings apply only when `--tag=package-netapp-2021-02-01 --java` is specified on the command line. +Please also specify the `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-netapp-2021-02-01' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.netapp.v2021_02_01 + output-folder: $(azure-libraries-for-java-folder)/sdk/netapp/mgmt-v2021_02_01 +regenerate-manager: true +generate-interface: true +``` + ### Tag: package-netapp-2020-12-01 and java These settings apply only when `--tag=package-netapp-2020-12-01 --java` is specified on the command line. diff --git a/specification/netapp/resource-manager/readme.md b/specification/netapp/resource-manager/readme.md index bc8086e3ea61..43e549b630d2 100644 --- a/specification/netapp/resource-manager/readme.md +++ b/specification/netapp/resource-manager/readme.md @@ -28,7 +28,25 @@ These are the global settings for the Azure NetApp Files API. title: NetAppManagementClient description: Microsoft NetApp Files Azure Resource Provider specification openapi-type: arm -tag: package-netapp-2020-12-01 +tag: package-netapp-2021-02-01 +``` + +### Tag: package-netapp-2021-04-01-preview + +These settings apply only when `--tag=package-netapp-2021-04-01-preview` is specified on the command line. + +``` yaml $(tag) == 'package-netapp-2021-04-01-preview' +input-file: +- Microsoft.NetApp/preview/2021-04-01-preview/netapp.json +``` + +### Tag: package-netapp-2021-02-01 + +These settings apply only when `--tag=package-netapp-2021-02-01` is specified on the command line. + +``` yaml $(tag) == 'package-netapp-2021-02-01' +input-file: +- Microsoft.NetApp/stable/2021-02-01/netapp.json ``` ### Tag: package-netapp-2020-12-01 @@ -195,8 +213,6 @@ swagger-to-sdk: - repo: azure-sdk-for-java - repo: azure-sdk-for-trenton - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js netapp/resource-manager ``` @@ -220,9 +236,7 @@ See configuration in [readme.go.md](./readme.go.md) See configuration in [readme.java.md](./readme.java.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) ## Terraform diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerActiveConfigurationList.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerActiveConfigurationList.json index 508ab168393c..d34d2aed0503 100644 --- a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerActiveConfigurationList.json +++ b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerActiveConfigurationList.json @@ -4,62 +4,201 @@ "api-version": "2021-02-01-preview", "subscriptionId": "subscriptionA", "resourceGroupName": "myResourceGroup", - "networkManagerName": "testNetworkManager" + "networkManagerName": "testNetworkManager", + "parameters": { + "regions": [ + "westus" + ], + "$skipToken": "fakeSkipTokenCode" + } }, "responses": { "200": { "body": { "value": [ { - "configType": "Connectivity", - "connectivityConfiguration": { - "name": "myTestConnectivityConfig", + "region": "westus", + "commitTime": "2020-07-10T18:03:22.2578238+05:30", + "committedConfiguration": { + "kind": "ConnectivityConfiguration", "id": "subscriptions/subscriptionA/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkManagers/testNetworkManager/connectivityConfigurations/myTestConnectivityConfig", - "type": "Microsoft.Network/networkManagers/connectivityConfigurations", "properties": { "displayName": "myTestConnectivityConfig", "description": "Sample Configuration", - "connectivityTopology": "HubAndSpokeTopology", + "connectivityTopology": "HubAndSpoke", "hubId": "subscriptions/subscriptionB/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myHubVnet", - "deleteExistingPeering": true, - "isGlobal": true, + "deleteExistingPeering": "True", + "isGlobal": "True", "appliesToGroups": [ { "networkGroupId": "subscriptions/subscriptionA/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkManagers/testNetworkManager/groups/group1", - "useHubGateway": true, - "groupConnectivity": "Transitive", - "isGlobal": false + "useHubGateway": "True", + "groupConnectivity": "None", + "isGlobal": "True" } ], "provisioningState": "Succeeded" - } - }, - "securityAdminRule": null, - "securityUserRule": null, - "configurationGroups": [ - { - "name": "group1", - "id": "/subscriptions/subscriptionA/resourceGroup/myResourceGroup/providers/Microsoft.Network/networkManagers/testNetworkManager/networkGroups/group1", - "type": "Microsoft.Network/networkManagers/networkGroups", - "properties": { - "displayName": "My Network Group", - "description": "A group for all test Virtual Networks", - "memberType": "VirtualNetwork", - "groupMembers": [ - { - "resourceId": "/subscriptions/subscriptionC/resourceGroup/rg1/providers/Microsoft.Network/virtualnetwork/vnet1" + }, + "configurationGroups": [ + { + "id": "/subscriptions/subscriptionA/resourceGroup/myResourceGroup/providers/Microsoft.Network/networkManagers/testNetworkManager/networkGroups/group1", + "properties": { + "displayName": "My Network Group", + "description": "A group for all test Virtual Networks", + "memberType": "VirtualNetwork", + "groupMembers": [ + { + "vnetId": "/subscriptions/subscriptionC/resourceGroup/rg1/providers/Microsoft.Network/virtualnetwork/vnet1" + } + ], + "conditionalMembership": "", + "provisioningState": "Succeeded" + } + } + ] + } + }, + { + "region": "westus", + "commitTime": "2020-07-10T18:03:22.2578238+05:30", + "committedConfiguration": { + "kind": "SecurityUserRuleCollection", + "id": "/subscriptions/subscriptionA/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkManagers/testNetworkManager/securityUserConfigurations/myTestSecurityConfig/ruleCollections/testRuleCollection", + "properties": { + "configurationDisplayName": "SampleUserConfig", + "configurationDescription": "Sample User Config", + "displayName": "testRuleCollection", + "description": "A sample rule collection", + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subscriptionA/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkManagers/testNetworkManager/securityUserConfigurations/myTestSecurityConfig/ruleCollections/testRuleCollection/rules/SampleUserRule", + "kind": "Custom", + "properties": { + "displayName": "SampleUserRule", + "description": "Sample User Rule", + "protocol": "Tcp", + "sources": [ + { + "addressPrefixType": "IPPrefix", + "addressPrefix": "*" + } + ], + "destinations": [ + { + "addressPrefixType": "IPPrefix", + "addressPrefix": "*" + } + ], + "sourcePortRanges": [ + "0-65535" + ], + "destinationPortRanges": [ + "22" + ], + "direction": "Inbound", + "provisioningState": "Succeeded" } - ], - "conditionalMembership": "", - "provisioningState": "Succeeded" + } + ], + "appliesToGroups": [ + { + "networkGroupId": "/subscriptions/subscriptionA/resourceGroup/myResourceGroup/providers/Microsoft.Network/networkManagers/testNetworkManager/networkGroups/group1" + } + ] + }, + "configurationGroups": [ + { + "id": "/subscriptions/subscriptionA/resourceGroup/myResourceGroup/providers/Microsoft.Network/networkManagers/testNetworkManager/networkGroups/group1", + "properties": { + "displayName": "My Network Group", + "description": "A group for all test Virtual Networks", + "memberType": "VirtualNetwork", + "groupMembers": [ + { + "vnetId": "/subscriptions/subscriptionC/resourceGroup/rg1/providers/Microsoft.Network/virtualnetwork/vnet1" + } + ], + "conditionalMembership": "", + "provisioningState": "Succeeded" + } } - } - ], + ] + } + }, + { "region": "westus", - "commitTime": "2020-07-10T18:03:22.2578238+05:30" + "commitTime": "2020-07-10T18:03:22.2578238+05:30", + "committedConfiguration": { + "kind": "SecurityAdminRuleCollection", + "id": "/subscriptions/subscriptionA/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkManagers/testNetworkManager/securityAdminConfigurations/myTestSecurityConfig/ruleCollections/testRuleCollection", + "properties": { + "configurationDisplayName": "SampleAdminConfig", + "configurationDescription": "Sample Admin Config", + "displayName": "testRuleCollection", + "description": "A sample rule collection", + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subscriptionA/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkManagers/testNetworkManager/securityAdminConfigurations/myTestSecurityConfig/ruleCollections/testRuleCollection/rules/SampleAdminRule", + "kind": "Default", + "properties": { + "displayName": "SampleAdminRule", + "description": "Sample Admin Rule", + "flag": "AllowVnetInbound", + "protocol": "Tcp", + "sources": [ + { + "addressPrefixType": "IPPrefix", + "addressPrefix": "*" + } + ], + "destinations": [ + { + "addressPrefixType": "IPPrefix", + "addressPrefix": "*" + } + ], + "sourcePortRanges": [ + "0-65535" + ], + "destinationPortRanges": [ + "22" + ], + "direction": "Inbound", + "access": "Deny", + "priority": 1, + "provisioningState": "Succeeded" + } + } + ], + "appliesToGroups": [ + { + "networkGroupId": "/subscriptions/subscriptionA/resourceGroup/myResourceGroup/providers/Microsoft.Network/networkManagers/testNetworkManager/networkGroups/group1" + } + ] + }, + "configurationGroups": [ + { + "id": "/subscriptions/subscriptionA/resourceGroup/myResourceGroup/providers/Microsoft.Network/networkManagers/testNetworkManager/networkGroups/group1", + "properties": { + "displayName": "My Network Group", + "description": "A group for all test Virtual Networks", + "memberType": "VirtualNetwork", + "groupMembers": [ + { + "vnetId": "/subscriptions/subscriptionC/resourceGroup/rg1/providers/Microsoft.Network/virtualnetwork/vnet1" + } + ], + "conditionalMembership": "", + "provisioningState": "Succeeded" + } + } + ] + } } ], - "nextLink": "{baseurl}/subscriptions/subscriptionA/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkManagers/testNetworkManager/activeConfigurations?api-version=22021-02-01-preview&$skipToken=10" + "$skipToken": "nextFakeSkipToken" } } } diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerAdminRuleCollectionDelete.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerAdminRuleCollectionDelete.json new file mode 100644 index 000000000000..200dc0249bc9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerAdminRuleCollectionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "networkManagerName": "testNetworkManager", + "configurationName": "myTestSecurityConfig", + "ruleCollectionName": "testRuleCollection" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerAdminRuleCollectionGet.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerAdminRuleCollectionGet.json new file mode 100644 index 000000000000..0f975692a4bb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerAdminRuleCollectionGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "networkManagerName": "testNetworkManager", + "ruleCollectionName": "testRuleCollection", + "configurationName": "myTestSecurityConfig" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/securityAdminConfigurations/myTestSecurityConfig/ruleCollections/testRuleCollection", + "name": "testRuleCollection", + "type": "Microsoft.Network/networkManagers/securityAdminConfigurations/RuleCollections", + "systemData": { + "createdBy": "b69a9388-9488-4534-b470-7ec6d41beef5", + "createdByType": "User", + "createdAt": "2021-01-11T18:52:27Z", + "lastModifiedBy": "b69a9388-9488-4534-b470-7ec6d41beef5", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-01-11T18:52:27Z" + }, + "properties": { + "displayName": "testRuleCollection", + "description": "A sample rule collection", + "provisioningState": "Succeeded", + "appliesToGroups": [ + { + "networkGroupId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/networkGroups/testGroup" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerAdminRuleCollectionList.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerAdminRuleCollectionList.json new file mode 100644 index 000000000000..49e04b4dbf73 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerAdminRuleCollectionList.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "networkManagerName": "testNetworkManager", + "configurationName": "myTestSecurityConfig" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/securityAdminConfigurations/myTestSecurityConfig/ruleCollections/testRuleCollection", + "name": "testRuleCollection", + "type": "Microsoft.Network/networkManagers/securityAdminConfigurations/RuleCollections", + "systemData": { + "createdBy": "b69a9388-9488-4534-b470-7ec6d41beef5", + "createdByType": "User", + "createdAt": "2021-01-11T18:52:27Z", + "lastModifiedBy": "b69a9388-9488-4534-b470-7ec6d41beef5", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-01-11T18:52:27Z" + }, + "properties": { + "displayName": "testRuleCollection", + "description": "A sample rule collection", + "provisioningState": "Succeeded", + "appliesToGroups": [ + { + "networkGroupId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/networkGroups/testGroup" + } + ] + } + } + ], + "nextLink": "{baseurl}/subscriptions/subId/resourceGroup/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/securityAdminConfigurations/myTestSecurityConfig/ruleCollections?api-version=2021-02-01-preview&$skipToken=10" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerAdminRuleCollectionPut.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerAdminRuleCollectionPut.json new file mode 100644 index 000000000000..ec9dc2e17b78 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerAdminRuleCollectionPut.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "configurationName": "myTestSecurityConfig", + "networkManagerName": "testNetworkManager", + "ruleCollectionName": "testRuleCollection", + "ruleCollection": { + "properties": { + "description": "A sample policy", + "appliesToGroups": [ + { + "networkGroupId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/networkGroups/testGroup" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManager/testNetworkManager/securityAdminConfigurations/myTestSecurityConfig/ruleCollections/testRuleCollection", + "name": "myTestSecurityConfig", + "type": "Microsoft.Network/networkManagers/securityAdminConfigurations/ruleCollections", + "systemData": { + "createdBy": "b69a9388-9488-4534-b470-7ec6d41beef5", + "createdByType": "User", + "createdAt": "2021-01-11T18:52:27Z", + "lastModifiedBy": "b69a9388-9488-4534-b470-7ec6d41beef5", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-01-11T18:52:27Z" + }, + "properties": { + "displayName": "myTestSecurityConfig", + "description": "A sample policy", + "provisioningState": "Succeeded", + "appliesToGroups": [ + { + "networkGroupId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/networkGroups/testGroup" + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManager/testNetworkManager/securityConfigurations/myTestSecurityConfig", + "name": "myTestSecurityConfig", + "type": "Microsoft.Network/networkManagers/securityConfigurations", + "systemData": { + "createdBy": "b69a9388-9488-4534-b470-7ec6d41beef5", + "createdByType": "User", + "createdAt": "2021-01-11T18:52:27Z", + "lastModifiedBy": "b69a9388-9488-4534-b470-7ec6d41beef5", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-01-11T18:52:27Z" + }, + "properties": { + "displayName": "myTestSecurityConfig", + "description": "A sample policy", + "provisioningState": "Succeeded", + "appliesToGroups": [ + { + "networkGroupId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/networkGroups/testGroup" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerAdminRuleDelete.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerAdminRuleDelete.json index 61766a808cfd..f8cc0dfa5d1d 100644 --- a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerAdminRuleDelete.json +++ b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerAdminRuleDelete.json @@ -5,6 +5,7 @@ "resourceGroupName": "rg1", "configurationName": "myTestSecurityConfig", "networkManagerName": "testNetworkManager", + "ruleCollectionName": "testRuleCollection", "ruleName": "SampleAdminRule" }, "responses": { diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerAdminRuleGet.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerAdminRuleGet.json index d29046b428aa..a7dea3683b32 100644 --- a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerAdminRuleGet.json +++ b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerAdminRuleGet.json @@ -5,14 +5,16 @@ "resourceGroupName": "rg1", "configurationName": "myTestSecurityConfig", "networkManagerName": "testNetworkManager", + "ruleCollectionName": "testRuleCollection", "ruleName": "SampleAdminRule" }, "responses": { "200": { "body": { - "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/securityConfigurations/myTestSecurityConfig/adminRules/SampleAdminRule", - "type": "Microsoft.Network/networkManagers/securityConfigurations/AdminRules", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/securityAdminConfigurations/myTestSecurityConfig/ruleCollections/testRuleCollection/rules/SampleAdminRule", + "type": "Microsoft.Network/networkManagers/securityAdminConfigurations/ruleCollections/rules", "name": "SampleAdminRule", + "kind": "Custom", "systemData": { "createdBy": "b69a9388-9488-4534-b470-7ec6d41beef5", "createdByType": "User", @@ -25,13 +27,13 @@ "displayName": "SampleAdminRule", "description": "This is Sample Admin Rule", "protocol": "Tcp", - "source": [ + "sources": [ { "addressPrefixType": "IPPrefix", "addressPrefix": "*" } ], - "destination": [ + "destinations": [ { "addressPrefixType": "IPPrefix", "addressPrefix": "*" @@ -46,11 +48,6 @@ "access": "Deny", "priority": 1, "direction": "Inbound", - "appliesToGroups": [ - { - "networkGroupId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkmanagers/testNetworkManager/networkGroups/testGroup" - } - ], "provisioningState": "Succeeded" } } diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerAdminRulePut.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerAdminRulePut.json index 4e22e5c78520..7d38b0c7d5cf 100644 --- a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerAdminRulePut.json +++ b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerAdminRulePut.json @@ -5,18 +5,20 @@ "resourceGroupName": "rg1", "networkManagerName": "testNetworkManager", "configurationName": "myTestSecurityConfig", + "ruleCollectionName": "testRuleCollection", "ruleName": "SampleAdminRule", "adminRule": { + "kind": "Custom", "properties": { "description": "This is Sample Admin Rule", "protocol": "Tcp", - "source": [ + "sources": [ { "addressPrefixType": "ServiceTag", "addressPrefix": "Internet" } ], - "destination": [ + "destinations": [ { "addressPrefixType": "IPPrefix", "addressPrefix": "*" @@ -30,21 +32,17 @@ ], "access": "Deny", "priority": 1, - "direction": "Inbound", - "appliesToGroups": [ - { - "networkGroupId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/networkGroups/testGroup" - } - ] + "direction": "Inbound" } } }, "responses": { "200": { "body": { - "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/SecurityConfigurations/myTestSecurityConfig/adminRules/SampleAdminRule", - "type": "Microsoft.Network/networkManagers/securityConfigurations/AdminRules", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/securityAdminConfigurations/myTestSecurityConfig/ruleCollections/testRuleCollection/rules/SampleAdminRule", + "type": "Microsoft.Network/networkManagers/securityAdminConfigurations/ruleCollections/rules", "name": "SampleAdminRule", + "kind": "Custom", "systemData": { "createdBy": "b69a9388-9488-4534-b470-7ec6d41beef5", "createdByType": "User", @@ -56,13 +54,13 @@ "properties": { "description": "This is Sample Admin Rule", "protocol": "Tcp", - "source": [ + "sources": [ { "addressPrefixType": "ServiceTag", "addressPrefix": "Internet" } ], - "destination": [ + "destinations": [ { "addressPrefixType": "IPPrefix", "addressPrefix": "*" @@ -77,20 +75,16 @@ "access": "Deny", "priority": 1, "direction": "Inbound", - "appliesToGroups": [ - { - "networkGroupId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/networkGroups/testGroup" - } - ], "provisioningState": "Succeeded" } } }, "201": { "body": { - "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/SecurityConfigurations/myTestSecurityConfig/adminRules/SampleAdminRule", - "type": "Microsoft.Network/networkManagers/securityConfigurations/AdminRules", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/securityAdminConfigurations/myTestSecurityConfig/ruleCollections/rules/SampleAdminRule", + "type": "Microsoft.Network/networkManagers/securityAdminConfigurations/ruleCollections/rules", "name": "SampleAdminRule", + "kind": "Custom", "systemData": { "createdBy": "b69a9388-9488-4534-b470-7ec6d41beef5", "createdByType": "User", @@ -102,13 +96,13 @@ "properties": { "description": "This is Sample Admin Rule", "protocol": "Tcp", - "source": [ + "sources": [ { "addressPrefixType": "ServiceTag", "addressPrefix": "Internet" } ], - "destination": [ + "destinations": [ { "addressPrefixType": "IPPrefix", "addressPrefix": "*" @@ -123,11 +117,6 @@ "access": "Deny", "priority": 1, "direction": "Inbound", - "appliesToGroups": [ - { - "networkGroupId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/networkGroups/testGroup" - } - ], "provisioningState": "Succeeded" } } diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerAdminRulesList.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerAdminRulesList.json index aaa55f5ec4c2..38f8fef50044 100644 --- a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerAdminRulesList.json +++ b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerAdminRulesList.json @@ -4,6 +4,7 @@ "subscriptionId": "subId", "resourceGroupName": "rg1", "networkManagerName": "testNetworkManager", + "ruleCollectionName": "testRuleCollection", "configurationName": "myTestSecurityConfig" }, "responses": { @@ -11,8 +12,8 @@ "body": { "value": [ { - "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkmanagers/testNetworkManager/securityConfigurations/myTestSecurityConfig/adminRules/SampleAdminRule", - "type": "Microsoft.Network/networkManagers/securityConfigurations/AdminRules", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkmanagers/testNetworkManager/securityAdminConfigurations/myTestSecurityConfig/ruleCollections/testRuleCollection/rules/SampleAdminRule", + "type": "Microsoft.Network/networkManagers/securityAdminConfigurations/ruleCollections/rules", "name": "SampleAdminRule", "systemData": { "createdBy": "b69a9388-9488-4534-b470-7ec6d41beef5", @@ -22,16 +23,17 @@ "lastModifiedByType": "User", "lastModifiedAt": "2021-01-11T18:52:27Z" }, + "kind": "Custom", "properties": { "description": "This is Sample Admin Rule", "protocol": "Tcp", - "source": [ + "sources": [ { "addressPrefixType": "IPPrefix", "addressPrefix": "*" } ], - "destination": [ + "destinations": [ { "addressPrefixType": "IPPrefix", "addressPrefix": "*" @@ -46,16 +48,11 @@ "access": "Deny", "priority": 1, "direction": "Inbound", - "appliesToGroups": [ - { - "networkGroupId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkmanagers/testNetworkManager/networkGroups/testGroup" - } - ], "provisioningState": "Succeeded" } } ], - "nextLink": "{baseurl}/subscriptions/subscriptionC/resourceGroup/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/networkManagers/myTestSecurityConfig/adminRules?api-version=2021-02-01-preview&$skipToken=10" + "nextLink": "{baseurl}/subscriptions/subscriptionC/resourceGroup/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/networkManagers/securityAdminConfigurations/myTestSecurityConfig/ruleCollections/testRuleCollection/rules?api-version=2021-02-01-preview&$skipToken=10" } } } diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerCommitPost.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerCommitPost.json index b3a97e651ba2..962b122a4294 100644 --- a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerCommitPost.json +++ b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerCommitPost.json @@ -12,10 +12,21 @@ "configurationIds": [ "/subscriptions/subscriptionC/resourceGroups/resoureGroupSample/providers/Microsoft.Network/networkManagers/testNetworkManager/securityConfigurations/SampleSecurityConfig" ], - "commitType": "AdminPolicy" + "commitType": "AdminSecurity" } }, "responses": { - "200": {} + "202": { + "body": { + "commitId": "testCommitId", + "targetLocations": [ + "usest" + ], + "configurationIds": [ + "/subscriptions/subscriptionC/resourceGroups/resoureGroupSample/providers/Microsoft.Network/networkManagers/testNetworkManager/securityConfigurations/SampleSecurityConfig" + ], + "commitType": "AdminSecurity" + } + } } } diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerConnectivityConfigurationGet.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerConnectivityConfigurationGet.json index 51a5821be1a0..9d1f7bbaf8ab 100644 --- a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerConnectivityConfigurationGet.json +++ b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerConnectivityConfigurationGet.json @@ -24,16 +24,16 @@ "properties": { "displayName": "myTestConnectivityConfig", "description": "Sample Configuration", - "connectivityTopology": "HubAndSpokeTopology", + "connectivityTopology": "HubAndSpoke", "hubId": "/subscriptionB/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myHubVnet", - "isGlobal": true, - "deleteExistingPeering": true, + "isGlobal": "True", + "deleteExistingPeering": "True", "appliesToGroups": [ { "networkGroupId": "/subscriptions/subscriptionA/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkManagers/testNetworkManager/groups/group1", - "useHubGateway": true, - "groupConnectivity": "Transitive", - "isGlobal": false + "useHubGateway": "True", + "groupConnectivity": "None", + "isGlobal": "False" } ], "provisioningState": "Succeeded" diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerConnectivityConfigurationList.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerConnectivityConfigurationList.json index 049b03e847cb..1da054d3a714 100644 --- a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerConnectivityConfigurationList.json +++ b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerConnectivityConfigurationList.json @@ -25,16 +25,16 @@ "properties": { "displayName": "myTestConnectivityConfig", "description": "Sample Configuration", - "connectivityTopology": "HubAndSpokeTopology", + "connectivityTopology": "HubAndSpoke", "hubId": "subscriptions/subscriptionB/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myHubVnet", - "deleteExistingPeering": true, - "isGlobal": true, + "deleteExistingPeering": "True", + "isGlobal": "True", "appliesToGroups": [ { "networkGroupId": "subscriptions/subscriptionA/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkManagers/testNetworkManager/groups/group1", - "useHubGateway": true, - "groupConnectivity": "Transitive", - "isGlobal": false + "useHubGateway": "True", + "groupConnectivity": "None", + "isGlobal": "False" } ], "provisioningState": "Succeeded" diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerConnectivityConfigurationPut.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerConnectivityConfigurationPut.json index 7652e09b7cda..6b95e1b019dd 100644 --- a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerConnectivityConfigurationPut.json +++ b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerConnectivityConfigurationPut.json @@ -10,16 +10,16 @@ "properties": { "displayName": "myTestConnectivityConfig", "description": "Sample Configuration", - "connectivityTopology": "HubAndSpokeTopology", + "connectivityTopology": "HubAndSpoke", "hubId": "subscriptions/subscriptionA/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myTestConnectivityConfig", - "deleteExistingPeering": true, - "isGlobal": true, + "deleteExistingPeering": "True", + "isGlobal": "True", "appliesToGroups": [ { "networkGroupId": "subscriptions/subscriptionA/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkManagers/testNetworkManager/networkManagerGroups/group1", - "useHubGateway": true, - "groupConnectivity": "Transitive", - "isGlobal": false + "useHubGateway": "True", + "groupConnectivity": "None", + "isGlobal": "False" } ] } @@ -42,16 +42,16 @@ "properties": { "displayName": "myTestConnectivityConfig", "description": "Sample Connectivity Configuration", - "connectivityTopology": "HubAndSpokeTopology", + "connectivityTopology": "HubAndSpoke", "hubId": "subscriptions/subscriptionA/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myTestConnectivityConfig", - "deleteExistingPeering": true, - "isGlobal": true, + "deleteExistingPeering": "True", + "isGlobal": "True", "appliesToGroups": [ { "networkGroupId": "subscriptions/subscriptionA/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkManagers/testNetworkManager/groups/group1", - "useHubGateway": true, - "groupConnectivity": "Transitive", - "isGlobal": false + "useHubGateway": "True", + "groupConnectivity": "None", + "isGlobal": "False" } ], "provisioningState": "Succeeded" @@ -74,16 +74,16 @@ "properties": { "displayName": "myTestConnectivityConfig", "description": "Sample Configuration", - "connectivityTopology": "HubAndSpokeTopology", + "connectivityTopology": "HubAndSpoke", "hubId": "subscriptions/subscriptionA/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myHubVnet", - "deleteExistingPeering": true, - "isGlobal": true, + "deleteExistingPeering": "True", + "isGlobal": "True", "appliesToGroups": [ { "networkGroupId": "subscriptions/subscriptionA/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkManagers/testNetworkManager/networkManagerGroups/group1", - "useHubGateway": true, - "groupConnectivity": "Transitive", - "isGlobal": false + "useHubGateway": "True", + "groupConnectivity": "None", + "isGlobal": "False" } ], "provisioningState": "Succeeded" diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerDefaultAdminRuleGet.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerDefaultAdminRuleGet.json new file mode 100644 index 000000000000..cffdf54e631f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerDefaultAdminRuleGet.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "configurationName": "myTestSecurityConfig", + "networkManagerName": "testNetworkManager", + "ruleCollectionName": "testRuleCollection", + "ruleName": "SampleDefaultAdminRule" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/securityAdminConfigurations/myTestSecurityConfig/ruleCollections/testRuleCollection/rules/SampleDefaultAdminRule", + "type": "Microsoft.Network/networkManagers/securityAdminConfigurations/ruleCollections/rules", + "name": "SampleDefaultAdminRule", + "kind": "Default", + "systemData": { + "createdBy": "b69a9388-9488-4534-b470-7ec6d41beef5", + "createdByType": "User", + "createdAt": "2021-01-11T18:52:27Z", + "lastModifiedBy": "b69a9388-9488-4534-b470-7ec6d41beef5", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-01-11T18:52:27Z" + }, + "properties": { + "flag": "AllowVnetInbound", + "displayName": "SampleDefaultAdminRule", + "description": "This is Sample Default Admin Rule", + "protocol": "Tcp", + "sources": [ + { + "addressPrefixType": "IPPrefix", + "addressPrefix": "*" + } + ], + "destinations": [ + { + "addressPrefixType": "IPPrefix", + "addressPrefix": "*" + } + ], + "sourcePortRanges": [ + "0-65535" + ], + "destinationPortRanges": [ + "22" + ], + "access": "Deny", + "priority": 1, + "direction": "Inbound", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerDefaultAdminRulePut.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerDefaultAdminRulePut.json new file mode 100644 index 000000000000..224559196dc7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerDefaultAdminRulePut.json @@ -0,0 +1,105 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "networkManagerName": "testNetworkManager", + "configurationName": "myTestSecurityConfig", + "ruleCollectionName": "testRuleCollection", + "ruleName": "SampleDefaultAdminRule", + "adminRule": { + "kind": "Default", + "properties": { + "flag": "AllowVnetInbound" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/securityAdminConfigurations/myTestSecurityConfig/ruleCollections/testRuleCollection/rules/SampleDefaultAdminRule", + "type": "Microsoft.Network/networkManagers/securityAdminConfigurations/ruleCollections/rules", + "name": "SampleDefaultAdminRule", + "kind": "Default", + "systemData": { + "createdBy": "b69a9388-9488-4534-b470-7ec6d41beef5", + "createdByType": "User", + "createdAt": "2021-01-11T18:52:27Z", + "lastModifiedBy": "b69a9388-9488-4534-b470-7ec6d41beef5", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-01-11T18:52:27Z" + }, + "properties": { + "flag": "AllowVnetInbound", + "description": "This is Sample Default Admin Rule", + "protocol": "Tcp", + "sources": [ + { + "addressPrefixType": "ServiceTag", + "addressPrefix": "Internet" + } + ], + "destinations": [ + { + "addressPrefixType": "IPPrefix", + "addressPrefix": "*" + } + ], + "sourcePortRanges": [ + "0-65535" + ], + "destinationPortRanges": [ + "22" + ], + "access": "Deny", + "priority": 1, + "direction": "Inbound", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/securityAdminConfigurations/myTestSecurityConfig/ruleCollections/rules/SampleDefaultAdminRule", + "type": "Microsoft.Network/networkManagers/securityAdminConfigurations/ruleCollections/rules", + "name": "SampleDefaultAdminRule", + "kind": "Default", + "systemData": { + "createdBy": "b69a9388-9488-4534-b470-7ec6d41beef5", + "createdByType": "User", + "createdAt": "2021-01-11T18:52:27Z", + "lastModifiedBy": "b69a9388-9488-4534-b470-7ec6d41beef5", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-01-11T18:52:27Z" + }, + "properties": { + "flag": "AllowVnetInbound", + "description": "This is Sample Default Admin Rule", + "protocol": "Tcp", + "sources": [ + { + "addressPrefixType": "ServiceTag", + "addressPrefix": "Internet" + } + ], + "destinations": [ + { + "addressPrefixType": "IPPrefix", + "addressPrefix": "*" + } + ], + "sourcePortRanges": [ + "0-65535" + ], + "destinationPortRanges": [ + "22" + ], + "access": "Deny", + "priority": 1, + "direction": "Inbound", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerDefaultUserRuleGet.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerDefaultUserRuleGet.json new file mode 100644 index 000000000000..c8adcacd2598 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerDefaultUserRuleGet.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "ruleCollectionName": "testRuleCollection", + "configurationName": "myTestSecurityConfig", + "networkManagerName": "testNetworkManager", + "ruleName": "SampleDefaultUserRule" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/SecurityUserConfigurations/myTestSecurityConfig/ruleCollections/testRuleCollection/rules/SampleDefaultUserRule", + "type": "Microsoft.Network/networkManagers/SecurityUserConfigurations/ruleCollections/rules", + "name": "SampleDefaultUserRule", + "kind": "Default", + "systemData": { + "createdBy": "b69a9388-9488-4534-b470-7ec6d41beef5", + "createdByType": "User", + "createdAt": "2021-01-11T18:52:27Z", + "lastModifiedBy": "b69a9388-9488-4534-b470-7ec6d41beef5", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-01-11T18:52:27Z" + }, + "properties": { + "flag": "AllowVnetInbound", + "displayName": "SampleDefaultUserRule", + "description": "Sample Default User Rule", + "protocol": "Tcp", + "sources": [ + { + "addressPrefixType": "IPPrefix", + "addressPrefix": "*" + } + ], + "destinations": [ + { + "addressPrefixType": "IPPrefix", + "addressPrefix": "*" + } + ], + "sourcePortRanges": [ + "0-65535" + ], + "destinationPortRanges": [ + "22" + ], + "direction": "Inbound", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerDefaultUserRulePut.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerDefaultUserRulePut.json new file mode 100644 index 000000000000..9073e69aec49 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerDefaultUserRulePut.json @@ -0,0 +1,101 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "networkManagerName": "testNetworkManager", + "configurationName": "myTestSecurityConfig", + "ruleCollectionName": "testRuleCollection", + "ruleName": "SampleDefaultUserRule", + "userRule": { + "kind": "Default", + "properties": { + "flag": "AllowVnetInbound" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/SecurityUserConfigurations/Policy1/ruleCollections/testRuleCollection/rules/SampleUserRule", + "type": "Microsoft.Network/networkManagers/SecurityUserConfigurations/ruleCollections/rules", + "name": "SampleDefaultUserRule", + "kind": "Default", + "systemData": { + "createdBy": "b69a9388-9488-4534-b470-7ec6d41beef5", + "createdByType": "User", + "createdAt": "2021-01-11T18:52:27Z", + "lastModifiedBy": "b69a9388-9488-4534-b470-7ec6d41beef5", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-01-11T18:52:27Z" + }, + "properties": { + "flag": "AllowVnetInbound", + "description": "Sample Default User Rule", + "protocol": "Tcp", + "sources": [ + { + "addressPrefixType": "IPPrefix", + "addressPrefix": "*" + } + ], + "destinations": [ + { + "addressPrefixType": "IPPrefix", + "addressPrefix": "*" + } + ], + "sourcePortRanges": [ + "0-65535" + ], + "destinationPortRanges": [ + "22" + ], + "direction": "Inbound", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/securityUserConfigurations/myTestSecurityConfig/ruleCollections/testRuleCollection/rules/SampleDefaultUserRule", + "type": "Microsoft.Network/networkManagers/SecurityUserConfigurations/ruleCollections/rules", + "name": "SampleDefaultUserRule", + "kind": "Default", + "systemData": { + "createdBy": "b69a9388-9488-4534-b470-7ec6d41beef5", + "createdByType": "User", + "createdAt": "2021-01-11T18:52:27Z", + "lastModifiedBy": "b69a9388-9488-4534-b470-7ec6d41beef5", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-01-11T18:52:27Z" + }, + "properties": { + "flag": "AllowVnetInbound", + "description": "Sample User Rule", + "protocol": "Tcp", + "sources": [ + { + "addressPrefixType": "IPPrefix", + "addressPrefix": "*" + } + ], + "destinations": [ + { + "addressPrefixType": "IPPrefix", + "addressPrefix": "*" + } + ], + "sourcePortRanges": [ + "0-65535" + ], + "destinationPortRanges": [ + "22" + ], + "direction": "Inbound", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerDeploymentStatusList.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerDeploymentStatusList.json index 46f45aa6c422..e4070ae0b344 100644 --- a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerDeploymentStatusList.json +++ b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerDeploymentStatusList.json @@ -13,7 +13,8 @@ "deploymentTypes": [ "Connectivity", "AdminPolicy" - ] + ], + "$skipToken": "FakeSkipTokenCode" } }, "responses": { @@ -43,7 +44,7 @@ "errorMessage": "" } ], - "nextLink": "{baseurl}/subscriptions/subscriptionC/resourceGroup/resoureGroupSample/providers/Microsoft.Network/networkManagers/testNetworkManager/deploymentStatus?api-version=2021-02-01-preview&$skipToken=10" + "$skipToken": "NextFakeSkipTokenCode" } } } diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerEffectiveConfigurationsList.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerEffectiveConfigurationsList.json index c5f67d42ab46..34f200e69116 100644 --- a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerEffectiveConfigurationsList.json +++ b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerEffectiveConfigurationsList.json @@ -4,66 +4,176 @@ "api-version": "2021-02-01-preview", "subscriptionId": "subscriptionA", "resourceGroupName": "myResourceGroup", - "virtualNetworkName": "testVirtualNetwork" + "virtualNetworkName": "testVirtualNetwork", + "parameters": { + "$skipToken": "FakeSkipTokenCode" + } }, "responses": { "200": { "body": { "value": [ { - "configType": "Connectivity", - "connectivityConfiguration": { - "name": "myTestConnectivityConfig", - "id": "subscriptions/subscriptionA/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkManagers/testNetworkManager/connectivityConfigurations/myTestConnectivityConfig", - "type": "Microsoft.Network/networkManagers/connectivityConfigurations", - "systemData": { - "createdBy": "b69a9388-9488-4534-b470-7ec6d41beef5", - "createdByType": "User", - "createdAt": "2021-01-11T18:52:27Z", - "lastModifiedBy": "b69a9388-9488-4534-b470-7ec6d41beef5", - "lastModifiedByType": "User", - "lastModifiedAt": "2021-01-11T18:52:27Z" - }, - "properties": { - "displayName": "myTestConnectivityConfig", - "description": "Sample Configuration", - "connectivityTopology": "HubAndSpokeTopology", - "hubId": "subscriptions/subscriptionB/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myHubVnet", - "deleteExistingPeering": true, - "isGlobal": true, - "appliesToGroups": [ - { - "networkGroupId": "/subscriptions/subscriptionA/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkManagers/testNetworkManager/groups/group1", - "useHubGateway": true, - "groupConnectivity": "Transitive", - "isGlobal": false + "kind": "ConnectivityConfiguration", + "id": "subscriptions/subscriptionA/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkManagers/testNetworkManager/connectivityConfigurations/myTestConnectivityConfig", + "properties": { + "displayName": "myTestConnectivityConfig", + "description": "Sample Configuration", + "connectivityTopology": "HubAndSpoke", + "hubId": "/subscriptionB/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myHubVnet", + "isGlobal": "True", + "deleteExistingPeering": "True", + "appliesToGroups": [ + { + "networkGroupId": "/subscriptions/subscriptionA/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkManagers/testNetworkManager/groups/group1", + "useHubGateway": "True", + "groupConnectivity": "None", + "isGlobal": "False" + } + ], + "provisioningState": "Succeeded" + }, + "configurationGroups": [ + { + "id": "/subscriptions/subscriptionA/resourceGroup/myResourceGroup/providers/Microsoft.Network/networkManagers/testNetworkManager/networkGroups/group1", + "properties": { + "displayName": "My Network Group", + "description": "A group for all test Virtual Networks", + "memberType": "VirtualNetwork", + "groupMembers": [ + { + "vnetId": "/subscriptions/subscriptionC/resourceGroup/rg1/providers/Microsoft.Network/virtualnetwork/vnet1" + } + ], + "conditionalMembership": "", + "provisioningState": "Succeeded" + } + } + ] + }, + { + "kind": "SecurityUserRuleCollection", + "id": "/subscriptions/subscriptionA/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkManagers/testNetworkManager/securityUserConfigurations/myTestSecurityConfig/ruleCollections/testRuleCollection", + "properties": { + "configurationDisplayName": "SampleUserConfig", + "configurationDescription": "Sample User Config", + "displayName": "testRuleCollection", + "description": "A sample rule collection", + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subscriptionA/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkManagers/testNetworkManager/securityUserConfigurations/myTestSecurityConfig/ruleCollections/testRuleCollection/rules/SampleUserRule", + "kind": "Custom", + "properties": { + "displayName": "SampleUserRule", + "description": "Sample User Rule", + "protocol": "Tcp", + "sources": [ + { + "addressPrefixType": "IPPrefix", + "addressPrefix": "*" + } + ], + "destinations": [ + { + "addressPrefixType": "IPPrefix", + "addressPrefix": "*" + } + ], + "sourcePortRanges": [ + "0-65535" + ], + "destinationPortRanges": [ + "22" + ], + "direction": "Inbound", + "provisioningState": "Succeeded" } - ], - "provisioningState": "Succeeded" + } + ], + "appliesToGroups": [ + { + "networkGroupId": "/subscriptions/subscriptionA/resourceGroup/myResourceGroup/providers/Microsoft.Network/networkManagers/testNetworkManager/networkGroups/group1" + } + ] + }, + "configurationGroups": [ + { + "id": "/subscriptions/subscriptionA/resourceGroup/myResourceGroup/providers/Microsoft.Network/networkManagers/testNetworkManager/networkGroups/group1", + "properties": { + "displayName": "My Network Group", + "description": "A group for all test Virtual Networks", + "memberType": "VirtualNetwork", + "groupMembers": [ + { + "vnetId": "/subscriptions/subscriptionC/resourceGroup/rg1/providers/Microsoft.Network/virtualnetwork/vnet1" + } + ], + "conditionalMembership": "", + "provisioningState": "Succeeded" + } } + ] + }, + { + "kind": "SecurityAdminRuleCollection", + "id": "/subscriptions/subscriptionA/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkManagers/testNetworkManager/securityAdminConfigurations/myTestSecurityConfig/ruleCollections/testRuleCollection", + "properties": { + "configurationDisplayName": "SampleAdminConfig", + "configurationDescription": "Sample Admin Config", + "displayName": "testRuleCollection", + "description": "A sample rule collection", + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subscriptionA/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkManagers/testNetworkManager/securityAdminConfigurations/myTestSecurityConfig/ruleCollections/testRuleCollection/rules/SampleAdminRule", + "kind": "Default", + "properties": { + "displayName": "SampleAdminRule", + "description": "Sample Admin Rule", + "flag": "AllowVnetInbound", + "protocol": "Tcp", + "sources": [ + { + "addressPrefixType": "IPPrefix", + "addressPrefix": "*" + } + ], + "destinations": [ + { + "addressPrefixType": "IPPrefix", + "addressPrefix": "*" + } + ], + "sourcePortRanges": [ + "0-65535" + ], + "destinationPortRanges": [ + "22" + ], + "direction": "Inbound", + "access": "Deny", + "priority": 1, + "provisioningState": "Succeeded" + } + } + ], + "appliesToGroups": [ + { + "networkGroupId": "/subscriptions/subscriptionA/resourceGroup/myResourceGroup/providers/Microsoft.Network/networkManagers/testNetworkManager/networkGroups/group1" + } + ] }, - "securityAdminRule": null, - "securityUserRule": null, "configurationGroups": [ { - "name": "group1", "id": "/subscriptions/subscriptionA/resourceGroup/myResourceGroup/providers/Microsoft.Network/networkManagers/testNetworkManager/networkGroups/group1", - "type": "Microsoft.Network/networkManagers/networkGroups", - "systemData": { - "createdBy": "b69a9388-9488-4534-b470-7ec6d41beef5", - "createdByType": "User", - "createdAt": "2021-01-11T18:52:27Z", - "lastModifiedBy": "b69a9388-9488-4534-b470-7ec6d41beef5", - "lastModifiedByType": "User", - "lastModifiedAt": "2021-01-11T18:52:27Z" - }, "properties": { "displayName": "My Network Group", "description": "A group for all test Virtual Networks", "memberType": "VirtualNetwork", "groupMembers": [ { - "resourceId": "/subscriptions/subscriptionC/resourceGroup/rg1/providers/Microsoft.Network/virtualnetwork/vnet1" + "vnetId": "/subscriptions/subscriptionC/resourceGroup/rg1/providers/Microsoft.Network/virtualnetwork/vnet1" } ], "conditionalMembership": "", @@ -73,7 +183,7 @@ ] } ], - "nextLink": "{baseurl}/subscriptions/subscriptionA/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/testVirtualNetwork?api-version=2021-02-01-preview&$skipToken=10" + "$skipToken": "FakeSkipTokenCode" } } } diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerEffectiveConfigurationsListBySubnet.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerEffectiveConfigurationsListBySubnet.json new file mode 100644 index 000000000000..cf7dcf245fc4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerEffectiveConfigurationsListBySubnet.json @@ -0,0 +1,189 @@ +{ + "title": "List Azure Virtual Network Manager Effective Configuration by Subnet", + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "subscriptionA", + "resourceGroupName": "myResourceGroup", + "virtualNetworkName": "testVirtualNetwork", + "subnetName": "testSubnet", + "parameters": { + "$skipToken": "FakeSkipTokenCode" + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "kind": "ConnectivityConfiguration", + "id": "subscriptions/subscriptionA/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkManagers/testNetworkManager/connectivityConfigurations/myTestConnectivityConfig", + "properties": { + "displayName": "myTestConnectivityConfig", + "description": "Sample Configuration", + "connectivityTopology": "HubAndSpoke", + "hubId": "/subscriptionB/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myHubVnet", + "isGlobal": "True", + "deleteExistingPeering": "True", + "appliesToGroups": [ + { + "networkGroupId": "/subscriptions/subscriptionA/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkManagers/testNetworkManager/groups/group1", + "useHubGateway": "True", + "groupConnectivity": "None", + "isGlobal": "False" + } + ], + "provisioningState": "Succeeded" + }, + "configurationGroups": [ + { + "id": "/subscriptions/subscriptionA/resourceGroup/myResourceGroup/providers/Microsoft.Network/networkManagers/testNetworkManager/networkGroups/group1", + "properties": { + "displayName": "My Network Group", + "description": "A group for all test Virtual Networks", + "memberType": "VirtualNetwork", + "groupMembers": [ + { + "vnetId": "/subscriptions/subscriptionC/resourceGroup/rg1/providers/Microsoft.Network/virtualnetwork/vnet1" + } + ], + "conditionalMembership": "", + "provisioningState": "Succeeded" + } + } + ] + }, + { + "kind": "SecurityUserRuleCollection", + "id": "/subscriptions/subscriptionA/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkManagers/testNetworkManager/securityUserConfigurations/myTestSecurityConfig/ruleCollections/testRuleCollection", + "properties": { + "displayName": "testRuleCollection", + "description": "A sample rule collection", + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subscriptionA/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkManagers/testNetworkManager/securityUserConfigurations/myTestSecurityConfig/ruleCollections/testRuleCollection/rules/SampleUserRule", + "kind": "Custom", + "properties": { + "displayName": "SampleUserRule", + "description": "Sample User Rule", + "protocol": "Tcp", + "sources": [ + { + "addressPrefixType": "IPPrefix", + "addressPrefix": "*" + } + ], + "destinations": [ + { + "addressPrefixType": "IPPrefix", + "addressPrefix": "*" + } + ], + "sourcePortRanges": [ + "0-65535" + ], + "destinationPortRanges": [ + "22" + ], + "direction": "Inbound", + "provisioningState": "Succeeded" + } + } + ], + "appliesToGroups": [ + { + "networkGroupId": "/subscriptions/subscriptionA/resourceGroup/myResourceGroup/providers/Microsoft.Network/networkManagers/testNetworkManager/networkGroups/group1" + } + ] + }, + "configurationGroups": [ + { + "id": "/subscriptions/subscriptionA/resourceGroup/myResourceGroup/providers/Microsoft.Network/networkManagers/testNetworkManager/networkGroups/group1", + "properties": { + "displayName": "My Network Group", + "description": "A group for all test Virtual Networks", + "memberType": "VirtualNetwork", + "groupMembers": [ + { + "vnetId": "/subscriptions/subscriptionC/resourceGroup/rg1/providers/Microsoft.Network/virtualnetwork/vnet1" + } + ], + "conditionalMembership": "", + "provisioningState": "Succeeded" + } + } + ] + }, + { + "kind": "SecurityAdminRuleCollection", + "id": "/subscriptions/subscriptionA/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkManagers/testNetworkManager/securityAdminConfigurations/myTestSecurityConfig/ruleCollections/testRuleCollection", + "properties": { + "configurationDisplayName": "SampleAdminConfig", + "configurationDescription": "Sample Admin Config", + "displayName": "testRuleCollection", + "description": "A sample rule collection", + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subscriptionA/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkManagers/testNetworkManager/securityAdminConfigurations/myTestSecurityConfig/ruleCollections/testRuleCollection/rules/SampleAdminRule", + "kind": "Default", + "properties": { + "displayName": "SampleAdminRule", + "description": "Sample Admin Rule", + "flag": "AllowVnetInbound", + "protocol": "Tcp", + "sources": [ + { + "addressPrefixType": "IPPrefix", + "addressPrefix": "*" + } + ], + "destinations": [ + { + "addressPrefixType": "IPPrefix", + "addressPrefix": "*" + } + ], + "sourcePortRanges": [ + "0-65535" + ], + "destinationPortRanges": [ + "22" + ], + "direction": "Inbound", + "access": "Deny", + "priority": 1, + "provisioningState": "Succeeded" + } + } + ], + "appliesToGroups": [ + { + "networkGroupId": "/subscriptions/subscriptionA/resourceGroup/myResourceGroup/providers/Microsoft.Network/networkManagers/testNetworkManager/networkGroups/group1" + } + ] + }, + "configurationGroups": [ + { + "id": "/subscriptions/subscriptionA/resourceGroup/myResourceGroup/providers/Microsoft.Network/networkManagers/testNetworkManager/networkGroups/group1", + "properties": { + "displayName": "My Network Group", + "description": "A group for all test Virtual Networks", + "memberType": "VirtualNetwork", + "groupMembers": [ + { + "vnetId": "/subscriptions/subscriptionC/resourceGroup/rg1/providers/Microsoft.Network/virtualnetwork/vnet1" + } + ], + "conditionalMembership": "", + "provisioningState": "Succeeded" + } + } + ] + } + ], + "$skipToken": "NextFakeSkipTokenCode" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerEffectiveVirtualNetworksList.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerEffectiveVirtualNetworksList.json index c7b6068c21ce..77e6534be6ca 100644 --- a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerEffectiveVirtualNetworksList.json +++ b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerEffectiveVirtualNetworksList.json @@ -5,7 +5,10 @@ "subscriptionId": "subscriptionC", "resourceGroupName": "rg1", "networkManagerName": "testNetworkManager", - "networkGroupName": "TestNetworkGroup" + "networkGroupName": "TestNetworkGroup", + "parameters": { + "$skipToken": "FakeSkipTokenCode" + } }, "responses": { "200": { @@ -17,10 +20,7 @@ "membershipType": "Static" } ], - "totalRecords": 2, - "firstIndex": 1, - "pageSize": 10, - "nextLink": "{baseurl}/subscriptions/subscriptionC/resourceGroup/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/networkGroups/TestNetworkGroup/effectiveVirtualNetworks?api-version=2021-02-01-preview&$skipToken=10" + "$skipToken": "NextFakeSkipTokenCode" } } } diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerEffectiveVirtualNetworksListByNetworkManager.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerEffectiveVirtualNetworksListByNetworkManager.json index bca383c7c8d5..d28c208753f5 100644 --- a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerEffectiveVirtualNetworksListByNetworkManager.json +++ b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerEffectiveVirtualNetworksListByNetworkManager.json @@ -6,7 +6,8 @@ "resourceGroupName": "rg1", "networkManagerName": "testNetworkManager", "parameters": { - "conditionalMembers": "location='useast2'" + "conditionalMembers": "location='useast2'", + "$skipToken": "FakeSkipTokenCode" } }, "responses": { @@ -19,10 +20,7 @@ "membershipType": "Static" } ], - "totalRecords": 1, - "firstIndex": 1, - "pageSize": 10, - "nextLink": "{baseurl}/subscriptions/subscriptionC/resourceGroup/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/effectiveVirtualNetworks?api-version=2021-02-01-preview&$skipToken=10" + "$skipToken": "NextFakeSkipTokenCode" } } } diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerGet.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerGet.json index 6a28776bcd89..763addbf35bb 100644 --- a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerGet.json +++ b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerGet.json @@ -30,7 +30,7 @@ ] }, "networkManagerScopeAccesses": [ - "Security" + "UserSecurity" ], "provisioningState": "Succeeded" } diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerGroupGet.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerGroupGet.json index e69da703e107..81a8884ec628 100644 --- a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerGroupGet.json +++ b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerGroupGet.json @@ -27,7 +27,8 @@ "memberType": "VirtualNetwork", "groupMembers": [ { - "resourceId": "/subscriptions/subscriptionC/resourceGroup/rg1/providers/Microsoft.Network/virtualnetworks/vnet1" + "vnetId": "/subscriptions/subscriptionC/resourceGroup/rg1/providers/Microsoft.Network/virtualnetworks/vnet1", + "subnetId": "" } ], "conditionalMembership": "", diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerGroupList.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerGroupList.json index 5e4dd8701d5c..2857e2c241f2 100644 --- a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerGroupList.json +++ b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerGroupList.json @@ -28,7 +28,7 @@ "memberType": "VirtualNetwork", "groupMembers": [ { - "resourceId": "/subscriptions/subscriptionC/resourceGroup/rg1/providers/Microsoft.Network/virtualnetworks/vnet1" + "vnetId": "/subscriptions/subscriptionC/resourceGroup/rg1/providers/Microsoft.Network/virtualnetworks/vnet1" } ], "conditionalMembership": "", diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerGroupPut.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerGroupPut.json index fc7ae985854d..3c3ac5b8c03e 100644 --- a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerGroupPut.json +++ b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerGroupPut.json @@ -13,7 +13,8 @@ "memberType": "VirtualNetwork", "groupMembers": [ { - "resourceId": "/subscriptions/subscriptionC/resourceGroup/rg1/providers/Microsoft.Network/virtualnetworks/vnet1" + "vnetId": "/subscriptions/subscriptionC/resourceGroup/rg1/providers/Microsoft.Network/virtualnetworks/vnet1", + "subnetId": "" } ], "conditionalMembership": "" @@ -43,7 +44,8 @@ "memberType": "VirtualNetwork", "groupMembers": [ { - "resourceId": "/subscriptions/subscriptionC/resourceGroup/rg1/providers/Microsoft.Network/virtualnetworks/vnet1" + "vnetId": "/subscriptions/subscriptionC/resourceGroup/rg1/providers/Microsoft.Network/virtualnetworks/vnet1", + "subnetId": "" } ], "conditionalMembership": "", @@ -73,7 +75,8 @@ "memberType": "VirtualNetwork", "groupMembers": [ { - "resourceId": "/subscriptions/subscriptionC/resourceGroup/rg1/providers/Microsoft.Network/virtualnetwork/vnet1" + "vnetId": "/subscriptions/subscriptionC/resourceGroup/rg1/providers/Microsoft.Network/virtualnetwork/vnet1", + "subnetId": "" } ], "conditionalMembership": "", diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerList.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerList.json index 816d4de4023a..50f571f4958a 100644 --- a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerList.json +++ b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerList.json @@ -32,8 +32,6 @@ ] }, "networkManagerScopeAccesses": [ - "Security", - "Routing", "Connectivity" ], "provisioningState": "Succeeded" diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerListAll.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerListAll.json index b0cd2b1bd307..4a53208631dc 100644 --- a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerListAll.json +++ b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerListAll.json @@ -31,7 +31,7 @@ ] }, "networkManagerScopeAccesses": [ - "Security" + "UserSecurity" ], "provisioningState": "Succeeded" } diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerPatch.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerPatch.json index b26863743ead..8f9037afec2c 100644 --- a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerPatch.json +++ b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerPatch.json @@ -42,7 +42,7 @@ ] }, "networkManagerScopeAccesses": [ - "Security" + "UserSecurity" ], "provisioningState": "Succeeded" } diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerPut.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerPut.json index 406721317e3f..95f43c7e8fad 100644 --- a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerPut.json +++ b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerPut.json @@ -18,8 +18,6 @@ ] }, "networkManagerScopeAccesses": [ - "Security", - "Routing", "Connectivity" ] } @@ -52,8 +50,6 @@ ] }, "networkManagerScopeAccesses": [ - "Security", - "Routing", "Connectivity" ], "provisioningState": "Succeeded" @@ -86,8 +82,6 @@ ] }, "networkManagerScopeAccesses": [ - "Security", - "Routing", "Connectivity" ], "provisioningState": "Succeeded" diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerSecurityConfigurationDelete.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerSecurityAdminConfigurationDelete.json similarity index 100% rename from specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerSecurityConfigurationDelete.json rename to specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerSecurityAdminConfigurationDelete.json diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerSecurityAdminConfigurationGet.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerSecurityAdminConfigurationGet.json new file mode 100644 index 000000000000..db64b57fad1b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerSecurityAdminConfigurationGet.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "networkManagerName": "testNetworkManager", + "configurationName": "myTestSecurityConfig" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/securityConfigurations/myTestSecurityConfig", + "name": "myTestSecurityConfig", + "type": "Microsoft.Network/networkManagers/securityConfigurations", + "systemData": { + "createdBy": "b69a9388-9488-4534-b470-7ec6d41beef5", + "createdByType": "User", + "createdAt": "2021-01-11T18:52:27Z", + "lastModifiedBy": "b69a9388-9488-4534-b470-7ec6d41beef5", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-01-11T18:52:27Z" + }, + "properties": { + "displayName": "myTestSecurityConfig", + "description": "A sample policy", + "provisioningState": "Succeeded", + "securityType": "AdminPolicy", + "deleteExistingNSGs": "True" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerSecurityAdminConfigurationList.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerSecurityAdminConfigurationList.json new file mode 100644 index 000000000000..6d5536e42812 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerSecurityAdminConfigurationList.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "networkManagerName": "testNetworkManager" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/securityConfigurations/myTestSecurityConfig", + "name": "myTestSecurityConfig", + "type": "Microsoft.Network/networkManagers/securityConfigurations", + "systemData": { + "createdBy": "b69a9388-9488-4534-b470-7ec6d41beef5", + "createdByType": "User", + "createdAt": "2021-01-11T18:52:27Z", + "lastModifiedBy": "b69a9388-9488-4534-b470-7ec6d41beef5", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-01-11T18:52:27Z" + }, + "properties": { + "displayName": "Sample policy", + "description": "A sample policy", + "provisioningState": "Succeeded", + "securityType": "AdminPolicy", + "deleteExistingNSGs": "True" + } + } + ], + "nextLink": "{baseurl}/subscriptions/subId/resourceGroup/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/securityConfigurations?api-version=2021-02-01-preview&$skipToken=10" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerSecurityAdminConfigurationPut.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerSecurityAdminConfigurationPut.json new file mode 100644 index 000000000000..feaae888ed13 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerSecurityAdminConfigurationPut.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "configurationName": "myTestSecurityConfig", + "networkManagerName": "testNetworkManager", + "securityAdminConfiguration": { + "properties": { + "description": "A sample policy", + "securityType": "AdminPolicy", + "deleteExistingNSGs": "True" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManager/testNetworkManager/securityConfigurations/myTestSecurityConfig", + "name": "myTestSecurityConfig", + "type": "Microsoft.Network/networkManagers/securityConfigurations", + "systemData": { + "createdBy": "b69a9388-9488-4534-b470-7ec6d41beef5", + "createdByType": "User", + "createdAt": "2021-01-11T18:52:27Z", + "lastModifiedBy": "b69a9388-9488-4534-b470-7ec6d41beef5", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-01-11T18:52:27Z" + }, + "properties": { + "displayName": "myTestSecurityConfig", + "description": "A sample policy", + "provisioningState": "Succeeded", + "securityType": "AdminPolicy", + "deleteExistingNSGs": "True" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManager/testNetworkManager/securityConfigurations/myTestSecurityConfig", + "name": "myTestSecurityConfig", + "type": "Microsoft.Network/networkManagers/securityConfigurations", + "systemData": { + "createdBy": "b69a9388-9488-4534-b470-7ec6d41beef5", + "createdByType": "User", + "createdAt": "2021-01-11T18:52:27Z", + "lastModifiedBy": "b69a9388-9488-4534-b470-7ec6d41beef5", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-01-11T18:52:27Z" + }, + "properties": { + "displayName": "myTestSecurityConfig", + "description": "A sample policy", + "provisioningState": "Succeeded", + "securityType": "AdminPolicy", + "deleteExistingNSGs": "True" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerSecurityConfigurationEvaluateImport.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerSecurityConfigurationEvaluateImport.json deleted file mode 100644 index 06af22a26397..000000000000 --- a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerSecurityConfigurationEvaluateImport.json +++ /dev/null @@ -1,124 +0,0 @@ -{ - "parameters": { - "api-version": "2021-02-01-preview", - "subscriptionId": "subId", - "resourceGroupName": "rg1", - "networkManagerName": "testNetworkManager", - "configurationName": "myTestConfig", - "parameters": { - "networkSecurityGroupImports": [ - { - "networkSecurityGroupUri": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1" - } - ], - "importDenyRulesAsAdminRules": true, - "adminSecurityConfigurationUri": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/securityConfigurations/adminConfig", - "removeAllowVnetInboundRule": true, - "removeAllowAzureLoadBalancerInboundRule": true, - "removeAllowVnetOutboundRule": true, - "removeAllowInternetOutboundRule": true - } - }, - "responses": { - "200": { - "body": { - "value": [ - { - "securityType": "UserPolicy", - "securityUserRule": { - "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkmanagers/testNetworkManager/securityConfigurations/myTestConfig/userRules/SampleRule", - "type": "Microsoft.Network/networkManagers/securityConfigurations/userRules", - "name": "SampleRule", - "systemData": { - "createdBy": "b69a9388-9488-4534-b470-7ec6d41beef5", - "createdByType": "User", - "createdAt": "2021-01-11T18:52:27Z", - "lastModifiedBy": "b69a9388-9488-4534-b470-7ec6d41beef5", - "lastModifiedByType": "User", - "lastModifiedAt": "2021-01-11T18:52:27Z" - }, - "properties": { - "description": "Sample user rule", - "protocol": "Tcp", - "source": [ - { - "addressPrefixType": "IPPrefix", - "addressPrefix": "*" - } - ], - "destination": [ - { - "addressPrefixType": "IPPrefix", - "addressPrefix": "*" - } - ], - "sourcePortRanges": [ - "0-65535" - ], - "destinationPortRanges": [ - "22" - ], - "direction": "Inbound", - "provisioningState": "Succeeded" - } - }, - "securityAdminRule": null - }, - { - "securityType": "AdminPolicy", - "securityUserRule": null, - "securityAdminRule": { - "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkmanagers/testNetworkManager/securityConfigurations/adminConfig/adminRules/SampleAdminRule", - "type": "Microsoft.Network/networkManagers/securityConfigurations/adminRules", - "name": "SampleAdminRule", - "systemData": { - "createdBy": "b69a9388-9488-4534-b470-7ec6d41beef5", - "createdByType": "User", - "createdAt": "2021-01-11T18:52:27Z", - "lastModifiedBy": "b69a9388-9488-4534-b470-7ec6d41beef5", - "lastModifiedByType": "User", - "lastModifiedAt": "2021-01-11T18:52:27Z" - }, - "properties": { - "description": "Sample admin rule", - "protocol": "Tcp", - "source": [ - { - "addressPrefixType": "IPPrefix", - "addressPrefix": "*" - } - ], - "destination": [ - { - "addressPrefixType": "IPPrefix", - "addressPrefix": "*" - } - ], - "sourcePortRanges": [ - "0-65535" - ], - "destinationPortRanges": [ - "22" - ], - "access": "Deny", - "priority": 1, - "direction": "Inbound", - "appliesToGroups": [ - { - "networkGroupId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkmanagers/testNetworkManager/networkGroups/testGroup" - } - ], - "provisioningState": "Succeeded" - } - } - } - ], - "failedImport": { - "failureCode": "123", - "failureReason": "None" - }, - "nextLink": "{baseurl}/subscriptions/subId/resourceGroup/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/securityConfigurations/myTestConfig/evaluateImport?api-version=2020-08-01&$skipToken=10" - } - } - } -} diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerSecurityConfigurationGet.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerSecurityConfigurationGet.json deleted file mode 100644 index 954a49402e54..000000000000 --- a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerSecurityConfigurationGet.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "parameters": { - "api-version": "2021-02-01-preview", - "subscriptionId": "subId", - "resourceGroupName": "rg1", - "networkManagerName": "testNetworkManager", - "configurationName": "myTestSecurityConfig" - }, - "responses": { - "200": { - "body": { - "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/securityConfigurations/myTestSecurityConfig", - "name": "myTestSecurityConfig", - "type": "Microsoft.Network/networkManagers/securityConfigurations", - "systemData": { - "createdBy": "b69a9388-9488-4534-b470-7ec6d41beef5", - "createdByType": "User", - "createdAt": "2021-01-11T18:52:27Z", - "lastModifiedBy": "b69a9388-9488-4534-b470-7ec6d41beef5", - "lastModifiedByType": "User", - "lastModifiedAt": "2021-01-11T18:52:27Z" - }, - "properties": { - "displayName": "myTestSecurityConfig", - "description": "A sample policy", - "provisioningState": "Succeeded", - "securityType": "AdminPolicy", - "deleteExistingNSGs": true, - "appliesToGroups": [ - { - "networkGroupId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/networkGroups/testGroup" - } - ] - } - } - } - } -} diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerSecurityConfigurationImport.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerSecurityConfigurationImport.json deleted file mode 100644 index cd7a4bea5340..000000000000 --- a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerSecurityConfigurationImport.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "parameters": { - "api-version": "2021-02-01-preview", - "subscriptionId": "subId", - "resourceGroupName": "rg1", - "networkManagerName": "testNetworkManager", - "configurationName": "myTestConfig", - "parameters": { - "networkSecurityGroupImports": [ - { - "networkSecurityGroupUri": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1" - } - ], - "importDenyRulesAsAdminRules": true, - "adminSecurityConfigurationUri": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/securityConfigurations/adminConfig", - "removeAllowVnetInboundRule": true, - "removeAllowAzureLoadBalancerInboundRule": true, - "removeAllowVnetOutboundRule": true, - "removeAllowInternetOutboundRule": true - } - }, - "responses": { - "200": { - "body": { - "userSecurityConfiguration": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManager/testNetworkManager/securityConfigurations/myTestConfig", - "adminSecurityConfiguration": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManager/testNetworkManager/securityConfigurations/adminConfig", - "failedImport": { - "failureCode": "123", - "failureReason": "None" - } - } - } - } -} diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerSecurityConfigurationList.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerSecurityConfigurationList.json deleted file mode 100644 index 14131ec154f0..000000000000 --- a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerSecurityConfigurationList.json +++ /dev/null @@ -1,42 +0,0 @@ -{ - "parameters": { - "api-version": "2021-02-01-preview", - "subscriptionId": "subId", - "resourceGroupName": "rg1", - "networkManagerName": "testNetworkManager" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/securityConfigurations/myTestSecurityConfig", - "name": "myTestSecurityConfig", - "type": "Microsoft.Network/networkManagers/securityConfigurations", - "systemData": { - "createdBy": "b69a9388-9488-4534-b470-7ec6d41beef5", - "createdByType": "User", - "createdAt": "2021-01-11T18:52:27Z", - "lastModifiedBy": "b69a9388-9488-4534-b470-7ec6d41beef5", - "lastModifiedByType": "User", - "lastModifiedAt": "2021-01-11T18:52:27Z" - }, - "properties": { - "displayName": "Sample policy", - "description": "A sample policy", - "provisioningState": "Succeeded", - "securityType": "UserPolicy", - "deleteExistingNSGs": true, - "appliesToGroups": [ - { - "networkGroupId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/networkGroups/testGroup" - } - ] - } - } - ], - "nextLink": "{baseurl}/subscriptions/subId/resourceGroup/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/securityConfigurations?api-version=2021-02-01-preview&$skipToken=10" - } - } - } -} diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerSecurityConfigurationPut.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerSecurityConfigurationPut.json deleted file mode 100644 index c4d2ff2a2790..000000000000 --- a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerSecurityConfigurationPut.json +++ /dev/null @@ -1,77 +0,0 @@ -{ - "parameters": { - "api-version": "2021-02-01-preview", - "subscriptionId": "subId", - "resourceGroupName": "rg1", - "configurationName": "myTestSecurityConfig", - "networkManagerName": "testNetworkManager", - "securityConfiguration": { - "properties": { - "description": "A sample policy", - "securityType": "UserPolicy", - "deleteExistingNSGs": true, - "appliesToGroups": [ - { - "networkGroupId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/networkGroups/testGroup" - } - ] - } - } - }, - "responses": { - "200": { - "body": { - "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManager/testNetworkManager/securityConfigurations/myTestSecurityConfig", - "name": "myTestSecurityConfig", - "type": "Microsoft.Network/networkManagers/securityConfigurations", - "systemData": { - "createdBy": "b69a9388-9488-4534-b470-7ec6d41beef5", - "createdByType": "User", - "createdAt": "2021-01-11T18:52:27Z", - "lastModifiedBy": "b69a9388-9488-4534-b470-7ec6d41beef5", - "lastModifiedByType": "User", - "lastModifiedAt": "2021-01-11T18:52:27Z" - }, - "properties": { - "displayName": "myTestSecurityConfig", - "description": "A sample policy", - "provisioningState": "Succeeded", - "securityType": "UserPolicy", - "deleteExistingNSGs": true, - "appliesToGroups": [ - { - "networkGroupId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/networkGroups/testGroup" - } - ] - } - } - }, - "201": { - "body": { - "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManager/testNetworkManager/securityConfigurations/myTestSecurityConfig", - "name": "myTestSecurityConfig", - "type": "Microsoft.Network/networkManagers/securityConfigurations", - "systemData": { - "createdBy": "b69a9388-9488-4534-b470-7ec6d41beef5", - "createdByType": "User", - "createdAt": "2021-01-11T18:52:27Z", - "lastModifiedBy": "b69a9388-9488-4534-b470-7ec6d41beef5", - "lastModifiedByType": "User", - "lastModifiedAt": "2021-01-11T18:52:27Z" - }, - "properties": { - "displayName": "myTestSecurityConfig", - "description": "A sample policy", - "provisioningState": "Succeeded", - "securityType": "UserPolicy", - "deleteExistingNSGs": true, - "appliesToGroups": [ - { - "networkGroupId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/networkGroups/testGroup" - } - ] - } - } - } - } -} diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerSecurityUserConfigurationDelete.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerSecurityUserConfigurationDelete.json new file mode 100644 index 000000000000..938bd903784c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerSecurityUserConfigurationDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "networkManagerName": "testNetworkManager", + "configurationName": "myTestSecurityConfig" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerSecurityUserConfigurationGet.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerSecurityUserConfigurationGet.json new file mode 100644 index 000000000000..4c07b47433e3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerSecurityUserConfigurationGet.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "networkManagerName": "testNetworkManager", + "configurationName": "myTestSecurityConfig" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/securityConfigurations/myTestSecurityConfig", + "name": "myTestSecurityConfig", + "type": "Microsoft.Network/networkManagers/securityConfigurations", + "systemData": { + "createdBy": "b69a9388-9488-4534-b470-7ec6d41beef5", + "createdByType": "User", + "createdAt": "2021-01-11T18:52:27Z", + "lastModifiedBy": "b69a9388-9488-4534-b470-7ec6d41beef5", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-01-11T18:52:27Z" + }, + "properties": { + "displayName": "myTestSecurityConfig", + "description": "A sample policy", + "provisioningState": "Succeeded", + "securityType": "UserPolicy", + "deleteExistingNSGs": "True" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerSecurityUserConfigurationList.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerSecurityUserConfigurationList.json new file mode 100644 index 000000000000..41b9a56f35d0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerSecurityUserConfigurationList.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "networkManagerName": "testNetworkManager" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/securityConfigurations/myTestSecurityConfig", + "name": "myTestSecurityConfig", + "type": "Microsoft.Network/networkManagers/securityConfigurations", + "systemData": { + "createdBy": "b69a9388-9488-4534-b470-7ec6d41beef5", + "createdByType": "User", + "createdAt": "2021-01-11T18:52:27Z", + "lastModifiedBy": "b69a9388-9488-4534-b470-7ec6d41beef5", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-01-11T18:52:27Z" + }, + "properties": { + "displayName": "Sample policy", + "description": "A sample policy", + "provisioningState": "Succeeded", + "securityType": "UserPolicy", + "deleteExistingNSGs": "True" + } + } + ], + "nextLink": "{baseurl}/subscriptions/subId/resourceGroup/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/securityConfigurations?api-version=2021-02-01-preview&$skipToken=10" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerSecurityUserConfigurationPut.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerSecurityUserConfigurationPut.json new file mode 100644 index 000000000000..dbdfceff66c0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerSecurityUserConfigurationPut.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "configurationName": "myTestSecurityConfig", + "networkManagerName": "testNetworkManager", + "securityUserConfiguration": { + "properties": { + "description": "A sample policy", + "securityType": "UserPolicy", + "deleteExistingNSGs": "True" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManager/testNetworkManager/securityConfigurations/myTestSecurityConfig", + "name": "myTestSecurityConfig", + "type": "Microsoft.Network/networkManagers/securityConfigurations", + "systemData": { + "createdBy": "b69a9388-9488-4534-b470-7ec6d41beef5", + "createdByType": "User", + "createdAt": "2021-01-11T18:52:27Z", + "lastModifiedBy": "b69a9388-9488-4534-b470-7ec6d41beef5", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-01-11T18:52:27Z" + }, + "properties": { + "displayName": "myTestSecurityConfig", + "description": "A sample policy", + "provisioningState": "Succeeded", + "securityType": "UserPolicy", + "deleteExistingNSGs": "True" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManager/testNetworkManager/securityConfigurations/myTestSecurityConfig", + "name": "myTestSecurityConfig", + "type": "Microsoft.Network/networkManagers/securityConfigurations", + "systemData": { + "createdBy": "b69a9388-9488-4534-b470-7ec6d41beef5", + "createdByType": "User", + "createdAt": "2021-01-11T18:52:27Z", + "lastModifiedBy": "b69a9388-9488-4534-b470-7ec6d41beef5", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-01-11T18:52:27Z" + }, + "properties": { + "displayName": "myTestSecurityConfig", + "description": "A sample policy", + "provisioningState": "Succeeded", + "securityType": "UserPolicy", + "deleteExistingNSGs": "True" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerUserRuleCollectionDelete.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerUserRuleCollectionDelete.json new file mode 100644 index 000000000000..200dc0249bc9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerUserRuleCollectionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "networkManagerName": "testNetworkManager", + "configurationName": "myTestSecurityConfig", + "ruleCollectionName": "testRuleCollection" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerUserRuleCollectionGet.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerUserRuleCollectionGet.json new file mode 100644 index 000000000000..8f55c9d627ad --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerUserRuleCollectionGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "networkManagerName": "testNetworkManager", + "ruleCollectionName": "testRuleCollection", + "configurationName": "myTestSecurityConfig" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/securityUserConfigurations/myTestSecurityConfig/ruleCollections/testRuleCollection", + "name": "testRuleCollection", + "type": "Microsoft.Network/networkManagers/securityUserConfigurations/RuleCollections", + "systemData": { + "createdBy": "b69a9388-9488-4534-b470-7ec6d41beef5", + "createdByType": "User", + "createdAt": "2021-01-11T18:52:27Z", + "lastModifiedBy": "b69a9388-9488-4534-b470-7ec6d41beef5", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-01-11T18:52:27Z" + }, + "properties": { + "displayName": "testRuleCollection", + "description": "A sample rule collection", + "provisioningState": "Succeeded", + "appliesToGroups": [ + { + "networkGroupId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/networkGroups/testGroup" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerUserRuleCollectionList.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerUserRuleCollectionList.json new file mode 100644 index 000000000000..86f6b6c1b164 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerUserRuleCollectionList.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "networkManagerName": "testNetworkManager", + "configurationName": "myTestSecurityConfig" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/securityUserConfigurations/myTestSecurityConfig/ruleCollections/testRuleCollection", + "name": "testRuleCollection", + "type": "Microsoft.Network/networkManagers/securityUserConfigurations/RuleCollections", + "systemData": { + "createdBy": "b69a9388-9488-4534-b470-7ec6d41beef5", + "createdByType": "User", + "createdAt": "2021-01-11T18:52:27Z", + "lastModifiedBy": "b69a9388-9488-4534-b470-7ec6d41beef5", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-01-11T18:52:27Z" + }, + "properties": { + "displayName": "testRuleCollection", + "description": "A sample rule collection", + "provisioningState": "Succeeded", + "appliesToGroups": [ + { + "networkGroupId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/networkGroups/testGroup" + } + ] + } + } + ], + "nextLink": "{baseurl}/subscriptions/subId/resourceGroup/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/securityUserConfigurations/myTestSecurityConfig/ruleCollections?api-version=2021-02-01-preview&$skipToken=10" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerUserRuleCollectionPut.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerUserRuleCollectionPut.json new file mode 100644 index 000000000000..d91c5d8a74fd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerUserRuleCollectionPut.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "api-version": "2021-02-01-preview", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "configurationName": "myTestSecurityConfig", + "networkManagerName": "testNetworkManager", + "ruleCollectionName": "testRuleCollection", + "userRuleCollection": { + "properties": { + "description": "A sample policy", + "appliesToGroups": [ + { + "networkGroupId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/networkGroups/testGroup" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManager/testNetworkManager/securityUserConfigurations/myTestSecurityConfig/ruleCollections/testRuleCollection", + "name": "myTestSecurityConfig", + "type": "Microsoft.Network/networkManagers/securityUserConfigurations/ruleCollections", + "systemData": { + "createdBy": "b69a9388-9488-4534-b470-7ec6d41beef5", + "createdByType": "User", + "createdAt": "2021-01-11T18:52:27Z", + "lastModifiedBy": "b69a9388-9488-4534-b470-7ec6d41beef5", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-01-11T18:52:27Z" + }, + "properties": { + "displayName": "myTestSecurityConfig", + "description": "A sample policy", + "provisioningState": "Succeeded", + "appliesToGroups": [ + { + "networkGroupId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/networkGroups/testGroup" + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManager/testNetworkManager/securityUserConfigurations/myTestSecurityConfig", + "name": "myTestSecurityConfig", + "type": "Microsoft.Network/networkManagers/securityUserConfigurations/ruleCollections", + "systemData": { + "createdBy": "b69a9388-9488-4534-b470-7ec6d41beef5", + "createdByType": "User", + "createdAt": "2021-01-11T18:52:27Z", + "lastModifiedBy": "b69a9388-9488-4534-b470-7ec6d41beef5", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-01-11T18:52:27Z" + }, + "properties": { + "displayName": "myTestSecurityConfig", + "description": "A sample policy", + "provisioningState": "Succeeded", + "appliesToGroups": [ + { + "networkGroupId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/networkGroups/testGroup" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerUserRuleDelete.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerUserRuleDelete.json index 54beb5ca9b4a..3fbaf4ba00c0 100644 --- a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerUserRuleDelete.json +++ b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerUserRuleDelete.json @@ -5,6 +5,7 @@ "resourceGroupName": "rg1", "configurationName": "myTestSecurityConfig", "networkManagerName": "testNetworkManager", + "ruleCollectionName": "testRuleCollection", "ruleName": "SampleUserRule" }, "responses": { diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerUserRuleGet.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerUserRuleGet.json index cbabd8525041..10459a5f40ce 100644 --- a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerUserRuleGet.json +++ b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerUserRuleGet.json @@ -3,6 +3,7 @@ "api-version": "2021-02-01-preview", "subscriptionId": "subId", "resourceGroupName": "rg1", + "ruleCollectionName": "testRuleCollection", "configurationName": "myTestSecurityConfig", "networkManagerName": "testNetworkManager", "ruleName": "SampleUserRule" @@ -10,9 +11,10 @@ "responses": { "200": { "body": { - "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/securityConfigurations/myTestSecurityConfig/userRules/SampleUserRule", - "type": "Microsoft.Network/networkManagers/securityConfigurations/UserRules", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/SecurityUserConfigurations/myTestSecurityConfig/ruleCollections/testRuleCollection/rules/SampleUserRule", + "type": "Microsoft.Network/networkManagers/SecurityUserConfigurations/ruleCollections/rules", "name": "SampleUserRule", + "kind": "Custom", "systemData": { "createdBy": "b69a9388-9488-4534-b470-7ec6d41beef5", "createdByType": "User", @@ -25,13 +27,13 @@ "displayName": "SampleUserRule", "description": "Sample User Rule", "protocol": "Tcp", - "source": [ + "sources": [ { "addressPrefixType": "IPPrefix", "addressPrefix": "*" } ], - "destination": [ + "destinations": [ { "addressPrefixType": "IPPrefix", "addressPrefix": "*" diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerUserRulePut.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerUserRulePut.json index 5063fafbacfa..c9538b7cac28 100644 --- a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerUserRulePut.json +++ b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerUserRulePut.json @@ -5,18 +5,20 @@ "resourceGroupName": "rg1", "networkManagerName": "testNetworkManager", "configurationName": "myTestSecurityConfig", + "ruleCollectionName": "testRuleCollection", "ruleName": "SampleUserRule", "userRule": { + "kind": "Custom", "properties": { "description": "Sample User Rule", "protocol": "Tcp", - "source": [ + "sources": [ { "addressPrefixType": "IPPrefix", "addressPrefix": "*" } ], - "destination": [ + "destinations": [ { "addressPrefixType": "IPPrefix", "addressPrefix": "*" @@ -35,9 +37,10 @@ "responses": { "200": { "body": { - "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/SecurityConfigurations/Policy1/userRules/SampleUserRule", - "type": "Microsoft.Network/networkManagers/securityConfigurations/userRules", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/SecurityUserConfigurations/Policy1/ruleCollections/testRuleCollection/rules/SampleUserRule", + "type": "Microsoft.Network/networkManagers/SecurityUserConfigurations/ruleCollections/rules", "name": "SampleUserRule", + "kind": "Custom", "systemData": { "createdBy": "b69a9388-9488-4534-b470-7ec6d41beef5", "createdByType": "User", @@ -49,13 +52,13 @@ "properties": { "description": "Sample User Rule", "protocol": "Tcp", - "source": [ + "sources": [ { "addressPrefixType": "IPPrefix", "addressPrefix": "*" } ], - "destination": [ + "destinations": [ { "addressPrefixType": "IPPrefix", "addressPrefix": "*" @@ -74,9 +77,10 @@ }, "201": { "body": { - "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/securityConfigurations/myTestSecurityConfig/userRules/SampleUserRule", - "type": "Microsoft.Network/networkManagers/SecurityConfigurations/UserRules", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/securityUserConfigurations/myTestSecurityConfig/ruleCollections/testRuleCollection/rules/SampleUserRule", + "type": "Microsoft.Network/networkManagers/SecurityUserConfigurations/ruleCollections/rules", "name": "SampleUserRule", + "kind": "Custom", "systemData": { "createdBy": "b69a9388-9488-4534-b470-7ec6d41beef5", "createdByType": "User", @@ -88,13 +92,13 @@ "properties": { "description": "Sample User Rule", "protocol": "Tcp", - "source": [ + "sources": [ { "addressPrefixType": "IPPrefix", "addressPrefix": "*" } ], - "destination": [ + "destinations": [ { "addressPrefixType": "IPPrefix", "addressPrefix": "*" diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerUserRulesList.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerUserRulesList.json index 3d96f51722bc..450a68d6d5dc 100644 --- a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerUserRulesList.json +++ b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/examples/NetworkManagerUserRulesList.json @@ -4,16 +4,18 @@ "subscriptionId": "subId", "resourceGroupName": "rg1", "networkManagerName": "testNetworkManager", - "configurationName": "myTestConnectivityConfig" + "ruleCollectionName": "testRuleCollection", + "configurationName": "myTestSecurityConfig" }, "responses": { "200": { "body": { "value": [ { - "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkmanagers/testNetworkManager/securityConfigurations/myTestConnectivityConfig/userRules/SampleUserRule", - "type": "Microsoft.Network/networkManagers/securityConfigurations/UserRules", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkmanagers/testNetworkManager/securityUserConfigurations/myTestSecurityConfig/ruleCollections/testRuleCollection/rules/SampleUserRule", + "type": "Microsoft.Network/networkManagers/securityConfigurations/ruleCollections/UserRules", "name": "SampleUserRule", + "kind": "Custom", "systemData": { "createdBy": "b69a9388-9488-4534-b470-7ec6d41beef5", "createdByType": "User", @@ -25,13 +27,13 @@ "properties": { "description": "Sample User Rule", "protocol": "Tcp", - "source": [ + "sources": [ { "addressPrefixType": "IPPrefix", "addressPrefix": "*" } ], - "destination": [ + "destinations": [ { "addressPrefixType": "IPPrefix", "addressPrefix": "*" @@ -48,7 +50,7 @@ } } ], - "nextLink": "{baseurl}/subscriptions/subscriptionC/resourceGroup/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/securityConfigurations/myTestConnectivityConfig/userRules?api-version=2021-02-01-preview&$skipToken=10" + "nextLink": "{baseurl}/subscriptions/subscriptionC/resourceGroup/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/securityUserConfigurations/myTestSecurityConfig/ruleCollections/testRuleCollection/rules?api-version=2021-02-01-preview&$skipToken=10" } } } diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/networkManager.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/networkManager.json index 32b91f0cf733..e5493cedb794 100644 --- a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/networkManager.json +++ b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/networkManager.json @@ -215,8 +215,11 @@ } ], "responses": { - "200": { - "description": "Commit Succeed" + "202": { + "description": "Accepted and the operation will complete asynchronously", + "schema": { + "$ref": "#/definitions/NetworkManagerCommit" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -252,7 +255,7 @@ "NetworkManagers" ], "operationId": "NetworkManagerDeploymentStatus_List", - "description": "Post List of Network Manager Deployment Status.", + "description": "Post to List of Network Manager Deployment Status.", "parameters": [ { "name": "parameters", @@ -262,12 +265,6 @@ "$ref": "#/definitions/NetworkManagerDeploymentStatusParameter" }, "description": "Parameters supplied to specify which Managed Network deployment status is." - }, - { - "$ref": "#/parameters/ListTopParameter" - }, - { - "$ref": "#/parameters/ListSkipTokenParameter" } ], "responses": { @@ -284,9 +281,6 @@ } } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, "x-ms-examples": { "NetworkManagerDeploymentStatusList": { "$ref": "./examples/NetworkManagerDeploymentStatusList.json" @@ -394,9 +388,6 @@ ], "operationId": "EffectiveVirtualNetworks_ListByNetworkManager", "description": "List effective virtual networks in a network manager.", - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, "parameters": [ { "$ref": "./network.json#/parameters/SubscriptionIdParameter" @@ -428,7 +419,7 @@ ], "responses": { "200": { - "description": "OK - Returns a list of effective Virtual Networks.", + "description": "OK - Returns a list of effective virtual networks.", "schema": { "$ref": "./networkManagerGroup.json#/definitions/EffectiveVirtualNetworksListResult" } @@ -441,7 +432,7 @@ } }, "x-ms-examples": { - "List Network Manager": { + "List Effective Virtual Networks By Network Manager": { "$ref": "./examples/NetworkManagerEffectiveVirtualNetworksListByNetworkManager.json" } } @@ -524,15 +515,7 @@ "type": "array", "items": { "type": "string", - "enum": [ - "Security", - "Routing", - "Connectivity" - ], - "x-ms-enum": { - "name": "ScopeAccesses", - "modelAsString": true - } + "$ref": "#/definitions/ConfigurationType" }, "description": "Scope Access." }, @@ -546,6 +529,11 @@ }, "NetworkManagerCommit": { "properties": { + "commitId": { + "type": "string", + "readOnly": true, + "description": "Commit Id." + }, "targetLocations": { "type": "array", "items": { @@ -562,16 +550,7 @@ }, "commitType": { "type": "string", - "enum": [ - "AdminPolicy", - "UserPolicy", - "Routing", - "Connectivity" - ], - "x-ms-enum": { - "name": "CommitType", - "modelAsString": true - }, + "$ref": "#/definitions/ConfigurationType", "description": "Commit Type." } }, @@ -589,9 +568,13 @@ "deploymentTypes": { "type": "array", "items": { - "$ref": "#/definitions/DeploymentType" + "$ref": "#/definitions/ConfigurationType" }, - "description": "List of configurations' deployment types." + "description": "List of deployment types." + }, + "$skipToken": { + "description": "Continuation token for pagination, capturing the next page size and offset, as well as the context of the query.", + "type": "string" } }, "description": "Network Manager Deployment Status Parameter." @@ -605,9 +588,9 @@ }, "description": "Gets a page of Network Manager Deployment Status" }, - "nextLink": { - "type": "string", - "description": "Gets the URL to get the next page of results." + "$skipToken": { + "description": "When present, the value can be passed to a subsequent query call (together with the same query and scopes used in the current request) to retrieve the next page of data.", + "type": "string" } }, "description": "A list of Network Manager Deployment Status" @@ -646,7 +629,7 @@ }, "deploymentType": { "type": "string", - "$ref": "#/definitions/DeploymentType" + "$ref": "#/definitions/ConfigurationType" }, "errorMessage": { "type": "string", @@ -655,16 +638,15 @@ }, "description": "Network Manager Deployment Status." }, - "DeploymentType": { + "ConfigurationType": { "type": "string", "enum": [ - "AdminPolicy", - "UserPolicy", - "Routing", + "AdminSecurity", + "UserSecurity", "Connectivity" ], "x-ms-enum": { - "name": "DeploymentType", + "name": "ConfigurationType", "modelAsString": true }, "description": "Configuration Deployment Type." @@ -674,6 +656,10 @@ "conditionalMembers": { "type": "string", "description": "Conditional Members." + }, + "$skipToken": { + "description": "Continuation token for pagination, capturing the next page size and offset, as well as the context of the query.", + "type": "string" } }, "description": "Effective Virtual Networks Parameter." diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/networkManagerActiveConfiguration.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/networkManagerActiveConfiguration.json index 37d12ade20aa..81623cd01620 100644 --- a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/networkManagerActiveConfiguration.json +++ b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/networkManagerActiveConfiguration.json @@ -34,7 +34,7 @@ } }, "paths": { - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkManagers/{networkManagerName}/activeConfigurations": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkManagers/{networkManagerName}/listActiveConfigurations": { "parameters": [ { "$ref": "./network.json#/parameters/ApiVersionParameter" @@ -49,21 +49,16 @@ "$ref": "#/parameters/NetworkManagerNameParameter" }, { - "$ref": "#/parameters/ListTopParameter" - }, - { - "$ref": "#/parameters/ListSkipTokenParameter" - }, - { - "name": "region", - "in": "query", - "description": "Location name", + "name": "parameters", + "in": "body", "required": false, - "type": "string", - "x-ms-parameter-location": "method" + "schema": { + "$ref": "#/definitions/ActiveConfigurationParameter" + }, + "description": "Effective Virtual Networks Parameter." } ], - "get": { + "post": { "tags": [ "NetworkManagerActiveConfigurations" ], @@ -87,9 +82,6 @@ "List Active Configurations": { "$ref": "./examples/NetworkManagerActiveConfigurationList.json" } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } } @@ -105,13 +97,13 @@ "region": { "type": "string", "description": "Deployment region." + }, + "committedConfiguration": { + "type": "object", + "$ref": "./networkManagerEffectiveConfiguration.json#/definitions/EffectiveConfiguration", + "description": "Configuration such as connectivity configuration or security rule collection." } }, - "allOf": [ - { - "$ref": "./networkManagerEffectiveConfiguration.json#/definitions/EffectiveConfiguration" - } - ], "description": "Active Configuration." }, "ActiveConfigurationListResult": { @@ -123,12 +115,29 @@ }, "description": "Gets a page of active configurations." }, - "nextLink": { - "type": "string", - "description": "Gets the URL to get the next set of results." + "$skipToken": { + "description": "When present, the value can be passed to a subsequent query call (together with the same query and scopes used in the current request) to retrieve the next page of data.", + "type": "string" } }, "description": "Result of the request to list active configurations. It contains a list of active configurations and a URL link to get the next set of results." + }, + "ActiveConfigurationParameter": { + "properties": { + "regions": { + "type": "array", + "items": { + "type": "string", + "description": "region Name." + }, + "description": "List of regions." + }, + "$skipToken": { + "description": "When present, the value can be passed to a subsequent query call (together with the same query and scopes used in the current request) to retrieve the next page of data.", + "type": "string" + } + }, + "description": "Effective Virtual Networks Parameter." } }, "parameters": { @@ -147,25 +156,6 @@ "type": "string", "description": "The name of the network manager.", "x-ms-parameter-location": "method" - }, - "ListTopParameter": { - "name": "$top", - "description": "An optional query parameter which specifies the maximum number of records to be returned by the server.", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "minimum": 1, - "maximum": 20, - "x-ms-parameter-location": "method" - }, - "ListSkipTokenParameter": { - "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", - "x-ms-parameter-location": "method" } } } diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/networkManagerConnectivityConfiguration.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/networkManagerConnectivityConfiguration.json index 116118530f2e..39348f651e58 100644 --- a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/networkManagerConnectivityConfiguration.json +++ b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/networkManagerConnectivityConfiguration.json @@ -250,8 +250,8 @@ "connectivityTopology": { "type": "string", "enum": [ - "HubAndSpokeTopology", - "MeshTopology" + "HubAndSpoke", + "Mesh" ], "x-ms-enum": { "name": "ConnectivityTopology", @@ -264,7 +264,15 @@ "description": "The hub vnet Id." }, "isGlobal": { - "type": "boolean", + "type": "string", + "enum": [ + "False", + "True" + ], + "x-ms-enum": { + "name": "IsGlobal", + "modelAsString": true + }, "description": "Flag if global mesh is supported." }, "appliesToGroups": { @@ -280,7 +288,15 @@ "description": "The provisioning state of the connectivity configuration resource." }, "deleteExistingPeering": { - "type": "boolean", + "type": "string", + "enum": [ + "False", + "True" + ], + "x-ms-enum": { + "name": "DeleteExistingPeering", + "modelAsString": true + }, "description": "Flag if need to remove current existing peerings." } }, @@ -297,11 +313,27 @@ "description": "Network group Id." }, "useHubGateway": { - "type": "boolean", + "type": "string", + "enum": [ + "False", + "True" + ], + "x-ms-enum": { + "name": "UseHubGateway", + "modelAsString": true + }, "description": "Flag if need to use hub gateway." }, "isGlobal": { - "type": "boolean", + "type": "string", + "enum": [ + "False", + "True" + ], + "x-ms-enum": { + "name": "IsGlobal", + "modelAsString": true + }, "description": "Flag if global is supported." }, "groupConnectivity": { diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/networkManagerEffectiveConfiguration.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/networkManagerEffectiveConfiguration.json index 5dc6d1b8f262..1e84f4cc7eed 100644 --- a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/networkManagerEffectiveConfiguration.json +++ b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/networkManagerEffectiveConfiguration.json @@ -34,7 +34,7 @@ } }, "paths": { - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/networkManagerEffectiveConfigurations": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/listNetworkManagerEffectiveConfigurations": { "parameters": [ { "$ref": "./network.json#/parameters/SubscriptionIdParameter" @@ -49,13 +49,16 @@ "$ref": "./network.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ListTopParameter" - }, - { - "$ref": "#/parameters/ListSkipTokenParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./networkManagerGroup.json#/definitions/QueryRequestOptions" + }, + "description": "Parameters supplied to list correct page." } ], - "get": { + "post": { "tags": [ "NetworkManagerEffectiveConfiguration" ], @@ -75,55 +78,349 @@ } } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, "x-ms-examples": { "List effective configuration": { "$ref": "./examples/NetworkManagerEffectiveConfigurationsList.json" } } } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}/listNetworkManagerEffectiveConfigurations": { + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/VirtualNetworkNameParameter" + }, + { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./networkManagerGroup.json#/definitions/QueryRequestOptions" + }, + "description": "Parameters supplied to list correct page." + } + ], + "post": { + "tags": [ + "NetworkManagerEffectiveConfiguration" + ], + "operationId": "EffectiveConfigurations_ListBySubnet", + "description": "List all configurations in a subnet.", + "responses": { + "200": { + "description": "OK - Returns information about all effective configurations in a subnet.", + "schema": { + "$ref": "#/definitions/NetworkManagerEffectiveConfigurationListResult" + } + }, + "default": { + "description": "Resource Provider error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List effective configuration in a subnet": { + "$ref": "./examples/NetworkManagerEffectiveConfigurationsListBySubnet.json" + } + } + } } }, "definitions": { "EffectiveConfiguration": { "properties": { - "configType": { + "id": { + "type": "string", + "description": "Resource ID." + }, + "kind": { "type": "string", "enum": [ - "AdminPolicy", - "UserPolicy", - "Connectivity" + "ConnectivityConfiguration", + "SecurityUserRuleCollection", + "SecurityAdminRuleCollection" ], "x-ms-enum": { - "name": "ConfigType", + "name": "EffectiveConfigurationKind", "modelAsString": true }, - "description": "Effective configuration." - }, - "connectivityConfiguration": { - "$ref": "./networkManagerConnectivityConfiguration.json#/definitions/ConnectivityConfiguration", - "description": "Connectivity configuration object." - }, - "securityAdminRule": { - "$ref": "./networkManagerSecurityConfiguration.json#/definitions/AdminRule", - "description": "Security admin rule object." - }, - "securityUserRule": { - "$ref": "./networkManagerSecurityConfiguration.json#/definitions/UserRule", - "description": "Security user rule object." + "description": "Effective configuration Type." }, "configurationGroups": { "type": "array", "items": { - "$ref": "./networkManagerGroup.json#/definitions/NetworkGroup" + "$ref": "#/definitions/ConfigurationGroup" }, "description": "Effective configuration groups." } }, + "required": [ + "kind" + ], + "discriminator": "kind", "description": "The network manager effective configuration" }, + "EffectiveConnectivityConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "./networkManagerConnectivityConfiguration.json#/definitions/ConnectivityConfigurationProperties", + "description": "Properties of a network manager connectivity configuration" + } + }, + "allOf": [ + { + "$ref": "#/definitions/EffectiveConfiguration" + } + ], + "description": "The network manager connectivity configuration resource", + "x-ms-discriminator-value": "ConnectivityConfiguration" + }, + "SecurityUserRuleCollection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SecurityUserRuleCollectionProperties", + "description": "The security user rule collection properties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/EffectiveConfiguration" + } + ], + "description": "The network manager effective security user rule collection", + "x-ms-discriminator-value": "SecurityUserRuleCollection" + }, + "SecurityAdminRuleCollection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SecurityAdminRuleCollectionProperties", + "description": "The security admin rule collection properties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/EffectiveConfiguration" + } + ], + "description": "The network manager effective security admin rule collection", + "x-ms-discriminator-value": "SecurityAdminRuleCollection" + }, + "SecurityUserRuleCollectionProperties": { + "properties": { + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/UserBaseRule" + }, + "description": "Base user rule List" + } + }, + "allOf": [ + { + "$ref": "#/definitions/RuleCollectionProperties" + } + ], + "description": "The network manager security user rule collection properties" + }, + "SecurityAdminRuleCollectionProperties": { + "properties": { + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/AdminBaseRule" + }, + "description": "Base admin rule List" + } + }, + "allOf": [ + { + "$ref": "#/definitions/RuleCollectionProperties" + } + ], + "description": "The network manager security rule admin collection properties" + }, + "RuleCollectionProperties": { + "properties": { + "configurationDisplayName": { + "type": "string", + "description": "A display name of the rule collection." + }, + "configurationDescription": { + "type": "string", + "description": "A description of the rule collection." + }, + "displayName": { + "type": "string", + "description": "A display name of the rule collection." + }, + "description": { + "type": "string", + "description": "A description of the rule collection." + }, + "appliesToGroups": { + "type": "array", + "items": { + "$ref": "./networkManagerSecurityAdminConfiguration.json#/definitions/NetworkManagerSecurityGroupItem" + }, + "description": "Groups for configuration" + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the the resource." + } + }, + "description": "The network manager security rule collection properties" + }, + "AdminBaseRule": { + "properties": { + "id": { + "type": "string", + "description": "Resource ID." + }, + "kind": { + "type": "string", + "description": "Whether the rule collection is custom or default.", + "enum": [ + "Custom", + "Default" + ], + "x-ms-enum": { + "name": "EffectiveAdminRuleKind", + "modelAsString": true + } + } + }, + "required": [ + "kind" + ], + "discriminator": "kind", + "description": "Network base rule." + }, + "EffectiveAdminRule": { + "properties": { + "properties": { + "$ref": "./networkManagerSecurityAdminConfiguration.json#/definitions/AdminPropertiesFormat", + "x-ms-client-flatten": true, + "description": "Indicates the properties of the security admin rule" + } + }, + "allOf": [ + { + "$ref": "#/definitions/AdminBaseRule" + } + ], + "description": "Network admin rule.", + "x-ms-discriminator-value": "Custom" + }, + "EffectiveDefaultAdminRule": { + "properties": { + "properties": { + "$ref": "./networkManagerSecurityAdminConfiguration.json#/definitions/DefaultAdminPropertiesFormat", + "x-ms-client-flatten": true, + "description": "Indicates the properties of the default security admin rule" + } + }, + "allOf": [ + { + "$ref": "#/definitions/AdminBaseRule" + } + ], + "description": "Network default admin rule.", + "x-ms-discriminator-value": "Default" + }, + "UserBaseRule": { + "properties": { + "id": { + "type": "string", + "description": "Resource ID." + }, + "kind": { + "type": "string", + "description": "Whether the rule collection is custom or default.", + "enum": [ + "Custom", + "Default" + ], + "x-ms-enum": { + "name": "EffectiveUserRuleKind", + "modelAsString": true + } + } + }, + "required": [ + "kind" + ], + "discriminator": "kind", + "description": "Network base rule." + }, + "EffectiveUserRule": { + "properties": { + "properties": { + "$ref": "./networkManagerSecurityUserConfiguration.json#/definitions/UserRulePropertiesFormat", + "x-ms-client-flatten": true, + "description": "Indicates the properties of the security user rule" + } + }, + "allOf": [ + { + "$ref": "#/definitions/UserBaseRule" + } + ], + "description": "Network security user rule.", + "x-ms-discriminator-value": "Custom" + }, + "EffectiveDefaultUserRule": { + "properties": { + "properties": { + "$ref": "./networkManagerSecurityUserConfiguration.json#/definitions/DefaultUserRulePropertiesFormat", + "x-ms-client-flatten": true, + "description": "Indicates the properties of the security default user rule" + } + }, + "allOf": [ + { + "$ref": "#/definitions/UserBaseRule" + } + ], + "description": "Network security default user rule.", + "x-ms-discriminator-value": "Default" + }, + "ConfigurationGroup": { + "properties": { + "id": { + "type": "string", + "description": "Resource ID." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "./networkManagerGroup.json#/definitions/NetworkGroupProperties", + "description": "The network configuration group properties" + } + }, + "description": "The network configuration group resource" + }, "NetworkManagerEffectiveConfigurationListResult": { "properties": { "value": { @@ -133,9 +430,9 @@ }, "description": "Gets a page of NetworkManagerEffectiveConfiguration" }, - "nextLink": { - "type": "string", - "description": "Gets the URL to get the next set of results." + "$skipToken": { + "description": "When present, the value can be passed to a subsequent query call (together with the same query and scopes used in the current request) to retrieve the next page of data.", + "type": "string" } }, "description": "Result of the request to list networkManagerEffectiveConfiguration. It contains a list of groups and a URL link to get the next set of results." @@ -157,25 +454,6 @@ "type": "string", "description": "The name of the virtual network.", "x-ms-parameter-location": "method" - }, - "ListTopParameter": { - "name": "$top", - "description": "An optional query parameter which specifies the maximum number of records to be returned by the server.", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "minimum": 1, - "maximum": 20, - "x-ms-parameter-location": "method" - }, - "ListSkipTokenParameter": { - "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", - "x-ms-parameter-location": "method" } } } diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/networkManagerGroup.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/networkManagerGroup.json index 8ecfe3f15f57..b15d672de320 100644 --- a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/networkManagerGroup.json +++ b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/networkManagerGroup.json @@ -226,9 +226,6 @@ ], "operationId": "EffectiveVirtualNetworks_ListByNetworkGroup", "description": "Lists all effective virtual networks by specified network group.", - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, "parameters": [ { "$ref": "./network.json#/parameters/SubscriptionIdParameter" @@ -246,10 +243,13 @@ "$ref": "./network.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ListTopParameter" - }, - { - "$ref": "#/parameters/ListSkipTokenParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/QueryRequestOptions" + }, + "description": "Parameters supplied to list correct page." } ], "responses": { @@ -356,13 +356,26 @@ "groupMembersItem": { "type": "object", "properties": { - "resourceId": { + "vnetId": { "type": "string", - "description": "Resource Id." + "description": "Vnet Id." + }, + "subnetId": { + "type": "string", + "description": "Subnet Id." } }, "description": "GroupMembers Item." }, + "QueryRequestOptions": { + "properties": { + "$skipToken": { + "description": "When present, the value can be passed to a subsequent query call (together with the same query and scopes used in the current request) to retrieve the next page of data.", + "type": "string" + } + }, + "description": "Query Request Options" + }, "EffectiveVirtualNetworksListResult": { "properties": { "value": { @@ -372,24 +385,9 @@ }, "description": "Gets a page of EffectiveVirtualNetwork" }, - "totalRecords": { - "description": "Total Records.", - "format": "int32", - "type": "integer" - }, - "firstIndex": { - "description": "First Index.", - "format": "int32", - "type": "integer" - }, - "pageSize": { - "description": "Page Size.", - "format": "int32", - "type": "integer" - }, - "nextLink": { - "type": "string", - "description": "Gets the URL to get the next set of results." + "$skipToken": { + "description": "When present, the value can be passed to a subsequent query call (together with the same query and scopes used in the current request) to retrieve the next page of data.", + "type": "string" } }, "description": "Result of the request to list Effective Virtual Network. It contains a list of groups and a URL link to get the next set of results." diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/networkManagerSecurityAdminConfiguration.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/networkManagerSecurityAdminConfiguration.json new file mode 100644 index 000000000000..866078791d18 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/networkManagerSecurityAdminConfiguration.json @@ -0,0 +1,1064 @@ +{ + "swagger": "2.0", + "info": { + "title": "SecurityAdminConfiguration", + "version": "2021-02-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.Network/networkManagers/{networkManagerName}/securityAdminConfigurations": { + "get": { + "tags": [ + "SecurityAdminConfigurations" + ], + "operationId": "SecurityAdminConfigurations_List", + "description": "Lists all the network manager security admin configurations in a network manager, in a paginated format.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/NetworkManagerNameParameter" + }, + { + "$ref": "#/parameters/ListTopParameter" + }, + { + "$ref": "#/parameters/ListSkipTokenParameter" + } + ], + "responses": { + "200": { + "description": "Get successful. The operation returns all security admin configuration resources in the specified network manager, in a paginated format", + "schema": { + "$ref": "#/definitions/SecurityConfigurationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List security admin configurations in a network manager": { + "$ref": "./examples/NetworkManagerSecurityAdminConfigurationList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkManagers/{networkManagerName}/securityAdminConfigurations/{configurationName}": { + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/NetworkManagerNameParameter" + }, + { + "$ref": "#/parameters/SecurityConfigurationParameter" + } + ], + "get": { + "tags": [ + "SecurityAdminConfigurations" + ], + "description": "Retrieves a network manager security admin configuration.", + "operationId": "SecurityAdminConfigurations_Get", + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/SecurityConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get security admin configurations": { + "$ref": "./examples/NetworkManagerSecurityAdminConfigurationGet.json" + } + } + }, + "put": { + "tags": [ + "SecurityAdminConfigurations" + ], + "description": "Creates or updates a network manager security admin configuration.", + "operationId": "SecurityAdminConfigurations_CreateOrUpdate", + "parameters": [ + { + "name": "securityAdminConfiguration", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SecurityConfiguration" + }, + "description": "The security admin configuration to create or update" + } + ], + "responses": { + "200": { + "description": "Updated Admin Configuration", + "schema": { + "$ref": "#/definitions/SecurityConfiguration" + } + }, + "201": { + "description": "Created Admin Configuration", + "schema": { + "$ref": "#/definitions/SecurityConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create network manager security admin configuration": { + "$ref": "./examples/NetworkManagerSecurityAdminConfigurationPut.json" + } + } + }, + "delete": { + "tags": [ + "SecurityAdminConfigurations" + ], + "description": "Deletes a network manager security admin configuration.", + "operationId": "SecurityAdminConfigurations_Delete", + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "Request successful. Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete network manager security admin configuration": { + "$ref": "./examples/NetworkManagerSecurityAdminConfigurationDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkManagers/{networkManagerName}/securityAdminConfigurations/{configurationName}/ruleCollections": { + "get": { + "tags": [ + "AdminRuleCollections" + ], + "operationId": "AdminRuleCollections_List", + "description": "Lists all the rule collections in a security admin configuration, in a paginated format.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/NetworkManagerNameParameter" + }, + { + "$ref": "#/parameters/SecurityConfigurationParameter" + }, + { + "$ref": "#/parameters/ListTopParameter" + }, + { + "$ref": "#/parameters/ListSkipTokenParameter" + } + ], + "responses": { + "200": { + "description": "Get successful. The operation returns all ruleCollections in the specified security configuration, in a paginated format", + "schema": { + "$ref": "#/definitions/RuleCollectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List security admin rule collections": { + "$ref": "./examples/NetworkManagerAdminRuleCollectionList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkManagers/{networkManagerName}/securityAdminConfigurations/{configurationName}/ruleCollections/{ruleCollectionName}": { + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/NetworkManagerNameParameter" + }, + { + "$ref": "#/parameters/SecurityConfigurationParameter" + }, + { + "$ref": "#/parameters/RuleCollectionParameter" + } + ], + "get": { + "tags": [ + "AdminRuleCollections" + ], + "description": "Gets a network manager security admin configuration rule collection.", + "operationId": "AdminRuleCollections_Get", + "responses": { + "200": { + "description": "Successful operation", + "schema": { + "$ref": "#/definitions/RuleCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Gets security admin rule collection": { + "$ref": "./examples/NetworkManagerAdminRuleCollectionGet.json" + } + } + }, + "put": { + "tags": [ + "AdminRuleCollections" + ], + "description": "Creates or updates an admin rule collection.", + "operationId": "AdminRuleCollections_CreateOrUpdate", + "parameters": [ + { + "name": "ruleCollection", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RuleCollection" + }, + "description": "The Rule Collection to create or update" + } + ], + "responses": { + "200": { + "description": "Updated Rule Collection", + "schema": { + "$ref": "#/definitions/RuleCollection" + } + }, + "201": { + "description": "Created Rule Collection", + "schema": { + "$ref": "#/definitions/RuleCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create or Update an admin rule collection": { + "$ref": "./examples/NetworkManagerAdminRuleCollectionPut.json" + } + } + }, + "delete": { + "tags": [ + "AdminRuleCollections" + ], + "description": "Deletes an admin rule collection.", + "operationId": "AdminRuleCollections_Delete", + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "Request successful. Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Deletes an admin rule collection": { + "$ref": "./examples/NetworkManagerAdminRuleCollectionDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkManagers/{networkManagerName}/securityAdminConfigurations/{configurationName}/ruleCollections/{ruleCollectionName}/rules": { + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/NetworkManagerNameParameter" + }, + { + "$ref": "#/parameters/SecurityConfigurationParameter" + }, + { + "$ref": "#/parameters/RuleCollectionParameter" + }, + { + "$ref": "#/parameters/ListTopParameter" + }, + { + "$ref": "#/parameters/ListSkipTokenParameter" + } + ], + "get": { + "tags": [ + "AdminRules" + ], + "description": "List all network manager security configuration admin rules.", + "operationId": "AdminRules_List", + "responses": { + "200": { + "description": "Successful operation", + "schema": { + "$ref": "#/definitions/AdminRuleListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List security admin rules": { + "$ref": "./examples/NetworkManagerAdminRulesList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkManagers/{networkManagerName}/securityAdminConfigurations/{configurationName}/ruleCollections/{ruleCollectionName}/rules/{ruleName}": { + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/NetworkManagerNameParameter" + }, + { + "$ref": "#/parameters/SecurityConfigurationParameter" + }, + { + "$ref": "#/parameters/RuleCollectionParameter" + }, + { + "$ref": "#/parameters/SecurityConfigurationsRuleParameter" + } + ], + "get": { + "tags": [ + "AdminRules" + ], + "description": "Gets a network manager security configuration admin rule.", + "operationId": "AdminRules_Get", + "responses": { + "200": { + "description": "Successful operation", + "schema": { + "$ref": "#/definitions/BaseAdminRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Gets security admin rule": { + "$ref": "./examples/NetworkManagerAdminRuleGet.json" + }, + "Gets security default admin rule": { + "$ref": "./examples/NetworkManagerDefaultAdminRuleGet.json" + } + } + }, + "put": { + "tags": [ + "AdminRules" + ], + "description": "Creates or updates an admin rule.", + "operationId": "AdminRules_CreateOrUpdate", + "parameters": [ + { + "name": "adminRule", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/BaseAdminRule" + }, + "description": "The admin rule to create or update" + } + ], + "responses": { + "200": { + "description": "Updated rule", + "schema": { + "$ref": "#/definitions/BaseAdminRule" + } + }, + "201": { + "description": "Created rule", + "schema": { + "$ref": "#/definitions/BaseAdminRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create an admin rule": { + "$ref": "./examples/NetworkManagerAdminRulePut.json" + }, + "Create a default admin rule": { + "$ref": "./examples/NetworkManagerDefaultAdminRulePut.json" + } + } + }, + "delete": { + "tags": [ + "AdminRules" + ], + "description": "Deletes an admin rule.", + "operationId": "AdminRules_Delete", + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "Request successful. Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Deletes an admin rule": { + "$ref": "./examples/NetworkManagerAdminRuleDelete.json" + } + } + } + } + }, + "definitions": { + "SecurityConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SecurityConfigurationPropertiesFormat", + "description": "Indicates the properties for the network manager security Configuration." + }, + "systemData": { + "readOnly": true, + "description": "The system metadata related to this resource.", + "$ref": "./network.json#/definitions/SystemData" + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/ProxyResource" + } + ], + "description": "Defines the security configuration" + }, + "SecurityConfigurationPropertiesFormat": { + "properties": { + "displayName": { + "type": "string", + "description": "A display name of the security configuration." + }, + "description": { + "type": "string", + "description": "A description of the security configuration." + }, + "securityType": { + "type": "string", + "description": "Security Type.", + "enum": [ + "AdminPolicy", + "UserPolicy" + ], + "x-ms-enum": { + "name": "SecurityType", + "modelAsString": true + } + }, + "deleteExistingNSGs": { + "type": "string", + "enum": [ + "False", + "True" + ], + "x-ms-enum": { + "name": "DeleteExistingNSGs", + "modelAsString": true + }, + "description": "Flag if need to delete existing network security groups." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the resource." + } + }, + "description": "Defines the security Configuration properties." + }, + "SecurityConfigurationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SecurityConfiguration" + }, + "description": "Gets a page of security configurations" + }, + "nextLink": { + "type": "string", + "description": "Gets the URL to get the next page of results." + } + }, + "description": "A list of network manager security configurations" + }, + "AdminRuleListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BaseAdminRule" + }, + "description": "A list of admin rules" + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "security configuration admin rule list result." + }, + "RuleCollectionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RuleCollection" + }, + "description": "A list of network manager security configuration rule collections" + }, + "nextLink": { + "type": "string", + "description": "Gets the URL to get the next set of results." + } + }, + "description": "Security configuration rule collection list result." + }, + "RuleCollection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RuleCollectionPropertiesFormat", + "description": "Indicates the properties for the network manager rule collection." + }, + "systemData": { + "readOnly": true, + "description": "The system metadata related to this resource.", + "$ref": "./network.json#/definitions/SystemData" + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/ProxyResource" + } + ], + "description": "Defines the rule collection." + }, + "RuleCollectionPropertiesFormat": { + "properties": { + "displayName": { + "type": "string", + "description": "A display name of the rule collection." + }, + "description": { + "type": "string", + "description": "A description of the rule collection." + }, + "appliesToGroups": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkManagerSecurityGroupItem" + }, + "description": "Groups for configuration" + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the resource." + } + }, + "description": "Defines the rule collection properties." + }, + "BaseAdminRule": { + "properties": { + "kind": { + "type": "string", + "description": "Whether the rule is custom or default.", + "enum": [ + "Custom", + "Default" + ], + "x-ms-enum": { + "name": "AdminRuleKind", + "modelAsString": true + } + }, + "systemData": { + "readOnly": true, + "description": "The system metadata related to this resource.", + "$ref": "./network.json#/definitions/SystemData" + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/ProxyResource" + } + ], + "required": [ + "kind" + ], + "discriminator": "kind", + "description": "Network base admin rule." + }, + "AdminRule": { + "properties": { + "properties": { + "$ref": "#/definitions/AdminPropertiesFormat", + "x-ms-client-flatten": true, + "description": "Indicates the properties of the security admin rule" + } + }, + "allOf": [ + { + "$ref": "#/definitions/BaseAdminRule" + } + ], + "description": "Network admin rule.", + "x-ms-discriminator-value": "Custom" + }, + "AdminPropertiesFormat": { + "properties": { + "displayName": { + "type": "string", + "description": "A friendly name for the rule." + }, + "description": { + "type": "string", + "description": "A description for this rule. Restricted to 140 chars." + }, + "protocol": { + "type": "string", + "$ref": "#/definitions/RuleProtocol", + "description": "Network protocol this rule applies to." + }, + "sources": { + "type": "array", + "items": { + "$ref": "#/definitions/AddressPrefixItem" + }, + "description": "The CIDR or source IP ranges." + }, + "destinations": { + "type": "array", + "items": { + "$ref": "#/definitions/AddressPrefixItem" + }, + "description": "The destination address prefixes. CIDR or destination IP ranges." + }, + "sourcePortRanges": { + "type": "array", + "items": { + "type": "string", + "description": "The source port." + }, + "description": "The source port ranges." + }, + "destinationPortRanges": { + "type": "array", + "items": { + "type": "string", + "description": "The destination port." + }, + "description": "The destination port ranges." + }, + "access": { + "$ref": "#/definitions/SecurityConfigurationRuleAccess", + "description": "Indicates the access allowed for this particular rule" + }, + "priority": { + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 4096, + "description": "The priority of the rule. The value can be between 1 and 4096. The priority number must be unique for each rule in the collection. The lower the priority number, the higher the priority of the rule." + }, + "direction": { + "$ref": "#/definitions/SecurityConfigurationRuleDirection", + "description": "Indicates if the traffic matched against the rule in inbound or outbound." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the resource." + } + }, + "required": [ + "protocol", + "access", + "direction" + ], + "description": "Security admin rule resource." + }, + "DefaultAdminRule": { + "properties": { + "properties": { + "$ref": "#/definitions/DefaultAdminPropertiesFormat", + "x-ms-client-flatten": true, + "description": "Indicates the properties of the security admin rule" + } + }, + "allOf": [ + { + "$ref": "#/definitions/BaseAdminRule" + } + ], + "description": "Network default admin rule.", + "x-ms-discriminator-value": "Default" + }, + "DefaultAdminPropertiesFormat": { + "type": "object", + "properties": { + "displayName": { + "type": "string", + "readOnly": true, + "description": "A friendly name for the rule." + }, + "description": { + "type": "string", + "readOnly": true, + "description": "A description for this rule. Restricted to 140 chars." + }, + "flag": { + "type": "string", + "description": "Default rule flag." + }, + "protocol": { + "type": "string", + "readOnly": true, + "$ref": "#/definitions/RuleProtocol", + "description": "Network protocol this rule applies to." + }, + "sources": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/AddressPrefixItem" + }, + "description": "The CIDR or source IP ranges." + }, + "destinations": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/AddressPrefixItem" + }, + "description": "The destination address prefixes. CIDR or destination IP ranges." + }, + "sourcePortRanges": { + "type": "array", + "readOnly": true, + "items": { + "type": "string", + "description": "The source port." + }, + "description": "The source port ranges." + }, + "destinationPortRanges": { + "type": "array", + "readOnly": true, + "items": { + "type": "string", + "description": "The destination port." + }, + "description": "The destination port ranges." + }, + "access": { + "$ref": "#/definitions/SecurityConfigurationRuleAccess", + "readOnly": true, + "description": "Indicates the access allowed for this particular rule" + }, + "priority": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "The priority of the rule. The value can be between 1 and 4096. The priority number must be unique for each rule in the collection. The lower the priority number, the higher the priority of the rule." + }, + "direction": { + "$ref": "#/definitions/SecurityConfigurationRuleDirection", + "readOnly": true, + "description": "Indicates if the traffic matched against the rule in inbound or outbound." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the resource." + } + }, + "description": "Security default admin rule resource." + }, + "SecurityConfigurationRuleAccess": { + "type": "string", + "description": "Whether network traffic is allowed or denied.", + "enum": [ + "Allow", + "Deny", + "AlwaysAllow" + ], + "x-ms-enum": { + "name": "SecurityConfigurationRuleAccess", + "modelAsString": true + } + }, + "SecurityConfigurationRuleDirection": { + "type": "string", + "description": "The direction of the rule. The direction specifies if the rule will be evaluated on incoming or outgoing traffic.", + "enum": [ + "Inbound", + "Outbound" + ], + "x-ms-enum": { + "name": "SecurityConfigurationRuleDirection", + "modelAsString": true + } + }, + "RuleProtocol": { + "type": "string", + "description": "Network protocol this rule applies to.", + "enum": [ + "Tcp", + "Udp", + "Icmp", + "Esp", + "Any", + "Ah" + ], + "x-ms-enum": { + "name": "SecurityConfigurationRuleProtocol", + "modelAsString": true + } + }, + "NetworkManagerSecurityGroupItem": { + "type": "object", + "properties": { + "networkGroupId": { + "type": "string", + "description": "Network manager group Id." + } + }, + "description": "Network manager security group item." + }, + "AddressPrefixItem": { + "type": "object", + "properties": { + "addressPrefix": { + "type": "string", + "description": "Address prefix." + }, + "addressPrefixType": { + "type": "string", + "description": "Address prefix type.", + "enum": [ + "IPPrefix", + "ServiceTag" + ], + "x-ms-enum": { + "name": "AddressPrefixType", + "modelAsString": true + } + } + }, + "description": "Address prefix item." + } + }, + "parameters": { + "SecurityConfigurationParameter": { + "name": "configurationName", + "in": "path", + "description": "The name of the network manager security Configuration.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "RuleCollectionParameter": { + "name": "ruleCollectionName", + "in": "path", + "description": "The name of the network manager security Configuration rule collection.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "SecurityConfigurationsRuleParameter": { + "name": "ruleName", + "in": "path", + "description": "The name of the rule.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group.", + "x-ms-parameter-location": "method" + }, + "NetworkManagerNameParameter": { + "name": "networkManagerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network manager.", + "x-ms-parameter-location": "method" + }, + "ListTopParameter": { + "name": "$top", + "description": "An optional query parameter which specifies the maximum number of records to be returned by the server.", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 20, + "x-ms-parameter-location": "method" + }, + "ListSkipTokenParameter": { + "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", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/networkManagerSecurityConfiguration.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/networkManagerSecurityConfiguration.json deleted file mode 100644 index 7a0589d0477b..000000000000 --- a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/networkManagerSecurityConfiguration.json +++ /dev/null @@ -1,1201 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "SecurityConfiguration", - "version": "2021-02-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.Network/networkManagers/{networkManagerName}/securityConfigurations": { - "get": { - "tags": [ - "SecurityConfigurations" - ], - "operationId": "SecurityConfigurations_List", - "description": "Lists all the network manager security configurations in a network manager, in a paginated format.", - "parameters": [ - { - "$ref": "./network.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "./network.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/NetworkManagerNameParameter" - }, - { - "$ref": "#/parameters/ListTopParameter" - }, - { - "$ref": "#/parameters/ListSkipTokenParameter" - } - ], - "responses": { - "200": { - "description": "Get successful. The operation returns all security configuration resources in the specified network manager, in a paginated format", - "schema": { - "$ref": "#/definitions/SecurityConfigurationListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "./network.json#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-examples": { - "List security configurations in a network manager": { - "$ref": "./examples/NetworkManagerSecurityConfigurationList.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkManagers/{networkManagerName}/securityConfigurations/{configurationName}/import": { - "post": { - "tags": [ - "SecurityConfigurations" - ], - "operationId": "SecurityConfigurations_Import", - "description": "Imports network security rules to network manager security rules.", - "parameters": [ - { - "$ref": "./network.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "./network.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/NetworkManagerNameParameter" - }, - { - "$ref": "#/parameters/SecurityConfigurationParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/NetworkManagerSecurityConfigurationImport" - }, - "description": "Import Security configuration parameter" - } - ], - "responses": { - "200": { - "description": "Post successful.", - "schema": { - "$ref": "#/definitions/SecurityConfigurationImportResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "./network.json#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Import NSG Rules": { - "$ref": "./examples/NetworkManagerSecurityConfigurationImport.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkManagers/{networkManagerName}/securityConfigurations/{configurationName}/evaluateImport": { - "post": { - "tags": [ - "SecurityConfigurations" - ], - "operationId": "SecurityConfigurations_EvaluateImport", - "description": "The operation to evaluate import NSG to security configurations.", - "parameters": [ - { - "$ref": "./network.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "./network.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/NetworkManagerNameParameter" - }, - { - "$ref": "#/parameters/SecurityConfigurationParameter" - }, - { - "$ref": "#/parameters/ListTopParameter" - }, - { - "$ref": "#/parameters/ListSkipTokenParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/NetworkManagerSecurityConfigurationImport" - }, - "description": "Import security configuration parameter" - } - ], - "responses": { - "200": { - "description": "Post successful.", - "schema": { - "$ref": "#/definitions/SecurityConfigurationRuleListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "./network.json#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-examples": { - "Evaluate import NSG Rules": { - "$ref": "./examples/NetworkManagerSecurityConfigurationEvaluateImport.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkManagers/{networkManagerName}/securityConfigurations/{configurationName}": { - "parameters": [ - { - "$ref": "./network.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "./network.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/NetworkManagerNameParameter" - }, - { - "$ref": "#/parameters/SecurityConfigurationParameter" - } - ], - "get": { - "tags": [ - "SecurityConfigurations" - ], - "description": "Retrieves a network manager security Configuration.", - "operationId": "SecurityConfigurations_Get", - "responses": { - "200": { - "description": "successful operation", - "schema": { - "$ref": "#/definitions/SecurityConfiguration" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "./network.json#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Get security configurations": { - "$ref": "./examples/NetworkManagerSecurityConfigurationGet.json" - } - } - }, - "put": { - "tags": [ - "SecurityConfigurations" - ], - "description": "Creates or updates a network manager security Configuration.", - "operationId": "SecurityConfigurations_CreateOrUpdate", - "parameters": [ - { - "name": "securityConfiguration", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/SecurityConfiguration" - }, - "description": "The security configuration to create or update" - } - ], - "responses": { - "200": { - "description": "Updated Configuration", - "schema": { - "$ref": "#/definitions/SecurityConfiguration" - } - }, - "201": { - "description": "Created Configuration", - "schema": { - "$ref": "#/definitions/SecurityConfiguration" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "./network.json#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Create network manager security Configuration": { - "$ref": "./examples/NetworkManagerSecurityConfigurationPut.json" - } - } - }, - "delete": { - "tags": [ - "SecurityConfigurations" - ], - "description": "Deletes a network manager security Configuration.", - "operationId": "SecurityConfigurations_Delete", - "responses": { - "200": { - "description": "OK" - }, - "204": { - "description": "Request successful. Resource does not exist." - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "./network.json#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Delete network manager security Configuration": { - "$ref": "./examples/NetworkManagerSecurityConfigurationDelete.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkManagers/{networkManagerName}/securityConfigurations/{configurationName}/adminRules": { - "parameters": [ - { - "$ref": "./network.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "./network.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/NetworkManagerNameParameter" - }, - { - "$ref": "#/parameters/SecurityConfigurationParameter" - }, - { - "$ref": "#/parameters/ListTopParameter" - }, - { - "$ref": "#/parameters/ListSkipTokenParameter" - } - ], - "get": { - "tags": [ - "AdminRules" - ], - "description": "Retrieves a network manager security configuration admin rule.", - "operationId": "AdminRules_List", - "responses": { - "200": { - "description": "Successful operation", - "schema": { - "$ref": "#/definitions/AdminRuleListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "./network.json#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "List security admin rules": { - "$ref": "./examples/NetworkManagerAdminRulesList.json" - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkManagers/{networkManagerName}/securityConfigurations/{configurationName}/adminRules/{ruleName}": { - "parameters": [ - { - "$ref": "./network.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "./network.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/NetworkManagerNameParameter" - }, - { - "$ref": "#/parameters/SecurityConfigurationParameter" - }, - { - "$ref": "#/parameters/SecurityConfigurationsRuleParameter" - } - ], - "get": { - "tags": [ - "AdminRules" - ], - "description": "Gets a network manager security configuration admin rule in a subscription.", - "operationId": "AdminRules_Get", - "responses": { - "200": { - "description": "Successful operation", - "schema": { - "$ref": "#/definitions/AdminRule" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "./network.json#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Gets security admin rule": { - "$ref": "./examples/NetworkManagerAdminRuleGet.json" - } - } - }, - "put": { - "tags": [ - "AdminRules" - ], - "description": "Creates or updates an admin rule.", - "operationId": "AdminRules_CreateOrUpdate", - "parameters": [ - { - "name": "adminRule", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/AdminRule" - }, - "description": "The admin rule to create or update" - } - ], - "responses": { - "200": { - "description": "Updated rule", - "schema": { - "$ref": "#/definitions/AdminRule" - } - }, - "201": { - "description": "Created rule", - "schema": { - "$ref": "#/definitions/AdminRule" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "./network.json#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Create an admin rule": { - "$ref": "./examples/NetworkManagerAdminRulePut.json" - } - } - }, - "delete": { - "tags": [ - "AdminRules" - ], - "description": "Deletes an admin rule.", - "operationId": "AdminRules_Delete", - "responses": { - "200": { - "description": "OK" - }, - "204": { - "description": "Request successful. Resource does not exist." - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "./network.json#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Deletes an admin rule.": { - "$ref": "./examples/NetworkManagerAdminRuleDelete.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkManagers/{networkManagerName}/securityConfigurations/{configurationName}/userRules": { - "parameters": [ - { - "$ref": "./network.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "./network.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/NetworkManagerNameParameter" - }, - { - "$ref": "#/parameters/SecurityConfigurationParameter" - }, - { - "$ref": "#/parameters/ListTopParameter" - }, - { - "$ref": "#/parameters/ListSkipTokenParameter" - } - ], - "get": { - "tags": [ - "UserRules" - ], - "description": "Lists all user rules in a security configuration.", - "operationId": "UserRules_List", - "responses": { - "200": { - "description": "Successful operation", - "schema": { - "$ref": "#/definitions/UserRuleListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "./network.json#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "List security user rules": { - "$ref": "./examples/NetworkManagerUserRulesList.json" - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkManagers/{networkManagerName}/securityConfigurations/{configurationName}/userRules/{ruleName}": { - "parameters": [ - { - "$ref": "./network.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "./network.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/NetworkManagerNameParameter" - }, - { - "$ref": "#/parameters/SecurityConfigurationParameter" - }, - { - "$ref": "#/parameters/SecurityConfigurationsRuleParameter" - } - ], - "get": { - "tags": [ - "UserRules" - ], - "description": "Gets a user rule.", - "operationId": "UserRules_Get", - "responses": { - "200": { - "description": "Successful operation", - "schema": { - "$ref": "#/definitions/UserRule" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "./network.json#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Gets a user rule": { - "$ref": "./examples/NetworkManagerUserRuleGet.json" - } - } - }, - "put": { - "tags": [ - "UserRules" - ], - "description": "Creates or updates a user rule.", - "operationId": "UserRules_CreateOrUpdate", - "parameters": [ - { - "name": "userRule", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/UserRule" - }, - "description": "The user rule to create or update" - } - ], - "responses": { - "200": { - "description": "Updated rule", - "schema": { - "$ref": "#/definitions/UserRule" - } - }, - "201": { - "description": "Created rule", - "schema": { - "$ref": "#/definitions/UserRule" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "./network.json#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Create a user rule": { - "$ref": "./examples/NetworkManagerUserRulePut.json" - } - } - }, - "delete": { - "tags": [ - "UserRules" - ], - "description": "Deletes a user rule.", - "operationId": "UserRules_Delete", - "responses": { - "200": { - "description": "Delete Succeed." - }, - "204": { - "description": "Request successful. Resource does not exist." - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "./network.json#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Delete a user rule.": { - "$ref": "./examples/NetworkManagerUserRuleDelete.json" - } - } - } - } - }, - "definitions": { - "SecurityConfiguration": { - "properties": { - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/SecurityConfigurationPropertiesFormat", - "description": "Indicates the properties for the network manager security Configuration." - }, - "systemData": { - "readOnly": true, - "description": "The system metadata related to this resource.", - "$ref": "./network.json#/definitions/SystemData" - } - }, - "allOf": [ - { - "$ref": "./network.json#/definitions/ProxyResource" - } - ], - "description": "Defines the security Configuration" - }, - "SecurityConfigurationPropertiesFormat": { - "properties": { - "displayName": { - "type": "string", - "description": "A display name of the security Configuration." - }, - "description": { - "type": "string", - "description": "A description of the security Configuration." - }, - "securityType": { - "type": "string", - "description": "Security Type.", - "enum": [ - "AdminPolicy", - "UserPolicy" - ], - "x-ms-enum": { - "name": "SecurityType", - "modelAsString": true - } - }, - "deleteExistingNSGs": { - "type": "boolean", - "description": "Flag if need to delete existing network security groups." - }, - "appliesToGroups": { - "type": "array", - "items": { - "$ref": "#/definitions/NetworkManagerSecurityGroupItem" - }, - "description": "Groups for configuration" - }, - "provisioningState": { - "readOnly": true, - "$ref": "./network.json#/definitions/ProvisioningState", - "description": "The provisioning state of the scope assignment resource." - } - }, - "description": "Defines the security Configuration properties." - }, - "SecurityConfigurationListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/SecurityConfiguration" - }, - "description": "Gets a page of security configurations" - }, - "nextLink": { - "type": "string", - "description": "Gets the URL to get the next page of results." - } - }, - "description": "A list of managed network security configurations" - }, - "AdminRuleListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/AdminRule" - }, - "description": "A list of admin rules" - }, - "nextLink": { - "type": "string", - "description": "Gets the URL to get the next set of results." - } - }, - "description": "Security configuration admin rule list result." - }, - "UserRuleListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/UserRule" - }, - "description": "A list of user rules" - }, - "nextLink": { - "type": "string", - "description": "Gets the URL to get the next set of results." - } - }, - "description": "Security configuration user rule list result." - }, - "SecurityConfigurationRuleListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/SecurityConfigurationRule" - }, - "description": "A list of network manager security configuration rules" - }, - "failedImport": { - "$ref": "#/definitions/FailedImport", - "description": "Failed Imports." - }, - "nextLink": { - "type": "string", - "description": "Gets the URL to get the next set of results." - } - }, - "description": "Security configuration rule list result." - }, - "AdminRule": { - "properties": { - "properties": { - "$ref": "#/definitions/AdminPropertiesFormat", - "x-ms-client-flatten": true, - "description": "Indicates the properties of the security admin rule" - }, - "systemData": { - "readOnly": true, - "description": "The system metadata related to this resource.", - "$ref": "./network.json#/definitions/SystemData" - } - }, - "allOf": [ - { - "$ref": "./network.json#/definitions/ProxyResource" - } - ], - "description": "Network admin rule." - }, - "AdminPropertiesFormat": { - "type": "object", - "properties": { - "displayName": { - "type": "string", - "description": "A friendly name for the rule." - }, - "description": { - "type": "string", - "description": "A description for this rule." - }, - "protocol": { - "type": "string", - "$ref": "#/definitions/RuleProtocol", - "description": "Network protocol this rule applies to." - }, - "source": { - "type": "array", - "items": { - "$ref": "#/definitions/AddressPrefixItem" - }, - "description": "The CIDR or source IP ranges." - }, - "destination": { - "type": "array", - "items": { - "$ref": "#/definitions/AddressPrefixItem" - }, - "description": "The destination address prefixes. CIDR or destination IP ranges." - }, - "sourcePortRanges": { - "type": "array", - "items": { - "type": "string", - "description": "The source port." - }, - "description": "The source port ranges." - }, - "destinationPortRanges": { - "type": "array", - "items": { - "type": "string", - "description": "The destination port." - }, - "description": "The destination port ranges." - }, - "access": { - "$ref": "#/definitions/SecurityConfigurationRuleAccess", - "description": "Indicates the access allowed for this particular rule" - }, - "priority": { - "type": "integer", - "format": "int32", - "description": "The priority of the rule. The value can be between 1 and 4096. The priority number must be unique for each rule in the collection. The lower the priority number, the higher the priority of the rule." - }, - "direction": { - "$ref": "#/definitions/SecurityConfigurationRuleDirection", - "description": "Indicates if the traffic matched against the rule in inbound or outbound." - }, - "provisioningState": { - "readOnly": true, - "$ref": "./network.json#/definitions/ProvisioningState", - "description": "The provisioning state of the security Configuration resource." - }, - "appliesToGroups": { - "type": "array", - "items": { - "$ref": "#/definitions/NetworkManagerSecurityGroupItem" - }, - "description": "Groups for configuration" - } - }, - "required": [ - "protocol", - "access", - "direction" - ], - "description": "Security rule resource." - }, - "UserRule": { - "properties": { - "properties": { - "$ref": "#/definitions/UserRulePropertiesFormat", - "x-ms-client-flatten": true, - "description": "Indicates the properties of the security user rule" - }, - "systemData": { - "readOnly": true, - "description": "The system metadata related to this resource.", - "$ref": "./network.json#/definitions/SystemData" - } - }, - "allOf": [ - { - "$ref": "./network.json#/definitions/ProxyResource" - } - ], - "description": "Network security admin rule." - }, - "UserRulePropertiesFormat": { - "type": "object", - "properties": { - "displayName": { - "type": "string", - "description": "A friendly name for the rule." - }, - "description": { - "type": "string", - "description": "A description for this rule. Restricted to 140 chars." - }, - "protocol": { - "type": "string", - "$ref": "#/definitions/RuleProtocol", - "description": "Network protocol this rule applies to." - }, - "source": { - "type": "array", - "items": { - "$ref": "#/definitions/AddressPrefixItem" - }, - "description": "The CIDR or source IP ranges." - }, - "destination": { - "type": "array", - "items": { - "$ref": "#/definitions/AddressPrefixItem" - }, - "description": "The destination address prefixes. CIDR or destination IP ranges." - }, - "sourcePortRanges": { - "type": "array", - "items": { - "type": "string", - "description": "The source port." - }, - "description": "The source port ranges." - }, - "destinationPortRanges": { - "type": "array", - "items": { - "type": "string", - "description": "The destination port." - }, - "description": "The destination port ranges." - }, - "direction": { - "$ref": "#/definitions/SecurityConfigurationRuleDirection", - "description": "Indicates if the traffic matched against the rule in inbound or outbound." - }, - "provisioningState": { - "readOnly": true, - "$ref": "./network.json#/definitions/ProvisioningState", - "description": "The provisioning state of the security Configuration resource." - } - }, - "required": [ - "protocol", - "direction" - ], - "description": "Security rule resource." - }, - "SecurityConfigurationRuleAccess": { - "type": "string", - "description": "Whether network traffic is allowed or denied.", - "enum": [ - "Allow", - "Deny", - "AlwaysAllow" - ], - "x-ms-enum": { - "name": "SecurityConfigurationRuleAccess", - "modelAsString": true - } - }, - "SecurityConfigurationRuleDirection": { - "type": "string", - "description": "The direction of the rule. The direction specifies if the rule will be evaluated on incoming or outgoing traffic.", - "enum": [ - "Inbound", - "Outbound" - ], - "x-ms-enum": { - "name": "SecurityConfigurationRuleDirection", - "modelAsString": true - } - }, - "RuleProtocol": { - "type": "string", - "description": "Network protocol this rule applies to.", - "enum": [ - "Tcp", - "Udp", - "Icmp", - "Esp", - "Any", - "Ah" - ], - "x-ms-enum": { - "name": "SecurityConfigurationRuleProtocol", - "modelAsString": true - } - }, - "NetworkManagerSecurityGroupItem": { - "type": "object", - "properties": { - "networkGroupId": { - "type": "string", - "description": "Network manager group Id." - } - }, - "description": "Network manager security group item." - }, - "AddressPrefixItem": { - "type": "object", - "properties": { - "addressPrefix": { - "type": "string", - "description": "Address prefix." - }, - "addressPrefixType": { - "type": "string", - "description": "Address prefix type.", - "enum": [ - "IPPrefix", - "ServiceTag" - ], - "x-ms-enum": { - "name": "AddressPrefixType", - "modelAsString": true - } - } - }, - "description": "Address prefix item." - }, - "NetworkManagerSecurityConfigurationImport": { - "properties": { - "networkSecurityGroupImports": { - "type": "array", - "items": { - "$ref": "#/definitions/NetworkSecurityGroupImport" - }, - "description": "List of nsg uris." - }, - "importDenyRulesAsAdminRules": { - "type": "boolean", - "description": "Flag if import deny rules as admin rules." - }, - "adminSecurityConfigurationUri": { - "type": "string", - "description": "Admin security configuration Uri." - }, - "removeAllowVnetInboundRule": { - "type": "boolean", - "description": "Flag if need to remove allow vnet inbound rule." - }, - "removeAllowAzureLoadBalancerInboundRule": { - "type": "boolean", - "description": "Flag if need to remove allow azure load balancer inbound rule." - }, - "removeAllowVnetOutboundRule": { - "type": "boolean", - "description": "Flag if need to remove allow vnet outbound rule." - }, - "removeAllowInternetOutboundRule": { - "type": "boolean", - "description": "Flag if need to remove allow Internet outbound rule." - } - }, - "description": "Network manager security configuration import parameters." - }, - "SecurityConfigurationImportResult": { - "properties": { - "userSecurityConfiguration": { - "type": "string", - "description": "User security configuration Id." - }, - "adminSecurityConfiguration": { - "type": "string", - "description": "Admin security configuration Id." - }, - "failedImport": { - "$ref": "#/definitions/FailedImport", - "description": "failed imports code and reason" - } - }, - "description": "Security configuration import Result." - }, - "FailedImport": { - "type": "object", - "description": "Failed imports object.", - "properties": { - "failureCode": { - "type": "string", - "description": "Failure code." - }, - "failureReason": { - "type": "string", - "description": "Failure reason." - } - } - }, - "NetworkSecurityGroupImport": { - "type": "object", - "description": "Network Security Group Import.", - "properties": { - "networkSecurityGroupUri": { - "type": "string", - "description": "Network Security Group Uri." - } - } - }, - "SecurityConfigurationRule": { - "properties": { - "securityType": { - "type": "string", - "enum": [ - "AdminPolicy", - "UserPolicy" - ], - "x-ms-enum": { - "name": "SecurityType", - "modelAsString": true - }, - "description": "Commit Type." - }, - "securityAdminRule": { - "$ref": "#/definitions/AdminRule", - "description": "Security admin rule." - }, - "securityUserRule": { - "$ref": "#/definitions/UserRule", - "description": "Security user rule." - } - }, - "description": "General security configuration Rule." - } - }, - "parameters": { - "SecurityConfigurationParameter": { - "name": "configurationName", - "in": "path", - "description": "The name of the network manager security Configuration.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - }, - "SecurityConfigurationsRuleParameter": { - "name": "ruleName", - "in": "path", - "description": "The name of the rule.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - }, - "ResourceGroupNameParameter": { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group.", - "x-ms-parameter-location": "method" - }, - "NetworkManagerNameParameter": { - "name": "networkManagerName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the network manager.", - "x-ms-parameter-location": "method" - }, - "ListTopParameter": { - "name": "$top", - "description": "An optional query parameter which specifies the maximum number of records to be returned by the server.", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "minimum": 1, - "maximum": 20, - "x-ms-parameter-location": "method" - }, - "ListSkipTokenParameter": { - "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", - "x-ms-parameter-location": "method" - } - } -} diff --git a/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/networkManagerSecurityUserConfiguration.json b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/networkManagerSecurityUserConfiguration.json new file mode 100644 index 000000000000..c951a3ff65ac --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/preview/2021-02-01-preview/networkManagerSecurityUserConfiguration.json @@ -0,0 +1,830 @@ +{ + "swagger": "2.0", + "info": { + "title": "SecurityUserConfiguration", + "version": "2021-02-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.Network/networkManagers/{networkManagerName}/securityUserConfigurations": { + "get": { + "tags": [ + "SecurityUserConfigurations" + ], + "operationId": "SecurityUserConfigurations_List", + "description": "Lists all the network manager security user configurations in a network manager, in a paginated format.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/NetworkManagerNameParameter" + }, + { + "$ref": "#/parameters/ListTopParameter" + }, + { + "$ref": "#/parameters/ListSkipTokenParameter" + } + ], + "responses": { + "200": { + "description": "Get successful. The operation returns all security user configurations in the specified network manager, in a paginated format", + "schema": { + "$ref": "./networkManagerSecurityAdminConfiguration.json#/definitions/SecurityConfigurationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List security user configurations in a network manager": { + "$ref": "./examples/NetworkManagerSecurityUserConfigurationList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkManagers/{networkManagerName}/securityUserConfigurations/{configurationName}": { + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/NetworkManagerNameParameter" + }, + { + "$ref": "#/parameters/SecurityConfigurationParameter" + } + ], + "get": { + "tags": [ + "SecurityUserConfigurations" + ], + "description": "Retrieves a network manager security user configuration.", + "operationId": "SecurityUserConfigurations_Get", + "responses": { + "200": { + "description": "Successful operation", + "schema": { + "$ref": "./networkManagerSecurityAdminConfiguration.json#/definitions/SecurityConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get security user configurations": { + "$ref": "./examples/NetworkManagerSecurityUserConfigurationGet.json" + } + } + }, + "put": { + "tags": [ + "SecurityUserConfigurations" + ], + "description": "Creates or updates a network manager security user configuration.", + "operationId": "SecurityUserConfigurations_CreateOrUpdate", + "parameters": [ + { + "name": "securityUserConfiguration", + "in": "body", + "required": true, + "schema": { + "$ref": "./networkManagerSecurityAdminConfiguration.json#/definitions/SecurityConfiguration" + }, + "description": "The security user configuration to create or update" + } + ], + "responses": { + "200": { + "description": "Updated Configuration", + "schema": { + "$ref": "./networkManagerSecurityAdminConfiguration.json#/definitions/SecurityConfiguration" + } + }, + "201": { + "description": "Created Configuration", + "schema": { + "$ref": "./networkManagerSecurityAdminConfiguration.json#/definitions/SecurityConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create network manager security user configuration": { + "$ref": "./examples/NetworkManagerSecurityUserConfigurationPut.json" + } + } + }, + "delete": { + "tags": [ + "SecurityUserConfigurations" + ], + "description": "Deletes a network manager security user configuration.", + "operationId": "SecurityUserConfigurations_Delete", + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "Request successful. Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete network manager security user configuration": { + "$ref": "./examples/NetworkManagerSecurityUserConfigurationDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkManagers/{networkManagerName}/securityUserConfigurations/{configurationName}/ruleCollections": { + "get": { + "tags": [ + "UserRuleCollections" + ], + "operationId": "UserRuleCollections_List", + "description": "Lists all the user rule collections in a security configuration, in a paginated format.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/NetworkManagerNameParameter" + }, + { + "$ref": "#/parameters/SecurityConfigurationParameter" + }, + { + "$ref": "#/parameters/ListTopParameter" + }, + { + "$ref": "#/parameters/ListSkipTokenParameter" + } + ], + "responses": { + "200": { + "description": "Get successful. The operation returns all ruleCollections in the specified security configuration, in a paginated format", + "schema": { + "$ref": "./networkManagerSecurityAdminConfiguration.json#/definitions/RuleCollectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List rule collections in a security configuration": { + "$ref": "./examples/NetworkManagerUserRuleCollectionList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkManagers/{networkManagerName}/securityUserConfigurations/{configurationName}/ruleCollections/{ruleCollectionName}": { + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/NetworkManagerNameParameter" + }, + { + "$ref": "#/parameters/SecurityConfigurationParameter" + }, + { + "$ref": "#/parameters/RuleCollectionParameter" + } + ], + "get": { + "tags": [ + "RuleCollections" + ], + "description": "Gets a network manager security user configuration rule collection.", + "operationId": "UserRuleCollections_Get", + "responses": { + "200": { + "description": "Successful operation", + "schema": { + "$ref": "./networkManagerSecurityAdminConfiguration.json#/definitions/RuleCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Gets security user rule collection": { + "$ref": "./examples/NetworkManagerUserRuleCollectionGet.json" + } + } + }, + "put": { + "tags": [ + "UserRuleCollections" + ], + "description": "Creates or updates a user rule collection.", + "operationId": "UserRuleCollections_CreateOrUpdate", + "parameters": [ + { + "name": "userRuleCollection", + "in": "body", + "required": true, + "schema": { + "$ref": "./networkManagerSecurityAdminConfiguration.json#/definitions/RuleCollection" + }, + "description": "The User Rule Collection to create or update" + } + ], + "responses": { + "200": { + "description": "Updated User Rule Collection", + "schema": { + "$ref": "./networkManagerSecurityAdminConfiguration.json#/definitions/RuleCollection" + } + }, + "201": { + "description": "Created User Rule Collection", + "schema": { + "$ref": "./networkManagerSecurityAdminConfiguration.json#/definitions/RuleCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create or Update a User Rule Collection": { + "$ref": "./examples/NetworkManagerUserRuleCollectionPut.json" + } + } + }, + "delete": { + "tags": [ + "UserRuleCollections" + ], + "description": "Deletes a user rule collection.", + "operationId": "UserRuleCollections_Delete", + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "Request successful. Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Deletes a user rule collection": { + "$ref": "./examples/NetworkManagerUserRuleCollectionDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkManagers/{networkManagerName}/securityUserConfigurations/{configurationName}/ruleCollections/{ruleCollectionName}/rules": { + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/NetworkManagerNameParameter" + }, + { + "$ref": "#/parameters/SecurityConfigurationParameter" + }, + { + "$ref": "#/parameters/RuleCollectionParameter" + }, + { + "$ref": "#/parameters/ListTopParameter" + }, + { + "$ref": "#/parameters/ListSkipTokenParameter" + } + ], + "get": { + "tags": [ + "UserRules" + ], + "description": "Lists all user rules in a rule collection.", + "operationId": "UserRules_List", + "responses": { + "200": { + "description": "Successful operation", + "schema": { + "$ref": "#/definitions/UserRuleListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List security user rules": { + "$ref": "./examples/NetworkManagerUserRulesList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkManagers/{networkManagerName}/securityUserConfigurations/{configurationName}/ruleCollections/{ruleCollectionName}/rules/{ruleName}": { + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/NetworkManagerNameParameter" + }, + { + "$ref": "#/parameters/SecurityConfigurationParameter" + }, + { + "$ref": "#/parameters/RuleCollectionParameter" + }, + { + "$ref": "#/parameters/SecurityConfigurationsRuleParameter" + } + ], + "get": { + "tags": [ + "UserRules" + ], + "description": "Gets a user rule.", + "operationId": "UserRules_Get", + "responses": { + "200": { + "description": "Successful operation", + "schema": { + "$ref": "#/definitions/BaseUserRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Gets a user rule": { + "$ref": "./examples/NetworkManagerUserRuleGet.json" + }, + "Gets a default user rule": { + "$ref": "./examples/NetworkManagerDefaultUserRuleGet.json" + } + } + }, + "put": { + "tags": [ + "UserRules" + ], + "description": "Creates or updates a user rule.", + "operationId": "UserRules_CreateOrUpdate", + "parameters": [ + { + "name": "userRule", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/BaseUserRule" + }, + "description": "The user rule to create or update" + } + ], + "responses": { + "200": { + "description": "Updated rule", + "schema": { + "$ref": "#/definitions/BaseUserRule" + } + }, + "201": { + "description": "Created rule", + "schema": { + "$ref": "#/definitions/BaseUserRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create a user rule": { + "$ref": "./examples/NetworkManagerUserRulePut.json" + }, + "Create a default user rule": { + "$ref": "./examples/NetworkManagerDefaultUserRulePut.json" + } + } + }, + "delete": { + "tags": [ + "UserRules" + ], + "description": "Deletes a user rule.", + "operationId": "UserRules_Delete", + "responses": { + "200": { + "description": "Delete Succeed." + }, + "204": { + "description": "Request successful. Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete a user rule": { + "$ref": "./examples/NetworkManagerUserRuleDelete.json" + } + } + } + } + }, + "definitions": { + "BaseUserRule": { + "properties": { + "kind": { + "type": "string", + "description": "Whether the rule is custom or default.", + "enum": [ + "Custom", + "Default" + ], + "x-ms-enum": { + "name": "UserRuleKind", + "modelAsString": true + } + }, + "systemData": { + "readOnly": true, + "description": "The system metadata related to this resource.", + "$ref": "./network.json#/definitions/SystemData" + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/ProxyResource" + } + ], + "required": [ + "kind" + ], + "discriminator": "kind", + "description": "Network base rule." + }, + "UserRuleListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BaseUserRule" + }, + "description": "A list of user rules" + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "security user rule list result." + }, + "UserRule": { + "properties": { + "properties": { + "$ref": "#/definitions/UserRulePropertiesFormat", + "x-ms-client-flatten": true, + "description": "Indicates the properties of the security user rule" + } + }, + "allOf": [ + { + "$ref": "#/definitions/BaseUserRule" + } + ], + "description": "Network security user rule.", + "x-ms-discriminator-value": "Custom" + }, + "UserRulePropertiesFormat": { + "type": "object", + "properties": { + "displayName": { + "type": "string", + "description": "A friendly name for the rule." + }, + "description": { + "type": "string", + "description": "A description for this rule." + }, + "protocol": { + "type": "string", + "$ref": "./networkManagerSecurityAdminConfiguration.json#/definitions/RuleProtocol", + "description": "Network protocol this rule applies to." + }, + "sources": { + "type": "array", + "items": { + "$ref": "./networkManagerSecurityAdminConfiguration.json#/definitions/AddressPrefixItem" + }, + "description": "The CIDR or source IP ranges." + }, + "destinations": { + "type": "array", + "items": { + "$ref": "./networkManagerSecurityAdminConfiguration.json#/definitions/AddressPrefixItem" + }, + "description": "The destination address prefixes. CIDR or destination IP ranges." + }, + "sourcePortRanges": { + "type": "array", + "items": { + "type": "string", + "description": "The source port." + }, + "description": "The source port ranges." + }, + "destinationPortRanges": { + "type": "array", + "items": { + "type": "string", + "description": "The destination port." + }, + "description": "The destination port ranges." + }, + "direction": { + "$ref": "./networkManagerSecurityAdminConfiguration.json#/definitions/SecurityConfigurationRuleDirection", + "description": "Indicates if the traffic matched against the rule in inbound or outbound." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the security configuration user rule resource." + } + }, + "required": [ + "protocol", + "direction" + ], + "description": "Security rule resource." + }, + "DefaultUserRule": { + "properties": { + "properties": { + "$ref": "#/definitions/DefaultUserRulePropertiesFormat", + "x-ms-client-flatten": true, + "description": "Indicates the properties of the security default user rule" + } + }, + "allOf": [ + { + "$ref": "#/definitions/BaseUserRule" + } + ], + "description": "Network security default user rule.", + "x-ms-discriminator-value": "Default" + }, + "DefaultUserRulePropertiesFormat": { + "type": "object", + "properties": { + "displayName": { + "type": "string", + "readOnly": true, + "description": "A friendly name for the rule." + }, + "description": { + "type": "string", + "readOnly": true, + "description": "A description for this rule. Restricted to 140 chars." + }, + "flag": { + "type": "string", + "description": "Default rule flag." + }, + "protocol": { + "type": "string", + "readOnly": true, + "$ref": "./networkManagerSecurityAdminConfiguration.json#/definitions/RuleProtocol", + "description": "Network protocol this rule applies to." + }, + "sources": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "./networkManagerSecurityAdminConfiguration.json#/definitions/AddressPrefixItem" + }, + "description": "The CIDR or source IP ranges." + }, + "destinations": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "./networkManagerSecurityAdminConfiguration.json#/definitions/AddressPrefixItem" + }, + "description": "The destination address prefixes. CIDR or destination IP ranges." + }, + "sourcePortRanges": { + "type": "array", + "readOnly": true, + "items": { + "type": "string", + "description": "The source port." + }, + "description": "The source port ranges." + }, + "destinationPortRanges": { + "type": "array", + "readOnly": true, + "items": { + "type": "string", + "description": "The destination port." + }, + "description": "The destination port ranges." + }, + "direction": { + "$ref": "./networkManagerSecurityAdminConfiguration.json#/definitions/SecurityConfigurationRuleDirection", + "readOnly": true, + "description": "Indicates if the traffic matched against the rule in inbound or outbound." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the security configuration user rule resource." + } + }, + "description": "Security default user rule resource." + } + }, + "parameters": { + "SecurityConfigurationParameter": { + "name": "configurationName", + "in": "path", + "description": "The name of the network manager security Configuration.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "RuleCollectionParameter": { + "name": "ruleCollectionName", + "in": "path", + "description": "The name of the network manager security Configuration rule collection.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "SecurityConfigurationsRuleParameter": { + "name": "ruleName", + "in": "path", + "description": "The name of the rule.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group.", + "x-ms-parameter-location": "method" + }, + "NetworkManagerNameParameter": { + "name": "networkManagerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network manager.", + "x-ms-parameter-location": "method" + }, + "ListTopParameter": { + "name": "$top", + "description": "An optional query parameter which specifies the maximum number of records to be returned by the server.", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 20, + "x-ms-parameter-location": "method" + }, + "ListSkipTokenParameter": { + "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", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/applicationGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/applicationGateway.json index 8e9f8347175a..38237b883b85 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/applicationGateway.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/applicationGateway.json @@ -1675,7 +1675,7 @@ }, "ignoreCase": { "type": "boolean", - "description": "Setting this paramter to truth value with force the pattern to do a case in-sensitive comparison." + "description": "Setting this parameter to truth value with force the pattern to do a case in-sensitive comparison." }, "negate": { "type": "boolean", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-02-01/applicationGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-02-01/applicationGateway.json index fcc051b2b3ce..c64c03de3803 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2019-02-01/applicationGateway.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-02-01/applicationGateway.json @@ -1786,7 +1786,7 @@ }, "ignoreCase": { "type": "boolean", - "description": "Setting this paramter to truth value with force the pattern to do a case in-sensitive comparison." + "description": "Setting this parameter to truth value with force the pattern to do a case in-sensitive comparison." }, "negate": { "type": "boolean", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-04-01/applicationGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-04-01/applicationGateway.json index 75202c988a31..9c5e27320b9e 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2019-04-01/applicationGateway.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-04-01/applicationGateway.json @@ -1796,7 +1796,7 @@ }, "ignoreCase": { "type": "boolean", - "description": "Setting this paramter to truth value with force the pattern to do a case in-sensitive comparison." + "description": "Setting this parameter to truth value with force the pattern to do a case in-sensitive comparison." }, "negate": { "type": "boolean", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-06-01/applicationGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-06-01/applicationGateway.json index b77c8d0d95b2..012ebd2832f3 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2019-06-01/applicationGateway.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-06-01/applicationGateway.json @@ -1793,7 +1793,7 @@ }, "ignoreCase": { "type": "boolean", - "description": "Setting this paramter to truth value with force the pattern to do a case in-sensitive comparison." + "description": "Setting this parameter to truth value with force the pattern to do a case in-sensitive comparison." }, "negate": { "type": "boolean", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/applicationGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/applicationGateway.json index d10e85993f1d..7a61e0b70eff 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/applicationGateway.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/applicationGateway.json @@ -1802,7 +1802,7 @@ }, "ignoreCase": { "type": "boolean", - "description": "Setting this paramter to truth value with force the pattern to do a case in-sensitive comparison." + "description": "Setting this parameter to truth value with force the pattern to do a case in-sensitive comparison." }, "negate": { "type": "boolean", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-08-01/applicationGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-08-01/applicationGateway.json index cceedf2c8485..ffe93a2fde1f 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2019-08-01/applicationGateway.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-08-01/applicationGateway.json @@ -1802,7 +1802,7 @@ }, "ignoreCase": { "type": "boolean", - "description": "Setting this paramter to truth value with force the pattern to do a case in-sensitive comparison." + "description": "Setting this parameter to truth value with force the pattern to do a case in-sensitive comparison." }, "negate": { "type": "boolean", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/applicationGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/applicationGateway.json index 5bc4766475c1..aefc948e8ddd 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/applicationGateway.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/applicationGateway.json @@ -1938,7 +1938,7 @@ }, "ignoreCase": { "type": "boolean", - "description": "Setting this paramter to truth value with force the pattern to do a case in-sensitive comparison." + "description": "Setting this parameter to truth value with force the pattern to do a case in-sensitive comparison." }, "negate": { "type": "boolean", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/applicationGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/applicationGateway.json index ee5347ac08ea..4c9ce2a04305 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/applicationGateway.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/applicationGateway.json @@ -1938,7 +1938,7 @@ }, "ignoreCase": { "type": "boolean", - "description": "Setting this paramter to truth value with force the pattern to do a case in-sensitive comparison." + "description": "Setting this parameter to truth value with force the pattern to do a case in-sensitive comparison." }, "negate": { "type": "boolean", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/applicationGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/applicationGateway.json index 94c9648340e1..cbd96d41ea39 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/applicationGateway.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/applicationGateway.json @@ -1938,7 +1938,7 @@ }, "ignoreCase": { "type": "boolean", - "description": "Setting this paramter to truth value with force the pattern to do a case in-sensitive comparison." + "description": "Setting this parameter to truth value with force the pattern to do a case in-sensitive comparison." }, "negate": { "type": "boolean", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/applicationGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/applicationGateway.json index 6c1aa3a2f805..ec25a5c36fb6 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/applicationGateway.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/applicationGateway.json @@ -1938,7 +1938,7 @@ }, "ignoreCase": { "type": "boolean", - "description": "Setting this paramter to truth value with force the pattern to do a case in-sensitive comparison." + "description": "Setting this parameter to truth value with force the pattern to do a case in-sensitive comparison." }, "negate": { "type": "boolean", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/applicationGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/applicationGateway.json index 905502f0f3dd..f5a9e56bd116 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/applicationGateway.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/applicationGateway.json @@ -1938,7 +1938,7 @@ }, "ignoreCase": { "type": "boolean", - "description": "Setting this paramter to truth value with force the pattern to do a case in-sensitive comparison." + "description": "Setting this parameter to truth value with force the pattern to do a case in-sensitive comparison." }, "negate": { "type": "boolean", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-05-01/applicationGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-05-01/applicationGateway.json index 0294f1d0ead6..140b9e04deab 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2020-05-01/applicationGateway.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-05-01/applicationGateway.json @@ -2238,7 +2238,7 @@ }, "ignoreCase": { "type": "boolean", - "description": "Setting this paramter to truth value with force the pattern to do a case in-sensitive comparison." + "description": "Setting this parameter to truth value with force the pattern to do a case in-sensitive comparison." }, "negate": { "type": "boolean", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-05-01/expressRoutePort.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-05-01/expressRoutePort.json index ca0543ecd149..17291bf0607a 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2020-05-01/expressRoutePort.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-05-01/expressRoutePort.json @@ -638,8 +638,8 @@ "type": "string", "description": "Mac security cipher.", "enum": [ - "gcm-aes-128", - "gcm-aes-256" + "GcmAes256", + "GcmAes128" ], "x-ms-enum": { "name": "ExpressRouteLinkMacSecCipher", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-06-01/applicationGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-06-01/applicationGateway.json index 95e3258db2d0..1f40dbde26d4 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2020-06-01/applicationGateway.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-06-01/applicationGateway.json @@ -2348,7 +2348,7 @@ }, "ignoreCase": { "type": "boolean", - "description": "Setting this paramter to truth value with force the pattern to do a case in-sensitive comparison." + "description": "Setting this parameter to truth value with force the pattern to do a case in-sensitive comparison." }, "negate": { "type": "boolean", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-07-01/applicationGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-07-01/applicationGateway.json index bdcb4e2b62ff..892a7dc1c1a4 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2020-07-01/applicationGateway.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-07-01/applicationGateway.json @@ -2348,7 +2348,7 @@ }, "ignoreCase": { "type": "boolean", - "description": "Setting this paramter to truth value with force the pattern to do a case in-sensitive comparison." + "description": "Setting this parameter to truth value with force the pattern to do a case in-sensitive comparison." }, "negate": { "type": "boolean", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-07-01/virtualNetworkGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-07-01/virtualNetworkGateway.json index 7d654252fb57..374517abe7af 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2020-07-01/virtualNetworkGateway.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-07-01/virtualNetworkGateway.json @@ -2375,13 +2375,9 @@ "readOnly": true, "description": "The IP address allocated by the gateway to which dns requests can be sent." }, - "virtualNetworkExtendedLocationResourceId": { + "vNetExtendedLocationResourceId": { "type": "string", - "description": "MAS FIJI customer vnet resource id. VirtualNetworkGateway of type local gateway is associated with the customer vnet." - }, - "extendedLocation": { - "description": "The extended location of type local virtual network gateway.", - "$ref": "./network.json#/definitions/ExtendedLocation" + "description": "Customer vnet resource id. VirtualNetworkGateway of type local gateway is associated with the customer vnet." } }, "description": "VirtualNetworkGateway properties." @@ -2761,6 +2757,10 @@ }, "VirtualNetworkGateway": { "properties": { + "extendedLocation": { + "$ref": "./network.json#/definitions/ExtendedLocation", + "description": "The extended location of type local virtual network gateway." + }, "properties": { "x-ms-client-flatten": true, "$ref": "#/definitions/VirtualNetworkGatewayPropertiesFormat", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/applicationGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/applicationGateway.json index ade299d0aea4..14d79fb9953e 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/applicationGateway.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/applicationGateway.json @@ -2348,7 +2348,7 @@ }, "ignoreCase": { "type": "boolean", - "description": "Setting this paramter to truth value with force the pattern to do a case in-sensitive comparison." + "description": "Setting this parameter to truth value with force the pattern to do a case in-sensitive comparison." }, "negate": { "type": "boolean", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/virtualNetworkGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/virtualNetworkGateway.json index 690f82a5b620..21f20ff9d10b 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/virtualNetworkGateway.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/virtualNetworkGateway.json @@ -2434,11 +2434,7 @@ }, "vNetExtendedLocationResourceId": { "type": "string", - "description": "MAS FIJI customer vnet resource id. VirtualNetworkGateway of type local gateway is associated with the customer vnet." - }, - "virtualNetworkExtendedLocation": { - "description": "The extended location of type local virtual network gateway.", - "$ref": "./network.json#/definitions/ExtendedLocation" + "description": "Customer vnet resource id. VirtualNetworkGateway of type local gateway is associated with the customer vnet." } }, "description": "VirtualNetworkGateway properties." @@ -2818,6 +2814,10 @@ }, "VirtualNetworkGateway": { "properties": { + "extendedLocation": { + "$ref": "./network.json#/definitions/ExtendedLocation", + "description": "The extended location of type local virtual network gateway." + }, "properties": { "x-ms-client-flatten": true, "$ref": "#/definitions/VirtualNetworkGatewayPropertiesFormat", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-11-01/networkInterface.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-11-01/networkInterface.json index e21708d2a0a8..2ce2cb575e97 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2020-11-01/networkInterface.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-11-01/networkInterface.json @@ -1035,6 +1035,10 @@ "readOnly": true, "type": "string", "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "description": "Resource type." } }, "allOf": [ @@ -1153,6 +1157,37 @@ "readOnly": true, "$ref": "./network.json#/definitions/ProvisioningState", "description": "The provisioning state of the network interface resource." + }, + "nicType": { + "type": "string", + "description": "Type of Network Interface resource.", + "enum": [ + "Standard", + "Elastic" + ], + "x-ms-enum": { + "name": "NetworkInterfaceNicType", + "modelAsString": true + } + }, + "privateLinkService": { + "$ref": "./privateLinkService.json#/definitions/PrivateLinkService", + "description": "Privatelinkservice of the network interface resource." + }, + "migrationPhase": { + "type": "string", + "description": "Migration phase of Network Interface resource.", + "enum": [ + "None", + "Prepare", + "Commit", + "Abort", + "Committed" + ], + "x-ms-enum": { + "name": "NetworkInterfaceMigrationPhase", + "modelAsString": true + } } }, "description": "NetworkInterface properties." @@ -1485,7 +1520,8 @@ }, "privateIPAllocationMethod": { "$ref": "./network.json#/definitions/IPAllocationMethod", - "description": "The private IP address allocation method." + "description": "The private IP address allocation method.", + "default": "Dynamic" }, "subnet": { "$ref": "./virtualNetwork.json#/definitions/Subnet", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-11-01/privateEndpoint.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-11-01/privateEndpoint.json index 3b7a0dc8b6e5..bdb6e1715ff7 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2020-11-01/privateEndpoint.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-11-01/privateEndpoint.json @@ -854,6 +854,10 @@ "resourceName": { "type": "string", "description": "The name of the service and resource." + }, + "displayName": { + "type": "string", + "description": "Display name of the resource." } }, "description": "The information of an AvailablePrivateEndpointType." diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-11-01/publicIpAddress.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-11-01/publicIpAddress.json index 223e127aaae4..d2c571cb4881 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2020-11-01/publicIpAddress.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-11-01/publicIpAddress.json @@ -444,6 +444,33 @@ "readOnly": true, "$ref": "./network.json#/definitions/ProvisioningState", "description": "The provisioning state of the public IP address resource." + }, + "servicePublicIPAddress": { + "$ref": "#/definitions/PublicIPAddress", + "description": "The service public IP address of the public IP address resource." + }, + "natGateway": { + "$ref": "./natGateway.json#/definitions/NatGateway", + "description": "The NatGateway for the Public IP address." + }, + "migrationPhase": { + "type": "string", + "description": "Migration phase of Public IP Address.", + "enum": [ + "None", + "Prepare", + "Commit", + "Abort", + "Committed" + ], + "x-ms-enum": { + "name": "PublicIPAddressMigrationPhase", + "modelAsString": true + } + }, + "linkedPublicIPAddress": { + "$ref": "#/definitions/PublicIPAddress", + "description": "The linked public IP address of the public IP address resource." } }, "description": "Public IP address properties." diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-11-01/publicIpPrefix.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-11-01/publicIpPrefix.json index 9fa1ee69261b..b0742172ceb9 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2020-11-01/publicIpPrefix.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-11-01/publicIpPrefix.json @@ -437,6 +437,10 @@ "readOnly": true, "$ref": "./network.json#/definitions/ProvisioningState", "description": "The provisioning state of the public IP prefix resource." + }, + "natGateway": { + "$ref": "./natGateway.json#/definitions/NatGateway", + "description": "NatGateway of Public IP Prefix." } }, "description": "Public IP prefix properties." diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-11-01/serviceTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-11-01/serviceTags.json index 85345313947d..10d787cdbc97 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2020-11-01/serviceTags.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-11-01/serviceTags.json @@ -163,6 +163,11 @@ }, "readOnly": true, "description": "The list of IP address prefixes." + }, + "state": { + "type": "string", + "readOnly": true, + "description": "The state of the service tag." } }, "description": "Properties of the service tag information." diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-11-01/virtualNetwork.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-11-01/virtualNetwork.json index 85c09c939d6b..6b1673fd34b0 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2020-11-01/virtualNetwork.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-11-01/virtualNetwork.json @@ -1382,6 +1382,10 @@ "readOnly": true, "type": "string", "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "description": "Resource type." } }, "allOf": [ @@ -1519,6 +1523,13 @@ "name": "VirtualNetworkPrivateLinkServiceNetworkPolicies", "modelAsString": true } + }, + "applicationGatewayIpConfigurations": { + "type": "array", + "items": { + "$ref": "./applicationGateway.json#/definitions/ApplicationGatewayIPConfiguration" + }, + "description": "Application gateway IP configurations of virtual network resource." } }, "description": "Properties of the subnet." @@ -1592,6 +1603,15 @@ "readOnly": true, "$ref": "./network.json#/definitions/ProvisioningState", "description": "The provisioning state of the virtual network peering resource." + }, + "doNotVerifyRemoteGateways": { + "type": "boolean", + "description": "If we need to verify the provisioning state of the remote gateway." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resourceGuid property of the Virtual Network peering resource." } }, "description": "Properties of the virtual network peering." @@ -1611,6 +1631,10 @@ "readOnly": true, "type": "string", "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "description": "Resource type." } }, "allOf": [ @@ -1635,6 +1659,10 @@ "readOnly": true, "type": "string", "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "description": "Resource type." } }, "allOf": [ @@ -1867,6 +1895,10 @@ "type": "string" }, "description": "Contains other available private IP addresses if the asked for address is taken." + }, + "isPlatformReserved": { + "type": "boolean", + "description": "Private IP address platform reserved." } }, "description": "Response for CheckIPAddressAvailability API service call." diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-11-01/virtualNetworkGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-11-01/virtualNetworkGateway.json index e0c8a657414e..a8d1ca27aee7 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2020-11-01/virtualNetworkGateway.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-11-01/virtualNetworkGateway.json @@ -2485,11 +2485,7 @@ }, "vNetExtendedLocationResourceId": { "type": "string", - "description": "MAS FIJI customer vnet resource id. VirtualNetworkGateway of type local gateway is associated with the customer vnet." - }, - "virtualNetworkExtendedLocation": { - "description": "The extended location of type local virtual network gateway.", - "$ref": "./network.json#/definitions/ExtendedLocation" + "description": "Customer vnet resource id. VirtualNetworkGateway of type local gateway is associated with the customer vnet." } }, "description": "VirtualNetworkGateway properties." @@ -2886,6 +2882,10 @@ }, "VirtualNetworkGateway": { "properties": { + "extendedLocation": { + "$ref": "./network.json#/definitions/ExtendedLocation", + "description": "The extended location of type local virtual network gateway." + }, "properties": { "x-ms-client-flatten": true, "$ref": "#/definitions/VirtualNetworkGatewayPropertiesFormat", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/applicationGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/applicationGateway.json new file mode 100644 index 000000000000..f5e17e1ed4a1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/applicationGateway.json @@ -0,0 +1,3536 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2021-02-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}": { + "delete": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_Delete", + "x-ms-examples": { + "Delete ApplicationGateway": { + "$ref": "./examples/ApplicationGatewayDelete.json" + } + }, + "description": "Deletes the specified application gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_Get", + "x-ms-examples": { + "Get ApplicationGateway": { + "$ref": "./examples/ApplicationGatewayGet.json" + } + }, + "description": "Gets the specified application gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns an ApplicationGateway resource.", + "schema": { + "$ref": "#/definitions/ApplicationGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_CreateOrUpdate", + "description": "Creates or updates the specified application gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationGateway" + }, + "description": "Parameters supplied to the create or update application gateway operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting ApplicationGateway resource.", + "schema": { + "$ref": "#/definitions/ApplicationGateway" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting ApplicationGateway resource.", + "schema": { + "$ref": "#/definitions/ApplicationGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create Application Gateway": { + "$ref": "./examples/ApplicationGatewayCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_UpdateTags", + "x-ms-examples": { + "Update Application Gateway tags": { + "$ref": "./examples/ApplicationGatewayUpdateTags.json" + } + }, + "description": "Updates the specified application gateway tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update application gateway tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ApplicationGateway resource.", + "schema": { + "$ref": "#/definitions/ApplicationGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_List", + "x-ms-examples": { + "Lists all application gateways in a resource group": { + "$ref": "./examples/ApplicationGatewayList.json" + } + }, + "description": "Lists all application gateways in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of ApplicationGateway resources.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGateways": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_ListAll", + "x-ms-examples": { + "Lists all application gateways in a subscription": { + "$ref": "./examples/ApplicationGatewayListAll.json" + } + }, + "description": "Gets all the application gateways in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of ApplicationGateway resources.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}/start": { + "post": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_Start", + "x-ms-examples": { + "Start Application Gateway": { + "$ref": "./examples/ApplicationGatewayStart.json" + } + }, + "description": "Starts the specified application gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation starts the ApplicationGateway resource." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}/stop": { + "post": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_Stop", + "x-ms-examples": { + "Stop Application Gateway": { + "$ref": "./examples/ApplicationGatewayStop.json" + } + }, + "description": "Stops the specified application gateway in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation stops the ApplicationGateway resource." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}/backendhealth": { + "post": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_BackendHealth", + "description": "Gets the backend health of the specified application gateway in a resource group.", + "x-ms-examples": { + "Get Backend Health": { + "$ref": "./examples/ApplicationGatewayBackendHealthGet.json" + } + }, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands BackendAddressPool and BackendHttpSettings referenced in backend health." + } + ], + "responses": { + "200": { + "description": "Request successful.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayBackendHealth" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}/getBackendHealthOnDemand": { + "post": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_BackendHealthOnDemand", + "description": "Gets the backend health for given combination of backend pool and http setting of the specified application gateway in a resource group.", + "x-ms-examples": { + "Test Backend Health": { + "$ref": "./examples/ApplicationGatewayBackendHealthTest.json" + } + }, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands BackendAddressPool and BackendHttpSettings referenced in backend health." + }, + { + "name": "probeRequest", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationGatewayOnDemandProbe" + }, + "description": "Request body for on-demand test probe operation." + } + ], + "responses": { + "200": { + "description": "Request successful.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayBackendHealthOnDemand" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}/privateLinkResources": { + "get": { + "tags": [ + "ApplicationGatewayPrivateLinkResources" + ], + "operationId": "ApplicationGatewayPrivateLinkResources_List", + "x-ms-examples": { + "Lists all private link resources on application gateway": { + "$ref": "./examples/ApplicationGatewayPrivateLinkResourceList.json" + } + }, + "description": "Lists all private link resources on an application gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of private link resources on application gateway.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayPrivateLinkResourceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}/privateEndpointConnections/{connectionName}": { + "delete": { + "tags": [ + "ApplicationGatewayPrivateEndpointConnections" + ], + "operationId": "ApplicationGatewayPrivateEndpointConnections_Delete", + "x-ms-examples": { + "Delete Application Gateway Private Endpoint Connection": { + "$ref": "./examples/ApplicationGatewayPrivateEndpointConnectionDelete.json" + } + }, + "description": "Deletes the specified private endpoint connection on application gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway private endpoint connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "put": { + "tags": [ + "ApplicationGatewayPrivateEndpointConnections" + ], + "operationId": "ApplicationGatewayPrivateEndpointConnections_Update", + "description": "Updates the specified private endpoint connection on application gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway private endpoint connection." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationGatewayPrivateEndpointConnection" + }, + "description": "Parameters supplied to update application gateway private endpoint connection operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting private endpoint connection on application gateway.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayPrivateEndpointConnection" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update Application Gateway Private Endpoint Connection": { + "$ref": "./examples/ApplicationGatewayPrivateEndpointConnectionUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "ApplicationGatewayPrivateEndpointConnections" + ], + "operationId": "ApplicationGatewayPrivateEndpointConnections_Get", + "description": "Gets the specified private endpoint connection on application gateway.", + "x-ms-examples": { + "Get Application Gateway Private Endpoint Connection": { + "$ref": "./examples/ApplicationGatewayPrivateEndpointConnectionGet.json" + } + }, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway private endpoint connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns an application gateway private endpoint connection.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayPrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}/privateEndpointConnections": { + "get": { + "tags": [ + "ApplicationGatewayPrivateEndpointConnections" + ], + "operationId": "ApplicationGatewayPrivateEndpointConnections_List", + "x-ms-examples": { + "Lists all private endpoint connections on application gateway": { + "$ref": "./examples/ApplicationGatewayPrivateEndpointConnectionList.json" + } + }, + "description": "Lists all private endpoint connections on an application gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of private endpoint connections on application gateway.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayPrivateEndpointConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableServerVariables": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_ListAvailableServerVariables", + "x-ms-examples": { + "Get Available Server Variables": { + "$ref": "./examples/ApplicationGatewayAvailableServerVariablesGet.json" + } + }, + "description": "Lists all available server variables.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of all available server variables.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayAvailableServerVariablesResult" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableRequestHeaders": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_ListAvailableRequestHeaders", + "x-ms-examples": { + "Get Available Request Headers": { + "$ref": "./examples/ApplicationGatewayAvailableRequestHeadersGet.json" + } + }, + "description": "Lists all available request headers.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of all available request headers.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayAvailableRequestHeadersResult" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableResponseHeaders": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_ListAvailableResponseHeaders", + "x-ms-examples": { + "Get Available Response Headers": { + "$ref": "./examples/ApplicationGatewayAvailableResponseHeadersGet.json" + } + }, + "description": "Lists all available response headers.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of all available response headers.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayAvailableResponseHeadersResult" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableWafRuleSets": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_ListAvailableWafRuleSets", + "x-ms-examples": { + "Get Available Waf Rule Sets": { + "$ref": "./examples/ApplicationGatewayAvailableWafRuleSetsGet.json" + } + }, + "description": "Lists all available web application firewall rule sets.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of all available web application firewall rule sets.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayAvailableWafRuleSetsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableSslOptions/default": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_ListAvailableSslOptions", + "x-ms-examples": { + "Get Available Ssl Options": { + "$ref": "./examples/ApplicationGatewayAvailableSslOptionsGet.json" + } + }, + "description": "Lists available Ssl options for configuring Ssl policy.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns all available Ssl options for configuring Ssl policy.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayAvailableSslOptions" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableSslOptions/default/predefinedPolicies": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_ListAvailableSslPredefinedPolicies", + "x-ms-examples": { + "Get Available Ssl Predefined Policies": { + "$ref": "./examples/ApplicationGatewayAvailableSslOptionsPredefinedPoliciesGet.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "description": "Lists all SSL predefined policies for configuring Ssl policy.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a lists of all Ssl predefined policies for configuring Ssl policy.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayAvailableSslPredefinedPolicies" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableSslOptions/default/predefinedPolicies/{predefinedPolicyName}": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_GetSslPredefinedPolicy", + "x-ms-examples": { + "Get Available Ssl Predefined Policy by name": { + "$ref": "./examples/ApplicationGatewayAvailableSslOptionsPredefinedPolicyGet.json" + } + }, + "description": "Gets Ssl predefined policy with the specified policy name.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "predefinedPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of Ssl predefined policy." + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a Ssl predefined policy with the specified policy name.", + "schema": { + "$ref": "#/definitions/ApplicationGatewaySslPredefinedPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "ApplicationGatewayOnDemandProbe": { + "properties": { + "protocol": { + "$ref": "#/definitions/ApplicationGatewayProtocol", + "description": "The protocol used for the probe." + }, + "host": { + "type": "string", + "description": "Host name to send the probe to." + }, + "path": { + "type": "string", + "description": "Relative path of probe. Valid path starts from '/'. Probe is sent to ://:." + }, + "timeout": { + "type": "integer", + "format": "int32", + "description": "The probe timeout in seconds. Probe marked as failed if valid response is not received with this timeout period. Acceptable values are from 1 second to 86400 seconds." + }, + "pickHostNameFromBackendHttpSettings": { + "type": "boolean", + "description": "Whether the host header should be picked from the backend http settings. Default value is false." + }, + "match": { + "$ref": "#/definitions/ApplicationGatewayProbeHealthResponseMatch", + "description": "Criterion for classifying a healthy probe response." + }, + "backendAddressPool": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to backend pool of application gateway to which probe request will be sent." + }, + "backendHttpSettings": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to backend http setting of application gateway to be used for test probe." + } + }, + "description": "Details of on demand test probe request." + }, + "ApplicationGatewayBackendHealthOnDemand": { + "properties": { + "backendAddressPool": { + "$ref": "#/definitions/ApplicationGatewayBackendAddressPool", + "description": "Reference to an ApplicationGatewayBackendAddressPool resource." + }, + "backendHealthHttpSettings": { + "$ref": "#/definitions/ApplicationGatewayBackendHealthHttpSettings", + "description": "Application gateway BackendHealthHttp settings." + } + }, + "description": "Result of on demand test probe." + }, + "ApplicationGatewayBackendHealth": { + "properties": { + "backendAddressPools": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayBackendHealthPool" + }, + "description": "A list of ApplicationGatewayBackendHealthPool resources." + } + }, + "description": "Response for ApplicationGatewayBackendHealth API service call." + }, + "ApplicationGatewayBackendHealthPool": { + "properties": { + "backendAddressPool": { + "$ref": "#/definitions/ApplicationGatewayBackendAddressPool", + "description": "Reference to an ApplicationGatewayBackendAddressPool resource." + }, + "backendHttpSettingsCollection": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayBackendHealthHttpSettings" + }, + "description": "List of ApplicationGatewayBackendHealthHttpSettings resources." + } + }, + "description": "Application gateway BackendHealth pool." + }, + "ApplicationGatewayBackendHealthHttpSettings": { + "properties": { + "backendHttpSettings": { + "$ref": "#/definitions/ApplicationGatewayBackendHttpSettings", + "description": "Reference to an ApplicationGatewayBackendHttpSettings resource." + }, + "servers": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayBackendHealthServer" + }, + "description": "List of ApplicationGatewayBackendHealthServer resources." + } + }, + "description": "Application gateway BackendHealthHttp settings." + }, + "ApplicationGatewayBackendHealthServer": { + "properties": { + "address": { + "type": "string", + "description": "IP address or FQDN of backend server." + }, + "ipConfiguration": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfiguration", + "description": "Reference to IP configuration of backend server." + }, + "health": { + "type": "string", + "description": "Health of backend server.", + "enum": [ + "Unknown", + "Up", + "Down", + "Partial", + "Draining" + ], + "x-ms-enum": { + "name": "ApplicationGatewayBackendHealthServerHealth", + "modelAsString": true + } + }, + "healthProbeLog": { + "type": "string", + "description": "Health Probe Log." + } + }, + "description": "Application gateway backendhealth http settings." + }, + "ApplicationGatewaySku": { + "properties": { + "name": { + "type": "string", + "description": "Name of an application gateway SKU.", + "enum": [ + "Standard_Small", + "Standard_Medium", + "Standard_Large", + "WAF_Medium", + "WAF_Large", + "Standard_v2", + "WAF_v2" + ], + "x-ms-enum": { + "name": "ApplicationGatewaySkuName", + "modelAsString": true + } + }, + "tier": { + "type": "string", + "description": "Tier of an application gateway.", + "enum": [ + "Standard", + "WAF", + "Standard_v2", + "WAF_v2" + ], + "x-ms-enum": { + "name": "ApplicationGatewayTier", + "modelAsString": true + } + }, + "capacity": { + "type": "integer", + "format": "int32", + "description": "Capacity (instance count) of an application gateway." + } + }, + "description": "SKU of an application gateway." + }, + "ApplicationGatewaySslPolicy": { + "properties": { + "disabledSslProtocols": { + "type": "array", + "description": "Ssl protocols to be disabled on application gateway.", + "items": { + "type": "string", + "$ref": "#/definitions/ProtocolsEnum" + } + }, + "policyType": { + "type": "string", + "description": "Type of Ssl Policy.", + "enum": [ + "Predefined", + "Custom" + ], + "x-ms-enum": { + "name": "ApplicationGatewaySslPolicyType", + "modelAsString": true + } + }, + "policyName": { + "$ref": "#/definitions/PolicyNameEnum", + "description": "Name of Ssl predefined policy." + }, + "cipherSuites": { + "type": "array", + "items": { + "$ref": "#/definitions/CipherSuitesEnum" + }, + "description": "Ssl cipher suites to be enabled in the specified order to application gateway." + }, + "minProtocolVersion": { + "$ref": "#/definitions/ProtocolsEnum", + "description": "Minimum version of Ssl protocol to be supported on application gateway." + } + }, + "description": "Application Gateway Ssl policy." + }, + "ApplicationGatewayClientAuthConfiguration": { + "properties": { + "verifyClientCertIssuerDN": { + "type": "boolean", + "description": "Verify client certificate issuer name on the application gateway." + } + }, + "description": "Application gateway client authentication configuration." + }, + "ApplicationGatewayIPConfigurationPropertiesFormat": { + "properties": { + "subnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the subnet resource. A subnet from where application gateway gets its private address." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the application gateway IP configuration resource." + } + }, + "description": "Properties of IP configuration of an application gateway." + }, + "ApplicationGatewayIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayIPConfigurationPropertiesFormat", + "description": "Properties of the application gateway IP configuration." + }, + "name": { + "type": "string", + "description": "Name of the IP configuration that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IP configuration of an application gateway. Currently 1 public and 1 private IP configuration is allowed." + }, + "ApplicationGatewayAuthenticationCertificatePropertiesFormat": { + "properties": { + "data": { + "type": "string", + "description": "Certificate public data." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the authentication certificate resource." + } + }, + "description": "Authentication certificates properties of an application gateway." + }, + "ApplicationGatewayAuthenticationCertificate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayAuthenticationCertificatePropertiesFormat", + "description": "Properties of the application gateway authentication certificate." + }, + "name": { + "type": "string", + "description": "Name of the authentication certificate that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Authentication certificates of an application gateway." + }, + "ApplicationGatewayTrustedRootCertificatePropertiesFormat": { + "properties": { + "data": { + "type": "string", + "description": "Certificate public data." + }, + "keyVaultSecretId": { + "type": "string", + "description": "Secret Id of (base-64 encoded unencrypted pfx) 'Secret' or 'Certificate' object stored in KeyVault." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the trusted root certificate resource." + } + }, + "description": "Trusted Root certificates properties of an application gateway." + }, + "ApplicationGatewayTrustedRootCertificate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayTrustedRootCertificatePropertiesFormat", + "description": "Properties of the application gateway trusted root certificate." + }, + "name": { + "type": "string", + "description": "Name of the trusted root certificate that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Trusted Root certificates of an application gateway." + }, + "ApplicationGatewayTrustedClientCertificatePropertiesFormat": { + "properties": { + "data": { + "type": "string", + "description": "Certificate public data." + }, + "validatedCertData": { + "readOnly": true, + "type": "string", + "description": "Validated certificate data." + }, + "clientCertIssuerDN": { + "readOnly": true, + "type": "string", + "description": "Distinguished name of client certificate issuer." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the trusted client certificate resource." + } + }, + "description": "Trusted client certificates properties of an application gateway." + }, + "ApplicationGatewayTrustedClientCertificate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayTrustedClientCertificatePropertiesFormat", + "description": "Properties of the application gateway trusted client certificate." + }, + "name": { + "type": "string", + "description": "Name of the trusted client certificate that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Trusted client certificates of an application gateway." + }, + "ApplicationGatewaySslCertificatePropertiesFormat": { + "properties": { + "data": { + "type": "string", + "description": "Base-64 encoded pfx certificate. Only applicable in PUT Request." + }, + "password": { + "type": "string", + "description": "Password for the pfx file specified in data. Only applicable in PUT request." + }, + "publicCertData": { + "readOnly": true, + "type": "string", + "description": "Base-64 encoded Public cert data corresponding to pfx specified in data. Only applicable in GET request." + }, + "keyVaultSecretId": { + "type": "string", + "description": "Secret Id of (base-64 encoded unencrypted pfx) 'Secret' or 'Certificate' object stored in KeyVault." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the SSL certificate resource." + } + }, + "description": "Properties of SSL certificates of an application gateway." + }, + "ApplicationGatewaySslCertificate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewaySslCertificatePropertiesFormat", + "description": "Properties of the application gateway SSL certificate." + }, + "name": { + "type": "string", + "description": "Name of the SSL certificate that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "SSL certificates of an application gateway." + }, + "ApplicationGatewayFrontendIPConfigurationPropertiesFormat": { + "properties": { + "privateIPAddress": { + "type": "string", + "description": "PrivateIPAddress of the network interface IP Configuration." + }, + "privateIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "The private IP address allocation method." + }, + "subnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the subnet resource." + }, + "publicIPAddress": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the PublicIP resource." + }, + "privateLinkConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the application gateway private link configuration." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the frontend IP configuration resource." + } + }, + "description": "Properties of Frontend IP configuration of an application gateway." + }, + "ApplicationGatewayFrontendIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayFrontendIPConfigurationPropertiesFormat", + "description": "Properties of the application gateway frontend IP configuration." + }, + "name": { + "type": "string", + "description": "Name of the frontend IP configuration that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Frontend IP configuration of an application gateway." + }, + "ApplicationGatewayFrontendPortPropertiesFormat": { + "properties": { + "port": { + "type": "integer", + "format": "int32", + "description": "Frontend port." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the frontend port resource." + } + }, + "description": "Properties of Frontend port of an application gateway." + }, + "ApplicationGatewayFrontendPort": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayFrontendPortPropertiesFormat", + "description": "Properties of the application gateway frontend port." + }, + "name": { + "type": "string", + "description": "Name of the frontend port that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Frontend port of an application gateway." + }, + "ApplicationGatewayBackendAddress": { + "properties": { + "fqdn": { + "type": "string", + "description": "Fully qualified domain name (FQDN)." + }, + "ipAddress": { + "type": "string", + "description": "IP address." + } + }, + "description": "Backend address of an application gateway." + }, + "ApplicationGatewayBackendAddressPoolPropertiesFormat": { + "properties": { + "backendIPConfigurations": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfiguration" + }, + "description": "Collection of references to IPs defined in network interfaces." + }, + "backendAddresses": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayBackendAddress" + }, + "description": "Backend addresses." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the backend address pool resource." + } + }, + "description": "Properties of Backend Address Pool of an application gateway." + }, + "ApplicationGatewayBackendAddressPool": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayBackendAddressPoolPropertiesFormat", + "description": "Properties of the application gateway backend address pool." + }, + "name": { + "type": "string", + "description": "Name of the backend address pool that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Backend Address Pool of an application gateway." + }, + "ApplicationGatewayBackendHttpSettingsPropertiesFormat": { + "properties": { + "port": { + "type": "integer", + "format": "int32", + "description": "The destination port on the backend." + }, + "protocol": { + "$ref": "#/definitions/ApplicationGatewayProtocol", + "description": "The protocol used to communicate with the backend." + }, + "cookieBasedAffinity": { + "type": "string", + "description": "Cookie based affinity.", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "ApplicationGatewayCookieBasedAffinity", + "modelAsString": true + } + }, + "requestTimeout": { + "type": "integer", + "format": "int32", + "description": "Request timeout in seconds. Application Gateway will fail the request if response is not received within RequestTimeout. Acceptable values are from 1 second to 86400 seconds." + }, + "probe": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Probe resource of an application gateway." + }, + "authenticationCertificates": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Array of references to application gateway authentication certificates." + }, + "trustedRootCertificates": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Array of references to application gateway trusted root certificates." + }, + "connectionDraining": { + "$ref": "#/definitions/ApplicationGatewayConnectionDraining", + "description": "Connection draining of the backend http settings resource." + }, + "hostName": { + "type": "string", + "description": "Host header to be sent to the backend servers." + }, + "pickHostNameFromBackendAddress": { + "type": "boolean", + "description": "Whether to pick host header should be picked from the host name of the backend server. Default value is false." + }, + "affinityCookieName": { + "type": "string", + "description": "Cookie name to use for the affinity cookie." + }, + "probeEnabled": { + "type": "boolean", + "description": "Whether the probe is enabled. Default value is false." + }, + "path": { + "type": "string", + "description": "Path which should be used as a prefix for all HTTP requests. Null means no path will be prefixed. Default value is null." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the backend HTTP settings resource." + } + }, + "description": "Properties of Backend address pool settings of an application gateway." + }, + "ApplicationGatewayBackendHttpSettings": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayBackendHttpSettingsPropertiesFormat", + "description": "Properties of the application gateway backend HTTP settings." + }, + "name": { + "type": "string", + "description": "Name of the backend http settings that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Backend address pool settings of an application gateway." + }, + "ApplicationGatewaySslProfilePropertiesFormat": { + "properties": { + "trustedClientCertificates": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Array of references to application gateway trusted client certificates." + }, + "sslPolicy": { + "$ref": "#/definitions/ApplicationGatewaySslPolicy", + "description": "SSL policy of the application gateway resource." + }, + "clientAuthConfiguration": { + "$ref": "#/definitions/ApplicationGatewayClientAuthConfiguration", + "description": "Client authentication configuration of the application gateway resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the HTTP listener resource." + } + }, + "description": "Properties of SSL profile of an application gateway." + }, + "ApplicationGatewaySslProfile": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewaySslProfilePropertiesFormat", + "description": "Properties of the application gateway SSL profile." + }, + "name": { + "type": "string", + "description": "Name of the SSL profile that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "SSL profile of an application gateway." + }, + "ApplicationGatewayHttpListenerPropertiesFormat": { + "properties": { + "frontendIPConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Frontend IP configuration resource of an application gateway." + }, + "frontendPort": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Frontend port resource of an application gateway." + }, + "protocol": { + "$ref": "#/definitions/ApplicationGatewayProtocol", + "description": "Protocol of the HTTP listener." + }, + "hostName": { + "type": "string", + "description": "Host name of HTTP listener." + }, + "sslCertificate": { + "$ref": "./network.json#/definitions/SubResource", + "description": "SSL certificate resource of an application gateway." + }, + "sslProfile": { + "$ref": "./network.json#/definitions/SubResource", + "description": "SSL profile resource of the application gateway." + }, + "requireServerNameIndication": { + "type": "boolean", + "description": "Applicable only if protocol is https. Enables SNI for multi-hosting." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the HTTP listener resource." + }, + "customErrorConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayCustomError" + }, + "description": "Custom error configurations of the HTTP listener." + }, + "firewallPolicy": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the FirewallPolicy resource." + }, + "hostNames": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of Host names for HTTP Listener that allows special wildcard characters as well." + } + }, + "description": "Properties of HTTP listener of an application gateway." + }, + "ApplicationGatewayHttpListener": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayHttpListenerPropertiesFormat", + "description": "Properties of the application gateway HTTP listener." + }, + "name": { + "type": "string", + "description": "Name of the HTTP listener that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Http listener of an application gateway." + }, + "ApplicationGatewayPathRulePropertiesFormat": { + "properties": { + "paths": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Path rules of URL path map." + }, + "backendAddressPool": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Backend address pool resource of URL path map path rule." + }, + "backendHttpSettings": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Backend http settings resource of URL path map path rule." + }, + "redirectConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Redirect configuration resource of URL path map path rule." + }, + "rewriteRuleSet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Rewrite rule set resource of URL path map path rule." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the path rule resource." + }, + "firewallPolicy": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the FirewallPolicy resource." + } + }, + "description": "Properties of path rule of an application gateway." + }, + "ApplicationGatewayPathRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayPathRulePropertiesFormat", + "description": "Properties of the application gateway path rule." + }, + "name": { + "type": "string", + "description": "Name of the path rule that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Path rule of URL path map of an application gateway." + }, + "ApplicationGatewayProbePropertiesFormat": { + "properties": { + "protocol": { + "$ref": "#/definitions/ApplicationGatewayProtocol", + "description": "The protocol used for the probe." + }, + "host": { + "type": "string", + "description": "Host name to send the probe to." + }, + "path": { + "type": "string", + "description": "Relative path of probe. Valid path starts from '/'. Probe is sent to ://:." + }, + "interval": { + "type": "integer", + "format": "int32", + "description": "The probing interval in seconds. This is the time interval between two consecutive probes. Acceptable values are from 1 second to 86400 seconds." + }, + "timeout": { + "type": "integer", + "format": "int32", + "description": "The probe timeout in seconds. Probe marked as failed if valid response is not received with this timeout period. Acceptable values are from 1 second to 86400 seconds." + }, + "unhealthyThreshold": { + "type": "integer", + "format": "int32", + "description": "The probe retry count. Backend server is marked down after consecutive probe failure count reaches UnhealthyThreshold. Acceptable values are from 1 second to 20." + }, + "pickHostNameFromBackendHttpSettings": { + "type": "boolean", + "description": "Whether the host header should be picked from the backend http settings. Default value is false." + }, + "minServers": { + "type": "integer", + "format": "int32", + "description": "Minimum number of servers that are always marked healthy. Default value is 0." + }, + "match": { + "$ref": "#/definitions/ApplicationGatewayProbeHealthResponseMatch", + "description": "Criterion for classifying a healthy probe response." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the probe resource." + }, + "port": { + "type": "integer", + "format": "int32", + "description": "Custom port which will be used for probing the backend servers. The valid value ranges from 1 to 65535. In case not set, port from http settings will be used. This property is valid for Standard_v2 and WAF_v2 only.", + "minimum": 1, + "maximum": 65535 + } + }, + "description": "Properties of probe of an application gateway." + }, + "ApplicationGatewayProbeHealthResponseMatch": { + "properties": { + "body": { + "type": "string", + "description": "Body that must be contained in the health response. Default value is empty." + }, + "statusCodes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Allowed ranges of healthy status codes. Default range of healthy status codes is 200-399." + } + }, + "description": "Application gateway probe health response match." + }, + "ApplicationGatewayProbe": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayProbePropertiesFormat", + "description": "Properties of the application gateway probe." + }, + "name": { + "type": "string", + "description": "Name of the probe that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Probe of the application gateway." + }, + "ApplicationGatewayRequestRoutingRulePropertiesFormat": { + "properties": { + "ruleType": { + "type": "string", + "description": "Rule type.", + "enum": [ + "Basic", + "PathBasedRouting" + ], + "x-ms-enum": { + "name": "ApplicationGatewayRequestRoutingRuleType", + "modelAsString": true + } + }, + "priority": { + "type": "integer", + "format": "int32", + "minimum": 1, + "exclusiveMinimum": false, + "maximum": 20000, + "exclusiveMaximum": false, + "description": "Priority of the request routing rule." + }, + "backendAddressPool": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Backend address pool resource of the application gateway." + }, + "backendHttpSettings": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Backend http settings resource of the application gateway." + }, + "httpListener": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Http listener resource of the application gateway." + }, + "urlPathMap": { + "$ref": "./network.json#/definitions/SubResource", + "description": "URL path map resource of the application gateway." + }, + "rewriteRuleSet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Rewrite Rule Set resource in Basic rule of the application gateway." + }, + "redirectConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Redirect configuration resource of the application gateway." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the request routing rule resource." + } + }, + "description": "Properties of request routing rule of the application gateway." + }, + "ApplicationGatewayRequestRoutingRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayRequestRoutingRulePropertiesFormat", + "description": "Properties of the application gateway request routing rule." + }, + "name": { + "type": "string", + "description": "Name of the request routing rule that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Request routing rule of an application gateway." + }, + "ApplicationGatewayRewriteRuleSet": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayRewriteRuleSetPropertiesFormat", + "description": "Properties of the application gateway rewrite rule set." + }, + "name": { + "type": "string", + "description": "Name of the rewrite rule set that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Rewrite rule set of an application gateway." + }, + "ApplicationGatewayRewriteRuleSetPropertiesFormat": { + "properties": { + "rewriteRules": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayRewriteRule" + }, + "description": "Rewrite rules in the rewrite rule set." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the rewrite rule set resource." + } + }, + "description": "Properties of rewrite rule set of the application gateway." + }, + "ApplicationGatewayRewriteRule": { + "properties": { + "name": { + "type": "string", + "description": "Name of the rewrite rule that is unique within an Application Gateway." + }, + "ruleSequence": { + "type": "integer", + "description": "Rule Sequence of the rewrite rule that determines the order of execution of a particular rule in a RewriteRuleSet." + }, + "conditions": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayRewriteRuleCondition" + }, + "description": "Conditions based on which the action set execution will be evaluated." + }, + "actionSet": { + "type": "object", + "$ref": "#/definitions/ApplicationGatewayRewriteRuleActionSet", + "description": "Set of actions to be done as part of the rewrite Rule." + } + }, + "description": "Rewrite rule of an application gateway." + }, + "ApplicationGatewayRewriteRuleCondition": { + "properties": { + "variable": { + "type": "string", + "description": "The condition parameter of the RewriteRuleCondition." + }, + "pattern": { + "type": "string", + "description": "The pattern, either fixed string or regular expression, that evaluates the truthfulness of the condition." + }, + "ignoreCase": { + "type": "boolean", + "description": "Setting this parameter to truth value with force the pattern to do a case in-sensitive comparison." + }, + "negate": { + "type": "boolean", + "description": "Setting this value as truth will force to check the negation of the condition given by the user." + } + }, + "description": "Set of conditions in the Rewrite Rule in Application Gateway." + }, + "ApplicationGatewayRewriteRuleActionSet": { + "properties": { + "requestHeaderConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayHeaderConfiguration" + }, + "description": "Request Header Actions in the Action Set." + }, + "responseHeaderConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayHeaderConfiguration" + }, + "description": "Response Header Actions in the Action Set." + }, + "urlConfiguration": { + "$ref": "#/definitions/ApplicationGatewayUrlConfiguration", + "description": "Url Configuration Action in the Action Set." + } + }, + "description": "Set of actions in the Rewrite Rule in Application Gateway." + }, + "ApplicationGatewayHeaderConfiguration": { + "properties": { + "headerName": { + "type": "string", + "description": "Header name of the header configuration." + }, + "headerValue": { + "type": "string", + "description": "Header value of the header configuration." + } + }, + "description": "Header configuration of the Actions set in Application Gateway." + }, + "ApplicationGatewayUrlConfiguration": { + "properties": { + "modifiedPath": { + "type": "string", + "description": "Url path which user has provided for url rewrite. Null means no path will be updated. Default value is null." + }, + "modifiedQueryString": { + "type": "string", + "description": "Query string which user has provided for url rewrite. Null means no query string will be updated. Default value is null." + }, + "reroute": { + "type": "boolean", + "description": "If set as true, it will re-evaluate the url path map provided in path based request routing rules using modified path. Default value is false." + } + }, + "description": "Url configuration of the Actions set in Application Gateway." + }, + "ApplicationGatewayRedirectConfigurationPropertiesFormat": { + "properties": { + "redirectType": { + "type": "string", + "$ref": "#/definitions/RedirectTypeEnum", + "description": "HTTP redirection type." + }, + "targetListener": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to a listener to redirect the request to." + }, + "targetUrl": { + "type": "string", + "description": "Url to redirect the request to." + }, + "includePath": { + "type": "boolean", + "description": "Include path in the redirected url." + }, + "includeQueryString": { + "type": "boolean", + "description": "Include query string in the redirected url." + }, + "requestRoutingRules": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Request routing specifying redirect configuration." + }, + "urlPathMaps": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Url path maps specifying default redirect configuration." + }, + "pathRules": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Path rules specifying redirect configuration." + } + }, + "description": "Properties of redirect configuration of the application gateway." + }, + "ApplicationGatewayRedirectConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayRedirectConfigurationPropertiesFormat", + "description": "Properties of the application gateway redirect configuration." + }, + "name": { + "type": "string", + "description": "Name of the redirect configuration that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Redirect configuration of an application gateway." + }, + "ApplicationGatewayPrivateLinkConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayPrivateLinkConfigurationProperties", + "description": "Properties of the application gateway private link configuration." + }, + "name": { + "type": "string", + "description": "Name of the private link configuration that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Private Link Configuration on an application gateway." + }, + "ApplicationGatewayPrivateLinkConfigurationProperties": { + "properties": { + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayPrivateLinkIpConfiguration" + }, + "description": "An array of application gateway private link ip configurations." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the application gateway private link configuration." + } + }, + "description": "Properties of private link configuration on an application gateway." + }, + "ApplicationGatewayPrivateLinkIpConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayPrivateLinkIpConfigurationProperties", + "description": "Properties of an application gateway private link ip configuration." + }, + "name": { + "type": "string", + "description": "The name of application gateway private link ip configuration." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "The application gateway private link ip configuration." + }, + "ApplicationGatewayPrivateLinkIpConfigurationProperties": { + "properties": { + "privateIPAddress": { + "type": "string", + "description": "The private IP address of the IP configuration." + }, + "privateIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "The private IP address allocation method." + }, + "subnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the subnet resource." + }, + "primary": { + "type": "boolean", + "description": "Whether the ip configuration is primary or not." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the application gateway private link IP configuration." + } + }, + "description": "Properties of an application gateway private link IP configuration." + }, + "ApplicationGatewayPrivateLinkResource": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayPrivateLinkResourceProperties", + "description": "Properties of the application gateway private link resource." + }, + "name": { + "type": "string", + "description": "Name of the private link resource that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "PrivateLink Resource of an application gateway." + }, + "ApplicationGatewayPrivateLinkResourceProperties": { + "properties": { + "groupId": { + "description": "Group identifier of private link resource.", + "type": "string", + "readOnly": true + }, + "requiredMembers": { + "description": "Required member names of private link resource.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "requiredZoneNames": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Required DNS zone names of the the private link resource." + } + }, + "description": "Properties of a private link resource." + }, + "ApplicationGatewayPrivateLinkResourceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayPrivateLinkResource" + }, + "description": "List of private link resources of an application gateway." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListApplicationGatewayPrivateLinkResources API service call. Gets all private link resources for an application gateway." + }, + "ApplicationGatewayPrivateEndpointConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayPrivateEndpointConnectionProperties", + "description": "Properties of the application gateway private endpoint connection." + }, + "name": { + "type": "string", + "description": "Name of the private endpoint connection on an application gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Private Endpoint connection on an application gateway." + }, + "ApplicationGatewayPrivateEndpointConnectionProperties": { + "properties": { + "privateEndpoint": { + "readOnly": true, + "$ref": "./privateEndpoint.json#/definitions/PrivateEndpoint", + "description": "The resource of private end point." + }, + "privateLinkServiceConnectionState": { + "$ref": "./privateLinkService.json#/definitions/PrivateLinkServiceConnectionState", + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the application gateway private endpoint connection resource." + }, + "linkIdentifier": { + "readOnly": true, + "type": "string", + "description": "The consumer link id." + } + }, + "description": "Properties of Private Link Resource of an application gateway." + }, + "ApplicationGatewayPrivateEndpointConnectionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayPrivateEndpointConnection" + }, + "description": "List of private endpoint connections on an application gateway." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListApplicationGatewayPrivateEndpointConnection API service call. Gets all private endpoint connections for an application gateway." + }, + "ApplicationGatewayPropertiesFormat": { + "properties": { + "sku": { + "$ref": "#/definitions/ApplicationGatewaySku", + "description": "SKU of the application gateway resource." + }, + "sslPolicy": { + "$ref": "#/definitions/ApplicationGatewaySslPolicy", + "description": "SSL policy of the application gateway resource." + }, + "operationalState": { + "readOnly": true, + "type": "string", + "description": "Operational state of the application gateway resource.", + "enum": [ + "Stopped", + "Starting", + "Running", + "Stopping" + ], + "x-ms-enum": { + "name": "ApplicationGatewayOperationalState", + "modelAsString": true + } + }, + "gatewayIPConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayIPConfiguration" + }, + "description": "Subnets of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "authenticationCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayAuthenticationCertificate" + }, + "description": "Authentication certificates of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "trustedRootCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayTrustedRootCertificate" + }, + "description": "Trusted Root certificates of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "trustedClientCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayTrustedClientCertificate" + }, + "description": "Trusted client certificates of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "sslCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewaySslCertificate" + }, + "description": "SSL certificates of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "frontendIPConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFrontendIPConfiguration" + }, + "description": "Frontend IP addresses of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "frontendPorts": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFrontendPort" + }, + "description": "Frontend ports of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "probes": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayProbe" + }, + "description": "Probes of the application gateway resource." + }, + "backendAddressPools": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayBackendAddressPool" + }, + "description": "Backend address pool of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "backendHttpSettingsCollection": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayBackendHttpSettings" + }, + "description": "Backend http settings of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "httpListeners": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayHttpListener" + }, + "description": "Http listeners of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "sslProfiles": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewaySslProfile" + }, + "description": "SSL profiles of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "urlPathMaps": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayUrlPathMap" + }, + "description": "URL path map of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "requestRoutingRules": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayRequestRoutingRule" + }, + "description": "Request routing rules of the application gateway resource." + }, + "rewriteRuleSets": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayRewriteRuleSet" + }, + "description": "Rewrite rules for the application gateway resource." + }, + "redirectConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayRedirectConfiguration" + }, + "description": "Redirect configurations of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "webApplicationFirewallConfiguration": { + "$ref": "#/definitions/ApplicationGatewayWebApplicationFirewallConfiguration", + "description": "Web application firewall configuration." + }, + "firewallPolicy": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the FirewallPolicy resource." + }, + "enableHttp2": { + "type": "boolean", + "description": "Whether HTTP2 is enabled on the application gateway resource." + }, + "enableFips": { + "type": "boolean", + "description": "Whether FIPS is enabled on the application gateway resource." + }, + "autoscaleConfiguration": { + "$ref": "#/definitions/ApplicationGatewayAutoscaleConfiguration", + "description": "Autoscale Configuration." + }, + "privateLinkConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayPrivateLinkConfiguration" + }, + "description": "PrivateLink configurations on application gateway." + }, + "privateEndpointConnections": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayPrivateEndpointConnection" + }, + "description": "Private Endpoint connections on application gateway." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the application gateway resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the application gateway resource." + }, + "customErrorConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayCustomError" + }, + "description": "Custom error configurations of the application gateway resource." + }, + "forceFirewallPolicyAssociation": { + "type": "boolean", + "description": "If true, associates a firewall policy with an application gateway regardless whether the policy differs from the WAF Config." + } + }, + "description": "Properties of the application gateway." + }, + "ApplicationGateway": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayPropertiesFormat", + "description": "Properties of the application gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of availability zones denoting where the resource needs to come from." + }, + "identity": { + "$ref": "./network.json#/definitions/ManagedServiceIdentity", + "description": "The identity of the application gateway, if configured." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Application gateway resource." + }, + "ApplicationGatewayListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGateway" + }, + "description": "List of an application gateways in a resource group." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListApplicationGateways API service call." + }, + "ApplicationGatewayUrlPathMapPropertiesFormat": { + "properties": { + "defaultBackendAddressPool": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Default backend address pool resource of URL path map." + }, + "defaultBackendHttpSettings": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Default backend http settings resource of URL path map." + }, + "defaultRewriteRuleSet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Default Rewrite rule set resource of URL path map." + }, + "defaultRedirectConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Default redirect configuration resource of URL path map." + }, + "pathRules": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayPathRule" + }, + "description": "Path rule of URL path map resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the URL path map resource." + } + }, + "description": "Properties of UrlPathMap of the application gateway." + }, + "ApplicationGatewayUrlPathMap": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayUrlPathMapPropertiesFormat", + "description": "Properties of the application gateway URL path map." + }, + "name": { + "type": "string", + "description": "Name of the URL path map that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "UrlPathMaps give a url path to the backend mapping information for PathBasedRouting." + }, + "ApplicationGatewayWebApplicationFirewallConfiguration": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Whether the web application firewall is enabled or not." + }, + "firewallMode": { + "type": "string", + "description": "Web application firewall mode.", + "enum": [ + "Detection", + "Prevention" + ], + "x-ms-enum": { + "name": "ApplicationGatewayFirewallMode", + "modelAsString": true + } + }, + "ruleSetType": { + "type": "string", + "description": "The type of the web application firewall rule set. Possible values are: 'OWASP'." + }, + "ruleSetVersion": { + "type": "string", + "description": "The version of the rule set type." + }, + "disabledRuleGroups": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFirewallDisabledRuleGroup" + }, + "description": "The disabled rule groups." + }, + "requestBodyCheck": { + "type": "boolean", + "description": "Whether allow WAF to check request Body." + }, + "maxRequestBodySize": { + "type": "integer", + "format": "int32", + "maximum": 128, + "exclusiveMaximum": false, + "minimum": 8, + "exclusiveMinimum": false, + "description": "Maximum request body size for WAF." + }, + "maxRequestBodySizeInKb": { + "type": "integer", + "format": "int32", + "maximum": 128, + "exclusiveMaximum": false, + "minimum": 8, + "exclusiveMinimum": false, + "description": "Maximum request body size in Kb for WAF." + }, + "fileUploadLimitInMb": { + "type": "integer", + "format": "int32", + "minimum": 0, + "exclusiveMinimum": false, + "description": "Maximum file upload size in Mb for WAF." + }, + "exclusions": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFirewallExclusion" + }, + "description": "The exclusion list." + } + }, + "required": [ + "enabled", + "firewallMode", + "ruleSetType", + "ruleSetVersion" + ], + "description": "Application gateway web application firewall configuration." + }, + "ApplicationGatewayAutoscaleConfiguration": { + "properties": { + "minCapacity": { + "type": "integer", + "format": "int32", + "minimum": 0, + "exclusiveMinimum": false, + "description": "Lower bound on number of Application Gateway capacity." + }, + "maxCapacity": { + "type": "integer", + "format": "int32", + "minimum": 2, + "exclusiveMinimum": false, + "description": "Upper bound on number of Application Gateway capacity." + } + }, + "required": [ + "minCapacity" + ], + "description": "Application Gateway autoscale configuration." + }, + "ApplicationGatewayConnectionDraining": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Whether connection draining is enabled or not." + }, + "drainTimeoutInSec": { + "type": "integer", + "format": "int32", + "maximum": 3600, + "exclusiveMaximum": false, + "minimum": 1, + "exclusiveMinimum": false, + "description": "The number of seconds connection draining is active. Acceptable values are from 1 second to 3600 seconds." + } + }, + "required": [ + "enabled", + "drainTimeoutInSec" + ], + "description": "Connection draining allows open connections to a backend server to be active for a specified time after the backend server got removed from the configuration." + }, + "ApplicationGatewayFirewallDisabledRuleGroup": { + "properties": { + "ruleGroupName": { + "type": "string", + "description": "The name of the rule group that will be disabled." + }, + "rules": { + "type": "array", + "items": { + "type": "integer", + "format": "int32", + "x-nullable": false + }, + "description": "The list of rules that will be disabled. If null, all rules of the rule group will be disabled." + } + }, + "required": [ + "ruleGroupName" + ], + "description": "Allows to disable rules within a rule group or an entire rule group." + }, + "ApplicationGatewayAvailableServerVariablesResult": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Response for ApplicationGatewayAvailableServerVariables API service call." + }, + "ApplicationGatewayAvailableRequestHeadersResult": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Response for ApplicationGatewayAvailableRequestHeaders API service call." + }, + "ApplicationGatewayAvailableResponseHeadersResult": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Response for ApplicationGatewayAvailableResponseHeaders API service call." + }, + "ApplicationGatewayFirewallExclusion": { + "properties": { + "matchVariable": { + "type": "string", + "description": "The variable to be excluded." + }, + "selectorMatchOperator": { + "type": "string", + "description": "When matchVariable is a collection, operate on the selector to specify which elements in the collection this exclusion applies to." + }, + "selector": { + "type": "string", + "description": "When matchVariable is a collection, operator used to specify which elements in the collection this exclusion applies to." + } + }, + "required": [ + "matchVariable", + "selectorMatchOperator", + "selector" + ], + "description": "Allow to exclude some variable satisfy the condition for the WAF check." + }, + "ApplicationGatewayAvailableWafRuleSetsResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFirewallRuleSet" + }, + "description": "The list of application gateway rule sets." + } + }, + "description": "Response for ApplicationGatewayAvailableWafRuleSets API service call." + }, + "ApplicationGatewayFirewallRuleSet": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayFirewallRuleSetPropertiesFormat", + "description": "Properties of the application gateway firewall rule set." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "A web application firewall rule set." + }, + "ApplicationGatewayFirewallRuleSetPropertiesFormat": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the web application firewall rule set." + }, + "ruleSetType": { + "type": "string", + "description": "The type of the web application firewall rule set." + }, + "ruleSetVersion": { + "type": "string", + "description": "The version of the web application firewall rule set type." + }, + "ruleGroups": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFirewallRuleGroup" + }, + "description": "The rule groups of the web application firewall rule set." + } + }, + "required": [ + "ruleSetType", + "ruleSetVersion", + "ruleGroups" + ], + "description": "Properties of the web application firewall rule set." + }, + "ApplicationGatewayFirewallRuleGroup": { + "properties": { + "ruleGroupName": { + "type": "string", + "description": "The name of the web application firewall rule group." + }, + "description": { + "type": "string", + "description": "The description of the web application firewall rule group." + }, + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFirewallRule" + }, + "description": "The rules of the web application firewall rule group." + } + }, + "required": [ + "ruleGroupName", + "rules" + ], + "description": "A web application firewall rule group." + }, + "ApplicationGatewayFirewallRule": { + "properties": { + "ruleId": { + "type": "integer", + "format": "int32", + "description": "The identifier of the web application firewall rule." + }, + "description": { + "type": "string", + "description": "The description of the web application firewall rule." + } + }, + "required": [ + "ruleId" + ], + "description": "A web application firewall rule." + }, + "ApplicationGatewayAvailableSslOptions": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayAvailableSslOptionsPropertiesFormat", + "description": "Properties of the application gateway available SSL options." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Response for ApplicationGatewayAvailableSslOptions API service call." + }, + "ApplicationGatewayAvailableSslOptionsPropertiesFormat": { + "properties": { + "predefinedPolicies": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "List of available Ssl predefined policy." + }, + "defaultPolicy": { + "$ref": "#/definitions/PolicyNameEnum", + "description": "Name of the Ssl predefined policy applied by default to application gateway." + }, + "availableCipherSuites": { + "type": "array", + "items": { + "$ref": "#/definitions/CipherSuitesEnum" + }, + "description": "List of available Ssl cipher suites." + }, + "availableProtocols": { + "type": "array", + "items": { + "$ref": "#/definitions/ProtocolsEnum" + }, + "description": "List of available Ssl protocols." + } + }, + "description": "Properties of ApplicationGatewayAvailableSslOptions." + }, + "ApplicationGatewayAvailableSslPredefinedPolicies": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewaySslPredefinedPolicy" + }, + "description": "List of available Ssl predefined policy." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ApplicationGatewayAvailableSslOptions API service call." + }, + "ApplicationGatewaySslPredefinedPolicy": { + "properties": { + "name": { + "type": "string", + "description": "Name of the Ssl predefined policy." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewaySslPredefinedPolicyPropertiesFormat", + "description": "Properties of the application gateway SSL predefined policy." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "An Ssl predefined policy." + }, + "ApplicationGatewaySslPredefinedPolicyPropertiesFormat": { + "properties": { + "cipherSuites": { + "type": "array", + "items": { + "$ref": "#/definitions/CipherSuitesEnum" + }, + "description": "Ssl cipher suites to be enabled in the specified order for application gateway." + }, + "minProtocolVersion": { + "$ref": "#/definitions/ProtocolsEnum", + "description": "Minimum version of Ssl protocol to be supported on application gateway." + } + }, + "description": "Properties of ApplicationGatewaySslPredefinedPolicy." + }, + "ApplicationGatewayCustomError": { + "properties": { + "statusCode": { + "type": "string", + "description": "Status code of the application gateway customer error.", + "enum": [ + "HttpStatus403", + "HttpStatus502" + ], + "x-ms-enum": { + "name": "ApplicationGatewayCustomErrorStatusCode", + "modelAsString": true + } + }, + "customErrorPageUrl": { + "type": "string", + "description": "Error page URL of the application gateway customer error." + } + }, + "description": "Customer error of an application gateway." + }, + "PolicyNameEnum": { + "type": "string", + "description": "Ssl predefined policy name enums.", + "enum": [ + "AppGwSslPolicy20150501", + "AppGwSslPolicy20170401", + "AppGwSslPolicy20170401S" + ], + "x-ms-enum": { + "name": "ApplicationGatewaySslPolicyName", + "modelAsString": true + } + }, + "ProtocolsEnum": { + "type": "string", + "description": "Ssl protocol enums.", + "enum": [ + "TLSv1_0", + "TLSv1_1", + "TLSv1_2" + ], + "x-ms-enum": { + "name": "ApplicationGatewaySslProtocol", + "modelAsString": true + } + }, + "CipherSuitesEnum": { + "type": "string", + "description": "Ssl cipher suites enums.", + "enum": [ + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_DHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_DHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_AES_256_GCM_SHA384", + "TLS_RSA_WITH_AES_128_GCM_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA256", + "TLS_RSA_WITH_AES_128_CBC_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_3DES_EDE_CBC_SHA", + "TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384" + ], + "x-ms-enum": { + "name": "ApplicationGatewaySslCipherSuite", + "modelAsString": true + } + }, + "RedirectTypeEnum": { + "type": "string", + "description": "Redirect type enum.", + "enum": [ + "Permanent", + "Found", + "SeeOther", + "Temporary" + ], + "x-ms-enum": { + "name": "ApplicationGatewayRedirectType", + "modelAsString": true + } + }, + "ApplicationGatewayProtocol": { + "type": "string", + "description": "Application Gateway protocol.", + "enum": [ + "Http", + "Https" + ], + "x-ms-enum": { + "name": "ApplicationGatewayProtocol", + "modelAsString": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/applicationSecurityGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/applicationSecurityGroup.json new file mode 100644 index 000000000000..a2826e028299 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/applicationSecurityGroup.json @@ -0,0 +1,406 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2021-02-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationSecurityGroups/{applicationSecurityGroupName}": { + "delete": { + "tags": [ + "ApplicationSecurityGroups" + ], + "operationId": "ApplicationSecurityGroups_Delete", + "description": "Deletes the specified application security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application security group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete application security group": { + "$ref": "./examples/ApplicationSecurityGroupDelete.json" + } + } + }, + "get": { + "tags": [ + "ApplicationSecurityGroups" + ], + "operationId": "ApplicationSecurityGroups_Get", + "description": "Gets information about the specified application security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application security group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the specified application security group resource.", + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get application security group": { + "$ref": "./examples/ApplicationSecurityGroupGet.json" + } + } + }, + "put": { + "tags": [ + "ApplicationSecurityGroups" + ], + "operationId": "ApplicationSecurityGroups_CreateOrUpdate", + "description": "Creates or updates an application security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application security group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroup" + }, + "description": "Parameters supplied to the create or update ApplicationSecurityGroup operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting application security group resource.", + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroup" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting application security group resource.", + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create application security group": { + "$ref": "./examples/ApplicationSecurityGroupCreate.json" + } + } + }, + "patch": { + "tags": [ + "applicationSecurityGroups" + ], + "operationId": "ApplicationSecurityGroups_UpdateTags", + "description": "Updates an application security group's tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application security group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update application security group tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ApplicationSecurityGroup resource.", + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update application security group tags": { + "$ref": "./examples/ApplicationSecurityGroupUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationSecurityGroups": { + "get": { + "tags": [ + "ApplicationSecurityGroups" + ], + "operationId": "ApplicationSecurityGroups_ListAll", + "description": "Gets all application security groups in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of application security group resources.", + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroupListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List all application security groups": { + "$ref": "./examples/ApplicationSecurityGroupListAll.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationSecurityGroups": { + "get": { + "tags": [ + "ApplicationSecurityGroups" + ], + "operationId": "ApplicationSecurityGroups_List", + "description": "Gets all the application security groups in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of application security group resources.", + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroupListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List load balancers in resource group": { + "$ref": "./examples/ApplicationSecurityGroupList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "ApplicationSecurityGroup": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationSecurityGroupPropertiesFormat", + "description": "Properties of the application security group." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "An application security group in a resource group." + }, + "ApplicationSecurityGroupPropertiesFormat": { + "properties": { + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the application security group resource. It uniquely identifies a resource, even if the user changes its name or migrate the resource across subscriptions or resource groups." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the application security group resource." + } + }, + "description": "Application security group properties." + }, + "ApplicationSecurityGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationSecurityGroup" + }, + "description": "A list of application security groups." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "A list of application security groups." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/availableDelegations.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/availableDelegations.json new file mode 100644 index 000000000000..25fc9964cf21 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/availableDelegations.json @@ -0,0 +1,178 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2021-02-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/{location}/availableDelegations": { + "get": { + "operationId": "AvailableDelegations_List", + "description": "Gets all of the available subnet delegations for this subscription in this region.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all of the possible delegations for a subnet in this subscription in the region.", + "schema": { + "$ref": "#/definitions/AvailableDelegationsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get available delegations": { + "$ref": "./examples/AvailableDelegationsSubscriptionGet.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/locations/{location}/availableDelegations": { + "get": { + "operationId": "AvailableResourceGroupDelegations_List", + "description": "Gets all of the available subnet delegations for this resource group in this region.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all of the possible delegations for a subnet in this subscription in the region.", + "schema": { + "$ref": "#/definitions/AvailableDelegationsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get available delegations in the resource group": { + "$ref": "./examples/AvailableDelegationsResourceGroupGet.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "AvailableDelegationsResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AvailableDelegation" + }, + "description": "An array of available delegations." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "An array of available delegations." + }, + "AvailableDelegation": { + "properties": { + "name": { + "type": "string", + "description": "The name of the AvailableDelegation resource." + }, + "id": { + "type": "string", + "description": "A unique identifier of the AvailableDelegation resource." + }, + "type": { + "type": "string", + "description": "Resource type." + }, + "serviceName": { + "type": "string", + "description": "The name of the service and resource." + }, + "actions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The actions permitted to the service upon delegation." + } + }, + "description": "The serviceName of an AvailableDelegation indicates a possible delegation for a subnet." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/availableServiceAliases.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/availableServiceAliases.json new file mode 100644 index 000000000000..dd53787c145f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/availableServiceAliases.json @@ -0,0 +1,171 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2021-02-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/{location}/availableServiceAliases": { + "get": { + "operationId": "AvailableServiceAliases_List", + "description": "Gets all available service aliases for this subscription in this region.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all available service aliases for the subscription in the region.", + "schema": { + "$ref": "#/definitions/AvailableServiceAliasesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get available service aliases": { + "$ref": "./examples/AvailableServiceAliasesList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/locations/{location}/availableServiceAliases": { + "get": { + "operationId": "AvailableServiceAliases_ListByResourceGroup", + "description": "Gets all available service aliases for this resource group in this region.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all available service aliases for the resource group in the region.", + "schema": { + "$ref": "#/definitions/AvailableServiceAliasesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get available service aliases in the resource group": { + "$ref": "./examples/AvailableServiceAliasesListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "AvailableServiceAlias": { + "properties": { + "name": { + "type": "string", + "description": "The name of the service alias." + }, + "id": { + "type": "string", + "description": "The ID of the service alias." + }, + "type": { + "type": "string", + "description": "The type of the resource." + }, + "resourceName": { + "type": "string", + "description": "The resource name of the service alias." + } + }, + "description": "The available service alias." + }, + "AvailableServiceAliasesResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AvailableServiceAlias" + }, + "description": "An array of available service aliases." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "An array of available service aliases." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/azureFirewall.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/azureFirewall.json new file mode 100644 index 000000000000..e597418925e9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/azureFirewall.json @@ -0,0 +1,1085 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2021-02-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/azureFirewalls/{azureFirewallName}": { + "delete": { + "tags": [ + "AzureFirewalls" + ], + "operationId": "AzureFirewalls_Delete", + "description": "Deletes the specified Azure Firewall.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "azureFirewallName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Azure Firewall." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete Azure Firewall": { + "$ref": "./examples/AzureFirewallDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "AzureFirewalls" + ], + "operationId": "AzureFirewalls_Get", + "description": "Gets the specified Azure Firewall.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "azureFirewallName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Azure Firewall." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns an AzureFirewall resource.", + "schema": { + "$ref": "#/definitions/AzureFirewall" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Azure Firewall": { + "$ref": "./examples/AzureFirewallGet.json" + }, + "Get Azure Firewall With Zones": { + "$ref": "./examples/AzureFirewallGetWithZones.json" + }, + "Get Azure Firewall With management subnet": { + "$ref": "./examples/AzureFirewallGetWithMgmtSubnet.json" + }, + "Get Azure Firewall With Additional Properties": { + "$ref": "./examples/AzureFirewallGetWithAdditionalProperties.json" + }, + "Get Azure Firewall With IpGroups": { + "$ref": "./examples/AzureFirewallGetWithIpGroups.json" + } + } + }, + "put": { + "tags": [ + "AzureFirewalls" + ], + "operationId": "AzureFirewalls_CreateOrUpdate", + "description": "Creates or updates the specified Azure Firewall.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "azureFirewallName", + "in": "path", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 56, + "description": "The name of the Azure Firewall." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AzureFirewall" + }, + "description": "Parameters supplied to the create or update Azure Firewall operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting AzureFirewall resource.", + "schema": { + "$ref": "#/definitions/AzureFirewall" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting AzureFirewall resource.", + "schema": { + "$ref": "#/definitions/AzureFirewall" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create Azure Firewall": { + "$ref": "./examples/AzureFirewallPut.json" + }, + "Create Azure Firewall With Zones": { + "$ref": "./examples/AzureFirewallPutWithZones.json" + }, + "Create Azure Firewall With management subnet": { + "$ref": "./examples/AzureFirewallPutWithMgmtSubnet.json" + }, + "Create Azure Firewall in virtual Hub": { + "$ref": "./examples/AzureFirewallPutInHub.json" + }, + "Create Azure Firewall With Additional Properties": { + "$ref": "./examples/AzureFirewallPutWithAdditionalProperties.json" + }, + "Create Azure Firewall With IpGroups": { + "$ref": "./examples/AzureFirewallPutWithIpGroups.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "AzureFirewalls" + ], + "operationId": "AzureFirewalls_UpdateTags", + "description": "Updates tags of an Azure Firewall resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "azureFirewallName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Azure Firewall." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update azure firewall tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Update successful. The operation returns the resulting AzureFirewall resource.", + "schema": { + "$ref": "#/definitions/AzureFirewall" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update Azure Firewall Tags": { + "$ref": "./examples/AzureFirewallUpdateTags.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/azureFirewalls": { + "get": { + "tags": [ + "AzureFirewalls" + ], + "operationId": "AzureFirewalls_List", + "description": "Lists all Azure Firewalls in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of AzureFirewall resources.", + "schema": { + "$ref": "#/definitions/AzureFirewallListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Azure Firewalls for a given resource group": { + "$ref": "./examples/AzureFirewallListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/azureFirewalls": { + "get": { + "tags": [ + "AzureFirewalls" + ], + "operationId": "AzureFirewalls_ListAll", + "description": "Gets all the Azure Firewalls in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of AzureFirewall resources.", + "schema": { + "$ref": "#/definitions/AzureFirewallListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Azure Firewalls for a given subscription": { + "$ref": "./examples/AzureFirewallListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "AzureFirewallIPConfigurationPropertiesFormat": { + "properties": { + "privateIPAddress": { + "type": "string", + "readOnly": true, + "description": "The Firewall Internal Load Balancer IP to be used as the next hop in User Defined Routes." + }, + "subnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the subnet resource. This resource must be named 'AzureFirewallSubnet' or 'AzureFirewallManagementSubnet'." + }, + "publicIPAddress": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the PublicIP resource. This field is a mandatory input if subnet is not null." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the Azure firewall IP configuration resource." + } + }, + "description": "Properties of IP configuration of an Azure Firewall." + }, + "AzureFirewallIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureFirewallIPConfigurationPropertiesFormat", + "description": "Properties of the azure firewall IP configuration." + }, + "name": { + "type": "string", + "description": "Name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IP configuration of an Azure Firewall." + }, + "AzureFirewallPublicIPAddress": { + "properties": { + "address": { + "type": "string", + "description": "Public IP Address value." + } + }, + "description": "Public IP Address associated with azure firewall." + }, + "AzureFirewallIpGroups": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "Resource ID." + }, + "changeNumber": { + "type": "string", + "readOnly": true, + "description": "The iteration number." + } + }, + "description": "IpGroups associated with azure firewall." + }, + "HubPublicIPAddresses": { + "properties": { + "addresses": { + "type": "array", + "description": "The list of Public IP addresses associated with azure firewall or IP addresses to be retained.", + "items": { + "$ref": "#/definitions/AzureFirewallPublicIPAddress" + } + }, + "count": { + "type": "integer", + "format": "int32", + "description": "The number of Public IP addresses associated with azure firewall." + } + }, + "description": "Public IP addresses associated with azure firewall." + }, + "HubIPAddresses": { + "properties": { + "publicIPs": { + "description": "Public IP addresses associated with azure firewall.", + "$ref": "#/definitions/HubPublicIPAddresses" + }, + "privateIPAddress": { + "type": "string", + "description": "Private IP Address associated with azure firewall." + } + }, + "description": "IP addresses associated with azure firewall." + }, + "IpGroups": { + "type": "array", + "description": "List of IpGroups associated with azure firewall.", + "items": { + "$ref": "#/definitions/AzureFirewallIpGroups" + } + }, + "AzureFirewallPropertiesFormat": { + "properties": { + "applicationRuleCollections": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallApplicationRuleCollection" + }, + "description": "Collection of application rule collections used by Azure Firewall." + }, + "natRuleCollections": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallNatRuleCollection" + }, + "description": "Collection of NAT rule collections used by Azure Firewall." + }, + "networkRuleCollections": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallNetworkRuleCollection" + }, + "description": "Collection of network rule collections used by Azure Firewall." + }, + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallIPConfiguration" + }, + "description": "IP configuration of the Azure Firewall resource." + }, + "managementIpConfiguration": { + "$ref": "#/definitions/AzureFirewallIPConfiguration", + "description": "IP configuration of the Azure Firewall used for management traffic." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the Azure firewall resource." + }, + "threatIntelMode": { + "description": "The operation mode for Threat Intelligence.", + "$ref": "#/definitions/AzureFirewallThreatIntelMode" + }, + "virtualHub": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The virtualHub to which the firewall belongs." + }, + "firewallPolicy": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The firewallPolicy associated with this azure firewall." + }, + "hubIPAddresses": { + "description": "IP addresses associated with AzureFirewall.", + "$ref": "#/definitions/HubIPAddresses" + }, + "ipGroups": { + "readOnly": true, + "description": "IpGroups associated with AzureFirewall.", + "$ref": "#/definitions/IpGroups" + }, + "sku": { + "description": "The Azure Firewall Resource SKU.", + "$ref": "#/definitions/AzureFirewallSku" + }, + "additionalProperties": { + "$ref": "#/definitions/AzureFirewallAdditionalProperties", + "description": "The additional properties used to further config this azure firewall." + } + }, + "description": "Properties of the Azure Firewall." + }, + "AzureFirewall": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureFirewallPropertiesFormat", + "description": "Properties of the azure firewall." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of availability zones denoting where the resource needs to come from." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Azure Firewall resource." + }, + "AzureFirewallListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewall" + }, + "description": "List of Azure Firewalls in a resource group." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListAzureFirewalls API service call." + }, + "AzureFirewallThreatIntelMode": { + "type": "string", + "description": "The operation mode for Threat Intel.", + "enum": [ + "Alert", + "Deny", + "Off" + ], + "x-ms-enum": { + "name": "AzureFirewallThreatIntelMode", + "modelAsString": true + } + }, + "AzureFirewallAdditionalProperties": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The additional properties of azure firewall." + }, + "AzureFirewallApplicationRuleCollectionPropertiesFormat": { + "properties": { + "priority": { + "type": "integer", + "format": "int32", + "maximum": 65000, + "exclusiveMaximum": false, + "minimum": 100, + "exclusiveMinimum": false, + "description": "Priority of the application rule collection resource." + }, + "action": { + "$ref": "#/definitions/AzureFirewallRCAction", + "description": "The action type of a rule collection." + }, + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallApplicationRule" + }, + "description": "Collection of rules used by a application rule collection." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the application rule collection resource." + } + }, + "description": "Properties of the application rule collection." + }, + "AzureFirewallApplicationRuleCollection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureFirewallApplicationRuleCollectionPropertiesFormat", + "description": "Properties of the azure firewall application rule collection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the Azure firewall. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Application rule collection resource." + }, + "AzureFirewallApplicationRuleProtocol": { + "properties": { + "protocolType": { + "description": "Protocol type.", + "$ref": "#/definitions/AzureFirewallApplicationRuleProtocolType" + }, + "port": { + "type": "integer", + "format": "int32", + "maximum": 64000, + "exclusiveMaximum": false, + "minimum": 0, + "exclusiveMinimum": false, + "description": "Port number for the protocol, cannot be greater than 64000. This field is optional." + } + }, + "description": "Properties of the application rule protocol." + }, + "AzureFirewallApplicationRule": { + "properties": { + "name": { + "type": "string", + "description": "Name of the application rule." + }, + "description": { + "type": "string", + "description": "Description of the rule." + }, + "sourceAddresses": { + "type": "array", + "description": "List of source IP addresses for this rule.", + "items": { + "type": "string" + } + }, + "protocols": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallApplicationRuleProtocol" + }, + "description": "Array of ApplicationRuleProtocols." + }, + "targetFqdns": { + "type": "array", + "description": "List of FQDNs for this rule.", + "items": { + "type": "string" + } + }, + "fqdnTags": { + "type": "array", + "description": "List of FQDN Tags for this rule.", + "items": { + "type": "string" + } + }, + "sourceIpGroups": { + "type": "array", + "description": "List of source IpGroups for this rule.", + "items": { + "type": "string" + } + } + }, + "description": "Properties of an application rule." + }, + "AzureFirewallNatRuleCollectionProperties": { + "properties": { + "priority": { + "type": "integer", + "format": "int32", + "maximum": 65000, + "exclusiveMaximum": false, + "minimum": 100, + "exclusiveMinimum": false, + "description": "Priority of the NAT rule collection resource." + }, + "action": { + "$ref": "#/definitions/AzureFirewallNatRCAction", + "description": "The action type of a NAT rule collection." + }, + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallNatRule" + }, + "description": "Collection of rules used by a NAT rule collection." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the NAT rule collection resource." + } + }, + "description": "Properties of the NAT rule collection." + }, + "AzureFirewallNatRuleCollection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureFirewallNatRuleCollectionProperties", + "description": "Properties of the azure firewall NAT rule collection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the Azure firewall. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "NAT rule collection resource." + }, + "AzureFirewallNatRule": { + "properties": { + "name": { + "type": "string", + "description": "Name of the NAT rule." + }, + "description": { + "type": "string", + "description": "Description of the rule." + }, + "sourceAddresses": { + "type": "array", + "description": "List of source IP addresses for this rule.", + "items": { + "type": "string" + } + }, + "destinationAddresses": { + "type": "array", + "description": "List of destination IP addresses for this rule. Supports IP ranges, prefixes, and service tags.", + "items": { + "type": "string" + } + }, + "destinationPorts": { + "type": "array", + "description": "List of destination ports.", + "items": { + "type": "string" + } + }, + "protocols": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallNetworkRuleProtocol" + }, + "description": "Array of AzureFirewallNetworkRuleProtocols applicable to this NAT rule." + }, + "translatedAddress": { + "type": "string", + "description": "The translated address for this NAT rule." + }, + "translatedPort": { + "type": "string", + "description": "The translated port for this NAT rule." + }, + "translatedFqdn": { + "type": "string", + "description": "The translated FQDN for this NAT rule." + }, + "sourceIpGroups": { + "type": "array", + "description": "List of source IpGroups for this rule.", + "items": { + "type": "string" + } + } + }, + "description": "Properties of a NAT rule." + }, + "AzureFirewallNatRCAction": { + "properties": { + "type": { + "description": "The type of action.", + "$ref": "#/definitions/AzureFirewallNatRCActionType" + } + }, + "description": "AzureFirewall NAT Rule Collection Action." + }, + "AzureFirewallNatRCActionType": { + "type": "string", + "description": "The action type of a NAT rule collection.", + "enum": [ + "Snat", + "Dnat" + ], + "x-ms-enum": { + "name": "AzureFirewallNatRCActionType", + "modelAsString": true + } + }, + "AzureFirewallNetworkRuleCollectionPropertiesFormat": { + "properties": { + "priority": { + "type": "integer", + "format": "int32", + "maximum": 65000, + "exclusiveMaximum": false, + "minimum": 100, + "exclusiveMinimum": false, + "description": "Priority of the network rule collection resource." + }, + "action": { + "$ref": "#/definitions/AzureFirewallRCAction", + "description": "The action type of a rule collection." + }, + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallNetworkRule" + }, + "description": "Collection of rules used by a network rule collection." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the network rule collection resource." + } + }, + "description": "Properties of the network rule collection." + }, + "AzureFirewallNetworkRuleCollection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureFirewallNetworkRuleCollectionPropertiesFormat", + "description": "Properties of the azure firewall network rule collection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the Azure firewall. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Network rule collection resource." + }, + "AzureFirewallNetworkRule": { + "properties": { + "name": { + "type": "string", + "description": "Name of the network rule." + }, + "description": { + "type": "string", + "description": "Description of the rule." + }, + "protocols": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallNetworkRuleProtocol" + }, + "description": "Array of AzureFirewallNetworkRuleProtocols." + }, + "sourceAddresses": { + "type": "array", + "description": "List of source IP addresses for this rule.", + "items": { + "type": "string" + } + }, + "destinationAddresses": { + "type": "array", + "description": "List of destination IP addresses.", + "items": { + "type": "string" + } + }, + "destinationPorts": { + "type": "array", + "description": "List of destination ports.", + "items": { + "type": "string" + } + }, + "destinationFqdns": { + "type": "array", + "description": "List of destination FQDNs.", + "items": { + "type": "string" + } + }, + "sourceIpGroups": { + "type": "array", + "description": "List of source IpGroups for this rule.", + "items": { + "type": "string" + } + }, + "destinationIpGroups": { + "type": "array", + "description": "List of destination IpGroups for this rule.", + "items": { + "type": "string" + } + } + }, + "description": "Properties of the network rule." + }, + "AzureFirewallRCAction": { + "properties": { + "type": { + "description": "The type of action.", + "$ref": "#/definitions/AzureFirewallRCActionType" + } + }, + "description": "Properties of the AzureFirewallRCAction." + }, + "AzureFirewallRCActionType": { + "type": "string", + "description": "The action type of a rule collection.", + "enum": [ + "Allow", + "Deny" + ], + "x-ms-enum": { + "name": "AzureFirewallRCActionType", + "modelAsString": true + } + }, + "AzureFirewallNetworkRuleProtocol": { + "type": "string", + "description": "The protocol of a Network Rule resource.", + "enum": [ + "TCP", + "UDP", + "Any", + "ICMP" + ], + "x-ms-enum": { + "name": "AzureFirewallNetworkRuleProtocol", + "modelAsString": true + } + }, + "AzureFirewallApplicationRuleProtocolType": { + "type": "string", + "description": "The protocol type of a Application Rule resource.", + "enum": [ + "Http", + "Https", + "Mssql" + ], + "x-ms-enum": { + "name": "AzureFirewallApplicationRuleProtocolType", + "modelAsString": true + } + }, + "AzureFirewallSku": { + "properties": { + "name": { + "type": "string", + "description": "Name of an Azure Firewall SKU.", + "enum": [ + "AZFW_VNet", + "AZFW_Hub" + ], + "x-ms-enum": { + "name": "AzureFirewallSkuName", + "modelAsString": true + } + }, + "tier": { + "type": "string", + "description": "Tier of an Azure Firewall.", + "enum": [ + "Standard", + "Premium" + ], + "x-ms-enum": { + "name": "AzureFirewallSkuTier", + "modelAsString": true + } + } + }, + "description": "SKU of an Azure Firewall." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/azureFirewallFqdnTag.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/azureFirewallFqdnTag.json new file mode 100644 index 000000000000..8516722cfa06 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/azureFirewallFqdnTag.json @@ -0,0 +1,130 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2021-02-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/azureFirewallFqdnTags": { + "get": { + "tags": [ + "AzureFirewallFqdnTags" + ], + "operationId": "AzureFirewallFqdnTags_ListAll", + "description": "Gets all the Azure Firewall FQDN Tags in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of Azure Firewall FQDN Tag resources.", + "schema": { + "$ref": "#/definitions/AzureFirewallFqdnTagListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Azure Firewall FQDN Tags for a given subscription": { + "$ref": "./examples/AzureFirewallFqdnTagsListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "AzureFirewallFqdnTagPropertiesFormat": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the Azure firewall FQDN tag resource." + }, + "fqdnTagName": { + "type": "string", + "readOnly": true, + "description": "The name of this FQDN Tag." + } + }, + "description": "Azure Firewall FQDN Tag Properties." + }, + "AzureFirewallFqdnTag": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureFirewallFqdnTagPropertiesFormat", + "description": "Properties of the azure firewall FQDN tag." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Azure Firewall FQDN Tag Resource." + }, + "AzureFirewallFqdnTagListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallFqdnTag" + }, + "description": "List of Azure Firewall FQDN Tags in a resource group." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListAzureFirewallFqdnTags API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/azureWebCategory.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/azureWebCategory.json new file mode 100644 index 000000000000..5dde5c5087e9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/azureWebCategory.json @@ -0,0 +1,184 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2021-02-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/azureWebCategories/{name}": { + "get": { + "tags": [ + "WebCategories" + ], + "operationId": "WebCategories_Get", + "description": "Gets the specified Azure Web Category.", + "parameters": [ + { + "name": "name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the azureWebCategory." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands resourceIds back referenced by the azureWebCategory resource." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting azureWebCategory resource.", + "schema": { + "$ref": "#/definitions/AzureWebCategory" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Azure Web Category by name": { + "$ref": "./examples/AzureWebCategoryGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/azureWebCategories": { + "get": { + "tags": [ + "WebCategories" + ], + "operationId": "WebCategories_ListBySubscription", + "description": "Gets all the Azure Web Categories in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of Azure Web Category resources.", + "schema": { + "$ref": "#/definitions/AzureWebCategoryListResult" + } + }, + "default": { + "description": "Unexpected Error.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Azure Web Categories for a given subscription": { + "$ref": "./examples/AzureWebCategoriesListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "AzureWebCategoryPropertiesFormat": { + "properties": { + "group": { + "type": "string", + "readOnly": true, + "description": "The name of the group that the category belongs to." + } + }, + "description": "Azure Web Category Properties." + }, + "AzureWebCategory": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureWebCategoryPropertiesFormat", + "description": "Properties of the Azure Web Category." + }, + "id": { + "type": "string", + "description": "Resource ID." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Resource name." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "description": "Azure Web Category Resource." + }, + "AzureWebCategoryListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureWebCategory" + }, + "description": "List of Azure Web Categories for a given Subscription." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListAzureWebCategories API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/bastionHost.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/bastionHost.json new file mode 100644 index 000000000000..28e9654f5534 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/bastionHost.json @@ -0,0 +1,892 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2021-02-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}": { + "delete": { + "tags": [ + "BastionHosts" + ], + "operationId": "BastionHosts_Delete", + "description": "Deletes the specified Bastion Host.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete Bastion Host": { + "$ref": "./examples/BastionHostDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "BastionHosts" + ], + "operationId": "BastionHosts_Get", + "description": "Gets the specified Bastion Host.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns an BastionHost resource.", + "schema": { + "$ref": "#/definitions/BastionHost" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Bastion Host": { + "$ref": "./examples/BastionHostGet.json" + } + } + }, + "put": { + "tags": [ + "BastionHosts" + ], + "operationId": "BastionHosts_CreateOrUpdate", + "description": "Creates or updates the specified Bastion Host.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/BastionHost" + }, + "description": "Parameters supplied to the create or update Bastion Host operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting Bastion Host resource.", + "schema": { + "$ref": "#/definitions/BastionHost" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting Bastion Host resource.", + "schema": { + "$ref": "#/definitions/BastionHost" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create Bastion Host": { + "$ref": "./examples/BastionHostPut.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/bastionHosts": { + "get": { + "tags": [ + "BastionHosts" + ], + "operationId": "BastionHosts_List", + "description": "Lists all Bastion Hosts in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of Bastion Host resources.", + "schema": { + "$ref": "#/definitions/BastionHostListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Bastion Hosts for a given subscription": { + "$ref": "./examples/BastionHostListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts": { + "get": { + "tags": [ + "BastionHosts" + ], + "operationId": "BastionHosts_ListByResourceGroup", + "description": "Lists all Bastion Hosts in a resource group.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of BastionHost resources.", + "schema": { + "$ref": "#/definitions/BastionHostListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Bastion Hosts for a given resource group": { + "$ref": "./examples/BastionHostListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}/createShareableLinks": { + "post": { + "tags": [ + "BastionHosts", + "BastionShareableLink" + ], + "operationId": "PutBastionShareableLink", + "description": "Creates a Bastion Shareable Links for all the VMs specified in the request.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/BastionShareableLinkRequest" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of shareable links for the specified VMs, giving appropriate error messages as needed.", + "schema": { + "$ref": "#/definitions/BastionShareableLinkListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Create Bastion Shareable Links for the request VMs": { + "$ref": "./examples/BastionShareableLinkCreate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}/deleteShareableLinks": { + "post": { + "tags": [ + "BastionHosts", + "BastionShareableLink" + ], + "operationId": "DeleteBastionShareableLink", + "description": "Deletes the Bastion Shareable Links for all the VMs specified in the request.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/BastionShareableLinkRequest" + } + ], + "responses": { + "200": { + "description": "Success. The operation deleted the BastionShareableLinks associated with the VMs, if they existed. No return body." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete Bastion Shareable Links for the request VMs": { + "$ref": "./examples/BastionShareableLinkDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}/getShareableLinks": { + "post": { + "tags": [ + "BastionHosts", + "BastionShareableLink" + ], + "operationId": "GetBastionShareableLink", + "description": "Return the Bastion Shareable Links for all the VMs specified in the request.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/BastionShareableLinkRequest" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of shareable links for the specified VMs, giving appropriate error messages as needed.", + "schema": { + "$ref": "#/definitions/BastionShareableLinkListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Returns the Bastion Shareable Links for the request VMs": { + "$ref": "./examples/BastionShareableLinkGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}/getActiveSessions": { + "post": { + "tags": [ + "BastionHosts" + ], + "operationId": "GetActiveSessions", + "description": "Returns the list of currently active sessions on the Bastion.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of active sessions on the Bastion.", + "schema": { + "$ref": "#/definitions/BastionActiveSessionListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Returns a list of currently active sessions on the Bastion": { + "$ref": "./examples/BastionSessionsList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}/disconnectActiveSessions": { + "post": { + "tags": [ + "BastionHosts" + ], + "operationId": "DisconnectActiveSessions", + "description": "Returns the list of currently active sessions on the Bastion.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/SessionIdsParameters" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of sessions with the state of deleted/failed/not found.", + "schema": { + "$ref": "#/definitions/BastionSessionDeleteResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Deletes the specified active session": { + "$ref": "./examples/BastionSessionDelete.json" + } + } + } + } + }, + "definitions": { + "Sku": { + "description": "The sku of this Bastion Host.", + "properties": { + "name": { + "type": "string", + "description": "The name of this Bastion Host.", + "enum": [ + "Basic", + "Standard" + ], + "default": "Standard", + "x-ms-enum": { + "name": "BastionHostSkuName", + "modelAsString": true + } + } + }, + "type": "object" + }, + "BastionHostIPConfigurationPropertiesFormat": { + "properties": { + "subnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference of the subnet resource." + }, + "publicIPAddress": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference of the PublicIP resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the bastion host IP configuration resource." + }, + "privateIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "Private IP allocation method." + } + }, + "required": [ + "subnet", + "publicIPAddress" + ], + "description": "Properties of IP configuration of an Bastion Host." + }, + "BastionHostIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/BastionHostIPConfigurationPropertiesFormat", + "description": "Represents the ip configuration associated with the resource." + }, + "name": { + "type": "string", + "description": "Name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Ip configuration type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IP configuration of an Bastion Host." + }, + "BastionHostPropertiesFormat": { + "properties": { + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/BastionHostIPConfiguration" + }, + "description": "IP configuration of the Bastion Host resource." + }, + "dnsName": { + "type": "string", + "description": "FQDN for the endpoint on which bastion host is accessible." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the bastion host resource." + } + }, + "description": "Properties of the Bastion Host." + }, + "BastionHost": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/BastionHostPropertiesFormat", + "description": "Represents the bastion host resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "sku": { + "description": "The sku of this Bastion Host.", + "$ref": "#/definitions/Sku" + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Bastion Host resource." + }, + "BastionHostListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BastionHost" + }, + "description": "List of Bastion Hosts in a resource group." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListBastionHosts API service call." + }, + "BastionShareableLink": { + "properties": { + "vm": { + "$ref": "#/definitions/VM", + "description": "Reference of the virtual machine resource." + }, + "bsl": { + "type": "string", + "readOnly": true, + "description": "The unique Bastion Shareable Link to the virtual machine." + }, + "createdAt": { + "type": "string", + "readOnly": true, + "description": "The time when the link was created." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "Optional field indicating the warning or error message related to the vm in case of partial failure." + } + }, + "required": [ + "vm" + ], + "description": "Bastion Shareable Link." + }, + "BastionShareableLinkListRequest": { + "properties": { + "vms": { + "type": "array", + "items": { + "$ref": "#/definitions/BastionShareableLink" + }, + "description": "List of VM references." + } + }, + "description": "Post request for all the Bastion Shareable Link endpoints." + }, + "BastionShareableLinkListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BastionShareableLink" + }, + "description": "List of Bastion Shareable Links for the request." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for all the Bastion Shareable Link endpoints." + }, + "BastionActiveSession": { + "properties": { + "sessionId": { + "type": "string", + "readOnly": true, + "description": "A unique id for the session." + }, + "startTime": { + "type": "object", + "readOnly": true, + "description": "The time when the session started." + }, + "targetSubscriptionId": { + "type": "string", + "readOnly": true, + "description": "The subscription id for the target virtual machine." + }, + "resourceType": { + "type": "string", + "readOnly": true, + "description": "The type of the resource." + }, + "targetHostName": { + "type": "string", + "readOnly": true, + "description": "The host name of the target." + }, + "targetResourceGroup": { + "type": "string", + "readOnly": true, + "description": "The resource group of the target." + }, + "userName": { + "type": "string", + "readOnly": true, + "description": "The user name who is active on this session." + }, + "targetIpAddress": { + "type": "string", + "readOnly": true, + "description": "The IP Address of the target." + }, + "protocol": { + "type": "string", + "readOnly": true, + "description": "The protocol used to connect to the target.", + "enum": [ + "SSH", + "RDP" + ], + "x-ms-enum": { + "name": "BastionConnectProtocol", + "modelAsString": true + } + }, + "targetResourceId": { + "type": "string", + "readOnly": true, + "description": "The resource id of the target." + }, + "sessionDurationInMins": { + "type": "number", + "readOnly": true, + "description": "Duration in mins the session has been active." + } + }, + "description": "The session detail for a target." + }, + "BastionActiveSessionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BastionActiveSession" + }, + "description": "List of active sessions on the bastion." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for GetActiveSessions." + }, + "BastionSessionState": { + "properties": { + "sessionId": { + "type": "string", + "readOnly": true, + "description": "A unique id for the session." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "Used for extra information." + }, + "state": { + "type": "string", + "readOnly": true, + "description": "The state of the session. Disconnected/Failed/NotFound." + } + }, + "description": "The session state detail for a target." + }, + "BastionSessionDeleteResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BastionSessionState" + }, + "description": "List of sessions with their corresponding state." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for DisconnectActiveSessions." + }, + "VM": { + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Describes a Virtual Machine." + }, + "SessionIds": { + "properties": { + "sessionIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of session IDs." + } + }, + "description": "List of session IDs." + } + }, + "parameters": { + "ResourceGroupName": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group.", + "x-ms-parameter-location": "method" + }, + "BastionShareableLinkRequest": { + "name": "bslRequest", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/BastionShareableLinkListRequest" + }, + "description": "Post request for all the Bastion Shareable Link endpoints.", + "x-ms-parameter-location": "method" + }, + "BastionHostName": { + "name": "bastionHostName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Bastion Host.", + "x-ms-parameter-location": "method" + }, + "SessionIdsParameters": { + "name": "sessionIds", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SessionIds" + }, + "description": "The list of sessionids to disconnect.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/checkDnsAvailability.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/checkDnsAvailability.json new file mode 100644 index 000000000000..6ed433c2afd6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/checkDnsAvailability.json @@ -0,0 +1,96 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2021-02-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/{location}/CheckDnsNameAvailability": { + "get": { + "operationId": "CheckDnsNameAvailability", + "description": "Checks whether a domain name in the cloudapp.azure.com zone is available for use.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "name": "domainNameLabel", + "in": "query", + "required": true, + "type": "string", + "description": "The domain name to be verified. It must conform to the following regular expression: ^[a-z][a-z0-9-]{1,61}[a-z0-9]$." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns whether the DNS name is available.", + "schema": { + "$ref": "#/definitions/DnsNameAvailabilityResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Check Dns Name Availability": { + "$ref": "./examples/CheckDnsNameAvailability.json" + } + } + } + } + }, + "definitions": { + "DnsNameAvailabilityResult": { + "properties": { + "available": { + "type": "boolean", + "description": "Domain availability (True/False)." + } + }, + "description": "Response for the CheckDnsNameAvailability API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/cloudServiceNetworkInterface.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/cloudServiceNetworkInterface.json new file mode 100644 index 000000000000..f4419db6dcf4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/cloudServiceNetworkInterface.json @@ -0,0 +1,222 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2021-02-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/cloudServices/{cloudServiceName}/roleInstances/{roleInstanceName}/networkInterfaces": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_ListCloudServiceRoleInstanceNetworkInterfaces", + "description": "Gets information about all network interfaces in a role instance in a cloud service.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "cloudServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the cloud service." + }, + { + "name": "roleInstanceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of role instance." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface resources.", + "schema": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List cloud service role instance network interfaces": { + "$ref": "./examples/CloudServiceRoleInstanceNetworkInterfaceList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/cloudServices/{cloudServiceName}/networkInterfaces": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_ListCloudServiceNetworkInterfaces", + "description": "Gets all network interfaces in a cloud service.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "cloudServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the cloud service." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface resources.", + "schema": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List cloud service network interfaces": { + "$ref": "./examples/CloudServiceNetworkInterfaceList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/cloudServices/{cloudServiceName}/roleInstances/{roleInstanceName}/networkInterfaces/{networkInterfaceName}": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_GetCloudServiceNetworkInterface", + "description": "Get the specified network interface in a cloud service.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "cloudServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the cloud service." + }, + { + "name": "roleInstanceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of role instance." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NetworkInterface resource.", + "schema": { + "$ref": "./networkInterface.json#/definitions/NetworkInterface" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get cloud service network interface": { + "$ref": "./examples/CloudServiceNetworkInterfaceGet.json" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/cloudServicePublicIpAddress.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/cloudServicePublicIpAddress.json new file mode 100644 index 000000000000..3af56feeedfc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/cloudServicePublicIpAddress.json @@ -0,0 +1,241 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2021-02-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/cloudServices/{cloudServiceName}/publicipaddresses": { + "get": { + "operationId": "PublicIPAddresses_ListCloudServicePublicIPAddresses", + "description": "Gets information about all public IP addresses on a cloud service level.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "cloudServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the cloud service." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PublicIPInterface resources.", + "schema": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddressListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ListVMSSPublicIP": { + "$ref": "./examples/CloudServicePublicIpListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/cloudServices/{cloudServiceName}/roleInstances/{roleInstanceName}/networkInterfaces/{networkInterfaceName}/ipconfigurations/{ipConfigurationName}/publicipaddresses": { + "get": { + "operationId": "PublicIPAddresses_ListCloudServiceRoleInstancePublicIPAddresses", + "description": "Gets information about all public IP addresses in a role instance IP configuration in a cloud service.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "cloudServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the cloud service." + }, + { + "name": "roleInstanceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of role instance." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The network interface name." + }, + { + "name": "ipConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The IP configuration name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PublicIPAddress resources.", + "schema": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddressListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ListVMSSVMPublicIP": { + "$ref": "./examples/CloudServiceRoleInstancePublicIpList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/cloudServices/{cloudServiceName}/roleInstances/{roleInstanceName}/networkInterfaces/{networkInterfaceName}/ipconfigurations/{ipConfigurationName}/publicipaddresses/{publicIpAddressName}": { + "get": { + "operationId": "PublicIPAddresses_GetCloudServicePublicIPAddress", + "description": "Get the specified public IP address in a cloud service.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "cloudServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the cloud service." + }, + { + "name": "roleInstanceName", + "in": "path", + "required": true, + "type": "string", + "description": "The role instance name." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "ipConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the IP configuration." + }, + { + "name": "publicIpAddressName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP Address." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "x-ms-examples": { + "GetVMSSPublicIP": { + "$ref": "./examples/CloudServicePublicIpGet.json" + } + }, + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting PublicIPAddress resource.", + "schema": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddress" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/customIpPrefix.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/customIpPrefix.json new file mode 100644 index 000000000000..3014df5f0eb7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/customIpPrefix.json @@ -0,0 +1,476 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2021-02-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/customIpPrefixes/{customIpPrefixName}": { + "delete": { + "tags": [ + "CustomIpPrefixes" + ], + "operationId": "CustomIPPrefixes_Delete", + "description": "Deletes the specified custom IP prefix.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "customIpPrefixName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the CustomIpPrefix." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete custom IP prefix": { + "$ref": "./examples/CustomIpPrefixDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "CustomIpPrefixes" + ], + "operationId": "CustomIPPrefixes_Get", + "description": "Gets the specified custom IP prefix in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "customIpPrefixName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the custom IP prefix." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting CustomIpPrefix resource.", + "schema": { + "$ref": "#/definitions/CustomIpPrefix" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get custom IP prefix": { + "$ref": "./examples/CustomIpPrefixGet.json" + } + } + }, + "put": { + "tags": [ + "CustomIpPrefixes" + ], + "operationId": "CustomIPPrefixes_CreateOrUpdate", + "description": "Creates or updates a custom IP prefix.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "customIpPrefixName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the custom IP prefix." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CustomIpPrefix" + }, + "description": "Parameters supplied to the create or update custom IP prefix operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting CustomIpPrefix resource.", + "schema": { + "$ref": "#/definitions/CustomIpPrefix" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting CustomIpPrefix resource.", + "schema": { + "$ref": "#/definitions/CustomIpPrefix" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create custom IP prefix allocation method": { + "$ref": "./examples/CustomIpPrefixCreateCustomizedValues.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "CustomIpPrefixes" + ], + "operationId": "CustomIPPrefixes_UpdateTags", + "description": "Updates custom IP prefix tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "customIpPrefixName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the custom IP prefix." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update custom IP prefix tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting customIpPrefix resource.", + "schema": { + "$ref": "#/definitions/CustomIpPrefix" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update public IP address tags": { + "$ref": "./examples/CustomIpPrefixUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/customIpPrefixes": { + "get": { + "tags": [ + "CustomIpPrefixes" + ], + "operationId": "CustomIPPrefixes_ListAll", + "description": "Gets all the custom IP prefixes in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of CustomIpPrefix resources.", + "schema": { + "$ref": "#/definitions/CustomIpPrefixListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all custom IP prefixes": { + "$ref": "./examples/CustomIpPrefixListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/customIpPrefixes": { + "get": { + "tags": [ + "CustomIpPrefixes" + ], + "operationId": "CustomIPPrefixes_List", + "description": "Gets all custom IP prefixes in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of CustomIpPrefix resources.", + "schema": { + "$ref": "#/definitions/CustomIpPrefixListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List resource group Custom IP prefixes": { + "$ref": "./examples/CustomIpPrefixList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "CustomIpPrefixPropertiesFormat": { + "properties": { + "cidr": { + "type": "string", + "description": "The prefix range in CIDR notation. Should include the start address and the prefix length." + }, + "signedMessage": { + "type": "string", + "description": "Signed message for WAN validation." + }, + "authorizationMessage": { + "type": "string", + "description": "Authorization message for WAN validation." + }, + "customIpPrefixParent": { + "$ref": "#/definitions/CustomIpPrefix", + "description": "The Parent CustomIpPrefix for IPv6 /64 CustomIpPrefix." + }, + "childCustomIpPrefixes": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/CustomIpPrefix" + }, + "description": "The list of all Children for IPv6 /48 CustomIpPrefix." + }, + "commissionedState": { + "type": "string", + "description": "The commissioned state of the Custom IP Prefix.", + "enum": [ + "Provisioning", + "Provisioned", + "Commissioning", + "Commissioned", + "Decommissioning", + "Deprovisioning" + ], + "x-ms-enum": { + "name": "CommissionedState", + "modelAsString": true + } + }, + "publicIpPrefixes": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "The list of all referenced PublicIpPrefixes." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the custom IP prefix resource." + }, + "failedReason": { + "readOnly": true, + "type": "string", + "description": "The reason why resource is in failed state." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the custom IP prefix resource." + } + }, + "description": "Custom IP prefix properties." + }, + "CustomIpPrefix": { + "properties": { + "extendedLocation": { + "$ref": "./network.json#/definitions/ExtendedLocation", + "description": "The extended location of the custom IP prefix." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/CustomIpPrefixPropertiesFormat", + "description": "Custom IP prefix properties." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of availability zones denoting the IP allocated for the resource needs to come from." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Custom IP prefix resource." + }, + "CustomIpPrefixListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/CustomIpPrefix" + }, + "description": "A list of Custom IP prefixes that exists in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListCustomIpPrefixes API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/ddosCustomPolicy.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/ddosCustomPolicy.json new file mode 100644 index 000000000000..8da5a89a3de4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/ddosCustomPolicy.json @@ -0,0 +1,364 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2021-02-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ddosCustomPolicies/{ddosCustomPolicyName}": { + "delete": { + "tags": [ + "ddosCustomPolicies" + ], + "operationId": "DdosCustomPolicies_Delete", + "description": "Deletes the specified DDoS custom policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosCustomPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS custom policy." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete DDoS custom policy": { + "$ref": "./examples/DdosCustomPolicyDelete.json" + } + } + }, + "get": { + "tags": [ + "ddosCustomPolicies" + ], + "operationId": "DdosCustomPolicies_Get", + "description": "Gets information about the specified DDoS custom policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosCustomPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS custom policy." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the specified DDoS custom policy resource.", + "schema": { + "$ref": "#/definitions/DdosCustomPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get DDoS custom policy": { + "$ref": "./examples/DdosCustomPolicyGet.json" + } + } + }, + "put": { + "tags": [ + "ddosCustomPolicies" + ], + "operationId": "DdosCustomPolicies_CreateOrUpdate", + "description": "Creates or updates a DDoS custom policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosCustomPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS custom policy." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DdosCustomPolicy" + }, + "description": "Parameters supplied to the create or update operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting DDoS custom policy resource.", + "schema": { + "$ref": "#/definitions/DdosCustomPolicy" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting DDoS custom policy resource.", + "schema": { + "$ref": "#/definitions/DdosCustomPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create DDoS custom policy": { + "$ref": "./examples/DdosCustomPolicyCreate.json" + } + } + }, + "patch": { + "tags": [ + "ddosCustomPolicies" + ], + "operationId": "DdosCustomPolicies_UpdateTags", + "description": "Update a DDoS custom policy tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosCustomPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS custom policy." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update DDoS custom policy resource tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting DDoS custom policy resource.", + "schema": { + "$ref": "#/definitions/DdosCustomPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DDoS Custom policy Update tags": { + "$ref": "./examples/DdosCustomPolicyUpdateTags.json" + } + } + } + } + }, + "definitions": { + "DdosCustomPolicy": { + "description": "A DDoS custom policy in a resource group.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DdosCustomPolicyPropertiesFormat", + "description": "Properties of the DDoS custom policy." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ] + }, + "DdosCustomPolicyPropertiesFormat": { + "properties": { + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the DDoS custom policy resource. It uniquely identifies the resource, even if the user changes its name or migrate the resource across subscriptions or resource groups." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the DDoS custom policy resource." + }, + "publicIPAddresses": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "The list of public IPs associated with the DDoS custom policy resource. This list is read-only." + }, + "protocolCustomSettings": { + "readOnly": false, + "type": "array", + "items": { + "$ref": "#/definitions/ProtocolCustomSettingsFormat" + }, + "description": "The protocol-specific DDoS policy customization parameters." + } + }, + "description": "DDoS custom policy properties." + }, + "ProtocolCustomSettingsFormat": { + "properties": { + "protocol": { + "readOnly": false, + "type": "string", + "enum": [ + "Tcp", + "Udp", + "Syn" + ], + "x-ms-enum": { + "name": "DdosCustomPolicyProtocol", + "modelAsString": true + }, + "description": "The protocol for which the DDoS protection policy is being customized." + }, + "triggerRateOverride": { + "readOnly": false, + "type": "string", + "description": "The customized DDoS protection trigger rate." + }, + "sourceRateOverride": { + "readOnly": false, + "type": "string", + "description": "The customized DDoS protection source rate." + }, + "triggerSensitivityOverride": { + "readOnly": false, + "type": "string", + "enum": [ + "Relaxed", + "Low", + "Default", + "High" + ], + "x-ms-enum": { + "name": "DdosCustomPolicyTriggerSensitivityOverride", + "modelAsString": true + }, + "description": "The customized DDoS protection trigger rate sensitivity degrees. High: Trigger rate set with most sensitivity w.r.t. normal traffic. Default: Trigger rate set with moderate sensitivity w.r.t. normal traffic. Low: Trigger rate set with less sensitivity w.r.t. normal traffic. Relaxed: Trigger rate set with least sensitivity w.r.t. normal traffic." + } + }, + "description": "DDoS custom policy properties." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/ddosProtectionPlan.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/ddosProtectionPlan.json new file mode 100644 index 000000000000..6209433d2f15 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/ddosProtectionPlan.json @@ -0,0 +1,436 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2021-02-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ddosProtectionPlans/{ddosProtectionPlanName}": { + "delete": { + "tags": [ + "DdosProtectionPlans" + ], + "operationId": "DdosProtectionPlans_Delete", + "description": "Deletes the specified DDoS protection plan.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosProtectionPlanName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS protection plan." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete DDoS protection plan": { + "$ref": "./examples/DdosProtectionPlanDelete.json" + } + } + }, + "get": { + "tags": [ + "DdosProtectionPlans" + ], + "operationId": "DdosProtectionPlans_Get", + "description": "Gets information about the specified DDoS protection plan.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosProtectionPlanName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS protection plan." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the specified DDoS protection plan resource.", + "schema": { + "$ref": "#/definitions/DdosProtectionPlan" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get DDoS protection plan": { + "$ref": "./examples/DdosProtectionPlanGet.json" + } + } + }, + "put": { + "tags": [ + "DdosProtectionPlans" + ], + "operationId": "DdosProtectionPlans_CreateOrUpdate", + "description": "Creates or updates a DDoS protection plan.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosProtectionPlanName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS protection plan." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DdosProtectionPlan" + }, + "description": "Parameters supplied to the create or update operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting DDoS protection plan resource.", + "schema": { + "$ref": "#/definitions/DdosProtectionPlan" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting DDoS protection plan resource.", + "schema": { + "$ref": "#/definitions/DdosProtectionPlan" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create DDoS protection plan": { + "$ref": "./examples/DdosProtectionPlanCreate.json" + } + } + }, + "patch": { + "tags": [ + "DdosProtectionPlans" + ], + "operationId": "DdosProtectionPlans_UpdateTags", + "description": "Update a DDoS protection plan tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosProtectionPlanName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS protection plan." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to the update DDoS protection plan resource tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting DDoS protection plan resource.", + "schema": { + "$ref": "#/definitions/DdosProtectionPlan" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DDoS protection plan Update tags": { + "$ref": "./examples/DdosProtectionPlanUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/ddosProtectionPlans": { + "get": { + "tags": [ + "DdosProtectionPlans" + ], + "operationId": "DdosProtectionPlans_List", + "description": "Gets all DDoS protection plans in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of DDoS protection plan resources.", + "schema": { + "$ref": "#/definitions/DdosProtectionPlanListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List all DDoS protection plans": { + "$ref": "./examples/DdosProtectionPlanListAll.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ddosProtectionPlans": { + "get": { + "tags": [ + "DdosProtectionPlans" + ], + "operationId": "DdosProtectionPlans_ListByResourceGroup", + "description": "Gets all the DDoS protection plans in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of DDoS protection plan resources.", + "schema": { + "$ref": "#/definitions/DdosProtectionPlanListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List DDoS protection plans in resource group": { + "$ref": "./examples/DdosProtectionPlanList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "DdosProtectionPlan": { + "description": "A DDoS protection plan in a resource group.", + "x-ms-azure-resource": true, + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource ID." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Resource name." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DdosProtectionPlanPropertiesFormat", + "description": "Properties of the DDoS protection plan." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + } + }, + "DdosProtectionPlanPropertiesFormat": { + "properties": { + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the DDoS protection plan resource. It uniquely identifies the resource, even if the user changes its name or migrate the resource across subscriptions or resource groups." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the DDoS protection plan resource." + }, + "virtualNetworks": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "The list of virtual networks associated with the DDoS protection plan resource. This list is read-only." + } + }, + "description": "DDoS protection plan properties." + }, + "DdosProtectionPlanListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DdosProtectionPlan" + }, + "description": "A list of DDoS protection plans." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "A list of DDoS protection plans." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/dscpConfiguration.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/dscpConfiguration.json new file mode 100644 index 000000000000..87b08ed7dc9a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/dscpConfiguration.json @@ -0,0 +1,445 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2021-02-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dscpConfigurations/{dscpConfigurationName}": { + "put": { + "tags": [ + "DscpConfiguration" + ], + "operationId": "DscpConfiguration_CreateOrUpdate", + "description": "Creates or updates a DSCP Configuration.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "dscpConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DscpConfiguration" + }, + "description": "Parameters supplied to the create or update dscp configuration operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting DscpConfiguration resource.", + "schema": { + "$ref": "#/definitions/DscpConfiguration" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting DscpConfiguration resource.", + "schema": { + "$ref": "#/definitions/DscpConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create DSCP Configuration": { + "$ref": "./examples/DscpConfigurationCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "delete": { + "tags": [ + "DscpConfiguration" + ], + "operationId": "DscpConfiguration_Delete", + "description": "Deletes a DSCP Configuration.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "dscpConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete DSCP Configuration": { + "$ref": "./examples/DscpConfigurationDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "DscpConfiguration" + ], + "operationId": "DscpConfiguration_Get", + "description": "Gets a DSCP Configuration.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "dscpConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting DSCP Configuration resource.", + "schema": { + "$ref": "#/definitions/DscpConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Dscp Configuration": { + "$ref": "./examples/DscpConfigurationGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dscpConfigurations": { + "get": { + "tags": [ + "DscpConfigurations" + ], + "operationId": "DscpConfiguration_List", + "description": "Gets a DSCP Configuration.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting DSCP Configuration resource.", + "schema": { + "$ref": "#/definitions/DscpConfigurationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Dscp Configuration": { + "$ref": "./examples/DscpConfigurationList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/dscpConfigurations": { + "get": { + "tags": [ + "DscpConfigurations" + ], + "operationId": "DscpConfiguration_ListAll", + "description": "Gets all dscp configurations in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface resources.", + "schema": { + "$ref": "#/definitions/DscpConfigurationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all network interfaces": { + "$ref": "./examples/DscpConfigurationListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "DscpConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DscpConfigurationPropertiesFormat", + "description": "Properties of the network interface." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "DSCP Configuration in a resource group." + }, + "DscpConfigurationPropertiesFormat": { + "properties": { + "markings": { + "type": "array", + "items": { + "type": "integer", + "format": "int32" + }, + "description": "List of markings to be used in the configuration." + }, + "sourceIpRanges": { + "type": "array", + "items": { + "$ref": "#/definitions/QosIpRange" + }, + "description": "Source IP ranges." + }, + "destinationIpRanges": { + "type": "array", + "items": { + "$ref": "#/definitions/QosIpRange" + }, + "description": "Destination IP ranges." + }, + "sourcePortRanges": { + "type": "array", + "items": { + "$ref": "#/definitions/QosPortRange" + }, + "description": "Sources port ranges." + }, + "destinationPortRanges": { + "type": "array", + "items": { + "$ref": "#/definitions/QosPortRange" + }, + "description": "Destination port ranges." + }, + "protocol": { + "type": "string", + "enum": [ + "DoNotUse", + "Icmp", + "Tcp", + "Udp", + "Gre", + "Esp", + "Ah", + "Vxlan", + "All" + ], + "x-ms-enum": { + "name": "ProtocolType", + "modelAsString": true + }, + "description": "RNM supported protocol types." + }, + "qosCollectionId": { + "type": "string", + "readOnly": true, + "description": "Qos Collection ID generated by RNM." + }, + "associatedNetworkInterfaces": { + "type": "array", + "items": { + "$ref": "./networkInterface.json#/definitions/NetworkInterface" + }, + "readOnly": true, + "description": "Associated Network Interfaces to the DSCP Configuration." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the DSCP Configuration resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the DSCP Configuration resource." + } + }, + "description": "DSCP Configuration properties." + }, + "QosIpRange": { + "properties": { + "startIP": { + "type": "string", + "description": "Start IP Address." + }, + "endIP": { + "type": "string", + "description": "End IP Address." + } + }, + "description": "Qos Traffic Profiler IP Range properties." + }, + "QosPortRange": { + "properties": { + "start": { + "type": "integer", + "format": "int32", + "description": "Qos Port Range start." + }, + "end": { + "type": "integer", + "format": "int32", + "description": "Qos Port Range end." + } + }, + "description": "Qos Traffic Profiler Port range properties." + }, + "DscpConfigurationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DscpConfiguration" + }, + "description": "A list of dscp configurations in a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the DscpConfigurationList API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/endpointService.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/endpointService.json new file mode 100644 index 000000000000..a277e9b234df --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/endpointService.json @@ -0,0 +1,119 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2021-02-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/{location}/virtualNetworkAvailableEndpointServices": { + "get": { + "operationId": "AvailableEndpointServices_List", + "description": "List what values of endpoint services are available for use.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location to check available endpoint services." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns list of available endpoint services.", + "schema": { + "$ref": "#/definitions/EndpointServicesListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "EndpointServicesList": { + "$ref": "./examples/EndpointServicesList.json" + } + } + } + } + }, + "definitions": { + "EndpointServicesListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/EndpointServiceResult" + }, + "description": "List of available endpoint services in a region." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListAvailableEndpointServices API service call." + }, + "EndpointServiceResult": { + "properties": { + "name": { + "type": "string", + "description": "Name of the endpoint service.", + "readOnly": true + }, + "type": { + "type": "string", + "description": "Type of the endpoint service.", + "readOnly": true + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Endpoint service." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayAvailableRequestHeadersGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayAvailableRequestHeadersGet.json new file mode 100644 index 000000000000..09610785d95f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayAvailableRequestHeadersGet.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "72f988bf-86f1-41af-91ab-2d7cd0dddd4" + }, + "responses": { + "200": { + "body": [ + "Accept-Charset" + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayAvailableResponseHeadersGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayAvailableResponseHeadersGet.json new file mode 100644 index 000000000000..4bc21225c080 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayAvailableResponseHeadersGet.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "72f988bf-86f1-41af-91ab-2d7cd0dddd4" + }, + "responses": { + "200": { + "body": [ + "Access-Control-Allow-Origin" + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayAvailableServerVariablesGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayAvailableServerVariablesGet.json new file mode 100644 index 000000000000..40a907c34475 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayAvailableServerVariablesGet.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "72f988bf-86f1-41af-91ab-2d7cd0dddd4" + }, + "responses": { + "200": { + "body": [ + "request_query" + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayAvailableSslOptionsGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayAvailableSslOptionsGet.json new file mode 100644 index 000000000000..904fb5a478e1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayAvailableSslOptionsGet.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "default", + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default", + "type": "Microsoft.Network/ApplicationGatewayAvailableSslOptions", + "properties": { + "predefinedPolicies": [ + { + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20150501" + }, + { + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20170401" + }, + { + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20170401S" + } + ], + "defaultPolicy": "AppGwSslPolicy20150501", + "availableCipherSuites": [ + "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_DHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_DHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_AES_256_GCM_SHA384", + "TLS_RSA_WITH_AES_128_GCM_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA256", + "TLS_RSA_WITH_AES_128_CBC_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_3DES_EDE_CBC_SHA", + "TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA" + ], + "availableProtocols": [ + "TLSv1_0", + "TLSv1_1", + "TLSv1_2" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPoliciesGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPoliciesGet.json new file mode 100644 index 000000000000..d844abc8533d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPoliciesGet.json @@ -0,0 +1,101 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "AppGwSslPolicy20150501", + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20150501", + "properties": { + "cipherSuites": [ + "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_DHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_DHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_AES_256_GCM_SHA384", + "TLS_RSA_WITH_AES_128_GCM_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA256", + "TLS_RSA_WITH_AES_128_CBC_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_3DES_EDE_CBC_SHA", + "TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA" + ], + "minProtocolVersion": "TLSv1_0" + } + }, + { + "name": "AppGwSslPolicy20170401", + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20170401", + "properties": { + "cipherSuites": [ + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_256_GCM_SHA384", + "TLS_RSA_WITH_AES_128_GCM_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA256", + "TLS_RSA_WITH_AES_128_CBC_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_128_CBC_SHA" + ], + "minProtocolVersion": "TLSv1_1" + } + }, + { + "name": "AppGwSslPolicy20170401S", + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20170401S", + "properties": { + "cipherSuites": [ + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_256_GCM_SHA384", + "TLS_RSA_WITH_AES_128_GCM_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA256", + "TLS_RSA_WITH_AES_128_CBC_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_128_CBC_SHA" + ], + "minProtocolVersion": "TLSv1_2" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPolicyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPolicyGet.json new file mode 100644 index 000000000000..fabf10f07746 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPolicyGet.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "predefinedPolicyName": "AppGwSslPolicy20150501" + }, + "responses": { + "200": { + "body": { + "name": "AppGwSslPolicy20150501", + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20150501", + "properties": { + "cipherSuites": [ + "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_DHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_DHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_AES_256_GCM_SHA384", + "TLS_RSA_WITH_AES_128_GCM_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA256", + "TLS_RSA_WITH_AES_128_CBC_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_3DES_EDE_CBC_SHA", + "TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA" + ], + "minProtocolVersion": "TLSv1_0" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayAvailableWafRuleSetsGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayAvailableWafRuleSetsGet.json new file mode 100644 index 000000000000..a64962655228 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayAvailableWafRuleSetsGet.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "OWASP_3.0", + "id": "/subscriptions//resourceGroups//providers/Microsoft.Network/applicationGatewayAvailableWafRuleSets/", + "type": "Microsoft.Network/applicationGatewayAvailableWafRuleSets", + "properties": { + "provisioningState": "Succeeded", + "ruleSetType": "OWASP", + "ruleSetVersion": "3.0", + "ruleGroups": [ + { + "ruleGroupName": "General", + "description": "", + "rules": [ + { + "ruleId": 200004, + "description": "Possible Multipart Unmatched Boundary." + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayBackendHealthGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayBackendHealthGet.json new file mode 100644 index 000000000000..34c0e7510a0e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayBackendHealthGet.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "appgw", + "applicationGatewayName": "appgw" + }, + "responses": { + "200": { + "body": { + "backendAddressPools": [ + { + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendaddressPools/MFAnalyticsPool" + }, + "backendHttpSettingsCollection": [ + { + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/MFPoolSettings" + }, + "servers": [ + { + "address": "10.220.1.8", + "health": "Up" + } + ] + } + ] + }, + { + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendaddressPools/MFPool" + }, + "backendHttpSettingsCollection": [ + { + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/MFPoolSettings" + }, + "servers": [ + { + "address": "10.220.1.4", + "health": "Up" + }, + { + "address": "10.220.1.5", + "health": "Up" + } + ] + } + ] + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayBackendHealthTest.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayBackendHealthTest.json new file mode 100644 index 000000000000..7b9b7263a4a7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayBackendHealthTest.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw", + "probeRequest": { + "protocol": "Http", + "pickHostNameFromBackendHttpSettings": true, + "path": "/", + "timeout": 30, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendaddressPools/MFAnalyticsPool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/MFPoolSettings" + } + } + }, + "responses": { + "200": { + "body": { + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendaddressPools/MFAnalyticsPool" + }, + "backendHealthHttpSettings": { + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/MFPoolSettings" + }, + "servers": [ + { + "address": "10.220.1.4", + "health": "Up" + }, + { + "address": "10.220.1.5", + "health": "Up" + } + ] + } + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayCreate.json new file mode 100644 index 000000000000..adf0cc07c097 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayCreate.json @@ -0,0 +1,878 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw", + "parameters": { + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "location": "eastus", + "properties": { + "sku": { + "name": "Standard_v2", + "tier": "Standard_v2", + "capacity": 3 + }, + "gatewayIPConfigurations": [ + { + "name": "appgwipc", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet/subnets/appgwsubnet" + } + } + } + ], + "sslCertificates": [ + { + "name": "sslcert", + "properties": { + "data": "****", + "password": "****" + } + }, + { + "name": "sslcert2", + "properties": { + "keyVaultSecretId": "https://kv/secret" + } + } + ], + "trustedRootCertificates": [ + { + "name": "rootcert", + "properties": { + "data": "****" + } + }, + { + "name": "rootcert1", + "properties": { + "keyVaultSecretId": "https://kv/secret" + } + } + ], + "trustedClientCertificates": [ + { + "name": "clientcert", + "properties": { + "data": "****" + } + } + ], + "frontendIPConfigurations": [ + { + "name": "appgwfip", + "properties": { + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/appgwpip" + } + } + } + ], + "frontendPorts": [ + { + "name": "appgwfp", + "properties": { + "port": 443 + } + }, + { + "name": "appgwfp80", + "properties": { + "port": 80 + } + } + ], + "backendAddressPools": [ + { + "name": "appgwpool", + "properties": { + "backendAddresses": [ + { + "ipAddress": "10.0.1.1" + }, + { + "ipAddress": "10.0.1.2" + } + ] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "appgwbhs", + "properties": { + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "requestTimeout": 30 + } + } + ], + "sslProfiles": [ + { + "name": "sslProfile1", + "properties": { + "sslPolicy": { + "policyType": "Custom", + "minProtocolVersion": "TLSv1_1", + "cipherSuites": [ + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256" + ] + }, + "clientAuthConfiguration": { + "verifyClientCertIssuerDN": true + }, + "trustedClientCertificates": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/trustedClientCertificates/clientcert" + } + ] + } + } + ], + "httpListeners": [ + { + "name": "appgwhl", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp" + }, + "protocol": "Https", + "sslCertificate": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert" + }, + "sslProfile": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslProfiles/sslProfile1" + }, + "requireServerNameIndication": false + } + }, + { + "name": "appgwhttplistener", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80" + }, + "protocol": "Http" + } + } + ], + "urlPathMaps": [ + { + "name": "pathMap1", + "properties": { + "defaultBackendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "defaultBackendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "defaultRewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + }, + "pathRules": [ + { + "name": "apiPaths", + "properties": { + "paths": [ + "/api", + "/v1/api" + ], + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + } + ] + } + } + ], + "requestRoutingRules": [ + { + "name": "appgwrule", + "properties": { + "ruleType": "Basic", + "priority": 10, + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + }, + { + "name": "appgwPathBasedRule", + "properties": { + "ruleType": "PathBasedRouting", + "priority": 20, + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener" + }, + "urlPathMap": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1" + } + } + } + ], + "rewriteRuleSets": [ + { + "name": "rewriteRuleSet1", + "properties": { + "rewriteRules": [ + { + "name": "Set X-Forwarded-For", + "ruleSequence": 102, + "conditions": [ + { + "variable": "http_req_Authorization", + "pattern": "^Bearer", + "ignoreCase": true, + "negate": false + } + ], + "actionSet": { + "requestHeaderConfigurations": [ + { + "headerName": "X-Forwarded-For", + "headerValue": "{var_add_x_forwarded_for_proxy}" + } + ], + "responseHeaderConfigurations": [ + { + "headerName": "Strict-Transport-Security", + "headerValue": "max-age=31536000" + } + ], + "urlConfiguration": { + "modifiedPath": "/abc" + } + } + } + ] + } + } + ] + } + } + }, + "responses": { + "201": { + "body": { + "name": "appgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw", + "type": "Microsoft.Network/applicationGateways", + "location": "southcentralus", + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "Standard_Medium", + "tier": "Standard", + "capacity": 3 + }, + "operationalState": "Running", + "gatewayIPConfigurations": [ + { + "name": "appgwipc", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/gatewayIPConfigurations/appgwipc", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/virtualNetwork1/subnets/appgwsubnet" + } + } + } + ], + "sslCertificates": [ + { + "name": "sslcert", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert", + "properties": { + "provisioningState": "Succeeded", + "publicCertData": "*****" + } + } + ], + "trustedClientCertificates": [ + { + "name": "clientcert", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/trustedClientCertificates/clientcert", + "properties": { + "provisioningState": "Succeeded", + "data": "****" + } + } + ], + "authenticationCertificates": [], + "frontendIPConfigurations": [ + { + "name": "appgwfip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/appgwpip" + } + } + } + ], + "frontendPorts": [ + { + "name": "appgwfp", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp", + "properties": { + "provisioningState": "Succeeded", + "port": 443 + } + }, + { + "name": "appgwfp80", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80", + "properties": { + "provisioningState": "Succeeded", + "port": 80 + } + } + ], + "backendAddressPools": [ + { + "name": "appgwpool", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool", + "properties": { + "provisioningState": "Succeeded", + "backendAddresses": [] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "appgwbhs", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs", + "properties": { + "provisioningState": "Succeeded", + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "requestTimeout": 30 + } + } + ], + "sslProfiles": [ + { + "name": "sslProfile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslProfiles/sslProfile1", + "properties": { + "provisioningState": "Succeeded", + "sslPolicy": { + "policyType": "Custom", + "minProtocolVersion": "TLSv1_1", + "cipherSuites": [ + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256" + ] + }, + "clientAuthConfiguration": { + "verifyClientCertIssuerDN": true + }, + "trustedClientCertificates": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/trustedClientCertificates/clientcert" + } + ] + } + } + ], + "httpListeners": [ + { + "name": "appgwhl", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp" + }, + "protocol": "Https", + "sslCertificate": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert" + }, + "sslProfile": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslProfiles/sslProfile1" + }, + "requireServerNameIndication": false + } + }, + { + "name": "appgwhttplistener", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80" + }, + "protocol": "Http" + } + } + ], + "urlPathMaps": [ + { + "name": "pathMap1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1", + "properties": { + "provisioningState": "Succeeded", + "defaultBackendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "defaultBackendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "defaultRewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + }, + "pathRules": [ + { + "name": "apiPaths", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1/pathRules/apiPaths", + "properties": { + "provisioningState": "Succeeded", + "paths": [ + "/api", + "/v1/api" + ], + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + } + ] + } + } + ], + "requestRoutingRules": [ + { + "name": "appgwrule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/requestRoutingRules/appgwrule", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "Basic", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + }, + { + "name": "appgwPathBasedRule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/requestRoutingRules/appgwPathBasedRule", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "PathBasedRouting", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener" + }, + "urlPathMap": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1" + } + } + } + ], + "rewriteRuleSets": [ + { + "name": "rewriteRuleSet1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1", + "properties": { + "provisioningState": "Succeeded", + "rewriteRules": [ + { + "name": "Set X-Forwarded-For", + "ruleSequence": 102, + "conditions": [ + { + "variable": "http_req_Authorization", + "pattern": "^Bearer", + "ignoreCase": true, + "negate": false + } + ], + "actionSet": { + "requestHeaderConfigurations": [ + { + "headerName": "X-Forwarded-For", + "headerValue": "{var_remote-addr}" + } + ], + "responseHeaderConfigurations": [ + { + "headerName": "Strict-Transport-Security", + "headerValue": "max-age=31536000" + } + ], + "urlConfiguration": { + "modifiedPath": "/abc", + "reroute": true + } + } + } + ] + } + } + ], + "probes": [] + } + } + }, + "200": { + "body": { + "name": "appgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw", + "type": "Microsoft.Network/applicationGateways", + "location": "southcentralus", + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "Standard_Medium", + "tier": "Standard", + "capacity": 3 + }, + "operationalState": "Running", + "gatewayIPConfigurations": [ + { + "name": "appgwipc", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/gatewayIPConfigurations/appgwipc", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/virtualNetwork1/subnets/appgwsubnet" + } + } + } + ], + "sslCertificates": [ + { + "name": "sslcert", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert", + "properties": { + "provisioningState": "Succeeded", + "publicCertData": "*****" + } + } + ], + "trustedClientCertificates": [ + { + "name": "clientcert", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/trustedClientCertificates/clientcert", + "properties": { + "provisioningState": "Succeeded", + "data": "****" + } + } + ], + "authenticationCertificates": [], + "frontendIPConfigurations": [ + { + "name": "appgwfip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/appgwpip" + }, + "privateLinkConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/privateLinkConfigurations/privateLinkConfig1" + } + } + } + ], + "frontendPorts": [ + { + "name": "appgwfp", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp", + "properties": { + "provisioningState": "Succeeded", + "port": 443 + } + }, + { + "name": "appgwfp80", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80", + "properties": { + "provisioningState": "Succeeded", + "port": 80 + } + } + ], + "backendAddressPools": [ + { + "name": "appgwpool", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool", + "properties": { + "provisioningState": "Succeeded", + "backendAddresses": [] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "appgwbhs", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs", + "properties": { + "provisioningState": "Succeeded", + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "requestTimeout": 30 + } + } + ], + "sslProfiles": [ + { + "name": "sslProfile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslProfiles/sslProfile1", + "properties": { + "provisioningState": "Succeeded", + "sslPolicy": { + "policyType": "Custom", + "minProtocolVersion": "TLSv1_1", + "cipherSuites": [ + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256" + ] + }, + "clientAuthConfiguration": { + "verifyClientCertIssuerDN": true + }, + "trustedClientCertificates": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/trustedClientCertificates/clientcert" + } + ] + } + } + ], + "httpListeners": [ + { + "name": "appgwhl", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp" + }, + "protocol": "Https", + "sslCertificate": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert" + }, + "sslProfile": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslProfiles/sslProfile1" + }, + "requireServerNameIndication": false + } + }, + { + "name": "appgwhttplistener", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80" + }, + "protocol": "Http" + } + } + ], + "urlPathMaps": [ + { + "name": "pathMap1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1", + "properties": { + "provisioningState": "Succeeded", + "defaultBackendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "defaultBackendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "defaultRewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + }, + "pathRules": [ + { + "name": "apiPaths", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1/pathRules/apiPaths", + "properties": { + "provisioningState": "Succeeded", + "paths": [ + "/api", + "/v1/api" + ], + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + } + ] + } + } + ], + "requestRoutingRules": [ + { + "name": "appgwrule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/requestRoutingRules/appgwrule", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "Basic", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + }, + { + "name": "appgwPathBasedRule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/requestRoutingRules/appgwPathBasedRule", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "PathBasedRouting", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener" + }, + "urlPathMap": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1" + } + } + } + ], + "rewriteRuleSets": [ + { + "name": "rewriteRuleSet1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1", + "properties": { + "provisioningState": "Succeeded", + "rewriteRules": [ + { + "name": "Set X-Forwarded-For", + "ruleSequence": 102, + "conditions": [ + { + "variable": "http_req_Authorization", + "pattern": "^Bearer", + "ignoreCase": true, + "negate": false + } + ], + "actionSet": { + "requestHeaderConfigurations": [ + { + "headerName": "X-Forwarded-For", + "headerValue": "{var_remote-addr}" + } + ], + "responseHeaderConfigurations": [ + { + "headerName": "Strict-Transport-Security", + "headerValue": "max-age=31536000" + } + ], + "urlConfiguration": { + "modifiedPath": "/abc", + "modifiedQueryString": "x=y&a=b" + } + } + } + ] + } + } + ], + "probes": [], + "privateLinkConfigurations": [ + { + "name": "privateLinkConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/privateLinkConfigurations/privateLinkConfig1", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "natNicIpconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/privateLinkConfigurations/privateLinkConfig1/ipConfigurations/natNicIpconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "primary": true, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet/subnets/appgwsubnet" + } + } + } + ] + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayDelete.json new file mode 100644 index 000000000000..af792941bcab --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw" + }, + "responses": { + "202": {}, + "204": {}, + "200": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayGet.json new file mode 100644 index 000000000000..e0187ad2703e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayGet.json @@ -0,0 +1,333 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw" + }, + "responses": { + "200": { + "body": { + "name": "appgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw", + "type": "Microsoft.Network/applicationGateways", + "location": "southcentralus", + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "Standard_Medium", + "tier": "Standard", + "capacity": 3 + }, + "operationalState": "Running", + "gatewayIPConfigurations": [ + { + "name": "appgwipc", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/gatewayIPConfigurations/appgwipc", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/virtualNetwork1/subnets/appgwsubnet" + } + } + } + ], + "sslCertificates": [ + { + "name": "sslcert", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert", + "properties": { + "provisioningState": "Succeeded", + "publicCertData": "*****" + } + } + ], + "trustedClientCertificates": [ + { + "name": "clientcert", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/trustedClientCertificates/clientcert", + "properties": { + "provisioningState": "Succeeded", + "data": "****", + "validatedCertData": "****", + "clientCertIssuerDN": "CN=User1, OU=Eng, O=Company Ltd, L=D4, S=Arizona, C=US" + } + } + ], + "authenticationCertificates": [], + "frontendIPConfigurations": [ + { + "name": "appgwfip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/appgwpip" + } + } + } + ], + "frontendPorts": [ + { + "name": "appgwfp", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp", + "properties": { + "provisioningState": "Succeeded", + "port": 443 + } + }, + { + "name": "appgwfp80", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80", + "properties": { + "provisioningState": "Succeeded", + "port": 80 + } + } + ], + "backendAddressPools": [ + { + "name": "appgwpool", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool", + "properties": { + "provisioningState": "Succeeded", + "backendAddresses": [] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "appgwbhs", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs", + "properties": { + "provisioningState": "Succeeded", + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "requestTimeout": 30 + } + } + ], + "sslProfiles": [ + { + "name": "sslProfile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslProfiles/sslProfile1", + "properties": { + "provisioningState": "Succeeded", + "sslPolicy": { + "policyType": "Custom", + "minProtocolVersion": "TLSv1_1", + "cipherSuites": [ + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256" + ] + }, + "clientAuthConfiguration": { + "verifyClientCertIssuerDN": true + }, + "trustedClientCertificates": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/trustedClientCertificates/clientcert" + } + ] + } + } + ], + "httpListeners": [ + { + "name": "appgwhl", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp" + }, + "protocol": "Https", + "sslCertificate": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert" + }, + "sslProfile": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslProfiles/sslProfile1" + }, + "requireServerNameIndication": false + } + }, + { + "name": "appgwhttplistener", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80" + }, + "protocol": "Http" + } + } + ], + "urlPathMaps": [ + { + "name": "pathMap1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1", + "properties": { + "provisioningState": "Succeeded", + "defaultBackendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "defaultBackendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "defaultRewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + }, + "pathRules": [ + { + "name": "apiPaths", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1/pathRules/apiPaths", + "properties": { + "provisioningState": "Succeeded", + "paths": [ + "/api", + "/v1/api" + ], + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + } + ] + } + } + ], + "requestRoutingRules": [ + { + "name": "appgwrule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/requestRoutingRules/appgwrule", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "Basic", + "priority": 10, + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + }, + { + "name": "appgwPathBasedRule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/requestRoutingRules/appgwPathBasedRule", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "PathBasedRouting", + "priority": 20, + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener" + }, + "urlPathMap": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1" + } + } + } + ], + "rewriteRuleSets": [ + { + "name": "rewriteRuleSet1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1", + "properties": { + "provisioningState": "Succeeded", + "rewriteRules": [ + { + "name": "Set X-Forwarded-For", + "ruleSequence": 102, + "conditions": [ + { + "variable": "http_req_Authorization", + "pattern": "^Bearer", + "ignoreCase": true, + "negate": false + } + ], + "actionSet": { + "requestHeaderConfigurations": [ + { + "headerName": "X-Forwarded-For", + "headerValue": "{var_remote-addr}" + } + ], + "responseHeaderConfigurations": [ + { + "headerName": "Strict-Transport-Security", + "headerValue": "max-age=31536000" + } + ], + "urlConfiguration": { + "modifiedPath": "/abc", + "modifiedQueryString": "x=y&a=b", + "reroute": false + } + } + } + ] + } + } + ], + "probes": [], + "privateLinkConfigurations": [ + { + "name": "privateLink1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/privateLinkConfigurations/privateLink1", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "natNicIpconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/privateLinkConfigurations/privateLink1/privateLinkConfigurations/privateLink1/ipConfigurations/natNicIpconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "primary": true, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/virtualNetwork1/subnets/appgwsubnet" + } + } + }, + { + "name": "natNicIpconfig2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/privateLinkConfigurations/privateLink1/privateLinkConfigurations/privateLink1/ipConfigurations/natNicIpconfig2", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/virtualNetwork1/subnets/appgwsubnet" + } + } + } + ] + } + } + ], + "privateEndpointConnections": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayList.json new file mode 100644 index 000000000000..f5dfc9c5859a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayList.json @@ -0,0 +1,125 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "appgw", + "type": "Microsoft.Network/applicationGateways", + "location": "southcentralus", + "properties": { + "sku": { + "name": "Standard_Medium", + "tier": "Standard", + "capacity": 3 + }, + "gatewayIPConfigurations": [ + { + "name": "appgwipc", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet/subnets/appgwsubnet" + } + } + } + ], + "sslCertificates": [ + { + "name": "sslcert", + "properties": { + "data": "base64-pfxData", + "password": "" + } + } + ], + "frontendIPConfigurations": [ + { + "name": "appgwfip", + "properties": { + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/appgwpip" + } + } + } + ], + "frontendPorts": [ + { + "name": "appgwfp", + "properties": { + "port": 443 + } + } + ], + "backendAddressPools": [ + { + "name": "appgwpool", + "properties": { + "backendAddresses": [ + { + "ipAddress": "10.0.1.1" + }, + { + "ipAddress": "10.0.1.2" + } + ] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "appgwbhs", + "properties": { + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "appgwhl", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp" + }, + "protocol": "Https", + "sslCertificate": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert" + }, + "requireServerNameIndication": false + } + } + ], + "requestRoutingRules": [ + { + "name": "appgwrule", + "properties": { + "ruleType": "Basic", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + } + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayListAll.json new file mode 100644 index 000000000000..75c3e504facf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayListAll.json @@ -0,0 +1,124 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "appgw", + "type": "Microsoft.Network/applicationGateways", + "location": "southcentralus", + "properties": { + "sku": { + "name": "Standard_Medium", + "tier": "Standard", + "capacity": 3 + }, + "gatewayIPConfigurations": [ + { + "name": "appgwipc", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet/subnets/appgwsubnet" + } + } + } + ], + "sslCertificates": [ + { + "name": "sslcert", + "properties": { + "data": "base64-pfxData", + "password": "" + } + } + ], + "frontendIPConfigurations": [ + { + "name": "appgwfip", + "properties": { + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/appgwpip" + } + } + } + ], + "frontendPorts": [ + { + "name": "appgwfp", + "properties": { + "port": 443 + } + } + ], + "backendAddressPools": [ + { + "name": "appgwpool", + "properties": { + "backendAddresses": [ + { + "ipAddress": "10.0.1.1" + }, + { + "ipAddress": "10.0.1.2" + } + ] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "appgwbhs", + "properties": { + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "appgwhl", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp" + }, + "protocol": "Https", + "sslCertificate": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert" + }, + "requireServerNameIndication": false + } + } + ], + "requestRoutingRules": [ + { + "name": "appgwrule", + "properties": { + "ruleType": "Basic", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + } + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayPrivateEndpointConnectionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayPrivateEndpointConnectionDelete.json new file mode 100644 index 000000000000..dbfef634d957 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayPrivateEndpointConnectionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw", + "connectionName": "connection1" + }, + "responses": { + "202": {}, + "204": {}, + "200": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayPrivateEndpointConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayPrivateEndpointConnectionGet.json new file mode 100644 index 000000000000..3238d3984823 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayPrivateEndpointConnectionGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw", + "connectionName": "connection1" + }, + "responses": { + "200": { + "body": { + "name": "coonection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/privateLinkResources/connection1", + "type": "Microsoft.Network/applicationGateways/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/subid2/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/pe1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approval Done" + }, + "linkIdentifier": "805319460" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayPrivateEndpointConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayPrivateEndpointConnectionList.json new file mode 100644 index 000000000000..0de0c281c57b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayPrivateEndpointConnectionList.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "coonection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/privateLinkResources/connection1", + "type": "Microsoft.Network/applicationGateways/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/subid2/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/pe1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approval Done" + }, + "linkIdentifier": "805319460" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayPrivateEndpointConnectionUpdate.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayPrivateEndpointConnectionUpdate.json new file mode 100644 index 000000000000..d80cca58f300 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayPrivateEndpointConnectionUpdate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw", + "connectionName": "connection1", + "parameters": { + "name": "connection1", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId2/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "testPlePeConnection", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + }, + "linkIdentifier": "linkId" + } + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayPrivateLinkResourceList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayPrivateLinkResourceList.json new file mode 100644 index 000000000000..6d97ca9a9346 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayPrivateLinkResourceList.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "privateLink1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/privateLinkResources/privateLink1", + "type": "Microsoft.Network/applicationGateways/privateLinkResources", + "properties": { + "groupId": "privateLink1", + "requiredMembers": [ + "privateLink1" + ], + "requiredZoneNames": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayStart.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayStart.json new file mode 100644 index 000000000000..96b5e70b01c7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayStart.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayStop.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayStop.json new file mode 100644 index 000000000000..96b5e70b01c7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayStop.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayUpdateTags.json new file mode 100644 index 000000000000..1c4f6de798fb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationGatewayUpdateTags.json @@ -0,0 +1,148 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "AppGw", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "AppGw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw", + "type": "Microsoft.Network/applicationGateways", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "sku": { + "name": "Standard_Small", + "tier": "Standard", + "capacity": 2 + }, + "operationalState": "Running", + "gatewayIPConfigurations": [ + { + "name": "GatewayIp01", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/gatewayIPConfigurations/GatewayIp01", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet/subnets/subnet1" + } + } + } + ], + "sslCertificates": [], + "authenticationCertificates": [], + "frontendIPConfigurations": [ + { + "name": "FrontEndConfig01", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/frontendIPConfigurations/FrontEndConfig01", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/publicIp1" + } + } + } + ], + "frontendPorts": [ + { + "name": "FrontEndPort01", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/frontendPorts/FrontEndPort01", + "properties": { + "provisioningState": "Succeeded", + "port": 80 + } + } + ], + "backendAddressPools": [ + { + "name": "Pool01", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/backendAddressPools/Pool01", + "properties": { + "provisioningState": "Succeeded", + "backendAddresses": [ + { + "ipAddress": "10.10.10.1" + }, + { + "ipAddress": "10.10.10.2" + }, + { + "ipAddress": "10.10.10.3" + } + ] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "PoolSetting01", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/backendHttpSettingsCollection/PoolSetting01", + "properties": { + "provisioningState": "Succeeded", + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "pickHostNameFromBackendAddress": false, + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "listener1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/httpListeners/listener1", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/frontendIPConfigurations/FrontEndConfig01" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/frontendPorts/FrontEndPort01" + }, + "protocol": "Http", + "requireServerNameIndication": false + } + } + ], + "urlPathMaps": [], + "requestRoutingRules": [ + { + "name": "Rule01", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/requestRoutingRules/Rule01", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "Basic", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/httpListeners/listener1" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/backendAddressPools/Pool01" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/backendHttpSettingsCollection/PoolSetting01" + } + } + } + ], + "probes": [], + "redirectConfigurations": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationSecurityGroupCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationSecurityGroupCreate.json new file mode 100644 index 000000000000..907f9390d58c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationSecurityGroupCreate.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationSecurityGroupName": "test-asg", + "parameters": { + "location": "westus", + "properties": {} + } + }, + "responses": { + "200": { + "body": { + "name": "test-asg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/test-asg", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + } + }, + "201": { + "body": { + "name": "test-asg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/test-asg", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationSecurityGroupDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationSecurityGroupDelete.json new file mode 100644 index 000000000000..fa3f50e92849 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationSecurityGroupDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationSecurityGroupName": "test-asg" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationSecurityGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationSecurityGroupGet.json new file mode 100644 index 000000000000..d41137f436a7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationSecurityGroupGet.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationSecurityGroupName": "test-asg" + }, + "responses": { + "200": { + "body": { + "name": "test-asg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/test-asg", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationSecurityGroupList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationSecurityGroupList.json new file mode 100644 index 000000000000..cde01d8ba2e3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationSecurityGroupList.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/asg1", + "name": "asg1", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/asg2", + "name": "asg2", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationSecurityGroupListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationSecurityGroupListAll.json new file mode 100644 index 000000000000..c45ce3661fda --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationSecurityGroupListAll.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/asg1", + "name": "asg1", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/asg2", + "name": "asg2", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationSecurityGroupUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationSecurityGroupUpdateTags.json new file mode 100644 index 000000000000..2efa0cef3c59 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ApplicationSecurityGroupUpdateTags.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationSecurityGroupName": "test-asg", + "location": "westus", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-asg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/test-asg", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AutoApprovedPrivateLinkServicesGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AutoApprovedPrivateLinkServicesGet.json new file mode 100644 index 000000000000..38a0d8b18998 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AutoApprovedPrivateLinkServicesGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "location": "regionName", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "privateLinkService": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls1" + }, + { + "privateLinkService": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls2" + }, + { + "privateLinkService": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls3" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AutoApprovedPrivateLinkServicesResourceGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AutoApprovedPrivateLinkServicesResourceGroupGet.json new file mode 100644 index 000000000000..6bd74551da1a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AutoApprovedPrivateLinkServicesResourceGroupGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "location": "regionName", + "subscriptionId": "subId", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "privateLinkService": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls1" + }, + { + "privateLinkService": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls2" + }, + { + "privateLinkService": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls3" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AvailableDelegationsResourceGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AvailableDelegationsResourceGroupGet.json new file mode 100644 index 000000000000..3c6ec90c9e86 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AvailableDelegationsResourceGroupGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "location": "westcentralus", + "subscriptionId": "subId", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Provider.resourceType", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/availableDelegations/Microsoft.Provider.resourceType", + "type": "Microsoft.Network/availableDelegations", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [ + "Microsoft.Network/resource/action" + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AvailableDelegationsSubscriptionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AvailableDelegationsSubscriptionGet.json new file mode 100644 index 000000000000..d5f157e056b1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AvailableDelegationsSubscriptionGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "location": "westcentralus", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Provider.resourceType", + "id": "/subscriptions/subId/providers/Microsoft.Network/availableDelegations/Microsoft.Provider.resourceType", + "type": "Microsoft.Network/availableDelegations", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [ + "Microsoft.Network/resource/action" + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AvailablePrivateEndpointTypesGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AvailablePrivateEndpointTypesGet.json new file mode 100644 index 000000000000..7bd7ca800c64 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AvailablePrivateEndpointTypesGet.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "location": "regionName", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subId/providers/Microsoft.Network/availablePrivateEndpointTypes/Microsoft.Provider.resourceType", + "type": "Microsoft.Network/availablePrivateEndpointTypes", + "resourceName": "Microsoft.Provider/resourceType" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AvailablePrivateEndpointTypesResourceGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AvailablePrivateEndpointTypesResourceGroupGet.json new file mode 100644 index 000000000000..3ca75af70df8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AvailablePrivateEndpointTypesResourceGroupGet.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "location": "regionName", + "subscriptionId": "subId", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/availablePrivateEndpointTypes/Microsoft.Provider.resourceType", + "type": "Microsoft.Network/availablePrivateEndpointTypes", + "resourceName": "Microsoft.Provider/resourceType" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AvailableServiceAliasesList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AvailableServiceAliasesList.json new file mode 100644 index 000000000000..46fdd0bcd00d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AvailableServiceAliasesList.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "location": "westcentralus", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "servicesAzure", + "id": "/subscriptions/subId/providers/Microsoft.Network/AvailableServiceAliases/servicesAzure", + "type": "Microsoft.Network/AvailableServiceAliases", + "resourceName": "/services/Azure" + }, + { + "name": "servicesAzureManagedInstance", + "id": "/subscriptions/subId/providers/Microsoft.Network/AvailableServiceAliases/servicesAzureManagedInstance", + "type": "Microsoft.Network/AvailableServiceAliases", + "resourceName": "/services/Azure/ManagedInstance" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AvailableServiceAliasesListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AvailableServiceAliasesListByResourceGroup.json new file mode 100644 index 000000000000..7d2cdc52e6ef --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AvailableServiceAliasesListByResourceGroup.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "location": "westcentralus", + "subscriptionId": "subId", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "servicesAzure", + "id": "/subscriptions/subId/providers/Microsoft.Network/AvailableServiceAliases/servicesAzure", + "type": "Microsoft.Network/AvailableServiceAliases", + "resourceName": "/services/Azure" + }, + { + "name": "servicesAzureManagedInstance", + "id": "/subscriptions/subId/providers/Microsoft.Network/AvailableServiceAliases/servicesAzureManagedInstance", + "type": "Microsoft.Network/AvailableServiceAliases", + "resourceName": "/services/Azure/ManagedInstance" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AzureFirewallDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AzureFirewallDelete.json new file mode 100644 index 000000000000..2f5e1e9183e4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AzureFirewallDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AzureFirewallFqdnTagsListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AzureFirewallFqdnTagsListBySubscription.json new file mode 100644 index 000000000000..2bcf752d8925 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AzureFirewallFqdnTagsListBySubscription.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "azfwfqdntag", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewallFqdnTags/azfwfqdntag", + "type": "Microsoft.Network/azureFirewallFqdnTags", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "fqdnTagName": "azfwfqdntag" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AzureFirewallGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AzureFirewallGet.json new file mode 100644 index 000000000000..616031e72e25 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AzureFirewallGet.json @@ -0,0 +1,177 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall" + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AzureFirewallGetWithAdditionalProperties.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AzureFirewallGetWithAdditionalProperties.json new file mode 100644 index 000000000000..28b0462d97de --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AzureFirewallGetWithAdditionalProperties.json @@ -0,0 +1,179 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall" + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "additionalProperties": { + "key1": "value1", + "key2": "value2" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AzureFirewallGetWithIpGroups.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AzureFirewallGetWithIpGroups.json new file mode 100644 index 000000000000..c64a4278d57f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AzureFirewallGetWithIpGroups.json @@ -0,0 +1,189 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall" + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceIpGroups": [ + "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceIpGroups": [ + "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationIpGroups": [ + "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups2" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceIpGroups": [ + "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups3" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [ + { + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1", + "changeNumber": "5" + }, + { + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups2", + "changeNumber": "4" + }, + { + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups3", + "changeNumber": "1" + } + ], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AzureFirewallGetWithMgmtSubnet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AzureFirewallGetWithMgmtSubnet.json new file mode 100644 index 000000000000..1ccdbfded9b5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AzureFirewallGetWithMgmtSubnet.json @@ -0,0 +1,190 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall" + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "managementIpConfiguration": { + "name": "azureFirewallMgmtIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallMgmtIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallManagementSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/managementPipName" + } + } + }, + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AzureFirewallGetWithZones.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AzureFirewallGetWithZones.json new file mode 100644 index 000000000000..87df3933d47d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AzureFirewallGetWithZones.json @@ -0,0 +1,181 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall" + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US 2", + "zones": [ + "1", + "2", + "3" + ], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AzureFirewallListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AzureFirewallListByResourceGroup.json new file mode 100644 index 000000000000..880284647c23 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AzureFirewallListByResourceGroup.json @@ -0,0 +1,193 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "managementIpConfiguration": { + "name": "azureFirewallMgmtIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallMgmtIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallManagementSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/managementPipName" + } + } + }, + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [], + "additionalProperties": { + "key1": "value1", + "key2": "value2" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AzureFirewallListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AzureFirewallListBySubscription.json new file mode 100644 index 000000000000..6422b6d8b1f5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AzureFirewallListBySubscription.json @@ -0,0 +1,192 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "managementIpConfiguration": { + "name": "azureFirewallMgmtIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallMgmtIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallManagementSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/managementPipName" + } + } + }, + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [], + "additionalProperties": { + "key1": "value1", + "key2": "value2" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AzureFirewallPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AzureFirewallPut.json new file mode 100644 index 000000000000..d77e9c2cb3d4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AzureFirewallPut.json @@ -0,0 +1,497 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "zones": [], + "properties": { + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedPort": "880", + "translatedFqdn": "internalhttpserver" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "protocols": [ + "TCP" + ], + "destinationFqdns": [ + "www.amazon.com" + ] + } + ] + } + } + ], + "ipGroups": [], + "additionalProperties": {} + } + } + }, + "201": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AzureFirewallPutInHub.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AzureFirewallPutInHub.json new file mode 100644 index 000000000000..281432c9c078 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AzureFirewallPutInHub.json @@ -0,0 +1,115 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "zones": [], + "properties": { + "sku": { + "name": "AZFW_Hub", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "firewallPolicy": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/policy1" + }, + "hubIPAddresses": { + "publicIPs": { + "addresses": [], + "count": 1 + } + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_Hub", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "firewallPolicy": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/policy1" + }, + "hubIPAddresses": { + "publicIPs": { + "addresses": [ + { + "address": "13.73.240.12" + } + ], + "count": 1 + }, + "privateIPAddress": "10.0.0.0" + }, + "additionalProperties": {} + } + } + }, + "201": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_Hub", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "firewallPolicy": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/policy1" + }, + "hubIPAddresses": { + "publicIPs": { + "addresses": [ + { + "address": "13.73.240.12" + } + ], + "count": 1 + }, + "privateIPAddress": "10.0.0.0" + }, + "ipGroups": [], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AzureFirewallPutWithAdditionalProperties.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AzureFirewallPutWithAdditionalProperties.json new file mode 100644 index 000000000000..d7c7fc11dcd9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AzureFirewallPutWithAdditionalProperties.json @@ -0,0 +1,507 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "zones": [], + "properties": { + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [], + "additionalProperties": { + "key1": "value1", + "key2": "value2" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedPort": "880", + "translatedFqdn": "internalhttpserver" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "protocols": [ + "TCP" + ], + "destinationFqdns": [ + "www.amazon.com" + ] + } + ] + } + } + ], + "additionalProperties": { + "key1": "value1", + "key2": "value2" + } + } + } + }, + "201": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "additionalProperties": { + "key1": "value1", + "key2": "value2" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AzureFirewallPutWithIpGroups.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AzureFirewallPutWithIpGroups.json new file mode 100644 index 000000000000..2e6e9a3a0133 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AzureFirewallPutWithIpGroups.json @@ -0,0 +1,505 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "zones": [], + "properties": { + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedPort": "880", + "translatedFqdn": "internalhttpserver" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "protocols": [ + "TCP" + ], + "destinationFqdns": [ + "www.amazon.com" + ] + } + ] + } + } + ], + "additionalProperties": {} + } + } + }, + "201": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceIpGroups": [ + "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceIpGroups": [ + "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationIpGroups": [ + "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups2" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [ + { + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1", + "changeNumber": "5" + }, + { + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups2", + "changeNumber": "4" + } + ], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AzureFirewallPutWithMgmtSubnet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AzureFirewallPutWithMgmtSubnet.json new file mode 100644 index 000000000000..f35cfb6adb7f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AzureFirewallPutWithMgmtSubnet.json @@ -0,0 +1,507 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "zones": [], + "properties": { + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "managementIpConfiguration": { + "name": "azureFirewallMgmtIpConfiguration", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallManagementSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/managementPipName" + } + } + }, + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedPort": "880", + "translatedFqdn": "internalhttpserver" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "protocols": [ + "TCP" + ], + "destinationFqdns": [ + "www.amazon.com" + ] + } + ] + } + } + ], + "additionalProperties": {} + } + } + }, + "201": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AzureFirewallPutWithZones.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AzureFirewallPutWithZones.json new file mode 100644 index 000000000000..72afcce96fc2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AzureFirewallPutWithZones.json @@ -0,0 +1,509 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall", + "parameters": { + "location": "West US 2", + "tags": { + "key1": "value1" + }, + "zones": [ + "1", + "2", + "3" + ], + "properties": { + "threatIntelMode": "Alert", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US 2", + "zones": [ + "1", + "2", + "3" + ], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [], + "additionalProperties": {} + } + } + }, + "201": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US 2", + "zones": [ + "1", + "2", + "3" + ], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AzureFirewallUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AzureFirewallUpdateTags.json new file mode 100644 index 000000000000..8a8f3b3badfc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AzureFirewallUpdateTags.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "azfwtest", + "azureFirewallName": "fw1", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "202": {}, + "200": { + "body": { + "name": "fw1", + "id": "/subscriptions/subid/resourceGroups/azfwtest/providers/Microsoft.Network/azureFirewalls/fw1", + "type": "Microsoft.Network/azureFirewalls", + "location": "brazilsouth", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AzureWebCategoriesListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AzureWebCategoriesListBySubscription.json new file mode 100644 index 000000000000..75408e0c76f0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AzureWebCategoriesListBySubscription.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "4de8428a-4a92-4cea-90ff-b47128b8cab8" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Arts", + "id": "/subscriptions/4de8428a-4a92-4cea-90ff-b47128b8cab8/providers/Microsoft.Network/azureWebCategories/Arts", + "type": "Microsoft.Network/azureWebCategories", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "group": "General" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AzureWebCategoryGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AzureWebCategoryGet.json new file mode 100644 index 000000000000..fd891f8c4c45 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/AzureWebCategoryGet.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "4de8428a-4a92-4cea-90ff-b47128b8cab8", + "name": "Arts" + }, + "responses": { + "200": { + "body": { + "name": "Arts", + "id": "/subscriptions/4de8428a-4a92-4cea-90ff-b47128b8cab8/providers/Microsoft.Network/azureWebCategories/Arts", + "type": "Microsoft.Network/azureWebCategories", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "group": "General" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/BastionHostDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/BastionHostDelete.json new file mode 100644 index 000000000000..3580316c43dc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/BastionHostDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/BastionHostGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/BastionHostGet.json new file mode 100644 index 000000000000..c8ea9389fa9b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/BastionHostGet.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant'" + }, + "responses": { + "200": { + "body": { + "name": "bastionhost'", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant'", + "type": "Microsoft.Network/bastionHosts", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "dnsName": "bst-9d89d361-100e-4c01-b92d-466548c476dc.bastion.azure.com", + "ipConfigurations": [ + { + "name": "bastionHostIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant/bastionHostIpConfigurations/bastionHostIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/bastionHosts/bastionHostIpConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/BastionHostListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/BastionHostListByResourceGroup.json new file mode 100644 index 000000000000..eaf3f08d5005 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/BastionHostListByResourceGroup.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "bastionhost'", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant'", + "type": "Microsoft.Network/bastionHosts", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "dnsName": "bst-9d89d361-100e-4c01-b92d-466548c476dc.bastion.azure.com", + "ipConfigurations": [ + { + "name": "bastionHostIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant/bastionHostIpConfigurations/bastionHostIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/bastionHosts/bastionHostIpConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/BastionHostListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/BastionHostListBySubscription.json new file mode 100644 index 000000000000..14dd7badbb29 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/BastionHostListBySubscription.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "bastionhost'", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant'", + "type": "Microsoft.Network/bastionHosts", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "dnsName": "bst-9d89d361-100e-4c01-b92d-466548c476dc.bastion.azure.com", + "ipConfigurations": [ + { + "name": "bastionHostIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant/bastionHostIpConfigurations/bastionHostIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/bastionHosts/bastionHostIpConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/BastionHostPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/BastionHostPut.json new file mode 100644 index 000000000000..b50c33463626 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/BastionHostPut.json @@ -0,0 +1,98 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant", + "sku": { + "name": "Standard" + }, + "parameters": { + "properties": { + "ipConfigurations": [ + { + "name": "bastionHostIpConfiguration", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "bastionhost", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant'", + "type": "Microsoft.Network/bastionHosts", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "dnsName": "bst-9d89d361-100e-4c01-b92d-466548c476dc.bastion.azure.com", + "ipConfigurations": [ + { + "name": "bastionHostIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant/bastionHostIpConfigurations/bastionHostIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/bastionHosts/bastionHostIpConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ] + } + } + }, + "201": { + "body": { + "name": "bastionhost'", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant'", + "type": "Microsoft.Network/bastionHosts", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "dnsName": "bst-9d89d361-100e-4c01-b92d-466548c476dc.bastion.azure.com", + "ipConfigurations": [ + { + "name": "bastionHostIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant/bastionHostIpConfigurations/bastionHostIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/bastionHosts/bastionHostIpConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/BastionSessionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/BastionSessionDelete.json new file mode 100644 index 000000000000..82e729209c80 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/BastionSessionDelete.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant", + "sessionIds": [ + "session1", + "session2", + "session3" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "sessionId": "session1", + "message": "session session1 invalidated!", + "state": "Disconnected" + }, + { + "sessionId": "session2", + "message": "session session2 could not be disconnected!", + "state": "Failed" + }, + { + "sessionId": "session3", + "message": "session session3 not found!", + "state": "NotFound" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/BastionSessionsList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/BastionSessionsList.json new file mode 100644 index 000000000000..b8dc1447c3e3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/BastionSessionsList.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "sessionId": "sessionId", + "startTime": "2019-1-1T12:00:00.0000Z", + "targetSubscriptionId": "subid", + "resourceType": "VM", + "targetHostName": "vm01", + "targetResourceGroup": "rg1", + "userName": "user", + "targetIpAddress": "1.1.1.1", + "protocol": "SSH", + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm01", + "sessionDurationInMins": 0.0 + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/BastionShareableLinkCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/BastionShareableLinkCreate.json new file mode 100644 index 000000000000..6e4845fd5489 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/BastionShareableLinkCreate.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant", + "bslRequest": { + "vms": [ + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm2" + } + } + ] + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm1" + }, + "bsl": "http://bst-bastionhostid.bastion.com/api/shareable-url/tokenvm1", + "createdAt": "2019-10-18T12:00:00.0000Z" + }, + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm2" + }, + "bsl": "http://bst-bastionhostid.bastion.com/api/shareable-url/tokenvm2", + "createdAt": "2019-10-17T12:00:00.0000Z" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/BastionShareableLinkDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/BastionShareableLinkDelete.json new file mode 100644 index 000000000000..6884ba5c50d2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/BastionShareableLinkDelete.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant", + "bslRequest": { + "vms": [ + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm2" + } + } + ] + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/BastionShareableLinkGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/BastionShareableLinkGet.json new file mode 100644 index 000000000000..557258b552d1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/BastionShareableLinkGet.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant", + "bslRequest": { + "vms": [ + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm2" + } + } + ] + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm1" + }, + "bsl": "http://bst-bastionhostid.bastion.com/api/shareable-url/tokenvm1", + "createdAt": "2019-10-18T12:00:00.0000Z" + }, + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm2" + }, + "bsl": "http://bst-bastionhostid.bastion.com/api/shareable-url/tokenvm2", + "createdAt": "2019-10-17T12:00:00.0000Z" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/CheckDnsNameAvailability.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/CheckDnsNameAvailability.json new file mode 100644 index 000000000000..c07c824042b6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/CheckDnsNameAvailability.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "location": "westus", + "domainNameLabel": "testdns" + }, + "responses": { + "200": { + "body": { + "available": false + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/CheckPrivateLinkServiceVisibility.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/CheckPrivateLinkServiceVisibility.json new file mode 100644 index 000000000000..0ff22aef5bfd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/CheckPrivateLinkServiceVisibility.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "location": "westus", + "parameters": { + "privateLinkServiceAlias": "mypls.00000000-0000-0000-0000-000000000000.azure.privatelinkservice" + } + }, + "responses": { + "200": { + "body": { + "visible": true + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/CheckPrivateLinkServiceVisibilityByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/CheckPrivateLinkServiceVisibilityByResourceGroup.json new file mode 100644 index 000000000000..8850468e549c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/CheckPrivateLinkServiceVisibilityByResourceGroup.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "location": "westus", + "resourceGroupName": "rg1", + "parameters": { + "privateLinkServiceAlias": "mypls.00000000-0000-0000-0000-000000000000.azure.privatelinkservice" + } + }, + "responses": { + "200": { + "body": { + "visible": true + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/CloudServiceNetworkInterfaceGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/CloudServiceNetworkInterfaceGet.json new file mode 100644 index 000000000000..658cbbfdfd10 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/CloudServiceNetworkInterfaceGet.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "nic1", + "cloudServiceName": "cs1", + "roleInstanceName": "TestVMRole_IN_0" + }, + "responses": { + "200": { + "body": { + "name": "nic1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/cloudServices/cs1/roleInstances/TestVMRole_IN_0/networkInterfaces/nic1", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/cloudServices/cs1/roleInstances/TestVMRole_IN_0/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.5", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/cloudServices/cs1/roleInstances/TestVMRole_IN_0/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.1" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "dns.cdmx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1" + }, + "primary": true, + "roleInstance": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/cloudServices/cs1/roleInstances/TestVMRole_IN_0" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/CloudServiceNetworkInterfaceList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/CloudServiceNetworkInterfaceList.json new file mode 100644 index 000000000000..97189ae3a4ce --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/CloudServiceNetworkInterfaceList.json @@ -0,0 +1,118 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "cloudServiceName": "cs1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nic1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/cloudServices/cs1/roleInstances/TestVMRole_IN_0/networkInterfaces/nic1", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/cloudServices/cs1/roleInstances/TestVMRole_IN_0/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/cloudServices/cs1/roleInstances/TestVMRole_IN_0/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.0" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "ruw4wz3grewudjsyzrxj44pxod.cdmx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1" + }, + "primary": true, + "roleInstance": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/cloudServices/cs1/roleInstances/TestVMRole_IN_0" + } + } + }, + { + "name": "nic1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/cloudServices/cs1/roleInstances/TestVMRole_IN_1/networkInterfaces/nic1", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/cloudServices/cs1/roleInstances/TestVMRole_IN_1/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.5", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/cloudServices/cs1/roleInstances/TestVMRole_IN_1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.1" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "ruw4wz3grewudjsyzrxj44pxod.cdmx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1" + }, + "primary": true, + "roleInstance": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/cloudServices/cs1/roleInstances/TestVMRole_IN_1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/CloudServicePublicIpGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/CloudServicePublicIpGet.json new file mode 100644 index 000000000000..e4ca8fe621c6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/CloudServicePublicIpGet.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "cloudServiceName": "cs1", + "resourceGroupName": "cs-tester", + "api-version": "2021-02-01", + "subscriptionId": "subid", + "roleInstanceName": "Test_VM_0", + "networkInterfaceName": "nic1", + "ipConfigurationName": "ip1", + "publicIpAddressName": "pub1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/cs-tester/providers/Microsoft.Compute/cloudServices/cs1/roleInstances/Test_VM_0/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1", + "name": "pub1", + "properties": { + "publicIPAllocationMethod": "Dynamic", + "publicIPAddressVersion": "IPv4", + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/cs-tester/providers/Microsoft.Compute/cloudServices/cs1/roleInstances/Test_VM_0/networkInterfaces/nic1/ipConfigurations/ip1" + }, + "dnsSettings": { + "domainNameLabel": "vm1.testvmssacc", + "fqdn": "vm1.testvmssacc.southeastasia.cloudapp.azure.com" + }, + "ipAddress": "13.67.119.72", + "idleTimeoutInMinutes": 10, + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/CloudServicePublicIpListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/CloudServicePublicIpListAll.json new file mode 100644 index 000000000000..434448d91b96 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/CloudServicePublicIpListAll.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "cloudServiceName": "cs1", + "resourceGroupName": "cs-tester", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/cs-tester/providers/Microsoft.Compute/cloudServices/cs1/roleInstances/Test_VM_0/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1", + "name": "pub1", + "properties": { + "publicIPAllocationMethod": "Dynamic", + "publicIPAddressVersion": "IPv4", + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/cs-tester/providers/Microsoft.Compute/cloudServices/cs1/roleInstances/Test_VM_0/networkInterfaces/nic1/ipConfigurations/ip1" + }, + "dnsSettings": { + "domainNameLabel": "vm1.testvmssacc", + "fqdn": "vm1.testvmssacc.southeastasia.cloudapp.azure.com" + }, + "ipAddress": "13.67.119.72", + "idleTimeoutInMinutes": 10, + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/cs-tester/providers/Microsoft.Compute/cloudServices/cs1/roleInstances/Test_VM_3/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1", + "name": "pub1", + "properties": { + "publicIPAllocationMethod": "Dynamic", + "publicIPAddressVersion": "IPv4", + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/cs-tester/providers/Microsoft.Compute/cloudServices/cs1/roleInstances/Test_VM_3/networkInterfaces/nic1/ipConfigurations/ip1" + }, + "dnsSettings": { + "domainNameLabel": "vm3.testvmssacc", + "fqdn": "vm3.testvmssacc.southeastasia.cloudapp.azure.com" + }, + "ipAddress": "13.67.118.216", + "idleTimeoutInMinutes": 10, + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/CloudServiceRoleInstanceNetworkInterfaceList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/CloudServiceRoleInstanceNetworkInterfaceList.json new file mode 100644 index 000000000000..4df5f212c51b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/CloudServiceRoleInstanceNetworkInterfaceList.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "cloudServiceName": "cs1", + "roleInstanceName": "TestVMRole_IN_0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nic1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/cloudServices/cs1/roleInstances/TestVMRole_IN_0/networkInterfaces/nic1", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/cloudServices/cs1/roleInstances/TestVMRole_IN_0/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.5", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/cloudServices/cs1/roleInstances/TestVMRole_IN_0/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.1" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "ruw4wz3grewudjsyzrxj44pxod.cdmx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1" + }, + "primary": true, + "roleInstance": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/cloudServices/cs1/roleInstances/TestVMRole_IN_0" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/CloudServiceRoleInstancePublicIpList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/CloudServiceRoleInstancePublicIpList.json new file mode 100644 index 000000000000..6da489227cf3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/CloudServiceRoleInstancePublicIpList.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "cloudServiceName": "cs1", + "resourceGroupName": "cs-tester", + "api-version": "2021-02-01", + "subscriptionId": "subid", + "roleInstanceName": "Test_VM_0", + "networkInterfaceName": "nic1", + "ipConfigurationName": "ip1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/cs-tester/providers/Microsoft.Compute/cloudServices/cs1/roleInstances/Test_VM_0/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1", + "name": "pub1", + "properties": { + "publicIPAllocationMethod": "Dynamic", + "publicIPAddressVersion": "IPv4", + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/cs-tester/providers/Microsoft.Compute/cloudServices/cs1/roleInstances/Test_VM_0/networkInterfaces/nic1/ipConfigurations/ip1" + }, + "dnsSettings": { + "domainNameLabel": "vm1.testvmssacc", + "fqdn": "vm1.testvmssacc.southeastasia.cloudapp.azure.com" + }, + "ipAddress": "13.67.119.72", + "idleTimeoutInMinutes": 10, + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/CustomIpPrefixCreateCustomizedValues.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/CustomIpPrefixCreateCustomizedValues.json new file mode 100644 index 000000000000..994a1a34a2da --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/CustomIpPrefixCreateCustomizedValues.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "customIpPrefixName": "test-customipprefix", + "zones": [ + "1" + ], + "parameters": { + "location": "westus", + "properties": { + "cidr": "0.0.0.0/24" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-customipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/customIpPrefixes/test-customipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "zones": [ + "1" + ], + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "cidr": "192.168.254.2/24", + "commissionedState": "Provisioning", + "signedMessage": "signedMessage", + "authorizationMessage": "authorizationMessage", + "failedReason": "", + "publicIpPrefixes": [], + "childCustomIpPrefixes": [] + }, + "type": "Microsoft.Network/customIpPrefixes" + } + }, + "201": { + "body": { + "name": "test-customipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/customIpPrefixes/test-customipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "zones": [ + "1" + ], + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "cidr": "192.168.254.2/24", + "commissionedState": "Provisioning", + "signedMessage": "signedMessage", + "authorizationMessage": "authorizationMessage", + "failedReason": "", + "publicIpPrefixes": [], + "childCustomIpPrefixes": [] + }, + "type": "Microsoft.Network/customIpPrefixes" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/CustomIpPrefixDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/CustomIpPrefixDelete.json new file mode 100644 index 000000000000..e5a3475ef4b1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/CustomIpPrefixDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "customIpPrefixName": "test-customipprefix" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/CustomIpPrefixGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/CustomIpPrefixGet.json new file mode 100644 index 000000000000..16ec86b9d9ae --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/CustomIpPrefixGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "customIpPrefixName": "test-customipprefix" + }, + "responses": { + "200": { + "body": { + "name": "test-customipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/customIpPrefixes/test-customipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "cidr": "0.0.0.0/24", + "commissionedState": "Commissioned", + "signedMessage": "signedMessage", + "authorizationMessage": "authorizationMessage", + "failedReason": "", + "publicIpPrefixes": [], + "childCustomIpPrefixes": [] + }, + "type": "Microsoft.Network/customIpPrefixes" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/CustomIpPrefixList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/CustomIpPrefixList.json new file mode 100644 index 000000000000..cd3a6a799375 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/CustomIpPrefixList.json @@ -0,0 +1,94 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-customipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/customIpPrefixes/test-customipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "cidr": "0.0.0.0/24", + "commissionedState": "Commissioned", + "signedMessage": "signedMessage", + "authorizationMessage": "authorizationMessage", + "failedReason": "", + "publicIpPrefixes": [], + "childCustomIpPrefixes": [] + }, + "type": "Microsoft.Network/customIpPrefixes" + }, + { + "name": "test-customipprefix2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/customIpPrefixes/test-customipprefix2", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "cidr": "0.0.1.0/30", + "commissionedState": "Commissioned", + "signedMessage": "signedMessage", + "authorizationMessage": "authorizationMessage", + "failedReason": "", + "publicIpPrefixes": [], + "childCustomIpPrefixes": [] + }, + "type": "Microsoft.Network/customIpPrefixes" + }, + { + "name": "test-customipprefix4", + "id": "/subscriptions/subid/resourceGroups/rg3/providers/Microsoft.Network/customIpPrefixes/test-customipprefix4", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "cidr": "2607:f0d1:1002:0001::/64", + "commissionedState": "Commissioned", + "signedMessage": "signedMessage", + "authorizationMessage": "authorizationMessage", + "failedReason": "", + "publicIpPrefixes": [], + "childCustomIpPrefixes": [], + "customIpPrefixParent": { + "id": "/subscriptions/subid/resourceGroups/rg3/providers/Microsoft.Network/customIpPrefixes/test-customipprefix5" + } + }, + "type": "Microsoft.Network/customIpPrefixes" + }, + { + "name": "test-customipprefix5", + "id": "/subscriptions/subid/resourceGroups/rg3/providers/Microsoft.Network/customIpPrefixes/test-customipprefix5", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "cidr": "2607:f0d1:1002::/48", + "commissionedState": "Provisioned", + "signedMessage": "signedMessage", + "authorizationMessage": "authorizationMessage", + "failedReason": "", + "publicIpPrefixes": [], + "childCustomIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg3/providers/Microsoft.Network/customIpPrefixes/test-customipprefix4" + } + ] + }, + "type": "Microsoft.Network/customIpPrefixes" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/CustomIpPrefixListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/CustomIpPrefixListAll.json new file mode 100644 index 000000000000..63e08baa4b54 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/CustomIpPrefixListAll.json @@ -0,0 +1,129 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-customipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/customIpPrefixes/test-customipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "cidr": "0.0.0.0/24", + "commissionedState": "Commissioned", + "signedMessage": "signedMessage", + "authorizationMessage": "authorizationMessage", + "failedReason": "", + "publicIpPrefixes": [], + "childCustomIpPrefixes": [] + }, + "type": "Microsoft.Network/customIpPrefixes" + }, + { + "name": "test-customipprefix2", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/customIpPrefixes/test-customipprefix2", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "cidr": "0.0.2.0/23", + "commissionedState": "Commissioned", + "signedMessage": "signedMessage", + "authorizationMessage": "authorizationMessage", + "failedReason": "", + "publicIpPrefixes": [], + "childCustomIpPrefixes": [] + }, + "type": "Microsoft.Network/customIpPrefixes" + }, + { + "name": "test-customipprefix3", + "id": "/subscriptions/subid/resourceGroups/rg3/providers/Microsoft.Network/customIpPrefixes/test-customipprefix3", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "cidr": "0.0.4.0/22", + "commissionedState": "Provisioning", + "signedMessage": "signedMessage", + "authorizationMessage": "authorizationMessage", + "failedReason": "", + "publicIpPrefixes": [], + "childCustomIpPrefixes": [] + }, + "type": "Microsoft.Network/customIpPrefixes" + }, + { + "name": "test-customipprefix4", + "id": "/subscriptions/subid/resourceGroups/rg3/providers/Microsoft.Network/customIpPrefixes/test-customipprefix4", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "cidr": "2607:f0d1:1002:0001::/64", + "commissionedState": "Commissioned", + "signedMessage": "signedMessage", + "authorizationMessage": "authorizationMessage", + "failedReason": "", + "publicIpPrefixes": [], + "childCustomIpPrefixes": [], + "customIpPrefixParent": { + "id": "/subscriptions/subid/resourceGroups/rg3/providers/Microsoft.Network/customIpPrefixes/test-customipprefix5" + } + }, + "type": "Microsoft.Network/customIpPrefixes" + }, + { + "name": "test-customipprefix5", + "id": "/subscriptions/subid/resourceGroups/rg3/providers/Microsoft.Network/customIpPrefixes/test-customipprefix5", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "cidr": "2607:f0d1:1002::/48", + "commissionedState": "Provisioned", + "signedMessage": "signedMessage", + "authorizationMessage": "authorizationMessage", + "failedReason": "", + "publicIpPrefixes": [], + "childCustomIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg3/providers/Microsoft.Network/customIpPrefixes/test-customipprefix4" + } + ] + }, + "type": "Microsoft.Network/customIpPrefixes" + }, + { + "name": "test-customipprefix6", + "id": "/subscriptions/subid/resourceGroups/rg3/providers/Microsoft.Network/customIpPrefixes/test-customipprefix6", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "properties": { + "provisioningState": "Failed", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "cidr": "0.0.5.0/22", + "commissionedState": "ProvisionFailed", + "signedMessage": "signedMessage", + "authorizationMessage": "authorizationMessage", + "failedReason": "CustomerSignatureNotVerified", + "publicIpPrefixes": [], + "childCustomIpPrefixes": [] + }, + "type": "Microsoft.Network/customIpPrefixes" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/CustomIpPrefixUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/CustomIpPrefixUpdateTags.json new file mode 100644 index 000000000000..248ef7120e9b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/CustomIpPrefixUpdateTags.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "customIpPrefixName": "test-customipprefix", + "zones": [ + "1" + ], + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-customipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/customIpPrefixes/test-customipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "zones": [ + "1" + ], + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "cidr": "192.168.254.2/24", + "commissionedState": "Provisioning", + "signedMessage": "signedMessage", + "authorizationMessage": "authorizationMessage", + "failedReason": "", + "publicIpPrefixes": [], + "childCustomIpPrefixes": [] + }, + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "type": "Microsoft.Network/customIpPrefixes" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/DdosCustomPolicyCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/DdosCustomPolicyCreate.json new file mode 100644 index 000000000000..36245bc6845e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/DdosCustomPolicyCreate.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosCustomPolicyName": "test-ddos-custom-policy", + "parameters": { + "location": "centraluseuap", + "properties": { + "protocolCustomSettings": [ + { + "protocol": "Tcp" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-ddos-custom-policy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosCustomPolicies/test-ddos-custom-policy", + "type": "Microsoft.Network/ddosCustomPolicies", + "location": "centraluseuap", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "publicIPAddresses": [], + "protocolCustomSettings": [ + { + "protocol": "Tcp", + "triggerRateOverride": "20000" + } + ] + } + } + }, + "201": { + "body": { + "name": "test-ddos-custom-policy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosCustomPolicies/test-ddos-custom-policy", + "type": "Microsoft.Network/ddosCustomPolicies", + "location": "centraluseuap", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "publicIPAddresses": [], + "protocolCustomSettings": [ + { + "protocol": "Tcp", + "triggerRateOverride": "20000" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/DdosCustomPolicyDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/DdosCustomPolicyDelete.json new file mode 100644 index 000000000000..9de3ace4b4f2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/DdosCustomPolicyDelete.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosCustomPolicyName": "test-ddos-custom-policy", + "parameters": { + "properties": {} + } + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/DdosCustomPolicyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/DdosCustomPolicyGet.json new file mode 100644 index 000000000000..8dbe7843ed6a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/DdosCustomPolicyGet.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosCustomPolicyName": "test-ddos-custom-policy" + }, + "responses": { + "200": { + "body": { + "name": "test-ddos-custom-policy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosCustomPolicies/test-ddos-custom-policy", + "type": "Microsoft.Network/ddosCustomPolicies", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "publicIPAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/DdosCustomPolicyUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/DdosCustomPolicyUpdateTags.json new file mode 100644 index 000000000000..f0170da6b6b4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/DdosCustomPolicyUpdateTags.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosCustomPolicyName": "test-ddos-custom-policy", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-ddos-custom-policy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosCustomPolicies/test-ddos-custom-policy", + "type": "Microsoft.Network/ddosCustomPolicies", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "publicIPAddresses": [], + "protocolCustomSettings": [ + { + "protocol": "Tcp", + "triggerRateOverride": "20000" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/DdosProtectionPlanCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/DdosProtectionPlanCreate.json new file mode 100644 index 000000000000..e954aa48f314 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/DdosProtectionPlanCreate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosProtectionPlanName": "test-plan", + "parameters": { + "location": "westus", + "properties": {} + } + }, + "responses": { + "200": { + "body": { + "name": "test-plan", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/test-plan", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [] + } + } + }, + "201": { + "body": { + "name": "test-plan", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/test-plan", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/DdosProtectionPlanDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/DdosProtectionPlanDelete.json new file mode 100644 index 000000000000..17d8486e7070 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/DdosProtectionPlanDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosProtectionPlanName": "test-plan" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/DdosProtectionPlanGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/DdosProtectionPlanGet.json new file mode 100644 index 000000000000..85f76529636f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/DdosProtectionPlanGet.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosProtectionPlanName": "test-plan" + }, + "responses": { + "200": { + "body": { + "name": "test-plan", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/test-plan", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/DdosProtectionPlanList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/DdosProtectionPlanList.json new file mode 100644 index 000000000000..dc2dbbf62d1d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/DdosProtectionPlanList.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/plan1", + "name": "plan1", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet" + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/plan2", + "name": "plan2", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/DdosProtectionPlanListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/DdosProtectionPlanListAll.json new file mode 100644 index 000000000000..04d867492026 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/DdosProtectionPlanListAll.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/plan1", + "name": "plan1", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet1" + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/plan2", + "name": "plan2", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet3" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/DdosProtectionPlanUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/DdosProtectionPlanUpdateTags.json new file mode 100644 index 000000000000..066dfd31e695 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/DdosProtectionPlanUpdateTags.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosProtectionPlanName": "test-plan", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-plan", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/test-plan", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/DefaultSecurityRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/DefaultSecurityRuleGet.json new file mode 100644 index 000000000000..8fbd5ff41f4d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/DefaultSecurityRuleGet.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2021-02-01", + "subscriptionId": "subid", + "networkSecurityGroupName": "nsg1", + "defaultSecurityRuleName": "AllowVnetInBound" + }, + "responses": { + "200": { + "body": { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/DefaultSecurityRuleList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/DefaultSecurityRuleList.json new file mode 100644 index 000000000000..6c2e5ab2f75b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/DefaultSecurityRuleList.json @@ -0,0 +1,136 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2021-02-01", + "subscriptionId": "subid", + "networkSecurityGroupName": "nsg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/DscpConfigurationCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/DscpConfigurationCreate.json new file mode 100644 index 000000000000..e71db3c72638 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/DscpConfigurationCreate.json @@ -0,0 +1,176 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "dscpConfigurationName": "mydscpconfig", + "parameters": { + "properties": { + "markings": [ + 46, + 10 + ], + "sourceIpRanges": [ + { + "startIP": "127.0.0.1", + "endIP": "127.0.0.2" + }, + { + "startIP": "127.0.1.1", + "endIP": "127.0.1.2" + } + ], + "destinationIpRanges": [ + { + "startIP": "127.0.10.1", + "endIP": "127.0.10.2" + }, + { + "startIP": "127.0.11.1", + "endIP": "127.0.11.2" + } + ], + "sourcePortRanges": [ + { + "start": 10, + "end": 11 + }, + { + "start": 20, + "end": 21 + } + ], + "destinationPortRanges": [ + { + "start": 15, + "end": 15 + }, + { + "start": 26, + "end": 27 + } + ], + "protocol": "Tcp" + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "mydscpConfig", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dscpConfiguration/mydscpConfig", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "markings": [ + 46, + 10 + ], + "sourceIpRanges": [ + { + "startIP": "127.0.0.1", + "endIP": "127.0.0.2" + }, + { + "startIP": "127.0.1.1", + "endIP": "127.0.1.2" + } + ], + "destinationIpRanges": [ + { + "startIP": "127.0.10.1", + "endIP": "127.0.10.2" + }, + { + "startIP": "127.0.11.1", + "endIP": "127.0.11.2" + } + ], + "sourcePortRanges": [ + { + "start": 10, + "end": 11 + }, + { + "start": 20, + "end": 21 + } + ], + "destinationPortRanges": [ + { + "start": 15, + "end": 15 + }, + { + "start": 26, + "end": 27 + } + ], + "protocol": "Tcp", + "associatedNetworkInterfaces": [], + "qosCollectionId": "0f8fad5b-d9cb-469f-a165-70867728950e" + }, + "type": "Microsoft.Network/dscpConfiguration" + } + }, + "201": { + "body": { + "name": "mydscpConfig", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dscpConfiguration/mydscpConfig", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "markings": [ + 46, + 10 + ], + "sourceIpRanges": [ + { + "startIP": "127.0.0.1", + "endIP": "127.0.0.2" + }, + { + "startIP": "127.0.1.1", + "endIP": "127.0.1.2" + } + ], + "destinationIpRanges": [ + { + "startIP": "127.0.10.1", + "endIP": "127.0.10.2" + }, + { + "startIP": "127.0.11.1", + "endIP": "127.0.11.2" + } + ], + "sourcePortRanges": [ + { + "start": 10, + "end": 11 + }, + { + "start": 20, + "end": 21 + } + ], + "destinationPortRanges": [ + { + "start": 15, + "end": 15 + }, + { + "start": 26, + "end": 27 + } + ], + "protocol": "Tcp", + "associatedNetworkInterfaces": [], + "qosCollectionId": "0f8fad5b-d9cb-469f-a165-70867728950e" + }, + "type": "Microsoft.Network/dscpConfiguration" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/DscpConfigurationDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/DscpConfigurationDelete.json new file mode 100644 index 000000000000..f307d2573e74 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/DscpConfigurationDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "dscpConfigurationName": "mydscpConfig" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/DscpConfigurationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/DscpConfigurationGet.json new file mode 100644 index 000000000000..538b59b5afa7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/DscpConfigurationGet.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "dscpConfigurationName": "mydscpConfig" + }, + "responses": { + "200": { + "body": { + "name": "mydscpConfig", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dscpConfiguration/mydscpConfig", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "associatedNetworkInterfaces": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic2" + ], + "qosCollectionId": "0f8fad5b-d9cb-469f-a165-70867728950e", + "markings": [ + 46, + 10 + ], + "sourceIpRanges": [ + { + "startIP": "127.0.0.1", + "endIP": "127.0.0.2" + } + ], + "destinationIpRanges": [ + { + "startIP": "127.0.10.1", + "endIP": "127.0.10.2" + } + ], + "sourcePortRanges": [ + { + "start": 11, + "end": 12 + } + ], + "destinationPortRanges": [ + { + "start": 61, + "end": 62 + } + ], + "protocol": "Tcp" + }, + "type": "Microsoft.Network/dscpConfiguration" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/DscpConfigurationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/DscpConfigurationList.json new file mode 100644 index 000000000000..807766d7cda4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/DscpConfigurationList.json @@ -0,0 +1,101 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "mydscpConfig", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dscpConfiguration/mydscpConfig", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "associatedNetworkInterfaces": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic2" + ], + "qosCollectionId": "0f8fad5b-d9cb-469f-a165-70867728950e", + "markings": [ + 46, + 10 + ], + "sourceIpRanges": [ + { + "startIP": "127.0.0.1", + "endIP": "127.0.0.2" + } + ], + "destinationIpRanges": [ + { + "startIP": "127.0.10.1", + "endIP": "127.0.10.2" + } + ], + "sourcePortRanges": [ + { + "start": 11, + "end": 12 + } + ], + "destinationPortRanges": [ + { + "start": 61, + "end": 62 + } + ], + "protocol": "Tcp" + }, + "type": "Microsoft.Network/dscpConfiguration" + }, + { + "name": "mydscpConfig2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dscpConfiguration/mydscpConfig2", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "associatedNetworkInterfaces": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic3", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic4" + ], + "qosCollectionId": "9as24mf6-d9cb-7a7f-a165-70867728950e", + "markings": [ + 46, + 10 + ], + "sourceIpRanges": [ + { + "startIP": "128.0.0.1", + "endIP": "128.0.0.2" + } + ], + "destinationIpRanges": [ + { + "startIP": "128.0.10.1", + "endIP": "128.0.10.2" + } + ], + "sourcePortRanges": [ + { + "start": 11, + "end": 12 + } + ], + "destinationPortRanges": [ + { + "start": 61, + "end": 62 + } + ], + "protocol": "Tcp" + }, + "type": "Microsoft.Network/dscpConfiguration" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/DscpConfigurationListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/DscpConfigurationListAll.json new file mode 100644 index 000000000000..be148917ce22 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/DscpConfigurationListAll.json @@ -0,0 +1,100 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "mydscpConfig", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dscpConfiguration/mydscpConfig", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "associatedNetworkInterfaces": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic2" + ], + "qosCollectionId": "0f8fad5b-d9cb-469f-a165-70867728950e", + "markings": [ + 46, + 10 + ], + "sourceIpRanges": [ + { + "startIP": "127.0.0.1", + "endIP": "127.0.0.2" + } + ], + "destinationIpRanges": [ + { + "startIP": "127.0.10.1", + "endIP": "127.0.10.2" + } + ], + "sourcePortRanges": [ + { + "start": 11, + "end": 12 + } + ], + "destinationPortRanges": [ + { + "start": 61, + "end": 62 + } + ], + "protocol": "Tcp" + }, + "type": "Microsoft.Network/dscpConfiguration" + }, + { + "name": "mydscpConfig2", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/dscpConfiguration/mydscpConfig2", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "associatedNetworkInterfaces": [ + "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/test-nic3", + "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/test-nic4" + ], + "qosCollectionId": "9as24mf6-d9cb-7a7f-a165-70867728950e", + "markings": [ + 46, + 10 + ], + "sourceIpRanges": [ + { + "startIP": "128.0.0.1", + "endIP": "128.0.0.2" + } + ], + "destinationIpRanges": [ + { + "startIP": "128.0.10.1", + "endIP": "128.0.10.2" + } + ], + "sourcePortRanges": [ + { + "start": 11, + "end": 12 + } + ], + "destinationPortRanges": [ + { + "start": 61, + "end": 62 + } + ], + "protocol": "Tcp" + }, + "type": "Microsoft.Network/dscpConfiguration" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/EffectiveRoutesListForConnection.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/EffectiveRoutesListForConnection.json new file mode 100644 index 000000000000..38f1ae5ff0b1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/EffectiveRoutesListForConnection.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualHubName": "virtualHub1", + "api-version": "2021-02-01", + "effectiveRoutesParameters": { + "resourceId": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName", + "virtualWanResourceType": "ExpressRouteConnection" + } + }, + "responses": { + "200": { + "description": "Request successful. Follow the location header for the effective routes list." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/EffectiveRoutesListForRouteTable.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/EffectiveRoutesListForRouteTable.json new file mode 100644 index 000000000000..5e7c280b3909 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/EffectiveRoutesListForRouteTable.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualHubName": "virtualHub1", + "api-version": "2021-02-01", + "effectiveRoutesParameters": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1", + "virtualWanResourceType": "RouteTable" + } + }, + "responses": { + "200": { + "description": "Request successful. Follow the location header for the effective routes list." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/EffectiveRoutesListForVirtualHub.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/EffectiveRoutesListForVirtualHub.json new file mode 100644 index 000000000000..ae03f52e7e6b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/EffectiveRoutesListForVirtualHub.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualHubName": "virtualHub1", + "api-version": "2021-02-01", + "effectiveRoutesParameters": null + }, + "responses": { + "200": { + "description": "Request successful. Follow the location header for the effective routes list." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/EndpointServicesList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/EndpointServicesList.json new file mode 100644 index 000000000000..b621875ba96c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/EndpointServicesList.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "location": "westus", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Storage", + "id": "/subscriptions/subid/providers/Microsoft.Network/virtualNetworkEndpointServices/Microsoft.Storage", + "type": "Microsoft.Network/virtualNetworkEndpointServices" + }, + { + "name": "Microsoft.Sql", + "id": "/subscriptions/subid/providers/Microsoft.Network/virtualNetworkEndpointServices/Microsoft.Sql", + "type": "Microsoft.Network/virtualNetworkEndpointServices" + }, + { + "name": "Microsoft.AzureActiveDirectory", + "id": "/subscriptions/subid/providers/Microsoft.Network/virtualNetworkEndpointServices/Microsoft.AzureActiveDirectory", + "type": "Microsoft.Network/virtualNetworkEndpointServices" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitARPTableList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitARPTableList.json new file mode 100644 index 000000000000..a83f143b29f2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitARPTableList.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid", + "peeringName": "peeringName", + "devicePath": "devicePath" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "age": 0, + "interface": "Microsoft", + "ipAddress": "IPAddress", + "macAddress": "macAddress" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitAuthorizationCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitAuthorizationCreate.json new file mode 100644 index 000000000000..7fec5d2c165b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitAuthorizationCreate.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "authorizationName": "authorizatinName", + "api-version": "2021-02-01", + "subscriptionId": "subid", + "authorizationParameters": { + "properties": {} + } + }, + "responses": { + "201": { + "body": { + "name": "authorizationName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/authorizations/authorizationName", + "etag": "W/\"e22dd4b2-4c24-44cf-b702-70a472b62914\"", + "properties": { + "provisioningState": "Updating", + "authorizationUseStatus": "Available" + } + } + }, + "200": { + "body": { + "name": "authorizationName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/authorizations/authorizationName", + "etag": "W/\"e22dd4b2-4c24-44cf-b702-70a472b62914\"", + "properties": { + "provisioningState": "Updating", + "authorizationUseStatus": "Available" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitAuthorizationDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitAuthorizationDelete.json new file mode 100644 index 000000000000..afccad5d206d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitAuthorizationDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid", + "authorizationName": "authorizationName" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitAuthorizationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitAuthorizationGet.json new file mode 100644 index 000000000000..82a95f43e819 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitAuthorizationGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid", + "authorizationName": "authorizationName" + }, + "responses": { + "200": { + "body": { + "name": "MyAuthorization1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/authorizations/MyAuthorization1", + "etag": "W/\"e33c875f-48df-4a91-b7d3-eb95b5ddbb89\"", + "properties": { + "provisioningState": "Succeeded", + "authorizationKey": "authKey", + "authorizationUseStatus": "Available" + }, + "type": "Microsoft.Network/expressRouteCircuits/authorizations" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitAuthorizationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitAuthorizationList.json new file mode 100644 index 000000000000..84e36a2626c4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitAuthorizationList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "MyAuthorization1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/authorizations/MyAuthorization1", + "etag": "W/\"e33c875f-48df-4a91-b7d3-eb95b5ddbb89\"", + "properties": { + "provisioningState": "Succeeded", + "authorizationKey": "authKey", + "authorizationUseStatus": "Available" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitConnectionCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitConnectionCreate.json new file mode 100644 index 000000000000..a0cdf94a97d0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitConnectionCreate.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "connectionName": "circuitConnectionUSAUS", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid1", + "circuitName": "ExpressRouteARMCircuitA", + "peeringName": "AzurePrivatePeering", + "type": "Microsoft.Network/expressRouteCircuits/peerings/connections", + "expressRouteCircuitConnectionParameters": { + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/dedharcktpeer/providers/Microsoft.Network/expressRouteCircuits/dedharcktremote/peerings/AzurePrivatePeering" + }, + "authorizationKey": "946a1918-b7a2-4917-b43c-8c4cdaee006a", + "addressPrefix": "10.0.0.0/29", + "ipv6CircuitConnectionConfig": { + "addressPrefix": "aa:bb::/125" + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/connections/circuitConnectionUSAUS", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "circuitConnectionUSAUS", + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/dedharcktpeer/providers/Microsoft.Network/expressRouteCircuits/dedharcktremote/peerings/AzurePrivatePeering" + }, + "authorizationKey": "946a1918-b7a2-4917-b43c-8c4cdaee006a", + "addressPrefix": "10.0.0.0/24", + "circuitConnectionStatus": "Connected", + "provisioningState": "Succeeded", + "ipv6CircuitConnectionConfig": { + "addressPrefix": "aa:bb::1/125", + "circuitConnectionStatus": "Connected" + } + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/connections/circuitConnectionUSAUS", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "circuitConnectionUSAUS", + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/dedharcktpeer/providers/Microsoft.Network/expressRouteCircuits/dedharcktremote/peerings/AzurePrivatePeering" + }, + "authorizationKey": "946a1918-b7a2-4917-b43c-8c4cdaee006a", + "addressPrefix": "10.0.0.0/24", + "circuitConnectionStatus": "Connected", + "provisioningState": "Succeeded", + "ipv6CircuitConnectionConfig": { + "addressPrefix": "aa:bb::1/125", + "circuitConnectionStatus": "Connected" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitConnectionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitConnectionDelete.json new file mode 100644 index 000000000000..75c1634ffd4c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitConnectionDelete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "circuitName": "ExpressRouteARMCircuitA", + "peeringName": "AzurePrivatePeering", + "connectionName": "circuitConnectionUSAUS", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitConnectionGet.json new file mode 100644 index 000000000000..b19965753d80 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitConnectionGet.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "connectionName": "circuitConnectionUSAUS", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid1", + "circuitName": "ExpressRouteARMCircuitA", + "peeringName": "AzurePrivatePeering" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/connections/circuitConnectionUSAUS", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "circuitConnectionUSAUS", + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/dedharcktpeer/providers/Microsoft.Network/expressRouteCircuits/dedharcktremote/peerings/AzurePrivatePeering" + }, + "authorizationKey": "946a1918-b7a2-4917-b43c-8c4cdaee006a", + "addressPrefix": "10.0.0.0/24", + "circuitConnectionStatus": "Connected", + "provisioningState": "Succeeded", + "ipv6CircuitConnectionConfig": { + "addressPrefix": "aa:bb::1/125", + "circuitConnectionStatus": "Connected" + } + }, + "type": "Microsoft.Network/expressRouteCircuits/peerings/connections" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitConnectionList.json new file mode 100644 index 000000000000..d8cba92fde91 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitConnectionList.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid1", + "circuitName": "ExpressRouteARMCircuitA", + "peeringName": "AzurePrivatePeering" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/connections/circuitConnectionUSAUS", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "circuitConnectionUSAUS", + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/dedharcktpeer/providers/Microsoft.Network/expressRouteCircuits/dedharcktremote/peerings/AzurePrivatePeering" + }, + "authorizationKey": "946a1918-b7a2-4917-b43c-8c4cdaee006a", + "addressPrefix": "10.0.0.0/24", + "circuitConnectionStatus": "Connected", + "provisioningState": "Succeeded", + "ipv6CircuitConnectionConfig": { + "addressPrefix": "aa:bb::1/125", + "circuitConnectionStatus": "Connected" + } + } + }, + { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/connections/circuitConnectionUSEUR", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "circuitConnectionUSEUR", + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharckteurope/providers/Microsoft.Network/expressRouteCircuits/dedharcktams/peerings/AzurePrivatePeering" + }, + "addressPrefix": "20.0.0.0/24", + "circuitConnectionStatus": "Connected", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitCreate.json new file mode 100644 index 000000000000..4d06ce03e2ab --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitCreate.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid", + "parameters": { + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + }, + "properties": { + "authorizations": [], + "peerings": [], + "allowClassicOperations": false, + "serviceProviderProperties": { + "serviceProviderName": "Equinix", + "peeringLocation": "Silicon Valley", + "bandwidthInMbps": 200 + } + }, + "location": "Brazil South" + } + }, + "responses": { + "201": { + "body": { + "name": "circuitName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "Brazil South", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [], + "serviceProviderProperties": { + "serviceProviderName": "Equinix", + "peeringLocation": "Silicon Valley", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "serviceKey": "a1410692-0000-4ceb-b94a-b90b94d398d1", + "serviceProviderProvisioningState": "NotProvisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + } + }, + "200": { + "body": { + "name": "circuitName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "Brazil South", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [], + "serviceProviderProperties": { + "serviceProviderName": "Equinix", + "peeringLocation": "Silicon Valley", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "serviceKey": "a1410692-0000-4ceb-b94a-b90b94d398d1", + "serviceProviderProvisioningState": "NotProvisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitCreateOnExpressRoutePort.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitCreateOnExpressRoutePort.json new file mode 100644 index 000000000000..a4c921f9761d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitCreateOnExpressRoutePort.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2021-02-01", + "resourceGroupName": "rg1", + "type": "Microsoft.Network/expressRouteCircuits", + "circuitName": "expressRouteCircuit1", + "parameters": { + "location": "westus", + "sku": { + "name": "Premium_MeteredData", + "tier": "Premium", + "family": "MeteredData" + }, + "properties": { + "expressRoutePort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName" + }, + "bandwidthInGbps": 10 + } + } + }, + "responses": { + "200": { + "body": { + "name": "expressRouteCircuit1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/expressRouteCircuit1", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [], + "expressRoutePort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName" + }, + "bandwidthInGbps": 10, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "20", + "serviceKey": "d281f746-ee01-4d00-8b0a-edec4833772b", + "serviceProviderProvisioningState": "Provisioned" + }, + "sku": { + "name": "Premium_MeteredData", + "tier": "Premium", + "family": "MeteredData" + } + } + }, + "201": { + "body": { + "name": "expressRouteCircuit1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/expressRouteCircuit1", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [], + "expressRoutePort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName" + }, + "bandwidthInGbps": 10, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "20", + "serviceKey": "d281f746-ee01-4d00-8b0a-edec4833772b", + "serviceProviderProvisioningState": "Provisioned" + }, + "sku": { + "name": "Premium_MeteredData", + "tier": "Premium", + "family": "MeteredData" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitDelete.json new file mode 100644 index 000000000000..4d969ae258b5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitGet.json new file mode 100644 index 000000000000..886f66eba1b3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitGet.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "circuitName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [], + "serviceProviderProperties": { + "serviceProviderName": "providerName", + "peeringLocation": "peeringLocation", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "serviceKey": "a1410692-0000-4ceb-b94a-b90b94d398d1", + "serviceProviderProvisioningState": "NotProvisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitListByResourceGroup.json new file mode 100644 index 000000000000..0b08bd8b8ba3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitListByResourceGroup.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "circuitName1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName1", + "etag": "W/\"832b28c3-f5fd-4d2a-a2cb-6e4a2fe452b3\"", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [ + { + "name": "MyAuthorization1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/authorizations/MyAuthorization1", + "etag": "W/\"832b28c3-f5fd-4d2a-a2cb-6e4a2fe452b3\"", + "properties": { + "provisioningState": "Succeeded", + "authorizationKey": "authkey", + "authorizationUseStatus": "Available" + } + } + ], + "serviceProviderProperties": { + "serviceProviderName": "providerName", + "peeringLocation": "peeringLocation", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "113", + "serviceKey": "a1410692-ed3b-4ceb-b94a-b90b95d398d1", + "serviceProviderProvisioningState": "Provisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + }, + { + "name": "circuitName2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName2", + "etag": "W/\"e33c875f-48df-4a91-b7d3-eb95b5ddbb89\"", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [ + { + "name": "MyAuthorization2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName2/authorizations/MyAuthorization2", + "etag": "W/\"e33c875f-48df-4a91-b7d3-eb95b5ddbb89\"", + "properties": { + "provisioningState": "Succeeded", + "authorizationKey": "authkey", + "authorizationUseStatus": "Available" + } + } + ], + "serviceProviderProperties": { + "serviceProviderName": "providerName", + "peeringLocation": "peeringLocation", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "", + "serviceKey": "6569625a-9ba4-498b-9719-14d778eef609", + "serviceProviderProvisioningState": "NotProvisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitListBySubscription.json new file mode 100644 index 000000000000..7558841dd366 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitListBySubscription.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "circuitName1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName1", + "etag": "W/\"832b28c3-f5fd-4d2a-a2cb-6e4a2fe452b3\"", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [ + { + "name": "MyAuthorization1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/authorizations/MyAuthorization1", + "etag": "W/\"832b28c3-f5fd-4d2a-a2cb-6e4a2fe452b3\"", + "properties": { + "provisioningState": "Succeeded", + "authorizationKey": "authkey", + "authorizationUseStatus": "Available" + } + } + ], + "serviceProviderProperties": { + "serviceProviderName": "providerName", + "peeringLocation": "peeringLocation", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "113", + "serviceKey": "a1410692-ed3b-4ceb-b94a-b90b95d398d1", + "serviceProviderProvisioningState": "Provisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + }, + { + "name": "circuitName2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName2", + "etag": "W/\"e33c875f-48df-4a91-b7d3-eb95b5ddbb89\"", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [ + { + "name": "MyAuthorization2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName2/authorizations/MyAuthorization2", + "etag": "W/\"e33c875f-48df-4a91-b7d3-eb95b5ddbb89\"", + "properties": { + "provisioningState": "Succeeded", + "authorizationKey": "authkey", + "authorizationUseStatus": "Available" + } + } + ], + "serviceProviderProperties": { + "serviceProviderName": "providerName", + "peeringLocation": "peeringLocation", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "", + "serviceKey": "6569625a-9ba4-498b-9719-14d778eef609", + "serviceProviderProvisioningState": "NotProvisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitPeeringCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitPeeringCreate.json new file mode 100644 index 000000000000..e879662e93c9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitPeeringCreate.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid", + "peeringParameters": { + "properties": { + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "vlanId": 200 + } + } + }, + "responses": { + "201": { + "body": { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "primaryAzurePort": "", + "secondaryAzurePort": "", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + }, + "expressRouteConnection": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName" + } + } + } + }, + "200": { + "body": { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "primaryAzurePort": "", + "secondaryAzurePort": "", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + }, + "expressRouteConnection": "" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitPeeringDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitPeeringDelete.json new file mode 100644 index 000000000000..2bbaa09e0aa1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitPeeringDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid", + "peeringName": "peeringName" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitPeeringGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitPeeringGet.json new file mode 100644 index 000000000000..18c6d98ef7d0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitPeeringGet.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid", + "peeringName": "MicrosoftPeering" + }, + "responses": { + "200": { + "body": { + "name": "MicrosoftPeering", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/MicrosoftPeering", + "etag": "W/\"b2a25b98-2e6d-4d46-87f2-089de5f6fdf9\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "MicrosoftPeering", + "azureASN": 12076, + "peerASN": 100, + "primaryPeerAddressPrefix": "123.0.0.0/30", + "secondaryPeerAddressPrefix": "123.0.0.4/30", + "primaryAzurePort": "A51-TEST-06GMR-CIS-1-PRI-A", + "secondaryAzurePort": "A51-TEST-06GMR-CIS-2-SEC-A", + "state": "Enabled", + "vlanId": 300, + "gatewayManagerEtag": "103", + "lastModifiedBy": "Customer", + "microsoftPeeringConfig": { + "advertisedPublicPrefixes": [ + "123.1.0.0/24" + ], + "advertisedCommunities": [], + "advertisedPublicPrefixesState": "ValidationNeeded", + "customerASN": 23, + "legacyMode": 0, + "routingRegistryName": "ARIN" + }, + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled", + "microsoftPeeringConfig": { + "advertisedPublicPrefixes": [ + "3FFE:FFFF:0:CD31::/120" + ], + "advertisedCommunities": [], + "advertisedPublicPrefixesState": "ValidationNeeded", + "customerASN": 23, + "legacyMode": 0, + "routingRegistryName": "ARIN" + } + }, + "routeFilter": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName" + } + }, + "type": "Microsoft.Network/expressRouteCircuits/peerings" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitPeeringList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitPeeringList.json new file mode 100644 index 000000000000..2098702cc463 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitPeeringList.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "MicrosoftPeering", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/MicrosoftPeering", + "etag": "W/\"b2a25b98-2e6d-4d46-87f2-089de5f6fdf9\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "MicrosoftPeering", + "azureASN": 12076, + "peerASN": 100, + "primaryPeerAddressPrefix": "123.0.0.0/30", + "secondaryPeerAddressPrefix": "123.0.0.4/30", + "primaryAzurePort": "A51-TEST-06GMR-CIS-1-PRI-A", + "secondaryAzurePort": "A51-TEST-06GMR-CIS-2-SEC-A", + "state": "Enabled", + "vlanId": 300, + "gatewayManagerEtag": "103", + "lastModifiedBy": "Customer", + "microsoftPeeringConfig": { + "advertisedPublicPrefixes": [ + "123.1.0.0/24" + ], + "advertisedCommunities": [], + "advertisedPublicPrefixesState": "ValidationNeeded", + "customerASN": 23, + "legacyMode": 0, + "routingRegistryName": "ARIN" + }, + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled", + "microsoftPeeringConfig": { + "advertisedPublicPrefixes": [ + "3FFE:FFFF:0:CD31::/120" + ], + "advertisedCommunities": [], + "advertisedPublicPrefixesState": "ValidationNeeded", + "customerASN": 23, + "legacyMode": 0, + "routingRegistryName": "ARIN" + } + }, + "expressRouteConnection": "" + } + }, + { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering", + "etag": "W/\"b2a25b98-2e6d-4d46-87f2-089de5f6fdf9\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 100, + "primaryPeerAddressPrefix": "10.0.0.0/30", + "secondaryPeerAddressPrefix": "10.0.0.4/30", + "primaryAzurePort": "A51-TEST-06GMR-CIS-1-PRI-A", + "secondaryAzurePort": "A51-TEST-06GMR-CIS-2-SEC-A", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "103", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + }, + "expressRouteConnection": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitPeeringStats.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitPeeringStats.json new file mode 100644 index 000000000000..983e8421b217 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitPeeringStats.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid", + "peeringName": "peeringName" + }, + "responses": { + "200": { + "body": { + "primarybytesIn": 537408, + "primarybytesOut": 44032550, + "secondarybytesIn": 0, + "secondarybytesOut": 39002500 + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitRouteTableList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitRouteTableList.json new file mode 100644 index 000000000000..07058d047490 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitRouteTableList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid", + "peeringName": "peeringName", + "devicePath": "devicePath" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "network": "", + "nextHop": "", + "locPrf": "", + "weight": 0, + "path": "" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitRouteTableSummaryList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitRouteTableSummaryList.json new file mode 100644 index 000000000000..11d0350311d8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitRouteTableSummaryList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid", + "peeringName": "peeringName", + "devicePath": "devicePath" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "neighbor": "100.65.171.1", + "v": 4, + "as": 9583, + "upDown": "never", + "statePfxRcd": "Idle" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitStats.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitStats.json new file mode 100644 index 000000000000..33c96d215e75 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitStats.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "primarybytesIn": 537408, + "primarybytesOut": 44032550, + "secondarybytesIn": 0, + "secondarybytesOut": 39002500 + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitUpdateTags.json new file mode 100644 index 000000000000..3ccfb0dd5687 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCircuitUpdateTags.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "ertest", + "circuitName": "er1", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "er1", + "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "brazilsouth", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Failed", + "peerings": [], + "authorizations": [], + "serviceProviderProperties": { + "serviceProviderName": "Equinix", + "peeringLocation": "Silicon Valley", + "bandwidthInMbps": 1000 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "", + "serviceKey": "0b392c2e-1e9d-46d7-b5e0-9ce90ca6b60c", + "serviceProviderProvisioningState": "NotProvisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteConnectionCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteConnectionCreate.json new file mode 100644 index 000000000000..4ff04c6cd745 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteConnectionCreate.json @@ -0,0 +1,103 @@ +{ + "parameters": { + "expressRouteGatewayName": "gateway-2", + "resourceGroupName": "resourceGroupName", + "api-version": "2021-02-01", + "subscriptionId": "subid", + "connectionName": "connectionName", + "putExpressRouteConnectionParameters": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/gateway-2/expressRouteConnections/connectionName", + "name": "connectionName", + "properties": { + "routingWeight": 2, + "authorizationKey": "authorizationKey", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "connectionName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/gateway-2/expressRouteConnections/connectionName", + "properties": { + "provisioningState": "Provisioned", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + }, + "authorizationKey": "authorizationKey", + "routingWeight": 2, + "enableInternetSecurity": false, + "expressRouteGatewayBypass": false, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + }, + "201": { + "body": { + "name": "connectionName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/gateway-2/expressRouteConnections/connectionName", + "properties": { + "provisioningState": "Provisioned", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + }, + "authorizationKey": "authorizationKey", + "routingWeight": 2, + "enableInternetSecurity": false, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteConnectionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteConnectionDelete.json new file mode 100644 index 000000000000..1daee5f2e20a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteConnectionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "expressRouteGatewayName": "expressRouteGatewayName", + "resourceGroupName": "resourceGroupName", + "connectionName": "connectionName", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "202": {}, + "200": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteConnectionGet.json new file mode 100644 index 000000000000..77b68abf53b4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteConnectionGet.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "expressRouteGatewayName": "expressRouteGatewayName", + "resourceGroupName": "resourceGroupName", + "api-version": "2021-02-01", + "subscriptionId": "subid", + "connectionName": "connectionName" + }, + "responses": { + "200": { + "body": { + "name": "connectionName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName", + "properties": { + "provisioningState": "Provisioned", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + }, + "authorizationKey": "authorizationKey", + "routingWeight": 1, + "enableInternetSecurity": false, + "expressRouteGatewayBypass": false, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteConnectionList.json new file mode 100644 index 000000000000..3a708f7fdc79 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteConnectionList.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "resourceGroupName": "resourceGroupName", + "expressRouteGatewayName": "expressRouteGatewayName", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "connectionName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName", + "properties": { + "provisioningState": "Provisioned", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + }, + "authorizationKey": "authorizationKey", + "routingWeight": 1, + "enableInternetSecurity": false, + "expressRouteGatewayBypass": false, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCrossConnectionBgpPeeringCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCrossConnectionBgpPeeringCreate.json new file mode 100644 index 000000000000..59b926dee9b3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCrossConnectionBgpPeeringCreate.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "api-version": "2021-02-01", + "subscriptionId": "subid", + "peeringParameters": { + "properties": { + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "vlanId": 200, + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126" + } + } + } + }, + "responses": { + "201": { + "body": { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/CrossConnection-SiliconValley/providers/Microsoft.Network/expressRouteCrossConnections//peerings/AzurePrivatePeering", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "primaryAzurePort": "", + "secondaryAzurePort": "", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + } + } + } + }, + "200": { + "body": { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/CrossConnection-Boydton1DC/providers/Microsoft.Network/expressRouteCrossConnections//peerings/AzurePrivatePeering", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "primaryAzurePort": "", + "secondaryAzurePort": "", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCrossConnectionBgpPeeringDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCrossConnectionBgpPeeringDelete.json new file mode 100644 index 000000000000..9129acd9af38 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCrossConnectionBgpPeeringDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCrossConnectionBgpPeeringGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCrossConnectionBgpPeeringGet.json new file mode 100644 index 000000000000..a9b1e152707d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCrossConnectionBgpPeeringGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/CrossConnection-Boydton1DC/providers/Microsoft.Network/expressRouteCrossConnections//peerings/AzurePrivatePeering", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "primaryAzurePort": "", + "secondaryAzurePort": "", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCrossConnectionBgpPeeringList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCrossConnectionBgpPeeringList.json new file mode 100644 index 000000000000..5df1c51ebb10 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCrossConnectionBgpPeeringList.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/CrossConnection-SiliconValley/providers/Microsoft.Network/expressRouteCrossConnections//peerings/AzurePrivatePeering", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "primaryAzurePort": "", + "secondaryAzurePort": "", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCrossConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCrossConnectionGet.json new file mode 100644 index 000000000000..45e0c2bde8c2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCrossConnectionGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "CrossConnection-SiliconValley", + "crossConnectionName": "" + }, + "responses": { + "200": { + "body": { + "name": "", + "id": "/subscriptions/subid/resourceGroups/CrossConnection-SiliconValley/providers/Microsoft.Network/expressRouteCrossConnections/", + "type": "Microsoft.Network/expressRouteCrossConnections", + "location": "brazilsouth", + "etag": "W/\"c0e6477e-8150-4d4f-9bf6-bb10e6acb63a\"", + "properties": { + "provisioningState": "Enabled", + "expressRouteCircuit": { + "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1" + }, + "peerings": [], + "peeringLocation": "SiliconValley", + "bandwidthInMbps": 1000, + "primaryAzurePort": "bvtazureixp01", + "secondaryAzurePort": "bvtazureixp01", + "sTag": 2, + "serviceProviderProvisioningState": "NotProvisioned" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCrossConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCrossConnectionList.json new file mode 100644 index 000000000000..2015ddb683ab --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCrossConnectionList.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "", + "id": "/subscriptions/subid/resourceGroups/CrossConnectionSiliconValley/providers/Microsoft.Network/expressRouteCrossConnections/", + "type": "Microsoft.Network/expressRouteCrossConnections", + "location": "brazilsouth", + "properties": { + "provisioningState": "Enabled", + "expressRouteCircuit": { + "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1" + }, + "peerings": [], + "peeringLocation": "SiliconValley", + "bandwidthInMbps": 1000, + "primaryAzurePort": "bvtazureixp01", + "secondaryAzurePort": "bvtazureixp01", + "sTag": 2, + "serviceProviderProvisioningState": "NotProvisioned" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCrossConnectionListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCrossConnectionListByResourceGroup.json new file mode 100644 index 000000000000..ed4a5304e6a8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCrossConnectionListByResourceGroup.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "resourceGroupName": "CrossConnection-SiliconValley", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "", + "id": "/subscriptions/subid/resourceGroups/CrossConnectionSilicon-Valley/providers/Microsoft.Network/expressRouteCrossConnections/", + "type": "Microsoft.Network/expressRouteCrossConnections", + "location": "brazilsouth", + "properties": { + "provisioningState": "Enabled", + "expressRouteCircuit": { + "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1" + }, + "peerings": [], + "peeringLocation": "SiliconValley", + "bandwidthInMbps": 1000, + "primaryAzurePort": "bvtazureixp01", + "secondaryAzurePort": "bvtazureixp01", + "sTag": 2, + "serviceProviderProvisioningState": "NotProvisioned" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCrossConnectionUpdate.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCrossConnectionUpdate.json new file mode 100644 index 000000000000..574869bb5389 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCrossConnectionUpdate.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "CrossConnection-SiliconValley", + "crossConnectionName": "", + "parameters": { + "properties": { + "serviceProviderProvisioningState": "NotProvisioned" + } + } + }, + "responses": { + "200": { + "body": { + "name": "", + "id": "/subscriptions/subid/resourceGroups/CrossConnectionSiliconValley/providers/Microsoft.Network/expressRouteCrossConnections/", + "type": "Microsoft.Network/expressRouteCrossConnections", + "location": "brazilsouth", + "properties": { + "provisioningState": "Enabled", + "expressRouteCircuit": { + "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1" + }, + "peerings": [], + "peeringLocation": "SiliconValley", + "bandwidthInMbps": 1000, + "primaryAzurePort": "bvtazureixp01", + "secondaryAzurePort": "bvtazureixp01", + "sTag": 2, + "serviceProviderProvisioningState": "NotProvisioned" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCrossConnectionUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCrossConnectionUpdateTags.json new file mode 100644 index 000000000000..72f988fde25c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCrossConnectionUpdateTags.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "CrossConnection-SiliconValley", + "crossConnectionName": "", + "crossConnectionParameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "er1", + "id": "/subscriptions/subid/resourceGroups/CrossConnectionSiliconValley/providers/Microsoft.Network/expressRouteCrossConnections/", + "type": "Microsoft.Network/expressRouteCrossConnections", + "location": "brazilsouth", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Failed", + "expressRouteCircuit": { + "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1" + }, + "peerings": [], + "peeringLocation": "SiliconValley", + "bandwidthInMbps": 1000, + "primaryAzurePort": "bvtazureixp01", + "secondaryAzurePort": "bvtazureixp01", + "sTag": 2, + "serviceProviderProvisioningState": "NotProvisioned" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCrossConnectionsArpTable.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCrossConnectionsArpTable.json new file mode 100644 index 000000000000..dc583bc78855 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCrossConnectionsArpTable.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "devicePath": "primary", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "age": 0, + "interface": "Microsoft", + "ipAddress": "192.116.14.254", + "macAddress": "885a.9269.9110" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCrossConnectionsRouteTable.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCrossConnectionsRouteTable.json new file mode 100644 index 000000000000..13b8286e75d9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCrossConnectionsRouteTable.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "devicePath": "primary", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "network": "10.6.0.0/16", + "nextHop": "10.6.1.12", + "locPrf": "", + "weight": 0, + "path": "65514" + }, + { + "network": "10.7.0.0/16", + "nextHop": "10.7.1.13", + "locPrf": "", + "weight": 0, + "path": "65514" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCrossConnectionsRouteTableSummary.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCrossConnectionsRouteTableSummary.json new file mode 100644 index 000000000000..1158f756c713 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteCrossConnectionsRouteTableSummary.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "devicePath": "primary", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "neighbor": "10.6.1.112", + "asn": 65514, + "upDown": "1d14h", + "stateOrPrefixesReceived": "Active" + }, + { + "neighbor": "10.6.1.113", + "asn": 65514, + "upDown": "1d14h", + "stateOrPrefixesReceived": "1" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteGatewayCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteGatewayCreate.json new file mode 100644 index 000000000000..9ca42418bb22 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteGatewayCreate.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "expressRouteGatewayName": "gateway-2", + "subscriptionId": "subid", + "resourceGroupName": "resourceGroupName", + "api-version": "2021-02-01", + "putExpressRouteGatewayParameters": { + "location": "westus", + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupId/providers/Microsoft.Network/virtualHubs/virtualHubName" + }, + "autoScaleConfiguration": { + "bounds": { + "min": 3 + } + } + } + } + }, + "responses": { + "201": { + "body": { + "name": "gateway-2", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/gateway-2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "westus", + "type": "Microsoft.Network/expressRouteGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName" + }, + "autoScaleConfiguration": { + "bounds": { + "min": 3 + } + } + } + } + }, + "200": { + "body": { + "name": "gateway-2", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/gateway-2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "westus", + "type": "Microsoft.Network/expressRouteGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName" + }, + "autoScaleConfiguration": { + "bounds": { + "min": 3 + } + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteGatewayDelete.json new file mode 100644 index 000000000000..70a5049b060f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "expressRouteGatewayName": "expressRouteGatewayName", + "resourceGroupName": "resourceGroupName", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "202": {}, + "200": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteGatewayGet.json new file mode 100644 index 000000000000..3750633fa69e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteGatewayGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "expressRouteGatewayName": "expressRouteGatewayName", + "resourceGroupName": "resourceGroupName", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "expressRouteGatewayName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "westus", + "type": "Microsoft.Network/expressRouteGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteGatewayListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteGatewayListByResourceGroup.json new file mode 100644 index 000000000000..78b3526b7f4a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteGatewayListByResourceGroup.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "resourceGroupName": "resourceGroupName", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "expressRouteGatewayName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "westus", + "type": "Microsoft.Network/expressRouteGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName" + }, + "autoScaleConfiguration": { + "bounds": { + "min": 2 + } + }, + "expressRouteConnections": [ + { + "name": "connectionName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName", + "properties": { + "provisioningState": "Provisioned", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + }, + "authorizationKey": "f28e9c99-78d8-4248-a855-c54cf6beb99d", + "routingWeight": 1, + "enableInternetSecurity": false, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/hvirtualHubNameub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteGatewayListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteGatewayListBySubscription.json new file mode 100644 index 000000000000..42a2e78879dc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteGatewayListBySubscription.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "expressRouteGatewayName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "westus", + "type": "Microsoft.Network/expressRouteGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName" + }, + "autoScaleConfiguration": { + "bounds": { + "min": 2 + } + }, + "expressRouteConnections": [ + { + "name": "connectionName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName", + "properties": { + "provisioningState": "Provisioned", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + }, + "authorizationKey": "f28e9c99-78d8-4248-a855-c54cf6beb99d", + "routingWeight": 1, + "enableInternetSecurity": false, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/hvirtualHubNameub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteGatewayUpdateTags.json new file mode 100644 index 000000000000..40472a839202 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteGatewayUpdateTags.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "expressRouteGatewayName": "expressRouteGatewayName", + "resourceGroupName": "resourceGroupName", + "api-version": "2021-02-01", + "subscriptionId": "subid", + "expressRouteGatewayParameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "202": {}, + "200": { + "body": { + "name": "expressRouteGatewayName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "westus", + "type": "Microsoft.Network/expressRouteGateways", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteLinkGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteLinkGet.json new file mode 100644 index 000000000000..409c673d907a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteLinkGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2021-02-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName", + "linkName": "linkName" + }, + "responses": { + "200": { + "body": { + "name": "linkName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/linkName", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteLinkList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteLinkList.json new file mode 100644 index 000000000000..6490bc98969f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteLinkList.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2021-02-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "name": "link2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRoutePortCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRoutePortCreate.json new file mode 100644 index 000000000000..585dde449b72 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRoutePortCreate.json @@ -0,0 +1,112 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2021-02-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName", + "parameters": { + "location": "westus", + "properties": { + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "encapsulation": "QinQ" + } + } + }, + "responses": { + "200": { + "body": { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + }, + "201": { + "body": { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRoutePortDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRoutePortDelete.json new file mode 100644 index 000000000000..b990b8a51ff3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRoutePortDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2021-02-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRoutePortGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRoutePortGet.json new file mode 100644 index 000000000000..0a1726577b59 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRoutePortGet.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2021-02-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName" + }, + "responses": { + "200": { + "body": { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRoutePortList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRoutePortList.json new file mode 100644 index 000000000000..0a8278f5ff2e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRoutePortList.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2021-02-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRoutePortListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRoutePortListByResourceGroup.json new file mode 100644 index 000000000000..48bbf13878be --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRoutePortListByResourceGroup.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2021-02-01", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRoutePortUpdateLink.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRoutePortUpdateLink.json new file mode 100644 index 000000000000..bab16b8aadb0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRoutePortUpdateLink.json @@ -0,0 +1,120 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2021-02-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName", + "parameters": { + "location": "westus", + "properties": { + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "encapsulation": "QinQ", + "links": [ + { + "name": "link1", + "properties": { + "adminState": "Enabled" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Enabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + }, + "201": { + "body": { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Enabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRoutePortUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRoutePortUpdateTags.json new file mode 100644 index 000000000000..2deaa8553378 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRoutePortUpdateTags.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2021-02-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRoutePortsLocationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRoutePortsLocationGet.json new file mode 100644 index 000000000000..210db627ab5a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRoutePortsLocationGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2021-02-01", + "locationName": "locationName" + }, + "responses": { + "200": { + "body": { + "name": "locationName", + "id": "/subscriptions/subid/providers/Microsoft.Network/expressRoutePortsLocations/locationName", + "type": "Microsoft.Network/expressRoutePortsLocations", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "address": "123 Main Street, City, State, Zip", + "contact": "email@address.com", + "availableBandwidths": [ + { + "offerName": "100 Gbps", + "valueInGbps": 100 + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRoutePortsLocationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRoutePortsLocationList.json new file mode 100644 index 000000000000..0a6d521814a1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRoutePortsLocationList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2021-02-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "locationName", + "id": "/subscriptions/subid/providers/Microsoft.Network/expressRoutePortsLocations/locationName", + "type": "Microsoft.Network/expressRoutePortsLocations", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "address": "123 Main Street, City, State, Zip", + "contact": "email@address.com", + "availableBandwidths": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteProviderList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteProviderList.json new file mode 100644 index 000000000000..3c7c8bd3eec6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ExpressRouteProviderList.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "providerName", + "id": "/subscriptions//resourceGroups//providers/Microsoft.Network/expressRouteServiceProviders/", + "type": "Microsoft.Network/expressRouteServiceProviders", + "properties": { + "provisioningState": "Succeeded", + "peeringLocations": [ + "peeringLocation1", + "peeringLocation2" + ], + "bandwidthsOffered": [ + { + "offerName": "50Mbps", + "valueInMbps": 50 + }, + { + "offerName": "100Mbps", + "valueInMbps": 100 + }, + { + "offerName": "200Mbps", + "valueInMbps": 200 + }, + { + "offerName": "500Mbps", + "valueInMbps": 500 + }, + { + "offerName": "1Gbps", + "valueInMbps": 1000 + }, + { + "offerName": "2Gbps", + "valueInMbps": 2000 + }, + { + "offerName": "5Gbps", + "valueInMbps": 5000 + }, + { + "offerName": "10Gbps", + "valueInMbps": 10000 + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/FirewallPolicyDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/FirewallPolicyDelete.json new file mode 100644 index 000000000000..fad7021d4c1c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/FirewallPolicyDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "firewallPolicyName": "firewallPolicy" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/FirewallPolicyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/FirewallPolicyGet.json new file mode 100644 index 000000000000..05411387f339 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/FirewallPolicyGet.json @@ -0,0 +1,111 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "firewallPolicyName": "firewallPolicy" + }, + "responses": { + "200": { + "body": { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "type": "Microsoft.Network/firewallPolicies", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "threatIntelWhitelist": { + "ipAddresses": [ + "20.3.4.5" + ], + "fqdns": [ + "*.microsoft.com" + ] + }, + "ruleCollectionGroups": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleCollectionGroups/ruleCollectionGroup1" + } + ], + "insights": { + "isEnabled": true, + "retentionDays": 100, + "logAnalyticsResources": { + "workspaces": [ + { + "region": "westus", + "workspaceId": { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/microsoft.operationalinsights/workspaces/workspace1" + } + }, + { + "region": "eastus", + "workspaceId": { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/microsoft.operationalinsights/workspaces/workspace2" + } + } + ], + "defaultWorkspaceId": { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/microsoft.operationalinsights/workspaces/defaultWorkspace" + } + } + }, + "firewalls": [], + "snat": { + "privateRanges": [ + "IANAPrivateRanges" + ] + }, + "dnsSettings": { + "servers": [ + "30.3.4.5" + ], + "enableProxy": true, + "requireProxyForNetworkRules": false + }, + "sku": { + "tier": "Premium" + }, + "intrusionDetection": { + "mode": "Alert", + "configuration": { + "signatureOverrides": [ + { + "id": "2525004", + "mode": "Deny" + } + ], + "bypassTrafficSettings": [ + { + "name": "bypassRule1", + "description": "Rule 1", + "protocol": "TCP", + "sourceAddresses": [ + "1.2.3.4" + ], + "destinationAddresses": [ + "5.6.7.8" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + }, + "transportSecurity": { + "certificateAuthority": { + "name": "clientcert", + "keyVaultSecretId": "https://kv/secret" + } + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/FirewallPolicyListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/FirewallPolicyListByResourceGroup.json new file mode 100644 index 000000000000..cce8cfa21812 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/FirewallPolicyListByResourceGroup.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "type": "Microsoft.Network/firewallPolicies", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ruleCollectionGroups": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleCollectionGroups/ruleCollectionGroup1" + } + ], + "firewalls": [], + "snat": { + "privateRanges": [ + "IANAPrivateRanges" + ] + }, + "dnsSettings": { + "servers": [ + "30.3.4.5" + ], + "enableProxy": true, + "requireProxyForNetworkRules": false + }, + "sku": { + "tier": "Standard" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/FirewallPolicyListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/FirewallPolicyListBySubscription.json new file mode 100644 index 000000000000..71a0cf3eca85 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/FirewallPolicyListBySubscription.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "type": "Microsoft.Network/firewallPolicies", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ruleCollectionGroups": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleCollectionGroups/ruleCollectionGroup1" + } + ], + "firewalls": [], + "snat": { + "privateRanges": [ + "IANAPrivateRanges" + ] + }, + "dnsSettings": { + "servers": [ + "30.3.4.5" + ], + "enableProxy": true, + "requireProxyForNetworkRules": false + }, + "sku": { + "tier": "Standard" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/FirewallPolicyNatRuleCollectionGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/FirewallPolicyNatRuleCollectionGroupGet.json new file mode 100644 index 000000000000..265c42ac0a8b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/FirewallPolicyNatRuleCollectionGroupGet.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "ruleCollectionGroupName": "ruleCollectionGroup1", + "firewallPolicyName": "firewallPolicy", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "ruleCollectionGroup1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleCollectionGroups/ruleCollectionGroup1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "priority": 100, + "ruleCollections": [ + { + "ruleCollectionType": "FirewallPolicyNatRuleCollection", + "action": { + "type": "DNAT" + }, + "rules": [ + { + "ruleType": "NatRule", + "name": "NatRule1", + "translatedFqdn": "internalhttpserver", + "translatedPort": "8080", + "ipProtocols": [ + "TCP", + "UDP" + ], + "sourceAddresses": [ + "2.2.2.2" + ], + "sourceIpGroups": [], + "destinationAddresses": [ + "152.23.32.23" + ], + "destinationPorts": [ + "8080" + ] + } + ], + "name": "NatRC", + "priority": 100 + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/FirewallPolicyNatRuleCollectionGroupPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/FirewallPolicyNatRuleCollectionGroupPut.json new file mode 100644 index 000000000000..2b2c5fd37e83 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/FirewallPolicyNatRuleCollectionGroupPut.json @@ -0,0 +1,133 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "firewallPolicyName": "firewallPolicy", + "ruleCollectionGroupName": "ruleCollectionGroup1", + "parameters": { + "properties": { + "priority": 100, + "ruleCollections": [ + { + "ruleCollectionType": "FirewallPolicyNatRuleCollection", + "priority": 100, + "name": "Example-Nat-Rule-Collection", + "action": { + "type": "DNAT" + }, + "rules": [ + { + "ruleType": "NatRule", + "name": "nat-rule1", + "translatedFqdn": "internalhttp.server.net", + "translatedPort": "8080", + "ipProtocols": [ + "TCP", + "UDP" + ], + "sourceAddresses": [ + "2.2.2.2" + ], + "sourceIpGroups": [], + "destinationAddresses": [ + "152.23.32.23" + ], + "destinationPorts": [ + "8080" + ] + } + ] + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "ruleCollectionGroup1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleCollectionGroups/ruleCollectionGroup1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "priority": 100, + "ruleCollections": [ + { + "ruleCollectionType": "FirewallPolicyNatRuleCollection", + "name": "Example-Nat-Rule-Collection", + "priority": 100, + "action": { + "type": "DNAT" + }, + "rules": [ + { + "ruleType": "NatRule", + "name": "nat-rule1", + "translatedFqdn": "internalhttp.server.net", + "translatedPort": "8080", + "ipProtocols": [ + "TCP", + "UDP" + ], + "sourceAddresses": [ + "2.2.2.2" + ], + "sourceIpGroups": [], + "destinationAddresses": [ + "152.23.32.23" + ], + "destinationPorts": [ + "8080" + ] + } + ] + } + ] + } + } + }, + "201": { + "body": { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "ruleCollections": [ + { + "ruleCollectionType": "FirewallPolicyNatRuleCollection", + "name": "Example-Nat-Rule-Collection", + "priority": 100, + "action": { + "type": "DNAT" + }, + "rules": [ + { + "ruleType": "NatRule", + "name": "nat-rule1", + "translatedFqdn": "internalhttp.server.net", + "translatedPort": "8080", + "ipProtocols": [ + "TCP", + "UDP" + ], + "sourceAddresses": [ + "2.2.2.2" + ], + "sourceIpGroups": [], + "destinationAddresses": [ + "152.23.32.23" + ], + "destinationPorts": [ + "8080" + ] + } + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/FirewallPolicyPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/FirewallPolicyPut.json new file mode 100644 index 000000000000..d3827737cc7c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/FirewallPolicyPut.json @@ -0,0 +1,306 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "firewallPolicyName": "firewallPolicy", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "properties": { + "threatIntelMode": "Alert", + "threatIntelWhitelist": { + "ipAddresses": [ + "20.3.4.5" + ], + "fqdns": [ + "*.microsoft.com" + ] + }, + "insights": { + "isEnabled": true, + "retentionDays": 100, + "logAnalyticsResources": { + "workspaces": [ + { + "region": "westus", + "workspaceId": { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/microsoft.operationalinsights/workspaces/workspace1" + } + }, + { + "region": "eastus", + "workspaceId": { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/microsoft.operationalinsights/workspaces/workspace2" + } + } + ], + "defaultWorkspaceId": { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/microsoft.operationalinsights/workspaces/defaultWorkspace" + } + } + }, + "snat": { + "privateRanges": [ + "IANAPrivateRanges" + ] + }, + "dnsSettings": { + "servers": [ + "30.3.4.5" + ], + "enableProxy": true, + "requireProxyForNetworkRules": false + }, + "sku": { + "tier": "Premium" + }, + "intrusionDetection": { + "mode": "Alert", + "configuration": { + "signatureOverrides": [ + { + "id": "2525004", + "mode": "Deny" + } + ], + "bypassTrafficSettings": [ + { + "name": "bypassRule1", + "description": "Rule 1", + "protocol": "TCP", + "sourceAddresses": [ + "1.2.3.4" + ], + "destinationAddresses": [ + "5.6.7.8" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + }, + "transportSecurity": { + "certificateAuthority": { + "name": "clientcert", + "keyVaultSecretId": "https://kv/secret" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "type": "Microsoft.Network/firewallPolicies", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "threatIntelWhitelist": { + "ipAddresses": [ + "20.3.4.5" + ], + "fqdns": [ + "*.microsoft.com" + ] + }, + "ruleCollectionGroups": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleCollectionGroups/ruleCollectionGroup1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleCollectionGroups/ruleCollectionGroup2" + } + ], + "insights": { + "isEnabled": true, + "retentionDays": 100, + "logAnalyticsResources": { + "workspaces": [ + { + "region": "westus", + "workspaceId": { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/microsoft.operationalinsights/workspaces/workspace1" + } + }, + { + "region": "eastus", + "workspaceId": { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/microsoft.operationalinsights/workspaces/workspace2" + } + } + ], + "defaultWorkspaceId": { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/microsoft.operationalinsights/workspaces/defaultWorkspace" + } + } + }, + "firewalls": [], + "snat": { + "privateRanges": [ + "IANAPrivateRanges" + ] + }, + "dnsSettings": { + "servers": [ + "30.3.4.5" + ], + "enableProxy": true, + "requireProxyForNetworkRules": false + }, + "sku": { + "tier": "Premium" + }, + "intrusionDetection": { + "mode": "Alert", + "configuration": { + "signatureOverrides": [ + { + "id": "2525004", + "mode": "Deny" + } + ], + "bypassTrafficSettings": [ + { + "name": "bypassRule1", + "description": "Rule 1", + "protocol": "TCP", + "sourceAddresses": [ + "1.2.3.4" + ], + "destinationAddresses": [ + "5.6.7.8" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + }, + "transportSecurity": { + "certificateAuthority": { + "name": "clientcert", + "keyVaultSecretId": "https://kv/secret" + } + } + } + } + }, + "201": { + "body": { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "type": "Microsoft.Network/firewallPolicies", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "threatIntelWhitelist": { + "ipAddresses": [ + "20.3.4.5" + ], + "fqdns": [ + "*.microsoft.com" + ] + }, + "ruleCollectionGroups": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleCollectionGroups/ruleCollectionGroup1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleCollectionGroups/ruleCollectionGroup2" + } + ], + "insights": { + "isEnabled": true, + "retentionDays": 100, + "logAnalyticsResources": { + "workspaces": [ + { + "region": "westus", + "workspaceId": { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/microsoft.operationalinsights/workspaces/workspace1" + } + }, + { + "region": "eastus", + "workspaceId": { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/microsoft.operationalinsights/workspaces/workspace2" + } + } + ], + "defaultWorkspaceId": { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/microsoft.operationalinsights/workspaces/defaultWorkspace" + } + } + }, + "firewalls": [], + "snat": { + "privateRanges": [ + "IANAPrivateRanges" + ] + }, + "dnsSettings": { + "servers": [ + "30.3.4.5" + ], + "enableProxy": true, + "requireProxyForNetworkRules": false + }, + "sku": { + "tier": "Premium" + }, + "intrusionDetection": { + "mode": "Alert", + "configuration": { + "signatureOverrides": [ + { + "id": "2525004", + "mode": "Deny" + } + ], + "bypassTrafficSettings": [ + { + "name": "bypassRule1", + "description": "Rule 1", + "protocol": "TCP", + "sourceAddresses": [ + "1.2.3.4" + ], + "destinationAddresses": [ + "5.6.7.8" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + }, + "transportSecurity": { + "certificateAuthority": { + "name": "clientcert", + "keyVaultSecretId": "https://kv/secret" + } + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/FirewallPolicyRuleCollectionGroupDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/FirewallPolicyRuleCollectionGroupDelete.json new file mode 100644 index 000000000000..83fb220a27d2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/FirewallPolicyRuleCollectionGroupDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "ruleCollectionGroupName": "ruleCollectionGroup1", + "firewallPolicyName": "firewallPolicy", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/FirewallPolicyRuleCollectionGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/FirewallPolicyRuleCollectionGroupGet.json new file mode 100644 index 000000000000..ce7fa4d77364 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/FirewallPolicyRuleCollectionGroupGet.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "ruleCollectionGroupName": "ruleCollectionGroup1", + "firewallPolicyName": "firewallPolicy", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "ruleCollectionGroup1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleCollectionGroups/ruleCollectionGroup1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "ruleCollections": [ + { + "ruleCollectionType": "FirewallPolicyFilterRuleCollection", + "name": "Example-Filter-Rule-Collection", + "priority": 200, + "action": { + "type": "Deny" + }, + "rules": [ + { + "ruleType": "NetworkRule", + "name": "network-rule1", + "sourceAddresses": [ + "10.1.25.0/24" + ], + "destinationAddresses": [ + "*" + ], + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/FirewallPolicyRuleCollectionGroupList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/FirewallPolicyRuleCollectionGroupList.json new file mode 100644 index 000000000000..65de4b1a4ced --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/FirewallPolicyRuleCollectionGroupList.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "firewallPolicyName": "firewallPolicy", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "ruleCollectionGroup1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleCollectionGroups/ruleCollectionGroup1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "ruleCollections": [ + { + "name": "Example-Filter-Rule-Collection", + "ruleCollectionType": "FirewallPolicyFilterRuleCollection", + "priority": 120, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "network-rule-1", + "ruleType": "NetworkRule", + "description": "Network rule", + "destinationAddresses": [ + "*" + ], + "sourceAddresses": [ + "10.1.25.0/24" + ], + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/FirewallPolicyRuleCollectionGroupPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/FirewallPolicyRuleCollectionGroupPut.json new file mode 100644 index 000000000000..5552e17eed58 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/FirewallPolicyRuleCollectionGroupPut.json @@ -0,0 +1,122 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "firewallPolicyName": "firewallPolicy", + "ruleCollectionGroupName": "ruleCollectionGroup1", + "parameters": { + "properties": { + "priority": 100, + "ruleCollections": [ + { + "ruleCollectionType": "FirewallPolicyFilterRuleCollection", + "name": "Example-Filter-Rule-Collection", + "priority": 100, + "action": { + "type": "Deny" + }, + "rules": [ + { + "ruleType": "NetworkRule", + "name": "network-rule1", + "sourceAddresses": [ + "10.1.25.0/24" + ], + "destinationAddresses": [ + "*" + ], + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "ruleCollectionGroup1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleCollectionGroups/ruleCollectionGroup1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "priority": 100, + "ruleCollections": [ + { + "ruleCollectionType": "FirewallPolicyFilterRuleCollection", + "name": "Example-Filter-Rule-Collection", + "priority": 100, + "action": { + "type": "Deny" + }, + "rules": [ + { + "ruleType": "NetworkRule", + "name": "network-rule1", + "sourceAddresses": [ + "10.1.25.0/24" + ], + "destinationAddresses": [ + "*" + ], + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + ] + } + } + }, + "201": { + "body": { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "priority": 100, + "ruleCollections": [ + { + "ruleCollectionType": "FirewallPolicyFilterRuleCollection", + "name": "Example-Filter-Rule-Collection", + "priority": 100, + "action": { + "type": "Deny" + }, + "rules": [ + { + "ruleType": "NetworkRule", + "name": "network-rule1", + "sourceAddresses": [ + "10.1.25.0/24" + ], + "destinationAddresses": [ + "*" + ], + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/FirewallPolicyRuleCollectionGroupWithIpGroupsGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/FirewallPolicyRuleCollectionGroupWithIpGroupsGet.json new file mode 100644 index 000000000000..5cb037027add --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/FirewallPolicyRuleCollectionGroupWithIpGroupsGet.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "ruleCollectionGroupName": "ruleGroup1", + "firewallPolicyName": "firewallPolicy", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "ruleGroup1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "ruleCollections": [ + { + "ruleCollectionType": "FirewallPolicyFilterRuleCollection", + "name": "Example-Filter-Rule-Collection", + "priority": 200, + "action": { + "type": "Deny" + }, + "rules": [ + { + "ruleType": "NetworkRule", + "name": "network-rule1", + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ], + "sourceIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups1" + ], + "destinationIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups2" + ] + } + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/FirewallPolicyRuleCollectionGroupWithIpGroupsList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/FirewallPolicyRuleCollectionGroupWithIpGroupsList.json new file mode 100644 index 000000000000..910cda43261b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/FirewallPolicyRuleCollectionGroupWithIpGroupsList.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "firewallPolicyName": "firewallPolicy", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "ruleCollectionGroup1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleCollectionGroups/ruleCollectionGroup1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "ruleCollections": [ + { + "name": "Example-Filter-Rule-Collection", + "ruleCollectionType": "FirewallPolicyFilterRuleCollection", + "priority": 120, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "network-rule-1", + "ruleType": "NetworkRule", + "description": "Network rule", + "sourceIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups1" + ], + "destinationIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups2" + ], + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/FirewallPolicyRuleCollectionGroupWithIpGroupsPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/FirewallPolicyRuleCollectionGroupWithIpGroupsPut.json new file mode 100644 index 000000000000..4abc595a1c21 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/FirewallPolicyRuleCollectionGroupWithIpGroupsPut.json @@ -0,0 +1,119 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "firewallPolicyName": "firewallPolicy", + "ruleCollectionGroupName": "ruleCollectionGroup1", + "parameters": { + "properties": { + "priority": 110, + "ruleCollections": [ + { + "ruleCollectionType": "FirewallPolicyFilterRuleCollection", + "name": "Example-Filter-Rule-Collection", + "action": { + "type": "Deny" + }, + "rules": [ + { + "ruleType": "NetworkRule", + "name": "network-1", + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ], + "sourceIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups1" + ], + "destinationIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups2" + ] + } + ] + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "ruleCollectionGroup1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleCollectionGroups/ruleCollectionGroup1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "ruleCollections": [ + { + "ruleCollectionType": "FirewallPolicyFilterRuleCollection", + "name": "Example-Filter-Rule-Collection", + "action": { + "type": "Deny" + }, + "rules": [ + { + "ruleType": "NetworkRule", + "name": "network-1", + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ], + "sourceIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups1" + ], + "destinationIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups2" + ] + } + ] + } + ] + } + } + }, + "201": { + "body": { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "ruleCollections": [ + { + "ruleCollectionType": "FirewallPolicyFilterRuleCollection", + "name": "Example-Filter-Rule-Collection", + "action": { + "type": "Deny" + }, + "rules": [ + { + "ruleType": "NetworkRule", + "name": "network-1", + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ], + "sourceIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups1" + ], + "destinationIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups2" + ] + } + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/FirewallPolicyRuleCollectionGroupWithWebCategoriesGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/FirewallPolicyRuleCollectionGroupWithWebCategoriesGet.json new file mode 100644 index 000000000000..74b343f60107 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/FirewallPolicyRuleCollectionGroupWithWebCategoriesGet.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "ruleCollectionGroupName": "ruleCollectionGroup1", + "firewallPolicyName": "firewallPolicy", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "e747cc13-97d4-4a79-b463-42d7f4e558f2" + }, + "responses": { + "200": { + "body": { + "name": "ruleCollectionGroup1", + "id": "/subscriptions/e747cc13-97d4-4a79-b463-42d7f4e558f2/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleCollectionGroups/ruleCollectionGroup1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "ruleCollections": [ + { + "ruleCollectionType": "FirewallPolicyFilterRuleCollection", + "name": "Example-Filter-Rule-Collection", + "priority": 200, + "action": { + "type": "Deny" + }, + "rules": [ + { + "ruleType": "ApplicationRule", + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ], + "webCategories": [ + "Hacking" + ] + } + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/FirewallPolicyRuleCollectionGroupWithWebCategoriesList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/FirewallPolicyRuleCollectionGroupWithWebCategoriesList.json new file mode 100644 index 000000000000..c5d68d92ed00 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/FirewallPolicyRuleCollectionGroupWithWebCategoriesList.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "firewallPolicyName": "firewallPolicy", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "e747cc13-97d4-4a79-b463-42d7f4e558f2" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "ruleCollectionGroup1", + "id": "/subscriptions/e747cc13-97d4-4a79-b463-42d7f4e558f2/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleCollectionGroups/ruleCollectionGroup1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "ruleCollections": [ + { + "name": "Example-Filter-Rule-Collection", + "ruleCollectionType": "FirewallPolicyFilterRuleCollection", + "priority": 120, + "action": { + "type": "Deny" + }, + "rules": [ + { + "ruleType": "ApplicationRule", + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ], + "webCategories": [ + "Hacking" + ] + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/FirewallPolicyRuleCollectionGroupWithWebCategoriesPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/FirewallPolicyRuleCollectionGroupWithWebCategoriesPut.json new file mode 100644 index 000000000000..5971291dced6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/FirewallPolicyRuleCollectionGroupWithWebCategoriesPut.json @@ -0,0 +1,125 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "e747cc13-97d4-4a79-b463-42d7f4e558f2", + "resourceGroupName": "rg1", + "firewallPolicyName": "firewallPolicy", + "ruleCollectionGroupName": "ruleCollectionGroup1", + "parameters": { + "properties": { + "priority": 110, + "ruleCollections": [ + { + "ruleCollectionType": "FirewallPolicyFilterRuleCollection", + "name": "Example-Filter-Rule-Collection", + "action": { + "type": "Deny" + }, + "rules": [ + { + "ruleType": "ApplicationRule", + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ], + "webCategories": [ + "Hacking" + ] + } + ] + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "ruleCollectionGroup1", + "id": "/subscriptions/e747cc13-97d4-4a79-b463-42d7f4e558f2/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleCollectionGroups/ruleCollectionGroup1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "ruleCollections": [ + { + "ruleCollectionType": "FirewallPolicyFilterRuleCollection", + "name": "Example-Filter-Rule-Collection", + "action": { + "type": "Deny" + }, + "rules": [ + { + "ruleType": "ApplicationRule", + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ], + "webCategories": [ + "Hacking" + ] + } + ] + } + ] + } + } + }, + "201": { + "body": { + "name": "firewallPolicy", + "id": "/subscriptions/e747cc13-97d4-4a79-b463-42d7f4e558f2/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "ruleCollections": [ + { + "ruleCollectionType": "FirewallPolicyFilterRuleCollection", + "name": "Example-Filter-Rule-Collection", + "action": { + "type": "Deny" + }, + "rules": [ + { + "ruleType": "ApplicationRule", + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ], + "webCategories": [ + "Hacking" + ] + } + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/GenerateExpressRoutePortsLOA.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/GenerateExpressRoutePortsLOA.json new file mode 100644 index 000000000000..1ed658af3789 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/GenerateExpressRoutePortsLOA.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2021-02-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName", + "request": { + "customerName": "customerName" + } + }, + "responses": { + "200": { + "description": "Request successful. Returns the content as a base64 encoded string", + "body": { + "encodedContent": "TWFuIGlzIGRpc3" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/GenerateVirtualWanVpnServerConfigurationVpnProfile.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/GenerateVirtualWanVpnServerConfigurationVpnProfile.json new file mode 100644 index 000000000000..1532aa5990e8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/GenerateVirtualWanVpnServerConfigurationVpnProfile.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualWANName": "wan1", + "vpnClientParams": { + "vpnServerConfigurationResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnconfig1", + "authenticationMethod": "EAPTLS" + } + }, + "responses": { + "202": {}, + "200": { + "body": "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/GetVirtualWanVpnServerConfigurations.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/GetVirtualWanVpnServerConfigurations.json new file mode 100644 index 000000000000..8462fedf3d19 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/GetVirtualWanVpnServerConfigurations.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "virtualWANName": "wan1" + }, + "responses": { + "200": { + "description": "Request successful.", + "body": { + "vpnServerConfigurationResourceIds": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnconfig1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnconfig2" + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/HubRouteTableDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/HubRouteTableDelete.json new file mode 100644 index 000000000000..e13a75a72e52 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/HubRouteTableDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "routeTableName": "hubRouteTable1", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid", + "virtualHubName": "virtualHub1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/HubRouteTableGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/HubRouteTableGet.json new file mode 100644 index 000000000000..28473ef73ee6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/HubRouteTableGet.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "routeTableName": "hubRouteTable1", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid", + "virtualHubName": "virtualHub1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "hubRouteTable1", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "name": "route1", + "destinationType": "CIDR", + "destinations": [ + "10.0.0.0/8", + "20.0.0.0/8", + "30.0.0.0/8" + ], + "nextHopType": "ResourceId", + "nextHop": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azureFirewall1" + } + ], + "labels": [ + "label1", + "label2" + ], + "associatedConnections": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubVirtualNetworkConnections/vnetConnn1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubVirtualNetworkConnections/vnetConnn2" + ], + "propagatingConnections": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteGateways/erg1/expressRouteConnections/erConn1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/vpngw1/vpnConnections/vpnConn2" + ] + }, + "type": "Microsoft.Network/virtualHubs/hubRouteTables" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/HubRouteTableList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/HubRouteTableList.json new file mode 100644 index 000000000000..16058604b6c2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/HubRouteTableList.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": [ + { + "name": "hubRouteTable1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "name": "route1a", + "destinationType": "CIDR", + "destinations": [ + "10.0.0.0/8", + "20.0.0.0/8", + "30.0.0.0/8" + ], + "nextHopType": "ResourceId", + "nextHop": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azureFirewall1" + } + ], + "labels": [ + "label1", + "label2" + ], + "associatedConnections": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubVirtualNetworkConnections/vnetConnn1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubVirtualNetworkConnections/vnetConnn2" + ], + "propagatingConnections": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteGateways/erg1/expressRouteConnections/erConn1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/vpngw1/vpnConnections/vpnConn2" + ] + }, + "type": "Microsoft.Network/virtualHubs/hubRouteTables" + }, + { + "name": "hubRouteTable2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "name": "route2a", + "destinationType": "CIDR", + "destinations": [ + "40.0.0.0/8", + "50.0.0.0/8", + "60.0.0.0/8" + ], + "nextHopType": "ResourceId", + "nextHop": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/hubVirtualNetworkConnections/vn1" + } + ], + "labels": [ + "label3" + ], + "associatedConnections": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubVirtualNetworkConnections/vnetConnn3", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubVirtualNetworkConnections/vnetConnn4" + ], + "propagatingConnections": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteGateways/erg1/expressRouteConnections/erConn2", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/vpngw1/vpnConnections/vpnConn1" + ] + }, + "type": "Microsoft.Network/virtualHubs/hubRouteTables" + } + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/HubRouteTablePut.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/HubRouteTablePut.json new file mode 100644 index 000000000000..f580f0238b32 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/HubRouteTablePut.json @@ -0,0 +1,104 @@ +{ + "parameters": { + "routeTableName": "hubRouteTable1", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid", + "virtualHubName": "virtualHub1", + "routeTableParameters": { + "properties": { + "routes": [ + { + "name": "route1", + "destinationType": "CIDR", + "destinations": [ + "10.0.0.0/8", + "20.0.0.0/8", + "30.0.0.0/8" + ], + "nextHopType": "ResourceId", + "nextHop": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azureFirewall1" + } + ], + "labels": [ + "label1", + "label2" + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "hubRouteTable1", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "name": "route1", + "destinationType": "CIDR", + "destinations": [ + "10.0.0.0/8", + "20.0.0.0/8", + "30.0.0.0/8" + ], + "nextHopType": "ResourceId", + "nextHop": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azureFirewall1" + } + ], + "labels": [ + "label1", + "label2" + ], + "associatedConnections": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubVirtualNetworkConnections/vnetConnn1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubVirtualNetworkConnections/vnetConnn2" + ], + "propagatingConnections": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteGateways/erg1/expressRouteConnections/erConn1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/vpngw1/vpnConnections/vpnConn2" + ] + }, + "type": "Microsoft.Network/virtualHubs/hubRouteTables" + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/routeTables/virtualHubRouteTable1a", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "hubRouteTable1", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "name": "route1", + "destinationType": "CIDR", + "destinations": [ + "10.0.0.0/8", + "20.0.0.0/8", + "30.0.0.0/8" + ], + "nextHopType": "ResourceId", + "nextHop": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azureFirewall1" + } + ], + "labels": [ + "label1", + "label2" + ], + "associatedConnections": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubVirtualNetworkConnections/vnetConnn1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubVirtualNetworkConnections/vnetConnn2" + ], + "propagatingConnections": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteGateways/erg1/expressRouteConnections/erConn1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/vpngw1/vpnConnections/vpnConn2" + ] + }, + "type": "Microsoft.Network/virtualHubs/hubRouteTables" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/HubVirtualNetworkConnectionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/HubVirtualNetworkConnectionDelete.json new file mode 100644 index 000000000000..33c1ac8b4a52 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/HubVirtualNetworkConnectionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "connectionName": "connection1", + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/HubVirtualNetworkConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/HubVirtualNetworkConnectionGet.json new file mode 100644 index 000000000000..b6589df3383d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/HubVirtualNetworkConnectionGet.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "connectionName": "connection1", + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "connection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/virtualHubVnetConnections/connection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1" + }, + "enableInternetSecurity": false, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [ + { + "name": "route1", + "addressPrefixes": [ + "10.1.0.0/16", + "10.2.0.0/16" + ], + "nextHopIpAddress": "10.0.0.68" + }, + { + "name": "route2", + "addressPrefixes": [ + "10.3.0.0/16", + "10.4.0.0/16" + ], + "nextHopIpAddress": "10.0.0.65" + } + ] + } + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/HubVirtualNetworkConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/HubVirtualNetworkConnectionList.json new file mode 100644 index 000000000000..094801df1e7f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/HubVirtualNetworkConnectionList.json @@ -0,0 +1,123 @@ +{ + "parameters": { + "connectionName": "connection1", + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": [ + { + "name": "connection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/virtualHubVnetConnections/connection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1" + }, + "enableInternetSecurity": false, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [ + { + "name": "route1", + "addressPrefixes": [ + "10.1.0.0/16", + "10.2.0.0/16" + ], + "nextHopIpAddress": "10.0.0.68" + }, + { + "name": "route2", + "addressPrefixes": [ + "10.3.0.0/16", + "10.4.0.0/16" + ], + "nextHopIpAddress": "10.0.0.65" + } + ] + } + } + } + }, + { + "name": "connection2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/virtualHubVnetConnections/connection2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2" + }, + "enableInternetSecurity": false, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [ + { + "name": "route1", + "addressPrefixes": [ + "10.1.0.0/16", + "10.2.0.0/16" + ], + "nextHopIpAddress": "10.0.0.68" + }, + { + "name": "route2", + "addressPrefixes": [ + "10.3.0.0/16", + "10.4.0.0/16" + ], + "nextHopIpAddress": "10.0.0.65" + } + ] + } + } + } + } + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/HubVirtualNetworkConnectionPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/HubVirtualNetworkConnectionPut.json new file mode 100644 index 000000000000..0df5729ceb27 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/HubVirtualNetworkConnectionPut.json @@ -0,0 +1,155 @@ +{ + "parameters": { + "connectionName": "connection1", + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid", + "hubVirtualNetworkConnectionParameters": { + "properties": { + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/SpokeVnet1" + }, + "enableInternetSecurity": false, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [ + { + "name": "route1", + "addressPrefixes": [ + "10.1.0.0/16", + "10.2.0.0/16" + ], + "nextHopIpAddress": "10.0.0.68" + }, + { + "name": "route2", + "addressPrefixes": [ + "10.3.0.0/16", + "10.4.0.0/16" + ], + "nextHopIpAddress": "10.0.0.65" + } + ] + } + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "connection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubVirtualNetworkConnections/connection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Updating", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/SpokeVnet1" + }, + "enableInternetSecurity": false, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [ + { + "name": "route1", + "addressPrefixes": [ + "10.1.0.0/16", + "10.2.0.0/16" + ], + "nextHopIpAddress": "10.0.0.68" + }, + { + "name": "route2", + "addressPrefixes": [ + "10.3.0.0/16", + "10.4.0.0/16" + ], + "nextHopIpAddress": "10.0.0.65" + } + ] + } + } + } + } + }, + "201": { + "body": { + "name": "connection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubVirtualNetworkConnections/connection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Updating", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/SpokeVnet1" + }, + "enableInternetSecurity": false, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [ + { + "name": "route1", + "addressPrefixes": [ + "10.1.0.0/16", + "10.2.0.0/16" + ], + "nextHopIpAddress": "10.0.0.68" + }, + { + "name": "route2", + "addressPrefixes": [ + "10.3.0.0/16", + "10.4.0.0/16" + ], + "nextHopIpAddress": "10.0.0.65" + } + ] + } + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/InboundNatRuleCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/InboundNatRuleCreate.json new file mode 100644 index 000000000000..c653b8dfec63 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/InboundNatRuleCreate.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2021-02-01", + "subscriptionId": "subid", + "loadBalancerName": "lb1", + "inboundNatRuleName": "natRule1.1", + "inboundNatRuleParameters": { + "properties": { + "protocol": "Tcp", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1" + }, + "frontendPort": 3390, + "backendPort": 3389, + "idleTimeoutInMinutes": 4, + "enableTcpReset": false, + "enableFloatingIP": false + } + } + }, + "responses": { + "200": { + "body": { + "name": "natRule1.1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natRule1.1", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1" + }, + "frontendPort": 3390, + "backendPort": 3389, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 4, + "protocol": "Tcp", + "enableTcpReset": false, + "backendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + } + } + } + }, + "201": { + "body": { + "name": "natRule1.1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natRule1.1", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1" + }, + "frontendPort": 3390, + "backendPort": 3389, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 4, + "protocol": "Tcp", + "enableTcpReset": false, + "backendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/InboundNatRuleDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/InboundNatRuleDelete.json new file mode 100644 index 000000000000..6708db48c497 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/InboundNatRuleDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2021-02-01", + "subscriptionId": "subid", + "loadBalancerName": "lb1", + "inboundNatRuleName": "natRule1.1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/InboundNatRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/InboundNatRuleGet.json new file mode 100644 index 000000000000..217c50f500e0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/InboundNatRuleGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2021-02-01", + "subscriptionId": "subid", + "loadBalancerName": "lb1", + "inboundNatRuleName": "natRule1.1" + }, + "responses": { + "200": { + "body": { + "name": "natRule1.1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natRule1.1", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1" + }, + "frontendPort": 3390, + "backendPort": 3389, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 4, + "protocol": "Tcp", + "enableTcpReset": true, + "backendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/InboundNatRuleList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/InboundNatRuleList.json new file mode 100644 index 000000000000..fc0a793dc679 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/InboundNatRuleList.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2021-02-01", + "subscriptionId": "subid", + "loadBalancerName": "lb1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "natRule1.1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natRule1.1", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1" + }, + "frontendPort": 3390, + "backendPort": 3389, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 4, + "protocol": "Tcp", + "enableTcpReset": true, + "backendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + } + } + }, + { + "name": "natRule1.3", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natRule1.3", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1" + }, + "frontendPort": 3392, + "backendPort": 3389, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 4, + "protocol": "Tcp", + "enableTcpReset": true, + "backendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/3/networkInterfaces/nic1/ipConfigurations/ip1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/InboundSecurityRulePut.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/InboundSecurityRulePut.json new file mode 100644 index 000000000000..558596951a0b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/InboundSecurityRulePut.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "ruleCollectionName": "rule1", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkVirtualApplianceName": "nva", + "parameters": { + "properties": { + "rules": [ + { + "protocol": "TCP", + "sourceAddressPrefix": "50.20.121.5/32", + "destinationPortRange": 22 + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva/InboundSecurityRules/rule1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "protocol": "TCP", + "sourceAddressPrefix": "50.20.121.5/32", + "destinationPortRange": 22 + } + ] + } + } + }, + "201": { + "body": { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva/InboundSecurityRules/rule1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "protocol": "TCP", + "sourceAddressPrefix": "50.20.121.5/32", + "destinationPortRange": 22 + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/IpAllocationCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/IpAllocationCreate.json new file mode 100644 index 000000000000..15b3b471d216 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/IpAllocationCreate.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ipAllocationName": "test-ipallocation", + "parameters": { + "properties": { + "type": "Hypernet", + "prefix": "3.2.5.0/24", + "allocationTags": { + "VNetID": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet1" + } + }, + "location": "centraluseuap" + } + }, + "responses": { + "200": { + "body": { + "name": "test-ipallocation", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/IpAllocations/test-ipallocation", + "type": "Microsoft.Network/IpAllocations", + "location": "centraluseuap", + "properties": { + "type": "Hypernet", + "prefix": "3.2.5.0/24", + "ipamAllocationId": "916d3b28-663f-448b-9abc-1bea9d5fed8f", + "allocationTags": { + "VNetID": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet1" + } + } + } + }, + "201": { + "body": { + "name": "test-ipallocation", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/IpAllocations/test-ipallocation", + "type": "Microsoft.Network/IpAllocations", + "location": "centraluseuap", + "properties": { + "type": "Hypernet", + "prefix": "3.2.5.0/24", + "ipamAllocationId": "916d3b28-663f-448b-9abc-1bea9d5fed8f", + "allocationTags": { + "VNetID": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/IpAllocationDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/IpAllocationDelete.json new file mode 100644 index 000000000000..e5bcff011f90 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/IpAllocationDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ipAllocationName": "test-ipallocation" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/IpAllocationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/IpAllocationGet.json new file mode 100644 index 000000000000..ddbb22ad5c49 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/IpAllocationGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ipAllocationName": "test-ipallocation" + }, + "responses": { + "200": { + "body": { + "name": "test-ipallocation", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/IpAllocations/test-ipallocation", + "type": "Microsoft.Network/IpAllocations", + "location": "centraluseuap", + "properties": { + "type": "Hypernet", + "prefix": "3.2.5.0/24", + "ipamAllocationId": "916d3b28-663f-448b-9abc-1bea9d5fed8f", + "allocationTags": { + "VNetID": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/IpAllocationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/IpAllocationList.json new file mode 100644 index 000000000000..bfc535e7dd9d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/IpAllocationList.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-ipallocation1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/IpAllocations/test-ipallocation1", + "type": "Microsoft.Network/IpAllocations", + "location": "centraluseuap", + "properties": { + "type": "Hypernet", + "prefix": "3.2.5.0/24", + "ipamAllocationId": "916d3b28-663f-448b-9abc-1bea9d5fed8f", + "allocationTags": { + "VNetID": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet1" + } + } + }, + { + "name": "test-ipallocation2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/IpAllocations/test-ipallocation2", + "type": "Microsoft.Network/IpAllocations", + "location": "centraluseuap", + "properties": { + "type": "Hypernet", + "prefix": "3.2.6.0/24", + "ipamAllocationId": "57dc7256-2ff7-43f2-b9c8-85a70b5c6408", + "allocationTags": { + "VNetID": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet2" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/IpAllocationListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/IpAllocationListByResourceGroup.json new file mode 100644 index 000000000000..fe7756fc8ce2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/IpAllocationListByResourceGroup.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-ipallocation1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/IpAllocations/test-ipallocation1", + "type": "Microsoft.Network/IpAllocations", + "location": "centraluseuap", + "properties": { + "type": "Hypernet", + "prefix": "3.2.5.0/24", + "ipamAllocationId": "916d3b28-663f-448b-9abc-1bea9d5fed8f", + "allocationTags": { + "VNetID": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet1" + } + } + }, + { + "name": "test-ipallocation2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/IpAllocations/test-ipallocation2", + "type": "Microsoft.Network/IpAllocations", + "location": "centraluseuap", + "properties": { + "type": "Hypernet", + "prefix": "3.2.6.0/24", + "ipamAllocationId": "57dc7256-2ff7-43f2-b9c8-85a70b5c6408", + "allocationTags": { + "VNetID": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet2" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/IpAllocationUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/IpAllocationUpdateTags.json new file mode 100644 index 000000000000..6fa0b553f1ca --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/IpAllocationUpdateTags.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ipAllocationName": "test-ipallocation", + "location": "centraluseuap", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-ipallocation", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/IpAllocations/test-ipallocation", + "type": "Microsoft.Network/IpAllocations", + "location": "centraluseuap", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "type": "Hypernet", + "prefix": "3.2.5.0/24", + "ipamAllocationId": "916d3b28-663f-448b-9abc-1bea9d5fed8f", + "allocationTags": { + "VNetID": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/IpGroupsCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/IpGroupsCreate.json new file mode 100644 index 000000000000..db5daf78dbe3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/IpGroupsCreate.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subId", + "resourceGroupName": "myResourceGroup", + "ipGroupsName": "ipGroups1", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "properties": { + "ipAddresses": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "ipGroups1", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1", + "type": "Microsoft.Network/ipGroups", + "location": "westcentralus", + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ], + "firewallPolicies": [] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + } + }, + "201": { + "body": { + "name": "ipGroups1", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1", + "type": "Microsoft.Network/ipGroups", + "location": "westcentralus", + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ], + "firewallPolicies": [] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/IpGroupsDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/IpGroupsDelete.json new file mode 100644 index 000000000000..1ec2996a1534 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/IpGroupsDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subId", + "resourceGroupName": "myResourceGroup", + "ipGroupsName": "ipGroups1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/IpGroupsGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/IpGroupsGet.json new file mode 100644 index 000000000000..69d7ce97ac73 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/IpGroupsGet.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subId", + "resourceGroupName": "myResourceGroup", + "ipGroupsName": "ipGroups1" + }, + "responses": { + "200": { + "body": { + "name": "ipGroups1", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1", + "type": "Microsoft.Network/ipGroups", + "location": "westcentralus", + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ], + "firewallPolicies": [] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/IpGroupsListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/IpGroupsListByResourceGroup.json new file mode 100644 index 000000000000..3eff97b490e9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/IpGroupsListByResourceGroup.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subId", + "resourceGroupName": "myResourceGroup" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "ipGroups1", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups", + "type": "Microsoft.Network/ipGroups", + "location": "westcentralus", + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ], + "firewallPolicies": [] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + }, + { + "name": "ipGroups2", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups", + "type": "Microsoft.Network/ipGroups", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "14.64.39.16/32", + "41.74.146.80/31", + "42.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ], + "firewallPolicies": [] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/IpGroupsListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/IpGroupsListBySubscription.json new file mode 100644 index 000000000000..e47a6f42afc6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/IpGroupsListBySubscription.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "iptag1", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup1/ipGroups", + "type": "Microsoft.Network/ipGroups", + "location": "westcentralus", + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ], + "firewallPolicies": [] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + }, + { + "name": "iptag2", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup2/ipGroups", + "type": "Microsoft.Network/ipGroups", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "14.64.39.16/32", + "41.74.146.80/31", + "42.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ], + "firewallPolicies": [] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/IpGroupsUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/IpGroupsUpdateTags.json new file mode 100644 index 000000000000..9d91477771c7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/IpGroupsUpdateTags.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "ipGroupsName": "ipGroups1", + "resourceGroupName": "myResourceGroup", + "api-version": "2021-02-01", + "subscriptionId": "subId", + "parameters": { + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "ipGroups1", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1", + "type": "Microsoft.Network/ipGroups", + "location": "westcentralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ], + "firewallPolicies": [] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LBBackendAddressPoolListWithBackendAddressesPoolType.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LBBackendAddressPoolListWithBackendAddressesPoolType.json new file mode 100644 index 000000000000..7ce9453909b1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LBBackendAddressPoolListWithBackendAddressesPoolType.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "api-version": "2021-02-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "backend", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/backend", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "properties": { + "provisioningState": "Succeeded", + "loadBalancerBackendAddresses": [ + { + "name": "address1", + "properties": { + "virtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb" + }, + "ipAddress": "10.0.0.4" + } + }, + { + "name": "address2", + "properties": { + "virtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb" + }, + "ipAddress": "10.0.0.5" + } + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LBBackendAddressPoolWithBackendAddressesGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LBBackendAddressPoolWithBackendAddressesGet.json new file mode 100644 index 000000000000..7c9fae20205b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LBBackendAddressPoolWithBackendAddressesGet.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "backendAddressPoolName": "backend", + "api-version": "2021-02-01" + }, + "responses": { + "200": { + "body": { + "name": "backend", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/backend", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "properties": { + "provisioningState": "Succeeded", + "loadBalancerBackendAddresses": [ + { + "name": "address1", + "properties": { + "virtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb" + }, + "ipAddress": "10.0.0.4" + } + }, + { + "name": "address2", + "properties": { + "virtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb" + }, + "ipAddress": "10.0.0.5" + } + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LBBackendAddressPoolWithBackendAddressesPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LBBackendAddressPoolWithBackendAddressesPut.json new file mode 100644 index 000000000000..4aa2d2475fb2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LBBackendAddressPoolWithBackendAddressesPut.json @@ -0,0 +1,107 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "backendAddressPoolName": "backend", + "api-version": "2021-02-01", + "parameters": { + "properties": { + "loadBalancerBackendAddresses": [ + { + "name": "address1", + "properties": { + "virtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb" + }, + "ipAddress": "10.0.0.4" + } + }, + { + "name": "address2", + "properties": { + "virtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb" + }, + "ipAddress": "10.0.0.5" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "backend", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/backend", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "properties": { + "provisioningState": "Succeeded", + "loadBalancerBackendAddresses": [ + { + "name": "address1", + "properties": { + "virtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb" + }, + "ipAddress": "10.0.0.4" + } + }, + { + "name": "address2", + "properties": { + "virtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb" + }, + "ipAddress": "10.0.0.5" + } + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + }, + "201": { + "body": { + "name": "backend", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/backend", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "properties": { + "provisioningState": "Succeeded", + "loadBalancerBackendAddresses": [ + { + "name": "address1", + "properties": { + "virtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb" + }, + "ipAddress": "10.0.0.4" + } + }, + { + "name": "address2", + "properties": { + "virtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb" + }, + "ipAddress": "10.0.0.5" + } + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerBackendAddressPoolDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerBackendAddressPoolDelete.json new file mode 100644 index 000000000000..3b2fd3eaa9fb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerBackendAddressPoolDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "backendAddressPoolName": "backend", + "api-version": "2021-02-01" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerBackendAddressPoolGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerBackendAddressPoolGet.json new file mode 100644 index 000000000000..dc40b3760d93 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerBackendAddressPoolGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "backendAddressPoolName": "backend", + "api-version": "2021-02-01" + }, + "responses": { + "200": { + "body": { + "name": "backend", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/backend", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "properties": { + "provisioningState": "Succeeded", + "backendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/nic/ipConfigurations/default-ip-config" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerBackendAddressPoolList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerBackendAddressPoolList.json new file mode 100644 index 000000000000..6ece32c2176d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerBackendAddressPoolList.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "api-version": "2021-02-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "backend", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/backend", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "properties": { + "provisioningState": "Succeeded", + "backendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/nic/ipConfigurations/default-ip-config" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerCreate.json new file mode 100644 index 000000000000..52a930ccbe78 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerCreate.json @@ -0,0 +1,339 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "location": "eastus", + "properties": { + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "properties": {} + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "properties": { + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2 + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false + } + } + ], + "inboundNatPools": [] + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false + } + } + ], + "inboundNatPools": [] + } + } + }, + "201": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false + } + } + ], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerCreateGatewayLoadBalancerConsumer.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerCreateGatewayLoadBalancerConsumer.json new file mode 100644 index 000000000000..705b6e7b873a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerCreateGatewayLoadBalancerConsumer.json @@ -0,0 +1,348 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "gatewayLoadBalancer": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb-provider" + } + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "properties": {} + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "properties": { + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2 + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "inboundNatPools": [], + "outboundRules": [] + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ], + "gatewayLoadBalancer": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb-provider" + } + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + }, + "201": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ], + "gatewayLoadBalancer": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb-provider" + } + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerCreateGatewayLoadBalancerProviderWithOneBackendPool.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerCreateGatewayLoadBalancerProviderWithOneBackendPool.json new file mode 100644 index 000000000000..a95282acc90a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerCreateGatewayLoadBalancerProviderWithOneBackendPool.json @@ -0,0 +1,330 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "location": "eastus", + "sku": { + "name": "Premium" + }, + "properties": { + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "properties": { + "tunnelInterfaces": [ + { + "port": 15000, + "identifier": 900, + "protocol": "VXLAN", + "type": "Internal" + }, + { + "port": 15001, + "identifier": 901, + "protocol": "VXLAN", + "type": "Internal" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 0, + "backendPort": 0, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "All", + "loadDistribution": "Default", + "backendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + } + ], + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "properties": { + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2 + } + } + ], + "inboundNatPools": [], + "outboundRules": [] + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "tunnelInterfaces": [ + { + "port": 15000, + "identifier": 900, + "protocol": "VXLAN", + "type": "Internal" + }, + { + "port": 15001, + "identifier": 901, + "protocol": "VXLAN", + "type": "Internal" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + } + ], + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + }, + "201": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "tunnelInterfaces": [ + { + "port": 15000, + "identifier": 900, + "protocol": "VXLAN", + "type": "Internal" + }, + { + "port": 15001, + "identifier": 901, + "protocol": "VXLAN", + "type": "Internal" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + } + ], + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerCreateGatewayLoadBalancerProviderWithTwoBackendPool.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerCreateGatewayLoadBalancerProviderWithTwoBackendPool.json new file mode 100644 index 000000000000..5c2680ddbe73 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerCreateGatewayLoadBalancerProviderWithTwoBackendPool.json @@ -0,0 +1,361 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "location": "eastus", + "sku": { + "name": "Premium" + }, + "properties": { + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb1", + "properties": {} + }, + { + "name": "be-lb2", + "properties": {} + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 0, + "backendPort": 0, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "All", + "loadDistribution": "Default", + "backendAddressPool": {}, + "backendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb2" + } + ], + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "properties": { + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2 + } + } + ], + "inboundNatPools": [], + "outboundRules": [] + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb1", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "tunnelInterfaces": [ + { + "port": 15000, + "identifier": 900, + "protocol": "VXLAN", + "type": "Internal" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + }, + { + "name": "be-lb2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb2", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "tunnelInterfaces": [ + { + "port": 15001, + "identifier": 901, + "protocol": "VXLAN", + "type": "Internal" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 0, + "backendPort": 0, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb2" + } + ], + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + }, + "201": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb1", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "tunnelInterfaces": [ + { + "port": 15000, + "identifier": 900, + "protocol": "VXLAN", + "type": "Internal" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + }, + { + "name": "be-lb2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb2", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "tunnelInterfaces": [ + { + "port": 15001, + "identifier": 901, + "protocol": "VXLAN", + "type": "Internal" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb2" + } + ], + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerCreateGlobalTier.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerCreateGlobalTier.json new file mode 100644 index 000000000000..e5cd4e00acd1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerCreateGlobalTier.json @@ -0,0 +1,314 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "location": "eastus", + "sku": { + "name": "Standard", + "tier": "Global" + }, + "properties": { + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "properties": { + "loadBalancerBackendAddresses": [ + { + "name": "regional-lb1-address", + "properties": { + "loadBalancerFrontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/regional-lb-rg1/providers/Microsoft.Network/loadBalancers/regional-lb/frontendIPConfigurations/fe-rlb" + } + } + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "properties": { + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2 + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard", + "tier": "Global" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "loadBalancerBackendAddresses": [ + { + "name": "regional-lb1-address", + "properties": { + "loadBalancerFrontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/regional-lb-rg1/providers/Microsoft.Network/loadBalancers/regional-lb/frontendIPConfigurations/fe-rlb" + } + } + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ] + } + } + }, + "201": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard", + "tier": "Global" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "loadBalancerBackendAddresses": [ + { + "name": "regional-lb1-address", + "properties": { + "loadBalancerFrontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/regional-lb-rg1/providers/Microsoft.Network/loadBalancers/regional-lb/frontendIPConfigurations/fe-rlb" + } + } + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerCreateStandardSku.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerCreateStandardSku.json new file mode 100644 index 000000000000..550460a8405e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerCreateStandardSku.json @@ -0,0 +1,339 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "properties": {} + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "properties": { + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2 + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "inboundNatPools": [], + "outboundRules": [] + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + }, + "201": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerCreateWithInboundNatPool.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerCreateWithInboundNatPool.json new file mode 100644 index 000000000000..9c4cf7a45963 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerCreateWithInboundNatPool.json @@ -0,0 +1,180 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "frontendIPConfigurations": [ + { + "properties": { + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/lbvnet/subnets/lbsubnet" + } + }, + "name": "test", + "zones": [], + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test" + } + ], + "backendAddressPools": [], + "loadBalancingRules": [], + "probes": [], + "inboundNatRules": [], + "outboundRules": [], + "inboundNatPools": [ + { + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test" + }, + "protocol": "Tcp", + "frontendPortRangeStart": 8080, + "frontendPortRangeEnd": 8085, + "backendPort": 8888, + "idleTimeoutInMinutes": 10, + "enableFloatingIP": true, + "enableTcpReset": true + }, + "name": "test", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatPools/test" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "test", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/lbvnet/subnets/lbsubnet" + }, + "inboundNatPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatPools/test" + } + ] + } + } + ], + "backendAddressPools": [], + "loadBalancingRules": [], + "probes": [], + "inboundNatRules": [], + "outboundRules": [], + "inboundNatPools": [ + { + "name": "test", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatPools/test", + "type": "Microsoft.Network/loadBalancers/inboundNatPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendPortRangeStart": 8080, + "frontendPortRangeEnd": 8085, + "backendPort": 8888, + "idleTimeoutInMinutes": 10, + "enableFloatingIP": true, + "protocol": "Tcp", + "enableTcpReset": true, + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test" + } + } + } + ] + } + } + }, + "201": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "test", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/lbvnet/subnets/lbsubnet" + }, + "inboundNatPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatPools/test" + } + ] + } + } + ], + "backendAddressPools": [], + "loadBalancingRules": [], + "probes": [], + "inboundNatRules": [], + "outboundRules": [], + "inboundNatPools": [ + { + "name": "test", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatPools/test", + "type": "Microsoft.Network/loadBalancers/inboundNatPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendPortRangeStart": 8080, + "frontendPortRangeEnd": 8085, + "backendPort": 8888, + "idleTimeoutInMinutes": 10, + "enableFloatingIP": true, + "protocol": "Tcp", + "enableTcpReset": true, + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test" + } + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerCreateWithOutboundRules.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerCreateWithOutboundRules.json new file mode 100644 index 000000000000..b539e5fee619 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerCreateWithOutboundRules.json @@ -0,0 +1,423 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "properties": { + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pip" + } + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "properties": {} + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "protocol": "Tcp", + "loadDistribution": "Default", + "frontendPort": 80, + "backendPort": 80, + "idleTimeoutInMinutes": 15, + "enableFloatingIP": true, + "disableOutboundSnat": true + } + } + ], + "probes": [ + { + "name": "probe-lb", + "properties": { + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2 + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "inboundNatPools": [], + "outboundRules": [ + { + "name": "rule1", + "properties": { + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ], + "protocol": "All" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pip" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ], + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ], + "privateIPAddressVersion": "IPv4" + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false, + "loadDistribution": "Default", + "disableOutboundSnat": true, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false + } + } + ], + "outboundRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1", + "type": "Microsoft.Network/loadBalancers/outboundRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "allocatedOutboundPorts": 1024, + "protocol": "All", + "enableTcpReset": false, + "idleTimeoutInMinutes": 4, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ] + } + } + ], + "inboundNatPools": [] + } + } + }, + "201": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pip" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ], + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ], + "privateIPAddressVersion": "IPv4" + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false, + "loadDistribution": "Default", + "disableOutboundSnat": true, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false + } + } + ], + "outboundRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1", + "type": "Microsoft.Network/loadBalancers/outboundRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "allocatedOutboundPorts": 1024, + "protocol": "All", + "enableTcpReset": false, + "idleTimeoutInMinutes": 4, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ] + } + } + ], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerCreateWithZones.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerCreateWithZones.json new file mode 100644 index 000000000000..8943784d46e2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerCreateWithZones.json @@ -0,0 +1,348 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + }, + "zones": [ + "1" + ] + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "properties": {} + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "properties": { + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2 + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "inboundNatPools": [], + "outboundRules": [] + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "zones": [ + "1" + ], + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + }, + "201": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "zones": [ + "1" + ], + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerDelete.json new file mode 100644 index 000000000000..b5f1ed056963 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerFrontendIPConfigurationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerFrontendIPConfigurationGet.json new file mode 100644 index 000000000000..e11b676c0b48 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerFrontendIPConfigurationGet.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "frontendIPConfigurationName": "frontend", + "api-version": "2021-02-01" + }, + "responses": { + "200": { + "body": { + "name": "frontend", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/frontend", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerFrontendIPConfigurationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerFrontendIPConfigurationList.json new file mode 100644 index 000000000000..062fc72032b4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerFrontendIPConfigurationList.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2021-02-01", + "subscriptionId": "subid", + "loadBalancerName": "lb" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "frontend", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/frontend", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerGet.json new file mode 100644 index 000000000000..58484ee65821 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerGet.json @@ -0,0 +1,139 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb" + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/probes", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true + } + } + ], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerList.json new file mode 100644 index 000000000000..b550a23dddf5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerList.json @@ -0,0 +1,161 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "felb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "belb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/belb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/belb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/prlb" + } + } + } + ], + "probes": [ + { + "name": "prlb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/prlb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/probes", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "inrlb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true + } + } + ], + "inboundNatPools": [] + } + }, + { + "name": "lb2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb2", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [], + "backendAddressPools": [], + "loadBalancingRules": [], + "probes": [], + "inboundNatRules": [], + "inboundNatPools": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerListAll.json new file mode 100644 index 000000000000..788aad55941e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerListAll.json @@ -0,0 +1,160 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "felb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "belb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/belb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/belb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/prlb" + } + } + } + ], + "probes": [ + { + "name": "prlb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/prlb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/probes", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "inrlb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true + } + } + ], + "inboundNatPools": [] + } + }, + { + "name": "lb3", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/loadBalancers/lb3", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [], + "backendAddressPools": [], + "loadBalancingRules": [], + "probes": [], + "inboundNatRules": [], + "inboundNatPools": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerLoadBalancingRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerLoadBalancingRuleGet.json new file mode 100644 index 000000000000..7a7f31178bd7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerLoadBalancingRuleGet.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb1", + "loadBalancingRuleName": "rule1", + "api-version": "2021-02-01" + }, + "responses": { + "200": { + "body": { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/loadBalancingRules/rule1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/lbfrontend" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/bepool1" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/probes/probe1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerLoadBalancingRuleList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerLoadBalancingRuleList.json new file mode 100644 index 000000000000..c375f1631ae6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerLoadBalancingRuleList.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb1", + "api-version": "2021-02-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/loadBalancingRules/rule1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/lbfrontend" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/bepool1" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/probes/probe1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerNetworkInterfaceListSimple.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerNetworkInterfaceListSimple.json new file mode 100644 index 000000000000..c212640e4de7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerNetworkInterfaceListSimple.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "api-version": "2021-02-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "mynic", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/ipConfigurations/ipconfig1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/myVirtualNetwork/subnets/frontendSubnet" + }, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/bepool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inbound1" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [] + }, + "enableAcceleratedNetworking": false, + "enableIPForwarding": false + }, + "type": "Microsoft.Network/networkInterfaces" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerNetworkInterfaceListVmss.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerNetworkInterfaceListVmss.json new file mode 100644 index 000000000000..355b059a7b32 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerNetworkInterfaceListVmss.json @@ -0,0 +1,112 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "api-version": "2021-02-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "vmss1Nic", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/vmss1Nic", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "vmss1IpConfig", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/vmss1Nic/ipConfigurations/vmss1IpConfig", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vmss1Vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/bepool" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/natpool.0" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "aaaaaaaaaaaaaaaaaaaaaaaaaa.dx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0" + } + } + }, + { + "name": "vmss1Nic", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/vmss1Nic", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "vmss1IpConfig", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/vmss1Nic/ipConfigurations/vmss1IpConfig", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.5", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vmss1Vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/bepool" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/natpool.1" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "aaaaaaaaaaaaaaaaaaaaaaaaaa.dx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerOutboundRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerOutboundRuleGet.json new file mode 100644 index 000000000000..6fe5a680104a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerOutboundRuleGet.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb1", + "outboundRuleName": "rule1", + "api-version": "2021-02-01" + }, + "responses": { + "200": { + "body": { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/outboundRules/rule1", + "type": "Microsoft.Network/loadBalancers/outboundRules", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/lbfrontend" + } + ], + "allocatedOutboundPorts": 64, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/bepool1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerOutboundRuleList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerOutboundRuleList.json new file mode 100644 index 000000000000..c69662aada36 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerOutboundRuleList.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb1", + "api-version": "2021-02-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/outboundRules/rule1", + "type": "Microsoft.Network/loadBalancers/outboundRules", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/lbfrontend" + } + ], + "allocatedOutboundPorts": 64, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/bepool1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerProbeGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerProbeGet.json new file mode 100644 index 000000000000..f12d293f9433 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerProbeGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "probeName": "probe1", + "api-version": "2021-02-01" + }, + "responses": { + "200": { + "body": { + "name": "probe1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/probes/probe1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/probes", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerProbeList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerProbeList.json new file mode 100644 index 000000000000..a18d172c9234 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerProbeList.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "api-version": "2021-02-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "prlb", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/probes/prlb", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/probes", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerUpdateTags.json new file mode 100644 index 000000000000..b60352dec2aa --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancerUpdateTags.json @@ -0,0 +1,132 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancersSwapPublicIpAddresses.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancersSwapPublicIpAddresses.json new file mode 100644 index 000000000000..ec111a82c748 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LoadBalancersSwapPublicIpAddresses.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "location": "westus", + "parameters": { + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/lbfe1", + "properties": { + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/publicIPAddresses/pip2" + } + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/loadBalancers/lb2/frontendIPConfigurations/lbfe2", + "properties": { + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pip1" + } + } + } + ] + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LocalNetworkGatewayCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LocalNetworkGatewayCreate.json new file mode 100644 index 000000000000..ca4f2405b262 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LocalNetworkGatewayCreate.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "localNetworkGatewayName": "localgw", + "parameters": { + "properties": { + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.1.0.0/16" + ] + }, + "gatewayIpAddress": "11.12.13.14", + "fqdn": "site1.contoso.com" + }, + "location": "Central US" + } + }, + "responses": { + "201": { + "body": { + "name": "localgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/localNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Updating", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.1.0.0/16" + ] + }, + "gatewayIpAddress": "11.12.13.14" + } + } + }, + "200": { + "body": { + "name": "localgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/localNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Updating", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.1.0.0/16" + ] + }, + "gatewayIpAddress": "11.12.13.14" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LocalNetworkGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LocalNetworkGatewayDelete.json new file mode 100644 index 000000000000..88dddf802a62 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LocalNetworkGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "localNetworkGatewayName": "localgw" + }, + "responses": { + "202": {}, + "200": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LocalNetworkGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LocalNetworkGatewayGet.json new file mode 100644 index 000000000000..8e84b8f01608 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LocalNetworkGatewayGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "localNetworkGatewayName": "localgw" + }, + "responses": { + "200": { + "body": { + "name": "localgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/localNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.1.0.0/16" + ] + }, + "gatewayIpAddress": "x.x.x.x" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LocalNetworkGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LocalNetworkGatewayList.json new file mode 100644 index 000000000000..7efa420f347b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LocalNetworkGatewayList.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "localgw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/localNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.1.0.0/16" + ] + }, + "gatewayIpAddress": "x.x.x.x" + } + }, + { + "name": "localgw2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/localNetworkGateways", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.2.0.0/16" + ] + }, + "gatewayIpAddress": "x.x.x.x" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LocalNetworkGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LocalNetworkGatewayUpdateTags.json new file mode 100644 index 000000000000..72f81f870c69 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/LocalNetworkGatewayUpdateTags.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "localNetworkGatewayName": "lgw", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "lgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/lgw", + "type": "Microsoft.Network/localNetworkGateways", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "localNetworkAddressSpace": { + "addressPrefixes": [ + "12.0.0.0/8" + ] + }, + "gatewayIpAddress": "12.0.0.1" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NatGatewayCreateOrUpdate.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NatGatewayCreateOrUpdate.json new file mode 100644 index 000000000000..2f42617776d1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NatGatewayCreateOrUpdate.json @@ -0,0 +1,89 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "natGatewayName": "test-natgateway", + "parameters": { + "location": "westus", + "sku": { + "name": "Standard" + }, + "properties": { + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-natGateway", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/natGateways/test-natGateway", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "type": "Microsoft.Network/natGateways" + } + }, + "201": { + "body": { + "name": "test-natGateway", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/natGateways/test-natGateway", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "type": "Microsoft.Network/natGateways" + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NatGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NatGatewayDelete.json new file mode 100644 index 000000000000..2101a3f981ac --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NatGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "natGatewayName": "test-natGateway" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NatGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NatGatewayGet.json new file mode 100644 index 000000000000..6318dc0b37d9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NatGatewayGet.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "natGatewayName": "test-natGateway" + }, + "responses": { + "200": { + "body": { + "name": "test-natGateway", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/natGateways/test-natGateway", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "type": "Microsoft.Network/natGateways" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NatGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NatGatewayList.json new file mode 100644 index 000000000000..03059e35e6c3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NatGatewayList.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-natGateway", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/natGateway/test-natGateway", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "type": "Microsoft.Network/natGateways" + }, + { + "name": "test-natGateway2", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/natGateway/test-natGateway2", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "type": "Microsoft.Network/natGateways" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NatGatewayListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NatGatewayListAll.json new file mode 100644 index 000000000000..57ba0696757f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NatGatewayListAll.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-natGateway", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/natGateways/test-natGateway", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "type": "Microsoft.Network/natGateways" + }, + { + "name": "test-natGateway2", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/natGatewayes/test-natGateway2", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "type": "Microsoft.Network/natGateways" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NatGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NatGatewayUpdateTags.json new file mode 100644 index 000000000000..90d65e3b4640 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NatGatewayUpdateTags.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "natGatewayName": "test-natGateway", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-natGateway", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/natGateways/test-natGateway", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "type": "Microsoft.Network/natGateways" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NatRuleDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NatRuleDelete.json new file mode 100644 index 000000000000..aca9abacde39 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NatRuleDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "natRuleName": "natRule1", + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NatRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NatRuleGet.json new file mode 100644 index 000000000000..7d9c46e6ee72 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NatRuleGet.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "natRuleName": "natRule1", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "natRule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/natRules/natRule1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "type": "Static", + "mode": "EgressSnat", + "internalMappings": [ + { + "addressSpace": "10.4.0.0/24" + } + ], + "externalMappings": [], + "egressVpnSiteLinkConnections": [], + "ingressVpnSiteLinkConnections": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NatRuleList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NatRuleList.json new file mode 100644 index 000000000000..6066a8fe6b13 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NatRuleList.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "api-version": "2021-02-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": [ + { + "name": "natRule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/natRules/natRule1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "type": "Static", + "mode": "EgressSnat", + "ipConfigurationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/cloudnet1-VNG/ipConfigurations/default", + "internalMappings": [ + { + "addressSpace": "10.4.0.0/24" + } + ], + "externalMappings": [ + { + "addressSpace": "192.168.21.0/24" + } + ], + "egressVpnSiteLinkConnections": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/vpnLinkConnections/vpnLinkConnection1" + } + ], + "ingressVpnSiteLinkConnections": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/vpnLinkConnections/vpnLinkConnection2" + } + ] + } + }, + { + "name": "natRule2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/natRules/natRule2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "type": "Static", + "mode": "EgressSnat", + "ipConfigurationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/cloudnet1-VNG1/ipConfigurations/default", + "internalMappings": [ + { + "addressSpace": "10.4.0.0/24" + } + ], + "externalMappings": [ + { + "addressSpace": "192.168.21.0/24" + } + ], + "egressVpnSiteLinkConnections": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/vpnLinkConnections/vpnLinkConnection1" + } + ], + "ingressVpnSiteLinkConnections": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/vpnLinkConnections/vpnLinkConnection2" + } + ] + } + } + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NatRulePut.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NatRulePut.json new file mode 100644 index 000000000000..0bd6e71bab0d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NatRulePut.json @@ -0,0 +1,94 @@ +{ + "parameters": { + "natRuleName": "natRule1", + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid", + "NatRuleParameters": { + "properties": { + "type": "Static", + "mode": "EgressSnat", + "ipConfigurationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/cloudnet1-VNG/ipConfigurations/default", + "internalMappings": [ + { + "addressSpace": "10.4.0.0/24" + } + ], + "externalMappings": [ + { + "addressSpace": "192.168.21.0/24" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "natRule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/natRules/natRule1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "type": "Static", + "mode": "EgressSnat", + "ipConfigurationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/cloudnet1-VNG/ipConfigurations/default", + "internalMappings": [ + { + "addressSpace": "10.4.0.0/24" + } + ], + "externalMappings": [ + { + "addressSpace": "192.168.21.0/24" + } + ], + "egressVpnSiteLinkConnections": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/vpnLinkConnections/vpnLinkConnection1" + } + ], + "ingressVpnSiteLinkConnections": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/vpnLinkConnections/vpnLinkConnection2" + } + ] + } + } + }, + "201": { + "body": { + "name": "natRule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/natRules/natRule1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "type": "Static", + "mode": "EgressSnat", + "ipConfigurationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/cloudnet1-VNG/ipConfigurations/default", + "internalMappings": [ + { + "addressSpace": "10.4.0.0/24" + } + ], + "externalMappings": [ + { + "addressSpace": "192.168.21.0/24" + } + ], + "egressVpnSiteLinkConnections": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/vpnLinkConnections/vpnLinkConnection1" + } + ], + "ingressVpnSiteLinkConnections": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/vpnLinkConnections/vpnLinkConnection2" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkInterfaceCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkInterfaceCreate.json new file mode 100644 index 000000000000..a99957027208 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkInterfaceCreate.json @@ -0,0 +1,101 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "test-nic", + "parameters": { + "properties": { + "enableAcceleratedNetworking": true, + "ipConfigurations": [ + { + "name": "ipconfig1", + "properties": { + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + } + } + } + ] + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "test-nic", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [] + }, + "enableAcceleratedNetworking": true, + "enableIPForwarding": false + }, + "type": "Microsoft.Network/networkInterfaces" + } + }, + "201": { + "body": { + "name": "test-nic", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [] + }, + "enableAcceleratedNetworking": true, + "enableIPForwarding": false + }, + "type": "Microsoft.Network/networkInterfaces" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkInterfaceCreateGatewayLoadBalancerConsumer.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkInterfaceCreateGatewayLoadBalancerConsumer.json new file mode 100644 index 000000000000..bd7459e3ccdc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkInterfaceCreateGatewayLoadBalancerConsumer.json @@ -0,0 +1,110 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "test-nic", + "parameters": { + "properties": { + "enableAcceleratedNetworking": true, + "ipConfigurations": [ + { + "name": "ipconfig1", + "properties": { + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "gatewayLoadBalancer": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb-provider" + } + } + } + ] + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "test-nic", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "gatewayLoadBalancer": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb-provider" + } + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [] + }, + "enableAcceleratedNetworking": true, + "enableIPForwarding": false + }, + "type": "Microsoft.Network/networkInterfaces" + } + }, + "201": { + "body": { + "name": "test-nic", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "gatewayLoadBalancer": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb-provider" + } + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [] + }, + "enableAcceleratedNetworking": true, + "enableIPForwarding": false + }, + "type": "Microsoft.Network/networkInterfaces" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkInterfaceDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkInterfaceDelete.json new file mode 100644 index 000000000000..3455853ccc5d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkInterfaceDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "test-nic" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkInterfaceEffectiveNSGList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkInterfaceEffectiveNSGList.json new file mode 100644 index 000000000000..c3e89795c7e4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkInterfaceEffectiveNSGList.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "nic1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/test-nsg" + }, + "association": { + "networkManager": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkManagers/nm1" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "networkInterface": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic1" + } + }, + "effectiveSecurityRules": [ + { + "name": "securityRules/rule1", + "protocol": "Tcp", + "sourcePortRange": "456-456", + "destinationPortRange": "6579-6579", + "sourceAddressPrefix": "0.0.0.0/32", + "destinationAddressPrefix": "0.0.0.0/32", + "access": "Allow", + "priority": 234, + "direction": "Inbound" + }, + { + "name": "securityRules/default-allow-rdp", + "protocol": "Tcp", + "sourcePortRange": "0-65535", + "destinationPortRange": "3389-3389", + "sourceAddressPrefix": "1.1.1.1/32", + "destinationAddressPrefix": "0.0.0.0/0", + "access": "Allow", + "priority": 1000, + "direction": "Inbound" + }, + { + "name": "defaultSecurityRules/AllowInternetOutBound", + "protocol": "All", + "sourcePortRange": "0-65535", + "destinationPortRange": "0-65535", + "sourceAddressPrefix": "0.0.0.0/0", + "destinationAddressPrefix": "Internet", + "expandedDestinationAddressPrefix": [ + "32.0.0.0/3", + "4.0.0.0/6", + "2.0.0.0/7", + "1.0.0.0/8" + ], + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + ] + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkInterfaceEffectiveRouteTableList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkInterfaceEffectiveRouteTableList.json new file mode 100644 index 000000000000..6cffac08e885 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkInterfaceEffectiveRouteTableList.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "nic1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "source": "Default", + "state": "Active", + "addressPrefix": [ + "172.20.2.0/24" + ], + "nextHopType": "VnetLocal", + "nextHopIpAddress": [] + }, + { + "source": "Default", + "state": "Active", + "addressPrefix": [ + "0.0.0.0/0" + ], + "nextHopType": "Internet", + "nextHopIpAddress": [] + }, + { + "source": "Default", + "state": "Active", + "addressPrefix": [ + "10.0.0.0/8" + ], + "nextHopType": "None", + "nextHopIpAddress": [] + }, + { + "source": "Default", + "state": "Active", + "addressPrefix": [ + "100.64.0.0/10" + ], + "nextHopType": "None", + "nextHopIpAddress": [] + }, + { + "source": "Default", + "state": "Active", + "addressPrefix": [ + "172.16.0.0/12" + ], + "nextHopType": "None", + "nextHopIpAddress": [] + }, + { + "source": "Default", + "state": "Active", + "addressPrefix": [ + "192.168.0.0/16" + ], + "nextHopType": "None", + "nextHopIpAddress": [] + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkInterfaceGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkInterfaceGet.json new file mode 100644 index 000000000000..abebc2fffefb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkInterfaceGet.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "test-nic" + }, + "responses": { + "200": { + "body": { + "name": "test-nic", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "test.bx.internal.cloudapp.net" + }, + "macAddress": "00-0D-3A-1B-C7-21", + "enableAcceleratedNetworking": true, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1" + }, + "dscpConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/dscpConfiguration/mydscpconfiguration" + } + }, + "type": "Microsoft.Network/networkInterfaces" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkInterfaceIPConfigurationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkInterfaceIPConfigurationGet.json new file mode 100644 index 000000000000..112ce96b8d93 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkInterfaceIPConfigurationGet.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "networkInterfaceName": "mynic", + "ipConfigurationName": "ipconfig1", + "api-version": "2021-02-01" + }, + "responses": { + "200": { + "body": { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/ipConfigurations/ipconfig1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/myVirtualNetwork/subnets/frontendSubnet" + }, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/backendAddressPools/bepool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/inboundNatRules/inbound1" + } + ], + "virtualNetworkTaps": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/vTAP1" + }, + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/vTAP2" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkInterfaceIPConfigurationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkInterfaceIPConfigurationList.json new file mode 100644 index 000000000000..87c33b9e8ce3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkInterfaceIPConfigurationList.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "networkInterfaceName": "nic1", + "api-version": "2021-02-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet12/subnets/subnet12" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkInterfaceList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkInterfaceList.json new file mode 100644 index 000000000000..b30b785ac4f9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkInterfaceList.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-nic", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "test.bx.internal.cloudapp.net" + }, + "macAddress": "00-0D-3A-1B-C7-21", + "enableAcceleratedNetworking": true, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + "type": "Microsoft.Network/networkInterfaces" + }, + { + "name": "test-nic2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic2", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic2/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip2" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet2/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [] + }, + "enableAcceleratedNetworking": true, + "enableIPForwarding": false + }, + "type": "Microsoft.Network/networkInterfaces" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkInterfaceListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkInterfaceListAll.json new file mode 100644 index 000000000000..5f9a5be02e9e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkInterfaceListAll.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-nic", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "test.bx.internal.cloudapp.net" + }, + "macAddress": "00-0D-3A-1B-C7-21", + "enableAcceleratedNetworking": true, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + "type": "Microsoft.Network/networkInterfaces" + }, + { + "name": "test-nic2", + "id": "/subscriptions/subid/resourceGroups/rgnew/providers/Microsoft.Network/networkInterfaces/test-nic2", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rgnew/providers/Microsoft.Network/networkInterfaces/test-nic2/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rgnew/providers/Microsoft.Network/publicIPAddresses/test-ip2" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rgnew/providers/Microsoft.Network/virtualNetworks/rgnew-vnet2/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [] + }, + "enableAcceleratedNetworking": true, + "enableIPForwarding": false + }, + "type": "Microsoft.Network/networkInterfaces" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkInterfaceLoadBalancerList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkInterfaceLoadBalancerList.json new file mode 100644 index 000000000000..02e25efc791c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkInterfaceLoadBalancerList.json @@ -0,0 +1,139 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "networkInterfaceName": "nic1", + "api-version": "2021-02-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "lbname1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "frontendIPConfigurations": [ + { + "name": "lbfrontend", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/frontendIPConfigurations/lbfrontend", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/publicIPAddresses/myDynamicPublicIP" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/loadBalancingRules/rule1" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/inboundNatRules/inbound1" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "bepool1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/backendAddressPools/bepool1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "backendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/loadBalancingRules/rule1" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/loadBalancingRules/rule1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/frontendIPConfigurations/lbfrontend" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/backendAddressPools/bepool1" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/probes/probe1" + } + } + } + ], + "probes": [ + { + "name": "probe1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/probes/probe1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/loadBalancingRules/rule1" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "inbound1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/inboundNatRules/inbound1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/frontendIPConfigurations/lbfrontend" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "backendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1" + } + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkInterfaceTapConfigurationCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkInterfaceTapConfigurationCreate.json new file mode 100644 index 000000000000..af3cec34dc8b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkInterfaceTapConfigurationCreate.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "networkInterfaceName": "mynic", + "tapConfigurationName": "tapconfiguration1", + "api-version": "2021-02-01", + "tapConfigurationParameters": { + "properties": { + "virtualNetworkTap": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/testvtap" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "tapConfiguration1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/tapConfigurations/tapConfiguration1", + "etag": "etag", + "type": "Microsoft.Network/networkInterfaces/tapConfigurations", + "properties": { + "virtualNetworkTap": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/testvtap" + }, + "provisioningState": "Succeded" + } + } + }, + "201": { + "body": { + "name": "tapConfiguration1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/tapConfigurations/tapConfiguration1", + "etag": "etag", + "type": "Microsoft.Network/networkInterfaces/tapConfigurations", + "properties": { + "virtualNetworkTap": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/testvtap" + }, + "provisioningState": "Succeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkInterfaceTapConfigurationDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkInterfaceTapConfigurationDelete.json new file mode 100644 index 000000000000..a4271273976f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkInterfaceTapConfigurationDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "test-networkinterface", + "tapConfigurationName": "test-tapconfiguration" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkInterfaceTapConfigurationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkInterfaceTapConfigurationGet.json new file mode 100644 index 000000000000..d2ba9e406065 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkInterfaceTapConfigurationGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "networkInterfaceName": "mynic", + "tapConfigurationName": "tapconfiguration1", + "api-version": "2021-02-01" + }, + "responses": { + "200": { + "body": { + "name": "tapConfiguration1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/tapConfigurations/tapConfiguration1", + "etag": "etag", + "type": "Microsoft.Network/networkInterfaces/tapConfigurations", + "properties": { + "virtualNetworkTap": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/testvtap" + }, + "provisioningState": "Succeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkInterfaceTapConfigurationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkInterfaceTapConfigurationList.json new file mode 100644 index 000000000000..d47ef958eebe --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkInterfaceTapConfigurationList.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "mynic" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "tapConfiguration1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/tapConfigurations/tapConfiguration1", + "etag": "etag", + "type": "Microsoft.Network/networkInterfaces/tapConfigurations", + "properties": { + "virtualNetworkTap": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/testvtap" + }, + "provisioningState": "Succeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkInterfaceUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkInterfaceUpdateTags.json new file mode 100644 index 000000000000..677ca2b2f815 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkInterfaceUpdateTags.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "test-nic", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-nic", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location": "eastus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [] + }, + "enableAcceleratedNetworking": true, + "enableIPForwarding": false + }, + "type": "Microsoft.Network/networkInterfaces" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkProfileCreateConfigOnly.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkProfileCreateConfigOnly.json new file mode 100644 index 000000000000..282ffa038b12 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkProfileCreateConfigOnly.json @@ -0,0 +1,110 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkProfileName": "networkProfile1", + "parameters": { + "location": "westus", + "properties": { + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth1", + "properties": { + "ipConfigurations": [ + { + "name": "ipconfig1", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "networkProfile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1/ipConfigurations/ipconfig1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + } + } + }, + "201": { + "body": { + "name": "networkProfile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1/ipConfigurations/ipconfig1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkProfileDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkProfileDelete.json new file mode 100644 index 000000000000..235728999a3a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkProfileDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkProfileName": "networkProfile1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkProfileGetConfigOnly.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkProfileGetConfigOnly.json new file mode 100644 index 000000000000..8526177266f0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkProfileGetConfigOnly.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkProfileName": "networkProfile1" + }, + "responses": { + "200": { + "body": { + "name": "networkProfile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + }, + { + "name": "ipconfigprofile2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile2", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + }, + { + "name": "eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile3", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1/ipConfigurations/ipconfigprofile3", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkProfileGetWithContainerNic.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkProfileGetWithContainerNic.json new file mode 100644 index 000000000000..9bc0524d31d6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkProfileGetWithContainerNic.json @@ -0,0 +1,203 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkProfileName": "networkProfile1" + }, + "responses": { + "200": { + "body": { + "name": "networkProfile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile1", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + }, + { + "name": "ipconfigprofile2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile2", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ], + "containerNetworkInterfaces": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup1_eth0" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup2_eth0" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup3_eth0" + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + }, + { + "name": "eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile3", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1/ipConfigurations/ipconfigprofile3", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ], + "containerNetworkInterfaces": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup1_eth1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup2_eth1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup3_eth1" + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [ + { + "name": "containerGroup1_eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup1_eth0", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "containerNetworkInterfaceConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0" + }, + "container": { + "id": "/subscriptions/subid/resourceGroups/networkProfilesDemo/providers/Microsoft.ContainerInstance/containerGroups/containerGroup1" + }, + "ipConfigurations": [] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaces" + }, + { + "name": "containerGroup1_eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup1_eth1", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "containerNetworkInterfaceConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1" + }, + "container": { + "id": "/subscriptions/subid/resourceGroups/networkProfilesDemo/providers/Microsoft.ContainerInstance/containerGroups/containerGroup1" + }, + "ipConfigurations": [] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaces" + }, + { + "name": "containerGroup2_eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup2_eth0", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "containerNetworkInterfaceConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0" + }, + "container": { + "id": "/subscriptions/subid/resourceGroups/networkProfilesDemo/providers/Microsoft.ContainerInstance/containerGroups/containerGroup2" + }, + "ipConfigurations": [] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaces" + }, + { + "name": "containerGroup2_eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup2_eth1", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "containerNetworkInterfaceConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1" + }, + "container": { + "id": "/subscriptions/subid/resourceGroups/networkProfilesDemo/providers/Microsoft.ContainerInstance/containerGroups/containerGroup2" + }, + "ipConfigurations": [] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaces" + }, + { + "name": "containerGroup3_eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup3_eth0", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "containerNetworkInterfaceConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0" + }, + "container": { + "id": "/subscriptions/subid/resourceGroups/networkProfilesDemo/providers/Microsoft.ContainerInstance/containerGroups/containerGroup3" + }, + "ipConfigurations": [] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaces" + }, + { + "name": "containerGroup3_eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup3_eth1", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "containerNetworkInterfaceConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1" + }, + "container": { + "id": "/subscriptions/subid/resourceGroups/networkProfilesDemo/providers/Microsoft.ContainerInstance/containerGroups/containerGroup3" + }, + "ipConfigurations": [] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaces" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkProfileList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkProfileList.json new file mode 100644 index 000000000000..c140593a1c0a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkProfileList.json @@ -0,0 +1,97 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1", + "name": "networkProfile1", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + }, + { + "name": "ipconfigprofile2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile2", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + }, + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile2", + "name": "networkProfile2", + "properties": { + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile3", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1/ipConfigurations/ipconfigprofile3", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + }, + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkProfileListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkProfileListAll.json new file mode 100644 index 000000000000..50f2e7fef35a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkProfileListAll.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1", + "name": "networkProfile1", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + }, + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkProfiles/networkProfile2", + "name": "networkProfile2", + "properties": { + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth1", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile3", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1/ipConfigurations/ipconfigprofile3", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + }, + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkProfileUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkProfileUpdateTags.json new file mode 100644 index 000000000000..5f5aadb6fbdd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkProfileUpdateTags.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkProfileName": "test-np", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-np", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-np", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + }, + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkSecurityGroupCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkSecurityGroupCreate.json new file mode 100644 index 000000000000..e2ef0323b14c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkSecurityGroupCreate.json @@ -0,0 +1,233 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg", + "parameters": { + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + }, + "201": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkSecurityGroupCreateWithRule.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkSecurityGroupCreateWithRule.json new file mode 100644 index 000000000000..a20d06d0e49c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkSecurityGroupCreateWithRule.json @@ -0,0 +1,282 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg", + "parameters": { + "properties": { + "securityRules": [ + { + "name": "rule1", + "properties": { + "protocol": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Allow", + "destinationPortRange": "80", + "sourcePortRange": "*", + "priority": 130, + "direction": "Inbound" + } + } + ] + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "80", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 130, + "direction": "Inbound" + } + } + ], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + }, + "201": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "80", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 130, + "direction": "Inbound" + } + } + ], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkSecurityGroupDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkSecurityGroupDelete.json new file mode 100644 index 000000000000..bfdf9b40ab23 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkSecurityGroupDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkSecurityGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkSecurityGroupGet.json new file mode 100644 index 000000000000..9aed3d178ebe --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkSecurityGroupGet.json @@ -0,0 +1,136 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg" + }, + "responses": { + "200": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "80", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 130, + "direction": "Inbound" + } + } + ], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkSecurityGroupList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkSecurityGroupList.json new file mode 100644 index 000000000000..c1e8af885061 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkSecurityGroupList.json @@ -0,0 +1,231 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nsg1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + }, + { + "name": "nsg3", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkSecurityGroupListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkSecurityGroupListAll.json new file mode 100644 index 000000000000..7d27aff4be04 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkSecurityGroupListAll.json @@ -0,0 +1,230 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nsg1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + }, + { + "name": "nsg3", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkSecurityGroupRuleCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkSecurityGroupRuleCreate.json new file mode 100644 index 000000000000..0cdb42d416f5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkSecurityGroupRuleCreate.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg", + "securityRuleName": "rule1", + "securityRuleParameters": { + "properties": { + "protocol": "*", + "sourceAddressPrefix": "10.0.0.0/8", + "destinationAddressPrefix": "11.0.0.0/8", + "access": "Deny", + "destinationPortRange": "8080", + "sourcePortRange": "*", + "priority": 100, + "direction": "Outbound" + } + } + }, + "responses": { + "200": { + "body": { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "8080", + "sourceAddressPrefix": "10.0.0.0/8", + "destinationAddressPrefix": "11.0.0.0/8", + "access": "Deny", + "priority": 100, + "direction": "Outbound" + } + } + }, + "201": { + "body": { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "8080", + "sourceAddressPrefix": "10.0.0.0/8", + "destinationAddressPrefix": "11.0.0.0/8", + "access": "Deny", + "priority": 100, + "direction": "Outbound" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkSecurityGroupRuleDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkSecurityGroupRuleDelete.json new file mode 100644 index 000000000000..154bad85513e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkSecurityGroupRuleDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg", + "securityRuleName": "rule1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkSecurityGroupRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkSecurityGroupRuleGet.json new file mode 100644 index 000000000000..bea3f6ab39d9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkSecurityGroupRuleGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg", + "securityRuleName": "rule1" + }, + "responses": { + "200": { + "body": { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "80", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 130, + "direction": "Inbound" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkSecurityGroupRuleList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkSecurityGroupRuleList.json new file mode 100644 index 000000000000..aaf1c9fefbf9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkSecurityGroupRuleList.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "80", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 130, + "direction": "Inbound" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkSecurityGroupUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkSecurityGroupUpdateTags.json new file mode 100644 index 000000000000..edfbe64dac5a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkSecurityGroupUpdateTags.json @@ -0,0 +1,130 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkVirtualApplianceDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkVirtualApplianceDelete.json new file mode 100644 index 000000000000..74bd4005e241 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkVirtualApplianceDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkVirtualApplianceName": "nva" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkVirtualApplianceGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkVirtualApplianceGet.json new file mode 100644 index 000000000000..c4e35115bf16 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkVirtualApplianceGet.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkVirtualApplianceName": "nva" + }, + "responses": { + "200": { + "body": { + "name": "nva", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva", + "type": "Microsoft.Network/networkVirtualAppliances", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "properties": { + "nvaSku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "addressPrefix": "192.168.1.0/16", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "virtualApplianceSites": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networtkVirtualAppliances/nva/virtualApplianceSites/site1" + } + ], + "inboundSecurityRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva/InboundSecurityRules/rule1" + } + ], + "provisioningState": "Succeeded", + "bootStrapConfigurationBlobs": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig" + ], + "cloudInitConfigurationBlobs": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig" + ], + "virtualApplianceAsn": 10000, + "virtualApplianceNics": [ + { + "name": "managementNic", + "publicIpAddress": "40.30.2.2", + "privateIpAddress": "192.168.12.1" + }, + { + "name": "privateNic-1", + "privateIpAddress": "192.168.12.2" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkVirtualApplianceListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkVirtualApplianceListByResourceGroup.json new file mode 100644 index 000000000000..70c003af3355 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkVirtualApplianceListByResourceGroup.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nva", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva", + "type": "Microsoft.Network/networkVirtualAppliances", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "properties": { + "nvaSku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "addressPrefix": "192.168.1.0/16", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "virtualApplianceSites": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networtkVirtualAppliances/nva/virtualApplianceSites/site1" + } + ], + "inboundSecurityRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva/InboundSecurityRules/rule1" + } + ], + "provisioningState": "Succeeded", + "bootStrapConfigurationBlobs": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig" + ], + "cloudInitConfigurationBlobs": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig" + ], + "virtualApplianceAsn": 10000, + "virtualApplianceNics": [ + { + "name": "managementNic", + "publicIpAddress": "40.30.2.2", + "privateIpAddress": "192.168.12.1" + }, + { + "name": "privateNic-1", + "privateIpAddress": "192.168.12.2" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkVirtualApplianceListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkVirtualApplianceListBySubscription.json new file mode 100644 index 000000000000..1db6b978b26a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkVirtualApplianceListBySubscription.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nva", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva", + "type": "Microsoft.Network/networkVirtualAppliances", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "properties": { + "nvaSku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "addressPrefix": "192.168.1.0/16", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "virtualApplianceSites": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networtkVirtualAppliances/nva/virtualApplianceSites/site1" + } + ], + "inboundSecurityRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva/InboundSecurityRules/rule1" + } + ], + "provisioningState": "Succeeded", + "bootStrapConfigurationBlobs": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig" + ], + "cloudInitConfigurationBlobs": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig" + ], + "virtualApplianceAsn": 10000, + "virtualApplianceNics": [ + { + "name": "managementNic", + "publicIpAddress": "40.30.2.2", + "privateIpAddress": "192.168.12.1" + }, + { + "name": "privateNic-1", + "privateIpAddress": "192.168.12.2" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkVirtualAppliancePut.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkVirtualAppliancePut.json new file mode 100644 index 000000000000..30076344a11e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkVirtualAppliancePut.json @@ -0,0 +1,155 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkVirtualApplianceName": "nva", + "parameters": { + "tags": { + "key1": "value1" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "location": "West US", + "properties": { + "nvaSku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "bootStrapConfigurationBlobs": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig" + ], + "cloudInitConfigurationBlobs": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig" + ], + "virtualApplianceAsn": 10000 + } + } + }, + "responses": { + "200": { + "body": { + "name": "nva", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva", + "type": "Microsoft.Network/networkVirtualAppliances", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "properties": { + "nvaSku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "addressPrefix": "192.168.1.0/16", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "virtualApplianceSites": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networtkVirtualAppliances/nva/virtualApplianceSites/site1" + } + ], + "inboundSecurityRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva/InboundSecurityRules/rule1" + } + ], + "provisioningState": "Succeeded", + "bootStrapConfigurationBlobs": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig" + ], + "cloudInitConfigurationBlobs": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig" + ], + "virtualApplianceAsn": 10000, + "virtualApplianceNics": [ + { + "name": "managementNic", + "publicIpAddress": "40.30.2.2", + "privateIpAddress": "192.168.12.1" + }, + { + "name": "privateNic-1", + "privateIpAddress": "192.168.12.2" + } + ] + } + } + }, + "201": { + "body": { + "name": "nva", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva", + "type": "Microsoft.Network/networkVirtualAppliances", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "properties": { + "nvaSku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "addressPrefix": "192.168.1.0/16", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "virtualApplianceSites": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networtkVirtualAppliances/nva/virtualApplianceSites/site1" + } + ], + "inboundSecurityRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva/InboundSecurityRules/rule1" + } + ], + "provisioningState": "Succeeded", + "bootStrapConfigurationBlobs": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig" + ], + "cloudInitConfigurationBlobs": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig" + ], + "virtualApplianceAsn": 10000, + "virtualApplianceNics": [ + { + "name": "managementNic", + "publicIpAddress": "40.30.2.2", + "privateIpAddress": "192.168.12.1" + }, + { + "name": "privateNic-1", + "privateIpAddress": "192.168.12.2" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkVirtualApplianceSiteDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkVirtualApplianceSiteDelete.json new file mode 100644 index 000000000000..ddabd389cdce --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkVirtualApplianceSiteDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "siteName": "site1", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkVirtualApplianceName": "nva" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkVirtualApplianceSiteGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkVirtualApplianceSiteGet.json new file mode 100644 index 000000000000..a5bcea9bff93 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkVirtualApplianceSiteGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "siteName": "site1", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkVirtualApplianceName": "nva" + }, + "responses": { + "200": { + "body": { + "name": "site1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva/virtualApplianceSites/site1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "192.168.1.0/24", + "o365Policy": { + "breakOutCategories": { + "allow": true, + "optimize": true, + "default": true + } + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkVirtualApplianceSiteList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkVirtualApplianceSiteList.json new file mode 100644 index 000000000000..836f3ad015e9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkVirtualApplianceSiteList.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "siteName": "site1", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkVirtualApplianceName": "nva" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "site1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva/virtualApplianceSites/site1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "192.168.1.0/24", + "o365Policy": { + "breakOutCategories": { + "allow": true, + "optimize": true, + "default": true + } + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkVirtualApplianceSitePut.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkVirtualApplianceSitePut.json new file mode 100644 index 000000000000..9a9aeffb5a06 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkVirtualApplianceSitePut.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "siteName": "site1", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkVirtualApplianceName": "nva", + "parameters": { + "properties": { + "addressPrefix": "192.168.1.0/24", + "o365Policy": { + "breakOutCategories": { + "allow": true, + "optimize": true, + "default": true + } + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "site1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva/virtualApplianceSites/site1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "192.168.1.0/24", + "o365Policy": { + "breakOutCategories": { + "allow": true, + "optimize": true, + "default": true + } + } + } + } + }, + "201": { + "body": { + "name": "site1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva/virtualApplianceSites/site1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "192.168.1.0/24", + "o365Policy": { + "breakOutCategories": { + "allow": true, + "optimize": true, + "default": true + } + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkVirtualApplianceSkuGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkVirtualApplianceSkuGet.json new file mode 100644 index 000000000000..8c1eddecb58c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkVirtualApplianceSkuGet.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "skuName": "ciscoSdwan" + }, + "responses": { + "200": { + "body": { + "name": "ciscoSdwan", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualApplianceSkus/ciscoSdwan", + "type": "Microsoft.Network/networkVirtualApplianceSkus", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "vendor": "Cisco", + "availableVersions": [ + "11.12" + ], + "availableScaleUnits": [ + { + "scaleUnit": "1", + "instanceCount": 2 + }, + { + "scaleUnit": "2", + "instanceCount": 2 + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkVirtualApplianceSkuList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkVirtualApplianceSkuList.json new file mode 100644 index 000000000000..e5c0e355765f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkVirtualApplianceSkuList.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "ciscoSdwan", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualApplianceSkus/ciscoSdwan", + "type": "Microsoft.Network/networkVirtualApplianceSkus", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "vendor": "Cisco", + "availableVersions": [ + "11.12" + ], + "availableScaleUnits": [ + { + "scaleUnit": "1", + "instanceCount": 2 + }, + { + "scaleUnit": "2", + "instanceCount": 2 + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkVirtualApplianceUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkVirtualApplianceUpdateTags.json new file mode 100644 index 000000000000..5c85bc1f85cf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkVirtualApplianceUpdateTags.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkVirtualApplianceName": "nva", + "parameters": { + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "nva", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva", + "type": "Microsoft.Network/networkVirtualAppliances", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "properties": { + "nvaSku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "addressPrefix": "192.168.1.0/16", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "virtualApplianceSites": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networtkVirtualAppliances/nva/virtualApplianceSites/site1" + } + ], + "provisioningState": "Succeeded", + "bootStrapConfigurationBlobs": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig" + ], + "cloudInitConfigurationBlobs": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig" + ], + "virtualApplianceAsn": 10000, + "virtualApplianceNics": [ + { + "name": "managementNic", + "publicIpAddress": "40.30.2.2", + "privateIpAddress": "192.168.12.1" + }, + { + "name": "privateNic-1", + "privateIpAddress": "192.168.12.2" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherAvailableProvidersListGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherAvailableProvidersListGet.json new file mode 100644 index 000000000000..d1abaf6c63cd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherAvailableProvidersListGet.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "azureLocations": [ + "West US" + ], + "country": "United States", + "state": "washington", + "city": "seattle" + } + }, + "responses": { + "200": { + "body": { + "countries": [ + { + "countryName": "United States", + "states": [ + { + "stateName": "washington", + "cities": [ + { + "cityName": "seattle", + "providers": [ + "Comcast Cable Communications, Inc. - ASN 7922", + "Comcast Cable Communications, LLC - ASN 7922", + "Level 3 Communications, Inc. (GBLX) - ASN 3549", + "Qwest Communications Company, LLC - ASN 209" + ] + } + ] + } + ] + } + ] + } + }, + "202": { + "body": { + "countries": [ + { + "countryName": "United States", + "states": [ + { + "stateName": "washington", + "cities": [ + { + "cityName": "seattle", + "providers": [ + "Comcast Cable Communications, Inc. - ASN 7922", + "Comcast Cable Communications, LLC - ASN 7922", + "Level 3 Communications, Inc. (GBLX) - ASN 3549", + "Qwest Communications Company, LLC - ASN 209" + ] + } + ] + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherAzureReachabilityReportGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherAzureReachabilityReportGet.json new file mode 100644 index 000000000000..41c30640c2ad --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherAzureReachabilityReportGet.json @@ -0,0 +1,82 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "providerLocation": { + "country": "United States", + "state": "washington" + }, + "providers": [ + "Frontier Communications of America, Inc. - ASN 5650" + ], + "azureLocations": [ + "West US" + ], + "startTime": "2017-09-07T00:00:00Z", + "endTime": "2017-09-10T00:00:00Z" + } + }, + "responses": { + "200": { + "body": { + "aggregationLevel": "State", + "providerLocation": { + "country": "United States", + "state": "washington" + }, + "reachabilityReport": [ + { + "provider": "Frontier Communications of America, Inc. - ASN 5650", + "azureLocation": "West US", + "latencies": [ + { + "timeStamp": "2017-09-07T00:00:00Z", + "score": 94 + }, + { + "timeStamp": "2017-09-08T00:00:00Z", + "score": 94 + }, + { + "timeStamp": "2017-09-09T00:00:00Z", + "score": 94 + } + ] + } + ] + } + }, + "202": { + "body": { + "aggregationLevel": "State", + "providerLocation": { + "country": "United States", + "state": "washington" + }, + "reachabilityReport": [ + { + "provider": "Frontier Communications of America, Inc. - ASN 5650", + "azureLocation": "West US", + "latencies": [ + { + "timeStamp": "2017-09-07T00:00:00Z", + "score": 94 + }, + { + "timeStamp": "2017-09-08T00:00:00Z", + "score": 94 + }, + { + "timeStamp": "2017-09-09T00:00:00Z", + "score": 94 + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherConnectionMonitorCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherConnectionMonitorCreate.json new file mode 100644 index 000000000000..e21d75a1e1af --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherConnectionMonitorCreate.json @@ -0,0 +1,142 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1", + "parameters": { + "location": "eastus", + "properties": { + "endpoints": [ + { + "name": "source", + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/ct1" + }, + { + "name": "destination", + "address": "bing.com" + } + ], + "testConfigurations": [ + { + "name": "tcp", + "testFrequencySec": 60, + "protocol": "Tcp", + "tcpConfiguration": { + "port": 80 + } + } + ], + "testGroups": [ + { + "name": "tg", + "testConfigurations": [ + "tcp" + ], + "sources": [ + "source" + ], + "destinations": [ + "destination" + ] + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "cm1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"e7497f26-5f09-4559-900b-fe98f3dedb6f\"", + "properties": { + "provisioningState": "Updating", + "endpoints": [ + { + "name": "source", + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/ct1" + }, + { + "name": "destination", + "address": "bing.com" + } + ], + "testConfigurations": [ + { + "name": "tcp", + "testFrequencySec": 60, + "protocol": "Tcp", + "tcpConfiguration": { + "port": 80 + } + } + ], + "testGroups": [ + { + "name": "tg", + "testConfigurations": [ + "tcp" + ], + "sources": [ + "source" + ], + "destinations": [ + "destination" + ] + } + ] + }, + "location": "eastus", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + }, + "201": { + "body": { + "name": "cm1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"e7497f26-5f09-4559-900b-fe98f3dedb6f\"", + "properties": { + "provisioningState": "Succeeded", + "endpoints": [ + { + "name": "source", + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/ct1" + }, + { + "name": "destination", + "address": "bing.com" + } + ], + "testConfigurations": [ + { + "name": "tcp", + "testFrequencySec": 60, + "protocol": "Tcp", + "tcpConfiguration": { + "port": 80 + } + } + ], + "testGroups": [ + { + "name": "tg", + "testConfigurations": [ + "tcp" + ], + "sources": [ + "source" + ], + "destinations": [ + "destination" + ] + } + ] + }, + "location": "eastus", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherConnectionMonitorDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherConnectionMonitorDelete.json new file mode 100644 index 000000000000..679e9c1fc939 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherConnectionMonitorDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherConnectionMonitorGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherConnectionMonitorGet.json new file mode 100644 index 000000000000..7b1f5070a3eb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherConnectionMonitorGet.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1" + }, + "responses": { + "200": { + "body": { + "name": "cm1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "endpoints": [ + { + "name": "source", + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/ct1" + }, + { + "name": "destination", + "address": "bing.com" + } + ], + "testConfigurations": [ + { + "name": "tcp", + "testFrequencySec": 60, + "protocol": "Tcp", + "tcpConfiguration": { + "port": 80 + } + } + ], + "testGroups": [ + { + "name": "tg", + "testConfigurations": [ + "tcp" + ], + "sources": [ + "source" + ], + "destinations": [ + "destination" + ] + } + ] + }, + "location": "eastus", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherConnectionMonitorList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherConnectionMonitorList.json new file mode 100644 index 000000000000..02a11e527948 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherConnectionMonitorList.json @@ -0,0 +1,104 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "cm1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "endpoints": [ + { + "name": "source", + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/ct1" + }, + { + "name": "destination", + "address": "bing.com" + } + ], + "testConfigurations": [ + { + "name": "tcp", + "testFrequencySec": 60, + "protocol": "Tcp", + "tcpConfiguration": { + "port": 80 + } + } + ], + "testGroups": [ + { + "name": "tg", + "testConfigurations": [ + "tcp" + ], + "sources": [ + "source" + ], + "destinations": [ + "destination" + ] + } + ] + }, + "location": "eastus", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + }, + { + "name": "cm2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "endpoints": [ + { + "name": "source", + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/ct2" + }, + { + "name": "destination", + "address": "google.com" + } + ], + "testConfigurations": [ + { + "name": "tcp", + "testFrequencySec": 60, + "protocol": "Tcp", + "tcpConfiguration": { + "port": 80 + } + } + ], + "testGroups": [ + { + "name": "tg", + "testConfigurations": [ + "tcp" + ], + "sources": [ + "source" + ], + "destinations": [ + "destination" + ] + } + ] + }, + "location": "eastus", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherConnectionMonitorQuery.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherConnectionMonitorQuery.json new file mode 100644 index 000000000000..f007760b6962 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherConnectionMonitorQuery.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1" + }, + "responses": { + "200": { + "body": { + "sourceStatus": "Active", + "states": [ + { + "connectionState": "Reachable", + "startTime": "2018-01-08T03:42:33.3387305Z", + "endTime": "2018-01-08T05:12:41.5265438Z", + "evaluationState": "Completed", + "hops": [ + { + "type": "Source", + "id": "7dbbe7aa-60ba-4650-831e-63d775d38e9e", + "address": "10.1.1.4", + "resourceId": "subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic0/ipConfigurations/ipconfig1", + "nextHopIds": [ + "75c8d819-b208-4584-a311-1aa45ce753f9" + ], + "issues": [] + }, + { + "type": "VirtualNetwork", + "id": "75c8d819-b208-4584-a311-1aa45ce753f9", + "address": "192.168.100.4", + "resourceId": "subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1", + "nextHopIds": [], + "issues": [] + } + ] + } + ] + } + }, + "202": { + "body": { + "sourceStatus": "Active", + "states": [ + { + "connectionState": "Reachable", + "startTime": "2018-01-08T03:42:33.3387305Z", + "endTime": "2018-01-08T05:12:41.5265438Z", + "evaluationState": "Completed", + "hops": [ + { + "type": "Source", + "id": "7dbbe7aa-60ba-4650-831e-63d775d38e9e", + "address": "10.1.1.4", + "resourceId": "subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic0/ipConfigurations/ipconfig1", + "nextHopIds": [ + "75c8d819-b208-4584-a311-1aa45ce753f9" + ], + "issues": [] + }, + { + "type": "VirtualNetwork", + "id": "75c8d819-b208-4584-a311-1aa45ce753f9", + "address": "192.168.100.4", + "resourceId": "subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1", + "nextHopIds": [], + "issues": [] + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherConnectionMonitorStart.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherConnectionMonitorStart.json new file mode 100644 index 000000000000..f80d70895eac --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherConnectionMonitorStart.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherConnectionMonitorStop.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherConnectionMonitorStop.json new file mode 100644 index 000000000000..f80d70895eac --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherConnectionMonitorStop.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherConnectionMonitorUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherConnectionMonitorUpdateTags.json new file mode 100644 index 000000000000..42b079cd1405 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherConnectionMonitorUpdateTags.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "cm1", + "id": "/subscriptions/subid/`/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1", + "port": 0 + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60, + "autoStart": true, + "startTime": "2019-09-04T02:48:10.6797393Z", + "monitoringStatus": "Running" + }, + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "type": "Microsoft.Network/networkWatchers/connectionMonitors", + "location": "westcentralus" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherConnectionMonitorV2Create.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherConnectionMonitorV2Create.json new file mode 100644 index 000000000000..382e69fbff12 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherConnectionMonitorV2Create.json @@ -0,0 +1,206 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1", + "location": "centraluseuap", + "parameters": { + "properties": { + "endpoints": [ + { + "name": "vm1", + "resourceId": "/subscriptions/96e68903-0a56-4819-9987-8d08ad6a1f99/resourceGroups/NwRgIrinaCentralUSEUAP/providers/Microsoft.Compute/virtualMachines/vm1" + }, + { + "name": "CanaryWorkspaceVamshi", + "resourceId": "/subscriptions/96e68903-0a56-4819-9987-8d08ad6a1f99/resourceGroups/vasamudrRG/providers/Microsoft.OperationalInsights/workspaces/vasamudrWorkspace", + "filter": { + "type": "Include", + "items": [ + { + "type": "AgentAddress", + "address": "npmuser" + } + ] + } + }, + { + "name": "bing", + "address": "bing.com" + }, + { + "name": "google", + "address": "google.com" + } + ], + "testConfigurations": [ + { + "name": "testConfig1", + "testFrequencySec": 60, + "protocol": "Tcp", + "tcpConfiguration": { + "port": 80, + "disableTraceRoute": false + } + } + ], + "testGroups": [ + { + "name": "test1", + "disable": false, + "testConfigurations": [ + "testConfig1" + ], + "sources": [ + "vm1", + "CanaryWorkspaceVamshi" + ], + "destinations": [ + "bing", + "google" + ] + } + ], + "outputs": [] + } + } + }, + "responses": { + "200": { + "body": { + "name": "cm1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"e7497f26-5f09-4559-900b-fe98f3dedb6f\"", + "properties": { + "endpoints": [ + { + "name": "vm1", + "resourceId": "/subscriptions/96e68903-0a56-4819-9987-8d08ad6a1f99/resourceGroups/NwRgIrinaCentralUSEUAP/providers/Microsoft.Compute/virtualMachines/vm1" + }, + { + "name": "CanaryWorkspaceVamshi", + "resourceId": "/subscriptions/96e68903-0a56-4819-9987-8d08ad6a1f99/resourceGroups/vasamudrRG/providers/Microsoft.OperationalInsights/workspaces/vasamudrWorkspace", + "filter": { + "type": "Include", + "items": [ + { + "type": "AgentAddress", + "address": "npmuser" + } + ] + } + }, + { + "name": "bing", + "address": "bing.com" + }, + { + "name": "google", + "address": "google.com" + } + ], + "testConfigurations": [ + { + "name": "testConfig1", + "testFrequencySec": 60, + "protocol": "Tcp", + "tcpConfiguration": { + "port": 80, + "disableTraceRoute": false + } + } + ], + "testGroups": [ + { + "name": "test1", + "disable": false, + "testConfigurations": [ + "testConfig1" + ], + "sources": [ + "vm1", + "CanaryWorkspaceVamshi" + ], + "destinations": [ + "bing", + "google" + ] + } + ], + "outputs": [] + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + }, + "201": { + "body": { + "name": "cm1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"e7497f26-5f09-4559-900b-fe98f3dedb6f\"", + "properties": { + "endpoints": [ + { + "name": "vm1", + "resourceId": "/subscriptions/96e68903-0a56-4819-9987-8d08ad6a1f99/resourceGroups/NwRgIrinaCentralUSEUAP/providers/Microsoft.Compute/virtualMachines/vm1" + }, + { + "name": "CanaryWorkspaceVamshi", + "resourceId": "/subscriptions/96e68903-0a56-4819-9987-8d08ad6a1f99/resourceGroups/vasamudrRG/providers/Microsoft.OperationalInsights/workspaces/vasamudrWorkspace", + "filter": { + "type": "Include", + "items": [ + { + "type": "AgentAddress", + "address": "npmuser" + } + ] + } + }, + { + "name": "bing", + "address": "bing.com" + }, + { + "name": "google", + "address": "google.com" + } + ], + "testConfigurations": [ + { + "name": "testConfig1", + "testFrequencySec": 60, + "protocol": "Tcp", + "tcpConfiguration": { + "port": 80, + "disableTraceRoute": false + } + } + ], + "testGroups": [ + { + "name": "test1", + "disable": false, + "testConfigurations": [ + "testConfig1" + ], + "sources": [ + "vm1", + "CanaryWorkspaceVamshi" + ], + "destinations": [ + "bing", + "google" + ] + } + ], + "outputs": [] + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherConnectivityCheck.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherConnectivityCheck.json new file mode 100644 index 000000000000..42288c4d3bc2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherConnectivityCheck.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1" + }, + "destination": { + "address": "192.168.100.4", + "port": 3389 + }, + "preferredIPVersion": "IPv4" + } + }, + "responses": { + "200": { + "body": { + "hops": [ + { + "type": "Source", + "id": "7dbbe7aa-60ba-4650-831e-63d775d38e9e", + "address": "10.1.1.4", + "resourceId": "subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/nic0/ipConfigurations/ipconfig1", + "nextHopIds": [ + "75c8d819-b208-4584-a311-1aa45ce753f9" + ], + "issues": [] + }, + { + "type": "VirtualNetwork", + "id": "75c8d819-b208-4584-a311-1aa45ce753f9", + "address": "192.168.100.4", + "resourceId": "subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1", + "nextHopIds": [], + "issues": [] + } + ], + "connectionStatus": "Connected", + "avgLatencyInMs": 1, + "minLatencyInMs": 1, + "maxLatencyInMs": 4, + "probesSent": 100, + "probesFailed": 0 + } + }, + "202": { + "body": { + "hops": [ + { + "type": "Source", + "id": "7dbbe7aa-60ba-4650-831e-63d775d38e9e", + "address": "10.1.1.4", + "resourceId": "subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/nic0/ipConfigurations/ipconfig1", + "nextHopIds": [ + "75c8d819-b208-4584-a311-1aa45ce753f9" + ], + "issues": [] + }, + { + "type": "VirtualNetwork", + "id": "75c8d819-b208-4584-a311-1aa45ce753f9", + "address": "192.168.100.4", + "resourceId": "subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1", + "nextHopIds": [], + "issues": [] + } + ], + "connectionStatus": "Connected", + "avgLatencyInMs": 1, + "minLatencyInMs": 1, + "maxLatencyInMs": 4, + "probesSent": 100, + "probesFailed": 0 + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherCreate.json new file mode 100644 index 000000000000..c64d520b868b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherCreate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "location": "eastus", + "properties": {} + } + }, + "responses": { + "200": { + "body": { + "name": "nw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "name": "nw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherDelete.json new file mode 100644 index 000000000000..598b9f14b5c9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherFlowLogConfigure.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherFlowLogConfigure.json new file mode 100644 index 000000000000..6340b6d6b061 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherFlowLogConfigure.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "properties": { + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/st1", + "enabled": true + } + } + }, + "responses": { + "200": { + "body": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "properties": { + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/st1", + "enabled": true + } + } + }, + "202": { + "body": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "properties": { + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/st1", + "enabled": true + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherFlowLogCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherFlowLogCreate.json new file mode 100644 index 000000000000..0dde05dc03a4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherFlowLogCreate.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "flowLogName": "fl", + "parameters": { + "location": "centraluseuap", + "properties": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/desmondcentral-nsg", + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/nwtest1mgvbfmqsigdxe", + "enabled": true, + "format": { + "type": "JSON", + "version": 1 + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "Microsoft.Networkdesmond-rgdesmondcentral-nsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw/FlowLogs/fl", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Updating", + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/desmondcentral-nsg", + "targetResourceGuid": "00000000-0000-0000-0000-000000000000", + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/nwtest1mgvbfmqsigdxe", + "enabled": true, + "flowAnalyticsConfiguration": {}, + "retentionPolicy": { + "days": 0, + "enabled": false + }, + "format": { + "type": "JSON", + "version": 1 + } + }, + "type": "Microsoft.Network/networkWatchers/FlowLogs", + "location": "centraluseuap" + } + }, + "201": { + "body": { + "name": "Microsoft.Networkdesmond-rgdesmondcentral-nsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw/FlowLogs/fl", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/desmondcentral-nsg", + "targetResourceGuid": "00000000-0000-0000-0000-000000000000", + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/nwtest1mgvbfmqsigdxe", + "enabled": true, + "flowAnalyticsConfiguration": {}, + "retentionPolicy": { + "days": 0, + "enabled": false + }, + "format": { + "type": "JSON", + "version": 1 + } + }, + "type": "Microsoft.Network/networkWatchers/FlowLogs", + "location": "centraluseuap" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherFlowLogDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherFlowLogDelete.json new file mode 100644 index 000000000000..96d4b3dcb500 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherFlowLogDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "flowLogName": "fl" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherFlowLogGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherFlowLogGet.json new file mode 100644 index 000000000000..7f90b026c417 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherFlowLogGet.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "flowLogName": "flowLog1" + }, + "responses": { + "200": { + "body": { + "name": "flowLog1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/тц1/FlowLogs/flowLog1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "targetResourceId": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Network/networkSecurityGroups/vm5-nsg", + "targetResourceGuid": "00000000-0000-0000-0000-000000000000", + "storageId": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Storage/storageAccounts/wzstorage002", + "enabled": true, + "flowAnalyticsConfiguration": { + "networkWatcherFlowAnalyticsConfiguration": { + "enabled": false, + "workspaceId": "-", + "workspaceRegion": "-", + "trafficAnalyticsInterval": 60 + } + }, + "retentionPolicy": { + "days": 0, + "enabled": false + }, + "format": { + "type": "JSON", + "version": 2 + } + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/FlowLogs" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherFlowLogList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherFlowLogList.json new file mode 100644 index 000000000000..fc820808889f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherFlowLogList.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "flowLog1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/тц1/FlowLogs/flowLog1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "targetResourceId": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Network/networkSecurityGroups/vm5-nsg", + "targetResourceGuid": "00000000-0000-0000-0000-000000000000", + "storageId": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Storage/storageAccounts/wzstorage002", + "enabled": true, + "flowAnalyticsConfiguration": { + "networkWatcherFlowAnalyticsConfiguration": { + "enabled": false, + "workspaceId": "-", + "workspaceRegion": "-", + "trafficAnalyticsInterval": 60 + } + }, + "retentionPolicy": { + "days": 0, + "enabled": false + }, + "format": { + "type": "JSON", + "version": 2 + } + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/FlowLogs" + }, + { + "name": "flowLog2", + "id": "/subscriptions/96e68903-0a56-4819-9987-8d08ad6a1f99/resourceGroups/NetworkWatcherRG/providers/Microsoft.Network/networkWatchers/NetworkWatcher_centraluseuap/FlowLogs/flowLog2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "targetResourceId": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Network/networkSecurityGroups/DSCP-test-vm1-nsg", + "targetResourceGuid": "00000000-0000-0000-0000-000000000000", + "storageId": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Storage/storageAccounts/iraflowlogtest2diag", + "enabled": true, + "flowAnalyticsConfiguration": {}, + "retentionPolicy": { + "days": 0, + "enabled": false + }, + "format": { + "type": "JSON", + "version": 2 + } + }, + "type": "Microsoft.Network/networkWatchers/FlowLogs", + "location": "centraluseuap" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherFlowLogStatusQuery.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherFlowLogStatusQuery.json new file mode 100644 index 000000000000..342d95b5b5c8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherFlowLogStatusQuery.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1" + } + }, + "responses": { + "200": { + "body": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "properties": { + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/st1", + "enabled": true + } + } + }, + "202": { + "body": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "properties": { + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/st1", + "enabled": true + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherFlowLogUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherFlowLogUpdateTags.json new file mode 100644 index 000000000000..5025cecff796 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherFlowLogUpdateTags.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw", + "flowLogName": "fl", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "Microsoft.Networkdesmond-rgdesmondcentral-nsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw/FlowLogs/fl", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/desmondcentral-nsg", + "targetResourceGuid": "00000000-0000-0000-0000-000000000000", + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/nwtest1mgvbfmqsigdxe", + "enabled": true, + "flowAnalyticsConfiguration": {}, + "retentionPolicy": { + "days": 0, + "enabled": false + }, + "format": { + "type": "JSON", + "version": 1 + } + }, + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "type": "Microsoft.Network/networkWatchers/FlowLogs", + "location": "centralus" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherGet.json new file mode 100644 index 000000000000..140460559ca1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherGet.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1" + }, + "responses": { + "200": { + "body": { + "name": "nw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherIpFlowVerify.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherIpFlowVerify.json new file mode 100644 index 000000000000..7dc67f3741f0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherIpFlowVerify.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "direction": "Outbound", + "protocol": "TCP", + "localPort": "80", + "remotePort": "80", + "localIPAddress": "10.2.0.4", + "remoteIPAddress": "121.10.1.1" + } + }, + "responses": { + "200": { + "body": { + "access": "Allow", + "ruleName": "Rule1" + } + }, + "202": { + "body": { + "access": "Allow", + "ruleName": "Rule1" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherList.json new file mode 100644 index 000000000000..3a981941785b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherList.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + }, + { + "name": "nw2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherListAll.json new file mode 100644 index 000000000000..62dc63eb2a10 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherListAll.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + }, + { + "name": "nw2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "westus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherNetworkConfigurationDiagnostic.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherNetworkConfigurationDiagnostic.json new file mode 100644 index 000000000000..a3fbbd368f98 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherNetworkConfigurationDiagnostic.json @@ -0,0 +1,198 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "profiles": [ + { + "direction": "Inbound", + "protocol": "TCP", + "source": "10.1.0.4", + "destination": "12.11.12.14", + "destinationPort": "12100" + } + ] + } + }, + "responses": { + "200": { + "body": { + "results": [ + { + "profile": { + "direction": "Inbound", + "protocol": "TCP", + "source": "10.1.0.4", + "destination": "12.11.12.14", + "destinationPort": "12100" + }, + "networkSecurityGroupResult": { + "securityRuleAccessResult": "Allow", + "evaluatedNetworkSecurityGroups": [ + { + "networkSecurityGroupId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "appliedTo": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet/subnets/AppSubnet", + "matchedRule": { + "ruleName": "UserRule_fe_rule", + "action": "Allow" + }, + "rulesEvaluationResult": [ + { + "name": "UserRule_Cleanuptool-Allow-100", + "protocolMatched": true, + "sourceMatched": false, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_Cleanuptool-Allow-101", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_Cleanuptool-Allow-102", + "protocolMatched": true, + "sourceMatched": false, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_Cleanuptool-Deny-103", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_fe_rule", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": true + } + ] + }, + { + "networkSecurityGroupId": "/subscriptions/61cc8a98-a8be-4bfe-a04e-0b461f93fe35/resourceGroups/NwRgCentralUSEUAP_copy/providers/Microsoft.Network/networkSecurityGroups/AppNSG", + "appliedTo": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet/networkInterfaces/nic", + "matchedRule": { + "ruleName": "UserRule_fe_rule", + "action": "Allow" + }, + "rulesEvaluationResult": [ + { + "name": "UserRule_fe_rule", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": true + } + ] + } + ] + } + } + ] + } + }, + "202": { + "body": { + "results": [ + { + "profile": { + "direction": "Inbound", + "protocol": "TCP", + "source": "10.1.0.4", + "destination": "12.11.12.14", + "destinationPort": "12100" + }, + "networkSecurityGroupResult": { + "securityRuleAccessResult": "Allow", + "evaluatedNetworkSecurityGroups": [ + { + "networkSecurityGroupId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "appliedTo": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet/subnets/AppSubnet", + "matchedRule": { + "ruleName": "UserRule_fe_rule", + "action": "Allow" + }, + "rulesEvaluationResult": [ + { + "name": "UserRule_Cleanuptool-Allow-100", + "protocolMatched": true, + "sourceMatched": false, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_Cleanuptool-Allow-101", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_Cleanuptool-Allow-102", + "protocolMatched": true, + "sourceMatched": false, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_Cleanuptool-Deny-103", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_fe_rule", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": true + } + ] + }, + { + "networkSecurityGroupId": "/subscriptions/61cc8a98-a8be-4bfe-a04e-0b461f93fe35/resourceGroups/NwRgCentralUSEUAP_copy/providers/Microsoft.Network/networkSecurityGroups/AppNSG", + "appliedTo": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet/networkInterfaces/nic", + "matchedRule": { + "ruleName": "UserRule_fe_rule", + "action": "Allow" + }, + "rulesEvaluationResult": [ + { + "name": "UserRule_fe_rule", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": true + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherNextHopGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherNextHopGet.json new file mode 100644 index 000000000000..a7f24c30a948 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherNextHopGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "sourceIPAddress": "10.0.0.5", + "destinationIPAddress": "10.0.0.10", + "targetNicResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic1" + } + }, + "responses": { + "200": { + "body": { + "nextHopType": "VnetLocal", + "nextHopIpAddress": "10.0.0.1", + "routeTableId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/routeTables/rt1" + } + }, + "202": { + "body": { + "nextHopType": "VnetLocal", + "nextHopIpAddress": "10.0.0.1", + "routeTableId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/routeTables/rt1" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherPacketCaptureCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherPacketCaptureCreate.json new file mode 100644 index 000000000000..d52d4bbc82f2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherPacketCaptureCreate.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "packetCaptureName": "pc1", + "parameters": { + "properties": { + "target": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "bytesToCapturePerPacket": 10000, + "totalBytesPerSession": 100000, + "timeLimitInSeconds": 100, + "storageLocation": { + "storageId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Storage/storageAccounts/pcstore", + "storagePath": "https://mytestaccountname.blob.core.windows.net/capture/pc1.cap", + "filePath": "D:\\capture\\pc1.cap" + }, + "filters": [ + { + "protocol": "TCP", + "localIPAddress": "10.0.0.4", + "localPort": "80" + } + ] + } + } + }, + "responses": { + "201": { + "body": { + "name": "pc1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/packetCaptures/pc1", + "properties": { + "provisioningState": "Updating", + "target": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "bytesToCapturePerPacket": 10000, + "totalBytesPerSession": 100000, + "timeLimitInSeconds": 100, + "storageLocation": { + "storageId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Storage/storageAccounts/pcstore", + "storagePath": "https://mytestaccountname.blob.core.windows.net/capture/pc1.cap", + "filePath": "D:\\capture\\pc1.cap" + }, + "filters": [ + { + "protocol": "TCP", + "localIPAddress": "10.0.0.4", + "localPort": "80" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherPacketCaptureDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherPacketCaptureDelete.json new file mode 100644 index 000000000000..3443a20ccea0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherPacketCaptureDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "packetCaptureName": "pc1" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherPacketCaptureGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherPacketCaptureGet.json new file mode 100644 index 000000000000..40e3c76b2455 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherPacketCaptureGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "packetCaptureName": "pc1" + }, + "responses": { + "200": { + "body": { + "name": "pc1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/packetCaptures/pc1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Updating", + "target": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "bytesToCapturePerPacket": 10000, + "totalBytesPerSession": 100000, + "timeLimitInSeconds": 100, + "storageLocation": { + "storageId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Storage/storageAccounts/pcstore", + "storagePath": "https://mytestaccountname.blob.core.windows.net/capture/pc1.cap", + "filePath": "D:\\capture\\pc1.cap" + }, + "filters": [ + { + "protocol": "TCP", + "localIPAddress": "10.0.0.4", + "localPort": "80" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherPacketCaptureQueryStatus.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherPacketCaptureQueryStatus.json new file mode 100644 index 000000000000..5b2a3d4816cf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherPacketCaptureQueryStatus.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "packetCaptureName": "pc1" + }, + "responses": { + "200": { + "body": { + "name": "pc1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/packetCaptures/pc1", + "captureStartTime": "2016-09-07T12:35:24Z", + "packetCaptureStatus": "Stopped", + "stopReason": "TimeExceeded", + "packetCaptureError": [] + } + }, + "202": { + "body": { + "name": "pc1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/packetCaptures/pc1", + "captureStartTime": "2016-09-07T12:35:24Z", + "packetCaptureStatus": "Stopped", + "stopReason": "TimeExceeded", + "packetCaptureError": [] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherPacketCaptureStop.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherPacketCaptureStop.json new file mode 100644 index 000000000000..512a12ab6755 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherPacketCaptureStop.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "packetCaptureName": "pc1" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherPacketCapturesList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherPacketCapturesList.json new file mode 100644 index 000000000000..5d1f5d2053e1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherPacketCapturesList.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "pc1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/packetCaptures/pc1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Updating", + "target": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "bytesToCapturePerPacket": 10000, + "totalBytesPerSession": 100000, + "timeLimitInSeconds": 100, + "storageLocation": { + "storageId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Storage/storageAccounts/pcstore", + "storagePath": "https://mytestaccountname.blob.core.windows.net/capture/pc1.cap", + "filePath": "D:\\capture\\pc1.cap" + }, + "filters": [ + { + "protocol": "TCP", + "localIPAddress": "10.0.0.4", + "localPort": "80" + } + ] + } + }, + { + "name": "pc2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/packetCaptures/pc2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "target": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "bytesToCapturePerPacket": 10000, + "totalBytesPerSession": 100000, + "timeLimitInSeconds": 100, + "storageLocation": { + "storageId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Storage/storageAccounts/pcstore", + "storagePath": "https://mytestaccountname.blob.core.windows.net/capture/pc2.cap", + "filePath": "D:\\capture\\pc2.cap" + }, + "filters": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherSecurityGroupViewGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherSecurityGroupViewGet.json new file mode 100644 index 000000000000..187f2040d2ff --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherSecurityGroupViewGet.json @@ -0,0 +1,141 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + "responses": { + "200": { + "body": { + "networkInterfaces": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/nic1", + "securityRuleAssociations": { + "subnetAssociation": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "securityRules": [ + { + "name": "fe_rule", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/AppNSG/securityRules/fe_rule", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow Frontend", + "protocol": "Tcp", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "10.1.0.0/24", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 100, + "direction": "Inbound" + } + } + ] + }, + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions//resourceGroups//providers/Microsoft.Network/networkSecurityGroups//defaultSecurityRules/", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + } + ], + "effectiveSecurityRules": [ + { + "name": "DefaultOutboundDenyAll", + "protocol": "All", + "sourcePortRange": "0-65535", + "destinationPortRange": "0-65535", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + ] + } + } + ] + } + }, + "202": { + "body": { + "networkInterfaces": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/nic1", + "securityRuleAssociations": { + "subnetAssociation": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "securityRules": [ + { + "name": "fe_rule", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/AppNSG/securityRules/fe_rule", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow Frontend", + "protocol": "Tcp", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "10.1.0.0/24", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 100, + "direction": "Inbound" + } + } + ] + }, + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions//resourceGroups//providers/Microsoft.Network/networkSecurityGroups//defaultSecurityRules/", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + } + ], + "effectiveSecurityRules": [ + { + "name": "DefaultOutboundDenyAll", + "protocol": "All", + "sourcePortRange": "0-65535", + "destinationPortRange": "0-65535", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherTopologyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherTopologyGet.json new file mode 100644 index 000000000000..0e9a667eefce --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherTopologyGet.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceGroupName": "rg2" + } + }, + "responses": { + "200": { + "body": { + "id": "ce592f46-8164-4bf2-ad36-b8e4acf6fb68", + "createdDateTime": "2017-08-02T19:31:55.9461781Z", + "lastModified": "2017-05-27T00:00:13.2005337Z", + "resources": [ + { + "name": "MultiTierApp0", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/MultiTierApp0", + "location": "westus", + "associations": [ + { + "name": "appNic0", + "resourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/appNic0", + "associationType": "Contains" + }, + { + "name": "appNic10", + "resourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/appNic10", + "associationType": "Contains" + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherTroubleshootGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherTroubleshootGet.json new file mode 100644 index 000000000000..fd7d78a4990d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherTroubleshootGet.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "properties": { + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/st1", + "storagePath": "https://st1.blob.core.windows.net/cn1" + } + } + }, + "responses": { + "200": { + "body": { + "startTime": "2017-01-12T00:19:47.0442834Z", + "endTime": "2017-01-12T00:20:09.914Z", + "code": "UnHealthy", + "results": [ + { + "id": "000000", + "reasonType": "VipUnResponsive", + "summary": "We are sorry, your VPN gateway is unreachable from the Internet", + "detail": "During this time S2S VPN tunnels to on premises sites or other Azure virtual networks will be disconnected", + "recommendedActions": [ + { + "actionText": "Verify if there is a network security group (NSG) applied to the GatewaySubnet", + "actionUri": "https://docs.microsoft.com/en-us/azure/virtual-network/virtual-networks-create-nsg-arm-pportal", + "actionUriText": "Verify" + }, + { + "actionText": "If your VPN gateway isn't up and running by the expected resolution time, contact support", + "actionUri": "http://azure.microsoft.com/support", + "actionUriText": "contact support" + } + ] + } + ] + } + }, + "202": { + "body": { + "startTime": "2017-01-12T00:19:47.0442834Z", + "endTime": "2017-01-12T00:20:09.914Z", + "code": "UnHealthy", + "results": [ + { + "id": "000000", + "reasonType": "VipUnResponsive", + "summary": "We are sorry, your VPN gateway is unreachable from the Internet", + "detail": "During this time S2S VPN tunnels to on premises sites or other Azure virtual networks will be disconnected", + "recommendedActions": [ + { + "actionText": "Verify if there is a network security group (NSG) applied to the GatewaySubnet", + "actionUri": "https://docs.microsoft.com/en-us/azure/virtual-network/virtual-networks-create-nsg-arm-pportal", + "actionUriText": "Verify" + }, + { + "actionText": "If your VPN gateway isn't up and running by the expected resolution time, contact support", + "actionUri": "http://azure.microsoft.com/support", + "actionUriText": "contact support" + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherTroubleshootResultQuery.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherTroubleshootResultQuery.json new file mode 100644 index 000000000000..264ea42b6de7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherTroubleshootResultQuery.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + "responses": { + "200": { + "body": { + "startTime": "2017-01-12T00:19:47.0442834Z", + "endTime": "2017-01-12T00:20:09.914Z", + "code": "UnHealthy", + "results": [ + { + "id": "000000", + "reasonType": "VipUnResponsive", + "summary": "We are sorry, your VPN gateway is unreachable from the Internet", + "detail": "During this time S2S VPN tunnels to on premises sites or other Azure virtual networks will be disconnected", + "recommendedActions": [ + { + "actionText": "Verify if there is a network security group (NSG) applied to the GatewaySubnet", + "actionUri": "https://docs.microsoft.com/en-us/azure/virtual-network/virtual-networks-create-nsg-arm-pportal", + "actionUriText": "Verify" + }, + { + "actionText": "If your VPN gateway isn't up and running by the expected resolution time, contact support", + "actionUri": "http://azure.microsoft.com/support", + "actionUriText": "contact support" + } + ] + } + ] + } + }, + "202": { + "body": { + "startTime": "2017-01-12T00:19:47.0442834Z", + "endTime": "2017-01-12T00:20:09.914Z", + "code": "UnHealthy", + "results": [ + { + "id": "000000", + "reasonType": "VipUnResponsive", + "summary": "We are sorry, your VPN gateway is unreachable from the Internet", + "detail": "During this time S2S VPN tunnels to on premises sites or other Azure virtual networks will be disconnected", + "recommendedActions": [ + { + "actionText": "Verify if there is a network security group (NSG) applied to the GatewaySubnet", + "actionUri": "https://docs.microsoft.com/en-us/azure/virtual-network/virtual-networks-create-nsg-arm-pportal", + "actionUriText": "Verify" + }, + { + "actionText": "If your VPN gateway isn't up and running by the expected resolution time, contact support", + "actionUri": "http://azure.microsoft.com/support", + "actionUriText": "contact support" + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherUpdateTags.json new file mode 100644 index 000000000000..f278323abe99 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/NetworkWatcherUpdateTags.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "nw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/OperationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/OperationList.json new file mode 100644 index 000000000000..4f61bb9ab9e1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/OperationList.json @@ -0,0 +1,137 @@ +{ + "parameters": { + "location": "westus", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Network/localnetworkgateways/read", + "display": { + "provider": "Microsoft Network", + "resource": "LocalNetworkGateway", + "operation": "Get LocalNetworkGateway", + "description": "Gets LocalNetworkGateway" + } + }, + { + "name": "Microsoft.Network/localnetworkgateways/write", + "display": { + "provider": "Microsoft Network", + "resource": "LocalNetworkGateway", + "operation": "Create or update LocalNetworkGateway", + "description": "Creates or updates an existing LocalNetworkGateway" + } + }, + { + "name": "Microsoft.Network/localnetworkgateways/delete", + "display": { + "provider": "Microsoft Network", + "resource": "LocalNetworkGateway", + "operation": "Delete LocalNetworkGateway", + "description": "Deletes LocalNetworkGateway" + } + }, + { + "name": "Microsoft.Network/networkInterfaces/providers/Microsoft.Insights/metricDefinitions/read", + "display": { + "provider": "Microsoft Network", + "resource": "Network Interface metric definition", + "operation": "Read Network Interface metric definitions", + "description": "Gets available metrics for the Network Interface" + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "metricSpecifications": [ + { + "name": "BytesSentRate", + "displayName": "Bytes Sent", + "displayDescription": "Number of bytes the Network Interface sent", + "unit": "Count", + "aggregationType": "Total", + "availabilities": [ + { + "timeGrain": "00:01:00", + "retention": "00:00:00", + "blobDuration": "01:00:00" + }, + { + "timeGrain": "01:00:00", + "retention": "00:00:00", + "blobDuration": "1.00:00:00" + } + ], + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^__Ready__$", + "fillGapWithZero": false, + "dimensions": [], + "isInternal": false + }, + { + "name": "BytesReceivedRate", + "displayName": "Bytes Received", + "displayDescription": "Number of bytes the Network Interface received", + "unit": "Count", + "aggregationType": "Total", + "availabilities": [ + { + "timeGrain": "00:01:00", + "retention": "00:00:00", + "blobDuration": "01:00:00" + }, + { + "timeGrain": "01:00:00", + "retention": "00:00:00", + "blobDuration": "1.00:00:00" + } + ], + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^__Ready__$", + "fillGapWithZero": false, + "dimensions": [], + "isInternal": false + } + ] + } + } + }, + { + "name": "Microsoft.Network/networksecuritygroups/providers/Microsoft.Insights/logDefinitions/read", + "display": { + "provider": "Microsoft Network", + "resource": "Network Security Groups Log Definitions", + "operation": "Get Network Security Group Event Log Definitions", + "description": "Gets the events for network security group" + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "logSpecifications": [ + { + "name": "NetworkSecurityGroupEvent", + "displayName": "Network Security Group Event", + "blobDuration": "PT1H" + }, + { + "name": "NetworkSecurityGroupRuleCounter", + "displayName": "Network Security Group Rule Counter", + "blobDuration": "PT1H" + }, + { + "name": "NetworkSecurityGroupFlowEvent", + "displayName": "Network Security Group Rule Flow Event", + "blobDuration": "PT1H" + } + ] + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/P2SVpnGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/P2SVpnGatewayDelete.json new file mode 100644 index 000000000000..647665484d44 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/P2SVpnGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "gatewayName": "p2sVpnGateway1", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/P2SVpnGatewayGenerateVpnProfile.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/P2SVpnGatewayGenerateVpnProfile.json new file mode 100644 index 000000000000..0cd2a51cb831 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/P2SVpnGatewayGenerateVpnProfile.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "gatewayName": "p2sVpnGateway1", + "parameters": { + "authenticationMethod": "EAPTLS" + } + }, + "responses": { + "202": {}, + "200": { + "body": "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/P2SVpnGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/P2SVpnGatewayGet.json new file mode 100644 index 000000000000..b2309a0b0c72 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/P2SVpnGatewayGet.json @@ -0,0 +1,83 @@ +{ + "parameters": { + "gatewayName": "p2sVpnGateway1", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + }, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + }, + "enableInternetSecurity": false + } + } + ], + "vpnGatewayScaleUnit": 1, + "customDnsServers": [ + "3.3.3.3" + ], + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + }, + "isRoutingPreferenceInternet": false + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/P2SVpnGatewayGetConnectionHealth.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/P2SVpnGatewayGetConnectionHealth.json new file mode 100644 index 000000000000..729cea5060d9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/P2SVpnGatewayGetConnectionHealth.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "gatewayName": "p2sVpnGateway1", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + }, + "enableInternetSecurity": false + } + } + ], + "vpnGatewayScaleUnit": 1, + "customDnsServers": [ + "3.3.3.3" + ], + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + }, + "isRoutingPreferenceInternet": false + } + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/P2SVpnGatewayGetConnectionHealthDetailed.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/P2SVpnGatewayGetConnectionHealthDetailed.json new file mode 100644 index 000000000000..a1cbda636fcd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/P2SVpnGatewayGetConnectionHealthDetailed.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "p2s-vpn-gateway-test", + "gatewayName": "p2svpngateway", + "api-version": "2021-02-01", + "request": { + "vpnUserNamesFilter": [ + "vpnUser1", + "vpnUser2" + ], + "outputBlobSasUrl": "https://blobcortextesturl.blob.core.windows.net/folderforconfig/p2sconnectionhealths?sp=rw&se=2018-01-10T03%3A42%3A04Z&sv=2017-04-17&sig=WvXrT5bDmDFfgHs%2Brz%2BjAu123eRCNE9BO0eQYcPDT7pY%3D&sr=b" + } + }, + "responses": { + "200": { + "body": "" + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/P2SVpnGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/P2SVpnGatewayList.json new file mode 100644 index 000000000000..2cc00c4ec487 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/P2SVpnGatewayList.json @@ -0,0 +1,157 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + }, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + }, + "enableInternetSecurity": true + } + } + ], + "vpnGatewayScaleUnit": 1, + "customDnsServers": [ + "3.3.3.3" + ], + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + }, + "isRoutingPreferenceInternet": false + } + }, + { + "name": "p2sVpnGateway2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.4.0.0/16" + ] + }, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + }, + "enableInternetSecurity": true + } + } + ], + "vpnGatewayScaleUnit": 1, + "customDnsServers": [ + "4.4.4.4" + ], + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + }, + "isRoutingPreferenceInternet": false + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/P2SVpnGatewayListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/P2SVpnGatewayListByResourceGroup.json new file mode 100644 index 000000000000..55f2b6538c88 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/P2SVpnGatewayListByResourceGroup.json @@ -0,0 +1,153 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "properties": { + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + }, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + }, + "enableInternetSecurity": false + } + } + ], + "vpnGatewayScaleUnit": 1, + "customDnsServers": [ + "3.3.3.3" + ], + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + }, + "isRoutingPreferenceInternet": false + } + }, + { + "name": "p2sVpnGateway2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "properties": { + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + }, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + }, + "enableInternetSecurity": false + } + } + ], + "vpnGatewayScaleUnit": 1, + "customDnsServers": [ + "4.4.4.4" + ], + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + }, + "isRoutingPreferenceInternet": false + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/P2SVpnGatewayPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/P2SVpnGatewayPut.json new file mode 100644 index 000000000000..44df7751736e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/P2SVpnGatewayPut.json @@ -0,0 +1,210 @@ +{ + "parameters": { + "gatewayName": "p2sVpnGateway1", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid", + "p2SVpnGatewayParameters": { + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "properties": { + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + }, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "customDnsServers": [ + "1.1.1.1", + "2.2.2.2" + ], + "isRoutingPreferenceInternet": false + } + } + }, + "responses": { + "200": { + "body": { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + }, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + }, + "enableInternetSecurity": false + } + } + ], + "vpnGatewayScaleUnit": 1, + "customDnsServers": [ + "1.1.1.1", + "2.2.2.2" + ], + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 0, + "allocatedIpAddresses": [], + "totalIngressBytesTransferred": 0, + "totalEgressBytesTransferred": 0 + }, + "isRoutingPreferenceInternet": false + } + } + }, + "201": { + "body": { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + }, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + }, + "enableInternetSecurity": false + } + } + ], + "vpnGatewayScaleUnit": 1, + "customDnsServers": [ + "1.1.1.1", + "2.2.2.2" + ], + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 0, + "allocatedIpAddresses": [], + "totalIngressBytesTransferred": 0, + "totalEgressBytesTransferred": 0 + }, + "isRoutingPreferenceInternet": false + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/P2SVpnGatewayReset.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/P2SVpnGatewayReset.json new file mode 100644 index 000000000000..16c86e2b44f9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/P2SVpnGatewayReset.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "gatewayName": "p2sVpnGateway1", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "202": {}, + "200": { + "body": { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + }, + "enableInternetSecurity": false + } + } + ], + "vpnGatewayScaleUnit": 1, + "customDnsServers": [ + "3.3.3.3" + ], + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + }, + "isRoutingPreferenceInternet": false + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/P2SVpnGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/P2SVpnGatewayUpdateTags.json new file mode 100644 index 000000000000..42f8d90b05a4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/P2SVpnGatewayUpdateTags.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "gatewayName": "p2sVpnGateway1", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid", + "p2SVpnGatewayParameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "202": {}, + "200": { + "body": { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "properties": { + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + }, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + }, + "enableInternetSecurity": false + } + } + ], + "vpnGatewayScaleUnit": 1, + "customDnsServers": [ + "3.3.3.3" + ], + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + }, + "isRoutingPreferenceInternet": false + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/P2sVpnGatewaysDisconnectP2sVpnConnections.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/P2sVpnGatewaysDisconnectP2sVpnConnections.json new file mode 100644 index 000000000000..7cf09d5773df --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/P2sVpnGatewaysDisconnectP2sVpnConnections.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "p2s-vpn-gateway-test", + "p2sVpnGatewayName": "p2svpngateway", + "api-version": "2021-02-01", + "request": { + "vpnConnectionIds": [ + "vpnconnId1", + "vpnconnId2" + ] + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PeerExpressRouteCircuitConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PeerExpressRouteCircuitConnectionGet.json new file mode 100644 index 000000000000..672dda07562d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PeerExpressRouteCircuitConnectionGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "connectionName": "60aee347-e889-4a42-8c1b-0aae8b1e4013", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid1", + "circuitName": "ExpressRouteARMCircuitA", + "peeringName": "AzurePrivatePeering" + }, + "responses": { + "200": { + "body": { + "name": "60aee347-e889-4a42-8c1b-0aae8b1e4013", + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/peerConnections/60aee347-e889-4a42-8c1b-0aae8b1e4013", + "etag": "W/\"6ffbbb06-da20-44ca-a34f-280c4653b1e9\"", + "properties": { + "provisioningState": "Succeeded", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitB/peerings/AzurePrivatePeering" + }, + "addressPrefix": "20.0.0.0/29", + "circuitConnectionStatus": "Connected", + "connectionName": "circuitConnectionWestusEastus", + "authResourceGuid": "" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PeerExpressRouteCircuitConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PeerExpressRouteCircuitConnectionList.json new file mode 100644 index 000000000000..3847abed3610 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PeerExpressRouteCircuitConnectionList.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid1", + "circuitName": "ExpressRouteARMCircuitA", + "peeringName": "AzurePrivatePeering" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "60aee347-e889-4a42-8c1b-0aae8b1e4013", + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/peerConnections/60aee347-e889-4a42-8c1b-0aae8b1e4013", + "etag": "W/\"6ffbbb06-da20-44ca-a34f-280c4653b1e9\"", + "properties": { + "provisioningState": "Succeeded", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitB/peerings/AzurePrivatePeering" + }, + "addressPrefix": "20.0.0.0/29", + "circuitConnectionStatus": "Connected", + "connectionName": "circuitConnectionWestusEastus", + "authResourceGuid": "" + } + }, + { + "name": "c8b17193-8dd3-4f61-866d-8cdd2e2e268e", + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/peerConnections/c8b17193-8dd3-4f61-866d-8cdd2e2e268e", + "etag": "W/\"6ffbbb06-da20-44ca-a34f-280c4653b1e9\"", + "properties": { + "provisioningState": "Succeeded", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitC/peerings/AzurePrivatePeering" + }, + "addressPrefix": "30.0.0.0/29", + "circuitConnectionStatus": "Connected", + "connectionName": "circuitConnectionCentralusEastus", + "authResourceGuid": "64283012-d377-421d-8398-f6aeb2ac7ea0" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateEndpointCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateEndpointCreate.json new file mode 100644 index 000000000000..fceacbf69b33 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateEndpointCreate.json @@ -0,0 +1,130 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe", + "extendedLocation": { + "type": "EdgeZone", + "name": "edgeZone0" + }, + "parameters": { + "location": "eastus2euap", + "properties": { + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection." + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "testPe", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe", + "location": "eastus2euap", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ], + "manualPrivateLinkServiceConnections": [], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPe.nic.abcd1234" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc.cosmos.com", + "ipAddresses": [ + "192.168.0.4" + ] + }, + { + "fqdn": "abc2.cosmos.com", + "ipAddresses": [ + "192.168.0.5" + ] + } + ] + } + } + }, + "201": { + "body": { + "name": "testPe", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe", + "location": "eastus2euap", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPe.nic.abcd1234" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc.cosmos.com", + "ipAddresses": [ + "192.168.0.4" + ] + }, + { + "fqdn": "abc2.cosmos.com", + "ipAddresses": [ + "192.168.0.5" + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateEndpointCreateForManualApproval.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateEndpointCreateForManualApproval.json new file mode 100644 index 000000000000..0c5eaf02fc08 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateEndpointCreateForManualApproval.json @@ -0,0 +1,126 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe", + "parameters": { + "location": "eastus", + "properties": { + "manualPrivateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please manually approve my connection." + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "testPe", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [], + "manualPrivateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please manually approve my connection.", + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "Awaiting approval", + "actionsRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPe.nic.abcd1234" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc.cosmos.com", + "ipAddresses": [ + "192.168.0.4" + ] + }, + { + "fqdn": "abc2.cosmos.com", + "ipAddresses": [ + "192.168.0.5" + ] + } + ] + } + } + }, + "201": { + "body": { + "name": "testPe", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPe.nic.abcd1234" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc.cosmos.com", + "ipAddresses": [ + "192.168.0.4" + ] + }, + { + "fqdn": "abc2.cosmos.com", + "ipAddresses": [ + "192.168.0.5" + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateEndpointDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateEndpointDelete.json new file mode 100644 index 000000000000..eb823ff18bc8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateEndpointDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateEndpointDnsZoneGroupCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateEndpointDnsZoneGroupCreate.json new file mode 100644 index 000000000000..5f30bd281653 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateEndpointDnsZoneGroupCreate.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe", + "privateDnsZoneGroupName": "testPdnsgroup", + "parameters": { + "properties": { + "privateDnsZoneConfigs": [ + { + "properties": { + "privateDnsZoneId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateDnsZones/zone1.com" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "testPdnsgroup", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPe/privateDnsZoneGroups/testPdnsgroup", + "properties": { + "provisioningState": "Succeeded", + "privateDnsZoneConfigs": [ + { + "properties": { + "privateDnsZoneId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateDnsZones/zone1.com", + "recordSets": [ + { + "recordType": "A", + "recordSetName": "abc", + "fqdn": "abc.zone1.com", + "ipAddresses": [ + "10.0.0.4" + ] + }, + { + "recordType": "A", + "recordSetName": "abc2", + "fqdn": "abc2.zone1.com", + "ipAddresses": [ + "10.0.0.5" + ] + } + ] + } + } + ] + } + } + }, + "201": { + "body": { + "name": "testPdnsgroup", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPe/privateDnsZoneGroups/testPdnsgroup", + "properties": { + "provisioningState": "Succeeded", + "privateDnsZoneConfigs": [ + { + "properties": { + "privateDnsZoneId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateDnsZones/zone1.com", + "recordSets": [ + { + "recordType": "A", + "recordSetName": "abc", + "fqdn": "abc.zone1.com", + "ipAddresses": [ + "10.0.0.4" + ] + }, + { + "recordType": "A", + "recordSetName": "abc2", + "fqdn": "abc2.zone1.com", + "ipAddresses": [ + "10.0.0.5" + ] + } + ] + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateEndpointDnsZoneGroupDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateEndpointDnsZoneGroupDelete.json new file mode 100644 index 000000000000..beb9a41ea9dc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateEndpointDnsZoneGroupDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe", + "privateDnsZoneGroupName": "testPdnsgroup" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateEndpointDnsZoneGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateEndpointDnsZoneGroupGet.json new file mode 100644 index 000000000000..bb248c25bc64 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateEndpointDnsZoneGroupGet.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe", + "privateDnsZoneGroupName": "testPdnsgroup" + }, + "responses": { + "200": { + "body": { + "name": "testPdnsgroup", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPe/privateDnsZoneGroups/testPdnsgroup", + "properties": { + "provisioningState": "Succeeded", + "privateDnsZoneConfigs": [ + { + "properties": { + "privateDnsZoneId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateDnsZones/zone1.com", + "recordSets": [ + { + "recordType": "A", + "recordSetName": "abc", + "fqdn": "abc.zone1.com", + "ipAddresses": [ + "10.0.0.4" + ] + }, + { + "recordType": "A", + "recordSetName": "abc2", + "fqdn": "abc2.zone1.com", + "ipAddresses": [ + "10.0.0.5" + ] + } + ] + } + }, + { + "properties": { + "privateDnsZoneId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateDnsZones/zone2.com", + "recordSets": [ + { + "recordType": "A", + "recordSetName": "abc", + "fqdn": "abc.zone2.com", + "ipAddresses": [ + "10.0.0.6" + ] + }, + { + "recordType": "A", + "recordSetName": "abc2", + "fqdn": "abc2.zone2.com", + "ipAddresses": [ + "10.0.0.7" + ] + } + ] + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateEndpointDnsZoneGroupList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateEndpointDnsZoneGroupList.json new file mode 100644 index 000000000000..4049a311626f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateEndpointDnsZoneGroupList.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testPdnsgroup1", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPe/privateDnsZoneGroups/testPdnsgroup1", + "properties": { + "provisioningState": "Succeeded", + "privateDnsZoneConfigs": [ + { + "properties": { + "privateDnsZoneId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateDnsZones/zone1.com", + "recordSets": [ + { + "recordType": "A", + "recordSetName": "abc", + "fqdn": "abc.zone1.com", + "ipAddresses": [ + "10.0.0.4" + ] + }, + { + "recordType": "A", + "recordSetName": "abc2", + "fqdn": "abc2.zone1.com", + "ipAddresses": [ + "10.0.0.5" + ] + } + ] + } + } + ] + } + }, + { + "name": "testPdnsgroup2", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPe/privateDnsZoneGroups/testPdnsgroup2", + "properties": { + "provisioningState": "Succeeded", + "privateDnsZoneConfigs": [ + { + "properties": { + "privateDnsZoneId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateDnsZones/zone2.com", + "recordSets": [ + { + "recordType": "A", + "recordSetName": "abc3", + "fqdn": "abc3.zone2.com", + "ipAddresses": [ + "10.0.0.6" + ] + }, + { + "recordType": "A", + "recordSetName": "abc4", + "fqdn": "abc4.zone2.com", + "ipAddresses": [ + "10.0.0.7" + ] + } + ] + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateEndpointGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateEndpointGet.json new file mode 100644 index 000000000000..28a3720e203f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateEndpointGet.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe" + }, + "responses": { + "200": { + "body": { + "name": "testPe", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ], + "manualPrivateLinkServiceConnections": [], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPe.nic.abcd1234" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc.cosmos.com", + "ipAddresses": [ + "192.168.0.4" + ] + }, + { + "fqdn": "abc2.cosmos.com", + "ipAddresses": [ + "192.168.0.5" + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateEndpointGetForManualApproval.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateEndpointGetForManualApproval.json new file mode 100644 index 000000000000..1bca677c85f2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateEndpointGetForManualApproval.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe" + }, + "responses": { + "200": { + "body": { + "name": "testPe", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [], + "manualPrivateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please manually approve my connection.", + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "Awaiting approval", + "actionsRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPe.nic.abcd1234" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc.cosmos.com", + "ipAddresses": [ + "192.168.0.4" + ] + }, + { + "fqdn": "abc2.cosmos.com", + "ipAddresses": [ + "192.168.0.5" + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateEndpointList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateEndpointList.json new file mode 100644 index 000000000000..1df5511a70e3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateEndpointList.json @@ -0,0 +1,111 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/pe1", + "name": "pe1", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls1", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection for pe1.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ], + "manualPrivateLinkServiceConnections": [], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/pe1.nic.abcd1234" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc.cosmos.com", + "ipAddresses": [ + "192.168.0.4" + ] + }, + { + "fqdn": "abc2.cosmos.com", + "ipAddresses": [ + "192.168.0.5" + ] + } + ] + } + }, + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/pe2", + "name": "pe2", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [], + "manualPrivateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls2", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please manually approve my connection for pe2.", + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "Awaiting approval", + "actionsRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet2" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/pe2.nic.zyxw9876" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc3.cosmos1.com", + "ipAddresses": [ + "192.168.0.6" + ] + }, + { + "fqdn": "abc4.cosmos1.com", + "ipAddresses": [ + "192.168.0.7" + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateEndpointListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateEndpointListAll.json new file mode 100644 index 000000000000..7571e2fc087e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateEndpointListAll.json @@ -0,0 +1,156 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/pe1", + "name": "pe1", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls1", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection for pe1.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/pe1.nic.abcd1234" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc.cosmos.com", + "ipAddresses": [ + "192.168.0.4" + ] + }, + { + "fqdn": "abc2.cosmos.com", + "ipAddresses": [ + "192.168.0.5" + ] + } + ] + } + }, + { + "id": "/subscriptions/subId/resourceGroups/rg2/providers/Microsoft.Network/privateEndpoints/pe2", + "name": "pe2", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [], + "manualPrivateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls2", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please manually approve my connection for pe2.", + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "Awaiting approval", + "actionsRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet2" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg2/provders/Microsoft.Network/networkInterfaces/pe2.nic.zyxw9876" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc3.cosmos1.com", + "ipAddresses": [ + "192.168.0.5" + ] + }, + { + "fqdn": "abc4.cosmos1.com", + "ipAddresses": [ + "192.168.0.6" + ] + } + ] + } + }, + { + "id": "/subscriptions/subId/resourceGroups/rg3/providers/Microsoft.Network/privateEndpoints/pe3", + "name": "pe3", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg3/providers/Microsoft.Network/privateLinkServices/testPls3", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection for pe3.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg3/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet3" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg3/provders/Microsoft.Network/networkInterfaces/pe3.nic.efgh5463" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc5.cosmos2.com", + "ipAddresses": [ + "192.168.0.7" + ] + }, + { + "fqdn": "abc6.cosmos2.com", + "ipAddresses": [ + "192.168.0.8" + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateLinkServiceCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateLinkServiceCreate.json new file mode 100644 index 000000000000..2a79f18bb4a9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateLinkServiceCreate.json @@ -0,0 +1,159 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls", + "extendedLocation": { + "type": "EdgeZone", + "name": "edgeZone0" + }, + "parameters": { + "location": "eastus", + "properties": { + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2", + "subscription3" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2", + "fqdn3" + ], + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb", + "properties": { + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "testPls", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2", + "subscription3" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2", + "fqdn3" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb", + "properties": { + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPls.nic.abcd1234" + } + ] + } + } + }, + "201": { + "body": { + "name": "testPls", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2", + "subscription3" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2", + "fqdn3" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb", + "properties": { + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPls.nic.abcd1234" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateLinkServiceDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateLinkServiceDelete.json new file mode 100644 index 000000000000..e812d8dceec4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateLinkServiceDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateLinkServiceDeletePrivateEndpointConnection.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateLinkServiceDeletePrivateEndpointConnection.json new file mode 100644 index 000000000000..455adcd13fea --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateLinkServiceDeletePrivateEndpointConnection.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls", + "peConnectionName": "testPlePeConnection" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateLinkServiceGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateLinkServiceGet.json new file mode 100644 index 000000000000..b2aa5995c448 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateLinkServiceGet.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls" + }, + "responses": { + "200": { + "body": { + "name": "testPls", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "type": "Microsoft.Network/privateLinkServices", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2", + "subscription3" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2", + "fqdn3" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb", + "properties": { + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + } + } + ], + "privateEndpointConnections": [ + { + "name": "privateEndpointConnection", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPls.nic.abcd1234" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateLinkServiceGetPrivateEndpointConnection.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateLinkServiceGetPrivateEndpointConnection.json new file mode 100644 index 000000000000..e97b648c542a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateLinkServiceGetPrivateEndpointConnection.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls", + "peConnectionName": "testPlePeConnection" + }, + "responses": { + "200": { + "body": { + "name": "testPlePeConnection", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateLinkServiceList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateLinkServiceList.json new file mode 100644 index 000000000000..0b2ca02ba6a4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateLinkServiceList.json @@ -0,0 +1,141 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testPls1", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls1", + "type": "Microsoft.Network/privateLinkServices", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb1" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb1", + "properties": { + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb1" + } + } + } + ], + "privateEndpointConnections": [ + { + "name": "pec1", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPls1.nic.abcd1234" + } + ] + } + }, + { + "name": "testPls2", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls2", + "type": "Microsoft.Network/privateLinkServices", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2", + "subscription3" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2", + "fqdn3" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb2" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb2", + "properties": { + "privateIPAddress": "10.0.1.5", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb2" + } + } + } + ], + "privateEndpointConnections": [ + { + "name": "pec2", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe2" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPls2.nic.efgh5678" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateLinkServiceListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateLinkServiceListAll.json new file mode 100644 index 000000000000..66c73936beac --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateLinkServiceListAll.json @@ -0,0 +1,142 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testPls1", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls1", + "type": "Microsoft.Network/privateLinkServices", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2", + "subscription3" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2", + "fqdn3" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb1" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb1", + "properties": { + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb1" + } + } + } + ], + "privateEndpointConnections": [ + { + "name": "pec1", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPls1.nic.abcd1234" + } + ] + } + }, + { + "name": "testPls2", + "id": "/subscriptions/subId/resourceGroups/rg2/providers/Microsoft.Network/privateLinkServices/testPls2", + "type": "Microsoft.Network/privateLinkServices", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb2" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb2", + "properties": { + "privateIPAddress": "10.0.1.5", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb2" + } + } + } + ], + "privateEndpointConnections": [ + { + "name": "pec1", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg2/providers/Microsoft.Network/privateEndpoints/testPe2" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg2/provders/Microsoft.Network/networkInterfaces/testPls2.nic.efgh5678" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateLinkServiceListPrivateEndpointConnection.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateLinkServiceListPrivateEndpointConnection.json new file mode 100644 index 000000000000..590c1b5dfad9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateLinkServiceListPrivateEndpointConnection.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testPlePeConnection1", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + }, + { + "name": "testPlePeConnection2", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe2" + }, + "privateLinkServiceConnectionState": { + "status": "Rejected", + "description": "rejected by some reason." + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateLinkServiceUpdatePrivateEndpointConnection.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateLinkServiceUpdatePrivateEndpointConnection.json new file mode 100644 index 000000000000..0e1fc02a6f8b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PrivateLinkServiceUpdatePrivateEndpointConnection.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls", + "peConnectionName": "testPlePeConnection", + "parameters": { + "name": "testPlePeConnection", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "testPlePeConnection", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PublicIpAddressCreateCustomizedValues.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PublicIpAddressCreateCustomizedValues.json new file mode 100644 index 000000000000..704071a0e28c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PublicIpAddressCreateCustomizedValues.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "test-ip", + "zones": [ + "1" + ], + "parameters": { + "properties": { + "publicIPAllocationMethod": "Static", + "idleTimeoutInMinutes": 10, + "publicIPAddressVersion": "IPv4" + }, + "sku": { + "name": "Standard", + "tier": "Global" + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "eastus", + "zones": [ + "1" + ], + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Static", + "idleTimeoutInMinutes": 10, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "sku": { + "name": "Standard", + "tier": "Global" + }, + "type": "Microsoft.Network/publicIPAddresses" + } + }, + "201": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "eastus", + "zones": [ + "1" + ], + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Static", + "idleTimeoutInMinutes": 10, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "sku": { + "name": "Standard", + "tier": "Global" + }, + "type": "Microsoft.Network/publicIPAddresses" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PublicIpAddressCreateDefaults.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PublicIpAddressCreateDefaults.json new file mode 100644 index 000000000000..7685af212c6f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PublicIpAddressCreateDefaults.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "test-ip", + "parameters": { + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "sku": { + "name": "Basic" + }, + "type": "Microsoft.Network/publicIPAddresses" + } + }, + "201": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "sku": { + "name": "Basic" + }, + "type": "Microsoft.Network/publicIPAddresses" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PublicIpAddressCreateDns.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PublicIpAddressCreateDns.json new file mode 100644 index 000000000000..1cd95ab43774 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PublicIpAddressCreateDns.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "test-ip", + "parameters": { + "properties": { + "dnsSettings": { + "domainNameLabel": "dnslbl" + } + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "dnsSettings": { + "domainNameLabel": "dnslbl", + "fqdn": "dnslbl.westus.cloudapp.azure.com" + }, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "type": "Microsoft.Network/publicIPAddresses" + } + }, + "201": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "dnsSettings": { + "domainNameLabel": "dnslbl", + "fqdn": "dnslbl.westus.cloudapp.azure.com" + }, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "type": "Microsoft.Network/publicIPAddresses" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PublicIpAddressDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PublicIpAddressDelete.json new file mode 100644 index 000000000000..9293ccdbd445 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PublicIpAddressDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "test-ip" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PublicIpAddressGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PublicIpAddressGet.json new file mode 100644 index 000000000000..1a0d74643863 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PublicIpAddressGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "testDNS-ip" + }, + "responses": { + "200": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/testDNS-ip", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + }, + "ipTags": [ + { + "ipTagType": "FirstPartyUsage", + "tag": "SQL" + }, + { + "ipTagType": "FirstPartyUsage", + "tag": "Storage" + } + ] + }, + "type": "Microsoft.Network/publicIPAddresses" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PublicIpAddressList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PublicIpAddressList.json new file mode 100644 index 000000000000..271b2dfcb336 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PublicIpAddressList.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/testDNS-ip", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + }, + "ipTags": [ + { + "ipTagType": "FirstPartyUsage", + "tag": "SQL" + }, + { + "ipTagType": "FirstPartyUsage", + "tag": "Storage" + } + ] + }, + "type": "Microsoft.Network/publicIPAddresses" + }, + { + "name": "ip03", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/ip03", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "40.85.154.247", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "dnsSettings": { + "domainNameLabel": "testlbl", + "fqdn": "testlbl.westus.cloudapp.azure.com" + }, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/testLb/frontendIPConfigurations/LoadBalancerFrontEnd" + } + }, + "type": "Microsoft.Network/publicIPAddresses" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PublicIpAddressListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PublicIpAddressListAll.json new file mode 100644 index 000000000000..c87dbf847a84 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PublicIpAddressListAll.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/testDNS-ip", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "type": "Microsoft.Network/publicIPAddresses" + }, + { + "name": "ip01", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/publicIPAddresses/ip01", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "40.85.154.247", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "dnsSettings": { + "domainNameLabel": "testlbl", + "fqdn": "testlbl.westus.cloudapp.azure.com" + }, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/loadBalancers/testLb/frontendIPConfigurations/LoadBalancerFrontEnd" + } + }, + "type": "Microsoft.Network/publicIPAddresses" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PublicIpAddressUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PublicIpAddressUpdateTags.json new file mode 100644 index 000000000000..561e216b9141 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PublicIpAddressUpdateTags.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "test-ip", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Static", + "idleTimeoutInMinutes": 10, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "type": "Microsoft.Network/publicIPAddresses" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PublicIpPrefixCreateCustomizedValues.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PublicIpPrefixCreateCustomizedValues.json new file mode 100644 index 000000000000..5d10e4a1480e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PublicIpPrefixCreateCustomizedValues.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpPrefixName": "test-ipprefix", + "zones": [ + "1" + ], + "parameters": { + "location": "westus", + "properties": { + "publicIPAddressVersion": "IPv4", + "prefixLength": 30 + }, + "sku": { + "name": "Standard", + "tier": "Regional" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "zones": [ + "1" + ], + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "192.168.254.2/30", + "ipTags": [] + }, + "sku": { + "name": "Standard", + "tier": "Regional" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + }, + "201": { + "body": { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "zones": [ + "1" + ], + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "192.168.254.2/30", + "ipTags": [] + }, + "sku": { + "name": "Standard", + "tier": "Regional" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PublicIpPrefixCreateDefaults.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PublicIpPrefixCreateDefaults.json new file mode 100644 index 000000000000..105cd7bd68dd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PublicIpPrefixCreateDefaults.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpPrefixName": "test-ipprefix", + "parameters": { + "location": "westus", + "properties": { + "prefixLength": 30 + }, + "sku": { + "name": "Standard" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "192.168.254.2/30", + "ipTags": [] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + }, + "201": { + "body": { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "192.168.254.2/30", + "ipTags": [] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PublicIpPrefixDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PublicIpPrefixDelete.json new file mode 100644 index 000000000000..87770c49f240 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PublicIpPrefixDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpPrefixName": "test-ipprefix" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PublicIpPrefixGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PublicIpPrefixGet.json new file mode 100644 index 000000000000..4f8686f4b76b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PublicIpPrefixGet.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpPrefixName": "test-ipprefix" + }, + "responses": { + "200": { + "body": { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "192.168.254.2/30", + "ipTags": [], + "publicIPAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PublicIpPrefixList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PublicIpPrefixList.json new file mode 100644 index 000000000000..51218adc5375 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PublicIpPrefixList.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "40.85.154.2/30", + "ipTags": [ + { + "ipTagType": "FirstPartyUsage", + "tag": "SQL" + } + ] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + }, + { + "name": "ipprefix03", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/ipprefix03", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 31, + "ipPrefix": "40.85.153.2/31", + "ipTags": [] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PublicIpPrefixListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PublicIpPrefixListAll.json new file mode 100644 index 000000000000..bc913c8923e3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PublicIpPrefixListAll.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "41.85.154.247/30", + "ipTags": [], + "publicIPAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + }, + { + "name": "ipprefix01", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/publicIPPrefixes/ipprefix01", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "ipPrefix": "40.85.154.247/30", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipTags": [] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + }, + { + "name": "pfx", + "id": "/subscriptions/subid/resourceGroups/rg3/providers/Microsoft.Network/publicIPPrefixes/pfx", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/publicIPPrefixes", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "ipPrefix": "25.101.84.16/30", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipTags": [], + "loadBalancerFrontendIpConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg3/providers/Microsoft.Network/loadBalancers/lb-pfx/frontendIPConfigurations/ipconfig1" + } + }, + "sku": { + "name": "Standard" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PublicIpPrefixUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PublicIpPrefixUpdateTags.json new file mode 100644 index 000000000000..6a196728b220 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/PublicIpPrefixUpdateTags.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpPrefixName": "test-ipprefix", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "ipPrefix": "40.85.154.247/30", + "prefixLength": 30, + "ipTags": [] + }, + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteFilterCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteFilterCreate.json new file mode 100644 index 000000000000..46a22dce22e8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteFilterCreate.json @@ -0,0 +1,95 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid", + "routeFilterParameters": { + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "rules": [ + { + "name": "ruleName", + "properties": { + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ] + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "filterName", + "type": "Microsoft.Network/routeFilters", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ], + "peerings": [] + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "filterName", + "type": "Microsoft.Network/routeFilters", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ], + "peerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteFilterDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteFilterDelete.json new file mode 100644 index 000000000000..b804fee36511 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteFilterDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteFilterGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteFilterGet.json new file mode 100644 index 000000000000..2d428c79de84 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteFilterGet.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "filterName", + "type": "Microsoft.Network/routeFilters", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ], + "peerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteFilterList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteFilterList.json new file mode 100644 index 000000000000..e8bf6e0585b5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteFilterList.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "filterName", + "type": "Microsoft.Network/routeFilters", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ], + "peerings": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteFilterListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteFilterListByResourceGroup.json new file mode 100644 index 000000000000..56f7352ca96f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteFilterListByResourceGroup.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "filterName", + "type": "Microsoft.Network/routeFilters", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ], + "peerings": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteFilterRuleCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteFilterRuleCreate.json new file mode 100644 index 000000000000..eaaff8d97aef --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteFilterRuleCreate.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "ruleName": "ruleName", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid", + "routeFilterRuleParameters": { + "properties": { + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteFilterRuleDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteFilterRuleDelete.json new file mode 100644 index 000000000000..83509413753d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteFilterRuleDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "ruleName": "ruleName", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteFilterRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteFilterRuleGet.json new file mode 100644 index 000000000000..20f6682fb8dc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteFilterRuleGet.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "ruleName": "filterName", + "routeFilterName": "filterName", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteFilterRuleListByRouteFilter.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteFilterRuleListByRouteFilter.json new file mode 100644 index 000000000000..b3e6773a4312 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteFilterRuleListByRouteFilter.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid", + "routeFilterName": "filterName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteFilterUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteFilterUpdateTags.json new file mode 100644 index 000000000000..f1eb08a9d004 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteFilterUpdateTags.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid", + "parameters": { + "tags": { + "key1": "value1" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "filterName", + "type": "Microsoft.Network/routeFilters", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030" + ] + } + } + ], + "peerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteTableCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteTableCreate.json new file mode 100644 index 000000000000..89328acf34ce --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteTableCreate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt", + "parameters": { + "location": "westus" + } + }, + "responses": { + "200": { + "body": { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "routes": [], + "disableBgpRoutePropagation": true + } + } + }, + "201": { + "body": { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "disableBgpRoutePropagation": true, + "routes": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteTableCreateWithRoute.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteTableCreateWithRoute.json new file mode 100644 index 000000000000..70e420dab6a9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteTableCreateWithRoute.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt", + "parameters": { + "properties": { + "disableBgpRoutePropagation": true, + "routes": [ + { + "name": "route1", + "properties": { + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + }, + "location": "westus" + } + }, + "responses": { + "200": { + "body": { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "disableBgpRoutePropagation": true, + "routes": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + } + }, + "201": { + "body": { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteTableDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteTableDelete.json new file mode 100644 index 000000000000..561c552e2e40 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteTableDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteTableGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteTableGet.json new file mode 100644 index 000000000000..baed405fea7d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteTableGet.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt" + }, + "responses": { + "200": { + "body": { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "disableBgpRoutePropagation": false, + "routes": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteTableList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteTableList.json new file mode 100644 index 000000000000..d1f405994694 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteTableList.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "disableBgpRoutePropagation": true, + "routes": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + }, + { + "name": "testrt2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt2", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "disableBgpRoutePropagation": true, + "provisioningState": "Succeeded", + "routes": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteTableListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteTableListAll.json new file mode 100644 index 000000000000..04459a669eab --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteTableListAll.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + }, + { + "name": "testrt3", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/routeTables/testrt3", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "routes": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteTableRouteCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteTableRouteCreate.json new file mode 100644 index 000000000000..c61ea08355d3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteTableRouteCreate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt", + "routeName": "route1", + "routeParameters": { + "properties": { + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + }, + "responses": { + "200": { + "body": { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + }, + "201": { + "body": { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteTableRouteDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteTableRouteDelete.json new file mode 100644 index 000000000000..e30145e9eb09 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteTableRouteDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt", + "routeName": "route1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteTableRouteGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteTableRouteGet.json new file mode 100644 index 000000000000..5ce5d3707964 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteTableRouteGet.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt", + "routeName": "route1" + }, + "responses": { + "200": { + "body": { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "Internet" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteTableRouteList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteTableRouteList.json new file mode 100644 index 000000000000..91fb00d07c59 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteTableRouteList.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "Internet" + } + }, + { + "name": "route2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route2", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.2.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteTableUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteTableUpdateTags.json new file mode 100644 index 000000000000..ae67449d1dd9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/RouteTableUpdateTags.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "routes": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/SecurityPartnerProviderDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/SecurityPartnerProviderDelete.json new file mode 100644 index 000000000000..3400721ec5fd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/SecurityPartnerProviderDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "securityPartnerProviderName": "securityPartnerProvider" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/SecurityPartnerProviderGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/SecurityPartnerProviderGet.json new file mode 100644 index 000000000000..06f79acf9c9d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/SecurityPartnerProviderGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "securityPartnerProviderName": "securityPartnerProvider" + }, + "responses": { + "200": { + "body": { + "name": "securityPartnerProvider", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/securityPartnerProviders/securityPartnerProvider", + "type": "Microsoft.Network/securityPartnerProviders", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "securityProviderName": "ZScaler", + "connectionStatus": "Unknown", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/SecurityPartnerProviderListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/SecurityPartnerProviderListByResourceGroup.json new file mode 100644 index 000000000000..6a7537295918 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/SecurityPartnerProviderListByResourceGroup.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "securityPartnerProvider", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/securityPartnerProviders/securityPartnerProvider", + "type": "Microsoft.Network/securityPartnerProviders", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "securityProviderName": "ZScaler", + "connectionStatus": "Unknown", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/SecurityPartnerProviderListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/SecurityPartnerProviderListBySubscription.json new file mode 100644 index 000000000000..5816df41c270 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/SecurityPartnerProviderListBySubscription.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "securityPartnerProvider", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/securityPartnerProviders/securityPartnerProvider", + "type": "Microsoft.Network/securityPartnerProviders", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "securityProviderName": "ZScaler", + "connectionStatus": "Unknown", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/SecurityPartnerProviderPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/SecurityPartnerProviderPut.json new file mode 100644 index 000000000000..10617e73bd75 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/SecurityPartnerProviderPut.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "securityPartnerProviderName": "securityPartnerProvider", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "properties": { + "securityProviderName": "ZScaler", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "securityPartnerProvider", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/securityPartnerProviders/securityPartnerProvider", + "type": "Microsoft.Network/securityPartnerProviders", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "securityProviderName": "ZScaler", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + } + } + } + }, + "201": { + "body": { + "name": "securityPartnerProvider", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/securityPartnerProviders/securityPartnerProvider", + "type": "Microsoft.Network/securityPartnerProviders", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "securityProviderName": "ZScaler", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/SecurityPartnerProviderUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/SecurityPartnerProviderUpdateTags.json new file mode 100644 index 000000000000..1126b5cdfbd9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/SecurityPartnerProviderUpdateTags.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "securityPartnerProviderName": "securityPartnerProvider", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "fw1", + "id": "/subscriptions/subid/resourceGroups/azfwtest/providers/Microsoft.Network/securityPartnerProviders/securityPartnerProvider", + "type": "Microsoft.Network/securityPartnerProviders", + "location": "brazilsouth", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "securityProviderName": "ZScaler" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ServiceCommunityList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ServiceCommunityList.json new file mode 100644 index 000000000000..15bd82838c47 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ServiceCommunityList.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/providers/Microsoft.Network/bgpServiceCommunities/skype", + "name": "skype", + "type": "Microsoft.Network/bgpServiceCommunities", + "properties": { + "serviceName": "skype", + "bgpCommunities": [ + { + "serviceSupportedRegion": "Global", + "communityName": "Skype For Business Online", + "communityValue": "12076:5030", + "communityPrefixes": [ + "13.67.56.225/32", + "13.67.186.105/32" + ], + "isAuthorizedToUse": true, + "serviceGroup": "O365" + } + ] + } + }, + { + "id": "/subscriptions/subid/providers/Microsoft.Network/bgpServiceCommunities/exchange", + "name": "exchange", + "type": "Microsoft.Network/bgpServiceCommunities", + "properties": { + "serviceName": "exchange", + "bgpCommunities": [ + { + "serviceSupportedRegion": "Global", + "communityName": "Exchange Online", + "communityValue": "12076:5040", + "communityPrefixes": [ + "13.67.56.225/32", + "13.67.186.105/32" + ], + "isAuthorizedToUse": true, + "serviceGroup": "O365" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ServiceEndpointPolicyCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ServiceEndpointPolicyCreate.json new file mode 100644 index 000000000000..0160f50f268b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ServiceEndpointPolicyCreate.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testPolicy", + "parameters": { + "location": "westus" + } + }, + "responses": { + "200": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ServiceEndpointPolicies/testpolicy", + "type": "Microsoft.Network/ServiceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + }, + "201": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testpolicy", + "type": "Microsoft.Network/ServiceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ServiceEndpointPolicyCreateWithDefinition.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ServiceEndpointPolicyCreateWithDefinition.json new file mode 100644 index 000000000000..146e17168070 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ServiceEndpointPolicyCreateWithDefinition.json @@ -0,0 +1,83 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testPolicy", + "parameters": { + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ServiceEndpointPolicies/testpolicy", + "type": "Microsoft.Network/ServiceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + }, + "201": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ServiceEndpointPolicies/testpolicy", + "type": "Microsoft.Network/ServiceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ServiceEndpointPolicyDefinitionCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ServiceEndpointPolicyDefinitionCreate.json new file mode 100644 index 000000000000..6e507c02637d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ServiceEndpointPolicyDefinitionCreate.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testPolicy", + "serviceEndpointPolicyDefinitionName": "testDefinition", + "ServiceEndpointPolicyDefinitions": { + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "testDefinition", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testPolicy/serviceEndpointPolicyDefinitions/testDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + }, + "201": { + "body": { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ServiceEndpointPolicyDefinitionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ServiceEndpointPolicyDefinitionDelete.json new file mode 100644 index 000000000000..4e6c2603e790 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ServiceEndpointPolicyDefinitionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testPolicy", + "serviceEndpointPolicyDefinitionName": "testDefinition" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ServiceEndpointPolicyDefinitionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ServiceEndpointPolicyDefinitionGet.json new file mode 100644 index 000000000000..ee6779996325 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ServiceEndpointPolicyDefinitionGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testPolicy", + "serviceEndpointPolicyDefinitionName": "testDefinition" + }, + "responses": { + "200": { + "body": { + "name": "testDefinition", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testPolicy/serviceEndpointPolicyDefinitions/testDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ServiceEndpointPolicyDefinitionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ServiceEndpointPolicyDefinitionList.json new file mode 100644 index 000000000000..bba91e266f65 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ServiceEndpointPolicyDefinitionList.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testPolicy" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testDef", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testPolicy/serviceEndpointPolicyDefinitions/testDef", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ServiceEndpointPolicyDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ServiceEndpointPolicyDelete.json new file mode 100644 index 000000000000..972006c8fba1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ServiceEndpointPolicyDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "serviceEndpointPolicy1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ServiceEndpointPolicyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ServiceEndpointPolicyGet.json new file mode 100644 index 000000000000..11a3cdd7aab5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ServiceEndpointPolicyGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testServiceEndpointPolicy" + }, + "responses": { + "200": { + "body": { + "name": "testServiceEndpointPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testServiceEndpointPolicy", + "type": "Microsoft.Network/serviceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ServiceEndpointPolicyList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ServiceEndpointPolicyList.json new file mode 100644 index 000000000000..5851145b7f4d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ServiceEndpointPolicyList.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testServiceEndpointPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testServiceEndpointPolicy", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + }, + { + "name": "testServiceEndpointPolicy1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testServiceEndpointPolicy1", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition1", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ServiceEndpointPolicyListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ServiceEndpointPolicyListAll.json new file mode 100644 index 000000000000..0123da6b9ff7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ServiceEndpointPolicyListAll.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testPolicy", + "type": "Microsoft.Network/serviceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition1", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + }, + { + "name": "testPolicy1", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/serviceEndpointPolicies/testPolicy2", + "type": "Microsoft.Network/serviceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition2", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ServiceEndpointPolicyUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ServiceEndpointPolicyUpdateTags.json new file mode 100644 index 000000000000..780f7fea42af --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ServiceEndpointPolicyUpdateTags.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testServiceEndpointPolicy", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "testServiceEndpointPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testServiceEndpointPolicy", + "type": "Microsoft.Network/serviceEndpointPolicies", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ServiceTagsList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ServiceTagsList.json new file mode 100644 index 000000000000..0d59fef0a73d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/ServiceTagsList.json @@ -0,0 +1,89 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "location": "westcentralus", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "name": "public", + "id": "/subscriptions/subId/providers/Microsoft.Network/serviceTags/public", + "type": "Microsoft.Network/serviceTags", + "changeNumber": "63", + "cloud": "Public", + "values": [ + { + "name": "ApiManagement", + "id": "ApiManagement", + "properties": { + "changeNumber": "7", + "region": "", + "systemService": "AzureApiManagement", + "addressPrefixes": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ] + } + }, + { + "name": "ApiManagement.AustraliaCentral", + "id": "ApiManagement.AustraliaCentral", + "properties": { + "changeNumber": "2", + "region": "australiacentral", + "systemService": "AzureApiManagement", + "addressPrefixes": [ + "20.36.106.68/31", + "20.36.107.176/28" + ] + } + }, + { + "name": "AppService", + "id": "AppService", + "properties": { + "changeNumber": "13", + "region": "", + "systemService": "AzureAppService", + "addressPrefixes": [ + "13.64.73.110/32", + "191.235.208.12/32", + "191.235.215.184/32" + ] + } + }, + { + "name": "ServiceBus", + "id": "ServiceBus", + "properties": { + "changeNumber": "10", + "region": "", + "systemService": "AzureServiceBus", + "addressPrefixes": [ + "23.98.82.96/29", + "40.68.127.68/32", + "40.70.146.64/29" + ] + } + }, + { + "name": "ServiceBus.EastUS2", + "id": "ServiceBus.EastUS2", + "properties": { + "changeNumber": "1", + "region": "eastus2", + "systemService": "AzureServiceBus", + "addressPrefixes": [ + "13.68.110.36/32", + "40.70.146.64/29" + ] + } + } + ], + "nextLink": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Network/locations/centraluseuap/serviceTags?api-version=2020-06-01&changenumber=changenumber&$skipToken={skipToken}" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/SubnetCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/SubnetCreate.json new file mode 100644 index 000000000000..998b696d35e4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/SubnetCreate.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2021-02-01", + "subscriptionId": "subid", + "subnetParameters": { + "properties": { + "addressPrefix": "10.0.0.0/16" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/SubnetCreateServiceEndpoint.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/SubnetCreateServiceEndpoint.json new file mode 100644 index 000000000000..401e5fe806ca --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/SubnetCreateServiceEndpoint.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2021-02-01", + "subscriptionId": "subid", + "subnetParameters": { + "properties": { + "addressPrefix": "10.0.0.0/16", + "serviceEndpoints": [ + { + "service": "Microsoft.Storage" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "serviceEndpoints": [ + { + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ], + "provisioningState": "Succeeded" + } + ], + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "serviceEndpoints": [ + { + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ], + "provisioningState": "Succeeded" + } + ], + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/SubnetCreateWithDelegation.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/SubnetCreateWithDelegation.json new file mode 100644 index 000000000000..288009034983 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/SubnetCreateWithDelegation.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2021-02-01", + "subscriptionId": "subId", + "subnetParameters": { + "properties": { + "addressPrefix": "10.0.0.0/16" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subId/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded", + "delegations": [ + { + "name": "myDelegation", + "id": "/subscriptions/subId/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1/delegations/myDelegation", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [] + } + } + ], + "purpose": "" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subId/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded", + "delegations": [ + { + "name": "myDelegation", + "id": "/subscriptions/subId/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1/delegations/myDelegation", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [] + } + } + ], + "purpose": "" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/SubnetDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/SubnetDelete.json new file mode 100644 index 000000000000..237ba0c78c98 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/SubnetDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/SubnetGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/SubnetGet.json new file mode 100644 index 000000000000..94c0579acee5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/SubnetGet.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/SubnetGetWithDelegation.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/SubnetGetWithDelegation.json new file mode 100644 index 000000000000..dbeb6b226cc1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/SubnetGetWithDelegation.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2021-02-01", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subId/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded", + "delegations": [ + { + "name": "myDelegation", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1/delegations/myDelegation", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [] + } + } + ], + "purpose": "" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/SubnetList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/SubnetList.json new file mode 100644 index 000000000000..188523308bcf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/SubnetList.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet2", + "name": "subnet2", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/SubnetPrepareNetworkPolicies.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/SubnetPrepareNetworkPolicies.json new file mode 100644 index 000000000000..aec8efa40e47 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/SubnetPrepareNetworkPolicies.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "subnetName": "subnet1", + "prepareNetworkPoliciesRequestParameters": { + "serviceName": "Microsoft.Sql/managedInstances" + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/SubnetUnprepareNetworkPolicies.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/SubnetUnprepareNetworkPolicies.json new file mode 100644 index 000000000000..f4fefb6fc760 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/SubnetUnprepareNetworkPolicies.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "subnetName": "subnet1", + "unprepareNetworkPoliciesRequestParameters": { + "serviceName": "Microsoft.Sql/managedInstances" + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/UsageList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/UsageList.json new file mode 100644 index 000000000000..c1fd4f14a829 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/UsageList.json @@ -0,0 +1,265 @@ +{ + "parameters": { + "location": "westus", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "currentValue": 8.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/VirtualNetworks", + "limit": 50.0, + "name": { + "localizedValue": "Virtual Networks", + "value": "VirtualNetworks" + }, + "unit": "Count" + }, + { + "currentValue": 3.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/StaticPublicIPAddresses", + "limit": 20.0, + "name": { + "localizedValue": "Static Public IP Addresses", + "value": "StaticPublicIPAddresses" + }, + "unit": "Count" + }, + { + "currentValue": 1.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/NetworkSecurityGroups", + "limit": 100.0, + "name": { + "localizedValue": "Network Security Groups", + "value": "NetworkSecurityGroups" + }, + "unit": "Count" + }, + { + "currentValue": 8.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/PublicIPAddresses", + "limit": 60.0, + "name": { + "localizedValue": "Public IP Addresses", + "value": "PublicIPAddresses" + }, + "unit": "Count" + }, + { + "currentValue": 2.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/NetworkInterfaces", + "limit": 350.0, + "name": { + "localizedValue": "Network Interfaces", + "value": "NetworkInterfaces" + }, + "unit": "Count" + }, + { + "currentValue": 2.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/LoadBalancers", + "limit": 100.0, + "name": { + "localizedValue": "Load Balancers", + "value": "LoadBalancers" + }, + "unit": "Count" + }, + { + "currentValue": 1.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/ApplicationGateways", + "limit": 50.0, + "name": { + "localizedValue": "Application Gateways", + "value": "ApplicationGateways" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/RouteTables", + "limit": 100.0, + "name": { + "localizedValue": "Route Tables", + "value": "RouteTables" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/RouteFilters", + "limit": 1000.0, + "name": { + "localizedValue": "Route Filters", + "value": "RouteFilters" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/NetworkWatchers", + "limit": 1.0, + "name": { + "localizedValue": "Network Watchers", + "value": "NetworkWatchers" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/PacketCaptures", + "limit": 10.0, + "name": { + "localizedValue": "Packet Captures", + "value": "PacketCaptures" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/DnsServersPerVirtualNetwork", + "limit": 9.0, + "name": { + "localizedValue": "DNS servers per Virtual Network", + "value": "DnsServersPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/SubnetsPerVirtualNetwork", + "limit": 1000.0, + "name": { + "localizedValue": "Subnets per Virtual Network", + "value": "SubnetsPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/IPConfigurationsPerVirtualNetwork", + "limit": 4096.0, + "name": { + "localizedValue": "IP Configurations per Virtual Network", + "value": "IPConfigurationsPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/PeeringsPerVirtualNetwork", + "limit": 10.0, + "name": { + "localizedValue": "Peerings per Virtual Network", + "value": "PeeringsPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/SecurityRulesPerNetworkSecurityGroup", + "limit": 200.0, + "name": { + "localizedValue": "Security rules per Network Security Group", + "value": "SecurityRulesPerNetworkSecurityGroup" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/SecurityRuleAddressesOrPortsPerNetworkSecurityGroup", + "limit": 2000.0, + "name": { + "localizedValue": "Security rules addresses or ports per Network Security Group", + "value": "SecurityRuleAddressesOrPortsPerNetworkSecurityGroup" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/InboundRulesPerLoadBalancer", + "limit": 150.0, + "name": { + "localizedValue": "Inbound Rules per Load Balancer", + "value": "InboundRulesPerLoadBalancer" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/FrontendIPConfigurationPerLoadBalancer", + "limit": 10.0, + "name": { + "localizedValue": "Frontend IP Configurations per Load Balancer", + "value": "FrontendIPConfigurationPerLoadBalancer" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/outboundRulesPerLoadBalancer", + "limit": 5.0, + "name": { + "localizedValue": "Outbound Rules per Load Balancer", + "value": "outboundRulesPerLoadBalancer" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/RoutesPerRouteTable", + "limit": 100.0, + "name": { + "localizedValue": "Routes per Route Table", + "value": "RoutesPerRouteTable" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/SecondaryIPConfigurationsPerNetworkInterface", + "limit": 256.0, + "name": { + "localizedValue": "Secondary IP Configurations per Network Interface", + "value": "SecondaryIPConfigurationsPerNetworkInterface" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/InboundRulesPerNetworkInterface", + "limit": 500.0, + "name": { + "localizedValue": "Inbound rules per Network Interface", + "value": "InboundRulesPerNetworkInterface" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/RouteFilterRulesPerRouteFilter", + "limit": 1.0, + "name": { + "localizedValue": "Route filter rules per Route Filter", + "value": "RouteFilterRulesPerRouteFilter" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/RouteFiltersPerExpressRouteBgpPeering", + "limit": 1.0, + "name": { + "localizedValue": "Route filters per Express route BGP Peering", + "value": "RouteFiltersPerExpressRouteBgpPeering" + }, + "unit": "Count" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/UsageListSpacedLocation.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/UsageListSpacedLocation.json new file mode 100644 index 000000000000..e23597fcad07 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/UsageListSpacedLocation.json @@ -0,0 +1,335 @@ +{ + "parameters": { + "location": "West US", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "currentValue": 12.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/VirtualNetworks", + "limit": 50.0, + "name": { + "localizedValue": "Virtual Networks", + "value": "VirtualNetworks" + }, + "unit": "Count" + }, + { + "currentValue": 1.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/StaticPublicIPAddresses", + "limit": 20.0, + "name": { + "localizedValue": "Static Public IP Addresses", + "value": "StaticPublicIPAddresses" + }, + "unit": "Count" + }, + { + "currentValue": 3.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/NetworkSecurityGroups", + "limit": 100.0, + "name": { + "localizedValue": "Network Security Groups", + "value": "NetworkSecurityGroups" + }, + "unit": "Count" + }, + { + "currentValue": 12.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/PublicIPAddresses", + "limit": 60.0, + "name": { + "localizedValue": "Public IP Addresses", + "value": "PublicIPAddresses" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/PublicIpPrefixes", + "limit": 2147483647.0, + "name": { + "localizedValue": "Public Ip Prefixes", + "value": "PublicIpPrefixes" + }, + "unit": "Count" + }, + { + "currentValue": 2.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/NetworkInterfaces", + "limit": 24000.0, + "name": { + "localizedValue": "Network Interfaces", + "value": "NetworkInterfaces" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/LoadBalancers", + "limit": 100.0, + "name": { + "localizedValue": "Load Balancers", + "value": "LoadBalancers" + }, + "unit": "Count" + }, + { + "currentValue": 3.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/ApplicationGateways", + "limit": 50.0, + "name": { + "localizedValue": "Application Gateways", + "value": "ApplicationGateways" + }, + "unit": "Count" + }, + { + "currentValue": 5.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/RouteTables", + "limit": 100.0, + "name": { + "localizedValue": "Route Tables", + "value": "RouteTables" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/RouteFilters", + "limit": 1000.0, + "name": { + "localizedValue": "Route Filters", + "value": "RouteFilters" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/NetworkWatchers", + "limit": 1.0, + "name": { + "localizedValue": "Network Watchers", + "value": "NetworkWatchers" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/PacketCaptures", + "limit": 100.0, + "name": { + "localizedValue": "Packet Captures", + "value": "PacketCaptures" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/ApplicationSecurityGroups", + "limit": 500.0, + "name": { + "localizedValue": "Application Security Groups.", + "value": "ApplicationSecurityGroups" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/DdosProtectionPlans", + "limit": 1.0, + "name": { + "localizedValue": "DDoS Protection Plans.", + "value": "DdosProtectionPlans" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/ServiceEndpointPolicies", + "limit": 200.0, + "name": { + "localizedValue": "Service Endpoint Policies", + "value": "ServiceEndpointPolicies" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/NetworkIntentPolicies", + "limit": 200.0, + "name": { + "localizedValue": "Network Intent Policies", + "value": "NetworkIntentPolicies" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/DnsServersPerVirtualNetwork", + "limit": 9.0, + "name": { + "localizedValue": "DNS servers per Virtual Network", + "value": "DnsServersPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/SubnetsPerVirtualNetwork", + "limit": 1000.0, + "name": { + "localizedValue": "Subnets per Virtual Network", + "value": "SubnetsPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/IPConfigurationsPerVirtualNetwork", + "limit": 16384.0, + "name": { + "localizedValue": "IP Configurations per Virtual Network", + "value": "IPConfigurationsPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/PeeringsPerVirtualNetwork", + "limit": 50.0, + "name": { + "localizedValue": "Peerings per Virtual Network", + "value": "PeeringsPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/SecurityRulesPerNetworkSecurityGroup", + "limit": 1000.0, + "name": { + "localizedValue": "Security rules per Network Security Group", + "value": "SecurityRulesPerNetworkSecurityGroup" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/SecurityRulesPerNetworkIntentPolicy", + "limit": 100.0, + "name": { + "localizedValue": "Security rules per Network Intent Policy", + "value": "SecurityRulesPerNetworkIntentPolicy" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/RoutesPerNetworkIntentPolicy", + "limit": 100.0, + "name": { + "localizedValue": "Routes per Network Intent Policy", + "value": "RoutesPerNetworkIntentPolicy" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/SecurityRuleAddressesOrPortsPerNetworkSecurityGroup", + "limit": 2000.0, + "name": { + "localizedValue": "Security rules addresses or ports per Network Security Group", + "value": "SecurityRuleAddressesOrPortsPerNetworkSecurityGroup" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/InboundRulesPerLoadBalancer", + "limit": 150.0, + "name": { + "localizedValue": "Inbound Rules per Load Balancer", + "value": "InboundRulesPerLoadBalancer" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/FrontendIPConfigurationPerLoadBalancer", + "limit": 10.0, + "name": { + "localizedValue": "Frontend IP Configurations per Load Balancer", + "value": "FrontendIPConfigurationPerLoadBalancer" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/OutboundRulesPerLoadBalancer", + "limit": 5.0, + "name": { + "localizedValue": "Outbound Rules per Load Balancer", + "value": "OutboundRulesPerLoadBalancer" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/RoutesPerRouteTable", + "limit": 400.0, + "name": { + "localizedValue": "Routes per Route Table", + "value": "RoutesPerRouteTable" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/SecondaryIPConfigurationsPerNetworkInterface", + "limit": 256.0, + "name": { + "localizedValue": "Secondary IP Configurations per Network Interface", + "value": "SecondaryIPConfigurationsPerNetworkInterface" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/InboundRulesPerNetworkInterface", + "limit": 500.0, + "name": { + "localizedValue": "Inbound rules per Network Interface", + "value": "InboundRulesPerNetworkInterface" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/RouteFilterRulesPerRouteFilter", + "limit": 1.0, + "name": { + "localizedValue": "Route filter rules per Route Filter", + "value": "RouteFilterRulesPerRouteFilter" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/RouteFiltersPerExpressRouteBgpPeering", + "limit": 1.0, + "name": { + "localizedValue": "Route filters per Express route BGP Peering", + "value": "RouteFiltersPerExpressRouteBgpPeering" + }, + "unit": "Count" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualHubBgpConnectionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualHubBgpConnectionDelete.json new file mode 100644 index 000000000000..05634be38ddf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualHubBgpConnectionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "connectionName": "conn1", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualHubName": "hub1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualHubBgpConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualHubBgpConnectionGet.json new file mode 100644 index 000000000000..abe85f07e79b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualHubBgpConnectionGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "connectionName": "conn1", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualHubName": "hub1" + }, + "responses": { + "200": { + "body": { + "name": "conn1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/bgpConnections/conn1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peerIp": "192.168.1.5", + "peerAsn": 20000, + "connectionState": "Connected" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualHubBgpConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualHubBgpConnectionList.json new file mode 100644 index 000000000000..d28fb755ad30 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualHubBgpConnectionList.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualHubName": "hub1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "conn1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/bgpConnections/conn1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peerIp": "192.168.1.5", + "peerAsn": 20000, + "connectionState": "Connected" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualHubBgpConnectionPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualHubBgpConnectionPut.json new file mode 100644 index 000000000000..dcf4dcd41d42 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualHubBgpConnectionPut.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "connectionName": "conn1", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualHubName": "hub1", + "parameters": { + "properties": { + "peerIp": "192.168.1.5", + "peerAsn": 20000 + } + } + }, + "responses": { + "200": { + "body": { + "name": "conn1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/bgpConnections/conn1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peerIp": "192.168.1.5", + "peerAsn": 20000, + "connectionState": "Connected" + } + } + }, + "201": { + "body": { + "name": "conn1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/bgpConnections/conn1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peerIp": "192.168.1.5", + "peerAsn": 20000, + "connectionState": "Connected" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualHubDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualHubDelete.json new file mode 100644 index 000000000000..2ad9fc8773b6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualHubDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualHubGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualHubGet.json new file mode 100644 index 000000000000..97be9d2e0a27 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualHubGet.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub1", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualHubRouteTableV2s": [], + "addressPrefix": "10.10.1.0/24", + "sku": "Basic", + "routingState": "Provisioned", + "virtualRouterAsn": 65515, + "virtualRouterIps": [ + "10.10.1.12", + "10.10.1.13" + ], + "allowBranchToBranchTraffic": false, + "preferredRoutingGateway": "ExpressRoute" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualHubIpConfigurationDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualHubIpConfigurationDelete.json new file mode 100644 index 000000000000..ff062134e39d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualHubIpConfigurationDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "ipConfigName": "ipconfig1", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualHubName": "hub1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualHubIpConfigurationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualHubIpConfigurationGet.json new file mode 100644 index 000000000000..bfe740d257c4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualHubIpConfigurationGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualHubName": "hub1", + "ipConfigName": "ipconfig1" + }, + "responses": { + "200": { + "body": { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/ipConfigurations/ipconfig1", + "type": "Microsoft.Network/virtualHubs/ipConfigurations", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualHubIpConfigurationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualHubIpConfigurationList.json new file mode 100644 index 000000000000..6b86799d6946 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualHubIpConfigurationList.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualHubName": "hub1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/ipConfigurations/ipconfig1", + "type": "Microsoft.Network/virtualHubs/ipConfigurations", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualHubIpConfigurationPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualHubIpConfigurationPut.json new file mode 100644 index 000000000000..cb2b24286fa5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualHubIpConfigurationPut.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "ipConfigName": "ipconfig1", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualHubName": "hub1", + "parameters": { + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/ipConfigurations/ipconfig1", + "type": "Microsoft.Network/virtualHubs/ipConfigurations", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + } + } + } + }, + "201": { + "body": { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/ipConfigurations/ipconfig1", + "type": "Microsoft.Network/virtualHubs/ipConfigurations", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualHubList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualHubList.json new file mode 100644 index 000000000000..18731b16ba83 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualHubList.json @@ -0,0 +1,132 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub1", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualHubRouteTableV2s": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/routeTables/virtualHubRouteTable1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "rt2a", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + ], + "addressPrefix": "10.10.1.0/24", + "sku": "Basic", + "routingState": "Provisioned", + "virtualRouterAsn": 65515, + "virtualRouterIps": [ + "10.10.1.12", + "10.10.1.13" + ], + "allowBranchToBranchTraffic": false, + "preferredRoutingGateway": "ExpressRoute" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "East US", + "name": "virtualHub2", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualHubRouteTableV2s": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2/routeTables/virtualHubRouteTable2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "rt2a", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + ], + "addressPrefix": "210.10.1.0/24", + "sku": "Basic", + "routingState": "Provisioned", + "virtualRouterAsn": 65515, + "virtualRouterIps": [ + "10.10.1.12", + "10.10.1.13" + ], + "allowBranchToBranchTraffic": false, + "preferredRoutingGateway": "ExpressRoute" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualHubListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualHubListByResourceGroup.json new file mode 100644 index 000000000000..86aaa1a350e3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualHubListByResourceGroup.json @@ -0,0 +1,133 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub1", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualHubRouteTableV2s": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2/routeTables/virtualHubRouteTable2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "rt2a", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + ], + "addressPrefix": "10.10.1.0/24", + "sku": "Basic", + "routingState": "Provisioned", + "virtualRouterAsn": 65515, + "virtualRouterIps": [ + "10.10.1.12", + "10.10.1.13" + ], + "allowBranchToBranchTraffic": false, + "preferredRoutingGateway": "ExpressRoute" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "East US", + "name": "virtualHub2", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualHubRouteTableV2s": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2/routeTables/virtualHubRouteTable2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "rt2a", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + ], + "addressPrefix": "210.10.1.0/24", + "sku": "Basic", + "routingState": "Provisioned", + "virtualRouterAsn": 65515, + "virtualRouterIps": [ + "10.10.1.12", + "10.10.1.13" + ], + "allowBranchToBranchTraffic": false, + "preferredRoutingGateway": "ExpressRoute" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualHubPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualHubPut.json new file mode 100644 index 000000000000..e138a1037d6c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualHubPut.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "virtualHubName": "virtualHub2", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid", + "virtualHubParameters": { + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "addressPrefix": "10.168.0.0/24", + "sku": "Basic" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub2", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualHubRouteTableV2s": [], + "addressPrefix": "10.168.0.0/24", + "sku": "Basic", + "routingState": "Provisioned", + "virtualRouterAsn": 65515, + "virtualRouterIps": [ + "10.10.1.12", + "10.10.1.13" + ], + "allowBranchToBranchTraffic": false, + "preferredRoutingGateway": "ExpressRoute" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub2", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualHubRouteTableV2s": [], + "addressPrefix": "10.168.0.0/24", + "sku": "Basic", + "routingState": "Provisioned", + "virtualRouterAsn": 65515, + "virtualRouterIps": [ + "10.10.1.12", + "10.10.1.13" + ], + "allowBranchToBranchTraffic": false, + "preferredRoutingGateway": "ExpressRoute" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualHubRouteTableV2Delete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualHubRouteTableV2Delete.json new file mode 100644 index 000000000000..621c5bfddf37 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualHubRouteTableV2Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "routeTableName": "virtualHubRouteTable1a", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid", + "virtualHubName": "virtualHub1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualHubRouteTableV2Get.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualHubRouteTableV2Get.json new file mode 100644 index 000000000000..43eca1efec53 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualHubRouteTableV2Get.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "routeTableName": "virtualHubRouteTable1a", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid", + "virtualHubName": "virtualHub1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/routeTables/virtualHubRouteTable1a", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "virtualHubRouteTable1a", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualHubRouteTableV2List.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualHubRouteTableV2List.json new file mode 100644 index 000000000000..48dd70a22c5c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualHubRouteTableV2List.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": [ + { + "name": "virtualHubRouteTable1a", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/routeTables/virtualHubRouteTable1a", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + }, + { + "name": "virtualHubRouteTable1b", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/routeTables/virtualHubRouteTable1b", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.30.0.0/16", + "20.40.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Branches" + ] + } + } + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualHubRouteTableV2Put.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualHubRouteTableV2Put.json new file mode 100644 index 000000000000..519620da4ff3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualHubRouteTableV2Put.json @@ -0,0 +1,113 @@ +{ + "parameters": { + "routeTableName": "virtualHubRouteTable1a", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid", + "virtualHubName": "virtualHub1", + "virtualHubRouteTableV2Parameters": { + "properties": { + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/routeTables/virtualHubRouteTable1a", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "virtualHubRouteTable1a", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/routeTables/virtualHubRouteTable1a", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "virtualHubRouteTable1a", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualHubUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualHubUpdateTags.json new file mode 100644 index 000000000000..42f933d066ce --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualHubUpdateTags.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "virtualHubName": "virtualHub2", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid", + "virtualHubParameters": { + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub2", + "type": "Microsoft.Network/virtualHubs", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualHubRouteTableV2s": [], + "addressPrefix": "10.168.0.0/24", + "sku": "Basic", + "virtualRouterAsn": 65515, + "virtualRouterIps": [ + "10.10.1.12", + "10.10.1.13" + ], + "allowBranchToBranchTraffic": false + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkCheckIPAddressAvailability.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkCheckIPAddressAvailability.json new file mode 100644 index 000000000000..898bbc028292 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkCheckIPAddressAvailability.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "ipAddress": "10.0.1.4" + }, + "responses": { + "200": { + "body": { + "available": false, + "availableIPAddresses": [ + "10.0.1.5", + "10.0.1.6", + "10.0.1.7", + "10.0.1.8", + "10.0.1.9" + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkCreate.json new file mode 100644 index 000000000000..fe22b1f6351a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkCreate.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "flowTimeoutInMinutes": 10 + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "flowTimeoutInMinutes": 10, + "subnets": [], + "virtualNetworkPeerings": [] + } + } + }, + "201": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "flowTimeoutInMinutes": 10, + "subnets": [], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkCreateServiceEndpointPolicy.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkCreateServiceEndpointPolicy.json new file mode 100644 index 000000000000..6956a281fade --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkCreateServiceEndpointPolicy.json @@ -0,0 +1,126 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "vnetTest", + "virtualNetworkName": "vnet1", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "serviceEndpoints": [ + { + "service": "Microsoft.Storage" + } + ], + "serviceEndpointPolicies": [ + { + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/serviceEndpointPolicies/ServiceEndpointPolicy1" + } + ] + } + } + ] + }, + "location": "eastus2euap" + } + }, + "responses": { + "200": { + "body": { + "name": "vnet1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus2euap", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/test-1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "ipConfigurations": [], + "resourceNavigationLinks": [], + "serviceEndpoints": [ + { + "provisioningState": "Succeeded", + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ] + } + ], + "serviceEndpointPolicies": [ + { + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/serviceEndpointPolicies/ServiceEndpointPolicy1" + } + ], + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + }, + "201": { + "body": { + "name": "vnet1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus2euap", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/test-1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "ipConfigurations": [], + "resourceNavigationLinks": [], + "serviceEndpoints": [ + { + "provisioningState": "Succeeded", + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ] + } + ], + "serviceEndpointPolicies": [ + { + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/serviceEndpointPolicies/ServiceEndpointPolicy1" + } + ], + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkCreateServiceEndpoints.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkCreateServiceEndpoints.json new file mode 100644 index 000000000000..809ec3186eab --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkCreateServiceEndpoints.json @@ -0,0 +1,111 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "vnetTest", + "virtualNetworkName": "vnet1", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "serviceEndpoints": [ + { + "service": "Microsoft.Storage" + } + ] + } + } + ] + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "vnet1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/test-1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "ipConfigurations": [], + "resourceNavigationLinks": [], + "serviceEndpoints": [ + { + "provisioningState": "Succeeded", + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ] + } + ], + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + }, + "201": { + "body": { + "name": "vnet1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/test-1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "ipConfigurations": [], + "resourceNavigationLinks": [], + "serviceEndpoints": [ + { + "provisioningState": "Succeeded", + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ] + } + ], + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkCreateSubnet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkCreateSubnet.json new file mode 100644 index 000000000000..960967b4b989 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkCreateSubnet.json @@ -0,0 +1,82 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24" + } + } + ] + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + }, + "201": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkCreateSubnetWithAddressPrefixes.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkCreateSubnetWithAddressPrefixes.json new file mode 100644 index 000000000000..9d56950c4d45 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkCreateSubnetWithAddressPrefixes.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-2", + "properties": { + "addressPrefixes": [ + "10.0.0.0/28", + "10.0.1.0/28" + ] + } + } + ] + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-2", + "name": "test-2", + "properties": { + "addressPrefixes": [ + "10.0.0.0/28", + "10.1.0.0/28" + ], + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + }, + "201": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-2", + "name": "test-2", + "properties": { + "addressPrefixes": [ + "10.0.0.0/28", + "10.0.1.0/28" + ], + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkCreateSubnetWithDelegation.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkCreateSubnetWithDelegation.json new file mode 100644 index 000000000000..bf92e1f38228 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkCreateSubnetWithDelegation.json @@ -0,0 +1,114 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "delegations": [ + { + "name": "myDelegation", + "properties": { + "serviceName": "Microsoft.Sql/managedInstances" + } + } + ] + } + } + ] + }, + "location": "westcentralus" + } + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "westcentralus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded", + "delegations": [ + { + "name": "myDelegation", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1/delegations/myDelegation", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Sql/managedInstances", + "actions": [] + } + } + ], + "purpose": "" + } + } + ], + "virtualNetworkPeerings": [] + } + } + }, + "201": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "westcentralus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded", + "delegations": [ + { + "name": "myDelegation", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1/delegations/myDelegation", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Sql/managedInstances", + "actions": [] + } + } + ], + "purpose": "" + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkCreateWithBgpCommunities.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkCreateWithBgpCommunities.json new file mode 100644 index 000000000000..459977a092ac --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkCreateWithBgpCommunities.json @@ -0,0 +1,93 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24" + } + } + ], + "bgpCommunities": { + "virtualNetworkCommunity": "12076:20000" + } + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded" + } + } + ], + "bgpCommunities": { + "virtualNetworkCommunity": "12076:20000", + "regionalCommunity": "12076:50004" + }, + "virtualNetworkPeerings": [] + } + } + }, + "201": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded" + } + } + ], + "bgpCommunities": { + "virtualNetworkCommunity": "12076:20000", + "regionalCommunity": "12076:50004" + }, + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkDelete.json new file mode 100644 index 000000000000..10ae604f37ed --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayConnectionCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayConnectionCreate.json new file mode 100644 index 000000000000..55e07fcd51ee --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayConnectionCreate.json @@ -0,0 +1,169 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "connS2S", + "parameters": { + "properties": { + "virtualNetworkGateway1": { + "properties": { + "ipConfigurations": [ + { + "properties": { + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip" + } + }, + "name": "gwipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1" + } + ], + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "enableBgp": false, + "activeActive": false, + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1" + }, + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "location": "centralus", + "tags": {} + }, + "localNetworkGateway2": { + "properties": { + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.1.0.0/16" + ] + }, + "gatewayIpAddress": "x.x.x.x" + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "location": "centralus", + "tags": {} + }, + "ingressNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/natRules/natRule1" + } + ], + "egressNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/natRules/natRule2" + } + ], + "connectionType": "IPsec", + "connectionProtocol": "IKEv2", + "routingWeight": 0, + "dpdTimeoutSeconds": 30, + "sharedKey": "Abc123", + "enableBgp": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "trafficSelectorPolicies": [], + "connectionMode": "Default" + }, + "location": "centralus" + } + }, + "responses": { + "201": { + "body": { + "name": "connS2S", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/connS2S", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/connections", + "location": "centralus", + "properties": { + "provisioningState": "Updating", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "properties": {} + }, + "localNetworkGateway2": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "properties": {} + }, + "ingressNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/natRules/natRule1" + } + ], + "egressNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/natRules/natRule2" + } + ], + "connectionType": "IPsec", + "connectionProtocol": "IKEv2", + "routingWeight": 0, + "dpdTimeoutSeconds": 30, + "sharedKey": "Abc123", + "enableBgp": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "connectionMode": "Default" + } + } + }, + "200": { + "body": { + "name": "connS2S", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/connS2S", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/connections", + "location": "centralus", + "properties": { + "provisioningState": "Updating", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "properties": {} + }, + "localNetworkGateway2": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "properties": {} + }, + "ingressNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/natRules/natRule1" + } + ], + "egressNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/natRules/natRule2" + } + ], + "connectionType": "IPsec", + "connectionProtocol": "IKEv2", + "routingWeight": 0, + "dpdTimeoutSeconds": 30, + "sharedKey": "Abc123", + "enableBgp": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "connectionMode": "Default" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayConnectionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayConnectionDelete.json new file mode 100644 index 000000000000..6e4a46372360 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayConnectionDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "conn1" + }, + "responses": { + "202": {}, + "200": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayConnectionGet.json new file mode 100644 index 000000000000..5a4b5b9c0b62 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayConnectionGet.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "connS2S" + }, + "responses": { + "200": { + "body": { + "name": "connS2S", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/connS2S", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/connections", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "properties": {} + }, + "localNetworkGateway2": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "properties": {} + }, + "ingressNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/natRules/natRule1" + } + ], + "egressNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/natRules/natRule2" + } + ], + "connectionType": "IPsec", + "connectionProtocol": "IKEv2", + "routingWeight": 0, + "dpdTimeoutSeconds": 30, + "sharedKey": "Abc123", + "enableBgp": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "trafficSelectorPolicies": [], + "connectionStatus": "Connecting", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "connectionMode": "Default" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayConnectionGetIkeSas.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayConnectionGetIkeSas.json new file mode 100644 index 000000000000..2fe07da8eade --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayConnectionGetIkeSas.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "vpngwcn1" + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/westus/operationResults/{operationId}?api-version=2021-02-01" + } + }, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayConnectionGetSharedKey.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayConnectionGetSharedKey.json new file mode 100644 index 000000000000..c52e39c39214 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayConnectionGetSharedKey.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "connS2S" + }, + "responses": { + "200": { + "body": { + "value": "AzureAbc123" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayConnectionReset.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayConnectionReset.json new file mode 100644 index 000000000000..accebce62715 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayConnectionReset.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "conn1" + }, + "responses": { + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayConnectionResetSharedKey.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayConnectionResetSharedKey.json new file mode 100644 index 000000000000..e4e26e76ce1b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayConnectionResetSharedKey.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "conn1", + "parameters": { + "keyLength": 128 + } + }, + "responses": { + "200": { + "body": { + "keyLength": 128 + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayConnectionSetSharedKey.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayConnectionSetSharedKey.json new file mode 100644 index 000000000000..f3d94e94fb10 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayConnectionSetSharedKey.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "connS2S", + "parameters": { + "value": "AzureAbc123" + } + }, + "responses": { + "200": { + "body": { + "value": "AzureAbc123" + } + }, + "201": { + "body": { + "value": "AzureAbc123" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayConnectionStartPacketCapture.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayConnectionStartPacketCapture.json new file mode 100644 index 000000000000..99cde68a100f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayConnectionStartPacketCapture.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "vpngwcn1" + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayConnectionStartPacketCaptureFilterData.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayConnectionStartPacketCaptureFilterData.json new file mode 100644 index 000000000000..0d0bc6d1db97 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayConnectionStartPacketCaptureFilterData.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "vpngwcn1", + "parameters": { + "filterData": "{'TracingFlags': 11,'MaxPacketBufferSize': 120,'MaxFileSize': 200,'Filters': [{'SourceSubnets': ['20.1.1.0/24'],'DestinationSubnets': ['10.1.1.0/24'],'SourcePort': [500],'DestinationPort': [4500],'Protocol': 6,'TcpFlags': 16,'CaptureSingleDirectionTrafficOnly': true}]}" + } + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayConnectionStopPacketCapture.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayConnectionStopPacketCapture.json new file mode 100644 index 000000000000..92aa45d2be5d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayConnectionStopPacketCapture.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "vpngwcn1", + "parameters": { + "sasUrl": "https://teststorage.blob.core.windows.net/?sv=2018-03-28&ss=bfqt&srt=sco&sp=rwdlacup&se=2019-09-13T07:44:05Z&st=2019-09-06T23:44:05Z&spr=https&sig=V1h9D1riltvZMI69d6ihENnFo%2FrCvTqGgjO2lf%2FVBhE%3D" + } + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayConnectionUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayConnectionUpdateTags.json new file mode 100644 index 000000000000..60db3ec17f06 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayConnectionUpdateTags.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "test", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "202": {}, + "200": { + "body": { + "name": "test", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/test", + "type": "Microsoft.Network/connections", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "properties": {} + }, + "localNetworkGateway2": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/lgw", + "properties": {} + }, + "ingressNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/natRules/natRule1" + } + ], + "egressNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/natRules/natRule2" + } + ], + "connectionType": "IPsec", + "routingWeight": 0, + "sharedKey": "temp1234", + "enableBgp": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "trafficSelectorPolicies": [], + "connectionStatus": "Unknown", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayConnectionsList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayConnectionsList.json new file mode 100644 index 000000000000..b243bcbec2b8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayConnectionsList.json @@ -0,0 +1,97 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "conn1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/conn1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/connections", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw1", + "properties": {} + }, + "localNetworkGateway2": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw1", + "properties": {} + }, + "ingressNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw1/natRules/natRule1" + } + ], + "egressNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw1/natRules/natRule2" + } + ], + "connectionType": "IPsec", + "connectionProtocol": "IKEv1", + "routingWeight": 0, + "dpdTimeoutSeconds": 30, + "enableBgp": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "trafficSelectorPolicies": [], + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "connectionMode": "Default" + } + }, + { + "name": "conn2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/conn2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/connections", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw2", + "properties": {} + }, + "localNetworkGateway2": { + "properties": {}, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw2" + }, + "ingressNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw2/natRules/natRule1" + } + ], + "egressNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw2/natRules/natRule2" + } + ], + "connectionType": "IPsec", + "connectionProtocol": "IKEv2", + "routingWeight": 0, + "dpdTimeoutSeconds": 20, + "enableBgp": false, + "useLocalAzureIpAddress": true, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "trafficSelectorPolicies": [], + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "connectionMode": "Default" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayDelete.json new file mode 100644 index 000000000000..6e8d2f662513 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayGenerateVpnClientPackage.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayGenerateVpnClientPackage.json new file mode 100644 index 000000000000..18316001efec --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayGenerateVpnClientPackage.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "parameters": {} + }, + "responses": { + "200": { + "body": "" + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayGenerateVpnProfile.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayGenerateVpnProfile.json new file mode 100644 index 000000000000..d62e1a152fd0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayGenerateVpnProfile.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "parameters": {} + }, + "responses": { + "202": {}, + "200": { + "body": "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayGet.json new file mode 100644 index 000000000000..f0e62bf7b282 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayGet.json @@ -0,0 +1,131 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "200": { + "body": { + "name": "vpngw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "gwipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + } + } + } + ], + "natRules": [ + { + "name": "natRule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/natRules/natRule1", + "etag": "W/\"00ae2b69-88e7-4b3a-b66a-cfa2244e0801\"", + "properties": { + "provisioningState": "Succeeded", + "type": "Static", + "mode": "EgressSnat", + "internalMappings": [ + { + "addressSpace": "10.10.0.0/24" + } + ], + "externalMappings": [ + { + "addressSpace": "50.0.0.0/24" + } + ] + } + }, + { + "name": "natRule2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/natRules/natRule2", + "etag": "W/\"00ae2b69-88e7-4b3a-b66a-cfa2244e0801\"", + "properties": { + "provisioningState": "Succeeded", + "type": "Static", + "mode": "IngressSnat", + "internalMappings": [ + { + "addressSpace": "20.10.0.0/24" + } + ], + "externalMappings": [ + { + "addressSpace": "30.0.0.0/24" + } + ] + } + } + ], + "enableBgpRouteTranslationForNat": false, + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 0 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "vpnGatewayGeneration": "None", + "enableBgp": false, + "enablePrivateIpAddress": false, + "activeActive": false, + "vpnClientConfiguration": { + "vpnClientProtocols": [ + "OpenVPN" + ], + "vpnClientRootCertificates": [], + "vpnClientRevokedCertificates": [], + "radiusServers": [ + { + "radiusServerAddress": "10.1.0.0", + "radiusServerScore": 20 + } + ] + }, + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "defaultBgpIpAddresses": [ + "10.3.1.254" + ], + "customBgpIpAddresses": [ + "169.254.21.10" + ], + "tunnelIpAddresses": [ + "52.161.10.135" + ] + } + ] + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayGetAdvertisedRoutes.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayGetAdvertisedRoutes.json new file mode 100644 index 000000000000..74675ffb96ee --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayGetAdvertisedRoutes.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "peer": "test" + }, + "responses": { + "202": {}, + "200": { + "body": {} + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayGetBGPPeerStatus.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayGetBGPPeerStatus.json new file mode 100644 index 000000000000..3691946cb1cf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayGetBGPPeerStatus.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": { + "body": {} + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayGetVpnClientIpsecParameters.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayGetVpnClientIpsecParameters.json new file mode 100644 index 000000000000..c0635fa87c33 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayGetVpnClientIpsecParameters.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "200": { + "body": { + "saLifeTimeSeconds": 86473, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup2", + "pfsGroup": "PFS2" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayGetVpnProfilePackageUrl.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayGetVpnProfilePackageUrl.json new file mode 100644 index 000000000000..147edee37e18 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayGetVpnProfilePackageUrl.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": { + "body": "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayGetVpnclientConnectionHealth.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayGetVpnclientConnectionHealth.json new file mode 100644 index 000000000000..1d802cec180c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayGetVpnclientConnectionHealth.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "resourceGroupName": "p2s-vnet-test", + "api-version": "2021-02-01", + "subscriptionId": "subid", + "virtualNetworkGatewayName": "vpnp2sgw" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "vpnConnectionId": "IKEv2_1e1cfe59-5c7c-4315-a876-b11fbfdfeed4", + "vpnConnectionDuration": 900, + "vpnConnectionTime": "2019-05-02T22:26:22", + "publicIpAddress": "167.220.2.232:45522", + "privateIpAddress": "192.168.210.2", + "vpnUserName": "gwp2schildcert", + "maxBandwidth": 240000000, + "egressPacketsTransferred": 557, + "egressBytesTransferred": 33420, + "ingressPacketsTransferred": 557, + "ingressBytesTransferred": 33420, + "maxPacketsPerSecond": 4 + }, + { + "vpnConnectionId": "IKEv2_571cfe59-2c7d-1415-e813-c51fbfdfea16", + "vpnConnectionDuration": 800, + "vpnConnectionTime": "2019-05-01T21:06:12", + "publicIpAddress": "167.220.2.232:45213", + "privateIpAddress": "192.168.210.1", + "vpnUserName": "gwp2schildcert", + "maxBandwidth": 220000000, + "egressPacketsTransferred": 357, + "egressBytesTransferred": 23420, + "ingressPacketsTransferred": 357, + "ingressBytesTransferred": 23420, + "maxPacketsPerSecond": 4 + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayLearnedRoutes.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayLearnedRoutes.json new file mode 100644 index 000000000000..3691946cb1cf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayLearnedRoutes.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": { + "body": {} + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayList.json new file mode 100644 index 000000000000..b89b59743655 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayList.json @@ -0,0 +1,218 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "vpngw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "loc1", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "default", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw1/ipConfigurations/default", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/vpngw1-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + } + } + } + ], + "natRules": [ + { + "name": "natRule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw1/natRules/natRule1", + "etag": "W/\"00ae2b69-88e7-4b3a-b66a-cfa2244e0801\"", + "properties": { + "provisioningState": "Succeeded", + "type": "Static", + "mode": "EgressSnat", + "internalMappings": [ + { + "addressSpace": "10.10.0.0/24" + } + ], + "externalMappings": [ + { + "addressSpace": "50.0.0.0/24" + } + ] + } + }, + { + "name": "natRule2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw1/natRules/natRule2", + "etag": "W/\"00ae2b69-88e7-4b3a-b66a-cfa2244e0801\"", + "properties": { + "provisioningState": "Succeeded", + "type": "Static", + "mode": "IngressSnat", + "internalMappings": [ + { + "addressSpace": "20.10.0.0/24" + } + ], + "externalMappings": [ + { + "addressSpace": "30.0.0.0/24" + } + ] + } + } + ], + "enableBgpRouteTranslationForNat": false, + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 2 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "vpnGatewayGeneration": "None", + "enableBgp": false, + "enablePrivateIpAddress": false, + "activeActive": false, + "vpnClientConfiguration": { + "vpnClientProtocols": [], + "vpnClientRootCertificates": [], + "vpnClientRevokedCertificates": [] + }, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.0.14", + "peerWeight": 0 + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + }, + { + "name": "vpngw2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "loc2", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "default", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw2/ipConfigurations/default", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "privateIPAddress": "10.1.0.7", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/vpngw2-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/GatewaySubnet" + } + } + } + ], + "natRules": [ + { + "name": "natRule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw2/natRules/natRule1", + "etag": "W/\"00ae2b69-88e7-4b3a-b66a-cfa2244e0801\"", + "properties": { + "provisioningState": "Succeeded", + "type": "Static", + "mode": "EgressSnat", + "internalMappings": [ + { + "addressSpace": "10.10.0.0/24" + } + ], + "externalMappings": [ + { + "addressSpace": "50.0.0.0/24" + } + ] + } + }, + { + "name": "natRule2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw2/natRules/natRule2", + "etag": "W/\"00ae2b69-88e7-4b3a-b66a-cfa2244e0801\"", + "properties": { + "provisioningState": "Succeeded", + "type": "Static", + "mode": "IngressSnat", + "internalMappings": [ + { + "addressSpace": "20.10.0.0/24" + } + ], + "externalMappings": [ + { + "addressSpace": "30.0.0.0/24" + } + ] + } + } + ], + "enableBgpRouteTranslationForNat": false, + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 2 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "vpnGatewayGeneration": "None", + "enableBgp": false, + "enablePrivateIpAddress": true, + "activeActive": false, + "vpnClientConfiguration": { + "vpnClientProtocols": [ + "OpenVPN" + ], + "vpnClientRootCertificates": [], + "vpnClientRevokedCertificates": [], + "radiusServers": [ + { + "radiusServerAddress": "10.2.0.0", + "radiusServerScore": 20 + } + ] + }, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.1.0.46", + "peerWeight": 0 + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayNatRuleDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayNatRuleDelete.json new file mode 100644 index 000000000000..2f7bdc509eed --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayNatRuleDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "natRuleName": "natRule1", + "virtualNetworkGatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayNatRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayNatRuleGet.json new file mode 100644 index 000000000000..79d11a7bbfb7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayNatRuleGet.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "virtualNetworkGatewayName": "gateway1", + "natRuleName": "natRule1", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "natRule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/gateway1/natRules/natRule1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "type": "Static", + "mode": "EgressSnat", + "ipConfigurationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/gateway1/ipConfigurations/default", + "internalMappings": [ + { + "addressSpace": "10.4.0.0/24" + } + ], + "externalMappings": [ + { + "addressSpace": "50.4.0.0/24" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayNatRuleList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayNatRuleList.json new file mode 100644 index 000000000000..9f92e7d38570 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayNatRuleList.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "virtualNetworkGatewayName": "gateway1", + "api-version": "2021-02-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": [ + { + "name": "natRule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/gateway1/natRules/natRule1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "type": "Static", + "mode": "EgressSnat", + "ipConfigurationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/gateway1/ipConfigurations/default", + "internalMappings": [ + { + "addressSpace": "10.4.0.0/24" + } + ], + "externalMappings": [ + { + "addressSpace": "192.168.21.0/24" + } + ] + } + }, + { + "name": "natRule2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/gateway1/natRules/natRule2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "type": "Static", + "mode": "EgressSnat", + "ipConfigurationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/gateway1/ipConfigurations/default", + "internalMappings": [ + { + "addressSpace": "10.4.0.0/24" + } + ], + "externalMappings": [ + { + "addressSpace": "192.168.21.0/24" + } + ] + } + } + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayNatRulePut.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayNatRulePut.json new file mode 100644 index 000000000000..4e2e32140c95 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayNatRulePut.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "natRuleName": "natRule1", + "virtualNetworkGatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid", + "NatRuleParameters": { + "properties": { + "type": "Static", + "mode": "EgressSnat", + "ipConfigurationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/gateway1/ipConfigurations/default", + "internalMappings": [ + { + "addressSpace": "10.4.0.0/24" + } + ], + "externalMappings": [ + { + "addressSpace": "192.168.21.0/24" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "natRule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/gateway1/natRules/natRule1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "type": "Static", + "mode": "EgressSnat", + "ipConfigurationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/gateway1/ipConfigurations/default", + "internalMappings": [ + { + "addressSpace": "10.4.0.0/24" + } + ], + "externalMappings": [ + { + "addressSpace": "192.168.21.0/24" + } + ] + } + } + }, + "201": { + "body": { + "name": "natRule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/gateway1/natRules/natRule1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "type": "Static", + "mode": "EgressSnat", + "ipConfigurationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/gateway1/ipConfigurations/default", + "internalMappings": [ + { + "addressSpace": "10.4.0.0/24" + } + ], + "externalMappings": [ + { + "addressSpace": "192.168.21.0/24" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayReset.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayReset.json new file mode 100644 index 000000000000..1780ead5f920 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayReset.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": { + "body": { + "name": "vpngw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "gwipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + } + } + } + ], + "natRules": [], + "enableBgpRouteTranslationForNat": false, + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 0 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "enableBgp": false, + "activeActive": false, + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "defaultBgpIpAddresses": [ + "10.3.1.254" + ], + "customBgpIpAddresses": [ + "169.254.21.10" + ], + "tunnelIpAddresses": [ + "52.161.10.135" + ] + } + ] + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayResetVpnClientSharedKey.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayResetVpnClientSharedKey.json new file mode 100644 index 000000000000..ee2b276c289a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayResetVpnClientSharedKey.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewaySetVpnClientIpsecParameters.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewaySetVpnClientIpsecParameters.json new file mode 100644 index 000000000000..9953beb5d550 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewaySetVpnClientIpsecParameters.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "vpnclientIpsecParams": { + "saLifeTimeSeconds": 86473, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup2", + "pfsGroup": "PFS2" + } + }, + "responses": { + "202": {}, + "200": { + "body": "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayStartPacketCapture.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayStartPacketCapture.json new file mode 100644 index 000000000000..3259d8f3de43 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayStartPacketCapture.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayStartPacketCaptureFilterData.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayStartPacketCaptureFilterData.json new file mode 100644 index 000000000000..8eb2b79adba5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayStartPacketCaptureFilterData.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "parameters": { + "filterData": "{'TracingFlags': 11,'MaxPacketBufferSize': 120,'MaxFileSize': 200,'Filters': [{'SourceSubnets': ['20.1.1.0/24'],'DestinationSubnets': ['10.1.1.0/24'],'SourcePort': [500],'DestinationPort': [4500],'Protocol': 6,'TcpFlags': 16,'CaptureSingleDirectionTrafficOnly': true}]}" + } + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayStopPacketCapture.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayStopPacketCapture.json new file mode 100644 index 000000000000..9997176aaaef --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayStopPacketCapture.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "parameters": { + "sasUrl": "https://teststorage.blob.core.windows.net/?sv=2018-03-28&ss=bfqt&srt=sco&sp=rwdlacup&se=2019-09-13T07:44:05Z&st=2019-09-06T23:44:05Z&spr=https&sig=V1h9D1riltvZMI69d6ihENnFo%2FrCvTqGgjO2lf%2FVBhE%3D" + } + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewaySupportedVpnDevice.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewaySupportedVpnDevice.json new file mode 100644 index 000000000000..90b116dac559 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewaySupportedVpnDevice.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "200": { + "body": "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayUpdate.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayUpdate.json new file mode 100644 index 000000000000..5f2a920296f7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayUpdate.json @@ -0,0 +1,343 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "parameters": { + "properties": { + "ipConfigurations": [ + { + "properties": { + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip" + } + }, + "name": "gwipconfig1" + } + ], + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "enableBgp": false, + "activeActive": false, + "enableDnsForwarding": true, + "natRules": [ + { + "name": "natRule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/natRules/natRule1", + "properties": { + "type": "Static", + "mode": "EgressSnat", + "ipConfigurationId": "", + "internalMappings": [ + { + "addressSpace": "10.10.0.0/24" + } + ], + "externalMappings": [ + { + "addressSpace": "50.0.0.0/24" + } + ] + } + }, + { + "name": "natRule2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/natRules/natRule2", + "properties": { + "type": "Static", + "mode": "IngressSnat", + "ipConfigurationId": "", + "internalMappings": [ + { + "addressSpace": "20.10.0.0/24" + } + ], + "externalMappings": [ + { + "addressSpace": "30.0.0.0/24" + } + ] + } + } + ], + "enableBgpRouteTranslationForNat": false, + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1" + }, + "vpnClientConfiguration": { + "vpnClientProtocols": [ + "OpenVPN" + ], + "vpnClientRootCertificates": [], + "vpnClientRevokedCertificates": [], + "radiusServers": [ + { + "radiusServerAddress": "10.2.0.0", + "radiusServerScore": 20, + "radiusServerSecret": "radiusServerSecret" + } + ] + }, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + }, + "location": "centralus" + } + }, + "responses": { + "200": { + "body": { + "name": "vpngw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "gwipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + } + } + } + ], + "natRules": [ + { + "name": "natRule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/natRules/natRule1", + "properties": { + "type": "Static", + "mode": "EgressSnat", + "ipConfigurationId": "", + "internalMappings": [ + { + "addressSpace": "10.10.0.0/24" + } + ], + "externalMappings": [ + { + "addressSpace": "50.0.0.0/24" + } + ] + } + }, + { + "name": "natRule2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/natRules/natRule2", + "properties": { + "type": "Static", + "mode": "IngressSnat", + "ipConfigurationId": "", + "internalMappings": [ + { + "addressSpace": "20.10.0.0/24" + } + ], + "externalMappings": [ + { + "addressSpace": "30.0.0.0/24" + } + ] + } + } + ], + "enableBgpRouteTranslationForNat": false, + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 0 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "vpnGatewayGeneration": "None", + "enableBgp": false, + "activeActive": false, + "enableDnsForwarding": true, + "inboundDnsForwardingEndpoint": "10.0.1.14", + "vpnClientConfiguration": { + "vpnClientProtocols": [ + "OpenVPN" + ], + "vpnClientRootCertificates": [], + "vpnClientRevokedCertificates": [], + "radiusServers": [ + { + "radiusServerAddress": "10.2.0.0", + "radiusServerScore": 20 + } + ] + }, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "defaultBgpIpAddresses": [ + "10.3.1.254" + ], + "customBgpIpAddresses": [ + "169.254.21.10" + ], + "tunnelIpAddresses": [ + "52.161.10.135" + ] + } + ] + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + } + }, + "201": { + "body": { + "name": "vpngw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "gwipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + } + } + } + ], + "natRules": [ + { + "name": "natRule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/natRules/natRule1", + "properties": { + "type": "Static", + "mode": "EgressSnat", + "ipConfigurationId": "", + "internalMappings": [ + { + "addressSpace": "10.10.0.0/24" + } + ], + "externalMappings": [ + { + "addressSpace": "50.0.0.0/24" + } + ] + } + }, + { + "name": "natRule2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/natRules/natRule2", + "properties": { + "type": "Static", + "mode": "IngressSnat", + "ipConfigurationId": "", + "internalMappings": [ + { + "addressSpace": "20.10.0.0/24" + } + ], + "externalMappings": [ + { + "addressSpace": "30.0.0.0/24" + } + ] + } + } + ], + "enableBgpRouteTranslationForNat": false, + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 0 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "enableBgp": false, + "activeActive": false, + "enableDnsForwarding": true, + "enablePrivateIpAddress": false, + "inboundDnsForwardingEndpoint": "10.0.1.14", + "vpnClientConfiguration": { + "vpnClientProtocols": [ + "OpenVPN" + ], + "vpnClientRootCertificates": [], + "vpnClientRevokedCertificates": [], + "radiusServers": [ + { + "radiusServerAddress": "10.2.0.0", + "radiusServerScore": 20 + } + ] + }, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "defaultBgpIpAddresses": [ + "10.3.1.254" + ], + "customBgpIpAddresses": [ + "169.254.21.10" + ], + "tunnelIpAddresses": [ + "52.161.10.135" + ] + } + ] + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayUpdateTags.json new file mode 100644 index 000000000000..13e451833b1d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayUpdateTags.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "202": {}, + "200": { + "body": { + "name": "vpngw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "default", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/default", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/testpub1" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/GatewaySubnet" + } + } + } + ], + "natRules": [], + "enableBgpRouteTranslationForNat": false, + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 2 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "vpnGatewayGeneration": "None", + "enableBgp": false, + "activeActive": false, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.0.254", + "peerWeight": 0, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "defaultBgpIpAddresses": [ + "10.3.1.254" + ], + "customBgpIpAddresses": [ + "169.254.21.10" + ], + "tunnelIpAddresses": [ + "52.161.10.135" + ] + } + ] + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayVpnDeviceConfigurationScript.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayVpnDeviceConfigurationScript.json new file mode 100644 index 000000000000..0a77c9d69c39 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewayVpnDeviceConfigurationScript.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "vpngw", + "parameters": { + "vendor": "Cisco", + "deviceFamily": "ISR", + "firmwareVersion": "IOS 15.1 (Preview)" + } + }, + "responses": { + "200": { + "body": "! Microsoft Corporation\r\n! ---------------------------------------------------------------------------------------------------------------------\r\n! Sample VPN tunnel configuration template for IOS-based devices\r\n!\r\n! This configuration template applies to Cisco VPN devices running IOS 15.1 or beyond (ISR or ASR)\r\n!\r\n\r\n\r\n\t\t\r\n\r\n! ---------------------------------------------------------------------------------------------------------------------\r\n! ACL rules\r\n!\r\n! Some VPN devices require explicit ACL rules to allow cross-premises traffic:\r\n!\r\n! 1. Allow traffic between on premises address ranges and VNet address ranges\r\n! 2. Allow IKE traffic (UDP:500) between on premises VPN devices and Azure VPN gateway\r\n! 3. Allow IPsec traffic (Proto:ESP) between on premises VPN devices and Azure VPN gateway\r\n!\r\n\t\t\r\naccess-list 101 permit ip 10.1.0.0 0.0.255.255 10.0.0.0 0.0.255.255\r\n\r\n! ---------------------------------------------------------------------------------------------------------------------\r\n! Internet Key Exchange (IKE) configuration\r\n!\r\n! This section specifies the authentication, encryption, hashing, and Diffie-Hellman group parameters for IKE\r\n! main mode or phase 1\r\n!\r\n\r\ncrypto ikev2 proposal SwaggerS2S-proposal\r\n encryption DES3\r\n integrity SHA384\r\n group DHGroup24\r\n lifetime 3600\r\n exit\r\n\r\ncrypto ikev2 policy SwaggerS2S-policy\r\n proposal SwaggerS2S-proposal\r\n exit\r\n\r\ncrypto ikev2 keyring SwaggerBranch-keyring\r\n\t\t\r\n\t\tpeer 52.173.199.254\r\n\t\taddress 52.173.199.254\r\n\t\tpre-shared-key lALEHuppeopJmA94exRNiRr2QzuZ6lOsvzu5IlJUEA6LthbTc8g5MTT86MCsGNMzGkTAaLuLnEJoD1Cn4cIlr94qKZm9drsgllzWvsPNezS71stAkaW1Bb7h6GBnDlDP\r\n exit\r\n\r\ncrypto ikev2 profile SwaggerS2S-profile\r\n match address local 10.3.0.0\r\n\tmatch identity remote address 52.173.199.254 255.255.255.255\r\n\t\t\r\n authentication remote pre-share\r\n authentication local pre-share\r\n keyring SwaggerBranch-keyring\r\n exit\r\n\r\n! ---------------------------------------------------------------------------------------------------------------------\r\n! IPsec configuration\r\n!\r\n! This section specifies encryption, authentication, tunnel mode properties for the Phase 2 negotiation\r\n!\r\ncrypto ipsec transform-set SwaggerS2S-TransformSet DES3 DES3\r\n mode tunnel\r\n exit\r\n\r\n! ---------------------------------------------------------------------------------------------------------------------\r\n! Crypto map configuration\r\n!\r\n! This section defines a crypto profile that binds the cross-premises network traffic to the IPsec and IKE\r\n! policy profiles for this connection. Then defines the VTI (virtual tunnel interface) with the crypto\r\n! profile. A random interface number (tunnel 1) was used with a random link local address (169.254.0.1/28)\r\n! for the tunnel interface. If either selection is already used in the VPN device, please select another\r\n! interface number or address. The only requirement is that they must not overlap with another interface\r\n! on the same VPN device.\r\n!\r\ncrypto ipsec profile SwaggerS2S-IPsecProfile\r\n set transform-set SwaggerS2S-TransformSet\r\n set ikev2-profile SwaggerS2S-profile\r\n set pfs None\r\n set security-association lifetime 3600\r\n exit\r\n\r\n\r\nint tunnel 52.173.199.254\r\n ip address 169.254.0.1 255.255.255.252\r\n ip tcp adjust-mss 1350\r\n tunnel source 10.3.0.0\r\n tunnel mode ipsec ipv4\r\n tunnel destination 52.173.199.254\r\n tunnel protection ipsec profile SwaggerS2S-IPsecProfile\r\n exit\r\n\r\n\tip route 10.0.0.0 255.255.0.0 tunnel 52.173.199.254 " + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewaysDisconnectP2sVpnConnections.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewaysDisconnectP2sVpnConnections.json new file mode 100644 index 000000000000..90ea781905d1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewaysDisconnectP2sVpnConnections.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "vpn-gateway-test", + "virtualNetworkGatewayName": "vpngateway", + "api-version": "2021-02-01", + "request": { + "vpnConnectionIds": [ + "vpnconnId1", + "vpnconnId2" + ] + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewaysListConnections.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewaysListConnections.json new file mode 100644 index 000000000000..d7fa8f57423b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGatewaysListConnections.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "virtualNetworkGatewayName": "test-vpn-gateway-1", + "api-version": "2021-02-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-vpn-connection", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/connections/test-vpn-connection", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "type": "Microsoft.Network/connections", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkGateways/test-vpn-gateway-1" + }, + "virtualNetworkGateway2": { + "id": "/subscriptions/subid/resourceGroups/testrg-2/providers/Microsoft.Network/virtualNetworkGateways/test-vpn-gateway-2" + }, + "connectionType": "Vnet2Vnet", + "routingWeight": 22, + "enableBgp": true, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "trafficSelectorPolicies": [], + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGet.json new file mode 100644 index 000000000000..a409a99be645 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGet.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet" + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "subnet1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.1.0/24", + "ipConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe" + } + ] + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGetResourceNavigationLinks.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGetResourceNavigationLinks.json new file mode 100644 index 000000000000..d9ce8a8aab70 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGetResourceNavigationLinks.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "vnet", + "subnetName": "subnet" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "redisCache_redis-tester", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet/subnets/subnet/resourceNavigationLinks/redisCache_redis-tester", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworks/subnets/resourceNavigationLinks", + "properties": { + "provisioningState": "Succeeded", + "linkedResourceType": "Microsoft.Cache/redis", + "link": "/subscriptions/subid/resourceGroups/another-rg/providers/Microsoft.Cache/Redis/redis-tester" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGetServiceAssociationLinks.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGetServiceAssociationLinks.json new file mode 100644 index 000000000000..d4e825b5ee8a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGetServiceAssociationLinks.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "vnet", + "subnetName": "subnet" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "acisal", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet/subnets/subnet/serviceAssociationLinks/acisal", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworks/subnets/serviceAssociationLinks", + "properties": { + "provisioningState": "Succeeded", + "linkedResourceType": "Microsoft.ContainerInstance/containerGroups", + "allowDelete": true, + "locations": [ + "westus" + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGetWithServiceAssociationLink.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGetWithServiceAssociationLink.json new file mode 100644 index 000000000000..d6ad504b7dc7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGetWithServiceAssociationLink.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet" + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "subnet1", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1", + "etag": "W/\"4d3e91b4-f67f-48be-880b-e4a8abdd019e\"", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.214.0/24", + "ipConfigurationProfiles": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile1" + } + ], + "serviceAssociationLinks": [ + { + "name": "serviceAssociationLink1", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1/serviceAssociationLinks/serviceAssociationLink1", + "etag": "W/\"4d3e91b4-f67f-48be-880b-e4a8abdd019e\"", + "properties": { + "provisioningState": "Succeeded", + "linkedResourceType": "Microsoft.Provider/resourceType" + } + } + ], + "serviceEndpoints": [], + "delegations": [ + { + "name": "aciDelegation", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1/delegations/aciDelegation", + "etag": "W/\"4d3e91b4-f67f-48be-880b-e4a8abdd019e\"", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [ + "Microsoft.Network/virtualNetworks/subnets/action" + ] + } + } + ] + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGetWithSubnetDelegation.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGetWithSubnetDelegation.json new file mode 100644 index 000000000000..99873e07f4be --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkGetWithSubnetDelegation.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet" + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "subnet1", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.1.0/24", + "ipConfigurations": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe" + } + ], + "delegations": [ + { + "name": "myDelegation", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1/delegations/myDelegation", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [] + } + } + ], + "purpose": "" + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkList.json new file mode 100644 index 000000000000..d225c0d4297a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkList.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1", + "name": "vnet1", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/8" + ] + }, + "dhcpOptions": { + "dnsServers": [] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [], + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2", + "name": "vnet2", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "dhcpOptions": { + "dnsServers": [ + "8.8.8.8" + ] + }, + "subnets": [], + "virtualNetworkPeerings": [], + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkListAll.json new file mode 100644 index 000000000000..d1076cf4c316 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkListAll.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1", + "name": "vnet1", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/8" + ] + }, + "dhcpOptions": { + "dnsServers": [] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [], + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet2", + "name": "vnet2", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "dhcpOptions": { + "dnsServers": [ + "8.8.8.8" + ] + }, + "subnets": [], + "virtualNetworkPeerings": [], + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkListUsage.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkListUsage.json new file mode 100644 index 000000000000..b250fd5b05bf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkListUsage.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "virtualNetworkName": "vnetName", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "currentValue": -1.0, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetName/subnets/GatewaySubnet", + "limit": -1.0, + "name": { + "localizedValue": "Subnet size and usage", + "value": "SubnetSpace" + }, + "unit": "Count" + }, + { + "currentValue": 2.0, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetName/subnets/newSubnet", + "limit": 3.0, + "name": { + "localizedValue": "Subnet size and usage", + "value": "SubnetSpace" + }, + "unit": "Count" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkPeeringCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkPeeringCreate.json new file mode 100644 index 000000000000..8268858612a0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkPeeringCreate.json @@ -0,0 +1,86 @@ +{ + "parameters": { + "virtualNetworkPeeringName": "peer", + "virtualNetworkName": "vnet1", + "resourceGroupName": "peerTest", + "api-version": "2021-02-01", + "subscriptionId": "subid", + "VirtualNetworkPeeringParameters": { + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": true, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet2" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet1/virtualNetworkPeerings/peer", + "name": "peer", + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": true, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet2" + }, + "remoteAddressSpace": { + "addressPrefixes": [ + "12.0.0.0/8" + ] + }, + "remoteVirtualNetworkAddressSpace": { + "addressPrefixes": [ + "12.0.0.0/8" + ] + }, + "remoteBgpCommunities": { + "virtualNetworkCommunity": "12076:20002", + "regionalCommunity": "12076:50004" + }, + "peeringState": "Initiated", + "peeringSyncLevel": "FullyInSync", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet1/virtualNetworkPeerings/peer", + "name": "peer", + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": true, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet2" + }, + "remoteAddressSpace": { + "addressPrefixes": [ + "12.0.0.0/8" + ] + }, + "remoteVirtualNetworkAddressSpace": { + "addressPrefixes": [ + "12.0.0.0/8" + ] + }, + "remoteBgpCommunities": { + "virtualNetworkCommunity": "12076:20002", + "regionalCommunity": "12076:50004" + }, + "peeringState": "Initiated", + "peeringSyncLevel": "FullyInSync", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkPeeringDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkPeeringDelete.json new file mode 100644 index 000000000000..16f7bd9f775b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkPeeringDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "virtualNetworkPeeringName": "peer", + "virtualNetworkName": "vnet1", + "resourceGroupName": "peerTest", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkPeeringGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkPeeringGet.json new file mode 100644 index 000000000000..7ac6c2cff159 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkPeeringGet.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "virtualNetworkPeeringName": "peer", + "virtualNetworkName": "vnet1", + "resourceGroupName": "peerTest", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet1/virtualNetworkPeerings/peer", + "name": "peer", + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": true, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet2" + }, + "remoteAddressSpace": { + "addressPrefixes": [ + "12.0.0.0/8" + ] + }, + "remoteVirtualNetworkAddressSpace": { + "addressPrefixes": [ + "12.0.0.0/8" + ] + }, + "remoteBgpCommunities": { + "virtualNetworkCommunity": "12076:20002", + "regionalCommunity": "12076:50004" + }, + "peeringState": "Initiated", + "peeringSyncLevel": "FullyInSync", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkPeeringList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkPeeringList.json new file mode 100644 index 000000000000..b23b2fc305b8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkPeeringList.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "virtualNetworkName": "vnet1", + "resourceGroupName": "peerTest", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet1/virtualNetworkPeerings/peer", + "name": "peer", + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": true, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet2" + }, + "remoteAddressSpace": { + "addressPrefixes": [ + "12.0.0.0/8" + ] + }, + "remoteVirtualNetworkAddressSpace": { + "addressPrefixes": [ + "12.0.0.0/8" + ] + }, + "remoteBgpCommunities": { + "virtualNetworkCommunity": "12076:20002", + "regionalCommunity": "12076:50004" + }, + "peeringState": "Initiated", + "peeringSyncLevel": "FullyInSync", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet1/virtualNetworkPeerings/peer2", + "name": "peer", + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": false, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet3" + }, + "remoteAddressSpace": { + "addressPrefixes": [ + "13.0.0.0/8" + ] + }, + "remoteVirtualNetworkAddressSpace": { + "addressPrefixes": [ + "13.0.0.0/8" + ] + }, + "remoteBgpCommunities": { + "virtualNetworkCommunity": "12076:20003", + "regionalCommunity": "12076:50004" + }, + "peeringState": "Initiated", + "peeringSyncLevel": "FullyInSync", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkPeeringSync.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkPeeringSync.json new file mode 100644 index 000000000000..1d908a7f9510 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkPeeringSync.json @@ -0,0 +1,87 @@ +{ + "parameters": { + "virtualNetworkPeeringName": "peer", + "virtualNetworkName": "vnet1", + "resourceGroupName": "peerTest", + "syncRemoteAddressSpace": "true", + "api-version": "2021-02-01", + "subscriptionId": "subid", + "VirtualNetworkPeeringParameters": { + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": true, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet2" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet1/virtualNetworkPeerings/peer", + "name": "peer", + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": true, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet2" + }, + "remoteAddressSpace": { + "addressPrefixes": [ + "12.0.0.0/8" + ] + }, + "remoteVirtualNetworkAddressSpace": { + "addressPrefixes": [ + "12.0.0.0/8" + ] + }, + "remoteBgpCommunities": { + "virtualNetworkCommunity": "12076:20002", + "regionalCommunity": "12076:50004" + }, + "peeringState": "Initiated", + "peeringSyncLevel": "FullyInSync", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet1/virtualNetworkPeerings/peer", + "name": "peer", + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": true, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet2" + }, + "remoteAddressSpace": { + "addressPrefixes": [ + "12.0.0.0/8" + ] + }, + "remoteVirtualNetworkAddressSpace": { + "addressPrefixes": [ + "12.0.0.0/8" + ] + }, + "remoteBgpCommunities": { + "virtualNetworkCommunity": "12076:20002", + "regionalCommunity": "12076:50004" + }, + "peeringState": "Initiated", + "peeringSyncLevel": "FullyInSync", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkTapCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkTapCreate.json new file mode 100644 index 000000000000..5534001c143d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkTapCreate.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "tapName": "test-vtap", + "parameters": { + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/ipconfig1" + } + }, + "location": "centraluseuap" + } + }, + "responses": { + "200": { + "body": { + "name": "testvtap", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface2/tapConfigurations/testtapConfiguration" + } + ] + } + } + }, + "201": { + "body": { + "name": "testvtap", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface2/tapConfigurations/testtapConfiguration" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkTapDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkTapDelete.json new file mode 100644 index 000000000000..2fd2a0bf0175 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkTapDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "tapName": "test-vtap" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkTapGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkTapGet.json new file mode 100644 index 000000000000..caa9b0b53f18 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkTapGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "tapName": "testvtap" + }, + "responses": { + "200": { + "body": { + "name": "testvtap", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface2/tapConfigurations/testtapConfiguration" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkTapList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkTapList.json new file mode 100644 index 000000000000..87b31d6317d8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkTapList.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testvtap", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface2/tapConfigurations/testtapConfiguration" + } + ] + } + }, + { + "name": "testvtap2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap2", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface3/tapConfigurations/testtapConfiguration" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkTapListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkTapListAll.json new file mode 100644 index 000000000000..849f4c07104f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkTapListAll.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testvtap", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface2/tapConfigurations/testtapConfiguration" + } + ] + } + }, + { + "name": "testvtap2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap2", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface3/tapConfigurations/testtapConfiguration" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkTapUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkTapUpdateTags.json new file mode 100644 index 000000000000..9887feca44ba --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkTapUpdateTags.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "tapName": "test-vtap", + "tapParameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-vtap", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/test-vtap", + "location": "eastus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface2/tapConfigurations/testtapConfiguration" + } + ] + }, + "type": "Microsoft.Network/virtualNetworkTaps" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkUpdateTags.json new file mode 100644 index 000000000000..a448495fbe20 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualNetworkUpdateTags.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "location": "westus", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualRouterDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualRouterDelete.json new file mode 100644 index 000000000000..9dce8a6b2b04 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualRouterDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualRouterGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualRouterGet.json new file mode 100644 index 000000000000..feb7b3e59dbd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualRouterGet.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter" + }, + "responses": { + "200": { + "body": { + "name": "virtualRouter", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter", + "type": "Microsoft.Network/virtualRouters", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualRouterAsn": 10000, + "virtualRouterIps": [ + "192.168.1.1", + "192.168.1.2" + ], + "hostedGateway": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vnetGateway" + }, + "peerings": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualRouterListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualRouterListByResourceGroup.json new file mode 100644 index 000000000000..817c09663ae4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualRouterListByResourceGroup.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "virtualRouter", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter", + "type": "Microsoft.Network/virtualRouters", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualRouterAsn": 10000, + "virtualRouterIps": [ + "192.168.1.1", + "192.168.1.2" + ], + "hostedGateway": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vnetGateway" + }, + "peerings": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualRouterListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualRouterListBySubscription.json new file mode 100644 index 000000000000..5204132901af --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualRouterListBySubscription.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "virtualRouter", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter", + "type": "Microsoft.Network/virtualRouters", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualRouterAsn": 10000, + "virtualRouterIps": [ + "192.168.1.1", + "192.168.1.2" + ], + "hostedGateway": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vnetGateway" + }, + "peerings": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualRouterPeerListAdvertisedRoute.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualRouterPeerListAdvertisedRoute.json new file mode 100644 index 000000000000..ec4fc041040f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualRouterPeerListAdvertisedRoute.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "hubName": "virtualRouter1", + "connectionName": "peer1" + }, + "responses": { + "202": {}, + "200": { + "body": { + "value": [ + { + "localAddress": "10.85.3.4", + "network": "10.45.0.0/16", + "nextHop": "10.85.3.4", + "sourcePeer": "10.85.3.4", + "origin": "Igp", + "asPath": "65515", + "weight": 0 + }, + { + "localAddress": "10.85.3.4", + "network": "10.85.0.0/16", + "nextHop": "10.85.3.4", + "sourcePeer": "10.85.3.4", + "origin": "Igp", + "asPath": "65515", + "weight": 0 + }, + { + "localAddress": "10.85.3.4", + "network": "10.100.0.0/16", + "nextHop": "10.85.3.4", + "sourcePeer": "10.85.3.4", + "origin": "Igp", + "asPath": "65515", + "weight": 0 + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualRouterPeerListLearnedRoute.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualRouterPeerListLearnedRoute.json new file mode 100644 index 000000000000..58dfbda9afca --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualRouterPeerListLearnedRoute.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "hubName": "virtualRouter1", + "connectionName": "peer1" + }, + "responses": { + "202": {}, + "200": { + "body": { + "value": [ + { + "localAddress": "10.85.3.4", + "network": "10.101.0.0/16", + "nextHop": "10.85.4.4", + "sourcePeer": "10.85.4.4", + "origin": "EBgp", + "asPath": "65002-65001", + "weight": 32768 + }, + { + "localAddress": "10.85.3.5", + "network": "10.101.0.0/16", + "nextHop": "10.85.4.4", + "sourcePeer": "10.85.4.4", + "origin": "EBgp", + "asPath": "65002-65001", + "weight": 32768 + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualRouterPeeringDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualRouterPeeringDelete.json new file mode 100644 index 000000000000..a983c2caf492 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualRouterPeeringDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "peeringName": "peering1", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualRouterPeeringGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualRouterPeeringGet.json new file mode 100644 index 000000000000..caff3637a009 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualRouterPeeringGet.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "peeringName": "peering1", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter" + }, + "responses": { + "200": { + "body": { + "name": "peering1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peerIp": "192.168.1.5", + "peerAsn": 20000 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualRouterPeeringList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualRouterPeeringList.json new file mode 100644 index 000000000000..8cf8343ce14b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualRouterPeeringList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "peering1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peerIp": "192.168.1.5", + "peerAsn": 20000 + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualRouterPeeringPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualRouterPeeringPut.json new file mode 100644 index 000000000000..b4c156af4fa9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualRouterPeeringPut.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "peeringName": "peering1", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter", + "parameters": { + "properties": { + "peerIp": "192.168.1.5", + "peerAsn": 20000 + } + } + }, + "responses": { + "200": { + "body": { + "name": "peering1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peerIp": "192.168.1.5", + "peerAsn": 20000 + } + } + }, + "201": { + "body": { + "name": "peering1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peerIp": "192.168.1.5", + "peerAsn": 20000 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualRouterPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualRouterPut.json new file mode 100644 index 000000000000..f1ea81c3fbd2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualRouterPut.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "properties": { + "hostedGateway": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vnetGateway" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "virtualRouter", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter", + "type": "Microsoft.Network/virtualRouters", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualRouterAsn": 10000, + "virtualRouterIps": [ + "192.168.1.1", + "192.168.1.2" + ], + "hostedGateway": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vnetGateway" + }, + "peerings": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1" + } + ] + } + } + }, + "201": { + "body": { + "name": "virtualRouter", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter", + "type": "Microsoft.Network/virtualRouters", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualRouterAsn": 10000, + "virtualRouterIps": [ + "192.168.1.1", + "192.168.1.2" + ], + "hostedGateway": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vnetGateway" + }, + "peerings": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualWANDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualWANDelete.json new file mode 100644 index 000000000000..5e19e43db9de --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualWANDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "VirtualWANName": "virtualWan1", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualWANGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualWANGet.json new file mode 100644 index 000000000000..9530413d1b9e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualWANGet.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "VirtualWANName": "wan1", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "wan1", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2" + ], + "type": "Basic" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualWANList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualWANList.json new file mode 100644 index 000000000000..ed5c14dabb1d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualWANList.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "wan1", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2" + ], + "type": "Basic" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualWANs/wan2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "East US", + "name": "wan2", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnSites/vpnSite2" + ], + "type": "Basic" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualWANListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualWANListByResourceGroup.json new file mode 100644 index 000000000000..fcb7ee35bd75 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualWANListByResourceGroup.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "wan1", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2" + ], + "type": "Basic" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "East US", + "name": "wan2", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub3", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub4" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite3", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite4" + ], + "type": "Basic" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualWANPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualWANPut.json new file mode 100644 index 000000000000..1b8daa895a34 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualWANPut.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "VirtualWANName": "wan1", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid", + "WANParameters": { + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "disableVpnEncryption": false, + "type": "Basic" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "wan1", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2" + ], + "type": "Basic" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "wan1", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2" + ], + "type": "Basic" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualWANUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualWANUpdateTags.json new file mode 100644 index 000000000000..87674df696ba --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualWANUpdateTags.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "VirtualWANName": "wan1", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid", + "WANParameters": { + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "wan1", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2" + ], + "type": "Basic" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualWanSupportedSecurityProviders.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualWanSupportedSecurityProviders.json new file mode 100644 index 000000000000..4c1be5efb5a8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VirtualWanSupportedSecurityProviders.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "virtualWANName": "wan1" + }, + "responses": { + "200": { + "description": "Request successful.", + "body": { + "supportedProviders": [ + { + "name": "AzureFirewall", + "url": "", + "type": "Native" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VmssNetworkInterfaceGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VmssNetworkInterfaceGet.json new file mode 100644 index 000000000000..146f80e3d7f4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VmssNetworkInterfaceGet.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "api-version": "2018-10-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "nic1", + "virtualMachineScaleSetName": "vmss1", + "virtualmachineIndex": "1" + }, + "responses": { + "200": { + "body": { + "name": "nic1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.5", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.1" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "dns.cdmx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VmssNetworkInterfaceIpConfigGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VmssNetworkInterfaceIpConfigGet.json new file mode 100644 index 000000000000..5b7c23b7b56b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VmssNetworkInterfaceIpConfigGet.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2018-10-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualMachineScaleSetName": "vmss1", + "virtualmachineIndex": "2", + "networkInterfaceName": "nic1", + "ipConfigurationName": "ip1" + }, + "responses": { + "200": { + "body": { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/2/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.6", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.2" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VmssNetworkInterfaceIpConfigList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VmssNetworkInterfaceIpConfigList.json new file mode 100644 index 000000000000..e14de4e82a72 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VmssNetworkInterfaceIpConfigList.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2018-10-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualMachineScaleSetName": "vmss1", + "virtualmachineIndex": "2", + "networkInterfaceName": "nic1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/2/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.6", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.2" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VmssNetworkInterfaceList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VmssNetworkInterfaceList.json new file mode 100644 index 000000000000..0ec937148391 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VmssNetworkInterfaceList.json @@ -0,0 +1,118 @@ +{ + "parameters": { + "api-version": "2018-10-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualMachineScaleSetName": "vmss1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nic1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/nic1", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.0" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "ruw4wz3grewudjsyzrxj44pxod.cdmx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0" + } + } + }, + { + "name": "nic1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.5", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.1" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "ruw4wz3grewudjsyzrxj44pxod.cdmx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VmssPublicIpGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VmssPublicIpGet.json new file mode 100644 index 000000000000..229c15712a0d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VmssPublicIpGet.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "virtualMachineScaleSetName": "vmss1", + "resourceGroupName": "vmss-tester", + "api-version": "2018-10-01", + "subscriptionId": "subid", + "virtualmachineIndex": 1, + "networkInterfaceName": "nic1", + "ipConfigurationName": "ip1", + "publicIpAddressName": "pub1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1", + "name": "pub1", + "properties": { + "publicIPAllocationMethod": "Dynamic", + "publicIPAddressVersion": "IPv4", + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + }, + "dnsSettings": { + "domainNameLabel": "vm1.testvmssacc", + "fqdn": "vm1.testvmssacc.southeastasia.cloudapp.azure.com" + }, + "ipAddress": "13.67.119.72", + "idleTimeoutInMinutes": 10, + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VmssPublicIpListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VmssPublicIpListAll.json new file mode 100644 index 000000000000..605e0b831869 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VmssPublicIpListAll.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "virtualMachineScaleSetName": "vmss1", + "resourceGroupName": "vmss-tester", + "api-version": "2018-10-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1", + "name": "pub1", + "properties": { + "publicIPAllocationMethod": "Dynamic", + "publicIPAddressVersion": "IPv4", + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + }, + "dnsSettings": { + "domainNameLabel": "vm1.testvmssacc", + "fqdn": "vm1.testvmssacc.southeastasia.cloudapp.azure.com" + }, + "ipAddress": "13.67.119.72", + "idleTimeoutInMinutes": 10, + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/3/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1", + "name": "pub1", + "properties": { + "publicIPAllocationMethod": "Dynamic", + "publicIPAddressVersion": "IPv4", + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/3/networkInterfaces/nic1/ipConfigurations/ip1" + }, + "dnsSettings": { + "domainNameLabel": "vm3.testvmssacc", + "fqdn": "vm3.testvmssacc.southeastasia.cloudapp.azure.com" + }, + "ipAddress": "13.67.118.216", + "idleTimeoutInMinutes": 10, + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VmssVmNetworkInterfaceList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VmssVmNetworkInterfaceList.json new file mode 100644 index 000000000000..e4f1cbf14ebf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VmssVmNetworkInterfaceList.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "api-version": "2018-10-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualMachineScaleSetName": "vmss1", + "virtualmachineIndex": "1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nic1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.5", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.1" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "ruw4wz3grewudjsyzrxj44pxod.cdmx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VmssVmPublicIpList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VmssVmPublicIpList.json new file mode 100644 index 000000000000..d21f5d40ed03 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VmssVmPublicIpList.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "virtualMachineScaleSetName": "vmss1", + "resourceGroupName": "vmss-tester", + "api-version": "2018-10-01", + "subscriptionId": "subid", + "virtualmachineIndex": 1, + "networkInterfaceName": "nic1", + "ipConfigurationName": "ip1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1", + "name": "pub1", + "properties": { + "publicIPAllocationMethod": "Dynamic", + "publicIPAddressVersion": "IPv4", + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + }, + "dnsSettings": { + "domainNameLabel": "vm1.testvmssacc", + "fqdn": "vm1.testvmssacc.southeastasia.cloudapp.azure.com" + }, + "ipAddress": "13.67.119.72", + "idleTimeoutInMinutes": 10, + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnConnectionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnConnectionDelete.json new file mode 100644 index 000000000000..2df200f6650a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnConnectionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "connectionName": "vpnConnection1", + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnConnectionGet.json new file mode 100644 index 000000000000..f4136dc4a137 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnConnectionGet.json @@ -0,0 +1,103 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "connectionName": "vpnConnection1", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "trafficSelectorPolicies": [], + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0, + "vpnLinkConnectionMode": "ResponderOnly" + } + }, + { + "name": "Connection-Link2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link2", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink2" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0, + "vpnLinkConnectionMode": "InitiatorOnly" + } + } + ], + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnConnectionList.json new file mode 100644 index 000000000000..89a4b00a478b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnConnectionList.json @@ -0,0 +1,104 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "api-version": "2021-02-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "trafficSelectorPolicies": [], + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0, + "vpnLinkConnectionMode": "Default" + } + }, + { + "name": "Connection-Link2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link2", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink2" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0, + "vpnLinkConnectionMode": "Default" + } + } + ], + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnConnectionPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnConnectionPut.json new file mode 100644 index 000000000000..1088d118daff --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnConnectionPut.json @@ -0,0 +1,169 @@ +{ + "parameters": { + "connectionName": "vpnConnection1", + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid", + "VpnConnectionParameters": { + "properties": { + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "properties": { + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "vpnLinkConnectionMode": "Default", + "usePolicyBasedTrafficSelectors": false + } + } + ], + "trafficSelectorPolicies": [] + } + } + }, + "responses": { + "200": { + "body": { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0, + "vpnLinkConnectionMode": "Default" + } + } + ], + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + }, + "trafficSelectorPolicies": [] + } + } + }, + "201": { + "body": { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0, + "vpnLinkConnectionMode": "Default" + } + } + ], + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + }, + "trafficSelectorPolicies": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnConnectionStartPacketCapture.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnConnectionStartPacketCapture.json new file mode 100644 index 000000000000..ca4fbbbdddf3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnConnectionStartPacketCapture.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "gatewayName": "gateway1", + "vpnConnectionName": "vpnConnection1", + "parameters": { + "linkConnectionNames": [ + "siteLink1", + "siteLink2" + ] + } + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnConnectionStartPacketCaptureFilterData.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnConnectionStartPacketCaptureFilterData.json new file mode 100644 index 000000000000..ff15255f07ee --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnConnectionStartPacketCaptureFilterData.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "gatewayName": "gateway1", + "vpnConnectionName": "vpnConnection1", + "parameters": { + "filterData": "{'TracingFlags': 11,'MaxPacketBufferSize': 120,'MaxFileSize': 200,'Filters': [{'SourceSubnets': ['20.1.1.0/24'],'DestinationSubnets': ['10.1.1.0/24'],'SourcePort': [500],'DestinationPort': [4500],'Protocol': 6,'TcpFlags': 16,'CaptureSingleDirectionTrafficOnly': true}]}", + "linkConnectionNames": [ + "siteLink1", + "siteLink2" + ] + } + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnConnectionStopPacketCapture.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnConnectionStopPacketCapture.json new file mode 100644 index 000000000000..35b34ae99750 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnConnectionStopPacketCapture.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "gatewayName": "gateway1", + "vpnConnectionName": "vpnConnection1", + "parameters": { + "sasUrl": "https://teststorage.blob.core.windows.net/?sv=2018-03-28&ss=bfqt&srt=sco&sp=rwdlacup&se=2019-09-13T07:44:05Z&st=2019-09-06T23:44:05Z&spr=https&sig=V1h9D1riltvZMI69d6ihENnFo%2FrCvTqGgjO2lf%2FVBhE%3D", + "linkConnectionNames": [ + "vpnSiteLink1", + "vpnSiteLink2" + ] + } + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnGatewayDelete.json new file mode 100644 index 000000000000..1c1bd917faf3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnGatewayGet.json new file mode 100644 index 000000000000..9bd833706a77 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnGatewayGet.json @@ -0,0 +1,206 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0, + "ingressNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/natRules/nat03" + } + ] + } + }, + { + "name": "Connection-Link2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link2", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink2" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0, + "egressNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/natRules/nat04" + } + ] + } + } + ], + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "Instance0", + "defaultBgpIpAddresses": [ + "10.30.0.4" + ], + "customBgpIpAddresses": [ + "169.254.21.5" + ], + "tunnelIpAddresses": [ + "104.208.48.178" + ] + }, + { + "ipconfigurationId": "Instance1", + "defaultBgpIpAddresses": [ + "10.30.0.5" + ], + "customBgpIpAddresses": [ + "169.254.21.10" + ], + "tunnelIpAddresses": [ + "104.208.48.179" + ] + } + ] + }, + "natRules": [ + { + "name": "nat03", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/natRules/nat03", + "properties": { + "type": "Dynamic", + "mode": "IgressSnat", + "internalMappings": [ + { + "addressSpace": "0.0.0.0/26" + } + ], + "externalMappings": [ + { + "addressSpace": "192.168.0.0/26" + } + ], + "ingressVpnSiteLinkConnections": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/vpnLinkConnections/Connection-Link1" + } + ] + }, + "type": "Microsoft.Network/vpnGateways/natRules" + }, + { + "name": "nat04", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/natRules/nat04", + "properties": { + "type": "Static", + "mode": "EgressSnat", + "internalMappings": [ + { + "addressSpace": "0.0.0.0/26" + } + ], + "externalMappings": [ + { + "addressSpace": "192.168.0.0/26" + } + ], + "egressVpnSiteLinkConnections": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/vpnLinkConnections/Connection-Link2" + } + ] + }, + "type": "Microsoft.Network/vpnGateways/natRules" + } + ], + "isRoutingPreferenceInternet": false + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnGatewayList.json new file mode 100644 index 000000000000..0535a5f9441c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnGatewayList.json @@ -0,0 +1,302 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0, + "ingressNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/natRules/nat03" + } + ] + } + }, + { + "name": "Connection-Link2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link2", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink2" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0, + "egressNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/natRules/nat04" + } + ] + } + } + ], + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "Instance0", + "defaultBgpIpAddresses": [ + "10.30.0.4" + ], + "customBgpIpAddresses": [ + "169.254.21.5" + ], + "tunnelIpAddresses": [ + "104.208.48.178" + ] + }, + { + "ipconfigurationId": "Instance1", + "defaultBgpIpAddresses": [ + "10.30.0.5" + ], + "customBgpIpAddresses": [ + "169.254.21.10" + ], + "tunnelIpAddresses": [ + "104.208.48.179" + ] + } + ] + }, + "natRules": [ + { + "name": "nat03", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/natRules/nat03", + "properties": { + "type": "Dynamic", + "mode": "IgressSnat", + "internalMappings": [ + { + "addressSpace": "0.0.0.0/26" + } + ], + "externalMappings": [ + { + "addressSpace": "192.168.0.0/26" + } + ], + "ingressVpnSiteLinkConnections": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/vpnLinkConnections/Connection-Link1" + } + ] + }, + "type": "Microsoft.Network/vpnGateways/natRules" + }, + { + "name": "nat04", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/natRules/nat04", + "properties": { + "type": "Static", + "mode": "EgressSnat", + "internalMappings": [ + { + "addressSpace": "0.0.0.0/26" + } + ], + "externalMappings": [ + { + "addressSpace": "192.168.0.0/26" + } + ], + "egressVpnSiteLinkConnections": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/vpnLinkConnections/Connection-Link2" + } + ] + }, + "type": "Microsoft.Network/vpnGateways/natRules" + } + ], + "isRoutingPreferenceInternet": false + } + }, + { + "name": "gateway2", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnGateways/gateway2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/virtualHub2" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnGateways/gateway2/vpnConnections/vpnConnection2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnSites/vpnSite2" + }, + "connectionStatus": "Connected", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "routingWeight": 0, + "connectionBandwidth": 100, + "sharedKey": "key", + "enableBgp": false, + "useLocalAzureIpAddress": false, + "ipsecPolicies": [], + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/virtualHub2/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/virtualHub2/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/virtualHub2/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/virtualHub2/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "Instance0", + "defaultBgpIpAddresses": [ + "10.30.0.4" + ], + "customBgpIpAddresses": [ + "169.254.21.5" + ], + "tunnelIpAddresses": [ + "104.208.48.178" + ] + }, + { + "ipconfigurationId": "Instance1", + "defaultBgpIpAddresses": [ + "10.30.0.5" + ], + "customBgpIpAddresses": [ + "169.254.21.10" + ], + "tunnelIpAddresses": [ + "104.208.48.179" + ] + } + ] + }, + "natRules": [], + "isRoutingPreferenceInternet": false + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnGatewayListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnGatewayListByResourceGroup.json new file mode 100644 index 000000000000..4f671cabf31d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnGatewayListByResourceGroup.json @@ -0,0 +1,278 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0, + "egressNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/natRules/nat03" + } + ] + } + }, + { + "name": "Connection-Link2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link2", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink2" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0, + "egressNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/natRules/nat03" + } + ] + } + } + ], + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "Instance0", + "defaultBgpIpAddresses": [ + "10.30.0.4" + ], + "customBgpIpAddresses": [ + "169.254.21.5" + ], + "tunnelIpAddresses": [ + "104.208.48.178" + ] + }, + { + "ipconfigurationId": "Instance1", + "defaultBgpIpAddresses": [ + "10.30.0.5" + ], + "customBgpIpAddresses": [ + "169.254.21.10" + ], + "tunnelIpAddresses": [ + "104.208.48.179" + ] + } + ] + }, + "natRules": [ + { + "name": "nat03", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/natRules/nat03", + "properties": { + "type": "Static", + "mode": "EgressSnat", + "internalMappings": [ + { + "addressSpace": "0.0.0.0/26" + } + ], + "externalMappings": [ + { + "addressSpace": "192.168.0.0/26" + } + ], + "egressVpnSiteLinkConnections": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/vpnLinkConnections/Connection-Link1" + } + ] + }, + "type": "Microsoft.Network/vpnGateways/natRules" + } + ], + "isRoutingPreferenceInternet": false + } + }, + { + "name": "gateway2", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnGateways/gateway2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/virtualHub2" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnGateways/gateway2/vpnConnections/vpnConnection2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnSites/vpnSite2" + }, + "connectionStatus": "Connected", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "routingWeight": 0, + "connectionBandwidth": 100, + "sharedKey": "key", + "enableBgp": false, + "useLocalAzureIpAddress": false, + "ipsecPolicies": [], + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/virtualHub2/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/virtualHub2/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/virtualHub2/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/virtualHub2/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "Instance0", + "defaultBgpIpAddresses": [ + "10.30.0.4" + ], + "customBgpIpAddresses": [ + "169.254.21.5" + ], + "tunnelIpAddresses": [ + "104.208.48.178" + ] + }, + { + "ipconfigurationId": "Instance1", + "defaultBgpIpAddresses": [ + "10.30.0.5" + ], + "customBgpIpAddresses": [ + "169.254.21.10" + ], + "tunnelIpAddresses": [ + "104.208.48.179" + ] + } + ] + }, + "natRules": [], + "isRoutingPreferenceInternet": false + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnGatewayPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnGatewayPut.json new file mode 100644 index 000000000000..2215a25ed142 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnGatewayPut.json @@ -0,0 +1,376 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid", + "vpnGatewayParameters": { + "location": "westcentralus", + "tags": { + "key1": "value1" + }, + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "properties": { + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "properties": { + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "egressNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/natRules/nat03" + } + ] + } + } + ] + } + } + ], + "bgpSettings": { + "asn": 65515, + "peerWeight": 0, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "Instance0", + "customBgpIpAddresses": [ + "169.254.21.5" + ] + }, + { + "ipconfigurationId": "Instance1", + "customBgpIpAddresses": [ + "169.254.21.10" + ] + } + ] + }, + "natRules": [ + { + "name": "nat03", + "properties": { + "type": "Static", + "mode": "EgressSnat", + "internalMappings": [ + { + "addressSpace": "0.0.0.0/26" + } + ], + "externalMappings": [ + { + "addressSpace": "192.168.0.0/26" + } + ], + "ipConfigurationId": "" + } + } + ], + "isRoutingPreferenceInternet": false + } + } + }, + "responses": { + "200": { + "body": { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0, + "egressNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/natRules/nat03" + } + ] + } + } + ], + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "Instance0", + "defaultBgpIpAddresses": [ + "10.30.0.4" + ], + "customBgpIpAddresses": [ + "169.254.21.5" + ], + "tunnelIpAddresses": [ + "104.208.48.178" + ] + }, + { + "ipconfigurationId": "Instance1", + "defaultBgpIpAddresses": [ + "10.30.0.5" + ], + "customBgpIpAddresses": [ + "169.254.21.10" + ], + "tunnelIpAddresses": [ + "104.208.48.179" + ] + } + ] + }, + "natRules": [ + { + "name": "nat03", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/natRules/nat03", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "type": "Static", + "mode": "EgressSnat", + "internalMappings": [ + { + "addressSpace": "0.0.0.0/26" + } + ], + "externalMappings": [ + { + "addressSpace": "192.168.0.0/26" + } + ], + "egressVpnSiteLinkConnections": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/vpnLinkConnections/Connection-Link1" + } + ] + } + } + ], + "isRoutingPreferenceInternet": false + } + } + }, + "201": { + "body": { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0, + "egressNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/natRules/nat03" + } + ] + } + } + ], + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "Instance0", + "defaultBgpIpAddresses": [ + "10.30.0.4" + ], + "customBgpIpAddresses": [ + "169.254.21.5" + ], + "tunnelIpAddresses": [ + "104.208.48.178" + ] + }, + { + "ipconfigurationId": "Instance1", + "defaultBgpIpAddresses": [ + "10.30.0.5" + ], + "customBgpIpAddresses": [ + "169.254.21.10" + ], + "tunnelIpAddresses": [ + "104.208.48.179" + ] + } + ] + }, + "natRules": [ + { + "name": "nat03", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/natRules/nat03", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "type": "Static", + "mode": "EgressSnat", + "internalMappings": [ + { + "addressSpace": "0.0.0.0/26" + } + ], + "externalMappings": [ + { + "addressSpace": "192.168.0.0/26" + } + ], + "egressVpnSiteLinkConnections": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/vpnLinkConnections/Connection-Link1" + } + ] + } + } + ], + "isRoutingPreferenceInternet": false + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnGatewayReset.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnGatewayReset.json new file mode 100644 index 000000000000..715d1996535e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnGatewayReset.json @@ -0,0 +1,106 @@ +{ + "parameters": { + "gatewayName": "vpngw", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "202": {}, + "200": { + "body": { + "name": "vpngw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/vpngw", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/vpngw/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "connectionStatus": "Connected", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "routingWeight": 0, + "connectionBandwidth": 100, + "sharedKey": "key", + "enableBgp": false, + "useLocalAzureIpAddress": false, + "ipsecPolicies": [], + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "Instance0", + "defaultBgpIpAddresses": [ + "10.30.0.4" + ], + "customBgpIpAddresses": [ + "169.254.21.5" + ], + "tunnelIpAddresses": [ + "104.208.48.178" + ] + }, + { + "ipconfigurationId": "Instance1", + "defaultBgpIpAddresses": [ + "10.30.0.5" + ], + "customBgpIpAddresses": [ + "169.254.21.10" + ], + "tunnelIpAddresses": [ + "104.208.48.179" + ] + } + ] + }, + "natRules": [], + "isRoutingPreferenceInternet": false + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnGatewayStartPacketCapture.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnGatewayStartPacketCapture.json new file mode 100644 index 000000000000..247e77aefa1c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnGatewayStartPacketCapture.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "gatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnGatewayStartPacketCaptureFilterData.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnGatewayStartPacketCaptureFilterData.json new file mode 100644 index 000000000000..ec7b3b8ada96 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnGatewayStartPacketCaptureFilterData.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "gatewayName": "vpngw", + "parameters": { + "filterData": "{'TracingFlags': 11,'MaxPacketBufferSize': 120,'MaxFileSize': 200,'Filters': [{'SourceSubnets': ['20.1.1.0/24'],'DestinationSubnets': ['10.1.1.0/24'],'SourcePort': [500],'DestinationPort': [4500],'Protocol': 6,'TcpFlags': 16,'CaptureSingleDirectionTrafficOnly': true}]}" + } + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnGatewayStopPacketCapture.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnGatewayStopPacketCapture.json new file mode 100644 index 000000000000..a9cb5f7142a7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnGatewayStopPacketCapture.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "gatewayName": "vpngw", + "parameters": { + "sasUrl": "https://teststorage.blob.core.windows.net/?sv=2018-03-28&ss=bfqt&srt=sco&sp=rwdlacup&se=2019-09-13T07:44:05Z&st=2019-09-06T23:44:05Z&spr=https&sig=V1h9D1riltvZMI69d6ihENnFo%2FrCvTqGgjO2lf%2FVBhE%3D" + } + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnGatewayUpdateTags.json new file mode 100644 index 000000000000..f5fa14f8fd35 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnGatewayUpdateTags.json @@ -0,0 +1,114 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid", + "vpnGatewayParameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "202": {}, + "200": { + "body": { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "connectionStatus": "Connected", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "routingWeight": 0, + "sharedKey": "key", + "enableBgp": false, + "ipsecPolicies": [], + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + ], + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "Instance0", + "defaultBgpIpAddresses": [ + "10.30.0.4" + ], + "customBgpIpAddresses": [ + "169.254.21.5" + ], + "tunnelIpAddresses": [ + "104.208.48.178" + ] + }, + { + "ipconfigurationId": "Instance1", + "defaultBgpIpAddresses": [ + "10.30.0.5" + ], + "customBgpIpAddresses": [ + "169.254.21.10" + ], + "tunnelIpAddresses": [ + "104.208.48.179" + ] + } + ] + }, + "natRules": [], + "isRoutingPreferenceInternet": false + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnServerConfigurationDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnServerConfigurationDelete.json new file mode 100644 index 000000000000..04b12c6982a0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnServerConfigurationDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "vpnServerConfigurationName": "vpnServerConfiguration1", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnServerConfigurationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnServerConfigurationGet.json new file mode 100644 index 000000000000..3580eb912d54 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnServerConfigurationGet.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "vpnServerConfigurationName": "vpnServerConfiguration1", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnServerConfiguration1", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnAuthenticationTypes": [ + "Certificate" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServers": [ + { + "radiusServerAddress": "10.0.0.0", + "radiusServerScore": 25 + } + ], + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnServerConfigurationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnServerConfigurationList.json new file mode 100644 index 000000000000..23fa9096e10a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnServerConfigurationList.json @@ -0,0 +1,132 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnServerConfiguration1", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnAuthenticationTypes": [ + "Certificate" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServerAddress": "8.9.9.9", + "radiusServerSecret": "", + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "East US", + "name": "vpnServerConfiguration2", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnAuthenticationTypes": [ + "Certificate" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServers": [ + { + "radiusServerAddress": "10.0.0.0", + "radiusServerScore": 25 + } + ], + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnServerConfigurationListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnServerConfigurationListByResourceGroup.json new file mode 100644 index 000000000000..79d8578caa84 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnServerConfigurationListByResourceGroup.json @@ -0,0 +1,129 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnServerConfiguration1", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnAuthenticationTypes": [ + "Certificate" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServerAddress": "8.9.9.9", + "radiusServerSecret": "", + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnServerConfiguration2", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnAuthenticationTypes": [ + "Certificate" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServerAddress": "8.9.9.9", + "radiusServerSecret": "", + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnServerConfigurationPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnServerConfigurationPut.json new file mode 100644 index 000000000000..49f99aa87b62 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnServerConfigurationPut.json @@ -0,0 +1,190 @@ +{ + "parameters": { + "vpnServerConfigurationName": "vpnServerConfiguration1", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid", + "VpnServerConfigurationParameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "properties": { + "vpnProtocols": [ + "IkeV2" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServers": [ + { + "radiusServerAddress": "10.0.0.0", + "radiusServerScore": 25, + "radiusServerSecret": "radiusServerSecret" + } + ], + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnServerConfiguration1", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnAuthenticationTypes": [ + "Certificate" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServers": [ + { + "radiusServerAddress": "10.0.0.0", + "radiusServerScore": 25 + } + ], + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnServerConfiguration1", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnAuthenticationTypes": [ + "Certificate" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServers": [ + { + "radiusServerAddress": "10.0.0.0", + "radiusServerScore": 25 + } + ], + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnServerConfigurationUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnServerConfigurationUpdateTags.json new file mode 100644 index 000000000000..4e302b217ad0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnServerConfigurationUpdateTags.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "vpnServerConfigurationName": "vpnServerConfiguration1", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid", + "VpnServerConfigurationParameters": { + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnServerConfiguration1", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServerAddress": "8.9.9.9", + "radiusServerSecret": "", + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnSiteDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnSiteDelete.json new file mode 100644 index 000000000000..156eee5a17b7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnSiteDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "vpnSiteName": "vpnSite1", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnSiteGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnSiteGet.json new file mode 100644 index 000000000000..4cc6102cb60e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnSiteGet.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "vpnSiteName": "vpnSite1", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1" + }, + "deviceProperties": { + "linkSpeedInMbps": 0 + }, + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "isSecuritySite": false, + "vpnSiteLinks": [ + { + "name": "vpnSiteLink1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkProviderName": "vendor1", + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnSiteLinkConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnSiteLinkConnectionGet.json new file mode 100644 index 000000000000..69a25366efbb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnSiteLinkConnectionGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "connectionName": "vpnConnection1", + "linkConnectionName": "Connection-Link1", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnSiteLinkConnectionGetIkeSas.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnSiteLinkConnectionGetIkeSas.json new file mode 100644 index 000000000000..832e15c4d905 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnSiteLinkConnectionGetIkeSas.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "gatewayName": "gateway1", + "connectionName": "vpnConnection1", + "linkConnectionName": "Connection-Link1" + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/westus/operationResults/{operationId}?api-version=2021-02-01" + } + }, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnSiteLinkConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnSiteLinkConnectionList.json new file mode 100644 index 000000000000..dbcbc550b6b5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnSiteLinkConnectionList.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "api-version": "2021-02-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid", + "connectionName": "vpnConnection1" + }, + "responses": { + "200": { + "body": [ + { + "name": "Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnSiteLinkConnectionReset.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnSiteLinkConnectionReset.json new file mode 100644 index 000000000000..1a1571a85599 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnSiteLinkConnectionReset.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "gatewayName": "gateway1", + "connectionName": "vpnConnection1", + "linkConnectionName": "Connection-Link1" + }, + "responses": { + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnSiteLinkGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnSiteLinkGet.json new file mode 100644 index 000000000000..1416861bc5d2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnSiteLinkGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "vpnSiteName": "vpnSite1", + "vpnSiteLinkName": "vpnSiteLink1", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "vpnSiteLink1", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnSiteLinkListByVpnSite.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnSiteLinkListByVpnSite.json new file mode 100644 index 000000000000..e0a154cd029d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnSiteLinkListByVpnSite.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "vpnSiteName": "vpnSite1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "vpnSiteLink1", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkSpeedInMbps": 200 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + }, + { + "name": "vpnSiteLink2", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "40.40.40.46", + "linkProperties": { + "linkSpeedInMbps": 200 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.1", + "asn": 1234 + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnSiteList.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnSiteList.json new file mode 100644 index 000000000000..bbc0aee4330a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnSiteList.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1" + }, + "deviceProperties": { + "linkSpeedInMbps": 0 + }, + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "isSecuritySite": false, + "vpnSiteLinks": [ + { + "name": "vpnSiteLink1", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnSites/vpnSite2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "East US", + "name": "vpnSite2", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualWANs/wan1", + "deviceProperties": { + "deviceVendor": "vendor1", + "deviceModel": "model01", + "linkSpeedInMbps": 200 + }, + "ipAddress": "10.1.0.0", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + }, + "isSecuritySite": false + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnSiteListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnSiteListByResourceGroup.json new file mode 100644 index 000000000000..c0a120d32fe3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnSiteListByResourceGroup.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1" + }, + "deviceProperties": { + "linkSpeedInMbps": 0 + }, + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "isSecuritySite": false, + "vpnSiteLinks": [ + { + "name": "vpnSiteLink1", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite2", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "deviceProperties": { + "deviceVendor": "vendor1", + "deviceModel": "model01", + "linkSpeedInMbps": 200 + }, + "ipAddress": "10.1.0.0", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnSitePut.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnSitePut.json new file mode 100644 index 000000000000..d07cb27fc544 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnSitePut.json @@ -0,0 +1,144 @@ +{ + "parameters": { + "vpnSiteName": "vpnSite1", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid", + "VpnSiteParameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "properties": { + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1" + }, + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "isSecuritySite": false, + "vpnSiteLinks": [ + { + "name": "vpnSiteLink1", + "properties": { + "ipAddress": "50.50.50.56", + "fqdn": "link1.vpnsite1.contoso.com", + "linkProperties": { + "linkProviderName": "vendor1", + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ], + "o365Policy": { + "breakOutCategories": { + "allow": true, + "optimize": true, + "default": false + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1" + }, + "deviceProperties": { + "linkSpeedInMbps": 0 + }, + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "isSecuritySite": false, + "vpnSiteLinks": [ + { + "name": "vpnSiteLink1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkProviderName": "vendor1", + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1" + }, + "deviceProperties": { + "linkSpeedInMbps": 0 + }, + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "isSecuritySite": false, + "vpnSiteLinks": [ + { + "name": "vpnSiteLink1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkProviderName": "vendor1", + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnSiteUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnSiteUpdateTags.json new file mode 100644 index 000000000000..a67551ad1dda --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnSiteUpdateTags.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "vpnSiteName": "vpnSite1", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "subscriptionId": "subid", + "VpnSiteParameters": { + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "deviceProperties": { + "deviceVendor": "vendor1", + "deviceModel": "model01", + "linkSpeedInMbps": 200 + }, + "ipAddress": "10.0.0.0", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnSitesConfigurationDownload.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnSitesConfigurationDownload.json new file mode 100644 index 000000000000..1ea6d4f50f70 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/VpnSitesConfigurationDownload.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "api-version": "2021-02-01", + "virtualWANName": "wan1", + "request": { + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/abc" + ], + "outputBlobSasUrl": "https://blobcortextesturl.blob.core.windows.net/folderforconfig/vpnFile?sp=rw&se=2018-01-10T03%3A42%3A04Z&sv=2017-04-17&sig=WvXrT5bDmDFfgHs%2Brz%2BjAu123eRCNE9BO0eQYcPDT7pY%3D&sr=b" + } + }, + "responses": { + "200": { + "description": "Request successful. Follow the location header for sas-url to output blob." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/WafListAllPolicies.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/WafListAllPolicies.json new file mode 100644 index 000000000000..711f4c194dc6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/WafListAllPolicies.json @@ -0,0 +1,102 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Policy1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies/Policy1", + "type": "Microsoft.Network/applicationgatewaywebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "properties": { + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "policySettings": { + "state": "Enabled", + "mode": "Prevention", + "maxRequestBodySizeInKb": 2000, + "fileUploadLimitInMb": 4000, + "requestBodyCheck": true + }, + "customRules": [ + { + "name": "Rule1", + "priority": 1, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "transforms": [] + } + ], + "action": "Block" + }, + { + "name": "Rule2", + "priority": 2, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24" + ] + }, + { + "matchVariables": [ + { + "variableName": "RequestHeader", + "selector": "UserAgent" + } + ], + "operator": "Contains", + "negationConditon": false, + "matchValues": [ + "Windows" + ] + } + ], + "action": "Block" + } + ], + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "OWASP", + "ruleSetVersion": "3.2" + } + ] + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/WafListPolicies.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/WafListPolicies.json new file mode 100644 index 000000000000..a53807240e54 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/WafListPolicies.json @@ -0,0 +1,103 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Policy1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies/Policy1", + "type": "Microsoft.Network/applicationgatewaywebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "properties": { + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "policySettings": { + "state": "Enabled", + "mode": "Detection", + "maxRequestBodySizeInKb": 2000, + "fileUploadLimitInMb": 4000, + "requestBodyCheck": true + }, + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "OWASP", + "ruleSetVersion": "3.2" + } + ] + }, + "customRules": [ + { + "name": "Rule1", + "priority": 1, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "transforms": [] + } + ], + "action": "Block" + }, + { + "name": "Rule2", + "priority": 2, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24" + ] + }, + { + "matchVariables": [ + { + "variableName": "RequestHeader", + "selector": "UserAgent" + } + ], + "operator": "Contains", + "negationConditon": false, + "matchValues": [ + "Windows" + ] + } + ], + "action": "Block" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/WafPolicyCreateOrUpdate.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/WafPolicyCreateOrUpdate.json new file mode 100644 index 000000000000..a96b36e90e3c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/WafPolicyCreateOrUpdate.json @@ -0,0 +1,258 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "policyName": "Policy1", + "parameters": { + "location": "WestUs", + "properties": { + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "OWASP", + "ruleSetVersion": "3.2" + } + ] + }, + "customRules": [ + { + "name": "Rule1", + "priority": 1, + "ruleType": "MatchRule", + "action": "Block", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ] + } + ] + }, + { + "name": "Rule2", + "priority": 2, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "matchValues": [ + "192.168.1.0/24" + ] + }, + { + "matchVariables": [ + { + "variableName": "RequestHeaders", + "selector": "UserAgent" + } + ], + "operator": "Contains", + "matchValues": [ + "Windows" + ] + } + ], + "action": "Block" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "Policy1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies/Policy1", + "type": "Microsoft.Network/applicationgatewaywebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "properties": { + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "policySettings": { + "state": "Enabled", + "mode": "Detection", + "maxRequestBodySizeInKb": 2000, + "fileUploadLimitInMb": 4000, + "requestBodyCheck": true + }, + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "OWASP", + "ruleSetVersion": "3.2" + } + ] + }, + "customRules": [ + { + "name": "Rule1", + "priority": 1, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "transforms": [] + } + ], + "action": "Block" + }, + { + "name": "Rule2", + "priority": 2, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24" + ] + }, + { + "matchVariables": [ + { + "variableName": "RequestHeader", + "selector": "UserAgent" + } + ], + "operator": "Contains", + "negationConditon": false, + "matchValues": [ + "Windows" + ] + } + ], + "action": "Block" + } + ] + } + } + }, + "201": { + "body": { + "name": "Policy1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies/Policy1", + "type": "Microsoft.Network/applicationgatewaywebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "properties": { + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "policySettings": { + "state": "Enabled", + "mode": "Detection", + "maxRequestBodySizeInKb": 2000, + "fileUploadLimitInMb": 4000, + "requestBodyCheck": true + }, + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "OWASP", + "ruleSetVersion": "3.2" + } + ] + }, + "customRules": [ + { + "name": "Rule1", + "priority": 1, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "transforms": [] + } + ], + "action": "Block" + }, + { + "name": "Rule2", + "priority": 2, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24" + ] + }, + { + "matchVariables": [ + { + "variableName": "RequestHeader", + "selector": "UserAgent" + } + ], + "operator": "Contains", + "negationConditon": false, + "matchValues": [ + "Windows" + ] + } + ], + "action": "Block" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/WafPolicyDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/WafPolicyDelete.json new file mode 100644 index 000000000000..bbe41472969f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/WafPolicyDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "policyName": "Policy1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/WafPolicyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/WafPolicyGet.json new file mode 100644 index 000000000000..d32ad68deefb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/examples/WafPolicyGet.json @@ -0,0 +1,140 @@ +{ + "parameters": { + "api-version": "2021-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "policyName": "Policy1" + }, + "responses": { + "200": { + "body": { + "name": "Policy1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies/Policy1", + "type": "Microsoft.Network/applicationgatewaywebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "properties": { + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "policySettings": { + "state": "Enabled", + "mode": "Prevention", + "maxRequestBodySizeInKb": 2000, + "fileUploadLimitInMb": 4000, + "requestBodyCheck": true + }, + "customRules": [ + { + "name": "Rule1", + "priority": 1, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "transforms": [] + } + ], + "action": "Block" + }, + { + "name": "Rule2", + "priority": 2, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24" + ] + }, + { + "matchVariables": [ + { + "variableName": "RequestHeader", + "selector": "UserAgent" + } + ], + "operator": "Contains", + "negationConditon": false, + "matchValues": [ + "Windows" + ] + } + ], + "action": "Block" + } + ], + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "OWASP", + "ruleSetVersion": "3.2", + "ruleGroupOverrides": [ + { + "ruleGroupName": "REQUEST-942-APPLICATION-ATTACK-SQLI", + "rules": [ + { + "ruleId": "942130", + "state": "Disabled" + }, + { + "ruleId": "942110", + "state": "Disabled" + } + ] + }, + { + "ruleGroupName": "REQUEST-920-PROTOCOL-ENFORCEMENT", + "rules": [ + { + "ruleId": "920100", + "state": "Disabled" + }, + { + "ruleId": "920120", + "state": "Disabled" + } + ] + } + ] + } + ], + "exclusions": [ + { + "matchVariable": "RequestHeaderNames", + "selectorMatchOperator": "Equals", + "selector": "testHeader1" + }, + { + "matchVariable": "RequestHeaderNames", + "selectorMatchOperator": "StartsWith", + "selector": "testHeader2" + } + ] + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/expressRouteCircuit.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/expressRouteCircuit.json new file mode 100644 index 000000000000..a766d10c3261 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/expressRouteCircuit.json @@ -0,0 +1,2507 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2021-02-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/authorizations/{authorizationName}": { + "delete": { + "tags": [ + "ExpressRouteCircuitAuthorizations" + ], + "operationId": "ExpressRouteCircuitAuthorizations_Delete", + "description": "Deletes the specified authorization from the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "authorizationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the authorization." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete ExpressRouteCircuit Authorization": { + "$ref": "./examples/ExpressRouteCircuitAuthorizationDelete.json" + } + } + }, + "get": { + "tags": [ + "ExpressRouteCircuitAuthorizations" + ], + "operationId": "ExpressRouteCircuitAuthorizations_Get", + "description": "Gets the specified authorization from the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "authorizationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the authorization." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the ExpressRouteCircuitAuthorization resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitAuthorization" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get ExpressRouteCircuit Authorization": { + "$ref": "./examples/ExpressRouteCircuitAuthorizationGet.json" + } + } + }, + "put": { + "tags": [ + "ExpressRouteCircuitAuthorizations" + ], + "operationId": "ExpressRouteCircuitAuthorizations_CreateOrUpdate", + "description": "Creates or updates an authorization in the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "authorizationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the authorization." + }, + { + "name": "authorizationParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitAuthorization" + }, + "description": "Parameters supplied to the create or update express route circuit authorization operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting ExpressRouteCircuitAuthorization resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitAuthorization" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCircuitAuthorization resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitAuthorization" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create ExpressRouteCircuit Authorization": { + "$ref": "./examples/ExpressRouteCircuitAuthorizationCreate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/authorizations": { + "get": { + "tags": [ + "ExpressRouteCircuitAuthorizations" + ], + "operationId": "ExpressRouteCircuitAuthorizations_List", + "description": "Gets all authorizations in an express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the circuit." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteCircuitAuthorization resources.", + "schema": { + "$ref": "#/definitions/AuthorizationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List ExpressRouteCircuit Authorization": { + "$ref": "./examples/ExpressRouteCircuitAuthorizationList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}": { + "delete": { + "tags": [ + "ExpressRouteCircuitPeerings" + ], + "operationId": "ExpressRouteCircuitPeerings_Delete", + "description": "Deletes the specified peering from the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete ExpressRouteCircuit Peerings": { + "$ref": "./examples/ExpressRouteCircuitPeeringDelete.json" + } + } + }, + "get": { + "tags": [ + "ExpressRouteCircuitPeerings" + ], + "operationId": "ExpressRouteCircuitPeerings_Get", + "description": "Gets the specified peering for the express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitPeering" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get ExpressRouteCircuit Peering": { + "$ref": "./examples/ExpressRouteCircuitPeeringGet.json" + } + } + }, + "put": { + "tags": [ + "ExpressRouteCircuitPeerings" + ], + "operationId": "ExpressRouteCircuitPeerings_CreateOrUpdate", + "description": "Creates or updates a peering in the specified express route circuits.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "peeringParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitPeering" + }, + "description": "Parameters supplied to the create or update express route circuit peering operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCircuitPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitPeering" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ExpressRouteCircuitPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitPeering" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create ExpressRouteCircuit Peerings": { + "$ref": "./examples/ExpressRouteCircuitPeeringCreate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings": { + "get": { + "tags": [ + "ExpressRouteCircuitPeerings" + ], + "operationId": "ExpressRouteCircuitPeerings_List", + "description": "Gets all peerings in a specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteCircuitPeering resources.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitPeeringListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List ExpressRouteCircuit Peerings": { + "$ref": "./examples/ExpressRouteCircuitPeeringList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/connections/{connectionName}": { + "delete": { + "tags": [ + "ExpressRouteCircuitConnections" + ], + "operationId": "ExpressRouteCircuitConnections_Delete", + "description": "Deletes the specified Express Route Circuit Connection from the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete ExpressRouteCircuit": { + "$ref": "./examples/ExpressRouteCircuitConnectionDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "ExpressRouteCircuitConnections" + ], + "operationId": "ExpressRouteCircuitConnections_Get", + "description": "Gets the specified Express Route Circuit Connection from the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Express Route Circuit Connection resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRouteCircuitConnectionGet": { + "$ref": "./examples/ExpressRouteCircuitConnectionGet.json" + } + } + }, + "put": { + "tags": [ + "ExpressRouteCircuitConnections" + ], + "operationId": "ExpressRouteCircuitConnections_CreateOrUpdate", + "description": "Creates or updates a Express Route Circuit Connection in the specified express route circuits.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit connection." + }, + { + "name": "expressRouteCircuitConnectionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitConnection" + }, + "description": "Parameters supplied to the create or update express route circuit connection operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCircuitPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitConnection" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ExpressRouteCircuitPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRouteCircuitConnectionCreate": { + "$ref": "./examples/ExpressRouteCircuitConnectionCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/connections": { + "get": { + "tags": [ + "ExpressRouteCircuitConnections" + ], + "operationId": "ExpressRouteCircuitConnections_List", + "description": "Gets all global reach connections associated with a private peering in an express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteCircuitConnections resources.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List ExpressRouteCircuit Connection": { + "$ref": "./examples/ExpressRouteCircuitConnectionList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/peerConnections/{connectionName}": { + "get": { + "tags": [ + "PeerExpressRouteCircuitConnections" + ], + "operationId": "PeerExpressRouteCircuitConnections_Get", + "description": "Gets the specified Peer Express Route Circuit Connection from the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peer express route circuit connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Peer Express Route Circuit Connection resource.", + "schema": { + "$ref": "#/definitions/PeerExpressRouteCircuitConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "PeerExpressRouteCircuitConnectionGet": { + "$ref": "./examples/PeerExpressRouteCircuitConnectionGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/peerConnections": { + "get": { + "tags": [ + "PeerExpressRouteCircuitConnections" + ], + "operationId": "PeerExpressRouteCircuitConnections_List", + "description": "Gets all global reach peer connections associated with a private peering in an express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PeerExpressRouteCircuitConnections resources.", + "schema": { + "$ref": "#/definitions/PeerExpressRouteCircuitConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Peer ExpressRouteCircuit Connection": { + "$ref": "./examples/PeerExpressRouteCircuitConnectionList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}": { + "delete": { + "tags": [ + "ExpressRouteCircuits" + ], + "operationId": "ExpressRouteCircuits_Delete", + "description": "Deletes the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted. Sets 'Disabling' provisioningState until the operation completes. Returns an operation URI that can be queried to find the current state of the operation." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete ExpressRouteCircuit": { + "$ref": "./examples/ExpressRouteCircuitDelete.json" + } + } + }, + "get": { + "tags": [ + "ExpressRouteCircuits" + ], + "operationId": "ExpressRouteCircuits_Get", + "description": "Gets information about the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of express route circuit." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuit resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuit" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get ExpressRouteCircuit": { + "$ref": "./examples/ExpressRouteCircuitGet.json" + } + } + }, + "put": { + "tags": [ + "ExpressRouteCircuits" + ], + "operationId": "ExpressRouteCircuits_CreateOrUpdate", + "description": "Creates or updates an express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the circuit." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteCircuit" + }, + "description": "Parameters supplied to the create or update express route circuit operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting ExpressRouteCircuit resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuit" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCircuit resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuit" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create ExpressRouteCircuit": { + "$ref": "./examples/ExpressRouteCircuitCreate.json" + }, + "Create ExpressRouteCircuit on ExpressRoutePort": { + "$ref": "./examples/ExpressRouteCircuitCreateOnExpressRoutePort.json" + } + } + }, + "patch": { + "tags": [ + "ExpressRouteCircuits" + ], + "operationId": "ExpressRouteCircuits_UpdateTags", + "description": "Updates an express route circuit tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the circuit." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update express route circuit tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCircuit resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuit" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update Express Route Circuit Tags": { + "$ref": "./examples/ExpressRouteCircuitUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/arpTables/{devicePath}": { + "post": { + "tags": [ + "ExpressRouteCircuitArpTable" + ], + "operationId": "ExpressRouteCircuits_ListArpTable", + "description": "Gets the currently advertised ARP table associated with the express route circuit in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "devicePath", + "in": "path", + "required": true, + "type": "string", + "description": "The path of the device." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitsArpTable resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitsArpTableListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "List ARP Table": { + "$ref": "./examples/ExpressRouteCircuitARPTableList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/routeTables/{devicePath}": { + "post": { + "tags": [ + "ExpressRouteCircuitRoutesTable" + ], + "operationId": "ExpressRouteCircuits_ListRoutesTable", + "description": "Gets the currently advertised routes table associated with the express route circuit in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "devicePath", + "in": "path", + "required": true, + "type": "string", + "description": "The path of the device." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitsRouteTable resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitsRoutesTableListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "List Route Tables": { + "$ref": "./examples/ExpressRouteCircuitRouteTableList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/routeTablesSummary/{devicePath}": { + "post": { + "tags": [ + "ExpressRouteCircuitRoutesTableSummary" + ], + "operationId": "ExpressRouteCircuits_ListRoutesTableSummary", + "description": "Gets the currently advertised routes table summary associated with the express route circuit in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "devicePath", + "in": "path", + "required": true, + "type": "string", + "description": "The path of the device." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitsRoutesTableSummary resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitsRoutesTableSummaryListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "List Route Table Summary": { + "$ref": "./examples/ExpressRouteCircuitRouteTableSummaryList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/stats": { + "get": { + "tags": [ + "ExpressRouteCircuitStats" + ], + "operationId": "ExpressRouteCircuits_GetStats", + "description": "Gets all the stats from an express route circuit in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitStats resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitStats" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get ExpressRoute Circuit Traffic Stats": { + "$ref": "./examples/ExpressRouteCircuitStats.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/stats": { + "get": { + "tags": [ + "ExpressRouteCircuitStats" + ], + "operationId": "ExpressRouteCircuits_GetPeeringStats", + "description": "Gets all stats from an express route circuit in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitStats resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitStats" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get ExpressRoute Circuit Peering Traffic Stats": { + "$ref": "./examples/ExpressRouteCircuitPeeringStats.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits": { + "get": { + "tags": [ + "ExpressRouteCircuits" + ], + "operationId": "ExpressRouteCircuits_List", + "description": "Gets all the express route circuits in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitAuthorization resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List ExpressRouteCircuits in a resource group": { + "$ref": "./examples/ExpressRouteCircuitListByResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/expressRouteCircuits": { + "get": { + "tags": [ + "ExpressRouteCircuits" + ], + "operationId": "ExpressRouteCircuits_ListAll", + "description": "Gets all the express route circuits in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteCircuit resources.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List ExpressRouteCircuits in a subscription": { + "$ref": "./examples/ExpressRouteCircuitListBySubscription.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/expressRouteServiceProviders": { + "get": { + "tags": [ + "ExpressRouteServiceProviders" + ], + "operationId": "ExpressRouteServiceProviders_List", + "description": "Gets all the available express route service providers.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteServiceProvider resources.", + "schema": { + "$ref": "#/definitions/ExpressRouteServiceProviderListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List ExpressRoute providers": { + "$ref": "./examples/ExpressRouteProviderList.json" + } + } + } + } + }, + "definitions": { + "AuthorizationPropertiesFormat": { + "properties": { + "authorizationKey": { + "type": "string", + "description": "The authorization key." + }, + "authorizationUseStatus": { + "type": "string", + "description": "The authorization use status.", + "enum": [ + "Available", + "InUse" + ], + "x-ms-enum": { + "name": "AuthorizationUseStatus", + "modelAsString": true + } + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the authorization resource." + } + }, + "description": "Properties of ExpressRouteCircuitAuthorization." + }, + "ExpressRouteCircuitAuthorization": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AuthorizationPropertiesFormat", + "description": "Properties of the express route circuit authorization." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Authorization in an ExpressRouteCircuit resource." + }, + "AuthorizationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitAuthorization" + }, + "description": "The authorizations in an ExpressRoute Circuit." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListAuthorizations API service call retrieves all authorizations that belongs to an ExpressRouteCircuit." + }, + "ExpressRouteCircuitPeeringConfig": { + "properties": { + "advertisedPublicPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The reference to AdvertisedPublicPrefixes." + }, + "advertisedCommunities": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The communities of bgp peering. Specified for microsoft peering." + }, + "advertisedPublicPrefixesState": { + "readOnly": true, + "type": "string", + "description": "The advertised public prefix state of the Peering resource.", + "enum": [ + "NotConfigured", + "Configuring", + "Configured", + "ValidationNeeded" + ], + "x-ms-enum": { + "name": "ExpressRouteCircuitPeeringAdvertisedPublicPrefixState", + "modelAsString": true + } + }, + "legacyMode": { + "type": "integer", + "format": "int32", + "description": "The legacy mode of the peering." + }, + "customerASN": { + "type": "integer", + "format": "int32", + "description": "The CustomerASN of the peering." + }, + "routingRegistryName": { + "type": "string", + "description": "The RoutingRegistryName of the configuration." + } + }, + "description": "Specifies the peering configuration." + }, + "Ipv6ExpressRouteCircuitPeeringConfig": { + "properties": { + "primaryPeerAddressPrefix": { + "type": "string", + "description": "The primary address prefix." + }, + "secondaryPeerAddressPrefix": { + "type": "string", + "description": "The secondary address prefix." + }, + "microsoftPeeringConfig": { + "$ref": "#/definitions/ExpressRouteCircuitPeeringConfig", + "description": "The Microsoft peering configuration." + }, + "routeFilter": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the RouteFilter resource." + }, + "state": { + "type": "string", + "description": "The state of peering.", + "enum": [ + "Disabled", + "Enabled" + ], + "x-ms-enum": { + "name": "ExpressRouteCircuitPeeringState", + "modelAsString": true + } + } + }, + "description": "Contains IPv6 peering config." + }, + "ExpressRouteCircuitStats": { + "properties": { + "primarybytesIn": { + "type": "integer", + "format": "int64", + "description": "The Primary BytesIn of the peering." + }, + "primarybytesOut": { + "type": "integer", + "format": "int64", + "description": "The primary BytesOut of the peering." + }, + "secondarybytesIn": { + "type": "integer", + "format": "int64", + "description": "The secondary BytesIn of the peering." + }, + "secondarybytesOut": { + "type": "integer", + "format": "int64", + "description": "The secondary BytesOut of the peering." + } + }, + "description": "Contains stats associated with the peering." + }, + "ExpressRouteCircuitPeeringPropertiesFormat": { + "properties": { + "peeringType": { + "$ref": "#/definitions/ExpressRoutePeeringType", + "description": "The peering type." + }, + "state": { + "$ref": "#/definitions/ExpressRoutePeeringState", + "description": "The peering state." + }, + "azureASN": { + "type": "integer", + "format": "int32", + "description": "The Azure ASN." + }, + "peerASN": { + "type": "integer", + "format": "int64", + "minimum": 1, + "maximum": 4294967295, + "description": "The peer ASN." + }, + "primaryPeerAddressPrefix": { + "type": "string", + "description": "The primary address prefix." + }, + "secondaryPeerAddressPrefix": { + "type": "string", + "description": "The secondary address prefix." + }, + "primaryAzurePort": { + "type": "string", + "description": "The primary port." + }, + "secondaryAzurePort": { + "type": "string", + "description": "The secondary port." + }, + "sharedKey": { + "type": "string", + "description": "The shared key." + }, + "vlanId": { + "type": "integer", + "format": "int32", + "description": "The VLAN ID." + }, + "microsoftPeeringConfig": { + "$ref": "#/definitions/ExpressRouteCircuitPeeringConfig", + "description": "The Microsoft peering configuration." + }, + "stats": { + "$ref": "#/definitions/ExpressRouteCircuitStats", + "description": "The peering stats of express route circuit." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route circuit peering resource." + }, + "gatewayManagerEtag": { + "type": "string", + "description": "The GatewayManager Etag." + }, + "lastModifiedBy": { + "readOnly": true, + "type": "string", + "description": "Who was the last to modify the peering." + }, + "routeFilter": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the RouteFilter resource." + }, + "ipv6PeeringConfig": { + "$ref": "#/definitions/Ipv6ExpressRouteCircuitPeeringConfig", + "description": "The IPv6 peering configuration." + }, + "expressRouteConnection": { + "$ref": "./virtualWan.json#/definitions/ExpressRouteConnectionId", + "description": "The ExpressRoute connection." + }, + "connections": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitConnection" + }, + "description": "The list of circuit connections associated with Azure Private Peering for this circuit." + }, + "peeredConnections": { + "type": "array", + "items": { + "$ref": "#/definitions/PeerExpressRouteCircuitConnection" + }, + "readOnly": true, + "description": "The list of peered circuit connections associated with Azure Private Peering for this circuit." + } + }, + "description": "Properties of the express route circuit peering." + }, + "ExpressRouteCircuitPeering": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteCircuitPeeringPropertiesFormat", + "description": "Properties of the express route circuit peering." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Peering in an ExpressRouteCircuit resource." + }, + "ExpressRouteCircuitPeeringListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitPeering" + }, + "description": "The peerings in an express route circuit." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListPeering API service call retrieves all peerings that belong to an ExpressRouteCircuit." + }, + "ExpressRoutePeeringType": { + "type": "string", + "description": "The peering type.", + "enum": [ + "AzurePublicPeering", + "AzurePrivatePeering", + "MicrosoftPeering" + ], + "x-ms-enum": { + "name": "ExpressRoutePeeringType", + "modelAsString": true + } + }, + "ExpressRoutePeeringState": { + "type": "string", + "description": "The state of peering.", + "enum": [ + "Disabled", + "Enabled" + ], + "x-ms-enum": { + "name": "ExpressRoutePeeringState", + "modelAsString": true + } + }, + "Ipv6CircuitConnectionConfig": { + "description": "IPv6 Circuit Connection properties for global reach.", + "properties": { + "addressPrefix": { + "type": "string", + "description": "/125 IP address space to carve out customer addresses for global reach." + }, + "circuitConnectionStatus": { + "readOnly": true, + "$ref": "#/definitions/CircuitConnectionStatus", + "description": "Express Route Circuit connection state." + } + } + }, + "ExpressRouteCircuitConnectionPropertiesFormat": { + "properties": { + "expressRouteCircuitPeering": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to Express Route Circuit Private Peering Resource of the circuit initiating connection." + }, + "peerExpressRouteCircuitPeering": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to Express Route Circuit Private Peering Resource of the peered circuit." + }, + "addressPrefix": { + "type": "string", + "description": "/29 IP address space to carve out Customer addresses for tunnels." + }, + "authorizationKey": { + "type": "string", + "description": "The authorization key." + }, + "ipv6CircuitConnectionConfig": { + "$ref": "#/definitions/Ipv6CircuitConnectionConfig", + "description": "IPv6 Address PrefixProperties of the express route circuit connection." + }, + "circuitConnectionStatus": { + "$ref": "#/definitions/CircuitConnectionStatus", + "description": "Express Route Circuit connection state." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route circuit connection resource." + } + }, + "description": "Properties of the express route circuit connection." + }, + "ExpressRouteCircuitConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteCircuitConnectionPropertiesFormat", + "description": "Properties of the express route circuit connection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Express Route Circuit Connection in an ExpressRouteCircuitPeering resource." + }, + "ExpressRouteCircuitConnectionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitConnection" + }, + "description": "The global reach connection associated with Private Peering in an ExpressRoute Circuit." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListConnections API service call retrieves all global reach connections that belongs to a Private Peering for an ExpressRouteCircuit." + }, + "PeerExpressRouteCircuitConnectionPropertiesFormat": { + "properties": { + "expressRouteCircuitPeering": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to Express Route Circuit Private Peering Resource of the circuit." + }, + "peerExpressRouteCircuitPeering": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to Express Route Circuit Private Peering Resource of the peered circuit." + }, + "addressPrefix": { + "type": "string", + "description": "/29 IP address space to carve out Customer addresses for tunnels." + }, + "circuitConnectionStatus": { + "$ref": "#/definitions/CircuitConnectionStatus", + "description": "Express Route Circuit connection state." + }, + "connectionName": { + "type": "string", + "description": "The name of the express route circuit connection resource." + }, + "authResourceGuid": { + "type": "string", + "description": "The resource guid of the authorization used for the express route circuit connection." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the peer express route circuit connection resource." + } + }, + "description": "Properties of the peer express route circuit connection." + }, + "PeerExpressRouteCircuitConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PeerExpressRouteCircuitConnectionPropertiesFormat", + "description": "Properties of the peer express route circuit connection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Peer Express Route Circuit Connection in an ExpressRouteCircuitPeering resource." + }, + "PeerExpressRouteCircuitConnectionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PeerExpressRouteCircuitConnection" + }, + "description": "The global reach peer circuit connection associated with Private Peering in an ExpressRoute Circuit." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListPeeredConnections API service call retrieves all global reach peer circuit connections that belongs to a Private Peering for an ExpressRouteCircuit." + }, + "ExpressRouteCircuitSku": { + "properties": { + "name": { + "type": "string", + "description": "The name of the SKU." + }, + "tier": { + "type": "string", + "description": "The tier of the SKU.", + "enum": [ + "Standard", + "Premium", + "Basic", + "Local" + ], + "x-ms-enum": { + "name": "ExpressRouteCircuitSkuTier", + "modelAsString": true + } + }, + "family": { + "type": "string", + "description": "The family of the SKU.", + "enum": [ + "UnlimitedData", + "MeteredData" + ], + "x-ms-enum": { + "name": "ExpressRouteCircuitSkuFamily", + "modelAsString": true + } + } + }, + "description": "Contains SKU in an ExpressRouteCircuit." + }, + "ExpressRouteCircuitServiceProviderProperties": { + "properties": { + "serviceProviderName": { + "type": "string", + "description": "The serviceProviderName." + }, + "peeringLocation": { + "type": "string", + "description": "The peering location." + }, + "bandwidthInMbps": { + "type": "integer", + "format": "int32", + "description": "The BandwidthInMbps." + } + }, + "description": "Contains ServiceProviderProperties in an ExpressRouteCircuit." + }, + "ExpressRouteCircuitPropertiesFormat": { + "properties": { + "allowClassicOperations": { + "type": "boolean", + "description": "Allow classic operations." + }, + "circuitProvisioningState": { + "type": "string", + "description": "The CircuitProvisioningState state of the resource." + }, + "serviceProviderProvisioningState": { + "$ref": "#/definitions/ServiceProviderProvisioningState", + "description": "The ServiceProviderProvisioningState state of the resource." + }, + "authorizations": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitAuthorization" + }, + "description": "The list of authorizations." + }, + "peerings": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitPeering" + }, + "description": "The list of peerings." + }, + "serviceKey": { + "type": "string", + "description": "The ServiceKey." + }, + "serviceProviderNotes": { + "type": "string", + "description": "The ServiceProviderNotes." + }, + "serviceProviderProperties": { + "$ref": "#/definitions/ExpressRouteCircuitServiceProviderProperties", + "description": "The ServiceProviderProperties." + }, + "expressRoutePort": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the ExpressRoutePort resource when the circuit is provisioned on an ExpressRoutePort resource." + }, + "bandwidthInGbps": { + "type": "number", + "description": "The bandwidth of the circuit when the circuit is provisioned on an ExpressRoutePort resource." + }, + "stag": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The identifier of the circuit traffic. Outer tag for QinQ encapsulation." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route circuit resource." + }, + "gatewayManagerEtag": { + "type": "string", + "description": "The GatewayManager Etag." + }, + "globalReachEnabled": { + "type": "boolean", + "description": "Flag denoting global reach status." + } + }, + "description": "Properties of ExpressRouteCircuit." + }, + "ExpressRouteCircuit": { + "properties": { + "sku": { + "$ref": "#/definitions/ExpressRouteCircuitSku", + "description": "The SKU." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteCircuitPropertiesFormat", + "description": "Properties of the express route circuit." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "ExpressRouteCircuit resource." + }, + "ExpressRouteCircuitArpTable": { + "properties": { + "age": { + "type": "integer", + "format": "int32", + "description": "Entry age in minutes." + }, + "interface": { + "type": "string", + "description": "Interface address." + }, + "ipAddress": { + "type": "string", + "description": "The IP address." + }, + "macAddress": { + "type": "string", + "description": "The MAC address." + } + }, + "description": "The ARP table associated with the ExpressRouteCircuit." + }, + "ExpressRouteCircuitsArpTableListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitArpTable" + }, + "description": "A list of the ARP tables." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListArpTable associated with the Express Route Circuits API." + }, + "ExpressRouteCircuitRoutesTable": { + "properties": { + "network": { + "type": "string", + "description": "IP address of a network entity." + }, + "nextHop": { + "type": "string", + "description": "NextHop address." + }, + "locPrf": { + "type": "string", + "description": "Local preference value as set with the set local-preference route-map configuration command." + }, + "weight": { + "type": "integer", + "format": "int32", + "description": "Route Weight." + }, + "path": { + "type": "string", + "description": "Autonomous system paths to the destination network." + } + }, + "description": "The routes table associated with the ExpressRouteCircuit." + }, + "ExpressRouteCircuitsRoutesTableListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitRoutesTable" + }, + "description": "The list of routes table." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListRoutesTable associated with the Express Route Circuits API." + }, + "ExpressRouteCircuitRoutesTableSummary": { + "properties": { + "neighbor": { + "type": "string", + "description": "IP address of the neighbor." + }, + "v": { + "type": "integer", + "format": "int32", + "description": "BGP version number spoken to the neighbor." + }, + "as": { + "type": "integer", + "format": "int32", + "description": "Autonomous system number." + }, + "upDown": { + "type": "string", + "description": "The length of time that the BGP session has been in the Established state, or the current status if not in the Established state." + }, + "statePfxRcd": { + "type": "string", + "description": "Current state of the BGP session, and the number of prefixes that have been received from a neighbor or peer group." + } + }, + "description": "The routes table associated with the ExpressRouteCircuit." + }, + "ExpressRouteCircuitsRoutesTableSummaryListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitRoutesTableSummary" + }, + "description": "A list of the routes table." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListRoutesTable associated with the Express Route Circuits API." + }, + "ExpressRouteCircuitListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuit" + }, + "description": "A list of ExpressRouteCircuits in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListExpressRouteCircuit API service call." + }, + "ExpressRouteServiceProviderBandwidthsOffered": { + "properties": { + "offerName": { + "type": "string", + "description": "The OfferName." + }, + "valueInMbps": { + "type": "integer", + "format": "int32", + "description": "The ValueInMbps." + } + }, + "description": "Contains bandwidths offered in ExpressRouteServiceProvider resources." + }, + "ExpressRouteServiceProviderPropertiesFormat": { + "properties": { + "peeringLocations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of peering locations." + }, + "bandwidthsOffered": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteServiceProviderBandwidthsOffered" + }, + "description": "A list of bandwidths offered." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route service provider resource." + } + }, + "description": "Properties of ExpressRouteServiceProvider." + }, + "ExpressRouteServiceProvider": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteServiceProviderPropertiesFormat", + "description": "Properties of the express route service provider." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "A ExpressRouteResourceProvider object." + }, + "ExpressRouteServiceProviderListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteServiceProvider" + }, + "description": "A list of ExpressRouteResourceProvider resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListExpressRouteServiceProvider API service call." + }, + "CircuitConnectionStatus": { + "type": "string", + "readOnly": true, + "description": "Express Route Circuit connection state.", + "enum": [ + "Connected", + "Connecting", + "Disconnected" + ], + "x-ms-enum": { + "name": "CircuitConnectionStatus", + "modelAsString": true + } + }, + "ServiceProviderProvisioningState": { + "type": "string", + "description": "The ServiceProviderProvisioningState state of the resource.", + "enum": [ + "NotProvisioned", + "Provisioning", + "Provisioned", + "Deprovisioning" + ], + "x-ms-enum": { + "name": "ServiceProviderProvisioningState", + "modelAsString": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/expressRouteCrossConnection.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/expressRouteCrossConnection.json new file mode 100644 index 000000000000..f0d572c7a419 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/expressRouteCrossConnection.json @@ -0,0 +1,1008 @@ +{ + "swagger": "2.0", + "info": { + "title": "ExpressRouteCrossConnection REST APIs", + "description": "The Microsoft Azure ExpressRouteCrossConnection Resource Provider REST APIs describes the operations for the connectivity provider to provision ExpressRoute circuit, create and modify BGP peering entities and troubleshoot connectivity on customer's ExpressRoute circuit.", + "version": "2021-02-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/expressRouteCrossConnections": { + "get": { + "tags": [ + "ExpressRouteCrossConnections" + ], + "operationId": "ExpressRouteCrossConnections_List", + "description": "Retrieves all the ExpressRouteCrossConnections in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteCrossConnection resources. If there are no cross connection resources an empty list is returned.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRouteCrossConnectionList": { + "$ref": "./examples/ExpressRouteCrossConnectionList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections": { + "get": { + "tags": [ + "ExpressRouteCrossConnections" + ], + "operationId": "ExpressRouteCrossConnections_ListByResourceGroup", + "description": "Retrieves all the ExpressRouteCrossConnections in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful.The operation returns a list of ExpressRouteCrossConnection resources. If there are no cross connection resources an empty list is returned.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRouteCrossConnectionListByResourceGroup": { + "$ref": "./examples/ExpressRouteCrossConnectionListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}": { + "get": { + "tags": [ + "ExpressRouteCrossConnections" + ], + "operationId": "ExpressRouteCrossConnections_Get", + "description": "Gets details about the specified ExpressRouteCrossConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group (peering location of the circuit)." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection (service key of the circuit)." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCrossConnection resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetExpressRouteCrossConnection": { + "$ref": "./examples/ExpressRouteCrossConnectionGet.json" + } + } + }, + "put": { + "tags": [ + "ExpressRouteCrossConnections" + ], + "operationId": "ExpressRouteCrossConnections_CreateOrUpdate", + "description": "Update the specified ExpressRouteCrossConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnection" + }, + "description": "Parameters supplied to the update express route crossConnection operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCrossConnection resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "UpdateExpressRouteCrossConnection": { + "$ref": "./examples/ExpressRouteCrossConnectionUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "ExpressRouteCrossConnections" + ], + "operationId": "ExpressRouteCrossConnections_UpdateTags", + "description": "Updates an express route cross connection tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the cross connection." + }, + { + "name": "crossConnectionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update express route cross connection tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCrossConnection resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "UpdateExpressRouteCrossConnectionTags": { + "$ref": "./examples/ExpressRouteCrossConnectionUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings": { + "get": { + "tags": [ + "ExpressRouteCrossConnectionPeerings" + ], + "operationId": "ExpressRouteCrossConnectionPeerings_List", + "description": "Gets all peerings in a specified ExpressRouteCrossConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteCrossConnectionPeering resources.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeeringList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRouteCrossConnectionBgpPeeringList": { + "$ref": "./examples/ExpressRouteCrossConnectionBgpPeeringList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings/{peeringName}": { + "delete": { + "tags": [ + "ExpressRouteCrossConnectionPeerings" + ], + "operationId": "ExpressRouteCrossConnectionPeerings_Delete", + "description": "Deletes the specified peering from the ExpressRouteCrossConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DeleteExpressRouteCrossConnectionBgpPeering": { + "$ref": "./examples/ExpressRouteCrossConnectionBgpPeeringDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "ExpressRouteCrossConnectionPeerings" + ], + "operationId": "ExpressRouteCrossConnectionPeerings_Get", + "description": "Gets the specified peering for the ExpressRouteCrossConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCrossConnectionPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeering" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetExpressRouteCrossConnectionBgpPeering": { + "$ref": "./examples/ExpressRouteCrossConnectionBgpPeeringGet.json" + } + } + }, + "put": { + "tags": [ + "ExpressRouteCrossConnectionPeerings" + ], + "operationId": "ExpressRouteCrossConnectionPeerings_CreateOrUpdate", + "description": "Creates or updates a peering in the specified ExpressRouteCrossConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "peeringParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeering" + }, + "description": "Parameters supplied to the create or update ExpressRouteCrossConnection peering operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCrossConnectionPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeering" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ExpressRouteCrossConnectionPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeering" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRouteCrossConnectionBgpPeeringCreate": { + "$ref": "./examples/ExpressRouteCrossConnectionBgpPeeringCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings/{peeringName}/arpTables/{devicePath}": { + "post": { + "tags": [ + "ExpressRouteCrossConnectionArpTable" + ], + "operationId": "ExpressRouteCrossConnections_ListArpTable", + "description": "Gets the currently advertised ARP table associated with the express route cross connection in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "devicePath", + "in": "path", + "required": true, + "type": "string", + "description": "The path of the device." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCrossConnectionsArpTable resource.", + "schema": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRouteCircuitsArpTableListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetExpressRouteCrossConnectionsArpTable": { + "$ref": "./examples/ExpressRouteCrossConnectionsArpTable.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings/{peeringName}/routeTablesSummary/{devicePath}": { + "post": { + "tags": [ + "ExpressRouteCrossConnectionRouteTableSummary" + ], + "operationId": "ExpressRouteCrossConnections_ListRoutesTableSummary", + "description": "Gets the route table summary associated with the express route cross connection in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "devicePath", + "in": "path", + "required": true, + "type": "string", + "description": "The path of the device." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCrossConnectionsRouteTableSummary resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionsRoutesTableSummaryListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetExpressRouteCrossConnectionsRouteTableSummary": { + "$ref": "./examples/ExpressRouteCrossConnectionsRouteTableSummary.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings/{peeringName}/routeTables/{devicePath}": { + "post": { + "tags": [ + "ExpressRouteCrossConnectionRouteTable" + ], + "operationId": "ExpressRouteCrossConnections_ListRoutesTable", + "description": "Gets the currently advertised routes table associated with the express route cross connection in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "devicePath", + "in": "path", + "required": true, + "type": "string", + "description": "The path of the device." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCrossConnectionsRouteTable resource.", + "schema": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRouteCircuitsRoutesTableListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetExpressRouteCrossConnectionsRouteTable": { + "$ref": "./examples/ExpressRouteCrossConnectionsRouteTable.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + } + }, + "definitions": { + "ExpressRouteCrossConnectionRoutesTableSummary": { + "properties": { + "neighbor": { + "type": "string", + "description": "IP address of Neighbor router." + }, + "asn": { + "type": "integer", + "format": "int32", + "description": "Autonomous system number." + }, + "upDown": { + "type": "string", + "description": "The length of time that the BGP session has been in the Established state, or the current status if not in the Established state." + }, + "stateOrPrefixesReceived": { + "type": "string", + "description": "Current state of the BGP session, and the number of prefixes that have been received from a neighbor or peer group." + } + }, + "description": "The routes table associated with the ExpressRouteCircuit." + }, + "ExpressRouteCrossConnectionsRoutesTableSummaryListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCrossConnectionRoutesTableSummary" + }, + "description": "A list of the routes table." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListRoutesTable associated with the Express Route Cross Connections." + }, + "ExpressRouteCircuitReference": { + "properties": { + "id": { + "type": "string", + "description": "Corresponding Express Route Circuit Id." + } + }, + "description": "Reference to an express route circuit." + }, + "ExpressRouteCrossConnectionProperties": { + "properties": { + "primaryAzurePort": { + "readOnly": true, + "type": "string", + "description": "The name of the primary port." + }, + "secondaryAzurePort": { + "readOnly": true, + "type": "string", + "description": "The name of the secondary port." + }, + "sTag": { + "readOnly": true, + "type": "integer", + "description": "The identifier of the circuit traffic." + }, + "peeringLocation": { + "readOnly": true, + "type": "string", + "description": "The peering location of the ExpressRoute circuit." + }, + "bandwidthInMbps": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The circuit bandwidth In Mbps." + }, + "expressRouteCircuit": { + "$ref": "#/definitions/ExpressRouteCircuitReference", + "description": "The ExpressRouteCircuit." + }, + "serviceProviderProvisioningState": { + "$ref": "./expressRouteCircuit.json#/definitions/ServiceProviderProvisioningState", + "description": "The provisioning state of the circuit in the connectivity provider system." + }, + "serviceProviderNotes": { + "type": "string", + "description": "Additional read only notes set by the connectivity provider." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route cross connection resource." + }, + "peerings": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeering" + }, + "description": "The list of peerings." + } + }, + "description": "Properties of ExpressRouteCrossConnection." + }, + "ExpressRouteCrossConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteCrossConnectionProperties", + "description": "Properties of the express route cross connection." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "ExpressRouteCrossConnection resource." + }, + "ExpressRouteCrossConnectionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCrossConnection" + }, + "description": "A list of ExpressRouteCrossConnection resources." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListExpressRouteCrossConnection API service call." + }, + "ExpressRouteCrossConnectionPeeringProperties": { + "properties": { + "peeringType": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRoutePeeringType", + "description": "The peering type." + }, + "state": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRoutePeeringState", + "description": "The peering state." + }, + "azureASN": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The Azure ASN." + }, + "peerASN": { + "type": "integer", + "format": "int64", + "minimum": 1, + "maximum": 4294967295, + "description": "The peer ASN." + }, + "primaryPeerAddressPrefix": { + "type": "string", + "description": "The primary address prefix." + }, + "secondaryPeerAddressPrefix": { + "type": "string", + "description": "The secondary address prefix." + }, + "primaryAzurePort": { + "readOnly": true, + "type": "string", + "description": "The primary port." + }, + "secondaryAzurePort": { + "readOnly": true, + "type": "string", + "description": "The secondary port." + }, + "sharedKey": { + "type": "string", + "description": "The shared key." + }, + "vlanId": { + "type": "integer", + "format": "int32", + "description": "The VLAN ID." + }, + "microsoftPeeringConfig": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRouteCircuitPeeringConfig", + "description": "The Microsoft peering configuration." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route cross connection peering resource." + }, + "gatewayManagerEtag": { + "type": "string", + "description": "The GatewayManager Etag." + }, + "lastModifiedBy": { + "readOnly": true, + "type": "string", + "description": "Who was the last to modify the peering." + }, + "ipv6PeeringConfig": { + "$ref": "./expressRouteCircuit.json#/definitions/Ipv6ExpressRouteCircuitPeeringConfig", + "description": "The IPv6 peering configuration." + } + }, + "description": "Properties of express route cross connection peering." + }, + "ExpressRouteCrossConnectionPeering": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteCrossConnectionPeeringProperties", + "description": "Properties of the express route cross connection peering." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Peering in an ExpressRoute Cross Connection resource." + }, + "ExpressRouteCrossConnectionPeeringList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeering" + }, + "description": "The peerings in an express route cross connection." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListPeering API service call retrieves all peerings that belong to an ExpressRouteCrossConnection." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/expressRoutePort.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/expressRoutePort.json new file mode 100644 index 000000000000..98e6be1c89de --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/expressRoutePort.json @@ -0,0 +1,963 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2021-02-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/ExpressRoutePortsLocations": { + "get": { + "tags": [ + "ExpressRoutePortsLocations" + ], + "operationId": "ExpressRoutePortsLocations_List", + "description": "Retrieves all ExpressRoutePort peering locations. Does not return available bandwidths for each location. Available bandwidths can only be obtained when retrieving a specific peering location.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the list of all ExpressRoutePort peering locations.", + "schema": { + "$ref": "#/definitions/ExpressRoutePortsLocationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "ExpressRoutePortsLocationList": { + "$ref": "./examples/ExpressRoutePortsLocationList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/ExpressRoutePortsLocations/{locationName}": { + "get": { + "tags": [ + "ExpressRoutePortsLocations" + ], + "operationId": "ExpressRoutePortsLocations_Get", + "description": "Retrieves a single ExpressRoutePort peering location, including the list of available bandwidths available at said peering location.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "locationName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the requested ExpressRoutePort peering location." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the requested ExpressRoutePort peering location.", + "schema": { + "$ref": "#/definitions/ExpressRoutePortsLocation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRoutePortsLocationGet": { + "$ref": "./examples/ExpressRoutePortsLocationGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ExpressRoutePorts/{expressRoutePortName}": { + "delete": { + "tags": [ + "ExpressRoutePorts" + ], + "operationId": "ExpressRoutePorts_Delete", + "description": "Deletes the specified ExpressRoutePort resource.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRoutePortName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoutePort resource." + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "ExpressRoutePortDelete": { + "$ref": "./examples/ExpressRoutePortDelete.json" + } + } + }, + "get": { + "tags": [ + "ExpressRoutePorts" + ], + "operationId": "ExpressRoutePorts_Get", + "description": "Retrieves the requested ExpressRoutePort resource.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRoutePortName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of ExpressRoutePort." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the requested ExpressRoutePort resource.", + "schema": { + "$ref": "#/definitions/ExpressRoutePort" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRoutePortGet": { + "$ref": "./examples/ExpressRoutePortGet.json" + } + } + }, + "put": { + "tags": [ + "ExpressRoutePorts" + ], + "operationId": "ExpressRoutePorts_CreateOrUpdate", + "description": "Creates or updates the specified ExpressRoutePort resource.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRoutePortName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoutePort resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRoutePort" + }, + "description": "Parameters supplied to the create ExpressRoutePort operation." + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRoutePort resource.", + "schema": { + "$ref": "#/definitions/ExpressRoutePort" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ExpressRoutePort resource.", + "schema": { + "$ref": "#/definitions/ExpressRoutePort" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "ExpressRoutePortCreate": { + "$ref": "./examples/ExpressRoutePortCreate.json" + }, + "ExpressRoutePortUpdateLink": { + "$ref": "./examples/ExpressRoutePortUpdateLink.json" + } + } + }, + "patch": { + "tags": [ + "ExpressRoutePorts" + ], + "operationId": "ExpressRoutePorts_UpdateTags", + "description": "Update ExpressRoutePort tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRoutePortName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoutePort resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update ExpressRoutePort resource tags." + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRoutePort resource.", + "schema": { + "$ref": "#/definitions/ExpressRoutePort" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRoutePortUpdateTags": { + "$ref": "./examples/ExpressRoutePortUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ExpressRoutePorts": { + "get": { + "tags": [ + "ExpressRoutePorts" + ], + "operationId": "ExpressRoutePorts_ListByResourceGroup", + "description": "List all the ExpressRoutePort resources in the specified resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRoutePort resources. If there are no ExpressRoutePort resources then an empty list is returned.", + "schema": { + "$ref": "#/definitions/ExpressRoutePortListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "ExpressRoutePortListByResourceGroup": { + "$ref": "./examples/ExpressRoutePortListByResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/ExpressRoutePorts": { + "get": { + "tags": [ + "ExpressRoutePorts" + ], + "operationId": "ExpressRoutePorts_List", + "description": "List all the ExpressRoutePort resources in the specified subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRoutePort resources. If there are no ExpressRoutePort resources then an empty list is returned.", + "schema": { + "$ref": "#/definitions/ExpressRoutePortListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "ExpressRoutePortList": { + "$ref": "./examples/ExpressRoutePortList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ExpressRoutePorts/{expressRoutePortName}/links/{linkName}": { + "get": { + "tags": [ + "ExpressRouteLinks" + ], + "operationId": "ExpressRouteLinks_Get", + "description": "Retrieves the specified ExpressRouteLink resource.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRoutePortName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoutePort resource." + }, + { + "name": "linkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteLink resource." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the requested ExpressRouteLink resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteLink" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRouteLinkGet": { + "$ref": "./examples/ExpressRouteLinkGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ExpressRoutePorts/{expressRoutePortName}/links": { + "get": { + "tags": [ + "ExpressRouteLinks" + ], + "operationId": "ExpressRouteLinks_List", + "description": "Retrieve the ExpressRouteLink sub-resources of the specified ExpressRoutePort resource.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRoutePortName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoutePort resource." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteLink resources. If there are no ExpressRouteLink resources then an empty list is returned.", + "schema": { + "$ref": "#/definitions/ExpressRouteLinkListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "ExpressRouteLinkGet": { + "$ref": "./examples/ExpressRouteLinkList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRoutePorts/{expressRoutePortName}/generateLoa": { + "post": { + "tags": [ + "ExpressRoutePorts" + ], + "operationId": "ExpressRoutePorts_GenerateLOA", + "description": "Generate a letter of authorization for the requested ExpressRoutePort resource.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRoutePortName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of ExpressRoutePort." + }, + { + "name": "request", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenerateExpressRoutePortsLOARequest" + }, + "description": "Request parameters supplied to generate a letter of authorization." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the content as a base64 encoded string.", + "schema": { + "$ref": "#/definitions/GenerateExpressRoutePortsLOAResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GenerateExpressRoutePortLOA": { + "$ref": "./examples/GenerateExpressRoutePortsLOA.json" + } + } + } + } + }, + "definitions": { + "ExpressRoutePortsLocationBandwidths": { + "title": "ExpressRoutePorts Location Bandwidths", + "description": "Real-time inventory of available ExpressRoute port bandwidths.", + "properties": { + "offerName": { + "type": "string", + "readOnly": true, + "description": "Bandwidth descriptive name." + }, + "valueInGbps": { + "type": "integer", + "readOnly": true, + "description": "Bandwidth value in Gbps." + } + } + }, + "ExpressRoutePortsLocationPropertiesFormat": { + "title": "ExpressRoutePorts Location Properties", + "description": "Properties specific to ExpressRoutePorts peering location resources.", + "properties": { + "address": { + "type": "string", + "readOnly": true, + "description": "Address of peering location." + }, + "contact": { + "type": "string", + "readOnly": true, + "description": "Contact details of peering locations." + }, + "availableBandwidths": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRoutePortsLocationBandwidths" + }, + "description": "The inventory of available ExpressRoutePort bandwidths." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route port location resource." + } + } + }, + "ExpressRoutePortsLocation": { + "title": "ExpressRoutePorts Peering Location", + "description": "Definition of the ExpressRoutePorts peering location resource.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRoutePortsLocationPropertiesFormat", + "description": "ExpressRoutePort peering location properties." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ] + }, + "ExpressRoutePortsLocationListResult": { + "title": "ExpressRoutePorts Location List Result", + "description": "Response for ListExpressRoutePortsLocations API service call.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRoutePortsLocation" + }, + "description": "The list of all ExpressRoutePort peering locations." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + } + }, + "ExpressRouteLinkMacSecConfig": { + "description": "ExpressRouteLink Mac Security Configuration.", + "title": "Definition of ExpressRouteLink Mac Security configuration.", + "properties": { + "cknSecretIdentifier": { + "type": "string", + "description": "Keyvault Secret Identifier URL containing Mac security CKN key." + }, + "cakSecretIdentifier": { + "type": "string", + "description": "Keyvault Secret Identifier URL containing Mac security CAK key." + }, + "cipher": { + "type": "string", + "description": "Mac security cipher.", + "enum": [ + "GcmAes256", + "GcmAes128", + "GcmAesXpn128", + "GcmAesXpn256" + ], + "x-ms-enum": { + "name": "ExpressRouteLinkMacSecCipher", + "modelAsString": true + } + }, + "sciState": { + "type": "string", + "description": "Sci mode enabled/disabled.", + "enum": [ + "Disabled", + "Enabled" + ], + "x-ms-enum": { + "name": "ExpressRouteLinkMacSecSciState", + "modelAsString": true + } + } + } + }, + "ExpressRouteLinkPropertiesFormat": { + "title": "ExpressRouteLink Resource Properties", + "description": "Properties specific to ExpressRouteLink resources.", + "properties": { + "routerName": { + "readOnly": true, + "type": "string", + "description": "Name of Azure router associated with physical port." + }, + "interfaceName": { + "readOnly": true, + "type": "string", + "description": "Name of Azure router interface." + }, + "patchPanelId": { + "readOnly": true, + "type": "string", + "description": "Mapping between physical port to patch panel port." + }, + "rackId": { + "readOnly": true, + "type": "string", + "description": "Mapping of physical patch panel to rack." + }, + "connectorType": { + "readOnly": true, + "type": "string", + "description": "Physical fiber port type.", + "enum": [ + "LC", + "SC" + ], + "x-ms-enum": { + "name": "ExpressRouteLinkConnectorType", + "modelAsString": true + } + }, + "adminState": { + "type": "string", + "description": "Administrative state of the physical port.", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "ExpressRouteLinkAdminState", + "modelAsString": true + } + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route link resource." + }, + "macSecConfig": { + "$ref": "#/definitions/ExpressRouteLinkMacSecConfig", + "description": "MacSec configuration." + } + } + }, + "ExpressRouteLink": { + "title": "ExpressRouteLink", + "description": "ExpressRouteLink child resource definition.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteLinkPropertiesFormat", + "description": "ExpressRouteLink properties." + }, + "name": { + "type": "string", + "description": "Name of child port resource that is unique among child port resources of the parent." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ] + }, + "ExpressRouteLinkListResult": { + "title": "ExpressRouteLink List Result", + "description": "Response for ListExpressRouteLinks API service call.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteLink" + }, + "description": "The list of ExpressRouteLink sub-resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + } + }, + "ExpressRoutePortPropertiesFormat": { + "title": "ExpressRoutePort Properties", + "description": "Properties specific to ExpressRoutePort resources.", + "properties": { + "peeringLocation": { + "type": "string", + "description": "The name of the peering location that the ExpressRoutePort is mapped to physically." + }, + "bandwidthInGbps": { + "type": "integer", + "description": "Bandwidth of procured ports in Gbps." + }, + "provisionedBandwidthInGbps": { + "readOnly": true, + "type": "number", + "description": "Aggregate Gbps of associated circuit bandwidths." + }, + "mtu": { + "readOnly": true, + "type": "string", + "description": "Maximum transmission unit of the physical port pair(s)." + }, + "encapsulation": { + "type": "string", + "description": "Encapsulation method on physical ports.", + "enum": [ + "Dot1Q", + "QinQ" + ], + "x-ms-enum": { + "name": "ExpressRoutePortsEncapsulation", + "modelAsString": true + } + }, + "etherType": { + "readOnly": true, + "type": "string", + "description": "Ether type of the physical port." + }, + "allocationDate": { + "readOnly": true, + "type": "string", + "description": "Date of the physical port allocation to be used in Letter of Authorization." + }, + "links": { + "title": "ExpressRouteLink Sub-Resources", + "description": "The set of physical links of the ExpressRoutePort resource.", + "readOnly": false, + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteLink" + } + }, + "circuits": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Reference the ExpressRoute circuit(s) that are provisioned on this ExpressRoutePort resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route port resource." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the express route port resource." + } + } + }, + "ExpressRoutePort": { + "title": "ExpressRoute Port", + "description": "ExpressRoutePort resource definition.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRoutePortPropertiesFormat", + "description": "ExpressRoutePort properties." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "identity": { + "$ref": "./network.json#/definitions/ManagedServiceIdentity", + "description": "The identity of ExpressRoutePort, if configured." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ] + }, + "ExpressRoutePortListResult": { + "title": "ExpressRoute Port List Result", + "description": "Response for ListExpressRoutePorts API service call.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRoutePort" + }, + "description": "A list of ExpressRoutePort resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + } + }, + "GenerateExpressRoutePortsLOARequest": { + "description": "The customer name to be printed on a letter of authorization.", + "properties": { + "customerName": { + "type": "string", + "description": "The customer name." + } + }, + "required": [ + "customerName" + ] + }, + "GenerateExpressRoutePortsLOAResult": { + "description": "Response for GenerateExpressRoutePortsLOA API service call.", + "properties": { + "encodedContent": { + "type": "string", + "description": "The content as a base64 encoded string." + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/firewallPolicy.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/firewallPolicy.json new file mode 100644 index 000000000000..0cf425bc9e30 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/firewallPolicy.json @@ -0,0 +1,1407 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2021-02-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies/{firewallPolicyName}": { + "delete": { + "tags": [ + "FirewallPolicies" + ], + "operationId": "FirewallPolicies_Delete", + "description": "Deletes the specified Firewall Policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "firewallPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Firewall Policy." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete Firewall Policy": { + "$ref": "./examples/FirewallPolicyDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "FirewallPolicies" + ], + "operationId": "FirewallPolicies_Get", + "description": "Gets the specified Firewall Policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "firewallPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Firewall Policy." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a Firewall Policy resource.", + "schema": { + "$ref": "#/definitions/FirewallPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get FirewallPolicy": { + "$ref": "./examples/FirewallPolicyGet.json" + } + } + }, + "put": { + "tags": [ + "FirewallPolicies" + ], + "operationId": "FirewallPolicies_CreateOrUpdate", + "description": "Creates or updates the specified Firewall Policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "firewallPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Firewall Policy." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FirewallPolicy" + }, + "description": "Parameters supplied to the create or update Firewall Policy operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Request received successfully. The operation returns the resulting FirewallPolicy resource.", + "schema": { + "$ref": "#/definitions/FirewallPolicy" + } + }, + "200": { + "description": "Request successful. The operation returns the resulting FirewallPolicy resource.", + "schema": { + "$ref": "#/definitions/FirewallPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create FirewallPolicy": { + "$ref": "./examples/FirewallPolicyPut.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies": { + "get": { + "tags": [ + "FirewallPolicies" + ], + "operationId": "FirewallPolicies_List", + "description": "Lists all Firewall Policies in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of FirewallPolicy resources.", + "schema": { + "$ref": "#/definitions/FirewallPolicyListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Firewall Policies for a given resource group": { + "$ref": "./examples/FirewallPolicyListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/firewallPolicies": { + "get": { + "tags": [ + "FirewallPolicies" + ], + "operationId": "FirewallPolicies_ListAll", + "description": "Gets all the Firewall Policies in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of FirewallPolicy resources.", + "schema": { + "$ref": "#/definitions/FirewallPolicyListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Firewall Policies for a given subscription": { + "$ref": "./examples/FirewallPolicyListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies/{firewallPolicyName}/ruleCollectionGroups/{ruleCollectionGroupName}": { + "delete": { + "tags": [ + "FirewallPolicyRuleCollectionGroups" + ], + "operationId": "FirewallPolicyRuleCollectionGroups_Delete", + "description": "Deletes the specified FirewallPolicyRuleCollectionGroup.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "firewallPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Firewall Policy." + }, + { + "name": "ruleCollectionGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the FirewallPolicyRuleCollectionGroup." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete FirewallPolicyRuleCollectionGroup": { + "$ref": "./examples/FirewallPolicyRuleCollectionGroupDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "FirewallPolicyRuleCollectionGroups" + ], + "operationId": "FirewallPolicyRuleCollectionGroups_Get", + "description": "Gets the specified FirewallPolicyRuleCollectionGroup.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "firewallPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Firewall Policy." + }, + { + "name": "ruleCollectionGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the FirewallPolicyRuleCollectionGroup." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a FirewallPolicyRuleCollectionGroup resource.", + "schema": { + "$ref": "#/definitions/FirewallPolicyRuleCollectionGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get FirewallPolicyRuleCollectionGroup": { + "$ref": "./examples/FirewallPolicyRuleCollectionGroupGet.json" + }, + "Get FirewallPolicyRuleCollectionGroup With IpGroups": { + "$ref": "./examples/FirewallPolicyRuleCollectionGroupWithIpGroupsGet.json" + }, + "Get FirewallPolicyNatRuleCollectionGroup": { + "$ref": "./examples/FirewallPolicyNatRuleCollectionGroupGet.json" + }, + "Get FirewallPolicyRuleCollectionGroup With Web Categories": { + "$ref": "./examples/FirewallPolicyRuleCollectionGroupWithWebCategoriesGet.json" + } + } + }, + "put": { + "tags": [ + "FirewallPolicyRuleCollectionGroups" + ], + "operationId": "FirewallPolicyRuleCollectionGroups_CreateOrUpdate", + "description": "Creates or updates the specified FirewallPolicyRuleCollectionGroup.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "firewallPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Firewall Policy." + }, + { + "name": "ruleCollectionGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the FirewallPolicyRuleCollectionGroup." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FirewallPolicyRuleCollectionGroup" + }, + "description": "Parameters supplied to the create or update FirewallPolicyRuleCollectionGroup operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Request received successfully. The operation returns the resulting FirewallPolicyRuleCollectionGroup resource.", + "schema": { + "$ref": "#/definitions/FirewallPolicyRuleCollectionGroup" + } + }, + "200": { + "description": "Request successful. The operation returns the resulting FirewallPolicyRuleCollectionGroup resource.", + "schema": { + "$ref": "#/definitions/FirewallPolicyRuleCollectionGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create FirewallPolicyRuleCollectionGroup": { + "$ref": "./examples/FirewallPolicyRuleCollectionGroupPut.json" + }, + "Create FirewallPolicyRuleCollectionGroup With IpGroups": { + "$ref": "./examples/FirewallPolicyRuleCollectionGroupWithIpGroupsPut.json" + }, + "Create FirewallPolicyNatRuleCollectionGroup": { + "$ref": "./examples/FirewallPolicyNatRuleCollectionGroupPut.json" + }, + "Create FirewallPolicyRuleCollectionGroup With Web Categories": { + "$ref": "./examples/FirewallPolicyRuleCollectionGroupWithWebCategoriesPut.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies/{firewallPolicyName}/ruleCollectionGroups": { + "get": { + "tags": [ + "FirewallPolicyRuleCollectionGroups" + ], + "operationId": "FirewallPolicyRuleCollectionGroups_List", + "description": "Lists all FirewallPolicyRuleCollectionGroups in a FirewallPolicy resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "firewallPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Firewall Policy." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of FirewallPolicyRuleCollectionGroup resources.", + "schema": { + "$ref": "#/definitions/FirewallPolicyRuleCollectionGroupListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all FirewallPolicyRuleCollectionGroups for a given FirewallPolicy": { + "$ref": "./examples/FirewallPolicyRuleCollectionGroupList.json" + }, + "List all FirewallPolicyRuleCollectionGroups with IpGroups for a given FirewallPolicy": { + "$ref": "./examples/FirewallPolicyRuleCollectionGroupWithIpGroupsList.json" + }, + "List all FirewallPolicyRuleCollectionGroup With Web Categories": { + "$ref": "./examples/FirewallPolicyRuleCollectionGroupWithWebCategoriesList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "FirewallPolicy": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/FirewallPolicyPropertiesFormat", + "description": "Properties of the firewall policy." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "identity": { + "$ref": "./network.json#/definitions/ManagedServiceIdentity", + "description": "The identity of the firewall policy." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "FirewallPolicy Resource." + }, + "FirewallPolicyPropertiesFormat": { + "properties": { + "ruleCollectionGroups": { + "type": "array", + "readOnly": true, + "description": "List of references to FirewallPolicyRuleCollectionGroups.", + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the firewall policy resource." + }, + "basePolicy": { + "readOnly": false, + "$ref": "./network.json#/definitions/SubResource", + "description": "The parent firewall policy from which rules are inherited." + }, + "firewalls": { + "type": "array", + "readOnly": true, + "description": "List of references to Azure Firewalls that this Firewall Policy is associated with.", + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + }, + "childPolicies": { + "type": "array", + "readOnly": true, + "description": "List of references to Child Firewall Policies.", + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + }, + "threatIntelMode": { + "description": "The operation mode for Threat Intelligence.", + "$ref": "./azureFirewall.json#/definitions/AzureFirewallThreatIntelMode" + }, + "threatIntelWhitelist": { + "description": "ThreatIntel Whitelist for Firewall Policy.", + "$ref": "#/definitions/FirewallPolicyThreatIntelWhitelist" + }, + "insights": { + "description": "Insights on Firewall Policy.", + "$ref": "#/definitions/FirewallPolicyInsights" + }, + "snat": { + "description": "The private IP addresses/IP ranges to which traffic will not be SNAT.", + "$ref": "#/definitions/FirewallPolicySNAT" + }, + "dnsSettings": { + "description": "DNS Proxy Settings definition.", + "$ref": "#/definitions/DnsSettings" + }, + "intrusionDetection": { + "description": "The configuration for Intrusion detection.", + "$ref": "#/definitions/FirewallPolicyIntrusionDetection" + }, + "transportSecurity": { + "description": "TLS Configuration definition.", + "$ref": "#/definitions/FirewallPolicyTransportSecurity" + }, + "sku": { + "description": "The Firewall Policy SKU.", + "$ref": "#/definitions/FirewallPolicySku" + } + }, + "description": "Firewall Policy definition." + }, + "FirewallPolicyRuleCollectionGroup": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/FirewallPolicyRuleCollectionGroupProperties", + "description": "The properties of the firewall policy rule collection group." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Rule Group type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Rule Collection Group resource." + }, + "FirewallPolicyRuleCollectionGroupProperties": { + "properties": { + "priority": { + "type": "integer", + "format": "int32", + "maximum": 65000, + "exclusiveMaximum": false, + "minimum": 100, + "exclusiveMinimum": false, + "description": "Priority of the Firewall Policy Rule Collection Group resource." + }, + "ruleCollections": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicyRuleCollection" + }, + "description": "Group of Firewall Policy rule collections." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the firewall policy rule collection group resource." + } + }, + "description": "Properties of the rule collection group." + }, + "FirewallPolicyRuleCollection": { + "description": "Properties of the rule collection.", + "discriminator": "ruleCollectionType", + "required": [ + "ruleCollectionType" + ], + "properties": { + "ruleCollectionType": { + "type": "string", + "description": "The type of the rule collection.", + "enum": [ + "FirewallPolicyNatRuleCollection", + "FirewallPolicyFilterRuleCollection" + ], + "x-ms-enum": { + "name": "FirewallPolicyRuleCollectionType", + "modelAsString": true + } + }, + "name": { + "type": "string", + "description": "The name of the rule collection." + }, + "priority": { + "type": "integer", + "format": "int32", + "maximum": 65000, + "exclusiveMaximum": false, + "minimum": 100, + "exclusiveMinimum": false, + "description": "Priority of the Firewall Policy Rule Collection resource." + } + } + }, + "FirewallPolicyNatRuleCollection": { + "properties": { + "action": { + "$ref": "#/definitions/FirewallPolicyNatRuleCollectionAction", + "description": "The action type of a Nat rule collection." + }, + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicyRule" + }, + "description": "List of rules included in a rule collection." + } + }, + "allOf": [ + { + "$ref": "#/definitions/FirewallPolicyRuleCollection" + } + ], + "x-ms-discriminator-value": "FirewallPolicyNatRuleCollection", + "description": "Firewall Policy NAT Rule Collection." + }, + "FirewallPolicyFilterRuleCollection": { + "properties": { + "action": { + "$ref": "#/definitions/FirewallPolicyFilterRuleCollectionAction", + "description": "The action type of a Filter rule collection." + }, + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicyRule" + }, + "description": "List of rules included in a rule collection." + } + }, + "allOf": [ + { + "$ref": "#/definitions/FirewallPolicyRuleCollection" + } + ], + "x-ms-discriminator-value": "FirewallPolicyFilterRuleCollection", + "description": "Firewall Policy Filter Rule Collection." + }, + "FirewallPolicyRule": { + "description": "Properties of a rule.", + "discriminator": "ruleType", + "required": [ + "ruleType" + ], + "properties": { + "name": { + "type": "string", + "description": "Name of the rule." + }, + "description": { + "type": "string", + "description": "Description of the rule." + }, + "ruleType": { + "type": "string", + "description": "Rule Type.", + "enum": [ + "ApplicationRule", + "NetworkRule", + "NatRule" + ], + "x-ms-enum": { + "name": "FirewallPolicyRuleType", + "modelAsString": true + } + } + } + }, + "ApplicationRule": { + "x-ms-discriminator-value": "ApplicationRule", + "allOf": [ + { + "$ref": "#/definitions/FirewallPolicyRule" + } + ], + "properties": { + "sourceAddresses": { + "type": "array", + "description": "List of source IP addresses for this rule.", + "items": { + "type": "string" + } + }, + "destinationAddresses": { + "type": "array", + "description": "List of destination IP addresses or Service Tags.", + "items": { + "type": "string" + } + }, + "protocols": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicyRuleApplicationProtocol" + }, + "description": "Array of Application Protocols." + }, + "targetFqdns": { + "type": "array", + "description": "List of FQDNs for this rule.", + "items": { + "type": "string" + } + }, + "targetUrls": { + "type": "array", + "description": "List of Urls for this rule condition.", + "items": { + "type": "string" + } + }, + "fqdnTags": { + "type": "array", + "description": "List of FQDN Tags for this rule.", + "items": { + "type": "string" + } + }, + "sourceIpGroups": { + "type": "array", + "description": "List of source IpGroups for this rule.", + "items": { + "type": "string" + } + }, + "terminateTLS": { + "type": "boolean", + "description": "Terminate TLS connections for this rule." + }, + "webCategories": { + "type": "array", + "description": "List of destination azure web categories.", + "items": { + "type": "string" + } + } + }, + "description": "Rule of type application." + }, + "NatRule": { + "description": "Rule of type nat.", + "x-ms-discriminator-value": "NatRule", + "allOf": [ + { + "$ref": "#/definitions/FirewallPolicyRule" + } + ], + "properties": { + "ipProtocols": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicyRuleNetworkProtocol" + }, + "description": "Array of FirewallPolicyRuleNetworkProtocols." + }, + "sourceAddresses": { + "type": "array", + "description": "List of source IP addresses for this rule.", + "items": { + "type": "string" + } + }, + "destinationAddresses": { + "type": "array", + "description": "List of destination IP addresses or Service Tags.", + "items": { + "type": "string" + } + }, + "destinationPorts": { + "type": "array", + "description": "List of destination ports.", + "items": { + "type": "string" + } + }, + "translatedAddress": { + "type": "string", + "description": "The translated address for this NAT rule." + }, + "translatedPort": { + "type": "string", + "description": "The translated port for this NAT rule." + }, + "sourceIpGroups": { + "type": "array", + "description": "List of source IpGroups for this rule.", + "items": { + "type": "string" + } + }, + "translatedFqdn": { + "type": "string", + "description": "The translated FQDN for this NAT rule." + } + } + }, + "NetworkRule": { + "description": "Rule of type network.", + "x-ms-discriminator-value": "NetworkRule", + "allOf": [ + { + "$ref": "#/definitions/FirewallPolicyRule" + } + ], + "properties": { + "ipProtocols": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicyRuleNetworkProtocol" + }, + "description": "Array of FirewallPolicyRuleNetworkProtocols." + }, + "sourceAddresses": { + "type": "array", + "description": "List of source IP addresses for this rule.", + "items": { + "type": "string" + } + }, + "destinationAddresses": { + "type": "array", + "description": "List of destination IP addresses or Service Tags.", + "items": { + "type": "string" + } + }, + "destinationPorts": { + "type": "array", + "description": "List of destination ports.", + "items": { + "type": "string" + } + }, + "sourceIpGroups": { + "type": "array", + "description": "List of source IpGroups for this rule.", + "items": { + "type": "string" + } + }, + "destinationIpGroups": { + "type": "array", + "description": "List of destination IpGroups for this rule.", + "items": { + "type": "string" + } + }, + "destinationFqdns": { + "type": "array", + "description": "List of destination FQDNs.", + "items": { + "type": "string" + } + } + } + }, + "FirewallPolicyRuleApplicationProtocol": { + "properties": { + "protocolType": { + "description": "Protocol type.", + "$ref": "#/definitions/FirewallPolicyRuleApplicationProtocolType" + }, + "port": { + "type": "integer", + "format": "int32", + "maximum": 64000, + "exclusiveMaximum": false, + "minimum": 0, + "exclusiveMinimum": false, + "description": "Port number for the protocol, cannot be greater than 64000." + } + }, + "description": "Properties of the application rule protocol." + }, + "FirewallPolicyRuleApplicationProtocolType": { + "type": "string", + "description": "The application protocol type of a Rule.", + "enum": [ + "Http", + "Https" + ], + "x-ms-enum": { + "name": "FirewallPolicyRuleApplicationProtocolType", + "modelAsString": true + } + }, + "FirewallPolicyNatRuleCollectionActionType": { + "type": "string", + "description": "The action type of a rule.", + "enum": [ + "DNAT" + ], + "x-ms-enum": { + "name": "FirewallPolicyNatRuleCollectionActionType", + "modelAsString": true + } + }, + "FirewallPolicyNatRuleCollectionAction": { + "properties": { + "type": { + "description": "The type of action.", + "$ref": "#/definitions/FirewallPolicyNatRuleCollectionActionType" + } + }, + "description": "Properties of the FirewallPolicyNatRuleCollectionAction." + }, + "FirewallPolicyFilterRuleCollectionActionType": { + "type": "string", + "description": "The action type of a rule.", + "enum": [ + "Allow", + "Deny" + ], + "x-ms-enum": { + "name": "FirewallPolicyFilterRuleCollectionActionType", + "modelAsString": true + } + }, + "FirewallPolicyFilterRuleCollectionAction": { + "properties": { + "type": { + "description": "The type of action.", + "$ref": "#/definitions/FirewallPolicyFilterRuleCollectionActionType" + } + }, + "description": "Properties of the FirewallPolicyFilterRuleCollectionAction." + }, + "FirewallPolicyRuleNetworkProtocol": { + "type": "string", + "description": "The Network protocol of a Rule.", + "enum": [ + "TCP", + "UDP", + "Any", + "ICMP" + ], + "x-ms-enum": { + "name": "FirewallPolicyRuleNetworkProtocol", + "modelAsString": true + } + }, + "FirewallPolicyListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicy" + }, + "description": "List of Firewall Policies in a resource group." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListFirewallPolicies API service call." + }, + "FirewallPolicyRuleCollectionGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicyRuleCollectionGroup" + }, + "description": "List of FirewallPolicyRuleCollectionGroups in a FirewallPolicy." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListFirewallPolicyRuleCollectionGroups API service call." + }, + "FirewallPolicyThreatIntelWhitelist": { + "description": "ThreatIntel Whitelist for Firewall Policy.", + "x-ms-discriminator-value": "FirewallPolicyThreatIntelWhitelist", + "properties": { + "ipAddresses": { + "type": "array", + "description": "List of IP addresses for the ThreatIntel Whitelist.", + "items": { + "type": "string" + } + }, + "fqdns": { + "type": "array", + "description": "List of FQDNs for the ThreatIntel Whitelist.", + "items": { + "type": "string" + } + } + } + }, + "FirewallPolicyInsights": { + "description": "Firewall Policy Insights.", + "x-ms-discriminator-value": "FirewallPolicyInsights", + "properties": { + "isEnabled": { + "type": "boolean", + "description": "A flag to indicate if the insights are enabled on the policy." + }, + "retentionDays": { + "type": "integer", + "format": "int32", + "description": "Number of days the insights should be enabled on the policy." + }, + "logAnalyticsResources": { + "description": "Workspaces needed to configure the Firewall Policy Insights.", + "$ref": "#/definitions/FirewallPolicyLogAnalyticsResources" + } + } + }, + "FirewallPolicySNAT": { + "description": "The private IP addresses/IP ranges to which traffic will not be SNAT.", + "x-ms-discriminator-value": "FirewallPolicySNAT", + "properties": { + "privateRanges": { + "type": "array", + "description": "List of private IP addresses/IP address ranges to not be SNAT.", + "items": { + "type": "string" + } + } + } + }, + "DnsSettings": { + "description": "DNS Proxy Settings in Firewall Policy.", + "x-ms-discriminator-value": "DnsSettings", + "properties": { + "servers": { + "type": "array", + "description": "List of Custom DNS Servers.", + "items": { + "type": "string" + } + }, + "enableProxy": { + "type": "boolean", + "description": "Enable DNS Proxy on Firewalls attached to the Firewall Policy." + }, + "requireProxyForNetworkRules": { + "type": "boolean", + "description": "FQDNs in Network Rules are supported when set to true.", + "x-nullable": true + } + } + }, + "FirewallPolicyIntrusionDetection": { + "description": "Configuration for intrusion detection mode and rules.", + "properties": { + "mode": { + "$ref": "#/definitions/FirewallPolicyIntrusionDetectionStateOptions", + "description": "Intrusion detection general state." + }, + "configuration": { + "$ref": "#/definitions/FirewallPolicyIntrusionDetectionConfiguration", + "description": "Intrusion detection configuration properties." + } + } + }, + "FirewallPolicyIntrusionDetectionStateOptions": { + "type": "string", + "description": "Possible state values.", + "enum": [ + "Off", + "Alert", + "Deny" + ], + "x-ms-enum": { + "name": "FirewallPolicyIntrusionDetectionStateType", + "modelAsString": true + } + }, + "FirewallPolicyIntrusionDetectionConfiguration": { + "description": "The operation for configuring intrusion detection.", + "properties": { + "signatureOverrides": { + "type": "array", + "description": "List of specific signatures states.", + "items": { + "$ref": "#/definitions/FirewallPolicyIntrusionDetectionSignatureSpecification" + } + }, + "bypassTrafficSettings": { + "type": "array", + "description": "List of rules for traffic to bypass.", + "items": { + "$ref": "#/definitions/FirewallPolicyIntrusionDetectionBypassTrafficSpecifications" + } + } + } + }, + "FirewallPolicyIntrusionDetectionSignatureSpecification": { + "properties": { + "id": { + "type": "string", + "description": "Signature id." + }, + "mode": { + "$ref": "#/definitions/FirewallPolicyIntrusionDetectionStateOptions", + "description": "The signature state." + } + }, + "description": "Intrusion detection signatures specification states." + }, + "FirewallPolicyIntrusionDetectionBypassTrafficSpecifications": { + "properties": { + "name": { + "type": "string", + "description": "Name of the bypass traffic rule." + }, + "description": { + "type": "string", + "description": "Description of the bypass traffic rule." + }, + "protocol": { + "type": "string", + "$ref": "#/definitions/FirewallPolicyIntrusionDetectionBypassTrafficProtocol", + "description": "The rule bypass protocol." + }, + "sourceAddresses": { + "type": "array", + "description": "List of source IP addresses or ranges for this rule.", + "items": { + "type": "string" + } + }, + "destinationAddresses": { + "type": "array", + "description": "List of destination IP addresses or ranges for this rule.", + "items": { + "type": "string" + } + }, + "destinationPorts": { + "type": "array", + "description": "List of destination ports or ranges.", + "items": { + "type": "string" + } + }, + "sourceIpGroups": { + "type": "array", + "description": "List of source IpGroups for this rule.", + "items": { + "type": "string" + } + }, + "destinationIpGroups": { + "type": "array", + "description": "List of destination IpGroups for this rule.", + "items": { + "type": "string" + } + } + }, + "description": "Intrusion detection bypass traffic specification." + }, + "FirewallPolicyIntrusionDetectionBypassTrafficProtocol": { + "type": "string", + "description": "Possible intrusion detection bypass traffic protocols.", + "enum": [ + "TCP", + "UDP", + "ICMP", + "ANY" + ], + "x-ms-enum": { + "name": "FirewallPolicyIntrusionDetectionProtocol", + "modelAsString": true + } + }, + "FirewallPolicyTransportSecurity": { + "properties": { + "certificateAuthority": { + "$ref": "#/definitions/FirewallPolicyCertificateAuthority", + "description": "The CA used for intermediate CA generation." + } + }, + "description": "Configuration needed to perform TLS termination & initiation." + }, + "FirewallPolicyCertificateAuthority": { + "properties": { + "keyVaultSecretId": { + "type": "string", + "description": "Secret Id of (base-64 encoded unencrypted pfx) 'Secret' or 'Certificate' object stored in KeyVault." + }, + "name": { + "type": "string", + "description": "Name of the CA certificate." + } + }, + "description": "Trusted Root certificates properties for tls." + }, + "FirewallPolicySku": { + "properties": { + "tier": { + "type": "string", + "description": "Tier of Firewall Policy.", + "enum": [ + "Standard", + "Premium" + ], + "x-ms-enum": { + "name": "FirewallPolicySkuTier", + "modelAsString": true + } + } + }, + "description": "SKU of Firewall policy." + }, + "FirewallPolicyLogAnalyticsResources": { + "description": "Log Analytics Resources for Firewall Policy Insights.", + "x-ms-discriminator-value": "FirewallPolicyLogAnalyticsResources", + "properties": { + "workspaces": { + "type": "array", + "description": "List of workspaces for Firewall Policy Insights.", + "items": { + "$ref": "#/definitions/FirewallPolicyLogAnalyticsWorkspace" + } + }, + "defaultWorkspaceId": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The default workspace Id for Firewall Policy Insights." + } + } + }, + "FirewallPolicyLogAnalyticsWorkspace": { + "description": "Log Analytics Workspace for Firewall Policy Insights.", + "x-ms-discriminator-value": "FirewallPolicyLogAnalyticsWorkspace", + "properties": { + "region": { + "type": "string", + "description": "Region to configure the Workspace." + }, + "workspaceId": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The workspace Id for Firewall Policy Insights." + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/ipAllocation.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/ipAllocation.json new file mode 100644 index 000000000000..50d49f990e9d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/ipAllocation.json @@ -0,0 +1,454 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2021-02-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/IpAllocations/{ipAllocationName}": { + "delete": { + "tags": [ + "IpAllocations" + ], + "operationId": "IpAllocations_Delete", + "description": "Deletes the specified IpAllocation.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ipAllocationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the IpAllocation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete IpAllocation": { + "$ref": "./examples/IpAllocationDelete.json" + } + } + }, + "get": { + "tags": [ + "IpAllocations" + ], + "operationId": "IpAllocations_Get", + "description": "Gets the specified IpAllocation by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ipAllocationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the IpAllocation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting IpAllocation resource.", + "schema": { + "$ref": "#/definitions/IpAllocation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get IpAllocation": { + "$ref": "./examples/IpAllocationGet.json" + } + } + }, + "put": { + "tags": [ + "IpAllocations" + ], + "operationId": "IpAllocations_CreateOrUpdate", + "description": "Creates or updates an IpAllocation in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ipAllocationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the IpAllocation." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/IpAllocation" + }, + "description": "Parameters supplied to the create or update virtual network operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting IpAllocation resource.", + "schema": { + "$ref": "#/definitions/IpAllocation" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting IpAllocation resource.", + "schema": { + "$ref": "#/definitions/IpAllocation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create IpAllocation": { + "$ref": "./examples/IpAllocationCreate.json" + } + } + }, + "patch": { + "tags": [ + "IpAllocations" + ], + "operationId": "IpAllocations_UpdateTags", + "description": "Updates a IpAllocation tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ipAllocationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the IpAllocation." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update IpAllocation tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting IpAllocation resource.", + "schema": { + "$ref": "#/definitions/IpAllocation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update virtual network tags": { + "$ref": "./examples/IpAllocationUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/IpAllocations": { + "get": { + "tags": [ + "IpAllocations" + ], + "operationId": "IpAllocations_List", + "description": "Gets all IpAllocations in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of IpAllocation resources.", + "schema": { + "$ref": "#/definitions/IpAllocationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all IpAllocations": { + "$ref": "./examples/IpAllocationList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/IpAllocations": { + "get": { + "tags": [ + "IpAllocations" + ], + "operationId": "IpAllocations_ListByResourceGroup", + "description": "Gets all IpAllocations in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of IpAllocation resources.", + "schema": { + "$ref": "#/definitions/IpAllocationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List IpAllocations in resource group": { + "$ref": "./examples/IpAllocationListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "IpAllocationPropertiesFormat": { + "properties": { + "subnet": { + "readOnly": true, + "$ref": "./network.json#/definitions/SubResource", + "description": "The Subnet that using the prefix of this IpAllocation resource." + }, + "virtualNetwork": { + "readOnly": true, + "$ref": "./network.json#/definitions/SubResource", + "description": "The VirtualNetwork that using the prefix of this IpAllocation resource." + }, + "type": { + "$ref": "#/definitions/IpAllocationType", + "description": "The type for the IpAllocation." + }, + "prefix": { + "type": "string", + "description": "The address prefix for the IpAllocation." + }, + "prefixLength": { + "type": "integer", + "x-nullable": true, + "default": 0, + "description": "The address prefix length for the IpAllocation." + }, + "prefixType": { + "$ref": "./network.json#/definitions/IPVersion", + "default": null, + "description": "The address prefix Type for the IpAllocation." + }, + "ipamAllocationId": { + "type": "string", + "description": "The IPAM allocation ID." + }, + "allocationTags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "IpAllocation tags." + } + }, + "description": "Properties of the IpAllocation." + }, + "IpAllocation": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/IpAllocationPropertiesFormat", + "description": "Properties of the IpAllocation." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "IpAllocation resource." + }, + "IpAllocationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/IpAllocation" + }, + "description": "A list of IpAllocation resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListIpAllocations API service call." + }, + "IpAllocationType": { + "type": "string", + "description": "IpAllocation type.", + "enum": [ + "Undefined", + "Hypernet" + ], + "x-ms-enum": { + "name": "IpAllocationType", + "modelAsString": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/ipGroups.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/ipGroups.json new file mode 100644 index 000000000000..37f64a00f651 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/ipGroups.json @@ -0,0 +1,430 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2021-02-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ipGroups/{ipGroupsName}": { + "get": { + "tags": [ + "IpGroups" + ], + "operationId": "IpGroups_Get", + "description": "Gets the specified ipGroups.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ipGroupsName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ipGroups." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands resourceIds (of Firewalls/Network Security Groups etc.) back referenced by the IpGroups resource." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting IpGroups resource.", + "schema": { + "$ref": "#/definitions/IpGroup" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Get_IpGroups": { + "$ref": "./examples/IpGroupsGet.json" + } + } + }, + "put": { + "tags": [ + "IpGroups" + ], + "operationId": "IpGroups_CreateOrUpdate", + "description": "Creates or updates an ipGroups in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ipGroupsName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ipGroups." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/IpGroup" + }, + "description": "Parameters supplied to the create or update IpGroups operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ipGroups resource.", + "schema": { + "$ref": "#/definitions/IpGroup" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ipGroups resource.", + "schema": { + "$ref": "#/definitions/IpGroup" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "CreateOrUpdate_IpGroups": { + "$ref": "./examples/IpGroupsCreate.json" + } + } + }, + "patch": { + "tags": [ + "IpGroups" + ], + "operationId": "IpGroups_UpdateGroups", + "description": "Updates tags of an IpGroups resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ipGroupsName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ipGroups." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to the update ipGroups operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ipGroups resource.", + "schema": { + "$ref": "#/definitions/IpGroup" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Update_IpGroups": { + "$ref": "./examples/IpGroupsUpdateTags.json" + } + } + }, + "delete": { + "tags": [ + "IpGroups" + ], + "operationId": "IpGroups_Delete", + "description": "Deletes the specified ipGroups.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ipGroupsName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ipGroups." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Delete_IpGroups": { + "$ref": "./examples/IpGroupsDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ipGroups": { + "get": { + "tags": [ + "IpGroups" + ], + "operationId": "IpGroups_ListByResourceGroup", + "description": "Gets all IpGroups in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ipGroups resources.", + "schema": { + "$ref": "#/definitions/IpGroupListResult" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "ListByResourceGroup_IpGroups": { + "$ref": "./examples/IpGroupsListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/ipGroups": { + "get": { + "tags": [ + "IpGroups" + ], + "operationId": "IpGroups_List", + "description": "Gets all IpGroups in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ipGroups resources.", + "schema": { + "$ref": "#/definitions/IpGroupListResult" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List_IpGroups": { + "$ref": "./examples/IpGroupsListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "IpGroup": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/IpGroupPropertiesFormat", + "description": "Properties of the IpGroups." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "The IpGroups resource information." + }, + "IpGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/IpGroup" + }, + "description": "The list of IpGroups information resources." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for the ListIpGroups API service call." + }, + "IpGroupPropertiesFormat": { + "properties": { + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the IpGroups resource.", + "readOnly": true + }, + "ipAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "description": "IpAddresses/IpAddressPrefixes in the IpGroups resource." + }, + "firewalls": { + "type": "array", + "readOnly": true, + "description": "List of references to Firewall resources that this IpGroups is associated with.", + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + }, + "firewallPolicies": { + "type": "array", + "readOnly": true, + "description": "List of references to Firewall Policies resources that this IpGroups is associated with.", + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + } + }, + "description": "The IpGroups property information." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/loadBalancer.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/loadBalancer.json new file mode 100644 index 000000000000..77b738e4c316 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/loadBalancer.json @@ -0,0 +1,2432 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2021-02-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}": { + "delete": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancers_Delete", + "description": "Deletes the specified load balancer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete load balancer": { + "$ref": "./examples/LoadBalancerDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancers_Get", + "description": "Gets the specified load balancer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting LoadBalancer resource.", + "schema": { + "$ref": "#/definitions/LoadBalancer" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get load balancer": { + "$ref": "./examples/LoadBalancerGet.json" + } + } + }, + "put": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancers_CreateOrUpdate", + "description": "Creates or updates a load balancer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/LoadBalancer" + }, + "description": "Parameters supplied to the create or update load balancer operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting LoadBalancer resource.", + "schema": { + "$ref": "#/definitions/LoadBalancer" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting LoadBalancer resource.", + "schema": { + "$ref": "#/definitions/LoadBalancer" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create load balancer": { + "$ref": "./examples/LoadBalancerCreate.json" + }, + "Create load balancer with Standard SKU": { + "$ref": "./examples/LoadBalancerCreateStandardSku.json" + }, + "Create load balancer with Global Tier and one regional load balancer in its backend pool": { + "$ref": "./examples/LoadBalancerCreateGlobalTier.json" + }, + "Create load balancer with Frontend IP in Zone 1": { + "$ref": "./examples/LoadBalancerCreateWithZones.json" + }, + "Create load balancer with inbound nat pool": { + "$ref": "./examples/LoadBalancerCreateWithInboundNatPool.json" + }, + "Create load balancer with outbound rules": { + "$ref": "./examples/LoadBalancerCreateWithOutboundRules.json" + }, + "Create load balancer with Gateway Load Balancer Consumer configured": { + "$ref": "./examples/LoadBalancerCreateGatewayLoadBalancerConsumer.json" + }, + "Create load balancer with Gateway Load Balancer Provider configured with one Backend Pool": { + "$ref": "./examples/LoadBalancerCreateGatewayLoadBalancerProviderWithOneBackendPool.json" + }, + "Create load balancer with Gateway Load Balancer Provider configured with two Backend Pool": { + "$ref": "./examples/LoadBalancerCreateGatewayLoadBalancerProviderWithTwoBackendPool.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancers_UpdateTags", + "description": "Updates a load balancer tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update load balancer tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting LoadBalancer resource.", + "schema": { + "$ref": "#/definitions/LoadBalancer" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update load balancer tags": { + "$ref": "./examples/LoadBalancerUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/loadBalancers": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancers_ListAll", + "description": "Gets all the load balancers in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all load balancers": { + "$ref": "./examples/LoadBalancerListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancers_List", + "description": "Gets all the load balancers in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List load balancers in resource group": { + "$ref": "./examples/LoadBalancerList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/backendAddressPools": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerBackendAddressPools_List", + "description": "Gets all the load balancer backed address pools.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer BackendAddressPool resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerBackendAddressPoolListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerBackendAddressPoolList": { + "$ref": "./examples/LoadBalancerBackendAddressPoolList.json" + }, + "Load balancer with BackendAddressPool containing BackendAddresses": { + "$ref": "./examples/LBBackendAddressPoolListWithBackendAddressesPoolType.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/backendAddressPools/{backendAddressPoolName}": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerBackendAddressPools_Get", + "description": "Gets load balancer backend address pool.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "backendAddressPoolName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the backend address pool." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns LoadBalancer BackendAddressPool resource.", + "schema": { + "$ref": "#/definitions/BackendAddressPool" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerBackendAddressPoolGet": { + "$ref": "./examples/LoadBalancerBackendAddressPoolGet.json" + }, + "LoadBalancer with BackendAddressPool with BackendAddresses": { + "$ref": "./examples/LBBackendAddressPoolWithBackendAddressesGet.json" + } + } + }, + "put": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerBackendAddressPools_CreateOrUpdate", + "description": "Creates or updates a load balancer backend address pool.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "backendAddressPoolName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the backend address pool." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/BackendAddressPool" + }, + "description": "Parameters supplied to the create or update load balancer backend address pool operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting BackendAddressPool resource.", + "schema": { + "$ref": "#/definitions/BackendAddressPool" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting BackendAddressPool resource.", + "schema": { + "$ref": "#/definitions/BackendAddressPool" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update load balancer backend pool with backend addresses containing virtual network and IP address.": { + "$ref": "./examples/LBBackendAddressPoolWithBackendAddressesPut.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "delete": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerBackendAddressPools_Delete", + "description": "Deletes the specified load balancer backend address pool.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "backendAddressPoolName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the backend address pool." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "BackendAddressPoolDelete": { + "$ref": "./examples/LoadBalancerBackendAddressPoolDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/frontendIPConfigurations": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerFrontendIPConfigurations_List", + "description": "Gets all the load balancer frontend IP configurations.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer FrontendIPConfiguration resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerFrontendIPConfigurationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerFrontendIPConfigurationList": { + "$ref": "./examples/LoadBalancerFrontendIPConfigurationList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/frontendIPConfigurations/{frontendIPConfigurationName}": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerFrontendIPConfigurations_Get", + "description": "Gets load balancer frontend IP configuration.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "frontendIPConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the frontend IP configuration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns LoadBalancer FrontendIPConfiguration resource.", + "schema": { + "$ref": "#/definitions/FrontendIPConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerFrontendIPConfigurationGet": { + "$ref": "./examples/LoadBalancerFrontendIPConfigurationGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/inboundNatRules": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "InboundNatRules_List", + "description": "Gets all the inbound nat rules in a load balancer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer InboundNatRule resources.", + "schema": { + "$ref": "#/definitions/InboundNatRuleListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "InboundNatRuleList": { + "$ref": "./examples/InboundNatRuleList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/inboundNatRules/{inboundNatRuleName}": { + "delete": { + "tags": [ + "LoadBalancers" + ], + "operationId": "InboundNatRules_Delete", + "description": "Deletes the specified load balancer inbound nat rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "inboundNatRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the inbound nat rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "InboundNatRuleDelete": { + "$ref": "./examples/InboundNatRuleDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "InboundNatRules_Get", + "description": "Gets the specified load balancer inbound nat rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "inboundNatRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the inbound nat rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting InboundNatRule resource.", + "schema": { + "$ref": "#/definitions/InboundNatRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "InboundNatRuleGet": { + "$ref": "./examples/InboundNatRuleGet.json" + } + } + }, + "put": { + "tags": [ + "LoadBalancers" + ], + "operationId": "InboundNatRules_CreateOrUpdate", + "description": "Creates or updates a load balancer inbound nat rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "inboundNatRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the inbound nat rule." + }, + { + "name": "inboundNatRuleParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/InboundNatRule" + }, + "description": "Parameters supplied to the create or update inbound nat rule operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting InboundNatRule resource.", + "schema": { + "$ref": "#/definitions/InboundNatRule" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting InboundNatRule resource.", + "schema": { + "$ref": "#/definitions/InboundNatRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "InboundNatRuleCreate": { + "$ref": "./examples/InboundNatRuleCreate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/loadBalancingRules": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerLoadBalancingRules_List", + "description": "Gets all the load balancing rules in a load balancer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer LoadBalancingRule resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerLoadBalancingRuleListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "LoadBalancerLoadBalancingRuleList": { + "$ref": "./examples/LoadBalancerLoadBalancingRuleList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/loadBalancingRules/{loadBalancingRuleName}": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerLoadBalancingRules_Get", + "description": "Gets the specified load balancer load balancing rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "loadBalancingRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancing rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting LoadBalancingRule resource.", + "schema": { + "$ref": "#/definitions/LoadBalancingRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerLoadBalancingRuleGet": { + "$ref": "./examples/LoadBalancerLoadBalancingRuleGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/outboundRules": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerOutboundRules_List", + "description": "Gets all the outbound rules in a load balancer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer OutboundRule resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerOutboundRuleListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "LoadBalancerOutboundRuleList": { + "$ref": "./examples/LoadBalancerOutboundRuleList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/outboundRules/{outboundRuleName}": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerOutboundRules_Get", + "description": "Gets the specified load balancer outbound rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "outboundRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the outbound rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting OutboundRule resource.", + "schema": { + "$ref": "#/definitions/OutboundRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerOutboundRuleGet": { + "$ref": "./examples/LoadBalancerOutboundRuleGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/networkInterfaces": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerNetworkInterfaces_List", + "description": "Gets associated load balancer network interfaces.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface resources.", + "schema": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerNetworkInterfaceListVmss": { + "$ref": "./examples/LoadBalancerNetworkInterfaceListVmss.json" + }, + "LoadBalancerNetworkInterfaceListSimple": { + "$ref": "./examples/LoadBalancerNetworkInterfaceListSimple.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/probes": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerProbes_List", + "description": "Gets all the load balancer probes.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer Probe resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerProbeListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerProbeList": { + "$ref": "./examples/LoadBalancerProbeList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/{location}/setLoadBalancerFrontendPublicIpAddresses": { + "post": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancers_SwapPublicIpAddresses", + "description": "Swaps VIPs between two load balancers.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The region where load balancers are located at." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/LoadBalancerVipSwapRequest" + }, + "description": "Parameters that define which VIPs should be swapped." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Swap VIPs between two load balancers.": { + "$ref": "./examples/LoadBalancersSwapPublicIpAddresses.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/probes/{probeName}": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerProbes_Get", + "description": "Gets load balancer probe.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "probeName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the probe." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns LoadBalancer Probe resource.", + "schema": { + "$ref": "#/definitions/Probe" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerProbeGet": { + "$ref": "./examples/LoadBalancerProbeGet.json" + } + } + } + } + }, + "definitions": { + "GatewayLoadBalancerTunnelInterface": { + "properties": { + "port": { + "type": "integer", + "format": "int32", + "description": "Port of gateway load balancer tunnel interface." + }, + "identifier": { + "type": "integer", + "format": "int32", + "description": "Identifier of gateway load balancer tunnel interface." + }, + "protocol": { + "type": "string", + "description": "Protocol of gateway load balancer tunnel interface.", + "enum": [ + "None", + "Native", + "VXLAN" + ], + "x-ms-enum": { + "name": "GatewayLoadBalancerTunnelProtocol", + "modelAsString": true + } + }, + "type": { + "type": "string", + "description": "Traffic type of gateway load balancer tunnel interface.", + "enum": [ + "None", + "Internal", + "External" + ], + "x-ms-enum": { + "name": "GatewayLoadBalancerTunnelInterfaceType", + "modelAsString": true + } + } + }, + "description": "Gateway load balancer tunnel interface of a load balancer backend address pool." + }, + "LoadBalancerSku": { + "properties": { + "name": { + "type": "string", + "description": "Name of a load balancer SKU.", + "enum": [ + "Basic", + "Standard", + "Gateway" + ], + "x-ms-enum": { + "name": "LoadBalancerSkuName", + "modelAsString": true + } + }, + "tier": { + "type": "string", + "description": "Tier of a load balancer SKU.", + "enum": [ + "Regional", + "Global" + ], + "x-ms-enum": { + "name": "LoadBalancerSkuTier", + "modelAsString": true + } + } + }, + "description": "SKU of a load balancer." + }, + "FrontendIPConfigurationPropertiesFormat": { + "properties": { + "inboundNatRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to inbound rules that use this frontend IP." + }, + "inboundNatPools": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to inbound pools that use this frontend IP." + }, + "outboundRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to outbound rules that use this frontend IP." + }, + "loadBalancingRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to load balancing rules that use this frontend IP." + }, + "privateIPAddress": { + "type": "string", + "description": "The private IP address of the IP configuration." + }, + "privateIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "The Private IP allocation method." + }, + "privateIPAddressVersion": { + "$ref": "./network.json#/definitions/IPVersion", + "description": "Whether the specific ipconfiguration is IPv4 or IPv6. Default is taken as IPv4." + }, + "subnet": { + "$ref": "./virtualNetwork.json#/definitions/Subnet", + "description": "The reference to the subnet resource." + }, + "publicIPAddress": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddress", + "description": "The reference to the Public IP resource." + }, + "publicIPPrefix": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the Public IP Prefix resource." + }, + "gatewayLoadBalancer": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to gateway load balancer frontend IP." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the frontend IP configuration resource." + } + }, + "description": "Properties of Frontend IP Configuration of the load balancer." + }, + "FrontendIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/FrontendIPConfigurationPropertiesFormat", + "description": "Properties of the load balancer probe." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the set of frontend IP configurations used by the load balancer. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of availability zones denoting the IP allocated for the resource needs to come from." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Frontend IP address of the load balancer." + }, + "LoadBalancerBackendAddressPropertiesFormat": { + "properties": { + "virtualNetwork": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to an existing virtual network." + }, + "subnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to an existing subnet." + }, + "ipAddress": { + "type": "string", + "description": "IP Address belonging to the referenced virtual network.", + "x-ms-azure-resource": false + }, + "networkInterfaceIPConfiguration": { + "readOnly": true, + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to IP address defined in network interfaces." + }, + "loadBalancerFrontendIPConfiguration": { + "readOnly": false, + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the frontend ip address configuration defined in regional loadbalancer." + } + }, + "description": "Properties of the load balancer backend addresses." + }, + "LoadBalancerBackendAddress": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/LoadBalancerBackendAddressPropertiesFormat", + "description": "Properties of load balancer backend address pool." + }, + "name": { + "type": "string", + "description": "Name of the backend address." + } + }, + "description": "Load balancer backend addresses." + }, + "BackendAddressPoolPropertiesFormat": { + "properties": { + "location": { + "type": "string", + "description": "The location of the backend address pool." + }, + "tunnelInterfaces": { + "type": "array", + "items": { + "$ref": "#/definitions/GatewayLoadBalancerTunnelInterface" + }, + "description": "An array of gateway load balancer tunnel interfaces." + }, + "loadBalancerBackendAddresses": { + "type": "array", + "items": { + "$ref": "#/definitions/LoadBalancerBackendAddress" + }, + "description": "An array of backend addresses." + }, + "backendIPConfigurations": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfiguration" + }, + "description": "An array of references to IP addresses defined in network interfaces." + }, + "loadBalancingRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to load balancing rules that use this backend address pool." + }, + "outboundRule": { + "readOnly": true, + "$ref": "./network.json#/definitions/SubResource", + "description": "A reference to an outbound rule that uses this backend address pool." + }, + "outboundRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to outbound rules that use this backend address pool." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the backend address pool resource." + } + }, + "description": "Properties of the backend address pool." + }, + "BackendAddressPool": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/BackendAddressPoolPropertiesFormat", + "description": "Properties of load balancer backend address pool." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the set of backend address pools used by the load balancer. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Pool of backend IP addresses." + }, + "LoadBalancingRulePropertiesFormat": { + "properties": { + "frontendIPConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "A reference to frontend IP addresses." + }, + "backendAddressPool": { + "$ref": "./network.json#/definitions/SubResource", + "description": "A reference to a pool of DIPs. Inbound traffic is randomly load balanced across IPs in the backend IPs." + }, + "backendAddressPools": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to pool of DIPs." + }, + "probe": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the load balancer probe used by the load balancing rule." + }, + "protocol": { + "$ref": "#/definitions/TransportProtocol", + "description": "The reference to the transport protocol used by the load balancing rule." + }, + "loadDistribution": { + "type": "string", + "description": "The load distribution policy for this rule.", + "enum": [ + "Default", + "SourceIP", + "SourceIPProtocol" + ], + "x-ms-enum": { + "name": "LoadDistribution", + "modelAsString": true + } + }, + "frontendPort": { + "type": "integer", + "format": "int32", + "description": "The port for the external endpoint. Port numbers for each rule must be unique within the Load Balancer. Acceptable values are between 0 and 65534. Note that value 0 enables \"Any Port\"." + }, + "backendPort": { + "type": "integer", + "format": "int32", + "description": "The port used for internal connections on the endpoint. Acceptable values are between 0 and 65535. Note that value 0 enables \"Any Port\"." + }, + "idleTimeoutInMinutes": { + "type": "integer", + "format": "int32", + "description": "The timeout for the TCP idle connection. The value can be set between 4 and 30 minutes. The default value is 4 minutes. This element is only used when the protocol is set to TCP." + }, + "enableFloatingIP": { + "type": "boolean", + "description": "Configures a virtual machine's endpoint for the floating IP capability required to configure a SQL AlwaysOn Availability Group. This setting is required when using the SQL AlwaysOn Availability Groups in SQL server. This setting can't be changed after you create the endpoint." + }, + "enableTcpReset": { + "type": "boolean", + "description": "Receive bidirectional TCP Reset on TCP flow idle timeout or unexpected connection termination. This element is only used when the protocol is set to TCP." + }, + "disableOutboundSnat": { + "type": "boolean", + "description": "Configures SNAT for the VMs in the backend pool to use the publicIP address specified in the frontend of the load balancing rule." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the load balancing rule resource." + } + }, + "required": [ + "protocol", + "frontendPort" + ], + "description": "Properties of the load balancer." + }, + "LoadBalancingRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/LoadBalancingRulePropertiesFormat", + "description": "Properties of load balancer load balancing rule." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the set of load balancing rules used by the load balancer. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "A load balancing rule for a load balancer." + }, + "ProbePropertiesFormat": { + "properties": { + "loadBalancingRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "The load balancer rules that use this probe." + }, + "protocol": { + "type": "string", + "description": "The protocol of the end point. If 'Tcp' is specified, a received ACK is required for the probe to be successful. If 'Http' or 'Https' is specified, a 200 OK response from the specifies URI is required for the probe to be successful.", + "enum": [ + "Http", + "Tcp", + "Https" + ], + "x-ms-enum": { + "name": "ProbeProtocol", + "modelAsString": true + } + }, + "port": { + "type": "integer", + "format": "int32", + "description": "The port for communicating the probe. Possible values range from 1 to 65535, inclusive." + }, + "intervalInSeconds": { + "type": "integer", + "format": "int32", + "description": "The interval, in seconds, for how frequently to probe the endpoint for health status. Typically, the interval is slightly less than half the allocated timeout period (in seconds) which allows two full probes before taking the instance out of rotation. The default value is 15, the minimum value is 5." + }, + "numberOfProbes": { + "type": "integer", + "format": "int32", + "description": "The number of probes where if no response, will result in stopping further traffic from being delivered to the endpoint. This values allows endpoints to be taken out of rotation faster or slower than the typical times used in Azure." + }, + "requestPath": { + "type": "string", + "description": "The URI used for requesting health status from the VM. Path is required if a protocol is set to http. Otherwise, it is not allowed. There is no default value." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the probe resource." + } + }, + "required": [ + "protocol", + "port" + ], + "description": "Load balancer probe resource." + }, + "Probe": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ProbePropertiesFormat", + "description": "Properties of load balancer probe." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the set of probes used by the load balancer. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "A load balancer probe." + }, + "InboundNatRulePropertiesFormat": { + "properties": { + "frontendIPConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "A reference to frontend IP addresses." + }, + "backendIPConfiguration": { + "readOnly": true, + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfiguration", + "description": "A reference to a private IP address defined on a network interface of a VM. Traffic sent to the frontend port of each of the frontend IP configurations is forwarded to the backend IP." + }, + "protocol": { + "$ref": "#/definitions/TransportProtocol", + "description": "The reference to the transport protocol used by the load balancing rule." + }, + "frontendPort": { + "type": "integer", + "format": "int32", + "description": "The port for the external endpoint. Port numbers for each rule must be unique within the Load Balancer. Acceptable values range from 1 to 65534." + }, + "backendPort": { + "type": "integer", + "format": "int32", + "description": "The port used for the internal endpoint. Acceptable values range from 1 to 65535." + }, + "idleTimeoutInMinutes": { + "type": "integer", + "format": "int32", + "description": "The timeout for the TCP idle connection. The value can be set between 4 and 30 minutes. The default value is 4 minutes. This element is only used when the protocol is set to TCP." + }, + "enableFloatingIP": { + "type": "boolean", + "description": "Configures a virtual machine's endpoint for the floating IP capability required to configure a SQL AlwaysOn Availability Group. This setting is required when using the SQL AlwaysOn Availability Groups in SQL server. This setting can't be changed after you create the endpoint." + }, + "enableTcpReset": { + "type": "boolean", + "description": "Receive bidirectional TCP Reset on TCP flow idle timeout or unexpected connection termination. This element is only used when the protocol is set to TCP." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the inbound NAT rule resource." + } + }, + "description": "Properties of the inbound NAT rule." + }, + "InboundNatRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/InboundNatRulePropertiesFormat", + "description": "Properties of load balancer inbound nat rule." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the set of inbound NAT rules used by the load balancer. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Inbound NAT rule of the load balancer." + }, + "InboundNatPoolPropertiesFormat": { + "properties": { + "frontendIPConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "A reference to frontend IP addresses." + }, + "protocol": { + "$ref": "#/definitions/TransportProtocol", + "description": "The reference to the transport protocol used by the inbound NAT pool." + }, + "frontendPortRangeStart": { + "type": "integer", + "format": "int32", + "description": "The first port number in the range of external ports that will be used to provide Inbound Nat to NICs associated with a load balancer. Acceptable values range between 1 and 65534." + }, + "frontendPortRangeEnd": { + "type": "integer", + "format": "int32", + "description": "The last port number in the range of external ports that will be used to provide Inbound Nat to NICs associated with a load balancer. Acceptable values range between 1 and 65535." + }, + "backendPort": { + "type": "integer", + "format": "int32", + "description": "The port used for internal connections on the endpoint. Acceptable values are between 1 and 65535." + }, + "idleTimeoutInMinutes": { + "type": "integer", + "format": "int32", + "description": "The timeout for the TCP idle connection. The value can be set between 4 and 30 minutes. The default value is 4 minutes. This element is only used when the protocol is set to TCP." + }, + "enableFloatingIP": { + "type": "boolean", + "description": "Configures a virtual machine's endpoint for the floating IP capability required to configure a SQL AlwaysOn Availability Group. This setting is required when using the SQL AlwaysOn Availability Groups in SQL server. This setting can't be changed after you create the endpoint." + }, + "enableTcpReset": { + "type": "boolean", + "description": "Receive bidirectional TCP Reset on TCP flow idle timeout or unexpected connection termination. This element is only used when the protocol is set to TCP." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the inbound NAT pool resource." + } + }, + "required": [ + "protocol", + "frontendPortRangeStart", + "frontendPortRangeEnd", + "backendPort" + ], + "description": "Properties of Inbound NAT pool." + }, + "InboundNatPool": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/InboundNatPoolPropertiesFormat", + "description": "Properties of load balancer inbound nat pool." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the set of inbound NAT pools used by the load balancer. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Inbound NAT pool of the load balancer." + }, + "OutboundRulePropertiesFormat": { + "properties": { + "allocatedOutboundPorts": { + "type": "integer", + "format": "int32", + "description": "The number of outbound ports to be used for NAT." + }, + "frontendIPConfigurations": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "The Frontend IP addresses of the load balancer." + }, + "backendAddressPool": { + "$ref": "./network.json#/definitions/SubResource", + "description": "A reference to a pool of DIPs. Outbound traffic is randomly load balanced across IPs in the backend IPs." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the outbound rule resource." + }, + "protocol": { + "type": "string", + "description": "The protocol for the outbound rule in load balancer.", + "enum": [ + "Tcp", + "Udp", + "All" + ], + "x-ms-enum": { + "name": "LoadBalancerOutboundRuleProtocol", + "modelAsString": true + } + }, + "enableTcpReset": { + "type": "boolean", + "description": "Receive bidirectional TCP Reset on TCP flow idle timeout or unexpected connection termination. This element is only used when the protocol is set to TCP." + }, + "idleTimeoutInMinutes": { + "type": "integer", + "description": "The timeout for the TCP idle connection." + } + }, + "required": [ + "backendAddressPool", + "frontendIPConfigurations", + "protocol" + ], + "description": "Outbound rule of the load balancer." + }, + "OutboundRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/OutboundRulePropertiesFormat", + "description": "Properties of load balancer outbound rule." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the set of outbound rules used by the load balancer. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Outbound rule of the load balancer." + }, + "LoadBalancerPropertiesFormat": { + "properties": { + "frontendIPConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/FrontendIPConfiguration" + }, + "description": "Object representing the frontend IPs to be used for the load balancer." + }, + "backendAddressPools": { + "type": "array", + "items": { + "$ref": "#/definitions/BackendAddressPool" + }, + "description": "Collection of backend address pools used by a load balancer." + }, + "loadBalancingRules": { + "type": "array", + "items": { + "$ref": "#/definitions/LoadBalancingRule" + }, + "description": "Object collection representing the load balancing rules Gets the provisioning." + }, + "probes": { + "type": "array", + "items": { + "$ref": "#/definitions/Probe" + }, + "description": "Collection of probe objects used in the load balancer." + }, + "inboundNatRules": { + "type": "array", + "items": { + "$ref": "#/definitions/InboundNatRule" + }, + "description": "Collection of inbound NAT Rules used by a load balancer. Defining inbound NAT rules on your load balancer is mutually exclusive with defining an inbound NAT pool. Inbound NAT pools are referenced from virtual machine scale sets. NICs that are associated with individual virtual machines cannot reference an Inbound NAT pool. They have to reference individual inbound NAT rules." + }, + "inboundNatPools": { + "type": "array", + "items": { + "$ref": "#/definitions/InboundNatPool" + }, + "description": "Defines an external port range for inbound NAT to a single backend port on NICs associated with a load balancer. Inbound NAT rules are created automatically for each NIC associated with the Load Balancer using an external port from this range. Defining an Inbound NAT pool on your Load Balancer is mutually exclusive with defining inbound Nat rules. Inbound NAT pools are referenced from virtual machine scale sets. NICs that are associated with individual virtual machines cannot reference an inbound NAT pool. They have to reference individual inbound NAT rules." + }, + "outboundRules": { + "type": "array", + "items": { + "$ref": "#/definitions/OutboundRule" + }, + "description": "The outbound rules." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the load balancer resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the load balancer resource." + } + }, + "description": "Properties of the load balancer." + }, + "LoadBalancer": { + "properties": { + "extendedLocation": { + "$ref": "./network.json#/definitions/ExtendedLocation", + "description": "The extended location of the load balancer." + }, + "sku": { + "$ref": "#/definitions/LoadBalancerSku", + "description": "The load balancer SKU." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/LoadBalancerPropertiesFormat", + "description": "Properties of load balancer." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "LoadBalancer resource." + }, + "LoadBalancerListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "description": "A list of load balancers in a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListLoadBalancers API service call." + }, + "InboundNatRuleListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/InboundNatRule" + }, + "description": "A list of inbound nat rules in a load balancer." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListInboundNatRule API service call." + }, + "LoadBalancerBackendAddressPoolListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BackendAddressPool" + }, + "description": "A list of backend address pools in a load balancer." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListBackendAddressPool API service call." + }, + "LoadBalancerFrontendIPConfigurationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/FrontendIPConfiguration" + }, + "description": "A list of frontend IP configurations in a load balancer." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListFrontendIPConfiguration API service call." + }, + "LoadBalancerLoadBalancingRuleListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/LoadBalancingRule" + }, + "description": "A list of load balancing rules in a load balancer." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListLoadBalancingRule API service call." + }, + "LoadBalancerOutboundRuleListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/OutboundRule" + }, + "description": "A list of outbound rules in a load balancer." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListOutboundRule API service call." + }, + "LoadBalancerProbeListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Probe" + }, + "description": "A list of probes in a load balancer." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListProbe API service call." + }, + "TransportProtocol": { + "type": "string", + "description": "The transport protocol for the endpoint.", + "enum": [ + "Udp", + "Tcp", + "All" + ], + "x-ms-enum": { + "name": "TransportProtocol", + "modelAsString": true + } + }, + "LoadBalancerVipSwapRequest": { + "properties": { + "frontendIPConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/LoadBalancerVipSwapRequestFrontendIPConfiguration" + }, + "description": "A list of frontend IP configuration resources that should swap VIPs." + } + }, + "description": "The request for a VIP swap." + }, + "LoadBalancerVipSwapRequestFrontendIPConfiguration": { + "properties": { + "id": { + "type": "string", + "description": "The ID of frontend IP configuration resource." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/LoadBalancerVipSwapRequestFrontendIPConfigurationProperties", + "description": "The properties of VIP swap request's frontend IP configuration object." + } + }, + "description": "VIP swap request's frontend IP configuration object." + }, + "LoadBalancerVipSwapRequestFrontendIPConfigurationProperties": { + "properties": { + "publicIPAddress": { + "$ref": "./network.json#/definitions/SubResource", + "description": "A reference to public IP address resource." + } + }, + "description": "The properties of VIP swap request's frontend IP configuration object." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/natGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/natGateway.json new file mode 100644 index 000000000000..946e817d30ee --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/natGateway.json @@ -0,0 +1,469 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2021-02-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/natGateways/{natGatewayName}": { + "delete": { + "tags": [ + "NatGateways" + ], + "operationId": "NatGateways_Delete", + "description": "Deletes the specified nat gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "natGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the nat gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete nat gateway": { + "$ref": "./examples/NatGatewayDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "NatGateways" + ], + "operationId": "NatGateways_Get", + "description": "Gets the specified nat gateway in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "natGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the nat gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NatGateway resource.", + "schema": { + "$ref": "#/definitions/NatGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get nat gateway": { + "$ref": "./examples/NatGatewayGet.json" + } + } + }, + "put": { + "tags": [ + "NatGateways" + ], + "operationId": "NatGateways_CreateOrUpdate", + "description": "Creates or updates a nat gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "natGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the nat gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NatGateway" + }, + "description": "Parameters supplied to the create or update nat gateway operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting NatGateway resource.", + "schema": { + "$ref": "#/definitions/NatGateway" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting NatGateway resource.", + "schema": { + "$ref": "#/definitions/NatGateway" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create nat gateway": { + "$ref": "./examples/NatGatewayCreateOrUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "NatGateways" + ], + "operationId": "NatGateways_UpdateTags", + "description": "Updates nat gateway tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "natGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the nat gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update nat gateway tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting NatGateway resource.", + "schema": { + "$ref": "#/definitions/NatGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update nat gateway tags": { + "$ref": "./examples/NatGatewayUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/natGateways": { + "get": { + "tags": [ + "NatGateways" + ], + "operationId": "NatGateways_ListAll", + "description": "Gets all the Nat Gateways in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NatGateway resources.", + "schema": { + "$ref": "#/definitions/NatGatewayListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all nat gateways": { + "$ref": "./examples/NatGatewayListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/natGateways": { + "get": { + "tags": [ + "NatGateways" + ], + "operationId": "NatGateways_List", + "description": "Gets all nat gateways in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NatGateway resources.", + "schema": { + "$ref": "#/definitions/NatGatewayListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List nat gateways in resource group": { + "$ref": "./examples/NatGatewayList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "NatGatewaySku": { + "properties": { + "name": { + "type": "string", + "description": "Name of Nat Gateway SKU.", + "enum": [ + "Standard" + ], + "x-ms-enum": { + "name": "NatGatewaySkuName", + "modelAsString": true + } + } + }, + "description": "SKU of nat gateway." + }, + "NatGatewayPropertiesFormat": { + "properties": { + "idleTimeoutInMinutes": { + "type": "integer", + "format": "int32", + "description": "The idle timeout of the nat gateway." + }, + "publicIpAddresses": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of public ip addresses associated with the nat gateway resource." + }, + "publicIpPrefixes": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of public ip prefixes associated with the nat gateway resource." + }, + "subnets": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to the subnets using this nat gateway resource." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the NAT gateway resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the NAT gateway resource." + } + }, + "description": "Nat Gateway properties." + }, + "NatGateway": { + "properties": { + "sku": { + "$ref": "#/definitions/NatGatewaySku", + "description": "The nat gateway SKU." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NatGatewayPropertiesFormat", + "description": "Nat Gateway properties." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of availability zones denoting the zone in which Nat Gateway should be deployed." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Nat Gateway resource." + }, + "NatGatewayListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NatGateway" + }, + "description": "A list of Nat Gateways that exists in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListNatGateways API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/network.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/network.json new file mode 100644 index 000000000000..01be49614f33 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/network.json @@ -0,0 +1,359 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2021-02-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": {}, + "definitions": { + "ErrorDetails": { + "properties": { + "code": { + "type": "string", + "description": "Error code." + }, + "target": { + "type": "string", + "description": "Error target." + }, + "message": { + "type": "string", + "description": "Error message." + } + }, + "description": "Common error details representation." + }, + "Error": { + "properties": { + "code": { + "type": "string", + "description": "Error code." + }, + "message": { + "type": "string", + "description": "Error message." + }, + "target": { + "type": "string", + "description": "Error target." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ErrorDetails" + }, + "description": "Error details." + }, + "innerError": { + "type": "string", + "description": "Inner error message." + } + }, + "description": "Common error representation." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorBody", + "description": "Cloud error body." + } + }, + "description": "An error response from the service." + }, + "CloudErrorBody": { + "x-ms-external": true, + "properties": { + "code": { + "type": "string", + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "type": "string", + "description": "A message describing the error, intended to be suitable for display in a user interface." + }, + "target": { + "type": "string", + "description": "The target of the particular error. For example, the name of the property in error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/CloudErrorBody" + }, + "description": "A list of additional details about the error." + } + }, + "description": "An error response from the service." + }, + "AzureAsyncOperationResult": { + "properties": { + "status": { + "type": "string", + "description": "Status of the Azure async operation.", + "enum": [ + "InProgress", + "Succeeded", + "Failed" + ], + "x-ms-enum": { + "name": "NetworkOperationStatus", + "modelAsString": true + } + }, + "error": { + "$ref": "#/definitions/Error", + "description": "Details of the error occurred during specified asynchronous operation." + } + }, + "description": "The response body contains the status of the specified asynchronous operation, indicating whether it has succeeded, is in progress, or has failed. Note that this status is distinct from the HTTP status code returned for the Get Operation Status operation itself. If the asynchronous operation succeeded, the response body includes the HTTP status code for the successful request. If the asynchronous operation failed, the response body includes the HTTP status code for the failed request and error information regarding the failure." + }, + "Resource": { + "properties": { + "id": { + "type": "string", + "description": "Resource ID." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Resource name." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "description": "Common resource representation.", + "x-ms-azure-resource": true + }, + "SubResource": { + "properties": { + "id": { + "type": "string", + "description": "Resource ID." + } + }, + "description": "Reference to another subresource.", + "x-ms-azure-resource": true + }, + "TagsObject": { + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "description": "Tags object for patch operations." + }, + "ManagedServiceIdentity": { + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of the system assigned identity. This property will only be provided for a system assigned identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant id of the system assigned identity. This property will only be provided for a system assigned identity." + }, + "type": { + "type": "string", + "description": "The type of identity used for the resource. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user assigned identities. The type 'None' will remove any identities from the virtual machine.", + "enum": [ + "SystemAssigned", + "UserAssigned", + "SystemAssigned, UserAssigned", + "None" + ], + "x-ms-enum": { + "name": "ResourceIdentityType", + "modelAsString": false + } + }, + "userAssignedIdentities": { + "type": "object", + "additionalProperties": { + "type": "object", + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of user assigned identity." + }, + "clientId": { + "readOnly": true, + "type": "string", + "description": "The client id of user assigned identity." + } + } + }, + "description": "The list of user identities associated with resource. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'." + } + }, + "description": "Identity for the resource." + }, + "ProvisioningState": { + "type": "string", + "readOnly": true, + "description": "The current provisioning state.", + "enum": [ + "Succeeded", + "Updating", + "Deleting", + "Failed" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "Access": { + "type": "string", + "description": "Access to be allowed or denied.", + "enum": [ + "Allow", + "Deny" + ], + "x-ms-enum": { + "name": "Access", + "modelAsString": true + } + }, + "AuthenticationMethod": { + "type": "string", + "description": "VPN client authentication method.", + "enum": [ + "EAPTLS", + "EAPMSCHAPv2" + ], + "x-ms-enum": { + "name": "AuthenticationMethod", + "modelAsString": true + } + }, + "IPAllocationMethod": { + "type": "string", + "description": "IP address allocation method.", + "enum": [ + "Static", + "Dynamic" + ], + "x-ms-enum": { + "name": "IPAllocationMethod", + "modelAsString": true + } + }, + "IPVersion": { + "type": "string", + "description": "IP address version.", + "enum": [ + "IPv4", + "IPv6" + ], + "x-ms-enum": { + "name": "IPVersion", + "modelAsString": true + } + }, + "ExtendedLocationType": { + "type": "string", + "description": "The supported ExtendedLocation types. Currently only EdgeZone is supported in Microsoft.Network resources.", + "enum": [ + "EdgeZone" + ], + "x-ms-enum": { + "name": "ExtendedLocationTypes", + "modelAsString": true + } + }, + "ExtendedLocation": { + "description": "ExtendedLocation complex type.", + "properties": { + "name": { + "type": "string", + "description": "The name of the extended location." + }, + "type": { + "$ref": "#/definitions/ExtendedLocationType", + "description": "The type of the extended location." + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client API version." + }, + "ApiVersionVmssParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "enum": [ + "2017-03-30" + ], + "x-ms-enum": { + "name": "ApiVersion", + "modelAsString": true + }, + "description": "Client API version." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/networkInterface.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/networkInterface.json new file mode 100644 index 000000000000..f51345670084 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/networkInterface.json @@ -0,0 +1,1582 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2021-02-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}": { + "delete": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_Delete", + "description": "Deletes the specified network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete network interface": { + "$ref": "./examples/NetworkInterfaceDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_Get", + "description": "Gets information about the specified network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NetworkInterface resource.", + "schema": { + "$ref": "#/definitions/NetworkInterface" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get network interface": { + "$ref": "./examples/NetworkInterfaceGet.json" + } + } + }, + "put": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_CreateOrUpdate", + "description": "Creates or updates a network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkInterface" + }, + "description": "Parameters supplied to the create or update network interface operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting NetworkInterface resource.", + "schema": { + "$ref": "#/definitions/NetworkInterface" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting NetworkInterface resource.", + "schema": { + "$ref": "#/definitions/NetworkInterface" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create network interface": { + "$ref": "./examples/NetworkInterfaceCreate.json" + }, + "Create network interface with Gateway Load Balancer Consumer configured": { + "$ref": "./examples/NetworkInterfaceCreateGatewayLoadBalancerConsumer.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_UpdateTags", + "description": "Updates a network interface tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update network interface tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting NetworkInterface resource.", + "schema": { + "$ref": "#/definitions/NetworkInterface" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update network interface tags": { + "$ref": "./examples/NetworkInterfaceUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkInterfaces": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_ListAll", + "description": "Gets all network interfaces in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface resources.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all network interfaces": { + "$ref": "./examples/NetworkInterfaceListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_List", + "description": "Gets all network interfaces in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface resources.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List network interfaces in resource group": { + "$ref": "./examples/NetworkInterfaceList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/effectiveRouteTable": { + "post": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_GetEffectiveRouteTable", + "description": "Gets all route tables applied to a network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of EffectRoute resources.", + "schema": { + "$ref": "#/definitions/EffectiveRouteListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Show network interface effective route tables": { + "$ref": "./examples/NetworkInterfaceEffectiveRouteTableList.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/effectiveNetworkSecurityGroups": { + "post": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_ListEffectiveNetworkSecurityGroups", + "description": "Gets all network security groups applied to a network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkSecurityGroup resources.", + "schema": { + "$ref": "#/definitions/EffectiveNetworkSecurityGroupListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List network interface effective network security groups": { + "$ref": "./examples/NetworkInterfaceEffectiveNSGList.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/ipConfigurations": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaceIPConfigurations_List", + "description": "Get all ip configurations in a network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface IPConfiguration resources.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceIPConfigurationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "NetworkInterfaceIPConfigurationList": { + "$ref": "./examples/NetworkInterfaceIPConfigurationList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/ipConfigurations/{ipConfigurationName}": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaceIPConfigurations_Get", + "description": "Gets the specified network interface ip configuration.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "ipConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ip configuration name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NetworkInterface IPConfiguration resource.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceIPConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "NetworkInterfaceIPConfigurationGet": { + "$ref": "./examples/NetworkInterfaceIPConfigurationGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/loadBalancers": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaceLoadBalancers_List", + "description": "List all load balancers in a network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface LoadBalancer resources.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceLoadBalancerListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "NetworkInterfaceLoadBalancerList": { + "$ref": "./examples/NetworkInterfaceLoadBalancerList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/tapConfigurations/{tapConfigurationName}": { + "delete": { + "tags": [ + "Network Interfaces" + ], + "operationId": "NetworkInterfaceTapConfigurations_Delete", + "description": "Deletes the specified tap configuration from the NetworkInterface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "tapConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tap configuration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete tap configuration": { + "$ref": "./examples/NetworkInterfaceTapConfigurationDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaceTapConfigurations_Get", + "description": "Get the specified tap configuration on a network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "tapConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tap configuration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a tap configuration.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceTapConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Network Interface Tap Configurations": { + "$ref": "./examples/NetworkInterfaceTapConfigurationGet.json" + } + } + }, + "put": { + "tags": [ + "Network Interfaces" + ], + "operationId": "NetworkInterfaceTapConfigurations_CreateOrUpdate", + "description": "Creates or updates a Tap configuration in the specified NetworkInterface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "tapConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tap configuration." + }, + { + "name": "tapConfigurationParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkInterfaceTapConfiguration" + }, + "description": "Parameters supplied to the create or update tap configuration operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting Tap Configuration resource.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceTapConfiguration" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting Tap configuration resource.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceTapConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create Network Interface Tap Configurations": { + "$ref": "./examples/NetworkInterfaceTapConfigurationCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/tapConfigurations": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaceTapConfigurations_List", + "description": "Get all Tap configurations in a network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface TapConfiguration resources.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceTapConfigurationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List virtual network tap configurations": { + "$ref": "./examples/NetworkInterfaceTapConfigurationList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "NetworkInterfaceTapConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkInterfaceTapConfigurationPropertiesFormat", + "description": "Properties of the Virtual Network Tap configuration." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Sub Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Tap configuration in a Network Interface." + }, + "NetworkInterfaceTapConfigurationPropertiesFormat": { + "properties": { + "virtualNetworkTap": { + "$ref": "./virtualNetworkTap.json#/definitions/VirtualNetworkTap", + "description": "The reference to the Virtual Network Tap resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the network interface tap configuration resource." + } + }, + "description": "Properties of Virtual Network Tap configuration." + }, + "NetworkInterfaceIPConfigurationPropertiesFormat": { + "properties": { + "gatewayLoadBalancer": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to gateway load balancer frontend IP." + }, + "virtualNetworkTaps": { + "type": "array", + "items": { + "$ref": "./virtualNetworkTap.json#/definitions/VirtualNetworkTap" + }, + "description": "The reference to Virtual Network Taps." + }, + "applicationGatewayBackendAddressPools": { + "type": "array", + "items": { + "$ref": "./applicationGateway.json#/definitions/ApplicationGatewayBackendAddressPool" + }, + "description": "The reference to ApplicationGatewayBackendAddressPool resource." + }, + "loadBalancerBackendAddressPools": { + "type": "array", + "items": { + "$ref": "./loadBalancer.json#/definitions/BackendAddressPool" + }, + "description": "The reference to LoadBalancerBackendAddressPool resource." + }, + "loadBalancerInboundNatRules": { + "type": "array", + "items": { + "$ref": "./loadBalancer.json#/definitions/InboundNatRule" + }, + "description": "A list of references of LoadBalancerInboundNatRules." + }, + "privateIPAddress": { + "type": "string", + "description": "Private IP address of the IP configuration." + }, + "privateIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "The private IP address allocation method." + }, + "privateIPAddressVersion": { + "$ref": "./network.json#/definitions/IPVersion", + "description": "Whether the specific IP configuration is IPv4 or IPv6. Default is IPv4." + }, + "subnet": { + "$ref": "./virtualNetwork.json#/definitions/Subnet", + "description": "Subnet bound to the IP configuration." + }, + "primary": { + "type": "boolean", + "description": "Whether this is a primary customer address on the network interface." + }, + "publicIPAddress": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddress", + "description": "Public IP address bound to the IP configuration." + }, + "applicationSecurityGroups": { + "type": "array", + "items": { + "$ref": "./applicationSecurityGroup.json#/definitions/ApplicationSecurityGroup" + }, + "description": "Application security groups in which the IP configuration is included." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the network interface IP configuration." + }, + "privateLinkConnectionProperties": { + "$ref": "#/definitions/NetworkInterfaceIPConfigurationPrivateLinkConnectionProperties", + "description": "PrivateLinkConnection properties for the network interface.", + "readOnly": true + } + }, + "description": "Properties of IP configuration." + }, + "NetworkInterfaceIPConfigurationPrivateLinkConnectionProperties": { + "properties": { + "groupId": { + "type": "string", + "readOnly": true, + "description": "The group ID for current private link connection." + }, + "requiredMemberName": { + "type": "string", + "readOnly": true, + "description": "The required member name for current private link connection." + }, + "fqdns": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "description": "List of FQDNs for current private link connection." + } + }, + "description": "PrivateLinkConnection properties for the network interface." + }, + "NetworkInterfaceIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkInterfaceIPConfigurationPropertiesFormat", + "description": "Network interface IP configuration properties." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "description": "Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IPConfiguration in a network interface." + }, + "NetworkInterfaceDnsSettings": { + "properties": { + "dnsServers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of DNS servers IP addresses. Use 'AzureProvidedDNS' to switch to azure provided DNS resolution. 'AzureProvidedDNS' value cannot be combined with other IPs, it must be the only value in dnsServers collection." + }, + "appliedDnsServers": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "If the VM that uses this NIC is part of an Availability Set, then this list will have the union of all DNS servers from all NICs that are part of the Availability Set. This property is what is configured on each of those VMs." + }, + "internalDnsNameLabel": { + "type": "string", + "description": "Relative DNS name for this NIC used for internal communications between VMs in the same virtual network." + }, + "internalFqdn": { + "readOnly": true, + "type": "string", + "description": "Fully qualified DNS name supporting internal communications between VMs in the same virtual network." + }, + "internalDomainNameSuffix": { + "readOnly": true, + "type": "string", + "description": "Even if internalDnsNameLabel is not specified, a DNS entry is created for the primary NIC of the VM. This DNS name can be constructed by concatenating the VM name with the value of internalDomainNameSuffix." + } + }, + "description": "DNS settings of a network interface." + }, + "NetworkInterfacePropertiesFormat": { + "properties": { + "virtualMachine": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to a virtual machine.", + "readOnly": true + }, + "networkSecurityGroup": { + "$ref": "./networkSecurityGroup.json#/definitions/NetworkSecurityGroup", + "description": "The reference to the NetworkSecurityGroup resource." + }, + "privateEndpoint": { + "readOnly": true, + "$ref": "./privateEndpoint.json#/definitions/PrivateEndpoint", + "description": "A reference to the private endpoint to which the network interface is linked." + }, + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkInterfaceIPConfiguration" + }, + "description": "A list of IPConfigurations of the network interface." + }, + "tapConfigurations": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/NetworkInterfaceTapConfiguration" + }, + "description": "A list of TapConfigurations of the network interface." + }, + "dnsSettings": { + "$ref": "#/definitions/NetworkInterfaceDnsSettings", + "description": "The DNS settings in network interface." + }, + "macAddress": { + "readOnly": true, + "type": "string", + "description": "The MAC address of the network interface." + }, + "primary": { + "readOnly": true, + "type": "boolean", + "description": "Whether this is a primary network interface on a virtual machine." + }, + "enableAcceleratedNetworking": { + "type": "boolean", + "description": "If the network interface is accelerated networking enabled." + }, + "enableIPForwarding": { + "type": "boolean", + "description": "Indicates whether IP forwarding is enabled on this network interface." + }, + "hostedWorkloads": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "description": "A list of references to linked BareMetal resources." + }, + "dscpConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "A reference to the dscp configuration to which the network interface is linked.", + "readOnly": true + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the network interface resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the network interface resource." + }, + "workloadType": { + "type": "string", + "description": "WorkloadType of the NetworkInterface for BareMetal resources" + }, + "nicType": { + "type": "string", + "description": "Type of Network Interface resource.", + "enum": [ + "Standard", + "Elastic" + ], + "x-ms-enum": { + "name": "NetworkInterfaceNicType", + "modelAsString": true + } + }, + "privateLinkService": { + "$ref": "./privateLinkService.json#/definitions/PrivateLinkService", + "description": "Privatelinkservice of the network interface resource." + }, + "migrationPhase": { + "type": "string", + "description": "Migration phase of Network Interface resource.", + "enum": [ + "None", + "Prepare", + "Commit", + "Abort", + "Committed" + ], + "x-ms-enum": { + "name": "NetworkInterfaceMigrationPhase", + "modelAsString": true + } + } + }, + "description": "NetworkInterface properties." + }, + "NetworkInterface": { + "properties": { + "extendedLocation": { + "$ref": "./network.json#/definitions/ExtendedLocation", + "description": "The extended location of the network interface." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkInterfacePropertiesFormat", + "description": "Properties of the network interface." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "A network interface in a resource group." + }, + "NetworkInterfaceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkInterface" + }, + "description": "A list of network interfaces in a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListNetworkInterface API service call." + }, + "NetworkInterfaceTapConfigurationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkInterfaceTapConfiguration" + }, + "description": "A list of tap configurations." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for list tap configurations API service call." + }, + "NetworkInterfaceIPConfigurationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkInterfaceIPConfiguration" + }, + "description": "A list of ip configurations." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for list ip configurations API service call." + }, + "NetworkInterfaceLoadBalancerListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "./loadBalancer.json#/definitions/LoadBalancer" + }, + "description": "A list of load balancers." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for list ip configurations API service call." + }, + "EffectiveNetworkSecurityGroup": { + "properties": { + "networkSecurityGroup": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The ID of network security group that is applied." + }, + "association": { + "$ref": "#/definitions/EffectiveNetworkSecurityGroupAssociation", + "description": "Associated resources." + }, + "effectiveSecurityRules": { + "type": "array", + "items": { + "$ref": "#/definitions/EffectiveNetworkSecurityRule" + }, + "description": "A collection of effective security rules." + }, + "tagMap": { + "type": "string", + "additionalProperties": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of IP Addresses within the tag (key)." + }, + "description": "Mapping of tags to list of IP Addresses included within the tag." + } + }, + "description": "Effective network security group." + }, + "EffectiveNetworkSecurityGroupAssociation": { + "properties": { + "networkManager": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The ID of the Azure network manager if assigned." + }, + "subnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The ID of the subnet if assigned." + }, + "networkInterface": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The ID of the network interface if assigned." + } + }, + "description": "The effective network security group association." + }, + "EffectiveNetworkSecurityRule": { + "properties": { + "name": { + "type": "string", + "description": "The name of the security rule specified by the user (if created by the user)." + }, + "protocol": { + "type": "string", + "description": "The network protocol this rule applies to.", + "enum": [ + "Tcp", + "Udp", + "All" + ], + "x-ms-enum": { + "name": "EffectiveSecurityRuleProtocol", + "modelAsString": true + } + }, + "sourcePortRange": { + "type": "string", + "description": "The source port or range." + }, + "destinationPortRange": { + "type": "string", + "description": "The destination port or range." + }, + "sourcePortRanges": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The source port ranges. Expected values include a single integer between 0 and 65535, a range using '-' as separator (e.g. 100-400), or an asterisk (*)." + }, + "destinationPortRanges": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The destination port ranges. Expected values include a single integer between 0 and 65535, a range using '-' as separator (e.g. 100-400), or an asterisk (*)." + }, + "sourceAddressPrefix": { + "type": "string", + "description": "The source address prefix." + }, + "destinationAddressPrefix": { + "type": "string", + "description": "The destination address prefix." + }, + "sourceAddressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The source address prefixes. Expected values include CIDR IP ranges, Default Tags (VirtualNetwork, AzureLoadBalancer, Internet), System Tags, and the asterisk (*)." + }, + "destinationAddressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The destination address prefixes. Expected values include CIDR IP ranges, Default Tags (VirtualNetwork, AzureLoadBalancer, Internet), System Tags, and the asterisk (*)." + }, + "expandedSourceAddressPrefix": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The expanded source address prefix." + }, + "expandedDestinationAddressPrefix": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Expanded destination address prefix." + }, + "access": { + "$ref": "./networkSecurityGroup.json#/definitions/SecurityRuleAccess", + "description": "Whether network traffic is allowed or denied." + }, + "priority": { + "type": "integer", + "format": "int32", + "description": "The priority of the rule." + }, + "direction": { + "$ref": "./networkSecurityGroup.json#/definitions/SecurityRuleDirection", + "description": "The direction of the rule." + } + }, + "description": "Effective network security rules." + }, + "EffectiveNetworkSecurityGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/EffectiveNetworkSecurityGroup" + }, + "description": "A list of effective network security groups." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for list effective network security groups API service call." + }, + "EffectiveRoute": { + "properties": { + "name": { + "type": "string", + "description": "The name of the user defined route. This is optional." + }, + "disableBgpRoutePropagation": { + "type": "boolean", + "description": "If true, on-premises routes are not propagated to the network interfaces in the subnet." + }, + "source": { + "type": "string", + "description": "Who created the route.", + "enum": [ + "Unknown", + "User", + "VirtualNetworkGateway", + "Default" + ], + "x-ms-enum": { + "name": "EffectiveRouteSource", + "modelAsString": true + } + }, + "state": { + "type": "string", + "description": "The value of effective route.", + "enum": [ + "Active", + "Invalid" + ], + "x-ms-enum": { + "name": "EffectiveRouteState", + "modelAsString": true + } + }, + "addressPrefix": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The address prefixes of the effective routes in CIDR notation." + }, + "nextHopIpAddress": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The IP address of the next hop of the effective route." + }, + "nextHopType": { + "$ref": "./routeTable.json#/definitions/RouteNextHopType", + "description": "The type of Azure hop the packet should be sent to." + } + }, + "description": "Effective Route." + }, + "EffectiveRouteListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/EffectiveRoute" + }, + "description": "A list of effective routes." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for list effective route API service call." + }, + "IPConfigurationPropertiesFormat": { + "properties": { + "privateIPAddress": { + "type": "string", + "description": "The private IP address of the IP configuration." + }, + "privateIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "The private IP address allocation method.", + "default": "Dynamic" + }, + "subnet": { + "$ref": "./virtualNetwork.json#/definitions/Subnet", + "description": "The reference to the subnet resource." + }, + "publicIPAddress": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddress", + "description": "The reference to the public IP resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the IP configuration resource." + } + }, + "description": "Properties of IP configuration." + }, + "IPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/IPConfigurationPropertiesFormat", + "description": "Properties of the IP configuration." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IP configuration." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/networkProfile.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/networkProfile.json new file mode 100644 index 000000000000..d56a05068c74 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/networkProfile.json @@ -0,0 +1,622 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2021-02-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkProfiles/{networkProfileName}": { + "delete": { + "tags": [ + "NetworkProfiles" + ], + "operationId": "NetworkProfiles_Delete", + "description": "Deletes the specified network profile.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkProfileName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the NetworkProfile." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete network profile": { + "$ref": "./examples/NetworkProfileDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "NetworkProfiles" + ], + "operationId": "NetworkProfiles_Get", + "description": "Gets the specified network profile in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkProfileName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP prefix." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NetworkProfile resource.", + "schema": { + "$ref": "#/definitions/NetworkProfile" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get network profile": { + "$ref": "./examples/NetworkProfileGetConfigOnly.json" + }, + "Get network profile with container network interfaces": { + "$ref": "./examples/NetworkProfileGetWithContainerNic.json" + } + } + }, + "put": { + "tags": [ + "NetworkProfiles" + ], + "operationId": "NetworkProfiles_CreateOrUpdate", + "description": "Creates or updates a network profile.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkProfileName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network profile." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkProfile" + }, + "description": "Parameters supplied to the create or update network profile operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting NetworkProfile resource.", + "schema": { + "$ref": "#/definitions/NetworkProfile" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting NetworkProfile resource.", + "schema": { + "$ref": "#/definitions/NetworkProfile" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create network profile defaults": { + "$ref": "./examples/NetworkProfileCreateConfigOnly.json" + } + }, + "x-ms-long-running-operation": false + }, + "patch": { + "tags": [ + "NetworkProfiles" + ], + "operationId": "NetworkProfiles_UpdateTags", + "description": "Updates network profile tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkProfileName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network profile." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update network profile tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting NetworkProfile resource.", + "schema": { + "$ref": "#/definitions/NetworkProfile" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update network profile tags": { + "$ref": "./examples/NetworkProfileUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkProfiles": { + "get": { + "tags": [ + "NetworkProfiles" + ], + "operationId": "NetworkProfiles_ListAll", + "description": "Gets all the network profiles in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkProfile resources.", + "schema": { + "$ref": "#/definitions/NetworkProfileListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all network profiles": { + "$ref": "./examples/NetworkProfileListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkProfiles": { + "get": { + "tags": [ + "NetworkProfiles" + ], + "operationId": "NetworkProfiles_List", + "description": "Gets all network profiles in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkProfile resources.", + "schema": { + "$ref": "#/definitions/NetworkProfileListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List resource group network profiles": { + "$ref": "./examples/NetworkProfileList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "NetworkProfilePropertiesFormat": { + "properties": { + "containerNetworkInterfaces": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ContainerNetworkInterface" + }, + "description": "List of child container network interfaces." + }, + "containerNetworkInterfaceConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ContainerNetworkInterfaceConfiguration" + }, + "description": "List of chid container network interface configurations." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the network profile resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the network profile resource." + } + }, + "description": "Network profile properties." + }, + "NetworkProfile": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkProfilePropertiesFormat", + "description": "Network profile properties." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Network profile resource." + }, + "NetworkProfileListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkProfile" + }, + "description": "A list of network profiles that exist in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListNetworkProfiles API service call." + }, + "ContainerNetworkInterfacePropertiesFormat": { + "properties": { + "containerNetworkInterfaceConfiguration": { + "readOnly": true, + "$ref": "#/definitions/ContainerNetworkInterfaceConfiguration", + "description": "Container network interface configuration from which this container network interface is created." + }, + "container": { + "$ref": "#/definitions/Container", + "description": "Reference to the container to which this container network interface is attached." + }, + "ipConfigurations": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ContainerNetworkInterfaceIpConfiguration" + }, + "description": "Reference to the ip configuration on this container nic." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the container network interface resource." + } + }, + "description": "Properties of container network interface." + }, + "ContainerNetworkInterface": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ContainerNetworkInterfacePropertiesFormat", + "description": "Container network interface properties." + }, + "name": { + "type": "string", + "description": "The name of the resource. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Sub Resource type." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Container network interface child resource." + }, + "ContainerNetworkInterfaceConfigurationPropertiesFormat": { + "properties": { + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/IPConfigurationProfile" + }, + "description": "A list of ip configurations of the container network interface configuration." + }, + "containerNetworkInterfaces": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "A list of container network interfaces created from this container network interface configuration." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the container network interface configuration resource." + } + }, + "description": "Container network interface configuration properties." + }, + "ContainerNetworkInterfaceConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ContainerNetworkInterfaceConfigurationPropertiesFormat", + "description": "Container network interface configuration properties." + }, + "name": { + "type": "string", + "description": "The name of the resource. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Sub Resource type." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Container network interface configuration child resource." + }, + "IPConfigurationProfilePropertiesFormat": { + "properties": { + "subnet": { + "$ref": "./virtualNetwork.json#/definitions/Subnet", + "description": "The reference to the subnet resource to create a container network interface ip configuration." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the IP configuration profile resource." + } + }, + "description": "IP configuration profile properties." + }, + "IPConfigurationProfile": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/IPConfigurationProfilePropertiesFormat", + "description": "Properties of the IP configuration profile." + }, + "name": { + "type": "string", + "description": "The name of the resource. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Sub Resource type." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IP configuration profile child resource." + }, + "Container": { + "properties": {}, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Reference to container resource in remote resource provider." + }, + "ContainerNetworkInterfaceIpConfigurationPropertiesFormat": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the container network interface IP configuration resource." + } + }, + "description": "Properties of the container network interface IP configuration." + }, + "ContainerNetworkInterfaceIpConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ContainerNetworkInterfaceIpConfigurationPropertiesFormat", + "description": "Properties of the container network interface IP configuration." + }, + "name": { + "type": "string", + "description": "The name of the resource. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Sub Resource type." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "description": "The ip configuration for a container network interface." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/networkSecurityGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/networkSecurityGroup.json new file mode 100644 index 000000000000..d3ab7117b5d6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/networkSecurityGroup.json @@ -0,0 +1,986 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2021-02-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}": { + "delete": { + "tags": [ + "NetworkSecurityGroups" + ], + "operationId": "NetworkSecurityGroups_Delete", + "description": "Deletes the specified network security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Request successful. Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete network security group": { + "$ref": "./examples/NetworkSecurityGroupDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "NetworkSecurityGroups" + ], + "operationId": "NetworkSecurityGroups_Get", + "description": "Gets the specified network security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NetworkSecurityGroup resource.", + "schema": { + "$ref": "#/definitions/NetworkSecurityGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get network security group": { + "$ref": "./examples/NetworkSecurityGroupGet.json" + } + } + }, + "put": { + "tags": [ + "NetworkSecurityGroups" + ], + "operationId": "NetworkSecurityGroups_CreateOrUpdate", + "description": "Creates or updates a network security group in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkSecurityGroup" + }, + "description": "Parameters supplied to the create or update network security group operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting NetworkSecurityGroup resource.", + "schema": { + "$ref": "#/definitions/NetworkSecurityGroup" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting NetworkSecurityGroup resource.", + "schema": { + "$ref": "#/definitions/NetworkSecurityGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create network security group": { + "$ref": "./examples/NetworkSecurityGroupCreate.json" + }, + "Create network security group with rule": { + "$ref": "./examples/NetworkSecurityGroupCreateWithRule.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "NetworkSecurityGroups" + ], + "operationId": "NetworkSecurityGroups_UpdateTags", + "description": "Updates a network security group tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update network security group tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting NetworkSecurityGroup resource.", + "schema": { + "$ref": "#/definitions/NetworkSecurityGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update network security group tags": { + "$ref": "./examples/NetworkSecurityGroupUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkSecurityGroups": { + "get": { + "tags": [ + "NetworkSecurityGroups" + ], + "operationId": "NetworkSecurityGroups_ListAll", + "description": "Gets all network security groups in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkSecurityGroup resources.", + "schema": { + "$ref": "#/definitions/NetworkSecurityGroupListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all network security groups": { + "$ref": "./examples/NetworkSecurityGroupListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups": { + "get": { + "tags": [ + "NetworkSecurityGroups" + ], + "operationId": "NetworkSecurityGroups_List", + "description": "Gets all network security groups in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkSecurityGroup resources.", + "schema": { + "$ref": "#/definitions/NetworkSecurityGroupListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List network security groups in resource group": { + "$ref": "./examples/NetworkSecurityGroupList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}/securityRules/{securityRuleName}": { + "delete": { + "tags": [ + "SecurityRules" + ], + "operationId": "SecurityRules_Delete", + "description": "Deletes the specified network security rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "name": "securityRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the security rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete network security rule from network security group": { + "$ref": "./examples/NetworkSecurityGroupRuleDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "SecurityRules" + ], + "operationId": "SecurityRules_Get", + "description": "Get the specified network security rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "name": "securityRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the security rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting SecurityRule resource.", + "schema": { + "$ref": "#/definitions/SecurityRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get network security rule in network security group": { + "$ref": "./examples/NetworkSecurityGroupRuleGet.json" + } + } + }, + "put": { + "tags": [ + "SecurityRules" + ], + "operationId": "SecurityRules_CreateOrUpdate", + "description": "Creates or updates a security rule in the specified network security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "name": "securityRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the security rule." + }, + { + "name": "securityRuleParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SecurityRule" + }, + "description": "Parameters supplied to the create or update network security rule operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting SecurityRule resource.", + "schema": { + "$ref": "#/definitions/SecurityRule" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting SecurityRule resource.", + "schema": { + "$ref": "#/definitions/SecurityRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create security rule": { + "$ref": "./examples/NetworkSecurityGroupRuleCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}/securityRules": { + "get": { + "tags": [ + "SecurityRules" + ], + "operationId": "SecurityRules_List", + "description": "Gets all security rules in a network security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of SecurityRule resources.", + "schema": { + "$ref": "#/definitions/SecurityRuleListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List network security rules in network security group": { + "$ref": "./examples/NetworkSecurityGroupRuleList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}/defaultSecurityRules": { + "get": { + "tags": [ + "SecurityRules" + ], + "operationId": "DefaultSecurityRules_List", + "description": "Gets all default security rules in a network security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of SecurityRule resources.", + "schema": { + "$ref": "#/definitions/SecurityRuleListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DefaultSecurityRuleList": { + "$ref": "./examples/DefaultSecurityRuleList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}/defaultSecurityRules/{defaultSecurityRuleName}": { + "get": { + "tags": [ + "SecurityRules" + ], + "operationId": "DefaultSecurityRules_Get", + "description": "Get the specified default network security rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "name": "defaultSecurityRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the default security rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting SecurityRule resource.", + "schema": { + "$ref": "#/definitions/SecurityRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DefaultSecurityRuleGet": { + "$ref": "./examples/DefaultSecurityRuleGet.json" + } + } + } + } + }, + "definitions": { + "SecurityRulePropertiesFormat": { + "properties": { + "description": { + "type": "string", + "description": "A description for this rule. Restricted to 140 chars." + }, + "protocol": { + "type": "string", + "description": "Network protocol this rule applies to.", + "enum": [ + "Tcp", + "Udp", + "Icmp", + "Esp", + "*", + "Ah" + ], + "x-ms-enum": { + "name": "SecurityRuleProtocol", + "modelAsString": true + } + }, + "sourcePortRange": { + "type": "string", + "description": "The source port or range. Integer or range between 0 and 65535. Asterisk '*' can also be used to match all ports." + }, + "destinationPortRange": { + "type": "string", + "description": "The destination port or range. Integer or range between 0 and 65535. Asterisk '*' can also be used to match all ports." + }, + "sourceAddressPrefix": { + "type": "string", + "description": "The CIDR or source IP range. Asterisk '*' can also be used to match all source IPs. Default tags such as 'VirtualNetwork', 'AzureLoadBalancer' and 'Internet' can also be used. If this is an ingress rule, specifies where network traffic originates from." + }, + "sourceAddressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The CIDR or source IP ranges." + }, + "sourceApplicationSecurityGroups": { + "type": "array", + "items": { + "$ref": "./applicationSecurityGroup.json#/definitions/ApplicationSecurityGroup" + }, + "description": "The application security group specified as source." + }, + "destinationAddressPrefix": { + "type": "string", + "description": "The destination address prefix. CIDR or destination IP range. Asterisk '*' can also be used to match all source IPs. Default tags such as 'VirtualNetwork', 'AzureLoadBalancer' and 'Internet' can also be used." + }, + "destinationAddressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The destination address prefixes. CIDR or destination IP ranges." + }, + "destinationApplicationSecurityGroups": { + "type": "array", + "items": { + "$ref": "./applicationSecurityGroup.json#/definitions/ApplicationSecurityGroup" + }, + "description": "The application security group specified as destination." + }, + "sourcePortRanges": { + "type": "array", + "items": { + "type": "string", + "description": "The source port." + }, + "description": "The source port ranges." + }, + "destinationPortRanges": { + "type": "array", + "items": { + "type": "string", + "description": "The destination port." + }, + "description": "The destination port ranges." + }, + "access": { + "$ref": "#/definitions/SecurityRuleAccess", + "description": "The network traffic is allowed or denied." + }, + "priority": { + "type": "integer", + "format": "int32", + "description": "The priority of the rule. The value can be between 100 and 4096. The priority number must be unique for each rule in the collection. The lower the priority number, the higher the priority of the rule." + }, + "direction": { + "$ref": "#/definitions/SecurityRuleDirection", + "description": "The direction of the rule. The direction specifies if rule will be evaluated on incoming or outgoing traffic." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the security rule resource." + } + }, + "required": [ + "protocol", + "access", + "direction" + ], + "description": "Security rule resource." + }, + "SecurityRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SecurityRulePropertiesFormat", + "description": "Properties of the security rule." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "description": "The type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Network security rule." + }, + "SecurityRuleListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SecurityRule" + }, + "description": "The security rules in a network security group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListSecurityRule API service call. Retrieves all security rules that belongs to a network security group." + }, + "NetworkSecurityGroupPropertiesFormat": { + "properties": { + "securityRules": { + "type": "array", + "items": { + "$ref": "#/definitions/SecurityRule" + }, + "description": "A collection of security rules of the network security group." + }, + "defaultSecurityRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SecurityRule" + }, + "description": "The default security rules of network security group." + }, + "networkInterfaces": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkInterface.json#/definitions/NetworkInterface" + }, + "description": "A collection of references to network interfaces." + }, + "subnets": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./virtualNetwork.json#/definitions/Subnet" + }, + "description": "A collection of references to subnets." + }, + "flowLogs": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkWatcher.json#/definitions/FlowLog" + }, + "description": "A collection of references to flow log resources." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the network security group resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the network security group resource." + } + }, + "description": "Network Security Group resource." + }, + "NetworkSecurityGroup": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkSecurityGroupPropertiesFormat", + "description": "Properties of the network security group." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "NetworkSecurityGroup resource." + }, + "NetworkSecurityGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkSecurityGroup" + }, + "description": "A list of NetworkSecurityGroup resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListNetworkSecurityGroups API service call." + }, + "SecurityRuleAccess": { + "type": "string", + "description": "Whether network traffic is allowed or denied.", + "enum": [ + "Allow", + "Deny" + ], + "x-ms-enum": { + "name": "SecurityRuleAccess", + "modelAsString": true + } + }, + "SecurityRuleDirection": { + "type": "string", + "description": "The direction of the rule. The direction specifies if rule will be evaluated on incoming or outgoing traffic.", + "enum": [ + "Inbound", + "Outbound" + ], + "x-ms-enum": { + "name": "SecurityRuleDirection", + "modelAsString": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/networkVirtualAppliance.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/networkVirtualAppliance.json new file mode 100644 index 000000000000..1f8841d91162 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/networkVirtualAppliance.json @@ -0,0 +1,1170 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2021-02-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkVirtualAppliances/{networkVirtualApplianceName}": { + "delete": { + "tags": [ + "NetworkVirtualAppliances" + ], + "operationId": "NetworkVirtualAppliances_Delete", + "description": "Deletes the specified Network Virtual Appliance.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkVirtualApplianceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of Network Virtual Appliance." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete NetworkVirtualAppliance": { + "$ref": "./examples/NetworkVirtualApplianceDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "NetworkVirtualAppliances" + ], + "operationId": "NetworkVirtualAppliances_Get", + "description": "Gets the specified Network Virtual Appliance.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkVirtualApplianceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of Network Virtual Appliance." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a Network Virtual Appliance resource.", + "schema": { + "$ref": "#/definitions/NetworkVirtualAppliance" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get NetworkVirtualAppliance": { + "$ref": "./examples/NetworkVirtualApplianceGet.json" + } + } + }, + "patch": { + "tags": [ + "NetworkVirtualAppliances" + ], + "operationId": "NetworkVirtualAppliances_UpdateTags", + "description": "Updates a Network Virtual Appliance.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of Network Virtual Appliance." + }, + { + "name": "networkVirtualApplianceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of Network Virtual Appliance being updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to Update Network Virtual Appliance Tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of Network Virtual Appliance updated.", + "schema": { + "$ref": "#/definitions/NetworkVirtualAppliance" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update NetworkVirtualAppliance": { + "$ref": "./examples/NetworkVirtualApplianceUpdateTags.json" + } + } + }, + "put": { + "tags": [ + "NetworkVirtualAppliances" + ], + "operationId": "NetworkVirtualAppliances_CreateOrUpdate", + "description": "Creates or updates the specified Network Virtual Appliance.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkVirtualApplianceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of Network Virtual Appliance." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkVirtualAppliance" + }, + "description": "Parameters supplied to the create or update Network Virtual Appliance." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Network Virtual Appliance resource.", + "schema": { + "$ref": "#/definitions/NetworkVirtualAppliance" + } + }, + "201": { + "description": "Request received successfully. The operation returns the resulting Network Virtual Appliance resource.", + "schema": { + "$ref": "#/definitions/NetworkVirtualAppliance" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create NetworkVirtualAppliance": { + "$ref": "./examples/NetworkVirtualAppliancePut.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkVirtualAppliances": { + "get": { + "tags": [ + "NetworkVirtualAppliances" + ], + "operationId": "NetworkVirtualAppliances_ListByResourceGroup", + "description": "Lists all Network Virtual Appliances in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of Network Virtual Appliance resources.", + "schema": { + "$ref": "#/definitions/NetworkVirtualApplianceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Network Virtual Appliance for a given resource group": { + "$ref": "./examples/NetworkVirtualApplianceListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkVirtualAppliances": { + "get": { + "tags": [ + "NetworkVirtualAppliances" + ], + "operationId": "NetworkVirtualAppliances_List", + "description": "Gets all Network Virtual Appliances in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of Network Virtual Appliance resources.", + "schema": { + "$ref": "#/definitions/NetworkVirtualApplianceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Network Virtual Appliances for a given subscription": { + "$ref": "./examples/NetworkVirtualApplianceListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkVirtualAppliances/{networkVirtualApplianceName}/virtualApplianceSites/{siteName}": { + "delete": { + "tags": [ + "VirtualApplianceSites" + ], + "operationId": "VirtualApplianceSites_Delete", + "description": "Deletes the specified site from a Virtual Appliance.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkVirtualApplianceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Virtual Appliance." + }, + { + "name": "siteName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the site." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete Network Virtual Appliance Site": { + "$ref": "./examples/NetworkVirtualApplianceSiteDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "VirtualApplianceSites" + ], + "operationId": "VirtualApplianceSites_Get", + "description": "Gets the specified Virtual Appliance Site.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkVirtualApplianceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Virtual Appliance." + }, + { + "name": "siteName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the site." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a Network Virtual Appliance Site resource.", + "schema": { + "$ref": "#/definitions/VirtualApplianceSite" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetNetwork Virtual Appliance Site": { + "$ref": "./examples/NetworkVirtualApplianceSiteGet.json" + } + } + }, + "put": { + "tags": [ + "VirtualApplianceSites" + ], + "operationId": "VirtualApplianceSites_CreateOrUpdate", + "description": "Creates or updates the specified Network Virtual Appliance Site.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkVirtualApplianceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Virtual Appliance." + }, + { + "name": "siteName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the site." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualApplianceSite" + }, + "description": "Parameters supplied to the create or update Network Virtual Appliance Site operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Network Virtual Appliance Site resource.", + "schema": { + "$ref": "#/definitions/VirtualApplianceSite" + } + }, + "201": { + "description": "Request received successfully. The operation returns the resulting Network Virtual Appliance Site resource.", + "schema": { + "$ref": "#/definitions/VirtualApplianceSite" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create Network Virtual Appliance Site": { + "$ref": "./examples/NetworkVirtualApplianceSitePut.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkVirtualAppliances/{networkVirtualApplianceName}/virtualApplianceSites": { + "get": { + "tags": [ + "VirtualApplianceSites" + ], + "operationId": "VirtualApplianceSites_List", + "description": "Lists all Network Virtual Appliance Sites in a Network Virtual Appliance resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkVirtualApplianceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Virtual Appliance." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of Network Virtual Appliance site resources.", + "schema": { + "$ref": "#/definitions/NetworkVirtualApplianceSiteListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Network Virtual Appliance sites for a given Network Virtual Appliance": { + "$ref": "./examples/NetworkVirtualApplianceSiteList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkVirtualApplianceSkus": { + "get": { + "tags": [ + "VirtualApplianceSkus" + ], + "operationId": "VirtualApplianceSkus_List", + "description": "List all SKUs available for a virtual appliance.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the list of all virtual appliance skus.", + "schema": { + "$ref": "#/definitions/NetworkVirtualApplianceSkuListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "NetworkVirtualApplianceSkuListResult": { + "$ref": "./examples/NetworkVirtualApplianceSkuList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkVirtualApplianceSkus/{skuName}": { + "get": { + "tags": [ + "VirtualApplianceSkus" + ], + "operationId": "VirtualApplianceSkus_Get", + "description": "Retrieves a single available sku for network virtual appliance.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "skuName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the Sku." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the requested NetworkVirtualAppliance sku information.", + "schema": { + "$ref": "#/definitions/NetworkVirtualApplianceSku" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "NetworkVirtualApplianceSkuGet": { + "$ref": "./examples/NetworkVirtualApplianceSkuGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkVirtualAppliances/{networkVirtualApplianceName}/inboundSecurityRules/{ruleCollectionName}": { + "put": { + "operationId": "InboundSecurityRule_CreateOrUpdate", + "description": "Creates or updates the specified Network Virtual Appliance Inbound Security Rules.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkVirtualApplianceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Virtual Appliance." + }, + { + "name": "ruleCollectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of security rule collection." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/InboundSecurityRule" + }, + "description": "Parameters supplied to the create or update Network Virtual Appliance Inbound Security Rules operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Network Virtual Appliance Inbound Security Rules resource.", + "schema": { + "$ref": "#/definitions/InboundSecurityRule" + } + }, + "201": { + "description": "Request received successfully. The operation returns the resulting Network Virtual Appliance Inbound Security Rules resource.", + "schema": { + "$ref": "#/definitions/InboundSecurityRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create Network Virtual Appliance Inbound Security Rules": { + "$ref": "./examples/InboundSecurityRulePut.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + } + }, + "definitions": { + "NetworkVirtualAppliance": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkVirtualAppliancePropertiesFormat", + "description": "Properties of the Network Virtual Appliance." + }, + "identity": { + "$ref": "./network.json#/definitions/ManagedServiceIdentity", + "description": "The service principal that has read access to cloud-init and config blob." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "NetworkVirtualAppliance Resource." + }, + "NetworkVirtualAppliancePropertiesFormat": { + "properties": { + "nvaSku": { + "readOnly": false, + "description": "Network Virtual Appliance SKU.", + "$ref": "#/definitions/VirtualApplianceSkuProperties" + }, + "addressPrefix": { + "type": "string", + "readOnly": true, + "description": "Address Prefix." + }, + "bootStrapConfigurationBlobs": { + "type": "array", + "readOnly": false, + "description": "BootStrapConfigurationBlobs storage URLs.", + "items": { + "type": "string" + } + }, + "virtualHub": { + "readOnly": false, + "$ref": "./network.json#/definitions/SubResource", + "description": "The Virtual Hub where Network Virtual Appliance is being deployed." + }, + "cloudInitConfigurationBlobs": { + "type": "array", + "readOnly": false, + "description": "CloudInitConfigurationBlob storage URLs.", + "items": { + "type": "string" + } + }, + "cloudInitConfiguration": { + "type": "string", + "readOnly": false, + "description": "CloudInitConfiguration string in plain text." + }, + "virtualApplianceAsn": { + "type": "integer", + "readOnly": false, + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "description": "VirtualAppliance ASN." + }, + "virtualApplianceNics": { + "type": "array", + "readOnly": true, + "description": "List of Virtual Appliance Network Interfaces.", + "items": { + "$ref": "#/definitions/VirtualApplianceNicProperties" + } + }, + "virtualApplianceSites": { + "type": "array", + "readOnly": true, + "description": "List of references to VirtualApplianceSite.", + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + }, + "inboundSecurityRules": { + "type": "array", + "readOnly": true, + "description": "List of references to InboundSecurityRules.", + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + }, + "provisioningState": { + "description": "The provisioning state of the resource.", + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState" + } + }, + "description": "Network Virtual Appliance definition." + }, + "VirtualApplianceSkuProperties": { + "properties": { + "vendor": { + "type": "string", + "readOnly": false, + "description": "Virtual Appliance Vendor." + }, + "bundledScaleUnit": { + "type": "string", + "readOnly": false, + "description": "Virtual Appliance Scale Unit." + }, + "marketPlaceVersion": { + "type": "string", + "readOnly": false, + "description": "Virtual Appliance Version." + } + }, + "description": "Network Virtual Appliance Sku Properties." + }, + "VirtualApplianceNicProperties": { + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "NIC name." + }, + "publicIpAddress": { + "type": "string", + "readOnly": true, + "description": "Public IP address." + }, + "privateIpAddress": { + "type": "string", + "readOnly": true, + "description": "Private IP address." + } + }, + "description": "Network Virtual Appliance NIC properties." + }, + "VirtualApplianceSite": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualApplianceSiteProperties", + "description": "The properties of the Virtual Appliance Sites." + }, + "name": { + "type": "string", + "description": "Name of the virtual appliance site." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Site type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Virtual Appliance Site resource." + }, + "VirtualApplianceSiteProperties": { + "properties": { + "addressPrefix": { + "type": "string", + "readOnly": false, + "description": "Address Prefix." + }, + "o365Policy": { + "readOnly": false, + "description": "Office 365 Policy.", + "$ref": "#/definitions/Office365PolicyProperties" + }, + "provisioningState": { + "description": "The provisioning state of the resource.", + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState" + } + }, + "description": "Properties of the rule group." + }, + "Office365PolicyProperties": { + "properties": { + "breakOutCategories": { + "readOnly": false, + "description": "Office 365 breakout categories.", + "$ref": "#/definitions/BreakOutCategoryPolicies" + } + }, + "description": "Network Virtual Appliance Sku Properties." + }, + "BreakOutCategoryPolicies": { + "properties": { + "allow": { + "type": "boolean", + "readOnly": false, + "description": "Flag to control breakout of o365 allow category." + }, + "optimize": { + "type": "boolean", + "readOnly": false, + "description": "Flag to control breakout of o365 optimize category." + }, + "default": { + "type": "boolean", + "readOnly": false, + "description": "Flag to control breakout of o365 default category." + } + }, + "description": "Network Virtual Appliance Sku Properties." + }, + "NetworkVirtualApplianceSku": { + "title": "Available NetworkVirtualApplianceSkus", + "description": "Definition of the NetworkVirtualApplianceSkus resource.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkVirtualApplianceSkuPropertiesFormat", + "description": "NetworkVirtualApplianceSku properties." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ] + }, + "NetworkVirtualApplianceSkuPropertiesFormat": { + "title": "Network Virtual Appliance Sku Properties", + "description": "Properties specific to NetworkVirtualApplianceSkus.", + "properties": { + "vendor": { + "type": "string", + "readOnly": true, + "description": "Network Virtual Appliance Sku vendor." + }, + "availableVersions": { + "type": "array", + "readOnly": true, + "description": "Available Network Virtual Appliance versions.", + "items": { + "type": "string" + } + }, + "availableScaleUnits": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkVirtualApplianceSkuInstances" + }, + "description": "The list of scale units available." + } + } + }, + "NetworkVirtualApplianceSkuInstances": { + "title": "Network Virtual Appliance Sku Instances", + "description": "List of available Sku and instances.", + "properties": { + "scaleUnit": { + "type": "string", + "readOnly": true, + "description": "Scale Unit." + }, + "instanceCount": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "Instance Count." + } + } + }, + "NetworkVirtualApplianceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkVirtualAppliance" + }, + "description": "List of Network Virtual Appliances." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListNetworkVirtualAppliances API service call." + }, + "NetworkVirtualApplianceSiteListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualApplianceSite" + }, + "description": "List of Network Virtual Appliance sites." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListNetworkVirtualApplianceSites API service call." + }, + "NetworkVirtualApplianceSkuListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkVirtualApplianceSku" + }, + "description": "List of Network Virtual Appliance Skus that are available." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListNetworkVirtualApplianceSkus API service call." + }, + "InboundSecurityRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/InboundSecurityRuleProperties", + "description": "The properties of the Inbound Security Rules." + }, + "name": { + "type": "string", + "description": "Name of security rule collection." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "NVA inbound security rule type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "NVA Inbound Security Rule resource." + }, + "InboundSecurityRuleProperties": { + "properties": { + "rules": { + "type": "array", + "readOnly": false, + "description": "List of allowed rules.", + "items": { + "$ref": "#/definitions/InboundSecurityRules" + } + }, + "provisioningState": { + "description": "The provisioning state of the resource.", + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState" + } + }, + "description": "Properties of the Inbound Security Rules resource." + }, + "InboundSecurityRules": { + "properties": { + "protocol": { + "type": "string", + "enum": [ + "TCP", + "UDP" + ], + "x-ms-enum": { + "name": "InboundSecurityRulesProtocol", + "modelAsString": true + }, + "description": "Protocol. This should be either TCP or UDP." + }, + "sourceAddressPrefix": { + "type": "string", + "description": "The CIDR or source IP range. Only /30, /31 and /32 Ip ranges are allowed." + }, + "destinationPortRange": { + "type": "integer", + "format": "int32", + "minimum": 0, + "maximum": 65535, + "description": "NVA port ranges to be opened up. One needs to provide specific ports." + } + }, + "description": "Properties of the Inbound Security Rules resource." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/networkWatcher.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/networkWatcher.json new file mode 100644 index 000000000000..c010eb888c98 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/networkWatcher.json @@ -0,0 +1,4744 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2021-02-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}": { + "put": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_CreateOrUpdate", + "description": "Creates or updates a network watcher in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkWatcher" + }, + "description": "Parameters that define the network watcher resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting network watcher resource.", + "schema": { + "$ref": "#/definitions/NetworkWatcher" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting network watcher resource.", + "schema": { + "$ref": "#/definitions/NetworkWatcher" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create network watcher": { + "$ref": "./examples/NetworkWatcherCreate.json" + } + } + }, + "get": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_Get", + "description": "Gets the specified network watcher by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a network watcher resource.", + "schema": { + "$ref": "#/definitions/NetworkWatcher" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get network watcher": { + "$ref": "./examples/NetworkWatcherGet.json" + } + } + }, + "delete": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_Delete", + "description": "Deletes the specified network watcher resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete network watcher": { + "$ref": "./examples/NetworkWatcherDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_UpdateTags", + "description": "Updates a network watcher tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update network watcher tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting network watcher resource.", + "schema": { + "$ref": "#/definitions/NetworkWatcher" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Update network watcher tags": { + "$ref": "./examples/NetworkWatcherUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers": { + "get": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_List", + "description": "Gets all network watchers by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of network watcher resources.", + "schema": { + "$ref": "#/definitions/NetworkWatcherListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "List network watchers": { + "$ref": "./examples/NetworkWatcherList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkWatchers": { + "get": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_ListAll", + "description": "Gets all network watchers by subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of network watcher resources.", + "schema": { + "$ref": "#/definitions/NetworkWatcherListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "List all network watchers": { + "$ref": "./examples/NetworkWatcherListAll.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/topology": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetTopology", + "description": "Gets the current network topology by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TopologyParameters" + }, + "description": "Parameters that define the representation of topology." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the topology of resource group.", + "schema": { + "$ref": "#/definitions/Topology" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Topology": { + "$ref": "./examples/NetworkWatcherTopologyGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/ipFlowVerify": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_VerifyIPFlow", + "description": "Verify IP flow from the specified VM to a location given the currently configured NSG rules.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VerificationIPFlowParameters" + }, + "description": "Parameters that define the IP flow to be verified." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the result of IP flow verification.", + "schema": { + "$ref": "#/definitions/VerificationIPFlowResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/VerificationIPFlowResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Ip flow verify": { + "$ref": "./examples/NetworkWatcherIpFlowVerify.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/nextHop": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetNextHop", + "description": "Gets the next hop from the specified VM.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NextHopParameters" + }, + "description": "Parameters that define the source and destination endpoint." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the next hop from the VM.", + "schema": { + "$ref": "#/definitions/NextHopResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/NextHopResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get next hop": { + "$ref": "./examples/NetworkWatcherNextHopGet.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/securityGroupView": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetVMSecurityRules", + "description": "Gets the configured and effective security group rules on the specified VM.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SecurityGroupViewParameters" + }, + "description": "Parameters that define the VM to check security groups for." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns security group rules on the VM.", + "schema": { + "$ref": "#/definitions/SecurityGroupViewResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/SecurityGroupViewResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get security group view": { + "$ref": "./examples/NetworkWatcherSecurityGroupViewGet.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures/{packetCaptureName}": { + "put": { + "tags": [ + "PacketCaptures" + ], + "operationId": "PacketCaptures_Create", + "description": "Create and start a packet capture on the specified VM.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "packetCaptureName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the packet capture session." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PacketCapture" + }, + "description": "Parameters that define the create packet capture operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Request successful. The operation returns the resulting packet capture session.", + "schema": { + "$ref": "#/definitions/PacketCaptureResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create packet capture": { + "$ref": "./examples/NetworkWatcherPacketCaptureCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "PacketCaptures" + ], + "operationId": "PacketCaptures_Get", + "description": "Gets a packet capture session by name.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "packetCaptureName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the packet capture session." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a packet capture session.", + "schema": { + "$ref": "#/definitions/PacketCaptureResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get packet capture": { + "$ref": "./examples/NetworkWatcherPacketCaptureGet.json" + } + } + }, + "delete": { + "tags": [ + "PacketCaptures" + ], + "operationId": "PacketCaptures_Delete", + "description": "Deletes the specified packet capture session.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "packetCaptureName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the packet capture session." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete packet capture": { + "$ref": "./examples/NetworkWatcherPacketCaptureDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures/{packetCaptureName}/stop": { + "post": { + "tags": [ + "PacketCaptures" + ], + "operationId": "PacketCaptures_Stop", + "description": "Stops a specified packet capture session.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "packetCaptureName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the packet capture session." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation stops the packet capture session." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Stop packet capture": { + "$ref": "./examples/NetworkWatcherPacketCaptureStop.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures/{packetCaptureName}/queryStatus": { + "post": { + "tags": [ + "PacketCaptures" + ], + "operationId": "PacketCaptures_GetStatus", + "description": "Query the status of a running packet capture session.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "packetCaptureName", + "in": "path", + "required": true, + "type": "string", + "description": "The name given to the packet capture session." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful query of packet capture status.", + "schema": { + "$ref": "#/definitions/PacketCaptureQueryStatusResult" + } + }, + "202": { + "description": "Accepted query status of packet capture.", + "schema": { + "$ref": "#/definitions/PacketCaptureQueryStatusResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Query packet capture status": { + "$ref": "./examples/NetworkWatcherPacketCaptureQueryStatus.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures": { + "get": { + "tags": [ + "PacketCaptures" + ], + "operationId": "PacketCaptures_List", + "description": "Lists all packet capture sessions within the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful packet capture enumeration request.", + "schema": { + "$ref": "#/definitions/PacketCaptureListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "List packet captures": { + "$ref": "./examples/NetworkWatcherPacketCapturesList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/troubleshoot": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetTroubleshooting", + "description": "Initiate troubleshooting on a specified resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TroubleshootingParameters" + }, + "description": "Parameters that define the resource to troubleshoot." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful troubleshooting request.", + "schema": { + "$ref": "#/definitions/TroubleshootingResult" + } + }, + "202": { + "description": "Accepted get troubleshooting request.", + "schema": { + "$ref": "#/definitions/TroubleshootingResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get troubleshooting": { + "$ref": "./examples/NetworkWatcherTroubleshootGet.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/queryTroubleshootResult": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetTroubleshootingResult", + "description": "Get the last completed troubleshooting result on a specified resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/QueryTroubleshootingParameters" + }, + "description": "Parameters that define the resource to query the troubleshooting result." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful get troubleshooting result request.", + "schema": { + "$ref": "#/definitions/TroubleshootingResult" + } + }, + "202": { + "description": "Accepted get troubleshooting result request.", + "schema": { + "$ref": "#/definitions/TroubleshootingResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get troubleshoot result": { + "$ref": "./examples/NetworkWatcherTroubleshootResultQuery.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/configureFlowLog": { + "post": { + "tags": [ + "NetworkWatchers", + "TrafficAnalytics" + ], + "operationId": "NetworkWatchers_SetFlowLogConfiguration", + "description": "Configures flow log and traffic analytics (optional) on a specified resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FlowLogInformation" + }, + "description": "Parameters that define the configuration of flow log." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful request for setting flow log and traffic analytics (optional) configuration.", + "schema": { + "$ref": "#/definitions/FlowLogInformation" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/FlowLogInformation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Configure flow log": { + "$ref": "./examples/NetworkWatcherFlowLogConfigure.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/queryFlowLogStatus": { + "post": { + "tags": [ + "NetworkWatchers", + "TrafficAnalytics" + ], + "operationId": "NetworkWatchers_GetFlowLogStatus", + "description": "Queries status of flow log and traffic analytics (optional) on a specified resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FlowLogStatusParameters" + }, + "description": "Parameters that define a resource to query flow log and traffic analytics (optional) status." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful request for query flow log and traffic analytics (optional) status.", + "schema": { + "$ref": "#/definitions/FlowLogInformation" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/FlowLogInformation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get flow log status": { + "$ref": "./examples/NetworkWatcherFlowLogStatusQuery.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectivityCheck": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_CheckConnectivity", + "description": "Verifies the possibility of establishing a direct TCP connection from a virtual machine to a given endpoint including another VM or an arbitrary remote server.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ConnectivityParameters" + }, + "description": "Parameters that determine how the connectivity check will be performed." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful request for checking connectivity.", + "schema": { + "$ref": "#/definitions/ConnectivityInformation" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/ConnectivityInformation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Check connectivity": { + "$ref": "./examples/NetworkWatcherConnectivityCheck.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/azureReachabilityReport": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetAzureReachabilityReport", + "description": "NOTE: This feature is currently in preview and still being tested for stability. Gets the relative latency score for internet service providers from a specified location to Azure regions.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AzureReachabilityReportParameters" + }, + "description": "Parameters that determine Azure reachability report configuration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful request for Azure reachability report.", + "schema": { + "$ref": "#/definitions/AzureReachabilityReport" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/AzureReachabilityReport" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Azure Reachability Report": { + "$ref": "./examples/NetworkWatcherAzureReachabilityReportGet.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/availableProvidersList": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_ListAvailableProviders", + "description": "NOTE: This feature is currently in preview and still being tested for stability. Lists all available internet service providers for a specified Azure region.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AvailableProvidersListParameters" + }, + "description": "Parameters that scope the list of available providers." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful request for list of available providers.", + "schema": { + "$ref": "#/definitions/AvailableProvidersList" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/AvailableProvidersList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Available Providers List": { + "$ref": "./examples/NetworkWatcherAvailableProvidersListGet.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/networkConfigurationDiagnostic": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetNetworkConfigurationDiagnostic", + "description": "Gets Network Configuration Diagnostic data to help customers understand and debug network behavior. It provides detailed information on what security rules were applied to a specified traffic flow and the result of evaluating these rules. Customers must provide details of a flow like source, destination, protocol, etc. The API returns whether traffic was allowed or denied, the rules evaluated for the specified flow and the evaluation results.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkConfigurationDiagnosticParameters" + }, + "description": "Parameters to get network configuration diagnostic." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the result of network configuration diagnostic.", + "schema": { + "$ref": "#/definitions/NetworkConfigurationDiagnosticResponse" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/NetworkConfigurationDiagnosticResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Network configuration diagnostic": { + "$ref": "./examples/NetworkWatcherNetworkConfigurationDiagnostic.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}": { + "put": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_CreateOrUpdate", + "description": "Create or update a connection monitor.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ConnectionMonitor" + }, + "description": "Parameters that define the operation to create a connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "migrate", + "in": "query", + "required": false, + "type": "string", + "description": "Value indicating whether connection monitor V1 should be migrated to V2 format." + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting network watcher resource.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorResult" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting network watcher resource.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create connection monitor V1": { + "$ref": "./examples/NetworkWatcherConnectionMonitorCreate.json" + }, + "Create connection monitor V2": { + "$ref": "./examples/NetworkWatcherConnectionMonitorV2Create.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Get", + "description": "Gets a connection monitor by name.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a connection monitor.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get connection monitor": { + "$ref": "./examples/NetworkWatcherConnectionMonitorGet.json" + } + } + }, + "delete": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Delete", + "description": "Deletes the specified connection monitor.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted. The operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete connection monitor": { + "$ref": "./examples/NetworkWatcherConnectionMonitorDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_UpdateTags", + "description": "Update tags of the specified connection monitor.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update connection monitor tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns updated connection monitor.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Update connection monitor tags": { + "$ref": "./examples/NetworkWatcherConnectionMonitorUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}/stop": { + "post": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Stop", + "description": "Stops the specified connection monitor.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation stops the connection monitor." + }, + "202": { + "description": "Accepted. The operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Stop connection monitor": { + "$ref": "./examples/NetworkWatcherConnectionMonitorStop.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}/start": { + "post": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Start", + "description": "Starts the specified connection monitor.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation starts the connection monitor." + }, + "202": { + "description": "Accepted. The operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Start connection monitor": { + "$ref": "./examples/NetworkWatcherConnectionMonitorStart.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}/query": { + "post": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Query", + "description": "Query a snapshot of the most recent connection states.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name given to the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful query of connection states.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorQueryResult" + } + }, + "202": { + "description": "Accepted query of connection states.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorQueryResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Query connection monitor": { + "$ref": "./examples/NetworkWatcherConnectionMonitorQuery.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors": { + "get": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_List", + "description": "Lists all connection monitors for the specified Network Watcher.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful connection monitor enumeration request.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "List connection monitors": { + "$ref": "./examples/NetworkWatcherConnectionMonitorList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/flowLogs/{flowLogName}": { + "put": { + "tags": [ + "FlowLogs" + ], + "operationId": "FlowLogs_CreateOrUpdate", + "description": "Create or update a flow log for the specified network security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "flowLogName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the flow log." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FlowLog" + }, + "description": "Parameters that define the create or update flow log resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Request successful. The operation returns the resulting flow log resource.", + "schema": { + "$ref": "#/definitions/FlowLog" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting flow log resource.", + "schema": { + "$ref": "#/definitions/FlowLog" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or update flow log": { + "$ref": "./examples/NetworkWatcherFlowLogCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "FlowLogs" + ], + "operationId": "FlowLogs_UpdateTags", + "description": "Update tags of the specified flow log.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "flowLogName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the flow log." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update flow log tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns updated flow log.", + "schema": { + "$ref": "#/definitions/FlowLog" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Update flow log tags": { + "$ref": "./examples/NetworkWatcherFlowLogUpdateTags.json" + } + } + }, + "get": { + "tags": [ + "FlowLogs" + ], + "operationId": "FlowLogs_Get", + "description": "Gets a flow log resource by name.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "flowLogName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the flow log resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a flow log resource.", + "schema": { + "$ref": "#/definitions/FlowLog" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get flow log": { + "$ref": "./examples/NetworkWatcherFlowLogGet.json" + } + } + }, + "delete": { + "tags": [ + "FlowLogs" + ], + "operationId": "FlowLogs_Delete", + "description": "Deletes the specified flow log resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "flowLogName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the flow log resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete flow log": { + "$ref": "./examples/NetworkWatcherFlowLogDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/flowLogs": { + "get": { + "tags": [ + "FlowLogs" + ], + "operationId": "FlowLogs_List", + "description": "Lists all flow log resources for the specified Network Watcher.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful flow log enumeration request.", + "schema": { + "$ref": "#/definitions/FlowLogListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List connection monitors": { + "$ref": "./examples/NetworkWatcherFlowLogList.json" + } + } + } + } + }, + "definitions": { + "ErrorResponse": { + "description": "The error object.", + "properties": { + "error": { + "title": "Error", + "$ref": "./network.json#/definitions/ErrorDetails", + "description": "The error details object." + } + } + }, + "NetworkWatcher": { + "properties": { + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkWatcherPropertiesFormat", + "description": "Properties of the network watcher." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Network watcher in a resource group." + }, + "NetworkWatcherPropertiesFormat": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the network watcher resource." + } + }, + "description": "The network watcher properties." + }, + "NetworkWatcherListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkWatcher" + }, + "description": "List of network watcher resources." + } + }, + "description": "Response for ListNetworkWatchers API service call." + }, + "TopologyParameters": { + "properties": { + "targetResourceGroupName": { + "type": "string", + "description": "The name of the target resource group to perform topology on." + }, + "targetVirtualNetwork": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the Virtual Network resource." + }, + "targetSubnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the Subnet resource." + } + }, + "description": "Parameters that define the representation of topology." + }, + "Topology": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "GUID representing the operation id." + }, + "createdDateTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The datetime when the topology was initially created for the resource group." + }, + "lastModified": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The datetime when the topology was last modified." + }, + "resources": { + "type": "array", + "items": { + "$ref": "#/definitions/TopologyResource" + }, + "description": "A list of topology resources." + } + }, + "description": "Topology of the specified resource group." + }, + "TopologyResource": { + "properties": { + "name": { + "type": "string", + "description": "Name of the resource." + }, + "id": { + "type": "string", + "description": "ID of the resource." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "associations": { + "type": "array", + "description": "Holds the associations the resource has with other resources in the resource group.", + "items": { + "$ref": "#/definitions/TopologyAssociation" + } + } + }, + "description": "The network resource topology information for the given resource group." + }, + "TopologyAssociation": { + "properties": { + "name": { + "type": "string", + "description": "The name of the resource that is associated with the parent resource." + }, + "resourceId": { + "type": "string", + "description": "The ID of the resource that is associated with the parent resource." + }, + "associationType": { + "type": "string", + "enum": [ + "Associated", + "Contains" + ], + "x-ms-enum": { + "name": "AssociationType", + "modelAsString": true + }, + "description": "The association type of the child resource to the parent resource." + } + }, + "description": "Resources that have an association with the parent resource." + }, + "VerificationIPFlowParameters": { + "description": "Parameters that define the IP flow to be verified.", + "required": [ + "targetResourceId", + "direction", + "protocol", + "localPort", + "remotePort", + "localIPAddress", + "remoteIPAddress" + ], + "properties": { + "targetResourceId": { + "type": "string", + "description": "The ID of the target resource to perform next-hop on." + }, + "direction": { + "$ref": "#/definitions/Direction", + "description": "The direction of the packet represented as a 5-tuple." + }, + "protocol": { + "type": "string", + "enum": [ + "TCP", + "UDP" + ], + "x-ms-enum": { + "name": "IpFlowProtocol", + "modelAsString": true + }, + "description": "Protocol to be verified on." + }, + "localPort": { + "type": "string", + "description": "The local port. Acceptable values are a single integer in the range (0-65535). Support for * for the source port, which depends on the direction." + }, + "remotePort": { + "type": "string", + "description": "The remote port. Acceptable values are a single integer in the range (0-65535). Support for * for the source port, which depends on the direction." + }, + "localIPAddress": { + "type": "string", + "description": "The local IP address. Acceptable values are valid IPv4 addresses." + }, + "remoteIPAddress": { + "type": "string", + "description": "The remote IP address. Acceptable values are valid IPv4 addresses." + }, + "targetNicResourceId": { + "type": "string", + "description": "The NIC ID. (If VM has multiple NICs and IP forwarding is enabled on any of them, then this parameter must be specified. Otherwise optional)." + } + } + }, + "VerificationIPFlowResult": { + "description": "Results of IP flow verification on the target resource.", + "properties": { + "access": { + "$ref": "./network.json#/definitions/Access", + "description": "Indicates whether the traffic is allowed or denied." + }, + "ruleName": { + "type": "string", + "description": "Name of the rule. If input is not matched against any security rule, it is not displayed." + } + } + }, + "NextHopParameters": { + "description": "Parameters that define the source and destination endpoint.", + "required": [ + "targetResourceId", + "sourceIPAddress", + "destinationIPAddress" + ], + "properties": { + "targetResourceId": { + "type": "string", + "description": "The resource identifier of the target resource against which the action is to be performed." + }, + "sourceIPAddress": { + "type": "string", + "description": "The source IP address." + }, + "destinationIPAddress": { + "type": "string", + "description": "The destination IP address." + }, + "targetNicResourceId": { + "type": "string", + "description": "The NIC ID. (If VM has multiple NICs and IP forwarding is enabled on any of the nics, then this parameter must be specified. Otherwise optional)." + } + } + }, + "NextHopResult": { + "description": "The information about next hop from the specified VM.", + "properties": { + "nextHopType": { + "type": "string", + "enum": [ + "Internet", + "VirtualAppliance", + "VirtualNetworkGateway", + "VnetLocal", + "HyperNetGateway", + "None" + ], + "x-ms-enum": { + "name": "NextHopType", + "modelAsString": true + }, + "description": "Next hop type." + }, + "nextHopIpAddress": { + "type": "string", + "description": "Next hop IP Address." + }, + "routeTableId": { + "type": "string", + "description": "The resource identifier for the route table associated with the route being returned. If the route being returned does not correspond to any user created routes then this field will be the string 'System Route'." + } + } + }, + "SecurityGroupViewParameters": { + "description": "Parameters that define the VM to check security groups for.", + "required": [ + "targetResourceId" + ], + "properties": { + "targetResourceId": { + "type": "string", + "description": "ID of the target VM." + } + } + }, + "SecurityGroupViewResult": { + "description": "The information about security rules applied to the specified VM.", + "properties": { + "networkInterfaces": { + "type": "array", + "description": "List of network interfaces on the specified VM.", + "items": { + "$ref": "#/definitions/SecurityGroupNetworkInterface" + } + } + } + }, + "SecurityGroupNetworkInterface": { + "description": "Network interface and all its associated security rules.", + "properties": { + "id": { + "type": "string", + "description": "ID of the network interface." + }, + "securityRuleAssociations": { + "$ref": "#/definitions/SecurityRuleAssociations", + "description": "All security rules associated with the network interface." + } + } + }, + "SecurityRuleAssociations": { + "description": "All security rules associated with the network interface.", + "properties": { + "networkInterfaceAssociation": { + "$ref": "#/definitions/NetworkInterfaceAssociation", + "description": "Network interface and it's custom security rules." + }, + "subnetAssociation": { + "$ref": "#/definitions/SubnetAssociation", + "description": "Subnet and it's custom security rules." + }, + "defaultSecurityRules": { + "type": "array", + "items": { + "$ref": "./networkSecurityGroup.json#/definitions/SecurityRule" + }, + "description": "Collection of default security rules of the network security group." + }, + "effectiveSecurityRules": { + "type": "array", + "items": { + "$ref": "./networkInterface.json#/definitions/EffectiveNetworkSecurityRule" + }, + "description": "Collection of effective security rules." + } + } + }, + "NetworkInterfaceAssociation": { + "description": "Network interface and its custom security rules.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Network interface ID." + }, + "securityRules": { + "type": "array", + "description": "Collection of custom security rules.", + "items": { + "$ref": "./networkSecurityGroup.json#/definitions/SecurityRule" + } + } + } + }, + "SubnetAssociation": { + "description": "Subnet and it's custom security rules.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Subnet ID." + }, + "securityRules": { + "type": "array", + "description": "Collection of custom security rules.", + "items": { + "$ref": "./networkSecurityGroup.json#/definitions/SecurityRule" + } + } + } + }, + "PacketCapture": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PacketCaptureParameters", + "description": "Properties of the packet capture." + } + }, + "required": [ + "properties" + ], + "description": "Parameters that define the create packet capture operation." + }, + "PacketCaptureParameters": { + "properties": { + "target": { + "type": "string", + "description": "The ID of the targeted resource, only VM is currently supported." + }, + "bytesToCapturePerPacket": { + "type": "integer", + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "default": 0, + "description": "Number of bytes captured per packet, the remaining bytes are truncated." + }, + "totalBytesPerSession": { + "type": "integer", + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "default": 1073741824, + "description": "Maximum size of the capture output." + }, + "timeLimitInSeconds": { + "type": "integer", + "format": "int32", + "minimum": 0, + "maximum": 18000, + "default": 18000, + "description": "Maximum duration of the capture session in seconds." + }, + "storageLocation": { + "$ref": "#/definitions/PacketCaptureStorageLocation", + "description": "The storage location for a packet capture session." + }, + "filters": { + "type": "array", + "items": { + "$ref": "#/definitions/PacketCaptureFilter" + }, + "description": "A list of packet capture filters." + } + }, + "required": [ + "target", + "storageLocation" + ], + "description": "Parameters that define the create packet capture operation." + }, + "PacketCaptureStorageLocation": { + "properties": { + "storageId": { + "type": "string", + "description": "The ID of the storage account to save the packet capture session. Required if no local file path is provided." + }, + "storagePath": { + "type": "string", + "description": "The URI of the storage path to save the packet capture. Must be a well-formed URI describing the location to save the packet capture." + }, + "filePath": { + "type": "string", + "description": "A valid local path on the targeting VM. Must include the name of the capture file (*.cap). For linux virtual machine it must start with /var/captures. Required if no storage ID is provided, otherwise optional." + } + }, + "description": "The storage location for a packet capture session." + }, + "PacketCaptureFilter": { + "properties": { + "protocol": { + "type": "string", + "enum": [ + "TCP", + "UDP", + "Any" + ], + "x-ms-enum": { + "name": "PcProtocol", + "modelAsString": true + }, + "default": "Any", + "description": "Protocol to be filtered on." + }, + "localIPAddress": { + "type": "string", + "description": "Local IP Address to be filtered on. Notation: \"127.0.0.1\" for single address entry. \"127.0.0.1-127.0.0.255\" for range. \"127.0.0.1;127.0.0.5\"? for multiple entries. Multiple ranges not currently supported. Mixing ranges with multiple entries not currently supported. Default = null." + }, + "remoteIPAddress": { + "type": "string", + "description": "Local IP Address to be filtered on. Notation: \"127.0.0.1\" for single address entry. \"127.0.0.1-127.0.0.255\" for range. \"127.0.0.1;127.0.0.5;\" for multiple entries. Multiple ranges not currently supported. Mixing ranges with multiple entries not currently supported. Default = null." + }, + "localPort": { + "type": "string", + "description": "Local port to be filtered on. Notation: \"80\" for single port entry.\"80-85\" for range. \"80;443;\" for multiple entries. Multiple ranges not currently supported. Mixing ranges with multiple entries not currently supported. Default = null." + }, + "remotePort": { + "type": "string", + "description": "Remote port to be filtered on. Notation: \"80\" for single port entry.\"80-85\" for range. \"80;443;\" for multiple entries. Multiple ranges not currently supported. Mixing ranges with multiple entries not currently supported. Default = null." + } + }, + "description": "Filter that is applied to packet capture request. Multiple filters can be applied." + }, + "PacketCaptureListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PacketCaptureResult" + }, + "description": "Information about packet capture sessions." + } + }, + "description": "List of packet capture sessions." + }, + "PacketCaptureResult": { + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "Name of the packet capture session." + }, + "id": { + "readOnly": true, + "type": "string", + "description": "ID of the packet capture operation." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PacketCaptureResultProperties", + "description": "Properties of the packet capture result." + } + }, + "description": "Information about packet capture session." + }, + "PacketCaptureResultProperties": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the packet capture session." + } + }, + "allOf": [ + { + "$ref": "#/definitions/PacketCaptureParameters" + } + ], + "description": "The properties of a packet capture session." + }, + "PacketCaptureQueryStatusResult": { + "properties": { + "name": { + "type": "string", + "description": "The name of the packet capture resource." + }, + "id": { + "type": "string", + "description": "The ID of the packet capture resource." + }, + "captureStartTime": { + "type": "string", + "format": "date-time", + "description": "The start time of the packet capture session." + }, + "packetCaptureStatus": { + "type": "string", + "enum": [ + "NotStarted", + "Running", + "Stopped", + "Error", + "Unknown" + ], + "x-ms-enum": { + "name": "PcStatus", + "modelAsString": true + }, + "description": "The status of the packet capture session." + }, + "stopReason": { + "type": "string", + "description": "The reason the current packet capture session was stopped." + }, + "packetCaptureError": { + "type": "array", + "description": "List of errors of packet capture session.", + "items": { + "type": "string", + "enum": [ + "InternalError", + "AgentStopped", + "CaptureFailed", + "LocalFileFailed", + "StorageFailed" + ], + "x-ms-enum": { + "name": "PcError", + "modelAsString": true + } + } + } + }, + "description": "Status of packet capture session." + }, + "TroubleshootingParameters": { + "description": "Parameters that define the resource to troubleshoot.", + "required": [ + "targetResourceId", + "properties" + ], + "properties": { + "targetResourceId": { + "description": "The target resource to troubleshoot.", + "type": "string" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/TroubleshootingProperties", + "description": "Properties of the troubleshooting resource." + } + } + }, + "QueryTroubleshootingParameters": { + "description": "Parameters that define the resource to query the troubleshooting result.", + "required": [ + "targetResourceId" + ], + "properties": { + "targetResourceId": { + "description": "The target resource ID to query the troubleshooting result.", + "type": "string" + } + } + }, + "TroubleshootingProperties": { + "description": "Storage location provided for troubleshoot.", + "required": [ + "storageId", + "storagePath" + ], + "properties": { + "storageId": { + "description": "The ID for the storage account to save the troubleshoot result.", + "type": "string" + }, + "storagePath": { + "description": "The path to the blob to save the troubleshoot result in.", + "type": "string" + } + } + }, + "TroubleshootingResult": { + "description": "Troubleshooting information gained from specified resource.", + "properties": { + "startTime": { + "type": "string", + "format": "date-time", + "description": "The start time of the troubleshooting." + }, + "endTime": { + "type": "string", + "format": "date-time", + "description": "The end time of the troubleshooting." + }, + "code": { + "type": "string", + "description": "The result code of the troubleshooting." + }, + "results": { + "type": "array", + "description": "Information from troubleshooting.", + "items": { + "$ref": "#/definitions/TroubleshootingDetails" + } + } + } + }, + "TroubleshootingDetails": { + "description": "Information gained from troubleshooting of specified resource.", + "properties": { + "id": { + "type": "string", + "description": "The id of the get troubleshoot operation." + }, + "reasonType": { + "type": "string", + "description": "Reason type of failure." + }, + "summary": { + "type": "string", + "description": "A summary of troubleshooting." + }, + "detail": { + "type": "string", + "description": "Details on troubleshooting results." + }, + "recommendedActions": { + "type": "array", + "description": "List of recommended actions.", + "items": { + "$ref": "#/definitions/TroubleshootingRecommendedActions" + } + } + } + }, + "TroubleshootingRecommendedActions": { + "description": "Recommended actions based on discovered issues.", + "properties": { + "actionId": { + "description": "ID of the recommended action.", + "type": "string" + }, + "actionText": { + "description": "Description of recommended actions.", + "type": "string" + }, + "actionUri": { + "description": "The uri linking to a documentation for the recommended troubleshooting actions.", + "type": "string" + }, + "actionUriText": { + "description": "The information from the URI for the recommended troubleshooting actions.", + "type": "string" + } + } + }, + "FlowLogListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/FlowLog" + }, + "description": "Information about flow log resource." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "List of flow logs." + }, + "FlowLog": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/FlowLogPropertiesFormat", + "description": "Properties of the flow log." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "A flow log resource." + }, + "FlowLogPropertiesFormat": { + "description": "Parameters that define the configuration of flow log.", + "required": [ + "targetResourceId", + "storageId" + ], + "properties": { + "targetResourceId": { + "description": "ID of network security group to which flow log will be applied.", + "type": "string" + }, + "targetResourceGuid": { + "readOnly": true, + "description": "Guid of network security group to which flow log will be applied.", + "type": "string" + }, + "storageId": { + "description": "ID of the storage account which is used to store the flow log.", + "type": "string" + }, + "enabled": { + "description": "Flag to enable/disable flow logging.", + "type": "boolean" + }, + "retentionPolicy": { + "$ref": "#/definitions/RetentionPolicyParameters", + "description": "Parameters that define the retention policy for flow log." + }, + "format": { + "$ref": "#/definitions/FlowLogFormatParameters", + "description": "Parameters that define the flow log format." + }, + "flowAnalyticsConfiguration": { + "$ref": "#/definitions/TrafficAnalyticsProperties", + "description": "Parameters that define the configuration of traffic analytics." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the flow log." + } + } + }, + "FlowLogProperties": { + "description": "Parameters that define the configuration of flow log.", + "required": [ + "storageId", + "enabled" + ], + "properties": { + "storageId": { + "description": "ID of the storage account which is used to store the flow log.", + "type": "string" + }, + "enabled": { + "description": "Flag to enable/disable flow logging.", + "type": "boolean" + }, + "retentionPolicy": { + "$ref": "#/definitions/RetentionPolicyParameters", + "description": "Parameters that define the retention policy for flow log." + }, + "format": { + "$ref": "#/definitions/FlowLogFormatParameters", + "description": "Parameters that define the flow log format." + } + } + }, + "FlowLogStatusParameters": { + "description": "Parameters that define a resource to query flow log and traffic analytics (optional) status.", + "required": [ + "targetResourceId" + ], + "properties": { + "targetResourceId": { + "description": "The target resource where getting the flow log and traffic analytics (optional) status.", + "type": "string" + } + } + }, + "RetentionPolicyParameters": { + "description": "Parameters that define the retention policy for flow log.", + "properties": { + "days": { + "description": "Number of days to retain flow log records.", + "type": "integer", + "format": "int32", + "default": 0 + }, + "enabled": { + "description": "Flag to enable/disable retention.", + "type": "boolean", + "default": false + } + } + }, + "FlowLogFormatParameters": { + "description": "Parameters that define the flow log format.", + "properties": { + "type": { + "type": "string", + "description": "The file type of flow log.", + "enum": [ + "JSON" + ], + "x-ms-enum": { + "name": "FlowLogFormatType", + "modelAsString": true + } + }, + "version": { + "description": "The version (revision) of the flow log.", + "type": "integer", + "format": "int32", + "default": 0 + } + } + }, + "FlowLogInformation": { + "description": "Information on the configuration of flow log and traffic analytics (optional) .", + "required": [ + "targetResourceId", + "properties" + ], + "properties": { + "targetResourceId": { + "description": "The ID of the resource to configure for flow log and traffic analytics (optional) .", + "type": "string" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/FlowLogProperties", + "description": "Properties of the flow log." + }, + "flowAnalyticsConfiguration": { + "$ref": "#/definitions/TrafficAnalyticsProperties", + "description": "Parameters that define the configuration of traffic analytics." + } + } + }, + "TrafficAnalyticsProperties": { + "description": "Parameters that define the configuration of traffic analytics.", + "properties": { + "networkWatcherFlowAnalyticsConfiguration": { + "$ref": "#/definitions/TrafficAnalyticsConfigurationProperties", + "description": "Parameters that define the configuration of traffic analytics." + } + } + }, + "TrafficAnalyticsConfigurationProperties": { + "description": "Parameters that define the configuration of traffic analytics.", + "properties": { + "enabled": { + "description": "Flag to enable/disable traffic analytics.", + "type": "boolean" + }, + "workspaceId": { + "description": "The resource guid of the attached workspace.", + "type": "string" + }, + "workspaceRegion": { + "description": "The location of the attached workspace.", + "type": "string" + }, + "workspaceResourceId": { + "description": "Resource Id of the attached workspace.", + "type": "string" + }, + "trafficAnalyticsInterval": { + "description": "The interval in minutes which would decide how frequently TA service should do flow analytics.", + "type": "integer", + "format": "int32" + } + } + }, + "ConnectivityParameters": { + "description": "Parameters that determine how the connectivity check will be performed.", + "required": [ + "source", + "destination" + ], + "properties": { + "source": { + "$ref": "#/definitions/ConnectivitySource", + "description": "The source of the connection." + }, + "destination": { + "$ref": "#/definitions/ConnectivityDestination", + "description": "The destination of connection." + }, + "protocol": { + "type": "string", + "description": "Network protocol.", + "enum": [ + "Tcp", + "Http", + "Https", + "Icmp" + ], + "x-ms-enum": { + "name": "Protocol", + "modelAsString": true + } + }, + "protocolConfiguration": { + "$ref": "#/definitions/ProtocolConfiguration", + "description": "Configuration of the protocol." + }, + "preferredIPVersion": { + "$ref": "./network.json#/definitions/IPVersion", + "description": "Preferred IP version of the connection." + } + } + }, + "ConnectivitySource": { + "description": "Parameters that define the source of the connection.", + "required": [ + "resourceId" + ], + "properties": { + "resourceId": { + "description": "The ID of the resource from which a connectivity check will be initiated.", + "type": "string" + }, + "port": { + "description": "The source port from which a connectivity check will be performed.", + "type": "integer", + "format": "int32", + "minimum": 0, + "maximum": 65535 + } + } + }, + "ConnectivityDestination": { + "description": "Parameters that define destination of connection.", + "properties": { + "resourceId": { + "description": "The ID of the resource to which a connection attempt will be made.", + "type": "string" + }, + "address": { + "description": "The IP address or URI the resource to which a connection attempt will be made.", + "type": "string" + }, + "port": { + "description": "Port on which check connectivity will be performed.", + "type": "integer", + "format": "int32", + "minimum": 0, + "maximum": 65535 + } + } + }, + "ConnectivityInformation": { + "description": "Information on the connectivity status.", + "properties": { + "hops": { + "readOnly": true, + "type": "array", + "description": "List of hops between the source and the destination.", + "items": { + "$ref": "#/definitions/ConnectivityHop" + } + }, + "connectionStatus": { + "readOnly": true, + "type": "string", + "enum": [ + "Unknown", + "Connected", + "Disconnected", + "Degraded" + ], + "x-ms-enum": { + "name": "ConnectionStatus", + "modelAsString": true + }, + "description": "The connection status." + }, + "avgLatencyInMs": { + "description": "Average latency in milliseconds.", + "readOnly": true, + "type": "integer", + "format": "int32" + }, + "minLatencyInMs": { + "description": "Minimum latency in milliseconds.", + "readOnly": true, + "type": "integer", + "format": "int32" + }, + "maxLatencyInMs": { + "description": "Maximum latency in milliseconds.", + "readOnly": true, + "type": "integer", + "format": "int32" + }, + "probesSent": { + "description": "Total number of probes sent.", + "readOnly": true, + "type": "integer", + "format": "int32" + }, + "probesFailed": { + "description": "Number of failed probes.", + "readOnly": true, + "type": "integer", + "format": "int32" + } + } + }, + "ConnectivityHop": { + "description": "Information about a hop between the source and the destination.", + "properties": { + "type": { + "description": "The type of the hop.", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "The ID of the hop.", + "readOnly": true, + "type": "string" + }, + "address": { + "description": "The IP address of the hop.", + "readOnly": true, + "type": "string" + }, + "resourceId": { + "description": "The ID of the resource corresponding to this hop.", + "readOnly": true, + "type": "string" + }, + "nextHopIds": { + "readOnly": true, + "type": "array", + "description": "List of next hop identifiers.", + "items": { + "type": "string" + } + }, + "previousHopIds": { + "readOnly": true, + "type": "array", + "description": "List of previous hop identifiers.", + "items": { + "type": "string" + } + }, + "links": { + "readOnly": true, + "type": "array", + "description": "List of hop links.", + "items": { + "$ref": "#/definitions/HopLink" + } + }, + "previousLinks": { + "readOnly": true, + "type": "array", + "description": "List of previous hop links.", + "items": { + "$ref": "#/definitions/HopLink" + } + }, + "issues": { + "readOnly": true, + "type": "array", + "description": "List of issues.", + "items": { + "$ref": "#/definitions/ConnectivityIssue" + } + } + } + }, + "HopLink": { + "description": "Hop link.", + "properties": { + "nextHopId": { + "description": "The ID of the next hop.", + "readOnly": true, + "type": "string" + }, + "linkType": { + "description": "Link type.", + "readOnly": true, + "type": "string" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/HopLinkProperties", + "description": "Hop link properties." + }, + "issues": { + "readOnly": true, + "type": "array", + "description": "List of issues.", + "items": { + "$ref": "#/definitions/ConnectivityIssue" + } + }, + "context": { + "readOnly": true, + "type": "object", + "description": "Provides additional context on links.", + "additionalProperties": { + "type": "string" + } + }, + "resourceId": { + "description": "Resource ID.", + "readOnly": true, + "type": "string" + } + } + }, + "HopLinkProperties": { + "description": "Hop link properties.", + "properties": { + "roundTripTimeMin": { + "description": "Minimum roundtrip time in milliseconds.", + "readOnly": true, + "type": "integer", + "format": "int64", + "minimum": 0, + "maximum": 4294967295 + }, + "roundTripTimeAvg": { + "description": "Average roundtrip time in milliseconds.", + "readOnly": true, + "type": "integer", + "format": "int64", + "minimum": 0, + "maximum": 4294967295 + }, + "roundTripTimeMax": { + "description": "Maximum roundtrip time in milliseconds.", + "readOnly": true, + "type": "integer", + "format": "int64", + "minimum": 0, + "maximum": 4294967295 + } + } + }, + "ConnectivityIssue": { + "description": "Information about an issue encountered in the process of checking for connectivity.", + "properties": { + "origin": { + "readOnly": true, + "type": "string", + "enum": [ + "Local", + "Inbound", + "Outbound" + ], + "x-ms-enum": { + "name": "Origin", + "modelAsString": true + }, + "description": "The origin of the issue." + }, + "severity": { + "readOnly": true, + "type": "string", + "enum": [ + "Error", + "Warning" + ], + "x-ms-enum": { + "name": "Severity", + "modelAsString": true + }, + "description": "The severity of the issue." + }, + "type": { + "readOnly": true, + "type": "string", + "enum": [ + "Unknown", + "AgentStopped", + "GuestFirewall", + "DnsResolution", + "SocketBind", + "NetworkSecurityRule", + "UserDefinedRoute", + "PortThrottled", + "Platform" + ], + "x-ms-enum": { + "name": "IssueType", + "modelAsString": true + }, + "description": "The type of issue." + }, + "context": { + "readOnly": true, + "type": "array", + "description": "Provides additional context on the issue.", + "items": { + "$ref": "#/definitions/IssueContext" + } + } + } + }, + "IssueContext": { + "description": "A key-value pair that provides additional context on the issue.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "ProtocolConfiguration": { + "description": "Configuration of the protocol.", + "properties": { + "HTTPConfiguration": { + "$ref": "#/definitions/HTTPConfiguration", + "description": "HTTP configuration of the connectivity check." + } + } + }, + "HTTPConfiguration": { + "properties": { + "method": { + "type": "string", + "description": "HTTP method.", + "enum": [ + "Get" + ], + "x-ms-enum": { + "name": "HTTPMethod", + "modelAsString": true + } + }, + "headers": { + "type": "array", + "description": "List of HTTP headers.", + "items": { + "$ref": "#/definitions/HTTPHeader" + } + }, + "validStatusCodes": { + "type": "array", + "items": { + "type": "integer", + "format": "int32" + }, + "description": "Valid status codes." + } + }, + "description": "HTTP configuration of the connectivity check." + }, + "HTTPHeader": { + "properties": { + "name": { + "type": "string", + "description": "The name in HTTP header." + }, + "value": { + "type": "string", + "description": "The value in HTTP header." + } + }, + "description": "The HTTP header." + }, + "AzureReachabilityReportParameters": { + "properties": { + "providerLocation": { + "$ref": "#/definitions/AzureReachabilityReportLocation", + "description": "Parameters that define a geographic location." + }, + "providers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of Internet service providers." + }, + "azureLocations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Optional Azure regions to scope the query to." + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "The start time for the Azure reachability report." + }, + "endTime": { + "type": "string", + "format": "date-time", + "description": "The end time for the Azure reachability report." + } + }, + "required": [ + "providerLocation", + "startTime", + "endTime" + ], + "description": "Geographic and time constraints for Azure reachability report." + }, + "AzureReachabilityReportLocation": { + "properties": { + "country": { + "type": "string", + "description": "The name of the country." + }, + "state": { + "type": "string", + "description": "The name of the state." + }, + "city": { + "type": "string", + "description": "The name of the city or town." + } + }, + "required": [ + "country" + ], + "description": "Parameters that define a geographic location." + }, + "AzureReachabilityReport": { + "properties": { + "aggregationLevel": { + "type": "string", + "description": "The aggregation level of Azure reachability report. Can be Country, State or City." + }, + "providerLocation": { + "$ref": "#/definitions/AzureReachabilityReportLocation", + "description": "Parameters that define a geographic location." + }, + "reachabilityReport": { + "type": "array", + "description": "List of Azure reachability report items.", + "items": { + "$ref": "#/definitions/AzureReachabilityReportItem" + } + } + }, + "required": [ + "aggregationLevel", + "providerLocation", + "reachabilityReport" + ], + "description": "Azure reachability report details." + }, + "AzureReachabilityReportItem": { + "properties": { + "provider": { + "type": "string", + "description": "The Internet service provider." + }, + "azureLocation": { + "type": "string", + "description": "The Azure region." + }, + "latencies": { + "type": "array", + "description": "List of latency details for each of the time series.", + "items": { + "$ref": "#/definitions/AzureReachabilityReportLatencyInfo" + } + } + }, + "description": "Azure reachability report details for a given provider location." + }, + "AzureReachabilityReportLatencyInfo": { + "properties": { + "timeStamp": { + "type": "string", + "format": "date-time", + "description": "The time stamp." + }, + "score": { + "type": "integer", + "format": "int32", + "description": "The relative latency score between 1 and 100, higher values indicating a faster connection.", + "minimum": 1, + "maximum": 100 + } + }, + "description": "Details on latency for a time series." + }, + "AvailableProvidersListParameters": { + "properties": { + "azureLocations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of Azure regions." + }, + "country": { + "type": "string", + "description": "The country for available providers list." + }, + "state": { + "type": "string", + "description": "The state for available providers list." + }, + "city": { + "type": "string", + "description": "The city or town for available providers list." + } + }, + "description": "Constraints that determine the list of available Internet service providers." + }, + "AvailableProvidersList": { + "properties": { + "countries": { + "type": "array", + "description": "List of available countries.", + "items": { + "$ref": "#/definitions/AvailableProvidersListCountry" + } + } + }, + "required": [ + "countries" + ], + "description": "List of available countries with details." + }, + "AvailableProvidersListCountry": { + "properties": { + "countryName": { + "type": "string", + "description": "The country name." + }, + "providers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of Internet service providers." + }, + "states": { + "type": "array", + "description": "List of available states in the country.", + "items": { + "$ref": "#/definitions/AvailableProvidersListState" + } + } + }, + "description": "Country details." + }, + "AvailableProvidersListState": { + "properties": { + "stateName": { + "type": "string", + "description": "The state name." + }, + "providers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of Internet service providers." + }, + "cities": { + "type": "array", + "description": "List of available cities or towns in the state.", + "items": { + "$ref": "#/definitions/AvailableProvidersListCity" + } + } + }, + "description": "State details." + }, + "AvailableProvidersListCity": { + "properties": { + "cityName": { + "type": "string", + "description": "The city or town name." + }, + "providers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of Internet service providers." + } + }, + "description": "City or town details." + }, + "NetworkConfigurationDiagnosticParameters": { + "description": "Parameters to get network configuration diagnostic.", + "required": [ + "targetResourceId", + "profiles" + ], + "properties": { + "targetResourceId": { + "type": "string", + "description": "The ID of the target resource to perform network configuration diagnostic. Valid options are VM, NetworkInterface, VMSS/NetworkInterface and Application Gateway." + }, + "verbosityLevel": { + "type": "string", + "enum": [ + "Normal", + "Minimum", + "Full" + ], + "x-ms-enum": { + "name": "VerbosityLevel", + "modelAsString": true + }, + "description": "Verbosity level." + }, + "profiles": { + "type": "array", + "description": "List of network configuration diagnostic profiles.", + "items": { + "$ref": "#/definitions/NetworkConfigurationDiagnosticProfile" + } + } + } + }, + "NetworkConfigurationDiagnosticProfile": { + "description": "Parameters to compare with network configuration.", + "required": [ + "direction", + "protocol", + "source", + "destination", + "destinationPort" + ], + "properties": { + "direction": { + "$ref": "#/definitions/Direction", + "description": "The direction of the traffic." + }, + "protocol": { + "type": "string", + "description": "Protocol to be verified on. Accepted values are '*', TCP, UDP." + }, + "source": { + "type": "string", + "description": "Traffic source. Accepted values are '*', IP Address/CIDR, Service Tag." + }, + "destination": { + "type": "string", + "description": "Traffic destination. Accepted values are: '*', IP Address/CIDR, Service Tag." + }, + "destinationPort": { + "type": "string", + "description": "Traffic destination port. Accepted values are '*' and a single port in the range (0 - 65535)." + } + } + }, + "NetworkConfigurationDiagnosticResponse": { + "description": "Results of network configuration diagnostic on the target resource.", + "properties": { + "results": { + "readOnly": true, + "type": "array", + "description": "List of network configuration diagnostic results.", + "items": { + "$ref": "#/definitions/NetworkConfigurationDiagnosticResult" + } + } + } + }, + "NetworkConfigurationDiagnosticResult": { + "description": "Network configuration diagnostic result corresponded to provided traffic query.", + "properties": { + "profile": { + "$ref": "#/definitions/NetworkConfigurationDiagnosticProfile", + "description": "Network configuration diagnostic profile." + }, + "networkSecurityGroupResult": { + "$ref": "#/definitions/NetworkSecurityGroupResult", + "description": "Network security group result." + } + } + }, + "NetworkSecurityGroupResult": { + "description": "Network configuration diagnostic result corresponded provided traffic query.", + "properties": { + "securityRuleAccessResult": { + "$ref": "./networkSecurityGroup.json#/definitions/SecurityRuleAccess", + "description": "The network traffic is allowed or denied." + }, + "evaluatedNetworkSecurityGroups": { + "readOnly": true, + "type": "array", + "description": "List of results network security groups diagnostic.", + "items": { + "$ref": "#/definitions/EvaluatedNetworkSecurityGroup" + } + } + } + }, + "EvaluatedNetworkSecurityGroup": { + "description": "Results of network security group evaluation.", + "properties": { + "networkSecurityGroupId": { + "type": "string", + "description": "Network security group ID." + }, + "appliedTo": { + "type": "string", + "description": "Resource ID of nic or subnet to which network security group is applied." + }, + "matchedRule": { + "$ref": "#/definitions/MatchedRule", + "description": "Matched network security rule." + }, + "rulesEvaluationResult": { + "readOnly": true, + "type": "array", + "description": "List of network security rules evaluation results.", + "items": { + "$ref": "#/definitions/NetworkSecurityRulesEvaluationResult" + } + } + } + }, + "MatchedRule": { + "description": "Matched rule.", + "properties": { + "ruleName": { + "type": "string", + "description": "Name of the matched network security rule." + }, + "action": { + "type": "string", + "description": "The network traffic is allowed or denied. Possible values are 'Allow' and 'Deny'." + } + } + }, + "NetworkSecurityRulesEvaluationResult": { + "description": "Network security rules evaluation result.", + "properties": { + "name": { + "type": "string", + "description": "Name of the network security rule." + }, + "protocolMatched": { + "type": "boolean", + "description": "Value indicating whether protocol is matched." + }, + "sourceMatched": { + "type": "boolean", + "description": "Value indicating whether source is matched." + }, + "sourcePortMatched": { + "type": "boolean", + "description": "Value indicating whether source port is matched." + }, + "destinationMatched": { + "type": "boolean", + "description": "Value indicating whether destination is matched." + }, + "destinationPortMatched": { + "type": "boolean", + "description": "Value indicating whether destination port is matched." + } + } + }, + "Direction": { + "type": "string", + "description": "The direction of the traffic.", + "enum": [ + "Inbound", + "Outbound" + ], + "x-ms-enum": { + "name": "Direction", + "modelAsString": true + } + }, + "ConnectionMonitor": { + "properties": { + "location": { + "type": "string", + "description": "Connection monitor location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Connection monitor tags." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ConnectionMonitorParameters", + "description": "Properties of the connection monitor." + } + }, + "required": [ + "properties" + ], + "description": "Parameters that define the operation to create a connection monitor." + }, + "ConnectionMonitorParameters": { + "properties": { + "source": { + "$ref": "#/definitions/ConnectionMonitorSource", + "description": "Describes the source of connection monitor." + }, + "destination": { + "$ref": "#/definitions/ConnectionMonitorDestination", + "description": "Describes the destination of connection monitor." + }, + "autoStart": { + "type": "boolean", + "default": true, + "description": "Determines if the connection monitor will start automatically once created." + }, + "monitoringIntervalInSeconds": { + "type": "integer", + "format": "int32", + "minimum": 30, + "maximum": 1800, + "default": 60, + "description": "Monitoring interval in seconds." + }, + "endpoints": { + "type": "array", + "description": "List of connection monitor endpoints.", + "items": { + "$ref": "#/definitions/ConnectionMonitorEndpoint" + } + }, + "testConfigurations": { + "type": "array", + "description": "List of connection monitor test configurations.", + "items": { + "$ref": "#/definitions/ConnectionMonitorTestConfiguration" + } + }, + "testGroups": { + "type": "array", + "description": "List of connection monitor test groups.", + "items": { + "$ref": "#/definitions/ConnectionMonitorTestGroup" + } + }, + "outputs": { + "type": "array", + "description": "List of connection monitor outputs.", + "items": { + "$ref": "#/definitions/ConnectionMonitorOutput" + } + }, + "notes": { + "type": "string", + "description": "Optional notes to be associated with the connection monitor." + } + }, + "description": "Parameters that define the operation to create a connection monitor." + }, + "ConnectionMonitorSource": { + "properties": { + "resourceId": { + "type": "string", + "description": "The ID of the resource used as the source by connection monitor." + }, + "port": { + "type": "integer", + "format": "int32", + "minimum": 0, + "maximum": 65535, + "description": "The source port used by connection monitor." + } + }, + "required": [ + "resourceId" + ], + "description": "Describes the source of connection monitor." + }, + "ConnectionMonitorDestination": { + "properties": { + "resourceId": { + "type": "string", + "description": "The ID of the resource used as the destination by connection monitor." + }, + "address": { + "type": "string", + "description": "Address of the connection monitor destination (IP or domain name)." + }, + "port": { + "type": "integer", + "format": "int32", + "minimum": 0, + "maximum": 65535, + "description": "The destination port used by connection monitor." + } + }, + "description": "Describes the destination of connection monitor." + }, + "ConnectionMonitorEndpoint": { + "properties": { + "name": { + "type": "string", + "description": "The name of the connection monitor endpoint." + }, + "type": { + "type": "string", + "enum": [ + "AzureVM", + "AzureVNet", + "AzureSubnet", + "ExternalAddress", + "MMAWorkspaceMachine", + "MMAWorkspaceNetwork" + ], + "x-ms-enum": { + "name": "EndpointType", + "modelAsString": true + }, + "description": "The endpoint type." + }, + "resourceId": { + "type": "string", + "description": "Resource ID of the connection monitor endpoint." + }, + "address": { + "type": "string", + "description": "Address of the connection monitor endpoint (IP or domain name)." + }, + "filter": { + "$ref": "#/definitions/ConnectionMonitorEndpointFilter", + "description": "Filter for sub-items within the endpoint." + }, + "scope": { + "$ref": "#/definitions/ConnectionMonitorEndpointScope", + "description": "Endpoint scope." + }, + "coverageLevel": { + "type": "string", + "enum": [ + "Default", + "Low", + "BelowAverage", + "Average", + "AboveAverage", + "Full" + ], + "x-ms-enum": { + "name": "CoverageLevel", + "modelAsString": true + }, + "description": "Test coverage for the endpoint." + } + }, + "required": [ + "name" + ], + "description": "Describes the connection monitor endpoint." + }, + "ConnectionMonitorEndpointScope": { + "properties": { + "include": { + "type": "array", + "description": "List of items which needs to be included to the endpoint scope.", + "items": { + "$ref": "#/definitions/ConnectionMonitorEndpointScopeItem" + } + }, + "exclude": { + "type": "array", + "description": "List of items which needs to be excluded from the endpoint scope.", + "items": { + "$ref": "#/definitions/ConnectionMonitorEndpointScopeItem" + } + } + }, + "description": "Describes the connection monitor endpoint scope." + }, + "ConnectionMonitorEndpointScopeItem": { + "properties": { + "address": { + "type": "string", + "description": "The address of the endpoint item. Supported types are IPv4/IPv6 subnet mask or IPv4/IPv6 IP address." + } + }, + "description": "Describes the connection monitor endpoint scope item." + }, + "ConnectionMonitorEndpointFilter": { + "properties": { + "type": { + "type": "string", + "enum": [ + "Include" + ], + "x-ms-enum": { + "name": "ConnectionMonitorEndpointFilterType", + "modelAsString": true + }, + "description": "The behavior of the endpoint filter. Currently only 'Include' is supported." + }, + "items": { + "type": "array", + "description": "List of items in the filter.", + "items": { + "$ref": "#/definitions/ConnectionMonitorEndpointFilterItem" + } + } + }, + "description": "Describes the connection monitor endpoint filter." + }, + "ConnectionMonitorEndpointFilterItem": { + "properties": { + "type": { + "type": "string", + "enum": [ + "AgentAddress" + ], + "x-ms-enum": { + "name": "ConnectionMonitorEndpointFilterItemType", + "modelAsString": true + }, + "description": "The type of item included in the filter. Currently only 'AgentAddress' is supported." + }, + "address": { + "type": "string", + "description": "The address of the filter item." + } + }, + "description": "Describes the connection monitor endpoint filter item." + }, + "ConnectionMonitorTestGroup": { + "properties": { + "name": { + "type": "string", + "description": "The name of the connection monitor test group." + }, + "disable": { + "type": "boolean", + "description": "Value indicating whether test group is disabled." + }, + "testConfigurations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of test configuration names." + }, + "sources": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of source endpoint names." + }, + "destinations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of destination endpoint names." + } + }, + "required": [ + "name", + "testConfigurations", + "sources", + "destinations" + ], + "description": "Describes the connection monitor test group." + }, + "ConnectionMonitorTestConfiguration": { + "properties": { + "name": { + "type": "string", + "description": "The name of the connection monitor test configuration." + }, + "testFrequencySec": { + "type": "integer", + "format": "int32", + "description": "The frequency of test evaluation, in seconds." + }, + "protocol": { + "type": "string", + "enum": [ + "Tcp", + "Http", + "Icmp" + ], + "x-ms-enum": { + "name": "ConnectionMonitorTestConfigurationProtocol", + "modelAsString": true + }, + "description": "The protocol to use in test evaluation." + }, + "preferredIPVersion": { + "type": "string", + "enum": [ + "IPv4", + "IPv6" + ], + "x-ms-enum": { + "name": "PreferredIPVersion", + "modelAsString": true + }, + "description": "The preferred IP version to use in test evaluation. The connection monitor may choose to use a different version depending on other parameters." + }, + "httpConfiguration": { + "$ref": "#/definitions/ConnectionMonitorHttpConfiguration", + "description": "The parameters used to perform test evaluation over HTTP." + }, + "tcpConfiguration": { + "$ref": "#/definitions/ConnectionMonitorTcpConfiguration", + "description": "The parameters used to perform test evaluation over TCP." + }, + "icmpConfiguration": { + "$ref": "#/definitions/ConnectionMonitorIcmpConfiguration", + "description": "The parameters used to perform test evaluation over ICMP." + }, + "successThreshold": { + "$ref": "#/definitions/ConnectionMonitorSuccessThreshold", + "description": "The threshold for declaring a test successful." + } + }, + "required": [ + "name", + "protocol" + ], + "description": "Describes a connection monitor test configuration." + }, + "ConnectionMonitorHttpConfiguration": { + "properties": { + "port": { + "type": "integer", + "format": "int32", + "minimum": 0, + "maximum": 65535, + "description": "The port to connect to." + }, + "method": { + "type": "string", + "description": "The HTTP method to use.", + "enum": [ + "Get", + "Post" + ], + "x-ms-enum": { + "name": "HTTPConfigurationMethod", + "modelAsString": true + } + }, + "path": { + "type": "string", + "description": "The path component of the URI. For instance, \"/dir1/dir2\"." + }, + "requestHeaders": { + "type": "array", + "description": "The HTTP headers to transmit with the request.", + "items": { + "$ref": "#/definitions/HTTPHeader" + } + }, + "validStatusCodeRanges": { + "type": "array", + "items": { + "type": "string" + }, + "description": "HTTP status codes to consider successful. For instance, \"2xx,301-304,418\"." + }, + "preferHTTPS": { + "type": "boolean", + "description": "Value indicating whether HTTPS is preferred over HTTP in cases where the choice is not explicit." + } + }, + "description": "Describes the HTTP configuration." + }, + "ConnectionMonitorTcpConfiguration": { + "properties": { + "port": { + "type": "integer", + "format": "int32", + "minimum": 0, + "maximum": 65535, + "description": "The port to connect to." + }, + "disableTraceRoute": { + "type": "boolean", + "description": "Value indicating whether path evaluation with trace route should be disabled." + }, + "destinationPortBehavior": { + "type": "string", + "description": "Destination port behavior.", + "enum": [ + "None", + "ListenIfAvailable" + ], + "x-ms-enum": { + "name": "DestinationPortBehavior", + "modelAsString": true + } + } + }, + "description": "Describes the TCP configuration." + }, + "ConnectionMonitorIcmpConfiguration": { + "properties": { + "disableTraceRoute": { + "type": "boolean", + "description": "Value indicating whether path evaluation with trace route should be disabled." + } + }, + "description": "Describes the ICMP configuration." + }, + "ConnectionMonitorSuccessThreshold": { + "properties": { + "checksFailedPercent": { + "type": "integer", + "format": "int32", + "description": "The maximum percentage of failed checks permitted for a test to evaluate as successful." + }, + "roundTripTimeMs": { + "type": "number", + "description": "The maximum round-trip time in milliseconds permitted for a test to evaluate as successful." + } + }, + "description": "Describes the threshold for declaring a test successful." + }, + "ConnectionMonitorOutput": { + "properties": { + "type": { + "type": "string", + "description": "Connection monitor output destination type. Currently, only \"Workspace\" is supported.", + "enum": [ + "Workspace" + ], + "x-ms-enum": { + "name": "OutputType", + "modelAsString": true + } + }, + "workspaceSettings": { + "$ref": "#/definitions/ConnectionMonitorWorkspaceSettings", + "description": "Describes the settings for producing output into a log analytics workspace." + } + }, + "description": "Describes a connection monitor output destination." + }, + "ConnectionMonitorWorkspaceSettings": { + "properties": { + "workspaceResourceId": { + "type": "string", + "description": "Log analytics workspace resource ID." + } + }, + "description": "Describes the settings for producing output into a log analytics workspace." + }, + "ConnectionStateSnapshot": { + "properties": { + "connectionState": { + "type": "string", + "enum": [ + "Reachable", + "Unreachable", + "Unknown" + ], + "x-ms-enum": { + "name": "ConnectionState", + "modelAsString": true + }, + "description": "The connection state." + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "The start time of the connection snapshot." + }, + "endTime": { + "type": "string", + "format": "date-time", + "description": "The end time of the connection snapshot." + }, + "evaluationState": { + "type": "string", + "enum": [ + "NotStarted", + "InProgress", + "Completed" + ], + "x-ms-enum": { + "name": "EvaluationState", + "modelAsString": true + }, + "description": "Connectivity analysis evaluation state." + }, + "avgLatencyInMs": { + "type": "integer", + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "description": "Average latency in ms." + }, + "minLatencyInMs": { + "type": "integer", + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "description": "Minimum latency in ms." + }, + "maxLatencyInMs": { + "type": "integer", + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "description": "Maximum latency in ms." + }, + "probesSent": { + "type": "integer", + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "description": "The number of sent probes." + }, + "probesFailed": { + "type": "integer", + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "description": "The number of failed probes." + }, + "hops": { + "readOnly": true, + "type": "array", + "description": "List of hops between the source and the destination.", + "items": { + "$ref": "./networkWatcher.json#/definitions/ConnectivityHop" + } + } + }, + "description": "Connection state snapshot." + }, + "ConnectionMonitorListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ConnectionMonitorResult" + }, + "description": "Information about connection monitors." + } + }, + "description": "List of connection monitors." + }, + "ConnectionMonitorResult": { + "x-ms-azure-resource": true, + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "Name of the connection monitor." + }, + "id": { + "readOnly": true, + "type": "string", + "description": "ID of the connection monitor." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Connection monitor type." + }, + "location": { + "type": "string", + "description": "Connection monitor location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Connection monitor tags." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ConnectionMonitorResultProperties", + "description": "Properties of the connection monitor result." + } + }, + "description": "Information about the connection monitor." + }, + "ConnectionMonitorResultProperties": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the connection monitor." + }, + "startTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The date and time when the connection monitor was started." + }, + "monitoringStatus": { + "readOnly": true, + "type": "string", + "description": "The monitoring status of the connection monitor." + }, + "connectionMonitorType": { + "readOnly": true, + "type": "string", + "enum": [ + "MultiEndpoint", + "SingleSourceDestination" + ], + "x-ms-enum": { + "name": "ConnectionMonitorType", + "modelAsString": true + }, + "description": "Type of connection monitor." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ConnectionMonitorParameters" + } + ], + "description": "Describes the properties of a connection monitor." + }, + "ConnectionMonitorQueryResult": { + "properties": { + "sourceStatus": { + "type": "string", + "enum": [ + "Unknown", + "Active", + "Inactive" + ], + "x-ms-enum": { + "name": "ConnectionMonitorSourceStatus", + "modelAsString": true + }, + "description": "Status of connection monitor source." + }, + "states": { + "type": "array", + "items": { + "$ref": "#/definitions/ConnectionStateSnapshot" + }, + "description": "Information about connection states." + } + }, + "description": "List of connection states snapshots." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/operation.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/operation.json new file mode 100644 index 000000000000..4dca70234bb6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/operation.json @@ -0,0 +1,271 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2021-02-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/providers/Microsoft.Network/operations": { + "get": { + "operationId": "Operations_List", + "description": "Lists all of the available Network Rest API operations.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get a list of operations for a resource provider": { + "$ref": "./examples/OperationList.json" + } + } + } + } + }, + "definitions": { + "OperationListResult": { + "description": "Result of the request to list Network operations. It contains a list of operations and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "description": "List of Network operations supported by the Network resource provider." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "Operation": { + "description": "Network REST API operation definition.", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}.", + "type": "string" + }, + "display": { + "description": "Display metadata associated with the operation.", + "properties": { + "provider": { + "description": "Service provider: Microsoft Network.", + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed.", + "type": "string" + }, + "operation": { + "description": "Type of the operation: get, read, delete, etc.", + "type": "string" + }, + "description": { + "description": "Description of the operation.", + "type": "string" + } + } + }, + "origin": { + "description": "Origin of the operation.", + "type": "string" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/OperationPropertiesFormat", + "description": "Operation properties format." + } + } + }, + "OperationPropertiesFormat": { + "description": "Description of operation properties format.", + "properties": { + "serviceSpecification": { + "description": "Specification of the service.", + "properties": { + "metricSpecifications": { + "type": "array", + "items": { + "$ref": "#/definitions/MetricSpecification" + }, + "description": "Operation service specification." + }, + "logSpecifications": { + "type": "array", + "items": { + "$ref": "#/definitions/LogSpecification" + }, + "description": "Operation log specification." + } + } + } + } + }, + "LogSpecification": { + "description": "Description of logging specification.", + "properties": { + "name": { + "type": "string", + "description": "The name of the specification." + }, + "displayName": { + "type": "string", + "description": "The display name of the specification." + }, + "blobDuration": { + "type": "string", + "description": "Duration of the blob." + } + } + }, + "MetricSpecification": { + "description": "Description of metrics specification.", + "properties": { + "name": { + "type": "string", + "description": "The name of the metric." + }, + "displayName": { + "type": "string", + "description": "The display name of the metric." + }, + "displayDescription": { + "type": "string", + "description": "The description of the metric." + }, + "unit": { + "type": "string", + "description": "Units the metric to be displayed in." + }, + "aggregationType": { + "type": "string", + "description": "The aggregation type." + }, + "availabilities": { + "type": "array", + "items": { + "$ref": "#/definitions/Availability" + }, + "description": "List of availability." + }, + "enableRegionalMdmAccount": { + "type": "boolean", + "description": "Whether regional MDM account enabled." + }, + "fillGapWithZero": { + "type": "boolean", + "description": "Whether gaps would be filled with zeros." + }, + "metricFilterPattern": { + "type": "string", + "description": "Pattern for the filter of the metric." + }, + "dimensions": { + "type": "array", + "items": { + "$ref": "#/definitions/Dimension" + }, + "description": "List of dimensions." + }, + "isInternal": { + "type": "boolean", + "description": "Whether the metric is internal." + }, + "sourceMdmAccount": { + "type": "string", + "description": "The source MDM account." + }, + "sourceMdmNamespace": { + "type": "string", + "description": "The source MDM namespace." + }, + "resourceIdDimensionNameOverride": { + "type": "string", + "description": "The resource Id dimension name override." + } + } + }, + "Dimension": { + "description": "Dimension of the metric.", + "properties": { + "name": { + "type": "string", + "description": "The name of the dimension." + }, + "displayName": { + "type": "string", + "description": "The display name of the dimension." + }, + "internalName": { + "type": "string", + "description": "The internal name of the dimension." + } + } + }, + "Availability": { + "description": "Availability of the metric.", + "properties": { + "timeGrain": { + "type": "string", + "description": "The time grain of the availability." + }, + "retention": { + "type": "string", + "description": "The retention of the availability." + }, + "blobDuration": { + "type": "string", + "description": "Duration of the availability blob." + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/privateEndpoint.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/privateEndpoint.json new file mode 100644 index 000000000000..8f094c984533 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/privateEndpoint.json @@ -0,0 +1,971 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2021-02-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateEndpoints/{privateEndpointName}": { + "delete": { + "tags": [ + "PrivateEndpoints" + ], + "operationId": "PrivateEndpoints_Delete", + "description": "Deletes the specified private endpoint.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "privateEndpointName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete private endpoint": { + "$ref": "./examples/PrivateEndpointDelete.json" + } + } + }, + "get": { + "tags": [ + "PrivateEndpoints" + ], + "operationId": "PrivateEndpoints_Get", + "description": "Gets the specified private endpoint by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "privateEndpointName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting private endpoint resource.", + "schema": { + "$ref": "#/definitions/PrivateEndpoint" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Get private endpoint": { + "$ref": "./examples/PrivateEndpointGet.json" + }, + "Get private endpoint with manual approval connection": { + "$ref": "./examples/PrivateEndpointGetForManualApproval.json" + } + } + }, + "put": { + "tags": [ + "PrivateEndpoints" + ], + "operationId": "PrivateEndpoints_CreateOrUpdate", + "description": "Creates or updates an private endpoint in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "privateEndpointName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpoint" + }, + "description": "Parameters supplied to the create or update private endpoint operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting private endpoint resource.", + "schema": { + "$ref": "#/definitions/PrivateEndpoint" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting private endpoint resource.", + "schema": { + "$ref": "#/definitions/PrivateEndpoint" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create private endpoint": { + "$ref": "./examples/PrivateEndpointCreate.json" + }, + "Create private endpoint with manual approval connection": { + "$ref": "./examples/PrivateEndpointCreateForManualApproval.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateEndpoints": { + "get": { + "tags": [ + "PrivateEndpoints" + ], + "operationId": "PrivateEndpoints_List", + "description": "Gets all private endpoints in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of private endpoint resources.", + "schema": { + "$ref": "#/definitions/PrivateEndpointListResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List private endpoints in resource group": { + "$ref": "./examples/PrivateEndpointList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/privateEndpoints": { + "get": { + "tags": [ + "PrivateEndpoints" + ], + "operationId": "PrivateEndpoints_ListBySubscription", + "description": "Gets all private endpoints in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of private endpoint resources.", + "schema": { + "$ref": "#/definitions/PrivateEndpointListResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List all private endpoints": { + "$ref": "./examples/PrivateEndpointListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/{location}/availablePrivateEndpointTypes": { + "get": { + "operationId": "AvailablePrivateEndpointTypes_List", + "description": "Returns all of the resource types that can be linked to a Private Endpoint in this subscription in this region.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all of the resource types that can be linked to a Private Endpoint in this subscription in this region.", + "schema": { + "$ref": "#/definitions/AvailablePrivateEndpointTypesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get available PrivateEndpoint types": { + "$ref": "./examples/AvailablePrivateEndpointTypesGet.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/locations/{location}/availablePrivateEndpointTypes": { + "get": { + "operationId": "AvailablePrivateEndpointTypes_ListByResourceGroup", + "description": "Returns all of the resource types that can be linked to a Private Endpoint in this subscription in this region.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all of the resource types that can be linked to a Private Endpoint in this subscription in this region.", + "schema": { + "$ref": "#/definitions/AvailablePrivateEndpointTypesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get available PrivateEndpoint types in the resource group": { + "$ref": "./examples/AvailablePrivateEndpointTypesResourceGroupGet.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateEndpoints/{privateEndpointName}/privateDnsZoneGroups/{privateDnsZoneGroupName}": { + "delete": { + "tags": [ + "PrivateDnsZoneGroups" + ], + "operationId": "PrivateDnsZoneGroups_Delete", + "description": "Deletes the specified private dns zone group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "privateEndpointName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint." + }, + { + "name": "privateDnsZoneGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private dns zone group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource does not exist." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete private dns zone group": { + "$ref": "./examples/PrivateEndpointDnsZoneGroupDelete.json" + } + } + }, + "get": { + "tags": [ + "PrivateDnsZoneGroups" + ], + "operationId": "PrivateDnsZoneGroups_Get", + "description": "Gets the private dns zone group resource by specified private dns zone group name.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "privateEndpointName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint." + }, + { + "name": "privateDnsZoneGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private dns zone group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting privateDnsZoneGroup resource.", + "schema": { + "$ref": "#/definitions/PrivateDnsZoneGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get private dns zone group": { + "$ref": "./examples/PrivateEndpointDnsZoneGroupGet.json" + } + } + }, + "put": { + "tags": [ + "PrivateDnsZoneGroups" + ], + "operationId": "PrivateDnsZoneGroups_CreateOrUpdate", + "description": "Creates or updates a private dns zone group in the specified private endpoint.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "privateEndpointName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint." + }, + { + "name": "privateDnsZoneGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private dns zone group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateDnsZoneGroup" + }, + "description": "Parameters supplied to the create or update private dns zone group operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting PrivateDnsZoneGroup resource.", + "schema": { + "$ref": "#/definitions/PrivateDnsZoneGroup" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting PrivateDnsZoneGroup resource.", + "schema": { + "$ref": "#/definitions/PrivateDnsZoneGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create private dns zone group": { + "$ref": "./examples/PrivateEndpointDnsZoneGroupCreate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateEndpoints/{privateEndpointName}/privateDnsZoneGroups": { + "get": { + "tags": [ + "PrivateDnsZoneGroups" + ], + "operationId": "PrivateDnsZoneGroups_List", + "description": "Gets all private dns zone groups in a private endpoint.", + "parameters": [ + { + "name": "privateEndpointName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint." + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of private dns zone group resources.", + "schema": { + "$ref": "#/definitions/PrivateDnsZoneGroupListResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List private endpoints in resource group": { + "$ref": "./examples/PrivateEndpointDnsZoneGroupList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "PrivateEndpoint": { + "properties": { + "extendedLocation": { + "$ref": "./network.json#/definitions/ExtendedLocation", + "description": "The extended location of the load balancer." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PrivateEndpointProperties", + "description": "Properties of the private endpoint." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Private endpoint resource." + }, + "PrivateEndpointProperties": { + "properties": { + "subnet": { + "$ref": "./virtualNetwork.json#/definitions/Subnet", + "description": "The ID of the subnet from which the private IP will be allocated." + }, + "networkInterfaces": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "./networkInterface.json#/definitions/NetworkInterface" + }, + "description": "An array of references to the network interfaces created for this private endpoint." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the private endpoint resource." + }, + "privateLinkServiceConnections": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkServiceConnection" + }, + "description": "A grouping of information about the connection to the remote resource." + }, + "manualPrivateLinkServiceConnections": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkServiceConnection" + }, + "description": "A grouping of information about the connection to the remote resource. Used when the network admin does not have access to approve connections to the remote resource." + }, + "customDnsConfigs": { + "type": "array", + "items": { + "$ref": "#/definitions/CustomDnsConfigPropertiesFormat" + }, + "description": "An array of custom dns configurations." + } + }, + "description": "Properties of the private endpoint." + }, + "CustomDnsConfigPropertiesFormat": { + "properties": { + "fqdn": { + "type": "string", + "description": "Fqdn that resolves to private endpoint ip address." + }, + "ipAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of private ip addresses of the private endpoint." + } + }, + "description": "Contains custom Dns resolution configuration from customer." + }, + "PrivateLinkServiceConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PrivateLinkServiceConnectionProperties", + "description": "Properties of the private link service connection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "PrivateLinkServiceConnection resource." + }, + "PrivateLinkServiceConnectionProperties": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the private link service connection resource." + }, + "privateLinkServiceId": { + "type": "string", + "description": "The resource id of private link service." + }, + "groupIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The ID(s) of the group(s) obtained from the remote resource that this private endpoint should connect to." + }, + "requestMessage": { + "type": "string", + "description": "A message passed to the owner of the remote resource with this connection request. Restricted to 140 chars." + }, + "privateLinkServiceConnectionState": { + "$ref": "./privateLinkService.json#/definitions/PrivateLinkServiceConnectionState", + "description": "A collection of read-only information about the state of the connection to the remote resource." + } + }, + "description": "Properties of the PrivateLinkServiceConnection." + }, + "PrivateEndpointListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpoint" + }, + "description": "A list of private endpoint resources in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results.", + "readOnly": true + } + }, + "description": "Response for the ListPrivateEndpoints API service call." + }, + "PrivateDnsZoneGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateDnsZoneGroup" + }, + "description": "A list of private dns zone group resources in a private endpoint." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results.", + "readOnly": true + } + }, + "description": "Response for the ListPrivateDnsZoneGroups API service call." + }, + "AvailablePrivateEndpointTypesResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AvailablePrivateEndpointType" + }, + "description": "An array of available privateEndpoint type." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "An array of available PrivateEndpoint types." + }, + "AvailablePrivateEndpointType": { + "properties": { + "name": { + "type": "string", + "description": "The name of the service and resource." + }, + "id": { + "type": "string", + "description": "A unique identifier of the AvailablePrivateEndpoint Type resource." + }, + "type": { + "type": "string", + "description": "Resource type." + }, + "resourceName": { + "type": "string", + "description": "The name of the service and resource." + }, + "displayName": { + "type": "string", + "description": "Display name of the resource." + } + }, + "description": "The information of an AvailablePrivateEndpointType." + }, + "PrivateDnsZoneGroup": { + "properties": { + "name": { + "type": "string", + "description": "Name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PrivateDnsZoneGroupPropertiesFormat", + "description": "Properties of the private dns zone group." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Private dns zone group resource." + }, + "PrivateDnsZoneGroupPropertiesFormat": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the private dns zone group resource." + }, + "privateDnsZoneConfigs": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateDnsZoneConfig" + }, + "description": "A collection of private dns zone configurations of the private dns zone group." + } + }, + "description": "Properties of the private dns zone group." + }, + "PrivateDnsZoneConfig": { + "properties": { + "name": { + "type": "string", + "description": "Name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PrivateDnsZonePropertiesFormat", + "description": "Properties of the private dns zone configuration." + } + }, + "description": "PrivateDnsZoneConfig resource." + }, + "PrivateDnsZonePropertiesFormat": { + "properties": { + "privateDnsZoneId": { + "type": "string", + "description": "The resource id of the private dns zone." + }, + "recordSets": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/RecordSet" + }, + "description": "A collection of information regarding a recordSet, holding information to identify private resources." + } + }, + "description": "Properties of the private dns zone configuration resource." + }, + "RecordSet": { + "properties": { + "recordType": { + "type": "string", + "description": "Resource record type." + }, + "recordSetName": { + "type": "string", + "description": "Recordset name." + }, + "fqdn": { + "type": "string", + "description": "Fqdn that resolves to private endpoint ip address." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the recordset." + }, + "ttl": { + "type": "integer", + "description": "Recordset time to live." + }, + "ipAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The private ip address of the private endpoint." + } + }, + "description": "A collective group of information about the record set information." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/privateLinkService.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/privateLinkService.json new file mode 100644 index 000000000000..0bb581fbbf34 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/privateLinkService.json @@ -0,0 +1,1086 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2021-02-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateLinkServices/{serviceName}": { + "delete": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_Delete", + "description": "Deletes the specified private link service.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private link service." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete private link service": { + "$ref": "./examples/PrivateLinkServiceDelete.json" + } + } + }, + "get": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_Get", + "description": "Gets the specified private link service by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private link service." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting PrivateLinkService resource.", + "schema": { + "$ref": "#/definitions/PrivateLinkService" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Get private link service": { + "$ref": "./examples/PrivateLinkServiceGet.json" + } + } + }, + "put": { + "tags": [ + "PrivateLinkService" + ], + "operationId": "PrivateLinkServices_CreateOrUpdate", + "description": "Creates or updates an private link service in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private link service." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateLinkService" + }, + "description": "Parameters supplied to the create or update private link service operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting privateLinkService resource.", + "schema": { + "$ref": "#/definitions/PrivateLinkService" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting privateLinkService resource.", + "schema": { + "$ref": "#/definitions/PrivateLinkService" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create private link service": { + "$ref": "./examples/PrivateLinkServiceCreate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateLinkServices": { + "get": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_List", + "description": "Gets all private link services in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of privateLinkService resources.", + "schema": { + "$ref": "#/definitions/PrivateLinkServiceListResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List private link service in resource group": { + "$ref": "./examples/PrivateLinkServiceList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/privateLinkServices": { + "get": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_ListBySubscription", + "description": "Gets all private link service in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PrivateLinkService resources.", + "schema": { + "$ref": "#/definitions/PrivateLinkServiceListResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List all private list service": { + "$ref": "./examples/PrivateLinkServiceListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateLinkServices/{serviceName}/privateEndpointConnections/{peConnectionName}": { + "get": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_GetPrivateEndpointConnection", + "description": "Get the specific private end point connection by specific private link service in the resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private link service." + }, + { + "name": "peConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private end point connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting private end point connection resource.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Get private end point connection": { + "$ref": "./examples/PrivateLinkServiceGetPrivateEndpointConnection.json" + } + } + }, + "put": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_UpdatePrivateEndpointConnection", + "description": "Approve or reject private end point connection for a private link service in a subscription.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private link service." + }, + { + "name": "peConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private end point connection." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "Parameters supplied to approve or reject the private end point connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting PrivateEndpointConnection resource.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "approve or reject private end point connection for a private link service": { + "$ref": "./examples/PrivateLinkServiceUpdatePrivateEndpointConnection.json" + } + } + }, + "delete": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_DeletePrivateEndpointConnection", + "description": "Delete private end point connection for a private link service in a subscription.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private link service." + }, + { + "name": "peConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private end point connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "delete private end point connection for a private link service": { + "$ref": "./examples/PrivateLinkServiceDeletePrivateEndpointConnection.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateLinkServices/{serviceName}/privateEndpointConnections": { + "get": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_ListPrivateEndpointConnections", + "description": "Gets all private end point connections for a specific private link service.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private link service." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of private end point connection resources.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionListResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List private link service in resource group": { + "$ref": "./examples/PrivateLinkServiceListPrivateEndpointConnection.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/{location}/checkPrivateLinkServiceVisibility": { + "post": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_CheckPrivateLinkServiceVisibility", + "description": "Checks whether the subscription is visible to private link service.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CheckPrivateLinkServiceVisibilityRequest" + }, + "description": "The request body of CheckPrivateLinkService API call." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns whether the subscription is visible to private link service.", + "schema": { + "$ref": "#/definitions/PrivateLinkServiceVisibility" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Check private link service visibility": { + "$ref": "./examples/CheckPrivateLinkServiceVisibility.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/locations/{location}/checkPrivateLinkServiceVisibility": { + "post": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_CheckPrivateLinkServiceVisibilityByResourceGroup", + "description": "Checks whether the subscription is visible to private link service in the specified resource group.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CheckPrivateLinkServiceVisibilityRequest" + }, + "description": "The request body of CheckPrivateLinkService API call." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns whether the subscription is visible to private link service.", + "schema": { + "$ref": "#/definitions/PrivateLinkServiceVisibility" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Check private link service visibility": { + "$ref": "./examples/CheckPrivateLinkServiceVisibilityByResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/{location}/autoApprovedPrivateLinkServices": { + "get": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_ListAutoApprovedPrivateLinkServices", + "description": "Returns all of the private link service ids that can be linked to a Private Endpoint with auto approved in this subscription in this region.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all of the private link service ids that can be linked to a Private Endpoint with auto approved in this subscription in this region.", + "schema": { + "$ref": "#/definitions/AutoApprovedPrivateLinkServicesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get list of private link service id that can be linked to a private end point with auto approved": { + "$ref": "./examples/AutoApprovedPrivateLinkServicesGet.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/locations/{location}/autoApprovedPrivateLinkServices": { + "get": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_ListAutoApprovedPrivateLinkServicesByResourceGroup", + "description": "Returns all of the private link service ids that can be linked to a Private Endpoint with auto approved in this subscription in this region.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all of the private link service ids that can be linked to a Private Endpoint with auto approved in this subscription in this region.", + "schema": { + "$ref": "#/definitions/AutoApprovedPrivateLinkServicesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get list of private link service id that can be linked to a private end point with auto approved": { + "$ref": "./examples/AutoApprovedPrivateLinkServicesResourceGroupGet.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "PrivateLinkService": { + "properties": { + "extendedLocation": { + "$ref": "./network.json#/definitions/ExtendedLocation", + "description": "The extended location of the load balancer." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PrivateLinkServiceProperties", + "description": "Properties of the private link service." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Private link service resource." + }, + "PrivateLinkServiceProperties": { + "properties": { + "loadBalancerFrontendIpConfigurations": { + "type": "array", + "items": { + "$ref": "./loadBalancer.json#/definitions/FrontendIPConfiguration" + }, + "description": "An array of references to the load balancer IP configurations." + }, + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkServiceIpConfiguration" + }, + "description": "An array of private link service IP configurations." + }, + "networkInterfaces": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "./networkInterface.json#/definitions/NetworkInterface" + }, + "description": "An array of references to the network interfaces created for this private link service." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the private link service resource." + }, + "privateEndpointConnections": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "An array of list about connections to the private endpoint." + }, + "visibility": { + "allOf": [ + { + "$ref": "#/definitions/ResourceSet" + } + ], + "description": "The visibility list of the private link service." + }, + "autoApproval": { + "allOf": [ + { + "$ref": "#/definitions/ResourceSet" + } + ], + "description": "The auto-approval list of the private link service." + }, + "fqdns": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of Fqdn." + }, + "alias": { + "readOnly": true, + "type": "string", + "description": "The alias of the private link service." + }, + "enableProxyProtocol": { + "type": "boolean", + "description": "Whether the private link service is enabled for proxy protocol or not." + } + }, + "description": "Properties of the private link service." + }, + "ResourceSet": { + "properties": { + "subscriptions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of subscriptions." + } + }, + "description": "The base resource set for visibility and auto-approval." + }, + "PrivateLinkServiceIpConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PrivateLinkServiceIpConfigurationProperties", + "description": "Properties of the private link service ip configuration." + }, + "name": { + "type": "string", + "description": "The name of private link service ip configuration." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "The private link service ip configuration." + }, + "PrivateLinkServiceIpConfigurationProperties": { + "properties": { + "privateIPAddress": { + "type": "string", + "description": "The private IP address of the IP configuration." + }, + "privateIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "The private IP address allocation method." + }, + "subnet": { + "$ref": "./virtualNetwork.json#/definitions/Subnet", + "description": "The reference to the subnet resource." + }, + "primary": { + "type": "boolean", + "description": "Whether the ip configuration is primary or not." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the private link service IP configuration resource." + }, + "privateIPAddressVersion": { + "$ref": "./network.json#/definitions/IPVersion", + "description": "Whether the specific IP configuration is IPv4 or IPv6. Default is IPv4." + } + }, + "description": "Properties of private link service IP configuration." + }, + "PrivateEndpointConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "description": "Properties of the private end point connection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "PrivateEndpointConnection resource." + }, + "PrivateEndpointConnectionProperties": { + "properties": { + "privateEndpoint": { + "readOnly": true, + "$ref": "./privateEndpoint.json#/definitions/PrivateEndpoint", + "description": "The resource of private end point." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionState", + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the private endpoint connection resource." + }, + "linkIdentifier": { + "readOnly": true, + "type": "string", + "description": "The consumer link id." + } + }, + "description": "Properties of the PrivateEndpointConnectProperties." + }, + "PrivateLinkServiceConnectionState": { + "properties": { + "status": { + "type": "string", + "description": "Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service." + }, + "description": { + "type": "string", + "description": "The reason for approval/rejection of the connection." + }, + "actionsRequired": { + "type": "string", + "description": "A message indicating if changes on the service provider require any updates on the consumer." + } + }, + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "PrivateLinkServiceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkService" + }, + "description": "A list of PrivateLinkService resources in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results.", + "readOnly": true + } + }, + "description": "Response for the ListPrivateLinkService API service call." + }, + "PrivateEndpointConnectionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "A list of PrivateEndpointConnection resources for a specific private link service." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results.", + "readOnly": true + } + }, + "description": "Response for the ListPrivateEndpointConnection API service call." + }, + "CheckPrivateLinkServiceVisibilityRequest": { + "properties": { + "privateLinkServiceAlias": { + "type": "string", + "description": "The alias of the private link service." + } + }, + "description": "Request body of the CheckPrivateLinkServiceVisibility API service call." + }, + "PrivateLinkServiceVisibility": { + "properties": { + "visible": { + "type": "boolean", + "description": "Private Link Service Visibility (True/False)." + } + }, + "description": "Response for the CheckPrivateLinkServiceVisibility API service call." + }, + "AutoApprovedPrivateLinkServicesResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AutoApprovedPrivateLinkService" + }, + "description": "An array of auto approved private link service." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "An array of private link service id that can be linked to a private end point with auto approved." + }, + "AutoApprovedPrivateLinkService": { + "properties": { + "privateLinkService": { + "type": "string", + "description": "The id of the private link service resource." + } + }, + "description": "The information of an AutoApprovedPrivateLinkService." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/publicIpAddress.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/publicIpAddress.json new file mode 100644 index 000000000000..454dcfdb51ab --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/publicIpAddress.json @@ -0,0 +1,600 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2021-02-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPAddresses/{publicIpAddressName}": { + "delete": { + "tags": [ + "PublicIPAddresses" + ], + "operationId": "PublicIPAddresses_Delete", + "description": "Deletes the specified public IP address.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpAddressName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP address." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete public IP address": { + "$ref": "./examples/PublicIpAddressDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "PublicIPAddresses" + ], + "operationId": "PublicIPAddresses_Get", + "description": "Gets the specified public IP address in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpAddressName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP address." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting PublicIPAddress resource.", + "schema": { + "$ref": "#/definitions/PublicIPAddress" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get public IP address": { + "$ref": "./examples/PublicIpAddressGet.json" + } + } + }, + "put": { + "tags": [ + "PublicIPAddresses" + ], + "operationId": "PublicIPAddresses_CreateOrUpdate", + "description": "Creates or updates a static or dynamic public IP address.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpAddressName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP address." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PublicIPAddress" + }, + "description": "Parameters supplied to the create or update public IP address operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting PublicIPAddress resource.", + "schema": { + "$ref": "#/definitions/PublicIPAddress" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting PublicIPAddress resource.", + "schema": { + "$ref": "#/definitions/PublicIPAddress" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create public IP address defaults": { + "$ref": "./examples/PublicIpAddressCreateDefaults.json" + }, + "Create public IP address allocation method": { + "$ref": "./examples/PublicIpAddressCreateCustomizedValues.json" + }, + "Create public IP address DNS": { + "$ref": "./examples/PublicIpAddressCreateDns.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "PublicIPAddresses" + ], + "operationId": "PublicIPAddresses_UpdateTags", + "description": "Updates public IP address tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpAddressName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP address." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update public IP address tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting PublicIPAddress resource.", + "schema": { + "$ref": "#/definitions/PublicIPAddress" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update public IP address tags": { + "$ref": "./examples/PublicIpAddressUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/publicIPAddresses": { + "get": { + "tags": [ + "PublicIPAddresses" + ], + "operationId": "PublicIPAddresses_ListAll", + "description": "Gets all the public IP addresses in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PublicIPAddress resources.", + "schema": { + "$ref": "#/definitions/PublicIPAddressListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all public IP addresses": { + "$ref": "./examples/PublicIpAddressListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPAddresses": { + "get": { + "tags": [ + "PublicIPAddresses" + ], + "operationId": "PublicIPAddresses_List", + "description": "Gets all public IP addresses in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PublicIPAddress resources.", + "schema": { + "$ref": "#/definitions/PublicIPAddressListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List resource group public IP addresses": { + "$ref": "./examples/PublicIpAddressList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "PublicIPAddressSku": { + "properties": { + "name": { + "type": "string", + "description": "Name of a public IP address SKU.", + "enum": [ + "Basic", + "Standard" + ], + "x-ms-enum": { + "name": "PublicIPAddressSkuName", + "modelAsString": true + } + }, + "tier": { + "type": "string", + "description": "Tier of a public IP address SKU.", + "enum": [ + "Regional", + "Global" + ], + "x-ms-enum": { + "name": "PublicIPAddressSkuTier", + "modelAsString": true + } + } + }, + "description": "SKU of a public IP address." + }, + "PublicIPAddressPropertiesFormat": { + "properties": { + "publicIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "The public IP address allocation method." + }, + "publicIPAddressVersion": { + "$ref": "./network.json#/definitions/IPVersion", + "description": "The public IP address version." + }, + "ipConfiguration": { + "readOnly": true, + "$ref": "./networkInterface.json#/definitions/IPConfiguration", + "description": "The IP configuration associated with the public IP address." + }, + "dnsSettings": { + "$ref": "#/definitions/PublicIPAddressDnsSettings", + "description": "The FQDN of the DNS record associated with the public IP address." + }, + "ddosSettings": { + "$ref": "#/definitions/DdosSettings", + "description": "The DDoS protection custom policy associated with the public IP address." + }, + "ipTags": { + "type": "array", + "items": { + "$ref": "#/definitions/IpTag" + }, + "description": "The list of tags associated with the public IP address." + }, + "ipAddress": { + "type": "string", + "description": "The IP address associated with the public IP address resource." + }, + "publicIPPrefix": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The Public IP Prefix this Public IP Address should be allocated from." + }, + "idleTimeoutInMinutes": { + "type": "integer", + "format": "int32", + "description": "The idle timeout of the public IP address." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the public IP address resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the public IP address resource." + }, + "servicePublicIPAddress": { + "$ref": "#/definitions/PublicIPAddress", + "description": "The service public IP address of the public IP address resource." + }, + "natGateway": { + "$ref": "./natGateway.json#/definitions/NatGateway", + "description": "The NatGateway for the Public IP address." + }, + "migrationPhase": { + "type": "string", + "description": "Migration phase of Public IP Address.", + "enum": [ + "None", + "Prepare", + "Commit", + "Abort", + "Committed" + ], + "x-ms-enum": { + "name": "PublicIPAddressMigrationPhase", + "modelAsString": true + } + }, + "linkedPublicIPAddress": { + "$ref": "#/definitions/PublicIPAddress", + "description": "The linked public IP address of the public IP address resource." + }, + "deleteOption": { + "type": "string", + "description": "Specify what happens to the public IP address when the VM using it is deleted", + "enum": [ + "Delete", + "Detach" + ], + "x-ms-enum": { + "name": "DeleteOptions", + "modelAsString": true + } + } + }, + "description": "Public IP address properties." + }, + "PublicIPAddress": { + "properties": { + "extendedLocation": { + "$ref": "./network.json#/definitions/ExtendedLocation", + "description": "The extended location of the public ip address." + }, + "sku": { + "$ref": "#/definitions/PublicIPAddressSku", + "description": "The public IP address SKU." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PublicIPAddressPropertiesFormat", + "description": "Public IP address properties." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of availability zones denoting the IP allocated for the resource needs to come from." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Public IP address resource." + }, + "PublicIPAddressListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PublicIPAddress" + }, + "description": "A list of public IP addresses that exists in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListPublicIpAddresses API service call." + }, + "PublicIPAddressDnsSettings": { + "properties": { + "domainNameLabel": { + "type": "string", + "description": "The domain name label. The concatenation of the domain name label and the regionalized DNS zone make up the fully qualified domain name associated with the public IP address. If a domain name label is specified, an A DNS record is created for the public IP in the Microsoft Azure DNS system." + }, + "fqdn": { + "type": "string", + "description": "The Fully Qualified Domain Name of the A DNS record associated with the public IP. This is the concatenation of the domainNameLabel and the regionalized DNS zone." + }, + "reverseFqdn": { + "type": "string", + "description": "The reverse FQDN. A user-visible, fully qualified domain name that resolves to this public IP address. If the reverseFqdn is specified, then a PTR DNS record is created pointing from the IP address in the in-addr.arpa domain to the reverse FQDN." + } + }, + "description": "Contains FQDN of the DNS record associated with the public IP address." + }, + "DdosSettings": { + "properties": { + "ddosCustomPolicy": { + "readOnly": false, + "$ref": "./network.json#/definitions/SubResource", + "description": "The DDoS custom policy associated with the public IP." + }, + "protectionCoverage": { + "readOnly": false, + "type": "string", + "enum": [ + "Basic", + "Standard" + ], + "x-ms-enum": { + "name": "DdosSettingsProtectionCoverage", + "modelAsString": true + }, + "description": "The DDoS protection policy customizability of the public IP. Only standard coverage will have the ability to be customized." + }, + "protectedIP": { + "readOnly": false, + "type": "boolean", + "description": "Enables DDoS protection on the public IP." + } + }, + "description": "Contains the DDoS protection settings of the public IP." + }, + "IpTag": { + "properties": { + "ipTagType": { + "type": "string", + "description": "The IP tag type. Example: FirstPartyUsage." + }, + "tag": { + "type": "string", + "description": "The value of the IP tag associated with the public IP. Example: SQL." + } + }, + "description": "Contains the IpTag associated with the object." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/publicIpPrefix.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/publicIpPrefix.json new file mode 100644 index 000000000000..296ecbb892e9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/publicIpPrefix.json @@ -0,0 +1,509 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2021-02-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIpPrefixName}": { + "delete": { + "tags": [ + "PublicIPPrefixes" + ], + "operationId": "PublicIPPrefixes_Delete", + "description": "Deletes the specified public IP prefix.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpPrefixName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the PublicIpPrefix." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete public IP prefix": { + "$ref": "./examples/PublicIpPrefixDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "PublicIPPrefixes" + ], + "operationId": "PublicIPPrefixes_Get", + "description": "Gets the specified public IP prefix in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpPrefixName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP prefix." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting PublicIPPrefix resource.", + "schema": { + "$ref": "#/definitions/PublicIPPrefix" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get public IP prefix": { + "$ref": "./examples/PublicIpPrefixGet.json" + } + } + }, + "put": { + "tags": [ + "PublicIPPrefixes" + ], + "operationId": "PublicIPPrefixes_CreateOrUpdate", + "description": "Creates or updates a static or dynamic public IP prefix.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpPrefixName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP prefix." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PublicIPPrefix" + }, + "description": "Parameters supplied to the create or update public IP prefix operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting PublicIPPrefix resource.", + "schema": { + "$ref": "#/definitions/PublicIPPrefix" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting PublicIPPrefix resource.", + "schema": { + "$ref": "#/definitions/PublicIPPrefix" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create public IP prefix defaults": { + "$ref": "./examples/PublicIpPrefixCreateDefaults.json" + }, + "Create public IP prefix allocation method": { + "$ref": "./examples/PublicIpPrefixCreateCustomizedValues.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "PublicIPPrefixes" + ], + "operationId": "PublicIPPrefixes_UpdateTags", + "description": "Updates public IP prefix tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpPrefixName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP prefix." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update public IP prefix tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting PublicIPPrefix resource.", + "schema": { + "$ref": "#/definitions/PublicIPPrefix" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update public IP prefix tags": { + "$ref": "./examples/PublicIpPrefixUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/publicIPPrefixes": { + "get": { + "tags": [ + "PublicIPPrefixes" + ], + "operationId": "PublicIPPrefixes_ListAll", + "description": "Gets all the public IP prefixes in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PublicIPPrefix resources.", + "schema": { + "$ref": "#/definitions/PublicIPPrefixListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all public IP prefixes": { + "$ref": "./examples/PublicIpPrefixListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes": { + "get": { + "tags": [ + "PublicIPPrefixes" + ], + "operationId": "PublicIPPrefixes_List", + "description": "Gets all public IP prefixes in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PublicIPPrefix resources.", + "schema": { + "$ref": "#/definitions/PublicIPPrefixListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List resource group public IP prefixes": { + "$ref": "./examples/PublicIpPrefixList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "PublicIPPrefixSku": { + "properties": { + "name": { + "type": "string", + "description": "Name of a public IP prefix SKU.", + "enum": [ + "Standard" + ], + "x-ms-enum": { + "name": "PublicIPPrefixSkuName", + "modelAsString": true + } + }, + "tier": { + "type": "string", + "description": "Tier of a public IP prefix SKU.", + "enum": [ + "Regional", + "Global" + ], + "x-ms-enum": { + "name": "PublicIPPrefixSkuTier", + "modelAsString": true + } + } + }, + "description": "SKU of a public IP prefix." + }, + "PublicIPPrefixPropertiesFormat": { + "properties": { + "publicIPAddressVersion": { + "$ref": "./network.json#/definitions/IPVersion", + "description": "The public IP address version." + }, + "ipTags": { + "type": "array", + "items": { + "$ref": "./publicIpAddress.json#/definitions/IpTag" + }, + "description": "The list of tags associated with the public IP prefix." + }, + "prefixLength": { + "type": "integer", + "format": "int32", + "description": "The Length of the Public IP Prefix." + }, + "ipPrefix": { + "readOnly": true, + "type": "string", + "description": "The allocated Prefix." + }, + "publicIPAddresses": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ReferencedPublicIpAddress" + }, + "description": "The list of all referenced PublicIPAddresses." + }, + "loadBalancerFrontendIpConfiguration": { + "readOnly": true, + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to load balancer frontend IP configuration associated with the public IP prefix." + }, + "customIPPrefix": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The customIpPrefix that this prefix is associated with." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the public IP prefix resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the public IP prefix resource." + }, + "natGateway": { + "$ref": "./natGateway.json#/definitions/NatGateway", + "description": "NatGateway of Public IP Prefix." + } + }, + "description": "Public IP prefix properties." + }, + "PublicIPPrefix": { + "properties": { + "extendedLocation": { + "$ref": "./network.json#/definitions/ExtendedLocation", + "description": "The extended location of the public ip address." + }, + "sku": { + "$ref": "#/definitions/PublicIPPrefixSku", + "description": "The public IP prefix SKU." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PublicIPPrefixPropertiesFormat", + "description": "Public IP prefix properties." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of availability zones denoting the IP allocated for the resource needs to come from." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Public IP prefix resource." + }, + "PublicIPPrefixListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PublicIPPrefix" + }, + "description": "A list of public IP prefixes that exists in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListPublicIpPrefixes API service call." + }, + "ReferencedPublicIpAddress": { + "properties": { + "id": { + "type": "string", + "description": "The PublicIPAddress Reference." + } + }, + "description": "Reference to a public IP address." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/routeFilter.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/routeFilter.json new file mode 100644 index 000000000000..7842865feced --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/routeFilter.json @@ -0,0 +1,822 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2021-02-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters/{routeFilterName}": { + "delete": { + "tags": [ + "RouteFilters" + ], + "operationId": "RouteFilters_Delete", + "x-ms-examples": { + "RouteFilterDelete": { + "$ref": "./examples/RouteFilterDelete.json" + } + }, + "description": "Deletes the specified route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "RouteFilters" + ], + "operationId": "RouteFilters_Get", + "x-ms-examples": { + "RouteFilterGet": { + "$ref": "./examples/RouteFilterGet.json" + } + }, + "description": "Gets the specified route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced express route bgp peering resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Route Filter resource.", + "schema": { + "$ref": "#/definitions/RouteFilter" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "RouteFilters" + ], + "operationId": "RouteFilters_CreateOrUpdate", + "x-ms-examples": { + "RouteFilterCreate": { + "$ref": "./examples/RouteFilterCreate.json" + } + }, + "description": "Creates or updates a route filter in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "name": "routeFilterParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RouteFilter" + }, + "description": "Parameters supplied to the create or update route filter operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Route Filter resource.", + "schema": { + "$ref": "#/definitions/RouteFilter" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting Route Filter resource.", + "schema": { + "$ref": "#/definitions/RouteFilter" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "RouteFilters" + ], + "operationId": "RouteFilters_UpdateTags", + "description": "Updates tags of a route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update route filter tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Route Filter resource.", + "schema": { + "$ref": "#/definitions/RouteFilter" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update route filter tags": { + "$ref": "./examples/RouteFilterUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters": { + "get": { + "tags": [ + "RouteFilters" + ], + "operationId": "RouteFilters_ListByResourceGroup", + "x-ms-examples": { + "RouteFilterListByResourceGroup": { + "$ref": "./examples/RouteFilterListByResourceGroup.json" + } + }, + "description": "Gets all route filters in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Route Filter resources.", + "schema": { + "$ref": "#/definitions/RouteFilterListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/routeFilters": { + "get": { + "tags": [ + "RouteFilters" + ], + "operationId": "RouteFilters_List", + "x-ms-examples": { + "RouteFilterList": { + "$ref": "./examples/RouteFilterList.json" + } + }, + "description": "Gets all route filters in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Route Filter resources.", + "schema": { + "$ref": "#/definitions/RouteFilterListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters/{routeFilterName}/routeFilterRules/{ruleName}": { + "delete": { + "tags": [ + "RouteFilterRules" + ], + "operationId": "RouteFilterRules_Delete", + "x-ms-examples": { + "RouteFilterRuleDelete": { + "$ref": "./examples/RouteFilterRuleDelete.json" + } + }, + "description": "Deletes the specified rule from a route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "name": "ruleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Accepted." + }, + "204": { + "description": "Rule was deleted or not found." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "RouteFilterRules" + ], + "operationId": "RouteFilterRules_Get", + "x-ms-examples": { + "RouteFilterRuleGet": { + "$ref": "./examples/RouteFilterRuleGet.json" + } + }, + "description": "Gets the specified rule from a route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "name": "ruleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Route Filter Rule resource.", + "schema": { + "$ref": "#/definitions/RouteFilterRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "RouteFilterRules" + ], + "operationId": "RouteFilterRules_CreateOrUpdate", + "x-ms-examples": { + "RouteFilterRuleCreate": { + "$ref": "./examples/RouteFilterRuleCreate.json" + } + }, + "description": "Creates or updates a route in the specified route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "name": "ruleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter rule." + }, + { + "name": "routeFilterRuleParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RouteFilterRule" + }, + "description": "Parameters supplied to the create or update route filter rule operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting Route Filter Rule resource.", + "schema": { + "$ref": "#/definitions/RouteFilterRule" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting Route Filter Rule resource.", + "schema": { + "$ref": "#/definitions/RouteFilterRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters/{routeFilterName}/routeFilterRules": { + "get": { + "tags": [ + "RouteFilterRules" + ], + "operationId": "RouteFilterRules_ListByRouteFilter", + "x-ms-examples": { + "RouteFilterRuleListByRouteFilter": { + "$ref": "./examples/RouteFilterRuleListByRouteFilter.json" + } + }, + "description": "Gets all RouteFilterRules in a route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Route Filter Rule resources.", + "schema": { + "$ref": "#/definitions/RouteFilterRuleListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "RouteFilterRulePropertiesFormat": { + "required": [ + "access", + "routeFilterRuleType", + "communities" + ], + "properties": { + "access": { + "$ref": "./network.json#/definitions/Access", + "description": "The access type of the rule." + }, + "routeFilterRuleType": { + "type": "string", + "description": "The rule type of the rule.", + "enum": [ + "Community" + ], + "x-ms-enum": { + "name": "RouteFilterRuleType", + "modelAsString": true + } + }, + "communities": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The collection for bgp community values to filter on. e.g. ['12076:5010','12076:5020']." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the route filter rule resource." + } + }, + "description": "Route Filter Rule Resource." + }, + "RouteFilterRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RouteFilterRulePropertiesFormat", + "description": "Properties of the route filter rule." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Route Filter Rule Resource." + }, + "PatchRouteFilterRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RouteFilterRulePropertiesFormat", + "description": "Properties of the route filter rule." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Route Filter Rule Resource." + }, + "RouteFilterPropertiesFormat": { + "properties": { + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/RouteFilterRule" + }, + "description": "Collection of RouteFilterRules contained within a route filter." + }, + "peerings": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRouteCircuitPeering" + }, + "description": "A collection of references to express route circuit peerings." + }, + "ipv6Peerings": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRouteCircuitPeering" + }, + "description": "A collection of references to express route circuit ipv6 peerings." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the route filter resource." + } + }, + "description": "Route Filter Resource." + }, + "RouteFilter": { + "required": [ + "location" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RouteFilterPropertiesFormat", + "description": "Properties of the route filter." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Route Filter Resource." + }, + "PatchRouteFilter": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RouteFilterPropertiesFormat", + "description": "Properties of the route filter." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Route Filter Resource." + }, + "RouteFilterListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RouteFilter" + }, + "description": "A list of route filters in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListRouteFilters API service call." + }, + "RouteFilterRuleListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RouteFilterRule" + }, + "description": "A list of RouteFilterRules in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListRouteFilterRules API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/routeTable.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/routeTable.json new file mode 100644 index 000000000000..aad6ca472695 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/routeTable.json @@ -0,0 +1,768 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2021-02-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables/{routeTableName}": { + "delete": { + "tags": [ + "RouteTables" + ], + "operationId": "RouteTables_Delete", + "description": "Deletes the specified route table.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "200": { + "description": "Request successful. Operation to delete was accepted." + }, + "202": { + "description": "Accepted. If route table not found returned synchronously, otherwise if found returned asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete route table": { + "$ref": "./examples/RouteTableDelete.json" + } + } + }, + "get": { + "tags": [ + "RouteTables" + ], + "operationId": "RouteTables_Get", + "description": "Gets the specified route table.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting RouteTable resource.", + "schema": { + "$ref": "#/definitions/RouteTable" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get route table": { + "$ref": "./examples/RouteTableGet.json" + } + } + }, + "put": { + "tags": [ + "RouteTables" + ], + "operationId": "RouteTables_CreateOrUpdate", + "description": "Create or updates a route table in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RouteTable" + }, + "description": "Parameters supplied to the create or update route table operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting RouteTable resource.", + "schema": { + "$ref": "#/definitions/RouteTable" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting RouteTable resource.", + "schema": { + "$ref": "#/definitions/RouteTable" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create route table": { + "$ref": "./examples/RouteTableCreate.json" + }, + "Create route table with route": { + "$ref": "./examples/RouteTableCreateWithRoute.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "RouteTables" + ], + "operationId": "RouteTables_UpdateTags", + "description": "Updates a route table tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update route table tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting RouteTable resource.", + "schema": { + "$ref": "#/definitions/RouteTable" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update route table tags": { + "$ref": "./examples/RouteTableUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables": { + "get": { + "tags": [ + "RouteTables" + ], + "operationId": "RouteTables_List", + "description": "Gets all route tables in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of RouteTable resources.", + "schema": { + "$ref": "#/definitions/RouteTableListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List route tables in resource group": { + "$ref": "./examples/RouteTableList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/routeTables": { + "get": { + "tags": [ + "RouteTables" + ], + "operationId": "RouteTables_ListAll", + "description": "Gets all route tables in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of RouteTable resources.", + "schema": { + "$ref": "#/definitions/RouteTableListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all route tables": { + "$ref": "./examples/RouteTableListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables/{routeTableName}/routes/{routeName}": { + "delete": { + "tags": [ + "Routes" + ], + "operationId": "Routes_Delete", + "description": "Deletes the specified route from a route table.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "name": "routeName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Accepted." + }, + "204": { + "description": "Route was deleted or not found." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete route": { + "$ref": "./examples/RouteTableRouteDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "Routes" + ], + "operationId": "Routes_Get", + "description": "Gets the specified route from a route table.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "name": "routeName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Route resource.", + "schema": { + "$ref": "#/definitions/Route" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get route": { + "$ref": "./examples/RouteTableRouteGet.json" + } + } + }, + "put": { + "tags": [ + "Routes" + ], + "operationId": "Routes_CreateOrUpdate", + "description": "Creates or updates a route in the specified route table.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "name": "routeName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route." + }, + { + "name": "routeParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Route" + }, + "description": "Parameters supplied to the create or update route operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting Route resource.", + "schema": { + "$ref": "#/definitions/Route" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting Route resource.", + "schema": { + "$ref": "#/definitions/Route" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create route": { + "$ref": "./examples/RouteTableRouteCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables/{routeTableName}/routes": { + "get": { + "tags": [ + "Routes" + ], + "operationId": "Routes_List", + "description": "Gets all routes in a route table.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Route resources.", + "schema": { + "$ref": "#/definitions/RouteListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List routes": { + "$ref": "./examples/RouteTableRouteList.json" + } + } + } + } + }, + "definitions": { + "RoutePropertiesFormat": { + "properties": { + "addressPrefix": { + "type": "string", + "description": "The destination CIDR to which the route applies." + }, + "nextHopType": { + "$ref": "#/definitions/RouteNextHopType", + "description": "The type of Azure hop the packet should be sent to." + }, + "nextHopIpAddress": { + "type": "string", + "description": "The IP address packets should be forwarded to. Next hop values are only allowed in routes where the next hop type is VirtualAppliance." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the route resource." + }, + "hasBgpOverride": { + "type": "boolean", + "description": "A value indicating whether this route overrides overlapping BGP routes regardless of LPM." + } + }, + "required": [ + "nextHopType" + ], + "description": "Route resource." + }, + "Route": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RoutePropertiesFormat", + "description": "Properties of the route." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "description": "The type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Route resource." + }, + "RouteTablePropertiesFormat": { + "properties": { + "routes": { + "type": "array", + "items": { + "$ref": "#/definitions/Route" + }, + "description": "Collection of routes contained within a route table." + }, + "subnets": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./virtualNetwork.json#/definitions/Subnet" + }, + "description": "A collection of references to subnets." + }, + "disableBgpRoutePropagation": { + "type": "boolean", + "description": "Whether to disable the routes learned by BGP on that route table. True means disable." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the route table resource." + }, + "resourceGuid": { + "type": "string", + "readOnly": true, + "description": "The resource GUID property of the route table." + } + }, + "description": "Route Table resource." + }, + "RouteTable": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RouteTablePropertiesFormat", + "description": "Properties of the route table." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Route table resource." + }, + "RouteTableListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RouteTable" + }, + "description": "A list of route tables in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListRouteTable API service call." + }, + "RouteListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Route" + }, + "description": "A list of routes in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListRoute API service call." + }, + "RouteNextHopType": { + "type": "string", + "description": "The type of Azure hop the packet should be sent to.", + "enum": [ + "VirtualNetworkGateway", + "VnetLocal", + "Internet", + "VirtualAppliance", + "None" + ], + "x-ms-enum": { + "name": "RouteNextHopType", + "modelAsString": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/securityPartnerProvider.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/securityPartnerProvider.json new file mode 100644 index 000000000000..becc6e0387ef --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/securityPartnerProvider.json @@ -0,0 +1,441 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2021-02-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/securityPartnerProviders/{securityPartnerProviderName}": { + "delete": { + "tags": [ + "SecurityPartnerProviders" + ], + "operationId": "SecurityPartnerProviders_Delete", + "description": "Deletes the specified Security Partner Provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "securityPartnerProviderName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Security Partner Provider." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete Security Partner Provider": { + "$ref": "./examples/SecurityPartnerProviderDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "SecurityPartnerProviders" + ], + "operationId": "SecurityPartnerProviders_Get", + "description": "Gets the specified Security Partner Provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "securityPartnerProviderName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Security Partner Provider." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a SecurityPartnerProvider resource.", + "schema": { + "$ref": "#/definitions/SecurityPartnerProvider" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Security Partner Provider": { + "$ref": "./examples/SecurityPartnerProviderGet.json" + } + } + }, + "put": { + "tags": [ + "SecurityPartnerProviders" + ], + "operationId": "SecurityPartnerProviders_CreateOrUpdate", + "description": "Creates or updates the specified Security Partner Provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "securityPartnerProviderName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Security Partner Provider." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SecurityPartnerProvider" + }, + "description": "Parameters supplied to the create or update Security Partner Provider operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting SecurityPartnerProvider resource.", + "schema": { + "$ref": "#/definitions/SecurityPartnerProvider" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting SecurityPartnerProvider resource.", + "schema": { + "$ref": "#/definitions/SecurityPartnerProvider" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create Security Partner Provider": { + "$ref": "./examples/SecurityPartnerProviderPut.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "SecurityPartnerProviders" + ], + "operationId": "SecurityPartnerProviders_UpdateTags", + "description": "Updates tags of a Security Partner Provider resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "securityPartnerProviderName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Security Partner Provider." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update Security Partner Provider tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting SecurityPartnerProvider resource.", + "schema": { + "$ref": "#/definitions/SecurityPartnerProvider" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update Security Partner Provider Tags": { + "$ref": "./examples/SecurityPartnerProviderUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/securityPartnerProviders": { + "get": { + "tags": [ + "SecurityPartnerProviders" + ], + "operationId": "SecurityPartnerProviders_ListByResourceGroup", + "description": "Lists all Security Partner Providers in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of SecurityPartnerProvider resources.", + "schema": { + "$ref": "#/definitions/SecurityPartnerProviderListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Security Partner Providers for a given resource group": { + "$ref": "./examples/SecurityPartnerProviderListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/securityPartnerProviders": { + "get": { + "tags": [ + "SecurityPartnerProviders" + ], + "operationId": "SecurityPartnerProviders_List", + "description": "Gets all the Security Partner Providers in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of SecurityPartnerProvider resources.", + "schema": { + "$ref": "#/definitions/SecurityPartnerProviderListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Security Partner Providers for a given subscription": { + "$ref": "./examples/SecurityPartnerProviderListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "SecurityPartnerProviderPropertiesFormat": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the Security Partner Provider resource." + }, + "securityProviderName": { + "description": "The security provider name.", + "$ref": "#/definitions/SecurityPartnerProvidersecurityProviderName" + }, + "connectionStatus": { + "readOnly": true, + "description": "The connection status with the Security Partner Provider.", + "$ref": "#/definitions/SecurityPartnerProviderConnectionStatus" + }, + "virtualHub": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The virtualHub to which the Security Partner Provider belongs." + } + }, + "description": "Properties of the Security Partner Provider." + }, + "SecurityPartnerProvider": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SecurityPartnerProviderPropertiesFormat", + "description": "Properties of the Security Partner Provider." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Security Partner Provider resource." + }, + "SecurityPartnerProviderListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SecurityPartnerProvider" + }, + "description": "List of Security Partner Providers in a resource group." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListSecurityPartnerProviders API service call." + }, + "SecurityPartnerProvidersecurityProviderName": { + "type": "string", + "description": "The Security Providers.", + "enum": [ + "ZScaler", + "IBoss", + "Checkpoint" + ], + "x-ms-enum": { + "name": "SecurityProviderName", + "modelAsString": true + } + }, + "SecurityPartnerProviderConnectionStatus": { + "type": "string", + "description": "The current state of the connection with Security Partner Provider.", + "readOnly": true, + "enum": [ + "Unknown", + "PartiallyConnected", + "Connected", + "NotConnected" + ], + "x-ms-enum": { + "name": "SecurityPartnerProviderConnectionStatus", + "modelAsString": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/serviceCommunity.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/serviceCommunity.json new file mode 100644 index 000000000000..a376df06094c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/serviceCommunity.json @@ -0,0 +1,158 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2021-02-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/bgpServiceCommunities": { + "get": { + "tags": [ + "BgpServiceCommunities" + ], + "operationId": "BgpServiceCommunities_List", + "x-ms-examples": { + "ServiceCommunityList": { + "$ref": "./examples/ServiceCommunityList.json" + } + }, + "description": "Gets all the available bgp service communities.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of BgpServiceCommunity resources.", + "schema": { + "$ref": "#/definitions/BgpServiceCommunityListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "BGPCommunity": { + "properties": { + "serviceSupportedRegion": { + "type": "string", + "description": "The region which the service support. e.g. For O365, region is Global." + }, + "communityName": { + "type": "string", + "description": "The name of the bgp community. e.g. Skype." + }, + "communityValue": { + "type": "string", + "description": "The value of the bgp community. For more information: https://docs.microsoft.com/en-us/azure/expressroute/expressroute-routing." + }, + "communityPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The prefixes that the bgp community contains." + }, + "isAuthorizedToUse": { + "type": "boolean", + "description": "Customer is authorized to use bgp community or not." + }, + "serviceGroup": { + "type": "string", + "description": "The service group of the bgp community contains." + } + }, + "description": "Contains bgp community information offered in Service Community resources." + }, + "BgpServiceCommunityPropertiesFormat": { + "properties": { + "serviceName": { + "type": "string", + "description": "The name of the bgp community. e.g. Skype." + }, + "bgpCommunities": { + "type": "array", + "items": { + "$ref": "#/definitions/BGPCommunity" + }, + "description": "A list of bgp communities." + } + }, + "description": "Properties of Service Community." + }, + "BgpServiceCommunity": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/BgpServiceCommunityPropertiesFormat", + "description": "Properties of the BGP service community." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Service Community Properties." + }, + "BgpServiceCommunityListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BgpServiceCommunity" + }, + "description": "A list of service community resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListServiceCommunity API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/serviceEndpointPolicy.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/serviceEndpointPolicy.json new file mode 100644 index 000000000000..238c590e13d0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/serviceEndpointPolicy.json @@ -0,0 +1,747 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2021-02-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies/{serviceEndpointPolicyName}": { + "delete": { + "tags": [ + "ServiceEndpointPolicies" + ], + "operationId": "ServiceEndpointPolicies_Delete", + "description": "Deletes the specified service endpoint policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Request successful. Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete service endpoint policy": { + "$ref": "./examples/ServiceEndpointPolicyDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "ServiceEndpointPolicies" + ], + "operationId": "ServiceEndpointPolicies_Get", + "description": "Gets the specified service Endpoint Policies in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ServiceEndpointPolicy resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get service endPoint Policy": { + "$ref": "./examples/ServiceEndpointPolicyGet.json" + } + } + }, + "put": { + "tags": [ + "ServiceEndpointPolicies" + ], + "operationId": "ServiceEndpointPolicies_CreateOrUpdate", + "description": "Creates or updates a service Endpoint Policies.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicy" + }, + "description": "Parameters supplied to the create or update service endpoint policy operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting ServiceEndpointPolicy resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicy" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting ServiceEndpointPolicy resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create service endpoint policy": { + "$ref": "./examples/ServiceEndpointPolicyCreate.json" + }, + "Create service endpoint policy with definition": { + "$ref": "./examples/ServiceEndpointPolicyCreateWithDefinition.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "ServiceEndpointPolicies" + ], + "operationId": "ServiceEndpointPolicies_UpdateTags", + "description": "Updates tags of a service endpoint policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update service endpoint policy tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ServiceEndpointPolicy resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update service endpoint policy tags": { + "$ref": "./examples/ServiceEndpointPolicyUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/ServiceEndpointPolicies": { + "get": { + "tags": [ + "ServiceEndpointPolicies" + ], + "operationId": "ServiceEndpointPolicies_List", + "description": "Gets all the service endpoint policies in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ServiceEndpointPolicy resources.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all service endpoint policy": { + "$ref": "./examples/ServiceEndpointPolicyListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies": { + "get": { + "tags": [ + "ServiceEndpointPolicies" + ], + "operationId": "ServiceEndpointPolicies_ListByResourceGroup", + "description": "Gets all service endpoint Policies in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ServiceEndpointPolicy resources.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List resource group service endpoint policies": { + "$ref": "./examples/ServiceEndpointPolicyList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies/{serviceEndpointPolicyName}/serviceEndpointPolicyDefinitions/{serviceEndpointPolicyDefinitionName}": { + "delete": { + "tags": [ + "ServiceEndpointPolicyDefinitions" + ], + "operationId": "ServiceEndpointPolicyDefinitions_Delete", + "description": "Deletes the specified ServiceEndpoint policy definitions.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Service Endpoint Policy." + }, + { + "name": "serviceEndpointPolicyDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy definition." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete service endpoint policy definitions from service endpoint policy": { + "$ref": "./examples/ServiceEndpointPolicyDefinitionDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "serviceEndpointPolicyDefinitions" + ], + "operationId": "ServiceEndpointPolicyDefinitions_Get", + "description": "Get the specified service endpoint policy definitions from service endpoint policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy name." + }, + { + "name": "serviceEndpointPolicyDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy definition name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ServiceEndpointPolicyDefinition resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinition" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get service endpoint definition in service endpoint policy": { + "$ref": "./examples/ServiceEndpointPolicyDefinitionGet.json" + } + } + }, + "put": { + "tags": [ + "serviceEndpointPolicyDefinitions" + ], + "operationId": "ServiceEndpointPolicyDefinitions_CreateOrUpdate", + "description": "Creates or updates a service endpoint policy definition in the specified service endpoint policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy." + }, + { + "name": "serviceEndpointPolicyDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy definition name." + }, + { + "name": "ServiceEndpointPolicyDefinitions", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinition" + }, + "description": "Parameters supplied to the create or update service endpoint policy operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ServiceEndpointPolicyDefinition resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinition" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ServiceEndpointPolicyDefinition resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinition" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create service endpoint policy definition": { + "$ref": "./examples/ServiceEndpointPolicyDefinitionCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies/{serviceEndpointPolicyName}/serviceEndpointPolicyDefinitions": { + "get": { + "tags": [ + "ServiceEndpointPolicyDefinitions" + ], + "operationId": "ServiceEndpointPolicyDefinitions_ListByResourceGroup", + "description": "Gets all service endpoint policy definitions in a service end point policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ServiceEndpointPolicyDefinition resources.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinitionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List service endpoint definitions in service end point policy": { + "$ref": "./examples/ServiceEndpointPolicyDefinitionList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "ServiceEndpointPolicyDefinitionPropertiesFormat": { + "properties": { + "description": { + "type": "string", + "description": "A description for this rule. Restricted to 140 chars." + }, + "service": { + "type": "string", + "description": "Service endpoint name." + }, + "serviceResources": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of service resources." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the service endpoint policy definition resource." + } + }, + "description": "Service Endpoint policy definition resource." + }, + "ServiceEndpointPolicyDefinition": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ServiceEndpointPolicyDefinitionPropertiesFormat", + "description": "Properties of the service endpoint policy definition." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Service Endpoint policy definitions." + }, + "ServiceEndpointPolicyDefinitionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinition" + }, + "description": "The service endpoint policy definition in a service endpoint policy." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListServiceEndpointPolicyDefinition API service call. Retrieves all service endpoint policy definition that belongs to a service endpoint policy." + }, + "ServiceEndpointPolicyPropertiesFormat": { + "properties": { + "serviceEndpointPolicyDefinitions": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinition" + }, + "description": "A collection of service endpoint policy definitions of the service endpoint policy." + }, + "subnets": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./virtualNetwork.json#/definitions/Subnet" + }, + "description": "A collection of references to subnets." + }, + "resourceGuid": { + "type": "string", + "readOnly": true, + "description": "The resource GUID property of the service endpoint policy resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the service endpoint policy resource." + } + }, + "description": "Service Endpoint Policy resource." + }, + "ServiceEndpointPolicy": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ServiceEndpointPolicyPropertiesFormat", + "description": "Properties of the service end point policy." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "kind": { + "readOnly": true, + "type": "string", + "description": "Kind of service endpoint policy. This is metadata used for the Azure portal experience." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Service End point policy resource." + }, + "ServiceEndpointPolicyListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceEndpointPolicy" + }, + "description": "A list of ServiceEndpointPolicy resources." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListServiceEndpointPolicies API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/serviceTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/serviceTags.json new file mode 100644 index 000000000000..662d7c121869 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/serviceTags.json @@ -0,0 +1,176 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2021-02-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/{location}/serviceTags": { + "get": { + "operationId": "ServiceTags_List", + "description": "Gets a list of service tag information resources.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location that will be used as a reference for version (not as a filter based on location, you will get the list of service tags with prefix details across all regions but limited to the cloud that your subscription belongs to)." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns a list of service tag information resources.", + "schema": { + "$ref": "#/definitions/ServiceTagsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get list of service tags": { + "$ref": "./examples/ServiceTagsList.json" + } + } + } + } + }, + "definitions": { + "ServiceTagsListResult": { + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the cloud." + }, + "id": { + "type": "string", + "readOnly": true, + "description": "The ID of the cloud." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "The azure resource type." + }, + "changeNumber": { + "type": "string", + "readOnly": true, + "description": "The iteration number." + }, + "cloud": { + "type": "string", + "readOnly": true, + "description": "The name of the cloud." + }, + "values": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceTagInformation" + }, + "readOnly": true, + "description": "The list of service tag information resources." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get next page of service tag information resources." + } + }, + "description": "Response for the ListServiceTags API service call." + }, + "ServiceTagInformation": { + "properties": { + "properties": { + "$ref": "#/definitions/ServiceTagInformationPropertiesFormat", + "readOnly": true, + "description": "Properties of the service tag information." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The name of service tag." + }, + "id": { + "type": "string", + "readOnly": true, + "description": "The ID of service tag." + } + }, + "description": "The service tag information." + }, + "ServiceTagInformationPropertiesFormat": { + "properties": { + "changeNumber": { + "type": "string", + "readOnly": true, + "description": "The iteration number of service tag." + }, + "region": { + "type": "string", + "readOnly": true, + "description": "The region of service tag." + }, + "systemService": { + "type": "string", + "readOnly": true, + "description": "The name of system service." + }, + "addressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "description": "The list of IP address prefixes." + }, + "state": { + "type": "string", + "readOnly": true, + "description": "The state of the service tag." + } + }, + "description": "Properties of the service tag information." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/usage.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/usage.json new file mode 100644 index 000000000000..947f363a3458 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/usage.json @@ -0,0 +1,160 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2021-02-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/{location}/usages": { + "get": { + "tags": [ + "Usages" + ], + "operationId": "Usages_List", + "description": "List network usages for a subscription.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location where resource usage is queried.", + "pattern": "^[-\\w\\._ ]+$" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Usage resources.", + "schema": { + "$ref": "#/definitions/UsagesListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List usages": { + "$ref": "./examples/UsageList.json" + }, + "List usages spaced location": { + "$ref": "./examples/UsageListSpacedLocation.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "UsageName": { + "properties": { + "value": { + "type": "string", + "description": "A string describing the resource name." + }, + "localizedValue": { + "type": "string", + "description": "A localized string describing the resource name." + } + }, + "description": "The usage names." + }, + "Usage": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "Resource identifier." + }, + "unit": { + "type": "string", + "description": "An enum describing the unit of measurement.", + "enum": [ + "Count" + ], + "x-ms-enum": { + "name": "UsageUnit", + "modelAsString": true + } + }, + "currentValue": { + "type": "integer", + "format": "int64", + "description": "The current value of the usage." + }, + "limit": { + "type": "integer", + "format": "int64", + "description": "The limit of usage." + }, + "name": { + "$ref": "#/definitions/UsageName", + "description": "The name of the type of usage." + } + }, + "required": [ + "unit", + "currentValue", + "limit", + "name" + ], + "description": "The network resource usage." + }, + "UsagesListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Usage" + }, + "description": "The list network resource usages." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "The list usages operation response." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/virtualNetwork.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/virtualNetwork.json new file mode 100644 index 000000000000..cc1a75d63f12 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/virtualNetwork.json @@ -0,0 +1,2064 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2021-02-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}": { + "delete": { + "tags": [ + "VirtualNetworks" + ], + "operationId": "VirtualNetworks_Delete", + "description": "Deletes the specified virtual network.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete virtual network": { + "$ref": "./examples/VirtualNetworkDelete.json" + } + } + }, + "get": { + "tags": [ + "VirtualNetworks" + ], + "operationId": "VirtualNetworks_Get", + "description": "Gets the specified virtual network by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting VirtualNetwork resource.", + "schema": { + "$ref": "#/definitions/VirtualNetwork" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get virtual network": { + "$ref": "./examples/VirtualNetworkGet.json" + }, + "Get virtual network with a delegated subnet": { + "$ref": "./examples/VirtualNetworkGetWithSubnetDelegation.json" + }, + "Get virtual network with service association links": { + "$ref": "./examples/VirtualNetworkGetWithServiceAssociationLink.json" + } + } + }, + "put": { + "tags": [ + "VirtualNetworks" + ], + "operationId": "VirtualNetworks_CreateOrUpdate", + "description": "Creates or updates a virtual network in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualNetwork" + }, + "description": "Parameters supplied to the create or update virtual network operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetwork resource.", + "schema": { + "$ref": "#/definitions/VirtualNetwork" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting VirtualNetwork resource.", + "schema": { + "$ref": "#/definitions/VirtualNetwork" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create virtual network": { + "$ref": "./examples/VirtualNetworkCreate.json" + }, + "Create virtual network with subnet": { + "$ref": "./examples/VirtualNetworkCreateSubnet.json" + }, + "Create virtual network with subnet containing address prefixes": { + "$ref": "./examples/VirtualNetworkCreateSubnetWithAddressPrefixes.json" + }, + "Create virtual network with Bgp Communities": { + "$ref": "./examples/VirtualNetworkCreateWithBgpCommunities.json" + }, + "Create virtual network with service endpoints": { + "$ref": "./examples/VirtualNetworkCreateServiceEndpoints.json" + }, + "Create virtual network with service endpoints and service endpoint policy": { + "$ref": "./examples/VirtualNetworkCreateServiceEndpointPolicy.json" + }, + "Create virtual network with delegated subnets": { + "$ref": "./examples/VirtualNetworkCreateSubnetWithDelegation.json" + } + } + }, + "patch": { + "tags": [ + "VirtualNetworks" + ], + "operationId": "VirtualNetworks_UpdateTags", + "description": "Updates a virtual network tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update virtual network tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetwork resource.", + "schema": { + "$ref": "#/definitions/VirtualNetwork" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update virtual network tags": { + "$ref": "./examples/VirtualNetworkUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/virtualNetworks": { + "get": { + "tags": [ + "VirtualNetworks" + ], + "operationId": "VirtualNetworks_ListAll", + "description": "Gets all virtual networks in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of VirtualNetwork resources.", + "schema": { + "$ref": "#/definitions/VirtualNetworkListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all virtual networks": { + "$ref": "./examples/VirtualNetworkListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks": { + "get": { + "tags": [ + "VirtualNetworks" + ], + "operationId": "VirtualNetworks_List", + "description": "Gets all virtual networks in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of VirtualNetwork resources.", + "schema": { + "$ref": "#/definitions/VirtualNetworkListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List virtual networks in resource group": { + "$ref": "./examples/VirtualNetworkList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}": { + "delete": { + "tags": [ + "Subnets" + ], + "operationId": "Subnets_Delete", + "description": "Deletes the specified subnet.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete subnet": { + "$ref": "./examples/SubnetDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "Subnets" + ], + "operationId": "Subnets_Get", + "description": "Gets the specified subnet by virtual network and resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Subnet resource.", + "schema": { + "$ref": "#/definitions/Subnet" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get subnet": { + "$ref": "./examples/SubnetGet.json" + }, + "Get subnet with a delegation": { + "$ref": "./examples/SubnetGetWithDelegation.json" + } + } + }, + "put": { + "tags": [ + "Subnets" + ], + "operationId": "Subnets_CreateOrUpdate", + "description": "Creates or updates a subnet in the specified virtual network.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "name": "subnetParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Subnet" + }, + "description": "Parameters supplied to the create or update subnet operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting Subnet resource.", + "schema": { + "$ref": "#/definitions/Subnet" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting Subnet resource.", + "schema": { + "$ref": "#/definitions/Subnet" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create subnet": { + "$ref": "./examples/SubnetCreate.json" + }, + "Create subnet with service endpoints": { + "$ref": "./examples/SubnetCreateServiceEndpoint.json" + }, + "Create subnet with a delegation": { + "$ref": "./examples/SubnetCreateWithDelegation.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}/PrepareNetworkPolicies": { + "post": { + "operationId": "Subnets_PrepareNetworkPolicies", + "description": "Prepares a subnet by applying network intent policies.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "name": "prepareNetworkPoliciesRequestParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrepareNetworkPoliciesRequest" + }, + "description": "Parameters supplied to prepare subnet by applying network intent policies." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Preparing subnet by applying network intent policies is successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Prepare Network Policies": { + "$ref": "./examples/SubnetPrepareNetworkPolicies.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}/UnprepareNetworkPolicies": { + "post": { + "operationId": "Subnets_UnprepareNetworkPolicies", + "description": "Unprepares a subnet by removing network intent policies.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "name": "unprepareNetworkPoliciesRequestParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/UnprepareNetworkPoliciesRequest" + }, + "description": "Parameters supplied to unprepare subnet to remove network intent policies." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Unpreparing subnet by removing network intent policies is successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Unprepare Network Policies": { + "$ref": "./examples/SubnetUnprepareNetworkPolicies.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}/ResourceNavigationLinks": { + "get": { + "operationId": "ResourceNavigationLinks_List", + "description": "Gets a list of resource navigation links for a subnet.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of resource navigation links for the subnet.", + "schema": { + "$ref": "#/definitions/ResourceNavigationLinksListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Resource Navigation Links": { + "$ref": "./examples/VirtualNetworkGetResourceNavigationLinks.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}/ServiceAssociationLinks": { + "get": { + "operationId": "ServiceAssociationLinks_List", + "description": "Gets a list of service association links for a subnet.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of service association links for the subnet.", + "schema": { + "$ref": "#/definitions/ServiceAssociationLinksListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Service Association Links": { + "$ref": "./examples/VirtualNetworkGetServiceAssociationLinks.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets": { + "get": { + "tags": [ + "Subnets" + ], + "operationId": "Subnets_List", + "description": "Gets all subnets in a virtual network.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Subnet resources.", + "schema": { + "$ref": "#/definitions/SubnetListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List subnets": { + "$ref": "./examples/SubnetList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/virtualNetworkPeerings/{virtualNetworkPeeringName}": { + "delete": { + "tags": [ + "VirtualNetworkPeerings" + ], + "operationId": "VirtualNetworkPeerings_Delete", + "description": "Deletes the specified virtual network peering.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "virtualNetworkPeeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete peering": { + "$ref": "./examples/VirtualNetworkPeeringDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "VirtualNetworkPeerings" + ], + "operationId": "VirtualNetworkPeerings_Get", + "description": "Gets the specified virtual network peering.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "virtualNetworkPeeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting VirtualNetworkPeering resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkPeering" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get peering": { + "$ref": "./examples/VirtualNetworkPeeringGet.json" + } + } + }, + "put": { + "tags": [ + "VirtualNetworkPeerings" + ], + "operationId": "VirtualNetworkPeerings_CreateOrUpdate", + "description": "Creates or updates a peering in the specified virtual network.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "virtualNetworkPeeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "VirtualNetworkPeeringParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualNetworkPeering" + }, + "description": "Parameters supplied to the create or update virtual network peering operation." + }, + { + "name": "syncRemoteAddressSpace", + "in": "query", + "required": false, + "type": "string", + "enum": [ + "true" + ], + "x-ms-enum": { + "name": "SyncRemoteAddressSpace", + "modelAsString": true + }, + "description": "Parameter indicates the intention to sync the peering with the current address space on the remote vNet after it's updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkPeering resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkPeering" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting VirtualNetworkPeering resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkPeering" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create peering": { + "$ref": "./examples/VirtualNetworkPeeringCreate.json" + }, + "Sync Peering": { + "$ref": "./examples/VirtualNetworkPeeringSync.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/virtualNetworkPeerings": { + "get": { + "tags": [ + "VirtualNetworkPeerings" + ], + "operationId": "VirtualNetworkPeerings_List", + "description": "Gets all virtual network peerings in a virtual network.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of VirtualNetworkPeering resources.", + "schema": { + "$ref": "#/definitions/VirtualNetworkPeeringListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List peerings": { + "$ref": "./examples/VirtualNetworkPeeringList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/CheckIPAddressAvailability": { + "get": { + "operationId": "VirtualNetworks_CheckIPAddressAvailability", + "description": "Checks whether a private IP address is available for use.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "ipAddress", + "in": "query", + "required": true, + "type": "string", + "description": "The private IP address to be verified." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Private IP address availability and list of other free addresses if the requested one is not available.", + "schema": { + "$ref": "#/definitions/IPAddressAvailabilityResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Check IP address availability": { + "$ref": "./examples/VirtualNetworkCheckIPAddressAvailability.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/usages": { + "get": { + "operationId": "VirtualNetworks_ListUsage", + "description": "Lists usage stats.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Usage stats for vnet.", + "schema": { + "$ref": "#/definitions/VirtualNetworkListUsageResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "VnetGetUsage": { + "$ref": "./examples/VirtualNetworkListUsage.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "ServiceAssociationLinkPropertiesFormat": { + "properties": { + "linkedResourceType": { + "type": "string", + "description": "Resource type of the linked resource." + }, + "link": { + "type": "string", + "description": "Link to the external resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the service association link resource." + }, + "allowDelete": { + "type": "boolean", + "description": "If true, the resource can be deleted." + }, + "locations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of locations." + } + }, + "description": "Properties of ServiceAssociationLink." + }, + "ServiceAssociationLink": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ServiceAssociationLinkPropertiesFormat", + "description": "Resource navigation link properties format." + }, + "name": { + "type": "string", + "description": "Name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "ServiceAssociationLink resource." + }, + "ResourceNavigationLinkFormat": { + "properties": { + "linkedResourceType": { + "type": "string", + "description": "Resource type of the linked resource." + }, + "link": { + "type": "string", + "description": "Link to the external resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the resource navigation link resource." + } + }, + "description": "Properties of ResourceNavigationLink." + }, + "ResourceNavigationLink": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ResourceNavigationLinkFormat", + "description": "Resource navigation link properties format." + }, + "name": { + "type": "string", + "description": "Name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource navigation link identifier." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "ResourceNavigationLink resource." + }, + "ServiceDelegationPropertiesFormat": { + "properties": { + "serviceName": { + "type": "string", + "description": "The name of the service to whom the subnet should be delegated (e.g. Microsoft.Sql/servers)." + }, + "actions": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The actions permitted to the service upon delegation." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the service delegation resource." + } + }, + "description": "Properties of a service delegation." + }, + "Delegation": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ServiceDelegationPropertiesFormat", + "description": "Properties of the subnet." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a subnet. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "description": "Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Details the service to which the subnet is delegated." + }, + "SubnetPropertiesFormat": { + "properties": { + "addressPrefix": { + "type": "string", + "description": "The address prefix for the subnet." + }, + "addressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of address prefixes for the subnet." + }, + "networkSecurityGroup": { + "$ref": "./networkSecurityGroup.json#/definitions/NetworkSecurityGroup", + "description": "The reference to the NetworkSecurityGroup resource." + }, + "routeTable": { + "$ref": "./routeTable.json#/definitions/RouteTable", + "description": "The reference to the RouteTable resource." + }, + "natGateway": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Nat gateway associated with this subnet." + }, + "serviceEndpoints": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceEndpointPropertiesFormat" + }, + "description": "An array of service endpoints." + }, + "serviceEndpointPolicies": { + "type": "array", + "items": { + "$ref": "./serviceEndpointPolicy.json#/definitions/ServiceEndpointPolicy" + }, + "description": "An array of service endpoint policies." + }, + "privateEndpoints": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./privateEndpoint.json#/definitions/PrivateEndpoint" + }, + "description": "An array of references to private endpoints." + }, + "ipConfigurations": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkInterface.json#/definitions/IPConfiguration" + }, + "description": "An array of references to the network interface IP configurations using subnet." + }, + "ipConfigurationProfiles": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkProfile.json#/definitions/IPConfigurationProfile" + }, + "description": "Array of IP configuration profiles which reference this subnet." + }, + "ipAllocations": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Array of IpAllocation which reference this subnet." + }, + "resourceNavigationLinks": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ResourceNavigationLink" + }, + "description": "An array of references to the external resources using subnet." + }, + "serviceAssociationLinks": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ServiceAssociationLink" + }, + "description": "An array of references to services injecting into this subnet." + }, + "delegations": { + "type": "array", + "items": { + "$ref": "#/definitions/Delegation" + }, + "description": "An array of references to the delegations on the subnet." + }, + "purpose": { + "type": "string", + "readOnly": true, + "description": "A read-only string identifying the intention of use for this subnet based on delegations and other user-defined properties." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the subnet resource." + }, + "privateEndpointNetworkPolicies": { + "type": "string", + "default": "Enabled", + "description": "Enable or Disable apply network policies on private end point in the subnet.", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "VirtualNetworkPrivateEndpointNetworkPolicies", + "modelAsString": true + } + }, + "privateLinkServiceNetworkPolicies": { + "type": "string", + "default": "Enabled", + "description": "Enable or Disable apply network policies on private link service in the subnet.", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "VirtualNetworkPrivateLinkServiceNetworkPolicies", + "modelAsString": true + } + }, + "applicationGatewayIpConfigurations": { + "type": "array", + "items": { + "$ref": "./applicationGateway.json#/definitions/ApplicationGatewayIPConfiguration" + }, + "description": "Application gateway IP configurations of virtual network resource." + } + }, + "description": "Properties of the subnet." + }, + "ServiceEndpointPropertiesFormat": { + "properties": { + "service": { + "type": "string", + "description": "The type of the endpoint service." + }, + "locations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of locations." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the service endpoint resource." + } + }, + "description": "The service endpoint properties." + }, + "VirtualNetworkPeeringPropertiesFormat": { + "properties": { + "allowVirtualNetworkAccess": { + "type": "boolean", + "description": "Whether the VMs in the local virtual network space would be able to access the VMs in remote virtual network space." + }, + "allowForwardedTraffic": { + "type": "boolean", + "description": "Whether the forwarded traffic from the VMs in the local virtual network will be allowed/disallowed in remote virtual network." + }, + "allowGatewayTransit": { + "type": "boolean", + "description": "If gateway links can be used in remote virtual networking to link to this virtual network." + }, + "useRemoteGateways": { + "type": "boolean", + "description": "If remote gateways can be used on this virtual network. If the flag is set to true, and allowGatewayTransit on remote peering is also true, virtual network will use gateways of remote virtual network for transit. Only one peering can have this flag set to true. This flag cannot be set if virtual network already has a gateway." + }, + "remoteVirtualNetwork": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the remote virtual network. The remote virtual network can be in the same or different region (preview). See here to register for the preview and learn more (https://docs.microsoft.com/en-us/azure/virtual-network/virtual-network-create-peering)." + }, + "remoteAddressSpace": { + "$ref": "#/definitions/AddressSpace", + "description": "The reference to the address space peered with the remote virtual network." + }, + "remoteVirtualNetworkAddressSpace": { + "$ref": "#/definitions/AddressSpace", + "description": "The reference to the current address space of the remote virtual network." + }, + "remoteBgpCommunities": { + "$ref": "#/definitions/VirtualNetworkBgpCommunities", + "default": null, + "description": "The reference to the remote virtual network's Bgp Communities." + }, + "peeringState": { + "type": "string", + "description": "The status of the virtual network peering.", + "enum": [ + "Initiated", + "Connected", + "Disconnected" + ], + "x-ms-enum": { + "name": "VirtualNetworkPeeringState", + "modelAsString": true + } + }, + "peeringSyncLevel": { + "type": "string", + "description": "The peering sync status of the virtual network peering.", + "enum": [ + "FullyInSync", + "RemoteNotInSync", + "LocalNotInSync", + "LocalAndRemoteNotInSync" + ], + "x-ms-enum": { + "name": "VirtualNetworkPeeringLevel", + "modelAsString": true + } + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual network peering resource." + }, + "doNotVerifyRemoteGateways": { + "type": "boolean", + "description": "If we need to verify the provisioning state of the remote gateway." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resourceGuid property of the Virtual Network peering resource." + } + }, + "description": "Properties of the virtual network peering." + }, + "Subnet": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SubnetPropertiesFormat", + "description": "Properties of the subnet." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "description": "Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Subnet in a virtual network resource." + }, + "VirtualNetworkPeering": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkPeeringPropertiesFormat", + "description": "Properties of the virtual network peering." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "description": "Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Peerings in a virtual network resource." + }, + "SubnetListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Subnet" + }, + "description": "The subnets in a virtual network." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListSubnets API service callRetrieves all subnet that belongs to a virtual network." + }, + "ResourceNavigationLinksListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceNavigationLink" + }, + "description": "The resource navigation links in a subnet." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ResourceNavigationLinks_List operation." + }, + "ServiceAssociationLinksListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceAssociationLink" + }, + "description": "The service association links in a subnet." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ServiceAssociationLinks_List operation." + }, + "VirtualNetworkPeeringListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkPeering" + }, + "description": "The peerings in a virtual network." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListSubnets API service call. Retrieves all subnets that belong to a virtual network." + }, + "VirtualNetworkPropertiesFormat": { + "properties": { + "addressSpace": { + "$ref": "#/definitions/AddressSpace", + "description": "The AddressSpace that contains an array of IP address ranges that can be used by subnets." + }, + "dhcpOptions": { + "$ref": "#/definitions/DhcpOptions", + "description": "The dhcpOptions that contains an array of DNS servers available to VMs deployed in the virtual network." + }, + "flowTimeoutInMinutes": { + "type": "integer", + "format": "int32", + "description": "The FlowTimeout value (in minutes) for the Virtual Network" + }, + "subnets": { + "type": "array", + "items": { + "$ref": "#/definitions/Subnet" + }, + "description": "A list of subnets in a Virtual Network." + }, + "virtualNetworkPeerings": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkPeering" + }, + "description": "A list of peerings in a Virtual Network." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resourceGuid property of the Virtual Network resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual network resource." + }, + "enableDdosProtection": { + "type": "boolean", + "default": false, + "description": "Indicates if DDoS protection is enabled for all the protected resources in the virtual network. It requires a DDoS protection plan associated with the resource." + }, + "enableVmProtection": { + "type": "boolean", + "default": false, + "description": "Indicates if VM protection is enabled for all the subnets in the virtual network." + }, + "ddosProtectionPlan": { + "$ref": "./network.json#/definitions/SubResource", + "default": null, + "description": "The DDoS protection plan associated with the virtual network." + }, + "bgpCommunities": { + "$ref": "#/definitions/VirtualNetworkBgpCommunities", + "default": null, + "description": "Bgp Communities sent over ExpressRoute with each route corresponding to a prefix in this VNET." + }, + "ipAllocations": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Array of IpAllocation which reference this VNET." + } + }, + "description": "Properties of the virtual network." + }, + "VirtualNetwork": { + "properties": { + "extendedLocation": { + "$ref": "./network.json#/definitions/ExtendedLocation", + "description": "The extended location of the virtual network." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkPropertiesFormat", + "description": "Properties of the virtual network." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Virtual Network resource." + }, + "VirtualNetworkListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetwork" + }, + "description": "A list of VirtualNetwork resources in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListVirtualNetworks API service call." + }, + "AddressSpace": { + "properties": { + "addressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of address blocks reserved for this virtual network in CIDR notation." + } + }, + "description": "AddressSpace contains an array of IP address ranges that can be used by subnets of the virtual network." + }, + "DhcpOptions": { + "properties": { + "dnsServers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of DNS servers IP addresses." + } + }, + "description": "DhcpOptions contains an array of DNS servers available to VMs deployed in the virtual network. Standard DHCP option for a subnet overrides VNET DHCP options." + }, + "VirtualNetworkBgpCommunities": { + "properties": { + "virtualNetworkCommunity": { + "type": "string", + "description": "The BGP community associated with the virtual network." + }, + "regionalCommunity": { + "type": "string", + "readOnly": true, + "description": "The BGP community associated with the region of the virtual network." + } + }, + "required": [ + "virtualNetworkCommunity" + ], + "description": "Bgp Communities sent over ExpressRoute with each route corresponding to a prefix in this VNET." + }, + "IPAddressAvailabilityResult": { + "properties": { + "available": { + "type": "boolean", + "description": "Private IP address availability." + }, + "availableIPAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Contains other available private IP addresses if the asked for address is taken." + }, + "isPlatformReserved": { + "type": "boolean", + "description": "Private IP address platform reserved." + } + }, + "description": "Response for CheckIPAddressAvailability API service call." + }, + "VirtualNetworkListUsageResult": { + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/VirtualNetworkUsage" + }, + "description": "VirtualNetwork usage stats." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the virtual networks GetUsage API service call." + }, + "VirtualNetworkUsage": { + "properties": { + "currentValue": { + "type": "number", + "format": "double", + "readOnly": true, + "description": "Indicates number of IPs used from the Subnet." + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Subnet identifier." + }, + "limit": { + "type": "number", + "format": "double", + "readOnly": true, + "description": "Indicates the size of the subnet." + }, + "name": { + "$ref": "#/definitions/VirtualNetworkUsageName", + "readOnly": true, + "description": "The name containing common and localized value for usage." + }, + "unit": { + "type": "string", + "readOnly": true, + "description": "Usage units. Returns 'Count'." + } + }, + "description": "Usage details for subnet." + }, + "VirtualNetworkUsageName": { + "properties": { + "localizedValue": { + "type": "string", + "readOnly": true, + "description": "Localized subnet size and usage string." + }, + "value": { + "type": "string", + "readOnly": true, + "description": "Subnet size and usage string." + } + }, + "description": "Usage strings container." + }, + "PrepareNetworkPoliciesRequest": { + "properties": { + "serviceName": { + "type": "string", + "description": "The name of the service for which subnet is being prepared for." + }, + "networkIntentPolicyConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkIntentPolicyConfiguration" + }, + "description": "A list of NetworkIntentPolicyConfiguration." + } + }, + "description": "Details of PrepareNetworkPolicies for Subnet." + }, + "UnprepareNetworkPoliciesRequest": { + "properties": { + "serviceName": { + "type": "string", + "description": "The name of the service for which subnet is being unprepared for." + } + }, + "description": "Details of UnprepareNetworkPolicies for Subnet." + }, + "NetworkIntentPolicyConfiguration": { + "properties": { + "networkIntentPolicyName": { + "type": "string", + "description": "The name of the Network Intent Policy for storing in target subscription." + }, + "sourceNetworkIntentPolicy": { + "$ref": "#/definitions/NetworkIntentPolicy", + "description": "Source network intent policy." + } + }, + "description": "Details of NetworkIntentPolicyConfiguration for PrepareNetworkPoliciesRequest." + }, + "NetworkIntentPolicy": { + "properties": { + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Network Intent Policy resource." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/virtualNetworkGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/virtualNetworkGateway.json new file mode 100644 index 000000000000..a085950cedd9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/virtualNetworkGateway.json @@ -0,0 +1,4228 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2021-02-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}": { + "put": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_CreateOrUpdate", + "description": "Creates or updates a virtual network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualNetworkGateway" + }, + "description": "Parameters supplied to create or update virtual network gateway operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGateway" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting VirtualNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "UpdateVirtualNetworkGateway": { + "$ref": "./examples/VirtualNetworkGatewayUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_Get", + "description": "Gets the specified virtual network gateway by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a VirtualNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGateway": { + "$ref": "./examples/VirtualNetworkGatewayGet.json" + } + } + }, + "delete": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_Delete", + "description": "Deletes the specified virtual network gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DeleteVirtualNetworkGateway": { + "$ref": "./examples/VirtualNetworkGatewayDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_UpdateTags", + "description": "Updates a virtual network gateway tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update virtual network gateway tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "UpdateVirtualNetworkGatewayTags": { + "$ref": "./examples/VirtualNetworkGatewayUpdateTags.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways": { + "get": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_List", + "description": "Gets all virtual network gateways by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of VirtualNetworkGateway resources.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ListVirtualNetworkGatewaysinResourceGroup": { + "$ref": "./examples/VirtualNetworkGatewayList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/connections": { + "get": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_ListConnections", + "description": "Gets all the connections in a virtual network gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of VirtualNetworkGatewayConnection resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayListConnectionsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "VirtualNetworkGatewaysListConnections": { + "$ref": "./examples/VirtualNetworkGatewaysListConnections.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/reset": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_Reset", + "description": "Resets the primary of the virtual network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "gatewayVip", + "in": "query", + "required": false, + "type": "string", + "description": "Virtual network gateway vip address supplied to the begin reset of the active-active feature enabled gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Request successful. The operation reset the primary of the virtual network gateway.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ResetVirtualNetworkGateway": { + "$ref": "./examples/VirtualNetworkGatewayReset.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/resetvpnclientsharedkey": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_ResetVpnClientSharedKey", + "description": "Resets the VPN client shared key of the virtual network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation reset the vpn client shared key of the virtual network gateway." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ResetVpnClientSharedKey": { + "$ref": "./examples/VirtualNetworkGatewayResetVpnClientSharedKey.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/generatevpnclientpackage": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_Generatevpnclientpackage", + "description": "Generates VPN client package for P2S client of the virtual network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnClientParameters" + }, + "description": "Parameters supplied to the generate virtual network gateway VPN client package operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "VPN client package URL.", + "schema": { + "type": "string" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GenerateVPNClientPackage": { + "$ref": "./examples/VirtualNetworkGatewayGenerateVpnClientPackage.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/generatevpnprofile": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GenerateVpnProfile", + "description": "Generates VPN profile for P2S client of the virtual network gateway in the specified resource group. Used for IKEV2 and radius based authentication.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnClientParameters" + }, + "description": "Parameters supplied to the generate virtual network gateway VPN client package operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "VPN profile package URL.", + "schema": { + "type": "string" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GenerateVirtualNetworkGatewayVPNProfile": { + "$ref": "./examples/VirtualNetworkGatewayGenerateVpnProfile.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getvpnprofilepackageurl": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GetVpnProfilePackageUrl", + "description": "Gets pre-generated VPN profile for P2S client of the virtual network gateway in the specified resource group. The profile needs to be generated first using generateVpnProfile.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "VPN profile package URL.", + "schema": { + "type": "string" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayVPNProfilePackageURL": { + "$ref": "./examples/VirtualNetworkGatewayGetVpnProfilePackageUrl.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getBgpPeerStatus": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GetBgpPeerStatus", + "description": "The GetBgpPeerStatus operation retrieves the status of all BGP peers.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "peer", + "in": "query", + "required": false, + "type": "string", + "description": "The IP address of the peer to retrieve the status of." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "List of BGP peer statuses.", + "schema": { + "$ref": "#/definitions/BgpPeerStatusListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayBGPPeerStatus": { + "$ref": "./examples/VirtualNetworkGatewayGetBGPPeerStatus.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/supportedvpndevices": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_SupportedVpnDevices", + "description": "Gets a xml format representation for supported vpn devices.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Xml format representation for supported vpn devices.", + "schema": { + "type": "string" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ListVirtualNetworkGatewaySupportedVPNDevices": { + "$ref": "./examples/VirtualNetworkGatewaySupportedVpnDevice.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getLearnedRoutes": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GetLearnedRoutes", + "description": "This operation retrieves a list of routes the virtual network gateway has learned, including routes learned from BGP peers.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "List of advertised BGP routes.", + "schema": { + "$ref": "#/definitions/GatewayRouteListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayLearnedRoutes": { + "$ref": "./examples/VirtualNetworkGatewayLearnedRoutes.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getAdvertisedRoutes": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GetAdvertisedRoutes", + "description": "This operation retrieves a list of routes the virtual network gateway is advertising to the specified peer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "peer", + "in": "query", + "required": true, + "type": "string", + "description": "The IP address of the peer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "List of learned BGP routes.", + "schema": { + "$ref": "#/definitions/GatewayRouteListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayAdvertisedRoutes": { + "$ref": "./examples/VirtualNetworkGatewayGetAdvertisedRoutes.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/setvpnclientipsecparameters": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_SetVpnclientIpsecParameters", + "description": "The Set VpnclientIpsecParameters operation sets the vpnclient ipsec policy for P2S client of virtual network gateway in the specified resource group through Network resource provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "vpnclientIpsecParams", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnClientIPsecParameters" + }, + "description": "Parameters supplied to the Begin Set vpnclient ipsec parameters of Virtual Network Gateway P2S client operation through Network resource provider." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Request successful. The operation sets the specified vpnclient ipsec parameters for P2S client of the virtual network gateway.", + "schema": { + "$ref": "#/definitions/VpnClientIPsecParameters" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Set VirtualNetworkGateway VpnClientIpsecParameters": { + "$ref": "./examples/VirtualNetworkGatewaySetVpnClientIpsecParameters.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getvpnclientipsecparameters": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GetVpnclientIpsecParameters", + "description": "The Get VpnclientIpsecParameters operation retrieves information about the vpnclient ipsec policy for P2S client of virtual network gateway in the specified resource group through Network resource provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual network gateway name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the set vpnclient ipsec parameters for P2S client of VirtualNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/VpnClientIPsecParameters" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Get VirtualNetworkGateway VpnClientIpsecParameters": { + "$ref": "./examples/VirtualNetworkGatewayGetVpnClientIpsecParameters.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/vpndeviceconfigurationscript": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_VpnDeviceConfigurationScript", + "description": "Gets a xml format representation for vpn device configuration script.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway connection for which the configuration script is generated." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnDeviceScriptParameters" + }, + "description": "Parameters supplied to the generate vpn device script operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Xml format representation for vpn device configuration script.", + "schema": { + "type": "string" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVPNDeviceConfigurationScript": { + "$ref": "./examples/VirtualNetworkGatewayVpnDeviceConfigurationScript.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/startPacketCapture": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_StartPacketCapture", + "description": "Starts packet capture on virtual network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VpnPacketCaptureStartParameters" + }, + "description": "Virtual network gateway packet capture parameters supplied to start packet capture on gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Request successful. The operation packet capture started on virtual network gateway.", + "schema": { + "type": "string" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Start packet capture on virtual network gateway without filter": { + "$ref": "./examples/VirtualNetworkGatewayStartPacketCapture.json" + }, + "Start packet capture on virtual network gateway with filter": { + "$ref": "./examples/VirtualNetworkGatewayStartPacketCaptureFilterData.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/stopPacketCapture": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_StopPacketCapture", + "description": "Stops packet capture on virtual network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnPacketCaptureStopParameters" + }, + "description": "Virtual network gateway packet capture parameters supplied to stop packet capture on gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Request successful. The operation packet capture stopped on virtual network gateway.", + "schema": { + "type": "string" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Stop packet capture on virtual network gateway": { + "$ref": "./examples/VirtualNetworkGatewayStopPacketCapture.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}": { + "put": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_CreateOrUpdate", + "description": "Creates or updates a virtual network gateway connection in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway connection." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayConnection" + }, + "description": "Parameters supplied to the create or update virtual network gateway connection operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkGatewayConnection resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayConnection" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting VirtualNetworkGatewayConnection resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "CreateVirtualNetworkGatewayConnection_S2S": { + "$ref": "./examples/VirtualNetworkGatewayConnectionCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_Get", + "description": "Gets the specified virtual network gateway connection by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting VirtualNetworkGatewayConnection resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayConnection": { + "$ref": "./examples/VirtualNetworkGatewayConnectionGet.json" + } + } + }, + "delete": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_Delete", + "description": "Deletes the specified virtual network Gateway connection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DeleteVirtualNetworkGatewayConnection": { + "$ref": "./examples/VirtualNetworkGatewayConnectionDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_UpdateTags", + "description": "Updates a virtual network gateway connection tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway connection." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update virtual network gateway connection tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkGatewayConnection resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "UpdateVirtualNetworkGatewayConnectionTags": { + "$ref": "./examples/VirtualNetworkGatewayConnectionUpdateTags.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/sharedkey": { + "put": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_SetSharedKey", + "description": "The Put VirtualNetworkGatewayConnectionSharedKey operation sets the virtual network gateway connection shared key for passed virtual network gateway connection in the specified resource group through Network resource provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual network gateway connection name." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ConnectionSharedKey" + }, + "description": "Parameters supplied to the Begin Set Virtual Network Gateway connection Shared key operation throughNetwork resource provider." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Request successful. The operation returns the resulting ConnectionSharedKey resource.", + "schema": { + "$ref": "#/definitions/ConnectionSharedKey" + } + }, + "200": { + "description": "Request successful. The operation returns the resulting ConnectionSharedKey resource.", + "schema": { + "$ref": "#/definitions/ConnectionSharedKey" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "SetVirtualNetworkGatewayConnectionSharedKey": { + "$ref": "./examples/VirtualNetworkGatewayConnectionSetSharedKey.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_GetSharedKey", + "description": "The Get VirtualNetworkGatewayConnectionSharedKey operation retrieves information about the specified virtual network gateway connection shared key through Network resource provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual network gateway connection shared key name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of VirtualNetworkGatewayConnection resources.", + "schema": { + "$ref": "#/definitions/ConnectionSharedKey" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayConnectionSharedKey": { + "$ref": "./examples/VirtualNetworkGatewayConnectionGetSharedKey.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections": { + "get": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_List", + "description": "The List VirtualNetworkGatewayConnections operation retrieves all the virtual network gateways connections created.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation resets the virtual network gateway connection shared key.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ListVirtualNetworkGatewayConnectionsinResourceGroup": { + "$ref": "./examples/VirtualNetworkGatewayConnectionsList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/sharedkey/reset": { + "post": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_ResetSharedKey", + "description": "The VirtualNetworkGatewayConnectionResetSharedKey operation resets the virtual network gateway connection shared key for passed virtual network gateway connection in the specified resource group through Network resource provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual network gateway connection reset shared key Name." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ConnectionResetSharedKey" + }, + "description": "Parameters supplied to the begin reset virtual network gateway connection shared key operation through network resource provider." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation sets the virtual network gateway connection shared key.", + "schema": { + "$ref": "#/definitions/ConnectionResetSharedKey" + } + }, + "202": { + "description": "Request successful. The operation sets the virtual network gateway connection shared key." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ResetVirtualNetworkGatewayConnectionSharedKey": { + "$ref": "./examples/VirtualNetworkGatewayConnectionResetSharedKey.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/startPacketCapture": { + "post": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_StartPacketCapture", + "description": "Starts packet capture on virtual network gateway connection in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway connection." + }, + { + "name": "parameters", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VpnPacketCaptureStartParameters" + }, + "description": "Virtual network gateway packet capture parameters supplied to start packet capture on gateway connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Request successful. The operation packet capture started on virtual network gateway connection.", + "schema": { + "type": "string" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Start packet capture on virtual network gateway connection without filter": { + "$ref": "./examples/VirtualNetworkGatewayConnectionStartPacketCapture.json" + }, + "Start packet capture on virtual network gateway connection with filter": { + "$ref": "./examples/VirtualNetworkGatewayConnectionStartPacketCaptureFilterData.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/stopPacketCapture": { + "post": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_StopPacketCapture", + "description": "Stops packet capture on virtual network gateway connection in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway Connection." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnPacketCaptureStopParameters" + }, + "description": "Virtual network gateway packet capture parameters supplied to stop packet capture on gateway connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Request successful. The operation packet capture stopped on virtual network gateway connection.", + "schema": { + "type": "string" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Stop packet capture on virtual network gateway connection": { + "$ref": "./examples/VirtualNetworkGatewayConnectionStopPacketCapture.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/getikesas": { + "post": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_GetIkeSas", + "description": "Lists IKE Security Associations for the virtual network gateway connection in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway Connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation GetIkeSas will complete asynchronously." + }, + "200": { + "description": "Request successful. The operation getikesas completed on virtual network gateway connection.", + "schema": { + "type": "string" + } + }, + "default": { + "description": "The operation GetIkeSas could not be completed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayConnectionIkeSa": { + "$ref": "./examples/VirtualNetworkGatewayConnectionGetIkeSas.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/resetconnection": { + "post": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_ResetConnection", + "description": "Resets the virtual network gateway connection specified.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway Connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "The operation resetconnection could not be completed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ResetVirtualNetworkGatewayConnection": { + "$ref": "./examples/VirtualNetworkGatewayConnectionReset.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/localNetworkGateways/{localNetworkGatewayName}": { + "put": { + "tags": [ + "LocalNetworkGateways" + ], + "operationId": "LocalNetworkGateways_CreateOrUpdate", + "description": "Creates or updates a local network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "localNetworkGatewayName", + "in": "path", + "required": true, + "minLength": 1, + "type": "string", + "description": "The name of the local network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/LocalNetworkGateway" + }, + "description": "Parameters supplied to the create or update local network gateway operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting LocalNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/LocalNetworkGateway" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting LocalNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/LocalNetworkGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "CreateLocalNetworkGateway": { + "$ref": "./examples/LocalNetworkGatewayCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "LocalNetworkGateways" + ], + "operationId": "LocalNetworkGateways_Get", + "description": "Gets the specified local network gateway in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "localNetworkGatewayName", + "in": "path", + "required": true, + "minLength": 1, + "type": "string", + "description": "The name of the local network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting LocalNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/LocalNetworkGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetLocalNetworkGateway": { + "$ref": "./examples/LocalNetworkGatewayGet.json" + } + } + }, + "delete": { + "tags": [ + "LocalNetworkGateways" + ], + "operationId": "LocalNetworkGateways_Delete", + "description": "Deletes the specified local network gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "localNetworkGatewayName", + "in": "path", + "required": true, + "minLength": 1, + "type": "string", + "description": "The name of the local network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Delete successful." + }, + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DeleteLocalNetworkGateway": { + "$ref": "./examples/LocalNetworkGatewayDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "LocalNetworkGateways" + ], + "operationId": "LocalNetworkGateways_UpdateTags", + "description": "Updates a local network gateway tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "localNetworkGatewayName", + "in": "path", + "required": true, + "minLength": 1, + "type": "string", + "description": "The name of the local network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update local network gateway tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting LocalNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/LocalNetworkGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "UpdateLocalNetworkGatewayTags": { + "$ref": "./examples/LocalNetworkGatewayUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/localNetworkGateways": { + "get": { + "tags": [ + "LocalNetworkGateways" + ], + "operationId": "LocalNetworkGateways_List", + "description": "Gets all the local network gateways in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LocalNetworkGateway resources.", + "schema": { + "$ref": "#/definitions/LocalNetworkGatewayListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ListLocalNetworkGateways": { + "$ref": "./examples/LocalNetworkGatewayList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getVpnClientConnectionHealth": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GetVpnclientConnectionHealth", + "description": "Get VPN client connection health detail per P2S client connection of the virtual network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "List of VPN client connection health details.", + "schema": { + "$ref": "#/definitions/VpnClientConnectionHealthDetailListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayVpnclientConnectionHealth": { + "$ref": "./examples/VirtualNetworkGatewayGetVpnclientConnectionHealth.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/disconnectVirtualNetworkGatewayVpnConnections": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_DisconnectVirtualNetworkGatewayVpnConnections", + "description": "Disconnect vpn connections of virtual network gateway in the specified resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "request", + "in": "body", + "required": true, + "schema": { + "$ref": "./virtualWan.json#/definitions/P2SVpnConnectionRequest" + }, + "description": "The parameters are supplied to disconnect vpn connections." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation disconnects the requested vpn connections." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Disconnect VpnConnections from Virtual Network Gateway": { + "$ref": "./examples/VirtualNetworkGatewaysDisconnectP2sVpnConnections.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/natRules/{natRuleName}": { + "get": { + "operationId": "VirtualNetworkGatewayNatRules_Get", + "x-ms-examples": { + "VirtualNetworkGatewayNatRuleGet": { + "$ref": "./examples/VirtualNetworkGatewayNatRuleGet.json" + } + }, + "description": "Retrieves the details of a nat rule.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the Virtual Network Gateway." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "name": "natRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the nat rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the nat rule.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayNatRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "VirtualNetworkGatewayNatRules_CreateOrUpdate", + "x-ms-examples": { + "VirtualNetworkGatewayNatRulePut": { + "$ref": "./examples/VirtualNetworkGatewayNatRulePut.json" + } + }, + "description": "Creates a nat rule to a scalable virtual network gateway if it doesn't exist else updates the existing nat rules.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the Virtual Network Gateway." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "name": "natRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the nat rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "NatRuleParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayNatRule" + }, + "description": "Parameters supplied to create or Update a Nat Rule." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the nat rule created or updated.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayNatRule" + } + }, + "201": { + "description": "Request successful. Returns the details of the nat rule created or updated.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayNatRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "delete": { + "operationId": "VirtualNetworkGatewayNatRules_Delete", + "x-ms-examples": { + "VirtualNetworkGatewayNatRuleDelete": { + "$ref": "./examples/VirtualNetworkGatewayNatRuleDelete.json" + } + }, + "description": "Deletes a nat rule.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the Virtual Network Gateway." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "name": "natRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the nat rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Nat Rule deleted." + }, + "202": { + "description": "Request received successfully. Nat Rule deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No nat rules exist by the name provided." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/natRules": { + "get": { + "operationId": "VirtualNetworkGatewayNatRules_ListByVirtualNetworkGateway", + "x-ms-examples": { + "VirtualNetworkGatewayNatRuleList": { + "$ref": "./examples/VirtualNetworkGatewayNatRuleList.json" + } + }, + "description": "Retrieves all nat rules for a particular virtual network gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the virtual network gateway." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all Nat rules for a virtual network gateway.", + "schema": { + "$ref": "#/definitions/ListVirtualNetworkGatewayNatRulesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "VirtualNetworkGatewayIPConfigurationPropertiesFormat": { + "properties": { + "privateIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "The private IP address allocation method." + }, + "subnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the subnet resource." + }, + "publicIPAddress": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the public IP resource." + }, + "privateIPAddress": { + "readOnly": true, + "type": "string", + "description": "Private IP Address for this gateway." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual network gateway IP configuration resource." + } + }, + "description": "Properties of VirtualNetworkGatewayIPConfiguration." + }, + "VirtualNetworkGatewayIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkGatewayIPConfigurationPropertiesFormat", + "description": "Properties of the virtual network gateway ip configuration." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IP configuration for virtual network gateway." + }, + "VirtualNetworkGatewayNatRuleProperties": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the NAT Rule resource." + }, + "type": { + "type": "string", + "description": "The type of NAT rule for VPN NAT.", + "enum": [ + "Static", + "Dynamic" + ], + "x-ms-enum": { + "name": "VpnNatRuleType", + "modelAsString": true + } + }, + "mode": { + "type": "string", + "description": "The Source NAT direction of a VPN NAT.", + "enum": [ + "EgressSnat", + "IngressSnat" + ], + "x-ms-enum": { + "name": "VpnNatRuleMode", + "modelAsString": true + } + }, + "internalMappings": { + "type": "array", + "items": { + "$ref": "./virtualWan.json#/definitions/VpnNatRuleMapping" + }, + "description": "The private IP address internal mapping for NAT." + }, + "externalMappings": { + "type": "array", + "items": { + "$ref": "./virtualWan.json#/definitions/VpnNatRuleMapping" + }, + "description": "The private IP address external mapping for NAT." + }, + "ipConfigurationId": { + "type": "string", + "description": "The IP Configuration ID this NAT rule applies to." + } + }, + "description": "Parameters for VirtualNetworkGatewayNatRule." + }, + "VirtualNetworkGatewayNatRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkGatewayNatRuleProperties", + "description": "Properties of the Virtual Network Gateway NAT rule." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "VirtualNetworkGatewayNatRule Resource." + }, + "VirtualNetworkGatewayPropertiesFormat": { + "properties": { + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkGatewayIPConfiguration" + }, + "description": "IP configurations for virtual network gateway." + }, + "gatewayType": { + "type": "string", + "description": "The type of this virtual network gateway.", + "enum": [ + "Vpn", + "ExpressRoute", + "LocalGateway" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewayType", + "modelAsString": true + } + }, + "vpnType": { + "type": "string", + "description": "The type of this virtual network gateway.", + "enum": [ + "PolicyBased", + "RouteBased" + ], + "x-ms-enum": { + "name": "VpnType", + "modelAsString": true + } + }, + "vpnGatewayGeneration": { + "type": "string", + "description": "The generation for this VirtualNetworkGateway. Must be None if gatewayType is not VPN.", + "enum": [ + "None", + "Generation1", + "Generation2" + ], + "x-ms-enum": { + "name": "VpnGatewayGeneration", + "modelAsString": true + } + }, + "enableBgp": { + "type": "boolean", + "description": "Whether BGP is enabled for this virtual network gateway or not." + }, + "enablePrivateIpAddress": { + "type": "boolean", + "description": "Whether private IP needs to be enabled on this gateway for connections or not." + }, + "activeActive": { + "type": "boolean", + "description": "ActiveActive flag." + }, + "gatewayDefaultSite": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the LocalNetworkGateway resource which represents local network site having default routes. Assign Null value in case of removing existing default site setting." + }, + "sku": { + "$ref": "#/definitions/VirtualNetworkGatewaySku", + "description": "The reference to the VirtualNetworkGatewaySku resource which represents the SKU selected for Virtual network gateway." + }, + "vpnClientConfiguration": { + "$ref": "#/definitions/VpnClientConfiguration", + "description": "The reference to the VpnClientConfiguration resource which represents the P2S VpnClient configurations." + }, + "bgpSettings": { + "$ref": "#/definitions/BgpSettings", + "description": "Virtual network gateway's BGP speaker settings." + }, + "customRoutes": { + "$ref": "./virtualNetwork.json#/definitions/AddressSpace", + "description": "The reference to the address space resource which represents the custom routes address space specified by the customer for virtual network gateway and VpnClient." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the virtual network gateway resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual network gateway resource." + }, + "enableDnsForwarding": { + "type": "boolean", + "description": "Whether dns forwarding is enabled or not." + }, + "inboundDnsForwardingEndpoint": { + "type": "string", + "readOnly": true, + "description": "The IP address allocated by the gateway to which dns requests can be sent." + }, + "vNetExtendedLocationResourceId": { + "type": "string", + "description": "Customer vnet resource id. VirtualNetworkGateway of type local gateway is associated with the customer vnet." + }, + "natRules": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkGatewayNatRule" + }, + "description": "NatRules for virtual network gateway." + }, + "enableBgpRouteTranslationForNat": { + "type": "boolean", + "description": "EnableBgpRouteTranslationForNat flag." + } + }, + "description": "VirtualNetworkGateway properties." + }, + "VpnClientRootCertificatePropertiesFormat": { + "properties": { + "publicCertData": { + "type": "string", + "description": "The certificate public data." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the VPN client root certificate resource." + } + }, + "required": [ + "publicCertData" + ], + "description": "Properties of SSL certificates of application gateway." + }, + "VpnClientRootCertificate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnClientRootCertificatePropertiesFormat", + "description": "Properties of the vpn client root certificate." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "required": [ + "properties" + ], + "description": "VPN client root certificate of virtual network gateway." + }, + "VpnClientRevokedCertificatePropertiesFormat": { + "properties": { + "thumbprint": { + "type": "string", + "description": "The revoked VPN client certificate thumbprint." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the VPN client revoked certificate resource." + } + }, + "description": "Properties of the revoked VPN client certificate of virtual network gateway." + }, + "VpnClientRevokedCertificate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnClientRevokedCertificatePropertiesFormat", + "description": "Properties of the vpn client revoked certificate." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "VPN client revoked certificate of virtual network gateway." + }, + "RadiusServer": { + "properties": { + "radiusServerAddress": { + "type": "string", + "description": "The address of this radius server." + }, + "radiusServerScore": { + "type": "integer", + "format": "int64", + "description": "The initial score assigned to this radius server." + }, + "radiusServerSecret": { + "type": "string", + "description": "The secret used for this radius server." + } + }, + "required": [ + "radiusServerAddress" + ], + "description": "Radius Server Settings." + }, + "VpnClientConfiguration": { + "properties": { + "vpnClientAddressPool": { + "$ref": "./virtualNetwork.json#/definitions/AddressSpace", + "description": "The reference to the address space resource which represents Address space for P2S VpnClient." + }, + "vpnClientRootCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnClientRootCertificate" + }, + "description": "VpnClientRootCertificate for virtual network gateway." + }, + "vpnClientRevokedCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnClientRevokedCertificate" + }, + "description": "VpnClientRevokedCertificate for Virtual network gateway." + }, + "vpnClientProtocols": { + "type": "array", + "items": { + "type": "string", + "description": "VPN client protocol enabled for the virtual network gateway.", + "enum": [ + "IkeV2", + "SSTP", + "OpenVPN" + ], + "x-ms-enum": { + "name": "VpnClientProtocol", + "modelAsString": true + } + }, + "description": "VpnClientProtocols for Virtual network gateway." + }, + "vpnAuthenticationTypes": { + "type": "array", + "items": { + "type": "string", + "description": "VPN authentication types enabled for the virtual network gateway.", + "enum": [ + "Certificate", + "Radius", + "AAD" + ], + "x-ms-enum": { + "name": "VpnAuthenticationType", + "modelAsString": true + } + }, + "description": "VPN authentication types for the virtual network gateway.." + }, + "vpnClientIpsecPolicies": { + "type": "array", + "items": { + "$ref": "#/definitions/IpsecPolicy" + }, + "description": "VpnClientIpsecPolicies for virtual network gateway P2S client." + }, + "radiusServerAddress": { + "type": "string", + "description": "The radius server address property of the VirtualNetworkGateway resource for vpn client connection." + }, + "radiusServerSecret": { + "type": "string", + "description": "The radius secret property of the VirtualNetworkGateway resource for vpn client connection." + }, + "radiusServers": { + "type": "array", + "items": { + "$ref": "#/definitions/RadiusServer" + }, + "description": "The radiusServers property for multiple radius server configuration." + }, + "aadTenant": { + "type": "string", + "description": "The AADTenant property of the VirtualNetworkGateway resource for vpn client connection used for AAD authentication." + }, + "aadAudience": { + "type": "string", + "description": "The AADAudience property of the VirtualNetworkGateway resource for vpn client connection used for AAD authentication." + }, + "aadIssuer": { + "type": "string", + "description": "The AADIssuer property of the VirtualNetworkGateway resource for vpn client connection used for AAD authentication." + } + }, + "description": "VpnClientConfiguration for P2S client." + }, + "VirtualNetworkGatewaySku": { + "properties": { + "name": { + "type": "string", + "description": "Gateway SKU name.", + "enum": [ + "Basic", + "HighPerformance", + "Standard", + "UltraPerformance", + "VpnGw1", + "VpnGw2", + "VpnGw3", + "VpnGw4", + "VpnGw5", + "VpnGw1AZ", + "VpnGw2AZ", + "VpnGw3AZ", + "VpnGw4AZ", + "VpnGw5AZ", + "ErGw1AZ", + "ErGw2AZ", + "ErGw3AZ" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewaySkuName", + "modelAsString": true + } + }, + "tier": { + "type": "string", + "description": "Gateway SKU tier.", + "enum": [ + "Basic", + "HighPerformance", + "Standard", + "UltraPerformance", + "VpnGw1", + "VpnGw2", + "VpnGw3", + "VpnGw4", + "VpnGw5", + "VpnGw1AZ", + "VpnGw2AZ", + "VpnGw3AZ", + "VpnGw4AZ", + "VpnGw5AZ", + "ErGw1AZ", + "ErGw2AZ", + "ErGw3AZ" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewaySkuTier", + "modelAsString": true + } + }, + "capacity": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The capacity." + } + }, + "description": "VirtualNetworkGatewaySku details." + }, + "BgpSettings": { + "properties": { + "asn": { + "type": "integer", + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "description": "The BGP speaker's ASN." + }, + "bgpPeeringAddress": { + "type": "string", + "description": "The BGP peering address and BGP identifier of this BGP speaker." + }, + "peerWeight": { + "type": "integer", + "format": "int32", + "description": "The weight added to routes learned from this BGP speaker." + }, + "bgpPeeringAddresses": { + "type": "array", + "items": { + "$ref": "#/definitions/IPConfigurationBgpPeeringAddress" + }, + "description": "BGP peering address with IP configuration ID for virtual network gateway." + } + }, + "description": "BGP settings details." + }, + "BgpPeerStatus": { + "properties": { + "localAddress": { + "type": "string", + "readOnly": true, + "description": "The virtual network gateway's local address." + }, + "neighbor": { + "type": "string", + "readOnly": true, + "description": "The remote BGP peer." + }, + "asn": { + "type": "integer", + "format": "int64", + "readOnly": true, + "minimum": 0, + "maximum": 4294967295, + "description": "The autonomous system number of the remote BGP peer." + }, + "state": { + "type": "string", + "readOnly": true, + "description": "The BGP peer state.", + "enum": [ + "Unknown", + "Stopped", + "Idle", + "Connecting", + "Connected" + ], + "x-ms-enum": { + "name": "BgpPeerState", + "modelAsString": true + } + }, + "connectedDuration": { + "type": "string", + "readOnly": true, + "description": "For how long the peering has been up." + }, + "routesReceived": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The number of routes learned from this peer." + }, + "messagesSent": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The number of BGP messages sent." + }, + "messagesReceived": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The number of BGP messages received." + } + }, + "description": "BGP peer status details." + }, + "GatewayRoute": { + "properties": { + "localAddress": { + "type": "string", + "readOnly": true, + "description": "The gateway's local address." + }, + "network": { + "type": "string", + "readOnly": true, + "description": "The route's network prefix." + }, + "nextHop": { + "type": "string", + "readOnly": true, + "description": "The route's next hop." + }, + "sourcePeer": { + "type": "string", + "readOnly": true, + "description": "The peer this route was learned from." + }, + "origin": { + "type": "string", + "readOnly": true, + "description": "The source this route was learned from." + }, + "asPath": { + "type": "string", + "readOnly": true, + "description": "The route's AS path sequence." + }, + "weight": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "The route's weight." + } + }, + "description": "Gateway routing details." + }, + "VirtualNetworkGateway": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkGatewayPropertiesFormat", + "description": "Properties of the virtual network gateway." + }, + "extendedLocation": { + "$ref": "./network.json#/definitions/ExtendedLocation", + "description": "The extended location of type local virtual network gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "required": [ + "properties" + ], + "description": "A common class for general resource information." + }, + "VpnClientParameters": { + "properties": { + "processorArchitecture": { + "type": "string", + "description": "VPN client Processor Architecture.", + "enum": [ + "Amd64", + "X86" + ], + "x-ms-enum": { + "name": "ProcessorArchitecture", + "modelAsString": true + } + }, + "authenticationMethod": { + "$ref": "./network.json#/definitions/AuthenticationMethod", + "description": "VPN client authentication method." + }, + "radiusServerAuthCertificate": { + "type": "string", + "description": "The public certificate data for the radius server authentication certificate as a Base-64 encoded string. Required only if external radius authentication has been configured with EAPTLS authentication." + }, + "clientRootCertificates": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of client root certificates public certificate data encoded as Base-64 strings. Optional parameter for external radius based authentication with EAPTLS." + } + }, + "description": "Vpn Client Parameters for package generation." + }, + "VirtualNetworkGatewayListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkGateway" + }, + "description": "A list of VirtualNetworkGateway resources that exists in a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListVirtualNetworkGateways API service call." + }, + "ListVirtualNetworkGatewayNatRulesResult": { + "description": "Result of the request to list all nat rules to a virtual network gateway. It contains a list of Nat rules and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkGatewayNatRule" + }, + "description": "List of Nat Rules." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "BgpPeerStatusListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BgpPeerStatus" + }, + "description": "List of BGP peers." + } + }, + "description": "Response for list BGP peer status API service call." + }, + "GatewayRouteListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/GatewayRoute" + }, + "description": "List of gateway routes." + } + }, + "description": "List of virtual network gateway routes." + }, + "TunnelConnectionHealth": { + "properties": { + "tunnel": { + "readOnly": true, + "type": "string", + "description": "Tunnel name." + }, + "connectionStatus": { + "readOnly": true, + "$ref": "#/definitions/VirtualNetworkGatewayConnectionStatus", + "description": "Virtual Network Gateway connection status." + }, + "ingressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The Ingress Bytes Transferred in this connection." + }, + "egressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The Egress Bytes Transferred in this connection." + }, + "lastConnectionEstablishedUtcTime": { + "readOnly": true, + "type": "string", + "description": "The time at which connection was established in Utc format." + } + }, + "description": "VirtualNetworkGatewayConnection properties." + }, + "VirtualNetworkGatewayConnectionPropertiesFormat": { + "properties": { + "authorizationKey": { + "type": "string", + "description": "The authorizationKey." + }, + "virtualNetworkGateway1": { + "$ref": "#/definitions/VirtualNetworkGateway", + "description": "The reference to virtual network gateway resource." + }, + "virtualNetworkGateway2": { + "$ref": "#/definitions/VirtualNetworkGateway", + "description": "The reference to virtual network gateway resource." + }, + "localNetworkGateway2": { + "$ref": "#/definitions/LocalNetworkGateway", + "description": "The reference to local network gateway resource." + }, + "ingressNatRules": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "List of ingress NatRules." + }, + "egressNatRules": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "List of egress NatRules." + }, + "connectionType": { + "$ref": "#/definitions/VirtualNetworkGatewayConnectionType", + "description": "Gateway connection type." + }, + "connectionProtocol": { + "$ref": "#/definitions/ConnectionProtocol", + "description": "Connection protocol used for this connection." + }, + "routingWeight": { + "type": "integer", + "format": "int32", + "description": "The routing weight." + }, + "dpdTimeoutSeconds": { + "type": "integer", + "format": "int32", + "description": "The dead peer detection timeout of this connection in seconds." + }, + "connectionMode": { + "$ref": "#/definitions/VirtualNetworkGatewayConnectionMode", + "description": "The connection mode for this connection." + }, + "sharedKey": { + "type": "string", + "description": "The IPSec shared key." + }, + "connectionStatus": { + "readOnly": true, + "$ref": "#/definitions/VirtualNetworkGatewayConnectionStatus", + "description": "Virtual Network Gateway connection status." + }, + "tunnelConnectionStatus": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/TunnelConnectionHealth" + }, + "description": "Collection of all tunnels' connection health status." + }, + "egressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The egress bytes transferred in this connection." + }, + "ingressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The ingress bytes transferred in this connection." + }, + "peer": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to peerings resource." + }, + "enableBgp": { + "type": "boolean", + "description": "EnableBgp flag." + }, + "useLocalAzureIpAddress": { + "type": "boolean", + "description": "Use private local Azure IP for the connection." + }, + "usePolicyBasedTrafficSelectors": { + "type": "boolean", + "description": "Enable policy-based traffic selectors." + }, + "ipsecPolicies": { + "type": "array", + "items": { + "$ref": "#/definitions/IpsecPolicy" + }, + "description": "The IPSec Policies to be considered by this connection." + }, + "trafficSelectorPolicies": { + "type": "array", + "items": { + "$ref": "#/definitions/TrafficSelectorPolicy" + }, + "description": "The Traffic Selector Policies to be considered by this connection." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the virtual network gateway connection resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual network gateway connection resource." + }, + "expressRouteGatewayBypass": { + "type": "boolean", + "description": "Bypass ExpressRoute Gateway for data forwarding." + } + }, + "required": [ + "virtualNetworkGateway1", + "connectionType" + ], + "description": "VirtualNetworkGatewayConnection properties." + }, + "VirtualNetworkGatewayConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkGatewayConnectionPropertiesFormat", + "description": "Properties of the virtual network gateway connection." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "required": [ + "properties" + ], + "description": "A common class for general resource information." + }, + "VirtualNetworkGatewayConnectionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkGatewayConnection" + }, + "description": "A list of VirtualNetworkGatewayConnection resources that exists in a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListVirtualNetworkGatewayConnections API service call." + }, + "ConnectionResetSharedKey": { + "properties": { + "keyLength": { + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 128, + "description": "The virtual network connection reset shared key length, should between 1 and 128." + } + }, + "required": [ + "keyLength" + ], + "description": "The virtual network connection reset shared key." + }, + "ConnectionSharedKey": { + "properties": { + "value": { + "type": "string", + "description": "The virtual network connection shared key value." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "required": [ + "value" + ], + "description": "Response for GetConnectionSharedKey API service call." + }, + "IpsecPolicy": { + "properties": { + "saLifeTimeSeconds": { + "type": "integer", + "format": "int32", + "description": "The IPSec Security Association (also called Quick Mode or Phase 2 SA) lifetime in seconds for a site to site VPN tunnel." + }, + "saDataSizeKilobytes": { + "type": "integer", + "format": "int32", + "description": "The IPSec Security Association (also called Quick Mode or Phase 2 SA) payload size in KB for a site to site VPN tunnel." + }, + "ipsecEncryption": { + "$ref": "#/definitions/IpsecEncryption", + "description": "The IPSec encryption algorithm (IKE phase 1)." + }, + "ipsecIntegrity": { + "$ref": "#/definitions/IpsecIntegrity", + "description": "The IPSec integrity algorithm (IKE phase 1)." + }, + "ikeEncryption": { + "$ref": "#/definitions/IkeEncryption", + "description": "The IKE encryption algorithm (IKE phase 2)." + }, + "ikeIntegrity": { + "$ref": "#/definitions/IkeIntegrity", + "description": "The IKE integrity algorithm (IKE phase 2)." + }, + "dhGroup": { + "$ref": "#/definitions/DhGroup", + "description": "The DH Group used in IKE Phase 1 for initial SA." + }, + "pfsGroup": { + "$ref": "#/definitions/PfsGroup", + "description": "The Pfs Group used in IKE Phase 2 for new child SA." + } + }, + "required": [ + "saLifeTimeSeconds", + "saDataSizeKilobytes", + "ipsecEncryption", + "ipsecIntegrity", + "ikeEncryption", + "ikeIntegrity", + "dhGroup", + "pfsGroup" + ], + "description": "An IPSec Policy configuration for a virtual network gateway connection." + }, + "TrafficSelectorPolicy": { + "properties": { + "localAddressRanges": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A collection of local address spaces in CIDR format." + }, + "remoteAddressRanges": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A collection of remote address spaces in CIDR format." + } + }, + "required": [ + "localAddressRanges", + "remoteAddressRanges" + ], + "description": "An traffic selector policy for a virtual network gateway connection." + }, + "ConnectionProtocol": { + "type": "string", + "description": "Gateway connection protocol.", + "enum": [ + "IKEv2", + "IKEv1" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewayConnectionProtocol", + "modelAsString": true + } + }, + "VpnClientIPsecParameters": { + "properties": { + "saLifeTimeSeconds": { + "type": "integer", + "format": "int32", + "description": "The IPSec Security Association (also called Quick Mode or Phase 2 SA) lifetime in seconds for P2S client." + }, + "saDataSizeKilobytes": { + "type": "integer", + "format": "int32", + "description": "The IPSec Security Association (also called Quick Mode or Phase 2 SA) payload size in KB for P2S client.." + }, + "ipsecEncryption": { + "$ref": "#/definitions/IpsecEncryption", + "description": "The IPSec encryption algorithm (IKE phase 1)." + }, + "ipsecIntegrity": { + "$ref": "#/definitions/IpsecIntegrity", + "description": "The IPSec integrity algorithm (IKE phase 1)." + }, + "ikeEncryption": { + "$ref": "#/definitions/IkeEncryption", + "description": "The IKE encryption algorithm (IKE phase 2)." + }, + "ikeIntegrity": { + "$ref": "#/definitions/IkeIntegrity", + "description": "The IKE integrity algorithm (IKE phase 2)." + }, + "dhGroup": { + "$ref": "#/definitions/DhGroup", + "description": "The DH Group used in IKE Phase 1 for initial SA." + }, + "pfsGroup": { + "$ref": "#/definitions/PfsGroup", + "description": "The Pfs Group used in IKE Phase 2 for new child SA." + } + }, + "required": [ + "saLifeTimeSeconds", + "saDataSizeKilobytes", + "ipsecEncryption", + "ipsecIntegrity", + "ikeEncryption", + "ikeIntegrity", + "dhGroup", + "pfsGroup" + ], + "description": "An IPSec parameters for a virtual network gateway P2S connection." + }, + "LocalNetworkGatewayPropertiesFormat": { + "properties": { + "localNetworkAddressSpace": { + "$ref": "./virtualNetwork.json#/definitions/AddressSpace", + "description": "Local network site address space." + }, + "gatewayIpAddress": { + "type": "string", + "description": "IP address of local network gateway." + }, + "fqdn": { + "type": "string", + "description": "FQDN of local network gateway." + }, + "bgpSettings": { + "$ref": "#/definitions/BgpSettings", + "description": "Local network gateway's BGP speaker settings." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the local network gateway resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the local network gateway resource." + } + }, + "description": "LocalNetworkGateway properties." + }, + "LocalNetworkGateway": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/LocalNetworkGatewayPropertiesFormat", + "description": "Properties of the local network gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "required": [ + "properties" + ], + "description": "A common class for general resource information." + }, + "LocalNetworkGatewayListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/LocalNetworkGateway" + }, + "description": "A list of local network gateways that exists in a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListLocalNetworkGateways API service call." + }, + "VirtualNetworkConnectionGatewayReference": { + "properties": { + "id": { + "type": "string", + "description": "The ID of VirtualNetworkGateway or LocalNetworkGateway resource." + } + }, + "required": [ + "id" + ], + "description": "A reference to VirtualNetworkGateway or LocalNetworkGateway resource." + }, + "VirtualNetworkGatewayConnectionListEntityPropertiesFormat": { + "properties": { + "authorizationKey": { + "type": "string", + "description": "The authorizationKey." + }, + "virtualNetworkGateway1": { + "$ref": "#/definitions/VirtualNetworkConnectionGatewayReference", + "description": "The reference to virtual network gateway resource." + }, + "virtualNetworkGateway2": { + "$ref": "#/definitions/VirtualNetworkConnectionGatewayReference", + "description": "The reference to virtual network gateway resource." + }, + "localNetworkGateway2": { + "$ref": "#/definitions/VirtualNetworkConnectionGatewayReference", + "description": "The reference to local network gateway resource." + }, + "connectionType": { + "$ref": "#/definitions/VirtualNetworkGatewayConnectionType", + "description": "Gateway connection type." + }, + "connectionProtocol": { + "$ref": "#/definitions/ConnectionProtocol", + "description": "Connection protocol used for this connection." + }, + "routingWeight": { + "type": "integer", + "format": "int32", + "description": "The routing weight." + }, + "connectionMode": { + "$ref": "#/definitions/VirtualNetworkGatewayConnectionMode", + "description": "The connection mode for this connection." + }, + "sharedKey": { + "type": "string", + "description": "The IPSec shared key." + }, + "connectionStatus": { + "readOnly": true, + "$ref": "#/definitions/VirtualNetworkGatewayConnectionStatus", + "description": "Virtual Network Gateway connection status." + }, + "tunnelConnectionStatus": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/TunnelConnectionHealth" + }, + "description": "Collection of all tunnels' connection health status." + }, + "egressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The egress bytes transferred in this connection." + }, + "ingressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The ingress bytes transferred in this connection." + }, + "peer": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to peerings resource." + }, + "enableBgp": { + "type": "boolean", + "description": "EnableBgp flag." + }, + "usePolicyBasedTrafficSelectors": { + "type": "boolean", + "description": "Enable policy-based traffic selectors." + }, + "ipsecPolicies": { + "type": "array", + "items": { + "$ref": "#/definitions/IpsecPolicy" + }, + "description": "The IPSec Policies to be considered by this connection." + }, + "trafficSelectorPolicies": { + "type": "array", + "items": { + "$ref": "#/definitions/TrafficSelectorPolicy" + }, + "description": "The Traffic Selector Policies to be considered by this connection." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the virtual network gateway connection resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual network gateway connection resource." + }, + "expressRouteGatewayBypass": { + "type": "boolean", + "description": "Bypass ExpressRoute Gateway for data forwarding." + } + }, + "required": [ + "virtualNetworkGateway1", + "connectionType" + ], + "description": "VirtualNetworkGatewayConnection properties." + }, + "VirtualNetworkGatewayConnectionListEntity": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkGatewayConnectionListEntityPropertiesFormat", + "description": "Properties of the virtual network gateway connection." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "required": [ + "properties" + ], + "description": "A common class for general resource information." + }, + "VirtualNetworkGatewayListConnectionsResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkGatewayConnectionListEntity" + }, + "description": "A list of VirtualNetworkGatewayConnection resources that exists in a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the VirtualNetworkGatewayListConnections API service call." + }, + "VpnDeviceScriptParameters": { + "properties": { + "vendor": { + "type": "string", + "description": "The vendor for the vpn device." + }, + "deviceFamily": { + "type": "string", + "description": "The device family for the vpn device." + }, + "firmwareVersion": { + "type": "string", + "description": "The firmware version for the vpn device." + } + }, + "description": "Vpn device configuration script generation parameters." + }, + "DhGroup": { + "type": "string", + "description": "The DH Groups used in IKE Phase 1 for initial SA.", + "enum": [ + "None", + "DHGroup1", + "DHGroup2", + "DHGroup14", + "DHGroup2048", + "ECP256", + "ECP384", + "DHGroup24" + ], + "x-ms-enum": { + "name": "DhGroup", + "modelAsString": true + } + }, + "IkeEncryption": { + "type": "string", + "description": "The IKE encryption algorithm (IKE phase 2).", + "enum": [ + "DES", + "DES3", + "AES128", + "AES192", + "AES256", + "GCMAES256", + "GCMAES128" + ], + "x-ms-enum": { + "name": "IkeEncryption", + "modelAsString": true + } + }, + "IkeIntegrity": { + "type": "string", + "description": "The IKE integrity algorithm (IKE phase 2).", + "enum": [ + "MD5", + "SHA1", + "SHA256", + "SHA384", + "GCMAES256", + "GCMAES128" + ], + "x-ms-enum": { + "name": "IkeIntegrity", + "modelAsString": true + } + }, + "IpsecEncryption": { + "type": "string", + "description": "The IPSec encryption algorithm (IKE phase 1).", + "enum": [ + "None", + "DES", + "DES3", + "AES128", + "AES192", + "AES256", + "GCMAES128", + "GCMAES192", + "GCMAES256" + ], + "x-ms-enum": { + "name": "IpsecEncryption", + "modelAsString": true + } + }, + "IpsecIntegrity": { + "type": "string", + "description": "The IPSec integrity algorithm (IKE phase 1).", + "enum": [ + "MD5", + "SHA1", + "SHA256", + "GCMAES128", + "GCMAES192", + "GCMAES256" + ], + "x-ms-enum": { + "name": "IpsecIntegrity", + "modelAsString": true + } + }, + "PfsGroup": { + "type": "string", + "description": "The Pfs Groups used in IKE Phase 2 for new child SA.", + "enum": [ + "None", + "PFS1", + "PFS2", + "PFS2048", + "ECP256", + "ECP384", + "PFS24", + "PFS14", + "PFSMM" + ], + "x-ms-enum": { + "name": "PfsGroup", + "modelAsString": true + } + }, + "VirtualNetworkGatewayConnectionStatus": { + "type": "string", + "description": "Virtual Network Gateway connection status.", + "enum": [ + "Unknown", + "Connecting", + "Connected", + "NotConnected" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewayConnectionStatus", + "modelAsString": true + } + }, + "VirtualNetworkGatewayConnectionType": { + "type": "string", + "description": "Gateway connection type.", + "enum": [ + "IPsec", + "Vnet2Vnet", + "ExpressRoute", + "VPNClient" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewayConnectionType", + "modelAsString": true + } + }, + "VirtualNetworkGatewayConnectionMode": { + "type": "string", + "description": "Gateway connection type.", + "enum": [ + "Default", + "ResponderOnly", + "InitiatorOnly" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewayConnectionMode", + "modelAsString": true + } + }, + "VpnClientConnectionHealthDetailListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnClientConnectionHealthDetail" + }, + "description": "List of vpn client connection health." + } + }, + "description": "List of virtual network gateway vpn client connection health." + }, + "VpnClientConnectionHealthDetail": { + "properties": { + "vpnConnectionId": { + "type": "string", + "readOnly": true, + "description": "The vpn client Id." + }, + "vpnConnectionDuration": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The duration time of a connected vpn client." + }, + "vpnConnectionTime": { + "type": "string", + "readOnly": true, + "description": "The start time of a connected vpn client." + }, + "publicIpAddress": { + "type": "string", + "readOnly": true, + "description": "The public Ip of a connected vpn client." + }, + "privateIpAddress": { + "type": "string", + "readOnly": true, + "description": "The assigned private Ip of a connected vpn client." + }, + "vpnUserName": { + "type": "string", + "readOnly": true, + "description": "The user name of a connected vpn client." + }, + "maxBandwidth": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The max band width." + }, + "egressPacketsTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The egress packets per second." + }, + "egressBytesTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The egress bytes per second." + }, + "ingressPacketsTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The ingress packets per second." + }, + "ingressBytesTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The ingress bytes per second." + }, + "maxPacketsPerSecond": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The max packets transferred per second." + } + }, + "description": "VPN client connection health detail." + }, + "VpnPacketCaptureStopParameters": { + "properties": { + "sasUrl": { + "type": "string", + "description": "SAS url for packet capture on virtual network gateway." + } + }, + "description": "Stop packet capture parameters." + }, + "VpnPacketCaptureStartParameters": { + "properties": { + "filterData": { + "type": "string", + "description": "Start Packet capture parameters." + } + }, + "description": "Start packet capture parameters on virtual network gateway." + }, + "IPConfigurationBgpPeeringAddress": { + "properties": { + "ipconfigurationId": { + "type": "string", + "description": "The ID of IP configuration which belongs to gateway." + }, + "defaultBgpIpAddresses": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of default BGP peering addresses which belong to IP configuration." + }, + "customBgpIpAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of custom BGP peering addresses which belong to IP configuration." + }, + "tunnelIpAddresses": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of tunnel public IP addresses which belong to IP configuration." + } + }, + "description": "Properties of IPConfigurationBgpPeeringAddress." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/virtualNetworkTap.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/virtualNetworkTap.json new file mode 100644 index 000000000000..0cd00eeeb6ca --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/virtualNetworkTap.json @@ -0,0 +1,426 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2021-02-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkTaps/{tapName}": { + "delete": { + "tags": [ + "VirtualNetworkTap" + ], + "operationId": "VirtualNetworkTaps_Delete", + "description": "Deletes the specified virtual network tap.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "tapName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network tap." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted. Sets 'Deleting' provisioningState until the operation completes. Returns an operation URI that can be queried to find the current state of the operation." + }, + "204": { + "description": "Request successful. Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete Virtual Network Tap resource": { + "$ref": "./examples/VirtualNetworkTapDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "VirtualNetworkTap" + ], + "operationId": "VirtualNetworkTaps_Get", + "description": "Gets information about the specified virtual network tap.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "tapName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of virtual network tap." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting VirtualNetworkTap resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkTap" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Virtual Network Tap": { + "$ref": "./examples/VirtualNetworkTapGet.json" + } + } + }, + "put": { + "tags": [ + "VirtualNetworkTap" + ], + "operationId": "VirtualNetworkTaps_CreateOrUpdate", + "description": "Creates or updates a Virtual Network Tap.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "tapName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network tap." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualNetworkTap" + }, + "description": "Parameters supplied to the create or update virtual network tap operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkTap resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkTap" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting VirtualNetworkTap resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkTap" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create Virtual Network Tap": { + "$ref": "./examples/VirtualNetworkTapCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "VirtualNetworkTap" + ], + "operationId": "VirtualNetworkTaps_UpdateTags", + "description": "Updates an VirtualNetworkTap tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "tapName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tap." + }, + { + "name": "tapParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update VirtualNetworkTap tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkTap resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkTap" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update virtual network tap tags": { + "$ref": "./examples/VirtualNetworkTapUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/virtualNetworkTaps": { + "get": { + "tags": [ + "VirtualNetworkTaps" + ], + "operationId": "VirtualNetworkTaps_ListAll", + "description": "Gets all the VirtualNetworkTaps in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Virtual Network Tap resources.", + "schema": { + "$ref": "#/definitions/VirtualNetworkTapListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all virtual network taps": { + "$ref": "./examples/VirtualNetworkTapListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkTaps": { + "get": { + "tags": [ + "VirtualNetworkTaps" + ], + "operationId": "VirtualNetworkTaps_ListByResourceGroup", + "description": "Gets all the VirtualNetworkTaps in a subscription.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Virtual Network Tap resources.", + "schema": { + "$ref": "#/definitions/VirtualNetworkTapListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List virtual network taps in resource group": { + "$ref": "./examples/VirtualNetworkTapList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "VirtualNetworkTap": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkTapPropertiesFormat", + "description": "Virtual Network Tap Properties." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Virtual Network Tap resource." + }, + "VirtualNetworkTapPropertiesFormat": { + "description": "Virtual Network Tap properties.", + "properties": { + "networkInterfaceTapConfigurations": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceTapConfiguration", + "description": "The reference to the Network Interface." + }, + "description": "Specifies the list of resource IDs for the network interface IP configuration that needs to be tapped." + }, + "resourceGuid": { + "type": "string", + "readOnly": true, + "description": "The resource GUID property of the virtual network tap resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual network tap resource." + }, + "destinationNetworkInterfaceIPConfiguration": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfiguration", + "description": "The reference to the private IP Address of the collector nic that will receive the tap." + }, + "destinationLoadBalancerFrontEndIPConfiguration": { + "$ref": "./loadBalancer.json#/definitions/FrontendIPConfiguration", + "description": "The reference to the private IP address on the internal Load Balancer that will receive the tap." + }, + "destinationPort": { + "type": "integer", + "description": "The VXLAN destination port that will receive the tapped traffic." + } + } + }, + "VirtualNetworkTapListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkTap" + }, + "description": "A list of VirtualNetworkTaps in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListVirtualNetworkTap API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/virtualRouter.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/virtualRouter.json new file mode 100644 index 000000000000..6706d9fb2498 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/virtualRouter.json @@ -0,0 +1,698 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2021-02-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualRouters/{virtualRouterName}": { + "delete": { + "tags": [ + "VirtualRouters" + ], + "operationId": "VirtualRouters_Delete", + "description": "Deletes the specified Virtual Router.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualRouterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Delete VirtualRouter": { + "$ref": "./examples/VirtualRouterDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "VirtualRouters" + ], + "operationId": "VirtualRouters_Get", + "description": "Gets the specified Virtual Router.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualRouterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a Virtual Router resource.", + "schema": { + "$ref": "#/definitions/VirtualRouter" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Get VirtualRouter": { + "$ref": "./examples/VirtualRouterGet.json" + } + } + }, + "put": { + "tags": [ + "VirtualRouters" + ], + "operationId": "VirtualRouters_CreateOrUpdate", + "description": "Creates or updates the specified Virtual Router.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualRouterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualRouter" + }, + "description": "Parameters supplied to the create or update Virtual Router." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Request received successfully. The operation returns the resulting Virtual Router resource.", + "schema": { + "$ref": "#/definitions/VirtualRouter" + } + }, + "200": { + "description": "Request successful. The operation returns the resulting Virtual Router resource.", + "schema": { + "$ref": "#/definitions/VirtualRouter" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Create VirtualRouter": { + "$ref": "./examples/VirtualRouterPut.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualRouters": { + "get": { + "tags": [ + "VirtualRouters" + ], + "operationId": "VirtualRouters_ListByResourceGroup", + "description": "Lists all Virtual Routers in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of Virtual Router resources.", + "schema": { + "$ref": "#/definitions/VirtualRouterListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List all Virtual Router for a given resource group": { + "$ref": "./examples/VirtualRouterListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/virtualRouters": { + "get": { + "tags": [ + "VirtualRouters" + ], + "operationId": "VirtualRouters_List", + "description": "Gets all the Virtual Routers in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of Virtual Router resources.", + "schema": { + "$ref": "#/definitions/VirtualRouterListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List all Virtual Routers for a given subscription": { + "$ref": "./examples/VirtualRouterListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualRouters/{virtualRouterName}/peerings/{peeringName}": { + "delete": { + "tags": [ + "VirtualRouterPeerings" + ], + "operationId": "VirtualRouterPeerings_Delete", + "description": "Deletes the specified peering from a Virtual Router.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualRouterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Delete VirtualRouterPeering": { + "$ref": "./examples/VirtualRouterPeeringDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "VirtualRouterPeerings" + ], + "operationId": "VirtualRouterPeerings_Get", + "description": "Gets the specified Virtual Router Peering.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualRouterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router Peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a Virtual Router Peering resource.", + "schema": { + "$ref": "#/definitions/VirtualRouterPeering" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Get Virtual Router Peering": { + "$ref": "./examples/VirtualRouterPeeringGet.json" + } + } + }, + "put": { + "tags": [ + "VirtualRouterPeerings" + ], + "operationId": "VirtualRouterPeerings_CreateOrUpdate", + "description": "Creates or updates the specified Virtual Router Peering.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualRouterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router Peering." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualRouterPeering" + }, + "description": "Parameters supplied to the create or update Virtual Router Peering operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Request received successfully. The operation returns the resulting Virtual Router Peering resource.", + "schema": { + "$ref": "#/definitions/VirtualRouterPeering" + } + }, + "200": { + "description": "Request successful. The operation returns the resulting Virtual Router Peering resource.", + "schema": { + "$ref": "#/definitions/VirtualRouterPeering" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Create Virtual Router Peering": { + "$ref": "./examples/VirtualRouterPeeringPut.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualRouters/{virtualRouterName}/peerings": { + "get": { + "tags": [ + "VirtualRouterPeerings" + ], + "operationId": "VirtualRouterPeerings_List", + "description": "Lists all Virtual Router Peerings in a Virtual Router resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualRouterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of Virtual Router Peering resources.", + "schema": { + "$ref": "#/definitions/VirtualRouterPeeringListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List all Virtual Router Peerings for a given Virtual Router": { + "$ref": "./examples/VirtualRouterPeeringList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "VirtualRouter": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualRouterPropertiesFormat", + "description": "Properties of the Virtual Router." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "VirtualRouter Resource." + }, + "VirtualRouterPropertiesFormat": { + "properties": { + "virtualRouterAsn": { + "type": "integer", + "readOnly": false, + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "description": "VirtualRouter ASN." + }, + "virtualRouterIps": { + "type": "array", + "readOnly": false, + "description": "VirtualRouter IPs.", + "items": { + "type": "string" + } + }, + "hostedSubnet": { + "readOnly": false, + "$ref": "./network.json#/definitions/SubResource", + "description": "The Subnet on which VirtualRouter is hosted." + }, + "hostedGateway": { + "readOnly": false, + "$ref": "./network.json#/definitions/SubResource", + "description": "The Gateway on which VirtualRouter is hosted." + }, + "peerings": { + "type": "array", + "readOnly": true, + "description": "List of references to VirtualRouterPeerings.", + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + }, + "provisioningState": { + "description": "The provisioning state of the resource.", + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState" + } + }, + "description": "Virtual Router definition." + }, + "VirtualRouterPeering": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualRouterPeeringProperties", + "description": "The properties of the Virtual Router Peering." + }, + "name": { + "type": "string", + "description": "Name of the virtual router peering that is unique within a virtual router." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Peering type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Virtual Router Peering resource." + }, + "VirtualRouterPeeringProperties": { + "properties": { + "peerAsn": { + "type": "integer", + "readOnly": false, + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "description": "Peer ASN." + }, + "peerIp": { + "type": "string", + "readOnly": false, + "description": "Peer IP." + }, + "provisioningState": { + "description": "The provisioning state of the resource.", + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState" + } + }, + "description": "Properties of the rule group." + }, + "VirtualRouterListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualRouter" + }, + "description": "List of Virtual Routers." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListVirtualRouters API service call." + }, + "VirtualRouterPeeringListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualRouterPeering" + }, + "description": "List of VirtualRouterPeerings in a VirtualRouter." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListVirtualRouterPeerings API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/virtualWan.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/virtualWan.json new file mode 100644 index 000000000000..dda5ddbef8d9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/virtualWan.json @@ -0,0 +1,7913 @@ +{ + "swagger": "2.0", + "info": { + "title": "VirtualWANAsAServiceManagementClient", + "description": "REST API for Azure VirtualWAN As a Service.", + "version": "2021-02-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{VirtualWANName}": { + "get": { + "operationId": "VirtualWans_Get", + "x-ms-examples": { + "VirtualWANGet": { + "$ref": "./examples/VirtualWANGet.json" + } + }, + "description": "Retrieves the details of a VirtualWAN.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualWan." + }, + { + "name": "VirtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN being retrieved." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualWAN retrieved.", + "schema": { + "$ref": "#/definitions/VirtualWAN" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "VirtualWans_CreateOrUpdate", + "x-ms-examples": { + "VirtualWANCreate": { + "$ref": "./examples/VirtualWANPut.json" + } + }, + "description": "Creates a VirtualWAN resource if it doesn't exist else updates the existing VirtualWAN.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualWan." + }, + { + "name": "VirtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN being created or updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "WANParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualWAN" + }, + "description": "Parameters supplied to create or update VirtualWAN." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualWAN created or updated.", + "schema": { + "$ref": "#/definitions/VirtualWAN" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting VirtualWAN resource.", + "schema": { + "$ref": "#/definitions/VirtualWAN" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "VirtualWANs" + ], + "operationId": "VirtualWans_UpdateTags", + "x-ms-examples": { + "VirtualWANUpdate": { + "$ref": "./examples/VirtualWANUpdateTags.json" + } + }, + "description": "Updates a VirtualWAN tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualWan." + }, + { + "name": "VirtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN being updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "WANParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to Update VirtualWAN tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualWAN updated.", + "schema": { + "$ref": "#/definitions/VirtualWAN" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "operationId": "VirtualWans_Delete", + "x-ms-examples": { + "VirtualWANDelete": { + "$ref": "./examples/VirtualWANDelete.json" + } + }, + "description": "Deletes a VirtualWAN.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualWan." + }, + { + "name": "VirtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN being deleted." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. VirtualWAN deleted." + }, + "202": { + "description": "Request received successfully. VirtualWAN deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No VirtualWANs exist by the name provided." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans": { + "get": { + "operationId": "VirtualWans_ListByResourceGroup", + "x-ms-examples": { + "VirtualWANListByResourceGroup": { + "$ref": "./examples/VirtualWANListByResourceGroup.json" + } + }, + "description": "Lists all the VirtualWANs in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualWan." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VirtualWANs in the resource group.", + "schema": { + "$ref": "#/definitions/ListVirtualWANsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/virtualWans": { + "get": { + "operationId": "VirtualWans_List", + "x-ms-examples": { + "VirtualWANList": { + "$ref": "./examples/VirtualWANList.json" + } + }, + "description": "Lists all the VirtualWANs in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VirtualWANs in the subscription.", + "schema": { + "$ref": "#/definitions/ListVirtualWANsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnSites/{vpnSiteName}": { + "get": { + "operationId": "VpnSites_Get", + "x-ms-examples": { + "VpnSiteGet": { + "$ref": "./examples/VpnSiteGet.json" + } + }, + "description": "Retrieves the details of a VPN site.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnSite." + }, + { + "name": "vpnSiteName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnSite being retrieved." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VpnSite retrieved.", + "schema": { + "$ref": "#/definitions/VpnSite" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "VpnSites_CreateOrUpdate", + "x-ms-examples": { + "VpnSiteCreate": { + "$ref": "./examples/VpnSitePut.json" + } + }, + "description": "Creates a VpnSite resource if it doesn't exist else updates the existing VpnSite.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnSite." + }, + { + "name": "vpnSiteName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnSite being created or updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "VpnSiteParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnSite" + }, + "description": "Parameters supplied to create or update VpnSite." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VpnSite created or updated.", + "schema": { + "$ref": "#/definitions/VpnSite" + } + }, + "201": { + "description": "Request received successfully. Returns the details of the VpnSite created or updated.", + "schema": { + "$ref": "#/definitions/VpnSite" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "VpnSites" + ], + "operationId": "VpnSites_UpdateTags", + "x-ms-examples": { + "VpnSiteUpdate": { + "$ref": "./examples/VpnSiteUpdateTags.json" + } + }, + "description": "Updates VpnSite tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnSite." + }, + { + "name": "vpnSiteName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnSite being updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "VpnSiteParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update VpnSite tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VpnSite updated.", + "schema": { + "$ref": "#/definitions/VpnSite" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "operationId": "VpnSites_Delete", + "x-ms-examples": { + "VpnSiteDelete": { + "$ref": "./examples/VpnSiteDelete.json" + } + }, + "description": "Deletes a VpnSite.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnSite." + }, + { + "name": "vpnSiteName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnSite being deleted." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. VpnSite deleted." + }, + "202": { + "description": "Request received successfully. VpnSite deletion is in progress." + }, + "204": { + "description": "No VpnSites exist by the name provided." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnSites": { + "get": { + "operationId": "VpnSites_ListByResourceGroup", + "x-ms-examples": { + "VpnSiteListByResourceGroup": { + "$ref": "./examples/VpnSiteListByResourceGroup.json" + } + }, + "description": "Lists all the vpnSites in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnSite." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the vpnSites in the resource group.", + "schema": { + "$ref": "#/definitions/ListVpnSitesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnSites/{vpnSiteName}/vpnSiteLinks/{vpnSiteLinkName}": { + "get": { + "operationId": "VpnSiteLinks_Get", + "x-ms-examples": { + "VpnSiteGet": { + "$ref": "./examples/VpnSiteLinkGet.json" + } + }, + "description": "Retrieves the details of a VPN site link.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnSite." + }, + { + "name": "vpnSiteName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnSite." + }, + { + "name": "vpnSiteLinkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnSiteLink being retrieved." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VpnSiteLink retrieved.", + "schema": { + "$ref": "#/definitions/VpnSiteLink" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnSites/{vpnSiteName}/vpnSiteLinks": { + "get": { + "operationId": "VpnSiteLinks_ListByVpnSite", + "x-ms-examples": { + "VpnSiteLinkListByVpnSite": { + "$ref": "./examples/VpnSiteLinkListByVpnSite.json" + } + }, + "description": "Lists all the vpnSiteLinks in a resource group for a vpn site.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnSite." + }, + { + "name": "vpnSiteName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnSite." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the vpnSites in the resource group.", + "schema": { + "$ref": "#/definitions/ListVpnSiteLinksResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/vpnSites": { + "get": { + "operationId": "VpnSites_List", + "x-ms-examples": { + "VpnSiteList": { + "$ref": "./examples/VpnSiteList.json" + } + }, + "description": "Lists all the VpnSites in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VpnSites in the subscription.", + "schema": { + "$ref": "#/definitions/ListVpnSitesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{virtualWANName}/vpnConfiguration": { + "post": { + "operationId": "VpnSitesConfiguration_Download", + "x-ms-examples": { + "VpnSitesConfigurationDownload": { + "$ref": "./examples/VpnSitesConfigurationDownload.json" + } + }, + "description": "Gives the sas-url to download the configurations for vpn-sites in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name." + }, + { + "name": "virtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN for which configuration of all vpn-sites is needed." + }, + { + "name": "request", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GetVpnSitesConfigurationRequest" + }, + "description": "Parameters supplied to download vpn-sites configuration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Follow the location header for sas-url to output blob." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously. Follow the location header for sas-url to output blob." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{virtualWANName}/supportedSecurityProviders": { + "get": { + "operationId": "SupportedSecurityProviders", + "x-ms-examples": { + "supportedSecurityProviders": { + "$ref": "./examples/VirtualWanSupportedSecurityProviders.json" + } + }, + "description": "Gives the supported security providers for the virtual wan.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name." + }, + { + "name": "virtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN for which supported security providers are needed." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the object containing supported security providers.", + "schema": { + "$ref": "#/definitions/VirtualWanSecurityProviders" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnServerConfigurations/{vpnServerConfigurationName}": { + "get": { + "operationId": "VpnServerConfigurations_Get", + "x-ms-examples": { + "VpnServerConfigurationGet": { + "$ref": "./examples/VpnServerConfigurationGet.json" + } + }, + "description": "Retrieves the details of a VpnServerConfiguration.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnServerConfiguration." + }, + { + "name": "vpnServerConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnServerConfiguration being retrieved." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VpnServerConfiguration retrieved.", + "schema": { + "$ref": "#/definitions/VpnServerConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "VpnServerConfigurations_CreateOrUpdate", + "x-ms-examples": { + "VpnServerConfigurationCreate": { + "$ref": "./examples/VpnServerConfigurationPut.json" + } + }, + "description": "Creates a VpnServerConfiguration resource if it doesn't exist else updates the existing VpnServerConfiguration.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnServerConfiguration." + }, + { + "name": "vpnServerConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnServerConfiguration being created or updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "VpnServerConfigurationParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnServerConfiguration" + }, + "description": "Parameters supplied to create or update VpnServerConfiguration." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VpnServerConfiguration created or updated.", + "schema": { + "$ref": "#/definitions/VpnServerConfiguration" + } + }, + "201": { + "description": "Request received successfully. Returns the details of the VpnServerConfiguration created or updated.", + "schema": { + "$ref": "#/definitions/VpnServerConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "VpnServerConfigurations" + ], + "operationId": "VpnServerConfigurations_UpdateTags", + "x-ms-examples": { + "VpnServerConfigurationUpdate": { + "$ref": "./examples/VpnServerConfigurationUpdateTags.json" + } + }, + "description": "Updates VpnServerConfiguration tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnServerConfiguration." + }, + { + "name": "vpnServerConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnServerConfiguration being updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "VpnServerConfigurationParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update VpnServerConfiguration tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VpnServerConfiguration updated.", + "schema": { + "$ref": "#/definitions/VpnServerConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "operationId": "VpnServerConfigurations_Delete", + "x-ms-examples": { + "VpnServerConfigurationDelete": { + "$ref": "./examples/VpnServerConfigurationDelete.json" + } + }, + "description": "Deletes a VpnServerConfiguration.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnServerConfiguration." + }, + { + "name": "vpnServerConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnServerConfiguration being deleted." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. VpnServerConfiguration deleted." + }, + "202": { + "description": "Request received successfully. VpnServerConfiguration deletion is in progress." + }, + "204": { + "description": "No VpnServerConfigurations exist by the name provided." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnServerConfigurations": { + "get": { + "operationId": "VpnServerConfigurations_ListByResourceGroup", + "x-ms-examples": { + "VpnServerConfigurationListByResourceGroup": { + "$ref": "./examples/VpnServerConfigurationListByResourceGroup.json" + } + }, + "description": "Lists all the vpnServerConfigurations in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnServerConfiguration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the vpnServerConfigurations in the resource group.", + "schema": { + "$ref": "#/definitions/ListVpnServerConfigurationsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/vpnServerConfigurations": { + "get": { + "operationId": "VpnServerConfigurations_List", + "x-ms-examples": { + "VpnServerConfigurationList": { + "$ref": "./examples/VpnServerConfigurationList.json" + } + }, + "description": "Lists all the VpnServerConfigurations in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VpnServerConfigurations in the subscription.", + "schema": { + "$ref": "#/definitions/ListVpnServerConfigurationsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}": { + "get": { + "operationId": "VirtualHubs_Get", + "x-ms-examples": { + "VirtualHubGet": { + "$ref": "./examples/VirtualHubGet.json" + } + }, + "description": "Retrieves the details of a VirtualHub.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualHub retrieved.", + "schema": { + "$ref": "#/definitions/VirtualHub" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "VirtualHubs_CreateOrUpdate", + "x-ms-examples": { + "VirtualHubPut": { + "$ref": "./examples/VirtualHubPut.json" + } + }, + "description": "Creates a VirtualHub resource if it doesn't exist else updates the existing VirtualHub.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "virtualHubParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualHub" + }, + "description": "Parameters supplied to create or update VirtualHub." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualHub created or updated.", + "schema": { + "$ref": "#/definitions/VirtualHub" + } + }, + "201": { + "description": "Request received successfully. Returns the details of the VirtualHub created or updated.", + "schema": { + "$ref": "#/definitions/VirtualHub" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "VirtualWANs" + ], + "operationId": "VirtualHubs_UpdateTags", + "x-ms-examples": { + "VirtualHubUpdate": { + "$ref": "./examples/VirtualHubUpdateTags.json" + } + }, + "description": "Updates VirtualHub tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "virtualHubParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update VirtualHub tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualHub updated.", + "schema": { + "$ref": "#/definitions/VirtualHub" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "operationId": "VirtualHubs_Delete", + "x-ms-examples": { + "VirtualHubDelete": { + "$ref": "./examples/VirtualHubDelete.json" + } + }, + "description": "Deletes a VirtualHub.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. VirtualHub deleted." + }, + "202": { + "description": "Request received successfully. VirtualHub deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No VirtualHubs exist by the name provided." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs": { + "get": { + "operationId": "VirtualHubs_ListByResourceGroup", + "x-ms-examples": { + "VirtualHubListByResourceGroup": { + "$ref": "./examples/VirtualHubListByResourceGroup.json" + } + }, + "description": "Lists all the VirtualHubs in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VirtualHubs in the resource group.", + "schema": { + "$ref": "#/definitions/ListVirtualHubsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/virtualHubs": { + "get": { + "operationId": "VirtualHubs_List", + "x-ms-examples": { + "VirtualHubList": { + "$ref": "./examples/VirtualHubList.json" + } + }, + "description": "Lists all the VirtualHubs in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VirtualHubs in the subscription.", + "schema": { + "$ref": "#/definitions/ListVirtualHubsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/hubVirtualNetworkConnections/{connectionName}": { + "put": { + "operationId": "HubVirtualNetworkConnections_CreateOrUpdate", + "x-ms-examples": { + "HubVirtualNetworkConnectionPut": { + "$ref": "./examples/HubVirtualNetworkConnectionPut.json" + } + }, + "description": "Creates a hub virtual network connection if it doesn't exist else updates the existing one.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the HubVirtualNetworkConnection." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the HubVirtualNetworkConnection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "hubVirtualNetworkConnectionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/HubVirtualNetworkConnection" + }, + "description": "Parameters supplied to create or update a hub virtual network connection." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the hub virtual network connection created or updated.", + "schema": { + "$ref": "#/definitions/HubVirtualNetworkConnection" + } + }, + "201": { + "description": "Request successful. Returns the details of the hub virtual network connection retrieved.", + "schema": { + "$ref": "#/definitions/HubVirtualNetworkConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "delete": { + "operationId": "HubVirtualNetworkConnections_Delete", + "x-ms-examples": { + "HubVirtualNetworkConnectionDelete": { + "$ref": "./examples/HubVirtualNetworkConnectionDelete.json" + } + }, + "description": "Deletes a HubVirtualNetworkConnection.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the HubVirtualNetworkConnection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. HubVirtualNetworkConnection deleted." + }, + "202": { + "description": "Request received successfully. HubVirtualNetworkConnection deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No HubVirtualNetworkConnection exist by the name provided." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "operationId": "HubVirtualNetworkConnections_Get", + "x-ms-examples": { + "HubVirtualNetworkConnectionGet": { + "$ref": "./examples/HubVirtualNetworkConnectionGet.json" + } + }, + "description": "Retrieves the details of a HubVirtualNetworkConnection.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vpn connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the HubVirtualNetworkConnection retrieved.", + "schema": { + "$ref": "#/definitions/HubVirtualNetworkConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/hubVirtualNetworkConnections": { + "get": { + "operationId": "HubVirtualNetworkConnections_List", + "x-ms-examples": { + "HubVirtualNetworkConnectionList": { + "$ref": "./examples/HubVirtualNetworkConnectionList.json" + } + }, + "description": "Retrieves the details of all HubVirtualNetworkConnections.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the HubVirtualNetworkConnections for the VirtualHub.", + "schema": { + "$ref": "#/definitions/ListHubVirtualNetworkConnectionsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}": { + "get": { + "operationId": "VpnGateways_Get", + "x-ms-examples": { + "VpnGatewayGet": { + "$ref": "./examples/VpnGatewayGet.json" + } + }, + "description": "Retrieves the details of a virtual wan vpn gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the virtual wan vpn gateway retrieved.", + "schema": { + "$ref": "#/definitions/VpnGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "VpnGateways_CreateOrUpdate", + "x-ms-examples": { + "VpnGatewayPut": { + "$ref": "./examples/VpnGatewayPut.json" + } + }, + "description": "Creates a virtual wan vpn gateway if it doesn't exist else updates the existing gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "vpnGatewayParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnGateway" + }, + "description": "Parameters supplied to create or Update a virtual wan vpn gateway." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the virtual wan vpn Gateway created or updated.", + "schema": { + "$ref": "#/definitions/VpnGateway" + } + }, + "201": { + "description": "Request successful. Returns the details of the virtual wan vpn gateway retrieved.", + "schema": { + "$ref": "#/definitions/VpnGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "VpnGateways" + ], + "operationId": "VpnGateways_UpdateTags", + "x-ms-examples": { + "VpnGatewayUpdate": { + "$ref": "./examples/VpnGatewayUpdateTags.json" + } + }, + "description": "Updates virtual wan vpn gateway tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "vpnGatewayParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update a virtual wan vpn gateway tags." + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Request successful. Returns the details of the updated gateway.", + "schema": { + "$ref": "#/definitions/VpnGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "delete": { + "operationId": "VpnGateways_Delete", + "x-ms-examples": { + "VpnGatewayDelete": { + "$ref": "./examples/VpnGatewayDelete.json" + } + }, + "description": "Deletes a virtual wan vpn gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Vpn Gateway deleted." + }, + "202": { + "description": "Request received successfully. Vpn Gateway deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No vpn gateways exist by the name provided." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/reset": { + "post": { + "tags": [ + "VpnGateways" + ], + "operationId": "VpnGateways_Reset", + "description": "Resets the primary of the vpn gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation reset the primary of the VpnGateway.", + "schema": { + "$ref": "#/definitions/VpnGateway" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ResetVpnGateway": { + "$ref": "./examples/VpnGatewayReset.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/startpacketcapture": { + "post": { + "tags": [ + "VpnGateways" + ], + "operationId": "VpnGateways_StartPacketCapture", + "description": "Starts packet capture on vpn gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "name": "parameters", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VpnGatewayPacketCaptureStartParameters" + }, + "description": "Vpn gateway packet capture parameters supplied to start packet capture on vpn gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation packet capture started on vpn gateway.", + "schema": { + "type": "string" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Start packet capture on vpn gateway without filter": { + "$ref": "./examples/VpnGatewayStartPacketCapture.json" + }, + "Start packet capture on vpn gateway with filter": { + "$ref": "./examples/VpnGatewayStartPacketCaptureFilterData.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/stoppacketcapture": { + "post": { + "tags": [ + "VpnGateways" + ], + "operationId": "VpnGateways_StopPacketCapture", + "description": "Stops packet capture on vpn gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "name": "parameters", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VpnGatewayPacketCaptureStopParameters" + }, + "description": "Vpn gateway packet capture parameters supplied to stop packet capture on vpn gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation packet capture stopped on vpn gateway.", + "schema": { + "type": "string" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Stop packet capture on vpn gateway": { + "$ref": "./examples/VpnGatewayStopPacketCapture.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/vpnConnections/{connectionName}/vpnLinkConnections/{linkConnectionName}/resetconnection": { + "post": { + "tags": [ + "vpnLinkConnections" + ], + "operationId": "VpnLinkConnections_ResetConnection", + "description": "Resets the VpnLink connection specified.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vpn connection." + }, + { + "name": "linkConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vpn link connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation ResetConnection will complete asynchronously." + }, + "default": { + "description": "The operation ResetConnection could not be completed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ResetVpnLinkConnection": { + "$ref": "./examples/VpnSiteLinkConnectionReset.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways": { + "get": { + "operationId": "VpnGateways_ListByResourceGroup", + "x-ms-examples": { + "VpnGatewayListByResourceGroup": { + "$ref": "./examples/VpnGatewayListByResourceGroup.json" + } + }, + "description": "Lists all the VpnGateways in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VpnGateways in the resource group.", + "schema": { + "$ref": "#/definitions/ListVpnGatewaysResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/vpnGateways": { + "get": { + "operationId": "VpnGateways_List", + "x-ms-examples": { + "VpnGatewayListBySubscription": { + "$ref": "./examples/VpnGatewayList.json" + } + }, + "description": "Lists all the VpnGateways in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VpnGateways in the subscription.", + "schema": { + "$ref": "#/definitions/ListVpnGatewaysResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/vpnConnections/{connectionName}": { + "get": { + "operationId": "VpnConnections_Get", + "x-ms-examples": { + "VpnConnectionGet": { + "$ref": "./examples/VpnConnectionGet.json" + } + }, + "description": "Retrieves the details of a vpn connection.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vpn connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the vpn connection.", + "schema": { + "$ref": "#/definitions/VpnConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "VpnConnections_CreateOrUpdate", + "x-ms-examples": { + "VpnConnectionPut": { + "$ref": "./examples/VpnConnectionPut.json" + } + }, + "description": "Creates a vpn connection to a scalable vpn gateway if it doesn't exist else updates the existing connection.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "VpnConnectionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnConnection" + }, + "description": "Parameters supplied to create or Update a VPN Connection." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the vpn connection created or updated.", + "schema": { + "$ref": "#/definitions/VpnConnection" + } + }, + "201": { + "description": "Request successful. Returns the details of the vpn connection created or updated.", + "schema": { + "$ref": "#/definitions/VpnConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "delete": { + "operationId": "VpnConnections_Delete", + "x-ms-examples": { + "VpnConnectionDelete": { + "$ref": "./examples/VpnConnectionDelete.json" + } + }, + "description": "Deletes a vpn connection.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Vpn Connection deleted." + }, + "202": { + "description": "Request received successfully. Vpn Connection deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No vpn connections exist by the name provided." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/vpnConnections/{connectionName}/vpnLinkConnections/{linkConnectionName}": { + "get": { + "operationId": "VpnSiteLinkConnections_Get", + "x-ms-examples": { + "VpnSiteLinkConnectionGet": { + "$ref": "./examples/VpnSiteLinkConnectionGet.json" + } + }, + "description": "Retrieves the details of a vpn site link connection.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vpn connection." + }, + { + "name": "linkConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vpn connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the vpn connection.", + "schema": { + "$ref": "#/definitions/VpnSiteLinkConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/vpnConnections/{connectionName}/vpnLinkConnections/{linkConnectionName}/getikesas": { + "post": { + "operationId": "VpnLinkConnections_GetIkeSas", + "x-ms-examples": { + "GetVpnLinkConnectionIkeSa": { + "$ref": "./examples/VpnSiteLinkConnectionGetIkeSas.json" + } + }, + "description": "Lists IKE Security Associations for Vpn Site Link Connection in the specified resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vpn connection." + }, + { + "name": "linkConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vpn link connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation GetIkeSas will complete asynchronously." + }, + "200": { + "description": "Request successful. The operation getikesas completed on vpn site link connection.", + "schema": { + "type": "string" + } + }, + "default": { + "description": "The operation GetIkeSas could not be completed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/vpnConnections/{vpnConnectionName}/startpacketcapture": { + "post": { + "operationId": "VpnConnections_StartPacketCapture", + "description": "Starts packet capture on Vpn connection in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "name": "vpnConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vpn connection." + }, + { + "name": "parameters", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VpnConnectionPacketCaptureStartParameters" + }, + "description": "Vpn Connection packet capture parameters supplied to start packet capture on gateway connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Request successful. The operation packet capture started on vpn connection.", + "schema": { + "type": "string" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Start packet capture on vpn connection without filter": { + "$ref": "./examples/VpnConnectionStartPacketCapture.json" + }, + "Start packet capture on vpn connection with filter": { + "$ref": "./examples/VpnConnectionStartPacketCaptureFilterData.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/vpnConnections/{vpnConnectionName}/stoppacketcapture": { + "post": { + "operationId": "VpnConnections_StopPacketCapture", + "description": "Stops packet capture on Vpn connection in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "name": "vpnConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vpn connection." + }, + { + "name": "parameters", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VpnConnectionPacketCaptureStopParameters" + }, + "description": "Vpn Connection packet capture parameters supplied to stop packet capture on gateway connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Request successful. The operation packet capture stopped on vpn connection.", + "schema": { + "type": "string" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Start packet capture on vpn connection without filter": { + "$ref": "./examples/VpnConnectionStopPacketCapture.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/vpnConnections": { + "get": { + "operationId": "VpnConnections_ListByVpnGateway", + "x-ms-examples": { + "VpnConnectionList": { + "$ref": "./examples/VpnConnectionList.json" + } + }, + "description": "Retrieves all vpn connections for a particular virtual wan vpn gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all Vpn connections for a virtual wan vpn gateway.", + "schema": { + "$ref": "#/definitions/ListVpnConnectionsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/vpnConnections/{connectionName}/vpnLinkConnections": { + "get": { + "operationId": "VpnLinkConnections_ListByVpnConnection", + "x-ms-examples": { + "VpnSiteLinkConnectionList": { + "$ref": "./examples/VpnSiteLinkConnectionList.json" + } + }, + "description": "Retrieves all vpn site link connections for a particular virtual wan vpn gateway vpn connection.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the vpn gateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vpn connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all Vpn connections for a virtual wan vpn gateway.", + "schema": { + "$ref": "#/definitions/ListVpnSiteLinkConnectionsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/natRules/{natRuleName}": { + "get": { + "operationId": "NatRules_Get", + "x-ms-examples": { + "NatRuleGet": { + "$ref": "./examples/NatRuleGet.json" + } + }, + "description": "Retrieves the details of a nat ruleGet.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "name": "natRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the nat rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the nat rule.", + "schema": { + "$ref": "#/definitions/VpnGatewayNatRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "NatRules_CreateOrUpdate", + "x-ms-examples": { + "NatRulePut": { + "$ref": "./examples/NatRulePut.json" + } + }, + "description": "Creates a nat rule to a scalable vpn gateway if it doesn't exist else updates the existing nat rules.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "name": "natRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the nat rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "NatRuleParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnGatewayNatRule" + }, + "description": "Parameters supplied to create or Update a Nat Rule." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the nat rule created or updated.", + "schema": { + "$ref": "#/definitions/VpnGatewayNatRule" + } + }, + "201": { + "description": "Request successful. Returns the details of the nat rule created or updated.", + "schema": { + "$ref": "#/definitions/VpnGatewayNatRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "delete": { + "operationId": "NatRules_Delete", + "x-ms-examples": { + "NatRuleDelete": { + "$ref": "./examples/NatRuleDelete.json" + } + }, + "description": "Deletes a nat rule.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "name": "natRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the nat rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Nat Rule deleted." + }, + "202": { + "description": "Request received successfully. Nat Rule deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No nat rules exist by the name provided." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/natRules": { + "get": { + "operationId": "NatRules_ListByVpnGateway", + "x-ms-examples": { + "NatRuleList": { + "$ref": "./examples/NatRuleList.json" + } + }, + "description": "Retrieves all nat rules for a particular virtual wan vpn gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all Nat rules for a virtual wan vpn gateway.", + "schema": { + "$ref": "#/definitions/ListVpnGatewayNatRulesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways/{gatewayName}": { + "get": { + "operationId": "P2sVpnGateways_Get", + "x-ms-examples": { + "P2SVpnGatewayGet": { + "$ref": "./examples/P2SVpnGatewayGet.json" + } + }, + "description": "Retrieves the details of a virtual wan p2s vpn gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the P2SVpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the virtual wan p2s vpn gateway retrieved.", + "schema": { + "$ref": "#/definitions/P2SVpnGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "P2sVpnGateways_CreateOrUpdate", + "x-ms-examples": { + "P2SVpnGatewayPut": { + "$ref": "./examples/P2SVpnGatewayPut.json" + } + }, + "description": "Creates a virtual wan p2s vpn gateway if it doesn't exist else updates the existing gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the P2SVpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "p2SVpnGatewayParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/P2SVpnGateway" + }, + "description": "Parameters supplied to create or Update a virtual wan p2s vpn gateway." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the virtual wan p2s vpn Gateway created or updated.", + "schema": { + "$ref": "#/definitions/P2SVpnGateway" + } + }, + "201": { + "description": "Request successful. Returns the details of the virtual wan p2s vpn gateway retrieved.", + "schema": { + "$ref": "#/definitions/P2SVpnGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "P2SVpnGateways" + ], + "operationId": "P2sVpnGateways_UpdateTags", + "x-ms-examples": { + "P2SVpnGatewayUpdate": { + "$ref": "./examples/P2SVpnGatewayUpdateTags.json" + } + }, + "description": "Updates virtual wan p2s vpn gateway tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the P2SVpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "p2SVpnGatewayParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update a virtual wan p2s vpn gateway tags." + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Request successful. Returns the details of the updated gateway.", + "schema": { + "$ref": "#/definitions/P2SVpnGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "delete": { + "operationId": "P2sVpnGateways_Delete", + "x-ms-examples": { + "P2SVpnGatewayDelete": { + "$ref": "./examples/P2SVpnGatewayDelete.json" + } + }, + "description": "Deletes a virtual wan p2s vpn gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the P2SVpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. P2SVpnGateway deleted." + }, + "202": { + "description": "Request received successfully. P2SVpnGateway deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No p2s vpn gateways exist by the name provided." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways": { + "get": { + "operationId": "P2sVpnGateways_ListByResourceGroup", + "x-ms-examples": { + "P2SVpnGatewayListByResourceGroup": { + "$ref": "./examples/P2SVpnGatewayListByResourceGroup.json" + } + }, + "description": "Lists all the P2SVpnGateways in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the P2SVpnGateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the P2SVpnGateways in the resource group.", + "schema": { + "$ref": "#/definitions/ListP2SVpnGatewaysResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/p2svpnGateways": { + "get": { + "operationId": "P2sVpnGateways_List", + "x-ms-examples": { + "P2SVpnGatewayListBySubscription": { + "$ref": "./examples/P2SVpnGatewayList.json" + } + }, + "description": "Lists all the P2SVpnGateways in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the P2SVpnGateways in the subscription.", + "schema": { + "$ref": "#/definitions/ListP2SVpnGatewaysResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways/{gatewayName}/reset": { + "post": { + "tags": [ + "P2SVpnGateways" + ], + "operationId": "P2SVpnGateways_Reset", + "description": "Resets the primary of the p2s vpn gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the P2SVpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation reset the primary of the P2SVpnGateway.", + "schema": { + "$ref": "#/definitions/P2SVpnGateway" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ResetP2SVpnGateway": { + "$ref": "./examples/P2SVpnGatewayReset.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways/{gatewayName}/generatevpnprofile": { + "post": { + "tags": [ + "P2SVpnGateways" + ], + "operationId": "P2sVpnGateways_GenerateVpnProfile", + "description": "Generates VPN profile for P2S client of the P2SVpnGateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the P2SVpnGateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/P2SVpnProfileParameters" + }, + "description": "Parameters supplied to the generate P2SVpnGateway VPN client package operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "VPN profile package URL.", + "schema": { + "$ref": "#/definitions/VpnProfileResponse" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GenerateP2SVpnGatewayVPNProfile": { + "$ref": "./examples/P2SVpnGatewayGenerateVpnProfile.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways/{gatewayName}/getP2sVpnConnectionHealth": { + "post": { + "tags": [ + "P2SVpnGateways" + ], + "operationId": "P2sVpnGateways_GetP2sVpnConnectionHealth", + "description": "Gets the connection health of P2S clients of the virtual wan P2SVpnGateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the P2SVpnGateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "P2S Vpn Gateway with P2S connection health details.", + "schema": { + "$ref": "#/definitions/P2SVpnGateway" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "P2SVpnGatewayGetConnectionHealth": { + "$ref": "./examples/P2SVpnGatewayGetConnectionHealth.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways/{gatewayName}/getP2sVpnConnectionHealthDetailed": { + "post": { + "tags": [ + "P2SVpnGateways" + ], + "operationId": "P2sVpnGateways_GetP2sVpnConnectionHealthDetailed", + "description": "Gets the sas url to get the connection health detail of P2S clients of the virtual wan P2SVpnGateway in the specified resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the P2SVpnGateway." + }, + { + "name": "request", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/P2SVpnConnectionHealthRequest" + }, + "description": "Request parameters supplied to get p2s vpn connections detailed health." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "P2S connections detailed health report.", + "schema": { + "$ref": "#/definitions/P2SVpnConnectionHealth" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "P2SVpnGatewayGetConnectionHealthDetailed": { + "$ref": "./examples/P2SVpnGatewayGetConnectionHealthDetailed.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{virtualWANName}/vpnServerConfigurations": { + "post": { + "operationId": "VpnServerConfigurationsAssociatedWithVirtualWan_List", + "x-ms-examples": { + "GetVirtualWanVpnServerConfigurations": { + "$ref": "./examples/GetVirtualWanVpnServerConfigurations.json" + } + }, + "description": "Gives the list of VpnServerConfigurations associated with Virtual Wan in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name." + }, + { + "name": "virtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN whose associated VpnServerConfigurations is needed." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "List of associated VpnServerConfigurations list.", + "schema": { + "$ref": "#/definitions/VpnServerConfigurationsResponse" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously. Follow the location header for list of associated VpnServerConfigurations list." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{virtualWANName}/GenerateVpnProfile": { + "post": { + "operationId": "generatevirtualwanvpnserverconfigurationvpnprofile", + "x-ms-examples": { + "GenerateVirtualWanVpnServerConfigurationVpnProfile": { + "$ref": "./examples/GenerateVirtualWanVpnServerConfigurationVpnProfile.json" + } + }, + "description": "Generates a unique VPN profile for P2S clients for VirtualWan and associated VpnServerConfiguration combination in the specified resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name." + }, + { + "name": "virtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN whose associated VpnServerConfigurations is needed." + }, + { + "name": "vpnClientParams", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualWanVpnProfileParameters" + }, + "description": "Parameters supplied to the generate VirtualWan VPN profile generation operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "VPN profile package URL.", + "schema": { + "$ref": "#/definitions/VpnProfileResponse" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/routeTables/{routeTableName}": { + "get": { + "operationId": "VirtualHubRouteTableV2s_Get", + "x-ms-examples": { + "VirtualHubVirtualHubRouteTableV2Get": { + "$ref": "./examples/VirtualHubRouteTableV2Get.json" + } + }, + "description": "Retrieves the details of a VirtualHubRouteTableV2.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHubRouteTableV2." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHubRouteTableV2." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualHubRouteTableV2 retrieved.", + "schema": { + "$ref": "#/definitions/VirtualHubRouteTableV2" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + } + }, + "put": { + "operationId": "VirtualHubRouteTableV2s_CreateOrUpdate", + "x-ms-examples": { + "VirtualHubRouteTableV2Put": { + "$ref": "./examples/VirtualHubRouteTableV2Put.json" + } + }, + "description": "Creates a VirtualHubRouteTableV2 resource if it doesn't exist else updates the existing VirtualHubRouteTableV2.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHubRouteTableV2." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "virtualHubRouteTableV2Parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualHubRouteTableV2" + }, + "description": "Parameters supplied to create or update VirtualHubRouteTableV2." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualHubRouteTableV2 created or updated.", + "schema": { + "$ref": "#/definitions/VirtualHubRouteTableV2" + } + }, + "201": { + "description": "Request received successfully. Returns the details of the VirtualHubRouteTableV2 created or updated.", + "schema": { + "$ref": "#/definitions/VirtualHubRouteTableV2" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "delete": { + "operationId": "VirtualHubRouteTableV2s_Delete", + "x-ms-examples": { + "VirtualHubRouteTableV2Delete": { + "$ref": "./examples/VirtualHubRouteTableV2Delete.json" + } + }, + "description": "Deletes a VirtualHubRouteTableV2.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHubRouteTableV2." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHubRouteTableV2." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. VirtualHubRouteTableV2 deleted." + }, + "202": { + "description": "Request received successfully. VirtualHubRouteTableV2 deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No VirtualHubRouteTableV2s exist by the name provided." + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/routeTables": { + "get": { + "operationId": "VirtualHubRouteTableV2s_List", + "x-ms-examples": { + "VirtualHubRouteTableV2List": { + "$ref": "./examples/VirtualHubRouteTableV2List.json" + } + }, + "description": "Retrieves the details of all VirtualHubRouteTableV2s.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VirtualHubRouteTableV2s for the VirtualHub.", + "schema": { + "$ref": "#/definitions/ListVirtualHubRouteTableV2sResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways/{p2sVpnGatewayName}/disconnectP2sVpnConnections": { + "post": { + "tags": [ + "P2SVpnGateways" + ], + "operationId": "P2sVpnGateways_DisconnectP2sVpnConnections", + "description": "Disconnect P2S vpn connections of the virtual wan P2SVpnGateway in the specified resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "p2sVpnGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the P2S Vpn Gateway." + }, + { + "name": "request", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/P2SVpnConnectionRequest" + }, + "description": "The parameters are supplied to disconnect p2s vpn connections." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation disconnects the requested vpn connections." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Disconnect VpnConnections from P2sVpn Gateway": { + "$ref": "./examples/P2sVpnGatewaysDisconnectP2sVpnConnections.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/expressRouteGateways": { + "get": { + "tags": [ + "ExpressRouteGateways" + ], + "operationId": "ExpressRouteGateways_ListBySubscription", + "x-ms-examples": { + "ExpressRouteGatewayListBySubscription": { + "$ref": "./examples/ExpressRouteGatewayListBySubscription.json" + } + }, + "description": "Lists ExpressRoute gateways under a given subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful.", + "schema": { + "$ref": "#/definitions/ExpressRouteGatewayList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteGateways": { + "get": { + "tags": [ + "ExpressRouteGateways" + ], + "operationId": "ExpressRouteGateways_ListByResourceGroup", + "x-ms-examples": { + "ExpressRouteGatewayListByResourceGroup": { + "$ref": "./examples/ExpressRouteGatewayListByResourceGroup.json" + } + }, + "description": "Lists ExpressRoute gateways in a given resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Operation successful.", + "schema": { + "$ref": "#/definitions/ExpressRouteGatewayList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteGateways/{expressRouteGatewayName}": { + "put": { + "tags": [ + "ExpressRouteGateways" + ], + "operationId": "ExpressRouteGateways_CreateOrUpdate", + "x-ms-examples": { + "ExpressRouteGatewayCreate": { + "$ref": "./examples/ExpressRouteGatewayCreate.json" + } + }, + "description": "Creates or updates a ExpressRoute gateway in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "name": "putExpressRouteGatewayParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteGateway" + }, + "description": "Parameters required in an ExpressRoute gateway PUT operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRoute gateway resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteGateway" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ExpressRoute gateway resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "ExpressRouteGateways" + ], + "operationId": "ExpressRouteGateways_UpdateTags", + "x-ms-examples": { + "ExpressRouteGatewayUpdate": { + "$ref": "./examples/ExpressRouteGatewayUpdateTags.json" + } + }, + "description": "Updates express route gateway tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the ExpressRouteGateway." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "expressRouteGatewayParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update a virtual wan express route gateway tags." + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Request successful. Returns the details of the updated gateway.", + "schema": { + "$ref": "#/definitions/ExpressRouteGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "ExpressRouteGateways" + ], + "operationId": "ExpressRouteGateways_Get", + "x-ms-examples": { + "ExpressRouteGatewayGet": { + "$ref": "./examples/ExpressRouteGatewayGet.json" + } + }, + "description": "Fetches the details of a ExpressRoute gateway in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Operation succeeded. The operation returns the ExpressRoute gateway.", + "schema": { + "$ref": "#/definitions/ExpressRouteGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "ExpressRouteGateways" + ], + "operationId": "ExpressRouteGateways_Delete", + "x-ms-examples": { + "ExpressRouteGatewayDelete": { + "$ref": "./examples/ExpressRouteGatewayDelete.json" + } + }, + "description": "Deletes the specified ExpressRoute gateway in a resource group. An ExpressRoute gateway resource can only be deleted when there are no connection subresources.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteGateways/{expressRouteGatewayName}/expressRouteConnections/{connectionName}": { + "put": { + "tags": [ + "ExpressRouteConnections" + ], + "operationId": "ExpressRouteConnections_CreateOrUpdate", + "x-ms-examples": { + "ExpressRouteConnectionCreate": { + "$ref": "./examples/ExpressRouteConnectionCreate.json" + } + }, + "description": "Creates a connection between an ExpressRoute gateway and an ExpressRoute circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection subresource." + }, + { + "name": "putExpressRouteConnectionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteConnection" + }, + "description": "Parameters required in an ExpressRouteConnection PUT operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the ExpressRouteConnection.", + "schema": { + "$ref": "#/definitions/ExpressRouteConnection" + } + }, + "201": { + "description": "Create successful. The operation returns the ExpressRouteConnection.", + "schema": { + "$ref": "#/definitions/ExpressRouteConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "ExpressRouteConnections" + ], + "operationId": "ExpressRouteConnections_Get", + "x-ms-examples": { + "ExpressRouteConnectionGet": { + "$ref": "./examples/ExpressRouteConnectionGet.json" + } + }, + "description": "Gets the specified ExpressRouteConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the ExpressRouteConnection.", + "schema": { + "$ref": "#/definitions/ExpressRouteConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "ExpressRouteConnections" + ], + "operationId": "ExpressRouteConnections_Delete", + "x-ms-examples": { + "ExpressRouteConnectionDelete": { + "$ref": "./examples/ExpressRouteConnectionDelete.json" + } + }, + "description": "Deletes a connection to a ExpressRoute circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection subresource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted, and the operation will continue asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteGateways/{expressRouteGatewayName}/expressRouteConnections": { + "get": { + "tags": [ + "ExpressRouteConnections" + ], + "operationId": "ExpressRouteConnections_List", + "x-ms-examples": { + "ExpressRouteConnectionList": { + "$ref": "./examples/ExpressRouteConnectionList.json" + } + }, + "description": "Lists ExpressRouteConnections.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful.", + "schema": { + "$ref": "#/definitions/ExpressRouteConnectionList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/bgpConnections/{connectionName}": { + "get": { + "operationId": "VirtualHubBgpConnection_Get", + "x-ms-examples": { + "VirtualHubVirtualHubRouteTableV2Get": { + "$ref": "./examples/VirtualHubBgpConnectionGet.json" + } + }, + "description": "Retrieves the details of a Virtual Hub Bgp Connection.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the Bgp Connection retrieved.", + "schema": { + "$ref": "#/definitions/BgpConnection" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "VirtualHubBgpConnection_CreateOrUpdate", + "x-ms-examples": { + "VirtualHubRouteTableV2Put": { + "$ref": "./examples/VirtualHubBgpConnectionPut.json" + } + }, + "description": "Creates a VirtualHubBgpConnection resource if it doesn't exist else updates the existing VirtualHubBgpConnection.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/BgpConnection" + }, + "description": "Parameters of Bgp connection." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the BgpConnection created or updated.", + "schema": { + "$ref": "#/definitions/BgpConnection" + } + }, + "201": { + "description": "Request received successfully. Returns the details of the BgpConnection created or updated.", + "schema": { + "$ref": "#/definitions/BgpConnection" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "delete": { + "operationId": "VirtualHubBgpConnection_Delete", + "x-ms-examples": { + "VirtualHubRouteTableV2Delete": { + "$ref": "./examples/VirtualHubBgpConnectionDelete.json" + } + }, + "description": "Deletes a VirtualHubBgpConnection.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHubBgpConnection." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. VirtualHubBgpConnection deleted." + }, + "202": { + "description": "Request received successfully. VirtualHubBgpConnection deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No VirtualHubBgpConnection exist by the name provided." + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/bgpConnections": { + "get": { + "operationId": "VirtualHubBgpConnections_List", + "x-ms-examples": { + "VirtualHubRouteTableV2List": { + "$ref": "./examples/VirtualHubBgpConnectionList.json" + } + }, + "description": "Retrieves the details of all VirtualHubBgpConnections.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VirtualHubBgpConnections for the VirtualHub.", + "schema": { + "$ref": "#/definitions/ListVirtualHubBgpConnectionResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{hubName}/bgpConnections/{connectionName}/learnedRoutes": { + "post": { + "operationId": "VirtualHubBgpConnections_ListLearnedRoutes", + "description": "Retrieves a list of routes the virtual hub bgp connection has learned.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "hubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual hub." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual hub bgp connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "List of advertised BGP routes.", + "schema": { + "$ref": "#/definitions/PeerRouteList" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "VirtualRouterPeerListLearnedRoutes": { + "$ref": "./examples/VirtualRouterPeerListLearnedRoute.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{hubName}/bgpConnections/{connectionName}/advertisedRoutes": { + "post": { + "operationId": "VirtualHubBgpConnections_ListAdvertisedRoutes", + "description": "Retrieves a list of routes the virtual hub bgp connection is advertising to the specified peer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "hubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual hub." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual hub bgp connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "List of learned BGP routes.", + "schema": { + "$ref": "#/definitions/PeerRouteList" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "VirtualRouterPeerListAdvertisedRoutes": { + "$ref": "./examples/VirtualRouterPeerListAdvertisedRoute.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/ipConfigurations/{ipConfigName}": { + "get": { + "operationId": "VirtualHubIpConfiguration_Get", + "x-ms-examples": { + "VirtualHubVirtualHubRouteTableV2Get": { + "$ref": "./examples/VirtualHubIpConfigurationGet.json" + } + }, + "description": "Retrieves the details of a Virtual Hub Ip configuration.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "name": "ipConfigName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ipconfig." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the Bgp Connection retrieved.", + "schema": { + "$ref": "#/definitions/HubIpConfiguration" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "VirtualHubIpConfiguration_CreateOrUpdate", + "x-ms-examples": { + "VirtualHubIpConfigurationPut": { + "$ref": "./examples/VirtualHubIpConfigurationPut.json" + } + }, + "description": "Creates a VirtualHubIpConfiguration resource if it doesn't exist else updates the existing VirtualHubIpConfiguration.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "name": "ipConfigName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ipconfig." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/HubIpConfiguration" + }, + "description": "Hub Ip Configuration parameters." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the IpConfiguration created or updated.", + "schema": { + "$ref": "#/definitions/HubIpConfiguration" + } + }, + "201": { + "description": "Request received successfully. Returns the details of the IpConfiguration created or updated.", + "schema": { + "$ref": "#/definitions/HubIpConfiguration" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "delete": { + "operationId": "VirtualHubIpConfiguration_Delete", + "x-ms-examples": { + "VirtualHubIpConfigurationDelete": { + "$ref": "./examples/VirtualHubIpConfigurationDelete.json" + } + }, + "description": "Deletes a VirtualHubIpConfiguration.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHubBgpConnection." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "name": "ipConfigName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ipconfig." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. VirtualHubIpConfiguration deleted." + }, + "202": { + "description": "Request received successfully. VirtualHubIpConfiguration deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No VirtualHubIpConfiguration exist by the name provided." + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/ipConfigurations": { + "get": { + "operationId": "VirtualHubIpConfiguration_List", + "x-ms-examples": { + "VirtualHubRouteTableV2List": { + "$ref": "./examples/VirtualHubIpConfigurationList.json" + } + }, + "description": "Retrieves the details of all VirtualHubIpConfigurations.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VirtualHubIpConfigurations for the VirtualHub.", + "schema": { + "$ref": "#/definitions/ListVirtualHubIpConfigurationResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/hubRouteTables/{routeTableName}": { + "put": { + "operationId": "HubRouteTables_CreateOrUpdate", + "x-ms-examples": { + "RouteTablePut": { + "$ref": "./examples/HubRouteTablePut.json" + } + }, + "description": "Creates a RouteTable resource if it doesn't exist else updates the existing RouteTable.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the RouteTable." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "routeTableParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/HubRouteTable" + }, + "description": "Parameters supplied to create or update RouteTable." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the RouteTable created or updated.", + "schema": { + "$ref": "#/definitions/HubRouteTable" + } + }, + "201": { + "description": "Request received successfully. Returns the details of the RouteTable created or updated.", + "schema": { + "$ref": "#/definitions/HubRouteTable" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "operationId": "HubRouteTables_Get", + "x-ms-examples": { + "RouteTableGet": { + "$ref": "./examples/HubRouteTableGet.json" + } + }, + "description": "Retrieves the details of a RouteTable.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the RouteTable." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the RouteTable retrieved.", + "schema": { + "$ref": "#/definitions/HubRouteTable" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "operationId": "HubRouteTables_Delete", + "x-ms-examples": { + "RouteTableDelete": { + "$ref": "./examples/HubRouteTableDelete.json" + } + }, + "description": "Deletes a RouteTable.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the RouteTable." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the RouteTable." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. RouteTable deleted." + }, + "202": { + "description": "Request received successfully. RouteTable deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No RouteTables exist by the name provided." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/hubRouteTables": { + "get": { + "operationId": "HubRouteTables_List", + "x-ms-examples": { + "RouteTableList": { + "$ref": "./examples/HubRouteTableList.json" + } + }, + "description": "Retrieves the details of all RouteTables.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the RouteTables for the VirtualHub.", + "schema": { + "$ref": "#/definitions/ListHubRouteTablesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/effectiveRoutes": { + "post": { + "operationId": "VirtualHubs_GetEffectiveVirtualHubRoutes", + "x-ms-examples": { + "Effective Routes for the Virtual Hub": { + "$ref": "./examples/EffectiveRoutesListForVirtualHub.json" + }, + "Effective Routes for a Route Table resource": { + "$ref": "./examples/EffectiveRoutesListForRouteTable.json" + }, + "Effective Routes for a Connection resource": { + "$ref": "./examples/EffectiveRoutesListForConnection.json" + } + }, + "description": "Gets the effective routes configured for the Virtual Hub resource or the specified resource .", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "effectiveRoutesParameters", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/EffectiveRoutesParameters" + }, + "description": "Parameters supplied to get the effective routes for a specific resource." + } + ], + "responses": { + "200": { + "description": "Request successful. Follow the location header for the effective routes list." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + } + }, + "definitions": { + "VirtualWanProperties": { + "properties": { + "disableVpnEncryption": { + "type": "boolean", + "description": "Vpn encryption to be disabled or not." + }, + "virtualHubs": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "List of VirtualHubs in the VirtualWAN." + }, + "vpnSites": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "List of VpnSites in the VirtualWAN." + }, + "allowBranchToBranchTraffic": { + "type": "boolean", + "description": "True if branch to branch traffic is allowed." + }, + "allowVnetToVnetTraffic": { + "type": "boolean", + "description": "True if Vnet to Vnet traffic is allowed." + }, + "office365LocalBreakoutCategory": { + "description": "The office local breakout category.", + "$ref": "#/definitions/OfficeTrafficCategory" + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual WAN resource." + }, + "type": { + "type": "string", + "description": "The type of the VirtualWAN." + } + }, + "description": "Parameters for VirtualWAN." + }, + "VirtualWAN": { + "required": [ + "location" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualWanProperties", + "description": "Properties of the virtual WAN." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "VirtualWAN Resource." + }, + "ListVirtualWANsResult": { + "description": "Result of the request to list VirtualWANs. It contains a list of VirtualWANs and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualWAN" + }, + "description": "List of VirtualWANs." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnSiteProperties": { + "properties": { + "virtualWan": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The VirtualWAN to which the vpnSite belongs." + }, + "deviceProperties": { + "description": "The device properties.", + "$ref": "#/definitions/DeviceProperties" + }, + "ipAddress": { + "type": "string", + "description": "The ip-address for the vpn-site." + }, + "siteKey": { + "type": "string", + "description": "The key for vpn-site that can be used for connections." + }, + "addressSpace": { + "$ref": "./virtualNetwork.json#/definitions/AddressSpace", + "description": "The AddressSpace that contains an array of IP address ranges." + }, + "bgpProperties": { + "$ref": "./virtualNetworkGateway.json#/definitions/BgpSettings", + "description": "The set of bgp properties." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the VPN site resource." + }, + "isSecuritySite": { + "type": "boolean", + "description": "IsSecuritySite flag." + }, + "vpnSiteLinks": { + "type": "array", + "description": "List of all vpn site links.", + "items": { + "$ref": "#/definitions/VpnSiteLink" + } + }, + "o365Policy": { + "readOnly": false, + "description": "Office365 Policy.", + "$ref": "#/definitions/O365PolicyProperties" + } + }, + "description": "Parameters for VpnSite." + }, + "VpnSite": { + "required": [ + "location" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnSiteProperties", + "description": "Properties of the VPN site." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "VpnSite Resource." + }, + "ListVpnSitesResult": { + "description": "Result of the request to list VpnSites. It contains a list of VpnSites and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnSite" + }, + "description": "List of VpnSites." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnSiteLinkProperties": { + "properties": { + "linkProperties": { + "description": "The link provider properties.", + "$ref": "#/definitions/VpnLinkProviderProperties" + }, + "ipAddress": { + "type": "string", + "description": "The ip-address for the vpn-site-link." + }, + "fqdn": { + "type": "string", + "description": "FQDN of vpn-site-link." + }, + "bgpProperties": { + "$ref": "#/definitions/VpnLinkBgpSettings", + "description": "The set of bgp properties." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the VPN site link resource." + } + }, + "description": "Parameters for VpnSite." + }, + "VpnSiteLink": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnSiteLinkProperties", + "description": "Properties of the VPN site link." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "VpnSiteLink Resource." + }, + "ListVpnSiteLinksResult": { + "description": "Result of the request to list VpnSiteLinks. It contains a list of VpnSiteLinks and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnSiteLink" + }, + "description": "List of VpnSitesLinks." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "GetVpnSitesConfigurationRequest": { + "properties": { + "vpnSites": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of resource-ids of the vpn-sites for which config is to be downloaded." + }, + "outputBlobSasUrl": { + "type": "string", + "description": "The sas-url to download the configurations for vpn-sites." + } + }, + "required": [ + "outputBlobSasUrl" + ], + "description": "List of Vpn-Sites." + }, + "VirtualHubProperties": { + "properties": { + "virtualWan": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The VirtualWAN to which the VirtualHub belongs." + }, + "vpnGateway": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The VpnGateway associated with this VirtualHub." + }, + "p2SVpnGateway": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The P2SVpnGateway associated with this VirtualHub." + }, + "expressRouteGateway": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The expressRouteGateway associated with this VirtualHub." + }, + "azureFirewall": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The azureFirewall associated with this VirtualHub." + }, + "securityPartnerProvider": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The securityPartnerProvider associated with this VirtualHub." + }, + "addressPrefix": { + "type": "string", + "description": "Address-prefix for this VirtualHub." + }, + "routeTable": { + "$ref": "#/definitions/VirtualHubRouteTable", + "description": "The routeTable associated with this virtual hub." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual hub resource." + }, + "securityProviderName": { + "type": "string", + "description": "The Security Provider name." + }, + "virtualHubRouteTableV2s": { + "type": "array", + "description": "List of all virtual hub route table v2s associated with this VirtualHub.", + "items": { + "$ref": "#/definitions/VirtualHubRouteTableV2" + } + }, + "sku": { + "type": "string", + "description": "The sku of this VirtualHub." + }, + "routingState": { + "$ref": "#/definitions/RoutingState", + "description": "The routing state." + }, + "bgpConnections": { + "type": "array", + "readOnly": true, + "description": "List of references to Bgp Connections.", + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + }, + "ipConfigurations": { + "type": "array", + "readOnly": true, + "description": "List of references to IpConfigurations.", + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + }, + "virtualRouterAsn": { + "type": "integer", + "readOnly": false, + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "description": "VirtualRouter ASN." + }, + "virtualRouterIps": { + "type": "array", + "readOnly": false, + "description": "VirtualRouter IPs.", + "items": { + "type": "string" + } + }, + "allowBranchToBranchTraffic": { + "type": "boolean", + "readOnly": false, + "description": "Flag to control transit for VirtualRouter hub." + }, + "preferredRoutingGateway": { + "$ref": "#/definitions/PreferredRoutingGateway", + "description": "The preferred gateway to route on-prem traffic" + } + }, + "description": "Parameters for VirtualHub." + }, + "PreferredRoutingGateway": { + "type": "string", + "description": "The preferred routing gateway types", + "enum": [ + "ExpressRoute", + "VpnGateway", + "None" + ], + "x-ms-enum": { + "name": "PreferredRoutingGateway", + "modelAsString": true + } + }, + "RoutingState": { + "type": "string", + "description": "The current routing state of the VirtualHub.", + "readOnly": true, + "enum": [ + "None", + "Provisioned", + "Provisioning", + "Failed" + ], + "x-ms-enum": { + "name": "RoutingState", + "modelAsString": true + } + }, + "BgpConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/BgpConnectionProperties", + "description": "The properties of the Bgp connections." + }, + "name": { + "type": "string", + "description": "Name of the connection." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Connection type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Virtual Appliance Site resource." + }, + "BgpConnectionProperties": { + "properties": { + "peerAsn": { + "type": "integer", + "readOnly": false, + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "description": "Peer ASN." + }, + "peerIp": { + "type": "string", + "readOnly": false, + "description": "Peer IP." + }, + "provisioningState": { + "description": "The provisioning state of the resource.", + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState" + }, + "connectionState": { + "type": "string", + "description": "The current state of the VirtualHub to Peer.", + "readOnly": true, + "enum": [ + "Unknown", + "Connecting", + "Connected", + "NotConnected" + ], + "x-ms-enum": { + "name": "HubBgpConnectionStatus", + "modelAsString": true + } + } + }, + "description": "Properties of the bgp connection." + }, + "PeerRoute": { + "properties": { + "localAddress": { + "type": "string", + "readOnly": true, + "description": "The peer's local address." + }, + "network": { + "type": "string", + "readOnly": true, + "description": "The route's network prefix." + }, + "nextHop": { + "type": "string", + "readOnly": true, + "description": "The route's next hop." + }, + "sourcePeer": { + "type": "string", + "readOnly": true, + "description": "The peer this route was learned from." + }, + "origin": { + "type": "string", + "readOnly": true, + "description": "The source this route was learned from." + }, + "asPath": { + "type": "string", + "readOnly": true, + "description": "The route's AS path sequence." + }, + "weight": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "The route's weight." + } + }, + "description": "Peer routing details." + }, + "PeerRouteList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PeerRoute" + }, + "description": "List of peer routes." + } + }, + "description": "List of virtual router peer routes." + }, + "HubIpConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/HubIPConfigurationPropertiesFormat", + "description": "The properties of the Virtual Hub IPConfigurations." + }, + "name": { + "type": "string", + "description": "Name of the Ip Configuration." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Ipconfiguration type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IpConfigurations." + }, + "HubIPConfigurationPropertiesFormat": { + "properties": { + "privateIPAddress": { + "type": "string", + "description": "The private IP address of the IP configuration." + }, + "privateIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "The private IP address allocation method." + }, + "subnet": { + "$ref": "./virtualNetwork.json#/definitions/Subnet", + "description": "The reference to the subnet resource." + }, + "publicIPAddress": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddress", + "description": "The reference to the public IP resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the IP configuration resource." + } + }, + "description": "Properties of IP configuration." + }, + "VirtualHubRouteTable": { + "properties": { + "routes": { + "type": "array", + "description": "List of all routes.", + "items": { + "$ref": "#/definitions/VirtualHubRoute" + } + } + }, + "description": "VirtualHub route table." + }, + "VirtualHubRoute": { + "properties": { + "addressPrefixes": { + "type": "array", + "description": "List of all addressPrefixes.", + "items": { + "type": "string" + } + }, + "nextHopIpAddress": { + "type": "string", + "description": "NextHop ip address." + } + }, + "description": "VirtualHub route." + }, + "VirtualHub": { + "required": [ + "location" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualHubProperties", + "description": "Properties of the virtual hub." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "VirtualHub Resource." + }, + "ListVirtualHubsResult": { + "description": "Result of the request to list VirtualHubs. It contains a list of VirtualHubs and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualHub" + }, + "description": "List of VirtualHubs." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnGatewayProperties": { + "properties": { + "virtualHub": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The VirtualHub to which the gateway belongs." + }, + "connections": { + "type": "array", + "description": "List of all vpn connections to the gateway.", + "items": { + "$ref": "#/definitions/VpnConnection" + } + }, + "bgpSettings": { + "$ref": "./virtualNetworkGateway.json#/definitions/BgpSettings", + "description": "Local network gateway's BGP speaker settings." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the VPN gateway resource." + }, + "vpnGatewayScaleUnit": { + "type": "integer", + "format": "int32", + "description": "The scale unit for this vpn gateway." + }, + "ipConfigurations": { + "type": "array", + "readOnly": true, + "description": "List of all IPs configured on the gateway.", + "items": { + "$ref": "#/definitions/VpnGatewayIpConfiguration" + } + }, + "isRoutingPreferenceInternet": { + "type": "boolean", + "description": "Enable Routing Preference property for the Public IP Interface of the VpnGateway." + }, + "natRules": { + "type": "array", + "description": "List of all the nat Rules associated with the gateway.", + "items": { + "$ref": "#/definitions/VpnGatewayNatRule" + } + } + }, + "description": "Parameters for VpnGateway." + }, + "VpnGateway": { + "required": [ + "location" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnGatewayProperties", + "description": "Properties of the VPN gateway." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "VpnGateway Resource." + }, + "VpnGatewayIpConfiguration": { + "description": "IP Configuration of a VPN Gateway Resource.", + "properties": { + "id": { + "type": "string", + "description": "The identifier of the IP configuration for a VPN Gateway." + }, + "publicIpAddress": { + "type": "string", + "description": "The public IP address of this IP configuration." + }, + "privateIpAddress": { + "type": "string", + "description": "The private IP address of this IP configuration." + } + } + }, + "ListVpnGatewaysResult": { + "description": "Result of the request to list VpnGateways. It contains a list of VpnGateways and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnGateway" + }, + "description": "List of VpnGateways." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnNatRuleMapping": { + "properties": { + "addressSpace": { + "type": "string", + "description": "Address space for Vpn NatRule mapping." + } + }, + "description": "Vpn NatRule mapping." + }, + "VpnGatewayNatRuleProperties": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the NAT Rule resource." + }, + "type": { + "type": "string", + "description": "The type of NAT rule for VPN NAT.", + "enum": [ + "Static", + "Dynamic" + ], + "x-ms-enum": { + "name": "VpnNatRuleType", + "modelAsString": true + } + }, + "mode": { + "type": "string", + "description": "The Source NAT direction of a VPN NAT.", + "enum": [ + "EgressSnat", + "IngressSnat" + ], + "x-ms-enum": { + "name": "VpnNatRuleMode", + "modelAsString": true + } + }, + "internalMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnNatRuleMapping" + }, + "description": "The private IP address internal mapping for NAT." + }, + "externalMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnNatRuleMapping" + }, + "description": "The private IP address external mapping for NAT." + }, + "ipConfigurationId": { + "type": "string", + "description": "The IP Configuration ID this NAT rule applies to." + }, + "egressVpnSiteLinkConnections": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "List of egress VpnSiteLinkConnections." + }, + "ingressVpnSiteLinkConnections": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "List of ingress VpnSiteLinkConnections." + } + }, + "description": "Parameters for VpnGatewayNatRule." + }, + "VpnGatewayNatRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnGatewayNatRuleProperties", + "description": "Properties of the VpnGateway NAT rule." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "VpnGatewayNatRule Resource." + }, + "ListVpnGatewayNatRulesResult": { + "description": "Result of the request to list all nat rules to a virtual wan vpn gateway. It contains a list of Nat rules and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnGatewayNatRule" + }, + "description": "List of Nat Rules." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnConnectionProperties": { + "properties": { + "remoteVpnSite": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Id of the connected vpn site." + }, + "routingWeight": { + "type": "integer", + "format": "int32", + "description": "Routing weight for vpn connection." + }, + "dpdTimeoutSeconds": { + "type": "integer", + "format": "int32", + "description": "DPD timeout in seconds for vpn connection." + }, + "connectionStatus": { + "description": "The connection status.", + "$ref": "#/definitions/VpnConnectionStatus" + }, + "vpnConnectionProtocolType": { + "description": "Connection protocol used for this connection.", + "$ref": "./virtualNetworkGateway.json#/definitions/ConnectionProtocol" + }, + "ingressBytesTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "Ingress bytes transferred." + }, + "egressBytesTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "Egress bytes transferred." + }, + "connectionBandwidth": { + "type": "integer", + "format": "int32", + "description": "Expected bandwidth in MBPS." + }, + "sharedKey": { + "type": "string", + "description": "SharedKey for the vpn connection." + }, + "enableBgp": { + "type": "boolean", + "description": "EnableBgp flag." + }, + "usePolicyBasedTrafficSelectors": { + "type": "boolean", + "description": "Enable policy-based traffic selectors." + }, + "ipsecPolicies": { + "type": "array", + "items": { + "$ref": "./virtualNetworkGateway.json#/definitions/IpsecPolicy" + }, + "description": "The IPSec Policies to be considered by this connection." + }, + "trafficSelectorPolicies": { + "type": "array", + "items": { + "$ref": "./virtualNetworkGateway.json#/definitions/TrafficSelectorPolicy" + }, + "description": "The Traffic Selector Policies to be considered by this connection." + }, + "enableRateLimiting": { + "type": "boolean", + "description": "EnableBgp flag." + }, + "enableInternetSecurity": { + "type": "boolean", + "description": "Enable internet security." + }, + "useLocalAzureIpAddress": { + "type": "boolean", + "description": "Use local azure ip to initiate connection." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the VPN connection resource." + }, + "vpnLinkConnections": { + "type": "array", + "description": "List of all vpn site link connections to the gateway.", + "items": { + "$ref": "#/definitions/VpnSiteLinkConnection" + } + }, + "routingConfiguration": { + "$ref": "#/definitions/RoutingConfiguration", + "description": "The Routing Configuration indicating the associated and propagated route tables on this connection." + } + }, + "description": "Parameters for VpnConnection." + }, + "VpnConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnConnectionProperties", + "description": "Properties of the VPN connection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "VpnConnection Resource." + }, + "ListVpnConnectionsResult": { + "description": "Result of the request to list all vpn connections to a virtual wan vpn gateway. It contains a list of Vpn Connections and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnConnection" + }, + "description": "List of Vpn Connections." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnConnectionPacketCaptureStartParameters": { + "description": "Vpn Connection packet capture parameters supplied to start packet capture on gateway connection.", + "properties": { + "filterData": { + "type": "string", + "description": "Start Packet capture parameters on vpn connection." + }, + "linkConnectionNames": { + "type": "array", + "description": "List of site link connection names.", + "items": { + "type": "string" + } + } + } + }, + "VpnConnectionPacketCaptureStopParameters": { + "description": "Vpn Connection packet capture parameters supplied to stop packet capture on gateway connection.", + "properties": { + "sasUrl": { + "type": "string", + "description": "SAS url for packet capture on vpn connection." + }, + "linkConnectionNames": { + "type": "array", + "description": "List of site link connection names.", + "items": { + "type": "string" + } + } + } + }, + "VpnGatewayPacketCaptureStartParameters": { + "properties": { + "filterData": { + "type": "string", + "description": "Start Packet capture parameters on vpn gateway." + } + }, + "description": "Start packet capture parameters." + }, + "VpnGatewayPacketCaptureStopParameters": { + "properties": { + "sasUrl": { + "type": "string", + "description": "SAS url for packet capture on vpn gateway." + } + }, + "description": "Stop packet capture parameters." + }, + "VpnSiteLinkConnectionProperties": { + "properties": { + "vpnSiteLink": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Id of the connected vpn site link." + }, + "routingWeight": { + "type": "integer", + "format": "int32", + "description": "Routing weight for vpn connection." + }, + "vpnLinkConnectionMode": { + "type": "string", + "description": "Vpn link connection mode.", + "enum": [ + "Default", + "ResponderOnly", + "InitiatorOnly" + ], + "x-ms-enum": { + "name": "VpnLinkConnectionMode", + "modelAsString": true + } + }, + "connectionStatus": { + "description": "The connection status.", + "$ref": "#/definitions/VpnConnectionStatus" + }, + "vpnConnectionProtocolType": { + "description": "Connection protocol used for this connection.", + "$ref": "./virtualNetworkGateway.json#/definitions/ConnectionProtocol" + }, + "ingressBytesTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "Ingress bytes transferred." + }, + "egressBytesTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "Egress bytes transferred." + }, + "connectionBandwidth": { + "type": "integer", + "format": "int32", + "description": "Expected bandwidth in MBPS." + }, + "sharedKey": { + "type": "string", + "description": "SharedKey for the vpn connection." + }, + "enableBgp": { + "type": "boolean", + "description": "EnableBgp flag." + }, + "usePolicyBasedTrafficSelectors": { + "type": "boolean", + "description": "Enable policy-based traffic selectors." + }, + "ipsecPolicies": { + "type": "array", + "items": { + "$ref": "./virtualNetworkGateway.json#/definitions/IpsecPolicy" + }, + "description": "The IPSec Policies to be considered by this connection." + }, + "enableRateLimiting": { + "type": "boolean", + "description": "EnableBgp flag." + }, + "useLocalAzureIpAddress": { + "type": "boolean", + "description": "Use local azure ip to initiate connection." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the VPN site link connection resource." + }, + "ingressNatRules": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "List of ingress NatRules." + }, + "egressNatRules": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "List of egress NatRules." + } + }, + "description": "Parameters for VpnConnection." + }, + "VpnSiteLinkConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnSiteLinkConnectionProperties", + "description": "Properties of the VPN site link connection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "VpnSiteLinkConnection Resource." + }, + "ListVpnSiteLinkConnectionsResult": { + "description": "Result of the request to list all vpn connections to a virtual wan vpn gateway. It contains a list of Vpn Connections and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnSiteLinkConnection" + }, + "description": "List of VpnSiteLinkConnections." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "HubVirtualNetworkConnectionProperties": { + "properties": { + "remoteVirtualNetwork": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the remote virtual network." + }, + "allowHubToRemoteVnetTransit": { + "type": "boolean", + "description": "Deprecated: VirtualHub to RemoteVnet transit to enabled or not." + }, + "allowRemoteVnetToUseHubVnetGateways": { + "type": "boolean", + "description": "Deprecated: Allow RemoteVnet to use Virtual Hub's gateways." + }, + "enableInternetSecurity": { + "type": "boolean", + "description": "Enable internet security." + }, + "routingConfiguration": { + "$ref": "#/definitions/RoutingConfiguration", + "description": "The Routing Configuration indicating the associated and propagated route tables on this connection." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the hub virtual network connection resource." + } + }, + "description": "Parameters for HubVirtualNetworkConnection." + }, + "HubVirtualNetworkConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/HubVirtualNetworkConnectionProperties", + "description": "Properties of the hub virtual network connection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "HubVirtualNetworkConnection Resource." + }, + "ListHubVirtualNetworkConnectionsResult": { + "description": "List of HubVirtualNetworkConnections and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/HubVirtualNetworkConnection" + }, + "description": "List of HubVirtualNetworkConnections." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "HubRouteTableProperties": { + "properties": { + "routes": { + "type": "array", + "description": "List of all routes.", + "items": { + "$ref": "#/definitions/HubRoute" + } + }, + "labels": { + "type": "array", + "description": "List of labels associated with this route table.", + "items": { + "type": "string" + } + }, + "associatedConnections": { + "type": "array", + "description": "List of all connections associated with this route table.", + "readOnly": true, + "items": { + "type": "string" + } + }, + "propagatingConnections": { + "type": "array", + "description": "List of all connections that advertise to this route table.", + "readOnly": true, + "items": { + "type": "string" + } + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "readOnly": true, + "description": "The provisioning state of the RouteTable resource." + } + }, + "description": "Parameters for RouteTable." + }, + "HubRouteTable": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/HubRouteTableProperties", + "description": "Properties of the RouteTable resource." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "RouteTable resource in a virtual hub." + }, + "HubRoute": { + "required": [ + "name", + "destinationType", + "destinations", + "nextHopType", + "nextHop" + ], + "properties": { + "name": { + "type": "string", + "description": "The name of the Route that is unique within a RouteTable. This name can be used to access this route." + }, + "destinationType": { + "type": "string", + "description": "The type of destinations (eg: CIDR, ResourceId, Service)." + }, + "destinations": { + "type": "array", + "description": "List of all destinations.", + "items": { + "type": "string" + } + }, + "nextHopType": { + "type": "string", + "description": "The type of next hop (eg: ResourceId)." + }, + "nextHop": { + "type": "string", + "description": "NextHop resource ID." + } + }, + "description": "RouteTable route." + }, + "ListHubRouteTablesResult": { + "description": "List of RouteTables and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/HubRouteTable" + }, + "description": "List of RouteTables." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnSiteId": { + "properties": { + "vpnSite": { + "type": "string", + "readOnly": true, + "description": "The resource-uri of the vpn-site for which config is to be fetched." + } + }, + "description": "VpnSite Resource." + }, + "DeviceProperties": { + "properties": { + "deviceVendor": { + "type": "string", + "description": "Name of the device Vendor." + }, + "deviceModel": { + "type": "string", + "description": "Model of the device." + }, + "linkSpeedInMbps": { + "type": "integer", + "format": "int32", + "description": "Link speed." + } + }, + "description": "List of properties of the device." + }, + "VirtualWanSecurityProviders": { + "properties": { + "supportedProviders": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualWanSecurityProvider" + }, + "description": "List of VirtualWAN security providers." + } + }, + "description": "Collection of SecurityProviders." + }, + "VirtualWanSecurityProvider": { + "properties": { + "name": { + "type": "string", + "description": "Name of the security provider." + }, + "url": { + "type": "string", + "description": "Url of the security provider." + }, + "type": { + "$ref": "#/definitions/VirtualWanSecurityProviderType", + "description": "Name of the security provider." + } + }, + "description": "Collection of SecurityProviders." + }, + "VpnConnectionStatus": { + "type": "string", + "description": "The current state of the vpn connection.", + "readOnly": true, + "enum": [ + "Unknown", + "Connecting", + "Connected", + "NotConnected" + ], + "x-ms-enum": { + "name": "VpnConnectionStatus", + "modelAsString": true + } + }, + "TunnelConnectionStatus": { + "type": "string", + "description": "The current state of the tunnel.", + "readOnly": true, + "enum": [ + "Unknown", + "Connecting", + "Connected", + "NotConnected" + ], + "x-ms-enum": { + "name": "TunnelConnectionStatus", + "modelAsString": true + } + }, + "HubVirtualNetworkConnectionStatus": { + "type": "string", + "description": "The current state of the VirtualHub to vnet connection.", + "readOnly": true, + "enum": [ + "Unknown", + "Connecting", + "Connected", + "NotConnected" + ], + "x-ms-enum": { + "name": "HubVirtualNetworkConnectionStatus", + "modelAsString": true + } + }, + "OfficeTrafficCategory": { + "type": "string", + "description": "The office traffic category.", + "readOnly": true, + "enum": [ + "Optimize", + "OptimizeAndAllow", + "All", + "None" + ], + "x-ms-enum": { + "name": "OfficeTrafficCategory", + "modelAsString": true + } + }, + "VirtualWanSecurityProviderType": { + "type": "string", + "description": "The virtual wan security provider type.", + "readOnly": true, + "enum": [ + "External", + "Native" + ], + "x-ms-enum": { + "name": "VirtualWanSecurityProviderType", + "modelAsString": true + } + }, + "VpnServerConfigVpnClientRootCertificate": { + "properties": { + "name": { + "type": "string", + "description": "The certificate name." + }, + "publicCertData": { + "type": "string", + "description": "The certificate public data." + } + }, + "description": "Properties of VPN client root certificate of VpnServerConfiguration." + }, + "VpnServerConfigRadiusServerRootCertificate": { + "properties": { + "name": { + "type": "string", + "description": "The certificate name." + }, + "publicCertData": { + "type": "string", + "description": "The certificate public data." + } + }, + "description": "Properties of Radius Server root certificate of VpnServerConfiguration." + }, + "VpnServerConfigVpnClientRevokedCertificate": { + "properties": { + "name": { + "type": "string", + "description": "The certificate name." + }, + "thumbprint": { + "type": "string", + "description": "The revoked VPN client certificate thumbprint." + } + }, + "description": "Properties of the revoked VPN client certificate of VpnServerConfiguration." + }, + "VpnServerConfigRadiusClientRootCertificate": { + "properties": { + "name": { + "type": "string", + "description": "The certificate name." + }, + "thumbprint": { + "type": "string", + "description": "The Radius client root certificate thumbprint." + } + }, + "description": "Properties of the Radius client root certificate of VpnServerConfiguration." + }, + "AadAuthenticationParameters": { + "properties": { + "aadTenant": { + "type": "string", + "description": "AAD Vpn authentication parameter AAD tenant." + }, + "aadAudience": { + "type": "string", + "description": "AAD Vpn authentication parameter AAD audience." + }, + "aadIssuer": { + "type": "string", + "description": "AAD Vpn authentication parameter AAD issuer." + } + }, + "description": "AAD Vpn authentication type related parameters." + }, + "VpnServerConfigurationProperties": { + "properties": { + "name": { + "type": "string", + "description": "The name of the VpnServerConfiguration that is unique within a resource group." + }, + "vpnProtocols": { + "type": "array", + "items": { + "type": "string", + "description": "VPN protocol enabled for the VpnServerConfiguration.", + "enum": [ + "IkeV2", + "OpenVPN" + ], + "x-ms-enum": { + "name": "VpnGatewayTunnelingProtocol", + "modelAsString": true + } + }, + "description": "VPN protocols for the VpnServerConfiguration." + }, + "vpnAuthenticationTypes": { + "type": "array", + "items": { + "type": "string", + "description": "VPN authentication types enabled for the VpnServerConfiguration.", + "enum": [ + "Certificate", + "Radius", + "AAD" + ], + "x-ms-enum": { + "name": "VpnAuthenticationType", + "modelAsString": true + } + }, + "description": "VPN authentication types for the VpnServerConfiguration." + }, + "vpnClientRootCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnServerConfigVpnClientRootCertificate" + }, + "description": "VPN client root certificate of VpnServerConfiguration." + }, + "vpnClientRevokedCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnServerConfigVpnClientRevokedCertificate" + }, + "description": "VPN client revoked certificate of VpnServerConfiguration." + }, + "radiusServerRootCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnServerConfigRadiusServerRootCertificate" + }, + "description": "Radius Server root certificate of VpnServerConfiguration." + }, + "radiusClientRootCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnServerConfigRadiusClientRootCertificate" + }, + "description": "Radius client root certificate of VpnServerConfiguration." + }, + "vpnClientIpsecPolicies": { + "type": "array", + "items": { + "$ref": "./virtualNetworkGateway.json#/definitions/IpsecPolicy" + }, + "description": "VpnClientIpsecPolicies for VpnServerConfiguration." + }, + "radiusServerAddress": { + "type": "string", + "description": "The radius server address property of the VpnServerConfiguration resource for point to site client connection." + }, + "radiusServerSecret": { + "type": "string", + "description": "The radius secret property of the VpnServerConfiguration resource for point to site client connection." + }, + "radiusServers": { + "type": "array", + "items": { + "$ref": "./virtualNetworkGateway.json#/definitions/RadiusServer" + }, + "description": "Multiple Radius Server configuration for VpnServerConfiguration." + }, + "aadAuthenticationParameters": { + "$ref": "#/definitions/AadAuthenticationParameters", + "description": "The set of aad vpn authentication parameters." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state of the VpnServerConfiguration resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + }, + "p2SVpnGateways": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/P2SVpnGateway" + }, + "description": "List of references to P2SVpnGateways." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "description": "Parameters for VpnServerConfiguration." + }, + "VpnServerConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnServerConfigurationProperties", + "description": "Properties of the P2SVpnServer configuration." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "VpnServerConfiguration Resource." + }, + "ListVpnServerConfigurationsResult": { + "description": "Result of the request to list all VpnServerConfigurations. It contains a list of VpnServerConfigurations and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnServerConfiguration" + }, + "description": "List of VpnServerConfigurations." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnClientConnectionHealth": { + "properties": { + "totalIngressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "Total of the Ingress Bytes Transferred in this P2S Vpn connection." + }, + "totalEgressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "Total of the Egress Bytes Transferred in this connection." + }, + "vpnClientConnectionsCount": { + "type": "integer", + "format": "int32", + "description": "The total of p2s vpn clients connected at this time to this P2SVpnGateway." + }, + "allocatedIpAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of allocated ip addresses to the connected p2s vpn clients." + } + }, + "description": "VpnClientConnectionHealth properties." + }, + "P2SVpnGatewayProperties": { + "properties": { + "virtualHub": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The VirtualHub to which the gateway belongs." + }, + "p2SConnectionConfigurations": { + "type": "array", + "description": "List of all p2s connection configurations of the gateway.", + "items": { + "$ref": "#/definitions/P2SConnectionConfiguration" + } + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the P2S VPN gateway resource." + }, + "vpnGatewayScaleUnit": { + "type": "integer", + "format": "int32", + "description": "The scale unit for this p2s vpn gateway." + }, + "vpnServerConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The VpnServerConfiguration to which the p2sVpnGateway is attached to." + }, + "vpnClientConnectionHealth": { + "readOnly": true, + "$ref": "#/definitions/VpnClientConnectionHealth", + "description": "All P2S VPN clients' connection health status." + }, + "customDnsServers": { + "type": "array", + "description": "List of all customer specified DNS servers IP addresses.", + "items": { + "type": "string" + } + }, + "isRoutingPreferenceInternet": { + "type": "boolean", + "description": "Enable Routing Preference property for the Public IP Interface of the P2SVpnGateway." + } + }, + "description": "Parameters for P2SVpnGateway." + }, + "P2SVpnGateway": { + "required": [ + "location" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/P2SVpnGatewayProperties", + "description": "Properties of the P2SVpnGateway." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "P2SVpnGateway Resource." + }, + "ListP2SVpnGatewaysResult": { + "description": "Result of the request to list P2SVpnGateways. It contains a list of P2SVpnGateways and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/P2SVpnGateway" + }, + "description": "List of P2SVpnGateways." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "P2SVpnProfileParameters": { + "properties": { + "authenticationMethod": { + "$ref": "./network.json#/definitions/AuthenticationMethod", + "description": "VPN client authentication method." + } + }, + "description": "Vpn Client Parameters for package generation." + }, + "VpnProfileResponse": { + "properties": { + "profileUrl": { + "type": "string", + "description": "URL to the VPN profile." + } + }, + "description": "Vpn Profile Response for package generation." + }, + "VpnLinkBgpSettings": { + "properties": { + "asn": { + "type": "integer", + "format": "int64", + "description": "The BGP speaker's ASN." + }, + "bgpPeeringAddress": { + "type": "string", + "description": "The BGP peering address and BGP identifier of this BGP speaker." + } + }, + "description": "BGP settings details for a link." + }, + "VpnLinkProviderProperties": { + "properties": { + "linkProviderName": { + "type": "string", + "description": "Name of the link provider." + }, + "linkSpeedInMbps": { + "type": "integer", + "format": "int32", + "description": "Link speed." + } + }, + "description": "List of properties of a link provider." + }, + "VpnServerConfigurationsResponse": { + "properties": { + "vpnServerConfigurationResourceIds": { + "type": "array", + "items": { + "type": "string", + "description": "VpnServerConfiguration partial resource uri." + }, + "description": "List of VpnServerConfigurations associated with VirtualWan." + } + }, + "description": "VpnServerConfigurations list associated with VirtualWan Response." + }, + "VirtualWanVpnProfileParameters": { + "properties": { + "vpnServerConfigurationResourceId": { + "type": "string", + "description": "VpnServerConfiguration partial resource uri with which VirtualWan is associated to." + }, + "authenticationMethod": { + "$ref": "./network.json#/definitions/AuthenticationMethod", + "description": "VPN client authentication method." + } + }, + "description": "Virtual Wan Vpn profile parameters Vpn profile generation." + }, + "P2SVpnConnectionHealthRequest": { + "properties": { + "vpnUserNamesFilter": { + "type": "array", + "items": { + "type": "string", + "description": "P2S vpn user name." + }, + "description": "The list of p2s vpn user names whose p2s vpn connection detailed health to retrieve for." + }, + "outputBlobSasUrl": { + "type": "string", + "description": "The sas-url to download the P2S Vpn connection health detail." + } + }, + "description": "List of P2S Vpn connection health request." + }, + "P2SVpnConnectionHealth": { + "properties": { + "sasUrl": { + "type": "string", + "description": "Returned sas url of the blob to which the p2s vpn connection detailed health will be written." + } + }, + "description": "P2S Vpn connection detailed health written to sas url." + }, + "P2SConnectionConfigurationProperties": { + "properties": { + "vpnClientAddressPool": { + "$ref": "./virtualNetwork.json#/definitions/AddressSpace", + "description": "The reference to the address space resource which represents Address space for P2S VpnClient." + }, + "routingConfiguration": { + "$ref": "#/definitions/RoutingConfiguration", + "description": "The Routing Configuration indicating the associated and propagated route tables on this connection." + }, + "enableInternetSecurity": { + "type": "boolean", + "description": "Flag indicating whether the enable internet security flag is turned on for the P2S Connections or not." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the P2SConnectionConfiguration resource." + } + }, + "description": "Parameters for P2SConnectionConfiguration." + }, + "P2SConnectionConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/P2SConnectionConfigurationProperties", + "description": "Properties of the P2S connection configuration." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "P2SConnectionConfiguration Resource." + }, + "VirtualHubRouteTableV2Properties": { + "properties": { + "routes": { + "type": "array", + "description": "List of all routes.", + "items": { + "$ref": "#/definitions/VirtualHubRouteV2" + } + }, + "attachedConnections": { + "type": "array", + "description": "List of all connections attached to this route table v2.", + "items": { + "type": "string" + } + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "readOnly": true, + "description": "The provisioning state of the virtual hub route table v2 resource." + } + }, + "description": "Parameters for VirtualHubRouteTableV2." + }, + "VirtualHubRouteTableV2": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualHubRouteTableV2Properties", + "description": "Properties of the virtual hub route table v2." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "VirtualHubRouteTableV2 Resource." + }, + "VirtualHubRouteV2": { + "properties": { + "destinationType": { + "type": "string", + "description": "The type of destinations." + }, + "destinations": { + "type": "array", + "description": "List of all destinations.", + "items": { + "type": "string" + } + }, + "nextHopType": { + "type": "string", + "description": "The type of next hops." + }, + "nextHops": { + "type": "array", + "description": "NextHops ip address.", + "items": { + "type": "string" + } + } + }, + "description": "VirtualHubRouteTableV2 route." + }, + "ListVirtualHubRouteTableV2sResult": { + "description": "List of VirtualHubRouteTableV2s and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualHubRouteTableV2" + }, + "description": "List of VirtualHubRouteTableV2s." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "P2SVpnConnectionRequest": { + "description": "List of p2s vpn connections to be disconnected.", + "properties": { + "vpnConnectionIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of p2s vpn connection Ids." + } + } + }, + "VirtualHubId": { + "properties": { + "id": { + "type": "string", + "description": "The resource URI for the Virtual Hub where the ExpressRoute gateway is or will be deployed. The Virtual Hub resource and the ExpressRoute gateway resource reside in the same subscription." + } + }, + "description": "Virtual Hub identifier." + }, + "ExpressRouteCircuitPeeringId": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the ExpressRoute circuit peering." + } + }, + "description": "ExpressRoute circuit peering identifier." + }, + "ExpressRouteConnectionId": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The ID of the ExpressRouteConnection." + } + }, + "description": "The ID of the ExpressRouteConnection." + }, + "ExpressRouteGatewayProperties": { + "required": [ + "virtualHub" + ], + "properties": { + "autoScaleConfiguration": { + "properties": { + "bounds": { + "properties": { + "min": { + "type": "integer", + "description": "Minimum number of scale units deployed for ExpressRoute gateway." + }, + "max": { + "type": "integer", + "description": "Maximum number of scale units deployed for ExpressRoute gateway." + } + }, + "description": "Minimum and maximum number of scale units to deploy." + } + }, + "description": "Configuration for auto scaling." + }, + "expressRouteConnections": { + "type": "array", + "readOnly": true, + "description": "List of ExpressRoute connections to the ExpressRoute gateway.", + "items": { + "$ref": "#/definitions/ExpressRouteConnection" + } + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route gateway resource." + }, + "virtualHub": { + "$ref": "#/definitions/VirtualHubId", + "description": "The Virtual Hub where the ExpressRoute gateway is or will be deployed." + } + }, + "description": "ExpressRoute gateway resource properties." + }, + "ExpressRouteGateway": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteGatewayProperties", + "description": "Properties of the express route gateway." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "ExpressRoute gateway resource." + }, + "ExpressRouteGatewayList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteGateway" + }, + "description": "List of ExpressRoute gateways." + } + }, + "description": "List of ExpressRoute gateways." + }, + "ExpressRouteConnectionProperties": { + "required": [ + "expressRouteCircuitPeering" + ], + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route connection resource." + }, + "expressRouteCircuitPeering": { + "$ref": "#/definitions/ExpressRouteCircuitPeeringId", + "description": "The ExpressRoute circuit peering." + }, + "authorizationKey": { + "type": "string", + "description": "Authorization key to establish the connection." + }, + "routingWeight": { + "type": "integer", + "description": "The routing weight associated to the connection." + }, + "enableInternetSecurity": { + "type": "boolean", + "description": "Enable internet security." + }, + "expressRouteGatewayBypass": { + "type": "boolean", + "description": "Enable FastPath to vWan Firewall hub." + }, + "routingConfiguration": { + "$ref": "#/definitions/RoutingConfiguration", + "description": "The Routing Configuration indicating the associated and propagated route tables on this connection." + } + }, + "description": "Properties of the ExpressRouteConnection subresource." + }, + "ExpressRouteConnection": { + "required": [ + "name" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteConnectionProperties", + "description": "Properties of the express route connection." + }, + "name": { + "type": "string", + "description": "The name of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "ExpressRouteConnection resource." + }, + "ExpressRouteConnectionList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteConnection" + }, + "description": "The list of ExpressRoute connections." + } + }, + "description": "ExpressRouteConnection list." + }, + "ListVirtualHubBgpConnectionResults": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BgpConnection" + }, + "description": "The list of VirtualHubBgpConnections." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "VirtualHubBgpConnections list." + }, + "ListVirtualHubIpConfigurationResults": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/HubIpConfiguration" + }, + "description": "The list of VirtualHubIpConfigurations." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "VirtualHubIpConfigurations list." + }, + "RoutingConfiguration": { + "description": "Routing Configuration indicating the associated and propagated route tables for this connection.", + "properties": { + "associatedRouteTable": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The resource id RouteTable associated with this RoutingConfiguration." + }, + "propagatedRouteTables": { + "$ref": "#/definitions/PropagatedRouteTable", + "description": "The list of RouteTables to advertise the routes to." + }, + "vnetRoutes": { + "$ref": "#/definitions/VnetRoute", + "description": "List of routes that control routing from VirtualHub into a virtual network connection." + } + } + }, + "PropagatedRouteTable": { + "description": "The list of RouteTables to advertise the routes to.", + "properties": { + "labels": { + "type": "array", + "description": "The list of labels.", + "items": { + "type": "string" + } + }, + "ids": { + "type": "array", + "description": "The list of resource ids of all the RouteTables.", + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + } + } + }, + "VnetRoute": { + "description": "List of routes that control routing from VirtualHub into a virtual network connection.", + "properties": { + "staticRoutes": { + "type": "array", + "description": "List of all Static Routes.", + "items": { + "$ref": "#/definitions/StaticRoute" + } + } + } + }, + "StaticRoute": { + "description": "List of all Static Routes.", + "properties": { + "name": { + "type": "string", + "description": "The name of the StaticRoute that is unique within a VnetRoute." + }, + "addressPrefixes": { + "type": "array", + "description": "List of all address prefixes.", + "items": { + "type": "string" + } + }, + "nextHopIpAddress": { + "type": "string", + "description": "The ip address of the next hop." + } + } + }, + "VirtualHubEffectiveRouteList": { + "description": "EffectiveRoutes List.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualHubEffectiveRoute" + }, + "description": "The list of effective routes configured on the virtual hub or the specified resource." + } + } + }, + "VirtualHubEffectiveRoute": { + "description": "The effective route configured on the virtual hub or specified resource.", + "properties": { + "addressPrefixes": { + "description": "The list of address prefixes.", + "type": "array", + "items": { + "type": "string" + } + }, + "nextHops": { + "description": "The list of next hops.", + "type": "array", + "items": { + "type": "string" + } + }, + "nextHopType": { + "description": "The type of the next hop.", + "type": "string" + }, + "asPath": { + "description": "The ASPath of this route.", + "type": "string" + }, + "routeOrigin": { + "description": "The origin of this route.", + "type": "string" + } + } + }, + "EffectiveRoutesParameters": { + "description": "The parameters specifying the resource whose effective routes are being requested.", + "properties": { + "resourceId": { + "type": "string", + "description": "The resource whose effective routes are being requested." + }, + "virtualWanResourceType": { + "type": "string", + "description": "The type of the specified resource like RouteTable, ExpressRouteConnection, HubVirtualNetworkConnection, VpnConnection and P2SConnection." + } + } + }, + "O365PolicyProperties": { + "properties": { + "breakOutCategories": { + "readOnly": false, + "description": "Office365 breakout categories.", + "$ref": "#/definitions/O365BreakOutCategoryPolicies" + } + }, + "description": "The Office365 breakout policy." + }, + "O365BreakOutCategoryPolicies": { + "properties": { + "allow": { + "type": "boolean", + "readOnly": false, + "description": "Flag to control allow category." + }, + "optimize": { + "type": "boolean", + "readOnly": false, + "description": "Flag to control optimize category." + }, + "default": { + "type": "boolean", + "readOnly": false, + "description": "Flag to control default category." + } + }, + "description": "Office365 breakout categories." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/vmssNetworkInterface.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/vmssNetworkInterface.json new file mode 100644 index 000000000000..89562aa3062c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/vmssNetworkInterface.json @@ -0,0 +1,374 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2018-10-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_ListVirtualMachineScaleSetVMNetworkInterfaces", + "description": "Gets information about all network interfaces in a virtual machine in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "name": "virtualmachineIndex", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual machine index." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface resources.", + "schema": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List virtual machine scale set vm network interfaces": { + "$ref": "./examples/VmssVmNetworkInterfaceList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/networkInterfaces": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_ListVirtualMachineScaleSetNetworkInterfaces", + "description": "Gets all network interfaces in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface resources.", + "schema": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List virtual machine scale set network interfaces": { + "$ref": "./examples/VmssNetworkInterfaceList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_GetVirtualMachineScaleSetNetworkInterface", + "description": "Get the specified network interface in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "name": "virtualmachineIndex", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual machine index." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NetworkInterface resource.", + "schema": { + "$ref": "./networkInterface.json#/definitions/NetworkInterface" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get virtual machine scale set network interface": { + "$ref": "./examples/VmssNetworkInterfaceGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}/ipConfigurations": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_ListVirtualMachineScaleSetIpConfigurations", + "description": "Get the specified network interface ip configuration in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "name": "virtualmachineIndex", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual machine index." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the list of resulting NetworkInterfaceIPConfigurations resources.", + "schema": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfigurationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List virtual machine scale set network interface ip configurations": { + "$ref": "./examples/VmssNetworkInterfaceIpConfigList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}/ipConfigurations/{ipConfigurationName}": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_GetVirtualMachineScaleSetIpConfiguration", + "description": "Get the specified network interface ip configuration in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "name": "virtualmachineIndex", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual machine index." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "ipConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ip configuration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NetworkInterfaceIPConfiguration resource.", + "schema": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get virtual machine scale set network interface": { + "$ref": "./examples/VmssNetworkInterfaceIpConfigGet.json" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/vmssPublicIpAddress.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/vmssPublicIpAddress.json new file mode 100644 index 000000000000..d100152e7711 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/vmssPublicIpAddress.json @@ -0,0 +1,241 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2018-10-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/publicipaddresses": { + "get": { + "operationId": "PublicIPAddresses_ListVirtualMachineScaleSetPublicIPAddresses", + "description": "Gets information about all public IP addresses on a virtual machine scale set level.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PublicIPInterface resources.", + "schema": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddressListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ListVMSSPublicIP": { + "$ref": "./examples/VmssPublicIpListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}/ipconfigurations/{ipConfigurationName}/publicipaddresses": { + "get": { + "operationId": "PublicIPAddresses_ListVirtualMachineScaleSetVMPublicIPAddresses", + "description": "Gets information about all public IP addresses in a virtual machine IP configuration in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "name": "virtualmachineIndex", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual machine index." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The network interface name." + }, + { + "name": "ipConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The IP configuration name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PublicIPAddress resources.", + "schema": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddressListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ListVMSSVMPublicIP": { + "$ref": "./examples/VmssVmPublicIpList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}/ipconfigurations/{ipConfigurationName}/publicipaddresses/{publicIpAddressName}": { + "get": { + "operationId": "PublicIPAddresses_GetVirtualMachineScaleSetPublicIPAddress", + "description": "Get the specified public IP address in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "name": "virtualmachineIndex", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual machine index." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "ipConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the IP configuration." + }, + { + "name": "publicIpAddressName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP Address." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "x-ms-examples": { + "GetVMSSPublicIP": { + "$ref": "./examples/VmssPublicIpGet.json" + } + }, + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting PublicIPAddress resource.", + "schema": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddress" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/webapplicationfirewall.json b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/webapplicationfirewall.json new file mode 100644 index 000000000000..86ad2013e585 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2021-02-01/webapplicationfirewall.json @@ -0,0 +1,741 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-01", + "title": "WebApplicationFirewallManagement", + "description": "APIs to manage web application firewall rules." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies": { + "get": { + "tags": [ + "WebApplicationFirewallPolicies" + ], + "description": "Lists all of the protection policies within a resource group.", + "operationId": "WebApplicationFirewallPolicies_List", + "x-ms-examples": { + "Lists all WAF policies in a resource group": { + "$ref": "./examples/WafListPolicies.json" + } + }, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/WebApplicationFirewallPolicyListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies": { + "get": { + "tags": [ + "WebApplicationFirewallPolicies" + ], + "description": "Gets all the WAF policies in a subscription.", + "operationId": "WebApplicationFirewallPolicies_ListAll", + "x-ms-examples": { + "Lists all WAF policies in a subscription": { + "$ref": "./examples/WafListAllPolicies.json" + } + }, + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/WebApplicationFirewallPolicyListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies/{policyName}": { + "get": { + "tags": [ + "WebApplicationFirewallPolicies" + ], + "description": "Retrieve protection policy with specified name within a resource group.", + "operationId": "WebApplicationFirewallPolicies_Get", + "x-ms-examples": { + "Gets a WAF policy within a resource group": { + "$ref": "./examples/WafPolicyGet.json" + } + }, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "policyName", + "in": "path", + "required": true, + "type": "string", + "maxLength": 128, + "description": "The name of the policy." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/WebApplicationFirewallPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "WebApplicationFirewallPolicies" + ], + "description": "Creates or update policy with specified rule set name within a resource group.", + "operationId": "WebApplicationFirewallPolicies_CreateOrUpdate", + "x-ms-examples": { + "Creates or updates a WAF policy within a resource group": { + "$ref": "./examples/WafPolicyCreateOrUpdate.json" + } + }, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "policyName", + "in": "path", + "required": true, + "type": "string", + "maxLength": 128, + "description": "The name of the policy." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "description": "Policy to be created.", + "in": "body", + "name": "parameters", + "required": true, + "schema": { + "$ref": "#/definitions/WebApplicationFirewallPolicy" + } + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/WebApplicationFirewallPolicy" + } + }, + "201": { + "description": "Created. The request has been fulfilled and a new protection policy has been created.", + "schema": { + "$ref": "#/definitions/WebApplicationFirewallPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "WebApplicationFirewallPolicies" + ], + "description": "Deletes Policy.", + "operationId": "WebApplicationFirewallPolicies_Delete", + "x-ms-examples": { + "Deletes a WAF policy within a resource group": { + "$ref": "./examples/WafPolicyDelete.json" + } + }, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "policyName", + "in": "path", + "required": true, + "type": "string", + "maxLength": 128, + "description": "The name of the policy." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously." + }, + "204": { + "description": "No Content. The request has been accepted but the policy was not found." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + } + }, + "definitions": { + "WebApplicationFirewallPolicy": { + "description": "Defines web application firewall policy.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/WebApplicationFirewallPolicyPropertiesFormat", + "description": "Properties of the web application firewall policy." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ] + }, + "WebApplicationFirewallPolicyPropertiesFormat": { + "description": "Defines web application firewall policy properties.", + "required": [ + "managedRules" + ], + "properties": { + "policySettings": { + "description": "The PolicySettings for policy.", + "$ref": "#/definitions/PolicySettings" + }, + "customRules": { + "description": "The custom rules inside the policy.", + "type": "array", + "items": { + "$ref": "#/definitions/WebApplicationFirewallCustomRule" + } + }, + "applicationGateways": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./applicationGateway.json#/definitions/ApplicationGateway" + }, + "description": "A collection of references to application gateways." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the web application firewall policy resource." + }, + "resourceState": { + "title": "Resource status of the policy.", + "readOnly": true, + "type": "string", + "description": "Resource status of the policy.", + "enum": [ + "Creating", + "Enabling", + "Enabled", + "Disabling", + "Disabled", + "Deleting" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallPolicyResourceState", + "modelAsString": true + } + }, + "managedRules": { + "description": "Describes the managedRules structure.", + "$ref": "#/definitions/ManagedRulesDefinition" + }, + "httpListeners": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "A collection of references to application gateway http listeners." + }, + "pathBasedRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "A collection of references to application gateway path rules." + } + } + }, + "WebApplicationFirewallPolicyListResult": { + "description": "Result of the request to list WebApplicationFirewallPolicies. It contains a list of WebApplicationFirewallPolicy objects and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/WebApplicationFirewallPolicy" + }, + "description": "List of WebApplicationFirewallPolicies within a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "URL to get the next set of WebApplicationFirewallPolicy objects if there are any." + } + } + }, + "ManagedRulesDefinition": { + "description": "Allow to exclude some variable satisfy the condition for the WAF check.", + "required": [ + "managedRuleSets" + ], + "properties": { + "exclusions": { + "type": "array", + "items": { + "$ref": "#/definitions/OwaspCrsExclusionEntry" + }, + "description": "The Exclusions that are applied on the policy." + }, + "managedRuleSets": { + "type": "array", + "items": { + "$ref": "#/definitions/ManagedRuleSet" + }, + "description": "The managed rule sets that are associated with the policy." + } + } + }, + "PolicySettings": { + "description": "Defines contents of a web application firewall global configuration.", + "properties": { + "state": { + "description": "The state of the policy.", + "type": "string", + "enum": [ + "Disabled", + "Enabled" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallEnabledState", + "modelAsString": true + } + }, + "mode": { + "description": "The mode of the policy.", + "type": "string", + "enum": [ + "Prevention", + "Detection" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallMode", + "modelAsString": true + } + }, + "requestBodyCheck": { + "type": "boolean", + "description": "Whether to allow WAF to check request Body." + }, + "maxRequestBodySizeInKb": { + "type": "integer", + "format": "int32", + "minimum": 8, + "exclusiveMinimum": false, + "description": "Maximum request body size in Kb for WAF." + }, + "fileUploadLimitInMb": { + "type": "integer", + "format": "int32", + "minimum": 0, + "exclusiveMinimum": false, + "description": "Maximum file upload size in Mb for WAF." + } + } + }, + "WebApplicationFirewallCustomRule": { + "description": "Defines contents of a web application rule.", + "required": [ + "priority", + "ruleType", + "matchConditions", + "action" + ], + "properties": { + "name": { + "type": "string", + "description": "The name of the resource that is unique within a policy. This name can be used to access the resource.", + "maxLength": 128 + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "priority": { + "description": "Priority of the rule. Rules with a lower value will be evaluated before rules with a higher value.", + "type": "integer" + }, + "ruleType": { + "description": "The rule type.", + "type": "string", + "enum": [ + "MatchRule", + "Invalid" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallRuleType", + "modelAsString": true + } + }, + "matchConditions": { + "description": "List of match conditions.", + "type": "array", + "items": { + "$ref": "#/definitions/MatchCondition" + } + }, + "action": { + "description": "Type of Actions.", + "type": "string", + "enum": [ + "Allow", + "Block", + "Log" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallAction", + "modelAsString": true + } + } + } + }, + "Transform": { + "description": "Transforms applied before matching.", + "type": "string", + "enum": [ + "Lowercase", + "Trim", + "UrlDecode", + "UrlEncode", + "RemoveNulls", + "HtmlEntityDecode" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallTransform", + "modelAsString": true + } + }, + "MatchVariable": { + "description": "Define match variables.", + "required": [ + "variableName" + ], + "properties": { + "variableName": { + "description": "Match Variable.", + "type": "string", + "enum": [ + "RemoteAddr", + "RequestMethod", + "QueryString", + "PostArgs", + "RequestUri", + "RequestHeaders", + "RequestBody", + "RequestCookies" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallMatchVariable", + "modelAsString": true + } + }, + "selector": { + "description": "The selector of match variable.", + "type": "string" + } + } + }, + "MatchCondition": { + "description": "Define match conditions.", + "required": [ + "matchVariables", + "operator", + "matchValues" + ], + "properties": { + "matchVariables": { + "description": "List of match variables.", + "type": "array", + "items": { + "$ref": "#/definitions/MatchVariable" + } + }, + "operator": { + "description": "The operator to be matched.", + "type": "string", + "enum": [ + "IPMatch", + "Equal", + "Contains", + "LessThan", + "GreaterThan", + "LessThanOrEqual", + "GreaterThanOrEqual", + "BeginsWith", + "EndsWith", + "Regex", + "GeoMatch" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallOperator", + "modelAsString": true + } + }, + "negationConditon": { + "description": "Whether this is negate condition or not.", + "type": "boolean" + }, + "matchValues": { + "description": "Match value.", + "type": "array", + "items": { + "type": "string" + } + }, + "transforms": { + "description": "List of transforms.", + "type": "array", + "items": { + "$ref": "#/definitions/Transform" + } + } + } + }, + "ManagedRuleSet": { + "type": "object", + "description": "Defines a managed rule set.", + "required": [ + "ruleSetType", + "ruleSetVersion" + ], + "properties": { + "ruleSetType": { + "description": "Defines the rule set type to use.", + "type": "string" + }, + "ruleSetVersion": { + "description": "Defines the version of the rule set to use.", + "type": "string" + }, + "ruleGroupOverrides": { + "description": "Defines the rule group overrides to apply to the rule set.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedRuleGroupOverride" + } + } + } + }, + "ManagedRuleGroupOverride": { + "description": "Defines a managed rule group override setting.", + "required": [ + "ruleGroupName" + ], + "properties": { + "ruleGroupName": { + "description": "The managed rule group to override.", + "type": "string" + }, + "rules": { + "description": "List of rules that will be disabled. If none specified, all rules in the group will be disabled.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedRuleOverride" + } + } + } + }, + "ManagedRuleOverride": { + "description": "Defines a managed rule group override setting.", + "required": [ + "ruleId" + ], + "properties": { + "ruleId": { + "description": "Identifier for the managed rule.", + "type": "string" + }, + "state": { + "description": "The state of the managed rule. Defaults to Disabled if not specified.", + "type": "string", + "enum": [ + "Disabled" + ], + "x-ms-enum": { + "name": "ManagedRuleEnabledState", + "modelAsString": true + } + } + } + }, + "OwaspCrsExclusionEntry": { + "required": [ + "matchVariable", + "selectorMatchOperator", + "selector" + ], + "description": "Allow to exclude some variable satisfy the condition for the WAF check.", + "properties": { + "matchVariable": { + "type": "string", + "enum": [ + "RequestHeaderNames", + "RequestCookieNames", + "RequestArgNames" + ], + "description": "The variable to be excluded.", + "x-ms-enum": { + "name": "OwaspCrsExclusionEntryMatchVariable", + "modelAsString": true + } + }, + "selectorMatchOperator": { + "type": "string", + "enum": [ + "Equals", + "Contains", + "StartsWith", + "EndsWith", + "EqualsAny" + ], + "description": "When matchVariable is a collection, operate on the selector to specify which elements in the collection this exclusion applies to.", + "x-ms-enum": { + "name": "OwaspCrsExclusionEntrySelectorMatchOperator", + "modelAsString": true + } + }, + "selector": { + "type": "string", + "description": "When matchVariable is a collection, operator used to specify which elements in the collection this exclusion applies to." + } + } + } + } +} diff --git a/specification/network/resource-manager/readme.azureresourceschema.md b/specification/network/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 70f669f9ee51..000000000000 --- a/specification/network/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,1439 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-network-2021-02-01-preview - - tag: schema-network-2020-08-01 - - tag: schema-network-2020-07-01 - - tag: schema-network-2020-06-01 - - tag: schema-network-2020-05-01 - - tag: schema-network-2020-04-01 - - tag: schema-network-2020-03-01 - - tag: schema-network-2019-12-01 - - tag: schema-network-2019-11-01 - - tag: schema-network-2019-09-01 - - tag: schema-network-2019-08-01 - - tag: schema-network-2019-07-01 - - tag: schema-network-2019-06-01 - - tag: schema-network-2019-04-01 - - tag: schema-network-2019-02-01 - - tag: schema-network-2018-12-01 - - tag: schema-network-2018-11-01 - - tag: schema-network-2018-10-01 - - tag: schema-network-2018-08-01 - - tag: schema-network-2018-07-01 - - tag: schema-network-2018-06-01 - - tag: schema-network-2018-04-01 - - tag: schema-network-2018-02-01 - - tag: schema-network-2018-01-01 - - tag: schema-network-2017-11-01 - - tag: schema-network-2017-10-01 - - tag: schema-network-2017-09-01 - - tag: schema-network-2017-08-01 - - tag: schema-network-2017-06-01 - - tag: schema-network-2017-03-01 - - tag: schema-network-2016-12-01 - - tag: schema-network-2016-09-01 - - tag: schema-network-2016-06-01 - - tag: schema-network-2016-03-30 - - tag: schema-network-2015-06-15 - - tag: schema-network-2015-05-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-network-2021-02-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-network-2021-02-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/preview/2021-02-01-preview/network.json - - Microsoft.Network/preview/2021-02-01-preview/networkManager.json - - Microsoft.Network/preview/2021-02-01-preview/networkManagerActiveConfiguration.json - - Microsoft.Network/preview/2021-02-01-preview/networkManagerConnectivityConfiguration.json - - Microsoft.Network/preview/2021-02-01-preview/networkManagerEffectiveConfiguration.json - - Microsoft.Network/preview/2021-02-01-preview/networkManagerGroup.json - - Microsoft.Network/preview/2021-02-01-preview/networkManagerSecurityConfiguration.json - -``` - -### Tag: schema-network-2020-08-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2020-08-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2020-08-01/applicationGateway.json - - Microsoft.Network/stable/2020-08-01/applicationSecurityGroup.json - - Microsoft.Network/stable/2020-08-01/availableDelegations.json - - Microsoft.Network/stable/2020-08-01/availableServiceAliases.json - - Microsoft.Network/stable/2020-08-01/azureFirewall.json - - Microsoft.Network/stable/2020-08-01/azureFirewallFqdnTag.json - - Microsoft.Network/stable/2020-08-01/azureWebCategory.json - - Microsoft.Network/stable/2020-08-01/bastionHost.json - - Microsoft.Network/stable/2020-08-01/checkDnsAvailability.json - - Microsoft.Network/stable/2020-08-01/customIpPrefix.json - - Microsoft.Network/stable/2020-08-01/ddosCustomPolicy.json - - Microsoft.Network/stable/2020-08-01/ddosProtectionPlan.json - - Microsoft.Network/stable/2020-08-01/dscpConfiguration.json - - Microsoft.Network/stable/2020-08-01/endpointService.json - - Microsoft.Network/stable/2020-08-01/expressRouteCircuit.json - - Microsoft.Network/stable/2020-08-01/expressRouteCrossConnection.json - - Microsoft.Network/stable/2020-08-01/expressRoutePort.json - - Microsoft.Network/stable/2020-08-01/firewallPolicy.json - - Microsoft.Network/stable/2020-08-01/ipAllocation.json - - Microsoft.Network/stable/2020-08-01/ipGroups.json - - Microsoft.Network/stable/2020-08-01/loadBalancer.json - - Microsoft.Network/stable/2020-08-01/natGateway.json - - Microsoft.Network/stable/2020-08-01/networkInterface.json - - Microsoft.Network/stable/2020-08-01/networkProfile.json - - Microsoft.Network/stable/2020-08-01/networkSecurityGroup.json - - Microsoft.Network/stable/2020-08-01/networkVirtualAppliance.json - - Microsoft.Network/stable/2020-08-01/networkWatcher.json - - Microsoft.Network/stable/2020-08-01/operation.json - - Microsoft.Network/stable/2020-08-01/privateEndpoint.json - - Microsoft.Network/stable/2020-08-01/privateLinkService.json - - Microsoft.Network/stable/2020-08-01/publicIpAddress.json - - Microsoft.Network/stable/2020-08-01/publicIpPrefix.json - - Microsoft.Network/stable/2020-08-01/routeFilter.json - - Microsoft.Network/stable/2020-08-01/routeTable.json - - Microsoft.Network/stable/2020-08-01/securityPartnerProvider.json - - Microsoft.Network/stable/2020-08-01/serviceCommunity.json - - Microsoft.Network/stable/2020-08-01/serviceEndpointPolicy.json - - Microsoft.Network/stable/2020-08-01/serviceTags.json - - Microsoft.Network/stable/2020-08-01/usage.json - - Microsoft.Network/stable/2020-08-01/virtualNetwork.json - - Microsoft.Network/stable/2020-08-01/virtualNetworkGateway.json - - Microsoft.Network/stable/2020-08-01/virtualNetworkTap.json - - Microsoft.Network/stable/2020-08-01/virtualRouter.json - - Microsoft.Network/stable/2020-08-01/virtualWan.json - - Microsoft.Network/stable/2020-08-01/vmssNetworkInterface.json - - Microsoft.Network/stable/2020-08-01/vmssPublicIpAddress.json - - Microsoft.Network/stable/2020-08-01/webapplicationfirewall.json - - Microsoft.Network/stable/2020-08-01/cloudServiceNetworkInterface.json - - Microsoft.Network/stable/2020-08-01/cloudServicePublicIpAddress.json - - Microsoft.Network/stable/2020-08-01/network.json - -``` - -### Tag: schema-network-2020-07-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2020-07-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2020-07-01/applicationGateway.json - - Microsoft.Network/stable/2020-07-01/applicationSecurityGroup.json - - Microsoft.Network/stable/2020-07-01/availableDelegations.json - - Microsoft.Network/stable/2020-07-01/availableServiceAliases.json - - Microsoft.Network/stable/2020-07-01/azureFirewall.json - - Microsoft.Network/stable/2020-07-01/azureFirewallFqdnTag.json - - Microsoft.Network/stable/2020-07-01/azureWebCategory.json - - Microsoft.Network/stable/2020-07-01/bastionHost.json - - Microsoft.Network/stable/2020-07-01/checkDnsAvailability.json - - Microsoft.Network/stable/2020-07-01/customIpPrefix.json - - Microsoft.Network/stable/2020-07-01/ddosCustomPolicy.json - - Microsoft.Network/stable/2020-07-01/ddosProtectionPlan.json - - Microsoft.Network/stable/2020-07-01/dscpConfiguration.json - - Microsoft.Network/stable/2020-07-01/endpointService.json - - Microsoft.Network/stable/2020-07-01/expressRouteCircuit.json - - Microsoft.Network/stable/2020-07-01/expressRouteCrossConnection.json - - Microsoft.Network/stable/2020-07-01/expressRoutePort.json - - Microsoft.Network/stable/2020-07-01/firewallPolicy.json - - Microsoft.Network/stable/2020-07-01/ipAllocation.json - - Microsoft.Network/stable/2020-07-01/ipGroups.json - - Microsoft.Network/stable/2020-07-01/loadBalancer.json - - Microsoft.Network/stable/2020-07-01/natGateway.json - - Microsoft.Network/stable/2020-07-01/network.json - - Microsoft.Network/stable/2020-07-01/networkInterface.json - - Microsoft.Network/stable/2020-07-01/networkProfile.json - - Microsoft.Network/stable/2020-07-01/networkSecurityGroup.json - - Microsoft.Network/stable/2020-07-01/networkVirtualAppliance.json - - Microsoft.Network/stable/2020-07-01/networkWatcher.json - - Microsoft.Network/stable/2020-07-01/operation.json - - Microsoft.Network/stable/2020-07-01/privateEndpoint.json - - Microsoft.Network/stable/2020-07-01/privateLinkService.json - - Microsoft.Network/stable/2020-07-01/publicIpAddress.json - - Microsoft.Network/stable/2020-07-01/publicIpPrefix.json - - Microsoft.Network/stable/2020-07-01/routeFilter.json - - Microsoft.Network/stable/2020-07-01/routeTable.json - - Microsoft.Network/stable/2020-07-01/securityPartnerProvider.json - - Microsoft.Network/stable/2020-07-01/serviceCommunity.json - - Microsoft.Network/stable/2020-07-01/serviceEndpointPolicy.json - - Microsoft.Network/stable/2020-07-01/serviceTags.json - - Microsoft.Network/stable/2020-07-01/usage.json - - Microsoft.Network/stable/2020-07-01/virtualNetwork.json - - Microsoft.Network/stable/2020-07-01/virtualNetworkGateway.json - - Microsoft.Network/stable/2020-07-01/virtualNetworkTap.json - - Microsoft.Network/stable/2020-07-01/virtualRouter.json - - Microsoft.Network/stable/2020-07-01/virtualWan.json - - Microsoft.Network/stable/2020-07-01/vmssNetworkInterface.json - - Microsoft.Network/stable/2020-07-01/vmssPublicIpAddress.json - - Microsoft.Network/stable/2020-07-01/webapplicationfirewall.json - - Microsoft.Network/stable/2020-07-01/cloudServiceNetworkInterface.json - - Microsoft.Network/stable/2020-07-01/cloudServicePublicIpAddress.json - -``` - -### Tag: schema-network-2020-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2020-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2020-06-01/applicationGateway.json - - Microsoft.Network/stable/2020-06-01/applicationSecurityGroup.json - - Microsoft.Network/stable/2020-06-01/availableDelegations.json - - Microsoft.Network/stable/2020-06-01/availableServiceAliases.json - - Microsoft.Network/stable/2020-06-01/azureFirewall.json - - Microsoft.Network/stable/2020-06-01/azureFirewallFqdnTag.json - - Microsoft.Network/stable/2020-06-01/bastionHost.json - - Microsoft.Network/stable/2020-06-01/checkDnsAvailability.json - - Microsoft.Network/stable/2020-06-01/customIpPrefix.json - - Microsoft.Network/stable/2020-06-01/ddosCustomPolicy.json - - Microsoft.Network/stable/2020-06-01/ddosProtectionPlan.json - - Microsoft.Network/stable/2020-06-01/dscpConfiguration.json - - Microsoft.Network/stable/2020-06-01/endpointService.json - - Microsoft.Network/stable/2020-06-01/expressRouteCircuit.json - - Microsoft.Network/stable/2020-06-01/expressRouteCrossConnection.json - - Microsoft.Network/stable/2020-06-01/expressRoutePort.json - - Microsoft.Network/stable/2020-06-01/firewallPolicy.json - - Microsoft.Network/stable/2020-06-01/ipAllocation.json - - Microsoft.Network/stable/2020-06-01/ipGroups.json - - Microsoft.Network/stable/2020-06-01/loadBalancer.json - - Microsoft.Network/stable/2020-06-01/natGateway.json - - Microsoft.Network/stable/2020-06-01/network.json - - Microsoft.Network/stable/2020-06-01/networkInterface.json - - Microsoft.Network/stable/2020-06-01/networkProfile.json - - Microsoft.Network/stable/2020-06-01/networkSecurityGroup.json - - Microsoft.Network/stable/2020-06-01/networkVirtualAppliance.json - - Microsoft.Network/stable/2020-06-01/networkWatcher.json - - Microsoft.Network/stable/2020-06-01/operation.json - - Microsoft.Network/stable/2020-06-01/privateEndpoint.json - - Microsoft.Network/stable/2020-06-01/privateLinkService.json - - Microsoft.Network/stable/2020-06-01/publicIpAddress.json - - Microsoft.Network/stable/2020-06-01/publicIpPrefix.json - - Microsoft.Network/stable/2020-06-01/routeFilter.json - - Microsoft.Network/stable/2020-06-01/routeTable.json - - Microsoft.Network/stable/2020-06-01/securityPartnerProvider.json - - Microsoft.Network/stable/2020-06-01/serviceCommunity.json - - Microsoft.Network/stable/2020-06-01/serviceEndpointPolicy.json - - Microsoft.Network/stable/2020-06-01/serviceTags.json - - Microsoft.Network/stable/2020-06-01/usage.json - - Microsoft.Network/stable/2020-06-01/virtualNetwork.json - - Microsoft.Network/stable/2020-06-01/virtualNetworkGateway.json - - Microsoft.Network/stable/2020-06-01/virtualNetworkTap.json - - Microsoft.Network/stable/2020-06-01/virtualRouter.json - - Microsoft.Network/stable/2020-06-01/virtualWan.json - - Microsoft.Network/stable/2020-06-01/vmssNetworkInterface.json - - Microsoft.Network/stable/2020-06-01/vmssPublicIpAddress.json - - Microsoft.Network/stable/2020-06-01/webapplicationfirewall.json - -``` - -### Tag: schema-network-2020-05-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2020-05-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2020-05-01/applicationGateway.json - - Microsoft.Network/stable/2020-05-01/applicationSecurityGroup.json - - Microsoft.Network/stable/2020-05-01/availableDelegations.json - - Microsoft.Network/stable/2020-05-01/availableServiceAliases.json - - Microsoft.Network/stable/2020-05-01/azureFirewall.json - - Microsoft.Network/stable/2020-05-01/azureFirewallFqdnTag.json - - Microsoft.Network/stable/2020-05-01/bastionHost.json - - Microsoft.Network/stable/2020-05-01/checkDnsAvailability.json - - Microsoft.Network/stable/2020-05-01/ddosCustomPolicy.json - - Microsoft.Network/stable/2020-05-01/ddosProtectionPlan.json - - Microsoft.Network/stable/2020-05-01/endpointService.json - - Microsoft.Network/stable/2020-05-01/expressRouteCircuit.json - - Microsoft.Network/stable/2020-05-01/expressRouteCrossConnection.json - - Microsoft.Network/stable/2020-05-01/expressRoutePort.json - - Microsoft.Network/stable/2020-05-01/firewallPolicy.json - - Microsoft.Network/stable/2020-05-01/ipAllocation.json - - Microsoft.Network/stable/2020-05-01/ipGroups.json - - Microsoft.Network/stable/2020-05-01/loadBalancer.json - - Microsoft.Network/stable/2020-05-01/natGateway.json - - Microsoft.Network/stable/2020-05-01/network.json - - Microsoft.Network/stable/2020-05-01/networkInterface.json - - Microsoft.Network/stable/2020-05-01/networkProfile.json - - Microsoft.Network/stable/2020-05-01/networkSecurityGroup.json - - Microsoft.Network/stable/2020-05-01/networkVirtualAppliance.json - - Microsoft.Network/stable/2020-05-01/networkWatcher.json - - Microsoft.Network/stable/2020-05-01/operation.json - - Microsoft.Network/stable/2020-05-01/privateEndpoint.json - - Microsoft.Network/stable/2020-05-01/privateLinkService.json - - Microsoft.Network/stable/2020-05-01/publicIpAddress.json - - Microsoft.Network/stable/2020-05-01/publicIpPrefix.json - - Microsoft.Network/stable/2020-05-01/routeFilter.json - - Microsoft.Network/stable/2020-05-01/routeTable.json - - Microsoft.Network/stable/2020-05-01/securityPartnerProvider.json - - Microsoft.Network/stable/2020-05-01/serviceCommunity.json - - Microsoft.Network/stable/2020-05-01/serviceEndpointPolicy.json - - Microsoft.Network/stable/2020-05-01/serviceTags.json - - Microsoft.Network/stable/2020-05-01/usage.json - - Microsoft.Network/stable/2020-05-01/virtualNetwork.json - - Microsoft.Network/stable/2020-05-01/virtualNetworkGateway.json - - Microsoft.Network/stable/2020-05-01/virtualNetworkTap.json - - Microsoft.Network/stable/2020-05-01/virtualRouter.json - - Microsoft.Network/stable/2020-05-01/virtualWan.json - - Microsoft.Network/stable/2020-05-01/vmssNetworkInterface.json - - Microsoft.Network/stable/2020-05-01/vmssPublicIpAddress.json - - Microsoft.Network/stable/2020-05-01/webapplicationfirewall.json - -``` - -### Tag: schema-network-2020-04-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2020-04-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2020-04-01/applicationGateway.json - - Microsoft.Network/stable/2020-04-01/applicationSecurityGroup.json - - Microsoft.Network/stable/2020-04-01/availableDelegations.json - - Microsoft.Network/stable/2020-04-01/availableServiceAliases.json - - Microsoft.Network/stable/2020-04-01/azureFirewall.json - - Microsoft.Network/stable/2020-04-01/azureFirewallFqdnTag.json - - Microsoft.Network/stable/2020-04-01/bastionHost.json - - Microsoft.Network/stable/2020-04-01/checkDnsAvailability.json - - Microsoft.Network/stable/2020-04-01/ddosCustomPolicy.json - - Microsoft.Network/stable/2020-04-01/ddosProtectionPlan.json - - Microsoft.Network/stable/2020-04-01/endpointService.json - - Microsoft.Network/stable/2020-04-01/expressRouteCircuit.json - - Microsoft.Network/stable/2020-04-01/expressRouteCrossConnection.json - - Microsoft.Network/stable/2020-04-01/expressRoutePort.json - - Microsoft.Network/stable/2020-04-01/firewallPolicy.json - - Microsoft.Network/stable/2020-04-01/ipAllocation.json - - Microsoft.Network/stable/2020-04-01/ipGroups.json - - Microsoft.Network/stable/2020-04-01/loadBalancer.json - - Microsoft.Network/stable/2020-04-01/natGateway.json - - Microsoft.Network/stable/2020-04-01/network.json - - Microsoft.Network/stable/2020-04-01/networkInterface.json - - Microsoft.Network/stable/2020-04-01/networkProfile.json - - Microsoft.Network/stable/2020-04-01/networkSecurityGroup.json - - Microsoft.Network/stable/2020-04-01/networkVirtualAppliance.json - - Microsoft.Network/stable/2020-04-01/networkWatcher.json - - Microsoft.Network/stable/2020-04-01/operation.json - - Microsoft.Network/stable/2020-04-01/privateEndpoint.json - - Microsoft.Network/stable/2020-04-01/privateLinkService.json - - Microsoft.Network/stable/2020-04-01/publicIpAddress.json - - Microsoft.Network/stable/2020-04-01/publicIpPrefix.json - - Microsoft.Network/stable/2020-04-01/routeFilter.json - - Microsoft.Network/stable/2020-04-01/routeTable.json - - Microsoft.Network/stable/2020-04-01/securityPartnerProvider.json - - Microsoft.Network/stable/2020-04-01/serviceCommunity.json - - Microsoft.Network/stable/2020-04-01/serviceEndpointPolicy.json - - Microsoft.Network/stable/2020-04-01/serviceTags.json - - Microsoft.Network/stable/2020-04-01/usage.json - - Microsoft.Network/stable/2020-04-01/virtualNetwork.json - - Microsoft.Network/stable/2020-04-01/virtualNetworkGateway.json - - Microsoft.Network/stable/2020-04-01/virtualNetworkTap.json - - Microsoft.Network/stable/2020-04-01/virtualRouter.json - - Microsoft.Network/stable/2020-04-01/virtualWan.json - - Microsoft.Network/stable/2020-04-01/vmssNetworkInterface.json - - Microsoft.Network/stable/2020-04-01/vmssPublicIpAddress.json - - Microsoft.Network/stable/2020-04-01/webapplicationfirewall.json - -``` - -### Tag: schema-network-2020-03-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2020-03-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2020-03-01/applicationGateway.json - - Microsoft.Network/stable/2020-03-01/applicationSecurityGroup.json - - Microsoft.Network/stable/2020-03-01/availableDelegations.json - - Microsoft.Network/stable/2020-03-01/availableServiceAliases.json - - Microsoft.Network/stable/2020-03-01/azureFirewall.json - - Microsoft.Network/stable/2020-03-01/azureFirewallFqdnTag.json - - Microsoft.Network/stable/2020-03-01/bastionHost.json - - Microsoft.Network/stable/2020-03-01/checkDnsAvailability.json - - Microsoft.Network/stable/2020-03-01/ddosCustomPolicy.json - - Microsoft.Network/stable/2020-03-01/ddosProtectionPlan.json - - Microsoft.Network/stable/2020-03-01/endpointService.json - - Microsoft.Network/stable/2020-03-01/expressRouteCircuit.json - - Microsoft.Network/stable/2020-03-01/expressRouteCrossConnection.json - - Microsoft.Network/stable/2020-03-01/expressRoutePort.json - - Microsoft.Network/stable/2020-03-01/firewallPolicy.json - - Microsoft.Network/stable/2020-03-01/ipAllocation.json - - Microsoft.Network/stable/2020-03-01/ipGroups.json - - Microsoft.Network/stable/2020-03-01/loadBalancer.json - - Microsoft.Network/stable/2020-03-01/natGateway.json - - Microsoft.Network/stable/2020-03-01/network.json - - Microsoft.Network/stable/2020-03-01/networkInterface.json - - Microsoft.Network/stable/2020-03-01/networkProfile.json - - Microsoft.Network/stable/2020-03-01/networkSecurityGroup.json - - Microsoft.Network/stable/2020-03-01/networkVirtualAppliance.json - - Microsoft.Network/stable/2020-03-01/networkWatcher.json - - Microsoft.Network/stable/2020-03-01/operation.json - - Microsoft.Network/stable/2020-03-01/privateEndpoint.json - - Microsoft.Network/stable/2020-03-01/privateLinkService.json - - Microsoft.Network/stable/2020-03-01/publicIpAddress.json - - Microsoft.Network/stable/2020-03-01/publicIpPrefix.json - - Microsoft.Network/stable/2020-03-01/routeFilter.json - - Microsoft.Network/stable/2020-03-01/routeTable.json - - Microsoft.Network/stable/2020-03-01/securityPartnerProvider.json - - Microsoft.Network/stable/2020-03-01/serviceCommunity.json - - Microsoft.Network/stable/2020-03-01/serviceEndpointPolicy.json - - Microsoft.Network/stable/2020-03-01/serviceTags.json - - Microsoft.Network/stable/2020-03-01/usage.json - - Microsoft.Network/stable/2020-03-01/virtualNetwork.json - - Microsoft.Network/stable/2020-03-01/virtualNetworkGateway.json - - Microsoft.Network/stable/2020-03-01/virtualNetworkTap.json - - Microsoft.Network/stable/2020-03-01/virtualRouter.json - - Microsoft.Network/stable/2020-03-01/virtualWan.json - - Microsoft.Network/stable/2020-03-01/vmssNetworkInterface.json - - Microsoft.Network/stable/2020-03-01/vmssPublicIpAddress.json - - Microsoft.Network/stable/2020-03-01/webapplicationfirewall.json - -``` - -### Tag: schema-network-2019-12-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2019-12-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2019-12-01/applicationGateway.json - - Microsoft.Network/stable/2019-12-01/applicationSecurityGroup.json - - Microsoft.Network/stable/2019-12-01/availableDelegations.json - - Microsoft.Network/stable/2019-12-01/availableServiceAliases.json - - Microsoft.Network/stable/2019-12-01/azureFirewall.json - - Microsoft.Network/stable/2019-12-01/azureFirewallFqdnTag.json - - Microsoft.Network/stable/2019-12-01/bastionHost.json - - Microsoft.Network/stable/2019-12-01/checkDnsAvailability.json - - Microsoft.Network/stable/2019-12-01/ddosCustomPolicy.json - - Microsoft.Network/stable/2019-12-01/ddosProtectionPlan.json - - Microsoft.Network/stable/2019-12-01/endpointService.json - - Microsoft.Network/stable/2019-12-01/expressRouteCircuit.json - - Microsoft.Network/stable/2019-12-01/expressRouteCrossConnection.json - - Microsoft.Network/stable/2019-12-01/expressRouteGateway.json - - Microsoft.Network/stable/2019-12-01/expressRoutePort.json - - Microsoft.Network/stable/2019-12-01/firewallPolicy.json - - Microsoft.Network/stable/2019-12-01/ipGroups.json - - Microsoft.Network/stable/2019-12-01/loadBalancer.json - - Microsoft.Network/stable/2019-12-01/natGateway.json - - Microsoft.Network/stable/2019-12-01/network.json - - Microsoft.Network/stable/2019-12-01/networkInterface.json - - Microsoft.Network/stable/2019-12-01/networkProfile.json - - Microsoft.Network/stable/2019-12-01/networkSecurityGroup.json - - Microsoft.Network/stable/2019-12-01/networkVirtualAppliance.json - - Microsoft.Network/stable/2019-12-01/networkWatcher.json - - Microsoft.Network/stable/2019-12-01/operation.json - - Microsoft.Network/stable/2019-12-01/privateEndpoint.json - - Microsoft.Network/stable/2019-12-01/privateLinkService.json - - Microsoft.Network/stable/2019-12-01/publicIpAddress.json - - Microsoft.Network/stable/2019-12-01/publicIpPrefix.json - - Microsoft.Network/stable/2019-12-01/routeFilter.json - - Microsoft.Network/stable/2019-12-01/routeTable.json - - Microsoft.Network/stable/2019-12-01/serviceCommunity.json - - Microsoft.Network/stable/2019-12-01/serviceEndpointPolicy.json - - Microsoft.Network/stable/2019-12-01/serviceTags.json - - Microsoft.Network/stable/2019-12-01/usage.json - - Microsoft.Network/stable/2019-12-01/virtualNetwork.json - - Microsoft.Network/stable/2019-12-01/virtualNetworkGateway.json - - Microsoft.Network/stable/2019-12-01/virtualNetworkTap.json - - Microsoft.Network/stable/2019-12-01/virtualRouter.json - - Microsoft.Network/stable/2019-12-01/virtualWan.json - - Microsoft.Network/stable/2019-12-01/vmssNetworkInterface.json - - Microsoft.Network/stable/2019-12-01/vmssPublicIpAddress.json - - Microsoft.Network/stable/2019-12-01/webapplicationfirewall.json - -``` - -### Tag: schema-network-2019-11-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2019-11-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2019-11-01/applicationGateway.json - - Microsoft.Network/stable/2019-11-01/applicationSecurityGroup.json - - Microsoft.Network/stable/2019-11-01/availableDelegations.json - - Microsoft.Network/stable/2019-11-01/availableServiceAliases.json - - Microsoft.Network/stable/2019-11-01/azureFirewall.json - - Microsoft.Network/stable/2019-11-01/azureFirewallFqdnTag.json - - Microsoft.Network/stable/2019-11-01/bastionHost.json - - Microsoft.Network/stable/2019-11-01/checkDnsAvailability.json - - Microsoft.Network/stable/2019-11-01/ddosCustomPolicy.json - - Microsoft.Network/stable/2019-11-01/ddosProtectionPlan.json - - Microsoft.Network/stable/2019-11-01/endpointService.json - - Microsoft.Network/stable/2019-11-01/expressRouteCircuit.json - - Microsoft.Network/stable/2019-11-01/expressRouteCrossConnection.json - - Microsoft.Network/stable/2019-11-01/expressRouteGateway.json - - Microsoft.Network/stable/2019-11-01/expressRoutePort.json - - Microsoft.Network/stable/2019-11-01/firewallPolicy.json - - Microsoft.Network/stable/2019-11-01/ipGroups.json - - Microsoft.Network/stable/2019-11-01/loadBalancer.json - - Microsoft.Network/stable/2019-11-01/natGateway.json - - Microsoft.Network/stable/2019-11-01/network.json - - Microsoft.Network/stable/2019-11-01/networkInterface.json - - Microsoft.Network/stable/2019-11-01/networkProfile.json - - Microsoft.Network/stable/2019-11-01/networkSecurityGroup.json - - Microsoft.Network/stable/2019-11-01/networkWatcher.json - - Microsoft.Network/stable/2019-11-01/operation.json - - Microsoft.Network/stable/2019-11-01/privateEndpoint.json - - Microsoft.Network/stable/2019-11-01/privateLinkService.json - - Microsoft.Network/stable/2019-11-01/publicIpAddress.json - - Microsoft.Network/stable/2019-11-01/publicIpPrefix.json - - Microsoft.Network/stable/2019-11-01/routeFilter.json - - Microsoft.Network/stable/2019-11-01/routeTable.json - - Microsoft.Network/stable/2019-11-01/serviceCommunity.json - - Microsoft.Network/stable/2019-11-01/serviceEndpointPolicy.json - - Microsoft.Network/stable/2019-11-01/serviceTags.json - - Microsoft.Network/stable/2019-11-01/usage.json - - Microsoft.Network/stable/2019-11-01/virtualNetwork.json - - Microsoft.Network/stable/2019-11-01/virtualNetworkGateway.json - - Microsoft.Network/stable/2019-11-01/virtualNetworkTap.json - - Microsoft.Network/stable/2019-11-01/virtualRouter.json - - Microsoft.Network/stable/2019-11-01/virtualWan.json - - Microsoft.Network/stable/2019-11-01/vmssNetworkInterface.json - - Microsoft.Network/stable/2019-11-01/vmssPublicIpAddress.json - - Microsoft.Network/stable/2019-11-01/webapplicationfirewall.json - -``` - -### Tag: schema-network-2019-09-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2019-09-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2019-09-01/applicationGateway.json - - Microsoft.Network/stable/2019-09-01/applicationSecurityGroup.json - - Microsoft.Network/stable/2019-09-01/availableDelegations.json - - Microsoft.Network/stable/2019-09-01/availableServiceAliases.json - - Microsoft.Network/stable/2019-09-01/azureFirewall.json - - Microsoft.Network/stable/2019-09-01/azureFirewallFqdnTag.json - - Microsoft.Network/stable/2019-09-01/bastionHost.json - - Microsoft.Network/stable/2019-09-01/checkDnsAvailability.json - - Microsoft.Network/stable/2019-09-01/ddosCustomPolicy.json - - Microsoft.Network/stable/2019-09-01/ddosProtectionPlan.json - - Microsoft.Network/stable/2019-09-01/endpointService.json - - Microsoft.Network/stable/2019-09-01/expressRouteCircuit.json - - Microsoft.Network/stable/2019-09-01/expressRouteCrossConnection.json - - Microsoft.Network/stable/2019-09-01/expressRouteGateway.json - - Microsoft.Network/stable/2019-09-01/expressRoutePort.json - - Microsoft.Network/stable/2019-09-01/firewallPolicy.json - - Microsoft.Network/stable/2019-09-01/ipGroups.json - - Microsoft.Network/stable/2019-09-01/loadBalancer.json - - Microsoft.Network/stable/2019-09-01/natGateway.json - - Microsoft.Network/stable/2019-09-01/network.json - - Microsoft.Network/stable/2019-09-01/networkInterface.json - - Microsoft.Network/stable/2019-09-01/networkProfile.json - - Microsoft.Network/stable/2019-09-01/networkSecurityGroup.json - - Microsoft.Network/stable/2019-09-01/networkWatcher.json - - Microsoft.Network/stable/2019-09-01/networkWatcherConnectionMonitorV1.json - - Microsoft.Network/stable/2019-09-01/operation.json - - Microsoft.Network/stable/2019-09-01/privateEndpoint.json - - Microsoft.Network/stable/2019-09-01/privateLinkService.json - - Microsoft.Network/stable/2019-09-01/publicIpAddress.json - - Microsoft.Network/stable/2019-09-01/publicIpPrefix.json - - Microsoft.Network/stable/2019-09-01/routeFilter.json - - Microsoft.Network/stable/2019-09-01/routeTable.json - - Microsoft.Network/stable/2019-09-01/serviceCommunity.json - - Microsoft.Network/stable/2019-09-01/serviceEndpointPolicy.json - - Microsoft.Network/stable/2019-09-01/serviceTags.json - - Microsoft.Network/stable/2019-09-01/usage.json - - Microsoft.Network/stable/2019-09-01/virtualNetwork.json - - Microsoft.Network/stable/2019-09-01/virtualNetworkGateway.json - - Microsoft.Network/stable/2019-09-01/virtualNetworkTap.json - - Microsoft.Network/stable/2019-09-01/virtualRouter.json - - Microsoft.Network/stable/2019-09-01/virtualWan.json - - Microsoft.Network/stable/2019-09-01/vmssNetworkInterface.json - - Microsoft.Network/stable/2019-09-01/vmssPublicIpAddress.json - - Microsoft.Network/stable/2019-09-01/webapplicationfirewall.json - -``` - -### Tag: schema-network-2019-08-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2019-08-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2019-08-01/applicationGateway.json - - Microsoft.Network/stable/2019-08-01/applicationSecurityGroup.json - - Microsoft.Network/stable/2019-08-01/availableDelegations.json - - Microsoft.Network/stable/2019-08-01/availableServiceAliases.json - - Microsoft.Network/stable/2019-08-01/azureFirewall.json - - Microsoft.Network/stable/2019-08-01/azureFirewallFqdnTag.json - - Microsoft.Network/stable/2019-08-01/bastionHost.json - - Microsoft.Network/stable/2019-08-01/checkDnsAvailability.json - - Microsoft.Network/stable/2019-08-01/ddosCustomPolicy.json - - Microsoft.Network/stable/2019-08-01/ddosProtectionPlan.json - - Microsoft.Network/stable/2019-08-01/endpointService.json - - Microsoft.Network/stable/2019-08-01/expressRouteCircuit.json - - Microsoft.Network/stable/2019-08-01/expressRouteCrossConnection.json - - Microsoft.Network/stable/2019-08-01/expressRouteGateway.json - - Microsoft.Network/stable/2019-08-01/expressRoutePort.json - - Microsoft.Network/stable/2019-08-01/firewallPolicy.json - - Microsoft.Network/stable/2019-08-01/loadBalancer.json - - Microsoft.Network/stable/2019-08-01/natGateway.json - - Microsoft.Network/stable/2019-08-01/network.json - - Microsoft.Network/stable/2019-08-01/networkInterface.json - - Microsoft.Network/stable/2019-08-01/networkProfile.json - - Microsoft.Network/stable/2019-08-01/networkSecurityGroup.json - - Microsoft.Network/stable/2019-08-01/networkWatcher.json - - Microsoft.Network/stable/2019-08-01/networkWatcherConnectionMonitorV1.json - - Microsoft.Network/stable/2019-08-01/operation.json - - Microsoft.Network/stable/2019-08-01/privateEndpoint.json - - Microsoft.Network/stable/2019-08-01/privateLinkService.json - - Microsoft.Network/stable/2019-08-01/publicIpAddress.json - - Microsoft.Network/stable/2019-08-01/publicIpPrefix.json - - Microsoft.Network/stable/2019-08-01/routeFilter.json - - Microsoft.Network/stable/2019-08-01/routeTable.json - - Microsoft.Network/stable/2019-08-01/serviceCommunity.json - - Microsoft.Network/stable/2019-08-01/serviceEndpointPolicy.json - - Microsoft.Network/stable/2019-08-01/serviceTags.json - - Microsoft.Network/stable/2019-08-01/usage.json - - Microsoft.Network/stable/2019-08-01/virtualNetwork.json - - Microsoft.Network/stable/2019-08-01/virtualNetworkGateway.json - - Microsoft.Network/stable/2019-08-01/virtualNetworkTap.json - - Microsoft.Network/stable/2019-08-01/virtualRouter.json - - Microsoft.Network/stable/2019-08-01/virtualWan.json - - Microsoft.Network/stable/2019-08-01/vmssNetworkInterface.json - - Microsoft.Network/stable/2019-08-01/vmssPublicIpAddress.json - - Microsoft.Network/stable/2019-08-01/webapplicationfirewall.json - -``` - -### Tag: schema-network-2019-07-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2019-07-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2019-07-01/applicationGateway.json - - Microsoft.Network/stable/2019-07-01/applicationSecurityGroup.json - - Microsoft.Network/stable/2019-07-01/availableDelegations.json - - Microsoft.Network/stable/2019-07-01/azureFirewall.json - - Microsoft.Network/stable/2019-07-01/azureFirewallFqdnTag.json - - Microsoft.Network/stable/2019-07-01/bastionHost.json - - Microsoft.Network/stable/2019-07-01/checkDnsAvailability.json - - Microsoft.Network/stable/2019-07-01/ddosCustomPolicy.json - - Microsoft.Network/stable/2019-07-01/ddosProtectionPlan.json - - Microsoft.Network/stable/2019-07-01/endpointService.json - - Microsoft.Network/stable/2019-07-01/expressRouteCircuit.json - - Microsoft.Network/stable/2019-07-01/expressRouteCrossConnection.json - - Microsoft.Network/stable/2019-07-01/expressRouteGateway.json - - Microsoft.Network/stable/2019-07-01/expressRoutePort.json - - Microsoft.Network/stable/2019-07-01/firewallPolicy.json - - Microsoft.Network/stable/2019-07-01/loadBalancer.json - - Microsoft.Network/stable/2019-07-01/natGateway.json - - Microsoft.Network/stable/2019-07-01/network.json - - Microsoft.Network/stable/2019-07-01/networkInterface.json - - Microsoft.Network/stable/2019-07-01/networkProfile.json - - Microsoft.Network/stable/2019-07-01/networkSecurityGroup.json - - Microsoft.Network/stable/2019-07-01/networkWatcher.json - - Microsoft.Network/stable/2019-07-01/networkWatcherConnectionMonitorV1.json - - Microsoft.Network/stable/2019-07-01/operation.json - - Microsoft.Network/stable/2019-07-01/privateEndpoint.json - - Microsoft.Network/stable/2019-07-01/privateLinkService.json - - Microsoft.Network/stable/2019-07-01/publicIpAddress.json - - Microsoft.Network/stable/2019-07-01/publicIpPrefix.json - - Microsoft.Network/stable/2019-07-01/routeFilter.json - - Microsoft.Network/stable/2019-07-01/routeTable.json - - Microsoft.Network/stable/2019-07-01/serviceCommunity.json - - Microsoft.Network/stable/2019-07-01/serviceEndpointPolicy.json - - Microsoft.Network/stable/2019-07-01/serviceTags.json - - Microsoft.Network/stable/2019-07-01/usage.json - - Microsoft.Network/stable/2019-07-01/virtualNetwork.json - - Microsoft.Network/stable/2019-07-01/virtualNetworkGateway.json - - Microsoft.Network/stable/2019-07-01/virtualNetworkTap.json - - Microsoft.Network/stable/2019-07-01/virtualRouter.json - - Microsoft.Network/stable/2019-07-01/virtualWan.json - - Microsoft.Network/stable/2019-07-01/vmssNetworkInterface.json - - Microsoft.Network/stable/2019-07-01/vmssPublicIpAddress.json - - Microsoft.Network/stable/2019-07-01/webapplicationfirewall.json - -``` - -### Tag: schema-network-2019-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2019-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2019-06-01/applicationGateway.json - - Microsoft.Network/stable/2019-06-01/applicationSecurityGroup.json - - Microsoft.Network/stable/2019-06-01/availableDelegations.json - - Microsoft.Network/stable/2019-06-01/azureFirewall.json - - Microsoft.Network/stable/2019-06-01/azureFirewallFqdnTag.json - - Microsoft.Network/stable/2019-06-01/bastionHost.json - - Microsoft.Network/stable/2019-06-01/checkDnsAvailability.json - - Microsoft.Network/stable/2019-06-01/ddosCustomPolicy.json - - Microsoft.Network/stable/2019-06-01/ddosProtectionPlan.json - - Microsoft.Network/stable/2019-06-01/endpointService.json - - Microsoft.Network/stable/2019-06-01/expressRouteCircuit.json - - Microsoft.Network/stable/2019-06-01/expressRouteCrossConnection.json - - Microsoft.Network/stable/2019-06-01/expressRouteGateway.json - - Microsoft.Network/stable/2019-06-01/expressRoutePort.json - - Microsoft.Network/stable/2019-06-01/firewallPolicy.json - - Microsoft.Network/stable/2019-06-01/loadBalancer.json - - Microsoft.Network/stable/2019-06-01/natGateway.json - - Microsoft.Network/stable/2019-06-01/network.json - - Microsoft.Network/stable/2019-06-01/networkInterface.json - - Microsoft.Network/stable/2019-06-01/networkProfile.json - - Microsoft.Network/stable/2019-06-01/networkSecurityGroup.json - - Microsoft.Network/stable/2019-06-01/networkWatcher.json - - Microsoft.Network/stable/2019-06-01/networkWatcherConnectionMonitorV1.json - - Microsoft.Network/stable/2019-06-01/operation.json - - Microsoft.Network/stable/2019-06-01/privateEndpoint.json - - Microsoft.Network/stable/2019-06-01/privateLinkService.json - - Microsoft.Network/stable/2019-06-01/publicIpAddress.json - - Microsoft.Network/stable/2019-06-01/publicIpPrefix.json - - Microsoft.Network/stable/2019-06-01/routeFilter.json - - Microsoft.Network/stable/2019-06-01/routeTable.json - - Microsoft.Network/stable/2019-06-01/serviceCommunity.json - - Microsoft.Network/stable/2019-06-01/serviceEndpointPolicy.json - - Microsoft.Network/stable/2019-06-01/serviceTags.json - - Microsoft.Network/stable/2019-06-01/usage.json - - Microsoft.Network/stable/2019-06-01/virtualNetwork.json - - Microsoft.Network/stable/2019-06-01/virtualNetworkGateway.json - - Microsoft.Network/stable/2019-06-01/virtualNetworkTap.json - - Microsoft.Network/stable/2019-06-01/virtualWan.json - - Microsoft.Network/stable/2019-06-01/vmssNetworkInterface.json - - Microsoft.Network/stable/2019-06-01/vmssPublicIpAddress.json - - Microsoft.Network/stable/2019-06-01/webapplicationfirewall.json - -``` - -### Tag: schema-network-2019-04-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2019-04-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2019-04-01/applicationGateway.json - - Microsoft.Network/stable/2019-04-01/applicationSecurityGroup.json - - Microsoft.Network/stable/2019-04-01/availableDelegations.json - - Microsoft.Network/stable/2019-04-01/azureFirewall.json - - Microsoft.Network/stable/2019-04-01/azureFirewallFqdnTag.json - - Microsoft.Network/stable/2019-04-01/bastionHost.json - - Microsoft.Network/stable/2019-04-01/checkDnsAvailability.json - - Microsoft.Network/stable/2019-04-01/ddosCustomPolicy.json - - Microsoft.Network/stable/2019-04-01/ddosProtectionPlan.json - - Microsoft.Network/stable/2019-04-01/endpointService.json - - Microsoft.Network/stable/2019-04-01/expressRouteCircuit.json - - Microsoft.Network/stable/2019-04-01/expressRouteCrossConnection.json - - Microsoft.Network/stable/2019-04-01/expressRouteGateway.json - - Microsoft.Network/stable/2019-04-01/expressRoutePort.json - - Microsoft.Network/stable/2019-04-01/privateEndpoint.json - - Microsoft.Network/stable/2019-04-01/privateLinkService.json - - Microsoft.Network/stable/2019-04-01/loadBalancer.json - - Microsoft.Network/stable/2019-04-01/natGateway.json - - Microsoft.Network/stable/2019-04-01/network.json - - Microsoft.Network/stable/2019-04-01/networkInterface.json - - Microsoft.Network/stable/2019-04-01/networkProfile.json - - Microsoft.Network/stable/2019-04-01/networkSecurityGroup.json - - Microsoft.Network/stable/2019-04-01/networkWatcher.json - - Microsoft.Network/stable/2019-04-01/operation.json - - Microsoft.Network/stable/2019-04-01/publicIpAddress.json - - Microsoft.Network/stable/2019-04-01/publicIpPrefix.json - - Microsoft.Network/stable/2019-04-01/routeFilter.json - - Microsoft.Network/stable/2019-04-01/routeTable.json - - Microsoft.Network/stable/2019-04-01/serviceCommunity.json - - Microsoft.Network/stable/2019-04-01/serviceEndpointPolicy.json - - Microsoft.Network/stable/2019-04-01/serviceTags.json - - Microsoft.Network/stable/2019-04-01/usage.json - - Microsoft.Network/stable/2019-04-01/virtualNetwork.json - - Microsoft.Network/stable/2019-04-01/virtualNetworkGateway.json - - Microsoft.Network/stable/2019-04-01/virtualNetworkTap.json - - Microsoft.Network/stable/2019-04-01/virtualWan.json - - Microsoft.Network/stable/2019-04-01/vmssNetworkInterface.json - - Microsoft.Network/stable/2019-04-01/vmssPublicIpAddress.json - - Microsoft.Network/stable/2019-04-01/webapplicationfirewall.json - -``` - -### Tag: schema-network-2019-02-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2019-02-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2019-02-01/applicationGateway.json - - Microsoft.Network/stable/2019-02-01/applicationSecurityGroup.json - - Microsoft.Network/stable/2019-02-01/availableDelegations.json - - Microsoft.Network/stable/2019-02-01/azureFirewall.json - - Microsoft.Network/stable/2019-02-01/azureFirewallFqdnTag.json - - Microsoft.Network/stable/2019-02-01/checkDnsAvailability.json - - Microsoft.Network/stable/2019-02-01/ddosCustomPolicy.json - - Microsoft.Network/stable/2019-02-01/ddosProtectionPlan.json - - Microsoft.Network/stable/2019-02-01/endpointService.json - - Microsoft.Network/stable/2019-02-01/expressRouteCircuit.json - - Microsoft.Network/stable/2019-02-01/expressRouteCrossConnection.json - - Microsoft.Network/stable/2019-02-01/expressRouteGateway.json - - Microsoft.Network/stable/2019-02-01/expressRoutePort.json - - Microsoft.Network/stable/2019-02-01/interfaceEndpoint.json - - Microsoft.Network/stable/2019-02-01/loadBalancer.json - - Microsoft.Network/stable/2019-02-01/natGateway.json - - Microsoft.Network/stable/2019-02-01/network.json - - Microsoft.Network/stable/2019-02-01/networkInterface.json - - Microsoft.Network/stable/2019-02-01/networkProfile.json - - Microsoft.Network/stable/2019-02-01/networkSecurityGroup.json - - Microsoft.Network/stable/2019-02-01/networkWatcher.json - - Microsoft.Network/stable/2019-02-01/operation.json - - Microsoft.Network/stable/2019-02-01/publicIpAddress.json - - Microsoft.Network/stable/2019-02-01/publicIpPrefix.json - - Microsoft.Network/stable/2019-02-01/routeFilter.json - - Microsoft.Network/stable/2019-02-01/routeTable.json - - Microsoft.Network/stable/2019-02-01/serviceCommunity.json - - Microsoft.Network/stable/2019-02-01/serviceEndpointPolicy.json - - Microsoft.Network/stable/2019-02-01/usage.json - - Microsoft.Network/stable/2019-02-01/virtualNetwork.json - - Microsoft.Network/stable/2019-02-01/virtualNetworkGateway.json - - Microsoft.Network/stable/2019-02-01/virtualNetworkTap.json - - Microsoft.Network/stable/2019-02-01/virtualWan.json - - Microsoft.Network/stable/2019-02-01/vmssNetworkInterface.json - - Microsoft.Network/stable/2019-02-01/vmssPublicIpAddress.json - - Microsoft.Network/stable/2019-02-01/webapplicationfirewall.json - -``` - -### Tag: schema-network-2018-12-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2018-12-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2018-12-01/applicationGateway.json - - Microsoft.Network/stable/2018-12-01/applicationSecurityGroup.json - - Microsoft.Network/stable/2018-12-01/availableDelegations.json - - Microsoft.Network/stable/2018-12-01/azureFirewall.json - - Microsoft.Network/stable/2018-12-01/azureFirewallFqdnTag.json - - Microsoft.Network/stable/2018-12-01/checkDnsAvailability.json - - Microsoft.Network/stable/2018-12-01/ddosCustomPolicy.json - - Microsoft.Network/stable/2018-12-01/ddosProtectionPlan.json - - Microsoft.Network/stable/2018-12-01/endpointService.json - - Microsoft.Network/stable/2018-12-01/expressRouteCircuit.json - - Microsoft.Network/stable/2018-12-01/expressRouteCrossConnection.json - - Microsoft.Network/stable/2018-12-01/expressRouteGateway.json - - Microsoft.Network/stable/2018-12-01/expressRoutePort.json - - Microsoft.Network/stable/2018-12-01/interfaceEndpoint.json - - Microsoft.Network/stable/2018-12-01/loadBalancer.json - - Microsoft.Network/stable/2018-12-01/network.json - - Microsoft.Network/stable/2018-12-01/networkInterface.json - - Microsoft.Network/stable/2018-12-01/networkProfile.json - - Microsoft.Network/stable/2018-12-01/networkSecurityGroup.json - - Microsoft.Network/stable/2018-12-01/networkWatcher.json - - Microsoft.Network/stable/2018-12-01/operation.json - - Microsoft.Network/stable/2018-12-01/publicIpAddress.json - - Microsoft.Network/stable/2018-12-01/publicIpPrefix.json - - Microsoft.Network/stable/2018-12-01/routeFilter.json - - Microsoft.Network/stable/2018-12-01/routeTable.json - - Microsoft.Network/stable/2018-12-01/serviceCommunity.json - - Microsoft.Network/stable/2018-12-01/serviceEndpointPolicy.json - - Microsoft.Network/stable/2018-12-01/usage.json - - Microsoft.Network/stable/2018-12-01/virtualNetwork.json - - Microsoft.Network/stable/2018-12-01/virtualNetworkGateway.json - - Microsoft.Network/stable/2018-12-01/virtualNetworkTap.json - - Microsoft.Network/stable/2018-12-01/virtualWan.json - - Microsoft.Network/stable/2018-12-01/vmssNetworkInterface.json - - Microsoft.Network/stable/2018-12-01/vmssPublicIpAddress.json - - Microsoft.Network/stable/2018-12-01/webapplicationfirewall.json - -``` - -### Tag: schema-network-2018-11-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2018-11-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2018-11-01/applicationGateway.json - - Microsoft.Network/stable/2018-11-01/applicationSecurityGroup.json - - Microsoft.Network/stable/2018-11-01/availableDelegations.json - - Microsoft.Network/stable/2018-11-01/azureFirewall.json - - Microsoft.Network/stable/2018-11-01/azureFirewallFqdnTag.json - - Microsoft.Network/stable/2018-11-01/checkDnsAvailability.json - - Microsoft.Network/stable/2018-11-01/ddosCustomPolicy.json - - Microsoft.Network/stable/2018-11-01/ddosProtectionPlan.json - - Microsoft.Network/stable/2018-11-01/endpointService.json - - Microsoft.Network/stable/2018-11-01/expressRouteCircuit.json - - Microsoft.Network/stable/2018-11-01/expressRouteCrossConnection.json - - Microsoft.Network/stable/2018-11-01/expressRouteGateway.json - - Microsoft.Network/stable/2018-11-01/expressRoutePort.json - - Microsoft.Network/stable/2018-11-01/interfaceEndpoint.json - - Microsoft.Network/stable/2018-11-01/loadBalancer.json - - Microsoft.Network/stable/2018-11-01/network.json - - Microsoft.Network/stable/2018-11-01/networkInterface.json - - Microsoft.Network/stable/2018-11-01/networkProfile.json - - Microsoft.Network/stable/2018-11-01/networkSecurityGroup.json - - Microsoft.Network/stable/2018-11-01/networkWatcher.json - - Microsoft.Network/stable/2018-11-01/operation.json - - Microsoft.Network/stable/2018-11-01/publicIpAddress.json - - Microsoft.Network/stable/2018-11-01/publicIpPrefix.json - - Microsoft.Network/stable/2018-11-01/routeFilter.json - - Microsoft.Network/stable/2018-11-01/routeTable.json - - Microsoft.Network/stable/2018-11-01/serviceCommunity.json - - Microsoft.Network/stable/2018-11-01/serviceEndpointPolicy.json - - Microsoft.Network/stable/2018-11-01/usage.json - - Microsoft.Network/stable/2018-11-01/virtualNetwork.json - - Microsoft.Network/stable/2018-11-01/virtualNetworkGateway.json - - Microsoft.Network/stable/2018-11-01/virtualNetworkTap.json - - Microsoft.Network/stable/2018-11-01/virtualWan.json - - Microsoft.Network/stable/2018-11-01/vmssNetworkInterface.json - - Microsoft.Network/stable/2018-11-01/vmssPublicIpAddress.json - -``` - -### Tag: schema-network-2018-10-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2018-10-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2018-10-01/applicationGateway.json - - Microsoft.Network/stable/2018-10-01/applicationSecurityGroup.json - - Microsoft.Network/stable/2018-10-01/availableDelegations.json - - Microsoft.Network/stable/2018-10-01/azureFirewall.json - - Microsoft.Network/stable/2018-10-01/azureFirewallFqdnTag.json - - Microsoft.Network/stable/2018-10-01/checkDnsAvailability.json - - Microsoft.Network/stable/2018-10-01/ddosProtectionPlan.json - - Microsoft.Network/stable/2018-10-01/endpointService.json - - Microsoft.Network/stable/2018-10-01/expressRouteCircuit.json - - Microsoft.Network/stable/2018-10-01/expressRouteCrossConnection.json - - Microsoft.Network/stable/2018-10-01/expressRouteGateway.json - - Microsoft.Network/stable/2018-10-01/expressRoutePort.json - - Microsoft.Network/stable/2018-10-01/interfaceEndpoint.json - - Microsoft.Network/stable/2018-10-01/loadBalancer.json - - Microsoft.Network/stable/2018-10-01/network.json - - Microsoft.Network/stable/2018-10-01/networkInterface.json - - Microsoft.Network/stable/2018-10-01/networkProfile.json - - Microsoft.Network/stable/2018-10-01/networkSecurityGroup.json - - Microsoft.Network/stable/2018-10-01/networkWatcher.json - - Microsoft.Network/stable/2018-10-01/operation.json - - Microsoft.Network/stable/2018-10-01/publicIpAddress.json - - Microsoft.Network/stable/2018-10-01/publicIpPrefix.json - - Microsoft.Network/stable/2018-10-01/routeFilter.json - - Microsoft.Network/stable/2018-10-01/routeTable.json - - Microsoft.Network/stable/2018-10-01/serviceCommunity.json - - Microsoft.Network/stable/2018-10-01/serviceEndpointPolicy.json - - Microsoft.Network/stable/2018-10-01/usage.json - - Microsoft.Network/stable/2018-10-01/virtualNetwork.json - - Microsoft.Network/stable/2018-10-01/virtualNetworkGateway.json - - Microsoft.Network/stable/2018-10-01/virtualNetworkTap.json - - Microsoft.Network/stable/2018-10-01/virtualWan.json - - Microsoft.Network/stable/2018-10-01/vmssNetworkInterface.json - - Microsoft.Network/stable/2018-10-01/vmssPublicIpAddress.json - -``` - -### Tag: schema-network-2018-08-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2018-08-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2018-08-01/applicationGateway.json - - Microsoft.Network/stable/2018-08-01/applicationSecurityGroup.json - - Microsoft.Network/stable/2018-08-01/availableDelegations.json - - Microsoft.Network/stable/2018-08-01/azureFirewall.json - - Microsoft.Network/stable/2018-08-01/azureFirewallFqdnTag.json - - Microsoft.Network/stable/2018-08-01/checkDnsAvailability.json - - Microsoft.Network/stable/2018-08-01/ddosProtectionPlan.json - - Microsoft.Network/stable/2018-08-01/endpointService.json - - Microsoft.Network/stable/2018-08-01/expressRouteCircuit.json - - Microsoft.Network/stable/2018-08-01/expressRouteCrossConnection.json - - Microsoft.Network/stable/2018-08-01/expressRouteGateway.json - - Microsoft.Network/stable/2018-08-01/expressRoutePort.json - - Microsoft.Network/stable/2018-08-01/interfaceEndpoint.json - - Microsoft.Network/stable/2018-08-01/loadBalancer.json - - Microsoft.Network/stable/2018-08-01/network.json - - Microsoft.Network/stable/2018-08-01/networkInterface.json - - Microsoft.Network/stable/2018-08-01/networkProfile.json - - Microsoft.Network/stable/2018-08-01/networkSecurityGroup.json - - Microsoft.Network/stable/2018-08-01/networkWatcher.json - - Microsoft.Network/stable/2018-08-01/operation.json - - Microsoft.Network/stable/2018-08-01/publicIpAddress.json - - Microsoft.Network/stable/2018-08-01/publicIpPrefix.json - - Microsoft.Network/stable/2018-08-01/routeFilter.json - - Microsoft.Network/stable/2018-08-01/routeTable.json - - Microsoft.Network/stable/2018-08-01/serviceCommunity.json - - Microsoft.Network/stable/2018-08-01/serviceEndpointPolicy.json - - Microsoft.Network/stable/2018-08-01/usage.json - - Microsoft.Network/stable/2018-08-01/virtualNetwork.json - - Microsoft.Network/stable/2018-08-01/virtualNetworkTap.json - - Microsoft.Network/stable/2018-08-01/virtualNetworkGateway.json - - Microsoft.Network/stable/2018-08-01/virtualWan.json - - Microsoft.Network/stable/2018-08-01/vmssNetworkInterface.json - - Microsoft.Network/stable/2018-08-01/vmssPublicIpAddress.json - -``` - -### Tag: schema-network-2018-07-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2018-07-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2018-07-01/azureFirewall.json - - Microsoft.Network/stable/2018-07-01/applicationGateway.json - - Microsoft.Network/stable/2018-07-01/applicationSecurityGroup.json - - Microsoft.Network/stable/2018-07-01/checkDnsAvailability.json - - Microsoft.Network/stable/2018-07-01/ddosProtectionPlan.json - - Microsoft.Network/stable/2018-07-01/endpointService.json - - Microsoft.Network/stable/2018-07-01/expressRouteCircuit.json - - Microsoft.Network/stable/2018-07-01/expressRouteCrossConnection.json - - Microsoft.Network/stable/2018-07-01/loadBalancer.json - - Microsoft.Network/stable/2018-07-01/network.json - - Microsoft.Network/stable/2018-07-01/networkInterface.json - - Microsoft.Network/stable/2018-07-01/networkSecurityGroup.json - - Microsoft.Network/stable/2018-07-01/networkWatcher.json - - Microsoft.Network/stable/2018-07-01/operation.json - - Microsoft.Network/stable/2018-07-01/publicIpAddress.json - - Microsoft.Network/stable/2018-07-01/publicIpPrefix.json - - Microsoft.Network/stable/2018-07-01/routeFilter.json - - Microsoft.Network/stable/2018-07-01/routeTable.json - - Microsoft.Network/stable/2018-07-01/serviceCommunity.json - - Microsoft.Network/stable/2018-07-01/usage.json - - Microsoft.Network/stable/2018-07-01/virtualNetwork.json - - Microsoft.Network/stable/2018-07-01/virtualNetworkGateway.json - - Microsoft.Network/stable/2018-07-01/virtualWan.json - - Microsoft.Network/stable/2018-07-01/vmssNetworkInterface.json - - Microsoft.Network/stable/2018-07-01/vmssPublicIpAddress.json - - Microsoft.Network/stable/2018-07-01/serviceEndpointPolicy.json - -``` - -### Tag: schema-network-2018-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2018-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2018-06-01/azureFirewall.json - - Microsoft.Network/stable/2018-06-01/applicationGateway.json - - Microsoft.Network/stable/2018-06-01/applicationSecurityGroup.json - - Microsoft.Network/stable/2018-06-01/checkDnsAvailability.json - - Microsoft.Network/stable/2018-06-01/ddosProtectionPlan.json - - Microsoft.Network/stable/2018-06-01/endpointService.json - - Microsoft.Network/stable/2018-06-01/expressRouteCircuit.json - - Microsoft.Network/stable/2018-06-01/expressRouteCrossConnection.json - - Microsoft.Network/stable/2018-06-01/loadBalancer.json - - Microsoft.Network/stable/2018-06-01/network.json - - Microsoft.Network/stable/2018-06-01/networkInterface.json - - Microsoft.Network/stable/2018-06-01/networkSecurityGroup.json - - Microsoft.Network/stable/2018-06-01/networkWatcher.json - - Microsoft.Network/stable/2018-06-01/operation.json - - Microsoft.Network/stable/2018-06-01/publicIpAddress.json - - Microsoft.Network/stable/2018-06-01/routeFilter.json - - Microsoft.Network/stable/2018-06-01/routeTable.json - - Microsoft.Network/stable/2018-06-01/serviceCommunity.json - - Microsoft.Network/stable/2018-06-01/usage.json - - Microsoft.Network/stable/2018-06-01/virtualNetwork.json - - Microsoft.Network/stable/2018-06-01/virtualNetworkGateway.json - - Microsoft.Network/stable/2018-06-01/virtualWan.json - - Microsoft.Network/stable/2018-06-01/vmssNetworkInterface.json - - Microsoft.Network/stable/2018-06-01/vmssPublicIpAddress.json - -``` - -### Tag: schema-network-2018-04-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2018-04-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2018-04-01/azureFirewall.json - - Microsoft.Network/stable/2018-04-01/applicationGateway.json - - Microsoft.Network/stable/2018-04-01/applicationSecurityGroup.json - - Microsoft.Network/stable/2018-04-01/checkDnsAvailability.json - - Microsoft.Network/stable/2018-04-01/ddosProtectionPlan.json - - Microsoft.Network/stable/2018-04-01/endpointService.json - - Microsoft.Network/stable/2018-04-01/expressRouteCircuit.json - - Microsoft.Network/stable/2018-04-01/expressRouteCrossConnection.json - - Microsoft.Network/stable/2018-04-01/loadBalancer.json - - Microsoft.Network/stable/2018-04-01/network.json - - Microsoft.Network/stable/2018-04-01/networkInterface.json - - Microsoft.Network/stable/2018-04-01/networkSecurityGroup.json - - Microsoft.Network/stable/2018-04-01/networkWatcher.json - - Microsoft.Network/stable/2018-04-01/operation.json - - Microsoft.Network/stable/2018-04-01/publicIpAddress.json - - Microsoft.Network/stable/2018-04-01/routeFilter.json - - Microsoft.Network/stable/2018-04-01/routeTable.json - - Microsoft.Network/stable/2018-04-01/serviceCommunity.json - - Microsoft.Network/stable/2018-04-01/usage.json - - Microsoft.Network/stable/2018-04-01/virtualNetwork.json - - Microsoft.Network/stable/2018-04-01/virtualNetworkGateway.json - - Microsoft.Network/stable/2018-04-01/virtualWan.json - - Microsoft.Network/stable/2018-04-01/vmssNetworkInterface.json - - Microsoft.Network/stable/2018-04-01/vmssPublicIpAddress.json - -``` - -### Tag: schema-network-2018-02-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2018-02-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2018-02-01/applicationGateway.json - - Microsoft.Network/stable/2018-02-01/applicationSecurityGroup.json - - Microsoft.Network/stable/2018-02-01/checkDnsAvailability.json - - Microsoft.Network/stable/2018-02-01/ddosProtectionPlan.json - - Microsoft.Network/stable/2018-02-01/endpointService.json - - Microsoft.Network/stable/2018-02-01/expressRouteCircuit.json - - Microsoft.Network/stable/2018-02-01/expressRouteCrossConnection.json - - Microsoft.Network/stable/2018-02-01/loadBalancer.json - - Microsoft.Network/stable/2018-02-01/network.json - - Microsoft.Network/stable/2018-02-01/networkInterface.json - - Microsoft.Network/stable/2018-02-01/networkSecurityGroup.json - - Microsoft.Network/stable/2018-02-01/networkWatcher.json - - Microsoft.Network/stable/2018-02-01/operation.json - - Microsoft.Network/stable/2018-02-01/publicIpAddress.json - - Microsoft.Network/stable/2018-02-01/routeFilter.json - - Microsoft.Network/stable/2018-02-01/routeTable.json - - Microsoft.Network/stable/2018-02-01/serviceCommunity.json - - Microsoft.Network/stable/2018-02-01/usage.json - - Microsoft.Network/stable/2018-02-01/virtualNetwork.json - - Microsoft.Network/stable/2018-02-01/virtualNetworkGateway.json - - Microsoft.Network/stable/2018-02-01/vmssNetworkInterface.json - - Microsoft.Network/stable/2018-02-01/vmssPublicIpAddress.json - -``` - -### Tag: schema-network-2018-01-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2018-01-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2018-01-01/applicationGateway.json - - Microsoft.Network/stable/2018-01-01/applicationSecurityGroup.json - - Microsoft.Network/stable/2018-01-01/checkDnsAvailability.json - - Microsoft.Network/stable/2018-01-01/endpointService.json - - Microsoft.Network/stable/2018-01-01/expressRouteCircuit.json - - Microsoft.Network/stable/2018-01-01/loadBalancer.json - - Microsoft.Network/stable/2018-01-01/network.json - - Microsoft.Network/stable/2018-01-01/networkInterface.json - - Microsoft.Network/stable/2018-01-01/networkSecurityGroup.json - - Microsoft.Network/stable/2018-01-01/networkWatcher.json - - Microsoft.Network/stable/2018-01-01/operation.json - - Microsoft.Network/stable/2018-01-01/publicIpAddress.json - - Microsoft.Network/stable/2018-01-01/routeFilter.json - - Microsoft.Network/stable/2018-01-01/routeTable.json - - Microsoft.Network/stable/2018-01-01/serviceCommunity.json - - Microsoft.Network/stable/2018-01-01/usage.json - - Microsoft.Network/stable/2018-01-01/virtualNetwork.json - - Microsoft.Network/stable/2018-01-01/virtualNetworkGateway.json - - Microsoft.Network/stable/2018-01-01/vmssNetworkInterface.json - - Microsoft.Network/stable/2018-01-01/vmssPublicIpAddress.json - -``` - -### Tag: schema-network-2017-11-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2017-11-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2017-11-01/applicationGateway.json - - Microsoft.Network/stable/2017-11-01/applicationSecurityGroup.json - - Microsoft.Network/stable/2017-11-01/checkDnsAvailability.json - - Microsoft.Network/stable/2017-11-01/endpointService.json - - Microsoft.Network/stable/2017-11-01/expressRouteCircuit.json - - Microsoft.Network/stable/2017-11-01/loadBalancer.json - - Microsoft.Network/stable/2017-11-01/network.json - - Microsoft.Network/stable/2017-11-01/networkInterface.json - - Microsoft.Network/stable/2017-11-01/networkSecurityGroup.json - - Microsoft.Network/stable/2017-11-01/networkWatcher.json - - Microsoft.Network/stable/2017-11-01/operation.json - - Microsoft.Network/stable/2017-11-01/publicIpAddress.json - - Microsoft.Network/stable/2017-11-01/routeFilter.json - - Microsoft.Network/stable/2017-11-01/routeTable.json - - Microsoft.Network/stable/2017-11-01/serviceCommunity.json - - Microsoft.Network/stable/2017-11-01/usage.json - - Microsoft.Network/stable/2017-11-01/virtualNetwork.json - - Microsoft.Network/stable/2017-11-01/virtualNetworkGateway.json - - Microsoft.Network/stable/2017-11-01/vmssNetworkInterface.json - - Microsoft.Network/stable/2017-11-01/vmssPublicIpAddress.json - -``` - -### Tag: schema-network-2017-10-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2017-10-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2017-10-01/applicationGateway.json - - Microsoft.Network/stable/2017-10-01/applicationSecurityGroup.json - - Microsoft.Network/stable/2017-10-01/checkDnsAvailability.json - - Microsoft.Network/stable/2017-10-01/endpointService.json - - Microsoft.Network/stable/2017-10-01/expressRouteCircuit.json - - Microsoft.Network/stable/2017-10-01/loadBalancer.json - - Microsoft.Network/stable/2017-10-01/network.json - - Microsoft.Network/stable/2017-10-01/networkInterface.json - - Microsoft.Network/stable/2017-10-01/networkSecurityGroup.json - - Microsoft.Network/stable/2017-10-01/networkWatcher.json - - Microsoft.Network/stable/2017-10-01/operation.json - - Microsoft.Network/stable/2017-10-01/publicIpAddress.json - - Microsoft.Network/stable/2017-10-01/routeFilter.json - - Microsoft.Network/stable/2017-10-01/routeTable.json - - Microsoft.Network/stable/2017-10-01/serviceCommunity.json - - Microsoft.Network/stable/2017-10-01/usage.json - - Microsoft.Network/stable/2017-10-01/virtualNetwork.json - - Microsoft.Network/stable/2017-10-01/virtualNetworkGateway.json - - Microsoft.Network/stable/2017-10-01/vmssNetworkInterface.json - - Microsoft.Network/stable/2017-10-01/vmssPublicIpAddress.json - -``` - -### Tag: schema-network-2017-09-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2017-09-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2017-09-01/applicationGateway.json - - Microsoft.Network/stable/2017-09-01/applicationSecurityGroup.json - - Microsoft.Network/stable/2017-09-01/checkDnsAvailability.json - - Microsoft.Network/stable/2017-09-01/endpointService.json - - Microsoft.Network/stable/2017-09-01/expressRouteCircuit.json - - Microsoft.Network/stable/2017-09-01/loadBalancer.json - - Microsoft.Network/stable/2017-09-01/network.json - - Microsoft.Network/stable/2017-09-01/networkInterface.json - - Microsoft.Network/stable/2017-09-01/networkSecurityGroup.json - - Microsoft.Network/stable/2017-09-01/networkWatcher.json - - Microsoft.Network/stable/2017-09-01/operation.json - - Microsoft.Network/stable/2017-09-01/publicIpAddress.json - - Microsoft.Network/stable/2017-09-01/routeFilter.json - - Microsoft.Network/stable/2017-09-01/routeTable.json - - Microsoft.Network/stable/2017-09-01/serviceCommunity.json - - Microsoft.Network/stable/2017-09-01/usage.json - - Microsoft.Network/stable/2017-09-01/virtualNetwork.json - - Microsoft.Network/stable/2017-09-01/virtualNetworkGateway.json - - Microsoft.Network/stable/2017-09-01/vmssNetworkInterface.json - - Microsoft.Network/stable/2017-09-01/vmssPublicIpAddress.json - -``` - -### Tag: schema-network-2017-08-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2017-08-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2017-08-01/applicationGateway.json - - Microsoft.Network/stable/2017-08-01/checkDnsAvailability.json - - Microsoft.Network/stable/2017-08-01/endpointService.json - - Microsoft.Network/stable/2017-08-01/expressRouteCircuit.json - - Microsoft.Network/stable/2017-08-01/loadBalancer.json - - Microsoft.Network/stable/2017-08-01/network.json - - Microsoft.Network/stable/2017-08-01/networkInterface.json - - Microsoft.Network/stable/2017-08-01/networkSecurityGroup.json - - Microsoft.Network/stable/2017-08-01/networkWatcher.json - - Microsoft.Network/stable/2017-08-01/publicIpAddress.json - - Microsoft.Network/stable/2017-08-01/routeFilter.json - - Microsoft.Network/stable/2017-08-01/routeTable.json - - Microsoft.Network/stable/2017-08-01/serviceCommunity.json - - Microsoft.Network/stable/2017-08-01/usage.json - - Microsoft.Network/stable/2017-08-01/virtualNetwork.json - - Microsoft.Network/stable/2017-08-01/virtualNetworkGateway.json - - Microsoft.Network/stable/2017-08-01/vmssNetworkInterface.json - - Microsoft.Network/stable/2017-08-01/vmssPublicIpAddress.json - -``` - -### Tag: schema-network-2017-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2017-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2017-06-01/applicationGateway.json - - Microsoft.Network/stable/2017-06-01/checkDnsAvailability.json - - Microsoft.Network/stable/2017-06-01/endpointService.json - - Microsoft.Network/stable/2017-06-01/expressRouteCircuit.json - - Microsoft.Network/stable/2017-06-01/loadBalancer.json - - Microsoft.Network/stable/2017-06-01/network.json - - Microsoft.Network/stable/2017-06-01/networkInterface.json - - Microsoft.Network/stable/2017-06-01/networkSecurityGroup.json - - Microsoft.Network/stable/2017-06-01/networkWatcher.json - - Microsoft.Network/stable/2017-06-01/publicIpAddress.json - - Microsoft.Network/stable/2017-06-01/routeFilter.json - - Microsoft.Network/stable/2017-06-01/routeTable.json - - Microsoft.Network/stable/2017-06-01/serviceCommunity.json - - Microsoft.Network/stable/2017-06-01/usage.json - - Microsoft.Network/stable/2017-06-01/virtualNetwork.json - - Microsoft.Network/stable/2017-06-01/virtualNetworkGateway.json - - Microsoft.Network/stable/2017-06-01/vmssNetworkInterface.json - - Microsoft.Network/stable/2017-06-01/vmssPublicIpAddress.json - -``` - -### Tag: schema-network-2017-03-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2017-03-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2017-03-01/applicationGateway.json - - Microsoft.Network/stable/2017-03-01/checkDnsAvailability.json - - Microsoft.Network/stable/2017-03-01/expressRouteCircuit.json - - Microsoft.Network/stable/2017-03-01/loadBalancer.json - - Microsoft.Network/stable/2017-03-01/network.json - - Microsoft.Network/stable/2017-03-01/networkInterface.json - - Microsoft.Network/stable/2017-03-01/networkSecurityGroup.json - - Microsoft.Network/stable/2017-03-01/networkWatcher.json - - Microsoft.Network/stable/2017-03-01/publicIpAddress.json - - Microsoft.Network/stable/2017-03-01/routeFilter.json - - Microsoft.Network/stable/2017-03-01/routeTable.json - - Microsoft.Network/stable/2017-03-01/serviceCommunity.json - - Microsoft.Network/stable/2017-03-01/usage.json - - Microsoft.Network/stable/2017-03-01/virtualNetwork.json - - Microsoft.Network/stable/2017-03-01/virtualNetworkGateway.json - - Microsoft.Network/stable/2017-03-01/vmssNetworkInterface.json - - Microsoft.Network/stable/2017-03-01/vmssPublicIpAddress.json - -``` - -### Tag: schema-network-2016-12-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2016-12-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2016-12-01/vmssNetworkInterface.json - - Microsoft.Network/stable/2016-12-01/applicationGateway.json - - Microsoft.Network/stable/2016-12-01/checkDnsAvailability.json - - Microsoft.Network/stable/2016-12-01/expressRouteCircuit.json - - Microsoft.Network/stable/2016-12-01/loadBalancer.json - - Microsoft.Network/stable/2016-12-01/network.json - - Microsoft.Network/stable/2016-12-01/networkInterface.json - - Microsoft.Network/stable/2016-12-01/networkSecurityGroup.json - - Microsoft.Network/stable/2016-12-01/networkWatcher.json - - Microsoft.Network/stable/2016-12-01/publicIpAddress.json - - Microsoft.Network/stable/2016-12-01/routeFilter.json - - Microsoft.Network/stable/2016-12-01/routeTable.json - - Microsoft.Network/stable/2016-12-01/serviceCommunity.json - - Microsoft.Network/stable/2016-12-01/usage.json - - Microsoft.Network/stable/2016-12-01/virtualNetwork.json - - Microsoft.Network/stable/2016-12-01/virtualNetworkGateway.json - -``` - -### Tag: schema-network-2016-09-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2016-09-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2016-09-01/vmssNetworkInterface.json - - Microsoft.Network/stable/2016-09-01/applicationGateway.json - - Microsoft.Network/stable/2016-09-01/checkDnsAvailability.json - - Microsoft.Network/stable/2016-09-01/expressRouteCircuit.json - - Microsoft.Network/stable/2016-09-01/loadBalancer.json - - Microsoft.Network/stable/2016-09-01/network.json - - Microsoft.Network/stable/2016-09-01/networkInterface.json - - Microsoft.Network/stable/2016-09-01/networkSecurityGroup.json - - Microsoft.Network/stable/2016-09-01/networkWatcher.json - - Microsoft.Network/stable/2016-09-01/publicIpAddress.json - - Microsoft.Network/stable/2016-09-01/routeTable.json - - Microsoft.Network/stable/2016-09-01/usage.json - - Microsoft.Network/stable/2016-09-01/virtualNetwork.json - - Microsoft.Network/stable/2016-09-01/virtualNetworkGateway.json - -``` - -### Tag: schema-network-2016-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2016-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2016-06-01/network.json - -``` - -### Tag: schema-network-2016-03-30 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2016-03-30' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2016-03-30/network.json - -``` - -### Tag: schema-network-2015-06-15 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2015-06-15' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2015-06-15/applicationGateway.json - - Microsoft.Network/stable/2015-06-15/checkDnsAvailability.json - - Microsoft.Network/stable/2015-06-15/expressRouteCircuit.json - - Microsoft.Network/stable/2015-06-15/loadBalancer.json - - Microsoft.Network/stable/2015-06-15/network.json - - Microsoft.Network/stable/2015-06-15/networkInterface.json - - Microsoft.Network/stable/2015-06-15/networkSecurityGroup.json - - Microsoft.Network/stable/2015-06-15/publicIpAddress.json - - Microsoft.Network/stable/2015-06-15/routeTable.json - - Microsoft.Network/stable/2015-06-15/usage.json - - Microsoft.Network/stable/2015-06-15/virtualNetwork.json - - Microsoft.Network/stable/2015-06-15/virtualNetworkGateway.json - - Microsoft.Network/stable/2015-06-15/vmssNetworkInterface.json - -``` - -### Tag: schema-network-2015-05-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-network-2015-05-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/preview/2015-05-01-preview/network.json - -``` diff --git a/specification/network/resource-manager/readme.cli.md b/specification/network/resource-manager/readme.cli.md index ca430ac46cee..e1a3295a80ff 100644 --- a/specification/network/resource-manager/readme.cli.md +++ b/specification/network/resource-manager/readme.cli.md @@ -59,6 +59,9 @@ cli: - name: /LoadBalancers/put/Create load balancer with Frontend IP in Zone 1 - name: /LoadBalancers/put/Create load balancer with outbound rules - name: /LoadBalancers/put/Create load balancer with Standard SKU + - name: /LoadBalancers/put/Create load balancer with Gateway Load Balancer Provider configured with one Backend Pool + - name: /LoadBalancers/put/Create load balancer with Gateway Load Balancer Provider configured with two Backend Pool + - name: /LoadBalancers/put/Create load balancer with Gateway Load Balancer Consumer configured - name: /LoadBalancers/put/Create load balancer - name: /LoadBalancers/put/Create load balancer with inbound nat pool - name: /LoadBalancers/get/Get load balancer @@ -71,6 +74,7 @@ cli: - name: /Subnets/put/Create subnet - name: /PublicIPAddresses/put/Create public IP address defaults - name: /NetworkInterfaces/put/Create network interface + - name: /NetworkInterfaces/put/Create network interface with Gateway Load Balancer Consumer configured - name: /NetworkInterfaces/get/Get virtual machine scale set network interface - name: /NetworkInterfaces/get/List virtual machine scale set network interface ip configurations - name: /NetworkInterfaces/get/Get virtual machine scale set network interface diff --git a/specification/network/resource-manager/readme.go.md b/specification/network/resource-manager/readme.go.md index 8eaba21231e3..9c09a6939b41 100644 --- a/specification/network/resource-manager/readme.go.md +++ b/specification/network/resource-manager/readme.go.md @@ -2,17 +2,26 @@ These settings apply only when `--go` is specified on the command line. -``` yaml $(go) +``` yaml $(go) && !$(track2) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: network clear-output-folder: true ``` +``` yaml $(go) && $(track2) +license-header: MICROSOFT_MIT_NO_VERSION +module-name: sdk/network/armnetwork +module: github.com/Azure/azure-sdk-for-go/$(module-name) +output-folder: $(go-sdk-folder)/$(module-name) +azure-arm: true +``` + ### Go multi-api ``` yaml $(go) && $(multiapi) batch: + - tag: package-2021-02 - tag: package-2020-11 - tag: package-2020-08 - tag: package-2020-07 @@ -51,6 +60,15 @@ batch: - tag: package-2015-05-preview ``` +### Tag: package-2021-02 and go + +These settings apply only when `--tag=package-2021-02 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2021-02' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2021-02-01/$(namespace) +``` + ### Tag: package-2020-11 and go These settings apply only when `--tag=package-2020-11 --go` is specified on the command line. diff --git a/specification/network/resource-manager/readme.md b/specification/network/resource-manager/readme.md index 7c4d5fdc3694..fbe2820005b1 100644 --- a/specification/network/resource-manager/readme.md +++ b/specification/network/resource-manager/readme.md @@ -28,14 +28,72 @@ These are the global settings for the Network API. title: NetworkManagementClient description: Network Client openapi-type: arm -tag: package-2020-11 +tag: package-2021-02 ``` + +### Tag: package-2021-02 + +These settings apply only when `--tag=package-2021-02` is specified on the command line. + +```yaml $(tag) == 'package-2021-02' +input-file: + - Microsoft.Network/stable/2021-02-01/applicationGateway.json + - Microsoft.Network/stable/2021-02-01/applicationSecurityGroup.json + - Microsoft.Network/stable/2021-02-01/availableDelegations.json + - Microsoft.Network/stable/2021-02-01/availableServiceAliases.json + - Microsoft.Network/stable/2021-02-01/azureFirewall.json + - Microsoft.Network/stable/2021-02-01/azureFirewallFqdnTag.json + - Microsoft.Network/stable/2021-02-01/azureWebCategory.json + - Microsoft.Network/stable/2021-02-01/bastionHost.json + - Microsoft.Network/stable/2021-02-01/checkDnsAvailability.json + - Microsoft.Network/stable/2021-02-01/cloudServiceNetworkInterface.json + - Microsoft.Network/stable/2021-02-01/cloudServicePublicIpAddress.json + - Microsoft.Network/stable/2021-02-01/customIpPrefix.json + - Microsoft.Network/stable/2021-02-01/ddosCustomPolicy.json + - Microsoft.Network/stable/2021-02-01/ddosProtectionPlan.json + - Microsoft.Network/stable/2021-02-01/dscpConfiguration.json + - Microsoft.Network/stable/2021-02-01/endpointService.json + - Microsoft.Network/stable/2021-02-01/expressRouteCircuit.json + - Microsoft.Network/stable/2021-02-01/expressRouteCrossConnection.json + - Microsoft.Network/stable/2021-02-01/expressRoutePort.json + - Microsoft.Network/stable/2021-02-01/firewallPolicy.json + - Microsoft.Network/stable/2021-02-01/ipAllocation.json + - Microsoft.Network/stable/2021-02-01/ipGroups.json + - Microsoft.Network/stable/2021-02-01/loadBalancer.json + - Microsoft.Network/stable/2021-02-01/natGateway.json + - Microsoft.Network/stable/2021-02-01/network.json + - Microsoft.Network/stable/2021-02-01/networkInterface.json + - Microsoft.Network/stable/2021-02-01/networkProfile.json + - Microsoft.Network/stable/2021-02-01/networkSecurityGroup.json + - Microsoft.Network/stable/2021-02-01/networkVirtualAppliance.json + - Microsoft.Network/stable/2021-02-01/networkWatcher.json + - Microsoft.Network/stable/2021-02-01/operation.json + - Microsoft.Network/stable/2021-02-01/privateEndpoint.json + - Microsoft.Network/stable/2021-02-01/privateLinkService.json + - Microsoft.Network/stable/2021-02-01/publicIpAddress.json + - Microsoft.Network/stable/2021-02-01/publicIpPrefix.json + - Microsoft.Network/stable/2021-02-01/routeFilter.json + - Microsoft.Network/stable/2021-02-01/routeTable.json + - Microsoft.Network/stable/2021-02-01/securityPartnerProvider.json + - Microsoft.Network/stable/2021-02-01/serviceCommunity.json + - Microsoft.Network/stable/2021-02-01/serviceEndpointPolicy.json + - Microsoft.Network/stable/2021-02-01/serviceTags.json + - Microsoft.Network/stable/2021-02-01/usage.json + - Microsoft.Network/stable/2021-02-01/virtualNetwork.json + - Microsoft.Network/stable/2021-02-01/virtualNetworkGateway.json + - Microsoft.Network/stable/2021-02-01/virtualNetworkTap.json + - Microsoft.Network/stable/2021-02-01/virtualRouter.json + - Microsoft.Network/stable/2021-02-01/virtualWan.json + - Microsoft.Network/stable/2021-02-01/vmssNetworkInterface.json + - Microsoft.Network/stable/2021-02-01/vmssPublicIpAddress.json + - Microsoft.Network/stable/2021-02-01/webapplicationfirewall.json +``` ### Tag: package-2020-11 These settings apply only when `--tag=package-2020-11` is specified on the command line. -```yaml $(tag) == 'package-2020-11' +``` yaml $(tag) == 'package-2020-11' input-file: - Microsoft.Network/stable/2020-11-01/applicationGateway.json - Microsoft.Network/stable/2020-11-01/applicationSecurityGroup.json @@ -89,70 +147,72 @@ input-file: - Microsoft.Network/stable/2020-11-01/webapplicationfirewall.json ``` + ### Tag: package-2021-02-preview These settings apply only when `--tag=2021-02-preview` is specified on the command line. -```yaml $(tag) == 'package-2021-02-preview' +``` yaml $(tag) == 'package-2021-02-preview' input-file: - - Microsoft.Network/stable/2020-08-01/applicationGateway.json - - Microsoft.Network/stable/2020-08-01/applicationSecurityGroup.json - - Microsoft.Network/stable/2020-08-01/availableDelegations.json - - Microsoft.Network/stable/2020-08-01/availableServiceAliases.json - - Microsoft.Network/stable/2020-08-01/azureFirewall.json - - Microsoft.Network/stable/2020-08-01/azureFirewallFqdnTag.json - - Microsoft.Network/stable/2020-08-01/azureWebCategory.json - - Microsoft.Network/stable/2020-08-01/bastionHost.json - - Microsoft.Network/stable/2020-08-01/checkDnsAvailability.json - - Microsoft.Network/stable/2020-08-01/customIpPrefix.json - - Microsoft.Network/stable/2020-08-01/ddosCustomPolicy.json - - Microsoft.Network/stable/2020-08-01/ddosProtectionPlan.json - - Microsoft.Network/stable/2020-08-01/dscpConfiguration.json - - Microsoft.Network/stable/2020-08-01/endpointService.json - - Microsoft.Network/stable/2020-08-01/expressRouteCircuit.json - - Microsoft.Network/stable/2020-08-01/expressRouteCrossConnection.json - - Microsoft.Network/stable/2020-08-01/expressRoutePort.json - - Microsoft.Network/stable/2020-08-01/firewallPolicy.json - - Microsoft.Network/stable/2020-08-01/ipAllocation.json - - Microsoft.Network/stable/2020-08-01/ipGroups.json - - Microsoft.Network/stable/2020-08-01/loadBalancer.json - - Microsoft.Network/stable/2020-08-01/natGateway.json + - Microsoft.Network/stable/2020-11-01/applicationGateway.json + - Microsoft.Network/stable/2020-11-01/applicationSecurityGroup.json + - Microsoft.Network/stable/2020-11-01/availableDelegations.json + - Microsoft.Network/stable/2020-11-01/availableServiceAliases.json + - Microsoft.Network/stable/2020-11-01/azureFirewall.json + - Microsoft.Network/stable/2020-11-01/azureFirewallFqdnTag.json + - Microsoft.Network/stable/2020-11-01/azureWebCategory.json + - Microsoft.Network/stable/2020-11-01/bastionHost.json + - Microsoft.Network/stable/2020-11-01/checkDnsAvailability.json + - Microsoft.Network/stable/2020-11-01/cloudServiceNetworkInterface.json + - Microsoft.Network/stable/2020-11-01/cloudServicePublicIpAddress.json + - Microsoft.Network/stable/2020-11-01/customIpPrefix.json + - Microsoft.Network/stable/2020-11-01/ddosCustomPolicy.json + - Microsoft.Network/stable/2020-11-01/ddosProtectionPlan.json + - Microsoft.Network/stable/2020-11-01/dscpConfiguration.json + - Microsoft.Network/stable/2020-11-01/endpointService.json + - Microsoft.Network/stable/2020-11-01/expressRouteCircuit.json + - Microsoft.Network/stable/2020-11-01/expressRouteCrossConnection.json + - Microsoft.Network/stable/2020-11-01/expressRoutePort.json + - Microsoft.Network/stable/2020-11-01/firewallPolicy.json + - Microsoft.Network/stable/2020-11-01/ipAllocation.json + - Microsoft.Network/stable/2020-11-01/ipGroups.json + - Microsoft.Network/stable/2020-11-01/loadBalancer.json + - Microsoft.Network/stable/2020-11-01/natGateway.json - Microsoft.Network/preview/2021-02-01-preview/network.json - - Microsoft.Network/stable/2020-08-01/networkInterface.json + - Microsoft.Network/stable/2020-11-01/networkInterface.json - Microsoft.Network/preview/2021-02-01-preview/networkManager.json - Microsoft.Network/preview/2021-02-01-preview/networkManagerActiveConfiguration.json - Microsoft.Network/preview/2021-02-01-preview/networkManagerConnectivityConfiguration.json - Microsoft.Network/preview/2021-02-01-preview/networkManagerEffectiveConfiguration.json - Microsoft.Network/preview/2021-02-01-preview/networkManagerGroup.json - - Microsoft.Network/preview/2021-02-01-preview/networkManagerSecurityConfiguration.json - - Microsoft.Network/stable/2020-08-01/networkProfile.json - - Microsoft.Network/stable/2020-08-01/networkSecurityGroup.json - - Microsoft.Network/stable/2020-08-01/networkVirtualAppliance.json - - Microsoft.Network/stable/2020-08-01/networkWatcher.json - - Microsoft.Network/stable/2020-08-01/operation.json - - Microsoft.Network/stable/2020-08-01/privateEndpoint.json - - Microsoft.Network/stable/2020-08-01/privateLinkService.json - - Microsoft.Network/stable/2020-08-01/publicIpAddress.json - - Microsoft.Network/stable/2020-08-01/publicIpPrefix.json - - Microsoft.Network/stable/2020-08-01/routeFilter.json - - Microsoft.Network/stable/2020-08-01/routeTable.json - - Microsoft.Network/stable/2020-08-01/securityPartnerProvider.json - - Microsoft.Network/stable/2020-08-01/serviceCommunity.json - - Microsoft.Network/stable/2020-08-01/serviceEndpointPolicy.json - - Microsoft.Network/stable/2020-08-01/serviceTags.json - - Microsoft.Network/stable/2020-08-01/usage.json - - Microsoft.Network/stable/2020-08-01/virtualNetwork.json - - Microsoft.Network/stable/2020-08-01/virtualNetworkGateway.json - - Microsoft.Network/stable/2020-08-01/virtualNetworkTap.json - - Microsoft.Network/stable/2020-08-01/virtualRouter.json - - Microsoft.Network/stable/2020-08-01/virtualWan.json - - Microsoft.Network/stable/2020-08-01/vmssNetworkInterface.json - - Microsoft.Network/stable/2020-08-01/vmssPublicIpAddress.json - - Microsoft.Network/stable/2020-08-01/webapplicationfirewall.json - - Microsoft.Network/stable/2020-08-01/cloudServiceNetworkInterface.json - - Microsoft.Network/stable/2020-08-01/cloudServicePublicIpAddress.json - + - Microsoft.Network/preview/2021-02-01-preview/networkManagerSecurityUserConfiguration.json + - Microsoft.Network/preview/2021-02-01-preview/networkManagerSecurityAdminConfiguration.json + - Microsoft.Network/stable/2020-11-01/networkProfile.json + - Microsoft.Network/stable/2020-11-01/networkSecurityGroup.json + - Microsoft.Network/stable/2020-11-01/networkVirtualAppliance.json + - Microsoft.Network/stable/2020-11-01/networkWatcher.json + - Microsoft.Network/stable/2020-11-01/operation.json + - Microsoft.Network/stable/2020-11-01/privateEndpoint.json + - Microsoft.Network/stable/2020-11-01/privateLinkService.json + - Microsoft.Network/stable/2020-11-01/publicIpAddress.json + - Microsoft.Network/stable/2020-11-01/publicIpPrefix.json + - Microsoft.Network/stable/2020-11-01/routeFilter.json + - Microsoft.Network/stable/2020-11-01/routeTable.json + - Microsoft.Network/stable/2020-11-01/securityPartnerProvider.json + - Microsoft.Network/stable/2020-11-01/serviceCommunity.json + - Microsoft.Network/stable/2020-11-01/serviceEndpointPolicy.json + - Microsoft.Network/stable/2020-11-01/serviceTags.json + - Microsoft.Network/stable/2020-11-01/usage.json + - Microsoft.Network/stable/2020-11-01/virtualNetwork.json + - Microsoft.Network/stable/2020-11-01/virtualNetworkGateway.json + - Microsoft.Network/stable/2020-11-01/virtualNetworkTap.json + - Microsoft.Network/stable/2020-11-01/virtualRouter.json + - Microsoft.Network/stable/2020-11-01/virtualWan.json + - Microsoft.Network/stable/2020-11-01/vmssNetworkInterface.json + - Microsoft.Network/stable/2020-11-01/vmssPublicIpAddress.json + - Microsoft.Network/stable/2020-11-01/webapplicationfirewall.json ``` + ### Tag: package-2020-08 These settings apply only when `--tag=package-2020-08` is specified on the command line. @@ -1663,7 +1723,10 @@ directive: from: networkManagerConnectivityConfiguration.json reason: name, id and type properties are inherited from the upper level - suppress: RequiredPropertiesMissingInResourceModel - from: networkManagerSecurityConfiguration.json + from: networkManagerSecurityUserConfiguration.json + reason: name, id and type properties are inherited from the upper level + - suppress: RequiredPropertiesMissingInResourceModel + from: networkManagerSecurityAdminConfiguration.json reason: name, id and type properties are inherited from the upper level - suppress: RequiredPropertiesMissingInResourceModel from: networkManager.json @@ -1908,8 +1971,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_network'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js network/resource-manager ``` ## Suppression @@ -1948,6 +2009,4 @@ See configuration in [readme.go.md](./readme.go.md) See configuration in [readme.java.md](./readme.java.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/network/resource-manager/readme.python.md b/specification/network/resource-manager/readme.python.md index 9e92925928f6..27f6761268d7 100644 --- a/specification/network/resource-manager/readme.python.md +++ b/specification/network/resource-manager/readme.python.md @@ -16,6 +16,7 @@ Generate all API versions currently shipped for this package ```yaml $(multiapi) clear-output-folder: true batch: + - tag: package-2021-02 - tag: package-2020-11 - tag: package-2020-08 - tag: package-2020-07 @@ -57,6 +58,15 @@ output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/netwo clear-output-folder: false perform-load: false ``` +### Tag: package-2021-02 and python + +These settings apply only when `--tag=package-2021-02 --python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-2021-02' +namespace: azure.mgmt.network.v2021_02_01 +output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2021_02_01 +``` ### Tag: package-2020-11 and python diff --git a/specification/notificationhubs/resource-manager/readme.azureresourceschema.md b/specification/notificationhubs/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index d3ffdfc77fad..000000000000 --- a/specification/notificationhubs/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,48 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-notificationhubs-2017-04-01 - - tag: schema-notificationhubs-2016-03-01 - - tag: schema-notificationhubs-2014-09-01 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-notificationhubs-2017-04-01 and azureresourceschema - -``` yaml $(tag) == 'schema-notificationhubs-2017-04-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.NotificationHubs/stable/2017-04-01/notificationhubs.json - -``` - -### Tag: schema-notificationhubs-2016-03-01 and azureresourceschema - -``` yaml $(tag) == 'schema-notificationhubs-2016-03-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.NotificationHubs/stable/2016-03-01/notificationhubs.json - -``` - -### Tag: schema-notificationhubs-2014-09-01 and azureresourceschema - -``` yaml $(tag) == 'schema-notificationhubs-2014-09-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.NotificationHubs/stable/2014-09-01/notificationhubs.json - -``` diff --git a/specification/notificationhubs/resource-manager/readme.go.md b/specification/notificationhubs/resource-manager/readme.go.md index 337363ef3ed9..98380347b17e 100644 --- a/specification/notificationhubs/resource-manager/readme.go.md +++ b/specification/notificationhubs/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: notificationhubs clear-output-folder: true ``` diff --git a/specification/notificationhubs/resource-manager/readme.md b/specification/notificationhubs/resource-manager/readme.md index 61cfa09502ac..8ab47c141fbe 100644 --- a/specification/notificationhubs/resource-manager/readme.md +++ b/specification/notificationhubs/resource-manager/readme.md @@ -94,8 +94,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_notification_hubs'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js notificationhubs/resource-manager ``` @@ -224,7 +222,5 @@ generate-interface: true -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/operationalinsights/data-plane/readme.go.md b/specification/operationalinsights/data-plane/readme.go.md index a0f6346d5799..837bae21aba2 100644 --- a/specification/operationalinsights/data-plane/readme.go.md +++ b/specification/operationalinsights/data-plane/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION clear-output-folder: true namespace: operationalinsights ``` diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-10-01/Clusters.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-10-01/Clusters.json index 4a2f3489e280..78b82498e54f 100644 --- a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-10-01/Clusters.json +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-10-01/Clusters.json @@ -366,17 +366,8 @@ "description": "Sets whether the cluster will support availability zones. This can be set as true only in regions where Azure Data Explorer support Availability Zones. This Property can not be modified after cluster creation. Default value is 'true' if region supports Availability Zones." }, "billingType": { - "type": "string", - "readOnly": false, - "description": "Configures whether billing will be only on the cluster or each workspace will be billed by its proportional use. This does not change the overall billing, only how it will be distributed. Default value is 'Cluster'", - "enum": [ - "Cluster", - "Workspaces" - ], - "x-ms-enum": { - "name": "BillingType", - "modelAsString": true - } + "$ref": "#/definitions/billingType", + "description": "The cluster's billing type." }, "keyVaultProperties": { "$ref": "#/definitions/keyVaultProperties", @@ -411,6 +402,10 @@ "keyVaultProperties": { "$ref": "#/definitions/keyVaultProperties", "description": "The associated key properties." + }, + "billingType": { + "$ref": "#/definitions/billingType", + "description": "The cluster's billing type." } }, "description": "Log Analytics cluster patch properties." @@ -507,6 +502,19 @@ } } }, + "billingType": { + "type": "string", + "readOnly": false, + "description": "Configures whether billing will be only on the cluster or each workspace will be billed by its proportional use. This does not change the overall billing, only how it will be distributed. Default value is 'Cluster'", + "enum": [ + "Cluster", + "Workspaces" + ], + "x-ms-enum": { + "name": "BillingType", + "modelAsString": true + } + }, "ClusterSku": { "description": "The cluster sku definition.", "properties": { diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-10-01/Workspaces.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-10-01/Workspaces.json index 2dd34cbe1464..9402e0a9bf04 100644 --- a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-10-01/Workspaces.json +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-10-01/Workspaces.json @@ -424,12 +424,6 @@ "format": "int32", "description": "The capacity reservation level for this workspace, when CapacityReservation sku is selected." }, - "maxCapacityReservationLevel": { - "type": "integer", - "format": "int32", - "description": "The maximum capacity reservation level available for this workspace, when CapacityReservation sku is selected.", - "readOnly": true - }, "lastSkuUpdate": { "type": "string", "description": "The last time when the sku was updated.", @@ -576,7 +570,28 @@ "description": "Workspace properties." }, "WorkspaceFeatures": { - "properties": {}, + "properties": { + "enableDataExport": { + "type": "boolean", + "x-nullable": true, + "description": "Flag that indicate if data should be exported." + }, + "immediatePurgeDataOn30Days": { + "type": "boolean", + "x-nullable": true, + "description": "Flag that describes if we want to remove the data after 30 days." + }, + "enableLogAccessUsingOnlyResourcePermissions": { + "type": "boolean", + "x-nullable": true, + "description": "Flag that indicate which permission to use - resource or workspace or both." + }, + "clusterResourceId": { + "type": "string", + "x-nullable": true, + "description": "Dedicated LA cluster resourceId that is linked to the workspaces." + } + }, "additionalProperties": true, "description": "Workspace features." }, diff --git a/specification/operationalinsights/resource-manager/readme.az.md b/specification/operationalinsights/resource-manager/readme.az.md new file mode 100644 index 000000000000..79e1a5785c94 --- /dev/null +++ b/specification/operationalinsights/resource-manager/readme.az.md @@ -0,0 +1,26 @@ +## AZ + +These settings apply only when `--az` is specified on the command line. + +For new Resource Provider. It is highly recommended to onboard Azure CLI extensions. There's no differences in terms of customer usage. + +``` yaml $(az) && $(target-mode) != 'core' +az: + extensions: loganalytics + namespace: azure.mgmt.loganalytics + package-name: azure-mgmt-loganalytics +az-output-folder: $(azure-cli-extension-folder)/src/loganalytics +python-sdk-output-folder: "$(az-output-folder)/azext_loganalytics/vendored_sdks/loganalytics" +# add additional configuration here specific for Azure CLI +# refer to the faq.md for more details +``` +``` yaml $(az) && $(target-mode) == 'core' +az: + extensions: loganalytics + namespace: azure.mgmt.loganalytics + package-name: azure-mgmt-loganalytics +az-output-folder: $(azure-cli-folder)/src/azure-cli/azure/cli/command_modules/loganalytics +python-sdk-output-folder: "$(az-output-folder)/azext_loganalytics/vendored_sdks/loganalytics" +# add additinal configuration here specific for Azure CLI +# refer to the faq.md for more details +``` diff --git a/specification/operationalinsights/resource-manager/readme.azureresourceschema.md b/specification/operationalinsights/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 0ac719286a7c..000000000000 --- a/specification/operationalinsights/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,140 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-operationalinsights-2020-10-01 - - tag: schema-operationalinsights-2020-08-01 - - tag: schema-operationalinsights-2020-03-01-preview - - tag: schema-operationalinsights-2019-09-01-preview - - tag: schema-operationalinsights-2019-08-01-preview - - tag: schema-operationalinsights-2015-11-01-preview - - tag: schema-operationalinsights-2015-03-20 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-operationalinsights-2020-10-01 and azureresourceschema - -``` yaml $(tag) == 'schema-operationalinsights-2020-10-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.OperationalInsights/stable/2020-10-01/Clusters.json - - Microsoft.OperationalInsights/stable/2020-10-01/Operations.json - - Microsoft.OperationalInsights/stable/2020-10-01/Tables.json - - Microsoft.OperationalInsights/stable/2020-10-01/Workspaces.json - -``` - -### Tag: schema-operationalinsights-2020-08-01 and azureresourceschema - -``` yaml $(tag) == 'schema-operationalinsights-2020-08-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.OperationalInsights/stable/2020-08-01/DataExports.json - - Microsoft.OperationalInsights/stable/2020-08-01/DataSources.json - - Microsoft.OperationalInsights/stable/2020-08-01/IntelligencePacks.json - - Microsoft.OperationalInsights/stable/2020-08-01/LinkedServices.json - - Microsoft.OperationalInsights/stable/2020-08-01/LinkedStorageAccounts.json - - Microsoft.OperationalInsights/stable/2020-08-01/ManagementGroups.json - - Microsoft.OperationalInsights/stable/2020-08-01/Operations.json - - Microsoft.OperationalInsights/stable/2020-08-01/OperationStatuses.json - - Microsoft.OperationalInsights/stable/2020-08-01/SharedKeys.json - - Microsoft.OperationalInsights/stable/2020-08-01/Usages.json - - Microsoft.OperationalInsights/stable/2020-08-01/Workspaces.json - - Microsoft.OperationalInsights/stable/2020-08-01/Clusters.json - - Microsoft.OperationalInsights/stable/2020-08-01/StorageInsightConfigs.json - - Microsoft.OperationalInsights/stable/2020-08-01/SavedSearches.json - - Microsoft.OperationalInsights/stable/2020-08-01/AvailableServiceTiers.json - - Microsoft.OperationalInsights/stable/2020-08-01/Gateways.json - - Microsoft.OperationalInsights/stable/2020-08-01/Schema.json - - Microsoft.OperationalInsights/stable/2020-08-01/WorkspacePurge.json - - Microsoft.OperationalInsights/stable/2020-08-01/Tables.json - -``` - -### Tag: schema-operationalinsights-2020-03-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-operationalinsights-2020-03-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.OperationalInsights/preview/2020-03-01-preview/DataExports.json - - Microsoft.OperationalInsights/preview/2020-03-01-preview/DataSources.json - - Microsoft.OperationalInsights/preview/2020-03-01-preview/DataCollectorLogs.json - - Microsoft.OperationalInsights/preview/2020-03-01-preview/IntelligencePacks.json - - Microsoft.OperationalInsights/preview/2020-03-01-preview/LinkedServices.json - - Microsoft.OperationalInsights/preview/2020-03-01-preview/LinkedStorageAccounts.json - - Microsoft.OperationalInsights/preview/2020-03-01-preview/ManagementGroups.json - - Microsoft.OperationalInsights/preview/2020-03-01-preview/Operations.json - - Microsoft.OperationalInsights/preview/2020-03-01-preview/OperationStatuses.json - - Microsoft.OperationalInsights/preview/2020-03-01-preview/SharedKeys.json - - Microsoft.OperationalInsights/preview/2020-03-01-preview/Usages.json - - Microsoft.OperationalInsights/preview/2020-03-01-preview/Workspaces.json - - Microsoft.OperationalInsights/preview/2020-03-01-preview/Clusters.json - - Microsoft.OperationalInsights/preview/2020-03-01-preview/StorageInsightConfigs.json - - Microsoft.OperationalInsights/preview/2020-03-01-preview/SavedSearches.json - - Microsoft.OperationalInsights/preview/2020-03-01-preview/AvailableServiceTiers.json - - Microsoft.OperationalInsights/preview/2020-03-01-preview/Gateways.json - - Microsoft.OperationalInsights/preview/2020-03-01-preview/Schema.json - - Microsoft.OperationalInsights/preview/2020-03-01-preview/WorkspacePurge.json - - Microsoft.OperationalInsights/preview/2020-03-01-preview/Tables.json - -``` - -### Tag: schema-operationalinsights-2019-09-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-operationalinsights-2019-09-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.OperationalInsights/preview/2019-09-01-preview/QueryPacks_API.json - - Microsoft.OperationalInsights/preview/2019-09-01-preview/QueryPackQueries_API.json - -``` - -### Tag: schema-operationalinsights-2019-08-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-operationalinsights-2019-08-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.OperationalInsights/preview/2019-08-01-preview/Clusters.json - - Microsoft.OperationalInsights/preview/2019-08-01-preview/LinkedServices.json - - Microsoft.OperationalInsights/preview/2019-08-01-preview/OperationalInsights.json - -``` - -### Tag: schema-operationalinsights-2015-11-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-operationalinsights-2015-11-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.OperationalInsights/preview/2015-11-01-preview/LinkedServices.json - - Microsoft.OperationalInsights/preview/2015-11-01-preview/OperationalInsights.json - -``` - -### Tag: schema-operationalinsights-2015-03-20 and azureresourceschema - -``` yaml $(tag) == 'schema-operationalinsights-2015-03-20' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.OperationalInsights/stable/2015-03-20/OperationalInsights.json - -``` diff --git a/specification/operationalinsights/resource-manager/readme.cli.md b/specification/operationalinsights/resource-manager/readme.cli.md new file mode 100644 index 000000000000..179636a56760 --- /dev/null +++ b/specification/operationalinsights/resource-manager/readme.cli.md @@ -0,0 +1,4 @@ +``` yaml +# add any configuration here for all CLI languages +# refer to the faq.md for more details +``` \ No newline at end of file diff --git a/specification/operationalinsights/resource-manager/readme.go.md b/specification/operationalinsights/resource-manager/readme.go.md index 1406d6f8c58c..bcd8b18057c0 100644 --- a/specification/operationalinsights/resource-manager/readme.go.md +++ b/specification/operationalinsights/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: operationalinsights clear-output-folder: true ``` diff --git a/specification/operationalinsights/resource-manager/readme.md b/specification/operationalinsights/resource-manager/readme.md index 8c5765c0b139..eb2b5381d8f7 100644 --- a/specification/operationalinsights/resource-manager/readme.md +++ b/specification/operationalinsights/resource-manager/readme.md @@ -135,6 +135,17 @@ input-file: - Microsoft.OperationalInsights/stable/2020-08-01/Tables.json ``` +### Tag: package-2020-10-only +These settings apply only when `--tag=package-2020-10-only` is specified on the command line. + +``` yaml $(tag) == 'package-2020-10-only' +input-file: +- Microsoft.OperationalInsights/stable/2020-10-01/Clusters.json +- Microsoft.OperationalInsights/stable/2020-10-01/Operations.json +- Microsoft.OperationalInsights/stable/2020-10-01/Tables.json +- Microsoft.OperationalInsights/stable/2020-10-01/Workspaces.json +``` + ### Tag: package-2020-10 These settings apply only when `--tag=package-2020-10` is specified on the command line. @@ -157,9 +168,9 @@ input-file: - Microsoft.OperationalInsights/stable/2020-08-01/Schema.json - Microsoft.OperationalInsights/stable/2020-08-01/SharedKeys.json - Microsoft.OperationalInsights/stable/2020-08-01/WorkspacePurge.json +- Microsoft.OperationalInsights/stable/2020-08-01/Tables.json - Microsoft.OperationalInsights/stable/2020-10-01/Clusters.json - Microsoft.OperationalInsights/stable/2020-10-01/Operations.json -- Microsoft.OperationalInsights/stable/2020-10-01/Tables.json - Microsoft.OperationalInsights/stable/2020-10-01/Workspaces.json ``` @@ -182,8 +193,8 @@ swagger-to-sdk: - repo: azure-sdk-for-ruby - repo: azure-sdk-for-java - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js operationalinsights/resource-manager + - repo: azure-cli-extensions + - repo: azure-powershell ``` @@ -225,7 +236,5 @@ directive: reason: properties etag defined as eTag in model ``` -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/operationalinsights/resource-manager/readme.python.md b/specification/operationalinsights/resource-manager/readme.python.md index a8c1bb54a834..543e26f34c52 100644 --- a/specification/operationalinsights/resource-manager/readme.python.md +++ b/specification/operationalinsights/resource-manager/readme.python.md @@ -1,9 +1,10 @@ +## 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 +``` yaml $(python) && $(track2) azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION namespace: azure.mgmt.loganalytics @@ -12,11 +13,11 @@ package-version: 7.0.0b1 clear-output-folder: true ``` -``` yaml $(python) && $(python-mode) == 'update' +``` yaml $(python) && $(python-mode) == 'update' && $(track2) no-namespace-folders: true output-folder: $(python-sdks-folder)/loganalytics/azure-mgmt-loganalytics/azure/mgmt/loganalytics ``` -``` yaml $(python) && $(python-mode) == 'create' +``` yaml $(python) && $(python-mode) == 'create' && $(track2) basic-setup-py: true output-folder: $(python-sdks-folder)/loganalytics/azure-mgmt-loganalytics ``` \ No newline at end of file diff --git a/specification/operationsmanagement/resource-manager/readme.azureresourceschema.md b/specification/operationsmanagement/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 5aa1c7bc845a..000000000000 --- a/specification/operationsmanagement/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,24 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-operationsmanagement-2015-11-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-operationsmanagement-2015-11-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-operationsmanagement-2015-11-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.OperationsManagement/preview/2015-11-01-preview/OperationsManagement.json - -``` diff --git a/specification/operationsmanagement/resource-manager/readme.go.md b/specification/operationsmanagement/resource-manager/readme.go.md index b88e9cf57303..f8b1cd236937 100644 --- a/specification/operationsmanagement/resource-manager/readme.go.md +++ b/specification/operationsmanagement/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: operationsmanagement clear-output-folder: true ``` diff --git a/specification/operationsmanagement/resource-manager/readme.md b/specification/operationsmanagement/resource-manager/readme.md index 320f1b40ba31..2cd43ca75691 100644 --- a/specification/operationsmanagement/resource-manager/readme.md +++ b/specification/operationsmanagement/resource-manager/readme.md @@ -61,8 +61,6 @@ swagger-to-sdk: - repo: azure-sdk-for-python - repo: azure-cli-extensions - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js operationsmanagement/resource-manager ``` @@ -126,7 +124,5 @@ generate-interface: true -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/peering/resource-manager/readme.azureresourceschema.md b/specification/peering/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index bad9c89113c2..000000000000 --- a/specification/peering/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,84 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-peering-2021-01-01 - - tag: schema-peering-2020-10-01 - - tag: schema-peering-2020-04-01 - - tag: schema-peering-2020-01-01-preview - - tag: schema-peering-2019-09-01-preview - - tag: schema-peering-2019-08-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-peering-2021-01-01 and azureresourceschema - -``` yaml $(tag) == 'schema-peering-2021-01-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Peering/stable/2021-01-01/peering.json - -``` - -### Tag: schema-peering-2020-10-01 and azureresourceschema - -``` yaml $(tag) == 'schema-peering-2020-10-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Peering/stable/2020-10-01/peering.json - -``` - -### Tag: schema-peering-2020-04-01 and azureresourceschema - -``` yaml $(tag) == 'schema-peering-2020-04-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Peering/stable/2020-04-01/peering.json - -``` - -### Tag: schema-peering-2020-01-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-peering-2020-01-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Peering/preview/2020-01-01-preview/peering.json - -``` - -### Tag: schema-peering-2019-09-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-peering-2019-09-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Peering/preview/2019-09-01-preview/peering.json - -``` - -### Tag: schema-peering-2019-08-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-peering-2019-08-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Peering/preview/2019-08-01-preview/peering.json - -``` diff --git a/specification/peering/resource-manager/readme.go.md b/specification/peering/resource-manager/readme.go.md index 02c4e0d9f13d..d5d686f9126e 100644 --- a/specification/peering/resource-manager/readme.go.md +++ b/specification/peering/resource-manager/readme.go.md @@ -5,7 +5,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: peering clear-output-folder: true ``` diff --git a/specification/peering/resource-manager/readme.md b/specification/peering/resource-manager/readme.md index 6353e504057c..d81b897d3edf 100644 --- a/specification/peering/resource-manager/readme.md +++ b/specification/peering/resource-manager/readme.md @@ -130,6 +130,7 @@ This is not used by Autorest itself. ``` yaml $(swagger-to-sdk) swagger-to-sdk: - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-java - repo: azure-sdk-for-go - repo: azure-sdk-for-net @@ -139,10 +140,12 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_peering'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js peering/resource-manager ``` +## Python + +See configuration in [readme.python.md](./readme.python.md) + ## C# See configuration in [readme.csharp.md](./readme.csharp.md) @@ -155,7 +158,5 @@ See configuration in [readme.go.md](./readme.go.md) See configuration in [readme.cli.md](./readme.cli.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/peering/resource-manager/readme.python.md b/specification/peering/resource-manager/readme.python.md index 85fd40382a05..b006a15f07a1 100644 --- a/specification/peering/resource-manager/readme.python.md +++ b/specification/peering/resource-manager/readme.python.md @@ -4,7 +4,7 @@ These settings apply only when `--python` is specified on the command line. Please also specify `--python-sdks-folder=`. Use `--python-mode=update` if you already have a setup.py and just want to update the code itself. -``` yaml $(python) +``` yaml $(python) && !$(track2) python-mode: create python: azure-arm: true @@ -15,13 +15,31 @@ python: package-version: 0.2.0 clear-output-folder: true ``` -``` yaml $(python) && $(python-mode) == 'update' +``` yaml $(python) && $(track2) +python-mode: create +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +namespace: azure.mgmt.peering +package-name: azure-mgmt-peering +package-version: 0.2.0 +clear-output-folder: true +``` + +``` yaml $(python) && $(python-mode) == 'update' && !$(track2) python: no-namespace-folders: true output-folder: $(python-sdks-folder)/peering/azure-mgmt-peering/azure/mgmt/peering ``` -``` yaml $(python) && $(python-mode) == 'create' +``` yaml $(python) && $(python-mode) == 'create' && !$(track2) python: basic-setup-py: true output-folder: $(python-sdks-folder)/peering/azure-mgmt-peering ``` +``` yaml $(python) && $(python-mode) == 'update' && $(track2) +no-namespace-folders: true +output-folder: $(python-sdks-folder)/peering/azure-mgmt-peering/azure/mgmt/peering +``` +``` yaml $(python) && $(python-mode) == 'create' && $(track2) +basic-setup-py: true +output-folder: $(python-sdks-folder)/peering/azure-mgmt-peering +``` \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QueryManagementGroupScopeNextLinkSkipToken.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QueryManagementGroupScopeNextLinkSkipToken.json new file mode 100644 index 000000000000..e5140f116eb8 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QueryManagementGroupScopeNextLinkSkipToken.json @@ -0,0 +1,82 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "$skiptoken": "WpmWfBSvPhkAK6QD", + "nextLink": "{nextLink}" + }, + "responses": { + "200": { + "body": { + "@odata.nextLink": null, + "@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", + "complianceState": "NonCompliant" + }, + { + "@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", + "complianceState": "NonCompliant" + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryManagementGroupScopeNextLinkSkipToken.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryManagementGroupScopeNextLinkSkipToken.json new file mode 100644 index 000000000000..7d5b13dce740 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryManagementGroupScopeNextLinkSkipToken.json @@ -0,0 +1,83 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "$skiptoken": "WpmghrfhqlwpqqdrwpwmgWfBSvPhkAK6QD", + "nextLink": "{nextLink}" + }, + "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": "2019-10-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", + "complianceState": "NonCompliant", + "policyDefinitionGroupNames": [ + "myGroup" + ] + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "timestamp": "2019-10-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": true, + "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": "", + "complianceState": "Compliant", + "policyDefinitionGroupNames": [ + "myGroup" + ] + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/policyEvents.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/policyEvents.json index f3c4a1d667f5..de7e20edf86e 100644 --- a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/policyEvents.json +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/policyEvents.json @@ -87,7 +87,8 @@ } }, "x-ms-pageable": { - "nextLinkName": "@odata.nextLink" + "nextLinkName": "@odata.nextLink", + "operationName": "PolicyEvents_NextLink" }, "x-ms-examples": { "Query at management group scope": { @@ -153,7 +154,8 @@ } }, "x-ms-pageable": { - "nextLinkName": "@odata.nextLink" + "nextLinkName": "@odata.nextLink", + "operationName": "PolicyEvents_NextLink" }, "x-ms-examples": { "Query at subscription scope": { @@ -237,7 +239,8 @@ } }, "x-ms-pageable": { - "nextLinkName": "@odata.nextLink" + "nextLinkName": "@odata.nextLink", + "operationName": "PolicyEvents_NextLink" }, "x-ms-examples": { "Query at resource group scope": { @@ -306,7 +309,8 @@ } }, "x-ms-pageable": { - "nextLinkName": "@odata.nextLink" + "nextLinkName": "@odata.nextLink", + "operationName": "PolicyEvents_NextLink" }, "x-ms-examples": { "Query at resource scope": { @@ -393,7 +397,8 @@ } }, "x-ms-pageable": { - "nextLinkName": "@odata.nextLink" + "nextLinkName": "@odata.nextLink", + "operationName": "PolicyEvents_NextLink" }, "x-ms-examples": { "Query at subscription level policy set definition scope": { @@ -465,7 +470,8 @@ } }, "x-ms-pageable": { - "nextLinkName": "@odata.nextLink" + "nextLinkName": "@odata.nextLink", + "operationName": "PolicyEvents_NextLink" }, "x-ms-examples": { "Query at subscription level policy definition scope": { @@ -537,7 +543,8 @@ } }, "x-ms-pageable": { - "nextLinkName": "@odata.nextLink" + "nextLinkName": "@odata.nextLink", + "operationName": "PolicyEvents_NextLink" }, "x-ms-examples": { "Query at subscription level policy assignment scope": { @@ -612,7 +619,8 @@ } }, "x-ms-pageable": { - "nextLinkName": "@odata.nextLink" + "nextLinkName": "@odata.nextLink", + "operationName": "PolicyEvents_NextLink" }, "x-ms-examples": { "Query at resource group level policy assignment scope": { @@ -625,6 +633,49 @@ } } }, + "x-ms-paths": { + "/{nextLink}?Next paging op for policy events": { + "post": { + "operationId": "PolicyEvents_NextLink", + "description": "Subsequent post calls to the next link", + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/skipTokenParameter" + }, + { + "name": "nextLink", + "in": "path", + "required": true, + "type": "string", + "description": "Next link for list operation.", + "x-ms-skip-url-encoding": true + } + ], + "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 latest at resource group level policy assignment scope with next link": { + "$ref": "./examples/PolicyEvents_QueryManagementGroupScopeNextLinkSkipToken.json" + } + } + } + } + }, "definitions": { "PolicyEventsQueryResults": { "description": "Query results.", diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/policyStates.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/policyStates.json index 4f30ea580583..407d6fd276a1 100644 --- a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/policyStates.json +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/policyStates.json @@ -87,7 +87,8 @@ } }, "x-ms-pageable": { - "nextLinkName": "@odata.nextLink" + "nextLinkName": "@odata.nextLink", + "operationName": "PolicyStates_NextLink" }, "x-ms-examples": { "Query latest at management group scope": { @@ -204,7 +205,8 @@ } }, "x-ms-pageable": { - "nextLinkName": "@odata.nextLink" + "nextLinkName": "@odata.nextLink", + "operationName": "PolicyStates_NextLink" }, "x-ms-examples": { "Query latest at subscription scope": { @@ -339,7 +341,8 @@ } }, "x-ms-pageable": { - "nextLinkName": "@odata.nextLink" + "nextLinkName": "@odata.nextLink", + "operationName": "PolicyStates_NextLink" }, "x-ms-examples": { "Query latest at resource group scope": { @@ -459,7 +462,8 @@ } }, "x-ms-pageable": { - "nextLinkName": "@odata.nextLink" + "nextLinkName": "@odata.nextLink", + "operationName": "PolicyStates_NextLink" }, "x-ms-examples": { "Query all policy states at resource scope": { @@ -674,7 +678,8 @@ } }, "x-ms-pageable": { - "nextLinkName": "@odata.nextLink" + "nextLinkName": "@odata.nextLink", + "operationName": "PolicyStates_NextLink" }, "x-ms-examples": { "Query latest at subscription level policy set definition scope": { @@ -800,7 +805,8 @@ } }, "x-ms-pageable": { - "nextLinkName": "@odata.nextLink" + "nextLinkName": "@odata.nextLink", + "operationName": "PolicyStates_NextLink" }, "x-ms-examples": { "Query latest at subscription level policy definition scope": { @@ -926,7 +932,8 @@ } }, "x-ms-pageable": { - "nextLinkName": "@odata.nextLink" + "nextLinkName": "@odata.nextLink", + "operationName": "PolicyStates_NextLink" }, "x-ms-examples": { "Query latest at subscription level policy assignment scope": { @@ -1055,7 +1062,8 @@ } }, "x-ms-pageable": { - "nextLinkName": "@odata.nextLink" + "nextLinkName": "@odata.nextLink", + "operationName": "PolicyStates_NextLink" }, "x-ms-examples": { "Query latest at resource group level policy assignment scope": { @@ -1153,6 +1161,47 @@ } } } + }, + "/{nextLink}": { + "post": { + "operationId": "PolicyStates_NextLink", + "description": "Subsequent post calls to the next link", + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/skipTokenParameter" + }, + { + "name": "nextLink", + "in": "path", + "required": true, + "type": "string", + "description": "Next link for list operation.", + "x-ms-skip-url-encoding": true + } + ], + "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 with next link": { + "$ref": "./examples/PolicyStates_QueryManagementGroupScopeNextLinkSkipToken.json" + } + } + } } }, "definitions": { diff --git a/specification/policyinsights/resource-manager/readme.azureresourceschema.md b/specification/policyinsights/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index bb256accf17a..000000000000 --- a/specification/policyinsights/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,90 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-policyinsights-2021-01-01 - - tag: schema-policyinsights-2020-07-01 - - tag: schema-policyinsights-2019-10-01 - - tag: schema-policyinsights-2019-07-01 - - tag: schema-policyinsights-2018-07-01-preview - - tag: schema-policyinsights-2018-04-04 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-policyinsights-2021-01-01 and azureresourceschema - -``` yaml $(tag) == 'schema-policyinsights-2021-01-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.PolicyInsights/stable/2021-01-01/attestations.json - -``` - -### Tag: schema-policyinsights-2020-07-01 and azureresourceschema - -``` yaml $(tag) == 'schema-policyinsights-2020-07-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.PolicyInsights/stable/2020-07-01/checkPolicyRestrictions.json - -``` - -### Tag: schema-policyinsights-2019-10-01 and azureresourceschema - -``` yaml $(tag) == 'schema-policyinsights-2019-10-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.PolicyInsights/stable/2019-10-01/policyEvents.json - - Microsoft.PolicyInsights/stable/2019-10-01/policyStates.json - - Microsoft.PolicyInsights/stable/2019-10-01/policyMetadata.json - -``` - -### Tag: schema-policyinsights-2019-07-01 and azureresourceschema - -``` yaml $(tag) == 'schema-policyinsights-2019-07-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.PolicyInsights/stable/2019-07-01/remediations.json - -``` - -### Tag: schema-policyinsights-2018-07-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-policyinsights-2018-07-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.PolicyInsights/preview/2018-07-01-preview/policyTrackedResources.json - - Microsoft.PolicyInsights/preview/2018-07-01-preview/remediations.json - - Microsoft.PolicyInsights/preview/2018-07-01-preview/policyEvents.json - - Microsoft.PolicyInsights/preview/2018-07-01-preview/policyStates.json - -``` - -### Tag: schema-policyinsights-2018-04-04 and azureresourceschema - -``` yaml $(tag) == 'schema-policyinsights-2018-04-04' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.PolicyInsights/stable/2018-04-04/policyEvents.json - - Microsoft.PolicyInsights/stable/2018-04-04/policyStates.json - -``` diff --git a/specification/policyinsights/resource-manager/readme.go.md b/specification/policyinsights/resource-manager/readme.go.md index 944aff06c4d2..c7b29b3eab74 100644 --- a/specification/policyinsights/resource-manager/readme.go.md +++ b/specification/policyinsights/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: policyinsights clear-output-folder: true ``` @@ -20,7 +20,6 @@ batch: - tag: package-2018-04 ``` - ### Tag: package-2021-01 and go These settings apply only when `--tag=package-2021-01 --go` is specified on the command line. diff --git a/specification/policyinsights/resource-manager/readme.md b/specification/policyinsights/resource-manager/readme.md index 9e6489ba2dd4..7e3ee603d921 100644 --- a/specification/policyinsights/resource-manager/readme.md +++ b/specification/policyinsights/resource-manager/readme.md @@ -161,13 +161,12 @@ This is not used by Autorest itself. swagger-to-sdk: - repo: azure-sdk-for-net - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-java - repo: azure-sdk-for-go - repo: azure-sdk-for-js - repo: azure-sdk-for-node - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js policyinsights/resource-manager ``` @@ -187,54 +186,7 @@ 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) && !$(track2) -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) && $(track2) -python-mode: create -azure-arm: true -license-header: MICROSOFT_MIT_NO_VERSION -namespace: azure.mgmt.policyinsights -package-name: azure-mgmt-policyinsights -package-version: 1.0.0b1 -clear-output-folder: true - -directive: - - from: policyEvents.json - where: $.parameters.fromParameter - transform: $['x-ms-client-name'] = 'FromProperty' - - - from: policyStates.json - where: $.parameters.fromParameter - transform: $['x-ms-client-name'] = 'FromProperty' -``` - -``` yaml $(python) && $(python-mode) == 'update' -no-namespace-folders: true -output-folder: $(python-sdks-folder)/policyinsights/azure-mgmt-policyinsights/azure/mgmt/policyinsights -python: - no-namespace-folders: true - output-folder: $(python-sdks-folder)/policyinsights/azure-mgmt-policyinsights/azure/mgmt/policyinsights -``` -``` yaml $(python) && $(python-mode) == 'create' -basic-setup-py: true -output-folder: $(python-sdks-folder)/policyinsights/azure-mgmt-policyinsights -python: - basic-setup-py: true - output-folder: $(python-sdks-folder)/policyinsights/azure-mgmt-policyinsights -``` +See configuration in [readme.python.md](./readme.python.md) ## Go @@ -333,7 +285,5 @@ generate-interface: true ``` -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/policyinsights/resource-manager/readme.python.md b/specification/policyinsights/resource-manager/readme.python.md new file mode 100644 index 000000000000..f6544fe4cf1e --- /dev/null +++ b/specification/policyinsights/resource-manager/readme.python.md @@ -0,0 +1,54 @@ +## 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) && !$(track2) +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) && $(track2) +python-mode: create +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +namespace: azure.mgmt.policyinsights +package-name: azure-mgmt-policyinsights +package-version: 1.0.0b1 +clear-output-folder: true +``` + +``` yaml $(python) && $(python-mode) == 'update' +no-namespace-folders: true +output-folder: $(python-sdks-folder)/policyinsights/azure-mgmt-policyinsights/azure/mgmt/policyinsights +python: + no-namespace-folders: true + output-folder: $(python-sdks-folder)/policyinsights/azure-mgmt-policyinsights/azure/mgmt/policyinsights +``` +``` yaml $(python) && $(python-mode) == 'create' +basic-setup-py: true +output-folder: $(python-sdks-folder)/policyinsights/azure-mgmt-policyinsights +python: + basic-setup-py: true + output-folder: $(python-sdks-folder)/policyinsights/azure-mgmt-policyinsights +``` + +``` yaml $(python) && $(track2) +modelerfour: + lenient-model-deduplication: true +directive: + - from: policyEvents.json + where: $.parameters.fromParameter + transform: $['x-ms-client-name'] = 'FromProperty' + + - from: policyStates.json + where: $.parameters.fromParameter + transform: $['x-ms-client-name'] = 'FromProperty' +``` diff --git a/specification/portal/resource-manager/Microsoft.Portal/preview/2015-08-01-preview/portal.json b/specification/portal/resource-manager/Microsoft.Portal/preview/2015-08-01-preview/portal.json index 9bbdec8f0d6f..d75ad60bd5f3 100644 --- a/specification/portal/resource-manager/Microsoft.Portal/preview/2015-08-01-preview/portal.json +++ b/specification/portal/resource-manager/Microsoft.Portal/preview/2015-08-01-preview/portal.json @@ -395,6 +395,11 @@ }, "description": "List of dashboards." }, + "DashboardPartMetadata": { + "description": "A dashboard part metadata.", + "type": "object", + "additionalProperties": true + }, "DashboardParts": { "type": "object", "description": "A dashboard part.", @@ -438,11 +443,7 @@ } }, "metadata": { - "description": "The dashboard part's metadata.", - "type": "object", - "additionalProperties": { - "type": "object" - } + "$ref": "#/definitions/DashboardPartMetadata" } } }, diff --git a/specification/portal/resource-manager/Microsoft.Portal/preview/2018-10-01-preview/portal.json b/specification/portal/resource-manager/Microsoft.Portal/preview/2018-10-01-preview/portal.json index e136b25cb892..bcfa91f5e57e 100644 --- a/specification/portal/resource-manager/Microsoft.Portal/preview/2018-10-01-preview/portal.json +++ b/specification/portal/resource-manager/Microsoft.Portal/preview/2018-10-01-preview/portal.json @@ -395,6 +395,11 @@ }, "description": "List of dashboards." }, + "DashboardPartMetadata": { + "description": "A dashboard part metadata.", + "type": "object", + "additionalProperties": true + }, "DashboardParts": { "type": "object", "description": "A dashboard part.", @@ -438,11 +443,7 @@ } }, "metadata": { - "description": "The dashboard part's metadata.", - "type": "object", - "additionalProperties": { - "type": "object" - } + "$ref": "#/definitions/DashboardPartMetadata" } } }, diff --git a/specification/portal/resource-manager/Microsoft.Portal/preview/2019-01-01-preview/portal.json b/specification/portal/resource-manager/Microsoft.Portal/preview/2019-01-01-preview/portal.json index d3494deaa119..60338a27563e 100644 --- a/specification/portal/resource-manager/Microsoft.Portal/preview/2019-01-01-preview/portal.json +++ b/specification/portal/resource-manager/Microsoft.Portal/preview/2019-01-01-preview/portal.json @@ -401,6 +401,11 @@ }, "description": "List of dashboards." }, + "DashboardPartMetadata": { + "description": "A dashboard part metadata.", + "type": "object", + "additionalProperties": true + }, "DashboardParts": { "type": "object", "description": "A dashboard part.", @@ -448,11 +453,7 @@ } }, "metadata": { - "description": "The dashboard part's metadata.", - "type": "object", - "additionalProperties": { - "type": "object" - } + "$ref": "#/definitions/DashboardPartMetadata" } } }, diff --git a/specification/portal/resource-manager/Microsoft.Portal/preview/2020-09-01-preview/portal.json b/specification/portal/resource-manager/Microsoft.Portal/preview/2020-09-01-preview/portal.json index 0d02b3278e4e..7467a2ca1f36 100644 --- a/specification/portal/resource-manager/Microsoft.Portal/preview/2020-09-01-preview/portal.json +++ b/specification/portal/resource-manager/Microsoft.Portal/preview/2020-09-01-preview/portal.json @@ -460,6 +460,7 @@ "type" ], "description": "A dashboard part metadata.", + "additionalProperties": true, "properties": { "type": { "type": "string", diff --git a/specification/portal/resource-manager/readme.azureresourceschema.md b/specification/portal/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index fffdb3030891..000000000000 --- a/specification/portal/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,62 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-portal-2020-09-01-preview - - tag: schema-portal-2019-01-01-preview - - tag: schema-portal-2018-10-01-preview - - tag: schema-portal-2015-08-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-portal-2020-09-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-portal-2020-09-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Portal/preview/2020-09-01-preview/portal.json - - Microsoft.Portal/preview/2020-09-01-preview/tenantConfiguration.json - -``` - -### Tag: schema-portal-2019-01-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-portal-2019-01-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Portal/preview/2019-01-01-preview/portal.json - - Microsoft.Portal/preview/2019-01-01-preview/tenantConfiguration.json - -``` - -### Tag: schema-portal-2018-10-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-portal-2018-10-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Portal/preview/2018-10-01-preview/portal.json - -``` - -### Tag: schema-portal-2015-08-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-portal-2015-08-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Portal/preview/2015-08-01-preview/portal.json - -``` diff --git a/specification/portal/resource-manager/readme.go.md b/specification/portal/resource-manager/readme.go.md index 8f2749c5c9b2..837f4c687daf 100644 --- a/specification/portal/resource-manager/readme.go.md +++ b/specification/portal/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ```yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: portal clear-output-folder: true ``` diff --git a/specification/portal/resource-manager/readme.md b/specification/portal/resource-manager/readme.md index a06cb00ff751..b776c3e81975 100644 --- a/specification/portal/resource-manager/readme.md +++ b/specification/portal/resource-manager/readme.md @@ -79,7 +79,7 @@ This is not used by Autorest itself. ``` yaml $(swagger-to-sdk) swagger-to-sdk: - repo: azure-powershell - - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-java - repo: azure-sdk-for-go - repo: azure-sdk-for-node @@ -89,8 +89,6 @@ swagger-to-sdk: - bundle install && rake arm:regen_all_profiles['azure_mgmt_portal'] - repo: azure-cli-extensions - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js portal/resource-manager ``` ## Go @@ -117,7 +115,5 @@ See configuration in [readme.csharp.md](./readme.csharp.md) See configuration in [readme.nodejs.md](./readme.nodejs.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/portal/resource-manager/readme.python.md b/specification/portal/resource-manager/readme.python.md index 5a4ec60d1da8..91e4f117d28f 100644 --- a/specification/portal/resource-manager/readme.python.md +++ b/specification/portal/resource-manager/readme.python.md @@ -3,40 +3,21 @@ These settings apply only when `--python` is specified on the command line. Please also specify `--python-sdks-folder=`. -```yaml $(python) && !$(track2) -python: - azure-arm: true - license-header: MICROSOFT_MIT_NO_VERSION - payload-flattening-threshold: 2 - namespace: azure.mgmt.portal - package-name: azure-mgmt-portal - package-version: 0.1.0 - clear-output-folder: true -``` -```yaml $(python) && $(track2) +``` yaml $(track2) azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION namespace: azure.mgmt.portal package-name: azure-mgmt-portal -package-version: 0.1.0 +package-version: 1.0.0b1 clear-output-folder: true ``` -```yaml $(python) && $(python-mode) == 'create' && !$(track2) -python: - basic-setup-py: true - output-folder: $(python-sdks-folder)/portal/azure-mgmt-portal -``` -```yaml $(python) && $(python-mode) == 'update' && !$(track2) -python: - no-namespace-folders: true - output-folder: $(python-sdks-folder)/portal/azure-mgmt-portal/azure/mgmt/portal +``` yaml $(python-mode) == 'update' && $(track2) +no-namespace-folders: true +output-folder: $(python-sdks-folder)/portal/azure-mgmt-portal/azure/mgmt/portal ``` -```yaml $(python) && $(python-mode) == 'create' && $(track2) + +``` yaml $(python-mode) == 'create' && $(track2) basic-setup-py: true output-folder: $(python-sdks-folder)/portal/azure-mgmt-portal ``` -```yaml $(python) && $(python-mode) == 'update' && $(track2) -no-namespace-folders: true -output-folder: $(python-sdks-folder)/portal/azure-mgmt-portal/azure/mgmt/portal -``` diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-02-14-preview/examples/ServerCreate.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-02-14-preview/examples/ServerCreate.json index 6f8e66d7030e..ce333211ec73 100644 --- a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-02-14-preview/examples/ServerCreate.json +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-02-14-preview/examples/ServerCreate.json @@ -18,6 +18,9 @@ "delegatedSubnetArguments": { "subnetArmResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-vnet-subnet" }, + "privateDnsZoneArguments": { + "privateDnsZoneArmResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.Network/privateDnsZones/test-private-dns-zone" + }, "storageProfile": { "storageMB": 524288, "backupRetentionDays": 7 @@ -48,6 +51,9 @@ "delegatedSubnetArguments": { "subnetArmResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-vnet-subnet" }, + "privateDnsZoneArguments": { + "privateDnsZoneArmResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.Network/privateDnsZones/test-private-dns-zone" + }, "storageProfile": { "storageMB": 524288, "backupRetentionDays": 7 @@ -88,6 +94,9 @@ "delegatedSubnetArguments": { "subnetArmResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-vnet-subnet" }, + "privateDnsZoneArguments": { + "privateDnsZoneArmResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.Network/privateDnsZones/test-private-dns-zone" + }, "storageProfile": { "storageMB": 524288, "backupRetentionDays": 7 diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-02-14-preview/examples/ServerCreatePointInTimeRestore.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-02-14-preview/examples/ServerCreatePointInTimeRestore.json index 1a5ce0eaf385..4c902f67f91c 100644 --- a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-02-14-preview/examples/ServerCreatePointInTimeRestore.json +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-02-14-preview/examples/ServerCreatePointInTimeRestore.json @@ -32,6 +32,7 @@ "publicNetworkAccess": "Enabled", "haEnabled": "Disabled", "delegatedSubnetArguments": {}, + "privateDnsZoneArguments": {}, "storageProfile": { "storageMB": 524288, "backupRetentionDays": 7 @@ -63,6 +64,7 @@ "publicNetworkAccess": "Enabled", "haEnabled": "Disabled", "delegatedSubnetArguments": {}, + "privateDnsZoneArguments": {}, "storageProfile": { "storageMB": 524288, "backupRetentionDays": 7 diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-02-14-preview/examples/ServerGetWithVnet.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-02-14-preview/examples/ServerGetWithVnet.json index 9c8216593f4c..13126f937fcc 100644 --- a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-02-14-preview/examples/ServerGetWithVnet.json +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-02-14-preview/examples/ServerGetWithVnet.json @@ -23,6 +23,9 @@ "delegatedSubnetArguments": { "subnetArmResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-vnet-subnet" }, + "privateDnsZoneArguments": { + "privateDnsZoneArmResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.Network/privateDnsZones/test-private-dns-zone" + }, "storageProfile": { "storageMB": 524288, "backupRetentionDays": 7 diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-02-14-preview/examples/ServerUpdate.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-02-14-preview/examples/ServerUpdate.json index 08994e49f0ba..60c9bb9ae82a 100644 --- a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-02-14-preview/examples/ServerUpdate.json +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-02-14-preview/examples/ServerUpdate.json @@ -39,6 +39,7 @@ "backupRetentionDays": 20 }, "delegatedSubnetArguments": {}, + "privateDnsZoneArguments": {}, "haEnabled": "Disabled", "availabilityZone": "1" }, diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-02-14-preview/examples/ServerUpdateWithCustomerMaintenanceWindow.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-02-14-preview/examples/ServerUpdateWithCustomerMaintenanceWindow.json index bcd94b4eeae5..26e2330fffcd 100644 --- a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-02-14-preview/examples/ServerUpdateWithCustomerMaintenanceWindow.json +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-02-14-preview/examples/ServerUpdateWithCustomerMaintenanceWindow.json @@ -36,6 +36,7 @@ "backupRetentionDays": 20 }, "delegatedSubnetArguments": {}, + "privateDnsZoneArguments": {}, "haEnabled": "Disabled", "availabilityZone": "1", "maintenanceWindow": { diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-02-14-preview/postgresql.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-02-14-preview/postgresql.json index 475dd4e7e63a..6cb9ac4eb47d 100644 --- a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-02-14-preview/postgresql.json +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-02-14-preview/postgresql.json @@ -1305,6 +1305,14 @@ } } }, + "privateDnsZoneArguments": { + "properties": { + "privateDnsZoneArmResourceId": { + "type": "string", + "description": "private dns zone arm resource id." + } + } + }, "createMode": { "type": "string", "description": "The mode to create a new PostgreSQL server.", diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-02-14-privatepreview/examples/ServerCreate.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-02-14-privatepreview/examples/ServerCreate.json index 857216019136..065dc0a78d06 100644 --- a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-02-14-privatepreview/examples/ServerCreate.json +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-02-14-privatepreview/examples/ServerCreate.json @@ -18,6 +18,9 @@ "delegatedSubnetArguments": { "subnetArmResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-vnet-subnet" }, + "privateDnsZoneArguments": { + "privateDnsZoneArmResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.Network/privateDnsZones/test-private-dns-zone" + }, "storageProfile": { "storageMB": 524288, "backupRetentionDays": 7 @@ -48,6 +51,9 @@ "delegatedSubnetArguments": { "subnetArmResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-vnet-subnet" }, + "privateDnsZoneArguments": { + "privateDnsZoneArmResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.Network/privateDnsZones/test-private-dns-zone" + }, "storageProfile": { "storageMB": 524288, "backupRetentionDays": 7 @@ -88,6 +94,9 @@ "delegatedSubnetArguments": { "subnetArmResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-vnet-subnet" }, + "privateDnsZoneArguments": { + "privateDnsZoneArmResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.Network/privateDnsZones/test-private-dns-zone" + }, "storageProfile": { "storageMB": 524288, "backupRetentionDays": 7 diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-02-14-privatepreview/examples/ServerCreatePointInTimeRestore.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-02-14-privatepreview/examples/ServerCreatePointInTimeRestore.json index bf154624248e..1c22aac532b6 100644 --- a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-02-14-privatepreview/examples/ServerCreatePointInTimeRestore.json +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-02-14-privatepreview/examples/ServerCreatePointInTimeRestore.json @@ -32,6 +32,7 @@ "publicNetworkAccess": "Enabled", "haEnabled": "Disabled", "delegatedSubnetArguments": {}, + "privateDnsZoneArguments": {}, "storageProfile": { "storageMB": 524288, "backupRetentionDays": 7 @@ -63,6 +64,7 @@ "publicNetworkAccess": "Enabled", "haEnabled": "Disabled", "delegatedSubnetArguments": {}, + "privateDnsZoneArguments": {}, "storageProfile": { "storageMB": 524288, "backupRetentionDays": 7 diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-02-14-privatepreview/examples/ServerGetWithVnet.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-02-14-privatepreview/examples/ServerGetWithVnet.json index d1f727e6dab8..08ef2f7580d6 100644 --- a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-02-14-privatepreview/examples/ServerGetWithVnet.json +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-02-14-privatepreview/examples/ServerGetWithVnet.json @@ -23,6 +23,9 @@ "delegatedSubnetArguments": { "subnetArmResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-vnet-subnet" }, + "privateDnsZoneArguments": { + "privateDnsZoneArmResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.Network/privateDnsZones/test-private-dns-zone" + }, "storageProfile": { "storageMB": 524288, "backupRetentionDays": 7 diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-02-14-privatepreview/examples/ServerUpdate.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-02-14-privatepreview/examples/ServerUpdate.json index cd18ac62f1c0..ffa558b09952 100644 --- a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-02-14-privatepreview/examples/ServerUpdate.json +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-02-14-privatepreview/examples/ServerUpdate.json @@ -39,6 +39,7 @@ "backupRetentionDays": 20 }, "delegatedSubnetArguments": {}, + "privateDnsZoneArguments": {}, "haEnabled": "Disabled", "availabilityZone": "1" }, diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-02-14-privatepreview/examples/ServerUpdateWithCustomerMaintenanceWindow.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-02-14-privatepreview/examples/ServerUpdateWithCustomerMaintenanceWindow.json index 0bf2308701ca..c2bbccbffa9f 100644 --- a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-02-14-privatepreview/examples/ServerUpdateWithCustomerMaintenanceWindow.json +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-02-14-privatepreview/examples/ServerUpdateWithCustomerMaintenanceWindow.json @@ -36,6 +36,7 @@ "backupRetentionDays": 20 }, "delegatedSubnetArguments": {}, + "privateDnsZoneArguments": {}, "haEnabled": "Disabled", "availabilityZone": "1", "maintenanceWindow": { diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-02-14-privatepreview/postgresql.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-02-14-privatepreview/postgresql.json index 9b916204322c..b3eb597b06a0 100644 --- a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-02-14-privatepreview/postgresql.json +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-02-14-privatepreview/postgresql.json @@ -1583,6 +1583,14 @@ } } }, + "privateDnsZoneArguments": { + "properties": { + "privateDnsZoneArmResourceId": { + "type": "string", + "description": "private dns zone arm resource id." + } + } + }, "createMode": { "type": "string", "description": "The mode to create a new PostgreSQL server.", diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-03-31-privatepreview/PrivateDnsZone.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-03-31-privatepreview/PrivateDnsZone.json new file mode 100644 index 000000000000..93b5918cf9c7 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-03-31-privatepreview/PrivateDnsZone.json @@ -0,0 +1,105 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-03-31-privatepreview", + "title": "PostgreSQLManagementClient", + "description": "The Microsoft Azure management API provides create, read, update, and delete functionality for Azure PostgreSQL resources including servers, databases, firewall rules, VNET rules, security alert policies, log files and configurations with new business model." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://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.DBForPostgreSql/getPrivateDnsZoneSuffix": { + "post": { + "tags": [ + "GetPrivateDnsZoneSuffix" + ], + "operationId": "GetPrivateDnsZoneSuffix_Execute", + "x-ms-examples": { + "GetPrivateDnsZoneSuffix": { + "$ref": "./examples/GetPrivateDnsZoneSuffix.json" + } + }, + "description": "Get private DNS zone suffix in the cloud", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "in": "body", + "name": "body", + "required": true, + "schema": { + "type": "string", + "enum": [ + "PostgreSQL", + "PostgreSQLCitus", + "MySQL", + "MariaDb", + "Oracle" + ] + }, + "description": "The required parameters for getting private DNS zone suffix based on server type." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateDnsZoneSuffix" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "PrivateDnsZoneSuffix": { + "type": "string", + "description": "Represents a resource name availability." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "An error response from the Batch service." + } + } +} diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-03-31-privatepreview/examples/GetPrivateDnsZoneSuffix.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-03-31-privatepreview/examples/GetPrivateDnsZoneSuffix.json new file mode 100644 index 000000000000..0230cc66fb14 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-03-31-privatepreview/examples/GetPrivateDnsZoneSuffix.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2021-03-31-privatepreview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "body": "PostgreSQL" + }, + "responses": { + "200": { + "body": "postgres.database.azure.com" + } + } +} diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/CapabilitiesByLocation.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/CapabilitiesByLocation.json new file mode 100644 index 000000000000..ab9b680739f8 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/CapabilitiesByLocation.json @@ -0,0 +1,180 @@ +{ + "parameters": { + "api-version": "2021-04-10-privatepreview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "locationName": "WestUS" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "zone": "none", + "supportedFlexibleServerEditions": [ + { + "name": "Burstable", + "supportedStorageEditions": [ + { + "name": "ManagedDisk", + "supportedStorageMB": [ + { + "name": "32768", + "supportedIops": 120, + "storageSizeMB": 32768 + }, + { + "name": "65536", + "supportedIops": 240, + "storageSizeMB": 65536 + }, + { + "name": "131072", + "supportedIops": 500, + "storageSizeMB": 131072 + } + ] + } + ], + "supportedServerVersions": [ + { + "name": "12", + "supportedVcores": [ + { + "name": "Standard_B1s", + "vCores": 1, + "supportedIops": 320, + "supportedMemoryPerVcoreMB": 1024 + }, + { + "name": "Standard_B1ms", + "vCores": 1, + "supportedIops": 640, + "supportedMemoryPerVcoreMB": 2048 + }, + { + "name": "Standard_B2s", + "vCores": 2, + "supportedIops": 1280, + "supportedMemoryPerVcoreMB": 2048 + } + ] + } + ] + } + ] + }, + { + "zone": "1", + "supportedFlexibleServerEditions": [ + { + "name": "Burstable", + "supportedStorageEditions": [ + { + "name": "ManagedDisk", + "supportedStorageMB": [ + { + "name": "32768", + "supportedIops": 120, + "storageSizeMB": 32768 + }, + { + "name": "65536", + "supportedIops": 240, + "storageSizeMB": 65536 + }, + { + "name": "131072", + "supportedIops": 500, + "storageSizeMB": 131072 + } + ] + } + ], + "supportedServerVersions": [ + { + "name": "12", + "supportedVcores": [ + { + "name": "Standard_B1s", + "vCores": 1, + "supportedIops": 320, + "supportedMemoryPerVcoreMB": 1024 + }, + { + "name": "Standard_B1ms", + "vCores": 1, + "supportedIops": 640, + "supportedMemoryPerVcoreMB": 2048 + }, + { + "name": "Standard_B2s", + "vCores": 2, + "supportedIops": 1280, + "supportedMemoryPerVcoreMB": 2048 + } + ] + } + ] + } + ] + }, + { + "zone": "2", + "supportedFlexibleServerEditions": [ + { + "name": "Burstable", + "supportedStorageEditions": [ + { + "name": "ManagedDisk", + "supportedStorageMB": [ + { + "name": "32768", + "supportedIops": 120, + "storageSizeMB": 32768 + }, + { + "name": "65536", + "supportedIops": 240, + "storageSizeMB": 65536 + }, + { + "name": "131072", + "supportedIops": 500, + "storageSizeMB": 131072 + } + ] + } + ], + "supportedServerVersions": [ + { + "name": "12", + "supportedVcores": [ + { + "name": "Standard_B1s", + "vCores": 1, + "supportedIops": 320, + "supportedMemoryPerVcoreMB": 1024 + }, + { + "name": "Standard_B1ms", + "vCores": 1, + "supportedIops": 640, + "supportedMemoryPerVcoreMB": 2048 + }, + { + "name": "Standard_B2s", + "vCores": 2, + "supportedIops": 1280, + "supportedMemoryPerVcoreMB": 2048 + } + ] + } + ] + } + ] + } + ] + } + } + } +} diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/CheckNameAvailability.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/CheckNameAvailability.json new file mode 100644 index 000000000000..b1b0c14bd6c2 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/CheckNameAvailability.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2021-04-10-privatepreview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "nameAvailabilityRequest": { + "name": "name1", + "type": "Microsoft.DBforPostgreSQL/flexibleServers" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": true, + "message": "", + "name": "name1", + "type": "Microsoft.DBforPostgreSQL/flexibleServers" + } + } + } +} diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/ConfigurationGet.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/ConfigurationGet.json new file mode 100644 index 000000000000..e947852edcac --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/ConfigurationGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "configurationName": "array_nulls", + "serverName": "testserver", + "resourceGroupName": "TestGroup", + "api-version": "2021-04-10-privatepreview", + "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/flexibleServers/testserver/configurations/array_nulls", + "name": "array_nulls", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + } + } + } +} diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/ConfigurationListByServer.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/ConfigurationListByServer.json new file mode 100644 index 000000000000..047f8d9b6c7d --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/ConfigurationListByServer.json @@ -0,0 +1,1902 @@ +{ + "parameters": { + "serverName": "testserver", + "resourceGroupName": "TestGroup", + "api-version": "2021-04-10-privatepreview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff" + }, + "responses": { + "200": { + "body": { + "nextLink": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff//resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations?api-version=2020-02-14-privatepreview&$top=200&$skiptoken=skiptoken", + "value": [ + { + "properties": { + "value": "", + "description": "Sets the application name to be reported in statistics and logs.", + "defaultValue": "", + "dataType": "String", + "allowedValues": "[A-Za-z0-9._-]*", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/application_name", + "name": "application_name", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "on", + "description": "Enables 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/flexibleServers/testserver/configurations/array_nulls", + "name": "array_nulls", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "on", + "description": "Starts the autovacuum subprocess.", + "defaultValue": "on", + "dataType": "Boolean", + "allowedValues": "on,off", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/autovacuum", + "name": "autovacuum", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "0.1", + "description": "Number of tuple inserts, updates, or deletes prior to analyze as a fraction of reltuples.", + "defaultValue": "0.1", + "dataType": "Numeric", + "allowedValues": "0-100", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/autovacuum_analyze_scale_factor", + "name": "autovacuum_analyze_scale_factor", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "50", + "description": "Minimum number of tuple inserts, updates, or deletes prior to analyze.", + "defaultValue": "50", + "dataType": "Integer", + "allowedValues": "0-2147483647", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/autovacuum_analyze_threshold", + "name": "autovacuum_analyze_threshold", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "60", + "description": "Time to sleep between autovacuum runs.", + "defaultValue": "60", + "dataType": "Integer", + "allowedValues": "1-2147483", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/autovacuum_naptime", + "name": "autovacuum_naptime", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "2", + "description": "Vacuum cost delay in milliseconds, for autovacuum.", + "defaultValue": "2", + "dataType": "Integer", + "allowedValues": "-1-100", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/autovacuum_vacuum_cost_delay", + "name": "autovacuum_vacuum_cost_delay", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "-1", + "description": "Vacuum cost amount available before napping, for autovacuum.", + "defaultValue": "-1", + "dataType": "Integer", + "allowedValues": "-1-10000", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/autovacuum_vacuum_cost_limit", + "name": "autovacuum_vacuum_cost_limit", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "0.2", + "description": "Number of tuple updates or deletes prior to vacuum as a fraction of reltuples.", + "defaultValue": "0.2", + "dataType": "Numeric", + "allowedValues": "0-100", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/autovacuum_vacuum_scale_factor", + "name": "autovacuum_vacuum_scale_factor", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "50", + "description": "Minimum number of tuple updates or deletes prior to vacuum.", + "defaultValue": "50", + "dataType": "Integer", + "allowedValues": "0-2147483647", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/autovacuum_vacuum_threshold", + "name": "autovacuum_vacuum_threshold", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "-1", + "description": "Sets the maximum memory to be used by each autovacuum worker process.", + "defaultValue": "-1", + "dataType": "Integer", + "allowedValues": "-1-2097151", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/autovacuum_work_mem", + "name": "autovacuum_work_mem", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "0", + "description": "Number of pages after which previously performed writes are flushed to disk.", + "defaultValue": "0", + "dataType": "Integer", + "allowedValues": "0-256", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/backend_flush_after", + "name": "backend_flush_after", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/backslash_quote", + "name": "backslash_quote", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "200", + "description": "Background writer sleep time between rounds.", + "defaultValue": "200", + "dataType": "Integer", + "allowedValues": "10-10000", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/bgwriter_delay", + "name": "bgwriter_delay", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "64", + "description": "Number of pages after which previously performed writes are flushed to disk.", + "defaultValue": "64", + "dataType": "Integer", + "allowedValues": "0-256", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/bgwriter_flush_after", + "name": "bgwriter_flush_after", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "100", + "description": "Background writer maximum number of LRU pages to flush per round.", + "defaultValue": "100", + "dataType": "Integer", + "allowedValues": "0-1073741823", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/bgwriter_lru_maxpages", + "name": "bgwriter_lru_maxpages", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "2", + "description": "Multiple of the average buffer usage to free per round.", + "defaultValue": "2", + "dataType": "Numeric", + "allowedValues": "0-10", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/bgwriter_lru_multiplier", + "name": "bgwriter_lru_multiplier", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/bytea_output", + "name": "bytea_output", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "on", + "description": "Checks 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/flexibleServers/testserver/configurations/check_function_bodies", + "name": "check_function_bodies", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "0.5", + "description": "Time spent flushing dirty buffers during checkpoint, as fraction of checkpoint interval.", + "defaultValue": "0.5", + "dataType": "Numeric", + "allowedValues": "0-1", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/checkpoint_completion_target", + "name": "checkpoint_completion_target", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "300", + "description": "Sets the maximum time between automatic WAL checkpoints.", + "defaultValue": "300", + "dataType": "Integer", + "allowedValues": "30-86400", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/checkpoint_timeout", + "name": "checkpoint_timeout", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "30", + "description": "Enables warnings if checkpoint segments are filled more frequently than this.", + "defaultValue": "30", + "dataType": "Integer", + "allowedValues": "0-2147483647", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/checkpoint_warning", + "name": "checkpoint_warning", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/client_encoding", + "name": "client_encoding", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/client_min_messages", + "name": "client_min_messages", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "0", + "description": "Sets the delay in microseconds between transaction commit and flushing WAL to disk.", + "defaultValue": "0", + "dataType": "Integer", + "allowedValues": "0-100000", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/commit_delay", + "name": "commit_delay", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "5", + "description": "Sets the minimum concurrent open transactions before performing commit_delay.", + "defaultValue": "5", + "dataType": "Integer", + "allowedValues": "0-1000", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/commit_siblings", + "name": "commit_siblings", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/constraint_exclusion", + "name": "constraint_exclusion", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/cpu_index_tuple_cost", + "name": "cpu_index_tuple_cost", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/cpu_operator_cost", + "name": "cpu_operator_cost", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/cpu_tuple_cost", + "name": "cpu_tuple_cost", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/cursor_tuple_fraction", + "name": "cursor_tuple_fraction", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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)(, (DMY|MDY|YMD))?", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/DateStyle", + "name": "DateStyle", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/deadlock_timeout", + "name": "deadlock_timeout", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "on", + "description": "Indents parse and plan tree displays.", + "defaultValue": "on", + "dataType": "Boolean", + "allowedValues": "on,off", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/debug_pretty_print", + "name": "debug_pretty_print", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/debug_print_parse", + "name": "debug_print_parse", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/debug_print_plan", + "name": "debug_print_plan", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/debug_print_rewritten", + "name": "debug_print_rewritten", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/default_statistics_target", + "name": "default_statistics_target", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "", + "description": "Sets the default tablespace to create tables and indexes in.", + "defaultValue": "", + "dataType": "String", + "allowedValues": "[A-Za-z._]*", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/default_tablespace", + "name": "default_tablespace", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/default_text_search_config", + "name": "default_text_search_config", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/default_transaction_deferrable", + "name": "default_transaction_deferrable", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/default_transaction_isolation", + "name": "default_transaction_isolation", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/default_transaction_read_only", + "name": "default_transaction_read_only", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "off", + "description": "Creates 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/flexibleServers/testserver/configurations/default_with_oids", + "name": "default_with_oids", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "3145728", + "description": "Sets the planner's assumption about the size of the disk cache.", + "defaultValue": "3145728", + "dataType": "Integer", + "allowedValues": "1-2147483647", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/effective_cache_size", + "name": "effective_cache_size", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/enable_bitmapscan", + "name": "enable_bitmapscan", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "on", + "description": "Enables the planner's use of gather merge plans.", + "defaultValue": "on", + "dataType": "Boolean", + "allowedValues": "on,off", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/enable_gathermerge", + "name": "enable_gathermerge", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/enable_hashagg", + "name": "enable_hashagg", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/enable_hashjoin", + "name": "enable_hashjoin", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/enable_indexonlyscan", + "name": "enable_indexonlyscan", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/enable_indexscan", + "name": "enable_indexscan", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/enable_material", + "name": "enable_material", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/enable_mergejoin", + "name": "enable_mergejoin", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/enable_nestloop", + "name": "enable_nestloop", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/enable_seqscan", + "name": "enable_seqscan", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/enable_sort", + "name": "enable_sort", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/enable_tidscan", + "name": "enable_tidscan", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "on", + "description": "Warns 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/flexibleServers/testserver/configurations/escape_string_warning", + "name": "escape_string_warning", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "off", + "description": "Terminates 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/flexibleServers/testserver/configurations/exit_on_error", + "name": "exit_on_error", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "1", + "description": "Sets the number of digits displayed for floating-point values.", + "defaultValue": "1", + "dataType": "Integer", + "allowedValues": "-15-3", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/extra_float_digits", + "name": "extra_float_digits", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/force_parallel_mode", + "name": "force_parallel_mode", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/from_collapse_limit", + "name": "from_collapse_limit", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/geqo", + "name": "geqo", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/geqo_effort", + "name": "geqo_effort", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/geqo_generations", + "name": "geqo_generations", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/geqo_pool_size", + "name": "geqo_pool_size", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "0", + "description": "GEQO: seed for random path selection.", + "defaultValue": "0", + "dataType": "Numeric", + "allowedValues": "0-1", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/geqo_seed", + "name": "geqo_seed", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "2", + "description": "GEQO: selective pressure within the population.", + "defaultValue": "2", + "dataType": "Numeric", + "allowedValues": "1.5-2", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/geqo_selection_bias", + "name": "geqo_selection_bias", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/geqo_threshold", + "name": "geqo_threshold", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/gin_fuzzy_search_limit", + "name": "gin_fuzzy_search_limit", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "4096", + "description": "Sets the maximum size of the pending list for GIN index.", + "defaultValue": "4096", + "dataType": "Integer", + "allowedValues": "64-2097151", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/gin_pending_list_limit", + "name": "gin_pending_list_limit", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/idle_in_transaction_session_timeout", + "name": "idle_in_transaction_session_timeout", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/IntervalStyle", + "name": "IntervalStyle", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/join_collapse_limit", + "name": "join_collapse_limit", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "en_US.utf-8", + "description": "Sets the locale for formatting monetary amounts.", + "defaultValue": "en_US.utf-8", + "dataType": "String", + "allowedValues": "[A-Za-z0-9._ -]+", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/lc_monetary", + "name": "lc_monetary", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "en_US.utf-8", + "description": "Sets the locale for formatting numbers.", + "defaultValue": "en_US.utf-8", + "dataType": "String", + "allowedValues": "[A-Za-z0-9._ -]+", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/lc_numeric", + "name": "lc_numeric", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "off", + "description": "Enables backward compatibility mode for privilege checks on large objects.", + "defaultValue": "off", + "dataType": "Boolean", + "allowedValues": "on,off", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/lo_compat_privileges", + "name": "lo_compat_privileges", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/lock_timeout", + "name": "lock_timeout", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "-1", + "description": "Sets the minimum execution time above which autovacuum actions will be logged.", + "defaultValue": "-1", + "dataType": "Integer", + "allowedValues": "-1-2147483647", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/log_autovacuum_min_duration", + "name": "log_autovacuum_min_duration", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "on", + "description": "Logs each checkpoint.", + "defaultValue": "on", + "dataType": "Boolean", + "allowedValues": "on,off", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/log_checkpoints", + "name": "log_checkpoints", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "on", + "description": "Logs each successful connection.", + "defaultValue": "on", + "dataType": "Boolean", + "allowedValues": "on,off", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/log_connections", + "name": "log_connections", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "stderr", + "description": "Sets the destination for server log output.", + "defaultValue": "stderr", + "dataType": "Enumeration", + "allowedValues": "stderr,csvlog", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/log_destination", + "name": "log_destination", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/log_disconnections", + "name": "log_disconnections", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/log_duration", + "name": "log_duration", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/log_error_verbosity", + "name": "log_error_verbosity", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/log_lock_waits", + "name": "log_lock_waits", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/log_min_duration_statement", + "name": "log_min_duration_statement", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/log_min_error_statement", + "name": "log_min_error_statement", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/log_min_messages", + "name": "log_min_messages", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "off", + "description": "Logs each replication command.", + "defaultValue": "off", + "dataType": "Boolean", + "allowedValues": "on,off", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/log_replication_commands", + "name": "log_replication_commands", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/log_statement", + "name": "log_statement", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "off", + "description": "For each query, writes cumulative performance statistics to the server log.", + "defaultValue": "off", + "dataType": "Boolean", + "allowedValues": "on,off", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/log_statement_stats", + "name": "log_statement_stats", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "-1", + "description": "Logs the use of temporary files larger than this number of kilobytes.", + "defaultValue": "-1", + "dataType": "Integer", + "allowedValues": "-1-2147483647", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/log_temp_files", + "name": "log_temp_files", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "332800", + "description": "Sets the maximum memory to be used for maintenance operations.", + "defaultValue": "332800", + "dataType": "Integer", + "allowedValues": "1024-2097151", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/maintenance_work_mem", + "name": "maintenance_work_mem", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "8", + "description": "Sets the maximum number of parallel workers than can be active at one time.", + "defaultValue": "8", + "dataType": "Integer", + "allowedValues": "0-1024", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/max_parallel_workers", + "name": "max_parallel_workers", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "2", + "description": "Sets the maximum number of parallel processes per executor node.", + "defaultValue": "2", + "dataType": "Integer", + "allowedValues": "0-1024", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/max_parallel_workers_per_gather", + "name": "max_parallel_workers_per_gather", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "2", + "description": "Sets the maximum number of predicate-locked tuples per page.", + "defaultValue": "2", + "dataType": "Integer", + "allowedValues": "0-2147483647", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/max_pred_locks_per_page", + "name": "max_pred_locks_per_page", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "-2", + "description": "Sets the maximum number of predicate-locked pages and tuples per relation.", + "defaultValue": "-2", + "dataType": "Integer", + "allowedValues": "-2147483648-2147483647", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/max_pred_locks_per_relation", + "name": "max_pred_locks_per_relation", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "30000", + "description": "Sets the maximum delay before canceling queries when a hot standby server is processing archived WAL data.", + "defaultValue": "30000", + "dataType": "Integer", + "allowedValues": "-1-2147483647", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/max_standby_archive_delay", + "name": "max_standby_archive_delay", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "30000", + "description": "Sets the maximum delay before canceling queries when a hot standby server is processing streamed WAL data.", + "defaultValue": "30000", + "dataType": "Integer", + "allowedValues": "-1-2147483647", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/max_standby_streaming_delay", + "name": "max_standby_streaming_delay", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "2", + "description": "Maximum number of table synchronization workers per subscription.", + "defaultValue": "2", + "dataType": "Integer", + "allowedValues": "0-262143", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/max_sync_workers_per_subscription", + "name": "max_sync_workers_per_subscription", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "1024", + "description": "Sets the WAL size that triggers a checkpoint.", + "defaultValue": "1024", + "dataType": "Integer", + "allowedValues": "2-2097151", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/max_wal_size", + "name": "max_wal_size", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "64", + "description": "Sets the minimum amount of index data for a parallel scan.", + "defaultValue": "64", + "dataType": "Integer", + "allowedValues": "0-715827882", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/min_parallel_index_scan_size", + "name": "min_parallel_index_scan_size", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "1024", + "description": "Sets the minimum amount of table data for a parallel scan.", + "defaultValue": "1024", + "dataType": "Integer", + "allowedValues": "0-715827882", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/min_parallel_table_scan_size", + "name": "min_parallel_table_scan_size", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "80", + "description": "Sets the minimum size to shrink the WAL to.", + "defaultValue": "80", + "dataType": "Integer", + "allowedValues": "2-2097151", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/min_wal_size", + "name": "min_wal_size", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "off", + "description": "Emits a warning for constructs that changed meaning since PostgreSQL 9.4.", + "defaultValue": "off", + "dataType": "Boolean", + "allowedValues": "on,off", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/operator_precedence_warning", + "name": "operator_precedence_warning", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/parallel_setup_cost", + "name": "parallel_setup_cost", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/parallel_tuple_cost", + "name": "parallel_tuple_cost", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "off", + "description": "When generating SQL fragments, quotes all identifiers.", + "defaultValue": "off", + "dataType": "Boolean", + "allowedValues": "on,off", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/quote_all_identifiers", + "name": "quote_all_identifiers", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "4", + "description": "Sets the planner's estimate of the cost of a nonsequentially fetched disk page.", + "defaultValue": "4", + "dataType": "Numeric", + "allowedValues": "0-1.79769e+308", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/random_page_cost", + "name": "random_page_cost", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "on", + "description": "Enables row security.", + "defaultValue": "on", + "dataType": "Boolean", + "allowedValues": "on,off", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/row_security", + "name": "row_security", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/search_path", + "name": "search_path", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "1", + "description": "Sets the planner's estimate of the cost of a sequentially fetched disk page.", + "defaultValue": "1", + "dataType": "Numeric", + "allowedValues": "0-1.79769e+308", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/seq_page_cost", + "name": "seq_page_cost", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "origin", + "description": "Sets the session's behavior for triggers and rewrite rules.", + "defaultValue": "origin", + "dataType": "Enumeration", + "allowedValues": "origin,replica,local", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/session_replication_role", + "name": "session_replication_role", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/standard_conforming_strings", + "name": "standard_conforming_strings", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/statement_timeout", + "name": "statement_timeout", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "on", + "description": "Enables 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/flexibleServers/testserver/configurations/synchronize_seqscans", + "name": "synchronize_seqscans", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/synchronous_commit", + "name": "synchronous_commit", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "9", + "description": "Maximum number of TCP keepalive retransmits.", + "defaultValue": "9", + "dataType": "Integer", + "allowedValues": "0-2147483647", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/tcp_keepalives_count", + "name": "tcp_keepalives_count", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "120", + "description": "Time between issuing TCP keepalives.", + "defaultValue": "120", + "dataType": "Integer", + "allowedValues": "0-2147483647", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/tcp_keepalives_idle", + "name": "tcp_keepalives_idle", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "30", + "description": "Time between TCP keepalive retransmits.", + "defaultValue": "30", + "dataType": "Integer", + "allowedValues": "0-2147483647", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/tcp_keepalives_interval", + "name": "tcp_keepalives_interval", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "1024", + "description": "Sets the maximum number of temporary buffers used by each database session.", + "defaultValue": "1024", + "dataType": "Integer", + "allowedValues": "100-1073741823", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/temp_buffers", + "name": "temp_buffers", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "", + "description": "Sets the tablespace(s) to use for temporary tables and sort files.", + "defaultValue": "", + "dataType": "String", + "allowedValues": "[A-Za-z._]*", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/temp_tablespaces", + "name": "temp_tablespaces", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "UTC", + "description": "Sets the time zone for displaying and interpreting time stamps.", + "defaultValue": "UTC", + "dataType": "String", + "allowedValues": "[A-Za-z0-9/+_-]+", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/TimeZone", + "name": "TimeZone", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "on", + "description": "Collects information about executing commands.", + "defaultValue": "on", + "dataType": "Boolean", + "allowedValues": "on,off", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/track_activities", + "name": "track_activities", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "on", + "description": "Collects statistics on database activity.", + "defaultValue": "on", + "dataType": "Boolean", + "allowedValues": "on,off", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/track_counts", + "name": "track_counts", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "none", + "description": "Collects function-level statistics on database activity.", + "defaultValue": "none", + "dataType": "Enumeration", + "allowedValues": "none,pl,all", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/track_functions", + "name": "track_functions", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "off", + "description": "Collects timing statistics for database I/O activity.", + "defaultValue": "off", + "dataType": "Boolean", + "allowedValues": "on,off", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/track_io_timing", + "name": "track_io_timing", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/transform_null_equals", + "name": "transform_null_equals", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "0", + "description": "Vacuum cost delay in milliseconds.", + "defaultValue": "0", + "dataType": "Integer", + "allowedValues": "0-100", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/vacuum_cost_delay", + "name": "vacuum_cost_delay", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "200", + "description": "Vacuum cost amount available before napping.", + "defaultValue": "200", + "dataType": "Integer", + "allowedValues": "1-10000", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/vacuum_cost_limit", + "name": "vacuum_cost_limit", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "20", + "description": "Vacuum cost for a page dirtied by vacuum.", + "defaultValue": "20", + "dataType": "Integer", + "allowedValues": "0-10000", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/vacuum_cost_page_dirty", + "name": "vacuum_cost_page_dirty", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "1", + "description": "Vacuum cost for a page found in the buffer cache.", + "defaultValue": "1", + "dataType": "Integer", + "allowedValues": "0-10000", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/vacuum_cost_page_hit", + "name": "vacuum_cost_page_hit", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "10", + "description": "Vacuum cost for a page not found in the buffer cache.", + "defaultValue": "10", + "dataType": "Integer", + "allowedValues": "0-10000", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/vacuum_cost_page_miss", + "name": "vacuum_cost_page_miss", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "0", + "description": "Number of transactions by which VACUUM and HOT cleanup should be deferred, if any.", + "defaultValue": "0", + "dataType": "Integer", + "allowedValues": "0-1000000", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/vacuum_defer_cleanup_age", + "name": "vacuum_defer_cleanup_age", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "50000000", + "description": "Minimum age at which VACUUM should freeze a table row.", + "defaultValue": "50000000", + "dataType": "Integer", + "allowedValues": "0-1000000000", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/vacuum_freeze_min_age", + "name": "vacuum_freeze_min_age", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "150000000", + "description": "Age at which VACUUM should scan whole table to freeze tuples.", + "defaultValue": "150000000", + "dataType": "Integer", + "allowedValues": "0-2000000000", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/vacuum_freeze_table_age", + "name": "vacuum_freeze_table_age", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "5000000", + "description": "Minimum age at which VACUUM should freeze a MultiXactId in a table row.", + "defaultValue": "5000000", + "dataType": "Integer", + "allowedValues": "0-1000000000", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/vacuum_multixact_freeze_min_age", + "name": "vacuum_multixact_freeze_min_age", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "150000000", + "description": "Multixact age at which VACUUM should scan whole table to freeze tuples.", + "defaultValue": "150000000", + "dataType": "Integer", + "allowedValues": "0-2000000000", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/vacuum_multixact_freeze_table_age", + "name": "vacuum_multixact_freeze_table_age", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "10", + "description": "Sets the maximum interval between WAL receiver status reports to the primary.", + "defaultValue": "10", + "dataType": "Integer", + "allowedValues": "0-2147483", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/wal_receiver_status_interval", + "name": "wal_receiver_status_interval", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "200", + "description": "Time between WAL flushes performed in the WAL writer.", + "defaultValue": "200", + "dataType": "Integer", + "allowedValues": "1-10000", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/wal_writer_delay", + "name": "wal_writer_delay", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "128", + "description": "Amount of WAL written out by WAL writer that triggers a flush.", + "defaultValue": "128", + "dataType": "Integer", + "allowedValues": "0-2147483647", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/wal_writer_flush_after", + "name": "wal_writer_flush_after", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "115712", + "description": "Sets the amount of memory to be used by internal sort operations and hash tables before writing to temporary disk files.", + "defaultValue": "115712", + "dataType": "Integer", + "allowedValues": "4096-2097151", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/work_mem", + "name": "work_mem", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/xmlbinary", + "name": "xmlbinary", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/testserver/configurations/xmloption", + "name": "xmloption", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + } + ] + } + } + } +} diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/ConfigurationUpdate.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/ConfigurationUpdate.json new file mode 100644 index 000000000000..6fc31af3e64a --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/ConfigurationUpdate.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "serverName": "testserver", + "configurationName": "event_scheduler", + "resourceGroupName": "testrg", + "api-version": "2021-04-10-privatepreview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "parameters": { + "properties": { + "value": "on", + "source": "user-override" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "value": "ON", + "description": "Indicates the status of the Event Scheduler.", + "defaultValue": "OFF", + "dataType": "Enumeration", + "allowedValues": "ON,OFF,DISABLED", + "source": "user-override" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/configurations/event_scheduler", + "name": "event_scheduler", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/configurations" + } + }, + "202": {} + } +} diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/FirewallRuleCreate.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/FirewallRuleCreate.json new file mode 100644 index 000000000000..c387a3354ec8 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/FirewallRuleCreate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "firewallRuleName": "rule1", + "serverName": "testserver", + "resourceGroupName": "TestGroup", + "api-version": "2021-04-10-privatepreview", + "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/flexibleServers/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/flexibleServers/firewallRules", + "properties": { + "startIpAddress": "0.0.0.0", + "endIpAddress": "255.255.255.255" + } + } + }, + "202": {} + } +} diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/FirewallRuleDelete.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/FirewallRuleDelete.json new file mode 100644 index 000000000000..52c08ef2b92d --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/FirewallRuleDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "firewallRuleName": "rule1", + "serverName": "testserver", + "resourceGroupName": "TestGroup", + "api-version": "2021-04-10-privatepreview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/FirewallRuleGet.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/FirewallRuleGet.json new file mode 100644 index 000000000000..44f193b6f578 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/FirewallRuleGet.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "firewallRuleName": "rule1", + "serverName": "testserver", + "resourceGroupName": "TestGroup", + "api-version": "2021-04-10-privatepreview", + "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/flexibleServers/firewallRules", + "properties": { + "startIpAddress": "0.0.0.0", + "endIpAddress": "255.255.255.255" + } + } + } + } +} diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/FirewallRuleListByServer.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/FirewallRuleListByServer.json new file mode 100644 index 000000000000..b450867d5836 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/FirewallRuleListByServer.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "serverName": "testserver", + "resourceGroupName": "TestGroup", + "api-version": "2021-04-10-privatepreview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff" + }, + "responses": { + "200": { + "body": { + "nextLink": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff//resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/firewallRules?api-version=2020-02-14-privatepreview&$top=2&$skiptoken=skiptoken", + "value": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/firewallRules/rule1", + "name": "rule1", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/firewallRules", + "properties": { + "startIpAddress": "0.0.0.0", + "endIpAddress": "255.255.255.255" + } + }, + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/testserver/firewallRules/rule2", + "name": "rule2", + "type": "Microsoft.DBforPostgreSQL/flexibleServers/firewallRules", + "properties": { + "startIpAddress": "1.0.0.0", + "endIpAddress": "255.0.0.0" + } + } + ] + } + } + } +} diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/OperationList.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/OperationList.json new file mode 100644 index 000000000000..fca6e07cde04 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/OperationList.json @@ -0,0 +1,176 @@ +{ + "parameters": { + "api-version": "2021-04-10-privatepreview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/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/flexibleServers/delete", + "display": { + "provider": "Microsoft DB for PostgreSQL", + "resource": "PostgreSQL Server", + "operation": "Delete PostgreSQL Server", + "description": "Deletes an existing server." + } + }, + { + "name": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/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/flexibleServers/firewallRules/delete", + "display": { + "provider": "Microsoft DB for PostgreSQL", + "resource": "Firewall Rules", + "operation": "Delete Firewall Rule", + "description": "Deletes an existing firewall rule." + } + }, + { + "name": "Microsoft.DBforPostgreSQL/flexibleServers/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/flexibleServers/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/flexibleServers/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" + } + } + ] + } + } + } +} diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/RecoverableServersGet.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/RecoverableServersGet.json new file mode 100644 index 000000000000..54f4e38645c0 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/RecoverableServersGet.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testrg", + "serverName": "pgtestsvc4", + "api-version": "2021-04-10-privatepreview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/servers/pgtestsvc4", + "name": "pgtestsvc4", + "type": "Microsoft.DBforPostgreSQL/flexibleServers", + "sku": { + "name": "Standard_D4s_v3", + "tier": "GeneralPurpose" + }, + "location": "westus2", + "properties": { + "version": "12", + "serverEdition": "GeneralPurpose", + "availabilityZone": "2" + } + } + } + } +} diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/ServerCreate.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/ServerCreate.json new file mode 100644 index 000000000000..f471dbcab134 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/ServerCreate.json @@ -0,0 +1,126 @@ +{ + "parameters": { + "serverName": "pgtestsvc4", + "resourceGroupName": "testrg", + "api-version": "2021-04-10-privatepreview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "parameters": { + "location": "westus", + "sku": { + "tier": "GeneralPurpose", + "name": "Standard_D4s_v3" + }, + "properties": { + "administratorLogin": "cloudsa", + "administratorLoginPassword": "password", + "version": "12", + "haEnabled": "Enabled", + "delegatedSubnetArguments": { + "subnetArmResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-vnet-subnet" + }, + "privateDnsZoneArguments": { + "privateDnsZoneArmResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.Network/privateDnsZones/test-private-dns-zone" + }, + "storageProfile": { + "storageMB": 524288, + "backupRetentionDays": 7, + "geoRedundantBackup": "Enabled" + }, + "availabilityZone": "1" + }, + "tags": { + "ElasticServer": "1" + } + } + }, + "responses": { + "201": { + "body": { + "sku": { + "tier": "GeneralPurpose", + "name": "Standard_D4s_v3" + }, + "properties": { + "administratorLogin": "cloudsa", + "version": "12", + "state": "Ready", + "haState": "NotEnabled", + "fullyQualifiedDomainName": "pgtestsvc4.postgres.database.azure.com", + "displayName": "demosingleserver", + "publicNetworkAccess": "Enabled", + "haEnabled": "Enabled", + "delegatedSubnetArguments": { + "subnetArmResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-vnet-subnet" + }, + "privateDnsZoneArguments": { + "privateDnsZoneArmResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.Network/privateDnsZones/test-private-dns-zone" + }, + "storageProfile": { + "storageMB": 524288, + "backupRetentionDays": 7, + "geoRedundantBackup": "Enabled" + }, + "availabilityZone": "1", + "standbyAvailabilityZone": "2", + "maintenanceWindow": { + "dayOfWeek": 0, + "startHour": 0, + "startMinute": 0, + "customWindow": "Disabled" + } + }, + "location": "westus", + "tags": { + "ElasticServer": "1" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/flexibleServers/pgtestsvc4", + "name": "pgtestsvc4", + "type": "Microsoft.DBforPostgreSQL/flexibleServers" + } + }, + "200": { + "body": { + "sku": { + "tier": "GeneralPurpose", + "name": "Standard_D4s_v3" + }, + "properties": { + "administratorLogin": "cloudsa", + "version": "12", + "state": "Ready", + "haState": "NotEnabled", + "fullyQualifiedDomainName": "pgtestsvc4.postgres.database.azure.com", + "displayName": "demosingleserver", + "publicNetworkAccess": "Enabled", + "haEnabled": "Enabled", + "delegatedSubnetArguments": { + "subnetArmResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-vnet-subnet" + }, + "privateDnsZoneArguments": { + "privateDnsZoneArmResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.Network/privateDnsZones/test-private-dns-zone" + }, + "storageProfile": { + "storageMB": 524288, + "backupRetentionDays": 7 + }, + "availabilityZone": "1", + "standbyAvailabilityZone": "2", + "maintenanceWindow": { + "dayOfWeek": 0, + "startHour": 0, + "startMinute": 0, + "customWindow": "Disabled" + } + }, + "location": "westus", + "tags": { + "ElasticServer": "1" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/flexibleServers/pgtestsvc4", + "name": "pgtestsvc4", + "type": "Microsoft.DBforPostgreSQL/flexibleServers" + } + }, + "202": {} + } +} diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/ServerCreateGeoRestore.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/ServerCreateGeoRestore.json new file mode 100644 index 000000000000..4e9d1babffd7 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/ServerCreateGeoRestore.json @@ -0,0 +1,86 @@ +{ + "parameters": { + "serverName": "pgtestsvc4", + "resourceGroupName": "TestGroup", + "api-version": "2021-04-10-privatepreview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "parameters": { + "location": "westus", + "properties": { + "createMode": "GeoRestore", + "sourceServerName": "sourcePgServerName", + "sourceSubscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "sourceResourceGroupName": "RestoreFromResourceGroup", + "pointInTimeUTC": "2020-06-30T23:41:49.000Z", + "availabilityZone": "1" + } + } + }, + "responses": { + "201": { + "body": { + "sku": { + "tier": "GeneralPurpose", + "name": "Standard_D4s_v3" + }, + "properties": { + "administratorLogin": "cloudsa", + "version": "12", + "state": "Ready", + "haState": "NotEnabled", + "fullyQualifiedDomainName": "pgtestsvc4.postgres.database.azure.com", + "displayName": "demosingleserver", + "publicNetworkAccess": "Enabled", + "haEnabled": "Disabled", + "delegatedSubnetArguments": {}, + "privateDnsZoneArguments": {}, + "storageProfile": { + "storageMB": 524288, + "backupRetentionDays": 7 + }, + "availabilityZone": "1" + }, + "location": "westus", + "tags": { + "ElasticServer": "1" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/flexibleServers/pgtestsvc4", + "name": "pgtestsvc4", + "type": "Microsoft.DBforPostgreSQL/flexibleServers" + } + }, + "200": { + "body": { + "sku": { + "tier": "GeneralPurpose", + "name": "Standard_D4s_v3" + }, + "properties": { + "administratorLogin": "cloudsa", + "version": "12", + "state": "Ready", + "haState": "NotEnabled", + "fullyQualifiedDomainName": "pgtestsvc4.postgres.database.azure.com", + "displayName": "demosingleserver", + "publicNetworkAccess": "Enabled", + "haEnabled": "Disabled", + "delegatedSubnetArguments": {}, + "privateDnsZoneArguments": {}, + "storageProfile": { + "storageMB": 524288, + "backupRetentionDays": 7 + }, + "availabilityZone": "1" + }, + "location": "westus", + "tags": { + "ElasticServer": "1" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/flexibleServers/pgtestsvc4", + "name": "pgtestsvc4", + "type": "Microsoft.DBforPostgreSQL/flexibleServers" + } + }, + "202": {} + } +} diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/ServerCreatePointInTimeRestore.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/ServerCreatePointInTimeRestore.json new file mode 100644 index 000000000000..5c22f84f2a8b --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/ServerCreatePointInTimeRestore.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "serverName": "pgtestsvc4", + "resourceGroupName": "TestGroup", + "api-version": "2021-04-10-privatepreview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "parameters": { + "location": "westus", + "properties": { + "createMode": "PointInTimeRestore", + "sourceServerName": "sourcePgServerName", + "sourceSubscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "sourceResourceGroupName": "RestoreFromResourceGroup", + "pointInTimeUTC": "2020-06-30T23:41:49.000Z" + } + } + }, + "responses": { + "201": { + "body": { + "sku": { + "tier": "GeneralPurpose", + "name": "Standard_D4s_v3" + }, + "properties": { + "administratorLogin": "cloudsa", + "version": "12", + "state": "Ready", + "haState": "NotEnabled", + "fullyQualifiedDomainName": "pgtestsvc4.postgres.database.azure.com", + "displayName": "demosingleserver", + "publicNetworkAccess": "Enabled", + "haEnabled": "Disabled", + "delegatedSubnetArguments": {}, + "privateDnsZoneArguments": {}, + "storageProfile": { + "storageMB": 524288, + "backupRetentionDays": 7 + }, + "availabilityZone": "1" + }, + "location": "westus", + "tags": { + "ElasticServer": "1" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/flexibleServers/pgtestsvc4", + "name": "pgtestsvc4", + "type": "Microsoft.DBforPostgreSQL/flexibleServers" + } + }, + "200": { + "body": { + "sku": { + "tier": "GeneralPurpose", + "name": "Standard_D4s_v3" + }, + "properties": { + "administratorLogin": "cloudsa", + "version": "12", + "state": "Ready", + "haState": "NotEnabled", + "fullyQualifiedDomainName": "pgtestsvc4.postgres.database.azure.com", + "displayName": "demosingleserver", + "publicNetworkAccess": "Enabled", + "haEnabled": "Disabled", + "delegatedSubnetArguments": {}, + "privateDnsZoneArguments": {}, + "storageProfile": { + "storageMB": 524288, + "backupRetentionDays": 7 + }, + "availabilityZone": "1" + }, + "location": "westus", + "tags": { + "ElasticServer": "1" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/flexibleServers/pgtestsvc4", + "name": "pgtestsvc4", + "type": "Microsoft.DBforPostgreSQL/flexibleServers" + } + }, + "202": {} + } +} diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/ServerDelete.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/ServerDelete.json new file mode 100644 index 000000000000..6bfef886d2ab --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/ServerDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "serverName": "testserver", + "resourceGroupName": "TestGroup", + "api-version": "2021-04-10-privatepreview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/ServerGet.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/ServerGet.json new file mode 100644 index 000000000000..9e5e98a58724 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/ServerGet.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "serverName": "pgtestsvc1", + "resourceGroupName": "testrg", + "api-version": "2021-04-10-privatepreview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff" + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "GeneralPurpose", + "name": "Standard_D4s_v3" + }, + "properties": { + "administratorLogin": "cloudsa", + "version": "12", + "state": "Ready", + "haState": "NotEnabled", + "fullyQualifiedDomainName": "pgtestsvc4.postgres.database.azure.com", + "displayName": "demosingleserver", + "publicNetworkAccess": "Enabled", + "storageProfile": { + "storageMB": 524288, + "backupRetentionDays": 7, + "geoRedundantBackup": "Disabled" + }, + "haEnabled": "Enabled", + "availabilityZone": "1", + "standbyAvailabilityZone": "2", + "maintenanceWindow": { + "dayOfWeek": 0, + "startHour": 0, + "startMinute": 0, + "customWindow": "Disabled" + } + }, + "location": "westus", + "tags": { + "ElasticServer": "1" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/flexibleServers/pgtestsvc1", + "name": "pgtestsvc1", + "type": "Microsoft.DBforPostgreSQL/flexibleServers" + } + } + } +} diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/ServerGetWithVnet.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/ServerGetWithVnet.json new file mode 100644 index 000000000000..c2cabf394246 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/ServerGetWithVnet.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "serverName": "pgtestsvc1", + "resourceGroupName": "testrg", + "api-version": "2021-04-10-privatepreview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff" + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "GeneralPurpose", + "name": "Standard_D4s_v3" + }, + "properties": { + "administratorLogin": "cloudsa", + "version": "12", + "state": "Ready", + "haState": "NotEnabled", + "fullyQualifiedDomainName": "pgtestsvc4.postgres.database.azure.com", + "displayName": "demosingleserver", + "publicNetworkAccess": "Disabled", + "delegatedSubnetArguments": { + "subnetArmResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-vnet-subnet" + }, + "privateDnsZoneArguments": { + "privateDnsZoneArmResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.Network/privateDnsZones/test-private-dns-zone" + }, + "storageProfile": { + "storageMB": 524288, + "backupRetentionDays": 7, + "geoRedundantBackup": "Disabled" + }, + "availabilityZone": "1" + }, + "location": "westus", + "tags": { + "ElasticServer": "1" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/flexibleServers/pgtestsvc1", + "name": "pgtestsvc1", + "type": "Microsoft.DBforPostgreSQL/flexibleServers" + } + } + } +} diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/ServerList.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/ServerList.json new file mode 100644 index 000000000000..246deab34e6e --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/ServerList.json @@ -0,0 +1,157 @@ +{ + "parameters": { + "api-version": "2021-04-10-privatepreview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff" + }, + "responses": { + "200": { + "body": { + "nextLink": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DBforPostgreSQL/flexibleServers?api-version=2020-02-14-privatepreview&$top=3&$skiptoken=skiptoken", + "value": [ + { + "sku": { + "tier": "GeneralPurpose", + "name": "Standard_D4s_v3" + }, + "properties": { + "administratorLogin": "cloudsa", + "version": "12", + "state": "Ready", + "haState": "NotEnabled", + "fullyQualifiedDomainName": "pgtestsvc1.postgres.database.azure.com", + "displayName": "demosingleserver", + "publicNetworkAccess": "Enabled", + "storageProfile": { + "storageMB": 524288, + "backupRetentionDays": 7, + "geoRedundantBackup": "Enabled" + }, + "haEnabled": "Enabled", + "availabilityZone": "1", + "standbyAvailabilityZone": "2", + "maintenanceWindow": { + "dayOfWeek": 0, + "startHour": 0, + "startMinute": 0, + "customWindow": "Disabled" + } + }, + "location": "westus", + "tags": { + "Server": "1" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/flexibleServers/pgtestsvc1", + "name": "pgtestsvc1", + "type": "Microsoft.DBforPostgreSQL/flexibleServers" + }, + { + "sku": { + "tier": "GeneralPurpose", + "name": "Standard_D4s_v3" + }, + "properties": { + "administratorLogin": "cloudsa", + "version": "12", + "state": "Ready", + "haState": "Healthy", + "fullyQualifiedDomainName": "pgtestsvc2.postgres.database.azure.com", + "displayName": "demosingleserver", + "publicNetworkAccess": "Enabled", + "storageProfile": { + "storageMB": 524288, + "backupRetentionDays": 7, + "geoRedundantBackup": "Disabled" + }, + "haEnabled": "Disabled", + "availabilityZone": "2", + "maintenanceWindow": { + "dayOfWeek": 0, + "startHour": 10, + "startMinute": 30, + "customWindow": "Enabled" + } + }, + "location": "westus", + "tags": { + "Server": "2" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/flexibleServers/pgtestsvc2", + "name": "pgtestsvc2", + "type": "Microsoft.DBforPostgreSQL/flexibleServers" + }, + { + "sku": { + "tier": "GeneralPurpose", + "name": "Standard_D4s_v3" + }, + "properties": { + "administratorLogin": "cloudsa", + "version": "12", + "state": "Ready", + "haState": "FailingOver", + "fullyQualifiedDomainName": "pgtestsvc3.postgres.database.azure.com", + "displayName": "demosingleserver", + "publicNetworkAccess": "Enabled", + "storageProfile": { + "storageMB": 524288, + "backupRetentionDays": 7, + "geoRedundantBackup": "Disabled" + }, + "haEnabled": "Disabled", + "availabilityZone": "3", + "maintenanceWindow": { + "dayOfWeek": 0, + "startHour": 0, + "startMinute": 0, + "customWindow": "Disabled" + } + }, + "location": "westus", + "tags": { + "Server": "3" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/flexibleServers/pgtestsvc3", + "name": "pgtestsvc3", + "type": "Microsoft.DBforPostgreSQL/flexibleServers" + }, + { + "sku": { + "tier": "GeneralPurpose", + "name": "Standard_D4s_v3" + }, + "properties": { + "administratorLogin": "cloudsa", + "version": "12", + "state": "Ready", + "haState": "ReplicatingData", + "fullyQualifiedDomainName": "pgtestsvc4.postgres.database.azure.com", + "displayName": "demosingleserver", + "publicNetworkAccess": "Enabled", + "storageProfile": { + "storageMB": 524288, + "backupRetentionDays": 7, + "geoRedundantBackup": "Disabled" + }, + "haEnabled": "Enabled", + "availabilityZone": "1", + "standbyAvailabilityZone": "2", + "maintenanceWindow": { + "dayOfWeek": 0, + "startHour": 0, + "startMinute": 0, + "customWindow": "Disabled" + } + }, + "location": "westus", + "tags": { + "Server": "4" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/flexibleServers/pgtestsvc4", + "name": "pgtestsvc4", + "type": "Microsoft.DBforPostgreSQL/flexibleServers" + } + ] + } + } + } +} diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/ServerListByResourceGroup.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/ServerListByResourceGroup.json new file mode 100644 index 000000000000..a36132401229 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/ServerListByResourceGroup.json @@ -0,0 +1,115 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2021-04-10-privatepreview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff" + }, + "responses": { + "200": { + "body": { + "nextLink": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff//resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/flexibleServers?api-version=2020-02-14-privatepreview&$top=3&$skiptoken=skiptoken", + "value": [ + { + "sku": { + "tier": "GeneralPurpose", + "name": "Standard_D4s_v3" + }, + "properties": { + "administratorLogin": "testuser", + "version": "12", + "state": "Ready", + "haState": "NotEnabled", + "fullyQualifiedDomainName": "pgtestsvc4.postgres.database.azure.com", + "displayName": "demosingleserver", + "publicNetworkAccess": "Enabled", + "storageProfile": { + "storageMB": 524288, + "backupRetentionDays": 7, + "geoRedundantBackup": "Enabled" + }, + "haEnabled": "Enabled", + "availabilityZone": "1", + "standbyAvailabilityZone": "2", + "maintenanceWindow": { + "dayOfWeek": 0, + "startHour": 10, + "startMinute": 30, + "customWindow": "Enabled" + } + }, + "location": "westus", + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/servers/pgtestsvc1", + "name": "pgtestsvc1", + "type": "Microsoft.DBforPostgreSQL/flexibleServers" + }, + { + "sku": { + "tier": "GeneralPurpose", + "name": "Standard_D4s_v3" + }, + "properties": { + "administratorLogin": "testuser", + "version": "12", + "state": "Ready", + "haState": "Healthy", + "fullyQualifiedDomainName": "pgtestsvc4.postgres.database.azure.com", + "displayName": "demosingleserver", + "publicNetworkAccess": "Enabled", + "storageProfile": { + "storageMB": 524288, + "backupRetentionDays": 7, + "geoRedundantBackup": "Disabled" + }, + "haEnabled": "Disabled", + "availabilityZone": "2", + "maintenanceWindow": { + "dayOfWeek": 0, + "startHour": 0, + "startMinute": 0, + "customWindow": "Disabled" + } + }, + "location": "westus", + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/flexibleServers/pgtestsvc2", + "name": "pgtestsvc2", + "type": "Microsoft.DBforPostgreSQL/flexibleServers" + }, + { + "sku": { + "tier": "GeneralPurpose", + "name": "Standard_D4s_v3" + }, + "properties": { + "administratorLogin": "testuser", + "version": "12", + "state": "Ready", + "haState": "Healthy", + "fullyQualifiedDomainName": "pgtestsvc4.postgres.database.azure.com", + "displayName": "demosingleserver", + "publicNetworkAccess": "Enabled", + "storageProfile": { + "storageMB": 524288, + "backupRetentionDays": 7 + }, + "haEnabled": "Disabled", + "availabilityZone": "3", + "maintenanceWindow": { + "dayOfWeek": 0, + "startHour": 10, + "startMinute": 30, + "customWindow": "Enabled" + } + }, + "location": "westus", + "tags": { + "ElasticServer": "1" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/flexibleServers/pgtestsvc4", + "name": "pgtestsvc4", + "type": "Microsoft.DBforPostgreSQL/flexibleServers" + } + ] + } + } + } +} diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/ServerRestart.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/ServerRestart.json new file mode 100644 index 000000000000..c50d2f3e1de0 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/ServerRestart.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "serverName": "testserver", + "resourceGroupName": "TestGroup", + "api-version": "2021-04-10-privatepreview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/ServerStart.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/ServerStart.json new file mode 100644 index 000000000000..c50d2f3e1de0 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/ServerStart.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "serverName": "testserver", + "resourceGroupName": "TestGroup", + "api-version": "2021-04-10-privatepreview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/ServerStop.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/ServerStop.json new file mode 100644 index 000000000000..c50d2f3e1de0 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/ServerStop.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "serverName": "testserver", + "resourceGroupName": "TestGroup", + "api-version": "2021-04-10-privatepreview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/ServerUpdate.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/ServerUpdate.json new file mode 100644 index 000000000000..2c112fa804ff --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/ServerUpdate.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "serverName": "pgtestsvc4", + "resourceGroupName": "TestGroup", + "api-version": "2021-04-10-privatepreview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "parameters": { + "location": "westus", + "sku": { + "tier": "GeneralPurpose", + "name": "Standard_D4s_v3" + }, + "properties": { + "administratorLoginPassword": "newpassword", + "storageProfile": { + "storageMB": 524288, + "backupRetentionDays": 20 + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "GeneralPurpose", + "name": "Standard_D4s_v3" + }, + "properties": { + "administratorLogin": "cloudsa", + "version": "12", + "state": "Ready", + "haState": "NotEnabled", + "fullyQualifiedDomainName": "pgtestsvc4.postgres.database.azure.com", + "displayName": "demosingleserver", + "publicNetworkAccess": "Enabled", + "storageProfile": { + "storageMB": 524288, + "backupRetentionDays": 20, + "geoRedundantBackup": "Disabled" + }, + "delegatedSubnetArguments": {}, + "privateDnsZoneArguments": {}, + "haEnabled": "Disabled", + "availabilityZone": "1" + }, + "location": "westus", + "tags": { + "ElasticServer": "1" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/flexibleServers/pgtestsvc4", + "name": "pgtestsvc4", + "type": "Microsoft.DBforPostgreSQL/flexibleServers" + } + }, + "202": {} + } +} diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/ServerUpdateWithCustomerMaintenanceWindow.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/ServerUpdateWithCustomerMaintenanceWindow.json new file mode 100644 index 000000000000..1a09f0f2a8b3 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/ServerUpdateWithCustomerMaintenanceWindow.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "serverName": "pgtestsvc4", + "resourceGroupName": "testrg", + "api-version": "2021-04-10-privatepreview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "parameters": { + "location": "westus", + "properties": { + "maintenanceWindow": { + "dayOfWeek": 0, + "startHour": 8, + "startMinute": 0, + "customWindow": "Enabled" + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "GeneralPurpose", + "name": "Standard_D4s_v3" + }, + "properties": { + "administratorLogin": "cloudsa", + "version": "12", + "state": "Ready", + "haState": "NotEnabled", + "fullyQualifiedDomainName": "pgtestsvc4.postgres.database.azure.com", + "displayName": "demosingleserver", + "publicNetworkAccess": "Enabled", + "storageProfile": { + "storageMB": 524288, + "backupRetentionDays": 20 + }, + "delegatedSubnetArguments": {}, + "privateDnsZoneArguments": {}, + "haEnabled": "Disabled", + "availabilityZone": "1", + "maintenanceWindow": { + "dayOfWeek": 0, + "startHour": 8, + "startMinute": 0, + "customWindow": "Enabled" + } + }, + "location": "westus", + "tags": { + "ElasticServer": "1" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/flexibleServers/pgtestsvc4", + "name": "pgtestsvc4", + "type": "Microsoft.DBforPostgreSQL/flexibleServers" + } + }, + "202": {} + } +} diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/VirtualNetworkSubnetUsage.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/VirtualNetworkSubnetUsage.json new file mode 100644 index 000000000000..9cd4d8abaac7 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/examples/VirtualNetworkSubnetUsage.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2021-04-10-privatepreview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "locationName": "WestUS", + "parameters": { + "virtualNetworkArmResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/testvnet" + } + }, + "responses": { + "200": { + "body": { + "delegatedSubnetsUsage": [ + { + "subnetName": "test-subnet-1", + "usage": 2 + }, + { + "subnetName": "test-subnet-2", + "usage": 3 + } + ] + } + } + } +} diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/postgresql.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/postgresql.json new file mode 100644 index 000000000000..fe0f7c63aa49 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/postgresql.json @@ -0,0 +1,1906 @@ +{ + "swagger": "2.0", + "info": { + "title": "PostgreSQLServerManagementClient", + "description": "The Microsoft Azure management API provides create, read, update, and delete functionality for Azure PostgreSQL resources including servers, databases, firewall rules, VNET rules, security alert policies, log files and configurations with new business model.", + "version": "2021-04-10-privatepreview" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://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/flexibleServers/{serverName}": { + "put": { + "tags": [ + "Servers" + ], + "operationId": "Servers_Create", + "x-ms-examples": { + "Create a new server": { + "$ref": "./examples/ServerCreate.json" + }, + "Create a database as a point in time restore": { + "$ref": "./examples/ServerCreatePointInTimeRestore.json" + }, + "Create a new server as geo restore": { + "$ref": "./examples/ServerCreateGeoRestore.json" + } + }, + "description": "Creates a new server.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Server" + }, + "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" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "Servers" + ], + "operationId": "Servers_Update", + "x-ms-examples": { + "ServerUpdate": { + "$ref": "./examples/ServerUpdate.json" + }, + "ServerUpdateWithCustomerMaintenanceWindow": { + "$ref": "./examples/ServerUpdateWithCustomerMaintenanceWindow.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": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ServerForUpdate" + }, + "description": "The required parameters for updating a server." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Server" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "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": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Servers" + ], + "operationId": "Servers_Get", + "x-ms-examples": { + "ServerGet": { + "$ref": "./examples/ServerGet.json" + }, + "ServerGetWithVnet": { + "$ref": "./examples/ServerGetWithVnet.json" + } + }, + "description": "Gets information about a server.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Server" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBForPostgreSql/flexibleServers": { + "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": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ServerListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DBForPostgreSql/flexibleServers": { + "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": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ServerListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBForPostgreSql/flexibleServers/{serverName}/restart": { + "post": { + "tags": [ + "ServerRestart" + ], + "operationId": "Servers_Restart", + "x-ms-examples": { + "ServerRestart": { + "$ref": "./examples/ServerRestart.json" + } + }, + "description": "Restarts a server.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBForPostgreSql/flexibleServers/{serverName}/start": { + "post": { + "tags": [ + "ServerStart" + ], + "operationId": "Servers_Start", + "x-ms-examples": { + "ServerStart": { + "$ref": "./examples/ServerStart.json" + } + }, + "description": "Starts a server.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBForPostgreSql/flexibleServers/{serverName}/stop": { + "post": { + "tags": [ + "ServerStop" + ], + "operationId": "Servers_Stop", + "x-ms-examples": { + "ServerStop": { + "$ref": "./examples/ServerStop.json" + } + }, + "description": "Stops a server.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBForPostgreSql/flexibleServers/{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": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$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" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "FirewallRules" + ], + "operationId": "FirewallRules_Delete", + "x-ms-examples": { + "FirewallRuleDelete": { + "$ref": "./examples/FirewallRuleDelete.json" + } + }, + "description": "Deletes a PostgreSQL server firewall rule.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/FirewallRuleNameParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "FirewallRules" + ], + "operationId": "FirewallRules_Get", + "x-ms-examples": { + "FirewallRuleList": { + "$ref": "./examples/FirewallRuleGet.json" + } + }, + "description": "List all the firewall rules in a given server.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/FirewallRuleNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/FirewallRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBForPostgreSql/flexibleServers/{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 PostgreSQL server.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/FirewallRuleListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBForPostgreSql/flexibleServers/{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": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ConfigurationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBForPostgreSql/flexibleServers/{serverName}/configurations/{configurationName}": { + "get": { + "tags": [ + "Configurations" + ], + "operationId": "Configurations_Get", + "x-ms-examples": { + "ConfigurationGet": { + "$ref": "./examples/ConfigurationGet.json" + } + }, + "description": "Gets information about a configuration of server.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/ConfigurationNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Configuration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "patch": { + "tags": [ + "Configurations" + ], + "operationId": "Configurations_Update", + "x-ms-examples": { + "Update a user configuration": { + "$ref": "./examples/ConfigurationUpdate.json" + } + }, + "description": "Updates a configuration of a server.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$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" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/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": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DBForPostgreSql/locations/{locationName}/capabilities": { + "get": { + "tags": [ + "LocationBasedCapabilities" + ], + "operationId": "LocationBasedCapabilities_Execute", + "x-ms-examples": { + "CapabilitiesList": { + "$ref": "./examples/CapabilitiesByLocation.json" + } + }, + "description": "Get capabilities at specified location in a given subscription.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/LocationNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CapabilitiesListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DBForPostgreSql/locations/{locationName}/checkVirtualNetworkSubnetUsage": { + "post": { + "tags": [ + "VirtualNetworkSubnetUsage" + ], + "operationId": "VirtualNetworkSubnetUsage_Execute", + "x-ms-examples": { + "VirtualNetworkSubnetUsageList": { + "$ref": "./examples/VirtualNetworkSubnetUsage.json" + } + }, + "description": "Get virtual network subnet usage for a given vNet resource id.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/LocationNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualNetworkSubnetUsageParameter" + }, + "description": "The required parameters for creating or updating a server." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualNetworkSubnetUsageResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBForPostgreSql/servers/{serverName}/recoverableServers": { + "get": { + "tags": [ + "RecoverableServers" + ], + "operationId": "RecoverableServers_Get", + "x-ms-examples": { + "RecoverableServersListByServer": { + "$ref": "./examples/RecoverableServersGet.json" + } + }, + "description": "Gets a recoverable PostgreSQL Server.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoverableServerResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/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": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "RecoverableServerProperties": { + "description": "The recoverable server's properties.", + "type": "object", + "properties": { + "availabilityZone": { + "type": "string", + "description": "Availability zone of the server", + "readOnly": true + }, + "serverEdition": { + "type": "string", + "description": "Edition of the performance tier.", + "readOnly": true + }, + "version": { + "type": "string", + "description": "The PostgreSQL version", + "readOnly": true + } + } + }, + "RecoverableServerResource": { + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "sku": { + "$ref": "#/definitions/Sku", + "description": "The SKU (pricing tier) of the server." + }, + "location": { + "type": "string", + "description": "The location the resource resides in." + }, + "properties": { + "$ref": "#/definitions/RecoverableServerProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + }, + "description": "Represents a recoverable server resource." + }, + "VirtualNetworkSubnetUsageParameter": { + "type": "object", + "properties": { + "virtualNetworkArmResourceId": { + "type": "string", + "description": "Virtual network resource id." + } + }, + "description": "Virtual network subnet usage parameter" + }, + "VirtualNetworkSubnetUsageResult": { + "type": "object", + "properties": { + "delegatedSubnetsUsage": { + "type": "array", + "items": { + "$ref": "#/definitions/DelegatedSubnetUsage" + }, + "readOnly": true + } + }, + "description": "Virtual network subnet usage data." + }, + "DelegatedSubnetUsage": { + "type": "object", + "properties": { + "subnetName": { + "type": "string", + "readOnly": true, + "description": "name of the subnet" + }, + "usage": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "Number of used delegated subnets" + } + }, + "description": "Delegated subnet usage data." + }, + "StorageMBCapability": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "storage MB name", + "readOnly": true + }, + "supportedIops": { + "type": "integer", + "format": "int64", + "description": "supported IOPS", + "readOnly": true + }, + "storageSizeMB": { + "type": "integer", + "format": "int64", + "description": "storage size in MB", + "readOnly": true + } + }, + "description": "storage size in MB capability" + }, + "VcoreCapability": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "vCore name", + "readOnly": true + }, + "vCores": { + "type": "integer", + "format": "int64", + "description": "supported vCores", + "readOnly": true + }, + "supportedIops": { + "type": "integer", + "format": "int64", + "description": "supported IOPS", + "readOnly": true + }, + "supportedMemoryPerVcoreMB": { + "type": "integer", + "format": "int64", + "description": "supported memory per vCore in MB", + "readOnly": true + } + }, + "description": "Vcores capability" + }, + "ServerVersionCapability": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "server version", + "readOnly": true + }, + "supportedVcores": { + "type": "array", + "items": { + "$ref": "#/definitions/VcoreCapability" + }, + "readOnly": true + } + }, + "description": "Server version capabilities." + }, + "StorageEditionCapability": { + "properties": { + "name": { + "type": "string", + "description": "storage edition name", + "readOnly": true + }, + "supportedStorageMB": { + "type": "array", + "items": { + "$ref": "#/definitions/StorageMBCapability" + }, + "readOnly": true + } + }, + "description": "storage edition capability" + }, + "ServerEditionCapability": { + "properties": { + "name": { + "type": "string", + "description": "Server edition name", + "readOnly": true + }, + "supportedStorageEditions": { + "type": "array", + "items": { + "$ref": "#/definitions/StorageEditionCapability" + }, + "readOnly": true + }, + "supportedServerVersions": { + "type": "array", + "items": { + "$ref": "#/definitions/ServerVersionCapability" + }, + "readOnly": true + } + }, + "description": "Server edition capabilities." + }, + "CapabilityProperties": { + "properties": { + "zone": { + "type": "string", + "description": "zone name", + "readOnly": true + }, + "supportedFlexibleServerEditions": { + "type": "array", + "items": { + "$ref": "#/definitions/ServerEditionCapability" + }, + "readOnly": true + } + }, + "description": "Location capabilities." + }, + "CapabilitiesListResult": { + "type": "object", + "properties": { + "value": { + "description": "A list of supported capabilities.", + "type": "array", + "items": { + "$ref": "#/definitions/CapabilityProperties" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + }, + "description": "location capability" + }, + "ServerVersion": { + "type": "string", + "description": "The version of a server.", + "enum": [ + "12", + "11" + ], + "x-ms-enum": { + "name": "ServerVersion", + "modelAsString": true + } + }, + "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).", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "administratorLoginPassword": { + "type": "string", + "description": "The administrator login password (required for server creation).", + "x-ms-secret": true, + "format": "password", + "x-ms-mutability": [ + "create", + "update" + ] + }, + "version": { + "$ref": "#/definitions/ServerVersion", + "description": "PostgreSQL Server version." + }, + "state": { + "type": "string", + "description": "A state of a server that is visible to user.", + "readOnly": true, + "enum": [ + "Ready", + "Dropping", + "Disabled", + "Starting", + "Stopping", + "Stopped", + "Updating" + ], + "x-ms-enum": { + "name": "ServerState", + "modelAsString": true + } + }, + "haState": { + "type": "string", + "description": "A state of a HA server that is visible to user.", + "enum": [ + "NotEnabled", + "CreatingStandby", + "ReplicatingData", + "FailingOver", + "Healthy", + "RemovingStandby" + ], + "readOnly": true, + "x-ms-enum": { + "name": "ServerHAState", + "modelAsString": true + } + }, + "fullyQualifiedDomainName": { + "type": "string", + "description": "The fully qualified domain name of a server.", + "readOnly": true + }, + "displayName": { + "type": "string", + "description": "The display name of a server." + }, + "storageProfile": { + "$ref": "#/definitions/StorageProfile", + "description": "Storage profile of a server." + }, + "publicNetworkAccess": { + "type": "string", + "description": "public network access is enabled or not", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "ServerPublicNetworkAccessState", + "modelAsString": true + }, + "readOnly": true + }, + "maintenanceWindow": { + "$ref": "#/definitions/MaintenanceWindow", + "description": "Maintenance window of a server." + }, + "haEnabled": { + "type": "string", + "description": "stand by count value can be either enabled or disabled", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "HAEnabledEnum", + "modelAsString": false + } + }, + "sourceServerName": { + "type": "string", + "description": "The source PostgreSQL server name to restore from." + }, + "sourceSubscriptionId": { + "type": "string", + "description": "The subscription id of source PostgreSQL server name to restore from." + }, + "sourceResourceGroupName": { + "type": "string", + "description": "The resource group name of source PostgreSQL server name to restore from." + }, + "pointInTimeUTC": { + "type": "string", + "format": "date-time", + "description": "Restore point creation time (ISO8601 format), specifying the time to restore from." + }, + "availabilityZone": { + "type": "string", + "description": "availability Zone information of the server." + }, + "standbyAvailabilityZone": { + "type": "string", + "description": "availability Zone information of the server.", + "readOnly": true + }, + "byokEnforcement": { + "type": "string", + "description": "Status showing whether the data encryption is enabled with customer-managed keys.", + "readOnly": true + }, + "delegatedSubnetArguments": { + "properties": { + "subnetArmResourceId": { + "type": "string", + "description": "delegated subnet arm resource id." + } + } + }, + "privateDnsZoneArguments": { + "properties": { + "privateDnsZoneArmResourceId": { + "type": "string", + "description": "private dns zone arm resource id." + } + } + }, + "createMode": { + "type": "string", + "description": "The mode to create a new PostgreSQL server.", + "enum": [ + "Default", + "PointInTimeRestore", + "GeoRestore" + ], + "x-ms-enum": { + "name": "CreateMode", + "modelAsString": true + }, + "x-ms-mutability": [ + "create" + ] + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application-specific metadata in the form of key-value pairs." + } + }, + "description": "The properties of a server." + }, + "Server": { + "properties": { + "identity": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Identity", + "description": "The Azure Active Directory identity of the server." + }, + "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": "../../../../../common-types/resource-management/v1/types.json#/definitions/TrackedResource" + } + ], + "description": "Represents a server." + }, + "MaintenanceWindow": { + "type": "object", + "description": "Maintenance window of a server.", + "properties": { + "customWindow": { + "type": "string", + "description": "indicates whether custom window is enabled or disabled" + }, + "startHour": { + "type": "integer", + "format": "int32", + "description": "start hour for maintenance window" + }, + "startMinute": { + "type": "integer", + "format": "int32", + "description": "start minute for maintenance window" + }, + "dayOfWeek": { + "type": "integer", + "format": "int32", + "description": "day of week for maintenance window" + } + } + }, + "ServerPropertiesForUpdate": { + "properties": { + "administratorLoginPassword": { + "type": "string", + "format": "password", + "description": "The password of the administrator login." + }, + "storageProfile": { + "$ref": "#/definitions/StorageProfile", + "description": "Storage profile of a server." + }, + "haEnabled": { + "type": "string", + "description": "stand by count value can be either enabled or disabled", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "HAEnabledEnum", + "modelAsString": false + } + }, + "maintenanceWindow": { + "$ref": "#/definitions/MaintenanceWindow", + "description": "Maintenance window of a server." + } + } + }, + "ServerForUpdate": { + "properties": { + "location": { + "type": "string", + "description": "The location the resource resides in." + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "The SKU (pricing tier) of the server." + }, + "properties": { + "$ref": "#/definitions/ServerPropertiesForUpdate", + "x-ms-client-flatten": true, + "description": "Properties of the server." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application-specific metadata in the form of key-value pairs." + } + }, + "description": "Represents a server to be updated." + }, + "ServerListResult": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Server" + }, + "description": "The list of flexible servers" + }, + "nextLink": { + "description": "The link used to get the next page of operations.", + "type": "string" + } + }, + "description": "A list of servers." + }, + "StorageProfile": { + "properties": { + "backupRetentionDays": { + "type": "integer", + "format": "int32", + "description": "Backup retention days for the server." + }, + "storageMB": { + "type": "integer", + "format": "int32", + "description": "Max storage allowed for a server." + }, + "geoRedundantBackup": { + "type": "string", + "description": "Geo Backup redundancy option", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "GeoRedundantBackupOption", + "modelAsString": true + } + } + }, + "description": "Storage Profile properties of a server" + }, + "Sku": { + "properties": { + "name": { + "type": "string", + "description": "The name of the sku, typically, tier + family + cores, e.g. Standard_D4s_v3." + }, + "tier": { + "type": "string", + "description": "The tier of the particular SKU, e.g. Burstable.", + "enum": [ + "Burstable", + "GeneralPurpose", + "MemoryOptimized" + ], + "x-ms-enum": { + "name": "SkuTier", + "modelAsString": true + } + } + }, + "required": [ + "name", + "tier" + ], + "description": "Sku information related properties of a server." + }, + "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": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "required": [ + "properties" + ], + "description": "Represents a server firewall rule." + }, + "FirewallRuleListResult": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallRule" + }, + "description": "The list of firewall rules in a server." + }, + "nextLink": { + "description": "The link used to get the next page of operations.", + "type": "string" + } + }, + "description": "A list of firewall rules." + }, + "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.", + "enum": [ + "Boolean", + "Numeric", + "Integer", + "Enumeration" + ], + "x-ms-enum": { + "name": "ConfigurationDataType", + "modelAsString": true + } + }, + "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": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "Represents a Configuration." + }, + "ConfigurationListResult": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Configuration" + }, + "description": "The list of server configurations." + }, + "nextLink": { + "description": "The link used to get the next page of operations.", + "type": "string" + } + }, + "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." + }, + "isDataAction": { + "description": "Indicates whether the operation is a data action", + "type": "boolean" + }, + "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": { + "description": "A list of resource provider operations.", + "type": "object", + "properties": { + "value": { + "description": "Collection of available operation details", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + } + }, + "nextLink": { + "description": "URL client should use to fetch the next page (per server side paging).\r\nIt's null for now, added for future use.", + "type": "string" + } + } + }, + "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." + }, + "name": { + "type": "string", + "description": "name of the PostgreSQL server." + }, + "type": { + "type": "string", + "description": "type of the server" + } + }, + "description": "Represents a resource name availability." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "An error response from the Batch service." + } + }, + "parameters": { + "LocationNameParameter": { + "name": "locationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the location.", + "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" + }, + "ConfigurationNameParameter": { + "name": "configurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the server configuration.", + "x-ms-parameter-location": "method" + }, + "MaintenanceWindowNameParameter": { + "name": "maintenanceWindowName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the maintenance window.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/postgresql/resource-manager/readme.az.md b/specification/postgresql/resource-manager/readme.az.md index cec43db01174..1c7572e8a8d2 100644 --- a/specification/postgresql/resource-manager/readme.az.md +++ b/specification/postgresql/resource-manager/readme.az.md @@ -9,6 +9,6 @@ az: package-name: azure-mgmt-postgresql az-output-folder: $(azure-cli-extension-folder)/src/postgresql python-sdk-output-folder: "$(az-output-folder)/azext_postgresql/vendored_sdks/postgresql" -# add additinal configuration here specific for Azure CLI +# add additional configuration here specific for Azure CLI # refer to the faq.md for more details ``` \ No newline at end of file diff --git a/specification/postgresql/resource-manager/readme.azureresourceschema.md b/specification/postgresql/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index d77ebc7810b4..000000000000 --- a/specification/postgresql/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,87 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-dbforpostgresql-2020-11-05-preview - - tag: schema-dbforpostgresql-2020-02-14-preview - - tag: schema-dbforpostgresql-2020-01-01 - - tag: schema-dbforpostgresql-2018-06-01 - - tag: schema-dbforpostgresql-2017-12-01-preview - - tag: schema-dbforpostgresql-2017-12-01 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-dbforpostgresql-2020-11-05-preview and azureresourceschema - -``` yaml $(tag) == 'schema-dbforpostgresql-2020-11-05-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DBforPostgreSQL/preview/2020-11-05-preview/Databases.json - -``` - -### Tag: schema-dbforpostgresql-2020-02-14-preview and azureresourceschema - -``` yaml $(tag) == 'schema-dbforpostgresql-2020-02-14-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DBforPostgreSQL/preview/2020-02-14-preview/postgresql.json - -``` - -### Tag: schema-dbforpostgresql-2020-01-01 and azureresourceschema - -``` yaml $(tag) == 'schema-dbforpostgresql-2020-01-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DBforPostgreSQL/stable/2020-01-01/DataEncryptionKeys.json - -``` - -### Tag: schema-dbforpostgresql-2018-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-dbforpostgresql-2018-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DBforPostgreSQL/stable/2018-06-01/PrivateEndpointConnections.json - - Microsoft.DBforPostgreSQL/stable/2018-06-01/PrivateLinkResources.json - - Microsoft.DBforPostgreSQL/stable/2018-06-01/QueryPerformanceInsights.json - -``` - -### Tag: schema-dbforpostgresql-2017-12-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-dbforpostgresql-2017-12-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/postgresql.json - -``` - -### Tag: schema-dbforpostgresql-2017-12-01 and azureresourceschema - -``` yaml $(tag) == 'schema-dbforpostgresql-2017-12-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DBforPostgreSQL/stable/2017-12-01/postgresql.json - - Microsoft.DBforPostgreSQL/stable/2017-12-01/ServerSecurityAlertPolicies.json - -``` diff --git a/specification/postgresql/resource-manager/readme.go.md b/specification/postgresql/resource-manager/readme.go.md index 1c09c23611b1..87a6958d79ba 100644 --- a/specification/postgresql/resource-manager/readme.go.md +++ b/specification/postgresql/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION clear-output-folder: true ``` diff --git a/specification/postgresql/resource-manager/readme.md b/specification/postgresql/resource-manager/readme.md index a63f46d98741..b984ff26c82e 100644 --- a/specification/postgresql/resource-manager/readme.md +++ b/specification/postgresql/resource-manager/readme.md @@ -30,6 +30,30 @@ description: The Microsoft Azure management API provides create, read, update, a openapi-type: arm tag: package-2020-01-01 ``` +### Tag: package-2021-04-10-privatepreview + +These settings apply only when `--tag=package-2021-04-10-privatepreview` is specified on the command line. + +``` yaml $(tag) == 'package-2021-04-10-privatepreview' +input-file: +- Microsoft.DBforPostgreSQL/preview/2020-11-05-preview/Databases.json +- Microsoft.DBforPostgreSQL/preview/2021-03-31-privatepreview/PrivateDnsZone.json +- Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/postgresql.json +``` + +### Tag: package-2021-03-31-privatepreview + +These settings apply only when `--tag=package-2021-03-31-privatepreview` is specified on the command line. + +``` yaml $(tag) == 'package-2021-03-31-privatepreview' +input-file: +- Microsoft.DBforPostgreSQL/preview/2020-02-14-preview/postgresql.json +- Microsoft.DBforPostgreSQL/preview/2020-11-05-preview/Databases.json +- Microsoft.DBforPostgreSQL/preview/2021-03-31-privatepreview/PrivateDnsZone.json +``` + + + ### Tag: package-2020-11-05-preview These settings apply only when `--tag=package-2020-11-05-preview` is specified on the command line. @@ -164,8 +188,6 @@ swagger-to-sdk: - repo: azure-sdk-for-js - repo: azure-sdk-for-node - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js postgresql/resource-manager ``` ### C# @@ -194,9 +216,7 @@ See configuration in [readme.go.md](./readme.go.md) See configuration in [readme.java.md](./readme.java.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) ## Multi-API/Profile support for AutoRest v3 generators @@ -213,6 +233,7 @@ input-file: - $(this-folder)/Microsoft.DBforPostgreSQL/preview/2020-11-05-preview/Databases.json - $(this-folder)/Microsoft.DBforPostgreSQL/preview/2020-02-14-preview/postgresql.json - $(this-folder)/Microsoft.DBforPostgreSQL/preview/2020-02-14-privatepreview/postgresql.json + - $(this-folder)/Microsoft.DBforPostgreSQL/preview/2021-04-10-privatepreview/postgresql.json - $(this-folder)/Microsoft.DBforPostgreSQL/preview/2020-01-01-privatepreview/DataEncryptionKeys.json - $(this-folder)/Microsoft.DBforPostgreSQL/stable/2017-12-01/postgresql.json - $(this-folder)/Microsoft.DBforPostgreSQL/stable/2017-12-01/ServerSecurityAlertPolicies.json diff --git a/specification/postgresql/resource-manager/readme.python.md b/specification/postgresql/resource-manager/readme.python.md index 8949ade07213..6dc601939234 100644 --- a/specification/postgresql/resource-manager/readme.python.md +++ b/specification/postgresql/resource-manager/readme.python.md @@ -9,6 +9,7 @@ These settings apply only when `--track2` is specified on the command line. azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION package-name: azure-mgmt-rdbms +package-version: 1.0.0b1 no-namespace-folders: true ``` @@ -21,9 +22,20 @@ clear-output-folder: true batch: - tag: package-2020-01-01 - tag: package-2020-11-05-preview + - tag: package-2021-03-31-privatepreview ``` +### Tag: package-2021-03-31-privatepreview and python + +These settings apply only when `--tag=package-2021-03-31-privatepreview --python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-2021-03-31-privatepreview' && $(python) +namespace: azure.mgmt.rdbms.postgresql_flexibleservers +output-folder: $(python-sdks-folder)/rdbms/azure-mgmt-rdbms/azure/mgmt/rdbms/postgresql_flexibleservers +``` + ### Tag: package-2020-01-01 and python These settings apply only when `--tag=package-2020-01-01 --python` is specified on the command line. diff --git a/specification/postgresqlhsc/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-10-05-privatepreview/examples/ServerGroupCreate.json b/specification/postgresqlhsc/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-10-05-privatepreview/examples/ServerGroupCreate.json index 4f6861b94d77..b70f5859c3aa 100644 --- a/specification/postgresqlhsc/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-10-05-privatepreview/examples/ServerGroupCreate.json +++ b/specification/postgresqlhsc/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-10-05-privatepreview/examples/ServerGroupCreate.json @@ -13,6 +13,9 @@ "delegatedSubnetArguments": { "subnetArmResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-vnet-subnet" }, + "privateDnsZoneArguments": { + "privateDnsZoneArmResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.Network/privateDnsZones/test-private-dns-zone" + }, "enableMx": true, "enableZfs": false, "postgresqlVersion": "12", diff --git a/specification/postgresqlhsc/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-10-05-privatepreview/examples/ServerGroupGet.json b/specification/postgresqlhsc/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-10-05-privatepreview/examples/ServerGroupGet.json index 72465e75fc48..2d60c2327deb 100644 --- a/specification/postgresqlhsc/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-10-05-privatepreview/examples/ServerGroupGet.json +++ b/specification/postgresqlhsc/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-10-05-privatepreview/examples/ServerGroupGet.json @@ -39,6 +39,9 @@ "delegatedSubnetArguments": { "subnetArmResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-vnet-subnet" }, + "privateDnsZoneArguments": { + "privateDnsZoneArmResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.Network/privateDnsZones/test-private-dns-zone" + }, "maintenanceWindow": { "dayOfWeek": 0, "startHour": 0, diff --git a/specification/postgresqlhsc/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-10-05-privatepreview/examples/ServerGroupList.json b/specification/postgresqlhsc/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-10-05-privatepreview/examples/ServerGroupList.json index 46e1369acf02..5277f4beddd0 100644 --- a/specification/postgresqlhsc/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-10-05-privatepreview/examples/ServerGroupList.json +++ b/specification/postgresqlhsc/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-10-05-privatepreview/examples/ServerGroupList.json @@ -38,6 +38,9 @@ "delegatedSubnetArguments": { "subnetArmResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-vnet-subnet" }, + "privateDnsZoneArguments": { + "privateDnsZoneArmResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.Network/privateDnsZones/test-private-dns-zone" + }, "readReplicas": [ "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/serverGroupsv2/hsctestsg2" ], @@ -185,6 +188,9 @@ "delegatedSubnetArguments": { "subnetArmResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-vnet-subnet" }, + "privateDnsZoneArguments": { + "privateDnsZoneArmResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.Network/privateDnsZones/test-private-dns-zone" + }, "readReplicas": null, "sourceServerGroup": null, "serverRoleGroups": [ diff --git a/specification/postgresqlhsc/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-10-05-privatepreview/examples/ServerGroupListByResourceGroup.json b/specification/postgresqlhsc/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-10-05-privatepreview/examples/ServerGroupListByResourceGroup.json index 32a127929e81..5049c2284e44 100644 --- a/specification/postgresqlhsc/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-10-05-privatepreview/examples/ServerGroupListByResourceGroup.json +++ b/specification/postgresqlhsc/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-10-05-privatepreview/examples/ServerGroupListByResourceGroup.json @@ -39,6 +39,9 @@ "delegatedSubnetArguments": { "subnetArmResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-vnet-subnet" }, + "privateDnsZoneArguments": { + "privateDnsZoneArmResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.Network/privateDnsZones/test-private-dns-zone" + }, "readReplicas": null, "sourceServerGroup": null, "serverRoleGroups": [ @@ -184,6 +187,9 @@ "delegatedSubnetArguments": { "subnetArmResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-vnet-subnet" }, + "privateDnsZoneArguments": { + "privateDnsZoneArmResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.Network/privateDnsZones/test-private-dns-zone" + }, "readReplicas": null, "sourceServerGroup": null, "serverRoleGroups": [ diff --git a/specification/postgresqlhsc/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-10-05-privatepreview/postgresqlhsc.json b/specification/postgresqlhsc/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-10-05-privatepreview/postgresqlhsc.json index 477ae61dd759..ad560fcc39a5 100644 --- a/specification/postgresqlhsc/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-10-05-privatepreview/postgresqlhsc.json +++ b/specification/postgresqlhsc/resource-manager/Microsoft.DBforPostgreSQL/preview/2020-10-05-privatepreview/postgresqlhsc.json @@ -1657,6 +1657,15 @@ } } }, + "privateDnsZoneArguments": { + "description": "The private dns zone arguments for a server group.", + "properties": { + "privateDnsZoneArmResourceId": { + "type": "string", + "description": "private dns zone arm resource id." + } + } + }, "readReplicas": { "type": "array", "description": "The array of read replica server groups.", diff --git a/specification/postgresqlhsc/resource-manager/readme.azureresourceschema.md b/specification/postgresqlhsc/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 2ed4e21a2173..000000000000 --- a/specification/postgresqlhsc/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,12 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: [] - -``` - -Please also specify `--azureresourceschema-folder=`. diff --git a/specification/postgresqlhsc/resource-manager/readme.go.md b/specification/postgresqlhsc/resource-manager/readme.go.md index 9fc6abf4a296..a80bba9db423 100644 --- a/specification/postgresqlhsc/resource-manager/readme.go.md +++ b/specification/postgresqlhsc/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: postgresqlhsc clear-output-folder: true ``` @@ -22,5 +22,5 @@ These settings apply only when `--tag=package-2020-10-05-privatepreview --go` is Please also specify `--go-sdk-folder=`. ``` yaml $(tag) == 'package-2020-10-05-privatepreview' && $(go) -output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2020-10-05-privatepreview/$(namespace) +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2020-10-05-preview/$(namespace) ``` \ No newline at end of file diff --git a/specification/postgresqlhsc/resource-manager/readme.md b/specification/postgresqlhsc/resource-manager/readme.md index 5a126e457c19..8e79c4770cd5 100644 --- a/specification/postgresqlhsc/resource-manager/readme.md +++ b/specification/postgresqlhsc/resource-manager/readme.md @@ -62,8 +62,6 @@ swagger-to-sdk: - bundle install && rake arm:regen_all_profiles['azure_mgmt_postgresqlhsc'] - repo: azure-cli-extensions - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js postgresqlhsc/resource-manager ``` ## C# @@ -94,6 +92,4 @@ See configuration in [readme.typescript.md](./readme.typescript.md) See configuration in [readme.csharp.md](./readme.csharp.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/powerbidedicated/resource-manager/readme.azureresourceschema.md b/specification/powerbidedicated/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 39e0571286df..000000000000 --- a/specification/powerbidedicated/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,36 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-powerbidedicated-2017-10-01 - - tag: schema-powerbidedicated-2021-01-01 -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-powerbidedicated-2017-10-01 and azureresourceschema - -``` yaml $(tag) == 'schema-powerbidedicated-2017-10-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.PowerBIdedicated/stable/2017-10-01/powerbidedicated.json - -``` - -### Tag: schema-powerbidedicated-2021-01-01 and azureresourceschema - -``` yaml $(tag) == 'schema-powerbidedicated-2021-01-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.PowerBIdedicated/stable/2021-01-01/powerbidedicated.json - - Microsoft.PowerBIdedicated/stable/2021-01-01/autoScaleVCores.json - -``` diff --git a/specification/powerbidedicated/resource-manager/readme.go.md b/specification/powerbidedicated/resource-manager/readme.go.md index d4c5dc4a848d..f62b7a6f07f3 100644 --- a/specification/powerbidedicated/resource-manager/readme.go.md +++ b/specification/powerbidedicated/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION clear-output-folder: true namespace: powerbidedicated ``` diff --git a/specification/powerbidedicated/resource-manager/readme.md b/specification/powerbidedicated/resource-manager/readme.md index 4cddc7c6f01e..3f0ddaba3690 100644 --- a/specification/powerbidedicated/resource-manager/readme.md +++ b/specification/powerbidedicated/resource-manager/readme.md @@ -67,8 +67,6 @@ swagger-to-sdk: - repo: azure-sdk-for-python - repo: azure-sdk-for-python-track2 - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js powerbidedicated/resource-manager ``` ## C# @@ -143,7 +141,5 @@ See configuration in [readme.python.md](./readme.python.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/powerbidedicated/resource-manager/readme.python.md b/specification/powerbidedicated/resource-manager/readme.python.md index 3bfcb64fe851..1326f68f8000 100644 --- a/specification/powerbidedicated/resource-manager/readme.python.md +++ b/specification/powerbidedicated/resource-manager/readme.python.md @@ -12,6 +12,7 @@ python: payload-flattening-threshold: 2 namespace: azure.mgmt.powerbidedicated package-name: azure-mgmt-powerbidedicated + package-version: 2.0.0 clear-output-folder: true ``` ``` yaml $(python) && $(track2) @@ -20,6 +21,8 @@ azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION namespace: azure.mgmt.powerbidedicated package-name: azure-mgmt-powerbidedicated +package-version: 2.0.0 +clear-output-folder: true ``` ``` yaml $(python) && $(python-mode) == 'update' && !$(track2) python: diff --git a/specification/powerbiembedded/resource-manager/readme.azureresourceschema.md b/specification/powerbiembedded/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 8fdb893fe252..000000000000 --- a/specification/powerbiembedded/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,24 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-powerbi-2016-01-29 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-powerbi-2016-01-29 and azureresourceschema - -``` yaml $(tag) == 'schema-powerbi-2016-01-29' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.PowerBI/stable/2016-01-29/powerbiembedded.json - -``` diff --git a/specification/powerbiembedded/resource-manager/readme.go.md b/specification/powerbiembedded/resource-manager/readme.go.md index 8d88acd2f8e3..0e5ff45f9c7f 100644 --- a/specification/powerbiembedded/resource-manager/readme.go.md +++ b/specification/powerbiembedded/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: powerbiembedded clear-output-folder: true ``` diff --git a/specification/powerbiembedded/resource-manager/readme.md b/specification/powerbiembedded/resource-manager/readme.md index 58f6019c622f..e4f3273336e5 100644 --- a/specification/powerbiembedded/resource-manager/readme.md +++ b/specification/powerbiembedded/resource-manager/readme.md @@ -61,8 +61,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_powerbi_embedded'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js powerbiembedded/resource-manager ``` @@ -116,7 +114,5 @@ See configuration in [readme.go.md](./readme.go.md) See configuration in [readme.java.md](./readme.java.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/account.json b/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/account.json new file mode 100644 index 000000000000..36f8af84ed52 --- /dev/null +++ b/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/account.json @@ -0,0 +1,425 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-10-30-preview", + "title": "PowerPlatform" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://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.PowerPlatform/accounts/{accountName}": { + "put": { + "tags": [ + "Accounts" + ], + "operationId": "Accounts_CreateOrUpdate", + "description": "Creates an account.", + "x-ms-examples": { + "Create or update account": { + "$ref": "./examples/createOrUpdateAccount.json" + } + }, + "parameters": [ + { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the account." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Account" + }, + "description": "Parameters supplied to create or update an account." + } + ], + "responses": { + "201": { + "description": "Created. Account created.", + "schema": { + "$ref": "#/definitions/Account" + } + }, + "200": { + "description": "OK. Account updated.", + "schema": { + "$ref": "#/definitions/Account" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": false, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + }, + "get": { + "tags": [ + "Accounts" + ], + "operationId": "Accounts_Get", + "description": "Get information about an account.", + "x-ms-examples": { + "Get account": { + "$ref": "./examples/getAccount.json" + } + }, + "parameters": [ + { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the account." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. Account found.", + "schema": { + "$ref": "#/definitions/Account" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + }, + "delete": { + "tags": [ + "Accounts" + ], + "operationId": "Accounts_Delete", + "description": "Delete an account.", + "x-ms-examples": { + "Delete account": { + "$ref": "./examples/deleteAccount.json" + } + }, + "parameters": [ + { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the account." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "204": { + "description": "OK." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": false, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + }, + "patch": { + "tags": [ + "Accounts" + ], + "operationId": "Accounts_Update", + "description": "Updates an account.", + "x-ms-examples": { + "Update account": { + "$ref": "./examples/updateAccount.json" + } + }, + "parameters": [ + { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the account." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PatchAccount" + }, + "description": "Parameters supplied to update an account." + } + ], + "responses": { + "200": { + "description": "OK. Account updated.", + "schema": { + "$ref": "#/definitions/Account" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": false, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.PowerPlatform/accounts": { + "get": { + "tags": [ + "Accounts" + ], + "operationId": "Accounts_ListByResourceGroup", + "description": "Retrieve a list of accounts within a given resource group.", + "x-ms-examples": { + "List accounts by resource group": { + "$ref": "./examples/listAccountsByResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. Accounts listed.", + "schema": { + "$ref": "#/definitions/AccountList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.PowerPlatform/accounts": { + "get": { + "tags": [ + "Accounts" + ], + "operationId": "Accounts_ListBySubscription", + "description": "Retrieve a list of accounts within a subscription.", + "x-ms-examples": { + "List accounts by subscription": { + "$ref": "./examples/listAccountsBySubscription.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. Accounts listed.", + "schema": { + "$ref": "#/definitions/AccountList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + } + } + }, + "definitions": { + "Account": { + "type": "object", + "description": "Definition of the account.", + "allOf": [ + { + "description": "The resource model definition for a ARM tracked top level resource.", + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/TrackedResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/AccountProperties", + "description": "The properties that define configuration for the account.", + "x-ms-client-flatten": true + }, + "systemData": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData", + "description": "Metadata pertaining to creation and last modification of the resource." + } + } + }, + "PatchAccount": { + "type": "object", + "description": "Definition of the account.", + "allOf": [ + { + "description": "The resource model definition for a ARM tracked top level resource.", + "$ref": "../../common/v1/definitions.json#/definitions/PatchTrackedResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/AccountProperties", + "description": "The properties that define configuration for the account.", + "x-ms-client-flatten": true + }, + "systemData": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData", + "description": "Metadata pertaining to creation and last modification of the resource." + } + } + }, + "AccountProperties": { + "type": "object", + "description": "The properties that define configuration for the account.", + "properties": { + "description": { + "type": "string", + "description": "The description of the account." + } + } + }, + "AccountList": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Account" + }, + "description": "Result of the list accounts operation." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "The response of the list accounts operation." + } + }, + "parameters": {} +} diff --git a/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/enterprisePolicy.json b/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/enterprisePolicy.json index f37c899d3410..0a6b4ea6ff13 100644 --- a/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/enterprisePolicy.json +++ b/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/enterprisePolicy.json @@ -294,7 +294,7 @@ } }, "x-ms-pageable": { - "nextLinkName": null + "nextLinkName": "nextLink" }, "produces": [ "application/json" @@ -339,7 +339,7 @@ } }, "x-ms-pageable": { - "nextLinkName": null + "nextLinkName": "nextLink" }, "produces": [ "application/json" @@ -381,7 +381,7 @@ } }, "x-ms-pageable": { - "nextLinkName": null + "nextLinkName": "nextLink" }, "produces": [ "application/json" @@ -451,8 +451,8 @@ "type": "object", "description": "Settings concerning lockbox.", "properties": { - "status": { - "$ref": "#/definitions/status", + "state": { + "$ref": "#/definitions/state", "description": "lockbox configuration" } } @@ -461,9 +461,23 @@ "type": "object", "description": "The encryption settings for a configuration store.", "properties": { - "keyVaultProperties": { + "keyVault": { "$ref": "#/definitions/KeyVaultProperties", "description": "Key vault properties." + }, + "state": { + "description": "The state of onboarding, which only appears in the response.", + "$ref": "#/definitions/state" + } + } + }, + "networkInjection": { + "type": "object", + "description": "Settings concerning network injection.", + "properties": { + "virtualNetworks": { + "$ref": "#/definitions/VirtualNetworkPropertiesList", + "description": "Network injection configuration" } } } @@ -497,12 +511,11 @@ } } }, - "status": { + "state": { "type": "string", - "readOnly": true, "description": "The state of onboarding, which only appears in the response.", "x-ms-enum": { - "name": "status", + "name": "state", "modelAsString": true }, "enum": [ @@ -522,14 +535,11 @@ "key": { "$ref": "#/definitions/keyProperties", "description": "Identity of the secret that includes name and version." - }, - "status": { - "description": "The state of onboarding, which only appears in the response.", - "$ref": "#/definitions/status" } } }, "keyProperties": { + "type": "object", "properties": { "name": { "description": "The identifier of the key vault key used to encrypt data.", @@ -542,7 +552,48 @@ }, "description": "Url and version of the KeyVault Secret" }, + "VirtualNetworkPropertiesList": { + "properties": { + "value": { + "type": "array", + "description": "Array of virtual networks.", + "items": { + "$ref": "#/definitions/VirtualNetworkProperties" + } + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "A list of private link resources" + }, + "VirtualNetworkProperties": { + "type": "object", + "description": "Settings concerning the virtual network.", + "properties": { + "id": { + "type": "string", + "description": "Uri of the virtual network." + }, + "subnet": { + "$ref": "#/definitions/SubnetProperties", + "description": "Properties of a subnet." + } + } + }, + "SubnetProperties": { + "type": "object", + "description": "Properties of a subnet.", + "properties": { + "name": { + "type": "string", + "description": "Subnet name." + } + } + }, "EnterprisePolicyList": { + "type": "object", "properties": { "value": { "type": "array", @@ -550,6 +601,10 @@ "$ref": "#/definitions/EnterprisePolicy" }, "description": "Result of the list EnterprisePolicy operation." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." } }, "description": "The response of the list EnterprisePolicy operation." diff --git a/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/examples/createOrUpdateAccount.json b/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/examples/createOrUpdateAccount.json new file mode 100644 index 000000000000..cd618266e968 --- /dev/null +++ b/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/examples/createOrUpdateAccount.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "resourceGroup", + "api-version": "2020-10-30-preview", + "accountName": "account", + "parameters": { + "tags": { + "Organization": "Administration" + }, + "location": "East US", + "properties": { + "description": "Description of the account." + } + } + }, + "responses": { + "201": { + "headers": {}, + "body": { + "name": "account", + "id": "/subscriptions/subid/resourceGroups/resourceGroup/providers/Microsoft.PowerPlatform/accounts/account", + "type": "Microsoft.PowerPlatform/accounts", + "location": "East US", + "properties": { + "description": "Description of the account." + }, + "tags": { + "Organization": "Administration" + } + } + }, + "200": { + "headers": {}, + "body": { + "name": "account", + "id": "/subscriptions/subid/resourceGroups/resourceGroup/providers/Microsoft.PowerPlatform/accounts/account", + "type": "Microsoft.PowerPlatform/accounts", + "location": "East US", + "properties": { + "description": "Description of the account." + }, + "tags": { + "Organization": "Administration" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + } + } + } + } +} diff --git a/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/examples/deleteAccount.json b/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/examples/deleteAccount.json new file mode 100644 index 000000000000..052126de8273 --- /dev/null +++ b/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/examples/deleteAccount.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "resourceGroup", + "accountName": "account", + "api-version": "2020-10-30-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/examples/getAccount.json b/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/examples/getAccount.json new file mode 100644 index 000000000000..d638ae93ac18 --- /dev/null +++ b/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/examples/getAccount.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "rg", + "accountName": "account", + "api-version": "2020-10-30-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "name": "account", + "id": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.PowerPlatform/accounts/account", + "type": "Microsoft.PowerPlatform/accounts", + "location": "East US", + "properties": { + "description": "Description of the account." + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + } + } + } + } +} diff --git a/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/examples/getEnterprisePolicy.json b/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/examples/getEnterprisePolicy.json index 7309bf3530cd..3ce3c7c7ad6b 100644 --- a/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/examples/getEnterprisePolicy.json +++ b/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/examples/getEnterprisePolicy.json @@ -18,6 +18,30 @@ "tenantId": "tenantId", "type": "SystemAssigned" }, + "properties": { + "lockbox": { + "state": "succeeded" + }, + "encryption": { + "keyVault": { + "id": "nnn", + "key": { + "name": "name", + "version": "1.0" + } + } + }, + "networkInjection": { + "virtualNetworks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Network/virtualNetworks/virtualNetwork", + "subnet": { + "name": "testSubnet" + } + } + ] + } + }, "systemData": { "createdBy": "user1", "createdByType": "User", diff --git a/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/examples/listAccountsByResourceGroup.json b/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/examples/listAccountsByResourceGroup.json new file mode 100644 index 000000000000..12c97183089f --- /dev/null +++ b/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/examples/listAccountsByResourceGroup.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "rg", + "api-version": "2020-10-30-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "name": "account1", + "id": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.PowerPlatform/accounts/account1", + "type": "Microsoft.PowerPlatform/accounts", + "location": "East US", + "properties": { + "description": "Description of account 1." + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + } + }, + { + "name": "account2", + "id": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.PowerPlatform/accounts/account2", + "type": "Microsoft.PowerPlatform/accounts", + "location": "East US", + "properties": { + "description": "Description of account 2." + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + } + } + ] + } + } + } +} diff --git a/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/examples/listAccountsBySubscription.json b/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/examples/listAccountsBySubscription.json new file mode 100644 index 000000000000..4189288bc642 --- /dev/null +++ b/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/examples/listAccountsBySubscription.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2020-10-30-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "name": "account1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.PowerPlatform/accounts/account1", + "type": "Microsoft.PowerPlatform/accounts", + "location": "East US", + "properties": { + "description": "Description of account 1." + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + } + }, + { + "name": "account2", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.PowerPlatform/accounts/account2", + "type": "Microsoft.PowerPlatform/accounts", + "location": "East US", + "properties": { + "description": "Description of account 2." + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + } + } + ] + } + } + } +} diff --git a/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/examples/listEnterprisePoliciesByResourceGroup.json b/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/examples/listEnterprisePoliciesByResourceGroup.json index f43fa493ae1c..7a33bab7ff27 100644 --- a/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/examples/listEnterprisePoliciesByResourceGroup.json +++ b/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/examples/listEnterprisePoliciesByResourceGroup.json @@ -1,56 +1,54 @@ { "parameters": { "subscriptionId": "subid", - "resourceGroupName": "rg", + "resourceGroupName": "rg1", "api-version": "2020-10-30-preview" }, "responses": { "200": { "headers": {}, - "body": [ - { - "name": "entrprisePolicy1", - "id": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.PowerPlatform/enterprisePolicies/enterprisePolicy1", - "type": "Microsoft.PowerPlatform/enterprisePolicies", - "location": "East US", - "properties": { + "body": { + "value": [ + { + "name": "enterprisePolicy1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.PowerPlatform/enterprisePolicies/enterprisePolicy1", + "type": "Microsoft.PowerPlatform/enterprisePolicies", + "location": "East US", "identity": { "systemAssignedIdentityPrincipalId": "principalId", "tenantId": "tenantId", "type": "SystemAssigned" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" } }, - "systemData": { - "createdBy": "user1", - "createdByType": "User", - "createdAt": "2020-01-01T17:18:19.1234567Z", - "lastModifiedBy": "user2", - "lastModifiedByType": "User", - "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" - } - }, - { - "name": "enterprisePolicy2", - "id": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.PowerPlatform/enterprisePolicies/enterprisePolicy2", - "type": "Microsoft.PowerPlatform/enterprisePolicies", - "location": "East US", - "properties": { + { + "name": "enterprisePolicy2", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.PowerPlatform/enterprisePolicies/enterprisePolicy2", + "type": "Microsoft.PowerPlatform/enterprisePolicies", + "location": "East US", "identity": { "systemAssignedIdentityPrincipalId": "principalId", "tenantId": "tenantId", "type": "SystemAssigned" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" } - }, - "systemData": { - "createdBy": "user1", - "createdByType": "User", - "createdAt": "2020-01-01T17:18:19.1234567Z", - "lastModifiedBy": "user2", - "lastModifiedByType": "User", - "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" } - } - ] + ] + } } } } diff --git a/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/examples/listEnterprisePoliciesBySubscription.json b/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/examples/listEnterprisePoliciesBySubscription.json index 100d68113d74..c19f288753dd 100644 --- a/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/examples/listEnterprisePoliciesBySubscription.json +++ b/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/examples/listEnterprisePoliciesBySubscription.json @@ -6,46 +6,48 @@ "responses": { "200": { "headers": {}, - "body": [ - { - "name": "enterprisePolicy1", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.PowerPlatform/enterprisePolicies/enterprisePolicy1", - "type": "Microsoft.PowerPlatform/enterprisePolicies", - "location": "East US", - "identity": { - "systemAssignedIdentityPrincipalId": "principalId", - "tenantId": "tenantId", - "type": "SystemAssigned" + "body": { + "value": [ + { + "name": "enterprisePolicy1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.PowerPlatform/enterprisePolicies/enterprisePolicy1", + "type": "Microsoft.PowerPlatform/enterprisePolicies", + "location": "East US", + "identity": { + "systemAssignedIdentityPrincipalId": "principalId", + "tenantId": "tenantId", + "type": "SystemAssigned" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + } }, - "systemData": { - "createdBy": "user1", - "createdByType": "User", - "createdAt": "2020-01-01T17:18:19.1234567Z", - "lastModifiedBy": "user2", - "lastModifiedByType": "User", - "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + { + "name": "enterprisePolicy2", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.PowerPlatform/enterprisePolicies/enterprisePolicy2", + "type": "Microsoft.PowerPlatform/enterprisePolicies", + "location": "East US", + "identity": { + "systemAssignedIdentityPrincipalId": "principalId", + "tenantId": "tenantId", + "type": "SystemAssigned" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + } } - }, - { - "name": "enterprisePolicy2", - "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.PowerPlatform/enterprisePolicies/enterprisePolicy2", - "type": "Microsoft.PowerPlatform/enterprisePolicies", - "location": "East US", - "identity": { - "systemAssignedIdentityPrincipalId": "principalId", - "tenantId": "tenantId", - "type": "SystemAssigned" - }, - "systemData": { - "createdBy": "user1", - "createdByType": "User", - "createdAt": "2020-01-01T17:18:19.1234567Z", - "lastModifiedBy": "user2", - "lastModifiedByType": "User", - "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" - } - } - ] + ] + } } } } diff --git a/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/examples/listOperations.json b/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/examples/listOperations.json index 0d19fa2a6b78..538d8b189e5a 100644 --- a/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/examples/listOperations.json +++ b/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/examples/listOperations.json @@ -26,6 +26,26 @@ "operation": "Microsoft.PowerPlatform/enterprisePolicies/read", "description": "Get enterprisePolicy." } + }, + { + "name": "Microsoft.PowerPlatform/accounts/write", + "isDataAction": false, + "display": { + "provider": "Microsoft PowerPlatform", + "resource": "Microsoft.PowerPlatform/accounts", + "operation": "Microsoft.PowerPlatform/accounts/write", + "description": "Create new account." + } + }, + { + "name": "Microsoft.PowerPlatform/accounts/read", + "isDataAction": false, + "display": { + "provider": "Microsoft PowerPlatform", + "resource": "Microsoft.PowerPlatform/accounts", + "operation": "Microsoft.PowerPlatform/accounts/read", + "description": "Get account." + } } ] } diff --git a/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/examples/listSubnetsByEnterprisePolicy.json b/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/examples/listSubnetsByEnterprisePolicy.json deleted file mode 100644 index 21356b1fb472..000000000000 --- a/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/examples/listSubnetsByEnterprisePolicy.json +++ /dev/null @@ -1,55 +0,0 @@ -{ - "parameters": { - "subscriptionId": "00000000-1111-2222-3333-444444444444", - "resourceGroupName": "rg1", - "enterprisePolicyName": "ep1", - "api-version": "2020-10-30-preview", - "subnetName": "subnetName" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg1/providers/Microsoft.PowerPlatform/enterprisePolicies/ep1/subnets", - "name": "subnetName", - "type": "Microsoft.PowerPlatform/enterprisePolicies/subnets", - "properties": { - "subnet": { - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vn1/subnets/subnet1" - }, - "status": "Enabled" - }, - "systemData": { - "createdBy": "user1", - "createdByType": "User", - "createdAt": "2020-01-01T17:18:19.1234567Z", - "lastModifiedBy": "user2", - "lastModifiedByType": "User", - "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" - } - }, - { - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg1/providers/Microsoft.PowerPlatform/enterprisePolicies/ep1/subnets", - "name": "subnetName", - "type": "Microsoft.PowerPlatform/enterprisePolicies/subnets", - "properties": { - "subnet": { - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vn1/subnets/subnet2" - }, - "status": "Disabled" - }, - "systemData": { - "createdBy": "user1", - "createdByType": "User", - "createdAt": "2020-01-01T17:18:19.1234567Z", - "lastModifiedBy": "user2", - "lastModifiedByType": "User", - "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" - } - } - ] - } - } - } -} diff --git a/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/examples/subnetGet.json b/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/examples/subnetGet.json deleted file mode 100644 index bb729648fceb..000000000000 --- a/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/examples/subnetGet.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parameters": { - "subscriptionId": "00000000-1111-2222-3333-444444444444", - "resourceGroupName": "rg1", - "enterprisePolicyName": "ddb1", - "api-version": "2020-10-30-preview", - "subnetName": "subnetName" - }, - "responses": { - "200": { - "body": { - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg1/providers/Microsoft.PowerPlatform/enterprisePolicies/ddb1/subnets", - "name": "subnetName", - "type": "Microsoft.PowerPlatform/enterprisePolicies/subnets", - "properties": { - "subnet": { - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vn1/subnets/subnet1" - }, - "status": "Enabled" - }, - "systemData": { - "createdBy": "user1", - "createdByType": "User", - "createdAt": "2020-01-01T17:18:19.1234567Z", - "lastModifiedBy": "user2", - "lastModifiedByType": "User", - "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" - } - } - } - } -} diff --git a/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/examples/subnetUpdate.json b/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/examples/subnetUpdate.json deleted file mode 100644 index 2833415fc554..000000000000 --- a/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/examples/subnetUpdate.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "parameters": { - "subscriptionId": "00000000-1111-2222-3333-444444444444", - "resourceGroupName": "rg1", - "enterprisePolicyName": "ddb1", - "api-version": "2020-10-30-preview", - "subnetName": "subnetName" - }, - "responses": { - "200": { - "body": { - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg1/providers/Microsoft.PowerPlatform/enterprisePolicies/ddb1/subnets/subnetName", - "name": "subnetName", - "type": "Microsoft.PowerPlatform/enterprisePolicies/subnets", - "properties": { - "status": "Disabled" - }, - "systemData": { - "createdBy": "user1", - "createdByType": "User", - "createdAt": "2020-01-01T17:18:19.1234567Z", - "lastModifiedBy": "user2", - "lastModifiedByType": "User", - "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" - } - } - } - } -} diff --git a/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/examples/updateAccount.json b/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/examples/updateAccount.json new file mode 100644 index 000000000000..b7f659838eed --- /dev/null +++ b/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/examples/updateAccount.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "resourceGroup", + "accountName": "account", + "api-version": "2020-10-30-preview", + "parameters": { + "tags": { + "Organization": "Administration" + }, + "location": "East US", + "properties": { + "description": "Description of account." + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "name": "account", + "id": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.PowerPlatform/accounts/account", + "type": "Microsoft.PowerPlatform/accounts", + "location": "East US", + "properties": { + "description": "Description of account." + }, + "tags": { + "Organization": "Administration" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + } + } + } + } +} diff --git a/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/privateLinkResources.json b/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/privateLinkResources.json index 0e7f9799d64b..c046989249d3 100644 --- a/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/privateLinkResources.json +++ b/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/privateLinkResources.json @@ -130,41 +130,6 @@ } } }, - "definitions": { - "PrivateLinkResourceListResult": { - "description": "A list of private link resources", - "type": "object", - "properties": { - "value": { - "type": "array", - "description": "Array of private link resources", - "items": { - "$ref": "#/definitions/PrivateLinkResource" - } - } - } - }, - "PrivateLinkResource": { - "description": "A private link resource", - "type": "object", - "properties": { - "properties": { - "$ref": "../../../../../common-types/resource-management/v1/privatelinks.json#/definitions/PrivateLinkResourceProperties", - "description": "Resource properties.", - "x-ms-client-flatten": true - }, - "systemData": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData", - "description": "Metadata pertaining to creation and last modification of the resource." - } - }, - "allOf": [ - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" - } - ] - } - }, "parameters": { "GroupNameParameter": { "name": "groupName", diff --git a/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/subnetResources.json b/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/subnetResources.json deleted file mode 100644 index 4864446dab89..000000000000 --- a/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/subnetResources.json +++ /dev/null @@ -1,275 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "version": "2020-10-30-preview", - "title": "PowerPlatform" - }, - "host": "management.azure.com", - "schemes": [ - "https" - ], - "security": [ - { - "azure_auth": [ - "user_impersonation" - ] - } - ], - "securityDefinitions": { - "azure_auth": { - "type": "oauth2", - "authorizationUrl": "https://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.PowerPlatform/enterprisePolicies/{enterprisePolicyName}/subnets/{subnetName}": { - "get": { - "tags": [ - "Subnets" - ], - "summary": "Gets Subnets associated with EnterprisePolicy authorized for outbound calls from PowerPlatform.", - "description": "Description of Subnets that are authorized for outbound calls from PowerPlatform.", - "operationId": "Subnets_Get", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "../../common/v1/definitions.json#/parameters/EnterprisePolicyNameParameter" - }, - { - "$ref": "#/parameters/SubnetNameParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/Subnet" - } - }, - "default": { - "description": "App Service error response.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-examples": { - "Gets subnet.": { - "$ref": "./examples/subnetGet.json" - } - }, - "x-ms-long-running-operation": false, - "produces": [ - "application/json" - ], - "consumes": [ - "application/json" - ] - }, - "put": { - "tags": [ - "PowerPlatform" - ], - "summary": "Create or Update Subnet that PowerPlatform resources can access.", - "description": "Description of the Subnet that PowerPlatform resources can access.", - "operationId": "Subnets_CreateOrUpdate", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "../../common/v1/definitions.json#/parameters/EnterprisePolicyNameParameter" - }, - { - "$ref": "#/parameters/SubnetNameParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/Subnet" - } - }, - "default": { - "description": "App Service error response.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-examples": { - "Creates or Updates subnet.": { - "$ref": "./examples/subnetUpdate.json" - } - }, - "x-ms-long-running-operation": false, - "produces": [ - "application/json" - ], - "consumes": [ - "application/json" - ] - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.PowerPlatform/enterprisePolicies/{enterprisePolicyName}/subnets": { - "get": { - "tags": [ - "Subnets" - ], - "operationId": "Subnets_ListByEnterprisePolicy", - "description": "Retrieve a list of subnets within a given enterprisePolicy", - "x-ms-examples": { - "List EnterprisePolicies by resource group": { - "$ref": "./examples/listSubnetsByEnterprisePolicy.json" - } - }, - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "../../common/v1/definitions.json#/parameters/EnterprisePolicyNameParameter" - } - ], - "responses": { - "200": { - "description": "OK. List of subnets.", - "schema": { - "$ref": "#/definitions/SubnetListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": null - }, - "produces": [ - "application/json" - ], - "consumes": [ - "application/json" - ] - } - } - }, - "definitions": { - "SubnetListResult": { - "description": "A list of subnets", - "type": "object", - "properties": { - "value": { - "type": "array", - "description": "Array of subnets", - "items": { - "$ref": "#/definitions/Subnet" - } - } - } - }, - "Subnet": { - "description": "A subnet", - "type": "object", - "properties": { - "properties": { - "$ref": "#/definitions/SubnetProperties", - "description": "Resource properties.", - "x-ms-client-flatten": true - }, - "systemData": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData", - "description": "Metadata pertaining to creation and last modification of the resource." - } - }, - "allOf": [ - { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" - } - ] - }, - "SubnetProperties": { - "description": "Properties of a subnet.", - "type": "object", - "properties": { - "subnet": { - "$ref": "#/definitions/SubnetEndpointProperty", - "description": "Endpoint of the subnet." - }, - "vnetid": { - "readOnly": true, - "type": "string", - "description": "The virtual network ID. This is typically a GUID. Expect a null GUID by default." - }, - "status": { - "$ref": "#/definitions/SubnetState", - "description": "Connection State of the subnet." - } - } - }, - "SubnetEndpointProperty": { - "type": "object", - "description": "Endpoint of the subnet.", - "properties": { - "id": { - "type": "string", - "pattern": "^/subscriptions/[^/]*/resourceGroups/[^/]*/providers/Microsoft.(ClassicNetwork|Network)/virtualNetworks/[^/]*/subnets/[^/]*$", - "description": "Resource id of the subnet." - } - } - }, - "SubnetState": { - "type": "string", - "readOnly": true, - "description": "The state of onboarding, which only appears in the response.", - "x-ms-enum": { - "name": "status", - "modelAsString": true - }, - "enum": [ - "Enabled", - "Disabled", - "NotConfigured" - ] - } - }, - "parameters": { - "SubnetNameParameter": { - "name": "subnetName", - "in": "path", - "required": true, - "type": "string", - "x-ms-parameter-location": "method", - "description": "The name of the subnet." - } - } -} diff --git a/specification/powerplatform/resource-manager/readme.azureresourceschema.md b/specification/powerplatform/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 64638bcc3540..000000000000 --- a/specification/powerplatform/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,27 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-powerplatform-2020-10-30-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-powerplatform-2020-10-30-preview and azureresourceschema - -``` yaml $(tag) == 'schema-powerplatform-2020-10-30-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.PowerPlatform/preview/2020-10-30-preview/enterprisePolicy.json - - Microsoft.PowerPlatform/preview/2020-10-30-preview/privateEndpointConnection.json - - Microsoft.PowerPlatform/preview/2020-10-30-preview/privateLinkResources.json - - Microsoft.PowerPlatform/preview/2020-10-30-preview/subnetResources.json - -``` diff --git a/specification/powerplatform/resource-manager/readme.go.md b/specification/powerplatform/resource-manager/readme.go.md index ca4e7e44bdc3..e245dc62c44f 100644 --- a/specification/powerplatform/resource-manager/readme.go.md +++ b/specification/powerplatform/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ```yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION clear-output-folder: true ``` diff --git a/specification/powerplatform/resource-manager/readme.md b/specification/powerplatform/resource-manager/readme.md index d66f7b64acdd..6da6ba067739 100644 --- a/specification/powerplatform/resource-manager/readme.md +++ b/specification/powerplatform/resource-manager/readme.md @@ -4,7 +4,7 @@ This is the AutoRest configuration file for powerplatform. -## Getting Started rapatank +## Getting Started To build the SDKs for My API, simply install AutoRest via `npm` (`npm install -g autorest`) and then run: @@ -35,10 +35,10 @@ These settings apply only when `--tag=package-2020-10-30-preview` is specified o ```yaml $(tag) == 'package-2020-10-30-preview' input-file: + - Microsoft.PowerPlatform/preview/2020-10-30-preview/account.json - Microsoft.PowerPlatform/preview/2020-10-30-preview/enterprisePolicy.json - Microsoft.PowerPlatform/preview/2020-10-30-preview/privateEndpointConnection.json - Microsoft.PowerPlatform/preview/2020-10-30-preview/privateLinkResources.json - - Microsoft.PowerPlatform/preview/2020-10-30-preview/subnetResources.json ``` --- diff --git a/specification/privatedns/resource-manager/readme.azureresourceschema.md b/specification/privatedns/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 35277c91d80b..000000000000 --- a/specification/privatedns/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,48 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-network-2020-06-01 - - tag: schema-network-2020-01-01 - - tag: schema-network-2018-09-01 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-network-2020-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2020-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2020-06-01/privatedns.json - -``` - -### Tag: schema-network-2020-01-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2020-01-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2020-01-01/privatedns.json - -``` - -### Tag: schema-network-2018-09-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2018-09-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2018-09-01/privatedns.json - -``` diff --git a/specification/privatedns/resource-manager/readme.go.md b/specification/privatedns/resource-manager/readme.go.md index 80d66ba2266a..5496064f88d3 100644 --- a/specification/privatedns/resource-manager/readme.go.md +++ b/specification/privatedns/resource-manager/readme.go.md @@ -2,16 +2,24 @@ These settings apply only when `--go` is specified on the command line. -``` yaml $(go) +``` yaml $(go) && !$(track2) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: privatedns clear-output-folder: true ``` +``` yaml $(go) && $(track2) +license-header: MICROSOFT_MIT_NO_VERSION +module-name: sdk/privatedns/armprivatedns +module: github.com/Azure/azure-sdk-for-go/$(module-name) +output-folder: $(go-sdk-folder)/$(module-name) +azure-arm: true +``` + ### Go multi-api -``` yaml $(go) && $(multiapi) +``` yaml $(go) && $(multiapi) batch: - tag: package-2018-09 ``` diff --git a/specification/privatedns/resource-manager/readme.md b/specification/privatedns/resource-manager/readme.md index 5ed0aec8aa49..baa29a1dc15a 100644 --- a/specification/privatedns/resource-manager/readme.md +++ b/specification/privatedns/resource-manager/readme.md @@ -26,7 +26,7 @@ These are the global settings for the Private DNS API. ``` yaml openapi-type: arm -tag: package-2018-09 +tag: package-2020-06 ``` ### Tag: package-2018-09 @@ -38,11 +38,6 @@ input-file: - Microsoft.Network/stable/2018-09-01/privatedns.json ``` -``` yaml -openapi-type: arm -tag: package-2020-01 -``` - ### Tag: package-2020-01 These settings apply only when `--tag=package-2020-01` is specified on the command line. @@ -52,11 +47,6 @@ input-file: - Microsoft.Network/stable/2020-01-01/privatedns.json ``` -``` yaml -openapi-type: arm -tag: package-2020-06 -``` - ### Tag: package-2020-06 These settings apply only when `--tag=package-2020-06` is specified on the command line. @@ -83,8 +73,6 @@ swagger-to-sdk: - repo: azure-sdk-for-js - repo: azure-sdk-for-ruby - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js privatedns/resource-manager ``` ## C# @@ -106,6 +94,10 @@ csharp: See configuration in [readme.go.md](./readme.go.md) +## Python + +See configuration in [readme.python.md](./readme.python.md) + ## Java These settings apply only when `--java` is specified on the command line. @@ -205,7 +197,5 @@ directive: reason: Common types warning. ``` -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/CheckinManifest.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/CheckinManifest.json new file mode 100644 index 000000000000..740405e24c94 --- /dev/null +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/CheckinManifest.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "providerNamespace": "Microsoft.Contoso", + "api-version": "2021-05-01-preview", + "checkinManifestParams": { + "baselineArmManifestLocation": "EastUS2EUAP", + "environment": "Prod" + } + }, + "responses": { + "200": { + "description": "Checkin the manifest.", + "body": { + "isCheckedIn": false, + "statusMessage": "Manifest is successfully merged. Use the Default/Custom rollout (http://aka.ms/rpaasrollout) to roll out the manifest in ARM." + } + } + } +} diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/CustomRollouts_CreateOrUpdate.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/CustomRollouts_CreateOrUpdate.json new file mode 100644 index 000000000000..b2442834ab70 --- /dev/null +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/CustomRollouts_CreateOrUpdate.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "providerNamespace": "Microsoft.Contoso", + "rolloutName": "brazilUsShoeBoxTesting", + "api-version": "2021-05-01-preview", + "properties": { + "properties": { + "specification": { + "canary": { + "regions": [ + "brazilus" + ] + } + } + } + } + }, + "responses": { + "200": { + "description": "Custom rollout completed successfully.", + "body": { + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/customRollouts/brazilUsShoeBoxTesting", + "name": "Microsoft.Contoso/brazilUsShoeBoxTesting", + "type": "Microsoft.ProviderHub/providerRegistrations/customRollouts", + "properties": { + "provisioningState": "Succeeded", + "specification": { + "canary": { + "regions": [ + "brazilus", + "eastus2euap", + "centraluseuap" + ] + } + }, + "status": { + "completedRegions": [ + "brazilus", + "eastus2euap", + "centraluseuap" + ] + } + } + } + } + } +} diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/CustomRollouts_Get.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/CustomRollouts_Get.json new file mode 100644 index 000000000000..0de6dfc92c57 --- /dev/null +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/CustomRollouts_Get.json @@ -0,0 +1,127 @@ +{ + "parameters": { + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "providerNamespace": "Microsoft.Contoso", + "rolloutName": "canaryTesting99", + "api-version": "2021-05-01-preview" + }, + "responses": { + "200": { + "description": "Successfully retrieved the rollout details.", + "body": { + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/customRollouts/canaryTesting99", + "name": "Microsoft.Contoso/canaryTesting99", + "type": "Microsoft.ProviderHub/providerRegistrations/customRollouts", + "properties": { + "provisioningState": "Completed", + "specification": { + "canary": { + "regions": [ + "eastus2euap", + "centraluseuap" + ] + }, + "providerRegistration": { + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso", + "name": "Microsoft.Contoso", + "type": "Microsoft.ProviderHub/providerRegistrations", + "properties": { + "providerHubMetadata": { + "providerAuthentication": { + "allowedAudiences": [ + "https://management.core.windows.net/" + ] + } + }, + "provisioningState": "Succeeded", + "providerAuthorizations": [ + { + "applicationId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k1", + "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b2" + } + ], + "namespace": "microsoft.contoso", + "providerVersion": "2.0", + "providerType": "Internal, Hidden", + "management": { + "manifestOwners": [ + "SPARTA-PlatformServiceAdministrator" + ], + "incidentRoutingService": "", + "incidentRoutingTeam": "", + "incidentContactEmail": "helpme@contoso.com", + "resourceAccessPolicy": "NotSpecified" + }, + "capabilities": [ + { + "quotaId": "CSP_2015-05-01", + "effect": "Allow" + }, + { + "quotaId": "CSP_MG_2017-12-01", + "effect": "Allow" + } + ], + "metadata": null + } + }, + "resourceTypeRegistrations": [ + { + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourceTypeRegistrations/employees", + "name": "Microsoft.Contoso/employees", + "type": "Microsoft.ProviderHub/providerRegistrations/resourceTypeRegistrations", + "properties": { + "routingType": "Default", + "regionality": "Regional", + "endpoints": [ + { + "apiVersions": [ + "2018-11-01-preview", + "2020-01-01-preview", + "2019-01-01" + ], + "locations": [ + "East Asia", + "East US", + "North Europe", + "Southeast Asia", + "East US 2 EUAP", + "Central US EUAP", + "West Europe", + "West US", + "West Central US", + "West US 2" + ], + "requiredFeatures": [ + "Microsoft.Contoso/RPaaSSampleApp" + ] + } + ], + "swaggerSpecifications": [ + { + "apiVersions": [ + "2018-11-01-preview", + "2020-01-01-preview", + "2019-01-01" + ], + "swaggerSpecFolderUri": "https://github.com/Azure/azure-rest-api-specs/blob/feature/azure/contoso/specification/contoso/resource-manager/Microsoft.SampleRP/" + } + ], + "enableAsyncOperation": false, + "provisioningState": "Succeeded", + "enableThirdPartyS2S": false + } + } + ] + }, + "status": { + "completedRegions": [ + "eastus2euap", + "centraluseuap" + ] + } + } + } + } + } +} diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/CustomRollouts_ListByProviderRegistration.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/CustomRollouts_ListByProviderRegistration.json new file mode 100644 index 000000000000..a6599f7849a6 --- /dev/null +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/CustomRollouts_ListByProviderRegistration.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "providerNamespace": "Microsoft.Contoso", + "api-version": "2021-05-01-preview" + }, + "responses": { + "200": { + "description": "List of custom rollouts for given subscription id.", + "body": { + "value": [ + { + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/customRollouts/canaryTesting99", + "name": "Microsoft.Contoso/canaryTesting99", + "type": "Microsoft.ProviderHub/providerRegistrations/customRollouts", + "properties": { + "provisioningState": "Succeeded", + "specification": { + "canary": { + "regions": [ + "eastus2euap", + "centraluseuap" + ] + } + }, + "status": { + "completedRegions": [ + "eastus2euap", + "centraluseuap" + ] + } + } + }, + { + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/customRollouts/brazilustesting", + "name": "Microsoft.Contoso/brazilustesting", + "type": "Microsoft.ProviderHub/providerRegistrations/customRollouts", + "properties": { + "provisioningState": "Failed", + "specification": { + "canary": { + "regions": [ + "brazilus" + ] + } + }, + "status": { + "failedOrSkippedRegions": { + "brazilus": { + "code": "RolloutTimedout", + "message": "Failed to rollout to specified region." + } + } + } + } + } + ] + } + } + } +} diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/DefaultRollouts_CreateOrUpdate.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/DefaultRollouts_CreateOrUpdate.json new file mode 100644 index 000000000000..2ba747375a74 --- /dev/null +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/DefaultRollouts_CreateOrUpdate.json @@ -0,0 +1,167 @@ +{ + "parameters": { + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "providerNamespace": "Microsoft.Contoso", + "rolloutName": "2020week10", + "api-version": "2020-11-20", + "properties": { + "properties": { + "specification": { + "expeditedRollout": { + "enabled": true + }, + "canary": { + "skipRegions": [ + "eastus2euap" + ] + }, + "restOfTheWorldGroupTwo": { + "waitDuration": "PT4H" + } + } + } + } + }, + "responses": { + "201": { + "description": "Default rollout started successfully.", + "headers": { + "location": "https://management.azure.com/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77providers/Microsoft.ProviderHub/operationStauses/11111111-f7ef-471a-a2f4-d0ebbf494f77", + "retry-after": "5000" + }, + "body": { + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/defaultRollouts/2020week10", + "name": "Microsoft.Contoso/2020week10", + "type": "Microsoft.ProviderHub/providerRegistrations/defaultRollouts", + "properties": { + "provisioningState": "RolloutInProgress", + "specification": { + "canary": { + "regions": [ + "brazilus", + "eastus2euap", + "centraluseuap" + ], + "skipRegions": [ + "brazilus" + ] + }, + "lowTraffic": { + "regions": [ + "southeastasia" + ], + "waitDuration": "PT24H" + }, + "mediumTraffic": { + "regions": [ + "uksouth", + "indiawest" + ], + "waitDuration": "PT24H" + }, + "highTraffic": { + "regions": [ + "australiasoutheast", + "otherhightraficregions" + ], + "waitDuration": "PT24H" + }, + "restOfTheWorldGroupOne": { + "regions": [ + "koreacentral", + "francecentral", + "australiacentral", + "westus", + "allotherregions" + ], + "waitDuration": "PT4H" + }, + "restOfTheWorldGroupTwo": { + "regions": [ + "germanynorth", + "norwayeast", + "allotherregions" + ], + "waitDuration": "PT4H" + } + }, + "status": { + "completedRegions": [ + "brazilus", + "eastus2euap", + "centraluseuap" + ], + "nextTrafficRegion": "LowTraffic", + "nextTrafficRegionScheduledTime": "2020-03-03T22:00:00Z" + } + } + } + }, + "200": { + "description": "Default rollout updated successfully.", + "body": { + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/defaultRollouts/2020week10", + "name": "Microsoft.Contoso/2020week10", + "type": "Microsoft.ProviderHub/providerRegistrations/defaultRollouts", + "properties": { + "provisioningState": "RolloutInProgress", + "specification": { + "canary": { + "regions": [ + "brazilus", + "eastus2euap", + "centraluseuap" + ] + }, + "lowTraffic": { + "regions": [ + "southeastasia" + ], + "waitDuration": "PT24H" + }, + "mediumTraffic": { + "regions": [ + "uksouth", + "indiawest" + ], + "waitDuration": "PT24H" + }, + "highTraffic": { + "regions": [ + "australiasoutheast", + "otherhightraficregions" + ], + "waitDuration": "PT24H" + }, + "restOfTheWorldGroupOne": { + "regions": [ + "koreacentral", + "francecentral", + "australiacentral", + "westus", + "allotherregions" + ], + "waitDuration": "PT4H" + }, + "restOfTheWorldGroupTwo": { + "regions": [ + "germanynorth", + "norwayeast", + "allotherregions" + ], + "waitDuration": "PT4H" + } + }, + "status": { + "completedRegions": [ + "brazilus", + "eastus2euap", + "centraluseuap", + "allcompletedregions" + ] + } + } + } + } + } +} diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/DefaultRollouts_Delete.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/DefaultRollouts_Delete.json new file mode 100644 index 000000000000..dbc22177d810 --- /dev/null +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/DefaultRollouts_Delete.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "providerNamespace": "Microsoft.Contoso", + "rolloutName": "2020week10", + "api-version": "2021-05-01-preview" + }, + "responses": { + "200": { + "description": "Rollout deleted successfully." + }, + "204": { + "description": "No content." + } + } +} diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/DefaultRollouts_Get.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/DefaultRollouts_Get.json new file mode 100644 index 000000000000..ca65f54d71b2 --- /dev/null +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/DefaultRollouts_Get.json @@ -0,0 +1,180 @@ +{ + "parameters": { + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "providerNamespace": "Microsoft.Contoso", + "rolloutName": "2020week10", + "api-version": "2021-05-01-preview" + }, + "responses": { + "200": { + "description": "Default rollout resource.", + "body": { + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/defaultRollouts/2020week10", + "name": "Microsoft.Contoso/2020week10", + "type": "Microsoft.ProviderHub/providerRegistrations/defaultRollouts", + "properties": { + "provisioningState": "Cancelled", + "specification": { + "expeditedRollout": { + "enabled": true + }, + "canary": { + "regions": [ + "eastus2euap", + "centraluseuap" + ], + "skipRegions": [ + "brazilus" + ] + }, + "lowTraffic": { + "regions": [ + "southeastasia" + ], + "waitDuration": "PT24H" + }, + "mediumTraffic": { + "regions": [ + "uksouth", + "indiawest" + ], + "waitDuration": "PT24H" + }, + "highTraffic": { + "regions": [ + "australiasoutheast", + "otherhightraficregions" + ], + "waitDuration": "PT24H" + }, + "restOfTheWorldGroupOne": { + "regions": [ + "koreacentral", + "francecentral", + "australiacentral", + "westus", + "allotherregions" + ], + "waitDuration": "PT4H" + }, + "restOfTheWorldGroupTwo": { + "regions": [ + "germanynorth", + "norwayeast", + "allotherregions" + ], + "waitDuration": "PT4H" + }, + "providerRegistration": { + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso", + "name": "Microsoft.Contoso", + "type": "Microsoft.ProviderHub/providerRegistrations", + "properties": { + "providerHubMetadata": { + "providerAuthentication": { + "allowedAudiences": [ + "https://management.core.windows.net/" + ] + } + }, + "provisioningState": "Succeeded", + "providerAuthorizations": [ + { + "applicationId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k1", + "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b2" + } + ], + "namespace": "microsoft.contoso", + "providerVersion": "2.0", + "providerType": "Internal, Hidden", + "management": { + "manifestOwners": [ + "SPARTA-PlatformServiceAdministrator" + ], + "incidentRoutingService": "", + "incidentRoutingTeam": "", + "incidentContactEmail": "helpme@contoso.com", + "resourceAccessPolicy": "NotSpecified" + }, + "capabilities": [ + { + "quotaId": "CSP_2015-05-01", + "effect": "Allow" + }, + { + "quotaId": "CSP_MG_2017-12-01", + "effect": "Allow" + } + ], + "metadata": null + } + }, + "resourceTypeRegistrations": [ + { + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourceTypeRegistrations/employees", + "name": "Microsoft.Contoso/employees", + "type": "Microsoft.ProviderHub/providerRegistrations/resourceTypeRegistrations", + "properties": { + "routingType": "Default", + "regionality": "Regional", + "endpoints": [ + { + "apiVersions": [ + "2018-11-01-preview", + "2020-01-01-preview", + "2019-01-01" + ], + "locations": [ + "East Asia", + "East US", + "North Europe", + "Southeast Asia", + "East US 2 EUAP", + "Central US EUAP", + "West Europe", + "West US", + "West Central US", + "West US 2" + ], + "requiredFeatures": [ + "Microsoft.Contoso/RPaaSSampleApp" + ] + } + ], + "swaggerSpecifications": [ + { + "apiVersions": [ + "2018-11-01-preview", + "2020-01-01-preview", + "2019-01-01" + ], + "swaggerSpecFolderUri": "https://github.com/Azure/azure-rest-api-specs/blob/feature/azure/contoso/specification/contoso/resource-manager/Microsoft.SampleRP/" + } + ], + "enableAsyncOperation": false, + "provisioningState": "Succeeded", + "enableThirdPartyS2S": false + } + } + ] + }, + "status": { + "completedRegions": [ + "brazilus", + "eastus2euap", + "centraluseuap", + "allcompletedregions" + ], + "failedOrSkippedRegions": { + "westus2": { + "code": "RolloutStoppedByUser", + "message": "Rollout was explicitly stopped by the user." + } + }, + "subscriptionReregistrationResult": "ConditionalUpdate" + } + } + } + } + } +} diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/DefaultRollouts_ListByProviderRegistration.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/DefaultRollouts_ListByProviderRegistration.json new file mode 100644 index 000000000000..3c088345a7c2 --- /dev/null +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/DefaultRollouts_ListByProviderRegistration.json @@ -0,0 +1,151 @@ +{ + "parameters": { + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "providerNamespace": "Microsoft.Contoso", + "api-version": "2021-05-01-preview" + }, + "responses": { + "200": { + "description": "List of default rollouts for given subscription id.", + "body": { + "value": [ + { + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/defaultRollouts/2020week01", + "name": "Microsoft.Contoso/2020week01", + "type": "Microsoft.ProviderHub/providerRegistrations/defaultRollouts", + "properties": { + "provisioningState": "Succeeded", + "specification": { + "expeditedRollout": { + "enabled": true + }, + "canary": { + "regions": [ + "brazilus", + "eastus2euap", + "centraluseuap" + ] + }, + "lowTraffic": { + "regions": [ + "southeastasia" + ], + "waitDuration": "PT24H" + }, + "mediumTraffic": { + "regions": [ + "uksouth", + "indiawest" + ], + "waitDuration": "PT24H" + }, + "highTraffic": { + "regions": [ + "australiasoutheast", + "otherhightraficregions" + ], + "waitDuration": "PT24H" + }, + "restOfTheWorldGroupOne": { + "regions": [ + "koreacentral", + "francecentral", + "australiacentral", + "westus", + "allotherregions" + ], + "waitDuration": "PT4H" + }, + "restOfTheWorldGroupTwo": { + "regions": [ + "germanynorth", + "norwayeast", + "allotherregions" + ], + "waitDuration": "PT4H" + } + }, + "status": { + "completedRegions": [ + "brazilus", + "eastus2euap", + "centraluseuap", + "allcompletedregions" + ] + } + } + }, + { + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/defaultRollouts/2020week10", + "name": "Microsoft.Contoso/2020week10", + "type": "Microsoft.ProviderHub/providerRegistrations/defaultRollouts", + "properties": { + "provisioningState": "Cancelled", + "specification": { + "canary": { + "regions": [ + "brazilus", + "eastus2euap", + "centraluseuap" + ] + }, + "lowTraffic": { + "regions": [ + "southeastasia" + ], + "waitDuration": "PT24H" + }, + "mediumTraffic": { + "regions": [ + "uksouth", + "indiawest" + ], + "waitDuration": "PT24H" + }, + "highTraffic": { + "regions": [ + "australiasoutheast", + "otherhightraficregions" + ], + "waitDuration": "PT24H" + }, + "restOfTheWorldGroupOne": { + "regions": [ + "koreacentral", + "francecentral", + "australiacentral", + "westus", + "allotherregions" + ], + "waitDuration": "PT4H" + }, + "restOfTheWorldGroupTwo": { + "regions": [ + "germanynorth", + "norwayeast", + "allotherregions" + ], + "waitDuration": "PT4H" + } + }, + "status": { + "completedRegions": [ + "brazilus", + "eastus2euap", + "centraluseuap", + "allcompletedregions" + ], + "failedOrSkippedRegions": { + "westus2": { + "code": "RolloutStoppedByUser", + "message": "Rollout was explicitly stopped by the user." + } + } + } + } + } + ] + } + } + } +} diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/DefaultRollouts_Stop.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/DefaultRollouts_Stop.json new file mode 100644 index 000000000000..5012b95a2be9 --- /dev/null +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/DefaultRollouts_Stop.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "providerNamespace": "Microsoft.Contoso", + "rolloutName": "2020week10", + "api-version": "2021-05-01-preview" + }, + "responses": { + "200": { + "description": "The rollout is stopped successfully." + } + } +} diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/GenerateManifest.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/GenerateManifest.json new file mode 100644 index 000000000000..9f67ac4944cc --- /dev/null +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/GenerateManifest.json @@ -0,0 +1,96 @@ +{ + "parameters": { + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "providerNamespace": "Microsoft.Contoso", + "api-version": "2021-05-01-preview" + }, + "responses": { + "200": { + "description": "Generates the manifest for the given provider.", + "body": { + "providerAuthorizations": [ + { + "applicationId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k1", + "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b2" + } + ], + "namespace": "microsoft.contoso", + "providerVersion": "2.0", + "providerType": "Internal, Hidden", + "resourceTypes": [ + { + "name": "Operations", + "routingType": "ProxyOnly, Tenant", + "resourceValidation": "ReservedWords, ProfaneWords", + "allowedUnauthorizedActions": [ + "microsoft.contoso/operations/read" + ], + "endpoints": [ + { + "apiVersions": [ + "2020-01-01-preview" + ], + "endpointUri": "https://resource-endpoint.com/", + "locations": [ + "" + ], + "timeout": "PT20S" + } + ], + "linkedOperationRules": [] + }, + { + "name": "Locations", + "routingType": "ProxyOnly", + "resourceValidation": "ReservedWords, ProfaneWords", + "endpoints": [ + { + "apiVersions": [ + "2020-01-01-preview" + ], + "endpointUri": "https://resource-endpoint.com/", + "locations": [ + "" + ], + "timeout": "PT20S" + } + ], + "linkedOperationRules": [] + } + ], + "management": { + "manifestOwners": [ + "manifestOwners-group" + ], + "incidentRoutingService": "", + "incidentRoutingTeam": "", + "incidentContactEmail": "helpme@contoso.com", + "resourceAccessPolicy": "NotSpecified" + }, + "capabilities": [ + { + "quotaId": "CSP_2015-05-01", + "effect": "Allow" + }, + { + "quotaId": "CSP_MG_2017-12-01", + "effect": "Allow" + } + ], + "metadata": { + "onboardedVia": "ProviderHub" + }, + "globalNotificationEndpoints": [ + { + "enabled": true, + "endpointUri": "https://notificationendpoint.com" + } + ], + "reRegisterSubscriptionMetadata": { + "enabled": true, + "concurrencyLimit": 100 + } + } + } + } +} diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/NotificationRegistrations_CreateOrUpdate.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/NotificationRegistrations_CreateOrUpdate.json new file mode 100644 index 000000000000..69e9b17a21cf --- /dev/null +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/NotificationRegistrations_CreateOrUpdate.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "providerNamespace": "Microsoft.Contoso", + "api-version": "2021-05-01-preview", + "notificationRegistrationName": "fooNotificationRegistration", + "properties": { + "properties": { + "notificationMode": "EventHub", + "messageScope": "RegisteredSubscriptions", + "includedEvents": [ + "*/write", + "Microsoft.Contoso/employees/delete" + ], + "notificationEndpoints": [ + { + "locations": [ + "", + "East US" + ], + "notificationDestination": "/subscriptions/ac6bcfb5-3dc1-491f-95a6-646b89bf3e88/resourceGroups/mgmtexp-eastus/providers/Microsoft.EventHub/namespaces/unitedstates-mgmtexpint/eventhubs/armlinkednotifications" + }, + { + "locations": [ + "North Europe" + ], + "notificationDestination": "/subscriptions/ac6bcfb5-3dc1-491f-95a6-646b89bf3e88/resourceGroups/mgmtexp-northeurope/providers/Microsoft.EventHub/namespaces/europe-mgmtexpint/eventhubs/armlinkednotifications" + } + ] + } + } + }, + "responses": { + "200": { + "description": "Gets the notification registration details.", + "body": { + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/notificationregistrations/fooNotificationRegistration", + "type": "Microsoft.ProviderHub/providerRegistrations/notificationregistrations", + "name": "fooNotificationRegistration", + "properties": { + "notificationMode": "EventHub", + "messageScope": "RegisteredSubscriptions", + "includedEvents": [ + "*/write", + "Microsoft.Contoso/employees/delete" + ], + "notificationEndpoints": [ + { + "locations": [ + "", + "East US" + ], + "notificationDestination": "/subscriptions/ac6bcfb5-3dc1-491f-95a6-646b89bf3e88/resourceGroups/mgmtexp-eastus/providers/Microsoft.EventHub/namespaces/unitedstates-mgmtexpint/eventhubs/armlinkednotifications" + }, + { + "locations": [ + "North Europe" + ], + "notificationDestination": "/subscriptions/ac6bcfb5-3dc1-491f-95a6-646b89bf3e88/resourceGroups/mgmtexp-northeurope/providers/Microsoft.EventHub/namespaces/europe-mgmtexpint/eventhubs/armlinkednotifications" + } + ] + } + } + } + } +} diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/NotificationRegistrations_Delete.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/NotificationRegistrations_Delete.json new file mode 100644 index 000000000000..2ff16b6bde80 --- /dev/null +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/NotificationRegistrations_Delete.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "providerNamespace": "Microsoft.Contoso", + "api-version": "2021-05-01-preview", + "notificationRegistrationName": "fooNotificationRegistration" + }, + "responses": { + "200": { + "description": "Successfully deleted the notification registration." + }, + "204": { + "description": "Resource does not exist." + } + } +} diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/NotificationRegistrations_Get.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/NotificationRegistrations_Get.json new file mode 100644 index 000000000000..6679ae495160 --- /dev/null +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/NotificationRegistrations_Get.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "providerNamespace": "Microsoft.Contoso", + "api-version": "2021-05-01-preview", + "notificationRegistrationName": "fooNotificationRegistration" + }, + "responses": { + "200": { + "description": "Gets the notification registration details.", + "body": { + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/notificationregistrations/fooNotificationRegistration", + "type": "Microsoft.ProviderHub/providerRegistrations/notificationregistrations", + "name": "fooNotificationRegistration", + "properties": { + "notificationMode": "EventHub", + "messageScope": "RegisteredSubscriptions", + "includedEvents": [ + "*/write", + "Microsoft.Contoso/employees/delete" + ], + "notificationEndpoints": [ + { + "notificationDestination": "/subscriptions/ac6bcfb5-3dc1-491f-95a6-646b89bf3e88/resourceGroups/mgmtexp-eastus/providers/Microsoft.EventHub/namespaces/unitedstates-mgmtexpint/eventhubs/armlinkednotifications", + "locations": [ + "", + "East US" + ] + }, + { + "notificationDestination": "/subscriptions/ac6bcfb5-3dc1-491f-95a6-646b89bf3e88/resourceGroups/mgmtexp-northeurope/providers/Microsoft.EventHub/namespaces/europe-mgmtexpint/eventhubs/armlinkednotifications", + "locations": [ + "North Europe" + ] + } + ] + } + } + } + } +} diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/NotificationRegistrations_ListByProviderRegistration.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/NotificationRegistrations_ListByProviderRegistration.json new file mode 100644 index 000000000000..16b11af9b8a3 --- /dev/null +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/NotificationRegistrations_ListByProviderRegistration.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "providerNamespace": "Microsoft.Contoso", + "api-version": "2021-05-01-preview" + }, + "responses": { + "200": { + "description": "Gets the list of the notification registrations for the given provider.", + "body": { + "value": [ + { + "name": "fooNotificationRegistration", + "properties": { + "notificationMode": "EventHub", + "messageScope": "RegisteredSubscriptions", + "includedEvents": [ + "*/write", + "Microsoft.Contoso/employees/delete" + ], + "notificationEndpoints": [ + { + "notificationDestination": "/subscriptions/ac6bcfb5-3dc1-491f-95a6-646b89bf3e88/resourceGroups/mgmtexp-eastus/providers/Microsoft.EventHub/namespaces/unitedstates-mgmtexpint/eventhubs/armlinkednotifications", + "locations": [ + "", + "East US" + ] + }, + { + "notificationDestination": "/subscriptions/ac6bcfb5-3dc1-491f-95a6-646b89bf3e88/resourceGroups/mgmtexp-northeurope/providers/Microsoft.EventHub/namespaces/europe-mgmtexpint/eventhubs/armlinkednotifications", + "locations": [ + "North Europe" + ] + } + ] + } + }, + { + "name": "barNotificationRegistration", + "properties": { + "notificationMode": "EventHub", + "messageScope": "RegisteredSubscriptions", + "includedEvents": [ + "*/delete" + ], + "notificationEndpoints": [ + { + "notificationDestination": "/subscriptions/ac6bcfb5-3dc1-491f-95a6-646b89bf3e88/resourceGroups/mgmtexp-eastus/providers/Microsoft.EventHub/namespaces/unitedstates-mgmtexpint/eventhubs/armlinkednotifications", + "locations": [ + "" + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Operations_CreateOrUpdate.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Operations_CreateOrUpdate.json new file mode 100644 index 000000000000..f9076423514b --- /dev/null +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Operations_CreateOrUpdate.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "providerNamespace": "Microsoft.Contoso", + "api-version": "2021-05-01-preview", + "OperationsPutContent": { + "contents": [ + { + "name": "Microsoft.Contoso/Employees/Read", + "display": { + "provider": "Microsoft.Contoso", + "resource": "Employees", + "operation": "Gets/List employee resources", + "description": "Read employees" + } + } + ] + } + }, + "responses": { + "200": { + "body": { + "properties": { + "name": "Microsoft.Contoso/Employees/Read", + "display": { + "provider": "Microsoft.Contoso", + "resource": "Employees", + "operation": "Gets/List employee resources", + "description": "Read employees" + } + } + } + } + } +} diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Operations_Delete.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Operations_Delete.json new file mode 100644 index 000000000000..0daf36032750 --- /dev/null +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Operations_Delete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "providerNamespace": "Microsoft.Contoso", + "api-version": "2021-05-01-preview" + }, + "responses": { + "200": { + "description": "Successfully deleted the operation." + }, + "204": { + "description": "Resource does not exist." + } + } +} diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Operations_List.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Operations_List.json new file mode 100644 index 000000000000..cd812ad97b96 --- /dev/null +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Operations_List.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "api-version": "2021-05-01-preview" + }, + "responses": { + "200": { + "description": "The list of supported operations has been fetched successfully.", + "body": { + "value": [ + { + "name": "Microsoft.ProviderHub/register/action", + "isDataAction": false, + "display": { + "provider": "Microsoft ProviderHub", + "resource": "register", + "operation": "Register for Microsoft.ProviderHub", + "description": "Registers the specified subscription with Microsoft.ProviderHub resource provider" + } + }, + { + "name": "Microsoft.ProviderHub/defaultRollouts/write", + "isDataAction": false, + "display": { + "provider": "Microsoft ProviderHub", + "resource": "defaultRollouts", + "operation": "Create or Update rollout", + "description": "Creates or Updates any rollout" + } + }, + { + "name": "Microsoft.ProviderHub/defaultRollouts/read", + "isDataAction": false, + "display": { + "provider": "Microsoft ProviderHub", + "resource": "defaultRollouts", + "operation": "Read rollout", + "description": "Reads any rollout" + } + }, + { + "name": "Microsoft.ProviderHub/defaultRollouts/delete", + "isDataAction": false, + "display": { + "provider": "Microsoft ProviderHub", + "resource": "defaultRollouts", + "operation": "Delete rollout", + "description": "Deletes any rollout" + } + }, + { + "name": "Microsoft.ProviderHub/defaultRollouts/stop/action", + "isDataAction": false, + "display": { + "provider": "Microsoft ProviderHub", + "resource": "defaultRollouts", + "operation": "Delete rollout", + "description": "Deletes any rollout" + } + }, + { + "name": "Microsoft.ProviderHub/customRollouts/write", + "isDataAction": false, + "display": { + "provider": "Microsoft ProviderHub", + "resource": "customRollouts", + "operation": "Create or Update rollout", + "description": "Creates or Updates any rollout" + } + }, + { + "name": "Microsoft.ProviderHub/customRollouts/read", + "isDataAction": false, + "display": { + "provider": "Microsoft ProviderHub", + "resource": "customRollouts", + "operation": "Read rollout", + "description": "Reads any rollout" + } + } + ] + } + } + } +} diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Operations_ListByProviderRegistration.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Operations_ListByProviderRegistration.json new file mode 100644 index 000000000000..69386be25d78 --- /dev/null +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Operations_ListByProviderRegistration.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "providerNamespace": "Microsoft.Contoso", + "api-version": "2021-05-01-preview" + }, + "responses": { + "200": { + "description": "Gets the operations supported by the given provider.", + "body": [ + { + "name": "Microsoft.Contoso/Employees/Read", + "isDataAction": false, + "display": { + "provider": "Microsoft.Contoso", + "resource": "Employees", + "operation": "Gets/List employee resources", + "description": "Read employees" + }, + "properties": null + }, + { + "name": "Microsoft.Contoso/Employees/Write", + "isDataAction": false, + "display": { + "provider": "Microsoft.Contoso", + "resource": "Employees", + "operation": "Create/update employee resources", + "description": "Writes employees" + }, + "properties": null + }, + { + "name": "Microsoft.Contoso/Employees/Delete", + "isDataAction": false, + "origin": "User", + "display": { + "provider": "Microsoft.Contoso", + "resource": "Employees", + "operation": "Deletes employee resource", + "description": "Deletes employees" + }, + "properties": null + }, + { + "name": "Microsoft.Contoso/Employees/Action", + "isDataAction": true, + "origin": "System", + "display": { + "provider": "Microsoft.Contoso", + "resource": "Employees", + "operation": "Create/update employee resources", + "description": "Writes employees" + }, + "properties": null + } + ] + } + } +} diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/ProviderRegistrations_CreateOrUpdate.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/ProviderRegistrations_CreateOrUpdate.json new file mode 100644 index 000000000000..f69184a5abf0 --- /dev/null +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/ProviderRegistrations_CreateOrUpdate.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "providerNamespace": "Microsoft.Contoso", + "api-version": "2021-05-01-preview", + "properties": { + "properties": { + "providerType": "Internal", + "providerVersion": "2.0", + "management": { + "incidentRoutingService": "Contoso Resource Provider", + "incidentRoutingTeam": "Contoso Triage", + "incidentContactEmail": "helpme@contoso.com" + }, + "capabilities": [ + { + "quotaId": "CSP_2015-05-01", + "effect": "Allow" + }, + { + "quotaId": "CSP_MG_2017-12-01", + "effect": "Allow" + } + ] + } + } + }, + "responses": { + "200": { + "description": "", + "body": { + "properties": { + "namespace": "Microsoft.Contoso", + "providerAuthorizations": [ + { + "applicationId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k1", + "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b2" + } + ], + "management": { + "manifestOwners": [ + "manifestOwners-group" + ], + "incidentRoutingService": "", + "incidentRoutingTeam": "", + "incidentContactEmail": "helpme@contoso.com", + "resourceAccessPolicy": "NotSpecified" + }, + "capabilities": [ + { + "quotaId": "CSP_2015-05-01", + "effect": "Allow" + }, + { + "quotaId": "CSP_MG_2017-12-01", + "effect": "Allow" + } + ], + "metadata": { + "onboardedVia": "ProviderHub" + }, + "providerVersion": "2.0", + "providerType": "Internal, Hidden", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "description": "Successfully created the provider registration." + } + } +} diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/ProviderRegistrations_Delete.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/ProviderRegistrations_Delete.json new file mode 100644 index 000000000000..83300ba46e73 --- /dev/null +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/ProviderRegistrations_Delete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "providerNamespace": "Microsoft.Contoso", + "api-version": "2021-05-01-preview" + }, + "responses": { + "200": { + "description": "Successfully deleted the provider registration." + }, + "204": { + "description": "Resource does not exist." + } + } +} diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/ProviderRegistrations_GenerateOperations.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/ProviderRegistrations_GenerateOperations.json new file mode 100644 index 000000000000..a6ed008eda7c --- /dev/null +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/ProviderRegistrations_GenerateOperations.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "providerNamespace": "Microsoft.Contoso", + "api-version": "2021-05-01-preview" + }, + "responses": { + "200": { + "description": "", + "body": [ + { + "name": "Microsoft.Contoso/Employees/Read", + "isDataAction": false, + "display": { + "provider": "Microsoft.Contoso", + "resource": "Employees", + "operation": "Gets/List employee resources", + "description": "Read employees" + }, + "properties": null + }, + { + "name": "Microsoft.Contoso/Employees/Write", + "isDataAction": false, + "display": { + "provider": "Microsoft.Contoso", + "resource": "Employees", + "operation": "Create/update employee resources", + "description": "Writes employees" + }, + "properties": null + }, + { + "name": "Microsoft.Contoso/Employees/Delete", + "isDataAction": false, + "origin": "User", + "display": { + "provider": "Microsoft.Contoso", + "resource": "Employees", + "operation": "Deletes employee resource", + "description": "Deletes employees" + }, + "properties": null + }, + { + "name": "Microsoft.Contoso/Employees/Action", + "isDataAction": true, + "origin": "System", + "display": { + "provider": "Microsoft.Contoso", + "resource": "Employees", + "operation": "Create/update employee resources", + "description": "Writes employees" + }, + "properties": null + } + ] + } + } +} diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/ProviderRegistrations_Get.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/ProviderRegistrations_Get.json new file mode 100644 index 000000000000..e9fb12301c7c --- /dev/null +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/ProviderRegistrations_Get.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "providerNamespace": "Microsoft.Contoso", + "api-version": "2021-05-01-preview" + }, + "responses": { + "200": { + "description": "", + "body": { + "properties": { + "providerHubMetadata": { + "providerAuthentication": { + "allowedAudiences": [ + "https://management.core.windows.net/" + ] + } + }, + "provisioningState": "Succeeded", + "providerAuthorizations": [ + { + "applicationId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k1", + "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b2" + } + ], + "namespace": "microsoft.contoso", + "providerVersion": "2.0", + "providerType": "Internal, Hidden", + "management": { + "manifestOwners": [ + "SPARTA-PlatformServiceAdministrator" + ], + "incidentRoutingService": "", + "incidentRoutingTeam": "", + "incidentContactEmail": "helpme@contoso.com", + "resourceAccessPolicy": "NotSpecified" + }, + "capabilities": [ + { + "quotaId": "CSP_2015-05-01", + "effect": "Allow" + }, + { + "quotaId": "CSP_MG_2017-12-01", + "effect": "Allow" + } + ], + "metadata": null + } + } + } + } +} diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/ProviderRegistrations_List.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/ProviderRegistrations_List.json new file mode 100644 index 000000000000..3f2f6cb2c3ea --- /dev/null +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/ProviderRegistrations_List.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "providerNamespace": "Microsoft.Contoso", + "api-version": "2021-05-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "namespace": "microsoft.contoso", + "providerAuthorizations": [ + { + "applicationId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k1", + "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b2" + } + ], + "providerHubMetadata": { + "providerAuthentication": { + "allowedAudiences": [ + "https://management.core.windows.net/" + ] + } + }, + "management": { + "manifestOwners": [ + "manifestOwners-group" + ], + "incidentRoutingService": "", + "incidentRoutingTeam": "", + "incidentContactEmail": "helpme@contoso.com", + "resourceAccessPolicy": "NotSpecified" + }, + "providerType": "Internal, Hidden", + "providerVersion": "2.0", + "capabilities": [ + { + "quotaId": "CSP_2015-05-01", + "effect": "Allow" + }, + { + "quotaId": "CSP_MG_2017-12-01", + "effect": "Allow" + } + ], + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/ResourceTypeRegistrations_CreateOrUpdate.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/ResourceTypeRegistrations_CreateOrUpdate.json new file mode 100644 index 000000000000..2d689f20a92b --- /dev/null +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/ResourceTypeRegistrations_CreateOrUpdate.json @@ -0,0 +1,206 @@ +{ + "parameters": { + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "providerNamespace": "Microsoft.Contoso", + "resourceType": "employees", + "api-version": "2021-05-01-preview", + "properties": { + "properties": { + "routingType": "Default", + "regionality": "Regional", + "endpoints": [ + { + "apiVersions": [ + "2020-06-01-preview" + ], + "locations": [ + "West US", + "East US", + "North Europe" + ], + "requiredFeatures": [ + "" + ] + } + ], + "resourceConcurrencyControlOptions": { + "put": { + "policy": "SynchronizeBeginExtension" + }, + "patch": { + "policy": "SynchronizeBeginExtension" + }, + "post": { + "policy": "SynchronizeBeginExtension" + } + }, + "swaggerSpecifications": [ + { + "apiVersions": [ + "2020-06-01-preview" + ], + "swaggerSpecFolderUri": "https://github.com/Azure/azure-rest-api-specs/blob/feature/azure/contoso/specification/contoso/resource-manager/Microsoft.SampleRP/" + } + ], + "resourceGraphConfiguration": { + "enabled": true, + "apiVersion": "2019-01-01" + }, + "management": { + "manifestOwners": [ + "SPARTA-PlatformServiceAdministrator" + ], + "incidentRoutingService": "", + "incidentRoutingTeam": "", + "incidentContactEmail": "helpme@contoso.com", + "resourceAccessPolicy": "NotSpecified" + } + } + } + }, + "responses": { + "200": { + "description": "Successfully updated the resource type.", + "body": { + "properties": { + "routingType": "Default", + "regionality": "Regional", + "endpoints": [ + { + "apiVersions": [ + "2018-11-01-preview", + "2020-01-01-preview", + "2019-01-01" + ], + "locations": [ + "East Asia", + "East US", + "North Europe", + "Southeast Asia", + "East US 2 EUAP", + "Central US EUAP", + "West Europe", + "West US", + "West Central US", + "West US 2" + ], + "requiredFeatures": [ + "Microsoft.Contoso/RPaaSSampleApp" + ] + } + ], + "swaggerSpecifications": [ + { + "apiVersions": [ + "2018-11-01-preview", + "2020-01-01-preview", + "2019-01-01" + ], + "swaggerSpecFolderUri": "https://github.com/Azure/azure-rest-api-specs/blob/feature/azure/contoso/specification/contoso/resource-manager/Microsoft.SampleRP/" + } + ], + "enableAsyncOperation": false, + "provisioningState": "Succeeded", + "enableThirdPartyS2S": false, + "resourceDeletionPolicy": "CascadeDeleteProxyOnlyChildren", + "resourceConcurrencyControlOptions": { + "put": { + "policy": "SynchronizeBeginExtension" + }, + "patch": { + "policy": "SynchronizeBeginExtension" + }, + "post": { + "policy": "SynchronizeBeginExtension" + } + }, + "resourceGraphConfiguration": { + "enabled": true, + "apiVersion": "2019-01-01" + }, + "management": { + "manifestOwners": [ + "SPARTA-PlatformServiceAdministrator" + ], + "incidentRoutingService": "", + "incidentRoutingTeam": "", + "incidentContactEmail": "helpme@contoso.com", + "resourceAccessPolicy": "NotSpecified" + } + }, + "name": "employees" + } + }, + "201": { + "description": "Successfully created the resource type.", + "body": { + "properties": { + "routingType": "Default", + "regionality": "Regional", + "endpoints": [ + { + "apiVersions": [ + "2018-11-01-preview", + "2020-01-01-preview", + "2019-01-01" + ], + "locations": [ + "East Asia", + "East US", + "North Europe", + "Southeast Asia", + "East US 2 EUAP", + "Central US EUAP", + "West Europe", + "West US", + "West Central US", + "West US 2" + ], + "requiredFeatures": [ + "Microsoft.Contoso/RPaaSSampleApp" + ] + } + ], + "swaggerSpecifications": [ + { + "apiVersions": [ + "2018-11-01-preview", + "2020-01-01-preview", + "2019-01-01" + ], + "swaggerSpecFolderUri": "https://github.com/Azure/azure-rest-api-specs/blob/feature/azure/contoso/specification/contoso/resource-manager/Microsoft.SampleRP/" + } + ], + "enableAsyncOperation": false, + "provisioningState": "Succeeded", + "enableThirdPartyS2S": false, + "resourceConcurrencyControlOptions": { + "put": { + "policy": "SynchronizeBeginExtension" + }, + "patch": { + "policy": "SynchronizeBeginExtension" + }, + "post": { + "policy": "SynchronizeBeginExtension" + } + }, + "resourceGraphConfiguration": { + "enabled": true, + "apiVersion": "2019-01-01" + }, + "management": { + "manifestOwners": [ + "SPARTA-PlatformServiceAdministrator" + ], + "incidentRoutingService": "", + "incidentRoutingTeam": "", + "incidentContactEmail": "helpme@contoso.com", + "resourceAccessPolicy": "NotSpecified" + } + }, + "name": "employees" + } + } + } +} diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/ResourceTypeRegistrations_Delete.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/ResourceTypeRegistrations_Delete.json new file mode 100644 index 000000000000..eb4f4514e16a --- /dev/null +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/ResourceTypeRegistrations_Delete.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "providerNamespace": "Microsoft.Contoso", + "api-version": "2021-05-01-preview", + "resourceType": "testResourceType" + }, + "responses": { + "200": { + "description": "Successfully deleted the resource type." + }, + "204": { + "description": "Resource does not exist." + } + } +} diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/ResourceTypeRegistrations_Get.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/ResourceTypeRegistrations_Get.json new file mode 100644 index 000000000000..609af745b1ee --- /dev/null +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/ResourceTypeRegistrations_Get.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "providerNamespace": "Microsoft.Contoso", + "resourceType": "employees", + "api-version": "2021-05-01-preview" + }, + "responses": { + "200": { + "description": "", + "body": { + "properties": { + "routingType": "Default", + "regionality": "Regional", + "endpoints": [ + { + "apiVersions": [ + "2018-11-01-preview", + "2020-01-01-preview", + "2019-01-01" + ], + "locations": [ + "East Asia", + "East US", + "North Europe", + "Southeast Asia", + "East US 2 EUAP", + "Central US EUAP", + "West Europe", + "West US", + "West Central US", + "West US 2" + ], + "requiredFeatures": [ + "Microsoft.Contoso/RPaaSSampleApp" + ] + } + ], + "swaggerSpecifications": [ + { + "apiVersions": [ + "2018-11-01-preview", + "2020-01-01-preview", + "2019-01-01" + ], + "swaggerSpecFolderUri": "https://github.com/Azure/azure-rest-api-specs/blob/feature/azure/contoso/specification/contoso/resource-manager/Microsoft.SampleRP/" + } + ], + "enableAsyncOperation": false, + "provisioningState": "Succeeded", + "enableThirdPartyS2S": false, + "resourceConcurrencyControlOptions": { + "put": { + "policy": "SynchronizeBeginExtension" + }, + "patch": { + "policy": "SynchronizeBeginExtension" + }, + "post": { + "policy": "SynchronizeBeginExtension" + } + }, + "resourceGraphConfiguration": { + "enabled": true, + "apiVersion": "2019-01-01" + }, + "management": { + "manifestOwners": [ + "SPARTA-PlatformServiceAdministrator" + ], + "incidentRoutingService": "", + "incidentRoutingTeam": "", + "incidentContactEmail": "helpme@contoso.com", + "resourceAccessPolicy": "NotSpecified" + } + }, + "name": "employees" + } + } + } +} diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/ResourceTypeRegistrations_ListByProviderRegistration.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/ResourceTypeRegistrations_ListByProviderRegistration.json new file mode 100644 index 000000000000..9e19addc730e --- /dev/null +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/ResourceTypeRegistrations_ListByProviderRegistration.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "providerNamespace": "Microsoft.Contoso", + "api-version": "2021-05-01-preview" + }, + "responses": { + "200": { + "description": "", + "body": { + "value": [ + { + "properties": { + "routingType": "Default", + "regionality": "Regional", + "endpoints": [ + { + "apiVersions": [ + "2018-11-01-preview", + "2020-01-01-preview", + "2019-01-01" + ], + "locations": [ + "East Asia", + "East US", + "North Europe", + "Southeast Asia", + "East US 2 EUAP", + "Central US EUAP", + "West Europe", + "West US", + "West Central US", + "West US 2" + ], + "requiredFeatures": [ + "Microsoft.Contoso/RPaaSSampleApp" + ] + } + ], + "swaggerSpecifications": [ + { + "apiVersions": [ + "2018-11-01-preview", + "2020-01-01-preview", + "2019-01-01" + ], + "swaggerSpecFolderUri": "https://github.com/Azure/azure-rest-api-specs/blob/feature/azure/contoso/specification/contoso/resource-manager/Microsoft.SampleRP/" + } + ], + "enableAsyncOperation": false, + "provisioningState": "Succeeded", + "enableThirdPartyS2S": false, + "resourceConcurrencyControlOptions": { + "put": { + "policy": "SynchronizeBeginExtension" + }, + "patch": { + "policy": "SynchronizeBeginExtension" + }, + "post": { + "policy": "SynchronizeBeginExtension" + } + }, + "resourceGraphConfiguration": { + "enabled": true, + "apiVersion": "2019-01-01" + }, + "management": { + "manifestOwners": [ + "SPARTA-PlatformServiceAdministrator" + ], + "incidentRoutingService": "", + "incidentRoutingTeam": "", + "incidentContactEmail": "helpme@contoso.com", + "resourceAccessPolicy": "NotSpecified" + } + }, + "name": "employees" + } + ] + } + } + } +} diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Skus_CreateOrUpdate.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Skus_CreateOrUpdate.json new file mode 100644 index 000000000000..533c9cb6f3a5 --- /dev/null +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Skus_CreateOrUpdate.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "providerNamespace": "Microsoft.Contoso", + "api-version": "2021-05-01-preview", + "resourceType": "testResourceType", + "sku": "testSku", + "properties": { + "skuSettings": [ + { + "name": "freeSku", + "tier": "Tier1", + "kind": "Standard" + }, + { + "name": "premiumSku", + "tier": "Tier2", + "kind": "Premium", + "costs": [ + { + "meterId": "xxx" + } + ] + } + ] + } + }, + "responses": { + "200": { + "description": "", + "body": { + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/", + "name": "Microsoft.Contoso/", + "type": "Microsoft.ProviderHub/providerRegistrations/" + } + } + } +} diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Skus_CreateOrUpdateNestedResourceTypeFirst.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Skus_CreateOrUpdateNestedResourceTypeFirst.json new file mode 100644 index 000000000000..5d7547cc8635 --- /dev/null +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Skus_CreateOrUpdateNestedResourceTypeFirst.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "providerNamespace": "Microsoft.Contoso", + "api-version": "2021-05-01-preview", + "resourceType": "testResourceType", + "sku": "testSku", + "nestedResourceTypeFirst": "nestedResourceTypeFirst", + "properties": { + "skuSettings": [ + { + "name": "freeSku", + "tier": "Tier1", + "kind": "Standard" + }, + { + "name": "premiumSku", + "tier": "Tier2", + "kind": "Premium", + "costs": [ + { + "meterId": "xxx" + } + ] + } + ] + } + }, + "responses": { + "200": { + "description": "", + "body": { + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/", + "name": "Microsoft.Contoso/", + "type": "Microsoft.ProviderHub/providerRegistrations/" + } + } + } +} diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Skus_CreateOrUpdateNestedResourceTypeSecond.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Skus_CreateOrUpdateNestedResourceTypeSecond.json new file mode 100644 index 000000000000..b9cf4a378af2 --- /dev/null +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Skus_CreateOrUpdateNestedResourceTypeSecond.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "providerNamespace": "Microsoft.Contoso", + "api-version": "2021-05-01-preview", + "resourceType": "testResourceType", + "sku": "testSku", + "nestedResourceTypeFirst": "nestedResourceTypeFirst", + "nestedResourceTypeSecond": "nestedResourceTypeSecond", + "properties": { + "skuSettings": [ + { + "name": "freeSku", + "tier": "Tier1", + "kind": "Standard" + }, + { + "name": "premiumSku", + "tier": "Tier2", + "kind": "Premium", + "costs": [ + { + "meterId": "xxx" + } + ] + } + ] + } + }, + "responses": { + "200": { + "description": "", + "body": { + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/", + "name": "Microsoft.Contoso/", + "type": "Microsoft.ProviderHub/providerRegistrations/" + } + } + } +} diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Skus_CreateOrUpdateNestedResourceTypeThird.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Skus_CreateOrUpdateNestedResourceTypeThird.json new file mode 100644 index 000000000000..d9b98accd3a3 --- /dev/null +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Skus_CreateOrUpdateNestedResourceTypeThird.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "providerNamespace": "Microsoft.Contoso", + "api-version": "2021-05-01-preview", + "resourceType": "testResourceType", + "sku": "testSku", + "nestedResourceTypeFirst": "nestedResourceTypeFirst", + "nestedResourceTypeSecond": "nestedResourceTypeSecond", + "nestedResourceTypeThird": "nestedResourceTypeThird", + "properties": { + "skuSettings": [ + { + "name": "freeSku", + "tier": "Tier1", + "kind": "Standard" + }, + { + "name": "premiumSku", + "tier": "Tier2", + "kind": "Premium", + "costs": [ + { + "meterId": "xxx" + } + ] + } + ] + } + }, + "responses": { + "200": { + "description": "", + "body": { + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/", + "name": "Microsoft.Contoso/", + "type": "Microsoft.ProviderHub/providerRegistrations/" + } + } + } +} diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Skus_Delete.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Skus_Delete.json new file mode 100644 index 000000000000..e7a577a85966 --- /dev/null +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Skus_Delete.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "providerNamespace": "Microsoft.Contoso", + "api-version": "2021-05-01-preview", + "resourceType": "testResourceType", + "sku": "testSku" + }, + "responses": { + "200": { + "description": "Successfully deleted the resource type sku." + }, + "204": { + "description": "Resource does not exist." + } + } +} diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Skus_DeleteNestedResourceTypeFirst.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Skus_DeleteNestedResourceTypeFirst.json new file mode 100644 index 000000000000..f7b13c126ea3 --- /dev/null +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Skus_DeleteNestedResourceTypeFirst.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "providerNamespace": "Microsoft.Contoso", + "api-version": "2021-05-01-preview", + "resourceType": "testResourceType", + "sku": "testSku", + "nestedResourceTypeFirst": "nestedResourceTypeFirst" + }, + "responses": { + "200": { + "description": "Successfully deleted the resource type sku." + }, + "204": { + "description": "Resource does not exist." + } + } +} diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Skus_DeleteNestedResourceTypeSecond.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Skus_DeleteNestedResourceTypeSecond.json new file mode 100644 index 000000000000..4f9669d7368f --- /dev/null +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Skus_DeleteNestedResourceTypeSecond.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "providerNamespace": "Microsoft.Contoso", + "api-version": "2021-05-01-preview", + "resourceType": "testResourceType", + "sku": "testSku", + "nestedResourceTypeFirst": "nestedResourceTypeFirst", + "nestedResourceTypeSecond": "nestedResourceTypeSecond" + }, + "responses": { + "200": { + "description": "Successfully deleted the resource type sku." + }, + "204": { + "description": "Resource does not exist." + } + } +} diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Skus_DeleteNestedResourceTypeThird.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Skus_DeleteNestedResourceTypeThird.json new file mode 100644 index 000000000000..c7e319f0b20d --- /dev/null +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Skus_DeleteNestedResourceTypeThird.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "providerNamespace": "Microsoft.Contoso", + "api-version": "2021-05-01-preview", + "resourceType": "testResourceType", + "sku": "testSku", + "nestedResourceTypeFirst": "nestedResourceTypeFirst", + "nestedResourceTypeSecond": "nestedResourceTypeSecond", + "nestedResourceTypeThird": "nestedResourceTypeThird" + }, + "responses": { + "200": { + "description": "Successfully deleted the resource type sku." + }, + "204": { + "description": "Resource does not exist." + } + } +} diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Skus_Get.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Skus_Get.json new file mode 100644 index 000000000000..d899d44f722b --- /dev/null +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Skus_Get.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "providerNamespace": "Microsoft.Contoso", + "api-version": "2021-05-01-preview", + "resourceType": "testResourceType", + "sku": "testSku" + }, + "responses": { + "200": { + "body": { + "name": "testSku", + "properties": { + "skuSettings": [ + { + "name": "freeSku", + "tier": "Tier1", + "kind": "Standard" + }, + { + "name": "premiumSku", + "tier": "Tier2", + "kind": "Premium", + "costs": [ + { + "meterId": "xxx" + } + ] + } + ] + } + } + } + } +} diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Skus_GetNestedResourceTypeFirst.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Skus_GetNestedResourceTypeFirst.json new file mode 100644 index 000000000000..42d84d6bf770 --- /dev/null +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Skus_GetNestedResourceTypeFirst.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "providerNamespace": "Microsoft.Contoso", + "api-version": "2021-05-01-preview", + "resourceType": "testResourceType", + "sku": "testSku", + "nestedResourceTypeFirst": "nestedResourceTypeFirst" + }, + "responses": { + "200": { + "body": { + "name": "testSku", + "properties": { + "skuSettings": [ + { + "name": "freeSku", + "tier": "Tier1", + "kind": "Standard" + }, + { + "name": "premiumSku", + "tier": "Tier2", + "kind": "Premium", + "costs": [ + { + "meterId": "xxx" + } + ] + } + ] + } + } + } + } +} diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Skus_GetNestedResourceTypeSecond.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Skus_GetNestedResourceTypeSecond.json new file mode 100644 index 000000000000..3487cc969eac --- /dev/null +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Skus_GetNestedResourceTypeSecond.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "providerNamespace": "Microsoft.Contoso", + "api-version": "2021-05-01-preview", + "resourceType": "testResourceType", + "sku": "testSku", + "nestedResourceTypeFirst": "nestedResourceTypeFirst", + "nestedResourceTypeSecond": "nestedResourceTypeSecond" + }, + "responses": { + "200": { + "body": { + "name": "testSku", + "properties": { + "skuSettings": [ + { + "name": "freeSku", + "tier": "Tier1", + "kind": "Standard" + }, + { + "name": "premiumSku", + "tier": "Tier2", + "kind": "Premium", + "costs": [ + { + "meterId": "xxx" + } + ] + } + ] + } + } + } + } +} diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Skus_GetNestedResourceTypeThird.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Skus_GetNestedResourceTypeThird.json new file mode 100644 index 000000000000..1f56aa14fc12 --- /dev/null +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Skus_GetNestedResourceTypeThird.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "providerNamespace": "Microsoft.Contoso", + "api-version": "2021-05-01-preview", + "resourceType": "testResourceType", + "sku": "testSku", + "nestedResourceTypeFirst": "nestedResourceTypeFirst", + "nestedResourceTypeSecond": "nestedResourceTypeSecond", + "nestedResourceTypeThird": "nestedResourceTypeThird" + }, + "responses": { + "200": { + "body": { + "name": "testSku", + "properties": { + "skuSettings": [ + { + "name": "freeSku", + "tier": "Tier1", + "kind": "Standard" + }, + { + "name": "premiumSku", + "tier": "Tier2", + "kind": "Premium", + "costs": [ + { + "meterId": "xxx" + } + ] + } + ] + } + } + } + } +} diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Skus_ListByResourceTypeRegistrations.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Skus_ListByResourceTypeRegistrations.json new file mode 100644 index 000000000000..c60f0ec27ea3 --- /dev/null +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Skus_ListByResourceTypeRegistrations.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "providerNamespace": "Microsoft.Contoso", + "api-version": "2021-05-01-preview", + "resourceType": "testResourceType" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testSku", + "properties": { + "skuSettings": [ + { + "name": "freeSku", + "tier": "Tier1", + "kind": "Standard" + }, + { + "name": "premiumSku", + "tier": "Tier2", + "kind": "Premium", + "costs": [ + { + "meterId": "xxx" + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Skus_ListByResourceTypeRegistrationsNestedResourceTypeFirst.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Skus_ListByResourceTypeRegistrationsNestedResourceTypeFirst.json new file mode 100644 index 000000000000..600cdcca23cf --- /dev/null +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Skus_ListByResourceTypeRegistrationsNestedResourceTypeFirst.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "providerNamespace": "Microsoft.Contoso", + "api-version": "2021-05-01-preview", + "resourceType": "testResourceType", + "nestedResourceTypeFirst": "nestedResourceTypeFirst" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testSku", + "properties": { + "skuSettings": [ + { + "name": "freeSku", + "tier": "Tier1", + "kind": "Standard" + }, + { + "name": "premiumSku", + "tier": "Tier2", + "kind": "Premium", + "costs": [ + { + "meterId": "xxx" + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Skus_ListByResourceTypeRegistrationsNestedResourceTypeSecond.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Skus_ListByResourceTypeRegistrationsNestedResourceTypeSecond.json new file mode 100644 index 000000000000..c0973fc14c76 --- /dev/null +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Skus_ListByResourceTypeRegistrationsNestedResourceTypeSecond.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "providerNamespace": "Microsoft.Contoso", + "api-version": "2021-05-01-preview", + "resourceType": "testResourceType", + "sku": "testSku", + "nestedResourceTypeFirst": "nestedResourceTypeFirst", + "nestedResourceTypeSecond": "nestedResourceTypeSecond" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testSku", + "properties": { + "skuSettings": [ + { + "name": "freeSku", + "tier": "Tier1", + "kind": "Standard" + }, + { + "name": "premiumSku", + "tier": "Tier2", + "kind": "Premium", + "costs": [ + { + "meterId": "xxx" + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Skus_ListByResourceTypeRegistrationsNestedResourceTypeThird.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Skus_ListByResourceTypeRegistrationsNestedResourceTypeThird.json new file mode 100644 index 000000000000..016d025d7ee8 --- /dev/null +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/examples/Skus_ListByResourceTypeRegistrationsNestedResourceTypeThird.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "providerNamespace": "Microsoft.Contoso", + "api-version": "2021-05-01-preview", + "resourceType": "testResourceType", + "sku": "testSku", + "nestedResourceTypeFirst": "nestedResourceTypeFirst", + "nestedResourceTypeSecond": "nestedResourceTypeSecond", + "nestedResourceTypeThird": "nestedResourceTypeThird" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testSku", + "properties": { + "skuSettings": [ + { + "name": "freeSku", + "tier": "Tier1", + "kind": "Standard" + }, + { + "name": "premiumSku", + "tier": "Tier2", + "kind": "Premium", + "costs": [ + { + "meterId": "xxx" + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/providerhub.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/providerhub.json new file mode 100644 index 000000000000..9ae7b2354f13 --- /dev/null +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/preview/2021-05-01-preview/providerhub.json @@ -0,0 +1,4692 @@ +{ + "swagger": "2.0", + "info": { + "title": "ProviderHub", + "description": "Microsoft ProviderHub", + "version": "2021-05-01-preview", + "x-ms-code-generation-settings": { + "name": "ProviderHubClient" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow" + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "host": "management.azure.com", + "schemes": [ + "https" + ], + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/customRollouts/{rolloutName}": { + "get": { + "tags": [ + "CustomRollouts" + ], + "description": "Gets the custom rollout details.", + "operationId": "CustomRollouts_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ProviderNamespaceParameter" + }, + { + "$ref": "#/parameters/GetRolloutNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the rollout details.", + "schema": { + "$ref": "#/definitions/CustomRollout" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "CustomRollouts_Get": { + "$ref": "./examples/CustomRollouts_Get.json" + } + } + }, + "put": { + "tags": [ + "CustomRollouts" + ], + "description": "Creates or updates the rollout details.", + "operationId": "CustomRollouts_CreateOrUpdate", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ProviderNamespaceParameter" + }, + { + "$ref": "#/parameters/GetRolloutNameParameter" + }, + { + "name": "properties", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CustomRollout" + }, + "description": "The custom rollout properties supplied to the CreateOrUpdate operation." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Rollout completed successfully.", + "schema": { + "$ref": "#/definitions/CustomRollout" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "CustomRollouts_CreateOrUpdate": { + "$ref": "./examples/CustomRollouts_CreateOrUpdate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/customRollouts": { + "get": { + "tags": [ + "CustomRollouts" + ], + "description": "Gets the list of the custom rollouts for the given provider.", + "operationId": "CustomRollouts_ListByProviderRegistration", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ProviderNamespaceParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of custom rollouts for given provider.", + "schema": { + "$ref": "#/definitions/CustomRolloutArrayResponseWithContinuation" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "CustomRollouts_ListByProviderRegistration": { + "$ref": "./examples/CustomRollouts_ListByProviderRegistration.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/defaultRollouts/{rolloutName}": { + "get": { + "tags": [ + "DefaultRollouts" + ], + "description": "Gets the default rollout details.", + "operationId": "DefaultRollouts_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ProviderNamespaceParameter" + }, + { + "$ref": "#/parameters/GetRolloutNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the default rollout details.", + "schema": { + "$ref": "#/definitions/DefaultRollout" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "DefaultRollouts_Get": { + "$ref": "./examples/DefaultRollouts_Get.json" + } + } + }, + "delete": { + "tags": [ + "DefaultRollouts" + ], + "description": "Deletes the rollout resource. Rollout must be in terminal state.", + "operationId": "DefaultRollouts_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ProviderNamespaceParameter" + }, + { + "$ref": "#/parameters/GetRolloutNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the default rollout resource." + }, + "204": { + "description": "Resource does not exist." + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "DefaultRollouts_Delete": { + "$ref": "./examples/DefaultRollouts_Delete.json" + } + } + }, + "put": { + "tags": [ + "DefaultRollouts" + ], + "description": "Creates or updates the rollout details.", + "operationId": "DefaultRollouts_CreateOrUpdate", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ProviderNamespaceParameter" + }, + { + "$ref": "#/parameters/GetRolloutNameParameter" + }, + { + "name": "properties", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DefaultRollout" + }, + "description": "The Default rollout properties supplied to the CreateOrUpdate operation." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Default rollout started successfully.", + "schema": { + "$ref": "#/definitions/DefaultRollout" + } + }, + "201": { + "description": "Default rollout completed successfully.", + "schema": { + "$ref": "#/definitions/DefaultRollout" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "DefaultRollouts_CreateOrUpdate": { + "$ref": "./examples/DefaultRollouts_CreateOrUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/defaultRollouts": { + "get": { + "tags": [ + "DefaultRollouts" + ], + "description": "Gets the list of the rollouts for the given provider.", + "operationId": "DefaultRollouts_ListByProviderRegistration", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ProviderNamespaceParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of default rollouts.", + "schema": { + "$ref": "#/definitions/DefaultRolloutArrayResponseWithContinuation" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "DefaultRollouts_ListByProviderRegistration": { + "$ref": "./examples/DefaultRollouts_ListByProviderRegistration.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/defaultRollouts/{rolloutName}/stop": { + "post": { + "tags": [ + "DefaultRollouts" + ], + "description": "Stops or cancels the rollout, if in progress.", + "operationId": "DefaultRollouts_Stop", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ProviderNamespaceParameter" + }, + { + "$ref": "#/parameters/GetRolloutNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully cancelled the default rollout." + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "DefaultRollouts_Stop": { + "$ref": "./examples/DefaultRollouts_Stop.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/generateManifest": { + "post": { + "tags": [ + "Manifest" + ], + "description": "Generates the manifest for the given provider.", + "operationId": "GenerateManifest", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ProviderNamespaceParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "GenerateManifest": { + "$ref": "./examples/GenerateManifest.json" + } + }, + "responses": { + "200": { + "description": "Manifest generated.", + "schema": { + "$ref": "#/definitions/ResourceProviderManifest" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/checkinManifest": { + "post": { + "tags": [ + "Manifest" + ], + "description": "Checkin the manifest.", + "operationId": "CheckinManifest", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ProviderNamespaceParameter" + }, + { + "name": "checkinManifestParams", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CheckinManifestParams" + }, + "description": "The required body parameters supplied to the checkin manifest operation." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "CheckinManifest": { + "$ref": "./examples/CheckinManifest.json" + } + }, + "responses": { + "200": { + "description": "Successfully checked-in manifest.", + "schema": { + "$ref": "#/definitions/CheckinManifestInfo" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/notificationRegistrations/{notificationRegistrationName}": { + "get": { + "tags": [ + "NotificationRegistration" + ], + "description": "Gets the notification registration details.", + "operationId": "NotificationRegistrations_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ProviderNamespaceParameter" + }, + { + "$ref": "#/parameters/GetNotificationRegistrationNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "NotificationRegistrations_Get": { + "$ref": "./examples/NotificationRegistrations_Get.json" + } + }, + "responses": { + "200": { + "description": "Successfully retrieved the notification registration.", + "schema": { + "$ref": "#/definitions/NotificationRegistration" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "NotificationRegistration" + ], + "description": "Creates or updates a notification registration.", + "operationId": "NotificationRegistrations_CreateOrUpdate", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ProviderNamespaceParameter" + }, + { + "$ref": "#/parameters/GetNotificationRegistrationNameParameter" + }, + { + "name": "properties", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NotificationRegistration" + }, + "description": "The required body parameters supplied to the notification registration operation." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "NotificationRegistrations_CreateOrUpdate": { + "$ref": "./examples/NotificationRegistrations_CreateOrUpdate.json" + } + }, + "responses": { + "200": { + "description": "Successfully created or updated the notification registration.", + "schema": { + "$ref": "#/definitions/NotificationRegistration" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "NotificationRegistration" + ], + "description": "Deletes a notification registration.", + "operationId": "NotificationRegistrations_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ProviderNamespaceParameter" + }, + { + "$ref": "#/parameters/GetNotificationRegistrationNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "NotificationRegistrations_Delete": { + "$ref": "./examples/NotificationRegistrations_Delete.json" + } + }, + "responses": { + "200": { + "description": "Successfully deleted the notification registration." + }, + "204": { + "description": "Resource does not exist." + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/notificationRegistrations": { + "get": { + "tags": [ + "NotificationRegistration" + ], + "description": "Gets the list of the notification registrations for the given provider.", + "operationId": "NotificationRegistrations_ListByProviderRegistration", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ProviderNamespaceParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "NotificationRegistrations_ListByProviderRegistration": { + "$ref": "./examples/NotificationRegistrations_ListByProviderRegistration.json" + } + }, + "responses": { + "200": { + "description": "Successfully retrieved the notification registrations.", + "schema": { + "$ref": "#/definitions/NotificationRegistrationArrayResponseWithContinuation" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.ProviderHub/operations": { + "get": { + "tags": [ + "Operations" + ], + "description": "Lists all the operations supported by Microsoft.ProviderHub.", + "operationId": "Operations_List", + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of supported operations.", + "schema": { + "$ref": "#/definitions/OperationsDefinitionArrayResponseWithContinuation" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Operations_List": { + "$ref": "./examples/Operations_List.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/operations/default": { + "get": { + "tags": [ + "Operations" + ], + "description": "Gets the operations supported by the given provider.", + "operationId": "Operations_ListByProviderRegistration", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ProviderNamespaceParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Operations_ListByProviderRegistration": { + "$ref": "./examples/Operations_ListByProviderRegistration.json" + } + }, + "responses": { + "200": { + "description": "Successfully retrieved the supported operations.", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/OperationsDefinition" + } + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Operations" + ], + "description": "Creates or updates the operation supported by the given provider.", + "operationId": "Operations_CreateOrUpdate", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ProviderNamespaceParameter" + }, + { + "name": "OperationsPutContent", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/OperationsPutContent" + }, + "description": "The operations content properties supplied to the CreateOrUpdate operation." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Operations_CreateOrUpdate": { + "$ref": "./examples/Operations_CreateOrUpdate.json" + } + }, + "responses": { + "200": { + "description": "Successfully created or updated the operation.", + "schema": { + "$ref": "#/definitions/OperationsContent" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Operations" + ], + "description": "Deletes an operation.", + "operationId": "Operations_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ProviderNamespaceParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Operations_Delete": { + "$ref": "./examples/Operations_Delete.json" + } + }, + "responses": { + "200": { + "description": "Successfully deleted the operation." + }, + "204": { + "description": "Resource does not exist." + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}": { + "get": { + "tags": [ + "ProviderRegistration" + ], + "description": "Gets the provider registration details.", + "operationId": "ProviderRegistrations_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ProviderNamespaceParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "ProviderRegistrations_Get": { + "$ref": "./examples/ProviderRegistrations_Get.json" + } + }, + "responses": { + "200": { + "description": "Successfully retrieved the provider registration.", + "schema": { + "$ref": "#/definitions/ProviderRegistration" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ProviderRegistration" + ], + "description": "Creates or updates the provider registration.", + "operationId": "ProviderRegistrations_CreateOrUpdate", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ProviderNamespaceParameter" + }, + { + "name": "properties", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ProviderRegistration" + }, + "description": "The provider registration properties supplied to the CreateOrUpdate operation." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "ProviderRegistrations_CreateOrUpdate": { + "$ref": "./examples/ProviderRegistrations_CreateOrUpdate.json" + } + }, + "responses": { + "200": { + "description": "Successfully updated the provider registration.", + "schema": { + "$ref": "#/definitions/ProviderRegistration" + } + }, + "201": { + "description": "Successfully created the provider registration." + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "delete": { + "tags": [ + "ProviderRegistration" + ], + "description": "Deletes a provider registration.", + "operationId": "ProviderRegistrations_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ProviderNamespaceParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "ProviderRegistrations_Delete": { + "$ref": "./examples/ProviderRegistrations_Delete.json" + } + }, + "responses": { + "200": { + "description": "Successfully deleted the provider registration." + }, + "204": { + "description": "Resource does not exist." + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations": { + "get": { + "tags": [ + "ProviderRegistration" + ], + "description": "Gets the list of the provider registrations in the subscription.", + "operationId": "ProviderRegistrations_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "ProviderRegistrations_List": { + "$ref": "./examples/ProviderRegistrations_List.json" + } + }, + "responses": { + "200": { + "description": "Successfully retrieved the provider registrations.", + "schema": { + "$ref": "#/definitions/ProviderRegistrationArrayResponseWithContinuation" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/generateOperations": { + "post": { + "tags": [ + "ProviderRegistration" + ], + "description": "Generates the operations api for the given provider.", + "operationId": "ProviderRegistrations_GenerateOperations", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ProviderNamespaceParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "ProviderRegistrations_GenerateOperations": { + "$ref": "./examples/ProviderRegistrations_GenerateOperations.json" + } + }, + "responses": { + "200": { + "description": "The operations api has been generated successfully.", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/OperationsDefinition" + } + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/resourcetypeRegistrations/{resourceType}": { + "get": { + "tags": [ + "ResourceTypeRegistration" + ], + "description": "Gets a resource type details in the given subscription and provider.", + "operationId": "ResourceTypeRegistrations_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ProviderNamespaceParameter" + }, + { + "$ref": "#/parameters/GetResourceTypeParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "ResourceTypeRegistrations_Get": { + "$ref": "./examples/ResourceTypeRegistrations_Get.json" + } + }, + "responses": { + "200": { + "description": "Successfully retrieved the resource type.", + "schema": { + "$ref": "#/definitions/ResourceTypeRegistration" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ResourceTypeRegistration" + ], + "description": "Creates or updates a resource type.", + "operationId": "ResourceTypeRegistrations_CreateOrUpdate", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ProviderNamespaceParameter" + }, + { + "$ref": "#/parameters/GetResourceTypeParameter" + }, + { + "name": "properties", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ResourceTypeRegistration" + }, + "description": "The required request body parameters supplied to the resource type registration CreateOrUpdate operation." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "ResourceTypeRegistrations_CreateOrUpdate": { + "$ref": "./examples/ResourceTypeRegistrations_CreateOrUpdate.json" + } + }, + "responses": { + "200": { + "description": "Successfully updated the resource type.", + "schema": { + "$ref": "#/definitions/ResourceTypeRegistration" + } + }, + "201": { + "description": "Successfully created the resource type.", + "schema": { + "$ref": "#/definitions/ResourceTypeRegistration" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "delete": { + "tags": [ + "ResourceTypeRegistration" + ], + "description": "Deletes a resource type", + "operationId": "ResourceTypeRegistrations_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ProviderNamespaceParameter" + }, + { + "$ref": "#/parameters/GetResourceTypeParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "ResourceTypeRegistrations_Delete": { + "$ref": "./examples/ResourceTypeRegistrations_Delete.json" + } + }, + "responses": { + "200": { + "description": "Successfully deleted the resource type." + }, + "204": { + "description": "Resource does not exist." + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/resourcetypeRegistrations": { + "get": { + "tags": [ + "ResourceTypeRegistration" + ], + "description": "Gets the list of the resource types for the given provider.", + "operationId": "ResourceTypeRegistrations_ListByProviderRegistration", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ProviderNamespaceParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "ResourceTypeRegistrations_ListByProviderRegistration": { + "$ref": "./examples/ResourceTypeRegistrations_ListByProviderRegistration.json" + } + }, + "responses": { + "200": { + "description": "Successfully retrieved the resource types.", + "schema": { + "$ref": "#/definitions/ResourceTypeRegistrationArrayResponseWithContinuation" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/resourcetypeRegistrations/{resourceType}/skus/{sku}": { + "get": { + "tags": [ + "ResourceTypeSku" + ], + "description": "Gets the sku details for the given resource type and sku name.", + "operationId": "Skus_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ProviderNamespaceParameter" + }, + { + "$ref": "#/parameters/GetResourceTypeParameter" + }, + { + "$ref": "#/parameters/SkuParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Skus_Get": { + "$ref": "./examples/Skus_Get.json" + } + }, + "responses": { + "200": { + "description": "Successfully retrieved the resource type sku.", + "schema": { + "$ref": "#/definitions/SkuResource" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ResourceTypeSku" + ], + "description": "Creates or updates the resource type skus in the given resource type.", + "operationId": "Skus_CreateOrUpdate", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ProviderNamespaceParameter" + }, + { + "$ref": "#/parameters/GetResourceTypeParameter" + }, + { + "$ref": "#/parameters/SkuParameter" + }, + { + "name": "properties", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ResourceTypeSku" + }, + "description": "The required body parameters supplied to the resource sku operation." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Skus_CreateOrUpdate": { + "$ref": "./examples/Skus_CreateOrUpdate.json" + } + }, + "responses": { + "200": { + "description": "Successfully created or updated the resource type sku.", + "schema": { + "$ref": "#/definitions/SkuResource" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ResourceTypeSku" + ], + "description": "Deletes a resource type sku.", + "operationId": "Skus_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ProviderNamespaceParameter" + }, + { + "$ref": "#/parameters/GetResourceTypeParameter" + }, + { + "$ref": "#/parameters/SkuParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Skus_Delete": { + "$ref": "./examples/Skus_Delete.json" + } + }, + "responses": { + "200": { + "description": "Successfully deleted the resource type sku." + }, + "204": { + "description": "Resource does not exist." + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/resourcetypeRegistrations/{resourceType}/resourcetypeRegistrations/{nestedResourceTypeFirst}/skus/{sku}": { + "get": { + "tags": [ + "ResourceTypeSku" + ], + "description": "Gets the sku details for the given resource type and sku name.", + "operationId": "Skus_GetNestedResourceTypeFirst", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ProviderNamespaceParameter" + }, + { + "$ref": "#/parameters/GetResourceTypeParameter" + }, + { + "$ref": "#/parameters/NestedResourceTypeFirstParameter" + }, + { + "$ref": "#/parameters/SkuParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Skus_GetNestedResourceTypeFirst": { + "$ref": "./examples/Skus_GetNestedResourceTypeFirst.json" + } + }, + "responses": { + "200": { + "description": "Successfully retrieved the resource type sku.", + "schema": { + "$ref": "#/definitions/SkuResource" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ResourceTypeSku" + ], + "description": "Creates or updates the resource type skus in the given resource type.", + "operationId": "Skus_CreateOrUpdateNestedResourceTypeFirst", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ProviderNamespaceParameter" + }, + { + "$ref": "#/parameters/GetResourceTypeParameter" + }, + { + "$ref": "#/parameters/NestedResourceTypeFirstParameter" + }, + { + "$ref": "#/parameters/SkuParameter" + }, + { + "name": "properties", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ResourceTypeSku" + }, + "description": "The required body parameters supplied to the resource sku operation." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Skus_CreateOrUpdateNestedResourceTypeFirst": { + "$ref": "./examples/Skus_CreateOrUpdateNestedResourceTypeFirst.json" + } + }, + "responses": { + "200": { + "description": "Successfully created or updated the resource type sku.", + "schema": { + "$ref": "#/definitions/SkuResource" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ResourceTypeSku" + ], + "description": "Deletes a resource type sku.", + "operationId": "Skus_DeleteNestedResourceTypeFirst", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ProviderNamespaceParameter" + }, + { + "$ref": "#/parameters/GetResourceTypeParameter" + }, + { + "$ref": "#/parameters/NestedResourceTypeFirstParameter" + }, + { + "$ref": "#/parameters/SkuParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Skus_DeleteNestedResourceTypeFirst": { + "$ref": "./examples/Skus_DeleteNestedResourceTypeFirst.json" + } + }, + "responses": { + "200": { + "description": "Successfully deleted the resource type sku." + }, + "204": { + "description": "Resource does not exist." + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/resourcetypeRegistrations/{resourceType}/resourcetypeRegistrations/{nestedResourceTypeFirst}/resourcetypeRegistrations/{nestedResourceTypeSecond}/skus/{sku}": { + "get": { + "tags": [ + "ResourceTypeSku" + ], + "description": "Gets the sku details for the given resource type and sku name.", + "operationId": "Skus_GetNestedResourceTypeSecond", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ProviderNamespaceParameter" + }, + { + "$ref": "#/parameters/GetResourceTypeParameter" + }, + { + "$ref": "#/parameters/NestedResourceTypeFirstParameter" + }, + { + "$ref": "#/parameters/NestedResourceTypeSecondParameter" + }, + { + "$ref": "#/parameters/SkuParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Skus_GetNestedResourceTypeSecond": { + "$ref": "./examples/Skus_GetNestedResourceTypeSecond.json" + } + }, + "responses": { + "200": { + "description": "Successfully retrieved the resource type sku.", + "schema": { + "$ref": "#/definitions/SkuResource" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ResourceTypeSku" + ], + "description": "Creates or updates the resource type skus in the given resource type.", + "operationId": "Skus_CreateOrUpdateNestedResourceTypeSecond", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ProviderNamespaceParameter" + }, + { + "$ref": "#/parameters/GetResourceTypeParameter" + }, + { + "$ref": "#/parameters/NestedResourceTypeFirstParameter" + }, + { + "$ref": "#/parameters/NestedResourceTypeSecondParameter" + }, + { + "$ref": "#/parameters/SkuParameter" + }, + { + "name": "properties", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ResourceTypeSku" + }, + "description": "The required body parameters supplied to the resource sku operation." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Skus_CreateOrUpdateNestedResourceTypeSecond": { + "$ref": "./examples/Skus_CreateOrUpdateNestedResourceTypeSecond.json" + } + }, + "responses": { + "200": { + "description": "Successfully created or updated the resource type sku.", + "schema": { + "$ref": "#/definitions/SkuResource" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ResourceTypeSku" + ], + "description": "Deletes a resource type sku.", + "operationId": "Skus_DeleteNestedResourceTypeSecond", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ProviderNamespaceParameter" + }, + { + "$ref": "#/parameters/GetResourceTypeParameter" + }, + { + "$ref": "#/parameters/NestedResourceTypeFirstParameter" + }, + { + "$ref": "#/parameters/NestedResourceTypeSecondParameter" + }, + { + "$ref": "#/parameters/SkuParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Skus_DeleteNestedResourceTypeSecond": { + "$ref": "./examples/Skus_DeleteNestedResourceTypeSecond.json" + } + }, + "responses": { + "200": { + "description": "Successfully deleted the resource type sku." + }, + "204": { + "description": "Resource does not exist." + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/resourcetypeRegistrations/{resourceType}/resourcetypeRegistrations/{nestedResourceTypeFirst}/resourcetypeRegistrations/{nestedResourceTypeSecond}/resourcetypeRegistrations/{nestedResourceTypeThird}/skus/{sku}": { + "get": { + "tags": [ + "ResourceTypeSku" + ], + "description": "Gets the sku details for the given resource type and sku name.", + "operationId": "Skus_GetNestedResourceTypeThird", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ProviderNamespaceParameter" + }, + { + "$ref": "#/parameters/GetResourceTypeParameter" + }, + { + "$ref": "#/parameters/NestedResourceTypeFirstParameter" + }, + { + "$ref": "#/parameters/NestedResourceTypeSecondParameter" + }, + { + "$ref": "#/parameters/NestedResourceTypeThirdParameter" + }, + { + "$ref": "#/parameters/SkuParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Skus_GetNestedResourceTypeThird": { + "$ref": "./examples/Skus_GetNestedResourceTypeThird.json" + } + }, + "responses": { + "200": { + "description": "Successfully retrieved the resource type sku.", + "schema": { + "$ref": "#/definitions/SkuResource" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ResourceTypeSku" + ], + "description": "Creates or updates the resource type skus in the given resource type.", + "operationId": "Skus_CreateOrUpdateNestedResourceTypeThird", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ProviderNamespaceParameter" + }, + { + "$ref": "#/parameters/GetResourceTypeParameter" + }, + { + "$ref": "#/parameters/NestedResourceTypeFirstParameter" + }, + { + "$ref": "#/parameters/NestedResourceTypeSecondParameter" + }, + { + "$ref": "#/parameters/NestedResourceTypeThirdParameter" + }, + { + "$ref": "#/parameters/SkuParameter" + }, + { + "name": "properties", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ResourceTypeSku" + }, + "description": "The required body parameters supplied to the resource sku operation." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Skus_CreateOrUpdateNestedResourceTypeThird": { + "$ref": "./examples/Skus_CreateOrUpdateNestedResourceTypeThird.json" + } + }, + "responses": { + "200": { + "description": "Successfully created or updated the resource type sku.", + "schema": { + "$ref": "#/definitions/SkuResource" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ResourceTypeSku" + ], + "description": "Deletes a resource type sku.", + "operationId": "Skus_DeleteNestedResourceTypeThird", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ProviderNamespaceParameter" + }, + { + "$ref": "#/parameters/GetResourceTypeParameter" + }, + { + "$ref": "#/parameters/NestedResourceTypeFirstParameter" + }, + { + "$ref": "#/parameters/NestedResourceTypeSecondParameter" + }, + { + "$ref": "#/parameters/NestedResourceTypeThirdParameter" + }, + { + "$ref": "#/parameters/SkuParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Skus_DeleteNestedResourceTypeThird": { + "$ref": "./examples/Skus_DeleteNestedResourceTypeThird.json" + } + }, + "responses": { + "200": { + "description": "Successfully deleted the resource type sku." + }, + "204": { + "description": "Resource does not exist." + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/resourcetypeRegistrations/{resourceType}/skus": { + "get": { + "tags": [ + "ResourceTypeSku" + ], + "description": "Gets the list of skus for the given resource type.", + "operationId": "Skus_ListByResourceTypeRegistrations", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ProviderNamespaceParameter" + }, + { + "$ref": "#/parameters/GetResourceTypeParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Skus_ListByResourceTypeRegistrations": { + "$ref": "./examples/Skus_ListByResourceTypeRegistrations.json" + } + }, + "responses": { + "200": { + "description": "SUccessfully retrieved the resource type skus.", + "schema": { + "$ref": "#/definitions/SkuResourceArrayResponseWithContinuation" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/resourcetypeRegistrations/{resourceType}/resourcetypeRegistrations/{nestedResourceTypeFirst}/skus": { + "get": { + "tags": [ + "ResourceTypeSku" + ], + "description": "Gets the list of skus for the given resource type.", + "operationId": "Skus_ListByResourceTypeRegistrationsNestedResourceTypeFirst", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ProviderNamespaceParameter" + }, + { + "$ref": "#/parameters/GetResourceTypeParameter" + }, + { + "$ref": "#/parameters/NestedResourceTypeFirstParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Skus_ListByResourceTypeRegistrationsNestedResourceTypeFirst": { + "$ref": "./examples/Skus_ListByResourceTypeRegistrationsNestedResourceTypeFirst.json" + } + }, + "responses": { + "200": { + "description": "SUccessfully retrieved the resource type skus.", + "schema": { + "$ref": "#/definitions/SkuResourceArrayResponseWithContinuation" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/resourcetypeRegistrations/{resourceType}/resourcetypeRegistrations/{nestedResourceTypeFirst}/resourcetypeRegistrations/{nestedResourceTypeSecond}/skus": { + "get": { + "tags": [ + "ResourceTypeSku" + ], + "description": "Gets the list of skus for the given resource type.", + "operationId": "Skus_ListByResourceTypeRegistrationsNestedResourceTypeSecond", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ProviderNamespaceParameter" + }, + { + "$ref": "#/parameters/GetResourceTypeParameter" + }, + { + "$ref": "#/parameters/NestedResourceTypeFirstParameter" + }, + { + "$ref": "#/parameters/NestedResourceTypeSecondParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Skus_ListByResourceTypeRegistrationsNestedResourceTypeSecond": { + "$ref": "./examples/Skus_ListByResourceTypeRegistrationsNestedResourceTypeSecond.json" + } + }, + "responses": { + "200": { + "description": "SUccessfully retrieved the resource type skus.", + "schema": { + "$ref": "#/definitions/SkuResourceArrayResponseWithContinuation" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/resourcetypeRegistrations/{resourceType}/resourcetypeRegistrations/{nestedResourceTypeFirst}/resourcetypeRegistrations/{nestedResourceTypeSecond}/resourcetypeRegistrations/{nestedResourceTypeThird}/skus": { + "get": { + "tags": [ + "ResourceTypeSku" + ], + "description": "Gets the list of skus for the given resource type.", + "operationId": "Skus_ListByResourceTypeRegistrationsNestedResourceTypeThird", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ProviderNamespaceParameter" + }, + { + "$ref": "#/parameters/GetResourceTypeParameter" + }, + { + "$ref": "#/parameters/NestedResourceTypeFirstParameter" + }, + { + "$ref": "#/parameters/NestedResourceTypeSecondParameter" + }, + { + "$ref": "#/parameters/NestedResourceTypeThirdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Skus_ListByResourceTypeRegistrationsNestedResourceTypeThird": { + "$ref": "./examples/Skus_ListByResourceTypeRegistrationsNestedResourceTypeThird.json" + } + }, + "responses": { + "200": { + "description": "SUccessfully retrieved the resource type skus.", + "schema": { + "$ref": "#/definitions/SkuResourceArrayResponseWithContinuation" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "ProvisioningState": { + "enum": [ + "NotSpecified", + "Accepted", + "Running", + "Creating", + "Created", + "Deleting", + "Deleted", + "Canceled", + "Failed", + "Succeeded", + "MovingResources", + "TransientFailure", + "RolloutInProgress" + ], + "type": "string", + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "TrafficRegions": { + "type": "object", + "properties": { + "regions": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "CustomRolloutSpecification": { + "required": [ + "canary" + ], + "type": "object", + "properties": { + "canary": { + "allOf": [ + { + "$ref": "#/definitions/TrafficRegions" + } + ] + }, + "providerRegistration": { + "allOf": [ + { + "$ref": "#/definitions/ProviderRegistration" + } + ] + }, + "resourceTypeRegistrations": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceTypeRegistration" + } + } + } + }, + "TypedErrorInfo": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "info": { + "type": "object", + "readOnly": true + } + } + }, + "ExtendedErrorInfo": { + "type": "object", + "properties": { + "code": { + "type": "string" + }, + "target": { + "type": "string" + }, + "message": { + "type": "string" + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ExtendedErrorInfo" + } + }, + "additionalInfo": { + "type": "array", + "items": { + "$ref": "#/definitions/TypedErrorInfo" + } + } + } + }, + "CheckinManifestParams": { + "type": "object", + "properties": { + "environment": { + "type": "string", + "description": "The environment supplied to the checkin manifest operation." + }, + "baselineArmManifestLocation": { + "type": "string", + "description": "The baseline ARM manifest location supplied to the checkin manifest operation." + } + }, + "required": [ + "baselineArmManifestLocation", + "environment" + ] + }, + "RolloutStatusBase": { + "type": "object", + "properties": { + "completedRegions": { + "type": "array", + "items": { + "type": "string" + } + }, + "failedOrSkippedRegions": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/ExtendedErrorInfo" + } + } + } + }, + "CustomRolloutProperties": { + "type": "object", + "required": [ + "specification" + ], + "properties": { + "provisioningState": { + "$ref": "#/definitions/ProvisioningState", + "description": "The provisioned state of the resource." + }, + "specification": { + "allOf": [ + { + "$ref": "#/definitions/CustomRolloutSpecification" + } + ] + }, + "status": { + "allOf": [ + { + "$ref": "#/definitions/CustomRolloutStatus" + } + ] + } + } + }, + "CustomRollout": { + "description": "Rollout details.", + "type": "object", + "required": [ + "properties" + ], + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/CustomRolloutProperties" + } + ], + "description": "Properties of the rollout." + } + }, + "x-ms-azure-resource": true + }, + "InnerError": { + "description": "Inner error containing list of errors.", + "type": "object", + "properties": { + "code": { + "description": "Specific error code than was provided by the containing error.", + "type": "string", + "readOnly": true + }, + "innerError": { + "description": "Object containing more specific information than the current object about the error.", + "type": "object", + "readOnly": true + } + }, + "additionalProperties": { + "type": "object" + } + }, + "Error": { + "description": "Standard error object.", + "type": "object", + "properties": { + "code": { + "description": "Server-defined set of error codes.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "Human-readable representation of the error.", + "type": "string", + "readOnly": true + }, + "target": { + "description": "Target of the error.", + "type": "string", + "readOnly": true + }, + "details": { + "description": "Array of details about specific errors that led to this reported error.", + "type": "array", + "items": { + "$ref": "#/definitions/Error" + }, + "readOnly": true + }, + "innerError": { + "description": "Object containing more specific information than the current object about the error.", + "allOf": [ + { + "$ref": "#/definitions/InnerError" + } + ], + "readOnly": true + } + } + }, + "ErrorResponse": { + "description": "Standard error response.", + "type": "object", + "properties": { + "error": { + "description": "Standard error object.", + "allOf": [ + { + "$ref": "#/definitions/Error" + } + ] + } + } + }, + "CustomRolloutArrayResponseWithContinuation": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/CustomRollout" + } + }, + "nextLink": { + "description": "The URL to get to the next set of results, if there are any.", + "type": "string" + } + } + }, + "TrafficRegionRolloutConfiguration": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TrafficRegions" + } + ], + "properties": { + "waitDuration": { + "format": "duration", + "type": "string" + } + } + }, + "ExpeditedRolloutDefinition": { + "description": "Expedited rollout configuration.", + "type": "object", + "properties": { + "enabled": { + "description": "Indicates whether expedited rollout is enabled/disabled", + "type": "boolean" + } + } + }, + "DefaultRolloutSpecification": { + "type": "object", + "properties": { + "expeditedRollout": { + "allOf": [ + { + "$ref": "#/definitions/ExpeditedRolloutDefinition" + } + ] + }, + "canary": { + "allOf": [ + { + "$ref": "#/definitions/CanaryTrafficRegionRolloutConfiguration" + } + ] + }, + "lowTraffic": { + "allOf": [ + { + "$ref": "#/definitions/TrafficRegionRolloutConfiguration" + } + ] + }, + "mediumTraffic": { + "allOf": [ + { + "$ref": "#/definitions/TrafficRegionRolloutConfiguration" + } + ] + }, + "highTraffic": { + "allOf": [ + { + "$ref": "#/definitions/TrafficRegionRolloutConfiguration" + } + ] + }, + "restOfTheWorldGroupOne": { + "allOf": [ + { + "$ref": "#/definitions/TrafficRegionRolloutConfiguration" + } + ] + }, + "restOfTheWorldGroupTwo": { + "allOf": [ + { + "$ref": "#/definitions/TrafficRegionRolloutConfiguration" + } + ] + }, + "providerRegistration": { + "allOf": [ + { + "$ref": "#/definitions/ProviderRegistration" + } + ] + }, + "resourceTypeRegistrations": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceTypeRegistration" + } + } + } + }, + "DefaultRolloutStatus": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RolloutStatusBase" + } + ], + "properties": { + "nextTrafficRegion": { + "enum": [ + "NotSpecified", + "Canary", + "LowTraffic", + "MediumTraffic", + "HighTraffic", + "None", + "RestOfTheWorldGroupOne", + "RestOfTheWorldGroupTwo" + ], + "type": "string", + "x-ms-enum": { + "name": "TrafficRegionCategory", + "modelAsString": true + } + }, + "nextTrafficRegionScheduledTime": { + "format": "date-time", + "type": "string" + }, + "subscriptionReregistrationResult": { + "enum": [ + "NotApplicable", + "ConditionalUpdate", + "ForcedUpdate", + "Failed" + ], + "type": "string", + "x-ms-enum": { + "name": "SubscriptionReregistrationResult", + "modelAsString": true + } + } + } + }, + "DefaultRolloutProperties": { + "type": "object", + "properties": { + "provisioningState": { + "$ref": "#/definitions/ProvisioningState", + "description": "The provisioned state of the resource." + }, + "specification": { + "allOf": [ + { + "$ref": "#/definitions/DefaultRolloutSpecification" + } + ] + }, + "status": { + "allOf": [ + { + "$ref": "#/definitions/DefaultRolloutStatus" + } + ] + } + } + }, + "DefaultRollout": { + "description": "Default rollout definition.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/DefaultRolloutProperties" + } + ], + "description": "Properties of the rollout." + } + }, + "x-ms-azure-resource": true + }, + "DefaultRolloutArrayResponseWithContinuation": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DefaultRollout" + } + }, + "nextLink": { + "description": "The URL to get to the next set of results, if there are any.", + "type": "string" + } + } + }, + "ResourceProviderAuthentication": { + "required": [ + "allowedAudiences" + ], + "type": "object", + "properties": { + "allowedAudiences": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "ResourceProviderAuthorization": { + "type": "object", + "properties": { + "applicationId": { + "type": "string" + }, + "roleDefinitionId": { + "type": "string" + }, + "managedByRoleDefinitionId": { + "type": "string" + } + } + }, + "FeaturesRule": { + "required": [ + "requiredFeaturesPolicy" + ], + "type": "object", + "properties": { + "requiredFeaturesPolicy": { + "enum": [ + "Any", + "All" + ], + "type": "string", + "x-ms-enum": { + "name": "FeaturesPolicy", + "modelAsString": true + } + } + } + }, + "RequestHeaderOptions": { + "type": "object", + "properties": { + "optInHeaders": { + "enum": [ + "NotSpecified", + "SignedUserToken", + "ClientGroupMembership", + "SignedAuxiliaryTokens", + "UnboundedClientGroupMembership" + ], + "type": "string", + "x-ms-enum": { + "name": "OptInHeaderType", + "modelAsString": true + } + } + } + }, + "AuthorizationActionMapping": { + "type": "object", + "properties": { + "original": { + "type": "string" + }, + "desired": { + "type": "string" + } + } + }, + "LinkedAccessCheck": { + "type": "object", + "properties": { + "actionName": { + "type": "string" + }, + "linkedProperty": { + "type": "string" + }, + "linkedAction": { + "type": "string" + }, + "linkedActionVerb": { + "type": "string" + }, + "linkedType": { + "type": "string" + } + } + }, + "LoggingHiddenPropertyPath": { + "type": "object", + "properties": { + "hiddenPathsOnRequest": { + "type": "array", + "items": { + "type": "string" + } + }, + "hiddenPathsOnResponse": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "LoggingRule": { + "required": [ + "action", + "detailLevel", + "direction" + ], + "type": "object", + "properties": { + "action": { + "type": "string" + }, + "direction": { + "enum": [ + "None", + "Request", + "Response" + ], + "type": "string", + "x-ms-enum": { + "name": "LoggingDirections", + "modelAsString": true + } + }, + "detailLevel": { + "enum": [ + "None", + "Body" + ], + "type": "string", + "x-ms-enum": { + "name": "LoggingDetails", + "modelAsString": true + } + }, + "hiddenPropertyPaths": { + "allOf": [ + { + "$ref": "#/definitions/LoggingHiddenPropertyPath" + } + ] + } + } + }, + "ThrottlingMetric": { + "required": [ + "limit", + "type" + ], + "type": "object", + "properties": { + "type": { + "enum": [ + "NotSpecified", + "NumberOfRequests", + "NumberOfResources" + ], + "type": "string", + "x-ms-enum": { + "name": "ThrottlingMetricType", + "modelAsString": true + } + }, + "limit": { + "format": "int64", + "type": "integer" + }, + "interval": { + "format": "duration", + "type": "string" + } + } + }, + "ThrottlingRule": { + "required": [ + "action", + "metrics" + ], + "type": "object", + "properties": { + "action": { + "type": "string" + }, + "metrics": { + "type": "array", + "items": { + "$ref": "#/definitions/ThrottlingMetric" + } + }, + "requiredFeatures": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "ResourceProviderEndpoint": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + } + }, + "endpointUri": { + "type": "string" + }, + "locations": { + "type": "array", + "items": { + "type": "string" + } + }, + "requiredFeatures": { + "type": "array", + "items": { + "type": "string" + } + }, + "featuresRule": { + "allOf": [ + { + "$ref": "#/definitions/FeaturesRule" + } + ] + }, + "timeout": { + "format": "duration", + "type": "string" + } + } + }, + "IdentityManagementProperties": { + "type": "object", + "properties": { + "type": { + "enum": [ + "NotSpecified", + "SystemAssigned", + "UserAssigned", + "Actor", + "DelegatedResourceIdentity" + ], + "type": "string", + "x-ms-enum": { + "name": "IdentityManagementTypes", + "modelAsString": true + } + }, + "applicationId": { + "type": "string" + } + } + }, + "IdentityManagement": { + "type": "object", + "properties": { + "type": { + "enum": [ + "NotSpecified", + "SystemAssigned", + "UserAssigned", + "Actor", + "DelegatedResourceIdentity" + ], + "type": "string", + "x-ms-enum": { + "name": "IdentityManagementTypes", + "modelAsString": true + } + } + } + }, + "SubscriptionStateRule": { + "type": "object", + "properties": { + "state": { + "enum": [ + "NotDefined", + "Enabled", + "Warned", + "PastDue", + "Disabled", + "Deleted" + ], + "type": "string", + "x-ms-enum": { + "name": "SubscriptionState", + "modelAsString": true + } + }, + "allowedActions": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "CustomRolloutStatus": { + "type": "object", + "properties": { + "completedRegions": { + "type": "array", + "items": { + "type": "string" + } + }, + "failedOrSkippedRegions": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/ExtendedErrorInfo" + } + } + } + }, + "CanaryTrafficRegionRolloutConfiguration": { + "type": "object", + "properties": { + "skipRegions": { + "type": "array", + "items": { + "type": "string" + } + }, + "regions": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "ServiceTreeInfo": { + "type": "object", + "properties": { + "serviceId": { + "type": "string" + }, + "componentId": { + "type": "string" + } + } + }, + "TemplateDeploymentPolicy": { + "required": [ + "capabilities", + "preflightOptions" + ], + "type": "object", + "properties": { + "capabilities": { + "enum": [ + "Default", + "Preflight" + ], + "type": "string", + "x-ms-enum": { + "name": "TemplateDeploymentCapabilities", + "modelAsString": true + } + }, + "preflightOptions": { + "enum": [ + "None", + "ValidationRequests", + "DeploymentRequests", + "TestOnly", + "RegisteredOnly" + ], + "type": "string", + "x-ms-enum": { + "name": "TemplateDeploymentPreflightOptions", + "modelAsString": true + } + } + } + }, + "ExtendedLocationOptions": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "supportedPolicy": { + "type": "string" + } + } + }, + "LinkedOperationRule": { + "required": [ + "linkedAction", + "linkedOperation" + ], + "type": "object", + "properties": { + "linkedOperation": { + "enum": [ + "None", + "CrossResourceGroupResourceMove", + "CrossSubscriptionResourceMove" + ], + "type": "string", + "x-ms-enum": { + "name": "LinkedOperation", + "modelAsString": true + } + }, + "linkedAction": { + "enum": [ + "NotSpecified", + "Blocked", + "Validate", + "Enabled" + ], + "type": "string", + "x-ms-enum": { + "name": "LinkedAction", + "modelAsString": true + } + } + } + }, + "ResourceType": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "routingType": { + "enum": [ + "Default", + "ProxyOnly", + "HostBased", + "Extension", + "Tenant", + "Fanout", + "LocationBased", + "Failover", + "CascadeExtension" + ], + "type": "string", + "x-ms-enum": { + "name": "RoutingType", + "modelAsString": true + } + }, + "resourceValidation": { + "enum": [ + "NotSpecified", + "ReservedWords", + "ProfaneWords" + ], + "type": "string", + "x-ms-enum": { + "name": "ResourceValidation", + "modelAsString": true + } + }, + "allowedUnauthorizedActions": { + "type": "array", + "items": { + "type": "string" + } + }, + "authorizationActionMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/AuthorizationActionMapping" + } + }, + "linkedAccessChecks": { + "type": "array", + "items": { + "$ref": "#/definitions/LinkedAccessCheck" + } + }, + "defaultApiVersion": { + "type": "string" + }, + "loggingRules": { + "type": "array", + "items": { + "$ref": "#/definitions/LoggingRule" + } + }, + "throttlingRules": { + "type": "array", + "items": { + "$ref": "#/definitions/ThrottlingRule" + } + }, + "endpoints": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceProviderEndpoint" + } + }, + "marketplaceType": { + "enum": [ + "NotSpecified", + "AddOn", + "Bypass", + "Store" + ], + "type": "string" + }, + "identityManagement": { + "allOf": [ + { + "$ref": "#/definitions/IdentityManagement" + } + ] + }, + "metadata": {}, + "requiredFeatures": { + "type": "array", + "items": { + "type": "string" + } + }, + "featuresRule": { + "allOf": [ + { + "$ref": "#/definitions/FeaturesRule" + } + ] + }, + "subscriptionStateRules": { + "type": "array", + "items": { + "$ref": "#/definitions/SubscriptionStateRule" + } + }, + "serviceTreeInfos": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceTreeInfo" + } + }, + "requestHeaderOptions": { + "allOf": [ + { + "$ref": "#/definitions/RequestHeaderOptions" + } + ] + }, + "skuLink": { + "type": "string" + }, + "disallowedActionVerbs": { + "type": "array", + "items": { + "type": "string" + } + }, + "templateDeploymentPolicy": { + "allOf": [ + { + "$ref": "#/definitions/TemplateDeploymentPolicy" + } + ] + }, + "extendedLocations": { + "type": "array", + "items": { + "$ref": "#/definitions/ExtendedLocationOptions" + } + }, + "linkedOperationRules": { + "type": "array", + "items": { + "$ref": "#/definitions/LinkedOperationRule" + } + }, + "resourceDeletionPolicy": { + "enum": [ + "NotSpecified", + "Cascade", + "Force" + ], + "type": "string", + "x-ms-enum": { + "name": "ManifestResourceDeletionPolicy", + "modelAsString": true + } + } + } + }, + "ResourceProviderManagement": { + "type": "object", + "properties": { + "schemaOwners": { + "type": "array", + "items": { + "type": "string" + } + }, + "manifestOwners": { + "type": "array", + "items": { + "type": "string" + } + }, + "incidentRoutingService": { + "type": "string" + }, + "incidentRoutingTeam": { + "type": "string" + }, + "incidentContactEmail": { + "type": "string" + }, + "serviceTreeInfos": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceTreeInfo" + } + }, + "resourceAccessPolicy": { + "enum": [ + "NotSpecified", + "AcisReadAllowed", + "AcisActionAllowed" + ], + "type": "string" + }, + "resourceAccessRoles": { + "type": "array", + "items": {} + } + } + }, + "ResourceProviderCapabilities": { + "required": [ + "effect", + "quotaId" + ], + "type": "object", + "properties": { + "quotaId": { + "type": "string" + }, + "effect": { + "enum": [ + "NotSpecified", + "Allow", + "Disallow" + ], + "type": "string", + "x-ms-enum": { + "name": "ResourceProviderCapabilitiesEffect", + "modelAsString": true + } + }, + "requiredFeatures": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "ReRegisterSubscriptionMetadata": { + "required": [ + "enabled" + ], + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + }, + "concurrencyLimit": { + "format": "int32", + "type": "integer" + } + } + }, + "ResourceProviderManifest": { + "type": "object", + "properties": { + "providerAuthentication": { + "allOf": [ + { + "$ref": "#/definitions/ResourceProviderAuthentication" + } + ] + }, + "providerAuthorizations": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceProviderAuthorization" + } + }, + "namespace": { + "type": "string" + }, + "providerVersion": { + "type": "string" + }, + "providerType": { + "enum": [ + "NotSpecified", + "Internal", + "External", + "Hidden", + "RegistrationFree", + "LegacyRegistrationRequired", + "TenantOnly", + "AuthorizationFree" + ], + "type": "string", + "x-ms-enum": { + "name": "ResourceProviderType", + "modelAsString": true + } + }, + "requiredFeatures": { + "type": "array", + "items": { + "type": "string" + } + }, + "featuresRule": { + "allOf": [ + { + "$ref": "#/definitions/FeaturesRule" + } + ] + }, + "requestHeaderOptions": { + "allOf": [ + { + "$ref": "#/definitions/RequestHeaderOptions" + } + ] + }, + "resourceTypes": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceType" + } + }, + "management": { + "allOf": [ + { + "$ref": "#/definitions/ResourceProviderManagement" + } + ] + }, + "capabilities": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceProviderCapabilities" + } + }, + "metadata": {}, + "globalNotificationEndpoints": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceProviderEndpoint" + } + }, + "reRegisterSubscriptionMetadata": { + "allOf": [ + { + "$ref": "#/definitions/ReRegisterSubscriptionMetadata" + } + ] + } + } + }, + "CheckinManifestInfo": { + "required": [ + "isCheckedIn", + "statusMessage" + ], + "type": "object", + "properties": { + "isCheckedIn": { + "type": "boolean" + }, + "statusMessage": { + "type": "string" + }, + "pullRequest": { + "type": "string" + }, + "commitId": { + "type": "string" + } + } + }, + "NotificationEndpoint": { + "type": "object", + "properties": { + "notificationDestination": { + "type": "string" + }, + "locations": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "NotificationRegistrationProperties": { + "type": "object", + "properties": { + "notificationMode": { + "enum": [ + "NotSpecified", + "EventHub", + "WebHook" + ], + "type": "string", + "x-ms-enum": { + "name": "NotificationMode", + "modelAsString": true + } + }, + "messageScope": { + "enum": [ + "NotSpecified", + "RegisteredSubscriptions" + ], + "type": "string", + "x-ms-enum": { + "name": "MessageScope", + "modelAsString": true + } + }, + "includedEvents": { + "type": "array", + "items": { + "type": "string" + } + }, + "notificationEndpoints": { + "type": "array", + "items": { + "$ref": "#/definitions/NotificationEndpoint" + } + }, + "provisioningState": { + "$ref": "#/definitions/ProvisioningState", + "description": "The provisioned state of the resource." + } + } + }, + "NotificationRegistration": { + "description": "The notification registration definition.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/NotificationRegistrationProperties" + } + ] + } + }, + "x-ms-azure-resource": true + }, + "NotificationRegistrationArrayResponseWithContinuation": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NotificationRegistration" + } + }, + "nextLink": { + "description": "The URL to get to the next set of results, if there are any.", + "type": "string" + } + } + }, + "OperationsDisplayDefinition": { + "required": [ + "description", + "operation", + "provider", + "resource" + ], + "type": "object", + "properties": { + "provider": { + "type": "string" + }, + "resource": { + "type": "string" + }, + "operation": { + "type": "string" + }, + "description": { + "type": "string" + } + } + }, + "OperationsDefinition": { + "required": [ + "display", + "name" + ], + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of the operation." + }, + "isDataAction": { + "type": "boolean", + "description": "Indicates whether the operation applies to data-plane." + }, + "origin": { + "enum": [ + "NotSpecified", + "User", + "System" + ], + "type": "string" + }, + "display": { + "description": "Display information of the operation.", + "allOf": [ + { + "$ref": "#/definitions/OperationsDisplayDefinition" + } + ] + }, + "actionType": { + "enum": [ + "NotSpecified", + "Internal" + ], + "type": "string" + }, + "properties": {} + }, + "description": "Properties of an Operation." + }, + "OperationsContent": { + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "Operations content.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/OperationsDefinition" + } + }, + "x-ms-azure-resource": true + }, + "OperationsPutContent": { + "required": [ + "contents" + ], + "type": "object", + "properties": { + "contents": { + "type": "array", + "items": { + "$ref": "#/definitions/OperationsDefinition" + } + } + } + }, + "OperationsDefinitionArrayResponseWithContinuation": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/OperationsDefinition" + } + }, + "nextLink": { + "description": "The URL to get to the next set of results, if there are any.", + "type": "string" + } + } + }, + "LightHouseAuthorization": { + "required": [ + "principalId", + "roleDefinitionId" + ], + "type": "object", + "properties": { + "principalId": { + "type": "string" + }, + "roleDefinitionId": { + "type": "string" + } + } + }, + "ThirdPartyProviderAuthorization": { + "type": "object", + "properties": { + "authorizations": { + "type": "array", + "items": { + "$ref": "#/definitions/LightHouseAuthorization" + } + }, + "managedByTenantId": { + "type": "string" + } + } + }, + "ProviderHubMetadata": { + "type": "object", + "properties": { + "providerAuthorizations": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceProviderAuthorization" + } + }, + "providerAuthentication": { + "allOf": [ + { + "$ref": "#/definitions/ResourceProviderAuthentication" + } + ] + }, + "thirdPartyProviderAuthorization": { + "allOf": [ + { + "$ref": "#/definitions/ThirdPartyProviderAuthorization" + } + ] + } + } + }, + "SubscriptionStateOverrideAction": { + "required": [ + "action", + "state" + ], + "type": "object", + "properties": { + "state": { + "enum": [ + "Registered", + "Unregistered", + "Warned", + "Suspended", + "Deleted", + "WarnedToRegistered", + "WarnedToSuspended", + "WarnedToDeleted", + "WarnedToUnregistered", + "SuspendedToRegistered", + "SuspendedToWarned", + "SuspendedToDeleted", + "SuspendedToUnregistered" + ], + "type": "string", + "x-ms-enum": { + "name": "SubscriptionTransitioningState", + "modelAsString": true + } + }, + "action": { + "enum": [ + "NotDefined", + "DeleteAllResources", + "SoftDeleteAllResources", + "NoOp", + "BillingCancellation", + "UndoSoftDelete" + ], + "type": "string", + "x-ms-enum": { + "name": "SubscriptionNotificationOperation", + "modelAsString": true + } + } + } + }, + "SubscriptionLifecycleNotificationSpecifications": { + "type": "object", + "properties": { + "subscriptionStateOverrideActions": { + "type": "array", + "items": { + "$ref": "#/definitions/SubscriptionStateOverrideAction" + } + }, + "softDeleteTTL": { + "format": "duration", + "type": "string" + } + } + }, + "TemplateDeploymentOptions": { + "type": "object", + "properties": { + "preflightSupported": { + "type": "boolean" + }, + "preflightOptions": { + "type": "array", + "items": { + "enum": [ + "None", + "ContinueDeploymentOnFailure", + "DefaultValidationOnly" + ], + "type": "string", + "x-ms-enum": { + "name": "PreflightOption", + "modelAsString": true + } + } + } + } + }, + "ResourceProviderManifestProperties": { + "type": "object", + "properties": { + "providerAuthentication": { + "allOf": [ + { + "$ref": "#/definitions/ResourceProviderAuthentication" + } + ] + }, + "providerAuthorizations": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceProviderAuthorization" + } + }, + "namespace": { + "type": "string" + }, + "providerVersion": { + "type": "string" + }, + "providerType": { + "enum": [ + "NotSpecified", + "Internal", + "External", + "Hidden", + "RegistrationFree", + "LegacyRegistrationRequired", + "TenantOnly", + "AuthorizationFree" + ], + "type": "string", + "x-ms-enum": { + "name": "ResourceProviderType", + "modelAsString": true + } + }, + "requiredFeatures": { + "type": "array", + "items": { + "type": "string" + } + }, + "featuresRule": { + "allOf": [ + { + "$ref": "#/definitions/FeaturesRule" + } + ] + }, + "requestHeaderOptions": { + "allOf": [ + { + "$ref": "#/definitions/RequestHeaderOptions" + } + ] + }, + "management": { + "allOf": [ + { + "$ref": "#/definitions/ResourceProviderManagement" + } + ] + }, + "capabilities": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceProviderCapabilities" + } + }, + "metadata": {} + } + }, + "ProviderRegistrationProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ResourceProviderManifestProperties" + } + ], + "properties": { + "providerHubMetadata": { + "allOf": [ + { + "$ref": "#/definitions/ProviderHubMetadata" + } + ] + }, + "provisioningState": { + "$ref": "#/definitions/ProvisioningState", + "description": "The provisioned state of the resource." + } + } + }, + "ProviderRegistration": { + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/ProviderRegistrationProperties" + } + ] + } + }, + "x-ms-azure-resource": true + }, + "ProviderRegistrationArrayResponseWithContinuation": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ProviderRegistration" + } + }, + "nextLink": { + "description": "The URL to get to the next set of results, if there are any.", + "type": "string" + } + } + }, + "ResourceTypeExtension": { + "type": "object", + "properties": { + "endpointUri": { + "type": "string" + }, + "extensionCategories": { + "type": "array", + "items": { + "enum": [ + "NotSpecified", + "ResourceCreationValidate", + "ResourceCreationBegin", + "ResourceCreationCompleted", + "ResourceReadValidate", + "ResourceReadBegin", + "ResourcePatchValidate", + "ResourcePatchCompleted", + "ResourceDeletionValidate", + "ResourceDeletionBegin", + "ResourceDeletionCompleted", + "ResourcePostAction", + "SubscriptionLifecycleNotification", + "ResourcePatchBegin", + "ResourceMoveBegin", + "ResourceMoveCompleted" + ], + "type": "string", + "x-ms-enum": { + "name": "ExtensionCategory", + "modelAsString": true + } + } + }, + "timeout": { + "format": "duration", + "type": "string" + } + } + }, + "ResourceTypeEndpoint": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + } + }, + "locations": { + "type": "array", + "items": { + "type": "string" + } + }, + "requiredFeatures": { + "type": "array", + "items": { + "type": "string" + } + }, + "featuresRule": { + "allOf": [ + { + "$ref": "#/definitions/FeaturesRule" + } + ] + }, + "extensions": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceTypeExtension" + } + }, + "timeout": { + "format": "duration", + "type": "string" + } + } + }, + "ExtensionOptions": { + "type": "object", + "properties": { + "request": { + "type": "array", + "items": { + "enum": [ + "NotSpecified", + "DoNotMergeExistingReadOnlyAndSecretProperties", + "IncludeInternalMetadata" + ], + "type": "string", + "x-ms-enum": { + "name": "ExtensionOptionType", + "modelAsString": true + } + } + }, + "response": { + "type": "array", + "items": { + "enum": [ + "NotSpecified", + "DoNotMergeExistingReadOnlyAndSecretProperties", + "IncludeInternalMetadata" + ], + "type": "string", + "x-ms-enum": { + "name": "ExtensionOptionType", + "modelAsString": true + } + } + } + } + }, + "ResourceTypeExtensionOptions": { + "type": "object", + "properties": { + "resourceCreationBegin": { + "allOf": [ + { + "$ref": "#/definitions/ExtensionOptions" + } + ] + } + } + }, + "SwaggerSpecification": { + "type": "object", + "properties": { + "apiVersions": { + "type": "array", + "items": { + "type": "string" + } + }, + "swaggerSpecFolderUri": { + "type": "string" + } + } + }, + "CheckNameAvailabilitySpecifications": { + "type": "object", + "properties": { + "enableDefaultValidation": { + "type": "boolean" + }, + "resourceTypesWithCustomValidation": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "ResourceMovePolicy": { + "type": "object", + "properties": { + "validationRequired": { + "type": "boolean" + }, + "crossResourceGroupMoveEnabled": { + "type": "boolean" + }, + "crossSubscriptionMoveEnabled": { + "type": "boolean" + } + } + }, + "ResourceConcurrencyControlOption": { + "type": "object", + "properties": { + "policy": { + "enum": [ + "NotSpecified", + "SynchronizeBeginExtension" + ], + "type": "string", + "x-ms-enum": { + "name": "Policy", + "modelAsString": true + } + } + } + }, + "ResourceGraphConfiguration": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + }, + "apiVersion": { + "type": "string" + } + } + }, + "ResourceTypeRegistrationProperties": { + "type": "object", + "properties": { + "routingType": { + "enum": [ + "Default", + "ProxyOnly", + "HostBased", + "Extension", + "Tenant", + "Fanout", + "LocationBased", + "Failover", + "CascadeExtension" + ], + "type": "string", + "x-ms-enum": { + "name": "RoutingType", + "modelAsString": true + } + }, + "regionality": { + "enum": [ + "NotSpecified", + "Global", + "Regional" + ], + "type": "string", + "x-ms-enum": { + "name": "Regionality", + "modelAsString": true + } + }, + "endpoints": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceTypeEndpoint" + } + }, + "extensionOptions": { + "allOf": [ + { + "$ref": "#/definitions/ResourceTypeExtensionOptions" + } + ] + }, + "marketplaceType": { + "enum": [ + "NotSpecified", + "AddOn", + "Bypass", + "Store" + ], + "type": "string" + }, + "swaggerSpecifications": { + "type": "array", + "items": { + "$ref": "#/definitions/SwaggerSpecification" + } + }, + "allowedUnauthorizedActions": { + "type": "array", + "items": { + "type": "string" + } + }, + "authorizationActionMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/AuthorizationActionMapping" + } + }, + "linkedAccessChecks": { + "type": "array", + "items": { + "$ref": "#/definitions/LinkedAccessCheck" + } + }, + "defaultApiVersion": { + "type": "string" + }, + "loggingRules": { + "type": "array", + "items": { + "$ref": "#/definitions/LoggingRule" + } + }, + "throttlingRules": { + "type": "array", + "items": { + "$ref": "#/definitions/ThrottlingRule" + } + }, + "requiredFeatures": { + "type": "array", + "items": { + "type": "string" + } + }, + "featuresRule": { + "allOf": [ + { + "$ref": "#/definitions/FeaturesRule" + } + ] + }, + "enableAsyncOperation": { + "type": "boolean" + }, + "provisioningState": { + "$ref": "#/definitions/ProvisioningState", + "description": "The provisioned state of the resource." + }, + "enableThirdPartyS2S": { + "type": "boolean" + }, + "subscriptionLifecycleNotificationSpecifications": { + "allOf": [ + { + "$ref": "#/definitions/SubscriptionLifecycleNotificationSpecifications" + } + ] + }, + "isPureProxy": { + "type": "boolean" + }, + "identityManagement": { + "allOf": [ + { + "$ref": "#/definitions/IdentityManagementProperties" + } + ] + }, + "checkNameAvailabilitySpecifications": { + "allOf": [ + { + "$ref": "#/definitions/CheckNameAvailabilitySpecifications" + } + ] + }, + "disallowedActionVerbs": { + "type": "array", + "items": { + "type": "string" + } + }, + "serviceTreeInfos": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceTreeInfo" + } + }, + "requestHeaderOptions": { + "allOf": [ + { + "$ref": "#/definitions/RequestHeaderOptions" + } + ] + }, + "subscriptionStateRules": { + "type": "array", + "items": { + "$ref": "#/definitions/SubscriptionStateRule" + } + }, + "templateDeploymentOptions": { + "allOf": [ + { + "$ref": "#/definitions/TemplateDeploymentOptions" + } + ] + }, + "extendedLocations": { + "type": "array", + "items": { + "$ref": "#/definitions/ExtendedLocationOptions" + } + }, + "resourceMovePolicy": { + "allOf": [ + { + "$ref": "#/definitions/ResourceMovePolicy" + } + ] + }, + "resourceDeletionPolicy": { + "enum": [ + "NotSpecified", + "CascadeDeleteAll", + "CascadeDeleteProxyOnlyChildren" + ], + "type": "string", + "x-ms-enum": { + "name": "ResourceDeletionPolicy", + "modelAsString": true + } + }, + "resourceConcurrencyControlOptions": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/ResourceConcurrencyControlOption" + } + }, + "resourceGraphConfiguration": { + "allOf": [ + { + "$ref": "#/definitions/ResourceGraphConfiguration" + } + ] + }, + "management": { + "allOf": [ + { + "$ref": "#/definitions/ResourceProviderManagement" + } + ] + } + } + }, + "ResourceTypeRegistration": { + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/ResourceTypeRegistrationProperties" + } + ] + } + }, + "x-ms-azure-resource": true + }, + "ResourceTypeRegistrationArrayResponseWithContinuation": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceTypeRegistration" + } + }, + "nextLink": { + "description": "The URL to get to the next set of results, if there are any.", + "type": "string" + } + } + }, + "SkuCapability": { + "required": [ + "name", + "value" + ], + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "value": { + "type": "string" + } + } + }, + "SkuZoneDetail": { + "type": "object", + "properties": { + "name": { + "type": "array", + "items": { + "type": "string" + } + }, + "capabilities": { + "type": "array", + "items": { + "$ref": "#/definitions/SkuCapability" + } + } + } + }, + "SkuLocationInfo": { + "required": [ + "location" + ], + "type": "object", + "properties": { + "location": { + "type": "string" + }, + "zones": { + "type": "array", + "items": { + "type": "string" + } + }, + "zoneDetails": { + "type": "array", + "items": { + "$ref": "#/definitions/SkuZoneDetail" + } + }, + "extendedLocations": { + "type": "array", + "items": { + "type": "string" + } + }, + "type": { + "enum": [ + "NotSpecified", + "EdgeZone", + "ArcZone" + ], + "type": "string" + } + } + }, + "SkuCapacity": { + "required": [ + "minimum" + ], + "type": "object", + "properties": { + "minimum": { + "format": "int32", + "type": "integer" + }, + "maximum": { + "format": "int32", + "type": "integer" + }, + "default": { + "format": "int32", + "type": "integer" + }, + "scaleType": { + "enum": [ + "None", + "Manual", + "Automatic" + ], + "type": "string", + "x-ms-enum": { + "name": "SkuScaleType", + "modelAsString": true + } + } + } + }, + "SkuCost": { + "required": [ + "meterId" + ], + "type": "object", + "properties": { + "meterId": { + "type": "string" + }, + "quantity": { + "format": "int32", + "type": "integer" + }, + "extendedUnit": { + "type": "string" + } + } + }, + "SkuSetting": { + "required": [ + "name" + ], + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "tier": { + "type": "string" + }, + "size": { + "type": "string" + }, + "family": { + "type": "string" + }, + "kind": { + "type": "string" + }, + "locations": { + "type": "array", + "items": { + "type": "string" + } + }, + "locationInfo": { + "type": "array", + "items": { + "$ref": "#/definitions/SkuLocationInfo" + } + }, + "requiredQuotaIds": { + "type": "array", + "items": { + "type": "string" + } + }, + "requiredFeatures": { + "type": "array", + "items": { + "type": "string" + } + }, + "capacity": { + "allOf": [ + { + "$ref": "#/definitions/SkuCapacity" + } + ] + }, + "costs": { + "type": "array", + "items": { + "$ref": "#/definitions/SkuCost" + } + }, + "capabilities": { + "type": "array", + "items": { + "$ref": "#/definitions/SkuCapability" + } + } + } + }, + "ResourceTypeSku": { + "required": [ + "skuSettings" + ], + "type": "object", + "properties": { + "skuSettings": { + "type": "array", + "items": { + "$ref": "#/definitions/SkuSetting" + } + }, + "provisioningState": { + "$ref": "#/definitions/ProvisioningState", + "description": "The provisioned state of the resource." + } + } + }, + "SkuResource": { + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/ResourceTypeSku" + } + ] + } + }, + "x-ms-azure-resource": true + }, + "SkuResourceArrayResponseWithContinuation": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SkuResource" + } + }, + "nextLink": { + "description": "The URL to get to the next set of results, if there are any.", + "type": "string" + } + } + } + }, + "parameters": { + "SelectParameter": { + "in": "query", + "name": "$select", + "description": "An OData $select clause. Used to select the properties to be returned in the GET response.", + "type": "string", + "x-ms-parameter-location": "method", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + "FilterParameter": { + "in": "query", + "name": "$filter", + "description": "An OData $filter clause. Used to filter results that are returned in the GET response.", + "type": "string", + "x-ms-parameter-location": "method", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + "ProviderNamespaceParameter": { + "in": "path", + "name": "providerNamespace", + "description": "The name of the resource provider hosted within ProviderHub.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "NestedResourceTypeFirstParameter": { + "in": "path", + "name": "nestedResourceTypeFirst", + "description": "The first child resource type.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "NestedResourceTypeSecondParameter": { + "in": "path", + "name": "nestedResourceTypeSecond", + "description": "The second child resource type.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "NestedResourceTypeThirdParameter": { + "in": "path", + "name": "nestedResourceTypeThird", + "description": "The third child resource type.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "GetRolloutNameParameter": { + "in": "path", + "name": "rolloutName", + "description": "The rollout name.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "EnvironmentParameter": { + "in": "path", + "name": "environment", + "description": "The environment.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "SkuParameter": { + "in": "path", + "name": "sku", + "description": "The SKU.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "GetNotificationRegistrationNameParameter": { + "in": "path", + "name": "notificationRegistrationName", + "description": "The notification registration.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "GetAsyncOperationStatusIdParameter": { + "in": "path", + "name": "asyncOperationStatusId", + "description": "The async operation status ID.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "GetApplicationIdParameter": { + "in": "path", + "name": "applicationId", + "description": "The application ID.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "GetAccountNameParameter": { + "in": "path", + "name": "accountName", + "description": "The available account name.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "GetResourceTypeParameter": { + "in": "path", + "name": "resourceType", + "description": "The resource type.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/providerhub/resource-manager/readme.azureresourceschema.md b/specification/providerhub/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 8bfa3a7f2afd..000000000000 --- a/specification/providerhub/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,24 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-providerhub-2020-11-20 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-providerhub-2020-11-20 and azureresourceschema - -``` yaml $(tag) == 'schema-providerhub-2020-11-20' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ProviderHub/stable/2020-11-20/providerhub.json - -``` diff --git a/specification/providerhub/resource-manager/readme.go.md b/specification/providerhub/resource-manager/readme.go.md index 4a52f37366c6..75fafca9c4c6 100644 --- a/specification/providerhub/resource-manager/readme.go.md +++ b/specification/providerhub/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: providerhub clear-output-folder: true ``` diff --git a/specification/providerhub/resource-manager/readme.md b/specification/providerhub/resource-manager/readme.md index 1cbb102e5f8f..97fa0ce13eb1 100644 --- a/specification/providerhub/resource-manager/readme.md +++ b/specification/providerhub/resource-manager/readme.md @@ -30,6 +30,19 @@ openapi-subtype: rpaas tag: package-2020-11-20 ``` +### Tag: package-2021-05-01-preview + +These settings apply only when `--tag=package-2021-05-01-preview` is specified on the command line. + +```yaml $(tag) == 'package-2021-05-01-preview' +input-file: + - Microsoft.ProviderHub/preview/2021-05-01-preview/providerhub.json +directive: + - suppress: R4009 + from: providerhub.json + reason: This version doesn't support systemData. +``` + ### Tag: package-2020-11-20 These settings apply only when `--tag=package-2020-11-20` is specified on the command line. diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Discovery_AutoComplete.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Discovery_AutoComplete.json new file mode 100644 index 000000000000..4b3f8b7b6515 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Discovery_AutoComplete.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "autoCompleteRequest": { + "keywords": "tes", + "filter": { + "and": [ + { + "entityType": "azure_blob_path", + "includeSubTypes": false + } + ] + }, + "limit": 10 + }, + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "text": "test", + "queryPlusText": "test" + }, + { + "text": "testconfiguration", + "queryPlusText": "testconfiguration" + }, + { + "text": "testresources", + "queryPlusText": "testresources" + } + ] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Discovery_Query.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Discovery_Query.json new file mode 100644 index 000000000000..25831aa08b56 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Discovery_Query.json @@ -0,0 +1,150 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "searchRequest": { + "keywords": "copyfile.csv", + "filter": { + "and": [ + { + "not": { + "or": [ + { + "attributeName": "size", + "operator": "eq", + "attributeValue": 0 + }, + { + "attributeName": "fileSize", + "operator": "eq", + "attributeValue": 0 + } + ] + } + }, + { + "not": { + "classification": "MICROSOFT.SYSTEM.TEMP_FILE" + } + }, + { + "not": { + "or": [ + { + "entityType": "AtlasGlossaryTerm" + }, + { + "entityType": "AtlasGlossary" + } + ] + } + } + ] + }, + "limit": 2, + "offset": 0, + "facets": [ + { + "facet": "assetType", + "count": 0, + "sort": { + "count": "desc" + } + }, + { + "facet": "classification", + "count": 10, + "sort": { + "count": "desc" + } + }, + { + "facet": "contactId", + "count": 10, + "sort": { + "count": "desc" + } + }, + { + "facet": "label", + "count": 10, + "sort": { + "count": "desc" + } + }, + { + "facet": "term", + "count": 10, + "sort": { + "count": "desc" + } + }, + { + "facet": "classificationCategory", + "count": 0, + "sort": { + "count": "desc" + } + }, + { + "facet": "fileExtension", + "count": 0, + "sort": { + "count": "desc" + } + } + ] + }, + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "body": { + "@search.count": 339, + "value": [ + { + "@search.score": 1.0, + "id": "97dc2d61-ef37-4cfd-8be8-d0a8b3524c1a", + "qualifiedName": "Office of the CEO@Glossary", + "name": "Office of the CEO", + "description": null, + "owner": null, + "entityType": "AtlasGlossaryTerm", + "classification": [], + "label": [], + "assetType": [], + "term": [], + "contact": [] + }, + { + "@search.score": 1.0, + "id": "477b0278-81e3-473f-a2d4-d134f1b52f84", + "qualifiedName": "Government@Glossary", + "name": "Government", + "description": null, + "owner": null, + "entityType": "AtlasGlossaryTerm", + "classification": [], + "label": [], + "assetType": [], + "term": [], + "contact": [] + }, + { + "@search.score": 1.0, + "id": "e09577ab-8d46-48af-b4b6-9476e2b5afb7", + "qualifiedName": "Diversified@Glossary", + "name": "Diversified", + "description": null, + "owner": null, + "entityType": "AtlasGlossaryTerm", + "classification": [], + "label": [], + "assetType": [], + "term": [], + "contact": [] + } + ] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Discovery_Query_And.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Discovery_Query_And.json new file mode 100644 index 000000000000..65c5260a85d5 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Discovery_Query_And.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "searchRequest": { + "keywords": null, + "limit": 2, + "filter": { + "and": [ + { + "entityType": "azure_blob_path" + }, + { + "attributeName": "qualifiedName", + "operator": "contains", + "attributeValue": ".csv" + } + ] + } + }, + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "body": { + "@search.count": 5, + "value": [ + { + "@search.score": 1.0, + "@search.highlights": { + "qualifiedName": [ + "https://adctestaccount.blob.core.windows.net/adcresource/csv/sourcedata.csv" + ] + }, + "id": "63b92968-c9ac-4af8-8cff-f61d147bbf88", + "qualifiedName": "https://adctestaccount.blob.core.windows.net/adcresource/csv/sourcedata.csv", + "name": "sourcedata.csv", + "description": null, + "owner": null, + "entityType": "azure_blob_path", + "classification": [], + "label": [ + "Microsoft.Label.9FBDE396_1A24_4C79_8EDF_9254A0F35055" + ], + "assetType": [ + "Azure Blob Storage" + ], + "term": [], + "contact": [] + }, + { + "@search.score": 1.0, + "@search.highlights": { + "qualifiedName": [ + "https://adctestaccount.blob.core.windows.net/adcresource/csv/AllTypes.csv" + ] + }, + "id": "2605db54-086d-4d6c-adb6-f0bbed6c6eab", + "qualifiedName": "https://adctestaccount.blob.core.windows.net/adcresource/csv/AllTypes.csv", + "name": "AllTypes.csv", + "description": null, + "owner": null, + "entityType": "azure_blob_path", + "classification": [], + "label": [ + "Microsoft.Label.9FBDE396_1A24_4C79_8EDF_9254A0F35055" + ], + "assetType": [ + "Azure Blob Storage" + ], + "term": [], + "contact": [] + } + ] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Discovery_Query_AndOrNested.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Discovery_Query_AndOrNested.json new file mode 100644 index 000000000000..7435ef4d612d --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Discovery_Query_AndOrNested.json @@ -0,0 +1,95 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "searchRequest": { + "keywords": null, + "limit": 2, + "filter": { + "and": [ + { + "entityType": "azure_blob_path" + }, + { + "attributeName": "qualifiedName", + "operator": "contains", + "attributeValue": ".csv" + }, + { + "or": [ + { + "attributeName": "name", + "operator": "eq", + "attributeValue": "sourcedata.csv" + }, + { + "attributeName": "name", + "operator": "startswith", + "attributeValue": "AllTypes" + } + ] + } + ] + } + }, + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "body": { + "@search.count": 2, + "value": [ + { + "@search.score": 1.0, + "@search.highlights": { + "qualifiedName": [ + "https://adctestaccount.blob.core.windows.net/adcresource/csv/sourcedata.csv" + ] + }, + "id": "63b92968-c9ac-4af8-8cff-f61d147bbf88", + "qualifiedName": "https://adctestaccount.blob.core.windows.net/adcresource/csv/sourcedata.csv", + "name": "sourcedata.csv", + "description": null, + "owner": null, + "entityType": "azure_blob_path", + "classification": [], + "label": [ + "Microsoft.Label.9FBDE396_1A24_4C79_8EDF_9254A0F35055" + ], + "assetType": [ + "Azure Blob Storage" + ], + "term": [], + "contact": [] + }, + { + "@search.score": 1.0, + "@search.highlights": { + "qualifiedName": [ + "https://adctestaccount.blob.core.windows.net/adcresource/csv/AllTypes.csv" + ], + "name": [ + "AllTypes.csv" + ] + }, + "id": "2605db54-086d-4d6c-adb6-f0bbed6c6eab", + "qualifiedName": "https://adctestaccount.blob.core.windows.net/adcresource/csv/AllTypes.csv", + "name": "AllTypes.csv", + "description": null, + "owner": null, + "entityType": "azure_blob_path", + "classification": [], + "label": [ + "Microsoft.Label.9FBDE396_1A24_4C79_8EDF_9254A0F35055" + ], + "assetType": [ + "Azure Blob Storage" + ], + "term": [], + "contact": [], + "@search.text": "AllTypes.csv" + } + ] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Discovery_Query_AssetType.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Discovery_Query_AssetType.json new file mode 100644 index 000000000000..15def0d52695 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Discovery_Query_AssetType.json @@ -0,0 +1,136 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "searchRequest": { + "keywords": null, + "limit": 2, + "filter": { + "or": [ + { + "assetType": "SQL Server" + }, + { + "assetType": "Azure SQL Server" + }, + { + "assetType": "Azure SQL Database" + }, + { + "assetType": "Azure SQL Data Warehouse" + }, + { + "assetType": "Azure SQL Managed Instance" + }, + { + "assetType": "Azure Storage Account" + }, + { + "assetType": "Azure Blob Storage" + }, + { + "assetType": "Azure Files" + }, + { + "assetType": "Azure Table Storage" + }, + { + "assetType": "Azure Data Lake Storage Gen1" + }, + { + "assetType": "Azure Data Lake Storage Gen2" + }, + { + "assetType": "Azure Cosmos DB" + }, + { + "assetType": "Azure Data Factory" + }, + { + "assetType": "Azure Cognitive Search" + }, + { + "assetType": "Power BI" + }, + { + "assetType": "Azure Data Explorer" + }, + { + "assetType": "Amazon S3" + }, + { + "assetType": "Azure Data Share" + }, + { + "assetType": "Teradata" + }, + { + "assetType": "SAP S4HANA" + }, + { + "assetType": "SAP ECC" + }, + { + "assetType": "SQL Server Integration Services" + }, + { + "assetType": "hive" + }, + { + "assetType": "Azure Database for MySQL" + }, + { + "assetType": "Azure Database for MariaDB" + }, + { + "assetType": "Azure Database for PostgreSQL" + }, + { + "assetType": "Azure Synapse Analytics" + } + ] + } + }, + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "body": { + "@search.count": 5155, + "value": [ + { + "@search.score": 1.0, + "id": "24c16e53-1bfd-4d6c-b4ce-b1f6f6f60000", + "qualifiedName": "mssql://adcsqlmi.public.1bed77b0fc93.database.windows.net:3342/adcsqlmidb/dbo/onpremsqltosqlmitestlineage_202008100551", + "name": "onpremsqltosqlmitestlineage_202008100551", + "description": null, + "owner": null, + "entityType": "azure_sql_mi_table", + "classification": [], + "label": [], + "assetType": [ + "Azure SQL Managed Instance" + ], + "term": [], + "contact": [] + }, + { + "@search.score": 1.0, + "id": "d7b516fc-5d38-40f8-baeb-72f6f6f60000", + "qualifiedName": "mssql://adcsqlmi.public.1bed77b0fc93.database.windows.net:3342/adcsqlmidb/dbo/adlsgen1tosqlmitestlineage_202008020130", + "name": "adlsgen1tosqlmitestlineage_202008020130", + "description": null, + "owner": null, + "entityType": "azure_sql_mi_table", + "classification": [], + "label": [], + "assetType": [ + "Azure SQL Managed Instance" + ], + "term": [], + "contact": [] + } + ] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Discovery_Query_Attribute.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Discovery_Query_Attribute.json new file mode 100644 index 000000000000..69b30a5f6670 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Discovery_Query_Attribute.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "searchRequest": { + "keywords": null, + "limit": 2, + "filter": { + "attributeName": "name", + "operator": "eq", + "attributeValue": "sourcedata.csv" + } + }, + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "body": { + "@search.count": 3, + "value": [ + { + "@search.score": 1.0, + "id": "63b92968-c9ac-4af8-8cff-f61d147bbf88", + "qualifiedName": "https://adctestaccount.blob.core.windows.net/adcresource/csv/sourcedata.csv", + "name": "sourcedata.csv", + "description": null, + "owner": null, + "entityType": "azure_blob_path", + "classification": [], + "label": [ + "Microsoft.Label.9FBDE396_1A24_4C79_8EDF_9254A0F35055" + ], + "assetType": [ + "Azure Blob Storage" + ], + "term": [], + "contact": [] + }, + { + "@search.score": 1.0, + "id": "55b2290d-e11d-4ed2-8c7a-0d8d35eb6254", + "qualifiedName": "https://adctestgen2account.dfs.core.windows.net/adcresource/csv/sourcedata.csv", + "name": "sourcedata.csv", + "description": null, + "owner": "$superuser", + "entityType": "azure_datalake_gen2_path", + "classification": [], + "label": [ + "Microsoft.Label.9FBDE396_1A24_4C79_8EDF_9254A0F35055" + ], + "assetType": [ + "Azure Data Lake Storage Gen2" + ], + "term": [], + "contact": [] + } + ] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Discovery_Query_Classification.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Discovery_Query_Classification.json new file mode 100644 index 000000000000..896f7d9a960f --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Discovery_Query_Classification.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "searchRequest": { + "keywords": null, + "limit": 2, + "filter": { + "classification": "MICROSOFT.PERSONAL.EMAIL", + "includeSubClassifications": true + } + }, + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "body": { + "@search.count": 5, + "value": [ + { + "@search.score": 1.0, + "id": "b9638b91-884f-4e5e-98b5-29f6f6f60000", + "qualifiedName": "mssql://adcdbserver.database.windows.net/adcsqldb/SalesLT/Customer", + "name": "Customer", + "description": null, + "owner": null, + "entityType": "azure_sql_table", + "classification": [ + "MICROSOFT.PERSONAL.NAME", + "MICROSOFT.PERSONAL.EU.PHONE_NUMBER", + "MICROSOFT.PERSONAL.US.PHONE_NUMBER", + "MICROSOFT.PERSONAL.EMAIL" + ], + "label": [], + "assetType": [ + "Azure SQL Database" + ], + "term": [], + "contact": [] + }, + { + "@search.score": 1.0, + "id": "01aefb9a-61cd-4a02-a572-70f6f6f60000", + "qualifiedName": "mssql://adcdbserver.database.windows.net/adcdw/dbo/ProspectiveBuyer", + "name": "ProspectiveBuyer", + "description": null, + "owner": null, + "entityType": "azure_sql_dw_table", + "classification": [ + "MICROSOFT.GOVERNMENT.CITY_NAME", + "MICROSOFT.GOVERNMENT.US.STATE", + "MICROSOFT.PERSONAL.NAME", + "MICROSOFT.PERSONAL.EU.PHONE_NUMBER", + "MICROSOFT.PERSONAL.EMAIL" + ], + "label": [], + "assetType": [ + "Azure SQL Data Warehouse" + ], + "term": [], + "contact": [] + } + ] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Discovery_Query_Facet.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Discovery_Query_Facet.json new file mode 100644 index 000000000000..c4c8c1aef5c4 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Discovery_Query_Facet.json @@ -0,0 +1,164 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "searchRequest": { + "keywords": null, + "filter": { + "and": [ + { + "not": { + "entityType": "AtlasGlossaryTerm", + "includeSubTypes": false + } + } + ] + }, + "limit": 2, + "offset": 0, + "facets": [ + { + "facet": "assetType", + "count": 0 + }, + { + "facet": "classification", + "count": 10 + }, + { + "facet": "term", + "count": 10 + }, + { + "facet": "fileExtension", + "count": 10 + }, + { + "facet": "label", + "count": 10 + }, + { + "facet": "classificationCategory", + "count": 10 + } + ] + }, + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "body": { + "@search.count": 5156, + "@search.facets": { + "classification": [ + { + "count": 8, + "value": "MICROSOFT.PERSONAL.NAME" + }, + { + "count": 6, + "value": "MICROSOFT.PERSONAL.EU.PHONE_NUMBER" + }, + { + "count": 5, + "value": "MICROSOFT.PERSONAL.EMAIL" + }, + { + "count": 5, + "value": "MICROSOFT.PERSONAL.US.PHONE_NUMBER" + }, + { + "count": 4, + "value": "MICROSOFT.GOVERNMENT.CITY_NAME" + }, + { + "count": 2, + "value": "MICROSOFT.GOVERNMENT.US.STATE" + } + ], + "fileExtension": [], + "assetType": [ + { + "count": 1476, + "value": "Azure SQL Database" + }, + { + "count": 1358, + "value": "Azure SQL Data Warehouse" + }, + { + "count": 1331, + "value": "Azure SQL Managed Instance" + }, + { + "count": 293, + "value": "Azure Data Lake Storage Gen1" + }, + { + "count": 261, + "value": "Azure Blob Storage" + }, + { + "count": 231, + "value": "Azure Data Lake Storage Gen2" + }, + { + "count": 194, + "value": "Azure Files" + }, + { + "count": 18, + "value": "Azure Cosmos DB" + } + ], + "label": [ + { + "count": 835, + "value": "Microsoft.Label.9FBDE396_1A24_4C79_8EDF_9254A0F35055" + } + ], + "classificationCategory": [], + "term": [ + { + "count": 1, + "value": "terma" + } + ] + }, + "value": [ + { + "@search.score": 1.0, + "id": "24c16e53-1bfd-4d6c-b4ce-b1f6f6f60000", + "qualifiedName": "mssql://adcsqlmi.public.1bed77b0fc93.database.windows.net:3342/adcsqlmidb/dbo/onpremsqltosqlmitestlineage_202008100551", + "name": "onpremsqltosqlmitestlineage_202008100551", + "description": null, + "owner": null, + "entityType": "azure_sql_mi_table", + "classification": [], + "label": [], + "assetType": [ + "Azure SQL Managed Instance" + ], + "term": [], + "contact": [] + }, + { + "@search.score": 1.0, + "id": "d7b516fc-5d38-40f8-baeb-72f6f6f60000", + "qualifiedName": "mssql://adcsqlmi.public.1bed77b0fc93.database.windows.net:3342/adcsqlmidb/dbo/adlsgen1tosqlmitestlineage_202008020130", + "name": "adlsgen1tosqlmitestlineage_202008020130", + "description": null, + "owner": null, + "entityType": "azure_sql_mi_table", + "classification": [], + "label": [], + "assetType": [ + "Azure SQL Managed Instance" + ], + "term": [], + "contact": [] + } + ] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Discovery_Query_FileExtension.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Discovery_Query_FileExtension.json new file mode 100644 index 000000000000..394ed945850b --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Discovery_Query_FileExtension.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "searchRequest": { + "keywords": null, + "limit": 2, + "filter": { + "and": [ + { + "fileExtension": "txt" + } + ] + } + }, + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "body": { + "@search.count": 49, + "value": [ + { + "@search.score": 1.0, + "id": "bfecbcc3-1838-45fe-96d6-112de8a170f9", + "qualifiedName": "https://testaccount.blob.core.windows.net/editingintegration/backupCustomer.txt", + "name": "backupCustomer.txt", + "description": null, + "owner": null, + "entityType": "azure_blob_path", + "classification": [], + "label": [], + "assetType": [ + "Azure Blob Storage" + ], + "term": [], + "contact": [] + }, + { + "@search.score": 1.0, + "id": "14d857b9-e2c1-4118-8bfa-12e53ae6ce7f", + "qualifiedName": "https://testaccount.blob.core.windows.net/editingintegration/backupCustomer.txt", + "name": "backupCustomer.txt", + "description": null, + "owner": null, + "entityType": "azure_blob_path", + "classification": [], + "label": [], + "assetType": [ + "Azure Blob Storage" + ], + "term": [], + "contact": [] + } + ] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Discovery_Query_Id.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Discovery_Query_Id.json new file mode 100644 index 000000000000..959cafc600c1 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Discovery_Query_Id.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "searchRequest": { + "keywords": null, + "limit": 2, + "filter": { + "and": [ + { + "id": "bfecbcc3-1838-45fe-96d6-112de8a170f9" + } + ] + } + }, + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "body": { + "@search.count": 1, + "value": [ + { + "@search.score": 1.0, + "id": "bfecbcc3-1838-45fe-96d6-112de8a170f9", + "qualifiedName": "https://fexiaooneboxvvtbtdum.blob.core.windows.net/editingintegration/backupCustomer.txt", + "name": "backupCustomer.txt", + "description": null, + "owner": null, + "entityType": "azure_blob_path", + "classification": [], + "label": [], + "assetType": [ + "Azure Blob Storage" + ], + "term": [], + "contact": [] + } + ] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Discovery_Query_Not.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Discovery_Query_Not.json new file mode 100644 index 000000000000..dca4c2baa643 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Discovery_Query_Not.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "searchRequest": { + "keywords": null, + "limit": 2, + "filter": { + "not": { + "classification": "MICROSOFT.SYSTEM.TEMP_FILE" + } + } + }, + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "body": { + "@search.count": 5158, + "value": [ + { + "@search.score": 1.0, + "id": "11fd6e94-2dc6-4ebd-822c-caf6f6f60000", + "qualifiedName": "mssql://adcsqlmi.public.1bed77b0fc93.database.windows.net:3342/adcsqlmidb/dbo/adlsgen1tosqlmitestlineage_202008231230", + "name": "adlsgen1tosqlmitestlineage_202008231230", + "description": null, + "owner": null, + "entityType": "azure_sql_mi_table", + "classification": [], + "label": [], + "assetType": [ + "Azure SQL Managed Instance" + ], + "term": [], + "contact": [] + }, + { + "@search.score": 1.0, + "id": "1af82c87-798c-41a2-abab-93f6f6f60000", + "qualifiedName": "mssql://adcsqlmi.public.1bed77b0fc93.database.windows.net:3342/adcsqlmidb/dbo/adlsgen1tosqlmitestlineage_202009211230", + "name": "adlsgen1tosqlmitestlineage_202009211230", + "description": null, + "owner": null, + "entityType": "azure_sql_mi_table", + "classification": [], + "label": [], + "assetType": [ + "Azure SQL Managed Instance" + ], + "term": [], + "contact": [] + } + ] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Discovery_Query_Taxonomy.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Discovery_Query_Taxonomy.json new file mode 100644 index 000000000000..0aa8aed5d087 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Discovery_Query_Taxonomy.json @@ -0,0 +1,118 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "searchRequest": { + "keywords": "test", + "filter": { + "and": [ + { + "not": { + "or": [ + { + "attributeName": "size", + "operator": "eq", + "attributeValue": 0 + }, + { + "attributeName": "fileSize", + "operator": "eq", + "attributeValue": 0 + } + ] + } + }, + { + "not": { + "classification": "MICROSOFT.SYSTEM.TEMP_FILE" + } + }, + { + "not": { + "entityType": "AtlasGlossaryTerm", + "includeSubTypes": false + } + } + ] + }, + "limit": 2, + "offset": 0, + "facets": [ + { + "facet": "assetType", + "count": 0 + }, + { + "facet": "classification", + "count": 10 + }, + { + "facet": "terms", + "count": 10 + } + ], + "taxonomySetting": { + "assetTypes": [ + "Azure Blob Storage" + ], + "facet": { + "count": 10, + "sort": { + "count": "desc" + } + } + } + }, + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "body": { + "@search.count": 339, + "value": [ + { + "@search.score": 1.0, + "id": "97dc2d61-ef37-4cfd-8be8-d0a8b3524c1a", + "qualifiedName": "Office of the CEO@Glossary", + "name": "Office of the CEO", + "description": null, + "owner": null, + "entityType": "AtlasGlossaryTerm", + "classification": [], + "label": [], + "assetType": [], + "term": [], + "contact": [] + }, + { + "@search.score": 1.0, + "id": "477b0278-81e3-473f-a2d4-d134f1b52f84", + "qualifiedName": "Government@Glossary", + "name": "Government", + "description": null, + "owner": null, + "entityType": "AtlasGlossaryTerm", + "classification": [], + "label": [], + "assetType": [], + "term": [], + "contact": [] + }, + { + "@search.score": 1.0, + "id": "e09577ab-8d46-48af-b4b6-9476e2b5afb7", + "qualifiedName": "Diversified@Glossary", + "name": "Diversified", + "description": null, + "owner": null, + "entityType": "AtlasGlossaryTerm", + "classification": [], + "label": [], + "assetType": [], + "term": [], + "contact": [] + } + ] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Discovery_Query_Term.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Discovery_Query_Term.json new file mode 100644 index 000000000000..19cb80a947cd --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Discovery_Query_Term.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "searchRequest": { + "keywords": null, + "limit": 3, + "filter": { + "and": [ + { + "term": "TestTerm" + } + ] + } + }, + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "body": { + "@search.count": 1, + "value": [ + { + "@search.score": 1.0, + "id": "b20ac13a-7883-4376-b076-bac9f8f214a8", + "qualifiedName": "https://adcperftest_34f7fbad-a.blob.core.windows.net/tcphcontainer_34f7fbad-a", + "name": "tcphcontainer_34f7fbad-a", + "description": null, + "owner": null, + "entityType": "azure_blob_container", + "classification": [], + "assetType": [ + "Azure Blob Storage" + ], + "term": [ + { + "name": "TestTerm", + "glossaryName": "Glossary" + } + ], + "contact": [], + "label": [ + "Microsoft.Label.9FBDE396_1A24_4C79_8EDF_9254A0F35055" + ] + } + ] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Discovery_Query_TermOfGlossary.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Discovery_Query_TermOfGlossary.json new file mode 100644 index 000000000000..e85a59ba4a5d --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Discovery_Query_TermOfGlossary.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "searchRequest": { + "keywords": null, + "limit": 3, + "filter": { + "and": [ + { + "term": "TestTerm", + "glossaryName": "Glossary" + } + ] + } + }, + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "body": { + "@search.count": 1, + "value": [ + { + "@search.score": 1.0, + "id": "b20ac13a-7883-4376-b076-bac9f8f214a8", + "qualifiedName": "https://adcperftest_34f7fbad-a.blob.core.windows.net/tcphcontainer_34f7fbad-a", + "name": "tcphcontainer_34f7fbad-a", + "description": null, + "owner": null, + "entityType": "azure_blob_container", + "classification": [], + "assetType": [ + "Azure Blob Storage" + ], + "term": [ + { + "name": "TestTerm", + "glossaryName": "Glossary" + } + ], + "contact": [], + "label": [ + "Microsoft.Label.9FBDE396_1A24_4C79_8EDF_9254A0F35055" + ] + } + ] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Discovery_Query_Type.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Discovery_Query_Type.json new file mode 100644 index 000000000000..a0aa0cc0336d --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Discovery_Query_Type.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "searchRequest": { + "keywords": null, + "limit": 2, + "filter": { + "and": [ + { + "entityType": "azure_blob_path", + "includeSubTypes": false + } + ] + } + }, + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "body": { + "@search.count": 221, + "value": [ + { + "@search.score": 1.0, + "id": "1d797ddf-47bf-4151-8fe8-918590d62e70", + "qualifiedName": "https://adctestaccount.blob.core.windows.net/scanoutput/akkejidmzidikzkklszpegbzsmbhpblgfihd.csv", + "name": "akkejidmzidikzkklszpegbzsmbhpblgfihd.csv", + "description": null, + "owner": null, + "entityType": "azure_blob_path", + "classification": [], + "label": [ + "Microsoft.Label.9FBDE396_1A24_4C79_8EDF_9254A0F35055" + ], + "assetType": [ + "Azure Blob Storage" + ], + "term": [], + "contact": [] + }, + { + "@search.score": 1.0, + "id": "d3e83b17-c730-4898-94c8-58579cda04f6", + "qualifiedName": "https://adctestaccount.blob.core.windows.net/scanoutput/addkkaaczasfpzkjmhzacdezbgpcoohlpjlp.csv", + "name": "addkkaaczasfpzkjmhzacdezbgpcoohlpjlp.csv", + "description": null, + "owner": null, + "entityType": "azure_blob_path", + "classification": [], + "label": [ + "Microsoft.Label.9FBDE396_1A24_4C79_8EDF_9254A0F35055" + ], + "assetType": [ + "Azure Blob Storage" + ], + "term": [], + "contact": [] + } + ] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Discovery_Suggest.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Discovery_Suggest.json new file mode 100644 index 000000000000..dcfcb66a9c29 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Discovery_Suggest.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "suggestRequest": { + "keywords": "copyfile", + "filter": { + "and": [ + { + "entityType": "azure_blob_path", + "includeSubTypes": false + } + ] + }, + "limit": 10 + }, + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "@search.text": "copyfile.csv", + "@search.score": 9.81402, + "description": "a copied file", + "id": "af7a01b0-1b14-4ab6-83a5-12cb11a717ed", + "name": "copyfile.csv", + "owner": "$superuser", + "qualifiedName": "https://adctestaccount.blob.core.windows.net/adcresource/copyfile.csv", + "entityType": "azure_blob_path", + "assetType": [ + "Azure Blob Storage" + ], + "classification": [ + "MICROSOFT.GOVERNMENT.US.PASSPORT_NUMBER" + ], + "contact": [ + { + "id": "8a597ffc-6993-4772-ac25-86b7251e1234", + "info": "Expert for this entity", + "contactType": "Expert" + } + ], + "label": [ + "Microsoft.Label.9FBDE396_1A24_4C79_8EDF_9254A0F35055" + ], + "term": [ + { + "name": "Test Term", + "glossaryName": "Glossary" + } + ] + } + ] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_AddClassificationToEntityByGuids.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_AddClassificationToEntityByGuids.json new file mode 100644 index 000000000000..c955f4586918 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_AddClassificationToEntityByGuids.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "request": { + "classification": { + "typeName": "MICROSOFT.FINANCIAL.US.ABA_ROUTING_NUMBER", + "attributes": {}, + "validityPeriods": [] + }, + "entityGuids": [ + "784c0f2f-afd2-e26b-f9cb-984f6c2c5021", + "b4ebc8be-cef4-860a-bee9-28cc34cb5caa" + ] + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_AddClassifications.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_AddClassifications.json new file mode 100644 index 000000000000..6aa11763de71 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_AddClassifications.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "guid": "cc0730ba-9b30-41f0-6953-559d17626d2b", + "classifications": [ + { + "typeName": "MICROSOFT.FINANCIAL.US.ABA_ROUTING_NUMBER", + "entityGuid": "cc0730ba-9b30-41f0-6953-559d17626d2b" + }, + { + "typeName": "MICROSOFT.FINANCIAL.CREDIT_CARD_NUMBER", + "entityGuid": "cc0730ba-9b30-41f0-6953-559d17626d2b" + } + ] + }, + "responses": { + "204": {} + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_AddClassificationsByUniqueAttribute.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_AddClassificationsByUniqueAttribute.json new file mode 100644 index 000000000000..0830fd37c31d --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_AddClassificationsByUniqueAttribute.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "typeName": "azure_storage_account", + "attr:qualifiedName": "https://test_azure_storage_account.core.windows.net", + "atlasClassificationArray": [ + { + "typeName": "MICROSOFT.FINANCIAL.US.ABA_ROUTING_NUMBER" + }, + { + "typeName": "MICROSOFT.FINANCIAL.CREDIT_CARD_NUMBER" + } + ] + }, + "responses": { + "204": {} + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_Create.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_Create.json new file mode 100644 index 000000000000..aa7e5c290ff2 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_Create.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "entity": { + "referredEntities": {}, + "entity": { + "typeName": "azure_storage_account", + "attributes": { + "owner": "test_owner", + "modifiedTime": 0, + "createTime": 0, + "qualifiedName": "https://test_azure_storage_account.core.windows.net", + "name": "test_azure_storage_account", + "description": null, + "publicAccessLevel": null + }, + "contacts": { + "Expert": [ + { + "id": "30435ff9-9b96-44af-a5a9-e05c8b1ae2df", + "info": "expert info" + } + ], + "Owner": [ + { + "id": "30435ff9-9b96-44af-a5a9-e05c8b1ae2df", + "info": "owner info" + } + ] + }, + "status": "ACTIVE", + "createdBy": "ServiceAdmin", + "updatedBy": "ServiceAdmin", + "version": 0 + } + } + }, + "responses": { + "200": { + "body": { + "mutatedEntities": { + "CREATE": [ + { + "typeName": "azure_storage_account", + "attributes": { + "qualifiedName": "https://test_azure_storage_account.core.windows.net" + }, + "lastModifiedTS": "1", + "guid": "38d3c41f-300c-434e-8dad-0b1a7cb5efd6", + "status": "ACTIVE" + } + ] + }, + "guidAssignments": { + "-9514774903018162": "38d3c41f-300c-434e-8dad-0b1a7cb5efd6" + } + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_CreateOrUpdateEntities.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_CreateOrUpdateEntities.json new file mode 100644 index 000000000000..99a0b46a980b --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_CreateOrUpdateEntities.json @@ -0,0 +1,104 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "entities": { + "referredEntities": {}, + "entities": [ + { + "typeName": "azure_storage_account", + "attributes": { + "owner": "test_owner", + "modifiedTime": 0, + "createTime": 0, + "qualifiedName": "test_azure_storage_account_1022_5", + "name": "test_azure_storage_account_1022_5", + "description": null, + "publicAccessLevel": null + }, + "contacts": { + "Expert": [ + { + "id": "30435ff9-9b96-44af-a5a9-e05c8b1ae2df", + "info": "expert info" + } + ], + "Owner": [ + { + "id": "30435ff9-9b96-44af-a5a9-e05c8b1ae2df", + "info": "owner info" + } + ] + }, + "status": "ACTIVE", + "createdBy": "ServiceAdmin", + "updatedBy": "ServiceAdmin", + "version": 0 + }, + { + "typeName": "azure_storage_account", + "attributes": { + "owner": "test_owner", + "modifiedTime": 0, + "createTime": 0, + "qualifiedName": "test_azure_storage_account_1022_4", + "name": "test_azure_storage_account_1022_4", + "description": "test_update_description", + "publicAccessLevel": null + }, + "contacts": { + "Expert": [ + { + "id": "30435ff9-9b96-44af-a5a9-e05c8b1ae2df", + "info": "expert info" + } + ], + "Owner": [ + { + "id": "30435ff9-9b96-44af-a5a9-e05c8b1ae2df", + "info": "owner info" + } + ] + }, + "status": "ACTIVE", + "createdBy": "ServiceAdmin", + "updatedBy": "ServiceAdmin", + "version": 0 + } + ] + } + }, + "responses": { + "200": { + "body": { + "mutatedEntities": { + "UPDATE": [ + { + "typeName": "azure_storage_account", + "attributes": { + "qualifiedName": "test_azure_storage_account_1022_4" + }, + "lastModifiedTS": "2", + "guid": "b2f9c306-cf65-4bb0-878e-cfaafde156b1", + "status": "ACTIVE" + } + ], + "CREATE": [ + { + "typeName": "azure_storage_account", + "attributes": { + "qualifiedName": "test_azure_storage_account_1022_5" + }, + "lastModifiedTS": "1", + "guid": "321493e3-3fb7-4b3e-9df7-3b69154174c2", + "status": "ACTIVE" + } + ] + }, + "guidAssignments": { + "-9514774903018192": "321493e3-3fb7-4b3e-9df7-3b69154174c2", + "-9514774903018193": "b2f9c306-cf65-4bb0-878e-cfaafde156b1" + } + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_DeleteByGuid.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_DeleteByGuid.json new file mode 100644 index 000000000000..957eab984595 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_DeleteByGuid.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "guid": "fd279eb4-f6c3-1b0b-ad67-e4f8abd2972f" + }, + "responses": { + "200": { + "body": { + "mutatedEntities": { + "DELETE": [ + { + "guid": "fd279eb4-f6c3-1b0b-ad67-e4f8abd2972f", + "status": "ACTIVE", + "lastModifiedTS": "2", + "attributes": { + "owner": "test_owner", + "qualifiedName": "https://test_azure_storage_account.core.windows.net", + "name": "test_azure_storage_account" + }, + "typeName": "azure_storage_account" + } + ] + } + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_DeleteByGuids.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_DeleteByGuids.json new file mode 100644 index 000000000000..4ddbad395bb2 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_DeleteByGuids.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "guids": [ + "18e06957-e265-967a-07f1-e14e2ab8940f", + "cc0730ba-9b30-41f0-6953-559d17626d2b" + ] + }, + "responses": { + "200": { + "body": { + "mutatedEntities": { + "DELETE": [ + { + "typeName": "azure_blob_container", + "attributes": { + "qualifiedName": "https://account228.blob.core.windows.net/e2etest_container2_228_2" + }, + "guid": "18e06957-e265-967a-07f1-e14e2ab8940f", + "status": "ACTIVE" + }, + { + "typeName": "azure_blob_container", + "attributes": { + "qualifiedName": "https://account228.blob.core.windows.net/e2etest_container2_228" + }, + "guid": "cc0730ba-9b30-41f0-6953-559d17626d2b", + "status": "ACTIVE" + } + ] + } + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_DeleteByUniqueAttribute.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_DeleteByUniqueAttribute.json new file mode 100644 index 000000000000..0afba7700485 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_DeleteByUniqueAttribute.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "typeName": "azure_storage_account", + "attr:qualifiedName": "https://test_azure_storage_account.core.windows.net" + }, + "responses": { + "200": { + "body": { + "mutatedEntities": { + "DELETE": [ + { + "classificationNames": [], + "displayText": "new name", + "guid": "e0ba3f20-f3b5-4d52-b769-ed35a02df60a", + "meaningNames": [], + "meanings": [], + "status": "ACTIVE", + "lastModifiedTS": "3", + "attributes": { + "owner": "test_owner", + "createTime": 0, + "qualifiedName": "https://test_azure_storage_account.core.windows.net", + "name": "new name" + }, + "typeName": "azure_storage_account" + } + ] + } + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_DeleteClassification.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_DeleteClassification.json new file mode 100644 index 000000000000..0967940bc811 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_DeleteClassification.json @@ -0,0 +1,10 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "guid": "cc0730ba-9b30-41f0-6953-559d17626d2b", + "classificationName": "MICROSOFT.FINANCIAL.US.ABA_ROUTING_NUMBER" + }, + "responses": { + "204": {} + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_DeleteClassificationByUniqueAttribute.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_DeleteClassificationByUniqueAttribute.json new file mode 100644 index 000000000000..b587ce36cd4a --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_DeleteClassificationByUniqueAttribute.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "typeName": "column", + "classificationName": "MICROSOFT.FINANCIAL.US.ABA_ROUTING_NUMBER", + "attr:qualifiedName": "https://adcperftest.blob.core.windows.net/tcphcontainer/tcph1_10.csv" + }, + "responses": { + "204": {} + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_GetByGuid.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_GetByGuid.json new file mode 100644 index 000000000000..ac513add08f6 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_GetByGuid.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "guid": "5cf8a9e5-c9fd-abe0-2e8c-d40024263dcb" + }, + "responses": { + "200": { + "body": { + "referredEntities": {}, + "entity": { + "typeName": "column", + "attributes": { + "owner": null, + "qualifiedName": "adl://adlsgary.azuredatalakestore.net/123/1/DP_TFS/CBT/Extensions/DTTP.targets#:xml/Project/Target/XmlPeek/@XmlInputPath", + "name": "~XmlInputPath", + "description": null, + "type": "string" + }, + "guid": "5cf8a9e5-c9fd-abe0-2e8c-d40024263dcb", + "status": "ACTIVE", + "createdBy": "ServiceAdmin", + "updatedBy": "ServiceAdmin", + "createTime": 1553072455110, + "updateTime": 1553072455110, + "version": 0, + "relationshipAttributes": { + "schema": [], + "inputToProcesses": [], + "composeSchema": { + "guid": "cc6652ae-dc6d-90c9-1899-252eabc0e929", + "typeName": "tabular_schema", + "displayText": "tabular_schema", + "relationshipGuid": "5a4510d4-57d0-467c-888f-4b61df42702b", + "relationshipStatus": "ACTIVE", + "relationshipAttributes": { + "typeName": "tabular_schema_columns" + } + }, + "meanings": [], + "outputFromProcesses": [], + "tabular_schema": null + }, + "contacts": { + "Expert": [ + { + "id": "30435ff9-9b96-44af-a5a9-e05c8b1ae2df", + "info": "expert info" + } + ], + "Owner": [ + { + "id": "30435ff9-9b96-44af-a5a9-e05c8b1ae2df", + "info": "owner info" + } + ] + } + } + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_GetByUniqueAttributes.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_GetByUniqueAttributes.json new file mode 100644 index 000000000000..e2954e5d9de6 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_GetByUniqueAttributes.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "typeName": "azure_storage_account", + "attr:qualifiedName": "https://test_azure_storage_account.core.windows.net" + }, + "responses": { + "200": { + "body": { + "entity": { + "createTime": 1605703532110, + "createdBy": "8c062c84-5d25-449f-a990-9d8ab70b8ec7", + "guid": "e0ba3f20-f3b5-4d52-b769-ed35a02df60a", + "relationshipAttributes": { + "services": [], + "meanings": [] + }, + "status": "ACTIVE", + "updateTime": 1605703532110, + "updatedBy": "8c062c84-5d25-449f-a990-9d8ab70b8ec7", + "lastModifiedTS": "2", + "version": 0.0, + "attributes": { + "owner": "test_owner", + "qualifiedName": "https://test_azure_storage_account.core.windows.net", + "createTime": 0, + "name": "new name" + }, + "typeName": "azure_storage_account" + }, + "referredEntities": {} + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_GetClassification.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_GetClassification.json new file mode 100644 index 000000000000..1d976b1e21e0 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_GetClassification.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "guid": "9347abc5-7b86-4b82-a1e2-ad77c7c3cac3", + "classificationName": "MICROSOFT.PERSONAL.DATE_OF_BIRTH" + }, + "responses": { + "200": { + "body": { + "typeName": "MICROSOFT.PERSONAL.DATE_OF_BIRTH", + "lastModifiedTS": "1", + "entityGuid": "9347abc5-7b86-4b82-a1e2-ad77c7c3cac3", + "entityStatus": "ACTIVE" + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_GetClassifications.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_GetClassifications.json new file mode 100644 index 000000000000..8f89220119d7 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_GetClassifications.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "guid": "67d26de6-771d-1a2d-cb2b-dec4dbd2a9bd" + }, + "responses": { + "200": { + "body": { + "list": [ + { + "typeName": "MICROSOFT.FINANCIAL.US.ABA_ROUTING_NUMBER", + "entityGuid": "67d26de6-771d-1a2d-cb2b-dec4dbd2a9bd" + } + ], + "startIndex": 0, + "pageSize": 1, + "totalCount": 1, + "sortType": "NONE" + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_GetEntitiesByUniqueAttributes.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_GetEntitiesByUniqueAttributes.json new file mode 100644 index 000000000000..78f1b5287823 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_GetEntitiesByUniqueAttributes.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "typeName": "azure_storage_account", + "attr_1:qualifiedName": "adl://adlsgary.azuredatalakestore.net/123/1/DP_TFS/CBT/Extensions/DTTP.targets#:xml/Project/PropertyGroup/DttpCopyDependsOn", + "attr_2:qualifiedName": "adl://adlsgary.azuredatalakestore.net/123/1/Experience/CBT/Extensions/CodeAnalysis.targets#:xml/Project/PropertyGroup/MSBuildAllProjects" + }, + "responses": { + "200": { + "body": { + "referredEntities": {}, + "entities": [ + { + "typeName": "column", + "attributes": { + "owner": null, + "qualifiedName": "adl://adlsgary.azuredatalakestore.net/123/1/DP_TFS/CBT/Extensions/DTTP.targets#:xml/Project/PropertyGroup/DttpCopyDependsOn", + "name": "DttpCopyDependsOn", + "description": null, + "type": "string" + }, + "guid": "784c0f2f-afd2-e26b-f9cb-984f6c2c5021", + "status": "ACTIVE", + "createdBy": "ServiceAdmin", + "updatedBy": "ServiceAdmin", + "createTime": 1553072455110, + "updateTime": 1553072455110, + "version": 0, + "relationshipAttributes": { + "schema": [], + "inputToProcesses": [], + "composeSchema": { + "guid": "cc6652ae-dc6d-90c9-1899-252eabc0e929", + "typeName": "tabular_schema", + "displayText": "tabular_schema", + "relationshipGuid": "400fd8e4-97bd-45eb-a21c-880b4094ce5b", + "relationshipStatus": "ACTIVE", + "relationshipAttributes": { + "typeName": "tabular_schema_columns" + } + }, + "meanings": [], + "outputFromProcesses": [], + "tabular_schema": null + } + }, + { + "typeName": "column", + "attributes": { + "owner": null, + "qualifiedName": "adl://adlsgary.azuredatalakestore.net/123/1/Experience/CBT/Extensions/CodeAnalysis.targets#:xml/Project/PropertyGroup/MSBuildAllProjects", + "name": "MSBuildAllProjects", + "description": null, + "type": "string" + }, + "guid": "b4ebc8be-cef4-860a-bee9-28cc34cb5caa", + "status": "ACTIVE", + "createdBy": "ServiceAdmin", + "updatedBy": "ServiceAdmin", + "createTime": 1553072455110, + "updateTime": 1553072455110, + "version": 0, + "relationshipAttributes": { + "schema": [], + "inputToProcesses": [], + "composeSchema": { + "guid": "381dd3e6-dad5-7409-c21d-ea55b666e420", + "typeName": "tabular_schema", + "displayText": "tabular_schema", + "relationshipGuid": "0b652860-ab79-48cd-a0cf-0867fbba31a3", + "relationshipStatus": "ACTIVE", + "relationshipAttributes": { + "typeName": "tabular_schema_columns" + } + }, + "meanings": [], + "outputFromProcesses": [], + "tabular_schema": null + } + } + ] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_GetHeader.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_GetHeader.json new file mode 100644 index 000000000000..24db04e29933 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_GetHeader.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "guid": "9fb74c11-ac48-4650-95bc-760665c5bd92" + }, + "responses": { + "200": { + "body": { + "classificationNames": [ + "MICROSOFT.PERSONAL.EMAIL" + ], + "displayText": "test_azure_storage_account", + "guid": "9fb74c11-ac48-4650-95bc-760665c5bd92", + "meaningNames": [], + "meanings": [], + "status": "ACTIVE", + "lastModifiedTS": "3", + "attributes": { + "owner": "test_owner", + "createTime": 0, + "qualifiedName": "https://test_azure_storage_account.core.windows.net", + "name": "test_azure_storage_account" + }, + "typeName": "azure_storage_account" + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_ListByGuids.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_ListByGuids.json new file mode 100644 index 000000000000..3cd32c029dd2 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_ListByGuids.json @@ -0,0 +1,114 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "guids": [ + "784c0f2f-afd2-e26b-f9cb-984f6c2c5021", + "b4ebc8be-cef4-860a-bee9-28cc34cb5caa" + ] + }, + "responses": { + "200": { + "body": { + "referredEntities": {}, + "entities": [ + { + "typeName": "column", + "attributes": { + "owner": null, + "qualifiedName": "adl://adlsgary.azuredatalakestore.net/123/1/DP_TFS/CBT/Extensions/DTTP.targets#:xml/Project/PropertyGroup/DttpCopyDependsOn", + "name": "DttpCopyDependsOn", + "description": null, + "type": "string" + }, + "guid": "784c0f2f-afd2-e26b-f9cb-984f6c2c5021", + "status": "ACTIVE", + "createdBy": "ServiceAdmin", + "updatedBy": "ServiceAdmin", + "createTime": 1553072455110, + "updateTime": 1553072455110, + "version": 0, + "relationshipAttributes": { + "schema": [], + "inputToProcesses": [], + "composeSchema": { + "guid": "cc6652ae-dc6d-90c9-1899-252eabc0e929", + "typeName": "tabular_schema", + "displayText": "tabular_schema", + "relationshipGuid": "400fd8e4-97bd-45eb-a21c-880b4094ce5b", + "relationshipStatus": "ACTIVE", + "relationshipAttributes": { + "typeName": "tabular_schema_columns" + } + }, + "meanings": [], + "outputFromProcesses": [], + "tabular_schema": null + }, + "contacts": { + "Expert": [ + { + "id": "30435ff9-9b96-44af-a5a9-e05c8b1ae2df", + "info": "expert info" + } + ], + "Owner": [ + { + "id": "30435ff9-9b96-44af-a5a9-e05c8b1ae2df", + "info": "owner info" + } + ] + } + }, + { + "typeName": "column", + "attributes": { + "owner": null, + "qualifiedName": "adl://adlsgary.azuredatalakestore.net/123/1/Experience/CBT/Extensions/CodeAnalysis.targets#:xml/Project/PropertyGroup/MSBuildAllProjects", + "name": "MSBuildAllProjects", + "description": null, + "type": "string" + }, + "guid": "b4ebc8be-cef4-860a-bee9-28cc34cb5caa", + "status": "ACTIVE", + "createdBy": "ServiceAdmin", + "updatedBy": "ServiceAdmin", + "createTime": 1553072455110, + "updateTime": 1553072455110, + "version": 0, + "relationshipAttributes": { + "schema": [], + "inputToProcesses": [], + "composeSchema": { + "guid": "381dd3e6-dad5-7409-c21d-ea55b666e420", + "typeName": "tabular_schema", + "displayText": "tabular_schema", + "relationshipGuid": "0b652860-ab79-48cd-a0cf-0867fbba31a3", + "relationshipStatus": "ACTIVE", + "relationshipAttributes": { + "typeName": "tabular_schema_columns" + } + }, + "meanings": [], + "outputFromProcesses": [], + "tabular_schema": null + }, + "contacts": { + "Expert": [ + { + "id": "30435ff9-9b96-44af-a5a9-e05c8b1ae2df", + "info": "expert info" + } + ], + "Owner": [ + { + "id": "30435ff9-9b96-44af-a5a9-e05c8b1ae2df", + "info": "owner info" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_PartialUpdateEntityAttributeByGuid.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_PartialUpdateEntityAttributeByGuid.json new file mode 100644 index 000000000000..2bca7de38a3d --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_PartialUpdateEntityAttributeByGuid.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "guid": "394d9a03-912e-483b-bbd2-bedee1a69798", + "name": "name", + "body": "new name" + }, + "responses": { + "200": { + "body": { + "mutatedEntities": { + "CREATE": [ + { + "typeName": "azure_storage_account", + "attributes": { + "qualifiedName": "https://test_azure_storage_account.core.windows.net" + }, + "lastModifiedTS": "1", + "guid": "394d9a03-912e-483b-bbd2-bedee1a69798", + "status": "ACTIVE" + } + ] + }, + "partialUpdatedEntities": [ + { + "typeName": "azure_storage_account", + "attributes": { + "qualifiedName": "https://test_azure_storage_account.core.windows.net" + }, + "lastModifiedTS": "1", + "guid": "394d9a03-912e-483b-bbd2-bedee1a69798" + } + ] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_PartialUpdateEntityByUniqueAttributes.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_PartialUpdateEntityByUniqueAttributes.json new file mode 100644 index 000000000000..799c39b5988f --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_PartialUpdateEntityByUniqueAttributes.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "typeName": "azure_storage_account", + "attr:qualifiedName": "https://test_azure_storage_account.core.windows.net", + "atlasEntityWithExtInfo": { + "entity": { + "createTime": 1.605766397985E12, + "createdBy": "8c062c84-5d25-449f-a990-9d8ab70b8ec7", + "guid": "dc507ccf-0c57-4165-9327-f37b0d13fda0", + "relationshipAttributes": { + "services": [], + "meanings": [] + }, + "status": "ACTIVE", + "updateTime": 1.605766397985E12, + "updatedBy": "8c062c84-5d25-449f-a990-9d8ab70b8ec7", + "lastModifiedTS": "1", + "version": 0.0, + "attributes": { + "owner": "test_owner", + "qualifiedName": "https://test_azure_storage_account.core.windows.net", + "createTime": 0, + "name": "new name" + }, + "typeName": "azure_storage_account" + }, + "referredEntities": {} + } + }, + "responses": { + "200": { + "body": { + "guidAssignments": {}, + "mutatedEntities": { + "PARTIAL_UPDATE": [ + { + "guid": "dc507ccf-0c57-4165-9327-f37b0d13fda0", + "lastModifiedTS": "2", + "attributes": { + "qualifiedName": "https://test_azure_storage_account.core.windows.net" + }, + "typeName": "azure_storage_account" + } + ] + }, + "partialUpdatedEntities": [ + { + "guid": "dc507ccf-0c57-4165-9327-f37b0d13fda0", + "lastModifiedTS": "2", + "attributes": { + "qualifiedName": "https://test_azure_storage_account.core.windows.net" + }, + "typeName": "azure_storage_account" + } + ] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_SetClassifications.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_SetClassifications.json new file mode 100644 index 000000000000..ff461f621145 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_SetClassifications.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "entityHeaders": { + "guidHeaderMap": { + "9fb74c11-ac48-4650-95bc-760665c5bd92": { + "attributes": { + "qualifiedName": "https://test_azure_storage_account1.core.windows.net" + }, + "typeName": "azure_storage_account", + "classifications": [ + { + "typeName": "MICROSOFT.PERSONAL.EMAIL" + } + ] + }, + "7fcc43ab-55ea-45d4-9971-ce0443cb10bb": { + "attributes": { + "qualifiedName": "https://test_azure_storage_account2.core.windows.net" + }, + "typeName": "azure_storage_account", + "classifications": [ + { + "typeName": "MICROSOFT.PERSONAL.IPADDRESS" + } + ] + } + } + } + }, + "responses": { + "200": { + "body": [ + "Add:9fb74c11-ac48-4650-95bc-760665c5bd92:azure_storage_account:qualifiedName -> MICROSOFT.PERSONAL.EMAIL:(Done)", + "Update:7fcc43ab-55ea-45d4-9971-ce0443cb10bb:azure_storage_account:qualifiedName -> MICROSOFT.PERSONAL.IPADDRESS:(Done)" + ] + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_Update.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_Update.json new file mode 100644 index 000000000000..5b3c37dcea3d --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_Update.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "entity": { + "referredEntities": {}, + "entity": { + "typeName": "azure_storage_account", + "attributes": { + "owner": "test_owner", + "modifiedTime": 0, + "createTime": 0, + "qualifiedName": "test_azure_storage_account_0114", + "name": "test_azure_storage_account_0114_2", + "description": null, + "publicAccessLevel": null + }, + "contacts": { + "Expert": [ + { + "id": "30435ff9-9b96-44af-a5a9-e05c8b1ae2df", + "info": "expert info" + } + ], + "Owner": [ + { + "id": "30435ff9-9b96-44af-a5a9-e05c8b1ae2df", + "info": "owner info" + } + ] + }, + "status": "ACTIVE", + "createdBy": "ServiceAdmin", + "updatedBy": "ServiceAdmin", + "version": 0 + } + } + }, + "responses": { + "200": { + "body": { + "mutatedEntities": { + "UPDATE": [ + { + "typeName": "azure_storage_account", + "attributes": { + "qualifiedName": "test_azure_storage_account_0114" + }, + "lastModifiedTS": "2", + "guid": "029d5668-a36c-40a9-bc11-6f352bafdc3b" + } + ] + }, + "guidAssignments": { + "-9514774903018167": "029d5668-a36c-40a9-bc11-6f352bafdc3b" + } + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_UpdateClassifications.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_UpdateClassifications.json new file mode 100644 index 000000000000..d558a272e7ea --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_UpdateClassifications.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "guid": "45dd4404-e897-b7e2-ca3c-f6e6b11b4f24", + "classifications": [ + { + "typeName": "MICROSOFT.FINANCIAL.CREDIT_CARD_NUMBER", + "entityGuid": "45dd4404-e897-b7e2-ca3c-f6e6b11b4f24" + }, + { + "typeName": "MICROSOFT.FINANCIAL.US_BANK_ACCOUNT_NUMBER", + "entityGuid": "45dd4404-e897-b7e2-ca3c-f6e6b11b4f24" + } + ] + }, + "responses": { + "204": {} + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_UpdateClassificationsByUniqueAttribute.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_UpdateClassificationsByUniqueAttribute.json new file mode 100644 index 000000000000..0830fd37c31d --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Entity_UpdateClassificationsByUniqueAttribute.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "typeName": "azure_storage_account", + "attr:qualifiedName": "https://test_azure_storage_account.core.windows.net", + "atlasClassificationArray": [ + { + "typeName": "MICROSOFT.FINANCIAL.US.ABA_ROUTING_NUMBER" + }, + { + "typeName": "MICROSOFT.FINANCIAL.CREDIT_CARD_NUMBER" + } + ] + }, + "responses": { + "204": {} + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/GetLineageGraph.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/GetLineageGraph.json new file mode 100644 index 000000000000..58bc26b0bcdb --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/GetLineageGraph.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "guid": "a6894eb3-81f3-829b-2adc-52f3e603411a", + "depth": "1", + "width": "5", + "includeParent": true, + "getDerivedLineage": true, + "direction": "INPUT" + }, + "responses": { + "200": { + "body": { + "baseEntityGuid": "a6894eb3-81f3-829b-2adc-52f3e603411a", + "lineageDirection": "INPUT", + "lineageDepth": 1, + "lineageWidth": 1, + "childrenCount": 1, + "guidEntityMap": {}, + "widthCounts": {}, + "includeParent": true, + "relations": [], + "parentRelations": [] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_AssignTermToEntities.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_AssignTermToEntities.json new file mode 100644 index 000000000000..6a8f4d0b206b --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_AssignTermToEntities.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "termGuid": "8a7f65ec-6429-0b9b-3734-ec57bf1e34c2", + "relatedObjectIds": [ + { + "guid": "ab9f1920-0b94-436d-aeb4-11a32c270fc0", + "relationshipAttributes": { + "attributes": { + "expression": "this is expression", + "confidence": 100, + "description": "this is description", + "source": "Azure" + } + } + } + ] + }, + "responses": { + "204": {} + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_CreateGlossary.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_CreateGlossary.json new file mode 100644 index 000000000000..d6e8fab4edea --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_CreateGlossary.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "atlasGlossary": { + "name": "Glossary", + "shortDescription": "shortDescription", + "longDescription": "longDescription", + "language": "en", + "usage": "demo glossary" + } + }, + "responses": { + "200": { + "body": { + "guid": "c018ddaf-7c21-4b37-a838-dae5f110c3d8", + "qualifiedName": "Glossary", + "name": "Glossary", + "shortDescription": "shortDescription", + "longDescription": "longDescription", + "lastModifiedTS": "1", + "language": "en", + "usage": "demo glossary" + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_CreateGlossaryCategories.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_CreateGlossaryCategories.json new file mode 100644 index 000000000000..d1560d6ebe54 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_CreateGlossaryCategories.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "glossaryCategory": [ + { + "name": "Category2", + "anchor": { + "glossaryGuid": "c018ddaf-7c21-4b37-a838-dae5f110c3d8" + } + }, + { + "name": "Category3", + "anchor": { + "glossaryGuid": "c018ddaf-7c21-4b37-a838-dae5f110c3d8" + } + } + ] + }, + "responses": { + "200": { + "body": [ + { + "guid": "e47c4584-daca-4f9e-9092-194e04692c9a", + "qualifiedName": "Category2@Glossary", + "name": "Category2", + "lastModifiedTS": "1", + "anchor": { + "glossaryGuid": "c018ddaf-7c21-4b37-a838-dae5f110c3d8", + "relationGuid": "94071e56-fd3e-4441-93ff-1834f818482d" + } + }, + { + "guid": "0d6766f6-f4b6-435b-bda2-d3edc358998e", + "qualifiedName": "Category3@Glossary", + "name": "Category3", + "lastModifiedTS": "1", + "anchor": { + "glossaryGuid": "c018ddaf-7c21-4b37-a838-dae5f110c3d8", + "relationGuid": "26a486a4-a8e2-483c-8a84-3b88e909f8d2" + } + } + ] + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_CreateGlossaryCategory.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_CreateGlossaryCategory.json new file mode 100644 index 000000000000..f212c2269212 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_CreateGlossaryCategory.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "glossaryCategory": { + "anchor": { + "glossaryGuid": "c018ddaf-7c21-4b37-a838-dae5f110c3d8" + }, + "name": "Category1", + "terms": [ + { + "termGuid": "54688d39-b298-4104-9e80-f2a16f44aaea" + } + ] + } + }, + "responses": { + "200": { + "body": { + "guid": "ed7458f0-9463-48a5-b5c6-4f785fb34e12", + "qualifiedName": "Category1@Glossary", + "name": "Category1", + "lastModifiedTS": "1", + "anchor": { + "glossaryGuid": "c018ddaf-7c21-4b37-a838-dae5f110c3d8", + "relationGuid": "7bdcef93-a57a-4d1d-95ab-9d3036f394a0" + }, + "terms": [ + { + "termGuid": "54688d39-b298-4104-9e80-f2a16f44aaea", + "relationGuid": "6aebf5ac-0c83-40c0-98bf-958fe9c99007", + "displayText": "Term1" + } + ] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_CreateGlossaryTerm.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_CreateGlossaryTerm.json new file mode 100644 index 000000000000..56d8bfa02558 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_CreateGlossaryTerm.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "glossaryTerm": { + "name": "Term1", + "shortDescription": "shortDescription1", + "longDescription": "longDescription1", + "abbreviation": "T1", + "status": "Approved", + "anchor": { + "glossaryGuid": "c018ddaf-7c21-4b37-a838-dae5f110c3d8" + }, + "resources": [ + { + "displayName": "microsoft", + "url": "https://www.microsoft.com/en-sg/" + } + ], + "contacts": { + "Expert": [ + { + "id": "30435ff9-9b96-44af-a5a9-e05c8b1ae2df", + "info": "expert" + } + ], + "Steward": [ + { + "id": "30435ff9-9b96-44af-a5a9-e05c8b1ae2df", + "info": "steward" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "guid": "54688d39-b298-4104-9e80-f2a16f44aaea", + "qualifiedName": "Term1@Glossary", + "name": "Term1", + "shortDescription": "shortDescription1", + "longDescription": "longDescription1", + "abbreviation": "T1", + "anchor": { + "glossaryGuid": "c018ddaf-7c21-4b37-a838-dae5f110c3d8", + "relationGuid": "7b6a8149-a928-476a-a068-dce58653cfa0" + }, + "createdBy": "23863cef-a2e9-40a3-a427-44dc0d201f61", + "updatedBy": "23863cef-a2e9-40a3-a427-44dc0d201f61", + "createTime": 1606287247276, + "updateTime": 1606287247276, + "status": "Approved", + "resources": [ + { + "displayName": "microsoft", + "url": "https://www.microsoft.com/en-sg/" + } + ], + "contacts": { + "Expert": [ + { + "id": "30435ff9-9b96-44af-a5a9-e05c8b1ae2df", + "info": "expert" + } + ], + "Steward": [ + { + "id": "30435ff9-9b96-44af-a5a9-e05c8b1ae2df", + "info": "steward" + } + ] + } + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_CreateGlossaryTermWithTermTemplate.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_CreateGlossaryTermWithTermTemplate.json new file mode 100644 index 000000000000..5e8a7dc7e67a --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_CreateGlossaryTermWithTermTemplate.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "glossaryTerm": { + "name": "TermWithTermTemplate", + "anchor": { + "glossaryGuid": "c018ddaf-7c21-4b37-a838-dae5f110c3d8" + }, + "attributes": { + "MS KPI": { + "plain string": "some string", + "date": 1606233600000, + "single choice": "Single Choice A", + "multi choice": [ + "Multi Choice A", + "Multi Choice B" + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "guid": "9390cc82-1077-403e-a4d2-b6a69834707b", + "qualifiedName": "TermWithTermTemplate@Glossary", + "name": "TermWithTermTemplate", + "lastModifiedTS": "1", + "createdBy": "23863cef-a2e9-40a3-a427-44dc0d201f61", + "updatedBy": "23863cef-a2e9-40a3-a427-44dc0d201f61", + "createTime": 1606287247276, + "updateTime": 1606287247276, + "anchor": { + "glossaryGuid": "c018ddaf-7c21-4b37-a838-dae5f110c3d8", + "relationGuid": "7b6a8149-a928-476a-a068-dce58653cfa0" + }, + "attributes": { + "MS KPI": { + "plain string": "some string", + "date": 1606233600000, + "single choice": "Single Choice A", + "multi choice": [ + "Multi Choice A", + "Multi Choice B" + ] + } + } + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_CreateGlossaryTerms.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_CreateGlossaryTerms.json new file mode 100644 index 000000000000..39b8e69633f4 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_CreateGlossaryTerms.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "glossaryTerm": [ + { + "anchor": { + "glossaryGuid": "c018ddaf-7c21-4b37-a838-dae5f110c3d8" + }, + "name": "Term2", + "status": "Approved", + "shortDescription": "shortDescription2", + "longDescription": "longDescription2", + "abbreviation": "T2", + "resources": [ + { + "displayName": "microsoft", + "url": "https://www.microsoft.com/en-sg/" + } + ] + }, + { + "anchor": { + "glossaryGuid": "c018ddaf-7c21-4b37-a838-dae5f110c3d8" + }, + "name": "Term3", + "status": "Approved", + "shortDescription": "shortDescription3", + "longDescription": "longDescription3", + "abbreviation": "T3", + "resources": [ + { + "displayName": "microsoft", + "url": "https://www.microsoft.com/en-sg/" + } + ] + } + ] + }, + "responses": { + "200": { + "body": [ + { + "guid": "952c7ba4-4c89-42d8-a05a-7d2161be7008", + "qualifiedName": "Term2@Glossary", + "name": "Term2", + "shortDescription": "shortDescription2", + "lastModifiedTS": "1", + "abbreviation": "T2", + "createdBy": "23863cef-a2e9-40a3-a427-44dc0d201f61", + "updatedBy": "23863cef-a2e9-40a3-a427-44dc0d201f61", + "createTime": 1606287312495, + "updateTime": 1606287312495, + "status": "Approved", + "anchor": { + "glossaryGuid": "c018ddaf-7c21-4b37-a838-dae5f110c3d8", + "relationGuid": "9385640b-e6be-437d-a6b9-62d11c14a189" + }, + "resources": [ + { + "displayName": "microsoft", + "url": "https://www.microsoft.com/en-sg/" + } + ] + }, + { + "guid": "821beef0-ced9-47ba-8f7f-c4f3459f4d18", + "qualifiedName": "Term3@Glossary", + "name": "Term3", + "shortDescription": "shortDescription3", + "lastModifiedTS": "1", + "abbreviation": "T3", + "createdBy": "23863cef-a2e9-40a3-a427-44dc0d201f61", + "updatedBy": "23863cef-a2e9-40a3-a427-44dc0d201f61", + "createTime": 1606287312495, + "updateTime": 1606287312495, + "status": "Approved", + "anchor": { + "glossaryGuid": "c018ddaf-7c21-4b37-a838-dae5f110c3d8", + "relationGuid": "f4de4878-3e43-4f8b-b090-07a233bb0ce6" + }, + "resources": [ + { + "displayName": "microsoft", + "url": "https://www.microsoft.com/en-sg/" + } + ] + } + ] + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_DeleteGlossary.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_DeleteGlossary.json new file mode 100644 index 000000000000..70b4059decdd --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_DeleteGlossary.json @@ -0,0 +1,9 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "glossaryGuid": "c0c54153-13d1-1608-13af-43457cdffe75" + }, + "responses": { + "204": {} + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_DeleteGlossaryCategory.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_DeleteGlossaryCategory.json new file mode 100644 index 000000000000..678b949d55e5 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_DeleteGlossaryCategory.json @@ -0,0 +1,9 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "categoryGuid": "0e391355-252a-e5f3-ac18-5a3602df7616" + }, + "responses": { + "204": {} + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_DeleteGlossaryTerm.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_DeleteGlossaryTerm.json new file mode 100644 index 000000000000..32fd415f64d5 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_DeleteGlossaryTerm.json @@ -0,0 +1,9 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "termGuid": "b0942506-2d7d-1f45-d286-c29ca9e7f2ef" + }, + "responses": { + "204": {} + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_GetDetailedGlossary.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_GetDetailedGlossary.json new file mode 100644 index 000000000000..d3a8f93bad1a --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_GetDetailedGlossary.json @@ -0,0 +1,225 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "glossaryGuid": "c018ddaf-7c21-4b37-a838-dae5f110c3d8" + }, + "responses": { + "200": { + "body": { + "guid": "c018ddaf-7c21-4b37-a838-dae5f110c3d8", + "qualifiedName": "Glossary", + "name": "Glossary", + "shortDescription": "shortDescription", + "longDescription": "long description after partial update", + "language": "en", + "usage": "demo glossary", + "terms": [ + { + "termGuid": "54688d39-b298-4104-9e80-f2a16f44aaea", + "relationGuid": "7b6a8149-a928-476a-a068-dce58653cfa0", + "displayText": "Term1" + }, + { + "termGuid": "952c7ba4-4c89-42d8-a05a-7d2161be7008", + "relationGuid": "9385640b-e6be-437d-a6b9-62d11c14a189", + "displayText": "Term2" + } + ], + "categories": [ + { + "categoryGuid": "0d6766f6-f4b6-435b-bda2-d3edc358998e", + "relationGuid": "26a486a4-a8e2-483c-8a84-3b88e909f8d2" + }, + { + "categoryGuid": "ed7458f0-9463-48a5-b5c6-4f785fb34e12", + "relationGuid": "7bdcef93-a57a-4d1d-95ab-9d3036f394a0" + }, + { + "categoryGuid": "e47c4584-daca-4f9e-9092-194e04692c9a", + "relationGuid": "94071e56-fd3e-4441-93ff-1834f818482d" + } + ], + "termInfo": { + "54688d39-b298-4104-9e80-f2a16f44aaea": { + "guid": "54688d39-b298-4104-9e80-f2a16f44aaea", + "qualifiedName": "Term1@Glossary", + "name": "Term1", + "shortDescription": "shortDescription1", + "longDescription": "long desc after partial update", + "lastModifiedTS": "2", + "abbreviation": "T1", + "createdBy": "23863cef-a2e9-40a3-a427-44dc0d201f61", + "updatedBy": "23863cef-a2e9-40a3-a427-44dc0d201f61", + "createTime": 1606287247276, + "updateTime": 1606290587593, + "status": "Approved", + "anchor": { + "glossaryGuid": "c018ddaf-7c21-4b37-a838-dae5f110c3d8", + "relationGuid": "7b6a8149-a928-476a-a068-dce58653cfa0" + }, + "assignedEntities": [ + { + "guid": "ab9f1920-0b94-436d-aeb4-11a32c270fc0", + "typeName": "hdfs_path", + "entityStatus": "ACTIVE", + "displayText": "1", + "relationshipType": "AtlasGlossarySemanticAssignment", + "relationshipGuid": "cf2e959c-05e6-4a9f-b106-b6475741c2ba", + "relationshipStatus": "ACTIVE", + "relationshipAttributes": { + "typeName": "AtlasGlossarySemanticAssignment", + "attributes": { + "expression": "this is expression", + "createdBy": "microsoft", + "steward": "microsoft", + "confidence": 100, + "description": "this is description", + "source": "Azure", + "status": null + } + } + } + ], + "categories": [ + { + "categoryGuid": "ed7458f0-9463-48a5-b5c6-4f785fb34e12", + "relationGuid": "6aebf5ac-0c83-40c0-98bf-958fe9c99007" + } + ], + "seeAlso": [ + { + "termGuid": "952c7ba4-4c89-42d8-a05a-7d2161be7008", + "relationGuid": "dfa44030-bd14-4111-a0f1-3d01c964eb01", + "displayText": "Term2" + } + ], + "synonyms": [ + { + "termGuid": "952c7ba4-4c89-42d8-a05a-7d2161be7008", + "relationGuid": "15bcbd12-eb48-4b63-8ff5-74f7ec3a562c", + "displayText": "Term2" + } + ], + "contacts": { + "Expert": [ + { + "id": "30435ff9-9b96-44af-a5a9-e05c8b1ae2df", + "info": "expert" + } + ], + "Steward": [ + { + "id": "30435ff9-9b96-44af-a5a9-e05c8b1ae2df", + "info": "steward" + } + ] + }, + "resources": [ + { + "displayName": "microsoft", + "url": "https://www.microsoft.com/en-sg/" + } + ] + }, + "952c7ba4-4c89-42d8-a05a-7d2161be7008": { + "guid": "952c7ba4-4c89-42d8-a05a-7d2161be7008", + "qualifiedName": "Term2@Glossary", + "name": "Term2", + "shortDescription": "shortDescription2", + "lastModifiedTS": "1", + "abbreviation": "T2", + "createdBy": "23863cef-a2e9-40a3-a427-44dc0d201f61", + "updatedBy": "23863cef-a2e9-40a3-a427-44dc0d201f61", + "createTime": 1606287312495, + "updateTime": 1606287312495, + "status": "Approved", + "anchor": { + "glossaryGuid": "c018ddaf-7c21-4b37-a838-dae5f110c3d8", + "relationGuid": "9385640b-e6be-437d-a6b9-62d11c14a189" + }, + "seeAlso": [ + { + "termGuid": "54688d39-b298-4104-9e80-f2a16f44aaea", + "relationGuid": "dfa44030-bd14-4111-a0f1-3d01c964eb01", + "displayText": "Term1" + } + ], + "synonyms": [ + { + "termGuid": "54688d39-b298-4104-9e80-f2a16f44aaea", + "relationGuid": "15bcbd12-eb48-4b63-8ff5-74f7ec3a562c", + "displayText": "Term1" + } + ], + "resources": [ + { + "displayName": "microsoft", + "url": "https://www.microsoft.com/en-sg/" + } + ] + } + }, + "categoryInfo": { + "ed7458f0-9463-48a5-b5c6-4f785fb34e12": { + "guid": "ed7458f0-9463-48a5-b5c6-4f785fb34e12", + "qualifiedName": "Category1.Category2@Glossary", + "name": "Category1", + "longDescription": "long description after paritial update", + "lastModifiedTS": "3", + "anchor": { + "glossaryGuid": "c018ddaf-7c21-4b37-a838-dae5f110c3d8", + "relationGuid": "7bdcef93-a57a-4d1d-95ab-9d3036f394a0" + }, + "parentCategory": { + "categoryGuid": "e47c4584-daca-4f9e-9092-194e04692c9a", + "relationGuid": "82d569cd-2273-4ef9-9f67-c6f2ed637c20" + }, + "childrenCategories": [ + { + "categoryGuid": "0d6766f6-f4b6-435b-bda2-d3edc358998e", + "relationGuid": "e50be8c5-7905-4c92-b676-4278866c2c2f" + } + ], + "terms": [ + { + "termGuid": "54688d39-b298-4104-9e80-f2a16f44aaea", + "relationGuid": "6aebf5ac-0c83-40c0-98bf-958fe9c99007", + "displayText": "Term1" + } + ] + }, + "e47c4584-daca-4f9e-9092-194e04692c9a": { + "guid": "e47c4584-daca-4f9e-9092-194e04692c9a", + "qualifiedName": "Category2@Glossary", + "name": "Category2", + "lastModifiedTS": "1", + "anchor": { + "glossaryGuid": "c018ddaf-7c21-4b37-a838-dae5f110c3d8", + "relationGuid": "94071e56-fd3e-4441-93ff-1834f818482d" + }, + "childrenCategories": [ + { + "categoryGuid": "ed7458f0-9463-48a5-b5c6-4f785fb34e12", + "relationGuid": "82d569cd-2273-4ef9-9f67-c6f2ed637c20" + } + ] + }, + "0d6766f6-f4b6-435b-bda2-d3edc358998e": { + "guid": "0d6766f6-f4b6-435b-bda2-d3edc358998e", + "qualifiedName": "Category3.Category1.Category2@Glossary", + "name": "Category3", + "lastModifiedTS": "2", + "anchor": { + "glossaryGuid": "c018ddaf-7c21-4b37-a838-dae5f110c3d8", + "relationGuid": "26a486a4-a8e2-483c-8a84-3b88e909f8d2" + }, + "parentCategory": { + "categoryGuid": "ed7458f0-9463-48a5-b5c6-4f785fb34e12", + "relationGuid": "e50be8c5-7905-4c92-b676-4278866c2c2f" + } + } + } + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_GetGlossary.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_GetGlossary.json new file mode 100644 index 000000000000..9bf6a6ff7a9c --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_GetGlossary.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "glossaryGuid": "47029611-67a1-42d5-8766-90eb904f7f22" + }, + "responses": { + "200": { + "body": { + "guid": "47029611-67a1-42d5-8766-90eb904f7f22", + "qualifiedName": "Glossary", + "name": "Glossary", + "shortDescription": "shortDescription", + "longDescription": "longDescription", + "lastModifiedTS": "1", + "language": "en", + "usage": "demo glossary", + "terms": [ + { + "termGuid": "29d88363-9677-4ce6-aeee-5fdf45f84e9b", + "relationGuid": "fb3d4ac4-27e0-45a2-bb13-105214e0ef7e", + "displayText": "Term3" + }, + { + "termGuid": "e5136a91-bc02-49da-81f4-f075bd54b8f5", + "relationGuid": "741186cd-1d62-4798-8e58-6cbe35105baa", + "displayText": "Term1" + }, + { + "termGuid": "68347d87-ae38-43b4-a62c-0fdc25b54cb1", + "relationGuid": "2f2b1fe6-d2b6-4aef-81cd-bea7a510312e", + "displayText": "Term2" + } + ] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_GetGlossaryCategory.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_GetGlossaryCategory.json new file mode 100644 index 000000000000..cb80e6afebb5 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_GetGlossaryCategory.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "categoryGuid": "ed7458f0-9463-48a5-b5c6-4f785fb34e12" + }, + "responses": { + "200": { + "body": { + "guid": "ed7458f0-9463-48a5-b5c6-4f785fb34e12", + "qualifiedName": "Category1.Category2@Glossary", + "name": "Category1", + "lastModifiedTS": "2", + "anchor": { + "glossaryGuid": "c018ddaf-7c21-4b37-a838-dae5f110c3d8", + "relationGuid": "7bdcef93-a57a-4d1d-95ab-9d3036f394a0" + }, + "parentCategory": { + "categoryGuid": "e47c4584-daca-4f9e-9092-194e04692c9a", + "relationGuid": "82d569cd-2273-4ef9-9f67-c6f2ed637c20" + }, + "childrenCategories": [ + { + "categoryGuid": "0d6766f6-f4b6-435b-bda2-d3edc358998e", + "parentCategoryGuid": "ed7458f0-9463-48a5-b5c6-4f785fb34e12", + "relationGuid": "e50be8c5-7905-4c92-b676-4278866c2c2f", + "displayText": "Category3" + } + ], + "terms": [ + { + "termGuid": "54688d39-b298-4104-9e80-f2a16f44aaea", + "relationGuid": "6aebf5ac-0c83-40c0-98bf-958fe9c99007", + "displayText": "Term1" + } + ] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_GetGlossaryTerm.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_GetGlossaryTerm.json new file mode 100644 index 000000000000..f317c51d102f --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_GetGlossaryTerm.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "termGuid": "54688d39-b298-4104-9e80-f2a16f44aaea" + }, + "responses": { + "200": { + "body": { + "guid": "54688d39-b298-4104-9e80-f2a16f44aaea", + "qualifiedName": "Term1@Glossary", + "name": "Term1", + "shortDescription": "shortDescription1", + "lastModifiedTS": "1", + "abbreviation": "T1", + "createdBy": "23863cef-a2e9-40a3-a427-44dc0d201f61", + "updatedBy": "23863cef-a2e9-40a3-a427-44dc0d201f61", + "createTime": 1606287247276, + "updateTime": 1606287247276, + "status": "Approved", + "anchor": { + "glossaryGuid": "c018ddaf-7c21-4b37-a838-dae5f110c3d8", + "relationGuid": "7b6a8149-a928-476a-a068-dce58653cfa0" + }, + "seeAlso": [ + { + "termGuid": "952c7ba4-4c89-42d8-a05a-7d2161be7008", + "relationGuid": "dfa44030-bd14-4111-a0f1-3d01c964eb01", + "displayText": "Term2" + } + ], + "synonyms": [ + { + "termGuid": "952c7ba4-4c89-42d8-a05a-7d2161be7008", + "relationGuid": "15bcbd12-eb48-4b63-8ff5-74f7ec3a562c", + "displayText": "Term2" + } + ], + "contacts": { + "Expert": [ + { + "id": "30435ff9-9b96-44af-a5a9-e05c8b1ae2df", + "info": "expert" + } + ], + "Steward": [ + { + "id": "30435ff9-9b96-44af-a5a9-e05c8b1ae2df", + "info": "steward" + } + ] + }, + "resources": [ + { + "displayName": "microsoft", + "url": "https://www.microsoft.com/en-sg/" + } + ] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_GetImportCSVOperationStatus.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_GetImportCSVOperationStatus.json new file mode 100644 index 000000000000..91d82573f8d1 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_GetImportCSVOperationStatus.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "glossaryGuid": "a02d8eb5-a977-4ed6-85c6-63d44239471a", + "api-version": "2021-05-01", + "file": "10_terms_with_dependency_to_import_backward.csv" + }, + "responses": { + "202": { + "body": { + "id": "3ffca165-75a7-4987-ba71-cfc0a273d6b7", + "status": "Running", + "createTime": "2021-03-15T05:43:00.651+0000", + "lastUpdateTime": "2021-03-15T05:43:00.651+0000", + "properties": { + "importedTerms": "0", + "totalTermsDetected": "-1" + }, + "error": { + "errorCode": 0, + "errorMessage": "" + } + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_GetImportCSVOperationStatusByGloassaryName.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_GetImportCSVOperationStatusByGloassaryName.json new file mode 100644 index 000000000000..0b675bf74f94 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_GetImportCSVOperationStatusByGloassaryName.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "glossaryName": "Glossary", + "includeTermHierarchy": true, + "api-version": "2021-05-01", + "file": "10_terms_with_dependency_to_import_backward.csv" + }, + "responses": { + "202": { + "body": { + "id": "99e60bea-6f70-4fcb-966a-a313bb2738ef", + "status": "Running", + "createTime": "2021-03-15T06:27:23.961+0000", + "lastUpdateTime": "2021-03-15T06:27:23.961+0000", + "properties": { + "importedTerms": "0", + "totalTermsDetected": "-1" + }, + "error": { + "errorCode": 0, + "errorMessage": "" + } + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_GetImportCSVOperationStatusByOperationguid.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_GetImportCSVOperationStatusByOperationguid.json new file mode 100644 index 000000000000..66d20bf331d9 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_GetImportCSVOperationStatusByOperationguid.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "operationGuid": "3ffca165-75a7-4987-ba71-cfc0a273d6b7", + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "body": { + "id": "ed27f06c-dcfc-4e60-be27-7be65060108f", + "status": "Succeeded", + "createTime": "2020-07-22T13:48:21.688+0000", + "lastUpdateTime": "2020-07-22T13:55:27.752+0000", + "properties": { + "importedTerms": "1000", + "totalTermsDetected": "1000" + }, + "error": { + "errorCode": 0, + "errorMessage": "" + } + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_ListCategoryTerms.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_ListCategoryTerms.json new file mode 100644 index 000000000000..593fcd4348ae --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_ListCategoryTerms.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "categoryGuid": "ed7458f0-9463-48a5-b5c6-4f785fb34e12", + "limit": "-1", + "offset": "0", + "sort": "ASC" + }, + "responses": { + "200": { + "body": [ + { + "termGuid": "54688d39-b298-4104-9e80-f2a16f44aaea", + "relationGuid": "6aebf5ac-0c83-40c0-98bf-958fe9c99007", + "displayText": "Term1" + } + ] + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_ListEntitiesAssignedWithTerm.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_ListEntitiesAssignedWithTerm.json new file mode 100644 index 000000000000..495804c3387a --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_ListEntitiesAssignedWithTerm.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "termGuid": "daf0ba4d-bc9a-4536-8a88-4b58e39dd3d4", + "limit": "-1", + "offset": "0", + "sort": "ASC" + }, + "responses": { + "200": { + "body": [ + { + "guid": "ea116881-222e-41c8-8acb-9af6f6f60009", + "typeName": "column", + "entityStatus": "ACTIVE", + "displayText": "PasswordSalt", + "relationshipType": "AtlasGlossarySemanticAssignment", + "relationshipGuid": "ff9023a5-8495-49d6-bf04-a22c3634151e", + "relationshipStatus": "ACTIVE", + "relationshipAttributes": { + "typeName": "AtlasGlossarySemanticAssignment", + "attributes": { + "expression": null, + "createdBy": null, + "steward": null, + "confidence": null, + "description": null, + "source": null, + "status": null + } + } + }, + { + "guid": "fbf0a84d-7080-456b-b889-b5ba42186c2e", + "typeName": "azure_blob_path", + "entityStatus": "ACTIVE", + "displayText": "csvtest.csv", + "relationshipType": "AtlasGlossarySemanticAssignment", + "relationshipGuid": "dedc1294-a893-4e52-ba27-6be9b8694748", + "relationshipStatus": "ACTIVE", + "relationshipAttributes": { + "typeName": "AtlasGlossarySemanticAssignment", + "attributes": { + "expression": null, + "createdBy": null, + "steward": null, + "confidence": null, + "description": null, + "source": null, + "status": null + } + } + } + ] + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_ListGlossaries.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_ListGlossaries.json new file mode 100644 index 000000000000..6670125ca18c --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_ListGlossaries.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "limit": "1", + "offset": "0", + "sort": "ASC" + }, + "responses": { + "200": { + "body": [ + { + "guid": "c018ddaf-7c21-4b37-a838-dae5f110c3d8", + "qualifiedName": "Glossary", + "name": "Glossary", + "shortDescription": "shortDescription", + "longDescription": "long description after partial update", + "lastModifiedTS": "3", + "language": "en", + "usage": "demo glossary", + "terms": [ + { + "termGuid": "54688d39-b298-4104-9e80-f2a16f44aaea", + "relationGuid": "7b6a8149-a928-476a-a068-dce58653cfa0", + "displayText": "Term1" + }, + { + "termGuid": "952c7ba4-4c89-42d8-a05a-7d2161be7008", + "relationGuid": "9385640b-e6be-437d-a6b9-62d11c14a189", + "displayText": "Term2" + } + ], + "categories": [ + { + "categoryGuid": "0d6766f6-f4b6-435b-bda2-d3edc358998e", + "parentCategoryGuid": "ed7458f0-9463-48a5-b5c6-4f785fb34e12", + "relationGuid": "26a486a4-a8e2-483c-8a84-3b88e909f8d2", + "displayText": "Category3" + }, + { + "categoryGuid": "ed7458f0-9463-48a5-b5c6-4f785fb34e12", + "parentCategoryGuid": "e47c4584-daca-4f9e-9092-194e04692c9a", + "relationGuid": "7bdcef93-a57a-4d1d-95ab-9d3036f394a0", + "displayText": "Category1" + }, + { + "categoryGuid": "e47c4584-daca-4f9e-9092-194e04692c9a", + "relationGuid": "94071e56-fd3e-4441-93ff-1834f818482d", + "displayText": "Category2" + } + ] + } + ] + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_ListGlossaryCategories.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_ListGlossaryCategories.json new file mode 100644 index 000000000000..87db3aa90851 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_ListGlossaryCategories.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "glossaryGuid": "c018ddaf-7c21-4b37-a838-dae5f110c3d8", + "limit": "-1", + "offset": "0", + "sort": "ASC" + }, + "responses": { + "200": { + "body": [ + { + "guid": "ed7458f0-9463-48a5-b5c6-4f785fb34e12", + "qualifiedName": "Category1.Category2@Glossary", + "name": "Category1", + "lastModifiedTS": "2", + "anchor": { + "glossaryGuid": "c018ddaf-7c21-4b37-a838-dae5f110c3d8", + "relationGuid": "7bdcef93-a57a-4d1d-95ab-9d3036f394a0" + }, + "parentCategory": { + "categoryGuid": "e47c4584-daca-4f9e-9092-194e04692c9a", + "relationGuid": "82d569cd-2273-4ef9-9f67-c6f2ed637c20" + }, + "childrenCategories": [ + { + "categoryGuid": "0d6766f6-f4b6-435b-bda2-d3edc358998e", + "relationGuid": "e50be8c5-7905-4c92-b676-4278866c2c2f" + } + ], + "terms": [ + { + "termGuid": "54688d39-b298-4104-9e80-f2a16f44aaea", + "relationGuid": "6aebf5ac-0c83-40c0-98bf-958fe9c99007", + "displayText": "Term1" + } + ] + }, + { + "guid": "e47c4584-daca-4f9e-9092-194e04692c9a", + "qualifiedName": "Category2@Glossary", + "name": "Category2", + "lastModifiedTS": "1", + "anchor": { + "glossaryGuid": "c018ddaf-7c21-4b37-a838-dae5f110c3d8", + "relationGuid": "94071e56-fd3e-4441-93ff-1834f818482d" + }, + "childrenCategories": [ + { + "categoryGuid": "ed7458f0-9463-48a5-b5c6-4f785fb34e12", + "relationGuid": "82d569cd-2273-4ef9-9f67-c6f2ed637c20" + } + ] + }, + { + "guid": "0d6766f6-f4b6-435b-bda2-d3edc358998e", + "qualifiedName": "Category3.Category1.Category2@Glossary", + "name": "Category3", + "lastModifiedTS": "2", + "anchor": { + "glossaryGuid": "c018ddaf-7c21-4b37-a838-dae5f110c3d8", + "relationGuid": "26a486a4-a8e2-483c-8a84-3b88e909f8d2" + }, + "parentCategory": { + "categoryGuid": "ed7458f0-9463-48a5-b5c6-4f785fb34e12", + "relationGuid": "e50be8c5-7905-4c92-b676-4278866c2c2f" + } + } + ] + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_ListGlossaryCategoriesHeaders.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_ListGlossaryCategoriesHeaders.json new file mode 100644 index 000000000000..44637cb89b91 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_ListGlossaryCategoriesHeaders.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "glossaryGuid": "c018ddaf-7c21-4b37-a838-dae5f110c3d8", + "limit": "-1", + "offset": "0", + "sort": "ASC" + }, + "responses": { + "200": { + "body": [ + { + "categoryGuid": "ed7458f0-9463-48a5-b5c6-4f785fb34e12", + "parentCategoryGuid": "e47c4584-daca-4f9e-9092-194e04692c9a", + "relationGuid": "7bdcef93-a57a-4d1d-95ab-9d3036f394a0", + "displayText": "Category1" + }, + { + "categoryGuid": "e47c4584-daca-4f9e-9092-194e04692c9a", + "relationGuid": "94071e56-fd3e-4441-93ff-1834f818482d", + "displayText": "Category2" + }, + { + "categoryGuid": "0d6766f6-f4b6-435b-bda2-d3edc358998e", + "parentCategoryGuid": "ed7458f0-9463-48a5-b5c6-4f785fb34e12", + "relationGuid": "26a486a4-a8e2-483c-8a84-3b88e909f8d2", + "displayText": "Category3" + } + ] + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_ListGlossaryTermHeaders.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_ListGlossaryTermHeaders.json new file mode 100644 index 000000000000..2ae055593863 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_ListGlossaryTermHeaders.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "glossaryGuid": "c018ddaf-7c21-4b37-a838-dae5f110c3d8", + "limit": "-1", + "offset": "0", + "sort": "ASC" + }, + "responses": { + "200": { + "body": [ + { + "termGuid": "54688d39-b298-4104-9e80-f2a16f44aaea", + "relationGuid": "7b6a8149-a928-476a-a068-dce58653cfa0", + "displayText": "Term1" + }, + { + "termGuid": "952c7ba4-4c89-42d8-a05a-7d2161be7008", + "relationGuid": "9385640b-e6be-437d-a6b9-62d11c14a189", + "displayText": "Term2" + } + ] + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_ListGlossaryTerms.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_ListGlossaryTerms.json new file mode 100644 index 000000000000..37be42a7ad16 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_ListGlossaryTerms.json @@ -0,0 +1,103 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "glossaryGuid": "c018ddaf-7c21-4b37-a838-dae5f110c3d8", + "limit": "-1", + "offset": "0", + "sort": "ASC" + }, + "responses": { + "200": { + "body": [ + { + "guid": "54688d39-b298-4104-9e80-f2a16f44aaea", + "qualifiedName": "Term1@Glossary", + "name": "Term1", + "shortDescription": "shortDescription1", + "lastModifiedTS": "1", + "abbreviation": "T1", + "createdBy": "23863cef-a2e9-40a3-a427-44dc0d201f61", + "updatedBy": "23863cef-a2e9-40a3-a427-44dc0d201f61", + "createTime": 1606287247276, + "updateTime": 1606287247276, + "status": "Approved", + "anchor": { + "glossaryGuid": "c018ddaf-7c21-4b37-a838-dae5f110c3d8", + "relationGuid": "7b6a8149-a928-476a-a068-dce58653cfa0" + }, + "seeAlso": [ + { + "termGuid": "952c7ba4-4c89-42d8-a05a-7d2161be7008", + "relationGuid": "dfa44030-bd14-4111-a0f1-3d01c964eb01", + "displayText": "Term2" + } + ], + "synonyms": [ + { + "termGuid": "952c7ba4-4c89-42d8-a05a-7d2161be7008", + "relationGuid": "15bcbd12-eb48-4b63-8ff5-74f7ec3a562c", + "displayText": "Term2" + } + ], + "contacts": { + "Expert": [ + { + "id": "30435ff9-9b96-44af-a5a9-e05c8b1ae2df", + "info": "expert" + } + ], + "Steward": [ + { + "id": "30435ff9-9b96-44af-a5a9-e05c8b1ae2df", + "info": "steward" + } + ] + }, + "resources": [ + { + "displayName": "microsoft", + "url": "https://www.microsoft.com/en-sg/" + } + ] + }, + { + "guid": "952c7ba4-4c89-42d8-a05a-7d2161be7008", + "qualifiedName": "Term2@Glossary", + "name": "Term2", + "shortDescription": "shortDescription2", + "lastModifiedTS": "1", + "abbreviation": "T2", + "createdBy": "23863cef-a2e9-40a3-a427-44dc0d201f61", + "updatedBy": "23863cef-a2e9-40a3-a427-44dc0d201f61", + "createTime": 1606287312495, + "updateTime": 1606287312495, + "status": "Approved", + "anchor": { + "glossaryGuid": "c018ddaf-7c21-4b37-a838-dae5f110c3d8", + "relationGuid": "9385640b-e6be-437d-a6b9-62d11c14a189" + }, + "seeAlso": [ + { + "termGuid": "54688d39-b298-4104-9e80-f2a16f44aaea", + "relationGuid": "dfa44030-bd14-4111-a0f1-3d01c964eb01", + "displayText": "Term1" + } + ], + "synonyms": [ + { + "termGuid": "54688d39-b298-4104-9e80-f2a16f44aaea", + "relationGuid": "15bcbd12-eb48-4b63-8ff5-74f7ec3a562c", + "displayText": "Term1" + } + ], + "resources": [ + { + "displayName": "microsoft", + "url": "https://www.microsoft.com/en-sg/" + } + ] + } + ] + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_ListRelatedCategories.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_ListRelatedCategories.json new file mode 100644 index 000000000000..a7c830cc3dca --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_ListRelatedCategories.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "categoryGuid": "ed7458f0-9463-48a5-b5c6-4f785fb34e12", + "limit": "-1", + "offset": "0", + "sort": "ASC" + }, + "responses": { + "200": { + "body": { + "parent": [ + { + "categoryGuid": "6c8233cd-f6dc-6ef7-5597-b18ab590f2fc", + "relationGuid": "25cf5e46-c551-4ed4-8919-505c29ae311d" + } + ], + "children": [ + { + "categoryGuid": "abc6ac1b-5700-9c70-3f5a-60a519150035", + "parentCategoryGuid": "3243ea0a-9492-47e1-392e-a84e64980af9", + "relationGuid": "12d41563-2fd9-4be5-9eb9-9908f811a8f2", + "displayText": "Category4" + } + ] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_ListRelatedTerms.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_ListRelatedTerms.json new file mode 100644 index 000000000000..6be887a2d0c2 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_ListRelatedTerms.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "termGuid": "54688d39-b298-4104-9e80-f2a16f44aaea", + "limit": "-1", + "offset": "0", + "sort": "ASC" + }, + "responses": { + "200": { + "body": { + "seeAlso": [ + { + "termGuid": "952c7ba4-4c89-42d8-a05a-7d2161be7008", + "relationGuid": "dfa44030-bd14-4111-a0f1-3d01c964eb01", + "displayText": "Term2" + } + ], + "synonyms": [ + { + "termGuid": "952c7ba4-4c89-42d8-a05a-7d2161be7008", + "relationGuid": "15bcbd12-eb48-4b63-8ff5-74f7ec3a562c", + "displayText": "Term2" + } + ] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_ListTermsByGlossaryName.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_ListTermsByGlossaryName.json new file mode 100644 index 000000000000..7f3d3e333b81 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_ListTermsByGlossaryName.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "glossaryName": "Glossary", + "limit": "10", + "offset": "0", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "body": [ + { + "qualifiedName": "Administrative and Support and Waste Management and Remediation Services@Glossary", + "name": "Administrative and Support and Waste Management and Remediation Services", + "createTime": 1608002832463, + "updateTime": 1608002832463, + "guid": "daf0ba4d-bc9a-4536-8a88-4b58e39dd3d4", + "status": "Approved", + "templateName": [], + "shortDescription": null, + "longDescription": "Contoso Corporation Retail industry sub segment involving Business Support Services; Employment Services; Facilities Support Services; Investigation and Security Services; Office Administrative Services; Other Support Services; Remediation and Other Waste Management Services; Services to Buildings and Dwellings; Travel Arrangement and Reservation Services; Waste Collection; and Waste Treatment and Disposal." + }, + { + "qualifiedName": "Advisory Services (AS) @Glossary", + "name": "Advisory Services (AS) ", + "createTime": 1608002832463, + "updateTime": 1608002832463, + "guid": "21b82aa6-483b-43ff-a484-71d34aa34bbc", + "status": "Approved", + "templateName": [], + "shortDescription": null, + "longDescription": "Delivery Unit (DU) under Applied Technology focused on a range of consulting services provided by Certified Public Accountants (CPA) and other financial advisors to businesses and high net worth individuals who require specialized advice on capital formation, cash flow and wealth management." + }, + { + "qualifiedName": "Audit @Glossary", + "name": "Audit ", + "createTime": 1608002832463, + "updateTime": 1608002832463, + "guid": "02785962-e01e-425b-8698-5194e116130f", + "status": "Approved", + "templateName": [], + "shortDescription": null, + "longDescription": "Delivery Unit (DU) under Applied Technology focused on auditing services." + } + ] + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_PartialUpdateGlossary.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_PartialUpdateGlossary.json new file mode 100644 index 000000000000..ccb2b10ca779 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_PartialUpdateGlossary.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "glossaryGuid": "c018ddaf-7c21-4b37-a838-dae5f110c3d8", + "partialUpdates": { + "longDescription": "long description after partial update" + } + }, + "responses": { + "200": { + "body": { + "guid": "c018ddaf-7c21-4b37-a838-dae5f110c3d8", + "qualifiedName": "Glossary", + "name": "Glossary", + "shortDescription": "shortDescription", + "longDescription": "long description after partial update", + "lastModifiedTS": "3", + "language": "en", + "usage": "demo glossary", + "terms": [ + { + "termGuid": "54688d39-b298-4104-9e80-f2a16f44aaea", + "relationGuid": "7b6a8149-a928-476a-a068-dce58653cfa0", + "displayText": "Term1" + }, + { + "termGuid": "952c7ba4-4c89-42d8-a05a-7d2161be7008", + "relationGuid": "9385640b-e6be-437d-a6b9-62d11c14a189", + "displayText": "Term2" + } + ], + "categories": [ + { + "categoryGuid": "0d6766f6-f4b6-435b-bda2-d3edc358998e", + "parentCategoryGuid": "ed7458f0-9463-48a5-b5c6-4f785fb34e12", + "relationGuid": "26a486a4-a8e2-483c-8a84-3b88e909f8d2", + "displayText": "Category3" + }, + { + "categoryGuid": "ed7458f0-9463-48a5-b5c6-4f785fb34e12", + "parentCategoryGuid": "e47c4584-daca-4f9e-9092-194e04692c9a", + "relationGuid": "7bdcef93-a57a-4d1d-95ab-9d3036f394a0", + "displayText": "Category1" + }, + { + "categoryGuid": "e47c4584-daca-4f9e-9092-194e04692c9a", + "relationGuid": "94071e56-fd3e-4441-93ff-1834f818482d", + "displayText": "Category2" + } + ] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_PartialUpdateGlossaryCategory.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_PartialUpdateGlossaryCategory.json new file mode 100644 index 000000000000..4ce88f2cefeb --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_PartialUpdateGlossaryCategory.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "categoryGuid": "3243ea0a-9492-47e1-392e-a84e64980af9", + "partialUpdates": { + "longDescription": "long description after paritial update" + } + }, + "responses": { + "200": { + "body": { + "guid": "ed7458f0-9463-48a5-b5c6-4f785fb34e12", + "qualifiedName": "Category1.Category2@Glossary", + "name": "Category1", + "longDescription": "long description after paritial update", + "lastModifiedTS": "3", + "anchor": { + "glossaryGuid": "c018ddaf-7c21-4b37-a838-dae5f110c3d8", + "relationGuid": "7bdcef93-a57a-4d1d-95ab-9d3036f394a0" + }, + "parentCategory": { + "categoryGuid": "e47c4584-daca-4f9e-9092-194e04692c9a", + "relationGuid": "82d569cd-2273-4ef9-9f67-c6f2ed637c20" + }, + "childrenCategories": [ + { + "categoryGuid": "0d6766f6-f4b6-435b-bda2-d3edc358998e", + "parentCategoryGuid": "ed7458f0-9463-48a5-b5c6-4f785fb34e12", + "relationGuid": "e50be8c5-7905-4c92-b676-4278866c2c2f", + "displayText": "Category3" + } + ], + "terms": [ + { + "termGuid": "54688d39-b298-4104-9e80-f2a16f44aaea", + "relationGuid": "6aebf5ac-0c83-40c0-98bf-958fe9c99007", + "displayText": "Term1" + } + ] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_PartialUpdateGlossaryTerm.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_PartialUpdateGlossaryTerm.json new file mode 100644 index 000000000000..51f80829c9d5 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_PartialUpdateGlossaryTerm.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "termGuid": "54688d39-b298-4104-9e80-f2a16f44aaea", + "partialUpdates": { + "longDescription": "long desc after partial update" + } + }, + "responses": { + "200": { + "body": { + "guid": "54688d39-b298-4104-9e80-f2a16f44aaea", + "qualifiedName": "Term1@Glossary", + "name": "Term1", + "shortDescription": "shortDescription1", + "longDescription": "long desc after partial update", + "lastModifiedTS": "2", + "abbreviation": "T1", + "createdBy": "23863cef-a2e9-40a3-a427-44dc0d201f61", + "updatedBy": "23863cef-a2e9-40a3-a427-44dc0d201f61", + "createTime": 1606287247276, + "updateTime": 1606290587593, + "status": "Approved", + "anchor": { + "glossaryGuid": "c018ddaf-7c21-4b37-a838-dae5f110c3d8", + "relationGuid": "7b6a8149-a928-476a-a068-dce58653cfa0" + }, + "categories": [ + { + "categoryGuid": "ed7458f0-9463-48a5-b5c6-4f785fb34e12", + "relationGuid": "6aebf5ac-0c83-40c0-98bf-958fe9c99007", + "displayText": "Category1" + } + ], + "seeAlso": [ + { + "termGuid": "952c7ba4-4c89-42d8-a05a-7d2161be7008", + "relationGuid": "dfa44030-bd14-4111-a0f1-3d01c964eb01", + "displayText": "Term2" + } + ], + "synonyms": [ + { + "termGuid": "952c7ba4-4c89-42d8-a05a-7d2161be7008", + "relationGuid": "15bcbd12-eb48-4b63-8ff5-74f7ec3a562c", + "displayText": "Term2" + } + ], + "resources": [ + { + "displayName": "microsoft", + "url": "https://www.microsoft.com/en-sg/" + } + ] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_RemoveTermAssignmentFromEntities.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_RemoveTermAssignmentFromEntities.json new file mode 100644 index 000000000000..ca978c5df1fc --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_RemoveTermAssignmentFromEntities.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "termGuid": "8a7f65ec-6429-0b9b-3734-ec57bf1e34c2", + "relatedObjectIds": [ + { + "guid": "16feb2a1-2c79-ade1-338d-fb24fcb8b8bd", + "relationshipGuid": "624f08bb-3c93-4f03-9ce1-ed2ce2c7c8d5" + } + ] + }, + "responses": { + "204": {} + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_UpdateGlossary.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_UpdateGlossary.json new file mode 100644 index 000000000000..51372e212451 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_UpdateGlossary.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "glossaryGuid": "c018ddaf-7c21-4b37-a838-dae5f110c3d8", + "updatedGlossary": { + "guid": "c018ddaf-7c21-4b37-a838-dae5f110c3d8", + "qualifiedName": "Glossary", + "name": "Glossary", + "shortDescription": "shortDescription", + "longDescription": "longDescription after update", + "lastModifiedTS": "1", + "language": "en", + "usage": "demo glossary", + "terms": [ + { + "termGuid": "54688d39-b298-4104-9e80-f2a16f44aaea", + "relationGuid": "7b6a8149-a928-476a-a068-dce58653cfa0", + "displayText": "Term1" + }, + { + "termGuid": "952c7ba4-4c89-42d8-a05a-7d2161be7008", + "relationGuid": "9385640b-e6be-437d-a6b9-62d11c14a189", + "displayText": "Term2" + } + ], + "categories": [ + { + "categoryGuid": "0d6766f6-f4b6-435b-bda2-d3edc358998e", + "parentCategoryGuid": "ed7458f0-9463-48a5-b5c6-4f785fb34e12", + "relationGuid": "26a486a4-a8e2-483c-8a84-3b88e909f8d2", + "displayText": "Category3" + }, + { + "categoryGuid": "ed7458f0-9463-48a5-b5c6-4f785fb34e12", + "parentCategoryGuid": "e47c4584-daca-4f9e-9092-194e04692c9a", + "relationGuid": "7bdcef93-a57a-4d1d-95ab-9d3036f394a0", + "displayText": "Category1" + }, + { + "categoryGuid": "e47c4584-daca-4f9e-9092-194e04692c9a", + "relationGuid": "94071e56-fd3e-4441-93ff-1834f818482d", + "displayText": "Category2" + } + ] + } + }, + "responses": { + "200": { + "body": { + "guid": "c018ddaf-7c21-4b37-a838-dae5f110c3d8", + "qualifiedName": "Glossary", + "name": "Glossary", + "shortDescription": "shortDescription", + "longDescription": "longDescription after update", + "lastModifiedTS": "2", + "language": "en", + "usage": "demo glossary", + "terms": [ + { + "termGuid": "54688d39-b298-4104-9e80-f2a16f44aaea", + "relationGuid": "7b6a8149-a928-476a-a068-dce58653cfa0", + "displayText": "Term1" + }, + { + "termGuid": "952c7ba4-4c89-42d8-a05a-7d2161be7008", + "relationGuid": "9385640b-e6be-437d-a6b9-62d11c14a189", + "displayText": "Term2" + } + ], + "categories": [ + { + "categoryGuid": "0d6766f6-f4b6-435b-bda2-d3edc358998e", + "parentCategoryGuid": "ed7458f0-9463-48a5-b5c6-4f785fb34e12", + "relationGuid": "26a486a4-a8e2-483c-8a84-3b88e909f8d2", + "displayText": "Category3" + }, + { + "categoryGuid": "ed7458f0-9463-48a5-b5c6-4f785fb34e12", + "parentCategoryGuid": "e47c4584-daca-4f9e-9092-194e04692c9a", + "relationGuid": "7bdcef93-a57a-4d1d-95ab-9d3036f394a0", + "displayText": "Category1" + }, + { + "categoryGuid": "e47c4584-daca-4f9e-9092-194e04692c9a", + "relationGuid": "94071e56-fd3e-4441-93ff-1834f818482d", + "displayText": "Category2" + } + ] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_UpdateGlossaryCategory.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_UpdateGlossaryCategory.json new file mode 100644 index 000000000000..72071aefe48c --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_UpdateGlossaryCategory.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "categoryGuid": "ed7458f0-9463-48a5-b5c6-4f785fb34e12", + "glossaryCategory": { + "guid": "ed7458f0-9463-48a5-b5c6-4f785fb34e12", + "qualifiedName": "Category1@Glossary", + "name": "Category1", + "lastModifiedTS": "1", + "anchor": { + "glossaryGuid": "c018ddaf-7c21-4b37-a838-dae5f110c3d8", + "relationGuid": "7bdcef93-a57a-4d1d-95ab-9d3036f394a0" + }, + "terms": [ + { + "termGuid": "54688d39-b298-4104-9e80-f2a16f44aaea", + "relationGuid": "6aebf5ac-0c83-40c0-98bf-958fe9c99007" + } + ], + "childrenCategories": [ + { + "categoryGuid": "0d6766f6-f4b6-435b-bda2-d3edc358998e" + } + ], + "parentCategory": { + "categoryGuid": "e47c4584-daca-4f9e-9092-194e04692c9a" + } + } + }, + "responses": { + "200": { + "body": { + "guid": "ed7458f0-9463-48a5-b5c6-4f785fb34e12", + "qualifiedName": "Category1.Category2@Glossary", + "name": "Category1", + "lastModifiedTS": "2", + "anchor": { + "glossaryGuid": "c018ddaf-7c21-4b37-a838-dae5f110c3d8", + "relationGuid": "7bdcef93-a57a-4d1d-95ab-9d3036f394a0" + }, + "parentCategory": { + "categoryGuid": "e47c4584-daca-4f9e-9092-194e04692c9a", + "relationGuid": "82d569cd-2273-4ef9-9f67-c6f2ed637c20" + }, + "childrenCategories": [ + { + "categoryGuid": "0d6766f6-f4b6-435b-bda2-d3edc358998e", + "parentCategoryGuid": "ed7458f0-9463-48a5-b5c6-4f785fb34e12", + "relationGuid": "e50be8c5-7905-4c92-b676-4278866c2c2f", + "displayText": "Category3" + } + ], + "terms": [ + { + "termGuid": "54688d39-b298-4104-9e80-f2a16f44aaea", + "relationGuid": "6aebf5ac-0c83-40c0-98bf-958fe9c99007", + "displayText": "Term1" + } + ] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_UpdateGlossaryTerm.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_UpdateGlossaryTerm.json new file mode 100644 index 000000000000..294d93bdf831 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Glossary_UpdateGlossaryTerm.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "termGuid": "54688d39-b298-4104-9e80-f2a16f44aaea", + "glossaryTerm": { + "guid": "54688d39-b298-4104-9e80-f2a16f44aaea", + "qualifiedName": "Term1@Glossary", + "name": "Term1", + "shortDescription": "shortDescription1", + "lastModifiedTS": "1", + "abbreviation": "T1", + "status": "Approved", + "anchor": { + "glossaryGuid": "c018ddaf-7c21-4b37-a838-dae5f110c3d8", + "relationGuid": "7b6a8149-a928-476a-a068-dce58653cfa0" + }, + "resources": [ + { + "displayName": "microsoft", + "url": "https://www.microsoft.com/en-sg/" + } + ], + "seeAlso": [ + { + "termGuid": "952c7ba4-4c89-42d8-a05a-7d2161be7008" + }, + { + "termGuid": "821beef0-ced9-47ba-8f7f-c4f3459f4d18" + } + ], + "synonyms": [ + { + "termGuid": "952c7ba4-4c89-42d8-a05a-7d2161be7008" + }, + { + "termGuid": "821beef0-ced9-47ba-8f7f-c4f3459f4d18" + } + ] + } + }, + "responses": { + "200": { + "body": { + "guid": "54688d39-b298-4104-9e80-f2a16f44aaea", + "qualifiedName": "Term1@Glossary", + "name": "Term1", + "shortDescription": "shortDescription1", + "lastModifiedTS": "1", + "abbreviation": "T1", + "createdBy": "23863cef-a2e9-40a3-a427-44dc0d201f61", + "updatedBy": "23863cef-a2e9-40a3-a427-44dc0d201f61", + "createTime": 1606287247276, + "updateTime": 1606287247276, + "status": "Approved", + "anchor": { + "glossaryGuid": "c018ddaf-7c21-4b37-a838-dae5f110c3d8", + "relationGuid": "7b6a8149-a928-476a-a068-dce58653cfa0" + }, + "seeAlso": [ + { + "termGuid": "952c7ba4-4c89-42d8-a05a-7d2161be7008", + "relationGuid": "dfa44030-bd14-4111-a0f1-3d01c964eb01", + "displayText": "Term2" + }, + { + "termGuid": "821beef0-ced9-47ba-8f7f-c4f3459f4d18", + "relationGuid": "4d802ada-65f3-45a8-969f-aba47d9c6200", + "displayText": "Term3" + } + ], + "synonyms": [ + { + "termGuid": "952c7ba4-4c89-42d8-a05a-7d2161be7008", + "relationGuid": "15bcbd12-eb48-4b63-8ff5-74f7ec3a562c", + "displayText": "Term2" + }, + { + "termGuid": "821beef0-ced9-47ba-8f7f-c4f3459f4d18", + "relationGuid": "bb26fe7c-6e26-46ad-b936-50a5f7ffbbaf", + "displayText": "Term3" + } + ], + "resources": [ + { + "displayName": "microsoft", + "url": "https://www.microsoft.com/en-sg/" + } + ] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/NextPageLineage.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/NextPageLineage.json new file mode 100644 index 000000000000..bcba2d929ef0 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/NextPageLineage.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "guid": "a6894eb3-81f3-829b-2adc-52f3e603411a", + "offset": "0", + "limit": "5", + "getDerivedLineage": true, + "direction": "INPUT", + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "body": { + "baseEntityGuid": "a6894eb3-81f3-829b-2adc-52f3e603411a", + "lineageDirection": "INPUT", + "lineageDepth": 1, + "lineageWidth": 1, + "childrenCount": 1, + "guidEntityMap": {}, + "widthCounts": {}, + "includeParent": true, + "relations": [], + "parentRelations": [] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Relationship_Create.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Relationship_Create.json new file mode 100644 index 000000000000..e0e4a09e383e --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Relationship_Create.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "relationship": { + "typeName": "AtlasGlossarySynonym", + "attributes": { + "expression": "test", + "steward": "test", + "description": "test", + "source": null, + "status": null + }, + "end1": { + "guid": "856d31e6-e342-a1ce-6273-22ddb77029c6", + "typeName": "AtlasGlossaryTerm" + }, + "end2": { + "guid": "77481037-2874-9bdc-9b9e-76bb94ee71aa", + "typeName": "AtlasGlossaryTerm" + }, + "label": "r:AtlasGlossarySynonym", + "status": "ACTIVE", + "createdBy": "ServiceAdmin", + "updatedBy": "ServiceAdmin", + "version": 0 + } + }, + "responses": { + "200": { + "body": { + "typeName": "AtlasGlossarySynonym", + "attributes": { + "expression": "test", + "steward": "test", + "description": "test", + "source": null, + "status": null + }, + "guid": "63023d5b-c499-4360-a513-16bcbf73b039", + "end1": { + "guid": "856d31e6-e342-a1ce-6273-22ddb77029c6", + "typeName": "AtlasGlossaryTerm" + }, + "end2": { + "guid": "77481037-2874-9bdc-9b9e-76bb94ee71aa", + "typeName": "AtlasGlossaryTerm" + }, + "label": "r:AtlasGlossarySynonym", + "status": "ACTIVE", + "createdBy": "ServiceAdmin", + "updatedBy": "ServiceAdmin", + "createTime": 1553840134724, + "updateTime": 1553840134724, + "version": 0 + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Relationship_Delete.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Relationship_Delete.json new file mode 100644 index 000000000000..291912c8ccac --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Relationship_Delete.json @@ -0,0 +1,9 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "guid": "5cf8a9e5-c9fd-abe0-2e8c-d40024263dcb" + }, + "responses": { + "204": {} + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Relationship_Get.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Relationship_Get.json new file mode 100644 index 000000000000..55d48470b25c --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Relationship_Get.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "guid": "5cf8a9e5-c9fd-abe0-2e8c-d40024263dcb", + "extendedInfo": "false" + }, + "responses": { + "200": { + "body": { + "relationship": { + "typeName": "AtlasGlossarySynonym", + "attributes": { + "expression": null, + "steward": null, + "description": null, + "source": null, + "status": null + }, + "guid": "de23cd5a-021c-413d-98a5-98752a1f7a3b", + "end1": { + "guid": "856d31e6-e342-a1ce-6273-22ddb77029c6", + "typeName": "AtlasGlossaryTerm" + }, + "end2": { + "guid": "b0942506-2d7d-1f45-d286-c29ca9e7f2ef", + "typeName": "AtlasGlossaryTerm" + }, + "label": "r:AtlasGlossarySynonym", + "status": "ACTIVE", + "createdBy": "ServiceAdmin", + "updatedBy": "ServiceAdmin", + "createTime": 1553838993803, + "updateTime": 1553838993803, + "version": 0 + } + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Relationship_Update.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Relationship_Update.json new file mode 100644 index 000000000000..95c8d4945113 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Relationship_Update.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "relationship": { + "typeName": "AtlasGlossarySynonym", + "attributes": { + "expression": "test", + "steward": "test", + "description": "test", + "source": null, + "status": null + }, + "guid": "b2810301-293f-493f-88f1-7ac8784fb1fd", + "end1": { + "guid": "77481037-2874-9bdc-9b9e-76bb94ee71aa", + "typeName": "AtlasGlossaryTerm" + }, + "end2": { + "guid": "b0942506-2d7d-1f45-d286-c29ca9e7f2ef", + "typeName": "AtlasGlossaryTerm" + }, + "label": "r:AtlasGlossarySynonym", + "status": "ACTIVE", + "createdBy": "ServiceAdmin", + "updatedBy": "ServiceAdmin", + "version": 0 + } + }, + "responses": { + "200": { + "body": { + "typeName": "AtlasGlossarySynonym", + "attributes": { + "expression": "test", + "steward": "test", + "description": "test", + "source": null, + "status": null + }, + "guid": "b2810301-293f-493f-88f1-7ac8784fb1fd", + "end1": { + "guid": "77481037-2874-9bdc-9b9e-76bb94ee71aa", + "typeName": "AtlasGlossaryTerm" + }, + "end2": { + "guid": "b0942506-2d7d-1f45-d286-c29ca9e7f2ef", + "typeName": "AtlasGlossaryTerm" + }, + "label": "r:AtlasGlossarySynonym", + "status": "ACTIVE", + "createdBy": "ServiceAdmin", + "updatedBy": "ServiceAdmin", + "createTime": 1553839805039, + "updateTime": 1553839805039, + "version": 0 + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_CreateTypeDefinitions.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_CreateTypeDefinitions.json new file mode 100644 index 000000000000..f7d992e65bea --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_CreateTypeDefinitions.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "typesDef": { + "enumDefs": [], + "structDefs": [], + "classificationDefs": [], + "entityDefs": [ + { + "name": "azure_sql_server_test", + "superTypes": [ + "azure_resource" + ], + "typeVersion": "1.0", + "attributeDefs": [ + { + "name": "databases", + "typeName": "array", + "cardinality": "SET", + "isIndexable": false, + "isOptional": true, + "isUnique": false + } + ] + } + ], + "relationshipDefs": [] + } + }, + "responses": { + "200": { + "body": { + "enumDefs": [], + "structDefs": [], + "classificationDefs": [], + "entityDefs": [ + { + "category": "ENTITY", + "guid": "a47fd902-a564-45f1-aa51-ce9224955881", + "createdBy": "ServiceAdmin", + "updatedBy": "ServiceAdmin", + "createTime": 1553672211954, + "updateTime": 1553672211954, + "version": 1, + "name": "azure_sql_server_test", + "description": "azure_sql_server_test", + "typeVersion": "1.0", + "attributeDefs": [ + { + "name": "databases", + "typeName": "array", + "isOptional": true, + "cardinality": "SET", + "valuesMinCount": 0, + "valuesMaxCount": 2147483647, + "isUnique": false, + "isIndexable": false, + "includeInNotification": false + } + ], + "superTypes": [ + "azure_resource" + ], + "subTypes": [] + } + ], + "relationshipDefs": [] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_DeleteTypeByName.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_DeleteTypeByName.json new file mode 100644 index 000000000000..d95c0728b9cb --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_DeleteTypeByName.json @@ -0,0 +1,9 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "name": "hive_order" + }, + "responses": { + "204": {} + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_DeleteTypeDefinitions.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_DeleteTypeDefinitions.json new file mode 100644 index 000000000000..87ae72673c5a --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_DeleteTypeDefinitions.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "typesDef": { + "enumDefs": [], + "structDefs": [], + "classificationDefs": [], + "entityDefs": [ + { + "name": "azure_sql_server_test", + "superTypes": [ + "azure_resource" + ], + "typeVersion": "1.0", + "attributeDefs": [ + { + "name": "databases", + "typeName": "array", + "cardinality": "SET", + "isIndexable": false, + "isOptional": true, + "isUnique": false + } + ] + } + ], + "relationshipDefs": [] + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_GetAllEnumDef.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_GetAllEnumDef.json new file mode 100644 index 000000000000..9d992ab37408 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_GetAllEnumDef.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "type": "enum" + }, + "responses": { + "200": { + "body": { + "enumDefs": [ + { + "category": "ENUM", + "guid": "0ddc2fcf-ad17-4d06-984a-ffb2ffb2a941", + "createdBy": "admin", + "updatedBy": "admin", + "createTime": 1604728877305, + "updateTime": 1604728877305, + "version": 1, + "name": "glossary_term_status_value", + "description": "glossary_term_status_value", + "typeVersion": "1.0", + "lastModifiedTS": "1", + "elementDefs": [ + { + "value": "Approved", + "ordinal": 0 + }, + { + "value": "Alert", + "ordinal": 1 + }, + { + "value": "Expired", + "ordinal": 2 + }, + { + "value": "Draft", + "ordinal": 3 + } + ] + }, + { + "category": "ENUM", + "guid": "c694edf1-6f9e-4b60-b832-23e8d6187675", + "createdBy": "admin", + "updatedBy": "admin", + "createTime": 1604728832692, + "updateTime": 1604728905525, + "version": 2, + "name": "AtlasGlossaryTermRelationshipStatus", + "description": "TermRelationshipStatus defines how reliable the relationship is between two glossary terms", + "typeVersion": "1.1", + "serviceType": "atlas_core", + "lastModifiedTS": "2", + "elementDefs": [ + { + "value": "DRAFT", + "description": "DRAFT means the relationship is under development.", + "ordinal": 0 + }, + { + "value": "ACTIVE", + "description": "ACTIVE means the relationship is validated and in use.", + "ordinal": 1 + }, + { + "value": "DEPRECATED", + "description": "DEPRECATED means the the relationship is being phased out.", + "ordinal": 2 + }, + { + "value": "OBSOLETE", + "description": "OBSOLETE means that the relationship should not be used anymore.", + "ordinal": 3 + }, + { + "value": "OTHER", + "description": "OTHER means that there is another status.", + "ordinal": 99 + } + ] + } + ], + "structDefs": [], + "classificationDefs": [], + "entityDefs": [], + "relationshipDefs": [] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_GetAllTermTemplateDef.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_GetAllTermTemplateDef.json new file mode 100644 index 000000000000..c799b74974df --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_GetAllTermTemplateDef.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "type": "term_template" + }, + "responses": { + "200": { + "body": { + "enumDefs": [], + "structDefs": [], + "classificationDefs": [], + "entityDefs": [], + "relationshipDefs": [], + "termTemplateDefs": [ + { + "category": "TERM_TEMPLATE", + "guid": "d776af9c-985c-4168-abb2-477523dbfc70", + "createdBy": "23863cef-a2e9-40a3-a427-44dc0d201f61", + "updatedBy": "23863cef-a2e9-40a3-a427-44dc0d201f61", + "createTime": 1606300465443, + "updateTime": 1606300465443, + "version": 1, + "name": "MS KPI", + "description": "This is the description", + "typeVersion": "1.0", + "lastModifiedTS": "1", + "attributeDefs": [ + { + "name": "date", + "typeName": "date", + "isOptional": true, + "cardinality": "SINGLE", + "valuesMinCount": 0, + "valuesMaxCount": 1, + "isUnique": false, + "isIndexable": false, + "includeInNotification": false, + "options": { + "isDisabled": "false" + } + }, + { + "name": "single choice", + "typeName": "TERM_TEMPLATE_ENUM_b629447d_d220_4cc6_a1a7_3a888d3ccc03", + "isOptional": true, + "cardinality": "SINGLE", + "valuesMinCount": 0, + "valuesMaxCount": 1, + "isUnique": false, + "isIndexable": false, + "includeInNotification": false, + "options": { + "isDisabled": "false" + } + }, + { + "name": "multi choice", + "typeName": "array", + "isOptional": true, + "cardinality": "SET", + "valuesMinCount": 0, + "valuesMaxCount": 2147483647, + "isUnique": false, + "isIndexable": false, + "includeInNotification": false, + "options": { + "isDisabled": "false" + } + }, + { + "name": "plain string", + "typeName": "string", + "isOptional": true, + "cardinality": "SINGLE", + "valuesMinCount": 0, + "valuesMaxCount": 1, + "isUnique": false, + "isIndexable": false, + "includeInNotification": false, + "defaultValue": "this is a default value", + "options": { + "isDisabled": "false" + } + } + ] + } + ] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_GetAllTypeDefinitions.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_GetAllTypeDefinitions.json new file mode 100644 index 000000000000..9315e8ddd813 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_GetAllTypeDefinitions.json @@ -0,0 +1,608 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "includeTermTemplate": true + }, + "responses": { + "200": { + "body": { + "enumDefs": [ + { + "category": "ENUM", + "guid": "0ddc2fcf-ad17-4d06-984a-ffb2ffb2a941", + "createdBy": "admin", + "updatedBy": "admin", + "createTime": 1604728877305, + "updateTime": 1604728877305, + "version": 1, + "name": "glossary_term_status_value", + "description": "glossary_term_status_value", + "typeVersion": "1.0", + "lastModifiedTS": "1", + "elementDefs": [ + { + "value": "Approved", + "ordinal": 0 + }, + { + "value": "Alert", + "ordinal": 1 + }, + { + "value": "Expired", + "ordinal": 2 + }, + { + "value": "Draft", + "ordinal": 3 + } + ] + }, + { + "category": "ENUM", + "guid": "c694edf1-6f9e-4b60-b832-23e8d6187675", + "createdBy": "admin", + "updatedBy": "admin", + "createTime": 1604728832692, + "updateTime": 1604728905525, + "version": 2, + "name": "AtlasGlossaryTermRelationshipStatus", + "description": "TermRelationshipStatus defines how reliable the relationship is between two glossary terms", + "typeVersion": "1.1", + "serviceType": "atlas_core", + "lastModifiedTS": "2", + "elementDefs": [ + { + "value": "DRAFT", + "description": "DRAFT means the relationship is under development.", + "ordinal": 0 + }, + { + "value": "ACTIVE", + "description": "ACTIVE means the relationship is validated and in use.", + "ordinal": 1 + }, + { + "value": "DEPRECATED", + "description": "DEPRECATED means the the relationship is being phased out.", + "ordinal": 2 + }, + { + "value": "OBSOLETE", + "description": "OBSOLETE means that the relationship should not be used anymore.", + "ordinal": 3 + }, + { + "value": "OTHER", + "description": "OTHER means that there is another status.", + "ordinal": 99 + } + ] + }, + { + "category": "ENUM", + "guid": "eb499a3e-31cf-432a-b867-99f25f7ef096", + "createdBy": "admin", + "updatedBy": "admin", + "createTime": 1604730390805, + "updateTime": 1604730390805, + "version": 1, + "name": "parquet_field_repetition_type", + "description": "parquet_field_repetition_type", + "typeVersion": "1.0", + "lastModifiedTS": "1", + "elementDefs": [ + { + "value": "optional", + "ordinal": 0 + }, + { + "value": "required", + "ordinal": 1 + }, + { + "value": "repeated", + "ordinal": 2 + } + ] + } + ], + "structDefs": [ + { + "category": "STRUCT", + "guid": "a8892bd7-59d6-47d8-b80d-ba4c7631098f", + "createdBy": "admin", + "updatedBy": "admin", + "createTime": 1604729507664, + "updateTime": 1604729507664, + "version": 1, + "name": "blob_soft_deleted_state", + "description": "blob_soft_deleted_state", + "typeVersion": "1.0", + "serviceType": "Azure Blob Storage", + "lastModifiedTS": "1", + "attributeDefs": [ + { + "name": "deleted", + "typeName": "boolean", + "isOptional": true, + "cardinality": "SINGLE", + "valuesMinCount": 0, + "valuesMaxCount": 1, + "isUnique": false, + "isIndexable": false, + "includeInNotification": false + }, + { + "name": "deletedTime", + "typeName": "date", + "isOptional": true, + "cardinality": "SINGLE", + "valuesMinCount": 0, + "valuesMaxCount": 1, + "isUnique": false, + "isIndexable": false, + "includeInNotification": false + }, + { + "name": "remainingRetentionDays", + "typeName": "long", + "isOptional": true, + "cardinality": "SINGLE", + "valuesMinCount": 0, + "valuesMaxCount": 1, + "isUnique": false, + "isIndexable": false, + "includeInNotification": false + } + ] + }, + { + "category": "STRUCT", + "guid": "bdeb8ba3-5b23-440c-8b9c-d545a033386f", + "createdBy": "admin", + "updatedBy": "admin", + "createTime": 1604729507404, + "updateTime": 1604729507404, + "version": 1, + "name": "blob_delete_retention_policy", + "description": "blob_delete_retention_policy", + "typeVersion": "1.0", + "serviceType": "Azure Blob Storage", + "lastModifiedTS": "1", + "attributeDefs": [ + { + "name": "enabled", + "typeName": "boolean", + "isOptional": true, + "cardinality": "SINGLE", + "valuesMinCount": 0, + "valuesMaxCount": 1, + "isUnique": false, + "isIndexable": false, + "includeInNotification": false + }, + { + "name": "days", + "typeName": "long", + "isOptional": true, + "cardinality": "SINGLE", + "valuesMinCount": 0, + "valuesMaxCount": 1, + "isUnique": false, + "isIndexable": false, + "includeInNotification": false + } + ] + } + ], + "classificationDefs": [ + { + "category": "CLASSIFICATION", + "guid": "bd97460e-e5db-4701-8158-5b4062cf8a10", + "createdBy": "admin", + "updatedBy": "admin", + "createTime": 1604730971448, + "updateTime": 1604730971448, + "version": 1, + "name": "MICROSOFT.GOVERNMENT.CHILE.CDI_NUMBER", + "description": "Chile Identity Card Number", + "typeVersion": "1.0", + "options": { + "displayName": "Chile Identity Card Number" + }, + "attributeDefs": [], + "superTypes": [], + "entityTypes": [], + "subTypes": [] + }, + { + "category": "CLASSIFICATION", + "guid": "da1d7441-5bce-4552-9dd6-4c2174a823a5", + "createdBy": "admin", + "updatedBy": "admin", + "createTime": 1604730727163, + "updateTime": 1604730727163, + "version": 1, + "name": "MICROSOFT.PERSONAL.EU.GPS_COORDINATES", + "description": "EU GPS Coordinates", + "typeVersion": "1.0", + "options": { + "displayName": "EU GPS Coordinates" + }, + "attributeDefs": [], + "superTypes": [], + "entityTypes": [], + "subTypes": [] + } + ], + "entityDefs": [ + { + "category": "ENTITY", + "guid": "7c53da5d-2797-4e8a-9b89-dd9b3b26ffa8", + "createdBy": "admin", + "updatedBy": "admin", + "createTime": 1604730605047, + "updateTime": 1604730605047, + "version": 1, + "name": "sap_ecc_data_element", + "description": "sap_ecc_data_element", + "typeVersion": "1.0", + "serviceType": "SAP ECC", + "lastModifiedTS": "1", + "attributeDefs": [ + { + "name": "dataType", + "typeName": "string", + "isOptional": true, + "cardinality": "SINGLE", + "valuesMinCount": 0, + "valuesMaxCount": 1, + "isUnique": false, + "isIndexable": false, + "includeInNotification": false + }, + { + "name": "length", + "typeName": "int", + "isOptional": true, + "cardinality": "SINGLE", + "valuesMinCount": 0, + "valuesMaxCount": 1, + "isUnique": false, + "isIndexable": false, + "includeInNotification": false + }, + { + "name": "decimalPlaces", + "typeName": "int", + "isOptional": true, + "cardinality": "SINGLE", + "valuesMinCount": 0, + "valuesMaxCount": 1, + "isUnique": false, + "isIndexable": false, + "includeInNotification": false + }, + { + "name": "documentation", + "typeName": "string", + "isOptional": true, + "cardinality": "SINGLE", + "valuesMinCount": 0, + "valuesMaxCount": 1, + "isUnique": false, + "isIndexable": false, + "includeInNotification": false + } + ], + "superTypes": [ + "Asset" + ], + "subTypes": [], + "relationshipAttributeDefs": [ + { + "name": "package", + "typeName": "sap_ecc_package", + "isOptional": false, + "cardinality": "SINGLE", + "valuesMinCount": -1, + "valuesMaxCount": -1, + "isUnique": false, + "isIndexable": false, + "includeInNotification": false, + "relationshipTypeName": "sap_ecc_package_data_elements", + "isLegacyAttribute": false + }, + { + "name": "table_fields", + "typeName": "array", + "isOptional": true, + "cardinality": "SET", + "valuesMinCount": -1, + "valuesMaxCount": -1, + "isUnique": false, + "isIndexable": false, + "includeInNotification": false, + "relationshipTypeName": "sap_ecc_table_field_data_element", + "isLegacyAttribute": false + }, + { + "name": "domain", + "typeName": "sap_ecc_domain", + "isOptional": true, + "cardinality": "SINGLE", + "valuesMinCount": -1, + "valuesMaxCount": -1, + "isUnique": false, + "isIndexable": false, + "includeInNotification": false, + "relationshipTypeName": "sap_ecc_data_element_domain", + "isLegacyAttribute": false + }, + { + "name": "meanings", + "typeName": "array", + "isOptional": true, + "cardinality": "SET", + "valuesMinCount": -1, + "valuesMaxCount": -1, + "isUnique": false, + "isIndexable": false, + "includeInNotification": false, + "relationshipTypeName": "AtlasGlossarySemanticAssignment", + "isLegacyAttribute": false + } + ] + }, + { + "category": "ENTITY", + "guid": "ed176e86-779c-4d56-b261-f0dbadba2ba4", + "createdBy": "462cd5a6-6967-4465-a617-db1f03a1ee31", + "updatedBy": "462cd5a6-6967-4465-a617-db1f03a1ee31", + "createTime": 1610985276183, + "updateTime": 1610985276183, + "version": 1, + "name": "spark_db", + "description": "spark_db", + "typeVersion": "1.0", + "serviceType": "spark", + "lastModifiedTS": "1", + "attributeDefs": [ + { + "name": "location", + "typeName": "string", + "isOptional": true, + "cardinality": "SINGLE", + "valuesMinCount": 0, + "valuesMaxCount": 1, + "isUnique": false, + "isIndexable": false, + "includeInNotification": false + }, + { + "name": "clusterName", + "typeName": "string", + "isOptional": true, + "cardinality": "SINGLE", + "valuesMinCount": 0, + "valuesMaxCount": 1, + "isUnique": false, + "isIndexable": false, + "includeInNotification": false + }, + { + "name": "parameters", + "typeName": "map", + "isOptional": true, + "cardinality": "SINGLE", + "valuesMinCount": 0, + "valuesMaxCount": 1, + "isUnique": false, + "isIndexable": false, + "includeInNotification": false + }, + { + "name": "ownerType", + "typeName": "string", + "isOptional": true, + "cardinality": "SINGLE", + "valuesMinCount": 0, + "valuesMaxCount": 1, + "isUnique": false, + "isIndexable": false, + "includeInNotification": false + } + ], + "superTypes": [ + "DataSet" + ], + "subTypes": [], + "relationshipAttributeDefs": [ + { + "name": "inputToProcesses", + "typeName": "array", + "isOptional": true, + "cardinality": "SET", + "valuesMinCount": -1, + "valuesMaxCount": -1, + "isUnique": false, + "isIndexable": false, + "includeInNotification": false, + "relationshipTypeName": "dataset_process_inputs", + "isLegacyAttribute": false + }, + { + "name": "pipeline", + "typeName": "spark_ml_pipeline", + "isOptional": true, + "cardinality": "SINGLE", + "valuesMinCount": -1, + "valuesMaxCount": -1, + "isUnique": false, + "isIndexable": false, + "includeInNotification": false, + "relationshipTypeName": "spark_ml_pipeline_dataset", + "isLegacyAttribute": false + }, + { + "name": "schema", + "typeName": "array", + "isOptional": true, + "cardinality": "SET", + "valuesMinCount": -1, + "valuesMaxCount": -1, + "isUnique": false, + "isIndexable": false, + "includeInNotification": false, + "relationshipTypeName": "avro_schema_associatedEntities", + "isLegacyAttribute": false + }, + { + "name": "tables", + "typeName": "array", + "isOptional": true, + "cardinality": "SET", + "valuesMinCount": -1, + "valuesMaxCount": -1, + "isUnique": false, + "isIndexable": false, + "includeInNotification": false, + "relationshipTypeName": "spark_table_db", + "isLegacyAttribute": false + }, + { + "name": "model", + "typeName": "spark_ml_model", + "isOptional": true, + "cardinality": "SINGLE", + "valuesMinCount": -1, + "valuesMaxCount": -1, + "isUnique": false, + "isIndexable": false, + "includeInNotification": false, + "relationshipTypeName": "spark_ml_model_dataset", + "isLegacyAttribute": false + }, + { + "name": "attachedSchema", + "typeName": "array", + "isOptional": true, + "cardinality": "SET", + "valuesMinCount": -1, + "valuesMaxCount": -1, + "isUnique": false, + "isIndexable": false, + "includeInNotification": false, + "relationshipTypeName": "dataset_attached_schemas", + "isLegacyAttribute": false + }, + { + "name": "meanings", + "typeName": "array", + "isOptional": true, + "cardinality": "SET", + "valuesMinCount": -1, + "valuesMaxCount": -1, + "isUnique": false, + "isIndexable": false, + "includeInNotification": false, + "relationshipTypeName": "AtlasGlossarySemanticAssignment", + "isLegacyAttribute": false + }, + { + "name": "outputFromProcesses", + "typeName": "array", + "isOptional": true, + "cardinality": "SET", + "valuesMinCount": -1, + "valuesMaxCount": -1, + "isUnique": false, + "isIndexable": false, + "includeInNotification": false, + "relationshipTypeName": "process_dataset_outputs", + "isLegacyAttribute": false + }, + { + "name": "tabular_schema", + "typeName": "tabular_schema", + "isOptional": true, + "cardinality": "SINGLE", + "valuesMinCount": -1, + "valuesMaxCount": -1, + "isUnique": false, + "isIndexable": false, + "includeInNotification": false, + "relationshipTypeName": "tabular_schema_datasets", + "isLegacyAttribute": false + } + ] + } + ], + "relationshipDefs": [ + { + "category": "RELATIONSHIP", + "guid": "6284b865-cbb3-4236-83ed-059a407f06fb", + "createdBy": "admin", + "updatedBy": "admin", + "createTime": 1604729078159, + "updateTime": 1604729323080, + "version": 2, + "name": "storm_topology_nodes", + "description": "storm_topology_nodes", + "typeVersion": "1.1", + "serviceType": "storm", + "lastModifiedTS": "2", + "attributeDefs": [], + "relationshipCategory": "ASSOCIATION", + "endDef1": { + "type": "storm_topology", + "name": "nodes", + "isContainer": false, + "cardinality": "SET", + "isLegacyAttribute": true + }, + "endDef2": { + "type": "storm_node", + "name": "topolgies", + "isContainer": false, + "cardinality": "SET", + "isLegacyAttribute": false + } + }, + { + "category": "RELATIONSHIP", + "guid": "dfd218d9-f8ab-43f8-b042-f8995c2312af", + "createdBy": "admin", + "updatedBy": "admin", + "createTime": 1604728947928, + "updateTime": 1604728947928, + "version": 1, + "name": "hive_table_db", + "description": "hive_table_db", + "typeVersion": "1.2", + "serviceType": "hive", + "lastModifiedTS": "1", + "attributeDefs": [], + "relationshipCategory": "AGGREGATION", + "relationshipLabel": "__hive_table.db", + "endDef1": { + "type": "hive_table", + "name": "db", + "isContainer": false, + "cardinality": "SINGLE", + "isLegacyAttribute": true + }, + "endDef2": { + "type": "hive_db", + "name": "tables", + "isContainer": true, + "cardinality": "SET", + "isLegacyAttribute": false + } + } + ] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_GetClassificationDefByGuid.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_GetClassificationDefByGuid.json new file mode 100644 index 000000000000..16d3b5cafa0e --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_GetClassificationDefByGuid.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "guid": "e79878fa-adba-4ee5-adc5-328d8841cd49" + }, + "responses": { + "200": { + "body": { + "category": "CLASSIFICATION", + "guid": "e79878fa-adba-4ee5-adc5-328d8841cd49", + "createdBy": "vsts", + "updatedBy": "vsts", + "createTime": 1553065966043, + "updateTime": 1553065966043, + "version": 1, + "name": "MICROSOFT.GOVERNMENT.CANADA.SOCIAL_INSURANCE_NUMBER", + "description": "Canada Social Insurance Number", + "typeVersion": "1.0", + "attributeDefs": [], + "superTypes": [], + "entityTypes": [], + "subTypes": [] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_GetClassificationDefByName.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_GetClassificationDefByName.json new file mode 100644 index 000000000000..f921d861f8c5 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_GetClassificationDefByName.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "name": "MICROSOFT.GOVERNMENT.CANADA.SOCIAL_INSURANCE_NUMBER" + }, + "responses": { + "200": { + "body": { + "category": "CLASSIFICATION", + "guid": "e79878fa-adba-4ee5-adc5-328d8841cd49", + "createdBy": "vsts", + "updatedBy": "vsts", + "createTime": 1553065966043, + "updateTime": 1553065966043, + "version": 1, + "name": "MICROSOFT.GOVERNMENT.CANADA.SOCIAL_INSURANCE_NUMBER", + "description": "Canada Social Insurance Number", + "typeVersion": "1.0", + "attributeDefs": [], + "superTypes": [], + "entityTypes": [], + "subTypes": [] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_GetEntityDefinitionByGuid.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_GetEntityDefinitionByGuid.json new file mode 100644 index 000000000000..ca4fb60ee568 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_GetEntityDefinitionByGuid.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "guid": "4bc54c37-98a8-4de8-9ee8-182610859d43" + }, + "responses": { + "200": { + "body": { + "category": "ENTITY", + "guid": "4bc54c37-98a8-4de8-9ee8-182610859d43", + "createdBy": "vsts", + "updatedBy": "vsts", + "createTime": 1553065960959, + "updateTime": 1553065960959, + "version": 1, + "name": "DataSet", + "description": "DataSet", + "typeVersion": "1.1", + "attributeDefs": [], + "superTypes": [ + "Asset" + ], + "subTypes": [ + "rdbms_foreign_key", + "azure_datalake_gen1_path", + "hive_table", + "mssql_column", + "sqoop_dbdatastore", + "hbase_column", + "azure_sql_table", + "rdbms_instance", + "azure_datalake_gen2_path", + "jms_topic", + "falcon_feed", + "hbase_table", + "rdbms_table", + "rdbms_column", + "hbase_column_family", + "hive_column", + "azure_blob_container", + "rdbms_db", + "column", + "azure_blob_path", + "kafka_topic", + "tabular_schema", + "azure_datalake_gen2_filesystem", + "rdbms_index", + "azure_sql_column", + "mssql_table", + "avro_type", + "fs_path" + ] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_GetEntityDefinitionByName.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_GetEntityDefinitionByName.json new file mode 100644 index 000000000000..c6122c2a95c8 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_GetEntityDefinitionByName.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "name": "DataSet" + }, + "responses": { + "200": { + "body": { + "category": "ENTITY", + "guid": "4bc54c37-98a8-4de8-9ee8-182610859d43", + "createdBy": "vsts", + "updatedBy": "vsts", + "createTime": 1553065960959, + "updateTime": 1553065960959, + "version": 1, + "name": "DataSet", + "description": "DataSet", + "typeVersion": "1.1", + "attributeDefs": [], + "superTypes": [ + "Asset" + ], + "subTypes": [ + "rdbms_foreign_key", + "azure_datalake_gen1_path", + "hive_table", + "mssql_column", + "sqoop_dbdatastore", + "hbase_column", + "azure_sql_table", + "rdbms_instance", + "azure_datalake_gen2_path", + "jms_topic", + "falcon_feed", + "hbase_table", + "rdbms_table", + "rdbms_column", + "hbase_column_family", + "hive_column", + "azure_blob_container", + "rdbms_db", + "column", + "azure_blob_path", + "kafka_topic", + "tabular_schema", + "azure_datalake_gen2_filesystem", + "rdbms_index", + "azure_sql_column", + "mssql_table", + "avro_type", + "fs_path" + ] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_GetEnumDefByGuid.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_GetEnumDefByGuid.json new file mode 100644 index 000000000000..ede482f430dd --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_GetEnumDefByGuid.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "guid": "644ab9c7-893a-4a4d-8e0a-591a6556d1a0" + }, + "responses": { + "200": { + "body": { + "category": "ENUM", + "guid": "644ab9c7-893a-4a4d-8e0a-591a6556d1a0", + "createdBy": "vsts", + "updatedBy": "vsts", + "createTime": 1553065968102, + "updateTime": 1553065968102, + "version": 1, + "name": "hive_principal_type", + "description": "hive_principal_type", + "typeVersion": "1.0", + "elementDefs": [ + { + "value": "USER", + "ordinal": 1 + }, + { + "value": "ROLE", + "ordinal": 2 + }, + { + "value": "GROUP", + "ordinal": 3 + } + ] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_GetEnumDefByName.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_GetEnumDefByName.json new file mode 100644 index 000000000000..6c13e07ccb94 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_GetEnumDefByName.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "name": "hive_principal_type" + }, + "responses": { + "200": { + "body": { + "category": "ENUM", + "guid": "644ab9c7-893a-4a4d-8e0a-591a6556d1a0", + "createdBy": "vsts", + "updatedBy": "vsts", + "createTime": 1553065968102, + "updateTime": 1553065968102, + "version": 1, + "name": "hive_principal_type", + "description": "hive_principal_type", + "typeVersion": "1.0", + "elementDefs": [ + { + "value": "USER", + "ordinal": 1 + }, + { + "value": "ROLE", + "ordinal": 2 + }, + { + "value": "GROUP", + "ordinal": 3 + } + ] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_GetRelationshipDefByGuid.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_GetRelationshipDefByGuid.json new file mode 100644 index 000000000000..db0f5a181817 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_GetRelationshipDefByGuid.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "guid": "695edde1-2782-4a3c-841b-0b3aba25fe45" + }, + "responses": { + "200": { + "body": { + "category": "RELATIONSHIP", + "guid": "695edde1-2782-4a3c-841b-0b3aba25fe45", + "createdBy": "vsts", + "updatedBy": "vsts", + "createTime": 1553065976797, + "updateTime": 1553065976797, + "version": 1, + "name": "storm_topology_nodes", + "description": "storm_topology_nodes", + "typeVersion": "1.0", + "attributeDefs": [], + "relationshipCategory": "ASSOCIATION", + "endDef1": { + "type": "storm_topology", + "name": "nodes", + "isContainer": false, + "cardinality": "SET", + "isLegacyAttribute": true + }, + "endDef2": { + "type": "storm_node", + "name": "topolgies", + "isContainer": false, + "cardinality": "SET", + "isLegacyAttribute": false + }, + "relationshipLabel": "r:storm_topology_nodes" + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_GetRelationshipDefByName.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_GetRelationshipDefByName.json new file mode 100644 index 000000000000..15319b26465d --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_GetRelationshipDefByName.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "name": "storm_topology_nodes" + }, + "responses": { + "200": { + "body": { + "category": "RELATIONSHIP", + "guid": "695edde1-2782-4a3c-841b-0b3aba25fe45", + "createdBy": "vsts", + "updatedBy": "vsts", + "createTime": 1553065976797, + "updateTime": 1553065976797, + "version": 1, + "name": "storm_topology_nodes", + "description": "storm_topology_nodes", + "typeVersion": "1.0", + "attributeDefs": [], + "relationshipCategory": "ASSOCIATION", + "endDef1": { + "type": "storm_topology", + "name": "nodes", + "isContainer": false, + "cardinality": "SET", + "isLegacyAttribute": true + }, + "endDef2": { + "type": "storm_node", + "name": "topolgies", + "isContainer": false, + "cardinality": "SET", + "isLegacyAttribute": false + }, + "relationshipLabel": "r:storm_topology_nodes" + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_GetStructDefByGuid.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_GetStructDefByGuid.json new file mode 100644 index 000000000000..1675dcdf4afa --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_GetStructDefByGuid.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "guid": "f1571b6e-ad08-4040-a9a7-c30ed935d437" + }, + "responses": { + "200": { + "body": { + "category": "STRUCT", + "guid": "f1571b6e-ad08-4040-a9a7-c30ed935d437", + "createdBy": "vsts", + "updatedBy": "vsts", + "createTime": 1553065968145, + "updateTime": 1553065968145, + "version": 1, + "name": "hive_order", + "description": "hive_order", + "typeVersion": "1.0", + "attributeDefs": [ + { + "name": "order", + "typeName": "int", + "isOptional": false, + "cardinality": "SINGLE", + "valuesMinCount": 1, + "valuesMaxCount": 1, + "isUnique": false, + "isIndexable": false, + "includeInNotification": false + }, + { + "name": "col", + "typeName": "string", + "isOptional": false, + "cardinality": "SINGLE", + "valuesMinCount": 1, + "valuesMaxCount": 1, + "isUnique": false, + "isIndexable": false, + "includeInNotification": false + } + ] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_GetStructDefByName.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_GetStructDefByName.json new file mode 100644 index 000000000000..a796753e46ea --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_GetStructDefByName.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "name": "hive_order" + }, + "responses": { + "200": { + "body": { + "category": "STRUCT", + "guid": "f1571b6e-ad08-4040-a9a7-c30ed935d437", + "createdBy": "vsts", + "updatedBy": "vsts", + "createTime": 1553065968145, + "updateTime": 1553065968145, + "version": 1, + "name": "hive_order", + "description": "hive_order", + "typeVersion": "1.0", + "attributeDefs": [ + { + "name": "order", + "typeName": "int", + "isOptional": false, + "cardinality": "SINGLE", + "valuesMinCount": 1, + "valuesMaxCount": 1, + "isUnique": false, + "isIndexable": false, + "includeInNotification": false + }, + { + "name": "col", + "typeName": "string", + "isOptional": false, + "cardinality": "SINGLE", + "valuesMinCount": 1, + "valuesMaxCount": 1, + "isUnique": false, + "isIndexable": false, + "includeInNotification": false + } + ] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_GetTermTemplateDefByGuid.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_GetTermTemplateDefByGuid.json new file mode 100644 index 000000000000..7ee1603beeed --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_GetTermTemplateDefByGuid.json @@ -0,0 +1,83 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "guid": "d776af9c-985c-4168-abb2-477523dbfc70", + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "body": { + "category": "TERM_TEMPLATE", + "guid": "d776af9c-985c-4168-abb2-477523dbfc70", + "createdBy": "23863cef-a2e9-40a3-a427-44dc0d201f61", + "updatedBy": "23863cef-a2e9-40a3-a427-44dc0d201f61", + "createTime": 1606300465443, + "updateTime": 1606300465443, + "version": 1, + "name": "MS KPI", + "description": "This is the description", + "typeVersion": "1.0", + "lastModifiedTS": "1", + "attributeDefs": [ + { + "name": "date", + "typeName": "date", + "isOptional": true, + "cardinality": "SINGLE", + "valuesMinCount": 0, + "valuesMaxCount": 1, + "isUnique": false, + "isIndexable": false, + "includeInNotification": false, + "options": { + "isDisabled": "false" + } + }, + { + "name": "single choice", + "typeName": "TERM_TEMPLATE_ENUM_b629447d_d220_4cc6_a1a7_3a888d3ccc03", + "isOptional": true, + "cardinality": "SINGLE", + "valuesMinCount": 0, + "valuesMaxCount": 1, + "isUnique": false, + "isIndexable": false, + "includeInNotification": false, + "options": { + "isDisabled": "false" + } + }, + { + "name": "multi choice", + "typeName": "array", + "isOptional": true, + "cardinality": "SET", + "valuesMinCount": 0, + "valuesMaxCount": 2147483647, + "isUnique": false, + "isIndexable": false, + "includeInNotification": false, + "options": { + "isDisabled": "false" + } + }, + { + "name": "plain string", + "typeName": "string", + "isOptional": true, + "cardinality": "SINGLE", + "valuesMinCount": 0, + "valuesMaxCount": 1, + "isUnique": false, + "isIndexable": false, + "includeInNotification": false, + "defaultValue": "this is a default value", + "options": { + "isDisabled": "false" + } + } + ] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_GetTermTemplateDefByName.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_GetTermTemplateDefByName.json new file mode 100644 index 000000000000..ee064ea0cc5d --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_GetTermTemplateDefByName.json @@ -0,0 +1,83 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "name": "MS KPI", + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "body": { + "category": "TERM_TEMPLATE", + "guid": "d776af9c-985c-4168-abb2-477523dbfc70", + "createdBy": "23863cef-a2e9-40a3-a427-44dc0d201f61", + "updatedBy": "23863cef-a2e9-40a3-a427-44dc0d201f61", + "createTime": 1606300465443, + "updateTime": 1606300465443, + "version": 1, + "name": "MS KPI", + "description": "This is the description", + "typeVersion": "1.0", + "lastModifiedTS": "1", + "attributeDefs": [ + { + "name": "date", + "typeName": "date", + "isOptional": true, + "cardinality": "SINGLE", + "valuesMinCount": 0, + "valuesMaxCount": 1, + "isUnique": false, + "isIndexable": false, + "includeInNotification": false, + "options": { + "isDisabled": "false" + } + }, + { + "name": "single choice", + "typeName": "TERM_TEMPLATE_ENUM_b629447d_d220_4cc6_a1a7_3a888d3ccc03", + "isOptional": true, + "cardinality": "SINGLE", + "valuesMinCount": 0, + "valuesMaxCount": 1, + "isUnique": false, + "isIndexable": false, + "includeInNotification": false, + "options": { + "isDisabled": "false" + } + }, + { + "name": "multi choice", + "typeName": "array", + "isOptional": true, + "cardinality": "SET", + "valuesMinCount": 0, + "valuesMaxCount": 2147483647, + "isUnique": false, + "isIndexable": false, + "includeInNotification": false, + "options": { + "isDisabled": "false" + } + }, + { + "name": "plain string", + "typeName": "string", + "isOptional": true, + "cardinality": "SINGLE", + "valuesMinCount": 0, + "valuesMaxCount": 1, + "isUnique": false, + "isIndexable": false, + "includeInNotification": false, + "defaultValue": "this is a default value", + "options": { + "isDisabled": "false" + } + } + ] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_GetTypeDefinitionByGuid.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_GetTypeDefinitionByGuid.json new file mode 100644 index 000000000000..5b11bc846cdc --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_GetTypeDefinitionByGuid.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "guid": "0ddc2fcf-ad17-4d06-984a-ffb2ffb2a941" + }, + "responses": { + "200": { + "body": { + "category": "ENUM", + "guid": "0ddc2fcf-ad17-4d06-984a-ffb2ffb2a941", + "createdBy": "admin", + "updatedBy": "admin", + "createTime": 1604728877305, + "updateTime": 1604728877305, + "version": 1, + "name": "glossary_term_status_value", + "description": "glossary_term_status_value", + "typeVersion": "1.0", + "lastModifiedTS": "1", + "elementDefs": [ + { + "value": "Approved", + "ordinal": 0 + }, + { + "value": "Alert", + "ordinal": 1 + }, + { + "value": "Expired", + "ordinal": 2 + }, + { + "value": "Draft", + "ordinal": 3 + } + ] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_GetTypeDefinitionByName.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_GetTypeDefinitionByName.json new file mode 100644 index 000000000000..cc8b7591e0a3 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_GetTypeDefinitionByName.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "name": "glossary_term_status_value" + }, + "responses": { + "200": { + "body": { + "category": "ENUM", + "guid": "0ddc2fcf-ad17-4d06-984a-ffb2ffb2a941", + "createdBy": "admin", + "updatedBy": "admin", + "createTime": 1604728877305, + "updateTime": 1604728877305, + "version": 1, + "name": "glossary_term_status_value", + "description": "glossary_term_status_value", + "typeVersion": "1.0", + "lastModifiedTS": "1", + "elementDefs": [ + { + "value": "Approved", + "ordinal": 0 + }, + { + "value": "Alert", + "ordinal": 1 + }, + { + "value": "Expired", + "ordinal": 2 + }, + { + "value": "Draft", + "ordinal": 3 + } + ] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_ListTypeDefinitionHeaders.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_ListTypeDefinitionHeaders.json new file mode 100644 index 000000000000..99ec7d9d00b2 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_ListTypeDefinitionHeaders.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "includeTermTemplate": true + }, + "responses": { + "200": { + "body": [ + { + "guid": "644ab9c7-893a-4a4d-8e0a-591a6556d1a0", + "name": "hive_principal_type", + "category": "ENUM" + }, + { + "guid": "e5030e81-da05-4571-84f1-265ce20fa6d9", + "name": "AtlasGlossaryTermRelationshipStatus", + "category": "ENUM" + }, + { + "guid": "d776af9c-985c-4168-abb2-477523dbfc70", + "name": "MS KPI", + "category": "TERM_TEMPLATE" + } + ] + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_UpdateAtlasTypeDefinitions.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_UpdateAtlasTypeDefinitions.json new file mode 100644 index 000000000000..5fa672640832 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/examples/Types_UpdateAtlasTypeDefinitions.json @@ -0,0 +1,288 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "typesDef": { + "enumDefs": [], + "structDefs": [], + "classificationDefs": [], + "entityDefs": [ + { + "name": "azure_sql_server", + "superTypes": [ + "azure_resource" + ], + "typeVersion": "1.0", + "attributeDefs": [ + { + "name": "databases", + "typeName": "array", + "cardinality": "SET", + "isIndexable": false, + "isOptional": true, + "isUnique": false + } + ] + }, + { + "name": "azure_sql_db", + "superTypes": [ + "azure_resource" + ], + "typeVersion": "1.0", + "attributeDefs": [ + { + "name": "server", + "typeName": "azure_sql_server", + "cardinality": "SINGLE", + "constraints": [ + { + "type": "inverseRef", + "params": { + "attribute": "databases" + } + } + ], + "isIndexable": false, + "isOptional": false, + "isUnique": false + }, + { + "name": "schemas", + "typeName": "array", + "cardinality": "SET", + "isIndexable": false, + "isOptional": true, + "isUnique": false + }, + { + "name": "collation", + "typeName": "string", + "cardinality": "SINGLE", + "isIndexable": false, + "isOptional": true, + "isUnique": false + }, + { + "name": "compatibilityLevel", + "typeName": "int", + "cardinality": "SINGLE", + "isIndexable": false, + "isOptional": true, + "isUnique": false + } + ] + } + ], + "relationshipDefs": [ + { + "name": "azure_sql_server_databases", + "typeVersion": "1.0", + "relationshipCategory": "COMPOSITION", + "endDef1": { + "type": "azure_sql_server", + "name": "databases", + "isContainer": true, + "cardinality": "SET", + "isLegacyAttribute": true + }, + "endDef2": { + "type": "azure_sql_db", + "name": "server", + "isContainer": false, + "cardinality": "SINGLE", + "isLegacyAttribute": true + } + }, + { + "name": "azure_sql_db_schemas", + "typeVersion": "1.0", + "relationshipCategory": "COMPOSITION", + "endDef1": { + "type": "azure_sql_db", + "name": "schemas", + "isContainer": true, + "cardinality": "SET", + "isLegacyAttribute": true + }, + "endDef2": { + "type": "azure_sql_schema", + "name": "db", + "isContainer": false, + "cardinality": "SINGLE", + "isLegacyAttribute": true + } + } + ] + } + }, + "responses": { + "200": { + "body": { + "enumDefs": [], + "structDefs": [], + "classificationDefs": [], + "entityDefs": [ + { + "category": "ENTITY", + "guid": "a59fe369-2b1d-4bba-bb74-c273f3d74eb1", + "createdBy": "admin", + "updatedBy": "ServiceAdmin", + "createTime": 1548841689501, + "updateTime": 1553671448662, + "version": 3, + "name": "azure_sql_server", + "description": "azure_sql_server", + "typeVersion": "1.0", + "attributeDefs": [ + { + "name": "databases", + "typeName": "array", + "isOptional": true, + "cardinality": "SET", + "valuesMinCount": 0, + "valuesMaxCount": 2147483647, + "isUnique": false, + "isIndexable": false, + "includeInNotification": false + } + ], + "superTypes": [ + "azure_resource" + ], + "subTypes": [] + }, + { + "category": "ENTITY", + "guid": "cc33ec5a-205a-4853-91dd-c0ebd0049ffb", + "createdBy": "admin", + "updatedBy": "ServiceAdmin", + "createTime": 1548841689575, + "updateTime": 1553671448783, + "version": 3, + "name": "azure_sql_db", + "description": "azure_sql_db", + "typeVersion": "1.0", + "attributeDefs": [ + { + "name": "server", + "typeName": "azure_sql_server", + "isOptional": false, + "cardinality": "SINGLE", + "valuesMinCount": 1, + "valuesMaxCount": 1, + "isUnique": false, + "isIndexable": false, + "includeInNotification": false, + "constraints": [ + { + "type": "inverseRef", + "params": { + "attribute": "databases" + } + } + ] + }, + { + "name": "schemas", + "typeName": "array", + "isOptional": true, + "cardinality": "SET", + "valuesMinCount": 0, + "valuesMaxCount": 2147483647, + "isUnique": false, + "isIndexable": false, + "includeInNotification": false + }, + { + "name": "collation", + "typeName": "string", + "isOptional": true, + "cardinality": "SINGLE", + "valuesMinCount": 0, + "valuesMaxCount": 1, + "isUnique": false, + "isIndexable": false, + "includeInNotification": false + }, + { + "name": "compatibilityLevel", + "typeName": "int", + "isOptional": true, + "cardinality": "SINGLE", + "valuesMinCount": 0, + "valuesMaxCount": 1, + "isUnique": false, + "isIndexable": false, + "includeInNotification": false + } + ], + "superTypes": [ + "azure_resource" + ], + "subTypes": [] + } + ], + "relationshipDefs": [ + { + "category": "RELATIONSHIP", + "guid": "1e0584a8-2587-4e1d-a772-db1e879469af", + "createdBy": "admin", + "updatedBy": "ServiceAdmin", + "createTime": 1548841689879, + "updateTime": 1553671449536, + "version": 3, + "name": "azure_sql_server_databases", + "description": "azure_sql_server_databases", + "typeVersion": "1.0", + "attributeDefs": [], + "relationshipCategory": "COMPOSITION", + "endDef1": { + "type": "azure_sql_server", + "name": "databases", + "isContainer": true, + "cardinality": "SET", + "isLegacyAttribute": true + }, + "endDef2": { + "type": "azure_sql_db", + "name": "server", + "isContainer": false, + "cardinality": "SINGLE", + "isLegacyAttribute": true + }, + "relationshipLabel": "r:azure_sql_server_databases" + }, + { + "category": "RELATIONSHIP", + "guid": "77ee34f6-ea48-4fe3-86bf-7e2e722f4596", + "createdBy": "admin", + "updatedBy": "ServiceAdmin", + "createTime": 1548841690094, + "updateTime": 1553671449545, + "version": 3, + "name": "azure_sql_db_schemas", + "description": "azure_sql_db_schemas", + "typeVersion": "1.0", + "attributeDefs": [], + "relationshipCategory": "COMPOSITION", + "endDef1": { + "type": "azure_sql_db", + "name": "schemas", + "isContainer": true, + "cardinality": "SET", + "isLegacyAttribute": true + }, + "endDef2": { + "type": "azure_sql_schema", + "name": "db", + "isContainer": false, + "cardinality": "SINGLE", + "isLegacyAttribute": true + }, + "relationshipLabel": "r:azure_sql_db_schemas" + } + ] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/purviewcatalog.json b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/purviewcatalog.json new file mode 100644 index 000000000000..af05e128d447 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/purviewcatalog.json @@ -0,0 +1,6697 @@ +{ + "swagger": "2.0", + "info": { + "title": "Purview Catalog Service REST API Document", + "description": "Purview Catalog Service is a fully managed cloud service whose users can discover the data sources they need and understand the data sources they find. At the same time, Data Catalog helps organizations get more value from their existing investments. This spec defines REST API of Purview Catalog Service.", + "version": "2021-05-01-preview" + }, + "x-ms-parameterized-host": { + "hostTemplate": "{Endpoint}", + "useSchemePrefix": false, + "parameters": [ + { + "$ref": "#/parameters/Endpoint" + } + ] + }, + "basePath": "/api", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "securityDefinitions": { + "azure_auth": { + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow." + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "paths": { + "/atlas/v2/entity": { + "post": { + "tags": [ + "Entity" + ], + "description": "Create or update an entity in Atlas.\nExisting entity is matched using its unique guid if supplied or by its unique attributes eg: qualifiedName.\nMap and array of collections are not well supported. E.g., array>, array>.", + "operationId": "Entity_CreateOrUpdate", + "x-ms-examples": { + "Entity_Create": { + "$ref": "./examples/Entity_Create.json" + }, + "Entity_Update": { + "$ref": "./examples/Entity_Update.json" + } + }, + "parameters": [ + { + "in": "body", + "name": "entity", + "description": "Atlas entity with extended information.", + "required": true, + "schema": { + "$ref": "#/definitions/AtlasEntityWithExtInfo" + } + } + ], + "responses": { + "200": { + "description": "Created with EntityMutationResponse.", + "schema": { + "$ref": "#/definitions/EntityMutationResponse" + } + } + } + } + }, + "/atlas/v2/entity/bulk": { + "get": { + "tags": [ + "Entity" + ], + "description": "List entities in bulk identified by its GUIDs.", + "operationId": "Entity_ListByGuids", + "x-ms-examples": { + "Entity_ListByGuids": { + "$ref": "./examples/Entity_ListByGuids.json" + } + }, + "parameters": [ + { + "name": "guids", + "in": "query", + "description": "An array of GUIDs of entities to create.", + "required": true, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "$ref": "#/parameters/minExtInfo" + }, + { + "$ref": "#/parameters/ignoreRelationships" + }, + { + "$ref": "#/parameters/excludeRelationshipTypes" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/AtlasEntitiesWithExtInfo" + } + } + } + }, + "post": { + "tags": [ + "Entity" + ], + "description": "Create or update entities in Atlas in bulk.\nExisting entity is matched using its unique guid if supplied or by its unique attributes eg: qualifiedName.\nMap and array of collections are not well supported. E.g., array>, array>.", + "operationId": "Entity_CreateOrUpdateEntities", + "x-ms-examples": { + "Entity_CreateOrUpdateEntities": { + "$ref": "./examples/Entity_CreateOrUpdateEntities.json" + } + }, + "parameters": [ + { + "in": "body", + "name": "entities", + "description": "An array of entities to create or update.", + "required": true, + "schema": { + "$ref": "#/definitions/AtlasEntitiesWithExtInfo" + } + } + ], + "responses": { + "200": { + "description": "Ok.", + "schema": { + "$ref": "#/definitions/EntityMutationResponse" + } + } + } + }, + "delete": { + "tags": [ + "Entity" + ], + "description": "Delete a list of entities in bulk identified by their GUIDs or unique attributes.", + "operationId": "Entity_DeleteByGuids", + "x-ms-examples": { + "Entity_DeleteByGuids": { + "$ref": "./examples/Entity_DeleteByGuids.json" + } + }, + "parameters": [ + { + "name": "guids", + "in": "query", + "description": "An array of GUIDs of entities to delete.", + "required": true, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + } + ], + "responses": { + "200": { + "description": "Deleted with EntityMutationResponse.", + "schema": { + "$ref": "#/definitions/EntityMutationResponse" + } + } + } + } + }, + "/atlas/v2/entity/bulk/classification": { + "post": { + "tags": [ + "Entity" + ], + "description": "Associate a classification to multiple entities in bulk.", + "operationId": "Entity_AddClassification", + "x-ms-examples": { + "Entity_AddClassificationToEntityByGuids": { + "$ref": "./examples/Entity_AddClassificationToEntityByGuids.json" + } + }, + "parameters": [ + { + "in": "body", + "name": "request", + "description": "The request to associate a classification to multiple entities.", + "required": true, + "schema": { + "$ref": "#/definitions/ClassificationAssociateRequest" + } + } + ], + "responses": { + "204": { + "description": "No Content." + } + } + } + }, + "/atlas/v2/entity/guid/{guid}": { + "get": { + "tags": [ + "Entity" + ], + "operationId": "Entity_GetByGuid", + "x-ms-examples": { + "Entity_GetByGuid": { + "$ref": "./examples/Entity_GetByGuid.json" + } + }, + "description": "Get complete definition of an entity given its GUID.", + "parameters": [ + { + "$ref": "#/parameters/guid" + }, + { + "$ref": "#/parameters/minExtInfo" + }, + { + "$ref": "#/parameters/ignoreRelationships" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/AtlasEntityWithExtInfo" + } + } + } + }, + "put": { + "tags": [ + "Entity" + ], + "description": "Update entity partially - create or update entity attribute identified by its GUID.\nSupports only primitive attribute type and entity references.\nIt does not support updating complex types like arrays, and maps.\nNull updates are not possible.", + "operationId": "Entity_PartialUpdateEntityAttributeByGuid", + "x-ms-examples": { + "Entity_PartialUpdateEntityAttributeByGuid": { + "$ref": "./examples/Entity_PartialUpdateEntityAttributeByGuid.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/guid" + }, + { + "name": "name", + "in": "query", + "description": "The name of the attribute.", + "required": true, + "type": "string" + }, + { + "in": "body", + "name": "body", + "description": "The value of the attribute.", + "required": true, + "schema": { + "type": "object" + } + } + ], + "responses": { + "200": { + "description": "Updated with EntityMutationResponse.", + "schema": { + "$ref": "#/definitions/EntityMutationResponse" + } + } + } + }, + "delete": { + "tags": [ + "Entity" + ], + "description": "Delete an entity identified by its GUID.", + "operationId": "Entity_DeleteByGuid", + "x-ms-examples": { + "Entity_DeleteByGuid": { + "$ref": "./examples/Entity_DeleteByGuid.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/guid" + } + ], + "responses": { + "200": { + "description": "Deleted with EntityMutationResponse.", + "schema": { + "$ref": "#/definitions/EntityMutationResponse" + } + } + } + } + }, + "/atlas/v2/entity/guid/{guid}/classification/{classificationName}": { + "get": { + "tags": [ + "Entity" + ], + "description": "List classifications for a given entity represented by a GUID.", + "operationId": "Entity_GetClassification", + "x-ms-examples": { + "Entity_GetClassification": { + "$ref": "./examples/Entity_GetClassification.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/guid" + }, + { + "$ref": "#/parameters/classificationName" + } + ], + "responses": { + "200": { + "description": "The classification for the given entity GUID.", + "schema": { + "$ref": "#/definitions/AtlasClassification" + } + } + } + }, + "delete": { + "tags": [ + "Entity" + ], + "description": "Delete a given classification from an existing entity represented by a GUID.", + "operationId": "Entity_DeleteClassification", + "x-ms-examples": { + "Entity_DeleteClassification": { + "$ref": "./examples/Entity_DeleteClassification.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/guid" + }, + { + "$ref": "#/parameters/classificationName" + } + ], + "responses": { + "204": { + "description": "No Content." + } + } + } + }, + "/atlas/v2/entity/guid/{guid}/classifications": { + "get": { + "tags": [ + "Entity" + ], + "description": "List classifications for a given entity represented by a GUID.", + "operationId": "Entity_GetClassifications", + "x-ms-examples": { + "Entity_GetClassifications": { + "$ref": "./examples/Entity_GetClassifications.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/guid" + } + ], + "responses": { + "200": { + "description": "An array of classifications for the given entity GUID.", + "schema": { + "$ref": "#/definitions/AtlasClassifications" + } + } + } + }, + "post": { + "tags": [ + "Entity" + ], + "description": "Add classifications to an existing entity represented by a GUID.", + "operationId": "Entity_AddClassifications", + "x-ms-examples": { + "Entity_AddClassifications": { + "$ref": "./examples/Entity_AddClassifications.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/guid" + }, + { + "in": "body", + "name": "classifications", + "description": "An array of classifications to be added.", + "required": true, + "schema": { + "type": "array", + "description": "An array of classifications.", + "items": { + "$ref": "#/definitions/AtlasClassification" + } + } + } + ], + "responses": { + "204": { + "description": "No Content." + } + } + }, + "put": { + "tags": [ + "Entity" + ], + "description": "Update classifications to an existing entity represented by a guid.", + "operationId": "Entity_UpdateClassifications", + "x-ms-examples": { + "Entity_UpdateClassifications": { + "$ref": "./examples/Entity_UpdateClassifications.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/guid" + }, + { + "in": "body", + "name": "classifications", + "description": "An array of classifications to be updated.", + "required": true, + "schema": { + "type": "array", + "description": "An array of classifications.", + "items": { + "$ref": "#/definitions/AtlasClassification" + } + } + } + ], + "responses": { + "204": { + "description": "No Content." + } + } + } + }, + "/atlas/v2/entity/uniqueAttribute/type/{typeName}": { + "get": { + "tags": [ + "Entity" + ], + "description": "Get complete definition of an entity given its type and unique attribute.\nIn addition to the typeName path parameter, attribute key-value pair(s) can be provided in the following format:\nattr:\\=. \nNOTE: The attrName and attrValue should be unique across entities, eg. qualifiedName.\nThe REST request would look something like this:\nGET /v2/entity/uniqueAttribute/type/aType?attr:aTypeAttribute=someValue.", + "operationId": "Entity_GetByUniqueAttributes", + "x-ms-examples": { + "Entity_GetByUniqueAttributes": { + "$ref": "./examples/Entity_GetByUniqueAttributes.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/typeName" + }, + { + "$ref": "#/parameters/minExtInfo" + }, + { + "$ref": "#/parameters/ignoreRelationships" + }, + { + "name": "attr:qualifiedName", + "in": "query", + "description": "The qualified name of the entity.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "AtlasEntityWithExtInfo.", + "schema": { + "$ref": "#/definitions/AtlasEntityWithExtInfo" + } + } + } + }, + "put": { + "tags": [ + "Entity" + ], + "description": "Update entity partially - Allow a subset of attributes to be updated on\nan entity which is identified by its type and unique attribute eg: Referenceable.qualifiedName.\nNull updates are not possible.\nIn addition to the typeName path parameter, attribute key-value pair(s) can be provided in the following format:\nattr:=.\nNOTE: The attrName and attrValue should be unique across entities, eg. qualifiedName.\nThe REST request would look something like this:\nPUT /v2/entity/uniqueAttribute/type/aType?attr:aTypeAttribute=someValue.", + "operationId": "Entity_PartialUpdateEntityByUniqueAttributes", + "x-ms-examples": { + "Entity_PartialUpdateEntityByUniqueAttributes": { + "$ref": "./examples/Entity_PartialUpdateEntityByUniqueAttributes.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/typeName" + }, + { + "name": "attr:qualifiedName", + "in": "query", + "description": "The qualified name of the entity.", + "required": false, + "type": "string" + }, + { + "in": "body", + "name": "atlasEntityWithExtInfo", + "description": "Atlas entity with extended information.", + "required": true, + "schema": { + "$ref": "#/definitions/AtlasEntityWithExtInfo" + } + } + ], + "responses": { + "200": { + "description": "Updated with EntityMutationResponse.", + "schema": { + "$ref": "#/definitions/EntityMutationResponse" + } + } + } + }, + "delete": { + "tags": [ + "Entity" + ], + "description": "Delete an entity identified by its type and unique attributes.\nIn addition to the typeName path parameter, attribute key-value pair(s) can be provided in the following format:\nattr:\\=\\.\nNOTE: The attrName and attrValue should be unique across entities, eg. qualifiedName.\nThe REST request would look something like this:\nDELETE /v2/entity/uniqueAttribute/type/aType?attr:aTypeAttribute=someValue.", + "operationId": "Entity_DeleteByUniqueAttribute", + "x-ms-examples": { + "Entity_DeleteByUniqueAttribute": { + "$ref": "./examples/Entity_DeleteByUniqueAttribute.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/typeName" + }, + { + "name": "attr:qualifiedName", + "in": "query", + "description": "The qualified name of the entity.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Deleted with EntityMutationResponse.", + "schema": { + "$ref": "#/definitions/EntityMutationResponse" + } + } + } + } + }, + "/atlas/v2/entity/uniqueAttribute/type/{typeName}/classification/{classificationName}": { + "delete": { + "tags": [ + "Entity" + ], + "description": "Delete a given classification from an entity identified by its type and unique attributes.", + "operationId": "Entity_DeleteClassificationByUniqueAttribute", + "x-ms-examples": { + "Entity_DeleteClassificationByUniqueAttribute": { + "$ref": "./examples/Entity_DeleteClassificationByUniqueAttribute.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/typeName" + }, + { + "$ref": "#/parameters/classificationName" + }, + { + "name": "attr:qualifiedName", + "in": "query", + "description": "The qualified name of the entity.", + "required": false, + "type": "string" + } + ], + "responses": { + "204": { + "description": "No Content." + } + } + } + }, + "/atlas/v2/entity/uniqueAttribute/type/{typeName}/classifications": { + "post": { + "tags": [ + "Entity" + ], + "description": "Add classification to the entity identified by its type and unique attributes.", + "operationId": "Entity_AddClassificationsByUniqueAttribute", + "x-ms-examples": { + "Entity_AddClassificationsByUniqueAttribute": { + "$ref": "./examples/Entity_AddClassificationsByUniqueAttribute.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/typeName" + }, + { + "name": "attr:qualifiedName", + "in": "query", + "description": "The qualified name of the entity.", + "required": false, + "type": "string" + }, + { + "in": "body", + "name": "atlasClassificationArray", + "description": "An array of classification to be added.", + "required": true, + "schema": { + "type": "array", + "description": "An array of classification.", + "items": { + "$ref": "#/definitions/AtlasClassification" + } + } + } + ], + "responses": { + "204": { + "description": "No Content." + } + } + }, + "put": { + "tags": [ + "Entity" + ], + "description": "Update classification on an entity identified by its type and unique attributes.", + "operationId": "Entity_UpdateClassificationsByUniqueAttribute", + "x-ms-examples": { + "Entity_UpdateClassificationsByUniqueAttribute": { + "$ref": "./examples/Entity_UpdateClassificationsByUniqueAttribute.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/typeName" + }, + { + "name": "attr:qualifiedName", + "in": "query", + "description": "The qualified name of the entity.", + "required": false, + "type": "string" + }, + { + "in": "body", + "name": "atlasClassificationArray", + "description": "An array of classification to be updated.", + "required": true, + "schema": { + "type": "array", + "description": "An array of classification.", + "items": { + "$ref": "#/definitions/AtlasClassification" + } + } + } + ], + "responses": { + "204": { + "description": "No Content." + } + } + } + }, + "/atlas/v2/entity/bulk/setClassifications": { + "post": { + "tags": [ + "Entity" + ], + "description": "Set classifications on entities in bulk.", + "operationId": "Entity_SetClassifications", + "x-ms-examples": { + "Entity_SetClassifications": { + "$ref": "./examples/Entity_SetClassifications.json" + } + }, + "parameters": [ + { + "in": "body", + "name": "entityHeaders", + "description": "Atlas entity headers.", + "required": true, + "schema": { + "$ref": "#/definitions/AtlasEntityHeaders" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "description": "Response that indicates each classification mutation result.", + "items": { + "type": "string" + } + } + } + } + } + }, + "/atlas/v2/entity/bulk/uniqueAttribute/type/{typeName}": { + "get": { + "tags": [ + "Entity" + ], + "description": "Bulk API to retrieve list of entities identified by its unique attributes.\n\nIn addition to the typeName path parameter, attribute key-value pair(s) can be provided in the following format\n\ntypeName=\\&attr_1:\\=\\&attr_2:\\=\\&attr_3:\\=\\\n\nNOTE: The attrName should be an unique attribute for the given entity-type\n\nThe REST request would look something like this\n\nGET /v2/entity/bulk/uniqueAttribute/type/hive_db?attr_0:qualifiedName=db1@cl1&attr_2:qualifiedName=db2@cl1", + "operationId": "Entity_GetEntitiesByUniqueAttributes", + "x-ms-examples": { + "Entity_GetEntitiesByUniqueAttributes": { + "$ref": "./examples/Entity_GetEntitiesByUniqueAttributes.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/typeName" + }, + { + "$ref": "#/parameters/minExtInfo" + }, + { + "$ref": "#/parameters/ignoreRelationships" + }, + { + "name": "attr_N:qualifiedName", + "in": "query", + "description": "Qualified name of an entity. E.g. to find 2 entities you can set attrs_0:qualifiedName=db1@cl1&attrs_2:qualifiedName=db2@cl1", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/AtlasEntitiesWithExtInfo" + } + } + } + } + }, + "/atlas/v2/entity/guid/{guid}/header": { + "get": { + "tags": [ + "Entity" + ], + "description": "Get entity header given its GUID.", + "operationId": "Entity_GetHeader", + "x-ms-examples": { + "Entity_GetHeader": { + "$ref": "./examples/Entity_GetHeader.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/guid" + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/AtlasEntityHeader" + }, + "description": "AtlasEntityHeader" + } + } + } + }, + "/atlas/v2/glossary": { + "get": { + "tags": [ + "Glossary" + ], + "description": "Get all glossaries registered with Atlas.", + "operationId": "Glossary_ListGlossaries", + "x-ms-examples": { + "Glossary_ListGlossaries": { + "$ref": "./examples/Glossary_ListGlossaries.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/limit" + }, + { + "$ref": "#/parameters/offset" + }, + { + "$ref": "#/parameters/sort" + } + ], + "responses": { + "200": { + "description": "An array of existing glossaries fitting the search criteria or empty list if nothing matches.", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/AtlasGlossary" + } + } + } + } + }, + "post": { + "tags": [ + "Glossary" + ], + "description": "Create a glossary.", + "operationId": "Glossary_CreateGlossary", + "x-ms-examples": { + "Glossary_CreateGlossary": { + "$ref": "./examples/Glossary_CreateGlossary.json" + } + }, + "parameters": [ + { + "in": "body", + "name": "atlasGlossary", + "description": "Glossary definition, terms & categories can be anchored to a glossary.\nUsing the anchor attribute when creating the Term/Category.", + "required": true, + "schema": { + "$ref": "#/definitions/AtlasGlossary" + } + } + ], + "responses": { + "200": { + "description": "OK. If glossary creation was successful.", + "schema": { + "$ref": "#/definitions/AtlasGlossary" + } + } + } + } + }, + "/atlas/v2/glossary/categories": { + "post": { + "tags": [ + "Glossary" + ], + "description": "Create glossary category in bulk.", + "operationId": "Glossary_CreateGlossaryCategories", + "x-ms-examples": { + "Glossary_CreateGlossaryCategories": { + "$ref": "./examples/Glossary_CreateGlossaryCategories.json" + } + }, + "parameters": [ + { + "in": "body", + "name": "glossaryCategory", + "description": "An array of glossary category definitions to be created.", + "required": true, + "schema": { + "type": "array", + "description": "An array of glossary category definitions.", + "items": { + "$ref": "#/definitions/AtlasGlossaryCategory" + } + } + } + ], + "responses": { + "200": { + "description": "OK. If bulk glossary category creation was successful.", + "schema": { + "type": "array", + "description": "An array of glossary category created successfully in bulk.", + "items": { + "$ref": "#/definitions/AtlasGlossaryCategory" + } + } + } + } + } + }, + "/atlas/v2/glossary/category": { + "post": { + "tags": [ + "Glossary" + ], + "description": "Create a glossary category.", + "operationId": "Glossary_CreateGlossaryCategory", + "x-ms-examples": { + "Glossary_CreateGlossaryCategory": { + "$ref": "./examples/Glossary_CreateGlossaryCategory.json" + } + }, + "parameters": [ + { + "in": "body", + "name": "glossaryCategory", + "description": "The glossary category definition. A category must be anchored to a Glossary when creating.\nOptionally, terms belonging to the category and the hierarchy can also be defined during creation.", + "required": true, + "schema": { + "$ref": "#/definitions/AtlasGlossaryCategory" + } + } + ], + "responses": { + "200": { + "description": "OK. If glossary category creation was successful.", + "schema": { + "$ref": "#/definitions/AtlasGlossaryCategory" + } + } + } + } + }, + "/atlas/v2/glossary/category/{categoryGuid}": { + "get": { + "tags": [ + "Glossary" + ], + "description": "Get specific glossary category by its GUID.", + "operationId": "Glossary_GetGlossaryCategory", + "x-ms-examples": { + "Glossary_GetGlossaryCategory": { + "$ref": "./examples/Glossary_GetGlossaryCategory.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/categoryGuid" + } + ], + "responses": { + "200": { + "description": "OK. If glossary category exists for given GUID.", + "schema": { + "$ref": "#/definitions/AtlasGlossaryCategory" + } + } + } + }, + "put": { + "tags": [ + "Glossary" + ], + "description": "Update the given glossary category by its GUID.", + "operationId": "Glossary_UpdateGlossaryCategory", + "x-ms-examples": { + "Glossary_UpdateGlossaryCategory": { + "$ref": "./examples/Glossary_UpdateGlossaryCategory.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/categoryGuid" + }, + { + "in": "body", + "name": "glossaryCategory", + "description": "The glossary category to be updated.", + "required": true, + "schema": { + "$ref": "#/definitions/AtlasGlossaryCategory" + } + } + ], + "responses": { + "200": { + "description": "OK. If glossary category partial update was successful.", + "schema": { + "$ref": "#/definitions/AtlasGlossaryCategory" + } + } + } + }, + "delete": { + "tags": [ + "Glossary" + ], + "description": "Delete a glossary category.", + "operationId": "Glossary_DeleteGlossaryCategory", + "x-ms-examples": { + "Glossary_DeleteGlossaryCategory": { + "$ref": "./examples/Glossary_DeleteGlossaryCategory.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/categoryGuid" + } + ], + "responses": { + "204": { + "description": "OK. If glossary category deletion is successful." + } + } + } + }, + "/atlas/v2/glossary/category/{categoryGuid}/partial": { + "put": { + "tags": [ + "Glossary" + ], + "description": "Update the glossary category partially.", + "operationId": "Glossary_PartialUpdateGlossaryCategory", + "x-ms-examples": { + "Glossary_PartialUpdateGlossaryCategory": { + "$ref": "./examples/Glossary_PartialUpdateGlossaryCategory.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/categoryGuid" + }, + { + "in": "body", + "name": "partialUpdates", + "description": "A map containing keys as attribute names and values as corresponding attribute values for partial update.", + "required": true, + "schema": { + "type": "object", + "description": "A map containing keys as attribute names and values as corresponding attribute values.", + "additionalProperties": { + "type": "string" + } + } + } + ], + "responses": { + "200": { + "description": "OK. If glossary category partial update was successful.", + "schema": { + "$ref": "#/definitions/AtlasGlossaryCategory" + } + } + } + } + }, + "/atlas/v2/glossary/category/{categoryGuid}/related": { + "get": { + "tags": [ + "Glossary" + ], + "description": "Get all related categories (parent and children). Limit, offset, and sort parameters are currently not being enabled and won't work even they are passed.", + "operationId": "Glossary_ListRelatedCategories", + "x-ms-examples": { + "Glossary_ListRelatedCategories": { + "$ref": "./examples/Glossary_ListRelatedCategories.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/categoryGuid" + }, + { + "$ref": "#/parameters/limit" + }, + { + "$ref": "#/parameters/offset" + }, + { + "$ref": "#/parameters/sort" + } + ], + "responses": { + "200": { + "description": "OK. Gets an array of related categories.", + "schema": { + "type": "object", + "description": "An array of related categories.", + "additionalProperties": { + "type": "array", + "items": { + "$ref": "#/definitions/AtlasRelatedCategoryHeader" + } + } + } + } + } + } + }, + "/atlas/v2/glossary/category/{categoryGuid}/terms": { + "get": { + "tags": [ + "Glossary" + ], + "description": "Get all terms associated with the specific category.", + "operationId": "Glossary_ListCategoryTerms", + "x-ms-examples": { + "Glossary_ListCategoryTerms": { + "$ref": "./examples/Glossary_ListCategoryTerms.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/categoryGuid" + }, + { + "$ref": "#/parameters/limit" + }, + { + "$ref": "#/parameters/offset" + }, + { + "$ref": "#/parameters/sort" + } + ], + "responses": { + "200": { + "description": "An array of terms for the given category or an empty list.", + "schema": { + "type": "array", + "description": "An array of terms for the given category or an empty list.", + "items": { + "$ref": "#/definitions/AtlasRelatedTermHeader" + } + } + } + } + } + }, + "/atlas/v2/glossary/term": { + "post": { + "tags": [ + "Glossary" + ], + "description": "Create a glossary term.", + "operationId": "Glossary_CreateGlossaryTerm", + "x-ms-examples": { + "Glossary_CreateGlossaryTerm": { + "$ref": "./examples/Glossary_CreateGlossaryTerm.json" + }, + "Glossary_CreateGlossaryTermWithTermTemplate": { + "$ref": "./examples/Glossary_CreateGlossaryTermWithTermTemplate.json" + } + }, + "parameters": [ + { + "in": "body", + "name": "glossaryTerm", + "description": "The glossary term definition. A term must be anchored to a Glossary at the time of creation.\nOptionally it can be categorized as well.", + "required": true, + "schema": { + "$ref": "#/definitions/AtlasGlossaryTerm" + } + }, + { + "$ref": "#/parameters/includeTermHierarchy" + } + ], + "responses": { + "200": { + "description": "OK. If glossary term creation was successful.", + "schema": { + "$ref": "#/definitions/AtlasGlossaryTerm" + } + } + } + } + }, + "/atlas/v2/glossary/term/{termGuid}": { + "get": { + "tags": [ + "Glossary" + ], + "description": "Get a specific glossary term by its GUID.", + "operationId": "Glossary_GetGlossaryTerm", + "x-ms-examples": { + "Glossary_GetGlossaryTerm": { + "$ref": "./examples/Glossary_GetGlossaryTerm.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/termGuid" + }, + { + "$ref": "#/parameters/includeTermHierarchy" + } + ], + "responses": { + "200": { + "description": "OK. If glossary term exists for given GUID.", + "schema": { + "$ref": "#/definitions/AtlasGlossaryTerm" + } + } + } + }, + "put": { + "tags": [ + "Glossary" + ], + "description": "Update the given glossary term by its GUID.", + "operationId": "Glossary_UpdateGlossaryTerm", + "x-ms-examples": { + "Glossary_UpdateGlossaryTerm": { + "$ref": "./examples/Glossary_UpdateGlossaryTerm.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/termGuid" + }, + { + "in": "body", + "name": "glossaryTerm", + "description": "The glossary term to be updated.", + "required": true, + "schema": { + "$ref": "#/definitions/AtlasGlossaryTerm" + } + } + ], + "responses": { + "200": { + "description": "OK. If glossary term update was successful.", + "schema": { + "$ref": "#/definitions/AtlasGlossaryTerm" + } + } + } + }, + "delete": { + "tags": [ + "Glossary" + ], + "description": "Delete a glossary term.", + "operationId": "Glossary_DeleteGlossaryTerm", + "x-ms-examples": { + "Glossary_DeleteGlossaryTerm": { + "$ref": "./examples/Glossary_DeleteGlossaryTerm.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/termGuid" + } + ], + "responses": { + "204": { + "description": "OK. If glossary term delete was successful." + } + } + } + }, + "/atlas/v2/glossary/term/{termGuid}/partial": { + "put": { + "tags": [ + "Glossary" + ], + "description": "Update the glossary term partially.", + "operationId": "Glossary_PartialUpdateGlossaryTerm", + "x-ms-examples": { + "Glossary_PartialUpdateGlossaryTerm": { + "$ref": "./examples/Glossary_PartialUpdateGlossaryTerm.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/termGuid" + }, + { + "$ref": "#/parameters/includeTermHierarchy" + }, + { + "in": "body", + "name": "partialUpdates", + "description": "A map containing keys as attribute names and values as corresponding attribute values to be updated.", + "required": true, + "schema": { + "type": "object", + "description": "A map containing keys as attribute names and values as corresponding attribute values.", + "additionalProperties": { + "type": "string" + } + } + } + ], + "responses": { + "200": { + "description": "OK. If glossary partial update was successful.", + "schema": { + "$ref": "#/definitions/AtlasGlossaryTerm" + } + } + } + } + }, + "/atlas/v2/glossary/terms": { + "post": { + "tags": [ + "Glossary" + ], + "description": "Create glossary terms in bulk.", + "operationId": "Glossary_CreateGlossaryTerms", + "x-ms-examples": { + "Glossary_CreateGlossaryTerms": { + "$ref": "./examples/Glossary_CreateGlossaryTerms.json" + } + }, + "parameters": [ + { + "in": "body", + "name": "glossaryTerm", + "description": "An array of glossary term definitions to be created in bulk.", + "required": true, + "schema": { + "type": "array", + "description": "An array of glossary term definitions.", + "items": { + "$ref": "#/definitions/AtlasGlossaryTerm" + } + } + }, + { + "$ref": "#/parameters/includeTermHierarchy" + } + ], + "responses": { + "200": { + "description": "OK. If bulk glossary terms creation was successful.", + "schema": { + "type": "array", + "description": "If bulk glossary terms creation was successful.", + "items": { + "$ref": "#/definitions/AtlasGlossaryTerm" + } + } + } + } + } + }, + "/atlas/v2/glossary/terms/{termGuid}/assignedEntities": { + "get": { + "tags": [ + "Glossary" + ], + "description": "Get all related objects assigned with the specified term.", + "operationId": "Glossary_GetEntitiesAssignedWithTerm", + "x-ms-examples": { + "Glossary_GetEntitiesAssignedWithTerm": { + "$ref": "./examples/Glossary_ListEntitiesAssignedWithTerm.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/termGuid" + }, + { + "$ref": "#/parameters/limit" + }, + { + "$ref": "#/parameters/offset" + }, + { + "$ref": "#/parameters/sort" + } + ], + "responses": { + "200": { + "description": "OK. An array of related objects (if any) for the given glossary or an empty list.", + "schema": { + "type": "array", + "description": "An array of related objects (if any) for the given glossary or an empty list.", + "items": { + "$ref": "#/definitions/AtlasRelatedObjectId" + } + } + } + } + }, + "post": { + "tags": [ + "Glossary" + ], + "description": "Assign the given term to the provided list of related objects.", + "operationId": "Glossary_AssignTermToEntities", + "x-ms-examples": { + "Glossary_AssignTermToEntities": { + "$ref": "./examples/Glossary_AssignTermToEntities.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/termGuid" + }, + { + "in": "body", + "name": "relatedObjectIds", + "description": "An array of related object IDs to which the term has to be associated.", + "required": true, + "schema": { + "type": "array", + "description": "An array of related object IDs to which the term has to be associated.", + "items": { + "$ref": "#/definitions/AtlasRelatedObjectId" + } + } + } + ], + "responses": { + "204": { + "description": "OK. If the term assignment was successful." + } + } + }, + "put": { + "tags": [ + "Glossary" + ], + "description": "Delete the term assignment for the given list of related objects.", + "operationId": "Glossary_RemoveTermAssignmentFromEntities", + "x-ms-examples": { + "Glossary_RemoveTermAssignmentFromEntities": { + "$ref": "./examples/Glossary_RemoveTermAssignmentFromEntities.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/termGuid" + }, + { + "in": "body", + "name": "relatedObjectIds", + "description": "An array of related object IDs from which the term has to be dissociated.", + "required": true, + "schema": { + "type": "array", + "description": "An array of related object IDs from which the term has to be dissociated.", + "items": { + "$ref": "#/definitions/AtlasRelatedObjectId" + } + } + } + ], + "responses": { + "204": { + "description": "OK. If glossary term dissociation was successful." + } + } + }, + "delete": { + "tags": [ + "Glossary" + ], + "description": "Delete the term assignment for the given list of related objects.", + "operationId": "Glossary_DeleteTermAssignmentFromEntities", + "x-ms-examples": { + "Glossary_RemoveTermAssignmentFromEntities": { + "$ref": "./examples/Glossary_RemoveTermAssignmentFromEntities.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/termGuid" + }, + { + "in": "body", + "name": "relatedObjectIds", + "description": "An array of related object IDs from which the term has to be dissociated.", + "required": true, + "schema": { + "type": "array", + "description": "An array of related object IDs from which the term has to be dissociated.", + "items": { + "$ref": "#/definitions/AtlasRelatedObjectId" + } + } + } + ], + "responses": { + "204": { + "description": "OK. If glossary term dissociation was successful." + } + } + } + }, + "/atlas/v2/glossary/terms/{termGuid}/related": { + "get": { + "tags": [ + "Glossary" + ], + "description": "Get all related terms for a specific term by its GUID. Limit, offset, and sort parameters are currently not being enabled and won't work even they are passed.", + "operationId": "Glossary_ListRelatedTerms", + "x-ms-examples": { + "Glossary_ListRelatedTerms": { + "$ref": "./examples/Glossary_ListRelatedTerms.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/termGuid" + }, + { + "$ref": "#/parameters/limit" + }, + { + "$ref": "#/parameters/offset" + }, + { + "$ref": "#/parameters/sort" + } + ], + "responses": { + "200": { + "description": "OK. An array of related glossary terms for the given glossary or an empty list.", + "schema": { + "type": "object", + "description": "An array of related glossary terms for the given glossary or an empty list.", + "additionalProperties": { + "type": "array", + "items": { + "$ref": "#/definitions/AtlasRelatedTermHeader" + } + } + } + } + } + } + }, + "/atlas/v2/glossary/{glossaryGuid}": { + "get": { + "tags": [ + "Glossary" + ], + "description": "Get a specific Glossary by its GUID.", + "operationId": "Glossary_GetGlossary", + "x-ms-examples": { + "Glossary_GetGlossary": { + "$ref": "./examples/Glossary_GetGlossary.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/glossaryGuid" + } + ], + "responses": { + "200": { + "description": "OK. If glossary with given guid exists.", + "schema": { + "$ref": "#/definitions/AtlasGlossary" + } + } + } + }, + "put": { + "tags": [ + "Glossary" + ], + "description": "Update the given glossary.", + "operationId": "Glossary_UpdateGlossary", + "x-ms-examples": { + "Glossary_UpdateGlossary": { + "$ref": "./examples/Glossary_UpdateGlossary.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/glossaryGuid" + }, + { + "in": "body", + "name": "updatedGlossary", + "description": "The glossary definition to be updated.", + "required": true, + "schema": { + "$ref": "#/definitions/AtlasGlossary" + } + } + ], + "responses": { + "200": { + "description": "OK. If glossary update was successful.", + "schema": { + "$ref": "#/definitions/AtlasGlossary" + } + } + } + }, + "delete": { + "tags": [ + "Glossary" + ], + "description": "Delete a glossary.", + "operationId": "Glossary_DeleteGlossary", + "x-ms-examples": { + "Glossary_DeleteGlossary": { + "$ref": "./examples/Glossary_DeleteGlossary.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/glossaryGuid" + } + ], + "responses": { + "204": { + "description": "OK. If glossary delete was successful." + } + } + } + }, + "/atlas/v2/glossary/{glossaryGuid}/categories": { + "get": { + "tags": [ + "Glossary" + ], + "description": "Get the categories belonging to a specific glossary.", + "operationId": "Glossary_ListGlossaryCategories", + "x-ms-examples": { + "Glossary_ListGlossaryCategories": { + "$ref": "./examples/Glossary_ListGlossaryCategories.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/glossaryGuid" + }, + { + "$ref": "#/parameters/limit" + }, + { + "$ref": "#/parameters/offset" + }, + { + "$ref": "#/parameters/sort" + } + ], + "responses": { + "200": { + "description": "OK. An array of glossary categories for the given glossary or an empty list.", + "schema": { + "type": "array", + "description": "An array of glossary categories for the given glossary or an empty list.", + "items": { + "$ref": "#/definitions/AtlasGlossaryCategory" + } + } + } + } + } + }, + "/atlas/v2/glossary/{glossaryGuid}/categories/headers": { + "get": { + "tags": [ + "Glossary" + ], + "description": "Get the category headers belonging to a specific glossary.", + "operationId": "Glossary_ListGlossaryCategoriesHeaders", + "x-ms-examples": { + "Glossary_ListGlossaryCategoriesHeaders": { + "$ref": "./examples/Glossary_ListGlossaryCategoriesHeaders.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/glossaryGuid" + }, + { + "$ref": "#/parameters/limit" + }, + { + "$ref": "#/parameters/offset" + }, + { + "$ref": "#/parameters/sort" + } + ], + "responses": { + "200": { + "description": "OK. An array of glossary category headers for the given glossary or an empty list.", + "schema": { + "type": "array", + "description": "An array of glossary category headers for the given glossary or an empty list.", + "items": { + "$ref": "#/definitions/AtlasRelatedCategoryHeader" + } + } + } + } + } + }, + "/atlas/v2/glossary/{glossaryGuid}/detailed": { + "get": { + "tags": [ + "Glossary" + ], + "description": "Get a specific glossary with detailed information.", + "operationId": "Glossary_GetDetailedGlossary", + "x-ms-examples": { + "Glossary_GetDetailedGlossary": { + "$ref": "./examples/Glossary_GetDetailedGlossary.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/glossaryGuid" + }, + { + "$ref": "#/parameters/includeTermHierarchy" + } + ], + "responses": { + "200": { + "description": "OK. If glossary exists for given GUID.", + "schema": { + "$ref": "#/definitions/AtlasGlossaryExtInfo" + } + } + } + } + }, + "/atlas/v2/glossary/{glossaryGuid}/partial": { + "put": { + "tags": [ + "Glossary" + ], + "description": "Update the glossary partially. Some properties such as qualifiedName are not allowed to be updated.", + "operationId": "Glossary_PartialUpdateGlossary", + "x-ms-examples": { + "Glossary_PartialUpdateGlossary": { + "$ref": "./examples/Glossary_PartialUpdateGlossary.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/glossaryGuid" + }, + { + "$ref": "#/parameters/includeTermHierarchy" + }, + { + "in": "body", + "name": "partialUpdates", + "description": "A map containing keys as attribute names and values as corresponding attribute values.", + "required": true, + "schema": { + "type": "object", + "description": "A map containing keys as attribute names and values as corresponding attribute values.", + "additionalProperties": { + "type": "string" + } + } + } + ], + "responses": { + "200": { + "description": "OK. If glossary partial update was successful.", + "schema": { + "$ref": "#/definitions/AtlasGlossary" + } + } + } + } + }, + "/atlas/v2/glossary/{glossaryGuid}/terms": { + "get": { + "tags": [ + "Glossary" + ], + "description": "Get terms belonging to a specific glossary.", + "operationId": "Glossary_ListGlossaryTerms", + "x-ms-examples": { + "Glossary_ListGlossaryTerms": { + "$ref": "./examples/Glossary_ListGlossaryTerms.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/glossaryGuid" + }, + { + "$ref": "#/parameters/includeTermHierarchy" + }, + { + "$ref": "#/parameters/limit" + }, + { + "$ref": "#/parameters/offset" + }, + { + "$ref": "#/parameters/sort" + } + ], + "responses": { + "200": { + "description": "OK. An array of glossary terms for the given glossary or an empty list.", + "schema": { + "type": "array", + "description": "An array of glossary terms for the given glossary or an empty list.", + "items": { + "$ref": "#/definitions/AtlasGlossaryTerm" + } + } + } + } + } + }, + "/atlas/v2/glossary/{glossaryGuid}/terms/headers": { + "get": { + "tags": [ + "Glossary" + ], + "description": "Get term headers belonging to a specific glossary.", + "operationId": "Glossary_ListGlossaryTermHeaders", + "x-ms-examples": { + "Glossary_ListGlossaryTermHeaders": { + "$ref": "./examples/Glossary_ListGlossaryTermHeaders.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/glossaryGuid" + }, + { + "$ref": "#/parameters/limit" + }, + { + "$ref": "#/parameters/offset" + }, + { + "$ref": "#/parameters/sort" + } + ], + "responses": { + "200": { + "description": "OK. An array of glossary terms for the given glossary or an empty list.", + "schema": { + "type": "array", + "description": "An array of glossary terms for the given glossary or an empty list.", + "items": { + "$ref": "#/definitions/AtlasRelatedTermHeader" + } + } + } + } + } + }, + "/glossary/{glossaryGuid}/terms/import": { + "post": { + "tags": [ + "Glossary" + ], + "consumes": [ + "multipart/form-data" + ], + "description": "Import Glossary Terms from local csv file", + "operationId": "Glossary_ImportGlossaryTermsViaCsv", + "x-ms-examples": { + "Glossary_ImportGlossaryTermsViaCsv": { + "$ref": "./examples/Glossary_GetImportCSVOperationStatus.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/glossaryGuid" + }, + { + "$ref": "#/parameters/includeTermHierarchy" + }, + { + "in": "formData", + "name": "file", + "description": "The csv file to import glossary terms from.", + "required": true, + "type": "file" + }, + { + "$ref": "#/parameters/purviewAPIVersion" + } + ], + "responses": { + "202": { + "description": "Accepted. A job to import glossary terms via csv has been accepted.", + "schema": { + "$ref": "#/definitions/ImportCSVOperation" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/glossary/name/{glossaryName}/terms/import": { + "post": { + "tags": [ + "Glossary" + ], + "consumes": [ + "multipart/form-data" + ], + "description": "Import Glossary Terms from local csv file by glossaryName", + "operationId": "Glossary_ImportGlossaryTermsViaCsvByGlossaryName", + "x-ms-examples": { + "Glossary_ImportGlossaryTermsViaCsvByGlossaryName": { + "$ref": "./examples/Glossary_GetImportCSVOperationStatusByGloassaryName.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/glossaryName" + }, + { + "$ref": "#/parameters/includeTermHierarchy" + }, + { + "in": "formData", + "name": "file", + "description": "The csv file to import glossary terms from.", + "required": true, + "type": "file" + }, + { + "$ref": "#/parameters/purviewAPIVersion" + } + ], + "responses": { + "202": { + "description": "Accepted. A job to import glossary terms via csv has been accepted.", + "schema": { + "$ref": "#/definitions/ImportCSVOperation" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/glossary/terms/import/{operationGuid}": { + "get": { + "tags": [ + "Glossary" + ], + "description": "Get the status of import csv operation", + "operationId": "Glossary_GetImportCsvOperationStatus", + "x-ms-examples": { + "Glossary_GetImportCsvOperationStatus": { + "$ref": "./examples/Glossary_GetImportCSVOperationStatusByOperationguid.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/operationGuid" + }, + { + "$ref": "#/parameters/purviewAPIVersion" + } + ], + "responses": { + "200": { + "description": "OK. Return the status of import csv operation.", + "schema": { + "$ref": "#/definitions/ImportCSVOperation" + } + } + } + } + }, + "/glossary/{glossaryGuid}/terms/export": { + "post": { + "tags": [ + "Glossary" + ], + "description": "Export Glossary Terms as csv file", + "operationId": "Glossary_ExportGlossaryTermsAsCsv", + "produces": [ + "text/csv" + ], + "parameters": [ + { + "$ref": "#/parameters/glossaryGuid" + }, + { + "$ref": "#/parameters/includeTermHierarchy" + }, + { + "in": "body", + "name": "termGuids", + "description": "An array of term guids.", + "required": true, + "schema": { + "type": "array", + "description": "An array of term guids.", + "items": { + "$ref": "#/definitions/TermGuid" + } + } + }, + { + "$ref": "#/parameters/purviewAPIVersion" + } + ], + "responses": { + "200": { + "description": "OK. A csv file contains terms with given term guids will be generated.", + "schema": { + "type": "file" + } + } + } + } + }, + "/glossary/name/{glossaryName}/terms": { + "get": { + "tags": [ + "Glossary" + ], + "description": "Get terms by glossary name.", + "operationId": "Glossary_ListTermsByGlossaryName", + "x-ms-examples": { + "Glossary_ListTermsByGlossaryName": { + "$ref": "./examples/Glossary_ListTermsByGlossaryName.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/glossaryName" + }, + { + "$ref": "#/parameters/limit" + }, + { + "$ref": "#/parameters/offset" + }, + { + "$ref": "#/parameters/includeTermHierarchy" + }, + { + "$ref": "#/parameters/purviewAPIVersion" + } + ], + "responses": { + "200": { + "description": "OK. An array of glossary terms for the given glossary or an empty list.", + "schema": { + "type": "array", + "description": "An array of glossary terms for the given glossary or an empty list.", + "items": { + "$ref": "#/definitions/AtlasGlossaryTerm" + } + } + } + } + } + }, + "/search/query": { + "post": { + "tags": [ + "Discovery" + ], + "description": "Gets data using search.", + "operationId": "Discovery_Query", + "x-ms-examples": { + "Discovery_Query": { + "$ref": "./examples/Discovery_Query.json" + }, + "Discovery_Query_And": { + "$ref": "./examples/Discovery_Query_And.json" + }, + "Discovery_Query_Not": { + "$ref": "./examples/Discovery_Query_Not.json" + }, + "Discovery_Query_AndOrNested": { + "$ref": "./examples/Discovery_Query_AndOrNested.json" + }, + "Discovery_Query_Attribute": { + "$ref": "./examples/Discovery_Query_Attribute.json" + }, + "Discovery_Query_Classification": { + "$ref": "./examples/Discovery_Query_Classification.json" + }, + "Discovery_Query_FileExtension": { + "$ref": "./examples/Discovery_Query_FileExtension.json" + }, + "Discovery_Query_Id": { + "$ref": "./examples/Discovery_Query_Id.json" + }, + "Discovery_Query_Type": { + "$ref": "./examples/Discovery_Query_Type.json" + }, + "Discovery_Query_AssetType": { + "$ref": "./examples/Discovery_Query_AssetType.json" + }, + "Discovery_Query_Term": { + "$ref": "./examples/Discovery_Query_Term.json" + }, + "Discovery_Query_TermOfGlossary": { + "$ref": "./examples/Discovery_Query_TermOfGlossary.json" + }, + "Discovery_Query_Facet": { + "$ref": "./examples/Discovery_Query_Facet.json" + }, + "Discovery_Query_Taxonomy": { + "$ref": "./examples/Discovery_Query_Taxonomy.json" + } + }, + "parameters": [ + { + "in": "body", + "name": "searchRequest", + "description": "An object specifying the search criteria.", + "required": true, + "schema": { + "$ref": "#/definitions/SearchRequest" + } + }, + { + "$ref": "#/parameters/purviewAPIVersion" + } + ], + "responses": { + "200": { + "description": "OK. On successful lookup of the advanced search.", + "schema": { + "$ref": "#/definitions/SearchResult" + } + } + } + } + }, + "/search/suggest": { + "post": { + "tags": [ + "Discovery" + ], + "description": "Get search suggestions by query criteria.", + "operationId": "Discovery_Suggest", + "x-ms-examples": { + "Discovery_Suggest": { + "$ref": "./examples/Discovery_Suggest.json" + } + }, + "parameters": [ + { + "in": "body", + "name": "suggestRequest", + "description": "An object specifying the suggest criteria.", + "required": true, + "schema": { + "$ref": "#/definitions/SuggestRequest" + } + }, + { + "$ref": "#/parameters/purviewAPIVersion" + } + ], + "responses": { + "200": { + "description": "OK. On successful lookup of the suggestions.", + "schema": { + "$ref": "#/definitions/SuggestResult" + } + } + } + } + }, + "/search/autocomplete": { + "post": { + "tags": [ + "Discovery" + ], + "description": "Get auto complete options.", + "operationId": "Discovery_AutoComplete", + "x-ms-examples": { + "Discovery_AutoComplete": { + "$ref": "./examples/Discovery_AutoComplete.json" + } + }, + "parameters": [ + { + "in": "body", + "name": "autoCompleteRequest", + "description": "An object specifying the autocomplete criteria.", + "required": true, + "schema": { + "$ref": "#/definitions/AutoCompleteRequest" + } + }, + { + "$ref": "#/parameters/purviewAPIVersion" + } + ], + "responses": { + "200": { + "description": "OK. On successful lookup of the auto complete options.", + "schema": { + "$ref": "#/definitions/AutoCompleteResult" + } + } + } + } + }, + "/atlas/v2/lineage/{guid}": { + "get": { + "tags": [ + "Lineage" + ], + "description": "Get lineage info of the entity specified by GUID.", + "operationId": "GetLineageGraph", + "x-ms-examples": { + "GetLineageGraph": { + "$ref": "./examples/GetLineageGraph.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/guid" + }, + { + "$ref": "#/parameters/depth" + }, + { + "$ref": "#/parameters/width" + }, + { + "$ref": "#/parameters/direction" + }, + { + "$ref": "#/parameters/includeParent" + }, + { + "$ref": "#/parameters/getDerivedLineage" + } + ], + "responses": { + "200": { + "description": "OK. If the request is valid.", + "schema": { + "$ref": "#/definitions/AtlasLineageInfo" + } + } + } + } + }, + "/lineage/{guid}/next/": { + "get": { + "tags": [ + "Lineage" + ], + "description": "Return immediate next page lineage info about entity with pagination", + "operationId": "NextPageLineage", + "x-ms-examples": { + "NextPageLineage": { + "$ref": "./examples/NextPageLineage.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/guid" + }, + { + "$ref": "#/parameters/direction" + }, + { + "$ref": "#/parameters/getDerivedLineage" + }, + { + "$ref": "#/parameters/offset" + }, + { + "$ref": "#/parameters/limit" + }, + { + "$ref": "#/parameters/purviewAPIVersion" + } + ], + "responses": { + "200": { + "description": "OK. If the input is valid.", + "schema": { + "$ref": "#/definitions/AtlasLineageInfo" + } + } + } + } + }, + "/atlas/v2/relationship": { + "post": { + "tags": [ + "Relationship" + ], + "description": "Create a new relationship between entities.", + "operationId": "Relationship_Create", + "x-ms-examples": { + "Relationship_Create": { + "$ref": "./examples/Relationship_Create.json" + } + }, + "parameters": [ + { + "in": "body", + "name": "relationship", + "description": "The AtlasRelationship object containing the information for the relationship to be created.", + "required": true, + "schema": { + "$ref": "#/definitions/AtlasRelationship" + } + } + ], + "responses": { + "200": { + "description": "OK. The relationship is created.", + "schema": { + "$ref": "#/definitions/AtlasRelationship" + } + } + } + }, + "put": { + "tags": [ + "Relationship" + ], + "description": "Update an existing relationship between entities.", + "operationId": "Relationship_Update", + "x-ms-examples": { + "Relationship_Update": { + "$ref": "./examples/Relationship_Update.json" + } + }, + "parameters": [ + { + "in": "body", + "name": "relationship", + "description": "The AtlasRelationship object containing the information for the relationship to be created.", + "required": true, + "schema": { + "$ref": "#/definitions/AtlasRelationship" + } + } + ], + "responses": { + "200": { + "description": "OK. The relationship is updated.", + "schema": { + "$ref": "#/definitions/AtlasRelationship" + } + } + } + } + }, + "/atlas/v2/relationship/guid/{guid}": { + "get": { + "tags": [ + "Relationship" + ], + "description": "Get relationship information between entities by its GUID.", + "operationId": "Relationship_Get", + "x-ms-examples": { + "Relationship_Get": { + "$ref": "./examples/Relationship_Get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/relationshipGuid" + }, + { + "$ref": "#/parameters/extendedInfo" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/AtlasRelationshipWithExtInfo" + } + } + } + }, + "delete": { + "tags": [ + "Relationship" + ], + "description": "Delete a relationship between entities by its GUID.", + "operationId": "Relationship_Delete", + "x-ms-examples": { + "Relationship_Delete": { + "$ref": "./examples/Relationship_Delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/relationshipGuid" + } + ], + "responses": { + "204": { + "description": "OK. The relationship is deleted." + } + } + } + }, + "/atlas/v2/types/classificationdef/guid/{guid}": { + "get": { + "tags": [ + "Types" + ], + "description": "Get the classification definition for the given GUID.", + "operationId": "Types_GetClassificationDefByGuid", + "x-ms-examples": { + "Types_GetClassificationDefByGuid": { + "$ref": "./examples/Types_GetClassificationDefByGuid.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/classificationDefGuid" + } + ], + "responses": { + "200": { + "description": "OK. On successful lookup of the the classification definition by its GUID.", + "schema": { + "$ref": "#/definitions/AtlasClassificationDef" + } + } + } + } + }, + "/atlas/v2/types/classificationdef/name/{name}": { + "get": { + "tags": [ + "Types" + ], + "description": "Get the classification definition by its name (unique).", + "operationId": "Types_GetClassificationDefByName", + "x-ms-examples": { + "Types_GetClassificationDefByName": { + "$ref": "./examples/Types_GetClassificationDefByName.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/classificationDefName" + } + ], + "responses": { + "200": { + "description": "OK. On successful lookup of the the classification definition by its name.", + "schema": { + "$ref": "#/definitions/AtlasClassificationDef" + } + } + } + } + }, + "/atlas/v2/types/entitydef/guid/{guid}": { + "get": { + "tags": [ + "Types" + ], + "description": "Get the Entity definition for the given GUID.", + "operationId": "Types_GetEntityDefinitionByGuid", + "x-ms-examples": { + "Types_GetEntityDefinitionByGuid": { + "$ref": "./examples/Types_GetEntityDefinitionByGuid.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/entityDefGuid" + } + ], + "responses": { + "200": { + "description": "OK. On successful lookup of the the entity definition by its GUID.", + "schema": { + "$ref": "#/definitions/AtlasEntityDef" + } + } + } + } + }, + "/atlas/v2/types/entitydef/name/{name}": { + "get": { + "tags": [ + "Types" + ], + "description": "Get the entity definition by its name (unique).", + "operationId": "Types_GetEntityDefinitionByName", + "x-ms-examples": { + "Types_GetEntityDefinitionByName": { + "$ref": "./examples/Types_GetEntityDefinitionByName.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/entityDefName" + } + ], + "responses": { + "200": { + "description": "OK. On successful lookup of the the entity definition by its name.", + "schema": { + "$ref": "#/definitions/AtlasEntityDef" + } + } + } + } + }, + "/atlas/v2/types/enumdef/guid/{guid}": { + "get": { + "tags": [ + "Types" + ], + "description": "Get the enum definition for the given GUID.", + "operationId": "Types_GetEnumDefByGuid", + "x-ms-examples": { + "Types_GetEnumDefByGuid": { + "$ref": "./examples/Types_GetEnumDefByGuid.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/enumDefGuid" + } + ], + "responses": { + "200": { + "description": "OK. On successful lookup of the the enum definition by its GUID.", + "schema": { + "$ref": "#/definitions/AtlasEnumDef" + } + } + } + } + }, + "/atlas/v2/types/enumdef/name/{name}": { + "get": { + "tags": [ + "Types" + ], + "description": "Get the enum definition by its name (unique).", + "operationId": "Types_GetEnumDefByName", + "x-ms-examples": { + "Types_GetEnumDefByName": { + "$ref": "./examples/Types_GetEnumDefByName.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/enumDefName" + } + ], + "responses": { + "200": { + "description": "OK. On successful lookup of the the enum definition by its name.", + "schema": { + "$ref": "#/definitions/AtlasEnumDef" + } + } + } + } + }, + "/atlas/v2/types/relationshipdef/guid/{guid}": { + "get": { + "tags": [ + "Types" + ], + "description": "Get the relationship definition for the given GUID.", + "operationId": "Types_GetRelationshipDefByGuid", + "x-ms-examples": { + "Types_GetRelationshipDefByGuid": { + "$ref": "./examples/Types_GetRelationshipDefByGuid.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/relationshipDefGuid" + } + ], + "responses": { + "200": { + "description": "OK. On successful lookup of the the relationship definition by its GUID.", + "schema": { + "$ref": "#/definitions/AtlasRelationshipDef" + } + } + } + } + }, + "/atlas/v2/types/relationshipdef/name/{name}": { + "get": { + "tags": [ + "Types" + ], + "description": "Get the relationship definition by its name (unique).", + "operationId": "Types_GetRelationshipDefByName", + "x-ms-examples": { + "Types_GetRelationshipDefByName": { + "$ref": "./examples/Types_GetRelationshipDefByName.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/relationshipDefName" + } + ], + "responses": { + "200": { + "description": "OK. On successful lookup of the the relationship definition by its name.", + "schema": { + "$ref": "#/definitions/AtlasRelationshipDef" + } + } + } + } + }, + "/atlas/v2/types/structdef/guid/{guid}": { + "get": { + "tags": [ + "Types" + ], + "description": "Get the struct definition for the given GUID.", + "operationId": "Types_GetStructDefByGuid", + "x-ms-examples": { + "Types_GetStructDefByGuid": { + "$ref": "./examples/Types_GetStructDefByGuid.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/structDefGuid" + } + ], + "responses": { + "200": { + "description": "OK. On successful lookup of the the struct definition by its GUID.", + "schema": { + "$ref": "#/definitions/AtlasStructDef" + } + } + } + } + }, + "/atlas/v2/types/structdef/name/{name}": { + "get": { + "tags": [ + "Types" + ], + "description": "Get the struct definition by its name (unique).", + "operationId": "Types_GetStructDefByName", + "x-ms-examples": { + "Types_GetStructDefByName": { + "$ref": "./examples/Types_GetStructDefByName.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/structDefName" + } + ], + "responses": { + "200": { + "description": "OK. On successful lookup of the the struct definition by its name.", + "schema": { + "$ref": "#/definitions/AtlasStructDef" + } + } + } + } + }, + "/atlas/v2/types/typedef/guid/{guid}": { + "get": { + "tags": [ + "Types" + ], + "description": "Get the type definition for the given GUID.", + "operationId": "Types_GetTypeDefinitionByGuid", + "x-ms-examples": { + "Types_GetTypeDefinitionByGuid": { + "$ref": "./examples/Types_GetTypeDefinitionByGuid.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/typeDefGuid" + } + ], + "responses": { + "200": { + "description": "OK. On successful lookup of the the type definition by its GUID.", + "schema": { + "$ref": "#/definitions/AtlasTypeDef" + } + } + } + } + }, + "/atlas/v2/types/typedef/name/{name}": { + "get": { + "tags": [ + "Types" + ], + "description": "Get the type definition by its name (unique).", + "operationId": "Types_GetTypeDefinitionByName", + "x-ms-examples": { + "Types_GetTypeDefinitionByName": { + "$ref": "./examples/Types_GetTypeDefinitionByName.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/typeDefName" + } + ], + "responses": { + "200": { + "description": "OK. On successful lookup of the the type definition by its name.", + "schema": { + "$ref": "#/definitions/AtlasTypeDef" + } + } + } + }, + "delete": { + "tags": [ + "Types" + ], + "description": "Delete API for type identified by its name.", + "operationId": "Types_DeleteTypeByName", + "x-ms-examples": { + "Types_DeleteTypeByName": { + "$ref": "./examples/Types_DeleteTypeByName.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/typeDefName" + } + ], + "responses": { + "204": { + "description": "On successful deletion of the requested type definitions" + } + } + } + }, + "/atlas/v2/types/typedefs": { + "get": { + "tags": [ + "Types" + ], + "description": "Get all type definitions in Atlas in bulk.", + "operationId": "Types_GetAllTypeDefinitions", + "x-ms-examples": { + "Types_GetAllTypeDefinitions": { + "$ref": "./examples/Types_GetAllTypeDefinitions.json" + }, + "Types_GetAllTermTemplateDef": { + "$ref": "./examples/Types_GetAllTermTemplateDef.json" + }, + "Types_GetAllEnumDef": { + "$ref": "./examples/Types_GetAllEnumDef.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/includeTermTemplate" + }, + { + "$ref": "#/parameters/type" + } + ], + "responses": { + "200": { + "description": "OK. AtlasTypesDef with type definitions matching the search criteria or else returns empty list of type definitions.", + "schema": { + "$ref": "#/definitions/AtlasTypesDef" + } + } + } + }, + "post": { + "tags": [ + "Types" + ], + "description": "Create all atlas type definitions in bulk, only new definitions will be created.\nAny changes to the existing definitions will be discarded.", + "operationId": "Types_CreateTypeDefinitions", + "x-ms-examples": { + "Types_CreateTypeDefinitions": { + "$ref": "./examples/Types_CreateTypeDefinitions.json" + } + }, + "parameters": [ + { + "in": "body", + "name": "typesDef", + "description": "A composite wrapper object with corresponding lists of the type definition.", + "required": true, + "schema": { + "$ref": "#/definitions/AtlasTypesDef" + } + } + ], + "responses": { + "200": { + "description": "OK. On successful update of requested type definitions.", + "schema": { + "$ref": "#/definitions/AtlasTypesDef" + } + } + } + }, + "put": { + "tags": [ + "Types" + ], + "description": "Update all types in bulk, changes detected in the type definitions would be persisted.", + "operationId": "Types_UpdateAtlasTypeDefinitions", + "x-ms-examples": { + "Types_UpdateAtlasTypeDefinitions": { + "$ref": "./examples/Types_UpdateAtlasTypeDefinitions.json" + } + }, + "parameters": [ + { + "in": "body", + "name": "typesDef", + "description": "A composite object that captures all type definition changes.", + "required": true, + "schema": { + "$ref": "#/definitions/AtlasTypesDef" + } + } + ], + "responses": { + "200": { + "description": "OK. On successful update of requested type definitions.", + "schema": { + "$ref": "#/definitions/AtlasTypesDef" + } + } + } + }, + "delete": { + "tags": [ + "Types" + ], + "description": "Delete API for all types in bulk.", + "operationId": "Types_DeleteTypeDefinitions", + "x-ms-examples": { + "Types_DeleteTypeDefinitions": { + "$ref": "./examples/Types_DeleteTypeDefinitions.json" + } + }, + "parameters": [ + { + "in": "body", + "name": "typesDef", + "description": "A composite object that captures all types to be deleted", + "required": true, + "schema": { + "$ref": "#/definitions/AtlasTypesDef" + } + } + ], + "responses": { + "204": { + "description": "OK. On successful deletion of the requested type definitions." + } + } + } + }, + "/atlas/v2/types/typedefs/headers": { + "get": { + "tags": [ + "Types" + ], + "description": "List all type definitions returned as a list of minimal information header.", + "operationId": "Types_ListTypeDefinitionHeaders", + "x-ms-examples": { + "Types_ListTypeDefinitionHeaders": { + "$ref": "./examples/Types_ListTypeDefinitionHeaders.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/includeTermTemplate" + }, + { + "$ref": "#/parameters/type" + } + ], + "responses": { + "200": { + "description": "An array of AtlasTypeDefHeader matching the search criteria\nor an empty list if no match.", + "schema": { + "type": "array", + "description": "An array of AtlasTypeDefHeader matching the search criteria\nor an empty list if no match.", + "items": { + "$ref": "#/definitions/AtlasTypeDefHeader" + } + } + } + } + } + }, + "/types/termtemplatedef/guid/{guid}": { + "get": { + "tags": [ + "Types" + ], + "description": "Get the term template definition for the given GUID.", + "operationId": "Types_GetTermTemplateDefByGuid", + "x-ms-examples": { + "Types_GetTermTemplateDefByGuid": { + "$ref": "./examples/Types_GetTermTemplateDefByGuid.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/termTemplateDefGuid" + }, + { + "$ref": "#/parameters/purviewAPIVersion" + } + ], + "responses": { + "200": { + "description": "OK. On successful lookup of the the term template definition by its GUID.", + "schema": { + "$ref": "#/definitions/TermTemplateDef" + } + } + } + } + }, + "/types/termtemplatedef/name/{name}": { + "get": { + "tags": [ + "Types" + ], + "description": "Get the term template definition by its name (unique).", + "operationId": "Types_GetTermTemplateDefByName", + "x-ms-examples": { + "Types_GetTermTemplateDefByName": { + "$ref": "./examples/Types_GetTermTemplateDefByName.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/termTemplateDefName" + }, + { + "$ref": "#/parameters/purviewAPIVersion" + } + ], + "responses": { + "200": { + "description": "OK. On successful lookup of the the term template definition by its name.", + "schema": { + "$ref": "#/definitions/TermTemplateDef" + } + } + } + } + } + }, + "definitions": { + "AtlasAttributeDef": { + "type": "object", + "properties": { + "cardinality": { + "$ref": "#/definitions/Cardinality" + }, + "constraints": { + "type": "array", + "description": "An array of constraints.", + "items": { + "$ref": "#/definitions/AtlasConstraintDef" + } + }, + "defaultValue": { + "type": "string", + "description": "The default value of the attribute." + }, + "description": { + "type": "string", + "description": "The description of the attribute." + }, + "includeInNotification": { + "type": "boolean", + "description": "Determines if it is included in notification." + }, + "isIndexable": { + "type": "boolean", + "description": "Determines if it is indexable." + }, + "isOptional": { + "type": "boolean", + "description": "Determines if it is optional." + }, + "isUnique": { + "type": "boolean", + "description": "Determines if it unique." + }, + "name": { + "type": "string", + "description": "The name of the attribute." + }, + "options": { + "type": "object", + "description": "The options for the attribute.", + "additionalProperties": { + "type": "string" + } + }, + "typeName": { + "type": "string", + "description": "The name of the type." + }, + "valuesMaxCount": { + "type": "integer", + "format": "int32", + "description": "The maximum count of the values." + }, + "valuesMinCount": { + "type": "integer", + "format": "int32", + "description": "The minimum count of the values." + } + }, + "title": "AtlasAttributeDef", + "description": "class that captures details of a struct-attribute." + }, + "AtlasBaseModelObject": { + "type": "object", + "properties": { + "guid": { + "type": "string", + "description": "The GUID of the object." + } + }, + "title": "AtlasBaseModelObject", + "description": "The base model object." + }, + "AtlasBaseTypeDef": { + "type": "object", + "properties": { + "category": { + "$ref": "#/definitions/TypeCategory" + }, + "createTime": { + "type": "number", + "description": "The created time of the record." + }, + "createdBy": { + "type": "string", + "description": "The user who created the record." + }, + "dateFormatter": { + "$ref": "#/definitions/DateFormat" + }, + "description": { + "type": "string", + "description": "The description of the type definition." + }, + "guid": { + "type": "string", + "description": "The GUID of the type definition." + }, + "name": { + "type": "string", + "description": "The name of the type definition." + }, + "options": { + "type": "object", + "description": "The options for the type definition.", + "additionalProperties": { + "type": "string" + } + }, + "serviceType": { + "readOnly": false, + "description": "The service type.", + "type": "string" + }, + "typeVersion": { + "type": "string", + "description": "The version of the type." + }, + "updateTime": { + "type": "number", + "description": "The update time of the record." + }, + "updatedBy": { + "type": "string", + "description": "The user who updated the record." + }, + "version": { + "type": "number", + "description": "The version of the record." + }, + "lastModifiedTS": { + "$ref": "#/definitions/LastModifiedTS" + } + }, + "title": "AtlasBaseTypeDef", + "description": "Base class that captures common-attributes for all Atlas types." + }, + "AtlasClassification": { + "type": "object", + "title": "AtlasClassification", + "allOf": [ + { + "$ref": "#/definitions/AtlasStruct" + }, + { + "properties": { + "entityGuid": { + "type": "string", + "description": "The GUID of the entity." + }, + "entityStatus": { + "$ref": "#/definitions/Status" + }, + "removePropagationsOnEntityDelete": { + "type": "boolean", + "description": "Determines if propagations will be removed on entity deletion." + }, + "validityPeriods": { + "type": "array", + "description": "An array of time boundaries indicating validity periods.", + "items": { + "$ref": "#/definitions/TimeBoundary" + } + }, + "source": { + "type": "string", + "description": "indicate the source who create the classification detail" + }, + "sourceDetails": { + "type": "object", + "additionalProperties": { + "type": "object", + "properties": {} + }, + "description": "more detail on source information" + } + } + } + ], + "description": "An instance of a classification; it doesn't have an identity, this object exists only when associated with an entity." + }, + "AtlasClassificationDef": { + "type": "object", + "title": "AtlasClassificationDef", + "allOf": [ + { + "$ref": "#/definitions/AtlasStructDef" + }, + { + "properties": { + "entityTypes": { + "type": "array", + "description": "Specifying a list of entityType names in the classificationDef, ensures that classifications can\nonly be applied to those entityTypes.\n
      \n
    • Any subtypes of the entity types inherit the restriction
    • \n
    • Any classificationDef subtypes inherit the parents entityTypes restrictions
    • \n
    • Any classificationDef subtypes can further restrict the parents entityTypes restrictions by specifying a subset of the entityTypes
    • \n
    • An empty entityTypes list when there are no parent restrictions means there are no restrictions
    • \n
    • An empty entityTypes list when there are parent restrictions means that the subtype picks up the parents restrictions
    • \n
    • If a list of entityTypes are supplied, where one inherits from another, this will be rejected. This should encourage cleaner classificationsDefs
    • \n
    ", + "items": { + "type": "string" + } + }, + "subTypes": { + "type": "array", + "description": "An array of sub types.", + "items": { + "type": "string" + } + }, + "superTypes": { + "type": "array", + "description": "An array of super types.", + "items": { + "type": "string" + } + } + } + } + ], + "description": "class that captures details of a classification-type." + }, + "AtlasClassifications": { + "type": "object", + "title": "AtlasClassifications", + "allOf": [ + { + "$ref": "#/definitions/PList" + } + ], + "description": "REST serialization friendly list." + }, + "AtlasConstraintDef": { + "type": "object", + "properties": { + "params": { + "type": "object", + "description": "The parameters of the constraint definition.", + "additionalProperties": { + "type": "object", + "properties": {} + } + }, + "type": { + "type": "string", + "description": "The type of the constraint." + } + }, + "title": "AtlasConstraintDef", + "description": "class that captures details of a constraint." + }, + "AtlasEntitiesWithExtInfo": { + "type": "object", + "title": "AtlasEntitiesWithExtInfo", + "allOf": [ + { + "$ref": "#/definitions/AtlasEntityExtInfo" + }, + { + "properties": { + "entities": { + "type": "array", + "description": "An array of entities.", + "items": { + "$ref": "#/definitions/AtlasEntity" + } + } + } + } + ], + "description": "An instance of an entity along with extended info - like hive_table, hive_database." + }, + "AtlasEntity": { + "type": "object", + "title": "AtlasEntity", + "allOf": [ + { + "$ref": "#/definitions/AtlasStruct" + }, + { + "properties": { + "classifications": { + "type": "array", + "description": "An array of classifications.", + "items": { + "$ref": "#/definitions/AtlasClassification" + } + }, + "createTime": { + "type": "number", + "description": "The created time of the record." + }, + "createdBy": { + "type": "string", + "description": "The user who created the record." + }, + "guid": { + "type": "string", + "description": "The GUID of the entity." + }, + "homeId": { + "type": "string", + "description": "The home ID of the entity." + }, + "meanings": { + "type": "array", + "description": "An array of term assignment headers indicating the meanings of the entity.", + "items": { + "$ref": "#/definitions/AtlasTermAssignmentHeader" + } + }, + "provenanceType": { + "readOnly": false, + "description": "Used to record the provenance of an instance of an entity or relationship.", + "type": "number" + }, + "proxy": { + "type": "boolean", + "description": "Determines if there's a proxy." + }, + "relationshipAttributes": { + "type": "object", + "description": "The attributes of relationship.", + "additionalProperties": { + "type": "object", + "properties": {} + } + }, + "status": { + "$ref": "#/definitions/Status" + }, + "updateTime": { + "type": "number", + "description": "The update time of the record." + }, + "updatedBy": { + "type": "string", + "description": "The user who updated the record." + }, + "version": { + "type": "number", + "description": "The version of the entity." + }, + "source": { + "type": "string", + "description": "indicate the source who create the classification detail" + }, + "sourceDetails": { + "type": "object", + "additionalProperties": { + "type": "object", + "properties": {} + }, + "description": "more detail on source information" + }, + "contacts": { + "type": "object", + "description": "The dictionary of contacts for terms. Key could be Expert or Owner.", + "additionalProperties": { + "type": "array", + "items": { + "$ref": "#/definitions/ContactBasic" + } + } + } + } + } + ], + "description": "An instance of an entity - like hive_table, hive_database." + }, + "TermTemplateDef": { + "type": "object", + "title": "TermTemplateDef", + "allOf": [ + { + "$ref": "#/definitions/AtlasStructDef" + } + ], + "description": "term template definition for glossary term." + }, + "AtlasEntityDef": { + "type": "object", + "title": "AtlasEntityDef", + "allOf": [ + { + "$ref": "#/definitions/AtlasStructDef" + }, + { + "properties": { + "subTypes": { + "type": "array", + "description": "An array of sub types.", + "items": { + "type": "string" + } + }, + "superTypes": { + "type": "array", + "description": "An array of super types.", + "items": { + "type": "string" + } + }, + "relationshipAttributeDefs": { + "type": "array", + "description": "An array of relationship attributes.", + "items": { + "$ref": "#/definitions/AtlasRelationshipAttributeDef" + } + } + } + } + ], + "description": "class that captures details of a entity-type." + }, + "AtlasEntityExtInfo": { + "type": "object", + "properties": { + "referredEntities": { + "type": "object", + "description": "The referred entities.", + "additionalProperties": { + "$ref": "#/definitions/AtlasEntity" + } + } + }, + "title": "AtlasEntityExtInfo", + "description": "An instance of an entity along with extended info - like hive_table, hive_database." + }, + "AtlasEntityHeader": { + "type": "object", + "title": "AtlasEntityHeader", + "allOf": [ + { + "$ref": "#/definitions/AtlasStruct" + }, + { + "properties": { + "classificationNames": { + "type": "array", + "description": "An array of classification names.", + "items": { + "type": "string" + } + }, + "classifications": { + "type": "array", + "description": "An array of classifications.", + "items": { + "$ref": "#/definitions/AtlasClassification" + } + }, + "displayText": { + "type": "string", + "description": "The display text." + }, + "guid": { + "type": "string", + "description": "The GUID of the record." + }, + "meaningNames": { + "type": "array", + "description": "An array of meanings.", + "items": { + "type": "string" + } + }, + "meanings": { + "type": "array", + "description": "An array of term assignment headers.", + "items": { + "$ref": "#/definitions/AtlasTermAssignmentHeader" + } + }, + "status": { + "$ref": "#/definitions/Status" + } + } + } + ], + "description": "An instance of an entity - like hive_table, hive_database." + }, + "AtlasEntityHeaders": { + "type": "object", + "title": "AtlasEntityHeaders", + "properties": { + "guidHeaderMap": { + "readOnly": false, + "description": "The description of the guid header map,", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/AtlasEntityHeader" + } + } + }, + "description": "An instance of an entity header map." + }, + "AtlasEntityWithExtInfo": { + "type": "object", + "title": "AtlasEntityWithExtInfo", + "allOf": [ + { + "$ref": "#/definitions/AtlasEntityExtInfo" + }, + { + "properties": { + "entity": { + "$ref": "#/definitions/AtlasEntity" + } + } + } + ], + "description": "An instance of an entity along with extended info - like hive_table, hive_database." + }, + "AtlasEnumDef": { + "type": "object", + "title": "AtlasEnumDef", + "allOf": [ + { + "$ref": "#/definitions/AtlasBaseTypeDef" + }, + { + "properties": { + "defaultValue": { + "type": "string", + "description": "The default value." + }, + "elementDefs": { + "type": "array", + "description": "An array of enum element definitions.", + "items": { + "$ref": "#/definitions/AtlasEnumElementDef" + } + } + } + } + ], + "description": "class that captures details of an enum-type." + }, + "AtlasEnumElementDef": { + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "The description of the enum element definition." + }, + "ordinal": { + "type": "number", + "description": "The ordinal of the enum element definition." + }, + "value": { + "type": "string", + "description": "The value of the enum element definition." + } + }, + "title": "AtlasEnumElementDef", + "description": "class that captures details of an enum-element." + }, + "AtlasGlossary": { + "type": "object", + "title": "AtlasGlossary", + "allOf": [ + { + "$ref": "#/definitions/AtlasGlossaryBaseObject" + }, + { + "properties": { + "categories": { + "type": "array", + "description": "An array of categories.", + "items": { + "$ref": "#/definitions/AtlasRelatedCategoryHeader" + } + }, + "language": { + "type": "string", + "description": "The language of the glossary." + }, + "terms": { + "type": "array", + "description": "An array of related term headers.", + "items": { + "$ref": "#/definitions/AtlasRelatedTermHeader" + } + }, + "usage": { + "type": "string", + "description": "The usage of the glossary." + } + } + } + ], + "description": "The glossary object." + }, + "AtlasGlossaryBaseObject": { + "type": "object", + "title": "AtlasGlossaryBaseObject", + "allOf": [ + { + "$ref": "#/definitions/AtlasBaseModelObject" + }, + { + "properties": { + "classifications": { + "type": "array", + "description": "An array of classifications.", + "items": { + "$ref": "#/definitions/AtlasClassification" + } + }, + "longDescription": { + "type": "string", + "description": "The long version description." + }, + "name": { + "type": "string", + "description": "The name of the glossary object." + }, + "qualifiedName": { + "type": "string", + "description": "The qualified name of the glossary object." + }, + "shortDescription": { + "type": "string", + "description": "The short version of description." + }, + "lastModifiedTS": { + "$ref": "#/definitions/LastModifiedTS" + } + } + } + ], + "description": "The glossary base object." + }, + "AtlasGlossaryCategory": { + "type": "object", + "title": "AtlasGlossaryCategory", + "allOf": [ + { + "$ref": "#/definitions/AtlasGlossaryBaseObject" + }, + { + "properties": { + "anchor": { + "$ref": "#/definitions/AtlasGlossaryHeader" + }, + "childrenCategories": { + "type": "array", + "description": "An array of children categories.", + "items": { + "$ref": "#/definitions/AtlasRelatedCategoryHeader" + } + }, + "parentCategory": { + "$ref": "#/definitions/AtlasRelatedCategoryHeader" + }, + "terms": { + "type": "array", + "description": "An array of related term headers.", + "items": { + "$ref": "#/definitions/AtlasRelatedTermHeader" + } + } + } + } + ], + "description": "The glossary category." + }, + "AtlasGlossaryExtInfo": { + "type": "object", + "title": "AtlasGlossaryExtInfo", + "allOf": [ + { + "$ref": "#/definitions/AtlasGlossary" + }, + { + "properties": { + "categoryInfo": { + "type": "object", + "description": "The glossary category information.", + "additionalProperties": { + "$ref": "#/definitions/AtlasGlossaryCategory" + } + }, + "termInfo": { + "type": "object", + "description": "The glossary term information.", + "additionalProperties": { + "$ref": "#/definitions/AtlasGlossaryTerm" + } + } + } + } + ], + "description": "The extended information of glossary." + }, + "AtlasGlossaryHeader": { + "type": "object", + "properties": { + "displayText": { + "type": "string", + "description": "The display text." + }, + "glossaryGuid": { + "type": "string", + "description": "The GUID of the glossary." + }, + "relationGuid": { + "type": "string", + "description": "The GUID of the relationship." + } + }, + "title": "AtlasGlossaryHeader", + "description": "The glossary header with basic information." + }, + "AtlasGlossaryTerm": { + "type": "object", + "title": "AtlasGlossaryTerm", + "allOf": [ + { + "$ref": "#/definitions/AtlasGlossaryBaseObject" + }, + { + "properties": { + "abbreviation": { + "type": "string", + "description": "The abbreviation of the term." + }, + "templateName": { + "type": "array", + "items": { + "type": "object" + } + }, + "anchor": { + "$ref": "#/definitions/AtlasGlossaryHeader" + }, + "antonyms": { + "type": "array", + "description": "An array of related term headers as antonyms.", + "items": { + "$ref": "#/definitions/AtlasRelatedTermHeader" + } + }, + "createTime": { + "type": "number", + "description": "The created time of the record." + }, + "createdBy": { + "type": "string", + "description": "The user who created the record." + }, + "updateTime": { + "type": "number", + "description": "The update time of the record." + }, + "updatedBy": { + "type": "string", + "description": "The user who updated the record." + }, + "status": { + "$ref": "#/definitions/TermStatus" + }, + "resources": { + "type": "array", + "description": "An array of resource link for term", + "items": { + "$ref": "#/definitions/ResourceLink" + } + }, + "contacts": { + "type": "object", + "description": "The dictionary of contacts for terms. Key could be Expert or Steward.", + "additionalProperties": { + "type": "array", + "items": { + "$ref": "#/definitions/ContactBasic" + } + } + }, + "attributes": { + "$ref": "#/definitions/TermCustomAttributes" + }, + "assignedEntities": { + "type": "array", + "description": "An array of related object IDs.", + "items": { + "$ref": "#/definitions/AtlasRelatedObjectId" + } + }, + "categories": { + "type": "array", + "description": "An array of term categorization headers.", + "items": { + "$ref": "#/definitions/AtlasTermCategorizationHeader" + } + }, + "classifies": { + "type": "array", + "description": "An array of related term headers.", + "items": { + "$ref": "#/definitions/AtlasRelatedTermHeader" + } + }, + "examples": { + "type": "array", + "description": "An array of examples.", + "items": { + "type": "string" + } + }, + "isA": { + "type": "array", + "description": "An array of related term headers indicating the is-a relationship.", + "items": { + "$ref": "#/definitions/AtlasRelatedTermHeader" + } + }, + "preferredTerms": { + "type": "array", + "description": "An array of preferred related term headers.", + "items": { + "$ref": "#/definitions/AtlasRelatedTermHeader" + } + }, + "preferredToTerms": { + "type": "array", + "description": "An array of related term headers that are preferred to.", + "items": { + "$ref": "#/definitions/AtlasRelatedTermHeader" + } + }, + "replacedBy": { + "type": "array", + "description": "An array of related term headers that are replaced by.", + "items": { + "$ref": "#/definitions/AtlasRelatedTermHeader" + } + }, + "replacementTerms": { + "type": "array", + "description": "An array of related term headers for replacement.", + "items": { + "$ref": "#/definitions/AtlasRelatedTermHeader" + } + }, + "seeAlso": { + "type": "array", + "description": "An array of related term headers for see also.", + "items": { + "$ref": "#/definitions/AtlasRelatedTermHeader" + } + }, + "synonyms": { + "type": "array", + "description": "An array of related term headers as synonyms.", + "items": { + "$ref": "#/definitions/AtlasRelatedTermHeader" + } + }, + "translatedTerms": { + "type": "array", + "description": "An array of translated related term headers.", + "items": { + "$ref": "#/definitions/AtlasRelatedTermHeader" + } + }, + "translationTerms": { + "type": "array", + "description": "An array of related term headers for translation.", + "items": { + "$ref": "#/definitions/AtlasRelatedTermHeader" + } + }, + "usage": { + "type": "string", + "description": "The usage of the term." + }, + "validValues": { + "type": "array", + "description": "An array of related term headers as valid values.", + "items": { + "$ref": "#/definitions/AtlasRelatedTermHeader" + } + }, + "validValuesFor": { + "type": "array", + "description": "An array of related term headers as valid values for other records.", + "items": { + "$ref": "#/definitions/AtlasRelatedTermHeader" + } + } + } + } + ], + "description": "The glossary term." + }, + "ResourceLink": { + "title": "ResourceLink", + "type": "object", + "properties": { + "displayName": { + "type": "string", + "description": "Display name for url." + }, + "url": { + "type": "string", + "description": "web url. http or https" + } + } + }, + "ContactBasic": { + "title": "ContactBasic", + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Azure Active Directory object Id." + }, + "info": { + "type": "string", + "description": "additional information to describe this contact." + } + } + }, + "TermStatus": { + "type": "string", + "title": "Status", + "description": "Status of the AtlasGlossaryTerm", + "enum": [ + "Draft", + "Approved", + "Alert", + "Expired" + ], + "x-ms-enum": { + "name": "TermStatus", + "modelAsString": true + } + }, + "TermCustomAttributes": { + "title": "attributes", + "description": "The custom attributes of the term, which is map>.\nThe key of the first layer map is term template name.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/TermCustomAttributesExtraProperties" + } + }, + "TermCustomAttributesExtraProperties": { + "type": "object", + "description": "The term attribute name and attribute value, which is map", + "additionalProperties": { + "type": "object", + "description": "The value of custom term attribute" + } + }, + "AtlasLineageInfo": { + "type": "object", + "properties": { + "baseEntityGuid": { + "type": "string", + "description": "The GUID of the base entity." + }, + "guidEntityMap": { + "type": "object", + "description": "The GUID entity map.", + "additionalProperties": { + "$ref": "#/definitions/AtlasEntityHeader" + } + }, + "widthCounts": { + "type": "object", + "description": "The entity count in specific direction.", + "additionalProperties": { + "$ref": "#/definitions/AtlasLineageInfoExtraProperties" + } + }, + "lineageDepth": { + "type": "integer", + "format": "int32", + "description": "The depth of lineage." + }, + "lineageWidth": { + "type": "integer", + "format": "int32", + "description": "The width of lineage." + }, + "includeParent": { + "type": "boolean", + "description": "True to return the parent of the base entity." + }, + "childrenCount": { + "type": "integer", + "format": "int32", + "description": "The number of children node." + }, + "lineageDirection": { + "$ref": "#/definitions/LineageDirection" + }, + "parentRelations": { + "type": "array", + "description": "An array of parentRelations relations.", + "items": { + "$ref": "#/definitions/ParentRelation" + } + }, + "relations": { + "type": "array", + "description": "An array of lineage relations.", + "items": { + "$ref": "#/definitions/LineageRelation" + } + } + }, + "title": "AtlasLineageInfo", + "description": "The lineage information." + }, + "AtlasLineageInfoExtraProperties": { + "type": "object", + "description": "The lineage direction", + "additionalProperties": { + "type": "object", + "description": "The entity guid." + } + }, + "AtlasObjectId": { + "type": "object", + "properties": { + "guid": { + "type": "string", + "description": "The GUID of the object." + }, + "typeName": { + "type": "string", + "description": "The name of the type." + }, + "uniqueAttributes": { + "type": "object", + "description": "The unique attributes of the object.", + "additionalProperties": { + "type": "object", + "properties": {} + } + } + }, + "title": "AtlasObjectId", + "description": "Reference to an object-instance of an Atlas type - like entity." + }, + "AtlasRelatedCategoryHeader": { + "type": "object", + "properties": { + "categoryGuid": { + "type": "string", + "description": "The GUID of the category." + }, + "description": { + "type": "string", + "description": "The description of the category header." + }, + "displayText": { + "type": "string", + "description": "The display text." + }, + "parentCategoryGuid": { + "type": "string", + "description": "The GUID of the parent category." + }, + "relationGuid": { + "type": "string", + "description": "The GUID of the relationship." + } + }, + "title": "AtlasRelatedCategoryHeader", + "description": "The header of the related category." + }, + "AtlasRelatedObjectId": { + "type": "object", + "title": "AtlasRelatedObjectId", + "allOf": [ + { + "$ref": "#/definitions/AtlasObjectId" + }, + { + "properties": { + "displayText": { + "type": "string", + "description": "The display text." + }, + "entityStatus": { + "$ref": "#/definitions/Status" + }, + "relationshipType": { + "type": "string" + }, + "relationshipAttributes": { + "$ref": "#/definitions/AtlasStruct" + }, + "relationshipGuid": { + "type": "string", + "description": "The GUID of the relationship." + }, + "relationshipStatus": { + "$ref": "#/definitions/Status_AtlasRelationship" + } + } + } + ], + "description": "Reference to an object-instance of AtlasEntity type used in relationship attribute values" + }, + "AtlasRelatedTermHeader": { + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "The description of the related term." + }, + "displayText": { + "type": "string", + "description": "The display text." + }, + "expression": { + "type": "string", + "description": "The expression of the term." + }, + "relationGuid": { + "type": "string", + "description": "The GUID of the relationship." + }, + "source": { + "type": "string", + "description": "The source of the term." + }, + "status": { + "$ref": "#/definitions/AtlasTermRelationshipStatus" + }, + "steward": { + "type": "string", + "description": "The steward of the term." + }, + "termGuid": { + "type": "string", + "description": "The GUID of the term." + } + }, + "title": "AtlasRelatedTermHeader", + "description": "The header of the related term." + }, + "AtlasRelationship": { + "type": "object", + "title": "AtlasRelationship", + "allOf": [ + { + "$ref": "#/definitions/AtlasStruct" + }, + { + "properties": { + "createTime": { + "type": "number", + "description": "The created time of the record." + }, + "createdBy": { + "type": "string", + "description": "The user who created the record." + }, + "end1": { + "$ref": "#/definitions/AtlasObjectId" + }, + "end2": { + "$ref": "#/definitions/AtlasObjectId" + }, + "guid": { + "type": "string", + "description": "The GUID of the relationship." + }, + "homeId": { + "type": "string", + "description": "The home ID of the relationship." + }, + "label": { + "type": "string", + "description": "The label of the relationship." + }, + "provenanceType": { + "readOnly": false, + "description": "Used to record the provenance of an instance of an entity or relationship", + "type": "number" + }, + "status": { + "$ref": "#/definitions/Status_AtlasRelationship" + }, + "updateTime": { + "type": "number", + "description": "The update time of the record." + }, + "updatedBy": { + "type": "string", + "description": "The user who updated the record." + }, + "version": { + "type": "number", + "description": "The version of the relationship." + } + } + } + ], + "description": "Atlas relationship instance." + }, + "AtlasRelationshipDef": { + "type": "object", + "title": "AtlasRelationshipDef", + "allOf": [ + { + "$ref": "#/definitions/AtlasStructDef" + }, + { + "properties": { + "endDef1": { + "$ref": "#/definitions/AtlasRelationshipEndDef" + }, + "endDef2": { + "$ref": "#/definitions/AtlasRelationshipEndDef" + }, + "relationshipCategory": { + "$ref": "#/definitions/RelationshipCategory" + }, + "relationshipLabel": { + "type": "string", + "description": "The label of the relationship." + } + } + } + ], + "description": "AtlasRelationshipDef is a TypeDef that defines a relationship.\n

    \nAs with other typeDefs the AtlasRelationshipDef has a name. Once created the RelationshipDef has a guid.\nThe name and the guid are the 2 ways that the RelationshipDef is identified.\n

    \nRelationshipDefs have 2 ends, each of which specify cardinality, an EntityDef type name and name and optionally\nwhether the end is a container.\n

    \nRelationshipDefs can have AttributeDefs - though only primitive types are allowed.
    \nRelationshipDefs have a relationshipCategory specifying the UML type of relationship required
    \nThe way EntityDefs and RelationshipDefs are intended to be used is that EntityDefs will define AttributeDefs these AttributeDefs\nwill not specify an EntityDef type name as their types.\n

    \nRelationshipDefs introduce new attributes to the entity instances. For example\n

    \nEntityDef A might have attributes attr1,attr2,attr3
    \nEntityDef B might have attributes attr4,attr5,attr6
    \nRelationshipDef AtoB might define 2 ends
    \n\n

    \n   end1:  type A, name attr7\n   end2:  type B, name attr8  
    \n\n

    \nWhen an instance of EntityDef A is created, it will have attributes attr1,attr2,attr3,attr7
    \nWhen an instance of EntityDef B is created, it will have attributes attr4,attr5,attr6,attr8\n

    \nIn this way relationshipDefs can be authored separately from entityDefs and can inject relationship attributes into\nthe entity instances" + }, + "AtlasRelationshipEndDef": { + "type": "object", + "properties": { + "cardinality": { + "$ref": "#/definitions/Cardinality" + }, + "description": { + "type": "string", + "description": "The description of the relationship end definition." + }, + "isContainer": { + "type": "boolean", + "description": "Determines if it is container." + }, + "isLegacyAttribute": { + "type": "boolean", + "description": "Determines if it is a legacy attribute." + }, + "name": { + "type": "string", + "description": "The name of the relationship end definition." + }, + "type": { + "type": "string", + "description": "The type of the relationship end." + } + }, + "title": "AtlasRelationshipEndDef", + "description": "The relationshipEndDef represents an end of the relationship. The end of the relationship is defined by a type, an\nattribute name, cardinality and whether it is the container end of the relationship." + }, + "AtlasRelationshipAttributeDef": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AtlasAttributeDef" + }, + { + "properties": { + "isLegacyAttribute": { + "type": "boolean", + "description": "Determines if it is a legacy attribute." + }, + "relationshipTypeName": { + "type": "string", + "description": "The name of the relationship type." + } + } + } + ], + "title": "AtlasRelationshipEndDef", + "description": "The relationshipEndDef represents an end of the relationship. The end of the relationship is defined by a type, an\nattribute name, cardinality and whether it is the container end of the relationship." + }, + "AtlasRelationshipWithExtInfo": { + "type": "object", + "properties": { + "referredEntities": { + "type": "object", + "description": "The referred entity header.", + "additionalProperties": { + "$ref": "#/definitions/AtlasEntityHeader" + } + }, + "relationship": { + "$ref": "#/definitions/AtlasRelationship" + } + }, + "title": "AtlasRelationshipWithExtInfo", + "description": "The relationship with extended information." + }, + "AtlasStruct": { + "type": "object", + "properties": { + "attributes": { + "type": "object", + "description": "The attributes of the struct.", + "additionalProperties": { + "type": "object", + "properties": {} + } + }, + "typeName": { + "type": "string", + "description": "The name of the type." + }, + "lastModifiedTS": { + "$ref": "#/definitions/LastModifiedTS" + } + }, + "title": "AtlasStruct", + "description": "Captures details of struct contents. Not instantiated directly, used only via AtlasEntity, AtlasClassification." + }, + "AtlasStructDef": { + "type": "object", + "title": "AtlasStructDef", + "allOf": [ + { + "$ref": "#/definitions/AtlasBaseTypeDef" + }, + { + "properties": { + "attributeDefs": { + "type": "array", + "description": "An array of attribute definitions.", + "items": { + "$ref": "#/definitions/AtlasAttributeDef" + } + } + } + } + ], + "description": "class that captures details of a struct-type." + }, + "AtlasTermAssignmentHeader": { + "type": "object", + "properties": { + "confidence": { + "type": "integer", + "format": "int32", + "description": "The confidence of the term assignment." + }, + "createdBy": { + "type": "string", + "description": "The user who created the record." + }, + "description": { + "type": "string", + "description": "The description of the term assignment." + }, + "displayText": { + "type": "string", + "description": "The display text." + }, + "expression": { + "type": "string", + "description": "The expression of the term assignment." + }, + "relationGuid": { + "type": "string", + "description": "The GUID of the relationship." + }, + "source": { + "type": "string", + "description": "The source of the term." + }, + "status": { + "$ref": "#/definitions/AtlasTermAssignmentStatus" + }, + "steward": { + "type": "string", + "description": "The steward of the term." + }, + "termGuid": { + "type": "string", + "description": "The GUID of the term." + } + }, + "title": "AtlasTermAssignmentHeader", + "description": "The header for term assignment." + }, + "AtlasTermAssignmentStatus": { + "type": "string", + "title": "AtlasTermAssignmentStatus", + "description": "The status of terms assignment.", + "enum": [ + "DISCOVERED", + "PROPOSED", + "IMPORTED", + "VALIDATED", + "DEPRECATED", + "OBSOLETE", + "OTHER" + ], + "x-ms-enum": { + "name": "AtlasTermAssignmentStatus", + "modelAsString": true + } + }, + "AtlasTermCategorizationHeader": { + "type": "object", + "properties": { + "categoryGuid": { + "type": "string", + "description": "The GUID of the category." + }, + "description": { + "type": "string", + "description": "The description of the record." + }, + "displayText": { + "type": "string", + "description": "The display text." + }, + "relationGuid": { + "type": "string", + "description": "The GUID of the relationship." + }, + "status": { + "$ref": "#/definitions/AtlasTermRelationshipStatus" + } + }, + "title": "AtlasTermCategorizationHeader", + "description": "The basic information for term categorization." + }, + "AtlasTermRelationshipStatus": { + "type": "string", + "title": "AtlasTermRelationshipStatus", + "description": "The status of term relationship.", + "enum": [ + "DRAFT", + "ACTIVE", + "DEPRECATED", + "OBSOLETE", + "OTHER" + ], + "x-ms-enum": { + "name": "AtlasTermRelationshipStatus", + "modelAsString": true + } + }, + "AtlasTypeDefHeader": { + "type": "object", + "properties": { + "category": { + "$ref": "#/definitions/TypeCategory" + }, + "guid": { + "type": "string", + "description": "The GUID of the type definition." + }, + "name": { + "type": "string", + "description": "The name of the type definition." + } + }, + "title": "AtlasTypeDefHeader", + "description": "The basic information of the type definition." + }, + "AtlasTypesDef": { + "type": "object", + "properties": { + "classificationDefs": { + "type": "array", + "description": "An array of classification definitions.", + "items": { + "$ref": "#/definitions/AtlasClassificationDef" + } + }, + "entityDefs": { + "type": "array", + "description": "An array of entity definitions.", + "items": { + "$ref": "#/definitions/AtlasEntityDef" + } + }, + "enumDefs": { + "type": "array", + "description": "An array of enum definitions.", + "items": { + "$ref": "#/definitions/AtlasEnumDef" + } + }, + "relationshipDefs": { + "type": "array", + "description": "An array of relationship definitions.", + "items": { + "$ref": "#/definitions/AtlasRelationshipDef" + } + }, + "structDefs": { + "type": "array", + "description": "An array of struct definitions.", + "items": { + "$ref": "#/definitions/AtlasStructDef" + } + }, + "termTemplateDefs": { + "type": "array", + "description": "An array of term template definitions.", + "items": { + "$ref": "#/definitions/TermTemplateDef" + } + } + }, + "title": "AtlasTypesDef", + "description": "The definitions of types." + }, + "AtlasExtraTypeDef": { + "type": "object", + "properties": { + "entityTypes": { + "type": "array", + "description": "Specifying a list of entityType names in the classificationDef, ensures that classifications can\nonly be applied to those entityTypes.\n

      \n
    • Any subtypes of the entity types inherit the restriction
    • \n
    • Any classificationDef subtypes inherit the parents entityTypes restrictions
    • \n
    • Any classificationDef subtypes can further restrict the parents entityTypes restrictions by specifying a subset of the entityTypes
    • \n
    • An empty entityTypes list when there are no parent restrictions means there are no restrictions
    • \n
    • An empty entityTypes list when there are parent restrictions means that the subtype picks up the parents restrictions
    • \n
    • If a list of entityTypes are supplied, where one inherits from another, this will be rejected. This should encourage cleaner classificationsDefs
    • \n
    ", + "items": { + "type": "string" + } + }, + "subTypes": { + "type": "array", + "description": "An array of sub types.", + "items": { + "type": "string" + } + }, + "superTypes": { + "type": "array", + "description": "An array of super types.", + "items": { + "type": "string" + } + }, + "relationshipAttributeDefs": { + "type": "array", + "description": "An array of relationship attributes.", + "items": { + "$ref": "#/definitions/AtlasRelationshipAttributeDef" + } + }, + "defaultValue": { + "type": "string", + "description": "The default value." + }, + "elementDefs": { + "type": "array", + "description": "An array of enum element definitions.", + "items": { + "$ref": "#/definitions/AtlasEnumElementDef" + } + }, + "endDef1": { + "$ref": "#/definitions/AtlasRelationshipEndDef" + }, + "endDef2": { + "$ref": "#/definitions/AtlasRelationshipEndDef" + }, + "relationshipCategory": { + "$ref": "#/definitions/RelationshipCategory" + }, + "relationshipLabel": { + "type": "string", + "description": "The label of the relationship." + }, + "attributeDefs": { + "type": "array", + "description": "An array of attribute definitions.", + "items": { + "$ref": "#/definitions/AtlasAttributeDef" + } + } + }, + "title": "AtlasExtraTypeDef", + "description": "Extra properties for a type." + }, + "AtlasTypeDef": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AtlasBaseTypeDef" + }, + { + "$ref": "#/definitions/AtlasExtraTypeDef" + } + ], + "title": "AtlasTypeDef", + "description": "The definitions of type." + }, + "TypeStatistics": { + "type": "object", + "properties": { + "typeStatistics": { + "type": "object", + "description": "An map with type and corresponding statistics.", + "additionalProperties": { + "$ref": "#/definitions/TypeStatisticsExtraProperties" + } + } + }, + "title": "TypeStatistics", + "description": "The types and corresponding statistics." + }, + "TypeStatisticsExtraProperties": { + "type": "object", + "properties": { + "count": { + "type": "integer", + "format": "int32", + "description": "The entity count of this type." + } + }, + "title": "TypeStatisticsExtraProperties", + "description": "The additional properties for types and corresponding statistics." + }, + "AtlasUserSavedSearch": { + "type": "object", + "title": "AtlasUserSavedSearch", + "allOf": [ + { + "$ref": "#/definitions/AtlasBaseModelObject" + }, + { + "properties": { + "name": { + "type": "string", + "description": "The name of the saved search." + }, + "ownerName": { + "type": "string", + "description": "The owner name of the saved search." + }, + "searchParameters": { + "$ref": "#/definitions/SearchParameters" + }, + "searchType": { + "$ref": "#/definitions/SavedSearchType" + }, + "uiParameters": { + "type": "string", + "description": "The UI parameters." + } + } + } + ], + "description": "User saved search." + }, + "Cardinality": { + "type": "string", + "title": "Cardinality", + "description": "single-valued attribute or multi-valued attribute.", + "enum": [ + "SINGLE", + "LIST", + "SET" + ], + "x-ms-enum": { + "name": "Cardinality", + "modelAsString": true + } + }, + "ClassificationAssociateRequest": { + "type": "object", + "properties": { + "classification": { + "$ref": "#/definitions/AtlasClassification" + }, + "entityGuids": { + "type": "array", + "description": "The GUID of the entity.", + "items": { + "type": "string" + } + } + }, + "title": "ClassificationAssociateRequest", + "description": "The request for classification association." + }, + "Condition": { + "type": "string", + "title": "Condition", + "description": "The enum for condition.", + "enum": [ + "AND", + "OR" + ], + "x-ms-enum": { + "name": "Condition", + "modelAsString": true + } + }, + "DateFormat": { + "type": "object", + "title": "DateFormat", + "properties": { + "availableLocales": { + "type": "array", + "description": "An array of available locales.", + "items": { + "type": "string" + } + }, + "calendar": { + "type": "number" + }, + "dateInstance": { + "$ref": "#/definitions/DateFormat" + }, + "dateTimeInstance": { + "$ref": "#/definitions/DateFormat" + }, + "instance": { + "$ref": "#/definitions/DateFormat" + }, + "lenient": { + "type": "boolean", + "description": "Determines the leniency of the date format." + }, + "numberFormat": { + "$ref": "#/definitions/NumberFormat" + }, + "timeInstance": { + "$ref": "#/definitions/DateFormat" + }, + "timeZone": { + "$ref": "#/definitions/TimeZone" + } + }, + "description": "The date format." + }, + "EntityMutationResponse": { + "type": "object", + "properties": { + "guidAssignments": { + "type": "object", + "description": "A map of GUID assignments with entities.", + "additionalProperties": { + "type": "string" + } + }, + "mutatedEntities": { + "type": "object", + "description": "The entity headers of mutated entities.", + "additionalProperties": { + "type": "array", + "items": { + "$ref": "#/definitions/AtlasEntityHeader" + } + } + }, + "partialUpdatedEntities": { + "type": "array", + "description": "An array of entity headers that partially updated.", + "items": { + "$ref": "#/definitions/AtlasEntityHeader" + } + } + }, + "title": "EntityMutationResponse", + "description": "The mutation response of entity." + }, + "EntityOperation": { + "type": "string", + "title": "EntityOperation", + "description": "The enum of entity operation.", + "enum": [ + "CREATE", + "UPDATE", + "PARTIAL_UPDATE", + "DELETE" + ], + "x-ms-enum": { + "name": "EntityOperation", + "modelAsString": true + } + }, + "FilterCriteria": { + "type": "object", + "properties": { + "attributeName": { + "type": "string", + "description": "The name of the attribute." + }, + "attributeValue": { + "type": "string", + "description": "The value of the attribute." + }, + "condition": { + "$ref": "#/definitions/Condition" + }, + "criterion": { + "type": "array", + "description": "An array of filter criteria.", + "items": { + "$ref": "#/definitions/FilterCriteria" + } + }, + "operator": { + "$ref": "#/definitions/Operator" + } + }, + "title": "FilterCriteria", + "description": "The filter criteria with attributes and condition." + }, + "Format": { + "type": "object", + "title": "Format", + "description": "The format object." + }, + "LineageDirection": { + "type": "string", + "title": "LineageDirection", + "description": "The enum of lineage direction.", + "enum": [ + "INPUT", + "OUTPUT", + "BOTH" + ], + "x-ms-enum": { + "name": "LineageDirection", + "modelAsString": true + } + }, + "LineageRelation": { + "type": "object", + "properties": { + "fromEntityId": { + "type": "string", + "description": "The GUID of from-entity." + }, + "relationshipId": { + "type": "string", + "description": "The GUID of relationship." + }, + "toEntityId": { + "type": "string", + "description": "The GUID of to-entity." + } + }, + "title": "LineageRelation", + "description": "The lineage relation with GUID of the from and to entity." + }, + "ParentRelation": { + "type": "object", + "properties": { + "childEntityId": { + "type": "string", + "description": "The GUID of child entity." + }, + "relationshipId": { + "type": "string", + "description": "The GUID of relationship." + }, + "parentEntityId": { + "type": "string", + "description": "The GUID of parent entity." + } + }, + "title": "ParentRelation", + "description": "The lineage parents relation with GUID of the parent entity and to child entity." + }, + "NumberFormat": { + "type": "object", + "title": "NumberFormat", + "properties": { + "availableLocales": { + "type": "array", + "description": "The number format.", + "items": { + "type": "string" + } + }, + "currency": { + "type": "string", + "description": "The currency." + }, + "currencyInstance": { + "$ref": "#/definitions/NumberFormat" + }, + "groupingUsed": { + "type": "boolean", + "description": "Determines if grouping is used." + }, + "instance": { + "$ref": "#/definitions/NumberFormat" + }, + "integerInstance": { + "$ref": "#/definitions/NumberFormat" + }, + "maximumFractionDigits": { + "type": "integer", + "format": "int32", + "description": "The maximum of fraction digits." + }, + "maximumIntegerDigits": { + "type": "integer", + "format": "int32", + "description": "The maximum of integer digits." + }, + "minimumFractionDigits": { + "type": "integer", + "format": "int32", + "description": "The minimum of fraction digits." + }, + "minimumIntegerDigits": { + "type": "integer", + "format": "int32", + "description": "The minimum of integer digits." + }, + "numberInstance": { + "$ref": "#/definitions/NumberFormat" + }, + "parseIntegerOnly": { + "type": "boolean", + "description": "Determines if only integer is parsed." + }, + "percentInstance": { + "$ref": "#/definitions/NumberFormat" + }, + "roundingMode": { + "$ref": "#/definitions/RoundingMode" + } + }, + "description": "The number format." + }, + "TermGuid": { + "type": "string", + "title": "termGuid", + "description": "The globally unique identifier for glossary term." + }, + "Operator": { + "type": "string", + "title": "Operator", + "description": "Supported search operations\nLogical comparison operators can only be used with numbers or dates\nIN, LIKE, startsWith, endsWith, CONTAINS can only be used with strings or text", + "enum": [ + "LT", + "GT", + "LTE", + "GTE", + "EQ", + "NEQ", + "IN", + "LIKE", + "STARTS_WITH", + "ENDS_WITH", + "CONTAINS", + "CONTAINS_ANY", + "CONTAINS_ALL", + "IS_NULL", + "NOT_NULL" + ], + "x-ms-enum": { + "name": "Operator", + "modelAsString": true + } + }, + "PList": { + "type": "object", + "properties": { + "list": { + "type": "array", + "description": "An array of objects.", + "items": { + "type": "object", + "properties": {} + } + }, + "pageSize": { + "type": "integer", + "format": "int32", + "description": "The size of the page." + }, + "sortBy": { + "type": "string", + "description": "The sorted by field." + }, + "sortType": { + "$ref": "#/definitions/SortType" + }, + "startIndex": { + "type": "integer", + "format": "int64", + "description": "The start index of the page." + }, + "totalCount": { + "type": "integer", + "format": "int64", + "description": "The total count of items." + } + }, + "title": "PList", + "description": "Paginated-list, for returning search results." + }, + "Relation": { + "type": "string", + "title": "Relation", + "description": "The enum of relations.", + "enum": [ + "SEE_ALSO", + "SYNONYMS", + "ANTONYMS", + "PREFERRED_TO_TERMS", + "PREFERRED_TERMS", + "REPLACEMENT_TERMS", + "REPLACED_BY", + "TRANSLATION_TERMS", + "TRANSLATED_TERMS", + "ISA", + "CLASSIFIES", + "VALID_VALUES", + "VALID_VALUES_FOR" + ], + "x-ms-enum": { + "name": "Relation", + "modelAsString": true + } + }, + "RelationshipCategory": { + "type": "string", + "title": "RelationshipCategory", + "description": "The Relationship category determines the style of relationship around containment and lifecycle.\nUML terminology is used for the values.\n

    \nASSOCIATION is a relationship with no containment.
    \nCOMPOSITION and AGGREGATION are containment relationships.\n

    \nThe difference being in the lifecycles of the container and its children. In the COMPOSITION case,\nthe children cannot exist without the container. For AGGREGATION, the life cycles\nof the container and children are totally independent.", + "enum": [ + "ASSOCIATION", + "AGGREGATION", + "COMPOSITION" + ], + "x-ms-enum": { + "name": "RelationshipCategory", + "modelAsString": true + } + }, + "RoundingMode": { + "type": "string", + "title": "RoundingMode", + "description": "The enum of rounding mode.", + "enum": [ + "UP", + "DOWN", + "CEILING", + "FLOOR", + "HALF_UP", + "HALF_DOWN", + "HALF_EVEN", + "UNNECESSARY" + ], + "x-ms-enum": { + "name": "RoundingMode", + "modelAsString": true + } + }, + "SavedSearchType": { + "type": "string", + "title": "SavedSearchType", + "description": "The enum of saved search type.", + "enum": [ + "BASIC", + "ADVANCED" + ], + "x-ms-enum": { + "name": "SavedSearchType", + "modelAsString": true + } + }, + "SearchFilter": { + "type": "object", + "properties": { + "getCount": { + "type": "boolean", + "description": "Determines if get the count." + }, + "maxRows": { + "type": "integer", + "format": "int64", + "description": "The maximum of rows." + }, + "params": { + "type": "object", + "description": "The parameters of the search filter.", + "additionalProperties": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "sortBy": { + "type": "string", + "description": "The sorted by field." + }, + "sortType": { + "$ref": "#/definitions/SortType" + }, + "startIndex": { + "type": "integer", + "format": "int64", + "description": "The start index of the search." + } + }, + "title": "SearchFilter", + "description": "Generic filter, to specify search criteria using name/value pairs." + }, + "SearchParameters": { + "type": "object", + "properties": { + "attributes": { + "type": "array", + "description": "Attribute values included in the results", + "items": { + "type": "string" + } + }, + "classification": { + "type": "string", + "description": "The classification to search." + }, + "entityFilters": { + "$ref": "#/definitions/FilterCriteria" + }, + "excludeDeletedEntities": { + "type": "boolean", + "description": "Determines if exclude deleted entities." + }, + "includeClassificationAttributes": { + "type": "boolean", + "description": "Determines if include classification attributes." + }, + "includeSubClassifications": { + "type": "boolean", + "description": "Determines if include sub classifications." + }, + "includeSubTypes": { + "type": "boolean", + "description": "Determines if include sub types." + }, + "limit": { + "type": "integer", + "format": "int32", + "description": "The limit of the search result." + }, + "offset": { + "type": "integer", + "format": "int32", + "description": "The offset of the search." + }, + "query": { + "type": "string", + "description": "The search query." + }, + "tagFilters": { + "$ref": "#/definitions/FilterCriteria" + }, + "termName": { + "type": "string", + "description": "The name of the term for search." + }, + "typeName": { + "type": "string", + "description": "The name of the type for search." + } + }, + "title": "SearchParameters", + "description": "The parameters used for search." + }, + "SortType": { + "type": "string", + "title": "SortType", + "description": "to specify whether the result should be sorted? If yes, whether asc or desc.", + "enum": [ + "NONE", + "ASC", + "DESC" + ], + "x-ms-enum": { + "name": "SortType", + "modelAsString": true + } + }, + "Status": { + "type": "string", + "title": "Status", + "description": "Status of the entity - can be active or deleted. Deleted entities are not removed from Atlas store.", + "enum": [ + "ACTIVE", + "DELETED" + ], + "x-ms-enum": { + "name": "Status", + "modelAsString": true + } + }, + "Status_AtlasRelationship": { + "type": "string", + "title": "Status", + "description": "The enum of relationship status.", + "enum": [ + "ACTIVE", + "DELETED" + ], + "x-ms-enum": { + "name": "Status_AtlasRelationship", + "modelAsString": true + } + }, + "TimeBoundary": { + "type": "object", + "properties": { + "endTime": { + "type": "string", + "description": "The end of the time boundary." + }, + "startTime": { + "type": "string", + "description": "The start of the time boundary." + }, + "timeZone": { + "type": "string", + "description": "The timezone of the time boundary." + } + }, + "title": "TimeBoundary", + "description": "Captures time-boundary details" + }, + "TimeZone": { + "type": "object", + "properties": { + "dstSavings": { + "type": "integer", + "format": "int32", + "description": "The value of the daylight saving time." + }, + "id": { + "type": "string", + "description": "The ID of the timezone." + }, + "availableIds": { + "type": "array", + "description": "An array of available IDs.", + "items": { + "type": "string" + } + }, + "default": { + "$ref": "#/definitions/TimeZone" + }, + "displayName": { + "type": "string", + "description": "The display name of the timezone." + }, + "rawOffset": { + "type": "integer", + "format": "int32", + "description": "The raw offset of the timezone." + } + }, + "title": "TimeZone", + "description": "The timezone information." + }, + "TypeCategory": { + "type": "string", + "title": "TypeCategory", + "description": "The enum of type category.", + "enum": [ + "PRIMITIVE", + "OBJECT_ID_TYPE", + "ENUM", + "STRUCT", + "CLASSIFICATION", + "ENTITY", + "ARRAY", + "MAP", + "RELATIONSHIP", + "TERM_TEMPLATE" + ], + "x-ms-enum": { + "name": "TypeCategory", + "modelAsString": true + } + }, + "AzureCatalogUser": { + "type": "object", + "properties": { + "userId": { + "type": "string", + "description": "User ID of the Azure catalog user." + } + }, + "title": "AzureCatalogUser", + "description": "Azure catalog user." + }, + "CatalogCreationRequest": { + "type": "object", + "properties": { + "catalogName": { + "type": "string", + "description": "Name of the catalog." + }, + "catalogId": { + "type": "string", + "description": "ID of the catalog." + }, + "creatorUserId": { + "type": "string", + "description": "User ID or the creator." + }, + "eventHubConnectionString": { + "type": "string", + "description": "The connection string of the Event Hubs." + } + }, + "title": "CatalogCreationRequest", + "description": "Request for catalog creation." + }, + "CatalogDeletionRequest": { + "type": "object", + "properties": { + "catalogName": { + "type": "string", + "description": "Name of the catalog." + } + }, + "title": "CatalogDeletionRequest", + "description": "Request for catalog deletion." + }, + "DataScanPermissionCheckRequest": { + "type": "object", + "properties": { + "catalogName": { + "type": "string", + "description": "Name of the catalog." + }, + "userId": { + "type": "string", + "description": "User ID of the catalog." + } + }, + "title": "DataScanPermissionCheckRequest", + "description": "Request for data scan permission check." + }, + "DataScanPermissionCheckResponse": { + "type": "object", + "properties": { + "result": { + "type": "string", + "description": "The result of the response." + } + }, + "title": "DataScanPermissionCheckResponse", + "description": "Response for data scan permission check." + }, + "SuggestResult": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SuggestResultValue" + } + } + }, + "title": "SuggestResult", + "description": "The result item of the search suggest." + }, + "SuggestResultValue": { + "type": "object", + "properties": { + "@search.score": { + "type": "number", + "format": "float", + "description": "The search score calculated by the search engine. The results are ordered by search score by default." + }, + "@search.text": { + "type": "string", + "description": "The target text that contains the keyword as prefix. The keyword is wrapped with emphasis mark." + }, + "description": { + "type": "string", + "description": "The description of the record." + }, + "id": { + "type": "string", + "description": "The GUID of the record." + }, + "name": { + "type": "string", + "description": "The name of the record." + }, + "owner": { + "type": "string", + "description": "The owner of the record. This is an Atlas native attribute." + }, + "qualifiedName": { + "type": "string", + "description": "The qualified name of the record." + }, + "entityType": { + "type": "string", + "description": "The type name of the record." + }, + "classification": { + "type": "array", + "description": "The classifications of the record.", + "items": { + "type": "string" + } + }, + "label": { + "type": "array", + "description": "The labels of the record.", + "items": { + "type": "string" + } + }, + "term": { + "type": "array", + "description": "The terms assigned to the record.", + "items": { + "$ref": "#/definitions/termSearchResultValue" + } + }, + "contact": { + "type": "array", + "description": "The contacts of the record.", + "items": { + "$ref": "#/definitions/contactSearchResultValue" + } + }, + "assetType": { + "type": "array", + "description": "The asset types of the record.", + "items": { + "type": "string" + } + } + }, + "title": "SuggestResultValue", + "description": "The value item of the search suggest." + }, + "SearchResult": { + "type": "object", + "properties": { + "@search.count": { + "type": "integer", + "format": "int32", + "description": "The total number of search results (not the number of documents in a single page)." + }, + "@search.facets": { + "$ref": "#/definitions/SearchFacetResultValue" + }, + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SearchResultValue" + } + } + }, + "title": "SearchResult", + "description": "The result of the search result." + }, + "SearchFacetResultValue": { + "type": "object", + "properties": { + "assetType": { + "type": "array", + "items": { + "$ref": "#/definitions/SearchFacetItemValue" + } + }, + "classification": { + "type": "array", + "items": { + "$ref": "#/definitions/SearchFacetItemValue" + } + }, + "classificationCategory": { + "type": "array", + "items": { + "$ref": "#/definitions/SearchFacetItemValue" + } + }, + "contactId": { + "type": "array", + "items": { + "$ref": "#/definitions/SearchFacetItemValue" + } + }, + "fileExtension": { + "type": "array", + "items": { + "$ref": "#/definitions/SearchFacetItemValue" + } + }, + "label": { + "type": "array", + "items": { + "$ref": "#/definitions/SearchFacetItemValue" + } + }, + "term": { + "type": "array", + "items": { + "$ref": "#/definitions/SearchFacetItemValue" + } + } + }, + "title": "Context", + "description": "A facet list that consists of index fields assetType ,classification, classificationCategory, contactId, fileExtension, label, and label. When the facet is specified in the request, the value of the facet is returned as an element of @search.facets." + }, + "SearchFacetItemValue": { + "type": "object", + "properties": { + "count": { + "type": "integer", + "format": "int32", + "description": "The count of the facet item." + }, + "value": { + "type": "string", + "description": "The name of the facet item." + } + }, + "title": "SearchFacetItemValue", + "description": "The content of a search facet result item." + }, + "SearchFacetItem": { + "type": "object", + "properties": { + "count": { + "type": "integer", + "format": "int32", + "description": "The count of the facet item." + }, + "facet": { + "type": "string", + "description": "The name of the facet item." + }, + "sort": { + "type": "object" + } + }, + "title": "SearchFacetItemValue", + "description": "The content of a search facet result item." + }, + "SearchResultValue": { + "type": "object", + "properties": { + "@search.score": { + "type": "number", + "format": "float", + "description": "The search score calculated by the search engine. The results are ordered by search score by default." + }, + "@search.highlights": { + "$ref": "#/definitions/SearchHighlights" + }, + "@search.text": { + "type": "string", + "description": "The target text that contains the keyword as prefix. The keyword is wrapped with emphasis mark." + }, + "description": { + "type": "string", + "description": "The description of the record." + }, + "id": { + "type": "string", + "description": "The GUID of the record." + }, + "name": { + "type": "string", + "description": "The name of the record." + }, + "owner": { + "type": "string", + "description": "The owner of the record. This is an Atlas native attribute." + }, + "qualifiedName": { + "type": "string", + "description": "The qualified name of the record." + }, + "entityType": { + "type": "string", + "description": "The type name of the record." + }, + "classification": { + "type": "array", + "description": "The classifications of the record.", + "items": { + "type": "string" + } + }, + "label": { + "type": "array", + "description": "The labels of the record.", + "items": { + "type": "string" + } + }, + "term": { + "type": "array", + "description": "The terms assigned to the record.", + "items": { + "$ref": "#/definitions/termSearchResultValue" + } + }, + "contact": { + "type": "array", + "description": "The contacts of the record.", + "items": { + "$ref": "#/definitions/contactSearchResultValue" + } + }, + "assetType": { + "type": "array", + "description": "The asset types of the record.", + "items": { + "type": "string" + } + } + }, + "title": "SearchResultValue", + "description": "The value item of the search result." + }, + "SearchHighlights": { + "type": "object", + "description": "A highlight list that consists of index fields id ,qualifiedName, name, description, entityType. When the keyword appears in those fields, the value of the field, attached with emphasis mark, is returned as an element of @search.highlights.", + "properties": { + "id": { + "type": "array", + "items": { + "type": "string" + } + }, + "qualifiedName": { + "type": "array", + "items": { + "type": "string" + } + }, + "name": { + "type": "array", + "items": { + "type": "string" + } + }, + "description": { + "type": "array", + "items": { + "type": "string" + } + }, + "entityType": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "title": "SearchHighlights" + }, + "termSearchResultValue": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the term." + }, + "glossaryName": { + "type": "string", + "description": "The name of the glossary which contains the term." + }, + "guid": { + "type": "string", + "description": "The GUID of the term." + } + }, + "title": "Context", + "description": "The context." + }, + "contactSearchResultValue": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "The GUID of the contact." + }, + "info": { + "type": "string", + "description": "The description of the contact." + }, + "contactType": { + "type": "string", + "description": "The type of the contact. It can be Expert or Owner for an entity. It can be Expert or Steward for a glossary term." + } + }, + "title": "contact", + "description": "The contact in the search and suggest result." + }, + "AutoCompleteRequest": { + "type": "object", + "properties": { + "keywords": { + "type": "string", + "description": "The keywords applied to all fields that support autocomplete operation. It must be at least 1 character, and no more than 100 characters." + }, + "limit": { + "type": "integer", + "format": "int32", + "description": "The number of autocomplete results we hope to return. The default value is 50. The value must be a number between 1 and 100." + }, + "filter": { + "type": "object", + "description": "The filter for the autocomplete request." + } + }, + "title": "AutoCompleteRequest", + "description": "The query of autocomplete request." + }, + "AutoCompleteResult": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AutoCompleteResultValue" + } + } + }, + "title": "AutoCompleteResult", + "description": "The result of the autocomplete request." + }, + "AutoCompleteResultValue": { + "type": "object", + "properties": { + "text": { + "type": "string", + "description": "The completed term or phrase." + }, + "queryPlusText": { + "type": "string", + "description": "The completed search query text." + } + }, + "title": "AutoCompleteResultValue", + "description": "The value item of the autocomplete suggest." + }, + "Context": { + "type": "object", + "properties": { + "value": { + "type": "string", + "description": "The value of the context." + } + }, + "title": "Context", + "description": "The context." + }, + "Error": { + "type": "object", + "properties": { + "errorMessage": { + "type": "string", + "description": "The error message." + } + }, + "title": "Error", + "description": "The error response." + }, + "AtlasError": { + "type": "object", + "properties": { + "errorCode": { + "type": "string", + "description": "Error code" + }, + "errorMessage": { + "type": "string", + "description": "Error message" + } + }, + "title": "AtlasError", + "description": "The atlas error response." + }, + "SearchRequest": { + "type": "object", + "properties": { + "keywords": { + "type": "string", + "description": "The keywords applied to all searchable fields." + }, + "offset": { + "type": "integer", + "format": "int32", + "description": "The offset. The default value is 0." + }, + "limit": { + "type": "integer", + "format": "int32", + "description": "The limit of the number of the search result. default value is 50; maximum value is 1000." + }, + "filter": { + "type": "object", + "description": "The filter for the search. See examples for the usage of supported filters." + }, + "facets": { + "type": "array", + "items": { + "$ref": "#/definitions/SearchFacetItem" + } + }, + "taxonomySetting": { + "type": "object", + "properties": { + "assetTypes": { + "type": "array", + "items": { + "type": "string" + } + }, + "facet": { + "$ref": "#/definitions/SearchFacetItem" + } + } + } + }, + "title": "SearchRequest", + "description": "The search query of advanced search request." + }, + "SuggestRequest": { + "type": "object", + "properties": { + "keywords": { + "type": "string", + "description": "The keywords applied to all fields that support suggest operation. It must be at least 1 character, and no more than 100 characters. In the index schema we defined a default suggester which lists all the supported fields and specifies a search mode." + }, + "limit": { + "type": "integer", + "format": "int32", + "description": "The number of suggestions we hope to return. The default value is 5. The value must be a number between 1 and 100." + }, + "filter": { + "type": "object", + "description": "The filter for the search." + } + }, + "title": "SuggestRequest", + "description": "The query of suggest request." + }, + "HookNotificationType": { + "type": "string", + "enum": [ + "TYPE_CREATE", + "TYPE_UPDATE", + "ENTITY_CREATE", + "ENTITY_PARTIAL_UPDATE", + "ENTITY_FULL_UPDATE", + "ENTITY_DELETE", + "ENTITY_CREATE_V2", + "ENTITY_PARTIAL_UPDATE_V2", + "ENTITY_FULL_UPDATE_V2", + "ENTITY_DELETE_V2" + ], + "x-ms-enum": { + "name": "HookNotificationType", + "modelAsString": true + }, + "title": "HookNotificationType", + "description": "Enum of hook notification type. Different behavior will be invoked by the value." + }, + "HookNotification": { + "type": "object", + "properties": { + "type": { + "$ref": "#/definitions/HookNotificationType" + }, + "user": { + "type": "string", + "default": "UNKNOWN", + "description": "The user of the notification. Default to be \"UNKNOWN\"." + } + }, + "title": "HookNotification", + "description": "The base class for hook notification." + }, + "EntityCreateRequestV2": { + "type": "object", + "properties": { + "type": { + "$ref": "#/definitions/HookNotificationType" + }, + "user": { + "type": "string", + "default": "UNKNOWN", + "description": "The user of the notification. Default to be \"UNKNOWN\"." + }, + "entities": { + "$ref": "#/definitions/AtlasEntitiesWithExtInfo" + } + }, + "title": "EntityCreateRequestV2", + "description": "The class for hook notification for type ENTITY_CREATE_V2." + }, + "EntityUpdateRequestV2": { + "type": "object", + "properties": { + "type": { + "$ref": "#/definitions/HookNotificationType" + }, + "user": { + "type": "string", + "default": "UNKNOWN", + "description": "The user of the notification. Default to be \"UNKNOWN\"." + }, + "entities": { + "$ref": "#/definitions/AtlasEntitiesWithExtInfo" + } + }, + "title": "EntityUpdateRequestV2", + "description": "The class for hook notification for type ENTITY_FULL_UPDATE_V2." + }, + "EntityPartialUpdateRequestV2": { + "type": "object", + "properties": { + "type": { + "$ref": "#/definitions/HookNotificationType" + }, + "user": { + "type": "string", + "default": "UNKNOWN", + "description": "The user of the notification. Default to be \"UNKNOWN\"." + }, + "entityId": { + "$ref": "#/definitions/AtlasObjectId" + }, + "entity": { + "$ref": "#/definitions/AtlasEntitiesWithExtInfo" + } + }, + "title": "EntityPartialUpdateRequestV2", + "description": "The class for hook notification for type ENTITY_PARTIAL_UPDATE_V2." + }, + "EntityDeleteRequestV2": { + "type": "object", + "properties": { + "type": { + "$ref": "#/definitions/HookNotificationType" + }, + "user": { + "type": "string", + "default": "UNKNOWN", + "description": "The user of the notification. Default to be \"UNKNOWN\"." + }, + "entities": { + "type": "array", + "items": { + "$ref": "#/definitions/AtlasObjectId" + } + } + }, + "title": "EntityDeleteRequestV2", + "description": "The class for hook notification for type ENTITY_DELETE_V2." + }, + "RoleAssignmentEntry": { + "type": "object", + "title": "RoleAssignmentEntry", + "description": "A role assignment.", + "properties": { + "principalId": { + "type": "string", + "description": "The object ID of the AAD user." + }, + "role": { + "type": "string", + "description": "The name of the role." + } + } + }, + "UpdateRoleAssignmentRequest": { + "type": "object", + "title": "UpdateRoleAssignmentRequest", + "description": "The request for role assignment update operations.", + "properties": { + "roleAssignmentList": { + "type": "array", + "items": { + "$ref": "#/definitions/RoleAssignmentEntry" + } + } + } + }, + "ListRoleAssignmentResponse": { + "type": "object", + "title": "ListRoleAssignmentResponse", + "description": "The response of listing role assignments.", + "properties": { + "roleAssignmentList": { + "type": "array", + "items": { + "$ref": "#/definitions/RoleAssignmentEntry" + } + } + } + }, + "ImportCSVOperation": { + "type": "object", + "title": "Status of import csv operation", + "description": "The status of import csv operation", + "properties": { + "id": { + "type": "string", + "description": "guid string" + }, + "status": { + "$ref": "#/definitions/ImportCSVOperationStatus" + }, + "createTime": { + "type": "string", + "description": "The created time of the record." + }, + "lastUpdateTime": { + "type": "string", + "description": "The last updated time of the record." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ImportCSVOperationProperties" + }, + "error": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ImportCSVOperationError" + } + } + }, + "ImportCSVOperationProperties": { + "type": "object", + "properties": { + "importedTerms": { + "type": "string", + "description": "Term numbers that already imported successfully" + }, + "totalTermsDetected": { + "type": "string", + "description": "Total term numbers that detected in csv" + } + } + }, + "ImportCSVOperationError": { + "type": "object", + "properties": { + "errorCode": { + "type": "integer", + "description": "Error code from async import job if fail" + }, + "errorMessage": { + "type": "string", + "description": "Error message from async import job if fail" + } + } + }, + "ImportCSVOperationStatus": { + "type": "string", + "enum": [ + "NotStarted", + "Succeeded", + "Failed", + "Running" + ], + "x-ms-enum": { + "name": "ImportCSVOperationStatus", + "modelAsString": true + }, + "title": "ImportCSVOperationStatus", + "description": "Enum of the status of import csv operation." + }, + "LastModifiedTS": { + "type": "string", + "title": "lastModifiedTS", + "description": "ETag for concurrency control." + }, + "xml_ns0_PList": { + "type": "object", + "title": "PList", + "xml": { + "name": "PList", + "namespace": "" + }, + "allOf": [ + { + "properties": { + "list": { + "type": "array", + "xml": { + "namespace": "" + }, + "description": "An array of objects.", + "items": { + "type": "object", + "properties": {} + } + }, + "pageSize": { + "type": "integer", + "format": "int32", + "xml": { + "namespace": "" + }, + "description": "The size of the page." + }, + "sortBy": { + "type": "string", + "xml": { + "namespace": "" + }, + "description": "The sorted by field." + }, + "sortType": { + "$ref": "#/definitions/xml_ns0_sortType" + }, + "startIndex": { + "type": "integer", + "format": "int64", + "xml": { + "namespace": "" + }, + "description": "The start index of the page." + }, + "totalCount": { + "type": "integer", + "format": "int64", + "xml": { + "namespace": "" + }, + "description": "The total count of items." + } + } + } + ], + "description": "Paginated-list, for returning search results." + }, + "xml_ns0_searchFilter": { + "type": "object", + "title": "searchFilter", + "xml": { + "name": "searchFilter", + "namespace": "" + }, + "allOf": [ + { + "properties": { + "getCount": { + "type": "boolean", + "xml": { + "namespace": "" + }, + "description": "Determines if get the count." + }, + "maxRows": { + "type": "integer", + "format": "int64", + "xml": { + "namespace": "" + }, + "description": "The maximum of rows." + }, + "params": { + "type": "object", + "xml": { + "namespace": "" + }, + "description": "The parameter of the search.", + "properties": {} + }, + "sortBy": { + "type": "string", + "xml": { + "namespace": "" + }, + "description": "The sorted by field." + }, + "sortType": { + "$ref": "#/definitions/xml_ns0_sortType" + }, + "startIndex": { + "type": "integer", + "format": "int64", + "xml": { + "namespace": "" + }, + "description": "The start index of the search." + } + } + } + ], + "description": "Generic filter, to specify search criteria using name/value pairs." + }, + "xml_ns0_sortType": { + "type": "string", + "title": "sortType", + "description": "to specify whether the result should be sorted? If yes, whether asc or desc.", + "enum": [ + "NONE", + "ASC", + "DESC" + ], + "x-ms-enum": { + "name": "xml_ns0_sortType", + "modelAsString": true + } + }, + "xml_ns0_timeBoundary": { + "type": "object", + "title": "timeBoundary", + "xml": { + "name": "timeBoundary", + "namespace": "" + }, + "allOf": [ + { + "properties": { + "endTime": { + "type": "string", + "xml": { + "namespace": "" + }, + "description": "The end of the time boundary." + }, + "startTime": { + "type": "string", + "xml": { + "namespace": "" + }, + "description": "The start of the time boundary." + }, + "timeZone": { + "type": "string", + "xml": { + "namespace": "" + }, + "description": "The timezone of the time boundary." + } + } + } + ], + "description": "Captures time-boundary details" + } + }, + "parameters": { + "Endpoint": { + "name": "Endpoint", + "description": "The catalog endpoint of your Purview account. Example: https://{accountName}.catalog.purview.azure.com", + "x-ms-parameter-location": "client", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true + }, + "guid": { + "name": "guid", + "description": "The globally unique identifier of the entity.", + "in": "path", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 4096, + "x-ms-parameter-location": "method" + }, + "classificationName": { + "name": "classificationName", + "description": "The name of the classification.", + "in": "path", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 4096, + "x-ms-parameter-location": "method" + }, + "typeName": { + "name": "typeName", + "description": "The name of the type.", + "in": "path", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 4096, + "x-ms-parameter-location": "method" + }, + "categoryGuid": { + "name": "categoryGuid", + "description": "The globally unique identifier of the category.", + "in": "path", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 4096, + "x-ms-parameter-location": "method" + }, + "limit": { + "name": "limit", + "description": "The page size - by default there is no paging.", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "x-ms-parameter-location": "method" + }, + "offset": { + "name": "offset", + "description": "The offset for pagination purpose.", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "x-ms-parameter-location": "method" + }, + "sort": { + "name": "sort", + "description": "The sort order, ASC (default) or DESC.", + "in": "query", + "required": false, + "type": "string", + "default": "ASC", + "x-ms-parameter-location": "method" + }, + "termGuid": { + "name": "termGuid", + "in": "path", + "description": "The globally unique identifier for glossary term.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 4096, + "x-ms-parameter-location": "method" + }, + "glossaryGuid": { + "name": "glossaryGuid", + "in": "path", + "description": "The globally unique identifier for glossary.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 4096, + "x-ms-parameter-location": "method" + }, + "operationGuid": { + "name": "operationGuid", + "in": "path", + "description": "The globally unique identifier for async operation/job.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 4096, + "x-ms-parameter-location": "method" + }, + "glossaryName": { + "name": "glossaryName", + "in": "path", + "description": "The name of the glossary.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 4096, + "x-ms-parameter-location": "method" + }, + "searchLimit": { + "name": "limit", + "description": "Limits the result set to only include the specified number of entries.", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "x-ms-parameter-location": "method" + }, + "searchKeyword": { + "name": "keyword", + "description": "The keyword to get auto complete.", + "in": "query", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "depth": { + "name": "depth", + "description": "The number of hops for lineage.", + "in": "query", + "required": false, + "type": "integer", + "default": 3, + "format": "int32", + "x-ms-parameter-location": "method" + }, + "width": { + "name": "width", + "description": "The number of max expanding width in lineage.", + "in": "query", + "required": false, + "type": "integer", + "default": 10, + "format": "int32", + "x-ms-parameter-location": "method" + }, + "direction": { + "name": "direction", + "description": "The direction of the lineage, which could be INPUT, OUTPUT or BOTH.", + "in": "query", + "required": true, + "type": "string", + "enum": [ + "BOTH", + "INPUT", + "OUTPUT" + ], + "x-ms-enum": { + "name": "direction", + "modelAsString": true + }, + "x-ms-parameter-location": "method" + }, + "includeParent": { + "name": "includeParent", + "description": "True to include the parent chain in the response.", + "in": "query", + "required": false, + "type": "boolean", + "x-ms-parameter-location": "method" + }, + "getDerivedLineage": { + "name": "getDerivedLineage", + "description": "True to include derived lineage in the response", + "in": "query", + "required": false, + "type": "boolean", + "x-ms-parameter-location": "method" + }, + "extendedInfo": { + "name": "extendedInfo", + "description": "Limits whether includes extended information.", + "in": "query", + "required": false, + "type": "boolean", + "x-ms-parameter-location": "method" + }, + "relationshipGuid": { + "name": "guid", + "description": "The globally unique identifier of the relationship.", + "in": "path", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 4096, + "x-ms-parameter-location": "method" + }, + "classificationDefGuid": { + "name": "guid", + "description": "The globally unique identifier of the classification.", + "in": "path", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 4096, + "x-ms-parameter-location": "method" + }, + "classificationDefName": { + "name": "name", + "description": "The name of the classification.", + "in": "path", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 4096, + "x-ms-parameter-location": "method" + }, + "entityDefGuid": { + "name": "guid", + "description": "The globally unique identifier of the entity.", + "in": "path", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 4096, + "x-ms-parameter-location": "method" + }, + "entityDefName": { + "name": "name", + "description": "The name of the entity.", + "in": "path", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 4096, + "x-ms-parameter-location": "method" + }, + "termTemplateDefGuid": { + "name": "guid", + "description": "The globally unique identifier of the term template.", + "in": "path", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 4096, + "x-ms-parameter-location": "method" + }, + "termTemplateDefName": { + "name": "name", + "description": "The name of the term template.", + "in": "path", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 4096, + "x-ms-parameter-location": "method" + }, + "enumDefGuid": { + "name": "guid", + "description": "The globally unique identifier of the enum.", + "in": "path", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 4096, + "x-ms-parameter-location": "method" + }, + "enumDefName": { + "name": "name", + "description": "The name of the enum.", + "in": "path", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 4096, + "x-ms-parameter-location": "method" + }, + "relationshipDefGuid": { + "name": "guid", + "description": "The globally unique identifier of the relationship.", + "in": "path", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 4096, + "x-ms-parameter-location": "method" + }, + "relationshipDefName": { + "name": "name", + "description": "The name of the relationship.", + "in": "path", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 4096, + "x-ms-parameter-location": "method" + }, + "structDefGuid": { + "name": "guid", + "description": "The globally unique identifier of the struct.", + "in": "path", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 4096, + "x-ms-parameter-location": "method" + }, + "structDefName": { + "name": "name", + "description": "The name of the struct.", + "in": "path", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 4096, + "x-ms-parameter-location": "method" + }, + "typeDefGuid": { + "name": "guid", + "description": "The globally unique identifier of the type.", + "in": "path", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 4096, + "x-ms-parameter-location": "method" + }, + "typeDefName": { + "name": "name", + "description": "The name of the type.", + "in": "path", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 4096, + "x-ms-parameter-location": "method" + }, + "userId": { + "name": "userId", + "description": "The user ID.", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "principalId": { + "name": "principalId", + "description": "The principal ID.", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "minExtInfo": { + "name": "minExtInfo", + "description": "Whether to return minimal information for referred entities.", + "in": "query", + "required": false, + "type": "boolean", + "default": false, + "x-ms-parameter-location": "method" + }, + "ignoreRelationships": { + "name": "ignoreRelationships", + "description": "Whether to ignore relationship attributes.", + "in": "query", + "required": false, + "type": "boolean", + "default": false, + "x-ms-parameter-location": "method" + }, + "excludeRelationshipTypes": { + "name": "excludeRelationshipTypes", + "description": "An array of the relationship types need to be excluded from the response.", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi", + "x-ms-parameter-location": "method" + }, + "includeTermTemplate": { + "name": "includeTermTemplate", + "description": "Whether include termtemplatedef when return all typedefs.\nThis is always true when search filter type=term_template", + "in": "query", + "required": false, + "type": "boolean", + "default": false, + "x-ms-parameter-location": "method" + }, + "includeTermHierarchy": { + "name": "includeTermHierarchy", + "description": "Whether include term hierarchy", + "in": "query", + "required": false, + "type": "boolean", + "default": false, + "x-ms-parameter-location": "method" + }, + "purviewAPIVersion": { + "name": "api-version", + "description": "Version of Purview APIs", + "in": "query", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "atlasAPIVersion": { + "name": "api-version", + "description": "Version of Atlas APIs", + "in": "query", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + "type": { + "name": "type", + "description": "Typedef name as search filter when get typedefs.", + "in": "query", + "required": false, + "type": "string", + "enum": [ + "enum", + "entity", + "classification", + "relationship", + "struct", + "term_template" + ], + "x-ms-enum": { + "name": "type", + "modelAsString": true + }, + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/ClassificationRules_CreateOrUpdate.json b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/ClassificationRules_CreateOrUpdate.json new file mode 100644 index 000000000000..0077066fc1b0 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/ClassificationRules_CreateOrUpdate.json @@ -0,0 +1,102 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "classificationRuleName": "ClassificationRule1", + "api-version": "2018-12-01-preview", + "body": { + "kind": "Custom", + "properties": { + "description": "Let's put a cool desc here", + "classificationName": "MICROSOFT.FINANCIAL.AUSTRALIA.BANK_ACCOUNT_NUMBER", + "columnPatterns": [ + { + "pattern": "^data$", + "kind": "Regex" + } + ], + "dataPatterns": [ + { + "pattern": "^[0-9]{2}-[0-9]{4}-[0-9]{6}-[0-9]{3}$", + "kind": "Regex" + } + ], + "minimumPercentageMatch": 60, + "ruleStatus": "Enabled" + } + } + }, + "responses": { + "201": { + "headers": { + "x-ms-request-id": "d5496da4-9c52-402f-b067-83cc9ddea888" + }, + "body": { + "id": "classificationRules/ClassificationRule1", + "name": "ClassificationRule1", + "kind": "Custom", + "properties": { + "minimumPercentageMatch": 80, + "classificationAction": "Keep", + "description": "second one", + "version": 4, + "classificationName": "MICROSOFT.FINANCIAL.AUSTRALIA.BANK_ACCOUNT_NUMBER", + "ruleStatus": "Enabled", + "createdAt": "2019-12-09T06:43:30.8478469Z", + "lastModifiedAt": "2019-12-09T07:04:53.2807344Z", + "dataPatterns": [ + { + "kind": "Regex", + "pattern": "^data1$" + }, + { + "kind": "Regex", + "pattern": "^data2$" + } + ], + "columnPatterns": [ + { + "kind": "Regex", + "pattern": "^column1$" + } + ] + } + } + }, + "200": { + "headers": { + "x-ms-request-id": "d5496da4-9c52-402f-b067-83cc9ddea888" + }, + "body": { + "id": "/subscriptions/433a8dfd-e5d5-4e77-ad86-90acdc75eb1a/resourceGroups/SampleResourceGroup/providers/Microsoft.DataCatalog/DataCatalogs/Catalog1/ClassificationRules/ClassificationRule1", + "name": "ClassificationRule1", + "kind": "Custom", + "properties": { + "minimumPercentageMatch": 80, + "classificationAction": "Keep", + "description": "second one", + "version": 4, + "classificationName": "MICROSOFT.FINANCIAL.AUSTRALIA.BANK_ACCOUNT_NUMBER", + "ruleStatus": "Enabled", + "createdAt": "2019-12-09T06:43:30.8478469Z", + "lastModifiedAt": "2019-12-09T07:04:53.2807344Z", + "dataPatterns": [ + { + "kind": "Regex", + "pattern": "^data1$" + }, + { + "kind": "Regex", + "pattern": "^data2$" + } + ], + "columnPatterns": [ + { + "kind": "Regex", + "pattern": "^column1$" + } + ] + } + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/ClassificationRules_Delete.json b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/ClassificationRules_Delete.json new file mode 100644 index 000000000000..be20d75692cc --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/ClassificationRules_Delete.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "subscriptionId": "433a8dfd-e5d5-4e77-ad86-90acdc75eb1a", + "resourceGroupName": "SampleResourceGroup", + "dataCatalogName": "Catalog1", + "classificationRuleName": "ClassificationRule1", + "api-version": "2018-12-01-preview" + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "d5496da4-9c52-402f-b067-83cc9ddea888" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-12345678abc/resourceGroups/SampleResourceGroup/providers/Microsoft.DataCatalog/DataCatalogs/Catalog1/ClassificationRules/ClassificationRule1", + "name": "ClassificationRule1", + "kind": "Custom", + "properties": { + "minimumPercentageMatch": 80, + "classificationAction": "Keep", + "description": "second one", + "version": 4, + "classificationName": "CUSTOM.TEST.TWO", + "ruleStatus": "Enabled", + "createdAt": "2019-12-09T06:43:30.8478469Z", + "lastModifiedAt": "2019-12-09T07:04:53.2807344Z", + "dataPatterns": [ + { + "kind": "Regex", + "pattern": "^data1$" + }, + { + "kind": "Regex", + "pattern": "^data2$" + } + ], + "columnPatterns": [ + { + "kind": "Regex", + "pattern": "^column1$" + } + ] + } + } + }, + "204": { + "headers": { + "x-ms-request-id": "d5496da4-9c52-402f-b067-83cc9ddea888" + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/ClassificationRules_Get.json b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/ClassificationRules_Get.json new file mode 100644 index 000000000000..b2fce7da4e0a --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/ClassificationRules_Get.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "subscriptionId": "12345678-1234-1234-12345678abc", + "resourceGroupName": "SampleResourceGroup", + "dataCatalogName": "Catalog1", + "classificationRuleName": "ClassificationRule1", + "api-version": "2018-12-01-preview" + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "d5496da4-9c52-402f-b067-83cc9ddea888" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-12345678abc/resourceGroups/SampleResourceGroup/providers/Microsoft.DataCatalog/DataCatalogs/Catalog1/ClassificationRules/ClassificationRule1", + "name": "ClassificationRule1", + "kind": "Custom", + "properties": { + "minimumPercentageMatch": 80, + "classificationAction": "Keep", + "description": "second one", + "version": 4, + "classificationName": "CUSTOM.TEST.TWO", + "ruleStatus": "Enabled", + "createdAt": "2019-12-09T06:43:30.8478469Z", + "lastModifiedAt": "2019-12-09T07:04:53.2807344Z", + "dataPatterns": [ + { + "kind": "Regex", + "pattern": "^data1$" + }, + { + "kind": "Regex", + "pattern": "^data2$" + } + ], + "columnPatterns": [ + { + "kind": "Regex", + "pattern": "^column1$" + } + ] + } + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/ClassificationRules_ListAll.json b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/ClassificationRules_ListAll.json new file mode 100644 index 000000000000..fadb6f75f00a --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/ClassificationRules_ListAll.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2018-12-01-preview", + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "SampleResourceGroup", + "dataCatalogName": "Catalog1" + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "8e58266a-de42-40d5-b3c4-c6a7e159cfba" + }, + "body": { + "count": 2, + "nextLink": null, + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-12345678abc/resourceGroups/SampleResourceGroup/providers/Microsoft.DataCatalog/DataCatalogs/Catalog1/ClassificationRules/ClassificationRule1", + "name": "ClassificationRule1", + "kind": "Custom", + "properties": { + "minimumPercentageMatch": 80, + "classificationAction": "Keep", + "description": "second one", + "version": 4, + "classificationName": "CUSTOM.TEST.TWO", + "ruleStatus": "Enabled", + "createdAt": "2019-12-09T06:43:30.8478469Z", + "lastModifiedAt": "2019-12-09T07:04:53.2807344Z", + "dataPatterns": [ + { + "kind": "Regex", + "pattern": "^data1$" + }, + { + "kind": "Regex", + "pattern": "^data2$" + } + ], + "columnPatterns": [ + { + "kind": "Regex", + "pattern": "^column1$" + } + ] + } + }, + { + "id": "/subscriptions/12345678-1234-1234-12345678abc/resourceGroups/SampleResourceGroup/providers/Microsoft.DataCatalog/DataCatalogs/Catalog1/ClassificationRules/ClassificationRule2", + "name": "ClassificationRule2", + "kind": "Custom", + "properties": { + "minimumPercentageMatch": 80, + "classificationAction": "Keep", + "description": "second one", + "version": 4, + "classificationName": "CUSTOM.TEST.TWO", + "ruleStatus": "Enabled", + "createdAt": "2019-12-09T06:43:30.8478469Z", + "lastModifiedAt": "2019-12-09T07:04:53.2807344Z", + "dataPatterns": [ + { + "kind": "Regex", + "pattern": "^data1$" + }, + { + "kind": "Regex", + "pattern": "^data2$" + } + ], + "columnPatterns": [ + { + "kind": "Regex", + "pattern": "^column1$" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/ClassificationRules_ListVersionsByClassificationRuleName.json b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/ClassificationRules_ListVersionsByClassificationRuleName.json new file mode 100644 index 000000000000..23c33b83188c --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/ClassificationRules_ListVersionsByClassificationRuleName.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2018-12-01-preview", + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "SampleResourceGroup", + "dataCatalogName": "Catalog1", + "classificationRuleName": "ClassificationRule1" + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "8e58266a-de42-40d5-b3c4-c6a7e159cfba" + }, + "body": { + "count": 2, + "nextLink": null, + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-12345678abc/resourceGroups/SampleResourceGroup/providers/Microsoft.DataCatalog/DataCatalogs/Catalog1/ClassificationRules/ClassificationRule1", + "name": "ClassificationRule1", + "kind": "Custom", + "properties": { + "minimumPercentageMatch": 80, + "classificationAction": "Keep", + "description": "second one", + "version": 2, + "classificationName": "CUSTOM.TEST.TWO", + "ruleStatus": "Enabled", + "createdAt": "2019-12-09T06:43:30.8478469Z", + "lastModifiedAt": "2019-12-09T07:04:53.2807344Z", + "dataPatterns": [ + { + "kind": "Regex", + "pattern": "^data1$" + }, + { + "kind": "Regex", + "pattern": "^data2$" + } + ], + "columnPatterns": [ + { + "kind": "Regex", + "pattern": "^column1$" + } + ] + } + }, + { + "id": "/subscriptions/12345678-1234-1234-12345678abc/resourceGroups/SampleResourceGroup/providers/Microsoft.DataCatalog/DataCatalogs/Catalog1/ClassificationRules/ClassificationRule1", + "name": "ClassificationRule2", + "kind": "Custom", + "properties": { + "minimumPercentageMatch": 80, + "classificationAction": "Keep", + "description": "second one", + "version": 1, + "classificationName": "CUSTOM.TEST.TWO", + "ruleStatus": "Enabled", + "createdAt": "2019-12-09T06:43:30.8478469Z", + "lastModifiedAt": "2019-12-09T07:04:53.2807344Z", + "dataPatterns": [ + { + "kind": "Regex", + "pattern": "^data1$" + }, + { + "kind": "Regex", + "pattern": "^data2$" + } + ], + "columnPatterns": [ + { + "kind": "Regex", + "pattern": "^column1$" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/ClassificationRules_TagClassificationVersion.json b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/ClassificationRules_TagClassificationVersion.json new file mode 100644 index 000000000000..eb1c9e929eef --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/ClassificationRules_TagClassificationVersion.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "classificationRuleName": "ClassificationRule1", + "classificationRuleVersion": 3, + "api-version": "2018-12-01-preview", + "action": "Keep" + }, + "responses": { + "202": { + "headers": { + "x-ms-request-id": "00000000-0000-0000-0000-00000000000" + }, + "body": { + "status": "Accepted" + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/DataSources_CreateOrUpdate.json b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/DataSources_CreateOrUpdate.json new file mode 100644 index 000000000000..3c35c9a375d7 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/DataSources_CreateOrUpdate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "dataSourceName": "myDataSource", + "api-version": "2018-12-01-preview", + "body": { + "kind": "AzureStorage", + "properties": { + "endpoint": "https://azurestorage.core.windows.net/" + } + } + }, + "responses": { + "201": { + "headers": { + "x-ms-request-id": "d5496da4-9c52-402f-b067-83cc9ddea888" + }, + "body": { + "name": "DataSource1", + "kind": "AzureStorage", + "properties": { + "endpoint": "https://azurestorage.core.windows.net/" + } + } + }, + "200": { + "headers": { + "x-ms-request-id": "d5496da4-9c52-402f-b067-83cc9ddea888" + }, + "body": { + "name": "DataSource1", + "kind": "AzureStorage", + "properties": { + "endpoint": "https://azurestorage.core.windows.net/" + } + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/DataSources_Delete.json b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/DataSources_Delete.json new file mode 100644 index 000000000000..9e2bf62febc3 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/DataSources_Delete.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "dataSourceName": "myDataSource", + "api-version": "2018-12-01-preview" + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "d5496da4-9c52-402f-b067-83cc9ddea888" + }, + "body": { + "name": "DataSource1", + "kind": "AzureStorage", + "properties": { + "endpoint": "https://azurestorage.core.windows.net/" + } + } + }, + "204": { + "headers": { + "x-ms-request-id": "d5496da4-9c52-402f-b067-83cc9ddea888" + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/DataSources_Get.json b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/DataSources_Get.json new file mode 100644 index 000000000000..02e1f3493df8 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/DataSources_Get.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "dataSourceName": "myDataSource", + "api-version": "2018-12-01-preview" + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "d5496da4-9c52-402f-b067-83cc9ddea888" + }, + "body": { + "name": "DataSource1", + "kind": "AzureStorage", + "properties": { + "endpoint": "https://azurestorage.core.windows.net/" + } + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/DataSources_ListAll.json b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/DataSources_ListAll.json new file mode 100644 index 000000000000..42ff7a893003 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/DataSources_ListAll.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "dataSourceName": "myDataSource", + "api-version": "2018-12-01-preview" + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "8e58266a-de42-40d5-b3c4-c6a7e159cfba" + }, + "body": { + "value": [ + { + "name": "DataSource1", + "kind": "AzureStorage", + "properties": { + "endpoint": "https://azurestorage1.core.windows.net/" + } + }, + { + "name": "DataSource2", + "kind": "AzureStorage", + "properties": { + "endpoint": "https://azurestorage2.core.windows.net/" + } + } + ] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/Filters_CreateOrUpdate.json b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/Filters_CreateOrUpdate.json new file mode 100644 index 000000000000..facfd61f51e3 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/Filters_CreateOrUpdate.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "dataSourceName": "DataSource1", + "scanName": "Scan1", + "api-version": "2018-12-01-preview", + "body": { + "properties": { + "includeUriPrefixes": [ + "https://foo.file.core.windows.net/share1/user", + "https://foo.file.core.windows.net/share1/aggregated" + ], + "excludeUriPrefixes": [ + "https://foo.file.core.windows.net/share1/user/temp" + ] + } + } + }, + "responses": { + "201": { + "headers": { + "x-ms-request-id": "d5496da4-9c52-402f-b067-83cc9ddea888" + }, + "body": { + "name": "custom", + "id": "datasources/myDataSource/scans/Scan1/filters/custom", + "properties": { + "includeUriPrefixes": [ + "https://foo.file.core.windows.net/share1/user", + "https://foo.file.core.windows.net/share1/aggregated" + ], + "excludeUriPrefixes": [ + "https://foo.file.core.windows.net/share1/user/temp" + ] + } + } + }, + "200": { + "headers": { + "x-ms-request-id": "d5496da4-9c52-402f-b067-83cc9ddea888" + }, + "body": { + "name": "custom", + "id": "datasources/myDataSource/scans/Scan1/filters/custom", + "properties": { + "includeUriPrefixes": [ + "https://foo.file.core.windows.net/share1/user", + "https://foo.file.core.windows.net/share1/aggregated" + ], + "excludeUriPrefixes": [ + "https://foo.file.core.windows.net/share1/user/temp" + ] + } + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/Filters_Get.json b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/Filters_Get.json new file mode 100644 index 000000000000..04554a198ed0 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/Filters_Get.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "dataSourceName": "myDataSource", + "scanName": "myScanName", + "api-version": "2018-12-01-preview" + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "d5496da4-9c52-402f-b067-83cc9ddea888" + }, + "body": { + "id": "datasources/myDataSource/scans/myScanName/filters/custom", + "name": "custom", + "properties": { + "includeUriPrefixes": [ + "mssql://bar.database.windows.net/core/dbo/business", + "mssql://bar.database.windows.net/core/dbo/processing" + ], + "excludeUriPrefixes": [] + } + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/KeyVaultConnections_Create.json b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/KeyVaultConnections_Create.json new file mode 100644 index 000000000000..d339035a80ea --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/KeyVaultConnections_Create.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "keyVaultName": "KeyVault1", + "api-version": "2018-12-01-preview", + "body": { + "properties": { + "baseUrl": "https://babylon-sample-kv.vault.azure.net/", + "description": "This is a Key Vault" + } + } + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "d5496da4-9c52-402f-b067-83cc9ddea888" + }, + "body": { + "properties": { + "baseUrl": "https://babylon-sample-kv.vault.azure.net/", + "description": "This is a Key Vault" + }, + "id": "/subscriptions/34fb3b81-27ab-4690-9d0b-668896fd288c/resourceGroups/scanning-df-westus2/providers/Microsoft.ProjectBabylon/accounts/babylon-128abf8c-ecea-4be6-8010-36d73cfad6e5/linkedservices/AzureKeyVault1", + "name": "KeyVault1" + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/KeyVaultConnections_Delete.json b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/KeyVaultConnections_Delete.json new file mode 100644 index 000000000000..906face212bf --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/KeyVaultConnections_Delete.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "keyVaultName": "KeyVault1", + "api-version": "2018-12-01-preview" + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "d5496da4-9c52-402f-b067-83cc9ddea888" + }, + "body": { + "properties": { + "baseUrl": "https://babylon-sample-kv.vault.azure.net/", + "description": "This is a Key Vault" + }, + "id": "/subscriptions/34fb3b81-27ab-4690-9d0b-668896fd288c/resourceGroups/scanning-df-westus2/providers/Microsoft.ProjectBabylon/accounts/babylon-128abf8c-ecea-4be6-8010-36d73cfad6e5/linkedservices/AzureKeyVault1", + "name": "KeyVault1" + } + }, + "204": { + "headers": { + "x-ms-request-id": "d5496da4-9c52-402f-b067-83cc9ddea888" + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/KeyVaultConnections_Get.json b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/KeyVaultConnections_Get.json new file mode 100644 index 000000000000..946abdac5a03 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/KeyVaultConnections_Get.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2018-12-01-preview", + "keyVaultName": "KeyVault1" + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "d5496da4-9c52-402f-b067-83cc9ddea888" + }, + "body": { + "properties": { + "baseUrl": "https://babylon-sample-kv.vault.azure.net/", + "description": "This is a Key Vault" + }, + "id": "/subscriptions/34fb3b81-27ab-4690-9d0b-668896fd288c/resourceGroups/scanning-df-westus2/providers/Microsoft.ProjectBabylon/accounts/babylon-128abf8c-ecea-4be6-8010-36d73cfad6e5/linkedservices/AzureKeyVault1", + "name": "KeyVault1" + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/KeyVaultConnections_ListAll.json b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/KeyVaultConnections_ListAll.json new file mode 100644 index 000000000000..0af9194aaab8 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/KeyVaultConnections_ListAll.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2018-12-01-preview", + "skipToken": null + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "8e58266a-de42-40d5-b3c4-c6a7e159cfba" + }, + "body": { + "value": [ + { + "properties": { + "baseUrl": "https://babylon-sample-kv.vault.azure.net/", + "description": "This is a Key Vault" + }, + "id": "/subscriptions/34fb3b81-27ab-4690-9d0b-668896fd288c/resourceGroups/scanning-df-westus2/providers/Microsoft.ProjectBabylon/accounts/babylon-128abf8c-ecea-4be6-8010-36d73cfad6e5/linkedservices/AzureKeyVault1", + "name": "AzureKeyVault1" + }, + { + "properties": { + "baseUrl": "https://babylon-random-kv.vault.azure.net/", + "description": "This is a Key Vault" + }, + "id": "/subscriptions/34fb3b81-27ab-4690-9d0b-668896fd288c/resourceGroups/scanning-df-westus2/providers/Microsoft.ProjectBabylon/accounts/babylon-128abf8c-ecea-4be6-8010-36d73cfad6e5/linkedservices/AzureKeyVault2", + "name": "AzureKeyVault2" + } + ], + "count": 2, + "nextLink": null + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/ScanResult_CancelScan.json b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/ScanResult_CancelScan.json new file mode 100644 index 000000000000..e62b42aedce3 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/ScanResult_CancelScan.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "dataSourceName": "myDataSource", + "scanName": "myScanName", + "api-version": "2018-12-01-preview", + "runId": "138301e4-f4f9-4ab5-b734-bac446b236e7" + }, + "responses": { + "202": { + "headers": { + "x-ms-request-id": "d5496da4-9c52-402f-b067-83cc9ddea888" + }, + "body": { + "scanResultId": "138301e4-f4f9-4ab5-b734-bac446b236e7", + "startTime": "2019-05-16T17:01:37.3089193Z", + "endTime": null, + "status": "Accepted", + "error": null + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/ScanResult_ListScanHistory.json b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/ScanResult_ListScanHistory.json new file mode 100644 index 000000000000..e464cf551a8c --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/ScanResult_ListScanHistory.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "dataSourceName": "DataSource1", + "scanName": "scan1", + "api-version": "2018-12-01-preview", + "skipToken": null + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "d5496da4-9c52-402f-b067-83cc9ddea888" + }, + "body": { + "value": [ + { + "id": "556ac46f-bd42-4e84-b1f5-2ac335384b9b", + "status": "Running", + "assetsDiscovered": 950, + "assetsClassified": 345, + "startTime": "2018-11-14T04:47:52.9614956Z", + "queuedTime": "2018-11-14T04:47:52.9614956Z", + "pipelineStartTime": "2018-11-14T04:47:52.9614956Z", + "endTime": null, + "runType": "Manual", + "scanRulesetType": "Custom" + }, + { + "id": "6346cde3-467e-41f1-9436-af096fd83247", + "status": "Succeeded", + "assetsDiscovered": 950, + "assetsClassified": 945, + "startTime": "2018-11-14T04:47:52.9614956Z", + "queuedTime": "2018-11-14T04:47:52.9614956Z", + "pipelineStartTime": "2018-11-14T04:47:52.9614956Z", + "endTime": "2018-11-14T05:17:52.9614956Z", + "runType": "Scheduled", + "scanRulesetType": "Custom" + }, + { + "id": "565e518f-da15-486d-8f0d-5269ea404df6", + "status": "Failed", + "assetsDiscovered": 0, + "assetsClassified": 0, + "startTime": "2018-11-14T04:47:52.9614956Z", + "queuedTime": "2018-11-14T04:47:52.9614956Z", + "pipelineStartTime": "2018-11-14T04:47:52.9614956Z", + "endTime": "2018-11-14T05:17:52.9614956Z", + "errorMessage": "You did a bad thing", + "runType": "Manual", + "scanRulesetType": "System" + } + ], + "count": 3, + "nextLink": null + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/ScanResult_RunScan.json b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/ScanResult_RunScan.json new file mode 100644 index 000000000000..777514932a44 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/ScanResult_RunScan.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "dataSourceName": "testDataSourceName", + "scanName": "scan1", + "api-version": "2018-12-01-preview", + "runId": "138301e4-f4f9-4ab5-b734-bac446b236e7", + "scanLevel": "Full" + }, + "responses": { + "202": { + "headers": { + "x-ms-request-id": "00000000-0000-0000-0000-00000000000" + }, + "body": { + "scanResultId": "138301e4-f4f9-4ab5-b734-bac446b236e7", + "startTime": "2019-05-16T17:01:37.3089193Z", + "endTime": null, + "status": "Accepted", + "error": null + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/ScanRulesets_CreateOrUpdate.json b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/ScanRulesets_CreateOrUpdate.json new file mode 100644 index 000000000000..0835d45c44ac --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/ScanRulesets_CreateOrUpdate.json @@ -0,0 +1,168 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "scanRulesetName": "nyScanRulesetName", + "api-version": "2018-12-01-preview", + "body": { + "kind": "AzureStorage", + "scanRulesetType": "Custom", + "properties": { + "scanningRule": { + "fileExtensions": [ + "CSV", + "JSON", + "PSV", + "SSV", + "TSV", + "TXT", + "XML", + "PARQUET" + ], + "customFileExtensions": [ + { + "customFileType": { + "builtInType": null, + "customDelimiter": "$" + }, + "description": "model file type", + "enabled": true, + "fileExtension": ".model" + }, + { + "customFileType": { + "builtInType": "JSON", + "customDelimiter": null + }, + "description": "mdoel1 type", + "enabled": true, + "fileExtension": ".model1" + } + ] + }, + "description": null, + "excludedSystemClassifications": [ + "MICROSOFT.FINANCIAL.AUSTRALIA.BANK_ACCOUNT_NUMBER", + "MICROSOFT.MISCELLANEOUS.IPADDRESS" + ], + "includedCustomClassificationRuleNames": [ + "BF_PII", + "Dummy_Rule2" + ] + } + } + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "d5496da4-9c52-402f-b067-83cc9ddea888" + }, + "body": { + "kind": "AzureStorage", + "scanRulesetType": "Custom", + "id": "scanrulesets/nyScanRulesetName", + "name": "nyScanRulesetName", + "properties": { + "scanningRule": { + "fileExtensions": [ + "CSV", + "JSON", + "PSV", + "SSV", + "TSV", + "TXT", + "XML", + "PARQUET" + ], + "customFileExtensions": [ + { + "customFileType": { + "builtInType": null, + "customDelimiter": "$" + }, + "description": "model file type", + "enabled": true, + "fileExtension": ".model" + }, + { + "customFileType": { + "builtInType": "JSON", + "customDelimiter": null + }, + "description": "mdoel1 type", + "enabled": true, + "fileExtension": ".model1" + } + ] + }, + "createdAt": "2021-02-12T16:03:13.4377581Z", + "description": null, + "excludedSystemClassifications": [ + "MICROSOFT.FINANCIAL.AUSTRALIA.BANK_ACCOUNT_NUMBER", + "MICROSOFT.MISCELLANEOUS.IPADDRESS" + ], + "includedCustomClassificationRuleNames": [ + "BF_PII", + "Dummy_Rule2" + ], + "lastModifiedAt": "2021-02-12T16:03:13.4377582Z" + } + } + }, + "201": { + "headers": { + "x-ms-request-id": "d5496da4-9c52-402f-b067-83cc9ddea888" + }, + "body": { + "kind": "AzureStorage", + "scanRulesetType": "Custom", + "id": "scanrulesets/nyScanRulesetName", + "name": "nyScanRulesetName", + "properties": { + "scanningRule": { + "fileExtensions": [ + "CSV", + "JSON", + "PSV", + "SSV", + "TSV", + "TXT", + "XML", + "PARQUET" + ], + "customFileExtensions": [ + { + "customFileType": { + "builtInType": null, + "customDelimiter": "$" + }, + "description": "model file type", + "enabled": true, + "fileExtension": ".model" + }, + { + "customFileType": { + "builtInType": "JSON", + "customDelimiter": null + }, + "description": "mdoel1 type", + "enabled": true, + "fileExtension": ".model1" + } + ] + }, + "createdAt": "2021-02-12T16:03:13.4377581Z", + "description": null, + "excludedSystemClassifications": [ + "MICROSOFT.FINANCIAL.AUSTRALIA.BANK_ACCOUNT_NUMBER", + "MICROSOFT.MISCELLANEOUS.IPADDRESS" + ], + "includedCustomClassificationRuleNames": [ + "BF_PII", + "Dummy_Rule2" + ], + "lastModifiedAt": "2021-02-12T16:03:13.4377582Z" + } + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/ScanRulesets_Delete.json b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/ScanRulesets_Delete.json new file mode 100644 index 000000000000..e83471d83c18 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/ScanRulesets_Delete.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "scanRulesetName": "myRuleSetName", + "api-version": "2018-12-01-preview" + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "d5496da4-9c52-402f-b067-83cc9ddea888" + }, + "body": { + "properties": { + "scanningRule": { + "fileExtensions": [ + "CSV", + "JSON" + ] + }, + "createdAt": "2020-01-28T23:09:30.5185162Z", + "lastModifiedAt": "2020-01-28T23:10:07.3840172Z", + "excludedSystemClassifications": null, + "includedCustomClassificationRuleNames": null, + "description": null + }, + "kind": "AzureStorage", + "name": "myRuleSetName" + } + }, + "204": { + "headers": { + "x-ms-request-id": "d5496da4-9c52-402f-b067-83cc9ddea888" + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/ScanRulesets_Get.json b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/ScanRulesets_Get.json new file mode 100644 index 000000000000..d91dfe74be2c --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/ScanRulesets_Get.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "scanRulesetName": "myRuleSetName", + "api-version": "2018-12-01-preview" + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "d5496da4-9c52-402f-b067-83cc9ddea888" + }, + "body": { + "properties": { + "scanningRule": { + "fileExtensions": [ + "CSV", + "JSON" + ] + }, + "createdAt": "2020-01-28T23:09:30.5185162Z", + "lastModifiedAt": "2020-01-28T23:10:07.3840172Z", + "excludedSystemClassifications": null, + "includedCustomClassificationRuleNames": null, + "description": null + }, + "kind": "AzureStorage", + "name": "myRuleSetName" + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/ScanRulesets_ListAll.json b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/ScanRulesets_ListAll.json new file mode 100644 index 000000000000..3fdd9ef96be5 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/ScanRulesets_ListAll.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "scanRulesetName": "nyScanRulesetName", + "api-version": "2018-12-01-preview" + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "d5496da4-9c52-402f-b067-83cc9ddea888" + }, + "body": { + "count": 2, + "nextLink": null, + "value": [ + { + "name": "ScanRuleset1", + "kind": "AzureStorage" + }, + { + "name": "ScanRuleset2", + "kind": "AzureStorage" + } + ] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/Scans_CreateOrUpdate.json b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/Scans_CreateOrUpdate.json new file mode 100644 index 000000000000..1cf5f6e61945 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/Scans_CreateOrUpdate.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "dataSourceName": "myDataSource", + "scanName": "myScanName", + "api-version": "2018-12-01-preview", + "body": { + "kind": "AzureStorageCredential", + "properties": { + "credential": { + "referenceName": "CredentialAKV", + "credentialType": "AccountKey" + }, + "connectedVia": null, + "scanRulesetName": "AzureStorage", + "scanRulesetType": "System" + } + } + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "d5496da4-9c52-402f-b067-83cc9ddea888" + }, + "body": { + "name": "myScanName", + "id": "datasources/myDataSource/scans/myScanName", + "kind": "AzureStorageCredential", + "properties": { + "credential": { + "referenceName": "CredentialAKV", + "credentialType": "AccountKey" + }, + "connectedVia": null, + "scanRulesetName": "AzureStorage", + "scanRulesetType": "System", + "workers": null + }, + "scanResults": null + } + }, + "201": { + "headers": { + "x-ms-request-id": "d5496da4-9c52-402f-b067-83cc9ddea888" + }, + "body": { + "name": "myScanName", + "id": "datasources/myDataSource/scans/myScanName", + "kind": "AzureStorageCredential", + "properties": { + "credential": { + "referenceName": "CredentialAKV", + "credentialType": "AccountKey" + }, + "scanRulesetName": "AzureStorage", + "scanRulesetType": "System", + "workers": null + }, + "scanResults": null + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/Scans_Delete.json b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/Scans_Delete.json new file mode 100644 index 000000000000..5899cc99ef92 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/Scans_Delete.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "dataSourceName": "myDataSource", + "scanName": "myScanName", + "api-version": "2018-12-01-preview" + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "d5496da4-9c52-402f-b067-83cc9ddea888" + }, + "body": { + "name": "myScanName", + "id": "datasources/myDataSource/scans/myScanName", + "kind": "AzureStorageCredential", + "properties": { + "credential": { + "referenceName": "CredentialAKV", + "credentialType": "AccountKey" + }, + "connectedVia": null, + "scanRulesetName": "AzureStorage", + "scanRulesetType": "System", + "workers": null + }, + "scanResults": null + } + }, + "204": { + "headers": { + "x-ms-request-id": "d5496da4-9c52-402f-b067-83cc9ddea888" + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/Scans_Get.json b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/Scans_Get.json new file mode 100644 index 000000000000..db94a10f419a --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/Scans_Get.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "dataSourceName": "myDataSource", + "scanName": "myScanName", + "api-version": "2018-12-01-preview" + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "d5496da4-9c52-402f-b067-83cc9ddea888" + }, + "body": { + "name": "myScanName", + "id": "datasources/myDataSource/scans/myScanName", + "kind": "AzureStorageCredential", + "properties": { + "credential": { + "referenceName": "CredentialAKV", + "credentialType": "AccountKey" + }, + "connectedVia": null, + "scanRulesetName": "AzureStorage", + "scanRulesetType": "System", + "workers": null + }, + "scanResults": null + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/Scans_ListByDataSource.json b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/Scans_ListByDataSource.json new file mode 100644 index 000000000000..3338f27ed788 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/Scans_ListByDataSource.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "dataSourceName": "myDataSource", + "api-version": "2018-12-01-preview", + "skipToken": null + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "d5496da4-9c52-402f-b067-83cc9ddea888" + }, + "body": { + "value": [ + { + "name": "myScanName", + "id": "datasources/myDataSource/scans/myScanName", + "kind": "AzureStorageCredential", + "properties": { + "credential": { + "referenceName": "CredentialAKV", + "credentialType": "AccountKey" + }, + "connectedVia": null, + "scanRulesetName": "AzureStorage", + "scanRulesetType": "System", + "workers": null + }, + "scanResults": null + } + ], + "count": 1, + "nextLink": null + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/SystemScanRulesets_Get.json b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/SystemScanRulesets_Get.json new file mode 100644 index 000000000000..3f5f8b4f18e9 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/SystemScanRulesets_Get.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2018-12-01-preview", + "dataSourceType": "AzureStorage" + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "d5496da4-9c52-402f-b067-83cc9ddea888" + }, + "body": { + "kind": "AzureStorage", + "scanRulesetType": "System", + "status": "Enabled", + "version": 1, + "id": "systemscanrulesets/AzureStorage", + "name": "AzureStorage" + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/SystemScanRulesets_GetByVersion.json b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/SystemScanRulesets_GetByVersion.json new file mode 100644 index 000000000000..3e64af6339a9 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/SystemScanRulesets_GetByVersion.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2018-12-01-preview", + "dataSourceType": "AzureStorage", + "version": 1 + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "d5496da4-9c52-402f-b067-83cc9ddea888" + }, + "body": { + "scanRulesetType": "System", + "kind": "AzureStorage", + "name": "myRuleSetName", + "status": "Enabled", + "version": 1 + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/SystemScanRulesets_GetLatest.json b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/SystemScanRulesets_GetLatest.json new file mode 100644 index 000000000000..97ea5711df03 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/SystemScanRulesets_GetLatest.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2018-12-01-preview", + "dataSourceType": "AzureStorage" + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "d5496da4-9c52-402f-b067-83cc9ddea888" + }, + "body": { + "scanRulesetType": "System", + "kind": "AzureStorage", + "name": "myRuleSetName", + "status": "Enabled", + "version": 1 + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/SystemScanRulesets_ListAll.json b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/SystemScanRulesets_ListAll.json new file mode 100644 index 000000000000..60cb4e323834 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/SystemScanRulesets_ListAll.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2018-12-01-preview" + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "d5496da4-9c52-402f-b067-83cc9ddea888" + }, + "body": { + "count": 2, + "nextLink": null, + "value": [ + { + "scanRulesetType": "System", + "kind": "AzureStorage", + "status": "Enabled", + "version": 2, + "id": "systemscanrulesets/AzureStorage", + "name": "sample" + }, + { + "scanRulesetType": "System", + "kind": "AzureStorage", + "status": "Enabled", + "version": 1, + "id": "systemscanrulesets/AzureStorage", + "name": "sample" + } + ] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/SystemScanRulesets_ListVersionsByDataSource.json b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/SystemScanRulesets_ListVersionsByDataSource.json new file mode 100644 index 000000000000..4e7f910cb70d --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/SystemScanRulesets_ListVersionsByDataSource.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "api-version": "2018-12-01-preview", + "dataSourceType": "AzureStorage" + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "d5496da4-9c52-402f-b067-83cc9ddea888" + }, + "body": { + "count": 2, + "nextLink": null, + "value": [ + { + "scanRulesetType": "System", + "kind": "AzureStorage", + "status": "Enabled", + "version": 2, + "id": "systemscanrulesets/AzureStorage", + "name": "sample" + }, + { + "scanRulesetType": "System", + "kind": "AzureStorage", + "status": "Enabled", + "version": 1, + "id": "systemscanrulesets/AzureStorage", + "name": "sample" + } + ] + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/Triggers_CreateTrigger.json b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/Triggers_CreateTrigger.json new file mode 100644 index 000000000000..5351de91693b --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/Triggers_CreateTrigger.json @@ -0,0 +1,95 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "dataSourceName": "DataSource1", + "scanName": "Scan1", + "triggerName": "Trigger1", + "api-version": "2018-12-01-preview", + "body": { + "properties": { + "recurrenceInterval": null, + "scanLevel": "Incremental", + "recurrence": { + "startTime": "2021-02-12T14:59:00.416Z", + "endTime": "2021-02-25T00:00:00.000Z", + "interval": 1, + "frequency": "Month", + "schedule": { + "hours": [ + 23 + ], + "minutes": [ + 56 + ], + "monthDays": [ + 10 + ] + } + } + } + } + }, + "responses": { + "201": { + "headers": { + "x-ms-request-id": "d5496da4-9c52-402f-b067-83cc9ddea888" + }, + "body": { + "name": "Trigger1", + "id": "datasources/AzureBlob-DSTDParv/scans/Scan-PUl/triggers/default", + "properties": { + "recurrence": { + "frequency": "Month", + "interval": 4, + "startTime": "2021-02-12T14:59:00.416Z", + "endTime": "2021-02-25T00:00:00Z", + "schedule": { + "minutes": [ + 56 + ], + "hours": [ + 23 + ], + "weekDays": null, + "monthDays": null, + "monthlyOccurrences": [ + { + "day": "Wednesday", + "occurrence": 2 + } + ] + } + }, + "recurrenceInterval": null, + "createdAt": "2021-02-12T14:58:58.0478425Z", + "lastModifiedAt": "2021-02-12T15:39:53.6482996Z", + "lastScheduled": null, + "scanLevel": "Incremental" + } + } + }, + "200": { + "headers": { + "x-ms-request-id": "d5496da4-9c52-402f-b067-83cc9ddea888" + }, + "body": { + "name": "Trigger1", + "id": "datasources/AzureBlob-DSTDParv/scans/Scan-PUl/triggers/default", + "properties": { + "recurrence": { + "frequency": "Month", + "interval": 1, + "startTime": "2020-06-03T19:15:00Z", + "endTime": "2020-06-03T19:22:00Z", + "schedule": null + }, + "recurrenceInterval": null, + "createdAt": "2020-06-11T05:15:04.1940429Z", + "lastModifiedAt": "2020-06-19T22:26:22.6514064Z", + "lastScheduled": null, + "scanLevel": "Incremental" + } + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/Triggers_DeleteTrigger.json b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/Triggers_DeleteTrigger.json new file mode 100644 index 000000000000..671510b45dcc --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/Triggers_DeleteTrigger.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "dataSourceName": "DataSource1", + "scanName": "Scan1", + "triggerName": "Trigger1", + "api-version": "2018-12-01-preview" + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "d5496da4-9c52-402f-b067-83cc9ddea888" + }, + "body": { + "name": "Trigger1", + "properties": { + "recurrence": { + "frequency": "Month", + "interval": 1, + "startTime": "2020-06-03T19:15:00Z", + "endTime": "2020-06-03T19:22:00Z", + "schedule": null + }, + "recurrenceInterval": null, + "createdAt": "2020-06-11T05:15:04.1940429Z", + "lastModifiedAt": "2020-06-19T22:26:22.6514064Z", + "lastScheduled": null, + "scanLevel": "Incremental" + } + } + }, + "204": { + "headers": { + "x-ms-request-id": "d5496da4-9c52-402f-b067-83cc9ddea888" + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/Triggers_GetTrigger.json b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/Triggers_GetTrigger.json new file mode 100644 index 000000000000..e0e6fdcd3ebf --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/examples/Triggers_GetTrigger.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "dataSourceName": "myDataSourceName", + "scanName": "myScanName", + "api-version": "2018-12-01-preview", + "triggerName": "myTriggerName" + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "d5496da4-9c52-402f-b067-83cc9ddea888" + }, + "body": { + "properties": { + "recurrence": { + "frequency": "Month", + "interval": 1, + "startTime": "2020-06-03T19:15:00Z", + "endTime": "2020-06-03T19:22:00Z", + "schedule": null + }, + "recurrenceInterval": null, + "createdAt": "2020-06-11T05:15:04.1940429Z", + "lastModifiedAt": "2020-06-19T22:26:22.6514064Z", + "lastScheduled": null, + "scanLevel": "Incremental" + } + } + } + } +} diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/scanningService.json b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/scanningService.json new file mode 100644 index 000000000000..db115d20808c --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/scanningService.json @@ -0,0 +1,6818 @@ +{ + "swagger": "2.0", + "info": { + "title": "MicrosoftScanningClient", + "description": "Creates a Microsoft.Scanning management client.", + "version": "2018-12-01-preview" + }, + "produces": [ + "application/json" + ], + "x-ms-parameterized-host": { + "hostTemplate": "{Endpoint}", + "useSchemePrefix": false, + "parameters": [ + { + "$ref": "#/parameters/Endpoint" + } + ] + }, + "paths": { + "/azureKeyVaults/{keyVaultName}": { + "get": { + "tags": [ + "AzureKeyVaults" + ], + "description": "Gets key vault information", + "operationId": "KeyVaultConnections_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "keyVaultName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/AzureKeyVault" + } + }, + "default": { + "description": "An error response received from the Scanning Service", + "schema": { + "$ref": "#/definitions/ErrorResponseModel" + } + } + }, + "x-ms-examples": { + "KeyVaultConnections_Get": { + "$ref": "./examples/KeyVaultConnections_Get.json" + } + } + }, + "put": { + "tags": [ + "AzureKeyVaults" + ], + "description": "Creates an instance of a key vault connection", + "operationId": "KeyVaultConnections_Create", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "keyVaultName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "in": "body", + "name": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AzureKeyVault" + } + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/AzureKeyVault" + } + }, + "default": { + "description": "An error response received from the Scanning Service", + "schema": { + "$ref": "#/definitions/ErrorResponseModel" + } + } + }, + "x-ms-examples": { + "KeyVaultConnections_Create": { + "$ref": "./examples/KeyVaultConnections_Create.json" + } + } + }, + "delete": { + "tags": [ + "AzureKeyVaults" + ], + "description": "Deletes the key vault connection associated with the account", + "operationId": "KeyVaultConnections_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "keyVaultName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/AzureKeyVault" + } + }, + "204": { + "description": "Success" + }, + "default": { + "description": "An error response received from the Scanning Service", + "schema": { + "$ref": "#/definitions/ErrorResponseModel" + } + } + }, + "x-ms-examples": { + "KeyVaultConnections_Delete": { + "$ref": "./examples/KeyVaultConnections_Delete.json" + } + } + } + }, + "/azureKeyVaults": { + "get": { + "tags": [ + "AzureKeyVaults" + ], + "description": "List key vault connections in account", + "operationId": "KeyVaultConnections_ListAll", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/AzureKeyVaultList" + } + }, + "default": { + "description": "An error response received from the Scanning Service", + "schema": { + "$ref": "#/definitions/ErrorResponseModel" + } + } + }, + "x-ms-examples": { + "KeyVaultConnections_ListAll": { + "$ref": "./examples/KeyVaultConnections_ListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/classificationrules/{classificationRuleName}": { + "get": { + "tags": [ + "ClassificationRules" + ], + "description": "Get a classification rule", + "operationId": "ClassificationRules_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "classificationRuleName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ClassificationRule" + } + }, + "default": { + "description": "An error response received from the Scanning Service", + "schema": { + "$ref": "#/definitions/ErrorResponseModel" + } + } + }, + "x-ms-examples": { + "ClassificationRules_Get": { + "$ref": "./examples/ClassificationRules_Get.json" + } + } + }, + "put": { + "tags": [ + "ClassificationRules" + ], + "description": "Creates or Updates a classification rule", + "operationId": "ClassificationRules_CreateOrUpdate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "classificationRuleName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "in": "body", + "name": "body", + "schema": { + "$ref": "#/definitions/ClassificationRule" + } + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ClassificationRule" + } + }, + "201": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ClassificationRule" + } + }, + "default": { + "description": "An error response received from the Scanning Service", + "schema": { + "$ref": "#/definitions/ErrorResponseModel" + } + } + }, + "x-ms-examples": { + "ClassificationRules_CreateOrUpdate": { + "$ref": "./examples/ClassificationRules_CreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "ClassificationRules" + ], + "description": "Deletes a classification rule", + "operationId": "ClassificationRules_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "classificationRuleName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ClassificationRule" + } + }, + "204": { + "description": "Success" + }, + "default": { + "description": "An error response received from the Scanning Service", + "schema": { + "$ref": "#/definitions/ErrorResponseModel" + } + } + }, + "x-ms-examples": { + "ClassificationRules_Delete": { + "$ref": "./examples/ClassificationRules_Delete.json" + } + } + } + }, + "/classificationrules": { + "get": { + "tags": [ + "ClassificationRules" + ], + "description": "List classification rules in Account", + "operationId": "ClassificationRules_ListAll", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ClassificationRuleList" + } + }, + "default": { + "description": "An error response received from the Scanning Service", + "schema": { + "$ref": "#/definitions/ErrorResponseModel" + } + } + }, + "x-ms-examples": { + "ClassificationRules_ListAll": { + "$ref": "./examples/ClassificationRules_ListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/classificationrules/{classificationRuleName}/versions": { + "get": { + "tags": [ + "ClassificationRules" + ], + "description": "Lists the rule versions of a classification rule", + "operationId": "ClassificationRules_ListVersionsByClassificationRuleName", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "classificationRuleName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ClassificationRuleList" + } + }, + "default": { + "description": "An error response received from the Scanning Service", + "schema": { + "$ref": "#/definitions/ErrorResponseModel" + } + } + }, + "x-ms-examples": { + "ClassificationRules_ListVersionsByClassificationRuleName": { + "$ref": "./examples/ClassificationRules_ListVersionsByClassificationRuleName.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/classificationrules/{classificationRuleName}/versions/{classificationRuleVersion}/:tag": { + "post": { + "tags": [ + "ClassificationRules" + ], + "description": "Sets Classification Action on a specific classification rule version.", + "operationId": "ClassificationRules_TagClassificationVersion", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "classificationRuleName", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "classificationRuleVersion", + "required": true, + "type": "integer", + "format": "int32" + }, + { + "in": "query", + "name": "action", + "required": true, + "type": "string", + "enum": [ + "Keep", + "Delete" + ], + "x-ms-enum": { + "name": "ClassificationAction", + "modelAsString": true + } + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "202": { + "description": "Success", + "schema": { + "$ref": "#/definitions/OperationResponse" + } + }, + "default": { + "description": "An error response received from the Scanning Service", + "schema": { + "$ref": "#/definitions/ErrorResponseModel" + } + } + }, + "x-ms-examples": { + "ClassificationRules_TagClassificationVersion": { + "$ref": "./examples/ClassificationRules_TagClassificationVersion.json" + } + } + } + }, + "/datasources/{dataSourceName}": { + "put": { + "tags": [ + "DataSources" + ], + "description": "Creates or Updates a data source", + "operationId": "DataSources_CreateOrUpdate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "dataSourceName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "in": "body", + "name": "body", + "schema": { + "$ref": "#/definitions/DataSource" + } + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DataSource" + } + }, + "201": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DataSource" + } + }, + "default": { + "description": "An error response received from the Scanning Service", + "schema": { + "$ref": "#/definitions/ErrorResponseModel" + } + } + }, + "x-ms-examples": { + "DataSources_CreateOrUpdate": { + "$ref": "./examples/DataSources_CreateOrUpdate.json" + } + } + }, + "get": { + "tags": [ + "DataSources" + ], + "description": "Get a data source", + "operationId": "DataSources_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "dataSourceName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DataSource" + } + }, + "default": { + "description": "An error response received from the Scanning Service", + "schema": { + "$ref": "#/definitions/ErrorResponseModel" + } + } + }, + "x-ms-examples": { + "DataSources_Get": { + "$ref": "./examples/DataSources_Get.json" + } + } + }, + "delete": { + "tags": [ + "DataSources" + ], + "description": "Deletes a data source", + "operationId": "DataSources_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "dataSourceName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DataSource" + } + }, + "204": { + "description": "Success" + }, + "default": { + "description": "An error response received from the Scanning Service", + "schema": { + "$ref": "#/definitions/ErrorResponseModel" + } + } + }, + "x-ms-examples": { + "DataSources_Delete": { + "$ref": "./examples/DataSources_Delete.json" + } + } + } + }, + "/datasources": { + "get": { + "tags": [ + "DataSources" + ], + "description": "List data sources in Data catalog", + "operationId": "DataSources_ListAll", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DataSourceList" + } + }, + "default": { + "description": "An error response received from the Scanning Service", + "schema": { + "$ref": "#/definitions/ErrorResponseModel" + } + } + }, + "x-ms-examples": { + "DataSources_ListAll": { + "$ref": "./examples/DataSources_ListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/datasources/{dataSourceName}/scans/{scanName}/filters/custom": { + "get": { + "tags": [ + "Filters" + ], + "description": "Get a filter", + "operationId": "Filters_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "dataSourceName", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "scanName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Filter" + } + }, + "default": { + "description": "An error response received from the Scanning Service", + "schema": { + "$ref": "#/definitions/ErrorResponseModel" + } + } + }, + "x-ms-examples": { + "Filters_Get": { + "$ref": "./examples/Filters_Get.json" + } + } + }, + "put": { + "tags": [ + "Filters" + ], + "description": "Creates or updates a filter", + "operationId": "Filters_CreateOrUpdate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "dataSourceName", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "scanName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "in": "body", + "name": "body", + "schema": { + "$ref": "#/definitions/Filter" + } + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Filter" + } + }, + "201": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Filter" + } + }, + "default": { + "description": "An error response received from the Scanning Service", + "schema": { + "$ref": "#/definitions/ErrorResponseModel" + } + } + }, + "x-ms-examples": { + "Filters_CreateOrUpdate": { + "$ref": "./examples/Filters_CreateOrUpdate.json" + } + } + } + }, + "/datasources/{dataSourceName}/scans/{scanName}": { + "put": { + "tags": [ + "Scan" + ], + "description": "Creates an instance of a scan", + "operationId": "Scans_CreateOrUpdate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "dataSourceName", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "scanName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "in": "body", + "name": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Scan" + } + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Scan" + } + }, + "201": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Scan" + } + }, + "default": { + "description": "An error response received from the Scanning Service", + "schema": { + "$ref": "#/definitions/ErrorResponseModel" + } + } + }, + "x-ms-examples": { + "Scans_CreateOrUpdate": { + "$ref": "./examples/Scans_CreateOrUpdate.json" + } + } + }, + "get": { + "tags": [ + "Scan" + ], + "description": "Gets a scan information", + "operationId": "Scans_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "dataSourceName", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "scanName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Scan" + } + }, + "default": { + "description": "An error response received from the Scanning Service", + "schema": { + "$ref": "#/definitions/ErrorResponseModel" + } + } + }, + "x-ms-examples": { + "Scans_Get": { + "$ref": "./examples/Scans_Get.json" + } + } + }, + "delete": { + "tags": [ + "Scan" + ], + "description": "Deletes the scan associated with the data source", + "operationId": "Scans_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "dataSourceName", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "scanName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Scan" + } + }, + "204": { + "description": "Success" + }, + "default": { + "description": "An error response received from the Scanning Service", + "schema": { + "$ref": "#/definitions/ErrorResponseModel" + } + } + }, + "x-ms-examples": { + "Scans_Delete": { + "$ref": "./examples/Scans_Delete.json" + } + } + } + }, + "/datasources/{dataSourceName}/scans": { + "get": { + "tags": [ + "Scan" + ], + "description": "List scans in data source", + "operationId": "Scans_ListByDataSource", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "dataSourceName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ScanList" + } + }, + "default": { + "description": "An error response received from the Scanning Service", + "schema": { + "$ref": "#/definitions/ErrorResponseModel" + } + } + }, + "x-ms-examples": { + "Scans_ListByDataSource": { + "$ref": "./examples/Scans_ListByDataSource.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/datasources/{dataSourceName}/scans/{scanName}/runs/{runId}": { + "put": { + "tags": [ + "ScanResult" + ], + "description": "Runs the scan", + "operationId": "ScanResult_RunScan", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "dataSourceName", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "scanName", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "runId", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "scanLevel", + "type": "string", + "enum": [ + "Full", + "Incremental" + ], + "x-ms-enum": { + "name": "ScanLevelType", + "modelAsString": true + } + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "202": { + "description": "Success", + "schema": { + "$ref": "#/definitions/OperationResponse" + } + }, + "default": { + "description": "An error response received from the Scanning Service", + "schema": { + "$ref": "#/definitions/ErrorResponseModel" + } + } + }, + "x-ms-examples": { + "ScanResult_RunScan": { + "$ref": "./examples/ScanResult_RunScan.json" + } + } + } + }, + "/datasources/{dataSourceName}/scans/{scanName}/runs/{runId}/:cancel": { + "post": { + "tags": [ + "ScanResult" + ], + "description": "Cancels a scan", + "operationId": "ScanResult_CancelScan", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "dataSourceName", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "scanName", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "runId", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "202": { + "description": "Success", + "schema": { + "$ref": "#/definitions/OperationResponse" + } + }, + "default": { + "description": "An error response received from the Scanning Service", + "schema": { + "$ref": "#/definitions/ErrorResponseModel" + } + } + }, + "x-ms-examples": { + "ScanResult_CancelScan": { + "$ref": "./examples/ScanResult_CancelScan.json" + } + } + } + }, + "/datasources/{dataSourceName}/scans/{scanName}/runs": { + "get": { + "tags": [ + "ScanResult" + ], + "description": "Lists the scan history of a scan", + "operationId": "ScanResult_ListScanHistory", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "dataSourceName", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "scanName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ScanHistoryList" + } + }, + "default": { + "description": "An error response received from the Scanning Service", + "schema": { + "$ref": "#/definitions/ErrorResponseModel" + } + } + }, + "x-ms-examples": { + "ScanResult_ListScanHistory": { + "$ref": "./examples/ScanResult_ListScanHistory.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/scanrulesets/{scanRulesetName}": { + "get": { + "tags": [ + "ScanRulesets" + ], + "description": "Get a scan ruleset", + "operationId": "ScanRulesets_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "scanRulesetName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ScanRuleset" + } + }, + "default": { + "description": "An error response received from the Scanning Service", + "schema": { + "$ref": "#/definitions/ErrorResponseModel" + } + } + }, + "x-ms-examples": { + "ScanRulesets_Get": { + "$ref": "./examples/ScanRulesets_Get.json" + } + } + }, + "put": { + "tags": [ + "ScanRulesets" + ], + "description": "Creates or Updates a scan ruleset", + "operationId": "ScanRulesets_CreateOrUpdate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "scanRulesetName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "in": "body", + "name": "body", + "schema": { + "$ref": "#/definitions/ScanRuleset" + } + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ScanRuleset" + } + }, + "201": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ScanRuleset" + } + }, + "default": { + "description": "An error response received from the Scanning Service", + "schema": { + "$ref": "#/definitions/ErrorResponseModel" + } + } + }, + "x-ms-examples": { + "ScanRulesets_CreateOrUpdate": { + "$ref": "./examples/ScanRulesets_CreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "ScanRulesets" + ], + "description": "Deletes a scan ruleset", + "operationId": "ScanRulesets_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "scanRulesetName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ScanRuleset" + } + }, + "204": { + "description": "Success" + }, + "default": { + "description": "An error response received from the Scanning Service", + "schema": { + "$ref": "#/definitions/ErrorResponseModel" + } + } + }, + "x-ms-examples": { + "ScanRulesets_Delete": { + "$ref": "./examples/ScanRulesets_Delete.json" + } + } + } + }, + "/scanrulesets": { + "get": { + "tags": [ + "ScanRulesets" + ], + "description": "List scan rulesets in Data catalog", + "operationId": "ScanRulesets_ListAll", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ScanRulesetList" + } + }, + "default": { + "description": "An error response received from the Scanning Service", + "schema": { + "$ref": "#/definitions/ErrorResponseModel" + } + } + }, + "x-ms-examples": { + "ScanRulesets_ListAll": { + "$ref": "./examples/ScanRulesets_ListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/systemScanRulesets": { + "get": { + "tags": [ + "SystemScanRulesets" + ], + "description": "List all system scan rulesets for an account", + "operationId": "SystemScanRulesets_ListAll", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/SystemScanRulesetList" + } + }, + "default": { + "description": "An error response received from the Scanning Service", + "schema": { + "$ref": "#/definitions/ErrorResponseModel" + } + } + }, + "x-ms-examples": { + "SystemScanRulesets_ListAll": { + "$ref": "./examples/SystemScanRulesets_ListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/systemScanRulesets/datasources/{dataSourceType}": { + "get": { + "tags": [ + "SystemScanRulesets" + ], + "description": "Get a system scan ruleset for a data source", + "operationId": "SystemScanRulesets_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "dataSourceType", + "required": true, + "type": "string", + "enum": [ + "None", + "AzureSubscription", + "AzureResourceGroup", + "AzureSynapseWorkspace", + "AzureSynapse", + "AdlsGen1", + "AdlsGen2", + "AmazonAccount", + "AmazonS3", + "AmazonSql", + "AzureCosmosDb", + "AzureDataExplorer", + "AzureFileService", + "AzureSqlDatabase", + "AmazonPostgreSql", + "AzurePostgreSql", + "SqlServerDatabase", + "AzureSqlDatabaseManagedInstance", + "AzureSqlDataWarehouse", + "AzureMySql", + "AzureStorage", + "Teradata", + "Oracle", + "SapS4Hana", + "SapEcc", + "PowerBI" + ], + "x-ms-enum": { + "name": "DataSourceType", + "modelAsString": true + } + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/SystemScanRuleset" + } + }, + "default": { + "description": "An error response received from the Scanning Service", + "schema": { + "$ref": "#/definitions/ErrorResponseModel" + } + } + }, + "x-ms-examples": { + "SystemScanRulesets_Get": { + "$ref": "./examples/SystemScanRulesets_Get.json" + } + } + } + }, + "/systemScanRulesets/versions/{version}": { + "get": { + "tags": [ + "SystemScanRulesets" + ], + "description": "Get a scan ruleset by version", + "operationId": "SystemScanRulesets_GetByVersion", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "query", + "name": "dataSourceType", + "type": "string", + "enum": [ + "None", + "AzureSubscription", + "AzureResourceGroup", + "AzureSynapseWorkspace", + "AzureSynapse", + "AdlsGen1", + "AdlsGen2", + "AmazonAccount", + "AmazonS3", + "AmazonSql", + "AzureCosmosDb", + "AzureDataExplorer", + "AzureFileService", + "AzureSqlDatabase", + "AmazonPostgreSql", + "AzurePostgreSql", + "SqlServerDatabase", + "AzureSqlDatabaseManagedInstance", + "AzureSqlDataWarehouse", + "AzureMySql", + "AzureStorage", + "Teradata", + "Oracle", + "SapS4Hana", + "SapEcc", + "PowerBI" + ], + "x-ms-enum": { + "name": "DataSourceType", + "modelAsString": true + } + }, + { + "in": "path", + "name": "version", + "required": true, + "type": "integer", + "format": "int32" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/SystemScanRuleset" + } + }, + "default": { + "description": "An error response received from the Scanning Service", + "schema": { + "$ref": "#/definitions/ErrorResponseModel" + } + } + }, + "x-ms-examples": { + "SystemScanRulesets_GetByVersion": { + "$ref": "./examples/SystemScanRulesets_GetByVersion.json" + } + } + } + }, + "/systemScanRulesets/versions/latest": { + "get": { + "tags": [ + "SystemScanRulesets" + ], + "description": "Get the latest version of a system scan ruleset", + "operationId": "SystemScanRulesets_GetLatest", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "query", + "name": "dataSourceType", + "type": "string", + "enum": [ + "None", + "AzureSubscription", + "AzureResourceGroup", + "AzureSynapseWorkspace", + "AzureSynapse", + "AdlsGen1", + "AdlsGen2", + "AmazonAccount", + "AmazonS3", + "AmazonSql", + "AzureCosmosDb", + "AzureDataExplorer", + "AzureFileService", + "AzureSqlDatabase", + "AmazonPostgreSql", + "AzurePostgreSql", + "SqlServerDatabase", + "AzureSqlDatabaseManagedInstance", + "AzureSqlDataWarehouse", + "AzureMySql", + "AzureStorage", + "Teradata", + "Oracle", + "SapS4Hana", + "SapEcc", + "PowerBI" + ], + "x-ms-enum": { + "name": "DataSourceType", + "modelAsString": true + } + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/SystemScanRuleset" + } + }, + "default": { + "description": "An error response received from the Scanning Service", + "schema": { + "$ref": "#/definitions/ErrorResponseModel" + } + } + }, + "x-ms-examples": { + "SystemScanRulesets_GetLatest": { + "$ref": "./examples/SystemScanRulesets_GetLatest.json" + } + } + } + }, + "/systemScanRulesets/versions": { + "get": { + "tags": [ + "SystemScanRulesets" + ], + "description": "List system scan ruleset versions in Data catalog", + "operationId": "SystemScanRulesets_ListVersionsByDataSource", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "query", + "name": "dataSourceType", + "type": "string", + "enum": [ + "None", + "AzureSubscription", + "AzureResourceGroup", + "AzureSynapseWorkspace", + "AzureSynapse", + "AdlsGen1", + "AdlsGen2", + "AmazonAccount", + "AmazonS3", + "AmazonSql", + "AzureCosmosDb", + "AzureDataExplorer", + "AzureFileService", + "AzureSqlDatabase", + "AmazonPostgreSql", + "AzurePostgreSql", + "SqlServerDatabase", + "AzureSqlDatabaseManagedInstance", + "AzureSqlDataWarehouse", + "AzureMySql", + "AzureStorage", + "Teradata", + "Oracle", + "SapS4Hana", + "SapEcc", + "PowerBI" + ], + "x-ms-enum": { + "name": "DataSourceType", + "modelAsString": true + } + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/SystemScanRulesetList" + } + }, + "default": { + "description": "An error response received from the Scanning Service", + "schema": { + "$ref": "#/definitions/ErrorResponseModel" + } + } + }, + "x-ms-examples": { + "SystemScanRulesets_ListVersionsByDataSource": { + "$ref": "./examples/SystemScanRulesets_ListVersionsByDataSource.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/datasources/{dataSourceName}/scans/{scanName}/triggers/default": { + "get": { + "tags": [ + "Triggers" + ], + "description": "Gets trigger information", + "operationId": "Triggers_GetTrigger", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "dataSourceName", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "scanName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Trigger" + } + }, + "default": { + "description": "An error response received from the Scanning Service", + "schema": { + "$ref": "#/definitions/ErrorResponseModel" + } + } + }, + "x-ms-examples": { + "Triggers_GetTrigger": { + "$ref": "./examples/Triggers_GetTrigger.json" + } + } + }, + "put": { + "tags": [ + "Triggers" + ], + "description": "Creates an instance of a trigger", + "operationId": "Triggers_CreateTrigger", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "dataSourceName", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "scanName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "in": "body", + "name": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Trigger" + } + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Trigger" + } + }, + "201": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Trigger" + } + }, + "default": { + "description": "An error response received from the Scanning Service", + "schema": { + "$ref": "#/definitions/ErrorResponseModel" + } + } + }, + "x-ms-examples": { + "Triggers_CreateTrigger": { + "$ref": "./examples/Triggers_CreateTrigger.json" + } + } + }, + "delete": { + "tags": [ + "Triggers" + ], + "description": "Deletes the trigger associated with the scan", + "operationId": "Triggers_DeleteTrigger", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "dataSourceName", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "scanName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Trigger" + } + }, + "204": { + "description": "Success" + }, + "default": { + "description": "An error response received from the Scanning Service", + "schema": { + "$ref": "#/definitions/ErrorResponseModel" + } + } + }, + "x-ms-examples": { + "Triggers_DeleteTrigger": { + "$ref": "./examples/Triggers_DeleteTrigger.json" + } + } + } + } + }, + "definitions": { + "AzureKeyVaultProperties": { + "type": "object", + "properties": { + "baseUrl": { + "type": "string" + }, + "description": { + "type": "string" + } + } + }, + "ProxyResource": { + "type": "object", + "properties": { + "id": { + "type": "string", + "readOnly": true + }, + "name": { + "type": "string", + "readOnly": true + } + } + }, + "AzureKeyVault": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureKeyVaultProperties" + } + ] + } + } + }, + "ErrorModel": { + "type": "object", + "properties": { + "code": { + "type": "string" + }, + "message": { + "type": "string" + }, + "target": { + "type": "string" + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "ErrorResponseModel": { + "type": "object", + "properties": { + "error": { + "allOf": [ + { + "$ref": "#/definitions/ErrorModel" + } + ] + } + } + }, + "AzureKeyVaultList": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureKeyVault" + } + }, + "nextLink": { + "type": "string" + }, + "count": { + "format": "int64", + "type": "integer" + } + } + }, + "ClassificationRule": { + "required": [ + "kind" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "kind": { + "enum": [ + "System", + "Custom" + ], + "type": "string", + "x-ms-enum": { + "name": "ClassificationRuleType", + "modelAsString": true + } + } + }, + "discriminator": "kind" + }, + "ClassificationRuleList": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ClassificationRule" + } + }, + "nextLink": { + "type": "string" + }, + "count": { + "format": "int64", + "type": "integer" + } + } + }, + "ErrorInfo": { + "type": "object", + "properties": { + "code": { + "type": "string" + }, + "message": { + "type": "string" + }, + "target": { + "type": "string" + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ErrorInfo" + } + } + } + }, + "OperationResponse": { + "type": "object", + "properties": { + "scanResultId": { + "format": "uuid", + "type": "string" + }, + "startTime": { + "format": "date-time", + "type": "string" + }, + "endTime": { + "format": "date-time", + "type": "string" + }, + "status": { + "enum": [ + "Accepted", + "InProgress", + "TransientFailure", + "Succeeded", + "Failed", + "Canceled" + ], + "type": "string", + "x-ms-enum": { + "name": "OperationStatus", + "modelAsString": true + } + }, + "error": { + "allOf": [ + { + "$ref": "#/definitions/ErrorInfo" + } + ] + } + } + }, + "Notification": { + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "code": { + "format": "int32", + "type": "integer" + } + } + }, + "ScanDiagnostics": { + "type": "object", + "properties": { + "notifications": { + "type": "array", + "items": { + "$ref": "#/definitions/Notification" + } + }, + "exceptionCountMap": { + "type": "object", + "additionalProperties": { + "format": "int32", + "type": "integer" + }, + "readOnly": true + } + } + }, + "ScanResult": { + "type": "object", + "properties": { + "parentId": { + "type": "string", + "readOnly": true + }, + "id": { + "type": "string", + "readOnly": true + }, + "resourceId": { + "type": "string", + "readOnly": true + }, + "status": { + "type": "string", + "readOnly": true + }, + "assetsDiscovered": { + "format": "int64", + "type": "integer", + "readOnly": true + }, + "assetsClassified": { + "format": "int64", + "type": "integer", + "readOnly": true + }, + "diagnostics": { + "allOf": [ + { + "$ref": "#/definitions/ScanDiagnostics" + } + ], + "readOnly": true + }, + "startTime": { + "format": "date-time", + "type": "string", + "readOnly": true + }, + "queuedTime": { + "format": "date-time", + "type": "string", + "readOnly": true + }, + "pipelineStartTime": { + "format": "date-time", + "type": "string", + "readOnly": true + }, + "endTime": { + "format": "date-time", + "type": "string", + "readOnly": true + }, + "scanRulesetVersion": { + "format": "int32", + "type": "integer", + "readOnly": true + }, + "scanRulesetType": { + "enum": [ + "Custom", + "System" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ScanRulesetType", + "modelAsString": true + } + }, + "scanLevelType": { + "enum": [ + "Full", + "Incremental" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ScanLevelType", + "modelAsString": true + } + }, + "errorMessage": { + "type": "string", + "readOnly": true + }, + "error": { + "allOf": [ + { + "$ref": "#/definitions/ErrorModel" + } + ], + "readOnly": true + }, + "runType": { + "type": "string", + "readOnly": true + }, + "dataSourceType": { + "enum": [ + "None", + "AzureSubscription", + "AzureResourceGroup", + "AzureSynapseWorkspace", + "AzureSynapse", + "AdlsGen1", + "AdlsGen2", + "AmazonAccount", + "AmazonS3", + "AmazonSql", + "AzureCosmosDb", + "AzureDataExplorer", + "AzureFileService", + "AzureSqlDatabase", + "AmazonPostgreSql", + "AzurePostgreSql", + "SqlServerDatabase", + "AzureSqlDatabaseManagedInstance", + "AzureSqlDataWarehouse", + "AzureMySql", + "AzureStorage", + "Teradata", + "Oracle", + "SapS4Hana", + "SapEcc", + "PowerBI" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "DataSourceType", + "modelAsString": true + } + } + } + }, + "Scan": { + "required": [ + "kind" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "kind": { + "enum": [ + "AzureSubscriptionCredential", + "AzureSubscriptionMsi", + "AzureResourceGroupCredential", + "AzureResourceGroupMsi", + "AzureSynapseWorkspaceCredential", + "AzureSynapseWorkspaceMsi", + "AzureSynapseCredential", + "AzureSynapseMsi", + "AdlsGen1Credential", + "AdlsGen1Msi", + "AdlsGen2Credential", + "AdlsGen2Msi", + "AmazonAccountCredential", + "AmazonS3Credential", + "AmazonS3RoleARN", + "AmazonSqlCredential", + "AzureCosmosDbCredential", + "AzureDataExplorerCredential", + "AzureDataExplorerMsi", + "AzureFileServiceCredential", + "AzureSqlDatabaseCredential", + "AzureSqlDatabaseMsi", + "AmazonPostgreSqlCredential", + "AzurePostgreSqlCredential", + "SqlServerDatabaseCredential", + "AzureSqlDatabaseManagedInstanceCredential", + "AzureSqlDatabaseManagedInstanceMsi", + "AzureSqlDataWarehouseCredential", + "AzureSqlDataWarehouseMsi", + "AzureMySqlCredential", + "AzureStorageCredential", + "AzureStorageMsi", + "TeradataTeradataCredential", + "TeradataTeradataUserPass", + "TeradataUserPass", + "OracleOracleCredential", + "OracleOracleUserPass", + "SapS4HanaSapS4HanaCredential", + "SapS4HanaSapS4HanaUserPass", + "SapEccSapEccCredential", + "SapEccSapEccUserPass", + "PowerBIDelegated", + "PowerBIMsi" + ], + "type": "string", + "x-ms-enum": { + "name": "ScanAuthorizationType", + "modelAsString": true + } + }, + "scanResults": { + "type": "array", + "items": { + "$ref": "#/definitions/ScanResult" + }, + "readOnly": true + } + }, + "discriminator": "kind" + }, + "DataSource": { + "required": [ + "kind" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "kind": { + "enum": [ + "None", + "AzureSubscription", + "AzureResourceGroup", + "AzureSynapseWorkspace", + "AzureSynapse", + "AdlsGen1", + "AdlsGen2", + "AmazonAccount", + "AmazonS3", + "AmazonSql", + "AzureCosmosDb", + "AzureDataExplorer", + "AzureFileService", + "AzureSqlDatabase", + "AmazonPostgreSql", + "AzurePostgreSql", + "SqlServerDatabase", + "AzureSqlDatabaseManagedInstance", + "AzureSqlDataWarehouse", + "AzureMySql", + "AzureStorage", + "Teradata", + "Oracle", + "SapS4Hana", + "SapEcc", + "PowerBI" + ], + "type": "string", + "x-ms-enum": { + "name": "DataSourceType", + "modelAsString": true + } + }, + "scans": { + "type": "array", + "items": { + "$ref": "#/definitions/Scan" + }, + "readOnly": true + } + }, + "discriminator": "kind" + }, + "DataSourceList": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DataSource" + } + }, + "nextLink": { + "type": "string" + }, + "count": { + "format": "int64", + "type": "integer" + } + } + }, + "FilterProperties": { + "type": "object", + "properties": { + "excludeUriPrefixes": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "includeUriPrefixes": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "Filter": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/FilterProperties" + } + ] + } + } + }, + "ScanList": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Scan" + } + }, + "nextLink": { + "type": "string" + }, + "count": { + "format": "int64", + "type": "integer" + } + } + }, + "ScanHistoryList": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ScanResult" + } + }, + "nextLink": { + "type": "string" + }, + "count": { + "format": "int64", + "type": "integer" + } + } + }, + "VersionedScanRuleset": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "scanRulesetType": { + "enum": [ + "Custom", + "System" + ], + "type": "string", + "x-ms-enum": { + "name": "ScanRulesetType", + "modelAsString": true + } + }, + "status": { + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ScanRulesetStatus", + "modelAsString": true + } + }, + "version": { + "format": "int32", + "type": "integer", + "readOnly": true + } + } + }, + "ScanRuleset": { + "required": [ + "kind" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/VersionedScanRuleset" + } + ], + "properties": { + "kind": { + "enum": [ + "None", + "AzureSubscription", + "AzureResourceGroup", + "AzureSynapseWorkspace", + "AzureSynapse", + "AdlsGen1", + "AdlsGen2", + "AmazonAccount", + "AmazonS3", + "AmazonSql", + "AzureCosmosDb", + "AzureDataExplorer", + "AzureFileService", + "AzureSqlDatabase", + "AmazonPostgreSql", + "AzurePostgreSql", + "SqlServerDatabase", + "AzureSqlDatabaseManagedInstance", + "AzureSqlDataWarehouse", + "AzureMySql", + "AzureStorage", + "Teradata", + "Oracle", + "SapS4Hana", + "SapEcc", + "PowerBI" + ], + "type": "string", + "x-ms-enum": { + "name": "DataSourceType", + "modelAsString": true + } + } + }, + "discriminator": "kind" + }, + "ScanRulesetList": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ScanRuleset" + } + }, + "nextLink": { + "type": "string" + }, + "count": { + "format": "int64", + "type": "integer" + } + } + }, + "SystemScanRuleset": { + "required": [ + "kind" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/VersionedScanRuleset" + } + ], + "properties": { + "kind": { + "enum": [ + "None", + "AzureSubscription", + "AzureResourceGroup", + "AzureSynapseWorkspace", + "AzureSynapse", + "AdlsGen1", + "AdlsGen2", + "AmazonAccount", + "AmazonS3", + "AmazonSql", + "AzureCosmosDb", + "AzureDataExplorer", + "AzureFileService", + "AzureSqlDatabase", + "AmazonPostgreSql", + "AzurePostgreSql", + "SqlServerDatabase", + "AzureSqlDatabaseManagedInstance", + "AzureSqlDataWarehouse", + "AzureMySql", + "AzureStorage", + "Teradata", + "Oracle", + "SapS4Hana", + "SapEcc", + "PowerBI" + ], + "type": "string", + "x-ms-enum": { + "name": "DataSourceType", + "modelAsString": true + } + } + }, + "discriminator": "kind" + }, + "SystemScanRulesetList": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SystemScanRuleset" + } + }, + "nextLink": { + "type": "string" + }, + "count": { + "format": "int64", + "type": "integer" + } + } + }, + "RecurrenceScheduleOccurrence": { + "type": "object", + "properties": { + "additionalProperties": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "day": { + "enum": [ + "Sunday", + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday" + ], + "type": "string", + "x-ms-enum": { + "name": "DayOfWeek", + "modelAsString": true + } + }, + "occurrence": { + "format": "int32", + "type": "integer" + } + } + }, + "RecurrenceSchedule": { + "type": "object", + "properties": { + "additionalProperties": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "minutes": { + "type": "array", + "items": { + "format": "int32", + "type": "integer" + } + }, + "hours": { + "type": "array", + "items": { + "format": "int32", + "type": "integer" + } + }, + "weekDays": { + "type": "array", + "items": { + "enum": [ + "Sunday", + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday" + ], + "type": "string", + "x-ms-enum": { + "name": "DaysOfWeek", + "modelAsString": true + } + } + }, + "monthDays": { + "type": "array", + "items": { + "format": "int32", + "type": "integer" + } + }, + "monthlyOccurrences": { + "type": "array", + "items": { + "$ref": "#/definitions/RecurrenceScheduleOccurrence" + } + } + } + }, + "TriggerRecurrence": { + "type": "object", + "properties": { + "frequency": { + "enum": [ + "Week", + "Month" + ], + "type": "string", + "x-ms-enum": { + "name": "TriggerFrequency", + "modelAsString": true + } + }, + "interval": { + "format": "int32", + "type": "integer" + }, + "startTime": { + "format": "date-time", + "type": "string" + }, + "endTime": { + "format": "date-time", + "type": "string" + }, + "schedule": { + "allOf": [ + { + "$ref": "#/definitions/RecurrenceSchedule" + } + ] + }, + "timeZone": { + "type": "string" + } + } + }, + "TriggerProperties": { + "type": "object", + "properties": { + "recurrence": { + "allOf": [ + { + "$ref": "#/definitions/TriggerRecurrence" + } + ] + }, + "recurrenceInterval": { + "type": "string" + }, + "createdAt": { + "format": "date-time", + "type": "string", + "readOnly": true + }, + "lastModifiedAt": { + "format": "date-time", + "type": "string", + "readOnly": true + }, + "lastScheduled": { + "format": "date-time", + "type": "string", + "readOnly": true + }, + "scanLevel": { + "enum": [ + "Full", + "Incremental" + ], + "type": "string", + "x-ms-enum": { + "name": "ScanLevelType", + "modelAsString": true + } + }, + "incrementalScanStartTime": { + "format": "date-time", + "type": "string" + } + } + }, + "Trigger": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/TriggerProperties" + } + ] + } + } + }, + "SystemClassificationRuleProperties": { + "type": "object", + "properties": { + "description": { + "type": "string" + }, + "version": { + "format": "int32", + "type": "integer", + "readOnly": true + }, + "classificationName": { + "type": "string" + }, + "ruleStatus": { + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "ClassificationRuleStatus", + "modelAsString": true + } + }, + "createdAt": { + "format": "date-time", + "type": "string", + "readOnly": true + }, + "lastModifiedAt": { + "format": "date-time", + "type": "string", + "readOnly": true + } + } + }, + "SystemClassificationRule": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ClassificationRule" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/SystemClassificationRuleProperties" + } + ] + } + }, + "x-ms-discriminator-value": "System" + }, + "ClassificationRulePattern": { + "required": [ + "kind" + ], + "type": "object", + "properties": { + "kind": { + "enum": [ + "Regex" + ], + "type": "string", + "x-ms-enum": { + "name": "ClassificationRulePatternType", + "modelAsString": true + } + } + }, + "discriminator": "kind" + }, + "CustomClassificationRuleProperties": { + "type": "object", + "properties": { + "minimumPercentageMatch": { + "format": "double", + "type": "number" + }, + "classificationAction": { + "enum": [ + "Keep", + "Delete" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ClassificationAction", + "modelAsString": true + } + }, + "dataPatterns": { + "type": "array", + "items": { + "$ref": "#/definitions/ClassificationRulePattern" + } + }, + "columnPatterns": { + "type": "array", + "items": { + "$ref": "#/definitions/ClassificationRulePattern" + } + }, + "description": { + "type": "string" + }, + "version": { + "format": "int32", + "type": "integer", + "readOnly": true + }, + "classificationName": { + "type": "string" + }, + "ruleStatus": { + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "ClassificationRuleStatus", + "modelAsString": true + } + }, + "createdAt": { + "format": "date-time", + "type": "string", + "readOnly": true + }, + "lastModifiedAt": { + "format": "date-time", + "type": "string", + "readOnly": true + } + } + }, + "CustomClassificationRule": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ClassificationRule" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/CustomClassificationRuleProperties" + } + ] + } + }, + "x-ms-discriminator-value": "Custom" + }, + "RegexClassificationRulePattern": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ClassificationRulePattern" + } + ], + "properties": { + "pattern": { + "type": "string" + } + }, + "x-ms-discriminator-value": "Regex" + }, + "DataSourceProperties": { + "type": "object", + "properties": { + "createdAt": { + "format": "date-time", + "type": "string", + "readOnly": true + }, + "lastModifiedAt": { + "format": "date-time", + "type": "string", + "readOnly": true + } + } + }, + "AzureSubscriptionProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSourceProperties" + } + ], + "properties": { + "subscriptionId": { + "type": "string" + } + } + }, + "AzureSubscriptionDataSource": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSource" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureSubscriptionProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AzureSubscription" + }, + "AzureResourceGroupProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSourceProperties" + } + ], + "properties": { + "subscriptionId": { + "type": "string" + }, + "resourceGroup": { + "type": "string" + } + } + }, + "AzureResourceGroupDataSource": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSource" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureResourceGroupProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AzureResourceGroup" + }, + "AzureDataSourceProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSourceProperties" + } + ], + "properties": { + "resourceGroup": { + "type": "string" + }, + "subscriptionId": { + "type": "string" + }, + "location": { + "type": "string" + }, + "resourceName": { + "type": "string" + } + } + }, + "AzureSynapseWorkspaceProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureDataSourceProperties" + } + ], + "properties": { + "dedicatedSqlEndpoint": { + "type": "string" + }, + "serverlessSqlEndpoint": { + "type": "string" + } + } + }, + "AzureSynapseWorkspaceDataSource": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSource" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureSynapseWorkspaceProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AzureSynapseWorkspace" + }, + "AzureSynapseProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureDataSourceProperties" + } + ], + "properties": { + "sqlEndpoint": { + "type": "string" + }, + "sqlOnDemandEndpoint": { + "type": "string" + } + } + }, + "AzureSynapseDataSource": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSource" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureSynapseProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AzureSynapse" + }, + "AdlsGen1Properties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureDataSourceProperties" + } + ], + "properties": { + "endpoint": { + "type": "string" + } + } + }, + "AdlsGen1DataSource": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSource" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AdlsGen1Properties" + } + ] + } + }, + "x-ms-discriminator-value": "AdlsGen1" + }, + "AdlsGen2Properties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureDataSourceProperties" + } + ], + "properties": { + "endpoint": { + "type": "string" + } + } + }, + "AdlsGen2DataSource": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSource" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AdlsGen2Properties" + } + ] + } + }, + "x-ms-discriminator-value": "AdlsGen2" + }, + "AmazonAccountProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSourceProperties" + } + ], + "properties": { + "awsAccountId": { + "type": "string" + }, + "roleARN": { + "type": "string" + } + } + }, + "AmazonAccountDataSource": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSource" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AmazonAccountProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AmazonAccount" + }, + "AmazonS3Properties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSourceProperties" + } + ], + "properties": { + "serviceUrl": { + "type": "string" + }, + "roleARN": { + "type": "string" + } + } + }, + "AmazonS3DataSource": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSource" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AmazonS3Properties" + } + ] + } + }, + "x-ms-discriminator-value": "AmazonS3" + }, + "AmazonSqlProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSourceProperties" + } + ], + "properties": { + "serverEndpoint": { + "type": "string" + } + } + }, + "AmazonSqlDataSource": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSource" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AmazonSqlProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AmazonSql" + }, + "AzureCosmosDbProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureDataSourceProperties" + } + ], + "properties": { + "accountUri": { + "type": "string" + } + } + }, + "AzureCosmosDbDataSource": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSource" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureCosmosDbProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AzureCosmosDb" + }, + "AzureDataExplorerProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureDataSourceProperties" + } + ], + "properties": { + "endpoint": { + "type": "string" + } + } + }, + "AzureDataExplorerDataSource": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSource" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureDataExplorerProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AzureDataExplorer" + }, + "AzureFileServiceProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureDataSourceProperties" + } + ], + "properties": { + "endpoint": { + "type": "string" + } + } + }, + "AzureFileServiceDataSource": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSource" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureFileServiceProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AzureFileService" + }, + "AzureSqlDatabaseProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureDataSourceProperties" + } + ], + "properties": { + "serverEndpoint": { + "type": "string" + } + } + }, + "AzureSqlDatabaseDataSource": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSource" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureSqlDatabaseProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AzureSqlDatabase" + }, + "AmazonPostgreSqlProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSourceProperties" + } + ], + "properties": { + "serverEndpoint": { + "type": "string" + }, + "port": { + "type": "string" + } + } + }, + "AmazonPostgreSqlDataSource": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSource" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AmazonPostgreSqlProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AmazonPostgreSql" + }, + "AzurePostgreSqlProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureDataSourceProperties" + } + ], + "properties": { + "serverEndpoint": { + "type": "string" + }, + "port": { + "format": "int32", + "type": "integer" + } + } + }, + "AzurePostgreSqlDataSource": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSource" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzurePostgreSqlProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AzurePostgreSql" + }, + "SqlServerDatabaseProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureDataSourceProperties" + } + ], + "properties": { + "serverEndpoint": { + "type": "string" + } + } + }, + "SqlServerDatabaseDataSource": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSource" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/SqlServerDatabaseProperties" + } + ] + } + }, + "x-ms-discriminator-value": "SqlServerDatabase" + }, + "AzureSqlDatabaseManagedInstanceProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureDataSourceProperties" + } + ], + "properties": { + "serverEndpoint": { + "type": "string" + } + } + }, + "AzureSqlDatabaseManagedInstanceDataSource": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSource" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureSqlDatabaseManagedInstanceProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AzureSqlDatabaseManagedInstance" + }, + "AzureSqlDataWarehouseProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureDataSourceProperties" + } + ], + "properties": { + "serverEndpoint": { + "type": "string" + } + } + }, + "AzureSqlDataWarehouseDataSource": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSource" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureSqlDataWarehouseProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AzureSqlDataWarehouse" + }, + "AzureMySqlProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureDataSourceProperties" + } + ], + "properties": { + "serverEndpoint": { + "type": "string" + }, + "port": { + "format": "int32", + "type": "integer" + } + } + }, + "AzureMySqlDataSource": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSource" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureMySqlProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AzureMySql" + }, + "AzureStorageProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureDataSourceProperties" + } + ], + "properties": { + "endpoint": { + "type": "string" + } + } + }, + "AzureStorageDataSource": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSource" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureStorageProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AzureStorage" + }, + "TeradataProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSourceProperties" + } + ], + "properties": { + "host": { + "type": "string" + } + } + }, + "TeradataDataSource": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSource" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/TeradataProperties" + } + ] + } + }, + "x-ms-discriminator-value": "Teradata" + }, + "OracleProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSourceProperties" + } + ], + "properties": { + "host": { + "type": "string" + }, + "port": { + "type": "string" + }, + "service": { + "type": "string" + } + } + }, + "OracleDataSource": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSource" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/OracleProperties" + } + ] + } + }, + "x-ms-discriminator-value": "Oracle" + }, + "SapS4HanaProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSourceProperties" + } + ], + "properties": { + "applicationServer": { + "type": "string" + }, + "systemNumber": { + "type": "string" + } + } + }, + "SapS4HanaDataSource": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSource" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/SapS4HanaProperties" + } + ] + } + }, + "x-ms-discriminator-value": "SapS4Hana" + }, + "SapEccProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSourceProperties" + } + ], + "properties": { + "applicationServer": { + "type": "string" + }, + "systemNumber": { + "type": "string" + } + } + }, + "SapEccDataSource": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSource" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/SapEccProperties" + } + ] + } + }, + "x-ms-discriminator-value": "SapEcc" + }, + "PowerBIProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSourceProperties" + } + ], + "properties": { + "tenant": { + "type": "string" + } + } + }, + "PowerBIDataSource": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSource" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/PowerBIProperties" + } + ] + } + }, + "x-ms-discriminator-value": "PowerBI" + }, + "ScanRulesetProperties": { + "type": "object", + "properties": { + "createdAt": { + "format": "date-time", + "type": "string", + "readOnly": true + }, + "description": { + "type": "string" + }, + "excludedSystemClassifications": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "includedCustomClassificationRuleNames": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "lastModifiedAt": { + "format": "date-time", + "type": "string", + "readOnly": true + } + } + }, + "AzureSubscriptionScanRulesetProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanRulesetProperties" + } + ] + }, + "AzureSubscriptionScanRuleset": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanRuleset" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureSubscriptionScanRulesetProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AzureSubscription" + }, + "AzureResourceGroupScanRulesetProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanRulesetProperties" + } + ] + }, + "AzureResourceGroupScanRuleset": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanRuleset" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureResourceGroupScanRulesetProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AzureResourceGroup" + }, + "AzureSynapseWorkspaceScanRulesetProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanRulesetProperties" + } + ] + }, + "AzureSynapseWorkspaceScanRuleset": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanRuleset" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureSynapseWorkspaceScanRulesetProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AzureSynapseWorkspace" + }, + "AzureSynapseScanRulesetProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanRulesetProperties" + } + ] + }, + "AzureSynapseScanRuleset": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanRuleset" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureSynapseScanRulesetProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AzureSynapse" + }, + "CustomFileType": { + "type": "object", + "properties": { + "builtInType": { + "enum": [ + "AVRO", + "ORC", + "PARQUET", + "JSON", + "TXT", + "XML", + "Documents", + "CSV", + "PSV", + "SSV", + "TSV", + "GZ", + "DOC", + "DOCM", + "DOCX", + "DOT", + "ODP", + "ODS", + "ODT", + "PDF", + "POT", + "PPS", + "PPSX", + "PPT", + "PPTM", + "PPTX", + "XLC", + "XLS", + "XLSB", + "XLSM", + "XLSX", + "XLT" + ], + "type": "string", + "x-ms-enum": { + "name": "FileExtensionsType", + "modelAsString": true + } + }, + "customDelimiter": { + "type": "string" + } + } + }, + "CustomFileExtension": { + "type": "object", + "properties": { + "customFileType": { + "allOf": [ + { + "$ref": "#/definitions/CustomFileType" + } + ] + }, + "description": { + "type": "string" + }, + "enabled": { + "type": "boolean" + }, + "fileExtension": { + "type": "string" + } + } + }, + "ScanningRule": { + "type": "object", + "properties": { + "fileExtensions": { + "uniqueItems": true, + "type": "array", + "items": { + "enum": [ + "AVRO", + "ORC", + "PARQUET", + "JSON", + "TXT", + "XML", + "Documents", + "CSV", + "PSV", + "SSV", + "TSV", + "GZ", + "DOC", + "DOCM", + "DOCX", + "DOT", + "ODP", + "ODS", + "ODT", + "PDF", + "POT", + "PPS", + "PPSX", + "PPT", + "PPTM", + "PPTX", + "XLC", + "XLS", + "XLSB", + "XLSM", + "XLSX", + "XLT" + ], + "type": "string", + "x-ms-enum": { + "name": "FileExtensionsType", + "modelAsString": true + } + } + }, + "customFileExtensions": { + "uniqueItems": true, + "type": "array", + "items": { + "$ref": "#/definitions/CustomFileExtension" + } + } + } + }, + "ScanningRuleScanRulesetProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanRulesetProperties" + } + ], + "properties": { + "scanningRule": { + "allOf": [ + { + "$ref": "#/definitions/ScanningRule" + } + ] + } + } + }, + "AdlsGen1ScanRulesetProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanningRuleScanRulesetProperties" + } + ] + }, + "AdlsGen1ScanRuleset": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanRuleset" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AdlsGen1ScanRulesetProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AdlsGen1" + }, + "AdlsGen2ScanRulesetProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanningRuleScanRulesetProperties" + } + ] + }, + "AdlsGen2ScanRuleset": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanRuleset" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AdlsGen2ScanRulesetProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AdlsGen2" + }, + "AmazonAccountScanRulesetProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanRulesetProperties" + } + ] + }, + "AmazonAccountScanRuleset": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanRuleset" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AmazonAccountScanRulesetProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AmazonAccount" + }, + "AmazonS3ScanRulesetProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanningRuleScanRulesetProperties" + } + ] + }, + "AmazonS3ScanRuleset": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanRuleset" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AmazonS3ScanRulesetProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AmazonS3" + }, + "AmazonSqlScanRulesetProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanRulesetProperties" + } + ] + }, + "AmazonSqlScanRuleset": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanRuleset" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AmazonSqlScanRulesetProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AmazonSql" + }, + "AzureCosmosDbScanRulesetProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanRulesetProperties" + } + ] + }, + "AzureCosmosDbScanRuleset": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanRuleset" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureCosmosDbScanRulesetProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AzureCosmosDb" + }, + "AzureDataExplorerScanRulesetProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanRulesetProperties" + } + ] + }, + "AzureDataExplorerScanRuleset": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanRuleset" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureDataExplorerScanRulesetProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AzureDataExplorer" + }, + "AzureFileServiceScanRulesetProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanningRuleScanRulesetProperties" + } + ] + }, + "AzureFileServiceScanRuleset": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanRuleset" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureFileServiceScanRulesetProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AzureFileService" + }, + "AzureSqlDatabaseScanRulesetProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanRulesetProperties" + } + ] + }, + "AzureSqlDatabaseScanRuleset": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanRuleset" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureSqlDatabaseScanRulesetProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AzureSqlDatabase" + }, + "AmazonPostgreSqlScanRulesetProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanRulesetProperties" + } + ] + }, + "AmazonPostgreSqlScanRuleset": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanRuleset" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AmazonPostgreSqlScanRulesetProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AmazonPostgreSql" + }, + "AzurePostgreSqlScanRulesetProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanRulesetProperties" + } + ] + }, + "AzurePostgreSqlScanRuleset": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanRuleset" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzurePostgreSqlScanRulesetProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AzurePostgreSql" + }, + "SqlServerDatabaseScanRulesetProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanRulesetProperties" + } + ] + }, + "SqlServerDatabaseScanRuleset": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanRuleset" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/SqlServerDatabaseScanRulesetProperties" + } + ] + } + }, + "x-ms-discriminator-value": "SqlServerDatabase" + }, + "AzureSqlDatabaseManagedInstanceScanRulesetProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanRulesetProperties" + } + ] + }, + "AzureSqlDatabaseManagedInstanceScanRuleset": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanRuleset" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureSqlDatabaseManagedInstanceScanRulesetProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AzureSqlDatabaseManagedInstance" + }, + "AzureSqlDataWarehouseScanRulesetProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanRulesetProperties" + } + ] + }, + "AzureSqlDataWarehouseScanRuleset": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanRuleset" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureSqlDataWarehouseScanRulesetProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AzureSqlDataWarehouse" + }, + "AzureMySqlScanRulesetProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanRulesetProperties" + } + ] + }, + "AzureMySqlScanRuleset": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanRuleset" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureMySqlScanRulesetProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AzureMySql" + }, + "AzureStorageScanRulesetProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanningRuleScanRulesetProperties" + } + ] + }, + "AzureStorageScanRuleset": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanRuleset" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureStorageScanRulesetProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AzureStorage" + }, + "TeradataScanRulesetProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanRulesetProperties" + } + ] + }, + "TeradataScanRuleset": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanRuleset" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/TeradataScanRulesetProperties" + } + ] + } + }, + "x-ms-discriminator-value": "Teradata" + }, + "OracleScanRulesetProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanRulesetProperties" + } + ] + }, + "OracleScanRuleset": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanRuleset" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/OracleScanRulesetProperties" + } + ] + } + }, + "x-ms-discriminator-value": "Oracle" + }, + "SapS4HanaScanRulesetProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanRulesetProperties" + } + ] + }, + "SapS4HanaScanRuleset": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanRuleset" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/SapS4HanaScanRulesetProperties" + } + ] + } + }, + "x-ms-discriminator-value": "SapS4Hana" + }, + "SapEccScanRulesetProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanRulesetProperties" + } + ] + }, + "SapEccScanRuleset": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanRuleset" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/SapEccScanRulesetProperties" + } + ] + } + }, + "x-ms-discriminator-value": "SapEcc" + }, + "PowerBIScanRulesetProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanRulesetProperties" + } + ] + }, + "PowerBIScanRuleset": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanRuleset" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/PowerBIScanRulesetProperties" + } + ] + } + }, + "x-ms-discriminator-value": "PowerBI" + }, + "ResourceNameFilter": { + "type": "object", + "properties": { + "excludePrefixes": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "includePrefixes": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "resources": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "CredentialReference": { + "type": "object", + "properties": { + "referenceName": { + "type": "string" + }, + "credentialType": { + "enum": [ + "AccountKey", + "ServicePrincipal", + "BasicAuth", + "SqlAuth", + "AmazonARN" + ], + "type": "string", + "x-ms-enum": { + "name": "CredentialType", + "modelAsString": true + } + } + } + }, + "ResourceTypeFilter": { + "type": "object", + "properties": { + "scanRulesetName": { + "type": "string" + }, + "scanRulesetType": { + "enum": [ + "Custom", + "System" + ], + "type": "string", + "x-ms-enum": { + "name": "ScanRulesetType", + "modelAsString": true + } + }, + "resourceNameFilter": { + "allOf": [ + { + "$ref": "#/definitions/ResourceNameFilter" + } + ] + }, + "credential": { + "allOf": [ + { + "$ref": "#/definitions/CredentialReference" + } + ] + } + } + }, + "ConnectedVia": { + "type": "object", + "properties": { + "referenceName": { + "type": "string" + } + } + }, + "ScanProperties": { + "type": "object", + "properties": { + "scanRulesetName": { + "type": "string" + }, + "scanRulesetType": { + "enum": [ + "Custom", + "System" + ], + "type": "string", + "x-ms-enum": { + "name": "ScanRulesetType", + "modelAsString": true + } + }, + "workers": { + "format": "int32", + "type": "integer" + }, + "createdAt": { + "format": "date-time", + "type": "string", + "readOnly": true + }, + "lastModifiedAt": { + "format": "date-time", + "type": "string", + "readOnly": true + }, + "connectedVia": { + "allOf": [ + { + "$ref": "#/definitions/ConnectedVia" + } + ] + } + } + }, + "ExpandingResourceScanProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanProperties" + } + ], + "properties": { + "resourceTypes": { + "type": "object", + "properties": { + "None": { + "$ref": "#/definitions/ResourceTypeFilter" + }, + "AzureSubscription": { + "$ref": "#/definitions/ResourceTypeFilter" + }, + "AzureResourceGroup": { + "$ref": "#/definitions/ResourceTypeFilter" + }, + "AzureSynapseWorkspace": { + "$ref": "#/definitions/ResourceTypeFilter" + }, + "AzureSynapse": { + "$ref": "#/definitions/ResourceTypeFilter" + }, + "AdlsGen1": { + "$ref": "#/definitions/ResourceTypeFilter" + }, + "AdlsGen2": { + "$ref": "#/definitions/ResourceTypeFilter" + }, + "AmazonAccount": { + "$ref": "#/definitions/ResourceTypeFilter" + }, + "AmazonS3": { + "$ref": "#/definitions/ResourceTypeFilter" + }, + "AmazonSql": { + "$ref": "#/definitions/ResourceTypeFilter" + }, + "AzureCosmosDb": { + "$ref": "#/definitions/ResourceTypeFilter" + }, + "AzureDataExplorer": { + "$ref": "#/definitions/ResourceTypeFilter" + }, + "AzureFileService": { + "$ref": "#/definitions/ResourceTypeFilter" + }, + "AzureSqlDatabase": { + "$ref": "#/definitions/ResourceTypeFilter" + }, + "AmazonPostgreSql": { + "$ref": "#/definitions/ResourceTypeFilter" + }, + "AzurePostgreSql": { + "$ref": "#/definitions/ResourceTypeFilter" + }, + "SqlServerDatabase": { + "$ref": "#/definitions/ResourceTypeFilter" + }, + "AzureSqlDatabaseManagedInstance": { + "$ref": "#/definitions/ResourceTypeFilter" + }, + "AzureSqlDataWarehouse": { + "$ref": "#/definitions/ResourceTypeFilter" + }, + "AzureMySql": { + "$ref": "#/definitions/ResourceTypeFilter" + }, + "AzureStorage": { + "$ref": "#/definitions/ResourceTypeFilter" + }, + "Teradata": { + "$ref": "#/definitions/ResourceTypeFilter" + }, + "Oracle": { + "$ref": "#/definitions/ResourceTypeFilter" + }, + "SapS4Hana": { + "$ref": "#/definitions/ResourceTypeFilter" + }, + "SapEcc": { + "$ref": "#/definitions/ResourceTypeFilter" + }, + "PowerBI": { + "$ref": "#/definitions/ResourceTypeFilter" + } + } + }, + "credential": { + "allOf": [ + { + "$ref": "#/definitions/CredentialReference" + } + ] + } + } + }, + "AzureSubscriptionCredentialScanProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ExpandingResourceScanProperties" + } + ] + }, + "AzureSubscriptionCredentialScan": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Scan" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureSubscriptionCredentialScanProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AzureSubscriptionCredential" + }, + "AzureSubscriptionMsiScanProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ExpandingResourceScanProperties" + } + ] + }, + "AzureSubscriptionMsiScan": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Scan" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureSubscriptionMsiScanProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AzureSubscriptionMsi" + }, + "AzureResourceGroupCredentialScanProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ExpandingResourceScanProperties" + } + ] + }, + "AzureResourceGroupCredentialScan": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Scan" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureResourceGroupCredentialScanProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AzureResourceGroupCredential" + }, + "AzureResourceGroupMsiScanProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ExpandingResourceScanProperties" + } + ] + }, + "AzureResourceGroupMsiScan": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Scan" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureResourceGroupMsiScanProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AzureResourceGroupMsi" + }, + "AzureSynapseWorkspaceCredentialScanProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ExpandingResourceScanProperties" + } + ] + }, + "AzureSynapseWorkspaceCredentialScan": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Scan" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureSynapseWorkspaceCredentialScanProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AzureSynapseWorkspaceCredential" + }, + "AzureSynapseWorkspaceMsiScanProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ExpandingResourceScanProperties" + } + ] + }, + "AzureSynapseWorkspaceMsiScan": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Scan" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureSynapseWorkspaceMsiScanProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AzureSynapseWorkspaceMsi" + }, + "AzureSynapseCredentialScanProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ExpandingResourceScanProperties" + } + ] + }, + "AzureSynapseCredentialScan": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Scan" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureSynapseCredentialScanProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AzureSynapseCredential" + }, + "AzureSynapseMsiScanProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ExpandingResourceScanProperties" + } + ] + }, + "AzureSynapseMsiScan": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Scan" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureSynapseMsiScanProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AzureSynapseMsi" + }, + "AdlsGen1CredentialScanProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanProperties" + } + ], + "properties": { + "credential": { + "allOf": [ + { + "$ref": "#/definitions/CredentialReference" + } + ] + } + } + }, + "AdlsGen1CredentialScan": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Scan" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AdlsGen1CredentialScanProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AdlsGen1Credential" + }, + "AdlsGen1MsiScanProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanProperties" + } + ] + }, + "AdlsGen1MsiScan": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Scan" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AdlsGen1MsiScanProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AdlsGen1Msi" + }, + "AdlsGen2CredentialScanProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanProperties" + } + ], + "properties": { + "credential": { + "allOf": [ + { + "$ref": "#/definitions/CredentialReference" + } + ] + } + } + }, + "AdlsGen2CredentialScan": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Scan" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AdlsGen2CredentialScanProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AdlsGen2Credential" + }, + "AdlsGen2MsiScanProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanProperties" + } + ] + }, + "AdlsGen2MsiScan": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Scan" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AdlsGen2MsiScanProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AdlsGen2Msi" + }, + "AmazonAccountCredentialScanProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ExpandingResourceScanProperties" + } + ] + }, + "AmazonAccountCredentialScan": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Scan" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AmazonAccountCredentialScanProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AmazonAccountCredential" + }, + "AmazonS3CredentialScanProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanProperties" + } + ], + "properties": { + "credential": { + "allOf": [ + { + "$ref": "#/definitions/CredentialReference" + } + ] + }, + "roleARN": { + "type": "string" + } + } + }, + "AmazonS3CredentialScan": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Scan" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AmazonS3CredentialScanProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AmazonS3Credential" + }, + "AmazonS3RoleARNScanProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanProperties" + } + ], + "properties": { + "roleARN": { + "type": "string" + } + } + }, + "AmazonS3RoleARNScan": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Scan" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AmazonS3RoleARNScanProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AmazonS3RoleARN" + }, + "AmazonSqlCredentialScanProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanProperties" + } + ], + "properties": { + "credential": { + "allOf": [ + { + "$ref": "#/definitions/CredentialReference" + } + ] + }, + "serverEndpoint": { + "type": "string" + }, + "databaseName": { + "type": "string" + } + } + }, + "AmazonSqlCredentialScan": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Scan" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AmazonSqlCredentialScanProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AmazonSqlCredential" + }, + "AzureCosmosDbCredentialScanProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanProperties" + } + ], + "properties": { + "credential": { + "allOf": [ + { + "$ref": "#/definitions/CredentialReference" + } + ] + }, + "databaseName": { + "type": "string" + } + } + }, + "AzureCosmosDbCredentialScan": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Scan" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureCosmosDbCredentialScanProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AzureCosmosDbCredential" + }, + "AzureDataExplorerCredentialScanProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanProperties" + } + ], + "properties": { + "credential": { + "allOf": [ + { + "$ref": "#/definitions/CredentialReference" + } + ] + }, + "database": { + "type": "string" + } + } + }, + "AzureDataExplorerCredentialScan": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Scan" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureDataExplorerCredentialScanProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AzureDataExplorerCredential" + }, + "AzureDataExplorerMsiScanProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanProperties" + } + ], + "properties": { + "database": { + "type": "string" + } + } + }, + "AzureDataExplorerMsiScan": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Scan" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureDataExplorerMsiScanProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AzureDataExplorerMsi" + }, + "AzureFileServiceCredentialScanProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanProperties" + } + ], + "properties": { + "credential": { + "allOf": [ + { + "$ref": "#/definitions/CredentialReference" + } + ] + }, + "shareName": { + "type": "string" + } + } + }, + "AzureFileServiceCredentialScan": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Scan" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureFileServiceCredentialScanProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AzureFileServiceCredential" + }, + "AzureSqlScanProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanProperties" + } + ], + "properties": { + "serverEndpoint": { + "type": "string" + }, + "databaseName": { + "type": "string" + } + } + }, + "AzureSqlCredentialScanProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureSqlScanProperties" + } + ], + "properties": { + "credential": { + "allOf": [ + { + "$ref": "#/definitions/CredentialReference" + } + ] + } + } + }, + "AzureSqlDatabaseCredentialScanProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureSqlCredentialScanProperties" + } + ] + }, + "AzureSqlDatabaseCredentialScan": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Scan" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureSqlDatabaseCredentialScanProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AzureSqlDatabaseCredential" + }, + "AzureSqlDatabaseMsiScanProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureSqlScanProperties" + } + ] + }, + "AzureSqlDatabaseMsiScan": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Scan" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureSqlDatabaseMsiScanProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AzureSqlDatabaseMsi" + }, + "AmazonPostgreSqlCredentialScanProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanProperties" + } + ], + "properties": { + "credential": { + "allOf": [ + { + "$ref": "#/definitions/CredentialReference" + } + ] + }, + "serverEndpoint": { + "type": "string" + }, + "databaseName": { + "type": "string" + }, + "port": { + "type": "string" + } + } + }, + "AmazonPostgreSqlCredentialScan": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Scan" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AmazonPostgreSqlCredentialScanProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AmazonPostgreSqlCredential" + }, + "AzurePostgreSqlCredentialScanProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanProperties" + } + ], + "properties": { + "credential": { + "allOf": [ + { + "$ref": "#/definitions/CredentialReference" + } + ] + }, + "serverEndpoint": { + "type": "string" + }, + "databaseName": { + "type": "string" + }, + "port": { + "format": "int32", + "type": "integer" + }, + "sslMode": { + "format": "int32", + "type": "integer" + } + } + }, + "AzurePostgreSqlCredentialScan": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Scan" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzurePostgreSqlCredentialScanProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AzurePostgreSqlCredential" + }, + "SqlServerDatabaseCredentialScanProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureSqlCredentialScanProperties" + } + ] + }, + "SqlServerDatabaseCredentialScan": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Scan" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/SqlServerDatabaseCredentialScanProperties" + } + ] + } + }, + "x-ms-discriminator-value": "SqlServerDatabaseCredential" + }, + "AzureSqlDatabaseManagedInstanceCredentialScanProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureSqlCredentialScanProperties" + } + ] + }, + "AzureSqlDatabaseManagedInstanceCredentialScan": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Scan" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureSqlDatabaseManagedInstanceCredentialScanProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AzureSqlDatabaseManagedInstanceCredential" + }, + "AzureSqlDatabaseManagedInstanceMsiScanProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureSqlScanProperties" + } + ] + }, + "AzureSqlDatabaseManagedInstanceMsiScan": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Scan" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureSqlDatabaseManagedInstanceMsiScanProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AzureSqlDatabaseManagedInstanceMsi" + }, + "AzureSqlDataWarehouseCredentialScanProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureSqlCredentialScanProperties" + } + ] + }, + "AzureSqlDataWarehouseCredentialScan": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Scan" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureSqlDataWarehouseCredentialScanProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AzureSqlDataWarehouseCredential" + }, + "AzureSqlDataWarehouseMsiScanProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureSqlScanProperties" + } + ] + }, + "AzureSqlDataWarehouseMsiScan": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Scan" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureSqlDataWarehouseMsiScanProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AzureSqlDataWarehouseMsi" + }, + "AzureMySqlScanProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanProperties" + } + ], + "properties": { + "serverEndpoint": { + "type": "string" + }, + "port": { + "format": "int32", + "type": "integer" + }, + "databaseName": { + "type": "string" + }, + "credential": { + "allOf": [ + { + "$ref": "#/definitions/CredentialReference" + } + ] + } + } + }, + "AzureMySqlCredentialScanProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureMySqlScanProperties" + } + ] + }, + "AzureMySqlCredentialScan": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Scan" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureMySqlCredentialScanProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AzureMySqlCredential" + }, + "MitiScanProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanProperties" + } + ], + "properties": { + "maximumMemoryAllowedInGb": { + "type": "string" + }, + "mitiCache": { + "type": "string" + } + } + }, + "AzureStorageCredentialScanProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanProperties" + } + ], + "properties": { + "credential": { + "allOf": [ + { + "$ref": "#/definitions/CredentialReference" + } + ] + } + } + }, + "AzureStorageCredentialScan": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Scan" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureStorageCredentialScanProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AzureStorageCredential" + }, + "AzureStorageMsiScanProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanProperties" + } + ] + }, + "AzureStorageMsiScan": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Scan" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureStorageMsiScanProperties" + } + ] + } + }, + "x-ms-discriminator-value": "AzureStorageMsi" + }, + "TeradataTeradataCredentialScanProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/MitiScanProperties" + } + ], + "properties": { + "credential": { + "allOf": [ + { + "$ref": "#/definitions/CredentialReference" + } + ] + }, + "schema": { + "type": "string" + }, + "driverLocation": { + "type": "string" + } + } + }, + "TeradataTeradataCredentialScan": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Scan" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/TeradataTeradataCredentialScanProperties" + } + ] + } + }, + "x-ms-discriminator-value": "TeradataTeradataCredential" + }, + "TeradataUserPassScanProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanProperties" + } + ], + "properties": { + "username": { + "type": "string" + }, + "password": { + "type": "string" + } + } + }, + "TeradataUserPassScan": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Scan" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/TeradataUserPassScanProperties" + } + ] + } + }, + "x-ms-discriminator-value": "TeradataUserPass" + }, + "TeradataTeradataUserPassScanProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/MitiScanProperties" + } + ], + "properties": { + "username": { + "type": "string" + }, + "password": { + "type": "string" + }, + "schema": { + "type": "string" + }, + "driverLocation": { + "type": "string" + } + } + }, + "TeradataTeradataUserPassScan": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Scan" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/TeradataTeradataUserPassScanProperties" + } + ] + } + }, + "x-ms-discriminator-value": "TeradataTeradataUserPass" + }, + "OracleOracleCredentialScanProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/MitiScanProperties" + } + ], + "properties": { + "credential": { + "allOf": [ + { + "$ref": "#/definitions/CredentialReference" + } + ] + }, + "schema": { + "type": "string" + }, + "driverLocation": { + "type": "string" + } + } + }, + "OracleOracleCredentialScan": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Scan" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/OracleOracleCredentialScanProperties" + } + ] + } + }, + "x-ms-discriminator-value": "OracleOracleCredential" + }, + "OracleOracleUserPassScanProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/MitiScanProperties" + } + ], + "properties": { + "username": { + "type": "string" + }, + "password": { + "type": "string" + }, + "schema": { + "type": "string" + }, + "driverLocation": { + "type": "string" + } + } + }, + "OracleOracleUserPassScan": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Scan" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/OracleOracleUserPassScanProperties" + } + ] + } + }, + "x-ms-discriminator-value": "OracleOracleUserPass" + }, + "SapS4HanaSapS4HanaCredentialScanProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/MitiScanProperties" + } + ], + "properties": { + "clientId": { + "type": "string" + }, + "credential": { + "allOf": [ + { + "$ref": "#/definitions/CredentialReference" + } + ] + }, + "jCoLibraryPath": { + "type": "string" + } + } + }, + "SapS4HanaSapS4HanaCredentialScan": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Scan" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/SapS4HanaSapS4HanaCredentialScanProperties" + } + ] + } + }, + "x-ms-discriminator-value": "SapS4HanaSapS4HanaCredential" + }, + "SapS4HanaSapS4HanaUserPassScanProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/MitiScanProperties" + } + ], + "properties": { + "clientId": { + "type": "string" + }, + "username": { + "type": "string" + }, + "password": { + "type": "string" + }, + "jCoLibraryPath": { + "type": "string" + } + } + }, + "SapS4HanaSapS4HanaUserPassScan": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Scan" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/SapS4HanaSapS4HanaUserPassScanProperties" + } + ] + } + }, + "x-ms-discriminator-value": "SapS4HanaSapS4HanaUserPass" + }, + "SapEccSapEccCredentialScanProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/MitiScanProperties" + } + ], + "properties": { + "clientId": { + "type": "string" + }, + "credential": { + "allOf": [ + { + "$ref": "#/definitions/CredentialReference" + } + ] + }, + "jCoLibraryPath": { + "type": "string" + } + } + }, + "SapEccSapEccCredentialScan": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Scan" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/SapEccSapEccCredentialScanProperties" + } + ] + } + }, + "x-ms-discriminator-value": "SapEccSapEccCredential" + }, + "SapEccSapEccUserPassScanProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/MitiScanProperties" + } + ], + "properties": { + "clientId": { + "type": "string" + }, + "username": { + "type": "string" + }, + "password": { + "type": "string" + }, + "jCoLibraryPath": { + "type": "string" + } + } + }, + "SapEccSapEccUserPassScan": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Scan" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/SapEccSapEccUserPassScanProperties" + } + ] + } + }, + "x-ms-discriminator-value": "SapEccSapEccUserPass" + }, + "PowerBIDelegatedScanProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanProperties" + } + ], + "properties": { + "tenant": { + "type": "string" + }, + "authenticationType": { + "type": "string" + }, + "clientId": { + "type": "string" + }, + "userName": { + "type": "string" + }, + "password": { + "type": "string" + }, + "includePersonalWorkspaces": { + "type": "boolean" + } + } + }, + "PowerBIDelegatedScan": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Scan" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/PowerBIDelegatedScanProperties" + } + ] + } + }, + "x-ms-discriminator-value": "PowerBIDelegated" + }, + "PowerBIMsiScanProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScanProperties" + } + ], + "properties": { + "includePersonalWorkspaces": { + "type": "boolean" + } + } + }, + "PowerBIMsiScan": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Scan" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/PowerBIMsiScanProperties" + } + ] + } + }, + "x-ms-discriminator-value": "PowerBIMsi" + }, + "AzureSubscriptionSystemScanRuleset": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/SystemScanRuleset" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureSubscriptionScanRulesetProperties" + } + ] + } + }, + "x-ms-discriminator-value": "None" + }, + "AzureResourceGroupSystemScanRuleset": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/SystemScanRuleset" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureResourceGroupScanRulesetProperties" + } + ] + } + }, + "x-ms-discriminator-value": "None" + }, + "AzureSynapseWorkspaceSystemScanRuleset": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/SystemScanRuleset" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureSynapseWorkspaceScanRulesetProperties" + } + ] + } + }, + "x-ms-discriminator-value": "None" + }, + "AzureSynapseSystemScanRuleset": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/SystemScanRuleset" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureSynapseScanRulesetProperties" + } + ] + } + }, + "x-ms-discriminator-value": "None" + }, + "AdlsGen1SystemScanRuleset": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/SystemScanRuleset" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AdlsGen1ScanRulesetProperties" + } + ] + } + }, + "x-ms-discriminator-value": "None" + }, + "AdlsGen2SystemScanRuleset": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/SystemScanRuleset" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AdlsGen2ScanRulesetProperties" + } + ] + } + }, + "x-ms-discriminator-value": "None" + }, + "AmazonAccountSystemScanRuleset": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/SystemScanRuleset" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AmazonAccountScanRulesetProperties" + } + ] + } + }, + "x-ms-discriminator-value": "None" + }, + "AmazonS3SystemScanRuleset": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/SystemScanRuleset" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AmazonS3ScanRulesetProperties" + } + ] + } + }, + "x-ms-discriminator-value": "None" + }, + "AmazonSqlSystemScanRuleset": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/SystemScanRuleset" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AmazonSqlScanRulesetProperties" + } + ] + } + }, + "x-ms-discriminator-value": "None" + }, + "AzureCosmosDbSystemScanRuleset": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/SystemScanRuleset" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureCosmosDbScanRulesetProperties" + } + ] + } + }, + "x-ms-discriminator-value": "None" + }, + "AzureDataExplorerSystemScanRuleset": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/SystemScanRuleset" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureDataExplorerScanRulesetProperties" + } + ] + } + }, + "x-ms-discriminator-value": "None" + }, + "AzureFileServiceSystemScanRuleset": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/SystemScanRuleset" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureFileServiceScanRulesetProperties" + } + ] + } + }, + "x-ms-discriminator-value": "None" + }, + "AzureSqlDatabaseSystemScanRuleset": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/SystemScanRuleset" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureSqlDatabaseScanRulesetProperties" + } + ] + } + }, + "x-ms-discriminator-value": "None" + }, + "AmazonPostgreSqlSystemScanRuleset": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/SystemScanRuleset" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AmazonPostgreSqlScanRulesetProperties" + } + ] + } + }, + "x-ms-discriminator-value": "None" + }, + "AzurePostgreSqlSystemScanRuleset": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/SystemScanRuleset" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzurePostgreSqlScanRulesetProperties" + } + ] + } + }, + "x-ms-discriminator-value": "None" + }, + "SqlServerDatabaseSystemScanRuleset": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/SystemScanRuleset" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/SqlServerDatabaseScanRulesetProperties" + } + ] + } + }, + "x-ms-discriminator-value": "None" + }, + "AzureSqlDatabaseManagedInstanceSystemScanRuleset": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/SystemScanRuleset" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureSqlDatabaseManagedInstanceScanRulesetProperties" + } + ] + } + }, + "x-ms-discriminator-value": "None" + }, + "AzureSqlDataWarehouseSystemScanRuleset": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/SystemScanRuleset" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureSqlDataWarehouseScanRulesetProperties" + } + ] + } + }, + "x-ms-discriminator-value": "None" + }, + "AzureMySqlSystemScanRuleset": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/SystemScanRuleset" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureMySqlScanRulesetProperties" + } + ] + } + }, + "x-ms-discriminator-value": "None" + }, + "AzureStorageSystemScanRuleset": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/SystemScanRuleset" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AzureStorageScanRulesetProperties" + } + ] + } + }, + "x-ms-discriminator-value": "None" + }, + "TeradataSystemScanRuleset": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/SystemScanRuleset" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/TeradataScanRulesetProperties" + } + ] + } + }, + "x-ms-discriminator-value": "None" + }, + "OracleSystemScanRuleset": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/SystemScanRuleset" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/OracleScanRulesetProperties" + } + ] + } + }, + "x-ms-discriminator-value": "None" + }, + "SapS4HanaSystemScanRuleset": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/SystemScanRuleset" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/SapS4HanaScanRulesetProperties" + } + ] + } + }, + "x-ms-discriminator-value": "None" + }, + "SapEccSystemScanRuleset": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/SystemScanRuleset" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/SapEccScanRulesetProperties" + } + ] + } + }, + "x-ms-discriminator-value": "None" + }, + "PowerBISystemScanRuleset": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/SystemScanRuleset" + } + ], + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/PowerBIScanRulesetProperties" + } + ] + } + }, + "x-ms-discriminator-value": "None" + } + }, + "parameters": { + "Endpoint": { + "name": "Endpoint", + "description": "The scanning endpoint of your purview account. Example: https://{accountName}.scan.purview.azure.com", + "x-ms-parameter-location": "client", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true + }, + "api-version": { + "in": "query", + "name": "api-version", + "description": "The api version to use.", + "required": true, + "type": "string", + "x-ms-client-name": "ApiVersion" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow." + } + } +} diff --git a/specification/purview/data-plane/readme.md b/specification/purview/data-plane/readme.md new file mode 100644 index 000000000000..065b8d9ca5c4 --- /dev/null +++ b/specification/purview/data-plane/readme.md @@ -0,0 +1,127 @@ +# Purview + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for Purview. + + + +--- +## Getting Started +To build the SDK for Purview, simply [Install AutoRest](https://aka.ms/autorest/install) and in this folder, run: + +> `autorest` + +To see additional help and options, run: + +> `autorest --help` +--- + +## Configuration + +### Basic Information +These are the global settings for the Azure Purview Catalog API. + +``` yaml +openapi-type: data-plane +tag: package-2021-05-01-preview +``` + + +### Tag: package-2021-05-01-preview + +These settings apply only when `--tag=package-2021-05-01-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2021-05-01-preview' +input-file: +- Azure.Analytics.Purview.Catalog/preview/2021-05-01-preview/purviewcatalog.json +``` + +These are the global settings for the Purview API. + +``` yaml +openapi-type: data-plane +tag: package-2018-12-01-preview +title: PurviewScanningClient +``` + + +### Tag: package-2018-12-01-preview + +These settings apply only when `--tag=package-2018-12-01-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2018-12-01-preview' +input-file: +- Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/scanningService.json +modelerfour: + lenient-model-deduplication: true +``` + +--- +# Code Generation + +## C# + +These settings apply only when `--csharp` is specified on the command line. +Please also specify `--csharp-sdks-folder=`. + +``` yaml $(csharp) +csharp: + license-header: MICROSOFT_MIT_NO_VERSION + namespace: Microsoft.Azure.Purview.CatalogClient + add-credentials: true + output-folder: $(csharp-sdks-folder)/purview/Microsoft.Azure.Analytics.Purview.Catalog/src/Generated + clear-output-folder: true +``` + +## Java + +These settings apply only when `--java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(java) +java: + license-header: MICROSOFT_MIT_NO_VERSION + namespace: Microsoft.Azure.Purview.CatalogClient + add-credentials: true + output-folder: $(azure-libraries-for-java-folder)/purview/Microsoft.Azure.Analytics.Purview.Catalog/src/Generated + clear-output-folder: true +output-folder: $(csharp-sdks-folder)/Purview/ScanningClient/Generated +add-credentials: true +sync-methods: all +license-header: MICROSOFT_MIT_NO_VERSION +namespace: Azure.Analytics.Purview.Scanning +clear-output-folder: true +``` + +## Python + +See configuration in [readme.python.md](./readme.python.md) + +## Suppression + +``` yaml +directive: + - suppress: R3013 +where: + - $.paths[\"/atlas/v2/glossary/terms/{termGuid}/assignedEntities\"].delete.parameters[1] + - $.paths[\"/atlas/v2/types/typedefs\"].delete.parameters[0] +from: purviewcatalog.json +reason: This property is the discriminator for polymorph, but it can not be in request body. +``` + +``` yaml +directive: + - suppress: R2026 +from: purviewcatalog.json +reason: Should be compatible with Atlas swagger. +``` + +``` yaml +directive: + - suppress: D5001 +where: + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/xxx.get +reason: It doesn't support file annotation in example file. +``` + diff --git a/specification/purview/data-plane/readme.python.md b/specification/purview/data-plane/readme.python.md new file mode 100644 index 000000000000..423e122a9294 --- /dev/null +++ b/specification/purview/data-plane/readme.python.md @@ -0,0 +1,29 @@ +## Python + +These settings apply only when `--python` is specified on the command line. +Please also specify `--python-sdks-folder=`. +Use `--python-mode=update` if you already have a setup.py and just want to update the code itself. + +``` yaml +license-header: MICROSOFT_MIT_NO_VERSION +add-credential: true +package-name: azure-purview-catalog +namespace: azure.purview.catalog +package-version: 1.0.0b1 +clear-output-folder: true +basic-setup-py: true +output-folder: $(python-sdks-folder)/purview/azure-purview-catalog/ +title: AzurePurviewCatalogClient +credential-scopes: https://purview.azure.net/.default +``` +add-credential: true +license-header: MICROSOFT_MIT_NO_VERSION +namespace: azure.purview.scanning +package-name: azure-purview-scanning +clear-output-folder: truefr +package-version: 1.0.0b1 +basic-setup-py: true +output-folder: $(python-sdks-folder)/purview/azure-purview-scanning/ +credential-scopes: https://purview.azure.net/.default +low-level-client: true +``` diff --git a/specification/purview/resource-manager/Microsoft.Purview/preview/2020-12-01-preview/examples/Accounts_CreateOrUpdate.json b/specification/purview/resource-manager/Microsoft.Purview/preview/2020-12-01-preview/examples/Accounts_CreateOrUpdate.json index 8a6eaaacd3c5..34ceb43b9012 100644 --- a/specification/purview/resource-manager/Microsoft.Purview/preview/2020-12-01-preview/examples/Accounts_CreateOrUpdate.json +++ b/specification/purview/resource-manager/Microsoft.Purview/preview/2020-12-01-preview/examples/Accounts_CreateOrUpdate.json @@ -9,6 +9,9 @@ "sku": { "name": "Standard", "capacity": 4 + }, + "properties": { + "managedResourceGroupName": "custom-rgname" } } }, @@ -66,10 +69,19 @@ "guardian": "https://account1.guardian.purview.azure-test.com" }, "publicNetworkAccess": "Enabled", + "managedResourceGroupName": "custom-rgname", "managedResources": { - "resourceGroup": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/managed-rg-mwjotkl", - "storageAccount": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/managed-rg-mwjotkl/providers/Microsoft.Storage/storageAccounts/scanwestustzaagzr", - "eventHubNamespace": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/managed-rg-mwjotkl/providers/Microsoft.EventHub/namespaces/atlas-westusdddnbtp" + "resourceGroup": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/custom-rgname", + "storageAccount": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/custom-rgname/providers/Microsoft.Storage/storageAccounts/scanwestustzaagzr", + "eventHubNamespace": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/custom-rgname/providers/Microsoft.EventHub/namespaces/atlas-westusdddnbtp" + }, + "systemData": { + "createdBy": "client-name", + "createdByType": "User", + "createdAt": "2019-11-22T18:39:58.6929344Z", + "lastModifiedBy": "client-name", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-03-16T23:24:34.3430059Z" } } } diff --git a/specification/purview/resource-manager/Microsoft.Purview/preview/2020-12-01-preview/examples/Accounts_Get.json b/specification/purview/resource-manager/Microsoft.Purview/preview/2020-12-01-preview/examples/Accounts_Get.json index 6a0c9a54571d..b3a3fd82f3c6 100644 --- a/specification/purview/resource-manager/Microsoft.Purview/preview/2020-12-01-preview/examples/Accounts_Get.json +++ b/specification/purview/resource-manager/Microsoft.Purview/preview/2020-12-01-preview/examples/Accounts_Get.json @@ -53,10 +53,19 @@ } ], "publicNetworkAccess": "Enabled", + "managedResourceGroupName": "managed-rg-mwjotkl", "managedResources": { "resourceGroup": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/managed-rg-mwjotkl", "storageAccount": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/managed-rg-mwjotkl/providers/Microsoft.Storage/storageAccounts/scanwestustzaagzr", "eventHubNamespace": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/managed-rg-mwjotkl/providers/Microsoft.EventHub/namespaces/atlas-westusdddnbtp" + }, + "systemData": { + "createdBy": "client-name", + "createdByType": "User", + "createdAt": "2019-11-22T18:39:58.6929344Z", + "lastModifiedBy": "client-name", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-03-16T23:24:34.3430059Z" } } } diff --git a/specification/purview/resource-manager/Microsoft.Purview/preview/2020-12-01-preview/examples/Accounts_ListByResourceGroup.json b/specification/purview/resource-manager/Microsoft.Purview/preview/2020-12-01-preview/examples/Accounts_ListByResourceGroup.json index a4d157206813..f9ecf8a7c5a2 100644 --- a/specification/purview/resource-manager/Microsoft.Purview/preview/2020-12-01-preview/examples/Accounts_ListByResourceGroup.json +++ b/specification/purview/resource-manager/Microsoft.Purview/preview/2020-12-01-preview/examples/Accounts_ListByResourceGroup.json @@ -35,7 +35,15 @@ "scan": "https://account1.scan.purview.azure-test.com", "guardian": "https://account1.guardian.purview.azure-test.com" }, - "publicNetworkAccess": "Enabled" + "publicNetworkAccess": "Enabled", + "systemData": { + "createdBy": "client-name", + "createdByType": "User", + "createdAt": "2019-11-22T18:39:58.6929344Z", + "lastModifiedBy": "client-name", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-03-16T23:24:34.3430059Z" + } } }, { @@ -58,7 +66,15 @@ "scan": "https://account2.scan.purview.azure-test.com", "guardian": "https://account1.guardian.purview.azure-test.com" }, - "publicNetworkAccess": "Enabled" + "publicNetworkAccess": "Enabled", + "systemData": { + "createdBy": "client-name", + "createdByType": "User", + "createdAt": "2019-11-22T18:39:58.6929344Z", + "lastModifiedBy": "client-name", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-03-16T23:24:34.3430059Z" + } } } ] diff --git a/specification/purview/resource-manager/Microsoft.Purview/preview/2020-12-01-preview/examples/Accounts_ListBySubscription.json b/specification/purview/resource-manager/Microsoft.Purview/preview/2020-12-01-preview/examples/Accounts_ListBySubscription.json index efdc837c817d..0be34c92e64d 100644 --- a/specification/purview/resource-manager/Microsoft.Purview/preview/2020-12-01-preview/examples/Accounts_ListBySubscription.json +++ b/specification/purview/resource-manager/Microsoft.Purview/preview/2020-12-01-preview/examples/Accounts_ListBySubscription.json @@ -34,7 +34,15 @@ "scan": "https://account1.scan.purview.azure-test.com", "guardian": "https://account1.guardian.purview.azure-test.com" }, - "publicNetworkAccess": "Enabled" + "publicNetworkAccess": "Enabled", + "systemData": { + "createdBy": "client-name", + "createdByType": "User", + "createdAt": "2019-11-22T18:39:58.6929344Z", + "lastModifiedBy": "client-name", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-03-16T23:24:34.3430059Z" + } } }, { @@ -57,7 +65,15 @@ "scan": "https://account2.scan.purview.azure-test.com", "guardian": "https://account1.guardian.purview.azure-test.com" }, - "publicNetworkAccess": "Enabled" + "publicNetworkAccess": "Enabled", + "systemData": { + "createdBy": "client-name", + "createdByType": "User", + "createdAt": "2019-11-22T18:39:58.6929344Z", + "lastModifiedBy": "client-name", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-03-16T23:24:34.3430059Z" + } } } ] diff --git a/specification/purview/resource-manager/Microsoft.Purview/preview/2020-12-01-preview/examples/Accounts_Update.json b/specification/purview/resource-manager/Microsoft.Purview/preview/2020-12-01-preview/examples/Accounts_Update.json index 506ca622edce..fe7a40b708c7 100644 --- a/specification/purview/resource-manager/Microsoft.Purview/preview/2020-12-01-preview/examples/Accounts_Update.json +++ b/specification/purview/resource-manager/Microsoft.Purview/preview/2020-12-01-preview/examples/Accounts_Update.json @@ -44,6 +44,14 @@ "resourceGroup": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/managed-rg-mwjotkl", "storageAccount": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/managed-rg-mwjotkl/providers/Microsoft.Storage/storageAccounts/scanwestustzaagzr", "eventHubNamespace": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/managed-rg-mwjotkl/providers/Microsoft.EventHub/namespaces/atlas-westusdddnbtp" + }, + "systemData": { + "createdBy": "client-name", + "createdByType": "User", + "createdAt": "2019-11-22T18:39:58.6929344Z", + "lastModifiedBy": "client-name", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-03-16T23:24:34.3430059Z" } }, "tags": { @@ -86,6 +94,14 @@ "resourceGroup": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/managed-rg-mwjotkl", "storageAccount": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/managed-rg-mwjotkl/providers/Microsoft.Storage/storageAccounts/scanwestustzaagzr", "eventHubNamespace": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/managed-rg-mwjotkl/providers/Microsoft.EventHub/namespaces/atlas-westusdddnbtp" + }, + "systemData": { + "createdBy": "client-name", + "createdByType": "User", + "createdAt": "2019-11-22T18:39:58.6929344Z", + "lastModifiedBy": "client-name", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-03-16T23:24:34.3430059Z" } }, "tags": { diff --git a/specification/purview/resource-manager/Microsoft.Purview/preview/2020-12-01-preview/purview.json b/specification/purview/resource-manager/Microsoft.Purview/preview/2020-12-01-preview/purview.json index c90383f8f594..0abd987bbd46 100644 --- a/specification/purview/resource-manager/Microsoft.Purview/preview/2020-12-01-preview/purview.json +++ b/specification/purview/resource-manager/Microsoft.Purview/preview/2020-12-01-preview/purview.json @@ -428,7 +428,7 @@ "DefaultAccount" ], "summary": "Sets the default account for the scope.", - "description": "Set the default account for the scope.", + "description": "Sets the default account for the scope.", "operationId": "DefaultAccounts_Set", "parameters": [ { @@ -471,7 +471,7 @@ "DefaultAccount" ], "summary": "Removes the default account from the scope.", - "description": "Remove the default account from the scope.", + "description": "Removes the default account from the scope.", "operationId": "DefaultAccounts_Remove", "parameters": [ { @@ -1034,6 +1034,14 @@ "type": "string", "readOnly": true }, + "managedResourceGroupName": { + "description": "Gets or sets the managed resource group name", + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ] + }, "managedResources": { "description": "Gets the resource identifiers of the managed resources.", "allOf": [ @@ -1073,6 +1081,7 @@ }, "publicNetworkAccess": { "description": "Gets or sets the public network access.", + "default": "Enabled", "enum": [ "NotSpecified", "Enabled", @@ -1083,6 +1092,15 @@ "name": "publicNetworkAccess", "modelAsString": true } + }, + "systemData": { + "description": "Metadata pertaining to creation and last modification of the resource.", + "allOf": [ + { + "$ref": "#/definitions/SystemData" + } + ], + "readOnly": true } } }, @@ -1114,7 +1132,6 @@ } }, "CloudConnectors": { - "description": "Properties for configuring third party cloud connections.", "type": "object", "properties": { "awsExternalId": { @@ -1182,6 +1199,64 @@ } } }, + "SystemData": { + "description": "Metadata pertaining to creation and last modification of the resource.", + "type": "object", + "properties": { + "createdAt": { + "format": "date-time", + "description": "The timestamp of resource creation (UTC).", + "type": "string", + "readOnly": true + }, + "createdBy": { + "description": "The identity that created the resource.", + "type": "string", + "readOnly": true + }, + "createdByType": { + "description": "The type of identity that created the resource.", + "enum": [ + "User", + "Application", + "ManagedIdentity", + "Key" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "createdByType", + "modelAsString": true + } + }, + "lastModifiedAt": { + "format": "date-time", + "description": "The timestamp of the last modification the resource (UTC).", + "type": "string", + "readOnly": true + }, + "lastModifiedBy": { + "description": "The identity that last modified the resource.", + "type": "string", + "readOnly": true + }, + "lastModifiedByType": { + "description": "The type of identity that last modified the resource.", + "enum": [ + "User", + "Application", + "ManagedIdentity", + "Key" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "lastModifiedByType", + "modelAsString": true + } + } + } + }, "PrivateEndpointConnectionProperties": { "description": "A private endpoint connection properties class.", "type": "object", @@ -1291,8 +1366,7 @@ "properties": { "properties": { "$ref": "#/definitions/AccountProperties", - "description": "The account properties.", - "x-ms-client-flatten": true + "description": "The account properties." }, "tags": { "description": "Tags on the azure resource.", @@ -1355,94 +1429,6 @@ } } }, - "DeletedAccountList": { - "description": "Paged list of soft deleted account resources", - "required": [ - "value" - ], - "type": "object", - "properties": { - "count": { - "format": "int64", - "description": "Total item count.", - "type": "integer" - }, - "nextLink": { - "description": "The Url of next result page.", - "type": "string" - }, - "value": { - "description": "Collection of items of type results.", - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/definitions/DeletedAccount" - } - } - } - }, - "DeletedAccount": { - "description": "Soft Deleted Account resource", - "type": "object", - "allOf": [ - { - "$ref": "#/definitions/ProxyResource" - } - ], - "properties": { - "properties": { - "description": "Gets or sets the properties.", - "allOf": [ - { - "$ref": "#/definitions/DeletedAccountProperties" - } - ], - "readOnly": true, - "x-ms-client-flatten": true - } - } - }, - "DeletedAccountProperties": { - "description": "The soft deleted account properties", - "type": "object", - "properties": { - "accountId": { - "description": "Gets the account identifier associated with resource.", - "type": "string", - "readOnly": true - }, - "deletedBy": { - "description": "Gets the user identifier that deleted resource.", - "type": "string", - "readOnly": true - }, - "deletionDate": { - "format": "date-time", - "description": "Gets the time at which the resource was soft deleted.", - "type": "string", - "readOnly": true - }, - "location": { - "description": "Gets the resource location.", - "type": "string", - "readOnly": true - }, - "scheduledPurgeDate": { - "format": "date-time", - "description": "Gets the scheduled purge datetime.", - "type": "string", - "readOnly": true - }, - "tags": { - "description": "Gets the account tags.", - "type": "object", - "additionalProperties": { - "type": "string" - }, - "readOnly": true - } - } - }, "OperationList": { "description": "Paged list of operation resources", "required": [ @@ -1707,17 +1693,26 @@ "PrivateLinkResource": { "description": "A privately linkable resource.", "type": "object", - "allOf": [ - { - "$ref": "#/definitions/ProxyResource" - } - ], "properties": { + "id": { + "description": "The private link resource identifier.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The private link resource name.", + "type": "string", + "readOnly": true + }, "properties": { "$ref": "#/definitions/PrivateLinkResourceProperties", "description": "The private link resource properties.", - "readOnly": true, - "x-ms-client-flatten": true + "readOnly": true + }, + "type": { + "description": "The private link resource type.", + "type": "string", + "readOnly": true } } }, @@ -1851,12 +1846,13 @@ } }, "parameters": { - "api-version": { - "name": "api-version", - "in": "query", - "description": "The api version to use.", + "resourceGroupName": { + "name": "resourceGroupName", + "in": "path", + "description": "The resource group name.", "required": true, - "type": "string" + "type": "string", + "x-ms-parameter-location": "method" }, "subscriptionId": { "name": "subscriptionId", @@ -1865,13 +1861,12 @@ "required": true, "type": "string" }, - "resourceGroupName": { - "name": "resourceGroupName", - "in": "path", - "description": "The resource group name.", + "api-version": { + "name": "api-version", + "in": "query", + "description": "The api version to use.", "required": true, - "type": "string", - "x-ms-parameter-location": "method" + "type": "string" }, "accountName": { "name": "accountName", diff --git a/specification/purview/resource-manager/readme.azureresourceschema.md b/specification/purview/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 4da385514455..000000000000 --- a/specification/purview/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,24 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-purview-2020-12-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-purview-2020-12-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-purview-2020-12-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Purview/preview/2020-12-01-preview/purview.json - -``` diff --git a/specification/purview/resource-manager/readme.go.md b/specification/purview/resource-manager/readme.go.md index 971c3d52ce82..aa7f67359045 100644 --- a/specification/purview/resource-manager/readme.go.md +++ b/specification/purview/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: purview clear-output-folder: true ``` @@ -17,10 +17,7 @@ directive: - $.definitions.CheckNameAvailabilityResult.properties.nameAvailable - $.definitions.DimensionProperties.properties.toBeExportedForCustomer reason: - - Check name model is set by ARM team https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/proxy-api-reference.md#check-name-availability-requests - - suppress: R4009 # RequiredSystemDataInNewApiVersions - reason: - - We do not yet support systemdata + - Check name model is set by ARM team https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/proxy-api-reference.md#check-name-availability-requests ``` ### Go multi-api diff --git a/specification/quantum/resource-manager/readme.azureresourceschema.md b/specification/quantum/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 3d6326675e69..000000000000 --- a/specification/quantum/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,24 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-quantum-2019-11-04-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-quantum-2019-11-04-preview and azureresourceschema - -``` yaml $(tag) == 'schema-quantum-2019-11-04-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Quantum/preview/2019-11-04-preview/quantum.json - -``` diff --git a/specification/quantum/resource-manager/readme.go.md b/specification/quantum/resource-manager/readme.go.md index e75ab0d0261c..243a83c09d43 100644 --- a/specification/quantum/resource-manager/readme.go.md +++ b/specification/quantum/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ```yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: quantum clear-output-folder: true ``` diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2020-02-02/vaults.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2020-02-02/vaults.json index cc2fb4674525..e2b552a5bd0e 100644 --- a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2020-02-02/vaults.json +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2020-02-02/vaults.json @@ -804,8 +804,7 @@ "Get Operation Result": { "$ref": "./examples/GetOperationResult.json" } - }, - "x-ms-long-running-operation": true + } } } }, diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2020-10-01/vaults.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2020-10-01/vaults.json index cdd3843b003b..933e4964b1bf 100644 --- a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2020-10-01/vaults.json +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2020-10-01/vaults.json @@ -804,8 +804,7 @@ "Get Operation Result": { "$ref": "./examples/GetOperationResult.json" } - }, - "x-ms-long-running-operation": true + } } } }, diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-01-01/vaults.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-01-01/vaults.json index ac062dfebfcf..01e9b932c95e 100644 --- a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-01-01/vaults.json +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-01-01/vaults.json @@ -804,8 +804,7 @@ "Get Operation Result": { "$ref": "./examples/GetOperationResult.json" } - }, - "x-ms-long-running-operation": true + } } } }, diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/CheckNameAvailability_Available.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/CheckNameAvailability_Available.json new file mode 100644 index 000000000000..db6dd239dd86 --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/CheckNameAvailability_Available.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18", + "resourceGroupName": "resGroupFoo", + "api-version": "2021-02-10", + "location": "westus", + "input": { + "name": "swaggerExample", + "type": "Microsoft.RecoveryServices/Vaults" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": true + } + } + } +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/CheckNameAvailability_NotAvailable.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/CheckNameAvailability_NotAvailable.json new file mode 100644 index 000000000000..29cfd8f358d4 --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/CheckNameAvailability_NotAvailable.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18", + "resourceGroupName": "resGroupBar", + "api-version": "2021-02-10", + "location": "westus", + "input": { + "name": "swaggerExample2", + "type": "Microsoft.RecoveryServices/Vaults" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": false, + "reason": "AlreadyExists", + "message": "Resource already exists with the same name." + } + } + } +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/DeleteRegisteredIdentities.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/DeleteRegisteredIdentities.json new file mode 100644 index 000000000000..2fc9281f1c95 --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/DeleteRegisteredIdentities.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "77777777-d41f-4550-9f70-7708a3a2283b", + "resourceGroupName": "BCDRIbzRG", + "vaultName": "BCDRIbzVault", + "identityName": "dpmcontainer01", + "api-version": "2021-02-10" + }, + "responses": { + "204": {} + } +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/DeleteVault.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/DeleteVault.json new file mode 100644 index 000000000000..8c9b42430712 --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/DeleteVault.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18", + "resourceGroupName": "Default-RecoveryServices-ResourceGroup", + "vaultName": "swaggerExample", + "api-version": "2021-02-10" + }, + "responses": { + "200": {} + } +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/GETVault.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/GETVault.json new file mode 100644 index 000000000000..b06d2f249ee1 --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/GETVault.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18", + "resourceGroupName": "Default-RecoveryServices-ResourceGroup", + "vaultName": "swaggerExample", + "api-version": "2021-02-10" + }, + "responses": { + "200": { + "body": { + "location": "westus", + "name": "swaggerExample", + "etag": "W/\"datetime'2017-12-15T12%3A36%3A51.68Z'\"", + "tags": { + "TestUpdatedKey": "TestUpdatedValue" + }, + "identity": { + "tenantId": "d676e86e-2206-4a7c-999c-ece52c144b5b", + "principalId": "3137d6c7-5d6c-411c-b934-7a2a729ee247", + "type": "SystemAssigned" + }, + "properties": { + "provisioningState": "Succeeded", + "privateEndpointConnections": [ + { + "id": "/subscriptions/6c48fa17-39c7-45f1-90ac-47a587128ace/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/Vaults/pemsi-ecy-rsv2/privateEndpointConnections/pe114-pemsi-ecy-rsv.5944358949303501042.backup.75061caa-cba4-4849-8e09-608da4914aad", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/6c48fa17-39c7-45f1-90ac-47a587128ace/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.Network/privateEndpoints/pe114-pemsi-ecy-rsv" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "None", + "actionsRequired": "None" + } + } + } + ], + "privateEndpointStateForBackup": "Enabled", + "privateEndpointStateForSiteRecovery": "None" + }, + "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/swaggerExample", + "type": "Microsoft.RecoveryServices/vaults", + "sku": { + "name": "Standard" + } + } + } + } +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/GETVaultExtendedInfo.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/GETVaultExtendedInfo.json new file mode 100644 index 000000000000..4a66e0ded8e9 --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/GETVaultExtendedInfo.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18", + "resourceGroupName": "Default-RecoveryServices-ResourceGroup", + "vaultName": "swaggerExample", + "api-version": "2021-02-10" + }, + "responses": { + "200": { + "body": { + "name": "vaultExtendedInfo", + "etag": "f0d0260b-b92d-4458-ba0a-32c6cdabacb7", + "properties": { + "integrityKey": "J09wzS27fnJ+Wjot7xO5wA==", + "algorithm": "None" + }, + "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/swaggerExample/extendedInformation/vaultExtendedInfo", + "type": "Microsoft.RecoveryServices/vaults/extendedInformation" + } + } + } +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/GetOperationResult.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/GetOperationResult.json new file mode 100644 index 000000000000..47bcb136cd58 --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/GetOperationResult.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18", + "resourceGroupName": "HelloWorld", + "vaultName": "swaggerExample", + "operationId": "YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==", + "api-version": "2021-02-10" + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Azure-AsyncOperation": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample/operationStatus/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2015-03-15", + "Location": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample/operationResults/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2015-03-15" + } + }, + "200": { + "body": { + "location": "westus", + "name": "swaggerExample", + "etag": "W/\"datetime'2017-12-15T12%3A36%3A51.68Z'\"", + "tags": { + "PatchKey": "PatchKeyUpdated" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi": { + "clientId": "fbe75b66-01c5-4f87-a220-233af3270436", + "principalId": "075a0ca6-43f6-4434-9abf-c9b1b79f9219" + } + } + }, + "properties": { + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample", + "type": "Microsoft.RecoveryServices/vaults", + "sku": { + "name": "Standard" + } + } + } + } +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/GetOperationStatus.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/GetOperationStatus.json new file mode 100644 index 000000000000..284cdec9e1e3 --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/GetOperationStatus.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18", + "resourceGroupName": "HelloWorld", + "vaultName": "swaggerExample", + "operationId": "YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==", + "api-version": "2021-02-10" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample/operationStatus/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==", + "name": "YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==", + "status": "Succeeded", + "startTime": "2019-11-20T09:49:44.0478496Z", + "endTime": "2019-11-20T09:49:46Z" + } + } + } +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/GetPrivateLinkResources.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/GetPrivateLinkResources.json new file mode 100644 index 000000000000..de42091c1d7f --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/GetPrivateLinkResources.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "6c48fa17-39c7-45f1-90ac-47a587128ace", + "resourceGroupName": "petesting", + "vaultName": "pemsi-ecy-rsv2", + "api-version": "2021-02-10", + "privateLinkResourceName": "backupResource" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/6c48fa17-39c7-45f1-90ac-47a587128ace/resourceGroups/petesting/providers/Microsoft.RecoveryServices/Vaults/pemsi-ecy-rsv2/privateLinkResources/backupResource", + "name": "backupResource", + "type": "Microsoft.RecoveryServices/Vaults/privateLinkResources", + "properties": { + "groupId": "AzureBackup", + "requiredMembers": [ + "backup-fab1", + "backup-rec2", + "backup-prot1", + "backup-ecs1", + "backup-tel1", + "backup-wbcm1", + "backup-fc1", + "backup-id1" + ], + "requiredZoneNames": [ + "privatelink.ecy.backup.windowsazure.com", + "privatelink.queue.core.windows.net", + "privatelink.blob.core.windows.net" + ] + } + } + } + } +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ListBySubscriptionIds.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ListBySubscriptionIds.json new file mode 100644 index 000000000000..3408ba560430 --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ListBySubscriptionIds.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18", + "api-version": "2021-02-10" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "location": "westus", + "name": "patchtest", + "etag": "W/\"datetime'2017-11-22T11%3A05%3A19.907Z'\"", + "tags": { + "Love": "India" + }, + "properties": { + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/patchtest", + "type": "Microsoft.RecoveryServices/vaults", + "sku": { + "name": "Standard" + } + }, + { + "location": "westus", + "name": "swaggerExample", + "etag": "W/\"datetime'2017-12-15T12%3A36%3A51.68Z'\"", + "tags": { + "TestUpdatedKey": "TestUpdatedValue" + }, + "properties": { + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample", + "type": "Microsoft.RecoveryServices/vaults", + "sku": { + "name": "Standard" + } + }, + { + "location": "westus", + "name": "today1", + "etag": "W/\"datetime'2017-11-21T10%3A52%3A19.633Z'\"", + "tags": { + "TestUpdatedKey": "TestUpdatedValue" + }, + "properties": { + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/today1", + "type": "Microsoft.RecoveryServices/vaults", + "sku": { + "name": "Standard" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ListOperations.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ListOperations.json new file mode 100644 index 000000000000..81545a299afe --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ListOperations.json @@ -0,0 +1,463 @@ +{ + "parameters": { + "api-version": "2021-02-10" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "microsoft.recoveryservices/vaults/usages/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Vault Usage", + "operation": "Recovery Services Vault usage details.", + "description": "Returns usage details for a Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupUsageSummaries/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Usages Summaries", + "operation": "Recovery Services Protected Items and Protected Servers usage summaries details.", + "description": "Returns summaries for Protected Items and Protected Servers for a Recovery Services ." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/storageConfig/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Vault Storage Config", + "operation": "Get Resource Storage Config", + "description": "Returns Storage Configuration for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/storageConfig/write", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Vault Storage Config", + "operation": "Write Resource Storage Config", + "description": "Updates Storage Configuration for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupconfig/vaultconfig/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Vault Config", + "operation": "Get Resource Config", + "description": "Returns Configuration for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupconfig/vaultconfig/write", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Vault Config", + "operation": "Update Resource Config", + "description": "Updates Configuration for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/tokenInfo/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Token Info", + "operation": "Get Vault Token Info", + "description": "Returns token information for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupSecurityPIN/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "SecurityPINInfo", + "operation": "Get Security PIN Info", + "description": "Returns Security PIN Information for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupManagementMetaData/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Management Metadata", + "operation": "Get Backup Management Metadata", + "description": "Returns Backup Management Metadata for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupOperationResults/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Operation Results", + "operation": "Get Backup Operation Result", + "description": "Returns Backup Operation Result for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupOperations/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Operation Status", + "operation": "Get Backup Operation Status", + "description": "Returns Backup Operation Status for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupJobs/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Jobs", + "operation": "Get Jobs", + "description": "Returns all Job Objects" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupJobs/cancel/action", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Jobs", + "operation": "Cancel Jobs", + "description": "Cancel the Job" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupJobsExport/action", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Export Backup Jobs", + "operation": "Export Jobs", + "description": "Export Jobs" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupJobs/operationResults/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Jobs Operation Results", + "operation": "Get Job Operation Result", + "description": "Returns the Result of Job Operation." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupJobsExport/operationResults/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Export Backup Jobs Operation Results", + "operation": "Get Export Job Operation Result", + "description": "Returns the Result of Export Job Operation." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Recovery Points", + "operation": "Get Recovery Points", + "description": "Get Recovery Points for Protected Items." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints/restore/action", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Recovery Points", + "operation": "Restore Recovery Points", + "description": "Restore Recovery Points for Protected Items." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints/provisionInstantItemRecovery/action", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Recovery Points", + "operation": "Provision Instant Item Recovery for Protected Item", + "description": "Provision Instant Item Recovery for Protected Item" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints/revokeInstantItemRecovery/action", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Recovery Points", + "operation": "Revoke Instant Item Recovery for Protected Item", + "description": "Revoke Instant Item Recovery for Protected Item" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupPolicies/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Policies", + "operation": "Get Protection Policy", + "description": "Returns all Protection Policies" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupPolicies/write", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Policies", + "operation": "Create Protection Policy", + "description": "Creates Protection Policy" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupPolicies/delete", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Policies", + "operation": "Delete Protection Policy", + "description": "Delete a Protection Policy" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupPolicies/operationResults/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Policy Operation Results", + "operation": "Get Policy Operation Results", + "description": "Get Results of Policy Operation." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupPolicies/operationsStatus/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Policy Operation Status", + "operation": "Get Policy Operation Status", + "description": "Get Status of Policy Operation." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protected Items", + "operation": "Get Protected Item Details", + "description": "Returns object details of the Protected Item" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupProtectedItems/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protected Items", + "operation": "Get All Protected Items", + "description": "Returns the list of all Protected Items." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/write", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protected Items", + "operation": "Create Backup Protected Item", + "description": "Create a backup Protected Item" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/delete", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protected Items", + "operation": "Delete Protected Items", + "description": "Deletes Protected Item" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/operationResults/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protected Item Operation Results", + "operation": "Get Protected Items Operation Results", + "description": "Gets Result of Operation Performed on Protected Items." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/operationsStatus/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protected Item Operation Status", + "operation": "Get Protected Items operation status", + "description": "Returns the status of Operation performed on Protected Items." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/backup/action", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protected Items", + "operation": "Backup Protected Item", + "description": "Performs Backup for Protected Item." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupProtectableItems/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Protectable Items", + "operation": "Get Protectable Items", + "description": "Returns list of all Protectable Items." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/refreshContainers/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Refresh Containers", + "operation": "Refresh container", + "description": "Refreshes the container list" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/operationResults/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Refresh Containers Operation Results", + "operation": "Get Operation Results", + "description": "Returns status of the operation" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupProtectionContainers/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Protection Containers", + "operation": "Get Containers In Subscription", + "description": "Returns all containers belonging to the subscription" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protection Containers", + "operation": "Get Registered Container", + "description": "Returns all registered containers" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/operationResults/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protection Containers Operation Results", + "operation": "Get Container Operation Results", + "description": "Gets result of Operation performed on Protection Container." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupEngines", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Engines", + "operation": "List of backup management servers.", + "description": "Returns all the backup management servers registered with vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupStatus", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Status", + "operation": "Check Backup Status for Vault", + "description": "Check Backup Status for Recovery Services Vaults" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupPreValidateProtection", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "PreValidate Protection", + "operation": "Pre Validate Enable Protection", + "description": "" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupValidateFeatures", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Validate Features", + "operation": "Validate Features", + "description": "Validate Features" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/backupProtectionIntent/write", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protection Intent", + "operation": "Create backup Protection Intent", + "description": "Create a backup Protection Intent" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/{fabricName}/protectionContainers/{containerName}/items/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Workload Items", + "operation": "Get all items in a container", + "description": "Get all items in a container" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/inquire/action", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protection Containers Inquire", + "operation": "Get all items in a container", + "description": "Get all items in a container" + }, + "origin": "user" + } + ] + } + } + } +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ListPrivateLinkResources.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ListPrivateLinkResources.json new file mode 100644 index 000000000000..eadd81240ded --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ListPrivateLinkResources.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "6c48fa17-39c7-45f1-90ac-47a587128ace", + "resourceGroupName": "petesting", + "vaultName": "pemsi-ecy-rsv2", + "api-version": "2021-02-10" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/6c48fa17-39c7-45f1-90ac-47a587128ace/resourceGroups/petesting/providers/Microsoft.RecoveryServices/Vaults/pemsi-ecy-rsv2/privateLinkResources/backupResource", + "name": "backupResource", + "type": "Microsoft.RecoveryServices/Vaults/privateLinkResources", + "properties": { + "groupId": "AzureBackup", + "requiredMembers": [ + "backup-fab1", + "backup-rec2", + "backup-prot1", + "backup-ecs1", + "backup-tel1", + "backup-wbcm1", + "backup-fc1", + "backup-id1" + ], + "requiredZoneNames": [ + "privatelink.ecy.backup.windowsazure.com", + "privatelink.queue.core.windows.net", + "privatelink.blob.core.windows.net" + ] + } + }, + { + "id": "/subscriptions/6c48fa17-39c7-45f1-90ac-47a587128ace/resourceGroups/gaallarg/providers/Microsoft.RecoveryServices/vaults/amchandnTest2702A/privateLinkResources/siteRecoveryResource", + "name": "siteRecoveryResource", + "type": "Microsoft.RecoveryServices/vaults/privateLinkResources", + "properties": { + "groupId": "AzureSiteRecovery", + "requiredMembers": [ + "siteRecovery-rcm1", + "siteRecovery-prot2", + "siteRecovery-tel1", + "siteRecovery-srs1", + "siteRecovery-prot2b", + "siteRecovery-id1" + ], + "requiredZoneNames": [ + "privatelink.ecy.siterecovery.windowsazure.com", + "privatelink.queue.core.windows.net", + "privatelink.blob.core.windows.net" + ] + } + } + ] + } + } + } +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ListReplicationUsages.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ListReplicationUsages.json new file mode 100644 index 000000000000..3e5c14d86e42 --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ListReplicationUsages.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "vaultName": "avrai7517Vault1", + "resourceGroupName": "avrai7517RG1", + "subscriptionId": "6808dbbc-98c7-431f-a1b1-9580902423b7" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "monitoringSummary": { + "unHealthyVmCount": 0, + "unHealthyProviderCount": 0, + "eventsCount": 0, + "deprecatedProviderCount": 0, + "supportedProviderCount": 0, + "unsupportedProviderCount": 0 + }, + "jobsSummary": { + "failedJobs": 0, + "suspendedJobs": 0, + "inProgressJobs": 0 + }, + "protectedItemCount": 2, + "registeredServersCount": 2, + "recoveryPlanCount": 1 + } + ] + } + } + } +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ListResources.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ListResources.json new file mode 100644 index 000000000000..9c654b1d29e0 --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ListResources.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18", + "resourceGroupName": "Default-RecoveryServices-ResourceGroup", + "api-version": "2021-02-10" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "location": "westus", + "name": "patchtest", + "etag": "W/\"datetime'2017-11-22T11%3A05%3A19.907Z'\"", + "tags": { + "Love": "India" + }, + "properties": { + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/patchtest", + "type": "Microsoft.RecoveryServices/vaults", + "sku": { + "name": "Standard" + } + }, + { + "location": "westus", + "name": "swaggerExample", + "etag": "W/\"datetime'2017-12-15T12%3A36%3A51.68Z'\"", + "tags": { + "TestUpdatedKey": "TestUpdatedValue" + }, + "properties": { + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/swaggerExample", + "type": "Microsoft.RecoveryServices/vaults", + "sku": { + "name": "Standard" + } + }, + { + "location": "westus", + "name": "today1", + "etag": "W/\"datetime'2017-11-21T10%3A52%3A19.633Z'\"", + "tags": { + "TestUpdatedKey": "TestUpdatedValue" + }, + "properties": { + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/today1", + "type": "Microsoft.RecoveryServices/vaults", + "sku": { + "name": "Standard" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ListUsages.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ListUsages.json new file mode 100644 index 000000000000..48d98d236058 --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ListUsages.json @@ -0,0 +1,180 @@ +{ + "parameters": { + "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18", + "resourceGroupName": "Default-RecoveryServices-ResourceGroup", + "vaultName": "swaggerExample", + "api-version": "2021-02-10" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "unit": "Count", + "currentValue": 6, + "limit": -1, + "name": { + "value": "MABContainersCount", + "localizedValue": "Backup management servers" + } + }, + { + "unit": "Count", + "currentValue": 3, + "limit": -1, + "name": { + "value": "ProtectedItemCount", + "localizedValue": "Backup items/Azure virtual machine backup" + } + }, + { + "unit": "Count", + "currentValue": 0, + "limit": -1, + "name": { + "value": "ProtectedItemCriticalCount", + "localizedValue": "Critical" + } + }, + { + "unit": "Count", + "currentValue": 0, + "limit": -1, + "name": { + "value": "ProtectedItemWarningCount", + "localizedValue": "Warning" + } + }, + { + "unit": "Count", + "currentValue": 0, + "limit": -1, + "name": { + "value": "IaaSVMProtectedItemCount", + "localizedValue": "Azure Virtual Machines" + } + }, + { + "unit": "Count", + "currentValue": 0, + "limit": -1, + "name": { + "value": "IaaSVMProtectedItemCriticalCount", + "localizedValue": "Critical" + } + }, + { + "unit": "Count", + "currentValue": 0, + "limit": -1, + "name": { + "value": "IaaSVMProtectedItemWarningCount", + "localizedValue": "Warning" + } + }, + { + "unit": "Count", + "currentValue": 0, + "limit": -1, + "name": { + "value": "MABProtectedItemCount", + "localizedValue": "File-Folders" + } + }, + { + "unit": "Count", + "currentValue": 1, + "limit": -1, + "name": { + "value": "DPMProtectedItemCount", + "localizedValue": "DPM Protected Items Count" + } + }, + { + "unit": "Count", + "currentValue": 2, + "limit": -1, + "name": { + "value": "AzureBackupServerProtectedItemCount", + "localizedValue": "Azure Backup Server Protected Items Count" + } + }, + { + "unit": "Count", + "quotaPeriod": "P1D", + "currentValue": 0, + "limit": -1, + "name": { + "value": "InProgressJobsCount", + "localizedValue": "In progress" + } + }, + { + "unit": "Count", + "quotaPeriod": "P1D", + "currentValue": 0, + "limit": -1, + "name": { + "value": "FailedJobsCount", + "localizedValue": "Failed" + } + }, + { + "unit": "Bytes", + "currentValue": 117007930, + "limit": -1, + "name": { + "value": "GRSStorageUsage", + "localizedValue": "Cloud - GRS" + } + }, + { + "unit": "Bytes", + "currentValue": 0, + "limit": -1, + "name": { + "value": "LRSStorageUsage", + "localizedValue": "Cloud - LRS" + } + }, + { + "unit": "Count", + "currentValue": 5, + "limit": -1, + "name": { + "value": "ManagedInstances", + "localizedValue": "Protected Instances" + } + }, + { + "unit": "Bytes", + "currentValue": 0, + "limit": -1, + "name": { + "value": "GRSDedupStorageUsage", + "localizedValue": "Dedup - GRS" + } + }, + { + "unit": "Bytes", + "currentValue": 0, + "limit": -1, + "name": { + "value": "LRSDedupStorageUsage", + "localizedValue": "Dedup - LRS" + } + }, + { + "unit": "Bytes", + "currentValue": 117851553792, + "limit": -1, + "name": { + "value": "UsedDiskSize", + "localizedValue": "Backup Engines' Disk Used" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/PATCHVault.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/PATCHVault.json new file mode 100644 index 000000000000..34d30e4b1dde --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/PATCHVault.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18", + "resourceGroupName": "HelloWorld", + "vaultName": "swaggerExample", + "api-version": "2021-02-10", + "vault": { + "tags": { + "PatchKey": "PatchKeyUpdated" + } + } + }, + "responses": { + "200": { + "body": { + "location": "westus", + "name": "swaggerExample", + "etag": "W/\"datetime'2017-12-15T12%3A36%3A51.68Z'\"", + "tags": { + "PatchKey": "PatchKeyUpdated" + }, + "properties": { + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample", + "type": "Microsoft.RecoveryServices/vaults", + "sku": { + "name": "Standard" + } + } + }, + "202": { + "headers": { + "Retry-After": "10", + "Azure-AsyncOperation": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample/operationStatus/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2015-03-15", + "Location": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample/operationResults/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2015-03-15" + } + } + } +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/PATCHVault_WithCMK.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/PATCHVault_WithCMK.json new file mode 100644 index 000000000000..17da0a8bc646 --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/PATCHVault_WithCMK.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18", + "resourceGroupName": "HelloWorld", + "vaultName": "swaggerExample", + "api-version": "2021-02-10", + "vault": { + "tags": { + "PatchKey": "PatchKeyUpdated" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi": {} + } + }, + "properties": { + "encryption": { + "keyVaultProperties": { + "keyUri": "https://cmk2xkv.vault.azure.net/keys/Key1/0767b348bb1a4c07baa6c4ec0055d2b3" + }, + "kekIdentity": { + "userAssignedIdentity": "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi" + }, + "infrastructureEncryption": "Enabled" + } + } + } + }, + "responses": { + "200": { + "body": { + "location": "westus", + "name": "swaggerExample", + "etag": "W/\"datetime'2017-12-15T12%3A36%3A51.68Z'\"", + "tags": { + "PatchKey": "PatchKeyUpdated" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi": { + "clientId": "fbe75b66-01c5-4f87-a220-233af3270436", + "principalId": "075a0ca6-43f6-4434-9abf-c9b1b79f9219" + } + } + }, + "properties": { + "provisioningState": "Succeeded", + "encryption": { + "keyVaultProperties": { + "keyUri": "https://cmk2xkv.vault.azure.net/keys/Key1/0767b348bb1a4c07baa6c4ec0055d2b3" + }, + "kekIdentity": { + "userAssignedIdentity": "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi", + "useSystemAssignedIdentity": false + }, + "infrastructureEncryption": "Enabled" + } + }, + "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample", + "type": "Microsoft.RecoveryServices/vaults", + "sku": { + "name": "Standard" + } + } + }, + "202": { + "headers": { + "Retry-After": "10", + "Azure-AsyncOperation": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample/operationStatus/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2015-03-15", + "Location": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample/operationResults/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2015-03-15" + } + } + } +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/PATCHVault_WithCMK3.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/PATCHVault_WithCMK3.json new file mode 100644 index 000000000000..52bc202eb58d --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/PATCHVault_WithCMK3.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18", + "resourceGroupName": "HelloWorld", + "vaultName": "swaggerExample", + "api-version": "2021-02-10", + "vault": { + "tags": { + "PatchKey": "PatchKeyUpdated" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi": {} + } + }, + "properties": { + "encryption": { + "keyVaultProperties": { + "keyUri": "https://cmk2xkv.vault.azure.net/keys/Key1/0767b348bb1a4c07baa6c4ec0055d2b3" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "location": "westus", + "name": "swaggerExample", + "etag": "W/\"datetime'2017-12-15T12%3A36%3A51.68Z'\"", + "tags": { + "PatchKey": "PatchKeyUpdated" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi": { + "clientId": "fbe75b66-01c5-4f87-a220-233af3270436", + "principalId": "075a0ca6-43f6-4434-9abf-c9b1b79f9219" + } + } + }, + "properties": { + "provisioningState": "Succeeded", + "encryption": { + "keyVaultProperties": { + "keyUri": "https://cmk2xkv.vault.azure.net/keys/Key1/0767b348bb1a4c07baa6c4ec0055d2b3" + }, + "kekIdentity": { + "userAssignedIdentity": "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi", + "useSystemAssignedIdentity": false + }, + "infrastructureEncryption": "Enabled" + } + }, + "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample", + "type": "Microsoft.RecoveryServices/vaults", + "sku": { + "name": "Standard" + } + } + }, + "202": { + "headers": { + "Retry-After": "10", + "Azure-AsyncOperation": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample/operationStatus/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2015-03-15", + "Location": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample/operationResults/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2015-03-15" + } + } + } +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/PATCHVault_WithUserAssignedIdentity.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/PATCHVault_WithUserAssignedIdentity.json new file mode 100644 index 000000000000..aa8c817fa0c9 --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/PATCHVault_WithUserAssignedIdentity.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18", + "resourceGroupName": "HelloWorld", + "vaultName": "swaggerExample", + "api-version": "2021-02-10", + "vault": { + "tags": { + "PatchKey": "PatchKeyUpdated" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi": {} + } + } + } + }, + "responses": { + "200": { + "body": { + "location": "westus", + "name": "swaggerExample", + "etag": "W/\"datetime'2017-12-15T12%3A36%3A51.68Z'\"", + "tags": { + "PatchKey": "PatchKeyUpdated" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi": { + "clientId": "fbe75b66-01c5-4f87-a220-233af3270436", + "principalId": "075a0ca6-43f6-4434-9abf-c9b1b79f9219" + } + } + }, + "properties": { + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample", + "type": "Microsoft.RecoveryServices/vaults", + "sku": { + "name": "Standard" + } + } + }, + "202": { + "headers": { + "Retry-After": "10", + "Azure-AsyncOperation": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample/operationStatus/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2015-03-15", + "Location": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample/operationResults/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2015-03-15" + } + } + } +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/PUTVault.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/PUTVault.json new file mode 100644 index 000000000000..5c15135dc699 --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/PUTVault.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18", + "resourceGroupName": "Default-RecoveryServices-ResourceGroup", + "vaultName": "swaggerExample", + "api-version": "2021-02-10", + "vault": { + "properties": {}, + "sku": { + "name": "Standard" + }, + "location": "West US", + "identity": { + "type": "SystemAssigned" + } + } + }, + "responses": { + "200": { + "body": { + "location": "westus", + "name": "swaggerExample", + "etag": "W/\"datetime'2017-12-15T12%3A36%3A51.68Z'\"", + "tags": { + "TestUpdatedKey": "TestUpdatedValue" + }, + "identity": { + "tenantId": "d676e86e-2206-4a7c-999c-ece52c144b5b", + "principalId": "3137d6c7-5d6c-411c-b934-7a2a729ee247", + "type": "SystemAssigned" + }, + "properties": { + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/swaggerExample", + "type": "Microsoft.RecoveryServices/vaults", + "sku": { + "name": "RS0", + "tier": "Standard" + } + } + }, + "201": { + "body": { + "location": "westus", + "name": "swaggerExample", + "etag": "W/\"datetime'2017-12-15T12%3A36%3A51.68Z'\"", + "tags": { + "TestUpdatedKey": "TestUpdatedValue" + }, + "identity": { + "tenantId": "d676e86e-2206-4a7c-999c-ece52c144b5b", + "principalId": "3137d6c7-5d6c-411c-b934-7a2a729ee247", + "type": "SystemAssigned" + }, + "properties": { + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/swaggerExample", + "type": "Microsoft.RecoveryServices/vaults", + "sku": { + "name": "RS0", + "tier": "Standard" + } + } + } + } +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/PUTVaultCred.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/PUTVaultCred.json new file mode 100644 index 000000000000..4e403cd2ddd8 --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/PUTVaultCred.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "77777777-d41f-4550-9f70-7708a3a2283b", + "resourceGroupName": "BCDRIbzRG", + "vaultName": "BCDRIbzVault", + "certificateName": "BCDRIbzVault77777777-d41f-4550-9f70-7708a3a2283b-12-18-2017-vaultcredentials", + "api-version": "2021-02-10", + "certificateRequest": { + "properties": { + "authType": "AAD", + "certificate": "MTTC3TCCAcWgAwIBAgIQEj9h+ZLlXK9KrqZX9UkAnzANBgkqhkiG9w0BAQUFADAeMRwwGgYDVQQDExNXaW5kb3dzIEF6dXJlIFRvb2xzMB4XDTE3MTIxODA5MTc1M1oXDTE3MTIyMzA5Mjc1M1owHjEcMBoGA1UEAxMTV2luZG93cyBBenVyZSBUb29sczCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAK773/eZZ69RbZZAT05r9MjUxu9y1L1Pn1EgPk62IPJyHlO3OZA922eSBahhP4bgmFljN4LVReqQ5eT/wqO0Zhc+yFkUy4U4RdbQLeUZt2W7yy9XLXgVvqeYDgsjg/QhHetgHArQBW+tlQq5+zPdU7zchI4rbShSJrWhLrZFWiOyFPsuAE4joUQHNlRifdCTsBGKk8HRCY3j1S3c4bfEn3zxlrvrXXssRuW5mJM95rMk0tskoRxXSCi6i9bnlki2Cs9mpVMmBFeofs41KwzlWU0TgpdD8s1QEdvfGB5NbByfetPX7MfJaTBeHZEGbv/Iq8l72u8sPBoOhcaH7qDE/mECAwEAAaMXMBUwEwYDVR0lBAwwCgYIKwYBBQUHAwIwDQYJKoZIhvcNAQEFBQADggEBAILfgHluye1Q+WelhgWhpBBdIq2C0btfV8eFsZaTlBUrM0fwpxQSlAWc2oYHVMQI4A5iUjbDOY35O4yc+TnWKDBKf+laqDP+yos4aiUPuadGUZfvDk7kuw7xeECs64JpHAIEKdRHFW9rD3gwG+nIWaDnEL/7rTyhL3kXrRW2MSUAL8g3GX8Z45c+MQY0jmASIqWdhGn1vpAGyA9mKkzsqg7FXjg8GZb24tGl5Ky85+ip4dkBfXinDD8WwaGyjhGGK97ErvNmN36qly/H0H1Qngiovg1FbHDmkcFO5QclnEJsFFmcO2CcHp5Fqh2wXn5O1cQaxCIRTpQ/uXRpDjl2wKs=" + } + } + }, + "responses": { + "200": { + "body": { + "name": "BCDRIbzVault77777777-d41f-4550-9f70-7708a3a2283b-12-18-2017-vaultcredentials", + "type": "Microsoft.RecoveryServices/vaults/certificates", + "id": "/Subscriptions/77777777-d41f-4550-9f70-7708a3a2283b/resourceGroups/BCDRIbzRG/providers/Microsoft.RecoveryServices/vaults/BCDRIbzVault/certificates/BCDRIbzVault77777777-d41f-4550-9f70-7708a3a2283b-12-18-2017-vaultcredentials", + "properties": { + "authType": "AzureActiveDirectory", + "certificate": "MTTC3TCCAcWgAwIBAgIQEj9h+ZLlXK9KrqZX9UkAnzANBgkqhkiG9w0BAQUFADAeMRwwGgYDVQQDExNXaW5kb3dzIEF6dXJlIFRvb2xzMB4XDTE3MTIxODA5MTc1M1oXDTE3MTIyMzA5Mjc1M1owHjEcMBoGA1UEAxMTV2luZG93cyBBenVyZSBUb29sczCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAK773/eZZ69RbZZAT05r9MjUxu9y1L1Pn1EgPk62IPJyHlO3OZA922eSBahhP4bgmFljN4LVReqQ5eT/wqO0Zhc+yFkUy4U4RdbQLeUZt2W7yy9XLXgVvqeYDgsjg/QhHetgHArQBW+tlQq5+zPdU7zchI4rbShSJrWhLrZFWiOyFPsuAE4joUQHNlRifdCTsBGKk8HRCY3j1S3c4bfEn3zxlrvrXXssRuW5mJM95rMk0tskoRxXSCi6i9bnlki2Cs9mpVMmBFeofs41KwzlWU0TgpdD8s1QEdvfGB5NbByfetPX7Mf JaTBeHZEGbv/Iq8l72u8sPBoOhcaH7qDE/mECAwEAAaMXMBUwEwYDVR0lBAwwCgYIKwYBBQUHAwIwDQYJKoZIhvcNAQEFBQADggEBAILfgHluye1Q+WelhgWhpBBdIq2C0btfV8eFsZaTlBUrM0fwpxQSlAWc2oYHVMQI4A5iUjbDOY35O4yc+TnWKDBKf+laqDP+yos4aiUPuadGUZfvDk7kuw7xeECs64JpHAIEKdRHFW9rD3gwG+nIWaDnEL/7rTyhL3kXrRW2MSUAL8g3GX8Z45c+MQY0jmASIqWdhGn1vpAGyA9mKkzsqg7FXjg8GZb24tGl5Ky85+ip4dkBfXinDD8WwaGyjhGGK97ErvNmN36qly/H0H1Qngiovg1FbHDmkcFO5QclnEJsFFmcO2CcHp5Fqh2wXn5O1cQaxCIRTpQ/uXRpDjl2wKs=", + "resourceId": 8726350008099341699, + "aadAuthority": "https://login.windows.net", + "aadTenantId": "9b0c2069-2eba-489f-95f4-eca15cb602ab", + "servicePrincipalClientId": "4932d0bd-b5f9-4659-94a0-7ab02d918933", + "servicePrincipalObjectId": "2d60221e-cef5-4e13-ba66-b33701a533bb", + "azureManagementEndpointAudience": "https://ppe1-id1.wus.wabppe.obs-test.com/restapi/", + "subject": "CN=Windows Azure Tools", + "validFrom": "2017-12-18T14:47:53+05:30", + "validTo": "2017-12-23T14:57:53+05:30", + "thumbprint": "019FE9BAD18A5A09A5CA53B593AF66331F3054AF", + "friendlyName": "", + "issuer": "CN=Windows Azure Tools" + } + } + } + } +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/PUTVault_WithCMK.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/PUTVault_WithCMK.json new file mode 100644 index 000000000000..03fca794a7aa --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/PUTVault_WithCMK.json @@ -0,0 +1,108 @@ +{ + "parameters": { + "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18", + "resourceGroupName": "Default-RecoveryServices-ResourceGroup", + "vaultName": "swaggerExample", + "api-version": "2021-02-10", + "vault": { + "properties": { + "encryption": { + "keyVaultProperties": { + "keyUri": "https://cmk2xkv.vault.azure.net/keys/Key1/0767b348bb1a4c07baa6c4ec0055d2b3" + }, + "kekIdentity": { + "userAssignedIdentity": "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi" + }, + "infrastructureEncryption": "Enabled" + } + }, + "sku": { + "name": "Standard" + }, + "location": "West US", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi": {} + } + } + } + }, + "responses": { + "200": { + "body": { + "location": "westus", + "name": "swaggerExample", + "etag": "W/\"datetime'2017-12-15T12%3A36%3A51.68Z'\"", + "tags": { + "TestUpdatedKey": "TestUpdatedValue" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi": { + "clientId": "fbe75b66-01c5-4f87-a220-233af3270436", + "principalId": "075a0ca6-43f6-4434-9abf-c9b1b79f9219" + } + } + }, + "properties": { + "provisioningState": "Succeeded", + "encryption": { + "keyVaultProperties": { + "keyUri": "https://cmk2xkv.vault.azure.net/keys/Key1/0767b348bb1a4c07baa6c4ec0055d2b3" + }, + "kekIdentity": { + "userAssignedIdentity": "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi", + "useSystemAssignedIdentity": false + }, + "infrastructureEncryption": "Enabled" + } + }, + "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/swaggerExample", + "type": "Microsoft.RecoveryServices/vaults", + "sku": { + "name": "Standard" + } + } + }, + "201": { + "body": { + "location": "westus", + "name": "swaggerExample", + "etag": "W/\"datetime'2017-12-15T12%3A36%3A51.68Z'\"", + "tags": { + "TestUpdatedKey": "TestUpdatedValue" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi": {} + } + }, + "properties": { + "provisioningState": "Provisioning", + "encryption": { + "keyVaultProperties": { + "keyUri": "https://cmk2xkv.vault.azure.net/keys/Key1/0767b348bb1a4c07baa6c4ec0055d2b3" + }, + "kekIdentity": { + "userAssignedIdentity": "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi", + "useSystemAssignedIdentity": false + }, + "infrastructureEncryption": "Enabled" + } + }, + "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/swaggerExample", + "type": "Microsoft.RecoveryServices/vaults", + "sku": { + "name": "Standard" + } + }, + "headers": { + "Retry-After": "10", + "Azure-AsyncOperation": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/swaggerExample/operationStatus/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2015-03-15" + } + } + } +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/PUTVault_WithUserAssignedIdentity.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/PUTVault_WithUserAssignedIdentity.json new file mode 100644 index 000000000000..fc7890a08ce6 --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/PUTVault_WithUserAssignedIdentity.json @@ -0,0 +1,78 @@ +{ + "parameters": { + "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18", + "resourceGroupName": "Default-RecoveryServices-ResourceGroup", + "vaultName": "swaggerExample", + "api-version": "2021-02-10", + "vault": { + "properties": {}, + "sku": { + "name": "Standard" + }, + "location": "West US", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi": {} + } + } + } + }, + "responses": { + "200": { + "body": { + "location": "westus", + "name": "swaggerExample", + "etag": "W/\"datetime'2017-12-15T12%3A36%3A51.68Z'\"", + "tags": { + "TestUpdatedKey": "TestUpdatedValue" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi": { + "clientId": "fbe75b66-01c5-4f87-a220-233af3270436", + "principalId": "075a0ca6-43f6-4434-9abf-c9b1b79f9219" + } + } + }, + "properties": { + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/swaggerExample", + "type": "Microsoft.RecoveryServices/vaults", + "sku": { + "name": "Standard" + } + } + }, + "201": { + "body": { + "location": "westus", + "name": "swaggerExample", + "etag": "W/\"datetime'2017-12-15T12%3A36%3A51.68Z'\"", + "tags": { + "TestUpdatedKey": "TestUpdatedValue" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi": {} + } + }, + "properties": { + "provisioningState": "Provisioning" + }, + "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/swaggerExample", + "type": "Microsoft.RecoveryServices/vaults", + "sku": { + "name": "Standard" + } + }, + "headers": { + "Retry-After": "10", + "Azure-AsyncOperation": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/swaggerExample/operationStatus/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2015-03-15" + } + } + } +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/PatchVault_WithCMK2.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/PatchVault_WithCMK2.json new file mode 100644 index 000000000000..7fa33fc80f8a --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/PatchVault_WithCMK2.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18", + "resourceGroupName": "HelloWorld", + "vaultName": "swaggerExample", + "api-version": "2021-02-10", + "vault": { + "tags": { + "PatchKey": "PatchKeyUpdated" + }, + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "encryption": { + "kekIdentity": { + "useSystemAssignedIdentity": true + } + } + } + } + }, + "responses": { + "200": { + "body": { + "location": "westus", + "name": "swaggerExample", + "etag": "W/\"datetime'2017-12-15T12%3A36%3A51.68Z'\"", + "tags": { + "PatchKey": "PatchKeyUpdated" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi": { + "clientId": "fbe75b66-01c5-4f87-a220-233af3270436", + "principalId": "075a0ca6-43f6-4434-9abf-c9b1b79f9219" + } + } + }, + "properties": { + "provisioningState": "Succeeded", + "encryption": { + "keyVaultProperties": { + "keyUri": "https://cmk2xkv.vault.azure.net/keys/Key1/0767b348bb1a4c07baa6c4ec0055d2b3" + }, + "kekIdentity": { + "useSystemAssignedIdentity": true + }, + "infrastructureEncryption": "Enabled" + } + }, + "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample", + "type": "Microsoft.RecoveryServices/vaults", + "sku": { + "name": "Standard" + } + } + }, + "202": { + "headers": { + "Retry-After": "10", + "Azure-AsyncOperation": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample/operationStatus/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2015-03-15", + "Location": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample/operationResults/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2015-03-15" + } + } + } +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/UpdateVaultExtendedInfo.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/UpdateVaultExtendedInfo.json new file mode 100644 index 000000000000..3e3c45a12cc6 --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/UpdateVaultExtendedInfo.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18", + "resourceGroupName": "Default-RecoveryServices-ResourceGroup", + "vaultName": "swaggerExample", + "api-version": "2021-02-10", + "resourceResourceExtendedInfoDetails": { + "properties": { + "integrityKey": "J99wzS27fmJ+Wjot7xO5wA==", + "algorithm": "None" + } + } + }, + "responses": { + "200": { + "body": { + "name": "vaultExtendedInfo", + "etag": "f0d0260b-b92d-4458-ba0a-32c6cdabacb7", + "properties": { + "integrityKey": "J99wzS27fmJ+Wjot7xO5wA==", + "algorithm": "None" + }, + "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/swaggerExample/extendedInformation/vaultExtendedInfo", + "type": "Microsoft.RecoveryServices/vaults/extendedInformation" + } + } + } +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/registeredidentities.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/registeredidentities.json new file mode 100644 index 000000000000..398f153c8a20 --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/registeredidentities.json @@ -0,0 +1,372 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-10", + "title": "RecoveryServicesClient", + "x-ms-code-generation-settings": { + "internalConstructors": false + } + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/certificates/{certificateName}": { + "put": { + "tags": [ + "VaultCertificates" + ], + "description": "Uploads a certificate for a resource.", + "operationId": "VaultCertificates_Create", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "name": "certificateName", + "in": "path", + "description": "Certificate friendly name.", + "required": true, + "type": "string" + }, + { + "name": "certificateRequest", + "in": "body", + "description": "Input parameters for uploading the vault certificate.", + "required": true, + "schema": { + "$ref": "#/definitions/CertificateRequest" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VaultCertificateResponse" + } + } + }, + "deprecated": false, + "x-ms-examples": { + "Download vault credential file": { + "$ref": "./examples/PUTVaultCred.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/registeredIdentities/{identityName}": { + "delete": { + "tags": [ + "RegisteredIdentities" + ], + "description": "Unregisters the given container from your Recovery Services vault.", + "operationId": "RegisteredIdentities_Delete", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "name": "identityName", + "in": "path", + "description": "Name of the protection container to unregister.", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "NoContent" + } + }, + "deprecated": false, + "x-ms-examples": { + "Delete registered Identity": { + "$ref": "./examples/DeleteRegisteredIdentities.json" + } + } + } + } + }, + "definitions": { + "CertificateRequest": { + "description": "Details of the certificate to be uploaded to the vault.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/RawCertificateData" + } + } + }, + "RawCertificateData": { + "description": "Raw certificate data.", + "type": "object", + "properties": { + "authType": { + "description": "Specifies the authentication type.", + "enum": [ + "Invalid", + "ACS", + "AAD", + "AccessControlService", + "AzureActiveDirectory" + ], + "type": "string", + "x-ms-enum": { + "name": "AuthType", + "modelAsString": true + } + }, + "certificate": { + "format": "byte", + "description": "The base64 encoded certificate raw data string", + "type": "string" + } + } + }, + "ResourceCertificateAndAadDetails": { + "description": "Certificate details representing the Vault credentials for AAD.", + "required": [ + "certificate", + "resourceId", + "aadAuthority", + "aadTenantId", + "servicePrincipalClientId", + "servicePrincipalObjectId", + "azureManagementEndpointAudience", + "subject", + "validFrom", + "validTo", + "thumbprint", + "friendlyName", + "issuer" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ResourceCertificateDetails" + } + ], + "properties": { + "aadAuthority": { + "description": "AAD tenant authority.", + "type": "string" + }, + "aadTenantId": { + "description": "AAD tenant Id.", + "type": "string" + }, + "servicePrincipalClientId": { + "description": "AAD service principal clientId.", + "type": "string" + }, + "servicePrincipalObjectId": { + "description": "AAD service principal ObjectId.", + "type": "string" + }, + "azureManagementEndpointAudience": { + "description": "Azure Management Endpoint Audience.", + "type": "string" + }, + "serviceResourceId": { + "description": "Service Resource Id.", + "type": "string" + } + }, + "x-ms-discriminator-value": "AzureActiveDirectory" + }, + "ResourceCertificateAndAcsDetails": { + "description": "Certificate details representing the Vault credentials for ACS.", + "required": [ + "certificate", + "resourceId", + "globalAcsNamespace", + "globalAcsHostName", + "globalAcsRPRealm", + "subject", + "validFrom", + "validTo", + "thumbprint", + "friendlyName", + "issuer" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ResourceCertificateDetails" + } + ], + "properties": { + "globalAcsNamespace": { + "description": "ACS namespace name - tenant for our service.", + "type": "string" + }, + "globalAcsHostName": { + "description": "Acs mgmt host name to connect to.", + "type": "string" + }, + "globalAcsRPRealm": { + "description": "Global ACS namespace RP realm.", + "type": "string" + } + }, + "x-ms-discriminator-value": "AccessControlService" + }, + "ResourceCertificateDetails": { + "description": "Certificate details representing the Vault credentials.", + "required": [ + "authType" + ], + "type": "object", + "properties": { + "authType": { + "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.", + "type": "string" + }, + "certificate": { + "format": "byte", + "description": "The base64 encoded certificate raw data string.", + "type": "string" + }, + "friendlyName": { + "description": "Certificate friendly name.", + "type": "string" + }, + "issuer": { + "description": "Certificate issuer.", + "type": "string" + }, + "resourceId": { + "format": "int64", + "description": "Resource ID of the vault.", + "type": "integer" + }, + "subject": { + "description": "Certificate Subject Name.", + "type": "string" + }, + "thumbprint": { + "description": "Certificate thumbprint.", + "type": "string" + }, + "validFrom": { + "format": "date-time", + "description": "Certificate Validity start Date time.", + "type": "string" + }, + "validTo": { + "format": "date-time", + "description": "Certificate Validity End Date time.", + "type": "string" + } + }, + "discriminator": "authType" + }, + "VaultCertificateResponse": { + "description": "Certificate corresponding to a vault that can be used by clients to register themselves with the vault.", + "type": "object", + "properties": { + "name": { + "description": "Resource name associated with the resource.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Resource type represents the complete path of the form Namespace/ResourceType/ResourceType/...", + "type": "string", + "readOnly": true + }, + "id": { + "description": "Resource Id represents the complete path to the resource.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/ResourceCertificateDetails" + } + }, + "x-ms-azure-resource": true + } + }, + "parameters": { + "SubscriptionId": { + "name": "subscriptionId", + "in": "path", + "description": "The subscription Id.", + "required": true, + "type": "string" + }, + "ResourceGroupName": { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group where the recovery services vault is present.", + "required": true, + "x-ms-parameter-location": "method", + "type": "string" + }, + "VaultName": { + "name": "vaultName", + "in": "path", + "description": "The name of the recovery services vault.", + "required": true, + "x-ms-parameter-location": "method", + "type": "string" + }, + "ApiVersion": { + "name": "api-version", + "in": "query", + "description": "Client Api Version.", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account." + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/replicationusages.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/replicationusages.json new file mode 100644 index 000000000000..53201956fe59 --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/replicationusages.json @@ -0,0 +1,208 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-10", + "title": "RecoveryServicesClient", + "x-ms-code-generation-settings": { + "internalConstructors": false + } + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/replicationUsages": { + "get": { + "tags": [ + "ReplicationUsages" + ], + "description": "Fetches the replication usages of the vault.", + "operationId": "ReplicationUsages_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/VaultName" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationUsageList" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "Gets Replication usages of vault": { + "$ref": "./examples/ListReplicationUsages.json" + } + } + } + } + }, + "definitions": { + "JobsSummary": { + "description": "Summary of the replication job data for this vault.", + "type": "object", + "properties": { + "failedJobs": { + "description": "Count of failed jobs.", + "type": "integer" + }, + "suspendedJobs": { + "description": "Count of suspended jobs.", + "type": "integer" + }, + "inProgressJobs": { + "description": "Count of in-progress jobs.", + "type": "integer" + } + } + }, + "MonitoringSummary": { + "description": "Summary of the replication monitoring data for this vault.", + "type": "object", + "properties": { + "unHealthyVmCount": { + "description": "Count of unhealthy VMs.", + "type": "integer" + }, + "unHealthyProviderCount": { + "description": "Count of unhealthy replication providers.", + "type": "integer" + }, + "eventsCount": { + "description": "Count of all critical warnings.", + "type": "integer" + }, + "deprecatedProviderCount": { + "description": "Count of all deprecated recovery service providers.", + "type": "integer" + }, + "supportedProviderCount": { + "description": "Count of all the supported recovery service providers.", + "type": "integer" + }, + "unsupportedProviderCount": { + "description": "Count of all the unsupported recovery service providers.", + "type": "integer" + } + } + }, + "ReplicationUsage": { + "description": "Replication usages of a vault.", + "type": "object", + "properties": { + "monitoringSummary": { + "$ref": "#/definitions/MonitoringSummary", + "description": "Summary of the replication monitoring data for this vault." + }, + "jobsSummary": { + "$ref": "#/definitions/JobsSummary", + "description": "Summary of the replication jobs data for this vault." + }, + "protectedItemCount": { + "description": "Number of replication protected items for this vault.", + "type": "integer" + }, + "recoveryPlanCount": { + "description": "Number of replication recovery plans for this vault.", + "type": "integer" + }, + "registeredServersCount": { + "description": "Number of servers registered to this vault.", + "type": "integer" + }, + "recoveryServicesProviderAuthType": { + "description": "The authentication type of recovery service providers in the vault.", + "type": "integer" + } + } + }, + "ReplicationUsageList": { + "description": "Replication usages for vault.", + "type": "object", + "properties": { + "value": { + "description": "The list of replication usages for the given vault.", + "type": "array", + "items": { + "$ref": "#/definitions/ReplicationUsage" + } + } + } + } + }, + "parameters": { + "SubscriptionId": { + "name": "subscriptionId", + "in": "path", + "description": "The subscription Id.", + "required": true, + "type": "string" + }, + "ResourceGroupName": { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group where the recovery services vault is present.", + "required": true, + "x-ms-parameter-location": "method", + "type": "string" + }, + "VaultName": { + "name": "vaultName", + "in": "path", + "description": "The name of the recovery services vault.", + "required": true, + "x-ms-parameter-location": "method", + "type": "string" + }, + "ApiVersion": { + "name": "api-version", + "in": "query", + "description": "Client Api Version.", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account." + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/vaults.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/vaults.json new file mode 100644 index 000000000000..afb7b346fba9 --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/vaults.json @@ -0,0 +1,1717 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-10", + "title": "RecoveryServicesClient", + "x-ms-code-generation-settings": { + "internalConstructors": false + } + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/privateLinkResources": { + "get": { + "tags": [ + "ListPrivateLinkResources" + ], + "summary": "Returns the list of private link resources that need to be created for Backup and SiteRecovery", + "operationId": "PrivateLinkResources_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateLinkResources" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink", + "itemName": "value" + }, + "x-ms-examples": { + "List PrivateLinkResources": { + "$ref": "./examples/ListPrivateLinkResources.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/privateLinkResources/{privateLinkResourceName}": { + "get": { + "tags": [ + "GetPrivateLinkResources" + ], + "summary": "Returns a specified private link resource that need to be created for Backup and SiteRecovery", + "operationId": "PrivateLinkResources_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "name": "privateLinkResourceName", + "in": "path", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateLinkResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "deprecated": false, + "x-ms-examples": { + "Get PrivateLinkResource": { + "$ref": "./examples/GetPrivateLinkResources.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/locations/{location}/checkNameAvailability": { + "post": { + "tags": [ + "RecoveryServices" + ], + "summary": "API to check for resource name availability.\r\nA name is available if no other resource exists that has the same SubscriptionId, Resource Name and Type\r\nor if one or more such resources exist, each of these must be GC'd and their time of deletion be more than 24 Hours Ago", + "operationId": "RecoveryServices_CheckNameAvailability", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "name": "location", + "in": "path", + "description": "Location of the resource", + "required": true, + "type": "string" + }, + { + "name": "input", + "in": "body", + "description": "Contains information about Resource type and Resource name", + "required": true, + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityParameters" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Availability status of Resource Name when no resource with same name, type and subscription exists, nor has been deleted within last 24 hours": { + "$ref": "./examples/CheckNameAvailability_Available.json" + }, + "Availability status of Resource Name when resource with same name, type and subscription exists": { + "$ref": "./examples/CheckNameAvailability_NotAvailable.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.RecoveryServices/vaults": { + "get": { + "tags": [ + "Vaults" + ], + "description": "Fetches all the resources of the specified type in the subscription.", + "operationId": "Vaults_ListBySubscriptionId", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VaultList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink", + "itemName": "value" + }, + "x-ms-examples": { + "List of Recovery Services Resources in SubscriptionId": { + "$ref": "./examples/ListBySubscriptionIds.json" + } + } + } + }, + "/providers/Microsoft.RecoveryServices/operations": { + "get": { + "tags": [ + "Operations" + ], + "description": "Returns the list of available operations.", + "operationId": "Operations_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ClientDiscoveryResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink", + "itemName": "value" + }, + "x-ms-examples": { + "ListOperations": { + "$ref": "./examples/ListOperations.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults": { + "get": { + "tags": [ + "Vaults" + ], + "description": "Retrieve a list of Vaults.", + "operationId": "Vaults_ListByResourceGroup", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceGroupName" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VaultList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink", + "itemName": "value" + }, + "x-ms-examples": { + "List of Recovery Services Resources in ResourceGroup": { + "$ref": "./examples/ListResources.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}": { + "get": { + "tags": [ + "Vaults" + ], + "description": "Get the Vault details.", + "operationId": "Vaults_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/VaultName" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Vault" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "deprecated": false, + "x-ms-examples": { + "Get Recovery Services Resource": { + "$ref": "./examples/GETVault.json" + } + } + }, + "put": { + "tags": [ + "Vaults" + ], + "description": "Creates or updates a Recovery Services vault.", + "operationId": "Vaults_CreateOrUpdate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "name": "vault", + "in": "body", + "description": "Recovery Services Vault to be created.", + "required": true, + "schema": { + "$ref": "#/definitions/Vault" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Vault" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/Vault" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "deprecated": false, + "x-ms-examples": { + "Create or Update Recovery Services vault": { + "$ref": "./examples/PUTVault.json" + }, + "Create or Update Vault with User Assigned Identity": { + "$ref": "./examples/PUTVault_WithUserAssignedIdentity.json" + }, + "Create or Update Vault with CustomerManagedKeys": { + "$ref": "./examples/PUTVault_WithCMK.json" + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "Vaults" + ], + "description": "Deletes a vault.", + "operationId": "Vaults_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/VaultName" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "deprecated": false, + "x-ms-examples": { + "Delete Recovery Services Vault": { + "$ref": "./examples/DeleteVault.json" + } + } + }, + "patch": { + "tags": [ + "Vaults" + ], + "description": "Updates the vault.", + "operationId": "Vaults_Update", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "name": "vault", + "in": "body", + "description": "Recovery Services Vault to be created.", + "required": true, + "schema": { + "$ref": "#/definitions/PatchVault" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Vault" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "deprecated": false, + "x-ms-examples": { + "Update Resource": { + "$ref": "./examples/PATCHVault.json" + }, + "Update Resource With User Assigned Identity": { + "$ref": "./examples/PATCHVault_WithUserAssignedIdentity.json" + }, + "Update Resource With CustomerManagedKeys": { + "$ref": "./examples/PATCHVault_WithCMK.json" + }, + "Update Resource With CustomerManagedKeys2": { + "$ref": "./examples/PatchVault_WithCMK2.json" + }, + "Update Resource With CustomerManagedKeys3": { + "$ref": "./examples/PATCHVault_WithCMK3.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/extendedInformation/vaultExtendedInfo": { + "get": { + "tags": [ + "VaultExtendedInfo" + ], + "description": "Get the vault extended info.", + "operationId": "VaultExtendedInfo_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/VaultName" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VaultExtendedInfoResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "deprecated": false, + "x-ms-examples": { + "Get ExtendedInfo of Resource": { + "$ref": "./examples/GETVaultExtendedInfo.json" + } + } + }, + "put": { + "tags": [ + "VaultExtendedInfo" + ], + "description": "Create vault extended info.", + "operationId": "VaultExtendedInfo_CreateOrUpdate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "name": "resourceResourceExtendedInfoDetails", + "in": "body", + "description": "Details of ResourceExtendedInfo", + "required": true, + "schema": { + "$ref": "#/definitions/VaultExtendedInfoResource" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VaultExtendedInfoResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "deprecated": false, + "x-ms-examples": { + "Put ExtendedInfo of Resource": { + "$ref": "./examples/UpdateVaultExtendedInfo.json" + } + } + }, + "patch": { + "tags": [ + "VaultExtendedInfo" + ], + "description": "Update vault extended info.", + "operationId": "VaultExtendedInfo_Update", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "name": "resourceResourceExtendedInfoDetails", + "in": "body", + "description": "Details of ResourceExtendedInfo", + "required": true, + "schema": { + "$ref": "#/definitions/VaultExtendedInfoResource" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VaultExtendedInfoResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "deprecated": false, + "x-ms-examples": { + "PATCH ExtendedInfo of Resource": { + "$ref": "./examples/UpdateVaultExtendedInfo.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/operationStatus/{operationId}": { + "get": { + "tags": [ + "Vaults" + ], + "description": "Gets the operation status for a resource.", + "operationId": "GetOperationStatus", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Operation Status": { + "$ref": "./examples/GetOperationStatus.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/operationResults/{operationId}": { + "get": { + "tags": [ + "Vaults" + ], + "description": "Gets the operation result for a resource.", + "operationId": "GetOperationResult", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Vault" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Operation Result": { + "$ref": "./examples/GetOperationResult.json" + } + } + } + } + }, + "definitions": { + "CheckNameAvailabilityParameters": { + "description": "Resource Name availability input parameters - Resource type and resource name", + "type": "object", + "properties": { + "type": { + "description": "Describes the Resource type: Microsoft.RecoveryServices/Vaults", + "type": "string" + }, + "name": { + "description": "Resource name for which availability needs to be checked", + "type": "string" + } + } + }, + "CheckNameAvailabilityResult": { + "description": "Response for check name availability API. Resource provider will set availability as true | false.", + "type": "object", + "properties": { + "nameAvailable": { + "type": "boolean" + }, + "reason": { + "type": "string" + }, + "message": { + "type": "string" + } + } + }, + "ClientDiscoveryDisplay": { + "description": "Localized display information of an operation.", + "type": "object", + "properties": { + "provider": { + "description": "Name of the provider for display purposes", + "type": "string" + }, + "resource": { + "description": "ResourceType for which this Operation can be performed.", + "type": "string" + }, + "operation": { + "description": "Operations Name itself.", + "type": "string" + }, + "description": { + "description": "Description of the operation having details of what operation is about.", + "type": "string" + } + } + }, + "ClientDiscoveryForLogSpecification": { + "description": "Class to represent shoebox log specification in json client discovery.", + "type": "object", + "properties": { + "name": { + "description": "Name of the log.", + "type": "string" + }, + "displayName": { + "description": "Localized display name", + "type": "string" + }, + "blobDuration": { + "description": "Blobs created in customer storage account per hour", + "type": "string" + } + } + }, + "ClientDiscoveryForProperties": { + "description": "Class to represent shoebox properties in json client discovery.", + "type": "object", + "properties": { + "serviceSpecification": { + "$ref": "#/definitions/ClientDiscoveryForServiceSpecification", + "description": "Operation properties." + } + } + }, + "ClientDiscoveryForServiceSpecification": { + "description": "Class to represent shoebox service specification in json client discovery.", + "type": "object", + "properties": { + "logSpecifications": { + "description": "List of log specifications of this operation.", + "type": "array", + "items": { + "$ref": "#/definitions/ClientDiscoveryForLogSpecification" + } + } + } + }, + "ClientDiscoveryResponse": { + "description": "Operations List response which contains list of available APIs.", + "type": "object", + "properties": { + "value": { + "description": "List of available operations.", + "type": "array", + "items": { + "$ref": "#/definitions/ClientDiscoveryValueForSingleApi" + } + }, + "nextLink": { + "description": "Link to the next chunk of the response", + "type": "string" + } + } + }, + "ClientDiscoveryValueForSingleApi": { + "description": "Available operation details.", + "type": "object", + "properties": { + "name": { + "description": "Name of the Operation.", + "type": "string" + }, + "display": { + "$ref": "#/definitions/ClientDiscoveryDisplay", + "description": "Contains the localized display information for this particular operation" + }, + "origin": { + "description": "The intended executor of the operation;governs the display of the operation in the RBAC UX and the audit logs UX", + "type": "string" + }, + "properties": { + "$ref": "#/definitions/ClientDiscoveryForProperties", + "description": "ShoeBox properties for the given operation." + } + } + }, + "Resource": { + "description": "ARM Resource.", + "type": "object", + "properties": { + "id": { + "description": "Resource Id represents the complete path to the resource.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Resource name associated with the resource.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Resource type represents the complete path of the form Namespace/ResourceType/ResourceType/...", + "type": "string", + "readOnly": true + }, + "etag": { + "description": "Optional ETag.", + "type": "string" + } + }, + "x-ms-azure-resource": true + }, + "Sku": { + "description": "Identifies the unique system identifier for each Azure resource.", + "required": [ + "name" + ], + "type": "object", + "properties": { + "name": { + "description": "The Sku name.", + "enum": [ + "Standard", + "RS0" + ], + "type": "string", + "x-ms-enum": { + "name": "SkuName", + "modelAsString": true + } + }, + "tier": { + "description": "The Sku tier.", + "type": "string" + } + } + }, + "TrackedResource": { + "description": "Tracked resource with location.", + "type": "object", + "required": [ + "location" + ], + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "location": { + "description": "Resource location.", + "type": "string" + }, + "tags": { + "description": "Resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "PatchTrackedResource": { + "description": "Tracked resource with location.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "location": { + "description": "Resource location.", + "type": "string" + }, + "tags": { + "description": "Resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "UpgradeDetails": { + "description": "Details for upgrading vault.", + "type": "object", + "properties": { + "operationId": { + "description": "ID of the vault upgrade operation.", + "type": "string", + "readOnly": true + }, + "startTimeUtc": { + "description": "UTC time at which the upgrade operation has started.", + "type": "string", + "readOnly": true, + "format": "date-time" + }, + "lastUpdatedTimeUtc": { + "description": "UTC time at which the upgrade operation status was last updated.", + "type": "string", + "readOnly": true, + "format": "date-time" + }, + "endTimeUtc": { + "description": "UTC time at which the upgrade operation has ended.", + "type": "string", + "readOnly": true, + "format": "date-time" + }, + "status": { + "description": "Status of the vault upgrade operation.", + "enum": [ + "Unknown", + "InProgress", + "Upgraded", + "Failed" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "VaultUpgradeState", + "modelAsString": true + } + }, + "message": { + "description": "Message to the user containing information about the upgrade operation.", + "type": "string", + "readOnly": true + }, + "triggerType": { + "description": "The way the vault upgrade was triggered.", + "enum": [ + "UserTriggered", + "ForcedUpgrade" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "TriggerType", + "modelAsString": true + } + }, + "upgradedResourceId": { + "description": "Resource ID of the upgraded vault.", + "type": "string", + "readOnly": true + }, + "previousResourceId": { + "description": "Resource ID of the vault before the upgrade.", + "type": "string", + "readOnly": true + } + } + }, + "Vault": { + "description": "Resource information, as returned by the resource provider.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TrackedResource" + } + ], + "properties": { + "identity": { + "$ref": "#/definitions/IdentityData" + }, + "properties": { + "$ref": "#/definitions/VaultProperties" + }, + "sku": { + "$ref": "#/definitions/Sku" + }, + "systemData": { + "$ref": "#/definitions/systemData" + } + } + }, + "systemData": { + "description": "Metadata pertaining to creation and last modification of the resource.", + "type": "object", + "readOnly": true, + "properties": { + "createdBy": { + "type": "string", + "description": "The identity that created the resource." + }, + "createdByType": { + "type": "string", + "description": "The type of identity that created the resource.", + "enum": [ + "User", + "Application", + "ManagedIdentity", + "Key" + ], + "x-ms-enum": { + "name": "createdByType", + "modelAsString": true + } + }, + "createdAt": { + "type": "string", + "format": "date-time", + "description": "The timestamp of resource creation (UTC)." + }, + "lastModifiedBy": { + "type": "string", + "description": "The identity that last modified the resource." + }, + "lastModifiedByType": { + "type": "string", + "description": "The type of identity that last modified the resource.", + "enum": [ + "User", + "Application", + "ManagedIdentity", + "Key" + ], + "x-ms-enum": { + "name": "createdByType", + "modelAsString": true + } + }, + "lastModifiedAt": { + "type": "string", + "format": "date-time", + "description": "The type of identity that last modified the resource." + } + } + }, + "PatchVault": { + "description": "Patch Resource information, as returned by the resource provider.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/PatchTrackedResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/VaultProperties" + }, + "sku": { + "$ref": "#/definitions/Sku" + }, + "identity": { + "$ref": "#/definitions/IdentityData" + } + } + }, + "VaultExtendedInfo": { + "description": "Vault extended information.", + "type": "object", + "properties": { + "integrityKey": { + "description": "Integrity key.", + "type": "string" + }, + "encryptionKey": { + "description": "Encryption key.", + "type": "string" + }, + "encryptionKeyThumbprint": { + "description": "Encryption key thumbprint.", + "type": "string" + }, + "algorithm": { + "description": "Algorithm for Vault ExtendedInfo", + "type": "string" + } + } + }, + "VaultExtendedInfoResource": { + "description": "Vault extended information.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/VaultExtendedInfo", + "x-ms-client-flatten": true + } + } + }, + "VaultList": { + "description": "The response model for a list of Vaults.", + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Vault" + } + }, + "nextLink": { + "type": "string", + "readOnly": true + } + } + }, + "VaultProperties": { + "description": "Properties of the vault.", + "type": "object", + "properties": { + "provisioningState": { + "description": "Provisioning State.", + "type": "string", + "readOnly": true + }, + "upgradeDetails": { + "$ref": "#/definitions/UpgradeDetails" + }, + "privateEndpointConnections": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnectionVaultProperties" + }, + "description": "List of private endpoint connection.", + "readOnly": true + }, + "privateEndpointStateForBackup": { + "description": "Private endpoint state for backup.", + "enum": [ + "None", + "Enabled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "VaultPrivateEndpointState", + "modelAsString": true + } + }, + "privateEndpointStateForSiteRecovery": { + "description": "Private endpoint state for site recovery.", + "enum": [ + "None", + "Enabled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "VaultPrivateEndpointState", + "modelAsString": true + } + }, + "encryption": { + "description": "Customer Managed Key details of the resource.", + "type": "object", + "properties": { + "keyVaultProperties": { + "$ref": "#/definitions/CmkKeyVaultProperties" + }, + "kekIdentity": { + "$ref": "#/definitions/CmkKekIdentity" + }, + "infrastructureEncryption": { + "description": "Enabling/Disabling the Double Encryption state", + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "InfrastructureEncryptionState", + "modelAsString": true + } + } + } + } + } + }, + "IdentityData": { + "required": [ + "type" + ], + "type": "object", + "description": "Identity for the resource.", + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal ID of resource identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant ID of resource." + }, + "type": { + "type": "string", + "description": "The type of managed identity used. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user-assigned identities. The type 'None' will remove any identities.", + "enum": [ + "SystemAssigned", + "None", + "UserAssigned", + "SystemAssigned, UserAssigned" + ], + "x-ms-enum": { + "name": "ResourceIdentityType", + "modelAsString": true + } + }, + "userAssignedIdentities": { + "description": "The list of user-assigned identities associated with the resource. The user-assigned identity dictionary keys will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/UserIdentity" + } + } + } + }, + "UserIdentity": { + "type": "object", + "description": "A resource identity that is managed by the user of the service.", + "properties": { + "principalId": { + "description": "The principal ID of the user-assigned identity.", + "type": "string", + "readOnly": true + }, + "clientId": { + "description": "The client ID of the user-assigned identity.", + "type": "string", + "readOnly": true + } + } + }, + "PrivateEndpointConnectionVaultProperties": { + "description": "Information to be stored in Vault properties as an element of privateEndpointConnections List.", + "readOnly": true, + "type": "object", + "properties": { + "id": { + "description": "Format of id subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.[Service]/{resource}/{resourceName}/privateEndpointConnections/{connectionName}.", + "readOnly": true, + "type": "string" + }, + "properties": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + } + }, + "PrivateEndpointConnection": { + "description": "Private Endpoint Connection Response Properties.", + "readOnly": true, + "type": "object", + "properties": { + "provisioningState": { + "description": "Gets or sets provisioning state of the private endpoint connection.", + "readOnly": true, + "enum": [ + "Succeeded", + "Deleting", + "Failed", + "Pending" + ], + "type": "string", + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionState" + } + } + }, + "PrivateEndpoint": { + "description": "The Private Endpoint network resource that is linked to the Private Endpoint connection.", + "readOnly": true, + "type": "object", + "properties": { + "id": { + "description": "Gets or sets id.", + "readOnly": true, + "type": "string" + } + } + }, + "PrivateLinkServiceConnectionState": { + "description": "Gets or sets private link service connection state.", + "readOnly": true, + "type": "object", + "properties": { + "status": { + "description": "Gets or sets the status.", + "readOnly": true, + "enum": [ + "Pending", + "Approved", + "Rejected", + "Disconnected" + ], + "type": "string", + "x-ms-enum": { + "name": "PrivateEndpointConnectionStatus", + "modelAsString": true + } + }, + "description": { + "description": "Gets or sets description.", + "readOnly": true, + "type": "string" + }, + "actionsRequired": { + "description": "Gets or sets actions required.", + "readOnly": true, + "type": "string" + } + } + }, + "PrivateLinkResources": { + "description": "Class which represent the stamps associated with the vault.", + "readOnly": true, + "type": "object", + "properties": { + "value": { + "description": "A collection of private link resources", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + } + }, + "nextLink": { + "description": "Link to the next chunk of the response", + "type": "string" + } + } + }, + "PrivateLinkResource": { + "description": "Information of the private link resource.", + "readOnly": true, + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "Resource properties", + "x-ms-client-flatten": true + }, + "id": { + "description": "Fully qualified identifier of the resource.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name of the resource.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "e.g. Microsoft.RecoveryServices/vaults/privateLinkResources", + "readOnly": true, + "type": "string" + } + } + }, + "PrivateLinkResourceProperties": { + "type": "object", + "description": "Properties of the private link resource.", + "properties": { + "groupId": { + "description": "e.g. f9ad6492-33d4-4690-9999-6bfd52a0d081 (Backup) or f9ad6492-33d4-4690-9999-6bfd52a0d082 (SiteRecovery)", + "readOnly": true, + "type": "string" + }, + "requiredMembers": { + "description": "[backup-ecs1, backup-prot1, backup-prot1b, backup-prot1c, backup-id1]", + "readOnly": true, + "type": "array", + "items": { + "type": "string" + } + }, + "requiredZoneNames": { + "description": "The private link resource Private link DNS zone name.", + "readOnly": true, + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "CmkKeyVaultProperties": { + "type": "object", + "description": "The properties of the Key Vault which hosts CMK", + "properties": { + "keyUri": { + "description": "The key uri of the Customer Managed Key", + "type": "string" + } + } + }, + "CmkKekIdentity": { + "type": "object", + "description": "The details of the identity used for CMK", + "properties": { + "useSystemAssignedIdentity": { + "type": "boolean", + "description": "Indicate that system assigned identity should be used. Mutually exclusive with 'userAssignedIdentity' field" + }, + "userAssignedIdentity": { + "type": "string", + "description": "The user assigned identity to be used to grant permissions in case the type of identity used is UserAssigned" + } + } + }, + "OperationResource": { + "type": "object", + "description": "Operation Resource", + "properties": { + "endTime": { + "description": "End time of the operation", + "format": "date-time", + "type": "string" + }, + "error": { + "$ref": "#/definitions/Error", + "description": "Required if status == failed or status == canceled. This is the OData v4 error format, used by the RPC and will go into the v2.2 Azure REST API guidelines." + }, + "id": { + "description": "It should match what is used to GET the operation result", + "type": "string" + }, + "name": { + "description": "It must match the last segment of the \"id\" field, and will typically be a GUID / system generated value", + "type": "string" + }, + "status": { + "description": "The status of the operation. (InProgress/Success/Failed/Cancelled)", + "type": "string" + }, + "startTime": { + "description": "Start time of the operation", + "format": "date-time", + "type": "string" + } + } + }, + "CloudError": { + "description": "An error response from Azure Backup.", + "properties": { + "error": { + "$ref": "#/definitions/Error" + } + }, + "title": "CloudError", + "x-ms-external": true + }, + "Error": { + "description": "The resource management error response.", + "properties": { + "additionalInfo": { + "description": "The error additional info.", + "items": { + "$ref": "#/definitions/ErrorAdditionalInfo" + }, + "readOnly": true, + "type": "array" + }, + "code": { + "description": "The error code.", + "readOnly": true, + "type": "string" + }, + "details": { + "description": "The error details.", + "items": { + "$ref": "#/definitions/Error" + }, + "readOnly": true, + "type": "array" + }, + "message": { + "description": "The error message.", + "readOnly": true, + "type": "string" + }, + "target": { + "description": "The error target.", + "readOnly": true, + "type": "string" + } + } + }, + "ErrorAdditionalInfo": { + "description": "The resource management error additional info.", + "properties": { + "info": { + "description": "The additional info.", + "readOnly": true, + "type": "object" + }, + "type": { + "description": "The additional info type.", + "readOnly": true, + "type": "string" + } + } + } + }, + "parameters": { + "SubscriptionId": { + "name": "subscriptionId", + "in": "path", + "description": "The subscription Id.", + "required": true, + "type": "string" + }, + "ResourceGroupName": { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group where the recovery services vault is present.", + "required": true, + "x-ms-parameter-location": "method", + "type": "string" + }, + "VaultName": { + "name": "vaultName", + "in": "path", + "description": "The name of the recovery services vault.", + "required": true, + "x-ms-parameter-location": "method", + "type": "string" + }, + "ApiVersion": { + "name": "api-version", + "in": "query", + "description": "Client Api Version.", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account." + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/vaultusages.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/vaultusages.json new file mode 100644 index 000000000000..35eb9a8cd13d --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/vaultusages.json @@ -0,0 +1,189 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-10", + "title": "RecoveryServicesClient", + "x-ms-code-generation-settings": { + "internalConstructors": false + } + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/usages": { + "get": { + "tags": [ + "VaultUsages" + ], + "description": "Fetches the usages of the vault.", + "operationId": "Usages_ListByVaults", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/VaultName" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VaultUsageList" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "Gets vault usages": { + "$ref": "./examples/ListUsages.json" + } + } + } + } + }, + "definitions": { + "VaultUsage": { + "description": "Usages of a vault.", + "type": "object", + "properties": { + "unit": { + "description": "Unit of the usage.", + "enum": [ + "Count", + "Bytes", + "Seconds", + "Percent", + "CountPerSecond", + "BytesPerSecond" + ], + "type": "string", + "x-ms-enum": { + "name": "UsagesUnit", + "modelAsString": true + } + }, + "quotaPeriod": { + "description": "Quota period of usage.", + "type": "string" + }, + "nextResetTime": { + "format": "date-time", + "description": "Next reset time of usage.", + "type": "string" + }, + "currentValue": { + "format": "int64", + "description": "Current value of usage.", + "type": "integer" + }, + "limit": { + "format": "int64", + "description": "Limit of usage.", + "type": "integer" + }, + "name": { + "$ref": "#/definitions/NameInfo", + "description": "Name of usage." + } + } + }, + "VaultUsageList": { + "description": "Usage for vault.", + "type": "object", + "properties": { + "value": { + "description": "The list of usages for the given vault.", + "type": "array", + "items": { + "$ref": "#/definitions/VaultUsage" + } + } + } + }, + "NameInfo": { + "description": "The name of usage.", + "type": "object", + "properties": { + "value": { + "description": "Value of usage.", + "type": "string" + }, + "localizedValue": { + "description": "Localized value of usage.", + "type": "string" + } + } + } + }, + "parameters": { + "SubscriptionId": { + "name": "subscriptionId", + "in": "path", + "description": "The subscription Id.", + "required": true, + "type": "string" + }, + "ResourceGroupName": { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group where the recovery services vault is present.", + "required": true, + "x-ms-parameter-location": "method", + "type": "string" + }, + "VaultName": { + "name": "vaultName", + "in": "path", + "description": "The name of the recovery services vault.", + "required": true, + "x-ms-parameter-location": "method", + "type": "string" + }, + "ApiVersion": { + "name": "api-version", + "in": "query", + "description": "Client Api Version.", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account." + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/CheckNameAvailability_Available.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/CheckNameAvailability_Available.json new file mode 100644 index 000000000000..6b897c1ef1d7 --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/CheckNameAvailability_Available.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18", + "resourceGroupName": "resGroupFoo", + "api-version": "2021-03-01", + "location": "westus", + "input": { + "name": "swaggerExample", + "type": "Microsoft.RecoveryServices/Vaults" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": true + } + } + } +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/CheckNameAvailability_NotAvailable.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/CheckNameAvailability_NotAvailable.json new file mode 100644 index 000000000000..46dc5c83d9d3 --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/CheckNameAvailability_NotAvailable.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18", + "resourceGroupName": "resGroupBar", + "api-version": "2021-03-01", + "location": "westus", + "input": { + "name": "swaggerExample2", + "type": "Microsoft.RecoveryServices/Vaults" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": false, + "reason": "AlreadyExists", + "message": "Resource already exists with the same name." + } + } + } +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/DeleteRegisteredIdentities.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/DeleteRegisteredIdentities.json new file mode 100644 index 000000000000..f6fff4d101a5 --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/DeleteRegisteredIdentities.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "77777777-d41f-4550-9f70-7708a3a2283b", + "resourceGroupName": "BCDRIbzRG", + "vaultName": "BCDRIbzVault", + "identityName": "dpmcontainer01", + "api-version": "2021-03-01" + }, + "responses": { + "204": {} + } +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/DeleteVault.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/DeleteVault.json new file mode 100644 index 000000000000..d65418913904 --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/DeleteVault.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18", + "resourceGroupName": "Default-RecoveryServices-ResourceGroup", + "vaultName": "swaggerExample", + "api-version": "2021-03-01" + }, + "responses": { + "200": {} + } +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/GETVault.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/GETVault.json new file mode 100644 index 000000000000..9dea5da830ff --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/GETVault.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18", + "resourceGroupName": "Default-RecoveryServices-ResourceGroup", + "vaultName": "swaggerExample", + "api-version": "2021-03-01" + }, + "responses": { + "200": { + "body": { + "location": "westus", + "name": "swaggerExample", + "etag": "W/\"datetime'2017-12-15T12%3A36%3A51.68Z'\"", + "tags": { + "TestUpdatedKey": "TestUpdatedValue" + }, + "identity": { + "tenantId": "d676e86e-2206-4a7c-999c-ece52c144b5b", + "principalId": "3137d6c7-5d6c-411c-b934-7a2a729ee247", + "type": "SystemAssigned" + }, + "properties": { + "provisioningState": "Succeeded", + "privateEndpointConnections": [ + { + "id": "/subscriptions/6c48fa17-39c7-45f1-90ac-47a587128ace/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/Vaults/pemsi-ecy-rsv2/privateEndpointConnections/pe114-pemsi-ecy-rsv.5944358949303501042.backup.75061caa-cba4-4849-8e09-608da4914aad", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/6c48fa17-39c7-45f1-90ac-47a587128ace/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.Network/privateEndpoints/pe114-pemsi-ecy-rsv" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "None", + "actionsRequired": "None" + } + } + } + ], + "privateEndpointStateForBackup": "Enabled", + "privateEndpointStateForSiteRecovery": "None" + }, + "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/swaggerExample", + "type": "Microsoft.RecoveryServices/vaults", + "sku": { + "name": "Standard" + } + } + } + } +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/GETVaultExtendedInfo.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/GETVaultExtendedInfo.json new file mode 100644 index 000000000000..b55a2d93c366 --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/GETVaultExtendedInfo.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18", + "resourceGroupName": "Default-RecoveryServices-ResourceGroup", + "vaultName": "swaggerExample", + "api-version": "2021-03-01" + }, + "responses": { + "200": { + "body": { + "name": "vaultExtendedInfo", + "etag": "f0d0260b-b92d-4458-ba0a-32c6cdabacb7", + "properties": { + "integrityKey": "J09wzS27fnJ+Wjot7xO5wA==", + "algorithm": "None" + }, + "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/swaggerExample/extendedInformation/vaultExtendedInfo", + "type": "Microsoft.RecoveryServices/vaults/extendedInformation" + } + } + } +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/GetOperationResult.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/GetOperationResult.json new file mode 100644 index 000000000000..55700ddd5ad5 --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/GetOperationResult.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18", + "resourceGroupName": "HelloWorld", + "vaultName": "swaggerExample", + "operationId": "YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==", + "api-version": "2021-03-01" + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Azure-AsyncOperation": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample/operationStatus/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2015-03-15", + "Location": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample/operationResults/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2015-03-15" + } + }, + "200": { + "body": { + "location": "westus", + "name": "swaggerExample", + "etag": "W/\"datetime'2017-12-15T12%3A36%3A51.68Z'\"", + "tags": { + "PatchKey": "PatchKeyUpdated" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi": { + "clientId": "fbe75b66-01c5-4f87-a220-233af3270436", + "principalId": "075a0ca6-43f6-4434-9abf-c9b1b79f9219" + } + } + }, + "properties": { + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample", + "type": "Microsoft.RecoveryServices/vaults", + "sku": { + "name": "Standard" + } + } + } + } +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/GetOperationStatus.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/GetOperationStatus.json new file mode 100644 index 000000000000..6f8b1c220522 --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/GetOperationStatus.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18", + "resourceGroupName": "HelloWorld", + "vaultName": "swaggerExample", + "operationId": "YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==", + "api-version": "2021-03-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample/operationStatus/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==", + "name": "YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==", + "status": "Succeeded", + "startTime": "2019-11-20T09:49:44.0478496Z", + "endTime": "2019-11-20T09:49:46Z" + } + } + } +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/GetPrivateLinkResources.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/GetPrivateLinkResources.json new file mode 100644 index 000000000000..4646e6e7d069 --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/GetPrivateLinkResources.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "6c48fa17-39c7-45f1-90ac-47a587128ace", + "resourceGroupName": "petesting", + "vaultName": "pemsi-ecy-rsv2", + "api-version": "2021-03-01", + "privateLinkResourceName": "backupResource" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/6c48fa17-39c7-45f1-90ac-47a587128ace/resourceGroups/petesting/providers/Microsoft.RecoveryServices/Vaults/pemsi-ecy-rsv2/privateLinkResources/backupResource", + "name": "backupResource", + "type": "Microsoft.RecoveryServices/Vaults/privateLinkResources", + "properties": { + "groupId": "AzureBackup", + "requiredMembers": [ + "backup-fab1", + "backup-rec2", + "backup-prot1", + "backup-ecs1", + "backup-tel1", + "backup-wbcm1", + "backup-fc1", + "backup-id1" + ], + "requiredZoneNames": [ + "privatelink.ecy.backup.windowsazure.com", + "privatelink.queue.core.windows.net", + "privatelink.blob.core.windows.net" + ] + } + } + } + } +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ListBySubscriptionIds.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ListBySubscriptionIds.json new file mode 100644 index 000000000000..96dfed61dcf3 --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ListBySubscriptionIds.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18", + "api-version": "2021-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "location": "westus", + "name": "patchtest", + "etag": "W/\"datetime'2017-11-22T11%3A05%3A19.907Z'\"", + "tags": { + "Love": "India" + }, + "properties": { + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/patchtest", + "type": "Microsoft.RecoveryServices/vaults", + "sku": { + "name": "Standard" + } + }, + { + "location": "westus", + "name": "swaggerExample", + "etag": "W/\"datetime'2017-12-15T12%3A36%3A51.68Z'\"", + "tags": { + "TestUpdatedKey": "TestUpdatedValue" + }, + "properties": { + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample", + "type": "Microsoft.RecoveryServices/vaults", + "sku": { + "name": "Standard" + } + }, + { + "location": "westus", + "name": "today1", + "etag": "W/\"datetime'2017-11-21T10%3A52%3A19.633Z'\"", + "tags": { + "TestUpdatedKey": "TestUpdatedValue" + }, + "properties": { + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/today1", + "type": "Microsoft.RecoveryServices/vaults", + "sku": { + "name": "Standard" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ListOperations.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ListOperations.json new file mode 100644 index 000000000000..94b1ff849b90 --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ListOperations.json @@ -0,0 +1,463 @@ +{ + "parameters": { + "api-version": "2021-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "microsoft.recoveryservices/vaults/usages/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Vault Usage", + "operation": "Recovery Services Vault usage details.", + "description": "Returns usage details for a Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupUsageSummaries/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Usages Summaries", + "operation": "Recovery Services Protected Items and Protected Servers usage summaries details.", + "description": "Returns summaries for Protected Items and Protected Servers for a Recovery Services ." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/storageConfig/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Vault Storage Config", + "operation": "Get Resource Storage Config", + "description": "Returns Storage Configuration for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/storageConfig/write", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Vault Storage Config", + "operation": "Write Resource Storage Config", + "description": "Updates Storage Configuration for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupconfig/vaultconfig/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Vault Config", + "operation": "Get Resource Config", + "description": "Returns Configuration for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupconfig/vaultconfig/write", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Vault Config", + "operation": "Update Resource Config", + "description": "Updates Configuration for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/tokenInfo/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Token Info", + "operation": "Get Vault Token Info", + "description": "Returns token information for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupSecurityPIN/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "SecurityPINInfo", + "operation": "Get Security PIN Info", + "description": "Returns Security PIN Information for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupManagementMetaData/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Management Metadata", + "operation": "Get Backup Management Metadata", + "description": "Returns Backup Management Metadata for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupOperationResults/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Operation Results", + "operation": "Get Backup Operation Result", + "description": "Returns Backup Operation Result for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupOperations/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Operation Status", + "operation": "Get Backup Operation Status", + "description": "Returns Backup Operation Status for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupJobs/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Jobs", + "operation": "Get Jobs", + "description": "Returns all Job Objects" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupJobs/cancel/action", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Jobs", + "operation": "Cancel Jobs", + "description": "Cancel the Job" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupJobsExport/action", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Export Backup Jobs", + "operation": "Export Jobs", + "description": "Export Jobs" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupJobs/operationResults/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Jobs Operation Results", + "operation": "Get Job Operation Result", + "description": "Returns the Result of Job Operation." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupJobsExport/operationResults/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Export Backup Jobs Operation Results", + "operation": "Get Export Job Operation Result", + "description": "Returns the Result of Export Job Operation." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Recovery Points", + "operation": "Get Recovery Points", + "description": "Get Recovery Points for Protected Items." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints/restore/action", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Recovery Points", + "operation": "Restore Recovery Points", + "description": "Restore Recovery Points for Protected Items." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints/provisionInstantItemRecovery/action", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Recovery Points", + "operation": "Provision Instant Item Recovery for Protected Item", + "description": "Provision Instant Item Recovery for Protected Item" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints/revokeInstantItemRecovery/action", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Recovery Points", + "operation": "Revoke Instant Item Recovery for Protected Item", + "description": "Revoke Instant Item Recovery for Protected Item" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupPolicies/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Policies", + "operation": "Get Protection Policy", + "description": "Returns all Protection Policies" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupPolicies/write", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Policies", + "operation": "Create Protection Policy", + "description": "Creates Protection Policy" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupPolicies/delete", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Policies", + "operation": "Delete Protection Policy", + "description": "Delete a Protection Policy" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupPolicies/operationResults/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Policy Operation Results", + "operation": "Get Policy Operation Results", + "description": "Get Results of Policy Operation." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupPolicies/operationsStatus/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Policy Operation Status", + "operation": "Get Policy Operation Status", + "description": "Get Status of Policy Operation." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protected Items", + "operation": "Get Protected Item Details", + "description": "Returns object details of the Protected Item" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupProtectedItems/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protected Items", + "operation": "Get All Protected Items", + "description": "Returns the list of all Protected Items." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/write", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protected Items", + "operation": "Create Backup Protected Item", + "description": "Create a backup Protected Item" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/delete", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protected Items", + "operation": "Delete Protected Items", + "description": "Deletes Protected Item" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/operationResults/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protected Item Operation Results", + "operation": "Get Protected Items Operation Results", + "description": "Gets Result of Operation Performed on Protected Items." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/operationsStatus/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protected Item Operation Status", + "operation": "Get Protected Items operation status", + "description": "Returns the status of Operation performed on Protected Items." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/backup/action", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protected Items", + "operation": "Backup Protected Item", + "description": "Performs Backup for Protected Item." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupProtectableItems/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Protectable Items", + "operation": "Get Protectable Items", + "description": "Returns list of all Protectable Items." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/refreshContainers/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Refresh Containers", + "operation": "Refresh container", + "description": "Refreshes the container list" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/operationResults/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Refresh Containers Operation Results", + "operation": "Get Operation Results", + "description": "Returns status of the operation" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupProtectionContainers/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Protection Containers", + "operation": "Get Containers In Subscription", + "description": "Returns all containers belonging to the subscription" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protection Containers", + "operation": "Get Registered Container", + "description": "Returns all registered containers" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/operationResults/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protection Containers Operation Results", + "operation": "Get Container Operation Results", + "description": "Gets result of Operation performed on Protection Container." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupEngines", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Engines", + "operation": "List of backup management servers.", + "description": "Returns all the backup management servers registered with vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupStatus", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Status", + "operation": "Check Backup Status for Vault", + "description": "Check Backup Status for Recovery Services Vaults" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupPreValidateProtection", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "PreValidate Protection", + "operation": "Pre Validate Enable Protection", + "description": "" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupValidateFeatures", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Validate Features", + "operation": "Validate Features", + "description": "Validate Features" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/backupProtectionIntent/write", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protection Intent", + "operation": "Create backup Protection Intent", + "description": "Create a backup Protection Intent" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/{fabricName}/protectionContainers/{containerName}/items/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Workload Items", + "operation": "Get all items in a container", + "description": "Get all items in a container" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/inquire/action", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protection Containers Inquire", + "operation": "Get all items in a container", + "description": "Get all items in a container" + }, + "origin": "user" + } + ] + } + } + } +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ListPrivateLinkResources.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ListPrivateLinkResources.json new file mode 100644 index 000000000000..5357b4320468 --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ListPrivateLinkResources.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "6c48fa17-39c7-45f1-90ac-47a587128ace", + "resourceGroupName": "petesting", + "vaultName": "pemsi-ecy-rsv2", + "api-version": "2021-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/6c48fa17-39c7-45f1-90ac-47a587128ace/resourceGroups/petesting/providers/Microsoft.RecoveryServices/Vaults/pemsi-ecy-rsv2/privateLinkResources/backupResource", + "name": "backupResource", + "type": "Microsoft.RecoveryServices/Vaults/privateLinkResources", + "properties": { + "groupId": "AzureBackup", + "requiredMembers": [ + "backup-fab1", + "backup-rec2", + "backup-prot1", + "backup-ecs1", + "backup-tel1", + "backup-wbcm1", + "backup-fc1", + "backup-id1" + ], + "requiredZoneNames": [ + "privatelink.ecy.backup.windowsazure.com", + "privatelink.queue.core.windows.net", + "privatelink.blob.core.windows.net" + ] + } + }, + { + "id": "/subscriptions/6c48fa17-39c7-45f1-90ac-47a587128ace/resourceGroups/gaallarg/providers/Microsoft.RecoveryServices/vaults/amchandnTest2702A/privateLinkResources/siteRecoveryResource", + "name": "siteRecoveryResource", + "type": "Microsoft.RecoveryServices/vaults/privateLinkResources", + "properties": { + "groupId": "AzureSiteRecovery", + "requiredMembers": [ + "siteRecovery-rcm1", + "siteRecovery-prot2", + "siteRecovery-tel1", + "siteRecovery-srs1", + "siteRecovery-prot2b", + "siteRecovery-id1" + ], + "requiredZoneNames": [ + "privatelink.ecy.siterecovery.windowsazure.com", + "privatelink.queue.core.windows.net", + "privatelink.blob.core.windows.net" + ] + } + } + ] + } + } + } +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ListReplicationUsages.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ListReplicationUsages.json new file mode 100644 index 000000000000..9d12a7c3362e --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ListReplicationUsages.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "vaultName": "avrai7517Vault1", + "resourceGroupName": "avrai7517RG1", + "subscriptionId": "6808dbbc-98c7-431f-a1b1-9580902423b7" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "monitoringSummary": { + "unHealthyVmCount": 0, + "unHealthyProviderCount": 0, + "eventsCount": 0, + "deprecatedProviderCount": 0, + "supportedProviderCount": 0, + "unsupportedProviderCount": 0 + }, + "jobsSummary": { + "failedJobs": 0, + "suspendedJobs": 0, + "inProgressJobs": 0 + }, + "protectedItemCount": 2, + "registeredServersCount": 2, + "recoveryPlanCount": 1 + } + ] + } + } + } +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ListResources.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ListResources.json new file mode 100644 index 000000000000..bda04dcd9636 --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ListResources.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18", + "resourceGroupName": "Default-RecoveryServices-ResourceGroup", + "api-version": "2021-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "location": "westus", + "name": "patchtest", + "etag": "W/\"datetime'2017-11-22T11%3A05%3A19.907Z'\"", + "tags": { + "Love": "India" + }, + "properties": { + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/patchtest", + "type": "Microsoft.RecoveryServices/vaults", + "sku": { + "name": "Standard" + } + }, + { + "location": "westus", + "name": "swaggerExample", + "etag": "W/\"datetime'2017-12-15T12%3A36%3A51.68Z'\"", + "tags": { + "TestUpdatedKey": "TestUpdatedValue" + }, + "properties": { + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/swaggerExample", + "type": "Microsoft.RecoveryServices/vaults", + "sku": { + "name": "Standard" + } + }, + { + "location": "westus", + "name": "today1", + "etag": "W/\"datetime'2017-11-21T10%3A52%3A19.633Z'\"", + "tags": { + "TestUpdatedKey": "TestUpdatedValue" + }, + "properties": { + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/today1", + "type": "Microsoft.RecoveryServices/vaults", + "sku": { + "name": "Standard" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ListUsages.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ListUsages.json new file mode 100644 index 000000000000..97634487ddc3 --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ListUsages.json @@ -0,0 +1,180 @@ +{ + "parameters": { + "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18", + "resourceGroupName": "Default-RecoveryServices-ResourceGroup", + "vaultName": "swaggerExample", + "api-version": "2021-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "unit": "Count", + "currentValue": 6, + "limit": -1, + "name": { + "value": "MABContainersCount", + "localizedValue": "Backup management servers" + } + }, + { + "unit": "Count", + "currentValue": 3, + "limit": -1, + "name": { + "value": "ProtectedItemCount", + "localizedValue": "Backup items/Azure virtual machine backup" + } + }, + { + "unit": "Count", + "currentValue": 0, + "limit": -1, + "name": { + "value": "ProtectedItemCriticalCount", + "localizedValue": "Critical" + } + }, + { + "unit": "Count", + "currentValue": 0, + "limit": -1, + "name": { + "value": "ProtectedItemWarningCount", + "localizedValue": "Warning" + } + }, + { + "unit": "Count", + "currentValue": 0, + "limit": -1, + "name": { + "value": "IaaSVMProtectedItemCount", + "localizedValue": "Azure Virtual Machines" + } + }, + { + "unit": "Count", + "currentValue": 0, + "limit": -1, + "name": { + "value": "IaaSVMProtectedItemCriticalCount", + "localizedValue": "Critical" + } + }, + { + "unit": "Count", + "currentValue": 0, + "limit": -1, + "name": { + "value": "IaaSVMProtectedItemWarningCount", + "localizedValue": "Warning" + } + }, + { + "unit": "Count", + "currentValue": 0, + "limit": -1, + "name": { + "value": "MABProtectedItemCount", + "localizedValue": "File-Folders" + } + }, + { + "unit": "Count", + "currentValue": 1, + "limit": -1, + "name": { + "value": "DPMProtectedItemCount", + "localizedValue": "DPM Protected Items Count" + } + }, + { + "unit": "Count", + "currentValue": 2, + "limit": -1, + "name": { + "value": "AzureBackupServerProtectedItemCount", + "localizedValue": "Azure Backup Server Protected Items Count" + } + }, + { + "unit": "Count", + "quotaPeriod": "P1D", + "currentValue": 0, + "limit": -1, + "name": { + "value": "InProgressJobsCount", + "localizedValue": "In progress" + } + }, + { + "unit": "Count", + "quotaPeriod": "P1D", + "currentValue": 0, + "limit": -1, + "name": { + "value": "FailedJobsCount", + "localizedValue": "Failed" + } + }, + { + "unit": "Bytes", + "currentValue": 117007930, + "limit": -1, + "name": { + "value": "GRSStorageUsage", + "localizedValue": "Cloud - GRS" + } + }, + { + "unit": "Bytes", + "currentValue": 0, + "limit": -1, + "name": { + "value": "LRSStorageUsage", + "localizedValue": "Cloud - LRS" + } + }, + { + "unit": "Count", + "currentValue": 5, + "limit": -1, + "name": { + "value": "ManagedInstances", + "localizedValue": "Protected Instances" + } + }, + { + "unit": "Bytes", + "currentValue": 0, + "limit": -1, + "name": { + "value": "GRSDedupStorageUsage", + "localizedValue": "Dedup - GRS" + } + }, + { + "unit": "Bytes", + "currentValue": 0, + "limit": -1, + "name": { + "value": "LRSDedupStorageUsage", + "localizedValue": "Dedup - LRS" + } + }, + { + "unit": "Bytes", + "currentValue": 117851553792, + "limit": -1, + "name": { + "value": "UsedDiskSize", + "localizedValue": "Backup Engines' Disk Used" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/PATCHVault.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/PATCHVault.json new file mode 100644 index 000000000000..6b35f90fd4d7 --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/PATCHVault.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18", + "resourceGroupName": "HelloWorld", + "vaultName": "swaggerExample", + "api-version": "2021-03-01", + "vault": { + "tags": { + "PatchKey": "PatchKeyUpdated" + } + } + }, + "responses": { + "200": { + "body": { + "location": "westus", + "name": "swaggerExample", + "etag": "W/\"datetime'2017-12-15T12%3A36%3A51.68Z'\"", + "tags": { + "PatchKey": "PatchKeyUpdated" + }, + "properties": { + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample", + "type": "Microsoft.RecoveryServices/vaults", + "sku": { + "name": "Standard" + } + } + }, + "202": { + "headers": { + "Retry-After": "10", + "Azure-AsyncOperation": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample/operationStatus/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2015-03-15", + "Location": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample/operationResults/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2015-03-15" + } + } + } +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/PATCHVault_WithCMK.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/PATCHVault_WithCMK.json new file mode 100644 index 000000000000..75a972c20d41 --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/PATCHVault_WithCMK.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18", + "resourceGroupName": "HelloWorld", + "vaultName": "swaggerExample", + "api-version": "2021-03-01", + "vault": { + "tags": { + "PatchKey": "PatchKeyUpdated" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi": {} + } + }, + "properties": { + "encryption": { + "keyVaultProperties": { + "keyUri": "https://cmk2xkv.vault.azure.net/keys/Key1/0767b348bb1a4c07baa6c4ec0055d2b3" + }, + "kekIdentity": { + "userAssignedIdentity": "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi" + }, + "infrastructureEncryption": "Enabled" + } + } + } + }, + "responses": { + "200": { + "body": { + "location": "westus", + "name": "swaggerExample", + "etag": "W/\"datetime'2017-12-15T12%3A36%3A51.68Z'\"", + "tags": { + "PatchKey": "PatchKeyUpdated" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi": { + "clientId": "fbe75b66-01c5-4f87-a220-233af3270436", + "principalId": "075a0ca6-43f6-4434-9abf-c9b1b79f9219" + } + } + }, + "properties": { + "provisioningState": "Succeeded", + "encryption": { + "keyVaultProperties": { + "keyUri": "https://cmk2xkv.vault.azure.net/keys/Key1/0767b348bb1a4c07baa6c4ec0055d2b3" + }, + "kekIdentity": { + "userAssignedIdentity": "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi", + "useSystemAssignedIdentity": false + }, + "infrastructureEncryption": "Enabled" + } + }, + "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample", + "type": "Microsoft.RecoveryServices/vaults", + "sku": { + "name": "Standard" + } + } + }, + "202": { + "headers": { + "Retry-After": "10", + "Azure-AsyncOperation": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample/operationStatus/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2015-03-15", + "Location": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample/operationResults/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2015-03-15" + } + } + } +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/PATCHVault_WithCMK3.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/PATCHVault_WithCMK3.json new file mode 100644 index 000000000000..42438d435a78 --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/PATCHVault_WithCMK3.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18", + "resourceGroupName": "HelloWorld", + "vaultName": "swaggerExample", + "api-version": "2021-03-01", + "vault": { + "tags": { + "PatchKey": "PatchKeyUpdated" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi": {} + } + }, + "properties": { + "encryption": { + "keyVaultProperties": { + "keyUri": "https://cmk2xkv.vault.azure.net/keys/Key1/0767b348bb1a4c07baa6c4ec0055d2b3" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "location": "westus", + "name": "swaggerExample", + "etag": "W/\"datetime'2017-12-15T12%3A36%3A51.68Z'\"", + "tags": { + "PatchKey": "PatchKeyUpdated" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi": { + "clientId": "fbe75b66-01c5-4f87-a220-233af3270436", + "principalId": "075a0ca6-43f6-4434-9abf-c9b1b79f9219" + } + } + }, + "properties": { + "provisioningState": "Succeeded", + "encryption": { + "keyVaultProperties": { + "keyUri": "https://cmk2xkv.vault.azure.net/keys/Key1/0767b348bb1a4c07baa6c4ec0055d2b3" + }, + "kekIdentity": { + "userAssignedIdentity": "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi", + "useSystemAssignedIdentity": false + }, + "infrastructureEncryption": "Enabled" + } + }, + "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample", + "type": "Microsoft.RecoveryServices/vaults", + "sku": { + "name": "Standard" + } + } + }, + "202": { + "headers": { + "Retry-After": "10", + "Azure-AsyncOperation": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample/operationStatus/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2015-03-15", + "Location": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample/operationResults/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2015-03-15" + } + } + } +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/PATCHVault_WithUserAssignedIdentity.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/PATCHVault_WithUserAssignedIdentity.json new file mode 100644 index 000000000000..0328ad88e899 --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/PATCHVault_WithUserAssignedIdentity.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18", + "resourceGroupName": "HelloWorld", + "vaultName": "swaggerExample", + "api-version": "2021-03-01", + "vault": { + "tags": { + "PatchKey": "PatchKeyUpdated" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi": {} + } + } + } + }, + "responses": { + "200": { + "body": { + "location": "westus", + "name": "swaggerExample", + "etag": "W/\"datetime'2017-12-15T12%3A36%3A51.68Z'\"", + "tags": { + "PatchKey": "PatchKeyUpdated" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi": { + "clientId": "fbe75b66-01c5-4f87-a220-233af3270436", + "principalId": "075a0ca6-43f6-4434-9abf-c9b1b79f9219" + } + } + }, + "properties": { + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample", + "type": "Microsoft.RecoveryServices/vaults", + "sku": { + "name": "Standard" + } + } + }, + "202": { + "headers": { + "Retry-After": "10", + "Azure-AsyncOperation": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample/operationStatus/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2015-03-15", + "Location": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample/operationResults/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2015-03-15" + } + } + } +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/PUTVault.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/PUTVault.json new file mode 100644 index 000000000000..b006ba060911 --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/PUTVault.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18", + "resourceGroupName": "Default-RecoveryServices-ResourceGroup", + "vaultName": "swaggerExample", + "api-version": "2021-03-01", + "vault": { + "properties": {}, + "sku": { + "name": "Standard" + }, + "location": "West US", + "identity": { + "type": "SystemAssigned" + } + } + }, + "responses": { + "200": { + "body": { + "location": "westus", + "name": "swaggerExample", + "etag": "W/\"datetime'2017-12-15T12%3A36%3A51.68Z'\"", + "tags": { + "TestUpdatedKey": "TestUpdatedValue" + }, + "identity": { + "tenantId": "d676e86e-2206-4a7c-999c-ece52c144b5b", + "principalId": "3137d6c7-5d6c-411c-b934-7a2a729ee247", + "type": "SystemAssigned" + }, + "properties": { + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/swaggerExample", + "type": "Microsoft.RecoveryServices/vaults", + "sku": { + "name": "RS0", + "tier": "Standard" + } + } + }, + "201": { + "body": { + "location": "westus", + "name": "swaggerExample", + "etag": "W/\"datetime'2017-12-15T12%3A36%3A51.68Z'\"", + "tags": { + "TestUpdatedKey": "TestUpdatedValue" + }, + "identity": { + "tenantId": "d676e86e-2206-4a7c-999c-ece52c144b5b", + "principalId": "3137d6c7-5d6c-411c-b934-7a2a729ee247", + "type": "SystemAssigned" + }, + "properties": { + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/swaggerExample", + "type": "Microsoft.RecoveryServices/vaults", + "sku": { + "name": "RS0", + "tier": "Standard" + } + } + } + } +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/PUTVaultCred.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/PUTVaultCred.json new file mode 100644 index 000000000000..ba53b32368fe --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/PUTVaultCred.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "77777777-d41f-4550-9f70-7708a3a2283b", + "resourceGroupName": "BCDRIbzRG", + "vaultName": "BCDRIbzVault", + "certificateName": "BCDRIbzVault77777777-d41f-4550-9f70-7708a3a2283b-12-18-2017-vaultcredentials", + "api-version": "2021-03-01", + "certificateRequest": { + "properties": { + "authType": "AAD", + "certificate": "MTTC3TCCAcWgAwIBAgIQEj9h+ZLlXK9KrqZX9UkAnzANBgkqhkiG9w0BAQUFADAeMRwwGgYDVQQDExNXaW5kb3dzIEF6dXJlIFRvb2xzMB4XDTE3MTIxODA5MTc1M1oXDTE3MTIyMzA5Mjc1M1owHjEcMBoGA1UEAxMTV2luZG93cyBBenVyZSBUb29sczCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAK773/eZZ69RbZZAT05r9MjUxu9y1L1Pn1EgPk62IPJyHlO3OZA922eSBahhP4bgmFljN4LVReqQ5eT/wqO0Zhc+yFkUy4U4RdbQLeUZt2W7yy9XLXgVvqeYDgsjg/QhHetgHArQBW+tlQq5+zPdU7zchI4rbShSJrWhLrZFWiOyFPsuAE4joUQHNlRifdCTsBGKk8HRCY3j1S3c4bfEn3zxlrvrXXssRuW5mJM95rMk0tskoRxXSCi6i9bnlki2Cs9mpVMmBFeofs41KwzlWU0TgpdD8s1QEdvfGB5NbByfetPX7MfJaTBeHZEGbv/Iq8l72u8sPBoOhcaH7qDE/mECAwEAAaMXMBUwEwYDVR0lBAwwCgYIKwYBBQUHAwIwDQYJKoZIhvcNAQEFBQADggEBAILfgHluye1Q+WelhgWhpBBdIq2C0btfV8eFsZaTlBUrM0fwpxQSlAWc2oYHVMQI4A5iUjbDOY35O4yc+TnWKDBKf+laqDP+yos4aiUPuadGUZfvDk7kuw7xeECs64JpHAIEKdRHFW9rD3gwG+nIWaDnEL/7rTyhL3kXrRW2MSUAL8g3GX8Z45c+MQY0jmASIqWdhGn1vpAGyA9mKkzsqg7FXjg8GZb24tGl5Ky85+ip4dkBfXinDD8WwaGyjhGGK97ErvNmN36qly/H0H1Qngiovg1FbHDmkcFO5QclnEJsFFmcO2CcHp5Fqh2wXn5O1cQaxCIRTpQ/uXRpDjl2wKs=" + } + } + }, + "responses": { + "200": { + "body": { + "name": "BCDRIbzVault77777777-d41f-4550-9f70-7708a3a2283b-12-18-2017-vaultcredentials", + "type": "Microsoft.RecoveryServices/vaults/certificates", + "id": "/Subscriptions/77777777-d41f-4550-9f70-7708a3a2283b/resourceGroups/BCDRIbzRG/providers/Microsoft.RecoveryServices/vaults/BCDRIbzVault/certificates/BCDRIbzVault77777777-d41f-4550-9f70-7708a3a2283b-12-18-2017-vaultcredentials", + "properties": { + "authType": "AzureActiveDirectory", + "certificate": "MTTC3TCCAcWgAwIBAgIQEj9h+ZLlXK9KrqZX9UkAnzANBgkqhkiG9w0BAQUFADAeMRwwGgYDVQQDExNXaW5kb3dzIEF6dXJlIFRvb2xzMB4XDTE3MTIxODA5MTc1M1oXDTE3MTIyMzA5Mjc1M1owHjEcMBoGA1UEAxMTV2luZG93cyBBenVyZSBUb29sczCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAK773/eZZ69RbZZAT05r9MjUxu9y1L1Pn1EgPk62IPJyHlO3OZA922eSBahhP4bgmFljN4LVReqQ5eT/wqO0Zhc+yFkUy4U4RdbQLeUZt2W7yy9XLXgVvqeYDgsjg/QhHetgHArQBW+tlQq5+zPdU7zchI4rbShSJrWhLrZFWiOyFPsuAE4joUQHNlRifdCTsBGKk8HRCY3j1S3c4bfEn3zxlrvrXXssRuW5mJM95rMk0tskoRxXSCi6i9bnlki2Cs9mpVMmBFeofs41KwzlWU0TgpdD8s1QEdvfGB5NbByfetPX7Mf JaTBeHZEGbv/Iq8l72u8sPBoOhcaH7qDE/mECAwEAAaMXMBUwEwYDVR0lBAwwCgYIKwYBBQUHAwIwDQYJKoZIhvcNAQEFBQADggEBAILfgHluye1Q+WelhgWhpBBdIq2C0btfV8eFsZaTlBUrM0fwpxQSlAWc2oYHVMQI4A5iUjbDOY35O4yc+TnWKDBKf+laqDP+yos4aiUPuadGUZfvDk7kuw7xeECs64JpHAIEKdRHFW9rD3gwG+nIWaDnEL/7rTyhL3kXrRW2MSUAL8g3GX8Z45c+MQY0jmASIqWdhGn1vpAGyA9mKkzsqg7FXjg8GZb24tGl5Ky85+ip4dkBfXinDD8WwaGyjhGGK97ErvNmN36qly/H0H1Qngiovg1FbHDmkcFO5QclnEJsFFmcO2CcHp5Fqh2wXn5O1cQaxCIRTpQ/uXRpDjl2wKs=", + "resourceId": 8726350008099341699, + "aadAuthority": "https://login.windows.net", + "aadTenantId": "9b0c2069-2eba-489f-95f4-eca15cb602ab", + "servicePrincipalClientId": "4932d0bd-b5f9-4659-94a0-7ab02d918933", + "servicePrincipalObjectId": "2d60221e-cef5-4e13-ba66-b33701a533bb", + "azureManagementEndpointAudience": "https://ppe1-id1.wus.wabppe.obs-test.com/restapi/", + "subject": "CN=Windows Azure Tools", + "validFrom": "2017-12-18T14:47:53+05:30", + "validTo": "2017-12-23T14:57:53+05:30", + "thumbprint": "019FE9BAD18A5A09A5CA53B593AF66331F3054AF", + "friendlyName": "", + "issuer": "CN=Windows Azure Tools" + } + } + } + } +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/PUTVault_WithCMK.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/PUTVault_WithCMK.json new file mode 100644 index 000000000000..33968d2d2a8a --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/PUTVault_WithCMK.json @@ -0,0 +1,108 @@ +{ + "parameters": { + "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18", + "resourceGroupName": "Default-RecoveryServices-ResourceGroup", + "vaultName": "swaggerExample", + "api-version": "2021-03-01", + "vault": { + "properties": { + "encryption": { + "keyVaultProperties": { + "keyUri": "https://cmk2xkv.vault.azure.net/keys/Key1/0767b348bb1a4c07baa6c4ec0055d2b3" + }, + "kekIdentity": { + "userAssignedIdentity": "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi" + }, + "infrastructureEncryption": "Enabled" + } + }, + "sku": { + "name": "Standard" + }, + "location": "West US", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi": {} + } + } + } + }, + "responses": { + "200": { + "body": { + "location": "westus", + "name": "swaggerExample", + "etag": "W/\"datetime'2017-12-15T12%3A36%3A51.68Z'\"", + "tags": { + "TestUpdatedKey": "TestUpdatedValue" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi": { + "clientId": "fbe75b66-01c5-4f87-a220-233af3270436", + "principalId": "075a0ca6-43f6-4434-9abf-c9b1b79f9219" + } + } + }, + "properties": { + "provisioningState": "Succeeded", + "encryption": { + "keyVaultProperties": { + "keyUri": "https://cmk2xkv.vault.azure.net/keys/Key1/0767b348bb1a4c07baa6c4ec0055d2b3" + }, + "kekIdentity": { + "userAssignedIdentity": "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi", + "useSystemAssignedIdentity": false + }, + "infrastructureEncryption": "Enabled" + } + }, + "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/swaggerExample", + "type": "Microsoft.RecoveryServices/vaults", + "sku": { + "name": "Standard" + } + } + }, + "201": { + "body": { + "location": "westus", + "name": "swaggerExample", + "etag": "W/\"datetime'2017-12-15T12%3A36%3A51.68Z'\"", + "tags": { + "TestUpdatedKey": "TestUpdatedValue" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi": {} + } + }, + "properties": { + "provisioningState": "Provisioning", + "encryption": { + "keyVaultProperties": { + "keyUri": "https://cmk2xkv.vault.azure.net/keys/Key1/0767b348bb1a4c07baa6c4ec0055d2b3" + }, + "kekIdentity": { + "userAssignedIdentity": "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi", + "useSystemAssignedIdentity": false + }, + "infrastructureEncryption": "Enabled" + } + }, + "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/swaggerExample", + "type": "Microsoft.RecoveryServices/vaults", + "sku": { + "name": "Standard" + } + }, + "headers": { + "Retry-After": "10", + "Azure-AsyncOperation": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/swaggerExample/operationStatus/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2015-03-15" + } + } + } +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/PUTVault_WithUserAssignedIdentity.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/PUTVault_WithUserAssignedIdentity.json new file mode 100644 index 000000000000..2e41d3afc75c --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/PUTVault_WithUserAssignedIdentity.json @@ -0,0 +1,78 @@ +{ + "parameters": { + "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18", + "resourceGroupName": "Default-RecoveryServices-ResourceGroup", + "vaultName": "swaggerExample", + "api-version": "2021-03-01", + "vault": { + "properties": {}, + "sku": { + "name": "Standard" + }, + "location": "West US", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi": {} + } + } + } + }, + "responses": { + "200": { + "body": { + "location": "westus", + "name": "swaggerExample", + "etag": "W/\"datetime'2017-12-15T12%3A36%3A51.68Z'\"", + "tags": { + "TestUpdatedKey": "TestUpdatedValue" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi": { + "clientId": "fbe75b66-01c5-4f87-a220-233af3270436", + "principalId": "075a0ca6-43f6-4434-9abf-c9b1b79f9219" + } + } + }, + "properties": { + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/swaggerExample", + "type": "Microsoft.RecoveryServices/vaults", + "sku": { + "name": "Standard" + } + } + }, + "201": { + "body": { + "location": "westus", + "name": "swaggerExample", + "etag": "W/\"datetime'2017-12-15T12%3A36%3A51.68Z'\"", + "tags": { + "TestUpdatedKey": "TestUpdatedValue" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi": {} + } + }, + "properties": { + "provisioningState": "Provisioning" + }, + "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/swaggerExample", + "type": "Microsoft.RecoveryServices/vaults", + "sku": { + "name": "Standard" + } + }, + "headers": { + "Retry-After": "10", + "Azure-AsyncOperation": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/swaggerExample/operationStatus/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2015-03-15" + } + } + } +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/PatchVault_WithCMK2.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/PatchVault_WithCMK2.json new file mode 100644 index 000000000000..de5bb2a55e52 --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/PatchVault_WithCMK2.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18", + "resourceGroupName": "HelloWorld", + "vaultName": "swaggerExample", + "api-version": "2021-03-01", + "vault": { + "tags": { + "PatchKey": "PatchKeyUpdated" + }, + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "encryption": { + "kekIdentity": { + "useSystemAssignedIdentity": true + } + } + } + } + }, + "responses": { + "200": { + "body": { + "location": "westus", + "name": "swaggerExample", + "etag": "W/\"datetime'2017-12-15T12%3A36%3A51.68Z'\"", + "tags": { + "PatchKey": "PatchKeyUpdated" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi": { + "clientId": "fbe75b66-01c5-4f87-a220-233af3270436", + "principalId": "075a0ca6-43f6-4434-9abf-c9b1b79f9219" + } + } + }, + "properties": { + "provisioningState": "Succeeded", + "encryption": { + "keyVaultProperties": { + "keyUri": "https://cmk2xkv.vault.azure.net/keys/Key1/0767b348bb1a4c07baa6c4ec0055d2b3" + }, + "kekIdentity": { + "useSystemAssignedIdentity": true + }, + "infrastructureEncryption": "Enabled" + } + }, + "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample", + "type": "Microsoft.RecoveryServices/vaults", + "sku": { + "name": "Standard" + } + } + }, + "202": { + "headers": { + "Retry-After": "10", + "Azure-AsyncOperation": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample/operationStatus/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2015-03-15", + "Location": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample/operationResults/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2015-03-15" + } + } + } +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/UpdateVaultExtendedInfo.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/UpdateVaultExtendedInfo.json new file mode 100644 index 000000000000..6116effba8ca --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/UpdateVaultExtendedInfo.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18", + "resourceGroupName": "Default-RecoveryServices-ResourceGroup", + "vaultName": "swaggerExample", + "api-version": "2021-03-01", + "resourceResourceExtendedInfoDetails": { + "properties": { + "integrityKey": "J99wzS27fmJ+Wjot7xO5wA==", + "algorithm": "None" + } + } + }, + "responses": { + "200": { + "body": { + "name": "vaultExtendedInfo", + "etag": "f0d0260b-b92d-4458-ba0a-32c6cdabacb7", + "properties": { + "integrityKey": "J99wzS27fmJ+Wjot7xO5wA==", + "algorithm": "None" + }, + "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/swaggerExample/extendedInformation/vaultExtendedInfo", + "type": "Microsoft.RecoveryServices/vaults/extendedInformation" + } + } + } +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/registeredidentities.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/registeredidentities.json new file mode 100644 index 000000000000..c156f1e56201 --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/registeredidentities.json @@ -0,0 +1,372 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-03-01", + "title": "RecoveryServicesClient", + "x-ms-code-generation-settings": { + "internalConstructors": false + } + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/certificates/{certificateName}": { + "put": { + "tags": [ + "VaultCertificates" + ], + "description": "Uploads a certificate for a resource.", + "operationId": "VaultCertificates_Create", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "name": "certificateName", + "in": "path", + "description": "Certificate friendly name.", + "required": true, + "type": "string" + }, + { + "name": "certificateRequest", + "in": "body", + "description": "Input parameters for uploading the vault certificate.", + "required": true, + "schema": { + "$ref": "#/definitions/CertificateRequest" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VaultCertificateResponse" + } + } + }, + "deprecated": false, + "x-ms-examples": { + "Download vault credential file": { + "$ref": "./examples/PUTVaultCred.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/registeredIdentities/{identityName}": { + "delete": { + "tags": [ + "RegisteredIdentities" + ], + "description": "Unregisters the given container from your Recovery Services vault.", + "operationId": "RegisteredIdentities_Delete", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "name": "identityName", + "in": "path", + "description": "Name of the protection container to unregister.", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "NoContent" + } + }, + "deprecated": false, + "x-ms-examples": { + "Delete registered Identity": { + "$ref": "./examples/DeleteRegisteredIdentities.json" + } + } + } + } + }, + "definitions": { + "CertificateRequest": { + "description": "Details of the certificate to be uploaded to the vault.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/RawCertificateData" + } + } + }, + "RawCertificateData": { + "description": "Raw certificate data.", + "type": "object", + "properties": { + "authType": { + "description": "Specifies the authentication type.", + "enum": [ + "Invalid", + "ACS", + "AAD", + "AccessControlService", + "AzureActiveDirectory" + ], + "type": "string", + "x-ms-enum": { + "name": "AuthType", + "modelAsString": true + } + }, + "certificate": { + "format": "byte", + "description": "The base64 encoded certificate raw data string", + "type": "string" + } + } + }, + "ResourceCertificateAndAadDetails": { + "description": "Certificate details representing the Vault credentials for AAD.", + "required": [ + "certificate", + "resourceId", + "aadAuthority", + "aadTenantId", + "servicePrincipalClientId", + "servicePrincipalObjectId", + "azureManagementEndpointAudience", + "subject", + "validFrom", + "validTo", + "thumbprint", + "friendlyName", + "issuer" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ResourceCertificateDetails" + } + ], + "properties": { + "aadAuthority": { + "description": "AAD tenant authority.", + "type": "string" + }, + "aadTenantId": { + "description": "AAD tenant Id.", + "type": "string" + }, + "servicePrincipalClientId": { + "description": "AAD service principal clientId.", + "type": "string" + }, + "servicePrincipalObjectId": { + "description": "AAD service principal ObjectId.", + "type": "string" + }, + "azureManagementEndpointAudience": { + "description": "Azure Management Endpoint Audience.", + "type": "string" + }, + "serviceResourceId": { + "description": "Service Resource Id.", + "type": "string" + } + }, + "x-ms-discriminator-value": "AzureActiveDirectory" + }, + "ResourceCertificateAndAcsDetails": { + "description": "Certificate details representing the Vault credentials for ACS.", + "required": [ + "certificate", + "resourceId", + "globalAcsNamespace", + "globalAcsHostName", + "globalAcsRPRealm", + "subject", + "validFrom", + "validTo", + "thumbprint", + "friendlyName", + "issuer" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ResourceCertificateDetails" + } + ], + "properties": { + "globalAcsNamespace": { + "description": "ACS namespace name - tenant for our service.", + "type": "string" + }, + "globalAcsHostName": { + "description": "Acs mgmt host name to connect to.", + "type": "string" + }, + "globalAcsRPRealm": { + "description": "Global ACS namespace RP realm.", + "type": "string" + } + }, + "x-ms-discriminator-value": "AccessControlService" + }, + "ResourceCertificateDetails": { + "description": "Certificate details representing the Vault credentials.", + "required": [ + "authType" + ], + "type": "object", + "properties": { + "authType": { + "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.", + "type": "string" + }, + "certificate": { + "format": "byte", + "description": "The base64 encoded certificate raw data string.", + "type": "string" + }, + "friendlyName": { + "description": "Certificate friendly name.", + "type": "string" + }, + "issuer": { + "description": "Certificate issuer.", + "type": "string" + }, + "resourceId": { + "format": "int64", + "description": "Resource ID of the vault.", + "type": "integer" + }, + "subject": { + "description": "Certificate Subject Name.", + "type": "string" + }, + "thumbprint": { + "description": "Certificate thumbprint.", + "type": "string" + }, + "validFrom": { + "format": "date-time", + "description": "Certificate Validity start Date time.", + "type": "string" + }, + "validTo": { + "format": "date-time", + "description": "Certificate Validity End Date time.", + "type": "string" + } + }, + "discriminator": "authType" + }, + "VaultCertificateResponse": { + "description": "Certificate corresponding to a vault that can be used by clients to register themselves with the vault.", + "type": "object", + "properties": { + "name": { + "description": "Resource name associated with the resource.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Resource type represents the complete path of the form Namespace/ResourceType/ResourceType/...", + "type": "string", + "readOnly": true + }, + "id": { + "description": "Resource Id represents the complete path to the resource.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/ResourceCertificateDetails" + } + }, + "x-ms-azure-resource": true + } + }, + "parameters": { + "SubscriptionId": { + "name": "subscriptionId", + "in": "path", + "description": "The subscription Id.", + "required": true, + "type": "string" + }, + "ResourceGroupName": { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group where the recovery services vault is present.", + "required": true, + "x-ms-parameter-location": "method", + "type": "string" + }, + "VaultName": { + "name": "vaultName", + "in": "path", + "description": "The name of the recovery services vault.", + "required": true, + "x-ms-parameter-location": "method", + "type": "string" + }, + "ApiVersion": { + "name": "api-version", + "in": "query", + "description": "Client Api Version.", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account." + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/replicationusages.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/replicationusages.json new file mode 100644 index 000000000000..0662bff1e1c2 --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/replicationusages.json @@ -0,0 +1,208 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-03-01", + "title": "RecoveryServicesClient", + "x-ms-code-generation-settings": { + "internalConstructors": false + } + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/replicationUsages": { + "get": { + "tags": [ + "ReplicationUsages" + ], + "description": "Fetches the replication usages of the vault.", + "operationId": "ReplicationUsages_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/VaultName" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationUsageList" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "Gets Replication usages of vault": { + "$ref": "./examples/ListReplicationUsages.json" + } + } + } + } + }, + "definitions": { + "JobsSummary": { + "description": "Summary of the replication job data for this vault.", + "type": "object", + "properties": { + "failedJobs": { + "description": "Count of failed jobs.", + "type": "integer" + }, + "suspendedJobs": { + "description": "Count of suspended jobs.", + "type": "integer" + }, + "inProgressJobs": { + "description": "Count of in-progress jobs.", + "type": "integer" + } + } + }, + "MonitoringSummary": { + "description": "Summary of the replication monitoring data for this vault.", + "type": "object", + "properties": { + "unHealthyVmCount": { + "description": "Count of unhealthy VMs.", + "type": "integer" + }, + "unHealthyProviderCount": { + "description": "Count of unhealthy replication providers.", + "type": "integer" + }, + "eventsCount": { + "description": "Count of all critical warnings.", + "type": "integer" + }, + "deprecatedProviderCount": { + "description": "Count of all deprecated recovery service providers.", + "type": "integer" + }, + "supportedProviderCount": { + "description": "Count of all the supported recovery service providers.", + "type": "integer" + }, + "unsupportedProviderCount": { + "description": "Count of all the unsupported recovery service providers.", + "type": "integer" + } + } + }, + "ReplicationUsage": { + "description": "Replication usages of a vault.", + "type": "object", + "properties": { + "monitoringSummary": { + "$ref": "#/definitions/MonitoringSummary", + "description": "Summary of the replication monitoring data for this vault." + }, + "jobsSummary": { + "$ref": "#/definitions/JobsSummary", + "description": "Summary of the replication jobs data for this vault." + }, + "protectedItemCount": { + "description": "Number of replication protected items for this vault.", + "type": "integer" + }, + "recoveryPlanCount": { + "description": "Number of replication recovery plans for this vault.", + "type": "integer" + }, + "registeredServersCount": { + "description": "Number of servers registered to this vault.", + "type": "integer" + }, + "recoveryServicesProviderAuthType": { + "description": "The authentication type of recovery service providers in the vault.", + "type": "integer" + } + } + }, + "ReplicationUsageList": { + "description": "Replication usages for vault.", + "type": "object", + "properties": { + "value": { + "description": "The list of replication usages for the given vault.", + "type": "array", + "items": { + "$ref": "#/definitions/ReplicationUsage" + } + } + } + } + }, + "parameters": { + "SubscriptionId": { + "name": "subscriptionId", + "in": "path", + "description": "The subscription Id.", + "required": true, + "type": "string" + }, + "ResourceGroupName": { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group where the recovery services vault is present.", + "required": true, + "x-ms-parameter-location": "method", + "type": "string" + }, + "VaultName": { + "name": "vaultName", + "in": "path", + "description": "The name of the recovery services vault.", + "required": true, + "x-ms-parameter-location": "method", + "type": "string" + }, + "ApiVersion": { + "name": "api-version", + "in": "query", + "description": "Client Api Version.", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account." + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/vaults.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/vaults.json new file mode 100644 index 000000000000..72c78355e34c --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/vaults.json @@ -0,0 +1,1717 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-03-01", + "title": "RecoveryServicesClient", + "x-ms-code-generation-settings": { + "internalConstructors": false + } + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/privateLinkResources": { + "get": { + "tags": [ + "ListPrivateLinkResources" + ], + "summary": "Returns the list of private link resources that need to be created for Backup and SiteRecovery", + "operationId": "PrivateLinkResources_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateLinkResources" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink", + "itemName": "value" + }, + "x-ms-examples": { + "List PrivateLinkResources": { + "$ref": "./examples/ListPrivateLinkResources.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/privateLinkResources/{privateLinkResourceName}": { + "get": { + "tags": [ + "GetPrivateLinkResources" + ], + "summary": "Returns a specified private link resource that need to be created for Backup and SiteRecovery", + "operationId": "PrivateLinkResources_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "name": "privateLinkResourceName", + "in": "path", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateLinkResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "deprecated": false, + "x-ms-examples": { + "Get PrivateLinkResource": { + "$ref": "./examples/GetPrivateLinkResources.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/locations/{location}/checkNameAvailability": { + "post": { + "tags": [ + "RecoveryServices" + ], + "summary": "API to check for resource name availability.\r\nA name is available if no other resource exists that has the same SubscriptionId, Resource Name and Type\r\nor if one or more such resources exist, each of these must be GC'd and their time of deletion be more than 24 Hours Ago", + "operationId": "RecoveryServices_CheckNameAvailability", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "name": "location", + "in": "path", + "description": "Location of the resource", + "required": true, + "type": "string" + }, + { + "name": "input", + "in": "body", + "description": "Contains information about Resource type and Resource name", + "required": true, + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityParameters" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Availability status of Resource Name when no resource with same name, type and subscription exists, nor has been deleted within last 24 hours": { + "$ref": "./examples/CheckNameAvailability_Available.json" + }, + "Availability status of Resource Name when resource with same name, type and subscription exists": { + "$ref": "./examples/CheckNameAvailability_NotAvailable.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.RecoveryServices/vaults": { + "get": { + "tags": [ + "Vaults" + ], + "description": "Fetches all the resources of the specified type in the subscription.", + "operationId": "Vaults_ListBySubscriptionId", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VaultList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink", + "itemName": "value" + }, + "x-ms-examples": { + "List of Recovery Services Resources in SubscriptionId": { + "$ref": "./examples/ListBySubscriptionIds.json" + } + } + } + }, + "/providers/Microsoft.RecoveryServices/operations": { + "get": { + "tags": [ + "Operations" + ], + "description": "Returns the list of available operations.", + "operationId": "Operations_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ClientDiscoveryResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink", + "itemName": "value" + }, + "x-ms-examples": { + "ListOperations": { + "$ref": "./examples/ListOperations.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults": { + "get": { + "tags": [ + "Vaults" + ], + "description": "Retrieve a list of Vaults.", + "operationId": "Vaults_ListByResourceGroup", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceGroupName" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VaultList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink", + "itemName": "value" + }, + "x-ms-examples": { + "List of Recovery Services Resources in ResourceGroup": { + "$ref": "./examples/ListResources.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}": { + "get": { + "tags": [ + "Vaults" + ], + "description": "Get the Vault details.", + "operationId": "Vaults_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/VaultName" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Vault" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "deprecated": false, + "x-ms-examples": { + "Get Recovery Services Resource": { + "$ref": "./examples/GETVault.json" + } + } + }, + "put": { + "tags": [ + "Vaults" + ], + "description": "Creates or updates a Recovery Services vault.", + "operationId": "Vaults_CreateOrUpdate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "name": "vault", + "in": "body", + "description": "Recovery Services Vault to be created.", + "required": true, + "schema": { + "$ref": "#/definitions/Vault" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Vault" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/Vault" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "deprecated": false, + "x-ms-examples": { + "Create or Update Recovery Services vault": { + "$ref": "./examples/PUTVault.json" + }, + "Create or Update Vault with User Assigned Identity": { + "$ref": "./examples/PUTVault_WithUserAssignedIdentity.json" + }, + "Create or Update Vault with CustomerManagedKeys": { + "$ref": "./examples/PUTVault_WithCMK.json" + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "Vaults" + ], + "description": "Deletes a vault.", + "operationId": "Vaults_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/VaultName" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "deprecated": false, + "x-ms-examples": { + "Delete Recovery Services Vault": { + "$ref": "./examples/DeleteVault.json" + } + } + }, + "patch": { + "tags": [ + "Vaults" + ], + "description": "Updates the vault.", + "operationId": "Vaults_Update", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "name": "vault", + "in": "body", + "description": "Recovery Services Vault to be created.", + "required": true, + "schema": { + "$ref": "#/definitions/PatchVault" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Vault" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "deprecated": false, + "x-ms-examples": { + "Update Resource": { + "$ref": "./examples/PATCHVault.json" + }, + "Update Resource With User Assigned Identity": { + "$ref": "./examples/PATCHVault_WithUserAssignedIdentity.json" + }, + "Update Resource With CustomerManagedKeys": { + "$ref": "./examples/PATCHVault_WithCMK.json" + }, + "Update Resource With CustomerManagedKeys2": { + "$ref": "./examples/PatchVault_WithCMK2.json" + }, + "Update Resource With CustomerManagedKeys3": { + "$ref": "./examples/PATCHVault_WithCMK3.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/extendedInformation/vaultExtendedInfo": { + "get": { + "tags": [ + "VaultExtendedInfo" + ], + "description": "Get the vault extended info.", + "operationId": "VaultExtendedInfo_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/VaultName" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VaultExtendedInfoResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "deprecated": false, + "x-ms-examples": { + "Get ExtendedInfo of Resource": { + "$ref": "./examples/GETVaultExtendedInfo.json" + } + } + }, + "put": { + "tags": [ + "VaultExtendedInfo" + ], + "description": "Create vault extended info.", + "operationId": "VaultExtendedInfo_CreateOrUpdate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "name": "resourceResourceExtendedInfoDetails", + "in": "body", + "description": "Details of ResourceExtendedInfo", + "required": true, + "schema": { + "$ref": "#/definitions/VaultExtendedInfoResource" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VaultExtendedInfoResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "deprecated": false, + "x-ms-examples": { + "Put ExtendedInfo of Resource": { + "$ref": "./examples/UpdateVaultExtendedInfo.json" + } + } + }, + "patch": { + "tags": [ + "VaultExtendedInfo" + ], + "description": "Update vault extended info.", + "operationId": "VaultExtendedInfo_Update", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "name": "resourceResourceExtendedInfoDetails", + "in": "body", + "description": "Details of ResourceExtendedInfo", + "required": true, + "schema": { + "$ref": "#/definitions/VaultExtendedInfoResource" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VaultExtendedInfoResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "deprecated": false, + "x-ms-examples": { + "PATCH ExtendedInfo of Resource": { + "$ref": "./examples/UpdateVaultExtendedInfo.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/operationStatus/{operationId}": { + "get": { + "tags": [ + "Vaults" + ], + "description": "Gets the operation status for a resource.", + "operationId": "GetOperationStatus", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Operation Status": { + "$ref": "./examples/GetOperationStatus.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/operationResults/{operationId}": { + "get": { + "tags": [ + "Vaults" + ], + "description": "Gets the operation result for a resource.", + "operationId": "GetOperationResult", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Vault" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Operation Result": { + "$ref": "./examples/GetOperationResult.json" + } + } + } + } + }, + "definitions": { + "CheckNameAvailabilityParameters": { + "description": "Resource Name availability input parameters - Resource type and resource name", + "type": "object", + "properties": { + "type": { + "description": "Describes the Resource type: Microsoft.RecoveryServices/Vaults", + "type": "string" + }, + "name": { + "description": "Resource name for which availability needs to be checked", + "type": "string" + } + } + }, + "CheckNameAvailabilityResult": { + "description": "Response for check name availability API. Resource provider will set availability as true | false.", + "type": "object", + "properties": { + "nameAvailable": { + "type": "boolean" + }, + "reason": { + "type": "string" + }, + "message": { + "type": "string" + } + } + }, + "ClientDiscoveryDisplay": { + "description": "Localized display information of an operation.", + "type": "object", + "properties": { + "provider": { + "description": "Name of the provider for display purposes", + "type": "string" + }, + "resource": { + "description": "ResourceType for which this Operation can be performed.", + "type": "string" + }, + "operation": { + "description": "Operations Name itself.", + "type": "string" + }, + "description": { + "description": "Description of the operation having details of what operation is about.", + "type": "string" + } + } + }, + "ClientDiscoveryForLogSpecification": { + "description": "Class to represent shoebox log specification in json client discovery.", + "type": "object", + "properties": { + "name": { + "description": "Name of the log.", + "type": "string" + }, + "displayName": { + "description": "Localized display name", + "type": "string" + }, + "blobDuration": { + "description": "Blobs created in customer storage account per hour", + "type": "string" + } + } + }, + "ClientDiscoveryForProperties": { + "description": "Class to represent shoebox properties in json client discovery.", + "type": "object", + "properties": { + "serviceSpecification": { + "$ref": "#/definitions/ClientDiscoveryForServiceSpecification", + "description": "Operation properties." + } + } + }, + "ClientDiscoveryForServiceSpecification": { + "description": "Class to represent shoebox service specification in json client discovery.", + "type": "object", + "properties": { + "logSpecifications": { + "description": "List of log specifications of this operation.", + "type": "array", + "items": { + "$ref": "#/definitions/ClientDiscoveryForLogSpecification" + } + } + } + }, + "ClientDiscoveryResponse": { + "description": "Operations List response which contains list of available APIs.", + "type": "object", + "properties": { + "value": { + "description": "List of available operations.", + "type": "array", + "items": { + "$ref": "#/definitions/ClientDiscoveryValueForSingleApi" + } + }, + "nextLink": { + "description": "Link to the next chunk of the response", + "type": "string" + } + } + }, + "ClientDiscoveryValueForSingleApi": { + "description": "Available operation details.", + "type": "object", + "properties": { + "name": { + "description": "Name of the Operation.", + "type": "string" + }, + "display": { + "$ref": "#/definitions/ClientDiscoveryDisplay", + "description": "Contains the localized display information for this particular operation" + }, + "origin": { + "description": "The intended executor of the operation;governs the display of the operation in the RBAC UX and the audit logs UX", + "type": "string" + }, + "properties": { + "$ref": "#/definitions/ClientDiscoveryForProperties", + "description": "ShoeBox properties for the given operation." + } + } + }, + "Resource": { + "description": "ARM Resource.", + "type": "object", + "properties": { + "id": { + "description": "Resource Id represents the complete path to the resource.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Resource name associated with the resource.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Resource type represents the complete path of the form Namespace/ResourceType/ResourceType/...", + "type": "string", + "readOnly": true + }, + "etag": { + "description": "Optional ETag.", + "type": "string" + } + }, + "x-ms-azure-resource": true + }, + "Sku": { + "description": "Identifies the unique system identifier for each Azure resource.", + "required": [ + "name" + ], + "type": "object", + "properties": { + "name": { + "description": "The Sku name.", + "enum": [ + "Standard", + "RS0" + ], + "type": "string", + "x-ms-enum": { + "name": "SkuName", + "modelAsString": true + } + }, + "tier": { + "description": "The Sku tier.", + "type": "string" + } + } + }, + "TrackedResource": { + "description": "Tracked resource with location.", + "type": "object", + "required": [ + "location" + ], + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "location": { + "description": "Resource location.", + "type": "string" + }, + "tags": { + "description": "Resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "PatchTrackedResource": { + "description": "Tracked resource with location.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "location": { + "description": "Resource location.", + "type": "string" + }, + "tags": { + "description": "Resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "UpgradeDetails": { + "description": "Details for upgrading vault.", + "type": "object", + "properties": { + "operationId": { + "description": "ID of the vault upgrade operation.", + "type": "string", + "readOnly": true + }, + "startTimeUtc": { + "description": "UTC time at which the upgrade operation has started.", + "type": "string", + "readOnly": true, + "format": "date-time" + }, + "lastUpdatedTimeUtc": { + "description": "UTC time at which the upgrade operation status was last updated.", + "type": "string", + "readOnly": true, + "format": "date-time" + }, + "endTimeUtc": { + "description": "UTC time at which the upgrade operation has ended.", + "type": "string", + "readOnly": true, + "format": "date-time" + }, + "status": { + "description": "Status of the vault upgrade operation.", + "enum": [ + "Unknown", + "InProgress", + "Upgraded", + "Failed" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "VaultUpgradeState", + "modelAsString": true + } + }, + "message": { + "description": "Message to the user containing information about the upgrade operation.", + "type": "string", + "readOnly": true + }, + "triggerType": { + "description": "The way the vault upgrade was triggered.", + "enum": [ + "UserTriggered", + "ForcedUpgrade" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "TriggerType", + "modelAsString": true + } + }, + "upgradedResourceId": { + "description": "Resource ID of the upgraded vault.", + "type": "string", + "readOnly": true + }, + "previousResourceId": { + "description": "Resource ID of the vault before the upgrade.", + "type": "string", + "readOnly": true + } + } + }, + "Vault": { + "description": "Resource information, as returned by the resource provider.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TrackedResource" + } + ], + "properties": { + "identity": { + "$ref": "#/definitions/IdentityData" + }, + "properties": { + "$ref": "#/definitions/VaultProperties" + }, + "sku": { + "$ref": "#/definitions/Sku" + }, + "systemData": { + "$ref": "#/definitions/systemData" + } + } + }, + "systemData": { + "description": "Metadata pertaining to creation and last modification of the resource.", + "type": "object", + "readOnly": true, + "properties": { + "createdBy": { + "type": "string", + "description": "The identity that created the resource." + }, + "createdByType": { + "type": "string", + "description": "The type of identity that created the resource.", + "enum": [ + "User", + "Application", + "ManagedIdentity", + "Key" + ], + "x-ms-enum": { + "name": "createdByType", + "modelAsString": true + } + }, + "createdAt": { + "type": "string", + "format": "date-time", + "description": "The timestamp of resource creation (UTC)." + }, + "lastModifiedBy": { + "type": "string", + "description": "The identity that last modified the resource." + }, + "lastModifiedByType": { + "type": "string", + "description": "The type of identity that last modified the resource.", + "enum": [ + "User", + "Application", + "ManagedIdentity", + "Key" + ], + "x-ms-enum": { + "name": "createdByType", + "modelAsString": true + } + }, + "lastModifiedAt": { + "type": "string", + "format": "date-time", + "description": "The type of identity that last modified the resource." + } + } + }, + "PatchVault": { + "description": "Patch Resource information, as returned by the resource provider.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/PatchTrackedResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/VaultProperties" + }, + "sku": { + "$ref": "#/definitions/Sku" + }, + "identity": { + "$ref": "#/definitions/IdentityData" + } + } + }, + "VaultExtendedInfo": { + "description": "Vault extended information.", + "type": "object", + "properties": { + "integrityKey": { + "description": "Integrity key.", + "type": "string" + }, + "encryptionKey": { + "description": "Encryption key.", + "type": "string" + }, + "encryptionKeyThumbprint": { + "description": "Encryption key thumbprint.", + "type": "string" + }, + "algorithm": { + "description": "Algorithm for Vault ExtendedInfo", + "type": "string" + } + } + }, + "VaultExtendedInfoResource": { + "description": "Vault extended information.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/VaultExtendedInfo", + "x-ms-client-flatten": true + } + } + }, + "VaultList": { + "description": "The response model for a list of Vaults.", + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Vault" + } + }, + "nextLink": { + "type": "string", + "readOnly": true + } + } + }, + "VaultProperties": { + "description": "Properties of the vault.", + "type": "object", + "properties": { + "provisioningState": { + "description": "Provisioning State.", + "type": "string", + "readOnly": true + }, + "upgradeDetails": { + "$ref": "#/definitions/UpgradeDetails" + }, + "privateEndpointConnections": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnectionVaultProperties" + }, + "description": "List of private endpoint connection.", + "readOnly": true + }, + "privateEndpointStateForBackup": { + "description": "Private endpoint state for backup.", + "enum": [ + "None", + "Enabled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "VaultPrivateEndpointState", + "modelAsString": true + } + }, + "privateEndpointStateForSiteRecovery": { + "description": "Private endpoint state for site recovery.", + "enum": [ + "None", + "Enabled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "VaultPrivateEndpointState", + "modelAsString": true + } + }, + "encryption": { + "description": "Customer Managed Key details of the resource.", + "type": "object", + "properties": { + "keyVaultProperties": { + "$ref": "#/definitions/CmkKeyVaultProperties" + }, + "kekIdentity": { + "$ref": "#/definitions/CmkKekIdentity" + }, + "infrastructureEncryption": { + "description": "Enabling/Disabling the Double Encryption state", + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "InfrastructureEncryptionState", + "modelAsString": true + } + } + } + } + } + }, + "IdentityData": { + "required": [ + "type" + ], + "type": "object", + "description": "Identity for the resource.", + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal ID of resource identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant ID of resource." + }, + "type": { + "type": "string", + "description": "The type of managed identity used. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user-assigned identities. The type 'None' will remove any identities.", + "enum": [ + "SystemAssigned", + "None", + "UserAssigned", + "SystemAssigned, UserAssigned" + ], + "x-ms-enum": { + "name": "ResourceIdentityType", + "modelAsString": true + } + }, + "userAssignedIdentities": { + "description": "The list of user-assigned identities associated with the resource. The user-assigned identity dictionary keys will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/UserIdentity" + } + } + } + }, + "UserIdentity": { + "type": "object", + "description": "A resource identity that is managed by the user of the service.", + "properties": { + "principalId": { + "description": "The principal ID of the user-assigned identity.", + "type": "string", + "readOnly": true + }, + "clientId": { + "description": "The client ID of the user-assigned identity.", + "type": "string", + "readOnly": true + } + } + }, + "PrivateEndpointConnectionVaultProperties": { + "description": "Information to be stored in Vault properties as an element of privateEndpointConnections List.", + "readOnly": true, + "type": "object", + "properties": { + "id": { + "description": "Format of id subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.[Service]/{resource}/{resourceName}/privateEndpointConnections/{connectionName}.", + "readOnly": true, + "type": "string" + }, + "properties": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + } + }, + "PrivateEndpointConnection": { + "description": "Private Endpoint Connection Response Properties.", + "readOnly": true, + "type": "object", + "properties": { + "provisioningState": { + "description": "Gets or sets provisioning state of the private endpoint connection.", + "readOnly": true, + "enum": [ + "Succeeded", + "Deleting", + "Failed", + "Pending" + ], + "type": "string", + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionState" + } + } + }, + "PrivateEndpoint": { + "description": "The Private Endpoint network resource that is linked to the Private Endpoint connection.", + "readOnly": true, + "type": "object", + "properties": { + "id": { + "description": "Gets or sets id.", + "readOnly": true, + "type": "string" + } + } + }, + "PrivateLinkServiceConnectionState": { + "description": "Gets or sets private link service connection state.", + "readOnly": true, + "type": "object", + "properties": { + "status": { + "description": "Gets or sets the status.", + "readOnly": true, + "enum": [ + "Pending", + "Approved", + "Rejected", + "Disconnected" + ], + "type": "string", + "x-ms-enum": { + "name": "PrivateEndpointConnectionStatus", + "modelAsString": true + } + }, + "description": { + "description": "Gets or sets description.", + "readOnly": true, + "type": "string" + }, + "actionsRequired": { + "description": "Gets or sets actions required.", + "readOnly": true, + "type": "string" + } + } + }, + "PrivateLinkResources": { + "description": "Class which represent the stamps associated with the vault.", + "readOnly": true, + "type": "object", + "properties": { + "value": { + "description": "A collection of private link resources", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + } + }, + "nextLink": { + "description": "Link to the next chunk of the response", + "type": "string" + } + } + }, + "PrivateLinkResource": { + "description": "Information of the private link resource.", + "readOnly": true, + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "Resource properties", + "x-ms-client-flatten": true + }, + "id": { + "description": "Fully qualified identifier of the resource.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name of the resource.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "e.g. Microsoft.RecoveryServices/vaults/privateLinkResources", + "readOnly": true, + "type": "string" + } + } + }, + "PrivateLinkResourceProperties": { + "type": "object", + "description": "Properties of the private link resource.", + "properties": { + "groupId": { + "description": "e.g. f9ad6492-33d4-4690-9999-6bfd52a0d081 (Backup) or f9ad6492-33d4-4690-9999-6bfd52a0d082 (SiteRecovery)", + "readOnly": true, + "type": "string" + }, + "requiredMembers": { + "description": "[backup-ecs1, backup-prot1, backup-prot1b, backup-prot1c, backup-id1]", + "readOnly": true, + "type": "array", + "items": { + "type": "string" + } + }, + "requiredZoneNames": { + "description": "The private link resource Private link DNS zone name.", + "readOnly": true, + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "CmkKeyVaultProperties": { + "type": "object", + "description": "The properties of the Key Vault which hosts CMK", + "properties": { + "keyUri": { + "description": "The key uri of the Customer Managed Key", + "type": "string" + } + } + }, + "CmkKekIdentity": { + "type": "object", + "description": "The details of the identity used for CMK", + "properties": { + "useSystemAssignedIdentity": { + "type": "boolean", + "description": "Indicate that system assigned identity should be used. Mutually exclusive with 'userAssignedIdentity' field" + }, + "userAssignedIdentity": { + "type": "string", + "description": "The user assigned identity to be used to grant permissions in case the type of identity used is UserAssigned" + } + } + }, + "OperationResource": { + "type": "object", + "description": "Operation Resource", + "properties": { + "endTime": { + "description": "End time of the operation", + "format": "date-time", + "type": "string" + }, + "error": { + "$ref": "#/definitions/Error", + "description": "Required if status == failed or status == canceled. This is the OData v4 error format, used by the RPC and will go into the v2.2 Azure REST API guidelines." + }, + "id": { + "description": "It should match what is used to GET the operation result", + "type": "string" + }, + "name": { + "description": "It must match the last segment of the \"id\" field, and will typically be a GUID / system generated value", + "type": "string" + }, + "status": { + "description": "The status of the operation. (InProgress/Success/Failed/Cancelled)", + "type": "string" + }, + "startTime": { + "description": "Start time of the operation", + "format": "date-time", + "type": "string" + } + } + }, + "CloudError": { + "description": "An error response from Azure Backup.", + "properties": { + "error": { + "$ref": "#/definitions/Error" + } + }, + "title": "CloudError", + "x-ms-external": true + }, + "Error": { + "description": "The resource management error response.", + "properties": { + "additionalInfo": { + "description": "The error additional info.", + "items": { + "$ref": "#/definitions/ErrorAdditionalInfo" + }, + "readOnly": true, + "type": "array" + }, + "code": { + "description": "The error code.", + "readOnly": true, + "type": "string" + }, + "details": { + "description": "The error details.", + "items": { + "$ref": "#/definitions/Error" + }, + "readOnly": true, + "type": "array" + }, + "message": { + "description": "The error message.", + "readOnly": true, + "type": "string" + }, + "target": { + "description": "The error target.", + "readOnly": true, + "type": "string" + } + } + }, + "ErrorAdditionalInfo": { + "description": "The resource management error additional info.", + "properties": { + "info": { + "description": "The additional info.", + "readOnly": true, + "type": "object" + }, + "type": { + "description": "The additional info type.", + "readOnly": true, + "type": "string" + } + } + } + }, + "parameters": { + "SubscriptionId": { + "name": "subscriptionId", + "in": "path", + "description": "The subscription Id.", + "required": true, + "type": "string" + }, + "ResourceGroupName": { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group where the recovery services vault is present.", + "required": true, + "x-ms-parameter-location": "method", + "type": "string" + }, + "VaultName": { + "name": "vaultName", + "in": "path", + "description": "The name of the recovery services vault.", + "required": true, + "x-ms-parameter-location": "method", + "type": "string" + }, + "ApiVersion": { + "name": "api-version", + "in": "query", + "description": "Client Api Version.", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account." + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/vaultusages.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/vaultusages.json new file mode 100644 index 000000000000..6dad48d215f0 --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/vaultusages.json @@ -0,0 +1,189 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-03-01", + "title": "RecoveryServicesClient", + "x-ms-code-generation-settings": { + "internalConstructors": false + } + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/usages": { + "get": { + "tags": [ + "VaultUsages" + ], + "description": "Fetches the usages of the vault.", + "operationId": "Usages_ListByVaults", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/VaultName" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VaultUsageList" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "Gets vault usages": { + "$ref": "./examples/ListUsages.json" + } + } + } + } + }, + "definitions": { + "VaultUsage": { + "description": "Usages of a vault.", + "type": "object", + "properties": { + "unit": { + "description": "Unit of the usage.", + "enum": [ + "Count", + "Bytes", + "Seconds", + "Percent", + "CountPerSecond", + "BytesPerSecond" + ], + "type": "string", + "x-ms-enum": { + "name": "UsagesUnit", + "modelAsString": true + } + }, + "quotaPeriod": { + "description": "Quota period of usage.", + "type": "string" + }, + "nextResetTime": { + "format": "date-time", + "description": "Next reset time of usage.", + "type": "string" + }, + "currentValue": { + "format": "int64", + "description": "Current value of usage.", + "type": "integer" + }, + "limit": { + "format": "int64", + "description": "Limit of usage.", + "type": "integer" + }, + "name": { + "$ref": "#/definitions/NameInfo", + "description": "Name of usage." + } + } + }, + "VaultUsageList": { + "description": "Usage for vault.", + "type": "object", + "properties": { + "value": { + "description": "The list of usages for the given vault.", + "type": "array", + "items": { + "$ref": "#/definitions/VaultUsage" + } + } + } + }, + "NameInfo": { + "description": "The name of usage.", + "type": "object", + "properties": { + "value": { + "description": "Value of usage.", + "type": "string" + }, + "localizedValue": { + "description": "Localized value of usage.", + "type": "string" + } + } + } + }, + "parameters": { + "SubscriptionId": { + "name": "subscriptionId", + "in": "path", + "description": "The subscription Id.", + "required": true, + "type": "string" + }, + "ResourceGroupName": { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group where the recovery services vault is present.", + "required": true, + "x-ms-parameter-location": "method", + "type": "string" + }, + "VaultName": { + "name": "vaultName", + "in": "path", + "description": "The name of the recovery services vault.", + "required": true, + "x-ms-parameter-location": "method", + "type": "string" + }, + "ApiVersion": { + "name": "api-version", + "in": "query", + "description": "Client Api Version.", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account." + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/recoveryservices/resource-manager/readme.azureresourceschema.md b/specification/recoveryservices/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index ad1ce289afa4..000000000000 --- a/specification/recoveryservices/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,72 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-recoveryservices-2021-01-01 - - tag: schema-recoveryservices-2020-10-01 - - tag: schema-recoveryservices-2020-02-02 - - tag: schema-recoveryservices-2016-06-01 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-recoveryservices-2021-01-01 and azureresourceschema - -``` yaml $(tag) == 'schema-recoveryservices-2021-01-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.RecoveryServices/stable/2021-01-01/registeredidentities.json - - Microsoft.RecoveryServices/stable/2021-01-01/replicationusages.json - - Microsoft.RecoveryServices/stable/2021-01-01/vaults.json - - Microsoft.RecoveryServices/stable/2021-01-01/vaultusages.json - -``` - -### Tag: schema-recoveryservices-2020-10-01 and azureresourceschema - -``` yaml $(tag) == 'schema-recoveryservices-2020-10-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.RecoveryServices/stable/2020-10-01/registeredidentities.json - - Microsoft.RecoveryServices/stable/2020-10-01/replicationusages.json - - Microsoft.RecoveryServices/stable/2020-10-01/vaults.json - - Microsoft.RecoveryServices/stable/2020-10-01/vaultusages.json - -``` - -### Tag: schema-recoveryservices-2020-02-02 and azureresourceschema - -``` yaml $(tag) == 'schema-recoveryservices-2020-02-02' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.RecoveryServices/stable/2020-02-02/registeredidentities.json - - Microsoft.RecoveryServices/stable/2020-02-02/replicationusages.json - - Microsoft.RecoveryServices/stable/2020-02-02/vaults.json - - Microsoft.RecoveryServices/stable/2020-02-02/vaultusages.json - -``` - -### Tag: schema-recoveryservices-2016-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-recoveryservices-2016-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.RecoveryServices/stable/2016-06-01/registeredidentities.json - - Microsoft.RecoveryServices/stable/2016-06-01/replicationusages.json - - Microsoft.RecoveryServices/stable/2016-06-01/vaults.json - - Microsoft.RecoveryServices/stable/2016-06-01/vaultusages.json - -``` diff --git a/specification/recoveryservices/resource-manager/readme.go.md b/specification/recoveryservices/resource-manager/readme.go.md index 535a6a395f66..856d0ed3233e 100644 --- a/specification/recoveryservices/resource-manager/readme.go.md +++ b/specification/recoveryservices/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION clear-output-folder: true namespace: recoveryservices ``` diff --git a/specification/recoveryservices/resource-manager/readme.md b/specification/recoveryservices/resource-manager/readme.md index eac384e59f79..cedd31067b16 100644 --- a/specification/recoveryservices/resource-manager/readme.md +++ b/specification/recoveryservices/resource-manager/readme.md @@ -4,10 +4,10 @@ This is the AutoRest configuration file for RecoveryServices. - - --- + ## Getting Started + To build the SDK for RecoveryServices, simply [Install AutoRest](https://aka.ms/autorest/install) and in this folder, run: > `autorest` @@ -15,23 +15,24 @@ To build the SDK for RecoveryServices, simply [Install AutoRest](https://aka.ms/ To see additional help and options, run: > `autorest --help` + --- ## Configuration - - ### Basic Information + These are the global settings for the RecoveryServices API. ``` yaml title: RecoveryServicesClient description: Recovery Services Client openapi-type: arm -tag: package-2020-10 +tag: package-2021-03 ``` ### Validations + Run validations when `--validate` is specified on command line ``` yaml $(validate) @@ -41,6 +42,28 @@ semantic-validator: true message-format: json ``` +### Tag: package-2021-03 + +These settings apply only when `--tag=package-2021-03` is specified on the command line. + +```yaml $(tag) == 'package-2021-03' +input-file: + - Microsoft.RecoveryServices/stable/2021-03-01/registeredidentities.json + - Microsoft.RecoveryServices/stable/2021-03-01/replicationusages.json + - Microsoft.RecoveryServices/stable/2021-03-01/vaults.json + - Microsoft.RecoveryServices/stable/2021-03-01/vaultusages.json +``` +### Tag: package-2021-02 + +These settings apply only when `--tag=package-2021-02` is specified on the command line. + +```yaml $(tag) == 'package-2021-02' +input-file: + - Microsoft.RecoveryServices/stable/2021-02-10/registeredidentities.json + - Microsoft.RecoveryServices/stable/2021-02-10/replicationusages.json + - Microsoft.RecoveryServices/stable/2021-02-10/vaults.json + - Microsoft.RecoveryServices/stable/2021-02-10/vaultusages.json +``` ### Tag: package-2016-06 These settings apply only when `--tag=package-2016-06` is specified on the command line. @@ -52,6 +75,7 @@ input-file: - Microsoft.RecoveryServices/stable/2016-06-01/vaults.json - Microsoft.RecoveryServices/stable/2016-06-01/vaultusages.json ``` + ### Tag: package-2020-02 These settings apply only when `--tag=package-2020-02` is specified on the command line. @@ -63,6 +87,7 @@ input-file: - Microsoft.RecoveryServices/stable/2020-02-02/vaults.json - Microsoft.RecoveryServices/stable/2020-02-02/vaultusages.json ``` + ### Tag: package-2020-10 These settings apply only when `--tag=package-2020-10` is specified on the command line. @@ -74,6 +99,7 @@ input-file: - Microsoft.RecoveryServices/stable/2020-10-01/vaults.json - Microsoft.RecoveryServices/stable/2020-10-01/vaultusages.json ``` + ### Tag: package-2021-01 These settings apply only when `--tag=package-2021-01` is specified on the command line. @@ -85,9 +111,10 @@ input-file: - Microsoft.RecoveryServices/stable/2021-01-01/vaults.json - Microsoft.RecoveryServices/stable/2021-01-01/vaultusages.json ``` + --- -# Code Generation +# Code Generation ## Swagger to SDK @@ -106,11 +133,8 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_recovery_services'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js recoveryservices/resource-manager ``` - ## C# These settings apply only when `--csharp` is specified on the command line. @@ -164,9 +188,3 @@ regenerate-manager: true generate-interface: true ``` - - -## AzureResourceSchema - -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) - diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/bms.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/bms.json index 9c0444e29cc9..708f9d32f3bd 100644 --- a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/bms.json +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/bms.json @@ -18,6 +18,72 @@ "application/json" ], "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupUsageSummaries": { + "get": { + "tags": [ + "BackupUsageSummaries_CRR" + ], + "description": "Fetches the backup management usage summaries of the vault.", + "operationId": "BackupUsageSummariesCRR_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + }, + { + "name": "$skipToken", + "in": "query", + "description": "skipToken Filter.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupManagementUsageList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/NewErrorResponse" + } + } + }, + "x-ms-odata": "#/definitions/BMSBackupSummariesQueryObject", + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "Get Protected Items Usages Summary": { + "$ref": "./examples/Common/BackupProtectedItem_UsageSummary_Get.json" + }, + "Get Protected Containers Usages Summary": { + "$ref": "./examples/Common/BackupProtectionContainers_UsageSummary_Get.json" + } + } + } + }, "/subscriptions/{subscriptionId}/providers/Microsoft.RecoveryServices/locations/{azureRegion}/backupAadProperties": { "get": { "tags": [ @@ -37,6 +103,13 @@ }, { "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" } ], "responses": { @@ -53,6 +126,7 @@ } } }, + "x-ms-odata": "#/definitions/BMSAADPropertiesQueryObject", "x-ms-examples": { "Get AAD Properties for authentication in the third region": { "$ref": "./examples/AzureIaasVm/BackupAadProperties_Get.json" @@ -699,6 +773,97 @@ } }, "definitions": { + "BackupManagementUsage": { + "description": "Backup management usages of a vault.", + "type": "object", + "properties": { + "unit": { + "description": "Unit of the usage.", + "enum": [ + "Count", + "Bytes", + "Seconds", + "Percent", + "CountPerSecond", + "BytesPerSecond" + ], + "type": "string", + "x-ms-enum": { + "name": "UsagesUnit", + "modelAsString": true + } + }, + "quotaPeriod": { + "description": "Quota period of usage.", + "type": "string" + }, + "nextResetTime": { + "format": "date-time", + "description": "Next reset time of usage.", + "type": "string" + }, + "currentValue": { + "format": "int64", + "description": "Current value of usage.", + "type": "integer" + }, + "limit": { + "format": "int64", + "description": "Limit of usage.", + "type": "integer" + }, + "name": { + "$ref": "#/definitions/NameInfo", + "description": "Name of usage." + } + } + }, + "NameInfo": { + "description": "The name of usage.", + "type": "object", + "properties": { + "value": { + "description": "Value of usage.", + "type": "string" + }, + "localizedValue": { + "description": "Localized value of usage.", + "type": "string" + } + } + }, + "BackupManagementUsageList": { + "description": "Backup management usage for vault.", + "type": "object", + "properties": { + "value": { + "description": "The list of backup management usages for the given vault.", + "type": "array", + "items": { + "$ref": "#/definitions/BackupManagementUsage" + } + } + } + }, + "BMSBackupSummariesQueryObject": { + "description": "Query parameters to fetch backup summaries.", + "type": "object", + "properties": { + "type": { + "description": "Backup management type for this container.", + "enum": [ + "Invalid", + "BackupProtectedItemCountSummary", + "BackupProtectionContainerCountSummary" + ], + "type": "string", + "x-ms-enum": { + "name": "Type", + "modelAsString": true + } + } + } + }, "NewErrorResponse": { "properties": { "error": { @@ -1905,6 +2070,10 @@ "name": "RecoveryMode", "modelAsString": true } + }, + "targetVirtualMachineId": { + "description": "This is the complete ARM Id of the target VM\r\nFor e.g. /subscriptions/{subId}/resourcegroups/{rg}/provider/Microsoft.Compute/virtualmachines/{vm}", + "type": "string" } }, "x-ms-discriminator-value": "AzureWorkloadRestoreRequest" @@ -3064,6 +3233,31 @@ }, "discriminator": "jobType" }, + "BMSAADPropertiesQueryObject": { + "description": "Filters to list backup items.", + "type": "object", + "properties": { + "backupManagementType": { + "description": "Backup management type for the backed up item.", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureBackupServer", + "AzureSql", + "AzureStorage", + "AzureWorkload", + "DefaultBackup" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupManagementType", + "modelAsString": true + } + } + } + }, "JobQueryObject": { "description": "Filters to list the jobs.", "type": "object", diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/Common/BackupProtectedItem_UsageSummary_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/Common/BackupProtectedItem_UsageSummary_Get.json new file mode 100644 index 000000000000..fa3f011c32d8 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/Common/BackupProtectedItem_UsageSummary_Get.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "testRG", + "vaultName": "testVault", + "api-version": "2017-07-01", + "$filter": "type eq 'BackupProtectedItemCountSummary'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "unit": "Count", + "currentValue": 7, + "limit": -1, + "name": { + "value": "AzureIaasVM", + "localizedValue": "Azure Virtual Machine" + } + }, + { + "unit": "Count", + "currentValue": 3, + "limit": -1, + "name": { + "value": "MAB", + "localizedValue": "Azure Backup Agent" + } + }, + { + "unit": "Count", + "currentValue": 1, + "limit": -1, + "name": { + "value": "AzureBackupServer", + "localizedValue": "Azure Backup Server" + } + }, + { + "unit": "Count", + "currentValue": 2, + "limit": -1, + "name": { + "value": "AzureStorage", + "localizedValue": "Azure Storage (Azure Files)" + } + }, + { + "unit": "Count", + "currentValue": 2, + "limit": -1, + "name": { + "value": "AzureWorkload", + "localizedValue": "SQL in Azure VM" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/Common/BackupProtectionContainers_UsageSummary_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/Common/BackupProtectionContainers_UsageSummary_Get.json new file mode 100644 index 000000000000..b13a75b4ddcc --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/Common/BackupProtectionContainers_UsageSummary_Get.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "testRG", + "vaultName": "testVault", + "api-version": "2017-07-01", + "$filter": "type eq 'BackupProtectionContainerCountSummary'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "unit": "Count", + "currentValue": 2, + "limit": -1, + "name": { + "value": "AzureBackupServer", + "localizedValue": "Azure Backup Server" + } + }, + { + "unit": "Count", + "currentValue": 3, + "limit": -1, + "name": { + "value": "MAB", + "localizedValue": "Azure Backup Agent" + } + }, + { + "unit": "Count", + "currentValue": 1, + "limit": -1, + "name": { + "value": "AzureWorkload", + "localizedValue": "SQL in Azure VM" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/bms.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/bms.json new file mode 100644 index 000000000000..7a27ea31069e --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/bms.json @@ -0,0 +1,11298 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-10", + "title": "RecoveryServicesBackupClient", + "x-ms-code-generation-settings": { + "internalConstructors": false + } + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/Subscriptions/{subscriptionId}/providers/Microsoft.RecoveryServices/locations/{azureRegion}/backupPreValidateProtection": { + "post": { + "tags": [ + "ProtectionIntent" + ], + "summary": "It will validate followings\r\n1. Vault capacity\r\n2. VM is already protected\r\n3. Any VM related configuration passed in properties.", + "operationId": "ProtectionIntent_Validate", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/AzureRegion" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "parameters", + "in": "body", + "description": "Enable backup validation request on Virtual Machine", + "required": true, + "schema": { + "$ref": "#/definitions/PreValidateEnableBackupRequest" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PreValidateEnableBackupResponse" + } + } + }, + "x-ms-examples": { + "Validate Enable Protection on Azure Vm": { + "$ref": "./examples/AzureIaasVm/ProtectionIntent_Validate.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/providers/Microsoft.RecoveryServices/locations/{azureRegion}/backupStatus": { + "post": { + "tags": [ + "BackupStatus" + ], + "summary": "Get the container backup status", + "operationId": "BackupStatus_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/AzureRegion" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "parameters", + "in": "body", + "description": "Container Backup Status Request", + "required": true, + "schema": { + "$ref": "#/definitions/BackupStatusRequest" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupStatusResponse" + } + } + }, + "x-ms-examples": { + "Get Azure Virtual Machine Backup Status": { + "$ref": "./examples/AzureIaasVm/GetBackupStatus.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/providers/Microsoft.RecoveryServices/locations/{azureRegion}/backupValidateFeatures": { + "post": { + "tags": [ + "FeatureSupport" + ], + "summary": "It will validate if given feature with resource properties is supported in service", + "operationId": "FeatureSupport_Validate", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/AzureRegion" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "parameters", + "in": "body", + "description": "Feature support request object", + "required": true, + "schema": { + "$ref": "#/definitions/FeatureSupportRequest" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AzureVMResourceFeatureSupportResponse" + } + } + }, + "x-ms-examples": { + "Check Azure Vm Backup Feature Support": { + "$ref": "./examples/AzureIaasVm/BackupFeature_Validate.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/backupProtectionIntent/{intentObjectName}": { + "get": { + "tags": [ + "ProtectionIntent" + ], + "description": "Provides the details of the protection intent up item. This is an asynchronous operation. To know the status of the operation,\r\ncall the GetItemOperationResult API.", + "operationId": "ProtectionIntent_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with the backed up item.", + "required": true, + "type": "string" + }, + { + "name": "intentObjectName", + "in": "path", + "description": "Backed up item name whose details are to be fetched.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionIntentResource" + } + } + }, + "x-ms-examples": { + "Get ProtectionIntent for an item": { + "$ref": "./examples/AzureWorkload/BackupProtectionIntent_Get.json" + } + } + }, + "put": { + "tags": [ + "ProtectionIntent" + ], + "description": "Create Intent for Enabling backup of an item. This is a synchronous operation.", + "operationId": "ProtectionIntent_CreateOrUpdate", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with the backup item.", + "required": true, + "type": "string" + }, + { + "name": "intentObjectName", + "in": "path", + "description": "Intent object name.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "resource backed up item", + "required": true, + "schema": { + "$ref": "#/definitions/ProtectionIntentResource" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionIntentResource" + } + } + }, + "x-ms-examples": { + "Create or Update Azure Vm Protection Intent": { + "$ref": "./examples/AzureIaasVm/ProtectionIntent_CreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "ProtectionIntent" + ], + "description": "Used to remove intent from an item", + "operationId": "ProtectionIntent_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with the intent.", + "required": true, + "type": "string" + }, + { + "name": "intentObjectName", + "in": "path", + "description": "Intent to be deleted.", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "NoContent" + } + }, + "x-ms-examples": { + "Delete Protection intent from item": { + "$ref": "./examples/AzureWorkload/BackupProtectionIntent_Delete.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupProtectionIntents": { + "get": { + "tags": [ + "BackupProtectionIntent" + ], + "description": "Provides a pageable list of all intents that are present within a vault.", + "operationId": "BackupProtectionIntent_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + }, + { + "name": "$skipToken", + "in": "query", + "description": "skipToken Filter.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionIntentResourceList" + } + } + }, + "x-ms-odata": "#/definitions/ProtectionIntentQueryObject", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List protection intent with backupManagementType filter": { + "$ref": "./examples/AzureWorkload/BackupProtectionIntent_List.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupUsageSummaries": { + "get": { + "tags": [ + "BackupUsageSummaries" + ], + "description": "Fetches the backup management usage summaries of the vault.", + "operationId": "BackupUsageSummaries_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + }, + { + "name": "$skipToken", + "in": "query", + "description": "skipToken Filter.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupManagementUsageList" + } + } + }, + "x-ms-odata": "#/definitions/BMSBackupSummariesQueryObject", + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "Get Protected Items Usages Summary": { + "$ref": "./examples/Common/BackupProtectedItem_UsageSummary_Get.json" + }, + "Get Protected Containers Usages Summary": { + "$ref": "./examples/Common/BackupProtectionContainers_UsageSummary_Get.json" + } + } + } + }, + "/providers/Microsoft.RecoveryServices/operations": { + "get": { + "tags": [ + "Operations" + ], + "description": "Returns the list of available operations.", + "operationId": "Operations_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ClientDiscoveryResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink", + "itemName": "value" + }, + "x-ms-examples": { + "ListOperations": { + "$ref": "./examples/ListOperations.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupconfig/vaultconfig": { + "get": { + "tags": [ + "BackupResourceVaultConfigs" + ], + "description": "Fetches resource vault config.", + "operationId": "BackupResourceVaultConfigs_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupResourceVaultConfigResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/NewErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Vault Security Config": { + "$ref": "./examples/Common/BackupResourceVaultConfigs_Get.json" + } + } + }, + "patch": { + "tags": [ + "BackupResourceVaultConfigs" + ], + "description": "Updates vault security config.", + "operationId": "BackupResourceVaultConfigs_Update", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "parameters", + "in": "body", + "description": "resource config request", + "required": true, + "schema": { + "$ref": "#/definitions/BackupResourceVaultConfigResource" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupResourceVaultConfigResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/NewErrorResponse" + } + } + }, + "x-ms-examples": { + "Update Vault Security Config": { + "$ref": "./examples/Common/BackupResourceVaultConfigs_Patch.json" + } + } + }, + "put": { + "tags": [ + "BackupResourceVaultConfigs" + ], + "description": "Updates vault security config. ", + "operationId": "BackupResourceVaultConfigs_Put", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "parameters", + "in": "body", + "description": "resource config request", + "required": true, + "schema": { + "$ref": "#/definitions/BackupResourceVaultConfigResource" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupResourceVaultConfigResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/NewErrorResponse" + } + } + }, + "x-ms-examples": { + "Update Vault Security Config": { + "$ref": "./examples/Common/BackupResourceVaultConfigs_Put.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupEncryptionConfigs/backupResourceEncryptionConfig": { + "get": { + "tags": [ + "BackupResourceEncryptionConfigs" + ], + "description": "Fetches Vault Encryption config.", + "operationId": "BackupResourceEncryptionConfigs_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupResourceEncryptionConfigResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/NewErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Vault Encryption Configuration": { + "$ref": "./examples/BackupResourceEncryptionConfig_Get.json" + } + } + }, + "put": { + "tags": [ + "BackupResourceEncryptionConfigs" + ], + "description": "Updates Vault encryption config.", + "operationId": "BackupResourceEncryptionConfigs_Update", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "parameters", + "in": "body", + "description": "Vault encryption input config request", + "required": true, + "schema": { + "$ref": "#/definitions/BackupResourceEncryptionConfigResource" + } + } + ], + "responses": { + "200": { + "description": "OK" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/NewErrorResponse" + } + } + }, + "x-ms-examples": { + "Update Vault Encryption Configuration": { + "$ref": "./examples/BackupResourceEncryptionConfig_Put.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "PrivateEndpointConnection" + ], + "description": "Get Private Endpoint Connection. This call is made by Backup Admin.", + "operationId": "PrivateEndpointConnection_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/NewErrorResponse" + } + } + }, + "x-ms-examples": { + "Get PrivateEndpointConnection": { + "$ref": "./examples/PrivateEndpointConnection/GetPrivateEndpointConnection.json" + } + } + }, + "put": { + "tags": [ + "PrivateEndpointConnection" + ], + "description": "Approve or Reject Private Endpoint requests. This call is made by Backup Admin.", + "operationId": "PrivateEndpointConnection_Put", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "Request body for operation", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionResource" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionResource" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update PrivateEndpointConnection": { + "$ref": "./examples/PrivateEndpointConnection/PutPrivateEndpointConnection.json" + } + } + }, + "delete": { + "tags": [ + "PrivateEndpointConnection" + ], + "description": "Delete Private Endpoint requests. This call is made by Backup Admin.", + "operationId": "PrivateEndpointConnection_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete PrivateEndpointConnection": { + "$ref": "./examples/PrivateEndpointConnection/DeletePrivateEndpointConnection.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/privateEndpointConnections/{privateEndpointConnectionName}/operationsStatus/{operationId}": { + "get": { + "tags": [ + "PrivateEndpoint" + ], + "summary": "Gets the operation status for a private endpoint connection.", + "operationId": "PrivateEndpoint_GetOperationStatus", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection.", + "required": true, + "type": "string" + }, + { + "name": "operationId", + "in": "path", + "description": "Operation id", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationStatus" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/NewErrorResponse" + } + } + }, + "x-ms-examples": { + "Get OperationStatus": { + "$ref": "./examples/PrivateEndpointConnection/GetPrivateEndpointConnectionOperationStatus.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupstorageconfig/vaultstorageconfig/operationStatus/{operationId}": { + "get": { + "tags": [ + "DataMove" + ], + "description": "Fetches operation status for data move operation on vault", + "operationId": "GetOperationStatus", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationStatus" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/NewErrorResponse" + } + } + }, + "x-ms-examples": { + "Get OperationStatus": { + "$ref": "./examples/BackupDataMove/BackupDataMoveOperationStatus_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupstorageconfig/vaultstorageconfig/prepareDataMove": { + "post": { + "tags": [ + "DataMove" + ], + "description": "Prepares source vault for Data Move operation", + "operationId": "BMSPrepareDataMove", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "parameters", + "in": "body", + "description": "Prepare data move request", + "required": true, + "schema": { + "$ref": "#/definitions/PrepareDataMoveRequest" + } + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/NewErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Prepare Data Move": { + "$ref": "./examples/BackupDataMove/PrepareDataMove_Post.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupstorageconfig/vaultstorageconfig/operationResults/{operationId}": { + "get": { + "tags": [ + "BMSPrepareDataMoveOperationResult" + ], + "description": "Fetches Operation Result for Prepare Data Move", + "operationId": "BMSPrepareDataMoveOperationResult_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VaultStorageConfigOperationResultResponse" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed. ", + "schema": { + "$ref": "#/definitions/NewErrorResponse" + } + } + }, + "x-ms-examples": { + "Get operation result for PrepareDataMove": { + "$ref": "./examples/BackupDataMove/PrepareDataMoveOperationResult_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupstorageconfig/vaultstorageconfig/triggerDataMove": { + "post": { + "tags": [ + "DataMove" + ], + "description": "Triggers Data Move Operation on target vault", + "operationId": "BMSTriggerDataMove", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "parameters", + "in": "body", + "description": "Trigger data move request", + "required": true, + "schema": { + "$ref": "#/definitions/TriggerDataMoveRequest" + } + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/NewErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Trigger Data Move": { + "$ref": "./examples/BackupDataMove/TriggerDataMove_Post.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}": { + "get": { + "tags": [ + "ProtectedItems" + ], + "description": "Provides the details of the backed up item. This is an asynchronous operation. To know the status of the operation,\r\ncall the GetItemOperationResult API.", + "operationId": "ProtectedItems_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with the backed up item.", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "Container name associated with the backed up item.", + "required": true, + "type": "string" + }, + { + "name": "protectedItemName", + "in": "path", + "description": "Backed up item name whose details are to be fetched.", + "required": true, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectedItemResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-odata": "#/definitions/GetProtectedItemQueryObject", + "x-ms-examples": { + "Get Protected Classic Virtual Machine Details": { + "$ref": "./examples/AzureIaasVm/ClassicCompute_ProtectedItem_Get.json" + }, + "Get Protected Virtual Machine Details": { + "$ref": "./examples/AzureIaasVm/Compute_ProtectedItem_Get.json" + } + } + }, + "put": { + "tags": [ + "ProtectedItems" + ], + "description": "Enables backup of an item or to modifies the backup policy information of an already backed up item. This is an\r\nasynchronous operation. To know the status of the operation, call the GetItemOperationResult API.", + "operationId": "ProtectedItems_CreateOrUpdate", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with the backup item.", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "Container name associated with the backup item.", + "required": true, + "type": "string" + }, + { + "name": "protectedItemName", + "in": "path", + "description": "Item name to be backed up.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "resource backed up item", + "required": true, + "schema": { + "$ref": "#/definitions/ProtectedItemResource" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectedItemResource" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Enable Protection on Azure IaasVm": { + "$ref": "./examples/AzureIaasVm/ConfigureProtection.json" + }, + "Stop Protection with retain data on Azure IaasVm": { + "$ref": "./examples/AzureIaasVm/StopProtection.json" + } + } + }, + "delete": { + "tags": [ + "ProtectedItems" + ], + "description": "Used to disable backup of an item within a container. This is an asynchronous operation. To know the status of the\r\nrequest, call the GetItemOperationResult API.", + "operationId": "ProtectedItems_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with the backed up item.", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "Container name associated with the backed up item.", + "required": true, + "type": "string" + }, + { + "name": "protectedItemName", + "in": "path", + "description": "Backed up item to be deleted.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete Protection from Azure Virtual Machine": { + "$ref": "./examples/Common/ProtectedItem_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}/operationResults/{operationId}": { + "get": { + "tags": [ + "ProtectedItemOperationResults" + ], + "description": "Fetches the result of any operation on the backup item.", + "operationId": "ProtectedItemOperationResults_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with the backup item.", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "Container name associated with the backup item.", + "required": true, + "type": "string" + }, + { + "name": "protectedItemName", + "in": "path", + "description": "Backup item name whose details are to be fetched.", + "required": true, + "type": "string" + }, + { + "name": "operationId", + "in": "path", + "description": "OperationID which represents the operation whose result needs to be fetched.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectedItemResource" + } + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Operation Results of Protected Vm": { + "$ref": "./examples/AzureIaasVm/ProtectedItemOperationResults.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}/recoveryPoints": { + "get": { + "tags": [ + "RecoveryPoints" + ], + "description": "Lists the backup copies for the backed up item.", + "operationId": "RecoveryPoints_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with the backed up item.", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "Container name associated with the backed up item.", + "required": true, + "type": "string" + }, + { + "name": "protectedItemName", + "in": "path", + "description": "Backed up item whose backup copies are to be fetched.", + "required": true, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoveryPointResourceList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-odata": "#/definitions/BMSRPQueryObject", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get Protected Azure Vm Recovery Points": { + "$ref": "./examples/AzureIaasVm/RecoveryPoints_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}/recoveryPoints/{recoveryPointId}": { + "get": { + "tags": [ + "RecoveryPoints" + ], + "description": "Provides the information of the backed up data identified using RecoveryPointID. This is an asynchronous operation.\r\nTo know the status of the operation, call the GetProtectedItemOperationResult API.", + "operationId": "RecoveryPoints_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with backed up item.", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "Container name associated with backed up item.", + "required": true, + "type": "string" + }, + { + "name": "protectedItemName", + "in": "path", + "description": "Backed up item name whose backup data needs to be fetched.", + "required": true, + "type": "string" + }, + { + "name": "recoveryPointId", + "in": "path", + "description": "RecoveryPointID represents the backed up data to be fetched.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoveryPointResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Azure Vm Recovery Point Details": { + "$ref": "./examples/AzureIaasVm/RecoveryPoints_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}/recoveryPoints/{recoveryPointId}/restore": { + "post": { + "tags": [ + "Restores" + ], + "description": "Restores the specified backed up data. This is an asynchronous operation. To know the status of this API call, use\r\nGetProtectedItemOperationResult API.", + "operationId": "Restores_Trigger", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with the backed up items.", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "Container name associated with the backed up items.", + "required": true, + "type": "string" + }, + { + "name": "protectedItemName", + "in": "path", + "description": "Backed up item to be restored.", + "required": true, + "type": "string" + }, + { + "name": "recoveryPointId", + "in": "path", + "description": "Recovery point ID which represents the backed up data to be restored.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "resource restore request", + "required": true, + "schema": { + "$ref": "#/definitions/RestoreRequestResource" + } + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Restore to New Azure IaasVm": { + "$ref": "./examples/AzureIaasVm/TriggerRestore_ALR.json" + }, + "Restore Disks": { + "$ref": "./examples/AzureIaasVm/TriggerRestore_RestoreDisks.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupPolicies": { + "get": { + "tags": [ + "BackupPolicies" + ], + "description": "Lists of backup policies associated with Recovery Services Vault. API provides pagination parameters to fetch\r\nscoped results.", + "operationId": "BackupPolicies_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionPolicyResourceList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-odata": "#/definitions/ProtectionPolicyQueryObject", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List protection policies with backupManagementType filter as AzureIaasVm": { + "$ref": "./examples/AzureIaasVm/BackupPolicies_List.json" + }, + "List protection policies with backupManagementType filter as AzureWorkload": { + "$ref": "./examples/AzureWorkload/BackupPolicies_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupPolicies/{policyName}": { + "get": { + "tags": [ + "ProtectionPolicies" + ], + "description": "Provides the details of the backup policies associated to Recovery Services Vault. This is an asynchronous\r\noperation. Status of the operation can be fetched using GetPolicyOperationResult API.", + "operationId": "ProtectionPolicies_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "policyName", + "in": "path", + "description": "Backup policy information to be fetched.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionPolicyResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Azure IaasVm Protection Policy Details": { + "$ref": "./examples/AzureIaasVm/ProtectionPolicies_Get.json" + } + } + }, + "put": { + "tags": [ + "ProtectionPolicies" + ], + "description": "Creates or modifies a backup policy. This is an asynchronous operation. Status of the operation can be fetched\r\nusing GetPolicyOperationResult API.", + "operationId": "ProtectionPolicies_CreateOrUpdate", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "policyName", + "in": "path", + "description": "Backup policy to be created.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "resource backup policy", + "required": true, + "schema": { + "$ref": "#/definitions/ProtectionPolicyResource" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionPolicyResource" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create or Update Simple Azure Vm Protection Policy": { + "$ref": "./examples/AzureIaasVm/ProtectionPolicies_CreateOrUpdate_Simple.json" + }, + "Create or Update Full Azure Vm Protection Policy": { + "$ref": "./examples/AzureIaasVm/ProtectionPolicies_CreateOrUpdate_Complex.json" + }, + "Create or Update Full Azure Workload Protection Policy": { + "$ref": "./examples/AzureWorkload/ProtectionPolicies_CreateOrUpdate_Complex.json" + } + } + }, + "delete": { + "tags": [ + "ProtectionPolicies" + ], + "description": "Deletes specified backup policy from your Recovery Services Vault. This is an asynchronous operation. Status of the\r\noperation can be fetched using GetProtectionPolicyOperationResult API.", + "operationId": "ProtectionPolicies_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "policyName", + "in": "path", + "description": "Backup policy to be deleted.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete Azure Vm Protection Policy": { + "$ref": "./examples/AzureIaasVm/ProtectionPolicies_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupPolicies/{policyName}/operationResults/{operationId}": { + "get": { + "tags": [ + "ProtectionPolicyOperationResults" + ], + "description": "Provides the result of an operation.", + "operationId": "ProtectionPolicyOperationResults_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "policyName", + "in": "path", + "description": "Backup policy name whose operation's result needs to be fetched.", + "required": true, + "type": "string" + }, + { + "name": "operationId", + "in": "path", + "description": "Operation ID which represents the operation whose result needs to be fetched.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionPolicyResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Protection Policy Operation Results": { + "$ref": "./examples/AzureIaasVm/ProtectionPolicyOperationResults_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupJobs": { + "get": { + "tags": [ + "BackupJobs" + ], + "description": "Provides a pageable list of jobs.", + "operationId": "BackupJobs_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + }, + { + "name": "$skipToken", + "in": "query", + "description": "skipToken Filter.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/JobResourceList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-odata": "#/definitions/JobQueryObject", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List All Jobs": { + "$ref": "./examples/Common/ListJobs.json" + }, + "List Jobs With Filters": { + "$ref": "./examples/Common/ListJobsWithAllSupportedFilters.json" + }, + "List Jobs With Time Filter": { + "$ref": "./examples/Common/ListJobsWithStartTimeAndEndTimeFilters.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupJobs/{jobName}": { + "get": { + "tags": [ + "JobDetails" + ], + "description": "Gets extended information associated with the job.", + "operationId": "JobDetails_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "jobName", + "in": "path", + "description": "Name of the job whose details are to be fetched.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/JobResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Job Details": { + "$ref": "./examples/Common/GetJobDetails.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupJobs/{jobName}/cancel": { + "post": { + "tags": [ + "JobCancellations" + ], + "description": "Cancels a job. This is an asynchronous operation. To know the status of the cancellation, call\r\nGetCancelOperationResult API.", + "operationId": "JobCancellations_Trigger", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "jobName", + "in": "path", + "description": "Name of the job to cancel.", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Cancel Job": { + "$ref": "./examples/Common/TriggerCancelJob.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupJobs/{jobName}/operationResults/{operationId}": { + "get": { + "tags": [ + "JobOperationResults" + ], + "description": "Fetches the result of any operation.", + "operationId": "JobOperationResults_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "jobName", + "in": "path", + "description": "Job name whose operation result has to be fetched.", + "required": true, + "type": "string" + }, + { + "name": "operationId", + "in": "path", + "description": "OperationID which represents the operation whose result has to be fetched.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Cancel Job Operation Result": { + "$ref": "./examples/Common/CancelJobOperationResult.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupJobs/operationResults/{operationId}": { + "get": { + "tags": [ + "ExportJobsOperationResults" + ], + "description": "Gets the operation result of operation triggered by Export Jobs API. If the operation is successful, then it also\r\ncontains URL of a Blob and a SAS key to access the same. The blob contains exported jobs in JSON serialized format.", + "operationId": "ExportJobsOperationResults_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "operationId", + "in": "path", + "description": "OperationID which represents the export job.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationResultInfoBaseResource" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/OperationResultInfoBaseResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Export Jobs Operation Results": { + "$ref": "./examples/Common/ExportJobsOperationResult.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupJobsExport": { + "post": { + "tags": [ + "Jobs" + ], + "description": "Triggers export of jobs specified by filters and returns an OperationID to track.", + "operationId": "Jobs_Export", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-odata": "#/definitions/JobQueryObject", + "x-ms-examples": { + "Export Jobs": { + "$ref": "./examples/Common/TriggerExportJobs.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupProtectedItems": { + "get": { + "tags": [ + "BackupProtectedItems" + ], + "description": "Provides a pageable list of all items that are backed up within a vault.", + "operationId": "BackupProtectedItems_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + }, + { + "name": "$skipToken", + "in": "query", + "description": "skipToken Filter.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectedItemResourceList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-odata": "#/definitions/ProtectedItemQueryObject", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List protected items with backupManagementType filter as AzureIaasVm": { + "$ref": "./examples/AzureIaasVm/BackupProtectedItems_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupValidateOperation": { + "post": { + "tags": [ + "Operation" + ], + "description": "Validate operation for specified backed up item. This is a synchronous operation.", + "operationId": "Operation_Validate", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "parameters", + "in": "body", + "description": "resource validate operation request", + "required": true, + "schema": { + "$ref": "#/definitions/ValidateOperationRequest" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ValidateOperationsResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Validate Operation": { + "$ref": "./examples/AzureIaasVm/ValidateOperation_RestoreDisk.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupEngines": { + "get": { + "tags": [ + "BackupEngines" + ], + "description": "Backup management servers registered to Recovery Services Vault. Returns a pageable list of servers.", + "operationId": "BackupEngines_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + }, + { + "name": "$skipToken", + "in": "query", + "description": "skipToken Filter.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupEngineBaseResourceList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-odata": "#/definitions/BMSBackupEnginesQueryObject", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Dpm/AzureBackupServer/Lajolla Backup Engines": { + "$ref": "./examples/Dpm/BackupEngines_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupEngines/{backupEngineName}": { + "get": { + "tags": [ + "BackupEngines" + ], + "description": "Returns backup management server registered to Recovery Services Vault.", + "operationId": "BackupEngines_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "backupEngineName", + "in": "path", + "description": "Name of the backup management server.", + "required": true, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + }, + { + "name": "$skipToken", + "in": "query", + "description": "skipToken Filter.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupEngineBaseResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-odata": "#/definitions/BMSBackupEngineQueryObject", + "x-ms-examples": { + "Get Dpm/AzureBackupServer/Lajolla Backup Engine Details": { + "$ref": "./examples/Dpm/BackupEngines_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/operationResults/{operationId}": { + "get": { + "tags": [ + "ProtectionContainerRefreshOperationResults" + ], + "description": "Provides the result of the refresh operation triggered by the BeginRefresh operation.", + "operationId": "ProtectionContainerRefreshOperationResults_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with the container.", + "required": true, + "type": "string" + }, + { + "name": "operationId", + "in": "path", + "description": "Operation ID associated with the operation whose result needs to be fetched.", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Azure Vm Discovery Operation Result": { + "$ref": "./examples/Common/RefreshContainers_OperationResults.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectableContainers": { + "get": { + "tags": [ + "ProtectableContainers" + ], + "description": "Lists the containers that can be registered to Recovery Services Vault.", + "operationId": "ProtectableContainers_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectableContainerResourceList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-odata": "#/definitions/BMSContainerQueryObject", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List protectable items with backupManagementType filter as AzureStorage": { + "$ref": "./examples/AzureStorage/ProtectableContainers_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}": { + "get": { + "tags": [ + "ProtectionContainers" + ], + "description": "Gets details of the specific container registered to your Recovery Services Vault.", + "operationId": "ProtectionContainers_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Name of the fabric where the container belongs.", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "Name of the container whose details need to be fetched.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionContainerResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Protection Container Details": { + "$ref": "./examples/AzureWorkload/ProtectionContainers_Get.json" + } + } + }, + "put": { + "tags": [ + "ProtectionContainers" + ], + "description": "Registers the container with Recovery Services vault.\r\nThis is an asynchronous operation. To track the operation status, use location header to call get latest status of\r\nthe operation.", + "operationId": "ProtectionContainers_Register", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with the container.", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "Name of the container to be registered.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "Request body for operation", + "required": true, + "schema": { + "$ref": "#/definitions/ProtectionContainerResource" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionContainerResource" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "RegisterAzure Storage ProtectionContainers": { + "$ref": "./examples/AzureStorage/ProtectionContainers_Register.json" + } + } + }, + "delete": { + "tags": [ + "ProtectionContainers" + ], + "description": "Unregisters the given container from your Recovery Services Vault. This is an asynchronous operation. To determine\r\nwhether the backend service has finished processing the request, call Get Container Operation Result API.", + "operationId": "ProtectionContainers_Unregister", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Name of the fabric where the container belongs.", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "Name of the container which needs to be unregistered from the Recovery Services Vault.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Unregister Protection Container": { + "$ref": "./examples/AzureWorkload/ProtectionContainers_Unregister.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/inquire": { + "post": { + "tags": [ + "ProtectionContainers" + ], + "summary": "Inquires all the protectable items under the given container.", + "description": "This is an async operation and the results should be tracked using location header or Azure-async-url.", + "operationId": "ProtectionContainers_Inquire", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric Name associated with the container.", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "Name of the container in which inquiry needs to be triggered.", + "required": true, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-odata": "#/definitions/BMSContainersInquiryQueryObject", + "x-ms-examples": { + "Inquire Azure Storage Protection Containers": { + "$ref": "./examples/AzureStorage/ProtectionContainers_Inquire.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/items": { + "get": { + "tags": [ + "BackupWorkloadItems" + ], + "description": "Provides a pageable list of workload item of a specific container according to the query filter and the pagination\r\nparameters.", + "operationId": "BackupWorkloadItems_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with the container.", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "Name of the container.", + "required": true, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + }, + { + "name": "$skipToken", + "in": "query", + "description": "skipToken Filter.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/WorkloadItemResourceList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-odata": "#/definitions/BMSWorkloadItemQueryObject", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Workload Items in Container": { + "$ref": "./examples/AzureWorkload/BackupWorkloadItems_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/operationResults/{operationId}": { + "get": { + "tags": [ + "ProtectionContainerOperationResults" + ], + "description": "Fetches the result of any operation on the container.", + "operationId": "ProtectionContainerOperationResults_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with the container.", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "Container name whose information should be fetched.", + "required": true, + "type": "string" + }, + { + "name": "operationId", + "in": "path", + "description": "Operation ID which represents the operation whose result needs to be fetched.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionContainerResource" + } + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Azure Storage Protection Container Operation Result": { + "$ref": "./examples/AzureStorage/ProtectionContainers_Inquire_Result.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}/backup": { + "post": { + "tags": [ + "Backups" + ], + "description": "Triggers backup for specified backed up item. This is an asynchronous operation. To know the status of the\r\noperation, call GetProtectedItemOperationResult API.", + "operationId": "Backups_Trigger", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with the backup item.", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "Container name associated with the backup item.", + "required": true, + "type": "string" + }, + { + "name": "protectedItemName", + "in": "path", + "description": "Backup item for which backup needs to be triggered.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "resource backup request", + "required": true, + "schema": { + "$ref": "#/definitions/BackupRequestResource" + } + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Trigger Backup": { + "$ref": "./examples/Common/TriggerBackup_Post.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}/operationsStatus/{operationId}": { + "get": { + "tags": [ + "ProtectedItemOperationStatuses" + ], + "description": "Fetches the status of an operation such as triggering a backup, restore. The status can be in progress, completed\r\nor failed. You can refer to the OperationStatus enum for all the possible states of the operation. Some operations\r\ncreate jobs. This method returns the list of jobs associated with the operation.", + "operationId": "ProtectedItemOperationStatuses_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with the backup item.", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "Container name associated with the backup item.", + "required": true, + "type": "string" + }, + { + "name": "protectedItemName", + "in": "path", + "description": "Backup item name whose details are to be fetched.", + "required": true, + "type": "string" + }, + { + "name": "operationId", + "in": "path", + "description": "OperationID represents the operation whose status needs to be fetched.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationStatus" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Operation Status of Protected Vm": { + "$ref": "./examples/AzureIaasVm/ProtectedItemOperationStatus.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}/recoveryPoints/{recoveryPointId}/provisionInstantItemRecovery": { + "post": { + "tags": [ + "ItemLevelRecoveryConnections" + ], + "description": "Provisions a script which invokes an iSCSI connection to the backup data. Executing this script opens a file\r\nexplorer displaying all the recoverable files and folders. This is an asynchronous operation. To know the status of\r\nprovisioning, call GetProtectedItemOperationResult API.", + "operationId": "ItemLevelRecoveryConnections_Provision", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with the backed up items.", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "Container name associated with the backed up items.", + "required": true, + "type": "string" + }, + { + "name": "protectedItemName", + "in": "path", + "description": "Backed up item name whose files/folders are to be restored.", + "required": true, + "type": "string" + }, + { + "name": "recoveryPointId", + "in": "path", + "description": "Recovery point ID which represents backed up data. iSCSI connection will be provisioned\r\nfor this backed up data.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "resource ILR request", + "required": true, + "schema": { + "$ref": "#/definitions/ILRRequestResource" + } + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Provision Instant Item Level Recovery for Azure Vm": { + "$ref": "./examples/AzureIaasVm/Provision_Ilr.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}/recoveryPoints/{recoveryPointId}/revokeInstantItemRecovery": { + "post": { + "tags": [ + "ItemLevelRecoveryConnections" + ], + "description": "Revokes an iSCSI connection which can be used to download a script. Executing this script opens a file explorer\r\ndisplaying all recoverable files and folders. This is an asynchronous operation.", + "operationId": "ItemLevelRecoveryConnections_Revoke", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with the backed up items.", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "Container name associated with the backed up items.", + "required": true, + "type": "string" + }, + { + "name": "protectedItemName", + "in": "path", + "description": "Backed up item name whose files/folders are to be restored.", + "required": true, + "type": "string" + }, + { + "name": "recoveryPointId", + "in": "path", + "description": "Recovery point ID which represents backed up data. iSCSI connection will be revoked for\r\nthis backed up data.", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Revoke Instant Item Level Recovery for Azure Vm": { + "$ref": "./examples/AzureIaasVm/Revoke_Ilr.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/refreshContainers": { + "post": { + "tags": [ + "ProtectionContainers" + ], + "description": "Discovers all the containers in the subscription that can be backed up to Recovery Services Vault. This is an\r\nasynchronous operation. To know the status of the operation, call GetRefreshOperationResult API.", + "operationId": "ProtectionContainers_Refresh", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated the container.", + "required": true, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-odata": "#/definitions/BMSRefreshContainersQueryObject", + "x-ms-examples": { + "Trigger Azure Vm Discovery": { + "$ref": "./examples/Common/RefreshContainers.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupOperationResults/{operationId}": { + "get": { + "tags": [ + "BackupOperationResults" + ], + "description": "Provides the status of the delete operations such as deleting backed up item. Once the operation has started, the\r\nstatus code in the response would be Accepted. It will continue to be in this state till it reaches completion. On\r\nsuccessful completion, the status code will be OK. This method expects OperationID as an argument. OperationID is\r\npart of the Location header of the operation response.", + "operationId": "BackupOperationResults_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "operationId", + "in": "path", + "description": "OperationID which represents the operation.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Result for Protected Item Delete Operation": { + "$ref": "./examples/Common/ProtectedItem_Delete_OperationResult.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupOperations/{operationId}": { + "get": { + "tags": [ + "BackupOperationStatuses" + ], + "description": "Fetches the status of an operation such as triggering a backup, restore. The status can be in progress, completed\r\nor failed. You can refer to the OperationStatus enum for all the possible states of an operation. Some operations\r\ncreate jobs. This method returns the list of jobs when the operation is complete.", + "operationId": "BackupOperationStatuses_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "operationId", + "in": "path", + "description": "OperationID which represents the operation.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationStatus" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Protected Item Delete Operation Status": { + "$ref": "./examples/Common/ProtectedItem_Delete_OperationStatus.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupPolicies/{policyName}/operations/{operationId}": { + "get": { + "tags": [ + "ProtectionPolicyOperationStatuses" + ], + "description": "Provides the status of the asynchronous operations like backup, restore. The status can be in progress, completed\r\nor failed. You can refer to the Operation Status enum for all the possible states of an operation. Some operations\r\ncreate jobs. This method returns the list of jobs associated with operation.", + "operationId": "ProtectionPolicyOperationStatuses_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "policyName", + "in": "path", + "description": "Backup policy name whose operation's status needs to be fetched.", + "required": true, + "type": "string" + }, + { + "name": "operationId", + "in": "path", + "description": "Operation ID which represents an operation whose status needs to be fetched.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationStatus" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Protection Policy Operation Status": { + "$ref": "./examples/AzureIaasVm/ProtectionPolicyOperationStatuses_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupProtectableItems": { + "get": { + "tags": [ + "BackupProtectableItems" + ], + "description": "Provides a pageable list of protectable objects within your subscription according to the query filter and the\r\npagination parameters.", + "operationId": "BackupProtectableItems_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + }, + { + "name": "$skipToken", + "in": "query", + "description": "skipToken Filter.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/WorkloadProtectableItemResourceList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-odata": "#/definitions/BMSPOQueryObject", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List protectable items with backupManagementType filter as AzureIaasVm": { + "$ref": "./examples/AzureIaasVm/BackupProtectableItems_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupProtectionContainers": { + "get": { + "tags": [ + "BackupProtectionContainers" + ], + "description": "Lists the containers registered to Recovery Services Vault.", + "operationId": "BackupProtectionContainers_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionContainerResourceList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-odata": "#/definitions/BMSContainerQueryObject", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Backup Protection Containers": { + "$ref": "./examples/AzureStorage/ProtectionContainers_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupSecurityPIN": { + "post": { + "tags": [ + "SecurityPINs" + ], + "description": "Get the security PIN.", + "operationId": "SecurityPINs_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TokenInformation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Vault Security Pin": { + "$ref": "./examples/Common/BackupSecurityPin_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}/recoveryPoints/{recoveryPointId}/move": { + "post": { + "tags": [ + "RecoveryPoint" + ], + "summary": "Move recovery point from one datastore to another store.", + "operationId": "MoveRecoveryPoint", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "protectedItemName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "recoveryPointId", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "Move Resource Across Tiers Request", + "required": true, + "schema": { + "$ref": "#/definitions/MoveRPAcrossTiersRequest" + } + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Trigger RP Move Operation": { + "$ref": "./examples/TriggerRecoveryPointMove_Post.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}/recoveryPointsRecommendedForMove": { + "post": { + "tags": [ + "RecoveryPointsRecommendedForMove" + ], + "description": "Lists the recovery points recommended for move to another tier", + "operationId": "RecoveryPointsRecommendedForMove_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "protectedItemName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "List Recovery points Recommended for Move Request", + "required": true, + "schema": { + "$ref": "#/definitions/ListRecoveryPointsRecommendedForMoveRequest" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoveryPointResourceList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get Protected Azure Vm Recovery Points Recommended for Move": { + "$ref": "./examples/AzureIaasVm/RecoveryPointsRecommendedForMove_List.json" + } + } + } + } + }, + "definitions": { + "BackupResourceEncryptionConfig": { + "type": "object", + "properties": { + "encryptionAtRestType": { + "description": "Encryption At Rest Type", + "enum": [ + "Invalid", + "MicrosoftManaged", + "CustomerManaged" + ], + "type": "string", + "x-ms-enum": { + "name": "EncryptionAtRestType", + "modelAsString": true + } + }, + "keyUri": { + "description": "Key Vault Key URI", + "type": "string" + }, + "subscriptionId": { + "description": "Key Vault Subscription Id", + "type": "string" + }, + "lastUpdateStatus": { + "enum": [ + "Invalid", + "NotEnabled", + "PartiallySucceeded", + "PartiallyFailed", + "Failed", + "Succeeded" + ], + "type": "string", + "x-ms-enum": { + "name": "LastUpdateStatus", + "modelAsString": true + } + }, + "infrastructureEncryptionState": { + "enum": [ + "Invalid", + "Disabled", + "Enabled" + ], + "type": "string", + "x-ms-enum": { + "name": "InfrastructureEncryptionState", + "modelAsString": true + } + } + } + }, + "BackupResourceEncryptionConfigResource": { + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/BackupResourceEncryptionConfig", + "description": "BackupResourceEncryptionConfigResource properties" + } + } + }, + "PrivateEndpoint": { + "description": "The Private Endpoint network resource that is linked to the Private Endpoint connection", + "type": "object", + "properties": { + "id": { + "description": "Gets or sets id", + "type": "string" + } + } + }, + "PrivateEndpointConnection": { + "description": "Private Endpoint Connection Response Properties", + "type": "object", + "properties": { + "provisioningState": { + "description": "Gets or sets provisioning state of the private endpoint connection", + "enum": [ + "Succeeded", + "Deleting", + "Failed", + "Pending" + ], + "type": "string", + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpoint", + "description": "Gets or sets private endpoint associated with the private endpoint connection" + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionState", + "description": "Gets or sets private link service connection state" + } + } + }, + "PrivateEndpointConnectionResource": { + "description": "Private Endpoint Connection Response Properties", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnection", + "description": "PrivateEndpointConnectionResource properties" + } + } + }, + "PrivateLinkServiceConnectionState": { + "description": "Private Link Service Connection State", + "type": "object", + "properties": { + "status": { + "description": "Gets or sets the status", + "enum": [ + "Pending", + "Approved", + "Rejected", + "Disconnected" + ], + "type": "string", + "x-ms-enum": { + "name": "PrivateEndpointConnectionStatus", + "modelAsString": true + } + }, + "description": { + "description": "Gets or sets description", + "type": "string" + }, + "actionRequired": { + "description": "Gets or sets actions required", + "type": "string" + } + } + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "type": "object", + "$ref": "#/definitions/CloudErrorBody", + "description": "The error object." + } + }, + "description": "An error response from the Container Instance service." + }, + "CloudErrorBody": { + "x-ms-external": true, + "properties": { + "code": { + "readOnly": true, + "type": "string", + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "readOnly": true, + "type": "string", + "description": "A message describing the error, intended to be suitable for display in a user interface." + }, + "target": { + "readOnly": true, + "type": "string", + "description": "The target of the particular error. For example, the name of the property in error." + }, + "details": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/CloudErrorBody" + }, + "description": "A list of additional details about the error." + }, + "additionalInfo": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorAdditionalInfo" + }, + "description": "The error additional info." + } + }, + "description": "An error response from the Container Instance service." + }, + "NewErrorResponse": { + "properties": { + "error": { + "type": "object", + "description": "The error object.", + "properties": { + "code": { + "readOnly": true, + "type": "string", + "description": "The error code." + }, + "message": { + "readOnly": true, + "type": "string", + "description": "The error message." + }, + "target": { + "readOnly": true, + "type": "string", + "description": "The error target." + }, + "details": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/NewErrorResponse" + }, + "description": "The error details." + }, + "additionalInfo": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorAdditionalInfo" + }, + "description": "The error additional info." + } + } + } + }, + "description": "The resource management error response." + }, + "AzureFileshareProtectedItem": { + "description": "Azure File Share workload-specific backup item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectedItem" + } + ], + "properties": { + "friendlyName": { + "description": "Friendly name of the fileshare represented by this backup item.", + "type": "string" + }, + "protectionStatus": { + "description": "Backup status of this backup item.", + "type": "string" + }, + "protectionState": { + "description": "Backup state of this backup item.", + "enum": [ + "Invalid", + "IRPending", + "Protected", + "ProtectionError", + "ProtectionStopped", + "ProtectionPaused" + ], + "type": "string", + "x-ms-enum": { + "name": "ProtectionState", + "modelAsString": true + } + }, + "lastBackupStatus": { + "description": "Last backup operation status. Possible values: Healthy, Unhealthy.", + "type": "string" + }, + "lastBackupTime": { + "format": "date-time", + "description": "Timestamp of the last backup operation on this backup item.", + "type": "string" + }, + "kpisHealths": { + "description": "Health details of different KPIs", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/KPIResourceHealthDetails" + } + }, + "extendedInfo": { + "$ref": "#/definitions/AzureFileshareProtectedItemExtendedInfo", + "description": "Additional information with this backup item." + } + }, + "x-ms-discriminator-value": "AzureFileShareProtectedItem" + }, + "AzureFileshareProtectedItemExtendedInfo": { + "description": "Additional information about Azure File Share backup item.", + "type": "object", + "properties": { + "oldestRecoveryPoint": { + "format": "date-time", + "description": "The oldest backup copy available for this item in the service.", + "type": "string" + }, + "recoveryPointCount": { + "format": "int32", + "description": "Number of available backup copies associated with this backup item.", + "type": "integer" + }, + "policyState": { + "description": "Indicates consistency of policy object and policy applied to this backup item.", + "type": "string" + }, + "resourceState": { + "description": "Indicates the state of this resource. Possible values are from enum ResourceState {Invalid, Active, SoftDeleted, Deleted}", + "type": "string", + "readOnly": true + }, + "resourceStateSyncTime": { + "format": "date-time", + "description": "The resource state sync time for this backup item.", + "type": "string", + "readOnly": true + } + } + }, + "AzureFileShareRecoveryPoint": { + "description": "Azure File Share workload specific backup copy.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RecoveryPoint" + } + ], + "properties": { + "recoveryPointType": { + "description": "Type of the backup copy. Specifies whether it is a crash consistent backup or app consistent.", + "type": "string" + }, + "recoveryPointTime": { + "format": "date-time", + "description": "Time at which this backup copy was created.", + "type": "string" + }, + "fileShareSnapshotUri": { + "description": "Contains Url to the snapshot of fileshare, if applicable", + "type": "string" + }, + "recoveryPointSizeInGB": { + "format": "int32", + "description": "Contains recovery point size", + "type": "integer" + } + }, + "x-ms-discriminator-value": "AzureFileShareRecoveryPoint" + }, + "AzureFileShareRestoreRequest": { + "description": "AzureFileShare Restore Request", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RestoreRequest" + } + ], + "properties": { + "recoveryType": { + "description": "Type of this recovery.", + "enum": [ + "Invalid", + "OriginalLocation", + "AlternateLocation", + "RestoreDisks", + "Offline" + ], + "type": "string", + "x-ms-enum": { + "name": "RecoveryType", + "modelAsString": true + } + }, + "sourceResourceId": { + "description": "Source storage account ARM Id", + "type": "string" + }, + "copyOptions": { + "description": "Options to resolve copy conflicts.", + "enum": [ + "Invalid", + "CreateCopy", + "Skip", + "Overwrite", + "FailOnConflict" + ], + "type": "string", + "x-ms-enum": { + "name": "CopyOptions", + "modelAsString": true + } + }, + "restoreRequestType": { + "description": "Restore Type (FullShareRestore or ItemLevelRestore)", + "enum": [ + "Invalid", + "FullShareRestore", + "ItemLevelRestore" + ], + "type": "string", + "x-ms-enum": { + "name": "RestoreRequestType", + "modelAsString": true + } + }, + "restoreFileSpecs": { + "description": "List of Source Files/Folders(which need to recover) and TargetFolderPath details", + "type": "array", + "items": { + "$ref": "#/definitions/RestoreFileSpecs" + } + }, + "targetDetails": { + "$ref": "#/definitions/TargetAFSRestoreInfo", + "description": "Target File Share Details" + } + }, + "x-ms-discriminator-value": "AzureFileShareRestoreRequest" + }, + "AzureVmWorkloadProtectionPolicy": { + "description": "Azure VM (Mercury) workload-specific backup policy.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionPolicy" + } + ], + "properties": { + "workLoadType": { + "description": "Type of workload for the backup management", + "enum": [ + "Invalid", + "VM", + "FileFolder", + "AzureSqlDb", + "SQLDB", + "Exchange", + "Sharepoint", + "VMwareVM", + "SystemState", + "Client", + "GenericDataSource", + "SQLDataBase", + "AzureFileShare", + "SAPHanaDatabase", + "SAPAseDatabase" + ], + "type": "string", + "x-ms-enum": { + "name": "WorkloadType", + "modelAsString": true + } + }, + "settings": { + "$ref": "#/definitions/Settings", + "description": "Common settings for the backup management" + }, + "subProtectionPolicy": { + "description": "List of sub-protection policies which includes schedule and retention", + "type": "array", + "items": { + "$ref": "#/definitions/SubProtectionPolicy" + } + }, + "makePolicyConsistent": { + "description": "Fix the policy inconsistency", + "type": "boolean" + } + }, + "x-ms-discriminator-value": "AzureWorkload" + }, + "AzureFileShareProtectionPolicy": { + "description": "AzureStorage backup policy.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionPolicy" + } + ], + "properties": { + "workLoadType": { + "description": "Type of workload for the backup management", + "enum": [ + "Invalid", + "VM", + "FileFolder", + "AzureSqlDb", + "SQLDB", + "Exchange", + "Sharepoint", + "VMwareVM", + "SystemState", + "Client", + "GenericDataSource", + "SQLDataBase", + "AzureFileShare", + "SAPHanaDatabase", + "SAPAseDatabase" + ], + "type": "string", + "x-ms-enum": { + "name": "WorkloadType", + "modelAsString": true + } + }, + "schedulePolicy": { + "$ref": "#/definitions/SchedulePolicy", + "description": "Backup schedule specified as part of backup policy." + }, + "retentionPolicy": { + "$ref": "#/definitions/RetentionPolicy", + "description": "Retention policy with the details on backup copy retention ranges." + }, + "timeZone": { + "description": "TimeZone optional input as string. For example: TimeZone = \"Pacific Standard Time\".", + "type": "string" + } + }, + "x-ms-discriminator-value": "AzureStorage" + }, + "AzureIaaSClassicComputeVMProtectedItem": { + "description": "IaaS VM workload-specific backup item representing the Classic Compute VM.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureIaaSVMProtectedItem" + } + ], + "x-ms-discriminator-value": "Microsoft.ClassicCompute/virtualMachines" + }, + "AzureIaaSComputeVMProtectedItem": { + "description": "IaaS VM workload-specific backup item representing the Azure Resource Manager VM.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureIaaSVMProtectedItem" + } + ], + "x-ms-discriminator-value": "Microsoft.Compute/virtualMachines" + }, + "AzureIaaSVMErrorInfo": { + "description": "Azure IaaS VM workload-specific error information.", + "type": "object", + "properties": { + "errorCode": { + "format": "int32", + "description": "Error code.", + "type": "integer", + "readOnly": true + }, + "errorTitle": { + "description": "Title: Typically, the entity that the error pertains to.", + "type": "string", + "readOnly": true + }, + "errorString": { + "description": "Localized error string.", + "type": "string", + "readOnly": true + }, + "recommendations": { + "description": "List of localized recommendations for above error code.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + } + } + }, + "ResourceHealthDetails": { + "description": "Health Details for backup items.", + "type": "object", + "properties": { + "code": { + "format": "int32", + "description": "Health Code", + "type": "integer", + "readOnly": true + }, + "title": { + "description": "Health Title", + "type": "string", + "readOnly": true + }, + "message": { + "description": "Health Message", + "type": "string", + "readOnly": true + }, + "recommendations": { + "description": "Health Recommended Actions", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + } + } + }, + "AzureIaaSVMHealthDetails": { + "description": "Azure IaaS VM workload-specific Health Details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ResourceHealthDetails" + } + ] + }, + "AzureIaaSVMJob": { + "description": "Azure IaaS VM workload-specific job object.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Job" + } + ], + "properties": { + "duration": { + "format": "duration", + "description": "Time elapsed during the execution of this job.", + "type": "string" + }, + "actionsInfo": { + "description": "Gets or sets the state/actions applicable on this job like cancel/retry.", + "type": "array", + "items": { + "enum": [ + "Invalid", + "Cancellable", + "Retriable" + ], + "type": "string", + "x-ms-enum": { + "name": "JobSupportedAction", + "modelAsString": false + } + } + }, + "errorDetails": { + "description": "Error details on execution of this job.", + "type": "array", + "items": { + "$ref": "#/definitions/AzureIaaSVMErrorInfo" + } + }, + "virtualMachineVersion": { + "description": "Specifies whether the backup item is a Classic or an Azure Resource Manager VM.", + "type": "string" + }, + "extendedInfo": { + "$ref": "#/definitions/AzureIaaSVMJobExtendedInfo", + "description": "Additional information for this job." + } + }, + "x-ms-discriminator-value": "AzureIaaSVMJob" + }, + "AzureIaaSVMJobExtendedInfo": { + "description": "Azure IaaS VM workload-specific additional information for job.", + "type": "object", + "properties": { + "tasksList": { + "description": "List of tasks associated with this job.", + "type": "array", + "items": { + "$ref": "#/definitions/AzureIaaSVMJobTaskDetails" + } + }, + "propertyBag": { + "description": "Job properties.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "internalPropertyBag": { + "description": "Job internal properties.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "progressPercentage": { + "format": "double", + "description": "Indicates progress of the job. Null if it has not started or completed.", + "type": "number" + }, + "estimatedRemainingDuration": { + "description": "Time remaining for execution of this job.", + "type": "string" + }, + "dynamicErrorMessage": { + "description": "Non localized error message on job execution.", + "type": "string" + } + } + }, + "AzureIaaSVMJobTaskDetails": { + "description": "Azure IaaS VM workload-specific job task details.", + "type": "object", + "properties": { + "taskId": { + "description": "The task display name.", + "type": "string" + }, + "startTime": { + "format": "date-time", + "description": "The start time.", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "The end time.", + "type": "string" + }, + "instanceId": { + "description": "The instanceId.", + "type": "string" + }, + "duration": { + "format": "duration", + "description": "Time elapsed for task.", + "type": "string" + }, + "status": { + "description": "The status.", + "type": "string" + }, + "progressPercentage": { + "format": "double", + "description": "Progress of the task.", + "type": "number" + }, + "taskExecutionDetails": { + "description": "Details about execution of the task.\r\neg: number of bytes transferred etc", + "type": "string" + } + } + }, + "AzureIaaSVMProtectedItem": { + "description": "IaaS VM workload-specific backup item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectedItem" + } + ], + "properties": { + "friendlyName": { + "description": "Friendly name of the VM represented by this backup item.", + "type": "string" + }, + "virtualMachineId": { + "description": "Fully qualified ARM ID of the virtual machine represented by this item.", + "type": "string" + }, + "protectionStatus": { + "description": "Backup status of this backup item.", + "type": "string" + }, + "protectionState": { + "description": "Backup state of this backup item.", + "enum": [ + "Invalid", + "IRPending", + "Protected", + "ProtectionError", + "ProtectionStopped", + "ProtectionPaused" + ], + "type": "string", + "x-ms-enum": { + "name": "ProtectionState", + "modelAsString": true + } + }, + "healthStatus": { + "description": "Health status of protected item.", + "enum": [ + "Passed", + "ActionRequired", + "ActionSuggested", + "Invalid" + ], + "type": "string", + "x-ms-enum": { + "name": "HealthStatus", + "modelAsString": true + } + }, + "healthDetails": { + "description": "Health details on this backup item.", + "type": "array", + "items": { + "$ref": "#/definitions/AzureIaaSVMHealthDetails" + } + }, + "kpisHealths": { + "description": "Health details of different KPIs", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/KPIResourceHealthDetails" + } + }, + "lastBackupStatus": { + "description": "Last backup operation status.", + "type": "string" + }, + "lastBackupTime": { + "format": "date-time", + "description": "Timestamp of the last backup operation on this backup item.", + "type": "string" + }, + "protectedItemDataId": { + "description": "Data ID of the protected item.", + "type": "string" + }, + "extendedInfo": { + "$ref": "#/definitions/AzureIaaSVMProtectedItemExtendedInfo", + "description": "Additional information for this backup item." + }, + "extendedProperties": { + "$ref": "#/definitions/ExtendedProperties" + } + }, + "x-ms-discriminator-value": "AzureIaaSVMProtectedItem" + }, + "AzureIaaSVMProtectedItemExtendedInfo": { + "description": "Additional information on Azure IaaS VM specific backup item.", + "type": "object", + "properties": { + "oldestRecoveryPoint": { + "format": "date-time", + "description": "The oldest backup copy available for this backup item.", + "type": "string" + }, + "recoveryPointCount": { + "format": "int32", + "description": "Number of backup copies available for this backup item.", + "type": "integer" + }, + "policyInconsistent": { + "description": "Specifies if backup policy associated with the backup item is inconsistent.", + "type": "boolean" + } + } + }, + "AzureIaaSVMProtectionPolicy": { + "description": "IaaS VM workload-specific backup policy.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionPolicy" + } + ], + "properties": { + "instantRPDetails": { + "$ref": "#/definitions/InstantRPAdditionalDetails" + }, + "schedulePolicy": { + "$ref": "#/definitions/SchedulePolicy", + "description": "Backup schedule specified as part of backup policy." + }, + "retentionPolicy": { + "$ref": "#/definitions/RetentionPolicy", + "description": "Retention policy with the details on backup copy retention ranges." + }, + "instantRpRetentionRangeInDays": { + "format": "int32", + "description": "Instant RP retention policy range in days", + "type": "integer" + }, + "timeZone": { + "description": "TimeZone optional input as string. For example: TimeZone = \"Pacific Standard Time\".", + "type": "string" + } + }, + "x-ms-discriminator-value": "AzureIaasVM" + }, + "AzureSqlProtectedItem": { + "description": "Azure SQL workload-specific backup item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectedItem" + } + ], + "properties": { + "protectedItemDataId": { + "description": "Internal ID of a backup item. Used by Azure SQL Backup engine to contact Recovery Services.", + "type": "string" + }, + "protectionState": { + "description": "Backup state of the backed up item.", + "enum": [ + "Invalid", + "IRPending", + "Protected", + "ProtectionError", + "ProtectionStopped", + "ProtectionPaused" + ], + "type": "string", + "x-ms-enum": { + "name": "ProtectedItemState", + "modelAsString": true + } + }, + "extendedInfo": { + "$ref": "#/definitions/AzureSqlProtectedItemExtendedInfo", + "description": "Additional information for this backup item." + } + }, + "x-ms-discriminator-value": "Microsoft.Sql/servers/databases" + }, + "AzureSqlProtectedItemExtendedInfo": { + "description": "Additional information on Azure Sql specific protected item.", + "type": "object", + "properties": { + "oldestRecoveryPoint": { + "format": "date-time", + "description": "The oldest backup copy available for this item in the service.", + "type": "string" + }, + "recoveryPointCount": { + "format": "int32", + "description": "Number of available backup copies associated with this backup item.", + "type": "integer" + }, + "policyState": { + "description": "State of the backup policy associated with this backup item.", + "type": "string" + } + } + }, + "AzureStorageErrorInfo": { + "description": "Azure storage specific error information", + "type": "object", + "properties": { + "errorCode": { + "format": "int32", + "description": "Error code.", + "type": "integer" + }, + "errorString": { + "description": "Localized error string.", + "type": "string" + }, + "recommendations": { + "description": "List of localized recommendations for above error code.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "AzureSqlProtectionPolicy": { + "description": "Azure SQL workload-specific backup policy.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionPolicy" + } + ], + "properties": { + "retentionPolicy": { + "$ref": "#/definitions/RetentionPolicy", + "description": "Retention policy details." + } + }, + "x-ms-discriminator-value": "AzureSql" + }, + "AzureStorageJob": { + "description": "Azure storage specific job.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Job" + } + ], + "properties": { + "duration": { + "format": "duration", + "description": "Time elapsed during the execution of this job.", + "type": "string" + }, + "actionsInfo": { + "description": "Gets or sets the state/actions applicable on this job like cancel/retry.", + "type": "array", + "items": { + "enum": [ + "Invalid", + "Cancellable", + "Retriable" + ], + "type": "string", + "x-ms-enum": { + "name": "JobSupportedAction", + "modelAsString": false + } + } + }, + "errorDetails": { + "description": "Error details on execution of this job.", + "type": "array", + "items": { + "$ref": "#/definitions/AzureStorageErrorInfo" + } + }, + "storageAccountName": { + "description": "Specifies friendly name of the storage account.", + "type": "string" + }, + "storageAccountVersion": { + "description": "Specifies whether the Storage account is a Classic or an Azure Resource Manager Storage account.", + "type": "string" + }, + "extendedInfo": { + "$ref": "#/definitions/AzureStorageJobExtendedInfo", + "description": "Additional information about the job." + } + }, + "x-ms-discriminator-value": "AzureStorageJob" + }, + "AzureStorageJobExtendedInfo": { + "description": "Azure Storage workload-specific additional information for job.", + "type": "object", + "properties": { + "tasksList": { + "description": "List of tasks for this job", + "type": "array", + "items": { + "$ref": "#/definitions/AzureStorageJobTaskDetails" + } + }, + "propertyBag": { + "description": "Job properties.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "dynamicErrorMessage": { + "description": "Non localized error message on job execution.", + "type": "string" + } + } + }, + "AzureStorageJobTaskDetails": { + "description": "Azure storage workload specific job task details.", + "type": "object", + "properties": { + "taskId": { + "description": "The task display name.", + "type": "string" + }, + "status": { + "description": "The status.", + "type": "string" + } + } + }, + "AzureVmWorkloadProtectedItem": { + "description": "Azure VM workload-specific protected item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectedItem" + } + ], + "properties": { + "friendlyName": { + "description": "Friendly name of the DB represented by this backup item.", + "type": "string" + }, + "serverName": { + "description": "Host/Cluster Name for instance or AG", + "type": "string" + }, + "parentName": { + "description": "Parent name of the DB such as Instance or Availability Group.", + "type": "string" + }, + "parentType": { + "description": "Parent type of protected item, example: for a DB, standalone server or distributed", + "type": "string" + }, + "protectionStatus": { + "description": "Backup status of this backup item.", + "type": "string" + }, + "protectionState": { + "description": "Backup state of this backup item.", + "enum": [ + "Invalid", + "IRPending", + "Protected", + "ProtectionError", + "ProtectionStopped", + "ProtectionPaused" + ], + "type": "string", + "x-ms-enum": { + "name": "ProtectionState", + "modelAsString": true + } + }, + "lastBackupStatus": { + "description": "Last backup operation status. Possible values: Healthy, Unhealthy.", + "enum": [ + "Invalid", + "Healthy", + "Unhealthy", + "IRPending" + ], + "type": "string", + "x-ms-enum": { + "name": "LastBackupStatus", + "modelAsString": true + } + }, + "lastBackupTime": { + "format": "date-time", + "description": "Timestamp of the last backup operation on this backup item.", + "type": "string" + }, + "lastBackupErrorDetail": { + "$ref": "#/definitions/ErrorDetail", + "description": "Error details in last backup" + }, + "protectedItemDataSourceId": { + "description": "Data ID of the protected item.", + "type": "string" + }, + "protectedItemHealthStatus": { + "description": "Health status of the backup item, evaluated based on last heartbeat received", + "enum": [ + "Invalid", + "Healthy", + "Unhealthy", + "NotReachable", + "IRPending" + ], + "type": "string", + "x-ms-enum": { + "name": "ProtectedItemHealthStatus", + "modelAsString": true + } + }, + "extendedInfo": { + "$ref": "#/definitions/AzureVmWorkloadProtectedItemExtendedInfo", + "description": "Additional information for this backup item." + }, + "kpisHealths": { + "description": "Health details of different KPIs", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/KPIResourceHealthDetails" + } + } + }, + "x-ms-discriminator-value": "AzureVmWorkloadProtectedItem" + }, + "AzureVmWorkloadProtectedItemExtendedInfo": { + "description": "Additional information on Azure Workload for SQL specific backup item.", + "type": "object", + "properties": { + "oldestRecoveryPoint": { + "format": "date-time", + "description": "The oldest backup copy available for this backup item.", + "type": "string" + }, + "recoveryPointCount": { + "format": "int32", + "description": "Number of backup copies available for this backup item.", + "type": "integer" + }, + "policyState": { + "description": "Indicates consistency of policy object and policy applied to this backup item.", + "type": "string" + } + } + }, + "AzureVmWorkloadSAPAseDatabaseProtectedItem": { + "description": "Azure VM workload-specific protected item representing SAP ASE Database.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureVmWorkloadProtectedItem" + } + ], + "x-ms-discriminator-value": "AzureVmWorkloadSAPAseDatabase" + }, + "AzureVmWorkloadSAPHanaDatabaseProtectedItem": { + "description": "Azure VM workload-specific protected item representing SAP HANA Database.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureVmWorkloadProtectedItem" + } + ], + "x-ms-discriminator-value": "AzureVmWorkloadSAPHanaDatabase" + }, + "AzureVmWorkloadSQLDatabaseProtectedItem": { + "description": "Azure VM workload-specific protected item representing SQL Database.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureVmWorkloadProtectedItem" + } + ], + "x-ms-discriminator-value": "AzureVmWorkloadSQLDatabase" + }, + "AzureWorkloadErrorInfo": { + "description": "Azure storage specific error information", + "type": "object", + "properties": { + "errorCode": { + "format": "int32", + "description": "Error code.", + "type": "integer" + }, + "errorString": { + "description": "Localized error string.", + "type": "string" + }, + "errorTitle": { + "description": "Title: Typically, the entity that the error pertains to.", + "type": "string" + }, + "recommendations": { + "description": "List of localized recommendations for above error code.", + "type": "array", + "items": { + "type": "string" + } + }, + "additionalDetails": { + "description": "Additional details for above error code.", + "type": "string" + } + } + }, + "AzureWorkloadJob": { + "description": "Azure storage specific job.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Job" + } + ], + "properties": { + "workloadType": { + "description": "Workload type of the job", + "type": "string" + }, + "duration": { + "format": "duration", + "description": "Time elapsed during the execution of this job.", + "type": "string" + }, + "actionsInfo": { + "description": "Gets or sets the state/actions applicable on this job like cancel/retry.", + "type": "array", + "items": { + "enum": [ + "Invalid", + "Cancellable", + "Retriable" + ], + "type": "string", + "x-ms-enum": { + "name": "JobSupportedAction", + "modelAsString": false + } + } + }, + "errorDetails": { + "description": "Error details on execution of this job.", + "type": "array", + "items": { + "$ref": "#/definitions/AzureWorkloadErrorInfo" + } + }, + "extendedInfo": { + "$ref": "#/definitions/AzureWorkloadJobExtendedInfo", + "description": "Additional information about the job." + } + }, + "x-ms-discriminator-value": "AzureWorkloadJob" + }, + "AzureWorkloadJobExtendedInfo": { + "description": "Azure VM workload-specific additional information for job.", + "type": "object", + "properties": { + "tasksList": { + "description": "List of tasks for this job", + "type": "array", + "items": { + "$ref": "#/definitions/AzureWorkloadJobTaskDetails" + } + }, + "propertyBag": { + "description": "Job properties.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "dynamicErrorMessage": { + "description": "Non localized error message on job execution.", + "type": "string" + } + } + }, + "AzureWorkloadJobTaskDetails": { + "description": "Azure VM workload specific job task details.", + "type": "object", + "properties": { + "taskId": { + "description": "The task display name.", + "type": "string" + }, + "status": { + "description": "The status.", + "type": "string" + } + } + }, + "AzureWorkloadPointInTimeRecoveryPoint": { + "description": "Recovery point specific to PointInTime", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadRecoveryPoint" + } + ], + "properties": { + "timeRanges": { + "description": "List of log ranges", + "type": "array", + "items": { + "$ref": "#/definitions/PointInTimeRange" + } + } + }, + "x-ms-discriminator-value": "AzureWorkloadPointInTimeRecoveryPoint" + }, + "AzureWorkloadPointInTimeRestoreRequest": { + "description": "AzureWorkload SAP Hana -specific restore. Specifically for PointInTime/Log restore", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadRestoreRequest" + } + ], + "properties": { + "pointInTime": { + "format": "date-time", + "description": "PointInTime value", + "type": "string" + } + }, + "x-ms-discriminator-value": "AzureWorkloadPointInTimeRestoreRequest" + }, + "AzureWorkloadRecoveryPoint": { + "description": "Workload specific recovery point, specifically encapsulates full/diff recovery point", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RecoveryPoint" + } + ], + "properties": { + "recoveryPointTimeInUTC": { + "format": "date-time", + "description": "UTC time at which recovery point was created", + "type": "string" + }, + "type": { + "description": "Type of restore point", + "enum": [ + "Invalid", + "Full", + "Log", + "Differential", + "Incremental" + ], + "type": "string", + "x-ms-enum": { + "name": "RestorePointType", + "modelAsString": true + } + }, + "recoveryPointTierDetails": { + "description": "Recovery point tier information.", + "type": "array", + "items": { + "$ref": "#/definitions/RecoveryPointTierInformation" + } + }, + "recoveryPointMoveReadinessInfo": { + "description": "Eligibility of RP to be moved to another tier", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/RecoveryPointMoveReadinessInfo" + } + } + }, + "x-ms-discriminator-value": "AzureWorkloadRecoveryPoint" + }, + "AzureWorkloadRestoreRequest": { + "description": "AzureWorkload-specific restore.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RestoreRequest" + } + ], + "properties": { + "recoveryType": { + "description": "Type of this recovery.", + "enum": [ + "Invalid", + "OriginalLocation", + "AlternateLocation", + "RestoreDisks", + "Offline" + ], + "type": "string", + "x-ms-enum": { + "name": "RecoveryType", + "modelAsString": true + } + }, + "sourceResourceId": { + "description": "Fully qualified ARM ID of the VM on which workload that was running is being recovered.", + "type": "string" + }, + "propertyBag": { + "description": "Workload specific property bag.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "targetInfo": { + "$ref": "#/definitions/TargetRestoreInfo", + "description": "Details of target database" + }, + "recoveryMode": { + "description": "Defines whether the current recovery mode is file restore or database restore", + "enum": [ + "Invalid", + "FileRecovery", + "WorkloadRecovery" + ], + "type": "string", + "x-ms-enum": { + "name": "RecoveryMode", + "modelAsString": true + } + } + }, + "x-ms-discriminator-value": "AzureWorkloadRestoreRequest" + }, + "AzureWorkloadSAPHanaPointInTimeRecoveryPoint": { + "description": "Recovery point specific to PointInTime in SAPHana", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadPointInTimeRecoveryPoint" + } + ], + "x-ms-discriminator-value": "AzureWorkloadSAPHanaPointInTimeRecoveryPoint" + }, + "AzureWorkloadSAPHanaPointInTimeRestoreRequest": { + "description": "AzureWorkload SAP Hana -specific restore. Specifically for PointInTime/Log restore", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadSAPHanaRestoreRequest" + } + ], + "properties": { + "pointInTime": { + "format": "date-time", + "description": "PointInTime value", + "type": "string" + } + }, + "x-ms-discriminator-value": "AzureWorkloadSAPHanaPointInTimeRestoreRequest" + }, + "AzureWorkloadSAPHanaRecoveryPoint": { + "description": "SAPHana specific recoverypoint, specifically encapsulates full/diff recoverypoints", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadRecoveryPoint" + } + ], + "x-ms-discriminator-value": "AzureWorkloadSAPHanaRecoveryPoint" + }, + "AzureWorkloadSAPHanaRestoreRequest": { + "description": "AzureWorkload SAP Hana-specific restore.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadRestoreRequest" + } + ], + "x-ms-discriminator-value": "AzureWorkloadSAPHanaRestoreRequest" + }, + "AzureWorkloadSQLPointInTimeRecoveryPoint": { + "description": "Recovery point specific to PointInTime", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadSQLRecoveryPoint" + } + ], + "properties": { + "timeRanges": { + "description": "List of log ranges", + "type": "array", + "items": { + "$ref": "#/definitions/PointInTimeRange" + } + } + }, + "x-ms-discriminator-value": "AzureWorkloadSQLPointInTimeRecoveryPoint" + }, + "AzureWorkloadSQLPointInTimeRestoreRequest": { + "description": "AzureWorkload SQL -specific restore. Specifically for PointInTime/Log restore", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadSQLRestoreRequest" + } + ], + "properties": { + "pointInTime": { + "format": "date-time", + "description": "PointInTime value", + "type": "string" + } + }, + "x-ms-discriminator-value": "AzureWorkloadSQLPointInTimeRestoreRequest" + }, + "AzureWorkloadSQLRecoveryPoint": { + "description": "SQL specific recoverypoint, specifically encapsulates full/diff recoverypoint along with extended info", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadRecoveryPoint" + } + ], + "properties": { + "extendedInfo": { + "$ref": "#/definitions/AzureWorkloadSQLRecoveryPointExtendedInfo", + "description": "Extended Info that provides data directory details. Will be populated in two cases:\r\nWhen a specific recovery point is accessed using GetRecoveryPoint\r\nOr when ListRecoveryPoints is called for Log RP only with ExtendedInfo query filter" + } + }, + "x-ms-discriminator-value": "AzureWorkloadSQLRecoveryPoint" + }, + "AzureWorkloadSQLRecoveryPointExtendedInfo": { + "description": "Extended info class details", + "type": "object", + "properties": { + "dataDirectoryTimeInUTC": { + "format": "date-time", + "description": "UTC time at which data directory info was captured", + "type": "string" + }, + "dataDirectoryPaths": { + "description": "List of data directory paths during restore operation.", + "type": "array", + "items": { + "$ref": "#/definitions/SQLDataDirectory" + } + } + } + }, + "AzureWorkloadSQLRestoreRequest": { + "description": "AzureWorkload SQL -specific restore. Specifically for full/diff restore", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadRestoreRequest" + } + ], + "properties": { + "shouldUseAlternateTargetLocation": { + "description": "Default option set to true. If this is set to false, alternate data directory must be provided", + "type": "boolean" + }, + "isNonRecoverable": { + "description": "SQL specific property where user can chose to set no-recovery when restore operation is tried", + "type": "boolean" + }, + "alternateDirectoryPaths": { + "description": "Data directory details", + "type": "array", + "items": { + "$ref": "#/definitions/SQLDataDirectoryMapping" + } + } + }, + "x-ms-discriminator-value": "AzureWorkloadSQLRestoreRequest" + }, + "BEKDetails": { + "description": "BEK is bitlocker encryption key.", + "type": "object", + "properties": { + "secretUrl": { + "description": "Secret is BEK.", + "type": "string" + }, + "secretVaultId": { + "description": "ID of the Key Vault where this Secret is stored.", + "type": "string" + }, + "secretData": { + "description": "BEK data.", + "type": "string" + } + } + }, + "BMSRPQueryObject": { + "description": "Filters to list backup copies.", + "type": "object", + "properties": { + "startDate": { + "format": "date-time", + "description": "Backup copies created after this time.", + "type": "string" + }, + "endDate": { + "format": "date-time", + "description": "Backup copies created before this time.", + "type": "string" + }, + "restorePointQueryType": { + "description": "RestorePoint type", + "enum": [ + "Invalid", + "Full", + "Log", + "Differential", + "FullAndDifferential", + "All", + "Incremental" + ], + "type": "string", + "x-ms-enum": { + "name": "RestorePointQueryType", + "modelAsString": true + } + }, + "extendedInfo": { + "description": "In Get Recovery Point, it tells whether extended information about recovery point is asked.", + "type": "boolean" + }, + "moveReadyRPOnly": { + "description": "Whether the RP can be moved to another tier", + "type": "boolean" + } + } + }, + "DiskExclusionProperties": { + "type": "object", + "properties": { + "diskLunList": { + "description": "List of Disks' Logical Unit Numbers (LUN) to be used for VM Protection.", + "type": "array", + "items": { + "format": "int32", + "type": "integer" + } + }, + "isInclusionList": { + "description": "Flag to indicate whether DiskLunList is to be included/ excluded from backup.", + "type": "boolean" + } + } + }, + "ClientDiscoveryDisplay": { + "description": "Localized display information of an operation.", + "type": "object", + "properties": { + "provider": { + "description": "Name of the provider for display purposes", + "type": "string" + }, + "resource": { + "description": "ResourceType for which this Operation can be performed.", + "type": "string" + }, + "operation": { + "description": "Operations Name itself.", + "type": "string" + }, + "description": { + "description": "Description of the operation having details of what operation is about.", + "type": "string" + } + } + }, + "ClientDiscoveryForLogSpecification": { + "description": "Class to represent shoebox log specification in json client discovery.", + "type": "object", + "properties": { + "name": { + "description": "Name for shoebox log specification.", + "type": "string" + }, + "displayName": { + "description": "Localized display name", + "type": "string" + }, + "blobDuration": { + "description": "blob duration of shoebox log specification", + "type": "string" + } + } + }, + "ClientDiscoveryForProperties": { + "description": "Class to represent shoebox properties in json client discovery.", + "type": "object", + "properties": { + "serviceSpecification": { + "$ref": "#/definitions/ClientDiscoveryForServiceSpecification", + "description": "Operation properties." + } + } + }, + "ClientDiscoveryForServiceSpecification": { + "description": "Class to represent shoebox service specification in json client discovery.", + "type": "object", + "properties": { + "logSpecifications": { + "description": "List of log specifications of this operation.", + "type": "array", + "items": { + "$ref": "#/definitions/ClientDiscoveryForLogSpecification" + } + } + } + }, + "ClientDiscoveryResponse": { + "description": "Operations List response which contains list of available APIs.", + "type": "object", + "properties": { + "value": { + "description": "List of available operations.", + "type": "array", + "items": { + "$ref": "#/definitions/ClientDiscoveryValueForSingleApi" + } + }, + "nextLink": { + "description": "Link to the next chunk of Response.", + "type": "string" + } + } + }, + "ClientDiscoveryValueForSingleApi": { + "description": "Available operation details.", + "type": "object", + "properties": { + "name": { + "description": "Name of the Operation.", + "type": "string" + }, + "display": { + "$ref": "#/definitions/ClientDiscoveryDisplay", + "description": "Contains the localized display information for this particular operation" + }, + "origin": { + "description": "The intended executor of the operation;governs the display of the operation in the RBAC UX and the audit logs UX", + "type": "string" + }, + "properties": { + "$ref": "#/definitions/ClientDiscoveryForProperties", + "description": "ShoeBox properties for the given operation." + } + } + }, + "DiskInformation": { + "description": "Disk information", + "type": "object", + "properties": { + "lun": { + "format": "int32", + "type": "integer" + }, + "name": { + "type": "string" + } + } + }, + "DailyRetentionFormat": { + "description": "Daily retention format.", + "type": "object", + "properties": { + "daysOfTheMonth": { + "description": "List of days of the month.", + "type": "array", + "items": { + "$ref": "#/definitions/Day" + } + } + } + }, + "DailyRetentionSchedule": { + "description": "Daily retention schedule.", + "type": "object", + "properties": { + "retentionTimes": { + "description": "Retention times of retention policy.", + "type": "array", + "items": { + "format": "date-time", + "type": "string" + } + }, + "retentionDuration": { + "$ref": "#/definitions/RetentionDuration", + "description": "Retention duration of retention Policy." + } + } + }, + "Day": { + "description": "Day of the week.", + "type": "object", + "properties": { + "date": { + "format": "int32", + "description": "Date of the month", + "type": "integer" + }, + "isLast": { + "description": "Whether Date is last date of month", + "type": "boolean" + } + } + }, + "DpmErrorInfo": { + "description": "DPM workload-specific error information.", + "type": "object", + "properties": { + "errorString": { + "description": "Localized error string.", + "type": "string" + }, + "recommendations": { + "description": "List of localized recommendations for above error code.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "DpmJob": { + "description": "DPM workload-specific job object.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Job" + } + ], + "properties": { + "duration": { + "format": "duration", + "description": "Time elapsed for job.", + "type": "string" + }, + "dpmServerName": { + "description": "DPM server name managing the backup item or backup job.", + "type": "string" + }, + "containerName": { + "description": "Name of cluster/server protecting current backup item, if any.", + "type": "string" + }, + "containerType": { + "description": "Type of container.", + "type": "string" + }, + "workloadType": { + "description": "Type of backup item.", + "type": "string" + }, + "actionsInfo": { + "description": "The state/actions applicable on this job like cancel/retry.", + "type": "array", + "items": { + "enum": [ + "Invalid", + "Cancellable", + "Retriable" + ], + "type": "string", + "x-ms-enum": { + "name": "JobSupportedAction", + "modelAsString": false + } + } + }, + "errorDetails": { + "description": "The errors.", + "type": "array", + "items": { + "$ref": "#/definitions/DpmErrorInfo" + } + }, + "extendedInfo": { + "$ref": "#/definitions/DpmJobExtendedInfo", + "description": "Additional information for this job." + } + }, + "x-ms-discriminator-value": "DpmJob" + }, + "DpmJobExtendedInfo": { + "description": "Additional information on the DPM workload-specific job.", + "type": "object", + "properties": { + "tasksList": { + "description": "List of tasks associated with this job.", + "type": "array", + "items": { + "$ref": "#/definitions/DpmJobTaskDetails" + } + }, + "propertyBag": { + "description": "The job properties.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "dynamicErrorMessage": { + "description": "Non localized error message on job execution.", + "type": "string" + } + } + }, + "DpmJobTaskDetails": { + "description": "DPM workload-specific job task details.", + "type": "object", + "properties": { + "taskId": { + "description": "The task display name.", + "type": "string" + }, + "startTime": { + "format": "date-time", + "description": "The start time.", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "The end time.", + "type": "string" + }, + "duration": { + "format": "duration", + "description": "Time elapsed for task.", + "type": "string" + }, + "status": { + "description": "The status.", + "type": "string" + } + } + }, + "DPMProtectedItem": { + "description": "Additional information on Backup engine specific backup item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectedItem" + } + ], + "properties": { + "friendlyName": { + "description": "Friendly name of the managed item", + "type": "string" + }, + "backupEngineName": { + "description": "Backup Management server protecting this backup item", + "type": "string" + }, + "protectionState": { + "description": "Protection state of the backup engine", + "enum": [ + "Invalid", + "IRPending", + "Protected", + "ProtectionError", + "ProtectionStopped", + "ProtectionPaused" + ], + "type": "string", + "x-ms-enum": { + "name": "ProtectedItemState", + "modelAsString": true + } + }, + "extendedInfo": { + "$ref": "#/definitions/DPMProtectedItemExtendedInfo", + "description": "Extended info of the backup item." + } + }, + "x-ms-discriminator-value": "DPMProtectedItem" + }, + "DPMProtectedItemExtendedInfo": { + "description": "Additional information of DPM Protected item.", + "type": "object", + "properties": { + "protectableObjectLoadPath": { + "description": "Attribute to provide information on various DBs.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "protected": { + "description": "To check if backup item is disk protected.", + "type": "boolean" + }, + "isPresentOnCloud": { + "description": "To check if backup item is cloud protected.", + "type": "boolean" + }, + "lastBackupStatus": { + "description": "Last backup status information on backup item.", + "type": "string" + }, + "lastRefreshedAt": { + "format": "date-time", + "description": "Last refresh time on backup item.", + "type": "string" + }, + "oldestRecoveryPoint": { + "format": "date-time", + "description": "Oldest cloud recovery point time.", + "type": "string" + }, + "recoveryPointCount": { + "format": "int32", + "description": "cloud recovery point count.", + "type": "integer" + }, + "onPremiseOldestRecoveryPoint": { + "format": "date-time", + "description": "Oldest disk recovery point time.", + "type": "string" + }, + "onPremiseLatestRecoveryPoint": { + "format": "date-time", + "description": "latest disk recovery point time.", + "type": "string" + }, + "onPremiseRecoveryPointCount": { + "format": "int32", + "description": "disk recovery point count.", + "type": "integer" + }, + "isCollocated": { + "description": "To check if backup item is collocated.", + "type": "boolean" + }, + "protectionGroupName": { + "description": "Protection group name of the backup item.", + "type": "string" + }, + "diskStorageUsedInBytes": { + "description": "Used Disk storage in bytes.", + "type": "string" + }, + "totalDiskStorageSizeInBytes": { + "description": "total Disk storage in bytes.", + "type": "string" + } + } + }, + "EncryptionDetails": { + "description": "Details needed if the VM was encrypted at the time of backup.", + "type": "object", + "properties": { + "encryptionEnabled": { + "description": "Identifies whether this backup copy represents an encrypted VM at the time of backup.", + "type": "boolean" + }, + "kekUrl": { + "description": "Key Url.", + "type": "string" + }, + "secretKeyUrl": { + "description": "Secret Url.", + "type": "string" + }, + "kekVaultId": { + "description": "ID of Key Vault where KEK is stored.", + "type": "string" + }, + "secretKeyVaultId": { + "description": "ID of Key Vault where Secret is stored.", + "type": "string" + } + } + }, + "ErrorDetail": { + "description": "Error Detail class which encapsulates Code, Message and Recommendations.", + "type": "object", + "properties": { + "code": { + "description": "Error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "Error Message related to the Code.", + "type": "string", + "readOnly": true + }, + "recommendations": { + "description": "List of recommendation strings.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + } + } + }, + "ExportJobsOperationResultInfo": { + "description": "This class is used to send blob details after exporting jobs.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/OperationResultInfoBase" + } + ], + "properties": { + "blobUrl": { + "description": "URL of the blob into which the serialized string of list of jobs is exported.", + "type": "string" + }, + "blobSasKey": { + "description": "SAS key to access the blob. It expires in 15 mins.", + "type": "string" + }, + "excelFileBlobUrl": { + "description": "URL of the blob into which the ExcelFile is uploaded.", + "type": "string" + }, + "excelFileBlobSasKey": { + "description": "SAS key to access the blob. It expires in 15 mins.", + "type": "string" + } + }, + "x-ms-discriminator-value": "ExportJobsOperationResultInfo" + }, + "ExtendedProperties": { + "description": "Extended Properties for Azure IaasVM Backup.", + "type": "object", + "properties": { + "diskExclusionProperties": { + "$ref": "#/definitions/DiskExclusionProperties", + "description": "Extended Properties for Disk Exclusion." + } + } + }, + "GenericProtectionPolicy": { + "description": "Azure VM (Mercury) workload-specific backup policy.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionPolicy" + } + ], + "properties": { + "subProtectionPolicy": { + "description": "List of sub-protection policies which includes schedule and retention", + "type": "array", + "items": { + "$ref": "#/definitions/SubProtectionPolicy" + } + }, + "timeZone": { + "description": "TimeZone optional input as string. For example: TimeZone = \"Pacific Standard Time\".", + "type": "string" + }, + "fabricName": { + "description": "Name of this policy's fabric.", + "type": "string" + } + }, + "x-ms-discriminator-value": "GenericProtectionPolicy" + }, + "InstantRPAdditionalDetails": { + "type": "object", + "properties": { + "azureBackupRGNamePrefix": { + "type": "string" + }, + "azureBackupRGNameSuffix": { + "type": "string" + } + } + }, + "GenericProtectedItem": { + "description": "Base class for backup items.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectedItem" + } + ], + "properties": { + "friendlyName": { + "description": "Friendly name of the container.", + "type": "string" + }, + "policyState": { + "description": "Indicates consistency of policy object and policy applied to this backup item.", + "type": "string" + }, + "protectionState": { + "description": "Backup state of this backup item.", + "enum": [ + "Invalid", + "IRPending", + "Protected", + "ProtectionError", + "ProtectionStopped", + "ProtectionPaused" + ], + "type": "string", + "x-ms-enum": { + "name": "ProtectionState", + "modelAsString": true + } + }, + "protectedItemId": { + "format": "int64", + "description": "Data Plane Service ID of the protected item.", + "type": "integer" + }, + "sourceAssociations": { + "description": "Loosely coupled (type, value) associations (example - parent of a protected item)", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "fabricName": { + "description": "Name of this backup item's fabric.", + "type": "string" + } + }, + "x-ms-discriminator-value": "GenericProtectedItem" + }, + "GenericRecoveryPoint": { + "description": "Generic backup copy.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RecoveryPoint" + } + ], + "properties": { + "friendlyName": { + "description": "Friendly name of the backup copy.", + "type": "string" + }, + "recoveryPointType": { + "description": "Type of the backup copy.", + "type": "string" + }, + "recoveryPointTime": { + "format": "date-time", + "description": "Time at which this backup copy was created.", + "type": "string" + }, + "recoveryPointAdditionalInfo": { + "description": "Additional information associated with this backup copy.", + "type": "string" + } + }, + "x-ms-discriminator-value": "GenericRecoveryPoint" + }, + "GetProtectedItemQueryObject": { + "description": "Filters to list backup items.", + "type": "object", + "properties": { + "expand": { + "description": "Specifies if the additional information should be provided for this item.", + "type": "string" + } + } + }, + "IaasVMRecoveryPoint": { + "description": "IaaS VM workload specific backup copy.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RecoveryPoint" + } + ], + "properties": { + "recoveryPointType": { + "description": "Type of the backup copy.", + "type": "string" + }, + "recoveryPointTime": { + "format": "date-time", + "description": "Time at which this backup copy was created.", + "type": "string" + }, + "recoveryPointAdditionalInfo": { + "description": "Additional information associated with this backup copy.", + "type": "string" + }, + "sourceVMStorageType": { + "description": "Storage type of the VM whose backup copy is created.", + "type": "string" + }, + "isSourceVMEncrypted": { + "description": "Identifies whether the VM was encrypted when the backup copy is created.", + "type": "boolean" + }, + "keyAndSecret": { + "$ref": "#/definitions/KeyAndSecretDetails", + "description": "Required details for recovering an encrypted VM. Applicable only when IsSourceVMEncrypted is true." + }, + "isInstantIlrSessionActive": { + "description": "Is the session to recover items from this backup copy still active.", + "type": "boolean" + }, + "recoveryPointTierDetails": { + "description": "Recovery point tier information.", + "type": "array", + "items": { + "$ref": "#/definitions/RecoveryPointTierInformation" + } + }, + "isManagedVirtualMachine": { + "description": "Whether VM is with Managed Disks", + "type": "boolean" + }, + "virtualMachineSize": { + "description": "Virtual Machine Size", + "type": "string" + }, + "originalStorageAccountOption": { + "description": "Original Storage Account Option", + "type": "boolean" + }, + "osType": { + "description": "OS type", + "type": "string" + }, + "recoveryPointDiskConfiguration": { + "$ref": "#/definitions/RecoveryPointDiskConfiguration", + "description": "Disk configuration" + }, + "zones": { + "description": "Identifies the zone of the VM at the time of backup. Applicable only for zone-pinned Vms", + "type": "array", + "items": { + "type": "string" + } + }, + "recoveryPointMoveReadinessInfo": { + "description": "Eligibility of RP to be moved to another tier", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/RecoveryPointMoveReadinessInfo" + } + } + }, + "x-ms-discriminator-value": "IaasVMRecoveryPoint" + }, + "IaasVMRestoreRequest": { + "description": "IaaS VM workload-specific restore.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RestoreRequest" + } + ], + "properties": { + "recoveryPointId": { + "description": "ID of the backup copy to be recovered.", + "type": "string" + }, + "recoveryType": { + "description": "Type of this recovery.", + "enum": [ + "Invalid", + "OriginalLocation", + "AlternateLocation", + "RestoreDisks", + "Offline" + ], + "type": "string", + "x-ms-enum": { + "name": "RecoveryType", + "modelAsString": true + } + }, + "sourceResourceId": { + "description": "Fully qualified ARM ID of the VM which is being recovered.", + "type": "string" + }, + "targetVirtualMachineId": { + "description": "This is the complete ARM Id of the VM that will be created.\r\nFor e.g. /subscriptions/{subId}/resourcegroups/{rg}/provider/Microsoft.Compute/virtualmachines/{vm}", + "type": "string" + }, + "targetResourceGroupId": { + "description": "This is the ARM Id of the resource group that you want to create for this Virtual machine and other artifacts.\r\nFor e.g. /subscriptions/{subId}/resourcegroups/{rg}", + "type": "string" + }, + "storageAccountId": { + "description": "Fully qualified ARM ID of the storage account to which the VM has to be restored.", + "type": "string" + }, + "virtualNetworkId": { + "description": "This is the virtual network Id of the vnet that will be attached to the virtual machine.\r\nUser will be validated for join action permissions in the linked access.", + "type": "string" + }, + "subnetId": { + "description": "Subnet ID, is the subnet ID associated with the to be restored VM. For Classic VMs it would be\r\n{VnetID}/Subnet/{SubnetName} and, for the Azure Resource Manager VMs it would be ARM resource ID used to represent\r\nthe subnet.", + "type": "string" + }, + "targetDomainNameId": { + "description": "Fully qualified ARM ID of the domain name to be associated to the VM being restored. This applies only to Classic\r\nVirtual Machines.", + "type": "string" + }, + "region": { + "description": "Region in which the virtual machine is restored.", + "type": "string" + }, + "affinityGroup": { + "description": "Affinity group associated to VM to be restored. Used only for Classic Compute Virtual Machines.", + "type": "string" + }, + "createNewCloudService": { + "description": "Should a new cloud service be created while restoring the VM. If this is false, VM will be restored to the same\r\ncloud service as it was at the time of backup.", + "type": "boolean" + }, + "originalStorageAccountOption": { + "description": "Original Storage Account Option", + "type": "boolean" + }, + "encryptionDetails": { + "$ref": "#/definitions/EncryptionDetails", + "description": "Details needed if the VM was encrypted at the time of backup." + }, + "restoreDiskLunList": { + "description": "List of Disk LUNs for partial restore", + "type": "array", + "items": { + "format": "int32", + "type": "integer" + } + }, + "restoreWithManagedDisks": { + "description": "Flag to denote of an Unmanaged disk VM should be restored with Managed disks.", + "type": "boolean" + }, + "diskEncryptionSetId": { + "description": "DiskEncryptionSet's ID - needed if the VM needs to be encrypted at rest during restore with customer managed key.", + "type": "string" + }, + "zones": { + "description": "Target zone where the VM and its disks should be restored.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "x-ms-discriminator-value": "IaasVMRestoreRequest" + }, + "Job": { + "description": "Defines workload agnostic properties for a job.", + "required": [ + "jobType" + ], + "type": "object", + "properties": { + "entityFriendlyName": { + "description": "Friendly name of the entity on which the current job is executing.", + "type": "string" + }, + "backupManagementType": { + "description": "Backup management type to execute the current job.", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureBackupServer", + "AzureSql", + "AzureStorage", + "AzureWorkload", + "DefaultBackup" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupManagementType", + "modelAsString": true + } + }, + "operation": { + "description": "The operation name.", + "type": "string" + }, + "status": { + "description": "Job status.", + "type": "string" + }, + "startTime": { + "format": "date-time", + "description": "The start time.", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "The end time.", + "type": "string" + }, + "activityId": { + "description": "ActivityId of job.", + "type": "string" + }, + "jobType": { + "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.", + "type": "string" + } + }, + "discriminator": "jobType" + }, + "JobQueryObject": { + "description": "Filters to list the jobs.", + "type": "object", + "properties": { + "status": { + "description": "Status of the job.", + "enum": [ + "Invalid", + "InProgress", + "Completed", + "Failed", + "CompletedWithWarnings", + "Cancelled", + "Cancelling" + ], + "type": "string", + "x-ms-enum": { + "name": "JobStatus", + "modelAsString": true + } + }, + "backupManagementType": { + "description": "Type of backup management for the job.", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureBackupServer", + "AzureSql", + "AzureStorage", + "AzureWorkload", + "DefaultBackup" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupManagementType", + "modelAsString": true + } + }, + "operation": { + "description": "Type of operation.", + "enum": [ + "Invalid", + "Register", + "UnRegister", + "ConfigureBackup", + "Backup", + "Restore", + "DisableBackup", + "DeleteBackupData", + "CrossRegionRestore", + "Undelete", + "UpdateCustomerManagedKey" + ], + "type": "string", + "x-ms-enum": { + "name": "JobOperationType", + "modelAsString": true + } + }, + "jobId": { + "description": "JobID represents the job uniquely.", + "type": "string" + }, + "startTime": { + "format": "date-time", + "description": "Job has started at this time. Value is in UTC.", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "Job has ended at this time. Value is in UTC.", + "type": "string" + } + } + }, + "JobResource": { + "description": "Defines workload agnostic properties for a job.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/Job", + "description": "JobResource properties" + } + } + }, + "JobResourceList": { + "description": "List of Job resources", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ResourceList" + } + ], + "properties": { + "value": { + "description": "List of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/JobResource" + } + } + } + }, + "KEKDetails": { + "description": "KEK is encryption key for BEK.", + "type": "object", + "properties": { + "keyUrl": { + "description": "Key is KEK.", + "type": "string" + }, + "keyVaultId": { + "description": "Key Vault ID where this Key is stored.", + "type": "string" + }, + "keyBackupData": { + "description": "KEK data.", + "type": "string" + } + } + }, + "KeyAndSecretDetails": { + "description": "BEK is bitlocker key.\r\nKEK is encryption key for BEK\r\nIf the VM was encrypted then we will store following details :\r\n1. Secret(BEK) - Url + Backup Data + vaultId.\r\n2. Key(KEK) - Url + Backup Data + vaultId.\r\n3. EncryptionMechanism\r\nBEK and KEK can potentially have different vault ids.", + "type": "object", + "properties": { + "kekDetails": { + "$ref": "#/definitions/KEKDetails", + "description": "KEK is encryption key for BEK." + }, + "bekDetails": { + "$ref": "#/definitions/BEKDetails", + "description": "BEK is bitlocker encryption key." + }, + "encryptionMechanism": { + "description": "Encryption mechanism: None/ SinglePass/ DoublePass", + "type": "string" + } + } + }, + "LogSchedulePolicy": { + "description": "Log policy schedule.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/SchedulePolicy" + } + ], + "properties": { + "scheduleFrequencyInMins": { + "format": "int32", + "description": "Frequency of the log schedule operation of this policy in minutes.", + "type": "integer" + } + }, + "x-ms-discriminator-value": "LogSchedulePolicy" + }, + "LongTermRetentionPolicy": { + "description": "Long term retention policy.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RetentionPolicy" + } + ], + "properties": { + "dailySchedule": { + "$ref": "#/definitions/DailyRetentionSchedule", + "description": "Daily retention schedule of the protection policy." + }, + "weeklySchedule": { + "$ref": "#/definitions/WeeklyRetentionSchedule", + "description": "Weekly retention schedule of the protection policy." + }, + "monthlySchedule": { + "$ref": "#/definitions/MonthlyRetentionSchedule", + "description": "Monthly retention schedule of the protection policy." + }, + "yearlySchedule": { + "$ref": "#/definitions/YearlyRetentionSchedule", + "description": "Yearly retention schedule of the protection policy." + } + }, + "x-ms-discriminator-value": "LongTermRetentionPolicy" + }, + "LongTermSchedulePolicy": { + "description": "Long term policy schedule.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/SchedulePolicy" + } + ], + "x-ms-discriminator-value": "LongTermSchedulePolicy" + }, + "MabErrorInfo": { + "description": "MAB workload-specific error information.", + "type": "object", + "properties": { + "errorString": { + "description": "Localized error string.", + "type": "string", + "readOnly": true + }, + "recommendations": { + "description": "List of localized recommendations.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + } + } + }, + "MabFileFolderProtectedItem": { + "description": "MAB workload-specific backup item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectedItem" + } + ], + "properties": { + "friendlyName": { + "description": "Friendly name of this backup item.", + "type": "string" + }, + "computerName": { + "description": "Name of the computer associated with this backup item.", + "type": "string" + }, + "lastBackupStatus": { + "description": "Status of last backup operation.", + "type": "string" + }, + "lastBackupTime": { + "format": "date-time", + "description": "Timestamp of the last backup operation on this backup item.", + "type": "string" + }, + "protectionState": { + "description": "Protected, ProtectionStopped, IRPending or ProtectionError", + "type": "string" + }, + "deferredDeleteSyncTimeInUTC": { + "format": "int64", + "description": "Sync time for deferred deletion in UTC", + "type": "integer" + }, + "extendedInfo": { + "$ref": "#/definitions/MabFileFolderProtectedItemExtendedInfo", + "description": "Additional information with this backup item." + } + }, + "x-ms-discriminator-value": "MabFileFolderProtectedItem" + }, + "MabFileFolderProtectedItemExtendedInfo": { + "description": "Additional information on the backed up item.", + "type": "object", + "properties": { + "lastRefreshedAt": { + "format": "date-time", + "description": "Last time when the agent data synced to service.", + "type": "string" + }, + "oldestRecoveryPoint": { + "format": "date-time", + "description": "The oldest backup copy available.", + "type": "string" + }, + "recoveryPointCount": { + "format": "int32", + "description": "Number of backup copies associated with the backup item.", + "type": "integer" + } + } + }, + "MabJob": { + "description": "MAB workload-specific job.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Job" + } + ], + "properties": { + "duration": { + "format": "duration", + "description": "Time taken by job to run.", + "type": "string" + }, + "actionsInfo": { + "description": "The state/actions applicable on jobs like cancel/retry.", + "type": "array", + "items": { + "enum": [ + "Invalid", + "Cancellable", + "Retriable" + ], + "type": "string", + "x-ms-enum": { + "name": "JobSupportedAction", + "modelAsString": false + } + } + }, + "mabServerName": { + "description": "Name of server protecting the DS.", + "type": "string" + }, + "mabServerType": { + "description": "Server type of MAB container.", + "enum": [ + "Invalid", + "Unknown", + "IaasVMContainer", + "IaasVMServiceContainer", + "DPMContainer", + "AzureBackupServerContainer", + "MABContainer", + "Cluster", + "AzureSqlContainer", + "Windows", + "VCenter", + "VMAppContainer", + "SQLAGWorkLoadContainer", + "StorageContainer", + "GenericContainer" + ], + "type": "string", + "x-ms-enum": { + "name": "MabServerType", + "modelAsString": true + } + }, + "workloadType": { + "description": "Workload type of backup item.", + "enum": [ + "Invalid", + "VM", + "FileFolder", + "AzureSqlDb", + "SQLDB", + "Exchange", + "Sharepoint", + "VMwareVM", + "SystemState", + "Client", + "GenericDataSource", + "SQLDataBase", + "AzureFileShare", + "SAPHanaDatabase", + "SAPAseDatabase" + ], + "type": "string", + "x-ms-enum": { + "name": "WorkloadType", + "modelAsString": true + } + }, + "errorDetails": { + "description": "The errors.", + "type": "array", + "items": { + "$ref": "#/definitions/MabErrorInfo" + } + }, + "extendedInfo": { + "$ref": "#/definitions/MabJobExtendedInfo", + "description": "Additional information on the job." + } + }, + "x-ms-discriminator-value": "MabJob" + }, + "MabJobExtendedInfo": { + "description": "Additional information for the MAB workload-specific job.", + "type": "object", + "properties": { + "tasksList": { + "description": "List of tasks for this job.", + "type": "array", + "items": { + "$ref": "#/definitions/MabJobTaskDetails" + } + }, + "propertyBag": { + "description": "The job properties.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "dynamicErrorMessage": { + "description": "Non localized error message specific to this job.", + "type": "string" + } + } + }, + "MabJobTaskDetails": { + "description": "MAB workload-specific job task details.", + "type": "object", + "properties": { + "taskId": { + "description": "The task display name.", + "type": "string" + }, + "startTime": { + "format": "date-time", + "description": "The start time.", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "The end time.", + "type": "string" + }, + "duration": { + "format": "duration", + "description": "Time elapsed for task.", + "type": "string" + }, + "status": { + "description": "The status.", + "type": "string" + } + } + }, + "MabProtectionPolicy": { + "description": "Mab container-specific backup policy.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionPolicy" + } + ], + "properties": { + "schedulePolicy": { + "$ref": "#/definitions/SchedulePolicy", + "description": "Backup schedule of backup policy." + }, + "retentionPolicy": { + "$ref": "#/definitions/RetentionPolicy", + "description": "Retention policy details." + } + }, + "x-ms-discriminator-value": "MAB" + }, + "MonthlyRetentionSchedule": { + "description": "Monthly retention schedule.", + "type": "object", + "properties": { + "retentionScheduleFormatType": { + "description": "Retention schedule format type for monthly retention policy.", + "enum": [ + "Invalid", + "Daily", + "Weekly" + ], + "type": "string", + "x-ms-enum": { + "name": "RetentionScheduleFormat", + "modelAsString": true + } + }, + "retentionScheduleDaily": { + "$ref": "#/definitions/DailyRetentionFormat", + "description": "Daily retention format for monthly retention policy." + }, + "retentionScheduleWeekly": { + "$ref": "#/definitions/WeeklyRetentionFormat", + "description": "Weekly retention format for monthly retention policy." + }, + "retentionTimes": { + "description": "Retention times of retention policy.", + "type": "array", + "items": { + "format": "date-time", + "type": "string" + } + }, + "retentionDuration": { + "$ref": "#/definitions/RetentionDuration", + "description": "Retention duration of retention Policy." + } + } + }, + "OperationResultInfo": { + "description": "Operation result info.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/OperationResultInfoBase" + } + ], + "properties": { + "jobList": { + "description": "List of jobs created by this operation.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "x-ms-discriminator-value": "OperationResultInfo" + }, + "OperationResultInfoBase": { + "description": "Base class for operation result info.", + "required": [ + "objectType" + ], + "type": "object", + "properties": { + "objectType": { + "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.", + "type": "string" + } + }, + "discriminator": "objectType" + }, + "KPIResourceHealthDetails": { + "description": "KPI Resource Health Details", + "type": "object", + "properties": { + "resourceHealthStatus": { + "description": "Resource Health Status", + "enum": [ + "Healthy", + "TransientDegraded", + "PersistentDegraded", + "TransientUnhealthy", + "PersistentUnhealthy", + "Invalid" + ], + "type": "string", + "x-ms-enum": { + "name": "ResourceHealthStatus", + "modelAsString": true + } + }, + "resourceHealthDetails": { + "description": "Resource Health Status", + "type": "array", + "items": { + "$ref": "#/definitions/ResourceHealthDetails" + } + } + } + }, + "PrepareDataMoveRequest": { + "description": "Prepare DataMove Request", + "required": [ + "targetResourceId", + "targetRegion", + "dataMoveLevel" + ], + "type": "object", + "properties": { + "targetResourceId": { + "description": "ARM Id of target vault", + "type": "string" + }, + "targetRegion": { + "description": "Target Region", + "type": "string" + }, + "dataMoveLevel": { + "description": "DataMove Level", + "enum": [ + "Invalid", + "Vault", + "Container" + ], + "type": "string", + "x-ms-enum": { + "name": "DataMoveLevel", + "modelAsString": true + } + }, + "sourceContainerArmIds": { + "description": "Source Container ArmIds\r\nThis needs to be populated only if DataMoveLevel is set to container", + "type": "array", + "items": { + "type": "string" + } + }, + "ignoreMoved": { + "description": "Ignore the artifacts which are already moved.", + "type": "boolean" + } + } + }, + "PrepareDataMoveResponse": { + "description": "Prepare DataMove Response", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/VaultStorageConfigOperationResultResponse" + } + ], + "properties": { + "correlationId": { + "description": "Co-relationId for move operation", + "type": "string" + }, + "sourceVaultProperties": { + "description": "Source Vault Properties", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "x-ms-discriminator-value": "PrepareDataMoveResponse" + }, + "VaultStorageConfigOperationResultResponse": { + "description": "Operation result response for Vault Storage Config", + "required": [ + "objectType" + ], + "type": "object", + "properties": { + "objectType": { + "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.", + "type": "string" + } + }, + "discriminator": "objectType" + }, + "TriggerDataMoveRequest": { + "description": "Trigger DataMove Request", + "required": [ + "sourceResourceId", + "sourceRegion", + "dataMoveLevel", + "correlationId" + ], + "type": "object", + "properties": { + "sourceResourceId": { + "description": "ARM Id of source vault", + "type": "string" + }, + "sourceRegion": { + "description": "Source Region", + "type": "string" + }, + "dataMoveLevel": { + "description": "DataMove Level", + "enum": [ + "Invalid", + "Vault", + "Container" + ], + "type": "string", + "x-ms-enum": { + "name": "DataMoveLevel", + "modelAsString": true + } + }, + "correlationId": { + "description": "Correlation Id", + "type": "string" + }, + "sourceContainerArmIds": { + "description": "Source Container ArmIds", + "type": "array", + "items": { + "type": "string" + } + }, + "pauseGC": { + "description": "Pause GC", + "type": "boolean" + } + } + }, + "OperationResultInfoBaseResource": { + "description": "Base class for operation result info.", + "allOf": [ + { + "$ref": "#/definitions/OperationWorkerResponse" + } + ], + "properties": { + "operation": { + "$ref": "#/definitions/OperationResultInfoBase", + "description": "OperationResultInfoBaseResource operation" + } + } + }, + "OperationWorkerResponse": { + "description": "This is the base class for operation result responses.", + "type": "object", + "properties": { + "statusCode": { + "description": "HTTP Status Code of the operation.", + "enum": [ + "Continue", + "SwitchingProtocols", + "OK", + "Created", + "Accepted", + "NonAuthoritativeInformation", + "NoContent", + "ResetContent", + "PartialContent", + "MultipleChoices", + "Ambiguous", + "MovedPermanently", + "Moved", + "Found", + "Redirect", + "SeeOther", + "RedirectMethod", + "NotModified", + "UseProxy", + "Unused", + "TemporaryRedirect", + "RedirectKeepVerb", + "BadRequest", + "Unauthorized", + "PaymentRequired", + "Forbidden", + "NotFound", + "MethodNotAllowed", + "NotAcceptable", + "ProxyAuthenticationRequired", + "RequestTimeout", + "Conflict", + "Gone", + "LengthRequired", + "PreconditionFailed", + "RequestEntityTooLarge", + "RequestUriTooLong", + "UnsupportedMediaType", + "RequestedRangeNotSatisfiable", + "ExpectationFailed", + "UpgradeRequired", + "InternalServerError", + "NotImplemented", + "BadGateway", + "ServiceUnavailable", + "GatewayTimeout", + "HttpVersionNotSupported" + ], + "type": "string", + "x-ms-enum": { + "name": "HttpStatusCode", + "modelAsString": false + } + }, + "headers": { + "description": "HTTP headers associated with this operation.", + "type": "object", + "additionalProperties": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + }, + "PointInTimeRange": { + "description": "Provides details for log ranges", + "type": "object", + "properties": { + "startTime": { + "format": "date-time", + "description": "Start time of the time range for log recovery.", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "End time of the time range for log recovery.", + "type": "string" + } + } + }, + "ProtectedItem": { + "description": "Base class for backup items.", + "required": [ + "protectedItemType" + ], + "type": "object", + "properties": { + "protectedItemType": { + "description": "backup item type.", + "type": "string" + }, + "backupManagementType": { + "description": "Type of backup management for the backed up item.", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureBackupServer", + "AzureSql", + "AzureStorage", + "AzureWorkload", + "DefaultBackup" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupManagementType", + "modelAsString": true + } + }, + "workloadType": { + "description": "Type of workload this item represents.", + "enum": [ + "Invalid", + "VM", + "FileFolder", + "AzureSqlDb", + "SQLDB", + "Exchange", + "Sharepoint", + "VMwareVM", + "SystemState", + "Client", + "GenericDataSource", + "SQLDataBase", + "AzureFileShare", + "SAPHanaDatabase", + "SAPAseDatabase" + ], + "type": "string", + "x-ms-enum": { + "name": "DataSourceType", + "modelAsString": true + } + }, + "containerName": { + "description": "Unique name of container", + "type": "string" + }, + "sourceResourceId": { + "description": "ARM ID of the resource to be backed up.", + "type": "string" + }, + "policyId": { + "description": "ID of the backup policy with which this item is backed up.", + "type": "string" + }, + "lastRecoveryPoint": { + "format": "date-time", + "description": "Timestamp when the last (latest) backup copy was created for this backup item.", + "type": "string" + }, + "backupSetName": { + "description": "Name of the backup set the backup item belongs to", + "type": "string" + }, + "createMode": { + "description": "Create mode to indicate recovery of existing soft deleted data source or creation of new data source.", + "enum": [ + "Invalid", + "Default", + "Recover" + ], + "type": "string", + "x-ms-enum": { + "name": "CreateMode", + "modelAsString": true + } + }, + "deferredDeleteTimeInUTC": { + "format": "date-time", + "description": "Time for deferred deletion in UTC", + "type": "string" + }, + "isScheduledForDeferredDelete": { + "description": "Flag to identify whether the DS is scheduled for deferred delete", + "type": "boolean" + }, + "deferredDeleteTimeRemaining": { + "description": "Time remaining before the DS marked for deferred delete is permanently deleted", + "type": "string" + }, + "isDeferredDeleteScheduleUpcoming": { + "description": "Flag to identify whether the deferred deleted DS is to be purged soon", + "type": "boolean" + }, + "isRehydrate": { + "description": "Flag to identify that deferred deleted DS is to be moved into Pause state", + "type": "boolean" + } + }, + "discriminator": "protectedItemType" + }, + "ProtectedItemQueryObject": { + "description": "Filters to list backup items.", + "type": "object", + "properties": { + "healthState": { + "description": "Health State for the backed up item.", + "enum": [ + "Passed", + "ActionRequired", + "ActionSuggested", + "Invalid" + ], + "type": "string", + "x-ms-enum": { + "name": "HealthState", + "modelAsString": true + } + }, + "backupManagementType": { + "description": "Backup management type for the backed up item.", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureBackupServer", + "AzureSql", + "AzureStorage", + "AzureWorkload", + "DefaultBackup" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupManagementType", + "modelAsString": true + } + }, + "itemType": { + "description": "Type of workload this item represents.", + "enum": [ + "Invalid", + "VM", + "FileFolder", + "AzureSqlDb", + "SQLDB", + "Exchange", + "Sharepoint", + "VMwareVM", + "SystemState", + "Client", + "GenericDataSource", + "SQLDataBase", + "AzureFileShare", + "SAPHanaDatabase", + "SAPAseDatabase" + ], + "type": "string", + "x-ms-enum": { + "name": "DataSourceType", + "modelAsString": true + } + }, + "policyName": { + "description": "Backup policy name associated with the backup item.", + "type": "string" + }, + "containerName": { + "description": "Name of the container.", + "type": "string" + }, + "backupEngineName": { + "description": "Backup Engine name", + "type": "string" + }, + "friendlyName": { + "description": "Friendly name of protected item", + "type": "string" + }, + "fabricName": { + "description": "Name of the fabric.", + "type": "string" + }, + "backupSetName": { + "description": "Name of the backup set.", + "type": "string" + } + } + }, + "ProtectedItemResource": { + "description": "Base class for backup items.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ProtectedItem", + "description": "ProtectedItemResource properties" + } + } + }, + "ProtectedItemResourceList": { + "description": "List of ProtectedItem resources", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ResourceList" + } + ], + "properties": { + "value": { + "description": "List of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/ProtectedItemResource" + } + } + } + }, + "ProtectionPolicy": { + "description": "Base class for backup policy. Workload-specific backup policies are derived from this class.", + "required": [ + "backupManagementType" + ], + "type": "object", + "properties": { + "protectedItemsCount": { + "format": "int32", + "description": "Number of items associated with this policy.", + "type": "integer" + }, + "backupManagementType": { + "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.", + "type": "string" + } + }, + "discriminator": "backupManagementType" + }, + "ProtectionPolicyQueryObject": { + "description": "Filters the list backup policies API.", + "type": "object", + "properties": { + "backupManagementType": { + "description": "Backup management type for the backup policy.", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureBackupServer", + "AzureSql", + "AzureStorage", + "AzureWorkload", + "DefaultBackup" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupManagementType", + "modelAsString": true + } + }, + "fabricName": { + "description": "Fabric name for filter", + "type": "string" + }, + "workloadType": { + "description": "Workload type for the backup policy.", + "enum": [ + "Invalid", + "VM", + "FileFolder", + "AzureSqlDb", + "SQLDB", + "Exchange", + "Sharepoint", + "VMwareVM", + "SystemState", + "Client", + "GenericDataSource", + "SQLDataBase", + "AzureFileShare", + "SAPHanaDatabase", + "SAPAseDatabase" + ], + "type": "string", + "x-ms-enum": { + "name": "WorkloadType", + "modelAsString": true + } + } + } + }, + "ProtectionPolicyResource": { + "description": "Base class for backup policy. Workload-specific backup policies are derived from this class.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ProtectionPolicy", + "description": "ProtectionPolicyResource properties" + } + } + }, + "ProtectionPolicyResourceList": { + "description": "List of ProtectionPolicy resources", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ResourceList" + } + ], + "properties": { + "value": { + "description": "List of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/ProtectionPolicyResource" + } + } + } + }, + "RecoveryPoint": { + "description": "Base class for backup copies. Workload-specific backup copies are derived from this class.", + "required": [ + "objectType" + ], + "type": "object", + "properties": { + "objectType": { + "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.", + "type": "string" + } + }, + "discriminator": "objectType" + }, + "RecoveryPointDiskConfiguration": { + "description": "Disk configuration", + "type": "object", + "properties": { + "numberOfDisksIncludedInBackup": { + "format": "int32", + "description": "Number of disks included in backup", + "type": "integer" + }, + "numberOfDisksAttachedToVm": { + "format": "int32", + "description": "Number of disks attached to the VM", + "type": "integer" + }, + "includedDiskList": { + "description": "Information of disks included in backup", + "type": "array", + "items": { + "$ref": "#/definitions/DiskInformation" + } + }, + "excludedDiskList": { + "description": "Information of disks excluded from backup", + "type": "array", + "items": { + "$ref": "#/definitions/DiskInformation" + } + } + } + }, + "RecoveryPointResource": { + "description": "Base class for backup copies. Workload-specific backup copies are derived from this class.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/RecoveryPoint", + "description": "RecoveryPointResource properties" + } + } + }, + "RecoveryPointResourceList": { + "description": "List of RecoveryPoint resources", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ResourceList" + } + ], + "properties": { + "value": { + "description": "List of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/RecoveryPointResource" + } + } + } + }, + "RecoveryPointTierInformation": { + "description": "Recovery point tier information.", + "type": "object", + "properties": { + "type": { + "description": "Recovery point tier type.", + "enum": [ + "Invalid", + "InstantRP", + "HardenedRP", + "ArchivedRP" + ], + "type": "string", + "x-ms-enum": { + "name": "RecoveryPointTierType", + "modelAsString": false + } + }, + "status": { + "description": "Recovery point tier status.", + "enum": [ + "Invalid", + "Valid", + "Disabled", + "Deleted", + "Rehydrated" + ], + "type": "string", + "x-ms-enum": { + "name": "RecoveryPointTierStatus", + "modelAsString": false + } + }, + "extendedInfo": { + "description": "Recovery point tier status.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "Resource": { + "description": "ARM Resource.", + "type": "object", + "properties": { + "id": { + "description": "Resource Id represents the complete path to the resource.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Resource name associated with the resource.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Resource type represents the complete path of the form Namespace/ResourceType/ResourceType/...", + "type": "string", + "readOnly": true + }, + "location": { + "description": "Resource location.", + "type": "string" + }, + "tags": { + "description": "Resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "eTag": { + "description": "Optional ETag.", + "type": "string" + } + }, + "x-ms-azure-resource": true + }, + "ResourceList": { + "description": "Base for all lists of resources.", + "type": "object", + "properties": { + "nextLink": { + "description": "The uri to fetch the next page of resources. Call ListNext() fetches next page of resources.", + "type": "string" + } + } + }, + "RestoreFileSpecs": { + "description": "Restore file specs like file path, type and target folder path info.", + "type": "object", + "properties": { + "path": { + "description": "Source File/Folder path", + "type": "string" + }, + "fileSpecType": { + "description": "Indicates what the Path variable stands for", + "type": "string" + }, + "targetFolderPath": { + "description": "Destination folder path in target FileShare", + "type": "string" + } + } + }, + "RestoreRequest": { + "description": "Base class for restore request. Workload-specific restore requests are derived from this class.", + "required": [ + "objectType" + ], + "type": "object", + "properties": { + "objectType": { + "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.", + "type": "string" + } + }, + "discriminator": "objectType" + }, + "RestoreRequestResource": { + "description": "Base class for restore request. Workload-specific restore requests are derived from this class.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/RestoreRequest", + "description": "RestoreRequestResource properties" + } + } + }, + "RetentionDuration": { + "description": "Retention duration.", + "type": "object", + "properties": { + "count": { + "format": "int32", + "description": "Count of duration types. Retention duration is obtained by the counting the duration type Count times.\r\nFor example, when Count = 3 and DurationType = Weeks, retention duration will be three weeks.", + "type": "integer" + }, + "durationType": { + "description": "Retention duration type of retention policy.", + "enum": [ + "Invalid", + "Days", + "Weeks", + "Months", + "Years" + ], + "type": "string", + "x-ms-enum": { + "name": "RetentionDurationType", + "modelAsString": true + } + } + } + }, + "RetentionPolicy": { + "description": "Base class for retention policy.", + "required": [ + "retentionPolicyType" + ], + "type": "object", + "properties": { + "retentionPolicyType": { + "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.", + "type": "string" + } + }, + "discriminator": "retentionPolicyType" + }, + "SchedulePolicy": { + "description": "Base class for backup schedule.", + "required": [ + "schedulePolicyType" + ], + "type": "object", + "properties": { + "schedulePolicyType": { + "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.", + "type": "string" + } + }, + "discriminator": "schedulePolicyType" + }, + "Settings": { + "description": "Common settings field for backup management", + "type": "object", + "properties": { + "timeZone": { + "description": "TimeZone optional input as string. For example: TimeZone = \"Pacific Standard Time\".", + "type": "string" + }, + "issqlcompression": { + "description": "SQL compression flag", + "type": "boolean" + }, + "isCompression": { + "description": "Workload compression flag. This has been added so that 'isSqlCompression'\r\nwill be deprecated once clients upgrade to consider this flag.", + "type": "boolean" + } + } + }, + "SimpleRetentionPolicy": { + "description": "Simple policy retention.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RetentionPolicy" + } + ], + "properties": { + "retentionDuration": { + "$ref": "#/definitions/RetentionDuration", + "description": "Retention duration of the protection policy." + } + }, + "x-ms-discriminator-value": "SimpleRetentionPolicy" + }, + "SimpleSchedulePolicy": { + "description": "Simple policy schedule.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/SchedulePolicy" + } + ], + "properties": { + "scheduleRunFrequency": { + "description": "Frequency of the schedule operation of this policy.", + "enum": [ + "Invalid", + "Daily", + "Weekly" + ], + "type": "string", + "x-ms-enum": { + "name": "ScheduleRunType", + "modelAsString": true + } + }, + "scheduleRunDays": { + "description": "List of days of week this schedule has to be run.", + "type": "array", + "items": { + "enum": [ + "Sunday", + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday" + ], + "type": "string", + "x-ms-enum": { + "name": "DayOfWeek", + "modelAsString": false + } + } + }, + "scheduleRunTimes": { + "description": "List of times of day this schedule has to be run.", + "type": "array", + "items": { + "format": "date-time", + "type": "string" + } + }, + "scheduleWeeklyFrequency": { + "format": "int32", + "description": "At every number weeks this schedule has to be run.", + "type": "integer" + } + }, + "x-ms-discriminator-value": "SimpleSchedulePolicy" + }, + "SubProtectionPolicy": { + "description": "Sub-protection policy which includes schedule and retention", + "type": "object", + "properties": { + "policyType": { + "description": "Type of backup policy type", + "enum": [ + "Invalid", + "Full", + "Differential", + "Log", + "CopyOnlyFull", + "Incremental" + ], + "type": "string", + "x-ms-enum": { + "name": "PolicyType", + "modelAsString": true + } + }, + "schedulePolicy": { + "$ref": "#/definitions/SchedulePolicy", + "description": "Backup schedule specified as part of backup policy." + }, + "retentionPolicy": { + "$ref": "#/definitions/RetentionPolicy", + "description": "Retention policy with the details on backup copy retention ranges." + } + } + }, + "SQLDataDirectory": { + "description": "SQLDataDirectory info", + "type": "object", + "properties": { + "type": { + "description": "Type of data directory mapping", + "enum": [ + "Invalid", + "Data", + "Log" + ], + "type": "string", + "x-ms-enum": { + "name": "SQLDataDirectoryType", + "modelAsString": true + } + }, + "path": { + "description": "File path", + "type": "string" + }, + "logicalName": { + "description": "Logical name of the file", + "type": "string" + } + } + }, + "SQLDataDirectoryMapping": { + "description": "Encapsulates information regarding data directory", + "type": "object", + "properties": { + "mappingType": { + "description": "Type of data directory mapping", + "enum": [ + "Invalid", + "Data", + "Log" + ], + "type": "string", + "x-ms-enum": { + "name": "SQLDataDirectoryType", + "modelAsString": true + } + }, + "sourceLogicalName": { + "description": "Restore source logical name path", + "type": "string" + }, + "sourcePath": { + "description": "Restore source path", + "type": "string" + }, + "targetPath": { + "description": "Target path", + "type": "string" + } + } + }, + "TargetAFSRestoreInfo": { + "description": "Target Azure File Share Info.", + "type": "object", + "properties": { + "name": { + "description": "File share name", + "type": "string" + }, + "targetResourceId": { + "description": "Target file share resource ARM ID", + "type": "string" + } + } + }, + "TargetRestoreInfo": { + "description": "Details about target workload during restore operation.", + "type": "object", + "properties": { + "overwriteOption": { + "description": "Can Overwrite if Target DataBase already exists", + "enum": [ + "Invalid", + "FailOnConflict", + "Overwrite" + ], + "type": "string", + "x-ms-enum": { + "name": "OverwriteOptions", + "modelAsString": true + } + }, + "containerId": { + "description": "Resource Id name of the container in which Target DataBase resides", + "type": "string" + }, + "databaseName": { + "description": "Database name InstanceName/DataBaseName for SQL or System/DbName for SAP Hana", + "type": "string" + }, + "targetDirectoryForFileRestore": { + "description": "Target directory location for restore as files.", + "type": "string" + } + } + }, + "ValidateIaasVMRestoreOperationRequest": { + "description": "AzureRestoreValidation request.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ValidateRestoreOperationRequest" + } + ], + "x-ms-discriminator-value": "ValidateIaasVMRestoreOperationRequest" + }, + "ValidateOperationRequest": { + "description": "Base class for validate operation request.", + "required": [ + "objectType" + ], + "type": "object", + "properties": { + "objectType": { + "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.", + "type": "string" + } + }, + "discriminator": "objectType" + }, + "ValidateOperationResponse": { + "description": "Base class for validate operation response.", + "type": "object", + "properties": { + "validationResults": { + "description": "Gets the validation result", + "type": "array", + "items": { + "$ref": "#/definitions/ErrorDetail" + } + } + } + }, + "ValidateOperationsResponse": { + "type": "object", + "properties": { + "validateOperationResponse": { + "$ref": "#/definitions/ValidateOperationResponse" + } + } + }, + "ValidateRestoreOperationRequest": { + "description": "AzureRestoreValidation request.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ValidateOperationRequest" + } + ], + "properties": { + "restoreRequest": { + "$ref": "#/definitions/RestoreRequest", + "description": "Sets restore request to be validated" + } + }, + "x-ms-discriminator-value": "ValidateRestoreOperationRequest" + }, + "WeeklyRetentionFormat": { + "description": "Weekly retention format.", + "type": "object", + "properties": { + "daysOfTheWeek": { + "description": "List of days of the week.", + "type": "array", + "items": { + "enum": [ + "Sunday", + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday" + ], + "type": "string", + "x-ms-enum": { + "name": "DayOfWeek", + "modelAsString": false + } + } + }, + "weeksOfTheMonth": { + "description": "List of weeks of month.", + "type": "array", + "items": { + "enum": [ + "First", + "Second", + "Third", + "Fourth", + "Last", + "Invalid" + ], + "type": "string", + "x-ms-enum": { + "name": "WeekOfMonth", + "modelAsString": false + } + } + } + } + }, + "WeeklyRetentionSchedule": { + "description": "Weekly retention schedule.", + "type": "object", + "properties": { + "daysOfTheWeek": { + "description": "List of days of week for weekly retention policy.", + "type": "array", + "items": { + "enum": [ + "Sunday", + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday" + ], + "type": "string", + "x-ms-enum": { + "name": "DayOfWeek", + "modelAsString": false + } + } + }, + "retentionTimes": { + "description": "Retention times of retention policy.", + "type": "array", + "items": { + "format": "date-time", + "type": "string" + } + }, + "retentionDuration": { + "$ref": "#/definitions/RetentionDuration", + "description": "Retention duration of retention Policy." + } + } + }, + "BackupResourceVaultConfigResource": { + "description": "Backup resource vault config details.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/BackupResourceVaultConfig", + "description": "BackupResourceVaultConfigResource properties" + } + } + }, + "BackupResourceVaultConfig": { + "description": "Backup resource vault config details.", + "type": "object", + "properties": { + "storageModelType": { + "description": "Storage type.", + "enum": [ + "Invalid", + "GeoRedundant", + "LocallyRedundant", + "ZoneRedundant", + "ReadAccessGeoZoneRedundant" + ], + "type": "string", + "x-ms-enum": { + "name": "StorageType", + "modelAsString": true + } + }, + "storageType": { + "description": "Storage type.", + "enum": [ + "Invalid", + "GeoRedundant", + "LocallyRedundant", + "ZoneRedundant", + "ReadAccessGeoZoneRedundant" + ], + "type": "string", + "x-ms-enum": { + "name": "StorageType", + "modelAsString": true + } + }, + "storageTypeState": { + "description": "Locked or Unlocked. Once a machine is registered against a resource, the storageTypeState is always Locked.", + "enum": [ + "Invalid", + "Locked", + "Unlocked" + ], + "type": "string", + "x-ms-enum": { + "name": "StorageTypeState", + "modelAsString": true + } + }, + "enhancedSecurityState": { + "description": "Enabled or Disabled.", + "enum": [ + "Invalid", + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "EnhancedSecurityState", + "modelAsString": true + } + }, + "softDeleteFeatureState": { + "description": "Soft Delete feature state", + "enum": [ + "Invalid", + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "SoftDeleteFeatureState", + "modelAsString": true + } + } + } + }, + "YearlyRetentionSchedule": { + "description": "Yearly retention schedule.", + "type": "object", + "properties": { + "retentionScheduleFormatType": { + "description": "Retention schedule format for yearly retention policy.", + "enum": [ + "Invalid", + "Daily", + "Weekly" + ], + "type": "string", + "x-ms-enum": { + "name": "RetentionScheduleFormat", + "modelAsString": true + } + }, + "monthsOfYear": { + "description": "List of months of year of yearly retention policy.", + "type": "array", + "items": { + "enum": [ + "Invalid", + "January", + "February", + "March", + "April", + "May", + "June", + "July", + "August", + "September", + "October", + "November", + "December" + ], + "type": "string", + "x-ms-enum": { + "name": "MonthOfYear", + "modelAsString": false + } + } + }, + "retentionScheduleDaily": { + "$ref": "#/definitions/DailyRetentionFormat", + "description": "Daily retention format for yearly retention policy." + }, + "retentionScheduleWeekly": { + "$ref": "#/definitions/WeeklyRetentionFormat", + "description": "Weekly retention format for yearly retention policy." + }, + "retentionTimes": { + "description": "Retention times of retention policy.", + "type": "array", + "items": { + "format": "date-time", + "type": "string" + } + }, + "retentionDuration": { + "$ref": "#/definitions/RetentionDuration", + "description": "Retention duration of retention Policy." + } + } + }, + "VaultJob": { + "description": "Vault level Job", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Job" + } + ], + "properties": { + "duration": { + "format": "duration", + "description": "Time elapsed during the execution of this job.", + "type": "string" + }, + "actionsInfo": { + "description": "Gets or sets the state/actions applicable on this job like cancel/retry.", + "type": "array", + "items": { + "enum": [ + "Invalid", + "Cancellable", + "Retriable" + ], + "type": "string", + "x-ms-enum": { + "name": "JobSupportedAction", + "modelAsString": false + } + } + }, + "errorDetails": { + "description": "Error details on execution of this job.", + "type": "array", + "items": { + "$ref": "#/definitions/VaultJobErrorInfo" + } + }, + "extendedInfo": { + "$ref": "#/definitions/VaultJobExtendedInfo", + "description": "Additional information about the job." + } + }, + "x-ms-discriminator-value": "VaultJob" + }, + "VaultJobErrorInfo": { + "description": "Vault Job specific error information", + "type": "object", + "properties": { + "errorCode": { + "format": "int32", + "description": "Error code.", + "type": "integer" + }, + "errorString": { + "description": "Localized error string.", + "type": "string" + }, + "recommendations": { + "description": "List of localized recommendations for above error code.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "VaultJobExtendedInfo": { + "description": "Vault Job for CMK - has CMK specific info.", + "type": "object", + "properties": { + "propertyBag": { + "description": "Job properties.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "AzureBackupServerContainer": { + "description": "AzureBackupServer (DPMVenus) workload-specific protection container.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DpmContainer" + } + ], + "x-ms-discriminator-value": "AzureBackupServerContainer" + }, + "AzureBackupServerEngine": { + "description": "Backup engine type when Azure Backup Server is used to manage the backups.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/BackupEngineBase" + } + ], + "x-ms-discriminator-value": "AzureBackupServerEngine" + }, + "AzureFileShareBackupRequest": { + "description": "AzureFileShare workload-specific backup request.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/BackupRequest" + } + ], + "properties": { + "recoveryPointExpiryTimeInUTC": { + "format": "date-time", + "description": "Backup copy will expire after the time specified (UTC).", + "type": "string" + } + }, + "x-ms-discriminator-value": "AzureFileShareBackupRequest" + }, + "AzureFileShareProtectableItem": { + "description": "Protectable item for Azure Fileshare workloads.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/WorkloadProtectableItem" + } + ], + "properties": { + "parentContainerFabricId": { + "description": "Full Fabric ID of container to which this protectable item belongs. For example, ARM ID.", + "type": "string" + }, + "parentContainerFriendlyName": { + "description": "Friendly name of container to which this protectable item belongs.", + "type": "string" + }, + "azureFileShareType": { + "description": "File Share type XSync or XSMB.", + "enum": [ + "Invalid", + "XSMB", + "XSync" + ], + "type": "string", + "x-ms-enum": { + "name": "AzureFileShareType", + "modelAsString": true + } + } + }, + "x-ms-discriminator-value": "AzureFileShare" + }, + "AzureFileShareProvisionILRRequest": { + "description": "Update snapshot Uri with the correct friendly Name of the source Azure file share.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ILRRequest" + } + ], + "properties": { + "recoveryPointId": { + "description": "Recovery point ID.", + "type": "string" + }, + "sourceResourceId": { + "description": "Source Storage account ARM Id", + "type": "string" + } + }, + "x-ms-discriminator-value": "AzureFileShareProvisionILRRequest" + }, + "AzureIaaSClassicComputeVMContainer": { + "description": "IaaS VM workload-specific backup item representing a classic virtual machine.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/IaaSVMContainer" + } + ], + "x-ms-discriminator-value": "Microsoft.ClassicCompute/virtualMachines" + }, + "AzureIaaSClassicComputeVMProtectableItem": { + "description": "IaaS VM workload-specific backup item representing the Classic Compute VM.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/IaaSVMProtectableItem" + } + ], + "x-ms-discriminator-value": "Microsoft.ClassicCompute/virtualMachines" + }, + "AzureIaaSComputeVMContainer": { + "description": "IaaS VM workload-specific backup item representing an Azure Resource Manager virtual machine.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/IaaSVMContainer" + } + ], + "x-ms-discriminator-value": "Microsoft.Compute/virtualMachines" + }, + "AzureIaaSComputeVMProtectableItem": { + "description": "IaaS VM workload-specific backup item representing the Azure Resource Manager VM.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/IaaSVMProtectableItem" + } + ], + "x-ms-discriminator-value": "Microsoft.Compute/virtualMachines" + }, + "AzureSQLAGWorkloadContainerProtectionContainer": { + "description": "Container for SQL workloads under SQL Availability Group.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadContainer" + } + ], + "x-ms-discriminator-value": "SQLAGWorkLoadContainer" + }, + "AzureSqlContainer": { + "description": "Azure Sql workload-specific container.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionContainer" + } + ], + "x-ms-discriminator-value": "AzureSqlContainer" + }, + "AzureStorageContainer": { + "description": "Azure Storage Account workload-specific container.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionContainer" + } + ], + "properties": { + "sourceResourceId": { + "description": "Fully qualified ARM url.", + "type": "string" + }, + "storageAccountVersion": { + "description": "Storage account version.", + "type": "string" + }, + "resourceGroup": { + "description": "Resource group name of Recovery Services Vault.", + "type": "string" + }, + "protectedItemCount": { + "format": "int64", + "description": "Number of items backed up in this container.", + "type": "integer" + } + }, + "x-ms-discriminator-value": "StorageContainer" + }, + "AzureStorageProtectableContainer": { + "description": "Azure Storage-specific protectable containers", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectableContainer" + } + ], + "x-ms-discriminator-value": "StorageContainer" + }, + "AzureVMAppContainerProtectableContainer": { + "description": "Azure workload-specific container", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectableContainer" + } + ], + "x-ms-discriminator-value": "VMAppContainer" + }, + "AzureVMAppContainerProtectionContainer": { + "description": "Container for SQL workloads under Azure Virtual Machines.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadContainer" + } + ], + "x-ms-discriminator-value": "VMAppContainer" + }, + "AzureVmWorkloadItem": { + "description": "Azure VM workload-specific workload item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/WorkloadItem" + } + ], + "properties": { + "parentName": { + "description": "Name for instance or AG", + "type": "string" + }, + "serverName": { + "description": "Host/Cluster Name for instance or AG", + "type": "string" + }, + "isAutoProtectable": { + "description": "Indicates if workload item is auto-protectable", + "type": "boolean" + }, + "subinquireditemcount": { + "format": "int32", + "description": "For instance or AG, indicates number of DB's present", + "type": "integer" + }, + "subWorkloadItemCount": { + "format": "int32", + "description": "For instance or AG, indicates number of DB's to be protected", + "type": "integer" + } + }, + "x-ms-discriminator-value": "AzureVmWorkloadItem" + }, + "AzureVmWorkloadProtectableItem": { + "description": "Azure VM workload-specific protectable item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/WorkloadProtectableItem" + } + ], + "properties": { + "parentName": { + "description": "Name for instance or AG", + "type": "string" + }, + "parentUniqueName": { + "description": "Parent Unique Name is added to provide the service formatted URI Name of the Parent\r\nOnly Applicable for data bases where the parent would be either Instance or a SQL AG.", + "type": "string" + }, + "serverName": { + "description": "Host/Cluster Name for instance or AG", + "type": "string" + }, + "isAutoProtectable": { + "description": "Indicates if protectable item is auto-protectable", + "type": "boolean" + }, + "isAutoProtected": { + "description": "Indicates if protectable item is auto-protected", + "type": "boolean" + }, + "subinquireditemcount": { + "format": "int32", + "description": "For instance or AG, indicates number of DB's present", + "type": "integer" + }, + "subprotectableitemcount": { + "format": "int32", + "description": "For instance or AG, indicates number of DB's to be protected", + "type": "integer" + }, + "prebackupvalidation": { + "$ref": "#/definitions/PreBackupValidation", + "description": "Pre-backup validation for protectable objects" + } + }, + "x-ms-discriminator-value": "AzureVmWorkloadProtectableItem" + }, + "AzureVmWorkloadSAPAseDatabaseWorkloadItem": { + "description": "Azure VM workload-specific workload item representing SAP ASE Database.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureVmWorkloadItem" + } + ], + "x-ms-discriminator-value": "SAPAseDatabase" + }, + "AzureVmWorkloadSAPAseSystemProtectableItem": { + "description": "Azure VM workload-specific protectable item representing SAP ASE System.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureVmWorkloadProtectableItem" + } + ], + "x-ms-discriminator-value": "SAPAseSystem" + }, + "AzureVmWorkloadSAPAseSystemWorkloadItem": { + "description": "Azure VM workload-specific workload item representing SAP ASE System.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureVmWorkloadItem" + } + ], + "x-ms-discriminator-value": "SAPAseSystem" + }, + "AzureVmWorkloadSAPHanaDatabaseProtectableItem": { + "description": "Azure VM workload-specific protectable item representing SAP HANA Database.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureVmWorkloadProtectableItem" + } + ], + "x-ms-discriminator-value": "SAPHanaDatabase" + }, + "AzureVmWorkloadSAPHanaDatabaseWorkloadItem": { + "description": "Azure VM workload-specific workload item representing SAP HANA Database.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureVmWorkloadItem" + } + ], + "x-ms-discriminator-value": "SAPHanaDatabase" + }, + "AzureVmWorkloadSAPHanaSystemProtectableItem": { + "description": "Azure VM workload-specific protectable item representing SAP HANA System.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureVmWorkloadProtectableItem" + } + ], + "x-ms-discriminator-value": "SAPHanaSystem" + }, + "AzureVmWorkloadSAPHanaSystemWorkloadItem": { + "description": "Azure VM workload-specific workload item representing SAP HANA System.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureVmWorkloadItem" + } + ], + "x-ms-discriminator-value": "SAPHanaSystem" + }, + "AzureVmWorkloadSQLAvailabilityGroupProtectableItem": { + "description": "Azure VM workload-specific protectable item representing SQL Availability Group.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureVmWorkloadProtectableItem" + } + ], + "x-ms-discriminator-value": "SQLAvailabilityGroupContainer" + }, + "AzureVmWorkloadSQLDatabaseProtectableItem": { + "description": "Azure VM workload-specific protectable item representing SQL Database.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureVmWorkloadProtectableItem" + } + ], + "x-ms-discriminator-value": "SQLDataBase" + }, + "AzureVmWorkloadSQLDatabaseWorkloadItem": { + "description": "Azure VM workload-specific workload item representing SQL Database.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureVmWorkloadItem" + } + ], + "x-ms-discriminator-value": "SQLDataBase" + }, + "AzureVmWorkloadSQLInstanceProtectableItem": { + "description": "Azure VM workload-specific protectable item representing SQL Instance.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureVmWorkloadProtectableItem" + } + ], + "x-ms-discriminator-value": "SQLInstance" + }, + "AzureVmWorkloadSQLInstanceWorkloadItem": { + "description": "Azure VM workload-specific workload item representing SQL Instance.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureVmWorkloadItem" + } + ], + "properties": { + "dataDirectoryPaths": { + "description": "Data Directory Paths for default directories", + "type": "array", + "items": { + "$ref": "#/definitions/SQLDataDirectory" + } + } + }, + "x-ms-discriminator-value": "SQLInstance" + }, + "AzureWorkloadBackupRequest": { + "description": "AzureWorkload workload-specific backup request.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/BackupRequest" + } + ], + "properties": { + "backupType": { + "description": "Type of backup, viz. Full, Differential, Log or CopyOnlyFull", + "enum": [ + "Invalid", + "Full", + "Differential", + "Log", + "CopyOnlyFull", + "Incremental" + ], + "type": "string", + "x-ms-enum": { + "name": "backupType", + "modelAsString": true + } + }, + "enableCompression": { + "description": "Bool for Compression setting", + "type": "boolean" + }, + "recoveryPointExpiryTimeInUTC": { + "format": "date-time", + "description": "Backup copy will expire after the time specified (UTC).", + "type": "string" + } + }, + "x-ms-discriminator-value": "AzureWorkloadBackupRequest" + }, + "AzureBackupGoalFeatureSupportRequest": { + "description": "Azure backup goal feature specific request.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/FeatureSupportRequest" + } + ], + "x-ms-discriminator-value": "AzureBackupGoals" + }, + "AzureRecoveryServiceVaultProtectionIntent": { + "description": "Azure Recovery Services Vault specific protection intent item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionIntent" + } + ], + "x-ms-discriminator-value": "RecoveryServiceVaultItem" + }, + "AzureResourceProtectionIntent": { + "description": "IaaS VM specific backup protection intent item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionIntent" + } + ], + "properties": { + "friendlyName": { + "description": "Friendly name of the VM represented by this backup item.", + "type": "string" + } + }, + "x-ms-discriminator-value": "AzureResourceItem" + }, + "AzureVMResourceFeatureSupportRequest": { + "description": "AzureResource(IaaS VM) Specific feature support request", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/FeatureSupportRequest" + } + ], + "properties": { + "vmSize": { + "description": "Size of the resource: VM size(A/D series etc) in case of IaasVM", + "type": "string" + }, + "vmSku": { + "description": "SKUs (Premium/Managed etc) in case of IaasVM", + "type": "string" + } + }, + "x-ms-discriminator-value": "AzureVMResourceBackup" + }, + "AzureVMResourceFeatureSupportResponse": { + "description": "Response for feature support requests for Azure IaasVm", + "type": "object", + "properties": { + "supportStatus": { + "description": "Support status of feature", + "enum": [ + "Invalid", + "Supported", + "DefaultOFF", + "DefaultON", + "NotSupported" + ], + "type": "string", + "x-ms-enum": { + "name": "SupportStatus", + "modelAsString": true + } + } + } + }, + "AzureWorkloadAutoProtectionIntent": { + "description": "Azure Recovery Services Vault specific protection intent item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureRecoveryServiceVaultProtectionIntent" + } + ], + "x-ms-discriminator-value": "AzureWorkloadAutoProtectionIntent" + }, + "AzureWorkloadSQLAutoProtectionIntent": { + "description": "Azure Workload SQL Auto Protection intent item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadAutoProtectionIntent" + } + ], + "properties": { + "workloadItemType": { + "description": "Workload item type of the item for which intent is to be set", + "enum": [ + "Invalid", + "SQLInstance", + "SQLDataBase", + "SAPHanaSystem", + "SAPHanaDatabase", + "SAPAseSystem", + "SAPAseDatabase" + ], + "type": "string", + "x-ms-enum": { + "name": "WorkloadItemType", + "modelAsString": true + } + } + }, + "x-ms-discriminator-value": "AzureWorkloadSQLAutoProtectionIntent" + }, + "BackupManagementUsage": { + "description": "Backup management usages of a vault.", + "type": "object", + "properties": { + "unit": { + "description": "Unit of the usage.", + "enum": [ + "Count", + "Bytes", + "Seconds", + "Percent", + "CountPerSecond", + "BytesPerSecond" + ], + "type": "string", + "x-ms-enum": { + "name": "UsagesUnit", + "modelAsString": true + } + }, + "quotaPeriod": { + "description": "Quota period of usage.", + "type": "string" + }, + "nextResetTime": { + "format": "date-time", + "description": "Next reset time of usage.", + "type": "string" + }, + "currentValue": { + "format": "int64", + "description": "Current value of usage.", + "type": "integer" + }, + "limit": { + "format": "int64", + "description": "Limit of usage.", + "type": "integer" + }, + "name": { + "$ref": "#/definitions/NameInfo", + "description": "Name of usage." + } + } + }, + "BackupManagementUsageList": { + "description": "Backup management usage for vault.", + "type": "object", + "properties": { + "value": { + "description": "The list of backup management usages for the given vault.", + "type": "array", + "items": { + "$ref": "#/definitions/BackupManagementUsage" + } + } + } + }, + "BackupStatusRequest": { + "description": "BackupStatus request.", + "type": "object", + "properties": { + "resourceType": { + "description": "Container Type - VM, SQLPaaS, DPM, AzureFileShare...", + "enum": [ + "Invalid", + "VM", + "FileFolder", + "AzureSqlDb", + "SQLDB", + "Exchange", + "Sharepoint", + "VMwareVM", + "SystemState", + "Client", + "GenericDataSource", + "SQLDataBase", + "AzureFileShare", + "SAPHanaDatabase", + "SAPAseDatabase" + ], + "type": "string", + "x-ms-enum": { + "name": "DataSourceType", + "modelAsString": true + } + }, + "resourceId": { + "description": "Entire ARM resource id of the resource", + "type": "string" + }, + "poLogicalName": { + "description": "Protectable Item Logical Name", + "type": "string" + } + } + }, + "BackupStatusResponse": { + "description": "BackupStatus response.", + "type": "object", + "properties": { + "protectionStatus": { + "description": "Specifies whether the container is registered or not", + "enum": [ + "Invalid", + "NotProtected", + "Protecting", + "Protected", + "ProtectionFailed" + ], + "type": "string", + "x-ms-enum": { + "name": "ProtectionStatus", + "modelAsString": true + } + }, + "vaultId": { + "description": "Specifies the arm resource id of the vault", + "type": "string" + }, + "fabricName": { + "description": "Specifies the fabric name - Azure or AD", + "enum": [ + "Invalid", + "Azure" + ], + "type": "string", + "x-ms-enum": { + "name": "FabricName", + "modelAsString": true + } + }, + "containerName": { + "description": "Specifies the product specific container name. E.g. iaasvmcontainer;iaasvmcontainer;csname;vmname.", + "type": "string" + }, + "protectedItemName": { + "description": "Specifies the product specific ds name. E.g. vm;iaasvmcontainer;csname;vmname.", + "type": "string" + }, + "errorCode": { + "description": "ErrorCode in case of intent failed", + "type": "string" + }, + "errorMessage": { + "description": "ErrorMessage in case of intent failed.", + "type": "string" + }, + "policyName": { + "description": "Specifies the policy name which is used for protection", + "type": "string" + }, + "registrationStatus": { + "description": "Container registration status", + "type": "string" + } + } + }, + "BMSBackupSummariesQueryObject": { + "description": "Query parameters to fetch backup summaries.", + "type": "object", + "properties": { + "type": { + "description": "Backup management type for this container.", + "enum": [ + "Invalid", + "BackupProtectedItemCountSummary", + "BackupProtectionContainerCountSummary" + ], + "type": "string", + "x-ms-enum": { + "name": "Type", + "modelAsString": true + } + } + } + }, + "FeatureSupportRequest": { + "description": "Base class for feature request", + "required": [ + "featureType" + ], + "type": "object", + "properties": { + "featureType": { + "description": "backup support feature type.", + "type": "string" + } + }, + "discriminator": "featureType" + }, + "NameInfo": { + "description": "The name of usage.", + "type": "object", + "properties": { + "value": { + "description": "Value of usage.", + "type": "string" + }, + "localizedValue": { + "description": "Localized value of usage.", + "type": "string" + } + } + }, + "PreValidateEnableBackupRequest": { + "description": "Contract to validate if backup can be enabled on the given resource in a given vault and given configuration.\r\nIt will validate followings\r\n1. Vault capacity\r\n2. VM is already protected\r\n3. Any VM related configuration passed in properties.", + "type": "object", + "properties": { + "resourceType": { + "description": "ProtectedItem Type- VM, SqlDataBase, AzureFileShare etc", + "enum": [ + "Invalid", + "VM", + "FileFolder", + "AzureSqlDb", + "SQLDB", + "Exchange", + "Sharepoint", + "VMwareVM", + "SystemState", + "Client", + "GenericDataSource", + "SQLDataBase", + "AzureFileShare", + "SAPHanaDatabase", + "SAPAseDatabase" + ], + "type": "string", + "x-ms-enum": { + "name": "DataSourceType", + "modelAsString": true + } + }, + "resourceId": { + "description": "ARM Virtual Machine Id", + "type": "string" + }, + "vaultId": { + "description": "ARM id of the Recovery Services Vault", + "type": "string" + }, + "properties": { + "description": "Configuration of VM if any needs to be validated like OS type etc", + "type": "string" + } + } + }, + "PreValidateEnableBackupResponse": { + "description": "Response contract for enable backup validation request", + "type": "object", + "properties": { + "status": { + "description": "Validation Status", + "enum": [ + "Invalid", + "Succeeded", + "Failed" + ], + "type": "string", + "x-ms-enum": { + "name": "ValidationStatus", + "modelAsString": true + } + }, + "errorCode": { + "description": "Response error code", + "type": "string" + }, + "errorMessage": { + "description": "Response error message", + "type": "string" + }, + "recommendation": { + "description": "Recommended action for user", + "type": "string" + }, + "containerName": { + "description": "Specifies the product specific container name. E.g. iaasvmcontainer;iaasvmcontainer;rgname;vmname. This is required\r\nfor portal", + "type": "string" + }, + "protectedItemName": { + "description": "Specifies the product specific ds name. E.g. vm;iaasvmcontainer;rgname;vmname. This is required for portal", + "type": "string" + } + } + }, + "ProtectionIntent": { + "description": "Base class for backup ProtectionIntent.", + "required": [ + "protectionIntentItemType" + ], + "type": "object", + "properties": { + "protectionIntentItemType": { + "description": "backup protectionIntent type.", + "type": "string" + }, + "backupManagementType": { + "description": "Type of backup management for the backed up item.", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureBackupServer", + "AzureSql", + "AzureStorage", + "AzureWorkload", + "DefaultBackup" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupManagementType", + "modelAsString": true + } + }, + "sourceResourceId": { + "description": "ARM ID of the resource to be backed up.", + "type": "string" + }, + "itemId": { + "description": "ID of the item which is getting protected, In case of Azure Vm , it is ProtectedItemId", + "type": "string" + }, + "policyId": { + "description": "ID of the backup policy with which this item is backed up.", + "type": "string" + }, + "protectionState": { + "description": "Backup state of this backup item.", + "enum": [ + "Invalid", + "NotProtected", + "Protecting", + "Protected", + "ProtectionFailed" + ], + "type": "string", + "x-ms-enum": { + "name": "ProtectionStatus", + "modelAsString": true + } + } + }, + "discriminator": "protectionIntentItemType" + }, + "ProtectionIntentQueryObject": { + "description": "Filters to list protection intent.", + "type": "object", + "properties": { + "backupManagementType": { + "description": "Backup management type for the backed up item", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureBackupServer", + "AzureSql", + "AzureStorage", + "AzureWorkload", + "DefaultBackup" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupManagementType", + "modelAsString": true + } + }, + "itemType": { + "description": "Type of workload this item represents", + "enum": [ + "Invalid", + "SQLInstance", + "SQLAvailabilityGroupContainer" + ], + "type": "string", + "x-ms-enum": { + "name": "IntentItemType", + "modelAsString": true + } + }, + "parentName": { + "description": "Parent name of the intent", + "type": "string" + }, + "itemName": { + "description": "Item name of the intent", + "type": "string" + } + } + }, + "ProtectionIntentResource": { + "description": "Base class for backup ProtectionIntent.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ProtectionIntent", + "description": "ProtectionIntentResource properties" + } + } + }, + "ProtectionIntentResourceList": { + "description": "List of ProtectionIntent resources", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ResourceList" + } + ], + "properties": { + "value": { + "description": "List of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/ProtectionIntentResource" + } + } + } + }, + "AzureWorkloadContainer": { + "description": "Container for the workloads running inside Azure Compute or Classic Compute.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionContainer" + } + ], + "properties": { + "sourceResourceId": { + "description": "ARM ID of the virtual machine represented by this Azure Workload Container", + "type": "string" + }, + "lastUpdatedTime": { + "format": "date-time", + "description": "Time stamp when this container was updated.", + "type": "string" + }, + "extendedInfo": { + "$ref": "#/definitions/AzureWorkloadContainerExtendedInfo", + "description": "Additional details of a workload container." + }, + "workloadType": { + "description": "Workload type for which registration was sent.", + "enum": [ + "Invalid", + "VM", + "FileFolder", + "AzureSqlDb", + "SQLDB", + "Exchange", + "Sharepoint", + "VMwareVM", + "SystemState", + "Client", + "GenericDataSource", + "SQLDataBase", + "AzureFileShare", + "SAPHanaDatabase", + "SAPAseDatabase" + ], + "type": "string", + "x-ms-enum": { + "name": "WorkloadType", + "modelAsString": true + } + }, + "operationType": { + "description": "Re-Do Operation", + "enum": [ + "Invalid", + "Register", + "Reregister" + ], + "type": "string", + "x-ms-enum": { + "name": "OperationType", + "modelAsString": true + } + } + }, + "x-ms-discriminator-value": "AzureWorkloadContainer" + }, + "AzureWorkloadContainerExtendedInfo": { + "description": "Extended information of the container.", + "type": "object", + "properties": { + "hostServerName": { + "description": "Host Os Name in case of Stand Alone and Cluster Name in case of distributed container.", + "type": "string" + }, + "inquiryInfo": { + "$ref": "#/definitions/InquiryInfo", + "description": "Inquiry Status for the container." + }, + "nodesList": { + "description": "List of the nodes in case of distributed container.", + "type": "array", + "items": { + "$ref": "#/definitions/DistributedNodesInfo" + } + } + } + }, + "BackupEngineBase": { + "description": "The base backup engine class. All workload specific backup engines derive from this class.", + "type": "object", + "required": [ + "backupEngineType" + ], + "properties": { + "friendlyName": { + "description": "Friendly name of the backup engine.", + "type": "string" + }, + "backupManagementType": { + "description": "Type of backup management for the backup engine.", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureBackupServer", + "AzureSql", + "AzureStorage", + "AzureWorkload", + "DefaultBackup" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupManagementType", + "modelAsString": true + } + }, + "registrationStatus": { + "description": "Registration status of the backup engine with the Recovery Services Vault.", + "type": "string" + }, + "backupEngineState": { + "description": "Status of the backup engine with the Recovery Services Vault. = {Active/Deleting/DeleteFailed}", + "type": "string" + }, + "healthStatus": { + "description": "Backup status of the backup engine.", + "type": "string" + }, + "backupEngineType": { + "description": "Type of the backup engine.", + "enum": [ + "Invalid", + "DpmBackupEngine", + "AzureBackupServerEngine" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupEngineType", + "modelAsString": true + } + }, + "canReRegister": { + "description": "Flag indicating if the backup engine be registered, once already registered.", + "type": "boolean" + }, + "backupEngineId": { + "description": "ID of the backup engine.", + "type": "string" + }, + "dpmVersion": { + "description": "Backup engine version", + "type": "string" + }, + "azureBackupAgentVersion": { + "description": "Backup agent version", + "type": "string" + }, + "isAzureBackupAgentUpgradeAvailable": { + "description": "To check if backup agent upgrade available", + "type": "boolean" + }, + "isDpmUpgradeAvailable": { + "description": "To check if backup engine upgrade available", + "type": "boolean" + }, + "extendedInfo": { + "$ref": "#/definitions/BackupEngineExtendedInfo", + "description": "Extended info of the backupengine" + } + }, + "discriminator": "backupEngineType" + }, + "BackupEngineBaseResource": { + "description": "The base backup engine class. All workload specific backup engines derive from this class.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/BackupEngineBase", + "description": "BackupEngineBaseResource properties" + } + } + }, + "BackupEngineBaseResourceList": { + "description": "List of BackupEngineBase resources", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ResourceList" + } + ], + "properties": { + "value": { + "description": "List of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/BackupEngineBaseResource" + } + } + } + }, + "BackupEngineExtendedInfo": { + "description": "Additional information on backup engine.", + "type": "object", + "properties": { + "databaseName": { + "description": "Database name of backup engine.", + "type": "string" + }, + "protectedItemsCount": { + "format": "int32", + "description": "Number of protected items in the backup engine.", + "type": "integer" + }, + "protectedServersCount": { + "format": "int32", + "description": "Number of protected servers in the backup engine.", + "type": "integer" + }, + "diskCount": { + "format": "int32", + "description": "Number of disks in the backup engine.", + "type": "integer" + }, + "usedDiskSpace": { + "format": "double", + "description": "Disk space used in the backup engine.", + "type": "number" + }, + "availableDiskSpace": { + "format": "double", + "description": "Disk space currently available in the backup engine.", + "type": "number" + }, + "refreshedAt": { + "format": "date-time", + "description": "Last refresh time in the backup engine.", + "type": "string" + }, + "azureProtectedInstances": { + "format": "int32", + "description": "Protected instances in the backup engine.", + "type": "integer" + } + } + }, + "BackupRequest": { + "description": "Base class for backup request. Workload-specific backup requests are derived from this class.", + "required": [ + "objectType" + ], + "type": "object", + "properties": { + "objectType": { + "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.", + "type": "string" + } + }, + "discriminator": "objectType" + }, + "BackupRequestResource": { + "description": "Base class for backup request. Workload-specific backup requests are derived from this class.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/BackupRequest", + "description": "BackupRequestResource properties" + } + } + }, + "BMSBackupEngineQueryObject": { + "description": "Query parameters to fetch list of backup engines.", + "type": "object", + "properties": { + "expand": { + "description": "attribute to add extended info", + "type": "string" + } + } + }, + "BMSBackupEnginesQueryObject": { + "description": "Query parameters to fetch list of backup engines.", + "type": "object", + "properties": { + "backupManagementType": { + "description": "Backup management type for the backup engine.", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureBackupServer", + "AzureSql", + "AzureStorage", + "AzureWorkload", + "DefaultBackup" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupManagementType", + "modelAsString": true + } + }, + "friendlyName": { + "description": "Friendly name of the backup engine.", + "type": "string" + }, + "expand": { + "description": "Attribute to add extended info.", + "type": "string" + } + } + }, + "BMSContainerQueryObject": { + "description": "The query filters that can be used with the list containers API.", + "required": [ + "backupManagementType" + ], + "type": "object", + "properties": { + "backupManagementType": { + "description": "Backup management type for this container.", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureBackupServer", + "AzureSql", + "AzureStorage", + "AzureWorkload", + "DefaultBackup" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupManagementType", + "modelAsString": true + } + }, + "containerType": { + "description": "Type of container for filter", + "enum": [ + "Invalid", + "Unknown", + "IaasVMContainer", + "IaasVMServiceContainer", + "DPMContainer", + "AzureBackupServerContainer", + "MABContainer", + "Cluster", + "AzureSqlContainer", + "Windows", + "VCenter", + "VMAppContainer", + "SQLAGWorkLoadContainer", + "StorageContainer", + "GenericContainer" + ], + "type": "string", + "x-ms-enum": { + "name": "ContainerType", + "modelAsString": true + } + }, + "backupEngineName": { + "description": "Backup engine name", + "type": "string" + }, + "fabricName": { + "description": "Fabric name for filter", + "type": "string" + }, + "status": { + "description": "Status of registration of this container with the Recovery Services Vault.", + "type": "string" + }, + "friendlyName": { + "description": "Friendly name of this container.", + "type": "string" + } + } + }, + "BMSContainersInquiryQueryObject": { + "description": "The query filters that can be used with the inquire container API.", + "type": "object", + "properties": { + "backupManagementType": { + "description": "Backup management type for this container.", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureBackupServer", + "AzureSql", + "AzureStorage", + "AzureWorkload", + "DefaultBackup" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupManagementType", + "modelAsString": true + } + }, + "workloadType": { + "description": "Workload type for this container.", + "enum": [ + "Invalid", + "VM", + "FileFolder", + "AzureSqlDb", + "SQLDB", + "Exchange", + "Sharepoint", + "VMwareVM", + "SystemState", + "Client", + "GenericDataSource", + "SQLDataBase", + "AzureFileShare", + "SAPHanaDatabase", + "SAPAseDatabase" + ], + "type": "string", + "x-ms-enum": { + "name": "WorkloadType", + "modelAsString": true + } + } + } + }, + "BMSPOQueryObject": { + "description": "Filters to list items that can be backed up.", + "type": "object", + "properties": { + "backupManagementType": { + "description": "Backup management type.", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureSql", + "AzureBackupServer", + "AzureWorkload", + "AzureStorage", + "DefaultBackup" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupManagementType", + "modelAsString": true + } + }, + "workloadType": { + "description": "Workload type", + "enum": [ + "Invalid", + "VM", + "FileFolder", + "AzureSqlDb", + "SQLDB", + "Exchange", + "Sharepoint", + "VMwareVM", + "SystemState", + "Client", + "GenericDataSource", + "SQLDataBase", + "AzureFileShare", + "SAPHanaDatabase", + "SAPAseDatabase" + ], + "type": "string", + "x-ms-enum": { + "name": "WorkloadType", + "modelAsString": true + } + }, + "containerName": { + "description": "Full name of the container whose Protectable Objects should be returned.", + "type": "string" + }, + "status": { + "description": "Backup status query parameter.", + "type": "string" + }, + "friendlyName": { + "description": "Friendly name.", + "type": "string" + } + } + }, + "BMSRefreshContainersQueryObject": { + "description": "The query filters that can be used with the refresh container API.", + "type": "object", + "properties": { + "backupManagementType": { + "description": "Backup management type for this container.", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureBackupServer", + "AzureSql", + "AzureStorage", + "AzureWorkload", + "DefaultBackup" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupManagementType", + "modelAsString": true + } + } + } + }, + "BMSWorkloadItemQueryObject": { + "description": "Filters to list items that can be backed up.", + "type": "object", + "properties": { + "backupManagementType": { + "description": "Backup management type.", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureSql", + "AzureBackupServer", + "AzureWorkload", + "AzureStorage", + "DefaultBackup" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupManagementType", + "modelAsString": true + } + }, + "workloadItemType": { + "description": "Workload Item type", + "enum": [ + "Invalid", + "SQLInstance", + "SQLDataBase", + "SAPHanaSystem", + "SAPHanaDatabase", + "SAPAseSystem", + "SAPAseDatabase" + ], + "type": "string", + "x-ms-enum": { + "name": "WorkloadItemType", + "modelAsString": true + } + }, + "workloadType": { + "description": "Workload type", + "enum": [ + "Invalid", + "VM", + "FileFolder", + "AzureSqlDb", + "SQLDB", + "Exchange", + "Sharepoint", + "VMwareVM", + "SystemState", + "Client", + "GenericDataSource", + "SQLDataBase", + "AzureFileShare", + "SAPHanaDatabase", + "SAPAseDatabase" + ], + "type": "string", + "x-ms-enum": { + "name": "WorkloadType", + "modelAsString": true + } + }, + "protectionStatus": { + "description": "Backup status query parameter.", + "enum": [ + "Invalid", + "NotProtected", + "Protecting", + "Protected", + "ProtectionFailed" + ], + "type": "string", + "x-ms-enum": { + "name": "ProtectionStatus", + "modelAsString": true + } + } + } + }, + "ClientScriptForConnect": { + "description": "Client script details for file / folder restore.", + "type": "object", + "properties": { + "scriptContent": { + "description": "File content of the client script for file / folder restore.", + "type": "string" + }, + "scriptExtension": { + "description": "File extension of the client script for file / folder restore - .ps1 , .sh , etc.", + "type": "string" + }, + "osType": { + "description": "OS type - Windows, Linux etc. for which this file / folder restore client script works.", + "type": "string" + }, + "url": { + "description": "URL of Executable from where to source the content. If this is not null then ScriptContent should not be used", + "type": "string" + }, + "scriptNameSuffix": { + "description": "Mandatory suffix that should be added to the name of script that is given for download to user.\r\nIf its null or empty then , ignore it.", + "type": "string" + } + } + }, + "ContainerIdentityInfo": { + "description": "Container identity information", + "type": "object", + "properties": { + "uniqueName": { + "description": "Unique name of the container", + "type": "string" + }, + "aadTenantId": { + "description": "Protection container identity - AAD Tenant", + "type": "string" + }, + "servicePrincipalClientId": { + "description": "Protection container identity - AAD Service Principal", + "type": "string" + }, + "audience": { + "description": "Protection container identity - Audience", + "type": "string" + } + } + }, + "DistributedNodesInfo": { + "description": "This is used to represent the various nodes of the distributed container.", + "type": "object", + "properties": { + "nodeName": { + "description": "Name of the node under a distributed container.", + "type": "string" + }, + "status": { + "description": "Status of this Node.\r\nFailed | Succeeded", + "type": "string" + }, + "errorDetail": { + "$ref": "#/definitions/ErrorDetail", + "description": "Error Details if the Status is non-success." + } + } + }, + "DpmBackupEngine": { + "description": "Data Protection Manager (DPM) specific backup engine.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/BackupEngineBase" + } + ], + "x-ms-discriminator-value": "DpmBackupEngine" + }, + "DpmContainer": { + "description": "DPM workload-specific protection container.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionContainer" + } + ], + "properties": { + "canReRegister": { + "description": "Specifies whether the container is re-registrable.", + "type": "boolean" + }, + "containerId": { + "description": "ID of container.", + "type": "string" + }, + "protectedItemCount": { + "format": "int64", + "description": "Number of protected items in the BackupEngine", + "type": "integer" + }, + "dpmAgentVersion": { + "description": "Backup engine Agent version", + "type": "string" + }, + "dpmServers": { + "description": "List of BackupEngines protecting the container", + "type": "array", + "items": { + "type": "string" + } + }, + "upgradeAvailable": { + "description": "To check if upgrade available", + "type": "boolean" + }, + "protectionStatus": { + "description": "Protection status of the container.", + "type": "string" + }, + "extendedInfo": { + "$ref": "#/definitions/DPMContainerExtendedInfo", + "description": "Extended Info of the container." + } + }, + "x-ms-discriminator-value": "DPMContainer" + }, + "DPMContainerExtendedInfo": { + "description": "Additional information of the DPMContainer.", + "type": "object", + "properties": { + "lastRefreshedAt": { + "format": "date-time", + "description": "Last refresh time of the DPMContainer.", + "type": "string" + } + } + }, + "GenericContainer": { + "description": "Base class for generic container of backup items", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionContainer" + } + ], + "properties": { + "fabricName": { + "description": "Name of the container's fabric", + "type": "string" + }, + "extendedInformation": { + "$ref": "#/definitions/GenericContainerExtendedInfo", + "description": "Extended information (not returned in List container API calls)" + } + }, + "x-ms-discriminator-value": "GenericContainer" + }, + "GenericContainerExtendedInfo": { + "description": "Container extended information", + "type": "object", + "properties": { + "rawCertData": { + "description": "Public key of container cert", + "type": "string" + }, + "containerIdentityInfo": { + "$ref": "#/definitions/ContainerIdentityInfo", + "description": "Container identity information" + }, + "serviceEndpoints": { + "description": "Azure Backup Service Endpoints for the container", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "IaasVMBackupRequest": { + "description": "IaaS VM workload-specific backup request.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/BackupRequest" + } + ], + "properties": { + "recoveryPointExpiryTimeInUTC": { + "format": "date-time", + "description": "Backup copy will expire after the time specified (UTC).", + "type": "string" + } + }, + "x-ms-discriminator-value": "IaasVMBackupRequest" + }, + "IaaSVMContainer": { + "description": "IaaS VM workload-specific container.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionContainer" + } + ], + "properties": { + "virtualMachineId": { + "description": "Fully qualified ARM url of the virtual machine represented by this Azure IaaS VM container.", + "type": "string" + }, + "virtualMachineVersion": { + "description": "Specifies whether the container represents a Classic or an Azure Resource Manager VM.", + "type": "string" + }, + "resourceGroup": { + "description": "Resource group name of Recovery Services Vault.", + "type": "string" + } + }, + "x-ms-discriminator-value": "IaaSVMContainer" + }, + "IaasVMILRRegistrationRequest": { + "description": "Restore files/folders from a backup copy of IaaS VM.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ILRRequest" + } + ], + "properties": { + "recoveryPointId": { + "description": "ID of the IaaS VM backup copy from where the files/folders have to be restored.", + "type": "string" + }, + "virtualMachineId": { + "description": "Fully qualified ARM ID of the virtual machine whose the files / folders have to be restored.", + "type": "string" + }, + "initiatorName": { + "description": "iSCSI initiator name.", + "type": "string" + }, + "renewExistingRegistration": { + "description": "Whether to renew existing registration with the iSCSI server.", + "type": "boolean" + } + }, + "x-ms-discriminator-value": "IaasVMILRRegistrationRequest" + }, + "IaaSVMProtectableItem": { + "description": "IaaS VM workload-specific backup item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/WorkloadProtectableItem" + } + ], + "properties": { + "virtualMachineId": { + "description": "Fully qualified ARM ID of the virtual machine.", + "type": "string" + } + }, + "x-ms-discriminator-value": "IaaSVMProtectableItem" + }, + "ILRRequest": { + "description": "Parameters to Provision ILR API.", + "required": [ + "objectType" + ], + "type": "object", + "properties": { + "objectType": { + "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.", + "type": "string" + } + }, + "discriminator": "objectType" + }, + "ILRRequestResource": { + "description": "Parameters to Provision ILR API.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ILRRequest", + "description": "ILRRequestResource properties" + } + } + }, + "InquiryInfo": { + "description": "Details about inquired protectable items under a given container.", + "type": "object", + "properties": { + "status": { + "description": "Inquiry Status for this container such as\r\nInProgress | Failed | Succeeded", + "type": "string" + }, + "errorDetail": { + "$ref": "#/definitions/ErrorDetail", + "description": "Error Details if the Status is non-success." + }, + "inquiryDetails": { + "description": "Inquiry Details which will have workload specific details.\r\nFor e.g. - For SQL and oracle this will contain different details.", + "type": "array", + "items": { + "$ref": "#/definitions/WorkloadInquiryDetails" + } + } + } + }, + "InquiryValidation": { + "description": "Validation for inquired protectable items under a given container.", + "type": "object", + "properties": { + "status": { + "description": "Status for the Inquiry Validation.", + "type": "string" + }, + "errorDetail": { + "$ref": "#/definitions/ErrorDetail", + "description": "Error Detail in case the status is non-success." + }, + "additionalDetail": { + "description": "Error Additional Detail in case the status is non-success.", + "type": "string", + "readOnly": true + } + } + }, + "InstantItemRecoveryTarget": { + "description": "Target details for file / folder restore.", + "type": "object", + "properties": { + "clientScripts": { + "description": "List of client scripts.", + "type": "array", + "items": { + "$ref": "#/definitions/ClientScriptForConnect" + } + } + } + }, + "MabContainer": { + "description": "Container with items backed up using MAB backup engine.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionContainer" + } + ], + "properties": { + "canReRegister": { + "description": "Can the container be registered one more time.", + "type": "boolean" + }, + "containerId": { + "format": "int64", + "description": "ContainerID represents the container.", + "type": "integer" + }, + "protectedItemCount": { + "format": "int64", + "description": "Number of items backed up in this container.", + "type": "integer" + }, + "agentVersion": { + "description": "Agent version of this container.", + "type": "string" + }, + "extendedInfo": { + "$ref": "#/definitions/MabContainerExtendedInfo", + "description": "Additional information for this container" + }, + "mabContainerHealthDetails": { + "description": "Health details on this mab container.", + "type": "array", + "items": { + "$ref": "#/definitions/MABContainerHealthDetails" + } + }, + "containerHealthState": { + "description": "Health state of mab container.", + "type": "string" + } + }, + "x-ms-discriminator-value": "Windows" + }, + "MabContainerExtendedInfo": { + "description": "Additional information of the container.", + "type": "object", + "properties": { + "lastRefreshedAt": { + "format": "date-time", + "description": "Time stamp when this container was refreshed.", + "type": "string" + }, + "backupItemType": { + "description": "Type of backup items associated with this container.", + "enum": [ + "Invalid", + "VM", + "FileFolder", + "AzureSqlDb", + "SQLDB", + "Exchange", + "Sharepoint", + "VMwareVM", + "SystemState", + "Client", + "GenericDataSource", + "SQLDataBase", + "AzureFileShare", + "SAPHanaDatabase", + "SAPAseDatabase" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupItemType", + "modelAsString": true + } + }, + "backupItems": { + "description": "List of backup items associated with this container.", + "type": "array", + "items": { + "type": "string" + } + }, + "policyName": { + "description": "Backup policy associated with this container.", + "type": "string" + }, + "lastBackupStatus": { + "description": "Latest backup status of this container.", + "type": "string" + } + } + }, + "MABContainerHealthDetails": { + "description": "MAB workload-specific Health Details.", + "type": "object", + "properties": { + "code": { + "format": "int32", + "description": "Health Code", + "type": "integer" + }, + "title": { + "description": "Health Title", + "type": "string" + }, + "message": { + "description": "Health Message", + "type": "string" + }, + "recommendations": { + "description": "Health Recommended Actions", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "OperationStatus": { + "description": "Operation status.", + "type": "object", + "properties": { + "id": { + "description": "ID of the operation.", + "type": "string" + }, + "name": { + "description": "Name of the operation.", + "type": "string" + }, + "status": { + "description": "Operation status.", + "enum": [ + "Invalid", + "InProgress", + "Succeeded", + "Failed", + "Canceled" + ], + "type": "string", + "x-ms-enum": { + "name": "OperationStatusValues", + "modelAsString": true + } + }, + "startTime": { + "format": "date-time", + "description": "Operation start time. Format: ISO-8601.", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "Operation end time. Format: ISO-8601.", + "type": "string" + }, + "error": { + "$ref": "#/definitions/OperationStatusError", + "description": "Error information related to this operation." + }, + "properties": { + "$ref": "#/definitions/OperationStatusExtendedInfo", + "description": "Additional information associated with this operation." + } + } + }, + "OperationStatusError": { + "description": "Error information associated with operation status call.", + "type": "object", + "properties": { + "code": { + "description": "Error code of the operation failure.", + "type": "string" + }, + "message": { + "description": "Error message displayed if the operation failure.", + "type": "string" + } + } + }, + "OperationStatusExtendedInfo": { + "description": "Base class for additional information of operation status.", + "required": [ + "objectType" + ], + "type": "object", + "properties": { + "objectType": { + "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.", + "type": "string" + } + }, + "discriminator": "objectType" + }, + "OperationStatusJobExtendedInfo": { + "description": "Operation status job extended info.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/OperationStatusExtendedInfo" + } + ], + "properties": { + "jobId": { + "description": "ID of the job created for this protected item.", + "type": "string" + } + }, + "x-ms-discriminator-value": "OperationStatusJobExtendedInfo" + }, + "OperationStatusJobsExtendedInfo": { + "description": "Operation status extended info for list of jobs.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/OperationStatusExtendedInfo" + } + ], + "properties": { + "jobIds": { + "description": "IDs of the jobs created for the protected item.", + "type": "array", + "items": { + "type": "string" + } + }, + "failedJobsError": { + "description": "Stores all the failed jobs along with the corresponding error codes.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "x-ms-discriminator-value": "OperationStatusJobsExtendedInfo" + }, + "OperationStatusProvisionILRExtendedInfo": { + "description": "Operation status extended info for ILR provision action.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/OperationStatusExtendedInfo" + } + ], + "properties": { + "recoveryTarget": { + "$ref": "#/definitions/InstantItemRecoveryTarget", + "description": "Target details for file / folder restore." + } + }, + "x-ms-discriminator-value": "OperationStatusProvisionILRExtendedInfo" + }, + "PreBackupValidation": { + "description": "Pre-backup validation for Azure VM Workload provider.", + "type": "object", + "properties": { + "status": { + "description": "Status of protectable item, i.e. InProgress,Succeeded,Failed", + "enum": [ + "Invalid", + "Success", + "Failed" + ], + "type": "string", + "x-ms-enum": { + "name": "InquiryStatus", + "modelAsString": true + } + }, + "code": { + "description": "Error code of protectable item", + "type": "string" + }, + "message": { + "description": "Message corresponding to the error code for the protectable item", + "type": "string" + } + } + }, + "ProtectableContainer": { + "description": "Protectable Container Class.", + "type": "object", + "required": [ + "protectableContainerType" + ], + "properties": { + "friendlyName": { + "description": "Friendly name of the container.", + "type": "string" + }, + "backupManagementType": { + "description": "Type of backup management for the container.", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureBackupServer", + "AzureSql", + "AzureStorage", + "AzureWorkload", + "DefaultBackup" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupManagementType", + "modelAsString": true + } + }, + "protectableContainerType": { + "description": "Type of the container. The value of this property for\r\n1. Compute Azure VM is Microsoft.Compute/virtualMachines\r\n2. Classic Compute Azure VM is Microsoft.ClassicCompute/virtualMachines", + "enum": [ + "Invalid", + "Unknown", + "IaasVMContainer", + "IaasVMServiceContainer", + "DPMContainer", + "AzureBackupServerContainer", + "MABContainer", + "Cluster", + "AzureSqlContainer", + "Windows", + "VCenter", + "VMAppContainer", + "SQLAGWorkLoadContainer", + "StorageContainer", + "GenericContainer" + ], + "type": "string", + "readOnly": false, + "x-ms-enum": { + "name": "ContainerType", + "modelAsString": false + } + }, + "healthStatus": { + "description": "Status of health of the container.", + "type": "string" + }, + "containerId": { + "description": "Fabric Id of the container such as ARM Id.", + "type": "string" + } + }, + "discriminator": "protectableContainerType" + }, + "ProtectableContainerResource": { + "description": "Protectable Container Class.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ProtectableContainer", + "description": "ProtectableContainerResource properties" + } + } + }, + "ProtectableContainerResourceList": { + "description": "List of ProtectableContainer resources", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ResourceList" + } + ], + "properties": { + "value": { + "description": "List of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/ProtectableContainerResource" + } + } + } + }, + "ProtectionContainer": { + "description": "Base class for container with backup items. Containers with specific workloads are derived from this class.", + "type": "object", + "required": [ + "containerType" + ], + "properties": { + "friendlyName": { + "description": "Friendly name of the container.", + "type": "string" + }, + "backupManagementType": { + "description": "Type of backup management for the container.", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureBackupServer", + "AzureSql", + "AzureStorage", + "AzureWorkload", + "DefaultBackup" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupManagementType", + "modelAsString": true + } + }, + "registrationStatus": { + "description": "Status of registration of the container with the Recovery Services Vault.", + "type": "string" + }, + "healthStatus": { + "description": "Status of health of the container.", + "type": "string" + }, + "containerType": { + "description": "Type of the container. The value of this property for: 1. Compute Azure VM is Microsoft.Compute/virtualMachines 2.\r\nClassic Compute Azure VM is Microsoft.ClassicCompute/virtualMachines 3. Windows machines (like MAB, DPM etc) is\r\nWindows 4. Azure SQL instance is AzureSqlContainer. 5. Storage containers is StorageContainer. 6. Azure workload\r\nBackup is VMAppContainer", + "enum": [ + "Invalid", + "Unknown", + "IaasVMContainer", + "IaasVMServiceContainer", + "DPMContainer", + "AzureBackupServerContainer", + "MABContainer", + "Cluster", + "AzureSqlContainer", + "Windows", + "VCenter", + "VMAppContainer", + "SQLAGWorkLoadContainer", + "StorageContainer", + "GenericContainer" + ], + "type": "string", + "x-ms-enum": { + "name": "ContainerType", + "modelAsString": true + } + } + }, + "discriminator": "containerType" + }, + "ProtectionContainerResource": { + "description": "Base class for container with backup items. Containers with specific workloads are derived from this class.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ProtectionContainer", + "description": "ProtectionContainerResource properties" + } + } + }, + "ProtectionContainerResourceList": { + "description": "List of ProtectionContainer resources", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ResourceList" + } + ], + "properties": { + "value": { + "description": "List of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/ProtectionContainerResource" + } + } + } + }, + "TokenInformation": { + "description": "The token information details.", + "type": "object", + "properties": { + "token": { + "description": "Token value.", + "type": "string" + }, + "expiryTimeInUtcTicks": { + "format": "int64", + "description": "Expiry time of token.", + "type": "integer" + }, + "securityPIN": { + "description": "Security PIN", + "type": "string" + } + } + }, + "WorkloadInquiryDetails": { + "description": "Details of an inquired protectable item.", + "type": "object", + "properties": { + "type": { + "description": "Type of the Workload such as SQL, Oracle etc.", + "type": "string" + }, + "itemCount": { + "format": "int64", + "description": "Contains the protectable item Count inside this Container.", + "type": "integer" + }, + "inquiryValidation": { + "$ref": "#/definitions/InquiryValidation", + "description": "Inquiry validation such as permissions and other backup validations." + } + } + }, + "WorkloadItem": { + "description": "Base class for backup item. Workload-specific backup items are derived from this class.", + "type": "object", + "required": [ + "workloadItemType" + ], + "properties": { + "backupManagementType": { + "description": "Type of backup management to backup an item.", + "type": "string" + }, + "workloadType": { + "description": "Type of workload for the backup management", + "type": "string" + }, + "workloadItemType": { + "description": "Type of the backup item.", + "type": "string" + }, + "friendlyName": { + "description": "Friendly name of the backup item.", + "type": "string" + }, + "protectionState": { + "description": "State of the back up item.", + "enum": [ + "Invalid", + "NotProtected", + "Protecting", + "Protected", + "ProtectionFailed" + ], + "type": "string", + "x-ms-enum": { + "name": "ProtectionStatus", + "modelAsString": true + } + } + }, + "discriminator": "workloadItemType" + }, + "WorkloadItemResource": { + "description": "Base class for backup item. Workload-specific backup items are derived from this class.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/WorkloadItem", + "description": "WorkloadItemResource properties" + } + } + }, + "WorkloadItemResourceList": { + "description": "List of WorkloadItem resources", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ResourceList" + } + ], + "properties": { + "value": { + "description": "List of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/WorkloadItemResource" + } + } + } + }, + "WorkloadProtectableItem": { + "description": "Base class for backup item. Workload-specific backup items are derived from this class.", + "type": "object", + "required": [ + "protectableItemType" + ], + "properties": { + "backupManagementType": { + "description": "Type of backup management to backup an item.", + "type": "string" + }, + "workloadType": { + "description": "Type of workload for the backup management", + "type": "string" + }, + "protectableItemType": { + "description": "Type of the backup item.", + "type": "string" + }, + "friendlyName": { + "description": "Friendly name of the backup item.", + "type": "string" + }, + "protectionState": { + "description": "State of the back up item.", + "enum": [ + "Invalid", + "NotProtected", + "Protecting", + "Protected", + "ProtectionFailed" + ], + "type": "string", + "x-ms-enum": { + "name": "ProtectionStatus", + "modelAsString": true + } + } + }, + "discriminator": "protectableItemType" + }, + "WorkloadProtectableItemResource": { + "description": "Base class for backup item. Workload-specific backup items are derived from this class.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/WorkloadProtectableItem", + "description": "WorkloadProtectableItemResource properties" + } + } + }, + "WorkloadProtectableItemResourceList": { + "description": "List of WorkloadProtectableItem resources", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ResourceList" + } + ], + "properties": { + "value": { + "description": "List of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/WorkloadProtectableItemResource" + } + } + } + }, + "AzureWorkloadSAPHanaPointInTimeRestoreWithRehydrateRequest": { + "description": "AzureWorkload SAP Hana-specific restore with integrated rehydration of recovery point.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadSAPHanaPointInTimeRestoreRequest" + } + ], + "properties": { + "recoveryPointRehydrationInfo": { + "$ref": "#/definitions/RecoveryPointRehydrationInfo", + "description": "RP Rehydration Info" + } + }, + "x-ms-discriminator-value": "AzureWorkloadSAPHanaPointInTimeRestoreWithRehydrateRequest" + }, + "AzureWorkloadSAPHanaRestoreWithRehydrateRequest": { + "description": "AzureWorkload SAP Hana-specific restore with integrated rehydration of recovery point.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadSAPHanaRestoreRequest" + } + ], + "properties": { + "recoveryPointRehydrationInfo": { + "$ref": "#/definitions/RecoveryPointRehydrationInfo", + "description": "RP Rehydration Info" + } + }, + "x-ms-discriminator-value": "AzureWorkloadSAPHanaRestoreWithRehydrateRequest" + }, + "AzureWorkloadSQLPointInTimeRestoreWithRehydrateRequest": { + "description": "AzureWorkload SQL-specific restore with integrated rehydration of recovery point.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadSQLPointInTimeRestoreRequest" + } + ], + "properties": { + "recoveryPointRehydrationInfo": { + "$ref": "#/definitions/RecoveryPointRehydrationInfo", + "description": "RP Rehydration Info" + } + }, + "x-ms-discriminator-value": "AzureWorkloadSQLPointInTimeRestoreWithRehydrateRequest" + }, + "AzureWorkloadSQLRestoreWithRehydrateRequest": { + "description": "AzureWorkload SQL-specific restore with integrated rehydration of recovery point", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadSQLRestoreRequest" + } + ], + "properties": { + "recoveryPointRehydrationInfo": { + "$ref": "#/definitions/RecoveryPointRehydrationInfo", + "description": "RP Rehydration Info" + } + }, + "x-ms-discriminator-value": "AzureWorkloadSQLRestoreWithRehydrateRequest" + }, + "IaasVMRestoreWithRehydrationRequest": { + "description": "IaaS VM workload-specific restore with integrated rehydration of recovery point.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/IaasVMRestoreRequest" + } + ], + "properties": { + "recoveryPointRehydrationInfo": { + "$ref": "#/definitions/RecoveryPointRehydrationInfo", + "description": "RP Rehydration Info" + } + }, + "x-ms-discriminator-value": "IaasVMRestoreWithRehydrationRequest" + }, + "MoveRPAcrossTiersRequest": { + "type": "object", + "properties": { + "objectType": { + "description": "Gets the class type.", + "type": "string" + }, + "sourceTierType": { + "description": "Source tier from where RP needs to be moved", + "enum": [ + "Invalid", + "InstantRP", + "HardenedRP", + "ArchivedRP" + ], + "type": "string", + "x-ms-enum": { + "name": "RecoveryPointTierType", + "modelAsString": false + } + }, + "targetTierType": { + "description": "Target tier where RP needs to be moved", + "enum": [ + "Invalid", + "InstantRP", + "HardenedRP", + "ArchivedRP" + ], + "type": "string", + "x-ms-enum": { + "name": "RecoveryPointTierType", + "modelAsString": false + } + } + } + }, + "RecoveryPointMoveReadinessInfo": { + "type": "object", + "properties": { + "isReadyForMove": { + "type": "boolean" + }, + "additionalInfo": { + "type": "string" + } + } + }, + "RecoveryPointRehydrationInfo": { + "description": "RP Rehydration Info", + "type": "object", + "properties": { + "rehydrationRetentionDuration": { + "description": "How long the rehydrated RP should be kept\r\nShould be ISO8601 Duration format e.g. \"P7D\"", + "type": "string" + }, + "rehydrationPriority": { + "description": "Rehydration Priority", + "enum": [ + "Standard", + "High" + ], + "type": "string", + "x-ms-enum": { + "name": "RehydrationPriority", + "modelAsString": true + } + } + } + }, + "ListRecoveryPointsRecommendedForMoveRequest": { + "description": "ListRecoveryPointsRecommendedForMoveRequest Request", + "type": "object", + "properties": { + "objectType": { + "description": "Gets the class type.", + "type": "string" + }, + "excludedRPList": { + "description": "List of Recovery Points excluded from Move", + "type": "array", + "items": { + "type": "string" + } + } + } + } + }, + "parameters": { + "SubscriptionId": { + "name": "subscriptionId", + "in": "path", + "description": "The subscription Id.", + "required": true, + "type": "string" + }, + "AzureRegion": { + "name": "azureRegion", + "in": "path", + "description": "Azure region to hit Api", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ResourceGroupName": { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group where the recovery services vault is present.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "VaultName": { + "name": "vaultName", + "in": "path", + "description": "The name of the recovery services vault.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ApiVersion": { + "name": "api-version", + "in": "query", + "description": "Client Api Version.", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account." + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/BackupFeature_Validate.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/BackupFeature_Validate.json new file mode 100644 index 000000000000..e60392251864 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/BackupFeature_Validate.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "azureRegion": "southeastasia", + "api-version": "2021-02-10", + "parameters": { + "featureType": "AzureVMResourceBackup", + "vmSize": "Basic_A0", + "vmSku": "Premium" + } + }, + "responses": { + "200": { + "body": { + "supportStatus": "DefaultOFF" + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/BackupPolicies_List.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/BackupPolicies_List.json new file mode 100644 index 000000000000..0f861205e6b1 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/BackupPolicies_List.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "api-version": "2021-02-10", + "$filter": "backupManagementType eq 'AzureIaasVM'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupPolicies/DefaultPolicy", + "name": "DefaultPolicy", + "type": "Microsoft.RecoveryServices/vaults/backupPolicies", + "properties": { + "backupManagementType": "AzureIaasVM", + "schedulePolicy": { + "schedulePolicyType": "SimpleSchedulePolicy", + "scheduleRunFrequency": "Daily", + "scheduleRunTimes": [ + "2017-12-05T19:00:00Z" + ], + "scheduleWeeklyFrequency": 0 + }, + "retentionPolicy": { + "retentionPolicyType": "LongTermRetentionPolicy", + "dailySchedule": { + "retentionTimes": [ + "2017-12-05T19:00:00Z" + ], + "retentionDuration": { + "count": 30, + "durationType": "Days" + } + } + }, + "protectedItemsCount": 0 + } + }, + { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupPolicies/testPolicy1", + "name": "testPolicy1", + "type": "Microsoft.RecoveryServices/vaults/backupPolicies", + "properties": { + "backupManagementType": "AzureIaasVM", + "schedulePolicy": { + "schedulePolicyType": "SimpleSchedulePolicy", + "scheduleRunFrequency": "Daily", + "scheduleRunTimes": [ + "2018-01-24T02:00:00Z" + ], + "scheduleWeeklyFrequency": 0 + }, + "retentionPolicy": { + "retentionPolicyType": "LongTermRetentionPolicy", + "dailySchedule": { + "retentionTimes": [ + "2018-01-24T02:00:00Z" + ], + "retentionDuration": { + "count": 1, + "durationType": "Days" + } + } + }, + "timeZone": "Pacific Standard Time", + "protectedItemsCount": 0 + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/BackupProtectableItems_List.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/BackupProtectableItems_List.json new file mode 100644 index 000000000000..213a88e9f825 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/BackupProtectableItems_List.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "api-version": "2021-02-10", + "$filter": "backupManagementType eq 'AzureIaasVM'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/protectionContainers/IaasVMContainer;iaasvmcontainer;iaasvm-rg;iaasvm-1/protectableItems/VM;iaasvmcontainer;iaasvm-rg;iaasvm-1", + "name": "VM;iaasvmcontainer;iaasvm-rg;iaasvm-1", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/protectableItems", + "properties": { + "friendlyName": "iaasvm-1", + "virtualMachineId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/providers/Microsoft.ClassicCompute/virtualMachines/iaasvm-1", + "protectionState": "NotProtected", + "protectableItemType": "Microsoft.ClassicCompute/virtualMachines", + "backupManagementType": "AzureIaasVM", + "workloadType": "VM" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/BackupProtectedItems_List.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/BackupProtectedItems_List.json new file mode 100644 index 000000000000..c9f64642180f --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/BackupProtectedItems_List.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "api-version": "2021-02-10", + "$filter": "backupManagementType eq 'AzureIaasVM' and itemType eq 'VM'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/protectionContainers/IaasVMContainer;iaasvmcontainer;iaasvm-rg;iaasvm-1/protectedItems/VM;iaasvmcontainer;iaasvm-rg;iaasvm-1", + "name": "VM;iaasvmcontainer;iaasvm-rg;iaasvm-1", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/protectedItems", + "properties": { + "friendlyName": "iaasvm-1", + "virtualMachineId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/providers/Microsoft.ClassicCompute/virtualMachines/iaasvm-1", + "protectionStatus": "Healthy", + "protectionState": "Protected", + "healthStatus": "Passed", + "lastBackupStatus": "Completed", + "lastBackupTime": "2018-01-22T12:25:32.048723Z", + "protectedItemDataId": "636482643132986882", + "protectedItemType": "Microsoft.ClassicCompute/virtualMachines", + "backupManagementType": "AzureIaasVM", + "workloadType": "VM", + "containerName": "iaasvmcontainer;iaasvm-rg;iaasvm-1", + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/providers/Microsoft.ClassicCompute/virtualMachines/iaasvm-1", + "policyId": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupPolicies/testPolicy1", + "lastRecoveryPoint": "2017-11-22T12:25:32.048723Z" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/ClassicCompute_ProtectedItem_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/ClassicCompute_ProtectedItem_Get.json new file mode 100644 index 000000000000..5caa8ebdd5e2 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/ClassicCompute_ProtectedItem_Get.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "PythonSDKBackupTestRg", + "vaultName": "PySDKBackupTestRsVault", + "fabricName": "Azure", + "containerName": "iaasvmcontainer;iaasvmcontainer;iaasvm-rg;iaasvm-1", + "protectedItemName": "vm;iaasvmcontainer;iaasvm-rg;iaasvm-1", + "api-version": "2021-02-10" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PythonSDKBackupTestRg/providers/Microsoft.RecoveryServices/vaults/PySDKBackupTestRsVault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainer;iaasvm-rg;iaasvm-1/protectedItems/VM;iaasvmcontainer;iaasvm-rg;iaasvm-1", + "name": "VM;iaasvmcontainer;iaasvm-rg;iaasvm-1", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/protectedItems", + "properties": { + "friendlyName": "iaasvm-1", + "virtualMachineId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/providers/Microsoft.ClassicCompute/virtualMachines/iaasvm-1", + "protectionStatus": "Healthy", + "protectionState": "Protected", + "healthStatus": "Passed", + "lastBackupStatus": "Completed", + "lastBackupTime": "2018-01-22T12:25:32.048723Z", + "protectedItemDataId": "636482643132986882", + "protectedItemType": "Microsoft.ClassicCompute/virtualMachines", + "backupManagementType": "AzureIaasVM", + "workloadType": "VM", + "containerName": "iaasvmcontainer;iaasvm-rg;iaasvm-1", + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/providers/Microsoft.ClassicCompute/virtualMachines/iaasvm-1", + "policyId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PythonSDKBackupTestRg/providers/Microsoft.RecoveryServices/vaults/PySDKBackupTestRsVault/backupPolicies/testPolicy1", + "lastRecoveryPoint": "2017-11-22T12:25:32.048723Z" + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/Compute_ProtectedItem_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/Compute_ProtectedItem_Get.json new file mode 100644 index 000000000000..3a0f6955003c --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/Compute_ProtectedItem_Get.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "PythonSDKBackupTestRg", + "vaultName": "PySDKBackupTestRsVault", + "fabricName": "Azure", + "containerName": "iaasvmcontainer;iaasvmcontainerv2;iaasvm-rg;iaasvm-1", + "protectedItemName": "vm;iaasvmcontainerv2;iaasvm-rg;iaasvm-1", + "api-version": "2021-02-10" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PythonSDKBackupTestRg/providers/Microsoft.RecoveryServices/vaults/PySDKBackupTestRsVault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainerv2;iaasvm-rg;iaasvm-1/protectedItems/VM;iaasvmcontainerv2;iaasvm-rg;iaasvm-1", + "name": "VM;iaasvmcontainerv2;iaasvm-rg;iaasvm-1", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/protectedItems", + "properties": { + "friendlyName": "iaasvm-1", + "virtualMachineId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/providers/Microsoft.Compute/virtualMachines/iaasvm-1", + "protectionStatus": "Healthy", + "protectionState": "Protected", + "healthStatus": "Passed", + "lastBackupStatus": "Completed", + "lastBackupTime": "2018-01-22T12:25:32.048723Z", + "protectedItemDataId": "636482643132986882", + "protectedItemType": "Microsoft.Compute/virtualMachines", + "backupManagementType": "AzureIaasVM", + "workloadType": "VM", + "containerName": "iaasvmcontainerv2;iaasvm-rg;iaasvm-1", + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/providers/Microsoft.Compute/virtualMachines/iaasvm-1", + "policyId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PythonSDKBackupTestRg/providers/Microsoft.RecoveryServices/vaults/PySDKBackupTestRsVault/backupPolicies/testPolicy1", + "lastRecoveryPoint": "2017-11-22T12:25:32.048723Z" + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/ConfigureProtection.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/ConfigureProtection.json new file mode 100644 index 000000000000..efa83aa1759e --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/ConfigureProtection.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "fabricName": "Azure", + "containerName": "IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "protectedItemName": "VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "api-version": "2021-02-10", + "parameters": { + "properties": { + "protectedItemType": "Microsoft.Compute/virtualMachines", + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.Compute/virtualMachines/netvmtestv2vm1", + "policyId": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupPolicies/DefaultPolicy" + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/protectedItems/VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/operationResults/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Azure-AsyncOperation": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/protectedItems/VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/operationsStatus/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Retry-After": 60 + } + }, + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PythonSDKBackupTestRg/providers/Microsoft.RecoveryServices/vaults/PySDKBackupTestRsVault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/protectedItems/VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "name": "VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/protectedItems", + "properties": { + "friendlyName": "netvmtestv2vm1", + "virtualMachineId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.Compute/virtualMachines/netvmtestv2vm1", + "protectionStatus": "Healthy", + "protectionState": "Protected", + "healthStatus": "Passed", + "lastBackupStatus": "Completed", + "lastBackupTime": "2018-01-22T12:25:32.048723Z", + "protectedItemDataId": "636482643132986882", + "protectedItemType": "Microsoft.Compute/virtualMachines", + "backupManagementType": "AzureIaasVM", + "workloadType": "VM", + "containerName": "iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.Compute/virtualMachines/netvmtestv2vm1", + "policyId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PythonSDKBackupTestRg/providers/Microsoft.RecoveryServices/vaults/PySDKBackupTestRsVault/backupPolicies/testPolicy1", + "lastRecoveryPoint": null + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/GetBackupStatus.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/GetBackupStatus.json new file mode 100644 index 000000000000..7bca2fc05b40 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/GetBackupStatus.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "azureRegion": "southeastasia", + "api-version": "2021-02-10", + "parameters": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRg/providers/Microsoft.Compute/VirtualMachines/testVm", + "resourceType": "VM" + } + }, + "responses": { + "200": { + "body": { + "protectionStatus": "Protected", + "vaultId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRg/providers/Microsoft.RecoveryServices/Vaults/testVault", + "fabricName": "Azure", + "containerName": "iaasvmcontainer;iaasvmcontainerv2;testRg;testVm", + "protectedItemName": "vm;iaasvmcontainerv2;testRg;testVm", + "policyName": "myPolicy", + "errorCode": "Success", + "errorMessage": "ErrorMessage" + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/ProtectedItemOperationResults.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/ProtectedItemOperationResults.json new file mode 100644 index 000000000000..3216de1de458 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/ProtectedItemOperationResults.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "fabricName": "Azure", + "containerName": "IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "protectedItemName": "VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "operationId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-02-10" + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/protectedItems/VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/operationResults/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Azure-AsyncOperation": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/protectedItems/VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/operationsStatus/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Retry-After": 60 + } + }, + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PythonSDKBackupTestRg/providers/Microsoft.RecoveryServices/vaults/PySDKBackupTestRsVault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/protectedItems/VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "name": "VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/protectedItems", + "properties": { + "friendlyName": "netvmtestv2vm1", + "virtualMachineId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.Compute/virtualMachines/netvmtestv2vm1", + "protectionStatus": "Healthy", + "protectionState": "Protected", + "healthStatus": "Passed", + "lastBackupStatus": "Completed", + "lastBackupTime": "2018-01-22T12:25:32.048723Z", + "protectedItemDataId": "636482643132986882", + "protectedItemType": "Microsoft.Compute/virtualMachines", + "backupManagementType": "AzureIaasVM", + "workloadType": "VM", + "containerName": "iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.Compute/virtualMachines/netvmtestv2vm1", + "policyId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PythonSDKBackupTestRg/providers/Microsoft.RecoveryServices/vaults/PySDKBackupTestRsVault/backupPolicies/testPolicy1", + "lastRecoveryPoint": null + } + } + }, + "204": {} + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/ProtectedItemOperationStatus.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/ProtectedItemOperationStatus.json new file mode 100644 index 000000000000..38d37b2b5cac --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/ProtectedItemOperationStatus.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "fabricName": "Azure", + "containerName": "IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "protectedItemName": "VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "operationId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-02-10" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "status": "Succeeded", + "startTime": "2017-10-29T06:04:18.207325Z", + "endTime": "2017-10-29T06:04:18.207325Z", + "properties": { + "objectType": "OperationStatusJobExtendedInfo", + "jobId": "00000000-0000-0000-0000-000000000000" + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/ProtectionIntent_CreateOrUpdate.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/ProtectionIntent_CreateOrUpdate.json new file mode 100644 index 000000000000..08c46bffcf8e --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/ProtectionIntent_CreateOrUpdate.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myRG", + "vaultName": "myVault", + "fabricName": "Azure", + "intentObjectName": "vm;iaasvmcontainerv2;chamsrgtest;chamscandel", + "api-version": "2021-02-10", + "parameters": { + "properties": { + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/chamsrgtest/providers/Microsoft.Compute/virtualMachines/chamscandel", + "protectionIntentItemType": "AzureResourceItem", + "policyId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myRG/providers/Microsoft.RecoveryServices/vaults/myVault/backupPolicies/myPolicy" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myRG/providers/Microsoft.RecoveryServices/vaults/myVault/backupFabrics/Azure/backupProtectionIntent/vm;iaasvmcontainerv2;chamsrgtest;chamscandel", + "name": "vm;iaasvmcontainerv2;chamsrgtest;chamscandel", + "type": "Microsoft.RecoveryServices/vaults/backupProtectionIntent", + "properties": { + "backupManagementType": "AzureIaasVM", + "policyId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myRG/providers/Microsoft.RecoveryServices/vaults/myVault/backupPolicies/myPolicy", + "protectionState": "Protected" + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/ProtectionIntent_Validate.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/ProtectionIntent_Validate.json new file mode 100644 index 000000000000..72e1cd0b77a8 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/ProtectionIntent_Validate.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "azureRegion": "southeastasia", + "api-version": "2021-02-10", + "parameters": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/arunaupgrade/providers/Microsoft.Compute/VirtualMachines/upgrade1", + "resourceType": "VM", + "vaultId": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myRG/providers/Microsoft.RecoveryServices/Vaults/myVault", + "properties": "" + } + }, + "responses": { + "200": { + "body": { + "status": "Failed", + "errorCode": "VirtualMachineAlreadyProtected", + "errorMessage": "Virtual machine with same name and same resource group is already protected. Please select `Disable' choice above for backup and go to backup item corresponding to this VM in the vault", + "recommendation": "Please do not enable protection again.", + "containerName": "iaasvmcontainer;iaasvmcontainerv2;arunaupgrade;upgrade1", + "protectedItemName": "vm;iaasvmcontainerv2;arunaupgrade;upgrade1" + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/ProtectionPolicies_CreateOrUpdate_Complex.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/ProtectionPolicies_CreateOrUpdate_Complex.json new file mode 100644 index 000000000000..49a841ebdbc9 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/ProtectionPolicies_CreateOrUpdate_Complex.json @@ -0,0 +1,181 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "policyName": "testPolicy1", + "api-version": "2021-02-10", + "parameters": { + "properties": { + "backupManagementType": "AzureIaasVM", + "timeZone": "Pacific Standard Time", + "schedulePolicy": { + "schedulePolicyType": "SimpleSchedulePolicy", + "scheduleRunFrequency": "Weekly", + "scheduleRunTimes": [ + "2018-01-24T10:00:00Z" + ], + "scheduleRunDays": [ + "Monday", + "Wednesday", + "Thursday" + ] + }, + "retentionPolicy": { + "retentionPolicyType": "LongTermRetentionPolicy", + "weeklySchedule": { + "daysOfTheWeek": [ + "Monday", + "Wednesday", + "Thursday" + ], + "retentionTimes": [ + "2018-01-24T10:00:00Z" + ], + "retentionDuration": { + "count": 1, + "durationType": "Weeks" + } + }, + "monthlySchedule": { + "retentionScheduleFormatType": "Weekly", + "retentionScheduleWeekly": { + "daysOfTheWeek": [ + "Wednesday", + "Thursday" + ], + "weeksOfTheMonth": [ + "First", + "Third" + ] + }, + "retentionTimes": [ + "2018-01-24T10:00:00Z" + ], + "retentionDuration": { + "count": 2, + "durationType": "Months" + } + }, + "yearlySchedule": { + "retentionScheduleFormatType": "Weekly", + "monthsOfYear": [ + "February", + "November" + ], + "retentionScheduleWeekly": { + "daysOfTheWeek": [ + "Monday", + "Thursday" + ], + "weeksOfTheMonth": [ + "Fourth" + ] + }, + "retentionTimes": [ + "2018-01-24T10:00:00Z" + ], + "retentionDuration": { + "count": 4, + "durationType": "Years" + } + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupPolicies/testPolicy1", + "name": "testPolicy1", + "type": "Microsoft.RecoveryServices/vaults/backupPolicies", + "properties": { + "backupManagementType": "AzureIaasVM", + "schedulePolicy": { + "schedulePolicyType": "SimpleSchedulePolicy", + "scheduleRunFrequency": "Weekly", + "scheduleRunDays": [ + "Monday", + "Wednesday", + "Thursday" + ], + "scheduleRunTimes": [ + "2018-01-24T10:00:00Z" + ], + "scheduleWeeklyFrequency": 0 + }, + "retentionPolicy": { + "retentionPolicyType": "LongTermRetentionPolicy", + "weeklySchedule": { + "daysOfTheWeek": [ + "Monday", + "Wednesday", + "Thursday" + ], + "retentionTimes": [ + "2018-01-24T10:00:00Z" + ], + "retentionDuration": { + "count": 1, + "durationType": "Weeks" + } + }, + "monthlySchedule": { + "retentionScheduleFormatType": "Weekly", + "retentionScheduleWeekly": { + "daysOfTheWeek": [ + "Wednesday", + "Thursday" + ], + "weeksOfTheMonth": [ + "First", + "Third" + ] + }, + "retentionTimes": [ + "2018-01-24T10:00:00Z" + ], + "retentionDuration": { + "count": 2, + "durationType": "Months" + } + }, + "yearlySchedule": { + "retentionScheduleFormatType": "Weekly", + "monthsOfYear": [ + "February", + "November" + ], + "retentionScheduleWeekly": { + "daysOfTheWeek": [ + "Monday", + "Thursday" + ], + "weeksOfTheMonth": [ + "Fourth" + ] + }, + "retentionTimes": [ + "2018-01-24T10:00:00Z" + ], + "retentionDuration": { + "count": 4, + "durationType": "Years" + } + } + }, + "timeZone": "Pacific Standard Time", + "protectedItemsCount": 0 + } + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupPolicies/testPolicy1/operationResults/00000000-0000-0000-0000-000000000000?api-version=2016-06-01", + "Azure-AsyncOperation": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupPolicies/testPolicy1/operations/00000000-0000-0000-0000-000000000000?api-version=2016-06-01", + "Retry-After": 60 + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/ProtectionPolicies_CreateOrUpdate_Simple.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/ProtectionPolicies_CreateOrUpdate_Simple.json new file mode 100644 index 000000000000..49aa3c7bd7c6 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/ProtectionPolicies_CreateOrUpdate_Simple.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "policyName": "testPolicy1", + "api-version": "2021-02-10", + "parameters": { + "properties": { + "backupManagementType": "AzureIaasVM", + "timeZone": "Pacific Standard Time", + "schedulePolicy": { + "schedulePolicyType": "SimpleSchedulePolicy", + "scheduleRunFrequency": "Daily", + "scheduleRunTimes": [ + "2018-01-24T02:00:00Z" + ] + }, + "retentionPolicy": { + "retentionPolicyType": "LongTermRetentionPolicy", + "dailySchedule": { + "retentionTimes": [ + "2018-01-24T02:00:00Z" + ], + "retentionDuration": { + "count": 1, + "durationType": "Days" + } + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupPolicies/testPolicy1", + "name": "testPolicy1", + "type": "Microsoft.RecoveryServices/vaults/backupPolicies", + "properties": { + "backupManagementType": "AzureIaasVM", + "schedulePolicy": { + "schedulePolicyType": "SimpleSchedulePolicy", + "scheduleRunFrequency": "Daily", + "scheduleRunTimes": [ + "2018-01-24T02:00:00Z" + ], + "scheduleWeeklyFrequency": 0 + }, + "retentionPolicy": { + "retentionPolicyType": "LongTermRetentionPolicy", + "dailySchedule": { + "retentionTimes": [ + "2018-01-24T02:00:00Z" + ], + "retentionDuration": { + "count": 1, + "durationType": "Days" + } + } + }, + "timeZone": "Pacific Standard Time", + "protectedItemsCount": 0 + } + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupPolicies/testPolicy1/operationResults/00000000-0000-0000-0000-000000000000?api-version=2016-06-01", + "Azure-AsyncOperation": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupPolicies/testPolicy1/operations/00000000-0000-0000-0000-000000000000?api-version=2016-06-01", + "Retry-After": 60 + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/ProtectionPolicies_Delete.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/ProtectionPolicies_Delete.json new file mode 100644 index 000000000000..55723e084305 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/ProtectionPolicies_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "policyName": "testPolicy1", + "api-version": "2021-02-10" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/ProtectionPolicies_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/ProtectionPolicies_Get.json new file mode 100644 index 000000000000..99cb31f844be --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/ProtectionPolicies_Get.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "policyName": "testPolicy1", + "api-version": "2021-02-10" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupPolicies/testPolicy1", + "name": "testPolicy1", + "type": "Microsoft.RecoveryServices/vaults/backupPolicies", + "properties": { + "backupManagementType": "AzureIaasVM", + "schedulePolicy": { + "schedulePolicyType": "SimpleSchedulePolicy", + "scheduleRunFrequency": "Daily", + "scheduleRunTimes": [ + "2018-01-24T02:00:00Z" + ], + "scheduleWeeklyFrequency": 0 + }, + "retentionPolicy": { + "retentionPolicyType": "LongTermRetentionPolicy", + "dailySchedule": { + "retentionTimes": [ + "2018-01-24T02:00:00Z" + ], + "retentionDuration": { + "count": 1, + "durationType": "Days" + } + } + }, + "timeZone": "Pacific Standard Time", + "protectedItemsCount": 0 + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/ProtectionPolicyOperationResults_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/ProtectionPolicyOperationResults_Get.json new file mode 100644 index 000000000000..31456ecf8fe8 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/ProtectionPolicyOperationResults_Get.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "policyName": "testPolicy1", + "operationId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-02-10" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupPolicies/testPolicy1", + "name": "testPolicy1", + "type": "Microsoft.RecoveryServices/vaults/backupPolicies", + "properties": { + "backupManagementType": "AzureIaasVM", + "schedulePolicy": { + "schedulePolicyType": "SimpleSchedulePolicy", + "scheduleRunFrequency": "Daily", + "scheduleRunTimes": [ + "2018-01-24T02:00:00Z" + ], + "scheduleWeeklyFrequency": 0 + }, + "retentionPolicy": { + "retentionPolicyType": "LongTermRetentionPolicy", + "dailySchedule": { + "retentionTimes": [ + "2018-01-24T02:00:00Z" + ], + "retentionDuration": { + "count": 1, + "durationType": "Days" + } + } + }, + "timeZone": "Pacific Standard Time", + "protectedItemsCount": 1 + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/ProtectionPolicyOperationStatuses_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/ProtectionPolicyOperationStatuses_Get.json new file mode 100644 index 000000000000..5380d2d07786 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/ProtectionPolicyOperationStatuses_Get.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "policyName": "testPolicy1", + "operationId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-02-10" + }, + "responses": { + "200": { + "body": { + "id": "00000000-0000-0000-0000-000000000000", + "name": "GetProtectionPolicyOperationStatus", + "status": "Succeeded", + "startTime": "2018-01-24T12:57:32.1142968Z", + "endTime": "2018-01-24T12:57:32.1142968Z", + "properties": { + "objectType": "OperationStatusJobsExtendedInfo", + "jobIds": [ + "00000000-0000-0000-0000-000000000000" + ], + "failedJobsError": {} + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/Provision_Ilr.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/Provision_Ilr.json new file mode 100644 index 000000000000..2333e5303387 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/Provision_Ilr.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "PythonSDKBackupTestRg", + "vaultName": "PySDKBackupTestRsVault", + "fabricName": "Azure", + "containerName": "iaasvmcontainer;iaasvmcontainerv2;pysdktestrg;pysdktestv2vm1", + "protectedItemName": "vm;iaasvmcontainerv2;pysdktestrg;pysdktestv2vm1", + "recoveryPointId": "1", + "api-version": "2021-02-10", + "parameters": { + "properties": { + "initiatorName": "Hello World", + "recoveryPointId": "38823086363464", + "renewExistingRegistration": true, + "virtualMachineId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pysdktestrg/providers/Microsoft.Compute/virtualMachines/pysdktestv2vm1", + "objectType": "IaasVMILRRegistrationRequest" + } + } + }, + "responses": { + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PythonSDKBackupTestRg/providers/Microsoft.RecoveryServices/vaults/PySDKBackupTestRsVault/backupFabrics/Azure/protectionContainers/iaasvmcontainer;iaasvmcontainerv2;pysdktestrg;pysdktestv2vm1/protectedItems/vm;iaasvmcontainerv2;pysdktestrg;pysdktestv2vm1/operationsStatus/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PythonSDKBackupTestRg/providers/Microsoft.RecoveryServices/vaults/PySDKBackupTestRsVault/backupFabrics/Azure/protectionContainers/iaasvmcontainer;iaasvmcontainerv2;pysdktestrg;pysdktestv2vm1/protectedItems/vm;iaasvmcontainerv2;pysdktestrg;pysdktestv2vm1/operationResults/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Retry-After": 60 + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/RecoveryPointsRecommendedForMove_List.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/RecoveryPointsRecommendedForMove_List.json new file mode 100644 index 000000000000..b21bb078e2e9 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/RecoveryPointsRecommendedForMove_List.json @@ -0,0 +1,101 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "rshhtestmdvmrg", + "vaultName": "rshvault", + "fabricName": "Azure", + "containerName": "IaasVMContainer;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall", + "protectedItemName": "VM;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall", + "api-version": "2021-02-10", + "parameters": { + "objectType": "ListRecoveryPointsRecommendedForMoveRequest", + "excludedRPList": [ + "348916168024334", + "348916168024335" + ] + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rshhtestmdvmrg/providers/Microsoft.RecoveryServices/vaults/rshvault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall/protectedItems/VM;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall/recoveryPoints/22244821112382", + "name": "22244821112382", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints", + "properties": { + "objectType": "IaasVMRecoveryPoint", + "recoveryPointType": "CrashConsistent", + "recoveryPointTime": "2017-12-21T22:48:25.4353958Z", + "recoveryPointAdditionalInfo": "", + "sourceVMStorageType": "NormalStorage", + "isSourceVMEncrypted": false, + "isInstantIlrSessionActive": false, + "recoveryPointTierDetails": [ + { + "type": "InstantRP", + "status": "Deleted" + }, + { + "type": "HardenedRP", + "status": "Valid" + } + ], + "recoveryPointMoveReadinessInfo": { + "ArchivedRP": { + "isReadyForMove": true + } + }, + "isManagedVirtualMachine": true, + "virtualMachineSize": "Standard_D1", + "originalStorageAccountOption": false + } + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rshhtestmdvmrg/providers/Microsoft.RecoveryServices/vaults/rshvault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall/protectedItems/VM;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall/recoveryPoints/24977149827250", + "name": "24977149827250", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints", + "properties": { + "objectType": "IaasVMRecoveryPoint", + "recoveryPointType": "CrashConsistent", + "recoveryPointTime": "2017-12-20T22:49:44.3317945Z", + "recoveryPointAdditionalInfo": "", + "sourceVMStorageType": "NormalStorage", + "isSourceVMEncrypted": false, + "isInstantIlrSessionActive": false, + "recoveryPointTierDetails": [ + { + "type": "InstantRP", + "status": "Deleted" + }, + { + "type": "HardenedRP", + "status": "Deleted" + }, + { + "type": "ArchivedRP", + "status": "Rehydrated", + "extendedInfo": { + "RehydratedRPExpiryTime": "2020-12-21T22:48:25.4353958Z" + } + } + ], + "recoveryPointMoveReadinessInfo": { + "ArchivedRP": { + "isReadyForMove": true + } + }, + "isManagedVirtualMachine": true, + "virtualMachineSize": "Standard_D1", + "originalStorageAccountOption": false, + "zones": [ + "1" + ] + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/RecoveryPoints_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/RecoveryPoints_Get.json new file mode 100644 index 000000000000..eb67b20383e9 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/RecoveryPoints_Get.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "rshhtestmdvmrg", + "vaultName": "rshvault", + "fabricName": "Azure", + "containerName": "IaasVMContainer;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall", + "protectedItemName": "VM;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall", + "recoveryPointId": "26083826328862", + "api-version": "2021-02-10" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rshhtestmdvmrg/providers/Microsoft.RecoveryServices/vaults/rshvault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall/protectedItems/VM;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall/recoveryPoints/26083826328862", + "name": "26083826328862", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints", + "properties": { + "objectType": "IaasVMRecoveryPoint", + "recoveryPointType": "CrashConsistent", + "recoveryPointTime": "2017-11-22T22:32:46.6088472Z", + "recoveryPointAdditionalInfo": "", + "sourceVMStorageType": "NormalStorage", + "isSourceVMEncrypted": false, + "isInstantIlrSessionActive": false, + "recoveryPointTierDetails": [ + { + "type": "HardenedRP", + "status": "Valid" + } + ], + "recoveryPointMoveReadinessInfo": { + "ArchivedRP": { + "isReadyForMove": true + } + }, + "isManagedVirtualMachine": true, + "virtualMachineSize": "Standard_D1", + "originalStorageAccountOption": false, + "zones": [ + "1" + ] + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/RecoveryPoints_List.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/RecoveryPoints_List.json new file mode 100644 index 000000000000..986ca79cdb09 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/RecoveryPoints_List.json @@ -0,0 +1,95 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "rshhtestmdvmrg", + "vaultName": "rshvault", + "fabricName": "Azure", + "containerName": "IaasVMContainer;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall", + "protectedItemName": "VM;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall", + "api-version": "2021-02-10" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rshhtestmdvmrg/providers/Microsoft.RecoveryServices/vaults/rshvault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall/protectedItems/VM;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall/recoveryPoints/22244821112382", + "name": "22244821112382", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints", + "properties": { + "objectType": "IaasVMRecoveryPoint", + "recoveryPointType": "CrashConsistent", + "recoveryPointTime": "2017-12-21T22:48:25.4353958Z", + "recoveryPointAdditionalInfo": "", + "sourceVMStorageType": "NormalStorage", + "isSourceVMEncrypted": false, + "isInstantIlrSessionActive": false, + "recoveryPointTierDetails": [ + { + "type": "InstantRP", + "status": "Deleted" + }, + { + "type": "HardenedRP", + "status": "Valid" + } + ], + "recoveryPointMoveReadinessInfo": { + "Archive": { + "isReadyForMove": true + } + }, + "isManagedVirtualMachine": true, + "virtualMachineSize": "Standard_D1", + "originalStorageAccountOption": false + } + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rshhtestmdvmrg/providers/Microsoft.RecoveryServices/vaults/rshvault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall/protectedItems/VM;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall/recoveryPoints/24977149827250", + "name": "24977149827250", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints", + "properties": { + "objectType": "IaasVMRecoveryPoint", + "recoveryPointType": "CrashConsistent", + "recoveryPointTime": "2017-12-20T22:49:44.3317945Z", + "recoveryPointAdditionalInfo": "", + "sourceVMStorageType": "NormalStorage", + "isSourceVMEncrypted": false, + "isInstantIlrSessionActive": false, + "recoveryPointTierDetails": [ + { + "type": "InstantRP", + "status": "Deleted" + }, + { + "type": "HardenedRP", + "status": "Deleted" + }, + { + "type": "ArchivedRP", + "status": "Rehydrated", + "extendedInfo": { + "RehydratedRPExpiryTime": "2020-12-21T22:48:25.4353958Z" + } + } + ], + "recoveryPointMoveReadinessInfo": { + "ArchivedRP": { + "isReadyForMove": false, + "additionalInfo": "Recovery point cannot be moved to archive tier since it has already been moved." + } + }, + "isManagedVirtualMachine": true, + "virtualMachineSize": "Standard_D1", + "originalStorageAccountOption": false, + "zones": [ + "1" + ] + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/Revoke_Ilr.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/Revoke_Ilr.json new file mode 100644 index 000000000000..59b3b93f81f7 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/Revoke_Ilr.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "PythonSDKBackupTestRg", + "vaultName": "PySDKBackupTestRsVault", + "fabricName": "Azure", + "containerName": "iaasvmcontainer;iaasvmcontainerv2;pysdktestrg;pysdktestv2vm1", + "protectedItemName": "vm;iaasvmcontainerv2;pysdktestrg;pysdktestv2vm1", + "recoveryPointId": "1", + "api-version": "2021-02-10" + }, + "responses": { + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PythonSDKBackupTestRg/providers/Microsoft.RecoveryServices/vaults/PySDKBackupTestRsVault/backupFabrics/Azure/protectionContainers/iaasvmcontainer;iaasvmcontainerv2;pysdktestrg;pysdktestv2vm1/protectedItems/vm;iaasvmcontainerv2;pysdktestrg;pysdktestv2vm1/operationsStatus/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PythonSDKBackupTestRg/providers/Microsoft.RecoveryServices/vaults/PySDKBackupTestRsVault/backupFabrics/Azure/protectionContainers/iaasvmcontainer;iaasvmcontainerv2;pysdktestrg;pysdktestv2vm1/protectedItems/vm;iaasvmcontainerv2;pysdktestrg;pysdktestv2vm1/operationResults/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Retry-After": 60 + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/StopProtection.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/StopProtection.json new file mode 100644 index 000000000000..17aee6c3c8b4 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/StopProtection.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "fabricName": "Azure", + "containerName": "IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "protectedItemName": "VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "api-version": "2021-02-10", + "parameters": { + "properties": { + "protectedItemType": "Microsoft.Compute/virtualMachines", + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.Compute/virtualMachines/netvmtestv2vm1", + "protectionState": "ProtectionStopped" + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/protectedItems/VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/operationResults/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Azure-AsyncOperation": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/protectedItems/VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/operationsStatus/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Retry-After": 60 + } + }, + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PythonSDKBackupTestRg/providers/Microsoft.RecoveryServices/vaults/PySDKBackupTestRsVault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/protectedItems/VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "name": "VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/protectedItems", + "properties": { + "friendlyName": "netvmtestv2vm1", + "virtualMachineId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.Compute/virtualMachines/netvmtestv2vm1", + "protectionStatus": "Healthy", + "protectionState": "ProtectionStopped", + "healthStatus": "Passed", + "lastBackupStatus": "Completed", + "lastBackupTime": "2018-01-22T12:25:32.048723Z", + "protectedItemDataId": "636482643132986882", + "protectedItemType": "Microsoft.Compute/virtualMachines", + "backupManagementType": "AzureIaasVM", + "workloadType": "VM", + "containerName": "iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.Compute/virtualMachines/netvmtestv2vm1", + "policyId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PythonSDKBackupTestRg/providers/Microsoft.RecoveryServices/vaults/PySDKBackupTestRsVault/backupPolicies/testPolicy1", + "lastRecoveryPoint": null + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/TriggerRestore_ALR.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/TriggerRestore_ALR.json new file mode 100644 index 000000000000..768374930705 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/TriggerRestore_ALR.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "netsdktestrg", + "vaultName": "testVault", + "fabricName": "Azure", + "containerName": "IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "protectedItemName": "VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "recoveryPointId": "348916168024334", + "api-version": "2021-02-10", + "parameters": { + "properties": { + "objectType": "IaasVMRestoreWithRehydrationRequest", + "recoveryPointId": "348916168024334", + "recoveryType": "AlternateLocation", + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.Compute/virtualMachines/netvmtestv2vm1", + "targetVirtualMachineId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg2/providers/Microsoft.Compute/virtualmachines/RSMDALRVM981435", + "targetResourceGroupId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg2", + "storageAccountId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRg/providers/Microsoft.Storage/storageAccounts/testingAccount", + "virtualNetworkId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRg/providers/Microsoft.Network/virtualNetworks/testNet", + "subnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRg/providers/Microsoft.Network/virtualNetworks/testNet/subnets/default", + "region": "southeastasia", + "createNewCloudService": false, + "originalStorageAccountOption": false, + "encryptionDetails": { + "encryptionEnabled": false + }, + "recoveryPointRehydrationInfo": { + "rehydrationRetentionDuration": "P7D", + "rehydrationPriority": "High" + } + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.RecoveryServices/vaults/testVault/backupFabrics/Azure/protectionContainers/iaasvmcontainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/protectedItems/vm;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/operationResults/00000000-0000-0000-0000-000000000000?api-version=2017-07-01", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.RecoveryServices/vaults/testVault/backupFabrics/Azure/protectionContainers/iaasvmcontainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/protectedItems/vm;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/operationsStatus/00000000-0000-0000-0000-000000000000?api-version=2017-07-01", + "Retry-After": 60 + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/TriggerRestore_RestoreDisks.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/TriggerRestore_RestoreDisks.json new file mode 100644 index 000000000000..f18beae8204c --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/TriggerRestore_RestoreDisks.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "netsdktestrg", + "vaultName": "testVault", + "fabricName": "Azure", + "containerName": "IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "protectedItemName": "VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "recoveryPointId": "348916168024334", + "api-version": "2021-02-10", + "parameters": { + "properties": { + "objectType": "IaasVMRestoreWithRehydrationRequest", + "recoveryPointId": "348916168024334", + "recoveryType": "RestoreDisks", + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.Compute/virtualMachines/netvmtestv2vm1", + "storageAccountId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testingRg/providers/Microsoft.Storage/storageAccounts/testAccount", + "region": "southeastasia", + "createNewCloudService": true, + "originalStorageAccountOption": false, + "encryptionDetails": { + "encryptionEnabled": false + }, + "recoveryPointRehydrationInfo": { + "rehydrationRetentionDuration": "P7D", + "rehydrationPriority": "Standard" + } + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.RecoveryServices/vaults/testVault/backupFabrics/Azure/protectionContainers/iaasvmcontainer;iaasVMContainerV2;netsdktestrg;netvmtestv2vm1/protectedItems/vm;iaasVMContainerV2;netsdktestrg;netvmtestv2vm1/operationResults/00000000-0000-0000-0000-000000000000?api-version=2020-09-01", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.RecoveryServices/vaults/testVault/backupFabrics/Azure/protectionContainers/iaasvmcontainer;iaasVMContainerV2;netsdktestrg;netvmtestv2vm1/protectedItems/vm;iaasVMContainerV2;netsdktestrg;netvmtestv2vm1/operationsStatus/00000000-0000-0000-0000-000000000000?api-version=2020-09-01", + "Retry-After": 60 + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/ValidateOperation_RestoreDisk.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/ValidateOperation_RestoreDisk.json new file mode 100644 index 000000000000..b4b09dd24322 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureIaasVm/ValidateOperation_RestoreDisk.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "testRG", + "vaultName": "testVault", + "fabricName": "Azure", + "containerName": "IaasVMContainer;iaasvmcontainerv2;testRG;testvmName", + "protectedItemName": "VM;iaasvmcontainerv2;testRG;testvmName", + "recoveryPointId": "348916168024334", + "api-version": "2021-02-10", + "parameters": { + "objectType": "ValidateIaasVMRestoreOperationRequest", + "restoreRequest": { + "recoveryPointId": "348916168024334", + "objectType": "IaasVMRestoreRequest", + "recoveryType": "RestoreDisks", + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.Compute/virtualMachines/netvmtestv2vm1", + "storageAccountId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testingRg/providers/Microsoft.Storage/storageAccounts/testAccount", + "region": "southeastasia", + "createNewCloudService": true, + "originalStorageAccountOption": false, + "encryptionDetails": { + "encryptionEnabled": false + } + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "validateOperationResponse": { + "validationResults": [ + { + "code": "UserErrorCoreCountSubscriptionQuotaReached", + "message": "Core Count subscription quota has been reached.", + "recommendations": [ + "Contact Azure support to increase the limits." + ] + } + ] + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureStorage/ProtectableContainers_List.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureStorage/ProtectableContainers_List.json new file mode 100644 index 000000000000..aa7c2aa352ad --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureStorage/ProtectableContainers_List.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "testRg", + "vaultName": "testvault", + "fabricName": "Azure", + "api-version": "2021-02-10", + "$filter": "backupManagementType eq 'AzureStorage' and workloadType eq 'AzureFileShare'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test-rg/providers/Microsoft.RecoveryServices/vaults/testvault/backupFabrics/Azure/protectableContainers/StorageContainer;storage;test-rg;teststorage", + "name": "StorageContainer;storage;test-rg;testst", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectableContainers", + "properties": { + "friendlyName": "teststorage", + "backupManagementType": "AzureStorage", + "protectableContainerType": "StorageContainer", + "healthStatus": "Healthy", + "containerId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test-rg/providers/Microsoft.Storage/storageAccounts/teststorage" + } + }, + { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test-rg/providers/Microsoft.RecoveryServices/vaults/testvault/backupFabrics/Azure/protectableContainers/StorageContainer;ClassicStorage;test-rg;teststorage", + "name": "StorageContainer;ClassicStorage;test-rg;teststorage", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectableContainers", + "properties": { + "friendlyName": "teststorage", + "backupManagementType": "AzureStorage", + "protectableContainerType": "StorageContainer", + "healthStatus": "Healthy", + "containerId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test-rg/providers/Microsoft.ClassicStorage/storageAccounts/teststorage" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureStorage/ProtectionContainers_Inquire.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureStorage/ProtectionContainers_Inquire.json new file mode 100644 index 000000000000..03c28df9fc81 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureStorage/ProtectionContainers_Inquire.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "test-rg", + "vaultName": "testvault", + "fabricName": "Azure", + "containerName": "storagecontainer;Storage;test-rg;teststorage", + "api-version": "2021-02-10" + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test-rg/providers/Microsoft.RecoveryServices/vaults/testvault/backupFabrics/Azure/protectionContainers/storagecontainer;Storage;test-rg;teststorage/operationResults/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Azure-AsyncOperation": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test-rg/providers/Microsoft.RecoveryServices/vaults/testvault/backupFabrics/Azure/protectionContainers/storagecontainer;Storage;test-rg;teststorage/operationsStatus/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Retry-After": 60 + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureStorage/ProtectionContainers_Inquire_Result.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureStorage/ProtectionContainers_Inquire_Result.json new file mode 100644 index 000000000000..5c78b8fb245e --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureStorage/ProtectionContainers_Inquire_Result.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "test-rg", + "vaultName": "testvault", + "fabricName": "Azure", + "containerName": "VMAppContainer;Compute;testRG;testSQL", + "operationId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-02-10" + }, + "responses": { + "204": {}, + "202": { + "headers": { + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test-rg/providers/Microsoft.RecoveryServices/vaults/testvault/backupFabrics/Azure/protectionContainers/VMAppContainer;Compute;testRG;testSQL/operationResults/00000000-0000-0000-0000-000000000000?api-version=2017-07-01", + "Azure-AsyncOperation": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test-rg/providers/Microsoft.RecoveryServices/vaults/testvault/backupFabrics/Azure/protectionContainers/VMAppContainer;Compute;testRG;testSQL/operationsStatus/00000000-0000-0000-0000-000000000000?api-version=2017-07-01", + "Retry-After": 60 + } + }, + "200": { + "body": { + "name": "VMAppContainer;Compute;testRG;testSQL", + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRg/providers/Microsoft.RecoveryServices/vaults/testVault/backupFabrics/Azure/protectionContainers/VMAppContainer;Compute;testRG;testSQL", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers", + "properties": { + "extendedInfo": { + "hostServerName": "testsql", + "nodesList": [], + "inquiryInfo": { + "status": "Success", + "errorDetail": { + "code": "Success", + "message": "Not Available", + "recommendations": [ + "Not Available" + ] + }, + "inquiryDetails": [ + { + "type": "sql", + "itemCount": 14, + "inquiryValidation": { + "status": "Success", + "errorDetail": { + "code": "Success", + "message": "Not Available", + "recommendations": [ + "Not Available" + ] + } + } + } + ] + } + }, + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.Compute/virtualMachines/testSQL", + "backupManagementType": "AzureWorkload", + "workloadType": null, + "containerType": "VMAppContainer", + "friendlyName": "testSQL" + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureStorage/ProtectionContainers_List.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureStorage/ProtectionContainers_List.json new file mode 100644 index 000000000000..032cf24223b4 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureStorage/ProtectionContainers_List.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "testRg", + "vaultName": "testVault", + "api-version": "2021-02-10", + "fabricName": "Azure", + "$filter": "backupManagementType eq 'AzureWorkload'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/172424a4-d65f-421e-a8de-197d98aabeba/resourcegroups/testrg/providers/microsoft.recoveryservices/vaults/suchandr-test-vault-wcus/backupFabrics/Azure/protectionContainers/StorageContainer;Storage;testrg;suchandrtestsa125", + "name": "StorageContainer;Storage;testrg;suchandrtestsa125", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers", + "properties": { + "sourceResourceId": "/subscriptions/172424a4-d65f-421e-a8de-197d98aabeba/resourceGroups/testrg/providers/Microsoft.Storage/storageAccounts/suchandrtestsa125", + "protectedItemCount": 2, + "friendlyName": "suchandrtestsa125", + "backupManagementType": "AzureStorage", + "registrationStatus": "Registered", + "healthStatus": "Healthy", + "containerType": "StorageContainer" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureStorage/ProtectionContainers_Register.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureStorage/ProtectionContainers_Register.json new file mode 100644 index 000000000000..1c7b1b9f231e --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureStorage/ProtectionContainers_Register.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "test-rg", + "vaultName": "testvault", + "fabricName": "Azure", + "containerName": "VMAppContainer;Compute;testRG;testSQL", + "api-version": "2021-02-10", + "parameters": { + "properties": { + "friendlyName": "testSQL", + "backupManagementType": "AzureWorkload", + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.Compute/virtualMachines/testSQL", + "containerType": "VMAppContainer" + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test-rg/providers/Microsoft.RecoveryServices/vaults/testvault/backupFabrics/Azure/protectionContainers/VMAppContainer;Compute;testRG;testSQL/operationResults/00000000-0000-0000-0000-000000000000?api-version=2017-07-01", + "Azure-AsyncOperation": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test-rg/providers/Microsoft.RecoveryServices/vaults/testvault/backupFabrics/Azure/protectionContainers/VMAppContainer;Compute;testRG;testSQL/operationsStatus/00000000-0000-0000-0000-000000000000?api-version=2017-07-01", + "Retry-After": 60 + } + }, + "200": { + "body": { + "name": "VMAppContainer;Compute;testRG;testSQL", + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRg/providers/Microsoft.RecoveryServices/vaults/testVault/backupFabrics/Azure/protectionContainers/VMAppContainer;Compute;testRG;testSQL", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers", + "properties": { + "extendedInfo": { + "hostServerName": "testsql", + "nodesList": [], + "inquiryInfo": { + "status": "Success", + "errorDetail": { + "code": "Success", + "message": "Not Available", + "recommendations": [ + "Not Available" + ] + }, + "inquiryDetails": [ + { + "type": "sql", + "itemCount": 14, + "inquiryValidation": { + "status": "Success", + "errorDetail": { + "code": "Success", + "message": "Not Available", + "recommendations": [ + "Not Available" + ] + } + } + } + ] + } + }, + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.Compute/virtualMachines/testSQL", + "backupManagementType": "AzureWorkload", + "workloadType": null, + "containerType": "VMAppContainer", + "friendlyName": "testSQL" + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureWorkload/BackupPolicies_List.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureWorkload/BackupPolicies_List.json new file mode 100644 index 000000000000..30d62c811c1d --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureWorkload/BackupPolicies_List.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "api-version": "2021-02-10", + "$filter": "backupManagementType eq 'AzureWorkload'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupPolicies/HourlyLogBackup", + "name": "HourlyLogBackup", + "type": "Microsoft.RecoveryServices/vaults/backupPolicies", + "properties": { + "backupManagementType": "AzureWorkload", + "workLoadType": "SQLDataBase", + "settings": { + "timeZone": "UTC", + "issqlcompression": false + }, + "subProtectionPolicy": [ + { + "policyType": "Full", + "schedulePolicy": { + "schedulePolicyType": "SimpleSchedulePolicy", + "scheduleRunFrequency": "Daily", + "scheduleRunTimes": [ + "2017-12-05T19:00:00Z" + ], + "scheduleWeeklyFrequency": 0 + }, + "retentionPolicy": { + "retentionPolicyType": "LongTermRetentionPolicy", + "dailySchedule": { + "retentionTimes": [ + "2017-12-05T19:00:00Z" + ], + "retentionDuration": { + "count": 30, + "durationType": "Days" + } + } + } + }, + { + "policyType": "Log", + "schedulePolicy": { + "schedulePolicyType": "LogSchedulePolicy", + "scheduleFrequencyInMins": 60 + }, + "retentionPolicy": { + "retentionPolicyType": "SimpleRetentionPolicy", + "retentionDuration": { + "count": 30, + "durationType": "Days" + } + } + } + ], + "protectedItemsCount": 0 + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureWorkload/BackupProtectionIntent_Delete.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureWorkload/BackupProtectionIntent_Delete.json new file mode 100644 index 000000000000..bf174a6bd704 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureWorkload/BackupProtectionIntent_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myRG", + "vaultName": "myVault", + "fabricName": "Azure", + "intentObjectName": "249D9B07-D2EF-4202-AA64-65F35418564E", + "api-version": "2021-02-10", + "parameters": {} + }, + "responses": { + "204": {} + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureWorkload/BackupProtectionIntent_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureWorkload/BackupProtectionIntent_Get.json new file mode 100644 index 000000000000..8fea81cccdb0 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureWorkload/BackupProtectionIntent_Get.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myRG", + "vaultName": "myVault", + "fabricName": "Azure", + "intentObjectName": "249D9B07-D2EF-4202-AA64-65F35418564E", + "api-version": "2021-02-10", + "parameters": {} + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myRG/providers/Microsoft.RecoveryServices/vaults/myVault/backupFabrics/Azure/backupProtectionIntent/249D9B07-D2EF-4202-AA64-65F35418564E", + "name": "249D9B07-D2EF-4202-AA64-65F35418564E", + "type": "Microsoft.RecoveryServices/vaults/backupProtectionIntent", + "properties": { + "backupManagementType": "AzureWorkload", + "policyId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.RecoveryServices/vaults/myVault/backupPolicies/myPolicy", + "itemId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.RecoveryServices/vaults/myVault/backupProtectionContainer/VMAppContainer;Compute;testVmName/backupProtectableItems/SQLInstance;MSSQLSERVER" + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureWorkload/BackupProtectionIntent_List.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureWorkload/BackupProtectionIntent_List.json new file mode 100644 index 000000000000..2b9b1ca0ccee --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureWorkload/BackupProtectionIntent_List.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myRG", + "vaultName": "myVault", + "api-version": "2021-02-10", + "parameters": {} + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myRG/providers/Microsoft.RecoveryServices/vaults/myVault/backupFabrics/Azure/backupProtectionIntent/249D9B07-D2EF-4202-AA64-65F35418564E", + "name": "249D9B07-D2EF-4202-AA64-65F35418564E", + "type": "Microsoft.RecoveryServices/vaults/backupProtectionIntent", + "properties": { + "backupManagementType": "AzureWorkload", + "policyId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.RecoveryServices/vaults/myVault/backupPolicies/myPolicy", + "itemId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.RecoveryServices/vaults/myVault/backupProtectionContainer/VMAppContainer;Compute;testVmName/backupProtectableItems/SQLInstance;MSSQLSERVER" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureWorkload/BackupWorkloadItems_List.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureWorkload/BackupWorkloadItems_List.json new file mode 100644 index 000000000000..d8e3055020e8 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureWorkload/BackupWorkloadItems_List.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "testRg", + "vaultName": "suchandr-seacan-rsv", + "api-version": "2021-02-10", + "$filter": "backupManagementType eq 'AzureWorkload'", + "fabricName": "Azure", + "containerName": "VMAppContainer;Compute;bvtdtestag;sqlserver-1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/testRg/providers/Microsoft.RecoveryServices/vaults/suchandr-seacan-rsv/backupFabrics/Azure/protectionContainers/VMAppContainer;Compute;bvtdtestag;sqlserver-1/protectableItems/SQLInstance;MSSQLSERVER", + "name": "SQLInstance;MSSQLSERVER", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/items", + "properties": { + "dataDirectoryPaths": [ + { + "type": "Data", + "path": "F:\\DATA\\" + }, + { + "type": "Log", + "path": "F:\\LOG\\" + } + ], + "parentName": "MSSQLSERVER", + "serverName": "sqlserver-1.contoso.com", + "isAutoProtectable": true, + "subinquireditemcount": 0, + "subWorkloadItemCount": 3, + "backupManagementType": "AzureWorkload", + "workloadType": "SQL", + "workloadItemType": "SQLInstance", + "friendlyName": "MSSQLSERVER", + "protectionState": "NotProtected" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureWorkload/ProtectionContainers_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureWorkload/ProtectionContainers_Get.json new file mode 100644 index 000000000000..48b0841ccc55 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureWorkload/ProtectionContainers_Get.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "testRg", + "vaultName": "testVault", + "fabricName": "Azure", + "containerName": "VMAppContainer;Compute;testRG;testSQL", + "api-version": "2021-02-10", + "$filter": "backupManagementType eq 'AzureWorkload'" + }, + "responses": { + "200": { + "body": { + "name": "VMAppContainer;Compute;testRG;testSQL", + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRg/providers/Microsoft.RecoveryServices/vaults/testVault/backupFabrics/Azure/protectionContainers/VMAppContainer;Compute;testRG;testSQL", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers", + "properties": { + "extendedInfo": { + "hostServerName": "testsql", + "nodesList": [], + "inquiryInfo": { + "status": "Success", + "errorDetail": { + "code": "Success", + "message": "Not Available", + "recommendations": [ + "Not Available" + ] + }, + "inquiryDetails": [ + { + "type": "sql", + "itemCount": 14, + "inquiryValidation": { + "status": "Success", + "errorDetail": { + "code": "Success", + "message": "Not Available", + "recommendations": [ + "Not Available" + ] + } + } + } + ] + } + }, + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.Compute/virtualMachines/testSQL", + "backupManagementType": "AzureWorkload", + "workloadType": null, + "containerType": "VMAppContainer", + "friendlyName": "testSQL" + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureWorkload/ProtectionContainers_Unregister.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureWorkload/ProtectionContainers_Unregister.json new file mode 100644 index 000000000000..d367bd3b3daa --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureWorkload/ProtectionContainers_Unregister.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "testRg", + "vaultName": "testVault", + "api-version": "2021-02-10", + "fabricName": "Azure", + "containerName": "storagecontainer;Storage;test-rg;teststorage" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test-rg/providers/Microsoft.RecoveryServices/vaults/testvault/backupFabrics/Azure/protectionContainers/storagecontainer;Storage;test-rg;teststorage/operationResults/00000000-0000-0000-0000-000000000000?api-version=2017-07-01", + "Azure-AsyncOperation": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test-rg/providers/Microsoft.RecoveryServices/vaults/testvault/backupFabrics/Azure/protectionContainers/storagecontainer;Storage;test-rg;teststorage/operationsStatus/00000000-0000-0000-0000-000000000000?api-version=2017-07-01", + "Retry-After": 60 + } + }, + "204": {} + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureWorkload/ProtectionPolicies_CreateOrUpdate_Complex.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureWorkload/ProtectionPolicies_CreateOrUpdate_Complex.json new file mode 100644 index 000000000000..9e860d06d8db --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/AzureWorkload/ProtectionPolicies_CreateOrUpdate_Complex.json @@ -0,0 +1,260 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "policyName": "testPolicy1", + "api-version": "2021-02-10", + "parameters": { + "properties": { + "backupManagementType": "AzureWorkload", + "workLoadType": "SQLDataBase", + "settings": { + "timeZone": "Pacific Standard Time", + "issqlcompression": false + }, + "subProtectionPolicy": [ + { + "policyType": "Full", + "schedulePolicy": { + "schedulePolicyType": "SimpleSchedulePolicy", + "scheduleRunFrequency": "Weekly", + "scheduleRunTimes": [ + "2018-01-24T10:00:00Z" + ], + "scheduleRunDays": [ + "Sunday", + "Tuesday" + ] + }, + "retentionPolicy": { + "retentionPolicyType": "LongTermRetentionPolicy", + "weeklySchedule": { + "daysOfTheWeek": [ + "Sunday", + "Tuesday" + ], + "retentionTimes": [ + "2018-01-24T10:00:00Z" + ], + "retentionDuration": { + "count": 2, + "durationType": "Weeks" + } + }, + "monthlySchedule": { + "retentionScheduleFormatType": "Weekly", + "retentionScheduleWeekly": { + "daysOfTheWeek": [ + "Sunday" + ], + "weeksOfTheMonth": [ + "Second" + ] + }, + "retentionTimes": [ + "2018-01-24T10:00:00Z" + ], + "retentionDuration": { + "count": 1, + "durationType": "Months" + } + }, + "yearlySchedule": { + "retentionScheduleFormatType": "Weekly", + "monthsOfYear": [ + "January", + "June", + "December" + ], + "retentionScheduleWeekly": { + "daysOfTheWeek": [ + "Sunday" + ], + "weeksOfTheMonth": [ + "Last" + ] + }, + "retentionTimes": [ + "2018-01-24T10:00:00Z" + ], + "retentionDuration": { + "count": 1, + "durationType": "Years" + } + } + } + }, + { + "policyType": "Differential", + "schedulePolicy": { + "schedulePolicyType": "SimpleSchedulePolicy", + "scheduleRunFrequency": "Weekly", + "scheduleRunTimes": [ + "2018-01-24T10:00:00Z" + ], + "scheduleRunDays": [ + "Friday" + ] + }, + "retentionPolicy": { + "retentionPolicyType": "SimpleRetentionPolicy", + "retentionDuration": { + "count": 8, + "durationType": "Days" + } + } + }, + { + "policyType": "Log", + "schedulePolicy": { + "schedulePolicyType": "LogSchedulePolicy", + "scheduleFrequencyInMins": 60 + }, + "retentionPolicy": { + "retentionPolicyType": "SimpleRetentionPolicy", + "retentionDuration": { + "count": 7, + "durationType": "Days" + } + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupPolicies/testPolicy1", + "name": "testPolicy1", + "type": "Microsoft.RecoveryServices/vaults/backupPolicies", + "properties": { + "backupManagementType": "AzureWorkload", + "workLoadType": "SQLDataBase", + "settings": { + "timeZone": "Pacific Standard Time", + "issqlcompression": false + }, + "subProtectionPolicy": [ + { + "policyType": "Full", + "schedulePolicy": { + "schedulePolicyType": "SimpleSchedulePolicy", + "scheduleRunFrequency": "Weekly", + "scheduleRunDays": [ + "Sunday", + "Tuesday" + ], + "scheduleRunTimes": [ + "2018-01-24T10:00:00Z" + ], + "scheduleWeeklyFrequency": 0 + }, + "retentionPolicy": { + "retentionPolicyType": "LongTermRetentionPolicy", + "weeklySchedule": { + "daysOfTheWeek": [ + "Sunday", + "Tuesday" + ], + "retentionTimes": [ + "2018-01-24T10:00:00Z" + ], + "retentionDuration": { + "count": 2, + "durationType": "Weeks" + } + }, + "monthlySchedule": { + "retentionScheduleFormatType": "Weekly", + "retentionScheduleWeekly": { + "daysOfTheWeek": [ + "Sunday" + ], + "weeksOfTheMonth": [ + "Second" + ] + }, + "retentionTimes": [ + "2018-01-24T10:00:00Z" + ], + "retentionDuration": { + "count": 1, + "durationType": "Months" + } + }, + "yearlySchedule": { + "retentionScheduleFormatType": "Weekly", + "monthsOfYear": [ + "January", + "June", + "December" + ], + "retentionScheduleWeekly": { + "daysOfTheWeek": [ + "Sunday" + ], + "weeksOfTheMonth": [ + "Last" + ] + }, + "retentionTimes": [ + "2018-01-24T10:00:00Z" + ], + "retentionDuration": { + "count": 1, + "durationType": "Years" + } + } + } + }, + { + "policyType": "Differential", + "schedulePolicy": { + "schedulePolicyType": "SimpleSchedulePolicy", + "scheduleRunFrequency": "Weekly", + "scheduleRunDays": [ + "Friday" + ], + "scheduleRunTimes": [ + "2018-01-24T10:00:00Z" + ], + "scheduleWeeklyFrequency": 0 + }, + "retentionPolicy": { + "retentionPolicyType": "SimpleRetentionPolicy", + "retentionDuration": { + "count": 8, + "durationType": "Days" + } + } + }, + { + "policyType": "Log", + "schedulePolicy": { + "schedulePolicyType": "LogSchedulePolicy", + "scheduleFrequencyInMins": 60 + }, + "retentionPolicy": { + "retentionPolicyType": "SimpleRetentionPolicy", + "retentionDuration": { + "count": 7, + "durationType": "Days" + } + } + } + ], + "protectedItemsCount": 0 + } + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupPolicies/testPolicy1/operationResults/00000000-0000-0000-0000-000000000000?api-version=2016-06-01", + "Azure-AsyncOperation": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupPolicies/testPolicy1/operations/00000000-0000-0000-0000-000000000000?api-version=2016-06-01", + "Retry-After": 60 + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/BackupDataMove/BackupDataMoveOperationStatus_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/BackupDataMove/BackupDataMoveOperationStatus_Get.json new file mode 100644 index 000000000000..a85902372773 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/BackupDataMove/BackupDataMoveOperationStatus_Get.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "sourceRG", + "vaultName": "source-rsv", + "operationId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-02-10" + }, + "responses": { + "200": { + "body": { + "id": "0f48183b-0a44-4dca-aec1-bba5daab888a", + "name": "0f48183b-0a44-4dca-aec1-bba5daab888a", + "status": "Succeeded", + "startTime": "2020-02-27T11:59:47.5901592Z", + "endTime": "2020-02-27T11:59:47.5901592Z" + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/BackupDataMove/PrepareDataMoveOperationResult_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/BackupDataMove/PrepareDataMoveOperationResult_Get.json new file mode 100644 index 000000000000..355cd1e84ec1 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/BackupDataMove/PrepareDataMoveOperationResult_Get.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "sourceRG", + "vaultName": "source-rsv", + "operationId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-02-10" + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sourceRG/providers/Microsoft.RecoveryServices/vaults/source-rsv/backupStorageConfig/vaultStorageConfig/operationResult/00000000-0000-0000-0000-000000000000?api-version=2020-07-01-preview", + "Azure-AsyncOperation": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sourceRG/providers/Microsoft.RecoveryServices/vaults/source-rsv/backupStorageConfig/vaultStorageConfig/operationStatus/00000000-0000-0000-0000-000000000000?api-version=2020-07-01-preview", + "Retry-After": 60 + } + }, + "200": { + "body": { + "objectType": "" + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/BackupDataMove/PrepareDataMove_Post.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/BackupDataMove/PrepareDataMove_Post.json new file mode 100644 index 000000000000..dc1f8e54acf0 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/BackupDataMove/PrepareDataMove_Post.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "sourceRG", + "vaultName": "source-rsv", + "api-version": "2021-02-10", + "parameters": { + "targetResourceId": "/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/targetRG/providers/Microsoft.RecoveryServices/vaults/target-rsv", + "targetRegion": "USGov Virginia", + "dataMoveLevel": "Vault" + } + }, + "responses": { + "200": {}, + "202": { + "headers": { + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sourceRG/providers/Microsoft.RecoveryServices/vaults/source-rsv/backupStorageConfig/vaultStorageConfig/prepareDataMove/operationResult/00000000-0000-0000-0000-000000000000?api-version=2020-07-01-preview", + "Azure-AsyncOperation": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sourceRG/providers/Microsoft.RecoveryServices/vaults/source-rsv/backupStorageConfig/vaultStorageConfig/backupDataMove/operationStatus/00000000-0000-0000-0000-000000000000?api-version=2020-07-01-preview", + "Retry-After": 60 + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/BackupDataMove/TriggerDataMove_Post.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/BackupDataMove/TriggerDataMove_Post.json new file mode 100644 index 000000000000..18a0894615ab --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/BackupDataMove/TriggerDataMove_Post.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "targetRG", + "vaultName": "target-rsv", + "api-version": "2021-02-10", + "parameters": { + "sourceResourceId": "/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/sourceRG/providers/Microsoft.RecoveryServices/vaults/source-rsv", + "sourceRegion": "USGov Iowa", + "dataMoveLevel": "Vault", + "correlationId": "MTg2OTcyMzM4NzYyMjc1NDY3Nzs1YmUzYmVmNi04YjJiLTRhOTItOTllYi01NTM0MDllYjk2NjE=" + } + }, + "responses": { + "200": {}, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sourceRG/providers/Microsoft.RecoveryServices/vaults/source-rsv/backupStorageConfig/vaultStorageConfig/backupDataMove/operationStatus/00000000-0000-0000-0000-000000000000?api-version=2020-07-01-preview", + "Retry-After": 60 + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/BackupResourceEncryptionConfig_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/BackupResourceEncryptionConfig_Get.json new file mode 100644 index 000000000000..ddec5b6d27ae --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/BackupResourceEncryptionConfig_Get.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "rishgrp", + "vaultName": "rishTestVault", + "api-version": "2021-02-10" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rishgrp/providers/Microsoft.RecoveryServicesBVTD2/vaults/rishTestVault/backupEncryptionConfigs/backupResourceEncryptionConfig", + "name": "backupResourceEncryptionConfig", + "type": "Microsoft.RecoveryServices/vaults/backupEncryptionConfigs", + "properties": { + "encryptionAtRestType": "CustomerManaged", + "keyUri": "https://gktestkv1.vault.azure.net/keys/Test1/ed2e8cdc7f86477ebf0c6462b504a9ed", + "subscriptionId": "1a2311d9-66f5-47d3-a9fb-7a37da63934b", + "lastUpdateStatus": "Succeeded", + "infrastructureEncryptionState": "Disabled" + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/BackupResourceEncryptionConfig_Put.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/BackupResourceEncryptionConfig_Put.json new file mode 100644 index 000000000000..c0722adef902 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/BackupResourceEncryptionConfig_Put.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "test-rg", + "vaultName": "source-rsv", + "api-version": "2021-02-10", + "parameters": { + "properties": { + "encryptionAtRestType": "CustomerManaged", + "keyUri": "https://gktestkv1.vault.azure.net/keys/Test1/ed2e8cdc7f86477ebf0c6462b504a9ed", + "subscriptionId": "1a2311d9-66f5-47d3-a9fb-7a37da63934b", + "infrastructureEncryptionState": "true" + } + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/BackupProtectedItem_UsageSummary_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/BackupProtectedItem_UsageSummary_Get.json new file mode 100644 index 000000000000..76ede68ac4e0 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/BackupProtectedItem_UsageSummary_Get.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "testRG", + "vaultName": "testVault", + "api-version": "2021-02-10", + "$filter": "type eq 'BackupProtectedItemCountSummary'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "unit": "Count", + "currentValue": 7, + "limit": -1, + "name": { + "value": "AzureIaasVM", + "localizedValue": "Azure Virtual Machine" + } + }, + { + "unit": "Count", + "currentValue": 3, + "limit": -1, + "name": { + "value": "MAB", + "localizedValue": "Azure Backup Agent" + } + }, + { + "unit": "Count", + "currentValue": 1, + "limit": -1, + "name": { + "value": "AzureBackupServer", + "localizedValue": "Azure Backup Server" + } + }, + { + "unit": "Count", + "currentValue": 2, + "limit": -1, + "name": { + "value": "AzureStorage", + "localizedValue": "Azure Storage (Azure Files)" + } + }, + { + "unit": "Count", + "currentValue": 2, + "limit": -1, + "name": { + "value": "AzureWorkload", + "localizedValue": "SQL in Azure VM" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/BackupProtectionContainers_UsageSummary_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/BackupProtectionContainers_UsageSummary_Get.json new file mode 100644 index 000000000000..461a390e688a --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/BackupProtectionContainers_UsageSummary_Get.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "testRG", + "vaultName": "testVault", + "api-version": "2021-02-10", + "$filter": "type eq 'BackupProtectionContainerCountSummary'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "unit": "Count", + "currentValue": 2, + "limit": -1, + "name": { + "value": "AzureBackupServer", + "localizedValue": "Azure Backup Server" + } + }, + { + "unit": "Count", + "currentValue": 3, + "limit": -1, + "name": { + "value": "MAB", + "localizedValue": "Azure Backup Agent" + } + }, + { + "unit": "Count", + "currentValue": 1, + "limit": -1, + "name": { + "value": "AzureWorkload", + "localizedValue": "SQL in Azure VM" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/BackupResourceVaultConfigs_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/BackupResourceVaultConfigs_Get.json new file mode 100644 index 000000000000..ee1c6cfc4e06 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/BackupResourceVaultConfigs_Get.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "SwaggerTest", + "api-version": "2021-02-10" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/SwaggerTest/backupconfig/vaultconfig", + "name": "vaultconfig", + "type": "Microsoft.RecoveryServices/vaults/backupconfig", + "properties": { + "enhancedSecurityState": "Enabled" + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/BackupResourceVaultConfigs_Patch.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/BackupResourceVaultConfigs_Patch.json new file mode 100644 index 000000000000..f352ea89ff96 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/BackupResourceVaultConfigs_Patch.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "SwaggerTest", + "api-version": "2021-02-10", + "parameters": { + "properties": { + "enhancedSecurityState": "Enabled" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/SwaggerTest/backupconfig/vaultconfig", + "name": "vaultconfig", + "type": "Microsoft.RecoveryServices/vaults/backupconfig", + "properties": { + "enhancedSecurityState": "Enabled" + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/BackupResourceVaultConfigs_Put.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/BackupResourceVaultConfigs_Put.json new file mode 100644 index 000000000000..f8ca5700a5a5 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/BackupResourceVaultConfigs_Put.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "SwaggerTest", + "api-version": "2021-02-10", + "parameters": { + "properties": { + "enhancedSecurityState": "Enabled", + "softDeleteFeatureState": "Enabled" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/SwaggerTest/backupconfig/vaultconfig", + "name": "vaultconfig", + "type": "Microsoft.RecoveryServices/vaults/backupconfig", + "properties": { + "enhancedSecurityState": "Enabled", + "softDeleteFeatureState": "Enabled" + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/BackupSecurityPin_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/BackupSecurityPin_Get.json new file mode 100644 index 000000000000..0dd8dd4525a5 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/BackupSecurityPin_Get.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "SwaggerTest", + "api-version": "2021-02-10" + }, + "responses": { + "200": { + "body": { + "token": "200432", + "expiryTimeInUtcTicks": 636495150137443121, + "securityPIN": "200432" + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/CancelJobOperationResult.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/CancelJobOperationResult.json new file mode 100644 index 000000000000..937e0155f31c --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/CancelJobOperationResult.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "jobName": "00000000-0000-0000-0000-000000000000", + "operationId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-02-10" + }, + "responses": { + "204": {}, + "200": {}, + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupJobs/00000000-0000-0000-0000-000000000000/operationResults/00000000-0000-0000-0000-000000000000?api-version=2017-07-01", + "Retry-After": 60 + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/ExportJobsOperationResult.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/ExportJobsOperationResult.json new file mode 100644 index 000000000000..ceb23c85ef35 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/ExportJobsOperationResult.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "operationId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-02-10" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "operation": { + "objectType": "ExportJobsOperationResultInfo", + "blobUrl": "https://azureblob.blob.core.windows.net/reportcontainer/exportjobsreportc00000000-0000-0000-0000-000000000000", + "blobSasKey": "?sv=2014-02-14&sr=b&sig=&st=2017-11-29T07%3A53%3A34Z&se=2017-11-29T08%3A03%3A34Z&sp=r" + }, + "headers": {} + } + }, + "202": { + "headers": { + "Retry-After": 60, + "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupJobs/operationResults/00000000-0000-0000-0000-000000000000?api-version=2017-07-01" + }, + "body": { + "operation": { + "objectType": "ExportJobsOperationResultInfo" + }, + "headers": { + "Location": [ + "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupJobs/operationResults/00000000-0000-0000-0000-000000000000?api-version=2017-07-01" + ], + "Retry-After": [ + "60" + ] + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/GetJobDetails.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/GetJobDetails.json new file mode 100644 index 000000000000..ecbb307d5beb --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/GetJobDetails.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "jobName": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-02-10" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupJobs/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "type": "Microsoft.RecoveryServices/vaults/backupJobs", + "properties": { + "jobType": "AzureIaaSVMJob", + "duration": "PT9.8782791S", + "virtualMachineVersion": "Compute", + "extendedInfo": { + "tasksList": [ + { + "taskId": "Take Snapshot", + "duration": "PT0S", + "status": "InProgress" + }, + { + "taskId": "Transfer data to vault", + "duration": "PT0S", + "status": "NotStarted" + } + ], + "propertyBag": { + "VM Name": "testvm" + } + }, + "entityFriendlyName": "testvm", + "backupManagementType": "AzureIaasVM", + "operation": "Backup", + "status": "InProgress", + "startTime": "2017-08-03T05:31:07.014604Z", + "activityId": "00000000-0000-0000-0000-000000000000" + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/ListJobs.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/ListJobs.json new file mode 100644 index 000000000000..587483511113 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/ListJobs.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "api-version": "2021-02-10" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupJobs/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "type": "Microsoft.RecoveryServices/vaults/backupJobs", + "properties": { + "jobType": "AzureIaaSVMJob", + "duration": "PT12.4272909S", + "virtualMachineVersion": "Compute", + "entityFriendlyName": "testvm", + "backupManagementType": "AzureIaasVM", + "operation": "Backup", + "status": "InProgress", + "startTime": "2017-08-03T05:31:07.014604Z", + "activityId": "00000000-0000-0000-0000-000000000000" + } + }, + { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupJobs/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "type": "Microsoft.RecoveryServices/vaults/backupJobs", + "properties": { + "jobType": "AzureIaaSVMJob", + "duration": "PT31.3066291S", + "virtualMachineVersion": "Compute", + "entityFriendlyName": "testvm", + "backupManagementType": "AzureIaasVM", + "operation": "ConfigureBackup", + "status": "Completed", + "startTime": "2017-08-03T05:30:32.4487085Z", + "endTime": "2017-08-03T05:31:03.7553376Z", + "activityId": "00000000-0000-0000-0000-000000000000" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/ListJobsWithAllSupportedFilters.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/ListJobsWithAllSupportedFilters.json new file mode 100644 index 000000000000..f7f2818697b4 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/ListJobsWithAllSupportedFilters.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "api-version": "2021-02-10", + "$filter": "startTime eq '2016-01-01 00:00:00 AM' and endTime eq '2017-11-29 00:00:00 AM' and operation eq 'Backup' and backupManagementType eq 'AzureIaasVM' and status eq 'InProgress'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupJobs/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "type": "Microsoft.RecoveryServices/vaults/backupJobs", + "properties": { + "jobType": "AzureIaaSVMJob", + "duration": "PT12.4272909S", + "virtualMachineVersion": "Compute", + "entityFriendlyName": "testvm", + "backupManagementType": "AzureIaasVM", + "operation": "Backup", + "status": "InProgress", + "startTime": "2017-08-03T05:31:07.014604Z", + "activityId": "00000000-0000-0000-0000-000000000000" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/ListJobsWithStartTimeAndEndTimeFilters.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/ListJobsWithStartTimeAndEndTimeFilters.json new file mode 100644 index 000000000000..1814d70e616a --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/ListJobsWithStartTimeAndEndTimeFilters.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "api-version": "2021-02-10", + "$filter": "startTime eq '2016-01-01 00:00:00 AM' and endTime eq '2017-11-29 00:00:00 AM'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupJobs/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "type": "Microsoft.RecoveryServices/vaults/backupJobs", + "properties": { + "jobType": "AzureIaaSVMJob", + "duration": "PT12.4272909S", + "virtualMachineVersion": "Compute", + "entityFriendlyName": "testvm", + "backupManagementType": "AzureIaasVM", + "operation": "Backup", + "status": "InProgress", + "startTime": "2017-08-03T05:31:07.014604Z", + "activityId": "00000000-0000-0000-0000-000000000000" + } + }, + { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupJobs/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "type": "Microsoft.RecoveryServices/vaults/backupJobs", + "properties": { + "jobType": "AzureIaaSVMJob", + "duration": "PT31.3066291S", + "virtualMachineVersion": "Compute", + "entityFriendlyName": "testvm", + "backupManagementType": "AzureIaasVM", + "operation": "ConfigureBackup", + "status": "Completed", + "startTime": "2017-08-03T05:30:32.4487085Z", + "endTime": "2017-08-03T05:31:03.7553376Z", + "activityId": "00000000-0000-0000-0000-000000000000" + } + } + ], + "nextLink": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupJobs?api-version=2017-07-01&%24filter=startTime+eq+%272016-01-01+00%3a00%3a00+AM%27+and+endTime+eq+%272017-11-29+00%3a00%3a00+AM%27&%24skiptoken=%3c%3fxml+version%3d%221.0%22+encoding%3d%22utf-16%22%3f%3e%0d%0a%3cContinuationToken%3e%0d%0a++%3cContinuationToken%3e%0d%0a++++%3cVersion%3e2.0%3c%2fVersion%3e%0d%0a++++%3cType%3eTable%3c%2fType%3e%0d%0a++++%3cNextPartitionKey%3e1!28!NzI5MTk0OTM1MDkwNjEwODQzMA--%3c%2fNextPartitionKey%3e%0d%0a++++%3cNextRowKey%3e1!108!am9ic3N0YXJ0dGltZWluZGV4XzBfMjUxODkxNDYzNTI2NjE5Nzg5OF8wXzYwOWZkM2JmLTU4MzctNDFkYi1iMjExLTY1MzliNDNlZjM1OA--%3c%2fNextRowKey%3e%0d%0a++++%3cTargetLocation%3ePrimary%3c%2fTargetLocation%3e%0d%0a++%3c%2fContinuationToken%3e%0d%0a%3c%2fContinuationToken%3e" + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/ProtectedItem_Delete.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/ProtectedItem_Delete.json new file mode 100644 index 000000000000..28a37b6ec416 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/ProtectedItem_Delete.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "PythonSDKBackupTestRg", + "vaultName": "PySDKBackupTestRsVault", + "fabricName": "Azure", + "containerName": "iaasvmcontainer;iaasvmcontainerv2;pysdktestrg;pysdktestv2vm1", + "protectedItemName": "vm;iaasvmcontainerv2;pysdktestrg;pysdktestv2vm1", + "api-version": "2021-02-10" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PythonSDKBackupTestRg/providers/Microsoft.RecoveryServices/vaults/PySDKBackupTestRsVault/backupOperations/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PythonSDKBackupTestRg/providers/Microsoft.RecoveryServices/vaults/PySDKBackupTestRsVault/backupOperationResults/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Retry-After": 60 + } + }, + "204": {} + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/ProtectedItem_Delete_OperationResult.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/ProtectedItem_Delete_OperationResult.json new file mode 100644 index 000000000000..6e066f578dcf --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/ProtectedItem_Delete_OperationResult.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "PythonSDKBackupTestRg", + "vaultName": "PySDKBackupTestRsVault", + "operationId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-02-10" + }, + "responses": { + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PythonSDKBackupTestRg/providers/Microsoft.RecoveryServices/vaults/PySDKBackupTestRsVault/backupOperations/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PythonSDKBackupTestRg/providers/Microsoft.RecoveryServices/vaults/PySDKBackupTestRsVault/backupOperationResults/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Retry-After": 60 + } + }, + "200": {}, + "204": {} + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/ProtectedItem_Delete_OperationStatus.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/ProtectedItem_Delete_OperationStatus.json new file mode 100644 index 000000000000..c5af59d52592 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/ProtectedItem_Delete_OperationStatus.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "PythonSDKBackupTestRg", + "vaultName": "PySDKBackupTestRsVault", + "operationId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-02-10" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "status": "InProgress", + "startTime": "2017-08-03T06:52:53.886027Z", + "endTime": "0001-01-01T00:00:00.00000Z" + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/RefreshContainers.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/RefreshContainers.json new file mode 100644 index 000000000000..a04d8264065d --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/RefreshContainers.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "fabricName": "Azure", + "api-version": "2021-02-10" + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupFabrics/Azure/operationResults/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Retry-After": 60 + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/RefreshContainers_OperationResults.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/RefreshContainers_OperationResults.json new file mode 100644 index 000000000000..16ec55df3eb3 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/RefreshContainers_OperationResults.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "fabricName": "Azure", + "operationId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-02-10" + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupFabrics/Azure/operationResults/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Retry-After": 60 + } + }, + "204": {} + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/TriggerBackup_Post.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/TriggerBackup_Post.json new file mode 100644 index 000000000000..7f8729d6c03e --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/TriggerBackup_Post.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "linuxRsVaultRG", + "vaultName": "linuxRsVault", + "fabricName": "Azure", + "containerName": "IaasVMContainer;iaasvmcontainerv2;testrg;v1win2012r", + "protectedItemName": "VM;iaasvmcontainerv2;testrg;v1win2012r", + "api-version": "2021-02-10", + "parameters": { + "properties": { + "objectType": "IaasVMBackupRequest" + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/linuxRsVaultRG/providers/Microsoft.RecoveryServices/vaults/linuxRsVault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainer;testrg;v1win2012r/protectedItems/VM;iaasvmcontainer;testrg;v1win2012r/operationResults/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Azure-AsyncOperation": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/linuxRsVaultRG/providers/Microsoft.RecoveryServices/vaults/linuxRsVault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainer;testrg;v1win2012r/protectedItems/VM;iaasvmcontainer;testrg;v1win2012r/operationsStatus/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Retry-After": 60 + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/TriggerCancelJob.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/TriggerCancelJob.json new file mode 100644 index 000000000000..8d5493977e67 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/TriggerCancelJob.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "jobName": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-02-10" + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupJobs/00000000-0000-0000-0000-000000000000/operationResults/00000000-0000-0000-0000-000000000000?api-version=2017-07-01", + "Retry-After": 60 + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/TriggerExportJobs.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/TriggerExportJobs.json new file mode 100644 index 000000000000..013dcf611438 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Common/TriggerExportJobs.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "api-version": "2021-02-10" + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupJobs/operationResults/00000000-0000-0000-0000-000000000000?api-version=2017-07-01", + "Retry-After": 60 + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Dpm/BackupEngines_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Dpm/BackupEngines_Get.json new file mode 100644 index 000000000000..1bfe928180e0 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Dpm/BackupEngines_Get.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "testRG", + "vaultName": "testVault", + "backupEngineName": "testServer", + "api-version": "2021-02-10" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.RecoveryServices/vaults/testVault/backupEngines/testServer", + "name": "testServer", + "type": "Microsoft.RecoveryServices/vaults/backupEngines", + "properties": { + "backupEngineType": "DpmBackupEngine", + "dpmVersion": "5.1.348.0", + "isDpmUpgradeAvailable": false, + "azureBackupAgentVersion": "2.0.9532.0", + "isAzureBackupAgentUpgradeAvailable": false, + "registrationStatus": "Registered", + "backupEngineState": "Active", + "friendlyName": "testServer", + "extendedInfo": { + "protectedItemsCount": 35, + "protectedServersCount": 21, + "diskCount": 5, + "availableDiskSpace": 50, + "usedDiskSpace": 20 + } + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Dpm/BackupEngines_List.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Dpm/BackupEngines_List.json new file mode 100644 index 000000000000..580935cf1ad1 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Dpm/BackupEngines_List.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "testRG", + "vaultName": "testVault", + "api-version": "2021-02-10" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.RecoveryServices/vaults/testVault/backupEngines/testServer1", + "name": "testServer1", + "type": "Microsoft.RecoveryServices/vaults/backupEngines", + "properties": { + "backupEngineType": "DpmBackupEngine", + "dpmVersion": "5.1.348.0", + "isDpmUpgradeAvailable": false, + "azureBackupAgentVersion": "2.0.9532.0", + "isAzureBackupAgentUpgradeAvailable": false, + "registrationStatus": "Registered", + "backupEngineState": "Active", + "friendlyName": "testServer1", + "extendedInfo": { + "protectedItemsCount": 35, + "protectedServersCount": 21, + "diskCount": 5, + "availableDiskSpace": 50, + "usedDiskSpace": 20 + } + } + }, + { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.RecoveryServices/vaults/testVault/backupEngines/testServer5", + "name": "testServer5", + "type": "Microsoft.RecoveryServices/vaults/backupEngines", + "properties": { + "backupEngineType": "DpmBackupEngine", + "dpmVersion": "5.1.348.0", + "isDpmUpgradeAvailable": false, + "azureBackupAgentVersion": "2.0.9530.0", + "isAzureBackupAgentUpgradeAvailable": false, + "registrationStatus": "Registered", + "backupEngineState": "Active", + "friendlyName": "testServer5", + "extendedInfo": { + "protectedItemsCount": 35, + "protectedServersCount": 21, + "diskCount": 5, + "availableDiskSpace": 50, + "usedDiskSpace": 20 + } + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ListOperations.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ListOperations.json new file mode 100644 index 000000000000..81545a299afe --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ListOperations.json @@ -0,0 +1,463 @@ +{ + "parameters": { + "api-version": "2021-02-10" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "microsoft.recoveryservices/vaults/usages/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Vault Usage", + "operation": "Recovery Services Vault usage details.", + "description": "Returns usage details for a Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupUsageSummaries/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Usages Summaries", + "operation": "Recovery Services Protected Items and Protected Servers usage summaries details.", + "description": "Returns summaries for Protected Items and Protected Servers for a Recovery Services ." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/storageConfig/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Vault Storage Config", + "operation": "Get Resource Storage Config", + "description": "Returns Storage Configuration for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/storageConfig/write", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Vault Storage Config", + "operation": "Write Resource Storage Config", + "description": "Updates Storage Configuration for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupconfig/vaultconfig/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Vault Config", + "operation": "Get Resource Config", + "description": "Returns Configuration for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupconfig/vaultconfig/write", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Vault Config", + "operation": "Update Resource Config", + "description": "Updates Configuration for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/tokenInfo/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Token Info", + "operation": "Get Vault Token Info", + "description": "Returns token information for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupSecurityPIN/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "SecurityPINInfo", + "operation": "Get Security PIN Info", + "description": "Returns Security PIN Information for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupManagementMetaData/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Management Metadata", + "operation": "Get Backup Management Metadata", + "description": "Returns Backup Management Metadata for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupOperationResults/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Operation Results", + "operation": "Get Backup Operation Result", + "description": "Returns Backup Operation Result for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupOperations/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Operation Status", + "operation": "Get Backup Operation Status", + "description": "Returns Backup Operation Status for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupJobs/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Jobs", + "operation": "Get Jobs", + "description": "Returns all Job Objects" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupJobs/cancel/action", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Jobs", + "operation": "Cancel Jobs", + "description": "Cancel the Job" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupJobsExport/action", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Export Backup Jobs", + "operation": "Export Jobs", + "description": "Export Jobs" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupJobs/operationResults/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Jobs Operation Results", + "operation": "Get Job Operation Result", + "description": "Returns the Result of Job Operation." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupJobsExport/operationResults/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Export Backup Jobs Operation Results", + "operation": "Get Export Job Operation Result", + "description": "Returns the Result of Export Job Operation." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Recovery Points", + "operation": "Get Recovery Points", + "description": "Get Recovery Points for Protected Items." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints/restore/action", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Recovery Points", + "operation": "Restore Recovery Points", + "description": "Restore Recovery Points for Protected Items." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints/provisionInstantItemRecovery/action", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Recovery Points", + "operation": "Provision Instant Item Recovery for Protected Item", + "description": "Provision Instant Item Recovery for Protected Item" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints/revokeInstantItemRecovery/action", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Recovery Points", + "operation": "Revoke Instant Item Recovery for Protected Item", + "description": "Revoke Instant Item Recovery for Protected Item" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupPolicies/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Policies", + "operation": "Get Protection Policy", + "description": "Returns all Protection Policies" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupPolicies/write", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Policies", + "operation": "Create Protection Policy", + "description": "Creates Protection Policy" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupPolicies/delete", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Policies", + "operation": "Delete Protection Policy", + "description": "Delete a Protection Policy" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupPolicies/operationResults/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Policy Operation Results", + "operation": "Get Policy Operation Results", + "description": "Get Results of Policy Operation." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupPolicies/operationsStatus/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Policy Operation Status", + "operation": "Get Policy Operation Status", + "description": "Get Status of Policy Operation." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protected Items", + "operation": "Get Protected Item Details", + "description": "Returns object details of the Protected Item" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupProtectedItems/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protected Items", + "operation": "Get All Protected Items", + "description": "Returns the list of all Protected Items." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/write", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protected Items", + "operation": "Create Backup Protected Item", + "description": "Create a backup Protected Item" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/delete", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protected Items", + "operation": "Delete Protected Items", + "description": "Deletes Protected Item" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/operationResults/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protected Item Operation Results", + "operation": "Get Protected Items Operation Results", + "description": "Gets Result of Operation Performed on Protected Items." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/operationsStatus/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protected Item Operation Status", + "operation": "Get Protected Items operation status", + "description": "Returns the status of Operation performed on Protected Items." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/backup/action", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protected Items", + "operation": "Backup Protected Item", + "description": "Performs Backup for Protected Item." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupProtectableItems/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Protectable Items", + "operation": "Get Protectable Items", + "description": "Returns list of all Protectable Items." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/refreshContainers/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Refresh Containers", + "operation": "Refresh container", + "description": "Refreshes the container list" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/operationResults/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Refresh Containers Operation Results", + "operation": "Get Operation Results", + "description": "Returns status of the operation" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupProtectionContainers/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Protection Containers", + "operation": "Get Containers In Subscription", + "description": "Returns all containers belonging to the subscription" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protection Containers", + "operation": "Get Registered Container", + "description": "Returns all registered containers" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/operationResults/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protection Containers Operation Results", + "operation": "Get Container Operation Results", + "description": "Gets result of Operation performed on Protection Container." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupEngines", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Engines", + "operation": "List of backup management servers.", + "description": "Returns all the backup management servers registered with vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupStatus", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Status", + "operation": "Check Backup Status for Vault", + "description": "Check Backup Status for Recovery Services Vaults" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupPreValidateProtection", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "PreValidate Protection", + "operation": "Pre Validate Enable Protection", + "description": "" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupValidateFeatures", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Validate Features", + "operation": "Validate Features", + "description": "Validate Features" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/backupProtectionIntent/write", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protection Intent", + "operation": "Create backup Protection Intent", + "description": "Create a backup Protection Intent" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/{fabricName}/protectionContainers/{containerName}/items/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Workload Items", + "operation": "Get all items in a container", + "description": "Get all items in a container" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/inquire/action", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protection Containers Inquire", + "operation": "Get all items in a container", + "description": "Get all items in a container" + }, + "origin": "user" + } + ] + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/PrivateEndpointConnection/DeletePrivateEndpointConnection.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/PrivateEndpointConnection/DeletePrivateEndpointConnection.json new file mode 100644 index 000000000000..df27c821d0b3 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/PrivateEndpointConnection/DeletePrivateEndpointConnection.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "04cf684a-d41f-4550-9f70-7708a3a2283b", + "resourceGroupName": "gaallaRG", + "vaultName": "gaallavaultbvtd2msi", + "privateEndpointConnectionName": "gaallatestpe2.5704c932-249a-490b-a142-1396838cd3b", + "api-version": "2021-02-10" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/6c48fa17-39c7-45f1-90ac-47a587128ace/resourceGroups/backupadminrg/providers/Microsoft.RecoveryServices/Vaults/demo-pevault-2/privateEndpointConnections/autoapprovalpeecy4.3679789459502941542.backup.5ede856d-d9f0-461e-a15b-370c84525817/operationsStatus/2908a25d-8036-48d2-bdcc-fdce26b9771f?api-versi", + "Retry-After": "60" + } + }, + "204": {} + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/PrivateEndpointConnection/GetPrivateEndpointConnection.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/PrivateEndpointConnection/GetPrivateEndpointConnection.json new file mode 100644 index 000000000000..ef22aa685cac --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/PrivateEndpointConnection/GetPrivateEndpointConnection.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "04cf684a-d41f-4550-9f70-7708a3a2283b", + "resourceGroupName": "gaallaRG", + "vaultName": "gaallavaultbvtd2msi", + "privateEndpointConnectionName": "gaallatestpe2.5704c932-249a-490b-a142-1396838cd3b", + "api-version": "2021-02-10" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/gaallaRG/providers/Microsoft.RecoveryServicesBVTD2/vaults/gaallavaultbvtd2msi/privateEndpointConnections/gaallatestpe3.3592346090307038890.backup.5704c932-249a-490b-a142-1396838cd3b", + "name": "gaallatestpe1.3592346090307038890.backup.5704c932-249a-490b-a142-1396838cd3b", + "type": "Microsoft.RecoveryServices/vaults/privateEndpointConnections", + "properties": { + "provisioningState": "Pending", + "privateEndpoint": { + "id": "/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/gaallaRG/providers/Microsoft.Network/privateEndpoints/gaallatestpe3" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@company.com" + } + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/PrivateEndpointConnection/GetPrivateEndpointConnectionOperationStatus.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/PrivateEndpointConnection/GetPrivateEndpointConnectionOperationStatus.json new file mode 100644 index 000000000000..4e7f45feae19 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/PrivateEndpointConnection/GetPrivateEndpointConnectionOperationStatus.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "04cf684a-d41f-4550-9f70-7708a3a2283b", + "resourceGroupName": "gaallaRG", + "privateEndpointConnectionName": "gaallatestpe2.5704c932-249a-490b-a142-1396838cd3b", + "vaultName": "gaallavaultbvtd2msi", + "operationId": "0f48183b-0a44-4dca-aec1-bba5daab888a", + "api-version": "2021-02-10" + }, + "responses": { + "200": { + "body": { + "id": "0f48183b-0a44-4dca-aec1-bba5daab888a", + "name": "0f48183b-0a44-4dca-aec1-bba5daab888a", + "status": "Succeeded", + "startTime": "2020-02-27T11:59:47.5901592Z", + "endTime": "2020-02-27T11:59:47.5901592Z" + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/PrivateEndpointConnection/PutPrivateEndpointConnection.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/PrivateEndpointConnection/PutPrivateEndpointConnection.json new file mode 100644 index 000000000000..57078c922626 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/PrivateEndpointConnection/PutPrivateEndpointConnection.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subscriptionId": "04cf684a-d41f-4550-9f70-7708a3a2283b", + "resourceGroupName": "gaallaRG", + "vaultName": "gaallavaultbvtd2msi", + "privateEndpointConnectionName": "gaallatestpe2.5704c932-249a-490b-a142-1396838cd3b", + "api-version": "2021-02-10", + "parameters": { + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/gaallaRG/providers/Microsoft.Network/privateEndpoints/gaallatestpe3" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@company.com" + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/gaallaRG/providers/Microsoft.RecoveryServicesBVTD2/vaults/gaallavaultbvtd2msi/privateEndpointConnections/gaallatestpe3.3592346090307038890.backup.5704c932-249a-490b-a142-1396838cd3b", + "name": "gaallatestpe1.3592346090307038890.backup.5704c932-249a-490b-a142-1396838cd3b", + "type": "Microsoft.RecoveryServices/vaults/privateEndpointConnections", + "properties": { + "provisioningState": "Pending", + "privateEndpoint": { + "id": "/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/gaallaRG/providers/Microsoft.Network/privateEndpoints/gaallatestpe3" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@company.com" + } + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/6c48fa17-39c7-45f1-90ac-47a587128ace/resourceGroups/backupadminrg/providers/Microsoft.RecoveryServices/Vaults/demo-pevault-2/privateEndpointConnections/autoapprovalpeecy4.3679789459502941542.backup.5ede856d-d9f0-461e-a15b-370c84525817/operationsStatus/2908a25d-8036-48d2-bdcc-fdce26b9771f?api-versi", + "Retry-After": "60" + } + }, + "200": { + "body": { + "id": "/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/gaallaRG/providers/Microsoft.RecoveryServicesBVTD2/vaults/gaallavaultbvtd2msi/privateEndpointConnections/gaallatestpe3.3592346090307038890.backup.5704c932-249a-490b-a142-1396838cd3b", + "name": "gaallatestpe1.3592346090307038890.backup.5704c932-249a-490b-a142-1396838cd3b", + "type": "Microsoft.RecoveryServices/vaults/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/gaallaRG/providers/Microsoft.Network/privateEndpoints/gaallatestpe3" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@company.com" + } + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/TriggerRecoveryPointMove_Post.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/TriggerRecoveryPointMove_Post.json new file mode 100644 index 000000000000..5871e326c15b --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/TriggerRecoveryPointMove_Post.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "netsdktestrg", + "vaultName": "testVault", + "fabricName": "Azure", + "containerName": "IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "protectedItemName": "VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "recoveryPointId": "348916168024334", + "api-version": "2021-02-10", + "parameters": { + "objectType": "MoveRPAcrossTiersRequest", + "sourceTierType": "HardenedRP", + "targetTierType": "ArchivedRP" + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.RecoveryServices/vaults/testVault/backupFabrics/Azure/protectionContainers/iaasvmcontainer;iaasVMContainerV2;netsdktestrg;netvmtestv2vm1/protectedItems/vm;iaasVMContainerV2;netsdktestrg;netvmtestv2vm1/operationResults/00000000-0000-0000-0000-000000000000?api-version=2020-09-01", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.RecoveryServices/vaults/testVault/backupFabrics/Azure/protectionContainers/iaasvmcontainer;iaasVMContainerV2;netsdktestrg;netvmtestv2vm1/protectedItems/vm;iaasVMContainerV2;netsdktestrg;netvmtestv2vm1/operationsStatus/00000000-0000-0000-0000-000000000000?api-version=2020-09-01", + "Retry-After": 60 + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/bms.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/bms.json new file mode 100644 index 000000000000..4823eb462efe --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/bms.json @@ -0,0 +1,11302 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-03-01", + "title": "RecoveryServicesBackupClient", + "x-ms-code-generation-settings": { + "internalConstructors": false + } + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/Subscriptions/{subscriptionId}/providers/Microsoft.RecoveryServices/locations/{azureRegion}/backupPreValidateProtection": { + "post": { + "tags": [ + "ProtectionIntent" + ], + "summary": "It will validate followings\r\n1. Vault capacity\r\n2. VM is already protected\r\n3. Any VM related configuration passed in properties.", + "operationId": "ProtectionIntent_Validate", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/AzureRegion" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "parameters", + "in": "body", + "description": "Enable backup validation request on Virtual Machine", + "required": true, + "schema": { + "$ref": "#/definitions/PreValidateEnableBackupRequest" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PreValidateEnableBackupResponse" + } + } + }, + "x-ms-examples": { + "Validate Enable Protection on Azure Vm": { + "$ref": "./examples/AzureIaasVm/ProtectionIntent_Validate.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/providers/Microsoft.RecoveryServices/locations/{azureRegion}/backupStatus": { + "post": { + "tags": [ + "BackupStatus" + ], + "summary": "Get the container backup status", + "operationId": "BackupStatus_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/AzureRegion" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "parameters", + "in": "body", + "description": "Container Backup Status Request", + "required": true, + "schema": { + "$ref": "#/definitions/BackupStatusRequest" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupStatusResponse" + } + } + }, + "x-ms-examples": { + "Get Azure Virtual Machine Backup Status": { + "$ref": "./examples/AzureIaasVm/GetBackupStatus.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/providers/Microsoft.RecoveryServices/locations/{azureRegion}/backupValidateFeatures": { + "post": { + "tags": [ + "FeatureSupport" + ], + "summary": "It will validate if given feature with resource properties is supported in service", + "operationId": "FeatureSupport_Validate", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/AzureRegion" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "parameters", + "in": "body", + "description": "Feature support request object", + "required": true, + "schema": { + "$ref": "#/definitions/FeatureSupportRequest" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AzureVMResourceFeatureSupportResponse" + } + } + }, + "x-ms-examples": { + "Check Azure Vm Backup Feature Support": { + "$ref": "./examples/AzureIaasVm/BackupFeature_Validate.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/backupProtectionIntent/{intentObjectName}": { + "get": { + "tags": [ + "ProtectionIntent" + ], + "description": "Provides the details of the protection intent up item. This is an asynchronous operation. To know the status of the operation,\r\ncall the GetItemOperationResult API.", + "operationId": "ProtectionIntent_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with the backed up item.", + "required": true, + "type": "string" + }, + { + "name": "intentObjectName", + "in": "path", + "description": "Backed up item name whose details are to be fetched.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionIntentResource" + } + } + }, + "x-ms-examples": { + "Get ProtectionIntent for an item": { + "$ref": "./examples/AzureWorkload/BackupProtectionIntent_Get.json" + } + } + }, + "put": { + "tags": [ + "ProtectionIntent" + ], + "description": "Create Intent for Enabling backup of an item. This is a synchronous operation.", + "operationId": "ProtectionIntent_CreateOrUpdate", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with the backup item.", + "required": true, + "type": "string" + }, + { + "name": "intentObjectName", + "in": "path", + "description": "Intent object name.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "resource backed up item", + "required": true, + "schema": { + "$ref": "#/definitions/ProtectionIntentResource" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionIntentResource" + } + } + }, + "x-ms-examples": { + "Create or Update Azure Vm Protection Intent": { + "$ref": "./examples/AzureIaasVm/ProtectionIntent_CreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "ProtectionIntent" + ], + "description": "Used to remove intent from an item", + "operationId": "ProtectionIntent_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with the intent.", + "required": true, + "type": "string" + }, + { + "name": "intentObjectName", + "in": "path", + "description": "Intent to be deleted.", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "NoContent" + } + }, + "x-ms-examples": { + "Delete Protection intent from item": { + "$ref": "./examples/AzureWorkload/BackupProtectionIntent_Delete.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupProtectionIntents": { + "get": { + "tags": [ + "BackupProtectionIntent" + ], + "description": "Provides a pageable list of all intents that are present within a vault.", + "operationId": "BackupProtectionIntent_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + }, + { + "name": "$skipToken", + "in": "query", + "description": "skipToken Filter.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionIntentResourceList" + } + } + }, + "x-ms-odata": "#/definitions/ProtectionIntentQueryObject", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List protection intent with backupManagementType filter": { + "$ref": "./examples/AzureWorkload/BackupProtectionIntent_List.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupUsageSummaries": { + "get": { + "tags": [ + "BackupUsageSummaries" + ], + "description": "Fetches the backup management usage summaries of the vault.", + "operationId": "BackupUsageSummaries_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + }, + { + "name": "$skipToken", + "in": "query", + "description": "skipToken Filter.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupManagementUsageList" + } + } + }, + "x-ms-odata": "#/definitions/BMSBackupSummariesQueryObject", + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "Get Protected Items Usages Summary": { + "$ref": "./examples/Common/BackupProtectedItem_UsageSummary_Get.json" + }, + "Get Protected Containers Usages Summary": { + "$ref": "./examples/Common/BackupProtectionContainers_UsageSummary_Get.json" + } + } + } + }, + "/providers/Microsoft.RecoveryServices/operations": { + "get": { + "tags": [ + "Operations" + ], + "description": "Returns the list of available operations.", + "operationId": "Operations_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ClientDiscoveryResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink", + "itemName": "value" + }, + "x-ms-examples": { + "ListOperations": { + "$ref": "./examples/ListOperations.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupconfig/vaultconfig": { + "get": { + "tags": [ + "BackupResourceVaultConfigs" + ], + "description": "Fetches resource vault config.", + "operationId": "BackupResourceVaultConfigs_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupResourceVaultConfigResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/NewErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Vault Security Config": { + "$ref": "./examples/Common/BackupResourceVaultConfigs_Get.json" + } + } + }, + "patch": { + "tags": [ + "BackupResourceVaultConfigs" + ], + "description": "Updates vault security config.", + "operationId": "BackupResourceVaultConfigs_Update", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "parameters", + "in": "body", + "description": "resource config request", + "required": true, + "schema": { + "$ref": "#/definitions/BackupResourceVaultConfigResource" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupResourceVaultConfigResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/NewErrorResponse" + } + } + }, + "x-ms-examples": { + "Update Vault Security Config": { + "$ref": "./examples/Common/BackupResourceVaultConfigs_Patch.json" + } + } + }, + "put": { + "tags": [ + "BackupResourceVaultConfigs" + ], + "description": "Updates vault security config. ", + "operationId": "BackupResourceVaultConfigs_Put", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "parameters", + "in": "body", + "description": "resource config request", + "required": true, + "schema": { + "$ref": "#/definitions/BackupResourceVaultConfigResource" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupResourceVaultConfigResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/NewErrorResponse" + } + } + }, + "x-ms-examples": { + "Update Vault Security Config": { + "$ref": "./examples/Common/BackupResourceVaultConfigs_Put.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupEncryptionConfigs/backupResourceEncryptionConfig": { + "get": { + "tags": [ + "BackupResourceEncryptionConfigs" + ], + "description": "Fetches Vault Encryption config.", + "operationId": "BackupResourceEncryptionConfigs_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupResourceEncryptionConfigResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/NewErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Vault Encryption Configuration": { + "$ref": "./examples/BackupResourceEncryptionConfig_Get.json" + } + } + }, + "put": { + "tags": [ + "BackupResourceEncryptionConfigs" + ], + "description": "Updates Vault encryption config.", + "operationId": "BackupResourceEncryptionConfigs_Update", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "parameters", + "in": "body", + "description": "Vault encryption input config request", + "required": true, + "schema": { + "$ref": "#/definitions/BackupResourceEncryptionConfigResource" + } + } + ], + "responses": { + "200": { + "description": "OK" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/NewErrorResponse" + } + } + }, + "x-ms-examples": { + "Update Vault Encryption Configuration": { + "$ref": "./examples/BackupResourceEncryptionConfig_Put.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "PrivateEndpointConnection" + ], + "description": "Get Private Endpoint Connection. This call is made by Backup Admin.", + "operationId": "PrivateEndpointConnection_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/NewErrorResponse" + } + } + }, + "x-ms-examples": { + "Get PrivateEndpointConnection": { + "$ref": "./examples/PrivateEndpointConnection/GetPrivateEndpointConnection.json" + } + } + }, + "put": { + "tags": [ + "PrivateEndpointConnection" + ], + "description": "Approve or Reject Private Endpoint requests. This call is made by Backup Admin.", + "operationId": "PrivateEndpointConnection_Put", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "Request body for operation", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionResource" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionResource" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update PrivateEndpointConnection": { + "$ref": "./examples/PrivateEndpointConnection/PutPrivateEndpointConnection.json" + } + } + }, + "delete": { + "tags": [ + "PrivateEndpointConnection" + ], + "description": "Delete Private Endpoint requests. This call is made by Backup Admin.", + "operationId": "PrivateEndpointConnection_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete PrivateEndpointConnection": { + "$ref": "./examples/PrivateEndpointConnection/DeletePrivateEndpointConnection.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/privateEndpointConnections/{privateEndpointConnectionName}/operationsStatus/{operationId}": { + "get": { + "tags": [ + "PrivateEndpoint" + ], + "summary": "Gets the operation status for a private endpoint connection.", + "operationId": "PrivateEndpoint_GetOperationStatus", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection.", + "required": true, + "type": "string" + }, + { + "name": "operationId", + "in": "path", + "description": "Operation id", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationStatus" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/NewErrorResponse" + } + } + }, + "x-ms-examples": { + "Get OperationStatus": { + "$ref": "./examples/PrivateEndpointConnection/GetPrivateEndpointConnectionOperationStatus.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupstorageconfig/vaultstorageconfig/operationStatus/{operationId}": { + "get": { + "tags": [ + "DataMove" + ], + "description": "Fetches operation status for data move operation on vault", + "operationId": "GetOperationStatus", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationStatus" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/NewErrorResponse" + } + } + }, + "x-ms-examples": { + "Get OperationStatus": { + "$ref": "./examples/BackupDataMove/BackupDataMoveOperationStatus_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupstorageconfig/vaultstorageconfig/prepareDataMove": { + "post": { + "tags": [ + "DataMove" + ], + "description": "Prepares source vault for Data Move operation", + "operationId": "BMSPrepareDataMove", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "parameters", + "in": "body", + "description": "Prepare data move request", + "required": true, + "schema": { + "$ref": "#/definitions/PrepareDataMoveRequest" + } + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/NewErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Prepare Data Move": { + "$ref": "./examples/BackupDataMove/PrepareDataMove_Post.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupstorageconfig/vaultstorageconfig/operationResults/{operationId}": { + "get": { + "tags": [ + "BMSPrepareDataMoveOperationResult" + ], + "description": "Fetches Operation Result for Prepare Data Move", + "operationId": "BMSPrepareDataMoveOperationResult_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VaultStorageConfigOperationResultResponse" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed. ", + "schema": { + "$ref": "#/definitions/NewErrorResponse" + } + } + }, + "x-ms-examples": { + "Get operation result for PrepareDataMove": { + "$ref": "./examples/BackupDataMove/PrepareDataMoveOperationResult_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupstorageconfig/vaultstorageconfig/triggerDataMove": { + "post": { + "tags": [ + "DataMove" + ], + "description": "Triggers Data Move Operation on target vault", + "operationId": "BMSTriggerDataMove", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "parameters", + "in": "body", + "description": "Trigger data move request", + "required": true, + "schema": { + "$ref": "#/definitions/TriggerDataMoveRequest" + } + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/NewErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Trigger Data Move": { + "$ref": "./examples/BackupDataMove/TriggerDataMove_Post.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}": { + "get": { + "tags": [ + "ProtectedItems" + ], + "description": "Provides the details of the backed up item. This is an asynchronous operation. To know the status of the operation,\r\ncall the GetItemOperationResult API.", + "operationId": "ProtectedItems_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with the backed up item.", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "Container name associated with the backed up item.", + "required": true, + "type": "string" + }, + { + "name": "protectedItemName", + "in": "path", + "description": "Backed up item name whose details are to be fetched.", + "required": true, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectedItemResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-odata": "#/definitions/GetProtectedItemQueryObject", + "x-ms-examples": { + "Get Protected Classic Virtual Machine Details": { + "$ref": "./examples/AzureIaasVm/ClassicCompute_ProtectedItem_Get.json" + }, + "Get Protected Virtual Machine Details": { + "$ref": "./examples/AzureIaasVm/Compute_ProtectedItem_Get.json" + } + } + }, + "put": { + "tags": [ + "ProtectedItems" + ], + "description": "Enables backup of an item or to modifies the backup policy information of an already backed up item. This is an\r\nasynchronous operation. To know the status of the operation, call the GetItemOperationResult API.", + "operationId": "ProtectedItems_CreateOrUpdate", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with the backup item.", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "Container name associated with the backup item.", + "required": true, + "type": "string" + }, + { + "name": "protectedItemName", + "in": "path", + "description": "Item name to be backed up.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "resource backed up item", + "required": true, + "schema": { + "$ref": "#/definitions/ProtectedItemResource" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectedItemResource" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Enable Protection on Azure IaasVm": { + "$ref": "./examples/AzureIaasVm/ConfigureProtection.json" + }, + "Stop Protection with retain data on Azure IaasVm": { + "$ref": "./examples/AzureIaasVm/StopProtection.json" + } + } + }, + "delete": { + "tags": [ + "ProtectedItems" + ], + "description": "Used to disable backup of an item within a container. This is an asynchronous operation. To know the status of the\r\nrequest, call the GetItemOperationResult API.", + "operationId": "ProtectedItems_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with the backed up item.", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "Container name associated with the backed up item.", + "required": true, + "type": "string" + }, + { + "name": "protectedItemName", + "in": "path", + "description": "Backed up item to be deleted.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete Protection from Azure Virtual Machine": { + "$ref": "./examples/Common/ProtectedItem_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}/operationResults/{operationId}": { + "get": { + "tags": [ + "ProtectedItemOperationResults" + ], + "description": "Fetches the result of any operation on the backup item.", + "operationId": "ProtectedItemOperationResults_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with the backup item.", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "Container name associated with the backup item.", + "required": true, + "type": "string" + }, + { + "name": "protectedItemName", + "in": "path", + "description": "Backup item name whose details are to be fetched.", + "required": true, + "type": "string" + }, + { + "name": "operationId", + "in": "path", + "description": "OperationID which represents the operation whose result needs to be fetched.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectedItemResource" + } + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Operation Results of Protected Vm": { + "$ref": "./examples/AzureIaasVm/ProtectedItemOperationResults.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}/recoveryPoints": { + "get": { + "tags": [ + "RecoveryPoints" + ], + "description": "Lists the backup copies for the backed up item.", + "operationId": "RecoveryPoints_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with the backed up item.", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "Container name associated with the backed up item.", + "required": true, + "type": "string" + }, + { + "name": "protectedItemName", + "in": "path", + "description": "Backed up item whose backup copies are to be fetched.", + "required": true, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoveryPointResourceList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-odata": "#/definitions/BMSRPQueryObject", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get Protected Azure Vm Recovery Points": { + "$ref": "./examples/AzureIaasVm/RecoveryPoints_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}/recoveryPoints/{recoveryPointId}": { + "get": { + "tags": [ + "RecoveryPoints" + ], + "description": "Provides the information of the backed up data identified using RecoveryPointID. This is an asynchronous operation.\r\nTo know the status of the operation, call the GetProtectedItemOperationResult API.", + "operationId": "RecoveryPoints_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with backed up item.", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "Container name associated with backed up item.", + "required": true, + "type": "string" + }, + { + "name": "protectedItemName", + "in": "path", + "description": "Backed up item name whose backup data needs to be fetched.", + "required": true, + "type": "string" + }, + { + "name": "recoveryPointId", + "in": "path", + "description": "RecoveryPointID represents the backed up data to be fetched.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoveryPointResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Azure Vm Recovery Point Details": { + "$ref": "./examples/AzureIaasVm/RecoveryPoints_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}/recoveryPoints/{recoveryPointId}/restore": { + "post": { + "tags": [ + "Restores" + ], + "description": "Restores the specified backed up data. This is an asynchronous operation. To know the status of this API call, use\r\nGetProtectedItemOperationResult API.", + "operationId": "Restores_Trigger", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with the backed up items.", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "Container name associated with the backed up items.", + "required": true, + "type": "string" + }, + { + "name": "protectedItemName", + "in": "path", + "description": "Backed up item to be restored.", + "required": true, + "type": "string" + }, + { + "name": "recoveryPointId", + "in": "path", + "description": "Recovery point ID which represents the backed up data to be restored.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "resource restore request", + "required": true, + "schema": { + "$ref": "#/definitions/RestoreRequestResource" + } + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Restore to New Azure IaasVm": { + "$ref": "./examples/AzureIaasVm/TriggerRestore_ALR.json" + }, + "Restore Disks": { + "$ref": "./examples/AzureIaasVm/TriggerRestore_RestoreDisks.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupPolicies": { + "get": { + "tags": [ + "BackupPolicies" + ], + "description": "Lists of backup policies associated with Recovery Services Vault. API provides pagination parameters to fetch\r\nscoped results.", + "operationId": "BackupPolicies_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionPolicyResourceList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-odata": "#/definitions/ProtectionPolicyQueryObject", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List protection policies with backupManagementType filter as AzureIaasVm": { + "$ref": "./examples/AzureIaasVm/BackupPolicies_List.json" + }, + "List protection policies with backupManagementType filter as AzureWorkload": { + "$ref": "./examples/AzureWorkload/BackupPolicies_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupPolicies/{policyName}": { + "get": { + "tags": [ + "ProtectionPolicies" + ], + "description": "Provides the details of the backup policies associated to Recovery Services Vault. This is an asynchronous\r\noperation. Status of the operation can be fetched using GetPolicyOperationResult API.", + "operationId": "ProtectionPolicies_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "policyName", + "in": "path", + "description": "Backup policy information to be fetched.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionPolicyResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Azure IaasVm Protection Policy Details": { + "$ref": "./examples/AzureIaasVm/ProtectionPolicies_Get.json" + } + } + }, + "put": { + "tags": [ + "ProtectionPolicies" + ], + "description": "Creates or modifies a backup policy. This is an asynchronous operation. Status of the operation can be fetched\r\nusing GetPolicyOperationResult API.", + "operationId": "ProtectionPolicies_CreateOrUpdate", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "policyName", + "in": "path", + "description": "Backup policy to be created.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "resource backup policy", + "required": true, + "schema": { + "$ref": "#/definitions/ProtectionPolicyResource" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionPolicyResource" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create or Update Simple Azure Vm Protection Policy": { + "$ref": "./examples/AzureIaasVm/ProtectionPolicies_CreateOrUpdate_Simple.json" + }, + "Create or Update Full Azure Vm Protection Policy": { + "$ref": "./examples/AzureIaasVm/ProtectionPolicies_CreateOrUpdate_Complex.json" + }, + "Create or Update Full Azure Workload Protection Policy": { + "$ref": "./examples/AzureWorkload/ProtectionPolicies_CreateOrUpdate_Complex.json" + } + } + }, + "delete": { + "tags": [ + "ProtectionPolicies" + ], + "description": "Deletes specified backup policy from your Recovery Services Vault. This is an asynchronous operation. Status of the\r\noperation can be fetched using GetProtectionPolicyOperationResult API.", + "operationId": "ProtectionPolicies_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "policyName", + "in": "path", + "description": "Backup policy to be deleted.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete Azure Vm Protection Policy": { + "$ref": "./examples/AzureIaasVm/ProtectionPolicies_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupPolicies/{policyName}/operationResults/{operationId}": { + "get": { + "tags": [ + "ProtectionPolicyOperationResults" + ], + "description": "Provides the result of an operation.", + "operationId": "ProtectionPolicyOperationResults_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "policyName", + "in": "path", + "description": "Backup policy name whose operation's result needs to be fetched.", + "required": true, + "type": "string" + }, + { + "name": "operationId", + "in": "path", + "description": "Operation ID which represents the operation whose result needs to be fetched.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionPolicyResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Protection Policy Operation Results": { + "$ref": "./examples/AzureIaasVm/ProtectionPolicyOperationResults_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupJobs": { + "get": { + "tags": [ + "BackupJobs" + ], + "description": "Provides a pageable list of jobs.", + "operationId": "BackupJobs_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + }, + { + "name": "$skipToken", + "in": "query", + "description": "skipToken Filter.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/JobResourceList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-odata": "#/definitions/JobQueryObject", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List All Jobs": { + "$ref": "./examples/Common/ListJobs.json" + }, + "List Jobs With Filters": { + "$ref": "./examples/Common/ListJobsWithAllSupportedFilters.json" + }, + "List Jobs With Time Filter": { + "$ref": "./examples/Common/ListJobsWithStartTimeAndEndTimeFilters.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupJobs/{jobName}": { + "get": { + "tags": [ + "JobDetails" + ], + "description": "Gets extended information associated with the job.", + "operationId": "JobDetails_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "jobName", + "in": "path", + "description": "Name of the job whose details are to be fetched.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/JobResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Job Details": { + "$ref": "./examples/Common/GetJobDetails.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupJobs/{jobName}/cancel": { + "post": { + "tags": [ + "JobCancellations" + ], + "description": "Cancels a job. This is an asynchronous operation. To know the status of the cancellation, call\r\nGetCancelOperationResult API.", + "operationId": "JobCancellations_Trigger", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "jobName", + "in": "path", + "description": "Name of the job to cancel.", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Cancel Job": { + "$ref": "./examples/Common/TriggerCancelJob.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupJobs/{jobName}/operationResults/{operationId}": { + "get": { + "tags": [ + "JobOperationResults" + ], + "description": "Fetches the result of any operation.", + "operationId": "JobOperationResults_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "jobName", + "in": "path", + "description": "Job name whose operation result has to be fetched.", + "required": true, + "type": "string" + }, + { + "name": "operationId", + "in": "path", + "description": "OperationID which represents the operation whose result has to be fetched.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Cancel Job Operation Result": { + "$ref": "./examples/Common/CancelJobOperationResult.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupJobs/operationResults/{operationId}": { + "get": { + "tags": [ + "ExportJobsOperationResults" + ], + "description": "Gets the operation result of operation triggered by Export Jobs API. If the operation is successful, then it also\r\ncontains URL of a Blob and a SAS key to access the same. The blob contains exported jobs in JSON serialized format.", + "operationId": "ExportJobsOperationResults_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "operationId", + "in": "path", + "description": "OperationID which represents the export job.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationResultInfoBaseResource" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/OperationResultInfoBaseResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Export Jobs Operation Results": { + "$ref": "./examples/Common/ExportJobsOperationResult.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupJobsExport": { + "post": { + "tags": [ + "Jobs" + ], + "description": "Triggers export of jobs specified by filters and returns an OperationID to track.", + "operationId": "Jobs_Export", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-odata": "#/definitions/JobQueryObject", + "x-ms-examples": { + "Export Jobs": { + "$ref": "./examples/Common/TriggerExportJobs.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupProtectedItems": { + "get": { + "tags": [ + "BackupProtectedItems" + ], + "description": "Provides a pageable list of all items that are backed up within a vault.", + "operationId": "BackupProtectedItems_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + }, + { + "name": "$skipToken", + "in": "query", + "description": "skipToken Filter.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectedItemResourceList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-odata": "#/definitions/ProtectedItemQueryObject", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List protected items with backupManagementType filter as AzureIaasVm": { + "$ref": "./examples/AzureIaasVm/BackupProtectedItems_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupValidateOperation": { + "post": { + "tags": [ + "Operation" + ], + "description": "Validate operation for specified backed up item. This is a synchronous operation.", + "operationId": "Operation_Validate", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "parameters", + "in": "body", + "description": "resource validate operation request", + "required": true, + "schema": { + "$ref": "#/definitions/ValidateOperationRequest" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ValidateOperationsResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Validate Operation": { + "$ref": "./examples/AzureIaasVm/ValidateOperation_RestoreDisk.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupEngines": { + "get": { + "tags": [ + "BackupEngines" + ], + "description": "Backup management servers registered to Recovery Services Vault. Returns a pageable list of servers.", + "operationId": "BackupEngines_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + }, + { + "name": "$skipToken", + "in": "query", + "description": "skipToken Filter.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupEngineBaseResourceList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-odata": "#/definitions/BMSBackupEnginesQueryObject", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Dpm/AzureBackupServer/Lajolla Backup Engines": { + "$ref": "./examples/Dpm/BackupEngines_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupEngines/{backupEngineName}": { + "get": { + "tags": [ + "BackupEngines" + ], + "description": "Returns backup management server registered to Recovery Services Vault.", + "operationId": "BackupEngines_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "backupEngineName", + "in": "path", + "description": "Name of the backup management server.", + "required": true, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + }, + { + "name": "$skipToken", + "in": "query", + "description": "skipToken Filter.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupEngineBaseResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-odata": "#/definitions/BMSBackupEngineQueryObject", + "x-ms-examples": { + "Get Dpm/AzureBackupServer/Lajolla Backup Engine Details": { + "$ref": "./examples/Dpm/BackupEngines_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/operationResults/{operationId}": { + "get": { + "tags": [ + "ProtectionContainerRefreshOperationResults" + ], + "description": "Provides the result of the refresh operation triggered by the BeginRefresh operation.", + "operationId": "ProtectionContainerRefreshOperationResults_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with the container.", + "required": true, + "type": "string" + }, + { + "name": "operationId", + "in": "path", + "description": "Operation ID associated with the operation whose result needs to be fetched.", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Azure Vm Discovery Operation Result": { + "$ref": "./examples/Common/RefreshContainers_OperationResults.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectableContainers": { + "get": { + "tags": [ + "ProtectableContainers" + ], + "description": "Lists the containers that can be registered to Recovery Services Vault.", + "operationId": "ProtectableContainers_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectableContainerResourceList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-odata": "#/definitions/BMSContainerQueryObject", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List protectable items with backupManagementType filter as AzureStorage": { + "$ref": "./examples/AzureStorage/ProtectableContainers_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}": { + "get": { + "tags": [ + "ProtectionContainers" + ], + "description": "Gets details of the specific container registered to your Recovery Services Vault.", + "operationId": "ProtectionContainers_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Name of the fabric where the container belongs.", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "Name of the container whose details need to be fetched.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionContainerResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Protection Container Details": { + "$ref": "./examples/AzureWorkload/ProtectionContainers_Get.json" + } + } + }, + "put": { + "tags": [ + "ProtectionContainers" + ], + "description": "Registers the container with Recovery Services vault.\r\nThis is an asynchronous operation. To track the operation status, use location header to call get latest status of\r\nthe operation.", + "operationId": "ProtectionContainers_Register", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with the container.", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "Name of the container to be registered.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "Request body for operation", + "required": true, + "schema": { + "$ref": "#/definitions/ProtectionContainerResource" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionContainerResource" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "RegisterAzure Storage ProtectionContainers": { + "$ref": "./examples/AzureStorage/ProtectionContainers_Register.json" + } + } + }, + "delete": { + "tags": [ + "ProtectionContainers" + ], + "description": "Unregisters the given container from your Recovery Services Vault. This is an asynchronous operation. To determine\r\nwhether the backend service has finished processing the request, call Get Container Operation Result API.", + "operationId": "ProtectionContainers_Unregister", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Name of the fabric where the container belongs.", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "Name of the container which needs to be unregistered from the Recovery Services Vault.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Unregister Protection Container": { + "$ref": "./examples/AzureWorkload/ProtectionContainers_Unregister.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/inquire": { + "post": { + "tags": [ + "ProtectionContainers" + ], + "summary": "Inquires all the protectable items under the given container.", + "description": "This is an async operation and the results should be tracked using location header or Azure-async-url.", + "operationId": "ProtectionContainers_Inquire", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric Name associated with the container.", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "Name of the container in which inquiry needs to be triggered.", + "required": true, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-odata": "#/definitions/BMSContainersInquiryQueryObject", + "x-ms-examples": { + "Inquire Azure Storage Protection Containers": { + "$ref": "./examples/AzureStorage/ProtectionContainers_Inquire.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/items": { + "get": { + "tags": [ + "BackupWorkloadItems" + ], + "description": "Provides a pageable list of workload item of a specific container according to the query filter and the pagination\r\nparameters.", + "operationId": "BackupWorkloadItems_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with the container.", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "Name of the container.", + "required": true, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + }, + { + "name": "$skipToken", + "in": "query", + "description": "skipToken Filter.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/WorkloadItemResourceList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-odata": "#/definitions/BMSWorkloadItemQueryObject", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Workload Items in Container": { + "$ref": "./examples/AzureWorkload/BackupWorkloadItems_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/operationResults/{operationId}": { + "get": { + "tags": [ + "ProtectionContainerOperationResults" + ], + "description": "Fetches the result of any operation on the container.", + "operationId": "ProtectionContainerOperationResults_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with the container.", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "Container name whose information should be fetched.", + "required": true, + "type": "string" + }, + { + "name": "operationId", + "in": "path", + "description": "Operation ID which represents the operation whose result needs to be fetched.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionContainerResource" + } + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Azure Storage Protection Container Operation Result": { + "$ref": "./examples/AzureStorage/ProtectionContainers_Inquire_Result.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}/backup": { + "post": { + "tags": [ + "Backups" + ], + "description": "Triggers backup for specified backed up item. This is an asynchronous operation. To know the status of the\r\noperation, call GetProtectedItemOperationResult API.", + "operationId": "Backups_Trigger", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with the backup item.", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "Container name associated with the backup item.", + "required": true, + "type": "string" + }, + { + "name": "protectedItemName", + "in": "path", + "description": "Backup item for which backup needs to be triggered.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "resource backup request", + "required": true, + "schema": { + "$ref": "#/definitions/BackupRequestResource" + } + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Trigger Backup": { + "$ref": "./examples/Common/TriggerBackup_Post.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}/operationsStatus/{operationId}": { + "get": { + "tags": [ + "ProtectedItemOperationStatuses" + ], + "description": "Fetches the status of an operation such as triggering a backup, restore. The status can be in progress, completed\r\nor failed. You can refer to the OperationStatus enum for all the possible states of the operation. Some operations\r\ncreate jobs. This method returns the list of jobs associated with the operation.", + "operationId": "ProtectedItemOperationStatuses_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with the backup item.", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "Container name associated with the backup item.", + "required": true, + "type": "string" + }, + { + "name": "protectedItemName", + "in": "path", + "description": "Backup item name whose details are to be fetched.", + "required": true, + "type": "string" + }, + { + "name": "operationId", + "in": "path", + "description": "OperationID represents the operation whose status needs to be fetched.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationStatus" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Operation Status of Protected Vm": { + "$ref": "./examples/AzureIaasVm/ProtectedItemOperationStatus.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}/recoveryPoints/{recoveryPointId}/provisionInstantItemRecovery": { + "post": { + "tags": [ + "ItemLevelRecoveryConnections" + ], + "description": "Provisions a script which invokes an iSCSI connection to the backup data. Executing this script opens a file\r\nexplorer displaying all the recoverable files and folders. This is an asynchronous operation. To know the status of\r\nprovisioning, call GetProtectedItemOperationResult API.", + "operationId": "ItemLevelRecoveryConnections_Provision", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with the backed up items.", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "Container name associated with the backed up items.", + "required": true, + "type": "string" + }, + { + "name": "protectedItemName", + "in": "path", + "description": "Backed up item name whose files/folders are to be restored.", + "required": true, + "type": "string" + }, + { + "name": "recoveryPointId", + "in": "path", + "description": "Recovery point ID which represents backed up data. iSCSI connection will be provisioned\r\nfor this backed up data.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "resource ILR request", + "required": true, + "schema": { + "$ref": "#/definitions/ILRRequestResource" + } + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Provision Instant Item Level Recovery for Azure Vm": { + "$ref": "./examples/AzureIaasVm/Provision_Ilr.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}/recoveryPoints/{recoveryPointId}/revokeInstantItemRecovery": { + "post": { + "tags": [ + "ItemLevelRecoveryConnections" + ], + "description": "Revokes an iSCSI connection which can be used to download a script. Executing this script opens a file explorer\r\ndisplaying all recoverable files and folders. This is an asynchronous operation.", + "operationId": "ItemLevelRecoveryConnections_Revoke", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with the backed up items.", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "Container name associated with the backed up items.", + "required": true, + "type": "string" + }, + { + "name": "protectedItemName", + "in": "path", + "description": "Backed up item name whose files/folders are to be restored.", + "required": true, + "type": "string" + }, + { + "name": "recoveryPointId", + "in": "path", + "description": "Recovery point ID which represents backed up data. iSCSI connection will be revoked for\r\nthis backed up data.", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Revoke Instant Item Level Recovery for Azure Vm": { + "$ref": "./examples/AzureIaasVm/Revoke_Ilr.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/refreshContainers": { + "post": { + "tags": [ + "ProtectionContainers" + ], + "description": "Discovers all the containers in the subscription that can be backed up to Recovery Services Vault. This is an\r\nasynchronous operation. To know the status of the operation, call GetRefreshOperationResult API.", + "operationId": "ProtectionContainers_Refresh", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated the container.", + "required": true, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-odata": "#/definitions/BMSRefreshContainersQueryObject", + "x-ms-examples": { + "Trigger Azure Vm Discovery": { + "$ref": "./examples/Common/RefreshContainers.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupOperationResults/{operationId}": { + "get": { + "tags": [ + "BackupOperationResults" + ], + "description": "Provides the status of the delete operations such as deleting backed up item. Once the operation has started, the\r\nstatus code in the response would be Accepted. It will continue to be in this state till it reaches completion. On\r\nsuccessful completion, the status code will be OK. This method expects OperationID as an argument. OperationID is\r\npart of the Location header of the operation response.", + "operationId": "BackupOperationResults_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "operationId", + "in": "path", + "description": "OperationID which represents the operation.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Result for Protected Item Delete Operation": { + "$ref": "./examples/Common/ProtectedItem_Delete_OperationResult.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupOperations/{operationId}": { + "get": { + "tags": [ + "BackupOperationStatuses" + ], + "description": "Fetches the status of an operation such as triggering a backup, restore. The status can be in progress, completed\r\nor failed. You can refer to the OperationStatus enum for all the possible states of an operation. Some operations\r\ncreate jobs. This method returns the list of jobs when the operation is complete.", + "operationId": "BackupOperationStatuses_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "operationId", + "in": "path", + "description": "OperationID which represents the operation.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationStatus" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Protected Item Delete Operation Status": { + "$ref": "./examples/Common/ProtectedItem_Delete_OperationStatus.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupPolicies/{policyName}/operations/{operationId}": { + "get": { + "tags": [ + "ProtectionPolicyOperationStatuses" + ], + "description": "Provides the status of the asynchronous operations like backup, restore. The status can be in progress, completed\r\nor failed. You can refer to the Operation Status enum for all the possible states of an operation. Some operations\r\ncreate jobs. This method returns the list of jobs associated with operation.", + "operationId": "ProtectionPolicyOperationStatuses_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "policyName", + "in": "path", + "description": "Backup policy name whose operation's status needs to be fetched.", + "required": true, + "type": "string" + }, + { + "name": "operationId", + "in": "path", + "description": "Operation ID which represents an operation whose status needs to be fetched.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationStatus" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Protection Policy Operation Status": { + "$ref": "./examples/AzureIaasVm/ProtectionPolicyOperationStatuses_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupProtectableItems": { + "get": { + "tags": [ + "BackupProtectableItems" + ], + "description": "Provides a pageable list of protectable objects within your subscription according to the query filter and the\r\npagination parameters.", + "operationId": "BackupProtectableItems_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + }, + { + "name": "$skipToken", + "in": "query", + "description": "skipToken Filter.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/WorkloadProtectableItemResourceList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-odata": "#/definitions/BMSPOQueryObject", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List protectable items with backupManagementType filter as AzureIaasVm": { + "$ref": "./examples/AzureIaasVm/BackupProtectableItems_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupProtectionContainers": { + "get": { + "tags": [ + "BackupProtectionContainers" + ], + "description": "Lists the containers registered to Recovery Services Vault.", + "operationId": "BackupProtectionContainers_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionContainerResourceList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-odata": "#/definitions/BMSContainerQueryObject", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Backup Protection Containers": { + "$ref": "./examples/AzureStorage/ProtectionContainers_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupSecurityPIN": { + "post": { + "tags": [ + "SecurityPINs" + ], + "description": "Get the security PIN.", + "operationId": "SecurityPINs_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TokenInformation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Vault Security Pin": { + "$ref": "./examples/Common/BackupSecurityPin_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}/recoveryPoints/{recoveryPointId}/move": { + "post": { + "tags": [ + "RecoveryPoint" + ], + "summary": "Move recovery point from one datastore to another store.", + "operationId": "MoveRecoveryPoint", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "protectedItemName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "recoveryPointId", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "Move Resource Across Tiers Request", + "required": true, + "schema": { + "$ref": "#/definitions/MoveRPAcrossTiersRequest" + } + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Trigger RP Move Operation": { + "$ref": "./examples/TriggerRecoveryPointMove_Post.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}/recoveryPointsRecommendedForMove": { + "post": { + "tags": [ + "RecoveryPointsRecommendedForMove" + ], + "description": "Lists the recovery points recommended for move to another tier", + "operationId": "RecoveryPointsRecommendedForMove_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "protectedItemName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "List Recovery points Recommended for Move Request", + "required": true, + "schema": { + "$ref": "#/definitions/ListRecoveryPointsRecommendedForMoveRequest" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoveryPointResourceList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get Protected Azure Vm Recovery Points Recommended for Move": { + "$ref": "./examples/AzureIaasVm/RecoveryPointsRecommendedForMove_List.json" + } + } + } + } + }, + "definitions": { + "BackupResourceEncryptionConfig": { + "type": "object", + "properties": { + "encryptionAtRestType": { + "description": "Encryption At Rest Type", + "enum": [ + "Invalid", + "MicrosoftManaged", + "CustomerManaged" + ], + "type": "string", + "x-ms-enum": { + "name": "EncryptionAtRestType", + "modelAsString": true + } + }, + "keyUri": { + "description": "Key Vault Key URI", + "type": "string" + }, + "subscriptionId": { + "description": "Key Vault Subscription Id", + "type": "string" + }, + "lastUpdateStatus": { + "enum": [ + "Invalid", + "NotEnabled", + "PartiallySucceeded", + "PartiallyFailed", + "Failed", + "Succeeded" + ], + "type": "string", + "x-ms-enum": { + "name": "LastUpdateStatus", + "modelAsString": true + } + }, + "infrastructureEncryptionState": { + "enum": [ + "Invalid", + "Disabled", + "Enabled" + ], + "type": "string", + "x-ms-enum": { + "name": "InfrastructureEncryptionState", + "modelAsString": true + } + } + } + }, + "BackupResourceEncryptionConfigResource": { + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/BackupResourceEncryptionConfig", + "description": "BackupResourceEncryptionConfigResource properties" + } + } + }, + "PrivateEndpoint": { + "description": "The Private Endpoint network resource that is linked to the Private Endpoint connection", + "type": "object", + "properties": { + "id": { + "description": "Gets or sets id", + "type": "string" + } + } + }, + "PrivateEndpointConnection": { + "description": "Private Endpoint Connection Response Properties", + "type": "object", + "properties": { + "provisioningState": { + "description": "Gets or sets provisioning state of the private endpoint connection", + "enum": [ + "Succeeded", + "Deleting", + "Failed", + "Pending" + ], + "type": "string", + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpoint", + "description": "Gets or sets private endpoint associated with the private endpoint connection" + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionState", + "description": "Gets or sets private link service connection state" + } + } + }, + "PrivateEndpointConnectionResource": { + "description": "Private Endpoint Connection Response Properties", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnection", + "description": "PrivateEndpointConnectionResource properties" + } + } + }, + "PrivateLinkServiceConnectionState": { + "description": "Private Link Service Connection State", + "type": "object", + "properties": { + "status": { + "description": "Gets or sets the status", + "enum": [ + "Pending", + "Approved", + "Rejected", + "Disconnected" + ], + "type": "string", + "x-ms-enum": { + "name": "PrivateEndpointConnectionStatus", + "modelAsString": true + } + }, + "description": { + "description": "Gets or sets description", + "type": "string" + }, + "actionRequired": { + "description": "Gets or sets actions required", + "type": "string" + } + } + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "type": "object", + "$ref": "#/definitions/CloudErrorBody", + "description": "The error object." + } + }, + "description": "An error response from the Container Instance service." + }, + "CloudErrorBody": { + "x-ms-external": true, + "properties": { + "code": { + "readOnly": true, + "type": "string", + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "readOnly": true, + "type": "string", + "description": "A message describing the error, intended to be suitable for display in a user interface." + }, + "target": { + "readOnly": true, + "type": "string", + "description": "The target of the particular error. For example, the name of the property in error." + }, + "details": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/CloudErrorBody" + }, + "description": "A list of additional details about the error." + }, + "additionalInfo": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorAdditionalInfo" + }, + "description": "The error additional info." + } + }, + "description": "An error response from the Container Instance service." + }, + "NewErrorResponse": { + "properties": { + "error": { + "type": "object", + "description": "The error object.", + "properties": { + "code": { + "readOnly": true, + "type": "string", + "description": "The error code." + }, + "message": { + "readOnly": true, + "type": "string", + "description": "The error message." + }, + "target": { + "readOnly": true, + "type": "string", + "description": "The error target." + }, + "details": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/NewErrorResponse" + }, + "description": "The error details." + }, + "additionalInfo": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorAdditionalInfo" + }, + "description": "The error additional info." + } + } + } + }, + "description": "The resource management error response." + }, + "AzureFileshareProtectedItem": { + "description": "Azure File Share workload-specific backup item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectedItem" + } + ], + "properties": { + "friendlyName": { + "description": "Friendly name of the fileshare represented by this backup item.", + "type": "string" + }, + "protectionStatus": { + "description": "Backup status of this backup item.", + "type": "string" + }, + "protectionState": { + "description": "Backup state of this backup item.", + "enum": [ + "Invalid", + "IRPending", + "Protected", + "ProtectionError", + "ProtectionStopped", + "ProtectionPaused" + ], + "type": "string", + "x-ms-enum": { + "name": "ProtectionState", + "modelAsString": true + } + }, + "lastBackupStatus": { + "description": "Last backup operation status. Possible values: Healthy, Unhealthy.", + "type": "string" + }, + "lastBackupTime": { + "format": "date-time", + "description": "Timestamp of the last backup operation on this backup item.", + "type": "string" + }, + "kpisHealths": { + "description": "Health details of different KPIs", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/KPIResourceHealthDetails" + } + }, + "extendedInfo": { + "$ref": "#/definitions/AzureFileshareProtectedItemExtendedInfo", + "description": "Additional information with this backup item." + } + }, + "x-ms-discriminator-value": "AzureFileShareProtectedItem" + }, + "AzureFileshareProtectedItemExtendedInfo": { + "description": "Additional information about Azure File Share backup item.", + "type": "object", + "properties": { + "oldestRecoveryPoint": { + "format": "date-time", + "description": "The oldest backup copy available for this item in the service.", + "type": "string" + }, + "recoveryPointCount": { + "format": "int32", + "description": "Number of available backup copies associated with this backup item.", + "type": "integer" + }, + "policyState": { + "description": "Indicates consistency of policy object and policy applied to this backup item.", + "type": "string" + }, + "resourceState": { + "description": "Indicates the state of this resource. Possible values are from enum ResourceState {Invalid, Active, SoftDeleted, Deleted}", + "type": "string", + "readOnly": true + }, + "resourceStateSyncTime": { + "format": "date-time", + "description": "The resource state sync time for this backup item.", + "type": "string", + "readOnly": true + } + } + }, + "AzureFileShareRecoveryPoint": { + "description": "Azure File Share workload specific backup copy.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RecoveryPoint" + } + ], + "properties": { + "recoveryPointType": { + "description": "Type of the backup copy. Specifies whether it is a crash consistent backup or app consistent.", + "type": "string" + }, + "recoveryPointTime": { + "format": "date-time", + "description": "Time at which this backup copy was created.", + "type": "string" + }, + "fileShareSnapshotUri": { + "description": "Contains Url to the snapshot of fileshare, if applicable", + "type": "string" + }, + "recoveryPointSizeInGB": { + "format": "int32", + "description": "Contains recovery point size", + "type": "integer" + } + }, + "x-ms-discriminator-value": "AzureFileShareRecoveryPoint" + }, + "AzureFileShareRestoreRequest": { + "description": "AzureFileShare Restore Request", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RestoreRequest" + } + ], + "properties": { + "recoveryType": { + "description": "Type of this recovery.", + "enum": [ + "Invalid", + "OriginalLocation", + "AlternateLocation", + "RestoreDisks", + "Offline" + ], + "type": "string", + "x-ms-enum": { + "name": "RecoveryType", + "modelAsString": true + } + }, + "sourceResourceId": { + "description": "Source storage account ARM Id", + "type": "string" + }, + "copyOptions": { + "description": "Options to resolve copy conflicts.", + "enum": [ + "Invalid", + "CreateCopy", + "Skip", + "Overwrite", + "FailOnConflict" + ], + "type": "string", + "x-ms-enum": { + "name": "CopyOptions", + "modelAsString": true + } + }, + "restoreRequestType": { + "description": "Restore Type (FullShareRestore or ItemLevelRestore)", + "enum": [ + "Invalid", + "FullShareRestore", + "ItemLevelRestore" + ], + "type": "string", + "x-ms-enum": { + "name": "RestoreRequestType", + "modelAsString": true + } + }, + "restoreFileSpecs": { + "description": "List of Source Files/Folders(which need to recover) and TargetFolderPath details", + "type": "array", + "items": { + "$ref": "#/definitions/RestoreFileSpecs" + } + }, + "targetDetails": { + "$ref": "#/definitions/TargetAFSRestoreInfo", + "description": "Target File Share Details" + } + }, + "x-ms-discriminator-value": "AzureFileShareRestoreRequest" + }, + "AzureVmWorkloadProtectionPolicy": { + "description": "Azure VM (Mercury) workload-specific backup policy.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionPolicy" + } + ], + "properties": { + "workLoadType": { + "description": "Type of workload for the backup management", + "enum": [ + "Invalid", + "VM", + "FileFolder", + "AzureSqlDb", + "SQLDB", + "Exchange", + "Sharepoint", + "VMwareVM", + "SystemState", + "Client", + "GenericDataSource", + "SQLDataBase", + "AzureFileShare", + "SAPHanaDatabase", + "SAPAseDatabase" + ], + "type": "string", + "x-ms-enum": { + "name": "WorkloadType", + "modelAsString": true + } + }, + "settings": { + "$ref": "#/definitions/Settings", + "description": "Common settings for the backup management" + }, + "subProtectionPolicy": { + "description": "List of sub-protection policies which includes schedule and retention", + "type": "array", + "items": { + "$ref": "#/definitions/SubProtectionPolicy" + } + }, + "makePolicyConsistent": { + "description": "Fix the policy inconsistency", + "type": "boolean" + } + }, + "x-ms-discriminator-value": "AzureWorkload" + }, + "AzureFileShareProtectionPolicy": { + "description": "AzureStorage backup policy.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionPolicy" + } + ], + "properties": { + "workLoadType": { + "description": "Type of workload for the backup management", + "enum": [ + "Invalid", + "VM", + "FileFolder", + "AzureSqlDb", + "SQLDB", + "Exchange", + "Sharepoint", + "VMwareVM", + "SystemState", + "Client", + "GenericDataSource", + "SQLDataBase", + "AzureFileShare", + "SAPHanaDatabase", + "SAPAseDatabase" + ], + "type": "string", + "x-ms-enum": { + "name": "WorkloadType", + "modelAsString": true + } + }, + "schedulePolicy": { + "$ref": "#/definitions/SchedulePolicy", + "description": "Backup schedule specified as part of backup policy." + }, + "retentionPolicy": { + "$ref": "#/definitions/RetentionPolicy", + "description": "Retention policy with the details on backup copy retention ranges." + }, + "timeZone": { + "description": "TimeZone optional input as string. For example: TimeZone = \"Pacific Standard Time\".", + "type": "string" + } + }, + "x-ms-discriminator-value": "AzureStorage" + }, + "AzureIaaSClassicComputeVMProtectedItem": { + "description": "IaaS VM workload-specific backup item representing the Classic Compute VM.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureIaaSVMProtectedItem" + } + ], + "x-ms-discriminator-value": "Microsoft.ClassicCompute/virtualMachines" + }, + "AzureIaaSComputeVMProtectedItem": { + "description": "IaaS VM workload-specific backup item representing the Azure Resource Manager VM.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureIaaSVMProtectedItem" + } + ], + "x-ms-discriminator-value": "Microsoft.Compute/virtualMachines" + }, + "AzureIaaSVMErrorInfo": { + "description": "Azure IaaS VM workload-specific error information.", + "type": "object", + "properties": { + "errorCode": { + "format": "int32", + "description": "Error code.", + "type": "integer", + "readOnly": true + }, + "errorTitle": { + "description": "Title: Typically, the entity that the error pertains to.", + "type": "string", + "readOnly": true + }, + "errorString": { + "description": "Localized error string.", + "type": "string", + "readOnly": true + }, + "recommendations": { + "description": "List of localized recommendations for above error code.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + } + } + }, + "ResourceHealthDetails": { + "description": "Health Details for backup items.", + "type": "object", + "properties": { + "code": { + "format": "int32", + "description": "Health Code", + "type": "integer", + "readOnly": true + }, + "title": { + "description": "Health Title", + "type": "string", + "readOnly": true + }, + "message": { + "description": "Health Message", + "type": "string", + "readOnly": true + }, + "recommendations": { + "description": "Health Recommended Actions", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + } + } + }, + "AzureIaaSVMHealthDetails": { + "description": "Azure IaaS VM workload-specific Health Details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ResourceHealthDetails" + } + ] + }, + "AzureIaaSVMJob": { + "description": "Azure IaaS VM workload-specific job object.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Job" + } + ], + "properties": { + "duration": { + "format": "duration", + "description": "Time elapsed during the execution of this job.", + "type": "string" + }, + "actionsInfo": { + "description": "Gets or sets the state/actions applicable on this job like cancel/retry.", + "type": "array", + "items": { + "enum": [ + "Invalid", + "Cancellable", + "Retriable" + ], + "type": "string", + "x-ms-enum": { + "name": "JobSupportedAction", + "modelAsString": false + } + } + }, + "errorDetails": { + "description": "Error details on execution of this job.", + "type": "array", + "items": { + "$ref": "#/definitions/AzureIaaSVMErrorInfo" + } + }, + "virtualMachineVersion": { + "description": "Specifies whether the backup item is a Classic or an Azure Resource Manager VM.", + "type": "string" + }, + "extendedInfo": { + "$ref": "#/definitions/AzureIaaSVMJobExtendedInfo", + "description": "Additional information for this job." + } + }, + "x-ms-discriminator-value": "AzureIaaSVMJob" + }, + "AzureIaaSVMJobExtendedInfo": { + "description": "Azure IaaS VM workload-specific additional information for job.", + "type": "object", + "properties": { + "tasksList": { + "description": "List of tasks associated with this job.", + "type": "array", + "items": { + "$ref": "#/definitions/AzureIaaSVMJobTaskDetails" + } + }, + "propertyBag": { + "description": "Job properties.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "internalPropertyBag": { + "description": "Job internal properties.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "progressPercentage": { + "format": "double", + "description": "Indicates progress of the job. Null if it has not started or completed.", + "type": "number" + }, + "estimatedRemainingDuration": { + "description": "Time remaining for execution of this job.", + "type": "string" + }, + "dynamicErrorMessage": { + "description": "Non localized error message on job execution.", + "type": "string" + } + } + }, + "AzureIaaSVMJobTaskDetails": { + "description": "Azure IaaS VM workload-specific job task details.", + "type": "object", + "properties": { + "taskId": { + "description": "The task display name.", + "type": "string" + }, + "startTime": { + "format": "date-time", + "description": "The start time.", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "The end time.", + "type": "string" + }, + "instanceId": { + "description": "The instanceId.", + "type": "string" + }, + "duration": { + "format": "duration", + "description": "Time elapsed for task.", + "type": "string" + }, + "status": { + "description": "The status.", + "type": "string" + }, + "progressPercentage": { + "format": "double", + "description": "Progress of the task.", + "type": "number" + }, + "taskExecutionDetails": { + "description": "Details about execution of the task.\r\neg: number of bytes transferred etc", + "type": "string" + } + } + }, + "AzureIaaSVMProtectedItem": { + "description": "IaaS VM workload-specific backup item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectedItem" + } + ], + "properties": { + "friendlyName": { + "description": "Friendly name of the VM represented by this backup item.", + "type": "string" + }, + "virtualMachineId": { + "description": "Fully qualified ARM ID of the virtual machine represented by this item.", + "type": "string" + }, + "protectionStatus": { + "description": "Backup status of this backup item.", + "type": "string" + }, + "protectionState": { + "description": "Backup state of this backup item.", + "enum": [ + "Invalid", + "IRPending", + "Protected", + "ProtectionError", + "ProtectionStopped", + "ProtectionPaused" + ], + "type": "string", + "x-ms-enum": { + "name": "ProtectionState", + "modelAsString": true + } + }, + "healthStatus": { + "description": "Health status of protected item.", + "enum": [ + "Passed", + "ActionRequired", + "ActionSuggested", + "Invalid" + ], + "type": "string", + "x-ms-enum": { + "name": "HealthStatus", + "modelAsString": true + } + }, + "healthDetails": { + "description": "Health details on this backup item.", + "type": "array", + "items": { + "$ref": "#/definitions/AzureIaaSVMHealthDetails" + } + }, + "kpisHealths": { + "description": "Health details of different KPIs", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/KPIResourceHealthDetails" + } + }, + "lastBackupStatus": { + "description": "Last backup operation status.", + "type": "string" + }, + "lastBackupTime": { + "format": "date-time", + "description": "Timestamp of the last backup operation on this backup item.", + "type": "string" + }, + "protectedItemDataId": { + "description": "Data ID of the protected item.", + "type": "string" + }, + "extendedInfo": { + "$ref": "#/definitions/AzureIaaSVMProtectedItemExtendedInfo", + "description": "Additional information for this backup item." + }, + "extendedProperties": { + "$ref": "#/definitions/ExtendedProperties" + } + }, + "x-ms-discriminator-value": "AzureIaaSVMProtectedItem" + }, + "AzureIaaSVMProtectedItemExtendedInfo": { + "description": "Additional information on Azure IaaS VM specific backup item.", + "type": "object", + "properties": { + "oldestRecoveryPoint": { + "format": "date-time", + "description": "The oldest backup copy available for this backup item.", + "type": "string" + }, + "recoveryPointCount": { + "format": "int32", + "description": "Number of backup copies available for this backup item.", + "type": "integer" + }, + "policyInconsistent": { + "description": "Specifies if backup policy associated with the backup item is inconsistent.", + "type": "boolean" + } + } + }, + "AzureIaaSVMProtectionPolicy": { + "description": "IaaS VM workload-specific backup policy.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionPolicy" + } + ], + "properties": { + "instantRPDetails": { + "$ref": "#/definitions/InstantRPAdditionalDetails" + }, + "schedulePolicy": { + "$ref": "#/definitions/SchedulePolicy", + "description": "Backup schedule specified as part of backup policy." + }, + "retentionPolicy": { + "$ref": "#/definitions/RetentionPolicy", + "description": "Retention policy with the details on backup copy retention ranges." + }, + "instantRpRetentionRangeInDays": { + "format": "int32", + "description": "Instant RP retention policy range in days", + "type": "integer" + }, + "timeZone": { + "description": "TimeZone optional input as string. For example: TimeZone = \"Pacific Standard Time\".", + "type": "string" + } + }, + "x-ms-discriminator-value": "AzureIaasVM" + }, + "AzureSqlProtectedItem": { + "description": "Azure SQL workload-specific backup item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectedItem" + } + ], + "properties": { + "protectedItemDataId": { + "description": "Internal ID of a backup item. Used by Azure SQL Backup engine to contact Recovery Services.", + "type": "string" + }, + "protectionState": { + "description": "Backup state of the backed up item.", + "enum": [ + "Invalid", + "IRPending", + "Protected", + "ProtectionError", + "ProtectionStopped", + "ProtectionPaused" + ], + "type": "string", + "x-ms-enum": { + "name": "ProtectedItemState", + "modelAsString": true + } + }, + "extendedInfo": { + "$ref": "#/definitions/AzureSqlProtectedItemExtendedInfo", + "description": "Additional information for this backup item." + } + }, + "x-ms-discriminator-value": "Microsoft.Sql/servers/databases" + }, + "AzureSqlProtectedItemExtendedInfo": { + "description": "Additional information on Azure Sql specific protected item.", + "type": "object", + "properties": { + "oldestRecoveryPoint": { + "format": "date-time", + "description": "The oldest backup copy available for this item in the service.", + "type": "string" + }, + "recoveryPointCount": { + "format": "int32", + "description": "Number of available backup copies associated with this backup item.", + "type": "integer" + }, + "policyState": { + "description": "State of the backup policy associated with this backup item.", + "type": "string" + } + } + }, + "AzureStorageErrorInfo": { + "description": "Azure storage specific error information", + "type": "object", + "properties": { + "errorCode": { + "format": "int32", + "description": "Error code.", + "type": "integer" + }, + "errorString": { + "description": "Localized error string.", + "type": "string" + }, + "recommendations": { + "description": "List of localized recommendations for above error code.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "AzureSqlProtectionPolicy": { + "description": "Azure SQL workload-specific backup policy.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionPolicy" + } + ], + "properties": { + "retentionPolicy": { + "$ref": "#/definitions/RetentionPolicy", + "description": "Retention policy details." + } + }, + "x-ms-discriminator-value": "AzureSql" + }, + "AzureStorageJob": { + "description": "Azure storage specific job.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Job" + } + ], + "properties": { + "duration": { + "format": "duration", + "description": "Time elapsed during the execution of this job.", + "type": "string" + }, + "actionsInfo": { + "description": "Gets or sets the state/actions applicable on this job like cancel/retry.", + "type": "array", + "items": { + "enum": [ + "Invalid", + "Cancellable", + "Retriable" + ], + "type": "string", + "x-ms-enum": { + "name": "JobSupportedAction", + "modelAsString": false + } + } + }, + "errorDetails": { + "description": "Error details on execution of this job.", + "type": "array", + "items": { + "$ref": "#/definitions/AzureStorageErrorInfo" + } + }, + "storageAccountName": { + "description": "Specifies friendly name of the storage account.", + "type": "string" + }, + "storageAccountVersion": { + "description": "Specifies whether the Storage account is a Classic or an Azure Resource Manager Storage account.", + "type": "string" + }, + "extendedInfo": { + "$ref": "#/definitions/AzureStorageJobExtendedInfo", + "description": "Additional information about the job." + } + }, + "x-ms-discriminator-value": "AzureStorageJob" + }, + "AzureStorageJobExtendedInfo": { + "description": "Azure Storage workload-specific additional information for job.", + "type": "object", + "properties": { + "tasksList": { + "description": "List of tasks for this job", + "type": "array", + "items": { + "$ref": "#/definitions/AzureStorageJobTaskDetails" + } + }, + "propertyBag": { + "description": "Job properties.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "dynamicErrorMessage": { + "description": "Non localized error message on job execution.", + "type": "string" + } + } + }, + "AzureStorageJobTaskDetails": { + "description": "Azure storage workload specific job task details.", + "type": "object", + "properties": { + "taskId": { + "description": "The task display name.", + "type": "string" + }, + "status": { + "description": "The status.", + "type": "string" + } + } + }, + "AzureVmWorkloadProtectedItem": { + "description": "Azure VM workload-specific protected item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectedItem" + } + ], + "properties": { + "friendlyName": { + "description": "Friendly name of the DB represented by this backup item.", + "type": "string" + }, + "serverName": { + "description": "Host/Cluster Name for instance or AG", + "type": "string" + }, + "parentName": { + "description": "Parent name of the DB such as Instance or Availability Group.", + "type": "string" + }, + "parentType": { + "description": "Parent type of protected item, example: for a DB, standalone server or distributed", + "type": "string" + }, + "protectionStatus": { + "description": "Backup status of this backup item.", + "type": "string" + }, + "protectionState": { + "description": "Backup state of this backup item.", + "enum": [ + "Invalid", + "IRPending", + "Protected", + "ProtectionError", + "ProtectionStopped", + "ProtectionPaused" + ], + "type": "string", + "x-ms-enum": { + "name": "ProtectionState", + "modelAsString": true + } + }, + "lastBackupStatus": { + "description": "Last backup operation status. Possible values: Healthy, Unhealthy.", + "enum": [ + "Invalid", + "Healthy", + "Unhealthy", + "IRPending" + ], + "type": "string", + "x-ms-enum": { + "name": "LastBackupStatus", + "modelAsString": true + } + }, + "lastBackupTime": { + "format": "date-time", + "description": "Timestamp of the last backup operation on this backup item.", + "type": "string" + }, + "lastBackupErrorDetail": { + "$ref": "#/definitions/ErrorDetail", + "description": "Error details in last backup" + }, + "protectedItemDataSourceId": { + "description": "Data ID of the protected item.", + "type": "string" + }, + "protectedItemHealthStatus": { + "description": "Health status of the backup item, evaluated based on last heartbeat received", + "enum": [ + "Invalid", + "Healthy", + "Unhealthy", + "NotReachable", + "IRPending" + ], + "type": "string", + "x-ms-enum": { + "name": "ProtectedItemHealthStatus", + "modelAsString": true + } + }, + "extendedInfo": { + "$ref": "#/definitions/AzureVmWorkloadProtectedItemExtendedInfo", + "description": "Additional information for this backup item." + }, + "kpisHealths": { + "description": "Health details of different KPIs", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/KPIResourceHealthDetails" + } + } + }, + "x-ms-discriminator-value": "AzureVmWorkloadProtectedItem" + }, + "AzureVmWorkloadProtectedItemExtendedInfo": { + "description": "Additional information on Azure Workload for SQL specific backup item.", + "type": "object", + "properties": { + "oldestRecoveryPoint": { + "format": "date-time", + "description": "The oldest backup copy available for this backup item.", + "type": "string" + }, + "recoveryPointCount": { + "format": "int32", + "description": "Number of backup copies available for this backup item.", + "type": "integer" + }, + "policyState": { + "description": "Indicates consistency of policy object and policy applied to this backup item.", + "type": "string" + } + } + }, + "AzureVmWorkloadSAPAseDatabaseProtectedItem": { + "description": "Azure VM workload-specific protected item representing SAP ASE Database.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureVmWorkloadProtectedItem" + } + ], + "x-ms-discriminator-value": "AzureVmWorkloadSAPAseDatabase" + }, + "AzureVmWorkloadSAPHanaDatabaseProtectedItem": { + "description": "Azure VM workload-specific protected item representing SAP HANA Database.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureVmWorkloadProtectedItem" + } + ], + "x-ms-discriminator-value": "AzureVmWorkloadSAPHanaDatabase" + }, + "AzureVmWorkloadSQLDatabaseProtectedItem": { + "description": "Azure VM workload-specific protected item representing SQL Database.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureVmWorkloadProtectedItem" + } + ], + "x-ms-discriminator-value": "AzureVmWorkloadSQLDatabase" + }, + "AzureWorkloadErrorInfo": { + "description": "Azure storage specific error information", + "type": "object", + "properties": { + "errorCode": { + "format": "int32", + "description": "Error code.", + "type": "integer" + }, + "errorString": { + "description": "Localized error string.", + "type": "string" + }, + "errorTitle": { + "description": "Title: Typically, the entity that the error pertains to.", + "type": "string" + }, + "recommendations": { + "description": "List of localized recommendations for above error code.", + "type": "array", + "items": { + "type": "string" + } + }, + "additionalDetails": { + "description": "Additional details for above error code.", + "type": "string" + } + } + }, + "AzureWorkloadJob": { + "description": "Azure storage specific job.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Job" + } + ], + "properties": { + "workloadType": { + "description": "Workload type of the job", + "type": "string" + }, + "duration": { + "format": "duration", + "description": "Time elapsed during the execution of this job.", + "type": "string" + }, + "actionsInfo": { + "description": "Gets or sets the state/actions applicable on this job like cancel/retry.", + "type": "array", + "items": { + "enum": [ + "Invalid", + "Cancellable", + "Retriable" + ], + "type": "string", + "x-ms-enum": { + "name": "JobSupportedAction", + "modelAsString": false + } + } + }, + "errorDetails": { + "description": "Error details on execution of this job.", + "type": "array", + "items": { + "$ref": "#/definitions/AzureWorkloadErrorInfo" + } + }, + "extendedInfo": { + "$ref": "#/definitions/AzureWorkloadJobExtendedInfo", + "description": "Additional information about the job." + } + }, + "x-ms-discriminator-value": "AzureWorkloadJob" + }, + "AzureWorkloadJobExtendedInfo": { + "description": "Azure VM workload-specific additional information for job.", + "type": "object", + "properties": { + "tasksList": { + "description": "List of tasks for this job", + "type": "array", + "items": { + "$ref": "#/definitions/AzureWorkloadJobTaskDetails" + } + }, + "propertyBag": { + "description": "Job properties.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "dynamicErrorMessage": { + "description": "Non localized error message on job execution.", + "type": "string" + } + } + }, + "AzureWorkloadJobTaskDetails": { + "description": "Azure VM workload specific job task details.", + "type": "object", + "properties": { + "taskId": { + "description": "The task display name.", + "type": "string" + }, + "status": { + "description": "The status.", + "type": "string" + } + } + }, + "AzureWorkloadPointInTimeRecoveryPoint": { + "description": "Recovery point specific to PointInTime", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadRecoveryPoint" + } + ], + "properties": { + "timeRanges": { + "description": "List of log ranges", + "type": "array", + "items": { + "$ref": "#/definitions/PointInTimeRange" + } + } + }, + "x-ms-discriminator-value": "AzureWorkloadPointInTimeRecoveryPoint" + }, + "AzureWorkloadPointInTimeRestoreRequest": { + "description": "AzureWorkload SAP Hana -specific restore. Specifically for PointInTime/Log restore", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadRestoreRequest" + } + ], + "properties": { + "pointInTime": { + "format": "date-time", + "description": "PointInTime value", + "type": "string" + } + }, + "x-ms-discriminator-value": "AzureWorkloadPointInTimeRestoreRequest" + }, + "AzureWorkloadRecoveryPoint": { + "description": "Workload specific recovery point, specifically encapsulates full/diff recovery point", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RecoveryPoint" + } + ], + "properties": { + "recoveryPointTimeInUTC": { + "format": "date-time", + "description": "UTC time at which recovery point was created", + "type": "string" + }, + "type": { + "description": "Type of restore point", + "enum": [ + "Invalid", + "Full", + "Log", + "Differential", + "Incremental" + ], + "type": "string", + "x-ms-enum": { + "name": "RestorePointType", + "modelAsString": true + } + }, + "recoveryPointTierDetails": { + "description": "Recovery point tier information.", + "type": "array", + "items": { + "$ref": "#/definitions/RecoveryPointTierInformation" + } + }, + "recoveryPointMoveReadinessInfo": { + "description": "Eligibility of RP to be moved to another tier", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/RecoveryPointMoveReadinessInfo" + } + } + }, + "x-ms-discriminator-value": "AzureWorkloadRecoveryPoint" + }, + "AzureWorkloadRestoreRequest": { + "description": "AzureWorkload-specific restore.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RestoreRequest" + } + ], + "properties": { + "recoveryType": { + "description": "Type of this recovery.", + "enum": [ + "Invalid", + "OriginalLocation", + "AlternateLocation", + "RestoreDisks", + "Offline" + ], + "type": "string", + "x-ms-enum": { + "name": "RecoveryType", + "modelAsString": true + } + }, + "sourceResourceId": { + "description": "Fully qualified ARM ID of the VM on which workload that was running is being recovered.", + "type": "string" + }, + "propertyBag": { + "description": "Workload specific property bag.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "targetInfo": { + "$ref": "#/definitions/TargetRestoreInfo", + "description": "Details of target database" + }, + "recoveryMode": { + "description": "Defines whether the current recovery mode is file restore or database restore", + "enum": [ + "Invalid", + "FileRecovery", + "WorkloadRecovery" + ], + "type": "string", + "x-ms-enum": { + "name": "RecoveryMode", + "modelAsString": true + } + }, + "targetVirtualMachineId": { + "description": "This is the complete ARM Id of the target VM\r\nFor e.g. /subscriptions/{subId}/resourcegroups/{rg}/provider/Microsoft.Compute/virtualmachines/{vm}", + "type": "string" + } + }, + "x-ms-discriminator-value": "AzureWorkloadRestoreRequest" + }, + "AzureWorkloadSAPHanaPointInTimeRecoveryPoint": { + "description": "Recovery point specific to PointInTime in SAPHana", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadPointInTimeRecoveryPoint" + } + ], + "x-ms-discriminator-value": "AzureWorkloadSAPHanaPointInTimeRecoveryPoint" + }, + "AzureWorkloadSAPHanaPointInTimeRestoreRequest": { + "description": "AzureWorkload SAP Hana -specific restore. Specifically for PointInTime/Log restore", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadSAPHanaRestoreRequest" + } + ], + "properties": { + "pointInTime": { + "format": "date-time", + "description": "PointInTime value", + "type": "string" + } + }, + "x-ms-discriminator-value": "AzureWorkloadSAPHanaPointInTimeRestoreRequest" + }, + "AzureWorkloadSAPHanaRecoveryPoint": { + "description": "SAPHana specific recoverypoint, specifically encapsulates full/diff recoverypoints", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadRecoveryPoint" + } + ], + "x-ms-discriminator-value": "AzureWorkloadSAPHanaRecoveryPoint" + }, + "AzureWorkloadSAPHanaRestoreRequest": { + "description": "AzureWorkload SAP Hana-specific restore.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadRestoreRequest" + } + ], + "x-ms-discriminator-value": "AzureWorkloadSAPHanaRestoreRequest" + }, + "AzureWorkloadSQLPointInTimeRecoveryPoint": { + "description": "Recovery point specific to PointInTime", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadSQLRecoveryPoint" + } + ], + "properties": { + "timeRanges": { + "description": "List of log ranges", + "type": "array", + "items": { + "$ref": "#/definitions/PointInTimeRange" + } + } + }, + "x-ms-discriminator-value": "AzureWorkloadSQLPointInTimeRecoveryPoint" + }, + "AzureWorkloadSQLPointInTimeRestoreRequest": { + "description": "AzureWorkload SQL -specific restore. Specifically for PointInTime/Log restore", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadSQLRestoreRequest" + } + ], + "properties": { + "pointInTime": { + "format": "date-time", + "description": "PointInTime value", + "type": "string" + } + }, + "x-ms-discriminator-value": "AzureWorkloadSQLPointInTimeRestoreRequest" + }, + "AzureWorkloadSQLRecoveryPoint": { + "description": "SQL specific recoverypoint, specifically encapsulates full/diff recoverypoint along with extended info", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadRecoveryPoint" + } + ], + "properties": { + "extendedInfo": { + "$ref": "#/definitions/AzureWorkloadSQLRecoveryPointExtendedInfo", + "description": "Extended Info that provides data directory details. Will be populated in two cases:\r\nWhen a specific recovery point is accessed using GetRecoveryPoint\r\nOr when ListRecoveryPoints is called for Log RP only with ExtendedInfo query filter" + } + }, + "x-ms-discriminator-value": "AzureWorkloadSQLRecoveryPoint" + }, + "AzureWorkloadSQLRecoveryPointExtendedInfo": { + "description": "Extended info class details", + "type": "object", + "properties": { + "dataDirectoryTimeInUTC": { + "format": "date-time", + "description": "UTC time at which data directory info was captured", + "type": "string" + }, + "dataDirectoryPaths": { + "description": "List of data directory paths during restore operation.", + "type": "array", + "items": { + "$ref": "#/definitions/SQLDataDirectory" + } + } + } + }, + "AzureWorkloadSQLRestoreRequest": { + "description": "AzureWorkload SQL -specific restore. Specifically for full/diff restore", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadRestoreRequest" + } + ], + "properties": { + "shouldUseAlternateTargetLocation": { + "description": "Default option set to true. If this is set to false, alternate data directory must be provided", + "type": "boolean" + }, + "isNonRecoverable": { + "description": "SQL specific property where user can chose to set no-recovery when restore operation is tried", + "type": "boolean" + }, + "alternateDirectoryPaths": { + "description": "Data directory details", + "type": "array", + "items": { + "$ref": "#/definitions/SQLDataDirectoryMapping" + } + } + }, + "x-ms-discriminator-value": "AzureWorkloadSQLRestoreRequest" + }, + "BEKDetails": { + "description": "BEK is bitlocker encryption key.", + "type": "object", + "properties": { + "secretUrl": { + "description": "Secret is BEK.", + "type": "string" + }, + "secretVaultId": { + "description": "ID of the Key Vault where this Secret is stored.", + "type": "string" + }, + "secretData": { + "description": "BEK data.", + "type": "string" + } + } + }, + "BMSRPQueryObject": { + "description": "Filters to list backup copies.", + "type": "object", + "properties": { + "startDate": { + "format": "date-time", + "description": "Backup copies created after this time.", + "type": "string" + }, + "endDate": { + "format": "date-time", + "description": "Backup copies created before this time.", + "type": "string" + }, + "restorePointQueryType": { + "description": "RestorePoint type", + "enum": [ + "Invalid", + "Full", + "Log", + "Differential", + "FullAndDifferential", + "All", + "Incremental" + ], + "type": "string", + "x-ms-enum": { + "name": "RestorePointQueryType", + "modelAsString": true + } + }, + "extendedInfo": { + "description": "In Get Recovery Point, it tells whether extended information about recovery point is asked.", + "type": "boolean" + }, + "moveReadyRPOnly": { + "description": "Whether the RP can be moved to another tier", + "type": "boolean" + } + } + }, + "DiskExclusionProperties": { + "type": "object", + "properties": { + "diskLunList": { + "description": "List of Disks' Logical Unit Numbers (LUN) to be used for VM Protection.", + "type": "array", + "items": { + "format": "int32", + "type": "integer" + } + }, + "isInclusionList": { + "description": "Flag to indicate whether DiskLunList is to be included/ excluded from backup.", + "type": "boolean" + } + } + }, + "ClientDiscoveryDisplay": { + "description": "Localized display information of an operation.", + "type": "object", + "properties": { + "provider": { + "description": "Name of the provider for display purposes", + "type": "string" + }, + "resource": { + "description": "ResourceType for which this Operation can be performed.", + "type": "string" + }, + "operation": { + "description": "Operations Name itself.", + "type": "string" + }, + "description": { + "description": "Description of the operation having details of what operation is about.", + "type": "string" + } + } + }, + "ClientDiscoveryForLogSpecification": { + "description": "Class to represent shoebox log specification in json client discovery.", + "type": "object", + "properties": { + "name": { + "description": "Name for shoebox log specification.", + "type": "string" + }, + "displayName": { + "description": "Localized display name", + "type": "string" + }, + "blobDuration": { + "description": "blob duration of shoebox log specification", + "type": "string" + } + } + }, + "ClientDiscoveryForProperties": { + "description": "Class to represent shoebox properties in json client discovery.", + "type": "object", + "properties": { + "serviceSpecification": { + "$ref": "#/definitions/ClientDiscoveryForServiceSpecification", + "description": "Operation properties." + } + } + }, + "ClientDiscoveryForServiceSpecification": { + "description": "Class to represent shoebox service specification in json client discovery.", + "type": "object", + "properties": { + "logSpecifications": { + "description": "List of log specifications of this operation.", + "type": "array", + "items": { + "$ref": "#/definitions/ClientDiscoveryForLogSpecification" + } + } + } + }, + "ClientDiscoveryResponse": { + "description": "Operations List response which contains list of available APIs.", + "type": "object", + "properties": { + "value": { + "description": "List of available operations.", + "type": "array", + "items": { + "$ref": "#/definitions/ClientDiscoveryValueForSingleApi" + } + }, + "nextLink": { + "description": "Link to the next chunk of Response.", + "type": "string" + } + } + }, + "ClientDiscoveryValueForSingleApi": { + "description": "Available operation details.", + "type": "object", + "properties": { + "name": { + "description": "Name of the Operation.", + "type": "string" + }, + "display": { + "$ref": "#/definitions/ClientDiscoveryDisplay", + "description": "Contains the localized display information for this particular operation" + }, + "origin": { + "description": "The intended executor of the operation;governs the display of the operation in the RBAC UX and the audit logs UX", + "type": "string" + }, + "properties": { + "$ref": "#/definitions/ClientDiscoveryForProperties", + "description": "ShoeBox properties for the given operation." + } + } + }, + "DiskInformation": { + "description": "Disk information", + "type": "object", + "properties": { + "lun": { + "format": "int32", + "type": "integer" + }, + "name": { + "type": "string" + } + } + }, + "DailyRetentionFormat": { + "description": "Daily retention format.", + "type": "object", + "properties": { + "daysOfTheMonth": { + "description": "List of days of the month.", + "type": "array", + "items": { + "$ref": "#/definitions/Day" + } + } + } + }, + "DailyRetentionSchedule": { + "description": "Daily retention schedule.", + "type": "object", + "properties": { + "retentionTimes": { + "description": "Retention times of retention policy.", + "type": "array", + "items": { + "format": "date-time", + "type": "string" + } + }, + "retentionDuration": { + "$ref": "#/definitions/RetentionDuration", + "description": "Retention duration of retention Policy." + } + } + }, + "Day": { + "description": "Day of the week.", + "type": "object", + "properties": { + "date": { + "format": "int32", + "description": "Date of the month", + "type": "integer" + }, + "isLast": { + "description": "Whether Date is last date of month", + "type": "boolean" + } + } + }, + "DpmErrorInfo": { + "description": "DPM workload-specific error information.", + "type": "object", + "properties": { + "errorString": { + "description": "Localized error string.", + "type": "string" + }, + "recommendations": { + "description": "List of localized recommendations for above error code.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "DpmJob": { + "description": "DPM workload-specific job object.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Job" + } + ], + "properties": { + "duration": { + "format": "duration", + "description": "Time elapsed for job.", + "type": "string" + }, + "dpmServerName": { + "description": "DPM server name managing the backup item or backup job.", + "type": "string" + }, + "containerName": { + "description": "Name of cluster/server protecting current backup item, if any.", + "type": "string" + }, + "containerType": { + "description": "Type of container.", + "type": "string" + }, + "workloadType": { + "description": "Type of backup item.", + "type": "string" + }, + "actionsInfo": { + "description": "The state/actions applicable on this job like cancel/retry.", + "type": "array", + "items": { + "enum": [ + "Invalid", + "Cancellable", + "Retriable" + ], + "type": "string", + "x-ms-enum": { + "name": "JobSupportedAction", + "modelAsString": false + } + } + }, + "errorDetails": { + "description": "The errors.", + "type": "array", + "items": { + "$ref": "#/definitions/DpmErrorInfo" + } + }, + "extendedInfo": { + "$ref": "#/definitions/DpmJobExtendedInfo", + "description": "Additional information for this job." + } + }, + "x-ms-discriminator-value": "DpmJob" + }, + "DpmJobExtendedInfo": { + "description": "Additional information on the DPM workload-specific job.", + "type": "object", + "properties": { + "tasksList": { + "description": "List of tasks associated with this job.", + "type": "array", + "items": { + "$ref": "#/definitions/DpmJobTaskDetails" + } + }, + "propertyBag": { + "description": "The job properties.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "dynamicErrorMessage": { + "description": "Non localized error message on job execution.", + "type": "string" + } + } + }, + "DpmJobTaskDetails": { + "description": "DPM workload-specific job task details.", + "type": "object", + "properties": { + "taskId": { + "description": "The task display name.", + "type": "string" + }, + "startTime": { + "format": "date-time", + "description": "The start time.", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "The end time.", + "type": "string" + }, + "duration": { + "format": "duration", + "description": "Time elapsed for task.", + "type": "string" + }, + "status": { + "description": "The status.", + "type": "string" + } + } + }, + "DPMProtectedItem": { + "description": "Additional information on Backup engine specific backup item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectedItem" + } + ], + "properties": { + "friendlyName": { + "description": "Friendly name of the managed item", + "type": "string" + }, + "backupEngineName": { + "description": "Backup Management server protecting this backup item", + "type": "string" + }, + "protectionState": { + "description": "Protection state of the backup engine", + "enum": [ + "Invalid", + "IRPending", + "Protected", + "ProtectionError", + "ProtectionStopped", + "ProtectionPaused" + ], + "type": "string", + "x-ms-enum": { + "name": "ProtectedItemState", + "modelAsString": true + } + }, + "extendedInfo": { + "$ref": "#/definitions/DPMProtectedItemExtendedInfo", + "description": "Extended info of the backup item." + } + }, + "x-ms-discriminator-value": "DPMProtectedItem" + }, + "DPMProtectedItemExtendedInfo": { + "description": "Additional information of DPM Protected item.", + "type": "object", + "properties": { + "protectableObjectLoadPath": { + "description": "Attribute to provide information on various DBs.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "protected": { + "description": "To check if backup item is disk protected.", + "type": "boolean" + }, + "isPresentOnCloud": { + "description": "To check if backup item is cloud protected.", + "type": "boolean" + }, + "lastBackupStatus": { + "description": "Last backup status information on backup item.", + "type": "string" + }, + "lastRefreshedAt": { + "format": "date-time", + "description": "Last refresh time on backup item.", + "type": "string" + }, + "oldestRecoveryPoint": { + "format": "date-time", + "description": "Oldest cloud recovery point time.", + "type": "string" + }, + "recoveryPointCount": { + "format": "int32", + "description": "cloud recovery point count.", + "type": "integer" + }, + "onPremiseOldestRecoveryPoint": { + "format": "date-time", + "description": "Oldest disk recovery point time.", + "type": "string" + }, + "onPremiseLatestRecoveryPoint": { + "format": "date-time", + "description": "latest disk recovery point time.", + "type": "string" + }, + "onPremiseRecoveryPointCount": { + "format": "int32", + "description": "disk recovery point count.", + "type": "integer" + }, + "isCollocated": { + "description": "To check if backup item is collocated.", + "type": "boolean" + }, + "protectionGroupName": { + "description": "Protection group name of the backup item.", + "type": "string" + }, + "diskStorageUsedInBytes": { + "description": "Used Disk storage in bytes.", + "type": "string" + }, + "totalDiskStorageSizeInBytes": { + "description": "total Disk storage in bytes.", + "type": "string" + } + } + }, + "EncryptionDetails": { + "description": "Details needed if the VM was encrypted at the time of backup.", + "type": "object", + "properties": { + "encryptionEnabled": { + "description": "Identifies whether this backup copy represents an encrypted VM at the time of backup.", + "type": "boolean" + }, + "kekUrl": { + "description": "Key Url.", + "type": "string" + }, + "secretKeyUrl": { + "description": "Secret Url.", + "type": "string" + }, + "kekVaultId": { + "description": "ID of Key Vault where KEK is stored.", + "type": "string" + }, + "secretKeyVaultId": { + "description": "ID of Key Vault where Secret is stored.", + "type": "string" + } + } + }, + "ErrorDetail": { + "description": "Error Detail class which encapsulates Code, Message and Recommendations.", + "type": "object", + "properties": { + "code": { + "description": "Error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "Error Message related to the Code.", + "type": "string", + "readOnly": true + }, + "recommendations": { + "description": "List of recommendation strings.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + } + } + }, + "ExportJobsOperationResultInfo": { + "description": "This class is used to send blob details after exporting jobs.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/OperationResultInfoBase" + } + ], + "properties": { + "blobUrl": { + "description": "URL of the blob into which the serialized string of list of jobs is exported.", + "type": "string" + }, + "blobSasKey": { + "description": "SAS key to access the blob. It expires in 15 mins.", + "type": "string" + }, + "excelFileBlobUrl": { + "description": "URL of the blob into which the ExcelFile is uploaded.", + "type": "string" + }, + "excelFileBlobSasKey": { + "description": "SAS key to access the blob. It expires in 15 mins.", + "type": "string" + } + }, + "x-ms-discriminator-value": "ExportJobsOperationResultInfo" + }, + "ExtendedProperties": { + "description": "Extended Properties for Azure IaasVM Backup.", + "type": "object", + "properties": { + "diskExclusionProperties": { + "$ref": "#/definitions/DiskExclusionProperties", + "description": "Extended Properties for Disk Exclusion." + } + } + }, + "GenericProtectionPolicy": { + "description": "Azure VM (Mercury) workload-specific backup policy.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionPolicy" + } + ], + "properties": { + "subProtectionPolicy": { + "description": "List of sub-protection policies which includes schedule and retention", + "type": "array", + "items": { + "$ref": "#/definitions/SubProtectionPolicy" + } + }, + "timeZone": { + "description": "TimeZone optional input as string. For example: TimeZone = \"Pacific Standard Time\".", + "type": "string" + }, + "fabricName": { + "description": "Name of this policy's fabric.", + "type": "string" + } + }, + "x-ms-discriminator-value": "GenericProtectionPolicy" + }, + "InstantRPAdditionalDetails": { + "type": "object", + "properties": { + "azureBackupRGNamePrefix": { + "type": "string" + }, + "azureBackupRGNameSuffix": { + "type": "string" + } + } + }, + "GenericProtectedItem": { + "description": "Base class for backup items.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectedItem" + } + ], + "properties": { + "friendlyName": { + "description": "Friendly name of the container.", + "type": "string" + }, + "policyState": { + "description": "Indicates consistency of policy object and policy applied to this backup item.", + "type": "string" + }, + "protectionState": { + "description": "Backup state of this backup item.", + "enum": [ + "Invalid", + "IRPending", + "Protected", + "ProtectionError", + "ProtectionStopped", + "ProtectionPaused" + ], + "type": "string", + "x-ms-enum": { + "name": "ProtectionState", + "modelAsString": true + } + }, + "protectedItemId": { + "format": "int64", + "description": "Data Plane Service ID of the protected item.", + "type": "integer" + }, + "sourceAssociations": { + "description": "Loosely coupled (type, value) associations (example - parent of a protected item)", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "fabricName": { + "description": "Name of this backup item's fabric.", + "type": "string" + } + }, + "x-ms-discriminator-value": "GenericProtectedItem" + }, + "GenericRecoveryPoint": { + "description": "Generic backup copy.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RecoveryPoint" + } + ], + "properties": { + "friendlyName": { + "description": "Friendly name of the backup copy.", + "type": "string" + }, + "recoveryPointType": { + "description": "Type of the backup copy.", + "type": "string" + }, + "recoveryPointTime": { + "format": "date-time", + "description": "Time at which this backup copy was created.", + "type": "string" + }, + "recoveryPointAdditionalInfo": { + "description": "Additional information associated with this backup copy.", + "type": "string" + } + }, + "x-ms-discriminator-value": "GenericRecoveryPoint" + }, + "GetProtectedItemQueryObject": { + "description": "Filters to list backup items.", + "type": "object", + "properties": { + "expand": { + "description": "Specifies if the additional information should be provided for this item.", + "type": "string" + } + } + }, + "IaasVMRecoveryPoint": { + "description": "IaaS VM workload specific backup copy.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RecoveryPoint" + } + ], + "properties": { + "recoveryPointType": { + "description": "Type of the backup copy.", + "type": "string" + }, + "recoveryPointTime": { + "format": "date-time", + "description": "Time at which this backup copy was created.", + "type": "string" + }, + "recoveryPointAdditionalInfo": { + "description": "Additional information associated with this backup copy.", + "type": "string" + }, + "sourceVMStorageType": { + "description": "Storage type of the VM whose backup copy is created.", + "type": "string" + }, + "isSourceVMEncrypted": { + "description": "Identifies whether the VM was encrypted when the backup copy is created.", + "type": "boolean" + }, + "keyAndSecret": { + "$ref": "#/definitions/KeyAndSecretDetails", + "description": "Required details for recovering an encrypted VM. Applicable only when IsSourceVMEncrypted is true." + }, + "isInstantIlrSessionActive": { + "description": "Is the session to recover items from this backup copy still active.", + "type": "boolean" + }, + "recoveryPointTierDetails": { + "description": "Recovery point tier information.", + "type": "array", + "items": { + "$ref": "#/definitions/RecoveryPointTierInformation" + } + }, + "isManagedVirtualMachine": { + "description": "Whether VM is with Managed Disks", + "type": "boolean" + }, + "virtualMachineSize": { + "description": "Virtual Machine Size", + "type": "string" + }, + "originalStorageAccountOption": { + "description": "Original Storage Account Option", + "type": "boolean" + }, + "osType": { + "description": "OS type", + "type": "string" + }, + "recoveryPointDiskConfiguration": { + "$ref": "#/definitions/RecoveryPointDiskConfiguration", + "description": "Disk configuration" + }, + "zones": { + "description": "Identifies the zone of the VM at the time of backup. Applicable only for zone-pinned Vms", + "type": "array", + "items": { + "type": "string" + } + }, + "recoveryPointMoveReadinessInfo": { + "description": "Eligibility of RP to be moved to another tier", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/RecoveryPointMoveReadinessInfo" + } + } + }, + "x-ms-discriminator-value": "IaasVMRecoveryPoint" + }, + "IaasVMRestoreRequest": { + "description": "IaaS VM workload-specific restore.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RestoreRequest" + } + ], + "properties": { + "recoveryPointId": { + "description": "ID of the backup copy to be recovered.", + "type": "string" + }, + "recoveryType": { + "description": "Type of this recovery.", + "enum": [ + "Invalid", + "OriginalLocation", + "AlternateLocation", + "RestoreDisks", + "Offline" + ], + "type": "string", + "x-ms-enum": { + "name": "RecoveryType", + "modelAsString": true + } + }, + "sourceResourceId": { + "description": "Fully qualified ARM ID of the VM which is being recovered.", + "type": "string" + }, + "targetVirtualMachineId": { + "description": "This is the complete ARM Id of the VM that will be created.\r\nFor e.g. /subscriptions/{subId}/resourcegroups/{rg}/provider/Microsoft.Compute/virtualmachines/{vm}", + "type": "string" + }, + "targetResourceGroupId": { + "description": "This is the ARM Id of the resource group that you want to create for this Virtual machine and other artifacts.\r\nFor e.g. /subscriptions/{subId}/resourcegroups/{rg}", + "type": "string" + }, + "storageAccountId": { + "description": "Fully qualified ARM ID of the storage account to which the VM has to be restored.", + "type": "string" + }, + "virtualNetworkId": { + "description": "This is the virtual network Id of the vnet that will be attached to the virtual machine.\r\nUser will be validated for join action permissions in the linked access.", + "type": "string" + }, + "subnetId": { + "description": "Subnet ID, is the subnet ID associated with the to be restored VM. For Classic VMs it would be\r\n{VnetID}/Subnet/{SubnetName} and, for the Azure Resource Manager VMs it would be ARM resource ID used to represent\r\nthe subnet.", + "type": "string" + }, + "targetDomainNameId": { + "description": "Fully qualified ARM ID of the domain name to be associated to the VM being restored. This applies only to Classic\r\nVirtual Machines.", + "type": "string" + }, + "region": { + "description": "Region in which the virtual machine is restored.", + "type": "string" + }, + "affinityGroup": { + "description": "Affinity group associated to VM to be restored. Used only for Classic Compute Virtual Machines.", + "type": "string" + }, + "createNewCloudService": { + "description": "Should a new cloud service be created while restoring the VM. If this is false, VM will be restored to the same\r\ncloud service as it was at the time of backup.", + "type": "boolean" + }, + "originalStorageAccountOption": { + "description": "Original Storage Account Option", + "type": "boolean" + }, + "encryptionDetails": { + "$ref": "#/definitions/EncryptionDetails", + "description": "Details needed if the VM was encrypted at the time of backup." + }, + "restoreDiskLunList": { + "description": "List of Disk LUNs for partial restore", + "type": "array", + "items": { + "format": "int32", + "type": "integer" + } + }, + "restoreWithManagedDisks": { + "description": "Flag to denote of an Unmanaged disk VM should be restored with Managed disks.", + "type": "boolean" + }, + "diskEncryptionSetId": { + "description": "DiskEncryptionSet's ID - needed if the VM needs to be encrypted at rest during restore with customer managed key.", + "type": "string" + }, + "zones": { + "description": "Target zone where the VM and its disks should be restored.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "x-ms-discriminator-value": "IaasVMRestoreRequest" + }, + "Job": { + "description": "Defines workload agnostic properties for a job.", + "required": [ + "jobType" + ], + "type": "object", + "properties": { + "entityFriendlyName": { + "description": "Friendly name of the entity on which the current job is executing.", + "type": "string" + }, + "backupManagementType": { + "description": "Backup management type to execute the current job.", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureBackupServer", + "AzureSql", + "AzureStorage", + "AzureWorkload", + "DefaultBackup" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupManagementType", + "modelAsString": true + } + }, + "operation": { + "description": "The operation name.", + "type": "string" + }, + "status": { + "description": "Job status.", + "type": "string" + }, + "startTime": { + "format": "date-time", + "description": "The start time.", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "The end time.", + "type": "string" + }, + "activityId": { + "description": "ActivityId of job.", + "type": "string" + }, + "jobType": { + "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.", + "type": "string" + } + }, + "discriminator": "jobType" + }, + "JobQueryObject": { + "description": "Filters to list the jobs.", + "type": "object", + "properties": { + "status": { + "description": "Status of the job.", + "enum": [ + "Invalid", + "InProgress", + "Completed", + "Failed", + "CompletedWithWarnings", + "Cancelled", + "Cancelling" + ], + "type": "string", + "x-ms-enum": { + "name": "JobStatus", + "modelAsString": true + } + }, + "backupManagementType": { + "description": "Type of backup management for the job.", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureBackupServer", + "AzureSql", + "AzureStorage", + "AzureWorkload", + "DefaultBackup" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupManagementType", + "modelAsString": true + } + }, + "operation": { + "description": "Type of operation.", + "enum": [ + "Invalid", + "Register", + "UnRegister", + "ConfigureBackup", + "Backup", + "Restore", + "DisableBackup", + "DeleteBackupData", + "CrossRegionRestore", + "Undelete", + "UpdateCustomerManagedKey" + ], + "type": "string", + "x-ms-enum": { + "name": "JobOperationType", + "modelAsString": true + } + }, + "jobId": { + "description": "JobID represents the job uniquely.", + "type": "string" + }, + "startTime": { + "format": "date-time", + "description": "Job has started at this time. Value is in UTC.", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "Job has ended at this time. Value is in UTC.", + "type": "string" + } + } + }, + "JobResource": { + "description": "Defines workload agnostic properties for a job.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/Job", + "description": "JobResource properties" + } + } + }, + "JobResourceList": { + "description": "List of Job resources", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ResourceList" + } + ], + "properties": { + "value": { + "description": "List of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/JobResource" + } + } + } + }, + "KEKDetails": { + "description": "KEK is encryption key for BEK.", + "type": "object", + "properties": { + "keyUrl": { + "description": "Key is KEK.", + "type": "string" + }, + "keyVaultId": { + "description": "Key Vault ID where this Key is stored.", + "type": "string" + }, + "keyBackupData": { + "description": "KEK data.", + "type": "string" + } + } + }, + "KeyAndSecretDetails": { + "description": "BEK is bitlocker key.\r\nKEK is encryption key for BEK\r\nIf the VM was encrypted then we will store following details :\r\n1. Secret(BEK) - Url + Backup Data + vaultId.\r\n2. Key(KEK) - Url + Backup Data + vaultId.\r\n3. EncryptionMechanism\r\nBEK and KEK can potentially have different vault ids.", + "type": "object", + "properties": { + "kekDetails": { + "$ref": "#/definitions/KEKDetails", + "description": "KEK is encryption key for BEK." + }, + "bekDetails": { + "$ref": "#/definitions/BEKDetails", + "description": "BEK is bitlocker encryption key." + }, + "encryptionMechanism": { + "description": "Encryption mechanism: None/ SinglePass/ DoublePass", + "type": "string" + } + } + }, + "LogSchedulePolicy": { + "description": "Log policy schedule.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/SchedulePolicy" + } + ], + "properties": { + "scheduleFrequencyInMins": { + "format": "int32", + "description": "Frequency of the log schedule operation of this policy in minutes.", + "type": "integer" + } + }, + "x-ms-discriminator-value": "LogSchedulePolicy" + }, + "LongTermRetentionPolicy": { + "description": "Long term retention policy.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RetentionPolicy" + } + ], + "properties": { + "dailySchedule": { + "$ref": "#/definitions/DailyRetentionSchedule", + "description": "Daily retention schedule of the protection policy." + }, + "weeklySchedule": { + "$ref": "#/definitions/WeeklyRetentionSchedule", + "description": "Weekly retention schedule of the protection policy." + }, + "monthlySchedule": { + "$ref": "#/definitions/MonthlyRetentionSchedule", + "description": "Monthly retention schedule of the protection policy." + }, + "yearlySchedule": { + "$ref": "#/definitions/YearlyRetentionSchedule", + "description": "Yearly retention schedule of the protection policy." + } + }, + "x-ms-discriminator-value": "LongTermRetentionPolicy" + }, + "LongTermSchedulePolicy": { + "description": "Long term policy schedule.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/SchedulePolicy" + } + ], + "x-ms-discriminator-value": "LongTermSchedulePolicy" + }, + "MabErrorInfo": { + "description": "MAB workload-specific error information.", + "type": "object", + "properties": { + "errorString": { + "description": "Localized error string.", + "type": "string", + "readOnly": true + }, + "recommendations": { + "description": "List of localized recommendations.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + } + } + }, + "MabFileFolderProtectedItem": { + "description": "MAB workload-specific backup item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectedItem" + } + ], + "properties": { + "friendlyName": { + "description": "Friendly name of this backup item.", + "type": "string" + }, + "computerName": { + "description": "Name of the computer associated with this backup item.", + "type": "string" + }, + "lastBackupStatus": { + "description": "Status of last backup operation.", + "type": "string" + }, + "lastBackupTime": { + "format": "date-time", + "description": "Timestamp of the last backup operation on this backup item.", + "type": "string" + }, + "protectionState": { + "description": "Protected, ProtectionStopped, IRPending or ProtectionError", + "type": "string" + }, + "deferredDeleteSyncTimeInUTC": { + "format": "int64", + "description": "Sync time for deferred deletion in UTC", + "type": "integer" + }, + "extendedInfo": { + "$ref": "#/definitions/MabFileFolderProtectedItemExtendedInfo", + "description": "Additional information with this backup item." + } + }, + "x-ms-discriminator-value": "MabFileFolderProtectedItem" + }, + "MabFileFolderProtectedItemExtendedInfo": { + "description": "Additional information on the backed up item.", + "type": "object", + "properties": { + "lastRefreshedAt": { + "format": "date-time", + "description": "Last time when the agent data synced to service.", + "type": "string" + }, + "oldestRecoveryPoint": { + "format": "date-time", + "description": "The oldest backup copy available.", + "type": "string" + }, + "recoveryPointCount": { + "format": "int32", + "description": "Number of backup copies associated with the backup item.", + "type": "integer" + } + } + }, + "MabJob": { + "description": "MAB workload-specific job.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Job" + } + ], + "properties": { + "duration": { + "format": "duration", + "description": "Time taken by job to run.", + "type": "string" + }, + "actionsInfo": { + "description": "The state/actions applicable on jobs like cancel/retry.", + "type": "array", + "items": { + "enum": [ + "Invalid", + "Cancellable", + "Retriable" + ], + "type": "string", + "x-ms-enum": { + "name": "JobSupportedAction", + "modelAsString": false + } + } + }, + "mabServerName": { + "description": "Name of server protecting the DS.", + "type": "string" + }, + "mabServerType": { + "description": "Server type of MAB container.", + "enum": [ + "Invalid", + "Unknown", + "IaasVMContainer", + "IaasVMServiceContainer", + "DPMContainer", + "AzureBackupServerContainer", + "MABContainer", + "Cluster", + "AzureSqlContainer", + "Windows", + "VCenter", + "VMAppContainer", + "SQLAGWorkLoadContainer", + "StorageContainer", + "GenericContainer" + ], + "type": "string", + "x-ms-enum": { + "name": "MabServerType", + "modelAsString": true + } + }, + "workloadType": { + "description": "Workload type of backup item.", + "enum": [ + "Invalid", + "VM", + "FileFolder", + "AzureSqlDb", + "SQLDB", + "Exchange", + "Sharepoint", + "VMwareVM", + "SystemState", + "Client", + "GenericDataSource", + "SQLDataBase", + "AzureFileShare", + "SAPHanaDatabase", + "SAPAseDatabase" + ], + "type": "string", + "x-ms-enum": { + "name": "WorkloadType", + "modelAsString": true + } + }, + "errorDetails": { + "description": "The errors.", + "type": "array", + "items": { + "$ref": "#/definitions/MabErrorInfo" + } + }, + "extendedInfo": { + "$ref": "#/definitions/MabJobExtendedInfo", + "description": "Additional information on the job." + } + }, + "x-ms-discriminator-value": "MabJob" + }, + "MabJobExtendedInfo": { + "description": "Additional information for the MAB workload-specific job.", + "type": "object", + "properties": { + "tasksList": { + "description": "List of tasks for this job.", + "type": "array", + "items": { + "$ref": "#/definitions/MabJobTaskDetails" + } + }, + "propertyBag": { + "description": "The job properties.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "dynamicErrorMessage": { + "description": "Non localized error message specific to this job.", + "type": "string" + } + } + }, + "MabJobTaskDetails": { + "description": "MAB workload-specific job task details.", + "type": "object", + "properties": { + "taskId": { + "description": "The task display name.", + "type": "string" + }, + "startTime": { + "format": "date-time", + "description": "The start time.", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "The end time.", + "type": "string" + }, + "duration": { + "format": "duration", + "description": "Time elapsed for task.", + "type": "string" + }, + "status": { + "description": "The status.", + "type": "string" + } + } + }, + "MabProtectionPolicy": { + "description": "Mab container-specific backup policy.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionPolicy" + } + ], + "properties": { + "schedulePolicy": { + "$ref": "#/definitions/SchedulePolicy", + "description": "Backup schedule of backup policy." + }, + "retentionPolicy": { + "$ref": "#/definitions/RetentionPolicy", + "description": "Retention policy details." + } + }, + "x-ms-discriminator-value": "MAB" + }, + "MonthlyRetentionSchedule": { + "description": "Monthly retention schedule.", + "type": "object", + "properties": { + "retentionScheduleFormatType": { + "description": "Retention schedule format type for monthly retention policy.", + "enum": [ + "Invalid", + "Daily", + "Weekly" + ], + "type": "string", + "x-ms-enum": { + "name": "RetentionScheduleFormat", + "modelAsString": true + } + }, + "retentionScheduleDaily": { + "$ref": "#/definitions/DailyRetentionFormat", + "description": "Daily retention format for monthly retention policy." + }, + "retentionScheduleWeekly": { + "$ref": "#/definitions/WeeklyRetentionFormat", + "description": "Weekly retention format for monthly retention policy." + }, + "retentionTimes": { + "description": "Retention times of retention policy.", + "type": "array", + "items": { + "format": "date-time", + "type": "string" + } + }, + "retentionDuration": { + "$ref": "#/definitions/RetentionDuration", + "description": "Retention duration of retention Policy." + } + } + }, + "OperationResultInfo": { + "description": "Operation result info.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/OperationResultInfoBase" + } + ], + "properties": { + "jobList": { + "description": "List of jobs created by this operation.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "x-ms-discriminator-value": "OperationResultInfo" + }, + "OperationResultInfoBase": { + "description": "Base class for operation result info.", + "required": [ + "objectType" + ], + "type": "object", + "properties": { + "objectType": { + "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.", + "type": "string" + } + }, + "discriminator": "objectType" + }, + "KPIResourceHealthDetails": { + "description": "KPI Resource Health Details", + "type": "object", + "properties": { + "resourceHealthStatus": { + "description": "Resource Health Status", + "enum": [ + "Healthy", + "TransientDegraded", + "PersistentDegraded", + "TransientUnhealthy", + "PersistentUnhealthy", + "Invalid" + ], + "type": "string", + "x-ms-enum": { + "name": "ResourceHealthStatus", + "modelAsString": true + } + }, + "resourceHealthDetails": { + "description": "Resource Health Status", + "type": "array", + "items": { + "$ref": "#/definitions/ResourceHealthDetails" + } + } + } + }, + "PrepareDataMoveRequest": { + "description": "Prepare DataMove Request", + "required": [ + "targetResourceId", + "targetRegion", + "dataMoveLevel" + ], + "type": "object", + "properties": { + "targetResourceId": { + "description": "ARM Id of target vault", + "type": "string" + }, + "targetRegion": { + "description": "Target Region", + "type": "string" + }, + "dataMoveLevel": { + "description": "DataMove Level", + "enum": [ + "Invalid", + "Vault", + "Container" + ], + "type": "string", + "x-ms-enum": { + "name": "DataMoveLevel", + "modelAsString": true + } + }, + "sourceContainerArmIds": { + "description": "Source Container ArmIds\r\nThis needs to be populated only if DataMoveLevel is set to container", + "type": "array", + "items": { + "type": "string" + } + }, + "ignoreMoved": { + "description": "Ignore the artifacts which are already moved.", + "type": "boolean" + } + } + }, + "PrepareDataMoveResponse": { + "description": "Prepare DataMove Response", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/VaultStorageConfigOperationResultResponse" + } + ], + "properties": { + "correlationId": { + "description": "Co-relationId for move operation", + "type": "string" + }, + "sourceVaultProperties": { + "description": "Source Vault Properties", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "x-ms-discriminator-value": "PrepareDataMoveResponse" + }, + "VaultStorageConfigOperationResultResponse": { + "description": "Operation result response for Vault Storage Config", + "required": [ + "objectType" + ], + "type": "object", + "properties": { + "objectType": { + "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.", + "type": "string" + } + }, + "discriminator": "objectType" + }, + "TriggerDataMoveRequest": { + "description": "Trigger DataMove Request", + "required": [ + "sourceResourceId", + "sourceRegion", + "dataMoveLevel", + "correlationId" + ], + "type": "object", + "properties": { + "sourceResourceId": { + "description": "ARM Id of source vault", + "type": "string" + }, + "sourceRegion": { + "description": "Source Region", + "type": "string" + }, + "dataMoveLevel": { + "description": "DataMove Level", + "enum": [ + "Invalid", + "Vault", + "Container" + ], + "type": "string", + "x-ms-enum": { + "name": "DataMoveLevel", + "modelAsString": true + } + }, + "correlationId": { + "description": "Correlation Id", + "type": "string" + }, + "sourceContainerArmIds": { + "description": "Source Container ArmIds", + "type": "array", + "items": { + "type": "string" + } + }, + "pauseGC": { + "description": "Pause GC", + "type": "boolean" + } + } + }, + "OperationResultInfoBaseResource": { + "description": "Base class for operation result info.", + "allOf": [ + { + "$ref": "#/definitions/OperationWorkerResponse" + } + ], + "properties": { + "operation": { + "$ref": "#/definitions/OperationResultInfoBase", + "description": "OperationResultInfoBaseResource operation" + } + } + }, + "OperationWorkerResponse": { + "description": "This is the base class for operation result responses.", + "type": "object", + "properties": { + "statusCode": { + "description": "HTTP Status Code of the operation.", + "enum": [ + "Continue", + "SwitchingProtocols", + "OK", + "Created", + "Accepted", + "NonAuthoritativeInformation", + "NoContent", + "ResetContent", + "PartialContent", + "MultipleChoices", + "Ambiguous", + "MovedPermanently", + "Moved", + "Found", + "Redirect", + "SeeOther", + "RedirectMethod", + "NotModified", + "UseProxy", + "Unused", + "TemporaryRedirect", + "RedirectKeepVerb", + "BadRequest", + "Unauthorized", + "PaymentRequired", + "Forbidden", + "NotFound", + "MethodNotAllowed", + "NotAcceptable", + "ProxyAuthenticationRequired", + "RequestTimeout", + "Conflict", + "Gone", + "LengthRequired", + "PreconditionFailed", + "RequestEntityTooLarge", + "RequestUriTooLong", + "UnsupportedMediaType", + "RequestedRangeNotSatisfiable", + "ExpectationFailed", + "UpgradeRequired", + "InternalServerError", + "NotImplemented", + "BadGateway", + "ServiceUnavailable", + "GatewayTimeout", + "HttpVersionNotSupported" + ], + "type": "string", + "x-ms-enum": { + "name": "HttpStatusCode", + "modelAsString": false + } + }, + "headers": { + "description": "HTTP headers associated with this operation.", + "type": "object", + "additionalProperties": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + }, + "PointInTimeRange": { + "description": "Provides details for log ranges", + "type": "object", + "properties": { + "startTime": { + "format": "date-time", + "description": "Start time of the time range for log recovery.", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "End time of the time range for log recovery.", + "type": "string" + } + } + }, + "ProtectedItem": { + "description": "Base class for backup items.", + "required": [ + "protectedItemType" + ], + "type": "object", + "properties": { + "protectedItemType": { + "description": "backup item type.", + "type": "string" + }, + "backupManagementType": { + "description": "Type of backup management for the backed up item.", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureBackupServer", + "AzureSql", + "AzureStorage", + "AzureWorkload", + "DefaultBackup" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupManagementType", + "modelAsString": true + } + }, + "workloadType": { + "description": "Type of workload this item represents.", + "enum": [ + "Invalid", + "VM", + "FileFolder", + "AzureSqlDb", + "SQLDB", + "Exchange", + "Sharepoint", + "VMwareVM", + "SystemState", + "Client", + "GenericDataSource", + "SQLDataBase", + "AzureFileShare", + "SAPHanaDatabase", + "SAPAseDatabase" + ], + "type": "string", + "x-ms-enum": { + "name": "DataSourceType", + "modelAsString": true + } + }, + "containerName": { + "description": "Unique name of container", + "type": "string" + }, + "sourceResourceId": { + "description": "ARM ID of the resource to be backed up.", + "type": "string" + }, + "policyId": { + "description": "ID of the backup policy with which this item is backed up.", + "type": "string" + }, + "lastRecoveryPoint": { + "format": "date-time", + "description": "Timestamp when the last (latest) backup copy was created for this backup item.", + "type": "string" + }, + "backupSetName": { + "description": "Name of the backup set the backup item belongs to", + "type": "string" + }, + "createMode": { + "description": "Create mode to indicate recovery of existing soft deleted data source or creation of new data source.", + "enum": [ + "Invalid", + "Default", + "Recover" + ], + "type": "string", + "x-ms-enum": { + "name": "CreateMode", + "modelAsString": true + } + }, + "deferredDeleteTimeInUTC": { + "format": "date-time", + "description": "Time for deferred deletion in UTC", + "type": "string" + }, + "isScheduledForDeferredDelete": { + "description": "Flag to identify whether the DS is scheduled for deferred delete", + "type": "boolean" + }, + "deferredDeleteTimeRemaining": { + "description": "Time remaining before the DS marked for deferred delete is permanently deleted", + "type": "string" + }, + "isDeferredDeleteScheduleUpcoming": { + "description": "Flag to identify whether the deferred deleted DS is to be purged soon", + "type": "boolean" + }, + "isRehydrate": { + "description": "Flag to identify that deferred deleted DS is to be moved into Pause state", + "type": "boolean" + } + }, + "discriminator": "protectedItemType" + }, + "ProtectedItemQueryObject": { + "description": "Filters to list backup items.", + "type": "object", + "properties": { + "healthState": { + "description": "Health State for the backed up item.", + "enum": [ + "Passed", + "ActionRequired", + "ActionSuggested", + "Invalid" + ], + "type": "string", + "x-ms-enum": { + "name": "HealthState", + "modelAsString": true + } + }, + "backupManagementType": { + "description": "Backup management type for the backed up item.", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureBackupServer", + "AzureSql", + "AzureStorage", + "AzureWorkload", + "DefaultBackup" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupManagementType", + "modelAsString": true + } + }, + "itemType": { + "description": "Type of workload this item represents.", + "enum": [ + "Invalid", + "VM", + "FileFolder", + "AzureSqlDb", + "SQLDB", + "Exchange", + "Sharepoint", + "VMwareVM", + "SystemState", + "Client", + "GenericDataSource", + "SQLDataBase", + "AzureFileShare", + "SAPHanaDatabase", + "SAPAseDatabase" + ], + "type": "string", + "x-ms-enum": { + "name": "DataSourceType", + "modelAsString": true + } + }, + "policyName": { + "description": "Backup policy name associated with the backup item.", + "type": "string" + }, + "containerName": { + "description": "Name of the container.", + "type": "string" + }, + "backupEngineName": { + "description": "Backup Engine name", + "type": "string" + }, + "friendlyName": { + "description": "Friendly name of protected item", + "type": "string" + }, + "fabricName": { + "description": "Name of the fabric.", + "type": "string" + }, + "backupSetName": { + "description": "Name of the backup set.", + "type": "string" + } + } + }, + "ProtectedItemResource": { + "description": "Base class for backup items.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ProtectedItem", + "description": "ProtectedItemResource properties" + } + } + }, + "ProtectedItemResourceList": { + "description": "List of ProtectedItem resources", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ResourceList" + } + ], + "properties": { + "value": { + "description": "List of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/ProtectedItemResource" + } + } + } + }, + "ProtectionPolicy": { + "description": "Base class for backup policy. Workload-specific backup policies are derived from this class.", + "required": [ + "backupManagementType" + ], + "type": "object", + "properties": { + "protectedItemsCount": { + "format": "int32", + "description": "Number of items associated with this policy.", + "type": "integer" + }, + "backupManagementType": { + "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.", + "type": "string" + } + }, + "discriminator": "backupManagementType" + }, + "ProtectionPolicyQueryObject": { + "description": "Filters the list backup policies API.", + "type": "object", + "properties": { + "backupManagementType": { + "description": "Backup management type for the backup policy.", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureBackupServer", + "AzureSql", + "AzureStorage", + "AzureWorkload", + "DefaultBackup" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupManagementType", + "modelAsString": true + } + }, + "fabricName": { + "description": "Fabric name for filter", + "type": "string" + }, + "workloadType": { + "description": "Workload type for the backup policy.", + "enum": [ + "Invalid", + "VM", + "FileFolder", + "AzureSqlDb", + "SQLDB", + "Exchange", + "Sharepoint", + "VMwareVM", + "SystemState", + "Client", + "GenericDataSource", + "SQLDataBase", + "AzureFileShare", + "SAPHanaDatabase", + "SAPAseDatabase" + ], + "type": "string", + "x-ms-enum": { + "name": "WorkloadType", + "modelAsString": true + } + } + } + }, + "ProtectionPolicyResource": { + "description": "Base class for backup policy. Workload-specific backup policies are derived from this class.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ProtectionPolicy", + "description": "ProtectionPolicyResource properties" + } + } + }, + "ProtectionPolicyResourceList": { + "description": "List of ProtectionPolicy resources", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ResourceList" + } + ], + "properties": { + "value": { + "description": "List of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/ProtectionPolicyResource" + } + } + } + }, + "RecoveryPoint": { + "description": "Base class for backup copies. Workload-specific backup copies are derived from this class.", + "required": [ + "objectType" + ], + "type": "object", + "properties": { + "objectType": { + "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.", + "type": "string" + } + }, + "discriminator": "objectType" + }, + "RecoveryPointDiskConfiguration": { + "description": "Disk configuration", + "type": "object", + "properties": { + "numberOfDisksIncludedInBackup": { + "format": "int32", + "description": "Number of disks included in backup", + "type": "integer" + }, + "numberOfDisksAttachedToVm": { + "format": "int32", + "description": "Number of disks attached to the VM", + "type": "integer" + }, + "includedDiskList": { + "description": "Information of disks included in backup", + "type": "array", + "items": { + "$ref": "#/definitions/DiskInformation" + } + }, + "excludedDiskList": { + "description": "Information of disks excluded from backup", + "type": "array", + "items": { + "$ref": "#/definitions/DiskInformation" + } + } + } + }, + "RecoveryPointResource": { + "description": "Base class for backup copies. Workload-specific backup copies are derived from this class.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/RecoveryPoint", + "description": "RecoveryPointResource properties" + } + } + }, + "RecoveryPointResourceList": { + "description": "List of RecoveryPoint resources", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ResourceList" + } + ], + "properties": { + "value": { + "description": "List of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/RecoveryPointResource" + } + } + } + }, + "RecoveryPointTierInformation": { + "description": "Recovery point tier information.", + "type": "object", + "properties": { + "type": { + "description": "Recovery point tier type.", + "enum": [ + "Invalid", + "InstantRP", + "HardenedRP", + "ArchivedRP" + ], + "type": "string", + "x-ms-enum": { + "name": "RecoveryPointTierType", + "modelAsString": false + } + }, + "status": { + "description": "Recovery point tier status.", + "enum": [ + "Invalid", + "Valid", + "Disabled", + "Deleted", + "Rehydrated" + ], + "type": "string", + "x-ms-enum": { + "name": "RecoveryPointTierStatus", + "modelAsString": false + } + }, + "extendedInfo": { + "description": "Recovery point tier status.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "Resource": { + "description": "ARM Resource.", + "type": "object", + "properties": { + "id": { + "description": "Resource Id represents the complete path to the resource.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Resource name associated with the resource.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Resource type represents the complete path of the form Namespace/ResourceType/ResourceType/...", + "type": "string", + "readOnly": true + }, + "location": { + "description": "Resource location.", + "type": "string" + }, + "tags": { + "description": "Resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "eTag": { + "description": "Optional ETag.", + "type": "string" + } + }, + "x-ms-azure-resource": true + }, + "ResourceList": { + "description": "Base for all lists of resources.", + "type": "object", + "properties": { + "nextLink": { + "description": "The uri to fetch the next page of resources. Call ListNext() fetches next page of resources.", + "type": "string" + } + } + }, + "RestoreFileSpecs": { + "description": "Restore file specs like file path, type and target folder path info.", + "type": "object", + "properties": { + "path": { + "description": "Source File/Folder path", + "type": "string" + }, + "fileSpecType": { + "description": "Indicates what the Path variable stands for", + "type": "string" + }, + "targetFolderPath": { + "description": "Destination folder path in target FileShare", + "type": "string" + } + } + }, + "RestoreRequest": { + "description": "Base class for restore request. Workload-specific restore requests are derived from this class.", + "required": [ + "objectType" + ], + "type": "object", + "properties": { + "objectType": { + "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.", + "type": "string" + } + }, + "discriminator": "objectType" + }, + "RestoreRequestResource": { + "description": "Base class for restore request. Workload-specific restore requests are derived from this class.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/RestoreRequest", + "description": "RestoreRequestResource properties" + } + } + }, + "RetentionDuration": { + "description": "Retention duration.", + "type": "object", + "properties": { + "count": { + "format": "int32", + "description": "Count of duration types. Retention duration is obtained by the counting the duration type Count times.\r\nFor example, when Count = 3 and DurationType = Weeks, retention duration will be three weeks.", + "type": "integer" + }, + "durationType": { + "description": "Retention duration type of retention policy.", + "enum": [ + "Invalid", + "Days", + "Weeks", + "Months", + "Years" + ], + "type": "string", + "x-ms-enum": { + "name": "RetentionDurationType", + "modelAsString": true + } + } + } + }, + "RetentionPolicy": { + "description": "Base class for retention policy.", + "required": [ + "retentionPolicyType" + ], + "type": "object", + "properties": { + "retentionPolicyType": { + "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.", + "type": "string" + } + }, + "discriminator": "retentionPolicyType" + }, + "SchedulePolicy": { + "description": "Base class for backup schedule.", + "required": [ + "schedulePolicyType" + ], + "type": "object", + "properties": { + "schedulePolicyType": { + "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.", + "type": "string" + } + }, + "discriminator": "schedulePolicyType" + }, + "Settings": { + "description": "Common settings field for backup management", + "type": "object", + "properties": { + "timeZone": { + "description": "TimeZone optional input as string. For example: TimeZone = \"Pacific Standard Time\".", + "type": "string" + }, + "issqlcompression": { + "description": "SQL compression flag", + "type": "boolean" + }, + "isCompression": { + "description": "Workload compression flag. This has been added so that 'isSqlCompression'\r\nwill be deprecated once clients upgrade to consider this flag.", + "type": "boolean" + } + } + }, + "SimpleRetentionPolicy": { + "description": "Simple policy retention.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RetentionPolicy" + } + ], + "properties": { + "retentionDuration": { + "$ref": "#/definitions/RetentionDuration", + "description": "Retention duration of the protection policy." + } + }, + "x-ms-discriminator-value": "SimpleRetentionPolicy" + }, + "SimpleSchedulePolicy": { + "description": "Simple policy schedule.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/SchedulePolicy" + } + ], + "properties": { + "scheduleRunFrequency": { + "description": "Frequency of the schedule operation of this policy.", + "enum": [ + "Invalid", + "Daily", + "Weekly" + ], + "type": "string", + "x-ms-enum": { + "name": "ScheduleRunType", + "modelAsString": true + } + }, + "scheduleRunDays": { + "description": "List of days of week this schedule has to be run.", + "type": "array", + "items": { + "enum": [ + "Sunday", + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday" + ], + "type": "string", + "x-ms-enum": { + "name": "DayOfWeek", + "modelAsString": false + } + } + }, + "scheduleRunTimes": { + "description": "List of times of day this schedule has to be run.", + "type": "array", + "items": { + "format": "date-time", + "type": "string" + } + }, + "scheduleWeeklyFrequency": { + "format": "int32", + "description": "At every number weeks this schedule has to be run.", + "type": "integer" + } + }, + "x-ms-discriminator-value": "SimpleSchedulePolicy" + }, + "SubProtectionPolicy": { + "description": "Sub-protection policy which includes schedule and retention", + "type": "object", + "properties": { + "policyType": { + "description": "Type of backup policy type", + "enum": [ + "Invalid", + "Full", + "Differential", + "Log", + "CopyOnlyFull", + "Incremental" + ], + "type": "string", + "x-ms-enum": { + "name": "PolicyType", + "modelAsString": true + } + }, + "schedulePolicy": { + "$ref": "#/definitions/SchedulePolicy", + "description": "Backup schedule specified as part of backup policy." + }, + "retentionPolicy": { + "$ref": "#/definitions/RetentionPolicy", + "description": "Retention policy with the details on backup copy retention ranges." + } + } + }, + "SQLDataDirectory": { + "description": "SQLDataDirectory info", + "type": "object", + "properties": { + "type": { + "description": "Type of data directory mapping", + "enum": [ + "Invalid", + "Data", + "Log" + ], + "type": "string", + "x-ms-enum": { + "name": "SQLDataDirectoryType", + "modelAsString": true + } + }, + "path": { + "description": "File path", + "type": "string" + }, + "logicalName": { + "description": "Logical name of the file", + "type": "string" + } + } + }, + "SQLDataDirectoryMapping": { + "description": "Encapsulates information regarding data directory", + "type": "object", + "properties": { + "mappingType": { + "description": "Type of data directory mapping", + "enum": [ + "Invalid", + "Data", + "Log" + ], + "type": "string", + "x-ms-enum": { + "name": "SQLDataDirectoryType", + "modelAsString": true + } + }, + "sourceLogicalName": { + "description": "Restore source logical name path", + "type": "string" + }, + "sourcePath": { + "description": "Restore source path", + "type": "string" + }, + "targetPath": { + "description": "Target path", + "type": "string" + } + } + }, + "TargetAFSRestoreInfo": { + "description": "Target Azure File Share Info.", + "type": "object", + "properties": { + "name": { + "description": "File share name", + "type": "string" + }, + "targetResourceId": { + "description": "Target file share resource ARM ID", + "type": "string" + } + } + }, + "TargetRestoreInfo": { + "description": "Details about target workload during restore operation.", + "type": "object", + "properties": { + "overwriteOption": { + "description": "Can Overwrite if Target DataBase already exists", + "enum": [ + "Invalid", + "FailOnConflict", + "Overwrite" + ], + "type": "string", + "x-ms-enum": { + "name": "OverwriteOptions", + "modelAsString": true + } + }, + "containerId": { + "description": "Resource Id name of the container in which Target DataBase resides", + "type": "string" + }, + "databaseName": { + "description": "Database name InstanceName/DataBaseName for SQL or System/DbName for SAP Hana", + "type": "string" + }, + "targetDirectoryForFileRestore": { + "description": "Target directory location for restore as files.", + "type": "string" + } + } + }, + "ValidateIaasVMRestoreOperationRequest": { + "description": "AzureRestoreValidation request.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ValidateRestoreOperationRequest" + } + ], + "x-ms-discriminator-value": "ValidateIaasVMRestoreOperationRequest" + }, + "ValidateOperationRequest": { + "description": "Base class for validate operation request.", + "required": [ + "objectType" + ], + "type": "object", + "properties": { + "objectType": { + "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.", + "type": "string" + } + }, + "discriminator": "objectType" + }, + "ValidateOperationResponse": { + "description": "Base class for validate operation response.", + "type": "object", + "properties": { + "validationResults": { + "description": "Gets the validation result", + "type": "array", + "items": { + "$ref": "#/definitions/ErrorDetail" + } + } + } + }, + "ValidateOperationsResponse": { + "type": "object", + "properties": { + "validateOperationResponse": { + "$ref": "#/definitions/ValidateOperationResponse" + } + } + }, + "ValidateRestoreOperationRequest": { + "description": "AzureRestoreValidation request.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ValidateOperationRequest" + } + ], + "properties": { + "restoreRequest": { + "$ref": "#/definitions/RestoreRequest", + "description": "Sets restore request to be validated" + } + }, + "x-ms-discriminator-value": "ValidateRestoreOperationRequest" + }, + "WeeklyRetentionFormat": { + "description": "Weekly retention format.", + "type": "object", + "properties": { + "daysOfTheWeek": { + "description": "List of days of the week.", + "type": "array", + "items": { + "enum": [ + "Sunday", + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday" + ], + "type": "string", + "x-ms-enum": { + "name": "DayOfWeek", + "modelAsString": false + } + } + }, + "weeksOfTheMonth": { + "description": "List of weeks of month.", + "type": "array", + "items": { + "enum": [ + "First", + "Second", + "Third", + "Fourth", + "Last", + "Invalid" + ], + "type": "string", + "x-ms-enum": { + "name": "WeekOfMonth", + "modelAsString": false + } + } + } + } + }, + "WeeklyRetentionSchedule": { + "description": "Weekly retention schedule.", + "type": "object", + "properties": { + "daysOfTheWeek": { + "description": "List of days of week for weekly retention policy.", + "type": "array", + "items": { + "enum": [ + "Sunday", + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday" + ], + "type": "string", + "x-ms-enum": { + "name": "DayOfWeek", + "modelAsString": false + } + } + }, + "retentionTimes": { + "description": "Retention times of retention policy.", + "type": "array", + "items": { + "format": "date-time", + "type": "string" + } + }, + "retentionDuration": { + "$ref": "#/definitions/RetentionDuration", + "description": "Retention duration of retention Policy." + } + } + }, + "BackupResourceVaultConfigResource": { + "description": "Backup resource vault config details.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/BackupResourceVaultConfig", + "description": "BackupResourceVaultConfigResource properties" + } + } + }, + "BackupResourceVaultConfig": { + "description": "Backup resource vault config details.", + "type": "object", + "properties": { + "storageModelType": { + "description": "Storage type.", + "enum": [ + "Invalid", + "GeoRedundant", + "LocallyRedundant", + "ZoneRedundant", + "ReadAccessGeoZoneRedundant" + ], + "type": "string", + "x-ms-enum": { + "name": "StorageType", + "modelAsString": true + } + }, + "storageType": { + "description": "Storage type.", + "enum": [ + "Invalid", + "GeoRedundant", + "LocallyRedundant", + "ZoneRedundant", + "ReadAccessGeoZoneRedundant" + ], + "type": "string", + "x-ms-enum": { + "name": "StorageType", + "modelAsString": true + } + }, + "storageTypeState": { + "description": "Locked or Unlocked. Once a machine is registered against a resource, the storageTypeState is always Locked.", + "enum": [ + "Invalid", + "Locked", + "Unlocked" + ], + "type": "string", + "x-ms-enum": { + "name": "StorageTypeState", + "modelAsString": true + } + }, + "enhancedSecurityState": { + "description": "Enabled or Disabled.", + "enum": [ + "Invalid", + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "EnhancedSecurityState", + "modelAsString": true + } + }, + "softDeleteFeatureState": { + "description": "Soft Delete feature state", + "enum": [ + "Invalid", + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "SoftDeleteFeatureState", + "modelAsString": true + } + } + } + }, + "YearlyRetentionSchedule": { + "description": "Yearly retention schedule.", + "type": "object", + "properties": { + "retentionScheduleFormatType": { + "description": "Retention schedule format for yearly retention policy.", + "enum": [ + "Invalid", + "Daily", + "Weekly" + ], + "type": "string", + "x-ms-enum": { + "name": "RetentionScheduleFormat", + "modelAsString": true + } + }, + "monthsOfYear": { + "description": "List of months of year of yearly retention policy.", + "type": "array", + "items": { + "enum": [ + "Invalid", + "January", + "February", + "March", + "April", + "May", + "June", + "July", + "August", + "September", + "October", + "November", + "December" + ], + "type": "string", + "x-ms-enum": { + "name": "MonthOfYear", + "modelAsString": false + } + } + }, + "retentionScheduleDaily": { + "$ref": "#/definitions/DailyRetentionFormat", + "description": "Daily retention format for yearly retention policy." + }, + "retentionScheduleWeekly": { + "$ref": "#/definitions/WeeklyRetentionFormat", + "description": "Weekly retention format for yearly retention policy." + }, + "retentionTimes": { + "description": "Retention times of retention policy.", + "type": "array", + "items": { + "format": "date-time", + "type": "string" + } + }, + "retentionDuration": { + "$ref": "#/definitions/RetentionDuration", + "description": "Retention duration of retention Policy." + } + } + }, + "VaultJob": { + "description": "Vault level Job", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Job" + } + ], + "properties": { + "duration": { + "format": "duration", + "description": "Time elapsed during the execution of this job.", + "type": "string" + }, + "actionsInfo": { + "description": "Gets or sets the state/actions applicable on this job like cancel/retry.", + "type": "array", + "items": { + "enum": [ + "Invalid", + "Cancellable", + "Retriable" + ], + "type": "string", + "x-ms-enum": { + "name": "JobSupportedAction", + "modelAsString": false + } + } + }, + "errorDetails": { + "description": "Error details on execution of this job.", + "type": "array", + "items": { + "$ref": "#/definitions/VaultJobErrorInfo" + } + }, + "extendedInfo": { + "$ref": "#/definitions/VaultJobExtendedInfo", + "description": "Additional information about the job." + } + }, + "x-ms-discriminator-value": "VaultJob" + }, + "VaultJobErrorInfo": { + "description": "Vault Job specific error information", + "type": "object", + "properties": { + "errorCode": { + "format": "int32", + "description": "Error code.", + "type": "integer" + }, + "errorString": { + "description": "Localized error string.", + "type": "string" + }, + "recommendations": { + "description": "List of localized recommendations for above error code.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "VaultJobExtendedInfo": { + "description": "Vault Job for CMK - has CMK specific info.", + "type": "object", + "properties": { + "propertyBag": { + "description": "Job properties.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "AzureBackupServerContainer": { + "description": "AzureBackupServer (DPMVenus) workload-specific protection container.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DpmContainer" + } + ], + "x-ms-discriminator-value": "AzureBackupServerContainer" + }, + "AzureBackupServerEngine": { + "description": "Backup engine type when Azure Backup Server is used to manage the backups.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/BackupEngineBase" + } + ], + "x-ms-discriminator-value": "AzureBackupServerEngine" + }, + "AzureFileShareBackupRequest": { + "description": "AzureFileShare workload-specific backup request.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/BackupRequest" + } + ], + "properties": { + "recoveryPointExpiryTimeInUTC": { + "format": "date-time", + "description": "Backup copy will expire after the time specified (UTC).", + "type": "string" + } + }, + "x-ms-discriminator-value": "AzureFileShareBackupRequest" + }, + "AzureFileShareProtectableItem": { + "description": "Protectable item for Azure Fileshare workloads.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/WorkloadProtectableItem" + } + ], + "properties": { + "parentContainerFabricId": { + "description": "Full Fabric ID of container to which this protectable item belongs. For example, ARM ID.", + "type": "string" + }, + "parentContainerFriendlyName": { + "description": "Friendly name of container to which this protectable item belongs.", + "type": "string" + }, + "azureFileShareType": { + "description": "File Share type XSync or XSMB.", + "enum": [ + "Invalid", + "XSMB", + "XSync" + ], + "type": "string", + "x-ms-enum": { + "name": "AzureFileShareType", + "modelAsString": true + } + } + }, + "x-ms-discriminator-value": "AzureFileShare" + }, + "AzureFileShareProvisionILRRequest": { + "description": "Update snapshot Uri with the correct friendly Name of the source Azure file share.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ILRRequest" + } + ], + "properties": { + "recoveryPointId": { + "description": "Recovery point ID.", + "type": "string" + }, + "sourceResourceId": { + "description": "Source Storage account ARM Id", + "type": "string" + } + }, + "x-ms-discriminator-value": "AzureFileShareProvisionILRRequest" + }, + "AzureIaaSClassicComputeVMContainer": { + "description": "IaaS VM workload-specific backup item representing a classic virtual machine.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/IaaSVMContainer" + } + ], + "x-ms-discriminator-value": "Microsoft.ClassicCompute/virtualMachines" + }, + "AzureIaaSClassicComputeVMProtectableItem": { + "description": "IaaS VM workload-specific backup item representing the Classic Compute VM.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/IaaSVMProtectableItem" + } + ], + "x-ms-discriminator-value": "Microsoft.ClassicCompute/virtualMachines" + }, + "AzureIaaSComputeVMContainer": { + "description": "IaaS VM workload-specific backup item representing an Azure Resource Manager virtual machine.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/IaaSVMContainer" + } + ], + "x-ms-discriminator-value": "Microsoft.Compute/virtualMachines" + }, + "AzureIaaSComputeVMProtectableItem": { + "description": "IaaS VM workload-specific backup item representing the Azure Resource Manager VM.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/IaaSVMProtectableItem" + } + ], + "x-ms-discriminator-value": "Microsoft.Compute/virtualMachines" + }, + "AzureSQLAGWorkloadContainerProtectionContainer": { + "description": "Container for SQL workloads under SQL Availability Group.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadContainer" + } + ], + "x-ms-discriminator-value": "SQLAGWorkLoadContainer" + }, + "AzureSqlContainer": { + "description": "Azure Sql workload-specific container.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionContainer" + } + ], + "x-ms-discriminator-value": "AzureSqlContainer" + }, + "AzureStorageContainer": { + "description": "Azure Storage Account workload-specific container.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionContainer" + } + ], + "properties": { + "sourceResourceId": { + "description": "Fully qualified ARM url.", + "type": "string" + }, + "storageAccountVersion": { + "description": "Storage account version.", + "type": "string" + }, + "resourceGroup": { + "description": "Resource group name of Recovery Services Vault.", + "type": "string" + }, + "protectedItemCount": { + "format": "int64", + "description": "Number of items backed up in this container.", + "type": "integer" + } + }, + "x-ms-discriminator-value": "StorageContainer" + }, + "AzureStorageProtectableContainer": { + "description": "Azure Storage-specific protectable containers", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectableContainer" + } + ], + "x-ms-discriminator-value": "StorageContainer" + }, + "AzureVMAppContainerProtectableContainer": { + "description": "Azure workload-specific container", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectableContainer" + } + ], + "x-ms-discriminator-value": "VMAppContainer" + }, + "AzureVMAppContainerProtectionContainer": { + "description": "Container for SQL workloads under Azure Virtual Machines.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadContainer" + } + ], + "x-ms-discriminator-value": "VMAppContainer" + }, + "AzureVmWorkloadItem": { + "description": "Azure VM workload-specific workload item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/WorkloadItem" + } + ], + "properties": { + "parentName": { + "description": "Name for instance or AG", + "type": "string" + }, + "serverName": { + "description": "Host/Cluster Name for instance or AG", + "type": "string" + }, + "isAutoProtectable": { + "description": "Indicates if workload item is auto-protectable", + "type": "boolean" + }, + "subinquireditemcount": { + "format": "int32", + "description": "For instance or AG, indicates number of DB's present", + "type": "integer" + }, + "subWorkloadItemCount": { + "format": "int32", + "description": "For instance or AG, indicates number of DB's to be protected", + "type": "integer" + } + }, + "x-ms-discriminator-value": "AzureVmWorkloadItem" + }, + "AzureVmWorkloadProtectableItem": { + "description": "Azure VM workload-specific protectable item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/WorkloadProtectableItem" + } + ], + "properties": { + "parentName": { + "description": "Name for instance or AG", + "type": "string" + }, + "parentUniqueName": { + "description": "Parent Unique Name is added to provide the service formatted URI Name of the Parent\r\nOnly Applicable for data bases where the parent would be either Instance or a SQL AG.", + "type": "string" + }, + "serverName": { + "description": "Host/Cluster Name for instance or AG", + "type": "string" + }, + "isAutoProtectable": { + "description": "Indicates if protectable item is auto-protectable", + "type": "boolean" + }, + "isAutoProtected": { + "description": "Indicates if protectable item is auto-protected", + "type": "boolean" + }, + "subinquireditemcount": { + "format": "int32", + "description": "For instance or AG, indicates number of DB's present", + "type": "integer" + }, + "subprotectableitemcount": { + "format": "int32", + "description": "For instance or AG, indicates number of DB's to be protected", + "type": "integer" + }, + "prebackupvalidation": { + "$ref": "#/definitions/PreBackupValidation", + "description": "Pre-backup validation for protectable objects" + } + }, + "x-ms-discriminator-value": "AzureVmWorkloadProtectableItem" + }, + "AzureVmWorkloadSAPAseDatabaseWorkloadItem": { + "description": "Azure VM workload-specific workload item representing SAP ASE Database.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureVmWorkloadItem" + } + ], + "x-ms-discriminator-value": "SAPAseDatabase" + }, + "AzureVmWorkloadSAPAseSystemProtectableItem": { + "description": "Azure VM workload-specific protectable item representing SAP ASE System.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureVmWorkloadProtectableItem" + } + ], + "x-ms-discriminator-value": "SAPAseSystem" + }, + "AzureVmWorkloadSAPAseSystemWorkloadItem": { + "description": "Azure VM workload-specific workload item representing SAP ASE System.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureVmWorkloadItem" + } + ], + "x-ms-discriminator-value": "SAPAseSystem" + }, + "AzureVmWorkloadSAPHanaDatabaseProtectableItem": { + "description": "Azure VM workload-specific protectable item representing SAP HANA Database.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureVmWorkloadProtectableItem" + } + ], + "x-ms-discriminator-value": "SAPHanaDatabase" + }, + "AzureVmWorkloadSAPHanaDatabaseWorkloadItem": { + "description": "Azure VM workload-specific workload item representing SAP HANA Database.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureVmWorkloadItem" + } + ], + "x-ms-discriminator-value": "SAPHanaDatabase" + }, + "AzureVmWorkloadSAPHanaSystemProtectableItem": { + "description": "Azure VM workload-specific protectable item representing SAP HANA System.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureVmWorkloadProtectableItem" + } + ], + "x-ms-discriminator-value": "SAPHanaSystem" + }, + "AzureVmWorkloadSAPHanaSystemWorkloadItem": { + "description": "Azure VM workload-specific workload item representing SAP HANA System.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureVmWorkloadItem" + } + ], + "x-ms-discriminator-value": "SAPHanaSystem" + }, + "AzureVmWorkloadSQLAvailabilityGroupProtectableItem": { + "description": "Azure VM workload-specific protectable item representing SQL Availability Group.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureVmWorkloadProtectableItem" + } + ], + "x-ms-discriminator-value": "SQLAvailabilityGroupContainer" + }, + "AzureVmWorkloadSQLDatabaseProtectableItem": { + "description": "Azure VM workload-specific protectable item representing SQL Database.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureVmWorkloadProtectableItem" + } + ], + "x-ms-discriminator-value": "SQLDataBase" + }, + "AzureVmWorkloadSQLDatabaseWorkloadItem": { + "description": "Azure VM workload-specific workload item representing SQL Database.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureVmWorkloadItem" + } + ], + "x-ms-discriminator-value": "SQLDataBase" + }, + "AzureVmWorkloadSQLInstanceProtectableItem": { + "description": "Azure VM workload-specific protectable item representing SQL Instance.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureVmWorkloadProtectableItem" + } + ], + "x-ms-discriminator-value": "SQLInstance" + }, + "AzureVmWorkloadSQLInstanceWorkloadItem": { + "description": "Azure VM workload-specific workload item representing SQL Instance.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureVmWorkloadItem" + } + ], + "properties": { + "dataDirectoryPaths": { + "description": "Data Directory Paths for default directories", + "type": "array", + "items": { + "$ref": "#/definitions/SQLDataDirectory" + } + } + }, + "x-ms-discriminator-value": "SQLInstance" + }, + "AzureWorkloadBackupRequest": { + "description": "AzureWorkload workload-specific backup request.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/BackupRequest" + } + ], + "properties": { + "backupType": { + "description": "Type of backup, viz. Full, Differential, Log or CopyOnlyFull", + "enum": [ + "Invalid", + "Full", + "Differential", + "Log", + "CopyOnlyFull", + "Incremental" + ], + "type": "string", + "x-ms-enum": { + "name": "backupType", + "modelAsString": true + } + }, + "enableCompression": { + "description": "Bool for Compression setting", + "type": "boolean" + }, + "recoveryPointExpiryTimeInUTC": { + "format": "date-time", + "description": "Backup copy will expire after the time specified (UTC).", + "type": "string" + } + }, + "x-ms-discriminator-value": "AzureWorkloadBackupRequest" + }, + "AzureBackupGoalFeatureSupportRequest": { + "description": "Azure backup goal feature specific request.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/FeatureSupportRequest" + } + ], + "x-ms-discriminator-value": "AzureBackupGoals" + }, + "AzureRecoveryServiceVaultProtectionIntent": { + "description": "Azure Recovery Services Vault specific protection intent item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionIntent" + } + ], + "x-ms-discriminator-value": "RecoveryServiceVaultItem" + }, + "AzureResourceProtectionIntent": { + "description": "IaaS VM specific backup protection intent item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionIntent" + } + ], + "properties": { + "friendlyName": { + "description": "Friendly name of the VM represented by this backup item.", + "type": "string" + } + }, + "x-ms-discriminator-value": "AzureResourceItem" + }, + "AzureVMResourceFeatureSupportRequest": { + "description": "AzureResource(IaaS VM) Specific feature support request", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/FeatureSupportRequest" + } + ], + "properties": { + "vmSize": { + "description": "Size of the resource: VM size(A/D series etc) in case of IaasVM", + "type": "string" + }, + "vmSku": { + "description": "SKUs (Premium/Managed etc) in case of IaasVM", + "type": "string" + } + }, + "x-ms-discriminator-value": "AzureVMResourceBackup" + }, + "AzureVMResourceFeatureSupportResponse": { + "description": "Response for feature support requests for Azure IaasVm", + "type": "object", + "properties": { + "supportStatus": { + "description": "Support status of feature", + "enum": [ + "Invalid", + "Supported", + "DefaultOFF", + "DefaultON", + "NotSupported" + ], + "type": "string", + "x-ms-enum": { + "name": "SupportStatus", + "modelAsString": true + } + } + } + }, + "AzureWorkloadAutoProtectionIntent": { + "description": "Azure Recovery Services Vault specific protection intent item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureRecoveryServiceVaultProtectionIntent" + } + ], + "x-ms-discriminator-value": "AzureWorkloadAutoProtectionIntent" + }, + "AzureWorkloadSQLAutoProtectionIntent": { + "description": "Azure Workload SQL Auto Protection intent item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadAutoProtectionIntent" + } + ], + "properties": { + "workloadItemType": { + "description": "Workload item type of the item for which intent is to be set", + "enum": [ + "Invalid", + "SQLInstance", + "SQLDataBase", + "SAPHanaSystem", + "SAPHanaDatabase", + "SAPAseSystem", + "SAPAseDatabase" + ], + "type": "string", + "x-ms-enum": { + "name": "WorkloadItemType", + "modelAsString": true + } + } + }, + "x-ms-discriminator-value": "AzureWorkloadSQLAutoProtectionIntent" + }, + "BackupManagementUsage": { + "description": "Backup management usages of a vault.", + "type": "object", + "properties": { + "unit": { + "description": "Unit of the usage.", + "enum": [ + "Count", + "Bytes", + "Seconds", + "Percent", + "CountPerSecond", + "BytesPerSecond" + ], + "type": "string", + "x-ms-enum": { + "name": "UsagesUnit", + "modelAsString": true + } + }, + "quotaPeriod": { + "description": "Quota period of usage.", + "type": "string" + }, + "nextResetTime": { + "format": "date-time", + "description": "Next reset time of usage.", + "type": "string" + }, + "currentValue": { + "format": "int64", + "description": "Current value of usage.", + "type": "integer" + }, + "limit": { + "format": "int64", + "description": "Limit of usage.", + "type": "integer" + }, + "name": { + "$ref": "#/definitions/NameInfo", + "description": "Name of usage." + } + } + }, + "BackupManagementUsageList": { + "description": "Backup management usage for vault.", + "type": "object", + "properties": { + "value": { + "description": "The list of backup management usages for the given vault.", + "type": "array", + "items": { + "$ref": "#/definitions/BackupManagementUsage" + } + } + } + }, + "BackupStatusRequest": { + "description": "BackupStatus request.", + "type": "object", + "properties": { + "resourceType": { + "description": "Container Type - VM, SQLPaaS, DPM, AzureFileShare...", + "enum": [ + "Invalid", + "VM", + "FileFolder", + "AzureSqlDb", + "SQLDB", + "Exchange", + "Sharepoint", + "VMwareVM", + "SystemState", + "Client", + "GenericDataSource", + "SQLDataBase", + "AzureFileShare", + "SAPHanaDatabase", + "SAPAseDatabase" + ], + "type": "string", + "x-ms-enum": { + "name": "DataSourceType", + "modelAsString": true + } + }, + "resourceId": { + "description": "Entire ARM resource id of the resource", + "type": "string" + }, + "poLogicalName": { + "description": "Protectable Item Logical Name", + "type": "string" + } + } + }, + "BackupStatusResponse": { + "description": "BackupStatus response.", + "type": "object", + "properties": { + "protectionStatus": { + "description": "Specifies whether the container is registered or not", + "enum": [ + "Invalid", + "NotProtected", + "Protecting", + "Protected", + "ProtectionFailed" + ], + "type": "string", + "x-ms-enum": { + "name": "ProtectionStatus", + "modelAsString": true + } + }, + "vaultId": { + "description": "Specifies the arm resource id of the vault", + "type": "string" + }, + "fabricName": { + "description": "Specifies the fabric name - Azure or AD", + "enum": [ + "Invalid", + "Azure" + ], + "type": "string", + "x-ms-enum": { + "name": "FabricName", + "modelAsString": true + } + }, + "containerName": { + "description": "Specifies the product specific container name. E.g. iaasvmcontainer;iaasvmcontainer;csname;vmname.", + "type": "string" + }, + "protectedItemName": { + "description": "Specifies the product specific ds name. E.g. vm;iaasvmcontainer;csname;vmname.", + "type": "string" + }, + "errorCode": { + "description": "ErrorCode in case of intent failed", + "type": "string" + }, + "errorMessage": { + "description": "ErrorMessage in case of intent failed.", + "type": "string" + }, + "policyName": { + "description": "Specifies the policy name which is used for protection", + "type": "string" + }, + "registrationStatus": { + "description": "Container registration status", + "type": "string" + } + } + }, + "BMSBackupSummariesQueryObject": { + "description": "Query parameters to fetch backup summaries.", + "type": "object", + "properties": { + "type": { + "description": "Backup management type for this container.", + "enum": [ + "Invalid", + "BackupProtectedItemCountSummary", + "BackupProtectionContainerCountSummary" + ], + "type": "string", + "x-ms-enum": { + "name": "Type", + "modelAsString": true + } + } + } + }, + "FeatureSupportRequest": { + "description": "Base class for feature request", + "required": [ + "featureType" + ], + "type": "object", + "properties": { + "featureType": { + "description": "backup support feature type.", + "type": "string" + } + }, + "discriminator": "featureType" + }, + "NameInfo": { + "description": "The name of usage.", + "type": "object", + "properties": { + "value": { + "description": "Value of usage.", + "type": "string" + }, + "localizedValue": { + "description": "Localized value of usage.", + "type": "string" + } + } + }, + "PreValidateEnableBackupRequest": { + "description": "Contract to validate if backup can be enabled on the given resource in a given vault and given configuration.\r\nIt will validate followings\r\n1. Vault capacity\r\n2. VM is already protected\r\n3. Any VM related configuration passed in properties.", + "type": "object", + "properties": { + "resourceType": { + "description": "ProtectedItem Type- VM, SqlDataBase, AzureFileShare etc", + "enum": [ + "Invalid", + "VM", + "FileFolder", + "AzureSqlDb", + "SQLDB", + "Exchange", + "Sharepoint", + "VMwareVM", + "SystemState", + "Client", + "GenericDataSource", + "SQLDataBase", + "AzureFileShare", + "SAPHanaDatabase", + "SAPAseDatabase" + ], + "type": "string", + "x-ms-enum": { + "name": "DataSourceType", + "modelAsString": true + } + }, + "resourceId": { + "description": "ARM Virtual Machine Id", + "type": "string" + }, + "vaultId": { + "description": "ARM id of the Recovery Services Vault", + "type": "string" + }, + "properties": { + "description": "Configuration of VM if any needs to be validated like OS type etc", + "type": "string" + } + } + }, + "PreValidateEnableBackupResponse": { + "description": "Response contract for enable backup validation request", + "type": "object", + "properties": { + "status": { + "description": "Validation Status", + "enum": [ + "Invalid", + "Succeeded", + "Failed" + ], + "type": "string", + "x-ms-enum": { + "name": "ValidationStatus", + "modelAsString": true + } + }, + "errorCode": { + "description": "Response error code", + "type": "string" + }, + "errorMessage": { + "description": "Response error message", + "type": "string" + }, + "recommendation": { + "description": "Recommended action for user", + "type": "string" + }, + "containerName": { + "description": "Specifies the product specific container name. E.g. iaasvmcontainer;iaasvmcontainer;rgname;vmname. This is required\r\nfor portal", + "type": "string" + }, + "protectedItemName": { + "description": "Specifies the product specific ds name. E.g. vm;iaasvmcontainer;rgname;vmname. This is required for portal", + "type": "string" + } + } + }, + "ProtectionIntent": { + "description": "Base class for backup ProtectionIntent.", + "required": [ + "protectionIntentItemType" + ], + "type": "object", + "properties": { + "protectionIntentItemType": { + "description": "backup protectionIntent type.", + "type": "string" + }, + "backupManagementType": { + "description": "Type of backup management for the backed up item.", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureBackupServer", + "AzureSql", + "AzureStorage", + "AzureWorkload", + "DefaultBackup" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupManagementType", + "modelAsString": true + } + }, + "sourceResourceId": { + "description": "ARM ID of the resource to be backed up.", + "type": "string" + }, + "itemId": { + "description": "ID of the item which is getting protected, In case of Azure Vm , it is ProtectedItemId", + "type": "string" + }, + "policyId": { + "description": "ID of the backup policy with which this item is backed up.", + "type": "string" + }, + "protectionState": { + "description": "Backup state of this backup item.", + "enum": [ + "Invalid", + "NotProtected", + "Protecting", + "Protected", + "ProtectionFailed" + ], + "type": "string", + "x-ms-enum": { + "name": "ProtectionStatus", + "modelAsString": true + } + } + }, + "discriminator": "protectionIntentItemType" + }, + "ProtectionIntentQueryObject": { + "description": "Filters to list protection intent.", + "type": "object", + "properties": { + "backupManagementType": { + "description": "Backup management type for the backed up item", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureBackupServer", + "AzureSql", + "AzureStorage", + "AzureWorkload", + "DefaultBackup" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupManagementType", + "modelAsString": true + } + }, + "itemType": { + "description": "Type of workload this item represents", + "enum": [ + "Invalid", + "SQLInstance", + "SQLAvailabilityGroupContainer" + ], + "type": "string", + "x-ms-enum": { + "name": "IntentItemType", + "modelAsString": true + } + }, + "parentName": { + "description": "Parent name of the intent", + "type": "string" + }, + "itemName": { + "description": "Item name of the intent", + "type": "string" + } + } + }, + "ProtectionIntentResource": { + "description": "Base class for backup ProtectionIntent.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ProtectionIntent", + "description": "ProtectionIntentResource properties" + } + } + }, + "ProtectionIntentResourceList": { + "description": "List of ProtectionIntent resources", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ResourceList" + } + ], + "properties": { + "value": { + "description": "List of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/ProtectionIntentResource" + } + } + } + }, + "AzureWorkloadContainer": { + "description": "Container for the workloads running inside Azure Compute or Classic Compute.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionContainer" + } + ], + "properties": { + "sourceResourceId": { + "description": "ARM ID of the virtual machine represented by this Azure Workload Container", + "type": "string" + }, + "lastUpdatedTime": { + "format": "date-time", + "description": "Time stamp when this container was updated.", + "type": "string" + }, + "extendedInfo": { + "$ref": "#/definitions/AzureWorkloadContainerExtendedInfo", + "description": "Additional details of a workload container." + }, + "workloadType": { + "description": "Workload type for which registration was sent.", + "enum": [ + "Invalid", + "VM", + "FileFolder", + "AzureSqlDb", + "SQLDB", + "Exchange", + "Sharepoint", + "VMwareVM", + "SystemState", + "Client", + "GenericDataSource", + "SQLDataBase", + "AzureFileShare", + "SAPHanaDatabase", + "SAPAseDatabase" + ], + "type": "string", + "x-ms-enum": { + "name": "WorkloadType", + "modelAsString": true + } + }, + "operationType": { + "description": "Re-Do Operation", + "enum": [ + "Invalid", + "Register", + "Reregister" + ], + "type": "string", + "x-ms-enum": { + "name": "OperationType", + "modelAsString": true + } + } + }, + "x-ms-discriminator-value": "AzureWorkloadContainer" + }, + "AzureWorkloadContainerExtendedInfo": { + "description": "Extended information of the container.", + "type": "object", + "properties": { + "hostServerName": { + "description": "Host Os Name in case of Stand Alone and Cluster Name in case of distributed container.", + "type": "string" + }, + "inquiryInfo": { + "$ref": "#/definitions/InquiryInfo", + "description": "Inquiry Status for the container." + }, + "nodesList": { + "description": "List of the nodes in case of distributed container.", + "type": "array", + "items": { + "$ref": "#/definitions/DistributedNodesInfo" + } + } + } + }, + "BackupEngineBase": { + "description": "The base backup engine class. All workload specific backup engines derive from this class.", + "type": "object", + "required": [ + "backupEngineType" + ], + "properties": { + "friendlyName": { + "description": "Friendly name of the backup engine.", + "type": "string" + }, + "backupManagementType": { + "description": "Type of backup management for the backup engine.", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureBackupServer", + "AzureSql", + "AzureStorage", + "AzureWorkload", + "DefaultBackup" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupManagementType", + "modelAsString": true + } + }, + "registrationStatus": { + "description": "Registration status of the backup engine with the Recovery Services Vault.", + "type": "string" + }, + "backupEngineState": { + "description": "Status of the backup engine with the Recovery Services Vault. = {Active/Deleting/DeleteFailed}", + "type": "string" + }, + "healthStatus": { + "description": "Backup status of the backup engine.", + "type": "string" + }, + "backupEngineType": { + "description": "Type of the backup engine.", + "enum": [ + "Invalid", + "DpmBackupEngine", + "AzureBackupServerEngine" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupEngineType", + "modelAsString": true + } + }, + "canReRegister": { + "description": "Flag indicating if the backup engine be registered, once already registered.", + "type": "boolean" + }, + "backupEngineId": { + "description": "ID of the backup engine.", + "type": "string" + }, + "dpmVersion": { + "description": "Backup engine version", + "type": "string" + }, + "azureBackupAgentVersion": { + "description": "Backup agent version", + "type": "string" + }, + "isAzureBackupAgentUpgradeAvailable": { + "description": "To check if backup agent upgrade available", + "type": "boolean" + }, + "isDpmUpgradeAvailable": { + "description": "To check if backup engine upgrade available", + "type": "boolean" + }, + "extendedInfo": { + "$ref": "#/definitions/BackupEngineExtendedInfo", + "description": "Extended info of the backupengine" + } + }, + "discriminator": "backupEngineType" + }, + "BackupEngineBaseResource": { + "description": "The base backup engine class. All workload specific backup engines derive from this class.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/BackupEngineBase", + "description": "BackupEngineBaseResource properties" + } + } + }, + "BackupEngineBaseResourceList": { + "description": "List of BackupEngineBase resources", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ResourceList" + } + ], + "properties": { + "value": { + "description": "List of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/BackupEngineBaseResource" + } + } + } + }, + "BackupEngineExtendedInfo": { + "description": "Additional information on backup engine.", + "type": "object", + "properties": { + "databaseName": { + "description": "Database name of backup engine.", + "type": "string" + }, + "protectedItemsCount": { + "format": "int32", + "description": "Number of protected items in the backup engine.", + "type": "integer" + }, + "protectedServersCount": { + "format": "int32", + "description": "Number of protected servers in the backup engine.", + "type": "integer" + }, + "diskCount": { + "format": "int32", + "description": "Number of disks in the backup engine.", + "type": "integer" + }, + "usedDiskSpace": { + "format": "double", + "description": "Disk space used in the backup engine.", + "type": "number" + }, + "availableDiskSpace": { + "format": "double", + "description": "Disk space currently available in the backup engine.", + "type": "number" + }, + "refreshedAt": { + "format": "date-time", + "description": "Last refresh time in the backup engine.", + "type": "string" + }, + "azureProtectedInstances": { + "format": "int32", + "description": "Protected instances in the backup engine.", + "type": "integer" + } + } + }, + "BackupRequest": { + "description": "Base class for backup request. Workload-specific backup requests are derived from this class.", + "required": [ + "objectType" + ], + "type": "object", + "properties": { + "objectType": { + "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.", + "type": "string" + } + }, + "discriminator": "objectType" + }, + "BackupRequestResource": { + "description": "Base class for backup request. Workload-specific backup requests are derived from this class.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/BackupRequest", + "description": "BackupRequestResource properties" + } + } + }, + "BMSBackupEngineQueryObject": { + "description": "Query parameters to fetch list of backup engines.", + "type": "object", + "properties": { + "expand": { + "description": "attribute to add extended info", + "type": "string" + } + } + }, + "BMSBackupEnginesQueryObject": { + "description": "Query parameters to fetch list of backup engines.", + "type": "object", + "properties": { + "backupManagementType": { + "description": "Backup management type for the backup engine.", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureBackupServer", + "AzureSql", + "AzureStorage", + "AzureWorkload", + "DefaultBackup" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupManagementType", + "modelAsString": true + } + }, + "friendlyName": { + "description": "Friendly name of the backup engine.", + "type": "string" + }, + "expand": { + "description": "Attribute to add extended info.", + "type": "string" + } + } + }, + "BMSContainerQueryObject": { + "description": "The query filters that can be used with the list containers API.", + "required": [ + "backupManagementType" + ], + "type": "object", + "properties": { + "backupManagementType": { + "description": "Backup management type for this container.", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureBackupServer", + "AzureSql", + "AzureStorage", + "AzureWorkload", + "DefaultBackup" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupManagementType", + "modelAsString": true + } + }, + "containerType": { + "description": "Type of container for filter", + "enum": [ + "Invalid", + "Unknown", + "IaasVMContainer", + "IaasVMServiceContainer", + "DPMContainer", + "AzureBackupServerContainer", + "MABContainer", + "Cluster", + "AzureSqlContainer", + "Windows", + "VCenter", + "VMAppContainer", + "SQLAGWorkLoadContainer", + "StorageContainer", + "GenericContainer" + ], + "type": "string", + "x-ms-enum": { + "name": "ContainerType", + "modelAsString": true + } + }, + "backupEngineName": { + "description": "Backup engine name", + "type": "string" + }, + "fabricName": { + "description": "Fabric name for filter", + "type": "string" + }, + "status": { + "description": "Status of registration of this container with the Recovery Services Vault.", + "type": "string" + }, + "friendlyName": { + "description": "Friendly name of this container.", + "type": "string" + } + } + }, + "BMSContainersInquiryQueryObject": { + "description": "The query filters that can be used with the inquire container API.", + "type": "object", + "properties": { + "backupManagementType": { + "description": "Backup management type for this container.", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureBackupServer", + "AzureSql", + "AzureStorage", + "AzureWorkload", + "DefaultBackup" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupManagementType", + "modelAsString": true + } + }, + "workloadType": { + "description": "Workload type for this container.", + "enum": [ + "Invalid", + "VM", + "FileFolder", + "AzureSqlDb", + "SQLDB", + "Exchange", + "Sharepoint", + "VMwareVM", + "SystemState", + "Client", + "GenericDataSource", + "SQLDataBase", + "AzureFileShare", + "SAPHanaDatabase", + "SAPAseDatabase" + ], + "type": "string", + "x-ms-enum": { + "name": "WorkloadType", + "modelAsString": true + } + } + } + }, + "BMSPOQueryObject": { + "description": "Filters to list items that can be backed up.", + "type": "object", + "properties": { + "backupManagementType": { + "description": "Backup management type.", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureSql", + "AzureBackupServer", + "AzureWorkload", + "AzureStorage", + "DefaultBackup" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupManagementType", + "modelAsString": true + } + }, + "workloadType": { + "description": "Workload type", + "enum": [ + "Invalid", + "VM", + "FileFolder", + "AzureSqlDb", + "SQLDB", + "Exchange", + "Sharepoint", + "VMwareVM", + "SystemState", + "Client", + "GenericDataSource", + "SQLDataBase", + "AzureFileShare", + "SAPHanaDatabase", + "SAPAseDatabase" + ], + "type": "string", + "x-ms-enum": { + "name": "WorkloadType", + "modelAsString": true + } + }, + "containerName": { + "description": "Full name of the container whose Protectable Objects should be returned.", + "type": "string" + }, + "status": { + "description": "Backup status query parameter.", + "type": "string" + }, + "friendlyName": { + "description": "Friendly name.", + "type": "string" + } + } + }, + "BMSRefreshContainersQueryObject": { + "description": "The query filters that can be used with the refresh container API.", + "type": "object", + "properties": { + "backupManagementType": { + "description": "Backup management type for this container.", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureBackupServer", + "AzureSql", + "AzureStorage", + "AzureWorkload", + "DefaultBackup" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupManagementType", + "modelAsString": true + } + } + } + }, + "BMSWorkloadItemQueryObject": { + "description": "Filters to list items that can be backed up.", + "type": "object", + "properties": { + "backupManagementType": { + "description": "Backup management type.", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureSql", + "AzureBackupServer", + "AzureWorkload", + "AzureStorage", + "DefaultBackup" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupManagementType", + "modelAsString": true + } + }, + "workloadItemType": { + "description": "Workload Item type", + "enum": [ + "Invalid", + "SQLInstance", + "SQLDataBase", + "SAPHanaSystem", + "SAPHanaDatabase", + "SAPAseSystem", + "SAPAseDatabase" + ], + "type": "string", + "x-ms-enum": { + "name": "WorkloadItemType", + "modelAsString": true + } + }, + "workloadType": { + "description": "Workload type", + "enum": [ + "Invalid", + "VM", + "FileFolder", + "AzureSqlDb", + "SQLDB", + "Exchange", + "Sharepoint", + "VMwareVM", + "SystemState", + "Client", + "GenericDataSource", + "SQLDataBase", + "AzureFileShare", + "SAPHanaDatabase", + "SAPAseDatabase" + ], + "type": "string", + "x-ms-enum": { + "name": "WorkloadType", + "modelAsString": true + } + }, + "protectionStatus": { + "description": "Backup status query parameter.", + "enum": [ + "Invalid", + "NotProtected", + "Protecting", + "Protected", + "ProtectionFailed" + ], + "type": "string", + "x-ms-enum": { + "name": "ProtectionStatus", + "modelAsString": true + } + } + } + }, + "ClientScriptForConnect": { + "description": "Client script details for file / folder restore.", + "type": "object", + "properties": { + "scriptContent": { + "description": "File content of the client script for file / folder restore.", + "type": "string" + }, + "scriptExtension": { + "description": "File extension of the client script for file / folder restore - .ps1 , .sh , etc.", + "type": "string" + }, + "osType": { + "description": "OS type - Windows, Linux etc. for which this file / folder restore client script works.", + "type": "string" + }, + "url": { + "description": "URL of Executable from where to source the content. If this is not null then ScriptContent should not be used", + "type": "string" + }, + "scriptNameSuffix": { + "description": "Mandatory suffix that should be added to the name of script that is given for download to user.\r\nIf its null or empty then , ignore it.", + "type": "string" + } + } + }, + "ContainerIdentityInfo": { + "description": "Container identity information", + "type": "object", + "properties": { + "uniqueName": { + "description": "Unique name of the container", + "type": "string" + }, + "aadTenantId": { + "description": "Protection container identity - AAD Tenant", + "type": "string" + }, + "servicePrincipalClientId": { + "description": "Protection container identity - AAD Service Principal", + "type": "string" + }, + "audience": { + "description": "Protection container identity - Audience", + "type": "string" + } + } + }, + "DistributedNodesInfo": { + "description": "This is used to represent the various nodes of the distributed container.", + "type": "object", + "properties": { + "nodeName": { + "description": "Name of the node under a distributed container.", + "type": "string" + }, + "status": { + "description": "Status of this Node.\r\nFailed | Succeeded", + "type": "string" + }, + "errorDetail": { + "$ref": "#/definitions/ErrorDetail", + "description": "Error Details if the Status is non-success." + } + } + }, + "DpmBackupEngine": { + "description": "Data Protection Manager (DPM) specific backup engine.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/BackupEngineBase" + } + ], + "x-ms-discriminator-value": "DpmBackupEngine" + }, + "DpmContainer": { + "description": "DPM workload-specific protection container.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionContainer" + } + ], + "properties": { + "canReRegister": { + "description": "Specifies whether the container is re-registrable.", + "type": "boolean" + }, + "containerId": { + "description": "ID of container.", + "type": "string" + }, + "protectedItemCount": { + "format": "int64", + "description": "Number of protected items in the BackupEngine", + "type": "integer" + }, + "dpmAgentVersion": { + "description": "Backup engine Agent version", + "type": "string" + }, + "dpmServers": { + "description": "List of BackupEngines protecting the container", + "type": "array", + "items": { + "type": "string" + } + }, + "upgradeAvailable": { + "description": "To check if upgrade available", + "type": "boolean" + }, + "protectionStatus": { + "description": "Protection status of the container.", + "type": "string" + }, + "extendedInfo": { + "$ref": "#/definitions/DPMContainerExtendedInfo", + "description": "Extended Info of the container." + } + }, + "x-ms-discriminator-value": "DPMContainer" + }, + "DPMContainerExtendedInfo": { + "description": "Additional information of the DPMContainer.", + "type": "object", + "properties": { + "lastRefreshedAt": { + "format": "date-time", + "description": "Last refresh time of the DPMContainer.", + "type": "string" + } + } + }, + "GenericContainer": { + "description": "Base class for generic container of backup items", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionContainer" + } + ], + "properties": { + "fabricName": { + "description": "Name of the container's fabric", + "type": "string" + }, + "extendedInformation": { + "$ref": "#/definitions/GenericContainerExtendedInfo", + "description": "Extended information (not returned in List container API calls)" + } + }, + "x-ms-discriminator-value": "GenericContainer" + }, + "GenericContainerExtendedInfo": { + "description": "Container extended information", + "type": "object", + "properties": { + "rawCertData": { + "description": "Public key of container cert", + "type": "string" + }, + "containerIdentityInfo": { + "$ref": "#/definitions/ContainerIdentityInfo", + "description": "Container identity information" + }, + "serviceEndpoints": { + "description": "Azure Backup Service Endpoints for the container", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "IaasVMBackupRequest": { + "description": "IaaS VM workload-specific backup request.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/BackupRequest" + } + ], + "properties": { + "recoveryPointExpiryTimeInUTC": { + "format": "date-time", + "description": "Backup copy will expire after the time specified (UTC).", + "type": "string" + } + }, + "x-ms-discriminator-value": "IaasVMBackupRequest" + }, + "IaaSVMContainer": { + "description": "IaaS VM workload-specific container.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionContainer" + } + ], + "properties": { + "virtualMachineId": { + "description": "Fully qualified ARM url of the virtual machine represented by this Azure IaaS VM container.", + "type": "string" + }, + "virtualMachineVersion": { + "description": "Specifies whether the container represents a Classic or an Azure Resource Manager VM.", + "type": "string" + }, + "resourceGroup": { + "description": "Resource group name of Recovery Services Vault.", + "type": "string" + } + }, + "x-ms-discriminator-value": "IaaSVMContainer" + }, + "IaasVMILRRegistrationRequest": { + "description": "Restore files/folders from a backup copy of IaaS VM.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ILRRequest" + } + ], + "properties": { + "recoveryPointId": { + "description": "ID of the IaaS VM backup copy from where the files/folders have to be restored.", + "type": "string" + }, + "virtualMachineId": { + "description": "Fully qualified ARM ID of the virtual machine whose the files / folders have to be restored.", + "type": "string" + }, + "initiatorName": { + "description": "iSCSI initiator name.", + "type": "string" + }, + "renewExistingRegistration": { + "description": "Whether to renew existing registration with the iSCSI server.", + "type": "boolean" + } + }, + "x-ms-discriminator-value": "IaasVMILRRegistrationRequest" + }, + "IaaSVMProtectableItem": { + "description": "IaaS VM workload-specific backup item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/WorkloadProtectableItem" + } + ], + "properties": { + "virtualMachineId": { + "description": "Fully qualified ARM ID of the virtual machine.", + "type": "string" + } + }, + "x-ms-discriminator-value": "IaaSVMProtectableItem" + }, + "ILRRequest": { + "description": "Parameters to Provision ILR API.", + "required": [ + "objectType" + ], + "type": "object", + "properties": { + "objectType": { + "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.", + "type": "string" + } + }, + "discriminator": "objectType" + }, + "ILRRequestResource": { + "description": "Parameters to Provision ILR API.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ILRRequest", + "description": "ILRRequestResource properties" + } + } + }, + "InquiryInfo": { + "description": "Details about inquired protectable items under a given container.", + "type": "object", + "properties": { + "status": { + "description": "Inquiry Status for this container such as\r\nInProgress | Failed | Succeeded", + "type": "string" + }, + "errorDetail": { + "$ref": "#/definitions/ErrorDetail", + "description": "Error Details if the Status is non-success." + }, + "inquiryDetails": { + "description": "Inquiry Details which will have workload specific details.\r\nFor e.g. - For SQL and oracle this will contain different details.", + "type": "array", + "items": { + "$ref": "#/definitions/WorkloadInquiryDetails" + } + } + } + }, + "InquiryValidation": { + "description": "Validation for inquired protectable items under a given container.", + "type": "object", + "properties": { + "status": { + "description": "Status for the Inquiry Validation.", + "type": "string" + }, + "errorDetail": { + "$ref": "#/definitions/ErrorDetail", + "description": "Error Detail in case the status is non-success." + }, + "additionalDetail": { + "description": "Error Additional Detail in case the status is non-success.", + "type": "string", + "readOnly": true + } + } + }, + "InstantItemRecoveryTarget": { + "description": "Target details for file / folder restore.", + "type": "object", + "properties": { + "clientScripts": { + "description": "List of client scripts.", + "type": "array", + "items": { + "$ref": "#/definitions/ClientScriptForConnect" + } + } + } + }, + "MabContainer": { + "description": "Container with items backed up using MAB backup engine.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionContainer" + } + ], + "properties": { + "canReRegister": { + "description": "Can the container be registered one more time.", + "type": "boolean" + }, + "containerId": { + "format": "int64", + "description": "ContainerID represents the container.", + "type": "integer" + }, + "protectedItemCount": { + "format": "int64", + "description": "Number of items backed up in this container.", + "type": "integer" + }, + "agentVersion": { + "description": "Agent version of this container.", + "type": "string" + }, + "extendedInfo": { + "$ref": "#/definitions/MabContainerExtendedInfo", + "description": "Additional information for this container" + }, + "mabContainerHealthDetails": { + "description": "Health details on this mab container.", + "type": "array", + "items": { + "$ref": "#/definitions/MABContainerHealthDetails" + } + }, + "containerHealthState": { + "description": "Health state of mab container.", + "type": "string" + } + }, + "x-ms-discriminator-value": "Windows" + }, + "MabContainerExtendedInfo": { + "description": "Additional information of the container.", + "type": "object", + "properties": { + "lastRefreshedAt": { + "format": "date-time", + "description": "Time stamp when this container was refreshed.", + "type": "string" + }, + "backupItemType": { + "description": "Type of backup items associated with this container.", + "enum": [ + "Invalid", + "VM", + "FileFolder", + "AzureSqlDb", + "SQLDB", + "Exchange", + "Sharepoint", + "VMwareVM", + "SystemState", + "Client", + "GenericDataSource", + "SQLDataBase", + "AzureFileShare", + "SAPHanaDatabase", + "SAPAseDatabase" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupItemType", + "modelAsString": true + } + }, + "backupItems": { + "description": "List of backup items associated with this container.", + "type": "array", + "items": { + "type": "string" + } + }, + "policyName": { + "description": "Backup policy associated with this container.", + "type": "string" + }, + "lastBackupStatus": { + "description": "Latest backup status of this container.", + "type": "string" + } + } + }, + "MABContainerHealthDetails": { + "description": "MAB workload-specific Health Details.", + "type": "object", + "properties": { + "code": { + "format": "int32", + "description": "Health Code", + "type": "integer" + }, + "title": { + "description": "Health Title", + "type": "string" + }, + "message": { + "description": "Health Message", + "type": "string" + }, + "recommendations": { + "description": "Health Recommended Actions", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "OperationStatus": { + "description": "Operation status.", + "type": "object", + "properties": { + "id": { + "description": "ID of the operation.", + "type": "string" + }, + "name": { + "description": "Name of the operation.", + "type": "string" + }, + "status": { + "description": "Operation status.", + "enum": [ + "Invalid", + "InProgress", + "Succeeded", + "Failed", + "Canceled" + ], + "type": "string", + "x-ms-enum": { + "name": "OperationStatusValues", + "modelAsString": true + } + }, + "startTime": { + "format": "date-time", + "description": "Operation start time. Format: ISO-8601.", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "Operation end time. Format: ISO-8601.", + "type": "string" + }, + "error": { + "$ref": "#/definitions/OperationStatusError", + "description": "Error information related to this operation." + }, + "properties": { + "$ref": "#/definitions/OperationStatusExtendedInfo", + "description": "Additional information associated with this operation." + } + } + }, + "OperationStatusError": { + "description": "Error information associated with operation status call.", + "type": "object", + "properties": { + "code": { + "description": "Error code of the operation failure.", + "type": "string" + }, + "message": { + "description": "Error message displayed if the operation failure.", + "type": "string" + } + } + }, + "OperationStatusExtendedInfo": { + "description": "Base class for additional information of operation status.", + "required": [ + "objectType" + ], + "type": "object", + "properties": { + "objectType": { + "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.", + "type": "string" + } + }, + "discriminator": "objectType" + }, + "OperationStatusJobExtendedInfo": { + "description": "Operation status job extended info.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/OperationStatusExtendedInfo" + } + ], + "properties": { + "jobId": { + "description": "ID of the job created for this protected item.", + "type": "string" + } + }, + "x-ms-discriminator-value": "OperationStatusJobExtendedInfo" + }, + "OperationStatusJobsExtendedInfo": { + "description": "Operation status extended info for list of jobs.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/OperationStatusExtendedInfo" + } + ], + "properties": { + "jobIds": { + "description": "IDs of the jobs created for the protected item.", + "type": "array", + "items": { + "type": "string" + } + }, + "failedJobsError": { + "description": "Stores all the failed jobs along with the corresponding error codes.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "x-ms-discriminator-value": "OperationStatusJobsExtendedInfo" + }, + "OperationStatusProvisionILRExtendedInfo": { + "description": "Operation status extended info for ILR provision action.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/OperationStatusExtendedInfo" + } + ], + "properties": { + "recoveryTarget": { + "$ref": "#/definitions/InstantItemRecoveryTarget", + "description": "Target details for file / folder restore." + } + }, + "x-ms-discriminator-value": "OperationStatusProvisionILRExtendedInfo" + }, + "PreBackupValidation": { + "description": "Pre-backup validation for Azure VM Workload provider.", + "type": "object", + "properties": { + "status": { + "description": "Status of protectable item, i.e. InProgress,Succeeded,Failed", + "enum": [ + "Invalid", + "Success", + "Failed" + ], + "type": "string", + "x-ms-enum": { + "name": "InquiryStatus", + "modelAsString": true + } + }, + "code": { + "description": "Error code of protectable item", + "type": "string" + }, + "message": { + "description": "Message corresponding to the error code for the protectable item", + "type": "string" + } + } + }, + "ProtectableContainer": { + "description": "Protectable Container Class.", + "type": "object", + "required": [ + "protectableContainerType" + ], + "properties": { + "friendlyName": { + "description": "Friendly name of the container.", + "type": "string" + }, + "backupManagementType": { + "description": "Type of backup management for the container.", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureBackupServer", + "AzureSql", + "AzureStorage", + "AzureWorkload", + "DefaultBackup" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupManagementType", + "modelAsString": true + } + }, + "protectableContainerType": { + "description": "Type of the container. The value of this property for\r\n1. Compute Azure VM is Microsoft.Compute/virtualMachines\r\n2. Classic Compute Azure VM is Microsoft.ClassicCompute/virtualMachines", + "enum": [ + "Invalid", + "Unknown", + "IaasVMContainer", + "IaasVMServiceContainer", + "DPMContainer", + "AzureBackupServerContainer", + "MABContainer", + "Cluster", + "AzureSqlContainer", + "Windows", + "VCenter", + "VMAppContainer", + "SQLAGWorkLoadContainer", + "StorageContainer", + "GenericContainer" + ], + "type": "string", + "readOnly": false, + "x-ms-enum": { + "name": "ContainerType", + "modelAsString": false + } + }, + "healthStatus": { + "description": "Status of health of the container.", + "type": "string" + }, + "containerId": { + "description": "Fabric Id of the container such as ARM Id.", + "type": "string" + } + }, + "discriminator": "protectableContainerType" + }, + "ProtectableContainerResource": { + "description": "Protectable Container Class.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ProtectableContainer", + "description": "ProtectableContainerResource properties" + } + } + }, + "ProtectableContainerResourceList": { + "description": "List of ProtectableContainer resources", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ResourceList" + } + ], + "properties": { + "value": { + "description": "List of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/ProtectableContainerResource" + } + } + } + }, + "ProtectionContainer": { + "description": "Base class for container with backup items. Containers with specific workloads are derived from this class.", + "type": "object", + "required": [ + "containerType" + ], + "properties": { + "friendlyName": { + "description": "Friendly name of the container.", + "type": "string" + }, + "backupManagementType": { + "description": "Type of backup management for the container.", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureBackupServer", + "AzureSql", + "AzureStorage", + "AzureWorkload", + "DefaultBackup" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupManagementType", + "modelAsString": true + } + }, + "registrationStatus": { + "description": "Status of registration of the container with the Recovery Services Vault.", + "type": "string" + }, + "healthStatus": { + "description": "Status of health of the container.", + "type": "string" + }, + "containerType": { + "description": "Type of the container. The value of this property for: 1. Compute Azure VM is Microsoft.Compute/virtualMachines 2.\r\nClassic Compute Azure VM is Microsoft.ClassicCompute/virtualMachines 3. Windows machines (like MAB, DPM etc) is\r\nWindows 4. Azure SQL instance is AzureSqlContainer. 5. Storage containers is StorageContainer. 6. Azure workload\r\nBackup is VMAppContainer", + "enum": [ + "Invalid", + "Unknown", + "IaasVMContainer", + "IaasVMServiceContainer", + "DPMContainer", + "AzureBackupServerContainer", + "MABContainer", + "Cluster", + "AzureSqlContainer", + "Windows", + "VCenter", + "VMAppContainer", + "SQLAGWorkLoadContainer", + "StorageContainer", + "GenericContainer" + ], + "type": "string", + "x-ms-enum": { + "name": "ContainerType", + "modelAsString": true + } + } + }, + "discriminator": "containerType" + }, + "ProtectionContainerResource": { + "description": "Base class for container with backup items. Containers with specific workloads are derived from this class.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ProtectionContainer", + "description": "ProtectionContainerResource properties" + } + } + }, + "ProtectionContainerResourceList": { + "description": "List of ProtectionContainer resources", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ResourceList" + } + ], + "properties": { + "value": { + "description": "List of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/ProtectionContainerResource" + } + } + } + }, + "TokenInformation": { + "description": "The token information details.", + "type": "object", + "properties": { + "token": { + "description": "Token value.", + "type": "string" + }, + "expiryTimeInUtcTicks": { + "format": "int64", + "description": "Expiry time of token.", + "type": "integer" + }, + "securityPIN": { + "description": "Security PIN", + "type": "string" + } + } + }, + "WorkloadInquiryDetails": { + "description": "Details of an inquired protectable item.", + "type": "object", + "properties": { + "type": { + "description": "Type of the Workload such as SQL, Oracle etc.", + "type": "string" + }, + "itemCount": { + "format": "int64", + "description": "Contains the protectable item Count inside this Container.", + "type": "integer" + }, + "inquiryValidation": { + "$ref": "#/definitions/InquiryValidation", + "description": "Inquiry validation such as permissions and other backup validations." + } + } + }, + "WorkloadItem": { + "description": "Base class for backup item. Workload-specific backup items are derived from this class.", + "type": "object", + "required": [ + "workloadItemType" + ], + "properties": { + "backupManagementType": { + "description": "Type of backup management to backup an item.", + "type": "string" + }, + "workloadType": { + "description": "Type of workload for the backup management", + "type": "string" + }, + "workloadItemType": { + "description": "Type of the backup item.", + "type": "string" + }, + "friendlyName": { + "description": "Friendly name of the backup item.", + "type": "string" + }, + "protectionState": { + "description": "State of the back up item.", + "enum": [ + "Invalid", + "NotProtected", + "Protecting", + "Protected", + "ProtectionFailed" + ], + "type": "string", + "x-ms-enum": { + "name": "ProtectionStatus", + "modelAsString": true + } + } + }, + "discriminator": "workloadItemType" + }, + "WorkloadItemResource": { + "description": "Base class for backup item. Workload-specific backup items are derived from this class.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/WorkloadItem", + "description": "WorkloadItemResource properties" + } + } + }, + "WorkloadItemResourceList": { + "description": "List of WorkloadItem resources", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ResourceList" + } + ], + "properties": { + "value": { + "description": "List of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/WorkloadItemResource" + } + } + } + }, + "WorkloadProtectableItem": { + "description": "Base class for backup item. Workload-specific backup items are derived from this class.", + "type": "object", + "required": [ + "protectableItemType" + ], + "properties": { + "backupManagementType": { + "description": "Type of backup management to backup an item.", + "type": "string" + }, + "workloadType": { + "description": "Type of workload for the backup management", + "type": "string" + }, + "protectableItemType": { + "description": "Type of the backup item.", + "type": "string" + }, + "friendlyName": { + "description": "Friendly name of the backup item.", + "type": "string" + }, + "protectionState": { + "description": "State of the back up item.", + "enum": [ + "Invalid", + "NotProtected", + "Protecting", + "Protected", + "ProtectionFailed" + ], + "type": "string", + "x-ms-enum": { + "name": "ProtectionStatus", + "modelAsString": true + } + } + }, + "discriminator": "protectableItemType" + }, + "WorkloadProtectableItemResource": { + "description": "Base class for backup item. Workload-specific backup items are derived from this class.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/WorkloadProtectableItem", + "description": "WorkloadProtectableItemResource properties" + } + } + }, + "WorkloadProtectableItemResourceList": { + "description": "List of WorkloadProtectableItem resources", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ResourceList" + } + ], + "properties": { + "value": { + "description": "List of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/WorkloadProtectableItemResource" + } + } + } + }, + "AzureWorkloadSAPHanaPointInTimeRestoreWithRehydrateRequest": { + "description": "AzureWorkload SAP Hana-specific restore with integrated rehydration of recovery point.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadSAPHanaPointInTimeRestoreRequest" + } + ], + "properties": { + "recoveryPointRehydrationInfo": { + "$ref": "#/definitions/RecoveryPointRehydrationInfo", + "description": "RP Rehydration Info" + } + }, + "x-ms-discriminator-value": "AzureWorkloadSAPHanaPointInTimeRestoreWithRehydrateRequest" + }, + "AzureWorkloadSAPHanaRestoreWithRehydrateRequest": { + "description": "AzureWorkload SAP Hana-specific restore with integrated rehydration of recovery point.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadSAPHanaRestoreRequest" + } + ], + "properties": { + "recoveryPointRehydrationInfo": { + "$ref": "#/definitions/RecoveryPointRehydrationInfo", + "description": "RP Rehydration Info" + } + }, + "x-ms-discriminator-value": "AzureWorkloadSAPHanaRestoreWithRehydrateRequest" + }, + "AzureWorkloadSQLPointInTimeRestoreWithRehydrateRequest": { + "description": "AzureWorkload SQL-specific restore with integrated rehydration of recovery point.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadSQLPointInTimeRestoreRequest" + } + ], + "properties": { + "recoveryPointRehydrationInfo": { + "$ref": "#/definitions/RecoveryPointRehydrationInfo", + "description": "RP Rehydration Info" + } + }, + "x-ms-discriminator-value": "AzureWorkloadSQLPointInTimeRestoreWithRehydrateRequest" + }, + "AzureWorkloadSQLRestoreWithRehydrateRequest": { + "description": "AzureWorkload SQL-specific restore with integrated rehydration of recovery point", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadSQLRestoreRequest" + } + ], + "properties": { + "recoveryPointRehydrationInfo": { + "$ref": "#/definitions/RecoveryPointRehydrationInfo", + "description": "RP Rehydration Info" + } + }, + "x-ms-discriminator-value": "AzureWorkloadSQLRestoreWithRehydrateRequest" + }, + "IaasVMRestoreWithRehydrationRequest": { + "description": "IaaS VM workload-specific restore with integrated rehydration of recovery point.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/IaasVMRestoreRequest" + } + ], + "properties": { + "recoveryPointRehydrationInfo": { + "$ref": "#/definitions/RecoveryPointRehydrationInfo", + "description": "RP Rehydration Info" + } + }, + "x-ms-discriminator-value": "IaasVMRestoreWithRehydrationRequest" + }, + "MoveRPAcrossTiersRequest": { + "type": "object", + "properties": { + "objectType": { + "description": "Gets the class type.", + "type": "string" + }, + "sourceTierType": { + "description": "Source tier from where RP needs to be moved", + "enum": [ + "Invalid", + "InstantRP", + "HardenedRP", + "ArchivedRP" + ], + "type": "string", + "x-ms-enum": { + "name": "RecoveryPointTierType", + "modelAsString": false + } + }, + "targetTierType": { + "description": "Target tier where RP needs to be moved", + "enum": [ + "Invalid", + "InstantRP", + "HardenedRP", + "ArchivedRP" + ], + "type": "string", + "x-ms-enum": { + "name": "RecoveryPointTierType", + "modelAsString": false + } + } + } + }, + "RecoveryPointMoveReadinessInfo": { + "type": "object", + "properties": { + "isReadyForMove": { + "type": "boolean" + }, + "additionalInfo": { + "type": "string" + } + } + }, + "RecoveryPointRehydrationInfo": { + "description": "RP Rehydration Info", + "type": "object", + "properties": { + "rehydrationRetentionDuration": { + "description": "How long the rehydrated RP should be kept\r\nShould be ISO8601 Duration format e.g. \"P7D\"", + "type": "string" + }, + "rehydrationPriority": { + "description": "Rehydration Priority", + "enum": [ + "Standard", + "High" + ], + "type": "string", + "x-ms-enum": { + "name": "RehydrationPriority", + "modelAsString": true + } + } + } + }, + "ListRecoveryPointsRecommendedForMoveRequest": { + "description": "ListRecoveryPointsRecommendedForMoveRequest Request", + "type": "object", + "properties": { + "objectType": { + "description": "Gets the class type.", + "type": "string" + }, + "excludedRPList": { + "description": "List of Recovery Points excluded from Move", + "type": "array", + "items": { + "type": "string" + } + } + } + } + }, + "parameters": { + "SubscriptionId": { + "name": "subscriptionId", + "in": "path", + "description": "The subscription Id.", + "required": true, + "type": "string" + }, + "AzureRegion": { + "name": "azureRegion", + "in": "path", + "description": "Azure region to hit Api", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ResourceGroupName": { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group where the recovery services vault is present.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "VaultName": { + "name": "vaultName", + "in": "path", + "description": "The name of the recovery services vault.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ApiVersion": { + "name": "api-version", + "in": "query", + "description": "Client Api Version.", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account." + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/BackupFeature_Validate.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/BackupFeature_Validate.json new file mode 100644 index 000000000000..28be066e4b51 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/BackupFeature_Validate.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "azureRegion": "southeastasia", + "api-version": "2017-07-01", + "parameters": { + "featureType": "AzureVMResourceBackup", + "vmSize": "Basic_A0", + "vmSku": "Premium" + } + }, + "responses": { + "200": { + "body": { + "supportStatus": "DefaultOFF" + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/BackupPolicies_List.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/BackupPolicies_List.json new file mode 100644 index 000000000000..de8821aa1ae6 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/BackupPolicies_List.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "api-version": "2021-01-01", + "$filter": "backupManagementType eq 'AzureIaasVM'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupPolicies/DefaultPolicy", + "name": "DefaultPolicy", + "type": "Microsoft.RecoveryServices/vaults/backupPolicies", + "properties": { + "backupManagementType": "AzureIaasVM", + "schedulePolicy": { + "schedulePolicyType": "SimpleSchedulePolicy", + "scheduleRunFrequency": "Daily", + "scheduleRunTimes": [ + "2017-12-05T19:00:00Z" + ], + "scheduleWeeklyFrequency": 0 + }, + "retentionPolicy": { + "retentionPolicyType": "LongTermRetentionPolicy", + "dailySchedule": { + "retentionTimes": [ + "2017-12-05T19:00:00Z" + ], + "retentionDuration": { + "count": 30, + "durationType": "Days" + } + } + }, + "protectedItemsCount": 0 + } + }, + { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupPolicies/testPolicy1", + "name": "testPolicy1", + "type": "Microsoft.RecoveryServices/vaults/backupPolicies", + "properties": { + "backupManagementType": "AzureIaasVM", + "schedulePolicy": { + "schedulePolicyType": "SimpleSchedulePolicy", + "scheduleRunFrequency": "Daily", + "scheduleRunTimes": [ + "2018-01-24T02:00:00Z" + ], + "scheduleWeeklyFrequency": 0 + }, + "retentionPolicy": { + "retentionPolicyType": "LongTermRetentionPolicy", + "dailySchedule": { + "retentionTimes": [ + "2018-01-24T02:00:00Z" + ], + "retentionDuration": { + "count": 1, + "durationType": "Days" + } + } + }, + "timeZone": "Pacific Standard Time", + "protectedItemsCount": 0 + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/BackupProtectableItems_List.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/BackupProtectableItems_List.json new file mode 100644 index 000000000000..4cb1cc937d56 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/BackupProtectableItems_List.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "api-version": "2021-01-01", + "$filter": "backupManagementType eq 'AzureIaasVM'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/protectionContainers/IaasVMContainer;iaasvmcontainer;iaasvm-rg;iaasvm-1/protectableItems/VM;iaasvmcontainer;iaasvm-rg;iaasvm-1", + "name": "VM;iaasvmcontainer;iaasvm-rg;iaasvm-1", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/protectableItems", + "properties": { + "friendlyName": "iaasvm-1", + "virtualMachineId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/providers/Microsoft.ClassicCompute/virtualMachines/iaasvm-1", + "protectionState": "NotProtected", + "protectableItemType": "Microsoft.ClassicCompute/virtualMachines", + "backupManagementType": "AzureIaasVM", + "workloadType": "VM" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/BackupProtectedItems_List.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/BackupProtectedItems_List.json new file mode 100644 index 000000000000..1d8a1b664602 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/BackupProtectedItems_List.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "api-version": "2021-01-01", + "$filter": "backupManagementType eq 'AzureIaasVM' and itemType eq 'VM'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/protectionContainers/IaasVMContainer;iaasvmcontainer;iaasvm-rg;iaasvm-1/protectedItems/VM;iaasvmcontainer;iaasvm-rg;iaasvm-1", + "name": "VM;iaasvmcontainer;iaasvm-rg;iaasvm-1", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/protectedItems", + "properties": { + "friendlyName": "iaasvm-1", + "virtualMachineId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/providers/Microsoft.ClassicCompute/virtualMachines/iaasvm-1", + "protectionStatus": "Healthy", + "protectionState": "Protected", + "healthStatus": "Passed", + "lastBackupStatus": "Completed", + "lastBackupTime": "2018-01-22T12:25:32.048723Z", + "protectedItemDataId": "636482643132986882", + "protectedItemType": "Microsoft.ClassicCompute/virtualMachines", + "backupManagementType": "AzureIaasVM", + "workloadType": "VM", + "containerName": "iaasvmcontainer;iaasvm-rg;iaasvm-1", + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/providers/Microsoft.ClassicCompute/virtualMachines/iaasvm-1", + "policyId": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupPolicies/testPolicy1", + "lastRecoveryPoint": "2017-11-22T12:25:32.048723Z" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/ClassicCompute_ProtectedItem_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/ClassicCompute_ProtectedItem_Get.json new file mode 100644 index 000000000000..7b13e736575a --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/ClassicCompute_ProtectedItem_Get.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "PythonSDKBackupTestRg", + "vaultName": "PySDKBackupTestRsVault", + "fabricName": "Azure", + "containerName": "iaasvmcontainer;iaasvmcontainer;iaasvm-rg;iaasvm-1", + "protectedItemName": "vm;iaasvmcontainer;iaasvm-rg;iaasvm-1", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PythonSDKBackupTestRg/providers/Microsoft.RecoveryServices/vaults/PySDKBackupTestRsVault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainer;iaasvm-rg;iaasvm-1/protectedItems/VM;iaasvmcontainer;iaasvm-rg;iaasvm-1", + "name": "VM;iaasvmcontainer;iaasvm-rg;iaasvm-1", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/protectedItems", + "properties": { + "friendlyName": "iaasvm-1", + "virtualMachineId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/providers/Microsoft.ClassicCompute/virtualMachines/iaasvm-1", + "protectionStatus": "Healthy", + "protectionState": "Protected", + "healthStatus": "Passed", + "lastBackupStatus": "Completed", + "lastBackupTime": "2018-01-22T12:25:32.048723Z", + "protectedItemDataId": "636482643132986882", + "protectedItemType": "Microsoft.ClassicCompute/virtualMachines", + "backupManagementType": "AzureIaasVM", + "workloadType": "VM", + "containerName": "iaasvmcontainer;iaasvm-rg;iaasvm-1", + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/providers/Microsoft.ClassicCompute/virtualMachines/iaasvm-1", + "policyId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PythonSDKBackupTestRg/providers/Microsoft.RecoveryServices/vaults/PySDKBackupTestRsVault/backupPolicies/testPolicy1", + "lastRecoveryPoint": "2017-11-22T12:25:32.048723Z" + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/Compute_ProtectedItem_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/Compute_ProtectedItem_Get.json new file mode 100644 index 000000000000..e6539d937d68 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/Compute_ProtectedItem_Get.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "PythonSDKBackupTestRg", + "vaultName": "PySDKBackupTestRsVault", + "fabricName": "Azure", + "containerName": "iaasvmcontainer;iaasvmcontainerv2;iaasvm-rg;iaasvm-1", + "protectedItemName": "vm;iaasvmcontainerv2;iaasvm-rg;iaasvm-1", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PythonSDKBackupTestRg/providers/Microsoft.RecoveryServices/vaults/PySDKBackupTestRsVault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainerv2;iaasvm-rg;iaasvm-1/protectedItems/VM;iaasvmcontainerv2;iaasvm-rg;iaasvm-1", + "name": "VM;iaasvmcontainerv2;iaasvm-rg;iaasvm-1", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/protectedItems", + "properties": { + "friendlyName": "iaasvm-1", + "virtualMachineId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/providers/Microsoft.Compute/virtualMachines/iaasvm-1", + "protectionStatus": "Healthy", + "protectionState": "Protected", + "healthStatus": "Passed", + "lastBackupStatus": "Completed", + "lastBackupTime": "2018-01-22T12:25:32.048723Z", + "protectedItemDataId": "636482643132986882", + "protectedItemType": "Microsoft.Compute/virtualMachines", + "backupManagementType": "AzureIaasVM", + "workloadType": "VM", + "containerName": "iaasvmcontainerv2;iaasvm-rg;iaasvm-1", + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/providers/Microsoft.Compute/virtualMachines/iaasvm-1", + "policyId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PythonSDKBackupTestRg/providers/Microsoft.RecoveryServices/vaults/PySDKBackupTestRsVault/backupPolicies/testPolicy1", + "lastRecoveryPoint": "2017-11-22T12:25:32.048723Z" + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/ConfigureProtection.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/ConfigureProtection.json new file mode 100644 index 000000000000..8b54de5b02d8 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/ConfigureProtection.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "fabricName": "Azure", + "containerName": "IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "protectedItemName": "VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "api-version": "2021-01-01", + "parameters": { + "properties": { + "protectedItemType": "Microsoft.Compute/virtualMachines", + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.Compute/virtualMachines/netvmtestv2vm1", + "policyId": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupPolicies/DefaultPolicy" + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/protectedItems/VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/operationResults/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Azure-AsyncOperation": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/protectedItems/VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/operationsStatus/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Retry-After": 60 + } + }, + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PythonSDKBackupTestRg/providers/Microsoft.RecoveryServices/vaults/PySDKBackupTestRsVault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/protectedItems/VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "name": "VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/protectedItems", + "properties": { + "friendlyName": "netvmtestv2vm1", + "virtualMachineId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.Compute/virtualMachines/netvmtestv2vm1", + "protectionStatus": "Healthy", + "protectionState": "Protected", + "healthStatus": "Passed", + "lastBackupStatus": "Completed", + "lastBackupTime": "2018-01-22T12:25:32.048723Z", + "protectedItemDataId": "636482643132986882", + "protectedItemType": "Microsoft.Compute/virtualMachines", + "backupManagementType": "AzureIaasVM", + "workloadType": "VM", + "containerName": "iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.Compute/virtualMachines/netvmtestv2vm1", + "policyId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PythonSDKBackupTestRg/providers/Microsoft.RecoveryServices/vaults/PySDKBackupTestRsVault/backupPolicies/testPolicy1", + "lastRecoveryPoint": null + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/GetBackupStatus.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/GetBackupStatus.json new file mode 100644 index 000000000000..97b68a9d0513 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/GetBackupStatus.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "azureRegion": "southeastasia", + "api-version": "2017-07-01", + "parameters": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRg/providers/Microsoft.Compute/VirtualMachines/testVm", + "resourceType": "VM" + } + }, + "responses": { + "200": { + "body": { + "protectionStatus": "Protected", + "vaultId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRg/providers/Microsoft.RecoveryServices/Vaults/testVault", + "fabricName": "Azure", + "containerName": "iaasvmcontainer;iaasvmcontainerv2;testRg;testVm", + "protectedItemName": "vm;iaasvmcontainerv2;testRg;testVm", + "policyName": "myPolicy", + "errorCode": "Success", + "errorMessage": "ErrorMessage" + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/ProtectedItemOperationResults.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/ProtectedItemOperationResults.json new file mode 100644 index 000000000000..2739feaa383a --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/ProtectedItemOperationResults.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "fabricName": "Azure", + "containerName": "IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "protectedItemName": "VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "operationId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-01-01" + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/protectedItems/VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/operationResults/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Azure-AsyncOperation": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/protectedItems/VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/operationsStatus/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Retry-After": 60 + } + }, + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PythonSDKBackupTestRg/providers/Microsoft.RecoveryServices/vaults/PySDKBackupTestRsVault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/protectedItems/VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "name": "VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/protectedItems", + "properties": { + "friendlyName": "netvmtestv2vm1", + "virtualMachineId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.Compute/virtualMachines/netvmtestv2vm1", + "protectionStatus": "Healthy", + "protectionState": "Protected", + "healthStatus": "Passed", + "lastBackupStatus": "Completed", + "lastBackupTime": "2018-01-22T12:25:32.048723Z", + "protectedItemDataId": "636482643132986882", + "protectedItemType": "Microsoft.Compute/virtualMachines", + "backupManagementType": "AzureIaasVM", + "workloadType": "VM", + "containerName": "iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.Compute/virtualMachines/netvmtestv2vm1", + "policyId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PythonSDKBackupTestRg/providers/Microsoft.RecoveryServices/vaults/PySDKBackupTestRsVault/backupPolicies/testPolicy1", + "lastRecoveryPoint": null + } + } + }, + "204": {} + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/ProtectedItemOperationStatus.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/ProtectedItemOperationStatus.json new file mode 100644 index 000000000000..c29b7e06185f --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/ProtectedItemOperationStatus.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "fabricName": "Azure", + "containerName": "IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "protectedItemName": "VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "operationId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "status": "Succeeded", + "startTime": "2017-10-29T06:04:18.207325Z", + "endTime": "2017-10-29T06:04:18.207325Z", + "properties": { + "objectType": "OperationStatusJobExtendedInfo", + "jobId": "00000000-0000-0000-0000-000000000000" + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/ProtectionIntent_CreateOrUpdate.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/ProtectionIntent_CreateOrUpdate.json new file mode 100644 index 000000000000..3ef776db4e1e --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/ProtectionIntent_CreateOrUpdate.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myRG", + "vaultName": "myVault", + "fabricName": "Azure", + "intentObjectName": "vm;iaasvmcontainerv2;chamsrgtest;chamscandel", + "api-version": "2017-07-01", + "parameters": { + "properties": { + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/chamsrgtest/providers/Microsoft.Compute/virtualMachines/chamscandel", + "protectionIntentItemType": "AzureResourceItem", + "policyId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myRG/providers/Microsoft.RecoveryServices/vaults/myVault/backupPolicies/myPolicy" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myRG/providers/Microsoft.RecoveryServices/vaults/myVault/backupFabrics/Azure/backupProtectionIntent/vm;iaasvmcontainerv2;chamsrgtest;chamscandel", + "name": "vm;iaasvmcontainerv2;chamsrgtest;chamscandel", + "type": "Microsoft.RecoveryServices/vaults/backupProtectionIntent", + "properties": { + "backupManagementType": "AzureIaasVM", + "policyId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myRG/providers/Microsoft.RecoveryServices/vaults/myVault/backupPolicies/myPolicy", + "protectionState": "Protected" + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/ProtectionIntent_Validate.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/ProtectionIntent_Validate.json new file mode 100644 index 000000000000..f02e0c6a04a3 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/ProtectionIntent_Validate.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "azureRegion": "southeastasia", + "api-version": "2017-07-01", + "parameters": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/arunaupgrade/providers/Microsoft.Compute/VirtualMachines/upgrade1", + "resourceType": "VM", + "vaultId": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myRG/providers/Microsoft.RecoveryServices/Vaults/myVault", + "properties": "" + } + }, + "responses": { + "200": { + "body": { + "status": "Failed", + "errorCode": "VirtualMachineAlreadyProtected", + "errorMessage": "Virtual machine with same name and same resource group is already protected. Please select `Disable' choice above for backup and go to backup item corresponding to this VM in the vault", + "recommendation": "Please do not enable protection again.", + "containerName": "iaasvmcontainer;iaasvmcontainerv2;arunaupgrade;upgrade1", + "protectedItemName": "vm;iaasvmcontainerv2;arunaupgrade;upgrade1" + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/ProtectionPolicies_CreateOrUpdate_Complex.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/ProtectionPolicies_CreateOrUpdate_Complex.json new file mode 100644 index 000000000000..7812485dd2b4 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/ProtectionPolicies_CreateOrUpdate_Complex.json @@ -0,0 +1,181 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "policyName": "testPolicy1", + "api-version": "2021-01-01", + "parameters": { + "properties": { + "backupManagementType": "AzureIaasVM", + "timeZone": "Pacific Standard Time", + "schedulePolicy": { + "schedulePolicyType": "SimpleSchedulePolicy", + "scheduleRunFrequency": "Weekly", + "scheduleRunTimes": [ + "2018-01-24T10:00:00Z" + ], + "scheduleRunDays": [ + "Monday", + "Wednesday", + "Thursday" + ] + }, + "retentionPolicy": { + "retentionPolicyType": "LongTermRetentionPolicy", + "weeklySchedule": { + "daysOfTheWeek": [ + "Monday", + "Wednesday", + "Thursday" + ], + "retentionTimes": [ + "2018-01-24T10:00:00Z" + ], + "retentionDuration": { + "count": 1, + "durationType": "Weeks" + } + }, + "monthlySchedule": { + "retentionScheduleFormatType": "Weekly", + "retentionScheduleWeekly": { + "daysOfTheWeek": [ + "Wednesday", + "Thursday" + ], + "weeksOfTheMonth": [ + "First", + "Third" + ] + }, + "retentionTimes": [ + "2018-01-24T10:00:00Z" + ], + "retentionDuration": { + "count": 2, + "durationType": "Months" + } + }, + "yearlySchedule": { + "retentionScheduleFormatType": "Weekly", + "monthsOfYear": [ + "February", + "November" + ], + "retentionScheduleWeekly": { + "daysOfTheWeek": [ + "Monday", + "Thursday" + ], + "weeksOfTheMonth": [ + "Fourth" + ] + }, + "retentionTimes": [ + "2018-01-24T10:00:00Z" + ], + "retentionDuration": { + "count": 4, + "durationType": "Years" + } + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupPolicies/testPolicy1", + "name": "testPolicy1", + "type": "Microsoft.RecoveryServices/vaults/backupPolicies", + "properties": { + "backupManagementType": "AzureIaasVM", + "schedulePolicy": { + "schedulePolicyType": "SimpleSchedulePolicy", + "scheduleRunFrequency": "Weekly", + "scheduleRunDays": [ + "Monday", + "Wednesday", + "Thursday" + ], + "scheduleRunTimes": [ + "2018-01-24T10:00:00Z" + ], + "scheduleWeeklyFrequency": 0 + }, + "retentionPolicy": { + "retentionPolicyType": "LongTermRetentionPolicy", + "weeklySchedule": { + "daysOfTheWeek": [ + "Monday", + "Wednesday", + "Thursday" + ], + "retentionTimes": [ + "2018-01-24T10:00:00Z" + ], + "retentionDuration": { + "count": 1, + "durationType": "Weeks" + } + }, + "monthlySchedule": { + "retentionScheduleFormatType": "Weekly", + "retentionScheduleWeekly": { + "daysOfTheWeek": [ + "Wednesday", + "Thursday" + ], + "weeksOfTheMonth": [ + "First", + "Third" + ] + }, + "retentionTimes": [ + "2018-01-24T10:00:00Z" + ], + "retentionDuration": { + "count": 2, + "durationType": "Months" + } + }, + "yearlySchedule": { + "retentionScheduleFormatType": "Weekly", + "monthsOfYear": [ + "February", + "November" + ], + "retentionScheduleWeekly": { + "daysOfTheWeek": [ + "Monday", + "Thursday" + ], + "weeksOfTheMonth": [ + "Fourth" + ] + }, + "retentionTimes": [ + "2018-01-24T10:00:00Z" + ], + "retentionDuration": { + "count": 4, + "durationType": "Years" + } + } + }, + "timeZone": "Pacific Standard Time", + "protectedItemsCount": 0 + } + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupPolicies/testPolicy1/operationResults/00000000-0000-0000-0000-000000000000?api-version=2016-06-01", + "Azure-AsyncOperation": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupPolicies/testPolicy1/operations/00000000-0000-0000-0000-000000000000?api-version=2016-06-01", + "Retry-After": 60 + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/ProtectionPolicies_CreateOrUpdate_Simple.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/ProtectionPolicies_CreateOrUpdate_Simple.json new file mode 100644 index 000000000000..20ec2f4af4ea --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/ProtectionPolicies_CreateOrUpdate_Simple.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "policyName": "testPolicy1", + "api-version": "2021-01-01", + "parameters": { + "properties": { + "backupManagementType": "AzureIaasVM", + "timeZone": "Pacific Standard Time", + "schedulePolicy": { + "schedulePolicyType": "SimpleSchedulePolicy", + "scheduleRunFrequency": "Daily", + "scheduleRunTimes": [ + "2018-01-24T02:00:00Z" + ] + }, + "retentionPolicy": { + "retentionPolicyType": "LongTermRetentionPolicy", + "dailySchedule": { + "retentionTimes": [ + "2018-01-24T02:00:00Z" + ], + "retentionDuration": { + "count": 1, + "durationType": "Days" + } + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupPolicies/testPolicy1", + "name": "testPolicy1", + "type": "Microsoft.RecoveryServices/vaults/backupPolicies", + "properties": { + "backupManagementType": "AzureIaasVM", + "schedulePolicy": { + "schedulePolicyType": "SimpleSchedulePolicy", + "scheduleRunFrequency": "Daily", + "scheduleRunTimes": [ + "2018-01-24T02:00:00Z" + ], + "scheduleWeeklyFrequency": 0 + }, + "retentionPolicy": { + "retentionPolicyType": "LongTermRetentionPolicy", + "dailySchedule": { + "retentionTimes": [ + "2018-01-24T02:00:00Z" + ], + "retentionDuration": { + "count": 1, + "durationType": "Days" + } + } + }, + "timeZone": "Pacific Standard Time", + "protectedItemsCount": 0 + } + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupPolicies/testPolicy1/operationResults/00000000-0000-0000-0000-000000000000?api-version=2016-06-01", + "Azure-AsyncOperation": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupPolicies/testPolicy1/operations/00000000-0000-0000-0000-000000000000?api-version=2016-06-01", + "Retry-After": 60 + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/ProtectionPolicies_Delete.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/ProtectionPolicies_Delete.json new file mode 100644 index 000000000000..1bf72ca67b2c --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/ProtectionPolicies_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "policyName": "testPolicy1", + "api-version": "2021-01-01" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/ProtectionPolicies_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/ProtectionPolicies_Get.json new file mode 100644 index 000000000000..f51cc74d006b --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/ProtectionPolicies_Get.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "policyName": "testPolicy1", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupPolicies/testPolicy1", + "name": "testPolicy1", + "type": "Microsoft.RecoveryServices/vaults/backupPolicies", + "properties": { + "backupManagementType": "AzureIaasVM", + "schedulePolicy": { + "schedulePolicyType": "SimpleSchedulePolicy", + "scheduleRunFrequency": "Daily", + "scheduleRunTimes": [ + "2018-01-24T02:00:00Z" + ], + "scheduleWeeklyFrequency": 0 + }, + "retentionPolicy": { + "retentionPolicyType": "LongTermRetentionPolicy", + "dailySchedule": { + "retentionTimes": [ + "2018-01-24T02:00:00Z" + ], + "retentionDuration": { + "count": 1, + "durationType": "Days" + } + } + }, + "timeZone": "Pacific Standard Time", + "protectedItemsCount": 0 + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/ProtectionPolicyOperationResults_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/ProtectionPolicyOperationResults_Get.json new file mode 100644 index 000000000000..070b70ad0bfb --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/ProtectionPolicyOperationResults_Get.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "policyName": "testPolicy1", + "operationId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupPolicies/testPolicy1", + "name": "testPolicy1", + "type": "Microsoft.RecoveryServices/vaults/backupPolicies", + "properties": { + "backupManagementType": "AzureIaasVM", + "schedulePolicy": { + "schedulePolicyType": "SimpleSchedulePolicy", + "scheduleRunFrequency": "Daily", + "scheduleRunTimes": [ + "2018-01-24T02:00:00Z" + ], + "scheduleWeeklyFrequency": 0 + }, + "retentionPolicy": { + "retentionPolicyType": "LongTermRetentionPolicy", + "dailySchedule": { + "retentionTimes": [ + "2018-01-24T02:00:00Z" + ], + "retentionDuration": { + "count": 1, + "durationType": "Days" + } + } + }, + "timeZone": "Pacific Standard Time", + "protectedItemsCount": 1 + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/ProtectionPolicyOperationStatuses_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/ProtectionPolicyOperationStatuses_Get.json new file mode 100644 index 000000000000..32526ebb5016 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/ProtectionPolicyOperationStatuses_Get.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "policyName": "testPolicy1", + "operationId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "id": "00000000-0000-0000-0000-000000000000", + "name": "GetProtectionPolicyOperationStatus", + "status": "Succeeded", + "startTime": "2018-01-24T12:57:32.1142968Z", + "endTime": "2018-01-24T12:57:32.1142968Z", + "properties": { + "objectType": "OperationStatusJobsExtendedInfo", + "jobIds": [ + "00000000-0000-0000-0000-000000000000" + ], + "failedJobsError": {} + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/Provision_Ilr.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/Provision_Ilr.json new file mode 100644 index 000000000000..a377e88c8e49 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/Provision_Ilr.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "PythonSDKBackupTestRg", + "vaultName": "PySDKBackupTestRsVault", + "fabricName": "Azure", + "containerName": "iaasvmcontainer;iaasvmcontainerv2;pysdktestrg;pysdktestv2vm1", + "protectedItemName": "vm;iaasvmcontainerv2;pysdktestrg;pysdktestv2vm1", + "recoveryPointId": "1", + "api-version": "2021-01-01", + "parameters": { + "properties": { + "initiatorName": "Hello World", + "recoveryPointId": "38823086363464", + "renewExistingRegistration": true, + "virtualMachineId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pysdktestrg/providers/Microsoft.Compute/virtualMachines/pysdktestv2vm1", + "objectType": "IaasVMILRRegistrationRequest" + } + } + }, + "responses": { + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PythonSDKBackupTestRg/providers/Microsoft.RecoveryServices/vaults/PySDKBackupTestRsVault/backupFabrics/Azure/protectionContainers/iaasvmcontainer;iaasvmcontainerv2;pysdktestrg;pysdktestv2vm1/protectedItems/vm;iaasvmcontainerv2;pysdktestrg;pysdktestv2vm1/operationsStatus/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PythonSDKBackupTestRg/providers/Microsoft.RecoveryServices/vaults/PySDKBackupTestRsVault/backupFabrics/Azure/protectionContainers/iaasvmcontainer;iaasvmcontainerv2;pysdktestrg;pysdktestv2vm1/protectedItems/vm;iaasvmcontainerv2;pysdktestrg;pysdktestv2vm1/operationResults/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Retry-After": 60 + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/RecoveryPointsRecommendedForMove_List.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/RecoveryPointsRecommendedForMove_List.json new file mode 100644 index 000000000000..1d5a024131ef --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/RecoveryPointsRecommendedForMove_List.json @@ -0,0 +1,101 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "rshhtestmdvmrg", + "vaultName": "rshvault", + "fabricName": "Azure", + "containerName": "IaasVMContainer;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall", + "protectedItemName": "VM;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall", + "api-version": "2021-01-01", + "parameters": { + "objectType": "ListRecoveryPointsRecommendedForMoveRequest", + "excludedRPList": [ + "348916168024334", + "348916168024335" + ] + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rshhtestmdvmrg/providers/Microsoft.RecoveryServices/vaults/rshvault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall/protectedItems/VM;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall/recoveryPoints/22244821112382", + "name": "22244821112382", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints", + "properties": { + "objectType": "IaasVMRecoveryPoint", + "recoveryPointType": "CrashConsistent", + "recoveryPointTime": "2017-12-21T22:48:25.4353958Z", + "recoveryPointAdditionalInfo": "", + "sourceVMStorageType": "NormalStorage", + "isSourceVMEncrypted": false, + "isInstantIlrSessionActive": false, + "recoveryPointTierDetails": [ + { + "type": "InstantRP", + "status": "Deleted" + }, + { + "type": "HardenedRP", + "status": "Valid" + } + ], + "recoveryPointMoveReadinessInfo": { + "ArchivedRP": { + "isReadyForMove": true + } + }, + "isManagedVirtualMachine": true, + "virtualMachineSize": "Standard_D1", + "originalStorageAccountOption": false + } + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rshhtestmdvmrg/providers/Microsoft.RecoveryServices/vaults/rshvault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall/protectedItems/VM;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall/recoveryPoints/24977149827250", + "name": "24977149827250", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints", + "properties": { + "objectType": "IaasVMRecoveryPoint", + "recoveryPointType": "CrashConsistent", + "recoveryPointTime": "2017-12-20T22:49:44.3317945Z", + "recoveryPointAdditionalInfo": "", + "sourceVMStorageType": "NormalStorage", + "isSourceVMEncrypted": false, + "isInstantIlrSessionActive": false, + "recoveryPointTierDetails": [ + { + "type": "InstantRP", + "status": "Deleted" + }, + { + "type": "HardenedRP", + "status": "Deleted" + }, + { + "type": "ArchivedRP", + "status": "Rehydrated", + "extendedInfo": { + "RehydratedRPExpiryTime": "2020-12-21T22:48:25.4353958Z" + } + } + ], + "recoveryPointMoveReadinessInfo": { + "ArchivedRP": { + "isReadyForMove": true + } + }, + "isManagedVirtualMachine": true, + "virtualMachineSize": "Standard_D1", + "originalStorageAccountOption": false, + "zones": [ + "1" + ] + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/RecoveryPoints_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/RecoveryPoints_Get.json new file mode 100644 index 000000000000..9ca3d0bcb17a --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/RecoveryPoints_Get.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "rshhtestmdvmrg", + "vaultName": "rshvault", + "fabricName": "Azure", + "containerName": "IaasVMContainer;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall", + "protectedItemName": "VM;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall", + "recoveryPointId": "26083826328862", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rshhtestmdvmrg/providers/Microsoft.RecoveryServices/vaults/rshvault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall/protectedItems/VM;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall/recoveryPoints/26083826328862", + "name": "26083826328862", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints", + "properties": { + "objectType": "IaasVMRecoveryPoint", + "recoveryPointType": "CrashConsistent", + "recoveryPointTime": "2017-11-22T22:32:46.6088472Z", + "recoveryPointAdditionalInfo": "", + "sourceVMStorageType": "NormalStorage", + "isSourceVMEncrypted": false, + "isInstantIlrSessionActive": false, + "recoveryPointTierDetails": [ + { + "type": "HardenedRP", + "status": "Valid" + } + ], + "recoveryPointMoveReadinessInfo": { + "ArchivedRP": { + "isReadyForMove": true + } + }, + "isManagedVirtualMachine": true, + "virtualMachineSize": "Standard_D1", + "originalStorageAccountOption": false, + "zones": [ + "1" + ] + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/RecoveryPoints_List.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/RecoveryPoints_List.json new file mode 100644 index 000000000000..979951e5f8d1 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/RecoveryPoints_List.json @@ -0,0 +1,95 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "rshhtestmdvmrg", + "vaultName": "rshvault", + "fabricName": "Azure", + "containerName": "IaasVMContainer;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall", + "protectedItemName": "VM;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rshhtestmdvmrg/providers/Microsoft.RecoveryServices/vaults/rshvault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall/protectedItems/VM;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall/recoveryPoints/22244821112382", + "name": "22244821112382", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints", + "properties": { + "objectType": "IaasVMRecoveryPoint", + "recoveryPointType": "CrashConsistent", + "recoveryPointTime": "2017-12-21T22:48:25.4353958Z", + "recoveryPointAdditionalInfo": "", + "sourceVMStorageType": "NormalStorage", + "isSourceVMEncrypted": false, + "isInstantIlrSessionActive": false, + "recoveryPointTierDetails": [ + { + "type": "InstantRP", + "status": "Deleted" + }, + { + "type": "HardenedRP", + "status": "Valid" + } + ], + "recoveryPointMoveReadinessInfo": { + "Archive": { + "isReadyForMove": true + } + }, + "isManagedVirtualMachine": true, + "virtualMachineSize": "Standard_D1", + "originalStorageAccountOption": false + } + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rshhtestmdvmrg/providers/Microsoft.RecoveryServices/vaults/rshvault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall/protectedItems/VM;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall/recoveryPoints/24977149827250", + "name": "24977149827250", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints", + "properties": { + "objectType": "IaasVMRecoveryPoint", + "recoveryPointType": "CrashConsistent", + "recoveryPointTime": "2017-12-20T22:49:44.3317945Z", + "recoveryPointAdditionalInfo": "", + "sourceVMStorageType": "NormalStorage", + "isSourceVMEncrypted": false, + "isInstantIlrSessionActive": false, + "recoveryPointTierDetails": [ + { + "type": "InstantRP", + "status": "Deleted" + }, + { + "type": "HardenedRP", + "status": "Deleted" + }, + { + "type": "ArchivedRP", + "status": "Rehydrated", + "extendedInfo": { + "RehydratedRPExpiryTime": "2020-12-21T22:48:25.4353958Z" + } + } + ], + "recoveryPointMoveReadinessInfo": { + "ArchivedRP": { + "isReadyForMove": false, + "additionalInfo": "Recovery point cannot be moved to archive tier since it has already been moved." + } + }, + "isManagedVirtualMachine": true, + "virtualMachineSize": "Standard_D1", + "originalStorageAccountOption": false, + "zones": [ + "1" + ] + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/Revoke_Ilr.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/Revoke_Ilr.json new file mode 100644 index 000000000000..65d956bd222d --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/Revoke_Ilr.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "PythonSDKBackupTestRg", + "vaultName": "PySDKBackupTestRsVault", + "fabricName": "Azure", + "containerName": "iaasvmcontainer;iaasvmcontainerv2;pysdktestrg;pysdktestv2vm1", + "protectedItemName": "vm;iaasvmcontainerv2;pysdktestrg;pysdktestv2vm1", + "recoveryPointId": "1", + "api-version": "2021-01-01" + }, + "responses": { + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PythonSDKBackupTestRg/providers/Microsoft.RecoveryServices/vaults/PySDKBackupTestRsVault/backupFabrics/Azure/protectionContainers/iaasvmcontainer;iaasvmcontainerv2;pysdktestrg;pysdktestv2vm1/protectedItems/vm;iaasvmcontainerv2;pysdktestrg;pysdktestv2vm1/operationsStatus/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PythonSDKBackupTestRg/providers/Microsoft.RecoveryServices/vaults/PySDKBackupTestRsVault/backupFabrics/Azure/protectionContainers/iaasvmcontainer;iaasvmcontainerv2;pysdktestrg;pysdktestv2vm1/protectedItems/vm;iaasvmcontainerv2;pysdktestrg;pysdktestv2vm1/operationResults/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Retry-After": 60 + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/StopProtection.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/StopProtection.json new file mode 100644 index 000000000000..06afda60ed89 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/StopProtection.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "fabricName": "Azure", + "containerName": "IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "protectedItemName": "VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "api-version": "2021-01-01", + "parameters": { + "properties": { + "protectedItemType": "Microsoft.Compute/virtualMachines", + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.Compute/virtualMachines/netvmtestv2vm1", + "protectionState": "ProtectionStopped" + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/protectedItems/VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/operationResults/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Azure-AsyncOperation": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/protectedItems/VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/operationsStatus/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Retry-After": 60 + } + }, + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PythonSDKBackupTestRg/providers/Microsoft.RecoveryServices/vaults/PySDKBackupTestRsVault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/protectedItems/VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "name": "VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/protectedItems", + "properties": { + "friendlyName": "netvmtestv2vm1", + "virtualMachineId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.Compute/virtualMachines/netvmtestv2vm1", + "protectionStatus": "Healthy", + "protectionState": "ProtectionStopped", + "healthStatus": "Passed", + "lastBackupStatus": "Completed", + "lastBackupTime": "2018-01-22T12:25:32.048723Z", + "protectedItemDataId": "636482643132986882", + "protectedItemType": "Microsoft.Compute/virtualMachines", + "backupManagementType": "AzureIaasVM", + "workloadType": "VM", + "containerName": "iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.Compute/virtualMachines/netvmtestv2vm1", + "policyId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PythonSDKBackupTestRg/providers/Microsoft.RecoveryServices/vaults/PySDKBackupTestRsVault/backupPolicies/testPolicy1", + "lastRecoveryPoint": null + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/TriggerRestore_ALR.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/TriggerRestore_ALR.json new file mode 100644 index 000000000000..b6441f10e048 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/TriggerRestore_ALR.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "netsdktestrg", + "vaultName": "testVault", + "fabricName": "Azure", + "containerName": "IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "protectedItemName": "VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "recoveryPointId": "348916168024334", + "api-version": "2021-03-01", + "parameters": { + "properties": { + "objectType": "IaasVMRestoreWithRehydrationRequest", + "recoveryPointId": "348916168024334", + "recoveryType": "AlternateLocation", + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.Compute/virtualMachines/netvmtestv2vm1", + "targetVirtualMachineId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg2/providers/Microsoft.Compute/virtualmachines/RSMDALRVM981435", + "targetResourceGroupId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg2", + "storageAccountId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRg/providers/Microsoft.Storage/storageAccounts/testingAccount", + "virtualNetworkId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRg/providers/Microsoft.Network/virtualNetworks/testNet", + "subnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRg/providers/Microsoft.Network/virtualNetworks/testNet/subnets/default", + "region": "southeastasia", + "createNewCloudService": false, + "originalStorageAccountOption": false, + "encryptionDetails": { + "encryptionEnabled": false + }, + "recoveryPointRehydrationInfo": { + "rehydrationRetentionDuration": "P7D", + "rehydrationPriority": "High" + } + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.RecoveryServices/vaults/testVault/backupFabrics/Azure/protectionContainers/iaasvmcontainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/protectedItems/vm;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/operationResults/00000000-0000-0000-0000-000000000000?api-version=2017-07-01", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.RecoveryServices/vaults/testVault/backupFabrics/Azure/protectionContainers/iaasvmcontainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/protectedItems/vm;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/operationsStatus/00000000-0000-0000-0000-000000000000?api-version=2017-07-01", + "Retry-After": 60 + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/TriggerRestore_RestoreDisks.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/TriggerRestore_RestoreDisks.json new file mode 100644 index 000000000000..f5176e58327b --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/TriggerRestore_RestoreDisks.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "netsdktestrg", + "vaultName": "testVault", + "fabricName": "Azure", + "containerName": "IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "protectedItemName": "VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "recoveryPointId": "348916168024334", + "api-version": "2021-03-01", + "parameters": { + "properties": { + "objectType": "IaasVMRestoreWithRehydrationRequest", + "recoveryPointId": "348916168024334", + "recoveryType": "RestoreDisks", + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.Compute/virtualMachines/netvmtestv2vm1", + "storageAccountId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testingRg/providers/Microsoft.Storage/storageAccounts/testAccount", + "region": "southeastasia", + "createNewCloudService": true, + "originalStorageAccountOption": false, + "encryptionDetails": { + "encryptionEnabled": false + }, + "recoveryPointRehydrationInfo": { + "rehydrationRetentionDuration": "P7D", + "rehydrationPriority": "Standard" + } + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.RecoveryServices/vaults/testVault/backupFabrics/Azure/protectionContainers/iaasvmcontainer;iaasVMContainerV2;netsdktestrg;netvmtestv2vm1/protectedItems/vm;iaasVMContainerV2;netsdktestrg;netvmtestv2vm1/operationResults/00000000-0000-0000-0000-000000000000?api-version=2020-09-01", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.RecoveryServices/vaults/testVault/backupFabrics/Azure/protectionContainers/iaasvmcontainer;iaasVMContainerV2;netsdktestrg;netvmtestv2vm1/protectedItems/vm;iaasVMContainerV2;netsdktestrg;netvmtestv2vm1/operationsStatus/00000000-0000-0000-0000-000000000000?api-version=2020-09-01", + "Retry-After": 60 + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/ValidateOperation_RestoreDisk.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/ValidateOperation_RestoreDisk.json new file mode 100644 index 000000000000..79380dcc8318 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureIaasVm/ValidateOperation_RestoreDisk.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "testRG", + "vaultName": "testVault", + "fabricName": "Azure", + "containerName": "IaasVMContainer;iaasvmcontainerv2;testRG;testvmName", + "protectedItemName": "VM;iaasvmcontainerv2;testRG;testvmName", + "recoveryPointId": "348916168024334", + "api-version": "2021-01-01", + "parameters": { + "objectType": "ValidateIaasVMRestoreOperationRequest", + "restoreRequest": { + "recoveryPointId": "348916168024334", + "objectType": "IaasVMRestoreRequest", + "recoveryType": "RestoreDisks", + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.Compute/virtualMachines/netvmtestv2vm1", + "storageAccountId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testingRg/providers/Microsoft.Storage/storageAccounts/testAccount", + "region": "southeastasia", + "createNewCloudService": true, + "originalStorageAccountOption": false, + "encryptionDetails": { + "encryptionEnabled": false + } + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "validateOperationResponse": { + "validationResults": [ + { + "code": "UserErrorCoreCountSubscriptionQuotaReached", + "message": "Core Count subscription quota has been reached.", + "recommendations": [ + "Contact Azure support to increase the limits." + ] + } + ] + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureStorage/ProtectableContainers_List.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureStorage/ProtectableContainers_List.json new file mode 100644 index 000000000000..60985ca627c3 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureStorage/ProtectableContainers_List.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "testRg", + "vaultName": "testvault", + "fabricName": "Azure", + "api-version": "2021-01-01", + "$filter": "backupManagementType eq 'AzureStorage' and workloadType eq 'AzureFileShare'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test-rg/providers/Microsoft.RecoveryServices/vaults/testvault/backupFabrics/Azure/protectableContainers/StorageContainer;storage;test-rg;teststorage", + "name": "StorageContainer;storage;test-rg;testst", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectableContainers", + "properties": { + "friendlyName": "teststorage", + "backupManagementType": "AzureStorage", + "protectableContainerType": "StorageContainer", + "healthStatus": "Healthy", + "containerId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test-rg/providers/Microsoft.Storage/storageAccounts/teststorage" + } + }, + { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test-rg/providers/Microsoft.RecoveryServices/vaults/testvault/backupFabrics/Azure/protectableContainers/StorageContainer;ClassicStorage;test-rg;teststorage", + "name": "StorageContainer;ClassicStorage;test-rg;teststorage", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectableContainers", + "properties": { + "friendlyName": "teststorage", + "backupManagementType": "AzureStorage", + "protectableContainerType": "StorageContainer", + "healthStatus": "Healthy", + "containerId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test-rg/providers/Microsoft.ClassicStorage/storageAccounts/teststorage" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureStorage/ProtectionContainers_Inquire.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureStorage/ProtectionContainers_Inquire.json new file mode 100644 index 000000000000..678e0fa44d56 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureStorage/ProtectionContainers_Inquire.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "test-rg", + "vaultName": "testvault", + "fabricName": "Azure", + "containerName": "storagecontainer;Storage;test-rg;teststorage", + "api-version": "2021-01-01" + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test-rg/providers/Microsoft.RecoveryServices/vaults/testvault/backupFabrics/Azure/protectionContainers/storagecontainer;Storage;test-rg;teststorage/operationResults/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Azure-AsyncOperation": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test-rg/providers/Microsoft.RecoveryServices/vaults/testvault/backupFabrics/Azure/protectionContainers/storagecontainer;Storage;test-rg;teststorage/operationsStatus/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Retry-After": 60 + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureStorage/ProtectionContainers_Inquire_Result.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureStorage/ProtectionContainers_Inquire_Result.json new file mode 100644 index 000000000000..f8c5e00d1812 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureStorage/ProtectionContainers_Inquire_Result.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "test-rg", + "vaultName": "testvault", + "fabricName": "Azure", + "containerName": "VMAppContainer;Compute;testRG;testSQL", + "operationId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-01-01" + }, + "responses": { + "204": {}, + "202": { + "headers": { + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test-rg/providers/Microsoft.RecoveryServices/vaults/testvault/backupFabrics/Azure/protectionContainers/VMAppContainer;Compute;testRG;testSQL/operationResults/00000000-0000-0000-0000-000000000000?api-version=2017-07-01", + "Azure-AsyncOperation": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test-rg/providers/Microsoft.RecoveryServices/vaults/testvault/backupFabrics/Azure/protectionContainers/VMAppContainer;Compute;testRG;testSQL/operationsStatus/00000000-0000-0000-0000-000000000000?api-version=2017-07-01", + "Retry-After": 60 + } + }, + "200": { + "body": { + "name": "VMAppContainer;Compute;testRG;testSQL", + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRg/providers/Microsoft.RecoveryServices/vaults/testVault/backupFabrics/Azure/protectionContainers/VMAppContainer;Compute;testRG;testSQL", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers", + "properties": { + "extendedInfo": { + "hostServerName": "testsql", + "nodesList": [], + "inquiryInfo": { + "status": "Success", + "errorDetail": { + "code": "Success", + "message": "Not Available", + "recommendations": [ + "Not Available" + ] + }, + "inquiryDetails": [ + { + "type": "sql", + "itemCount": 14, + "inquiryValidation": { + "status": "Success", + "errorDetail": { + "code": "Success", + "message": "Not Available", + "recommendations": [ + "Not Available" + ] + } + } + } + ] + } + }, + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.Compute/virtualMachines/testSQL", + "backupManagementType": "AzureWorkload", + "workloadType": null, + "containerType": "VMAppContainer", + "friendlyName": "testSQL" + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureStorage/ProtectionContainers_List.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureStorage/ProtectionContainers_List.json new file mode 100644 index 000000000000..20bc5180d0ec --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureStorage/ProtectionContainers_List.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "testRg", + "vaultName": "testVault", + "api-version": "2021-01-01", + "fabricName": "Azure", + "$filter": "backupManagementType eq 'AzureWorkload'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/172424a4-d65f-421e-a8de-197d98aabeba/resourcegroups/testrg/providers/microsoft.recoveryservices/vaults/suchandr-test-vault-wcus/backupFabrics/Azure/protectionContainers/StorageContainer;Storage;testrg;suchandrtestsa125", + "name": "StorageContainer;Storage;testrg;suchandrtestsa125", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers", + "properties": { + "sourceResourceId": "/subscriptions/172424a4-d65f-421e-a8de-197d98aabeba/resourceGroups/testrg/providers/Microsoft.Storage/storageAccounts/suchandrtestsa125", + "protectedItemCount": 2, + "friendlyName": "suchandrtestsa125", + "backupManagementType": "AzureStorage", + "registrationStatus": "Registered", + "healthStatus": "Healthy", + "containerType": "StorageContainer" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureStorage/ProtectionContainers_Register.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureStorage/ProtectionContainers_Register.json new file mode 100644 index 000000000000..d75ea06f619d --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureStorage/ProtectionContainers_Register.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "test-rg", + "vaultName": "testvault", + "fabricName": "Azure", + "containerName": "VMAppContainer;Compute;testRG;testSQL", + "api-version": "2021-01-01", + "parameters": { + "properties": { + "friendlyName": "testSQL", + "backupManagementType": "AzureWorkload", + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.Compute/virtualMachines/testSQL", + "containerType": "VMAppContainer" + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test-rg/providers/Microsoft.RecoveryServices/vaults/testvault/backupFabrics/Azure/protectionContainers/VMAppContainer;Compute;testRG;testSQL/operationResults/00000000-0000-0000-0000-000000000000?api-version=2017-07-01", + "Azure-AsyncOperation": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test-rg/providers/Microsoft.RecoveryServices/vaults/testvault/backupFabrics/Azure/protectionContainers/VMAppContainer;Compute;testRG;testSQL/operationsStatus/00000000-0000-0000-0000-000000000000?api-version=2017-07-01", + "Retry-After": 60 + } + }, + "200": { + "body": { + "name": "VMAppContainer;Compute;testRG;testSQL", + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRg/providers/Microsoft.RecoveryServices/vaults/testVault/backupFabrics/Azure/protectionContainers/VMAppContainer;Compute;testRG;testSQL", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers", + "properties": { + "extendedInfo": { + "hostServerName": "testsql", + "nodesList": [], + "inquiryInfo": { + "status": "Success", + "errorDetail": { + "code": "Success", + "message": "Not Available", + "recommendations": [ + "Not Available" + ] + }, + "inquiryDetails": [ + { + "type": "sql", + "itemCount": 14, + "inquiryValidation": { + "status": "Success", + "errorDetail": { + "code": "Success", + "message": "Not Available", + "recommendations": [ + "Not Available" + ] + } + } + } + ] + } + }, + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.Compute/virtualMachines/testSQL", + "backupManagementType": "AzureWorkload", + "workloadType": null, + "containerType": "VMAppContainer", + "friendlyName": "testSQL" + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureWorkload/BackupPolicies_List.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureWorkload/BackupPolicies_List.json new file mode 100644 index 000000000000..59114aee239f --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureWorkload/BackupPolicies_List.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "api-version": "2021-01-01", + "$filter": "backupManagementType eq 'AzureWorkload'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupPolicies/HourlyLogBackup", + "name": "HourlyLogBackup", + "type": "Microsoft.RecoveryServices/vaults/backupPolicies", + "properties": { + "backupManagementType": "AzureWorkload", + "workLoadType": "SQLDataBase", + "settings": { + "timeZone": "UTC", + "issqlcompression": false + }, + "subProtectionPolicy": [ + { + "policyType": "Full", + "schedulePolicy": { + "schedulePolicyType": "SimpleSchedulePolicy", + "scheduleRunFrequency": "Daily", + "scheduleRunTimes": [ + "2017-12-05T19:00:00Z" + ], + "scheduleWeeklyFrequency": 0 + }, + "retentionPolicy": { + "retentionPolicyType": "LongTermRetentionPolicy", + "dailySchedule": { + "retentionTimes": [ + "2017-12-05T19:00:00Z" + ], + "retentionDuration": { + "count": 30, + "durationType": "Days" + } + } + } + }, + { + "policyType": "Log", + "schedulePolicy": { + "schedulePolicyType": "LogSchedulePolicy", + "scheduleFrequencyInMins": 60 + }, + "retentionPolicy": { + "retentionPolicyType": "SimpleRetentionPolicy", + "retentionDuration": { + "count": 30, + "durationType": "Days" + } + } + } + ], + "protectedItemsCount": 0 + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureWorkload/BackupProtectionIntent_Delete.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureWorkload/BackupProtectionIntent_Delete.json new file mode 100644 index 000000000000..778e33c2941c --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureWorkload/BackupProtectionIntent_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myRG", + "vaultName": "myVault", + "fabricName": "Azure", + "intentObjectName": "249D9B07-D2EF-4202-AA64-65F35418564E", + "api-version": "2017-07-01", + "parameters": {} + }, + "responses": { + "204": {} + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureWorkload/BackupProtectionIntent_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureWorkload/BackupProtectionIntent_Get.json new file mode 100644 index 000000000000..20c39e0c4909 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureWorkload/BackupProtectionIntent_Get.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myRG", + "vaultName": "myVault", + "fabricName": "Azure", + "intentObjectName": "249D9B07-D2EF-4202-AA64-65F35418564E", + "api-version": "2017-07-01", + "parameters": {} + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myRG/providers/Microsoft.RecoveryServices/vaults/myVault/backupFabrics/Azure/backupProtectionIntent/249D9B07-D2EF-4202-AA64-65F35418564E", + "name": "249D9B07-D2EF-4202-AA64-65F35418564E", + "type": "Microsoft.RecoveryServices/vaults/backupProtectionIntent", + "properties": { + "backupManagementType": "AzureWorkload", + "policyId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.RecoveryServices/vaults/myVault/backupPolicies/myPolicy", + "itemId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.RecoveryServices/vaults/myVault/backupProtectionContainer/VMAppContainer;Compute;testVmName/backupProtectableItems/SQLInstance;MSSQLSERVER" + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureWorkload/BackupProtectionIntent_List.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureWorkload/BackupProtectionIntent_List.json new file mode 100644 index 000000000000..ca16c991a566 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureWorkload/BackupProtectionIntent_List.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myRG", + "vaultName": "myVault", + "api-version": "2017-07-01", + "parameters": {} + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myRG/providers/Microsoft.RecoveryServices/vaults/myVault/backupFabrics/Azure/backupProtectionIntent/249D9B07-D2EF-4202-AA64-65F35418564E", + "name": "249D9B07-D2EF-4202-AA64-65F35418564E", + "type": "Microsoft.RecoveryServices/vaults/backupProtectionIntent", + "properties": { + "backupManagementType": "AzureWorkload", + "policyId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.RecoveryServices/vaults/myVault/backupPolicies/myPolicy", + "itemId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.RecoveryServices/vaults/myVault/backupProtectionContainer/VMAppContainer;Compute;testVmName/backupProtectableItems/SQLInstance;MSSQLSERVER" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureWorkload/BackupWorkloadItems_List.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureWorkload/BackupWorkloadItems_List.json new file mode 100644 index 000000000000..3985f6c0b5d4 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureWorkload/BackupWorkloadItems_List.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "testRg", + "vaultName": "suchandr-seacan-rsv", + "api-version": "2021-01-01", + "$filter": "backupManagementType eq 'AzureWorkload'", + "fabricName": "Azure", + "containerName": "VMAppContainer;Compute;bvtdtestag;sqlserver-1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/testRg/providers/Microsoft.RecoveryServices/vaults/suchandr-seacan-rsv/backupFabrics/Azure/protectionContainers/VMAppContainer;Compute;bvtdtestag;sqlserver-1/protectableItems/SQLInstance;MSSQLSERVER", + "name": "SQLInstance;MSSQLSERVER", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/items", + "properties": { + "dataDirectoryPaths": [ + { + "type": "Data", + "path": "F:\\DATA\\" + }, + { + "type": "Log", + "path": "F:\\LOG\\" + } + ], + "parentName": "MSSQLSERVER", + "serverName": "sqlserver-1.contoso.com", + "isAutoProtectable": true, + "subinquireditemcount": 0, + "subWorkloadItemCount": 3, + "backupManagementType": "AzureWorkload", + "workloadType": "SQL", + "workloadItemType": "SQLInstance", + "friendlyName": "MSSQLSERVER", + "protectionState": "NotProtected" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureWorkload/ProtectionContainers_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureWorkload/ProtectionContainers_Get.json new file mode 100644 index 000000000000..18f5dfe8d75a --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureWorkload/ProtectionContainers_Get.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "testRg", + "vaultName": "testVault", + "fabricName": "Azure", + "containerName": "VMAppContainer;Compute;testRG;testSQL", + "api-version": "2021-01-01", + "$filter": "backupManagementType eq 'AzureWorkload'" + }, + "responses": { + "200": { + "body": { + "name": "VMAppContainer;Compute;testRG;testSQL", + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRg/providers/Microsoft.RecoveryServices/vaults/testVault/backupFabrics/Azure/protectionContainers/VMAppContainer;Compute;testRG;testSQL", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers", + "properties": { + "extendedInfo": { + "hostServerName": "testsql", + "nodesList": [], + "inquiryInfo": { + "status": "Success", + "errorDetail": { + "code": "Success", + "message": "Not Available", + "recommendations": [ + "Not Available" + ] + }, + "inquiryDetails": [ + { + "type": "sql", + "itemCount": 14, + "inquiryValidation": { + "status": "Success", + "errorDetail": { + "code": "Success", + "message": "Not Available", + "recommendations": [ + "Not Available" + ] + } + } + } + ] + } + }, + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.Compute/virtualMachines/testSQL", + "backupManagementType": "AzureWorkload", + "workloadType": null, + "containerType": "VMAppContainer", + "friendlyName": "testSQL" + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureWorkload/ProtectionContainers_Unregister.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureWorkload/ProtectionContainers_Unregister.json new file mode 100644 index 000000000000..8aa1b1bdf40b --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureWorkload/ProtectionContainers_Unregister.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "testRg", + "vaultName": "testVault", + "api-version": "2021-01-01", + "fabricName": "Azure", + "containerName": "storagecontainer;Storage;test-rg;teststorage" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test-rg/providers/Microsoft.RecoveryServices/vaults/testvault/backupFabrics/Azure/protectionContainers/storagecontainer;Storage;test-rg;teststorage/operationResults/00000000-0000-0000-0000-000000000000?api-version=2017-07-01", + "Azure-AsyncOperation": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test-rg/providers/Microsoft.RecoveryServices/vaults/testvault/backupFabrics/Azure/protectionContainers/storagecontainer;Storage;test-rg;teststorage/operationsStatus/00000000-0000-0000-0000-000000000000?api-version=2017-07-01", + "Retry-After": 60 + } + }, + "204": {} + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureWorkload/ProtectionPolicies_CreateOrUpdate_Complex.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureWorkload/ProtectionPolicies_CreateOrUpdate_Complex.json new file mode 100644 index 000000000000..f3d67859d33c --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/AzureWorkload/ProtectionPolicies_CreateOrUpdate_Complex.json @@ -0,0 +1,260 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "policyName": "testPolicy1", + "api-version": "2021-01-01", + "parameters": { + "properties": { + "backupManagementType": "AzureWorkload", + "workLoadType": "SQLDataBase", + "settings": { + "timeZone": "Pacific Standard Time", + "issqlcompression": false + }, + "subProtectionPolicy": [ + { + "policyType": "Full", + "schedulePolicy": { + "schedulePolicyType": "SimpleSchedulePolicy", + "scheduleRunFrequency": "Weekly", + "scheduleRunTimes": [ + "2018-01-24T10:00:00Z" + ], + "scheduleRunDays": [ + "Sunday", + "Tuesday" + ] + }, + "retentionPolicy": { + "retentionPolicyType": "LongTermRetentionPolicy", + "weeklySchedule": { + "daysOfTheWeek": [ + "Sunday", + "Tuesday" + ], + "retentionTimes": [ + "2018-01-24T10:00:00Z" + ], + "retentionDuration": { + "count": 2, + "durationType": "Weeks" + } + }, + "monthlySchedule": { + "retentionScheduleFormatType": "Weekly", + "retentionScheduleWeekly": { + "daysOfTheWeek": [ + "Sunday" + ], + "weeksOfTheMonth": [ + "Second" + ] + }, + "retentionTimes": [ + "2018-01-24T10:00:00Z" + ], + "retentionDuration": { + "count": 1, + "durationType": "Months" + } + }, + "yearlySchedule": { + "retentionScheduleFormatType": "Weekly", + "monthsOfYear": [ + "January", + "June", + "December" + ], + "retentionScheduleWeekly": { + "daysOfTheWeek": [ + "Sunday" + ], + "weeksOfTheMonth": [ + "Last" + ] + }, + "retentionTimes": [ + "2018-01-24T10:00:00Z" + ], + "retentionDuration": { + "count": 1, + "durationType": "Years" + } + } + } + }, + { + "policyType": "Differential", + "schedulePolicy": { + "schedulePolicyType": "SimpleSchedulePolicy", + "scheduleRunFrequency": "Weekly", + "scheduleRunTimes": [ + "2018-01-24T10:00:00Z" + ], + "scheduleRunDays": [ + "Friday" + ] + }, + "retentionPolicy": { + "retentionPolicyType": "SimpleRetentionPolicy", + "retentionDuration": { + "count": 8, + "durationType": "Days" + } + } + }, + { + "policyType": "Log", + "schedulePolicy": { + "schedulePolicyType": "LogSchedulePolicy", + "scheduleFrequencyInMins": 60 + }, + "retentionPolicy": { + "retentionPolicyType": "SimpleRetentionPolicy", + "retentionDuration": { + "count": 7, + "durationType": "Days" + } + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupPolicies/testPolicy1", + "name": "testPolicy1", + "type": "Microsoft.RecoveryServices/vaults/backupPolicies", + "properties": { + "backupManagementType": "AzureWorkload", + "workLoadType": "SQLDataBase", + "settings": { + "timeZone": "Pacific Standard Time", + "issqlcompression": false + }, + "subProtectionPolicy": [ + { + "policyType": "Full", + "schedulePolicy": { + "schedulePolicyType": "SimpleSchedulePolicy", + "scheduleRunFrequency": "Weekly", + "scheduleRunDays": [ + "Sunday", + "Tuesday" + ], + "scheduleRunTimes": [ + "2018-01-24T10:00:00Z" + ], + "scheduleWeeklyFrequency": 0 + }, + "retentionPolicy": { + "retentionPolicyType": "LongTermRetentionPolicy", + "weeklySchedule": { + "daysOfTheWeek": [ + "Sunday", + "Tuesday" + ], + "retentionTimes": [ + "2018-01-24T10:00:00Z" + ], + "retentionDuration": { + "count": 2, + "durationType": "Weeks" + } + }, + "monthlySchedule": { + "retentionScheduleFormatType": "Weekly", + "retentionScheduleWeekly": { + "daysOfTheWeek": [ + "Sunday" + ], + "weeksOfTheMonth": [ + "Second" + ] + }, + "retentionTimes": [ + "2018-01-24T10:00:00Z" + ], + "retentionDuration": { + "count": 1, + "durationType": "Months" + } + }, + "yearlySchedule": { + "retentionScheduleFormatType": "Weekly", + "monthsOfYear": [ + "January", + "June", + "December" + ], + "retentionScheduleWeekly": { + "daysOfTheWeek": [ + "Sunday" + ], + "weeksOfTheMonth": [ + "Last" + ] + }, + "retentionTimes": [ + "2018-01-24T10:00:00Z" + ], + "retentionDuration": { + "count": 1, + "durationType": "Years" + } + } + } + }, + { + "policyType": "Differential", + "schedulePolicy": { + "schedulePolicyType": "SimpleSchedulePolicy", + "scheduleRunFrequency": "Weekly", + "scheduleRunDays": [ + "Friday" + ], + "scheduleRunTimes": [ + "2018-01-24T10:00:00Z" + ], + "scheduleWeeklyFrequency": 0 + }, + "retentionPolicy": { + "retentionPolicyType": "SimpleRetentionPolicy", + "retentionDuration": { + "count": 8, + "durationType": "Days" + } + } + }, + { + "policyType": "Log", + "schedulePolicy": { + "schedulePolicyType": "LogSchedulePolicy", + "scheduleFrequencyInMins": 60 + }, + "retentionPolicy": { + "retentionPolicyType": "SimpleRetentionPolicy", + "retentionDuration": { + "count": 7, + "durationType": "Days" + } + } + } + ], + "protectedItemsCount": 0 + } + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupPolicies/testPolicy1/operationResults/00000000-0000-0000-0000-000000000000?api-version=2016-06-01", + "Azure-AsyncOperation": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupPolicies/testPolicy1/operations/00000000-0000-0000-0000-000000000000?api-version=2016-06-01", + "Retry-After": 60 + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/BackupDataMove/BackupDataMoveOperationStatus_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/BackupDataMove/BackupDataMoveOperationStatus_Get.json new file mode 100644 index 000000000000..a48a09250cbc --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/BackupDataMove/BackupDataMoveOperationStatus_Get.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "sourceRG", + "vaultName": "source-rsv", + "operationId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "id": "0f48183b-0a44-4dca-aec1-bba5daab888a", + "name": "0f48183b-0a44-4dca-aec1-bba5daab888a", + "status": "Succeeded", + "startTime": "2020-02-27T11:59:47.5901592Z", + "endTime": "2020-02-27T11:59:47.5901592Z" + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/BackupDataMove/PrepareDataMoveOperationResult_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/BackupDataMove/PrepareDataMoveOperationResult_Get.json new file mode 100644 index 000000000000..39453fc2f258 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/BackupDataMove/PrepareDataMoveOperationResult_Get.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "sourceRG", + "vaultName": "source-rsv", + "operationId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-01-01" + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sourceRG/providers/Microsoft.RecoveryServices/vaults/source-rsv/backupStorageConfig/vaultStorageConfig/operationResult/00000000-0000-0000-0000-000000000000?api-version=2020-07-01-preview", + "Azure-AsyncOperation": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sourceRG/providers/Microsoft.RecoveryServices/vaults/source-rsv/backupStorageConfig/vaultStorageConfig/operationStatus/00000000-0000-0000-0000-000000000000?api-version=2020-07-01-preview", + "Retry-After": 60 + } + }, + "200": { + "body": { + "objectType": "" + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/BackupDataMove/PrepareDataMove_Post.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/BackupDataMove/PrepareDataMove_Post.json new file mode 100644 index 000000000000..b36eec47325a --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/BackupDataMove/PrepareDataMove_Post.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "sourceRG", + "vaultName": "source-rsv", + "api-version": "2021-01-01", + "parameters": { + "targetResourceId": "/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/targetRG/providers/Microsoft.RecoveryServices/vaults/target-rsv", + "targetRegion": "USGov Virginia", + "dataMoveLevel": "Vault" + } + }, + "responses": { + "200": {}, + "202": { + "headers": { + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sourceRG/providers/Microsoft.RecoveryServices/vaults/source-rsv/backupStorageConfig/vaultStorageConfig/prepareDataMove/operationResult/00000000-0000-0000-0000-000000000000?api-version=2020-07-01-preview", + "Azure-AsyncOperation": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sourceRG/providers/Microsoft.RecoveryServices/vaults/source-rsv/backupStorageConfig/vaultStorageConfig/backupDataMove/operationStatus/00000000-0000-0000-0000-000000000000?api-version=2020-07-01-preview", + "Retry-After": 60 + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/BackupDataMove/TriggerDataMove_Post.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/BackupDataMove/TriggerDataMove_Post.json new file mode 100644 index 000000000000..b09229f99a99 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/BackupDataMove/TriggerDataMove_Post.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "targetRG", + "vaultName": "target-rsv", + "api-version": "2021-01-01", + "parameters": { + "sourceResourceId": "/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/sourceRG/providers/Microsoft.RecoveryServices/vaults/source-rsv", + "sourceRegion": "USGov Iowa", + "dataMoveLevel": "Vault", + "correlationId": "MTg2OTcyMzM4NzYyMjc1NDY3Nzs1YmUzYmVmNi04YjJiLTRhOTItOTllYi01NTM0MDllYjk2NjE=" + } + }, + "responses": { + "200": {}, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sourceRG/providers/Microsoft.RecoveryServices/vaults/source-rsv/backupStorageConfig/vaultStorageConfig/backupDataMove/operationStatus/00000000-0000-0000-0000-000000000000?api-version=2020-07-01-preview", + "Retry-After": 60 + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/BackupResourceEncryptionConfig_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/BackupResourceEncryptionConfig_Get.json new file mode 100644 index 000000000000..8a77f8edb1bf --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/BackupResourceEncryptionConfig_Get.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "rishgrp", + "vaultName": "rishTestVault", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rishgrp/providers/Microsoft.RecoveryServicesBVTD2/vaults/rishTestVault/backupEncryptionConfigs/backupResourceEncryptionConfig", + "name": "backupResourceEncryptionConfig", + "type": "Microsoft.RecoveryServices/vaults/backupEncryptionConfigs", + "properties": { + "encryptionAtRestType": "CustomerManaged", + "keyUri": "https://gktestkv1.vault.azure.net/keys/Test1/ed2e8cdc7f86477ebf0c6462b504a9ed", + "subscriptionId": "1a2311d9-66f5-47d3-a9fb-7a37da63934b", + "lastUpdateStatus": "Succeeded", + "infrastructureEncryptionState": "Disabled" + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/BackupResourceEncryptionConfig_Put.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/BackupResourceEncryptionConfig_Put.json new file mode 100644 index 000000000000..1a7c0a600e7d --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/BackupResourceEncryptionConfig_Put.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "test-rg", + "vaultName": "source-rsv", + "api-version": "2021-01-01", + "parameters": { + "properties": { + "encryptionAtRestType": "CustomerManaged", + "keyUri": "https://gktestkv1.vault.azure.net/keys/Test1/ed2e8cdc7f86477ebf0c6462b504a9ed", + "subscriptionId": "1a2311d9-66f5-47d3-a9fb-7a37da63934b", + "infrastructureEncryptionState": "true" + } + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/BackupProtectedItem_UsageSummary_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/BackupProtectedItem_UsageSummary_Get.json new file mode 100644 index 000000000000..fa3f011c32d8 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/BackupProtectedItem_UsageSummary_Get.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "testRG", + "vaultName": "testVault", + "api-version": "2017-07-01", + "$filter": "type eq 'BackupProtectedItemCountSummary'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "unit": "Count", + "currentValue": 7, + "limit": -1, + "name": { + "value": "AzureIaasVM", + "localizedValue": "Azure Virtual Machine" + } + }, + { + "unit": "Count", + "currentValue": 3, + "limit": -1, + "name": { + "value": "MAB", + "localizedValue": "Azure Backup Agent" + } + }, + { + "unit": "Count", + "currentValue": 1, + "limit": -1, + "name": { + "value": "AzureBackupServer", + "localizedValue": "Azure Backup Server" + } + }, + { + "unit": "Count", + "currentValue": 2, + "limit": -1, + "name": { + "value": "AzureStorage", + "localizedValue": "Azure Storage (Azure Files)" + } + }, + { + "unit": "Count", + "currentValue": 2, + "limit": -1, + "name": { + "value": "AzureWorkload", + "localizedValue": "SQL in Azure VM" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/BackupProtectionContainers_UsageSummary_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/BackupProtectionContainers_UsageSummary_Get.json new file mode 100644 index 000000000000..b13a75b4ddcc --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/BackupProtectionContainers_UsageSummary_Get.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "testRG", + "vaultName": "testVault", + "api-version": "2017-07-01", + "$filter": "type eq 'BackupProtectionContainerCountSummary'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "unit": "Count", + "currentValue": 2, + "limit": -1, + "name": { + "value": "AzureBackupServer", + "localizedValue": "Azure Backup Server" + } + }, + { + "unit": "Count", + "currentValue": 3, + "limit": -1, + "name": { + "value": "MAB", + "localizedValue": "Azure Backup Agent" + } + }, + { + "unit": "Count", + "currentValue": 1, + "limit": -1, + "name": { + "value": "AzureWorkload", + "localizedValue": "SQL in Azure VM" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/BackupResourceVaultConfigs_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/BackupResourceVaultConfigs_Get.json new file mode 100644 index 000000000000..44d2e61f19e5 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/BackupResourceVaultConfigs_Get.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "SwaggerTest", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/SwaggerTest/backupconfig/vaultconfig", + "name": "vaultconfig", + "type": "Microsoft.RecoveryServices/vaults/backupconfig", + "properties": { + "enhancedSecurityState": "Enabled" + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/BackupResourceVaultConfigs_Patch.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/BackupResourceVaultConfigs_Patch.json new file mode 100644 index 000000000000..9140317cc328 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/BackupResourceVaultConfigs_Patch.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "SwaggerTest", + "api-version": "2021-01-01", + "parameters": { + "properties": { + "enhancedSecurityState": "Enabled" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/SwaggerTest/backupconfig/vaultconfig", + "name": "vaultconfig", + "type": "Microsoft.RecoveryServices/vaults/backupconfig", + "properties": { + "enhancedSecurityState": "Enabled" + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/BackupResourceVaultConfigs_Put.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/BackupResourceVaultConfigs_Put.json new file mode 100644 index 000000000000..40d992ff4c74 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/BackupResourceVaultConfigs_Put.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "SwaggerTest", + "api-version": "2021-01-01", + "parameters": { + "properties": { + "enhancedSecurityState": "Enabled", + "softDeleteFeatureState": "Enabled" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/SwaggerTest/backupconfig/vaultconfig", + "name": "vaultconfig", + "type": "Microsoft.RecoveryServices/vaults/backupconfig", + "properties": { + "enhancedSecurityState": "Enabled", + "softDeleteFeatureState": "Enabled" + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/BackupSecurityPin_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/BackupSecurityPin_Get.json new file mode 100644 index 000000000000..72d6a94ed429 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/BackupSecurityPin_Get.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "SwaggerTest", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "token": "200432", + "expiryTimeInUtcTicks": 636495150137443121, + "securityPIN": "200432" + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/CancelJobOperationResult.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/CancelJobOperationResult.json new file mode 100644 index 000000000000..8b338c0fdc3c --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/CancelJobOperationResult.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "jobName": "00000000-0000-0000-0000-000000000000", + "operationId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-01-01" + }, + "responses": { + "204": {}, + "200": {}, + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupJobs/00000000-0000-0000-0000-000000000000/operationResults/00000000-0000-0000-0000-000000000000?api-version=2017-07-01", + "Retry-After": 60 + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/ExportJobsOperationResult.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/ExportJobsOperationResult.json new file mode 100644 index 000000000000..0c536be33418 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/ExportJobsOperationResult.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "operationId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "operation": { + "objectType": "ExportJobsOperationResultInfo", + "blobUrl": "https://azureblob.blob.core.windows.net/reportcontainer/exportjobsreportc00000000-0000-0000-0000-000000000000", + "blobSasKey": "?sv=2014-02-14&sr=b&sig=&st=2017-11-29T07%3A53%3A34Z&se=2017-11-29T08%3A03%3A34Z&sp=r" + }, + "headers": {} + } + }, + "202": { + "headers": { + "Retry-After": 60, + "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupJobs/operationResults/00000000-0000-0000-0000-000000000000?api-version=2017-07-01" + }, + "body": { + "operation": { + "objectType": "ExportJobsOperationResultInfo" + }, + "headers": { + "Location": [ + "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupJobs/operationResults/00000000-0000-0000-0000-000000000000?api-version=2017-07-01" + ], + "Retry-After": [ + "60" + ] + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/GetJobDetails.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/GetJobDetails.json new file mode 100644 index 000000000000..50215a36063e --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/GetJobDetails.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "jobName": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupJobs/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "type": "Microsoft.RecoveryServices/vaults/backupJobs", + "properties": { + "jobType": "AzureIaaSVMJob", + "duration": "PT9.8782791S", + "virtualMachineVersion": "Compute", + "extendedInfo": { + "tasksList": [ + { + "taskId": "Take Snapshot", + "duration": "PT0S", + "status": "InProgress" + }, + { + "taskId": "Transfer data to vault", + "duration": "PT0S", + "status": "NotStarted" + } + ], + "propertyBag": { + "VM Name": "testvm" + } + }, + "entityFriendlyName": "testvm", + "backupManagementType": "AzureIaasVM", + "operation": "Backup", + "status": "InProgress", + "startTime": "2017-08-03T05:31:07.014604Z", + "activityId": "00000000-0000-0000-0000-000000000000" + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/ListJobs.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/ListJobs.json new file mode 100644 index 000000000000..5a156e09cca8 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/ListJobs.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupJobs/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "type": "Microsoft.RecoveryServices/vaults/backupJobs", + "properties": { + "jobType": "AzureIaaSVMJob", + "duration": "PT12.4272909S", + "virtualMachineVersion": "Compute", + "entityFriendlyName": "testvm", + "backupManagementType": "AzureIaasVM", + "operation": "Backup", + "status": "InProgress", + "startTime": "2017-08-03T05:31:07.014604Z", + "activityId": "00000000-0000-0000-0000-000000000000" + } + }, + { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupJobs/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "type": "Microsoft.RecoveryServices/vaults/backupJobs", + "properties": { + "jobType": "AzureIaaSVMJob", + "duration": "PT31.3066291S", + "virtualMachineVersion": "Compute", + "entityFriendlyName": "testvm", + "backupManagementType": "AzureIaasVM", + "operation": "ConfigureBackup", + "status": "Completed", + "startTime": "2017-08-03T05:30:32.4487085Z", + "endTime": "2017-08-03T05:31:03.7553376Z", + "activityId": "00000000-0000-0000-0000-000000000000" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/ListJobsWithAllSupportedFilters.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/ListJobsWithAllSupportedFilters.json new file mode 100644 index 000000000000..590dbcb02c46 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/ListJobsWithAllSupportedFilters.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "api-version": "2021-01-01", + "$filter": "startTime eq '2016-01-01 00:00:00 AM' and endTime eq '2017-11-29 00:00:00 AM' and operation eq 'Backup' and backupManagementType eq 'AzureIaasVM' and status eq 'InProgress'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupJobs/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "type": "Microsoft.RecoveryServices/vaults/backupJobs", + "properties": { + "jobType": "AzureIaaSVMJob", + "duration": "PT12.4272909S", + "virtualMachineVersion": "Compute", + "entityFriendlyName": "testvm", + "backupManagementType": "AzureIaasVM", + "operation": "Backup", + "status": "InProgress", + "startTime": "2017-08-03T05:31:07.014604Z", + "activityId": "00000000-0000-0000-0000-000000000000" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/ListJobsWithStartTimeAndEndTimeFilters.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/ListJobsWithStartTimeAndEndTimeFilters.json new file mode 100644 index 000000000000..165b31f8e4f3 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/ListJobsWithStartTimeAndEndTimeFilters.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "api-version": "2021-01-01", + "$filter": "startTime eq '2016-01-01 00:00:00 AM' and endTime eq '2017-11-29 00:00:00 AM'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupJobs/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "type": "Microsoft.RecoveryServices/vaults/backupJobs", + "properties": { + "jobType": "AzureIaaSVMJob", + "duration": "PT12.4272909S", + "virtualMachineVersion": "Compute", + "entityFriendlyName": "testvm", + "backupManagementType": "AzureIaasVM", + "operation": "Backup", + "status": "InProgress", + "startTime": "2017-08-03T05:31:07.014604Z", + "activityId": "00000000-0000-0000-0000-000000000000" + } + }, + { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupJobs/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "type": "Microsoft.RecoveryServices/vaults/backupJobs", + "properties": { + "jobType": "AzureIaaSVMJob", + "duration": "PT31.3066291S", + "virtualMachineVersion": "Compute", + "entityFriendlyName": "testvm", + "backupManagementType": "AzureIaasVM", + "operation": "ConfigureBackup", + "status": "Completed", + "startTime": "2017-08-03T05:30:32.4487085Z", + "endTime": "2017-08-03T05:31:03.7553376Z", + "activityId": "00000000-0000-0000-0000-000000000000" + } + } + ], + "nextLink": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupJobs?api-version=2017-07-01&%24filter=startTime+eq+%272016-01-01+00%3a00%3a00+AM%27+and+endTime+eq+%272017-11-29+00%3a00%3a00+AM%27&%24skiptoken=%3c%3fxml+version%3d%221.0%22+encoding%3d%22utf-16%22%3f%3e%0d%0a%3cContinuationToken%3e%0d%0a++%3cContinuationToken%3e%0d%0a++++%3cVersion%3e2.0%3c%2fVersion%3e%0d%0a++++%3cType%3eTable%3c%2fType%3e%0d%0a++++%3cNextPartitionKey%3e1!28!NzI5MTk0OTM1MDkwNjEwODQzMA--%3c%2fNextPartitionKey%3e%0d%0a++++%3cNextRowKey%3e1!108!am9ic3N0YXJ0dGltZWluZGV4XzBfMjUxODkxNDYzNTI2NjE5Nzg5OF8wXzYwOWZkM2JmLTU4MzctNDFkYi1iMjExLTY1MzliNDNlZjM1OA--%3c%2fNextRowKey%3e%0d%0a++++%3cTargetLocation%3ePrimary%3c%2fTargetLocation%3e%0d%0a++%3c%2fContinuationToken%3e%0d%0a%3c%2fContinuationToken%3e" + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/ProtectedItem_Delete.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/ProtectedItem_Delete.json new file mode 100644 index 000000000000..724572e718e1 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/ProtectedItem_Delete.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "PythonSDKBackupTestRg", + "vaultName": "PySDKBackupTestRsVault", + "fabricName": "Azure", + "containerName": "iaasvmcontainer;iaasvmcontainerv2;pysdktestrg;pysdktestv2vm1", + "protectedItemName": "vm;iaasvmcontainerv2;pysdktestrg;pysdktestv2vm1", + "api-version": "2021-01-01" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PythonSDKBackupTestRg/providers/Microsoft.RecoveryServices/vaults/PySDKBackupTestRsVault/backupOperations/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PythonSDKBackupTestRg/providers/Microsoft.RecoveryServices/vaults/PySDKBackupTestRsVault/backupOperationResults/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Retry-After": 60 + } + }, + "204": {} + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/ProtectedItem_Delete_OperationResult.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/ProtectedItem_Delete_OperationResult.json new file mode 100644 index 000000000000..301d22b6335c --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/ProtectedItem_Delete_OperationResult.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "PythonSDKBackupTestRg", + "vaultName": "PySDKBackupTestRsVault", + "operationId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-01-01" + }, + "responses": { + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PythonSDKBackupTestRg/providers/Microsoft.RecoveryServices/vaults/PySDKBackupTestRsVault/backupOperations/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PythonSDKBackupTestRg/providers/Microsoft.RecoveryServices/vaults/PySDKBackupTestRsVault/backupOperationResults/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Retry-After": 60 + } + }, + "200": {}, + "204": {} + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/ProtectedItem_Delete_OperationStatus.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/ProtectedItem_Delete_OperationStatus.json new file mode 100644 index 000000000000..63e5d3412e3d --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/ProtectedItem_Delete_OperationStatus.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "PythonSDKBackupTestRg", + "vaultName": "PySDKBackupTestRsVault", + "operationId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "status": "InProgress", + "startTime": "2017-08-03T06:52:53.886027Z", + "endTime": "0001-01-01T00:00:00.00000Z" + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/RefreshContainers.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/RefreshContainers.json new file mode 100644 index 000000000000..f82315cb5d9c --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/RefreshContainers.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "fabricName": "Azure", + "api-version": "2021-01-01" + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupFabrics/Azure/operationResults/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Retry-After": 60 + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/RefreshContainers_OperationResults.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/RefreshContainers_OperationResults.json new file mode 100644 index 000000000000..0d318febcbb9 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/RefreshContainers_OperationResults.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "fabricName": "Azure", + "operationId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-01-01" + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupFabrics/Azure/operationResults/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Retry-After": 60 + } + }, + "204": {} + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/TriggerBackup_Post.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/TriggerBackup_Post.json new file mode 100644 index 000000000000..f78613afb1e8 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/TriggerBackup_Post.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "linuxRsVaultRG", + "vaultName": "linuxRsVault", + "fabricName": "Azure", + "containerName": "IaasVMContainer;iaasvmcontainerv2;testrg;v1win2012r", + "protectedItemName": "VM;iaasvmcontainerv2;testrg;v1win2012r", + "api-version": "2021-01-01", + "parameters": { + "properties": { + "objectType": "IaasVMBackupRequest" + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/linuxRsVaultRG/providers/Microsoft.RecoveryServices/vaults/linuxRsVault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainer;testrg;v1win2012r/protectedItems/VM;iaasvmcontainer;testrg;v1win2012r/operationResults/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Azure-AsyncOperation": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/linuxRsVaultRG/providers/Microsoft.RecoveryServices/vaults/linuxRsVault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainer;testrg;v1win2012r/protectedItems/VM;iaasvmcontainer;testrg;v1win2012r/operationsStatus/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Retry-After": 60 + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/TriggerCancelJob.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/TriggerCancelJob.json new file mode 100644 index 000000000000..2a1186dc59e7 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/TriggerCancelJob.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "jobName": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-01-01" + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupJobs/00000000-0000-0000-0000-000000000000/operationResults/00000000-0000-0000-0000-000000000000?api-version=2017-07-01", + "Retry-After": 60 + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/TriggerExportJobs.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/TriggerExportJobs.json new file mode 100644 index 000000000000..487b5f4a0007 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Common/TriggerExportJobs.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "api-version": "2021-01-01" + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupJobs/operationResults/00000000-0000-0000-0000-000000000000?api-version=2017-07-01", + "Retry-After": 60 + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Dpm/BackupEngines_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Dpm/BackupEngines_Get.json new file mode 100644 index 000000000000..04f6343d7c8d --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Dpm/BackupEngines_Get.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "testRG", + "vaultName": "testVault", + "backupEngineName": "testServer", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.RecoveryServices/vaults/testVault/backupEngines/testServer", + "name": "testServer", + "type": "Microsoft.RecoveryServices/vaults/backupEngines", + "properties": { + "backupEngineType": "DpmBackupEngine", + "dpmVersion": "5.1.348.0", + "isDpmUpgradeAvailable": false, + "azureBackupAgentVersion": "2.0.9532.0", + "isAzureBackupAgentUpgradeAvailable": false, + "registrationStatus": "Registered", + "backupEngineState": "Active", + "friendlyName": "testServer", + "extendedInfo": { + "protectedItemsCount": 35, + "protectedServersCount": 21, + "diskCount": 5, + "availableDiskSpace": 50, + "usedDiskSpace": 20 + } + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Dpm/BackupEngines_List.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Dpm/BackupEngines_List.json new file mode 100644 index 000000000000..a6554224ec9e --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Dpm/BackupEngines_List.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "testRG", + "vaultName": "testVault", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.RecoveryServices/vaults/testVault/backupEngines/testServer1", + "name": "testServer1", + "type": "Microsoft.RecoveryServices/vaults/backupEngines", + "properties": { + "backupEngineType": "DpmBackupEngine", + "dpmVersion": "5.1.348.0", + "isDpmUpgradeAvailable": false, + "azureBackupAgentVersion": "2.0.9532.0", + "isAzureBackupAgentUpgradeAvailable": false, + "registrationStatus": "Registered", + "backupEngineState": "Active", + "friendlyName": "testServer1", + "extendedInfo": { + "protectedItemsCount": 35, + "protectedServersCount": 21, + "diskCount": 5, + "availableDiskSpace": 50, + "usedDiskSpace": 20 + } + } + }, + { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.RecoveryServices/vaults/testVault/backupEngines/testServer5", + "name": "testServer5", + "type": "Microsoft.RecoveryServices/vaults/backupEngines", + "properties": { + "backupEngineType": "DpmBackupEngine", + "dpmVersion": "5.1.348.0", + "isDpmUpgradeAvailable": false, + "azureBackupAgentVersion": "2.0.9530.0", + "isAzureBackupAgentUpgradeAvailable": false, + "registrationStatus": "Registered", + "backupEngineState": "Active", + "friendlyName": "testServer5", + "extendedInfo": { + "protectedItemsCount": 35, + "protectedServersCount": 21, + "diskCount": 5, + "availableDiskSpace": 50, + "usedDiskSpace": 20 + } + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ListOperations.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ListOperations.json new file mode 100644 index 000000000000..f4b077d336d0 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ListOperations.json @@ -0,0 +1,463 @@ +{ + "parameters": { + "api-version": "2016-08-10" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "microsoft.recoveryservices/vaults/usages/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Vault Usage", + "operation": "Recovery Services Vault usage details.", + "description": "Returns usage details for a Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupUsageSummaries/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Usages Summaries", + "operation": "Recovery Services Protected Items and Protected Servers usage summaries details.", + "description": "Returns summaries for Protected Items and Protected Servers for a Recovery Services ." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/storageConfig/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Vault Storage Config", + "operation": "Get Resource Storage Config", + "description": "Returns Storage Configuration for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/storageConfig/write", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Vault Storage Config", + "operation": "Write Resource Storage Config", + "description": "Updates Storage Configuration for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupconfig/vaultconfig/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Vault Config", + "operation": "Get Resource Config", + "description": "Returns Configuration for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupconfig/vaultconfig/write", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Vault Config", + "operation": "Update Resource Config", + "description": "Updates Configuration for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/tokenInfo/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Token Info", + "operation": "Get Vault Token Info", + "description": "Returns token information for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupSecurityPIN/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "SecurityPINInfo", + "operation": "Get Security PIN Info", + "description": "Returns Security PIN Information for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupManagementMetaData/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Management Metadata", + "operation": "Get Backup Management Metadata", + "description": "Returns Backup Management Metadata for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupOperationResults/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Operation Results", + "operation": "Get Backup Operation Result", + "description": "Returns Backup Operation Result for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupOperations/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Operation Status", + "operation": "Get Backup Operation Status", + "description": "Returns Backup Operation Status for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupJobs/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Jobs", + "operation": "Get Jobs", + "description": "Returns all Job Objects" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupJobs/cancel/action", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Jobs", + "operation": "Cancel Jobs", + "description": "Cancel the Job" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupJobsExport/action", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Export Backup Jobs", + "operation": "Export Jobs", + "description": "Export Jobs" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupJobs/operationResults/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Jobs Operation Results", + "operation": "Get Job Operation Result", + "description": "Returns the Result of Job Operation." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupJobsExport/operationResults/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Export Backup Jobs Operation Results", + "operation": "Get Export Job Operation Result", + "description": "Returns the Result of Export Job Operation." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Recovery Points", + "operation": "Get Recovery Points", + "description": "Get Recovery Points for Protected Items." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints/restore/action", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Recovery Points", + "operation": "Restore Recovery Points", + "description": "Restore Recovery Points for Protected Items." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints/provisionInstantItemRecovery/action", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Recovery Points", + "operation": "Provision Instant Item Recovery for Protected Item", + "description": "Provision Instant Item Recovery for Protected Item" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints/revokeInstantItemRecovery/action", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Recovery Points", + "operation": "Revoke Instant Item Recovery for Protected Item", + "description": "Revoke Instant Item Recovery for Protected Item" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupPolicies/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Policies", + "operation": "Get Protection Policy", + "description": "Returns all Protection Policies" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupPolicies/write", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Policies", + "operation": "Create Protection Policy", + "description": "Creates Protection Policy" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupPolicies/delete", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Policies", + "operation": "Delete Protection Policy", + "description": "Delete a Protection Policy" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupPolicies/operationResults/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Policy Operation Results", + "operation": "Get Policy Operation Results", + "description": "Get Results of Policy Operation." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupPolicies/operationsStatus/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Policy Operation Status", + "operation": "Get Policy Operation Status", + "description": "Get Status of Policy Operation." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protected Items", + "operation": "Get Protected Item Details", + "description": "Returns object details of the Protected Item" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupProtectedItems/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protected Items", + "operation": "Get All Protected Items", + "description": "Returns the list of all Protected Items." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/write", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protected Items", + "operation": "Create Backup Protected Item", + "description": "Create a backup Protected Item" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/delete", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protected Items", + "operation": "Delete Protected Items", + "description": "Deletes Protected Item" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/operationResults/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protected Item Operation Results", + "operation": "Get Protected Items Operation Results", + "description": "Gets Result of Operation Performed on Protected Items." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/operationsStatus/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protected Item Operation Status", + "operation": "Get Protected Items operation status", + "description": "Returns the status of Operation performed on Protected Items." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/backup/action", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protected Items", + "operation": "Backup Protected Item", + "description": "Performs Backup for Protected Item." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupProtectableItems/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Protectable Items", + "operation": "Get Protectable Items", + "description": "Returns list of all Protectable Items." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/refreshContainers/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Refresh Containers", + "operation": "Refresh container", + "description": "Refreshes the container list" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/operationResults/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Refresh Containers Operation Results", + "operation": "Get Operation Results", + "description": "Returns status of the operation" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupProtectionContainers/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Protection Containers", + "operation": "Get Containers In Subscription", + "description": "Returns all containers belonging to the subscription" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protection Containers", + "operation": "Get Registered Container", + "description": "Returns all registered containers" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/operationResults/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protection Containers Operation Results", + "operation": "Get Container Operation Results", + "description": "Gets result of Operation performed on Protection Container." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupEngines", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Engines", + "operation": "List of backup management servers.", + "description": "Returns all the backup management servers registered with vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupStatus", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Status", + "operation": "Check Backup Status for Vault", + "description": "Check Backup Status for Recovery Services Vaults" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupPreValidateProtection", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "PreValidate Protection", + "operation": "Pre Validate Enable Protection", + "description": "" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupValidateFeatures", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Validate Features", + "operation": "Validate Features", + "description": "Validate Features" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/backupProtectionIntent/write", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protection Intent", + "operation": "Create backup Protection Intent", + "description": "Create a backup Protection Intent" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/{fabricName}/protectionContainers/{containerName}/items/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Workload Items", + "operation": "Get all items in a container", + "description": "Get all items in a container" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/inquire/action", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protection Containers Inquire", + "operation": "Get all items in a container", + "description": "Get all items in a container" + }, + "origin": "user" + } + ] + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/PrivateEndpointConnection/DeletePrivateEndpointConnection.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/PrivateEndpointConnection/DeletePrivateEndpointConnection.json new file mode 100644 index 000000000000..92e72a8dc109 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/PrivateEndpointConnection/DeletePrivateEndpointConnection.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "04cf684a-d41f-4550-9f70-7708a3a2283b", + "resourceGroupName": "gaallaRG", + "vaultName": "gaallavaultbvtd2msi", + "privateEndpointConnectionName": "gaallatestpe2.5704c932-249a-490b-a142-1396838cd3b", + "api-version": "2021-01-01" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/6c48fa17-39c7-45f1-90ac-47a587128ace/resourceGroups/backupadminrg/providers/Microsoft.RecoveryServices/Vaults/demo-pevault-2/privateEndpointConnections/autoapprovalpeecy4.3679789459502941542.backup.5ede856d-d9f0-461e-a15b-370c84525817/operationsStatus/2908a25d-8036-48d2-bdcc-fdce26b9771f?api-versi", + "Retry-After": "60" + } + }, + "204": {} + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/PrivateEndpointConnection/GetPrivateEndpointConnection.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/PrivateEndpointConnection/GetPrivateEndpointConnection.json new file mode 100644 index 000000000000..22949c300498 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/PrivateEndpointConnection/GetPrivateEndpointConnection.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "04cf684a-d41f-4550-9f70-7708a3a2283b", + "resourceGroupName": "gaallaRG", + "vaultName": "gaallavaultbvtd2msi", + "privateEndpointConnectionName": "gaallatestpe2.5704c932-249a-490b-a142-1396838cd3b", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/gaallaRG/providers/Microsoft.RecoveryServicesBVTD2/vaults/gaallavaultbvtd2msi/privateEndpointConnections/gaallatestpe3.3592346090307038890.backup.5704c932-249a-490b-a142-1396838cd3b", + "name": "gaallatestpe1.3592346090307038890.backup.5704c932-249a-490b-a142-1396838cd3b", + "type": "Microsoft.RecoveryServices/vaults/privateEndpointConnections", + "properties": { + "provisioningState": "Pending", + "privateEndpoint": { + "id": "/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/gaallaRG/providers/Microsoft.Network/privateEndpoints/gaallatestpe3" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@company.com" + } + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/PrivateEndpointConnection/GetPrivateEndpointConnectionOperationStatus.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/PrivateEndpointConnection/GetPrivateEndpointConnectionOperationStatus.json new file mode 100644 index 000000000000..7150ccf5f49e --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/PrivateEndpointConnection/GetPrivateEndpointConnectionOperationStatus.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "04cf684a-d41f-4550-9f70-7708a3a2283b", + "resourceGroupName": "gaallaRG", + "privateEndpointConnectionName": "gaallatestpe2.5704c932-249a-490b-a142-1396838cd3b", + "vaultName": "gaallavaultbvtd2msi", + "operationId": "0f48183b-0a44-4dca-aec1-bba5daab888a", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "id": "0f48183b-0a44-4dca-aec1-bba5daab888a", + "name": "0f48183b-0a44-4dca-aec1-bba5daab888a", + "status": "Succeeded", + "startTime": "2020-02-27T11:59:47.5901592Z", + "endTime": "2020-02-27T11:59:47.5901592Z" + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/PrivateEndpointConnection/PutPrivateEndpointConnection.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/PrivateEndpointConnection/PutPrivateEndpointConnection.json new file mode 100644 index 000000000000..1b116f0a665a --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/PrivateEndpointConnection/PutPrivateEndpointConnection.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subscriptionId": "04cf684a-d41f-4550-9f70-7708a3a2283b", + "resourceGroupName": "gaallaRG", + "vaultName": "gaallavaultbvtd2msi", + "privateEndpointConnectionName": "gaallatestpe2.5704c932-249a-490b-a142-1396838cd3b", + "api-version": "2021-01-01", + "parameters": { + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/gaallaRG/providers/Microsoft.Network/privateEndpoints/gaallatestpe3" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@company.com" + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/gaallaRG/providers/Microsoft.RecoveryServicesBVTD2/vaults/gaallavaultbvtd2msi/privateEndpointConnections/gaallatestpe3.3592346090307038890.backup.5704c932-249a-490b-a142-1396838cd3b", + "name": "gaallatestpe1.3592346090307038890.backup.5704c932-249a-490b-a142-1396838cd3b", + "type": "Microsoft.RecoveryServices/vaults/privateEndpointConnections", + "properties": { + "provisioningState": "Pending", + "privateEndpoint": { + "id": "/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/gaallaRG/providers/Microsoft.Network/privateEndpoints/gaallatestpe3" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@company.com" + } + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/6c48fa17-39c7-45f1-90ac-47a587128ace/resourceGroups/backupadminrg/providers/Microsoft.RecoveryServices/Vaults/demo-pevault-2/privateEndpointConnections/autoapprovalpeecy4.3679789459502941542.backup.5ede856d-d9f0-461e-a15b-370c84525817/operationsStatus/2908a25d-8036-48d2-bdcc-fdce26b9771f?api-versi", + "Retry-After": "60" + } + }, + "200": { + "body": { + "id": "/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/gaallaRG/providers/Microsoft.RecoveryServicesBVTD2/vaults/gaallavaultbvtd2msi/privateEndpointConnections/gaallatestpe3.3592346090307038890.backup.5704c932-249a-490b-a142-1396838cd3b", + "name": "gaallatestpe1.3592346090307038890.backup.5704c932-249a-490b-a142-1396838cd3b", + "type": "Microsoft.RecoveryServices/vaults/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/gaallaRG/providers/Microsoft.Network/privateEndpoints/gaallatestpe3" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@company.com" + } + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/TriggerRecoveryPointMove_Post.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/TriggerRecoveryPointMove_Post.json new file mode 100644 index 000000000000..01fffad6f116 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/TriggerRecoveryPointMove_Post.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "netsdktestrg", + "vaultName": "testVault", + "fabricName": "Azure", + "containerName": "IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "protectedItemName": "VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "recoveryPointId": "348916168024334", + "api-version": "2021-01-01", + "parameters": { + "objectType": "MoveRPAcrossTiersRequest", + "sourceTierType": "HardenedRP", + "targetTierType": "ArchivedRP" + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.RecoveryServices/vaults/testVault/backupFabrics/Azure/protectionContainers/iaasvmcontainer;iaasVMContainerV2;netsdktestrg;netvmtestv2vm1/protectedItems/vm;iaasVMContainerV2;netsdktestrg;netvmtestv2vm1/operationResults/00000000-0000-0000-0000-000000000000?api-version=2020-09-01", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.RecoveryServices/vaults/testVault/backupFabrics/Azure/protectionContainers/iaasvmcontainer;iaasVMContainerV2;netsdktestrg;netvmtestv2vm1/protectedItems/vm;iaasVMContainerV2;netsdktestrg;netvmtestv2vm1/operationsStatus/00000000-0000-0000-0000-000000000000?api-version=2020-09-01", + "Retry-After": 60 + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/bms.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/bms.json new file mode 100644 index 000000000000..bb35d0d9bbf9 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/bms.json @@ -0,0 +1,11335 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-04-01", + "title": "RecoveryServicesBackupClient", + "x-ms-code-generation-settings": { + "internalConstructors": false + } + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/Subscriptions/{subscriptionId}/providers/Microsoft.RecoveryServices/locations/{azureRegion}/backupPreValidateProtection": { + "post": { + "tags": [ + "ProtectionIntent" + ], + "summary": "It will validate followings\r\n1. Vault capacity\r\n2. VM is already protected\r\n3. Any VM related configuration passed in properties.", + "operationId": "ProtectionIntent_Validate", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/AzureRegion" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "parameters", + "in": "body", + "description": "Enable backup validation request on Virtual Machine", + "required": true, + "schema": { + "$ref": "#/definitions/PreValidateEnableBackupRequest" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PreValidateEnableBackupResponse" + } + } + }, + "x-ms-examples": { + "Validate Enable Protection on Azure Vm": { + "$ref": "./examples/AzureIaasVm/ProtectionIntent_Validate.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/providers/Microsoft.RecoveryServices/locations/{azureRegion}/backupStatus": { + "post": { + "tags": [ + "BackupStatus" + ], + "summary": "Get the container backup status", + "operationId": "BackupStatus_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/AzureRegion" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "parameters", + "in": "body", + "description": "Container Backup Status Request", + "required": true, + "schema": { + "$ref": "#/definitions/BackupStatusRequest" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupStatusResponse" + } + } + }, + "x-ms-examples": { + "Get Azure Virtual Machine Backup Status": { + "$ref": "./examples/AzureIaasVm/GetBackupStatus.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/providers/Microsoft.RecoveryServices/locations/{azureRegion}/backupValidateFeatures": { + "post": { + "tags": [ + "FeatureSupport" + ], + "summary": "It will validate if given feature with resource properties is supported in service", + "operationId": "FeatureSupport_Validate", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/AzureRegion" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "parameters", + "in": "body", + "description": "Feature support request object", + "required": true, + "schema": { + "$ref": "#/definitions/FeatureSupportRequest" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AzureVMResourceFeatureSupportResponse" + } + } + }, + "x-ms-examples": { + "Check Azure Vm Backup Feature Support": { + "$ref": "./examples/AzureIaasVm/BackupFeature_Validate.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/backupProtectionIntent/{intentObjectName}": { + "get": { + "tags": [ + "ProtectionIntent" + ], + "description": "Provides the details of the protection intent up item. This is an asynchronous operation. To know the status of the operation,\r\ncall the GetItemOperationResult API.", + "operationId": "ProtectionIntent_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with the backed up item.", + "required": true, + "type": "string" + }, + { + "name": "intentObjectName", + "in": "path", + "description": "Backed up item name whose details are to be fetched.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionIntentResource" + } + } + }, + "x-ms-examples": { + "Get ProtectionIntent for an item": { + "$ref": "./examples/AzureWorkload/BackupProtectionIntent_Get.json" + } + } + }, + "put": { + "tags": [ + "ProtectionIntent" + ], + "description": "Create Intent for Enabling backup of an item. This is a synchronous operation.", + "operationId": "ProtectionIntent_CreateOrUpdate", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with the backup item.", + "required": true, + "type": "string" + }, + { + "name": "intentObjectName", + "in": "path", + "description": "Intent object name.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "resource backed up item", + "required": true, + "schema": { + "$ref": "#/definitions/ProtectionIntentResource" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionIntentResource" + } + } + }, + "x-ms-examples": { + "Create or Update Azure Vm Protection Intent": { + "$ref": "./examples/AzureIaasVm/ProtectionIntent_CreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "ProtectionIntent" + ], + "description": "Used to remove intent from an item", + "operationId": "ProtectionIntent_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with the intent.", + "required": true, + "type": "string" + }, + { + "name": "intentObjectName", + "in": "path", + "description": "Intent to be deleted.", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "NoContent" + } + }, + "x-ms-examples": { + "Delete Protection intent from item": { + "$ref": "./examples/AzureWorkload/BackupProtectionIntent_Delete.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupProtectionIntents": { + "get": { + "tags": [ + "BackupProtectionIntent" + ], + "description": "Provides a pageable list of all intents that are present within a vault.", + "operationId": "BackupProtectionIntent_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + }, + { + "name": "$skipToken", + "in": "query", + "description": "skipToken Filter.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionIntentResourceList" + } + } + }, + "x-ms-odata": "#/definitions/ProtectionIntentQueryObject", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List protection intent with backupManagementType filter": { + "$ref": "./examples/AzureWorkload/BackupProtectionIntent_List.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupUsageSummaries": { + "get": { + "tags": [ + "BackupUsageSummaries" + ], + "description": "Fetches the backup management usage summaries of the vault.", + "operationId": "BackupUsageSummaries_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + }, + { + "name": "$skipToken", + "in": "query", + "description": "skipToken Filter.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupManagementUsageList" + } + } + }, + "x-ms-odata": "#/definitions/BMSBackupSummariesQueryObject", + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "Get Protected Items Usages Summary": { + "$ref": "./examples/Common/BackupProtectedItem_UsageSummary_Get.json" + }, + "Get Protected Containers Usages Summary": { + "$ref": "./examples/Common/BackupProtectionContainers_UsageSummary_Get.json" + } + } + } + }, + "/providers/Microsoft.RecoveryServices/operations": { + "get": { + "tags": [ + "Operations" + ], + "description": "Returns the list of available operations.", + "operationId": "Operations_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ClientDiscoveryResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink", + "itemName": "value" + }, + "x-ms-examples": { + "ListOperations": { + "$ref": "./examples/ListOperations.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupconfig/vaultconfig": { + "get": { + "tags": [ + "BackupResourceVaultConfigs" + ], + "description": "Fetches resource vault config.", + "operationId": "BackupResourceVaultConfigs_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupResourceVaultConfigResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/NewErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Vault Security Config": { + "$ref": "./examples/Common/BackupResourceVaultConfigs_Get.json" + } + } + }, + "patch": { + "tags": [ + "BackupResourceVaultConfigs" + ], + "description": "Updates vault security config.", + "operationId": "BackupResourceVaultConfigs_Update", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "parameters", + "in": "body", + "description": "resource config request", + "required": true, + "schema": { + "$ref": "#/definitions/BackupResourceVaultConfigResource" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupResourceVaultConfigResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/NewErrorResponse" + } + } + }, + "x-ms-examples": { + "Update Vault Security Config": { + "$ref": "./examples/Common/BackupResourceVaultConfigs_Patch.json" + } + } + }, + "put": { + "tags": [ + "BackupResourceVaultConfigs" + ], + "description": "Updates vault security config. ", + "operationId": "BackupResourceVaultConfigs_Put", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "parameters", + "in": "body", + "description": "resource config request", + "required": true, + "schema": { + "$ref": "#/definitions/BackupResourceVaultConfigResource" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupResourceVaultConfigResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/NewErrorResponse" + } + } + }, + "x-ms-examples": { + "Update Vault Security Config": { + "$ref": "./examples/Common/BackupResourceVaultConfigs_Put.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupEncryptionConfigs/backupResourceEncryptionConfig": { + "get": { + "tags": [ + "BackupResourceEncryptionConfigs" + ], + "description": "Fetches Vault Encryption config.", + "operationId": "BackupResourceEncryptionConfigs_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupResourceEncryptionConfigExtendedResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/NewErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Vault Encryption Configuration": { + "$ref": "./examples/BackupResourceEncryptionConfig_Get.json" + } + } + }, + "put": { + "tags": [ + "BackupResourceEncryptionConfigs" + ], + "description": "Updates Vault encryption config.", + "operationId": "BackupResourceEncryptionConfigs_Update", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "parameters", + "in": "body", + "description": "Vault encryption input config request", + "required": true, + "schema": { + "$ref": "#/definitions/BackupResourceEncryptionConfigResource" + } + } + ], + "responses": { + "200": { + "description": "OK" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/NewErrorResponse" + } + } + }, + "x-ms-examples": { + "Update Vault Encryption Configuration": { + "$ref": "./examples/BackupResourceEncryptionConfig_Put.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "PrivateEndpointConnection" + ], + "description": "Get Private Endpoint Connection. This call is made by Backup Admin.", + "operationId": "PrivateEndpointConnection_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/NewErrorResponse" + } + } + }, + "x-ms-examples": { + "Get PrivateEndpointConnection": { + "$ref": "./examples/PrivateEndpointConnection/GetPrivateEndpointConnection.json" + } + } + }, + "put": { + "tags": [ + "PrivateEndpointConnection" + ], + "description": "Approve or Reject Private Endpoint requests. This call is made by Backup Admin.", + "operationId": "PrivateEndpointConnection_Put", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "Request body for operation", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionResource" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionResource" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update PrivateEndpointConnection": { + "$ref": "./examples/PrivateEndpointConnection/PutPrivateEndpointConnection.json" + } + } + }, + "delete": { + "tags": [ + "PrivateEndpointConnection" + ], + "description": "Delete Private Endpoint requests. This call is made by Backup Admin.", + "operationId": "PrivateEndpointConnection_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete PrivateEndpointConnection": { + "$ref": "./examples/PrivateEndpointConnection/DeletePrivateEndpointConnection.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/privateEndpointConnections/{privateEndpointConnectionName}/operationsStatus/{operationId}": { + "get": { + "tags": [ + "PrivateEndpoint" + ], + "summary": "Gets the operation status for a private endpoint connection.", + "operationId": "PrivateEndpoint_GetOperationStatus", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection.", + "required": true, + "type": "string" + }, + { + "name": "operationId", + "in": "path", + "description": "Operation id", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationStatus" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/NewErrorResponse" + } + } + }, + "x-ms-examples": { + "Get OperationStatus": { + "$ref": "./examples/PrivateEndpointConnection/GetPrivateEndpointConnectionOperationStatus.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupstorageconfig/vaultstorageconfig/operationStatus/{operationId}": { + "get": { + "tags": [ + "DataMove" + ], + "description": "Fetches operation status for data move operation on vault", + "operationId": "GetOperationStatus", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationStatus" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/NewErrorResponse" + } + } + }, + "x-ms-examples": { + "Get OperationStatus": { + "$ref": "./examples/BackupDataMove/BackupDataMoveOperationStatus_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupstorageconfig/vaultstorageconfig/prepareDataMove": { + "post": { + "tags": [ + "DataMove" + ], + "description": "Prepares source vault for Data Move operation", + "operationId": "BMSPrepareDataMove", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "parameters", + "in": "body", + "description": "Prepare data move request", + "required": true, + "schema": { + "$ref": "#/definitions/PrepareDataMoveRequest" + } + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/NewErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Prepare Data Move": { + "$ref": "./examples/BackupDataMove/PrepareDataMove_Post.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupstorageconfig/vaultstorageconfig/operationResults/{operationId}": { + "get": { + "tags": [ + "BMSPrepareDataMoveOperationResult" + ], + "description": "Fetches Operation Result for Prepare Data Move", + "operationId": "BMSPrepareDataMoveOperationResult_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VaultStorageConfigOperationResultResponse" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed. ", + "schema": { + "$ref": "#/definitions/NewErrorResponse" + } + } + }, + "x-ms-examples": { + "Get operation result for PrepareDataMove": { + "$ref": "./examples/BackupDataMove/PrepareDataMoveOperationResult_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupstorageconfig/vaultstorageconfig/triggerDataMove": { + "post": { + "tags": [ + "DataMove" + ], + "description": "Triggers Data Move Operation on target vault", + "operationId": "BMSTriggerDataMove", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "parameters", + "in": "body", + "description": "Trigger data move request", + "required": true, + "schema": { + "$ref": "#/definitions/TriggerDataMoveRequest" + } + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/NewErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Trigger Data Move": { + "$ref": "./examples/BackupDataMove/TriggerDataMove_Post.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}": { + "get": { + "tags": [ + "ProtectedItems" + ], + "description": "Provides the details of the backed up item. This is an asynchronous operation. To know the status of the operation,\r\ncall the GetItemOperationResult API.", + "operationId": "ProtectedItems_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with the backed up item.", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "Container name associated with the backed up item.", + "required": true, + "type": "string" + }, + { + "name": "protectedItemName", + "in": "path", + "description": "Backed up item name whose details are to be fetched.", + "required": true, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectedItemResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-odata": "#/definitions/GetProtectedItemQueryObject", + "x-ms-examples": { + "Get Protected Classic Virtual Machine Details": { + "$ref": "./examples/AzureIaasVm/ClassicCompute_ProtectedItem_Get.json" + }, + "Get Protected Virtual Machine Details": { + "$ref": "./examples/AzureIaasVm/Compute_ProtectedItem_Get.json" + } + } + }, + "put": { + "tags": [ + "ProtectedItems" + ], + "description": "Enables backup of an item or to modifies the backup policy information of an already backed up item. This is an\r\nasynchronous operation. To know the status of the operation, call the GetItemOperationResult API.", + "operationId": "ProtectedItems_CreateOrUpdate", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with the backup item.", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "Container name associated with the backup item.", + "required": true, + "type": "string" + }, + { + "name": "protectedItemName", + "in": "path", + "description": "Item name to be backed up.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "resource backed up item", + "required": true, + "schema": { + "$ref": "#/definitions/ProtectedItemResource" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectedItemResource" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Enable Protection on Azure IaasVm": { + "$ref": "./examples/AzureIaasVm/ConfigureProtection.json" + }, + "Stop Protection with retain data on Azure IaasVm": { + "$ref": "./examples/AzureIaasVm/StopProtection.json" + } + } + }, + "delete": { + "tags": [ + "ProtectedItems" + ], + "description": "Used to disable backup of an item within a container. This is an asynchronous operation. To know the status of the\r\nrequest, call the GetItemOperationResult API.", + "operationId": "ProtectedItems_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with the backed up item.", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "Container name associated with the backed up item.", + "required": true, + "type": "string" + }, + { + "name": "protectedItemName", + "in": "path", + "description": "Backed up item to be deleted.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete Protection from Azure Virtual Machine": { + "$ref": "./examples/Common/ProtectedItem_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}/operationResults/{operationId}": { + "get": { + "tags": [ + "ProtectedItemOperationResults" + ], + "description": "Fetches the result of any operation on the backup item.", + "operationId": "ProtectedItemOperationResults_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with the backup item.", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "Container name associated with the backup item.", + "required": true, + "type": "string" + }, + { + "name": "protectedItemName", + "in": "path", + "description": "Backup item name whose details are to be fetched.", + "required": true, + "type": "string" + }, + { + "name": "operationId", + "in": "path", + "description": "OperationID which represents the operation whose result needs to be fetched.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectedItemResource" + } + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Operation Results of Protected Vm": { + "$ref": "./examples/AzureIaasVm/ProtectedItemOperationResults.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}/recoveryPoints": { + "get": { + "tags": [ + "RecoveryPoints" + ], + "description": "Lists the backup copies for the backed up item.", + "operationId": "RecoveryPoints_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with the backed up item.", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "Container name associated with the backed up item.", + "required": true, + "type": "string" + }, + { + "name": "protectedItemName", + "in": "path", + "description": "Backed up item whose backup copies are to be fetched.", + "required": true, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoveryPointResourceList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-odata": "#/definitions/BMSRPQueryObject", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get Protected Azure Vm Recovery Points": { + "$ref": "./examples/AzureIaasVm/RecoveryPoints_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}/recoveryPoints/{recoveryPointId}": { + "get": { + "tags": [ + "RecoveryPoints" + ], + "description": "Provides the information of the backed up data identified using RecoveryPointID. This is an asynchronous operation.\r\nTo know the status of the operation, call the GetProtectedItemOperationResult API.", + "operationId": "RecoveryPoints_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with backed up item.", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "Container name associated with backed up item.", + "required": true, + "type": "string" + }, + { + "name": "protectedItemName", + "in": "path", + "description": "Backed up item name whose backup data needs to be fetched.", + "required": true, + "type": "string" + }, + { + "name": "recoveryPointId", + "in": "path", + "description": "RecoveryPointID represents the backed up data to be fetched.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoveryPointResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Azure Vm Recovery Point Details": { + "$ref": "./examples/AzureIaasVm/RecoveryPoints_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}/recoveryPoints/{recoveryPointId}/restore": { + "post": { + "tags": [ + "Restores" + ], + "description": "Restores the specified backed up data. This is an asynchronous operation. To know the status of this API call, use\r\nGetProtectedItemOperationResult API.", + "operationId": "Restores_Trigger", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with the backed up items.", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "Container name associated with the backed up items.", + "required": true, + "type": "string" + }, + { + "name": "protectedItemName", + "in": "path", + "description": "Backed up item to be restored.", + "required": true, + "type": "string" + }, + { + "name": "recoveryPointId", + "in": "path", + "description": "Recovery point ID which represents the backed up data to be restored.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "resource restore request", + "required": true, + "schema": { + "$ref": "#/definitions/RestoreRequestResource" + } + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Restore to New Azure IaasVm": { + "$ref": "./examples/AzureIaasVm/TriggerRestore_ALR.json" + }, + "Restore Disks": { + "$ref": "./examples/AzureIaasVm/TriggerRestore_RestoreDisks.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupPolicies": { + "get": { + "tags": [ + "BackupPolicies" + ], + "description": "Lists of backup policies associated with Recovery Services Vault. API provides pagination parameters to fetch\r\nscoped results.", + "operationId": "BackupPolicies_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionPolicyResourceList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-odata": "#/definitions/ProtectionPolicyQueryObject", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List protection policies with backupManagementType filter as AzureIaasVm": { + "$ref": "./examples/AzureIaasVm/BackupPolicies_List.json" + }, + "List protection policies with backupManagementType filter as AzureWorkload": { + "$ref": "./examples/AzureWorkload/BackupPolicies_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupPolicies/{policyName}": { + "get": { + "tags": [ + "ProtectionPolicies" + ], + "description": "Provides the details of the backup policies associated to Recovery Services Vault. This is an asynchronous\r\noperation. Status of the operation can be fetched using GetPolicyOperationResult API.", + "operationId": "ProtectionPolicies_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "policyName", + "in": "path", + "description": "Backup policy information to be fetched.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionPolicyResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Azure IaasVm Protection Policy Details": { + "$ref": "./examples/AzureIaasVm/ProtectionPolicies_Get.json" + } + } + }, + "put": { + "tags": [ + "ProtectionPolicies" + ], + "description": "Creates or modifies a backup policy. This is an asynchronous operation. Status of the operation can be fetched\r\nusing GetPolicyOperationResult API.", + "operationId": "ProtectionPolicies_CreateOrUpdate", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "policyName", + "in": "path", + "description": "Backup policy to be created.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "resource backup policy", + "required": true, + "schema": { + "$ref": "#/definitions/ProtectionPolicyResource" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionPolicyResource" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create or Update Simple Azure Vm Protection Policy": { + "$ref": "./examples/AzureIaasVm/ProtectionPolicies_CreateOrUpdate_Simple.json" + }, + "Create or Update Full Azure Vm Protection Policy": { + "$ref": "./examples/AzureIaasVm/ProtectionPolicies_CreateOrUpdate_Complex.json" + }, + "Create or Update Full Azure Workload Protection Policy": { + "$ref": "./examples/AzureWorkload/ProtectionPolicies_CreateOrUpdate_Complex.json" + } + } + }, + "delete": { + "tags": [ + "ProtectionPolicies" + ], + "description": "Deletes specified backup policy from your Recovery Services Vault. This is an asynchronous operation. Status of the\r\noperation can be fetched using GetProtectionPolicyOperationResult API.", + "operationId": "ProtectionPolicies_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "policyName", + "in": "path", + "description": "Backup policy to be deleted.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete Azure Vm Protection Policy": { + "$ref": "./examples/AzureIaasVm/ProtectionPolicies_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupPolicies/{policyName}/operationResults/{operationId}": { + "get": { + "tags": [ + "ProtectionPolicyOperationResults" + ], + "description": "Provides the result of an operation.", + "operationId": "ProtectionPolicyOperationResults_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "policyName", + "in": "path", + "description": "Backup policy name whose operation's result needs to be fetched.", + "required": true, + "type": "string" + }, + { + "name": "operationId", + "in": "path", + "description": "Operation ID which represents the operation whose result needs to be fetched.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionPolicyResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Protection Policy Operation Results": { + "$ref": "./examples/AzureIaasVm/ProtectionPolicyOperationResults_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupJobs": { + "get": { + "tags": [ + "BackupJobs" + ], + "description": "Provides a pageable list of jobs.", + "operationId": "BackupJobs_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + }, + { + "name": "$skipToken", + "in": "query", + "description": "skipToken Filter.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/JobResourceList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-odata": "#/definitions/JobQueryObject", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List All Jobs": { + "$ref": "./examples/Common/ListJobs.json" + }, + "List Jobs With Filters": { + "$ref": "./examples/Common/ListJobsWithAllSupportedFilters.json" + }, + "List Jobs With Time Filter": { + "$ref": "./examples/Common/ListJobsWithStartTimeAndEndTimeFilters.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupJobs/{jobName}": { + "get": { + "tags": [ + "JobDetails" + ], + "description": "Gets extended information associated with the job.", + "operationId": "JobDetails_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "jobName", + "in": "path", + "description": "Name of the job whose details are to be fetched.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/JobResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Job Details": { + "$ref": "./examples/Common/GetJobDetails.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupJobs/{jobName}/cancel": { + "post": { + "tags": [ + "JobCancellations" + ], + "description": "Cancels a job. This is an asynchronous operation. To know the status of the cancellation, call\r\nGetCancelOperationResult API.", + "operationId": "JobCancellations_Trigger", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "jobName", + "in": "path", + "description": "Name of the job to cancel.", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Cancel Job": { + "$ref": "./examples/Common/TriggerCancelJob.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupJobs/{jobName}/operationResults/{operationId}": { + "get": { + "tags": [ + "JobOperationResults" + ], + "description": "Fetches the result of any operation.", + "operationId": "JobOperationResults_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "jobName", + "in": "path", + "description": "Job name whose operation result has to be fetched.", + "required": true, + "type": "string" + }, + { + "name": "operationId", + "in": "path", + "description": "OperationID which represents the operation whose result has to be fetched.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Cancel Job Operation Result": { + "$ref": "./examples/Common/CancelJobOperationResult.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupJobs/operationResults/{operationId}": { + "get": { + "tags": [ + "ExportJobsOperationResults" + ], + "description": "Gets the operation result of operation triggered by Export Jobs API. If the operation is successful, then it also\r\ncontains URL of a Blob and a SAS key to access the same. The blob contains exported jobs in JSON serialized format.", + "operationId": "ExportJobsOperationResults_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "operationId", + "in": "path", + "description": "OperationID which represents the export job.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationResultInfoBaseResource" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/OperationResultInfoBaseResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Export Jobs Operation Results": { + "$ref": "./examples/Common/ExportJobsOperationResult.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupJobsExport": { + "post": { + "tags": [ + "Jobs" + ], + "description": "Triggers export of jobs specified by filters and returns an OperationID to track.", + "operationId": "Jobs_Export", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-odata": "#/definitions/JobQueryObject", + "x-ms-examples": { + "Export Jobs": { + "$ref": "./examples/Common/TriggerExportJobs.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupProtectedItems": { + "get": { + "tags": [ + "BackupProtectedItems" + ], + "description": "Provides a pageable list of all items that are backed up within a vault.", + "operationId": "BackupProtectedItems_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + }, + { + "name": "$skipToken", + "in": "query", + "description": "skipToken Filter.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectedItemResourceList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-odata": "#/definitions/ProtectedItemQueryObject", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List protected items with backupManagementType filter as AzureIaasVm": { + "$ref": "./examples/AzureIaasVm/BackupProtectedItems_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupValidateOperation": { + "post": { + "tags": [ + "Operation" + ], + "description": "Validate operation for specified backed up item. This is a synchronous operation.", + "operationId": "Operation_Validate", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "parameters", + "in": "body", + "description": "resource validate operation request", + "required": true, + "schema": { + "$ref": "#/definitions/ValidateOperationRequest" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ValidateOperationsResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Validate Operation": { + "$ref": "./examples/AzureIaasVm/ValidateOperation_RestoreDisk.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupEngines": { + "get": { + "tags": [ + "BackupEngines" + ], + "description": "Backup management servers registered to Recovery Services Vault. Returns a pageable list of servers.", + "operationId": "BackupEngines_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + }, + { + "name": "$skipToken", + "in": "query", + "description": "skipToken Filter.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupEngineBaseResourceList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-odata": "#/definitions/BMSBackupEnginesQueryObject", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Dpm/AzureBackupServer/Lajolla Backup Engines": { + "$ref": "./examples/Dpm/BackupEngines_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupEngines/{backupEngineName}": { + "get": { + "tags": [ + "BackupEngines" + ], + "description": "Returns backup management server registered to Recovery Services Vault.", + "operationId": "BackupEngines_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "backupEngineName", + "in": "path", + "description": "Name of the backup management server.", + "required": true, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + }, + { + "name": "$skipToken", + "in": "query", + "description": "skipToken Filter.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupEngineBaseResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-odata": "#/definitions/BMSBackupEngineQueryObject", + "x-ms-examples": { + "Get Dpm/AzureBackupServer/Lajolla Backup Engine Details": { + "$ref": "./examples/Dpm/BackupEngines_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/operationResults/{operationId}": { + "get": { + "tags": [ + "ProtectionContainerRefreshOperationResults" + ], + "description": "Provides the result of the refresh operation triggered by the BeginRefresh operation.", + "operationId": "ProtectionContainerRefreshOperationResults_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with the container.", + "required": true, + "type": "string" + }, + { + "name": "operationId", + "in": "path", + "description": "Operation ID associated with the operation whose result needs to be fetched.", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Azure Vm Discovery Operation Result": { + "$ref": "./examples/Common/RefreshContainers_OperationResults.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectableContainers": { + "get": { + "tags": [ + "ProtectableContainers" + ], + "description": "Lists the containers that can be registered to Recovery Services Vault.", + "operationId": "ProtectableContainers_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectableContainerResourceList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-odata": "#/definitions/BMSContainerQueryObject", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List protectable items with backupManagementType filter as AzureStorage": { + "$ref": "./examples/AzureStorage/ProtectableContainers_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}": { + "get": { + "tags": [ + "ProtectionContainers" + ], + "description": "Gets details of the specific container registered to your Recovery Services Vault.", + "operationId": "ProtectionContainers_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Name of the fabric where the container belongs.", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "Name of the container whose details need to be fetched.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionContainerResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Protection Container Details": { + "$ref": "./examples/AzureWorkload/ProtectionContainers_Get.json" + } + } + }, + "put": { + "tags": [ + "ProtectionContainers" + ], + "description": "Registers the container with Recovery Services vault.\r\nThis is an asynchronous operation. To track the operation status, use location header to call get latest status of\r\nthe operation.", + "operationId": "ProtectionContainers_Register", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with the container.", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "Name of the container to be registered.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "Request body for operation", + "required": true, + "schema": { + "$ref": "#/definitions/ProtectionContainerResource" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionContainerResource" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "RegisterAzure Storage ProtectionContainers": { + "$ref": "./examples/AzureStorage/ProtectionContainers_Register.json" + } + } + }, + "delete": { + "tags": [ + "ProtectionContainers" + ], + "description": "Unregisters the given container from your Recovery Services Vault. This is an asynchronous operation. To determine\r\nwhether the backend service has finished processing the request, call Get Container Operation Result API.", + "operationId": "ProtectionContainers_Unregister", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Name of the fabric where the container belongs.", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "Name of the container which needs to be unregistered from the Recovery Services Vault.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Unregister Protection Container": { + "$ref": "./examples/AzureWorkload/ProtectionContainers_Unregister.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/inquire": { + "post": { + "tags": [ + "ProtectionContainers" + ], + "summary": "Inquires all the protectable items under the given container.", + "description": "This is an async operation and the results should be tracked using location header or Azure-async-url.", + "operationId": "ProtectionContainers_Inquire", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric Name associated with the container.", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "Name of the container in which inquiry needs to be triggered.", + "required": true, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-odata": "#/definitions/BMSContainersInquiryQueryObject", + "x-ms-examples": { + "Inquire Azure Storage Protection Containers": { + "$ref": "./examples/AzureStorage/ProtectionContainers_Inquire.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/items": { + "get": { + "tags": [ + "BackupWorkloadItems" + ], + "description": "Provides a pageable list of workload item of a specific container according to the query filter and the pagination\r\nparameters.", + "operationId": "BackupWorkloadItems_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with the container.", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "Name of the container.", + "required": true, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + }, + { + "name": "$skipToken", + "in": "query", + "description": "skipToken Filter.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/WorkloadItemResourceList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-odata": "#/definitions/BMSWorkloadItemQueryObject", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Workload Items in Container": { + "$ref": "./examples/AzureWorkload/BackupWorkloadItems_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/operationResults/{operationId}": { + "get": { + "tags": [ + "ProtectionContainerOperationResults" + ], + "description": "Fetches the result of any operation on the container.", + "operationId": "ProtectionContainerOperationResults_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with the container.", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "Container name whose information should be fetched.", + "required": true, + "type": "string" + }, + { + "name": "operationId", + "in": "path", + "description": "Operation ID which represents the operation whose result needs to be fetched.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionContainerResource" + } + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Azure Storage Protection Container Operation Result": { + "$ref": "./examples/AzureStorage/ProtectionContainers_Inquire_Result.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}/backup": { + "post": { + "tags": [ + "Backups" + ], + "description": "Triggers backup for specified backed up item. This is an asynchronous operation. To know the status of the\r\noperation, call GetProtectedItemOperationResult API.", + "operationId": "Backups_Trigger", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with the backup item.", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "Container name associated with the backup item.", + "required": true, + "type": "string" + }, + { + "name": "protectedItemName", + "in": "path", + "description": "Backup item for which backup needs to be triggered.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "resource backup request", + "required": true, + "schema": { + "$ref": "#/definitions/BackupRequestResource" + } + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Trigger Backup": { + "$ref": "./examples/Common/TriggerBackup_Post.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}/operationsStatus/{operationId}": { + "get": { + "tags": [ + "ProtectedItemOperationStatuses" + ], + "description": "Fetches the status of an operation such as triggering a backup, restore. The status can be in progress, completed\r\nor failed. You can refer to the OperationStatus enum for all the possible states of the operation. Some operations\r\ncreate jobs. This method returns the list of jobs associated with the operation.", + "operationId": "ProtectedItemOperationStatuses_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with the backup item.", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "Container name associated with the backup item.", + "required": true, + "type": "string" + }, + { + "name": "protectedItemName", + "in": "path", + "description": "Backup item name whose details are to be fetched.", + "required": true, + "type": "string" + }, + { + "name": "operationId", + "in": "path", + "description": "OperationID represents the operation whose status needs to be fetched.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationStatus" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Operation Status of Protected Vm": { + "$ref": "./examples/AzureIaasVm/ProtectedItemOperationStatus.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}/recoveryPoints/{recoveryPointId}/provisionInstantItemRecovery": { + "post": { + "tags": [ + "ItemLevelRecoveryConnections" + ], + "description": "Provisions a script which invokes an iSCSI connection to the backup data. Executing this script opens a file\r\nexplorer displaying all the recoverable files and folders. This is an asynchronous operation. To know the status of\r\nprovisioning, call GetProtectedItemOperationResult API.", + "operationId": "ItemLevelRecoveryConnections_Provision", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with the backed up items.", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "Container name associated with the backed up items.", + "required": true, + "type": "string" + }, + { + "name": "protectedItemName", + "in": "path", + "description": "Backed up item name whose files/folders are to be restored.", + "required": true, + "type": "string" + }, + { + "name": "recoveryPointId", + "in": "path", + "description": "Recovery point ID which represents backed up data. iSCSI connection will be provisioned\r\nfor this backed up data.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "resource ILR request", + "required": true, + "schema": { + "$ref": "#/definitions/ILRRequestResource" + } + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Provision Instant Item Level Recovery for Azure Vm": { + "$ref": "./examples/AzureIaasVm/Provision_Ilr.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}/recoveryPoints/{recoveryPointId}/revokeInstantItemRecovery": { + "post": { + "tags": [ + "ItemLevelRecoveryConnections" + ], + "description": "Revokes an iSCSI connection which can be used to download a script. Executing this script opens a file explorer\r\ndisplaying all recoverable files and folders. This is an asynchronous operation.", + "operationId": "ItemLevelRecoveryConnections_Revoke", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with the backed up items.", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "Container name associated with the backed up items.", + "required": true, + "type": "string" + }, + { + "name": "protectedItemName", + "in": "path", + "description": "Backed up item name whose files/folders are to be restored.", + "required": true, + "type": "string" + }, + { + "name": "recoveryPointId", + "in": "path", + "description": "Recovery point ID which represents backed up data. iSCSI connection will be revoked for\r\nthis backed up data.", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Revoke Instant Item Level Recovery for Azure Vm": { + "$ref": "./examples/AzureIaasVm/Revoke_Ilr.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/refreshContainers": { + "post": { + "tags": [ + "ProtectionContainers" + ], + "description": "Discovers all the containers in the subscription that can be backed up to Recovery Services Vault. This is an\r\nasynchronous operation. To know the status of the operation, call GetRefreshOperationResult API.", + "operationId": "ProtectionContainers_Refresh", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated the container.", + "required": true, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-odata": "#/definitions/BMSRefreshContainersQueryObject", + "x-ms-examples": { + "Trigger Azure Vm Discovery": { + "$ref": "./examples/Common/RefreshContainers.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupOperationResults/{operationId}": { + "get": { + "tags": [ + "BackupOperationResults" + ], + "description": "Provides the status of the delete operations such as deleting backed up item. Once the operation has started, the\r\nstatus code in the response would be Accepted. It will continue to be in this state till it reaches completion. On\r\nsuccessful completion, the status code will be OK. This method expects OperationID as an argument. OperationID is\r\npart of the Location header of the operation response.", + "operationId": "BackupOperationResults_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "operationId", + "in": "path", + "description": "OperationID which represents the operation.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Result for Protected Item Delete Operation": { + "$ref": "./examples/Common/ProtectedItem_Delete_OperationResult.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupOperations/{operationId}": { + "get": { + "tags": [ + "BackupOperationStatuses" + ], + "description": "Fetches the status of an operation such as triggering a backup, restore. The status can be in progress, completed\r\nor failed. You can refer to the OperationStatus enum for all the possible states of an operation. Some operations\r\ncreate jobs. This method returns the list of jobs when the operation is complete.", + "operationId": "BackupOperationStatuses_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "operationId", + "in": "path", + "description": "OperationID which represents the operation.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationStatus" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Protected Item Delete Operation Status": { + "$ref": "./examples/Common/ProtectedItem_Delete_OperationStatus.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupPolicies/{policyName}/operations/{operationId}": { + "get": { + "tags": [ + "ProtectionPolicyOperationStatuses" + ], + "description": "Provides the status of the asynchronous operations like backup, restore. The status can be in progress, completed\r\nor failed. You can refer to the Operation Status enum for all the possible states of an operation. Some operations\r\ncreate jobs. This method returns the list of jobs associated with operation.", + "operationId": "ProtectionPolicyOperationStatuses_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "policyName", + "in": "path", + "description": "Backup policy name whose operation's status needs to be fetched.", + "required": true, + "type": "string" + }, + { + "name": "operationId", + "in": "path", + "description": "Operation ID which represents an operation whose status needs to be fetched.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationStatus" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Protection Policy Operation Status": { + "$ref": "./examples/AzureIaasVm/ProtectionPolicyOperationStatuses_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupProtectableItems": { + "get": { + "tags": [ + "BackupProtectableItems" + ], + "description": "Provides a pageable list of protectable objects within your subscription according to the query filter and the\r\npagination parameters.", + "operationId": "BackupProtectableItems_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + }, + { + "name": "$skipToken", + "in": "query", + "description": "skipToken Filter.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/WorkloadProtectableItemResourceList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-odata": "#/definitions/BMSPOQueryObject", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List protectable items with backupManagementType filter as AzureIaasVm": { + "$ref": "./examples/AzureIaasVm/BackupProtectableItems_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupProtectionContainers": { + "get": { + "tags": [ + "BackupProtectionContainers" + ], + "description": "Lists the containers registered to Recovery Services Vault.", + "operationId": "BackupProtectionContainers_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionContainerResourceList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-odata": "#/definitions/BMSContainerQueryObject", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Backup Protection Containers": { + "$ref": "./examples/AzureStorage/ProtectionContainers_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupSecurityPIN": { + "post": { + "tags": [ + "SecurityPINs" + ], + "description": "Get the security PIN.", + "operationId": "SecurityPINs_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TokenInformation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Vault Security Pin": { + "$ref": "./examples/Common/BackupSecurityPin_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}/recoveryPoints/{recoveryPointId}/move": { + "post": { + "tags": [ + "RecoveryPoint" + ], + "summary": "Move recovery point from one datastore to another store.", + "operationId": "MoveRecoveryPoint", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "protectedItemName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "recoveryPointId", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "Move Resource Across Tiers Request", + "required": true, + "schema": { + "$ref": "#/definitions/MoveRPAcrossTiersRequest" + } + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Trigger RP Move Operation": { + "$ref": "./examples/TriggerRecoveryPointMove_Post.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}/recoveryPointsRecommendedForMove": { + "post": { + "tags": [ + "RecoveryPointsRecommendedForMove" + ], + "description": "Lists the recovery points recommended for move to another tier", + "operationId": "RecoveryPointsRecommendedForMove_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "protectedItemName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "List Recovery points Recommended for Move Request", + "required": true, + "schema": { + "$ref": "#/definitions/ListRecoveryPointsRecommendedForMoveRequest" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoveryPointResourceList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get Protected Azure Vm Recovery Points Recommended for Move": { + "$ref": "./examples/AzureIaasVm/RecoveryPointsRecommendedForMove_List.json" + } + } + } + } + }, + "definitions": { + "BackupResourceEncryptionConfig": { + "type": "object", + "properties": { + "encryptionAtRestType": { + "description": "Encryption At Rest Type", + "enum": [ + "Invalid", + "MicrosoftManaged", + "CustomerManaged" + ], + "type": "string", + "x-ms-enum": { + "name": "EncryptionAtRestType", + "modelAsString": true + } + }, + "keyUri": { + "description": "Key Vault Key URI", + "type": "string" + }, + "subscriptionId": { + "description": "Key Vault Subscription Id", + "type": "string" + }, + "lastUpdateStatus": { + "enum": [ + "Invalid", + "NotEnabled", + "PartiallySucceeded", + "PartiallyFailed", + "Failed", + "Succeeded", + "Initialized", + "FirstInitialization" + ], + "type": "string", + "x-ms-enum": { + "name": "LastUpdateStatus", + "modelAsString": true + } + }, + "infrastructureEncryptionState": { + "enum": [ + "Invalid", + "Disabled", + "Enabled" + ], + "type": "string", + "x-ms-enum": { + "name": "InfrastructureEncryptionState", + "modelAsString": true + } + } + } + }, + "BackupResourceEncryptionConfigExtended": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/BackupResourceEncryptionConfig" + } + ], + "properties": { + "userAssignedIdentity": { + "description": "User Assigned Identity Id", + "type": "string" + }, + "useSystemAssignedIdentity": { + "description": "bool to indicate whether to use system Assigned Identity or not", + "type": "boolean" + } + } + }, + "BackupResourceEncryptionConfigExtendedResource": { + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/BackupResourceEncryptionConfigExtended", + "description": "BackupResourceEncryptionConfigExtendedResource properties" + } + } + }, + "BackupResourceEncryptionConfigResource": { + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/BackupResourceEncryptionConfig", + "description": "BackupResourceEncryptionConfigResource properties" + } + } + }, + "PrivateEndpoint": { + "description": "The Private Endpoint network resource that is linked to the Private Endpoint connection", + "type": "object", + "properties": { + "id": { + "description": "Gets or sets id", + "type": "string" + } + } + }, + "PrivateEndpointConnection": { + "description": "Private Endpoint Connection Response Properties", + "type": "object", + "properties": { + "provisioningState": { + "description": "Gets or sets provisioning state of the private endpoint connection", + "enum": [ + "Succeeded", + "Deleting", + "Failed", + "Pending" + ], + "type": "string", + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpoint", + "description": "Gets or sets private endpoint associated with the private endpoint connection" + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionState", + "description": "Gets or sets private link service connection state" + } + } + }, + "PrivateEndpointConnectionResource": { + "description": "Private Endpoint Connection Response Properties", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnection", + "description": "PrivateEndpointConnectionResource properties" + } + } + }, + "PrivateLinkServiceConnectionState": { + "description": "Private Link Service Connection State", + "type": "object", + "properties": { + "status": { + "description": "Gets or sets the status", + "enum": [ + "Pending", + "Approved", + "Rejected", + "Disconnected" + ], + "type": "string", + "x-ms-enum": { + "name": "PrivateEndpointConnectionStatus", + "modelAsString": true + } + }, + "description": { + "description": "Gets or sets description", + "type": "string" + }, + "actionRequired": { + "description": "Gets or sets actions required", + "type": "string" + } + } + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "type": "object", + "$ref": "#/definitions/CloudErrorBody", + "description": "The error object." + } + }, + "description": "An error response from the Container Instance service." + }, + "CloudErrorBody": { + "x-ms-external": true, + "properties": { + "code": { + "readOnly": true, + "type": "string", + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "readOnly": true, + "type": "string", + "description": "A message describing the error, intended to be suitable for display in a user interface." + }, + "target": { + "readOnly": true, + "type": "string", + "description": "The target of the particular error. For example, the name of the property in error." + }, + "details": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/CloudErrorBody" + }, + "description": "A list of additional details about the error." + }, + "additionalInfo": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorAdditionalInfo" + }, + "description": "The error additional info." + } + }, + "description": "An error response from the Container Instance service." + }, + "NewErrorResponse": { + "properties": { + "error": { + "type": "object", + "description": "The error object.", + "properties": { + "code": { + "readOnly": true, + "type": "string", + "description": "The error code." + }, + "message": { + "readOnly": true, + "type": "string", + "description": "The error message." + }, + "target": { + "readOnly": true, + "type": "string", + "description": "The error target." + }, + "details": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/NewErrorResponse" + }, + "description": "The error details." + }, + "additionalInfo": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorAdditionalInfo" + }, + "description": "The error additional info." + } + } + } + }, + "description": "The resource management error response." + }, + "AzureFileshareProtectedItem": { + "description": "Azure File Share workload-specific backup item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectedItem" + } + ], + "properties": { + "friendlyName": { + "description": "Friendly name of the fileshare represented by this backup item.", + "type": "string" + }, + "protectionStatus": { + "description": "Backup status of this backup item.", + "type": "string" + }, + "protectionState": { + "description": "Backup state of this backup item.", + "enum": [ + "Invalid", + "IRPending", + "Protected", + "ProtectionError", + "ProtectionStopped", + "ProtectionPaused" + ], + "type": "string", + "x-ms-enum": { + "name": "ProtectionState", + "modelAsString": true + } + }, + "lastBackupStatus": { + "description": "Last backup operation status. Possible values: Healthy, Unhealthy.", + "type": "string" + }, + "lastBackupTime": { + "format": "date-time", + "description": "Timestamp of the last backup operation on this backup item.", + "type": "string" + }, + "kpisHealths": { + "description": "Health details of different KPIs", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/KPIResourceHealthDetails" + } + }, + "extendedInfo": { + "$ref": "#/definitions/AzureFileshareProtectedItemExtendedInfo", + "description": "Additional information with this backup item." + } + }, + "x-ms-discriminator-value": "AzureFileShareProtectedItem" + }, + "AzureFileshareProtectedItemExtendedInfo": { + "description": "Additional information about Azure File Share backup item.", + "type": "object", + "properties": { + "oldestRecoveryPoint": { + "format": "date-time", + "description": "The oldest backup copy available for this item in the service.", + "type": "string" + }, + "recoveryPointCount": { + "format": "int32", + "description": "Number of available backup copies associated with this backup item.", + "type": "integer" + }, + "policyState": { + "description": "Indicates consistency of policy object and policy applied to this backup item.", + "type": "string" + }, + "resourceState": { + "description": "Indicates the state of this resource. Possible values are from enum ResourceState {Invalid, Active, SoftDeleted, Deleted}", + "type": "string", + "readOnly": true + }, + "resourceStateSyncTime": { + "format": "date-time", + "description": "The resource state sync time for this backup item.", + "type": "string", + "readOnly": true + } + } + }, + "AzureFileShareRecoveryPoint": { + "description": "Azure File Share workload specific backup copy.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RecoveryPoint" + } + ], + "properties": { + "recoveryPointType": { + "description": "Type of the backup copy. Specifies whether it is a crash consistent backup or app consistent.", + "type": "string" + }, + "recoveryPointTime": { + "format": "date-time", + "description": "Time at which this backup copy was created.", + "type": "string" + }, + "fileShareSnapshotUri": { + "description": "Contains Url to the snapshot of fileshare, if applicable", + "type": "string" + }, + "recoveryPointSizeInGB": { + "format": "int32", + "description": "Contains recovery point size", + "type": "integer" + } + }, + "x-ms-discriminator-value": "AzureFileShareRecoveryPoint" + }, + "AzureFileShareRestoreRequest": { + "description": "AzureFileShare Restore Request", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RestoreRequest" + } + ], + "properties": { + "recoveryType": { + "description": "Type of this recovery.", + "enum": [ + "Invalid", + "OriginalLocation", + "AlternateLocation", + "RestoreDisks", + "Offline" + ], + "type": "string", + "x-ms-enum": { + "name": "RecoveryType", + "modelAsString": true + } + }, + "sourceResourceId": { + "description": "Source storage account ARM Id", + "type": "string" + }, + "copyOptions": { + "description": "Options to resolve copy conflicts.", + "enum": [ + "Invalid", + "CreateCopy", + "Skip", + "Overwrite", + "FailOnConflict" + ], + "type": "string", + "x-ms-enum": { + "name": "CopyOptions", + "modelAsString": true + } + }, + "restoreRequestType": { + "description": "Restore Type (FullShareRestore or ItemLevelRestore)", + "enum": [ + "Invalid", + "FullShareRestore", + "ItemLevelRestore" + ], + "type": "string", + "x-ms-enum": { + "name": "RestoreRequestType", + "modelAsString": true + } + }, + "restoreFileSpecs": { + "description": "List of Source Files/Folders(which need to recover) and TargetFolderPath details", + "type": "array", + "items": { + "$ref": "#/definitions/RestoreFileSpecs" + } + }, + "targetDetails": { + "$ref": "#/definitions/TargetAFSRestoreInfo", + "description": "Target File Share Details" + } + }, + "x-ms-discriminator-value": "AzureFileShareRestoreRequest" + }, + "AzureVmWorkloadProtectionPolicy": { + "description": "Azure VM (Mercury) workload-specific backup policy.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionPolicy" + } + ], + "properties": { + "workLoadType": { + "description": "Type of workload for the backup management", + "enum": [ + "Invalid", + "VM", + "FileFolder", + "AzureSqlDb", + "SQLDB", + "Exchange", + "Sharepoint", + "VMwareVM", + "SystemState", + "Client", + "GenericDataSource", + "SQLDataBase", + "AzureFileShare", + "SAPHanaDatabase", + "SAPAseDatabase" + ], + "type": "string", + "x-ms-enum": { + "name": "WorkloadType", + "modelAsString": true + } + }, + "settings": { + "$ref": "#/definitions/Settings", + "description": "Common settings for the backup management" + }, + "subProtectionPolicy": { + "description": "List of sub-protection policies which includes schedule and retention", + "type": "array", + "items": { + "$ref": "#/definitions/SubProtectionPolicy" + } + }, + "makePolicyConsistent": { + "description": "Fix the policy inconsistency", + "type": "boolean" + } + }, + "x-ms-discriminator-value": "AzureWorkload" + }, + "AzureFileShareProtectionPolicy": { + "description": "AzureStorage backup policy.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionPolicy" + } + ], + "properties": { + "workLoadType": { + "description": "Type of workload for the backup management", + "enum": [ + "Invalid", + "VM", + "FileFolder", + "AzureSqlDb", + "SQLDB", + "Exchange", + "Sharepoint", + "VMwareVM", + "SystemState", + "Client", + "GenericDataSource", + "SQLDataBase", + "AzureFileShare", + "SAPHanaDatabase", + "SAPAseDatabase" + ], + "type": "string", + "x-ms-enum": { + "name": "WorkloadType", + "modelAsString": true + } + }, + "schedulePolicy": { + "$ref": "#/definitions/SchedulePolicy", + "description": "Backup schedule specified as part of backup policy." + }, + "retentionPolicy": { + "$ref": "#/definitions/RetentionPolicy", + "description": "Retention policy with the details on backup copy retention ranges." + }, + "timeZone": { + "description": "TimeZone optional input as string. For example: TimeZone = \"Pacific Standard Time\".", + "type": "string" + } + }, + "x-ms-discriminator-value": "AzureStorage" + }, + "AzureIaaSClassicComputeVMProtectedItem": { + "description": "IaaS VM workload-specific backup item representing the Classic Compute VM.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureIaaSVMProtectedItem" + } + ], + "x-ms-discriminator-value": "Microsoft.ClassicCompute/virtualMachines" + }, + "AzureIaaSComputeVMProtectedItem": { + "description": "IaaS VM workload-specific backup item representing the Azure Resource Manager VM.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureIaaSVMProtectedItem" + } + ], + "x-ms-discriminator-value": "Microsoft.Compute/virtualMachines" + }, + "AzureIaaSVMErrorInfo": { + "description": "Azure IaaS VM workload-specific error information.", + "type": "object", + "properties": { + "errorCode": { + "format": "int32", + "description": "Error code.", + "type": "integer", + "readOnly": true + }, + "errorTitle": { + "description": "Title: Typically, the entity that the error pertains to.", + "type": "string", + "readOnly": true + }, + "errorString": { + "description": "Localized error string.", + "type": "string", + "readOnly": true + }, + "recommendations": { + "description": "List of localized recommendations for above error code.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + } + } + }, + "ResourceHealthDetails": { + "description": "Health Details for backup items.", + "type": "object", + "properties": { + "code": { + "format": "int32", + "description": "Health Code", + "type": "integer", + "readOnly": true + }, + "title": { + "description": "Health Title", + "type": "string", + "readOnly": true + }, + "message": { + "description": "Health Message", + "type": "string", + "readOnly": true + }, + "recommendations": { + "description": "Health Recommended Actions", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + } + } + }, + "AzureIaaSVMHealthDetails": { + "description": "Azure IaaS VM workload-specific Health Details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ResourceHealthDetails" + } + ] + }, + "AzureIaaSVMJob": { + "description": "Azure IaaS VM workload-specific job object.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Job" + } + ], + "properties": { + "duration": { + "format": "duration", + "description": "Time elapsed during the execution of this job.", + "type": "string" + }, + "actionsInfo": { + "description": "Gets or sets the state/actions applicable on this job like cancel/retry.", + "type": "array", + "items": { + "enum": [ + "Invalid", + "Cancellable", + "Retriable" + ], + "type": "string", + "x-ms-enum": { + "name": "JobSupportedAction", + "modelAsString": false + } + } + }, + "errorDetails": { + "description": "Error details on execution of this job.", + "type": "array", + "items": { + "$ref": "#/definitions/AzureIaaSVMErrorInfo" + } + }, + "virtualMachineVersion": { + "description": "Specifies whether the backup item is a Classic or an Azure Resource Manager VM.", + "type": "string" + }, + "extendedInfo": { + "$ref": "#/definitions/AzureIaaSVMJobExtendedInfo", + "description": "Additional information for this job." + } + }, + "x-ms-discriminator-value": "AzureIaaSVMJob" + }, + "AzureIaaSVMJobExtendedInfo": { + "description": "Azure IaaS VM workload-specific additional information for job.", + "type": "object", + "properties": { + "tasksList": { + "description": "List of tasks associated with this job.", + "type": "array", + "items": { + "$ref": "#/definitions/AzureIaaSVMJobTaskDetails" + } + }, + "propertyBag": { + "description": "Job properties.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "internalPropertyBag": { + "description": "Job internal properties.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "progressPercentage": { + "format": "double", + "description": "Indicates progress of the job. Null if it has not started or completed.", + "type": "number" + }, + "estimatedRemainingDuration": { + "description": "Time remaining for execution of this job.", + "type": "string" + }, + "dynamicErrorMessage": { + "description": "Non localized error message on job execution.", + "type": "string" + } + } + }, + "AzureIaaSVMJobTaskDetails": { + "description": "Azure IaaS VM workload-specific job task details.", + "type": "object", + "properties": { + "taskId": { + "description": "The task display name.", + "type": "string" + }, + "startTime": { + "format": "date-time", + "description": "The start time.", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "The end time.", + "type": "string" + }, + "instanceId": { + "description": "The instanceId.", + "type": "string" + }, + "duration": { + "format": "duration", + "description": "Time elapsed for task.", + "type": "string" + }, + "status": { + "description": "The status.", + "type": "string" + }, + "progressPercentage": { + "format": "double", + "description": "Progress of the task.", + "type": "number" + }, + "taskExecutionDetails": { + "description": "Details about execution of the task.\r\neg: number of bytes transferred etc", + "type": "string" + } + } + }, + "AzureIaaSVMProtectedItem": { + "description": "IaaS VM workload-specific backup item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectedItem" + } + ], + "properties": { + "friendlyName": { + "description": "Friendly name of the VM represented by this backup item.", + "type": "string" + }, + "virtualMachineId": { + "description": "Fully qualified ARM ID of the virtual machine represented by this item.", + "type": "string" + }, + "protectionStatus": { + "description": "Backup status of this backup item.", + "type": "string" + }, + "protectionState": { + "description": "Backup state of this backup item.", + "enum": [ + "Invalid", + "IRPending", + "Protected", + "ProtectionError", + "ProtectionStopped", + "ProtectionPaused" + ], + "type": "string", + "x-ms-enum": { + "name": "ProtectionState", + "modelAsString": true + } + }, + "healthStatus": { + "description": "Health status of protected item.", + "enum": [ + "Passed", + "ActionRequired", + "ActionSuggested", + "Invalid" + ], + "type": "string", + "x-ms-enum": { + "name": "HealthStatus", + "modelAsString": true + } + }, + "healthDetails": { + "description": "Health details on this backup item.", + "type": "array", + "items": { + "$ref": "#/definitions/AzureIaaSVMHealthDetails" + } + }, + "kpisHealths": { + "description": "Health details of different KPIs", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/KPIResourceHealthDetails" + } + }, + "lastBackupStatus": { + "description": "Last backup operation status.", + "type": "string" + }, + "lastBackupTime": { + "format": "date-time", + "description": "Timestamp of the last backup operation on this backup item.", + "type": "string" + }, + "protectedItemDataId": { + "description": "Data ID of the protected item.", + "type": "string" + }, + "extendedInfo": { + "$ref": "#/definitions/AzureIaaSVMProtectedItemExtendedInfo", + "description": "Additional information for this backup item." + }, + "extendedProperties": { + "$ref": "#/definitions/ExtendedProperties" + } + }, + "x-ms-discriminator-value": "AzureIaaSVMProtectedItem" + }, + "AzureIaaSVMProtectedItemExtendedInfo": { + "description": "Additional information on Azure IaaS VM specific backup item.", + "type": "object", + "properties": { + "oldestRecoveryPoint": { + "format": "date-time", + "description": "The oldest backup copy available for this backup item.", + "type": "string" + }, + "recoveryPointCount": { + "format": "int32", + "description": "Number of backup copies available for this backup item.", + "type": "integer" + }, + "policyInconsistent": { + "description": "Specifies if backup policy associated with the backup item is inconsistent.", + "type": "boolean" + } + } + }, + "AzureIaaSVMProtectionPolicy": { + "description": "IaaS VM workload-specific backup policy.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionPolicy" + } + ], + "properties": { + "instantRPDetails": { + "$ref": "#/definitions/InstantRPAdditionalDetails" + }, + "schedulePolicy": { + "$ref": "#/definitions/SchedulePolicy", + "description": "Backup schedule specified as part of backup policy." + }, + "retentionPolicy": { + "$ref": "#/definitions/RetentionPolicy", + "description": "Retention policy with the details on backup copy retention ranges." + }, + "instantRpRetentionRangeInDays": { + "format": "int32", + "description": "Instant RP retention policy range in days", + "type": "integer" + }, + "timeZone": { + "description": "TimeZone optional input as string. For example: TimeZone = \"Pacific Standard Time\".", + "type": "string" + } + }, + "x-ms-discriminator-value": "AzureIaasVM" + }, + "AzureSqlProtectedItem": { + "description": "Azure SQL workload-specific backup item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectedItem" + } + ], + "properties": { + "protectedItemDataId": { + "description": "Internal ID of a backup item. Used by Azure SQL Backup engine to contact Recovery Services.", + "type": "string" + }, + "protectionState": { + "description": "Backup state of the backed up item.", + "enum": [ + "Invalid", + "IRPending", + "Protected", + "ProtectionError", + "ProtectionStopped", + "ProtectionPaused" + ], + "type": "string", + "x-ms-enum": { + "name": "ProtectedItemState", + "modelAsString": true + } + }, + "extendedInfo": { + "$ref": "#/definitions/AzureSqlProtectedItemExtendedInfo", + "description": "Additional information for this backup item." + } + }, + "x-ms-discriminator-value": "Microsoft.Sql/servers/databases" + }, + "AzureSqlProtectedItemExtendedInfo": { + "description": "Additional information on Azure Sql specific protected item.", + "type": "object", + "properties": { + "oldestRecoveryPoint": { + "format": "date-time", + "description": "The oldest backup copy available for this item in the service.", + "type": "string" + }, + "recoveryPointCount": { + "format": "int32", + "description": "Number of available backup copies associated with this backup item.", + "type": "integer" + }, + "policyState": { + "description": "State of the backup policy associated with this backup item.", + "type": "string" + } + } + }, + "AzureStorageErrorInfo": { + "description": "Azure storage specific error information", + "type": "object", + "properties": { + "errorCode": { + "format": "int32", + "description": "Error code.", + "type": "integer" + }, + "errorString": { + "description": "Localized error string.", + "type": "string" + }, + "recommendations": { + "description": "List of localized recommendations for above error code.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "AzureSqlProtectionPolicy": { + "description": "Azure SQL workload-specific backup policy.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionPolicy" + } + ], + "properties": { + "retentionPolicy": { + "$ref": "#/definitions/RetentionPolicy", + "description": "Retention policy details." + } + }, + "x-ms-discriminator-value": "AzureSql" + }, + "AzureStorageJob": { + "description": "Azure storage specific job.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Job" + } + ], + "properties": { + "duration": { + "format": "duration", + "description": "Time elapsed during the execution of this job.", + "type": "string" + }, + "actionsInfo": { + "description": "Gets or sets the state/actions applicable on this job like cancel/retry.", + "type": "array", + "items": { + "enum": [ + "Invalid", + "Cancellable", + "Retriable" + ], + "type": "string", + "x-ms-enum": { + "name": "JobSupportedAction", + "modelAsString": false + } + } + }, + "errorDetails": { + "description": "Error details on execution of this job.", + "type": "array", + "items": { + "$ref": "#/definitions/AzureStorageErrorInfo" + } + }, + "storageAccountName": { + "description": "Specifies friendly name of the storage account.", + "type": "string" + }, + "storageAccountVersion": { + "description": "Specifies whether the Storage account is a Classic or an Azure Resource Manager Storage account.", + "type": "string" + }, + "extendedInfo": { + "$ref": "#/definitions/AzureStorageJobExtendedInfo", + "description": "Additional information about the job." + } + }, + "x-ms-discriminator-value": "AzureStorageJob" + }, + "AzureStorageJobExtendedInfo": { + "description": "Azure Storage workload-specific additional information for job.", + "type": "object", + "properties": { + "tasksList": { + "description": "List of tasks for this job", + "type": "array", + "items": { + "$ref": "#/definitions/AzureStorageJobTaskDetails" + } + }, + "propertyBag": { + "description": "Job properties.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "dynamicErrorMessage": { + "description": "Non localized error message on job execution.", + "type": "string" + } + } + }, + "AzureStorageJobTaskDetails": { + "description": "Azure storage workload specific job task details.", + "type": "object", + "properties": { + "taskId": { + "description": "The task display name.", + "type": "string" + }, + "status": { + "description": "The status.", + "type": "string" + } + } + }, + "AzureVmWorkloadProtectedItem": { + "description": "Azure VM workload-specific protected item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectedItem" + } + ], + "properties": { + "friendlyName": { + "description": "Friendly name of the DB represented by this backup item.", + "type": "string" + }, + "serverName": { + "description": "Host/Cluster Name for instance or AG", + "type": "string" + }, + "parentName": { + "description": "Parent name of the DB such as Instance or Availability Group.", + "type": "string" + }, + "parentType": { + "description": "Parent type of protected item, example: for a DB, standalone server or distributed", + "type": "string" + }, + "protectionStatus": { + "description": "Backup status of this backup item.", + "type": "string" + }, + "protectionState": { + "description": "Backup state of this backup item.", + "enum": [ + "Invalid", + "IRPending", + "Protected", + "ProtectionError", + "ProtectionStopped", + "ProtectionPaused" + ], + "type": "string", + "x-ms-enum": { + "name": "ProtectionState", + "modelAsString": true + } + }, + "lastBackupStatus": { + "description": "Last backup operation status. Possible values: Healthy, Unhealthy.", + "enum": [ + "Invalid", + "Healthy", + "Unhealthy", + "IRPending" + ], + "type": "string", + "x-ms-enum": { + "name": "LastBackupStatus", + "modelAsString": true + } + }, + "lastBackupTime": { + "format": "date-time", + "description": "Timestamp of the last backup operation on this backup item.", + "type": "string" + }, + "lastBackupErrorDetail": { + "$ref": "#/definitions/ErrorDetail", + "description": "Error details in last backup" + }, + "protectedItemDataSourceId": { + "description": "Data ID of the protected item.", + "type": "string" + }, + "protectedItemHealthStatus": { + "description": "Health status of the backup item, evaluated based on last heartbeat received", + "enum": [ + "Invalid", + "Healthy", + "Unhealthy", + "NotReachable", + "IRPending" + ], + "type": "string", + "x-ms-enum": { + "name": "ProtectedItemHealthStatus", + "modelAsString": true + } + }, + "extendedInfo": { + "$ref": "#/definitions/AzureVmWorkloadProtectedItemExtendedInfo", + "description": "Additional information for this backup item." + }, + "kpisHealths": { + "description": "Health details of different KPIs", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/KPIResourceHealthDetails" + } + } + }, + "x-ms-discriminator-value": "AzureVmWorkloadProtectedItem" + }, + "AzureVmWorkloadProtectedItemExtendedInfo": { + "description": "Additional information on Azure Workload for SQL specific backup item.", + "type": "object", + "properties": { + "oldestRecoveryPoint": { + "format": "date-time", + "description": "The oldest backup copy available for this backup item.", + "type": "string" + }, + "recoveryPointCount": { + "format": "int32", + "description": "Number of backup copies available for this backup item.", + "type": "integer" + }, + "policyState": { + "description": "Indicates consistency of policy object and policy applied to this backup item.", + "type": "string" + } + } + }, + "AzureVmWorkloadSAPAseDatabaseProtectedItem": { + "description": "Azure VM workload-specific protected item representing SAP ASE Database.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureVmWorkloadProtectedItem" + } + ], + "x-ms-discriminator-value": "AzureVmWorkloadSAPAseDatabase" + }, + "AzureVmWorkloadSAPHanaDatabaseProtectedItem": { + "description": "Azure VM workload-specific protected item representing SAP HANA Database.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureVmWorkloadProtectedItem" + } + ], + "x-ms-discriminator-value": "AzureVmWorkloadSAPHanaDatabase" + }, + "AzureVmWorkloadSQLDatabaseProtectedItem": { + "description": "Azure VM workload-specific protected item representing SQL Database.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureVmWorkloadProtectedItem" + } + ], + "x-ms-discriminator-value": "AzureVmWorkloadSQLDatabase" + }, + "AzureWorkloadErrorInfo": { + "description": "Azure storage specific error information", + "type": "object", + "properties": { + "errorCode": { + "format": "int32", + "description": "Error code.", + "type": "integer" + }, + "errorString": { + "description": "Localized error string.", + "type": "string" + }, + "errorTitle": { + "description": "Title: Typically, the entity that the error pertains to.", + "type": "string" + }, + "recommendations": { + "description": "List of localized recommendations for above error code.", + "type": "array", + "items": { + "type": "string" + } + }, + "additionalDetails": { + "description": "Additional details for above error code.", + "type": "string" + } + } + }, + "AzureWorkloadJob": { + "description": "Azure storage specific job.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Job" + } + ], + "properties": { + "workloadType": { + "description": "Workload type of the job", + "type": "string" + }, + "duration": { + "format": "duration", + "description": "Time elapsed during the execution of this job.", + "type": "string" + }, + "actionsInfo": { + "description": "Gets or sets the state/actions applicable on this job like cancel/retry.", + "type": "array", + "items": { + "enum": [ + "Invalid", + "Cancellable", + "Retriable" + ], + "type": "string", + "x-ms-enum": { + "name": "JobSupportedAction", + "modelAsString": false + } + } + }, + "errorDetails": { + "description": "Error details on execution of this job.", + "type": "array", + "items": { + "$ref": "#/definitions/AzureWorkloadErrorInfo" + } + }, + "extendedInfo": { + "$ref": "#/definitions/AzureWorkloadJobExtendedInfo", + "description": "Additional information about the job." + } + }, + "x-ms-discriminator-value": "AzureWorkloadJob" + }, + "AzureWorkloadJobExtendedInfo": { + "description": "Azure VM workload-specific additional information for job.", + "type": "object", + "properties": { + "tasksList": { + "description": "List of tasks for this job", + "type": "array", + "items": { + "$ref": "#/definitions/AzureWorkloadJobTaskDetails" + } + }, + "propertyBag": { + "description": "Job properties.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "dynamicErrorMessage": { + "description": "Non localized error message on job execution.", + "type": "string" + } + } + }, + "AzureWorkloadJobTaskDetails": { + "description": "Azure VM workload specific job task details.", + "type": "object", + "properties": { + "taskId": { + "description": "The task display name.", + "type": "string" + }, + "status": { + "description": "The status.", + "type": "string" + } + } + }, + "AzureWorkloadPointInTimeRecoveryPoint": { + "description": "Recovery point specific to PointInTime", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadRecoveryPoint" + } + ], + "properties": { + "timeRanges": { + "description": "List of log ranges", + "type": "array", + "items": { + "$ref": "#/definitions/PointInTimeRange" + } + } + }, + "x-ms-discriminator-value": "AzureWorkloadPointInTimeRecoveryPoint" + }, + "AzureWorkloadPointInTimeRestoreRequest": { + "description": "AzureWorkload SAP Hana -specific restore. Specifically for PointInTime/Log restore", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadRestoreRequest" + } + ], + "properties": { + "pointInTime": { + "format": "date-time", + "description": "PointInTime value", + "type": "string" + } + }, + "x-ms-discriminator-value": "AzureWorkloadPointInTimeRestoreRequest" + }, + "AzureWorkloadRecoveryPoint": { + "description": "Workload specific recovery point, specifically encapsulates full/diff recovery point", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RecoveryPoint" + } + ], + "properties": { + "recoveryPointTimeInUTC": { + "format": "date-time", + "description": "UTC time at which recovery point was created", + "type": "string" + }, + "type": { + "description": "Type of restore point", + "enum": [ + "Invalid", + "Full", + "Log", + "Differential", + "Incremental" + ], + "type": "string", + "x-ms-enum": { + "name": "RestorePointType", + "modelAsString": true + } + }, + "recoveryPointTierDetails": { + "description": "Recovery point tier information.", + "type": "array", + "items": { + "$ref": "#/definitions/RecoveryPointTierInformation" + } + }, + "recoveryPointMoveReadinessInfo": { + "description": "Eligibility of RP to be moved to another tier", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/RecoveryPointMoveReadinessInfo" + } + } + }, + "x-ms-discriminator-value": "AzureWorkloadRecoveryPoint" + }, + "AzureWorkloadRestoreRequest": { + "description": "AzureWorkload-specific restore.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RestoreRequest" + } + ], + "properties": { + "recoveryType": { + "description": "Type of this recovery.", + "enum": [ + "Invalid", + "OriginalLocation", + "AlternateLocation", + "RestoreDisks", + "Offline" + ], + "type": "string", + "x-ms-enum": { + "name": "RecoveryType", + "modelAsString": true + } + }, + "sourceResourceId": { + "description": "Fully qualified ARM ID of the VM on which workload that was running is being recovered.", + "type": "string" + }, + "propertyBag": { + "description": "Workload specific property bag.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "targetInfo": { + "$ref": "#/definitions/TargetRestoreInfo", + "description": "Details of target database" + }, + "recoveryMode": { + "description": "Defines whether the current recovery mode is file restore or database restore", + "enum": [ + "Invalid", + "FileRecovery", + "WorkloadRecovery" + ], + "type": "string", + "x-ms-enum": { + "name": "RecoveryMode", + "modelAsString": true + } + }, + "targetVirtualMachineId": { + "description": "This is the complete ARM Id of the target VM\r\nFor e.g. /subscriptions/{subId}/resourcegroups/{rg}/provider/Microsoft.Compute/virtualmachines/{vm}", + "type": "string" + } + }, + "x-ms-discriminator-value": "AzureWorkloadRestoreRequest" + }, + "AzureWorkloadSAPHanaPointInTimeRecoveryPoint": { + "description": "Recovery point specific to PointInTime in SAPHana", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadPointInTimeRecoveryPoint" + } + ], + "x-ms-discriminator-value": "AzureWorkloadSAPHanaPointInTimeRecoveryPoint" + }, + "AzureWorkloadSAPHanaPointInTimeRestoreRequest": { + "description": "AzureWorkload SAP Hana -specific restore. Specifically for PointInTime/Log restore", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadSAPHanaRestoreRequest" + } + ], + "properties": { + "pointInTime": { + "format": "date-time", + "description": "PointInTime value", + "type": "string" + } + }, + "x-ms-discriminator-value": "AzureWorkloadSAPHanaPointInTimeRestoreRequest" + }, + "AzureWorkloadSAPHanaRecoveryPoint": { + "description": "SAPHana specific recoverypoint, specifically encapsulates full/diff recoverypoints", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadRecoveryPoint" + } + ], + "x-ms-discriminator-value": "AzureWorkloadSAPHanaRecoveryPoint" + }, + "AzureWorkloadSAPHanaRestoreRequest": { + "description": "AzureWorkload SAP Hana-specific restore.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadRestoreRequest" + } + ], + "x-ms-discriminator-value": "AzureWorkloadSAPHanaRestoreRequest" + }, + "AzureWorkloadSQLPointInTimeRecoveryPoint": { + "description": "Recovery point specific to PointInTime", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadSQLRecoveryPoint" + } + ], + "properties": { + "timeRanges": { + "description": "List of log ranges", + "type": "array", + "items": { + "$ref": "#/definitions/PointInTimeRange" + } + } + }, + "x-ms-discriminator-value": "AzureWorkloadSQLPointInTimeRecoveryPoint" + }, + "AzureWorkloadSQLPointInTimeRestoreRequest": { + "description": "AzureWorkload SQL -specific restore. Specifically for PointInTime/Log restore", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadSQLRestoreRequest" + } + ], + "properties": { + "pointInTime": { + "format": "date-time", + "description": "PointInTime value", + "type": "string" + } + }, + "x-ms-discriminator-value": "AzureWorkloadSQLPointInTimeRestoreRequest" + }, + "AzureWorkloadSQLRecoveryPoint": { + "description": "SQL specific recoverypoint, specifically encapsulates full/diff recoverypoint along with extended info", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadRecoveryPoint" + } + ], + "properties": { + "extendedInfo": { + "$ref": "#/definitions/AzureWorkloadSQLRecoveryPointExtendedInfo", + "description": "Extended Info that provides data directory details. Will be populated in two cases:\r\nWhen a specific recovery point is accessed using GetRecoveryPoint\r\nOr when ListRecoveryPoints is called for Log RP only with ExtendedInfo query filter" + } + }, + "x-ms-discriminator-value": "AzureWorkloadSQLRecoveryPoint" + }, + "AzureWorkloadSQLRecoveryPointExtendedInfo": { + "description": "Extended info class details", + "type": "object", + "properties": { + "dataDirectoryTimeInUTC": { + "format": "date-time", + "description": "UTC time at which data directory info was captured", + "type": "string" + }, + "dataDirectoryPaths": { + "description": "List of data directory paths during restore operation.", + "type": "array", + "items": { + "$ref": "#/definitions/SQLDataDirectory" + } + } + } + }, + "AzureWorkloadSQLRestoreRequest": { + "description": "AzureWorkload SQL -specific restore. Specifically for full/diff restore", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadRestoreRequest" + } + ], + "properties": { + "shouldUseAlternateTargetLocation": { + "description": "Default option set to true. If this is set to false, alternate data directory must be provided", + "type": "boolean" + }, + "isNonRecoverable": { + "description": "SQL specific property where user can chose to set no-recovery when restore operation is tried", + "type": "boolean" + }, + "alternateDirectoryPaths": { + "description": "Data directory details", + "type": "array", + "items": { + "$ref": "#/definitions/SQLDataDirectoryMapping" + } + } + }, + "x-ms-discriminator-value": "AzureWorkloadSQLRestoreRequest" + }, + "BEKDetails": { + "description": "BEK is bitlocker encryption key.", + "type": "object", + "properties": { + "secretUrl": { + "description": "Secret is BEK.", + "type": "string" + }, + "secretVaultId": { + "description": "ID of the Key Vault where this Secret is stored.", + "type": "string" + }, + "secretData": { + "description": "BEK data.", + "type": "string" + } + } + }, + "BMSRPQueryObject": { + "description": "Filters to list backup copies.", + "type": "object", + "properties": { + "startDate": { + "format": "date-time", + "description": "Backup copies created after this time.", + "type": "string" + }, + "endDate": { + "format": "date-time", + "description": "Backup copies created before this time.", + "type": "string" + }, + "restorePointQueryType": { + "description": "RestorePoint type", + "enum": [ + "Invalid", + "Full", + "Log", + "Differential", + "FullAndDifferential", + "All", + "Incremental" + ], + "type": "string", + "x-ms-enum": { + "name": "RestorePointQueryType", + "modelAsString": true + } + }, + "extendedInfo": { + "description": "In Get Recovery Point, it tells whether extended information about recovery point is asked.", + "type": "boolean" + }, + "moveReadyRPOnly": { + "description": "Whether the RP can be moved to another tier", + "type": "boolean" + } + } + }, + "DiskExclusionProperties": { + "type": "object", + "properties": { + "diskLunList": { + "description": "List of Disks' Logical Unit Numbers (LUN) to be used for VM Protection.", + "type": "array", + "items": { + "format": "int32", + "type": "integer" + } + }, + "isInclusionList": { + "description": "Flag to indicate whether DiskLunList is to be included/ excluded from backup.", + "type": "boolean" + } + } + }, + "ClientDiscoveryDisplay": { + "description": "Localized display information of an operation.", + "type": "object", + "properties": { + "provider": { + "description": "Name of the provider for display purposes", + "type": "string" + }, + "resource": { + "description": "ResourceType for which this Operation can be performed.", + "type": "string" + }, + "operation": { + "description": "Operations Name itself.", + "type": "string" + }, + "description": { + "description": "Description of the operation having details of what operation is about.", + "type": "string" + } + } + }, + "ClientDiscoveryForLogSpecification": { + "description": "Class to represent shoebox log specification in json client discovery.", + "type": "object", + "properties": { + "name": { + "description": "Name for shoebox log specification.", + "type": "string" + }, + "displayName": { + "description": "Localized display name", + "type": "string" + }, + "blobDuration": { + "description": "blob duration of shoebox log specification", + "type": "string" + } + } + }, + "ClientDiscoveryForProperties": { + "description": "Class to represent shoebox properties in json client discovery.", + "type": "object", + "properties": { + "serviceSpecification": { + "$ref": "#/definitions/ClientDiscoveryForServiceSpecification", + "description": "Operation properties." + } + } + }, + "ClientDiscoveryForServiceSpecification": { + "description": "Class to represent shoebox service specification in json client discovery.", + "type": "object", + "properties": { + "logSpecifications": { + "description": "List of log specifications of this operation.", + "type": "array", + "items": { + "$ref": "#/definitions/ClientDiscoveryForLogSpecification" + } + } + } + }, + "ClientDiscoveryResponse": { + "description": "Operations List response which contains list of available APIs.", + "type": "object", + "properties": { + "value": { + "description": "List of available operations.", + "type": "array", + "items": { + "$ref": "#/definitions/ClientDiscoveryValueForSingleApi" + } + }, + "nextLink": { + "description": "Link to the next chunk of Response.", + "type": "string" + } + } + }, + "ClientDiscoveryValueForSingleApi": { + "description": "Available operation details.", + "type": "object", + "properties": { + "name": { + "description": "Name of the Operation.", + "type": "string" + }, + "display": { + "$ref": "#/definitions/ClientDiscoveryDisplay", + "description": "Contains the localized display information for this particular operation" + }, + "origin": { + "description": "The intended executor of the operation;governs the display of the operation in the RBAC UX and the audit logs UX", + "type": "string" + }, + "properties": { + "$ref": "#/definitions/ClientDiscoveryForProperties", + "description": "ShoeBox properties for the given operation." + } + } + }, + "DiskInformation": { + "description": "Disk information", + "type": "object", + "properties": { + "lun": { + "format": "int32", + "type": "integer" + }, + "name": { + "type": "string" + } + } + }, + "DailyRetentionFormat": { + "description": "Daily retention format.", + "type": "object", + "properties": { + "daysOfTheMonth": { + "description": "List of days of the month.", + "type": "array", + "items": { + "$ref": "#/definitions/Day" + } + } + } + }, + "DailyRetentionSchedule": { + "description": "Daily retention schedule.", + "type": "object", + "properties": { + "retentionTimes": { + "description": "Retention times of retention policy.", + "type": "array", + "items": { + "format": "date-time", + "type": "string" + } + }, + "retentionDuration": { + "$ref": "#/definitions/RetentionDuration", + "description": "Retention duration of retention Policy." + } + } + }, + "Day": { + "description": "Day of the week.", + "type": "object", + "properties": { + "date": { + "format": "int32", + "description": "Date of the month", + "type": "integer" + }, + "isLast": { + "description": "Whether Date is last date of month", + "type": "boolean" + } + } + }, + "DpmErrorInfo": { + "description": "DPM workload-specific error information.", + "type": "object", + "properties": { + "errorString": { + "description": "Localized error string.", + "type": "string" + }, + "recommendations": { + "description": "List of localized recommendations for above error code.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "DpmJob": { + "description": "DPM workload-specific job object.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Job" + } + ], + "properties": { + "duration": { + "format": "duration", + "description": "Time elapsed for job.", + "type": "string" + }, + "dpmServerName": { + "description": "DPM server name managing the backup item or backup job.", + "type": "string" + }, + "containerName": { + "description": "Name of cluster/server protecting current backup item, if any.", + "type": "string" + }, + "containerType": { + "description": "Type of container.", + "type": "string" + }, + "workloadType": { + "description": "Type of backup item.", + "type": "string" + }, + "actionsInfo": { + "description": "The state/actions applicable on this job like cancel/retry.", + "type": "array", + "items": { + "enum": [ + "Invalid", + "Cancellable", + "Retriable" + ], + "type": "string", + "x-ms-enum": { + "name": "JobSupportedAction", + "modelAsString": false + } + } + }, + "errorDetails": { + "description": "The errors.", + "type": "array", + "items": { + "$ref": "#/definitions/DpmErrorInfo" + } + }, + "extendedInfo": { + "$ref": "#/definitions/DpmJobExtendedInfo", + "description": "Additional information for this job." + } + }, + "x-ms-discriminator-value": "DpmJob" + }, + "DpmJobExtendedInfo": { + "description": "Additional information on the DPM workload-specific job.", + "type": "object", + "properties": { + "tasksList": { + "description": "List of tasks associated with this job.", + "type": "array", + "items": { + "$ref": "#/definitions/DpmJobTaskDetails" + } + }, + "propertyBag": { + "description": "The job properties.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "dynamicErrorMessage": { + "description": "Non localized error message on job execution.", + "type": "string" + } + } + }, + "DpmJobTaskDetails": { + "description": "DPM workload-specific job task details.", + "type": "object", + "properties": { + "taskId": { + "description": "The task display name.", + "type": "string" + }, + "startTime": { + "format": "date-time", + "description": "The start time.", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "The end time.", + "type": "string" + }, + "duration": { + "format": "duration", + "description": "Time elapsed for task.", + "type": "string" + }, + "status": { + "description": "The status.", + "type": "string" + } + } + }, + "DPMProtectedItem": { + "description": "Additional information on Backup engine specific backup item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectedItem" + } + ], + "properties": { + "friendlyName": { + "description": "Friendly name of the managed item", + "type": "string" + }, + "backupEngineName": { + "description": "Backup Management server protecting this backup item", + "type": "string" + }, + "protectionState": { + "description": "Protection state of the backup engine", + "enum": [ + "Invalid", + "IRPending", + "Protected", + "ProtectionError", + "ProtectionStopped", + "ProtectionPaused" + ], + "type": "string", + "x-ms-enum": { + "name": "ProtectedItemState", + "modelAsString": true + } + }, + "extendedInfo": { + "$ref": "#/definitions/DPMProtectedItemExtendedInfo", + "description": "Extended info of the backup item." + } + }, + "x-ms-discriminator-value": "DPMProtectedItem" + }, + "DPMProtectedItemExtendedInfo": { + "description": "Additional information of DPM Protected item.", + "type": "object", + "properties": { + "protectableObjectLoadPath": { + "description": "Attribute to provide information on various DBs.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "protected": { + "description": "To check if backup item is disk protected.", + "type": "boolean" + }, + "isPresentOnCloud": { + "description": "To check if backup item is cloud protected.", + "type": "boolean" + }, + "lastBackupStatus": { + "description": "Last backup status information on backup item.", + "type": "string" + }, + "lastRefreshedAt": { + "format": "date-time", + "description": "Last refresh time on backup item.", + "type": "string" + }, + "oldestRecoveryPoint": { + "format": "date-time", + "description": "Oldest cloud recovery point time.", + "type": "string" + }, + "recoveryPointCount": { + "format": "int32", + "description": "cloud recovery point count.", + "type": "integer" + }, + "onPremiseOldestRecoveryPoint": { + "format": "date-time", + "description": "Oldest disk recovery point time.", + "type": "string" + }, + "onPremiseLatestRecoveryPoint": { + "format": "date-time", + "description": "latest disk recovery point time.", + "type": "string" + }, + "onPremiseRecoveryPointCount": { + "format": "int32", + "description": "disk recovery point count.", + "type": "integer" + }, + "isCollocated": { + "description": "To check if backup item is collocated.", + "type": "boolean" + }, + "protectionGroupName": { + "description": "Protection group name of the backup item.", + "type": "string" + }, + "diskStorageUsedInBytes": { + "description": "Used Disk storage in bytes.", + "type": "string" + }, + "totalDiskStorageSizeInBytes": { + "description": "total Disk storage in bytes.", + "type": "string" + } + } + }, + "EncryptionDetails": { + "description": "Details needed if the VM was encrypted at the time of backup.", + "type": "object", + "properties": { + "encryptionEnabled": { + "description": "Identifies whether this backup copy represents an encrypted VM at the time of backup.", + "type": "boolean" + }, + "kekUrl": { + "description": "Key Url.", + "type": "string" + }, + "secretKeyUrl": { + "description": "Secret Url.", + "type": "string" + }, + "kekVaultId": { + "description": "ID of Key Vault where KEK is stored.", + "type": "string" + }, + "secretKeyVaultId": { + "description": "ID of Key Vault where Secret is stored.", + "type": "string" + } + } + }, + "ErrorDetail": { + "description": "Error Detail class which encapsulates Code, Message and Recommendations.", + "type": "object", + "properties": { + "code": { + "description": "Error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "Error Message related to the Code.", + "type": "string", + "readOnly": true + }, + "recommendations": { + "description": "List of recommendation strings.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + } + } + }, + "ExportJobsOperationResultInfo": { + "description": "This class is used to send blob details after exporting jobs.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/OperationResultInfoBase" + } + ], + "properties": { + "blobUrl": { + "description": "URL of the blob into which the serialized string of list of jobs is exported.", + "type": "string" + }, + "blobSasKey": { + "description": "SAS key to access the blob. It expires in 15 mins.", + "type": "string" + }, + "excelFileBlobUrl": { + "description": "URL of the blob into which the ExcelFile is uploaded.", + "type": "string" + }, + "excelFileBlobSasKey": { + "description": "SAS key to access the blob. It expires in 15 mins.", + "type": "string" + } + }, + "x-ms-discriminator-value": "ExportJobsOperationResultInfo" + }, + "ExtendedProperties": { + "description": "Extended Properties for Azure IaasVM Backup.", + "type": "object", + "properties": { + "diskExclusionProperties": { + "$ref": "#/definitions/DiskExclusionProperties", + "description": "Extended Properties for Disk Exclusion." + } + } + }, + "GenericProtectionPolicy": { + "description": "Azure VM (Mercury) workload-specific backup policy.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionPolicy" + } + ], + "properties": { + "subProtectionPolicy": { + "description": "List of sub-protection policies which includes schedule and retention", + "type": "array", + "items": { + "$ref": "#/definitions/SubProtectionPolicy" + } + }, + "timeZone": { + "description": "TimeZone optional input as string. For example: TimeZone = \"Pacific Standard Time\".", + "type": "string" + }, + "fabricName": { + "description": "Name of this policy's fabric.", + "type": "string" + } + }, + "x-ms-discriminator-value": "GenericProtectionPolicy" + }, + "InstantRPAdditionalDetails": { + "type": "object", + "properties": { + "azureBackupRGNamePrefix": { + "type": "string" + }, + "azureBackupRGNameSuffix": { + "type": "string" + } + } + }, + "GenericProtectedItem": { + "description": "Base class for backup items.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectedItem" + } + ], + "properties": { + "friendlyName": { + "description": "Friendly name of the container.", + "type": "string" + }, + "policyState": { + "description": "Indicates consistency of policy object and policy applied to this backup item.", + "type": "string" + }, + "protectionState": { + "description": "Backup state of this backup item.", + "enum": [ + "Invalid", + "IRPending", + "Protected", + "ProtectionError", + "ProtectionStopped", + "ProtectionPaused" + ], + "type": "string", + "x-ms-enum": { + "name": "ProtectionState", + "modelAsString": true + } + }, + "protectedItemId": { + "format": "int64", + "description": "Data Plane Service ID of the protected item.", + "type": "integer" + }, + "sourceAssociations": { + "description": "Loosely coupled (type, value) associations (example - parent of a protected item)", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "fabricName": { + "description": "Name of this backup item's fabric.", + "type": "string" + } + }, + "x-ms-discriminator-value": "GenericProtectedItem" + }, + "GenericRecoveryPoint": { + "description": "Generic backup copy.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RecoveryPoint" + } + ], + "properties": { + "friendlyName": { + "description": "Friendly name of the backup copy.", + "type": "string" + }, + "recoveryPointType": { + "description": "Type of the backup copy.", + "type": "string" + }, + "recoveryPointTime": { + "format": "date-time", + "description": "Time at which this backup copy was created.", + "type": "string" + }, + "recoveryPointAdditionalInfo": { + "description": "Additional information associated with this backup copy.", + "type": "string" + } + }, + "x-ms-discriminator-value": "GenericRecoveryPoint" + }, + "GetProtectedItemQueryObject": { + "description": "Filters to list backup items.", + "type": "object", + "properties": { + "expand": { + "description": "Specifies if the additional information should be provided for this item.", + "type": "string" + } + } + }, + "IaasVMRecoveryPoint": { + "description": "IaaS VM workload specific backup copy.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RecoveryPoint" + } + ], + "properties": { + "recoveryPointType": { + "description": "Type of the backup copy.", + "type": "string" + }, + "recoveryPointTime": { + "format": "date-time", + "description": "Time at which this backup copy was created.", + "type": "string" + }, + "recoveryPointAdditionalInfo": { + "description": "Additional information associated with this backup copy.", + "type": "string" + }, + "sourceVMStorageType": { + "description": "Storage type of the VM whose backup copy is created.", + "type": "string" + }, + "isSourceVMEncrypted": { + "description": "Identifies whether the VM was encrypted when the backup copy is created.", + "type": "boolean" + }, + "keyAndSecret": { + "$ref": "#/definitions/KeyAndSecretDetails", + "description": "Required details for recovering an encrypted VM. Applicable only when IsSourceVMEncrypted is true." + }, + "isInstantIlrSessionActive": { + "description": "Is the session to recover items from this backup copy still active.", + "type": "boolean" + }, + "recoveryPointTierDetails": { + "description": "Recovery point tier information.", + "type": "array", + "items": { + "$ref": "#/definitions/RecoveryPointTierInformation" + } + }, + "isManagedVirtualMachine": { + "description": "Whether VM is with Managed Disks", + "type": "boolean" + }, + "virtualMachineSize": { + "description": "Virtual Machine Size", + "type": "string" + }, + "originalStorageAccountOption": { + "description": "Original Storage Account Option", + "type": "boolean" + }, + "osType": { + "description": "OS type", + "type": "string" + }, + "recoveryPointDiskConfiguration": { + "$ref": "#/definitions/RecoveryPointDiskConfiguration", + "description": "Disk configuration" + }, + "zones": { + "description": "Identifies the zone of the VM at the time of backup. Applicable only for zone-pinned Vms", + "type": "array", + "items": { + "type": "string" + } + }, + "recoveryPointMoveReadinessInfo": { + "description": "Eligibility of RP to be moved to another tier", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/RecoveryPointMoveReadinessInfo" + } + } + }, + "x-ms-discriminator-value": "IaasVMRecoveryPoint" + }, + "IaasVMRestoreRequest": { + "description": "IaaS VM workload-specific restore.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RestoreRequest" + } + ], + "properties": { + "recoveryPointId": { + "description": "ID of the backup copy to be recovered.", + "type": "string" + }, + "recoveryType": { + "description": "Type of this recovery.", + "enum": [ + "Invalid", + "OriginalLocation", + "AlternateLocation", + "RestoreDisks", + "Offline" + ], + "type": "string", + "x-ms-enum": { + "name": "RecoveryType", + "modelAsString": true + } + }, + "sourceResourceId": { + "description": "Fully qualified ARM ID of the VM which is being recovered.", + "type": "string" + }, + "targetVirtualMachineId": { + "description": "This is the complete ARM Id of the VM that will be created.\r\nFor e.g. /subscriptions/{subId}/resourcegroups/{rg}/provider/Microsoft.Compute/virtualmachines/{vm}", + "type": "string" + }, + "targetResourceGroupId": { + "description": "This is the ARM Id of the resource group that you want to create for this Virtual machine and other artifacts.\r\nFor e.g. /subscriptions/{subId}/resourcegroups/{rg}", + "type": "string" + }, + "storageAccountId": { + "description": "Fully qualified ARM ID of the storage account to which the VM has to be restored.", + "type": "string" + }, + "virtualNetworkId": { + "description": "This is the virtual network Id of the vnet that will be attached to the virtual machine.\r\nUser will be validated for join action permissions in the linked access.", + "type": "string" + }, + "subnetId": { + "description": "Subnet ID, is the subnet ID associated with the to be restored VM. For Classic VMs it would be\r\n{VnetID}/Subnet/{SubnetName} and, for the Azure Resource Manager VMs it would be ARM resource ID used to represent\r\nthe subnet.", + "type": "string" + }, + "targetDomainNameId": { + "description": "Fully qualified ARM ID of the domain name to be associated to the VM being restored. This applies only to Classic\r\nVirtual Machines.", + "type": "string" + }, + "region": { + "description": "Region in which the virtual machine is restored.", + "type": "string" + }, + "affinityGroup": { + "description": "Affinity group associated to VM to be restored. Used only for Classic Compute Virtual Machines.", + "type": "string" + }, + "createNewCloudService": { + "description": "Should a new cloud service be created while restoring the VM. If this is false, VM will be restored to the same\r\ncloud service as it was at the time of backup.", + "type": "boolean" + }, + "originalStorageAccountOption": { + "description": "Original Storage Account Option", + "type": "boolean" + }, + "encryptionDetails": { + "$ref": "#/definitions/EncryptionDetails", + "description": "Details needed if the VM was encrypted at the time of backup." + }, + "restoreDiskLunList": { + "description": "List of Disk LUNs for partial restore", + "type": "array", + "items": { + "format": "int32", + "type": "integer" + } + }, + "restoreWithManagedDisks": { + "description": "Flag to denote of an Unmanaged disk VM should be restored with Managed disks.", + "type": "boolean" + }, + "diskEncryptionSetId": { + "description": "DiskEncryptionSet's ID - needed if the VM needs to be encrypted at rest during restore with customer managed key.", + "type": "string" + }, + "zones": { + "description": "Target zone where the VM and its disks should be restored.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "x-ms-discriminator-value": "IaasVMRestoreRequest" + }, + "Job": { + "description": "Defines workload agnostic properties for a job.", + "required": [ + "jobType" + ], + "type": "object", + "properties": { + "entityFriendlyName": { + "description": "Friendly name of the entity on which the current job is executing.", + "type": "string" + }, + "backupManagementType": { + "description": "Backup management type to execute the current job.", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureBackupServer", + "AzureSql", + "AzureStorage", + "AzureWorkload", + "DefaultBackup" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupManagementType", + "modelAsString": true + } + }, + "operation": { + "description": "The operation name.", + "type": "string" + }, + "status": { + "description": "Job status.", + "type": "string" + }, + "startTime": { + "format": "date-time", + "description": "The start time.", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "The end time.", + "type": "string" + }, + "activityId": { + "description": "ActivityId of job.", + "type": "string" + }, + "jobType": { + "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.", + "type": "string" + } + }, + "discriminator": "jobType" + }, + "JobQueryObject": { + "description": "Filters to list the jobs.", + "type": "object", + "properties": { + "status": { + "description": "Status of the job.", + "enum": [ + "Invalid", + "InProgress", + "Completed", + "Failed", + "CompletedWithWarnings", + "Cancelled", + "Cancelling" + ], + "type": "string", + "x-ms-enum": { + "name": "JobStatus", + "modelAsString": true + } + }, + "backupManagementType": { + "description": "Type of backup management for the job.", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureBackupServer", + "AzureSql", + "AzureStorage", + "AzureWorkload", + "DefaultBackup" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupManagementType", + "modelAsString": true + } + }, + "operation": { + "description": "Type of operation.", + "enum": [ + "Invalid", + "Register", + "UnRegister", + "ConfigureBackup", + "Backup", + "Restore", + "DisableBackup", + "DeleteBackupData", + "CrossRegionRestore", + "Undelete", + "UpdateCustomerManagedKey" + ], + "type": "string", + "x-ms-enum": { + "name": "JobOperationType", + "modelAsString": true + } + }, + "jobId": { + "description": "JobID represents the job uniquely.", + "type": "string" + }, + "startTime": { + "format": "date-time", + "description": "Job has started at this time. Value is in UTC.", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "Job has ended at this time. Value is in UTC.", + "type": "string" + } + } + }, + "JobResource": { + "description": "Defines workload agnostic properties for a job.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/Job", + "description": "JobResource properties" + } + } + }, + "JobResourceList": { + "description": "List of Job resources", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ResourceList" + } + ], + "properties": { + "value": { + "description": "List of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/JobResource" + } + } + } + }, + "KEKDetails": { + "description": "KEK is encryption key for BEK.", + "type": "object", + "properties": { + "keyUrl": { + "description": "Key is KEK.", + "type": "string" + }, + "keyVaultId": { + "description": "Key Vault ID where this Key is stored.", + "type": "string" + }, + "keyBackupData": { + "description": "KEK data.", + "type": "string" + } + } + }, + "KeyAndSecretDetails": { + "description": "BEK is bitlocker key.\r\nKEK is encryption key for BEK\r\nIf the VM was encrypted then we will store following details :\r\n1. Secret(BEK) - Url + Backup Data + vaultId.\r\n2. Key(KEK) - Url + Backup Data + vaultId.\r\n3. EncryptionMechanism\r\nBEK and KEK can potentially have different vault ids.", + "type": "object", + "properties": { + "kekDetails": { + "$ref": "#/definitions/KEKDetails", + "description": "KEK is encryption key for BEK." + }, + "bekDetails": { + "$ref": "#/definitions/BEKDetails", + "description": "BEK is bitlocker encryption key." + }, + "encryptionMechanism": { + "description": "Encryption mechanism: None/ SinglePass/ DoublePass", + "type": "string" + } + } + }, + "LogSchedulePolicy": { + "description": "Log policy schedule.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/SchedulePolicy" + } + ], + "properties": { + "scheduleFrequencyInMins": { + "format": "int32", + "description": "Frequency of the log schedule operation of this policy in minutes.", + "type": "integer" + } + }, + "x-ms-discriminator-value": "LogSchedulePolicy" + }, + "LongTermRetentionPolicy": { + "description": "Long term retention policy.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RetentionPolicy" + } + ], + "properties": { + "dailySchedule": { + "$ref": "#/definitions/DailyRetentionSchedule", + "description": "Daily retention schedule of the protection policy." + }, + "weeklySchedule": { + "$ref": "#/definitions/WeeklyRetentionSchedule", + "description": "Weekly retention schedule of the protection policy." + }, + "monthlySchedule": { + "$ref": "#/definitions/MonthlyRetentionSchedule", + "description": "Monthly retention schedule of the protection policy." + }, + "yearlySchedule": { + "$ref": "#/definitions/YearlyRetentionSchedule", + "description": "Yearly retention schedule of the protection policy." + } + }, + "x-ms-discriminator-value": "LongTermRetentionPolicy" + }, + "LongTermSchedulePolicy": { + "description": "Long term policy schedule.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/SchedulePolicy" + } + ], + "x-ms-discriminator-value": "LongTermSchedulePolicy" + }, + "MabErrorInfo": { + "description": "MAB workload-specific error information.", + "type": "object", + "properties": { + "errorString": { + "description": "Localized error string.", + "type": "string", + "readOnly": true + }, + "recommendations": { + "description": "List of localized recommendations.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + } + } + }, + "MabFileFolderProtectedItem": { + "description": "MAB workload-specific backup item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectedItem" + } + ], + "properties": { + "friendlyName": { + "description": "Friendly name of this backup item.", + "type": "string" + }, + "computerName": { + "description": "Name of the computer associated with this backup item.", + "type": "string" + }, + "lastBackupStatus": { + "description": "Status of last backup operation.", + "type": "string" + }, + "lastBackupTime": { + "format": "date-time", + "description": "Timestamp of the last backup operation on this backup item.", + "type": "string" + }, + "protectionState": { + "description": "Protected, ProtectionStopped, IRPending or ProtectionError", + "type": "string" + }, + "deferredDeleteSyncTimeInUTC": { + "format": "int64", + "description": "Sync time for deferred deletion in UTC", + "type": "integer" + }, + "extendedInfo": { + "$ref": "#/definitions/MabFileFolderProtectedItemExtendedInfo", + "description": "Additional information with this backup item." + } + }, + "x-ms-discriminator-value": "MabFileFolderProtectedItem" + }, + "MabFileFolderProtectedItemExtendedInfo": { + "description": "Additional information on the backed up item.", + "type": "object", + "properties": { + "lastRefreshedAt": { + "format": "date-time", + "description": "Last time when the agent data synced to service.", + "type": "string" + }, + "oldestRecoveryPoint": { + "format": "date-time", + "description": "The oldest backup copy available.", + "type": "string" + }, + "recoveryPointCount": { + "format": "int32", + "description": "Number of backup copies associated with the backup item.", + "type": "integer" + } + } + }, + "MabJob": { + "description": "MAB workload-specific job.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Job" + } + ], + "properties": { + "duration": { + "format": "duration", + "description": "Time taken by job to run.", + "type": "string" + }, + "actionsInfo": { + "description": "The state/actions applicable on jobs like cancel/retry.", + "type": "array", + "items": { + "enum": [ + "Invalid", + "Cancellable", + "Retriable" + ], + "type": "string", + "x-ms-enum": { + "name": "JobSupportedAction", + "modelAsString": false + } + } + }, + "mabServerName": { + "description": "Name of server protecting the DS.", + "type": "string" + }, + "mabServerType": { + "description": "Server type of MAB container.", + "enum": [ + "Invalid", + "Unknown", + "IaasVMContainer", + "IaasVMServiceContainer", + "DPMContainer", + "AzureBackupServerContainer", + "MABContainer", + "Cluster", + "AzureSqlContainer", + "Windows", + "VCenter", + "VMAppContainer", + "SQLAGWorkLoadContainer", + "StorageContainer", + "GenericContainer" + ], + "type": "string", + "x-ms-enum": { + "name": "MabServerType", + "modelAsString": true + } + }, + "workloadType": { + "description": "Workload type of backup item.", + "enum": [ + "Invalid", + "VM", + "FileFolder", + "AzureSqlDb", + "SQLDB", + "Exchange", + "Sharepoint", + "VMwareVM", + "SystemState", + "Client", + "GenericDataSource", + "SQLDataBase", + "AzureFileShare", + "SAPHanaDatabase", + "SAPAseDatabase" + ], + "type": "string", + "x-ms-enum": { + "name": "WorkloadType", + "modelAsString": true + } + }, + "errorDetails": { + "description": "The errors.", + "type": "array", + "items": { + "$ref": "#/definitions/MabErrorInfo" + } + }, + "extendedInfo": { + "$ref": "#/definitions/MabJobExtendedInfo", + "description": "Additional information on the job." + } + }, + "x-ms-discriminator-value": "MabJob" + }, + "MabJobExtendedInfo": { + "description": "Additional information for the MAB workload-specific job.", + "type": "object", + "properties": { + "tasksList": { + "description": "List of tasks for this job.", + "type": "array", + "items": { + "$ref": "#/definitions/MabJobTaskDetails" + } + }, + "propertyBag": { + "description": "The job properties.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "dynamicErrorMessage": { + "description": "Non localized error message specific to this job.", + "type": "string" + } + } + }, + "MabJobTaskDetails": { + "description": "MAB workload-specific job task details.", + "type": "object", + "properties": { + "taskId": { + "description": "The task display name.", + "type": "string" + }, + "startTime": { + "format": "date-time", + "description": "The start time.", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "The end time.", + "type": "string" + }, + "duration": { + "format": "duration", + "description": "Time elapsed for task.", + "type": "string" + }, + "status": { + "description": "The status.", + "type": "string" + } + } + }, + "MabProtectionPolicy": { + "description": "Mab container-specific backup policy.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionPolicy" + } + ], + "properties": { + "schedulePolicy": { + "$ref": "#/definitions/SchedulePolicy", + "description": "Backup schedule of backup policy." + }, + "retentionPolicy": { + "$ref": "#/definitions/RetentionPolicy", + "description": "Retention policy details." + } + }, + "x-ms-discriminator-value": "MAB" + }, + "MonthlyRetentionSchedule": { + "description": "Monthly retention schedule.", + "type": "object", + "properties": { + "retentionScheduleFormatType": { + "description": "Retention schedule format type for monthly retention policy.", + "enum": [ + "Invalid", + "Daily", + "Weekly" + ], + "type": "string", + "x-ms-enum": { + "name": "RetentionScheduleFormat", + "modelAsString": true + } + }, + "retentionScheduleDaily": { + "$ref": "#/definitions/DailyRetentionFormat", + "description": "Daily retention format for monthly retention policy." + }, + "retentionScheduleWeekly": { + "$ref": "#/definitions/WeeklyRetentionFormat", + "description": "Weekly retention format for monthly retention policy." + }, + "retentionTimes": { + "description": "Retention times of retention policy.", + "type": "array", + "items": { + "format": "date-time", + "type": "string" + } + }, + "retentionDuration": { + "$ref": "#/definitions/RetentionDuration", + "description": "Retention duration of retention Policy." + } + } + }, + "OperationResultInfo": { + "description": "Operation result info.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/OperationResultInfoBase" + } + ], + "properties": { + "jobList": { + "description": "List of jobs created by this operation.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "x-ms-discriminator-value": "OperationResultInfo" + }, + "OperationResultInfoBase": { + "description": "Base class for operation result info.", + "required": [ + "objectType" + ], + "type": "object", + "properties": { + "objectType": { + "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.", + "type": "string" + } + }, + "discriminator": "objectType" + }, + "KPIResourceHealthDetails": { + "description": "KPI Resource Health Details", + "type": "object", + "properties": { + "resourceHealthStatus": { + "description": "Resource Health Status", + "enum": [ + "Healthy", + "TransientDegraded", + "PersistentDegraded", + "TransientUnhealthy", + "PersistentUnhealthy", + "Invalid" + ], + "type": "string", + "x-ms-enum": { + "name": "ResourceHealthStatus", + "modelAsString": true + } + }, + "resourceHealthDetails": { + "description": "Resource Health Status", + "type": "array", + "items": { + "$ref": "#/definitions/ResourceHealthDetails" + } + } + } + }, + "PrepareDataMoveRequest": { + "description": "Prepare DataMove Request", + "required": [ + "targetResourceId", + "targetRegion", + "dataMoveLevel" + ], + "type": "object", + "properties": { + "targetResourceId": { + "description": "ARM Id of target vault", + "type": "string" + }, + "targetRegion": { + "description": "Target Region", + "type": "string" + }, + "dataMoveLevel": { + "description": "DataMove Level", + "enum": [ + "Invalid", + "Vault", + "Container" + ], + "type": "string", + "x-ms-enum": { + "name": "DataMoveLevel", + "modelAsString": true + } + }, + "sourceContainerArmIds": { + "description": "Source Container ArmIds\r\nThis needs to be populated only if DataMoveLevel is set to container", + "type": "array", + "items": { + "type": "string" + } + }, + "ignoreMoved": { + "description": "Ignore the artifacts which are already moved.", + "type": "boolean" + } + } + }, + "PrepareDataMoveResponse": { + "description": "Prepare DataMove Response", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/VaultStorageConfigOperationResultResponse" + } + ], + "properties": { + "correlationId": { + "description": "Co-relationId for move operation", + "type": "string" + }, + "sourceVaultProperties": { + "description": "Source Vault Properties", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "x-ms-discriminator-value": "PrepareDataMoveResponse" + }, + "VaultStorageConfigOperationResultResponse": { + "description": "Operation result response for Vault Storage Config", + "required": [ + "objectType" + ], + "type": "object", + "properties": { + "objectType": { + "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.", + "type": "string" + } + }, + "discriminator": "objectType" + }, + "TriggerDataMoveRequest": { + "description": "Trigger DataMove Request", + "required": [ + "sourceResourceId", + "sourceRegion", + "dataMoveLevel", + "correlationId" + ], + "type": "object", + "properties": { + "sourceResourceId": { + "description": "ARM Id of source vault", + "type": "string" + }, + "sourceRegion": { + "description": "Source Region", + "type": "string" + }, + "dataMoveLevel": { + "description": "DataMove Level", + "enum": [ + "Invalid", + "Vault", + "Container" + ], + "type": "string", + "x-ms-enum": { + "name": "DataMoveLevel", + "modelAsString": true + } + }, + "correlationId": { + "description": "Correlation Id", + "type": "string" + }, + "sourceContainerArmIds": { + "description": "Source Container ArmIds", + "type": "array", + "items": { + "type": "string" + } + }, + "pauseGC": { + "description": "Pause GC", + "type": "boolean" + } + } + }, + "OperationResultInfoBaseResource": { + "description": "Base class for operation result info.", + "allOf": [ + { + "$ref": "#/definitions/OperationWorkerResponse" + } + ], + "properties": { + "operation": { + "$ref": "#/definitions/OperationResultInfoBase", + "description": "OperationResultInfoBaseResource operation" + } + } + }, + "OperationWorkerResponse": { + "description": "This is the base class for operation result responses.", + "type": "object", + "properties": { + "statusCode": { + "description": "HTTP Status Code of the operation.", + "enum": [ + "Continue", + "SwitchingProtocols", + "OK", + "Created", + "Accepted", + "NonAuthoritativeInformation", + "NoContent", + "ResetContent", + "PartialContent", + "MultipleChoices", + "Ambiguous", + "MovedPermanently", + "Moved", + "Found", + "Redirect", + "SeeOther", + "RedirectMethod", + "NotModified", + "UseProxy", + "Unused", + "TemporaryRedirect", + "RedirectKeepVerb", + "BadRequest", + "Unauthorized", + "PaymentRequired", + "Forbidden", + "NotFound", + "MethodNotAllowed", + "NotAcceptable", + "ProxyAuthenticationRequired", + "RequestTimeout", + "Conflict", + "Gone", + "LengthRequired", + "PreconditionFailed", + "RequestEntityTooLarge", + "RequestUriTooLong", + "UnsupportedMediaType", + "RequestedRangeNotSatisfiable", + "ExpectationFailed", + "UpgradeRequired", + "InternalServerError", + "NotImplemented", + "BadGateway", + "ServiceUnavailable", + "GatewayTimeout", + "HttpVersionNotSupported" + ], + "type": "string", + "x-ms-enum": { + "name": "HttpStatusCode", + "modelAsString": false + } + }, + "headers": { + "description": "HTTP headers associated with this operation.", + "type": "object", + "additionalProperties": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + }, + "PointInTimeRange": { + "description": "Provides details for log ranges", + "type": "object", + "properties": { + "startTime": { + "format": "date-time", + "description": "Start time of the time range for log recovery.", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "End time of the time range for log recovery.", + "type": "string" + } + } + }, + "ProtectedItem": { + "description": "Base class for backup items.", + "required": [ + "protectedItemType" + ], + "type": "object", + "properties": { + "protectedItemType": { + "description": "backup item type.", + "type": "string" + }, + "backupManagementType": { + "description": "Type of backup management for the backed up item.", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureBackupServer", + "AzureSql", + "AzureStorage", + "AzureWorkload", + "DefaultBackup" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupManagementType", + "modelAsString": true + } + }, + "workloadType": { + "description": "Type of workload this item represents.", + "enum": [ + "Invalid", + "VM", + "FileFolder", + "AzureSqlDb", + "SQLDB", + "Exchange", + "Sharepoint", + "VMwareVM", + "SystemState", + "Client", + "GenericDataSource", + "SQLDataBase", + "AzureFileShare", + "SAPHanaDatabase", + "SAPAseDatabase" + ], + "type": "string", + "x-ms-enum": { + "name": "DataSourceType", + "modelAsString": true + } + }, + "containerName": { + "description": "Unique name of container", + "type": "string" + }, + "sourceResourceId": { + "description": "ARM ID of the resource to be backed up.", + "type": "string" + }, + "policyId": { + "description": "ID of the backup policy with which this item is backed up.", + "type": "string" + }, + "lastRecoveryPoint": { + "format": "date-time", + "description": "Timestamp when the last (latest) backup copy was created for this backup item.", + "type": "string" + }, + "backupSetName": { + "description": "Name of the backup set the backup item belongs to", + "type": "string" + }, + "createMode": { + "description": "Create mode to indicate recovery of existing soft deleted data source or creation of new data source.", + "enum": [ + "Invalid", + "Default", + "Recover" + ], + "type": "string", + "x-ms-enum": { + "name": "CreateMode", + "modelAsString": true + } + }, + "deferredDeleteTimeInUTC": { + "format": "date-time", + "description": "Time for deferred deletion in UTC", + "type": "string" + }, + "isScheduledForDeferredDelete": { + "description": "Flag to identify whether the DS is scheduled for deferred delete", + "type": "boolean" + }, + "deferredDeleteTimeRemaining": { + "description": "Time remaining before the DS marked for deferred delete is permanently deleted", + "type": "string" + }, + "isDeferredDeleteScheduleUpcoming": { + "description": "Flag to identify whether the deferred deleted DS is to be purged soon", + "type": "boolean" + }, + "isRehydrate": { + "description": "Flag to identify that deferred deleted DS is to be moved into Pause state", + "type": "boolean" + } + }, + "discriminator": "protectedItemType" + }, + "ProtectedItemQueryObject": { + "description": "Filters to list backup items.", + "type": "object", + "properties": { + "healthState": { + "description": "Health State for the backed up item.", + "enum": [ + "Passed", + "ActionRequired", + "ActionSuggested", + "Invalid" + ], + "type": "string", + "x-ms-enum": { + "name": "HealthState", + "modelAsString": true + } + }, + "backupManagementType": { + "description": "Backup management type for the backed up item.", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureBackupServer", + "AzureSql", + "AzureStorage", + "AzureWorkload", + "DefaultBackup" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupManagementType", + "modelAsString": true + } + }, + "itemType": { + "description": "Type of workload this item represents.", + "enum": [ + "Invalid", + "VM", + "FileFolder", + "AzureSqlDb", + "SQLDB", + "Exchange", + "Sharepoint", + "VMwareVM", + "SystemState", + "Client", + "GenericDataSource", + "SQLDataBase", + "AzureFileShare", + "SAPHanaDatabase", + "SAPAseDatabase" + ], + "type": "string", + "x-ms-enum": { + "name": "DataSourceType", + "modelAsString": true + } + }, + "policyName": { + "description": "Backup policy name associated with the backup item.", + "type": "string" + }, + "containerName": { + "description": "Name of the container.", + "type": "string" + }, + "backupEngineName": { + "description": "Backup Engine name", + "type": "string" + }, + "friendlyName": { + "description": "Friendly name of protected item", + "type": "string" + }, + "fabricName": { + "description": "Name of the fabric.", + "type": "string" + }, + "backupSetName": { + "description": "Name of the backup set.", + "type": "string" + } + } + }, + "ProtectedItemResource": { + "description": "Base class for backup items.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ProtectedItem", + "description": "ProtectedItemResource properties" + } + } + }, + "ProtectedItemResourceList": { + "description": "List of ProtectedItem resources", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ResourceList" + } + ], + "properties": { + "value": { + "description": "List of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/ProtectedItemResource" + } + } + } + }, + "ProtectionPolicy": { + "description": "Base class for backup policy. Workload-specific backup policies are derived from this class.", + "required": [ + "backupManagementType" + ], + "type": "object", + "properties": { + "protectedItemsCount": { + "format": "int32", + "description": "Number of items associated with this policy.", + "type": "integer" + }, + "backupManagementType": { + "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.", + "type": "string" + } + }, + "discriminator": "backupManagementType" + }, + "ProtectionPolicyQueryObject": { + "description": "Filters the list backup policies API.", + "type": "object", + "properties": { + "backupManagementType": { + "description": "Backup management type for the backup policy.", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureBackupServer", + "AzureSql", + "AzureStorage", + "AzureWorkload", + "DefaultBackup" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupManagementType", + "modelAsString": true + } + }, + "fabricName": { + "description": "Fabric name for filter", + "type": "string" + }, + "workloadType": { + "description": "Workload type for the backup policy.", + "enum": [ + "Invalid", + "VM", + "FileFolder", + "AzureSqlDb", + "SQLDB", + "Exchange", + "Sharepoint", + "VMwareVM", + "SystemState", + "Client", + "GenericDataSource", + "SQLDataBase", + "AzureFileShare", + "SAPHanaDatabase", + "SAPAseDatabase" + ], + "type": "string", + "x-ms-enum": { + "name": "WorkloadType", + "modelAsString": true + } + } + } + }, + "ProtectionPolicyResource": { + "description": "Base class for backup policy. Workload-specific backup policies are derived from this class.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ProtectionPolicy", + "description": "ProtectionPolicyResource properties" + } + } + }, + "ProtectionPolicyResourceList": { + "description": "List of ProtectionPolicy resources", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ResourceList" + } + ], + "properties": { + "value": { + "description": "List of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/ProtectionPolicyResource" + } + } + } + }, + "RecoveryPoint": { + "description": "Base class for backup copies. Workload-specific backup copies are derived from this class.", + "required": [ + "objectType" + ], + "type": "object", + "properties": { + "objectType": { + "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.", + "type": "string" + } + }, + "discriminator": "objectType" + }, + "RecoveryPointDiskConfiguration": { + "description": "Disk configuration", + "type": "object", + "properties": { + "numberOfDisksIncludedInBackup": { + "format": "int32", + "description": "Number of disks included in backup", + "type": "integer" + }, + "numberOfDisksAttachedToVm": { + "format": "int32", + "description": "Number of disks attached to the VM", + "type": "integer" + }, + "includedDiskList": { + "description": "Information of disks included in backup", + "type": "array", + "items": { + "$ref": "#/definitions/DiskInformation" + } + }, + "excludedDiskList": { + "description": "Information of disks excluded from backup", + "type": "array", + "items": { + "$ref": "#/definitions/DiskInformation" + } + } + } + }, + "RecoveryPointResource": { + "description": "Base class for backup copies. Workload-specific backup copies are derived from this class.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/RecoveryPoint", + "description": "RecoveryPointResource properties" + } + } + }, + "RecoveryPointResourceList": { + "description": "List of RecoveryPoint resources", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ResourceList" + } + ], + "properties": { + "value": { + "description": "List of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/RecoveryPointResource" + } + } + } + }, + "RecoveryPointTierInformation": { + "description": "Recovery point tier information.", + "type": "object", + "properties": { + "type": { + "description": "Recovery point tier type.", + "enum": [ + "Invalid", + "InstantRP", + "HardenedRP", + "ArchivedRP" + ], + "type": "string", + "x-ms-enum": { + "name": "RecoveryPointTierType", + "modelAsString": false + } + }, + "status": { + "description": "Recovery point tier status.", + "enum": [ + "Invalid", + "Valid", + "Disabled", + "Deleted", + "Rehydrated" + ], + "type": "string", + "x-ms-enum": { + "name": "RecoveryPointTierStatus", + "modelAsString": false + } + }, + "extendedInfo": { + "description": "Recovery point tier status.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "Resource": { + "description": "ARM Resource.", + "type": "object", + "properties": { + "id": { + "description": "Resource Id represents the complete path to the resource.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Resource name associated with the resource.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Resource type represents the complete path of the form Namespace/ResourceType/ResourceType/...", + "type": "string", + "readOnly": true + }, + "location": { + "description": "Resource location.", + "type": "string" + }, + "tags": { + "description": "Resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "eTag": { + "description": "Optional ETag.", + "type": "string" + } + }, + "x-ms-azure-resource": true + }, + "ResourceList": { + "description": "Base for all lists of resources.", + "type": "object", + "properties": { + "nextLink": { + "description": "The uri to fetch the next page of resources. Call ListNext() fetches next page of resources.", + "type": "string" + } + } + }, + "RestoreFileSpecs": { + "description": "Restore file specs like file path, type and target folder path info.", + "type": "object", + "properties": { + "path": { + "description": "Source File/Folder path", + "type": "string" + }, + "fileSpecType": { + "description": "Indicates what the Path variable stands for", + "type": "string" + }, + "targetFolderPath": { + "description": "Destination folder path in target FileShare", + "type": "string" + } + } + }, + "RestoreRequest": { + "description": "Base class for restore request. Workload-specific restore requests are derived from this class.", + "required": [ + "objectType" + ], + "type": "object", + "properties": { + "objectType": { + "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.", + "type": "string" + } + }, + "discriminator": "objectType" + }, + "RestoreRequestResource": { + "description": "Base class for restore request. Workload-specific restore requests are derived from this class.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/RestoreRequest", + "description": "RestoreRequestResource properties" + } + } + }, + "RetentionDuration": { + "description": "Retention duration.", + "type": "object", + "properties": { + "count": { + "format": "int32", + "description": "Count of duration types. Retention duration is obtained by the counting the duration type Count times.\r\nFor example, when Count = 3 and DurationType = Weeks, retention duration will be three weeks.", + "type": "integer" + }, + "durationType": { + "description": "Retention duration type of retention policy.", + "enum": [ + "Invalid", + "Days", + "Weeks", + "Months", + "Years" + ], + "type": "string", + "x-ms-enum": { + "name": "RetentionDurationType", + "modelAsString": true + } + } + } + }, + "RetentionPolicy": { + "description": "Base class for retention policy.", + "required": [ + "retentionPolicyType" + ], + "type": "object", + "properties": { + "retentionPolicyType": { + "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.", + "type": "string" + } + }, + "discriminator": "retentionPolicyType" + }, + "SchedulePolicy": { + "description": "Base class for backup schedule.", + "required": [ + "schedulePolicyType" + ], + "type": "object", + "properties": { + "schedulePolicyType": { + "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.", + "type": "string" + } + }, + "discriminator": "schedulePolicyType" + }, + "Settings": { + "description": "Common settings field for backup management", + "type": "object", + "properties": { + "timeZone": { + "description": "TimeZone optional input as string. For example: TimeZone = \"Pacific Standard Time\".", + "type": "string" + }, + "issqlcompression": { + "description": "SQL compression flag", + "type": "boolean" + }, + "isCompression": { + "description": "Workload compression flag. This has been added so that 'isSqlCompression'\r\nwill be deprecated once clients upgrade to consider this flag.", + "type": "boolean" + } + } + }, + "SimpleRetentionPolicy": { + "description": "Simple policy retention.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RetentionPolicy" + } + ], + "properties": { + "retentionDuration": { + "$ref": "#/definitions/RetentionDuration", + "description": "Retention duration of the protection policy." + } + }, + "x-ms-discriminator-value": "SimpleRetentionPolicy" + }, + "SimpleSchedulePolicy": { + "description": "Simple policy schedule.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/SchedulePolicy" + } + ], + "properties": { + "scheduleRunFrequency": { + "description": "Frequency of the schedule operation of this policy.", + "enum": [ + "Invalid", + "Daily", + "Weekly" + ], + "type": "string", + "x-ms-enum": { + "name": "ScheduleRunType", + "modelAsString": true + } + }, + "scheduleRunDays": { + "description": "List of days of week this schedule has to be run.", + "type": "array", + "items": { + "enum": [ + "Sunday", + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday" + ], + "type": "string", + "x-ms-enum": { + "name": "DayOfWeek", + "modelAsString": false + } + } + }, + "scheduleRunTimes": { + "description": "List of times of day this schedule has to be run.", + "type": "array", + "items": { + "format": "date-time", + "type": "string" + } + }, + "scheduleWeeklyFrequency": { + "format": "int32", + "description": "At every number weeks this schedule has to be run.", + "type": "integer" + } + }, + "x-ms-discriminator-value": "SimpleSchedulePolicy" + }, + "SubProtectionPolicy": { + "description": "Sub-protection policy which includes schedule and retention", + "type": "object", + "properties": { + "policyType": { + "description": "Type of backup policy type", + "enum": [ + "Invalid", + "Full", + "Differential", + "Log", + "CopyOnlyFull", + "Incremental" + ], + "type": "string", + "x-ms-enum": { + "name": "PolicyType", + "modelAsString": true + } + }, + "schedulePolicy": { + "$ref": "#/definitions/SchedulePolicy", + "description": "Backup schedule specified as part of backup policy." + }, + "retentionPolicy": { + "$ref": "#/definitions/RetentionPolicy", + "description": "Retention policy with the details on backup copy retention ranges." + } + } + }, + "SQLDataDirectory": { + "description": "SQLDataDirectory info", + "type": "object", + "properties": { + "type": { + "description": "Type of data directory mapping", + "enum": [ + "Invalid", + "Data", + "Log" + ], + "type": "string", + "x-ms-enum": { + "name": "SQLDataDirectoryType", + "modelAsString": true + } + }, + "path": { + "description": "File path", + "type": "string" + }, + "logicalName": { + "description": "Logical name of the file", + "type": "string" + } + } + }, + "SQLDataDirectoryMapping": { + "description": "Encapsulates information regarding data directory", + "type": "object", + "properties": { + "mappingType": { + "description": "Type of data directory mapping", + "enum": [ + "Invalid", + "Data", + "Log" + ], + "type": "string", + "x-ms-enum": { + "name": "SQLDataDirectoryType", + "modelAsString": true + } + }, + "sourceLogicalName": { + "description": "Restore source logical name path", + "type": "string" + }, + "sourcePath": { + "description": "Restore source path", + "type": "string" + }, + "targetPath": { + "description": "Target path", + "type": "string" + } + } + }, + "TargetAFSRestoreInfo": { + "description": "Target Azure File Share Info.", + "type": "object", + "properties": { + "name": { + "description": "File share name", + "type": "string" + }, + "targetResourceId": { + "description": "Target file share resource ARM ID", + "type": "string" + } + } + }, + "TargetRestoreInfo": { + "description": "Details about target workload during restore operation.", + "type": "object", + "properties": { + "overwriteOption": { + "description": "Can Overwrite if Target DataBase already exists", + "enum": [ + "Invalid", + "FailOnConflict", + "Overwrite" + ], + "type": "string", + "x-ms-enum": { + "name": "OverwriteOptions", + "modelAsString": true + } + }, + "containerId": { + "description": "Resource Id name of the container in which Target DataBase resides", + "type": "string" + }, + "databaseName": { + "description": "Database name InstanceName/DataBaseName for SQL or System/DbName for SAP Hana", + "type": "string" + }, + "targetDirectoryForFileRestore": { + "description": "Target directory location for restore as files.", + "type": "string" + } + } + }, + "ValidateIaasVMRestoreOperationRequest": { + "description": "AzureRestoreValidation request.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ValidateRestoreOperationRequest" + } + ], + "x-ms-discriminator-value": "ValidateIaasVMRestoreOperationRequest" + }, + "ValidateOperationRequest": { + "description": "Base class for validate operation request.", + "required": [ + "objectType" + ], + "type": "object", + "properties": { + "objectType": { + "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.", + "type": "string" + } + }, + "discriminator": "objectType" + }, + "ValidateOperationResponse": { + "description": "Base class for validate operation response.", + "type": "object", + "properties": { + "validationResults": { + "description": "Gets the validation result", + "type": "array", + "items": { + "$ref": "#/definitions/ErrorDetail" + } + } + } + }, + "ValidateOperationsResponse": { + "type": "object", + "properties": { + "validateOperationResponse": { + "$ref": "#/definitions/ValidateOperationResponse" + } + } + }, + "ValidateRestoreOperationRequest": { + "description": "AzureRestoreValidation request.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ValidateOperationRequest" + } + ], + "properties": { + "restoreRequest": { + "$ref": "#/definitions/RestoreRequest", + "description": "Sets restore request to be validated" + } + }, + "x-ms-discriminator-value": "ValidateRestoreOperationRequest" + }, + "WeeklyRetentionFormat": { + "description": "Weekly retention format.", + "type": "object", + "properties": { + "daysOfTheWeek": { + "description": "List of days of the week.", + "type": "array", + "items": { + "enum": [ + "Sunday", + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday" + ], + "type": "string", + "x-ms-enum": { + "name": "DayOfWeek", + "modelAsString": false + } + } + }, + "weeksOfTheMonth": { + "description": "List of weeks of month.", + "type": "array", + "items": { + "enum": [ + "First", + "Second", + "Third", + "Fourth", + "Last", + "Invalid" + ], + "type": "string", + "x-ms-enum": { + "name": "WeekOfMonth", + "modelAsString": false + } + } + } + } + }, + "WeeklyRetentionSchedule": { + "description": "Weekly retention schedule.", + "type": "object", + "properties": { + "daysOfTheWeek": { + "description": "List of days of week for weekly retention policy.", + "type": "array", + "items": { + "enum": [ + "Sunday", + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday" + ], + "type": "string", + "x-ms-enum": { + "name": "DayOfWeek", + "modelAsString": false + } + } + }, + "retentionTimes": { + "description": "Retention times of retention policy.", + "type": "array", + "items": { + "format": "date-time", + "type": "string" + } + }, + "retentionDuration": { + "$ref": "#/definitions/RetentionDuration", + "description": "Retention duration of retention Policy." + } + } + }, + "BackupResourceVaultConfigResource": { + "description": "Backup resource vault config details.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/BackupResourceVaultConfig", + "description": "BackupResourceVaultConfigResource properties" + } + } + }, + "BackupResourceVaultConfig": { + "description": "Backup resource vault config details.", + "type": "object", + "properties": { + "storageModelType": { + "description": "Storage type.", + "enum": [ + "Invalid", + "GeoRedundant", + "LocallyRedundant", + "ZoneRedundant", + "ReadAccessGeoZoneRedundant" + ], + "type": "string", + "x-ms-enum": { + "name": "StorageType", + "modelAsString": true + } + }, + "storageType": { + "description": "Storage type.", + "enum": [ + "Invalid", + "GeoRedundant", + "LocallyRedundant", + "ZoneRedundant", + "ReadAccessGeoZoneRedundant" + ], + "type": "string", + "x-ms-enum": { + "name": "StorageType", + "modelAsString": true + } + }, + "storageTypeState": { + "description": "Locked or Unlocked. Once a machine is registered against a resource, the storageTypeState is always Locked.", + "enum": [ + "Invalid", + "Locked", + "Unlocked" + ], + "type": "string", + "x-ms-enum": { + "name": "StorageTypeState", + "modelAsString": true + } + }, + "enhancedSecurityState": { + "description": "Enabled or Disabled.", + "enum": [ + "Invalid", + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "EnhancedSecurityState", + "modelAsString": true + } + }, + "softDeleteFeatureState": { + "description": "Soft Delete feature state", + "enum": [ + "Invalid", + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "SoftDeleteFeatureState", + "modelAsString": true + } + } + } + }, + "YearlyRetentionSchedule": { + "description": "Yearly retention schedule.", + "type": "object", + "properties": { + "retentionScheduleFormatType": { + "description": "Retention schedule format for yearly retention policy.", + "enum": [ + "Invalid", + "Daily", + "Weekly" + ], + "type": "string", + "x-ms-enum": { + "name": "RetentionScheduleFormat", + "modelAsString": true + } + }, + "monthsOfYear": { + "description": "List of months of year of yearly retention policy.", + "type": "array", + "items": { + "enum": [ + "Invalid", + "January", + "February", + "March", + "April", + "May", + "June", + "July", + "August", + "September", + "October", + "November", + "December" + ], + "type": "string", + "x-ms-enum": { + "name": "MonthOfYear", + "modelAsString": false + } + } + }, + "retentionScheduleDaily": { + "$ref": "#/definitions/DailyRetentionFormat", + "description": "Daily retention format for yearly retention policy." + }, + "retentionScheduleWeekly": { + "$ref": "#/definitions/WeeklyRetentionFormat", + "description": "Weekly retention format for yearly retention policy." + }, + "retentionTimes": { + "description": "Retention times of retention policy.", + "type": "array", + "items": { + "format": "date-time", + "type": "string" + } + }, + "retentionDuration": { + "$ref": "#/definitions/RetentionDuration", + "description": "Retention duration of retention Policy." + } + } + }, + "VaultJob": { + "description": "Vault level Job", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Job" + } + ], + "properties": { + "duration": { + "format": "duration", + "description": "Time elapsed during the execution of this job.", + "type": "string" + }, + "actionsInfo": { + "description": "Gets or sets the state/actions applicable on this job like cancel/retry.", + "type": "array", + "items": { + "enum": [ + "Invalid", + "Cancellable", + "Retriable" + ], + "type": "string", + "x-ms-enum": { + "name": "JobSupportedAction", + "modelAsString": false + } + } + }, + "errorDetails": { + "description": "Error details on execution of this job.", + "type": "array", + "items": { + "$ref": "#/definitions/VaultJobErrorInfo" + } + }, + "extendedInfo": { + "$ref": "#/definitions/VaultJobExtendedInfo", + "description": "Additional information about the job." + } + }, + "x-ms-discriminator-value": "VaultJob" + }, + "VaultJobErrorInfo": { + "description": "Vault Job specific error information", + "type": "object", + "properties": { + "errorCode": { + "format": "int32", + "description": "Error code.", + "type": "integer" + }, + "errorString": { + "description": "Localized error string.", + "type": "string" + }, + "recommendations": { + "description": "List of localized recommendations for above error code.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "VaultJobExtendedInfo": { + "description": "Vault Job for CMK - has CMK specific info.", + "type": "object", + "properties": { + "propertyBag": { + "description": "Job properties.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "AzureBackupServerContainer": { + "description": "AzureBackupServer (DPMVenus) workload-specific protection container.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DpmContainer" + } + ], + "x-ms-discriminator-value": "AzureBackupServerContainer" + }, + "AzureBackupServerEngine": { + "description": "Backup engine type when Azure Backup Server is used to manage the backups.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/BackupEngineBase" + } + ], + "x-ms-discriminator-value": "AzureBackupServerEngine" + }, + "AzureFileShareBackupRequest": { + "description": "AzureFileShare workload-specific backup request.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/BackupRequest" + } + ], + "properties": { + "recoveryPointExpiryTimeInUTC": { + "format": "date-time", + "description": "Backup copy will expire after the time specified (UTC).", + "type": "string" + } + }, + "x-ms-discriminator-value": "AzureFileShareBackupRequest" + }, + "AzureFileShareProtectableItem": { + "description": "Protectable item for Azure Fileshare workloads.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/WorkloadProtectableItem" + } + ], + "properties": { + "parentContainerFabricId": { + "description": "Full Fabric ID of container to which this protectable item belongs. For example, ARM ID.", + "type": "string" + }, + "parentContainerFriendlyName": { + "description": "Friendly name of container to which this protectable item belongs.", + "type": "string" + }, + "azureFileShareType": { + "description": "File Share type XSync or XSMB.", + "enum": [ + "Invalid", + "XSMB", + "XSync" + ], + "type": "string", + "x-ms-enum": { + "name": "AzureFileShareType", + "modelAsString": true + } + } + }, + "x-ms-discriminator-value": "AzureFileShare" + }, + "AzureFileShareProvisionILRRequest": { + "description": "Update snapshot Uri with the correct friendly Name of the source Azure file share.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ILRRequest" + } + ], + "properties": { + "recoveryPointId": { + "description": "Recovery point ID.", + "type": "string" + }, + "sourceResourceId": { + "description": "Source Storage account ARM Id", + "type": "string" + } + }, + "x-ms-discriminator-value": "AzureFileShareProvisionILRRequest" + }, + "AzureIaaSClassicComputeVMContainer": { + "description": "IaaS VM workload-specific backup item representing a classic virtual machine.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/IaaSVMContainer" + } + ], + "x-ms-discriminator-value": "Microsoft.ClassicCompute/virtualMachines" + }, + "AzureIaaSClassicComputeVMProtectableItem": { + "description": "IaaS VM workload-specific backup item representing the Classic Compute VM.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/IaaSVMProtectableItem" + } + ], + "x-ms-discriminator-value": "Microsoft.ClassicCompute/virtualMachines" + }, + "AzureIaaSComputeVMContainer": { + "description": "IaaS VM workload-specific backup item representing an Azure Resource Manager virtual machine.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/IaaSVMContainer" + } + ], + "x-ms-discriminator-value": "Microsoft.Compute/virtualMachines" + }, + "AzureIaaSComputeVMProtectableItem": { + "description": "IaaS VM workload-specific backup item representing the Azure Resource Manager VM.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/IaaSVMProtectableItem" + } + ], + "x-ms-discriminator-value": "Microsoft.Compute/virtualMachines" + }, + "AzureSQLAGWorkloadContainerProtectionContainer": { + "description": "Container for SQL workloads under SQL Availability Group.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadContainer" + } + ], + "x-ms-discriminator-value": "SQLAGWorkLoadContainer" + }, + "AzureSqlContainer": { + "description": "Azure Sql workload-specific container.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionContainer" + } + ], + "x-ms-discriminator-value": "AzureSqlContainer" + }, + "AzureStorageContainer": { + "description": "Azure Storage Account workload-specific container.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionContainer" + } + ], + "properties": { + "sourceResourceId": { + "description": "Fully qualified ARM url.", + "type": "string" + }, + "storageAccountVersion": { + "description": "Storage account version.", + "type": "string" + }, + "resourceGroup": { + "description": "Resource group name of Recovery Services Vault.", + "type": "string" + }, + "protectedItemCount": { + "format": "int64", + "description": "Number of items backed up in this container.", + "type": "integer" + } + }, + "x-ms-discriminator-value": "StorageContainer" + }, + "AzureStorageProtectableContainer": { + "description": "Azure Storage-specific protectable containers", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectableContainer" + } + ], + "x-ms-discriminator-value": "StorageContainer" + }, + "AzureVMAppContainerProtectableContainer": { + "description": "Azure workload-specific container", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectableContainer" + } + ], + "x-ms-discriminator-value": "VMAppContainer" + }, + "AzureVMAppContainerProtectionContainer": { + "description": "Container for SQL workloads under Azure Virtual Machines.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadContainer" + } + ], + "x-ms-discriminator-value": "VMAppContainer" + }, + "AzureVmWorkloadItem": { + "description": "Azure VM workload-specific workload item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/WorkloadItem" + } + ], + "properties": { + "parentName": { + "description": "Name for instance or AG", + "type": "string" + }, + "serverName": { + "description": "Host/Cluster Name for instance or AG", + "type": "string" + }, + "isAutoProtectable": { + "description": "Indicates if workload item is auto-protectable", + "type": "boolean" + }, + "subinquireditemcount": { + "format": "int32", + "description": "For instance or AG, indicates number of DB's present", + "type": "integer" + }, + "subWorkloadItemCount": { + "format": "int32", + "description": "For instance or AG, indicates number of DB's to be protected", + "type": "integer" + } + }, + "x-ms-discriminator-value": "AzureVmWorkloadItem" + }, + "AzureVmWorkloadProtectableItem": { + "description": "Azure VM workload-specific protectable item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/WorkloadProtectableItem" + } + ], + "properties": { + "parentName": { + "description": "Name for instance or AG", + "type": "string" + }, + "parentUniqueName": { + "description": "Parent Unique Name is added to provide the service formatted URI Name of the Parent\r\nOnly Applicable for data bases where the parent would be either Instance or a SQL AG.", + "type": "string" + }, + "serverName": { + "description": "Host/Cluster Name for instance or AG", + "type": "string" + }, + "isAutoProtectable": { + "description": "Indicates if protectable item is auto-protectable", + "type": "boolean" + }, + "isAutoProtected": { + "description": "Indicates if protectable item is auto-protected", + "type": "boolean" + }, + "subinquireditemcount": { + "format": "int32", + "description": "For instance or AG, indicates number of DB's present", + "type": "integer" + }, + "subprotectableitemcount": { + "format": "int32", + "description": "For instance or AG, indicates number of DB's to be protected", + "type": "integer" + }, + "prebackupvalidation": { + "$ref": "#/definitions/PreBackupValidation", + "description": "Pre-backup validation for protectable objects" + } + }, + "x-ms-discriminator-value": "AzureVmWorkloadProtectableItem" + }, + "AzureVmWorkloadSAPAseDatabaseWorkloadItem": { + "description": "Azure VM workload-specific workload item representing SAP ASE Database.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureVmWorkloadItem" + } + ], + "x-ms-discriminator-value": "SAPAseDatabase" + }, + "AzureVmWorkloadSAPAseSystemProtectableItem": { + "description": "Azure VM workload-specific protectable item representing SAP ASE System.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureVmWorkloadProtectableItem" + } + ], + "x-ms-discriminator-value": "SAPAseSystem" + }, + "AzureVmWorkloadSAPAseSystemWorkloadItem": { + "description": "Azure VM workload-specific workload item representing SAP ASE System.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureVmWorkloadItem" + } + ], + "x-ms-discriminator-value": "SAPAseSystem" + }, + "AzureVmWorkloadSAPHanaDatabaseProtectableItem": { + "description": "Azure VM workload-specific protectable item representing SAP HANA Database.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureVmWorkloadProtectableItem" + } + ], + "x-ms-discriminator-value": "SAPHanaDatabase" + }, + "AzureVmWorkloadSAPHanaDatabaseWorkloadItem": { + "description": "Azure VM workload-specific workload item representing SAP HANA Database.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureVmWorkloadItem" + } + ], + "x-ms-discriminator-value": "SAPHanaDatabase" + }, + "AzureVmWorkloadSAPHanaSystemProtectableItem": { + "description": "Azure VM workload-specific protectable item representing SAP HANA System.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureVmWorkloadProtectableItem" + } + ], + "x-ms-discriminator-value": "SAPHanaSystem" + }, + "AzureVmWorkloadSAPHanaSystemWorkloadItem": { + "description": "Azure VM workload-specific workload item representing SAP HANA System.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureVmWorkloadItem" + } + ], + "x-ms-discriminator-value": "SAPHanaSystem" + }, + "AzureVmWorkloadSQLAvailabilityGroupProtectableItem": { + "description": "Azure VM workload-specific protectable item representing SQL Availability Group.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureVmWorkloadProtectableItem" + } + ], + "x-ms-discriminator-value": "SQLAvailabilityGroupContainer" + }, + "AzureVmWorkloadSQLDatabaseProtectableItem": { + "description": "Azure VM workload-specific protectable item representing SQL Database.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureVmWorkloadProtectableItem" + } + ], + "x-ms-discriminator-value": "SQLDataBase" + }, + "AzureVmWorkloadSQLDatabaseWorkloadItem": { + "description": "Azure VM workload-specific workload item representing SQL Database.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureVmWorkloadItem" + } + ], + "x-ms-discriminator-value": "SQLDataBase" + }, + "AzureVmWorkloadSQLInstanceProtectableItem": { + "description": "Azure VM workload-specific protectable item representing SQL Instance.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureVmWorkloadProtectableItem" + } + ], + "x-ms-discriminator-value": "SQLInstance" + }, + "AzureVmWorkloadSQLInstanceWorkloadItem": { + "description": "Azure VM workload-specific workload item representing SQL Instance.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureVmWorkloadItem" + } + ], + "properties": { + "dataDirectoryPaths": { + "description": "Data Directory Paths for default directories", + "type": "array", + "items": { + "$ref": "#/definitions/SQLDataDirectory" + } + } + }, + "x-ms-discriminator-value": "SQLInstance" + }, + "AzureWorkloadBackupRequest": { + "description": "AzureWorkload workload-specific backup request.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/BackupRequest" + } + ], + "properties": { + "backupType": { + "description": "Type of backup, viz. Full, Differential, Log or CopyOnlyFull", + "enum": [ + "Invalid", + "Full", + "Differential", + "Log", + "CopyOnlyFull", + "Incremental" + ], + "type": "string", + "x-ms-enum": { + "name": "backupType", + "modelAsString": true + } + }, + "enableCompression": { + "description": "Bool for Compression setting", + "type": "boolean" + }, + "recoveryPointExpiryTimeInUTC": { + "format": "date-time", + "description": "Backup copy will expire after the time specified (UTC).", + "type": "string" + } + }, + "x-ms-discriminator-value": "AzureWorkloadBackupRequest" + }, + "AzureBackupGoalFeatureSupportRequest": { + "description": "Azure backup goal feature specific request.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/FeatureSupportRequest" + } + ], + "x-ms-discriminator-value": "AzureBackupGoals" + }, + "AzureRecoveryServiceVaultProtectionIntent": { + "description": "Azure Recovery Services Vault specific protection intent item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionIntent" + } + ], + "x-ms-discriminator-value": "RecoveryServiceVaultItem" + }, + "AzureResourceProtectionIntent": { + "description": "IaaS VM specific backup protection intent item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionIntent" + } + ], + "properties": { + "friendlyName": { + "description": "Friendly name of the VM represented by this backup item.", + "type": "string" + } + }, + "x-ms-discriminator-value": "AzureResourceItem" + }, + "AzureVMResourceFeatureSupportRequest": { + "description": "AzureResource(IaaS VM) Specific feature support request", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/FeatureSupportRequest" + } + ], + "properties": { + "vmSize": { + "description": "Size of the resource: VM size(A/D series etc) in case of IaasVM", + "type": "string" + }, + "vmSku": { + "description": "SKUs (Premium/Managed etc) in case of IaasVM", + "type": "string" + } + }, + "x-ms-discriminator-value": "AzureVMResourceBackup" + }, + "AzureVMResourceFeatureSupportResponse": { + "description": "Response for feature support requests for Azure IaasVm", + "type": "object", + "properties": { + "supportStatus": { + "description": "Support status of feature", + "enum": [ + "Invalid", + "Supported", + "DefaultOFF", + "DefaultON", + "NotSupported" + ], + "type": "string", + "x-ms-enum": { + "name": "SupportStatus", + "modelAsString": true + } + } + } + }, + "AzureWorkloadAutoProtectionIntent": { + "description": "Azure Recovery Services Vault specific protection intent item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureRecoveryServiceVaultProtectionIntent" + } + ], + "x-ms-discriminator-value": "AzureWorkloadAutoProtectionIntent" + }, + "AzureWorkloadSQLAutoProtectionIntent": { + "description": "Azure Workload SQL Auto Protection intent item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadAutoProtectionIntent" + } + ], + "properties": { + "workloadItemType": { + "description": "Workload item type of the item for which intent is to be set", + "enum": [ + "Invalid", + "SQLInstance", + "SQLDataBase", + "SAPHanaSystem", + "SAPHanaDatabase", + "SAPAseSystem", + "SAPAseDatabase" + ], + "type": "string", + "x-ms-enum": { + "name": "WorkloadItemType", + "modelAsString": true + } + } + }, + "x-ms-discriminator-value": "AzureWorkloadSQLAutoProtectionIntent" + }, + "BackupManagementUsage": { + "description": "Backup management usages of a vault.", + "type": "object", + "properties": { + "unit": { + "description": "Unit of the usage.", + "enum": [ + "Count", + "Bytes", + "Seconds", + "Percent", + "CountPerSecond", + "BytesPerSecond" + ], + "type": "string", + "x-ms-enum": { + "name": "UsagesUnit", + "modelAsString": true + } + }, + "quotaPeriod": { + "description": "Quota period of usage.", + "type": "string" + }, + "nextResetTime": { + "format": "date-time", + "description": "Next reset time of usage.", + "type": "string" + }, + "currentValue": { + "format": "int64", + "description": "Current value of usage.", + "type": "integer" + }, + "limit": { + "format": "int64", + "description": "Limit of usage.", + "type": "integer" + }, + "name": { + "$ref": "#/definitions/NameInfo", + "description": "Name of usage." + } + } + }, + "BackupManagementUsageList": { + "description": "Backup management usage for vault.", + "type": "object", + "properties": { + "value": { + "description": "The list of backup management usages for the given vault.", + "type": "array", + "items": { + "$ref": "#/definitions/BackupManagementUsage" + } + } + } + }, + "BackupStatusRequest": { + "description": "BackupStatus request.", + "type": "object", + "properties": { + "resourceType": { + "description": "Container Type - VM, SQLPaaS, DPM, AzureFileShare...", + "enum": [ + "Invalid", + "VM", + "FileFolder", + "AzureSqlDb", + "SQLDB", + "Exchange", + "Sharepoint", + "VMwareVM", + "SystemState", + "Client", + "GenericDataSource", + "SQLDataBase", + "AzureFileShare", + "SAPHanaDatabase", + "SAPAseDatabase" + ], + "type": "string", + "x-ms-enum": { + "name": "DataSourceType", + "modelAsString": true + } + }, + "resourceId": { + "description": "Entire ARM resource id of the resource", + "type": "string" + }, + "poLogicalName": { + "description": "Protectable Item Logical Name", + "type": "string" + } + } + }, + "BackupStatusResponse": { + "description": "BackupStatus response.", + "type": "object", + "properties": { + "protectionStatus": { + "description": "Specifies whether the container is registered or not", + "enum": [ + "Invalid", + "NotProtected", + "Protecting", + "Protected", + "ProtectionFailed" + ], + "type": "string", + "x-ms-enum": { + "name": "ProtectionStatus", + "modelAsString": true + } + }, + "vaultId": { + "description": "Specifies the arm resource id of the vault", + "type": "string" + }, + "fabricName": { + "description": "Specifies the fabric name - Azure or AD", + "enum": [ + "Invalid", + "Azure" + ], + "type": "string", + "x-ms-enum": { + "name": "FabricName", + "modelAsString": true + } + }, + "containerName": { + "description": "Specifies the product specific container name. E.g. iaasvmcontainer;iaasvmcontainer;csname;vmname.", + "type": "string" + }, + "protectedItemName": { + "description": "Specifies the product specific ds name. E.g. vm;iaasvmcontainer;csname;vmname.", + "type": "string" + }, + "errorCode": { + "description": "ErrorCode in case of intent failed", + "type": "string" + }, + "errorMessage": { + "description": "ErrorMessage in case of intent failed.", + "type": "string" + }, + "policyName": { + "description": "Specifies the policy name which is used for protection", + "type": "string" + }, + "registrationStatus": { + "description": "Container registration status", + "type": "string" + } + } + }, + "BMSBackupSummariesQueryObject": { + "description": "Query parameters to fetch backup summaries.", + "type": "object", + "properties": { + "type": { + "description": "Backup management type for this container.", + "enum": [ + "Invalid", + "BackupProtectedItemCountSummary", + "BackupProtectionContainerCountSummary" + ], + "type": "string", + "x-ms-enum": { + "name": "Type", + "modelAsString": true + } + } + } + }, + "FeatureSupportRequest": { + "description": "Base class for feature request", + "required": [ + "featureType" + ], + "type": "object", + "properties": { + "featureType": { + "description": "backup support feature type.", + "type": "string" + } + }, + "discriminator": "featureType" + }, + "NameInfo": { + "description": "The name of usage.", + "type": "object", + "properties": { + "value": { + "description": "Value of usage.", + "type": "string" + }, + "localizedValue": { + "description": "Localized value of usage.", + "type": "string" + } + } + }, + "PreValidateEnableBackupRequest": { + "description": "Contract to validate if backup can be enabled on the given resource in a given vault and given configuration.\r\nIt will validate followings\r\n1. Vault capacity\r\n2. VM is already protected\r\n3. Any VM related configuration passed in properties.", + "type": "object", + "properties": { + "resourceType": { + "description": "ProtectedItem Type- VM, SqlDataBase, AzureFileShare etc", + "enum": [ + "Invalid", + "VM", + "FileFolder", + "AzureSqlDb", + "SQLDB", + "Exchange", + "Sharepoint", + "VMwareVM", + "SystemState", + "Client", + "GenericDataSource", + "SQLDataBase", + "AzureFileShare", + "SAPHanaDatabase", + "SAPAseDatabase" + ], + "type": "string", + "x-ms-enum": { + "name": "DataSourceType", + "modelAsString": true + } + }, + "resourceId": { + "description": "ARM Virtual Machine Id", + "type": "string" + }, + "vaultId": { + "description": "ARM id of the Recovery Services Vault", + "type": "string" + }, + "properties": { + "description": "Configuration of VM if any needs to be validated like OS type etc", + "type": "string" + } + } + }, + "PreValidateEnableBackupResponse": { + "description": "Response contract for enable backup validation request", + "type": "object", + "properties": { + "status": { + "description": "Validation Status", + "enum": [ + "Invalid", + "Succeeded", + "Failed" + ], + "type": "string", + "x-ms-enum": { + "name": "ValidationStatus", + "modelAsString": true + } + }, + "errorCode": { + "description": "Response error code", + "type": "string" + }, + "errorMessage": { + "description": "Response error message", + "type": "string" + }, + "recommendation": { + "description": "Recommended action for user", + "type": "string" + }, + "containerName": { + "description": "Specifies the product specific container name. E.g. iaasvmcontainer;iaasvmcontainer;rgname;vmname. This is required\r\nfor portal", + "type": "string" + }, + "protectedItemName": { + "description": "Specifies the product specific ds name. E.g. vm;iaasvmcontainer;rgname;vmname. This is required for portal", + "type": "string" + } + } + }, + "ProtectionIntent": { + "description": "Base class for backup ProtectionIntent.", + "required": [ + "protectionIntentItemType" + ], + "type": "object", + "properties": { + "protectionIntentItemType": { + "description": "backup protectionIntent type.", + "type": "string" + }, + "backupManagementType": { + "description": "Type of backup management for the backed up item.", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureBackupServer", + "AzureSql", + "AzureStorage", + "AzureWorkload", + "DefaultBackup" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupManagementType", + "modelAsString": true + } + }, + "sourceResourceId": { + "description": "ARM ID of the resource to be backed up.", + "type": "string" + }, + "itemId": { + "description": "ID of the item which is getting protected, In case of Azure Vm , it is ProtectedItemId", + "type": "string" + }, + "policyId": { + "description": "ID of the backup policy with which this item is backed up.", + "type": "string" + }, + "protectionState": { + "description": "Backup state of this backup item.", + "enum": [ + "Invalid", + "NotProtected", + "Protecting", + "Protected", + "ProtectionFailed" + ], + "type": "string", + "x-ms-enum": { + "name": "ProtectionStatus", + "modelAsString": true + } + } + }, + "discriminator": "protectionIntentItemType" + }, + "ProtectionIntentQueryObject": { + "description": "Filters to list protection intent.", + "type": "object", + "properties": { + "backupManagementType": { + "description": "Backup management type for the backed up item", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureBackupServer", + "AzureSql", + "AzureStorage", + "AzureWorkload", + "DefaultBackup" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupManagementType", + "modelAsString": true + } + }, + "itemType": { + "description": "Type of workload this item represents", + "enum": [ + "Invalid", + "SQLInstance", + "SQLAvailabilityGroupContainer" + ], + "type": "string", + "x-ms-enum": { + "name": "IntentItemType", + "modelAsString": true + } + }, + "parentName": { + "description": "Parent name of the intent", + "type": "string" + }, + "itemName": { + "description": "Item name of the intent", + "type": "string" + } + } + }, + "ProtectionIntentResource": { + "description": "Base class for backup ProtectionIntent.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ProtectionIntent", + "description": "ProtectionIntentResource properties" + } + } + }, + "ProtectionIntentResourceList": { + "description": "List of ProtectionIntent resources", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ResourceList" + } + ], + "properties": { + "value": { + "description": "List of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/ProtectionIntentResource" + } + } + } + }, + "AzureWorkloadContainer": { + "description": "Container for the workloads running inside Azure Compute or Classic Compute.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionContainer" + } + ], + "properties": { + "sourceResourceId": { + "description": "ARM ID of the virtual machine represented by this Azure Workload Container", + "type": "string" + }, + "lastUpdatedTime": { + "format": "date-time", + "description": "Time stamp when this container was updated.", + "type": "string" + }, + "extendedInfo": { + "$ref": "#/definitions/AzureWorkloadContainerExtendedInfo", + "description": "Additional details of a workload container." + }, + "workloadType": { + "description": "Workload type for which registration was sent.", + "enum": [ + "Invalid", + "VM", + "FileFolder", + "AzureSqlDb", + "SQLDB", + "Exchange", + "Sharepoint", + "VMwareVM", + "SystemState", + "Client", + "GenericDataSource", + "SQLDataBase", + "AzureFileShare", + "SAPHanaDatabase", + "SAPAseDatabase" + ], + "type": "string", + "x-ms-enum": { + "name": "WorkloadType", + "modelAsString": true + } + }, + "operationType": { + "description": "Re-Do Operation", + "enum": [ + "Invalid", + "Register", + "Reregister" + ], + "type": "string", + "x-ms-enum": { + "name": "OperationType", + "modelAsString": true + } + } + }, + "x-ms-discriminator-value": "AzureWorkloadContainer" + }, + "AzureWorkloadContainerExtendedInfo": { + "description": "Extended information of the container.", + "type": "object", + "properties": { + "hostServerName": { + "description": "Host Os Name in case of Stand Alone and Cluster Name in case of distributed container.", + "type": "string" + }, + "inquiryInfo": { + "$ref": "#/definitions/InquiryInfo", + "description": "Inquiry Status for the container." + }, + "nodesList": { + "description": "List of the nodes in case of distributed container.", + "type": "array", + "items": { + "$ref": "#/definitions/DistributedNodesInfo" + } + } + } + }, + "BackupEngineBase": { + "description": "The base backup engine class. All workload specific backup engines derive from this class.", + "type": "object", + "required": [ + "backupEngineType" + ], + "properties": { + "friendlyName": { + "description": "Friendly name of the backup engine.", + "type": "string" + }, + "backupManagementType": { + "description": "Type of backup management for the backup engine.", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureBackupServer", + "AzureSql", + "AzureStorage", + "AzureWorkload", + "DefaultBackup" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupManagementType", + "modelAsString": true + } + }, + "registrationStatus": { + "description": "Registration status of the backup engine with the Recovery Services Vault.", + "type": "string" + }, + "backupEngineState": { + "description": "Status of the backup engine with the Recovery Services Vault. = {Active/Deleting/DeleteFailed}", + "type": "string" + }, + "healthStatus": { + "description": "Backup status of the backup engine.", + "type": "string" + }, + "backupEngineType": { + "description": "Type of the backup engine.", + "enum": [ + "Invalid", + "DpmBackupEngine", + "AzureBackupServerEngine" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupEngineType", + "modelAsString": true + } + }, + "canReRegister": { + "description": "Flag indicating if the backup engine be registered, once already registered.", + "type": "boolean" + }, + "backupEngineId": { + "description": "ID of the backup engine.", + "type": "string" + }, + "dpmVersion": { + "description": "Backup engine version", + "type": "string" + }, + "azureBackupAgentVersion": { + "description": "Backup agent version", + "type": "string" + }, + "isAzureBackupAgentUpgradeAvailable": { + "description": "To check if backup agent upgrade available", + "type": "boolean" + }, + "isDpmUpgradeAvailable": { + "description": "To check if backup engine upgrade available", + "type": "boolean" + }, + "extendedInfo": { + "$ref": "#/definitions/BackupEngineExtendedInfo", + "description": "Extended info of the backupengine" + } + }, + "discriminator": "backupEngineType" + }, + "BackupEngineBaseResource": { + "description": "The base backup engine class. All workload specific backup engines derive from this class.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/BackupEngineBase", + "description": "BackupEngineBaseResource properties" + } + } + }, + "BackupEngineBaseResourceList": { + "description": "List of BackupEngineBase resources", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ResourceList" + } + ], + "properties": { + "value": { + "description": "List of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/BackupEngineBaseResource" + } + } + } + }, + "BackupEngineExtendedInfo": { + "description": "Additional information on backup engine.", + "type": "object", + "properties": { + "databaseName": { + "description": "Database name of backup engine.", + "type": "string" + }, + "protectedItemsCount": { + "format": "int32", + "description": "Number of protected items in the backup engine.", + "type": "integer" + }, + "protectedServersCount": { + "format": "int32", + "description": "Number of protected servers in the backup engine.", + "type": "integer" + }, + "diskCount": { + "format": "int32", + "description": "Number of disks in the backup engine.", + "type": "integer" + }, + "usedDiskSpace": { + "format": "double", + "description": "Disk space used in the backup engine.", + "type": "number" + }, + "availableDiskSpace": { + "format": "double", + "description": "Disk space currently available in the backup engine.", + "type": "number" + }, + "refreshedAt": { + "format": "date-time", + "description": "Last refresh time in the backup engine.", + "type": "string" + }, + "azureProtectedInstances": { + "format": "int32", + "description": "Protected instances in the backup engine.", + "type": "integer" + } + } + }, + "BackupRequest": { + "description": "Base class for backup request. Workload-specific backup requests are derived from this class.", + "required": [ + "objectType" + ], + "type": "object", + "properties": { + "objectType": { + "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.", + "type": "string" + } + }, + "discriminator": "objectType" + }, + "BackupRequestResource": { + "description": "Base class for backup request. Workload-specific backup requests are derived from this class.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/BackupRequest", + "description": "BackupRequestResource properties" + } + } + }, + "BMSBackupEngineQueryObject": { + "description": "Query parameters to fetch list of backup engines.", + "type": "object", + "properties": { + "expand": { + "description": "attribute to add extended info", + "type": "string" + } + } + }, + "BMSBackupEnginesQueryObject": { + "description": "Query parameters to fetch list of backup engines.", + "type": "object", + "properties": { + "backupManagementType": { + "description": "Backup management type for the backup engine.", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureBackupServer", + "AzureSql", + "AzureStorage", + "AzureWorkload", + "DefaultBackup" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupManagementType", + "modelAsString": true + } + }, + "friendlyName": { + "description": "Friendly name of the backup engine.", + "type": "string" + }, + "expand": { + "description": "Attribute to add extended info.", + "type": "string" + } + } + }, + "BMSContainerQueryObject": { + "description": "The query filters that can be used with the list containers API.", + "required": [ + "backupManagementType" + ], + "type": "object", + "properties": { + "backupManagementType": { + "description": "Backup management type for this container.", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureBackupServer", + "AzureSql", + "AzureStorage", + "AzureWorkload", + "DefaultBackup" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupManagementType", + "modelAsString": true + } + }, + "containerType": { + "description": "Type of container for filter", + "enum": [ + "Invalid", + "Unknown", + "IaasVMContainer", + "IaasVMServiceContainer", + "DPMContainer", + "AzureBackupServerContainer", + "MABContainer", + "Cluster", + "AzureSqlContainer", + "Windows", + "VCenter", + "VMAppContainer", + "SQLAGWorkLoadContainer", + "StorageContainer", + "GenericContainer" + ], + "type": "string", + "x-ms-enum": { + "name": "ContainerType", + "modelAsString": true + } + }, + "backupEngineName": { + "description": "Backup engine name", + "type": "string" + }, + "fabricName": { + "description": "Fabric name for filter", + "type": "string" + }, + "status": { + "description": "Status of registration of this container with the Recovery Services Vault.", + "type": "string" + }, + "friendlyName": { + "description": "Friendly name of this container.", + "type": "string" + } + } + }, + "BMSContainersInquiryQueryObject": { + "description": "The query filters that can be used with the inquire container API.", + "type": "object", + "properties": { + "backupManagementType": { + "description": "Backup management type for this container.", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureBackupServer", + "AzureSql", + "AzureStorage", + "AzureWorkload", + "DefaultBackup" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupManagementType", + "modelAsString": true + } + }, + "workloadType": { + "description": "Workload type for this container.", + "enum": [ + "Invalid", + "VM", + "FileFolder", + "AzureSqlDb", + "SQLDB", + "Exchange", + "Sharepoint", + "VMwareVM", + "SystemState", + "Client", + "GenericDataSource", + "SQLDataBase", + "AzureFileShare", + "SAPHanaDatabase", + "SAPAseDatabase" + ], + "type": "string", + "x-ms-enum": { + "name": "WorkloadType", + "modelAsString": true + } + } + } + }, + "BMSPOQueryObject": { + "description": "Filters to list items that can be backed up.", + "type": "object", + "properties": { + "backupManagementType": { + "description": "Backup management type.", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureSql", + "AzureBackupServer", + "AzureWorkload", + "AzureStorage", + "DefaultBackup" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupManagementType", + "modelAsString": true + } + }, + "workloadType": { + "description": "Workload type", + "enum": [ + "Invalid", + "VM", + "FileFolder", + "AzureSqlDb", + "SQLDB", + "Exchange", + "Sharepoint", + "VMwareVM", + "SystemState", + "Client", + "GenericDataSource", + "SQLDataBase", + "AzureFileShare", + "SAPHanaDatabase", + "SAPAseDatabase" + ], + "type": "string", + "x-ms-enum": { + "name": "WorkloadType", + "modelAsString": true + } + }, + "containerName": { + "description": "Full name of the container whose Protectable Objects should be returned.", + "type": "string" + }, + "status": { + "description": "Backup status query parameter.", + "type": "string" + }, + "friendlyName": { + "description": "Friendly name.", + "type": "string" + } + } + }, + "BMSRefreshContainersQueryObject": { + "description": "The query filters that can be used with the refresh container API.", + "type": "object", + "properties": { + "backupManagementType": { + "description": "Backup management type for this container.", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureBackupServer", + "AzureSql", + "AzureStorage", + "AzureWorkload", + "DefaultBackup" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupManagementType", + "modelAsString": true + } + } + } + }, + "BMSWorkloadItemQueryObject": { + "description": "Filters to list items that can be backed up.", + "type": "object", + "properties": { + "backupManagementType": { + "description": "Backup management type.", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureSql", + "AzureBackupServer", + "AzureWorkload", + "AzureStorage", + "DefaultBackup" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupManagementType", + "modelAsString": true + } + }, + "workloadItemType": { + "description": "Workload Item type", + "enum": [ + "Invalid", + "SQLInstance", + "SQLDataBase", + "SAPHanaSystem", + "SAPHanaDatabase", + "SAPAseSystem", + "SAPAseDatabase" + ], + "type": "string", + "x-ms-enum": { + "name": "WorkloadItemType", + "modelAsString": true + } + }, + "workloadType": { + "description": "Workload type", + "enum": [ + "Invalid", + "VM", + "FileFolder", + "AzureSqlDb", + "SQLDB", + "Exchange", + "Sharepoint", + "VMwareVM", + "SystemState", + "Client", + "GenericDataSource", + "SQLDataBase", + "AzureFileShare", + "SAPHanaDatabase", + "SAPAseDatabase" + ], + "type": "string", + "x-ms-enum": { + "name": "WorkloadType", + "modelAsString": true + } + }, + "protectionStatus": { + "description": "Backup status query parameter.", + "enum": [ + "Invalid", + "NotProtected", + "Protecting", + "Protected", + "ProtectionFailed" + ], + "type": "string", + "x-ms-enum": { + "name": "ProtectionStatus", + "modelAsString": true + } + } + } + }, + "ClientScriptForConnect": { + "description": "Client script details for file / folder restore.", + "type": "object", + "properties": { + "scriptContent": { + "description": "File content of the client script for file / folder restore.", + "type": "string" + }, + "scriptExtension": { + "description": "File extension of the client script for file / folder restore - .ps1 , .sh , etc.", + "type": "string" + }, + "osType": { + "description": "OS type - Windows, Linux etc. for which this file / folder restore client script works.", + "type": "string" + }, + "url": { + "description": "URL of Executable from where to source the content. If this is not null then ScriptContent should not be used", + "type": "string" + }, + "scriptNameSuffix": { + "description": "Mandatory suffix that should be added to the name of script that is given for download to user.\r\nIf its null or empty then , ignore it.", + "type": "string" + } + } + }, + "ContainerIdentityInfo": { + "description": "Container identity information", + "type": "object", + "properties": { + "uniqueName": { + "description": "Unique name of the container", + "type": "string" + }, + "aadTenantId": { + "description": "Protection container identity - AAD Tenant", + "type": "string" + }, + "servicePrincipalClientId": { + "description": "Protection container identity - AAD Service Principal", + "type": "string" + }, + "audience": { + "description": "Protection container identity - Audience", + "type": "string" + } + } + }, + "DistributedNodesInfo": { + "description": "This is used to represent the various nodes of the distributed container.", + "type": "object", + "properties": { + "nodeName": { + "description": "Name of the node under a distributed container.", + "type": "string" + }, + "status": { + "description": "Status of this Node.\r\nFailed | Succeeded", + "type": "string" + }, + "errorDetail": { + "$ref": "#/definitions/ErrorDetail", + "description": "Error Details if the Status is non-success." + } + } + }, + "DpmBackupEngine": { + "description": "Data Protection Manager (DPM) specific backup engine.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/BackupEngineBase" + } + ], + "x-ms-discriminator-value": "DpmBackupEngine" + }, + "DpmContainer": { + "description": "DPM workload-specific protection container.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionContainer" + } + ], + "properties": { + "canReRegister": { + "description": "Specifies whether the container is re-registrable.", + "type": "boolean" + }, + "containerId": { + "description": "ID of container.", + "type": "string" + }, + "protectedItemCount": { + "format": "int64", + "description": "Number of protected items in the BackupEngine", + "type": "integer" + }, + "dpmAgentVersion": { + "description": "Backup engine Agent version", + "type": "string" + }, + "dpmServers": { + "description": "List of BackupEngines protecting the container", + "type": "array", + "items": { + "type": "string" + } + }, + "upgradeAvailable": { + "description": "To check if upgrade available", + "type": "boolean" + }, + "protectionStatus": { + "description": "Protection status of the container.", + "type": "string" + }, + "extendedInfo": { + "$ref": "#/definitions/DPMContainerExtendedInfo", + "description": "Extended Info of the container." + } + }, + "x-ms-discriminator-value": "DPMContainer" + }, + "DPMContainerExtendedInfo": { + "description": "Additional information of the DPMContainer.", + "type": "object", + "properties": { + "lastRefreshedAt": { + "format": "date-time", + "description": "Last refresh time of the DPMContainer.", + "type": "string" + } + } + }, + "GenericContainer": { + "description": "Base class for generic container of backup items", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionContainer" + } + ], + "properties": { + "fabricName": { + "description": "Name of the container's fabric", + "type": "string" + }, + "extendedInformation": { + "$ref": "#/definitions/GenericContainerExtendedInfo", + "description": "Extended information (not returned in List container API calls)" + } + }, + "x-ms-discriminator-value": "GenericContainer" + }, + "GenericContainerExtendedInfo": { + "description": "Container extended information", + "type": "object", + "properties": { + "rawCertData": { + "description": "Public key of container cert", + "type": "string" + }, + "containerIdentityInfo": { + "$ref": "#/definitions/ContainerIdentityInfo", + "description": "Container identity information" + }, + "serviceEndpoints": { + "description": "Azure Backup Service Endpoints for the container", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "IaasVMBackupRequest": { + "description": "IaaS VM workload-specific backup request.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/BackupRequest" + } + ], + "properties": { + "recoveryPointExpiryTimeInUTC": { + "format": "date-time", + "description": "Backup copy will expire after the time specified (UTC).", + "type": "string" + } + }, + "x-ms-discriminator-value": "IaasVMBackupRequest" + }, + "IaaSVMContainer": { + "description": "IaaS VM workload-specific container.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionContainer" + } + ], + "properties": { + "virtualMachineId": { + "description": "Fully qualified ARM url of the virtual machine represented by this Azure IaaS VM container.", + "type": "string" + }, + "virtualMachineVersion": { + "description": "Specifies whether the container represents a Classic or an Azure Resource Manager VM.", + "type": "string" + }, + "resourceGroup": { + "description": "Resource group name of Recovery Services Vault.", + "type": "string" + } + }, + "x-ms-discriminator-value": "IaaSVMContainer" + }, + "IaasVMILRRegistrationRequest": { + "description": "Restore files/folders from a backup copy of IaaS VM.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ILRRequest" + } + ], + "properties": { + "recoveryPointId": { + "description": "ID of the IaaS VM backup copy from where the files/folders have to be restored.", + "type": "string" + }, + "virtualMachineId": { + "description": "Fully qualified ARM ID of the virtual machine whose the files / folders have to be restored.", + "type": "string" + }, + "initiatorName": { + "description": "iSCSI initiator name.", + "type": "string" + }, + "renewExistingRegistration": { + "description": "Whether to renew existing registration with the iSCSI server.", + "type": "boolean" + } + }, + "x-ms-discriminator-value": "IaasVMILRRegistrationRequest" + }, + "IaaSVMProtectableItem": { + "description": "IaaS VM workload-specific backup item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/WorkloadProtectableItem" + } + ], + "properties": { + "virtualMachineId": { + "description": "Fully qualified ARM ID of the virtual machine.", + "type": "string" + } + }, + "x-ms-discriminator-value": "IaaSVMProtectableItem" + }, + "ILRRequest": { + "description": "Parameters to Provision ILR API.", + "required": [ + "objectType" + ], + "type": "object", + "properties": { + "objectType": { + "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.", + "type": "string" + } + }, + "discriminator": "objectType" + }, + "ILRRequestResource": { + "description": "Parameters to Provision ILR API.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ILRRequest", + "description": "ILRRequestResource properties" + } + } + }, + "InquiryInfo": { + "description": "Details about inquired protectable items under a given container.", + "type": "object", + "properties": { + "status": { + "description": "Inquiry Status for this container such as\r\nInProgress | Failed | Succeeded", + "type": "string" + }, + "errorDetail": { + "$ref": "#/definitions/ErrorDetail", + "description": "Error Details if the Status is non-success." + }, + "inquiryDetails": { + "description": "Inquiry Details which will have workload specific details.\r\nFor e.g. - For SQL and oracle this will contain different details.", + "type": "array", + "items": { + "$ref": "#/definitions/WorkloadInquiryDetails" + } + } + } + }, + "InquiryValidation": { + "description": "Validation for inquired protectable items under a given container.", + "type": "object", + "properties": { + "status": { + "description": "Status for the Inquiry Validation.", + "type": "string" + }, + "errorDetail": { + "$ref": "#/definitions/ErrorDetail", + "description": "Error Detail in case the status is non-success." + }, + "additionalDetail": { + "description": "Error Additional Detail in case the status is non-success.", + "type": "string", + "readOnly": true + } + } + }, + "InstantItemRecoveryTarget": { + "description": "Target details for file / folder restore.", + "type": "object", + "properties": { + "clientScripts": { + "description": "List of client scripts.", + "type": "array", + "items": { + "$ref": "#/definitions/ClientScriptForConnect" + } + } + } + }, + "MabContainer": { + "description": "Container with items backed up using MAB backup engine.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionContainer" + } + ], + "properties": { + "canReRegister": { + "description": "Can the container be registered one more time.", + "type": "boolean" + }, + "containerId": { + "format": "int64", + "description": "ContainerID represents the container.", + "type": "integer" + }, + "protectedItemCount": { + "format": "int64", + "description": "Number of items backed up in this container.", + "type": "integer" + }, + "agentVersion": { + "description": "Agent version of this container.", + "type": "string" + }, + "extendedInfo": { + "$ref": "#/definitions/MabContainerExtendedInfo", + "description": "Additional information for this container" + }, + "mabContainerHealthDetails": { + "description": "Health details on this mab container.", + "type": "array", + "items": { + "$ref": "#/definitions/MABContainerHealthDetails" + } + }, + "containerHealthState": { + "description": "Health state of mab container.", + "type": "string" + } + }, + "x-ms-discriminator-value": "Windows" + }, + "MabContainerExtendedInfo": { + "description": "Additional information of the container.", + "type": "object", + "properties": { + "lastRefreshedAt": { + "format": "date-time", + "description": "Time stamp when this container was refreshed.", + "type": "string" + }, + "backupItemType": { + "description": "Type of backup items associated with this container.", + "enum": [ + "Invalid", + "VM", + "FileFolder", + "AzureSqlDb", + "SQLDB", + "Exchange", + "Sharepoint", + "VMwareVM", + "SystemState", + "Client", + "GenericDataSource", + "SQLDataBase", + "AzureFileShare", + "SAPHanaDatabase", + "SAPAseDatabase" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupItemType", + "modelAsString": true + } + }, + "backupItems": { + "description": "List of backup items associated with this container.", + "type": "array", + "items": { + "type": "string" + } + }, + "policyName": { + "description": "Backup policy associated with this container.", + "type": "string" + }, + "lastBackupStatus": { + "description": "Latest backup status of this container.", + "type": "string" + } + } + }, + "MABContainerHealthDetails": { + "description": "MAB workload-specific Health Details.", + "type": "object", + "properties": { + "code": { + "format": "int32", + "description": "Health Code", + "type": "integer" + }, + "title": { + "description": "Health Title", + "type": "string" + }, + "message": { + "description": "Health Message", + "type": "string" + }, + "recommendations": { + "description": "Health Recommended Actions", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "OperationStatus": { + "description": "Operation status.", + "type": "object", + "properties": { + "id": { + "description": "ID of the operation.", + "type": "string" + }, + "name": { + "description": "Name of the operation.", + "type": "string" + }, + "status": { + "description": "Operation status.", + "enum": [ + "Invalid", + "InProgress", + "Succeeded", + "Failed", + "Canceled" + ], + "type": "string", + "x-ms-enum": { + "name": "OperationStatusValues", + "modelAsString": true + } + }, + "startTime": { + "format": "date-time", + "description": "Operation start time. Format: ISO-8601.", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "Operation end time. Format: ISO-8601.", + "type": "string" + }, + "error": { + "$ref": "#/definitions/OperationStatusError", + "description": "Error information related to this operation." + }, + "properties": { + "$ref": "#/definitions/OperationStatusExtendedInfo", + "description": "Additional information associated with this operation." + } + } + }, + "OperationStatusError": { + "description": "Error information associated with operation status call.", + "type": "object", + "properties": { + "code": { + "description": "Error code of the operation failure.", + "type": "string" + }, + "message": { + "description": "Error message displayed if the operation failure.", + "type": "string" + } + } + }, + "OperationStatusExtendedInfo": { + "description": "Base class for additional information of operation status.", + "required": [ + "objectType" + ], + "type": "object", + "properties": { + "objectType": { + "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.", + "type": "string" + } + }, + "discriminator": "objectType" + }, + "OperationStatusJobExtendedInfo": { + "description": "Operation status job extended info.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/OperationStatusExtendedInfo" + } + ], + "properties": { + "jobId": { + "description": "ID of the job created for this protected item.", + "type": "string" + } + }, + "x-ms-discriminator-value": "OperationStatusJobExtendedInfo" + }, + "OperationStatusJobsExtendedInfo": { + "description": "Operation status extended info for list of jobs.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/OperationStatusExtendedInfo" + } + ], + "properties": { + "jobIds": { + "description": "IDs of the jobs created for the protected item.", + "type": "array", + "items": { + "type": "string" + } + }, + "failedJobsError": { + "description": "Stores all the failed jobs along with the corresponding error codes.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "x-ms-discriminator-value": "OperationStatusJobsExtendedInfo" + }, + "OperationStatusProvisionILRExtendedInfo": { + "description": "Operation status extended info for ILR provision action.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/OperationStatusExtendedInfo" + } + ], + "properties": { + "recoveryTarget": { + "$ref": "#/definitions/InstantItemRecoveryTarget", + "description": "Target details for file / folder restore." + } + }, + "x-ms-discriminator-value": "OperationStatusProvisionILRExtendedInfo" + }, + "PreBackupValidation": { + "description": "Pre-backup validation for Azure VM Workload provider.", + "type": "object", + "properties": { + "status": { + "description": "Status of protectable item, i.e. InProgress,Succeeded,Failed", + "enum": [ + "Invalid", + "Success", + "Failed" + ], + "type": "string", + "x-ms-enum": { + "name": "InquiryStatus", + "modelAsString": true + } + }, + "code": { + "description": "Error code of protectable item", + "type": "string" + }, + "message": { + "description": "Message corresponding to the error code for the protectable item", + "type": "string" + } + } + }, + "ProtectableContainer": { + "description": "Protectable Container Class.", + "type": "object", + "required": [ + "protectableContainerType" + ], + "properties": { + "friendlyName": { + "description": "Friendly name of the container.", + "type": "string" + }, + "backupManagementType": { + "description": "Type of backup management for the container.", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureBackupServer", + "AzureSql", + "AzureStorage", + "AzureWorkload", + "DefaultBackup" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupManagementType", + "modelAsString": true + } + }, + "protectableContainerType": { + "description": "Type of the container. The value of this property for\r\n1. Compute Azure VM is Microsoft.Compute/virtualMachines\r\n2. Classic Compute Azure VM is Microsoft.ClassicCompute/virtualMachines", + "enum": [ + "Invalid", + "Unknown", + "IaasVMContainer", + "IaasVMServiceContainer", + "DPMContainer", + "AzureBackupServerContainer", + "MABContainer", + "Cluster", + "AzureSqlContainer", + "Windows", + "VCenter", + "VMAppContainer", + "SQLAGWorkLoadContainer", + "StorageContainer", + "GenericContainer" + ], + "type": "string", + "readOnly": false, + "x-ms-enum": { + "name": "ContainerType", + "modelAsString": false + } + }, + "healthStatus": { + "description": "Status of health of the container.", + "type": "string" + }, + "containerId": { + "description": "Fabric Id of the container such as ARM Id.", + "type": "string" + } + }, + "discriminator": "protectableContainerType" + }, + "ProtectableContainerResource": { + "description": "Protectable Container Class.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ProtectableContainer", + "description": "ProtectableContainerResource properties" + } + } + }, + "ProtectableContainerResourceList": { + "description": "List of ProtectableContainer resources", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ResourceList" + } + ], + "properties": { + "value": { + "description": "List of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/ProtectableContainerResource" + } + } + } + }, + "ProtectionContainer": { + "description": "Base class for container with backup items. Containers with specific workloads are derived from this class.", + "type": "object", + "required": [ + "containerType" + ], + "properties": { + "friendlyName": { + "description": "Friendly name of the container.", + "type": "string" + }, + "backupManagementType": { + "description": "Type of backup management for the container.", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureBackupServer", + "AzureSql", + "AzureStorage", + "AzureWorkload", + "DefaultBackup" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupManagementType", + "modelAsString": true + } + }, + "registrationStatus": { + "description": "Status of registration of the container with the Recovery Services Vault.", + "type": "string" + }, + "healthStatus": { + "description": "Status of health of the container.", + "type": "string" + }, + "containerType": { + "description": "Type of the container. The value of this property for: 1. Compute Azure VM is Microsoft.Compute/virtualMachines 2.\r\nClassic Compute Azure VM is Microsoft.ClassicCompute/virtualMachines 3. Windows machines (like MAB, DPM etc) is\r\nWindows 4. Azure SQL instance is AzureSqlContainer. 5. Storage containers is StorageContainer. 6. Azure workload\r\nBackup is VMAppContainer", + "enum": [ + "Invalid", + "Unknown", + "IaasVMContainer", + "IaasVMServiceContainer", + "DPMContainer", + "AzureBackupServerContainer", + "MABContainer", + "Cluster", + "AzureSqlContainer", + "Windows", + "VCenter", + "VMAppContainer", + "SQLAGWorkLoadContainer", + "StorageContainer", + "GenericContainer" + ], + "type": "string", + "x-ms-enum": { + "name": "ContainerType", + "modelAsString": true + } + } + }, + "discriminator": "containerType" + }, + "ProtectionContainerResource": { + "description": "Base class for container with backup items. Containers with specific workloads are derived from this class.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ProtectionContainer", + "description": "ProtectionContainerResource properties" + } + } + }, + "ProtectionContainerResourceList": { + "description": "List of ProtectionContainer resources", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ResourceList" + } + ], + "properties": { + "value": { + "description": "List of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/ProtectionContainerResource" + } + } + } + }, + "TokenInformation": { + "description": "The token information details.", + "type": "object", + "properties": { + "token": { + "description": "Token value.", + "type": "string" + }, + "expiryTimeInUtcTicks": { + "format": "int64", + "description": "Expiry time of token.", + "type": "integer" + }, + "securityPIN": { + "description": "Security PIN", + "type": "string" + } + } + }, + "WorkloadInquiryDetails": { + "description": "Details of an inquired protectable item.", + "type": "object", + "properties": { + "type": { + "description": "Type of the Workload such as SQL, Oracle etc.", + "type": "string" + }, + "itemCount": { + "format": "int64", + "description": "Contains the protectable item Count inside this Container.", + "type": "integer" + }, + "inquiryValidation": { + "$ref": "#/definitions/InquiryValidation", + "description": "Inquiry validation such as permissions and other backup validations." + } + } + }, + "WorkloadItem": { + "description": "Base class for backup item. Workload-specific backup items are derived from this class.", + "type": "object", + "required": [ + "workloadItemType" + ], + "properties": { + "backupManagementType": { + "description": "Type of backup management to backup an item.", + "type": "string" + }, + "workloadType": { + "description": "Type of workload for the backup management", + "type": "string" + }, + "workloadItemType": { + "description": "Type of the backup item.", + "type": "string" + }, + "friendlyName": { + "description": "Friendly name of the backup item.", + "type": "string" + }, + "protectionState": { + "description": "State of the back up item.", + "enum": [ + "Invalid", + "NotProtected", + "Protecting", + "Protected", + "ProtectionFailed" + ], + "type": "string", + "x-ms-enum": { + "name": "ProtectionStatus", + "modelAsString": true + } + } + }, + "discriminator": "workloadItemType" + }, + "WorkloadItemResource": { + "description": "Base class for backup item. Workload-specific backup items are derived from this class.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/WorkloadItem", + "description": "WorkloadItemResource properties" + } + } + }, + "WorkloadItemResourceList": { + "description": "List of WorkloadItem resources", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ResourceList" + } + ], + "properties": { + "value": { + "description": "List of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/WorkloadItemResource" + } + } + } + }, + "WorkloadProtectableItem": { + "description": "Base class for backup item. Workload-specific backup items are derived from this class.", + "type": "object", + "required": [ + "protectableItemType" + ], + "properties": { + "backupManagementType": { + "description": "Type of backup management to backup an item.", + "type": "string" + }, + "workloadType": { + "description": "Type of workload for the backup management", + "type": "string" + }, + "protectableItemType": { + "description": "Type of the backup item.", + "type": "string" + }, + "friendlyName": { + "description": "Friendly name of the backup item.", + "type": "string" + }, + "protectionState": { + "description": "State of the back up item.", + "enum": [ + "Invalid", + "NotProtected", + "Protecting", + "Protected", + "ProtectionFailed" + ], + "type": "string", + "x-ms-enum": { + "name": "ProtectionStatus", + "modelAsString": true + } + } + }, + "discriminator": "protectableItemType" + }, + "WorkloadProtectableItemResource": { + "description": "Base class for backup item. Workload-specific backup items are derived from this class.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/WorkloadProtectableItem", + "description": "WorkloadProtectableItemResource properties" + } + } + }, + "WorkloadProtectableItemResourceList": { + "description": "List of WorkloadProtectableItem resources", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ResourceList" + } + ], + "properties": { + "value": { + "description": "List of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/WorkloadProtectableItemResource" + } + } + } + }, + "AzureWorkloadSAPHanaPointInTimeRestoreWithRehydrateRequest": { + "description": "AzureWorkload SAP Hana-specific restore with integrated rehydration of recovery point.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadSAPHanaPointInTimeRestoreRequest" + } + ], + "properties": { + "recoveryPointRehydrationInfo": { + "$ref": "#/definitions/RecoveryPointRehydrationInfo", + "description": "RP Rehydration Info" + } + }, + "x-ms-discriminator-value": "AzureWorkloadSAPHanaPointInTimeRestoreWithRehydrateRequest" + }, + "AzureWorkloadSAPHanaRestoreWithRehydrateRequest": { + "description": "AzureWorkload SAP Hana-specific restore with integrated rehydration of recovery point.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadSAPHanaRestoreRequest" + } + ], + "properties": { + "recoveryPointRehydrationInfo": { + "$ref": "#/definitions/RecoveryPointRehydrationInfo", + "description": "RP Rehydration Info" + } + }, + "x-ms-discriminator-value": "AzureWorkloadSAPHanaRestoreWithRehydrateRequest" + }, + "AzureWorkloadSQLPointInTimeRestoreWithRehydrateRequest": { + "description": "AzureWorkload SQL-specific restore with integrated rehydration of recovery point.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadSQLPointInTimeRestoreRequest" + } + ], + "properties": { + "recoveryPointRehydrationInfo": { + "$ref": "#/definitions/RecoveryPointRehydrationInfo", + "description": "RP Rehydration Info" + } + }, + "x-ms-discriminator-value": "AzureWorkloadSQLPointInTimeRestoreWithRehydrateRequest" + }, + "AzureWorkloadSQLRestoreWithRehydrateRequest": { + "description": "AzureWorkload SQL-specific restore with integrated rehydration of recovery point", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadSQLRestoreRequest" + } + ], + "properties": { + "recoveryPointRehydrationInfo": { + "$ref": "#/definitions/RecoveryPointRehydrationInfo", + "description": "RP Rehydration Info" + } + }, + "x-ms-discriminator-value": "AzureWorkloadSQLRestoreWithRehydrateRequest" + }, + "IaasVMRestoreWithRehydrationRequest": { + "description": "IaaS VM workload-specific restore with integrated rehydration of recovery point.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/IaasVMRestoreRequest" + } + ], + "properties": { + "recoveryPointRehydrationInfo": { + "$ref": "#/definitions/RecoveryPointRehydrationInfo", + "description": "RP Rehydration Info" + } + }, + "x-ms-discriminator-value": "IaasVMRestoreWithRehydrationRequest" + }, + "MoveRPAcrossTiersRequest": { + "type": "object", + "properties": { + "objectType": { + "description": "Gets the class type.", + "type": "string" + }, + "sourceTierType": { + "description": "Source tier from where RP needs to be moved", + "enum": [ + "Invalid", + "InstantRP", + "HardenedRP", + "ArchivedRP" + ], + "type": "string", + "x-ms-enum": { + "name": "RecoveryPointTierType", + "modelAsString": false + } + }, + "targetTierType": { + "description": "Target tier where RP needs to be moved", + "enum": [ + "Invalid", + "InstantRP", + "HardenedRP", + "ArchivedRP" + ], + "type": "string", + "x-ms-enum": { + "name": "RecoveryPointTierType", + "modelAsString": false + } + } + } + }, + "RecoveryPointMoveReadinessInfo": { + "type": "object", + "properties": { + "isReadyForMove": { + "type": "boolean" + }, + "additionalInfo": { + "type": "string" + } + } + }, + "RecoveryPointRehydrationInfo": { + "description": "RP Rehydration Info", + "type": "object", + "properties": { + "rehydrationRetentionDuration": { + "description": "How long the rehydrated RP should be kept\r\nShould be ISO8601 Duration format e.g. \"P7D\"", + "type": "string" + }, + "rehydrationPriority": { + "description": "Rehydration Priority", + "enum": [ + "Standard", + "High" + ], + "type": "string", + "x-ms-enum": { + "name": "RehydrationPriority", + "modelAsString": true + } + } + } + }, + "ListRecoveryPointsRecommendedForMoveRequest": { + "description": "ListRecoveryPointsRecommendedForMoveRequest Request", + "type": "object", + "properties": { + "objectType": { + "description": "Gets the class type.", + "type": "string" + }, + "excludedRPList": { + "description": "List of Recovery Points excluded from Move", + "type": "array", + "items": { + "type": "string" + } + } + } + } + }, + "parameters": { + "SubscriptionId": { + "name": "subscriptionId", + "in": "path", + "description": "The subscription Id.", + "required": true, + "type": "string" + }, + "AzureRegion": { + "name": "azureRegion", + "in": "path", + "description": "Azure region to hit Api", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ResourceGroupName": { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group where the recovery services vault is present.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "VaultName": { + "name": "vaultName", + "in": "path", + "description": "The name of the recovery services vault.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ApiVersion": { + "name": "api-version", + "in": "query", + "description": "Client Api Version.", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account." + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/BackupFeature_Validate.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/BackupFeature_Validate.json new file mode 100644 index 000000000000..28be066e4b51 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/BackupFeature_Validate.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "azureRegion": "southeastasia", + "api-version": "2017-07-01", + "parameters": { + "featureType": "AzureVMResourceBackup", + "vmSize": "Basic_A0", + "vmSku": "Premium" + } + }, + "responses": { + "200": { + "body": { + "supportStatus": "DefaultOFF" + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/BackupPolicies_List.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/BackupPolicies_List.json new file mode 100644 index 000000000000..de8821aa1ae6 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/BackupPolicies_List.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "api-version": "2021-01-01", + "$filter": "backupManagementType eq 'AzureIaasVM'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupPolicies/DefaultPolicy", + "name": "DefaultPolicy", + "type": "Microsoft.RecoveryServices/vaults/backupPolicies", + "properties": { + "backupManagementType": "AzureIaasVM", + "schedulePolicy": { + "schedulePolicyType": "SimpleSchedulePolicy", + "scheduleRunFrequency": "Daily", + "scheduleRunTimes": [ + "2017-12-05T19:00:00Z" + ], + "scheduleWeeklyFrequency": 0 + }, + "retentionPolicy": { + "retentionPolicyType": "LongTermRetentionPolicy", + "dailySchedule": { + "retentionTimes": [ + "2017-12-05T19:00:00Z" + ], + "retentionDuration": { + "count": 30, + "durationType": "Days" + } + } + }, + "protectedItemsCount": 0 + } + }, + { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupPolicies/testPolicy1", + "name": "testPolicy1", + "type": "Microsoft.RecoveryServices/vaults/backupPolicies", + "properties": { + "backupManagementType": "AzureIaasVM", + "schedulePolicy": { + "schedulePolicyType": "SimpleSchedulePolicy", + "scheduleRunFrequency": "Daily", + "scheduleRunTimes": [ + "2018-01-24T02:00:00Z" + ], + "scheduleWeeklyFrequency": 0 + }, + "retentionPolicy": { + "retentionPolicyType": "LongTermRetentionPolicy", + "dailySchedule": { + "retentionTimes": [ + "2018-01-24T02:00:00Z" + ], + "retentionDuration": { + "count": 1, + "durationType": "Days" + } + } + }, + "timeZone": "Pacific Standard Time", + "protectedItemsCount": 0 + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/BackupProtectableItems_List.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/BackupProtectableItems_List.json new file mode 100644 index 000000000000..4cb1cc937d56 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/BackupProtectableItems_List.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "api-version": "2021-01-01", + "$filter": "backupManagementType eq 'AzureIaasVM'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/protectionContainers/IaasVMContainer;iaasvmcontainer;iaasvm-rg;iaasvm-1/protectableItems/VM;iaasvmcontainer;iaasvm-rg;iaasvm-1", + "name": "VM;iaasvmcontainer;iaasvm-rg;iaasvm-1", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/protectableItems", + "properties": { + "friendlyName": "iaasvm-1", + "virtualMachineId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/providers/Microsoft.ClassicCompute/virtualMachines/iaasvm-1", + "protectionState": "NotProtected", + "protectableItemType": "Microsoft.ClassicCompute/virtualMachines", + "backupManagementType": "AzureIaasVM", + "workloadType": "VM" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/BackupProtectedItems_List.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/BackupProtectedItems_List.json new file mode 100644 index 000000000000..1d8a1b664602 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/BackupProtectedItems_List.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "api-version": "2021-01-01", + "$filter": "backupManagementType eq 'AzureIaasVM' and itemType eq 'VM'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/protectionContainers/IaasVMContainer;iaasvmcontainer;iaasvm-rg;iaasvm-1/protectedItems/VM;iaasvmcontainer;iaasvm-rg;iaasvm-1", + "name": "VM;iaasvmcontainer;iaasvm-rg;iaasvm-1", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/protectedItems", + "properties": { + "friendlyName": "iaasvm-1", + "virtualMachineId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/providers/Microsoft.ClassicCompute/virtualMachines/iaasvm-1", + "protectionStatus": "Healthy", + "protectionState": "Protected", + "healthStatus": "Passed", + "lastBackupStatus": "Completed", + "lastBackupTime": "2018-01-22T12:25:32.048723Z", + "protectedItemDataId": "636482643132986882", + "protectedItemType": "Microsoft.ClassicCompute/virtualMachines", + "backupManagementType": "AzureIaasVM", + "workloadType": "VM", + "containerName": "iaasvmcontainer;iaasvm-rg;iaasvm-1", + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/providers/Microsoft.ClassicCompute/virtualMachines/iaasvm-1", + "policyId": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupPolicies/testPolicy1", + "lastRecoveryPoint": "2017-11-22T12:25:32.048723Z" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/ClassicCompute_ProtectedItem_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/ClassicCompute_ProtectedItem_Get.json new file mode 100644 index 000000000000..7b13e736575a --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/ClassicCompute_ProtectedItem_Get.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "PythonSDKBackupTestRg", + "vaultName": "PySDKBackupTestRsVault", + "fabricName": "Azure", + "containerName": "iaasvmcontainer;iaasvmcontainer;iaasvm-rg;iaasvm-1", + "protectedItemName": "vm;iaasvmcontainer;iaasvm-rg;iaasvm-1", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PythonSDKBackupTestRg/providers/Microsoft.RecoveryServices/vaults/PySDKBackupTestRsVault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainer;iaasvm-rg;iaasvm-1/protectedItems/VM;iaasvmcontainer;iaasvm-rg;iaasvm-1", + "name": "VM;iaasvmcontainer;iaasvm-rg;iaasvm-1", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/protectedItems", + "properties": { + "friendlyName": "iaasvm-1", + "virtualMachineId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/providers/Microsoft.ClassicCompute/virtualMachines/iaasvm-1", + "protectionStatus": "Healthy", + "protectionState": "Protected", + "healthStatus": "Passed", + "lastBackupStatus": "Completed", + "lastBackupTime": "2018-01-22T12:25:32.048723Z", + "protectedItemDataId": "636482643132986882", + "protectedItemType": "Microsoft.ClassicCompute/virtualMachines", + "backupManagementType": "AzureIaasVM", + "workloadType": "VM", + "containerName": "iaasvmcontainer;iaasvm-rg;iaasvm-1", + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/providers/Microsoft.ClassicCompute/virtualMachines/iaasvm-1", + "policyId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PythonSDKBackupTestRg/providers/Microsoft.RecoveryServices/vaults/PySDKBackupTestRsVault/backupPolicies/testPolicy1", + "lastRecoveryPoint": "2017-11-22T12:25:32.048723Z" + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/Compute_ProtectedItem_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/Compute_ProtectedItem_Get.json new file mode 100644 index 000000000000..e6539d937d68 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/Compute_ProtectedItem_Get.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "PythonSDKBackupTestRg", + "vaultName": "PySDKBackupTestRsVault", + "fabricName": "Azure", + "containerName": "iaasvmcontainer;iaasvmcontainerv2;iaasvm-rg;iaasvm-1", + "protectedItemName": "vm;iaasvmcontainerv2;iaasvm-rg;iaasvm-1", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PythonSDKBackupTestRg/providers/Microsoft.RecoveryServices/vaults/PySDKBackupTestRsVault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainerv2;iaasvm-rg;iaasvm-1/protectedItems/VM;iaasvmcontainerv2;iaasvm-rg;iaasvm-1", + "name": "VM;iaasvmcontainerv2;iaasvm-rg;iaasvm-1", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/protectedItems", + "properties": { + "friendlyName": "iaasvm-1", + "virtualMachineId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/providers/Microsoft.Compute/virtualMachines/iaasvm-1", + "protectionStatus": "Healthy", + "protectionState": "Protected", + "healthStatus": "Passed", + "lastBackupStatus": "Completed", + "lastBackupTime": "2018-01-22T12:25:32.048723Z", + "protectedItemDataId": "636482643132986882", + "protectedItemType": "Microsoft.Compute/virtualMachines", + "backupManagementType": "AzureIaasVM", + "workloadType": "VM", + "containerName": "iaasvmcontainerv2;iaasvm-rg;iaasvm-1", + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/providers/Microsoft.Compute/virtualMachines/iaasvm-1", + "policyId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PythonSDKBackupTestRg/providers/Microsoft.RecoveryServices/vaults/PySDKBackupTestRsVault/backupPolicies/testPolicy1", + "lastRecoveryPoint": "2017-11-22T12:25:32.048723Z" + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/ConfigureProtection.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/ConfigureProtection.json new file mode 100644 index 000000000000..8b54de5b02d8 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/ConfigureProtection.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "fabricName": "Azure", + "containerName": "IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "protectedItemName": "VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "api-version": "2021-01-01", + "parameters": { + "properties": { + "protectedItemType": "Microsoft.Compute/virtualMachines", + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.Compute/virtualMachines/netvmtestv2vm1", + "policyId": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupPolicies/DefaultPolicy" + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/protectedItems/VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/operationResults/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Azure-AsyncOperation": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/protectedItems/VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/operationsStatus/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Retry-After": 60 + } + }, + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PythonSDKBackupTestRg/providers/Microsoft.RecoveryServices/vaults/PySDKBackupTestRsVault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/protectedItems/VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "name": "VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/protectedItems", + "properties": { + "friendlyName": "netvmtestv2vm1", + "virtualMachineId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.Compute/virtualMachines/netvmtestv2vm1", + "protectionStatus": "Healthy", + "protectionState": "Protected", + "healthStatus": "Passed", + "lastBackupStatus": "Completed", + "lastBackupTime": "2018-01-22T12:25:32.048723Z", + "protectedItemDataId": "636482643132986882", + "protectedItemType": "Microsoft.Compute/virtualMachines", + "backupManagementType": "AzureIaasVM", + "workloadType": "VM", + "containerName": "iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.Compute/virtualMachines/netvmtestv2vm1", + "policyId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PythonSDKBackupTestRg/providers/Microsoft.RecoveryServices/vaults/PySDKBackupTestRsVault/backupPolicies/testPolicy1", + "lastRecoveryPoint": null + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/GetBackupStatus.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/GetBackupStatus.json new file mode 100644 index 000000000000..97b68a9d0513 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/GetBackupStatus.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "azureRegion": "southeastasia", + "api-version": "2017-07-01", + "parameters": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRg/providers/Microsoft.Compute/VirtualMachines/testVm", + "resourceType": "VM" + } + }, + "responses": { + "200": { + "body": { + "protectionStatus": "Protected", + "vaultId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRg/providers/Microsoft.RecoveryServices/Vaults/testVault", + "fabricName": "Azure", + "containerName": "iaasvmcontainer;iaasvmcontainerv2;testRg;testVm", + "protectedItemName": "vm;iaasvmcontainerv2;testRg;testVm", + "policyName": "myPolicy", + "errorCode": "Success", + "errorMessage": "ErrorMessage" + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/ProtectedItemOperationResults.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/ProtectedItemOperationResults.json new file mode 100644 index 000000000000..2739feaa383a --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/ProtectedItemOperationResults.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "fabricName": "Azure", + "containerName": "IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "protectedItemName": "VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "operationId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-01-01" + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/protectedItems/VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/operationResults/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Azure-AsyncOperation": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/protectedItems/VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/operationsStatus/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Retry-After": 60 + } + }, + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PythonSDKBackupTestRg/providers/Microsoft.RecoveryServices/vaults/PySDKBackupTestRsVault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/protectedItems/VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "name": "VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/protectedItems", + "properties": { + "friendlyName": "netvmtestv2vm1", + "virtualMachineId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.Compute/virtualMachines/netvmtestv2vm1", + "protectionStatus": "Healthy", + "protectionState": "Protected", + "healthStatus": "Passed", + "lastBackupStatus": "Completed", + "lastBackupTime": "2018-01-22T12:25:32.048723Z", + "protectedItemDataId": "636482643132986882", + "protectedItemType": "Microsoft.Compute/virtualMachines", + "backupManagementType": "AzureIaasVM", + "workloadType": "VM", + "containerName": "iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.Compute/virtualMachines/netvmtestv2vm1", + "policyId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PythonSDKBackupTestRg/providers/Microsoft.RecoveryServices/vaults/PySDKBackupTestRsVault/backupPolicies/testPolicy1", + "lastRecoveryPoint": null + } + } + }, + "204": {} + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/ProtectedItemOperationStatus.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/ProtectedItemOperationStatus.json new file mode 100644 index 000000000000..c29b7e06185f --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/ProtectedItemOperationStatus.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "fabricName": "Azure", + "containerName": "IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "protectedItemName": "VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "operationId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "status": "Succeeded", + "startTime": "2017-10-29T06:04:18.207325Z", + "endTime": "2017-10-29T06:04:18.207325Z", + "properties": { + "objectType": "OperationStatusJobExtendedInfo", + "jobId": "00000000-0000-0000-0000-000000000000" + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/ProtectionIntent_CreateOrUpdate.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/ProtectionIntent_CreateOrUpdate.json new file mode 100644 index 000000000000..3ef776db4e1e --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/ProtectionIntent_CreateOrUpdate.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myRG", + "vaultName": "myVault", + "fabricName": "Azure", + "intentObjectName": "vm;iaasvmcontainerv2;chamsrgtest;chamscandel", + "api-version": "2017-07-01", + "parameters": { + "properties": { + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/chamsrgtest/providers/Microsoft.Compute/virtualMachines/chamscandel", + "protectionIntentItemType": "AzureResourceItem", + "policyId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myRG/providers/Microsoft.RecoveryServices/vaults/myVault/backupPolicies/myPolicy" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myRG/providers/Microsoft.RecoveryServices/vaults/myVault/backupFabrics/Azure/backupProtectionIntent/vm;iaasvmcontainerv2;chamsrgtest;chamscandel", + "name": "vm;iaasvmcontainerv2;chamsrgtest;chamscandel", + "type": "Microsoft.RecoveryServices/vaults/backupProtectionIntent", + "properties": { + "backupManagementType": "AzureIaasVM", + "policyId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myRG/providers/Microsoft.RecoveryServices/vaults/myVault/backupPolicies/myPolicy", + "protectionState": "Protected" + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/ProtectionIntent_Validate.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/ProtectionIntent_Validate.json new file mode 100644 index 000000000000..f02e0c6a04a3 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/ProtectionIntent_Validate.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "azureRegion": "southeastasia", + "api-version": "2017-07-01", + "parameters": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/arunaupgrade/providers/Microsoft.Compute/VirtualMachines/upgrade1", + "resourceType": "VM", + "vaultId": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myRG/providers/Microsoft.RecoveryServices/Vaults/myVault", + "properties": "" + } + }, + "responses": { + "200": { + "body": { + "status": "Failed", + "errorCode": "VirtualMachineAlreadyProtected", + "errorMessage": "Virtual machine with same name and same resource group is already protected. Please select `Disable' choice above for backup and go to backup item corresponding to this VM in the vault", + "recommendation": "Please do not enable protection again.", + "containerName": "iaasvmcontainer;iaasvmcontainerv2;arunaupgrade;upgrade1", + "protectedItemName": "vm;iaasvmcontainerv2;arunaupgrade;upgrade1" + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/ProtectionPolicies_CreateOrUpdate_Complex.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/ProtectionPolicies_CreateOrUpdate_Complex.json new file mode 100644 index 000000000000..7812485dd2b4 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/ProtectionPolicies_CreateOrUpdate_Complex.json @@ -0,0 +1,181 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "policyName": "testPolicy1", + "api-version": "2021-01-01", + "parameters": { + "properties": { + "backupManagementType": "AzureIaasVM", + "timeZone": "Pacific Standard Time", + "schedulePolicy": { + "schedulePolicyType": "SimpleSchedulePolicy", + "scheduleRunFrequency": "Weekly", + "scheduleRunTimes": [ + "2018-01-24T10:00:00Z" + ], + "scheduleRunDays": [ + "Monday", + "Wednesday", + "Thursday" + ] + }, + "retentionPolicy": { + "retentionPolicyType": "LongTermRetentionPolicy", + "weeklySchedule": { + "daysOfTheWeek": [ + "Monday", + "Wednesday", + "Thursday" + ], + "retentionTimes": [ + "2018-01-24T10:00:00Z" + ], + "retentionDuration": { + "count": 1, + "durationType": "Weeks" + } + }, + "monthlySchedule": { + "retentionScheduleFormatType": "Weekly", + "retentionScheduleWeekly": { + "daysOfTheWeek": [ + "Wednesday", + "Thursday" + ], + "weeksOfTheMonth": [ + "First", + "Third" + ] + }, + "retentionTimes": [ + "2018-01-24T10:00:00Z" + ], + "retentionDuration": { + "count": 2, + "durationType": "Months" + } + }, + "yearlySchedule": { + "retentionScheduleFormatType": "Weekly", + "monthsOfYear": [ + "February", + "November" + ], + "retentionScheduleWeekly": { + "daysOfTheWeek": [ + "Monday", + "Thursday" + ], + "weeksOfTheMonth": [ + "Fourth" + ] + }, + "retentionTimes": [ + "2018-01-24T10:00:00Z" + ], + "retentionDuration": { + "count": 4, + "durationType": "Years" + } + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupPolicies/testPolicy1", + "name": "testPolicy1", + "type": "Microsoft.RecoveryServices/vaults/backupPolicies", + "properties": { + "backupManagementType": "AzureIaasVM", + "schedulePolicy": { + "schedulePolicyType": "SimpleSchedulePolicy", + "scheduleRunFrequency": "Weekly", + "scheduleRunDays": [ + "Monday", + "Wednesday", + "Thursday" + ], + "scheduleRunTimes": [ + "2018-01-24T10:00:00Z" + ], + "scheduleWeeklyFrequency": 0 + }, + "retentionPolicy": { + "retentionPolicyType": "LongTermRetentionPolicy", + "weeklySchedule": { + "daysOfTheWeek": [ + "Monday", + "Wednesday", + "Thursday" + ], + "retentionTimes": [ + "2018-01-24T10:00:00Z" + ], + "retentionDuration": { + "count": 1, + "durationType": "Weeks" + } + }, + "monthlySchedule": { + "retentionScheduleFormatType": "Weekly", + "retentionScheduleWeekly": { + "daysOfTheWeek": [ + "Wednesday", + "Thursday" + ], + "weeksOfTheMonth": [ + "First", + "Third" + ] + }, + "retentionTimes": [ + "2018-01-24T10:00:00Z" + ], + "retentionDuration": { + "count": 2, + "durationType": "Months" + } + }, + "yearlySchedule": { + "retentionScheduleFormatType": "Weekly", + "monthsOfYear": [ + "February", + "November" + ], + "retentionScheduleWeekly": { + "daysOfTheWeek": [ + "Monday", + "Thursday" + ], + "weeksOfTheMonth": [ + "Fourth" + ] + }, + "retentionTimes": [ + "2018-01-24T10:00:00Z" + ], + "retentionDuration": { + "count": 4, + "durationType": "Years" + } + } + }, + "timeZone": "Pacific Standard Time", + "protectedItemsCount": 0 + } + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupPolicies/testPolicy1/operationResults/00000000-0000-0000-0000-000000000000?api-version=2016-06-01", + "Azure-AsyncOperation": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupPolicies/testPolicy1/operations/00000000-0000-0000-0000-000000000000?api-version=2016-06-01", + "Retry-After": 60 + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/ProtectionPolicies_CreateOrUpdate_Simple.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/ProtectionPolicies_CreateOrUpdate_Simple.json new file mode 100644 index 000000000000..20ec2f4af4ea --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/ProtectionPolicies_CreateOrUpdate_Simple.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "policyName": "testPolicy1", + "api-version": "2021-01-01", + "parameters": { + "properties": { + "backupManagementType": "AzureIaasVM", + "timeZone": "Pacific Standard Time", + "schedulePolicy": { + "schedulePolicyType": "SimpleSchedulePolicy", + "scheduleRunFrequency": "Daily", + "scheduleRunTimes": [ + "2018-01-24T02:00:00Z" + ] + }, + "retentionPolicy": { + "retentionPolicyType": "LongTermRetentionPolicy", + "dailySchedule": { + "retentionTimes": [ + "2018-01-24T02:00:00Z" + ], + "retentionDuration": { + "count": 1, + "durationType": "Days" + } + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupPolicies/testPolicy1", + "name": "testPolicy1", + "type": "Microsoft.RecoveryServices/vaults/backupPolicies", + "properties": { + "backupManagementType": "AzureIaasVM", + "schedulePolicy": { + "schedulePolicyType": "SimpleSchedulePolicy", + "scheduleRunFrequency": "Daily", + "scheduleRunTimes": [ + "2018-01-24T02:00:00Z" + ], + "scheduleWeeklyFrequency": 0 + }, + "retentionPolicy": { + "retentionPolicyType": "LongTermRetentionPolicy", + "dailySchedule": { + "retentionTimes": [ + "2018-01-24T02:00:00Z" + ], + "retentionDuration": { + "count": 1, + "durationType": "Days" + } + } + }, + "timeZone": "Pacific Standard Time", + "protectedItemsCount": 0 + } + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupPolicies/testPolicy1/operationResults/00000000-0000-0000-0000-000000000000?api-version=2016-06-01", + "Azure-AsyncOperation": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupPolicies/testPolicy1/operations/00000000-0000-0000-0000-000000000000?api-version=2016-06-01", + "Retry-After": 60 + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/ProtectionPolicies_Delete.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/ProtectionPolicies_Delete.json new file mode 100644 index 000000000000..1bf72ca67b2c --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/ProtectionPolicies_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "policyName": "testPolicy1", + "api-version": "2021-01-01" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/ProtectionPolicies_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/ProtectionPolicies_Get.json new file mode 100644 index 000000000000..f51cc74d006b --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/ProtectionPolicies_Get.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "policyName": "testPolicy1", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupPolicies/testPolicy1", + "name": "testPolicy1", + "type": "Microsoft.RecoveryServices/vaults/backupPolicies", + "properties": { + "backupManagementType": "AzureIaasVM", + "schedulePolicy": { + "schedulePolicyType": "SimpleSchedulePolicy", + "scheduleRunFrequency": "Daily", + "scheduleRunTimes": [ + "2018-01-24T02:00:00Z" + ], + "scheduleWeeklyFrequency": 0 + }, + "retentionPolicy": { + "retentionPolicyType": "LongTermRetentionPolicy", + "dailySchedule": { + "retentionTimes": [ + "2018-01-24T02:00:00Z" + ], + "retentionDuration": { + "count": 1, + "durationType": "Days" + } + } + }, + "timeZone": "Pacific Standard Time", + "protectedItemsCount": 0 + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/ProtectionPolicyOperationResults_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/ProtectionPolicyOperationResults_Get.json new file mode 100644 index 000000000000..070b70ad0bfb --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/ProtectionPolicyOperationResults_Get.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "policyName": "testPolicy1", + "operationId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupPolicies/testPolicy1", + "name": "testPolicy1", + "type": "Microsoft.RecoveryServices/vaults/backupPolicies", + "properties": { + "backupManagementType": "AzureIaasVM", + "schedulePolicy": { + "schedulePolicyType": "SimpleSchedulePolicy", + "scheduleRunFrequency": "Daily", + "scheduleRunTimes": [ + "2018-01-24T02:00:00Z" + ], + "scheduleWeeklyFrequency": 0 + }, + "retentionPolicy": { + "retentionPolicyType": "LongTermRetentionPolicy", + "dailySchedule": { + "retentionTimes": [ + "2018-01-24T02:00:00Z" + ], + "retentionDuration": { + "count": 1, + "durationType": "Days" + } + } + }, + "timeZone": "Pacific Standard Time", + "protectedItemsCount": 1 + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/ProtectionPolicyOperationStatuses_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/ProtectionPolicyOperationStatuses_Get.json new file mode 100644 index 000000000000..32526ebb5016 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/ProtectionPolicyOperationStatuses_Get.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "policyName": "testPolicy1", + "operationId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "id": "00000000-0000-0000-0000-000000000000", + "name": "GetProtectionPolicyOperationStatus", + "status": "Succeeded", + "startTime": "2018-01-24T12:57:32.1142968Z", + "endTime": "2018-01-24T12:57:32.1142968Z", + "properties": { + "objectType": "OperationStatusJobsExtendedInfo", + "jobIds": [ + "00000000-0000-0000-0000-000000000000" + ], + "failedJobsError": {} + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/Provision_Ilr.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/Provision_Ilr.json new file mode 100644 index 000000000000..a377e88c8e49 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/Provision_Ilr.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "PythonSDKBackupTestRg", + "vaultName": "PySDKBackupTestRsVault", + "fabricName": "Azure", + "containerName": "iaasvmcontainer;iaasvmcontainerv2;pysdktestrg;pysdktestv2vm1", + "protectedItemName": "vm;iaasvmcontainerv2;pysdktestrg;pysdktestv2vm1", + "recoveryPointId": "1", + "api-version": "2021-01-01", + "parameters": { + "properties": { + "initiatorName": "Hello World", + "recoveryPointId": "38823086363464", + "renewExistingRegistration": true, + "virtualMachineId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pysdktestrg/providers/Microsoft.Compute/virtualMachines/pysdktestv2vm1", + "objectType": "IaasVMILRRegistrationRequest" + } + } + }, + "responses": { + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PythonSDKBackupTestRg/providers/Microsoft.RecoveryServices/vaults/PySDKBackupTestRsVault/backupFabrics/Azure/protectionContainers/iaasvmcontainer;iaasvmcontainerv2;pysdktestrg;pysdktestv2vm1/protectedItems/vm;iaasvmcontainerv2;pysdktestrg;pysdktestv2vm1/operationsStatus/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PythonSDKBackupTestRg/providers/Microsoft.RecoveryServices/vaults/PySDKBackupTestRsVault/backupFabrics/Azure/protectionContainers/iaasvmcontainer;iaasvmcontainerv2;pysdktestrg;pysdktestv2vm1/protectedItems/vm;iaasvmcontainerv2;pysdktestrg;pysdktestv2vm1/operationResults/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Retry-After": 60 + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/RecoveryPointsRecommendedForMove_List.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/RecoveryPointsRecommendedForMove_List.json new file mode 100644 index 000000000000..1d5a024131ef --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/RecoveryPointsRecommendedForMove_List.json @@ -0,0 +1,101 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "rshhtestmdvmrg", + "vaultName": "rshvault", + "fabricName": "Azure", + "containerName": "IaasVMContainer;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall", + "protectedItemName": "VM;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall", + "api-version": "2021-01-01", + "parameters": { + "objectType": "ListRecoveryPointsRecommendedForMoveRequest", + "excludedRPList": [ + "348916168024334", + "348916168024335" + ] + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rshhtestmdvmrg/providers/Microsoft.RecoveryServices/vaults/rshvault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall/protectedItems/VM;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall/recoveryPoints/22244821112382", + "name": "22244821112382", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints", + "properties": { + "objectType": "IaasVMRecoveryPoint", + "recoveryPointType": "CrashConsistent", + "recoveryPointTime": "2017-12-21T22:48:25.4353958Z", + "recoveryPointAdditionalInfo": "", + "sourceVMStorageType": "NormalStorage", + "isSourceVMEncrypted": false, + "isInstantIlrSessionActive": false, + "recoveryPointTierDetails": [ + { + "type": "InstantRP", + "status": "Deleted" + }, + { + "type": "HardenedRP", + "status": "Valid" + } + ], + "recoveryPointMoveReadinessInfo": { + "ArchivedRP": { + "isReadyForMove": true + } + }, + "isManagedVirtualMachine": true, + "virtualMachineSize": "Standard_D1", + "originalStorageAccountOption": false + } + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rshhtestmdvmrg/providers/Microsoft.RecoveryServices/vaults/rshvault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall/protectedItems/VM;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall/recoveryPoints/24977149827250", + "name": "24977149827250", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints", + "properties": { + "objectType": "IaasVMRecoveryPoint", + "recoveryPointType": "CrashConsistent", + "recoveryPointTime": "2017-12-20T22:49:44.3317945Z", + "recoveryPointAdditionalInfo": "", + "sourceVMStorageType": "NormalStorage", + "isSourceVMEncrypted": false, + "isInstantIlrSessionActive": false, + "recoveryPointTierDetails": [ + { + "type": "InstantRP", + "status": "Deleted" + }, + { + "type": "HardenedRP", + "status": "Deleted" + }, + { + "type": "ArchivedRP", + "status": "Rehydrated", + "extendedInfo": { + "RehydratedRPExpiryTime": "2020-12-21T22:48:25.4353958Z" + } + } + ], + "recoveryPointMoveReadinessInfo": { + "ArchivedRP": { + "isReadyForMove": true + } + }, + "isManagedVirtualMachine": true, + "virtualMachineSize": "Standard_D1", + "originalStorageAccountOption": false, + "zones": [ + "1" + ] + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/RecoveryPoints_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/RecoveryPoints_Get.json new file mode 100644 index 000000000000..9ca3d0bcb17a --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/RecoveryPoints_Get.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "rshhtestmdvmrg", + "vaultName": "rshvault", + "fabricName": "Azure", + "containerName": "IaasVMContainer;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall", + "protectedItemName": "VM;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall", + "recoveryPointId": "26083826328862", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rshhtestmdvmrg/providers/Microsoft.RecoveryServices/vaults/rshvault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall/protectedItems/VM;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall/recoveryPoints/26083826328862", + "name": "26083826328862", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints", + "properties": { + "objectType": "IaasVMRecoveryPoint", + "recoveryPointType": "CrashConsistent", + "recoveryPointTime": "2017-11-22T22:32:46.6088472Z", + "recoveryPointAdditionalInfo": "", + "sourceVMStorageType": "NormalStorage", + "isSourceVMEncrypted": false, + "isInstantIlrSessionActive": false, + "recoveryPointTierDetails": [ + { + "type": "HardenedRP", + "status": "Valid" + } + ], + "recoveryPointMoveReadinessInfo": { + "ArchivedRP": { + "isReadyForMove": true + } + }, + "isManagedVirtualMachine": true, + "virtualMachineSize": "Standard_D1", + "originalStorageAccountOption": false, + "zones": [ + "1" + ] + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/RecoveryPoints_List.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/RecoveryPoints_List.json new file mode 100644 index 000000000000..979951e5f8d1 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/RecoveryPoints_List.json @@ -0,0 +1,95 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "rshhtestmdvmrg", + "vaultName": "rshvault", + "fabricName": "Azure", + "containerName": "IaasVMContainer;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall", + "protectedItemName": "VM;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rshhtestmdvmrg/providers/Microsoft.RecoveryServices/vaults/rshvault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall/protectedItems/VM;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall/recoveryPoints/22244821112382", + "name": "22244821112382", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints", + "properties": { + "objectType": "IaasVMRecoveryPoint", + "recoveryPointType": "CrashConsistent", + "recoveryPointTime": "2017-12-21T22:48:25.4353958Z", + "recoveryPointAdditionalInfo": "", + "sourceVMStorageType": "NormalStorage", + "isSourceVMEncrypted": false, + "isInstantIlrSessionActive": false, + "recoveryPointTierDetails": [ + { + "type": "InstantRP", + "status": "Deleted" + }, + { + "type": "HardenedRP", + "status": "Valid" + } + ], + "recoveryPointMoveReadinessInfo": { + "Archive": { + "isReadyForMove": true + } + }, + "isManagedVirtualMachine": true, + "virtualMachineSize": "Standard_D1", + "originalStorageAccountOption": false + } + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rshhtestmdvmrg/providers/Microsoft.RecoveryServices/vaults/rshvault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall/protectedItems/VM;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall/recoveryPoints/24977149827250", + "name": "24977149827250", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints", + "properties": { + "objectType": "IaasVMRecoveryPoint", + "recoveryPointType": "CrashConsistent", + "recoveryPointTime": "2017-12-20T22:49:44.3317945Z", + "recoveryPointAdditionalInfo": "", + "sourceVMStorageType": "NormalStorage", + "isSourceVMEncrypted": false, + "isInstantIlrSessionActive": false, + "recoveryPointTierDetails": [ + { + "type": "InstantRP", + "status": "Deleted" + }, + { + "type": "HardenedRP", + "status": "Deleted" + }, + { + "type": "ArchivedRP", + "status": "Rehydrated", + "extendedInfo": { + "RehydratedRPExpiryTime": "2020-12-21T22:48:25.4353958Z" + } + } + ], + "recoveryPointMoveReadinessInfo": { + "ArchivedRP": { + "isReadyForMove": false, + "additionalInfo": "Recovery point cannot be moved to archive tier since it has already been moved." + } + }, + "isManagedVirtualMachine": true, + "virtualMachineSize": "Standard_D1", + "originalStorageAccountOption": false, + "zones": [ + "1" + ] + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/Revoke_Ilr.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/Revoke_Ilr.json new file mode 100644 index 000000000000..65d956bd222d --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/Revoke_Ilr.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "PythonSDKBackupTestRg", + "vaultName": "PySDKBackupTestRsVault", + "fabricName": "Azure", + "containerName": "iaasvmcontainer;iaasvmcontainerv2;pysdktestrg;pysdktestv2vm1", + "protectedItemName": "vm;iaasvmcontainerv2;pysdktestrg;pysdktestv2vm1", + "recoveryPointId": "1", + "api-version": "2021-01-01" + }, + "responses": { + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PythonSDKBackupTestRg/providers/Microsoft.RecoveryServices/vaults/PySDKBackupTestRsVault/backupFabrics/Azure/protectionContainers/iaasvmcontainer;iaasvmcontainerv2;pysdktestrg;pysdktestv2vm1/protectedItems/vm;iaasvmcontainerv2;pysdktestrg;pysdktestv2vm1/operationsStatus/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PythonSDKBackupTestRg/providers/Microsoft.RecoveryServices/vaults/PySDKBackupTestRsVault/backupFabrics/Azure/protectionContainers/iaasvmcontainer;iaasvmcontainerv2;pysdktestrg;pysdktestv2vm1/protectedItems/vm;iaasvmcontainerv2;pysdktestrg;pysdktestv2vm1/operationResults/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Retry-After": 60 + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/StopProtection.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/StopProtection.json new file mode 100644 index 000000000000..06afda60ed89 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/StopProtection.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "fabricName": "Azure", + "containerName": "IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "protectedItemName": "VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "api-version": "2021-01-01", + "parameters": { + "properties": { + "protectedItemType": "Microsoft.Compute/virtualMachines", + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.Compute/virtualMachines/netvmtestv2vm1", + "protectionState": "ProtectionStopped" + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/protectedItems/VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/operationResults/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Azure-AsyncOperation": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/protectedItems/VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/operationsStatus/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Retry-After": 60 + } + }, + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PythonSDKBackupTestRg/providers/Microsoft.RecoveryServices/vaults/PySDKBackupTestRsVault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/protectedItems/VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "name": "VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/protectedItems", + "properties": { + "friendlyName": "netvmtestv2vm1", + "virtualMachineId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.Compute/virtualMachines/netvmtestv2vm1", + "protectionStatus": "Healthy", + "protectionState": "ProtectionStopped", + "healthStatus": "Passed", + "lastBackupStatus": "Completed", + "lastBackupTime": "2018-01-22T12:25:32.048723Z", + "protectedItemDataId": "636482643132986882", + "protectedItemType": "Microsoft.Compute/virtualMachines", + "backupManagementType": "AzureIaasVM", + "workloadType": "VM", + "containerName": "iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.Compute/virtualMachines/netvmtestv2vm1", + "policyId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PythonSDKBackupTestRg/providers/Microsoft.RecoveryServices/vaults/PySDKBackupTestRsVault/backupPolicies/testPolicy1", + "lastRecoveryPoint": null + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/TriggerRestore_ALR.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/TriggerRestore_ALR.json new file mode 100644 index 000000000000..b6441f10e048 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/TriggerRestore_ALR.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "netsdktestrg", + "vaultName": "testVault", + "fabricName": "Azure", + "containerName": "IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "protectedItemName": "VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "recoveryPointId": "348916168024334", + "api-version": "2021-03-01", + "parameters": { + "properties": { + "objectType": "IaasVMRestoreWithRehydrationRequest", + "recoveryPointId": "348916168024334", + "recoveryType": "AlternateLocation", + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.Compute/virtualMachines/netvmtestv2vm1", + "targetVirtualMachineId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg2/providers/Microsoft.Compute/virtualmachines/RSMDALRVM981435", + "targetResourceGroupId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg2", + "storageAccountId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRg/providers/Microsoft.Storage/storageAccounts/testingAccount", + "virtualNetworkId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRg/providers/Microsoft.Network/virtualNetworks/testNet", + "subnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRg/providers/Microsoft.Network/virtualNetworks/testNet/subnets/default", + "region": "southeastasia", + "createNewCloudService": false, + "originalStorageAccountOption": false, + "encryptionDetails": { + "encryptionEnabled": false + }, + "recoveryPointRehydrationInfo": { + "rehydrationRetentionDuration": "P7D", + "rehydrationPriority": "High" + } + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.RecoveryServices/vaults/testVault/backupFabrics/Azure/protectionContainers/iaasvmcontainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/protectedItems/vm;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/operationResults/00000000-0000-0000-0000-000000000000?api-version=2017-07-01", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.RecoveryServices/vaults/testVault/backupFabrics/Azure/protectionContainers/iaasvmcontainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/protectedItems/vm;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1/operationsStatus/00000000-0000-0000-0000-000000000000?api-version=2017-07-01", + "Retry-After": 60 + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/TriggerRestore_RestoreDisks.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/TriggerRestore_RestoreDisks.json new file mode 100644 index 000000000000..f5176e58327b --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/TriggerRestore_RestoreDisks.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "netsdktestrg", + "vaultName": "testVault", + "fabricName": "Azure", + "containerName": "IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "protectedItemName": "VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "recoveryPointId": "348916168024334", + "api-version": "2021-03-01", + "parameters": { + "properties": { + "objectType": "IaasVMRestoreWithRehydrationRequest", + "recoveryPointId": "348916168024334", + "recoveryType": "RestoreDisks", + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.Compute/virtualMachines/netvmtestv2vm1", + "storageAccountId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testingRg/providers/Microsoft.Storage/storageAccounts/testAccount", + "region": "southeastasia", + "createNewCloudService": true, + "originalStorageAccountOption": false, + "encryptionDetails": { + "encryptionEnabled": false + }, + "recoveryPointRehydrationInfo": { + "rehydrationRetentionDuration": "P7D", + "rehydrationPriority": "Standard" + } + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.RecoveryServices/vaults/testVault/backupFabrics/Azure/protectionContainers/iaasvmcontainer;iaasVMContainerV2;netsdktestrg;netvmtestv2vm1/protectedItems/vm;iaasVMContainerV2;netsdktestrg;netvmtestv2vm1/operationResults/00000000-0000-0000-0000-000000000000?api-version=2020-09-01", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.RecoveryServices/vaults/testVault/backupFabrics/Azure/protectionContainers/iaasvmcontainer;iaasVMContainerV2;netsdktestrg;netvmtestv2vm1/protectedItems/vm;iaasVMContainerV2;netsdktestrg;netvmtestv2vm1/operationsStatus/00000000-0000-0000-0000-000000000000?api-version=2020-09-01", + "Retry-After": 60 + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/ValidateOperation_RestoreDisk.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/ValidateOperation_RestoreDisk.json new file mode 100644 index 000000000000..79380dcc8318 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureIaasVm/ValidateOperation_RestoreDisk.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "testRG", + "vaultName": "testVault", + "fabricName": "Azure", + "containerName": "IaasVMContainer;iaasvmcontainerv2;testRG;testvmName", + "protectedItemName": "VM;iaasvmcontainerv2;testRG;testvmName", + "recoveryPointId": "348916168024334", + "api-version": "2021-01-01", + "parameters": { + "objectType": "ValidateIaasVMRestoreOperationRequest", + "restoreRequest": { + "recoveryPointId": "348916168024334", + "objectType": "IaasVMRestoreRequest", + "recoveryType": "RestoreDisks", + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.Compute/virtualMachines/netvmtestv2vm1", + "storageAccountId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testingRg/providers/Microsoft.Storage/storageAccounts/testAccount", + "region": "southeastasia", + "createNewCloudService": true, + "originalStorageAccountOption": false, + "encryptionDetails": { + "encryptionEnabled": false + } + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "validateOperationResponse": { + "validationResults": [ + { + "code": "UserErrorCoreCountSubscriptionQuotaReached", + "message": "Core Count subscription quota has been reached.", + "recommendations": [ + "Contact Azure support to increase the limits." + ] + } + ] + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureStorage/ProtectableContainers_List.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureStorage/ProtectableContainers_List.json new file mode 100644 index 000000000000..60985ca627c3 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureStorage/ProtectableContainers_List.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "testRg", + "vaultName": "testvault", + "fabricName": "Azure", + "api-version": "2021-01-01", + "$filter": "backupManagementType eq 'AzureStorage' and workloadType eq 'AzureFileShare'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test-rg/providers/Microsoft.RecoveryServices/vaults/testvault/backupFabrics/Azure/protectableContainers/StorageContainer;storage;test-rg;teststorage", + "name": "StorageContainer;storage;test-rg;testst", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectableContainers", + "properties": { + "friendlyName": "teststorage", + "backupManagementType": "AzureStorage", + "protectableContainerType": "StorageContainer", + "healthStatus": "Healthy", + "containerId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test-rg/providers/Microsoft.Storage/storageAccounts/teststorage" + } + }, + { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test-rg/providers/Microsoft.RecoveryServices/vaults/testvault/backupFabrics/Azure/protectableContainers/StorageContainer;ClassicStorage;test-rg;teststorage", + "name": "StorageContainer;ClassicStorage;test-rg;teststorage", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectableContainers", + "properties": { + "friendlyName": "teststorage", + "backupManagementType": "AzureStorage", + "protectableContainerType": "StorageContainer", + "healthStatus": "Healthy", + "containerId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test-rg/providers/Microsoft.ClassicStorage/storageAccounts/teststorage" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureStorage/ProtectionContainers_Inquire.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureStorage/ProtectionContainers_Inquire.json new file mode 100644 index 000000000000..678e0fa44d56 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureStorage/ProtectionContainers_Inquire.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "test-rg", + "vaultName": "testvault", + "fabricName": "Azure", + "containerName": "storagecontainer;Storage;test-rg;teststorage", + "api-version": "2021-01-01" + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test-rg/providers/Microsoft.RecoveryServices/vaults/testvault/backupFabrics/Azure/protectionContainers/storagecontainer;Storage;test-rg;teststorage/operationResults/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Azure-AsyncOperation": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test-rg/providers/Microsoft.RecoveryServices/vaults/testvault/backupFabrics/Azure/protectionContainers/storagecontainer;Storage;test-rg;teststorage/operationsStatus/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Retry-After": 60 + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureStorage/ProtectionContainers_Inquire_Result.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureStorage/ProtectionContainers_Inquire_Result.json new file mode 100644 index 000000000000..f8c5e00d1812 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureStorage/ProtectionContainers_Inquire_Result.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "test-rg", + "vaultName": "testvault", + "fabricName": "Azure", + "containerName": "VMAppContainer;Compute;testRG;testSQL", + "operationId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-01-01" + }, + "responses": { + "204": {}, + "202": { + "headers": { + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test-rg/providers/Microsoft.RecoveryServices/vaults/testvault/backupFabrics/Azure/protectionContainers/VMAppContainer;Compute;testRG;testSQL/operationResults/00000000-0000-0000-0000-000000000000?api-version=2017-07-01", + "Azure-AsyncOperation": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test-rg/providers/Microsoft.RecoveryServices/vaults/testvault/backupFabrics/Azure/protectionContainers/VMAppContainer;Compute;testRG;testSQL/operationsStatus/00000000-0000-0000-0000-000000000000?api-version=2017-07-01", + "Retry-After": 60 + } + }, + "200": { + "body": { + "name": "VMAppContainer;Compute;testRG;testSQL", + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRg/providers/Microsoft.RecoveryServices/vaults/testVault/backupFabrics/Azure/protectionContainers/VMAppContainer;Compute;testRG;testSQL", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers", + "properties": { + "extendedInfo": { + "hostServerName": "testsql", + "nodesList": [], + "inquiryInfo": { + "status": "Success", + "errorDetail": { + "code": "Success", + "message": "Not Available", + "recommendations": [ + "Not Available" + ] + }, + "inquiryDetails": [ + { + "type": "sql", + "itemCount": 14, + "inquiryValidation": { + "status": "Success", + "errorDetail": { + "code": "Success", + "message": "Not Available", + "recommendations": [ + "Not Available" + ] + } + } + } + ] + } + }, + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.Compute/virtualMachines/testSQL", + "backupManagementType": "AzureWorkload", + "workloadType": null, + "containerType": "VMAppContainer", + "friendlyName": "testSQL" + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureStorage/ProtectionContainers_List.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureStorage/ProtectionContainers_List.json new file mode 100644 index 000000000000..20bc5180d0ec --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureStorage/ProtectionContainers_List.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "testRg", + "vaultName": "testVault", + "api-version": "2021-01-01", + "fabricName": "Azure", + "$filter": "backupManagementType eq 'AzureWorkload'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/172424a4-d65f-421e-a8de-197d98aabeba/resourcegroups/testrg/providers/microsoft.recoveryservices/vaults/suchandr-test-vault-wcus/backupFabrics/Azure/protectionContainers/StorageContainer;Storage;testrg;suchandrtestsa125", + "name": "StorageContainer;Storage;testrg;suchandrtestsa125", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers", + "properties": { + "sourceResourceId": "/subscriptions/172424a4-d65f-421e-a8de-197d98aabeba/resourceGroups/testrg/providers/Microsoft.Storage/storageAccounts/suchandrtestsa125", + "protectedItemCount": 2, + "friendlyName": "suchandrtestsa125", + "backupManagementType": "AzureStorage", + "registrationStatus": "Registered", + "healthStatus": "Healthy", + "containerType": "StorageContainer" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureStorage/ProtectionContainers_Register.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureStorage/ProtectionContainers_Register.json new file mode 100644 index 000000000000..d75ea06f619d --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureStorage/ProtectionContainers_Register.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "test-rg", + "vaultName": "testvault", + "fabricName": "Azure", + "containerName": "VMAppContainer;Compute;testRG;testSQL", + "api-version": "2021-01-01", + "parameters": { + "properties": { + "friendlyName": "testSQL", + "backupManagementType": "AzureWorkload", + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.Compute/virtualMachines/testSQL", + "containerType": "VMAppContainer" + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test-rg/providers/Microsoft.RecoveryServices/vaults/testvault/backupFabrics/Azure/protectionContainers/VMAppContainer;Compute;testRG;testSQL/operationResults/00000000-0000-0000-0000-000000000000?api-version=2017-07-01", + "Azure-AsyncOperation": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test-rg/providers/Microsoft.RecoveryServices/vaults/testvault/backupFabrics/Azure/protectionContainers/VMAppContainer;Compute;testRG;testSQL/operationsStatus/00000000-0000-0000-0000-000000000000?api-version=2017-07-01", + "Retry-After": 60 + } + }, + "200": { + "body": { + "name": "VMAppContainer;Compute;testRG;testSQL", + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRg/providers/Microsoft.RecoveryServices/vaults/testVault/backupFabrics/Azure/protectionContainers/VMAppContainer;Compute;testRG;testSQL", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers", + "properties": { + "extendedInfo": { + "hostServerName": "testsql", + "nodesList": [], + "inquiryInfo": { + "status": "Success", + "errorDetail": { + "code": "Success", + "message": "Not Available", + "recommendations": [ + "Not Available" + ] + }, + "inquiryDetails": [ + { + "type": "sql", + "itemCount": 14, + "inquiryValidation": { + "status": "Success", + "errorDetail": { + "code": "Success", + "message": "Not Available", + "recommendations": [ + "Not Available" + ] + } + } + } + ] + } + }, + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.Compute/virtualMachines/testSQL", + "backupManagementType": "AzureWorkload", + "workloadType": null, + "containerType": "VMAppContainer", + "friendlyName": "testSQL" + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureWorkload/BackupPolicies_List.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureWorkload/BackupPolicies_List.json new file mode 100644 index 000000000000..59114aee239f --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureWorkload/BackupPolicies_List.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "api-version": "2021-01-01", + "$filter": "backupManagementType eq 'AzureWorkload'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupPolicies/HourlyLogBackup", + "name": "HourlyLogBackup", + "type": "Microsoft.RecoveryServices/vaults/backupPolicies", + "properties": { + "backupManagementType": "AzureWorkload", + "workLoadType": "SQLDataBase", + "settings": { + "timeZone": "UTC", + "issqlcompression": false + }, + "subProtectionPolicy": [ + { + "policyType": "Full", + "schedulePolicy": { + "schedulePolicyType": "SimpleSchedulePolicy", + "scheduleRunFrequency": "Daily", + "scheduleRunTimes": [ + "2017-12-05T19:00:00Z" + ], + "scheduleWeeklyFrequency": 0 + }, + "retentionPolicy": { + "retentionPolicyType": "LongTermRetentionPolicy", + "dailySchedule": { + "retentionTimes": [ + "2017-12-05T19:00:00Z" + ], + "retentionDuration": { + "count": 30, + "durationType": "Days" + } + } + } + }, + { + "policyType": "Log", + "schedulePolicy": { + "schedulePolicyType": "LogSchedulePolicy", + "scheduleFrequencyInMins": 60 + }, + "retentionPolicy": { + "retentionPolicyType": "SimpleRetentionPolicy", + "retentionDuration": { + "count": 30, + "durationType": "Days" + } + } + } + ], + "protectedItemsCount": 0 + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureWorkload/BackupProtectionIntent_Delete.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureWorkload/BackupProtectionIntent_Delete.json new file mode 100644 index 000000000000..778e33c2941c --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureWorkload/BackupProtectionIntent_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myRG", + "vaultName": "myVault", + "fabricName": "Azure", + "intentObjectName": "249D9B07-D2EF-4202-AA64-65F35418564E", + "api-version": "2017-07-01", + "parameters": {} + }, + "responses": { + "204": {} + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureWorkload/BackupProtectionIntent_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureWorkload/BackupProtectionIntent_Get.json new file mode 100644 index 000000000000..20c39e0c4909 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureWorkload/BackupProtectionIntent_Get.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myRG", + "vaultName": "myVault", + "fabricName": "Azure", + "intentObjectName": "249D9B07-D2EF-4202-AA64-65F35418564E", + "api-version": "2017-07-01", + "parameters": {} + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myRG/providers/Microsoft.RecoveryServices/vaults/myVault/backupFabrics/Azure/backupProtectionIntent/249D9B07-D2EF-4202-AA64-65F35418564E", + "name": "249D9B07-D2EF-4202-AA64-65F35418564E", + "type": "Microsoft.RecoveryServices/vaults/backupProtectionIntent", + "properties": { + "backupManagementType": "AzureWorkload", + "policyId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.RecoveryServices/vaults/myVault/backupPolicies/myPolicy", + "itemId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.RecoveryServices/vaults/myVault/backupProtectionContainer/VMAppContainer;Compute;testVmName/backupProtectableItems/SQLInstance;MSSQLSERVER" + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureWorkload/BackupProtectionIntent_List.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureWorkload/BackupProtectionIntent_List.json new file mode 100644 index 000000000000..ca16c991a566 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureWorkload/BackupProtectionIntent_List.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myRG", + "vaultName": "myVault", + "api-version": "2017-07-01", + "parameters": {} + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myRG/providers/Microsoft.RecoveryServices/vaults/myVault/backupFabrics/Azure/backupProtectionIntent/249D9B07-D2EF-4202-AA64-65F35418564E", + "name": "249D9B07-D2EF-4202-AA64-65F35418564E", + "type": "Microsoft.RecoveryServices/vaults/backupProtectionIntent", + "properties": { + "backupManagementType": "AzureWorkload", + "policyId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.RecoveryServices/vaults/myVault/backupPolicies/myPolicy", + "itemId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.RecoveryServices/vaults/myVault/backupProtectionContainer/VMAppContainer;Compute;testVmName/backupProtectableItems/SQLInstance;MSSQLSERVER" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureWorkload/BackupWorkloadItems_List.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureWorkload/BackupWorkloadItems_List.json new file mode 100644 index 000000000000..3985f6c0b5d4 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureWorkload/BackupWorkloadItems_List.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "testRg", + "vaultName": "suchandr-seacan-rsv", + "api-version": "2021-01-01", + "$filter": "backupManagementType eq 'AzureWorkload'", + "fabricName": "Azure", + "containerName": "VMAppContainer;Compute;bvtdtestag;sqlserver-1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/testRg/providers/Microsoft.RecoveryServices/vaults/suchandr-seacan-rsv/backupFabrics/Azure/protectionContainers/VMAppContainer;Compute;bvtdtestag;sqlserver-1/protectableItems/SQLInstance;MSSQLSERVER", + "name": "SQLInstance;MSSQLSERVER", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/items", + "properties": { + "dataDirectoryPaths": [ + { + "type": "Data", + "path": "F:\\DATA\\" + }, + { + "type": "Log", + "path": "F:\\LOG\\" + } + ], + "parentName": "MSSQLSERVER", + "serverName": "sqlserver-1.contoso.com", + "isAutoProtectable": true, + "subinquireditemcount": 0, + "subWorkloadItemCount": 3, + "backupManagementType": "AzureWorkload", + "workloadType": "SQL", + "workloadItemType": "SQLInstance", + "friendlyName": "MSSQLSERVER", + "protectionState": "NotProtected" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureWorkload/ProtectionContainers_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureWorkload/ProtectionContainers_Get.json new file mode 100644 index 000000000000..18f5dfe8d75a --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureWorkload/ProtectionContainers_Get.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "testRg", + "vaultName": "testVault", + "fabricName": "Azure", + "containerName": "VMAppContainer;Compute;testRG;testSQL", + "api-version": "2021-01-01", + "$filter": "backupManagementType eq 'AzureWorkload'" + }, + "responses": { + "200": { + "body": { + "name": "VMAppContainer;Compute;testRG;testSQL", + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRg/providers/Microsoft.RecoveryServices/vaults/testVault/backupFabrics/Azure/protectionContainers/VMAppContainer;Compute;testRG;testSQL", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers", + "properties": { + "extendedInfo": { + "hostServerName": "testsql", + "nodesList": [], + "inquiryInfo": { + "status": "Success", + "errorDetail": { + "code": "Success", + "message": "Not Available", + "recommendations": [ + "Not Available" + ] + }, + "inquiryDetails": [ + { + "type": "sql", + "itemCount": 14, + "inquiryValidation": { + "status": "Success", + "errorDetail": { + "code": "Success", + "message": "Not Available", + "recommendations": [ + "Not Available" + ] + } + } + } + ] + } + }, + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.Compute/virtualMachines/testSQL", + "backupManagementType": "AzureWorkload", + "workloadType": null, + "containerType": "VMAppContainer", + "friendlyName": "testSQL" + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureWorkload/ProtectionContainers_Unregister.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureWorkload/ProtectionContainers_Unregister.json new file mode 100644 index 000000000000..8aa1b1bdf40b --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureWorkload/ProtectionContainers_Unregister.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "testRg", + "vaultName": "testVault", + "api-version": "2021-01-01", + "fabricName": "Azure", + "containerName": "storagecontainer;Storage;test-rg;teststorage" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test-rg/providers/Microsoft.RecoveryServices/vaults/testvault/backupFabrics/Azure/protectionContainers/storagecontainer;Storage;test-rg;teststorage/operationResults/00000000-0000-0000-0000-000000000000?api-version=2017-07-01", + "Azure-AsyncOperation": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test-rg/providers/Microsoft.RecoveryServices/vaults/testvault/backupFabrics/Azure/protectionContainers/storagecontainer;Storage;test-rg;teststorage/operationsStatus/00000000-0000-0000-0000-000000000000?api-version=2017-07-01", + "Retry-After": 60 + } + }, + "204": {} + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureWorkload/ProtectionPolicies_CreateOrUpdate_Complex.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureWorkload/ProtectionPolicies_CreateOrUpdate_Complex.json new file mode 100644 index 000000000000..f3d67859d33c --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/AzureWorkload/ProtectionPolicies_CreateOrUpdate_Complex.json @@ -0,0 +1,260 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "policyName": "testPolicy1", + "api-version": "2021-01-01", + "parameters": { + "properties": { + "backupManagementType": "AzureWorkload", + "workLoadType": "SQLDataBase", + "settings": { + "timeZone": "Pacific Standard Time", + "issqlcompression": false + }, + "subProtectionPolicy": [ + { + "policyType": "Full", + "schedulePolicy": { + "schedulePolicyType": "SimpleSchedulePolicy", + "scheduleRunFrequency": "Weekly", + "scheduleRunTimes": [ + "2018-01-24T10:00:00Z" + ], + "scheduleRunDays": [ + "Sunday", + "Tuesday" + ] + }, + "retentionPolicy": { + "retentionPolicyType": "LongTermRetentionPolicy", + "weeklySchedule": { + "daysOfTheWeek": [ + "Sunday", + "Tuesday" + ], + "retentionTimes": [ + "2018-01-24T10:00:00Z" + ], + "retentionDuration": { + "count": 2, + "durationType": "Weeks" + } + }, + "monthlySchedule": { + "retentionScheduleFormatType": "Weekly", + "retentionScheduleWeekly": { + "daysOfTheWeek": [ + "Sunday" + ], + "weeksOfTheMonth": [ + "Second" + ] + }, + "retentionTimes": [ + "2018-01-24T10:00:00Z" + ], + "retentionDuration": { + "count": 1, + "durationType": "Months" + } + }, + "yearlySchedule": { + "retentionScheduleFormatType": "Weekly", + "monthsOfYear": [ + "January", + "June", + "December" + ], + "retentionScheduleWeekly": { + "daysOfTheWeek": [ + "Sunday" + ], + "weeksOfTheMonth": [ + "Last" + ] + }, + "retentionTimes": [ + "2018-01-24T10:00:00Z" + ], + "retentionDuration": { + "count": 1, + "durationType": "Years" + } + } + } + }, + { + "policyType": "Differential", + "schedulePolicy": { + "schedulePolicyType": "SimpleSchedulePolicy", + "scheduleRunFrequency": "Weekly", + "scheduleRunTimes": [ + "2018-01-24T10:00:00Z" + ], + "scheduleRunDays": [ + "Friday" + ] + }, + "retentionPolicy": { + "retentionPolicyType": "SimpleRetentionPolicy", + "retentionDuration": { + "count": 8, + "durationType": "Days" + } + } + }, + { + "policyType": "Log", + "schedulePolicy": { + "schedulePolicyType": "LogSchedulePolicy", + "scheduleFrequencyInMins": 60 + }, + "retentionPolicy": { + "retentionPolicyType": "SimpleRetentionPolicy", + "retentionDuration": { + "count": 7, + "durationType": "Days" + } + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupPolicies/testPolicy1", + "name": "testPolicy1", + "type": "Microsoft.RecoveryServices/vaults/backupPolicies", + "properties": { + "backupManagementType": "AzureWorkload", + "workLoadType": "SQLDataBase", + "settings": { + "timeZone": "Pacific Standard Time", + "issqlcompression": false + }, + "subProtectionPolicy": [ + { + "policyType": "Full", + "schedulePolicy": { + "schedulePolicyType": "SimpleSchedulePolicy", + "scheduleRunFrequency": "Weekly", + "scheduleRunDays": [ + "Sunday", + "Tuesday" + ], + "scheduleRunTimes": [ + "2018-01-24T10:00:00Z" + ], + "scheduleWeeklyFrequency": 0 + }, + "retentionPolicy": { + "retentionPolicyType": "LongTermRetentionPolicy", + "weeklySchedule": { + "daysOfTheWeek": [ + "Sunday", + "Tuesday" + ], + "retentionTimes": [ + "2018-01-24T10:00:00Z" + ], + "retentionDuration": { + "count": 2, + "durationType": "Weeks" + } + }, + "monthlySchedule": { + "retentionScheduleFormatType": "Weekly", + "retentionScheduleWeekly": { + "daysOfTheWeek": [ + "Sunday" + ], + "weeksOfTheMonth": [ + "Second" + ] + }, + "retentionTimes": [ + "2018-01-24T10:00:00Z" + ], + "retentionDuration": { + "count": 1, + "durationType": "Months" + } + }, + "yearlySchedule": { + "retentionScheduleFormatType": "Weekly", + "monthsOfYear": [ + "January", + "June", + "December" + ], + "retentionScheduleWeekly": { + "daysOfTheWeek": [ + "Sunday" + ], + "weeksOfTheMonth": [ + "Last" + ] + }, + "retentionTimes": [ + "2018-01-24T10:00:00Z" + ], + "retentionDuration": { + "count": 1, + "durationType": "Years" + } + } + } + }, + { + "policyType": "Differential", + "schedulePolicy": { + "schedulePolicyType": "SimpleSchedulePolicy", + "scheduleRunFrequency": "Weekly", + "scheduleRunDays": [ + "Friday" + ], + "scheduleRunTimes": [ + "2018-01-24T10:00:00Z" + ], + "scheduleWeeklyFrequency": 0 + }, + "retentionPolicy": { + "retentionPolicyType": "SimpleRetentionPolicy", + "retentionDuration": { + "count": 8, + "durationType": "Days" + } + } + }, + { + "policyType": "Log", + "schedulePolicy": { + "schedulePolicyType": "LogSchedulePolicy", + "scheduleFrequencyInMins": 60 + }, + "retentionPolicy": { + "retentionPolicyType": "SimpleRetentionPolicy", + "retentionDuration": { + "count": 7, + "durationType": "Days" + } + } + } + ], + "protectedItemsCount": 0 + } + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupPolicies/testPolicy1/operationResults/00000000-0000-0000-0000-000000000000?api-version=2016-06-01", + "Azure-AsyncOperation": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupPolicies/testPolicy1/operations/00000000-0000-0000-0000-000000000000?api-version=2016-06-01", + "Retry-After": 60 + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/BackupDataMove/BackupDataMoveOperationStatus_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/BackupDataMove/BackupDataMoveOperationStatus_Get.json new file mode 100644 index 000000000000..a48a09250cbc --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/BackupDataMove/BackupDataMoveOperationStatus_Get.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "sourceRG", + "vaultName": "source-rsv", + "operationId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "id": "0f48183b-0a44-4dca-aec1-bba5daab888a", + "name": "0f48183b-0a44-4dca-aec1-bba5daab888a", + "status": "Succeeded", + "startTime": "2020-02-27T11:59:47.5901592Z", + "endTime": "2020-02-27T11:59:47.5901592Z" + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/BackupDataMove/PrepareDataMoveOperationResult_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/BackupDataMove/PrepareDataMoveOperationResult_Get.json new file mode 100644 index 000000000000..39453fc2f258 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/BackupDataMove/PrepareDataMoveOperationResult_Get.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "sourceRG", + "vaultName": "source-rsv", + "operationId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-01-01" + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sourceRG/providers/Microsoft.RecoveryServices/vaults/source-rsv/backupStorageConfig/vaultStorageConfig/operationResult/00000000-0000-0000-0000-000000000000?api-version=2020-07-01-preview", + "Azure-AsyncOperation": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sourceRG/providers/Microsoft.RecoveryServices/vaults/source-rsv/backupStorageConfig/vaultStorageConfig/operationStatus/00000000-0000-0000-0000-000000000000?api-version=2020-07-01-preview", + "Retry-After": 60 + } + }, + "200": { + "body": { + "objectType": "" + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/BackupDataMove/PrepareDataMove_Post.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/BackupDataMove/PrepareDataMove_Post.json new file mode 100644 index 000000000000..b36eec47325a --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/BackupDataMove/PrepareDataMove_Post.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "sourceRG", + "vaultName": "source-rsv", + "api-version": "2021-01-01", + "parameters": { + "targetResourceId": "/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/targetRG/providers/Microsoft.RecoveryServices/vaults/target-rsv", + "targetRegion": "USGov Virginia", + "dataMoveLevel": "Vault" + } + }, + "responses": { + "200": {}, + "202": { + "headers": { + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sourceRG/providers/Microsoft.RecoveryServices/vaults/source-rsv/backupStorageConfig/vaultStorageConfig/prepareDataMove/operationResult/00000000-0000-0000-0000-000000000000?api-version=2020-07-01-preview", + "Azure-AsyncOperation": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sourceRG/providers/Microsoft.RecoveryServices/vaults/source-rsv/backupStorageConfig/vaultStorageConfig/backupDataMove/operationStatus/00000000-0000-0000-0000-000000000000?api-version=2020-07-01-preview", + "Retry-After": 60 + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/BackupDataMove/TriggerDataMove_Post.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/BackupDataMove/TriggerDataMove_Post.json new file mode 100644 index 000000000000..b09229f99a99 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/BackupDataMove/TriggerDataMove_Post.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "targetRG", + "vaultName": "target-rsv", + "api-version": "2021-01-01", + "parameters": { + "sourceResourceId": "/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/sourceRG/providers/Microsoft.RecoveryServices/vaults/source-rsv", + "sourceRegion": "USGov Iowa", + "dataMoveLevel": "Vault", + "correlationId": "MTg2OTcyMzM4NzYyMjc1NDY3Nzs1YmUzYmVmNi04YjJiLTRhOTItOTllYi01NTM0MDllYjk2NjE=" + } + }, + "responses": { + "200": {}, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sourceRG/providers/Microsoft.RecoveryServices/vaults/source-rsv/backupStorageConfig/vaultStorageConfig/backupDataMove/operationStatus/00000000-0000-0000-0000-000000000000?api-version=2020-07-01-preview", + "Retry-After": 60 + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/BackupResourceEncryptionConfig_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/BackupResourceEncryptionConfig_Get.json new file mode 100644 index 000000000000..40c92ec537de --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/BackupResourceEncryptionConfig_Get.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "rishgrp", + "vaultName": "rishTestVault", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rishgrp/providers/Microsoft.RecoveryServicesBVTD2/vaults/rishTestVault/backupEncryptionConfigs/backupResourceEncryptionConfig", + "name": "backupResourceEncryptionConfig", + "type": "Microsoft.RecoveryServices/vaults/backupEncryptionConfigs", + "properties": { + "userAssignedIdentity": "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi", + "useSystemAssignedIdentity": false, + "encryptionAtRestType": "CustomerManaged", + "keyUri": "https://gktestkv1.vault.azure.net/keys/Test1/ed2e8cdc7f86477ebf0c6462b504a9ed", + "subscriptionId": "1a2311d9-66f5-47d3-a9fb-7a37da63934b", + "lastUpdateStatus": "Succeeded", + "infrastructureEncryptionState": "Disabled" + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/BackupResourceEncryptionConfig_Put.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/BackupResourceEncryptionConfig_Put.json new file mode 100644 index 000000000000..1a7c0a600e7d --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/BackupResourceEncryptionConfig_Put.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "test-rg", + "vaultName": "source-rsv", + "api-version": "2021-01-01", + "parameters": { + "properties": { + "encryptionAtRestType": "CustomerManaged", + "keyUri": "https://gktestkv1.vault.azure.net/keys/Test1/ed2e8cdc7f86477ebf0c6462b504a9ed", + "subscriptionId": "1a2311d9-66f5-47d3-a9fb-7a37da63934b", + "infrastructureEncryptionState": "true" + } + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/BackupProtectedItem_UsageSummary_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/BackupProtectedItem_UsageSummary_Get.json new file mode 100644 index 000000000000..fa3f011c32d8 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/BackupProtectedItem_UsageSummary_Get.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "testRG", + "vaultName": "testVault", + "api-version": "2017-07-01", + "$filter": "type eq 'BackupProtectedItemCountSummary'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "unit": "Count", + "currentValue": 7, + "limit": -1, + "name": { + "value": "AzureIaasVM", + "localizedValue": "Azure Virtual Machine" + } + }, + { + "unit": "Count", + "currentValue": 3, + "limit": -1, + "name": { + "value": "MAB", + "localizedValue": "Azure Backup Agent" + } + }, + { + "unit": "Count", + "currentValue": 1, + "limit": -1, + "name": { + "value": "AzureBackupServer", + "localizedValue": "Azure Backup Server" + } + }, + { + "unit": "Count", + "currentValue": 2, + "limit": -1, + "name": { + "value": "AzureStorage", + "localizedValue": "Azure Storage (Azure Files)" + } + }, + { + "unit": "Count", + "currentValue": 2, + "limit": -1, + "name": { + "value": "AzureWorkload", + "localizedValue": "SQL in Azure VM" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/BackupProtectionContainers_UsageSummary_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/BackupProtectionContainers_UsageSummary_Get.json new file mode 100644 index 000000000000..b13a75b4ddcc --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/BackupProtectionContainers_UsageSummary_Get.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "testRG", + "vaultName": "testVault", + "api-version": "2017-07-01", + "$filter": "type eq 'BackupProtectionContainerCountSummary'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "unit": "Count", + "currentValue": 2, + "limit": -1, + "name": { + "value": "AzureBackupServer", + "localizedValue": "Azure Backup Server" + } + }, + { + "unit": "Count", + "currentValue": 3, + "limit": -1, + "name": { + "value": "MAB", + "localizedValue": "Azure Backup Agent" + } + }, + { + "unit": "Count", + "currentValue": 1, + "limit": -1, + "name": { + "value": "AzureWorkload", + "localizedValue": "SQL in Azure VM" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/BackupResourceVaultConfigs_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/BackupResourceVaultConfigs_Get.json new file mode 100644 index 000000000000..44d2e61f19e5 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/BackupResourceVaultConfigs_Get.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "SwaggerTest", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/SwaggerTest/backupconfig/vaultconfig", + "name": "vaultconfig", + "type": "Microsoft.RecoveryServices/vaults/backupconfig", + "properties": { + "enhancedSecurityState": "Enabled" + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/BackupResourceVaultConfigs_Patch.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/BackupResourceVaultConfigs_Patch.json new file mode 100644 index 000000000000..9140317cc328 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/BackupResourceVaultConfigs_Patch.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "SwaggerTest", + "api-version": "2021-01-01", + "parameters": { + "properties": { + "enhancedSecurityState": "Enabled" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/SwaggerTest/backupconfig/vaultconfig", + "name": "vaultconfig", + "type": "Microsoft.RecoveryServices/vaults/backupconfig", + "properties": { + "enhancedSecurityState": "Enabled" + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/BackupResourceVaultConfigs_Put.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/BackupResourceVaultConfigs_Put.json new file mode 100644 index 000000000000..40d992ff4c74 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/BackupResourceVaultConfigs_Put.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "SwaggerTest", + "api-version": "2021-01-01", + "parameters": { + "properties": { + "enhancedSecurityState": "Enabled", + "softDeleteFeatureState": "Enabled" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/SwaggerTest/backupconfig/vaultconfig", + "name": "vaultconfig", + "type": "Microsoft.RecoveryServices/vaults/backupconfig", + "properties": { + "enhancedSecurityState": "Enabled", + "softDeleteFeatureState": "Enabled" + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/BackupSecurityPin_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/BackupSecurityPin_Get.json new file mode 100644 index 000000000000..72d6a94ed429 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/BackupSecurityPin_Get.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "SwaggerTest", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "token": "200432", + "expiryTimeInUtcTicks": 636495150137443121, + "securityPIN": "200432" + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/CancelJobOperationResult.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/CancelJobOperationResult.json new file mode 100644 index 000000000000..8b338c0fdc3c --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/CancelJobOperationResult.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "jobName": "00000000-0000-0000-0000-000000000000", + "operationId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-01-01" + }, + "responses": { + "204": {}, + "200": {}, + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupJobs/00000000-0000-0000-0000-000000000000/operationResults/00000000-0000-0000-0000-000000000000?api-version=2017-07-01", + "Retry-After": 60 + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/ExportJobsOperationResult.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/ExportJobsOperationResult.json new file mode 100644 index 000000000000..0c536be33418 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/ExportJobsOperationResult.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "operationId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "operation": { + "objectType": "ExportJobsOperationResultInfo", + "blobUrl": "https://azureblob.blob.core.windows.net/reportcontainer/exportjobsreportc00000000-0000-0000-0000-000000000000", + "blobSasKey": "?sv=2014-02-14&sr=b&sig=&st=2017-11-29T07%3A53%3A34Z&se=2017-11-29T08%3A03%3A34Z&sp=r" + }, + "headers": {} + } + }, + "202": { + "headers": { + "Retry-After": 60, + "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupJobs/operationResults/00000000-0000-0000-0000-000000000000?api-version=2017-07-01" + }, + "body": { + "operation": { + "objectType": "ExportJobsOperationResultInfo" + }, + "headers": { + "Location": [ + "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupJobs/operationResults/00000000-0000-0000-0000-000000000000?api-version=2017-07-01" + ], + "Retry-After": [ + "60" + ] + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/GetJobDetails.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/GetJobDetails.json new file mode 100644 index 000000000000..50215a36063e --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/GetJobDetails.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "jobName": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupJobs/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "type": "Microsoft.RecoveryServices/vaults/backupJobs", + "properties": { + "jobType": "AzureIaaSVMJob", + "duration": "PT9.8782791S", + "virtualMachineVersion": "Compute", + "extendedInfo": { + "tasksList": [ + { + "taskId": "Take Snapshot", + "duration": "PT0S", + "status": "InProgress" + }, + { + "taskId": "Transfer data to vault", + "duration": "PT0S", + "status": "NotStarted" + } + ], + "propertyBag": { + "VM Name": "testvm" + } + }, + "entityFriendlyName": "testvm", + "backupManagementType": "AzureIaasVM", + "operation": "Backup", + "status": "InProgress", + "startTime": "2017-08-03T05:31:07.014604Z", + "activityId": "00000000-0000-0000-0000-000000000000" + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/ListJobs.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/ListJobs.json new file mode 100644 index 000000000000..5a156e09cca8 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/ListJobs.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupJobs/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "type": "Microsoft.RecoveryServices/vaults/backupJobs", + "properties": { + "jobType": "AzureIaaSVMJob", + "duration": "PT12.4272909S", + "virtualMachineVersion": "Compute", + "entityFriendlyName": "testvm", + "backupManagementType": "AzureIaasVM", + "operation": "Backup", + "status": "InProgress", + "startTime": "2017-08-03T05:31:07.014604Z", + "activityId": "00000000-0000-0000-0000-000000000000" + } + }, + { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupJobs/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "type": "Microsoft.RecoveryServices/vaults/backupJobs", + "properties": { + "jobType": "AzureIaaSVMJob", + "duration": "PT31.3066291S", + "virtualMachineVersion": "Compute", + "entityFriendlyName": "testvm", + "backupManagementType": "AzureIaasVM", + "operation": "ConfigureBackup", + "status": "Completed", + "startTime": "2017-08-03T05:30:32.4487085Z", + "endTime": "2017-08-03T05:31:03.7553376Z", + "activityId": "00000000-0000-0000-0000-000000000000" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/ListJobsWithAllSupportedFilters.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/ListJobsWithAllSupportedFilters.json new file mode 100644 index 000000000000..590dbcb02c46 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/ListJobsWithAllSupportedFilters.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "api-version": "2021-01-01", + "$filter": "startTime eq '2016-01-01 00:00:00 AM' and endTime eq '2017-11-29 00:00:00 AM' and operation eq 'Backup' and backupManagementType eq 'AzureIaasVM' and status eq 'InProgress'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupJobs/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "type": "Microsoft.RecoveryServices/vaults/backupJobs", + "properties": { + "jobType": "AzureIaaSVMJob", + "duration": "PT12.4272909S", + "virtualMachineVersion": "Compute", + "entityFriendlyName": "testvm", + "backupManagementType": "AzureIaasVM", + "operation": "Backup", + "status": "InProgress", + "startTime": "2017-08-03T05:31:07.014604Z", + "activityId": "00000000-0000-0000-0000-000000000000" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/ListJobsWithStartTimeAndEndTimeFilters.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/ListJobsWithStartTimeAndEndTimeFilters.json new file mode 100644 index 000000000000..165b31f8e4f3 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/ListJobsWithStartTimeAndEndTimeFilters.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "api-version": "2021-01-01", + "$filter": "startTime eq '2016-01-01 00:00:00 AM' and endTime eq '2017-11-29 00:00:00 AM'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupJobs/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "type": "Microsoft.RecoveryServices/vaults/backupJobs", + "properties": { + "jobType": "AzureIaaSVMJob", + "duration": "PT12.4272909S", + "virtualMachineVersion": "Compute", + "entityFriendlyName": "testvm", + "backupManagementType": "AzureIaasVM", + "operation": "Backup", + "status": "InProgress", + "startTime": "2017-08-03T05:31:07.014604Z", + "activityId": "00000000-0000-0000-0000-000000000000" + } + }, + { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupJobs/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "type": "Microsoft.RecoveryServices/vaults/backupJobs", + "properties": { + "jobType": "AzureIaaSVMJob", + "duration": "PT31.3066291S", + "virtualMachineVersion": "Compute", + "entityFriendlyName": "testvm", + "backupManagementType": "AzureIaasVM", + "operation": "ConfigureBackup", + "status": "Completed", + "startTime": "2017-08-03T05:30:32.4487085Z", + "endTime": "2017-08-03T05:31:03.7553376Z", + "activityId": "00000000-0000-0000-0000-000000000000" + } + } + ], + "nextLink": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupJobs?api-version=2017-07-01&%24filter=startTime+eq+%272016-01-01+00%3a00%3a00+AM%27+and+endTime+eq+%272017-11-29+00%3a00%3a00+AM%27&%24skiptoken=%3c%3fxml+version%3d%221.0%22+encoding%3d%22utf-16%22%3f%3e%0d%0a%3cContinuationToken%3e%0d%0a++%3cContinuationToken%3e%0d%0a++++%3cVersion%3e2.0%3c%2fVersion%3e%0d%0a++++%3cType%3eTable%3c%2fType%3e%0d%0a++++%3cNextPartitionKey%3e1!28!NzI5MTk0OTM1MDkwNjEwODQzMA--%3c%2fNextPartitionKey%3e%0d%0a++++%3cNextRowKey%3e1!108!am9ic3N0YXJ0dGltZWluZGV4XzBfMjUxODkxNDYzNTI2NjE5Nzg5OF8wXzYwOWZkM2JmLTU4MzctNDFkYi1iMjExLTY1MzliNDNlZjM1OA--%3c%2fNextRowKey%3e%0d%0a++++%3cTargetLocation%3ePrimary%3c%2fTargetLocation%3e%0d%0a++%3c%2fContinuationToken%3e%0d%0a%3c%2fContinuationToken%3e" + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/ProtectedItem_Delete.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/ProtectedItem_Delete.json new file mode 100644 index 000000000000..724572e718e1 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/ProtectedItem_Delete.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "PythonSDKBackupTestRg", + "vaultName": "PySDKBackupTestRsVault", + "fabricName": "Azure", + "containerName": "iaasvmcontainer;iaasvmcontainerv2;pysdktestrg;pysdktestv2vm1", + "protectedItemName": "vm;iaasvmcontainerv2;pysdktestrg;pysdktestv2vm1", + "api-version": "2021-01-01" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PythonSDKBackupTestRg/providers/Microsoft.RecoveryServices/vaults/PySDKBackupTestRsVault/backupOperations/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PythonSDKBackupTestRg/providers/Microsoft.RecoveryServices/vaults/PySDKBackupTestRsVault/backupOperationResults/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Retry-After": 60 + } + }, + "204": {} + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/ProtectedItem_Delete_OperationResult.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/ProtectedItem_Delete_OperationResult.json new file mode 100644 index 000000000000..301d22b6335c --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/ProtectedItem_Delete_OperationResult.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "PythonSDKBackupTestRg", + "vaultName": "PySDKBackupTestRsVault", + "operationId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-01-01" + }, + "responses": { + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PythonSDKBackupTestRg/providers/Microsoft.RecoveryServices/vaults/PySDKBackupTestRsVault/backupOperations/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PythonSDKBackupTestRg/providers/Microsoft.RecoveryServices/vaults/PySDKBackupTestRsVault/backupOperationResults/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Retry-After": 60 + } + }, + "200": {}, + "204": {} + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/ProtectedItem_Delete_OperationStatus.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/ProtectedItem_Delete_OperationStatus.json new file mode 100644 index 000000000000..63e5d3412e3d --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/ProtectedItem_Delete_OperationStatus.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "PythonSDKBackupTestRg", + "vaultName": "PySDKBackupTestRsVault", + "operationId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "status": "InProgress", + "startTime": "2017-08-03T06:52:53.886027Z", + "endTime": "0001-01-01T00:00:00.00000Z" + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/RefreshContainers.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/RefreshContainers.json new file mode 100644 index 000000000000..f82315cb5d9c --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/RefreshContainers.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "fabricName": "Azure", + "api-version": "2021-01-01" + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupFabrics/Azure/operationResults/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Retry-After": 60 + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/RefreshContainers_OperationResults.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/RefreshContainers_OperationResults.json new file mode 100644 index 000000000000..0d318febcbb9 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/RefreshContainers_OperationResults.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "fabricName": "Azure", + "operationId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-01-01" + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupFabrics/Azure/operationResults/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Retry-After": 60 + } + }, + "204": {} + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/TriggerBackup_Post.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/TriggerBackup_Post.json new file mode 100644 index 000000000000..f78613afb1e8 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/TriggerBackup_Post.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "linuxRsVaultRG", + "vaultName": "linuxRsVault", + "fabricName": "Azure", + "containerName": "IaasVMContainer;iaasvmcontainerv2;testrg;v1win2012r", + "protectedItemName": "VM;iaasvmcontainerv2;testrg;v1win2012r", + "api-version": "2021-01-01", + "parameters": { + "properties": { + "objectType": "IaasVMBackupRequest" + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/linuxRsVaultRG/providers/Microsoft.RecoveryServices/vaults/linuxRsVault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainer;testrg;v1win2012r/protectedItems/VM;iaasvmcontainer;testrg;v1win2012r/operationResults/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Azure-AsyncOperation": "https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/linuxRsVaultRG/providers/Microsoft.RecoveryServices/vaults/linuxRsVault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainer;testrg;v1win2012r/protectedItems/VM;iaasvmcontainer;testrg;v1win2012r/operationsStatus/00000000-0000-0000-0000-000000000000?api-version=2016-12-01", + "Retry-After": 60 + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/TriggerCancelJob.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/TriggerCancelJob.json new file mode 100644 index 000000000000..2a1186dc59e7 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/TriggerCancelJob.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "jobName": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-01-01" + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupJobs/00000000-0000-0000-0000-000000000000/operationResults/00000000-0000-0000-0000-000000000000?api-version=2017-07-01", + "Retry-After": 60 + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/TriggerExportJobs.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/TriggerExportJobs.json new file mode 100644 index 000000000000..487b5f4a0007 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Common/TriggerExportJobs.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "api-version": "2021-01-01" + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupJobs/operationResults/00000000-0000-0000-0000-000000000000?api-version=2017-07-01", + "Retry-After": 60 + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Dpm/BackupEngines_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Dpm/BackupEngines_Get.json new file mode 100644 index 000000000000..04f6343d7c8d --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Dpm/BackupEngines_Get.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "testRG", + "vaultName": "testVault", + "backupEngineName": "testServer", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.RecoveryServices/vaults/testVault/backupEngines/testServer", + "name": "testServer", + "type": "Microsoft.RecoveryServices/vaults/backupEngines", + "properties": { + "backupEngineType": "DpmBackupEngine", + "dpmVersion": "5.1.348.0", + "isDpmUpgradeAvailable": false, + "azureBackupAgentVersion": "2.0.9532.0", + "isAzureBackupAgentUpgradeAvailable": false, + "registrationStatus": "Registered", + "backupEngineState": "Active", + "friendlyName": "testServer", + "extendedInfo": { + "protectedItemsCount": 35, + "protectedServersCount": 21, + "diskCount": 5, + "availableDiskSpace": 50, + "usedDiskSpace": 20 + } + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Dpm/BackupEngines_List.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Dpm/BackupEngines_List.json new file mode 100644 index 000000000000..a6554224ec9e --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/Dpm/BackupEngines_List.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "testRG", + "vaultName": "testVault", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.RecoveryServices/vaults/testVault/backupEngines/testServer1", + "name": "testServer1", + "type": "Microsoft.RecoveryServices/vaults/backupEngines", + "properties": { + "backupEngineType": "DpmBackupEngine", + "dpmVersion": "5.1.348.0", + "isDpmUpgradeAvailable": false, + "azureBackupAgentVersion": "2.0.9532.0", + "isAzureBackupAgentUpgradeAvailable": false, + "registrationStatus": "Registered", + "backupEngineState": "Active", + "friendlyName": "testServer1", + "extendedInfo": { + "protectedItemsCount": 35, + "protectedServersCount": 21, + "diskCount": 5, + "availableDiskSpace": 50, + "usedDiskSpace": 20 + } + } + }, + { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.RecoveryServices/vaults/testVault/backupEngines/testServer5", + "name": "testServer5", + "type": "Microsoft.RecoveryServices/vaults/backupEngines", + "properties": { + "backupEngineType": "DpmBackupEngine", + "dpmVersion": "5.1.348.0", + "isDpmUpgradeAvailable": false, + "azureBackupAgentVersion": "2.0.9530.0", + "isAzureBackupAgentUpgradeAvailable": false, + "registrationStatus": "Registered", + "backupEngineState": "Active", + "friendlyName": "testServer5", + "extendedInfo": { + "protectedItemsCount": 35, + "protectedServersCount": 21, + "diskCount": 5, + "availableDiskSpace": 50, + "usedDiskSpace": 20 + } + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/ListOperations.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/ListOperations.json new file mode 100644 index 000000000000..f4b077d336d0 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/ListOperations.json @@ -0,0 +1,463 @@ +{ + "parameters": { + "api-version": "2016-08-10" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "microsoft.recoveryservices/vaults/usages/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Vault Usage", + "operation": "Recovery Services Vault usage details.", + "description": "Returns usage details for a Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupUsageSummaries/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Usages Summaries", + "operation": "Recovery Services Protected Items and Protected Servers usage summaries details.", + "description": "Returns summaries for Protected Items and Protected Servers for a Recovery Services ." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/storageConfig/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Vault Storage Config", + "operation": "Get Resource Storage Config", + "description": "Returns Storage Configuration for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/storageConfig/write", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Vault Storage Config", + "operation": "Write Resource Storage Config", + "description": "Updates Storage Configuration for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupconfig/vaultconfig/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Vault Config", + "operation": "Get Resource Config", + "description": "Returns Configuration for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupconfig/vaultconfig/write", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Vault Config", + "operation": "Update Resource Config", + "description": "Updates Configuration for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/tokenInfo/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Token Info", + "operation": "Get Vault Token Info", + "description": "Returns token information for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupSecurityPIN/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "SecurityPINInfo", + "operation": "Get Security PIN Info", + "description": "Returns Security PIN Information for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupManagementMetaData/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Management Metadata", + "operation": "Get Backup Management Metadata", + "description": "Returns Backup Management Metadata for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupOperationResults/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Operation Results", + "operation": "Get Backup Operation Result", + "description": "Returns Backup Operation Result for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupOperations/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Operation Status", + "operation": "Get Backup Operation Status", + "description": "Returns Backup Operation Status for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupJobs/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Jobs", + "operation": "Get Jobs", + "description": "Returns all Job Objects" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupJobs/cancel/action", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Jobs", + "operation": "Cancel Jobs", + "description": "Cancel the Job" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupJobsExport/action", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Export Backup Jobs", + "operation": "Export Jobs", + "description": "Export Jobs" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupJobs/operationResults/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Jobs Operation Results", + "operation": "Get Job Operation Result", + "description": "Returns the Result of Job Operation." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupJobsExport/operationResults/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Export Backup Jobs Operation Results", + "operation": "Get Export Job Operation Result", + "description": "Returns the Result of Export Job Operation." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Recovery Points", + "operation": "Get Recovery Points", + "description": "Get Recovery Points for Protected Items." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints/restore/action", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Recovery Points", + "operation": "Restore Recovery Points", + "description": "Restore Recovery Points for Protected Items." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints/provisionInstantItemRecovery/action", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Recovery Points", + "operation": "Provision Instant Item Recovery for Protected Item", + "description": "Provision Instant Item Recovery for Protected Item" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints/revokeInstantItemRecovery/action", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Recovery Points", + "operation": "Revoke Instant Item Recovery for Protected Item", + "description": "Revoke Instant Item Recovery for Protected Item" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupPolicies/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Policies", + "operation": "Get Protection Policy", + "description": "Returns all Protection Policies" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupPolicies/write", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Policies", + "operation": "Create Protection Policy", + "description": "Creates Protection Policy" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupPolicies/delete", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Policies", + "operation": "Delete Protection Policy", + "description": "Delete a Protection Policy" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupPolicies/operationResults/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Policy Operation Results", + "operation": "Get Policy Operation Results", + "description": "Get Results of Policy Operation." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupPolicies/operationsStatus/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Policy Operation Status", + "operation": "Get Policy Operation Status", + "description": "Get Status of Policy Operation." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protected Items", + "operation": "Get Protected Item Details", + "description": "Returns object details of the Protected Item" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupProtectedItems/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protected Items", + "operation": "Get All Protected Items", + "description": "Returns the list of all Protected Items." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/write", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protected Items", + "operation": "Create Backup Protected Item", + "description": "Create a backup Protected Item" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/delete", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protected Items", + "operation": "Delete Protected Items", + "description": "Deletes Protected Item" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/operationResults/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protected Item Operation Results", + "operation": "Get Protected Items Operation Results", + "description": "Gets Result of Operation Performed on Protected Items." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/operationsStatus/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protected Item Operation Status", + "operation": "Get Protected Items operation status", + "description": "Returns the status of Operation performed on Protected Items." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/backup/action", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protected Items", + "operation": "Backup Protected Item", + "description": "Performs Backup for Protected Item." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupProtectableItems/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Protectable Items", + "operation": "Get Protectable Items", + "description": "Returns list of all Protectable Items." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/refreshContainers/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Refresh Containers", + "operation": "Refresh container", + "description": "Refreshes the container list" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/operationResults/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Refresh Containers Operation Results", + "operation": "Get Operation Results", + "description": "Returns status of the operation" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupProtectionContainers/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Protection Containers", + "operation": "Get Containers In Subscription", + "description": "Returns all containers belonging to the subscription" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protection Containers", + "operation": "Get Registered Container", + "description": "Returns all registered containers" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/operationResults/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protection Containers Operation Results", + "operation": "Get Container Operation Results", + "description": "Gets result of Operation performed on Protection Container." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupEngines", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Engines", + "operation": "List of backup management servers.", + "description": "Returns all the backup management servers registered with vault." + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupStatus", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Backup Status", + "operation": "Check Backup Status for Vault", + "description": "Check Backup Status for Recovery Services Vaults" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupPreValidateProtection", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "PreValidate Protection", + "operation": "Pre Validate Enable Protection", + "description": "" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupValidateFeatures", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Validate Features", + "operation": "Validate Features", + "description": "Validate Features" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/backupProtectionIntent/write", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protection Intent", + "operation": "Create backup Protection Intent", + "description": "Create a backup Protection Intent" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/{fabricName}/protectionContainers/{containerName}/items/read", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Workload Items", + "operation": "Get all items in a container", + "description": "Get all items in a container" + }, + "origin": "user" + }, + { + "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/inquire/action", + "display": { + "provider": "microsoft.recoveryservices", + "resource": "Protection Containers Inquire", + "operation": "Get all items in a container", + "description": "Get all items in a container" + }, + "origin": "user" + } + ] + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/PrivateEndpointConnection/DeletePrivateEndpointConnection.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/PrivateEndpointConnection/DeletePrivateEndpointConnection.json new file mode 100644 index 000000000000..92e72a8dc109 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/PrivateEndpointConnection/DeletePrivateEndpointConnection.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "04cf684a-d41f-4550-9f70-7708a3a2283b", + "resourceGroupName": "gaallaRG", + "vaultName": "gaallavaultbvtd2msi", + "privateEndpointConnectionName": "gaallatestpe2.5704c932-249a-490b-a142-1396838cd3b", + "api-version": "2021-01-01" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/6c48fa17-39c7-45f1-90ac-47a587128ace/resourceGroups/backupadminrg/providers/Microsoft.RecoveryServices/Vaults/demo-pevault-2/privateEndpointConnections/autoapprovalpeecy4.3679789459502941542.backup.5ede856d-d9f0-461e-a15b-370c84525817/operationsStatus/2908a25d-8036-48d2-bdcc-fdce26b9771f?api-versi", + "Retry-After": "60" + } + }, + "204": {} + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/PrivateEndpointConnection/GetPrivateEndpointConnection.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/PrivateEndpointConnection/GetPrivateEndpointConnection.json new file mode 100644 index 000000000000..22949c300498 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/PrivateEndpointConnection/GetPrivateEndpointConnection.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "04cf684a-d41f-4550-9f70-7708a3a2283b", + "resourceGroupName": "gaallaRG", + "vaultName": "gaallavaultbvtd2msi", + "privateEndpointConnectionName": "gaallatestpe2.5704c932-249a-490b-a142-1396838cd3b", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/gaallaRG/providers/Microsoft.RecoveryServicesBVTD2/vaults/gaallavaultbvtd2msi/privateEndpointConnections/gaallatestpe3.3592346090307038890.backup.5704c932-249a-490b-a142-1396838cd3b", + "name": "gaallatestpe1.3592346090307038890.backup.5704c932-249a-490b-a142-1396838cd3b", + "type": "Microsoft.RecoveryServices/vaults/privateEndpointConnections", + "properties": { + "provisioningState": "Pending", + "privateEndpoint": { + "id": "/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/gaallaRG/providers/Microsoft.Network/privateEndpoints/gaallatestpe3" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@company.com" + } + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/PrivateEndpointConnection/GetPrivateEndpointConnectionOperationStatus.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/PrivateEndpointConnection/GetPrivateEndpointConnectionOperationStatus.json new file mode 100644 index 000000000000..7150ccf5f49e --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/PrivateEndpointConnection/GetPrivateEndpointConnectionOperationStatus.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "04cf684a-d41f-4550-9f70-7708a3a2283b", + "resourceGroupName": "gaallaRG", + "privateEndpointConnectionName": "gaallatestpe2.5704c932-249a-490b-a142-1396838cd3b", + "vaultName": "gaallavaultbvtd2msi", + "operationId": "0f48183b-0a44-4dca-aec1-bba5daab888a", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "id": "0f48183b-0a44-4dca-aec1-bba5daab888a", + "name": "0f48183b-0a44-4dca-aec1-bba5daab888a", + "status": "Succeeded", + "startTime": "2020-02-27T11:59:47.5901592Z", + "endTime": "2020-02-27T11:59:47.5901592Z" + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/PrivateEndpointConnection/PutPrivateEndpointConnection.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/PrivateEndpointConnection/PutPrivateEndpointConnection.json new file mode 100644 index 000000000000..1b116f0a665a --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/PrivateEndpointConnection/PutPrivateEndpointConnection.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subscriptionId": "04cf684a-d41f-4550-9f70-7708a3a2283b", + "resourceGroupName": "gaallaRG", + "vaultName": "gaallavaultbvtd2msi", + "privateEndpointConnectionName": "gaallatestpe2.5704c932-249a-490b-a142-1396838cd3b", + "api-version": "2021-01-01", + "parameters": { + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/gaallaRG/providers/Microsoft.Network/privateEndpoints/gaallatestpe3" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@company.com" + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/gaallaRG/providers/Microsoft.RecoveryServicesBVTD2/vaults/gaallavaultbvtd2msi/privateEndpointConnections/gaallatestpe3.3592346090307038890.backup.5704c932-249a-490b-a142-1396838cd3b", + "name": "gaallatestpe1.3592346090307038890.backup.5704c932-249a-490b-a142-1396838cd3b", + "type": "Microsoft.RecoveryServices/vaults/privateEndpointConnections", + "properties": { + "provisioningState": "Pending", + "privateEndpoint": { + "id": "/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/gaallaRG/providers/Microsoft.Network/privateEndpoints/gaallatestpe3" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@company.com" + } + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/6c48fa17-39c7-45f1-90ac-47a587128ace/resourceGroups/backupadminrg/providers/Microsoft.RecoveryServices/Vaults/demo-pevault-2/privateEndpointConnections/autoapprovalpeecy4.3679789459502941542.backup.5ede856d-d9f0-461e-a15b-370c84525817/operationsStatus/2908a25d-8036-48d2-bdcc-fdce26b9771f?api-versi", + "Retry-After": "60" + } + }, + "200": { + "body": { + "id": "/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/gaallaRG/providers/Microsoft.RecoveryServicesBVTD2/vaults/gaallavaultbvtd2msi/privateEndpointConnections/gaallatestpe3.3592346090307038890.backup.5704c932-249a-490b-a142-1396838cd3b", + "name": "gaallatestpe1.3592346090307038890.backup.5704c932-249a-490b-a142-1396838cd3b", + "type": "Microsoft.RecoveryServices/vaults/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/gaallaRG/providers/Microsoft.Network/privateEndpoints/gaallatestpe3" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@company.com" + } + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/TriggerRecoveryPointMove_Post.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/TriggerRecoveryPointMove_Post.json new file mode 100644 index 000000000000..01fffad6f116 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2021-04-01/examples/TriggerRecoveryPointMove_Post.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "netsdktestrg", + "vaultName": "testVault", + "fabricName": "Azure", + "containerName": "IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "protectedItemName": "VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1", + "recoveryPointId": "348916168024334", + "api-version": "2021-01-01", + "parameters": { + "objectType": "MoveRPAcrossTiersRequest", + "sourceTierType": "HardenedRP", + "targetTierType": "ArchivedRP" + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.RecoveryServices/vaults/testVault/backupFabrics/Azure/protectionContainers/iaasvmcontainer;iaasVMContainerV2;netsdktestrg;netvmtestv2vm1/protectedItems/vm;iaasVMContainerV2;netsdktestrg;netvmtestv2vm1/operationResults/00000000-0000-0000-0000-000000000000?api-version=2020-09-01", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.RecoveryServices/vaults/testVault/backupFabrics/Azure/protectionContainers/iaasvmcontainer;iaasVMContainerV2;netsdktestrg;netvmtestv2vm1/protectedItems/vm;iaasVMContainerV2;netsdktestrg;netvmtestv2vm1/operationsStatus/00000000-0000-0000-0000-000000000000?api-version=2020-09-01", + "Retry-After": 60 + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/readme.azureresourceschema.md b/specification/recoveryservicesbackup/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 29c16d143b9e..000000000000 --- a/specification/recoveryservicesbackup/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,169 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-recoveryservices-2021-02-01 - - tag: schema-recoveryservices-2021-01-01 - - tag: schema-recoveryservices-2020-12-01 - - tag: schema-recoveryservices-2020-10-01 - - tag: schema-recoveryservices-2020-07-01 - - tag: schema-recoveryservices-2020-02-02 - - tag: schema-recoveryservices-2019-06-15 - - tag: schema-recoveryservices-2019-05-13 - - tag: schema-recoveryservices-2018-12-20 - - tag: schema-recoveryservices-2017-07-01 - - tag: schema-recoveryservices-2016-12-01 - - tag: schema-recoveryservices-2016-08-10 - - tag: schema-recoveryservices-2016-06-01 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-recoveryservices-2021-02-01 and azureresourceschema - -``` yaml $(tag) == 'schema-recoveryservices-2021-02-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.RecoveryServices/stable/2021-02-01/bms.json - -``` - -### Tag: schema-recoveryservices-2021-01-01 and azureresourceschema - -``` yaml $(tag) == 'schema-recoveryservices-2021-01-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.RecoveryServices/stable/2021-01-01/bms.json - -``` - -### Tag: schema-recoveryservices-2020-12-01 and azureresourceschema - -``` yaml $(tag) == 'schema-recoveryservices-2020-12-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.RecoveryServices/stable/2020-12-01/bms.json - -``` - -### Tag: schema-recoveryservices-2020-10-01 and azureresourceschema - -``` yaml $(tag) == 'schema-recoveryservices-2020-10-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.RecoveryServices/stable/2020-10-01/bms.json - -``` - -### Tag: schema-recoveryservices-2020-07-01 and azureresourceschema - -``` yaml $(tag) == 'schema-recoveryservices-2020-07-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.RecoveryServices/stable/2020-07-01/bms.json - -``` - -### Tag: schema-recoveryservices-2020-02-02 and azureresourceschema - -``` yaml $(tag) == 'schema-recoveryservices-2020-02-02' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.RecoveryServices/stable/2020-02-02/bms.json - -``` - -### Tag: schema-recoveryservices-2019-06-15 and azureresourceschema - -``` yaml $(tag) == 'schema-recoveryservices-2019-06-15' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.RecoveryServices/stable/2019-06-15/bms.json - -``` - -### Tag: schema-recoveryservices-2019-05-13 and azureresourceschema - -``` yaml $(tag) == 'schema-recoveryservices-2019-05-13' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.RecoveryServices/stable/2019-05-13/bms.json - -``` - -### Tag: schema-recoveryservices-2018-12-20 and azureresourceschema - -``` yaml $(tag) == 'schema-recoveryservices-2018-12-20' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.RecoveryServices/stable/2018-12-20/bms.json - -``` - -### Tag: schema-recoveryservices-2017-07-01 and azureresourceschema - -``` yaml $(tag) == 'schema-recoveryservices-2017-07-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.RecoveryServices/stable/2017-07-01/bms.json - -``` - -### Tag: schema-recoveryservices-2016-12-01 and azureresourceschema - -``` yaml $(tag) == 'schema-recoveryservices-2016-12-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.RecoveryServices/stable/2016-12-01/bms.json - -``` - -### Tag: schema-recoveryservices-2016-08-10 and azureresourceschema - -``` yaml $(tag) == 'schema-recoveryservices-2016-08-10' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.RecoveryServices/stable/2016-08-10/operations.json - -``` - -### Tag: schema-recoveryservices-2016-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-recoveryservices-2016-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.RecoveryServices/stable/2016-06-01/recoveryservicesbackup.json - - Microsoft.RecoveryServices/stable/2016-06-01/registeredIdentities.json - -``` diff --git a/specification/recoveryservicesbackup/resource-manager/readme.go.md b/specification/recoveryservicesbackup/resource-manager/readme.go.md index 05d7c0fb68e6..88c0bcb15664 100644 --- a/specification/recoveryservicesbackup/resource-manager/readme.go.md +++ b/specification/recoveryservicesbackup/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION clear-output-folder: true namespace: backup ``` diff --git a/specification/recoveryservicesbackup/resource-manager/readme.md b/specification/recoveryservicesbackup/resource-manager/readme.md index 79e4db1168e5..332047f1cd90 100644 --- a/specification/recoveryservicesbackup/resource-manager/readme.md +++ b/specification/recoveryservicesbackup/resource-manager/readme.md @@ -4,10 +4,10 @@ This is the AutoRest configuration file for RecoveryServicesBackup. - - --- + ## Getting Started + To build the SDK for RecoveryServicesBackup, simply [Install AutoRest](https://aka.ms/autorest/install) and in this folder, run: > `autorest` @@ -15,28 +15,28 @@ To build the SDK for RecoveryServicesBackup, simply [Install AutoRest](https://a To see additional help and options, run: > `autorest --help` + --- ## Configuration - - ### Basic Information + These are the global settings for the RecoveryServicesBackup API. ``` yaml title: Recovery Services Backup Client description: Open API 2.0 Specs for Azure RecoveryServices Backup service openapi-type: arm -tag: package-2021-02 +tag: package-2021-01 csharp-sdks-folder: ./Generated/CSharp python-sdks-folder: ./Generated/Python go-sdk-folder: ./Generated/Golang - license-header: MICROSOFT_MIT ``` ### Validations + Run validations when `--validate` is specified on command line ``` yaml $(validate) @@ -45,6 +45,36 @@ model-validator: true semantic-validator: true message-format: json ``` + +### Tag: package-2021-04 + +These settings apply only when `--tag=package-2021-04` is specified on the command line. + +``` yaml $(tag) == 'package-2021-04' +input-file: +- Microsoft.RecoveryServices/stable/2021-04-01/bms.json +- Microsoft.RecoveryServices/stable/2018-12-20/bms.json +``` + +### Tag: package-2021-03 + +These settings apply only when `--tag=package-2021-03` is specified on the command line. + +``` yaml $(tag) == 'package-2021-03' +input-file: +- Microsoft.RecoveryServices/stable/2021-03-01/bms.json +- Microsoft.RecoveryServices/stable/2018-12-20/bms.json +``` + +### Tag: package-2021-02-10 + +These settings apply only when `--tag=package-2021-02-10` is specified on the command line. + +```yaml $(tag) == 'package-2021-02-10' +input-file: +- Microsoft.RecoveryServices/stable/2021-02-10/bms.json +- Microsoft.RecoveryServices/stable/2018-12-20/bms.json +``` ### Tag: package-2021-02-preview These settings apply only when `--tag=package-2021-02-preview` is specified on the command line. @@ -126,7 +156,6 @@ input-file: - Microsoft.RecoveryServices/stable/2016-08-10/operations.json ``` - ### Tag: package-2019-06 These settings apply only when `--tag=package-2019-06` is specified on the command line. @@ -200,8 +229,8 @@ input-file: ``` --- -# Code Generation +# Code Generation ## Swagger to SDK @@ -212,6 +241,7 @@ This is not used by Autorest itself. swagger-to-sdk: - repo: azure-sdk-for-net - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-java - repo: azure-sdk-for-go - repo: azure-sdk-for-js @@ -220,17 +250,14 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_recovery_services_backup'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js recoveryservicesbackup/resource-manager ``` - ## C# These settings apply only when `--csharp` is specified on the command line. Please also specify `--csharp-sdks-folder=`. -```yaml $(csharp) +``` yaml $(csharp) csharp: azure-arm: true payload-flattening-threshold: 1 @@ -248,7 +275,3 @@ See configuration in [readme.go.md](./readme.go.md) See configuration in [readme.java.md](./readme.java.md) -## AzureResourceSchema - -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) - diff --git a/specification/recoveryservicesbackup/resource-manager/readme.python.md b/specification/recoveryservicesbackup/resource-manager/readme.python.md index 0e8d3b4d447f..67466c86d32a 100644 --- a/specification/recoveryservicesbackup/resource-manager/readme.python.md +++ b/specification/recoveryservicesbackup/resource-manager/readme.python.md @@ -4,7 +4,7 @@ These settings apply only when `--python` is specified on the command line. Please also specify `--python-sdks-folder=`. Use `--python-mode=update` if you already have a setup.py and just want to update the code itself. -``` yaml $(python) +``` yaml $(python) && !$(track2) python-mode: create python: azure-arm: true @@ -12,15 +12,49 @@ python: payload-flattening-threshold: 2 namespace: azure.mgmt.recoveryservicesbackup package-name: azure-mgmt-recoveryservicesbackup + package-version: 0.1.0 clear-output-folder: true ``` -``` yaml $(python) && $(python-mode) == 'update' +``` yaml $(python) && $(track2) +python-mode: create +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +namespace: azure.mgmt.recoveryservicesbackup +package-name: azure-mgmt-recoveryservicesbackup +package-version: 1.0.0b1 +clear-output-folder: true +modelerfour: + lenient-model-deduplication: true +``` +``` yaml $(python) && $(python-mode) == 'update' && !$(track2) python: no-namespace-folders: true output-folder: $(python-sdks-folder)/recoveryservices/azure-mgmt-recoveryservicesbackup/azure/mgmt/recoveryservicesbackup ``` -``` yaml $(python) && $(python-mode) == 'create' +``` yaml $(python) && $(python-mode) == 'create' && !$(track2) python: basic-setup-py: true output-folder: $(python-sdks-folder)/recoveryservices/azure-mgmt-recoveryservicesbackup ``` +``` yaml $(python) && $(python-mode) == 'update' && $(track2) +no-namespace-folders: true +output-folder: $(python-sdks-folder)/recoveryservices/azure-mgmt-recoveryservicesbackup/azure/mgmt/recoveryservicesbackup +``` +``` yaml $(python) && $(python-mode) == 'create' && $(track2) +basic-setup-py: true +output-folder: $(python-sdks-folder)/recoveryservices/azure-mgmt-recoveryservicesbackup +``` + +``` yaml $(python) && $(track2) +directive: + - from: swagger-document + where: $.definitions.ProtectionIntent + transform: > + $['required'] = ['protectionIntentItemType']; + - from: swagger-document + where: $.definitions.FeatureSupportRequest + transform: > + $['required'] = ['featureType']; + + +``` \ No newline at end of file diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/MigrationRecoveryPoints_Get.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/MigrationRecoveryPoints_Get.json new file mode 100644 index 000000000000..c6b77141662b --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/MigrationRecoveryPoints_Get.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "migrationRecoveryPointName": "b22134ea-620c-474b-9fa5-3c1cb47708e3", + "migrationItemName": "virtualmachine1", + "protectionContainerName": "vmwareContainer1", + "fabricName": "vmwarefabric1", + "resourceName": "migrationvault", + "resourceGroupName": "resourcegroup1", + "subscriptionId": "cb53d0c3-bd59-4721-89bc-06916a9147ef" + }, + "responses": { + "200": { + "body": { + "name": "b22134ea-620c-474b-9fa5-3c1cb47708e3", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationMigrationItems/migrationRecoveryPoints", + "id": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationProtectionContainers/vmwareContainer1/replicationMigrationItems/virtualmachine1/migrationRecoveryPoints/b22134ea-620c-474b-9fa5-3c1cb47708e3", + "properties": { + "recoveryPointTime": "2017-04-26T06:37:50.8082715Z", + "recoveryPointType": "CrashConsistent" + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/MigrationRecoveryPoints_ListByReplicationMigrationItems.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/MigrationRecoveryPoints_ListByReplicationMigrationItems.json new file mode 100644 index 000000000000..44022bafcd76 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/MigrationRecoveryPoints_ListByReplicationMigrationItems.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "migrationItemName": "virtualmachine1", + "protectionContainerName": "vmwareContainer1", + "fabricName": "vmwarefabric1", + "resourceName": "migrationvault", + "resourceGroupName": "resourcegroup1", + "subscriptionId": "cb53d0c3-bd59-4721-89bc-06916a9147ef" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "648336ef-2d70-4d98-b100-8c299f97cd41", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationMigrationItems/migrationRecoveryPoints", + "id": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationProtectionContainers/vmwareContainer1/replicationMigrationItems/virtualmachine1/migrationRecoveryPoints/648336ef-2d70-4d98-b100-8c299f97cd41", + "properties": { + "recoveryPointTime": "2017-04-26T06:37:50.8082715Z", + "recoveryPointType": "CrashConsistent" + } + }, + { + "name": "34cb2d05-e730-4d3f-b96b-a60a5e92acb2", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationMigrationItems/migrationRecoveryPoints", + "id": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationProtectionContainers/vmwareContainer1/replicationMigrationItems/virtualmachine1/migrationRecoveryPoints/34cb2d05-e730-4d3f-b96b-a60a5e92acb2", + "properties": { + "recoveryPointTime": "2017-04-26T07:37:30.9722019Z", + "recoveryPointType": "CrashConsistent" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Operations_List.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Operations_List.json new file mode 100644 index 000000000000..ab22fb47a310 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/Operations_List.json @@ -0,0 +1,1225 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.RecoveryServices/Vaults/vaultTokens/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Vaults", + "operation": "Vault Token", + "description": "The Vault Token operation can be used to get Vault Token for vault level backend operations." + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/registeredIdentities/write", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Vaults", + "operation": "Register Service Container", + "description": "The Register Service Container operation can be used to register a container with Recovery Service." + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/registeredIdentities/operationResults/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Vaults", + "operation": "Get Operation Results", + "description": "The Get Operation Results operation can be used get the operation status and result for the asynchronously submitted operation" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/registeredIdentities/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Vaults", + "operation": "Get Containers", + "description": "The Get Containers operation can be used get the containers registered for a resource." + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/registeredIdentities/delete", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Vaults", + "operation": "Unregister Service Container", + "description": "The UnRegister Container operation can be used to unregister a container." + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/certificates/write", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Vaults", + "operation": "Update Resource Certificate", + "description": "The Update Resource Certificate operation updates the resource/vault credential certificate." + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationAlertSettings/read", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Alerts Settings", + "operation": "Read Alerts Settings", + "description": "Read Any Alerts Settings" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationAlertSettings/write", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Alerts Settings", + "operation": "Create or Update Alerts Settings", + "description": "Create or Update Any Alerts Settings" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationEvents/read", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Events", + "operation": "Read Events", + "description": "Read Any Events" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationNetworks/read", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Networks", + "operation": "Read Networks", + "description": "Read Any Networks" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationNetworks/replicationNetworkMappings/read", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Network Mappings", + "operation": "Read Network Mappings", + "description": "Read Any Network Mappings" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationNetworks/replicationNetworkMappings/write", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Network Mappings", + "operation": "Create or Update Network Mappings", + "description": "Create or Update Any Network Mappings" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationNetworks/replicationNetworkMappings/delete", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Network Mappings", + "operation": "Delete Network Mappings", + "description": "Delete Any Network Mappings" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectableItems/read", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Protectable Items", + "operation": "Read Protectable Items", + "description": "Read Any Protectable Items" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectionContainerMappings/read", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Protection Container Mappings", + "operation": "Read Protection Container Mappings", + "description": "Read Any Protection Container Mappings" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectionContainerMappings/write", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Protection Container Mappings", + "operation": "Create or Update Protection Container Mappings", + "description": "Create or Update Any Protection Container Mappings" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectionContainerMappings/remove/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Protection Container Mappings", + "operation": "Remove Protection Container Mapping", + "description": "Remove Protection Container Mapping" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectionContainerMappings/delete", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Protection Container Mappings", + "operation": "Delete Protection Container Mappings", + "description": "Delete Any Protection Container Mappings" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems/recoveryPoints/read", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Replication Recovery Points", + "operation": "Read Replication Recovery Points", + "description": "Read Any Replication Recovery Points" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems/read", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Protected Items", + "operation": "Read Protected Items", + "description": "Read Any Protected Items" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems/write", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Protected Items", + "operation": "Create or Update Protected Items", + "description": "Create or Update Any Protected Items" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems/delete", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Protected Items", + "operation": "Delete Protected Items", + "description": "Delete Any Protected Items" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems/remove/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Protected Items", + "operation": "Remove Protected Item", + "description": "Remove Protected Item" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems/plannedFailover/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Protected Items", + "operation": "Planned Failover", + "description": "Planned Failover" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems/unplannedFailover/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Protected Items", + "operation": "Failover", + "description": "Failover" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems/testFailover/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Protected Items", + "operation": "Test Failover", + "description": "Test Failover" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems/testFailoverCleanup/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Protected Items", + "operation": "Test Failover Cleanup", + "description": "Test Failover Cleanup" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems/failoverCommit/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Protected Items", + "operation": "Failover Commit", + "description": "Failover Commit" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems/reProtect/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Protected Items", + "operation": "ReProtect Protected Item", + "description": "ReProtect Protected Item" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems/updateMobilityService/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Protected Items", + "operation": "Update Mobility Service", + "description": "Update Mobility Service" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems/repairReplication/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Protected Items", + "operation": "Repair replication", + "description": "Repair replication" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems/applyRecoveryPoint/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Protected Items", + "operation": "Apply Recovery Point", + "description": "Apply Recovery Point" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationJobs/read", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Jobs", + "operation": "Read Jobs", + "description": "Read Any Jobs" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationJobs/cancel/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Jobs", + "operation": "Cancel Job", + "description": "Cancel Job" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationJobs/restart/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Jobs", + "operation": "Restart job", + "description": "Restart job" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationJobs/resume/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Jobs", + "operation": "Resume Job", + "description": "Resume Job" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/read", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Protection Containers", + "operation": "Read Protection Containers", + "description": "Read Any Protection Containers" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/discoverProtectableItem/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Protection Containers", + "operation": "Discover Protectable Item", + "description": "Discover Protectable Item" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/write", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Protection Containers", + "operation": "Create or Update Protection Containers", + "description": "Create or Update Any Protection Containers" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/remove/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Protection Containers", + "operation": "Remove Protection Container", + "description": "Remove Protection Container" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/switchprotection/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Protection Containers", + "operation": "Switch Protection Container", + "description": "Switch Protection Container" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationPolicies/read", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Policies", + "operation": "Read Policies", + "description": "Read Any Policies" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationPolicies/write", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Policies", + "operation": "Create or Update Policies", + "description": "Create or Update Any Policies" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationPolicies/delete", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Policies", + "operation": "Delete Policies", + "description": "Delete Any Policies" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationRecoveryPlans/read", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Recovery Plans", + "operation": "Read Recovery Plans", + "description": "Read Any Recovery Plans" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationRecoveryPlans/write", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Recovery Plans", + "operation": "Create or Update Recovery Plans", + "description": "Create or Update Any Recovery Plans" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationRecoveryPlans/delete", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Recovery Plans", + "operation": "Delete Recovery Plans", + "description": "Delete Any Recovery Plans" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationRecoveryPlans/plannedFailover/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Recovery Plans", + "operation": "Planned Failover Recovery Plan", + "description": "Planned Failover Recovery Plan" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationRecoveryPlans/unplannedFailover/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Recovery Plans", + "operation": "Failover Recovery Plan", + "description": "Failover Recovery Plan" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationRecoveryPlans/testFailover/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Recovery Plans", + "operation": "Test Failover Recovery Plan", + "description": "Test Failover Recovery Plan" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationRecoveryPlans/testFailoverCleanup/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Recovery Plans", + "operation": "Test Failover Cleanup Recovery Plan", + "description": "Test Failover Cleanup Recovery Plan" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationRecoveryPlans/failoverCommit/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Recovery Plans", + "operation": "Failover Commit Recovery Plan", + "description": "Failover Commit Recovery Plan" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationRecoveryPlans/reProtect/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Recovery Plans", + "operation": "ReProtect Recovery Plan", + "description": "ReProtect Recovery Plan" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationRecoveryServicesProviders/read", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Recovery Services Providers", + "operation": "Read Recovery Services Providers", + "description": "Read Any Recovery Services Providers" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationRecoveryServicesProviders/remove/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Recovery Services Providers", + "operation": "Remove Recovery Services Provider", + "description": "Remove Recovery Services Provider" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationRecoveryServicesProviders/delete", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Recovery Services Providers", + "operation": "Delete Recovery Services Providers", + "description": "Delete Any Recovery Services Providers" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationRecoveryServicesProviders/refreshProvider/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Recovery Services Providers", + "operation": "Refresh Provider", + "description": "Refresh Provider" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/read", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Fabrics", + "operation": "Read Fabrics", + "description": "Read Any Fabrics" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/write", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Fabrics", + "operation": "Create or Update Fabrics", + "description": "Create or Update Any Fabrics" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/remove/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Fabrics", + "operation": "Remove Fabric", + "description": "Remove Fabric" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/checkConsistency/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Fabrics", + "operation": "Checks Consistency of the Fabric", + "description": "Checks Consistency of the Fabric" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/delete", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Fabrics", + "operation": "Delete Fabrics", + "description": "Delete Any Fabrics" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/renewcertificate/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Fabrics", + "operation": "Renew Certificate for Fabric", + "description": "Renew Certificate for Fabric" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/deployProcessServerImage/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Fabrics", + "operation": "Deploy Process Server Image", + "description": "Deploy Process Server Image" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/reassociateGateway/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Fabrics", + "operation": "Reassociate Gateway", + "description": "Reassociate Gateway" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationStorageClassifications/read", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Storage Classifications", + "operation": "Read Storage Classifications", + "description": "Read Any Storage Classifications" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationStorageClassifications/replicationStorageClassificationMappings/read", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Storage Classification Mappings", + "operation": "Read Storage Classification Mappings", + "description": "Read Any Storage Classification Mappings" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationStorageClassifications/replicationStorageClassificationMappings/write", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Storage Classification Mappings", + "operation": "Create or Update Storage Classification Mappings", + "description": "Create or Update Any Storage Classification Mappings" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationStorageClassifications/replicationStorageClassificationMappings/delete", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Storage Classification Mappings", + "operation": "Delete Storage Classification Mappings", + "description": "Delete Any Storage Classification Mappings" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/usages/read", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Vault Usages", + "operation": "Read Vault Usages", + "description": "Read Any Vault Usages" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationvCenters/read", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Jobs", + "operation": "Read Jobs", + "description": "Read Any Jobs" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationvCenters/write", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Jobs", + "operation": "Create or Update Jobs", + "description": "Create or Update Any Jobs" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationvCenters/delete", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Jobs", + "operation": "Delete Jobs", + "description": "Delete Any Jobs" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/usages/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Vault Usage", + "operation": "Recovery Services Vault usage details.", + "description": "Returns usage details for a Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupUsageSummaries/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Backup Usages Summaries", + "operation": "Recovery Services Protected Items and Protected Servers usage summaries details.", + "description": "Returns summaries for Protected Items and Protected Servers for a Recovery Services ." + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/storageConfig/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Vault Storage Config", + "operation": "Get Resource Storage Config", + "description": "Returns Storage Configuration for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/storageConfig/write", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Vault Storage Config", + "operation": "Write Resource Storage Config", + "description": "Updates Storage Configuration for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupconfig/vaultconfig/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Vault Config", + "operation": "Get Resource Config", + "description": "Returns Configuration for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupconfig/vaultconfig/write", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Vault Config", + "operation": "Update Resource Config", + "description": "Updates Configuration for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/tokenInfo/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Token Info", + "operation": "Get Vault Token Info", + "description": "Returns token information for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupSecurityPIN/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "SecurityPINInfo", + "operation": "Get Security PIN Info", + "description": "Returns Security PIN Information for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupManagementMetaData/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Backup Management Metadata", + "operation": "Get Backup Management Metadata", + "description": "Returns Backup Management Metadata for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupOperationResults/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Backup Operation Results", + "operation": "Get Backup Operation Result", + "description": "Returns Backup Operation Result for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupOperations/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Backup Operation Status", + "operation": "Get Backup Operation Status", + "description": "Returns Backup Operation Status for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupJobs/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Backup Jobs", + "operation": "Get Jobs", + "description": "Returns all Job Objects" + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupJobs/cancel/action", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Backup Jobs", + "operation": "Cancel Jobs", + "description": "Cancel the Job" + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupJobsExport/action", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Export Backup Jobs", + "operation": "Export Jobs", + "description": "Export Jobs" + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupJobs/operationResults/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Backup Jobs Operation Results", + "operation": "Get Job Operation Result", + "description": "Returns the Result of Job Operation." + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupJobsExport/operationResults/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Export Backup Jobs Operation Results", + "operation": "Get Export Job Operation Result", + "description": "Returns the Result of Export Job Operation." + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Recovery Points", + "operation": "Get Recovery Points", + "description": "Get Recovery Points for Protected Items." + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints/restore/action", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Recovery Points", + "operation": "Restore Recovery Points", + "description": "Restore Recovery Points for Protected Items." + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints/provisionInstantItemRecovery/action", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Recovery Points", + "operation": "Provision Instant Item Recovery for Protected Item", + "description": "Provision Instant Item Recovery for Protected Item" + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints/revokeInstantItemRecovery/action", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Recovery Points", + "operation": "Revoke Instant Item Recovery for Protected Item", + "description": "Revoke Instant Item Recovery for Protected Item" + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupPolicies/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Backup Policies", + "operation": "Get Protection Policy", + "description": "Returns all Protection Policies" + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupPolicies/write", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Backup Policies", + "operation": "Create Protection Policy", + "description": "Creates Protection Policy" + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupPolicies/delete", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Backup Policies", + "operation": "Delete Protection Policy", + "description": "Delete a Protection Policy" + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupPolicies/operationResults/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Backup Policy Operation Results", + "operation": "Get Policy Operation Results", + "description": "Get Results of Policy Operation." + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupPolicies/operationStatus/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Backup Policy Operation Status", + "operation": "Get Policy Operation Status", + "description": "Get Status of Policy Operation." + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupFabrics/protectionContainers/protectedItems/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Protected Items", + "operation": "Get Protected Item Details", + "description": "Returns object details of the Protected Item" + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupProtectedItems/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Protected Items", + "operation": "Get All Protected Items", + "description": "Returns the list of all Protected Items." + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupFabrics/protectionContainers/protectedItems/write", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Protected Items", + "operation": "Create Backup Protected Item", + "description": "Create a backup Protected Item" + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupFabrics/protectionContainers/protectedItems/delete", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Protected Items", + "operation": "Delete Protected Items", + "description": "Deletes Protected Item" + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupFabrics/protectionContainers/protectedItems/operationResults/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Protected Item Operation Results", + "operation": "Get Protected Items Operation Results", + "description": "Gets Result of Operation Performed on Protected Items." + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupFabrics/protectionContainers/protectedItems/operationStatus/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Protected Item Operation Status", + "operation": "Get Protected Items operation status", + "description": "Returns the status of Operation performed on Protected Items." + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupFabrics/protectionContainers/protectedItems/backup/action", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Protected Items", + "operation": "Backup Protected Item", + "description": "Performs Backup for Protected Item." + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupProtectableItems/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Backup Protectable Items", + "operation": "Get Protectable Items", + "description": "Returns list of all Protectable Items." + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/refreshContainers/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Refresh Containers", + "operation": "Refresh container", + "description": "Refreshes the container list" + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupFabrics/operationResults/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Refresh Containers Operation Results", + "operation": "Get Operation Results", + "description": "Returns status of the operation" + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupProtectionContainers/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Backup Protection Containers", + "operation": "Get Containers In Subscription", + "description": "Returns all containers belonging to the subscription" + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupFabrics/protectionContainers/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Protection Containers", + "operation": "Get Registered Container", + "description": "Returns all registered containers" + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupFabrics/protectionContainers/operationResults/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Protection Containers Operation Results", + "operation": "Get Container Operation Results", + "description": "Gets result of Operation performed on Protection Container." + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupEngines", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Backup Engines", + "operation": "List of backup management servers.", + "description": "Returns all the backup management servers registered with vault." + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupStatus", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Backup Status", + "operation": "Check Backup Status for Vault", + "description": "Check Backup Status for Recovery Services Vaults" + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/write", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Vaults", + "operation": "Create Vault", + "description": "Create Vault operation creates an Azure resource of type 'vault'" + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Vaults", + "operation": "Get Vault", + "description": "The Get Vault operation gets an object representing the Azure resource of type 'vault'" + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/delete", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Vaults", + "operation": "Delete Vault", + "description": "The Delete Vault operation deletes the specified Azure resource of type 'vault'" + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/extendedInformation/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Vaults", + "operation": "Get Extended Info", + "description": "The Get Extended Info operation gets an object's Extended Info representing the Azure resource of type ?vault?" + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/extendedInformation/write", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Vaults", + "operation": "Get Extended Info", + "description": "The Get Extended Info operation gets an object's Extended Info representing the Azure resource of type ?vault?" + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/extendedInformation/delete", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Vaults", + "operation": "Get Extended Info", + "description": "The Get Extended Info operation gets an object's Extended Info representing the Azure resource of type ?vault?" + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/locations/allocatedStamp/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "locations/allocatedStamp", + "operation": "Get Allocated Stamp", + "description": "GetAllocatedStamp is internal operation used by service" + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/locations/allocateStamp/action", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "locations/allocateStamp", + "operation": "Allocated Stamp Action", + "description": "AllocateStamp is internal operation used by service" + }, + "origin": "user" + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/RecoveryPoints_Get.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/RecoveryPoints_Get.json new file mode 100644 index 000000000000..894e13817cda --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/RecoveryPoints_Get.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "replicatedProtectedItemName": "f8491e4f-817a-40dd-a90c-af773978c75b", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "recoveryPointName": "b22134ea-620c-474b-9fa5-3c1cb47708e3" + }, + "responses": { + "200": { + "body": { + "name": "b22134ea-620c-474b-9fa5-3c1cb47708e3", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems/recoveryPoints", + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b/recoveryPoints/b22134ea-620c-474b-9fa5-3c1cb47708e3", + "properties": { + "recoveryPointTime": "2017-04-26T06:37:50.8082715Z", + "recoveryPointType": "CrashConsistent" + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/RecoveryPoints_ListByReplicationProtectedItems.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/RecoveryPoints_ListByReplicationProtectedItems.json new file mode 100644 index 000000000000..01a1b48dcca2 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/RecoveryPoints_ListByReplicationProtectedItems.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "replicatedProtectedItemName": "f8491e4f-817a-40dd-a90c-af773978c75b", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "b22134ea-620c-474b-9fa5-3c1cb47708e3", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems/recoveryPoints", + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b/recoveryPoints/b22134ea-620c-474b-9fa5-3c1cb47708e3", + "properties": { + "recoveryPointTime": "2017-04-26T06:37:50.8082715Z", + "recoveryPointType": "CrashConsistent" + } + }, + { + "name": "34cb2d05-e730-4d3f-b96b-a60a5e92acb2", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems/recoveryPoints", + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b/recoveryPoints/34cb2d05-e730-4d3f-b96b-a60a5e92acb2", + "properties": { + "recoveryPointTime": "2017-04-26T07:37:30.9722019Z", + "recoveryPointType": "CrashConsistent" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationAlertSettings_Create.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationAlertSettings_Create.json new file mode 100644 index 000000000000..3c92aef4cc24 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationAlertSettings_Create.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "alertSettingName": "defaultAlertSetting", + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "request": { + "properties": { + "sendToOwners": "false", + "customEmailAddresses": [ + "ronehr@microsoft.com" + ], + "locale": "" + } + } + }, + "responses": { + "200": { + "body": { + "type": "Microsoft.RecoveryServices/vaults/replicationAlertSettings", + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationAlertSettings/defaultAlertSetting", + "name": "defaultAlertSetting", + "properties": { + "sendToOwners": "false", + "customEmailAddresses": [ + "ronehr@microsoft.com" + ], + "locale": "en-US" + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationAlertSettings_Get.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationAlertSettings_Get.json new file mode 100644 index 000000000000..cf8b80f43a19 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationAlertSettings_Get.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "alertSettingName": "defaultAlertSetting", + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "type": "Microsoft.RecoveryServices/vaults/replicationAlertSettings", + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationAlertSettings/defaultAlertSetting", + "name": "defaultAlertSetting", + "properties": { + "sendToOwners": "false", + "customEmailAddresses": [ + "ronehr@microsoft.com" + ], + "locale": "en-US" + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationAlertSettings_List.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationAlertSettings_List.json new file mode 100644 index 000000000000..b660e95ff608 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationAlertSettings_List.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "type": "Microsoft.RecoveryServices/vaults/replicationAlertSettings", + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationAlertSettings/defaultAlertSetting", + "name": "defaultAlertSetting", + "properties": { + "sendToOwners": "false", + "customEmailAddresses": [ + "ronehr@microsoft.com" + ], + "locale": "en-US" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationEligibilityResults_Get.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationEligibilityResults_Get.json new file mode 100644 index 000000000000..e11d6b8242b5 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationEligibilityResults_Get.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "virtualMachineName": "testVm1", + "resourceGroupName": "testRg1", + "subscriptionId": "d90d145a-4cdd-45a3-b2c4-971d69775278" + }, + "responses": { + "200": { + "body": { + "name": "default", + "type": "Microsoft.RecoveryServices/replicationEligibilityResults", + "id": "/subscriptions/d90d145a-4cdd-45a3-b2c4-971d69775278/resourceGroups/testRg1/providers/Microsoft.Compute/virtualMachines/testVm1/providers/Microsoft.RecoveryServices/replicationEligibilityResults/default", + "properties": { + "clientRequestId": "7d72ade7-b9f7-4d9b-8a19-15d9728c6190", + "errors": [ + { + "code": "A2AOperatingSystemNotSupported", + "message": "The A2A operation could not be completed as the virtual machine is running OS 'ubuntu' with version '18.04' which is not supported for replication.", + "possibleCauses": "OS version not supported.", + "recommendedAction": "The virtual machine is running unsupported Operating system. Refer to the documentation for supported OS versions - https://aka.ms/a2a-os-support-matrix.", + "status": "Error" + } + ] + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationEligibilityResults_List.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationEligibilityResults_List.json new file mode 100644 index 000000000000..5b6278ac23ff --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationEligibilityResults_List.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "virtualMachineName": "testVm2", + "resourceGroupName": "testRg1", + "subscriptionId": "d90d145a-4cdd-45a3-b2c4-971d69775278" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "default", + "type": "Microsoft.RecoveryServices/replicationEligibilityResults", + "id": "/subscriptions/d90d145a-4cdd-45a3-b2c4-971d69775278/resourceGroups/testRg1/providers/Microsoft.Compute/virtualMachines/testVm2/providers/Microsoft.RecoveryServices/replicationEligibilityResults/default", + "properties": { + "clientRequestId": "a62c81df-e26e-47ea-ab4b-f1fcc1e5b135", + "errors": [ + { + "code": "AzureVmIsNotInDesiredProvisioningState", + "message": "Azure virtual machine with Id (/subscriptions/d90d145a-4cdd-45a3-b2c4-971d69775278/resourceGroups/testRg1/providers/Microsoft.Compute/virtualMachines/testVm2) is with provisioning state 'failed'. To enable replication, VM's provisioning state should be 'succeeded'.", + "possibleCauses": "Virtual machine is not in desired state.", + "recommendedAction": "\n Ensure that the VM's provisioning state is 'succeeded'.\n Refer to https://aka.ms/a2a-vm-state-issues to troubleshoot VM provisioning state issues.\n ", + "status": "Error" + }, + { + "code": "AzureVmIsNotInDesiredPowerState", + "message": "Azure virtual machine with Id (/subscriptions/d90d145a-4cdd-45a3-b2c4-971d69775278/resourceGroups/testRg1/providers/Microsoft.Compute/virtualMachines/testVm2) is with power status 'deallocated'. To enable replication, VM's power status should be 'running'.", + "possibleCauses": "Virtual machine is not in desired state.", + "recommendedAction": "\n Ensure that the VM's power status is 'running'.\n You can check the power status in 'VM > Settings > Properties > Status' in Azure portal.\n ", + "status": "Error" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationEvents_Get.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationEvents_Get.json new file mode 100644 index 000000000000..bd54ed5832fa --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationEvents_Get.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "eventName": "654b71d0-b2ce-4e6e-a861-98528d4bd375", + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "type": "Microsoft.RecoveryServices/vaults/replicationEvents", + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationEvents/VmMonitoringEvent;9091989947769704276_516de684-0079-48f7-b44b-882923268654", + "name": "VmMonitoringEvent;9091989947769704276_516de684-0079-48f7-b44b-882923268654", + "properties": { + "eventCode": "d9a07b07-c7b5-49ca-ab6c-6926596dfe47", + "description": "Virtual machine health is OK", + "eventType": "VmHealth", + "affectedObjectFriendlyName": "vm1", + "severity": "OK", + "timeOfOccurrence": "2017-05-02T14:28:28.5071531Z", + "fabricId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1", + "providerSpecificDetails": { + "instanceType": "HyperVReplicaAzure" + }, + "eventSpecificDetails": { + "instanceType": "JobStatus" + }, + "healthErrors": [] + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationEvents_List.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationEvents_List.json new file mode 100644 index 000000000000..54f713de033d --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationEvents_List.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "type": "Microsoft.RecoveryServices/vaults/replicationEvents", + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationEvents/JobStatusMonitoringEvent;9091989892524070155_4ed6f1a6-9b6d-4048-9079-1307dd24b814", + "name": "JobStatusMonitoringEvent;9091989892524070155_4ed6f1a6-9b6d-4048-9079-1307dd24b814", + "properties": { + "eventCode": "d32574f6-f59e-4545-b5ac-bc88d545f089", + "description": "TestFailover - Failed", + "eventType": "JobStatus", + "affectedObjectFriendlyName": "vm1", + "severity": "Critical", + "timeOfOccurrence": "2017-05-02T16:00:33.0705652Z", + "fabricId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1", + "providerSpecificDetails": { + "instanceType": "HyperVReplicaAzure" + }, + "eventSpecificDetails": { + "instanceType": "JobStatus" + }, + "healthErrors": [ + { + "errorCode": "499", + "errorMessage": "An internal error occurred.", + "possibleCauses": "The operation failed due to an internal error.", + "recommendedAction": "Retry the last action. If the issue persists, contact Support." + } + ] + } + }, + { + "type": "Microsoft.RecoveryServices/vaults/replicationEvents", + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationEvents/VmMonitoringEvent;9091989947769704276_516de684-0079-48f7-b44b-882923268654", + "name": "VmMonitoringEvent;9091989947769704276_516de684-0079-48f7-b44b-882923268654", + "properties": { + "eventCode": "d9a07b07-c7b5-49ca-ab6c-6926596dfe47", + "description": "Virtual machine health is OK", + "eventType": "VmHealth", + "affectedObjectFriendlyName": "vm1", + "severity": "OK", + "timeOfOccurrence": "2017-05-02T14:28:28.5071531Z", + "fabricId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1", + "providerSpecificDetails": { + "instanceType": "HyperVReplicaAzure" + }, + "eventSpecificDetails": { + "instanceType": "JobStatus" + }, + "healthErrors": [] + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationFabrics_CheckConsistency.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationFabrics_CheckConsistency.json new file mode 100644 index 000000000000..10305985b190 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationFabrics_CheckConsistency.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "fabricName": "cloud1", + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "name": "cloud1", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics", + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1", + "properties": { + "friendlyName": "cloud1", + "encryptionDetails": { + "kekState": "None" + }, + "rolloverEncryptionDetails": { + "kekState": "None" + }, + "internalIdentifier": "6d224fc6-f326-5d35-96de-fbf51efb3179", + "bcdrState": "Valid", + "customDetails": { + "instanceType": "HyperVSite" + }, + "healthErrorDetails": [], + "health": "Normal" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationFabrics_Create.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationFabrics_Create.json new file mode 100644 index 000000000000..bc6ddfdb2c82 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationFabrics_Create.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "fabricName": "cloud1", + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "input": { + "properties": { + "customDetails": { + "instanceType": "FabricSpecificCreationInput" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "cloud1", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics", + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1", + "properties": { + "friendlyName": "cloud1", + "encryptionDetails": { + "kekState": "None" + }, + "rolloverEncryptionDetails": { + "kekState": "None" + }, + "internalIdentifier": "6d224fc6-f326-5d35-96de-fbf51efb3179", + "bcdrState": "Valid", + "customDetails": { + "instanceType": "HyperVSite" + }, + "healthErrorDetails": [], + "health": "Normal" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationFabrics_Delete.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationFabrics_Delete.json new file mode 100644 index 000000000000..3cc8671bfa20 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationFabrics_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "fabricName": "cloud1", + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationFabrics_Get.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationFabrics_Get.json new file mode 100644 index 000000000000..45e2fd78fc13 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationFabrics_Get.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "fabricName": "cloud1", + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "name": "cloud1", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics", + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1", + "properties": { + "friendlyName": "cloud1", + "encryptionDetails": { + "kekState": "None" + }, + "rolloverEncryptionDetails": { + "kekState": "None" + }, + "internalIdentifier": "6d224fc6-f326-5d35-96de-fbf51efb3179", + "bcdrState": "Valid", + "customDetails": { + "instanceType": "HyperVSite" + }, + "healthErrorDetails": [], + "health": "Normal" + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationFabrics_List.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationFabrics_List.json new file mode 100644 index 000000000000..f415a429a0f2 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationFabrics_List.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "cloud1", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics", + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1", + "properties": { + "friendlyName": "cloud1", + "encryptionDetails": { + "kekState": "None" + }, + "rolloverEncryptionDetails": { + "kekState": "None" + }, + "internalIdentifier": "6d224fc6-f326-5d35-96de-fbf51efb3179", + "bcdrState": "Valid", + "customDetails": { + "instanceType": "HyperVSite" + }, + "healthErrorDetails": [], + "health": "Normal" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationFabrics_MigrateToAad.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationFabrics_MigrateToAad.json new file mode 100644 index 000000000000..3cc8671bfa20 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationFabrics_MigrateToAad.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "fabricName": "cloud1", + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationFabrics_Purge.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationFabrics_Purge.json new file mode 100644 index 000000000000..3cc8671bfa20 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationFabrics_Purge.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "fabricName": "cloud1", + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationFabrics_ReassociateGateway.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationFabrics_ReassociateGateway.json new file mode 100644 index 000000000000..1b11ab36e2bf --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationFabrics_ReassociateGateway.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "fabricName": "GRACE-V2A-1", + "api-version": "2021-02-10", + "resourceName": "MadhaviVault", + "resourceGroupName": "MadhaviVRG", + "subscriptionId": "7c943c1b-5122-4097-90c8-861411bdd574", + "failoverProcessServerRequest": { + "properties": { + "containerName": "cloud_1f3c15af-2256-4568-9e06-e1ef4f728f75", + "sourceProcessServerId": "AFA0EC54-1894-4E44-9CAB02DB8854B117", + "targetProcessServerId": "5D3ED340-85AE-C646-B338641E015DA405", + "vmsToMigrate": [ + "Vm1", + "Vm2" + ], + "updateType": "ServerLevel" + } + } + }, + "responses": { + "200": { + "body": { + "name": "bc15edf300344660d9c2965f5d9225593d99734f6580613c997033abc3512a56", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics", + "id": "/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/MadhaviVRG/providers/Microsoft.RecoveryServices/vaults/MadhaviVault/replicationFabrics/bc15edf300344660d9c2965f5d9225593d99734f6580613c997033abc3512a56", + "properties": { + "friendlyName": "GRACE-V2A-1", + "encryptionDetails": { + "kekState": "None" + }, + "rolloverEncryptionDetails": { + "kekState": "None" + }, + "internalIdentifier": "1f3c15af-2256-4568-9e06-e1ef4f728f75", + "bcdrState": "Valid", + "customDetails": { + "instanceType": "VMware" + }, + "healthErrorDetails": [], + "health": "Normal" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationFabrics_RenewCertificate.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationFabrics_RenewCertificate.json new file mode 100644 index 000000000000..cd026daa6be0 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationFabrics_RenewCertificate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "fabricName": "cloud1", + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "renewCertificate": { + "properties": { + "renewCertificateType": "Cloud" + } + } + }, + "responses": { + "200": { + "body": { + "name": "cloud1", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics", + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1", + "properties": { + "friendlyName": "cloud1", + "encryptionDetails": { + "kekState": "None" + }, + "rolloverEncryptionDetails": { + "kekState": "None" + }, + "internalIdentifier": "6d224fc6-f326-5d35-96de-fbf51efb3179", + "bcdrState": "Valid", + "customDetails": { + "instanceType": "HyperVSite" + }, + "healthErrorDetails": [], + "health": "Normal" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationJobs_Cancel.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationJobs_Cancel.json new file mode 100644 index 000000000000..4d94cbf79bf7 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationJobs_Cancel.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "jobName": "2653c648-fc72-4316-86f3-fdf8eaa0066b", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/2653c648-fc72-4316-86f3-fdf8eaa0066b", + "name": "2653c648-fc72-4316-86f3-fdf8eaa0066b", + "properties": { + "activityId": "bfbbf6dd-9cbb-4cbc-98a6-faecc8891579 ActivityId: 07cc35ca-b63f-4e42-83c9-81ae0191c322", + "scenarioName": "PlannedFailover", + "friendlyName": "Planned failover", + "state": "Cancelling", + "stateDescription": "Cancelling", + "tasks": [], + "errors": [], + "startTime": "2017-05-03T06:16:06.3235186Z", + "allowedActions": [], + "targetObjectId": "f8491e4f-817a-40dd-a90c-af773978c75b", + "targetObjectName": "vm1", + "targetInstanceType": "ProtectionEntity", + "customDetails": { + "instanceType": "AsrJobDetails", + "affectedObjectDetails": { + "PrimaryVmId": "f8491e4f-817a-40dd-a90c-af773978c75b", + "PrimaryVmName": "vm1", + "RecoveryVmId": "", + "RecoveryVmName": "vm1", + "ProtectionProfileId": "af095a1e-1f1b-5365-87c9-99162ebcfaf0", + "PrimaryCloudId": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "PrimaryCloudName": "cloud1", + "RecoveryCloudId": "d38048d4-b460-4791-8ece-108395ee8478", + "RecoveryCloudName": "Microsoft Azure", + "PrimaryVmmId": "6d224fc6-f326-5d35-96de-fbf51efb3179", + "PrimaryVmmName": "cloud1", + "RecoveryVmmId": "21a9403c-6ec1-44f2-b744-b4e50b792387", + "RecoveryVmmName": "Microsoft Azure", + "PrimaryFabricProviderId": "HyperVSite", + "RecoveryFabricProviderId": "Azure" + } + } + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationJobs_Export.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationJobs_Export.json new file mode 100644 index 000000000000..3cd3b4fee012 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationJobs_Export.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "jobQueryParameter": { + "startTime": "2017-04-27T14:26:51.9161395Z", + "endTime": "2017-05-04T14:26:51.9161395Z", + "affectedObjectTypes": "", + "jobStatus": "" + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/37e0fc2b-13f2-4817-aafa-0cd807d46842", + "name": "37e0fc2b-13f2-4817-aafa-0cd807d46842", + "properties": { + "activityId": "36841d27-34f6-49ad-b572-e7dc263f100b-2017-05-04 14:26:47Z-Ibz ActivityId: c124df21-7661-4541-b32a-3c723ebbb045", + "scenarioName": "ExportJobs", + "state": "Succeeded", + "stateDescription": "Completed", + "tasks": [], + "errors": [], + "startTime": "2017-05-04T14:33:42.2765562Z", + "endTime": "2017-05-04T14:33:43Z", + "allowedActions": [], + "targetObjectId": "", + "targetObjectName": "", + "targetInstanceType": "Other", + "customDetails": { + "blobUri": "", + "sasToken": "", + "instanceType": "ExportJobDetails", + "affectedObjectDetails": {} + } + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationJobs_Get.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationJobs_Get.json new file mode 100644 index 000000000000..f1d0b507980f --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationJobs_Get.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "jobName": "58776d0b-3141-48b2-a377-9ad863eb160d", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/32ea4b9e-de62-49a1-b062-7864d5c3b897", + "name": "32ea4b9e-de62-49a1-b062-7864d5c3b897", + "properties": { + "activityId": "fc8e9c8f-0e76-4b6b-8e7e-d37c1b31eba0 ActivityId: c506b6ba-0711-411e-8b09-1f3f4dcb824b", + "scenarioName": "DeleteRecoveryPlan", + "friendlyName": "Delete a recovery plan", + "state": "Succeeded", + "stateDescription": "Completed", + "tasks": [ + { + "taskId": "763326a2-01c9-4257-b2a1-0aac56465014", + "name": "DeleteRecoveryPlanTask", + "startTime": "2017-04-27T11:25:57.3029434Z", + "endTime": "2017-04-27T11:25:57.318574Z", + "allowedActions": [], + "friendlyName": "Delete a recovery plan task", + "state": "Succeeded", + "stateDescription": "Completed", + "taskType": "TaskDetails", + "customDetails": { + "instanceType": "ManualActionTaskDetails" + }, + "errors": [] + } + ], + "errors": [], + "startTime": "2017-04-27T11:25:56.800358Z", + "endTime": "2017-04-27T11:25:57Z", + "allowedActions": [], + "targetObjectId": "966c33bb-66e7-4567-9786-f80b0694f5f9", + "targetObjectName": "RPtest1", + "targetInstanceType": "RecoveryPlan", + "customDetails": { + "instanceType": "AsrJobDetails", + "affectedObjectDetails": { + "PrimaryVmmId": "6d224fc6-f326-5d35-96de-fbf51efb3179", + "PrimaryVmmName": "cloud1", + "RecoveryVmmId": "21a9403c-6ec1-44f2-b744-b4e50b792387", + "PrimaryFabricProviderId": "HyperVSite", + "RecoveryFabricProviderId": "Azure" + } + } + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationJobs_List.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationJobs_List.json new file mode 100644 index 000000000000..f1e88602b9ce --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationJobs_List.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/1557d73f-6244-491e-8f0b-d300f752240b", + "name": "1557d73f-6244-491e-8f0b-d300f752240b", + "properties": { + "scenarioName": "AddProtectionProfile", + "friendlyName": "Create replication policy", + "state": "Succeeded", + "stateDescription": "Completed", + "tasks": [], + "errors": [], + "startTime": "2017-04-27T12:46:04.641851Z", + "endTime": "2017-04-27T12:46:11Z", + "allowedActions": [], + "targetObjectId": "af095a1e-1f1b-5365-87c9-99162ebcfaf0", + "targetObjectName": "protectionprofile1", + "targetInstanceType": "ProtectionProfile" + } + }, + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/0236416a-7573-4913-a4a1-6a286fbb1ceb", + "name": "0236416a-7573-4913-a4a1-6a286fbb1ceb", + "properties": { + "scenarioName": "RegisterDra", + "friendlyName": "Register the Azure Site Recovery Provider", + "state": "Succeeded", + "stateDescription": "Completed", + "tasks": [], + "errors": [], + "startTime": "2017-05-02T14:07:19.2784338Z", + "endTime": "2017-05-02T14:07:21Z", + "allowedActions": [], + "targetObjectId": "6d224fc6-f326-5d35-96de-fbf51efb3179", + "targetObjectName": "CP-B3L40406-12.ntdev.corp.microsoft.com", + "targetInstanceType": "Server" + } + }, + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/2438d560-80f0-420b-839e-5c8ee0af90a1", + "name": "2438d560-80f0-420b-839e-5c8ee0af90a1", + "properties": { + "scenarioName": "CreateSite", + "friendlyName": "Create a site", + "state": "Succeeded", + "stateDescription": "Completed", + "tasks": [], + "errors": [], + "startTime": "2017-05-02T05:56:14.569095Z", + "endTime": "2017-05-02T05:56:16Z", + "allowedActions": [], + "targetObjectId": "6d224fc6-f326-5d35-96de-fbf51efb3179", + "targetObjectName": "cloud1", + "targetInstanceType": "Server" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationJobs_Restart.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationJobs_Restart.json new file mode 100644 index 000000000000..f78a5a772526 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationJobs_Restart.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "jobName": "0664564c-353e-401a-ab0c-722257c10e25", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/42c7d13b-790c-4609-8e0b-0936f1c5e5fb", + "name": "42c7d13b-790c-4609-8e0b-0936f1c5e5fb", + "properties": { + "activityId": "2443a5b4-e675-499f-8983-4126ea0e232c ActivityId: 2a776896-5e56-470b-af55-3c981283c4bc", + "scenarioName": "RestartJob", + "friendlyName": "Restart job", + "state": "Succeeded", + "stateDescription": "Completed", + "tasks": [ + { + "taskId": "RemediateWfTask", + "name": "RemediateTask", + "startTime": "2017-05-03T10:45:13.5677237Z", + "endTime": "2017-05-03T10:45:13.6458467Z", + "allowedActions": [], + "friendlyName": "Restarting job", + "state": "Succeeded", + "stateDescription": "Completed", + "taskType": "TaskDetails", + "customDetails": { + "instanceType": "ManualActionTaskDetails" + }, + "errors": [] + } + ], + "errors": [], + "startTime": "2017-05-03T10:45:12.1320757Z", + "endTime": "2017-05-03T10:45:14Z", + "allowedActions": [], + "targetObjectId": "f8491e4f-817a-40dd-a90c-af773978c75b", + "targetObjectName": "vm1", + "targetInstanceType": "ProtectionEntity", + "customDetails": { + "instanceType": "AsrJobDetails", + "affectedObjectDetails": {} + } + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationJobs_Resume.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationJobs_Resume.json new file mode 100644 index 000000000000..bd12c804af98 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationJobs_Resume.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "jobName": "58776d0b-3141-48b2-a377-9ad863eb160d", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "resumeJobParams": { + "properties": { + "comments": " " + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/58776d0b-3141-48b2-a377-9ad863eb160d", + "name": "58776d0b-3141-48b2-a377-9ad863eb160d", + "properties": { + "activityId": "1b808dfe-0451-44ac-894c-c7270711cd8c ActivityId: 9f6f849e-922a-43ec-a7a6-0be45fc85c56", + "scenarioName": "TestFailover", + "friendlyName": "Test failover", + "state": "Suspended", + "stateDescription": "WaitingForStopTestFailover", + "tasks": [], + "errors": [], + "startTime": "2017-04-25T09:57:57.0357829Z", + "allowedActions": [ + "Cancel", + "Resume" + ], + "targetObjectId": "f8491e4f-817a-40dd-a90c-af773978c75b", + "targetObjectName": "vm1", + "targetInstanceType": "ProtectionEntity", + "customDetails": { + "instanceType": "TestFailoverJobDetails", + "testFailoverStatus": "Completed", + "comments": " ", + "networkName": "vnetavrai", + "networkFriendlyName": "vnetavrai", + "networkType": "VmNetworkAsInput", + "protectedItemDetails": [ + { + "name": "f8491e4f-817a-40dd-a90c-af773978c75b", + "friendlyName": "vm1", + "testVmName": "vm1-test", + "testVmFriendlyName": "vm1-test", + "networkConnectionStatus": "Connected", + "networkFriendlyName": "vnetavrai", + "subnet": "Subnet1" + } + ], + "affectedObjectDetails": { + "PrimaryVmId": "f8491e4f-817a-40dd-a90c-af773978c75b", + "PrimaryVmName": "vm1", + "RecoveryVmId": "", + "RecoveryVmName": "vm1", + "ProtectionProfileId": "af095a1e-1f1b-5365-87c9-99162ebcfaf0", + "PrimaryCloudId": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "PrimaryCloudName": "cloud1", + "RecoveryCloudId": "d38048d4-b460-4791-8ece-108395ee8478", + "RecoveryCloudName": "Microsoft Azure", + "PrimaryVmmId": "6d224fc6-f326-5d35-96de-fbf51efb3179", + "PrimaryVmmName": "cloud1", + "RecoveryVmmId": "21a9403c-6ec1-44f2-b744-b4e50b792387", + "RecoveryVmmName": "Microsoft Azure", + "PrimaryFabricProviderId": "HyperVSite", + "RecoveryFabricProviderId": "Azure" + } + } + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationLogicalNetworks_Get.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationLogicalNetworks_Get.json new file mode 100644 index 000000000000..df19786d9c94 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationLogicalNetworks_Get.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "logicalNetworkName": "87ab394f-165f-4aa9-bd84-b018500b4509", + "fabricName": "cloud1", + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationLogicalNetworks", + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationLogicalNetworks/53f5a278-ae85-4001-bd5f-f6a02e1f579d", + "name": "87ab394f-165f-4aa9-bd84-b018500b4509", + "properties": { + "friendlyName": "corp", + "networkVirtualizationStatus": "NetworkVirtualizationNotEnabled", + "logicalNetworkUsage": "NotUsedAsPrivateNetworkForTestFailover", + "logicalNetworkDefinitionsStatus": "LogicalNetworkDefinitionsNotIsolated" + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationLogicalNetworks_ListByReplicationFabrics.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationLogicalNetworks_ListByReplicationFabrics.json new file mode 100644 index 000000000000..c1963769a4a5 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationLogicalNetworks_ListByReplicationFabrics.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "fabricName": "cloud1", + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationLogicalNetworks", + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationLogicalNetworks/53f5a278-ae85-4001-bd5f-f6a02e1f579d", + "name": "87ab394f-165f-4aa9-bd84-b018500b4509", + "properties": { + "friendlyName": "corp", + "networkVirtualizationStatus": "NetworkVirtualizationNotEnabled", + "logicalNetworkUsage": "NotUsedAsPrivateNetworkForTestFailover", + "logicalNetworkDefinitionsStatus": "LogicalNetworkDefinitionsNotIsolated" + } + }, + { + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationLogicalNetworks", + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationLogicalNetworks/87ab394f-165f-4aa9-bd84-b018500b4509", + "name": "53f5a278-ae85-4001-bd5f-f6a02e1f579d", + "properties": { + "friendlyName": "LN-VLANNetwork-4", + "networkVirtualizationStatus": "NetworkVirtualizationNotEnabled", + "logicalNetworkUsage": "NotUsedAsPrivateNetworkForTestFailover", + "logicalNetworkDefinitionsStatus": "LogicalNetworkDefinitionsIsolated" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationMigrationItems_Create.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationMigrationItems_Create.json new file mode 100644 index 000000000000..98a130114f2a --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationMigrationItems_Create.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "migrationItemName": "virtualmachine1", + "protectionContainerName": "vmwareContainer1", + "fabricName": "vmwarefabric1", + "resourceName": "migrationvault", + "resourceGroupName": "resourcegroup1", + "subscriptionId": "cb53d0c3-bd59-4721-89bc-06916a9147ef", + "input": { + "properties": { + "policyId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationPolicies/vmwarepolicy1", + "providerSpecificDetails": { + "instanceType": "VMwareCbt", + "disksToInclude": [ + { + "diskId": "disk1", + "isOSDisk": "true", + "logStorageAccountId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.Storage/storageAccounts/logStorageAccount1", + "logStorageAccountSasSecretName": "logStorageSas" + } + ], + "vmwareMachineId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.OffAzure/VMwareSites/vmwaresite1/machines/virtualmachine1", + "targetNetworkId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.Network/virtualNetworks/virtualNetwork1", + "targetResourceGroupId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1", + "snapshotRunAsAccountId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.OffAzure/VMwareSites/vmwaresite1/runasaccounts/snapshotRunAsAccount1", + "dataMoverRunAsAccountId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.OffAzure/VMwareSites/vmwaresite1/runasaccounts/dataMoverRunAsAccount1" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationProtectionContainers/vmwareContainer1/replicationMigrationItems/virtualmachine1", + "name": "virtualmachine1", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationMigrationItems", + "properties": { + "machineName": "vm-0520-2", + "migrationState": "Replicating", + "migrationStateDescription": "Ready to migrate", + "testMigrateState": "None", + "testMigrateStateDescription": "None", + "policyFriendlyName": "vmwarepolicy1", + "policyId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationPolicies/vmwarepolicy1", + "allowedOperations": [ + "Migrate", + "DisableMigration", + "TestMigrate", + "TestMigrateCleanup" + ], + "currentJob": { + "jobName": "None", + "jobId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationJobs/None", + "startTime": "2017-04-26T06:37:50.8082715Z" + }, + "providerSpecificDetails": { + "instanceType": "VMwareCbt" + } + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationMigrationItems_Delete.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationMigrationItems_Delete.json new file mode 100644 index 000000000000..3c71c9b1f139 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationMigrationItems_Delete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "migrationItemName": "virtualmachine1", + "protectionContainerName": "vmwareContainer1", + "fabricName": "vmwarefabric1", + "resourceName": "migrationvault", + "resourceGroupName": "resourcegroup1", + "subscriptionId": "cb53d0c3-bd59-4721-89bc-06916a9147ef" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationMigrationItems_Get.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationMigrationItems_Get.json new file mode 100644 index 000000000000..52057f2d053e --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationMigrationItems_Get.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "migrationItemName": "virtualmachine1", + "protectionContainerName": "vmwareContainer1", + "fabricName": "vmwarefabric1", + "resourceName": "migrationvault", + "resourceGroupName": "resourcegroup1", + "subscriptionId": "cb53d0c3-bd59-4721-89bc-06916a9147ef" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationProtectionContainers/vmwareContainer1/replicationMigrationItems/virtualmachine1", + "name": "virtualmachine1", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationMigrationItems", + "properties": { + "machineName": "vm-0520-2", + "migrationState": "Replicating", + "migrationStateDescription": "Ready to migrate", + "testMigrateState": "None", + "testMigrateStateDescription": "None", + "policyFriendlyName": "vmwarepolicy1", + "policyId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationPolicies/vmwarepolicy1", + "allowedOperations": [ + "Migrate", + "DisableMigration", + "TestMigrate", + "TestMigrateCleanup" + ], + "currentJob": { + "jobName": "None", + "jobId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationJobs/None", + "startTime": "2017-04-26T06:37:50.8082715Z" + }, + "providerSpecificDetails": { + "instanceType": "VMwareCbt" + } + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationMigrationItems_List.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationMigrationItems_List.json new file mode 100644 index 000000000000..8c5bfaf6cc58 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationMigrationItems_List.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "resourceName": "migrationvault", + "resourceGroupName": "resourcegroup1", + "subscriptionId": "cb53d0c3-bd59-4721-89bc-06916a9147ef" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationProtectionContainers/vmwareContainer1/replicationMigrationItems/virtualmachine1", + "name": "virtualmachine1", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationMigrationItems", + "properties": { + "machineName": "vm-0520-2", + "migrationState": "Replicating", + "migrationStateDescription": "Ready to migrate", + "testMigrateState": "None", + "testMigrateStateDescription": "None", + "policyFriendlyName": "vmwarepolicy1", + "policyId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationPolicies/vmwarepolicy1", + "allowedOperations": [ + "Migrate", + "DisableMigration", + "TestMigrate", + "TestMigrateCleanup" + ], + "currentJob": { + "jobName": "None", + "jobId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationJobs/None", + "startTime": "2017-04-26T06:37:50.8082715Z" + }, + "providerSpecificDetails": { + "instanceType": "VMwareCbt" + } + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationMigrationItems_ListByReplicationProtectionContainers.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationMigrationItems_ListByReplicationProtectionContainers.json new file mode 100644 index 000000000000..59e917b43c4a --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationMigrationItems_ListByReplicationProtectionContainers.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "protectionContainerName": "vmwareContainer1", + "fabricName": "vmwarefabric1", + "resourceName": "migrationvault", + "resourceGroupName": "resourcegroup1", + "subscriptionId": "cb53d0c3-bd59-4721-89bc-06916a9147ef" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationProtectionContainers/vmwareContainer1/replicationMigrationItems/virtualmachine1", + "name": "virtualmachine1", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationMigrationItems", + "properties": { + "machineName": "vm-0520-2", + "migrationState": "Replicating", + "migrationStateDescription": "Ready to migrate", + "testMigrateState": "None", + "testMigrateStateDescription": "None", + "policyFriendlyName": "vmwarepolicy1", + "policyId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationPolicies/vmwarepolicy1", + "allowedOperations": [ + "Migrate", + "DisableMigration", + "TestMigrate", + "TestMigrateCleanup" + ], + "currentJob": { + "jobName": "None", + "jobId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationJobs/None", + "startTime": "2017-04-26T06:37:50.8082715Z" + }, + "providerSpecificDetails": { + "instanceType": "VMwareCbt" + } + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationMigrationItems_Migrate.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationMigrationItems_Migrate.json new file mode 100644 index 000000000000..28559e7e12bf --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationMigrationItems_Migrate.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "migrationItemName": "virtualmachine1", + "protectionContainerName": "vmwareContainer1", + "fabricName": "vmwarefabric1", + "resourceName": "migrationvault", + "resourceGroupName": "resourcegroup1", + "subscriptionId": "cb53d0c3-bd59-4721-89bc-06916a9147ef", + "migrateInput": { + "properties": { + "providerSpecificDetails": { + "instanceType": "VMwareCbt", + "performShutdown": "true" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationProtectionContainers/vmwareContainer1/replicationMigrationItems/virtualmachine1", + "name": "virtualmachine1", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationMigrationItems", + "properties": { + "machineName": "vm-0520-2", + "migrationState": "Replicating", + "migrationStateDescription": "Ready to migrate", + "testMigrateState": "None", + "testMigrateStateDescription": "None", + "policyFriendlyName": "vmwarepolicy1", + "policyId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationPolicies/vmwarepolicy1", + "allowedOperations": [ + "Migrate", + "DisableMigration", + "TestMigrate", + "TestMigrateCleanup" + ], + "currentJob": { + "jobName": "None", + "jobId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationJobs/None", + "startTime": "2017-04-26T06:37:50.8082715Z" + }, + "providerSpecificDetails": { + "instanceType": "VMwareCbt" + } + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationMigrationItems_Resync.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationMigrationItems_Resync.json new file mode 100644 index 000000000000..96b402c9b804 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationMigrationItems_Resync.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "migrationItemName": "virtualmachine1", + "protectionContainerName": "vmwareContainer1", + "fabricName": "vmwarefabric1", + "resourceName": "migrationvault", + "resourceGroupName": "resourcegroup1", + "subscriptionId": "cb53d0c3-bd59-4721-89bc-06916a9147ef", + "input": { + "properties": { + "providerSpecificDetails": { + "instanceType": "VMwareCbt", + "skipCbtReset": "true" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationProtectionContainers/vmwareContainer1/replicationMigrationItems/virtualmachine1", + "name": "virtualmachine1", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationMigrationItems", + "properties": { + "machineName": "vm-0520-2", + "migrationState": "Replicating", + "migrationStateDescription": "Ready to migrate", + "testMigrateState": "None", + "testMigrateStateDescription": "None", + "policyFriendlyName": "vmwarepolicy1", + "policyId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationPolicies/vmwarepolicy1", + "allowedOperations": [ + "Migrate", + "DisableMigration", + "TestMigrate", + "TestMigrateCleanup" + ], + "currentJob": { + "jobName": "None", + "jobId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationJobs/None", + "startTime": "2017-04-26T06:37:50.8082715Z" + }, + "providerSpecificDetails": { + "instanceType": "VMwareCbt" + } + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationMigrationItems_TestMigrate.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationMigrationItems_TestMigrate.json new file mode 100644 index 000000000000..be29373efd3d --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationMigrationItems_TestMigrate.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "migrationItemName": "virtualmachine1", + "protectionContainerName": "vmwareContainer1", + "fabricName": "vmwarefabric1", + "resourceName": "migrationvault", + "resourceGroupName": "resourcegroup1", + "subscriptionId": "cb53d0c3-bd59-4721-89bc-06916a9147ef", + "testMigrateInput": { + "properties": { + "providerSpecificDetails": { + "instanceType": "VMwareCbt", + "recoveryPointId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationProtectionContainers/vmwareContainer1/replicationMigrationItems/virtualmachine1/migrationRecoveryPoints/9e737191-317e-43d0-8c83-e32ac3b34686", + "networkId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.Network/virtualNetworks/virtualNetwork1" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationProtectionContainers/vmwareContainer1/replicationMigrationItems/virtualmachine1", + "name": "virtualmachine1", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationMigrationItems", + "properties": { + "machineName": "vm-0520-2", + "migrationState": "Replicating", + "migrationStateDescription": "Ready to migrate", + "testMigrateState": "None", + "testMigrateStateDescription": "None", + "policyFriendlyName": "vmwarepolicy1", + "policyId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationPolicies/vmwarepolicy1", + "allowedOperations": [ + "Migrate", + "DisableMigration", + "TestMigrate", + "TestMigrateCleanup" + ], + "currentJob": { + "jobName": "None", + "jobId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationJobs/None", + "startTime": "2017-04-26T06:37:50.8082715Z" + }, + "providerSpecificDetails": { + "instanceType": "VMwareCbt" + } + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationMigrationItems_TestMigrateCleanup.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationMigrationItems_TestMigrateCleanup.json new file mode 100644 index 000000000000..638dedfb1ca5 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationMigrationItems_TestMigrateCleanup.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "migrationItemName": "virtualmachine1", + "protectionContainerName": "vmwareContainer1", + "fabricName": "vmwarefabric1", + "resourceName": "migrationvault", + "resourceGroupName": "resourcegroup1", + "subscriptionId": "cb53d0c3-bd59-4721-89bc-06916a9147ef", + "testMigrateCleanupInput": { + "properties": { + "comments": "Test Failover Cleanup" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationProtectionContainers/vmwareContainer1/replicationMigrationItems/virtualmachine1", + "name": "virtualmachine1", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationMigrationItems", + "properties": { + "machineName": "vm-0520-2", + "migrationState": "Replicating", + "migrationStateDescription": "Ready to migrate", + "testMigrateState": "None", + "testMigrateStateDescription": "None", + "policyFriendlyName": "vmwarepolicy1", + "policyId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationPolicies/vmwarepolicy1", + "allowedOperations": [ + "Migrate", + "DisableMigration", + "TestMigrate", + "TestMigrateCleanup" + ], + "currentJob": { + "jobName": "None", + "jobId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationJobs/None", + "startTime": "2017-04-26T06:37:50.8082715Z" + }, + "providerSpecificDetails": { + "instanceType": "VMwareCbt" + } + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationMigrationItems_Update.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationMigrationItems_Update.json new file mode 100644 index 000000000000..75c1de3bc58f --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationMigrationItems_Update.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "migrationItemName": "virtualmachine1", + "protectionContainerName": "vmwareContainer1", + "fabricName": "vmwarefabric1", + "resourceName": "migrationvault", + "resourceGroupName": "resourcegroup1", + "subscriptionId": "cb53d0c3-bd59-4721-89bc-06916a9147ef", + "input": { + "properties": { + "providerSpecificDetails": { + "instanceType": "VMwareCbt" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationProtectionContainers/vmwareContainer1/replicationMigrationItems/virtualmachine1", + "name": "virtualmachine1", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationMigrationItems", + "properties": { + "machineName": "vm-0520-2", + "migrationState": "Replicating", + "migrationStateDescription": "Ready to migrate", + "testMigrateState": "None", + "testMigrateStateDescription": "None", + "policyFriendlyName": "vmwarepolicy1", + "policyId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationPolicies/vmwarepolicy1", + "allowedOperations": [ + "Migrate", + "DisableMigration", + "TestMigrate", + "TestMigrateCleanup" + ], + "currentJob": { + "jobName": "None", + "jobId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationJobs/None", + "startTime": "2017-04-26T06:37:50.8082715Z" + }, + "providerSpecificDetails": { + "instanceType": "VMwareCbt" + } + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationNetworkMappings_Create.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationNetworkMappings_Create.json new file mode 100644 index 000000000000..b5f74ccf6131 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationNetworkMappings_Create.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "fabricName": "b0cef6e9a4437b81803d0b55ada4f700ab66caae59c35d62723a1589c0cd13ac", + "api-version": "2021-02-10", + "resourceName": "srce2avaultbvtaC27", + "resourceGroupName": "srcBvte2a14C27", + "subscriptionId": "9112a37f-0f3e-46ec-9c00-060c6edca071", + "networkName": "e2267b5c-2650-49bd-ab3f-d66aae694c06", + "networkMappingName": "corpe2amap", + "input": { + "properties": { + "recoveryFabricName": "Microsoft Azure", + "recoveryNetworkId": "/subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/siterecoveryProd1/providers/Microsoft.Network/virtualNetworks/vnetavrai", + "fabricSpecificDetails": { + "instanceType": "VmmToAzure" + } + } + } + }, + "responses": { + "200": { + "body": { + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationNetworks/replicationNetworkMappings", + "id": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/srcBvte2a14C27/providers/Microsoft.RecoveryServices/vaults/srce2avaultbvtaC27/replicationFabrics/b0cef6e9a4437b81803d0b55ada4f700ab66caae59c35d62723a1589c0cd13ac/replicationNetworks/e2267b5c-2650-49bd-ab3f-d66aae694c06/replicationNetworkMappings/corpe2amap", + "name": "corpe2amap", + "properties": { + "state": "Paired", + "primaryNetworkFriendlyName": "corp", + "primaryNetworkId": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/srcBvte2a14C27/providers/Microsoft.RecoveryServices/vaults/srce2avaultbvtaC27/replicationFabrics/d49858f157601230a6ac5862fbbc6e63bf38d23ecd96cf953767945d457fe9d5/replicationNetworks/e2267b5c-2650-49bd-ab3f-d66aae694c06", + "primaryFabricFriendlyName": "CP-B3L30108-01.ntdev.corp.microsoft.com", + "recoveryNetworkFriendlyName": "vnetavrai", + "recoveryNetworkId": "/subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/siterecoveryProd1/providers/Microsoft.Network/virtualNetworks/vnetavrai", + "recoveryFabricArmId": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/srcBvte2a14C27/providers/Microsoft.RecoveryServices/vaults/srce2avaultbvtaC27/replicationFabrics/d49858f157601230a6ac5862fbbc6e63bf38d23ecd96cf953767945d457fe9d5", + "recoveryFabricFriendlyName": "Microsoft Azure", + "fabricSpecificSettings": { + "instanceType": "VmmToAzure" + } + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationNetworkMappings_Delete.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationNetworkMappings_Delete.json new file mode 100644 index 000000000000..e86aa5acf4eb --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationNetworkMappings_Delete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "fabricName": "b0cef6e9a4437b81803d0b55ada4f700ab66caae59c35d62723a1589c0cd13ac", + "api-version": "2021-02-10", + "resourceName": "srce2avaultbvtaC27", + "resourceGroupName": "srcBvte2a14C27", + "subscriptionId": "9112a37f-0f3e-46ec-9c00-060c6edca071", + "networkName": "e2267b5c-2650-49bd-ab3f-d66aae694c06", + "networkMappingName": "corpe2amap" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationNetworkMappings_Get.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationNetworkMappings_Get.json new file mode 100644 index 000000000000..ccf10592da5e --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationNetworkMappings_Get.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "fabricName": "b0cef6e9a4437b81803d0b55ada4f700ab66caae59c35d62723a1589c0cd13ac", + "api-version": "2021-02-10", + "resourceName": "srce2avaultbvtaC27", + "resourceGroupName": "srcBvte2a14C27", + "subscriptionId": "9112a37f-0f3e-46ec-9c00-060c6edca071", + "networkName": "e2267b5c-2650-49bd-ab3f-d66aae694c06", + "networkMappingName": "corpe2amap" + }, + "responses": { + "200": { + "body": { + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationNetworks/replicationNetworkMappings", + "id": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/srcBvte2a14C27/providers/Microsoft.RecoveryServices/vaults/srce2avaultbvtaC27/replicationFabrics/b0cef6e9a4437b81803d0b55ada4f700ab66caae59c35d62723a1589c0cd13ac/replicationNetworks/e2267b5c-2650-49bd-ab3f-d66aae694c06/replicationNetworkMappings/corpe2amap", + "name": "corpe2amap", + "properties": { + "state": "Paired", + "primaryNetworkFriendlyName": "corp", + "primaryNetworkId": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/srcBvte2a14C27/providers/Microsoft.RecoveryServices/vaults/srce2avaultbvtaC27/replicationFabrics/d49858f157601230a6ac5862fbbc6e63bf38d23ecd96cf953767945d457fe9d5/replicationNetworks/e2267b5c-2650-49bd-ab3f-d66aae694c06", + "primaryFabricFriendlyName": "CP-B3L30108-01.ntdev.corp.microsoft.com", + "recoveryNetworkFriendlyName": "vnetavrai", + "recoveryNetworkId": "/subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/siterecoveryProd1/providers/Microsoft.Network/virtualNetworks/vnetavrai", + "recoveryFabricArmId": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/srcBvte2a14C27/providers/Microsoft.RecoveryServices/vaults/srce2avaultbvtaC27/replicationFabrics/d49858f157601230a6ac5862fbbc6e63bf38d23ecd96cf953767945d457fe9d5", + "recoveryFabricFriendlyName": "Microsoft Azure", + "fabricSpecificSettings": { + "instanceType": "VmmToAzure" + } + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationNetworkMappings_List.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationNetworkMappings_List.json new file mode 100644 index 000000000000..724f4383bf19 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationNetworkMappings_List.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "resourceName": "srce2avaultbvtaC27", + "resourceGroupName": "srcBvte2a14C27", + "subscriptionId": "9112a37f-0f3e-46ec-9c00-060c6edca071" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "type": "Microsoft.RecoveryServicesBVTD2/vaults/replicationFabrics/replicationNetworks/replicationNetworkMappings", + "id": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/srcBvte2a14C27/providers/Microsoft.RecoveryServicesBVTD2/vaults/srce2avaultbvtaC27/replicationFabrics/b0cef6e9a4437b81803d0b55ada4f700ab66caae59c35d62723a1589c0cd13ac/replicationNetworks/e2267b5c-2650-49bd-ab3f-d66aae694c06/replicationNetworkMappings/corpe2amap", + "name": "corpe2amap", + "properties": { + "state": "Paired", + "primaryNetworkFriendlyName": "corp", + "primaryNetworkId": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/srcBvte2a14C27/providers/Microsoft.RecoveryServicesBVTD2/vaults/srce2avaultbvtaC27/replicationFabrics/d49858f157601230a6ac5862fbbc6e63bf38d23ecd96cf953767945d457fe9d5/replicationNetworks/e2267b5c-2650-49bd-ab3f-d66aae694c06", + "primaryFabricFriendlyName": "CP-B3L30108-01.ntdev.corp.microsoft.com", + "recoveryNetworkFriendlyName": "vnetavrai", + "recoveryNetworkId": "/subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/siterecoveryProd1/providers/Microsoft.Network/virtualNetworks/vnetavrai", + "recoveryFabricArmId": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/srcBvte2a14C27/providers/Microsoft.RecoveryServicesBVTD2/vaults/srce2avaultbvtaC27/replicationFabrics/d49858f157601230a6ac5862fbbc6e63bf38d23ecd96cf953767945d457fe9d5", + "recoveryFabricFriendlyName": "Microsoft Azure", + "fabricSpecificSettings": { + "instanceType": "VmmToAzure" + } + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationNetworkMappings_ListByReplicationNetworks.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationNetworkMappings_ListByReplicationNetworks.json new file mode 100644 index 000000000000..95a45c5c86a9 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationNetworkMappings_ListByReplicationNetworks.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "networkName": "e2267b5c-2650-49bd-ab3f-d66aae694c06", + "fabricName": "b0cef6e9a4437b81803d0b55ada4f700ab66caae59c35d62723a1589c0cd13ac", + "api-version": "2021-02-10", + "resourceName": "srce2avaultbvtaC27", + "resourceGroupName": "srcBvte2a14C27", + "subscriptionId": "9112a37f-0f3e-46ec-9c00-060c6edca071" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationNetworks/replicationNetworkMappings", + "id": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/srcBvte2a14C27/providers/Microsoft.RecoveryServices/vaults/srce2avaultbvtaC27/replicationFabrics/b0cef6e9a4437b81803d0b55ada4f700ab66caae59c35d62723a1589c0cd13ac/replicationNetworks/e2267b5c-2650-49bd-ab3f-d66aae694c06/replicationNetworkMappings/corpe2amap", + "name": "corpe2amap", + "properties": { + "state": "Paired", + "primaryNetworkFriendlyName": "corp", + "primaryNetworkId": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/srcBvte2a14C27/providers/Microsoft.RecoveryServices/vaults/srce2avaultbvtaC27/replicationFabrics/d49858f157601230a6ac5862fbbc6e63bf38d23ecd96cf953767945d457fe9d5/replicationNetworks/e2267b5c-2650-49bd-ab3f-d66aae694c06", + "primaryFabricFriendlyName": "CP-B3L30108-01.ntdev.corp.microsoft.com", + "recoveryNetworkFriendlyName": "vnetavrai", + "recoveryNetworkId": "/subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/siterecoveryProd1/providers/Microsoft.Network/virtualNetworks/vnetavrai", + "recoveryFabricArmId": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/srcBvte2a14C27/providers/Microsoft.RecoveryServices/vaults/srce2avaultbvtaC27/replicationFabrics/d49858f157601230a6ac5862fbbc6e63bf38d23ecd96cf953767945d457fe9d5", + "recoveryFabricFriendlyName": "Microsoft Azure", + "fabricSpecificSettings": { + "instanceType": "VmmToAzure" + } + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationNetworkMappings_Update.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationNetworkMappings_Update.json new file mode 100644 index 000000000000..3cdc6214b495 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationNetworkMappings_Update.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "fabricName": "b0cef6e9a4437b81803d0b55ada4f700ab66caae59c35d62723a1589c0cd13ac", + "api-version": "2021-02-10", + "resourceName": "srce2avaultbvtaC27", + "resourceGroupName": "srcBvte2a14C27", + "subscriptionId": "9112a37f-0f3e-46ec-9c00-060c6edca071", + "networkName": "e2267b5c-2650-49bd-ab3f-d66aae694c06", + "networkMappingName": "corpe2amap", + "input": { + "properties": { + "recoveryFabricName": "Microsoft Azure", + "recoveryNetworkId": "/subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/siterecoveryProd1/providers/Microsoft.Network/virtualNetworks/vnetavrai2", + "fabricSpecificDetails": { + "instanceType": "VmmToAzure" + } + } + } + }, + "responses": { + "200": { + "body": { + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationNetworks/replicationNetworkMappings", + "id": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/srcBvte2a14C27/providers/Microsoft.RecoveryServices/vaults/srce2avaultbvtaC27/replicationFabrics/b0cef6e9a4437b81803d0b55ada4f700ab66caae59c35d62723a1589c0cd13ac/replicationNetworks/e2267b5c-2650-49bd-ab3f-d66aae694c06/replicationNetworkMappings/corpe2amap", + "name": "corpe2amap", + "properties": { + "state": "Paired", + "primaryNetworkFriendlyName": "corp", + "primaryNetworkId": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/srcBvte2a14C27/providers/Microsoft.RecoveryServices/vaults/srce2avaultbvtaC27/replicationFabrics/d49858f157601230a6ac5862fbbc6e63bf38d23ecd96cf953767945d457fe9d5/replicationNetworks/e2267b5c-2650-49bd-ab3f-d66aae694c06", + "primaryFabricFriendlyName": "CP-B3L30108-01.ntdev.corp.microsoft.com", + "recoveryNetworkFriendlyName": "vnetavrai2", + "recoveryNetworkId": "/subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/siterecoveryProd1/providers/Microsoft.Network/virtualNetworks/vnetavrai2", + "recoveryFabricArmId": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/srcBvte2a14C27/providers/Microsoft.RecoveryServices/vaults/srce2avaultbvtaC27/replicationFabrics/d49858f157601230a6ac5862fbbc6e63bf38d23ecd96cf953767945d457fe9d5", + "recoveryFabricFriendlyName": "Microsoft Azure", + "fabricSpecificSettings": { + "instanceType": "VmmToAzure" + } + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationNetworks_Get.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationNetworks_Get.json new file mode 100644 index 000000000000..fc4ef5a86212 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationNetworks_Get.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "fabricName": "b0cef6e9a4437b81803d0b55ada4f700ab66caae59c35d62723a1589c0cd13ac", + "api-version": "2021-02-10", + "resourceName": "srce2avaultbvtaC27", + "resourceGroupName": "srcBvte2a14C27", + "subscriptionId": "9112a37f-0f3e-46ec-9c00-060c6edca071", + "networkName": "93ce99d7-1219-4914-aa61-73fe5023988e" + }, + "responses": { + "200": { + "body": { + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationNetworks", + "id": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/srcBvte2a14C27/providers/Microsoft.RecoveryServices/vaults/srce2avaultbvtaC27/replicationFabrics/b0cef6e9a4437b81803d0b55ada4f700ab66caae59c35d62723a1589c0cd13ac/replicationNetworks/93ce99d7-1219-4914-aa61-73fe5023988e", + "name": "93ce99d7-1219-4914-aa61-73fe5023988e", + "properties": { + "fabricType": "VMM", + "subnets": [], + "friendlyName": "VSwitch_VLan", + "networkType": "NoIsolation" + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationNetworks_List.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationNetworks_List.json new file mode 100644 index 000000000000..f1483a078dfd --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationNetworks_List.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "resourceName": "srce2avaultbvtaC27", + "resourceGroupName": "srcBvte2a14C27", + "subscriptionId": "9112a37f-0f3e-46ec-9c00-060c6edca071" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationNetworks", + "id": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/srcBvte2a14C27/providers/Microsoft.RecoveryServices/vaults/srce2avaultbvtaC27/replicationFabrics/b0cef6e9a4437b81803d0b55ada4f700ab66caae59c35d62723a1589c0cd13ac/replicationNetworks/93ce99d7-1219-4914-aa61-73fe5023988e", + "name": "93ce99d7-1219-4914-aa61-73fe5023988e", + "properties": { + "fabricType": "VMM", + "subnets": [], + "friendlyName": "VSwitch_VLan", + "networkType": "NoIsolation" + } + }, + { + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationNetworks", + "id": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/srcBvte2a14C27/providers/Microsoft.RecoveryServices/vaults/srce2avaultbvtaC27/replicationFabrics/b0cef6e9a4437b81803d0b55ada4f700ab66caae59c35d62723a1589c0cd13ac/replicationNetworks/b83bf8fd-f304-48d7-82c9-5d74e6215c1b", + "name": "b83bf8fd-f304-48d7-82c9-5d74e6215c1b", + "properties": { + "fabricType": "VMM", + "subnets": [], + "friendlyName": "VSwitch_NoIso", + "networkType": "NoIsolation" + } + }, + { + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationNetworks", + "id": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/srcBvte2a14C27/providers/Microsoft.RecoveryServices/vaults/srce2avaultbvtaC27/replicationFabrics/b0cef6e9a4437b81803d0b55ada4f700ab66caae59c35d62723a1589c0cd13ac/replicationNetworks/e2267b5c-2650-49bd-ab3f-d66aae694c06", + "name": "e2267b5c-2650-49bd-ab3f-d66aae694c06", + "properties": { + "fabricType": "VMM", + "subnets": [], + "friendlyName": "corp", + "networkType": "NoIsolation" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationNetworks_ListByReplicationFabrics.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationNetworks_ListByReplicationFabrics.json new file mode 100644 index 000000000000..e81da113dab0 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationNetworks_ListByReplicationFabrics.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "fabricName": "b0cef6e9a4437b81803d0b55ada4f700ab66caae59c35d62723a1589c0cd13ac", + "api-version": "2021-02-10", + "resourceName": "srce2avaultbvtaC27", + "resourceGroupName": "srcBvte2a14C27", + "subscriptionId": "9112a37f-0f3e-46ec-9c00-060c6edca071" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationNetworks", + "id": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/srcBvte2a14C27/providers/Microsoft.RecoveryServices/vaults/srce2avaultbvtaC27/replicationFabrics/b0cef6e9a4437b81803d0b55ada4f700ab66caae59c35d62723a1589c0cd13ac/replicationNetworks/93ce99d7-1219-4914-aa61-73fe5023988e", + "name": "93ce99d7-1219-4914-aa61-73fe5023988e", + "properties": { + "fabricType": "VMM", + "subnets": [], + "friendlyName": "VSwitch_VLan", + "networkType": "NoIsolation" + } + }, + { + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationNetworks", + "id": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/srcBvte2a14C27/providers/Microsoft.RecoveryServices/vaults/srce2avaultbvtaC27/replicationFabrics/b0cef6e9a4437b81803d0b55ada4f700ab66caae59c35d62723a1589c0cd13ac/replicationNetworks/b83bf8fd-f304-48d7-82c9-5d74e6215c1b", + "name": "b83bf8fd-f304-48d7-82c9-5d74e6215c1b", + "properties": { + "fabricType": "VMM", + "subnets": [], + "friendlyName": "VSwitch_NoIso", + "networkType": "NoIsolation" + } + }, + { + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationNetworks", + "id": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/srcBvte2a14C27/providers/Microsoft.RecoveryServices/vaults/srce2avaultbvtaC27/replicationFabrics/b0cef6e9a4437b81803d0b55ada4f700ab66caae59c35d62723a1589c0cd13ac/replicationNetworks/e2267b5c-2650-49bd-ab3f-d66aae694c06", + "name": "e2267b5c-2650-49bd-ab3f-d66aae694c06", + "properties": { + "fabricType": "VMM", + "subnets": [], + "friendlyName": "corp", + "networkType": "NoIsolation" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationPolicies_Create.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationPolicies_Create.json new file mode 100644 index 000000000000..c4fd06be6e68 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationPolicies_Create.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "policyName": "protectionprofile1", + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "input": { + "properties": { + "providerSpecificInput": { + "instanceType": "HyperVReplicaAzure" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/protectionprofile1", + "name": "protectionprofile1", + "type": "Microsoft.RecoveryServices/vaults/replicationPolicies", + "properties": { + "friendlyName": "protectionprofile1", + "providerSpecificDetails": { + "instanceType": "HyperVReplicaAzure" + } + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationPolicies_Delete.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationPolicies_Delete.json new file mode 100644 index 000000000000..1ac99da066ed --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationPolicies_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "policyName": "protectionprofile1", + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationPolicies_Get.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationPolicies_Get.json new file mode 100644 index 000000000000..6a334a28c3b0 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationPolicies_Get.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "policyName": "protectionprofile1", + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/protectionprofile1", + "name": "protectionprofile1", + "type": "Microsoft.RecoveryServices/vaults/replicationPolicies", + "properties": { + "friendlyName": "protectionprofile1", + "providerSpecificDetails": { + "instanceType": "HyperVReplicaAzure" + } + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationPolicies_List.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationPolicies_List.json new file mode 100644 index 000000000000..56f01c25eaeb --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationPolicies_List.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/protectionprofile1", + "name": "protectionprofile1", + "type": "Microsoft.RecoveryServices/vaults/replicationPolicies", + "properties": { + "friendlyName": "protectionprofile1", + "providerSpecificDetails": { + "instanceType": "HyperVReplicaAzure" + } + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationPolicies_Update.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationPolicies_Update.json new file mode 100644 index 000000000000..dff5eb7c2d7b --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationPolicies_Update.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "policyName": "protectionprofile1", + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "input": { + "properties": { + "replicationProviderSettings": { + "instanceType": "HyperVReplicaAzure" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/protectionprofile1", + "name": "protectionprofile1", + "type": "Microsoft.RecoveryServices/vaults/replicationPolicies", + "properties": { + "friendlyName": "protectionprofile1", + "providerSpecificDetails": { + "instanceType": "HyperVReplicaAzure" + } + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectableItems_Get.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectableItems_Get.json new file mode 100644 index 000000000000..6d28ecbb7afc --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectableItems_Get.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "protectableItemName": "c0c14913-3d7a-48ea-9531-cc99e0e686e6", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectableItems/c0c14913-3d7a-48ea-9531-cc99e0e686e6", + "name": "c0c14913-3d7a-48ea-9531-cc99e0e686e6", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectableItems", + "properties": { + "friendlyName": "vm2", + "protectionStatus": "Unprotected", + "recoveryServicesProviderId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationRecoveryServicesProviders/241641e6-ee7b-4ee4-8141-821fadda43fa", + "protectionReadinessErrors": [], + "supportedReplicationProviders": [ + "HyperVReplicaAzure" + ], + "customDetails": { + "instanceType": "HyperVVirtualMachine" + } + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectableItems_ListByReplicationProtectionContainers.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectableItems_ListByReplicationProtectionContainers.json new file mode 100644 index 000000000000..bf6751170016 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectableItems_ListByReplicationProtectionContainers.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectableItems/c0c14913-3d7a-48ea-9531-cc99e0e686e6", + "name": "c0c14913-3d7a-48ea-9531-cc99e0e686e6", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectableItems", + "properties": { + "friendlyName": "vm2", + "protectionStatus": "Unprotected", + "recoveryServicesProviderId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationRecoveryServicesProviders/241641e6-ee7b-4ee4-8141-821fadda43fa", + "protectionReadinessErrors": [], + "supportedReplicationProviders": [ + "HyperVReplicaAzure" + ], + "customDetails": { + "instanceType": "HyperVVirtualMachine" + } + } + }, + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectableItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "name": "f8491e4f-817a-40dd-a90c-af773978c75b", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectableItems", + "properties": { + "friendlyName": "vm1", + "protectionStatus": "Unprotected", + "recoveryServicesProviderId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationRecoveryServicesProviders/241641e6-ee7b-4ee4-8141-821fadda43fa", + "protectionReadinessErrors": [], + "supportedReplicationProviders": [ + "HyperVReplicaAzure" + ], + "customDetails": { + "instanceType": "HyperVVirtualMachine" + } + } + } + ], + "nextLink": "https://management.azure.com/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectableItems?api-version=2021-02-10&%24skipToken=ReplicationGroup%3aBegin" + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_AddDisks.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_AddDisks.json new file mode 100644 index 000000000000..717eabdf5286 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_AddDisks.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "replicatedProtectedItemName": "f8491e4f-817a-40dd-a90c-af773978c75b", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "addDisksInput": { + "properties": { + "providerSpecificDetails": { + "instanceType": "A2A", + "vmDisks": [ + { + "diskUri": "https://vmstorage.blob.core.windows.net/vhds/datadisk1.vhd", + "recoveryAzureStorageAccountId": "/subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourcegroups/recoveryResource/providers/Microsoft.Storage/storageAccounts/recoverystorage", + "primaryStagingAzureStorageAccountId": "/subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourcegroups/primaryResource/providers/Microsoft.Storage/storageAccounts/vmcachestorage" + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "name": "f8491e4f-817a-40dd-a90c-af773978c75b", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems", + "properties": { + "friendlyName": "f8491e4f-817a-40dd-a90c-af773978c75b", + "protectedItemType": "", + "protectableItemId": null, + "recoveryServicesProviderId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationRecoveryServicesProviders/6d2940f9-4c34-5989-9f56-1243a6e76ecf", + "primaryFabricFriendlyName": "cloud1", + "primaryFabricProvider": "AzureFabric", + "recoveryFabricFriendlyName": "cloud2", + "recoveryFabricId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud2", + "primaryProtectionContainerFriendlyName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "recoveryProtectionContainerFriendlyName": "cloud_81224fc6-f326-5d35-96de-fbf51efb3188", + "protectionState": "Protected", + "protectionStateDescription": "Protected", + "activeLocation": "Primary", + "testFailoverState": "None", + "testFailoverStateDescription": "None", + "allowedOperations": [ + "RepairReplication", + "UnplannedFailover", + "DisableProtection", + "TestFailover" + ], + "replicationHealth": "Normal", + "failoverHealth": "Normal", + "healthErrors": [], + "policyId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/A2APolicy", + "policyFriendlyName": "A2APolicy", + "currentScenario": { + "scenarioName": "None", + "jobId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/None", + "startTime": "1752-12-31T19:31:01Z" + }, + "failoverRecoveryPointId": null, + "providerSpecificDetails": { + "instanceType": "A2A" + }, + "recoveryContainerId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud2/replicationProtectionContainers/cloud_81224fc6-f326-5d35-96de-fbf51efb3188" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_ApplyRecoveryPoint.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_ApplyRecoveryPoint.json new file mode 100644 index 000000000000..6c57388bc736 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_ApplyRecoveryPoint.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "replicatedProtectedItemName": "f8491e4f-817a-40dd-a90c-af773978c75b", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "applyRecoveryPointInput": { + "properties": { + "recoveryPointId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b/recoveryPoints/e4d05fe9-5dfd-47be-b50b-aad306b2802d", + "providerSpecificDetails": { + "instanceType": "HyperVReplicaAzure" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "name": "f8491e4f-817a-40dd-a90c-af773978c75b", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems", + "properties": { + "friendlyName": "vm1", + "protectedItemType": "HyperVVirtualMachine", + "protectableItemId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectableItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "recoveryServicesProviderId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationRecoveryServicesProviders/241641e6-ee7b-4ee4-8141-821fadda43fa", + "primaryFabricFriendlyName": "cloud1", + "recoveryFabricFriendlyName": "Microsoft Azure", + "recoveryFabricId": "Microsoft Azure", + "primaryProtectionContainerFriendlyName": "cloud1", + "recoveryProtectionContainerFriendlyName": "Microsoft Azure", + "protectionState": "UnplannedFailoverCommitPendingStatesBegin", + "protectionStateDescription": "Failover completed", + "activeLocation": "Recovery", + "testFailoverState": "MarkedForDeletion", + "testFailoverStateDescription": "Cleaning up test environment", + "allowedOperations": [ + "CompleteMigration", + "Commit", + "DisableProtection", + "ChangePit" + ], + "replicationHealth": "Critical", + "policyId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/protectionprofile1", + "policyFriendlyName": "protectionprofile1", + "lastSuccessfulFailoverTime": "2017-04-26T08:42:33.0996129Z", + "lastSuccessfulTestFailoverTime": "2017-04-25T09:57:57.0357829Z", + "currentScenario": { + "scenarioName": "None", + "jobId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/None", + "startTime": "1753-01-01T01:01:01Z" + }, + "failoverRecoveryPointId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b/recoveryPoints/e4d05fe9-5dfd-47be-b50b-aad306b2802d", + "providerSpecificDetails": { + "instanceType": "HyperVReplicaAzure" + }, + "recoveryContainerId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/d49858f157601230a6ac5862fbbc6e63bf38d23ecd96cf953767945d457fe9d5/replicationProtectionContainers/d38048d4-b460-4791-8ece-108395ee8478" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_Create.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_Create.json new file mode 100644 index 000000000000..8c922ab3ebf5 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_Create.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "replicatedProtectedItemName": "f8491e4f-817a-40dd-a90c-af773978c75b", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "input": { + "properties": { + "policyId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/protectionprofile1", + "protectableItemId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectableItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "providerSpecificDetails": { + "instanceType": "HyperVReplicaAzure" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "name": "f8491e4f-817a-40dd-a90c-af773978c75b", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems", + "properties": { + "friendlyName": "vm1", + "protectedItemType": "HyperVVirtualMachine", + "protectableItemId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectableItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "recoveryServicesProviderId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationRecoveryServicesProviders/241641e6-ee7b-4ee4-8141-821fadda43fa", + "primaryFabricFriendlyName": "cloud1", + "recoveryFabricFriendlyName": "Microsoft Azure", + "recoveryFabricId": "Microsoft Azure", + "primaryProtectionContainerFriendlyName": "cloud1", + "recoveryProtectionContainerFriendlyName": "Microsoft Azure", + "protectionState": "Protected", + "protectionStateDescription": "Protected", + "activeLocation": "Primary", + "testFailoverState": "None", + "testFailoverStateDescription": "None", + "allowedOperations": [ + "PlannedFailover", + "UnplannedFailover", + "DisableProtection", + "TestFailover" + ], + "replicationHealth": "Normal", + "policyId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/protectionprofile1", + "policyFriendlyName": "protectionprofile1", + "currentScenario": { + "scenarioName": "None", + "jobId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/None", + "startTime": "1753-01-01T01:01:01Z" + }, + "providerSpecificDetails": { + "instanceType": "HyperVReplicaAzure" + }, + "recoveryContainerId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/d49858f157601230a6ac5862fbbc6e63bf38d23ecd96cf953767945d457fe9d5/replicationProtectionContainers/d38048d4-b460-4791-8ece-108395ee8478" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_Delete.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_Delete.json new file mode 100644 index 000000000000..321aba8f4be0 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_Delete.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "replicatedProtectedItemName": "c0c14913-3d7a-48ea-9531-cc99e0e686e6", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "disableProtectionInput": { + "properties": { + "replicationProviderInput": { + "instanceType": "DisableProtectionProviderSpecificInput" + } + } + } + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_FailoverCancel.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_FailoverCancel.json new file mode 100644 index 000000000000..1440c9eb2bee --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_FailoverCancel.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "replicatedProtectedItemName": "f8491e4f-817a-40dd-a90c-af773978c75b", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "name": "f8491e4f-817a-40dd-a90c-af773978c75b", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems", + "properties": { + "friendlyName": "vm1", + "protectedItemType": "", + "protectableItemId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectableItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "recoveryServicesProviderId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationRecoveryServicesProviders/241641e6-ee7b-4ee4-8141-821fadda43fa", + "primaryFabricFriendlyName": "cloud1", + "recoveryFabricFriendlyName": "cloud1", + "recoveryFabricId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1", + "primaryProtectionContainerFriendlyName": "cloud1", + "recoveryProtectionContainerFriendlyName": "cloud1", + "protectionState": "Protected", + "protectionStateDescription": "Protected", + "activeLocation": "Primary", + "testFailoverState": "None", + "testFailoverStateDescription": "None", + "allowedOperations": [ + "PlannedFailover", + "DisableProtection" + ], + "replicationHealth": "Normal", + "policyId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/protectionprofile1", + "policyFriendlyName": "protectionprofile1", + "lastSuccessfulFailoverTime": "2021-02-24T06:37:23.1578655Z", + "lastSuccessfulTestFailoverTime": "1601-01-01T00:00:00.0000000Z", + "currentScenario": { + "scenarioName": "None", + "jobId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/None", + "startTime": "2021-02-24T07:17:23.1358752Z" + }, + "failoverRecoveryPointId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b/recoveryPoints/b22134ea-620c-474b-9fa5-3c1cb47708e3", + "providerSpecificDetails": { + "instanceType": "InMageRcmFailback" + }, + "recoveryContainerId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_FailoverCommit.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_FailoverCommit.json new file mode 100644 index 000000000000..13d180eda35d --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_FailoverCommit.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "replicatedProtectedItemName": "f8491e4f-817a-40dd-a90c-af773978c75b", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "name": "f8491e4f-817a-40dd-a90c-af773978c75b", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems", + "properties": { + "friendlyName": "vm1", + "protectedItemType": "HyperVVirtualMachine", + "protectableItemId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectableItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "recoveryServicesProviderId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationRecoveryServicesProviders/241641e6-ee7b-4ee4-8141-821fadda43fa", + "primaryFabricFriendlyName": "cloud1", + "recoveryFabricFriendlyName": "Microsoft Azure", + "recoveryFabricId": "Microsoft Azure", + "primaryProtectionContainerFriendlyName": "cloud1", + "recoveryProtectionContainerFriendlyName": "Microsoft Azure", + "protectionState": "PlannedFailoverStatesBegin", + "protectionStateDescription": "Planned failover committed", + "activeLocation": "Recovery", + "testFailoverState": "MarkedForDeletion", + "testFailoverStateDescription": "Cleaning up test environment", + "allowedOperations": [ + "CompleteMigration", + "DisableProtection", + "Failback" + ], + "replicationHealth": "Normal", + "policyId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/protectionprofile1", + "policyFriendlyName": "protectionprofile1", + "lastSuccessfulFailoverTime": "2017-04-26T06:37:23.1578655Z", + "lastSuccessfulTestFailoverTime": "2017-04-25T09:57:57.0357829Z", + "currentScenario": { + "scenarioName": "None", + "jobId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/None", + "startTime": "1753-01-01T01:01:01Z" + }, + "failoverRecoveryPointId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b/recoveryPoints/b22134ea-620c-474b-9fa5-3c1cb47708e3", + "providerSpecificDetails": { + "instanceType": "HyperVReplicaAzure" + }, + "recoveryContainerId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/d49858f157601230a6ac5862fbbc6e63bf38d23ecd96cf953767945d457fe9d5/replicationProtectionContainers/d38048d4-b460-4791-8ece-108395ee8478" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_Get.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_Get.json new file mode 100644 index 000000000000..d25f22a36faf --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_Get.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "replicatedProtectedItemName": "f8491e4f-817a-40dd-a90c-af773978c75b", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "name": "f8491e4f-817a-40dd-a90c-af773978c75b", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems", + "properties": { + "friendlyName": "vm1", + "protectedItemType": "HyperVVirtualMachine", + "protectableItemId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectableItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "recoveryServicesProviderId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationRecoveryServicesProviders/241641e6-ee7b-4ee4-8141-821fadda43fa", + "primaryFabricFriendlyName": "cloud1", + "recoveryFabricFriendlyName": "Microsoft Azure", + "recoveryFabricId": "Microsoft Azure", + "primaryProtectionContainerFriendlyName": "cloud1", + "recoveryProtectionContainerFriendlyName": "Microsoft Azure", + "protectionState": "Protected", + "protectionStateDescription": "Protected", + "activeLocation": "Primary", + "testFailoverState": "None", + "testFailoverStateDescription": "None", + "allowedOperations": [ + "PlannedFailover", + "UnplannedFailover", + "DisableProtection", + "TestFailover" + ], + "replicationHealth": "Normal", + "policyId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/protectionprofile1", + "policyFriendlyName": "protectionprofile1", + "currentScenario": { + "scenarioName": "None", + "jobId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/None", + "startTime": "1753-01-01T01:01:01Z" + }, + "providerSpecificDetails": { + "instanceType": "HyperVReplicaAzure" + }, + "recoveryContainerId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/d49858f157601230a6ac5862fbbc6e63bf38d23ecd96cf953767945d457fe9d5/replicationProtectionContainers/d38048d4-b460-4791-8ece-108395ee8478" + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_List.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_List.json new file mode 100644 index 000000000000..0644d169b39b --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_List.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "name": "f8491e4f-817a-40dd-a90c-af773978c75b", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems", + "properties": { + "friendlyName": "vm1", + "protectedItemType": "HyperVVirtualMachine", + "protectableItemId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectableItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "recoveryServicesProviderId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationRecoveryServicesProviders/241641e6-ee7b-4ee4-8141-821fadda43fa", + "primaryFabricFriendlyName": "cloud1", + "recoveryFabricFriendlyName": "Microsoft Azure", + "recoveryFabricId": "Microsoft Azure", + "primaryProtectionContainerFriendlyName": "cloud1", + "recoveryProtectionContainerFriendlyName": "Microsoft Azure", + "protectionState": "Protected", + "protectionStateDescription": "Protected", + "activeLocation": "Primary", + "testFailoverState": "None", + "testFailoverStateDescription": "None", + "allowedOperations": [ + "PlannedFailover", + "UnplannedFailover", + "DisableProtection", + "TestFailover" + ], + "replicationHealth": "Normal", + "policyId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/protectionprofile1", + "policyFriendlyName": "protectionprofile1", + "currentScenario": { + "scenarioName": "None", + "jobId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/None", + "startTime": "1753-01-01T01:01:01Z" + }, + "providerSpecificDetails": { + "instanceType": "HyperVReplicaAzure" + }, + "recoveryContainerId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/d49858f157601230a6ac5862fbbc6e63bf38d23ecd96cf953767945d457fe9d5/replicationProtectionContainers/d38048d4-b460-4791-8ece-108395ee8478" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_ListByReplicationProtectionContainers.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_ListByReplicationProtectionContainers.json new file mode 100644 index 000000000000..e74b6029f7ee --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_ListByReplicationProtectionContainers.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "name": "f8491e4f-817a-40dd-a90c-af773978c75b", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems", + "properties": { + "friendlyName": "vm1", + "protectedItemType": "HyperVVirtualMachine", + "protectableItemId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectableItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "recoveryServicesProviderId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationRecoveryServicesProviders/241641e6-ee7b-4ee4-8141-821fadda43fa", + "primaryFabricFriendlyName": "cloud1", + "recoveryFabricFriendlyName": "Microsoft Azure", + "recoveryFabricId": "Microsoft Azure", + "primaryProtectionContainerFriendlyName": "cloud1", + "recoveryProtectionContainerFriendlyName": "Microsoft Azure", + "protectionState": "Protected", + "protectionStateDescription": "Protected", + "activeLocation": "Primary", + "testFailoverState": "None", + "testFailoverStateDescription": "None", + "allowedOperations": [ + "PlannedFailover", + "UnplannedFailover", + "DisableProtection", + "TestFailover" + ], + "replicationHealth": "Normal", + "policyId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/protectionprofile1", + "policyFriendlyName": "protectionprofile1", + "currentScenario": { + "scenarioName": "None", + "jobId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/None", + "startTime": "1753-01-01T01:01:01Z" + }, + "providerSpecificDetails": { + "instanceType": "HyperVReplicaAzure" + }, + "recoveryContainerId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/d49858f157601230a6ac5862fbbc6e63bf38d23ecd96cf953767945d457fe9d5/replicationProtectionContainers/d38048d4-b460-4791-8ece-108395ee8478" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_PlannedFailover.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_PlannedFailover.json new file mode 100644 index 000000000000..e6cb7d073fb5 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_PlannedFailover.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "replicatedProtectedItemName": "f8491e4f-817a-40dd-a90c-af773978c75b", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "failoverInput": { + "properties": { + "failoverDirection": "PrimaryToRecovery", + "providerSpecificDetails": { + "instanceType": "HyperVReplicaAzure" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "name": "f8491e4f-817a-40dd-a90c-af773978c75b", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems", + "properties": { + "friendlyName": "vm1", + "protectedItemType": "HyperVVirtualMachine", + "protectableItemId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectableItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "recoveryServicesProviderId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationRecoveryServicesProviders/241641e6-ee7b-4ee4-8141-821fadda43fa", + "primaryFabricFriendlyName": "cloud1", + "recoveryFabricFriendlyName": "Microsoft Azure", + "recoveryFabricId": "Microsoft Azure", + "primaryProtectionContainerFriendlyName": "cloud1", + "recoveryProtectionContainerFriendlyName": "Microsoft Azure", + "protectionState": "PlannedFailoverCommitRequired", + "protectionStateDescription": "Planned failover finished", + "activeLocation": "Recovery", + "testFailoverState": "MarkedForDeletion", + "testFailoverStateDescription": "Cleaning up test environment", + "allowedOperations": [ + "CompleteMigration", + "Commit", + "DisableProtection", + "ChangePit" + ], + "replicationHealth": "Normal", + "policyId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/protectionprofile1", + "policyFriendlyName": "protectionprofile1", + "lastSuccessfulFailoverTime": "2017-04-26T06:37:23.1578655Z", + "lastSuccessfulTestFailoverTime": "2017-04-25T09:57:57.0357829Z", + "currentScenario": { + "scenarioName": "None", + "jobId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/None", + "startTime": "1753-01-01T01:01:01Z" + }, + "failoverRecoveryPointId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b/recoveryPoints/b22134ea-620c-474b-9fa5-3c1cb47708e3", + "providerSpecificDetails": { + "instanceType": "HyperVReplicaAzure" + }, + "recoveryContainerId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/d49858f157601230a6ac5862fbbc6e63bf38d23ecd96cf953767945d457fe9d5/replicationProtectionContainers/d38048d4-b460-4791-8ece-108395ee8478" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_Purge.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_Purge.json new file mode 100644 index 000000000000..ab599cac3dc9 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_Purge.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "replicatedProtectedItemName": "c0c14913-3d7a-48ea-9531-cc99e0e686e6", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_RemoveDisks.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_RemoveDisks.json new file mode 100644 index 000000000000..71242abf5556 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_RemoveDisks.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "replicatedProtectedItemName": "f8491e4f-817a-40dd-a90c-af773978c75b", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "removeDisksInput": { + "properties": { + "providerSpecificDetails": { + "instanceType": "A2A", + "vmDisksUris": [ + "https://vmstorage.blob.core.windows.net/vhds/datadisk1.vhd" + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "name": "f8491e4f-817a-40dd-a90c-af773978c75b", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems", + "properties": { + "friendlyName": "f8491e4f-817a-40dd-a90c-af773978c75b", + "protectedItemType": "", + "protectableItemId": null, + "recoveryServicesProviderId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationRecoveryServicesProviders/6d2940f9-4c34-5989-9f56-1243a6e76ecf", + "primaryFabricFriendlyName": "cloud1", + "primaryFabricProvider": "AzureFabric", + "recoveryFabricFriendlyName": "cloud2", + "recoveryFabricId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud2", + "primaryProtectionContainerFriendlyName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "recoveryProtectionContainerFriendlyName": "cloud_81224fc6-f326-5d35-96de-fbf51efb3188", + "protectionState": "Protected", + "protectionStateDescription": "Protected", + "activeLocation": "Primary", + "testFailoverState": "None", + "testFailoverStateDescription": "None", + "allowedOperations": [ + "RepairReplication", + "UnplannedFailover", + "DisableProtection", + "TestFailover" + ], + "replicationHealth": "Normal", + "failoverHealth": "Normal", + "healthErrors": [], + "policyId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/A2APolicy", + "policyFriendlyName": "A2APolicy", + "currentScenario": { + "scenarioName": "None", + "jobId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/None", + "startTime": "1752-12-31T19:31:01Z" + }, + "failoverRecoveryPointId": null, + "providerSpecificDetails": { + "instanceType": "A2A" + }, + "recoveryContainerId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud2/replicationProtectionContainers/cloud_81224fc6-f326-5d35-96de-fbf51efb3188" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_RepairReplication.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_RepairReplication.json new file mode 100644 index 000000000000..94e18715a2dc --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_RepairReplication.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "replicatedProtectedItemName": "f8491e4f-817a-40dd-a90c-af773978c75b", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "name": "f8491e4f-817a-40dd-a90c-af773978c75b", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems", + "properties": { + "friendlyName": "vm1", + "protectedItemType": "HyperVVirtualMachine", + "protectableItemId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectableItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "recoveryServicesProviderId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationRecoveryServicesProviders/241641e6-ee7b-4ee4-8141-821fadda43fa", + "primaryFabricFriendlyName": "cloud1", + "recoveryFabricFriendlyName": "Microsoft Azure", + "recoveryFabricId": "Microsoft Azure", + "primaryProtectionContainerFriendlyName": "cloud1", + "recoveryProtectionContainerFriendlyName": "Microsoft Azure", + "protectionState": "Protected", + "protectionStateDescription": "Protected", + "activeLocation": "Primary", + "testFailoverState": "None", + "testFailoverStateDescription": "None", + "allowedOperations": [ + "PlannedFailover", + "UnplannedFailover", + "DisableProtection", + "TestFailover" + ], + "replicationHealth": "Normal", + "policyId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/protectionprofile1", + "policyFriendlyName": "protectionprofile1", + "currentScenario": { + "scenarioName": "None", + "jobId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/None", + "startTime": "1753-01-01T01:01:01Z" + }, + "providerSpecificDetails": { + "instanceType": "HyperVReplicaAzure" + }, + "recoveryContainerId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/d49858f157601230a6ac5862fbbc6e63bf38d23ecd96cf953767945d457fe9d5/replicationProtectionContainers/d38048d4-b460-4791-8ece-108395ee8478" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_Reprotect.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_Reprotect.json new file mode 100644 index 000000000000..d69f6dab853e --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_Reprotect.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "replicatedProtectedItemName": "f8491e4f-817a-40dd-a90c-af773978c75b", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "reprotectInput": { + "properties": { + "failoverDirection": "PrimaryToRecovery", + "providerSpecificDetails": { + "instanceType": "HyperVReplicaAzure" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "name": "f8491e4f-817a-40dd-a90c-af773978c75b", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems", + "properties": { + "friendlyName": "vm1", + "protectedItemType": "HyperVVirtualMachine", + "protectableItemId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectableItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "recoveryServicesProviderId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationRecoveryServicesProviders/241641e6-ee7b-4ee4-8141-821fadda43fa", + "primaryFabricFriendlyName": "cloud1", + "recoveryFabricFriendlyName": "Microsoft Azure", + "recoveryFabricId": "Microsoft Azure", + "primaryProtectionContainerFriendlyName": "cloud1", + "recoveryProtectionContainerFriendlyName": "Microsoft Azure", + "protectionState": "Protected", + "protectionStateDescription": "Protected", + "activeLocation": "Primary", + "testFailoverState": "MarkedForDeletion", + "testFailoverStateDescription": "Cleaning up test environment", + "allowedOperations": [ + "PlannedFailover", + "UnplannedFailover", + "DisableProtection", + "TestFailover" + ], + "replicationHealth": "Normal", + "policyId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/protectionprofile1", + "policyFriendlyName": "protectionprofile1", + "lastSuccessfulFailoverTime": "2017-04-26T06:37:23.1578655Z", + "lastSuccessfulTestFailoverTime": "2017-04-25T09:57:57.0357829Z", + "currentScenario": { + "scenarioName": "None", + "jobId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/None", + "startTime": "1753-01-01T01:01:01Z" + }, + "failoverRecoveryPointId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b/recoveryPoints/b22134ea-620c-474b-9fa5-3c1cb47708e3", + "providerSpecificDetails": { + "instanceType": "HyperVReplicaAzure" + }, + "recoveryContainerId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/d49858f157601230a6ac5862fbbc6e63bf38d23ecd96cf953767945d457fe9d5/replicationProtectionContainers/d38048d4-b460-4791-8ece-108395ee8478" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_ResolveHealthErrors.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_ResolveHealthErrors.json new file mode 100644 index 000000000000..1918986d8569 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_ResolveHealthErrors.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "replicatedProtectedItemName": "f8491e4f-817a-40dd-a90c-af773978c75b", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "resolveHealthInput": { + "properties": { + "healthErrors": [ + { + "healthErrorId": "3:8020" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "name": "f8491e4f-817a-40dd-a90c-af773978c75b", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems", + "properties": { + "friendlyName": "f8491e4f-817a-40dd-a90c-af773978c75b", + "protectedItemType": "", + "protectableItemId": null, + "recoveryServicesProviderId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationRecoveryServicesProviders/6d2940f9-4c34-5989-9f56-1243a6e76ecf", + "primaryFabricFriendlyName": "cloud1", + "primaryFabricProvider": "AzureFabric", + "recoveryFabricFriendlyName": "cloud2", + "recoveryFabricId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud2", + "primaryProtectionContainerFriendlyName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "recoveryProtectionContainerFriendlyName": "cloud_81224fc6-f326-5d35-96de-fbf51efb3188", + "protectionState": "Protected", + "protectionStateDescription": "Protected", + "activeLocation": "Primary", + "testFailoverState": "None", + "testFailoverStateDescription": "None", + "allowedOperations": [ + "RepairReplication", + "UnplannedFailover", + "DisableProtection", + "TestFailover" + ], + "replicationHealth": "Normal", + "failoverHealth": "Normal", + "healthErrors": [], + "policyId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/A2APolicy", + "policyFriendlyName": "A2APolicy", + "currentScenario": { + "scenarioName": "None", + "jobId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/None", + "startTime": "1752-12-31T19:31:01Z" + }, + "failoverRecoveryPointId": null, + "providerSpecificDetails": { + "instanceType": "A2A" + }, + "recoveryContainerId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud2/replicationProtectionContainers/cloud_81224fc6-f326-5d35-96de-fbf51efb3188" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_TestFailover.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_TestFailover.json new file mode 100644 index 000000000000..79850c137e57 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_TestFailover.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "replicatedProtectedItemName": "f8491e4f-817a-40dd-a90c-af773978c75b", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "testfailoverInput": { + "properties": { + "failoverDirection": "PrimaryToRecovery", + "networkType": "VmNetworkAsInput", + "networkId": "/subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/siterecoveryProd1/providers/Microsoft.Network/virtualNetworks/vnetavrai", + "providerSpecificDetails": { + "instanceType": "HyperVReplicaAzure" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "name": "f8491e4f-817a-40dd-a90c-af773978c75b", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems", + "properties": { + "friendlyName": "vm1", + "protectedItemType": "HyperVVirtualMachine", + "protectableItemId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectableItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "recoveryServicesProviderId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationRecoveryServicesProviders/241641e6-ee7b-4ee4-8141-821fadda43fa", + "primaryFabricFriendlyName": "cloud1", + "recoveryFabricFriendlyName": "Microsoft Azure", + "recoveryFabricId": "Microsoft Azure", + "primaryProtectionContainerFriendlyName": "cloud1", + "recoveryProtectionContainerFriendlyName": "Microsoft Azure", + "protectionState": "Protected", + "protectionStateDescription": "Cleanup test failover pending", + "activeLocation": "Primary", + "testFailoverState": "WaitingForCompletion", + "testFailoverStateDescription": "Waiting for user input", + "allowedOperations": [ + "TestFailoverCleanup" + ], + "replicationHealth": "Normal", + "policyId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/protectionprofile1", + "policyFriendlyName": "protectionprofile1", + "currentScenario": { + "scenarioName": "TestFailover", + "jobId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/2838f9b4-2609-4f76-a7e9-07e6387c5e98", + "startTime": "2017-04-25T09:57:57.0357829Z" + }, + "failoverRecoveryPointId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b/recoveryPoints/0689d0d0-3518-4793-8c98-c26bf94526f6", + "providerSpecificDetails": { + "instanceType": "HyperVReplicaAzure" + }, + "recoveryContainerId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/d49858f157601230a6ac5862fbbc6e63bf38d23ecd96cf953767945d457fe9d5/replicationProtectionContainers/d38048d4-b460-4791-8ece-108395ee8478" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_TestFailoverCleanup.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_TestFailoverCleanup.json new file mode 100644 index 000000000000..8f057db6b0b8 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_TestFailoverCleanup.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "replicatedProtectedItemName": "f8491e4f-817a-40dd-a90c-af773978c75b", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "cleanupInput": { + "properties": { + "comments": "Test Failover Cleanup" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "name": "f8491e4f-817a-40dd-a90c-af773978c75b", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems", + "properties": { + "friendlyName": "vm1", + "protectedItemType": "HyperVVirtualMachine", + "protectableItemId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectableItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "recoveryServicesProviderId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationRecoveryServicesProviders/241641e6-ee7b-4ee4-8141-821fadda43fa", + "primaryFabricFriendlyName": "cloud1", + "recoveryFabricFriendlyName": "Microsoft Azure", + "recoveryFabricId": "Microsoft Azure", + "primaryProtectionContainerFriendlyName": "cloud1", + "recoveryProtectionContainerFriendlyName": "Microsoft Azure", + "protectionState": "Protected", + "protectionStateDescription": "Protected", + "activeLocation": "Primary", + "testFailoverState": "MarkedForDeletion", + "testFailoverStateDescription": "Cleaning up test environment", + "allowedOperations": [ + "PlannedFailover", + "UnplannedFailover", + "DisableProtection", + "TestFailover" + ], + "replicationHealth": "Normal", + "policyId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/protectionprofile1", + "policyFriendlyName": "protectionprofile1", + "lastSuccessfulFailoverTime": "2017-04-26T06:37:23.1578655Z", + "lastSuccessfulTestFailoverTime": "2017-04-25T09:57:57.0357829Z", + "currentScenario": { + "scenarioName": "None", + "jobId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/None", + "startTime": "1753-01-01T01:01:01Z" + }, + "failoverRecoveryPointId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b/recoveryPoints/b22134ea-620c-474b-9fa5-3c1cb47708e3", + "providerSpecificDetails": { + "instanceType": "HyperVReplicaAzure" + }, + "recoveryContainerId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/d49858f157601230a6ac5862fbbc6e63bf38d23ecd96cf953767945d457fe9d5/replicationProtectionContainers/d38048d4-b460-4791-8ece-108395ee8478" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_UnplannedFailover.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_UnplannedFailover.json new file mode 100644 index 000000000000..aef2ab82dfa7 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_UnplannedFailover.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "replicatedProtectedItemName": "f8491e4f-817a-40dd-a90c-af773978c75b", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "failoverInput": { + "properties": { + "failoverDirection": "PrimaryToRecovery", + "sourceSiteOperations": "NotRequired", + "providerSpecificDetails": { + "instanceType": "HyperVReplicaAzure" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "name": "f8491e4f-817a-40dd-a90c-af773978c75b", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems", + "properties": { + "friendlyName": "vm1", + "protectedItemType": "HyperVVirtualMachine", + "protectableItemId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectableItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "recoveryServicesProviderId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationRecoveryServicesProviders/241641e6-ee7b-4ee4-8141-821fadda43fa", + "primaryFabricFriendlyName": "cloud1", + "recoveryFabricFriendlyName": "Microsoft Azure", + "recoveryFabricId": "Microsoft Azure", + "primaryProtectionContainerFriendlyName": "cloud1", + "recoveryProtectionContainerFriendlyName": "Microsoft Azure", + "protectionState": "UnplannedFailoverCommitPendingStatesBegin", + "protectionStateDescription": "Failover completed", + "activeLocation": "Recovery", + "testFailoverState": "MarkedForDeletion", + "testFailoverStateDescription": "Cleaning up test environment", + "allowedOperations": [ + "CompleteMigration", + "Commit", + "DisableProtection", + "ChangePit" + ], + "replicationHealth": "Normal", + "policyId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/protectionprofile1", + "policyFriendlyName": "protectionprofile1", + "lastSuccessfulFailoverTime": "2017-04-26T08:42:33.0996129Z", + "lastSuccessfulTestFailoverTime": "2017-04-25T09:57:57.0357829Z", + "currentScenario": { + "scenarioName": "None", + "jobId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/None", + "startTime": "1753-01-01T01:01:01Z" + }, + "failoverRecoveryPointId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b/recoveryPoints/b2c7b208-0999-40a4-804f-8ee1019c8f76", + "providerSpecificDetails": { + "instanceType": "HyperVReplicaAzure" + }, + "recoveryContainerId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/d49858f157601230a6ac5862fbbc6e63bf38d23ecd96cf953767945d457fe9d5/replicationProtectionContainers/d38048d4-b460-4791-8ece-108395ee8478" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_Update.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_Update.json new file mode 100644 index 000000000000..b3c6c0659a8a --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_Update.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "replicatedProtectedItemName": "f8491e4f-817a-40dd-a90c-af773978c75b", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "updateProtectionInput": { + "properties": { + "recoveryAzureVMName": "vm1", + "recoveryAzureVMSize": "Basic_A0", + "selectedRecoveryAzureNetworkId": "/subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/siterecoveryProd1/providers/Microsoft.Network/virtualNetworks/vnetavrai", + "vmNics": [ + { + "nicId": "TWljcm9zb2Z0OkY4NDkxRTRGLTgxN0EtNDBERC1BOTBDLUFGNzczOTc4Qzc1Qlw3NjAwMzMxRS03NDk4LTQ0QTQtQjdDNy0xQjY1NkJDREQ1MkQ=", + "selectionType": "SelectedByUser", + "ipConfigs": [ + { + "ipConfigName": "ipconfig1", + "isPrimary": true, + "recoverySubnetName": "subnet1", + "recoveryStaticIPAddress": "10.0.2.46" + } + ] + } + ], + "licenseType": "WindowsServer", + "providerSpecificDetails": { + "instanceType": "HyperVReplicaAzure" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "name": "f8491e4f-817a-40dd-a90c-af773978c75b", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems", + "properties": { + "friendlyName": "vm1", + "protectedItemType": "HyperVVirtualMachine", + "protectableItemId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectableItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "recoveryServicesProviderId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationRecoveryServicesProviders/241641e6-ee7b-4ee4-8141-821fadda43fa", + "primaryFabricFriendlyName": "cloud1", + "recoveryFabricFriendlyName": "Microsoft Azure", + "recoveryFabricId": "Microsoft Azure", + "primaryProtectionContainerFriendlyName": "cloud1", + "recoveryProtectionContainerFriendlyName": "Microsoft Azure", + "protectionState": "Protected", + "protectionStateDescription": "Protected", + "activeLocation": "Primary", + "testFailoverState": "None", + "testFailoverStateDescription": "None", + "allowedOperations": [ + "PlannedFailover", + "UnplannedFailover", + "DisableProtection", + "TestFailover" + ], + "replicationHealth": "Normal", + "policyId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/protectionprofile1", + "policyFriendlyName": "protectionprofile1", + "currentScenario": { + "scenarioName": "None", + "jobId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/None", + "startTime": "1753-01-01T01:01:01Z" + }, + "providerSpecificDetails": { + "instanceType": "HyperVReplicaAzure" + }, + "recoveryContainerId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/d49858f157601230a6ac5862fbbc6e63bf38d23ecd96cf953767945d457fe9d5/replicationProtectionContainers/d38048d4-b460-4791-8ece-108395ee8478" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_UpdateMobilityService.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_UpdateMobilityService.json new file mode 100644 index 000000000000..c86c56720177 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectedItems_UpdateMobilityService.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "replicationProtectedItemName": "79dd20ab-2b40-11e7-9791-0050568f387e", + "protectionContainerName": "cloud_c6780228-83bd-4f3e-a70e-cb46b7da33a0", + "fabricName": "WIN-JKKJ31QI8U2", + "resourceName": "WCUSVault", + "resourceGroupName": "wcusValidations", + "subscriptionId": "b364ed8d-4279-4bf8-8fd1-56f8fa0ae05c", + "updateMobilityServiceRequest": { + "properties": { + "runAsAccountId": "2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "79dd20ab-2b40-11e7-9791-0050568f387e", + "id": "/Subscriptions/b364ed8d-4279-4bf8-8fd1-56f8fa0ae05c/resourceGroups/wcusValidations/providers/Microsoft.RecoveryServices/vaults/WCUSVault/replicationFabrics/d70b0326a201008a953505ef271dc908e5e23468bc7356862ea178696f5f15c7/replicationProtectionContainers/cloud_c6780228-83bd-4f3e-a70e-cb46b7da33a0/replicationProtectedItems/79dd20ab-2b40-11e7-9791-0050568f387e", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems", + "properties": { + "friendlyName": "MMR-LIN-V2A-3", + "protectedItemType": "", + "protectableItemId": "/Subscriptions/b364ed8d-4279-4bf8-8fd1-56f8fa0ae05c/resourceGroups/wcusValidations/providers/Microsoft.RecoveryServices/vaults/WCUSVault/replicationFabrics/d70b0326a201008a953505ef271dc908e5e23468bc7356862ea178696f5f15c7/replicationProtectionContainers/cloud_c6780228-83bd-4f3e-a70e-cb46b7da33a0/replicationProtectableItems/79dd20ab-2b40-11e7-9791-0050568f387e", + "recoveryServicesProviderId": "/Subscriptions/b364ed8d-4279-4bf8-8fd1-56f8fa0ae05c/resourceGroups/wcusValidations/providers/Microsoft.RecoveryServices/vaults/WCUSVault/replicationFabrics/d70b0326a201008a953505ef271dc908e5e23468bc7356862ea178696f5f15c7/replicationRecoveryServicesProviders/c6780228-83bd-4f3e-a70e-cb46b7da33a0", + "primaryFabricFriendlyName": "WIN-JKKJ31QI8U2", + "recoveryFabricFriendlyName": "Microsoft Azure", + "recoveryFabricId": "Microsoft Azure", + "primaryProtectionContainerFriendlyName": "WIN-JKKJ31QI8U2", + "recoveryProtectionContainerFriendlyName": "Microsoft Azure", + "protectionState": "Protected", + "protectionStateDescription": "Protected", + "activeLocation": "Primary", + "testFailoverState": "None", + "testFailoverStateDescription": "None", + "allowedOperations": [ + "UnplannedFailover", + "DisableProtection", + "TestFailover" + ], + "replicationHealth": "Normal", + "policyId": "/Subscriptions/b364ed8d-4279-4bf8-8fd1-56f8fa0ae05c/resourceGroups/wcusValidations/providers/Microsoft.RecoveryServices/vaults/WCUSVault/replicationPolicies/MadhaviPolicyNew", + "policyFriendlyName": "MadhaviPolicyNew", + "currentScenario": { + "scenarioName": "None", + "jobId": "/Subscriptions/b364ed8d-4279-4bf8-8fd1-56f8fa0ae05c/resourceGroups/wcusValidations/providers/Microsoft.RecoveryServices/vaults/WCUSVault/replicationJobs/None", + "startTime": "1753-01-01T01:01:01Z" + }, + "providerSpecificDetails": { + "instanceType": "InMageAzureV2" + }, + "recoveryContainerId": "/Subscriptions/b364ed8d-4279-4bf8-8fd1-56f8fa0ae05c/resourceGroups/wcusValidations/providers/Microsoft.RecoveryServices/vaults/WCUSVault/replicationFabrics/d49858f157601230a6ac5862fbbc6e63bf38d23ecd96cf953767945d457fe9d5/replicationProtectionContainers/d38048d4-b460-4791-8ece-108395ee8478" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectionContainerMappings_Create.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectionContainerMappings_Create.json new file mode 100644 index 000000000000..b5ab54507ef3 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectionContainerMappings_Create.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "mappingName": "cloud1protectionprofile1", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "creationInput": { + "properties": { + "targetProtectionContainerId": "Microsoft Azure", + "policyId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/protectionprofile1", + "providerSpecificInput": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectionContainerMappings/cloud1protectionprofile1", + "name": "cloud1protectionprofile1", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectionContainerMappings", + "properties": { + "targetProtectionContainerId": "Microsoft Azure", + "targetProtectionContainerFriendlyName": "Microsoft Azure", + "health": "Normal", + "healthErrorDetails": [], + "policyId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/protectionprofile1", + "state": "Paired", + "sourceProtectionContainerFriendlyName": "cloud1", + "sourceFabricFriendlyName": "cloud1", + "targetFabricFriendlyName": "Microsoft Azure", + "policyFriendlyName": "protectionprofile1" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectionContainerMappings_Delete.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectionContainerMappings_Delete.json new file mode 100644 index 000000000000..7708dfd983df --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectionContainerMappings_Delete.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "mappingName": "cloud1protectionprofile1", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "removalInput": { + "properties": { + "providerSpecificInput": {} + } + } + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectionContainerMappings_Get.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectionContainerMappings_Get.json new file mode 100644 index 000000000000..e0655d94c638 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectionContainerMappings_Get.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "mappingName": "cloud1protectionprofile1", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectionContainerMappings/cloud1protectionprofile1", + "name": "cloud1protectionprofile1", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectionContainerMappings", + "properties": { + "targetProtectionContainerId": "Microsoft Azure", + "targetProtectionContainerFriendlyName": "Microsoft Azure", + "health": "Normal", + "healthErrorDetails": [], + "policyId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/protectionprofile1", + "state": "Paired", + "sourceProtectionContainerFriendlyName": "cloud1", + "sourceFabricFriendlyName": "cloud1", + "targetFabricFriendlyName": "Microsoft Azure", + "policyFriendlyName": "protectionprofile1" + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectionContainerMappings_List.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectionContainerMappings_List.json new file mode 100644 index 000000000000..3501d6e4e512 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectionContainerMappings_List.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectionContainerMappings/cloud1protectionprofile1", + "name": "cloud1protectionprofile1", + "type": "Microsoft.RecoveryServices/vaults/replicationProtectionContainerMappings", + "properties": { + "targetProtectionContainerId": "Microsoft Azure", + "targetProtectionContainerFriendlyName": "Microsoft Azure", + "health": "Normal", + "healthErrorDetails": [], + "policyId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/protectionprofile1", + "state": "Paired", + "sourceProtectionContainerFriendlyName": "cloud1", + "sourceFabricFriendlyName": "cloud1", + "targetFabricFriendlyName": "Microsoft Azure", + "policyFriendlyName": "protectionprofile1" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectionContainerMappings_ListByReplicationProtectionContainers.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectionContainerMappings_ListByReplicationProtectionContainers.json new file mode 100644 index 000000000000..448c47fee170 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectionContainerMappings_ListByReplicationProtectionContainers.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectionContainerMappings/cloud1protectionprofile1", + "name": "cloud1protectionprofile1", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectionContainerMappings", + "properties": { + "targetProtectionContainerId": "Microsoft Azure", + "targetProtectionContainerFriendlyName": "Microsoft Azure", + "health": "Normal", + "healthErrorDetails": [], + "policyId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/protectionprofile1", + "state": "Paired", + "sourceProtectionContainerFriendlyName": "cloud1", + "sourceFabricFriendlyName": "cloud1", + "targetFabricFriendlyName": "Microsoft Azure", + "policyFriendlyName": "protectionprofile1" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectionContainerMappings_Purge.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectionContainerMappings_Purge.json new file mode 100644 index 000000000000..25c643d1e75d --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectionContainerMappings_Purge.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "mappingName": "cloud1protectionprofile1", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectionContainerMappings_Update.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectionContainerMappings_Update.json new file mode 100644 index 000000000000..05d90a380eae --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectionContainerMappings_Update.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "mappingName": "cloud1protectionprofile1", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "updateInput": { + "properties": { + "providerSpecificInput": { + "instanceType": "A2A", + "agentAutoUpdateStatus": "Enabled", + "automationAccountArmId": "/subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/automationrg1/providers/Microsoft.Automation/automationAccounts/automationaccount1" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectionContainerMappings/cloud1protectionprofile1", + "name": "cloud1protectionprofile1", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectionContainerMappings", + "properties": { + "targetProtectionContainerId": "Microsoft Azure", + "targetProtectionContainerFriendlyName": "Microsoft Azure", + "health": "Normal", + "healthErrorDetails": [], + "policyId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/protectionprofile1", + "state": "Paired", + "sourceProtectionContainerFriendlyName": "cloud1", + "sourceFabricFriendlyName": "cloud1", + "targetFabricFriendlyName": "Microsoft Azure", + "policyFriendlyName": "protectionprofile1", + "providerSpecificDetails": { + "instanceType": "A2A", + "agentAutoUpdateStatus": "Enabled", + "automationAccountArmId": "/subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/automationrg1/providers/Microsoft.Automation/automationAccounts/automationaccount1", + "scheduleName": "cloud1protectionprofile1_a85ea38f-62a8-471b-93cc-69b74fd9578c", + "jobScheduleName": "ffd503ec-5f88-4b58-97c8-841466e7aa47" + } + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectionContainers_Create.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectionContainers_Create.json new file mode 100644 index 000000000000..d017c347aa30 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectionContainers_Create.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "creationInput": { + "properties": { + "providerSpecificInput": [ + { + "instanceType": "ReplicationProviderSpecificContainerCreationInput" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "name": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers", + "properties": { + "fabricFriendlyName": "cloud1", + "friendlyName": "cloud1", + "fabricType": "HyperVSite", + "protectedItemCount": 0, + "pairingStatus": "NotPaired", + "role": "" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectionContainers_Delete.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectionContainers_Delete.json new file mode 100644 index 000000000000..8c93dfd9e479 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectionContainers_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectionContainers_DiscoverProtectableItem.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectionContainers_DiscoverProtectableItem.json new file mode 100644 index 000000000000..eed4ab7d0059 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectionContainers_DiscoverProtectableItem.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "protectionContainerName": "cloud_7328549c-5c37-4459-a3c2-e35f9ef6893c", + "fabricName": "V2A-W2K12-660", + "resourceName": "MadhaviVault", + "resourceGroupName": "MadhaviVRG", + "subscriptionId": "7c943c1b-5122-4097-90c8-861411bdd574", + "discoverProtectableItemRequest": { + "properties": { + "friendlyName": "Test", + "ipAddress": "10.150.2.3", + "osType": "Windows" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/MadhaviVRG/providers/Microsoft.RecoveryServices/vaults/MadhaviVault/replicationFabrics/239f778f368e34f78216d81f030725cdf2033174b47879b9f2eeede06fdd9c4d/replicationProtectionContainers/cloud_7328549c-5c37-4459-a3c2-e35f9ef6893c", + "name": "cloud_7328549c-5c37-4459-a3c2-e35f9ef6893c", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers", + "properties": { + "fabricFriendlyName": "V2A-W2K12-660", + "friendlyName": "V2A-W2K12-660", + "fabricType": "VMware", + "protectedItemCount": 2, + "pairingStatus": "Paired", + "role": "Primary" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectionContainers_Get.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectionContainers_Get.json new file mode 100644 index 000000000000..71507b8f0e9f --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectionContainers_Get.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "name": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers", + "properties": { + "fabricFriendlyName": "cloud1", + "friendlyName": "cloud1", + "fabricType": "HyperVSite", + "protectedItemCount": 0, + "pairingStatus": "NotPaired", + "role": "" + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectionContainers_List.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectionContainers_List.json new file mode 100644 index 000000000000..f8b9e065099a --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectionContainers_List.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "name": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "type": "Microsoft.RecoveryServices/vaults/replicationProtectionContainers", + "properties": { + "fabricFriendlyName": "cloud1", + "friendlyName": "cloud1", + "fabricType": "HyperVSite", + "protectedItemCount": 0, + "pairingStatus": "NotPaired", + "role": "" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectionContainers_ListByReplicationFabrics.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectionContainers_ListByReplicationFabrics.json new file mode 100644 index 000000000000..a62e2b2c7deb --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectionContainers_ListByReplicationFabrics.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "fabricName": "cloud1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "name": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers", + "properties": { + "fabricFriendlyName": "cloud1", + "friendlyName": "cloud1", + "fabricType": "HyperVSite", + "protectedItemCount": 0, + "pairingStatus": "NotPaired", + "role": "" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectionContainers_SwitchProtection.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectionContainers_SwitchProtection.json new file mode 100644 index 000000000000..4b23ea6ac551 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectionContainers_SwitchProtection.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "protectionContainerName": "CentralUSCancloud", + "fabricName": "CentralUSCanSite", + "resourceName": "priyanponeboxvault", + "resourceGroupName": "priyanprg", + "subscriptionId": "42195872-7e70-4f8a-837f-84b28ecbb78b", + "switchInput": { + "properties": { + "replicationProtectedItemName": "a2aSwapOsVm", + "providerSpecificDetails": { + "instanceType": "A2A" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/42195872-7e70-4f8a-837f-84b28ecbb78b/resourceGroups/priyanprg/providers/Microsoft.RecoveryServices/vaults/priyanponeboxvault/replicationFabrics/EUSCanSite/replicationProtectionContainers/euscancloud", + "name": "euscancloud", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers", + "properties": { + "fabricFriendlyName": "East US 2 EUAP", + "friendlyName": "euscancloud", + "fabricType": "Azure", + "protectedItemCount": 0, + "pairingStatus": "Paired", + "role": "Primary" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectionIntents_Create.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectionIntents_Create.json new file mode 100644 index 000000000000..1236a844c6cb --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectionIntents_Create.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "intentObjectName": "vm1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "509099b2-9d2c-4636-b43e-bd5cafb6be69", + "input": { + "properties": { + "providerSpecificDetails": { + "instanceType": "A2A", + "fabricObjectId": "/subscriptions/509099b2-9d2c-4636-b43e-bd5cafb6be69/resourceGroups/removeOne/providers/Microsoft.Compute/virtualMachines/vmPpgAv5", + "primaryLocation": "eastUs2", + "recoveryLocation": "westus2", + "recoverySubscriptionId": "ed5bcdf6-d61e-47bd-8ea9-f2bd379a2640", + "recoveryAvailabilityType": "Single", + "recoveryResourceGroupId": "/subscriptions/509099b2-9d2c-4636-b43e-bd5cafb6be69/resourceGroups/removeOne-asr" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/509099b2-9d2c-4636-b43e-bd5cafb6be69/resourceGroups/2007vttp/providers/Microsoft.RecoveryServices/vaults/tp2007vt/replicationProtectionIntents/vm1", + "name": "vm1", + "type": "Microsoft.RecoveryServices/vaults/replicationProtectionIntents", + "properties": { + "friendlyName": "vm1", + "jobId": "/Subscriptions/d90d145a-4cdd-45a3-b2c4-971d69775278/resourceGroups/a2acl-rg-vault-prod-gip-ccy/providers/Microsoft.RecoveryServices/vaults/a2acl-vault-prod-gip-ccy/replicationJobs/02004ea7-d498-4bb4-bdeb-cdb611706867", + "jobState": "InProgress", + "providerSpecificDetails": { + "instanceType": "A2A", + "recoveryAvailabilityType": "Single" + } + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectionIntents_Get.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectionIntents_Get.json new file mode 100644 index 000000000000..ab3d04c010aa --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectionIntents_Get.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "intentObjectName": "vm1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "509099b2-9d2c-4636-b43e-bd5cafb6be69" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/509099b2-9d2c-4636-b43e-bd5cafb6be69/resourceGroups/2007vttp/providers/Microsoft.RecoveryServices/vaults/tp2007vt/replicationProtectionIntents/vm1", + "name": "vm1", + "type": "Microsoft.RecoveryServices/vaults/replicationProtectionIntents", + "properties": { + "friendlyName": "vm1", + "jobId": "/Subscriptions/d90d145a-4cdd-45a3-b2c4-971d69775278/resourceGroups/a2acl-rg-vault-prod-gip-ccy/providers/Microsoft.RecoveryServices/vaults/a2acl-vault-prod-gip-ccy/replicationJobs/02004ea7-d498-4bb4-bdeb-cdb611706867", + "jobState": "InProgress", + "providerSpecificDetails": { + "instanceType": "A2A", + "fabricObjectId": "/subscriptions/509099b2-9d2c-4636-b43e-bd5cafb6be69/resourceGroups/removeOne/providers/Microsoft.Compute/virtualMachines/vmPpgAv5", + "primaryLocation": "eastUs2", + "recoveryLocation": "westus2", + "recoverySubscriptionId": "ed5bcdf6-d61e-47bd-8ea9-f2bd379a2640", + "recoveryAvailabilityType": "Single" + } + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectionIntents_List.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectionIntents_List.json new file mode 100644 index 000000000000..3a15af78c5d7 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationProtectionIntents_List.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "resourceName": "2007vttp", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "509099b2-9d2c-4636-b43e-bd5cafb6be69" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/509099b2-9d2c-4636-b43e-bd5cafb6be69/resourceGroups/2007vttp/providers/Microsoft.RecoveryServices/vaults/tp2007vt/replicationProtectionIntents/vm1", + "name": "vm1", + "type": "Microsoft.RecoveryServices/vaults/replicationProtectionIntents", + "properties": { + "friendlyName": "vm1", + "jobId": "/Subscriptions/d90d145a-4cdd-45a3-b2c4-971d69775278/resourceGroups/a2acl-rg-vault-prod-gip-ccy/providers/Microsoft.RecoveryServices/vaults/a2acl-vault-prod-gip-ccy/replicationJobs/02004ea7-d498-4bb4-bdeb-cdb611706867", + "jobState": "InProgress", + "providerSpecificDetails": { + "instanceType": "A2A", + "fabricObjectId": "/subscriptions/509099b2-9d2c-4636-b43e-bd5cafb6be69/resourceGroups/removeOne/providers/Microsoft.Compute/virtualMachines/vmPpgAv5", + "primaryLocation": "eastUs2", + "recoveryLocation": "westus2", + "recoverySubscriptionId": "ed5bcdf6-d61e-47bd-8ea9-f2bd379a2640", + "recoveryAvailabilityType": "Single" + } + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryPlans_Create.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryPlans_Create.json new file mode 100644 index 000000000000..ce9867044197 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryPlans_Create.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "recoveryPlanName": "RPtest1", + "input": { + "properties": { + "primaryFabricId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1", + "recoveryFabricId": "Microsoft Azure", + "failoverDeploymentModel": "ResourceManager", + "groups": [ + { + "groupType": "Boot", + "replicationProtectedItems": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "virtualMachineId": "f8491e4f-817a-40dd-a90c-af773978c75b" + } + ], + "startGroupActions": [], + "endGroupActions": [] + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationRecoveryPlans/RPtest1", + "name": "RPtest1", + "type": "Microsoft.RecoveryServices/vaults/replicationRecoveryPlans", + "properties": { + "friendlyName": "RPtest1", + "primaryFabricId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1", + "primaryFabricFriendlyName": "cloud1", + "recoveryFabricId": "Microsoft Azure", + "recoveryFabricFriendlyName": "Microsoft Azure", + "failoverDeploymentModel": "ResourceManager", + "replicationProviders": [ + "HyperVReplicaAzure" + ], + "allowedOperations": [ + "PlannedFailover", + "UnplannedFailover", + "TestFailover" + ], + "groups": [ + { + "groupType": "Shutdown", + "replicationProtectedItems": [], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Failover", + "replicationProtectedItems": [], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Boot", + "replicationProtectedItems": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "virtualMachineId": "f8491e4f-817a-40dd-a90c-af773978c75b" + } + ], + "startGroupActions": [], + "endGroupActions": [] + } + ] + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryPlans_Delete.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryPlans_Delete.json new file mode 100644 index 000000000000..68fc34971728 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryPlans_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "recoveryPlanName": "RPtest1" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryPlans_FailoverCancel.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryPlans_FailoverCancel.json new file mode 100644 index 000000000000..8025104ea215 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryPlans_FailoverCancel.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "recoveryPlanName": "RPtest1" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationRecoveryPlans/RPtest1", + "name": "RPtest1", + "type": "Microsoft.RecoveryServices/vaults/replicationRecoveryPlans", + "properties": { + "friendlyName": "RPtest1", + "primaryFabricId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1", + "primaryFabricFriendlyName": "cloud1", + "recoveryFabricId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1", + "recoveryFabricFriendlyName": "cloud1", + "failoverDeploymentModel": "ResourceManager", + "replicationProviders": [ + "InMageRcmFailback" + ], + "allowedOperations": [ + "PlannedFailover" + ], + "lastPlannedFailoverTime": "2021-02-24T07:33:49.1372448Z", + "lastTestFailoverTime": "1601-01-01T00:00:00.0000000Z", + "currentScenario": { + "scenarioName": "CancelFailover", + "jobId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/5276a7bc-12a3-43a1-bc53-9bf80e0be87b", + "startTime": "2021-02-24T08:52:42.1587592Z" + }, + "currentScenarioStatus": "Succeeded", + "currentScenarioStatusDescription": "Completed", + "groups": [] + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryPlans_FailoverCommit.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryPlans_FailoverCommit.json new file mode 100644 index 000000000000..0869a7c2a73c --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryPlans_FailoverCommit.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "recoveryPlanName": "RPtest1" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationRecoveryPlans/RPtest1", + "name": "RPtest1", + "type": "Microsoft.RecoveryServices/vaults/replicationRecoveryPlans", + "properties": { + "friendlyName": "RPtest1", + "primaryFabricId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1", + "primaryFabricFriendlyName": "cloud1", + "recoveryFabricId": "Microsoft Azure", + "recoveryFabricFriendlyName": "Microsoft Azure", + "failoverDeploymentModel": "ResourceManager", + "replicationProviders": [ + "HyperVReplicaAzure" + ], + "allowedOperations": [ + "PlannedFailover", + "UnplannedFailover", + "TestFailover" + ], + "lastPlannedFailoverTime": "2017-04-27T07:33:49.1372448Z", + "lastTestFailoverTime": "2017-04-27T07:00:27.8354747Z", + "currentScenario": { + "scenarioName": "CommitFailover", + "jobId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/5276a7bc-12a3-43a1-bc53-9bf80e0be87b", + "startTime": "2017-04-27T08:52:42.1587592Z" + }, + "currentScenarioStatus": "Succeeded", + "currentScenarioStatusDescription": "Completed", + "groups": [ + { + "groupType": "Shutdown", + "replicationProtectedItems": [], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Failover", + "replicationProtectedItems": [], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Boot", + "replicationProtectedItems": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "virtualMachineId": "f8491e4f-817a-40dd-a90c-af773978c75b" + } + ], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Boot", + "replicationProtectedItems": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/c0c14913-3d7a-48ea-9531-cc99e0e686e6", + "virtualMachineId": "c0c14913-3d7a-48ea-9531-cc99e0e686e6" + } + ], + "startGroupActions": [], + "endGroupActions": [] + } + ] + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryPlans_Get.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryPlans_Get.json new file mode 100644 index 000000000000..4af38b663152 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryPlans_Get.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "recoveryPlanName": "RPtest1" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationRecoveryPlans/RPtest1", + "name": "RPtest1", + "type": "Microsoft.RecoveryServices/vaults/replicationRecoveryPlans", + "properties": { + "friendlyName": "RPtest1", + "primaryFabricId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1", + "primaryFabricFriendlyName": "cloud1", + "recoveryFabricId": "Microsoft Azure", + "recoveryFabricFriendlyName": "Microsoft Azure", + "failoverDeploymentModel": "ResourceManager", + "replicationProviders": [ + "HyperVReplicaAzure" + ], + "allowedOperations": [ + "PlannedFailover", + "UnplannedFailover", + "TestFailover" + ], + "groups": [ + { + "groupType": "Shutdown", + "replicationProtectedItems": [], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Failover", + "replicationProtectedItems": [], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Boot", + "replicationProtectedItems": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "virtualMachineId": "f8491e4f-817a-40dd-a90c-af773978c75b" + } + ], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Boot", + "replicationProtectedItems": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/c0c14913-3d7a-48ea-9531-cc99e0e686e6", + "virtualMachineId": "c0c14913-3d7a-48ea-9531-cc99e0e686e6" + } + ], + "startGroupActions": [], + "endGroupActions": [] + } + ] + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryPlans_List.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryPlans_List.json new file mode 100644 index 000000000000..22e90253f9a2 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryPlans_List.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationRecoveryPlans/RPtest1", + "name": "RPtest1", + "type": "Microsoft.RecoveryServices/vaults/replicationRecoveryPlans", + "properties": { + "friendlyName": "RPtest1", + "primaryFabricId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1", + "primaryFabricFriendlyName": "cloud1", + "recoveryFabricId": "Microsoft Azure", + "recoveryFabricFriendlyName": "Microsoft Azure", + "failoverDeploymentModel": "ResourceManager", + "replicationProviders": [ + "HyperVReplicaAzure" + ], + "allowedOperations": [ + "PlannedFailover", + "UnplannedFailover", + "TestFailover" + ], + "groups": [] + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryPlans_PlannedFailover.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryPlans_PlannedFailover.json new file mode 100644 index 000000000000..cf55c5cba9db --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryPlans_PlannedFailover.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "recoveryPlanName": "RPtest1", + "input": { + "properties": { + "failoverDirection": "PrimaryToRecovery", + "providerSpecificDetails": [ + { + "instanceType": "HyperVReplicaAzure" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationRecoveryPlans/RPtest1", + "name": "RPtest1", + "type": "Microsoft.RecoveryServices/vaults/replicationRecoveryPlans", + "properties": { + "friendlyName": "RPtest1", + "primaryFabricId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1", + "primaryFabricFriendlyName": "cloud1", + "recoveryFabricId": "Microsoft Azure", + "recoveryFabricFriendlyName": "Microsoft Azure", + "failoverDeploymentModel": "ResourceManager", + "replicationProviders": [ + "HyperVReplicaAzure" + ], + "allowedOperations": [ + "PlannedFailover", + "UnplannedFailover", + "TestFailover", + "Commit" + ], + "lastPlannedFailoverTime": "2017-04-27T07:33:49.1372448Z", + "lastTestFailoverTime": "2017-04-27T07:00:27.8354747Z", + "currentScenario": { + "scenarioName": "PlannedFailover", + "jobId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/d4821a53-90da-4fcb-bc11-a280d13e3350", + "startTime": "2017-04-27T07:34:02.6176524Z" + }, + "currentScenarioStatus": "Succeeded", + "currentScenarioStatusDescription": "Completed", + "groups": [ + { + "groupType": "Shutdown", + "replicationProtectedItems": [], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Failover", + "replicationProtectedItems": [], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Boot", + "replicationProtectedItems": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "virtualMachineId": "f8491e4f-817a-40dd-a90c-af773978c75b" + } + ], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Boot", + "replicationProtectedItems": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/c0c14913-3d7a-48ea-9531-cc99e0e686e6", + "virtualMachineId": "c0c14913-3d7a-48ea-9531-cc99e0e686e6" + } + ], + "startGroupActions": [], + "endGroupActions": [] + } + ] + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryPlans_Reprotect.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryPlans_Reprotect.json new file mode 100644 index 000000000000..0ef81ecdca0f --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryPlans_Reprotect.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "recoveryPlanName": "RPtest1" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationRecoveryPlans/RPtest1", + "name": "RPtest1", + "type": "Microsoft.RecoveryServices/vaults/replicationRecoveryPlans", + "properties": { + "friendlyName": "RPtest1", + "primaryFabricId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1", + "primaryFabricFriendlyName": "cloud1", + "recoveryFabricId": "Microsoft Azure", + "recoveryFabricFriendlyName": "Microsoft Azure", + "failoverDeploymentModel": "ResourceManager", + "replicationProviders": [ + "HyperVReplicaAzure" + ], + "allowedOperations": [ + "PlannedFailover", + "UnplannedFailover", + "TestFailover" + ], + "lastPlannedFailoverTime": "2017-04-27T08:58:35.9062813Z", + "lastTestFailoverTime": "2017-04-27T07:00:27.8354747Z", + "currentScenario": { + "scenarioName": "ReverseReplication", + "jobId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/edf01dfb-b649-4802-91e4-3d55ce3bebf0", + "startTime": "2017-04-27T09:52:16.9818841Z" + }, + "currentScenarioStatus": "Succeeded", + "currentScenarioStatusDescription": "Completed", + "groups": [ + { + "groupType": "Shutdown", + "replicationProtectedItems": [], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Failover", + "replicationProtectedItems": [], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Boot", + "replicationProtectedItems": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "virtualMachineId": "f8491e4f-817a-40dd-a90c-af773978c75b" + } + ], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Boot", + "replicationProtectedItems": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/c0c14913-3d7a-48ea-9531-cc99e0e686e6", + "virtualMachineId": "c0c14913-3d7a-48ea-9531-cc99e0e686e6" + } + ], + "startGroupActions": [], + "endGroupActions": [] + } + ] + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryPlans_TestFailover.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryPlans_TestFailover.json new file mode 100644 index 000000000000..80248342ec19 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryPlans_TestFailover.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "recoveryPlanName": "RPtest1", + "input": { + "properties": { + "failoverDirection": "PrimaryToRecovery", + "networkType": "VmNetworkAsInput", + "networkId": "/subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/siterecoveryProd1/providers/Microsoft.Network/virtualNetworks/vnetavrai", + "providerSpecificDetails": [ + { + "instanceType": "HyperVReplicaAzure" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationRecoveryPlans/RPtest1", + "name": "RPtest1", + "type": "Microsoft.RecoveryServices/vaults/replicationRecoveryPlans", + "properties": { + "friendlyName": "RPtest1", + "primaryFabricId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1", + "primaryFabricFriendlyName": "cloud1", + "recoveryFabricId": "Microsoft Azure", + "recoveryFabricFriendlyName": "Microsoft Azure", + "failoverDeploymentModel": "ResourceManager", + "replicationProviders": [ + "HyperVReplicaAzure" + ], + "allowedOperations": [ + "TestFailoverCleanup" + ], + "currentScenario": { + "scenarioName": "TestFailover", + "jobId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/d40bfb40-aaaa-4c0d-87d3-41b15439a84b", + "startTime": "2017-04-27T07:00:58.8191916Z" + }, + "currentScenarioStatus": "Suspended", + "currentScenarioStatusDescription": "WaitingForStopTestFailover", + "groups": [ + { + "groupType": "Shutdown", + "replicationProtectedItems": [], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Failover", + "replicationProtectedItems": [], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Boot", + "replicationProtectedItems": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "virtualMachineId": "f8491e4f-817a-40dd-a90c-af773978c75b" + } + ], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Boot", + "replicationProtectedItems": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/c0c14913-3d7a-48ea-9531-cc99e0e686e6", + "virtualMachineId": "c0c14913-3d7a-48ea-9531-cc99e0e686e6" + } + ], + "startGroupActions": [], + "endGroupActions": [] + } + ] + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryPlans_TestFailoverCleanup.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryPlans_TestFailoverCleanup.json new file mode 100644 index 000000000000..4d5b3dad7f9f --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryPlans_TestFailoverCleanup.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "recoveryPlanName": "RPtest1", + "input": { + "properties": { + "comments": "Test Failover Cleanup" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationRecoveryPlans/RPtest1", + "name": "RPtest1", + "type": "Microsoft.RecoveryServices/vaults/replicationRecoveryPlans", + "properties": { + "friendlyName": "RPtest1", + "primaryFabricId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1", + "primaryFabricFriendlyName": "cloud1", + "recoveryFabricId": "Microsoft Azure", + "recoveryFabricFriendlyName": "Microsoft Azure", + "failoverDeploymentModel": "ResourceManager", + "replicationProviders": [ + "HyperVReplicaAzure" + ], + "allowedOperations": [ + "PlannedFailover", + "UnplannedFailover", + "TestFailover" + ], + "lastPlannedFailoverTime": "2017-04-27T07:33:49.1372448Z", + "lastTestFailoverTime": "2017-04-27T07:00:27.8354747Z", + "currentScenario": { + "scenarioName": "TestFailoverCleanup", + "jobId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/4ae8eaa8-a384-42cb-9768-152cb5b8a1ff", + "startTime": "2017-04-27T07:10:52.8424747Z" + }, + "currentScenarioStatus": "Succeeded", + "currentScenarioStatusDescription": "Completed", + "groups": [ + { + "groupType": "Shutdown", + "replicationProtectedItems": [], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Failover", + "replicationProtectedItems": [], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Boot", + "replicationProtectedItems": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "virtualMachineId": "f8491e4f-817a-40dd-a90c-af773978c75b" + } + ], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Boot", + "replicationProtectedItems": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/c0c14913-3d7a-48ea-9531-cc99e0e686e6", + "virtualMachineId": "c0c14913-3d7a-48ea-9531-cc99e0e686e6" + } + ], + "startGroupActions": [], + "endGroupActions": [] + } + ] + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryPlans_UnplannedFailover.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryPlans_UnplannedFailover.json new file mode 100644 index 000000000000..cd34cc0d5a0a --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryPlans_UnplannedFailover.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "recoveryPlanName": "RPtest1", + "input": { + "properties": { + "failoverDirection": "PrimaryToRecovery", + "sourceSiteOperations": "Required", + "providerSpecificDetails": [ + { + "instanceType": "HyperVReplicaAzure" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationRecoveryPlans/RPtest1", + "name": "RPtest1", + "type": "Microsoft.RecoveryServices/vaults/replicationRecoveryPlans", + "properties": { + "friendlyName": "RPtest1", + "primaryFabricId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1", + "primaryFabricFriendlyName": "cloud1", + "recoveryFabricId": "Microsoft Azure", + "recoveryFabricFriendlyName": "Microsoft Azure", + "failoverDeploymentModel": "ResourceManager", + "replicationProviders": [ + "HyperVReplicaAzure" + ], + "allowedOperations": [ + "PlannedFailover", + "UnplannedFailover", + "TestFailover", + "Commit" + ], + "lastPlannedFailoverTime": "2017-04-27T08:58:35.9062813Z", + "lastTestFailoverTime": "2017-04-27T07:00:27.8354747Z", + "currentScenario": { + "scenarioName": "UnplannedFailover", + "jobId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/60b84068-9adb-4867-a49d-88be40bff14b", + "startTime": "2017-04-27T10:03:03.2206946Z" + }, + "currentScenarioStatus": "Succeeded", + "currentScenarioStatusDescription": "Completed", + "groups": [ + { + "groupType": "Shutdown", + "replicationProtectedItems": [], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Failover", + "replicationProtectedItems": [], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Boot", + "replicationProtectedItems": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "virtualMachineId": "f8491e4f-817a-40dd-a90c-af773978c75b" + } + ], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Boot", + "replicationProtectedItems": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/c0c14913-3d7a-48ea-9531-cc99e0e686e6", + "virtualMachineId": "c0c14913-3d7a-48ea-9531-cc99e0e686e6" + } + ], + "startGroupActions": [], + "endGroupActions": [] + } + ] + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryPlans_Update.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryPlans_Update.json new file mode 100644 index 000000000000..459a8d5dd6be --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryPlans_Update.json @@ -0,0 +1,111 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "recoveryPlanName": "RPtest1", + "input": { + "properties": { + "groups": [ + { + "groupType": "Shutdown", + "replicationProtectedItems": [], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Failover", + "replicationProtectedItems": [], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Boot", + "replicationProtectedItems": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "virtualMachineId": "f8491e4f-817a-40dd-a90c-af773978c75b" + } + ], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Boot", + "replicationProtectedItems": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/c0c14913-3d7a-48ea-9531-cc99e0e686e6", + "virtualMachineId": "c0c14913-3d7a-48ea-9531-cc99e0e686e6" + } + ], + "startGroupActions": [], + "endGroupActions": [] + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationRecoveryPlans/RPtest1", + "name": "RPtest1", + "type": "Microsoft.RecoveryServices/vaults/replicationRecoveryPlans", + "properties": { + "friendlyName": "RPtest1", + "primaryFabricId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1", + "primaryFabricFriendlyName": "cloud1", + "recoveryFabricId": "Microsoft Azure", + "recoveryFabricFriendlyName": "Microsoft Azure", + "failoverDeploymentModel": "ResourceManager", + "replicationProviders": [ + "HyperVReplicaAzure" + ], + "allowedOperations": [ + "PlannedFailover", + "UnplannedFailover", + "TestFailover" + ], + "groups": [ + { + "groupType": "Shutdown", + "replicationProtectedItems": [], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Failover", + "replicationProtectedItems": [], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Boot", + "replicationProtectedItems": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "virtualMachineId": "f8491e4f-817a-40dd-a90c-af773978c75b" + } + ], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Boot", + "replicationProtectedItems": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/c0c14913-3d7a-48ea-9531-cc99e0e686e6", + "virtualMachineId": "c0c14913-3d7a-48ea-9531-cc99e0e686e6" + } + ], + "startGroupActions": [], + "endGroupActions": [] + } + ] + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryServicesProviders_Create.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryServicesProviders_Create.json new file mode 100644 index 000000000000..106a5a501c72 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryServicesProviders_Create.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "providerName": "vmwareprovider1", + "fabricName": "vmwarefabric1", + "resourceName": "migrationvault", + "resourceGroupName": "resourcegroup1", + "subscriptionId": "cb53d0c3-bd59-4721-89bc-06916a9147ef", + "addProviderInput": { + "properties": { + "machineName": "vmwareprovider1", + "authenticationIdentityInput": { + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "applicationId": "f66fce08-c0c6-47a1-beeb-0ede5ea94f90", + "objectId": "141360b8-5686-4240-a027-5e24e6affeba", + "audience": "https://microsoft.onmicrosoft.com/cf19e349-644c-4c6a-bcae-9c8f35357874", + "aadAuthority": "https://login.microsoftonline.com" + }, + "resourceAccessIdentityInput": { + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "applicationId": "f66fce08-c0c6-47a1-beeb-0ede5ea94f90", + "objectId": "141360b8-5686-4240-a027-5e24e6affeba", + "audience": "https://microsoft.onmicrosoft.com/cf19e349-644c-4c6a-bcae-9c8f35357874", + "aadAuthority": "https://login.microsoftonline.com" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationRecoveryServicesProviders/vmwareprovider1", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationRecoveryServicesProviders", + "name": "vmwareprovider1", + "properties": { + "fabricType": "VMwareV2", + "friendlyName": "vmwareprovider1", + "providerVersion": "5.1.3688.0", + "serverVersion": "3.2.7510.0", + "providerVersionState": "Latest", + "fabricFriendlyName": "vmwarefabric1", + "lastHeartBeat": "2017-04-27T09:16:04.9405768Z", + "connectionStatus": "Connected", + "protectedItemCount": 2, + "allowedScenarios": [ + "Refresh" + ] + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryServicesProviders_Delete.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryServicesProviders_Delete.json new file mode 100644 index 000000000000..058dde0be470 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryServicesProviders_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "providerName": "241641e6-ee7b-4ee4-8141-821fadda43fa", + "fabricName": "cloud1", + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryServicesProviders_Get.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryServicesProviders_Get.json new file mode 100644 index 000000000000..fc75460445a2 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryServicesProviders_Get.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "providerName": "241641e6-ee7b-4ee4-8141-821fadda43fa", + "fabricName": "cloud1", + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationRecoveryServicesProviders/241641e6-ee7b-4ee4-8141-821fadda43fa", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationRecoveryServicesProviders", + "name": "241641e6-ee7b-4ee4-8141-821fadda43fa", + "properties": { + "fabricType": "HyperVSite", + "friendlyName": "CP-B3L40406-12.ntdev.corp.microsoft.com", + "providerVersion": "5.1.2250.0", + "serverVersion": "3.2.7510.0", + "providerVersionState": "Latest", + "fabricFriendlyName": "cloud1", + "lastHeartBeat": "2017-04-27T09:16:04.9405768Z", + "connectionStatus": "Connected", + "protectedItemCount": 2, + "allowedScenarios": [ + "Refresh" + ] + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryServicesProviders_List.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryServicesProviders_List.json new file mode 100644 index 000000000000..ac0820574eb3 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryServicesProviders_List.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationRecoveryServicesProviders/241641e6-ee7b-4ee4-8141-821fadda43fa", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationRecoveryServicesProviders", + "name": "241641e6-ee7b-4ee4-8141-821fadda43fa", + "properties": { + "fabricType": "HyperVSite", + "friendlyName": "CP-B3L40406-12.ntdev.corp.microsoft.com", + "providerVersion": "5.1.2250.0", + "serverVersion": "3.2.7510.0", + "providerVersionState": "Latest", + "fabricFriendlyName": "cloud1", + "lastHeartBeat": "2017-04-27T09:06:38.2728455Z", + "connectionStatus": "Connected", + "protectedItemCount": 2, + "allowedScenarios": [ + "Refresh" + ] + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryServicesProviders_ListByReplicationFabrics.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryServicesProviders_ListByReplicationFabrics.json new file mode 100644 index 000000000000..9dbd8ea4ef61 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryServicesProviders_ListByReplicationFabrics.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "fabricName": "cloud1", + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationRecoveryServicesProviders/241641e6-ee7b-4ee4-8141-821fadda43fa", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationRecoveryServicesProviders", + "name": "241641e6-ee7b-4ee4-8141-821fadda43fa", + "properties": { + "fabricType": "HyperVSite", + "friendlyName": "CP-B3L40406-12.ntdev.corp.microsoft.com", + "providerVersion": "5.1.2250.0", + "serverVersion": "3.2.7510.0", + "providerVersionState": "Latest", + "fabricFriendlyName": "cloud1", + "lastHeartBeat": "2017-04-27T09:06:38.2728455Z", + "connectionStatus": "Connected", + "protectedItemCount": 2, + "allowedScenarios": [ + "Refresh" + ] + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryServicesProviders_Purge.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryServicesProviders_Purge.json new file mode 100644 index 000000000000..058dde0be470 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryServicesProviders_Purge.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "providerName": "241641e6-ee7b-4ee4-8141-821fadda43fa", + "fabricName": "cloud1", + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryServicesProviders_RefreshProvider.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryServicesProviders_RefreshProvider.json new file mode 100644 index 000000000000..364440624e47 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationRecoveryServicesProviders_RefreshProvider.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "providerName": "241641e6-ee7b-4ee4-8141-821fadda43fa", + "fabricName": "cloud1", + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationRecoveryServicesProviders/241641e6-ee7b-4ee4-8141-821fadda43fa", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationRecoveryServicesProviders", + "name": "241641e6-ee7b-4ee4-8141-821fadda43fa", + "properties": { + "fabricType": "HyperVSite", + "friendlyName": "CP-B3L40406-12.ntdev.corp.microsoft.com", + "providerVersion": "5.1.2250.0", + "serverVersion": "3.2.7510.0", + "providerVersionState": "Latest", + "fabricFriendlyName": "cloud1", + "lastHeartBeat": "2017-04-27T09:48:36.6528303Z", + "connectionStatus": "Connected", + "protectedItemCount": 2, + "allowedScenarios": [ + "Refresh" + ] + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationStorageClassificationMappings_Create.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationStorageClassificationMappings_Create.json new file mode 100644 index 000000000000..898a1f076490 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationStorageClassificationMappings_Create.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "storageClassificationMappingName": "testStorageMapping", + "storageClassificationName": "8891569e-aaef-4a46-a4a0-78c14f2d7b09", + "fabricName": "2a48e3770ac08aa2be8bfbd94fcfb1cbf2dcc487b78fb9d3bd778304441b06a0", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "9112a37f-0f3e-46ec-9c00-060c6edca071", + "pairingInput": { + "properties": { + "targetStorageClassificationId": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/2a48e3770ac08aa2be8bfbd94fcfb1cbf2dcc487b78fb9d3bd778304441b06a0/replicationStorageClassifications/8891569e-aaef-4a46-a4a0-78c14f2d7b09" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/2a48e3770ac08aa2be8bfbd94fcfb1cbf2dcc487b78fb9d3bd778304441b06a0/replicationStorageClassifications/8891569e-aaef-4a46-a4a0-78c14f2d7b09/replicationStorageClassificationMappings/testStorageMapping", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationStorageClassifications/replicationStorageClassificationMappings", + "name": "testStorageMapping", + "properties": { + "targetStorageClassificationId": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/2a48e3770ac08aa2be8bfbd94fcfb1cbf2dcc487b78fb9d3bd778304441b06a0/replicationStorageClassifications/8891569e-aaef-4a46-a4a0-78c14f2d7b09" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationStorageClassificationMappings_Delete.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationStorageClassificationMappings_Delete.json new file mode 100644 index 000000000000..4a09e955814e --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationStorageClassificationMappings_Delete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "storageClassificationMappingName": "testStorageMapping", + "storageClassificationName": "8891569e-aaef-4a46-a4a0-78c14f2d7b09", + "fabricName": "2a48e3770ac08aa2be8bfbd94fcfb1cbf2dcc487b78fb9d3bd778304441b06a0", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "9112a37f-0f3e-46ec-9c00-060c6edca071" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationStorageClassificationMappings_Get.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationStorageClassificationMappings_Get.json new file mode 100644 index 000000000000..0c0b13d16d32 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationStorageClassificationMappings_Get.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "storageClassificationMappingName": "testStorageMapping", + "storageClassificationName": "8891569e-aaef-4a46-a4a0-78c14f2d7b09", + "fabricName": "2a48e3770ac08aa2be8bfbd94fcfb1cbf2dcc487b78fb9d3bd778304441b06a0", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "9112a37f-0f3e-46ec-9c00-060c6edca071" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/2a48e3770ac08aa2be8bfbd94fcfb1cbf2dcc487b78fb9d3bd778304441b06a0/replicationStorageClassifications/8891569e-aaef-4a46-a4a0-78c14f2d7b09/replicationStorageClassificationMappings/testStorageMapping", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationStorageClassifications/replicationStorageClassificationMappings", + "name": "testStorageMapping", + "properties": { + "targetStorageClassificationId": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/2a48e3770ac08aa2be8bfbd94fcfb1cbf2dcc487b78fb9d3bd778304441b06a0/replicationStorageClassifications/8891569e-aaef-4a46-a4a0-78c14f2d7b09" + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationStorageClassificationMappings_List.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationStorageClassificationMappings_List.json new file mode 100644 index 000000000000..c51836f72b77 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationStorageClassificationMappings_List.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "9112a37f-0f3e-46ec-9c00-060c6edca071" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/2a48e3770ac08aa2be8bfbd94fcfb1cbf2dcc487b78fb9d3bd778304441b06a0/replicationStorageClassifications/8891569e-aaef-4a46-a4a0-78c14f2d7b09/replicationStorageClassificationMappings/testStorageMapping", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationStorageClassifications/replicationStorageClassificationMappings", + "name": "testStorageMapping", + "properties": { + "targetStorageClassificationId": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/2a48e3770ac08aa2be8bfbd94fcfb1cbf2dcc487b78fb9d3bd778304441b06a0/replicationStorageClassifications/8891569e-aaef-4a46-a4a0-78c14f2d7b09" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationStorageClassificationMappings_ListByReplicationStorageClassifications.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationStorageClassificationMappings_ListByReplicationStorageClassifications.json new file mode 100644 index 000000000000..221f32f9ef95 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationStorageClassificationMappings_ListByReplicationStorageClassifications.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "storageClassificationName": "8891569e-aaef-4a46-a4a0-78c14f2d7b09", + "fabricName": "2a48e3770ac08aa2be8bfbd94fcfb1cbf2dcc487b78fb9d3bd778304441b06a0", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "9112a37f-0f3e-46ec-9c00-060c6edca071" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/2a48e3770ac08aa2be8bfbd94fcfb1cbf2dcc487b78fb9d3bd778304441b06a0/replicationStorageClassifications/8891569e-aaef-4a46-a4a0-78c14f2d7b09/replicationStorageClassificationMappings/testStorageMapping", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationStorageClassifications/replicationStorageClassificationMappings", + "name": "testStorageMapping", + "properties": { + "targetStorageClassificationId": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/2a48e3770ac08aa2be8bfbd94fcfb1cbf2dcc487b78fb9d3bd778304441b06a0/replicationStorageClassifications/8891569e-aaef-4a46-a4a0-78c14f2d7b09" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationStorageClassifications_Get.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationStorageClassifications_Get.json new file mode 100644 index 000000000000..a5daaccc3d9c --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationStorageClassifications_Get.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "storageClassificationName": "8891569e-aaef-4a46-a4a0-78c14f2d7b09", + "fabricName": "2a48e3770ac08aa2be8bfbd94fcfb1cbf2dcc487b78fb9d3bd778304441b06a0", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "9112a37f-0f3e-46ec-9c00-060c6edca071" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/2a48e3770ac08aa2be8bfbd94fcfb1cbf2dcc487b78fb9d3bd778304441b06a0/replicationStorageClassifications/8891569e-aaef-4a46-a4a0-78c14f2d7b09", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationStorageClassifications", + "name": "8891569e-aaef-4a46-a4a0-78c14f2d7b09", + "properties": { + "friendlyName": "testStorageClassification" + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationStorageClassifications_List.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationStorageClassifications_List.json new file mode 100644 index 000000000000..649bc93be3f6 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationStorageClassifications_List.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "9112a37f-0f3e-46ec-9c00-060c6edca071" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/2a48e3770ac08aa2be8bfbd94fcfb1cbf2dcc487b78fb9d3bd778304441b06a0/replicationStorageClassifications/8891569e-aaef-4a46-a4a0-78c14f2d7b09", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationStorageClassifications", + "name": "8891569e-aaef-4a46-a4a0-78c14f2d7b09", + "properties": { + "friendlyName": "testStorageClassification" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationStorageClassifications_ListByReplicationFabrics.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationStorageClassifications_ListByReplicationFabrics.json new file mode 100644 index 000000000000..c610facaa975 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationStorageClassifications_ListByReplicationFabrics.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "fabricName": "2a48e3770ac08aa2be8bfbd94fcfb1cbf2dcc487b78fb9d3bd778304441b06a0", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "9112a37f-0f3e-46ec-9c00-060c6edca071" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/2a48e3770ac08aa2be8bfbd94fcfb1cbf2dcc487b78fb9d3bd778304441b06a0/replicationStorageClassifications/8891569e-aaef-4a46-a4a0-78c14f2d7b09", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationStorageClassifications", + "name": "8891569e-aaef-4a46-a4a0-78c14f2d7b09", + "properties": { + "friendlyName": "testStorageClassification" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationVaultHealth_Get.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationVaultHealth_Get.json new file mode 100644 index 000000000000..56e7cd76a6e0 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationVaultHealth_Get.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "name": "Default", + "type": "Microsoft.RecoveryServices/vaults/replicationVaultHealth", + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationVaultHealth/Default", + "properties": { + "vaultErrors": [], + "protectedItemsHealth": { + "resourceCount": 6, + "issues": [ + { + "summaryCode": "10008", + "category": "Replication", + "severity": "Error", + "summaryMessage": "RPO Throttled", + "affectedResourceType": "replicationProtectedItems", + "affectedResourceSubtype": "", + "affectedResourceCorrelationIds": [ + "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "c183865e-6077-46f2-a3b1-ceb0a4c3751e" + ] + } + ] + }, + "fabricsHealth": { + "resourceCount": 1, + "issues": [] + } + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationVaultHealth_Refresh.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationVaultHealth_Refresh.json new file mode 100644 index 000000000000..1d40492a35fa --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationVaultHealth_Refresh.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "name": "Default", + "type": "Microsoft.RecoveryServices/vaults/replicationVaultHealth", + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationVaultHealth/Default", + "properties": { + "vaultErrors": [], + "protectedItemsHealth": { + "resourceCount": 2, + "issues": [] + }, + "fabricsHealth": { + "resourceCount": 1, + "issues": [] + } + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationVaultSetting_Create.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationVaultSetting_Create.json new file mode 100644 index 000000000000..77dea8660a8e --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationVaultSetting_Create.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "vaultSettingName": "default", + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "input": { + "properties": { + "migrationSolutionId": "/subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.Migrate/MigrateProjects/resourceGroupPS1-MigrateProject/Solutions/Servers-Migration-ServerMigration" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationVaultSettings/default", + "name": "default", + "type": "Microsoft.RecoveryServices/vaults/replicationVaultSettings", + "properties": { + "migrationSolutionId": "/subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.Migrate/MigrateProjects/resourceGroupPS1-MigrateProject/Solutions/Servers-Migration-ServerMigration" + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationVaultSetting_Get.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationVaultSetting_Get.json new file mode 100644 index 000000000000..b99202c0a2e3 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationVaultSetting_Get.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "vaultSettingName": "default", + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationVaultSettings/default", + "name": "default", + "type": "Microsoft.RecoveryServices/vaults/replicationVaultSettings", + "properties": { + "migrationSolutionId": "/subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.Migrate/MigrateProjects/resourceGroupPS1-MigrateProject/Solutions/Servers-Migration-ServerMigration" + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationVaultSetting_List.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationVaultSetting_List.json new file mode 100644 index 000000000000..4b972d683ed0 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationVaultSetting_List.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationVaultSettings/default", + "name": "default", + "type": "Microsoft.RecoveryServices/vaults/replicationVaultSettings", + "properties": { + "migrationSolutionId": "/subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.Migrate/MigrateProjects/resourceGroupPS1-MigrateProject/Solutions/Servers-Migration-ServerMigration" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationvCenters_Create.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationvCenters_Create.json new file mode 100644 index 000000000000..c63c9af31c78 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationvCenters_Create.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "vcenterName": "esx-78", + "fabricName": "MadhaviFabric", + "api-version": "2021-02-10", + "resourceName": "MadhaviVault", + "resourceGroupName": "MadhaviVRG", + "subscriptionId": "7c943c1b-5122-4097-90c8-861411bdd574", + "addVCenterRequest": { + "properties": { + "friendlyName": "esx-78", + "ipAddress": "inmtest78", + "processServerId": "5A720CAB-39CB-F445-BD1662B0B33164B5", + "port": "443", + "runAsAccountId": "2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "esx-78", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationvCenters", + "id": "/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/MadhaviVRG/providers/Microsoft.RecoveryServices/vaults/MadhaviVault/replicationFabrics/239f778f368e34f78216d81f030725cdf2033174b47879b9f2eeede06fdd9c4d/replicationvCenters/esx-78", + "properties": { + "friendlyName": "esx-78", + "internalId": "inmtest78", + "discoveryStatus": "Pending", + "processServerId": "5A720CAB-39CB-F445-BD1662B0B33164B5", + "ipAddress": "inmtest78", + "port": "443", + "runAsAccountId": "2", + "fabricArmResourceName": "239f778f368e34f78216d81f030725cdf2033174b47879b9f2eeede06fdd9c4d" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationvCenters_Delete.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationvCenters_Delete.json new file mode 100644 index 000000000000..b7880053dff6 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationvCenters_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "vcenterName": "esx-78", + "fabricName": "MadhaviFabric", + "api-version": "2021-02-10", + "resourceName": "MadhaviVault", + "resourceGroupName": "MadhaviVRG", + "subscriptionId": "7c943c1b-5122-4097-90c8-861411bdd574" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationvCenters_Get.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationvCenters_Get.json new file mode 100644 index 000000000000..3a2928042471 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationvCenters_Get.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "vcenterName": "esx-78", + "fabricName": "MadhaviFabric", + "api-version": "2021-02-10", + "resourceName": "MadhaviVault", + "resourceGroupName": "MadhaviVRG", + "subscriptionId": "7c943c1b-5122-4097-90c8-861411bdd574" + }, + "responses": { + "200": { + "body": { + "name": "esx-78", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationvCenters", + "id": "/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/MadhaviVRG/providers/Microsoft.RecoveryServices/vaults/MadhaviVault/replicationFabrics/239f778f368e34f78216d81f030725cdf2033174b47879b9f2eeede06fdd9c4d/replicationvCenters/esx-78", + "properties": { + "friendlyName": "esx-78", + "internalId": "inmtest78", + "discoveryStatus": "Pending", + "processServerId": "5A720CAB-39CB-F445-BD1662B0B33164B5", + "ipAddress": "inmtest78", + "port": "443", + "runAsAccountId": "2", + "fabricArmResourceName": "239f778f368e34f78216d81f030725cdf2033174b47879b9f2eeede06fdd9c4d" + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationvCenters_List.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationvCenters_List.json new file mode 100644 index 000000000000..e352e5102829 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationvCenters_List.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "resourceName": "MadhaviVault", + "resourceGroupName": "MadhaviVRG", + "subscriptionId": "7c943c1b-5122-4097-90c8-861411bdd574" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "esx-78", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationvCenters", + "id": "/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/MadhaviVRG/providers/Microsoft.RecoveryServices/vaults/MadhaviVault/replicationFabrics/239f778f368e34f78216d81f030725cdf2033174b47879b9f2eeede06fdd9c4d/replicationvCenters/esx-78", + "properties": { + "friendlyName": "esx-78", + "internalId": "inmtest78", + "discoveryStatus": "Pending", + "processServerId": "5A720CAB-39CB-F445-BD1662B0B33164B5", + "ipAddress": "inmtest78", + "port": "443", + "runAsAccountId": "2", + "fabricArmResourceName": "239f778f368e34f78216d81f030725cdf2033174b47879b9f2eeede06fdd9c4d" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationvCenters_ListByReplicationFabrics.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationvCenters_ListByReplicationFabrics.json new file mode 100644 index 000000000000..0d1aef1d65cc --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationvCenters_ListByReplicationFabrics.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "fabricName": "MadhaviFabric", + "api-version": "2021-02-10", + "resourceName": "MadhaviVault", + "resourceGroupName": "MadhaviVRG", + "subscriptionId": "7c943c1b-5122-4097-90c8-861411bdd574" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "esx-78", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationvCenters", + "id": "/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/MadhaviVRG/providers/Microsoft.RecoveryServices/vaults/MadhaviVault/replicationFabrics/239f778f368e34f78216d81f030725cdf2033174b47879b9f2eeede06fdd9c4d/replicationvCenters/esx-78", + "properties": { + "friendlyName": "esx-78", + "internalId": "inmtest78", + "discoveryStatus": "Pending", + "processServerId": "5A720CAB-39CB-F445-BD1662B0B33164B5", + "ipAddress": "inmtest78", + "port": "443", + "runAsAccountId": "2", + "fabricArmResourceName": "239f778f368e34f78216d81f030725cdf2033174b47879b9f2eeede06fdd9c4d" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationvCenters_Update.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationvCenters_Update.json new file mode 100644 index 000000000000..c4e89a5301d8 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/ReplicationvCenters_Update.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "vcenterName": "esx-78", + "fabricName": "MadhaviFabric", + "api-version": "2021-02-10", + "resourceName": "MadhaviVault", + "resourceGroupName": "MadhaviVRG", + "subscriptionId": "7c943c1b-5122-4097-90c8-861411bdd574", + "updateVCenterRequest": { + "properties": { + "ipAddress": "10.150.109.25" + } + } + }, + "responses": { + "200": { + "body": { + "name": "esx-78", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationvCenters", + "id": "/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/MadhaviVRG/providers/Microsoft.RecoveryServices/vaults/MadhaviVault/replicationFabrics/239f778f368e34f78216d81f030725cdf2033174b47879b9f2eeede06fdd9c4d/replicationvCenters/esx-78", + "properties": { + "friendlyName": "esx-78", + "internalId": "inmtest78", + "discoveryStatus": "Pending", + "processServerId": "5A720CAB-39CB-F445-BD1662B0B33164B5", + "ipAddress": "10.150.109.25", + "port": "443", + "runAsAccountId": "2", + "fabricArmResourceName": "239f778f368e34f78216d81f030725cdf2033174b47879b9f2eeede06fdd9c4d" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/SupportedOperatingSystems_Get.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/SupportedOperatingSystems_Get.json new file mode 100644 index 000000000000..b65b711c1b9e --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/SupportedOperatingSystems_Get.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "name": "Default", + "type": "Microsoft.RecoveryServices/vaults/replicationSupportedOperatingSystems", + "id": "/Subscriptions/bc403605-c2b0-43dd-abe9-0162124b1ee1/resourceGroups/oneBoxRG/providers/Microsoft.RecoveryServices/vaults/oneBoxRSVault/replicationSupportedOperatingSystems/Default", + "properties": { + "supportedOsList": [ + { + "instanceType": "A2A", + "supportedOs": [ + { + "osName": "centos", + "osType": "linux", + "osVersions": [ + { + "version": "6.0" + } + ] + }, + { + "osName": "Windows Server 2008 R2 Datacenter", + "osType": "windows", + "osVersions": [ + { + "version": "6.1", + "servicePack": "1" + } + ] + } + ] + } + ] + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/TargetComputeSizes_ListByReplicationProtectedItems.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/TargetComputeSizes_ListByReplicationProtectedItems.json new file mode 100644 index 000000000000..7a421bae30ba --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/examples/TargetComputeSizes_ListByReplicationProtectedItems.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2021-02-10", + "replicatedProtectedItemName": "468c912d-b1ab-4ea2-97eb-4b5095155db2", + "protectionContainerName": "asr-a2a-default-centraluseuap-container", + "fabricName": "asr-a2a-default-centraluseuap", + "resourceName": "avraiMgDiskVault", + "resourceGroupName": "avraiMgDiskVaultRG", + "subscriptionId": "6808dbbc-98c7-431f-a1b1-9580902423b7" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/6808dbbc-98c7-431f-a1b1-9580902423b7/resourceGroups/avraiMgDiskVaultRG/providers/Microsoft.RecoveryServices/vaults/avraiMgDiskVault/replicationFabrics/asr-a2a-default-centraluseuap/replicationProtectionContainers/asr-a2a-default-centraluseuap-container/replicationProtectedItems/468c912d-b1ab-4ea2-97eb-4b5095155db2/targetComputeSizes/Basic_A0", + "name": "Basic_A0", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems/targetComputeSizes", + "properties": { + "name": "Basic_A0", + "friendlyName": "Basic_A0", + "cpuCoresCount": 1, + "memoryInGB": 0.75, + "maxDataDiskCount": 1, + "maxNicsCount": 2, + "errors": null, + "highIopsSupported": "NotSupported" + } + }, + { + "id": "/Subscriptions/6808dbbc-98c7-431f-a1b1-9580902423b7/resourceGroups/avraiMgDiskVaultRG/providers/Microsoft.RecoveryServices/vaults/avraiMgDiskVault/replicationFabrics/asr-a2a-default-centraluseuap/replicationProtectionContainers/asr-a2a-default-centraluseuap-container/replicationProtectedItems/468c912d-b1ab-4ea2-97eb-4b5095155db2/targetComputeSizes/Standard_A0", + "name": "Standard_A0", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems/targetComputeSizes", + "properties": { + "name": "Standard_A0", + "friendlyName": "Standard_A0", + "cpuCoresCount": 1, + "vCPUsAvailable": 1, + "memoryInGB": 0.75, + "maxDataDiskCount": 1, + "maxNicsCount": 2, + "errors": null, + "highIopsSupported": "NotSupported", + "hyperVGenerations": [ + "V1" + ] + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/service.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/service.json new file mode 100644 index 000000000000..b73af59d0f2b --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-02-10/service.json @@ -0,0 +1,23158 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-10", + "title": "SiteRecoveryManagementClient", + "x-ms-code-generation-settings": { + "header": "MICROSOFT_MIT_NO_VERSION" + } + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/operations": { + "get": { + "tags": [ + "Operations" + ], + "summary": "Returns the list of available operations.", + "description": "Operation to return the list of available operations.", + "operationId": "Operations_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationsDiscoveryCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Returns the list of available operations.": { + "$ref": "./examples/Operations_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationAlertSettings": { + "get": { + "tags": [ + "ReplicationAlertSettings" + ], + "summary": "Gets the list of configured email notification(alert) configurations.", + "description": "Gets the list of email notification(alert) configurations for the vault.", + "operationId": "ReplicationAlertSettings_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AlertCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the list of configured email notification(alert) configurations.": { + "$ref": "./examples/ReplicationAlertSettings_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationAlertSettings/{alertSettingName}": { + "get": { + "tags": [ + "ReplicationAlertSettings" + ], + "summary": "Gets an email notification(alert) configuration.", + "description": "Gets the details of the specified email notification(alert) configuration.", + "operationId": "ReplicationAlertSettings_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "alertSettingName", + "in": "path", + "description": "The name of the email notification configuration.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Alert" + } + } + }, + "x-ms-examples": { + "Gets an email notification(alert) configuration.": { + "$ref": "./examples/ReplicationAlertSettings_Get.json" + } + } + }, + "put": { + "tags": [ + "ReplicationAlertSettings" + ], + "summary": "Configures email notifications for this vault.", + "description": "Create or update an email notification(alert) configuration.", + "operationId": "ReplicationAlertSettings_Create", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "alertSettingName", + "in": "path", + "description": "The name of the email notification(alert) configuration.", + "required": true, + "type": "string" + }, + { + "name": "request", + "in": "body", + "description": "The input to configure the email notification(alert).", + "required": true, + "schema": { + "$ref": "#/definitions/ConfigureAlertRequest" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Alert" + } + } + }, + "x-ms-examples": { + "Configures email notifications for this vault.": { + "$ref": "./examples/ReplicationAlertSettings_Create.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{virtualMachineName}/providers/Microsoft.RecoveryServices/replicationEligibilityResults": { + "get": { + "tags": [ + "ReplicationEligibilityResults" + ], + "summary": "Gets the validation errors in case the VM is unsuitable for protection.", + "description": "Validates whether a given VM can be protected or not in which case returns list of errors.", + "operationId": "ReplicationEligibilityResults_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "virtualMachineName", + "in": "path", + "description": "Virtual Machine name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationEligibilityResultsCollection" + } + } + }, + "x-ms-examples": { + "Gets the validation errors in case the VM is unsuitable for protection.": { + "$ref": "./examples/ReplicationEligibilityResults_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{virtualMachineName}/providers/Microsoft.RecoveryServices/replicationEligibilityResults/default": { + "get": { + "tags": [ + "ReplicationEligibilityResults" + ], + "summary": "Gets the validation errors in case the VM is unsuitable for protection.", + "description": "Validates whether a given VM can be protected or not in which case returns list of errors.", + "operationId": "ReplicationEligibilityResults_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "virtualMachineName", + "in": "path", + "description": "Virtual Machine name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationEligibilityResults" + } + } + }, + "x-ms-examples": { + "Gets the validation errors in case the VM is unsuitable for protection.": { + "$ref": "./examples/ReplicationEligibilityResults_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationEvents": { + "get": { + "tags": [ + "ReplicationEvents" + ], + "summary": "Gets the list of Azure Site Recovery events.", + "description": "Gets the list of Azure Site Recovery events for the vault.", + "operationId": "ReplicationEvents_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/EventCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/EventQueryParameter", + "x-ms-examples": { + "Gets the list of Azure Site Recovery events.": { + "$ref": "./examples/ReplicationEvents_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationEvents/{eventName}": { + "get": { + "tags": [ + "ReplicationEvents" + ], + "summary": "Get the details of an Azure Site recovery event.", + "description": "The operation to get the details of an Azure Site recovery event.", + "operationId": "ReplicationEvents_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "eventName", + "in": "path", + "description": "The name of the Azure Site Recovery event.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Event" + } + } + }, + "x-ms-examples": { + "Get the details of an Azure Site recovery event.": { + "$ref": "./examples/ReplicationEvents_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics": { + "get": { + "tags": [ + "ReplicationFabrics" + ], + "summary": "Gets the list of ASR fabrics.", + "description": "Gets a list of the Azure Site Recovery fabrics in the vault.", + "operationId": "ReplicationFabrics_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/FabricCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the list of ASR fabrics.": { + "$ref": "./examples/ReplicationFabrics_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}": { + "get": { + "tags": [ + "ReplicationFabrics" + ], + "summary": "Gets the details of an ASR fabric.", + "description": "Gets the details of an Azure Site Recovery fabric.", + "operationId": "ReplicationFabrics_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Fabric" + } + } + }, + "x-ms-odata": "#/definitions/FabricQueryParameter", + "x-ms-examples": { + "Gets the details of an ASR fabric.": { + "$ref": "./examples/ReplicationFabrics_Get.json" + } + } + }, + "put": { + "tags": [ + "ReplicationFabrics" + ], + "summary": "Creates an Azure Site Recovery fabric.", + "description": "The operation to create an Azure Site Recovery fabric (for e.g. Hyper-V site).", + "operationId": "ReplicationFabrics_Create", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Name of the ASR fabric.", + "required": true, + "type": "string" + }, + { + "name": "input", + "in": "body", + "description": "Fabric creation input.", + "required": true, + "schema": { + "$ref": "#/definitions/FabricCreationInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Fabric" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Creates an Azure Site Recovery fabric.": { + "$ref": "./examples/ReplicationFabrics_Create.json" + } + } + }, + "delete": { + "tags": [ + "ReplicationFabrics" + ], + "summary": "Purges the site.", + "description": "The operation to purge(force delete) an Azure Site Recovery fabric.", + "operationId": "ReplicationFabrics_Purge", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "ASR fabric to purge.", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Purges the site.": { + "$ref": "./examples/ReplicationFabrics_Purge.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/checkConsistency": { + "post": { + "tags": [ + "ReplicationFabrics" + ], + "summary": "Checks the consistency of the ASR fabric.", + "description": "The operation to perform a consistency check on the fabric.", + "operationId": "ReplicationFabrics_CheckConsistency", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Fabric" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Checks the consistency of the ASR fabric.": { + "$ref": "./examples/ReplicationFabrics_CheckConsistency.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/migratetoaad": { + "post": { + "tags": [ + "ReplicationFabrics" + ], + "summary": "Migrates the site to AAD.", + "description": "The operation to migrate an Azure Site Recovery fabric to AAD.", + "operationId": "ReplicationFabrics_MigrateToAad", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "ASR fabric to migrate.", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Migrates the site to AAD.": { + "$ref": "./examples/ReplicationFabrics_MigrateToAad.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/reassociateGateway": { + "post": { + "tags": [ + "ReplicationFabrics" + ], + "summary": "Perform failover of the process server.", + "description": "The operation to move replications from a process server to another process server.", + "operationId": "ReplicationFabrics_ReassociateGateway", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "The name of the fabric containing the process server.", + "required": true, + "type": "string" + }, + { + "name": "failoverProcessServerRequest", + "in": "body", + "description": "The input to the failover process server operation.", + "required": true, + "schema": { + "$ref": "#/definitions/FailoverProcessServerRequest" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Fabric" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Perform failover of the process server.": { + "$ref": "./examples/ReplicationFabrics_ReassociateGateway.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/remove": { + "post": { + "tags": [ + "ReplicationFabrics" + ], + "summary": "Deletes the site.", + "description": "The operation to delete or remove an Azure Site Recovery fabric.", + "operationId": "ReplicationFabrics_Delete", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "ASR fabric to delete.", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Deletes the site.": { + "$ref": "./examples/ReplicationFabrics_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/renewCertificate": { + "post": { + "tags": [ + "ReplicationFabrics" + ], + "summary": "Renews certificate for the fabric.", + "description": "Renews the connection certificate for the ASR replication fabric.", + "operationId": "ReplicationFabrics_RenewCertificate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "fabric name to renew certs for.", + "required": true, + "type": "string" + }, + { + "name": "renewCertificate", + "in": "body", + "description": "Renew certificate input.", + "required": true, + "schema": { + "$ref": "#/definitions/RenewCertificateInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Fabric" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Renews certificate for the fabric.": { + "$ref": "./examples/ReplicationFabrics_RenewCertificate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationLogicalNetworks": { + "get": { + "tags": [ + "ReplicationLogicalNetworks" + ], + "summary": "Gets the list of logical networks under a fabric.", + "description": "Lists all the logical networks of the Azure Site Recovery fabric.", + "operationId": "ReplicationLogicalNetworks_ListByReplicationFabrics", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Server Id.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/LogicalNetworkCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the list of logical networks under a fabric.": { + "$ref": "./examples/ReplicationLogicalNetworks_ListByReplicationFabrics.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationLogicalNetworks/{logicalNetworkName}": { + "get": { + "tags": [ + "ReplicationLogicalNetworks" + ], + "summary": "Gets a logical network with specified server id and logical network name.", + "description": "Gets the details of a logical network.", + "operationId": "ReplicationLogicalNetworks_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Server Id.", + "required": true, + "type": "string" + }, + { + "name": "logicalNetworkName", + "in": "path", + "description": "Logical network name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/LogicalNetwork" + } + } + }, + "x-ms-examples": { + "Gets a logical network with specified server id and logical network name.": { + "$ref": "./examples/ReplicationLogicalNetworks_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationNetworks": { + "get": { + "tags": [ + "ReplicationNetworks" + ], + "summary": "Gets the list of networks under a fabric.", + "description": "Lists the networks available for a fabric.", + "operationId": "ReplicationNetworks_ListByReplicationFabrics", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/NetworkCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the list of networks under a fabric.": { + "$ref": "./examples/ReplicationNetworks_ListByReplicationFabrics.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationNetworks/{networkName}": { + "get": { + "tags": [ + "ReplicationNetworks" + ], + "summary": "Gets a network with specified server id and network name.", + "description": "Gets the details of a network.", + "operationId": "ReplicationNetworks_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Server Id.", + "required": true, + "type": "string" + }, + { + "name": "networkName", + "in": "path", + "description": "Primary network name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Network" + } + } + }, + "x-ms-examples": { + "Gets a network with specified server id and network name.": { + "$ref": "./examples/ReplicationNetworks_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationNetworks/{networkName}/replicationNetworkMappings": { + "get": { + "tags": [ + "ReplicationNetworkMappings" + ], + "summary": "Gets all the network mappings under a network.", + "description": "Lists all ASR network mappings for the specified network.", + "operationId": "ReplicationNetworkMappings_ListByReplicationNetworks", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Primary fabric name.", + "required": true, + "type": "string" + }, + { + "name": "networkName", + "in": "path", + "description": "Primary network name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/NetworkMappingCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets all the network mappings under a network.": { + "$ref": "./examples/ReplicationNetworkMappings_ListByReplicationNetworks.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationNetworks/{networkName}/replicationNetworkMappings/{networkMappingName}": { + "get": { + "tags": [ + "ReplicationNetworkMappings" + ], + "summary": "Gets network mapping by name.", + "description": "Gets the details of an ASR network mapping.", + "operationId": "ReplicationNetworkMappings_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Primary fabric name.", + "required": true, + "type": "string" + }, + { + "name": "networkName", + "in": "path", + "description": "Primary network name.", + "required": true, + "type": "string" + }, + { + "name": "networkMappingName", + "in": "path", + "description": "Network mapping name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/NetworkMapping" + } + } + }, + "x-ms-examples": { + "Gets network mapping by name.": { + "$ref": "./examples/ReplicationNetworkMappings_Get.json" + } + } + }, + "put": { + "tags": [ + "ReplicationNetworkMappings" + ], + "summary": "Creates network mapping.", + "description": "The operation to create an ASR network mapping.", + "operationId": "ReplicationNetworkMappings_Create", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Primary fabric name.", + "required": true, + "type": "string" + }, + { + "name": "networkName", + "in": "path", + "description": "Primary network name.", + "required": true, + "type": "string" + }, + { + "name": "networkMappingName", + "in": "path", + "description": "Network mapping name.", + "required": true, + "type": "string" + }, + { + "name": "input", + "in": "body", + "description": "Create network mapping input.", + "required": true, + "schema": { + "$ref": "#/definitions/CreateNetworkMappingInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/NetworkMapping" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Creates network mapping.": { + "$ref": "./examples/ReplicationNetworkMappings_Create.json" + } + } + }, + "delete": { + "tags": [ + "ReplicationNetworkMappings" + ], + "summary": "Delete network mapping.", + "description": "The operation to delete a network mapping.", + "operationId": "ReplicationNetworkMappings_Delete", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Primary fabric name.", + "required": true, + "type": "string" + }, + { + "name": "networkName", + "in": "path", + "description": "Primary network name.", + "required": true, + "type": "string" + }, + { + "name": "networkMappingName", + "in": "path", + "description": "ARM Resource Name for network mapping.", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete network mapping.": { + "$ref": "./examples/ReplicationNetworkMappings_Delete.json" + } + } + }, + "patch": { + "tags": [ + "ReplicationNetworkMappings" + ], + "summary": "Updates network mapping.", + "description": "The operation to update an ASR network mapping.", + "operationId": "ReplicationNetworkMappings_Update", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Primary fabric name.", + "required": true, + "type": "string" + }, + { + "name": "networkName", + "in": "path", + "description": "Primary network name.", + "required": true, + "type": "string" + }, + { + "name": "networkMappingName", + "in": "path", + "description": "Network mapping name.", + "required": true, + "type": "string" + }, + { + "name": "input", + "in": "body", + "description": "Update network mapping input.", + "required": true, + "schema": { + "$ref": "#/definitions/UpdateNetworkMappingInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/NetworkMapping" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Updates network mapping.": { + "$ref": "./examples/ReplicationNetworkMappings_Update.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers": { + "get": { + "tags": [ + "ReplicationProtectionContainers" + ], + "summary": "Gets the list of protection container for a fabric.", + "description": "Lists the protection containers in the specified fabric.", + "operationId": "ReplicationProtectionContainers_ListByReplicationFabrics", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionContainerCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the list of protection container for a fabric.": { + "$ref": "./examples/ReplicationProtectionContainers_ListByReplicationFabrics.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}": { + "get": { + "tags": [ + "ReplicationProtectionContainers" + ], + "summary": "Gets the protection container details.", + "description": "Gets the details of a protection container.", + "operationId": "ReplicationProtectionContainers_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionContainer" + } + } + }, + "x-ms-examples": { + "Gets the protection container details.": { + "$ref": "./examples/ReplicationProtectionContainers_Get.json" + } + } + }, + "put": { + "tags": [ + "ReplicationProtectionContainers" + ], + "summary": "Create a protection container.", + "description": "Operation to create a protection container.", + "operationId": "ReplicationProtectionContainers_Create", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Unique fabric ARM name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Unique protection container ARM name.", + "required": true, + "type": "string" + }, + { + "name": "creationInput", + "in": "body", + "description": "Creation input.", + "required": true, + "schema": { + "$ref": "#/definitions/CreateProtectionContainerInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionContainer" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create a protection container.": { + "$ref": "./examples/ReplicationProtectionContainers_Create.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/discoverProtectableItem": { + "post": { + "tags": [ + "ReplicationProtectionContainers" + ], + "summary": "Adds a protectable item to the replication protection container.", + "description": "The operation to a add a protectable item to a protection container(Add physical server).", + "operationId": "ReplicationProtectionContainers_DiscoverProtectableItem", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "The name of the fabric.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "The name of the protection container.", + "required": true, + "type": "string" + }, + { + "name": "discoverProtectableItemRequest", + "in": "body", + "description": "The request object to add a protectable item.", + "required": true, + "schema": { + "$ref": "#/definitions/DiscoverProtectableItemRequest" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionContainer" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Adds a protectable item to the replication protection container.": { + "$ref": "./examples/ReplicationProtectionContainers_DiscoverProtectableItem.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/remove": { + "post": { + "tags": [ + "ReplicationProtectionContainers" + ], + "summary": "Removes a protection container.", + "description": "Operation to remove a protection container.", + "operationId": "ReplicationProtectionContainers_Delete", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Unique fabric ARM name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Unique protection container ARM name.", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Removes a protection container.": { + "$ref": "./examples/ReplicationProtectionContainers_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems": { + "get": { + "tags": [ + "ReplicationMigrationItems" + ], + "summary": "Gets the list of migration items in the protection container.", + "description": "Gets the list of ASR migration items in the protection container.", + "operationId": "ReplicationMigrationItems_ListByReplicationProtectionContainers", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "skipToken", + "in": "query", + "description": "The pagination token.", + "required": false, + "type": "string" + }, + { + "name": "takeToken", + "in": "query", + "description": "The page size.", + "required": false, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MigrationItemCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/MigrationItemsQueryParameter", + "x-ms-examples": { + "Gets the list of migration items in the protection container.": { + "$ref": "./examples/ReplicationMigrationItems_ListByReplicationProtectionContainers.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}": { + "get": { + "tags": [ + "ReplicationMigrationItems" + ], + "summary": "Gets the details of a migration item.", + "operationId": "ReplicationMigrationItems_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric unique name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "migrationItemName", + "in": "path", + "description": "Migration item name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MigrationItem" + } + } + }, + "x-ms-examples": { + "Gets the details of a migration item.": { + "$ref": "./examples/ReplicationMigrationItems_Get.json" + } + } + }, + "put": { + "tags": [ + "ReplicationMigrationItems" + ], + "summary": "Enables migration.", + "description": "The operation to create an ASR migration item (enable migration).", + "operationId": "ReplicationMigrationItems_Create", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "migrationItemName", + "in": "path", + "description": "Migration item name.", + "required": true, + "type": "string" + }, + { + "name": "input", + "in": "body", + "description": "Enable migration input.", + "required": true, + "schema": { + "$ref": "#/definitions/EnableMigrationInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MigrationItem" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Enables migration.": { + "$ref": "./examples/ReplicationMigrationItems_Create.json" + } + } + }, + "delete": { + "tags": [ + "ReplicationMigrationItems" + ], + "summary": "Delete the migration item.", + "description": "The operation to delete an ASR migration item.", + "operationId": "ReplicationMigrationItems_Delete", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "migrationItemName", + "in": "path", + "description": "Migration item name.", + "required": true, + "type": "string" + }, + { + "name": "deleteOption", + "in": "query", + "description": "The delete option.", + "required": false, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete the migration item.": { + "$ref": "./examples/ReplicationMigrationItems_Delete.json" + } + } + }, + "patch": { + "tags": [ + "ReplicationMigrationItems" + ], + "summary": "Updates migration item.", + "description": "The operation to update the recovery settings of an ASR migration item.", + "operationId": "ReplicationMigrationItems_Update", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "migrationItemName", + "in": "path", + "description": "Migration item name.", + "required": true, + "type": "string" + }, + { + "name": "input", + "in": "body", + "description": "Update migration item input.", + "required": true, + "schema": { + "$ref": "#/definitions/UpdateMigrationItemInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MigrationItem" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Updates migration item.": { + "$ref": "./examples/ReplicationMigrationItems_Update.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/migrate": { + "post": { + "tags": [ + "ReplicationMigrationItems" + ], + "summary": "Migrate item.", + "description": "The operation to initiate migration of the item.", + "operationId": "ReplicationMigrationItems_Migrate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "migrationItemName", + "in": "path", + "description": "Migration item name.", + "required": true, + "type": "string" + }, + { + "name": "migrateInput", + "in": "body", + "description": "Migrate input.", + "required": true, + "schema": { + "$ref": "#/definitions/MigrateInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MigrationItem" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Migrate item.": { + "$ref": "./examples/ReplicationMigrationItems_Migrate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/migrationRecoveryPoints": { + "get": { + "tags": [ + "MigrationRecoveryPoints" + ], + "summary": "Gets the recovery points for a migration item.", + "operationId": "MigrationRecoveryPoints_ListByReplicationMigrationItems", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric unique name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "migrationItemName", + "in": "path", + "description": "Migration item name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MigrationRecoveryPointCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the recovery points for a migration item.": { + "$ref": "./examples/MigrationRecoveryPoints_ListByReplicationMigrationItems.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/migrationRecoveryPoints/{migrationRecoveryPointName}": { + "get": { + "tags": [ + "MigrationRecoveryPoints" + ], + "summary": "Gets a recovery point for a migration item.", + "operationId": "MigrationRecoveryPoints_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric unique name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "migrationItemName", + "in": "path", + "description": "Migration item name.", + "required": true, + "type": "string" + }, + { + "name": "migrationRecoveryPointName", + "in": "path", + "description": "The migration recovery point name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MigrationRecoveryPoint" + } + } + }, + "x-ms-examples": { + "Gets a recovery point for a migration item.": { + "$ref": "./examples/MigrationRecoveryPoints_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/resync": { + "post": { + "tags": [ + "ReplicationMigrationItems" + ], + "summary": "Resynchronizes replication.", + "description": "The operation to resynchronize replication of an ASR migration item.", + "operationId": "ReplicationMigrationItems_Resync", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "migrationItemName", + "in": "path", + "description": "Migration item name.", + "required": true, + "type": "string" + }, + { + "name": "input", + "in": "body", + "description": "Resync input.", + "required": true, + "schema": { + "$ref": "#/definitions/ResyncInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MigrationItem" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Resynchronizes replication.": { + "$ref": "./examples/ReplicationMigrationItems_Resync.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/testMigrate": { + "post": { + "tags": [ + "ReplicationMigrationItems" + ], + "summary": "Test migrate item.", + "description": "The operation to initiate test migration of the item.", + "operationId": "ReplicationMigrationItems_TestMigrate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "migrationItemName", + "in": "path", + "description": "Migration item name.", + "required": true, + "type": "string" + }, + { + "name": "testMigrateInput", + "in": "body", + "description": "Test migrate input.", + "required": true, + "schema": { + "$ref": "#/definitions/TestMigrateInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MigrationItem" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Test migrate item.": { + "$ref": "./examples/ReplicationMigrationItems_TestMigrate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/testMigrateCleanup": { + "post": { + "tags": [ + "ReplicationMigrationItems" + ], + "summary": "Test migrate cleanup.", + "description": "The operation to initiate test migrate cleanup.", + "operationId": "ReplicationMigrationItems_TestMigrateCleanup", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "migrationItemName", + "in": "path", + "description": "Migration item name.", + "required": true, + "type": "string" + }, + { + "name": "testMigrateCleanupInput", + "in": "body", + "description": "Test migrate cleanup input.", + "required": true, + "schema": { + "$ref": "#/definitions/TestMigrateCleanupInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MigrationItem" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Test migrate cleanup.": { + "$ref": "./examples/ReplicationMigrationItems_TestMigrateCleanup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectableItems": { + "get": { + "tags": [ + "ReplicationProtectableItems" + ], + "summary": "Gets the list of protectable items.", + "description": "Lists the protectable items in a protection container.", + "operationId": "ReplicationProtectableItems_ListByReplicationProtectionContainers", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + }, + { + "name": "$take", + "in": "query", + "description": "take OData query parameter.", + "required": false, + "type": "string" + }, + { + "name": "$skipToken", + "in": "query", + "description": "skipToken OData query parameter.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectableItemCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/ProtectableItemQueryParameter", + "x-ms-examples": { + "Gets the list of protectable items.": { + "$ref": "./examples/ReplicationProtectableItems_ListByReplicationProtectionContainers.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectableItems/{protectableItemName}": { + "get": { + "tags": [ + "ReplicationProtectableItems" + ], + "summary": "Gets the details of a protectable item.", + "description": "The operation to get the details of a protectable item.", + "operationId": "ReplicationProtectableItems_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "protectableItemName", + "in": "path", + "description": "Protectable item name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectableItem" + } + } + }, + "x-ms-examples": { + "Gets the details of a protectable item.": { + "$ref": "./examples/ReplicationProtectableItems_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems": { + "get": { + "tags": [ + "ReplicationProtectedItems" + ], + "summary": "Gets the list of Replication protected items.", + "description": "Gets the list of ASR replication protected items in the protection container.", + "operationId": "ReplicationProtectedItems_ListByReplicationProtectionContainers", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationProtectedItemCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the list of Replication protected items.": { + "$ref": "./examples/ReplicationProtectedItems_ListByReplicationProtectionContainers.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}": { + "get": { + "tags": [ + "ReplicationProtectedItems" + ], + "summary": "Gets the details of a Replication protected item.", + "description": "Gets the details of an ASR replication protected item.", + "operationId": "ReplicationProtectedItems_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric unique name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "replicatedProtectedItemName", + "in": "path", + "description": "Replication protected item name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationProtectedItem" + } + } + }, + "x-ms-examples": { + "Gets the details of a Replication protected item.": { + "$ref": "./examples/ReplicationProtectedItems_Get.json" + } + } + }, + "put": { + "tags": [ + "ReplicationProtectedItems" + ], + "summary": "Enables protection.", + "description": "The operation to create an ASR replication protected item (Enable replication).", + "operationId": "ReplicationProtectedItems_Create", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Name of the fabric.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "replicatedProtectedItemName", + "in": "path", + "description": "A name for the replication protected item.", + "required": true, + "type": "string" + }, + { + "name": "input", + "in": "body", + "description": "Enable Protection Input.", + "required": true, + "schema": { + "$ref": "#/definitions/EnableProtectionInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationProtectedItem" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Enables protection.": { + "$ref": "./examples/ReplicationProtectedItems_Create.json" + } + } + }, + "delete": { + "tags": [ + "ReplicationProtectedItems" + ], + "summary": "Purges protection.", + "description": "The operation to delete or purge a replication protected item. This operation will force delete the replication protected item. Use the remove operation on replication protected item to perform a clean disable replication for the item.", + "operationId": "ReplicationProtectedItems_Purge", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "replicatedProtectedItemName", + "in": "path", + "description": "Replication protected item name.", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Purges protection.": { + "$ref": "./examples/ReplicationProtectedItems_Purge.json" + } + } + }, + "patch": { + "tags": [ + "ReplicationProtectedItems" + ], + "summary": "Updates the replication protected item settings.", + "description": "The operation to update the recovery settings of an ASR replication protected item.", + "operationId": "ReplicationProtectedItems_Update", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "replicatedProtectedItemName", + "in": "path", + "description": "Replication protected item name.", + "required": true, + "type": "string" + }, + { + "name": "updateProtectionInput", + "in": "body", + "description": "Update protection input.", + "required": true, + "schema": { + "$ref": "#/definitions/UpdateReplicationProtectedItemInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationProtectedItem" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Updates the replication protected Item settings.": { + "$ref": "./examples/ReplicationProtectedItems_Update.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/addDisks": { + "post": { + "tags": [ + "ReplicationProtectedItems" + ], + "summary": "Add disk(s) for protection.", + "description": "Operation to add disks(s) to the replication protected item.", + "operationId": "ReplicationProtectedItems_AddDisks", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Unique fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "replicatedProtectedItemName", + "in": "path", + "description": "Replication protected item name.", + "required": true, + "type": "string" + }, + { + "name": "addDisksInput", + "in": "body", + "description": "Add disks input.", + "required": true, + "schema": { + "$ref": "#/definitions/AddDisksInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationProtectedItem" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Add disk(s) for protection.": { + "$ref": "./examples/ReplicationProtectedItems_AddDisks.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/applyRecoveryPoint": { + "post": { + "tags": [ + "ReplicationProtectedItems" + ], + "summary": "Change or apply recovery point.", + "description": "The operation to change the recovery point of a failed over replication protected item.", + "operationId": "ReplicationProtectedItems_ApplyRecoveryPoint", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "The ARM fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "The protection container name.", + "required": true, + "type": "string" + }, + { + "name": "replicatedProtectedItemName", + "in": "path", + "description": "The replicated protected item name.", + "required": true, + "type": "string" + }, + { + "name": "applyRecoveryPointInput", + "in": "body", + "description": "The ApplyRecoveryPointInput.", + "required": true, + "schema": { + "$ref": "#/definitions/ApplyRecoveryPointInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationProtectedItem" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Change or apply recovery point.": { + "$ref": "./examples/ReplicationProtectedItems_ApplyRecoveryPoint.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/failoverCancel": { + "post": { + "tags": [ + "ReplicationProtectedItems" + ], + "summary": "Execute cancel failover.", + "description": "Operation to cancel the failover of the replication protected item.", + "operationId": "ReplicationProtectedItems_FailoverCancel", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Unique fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "replicatedProtectedItemName", + "in": "path", + "description": "Replication protected item name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationProtectedItem" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Execute cancel failover.": { + "$ref": "./examples/ReplicationProtectedItems_FailoverCancel.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/failoverCommit": { + "post": { + "tags": [ + "ReplicationProtectedItems" + ], + "summary": "Execute commit failover.", + "description": "Operation to commit the failover of the replication protected item.", + "operationId": "ReplicationProtectedItems_FailoverCommit", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Unique fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "replicatedProtectedItemName", + "in": "path", + "description": "Replication protected item name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationProtectedItem" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Execute commit failover.": { + "$ref": "./examples/ReplicationProtectedItems_FailoverCommit.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/plannedFailover": { + "post": { + "tags": [ + "ReplicationProtectedItems" + ], + "summary": "Execute planned failover.", + "description": "Operation to initiate a planned failover of the replication protected item.", + "operationId": "ReplicationProtectedItems_PlannedFailover", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Unique fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "replicatedProtectedItemName", + "in": "path", + "description": "Replication protected item name.", + "required": true, + "type": "string" + }, + { + "name": "failoverInput", + "in": "body", + "description": "Planned failover input.", + "required": true, + "schema": { + "$ref": "#/definitions/PlannedFailoverInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationProtectedItem" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Execute planned failover.": { + "$ref": "./examples/ReplicationProtectedItems_PlannedFailover.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/recoveryPoints": { + "get": { + "tags": [ + "RecoveryPoints" + ], + "summary": "Gets the list of recovery points for a replication protected item.", + "description": "Lists the available recovery points for a replication protected item.", + "operationId": "RecoveryPoints_ListByReplicationProtectedItems", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "The fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "The protection container name.", + "required": true, + "type": "string" + }, + { + "name": "replicatedProtectedItemName", + "in": "path", + "description": "The replication protected item name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoveryPointCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the list of recovery points for a replication protected item.": { + "$ref": "./examples/RecoveryPoints_ListByReplicationProtectedItems.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/recoveryPoints/{recoveryPointName}": { + "get": { + "tags": [ + "RecoveryPoints" + ], + "summary": "Gets a recovery point.", + "description": "Get the details of specified recovery point.", + "operationId": "RecoveryPoints_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "The fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "The protection container name.", + "required": true, + "type": "string" + }, + { + "name": "replicatedProtectedItemName", + "in": "path", + "description": "The replication protected item name.", + "required": true, + "type": "string" + }, + { + "name": "recoveryPointName", + "in": "path", + "description": "The recovery point name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoveryPoint" + } + } + }, + "x-ms-examples": { + "Gets a recovery point.": { + "$ref": "./examples/RecoveryPoints_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/remove": { + "post": { + "tags": [ + "ReplicationProtectedItems" + ], + "summary": "Disables protection.", + "description": "The operation to disable replication on a replication protected item. This will also remove the item.", + "operationId": "ReplicationProtectedItems_Delete", + "consumes": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "replicatedProtectedItemName", + "in": "path", + "description": "Replication protected item name.", + "required": true, + "type": "string" + }, + { + "name": "disableProtectionInput", + "in": "body", + "description": "Disable protection input.", + "required": true, + "schema": { + "$ref": "#/definitions/DisableProtectionInput" + } + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Disables protection.": { + "$ref": "./examples/ReplicationProtectedItems_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/removeDisks": { + "post": { + "tags": [ + "ReplicationProtectedItems" + ], + "summary": "Removes disk(s).", + "description": "Operation to remove disk(s) from the replication protected item.", + "operationId": "ReplicationProtectedItems_RemoveDisks", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Unique fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "replicatedProtectedItemName", + "in": "path", + "description": "Replication protected item name.", + "required": true, + "type": "string" + }, + { + "name": "removeDisksInput", + "in": "body", + "description": "Remove disks input.", + "required": true, + "schema": { + "$ref": "#/definitions/RemoveDisksInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationProtectedItem" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Removes disk(s).": { + "$ref": "./examples/ReplicationProtectedItems_RemoveDisks.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/repairReplication": { + "post": { + "tags": [ + "ReplicationProtectedItems" + ], + "summary": "Resynchronize or repair replication.", + "description": "The operation to start resynchronize/repair replication for a replication protected item requiring resynchronization.", + "operationId": "ReplicationProtectedItems_RepairReplication", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "The name of the fabric.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "replicatedProtectedItemName", + "in": "path", + "description": "The name of the replication protected item.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationProtectedItem" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Resynchronize or repair replication.": { + "$ref": "./examples/ReplicationProtectedItems_RepairReplication.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/reProtect": { + "post": { + "tags": [ + "ReplicationProtectedItems" + ], + "summary": "Execute Reverse Replication\\Reprotect.", + "description": "Operation to reprotect or reverse replicate a failed over replication protected item.", + "operationId": "ReplicationProtectedItems_Reprotect", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Unique fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "replicatedProtectedItemName", + "in": "path", + "description": "Replication protected item name.", + "required": true, + "type": "string" + }, + { + "name": "reprotectInput", + "in": "body", + "description": "Reverse replication input.", + "required": true, + "schema": { + "$ref": "#/definitions/ReverseReplicationInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationProtectedItem" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Execute Reverse Replication\\Reprotect.": { + "$ref": "./examples/ReplicationProtectedItems_Reprotect.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/resolveHealthErrors": { + "post": { + "tags": [ + "ReplicationProtectedItems" + ], + "summary": "Resolve health errors.", + "description": "Operation to resolve health issues of the replication protected item.", + "operationId": "ReplicationProtectedItems_ResolveHealthErrors", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Unique fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "replicatedProtectedItemName", + "in": "path", + "description": "Replication protected item name.", + "required": true, + "type": "string" + }, + { + "name": "resolveHealthInput", + "in": "body", + "description": "Health issue input object.", + "required": true, + "schema": { + "$ref": "#/definitions/ResolveHealthInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationProtectedItem" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Resolve health errors.": { + "$ref": "./examples/ReplicationProtectedItems_ResolveHealthErrors.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/targetComputeSizes": { + "get": { + "tags": [ + "TargetComputeSizes" + ], + "summary": "Gets the list of target compute sizes for the replication protected item.", + "description": "Lists the available target compute sizes for a replication protected item.", + "operationId": "TargetComputeSizes_ListByReplicationProtectedItems", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "protection container name.", + "required": true, + "type": "string" + }, + { + "name": "replicatedProtectedItemName", + "in": "path", + "description": "Replication protected item name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TargetComputeSizeCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the list of target compute sizes for the replication protected item.": { + "$ref": "./examples/TargetComputeSizes_ListByReplicationProtectedItems.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/testFailover": { + "post": { + "tags": [ + "ReplicationProtectedItems" + ], + "summary": "Execute test failover.", + "description": "Operation to perform a test failover of the replication protected item.", + "operationId": "ReplicationProtectedItems_TestFailover", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Unique fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "replicatedProtectedItemName", + "in": "path", + "description": "Replication protected item name.", + "required": true, + "type": "string" + }, + { + "name": "testfailoverInput", + "in": "body", + "description": "Test failover input.", + "required": true, + "schema": { + "$ref": "#/definitions/TestFailoverInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationProtectedItem" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Execute test failover.": { + "$ref": "./examples/ReplicationProtectedItems_TestFailover.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/testFailoverCleanup": { + "post": { + "tags": [ + "ReplicationProtectedItems" + ], + "summary": "Execute test failover cleanup.", + "description": "Operation to clean up the test failover of a replication protected item.", + "operationId": "ReplicationProtectedItems_TestFailoverCleanup", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Unique fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "replicatedProtectedItemName", + "in": "path", + "description": "Replication protected item name.", + "required": true, + "type": "string" + }, + { + "name": "cleanupInput", + "in": "body", + "description": "Test failover cleanup input.", + "required": true, + "schema": { + "$ref": "#/definitions/TestFailoverCleanupInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationProtectedItem" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Execute test failover cleanup.": { + "$ref": "./examples/ReplicationProtectedItems_TestFailoverCleanup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/unplannedFailover": { + "post": { + "tags": [ + "ReplicationProtectedItems" + ], + "summary": "Execute unplanned failover.", + "description": "Operation to initiate a failover of the replication protected item.", + "operationId": "ReplicationProtectedItems_UnplannedFailover", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Unique fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "replicatedProtectedItemName", + "in": "path", + "description": "Replication protected item name.", + "required": true, + "type": "string" + }, + { + "name": "failoverInput", + "in": "body", + "description": "Failover input.", + "required": true, + "schema": { + "$ref": "#/definitions/UnplannedFailoverInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationProtectedItem" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Execute unplanned failover.": { + "$ref": "./examples/ReplicationProtectedItems_UnplannedFailover.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicationProtectedItemName}/updateMobilityService": { + "post": { + "tags": [ + "ReplicationProtectedItems" + ], + "summary": "Update the mobility service on a protected item.", + "description": "The operation to update(push update) the installed mobility service software on a replication protected item to the latest available version.", + "operationId": "ReplicationProtectedItems_UpdateMobilityService", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "The name of the fabric containing the protected item.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "The name of the container containing the protected item.", + "required": true, + "type": "string" + }, + { + "name": "replicationProtectedItemName", + "in": "path", + "description": "The name of the protected item on which the agent is to be updated.", + "required": true, + "type": "string" + }, + { + "name": "updateMobilityServiceRequest", + "in": "body", + "description": "Request to update the mobility service on the protected item.", + "required": true, + "schema": { + "$ref": "#/definitions/UpdateMobilityServiceRequest" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationProtectedItem" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update the mobility service on a protected item.": { + "$ref": "./examples/ReplicationProtectedItems_UpdateMobilityService.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectionContainerMappings": { + "get": { + "tags": [ + "ReplicationProtectionContainerMappings" + ], + "summary": "Gets the list of protection container mappings for a protection container.", + "description": "Lists the protection container mappings for a protection container.", + "operationId": "ReplicationProtectionContainerMappings_ListByReplicationProtectionContainers", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionContainerMappingCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the list of protection container mappings for a protection container.": { + "$ref": "./examples/ReplicationProtectionContainerMappings_ListByReplicationProtectionContainers.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectionContainerMappings/{mappingName}": { + "get": { + "tags": [ + "ReplicationProtectionContainerMappings" + ], + "summary": "Gets a protection container mapping.", + "description": "Gets the details of a protection container mapping.", + "operationId": "ReplicationProtectionContainerMappings_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "mappingName", + "in": "path", + "description": "Protection Container mapping name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionContainerMapping" + } + } + }, + "x-ms-examples": { + "Gets a protection container mapping.": { + "$ref": "./examples/ReplicationProtectionContainerMappings_Get.json" + } + } + }, + "put": { + "tags": [ + "ReplicationProtectionContainerMappings" + ], + "summary": "Create protection container mapping.", + "description": "The operation to create a protection container mapping.", + "operationId": "ReplicationProtectionContainerMappings_Create", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "mappingName", + "in": "path", + "description": "Protection container mapping name.", + "required": true, + "type": "string" + }, + { + "name": "creationInput", + "in": "body", + "description": "Mapping creation input.", + "required": true, + "schema": { + "$ref": "#/definitions/CreateProtectionContainerMappingInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionContainerMapping" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create protection container mapping.": { + "$ref": "./examples/ReplicationProtectionContainerMappings_Create.json" + } + } + }, + "delete": { + "tags": [ + "ReplicationProtectionContainerMappings" + ], + "summary": "Purge protection container mapping.", + "description": "The operation to purge(force delete) a protection container mapping.", + "operationId": "ReplicationProtectionContainerMappings_Purge", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "mappingName", + "in": "path", + "description": "Protection container mapping name.", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Purge protection container mapping.": { + "$ref": "./examples/ReplicationProtectionContainerMappings_Purge.json" + } + } + }, + "patch": { + "tags": [ + "ReplicationProtectionContainerMappings" + ], + "summary": "Update protection container mapping.", + "description": "The operation to update protection container mapping.", + "operationId": "ReplicationProtectionContainerMappings_Update", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "mappingName", + "in": "path", + "description": "Protection container mapping name.", + "required": true, + "type": "string" + }, + { + "name": "updateInput", + "in": "body", + "description": "Mapping update input.", + "required": true, + "schema": { + "$ref": "#/definitions/UpdateProtectionContainerMappingInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionContainerMapping" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update protection container mapping.": { + "$ref": "./examples/ReplicationProtectionContainerMappings_Update.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectionContainerMappings/{mappingName}/remove": { + "post": { + "tags": [ + "ReplicationProtectionContainerMappings" + ], + "summary": "Remove protection container mapping.", + "description": "The operation to delete or remove a protection container mapping.", + "operationId": "ReplicationProtectionContainerMappings_Delete", + "consumes": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "mappingName", + "in": "path", + "description": "Protection container mapping name.", + "required": true, + "type": "string" + }, + { + "name": "removalInput", + "in": "body", + "description": "Removal input.", + "required": true, + "schema": { + "$ref": "#/definitions/RemoveProtectionContainerMappingInput" + } + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Remove protection container mapping.": { + "$ref": "./examples/ReplicationProtectionContainerMappings_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/switchprotection": { + "post": { + "tags": [ + "ReplicationProtectionContainers" + ], + "summary": "Switches protection from one container to another or one replication provider to another.", + "description": "Operation to switch protection from one container to another or one replication provider to another.", + "operationId": "ReplicationProtectionContainers_SwitchProtection", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Unique fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "switchInput", + "in": "body", + "description": "Switch protection input.", + "required": true, + "schema": { + "$ref": "#/definitions/SwitchProtectionInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionContainer" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Switches protection from one container to another or one replication provider to another.": { + "$ref": "./examples/ReplicationProtectionContainers_SwitchProtection.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationRecoveryServicesProviders": { + "get": { + "tags": [ + "ReplicationRecoveryServicesProviders" + ], + "summary": "Gets the list of registered recovery services providers for the fabric.", + "description": "Lists the registered recovery services providers for the specified fabric.", + "operationId": "ReplicationRecoveryServicesProviders_ListByReplicationFabrics", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoveryServicesProviderCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the list of registered recovery services providers for the fabric.": { + "$ref": "./examples/ReplicationRecoveryServicesProviders_ListByReplicationFabrics.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationRecoveryServicesProviders/{providerName}": { + "get": { + "tags": [ + "ReplicationRecoveryServicesProviders" + ], + "summary": "Gets the details of a recovery services provider.", + "description": "Gets the details of registered recovery services provider.", + "operationId": "ReplicationRecoveryServicesProviders_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Recovery services provider name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoveryServicesProvider" + } + } + }, + "x-ms-examples": { + "Gets the details of a recovery services provider.": { + "$ref": "./examples/ReplicationRecoveryServicesProviders_Get.json" + } + } + }, + "put": { + "tags": [ + "ReplicationRecoveryServicesProviders" + ], + "summary": "Adds a recovery services provider.", + "description": "The operation to add a recovery services provider.", + "operationId": "ReplicationRecoveryServicesProviders_Create", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Recovery services provider name.", + "required": true, + "type": "string" + }, + { + "name": "addProviderInput", + "in": "body", + "description": "Add provider input.", + "required": true, + "schema": { + "$ref": "#/definitions/AddRecoveryServicesProviderInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoveryServicesProvider" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Adds a recovery services provider.": { + "$ref": "./examples/ReplicationRecoveryServicesProviders_Create.json" + } + } + }, + "delete": { + "tags": [ + "ReplicationRecoveryServicesProviders" + ], + "summary": "Purges recovery service provider from fabric.", + "description": "The operation to purge(force delete) a recovery services provider from the vault.", + "operationId": "ReplicationRecoveryServicesProviders_Purge", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Recovery services provider name.", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Purges recovery service provider from fabric.": { + "$ref": "./examples/ReplicationRecoveryServicesProviders_Purge.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationRecoveryServicesProviders/{providerName}/refreshProvider": { + "post": { + "tags": [ + "ReplicationRecoveryServicesProviders" + ], + "summary": "Refresh details from the recovery services provider.", + "description": "The operation to refresh the information from the recovery services provider.", + "operationId": "ReplicationRecoveryServicesProviders_RefreshProvider", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Recovery services provider name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoveryServicesProvider" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Refresh details from the recovery services provider.": { + "$ref": "./examples/ReplicationRecoveryServicesProviders_RefreshProvider.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationRecoveryServicesProviders/{providerName}/remove": { + "post": { + "tags": [ + "ReplicationRecoveryServicesProviders" + ], + "summary": "Deletes provider from fabric. Note: Deleting provider for any fabric other than SingleHost is unsupported. To maintain backward compatibility for released clients the object \"deleteRspInput\" is used (if the object is empty we assume that it is old client and continue the old behavior).", + "description": "The operation to removes/delete(unregister) a recovery services provider from the vault.", + "operationId": "ReplicationRecoveryServicesProviders_Delete", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Recovery services provider name.", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Deletes provider from fabric. Note: Deleting provider for any fabric other than SingleHost is unsupported. To maintain backward compatibility for released clients the object \"deleteRspInput\" is used (if the object is empty we assume that it is old client and continue the old behavior).": { + "$ref": "./examples/ReplicationRecoveryServicesProviders_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationStorageClassifications": { + "get": { + "tags": [ + "ReplicationStorageClassifications" + ], + "summary": "Gets the list of storage classification objects under a fabric.", + "description": "Lists the storage classifications available in the specified fabric.", + "operationId": "ReplicationStorageClassifications_ListByReplicationFabrics", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Site name of interest.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/StorageClassificationCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the list of storage classification objects under a fabric.": { + "$ref": "./examples/ReplicationStorageClassifications_ListByReplicationFabrics.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationStorageClassifications/{storageClassificationName}": { + "get": { + "tags": [ + "ReplicationStorageClassifications" + ], + "summary": "Gets the details of a storage classification.", + "description": "Gets the details of the specified storage classification.", + "operationId": "ReplicationStorageClassifications_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "storageClassificationName", + "in": "path", + "description": "Storage classification name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/StorageClassification" + } + } + }, + "x-ms-examples": { + "Gets the details of a storage classification.": { + "$ref": "./examples/ReplicationStorageClassifications_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationStorageClassifications/{storageClassificationName}/replicationStorageClassificationMappings": { + "get": { + "tags": [ + "ReplicationStorageClassificationMappings" + ], + "summary": "Gets the list of storage classification mappings objects under a storage.", + "description": "Lists the storage classification mappings for the fabric.", + "operationId": "ReplicationStorageClassificationMappings_ListByReplicationStorageClassifications", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "storageClassificationName", + "in": "path", + "description": "Storage classification name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/StorageClassificationMappingCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the list of storage classification mappings objects under a storage.": { + "$ref": "./examples/ReplicationStorageClassificationMappings_ListByReplicationStorageClassifications.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationStorageClassifications/{storageClassificationName}/replicationStorageClassificationMappings/{storageClassificationMappingName}": { + "get": { + "tags": [ + "ReplicationStorageClassificationMappings" + ], + "summary": "Gets the details of a storage classification mapping.", + "description": "Gets the details of the specified storage classification mapping.", + "operationId": "ReplicationStorageClassificationMappings_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "storageClassificationName", + "in": "path", + "description": "Storage classification name.", + "required": true, + "type": "string" + }, + { + "name": "storageClassificationMappingName", + "in": "path", + "description": "Storage classification mapping name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/StorageClassificationMapping" + } + } + }, + "x-ms-examples": { + "Gets the details of a storage classification mapping.": { + "$ref": "./examples/ReplicationStorageClassificationMappings_Get.json" + } + } + }, + "put": { + "tags": [ + "ReplicationStorageClassificationMappings" + ], + "summary": "Create storage classification mapping.", + "description": "The operation to create a storage classification mapping.", + "operationId": "ReplicationStorageClassificationMappings_Create", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "storageClassificationName", + "in": "path", + "description": "Storage classification name.", + "required": true, + "type": "string" + }, + { + "name": "storageClassificationMappingName", + "in": "path", + "description": "Storage classification mapping name.", + "required": true, + "type": "string" + }, + { + "name": "pairingInput", + "in": "body", + "description": "Pairing input.", + "required": true, + "schema": { + "$ref": "#/definitions/StorageClassificationMappingInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/StorageClassificationMapping" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create storage classification mapping.": { + "$ref": "./examples/ReplicationStorageClassificationMappings_Create.json" + } + } + }, + "delete": { + "tags": [ + "ReplicationStorageClassificationMappings" + ], + "summary": "Delete a storage classification mapping.", + "description": "The operation to delete a storage classification mapping.", + "operationId": "ReplicationStorageClassificationMappings_Delete", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "storageClassificationName", + "in": "path", + "description": "Storage classification name.", + "required": true, + "type": "string" + }, + { + "name": "storageClassificationMappingName", + "in": "path", + "description": "Storage classification mapping name.", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete a storage classification mapping.": { + "$ref": "./examples/ReplicationStorageClassificationMappings_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationvCenters": { + "get": { + "tags": [ + "ReplicationvCenters" + ], + "summary": "Gets the list of vCenter registered under a fabric.", + "description": "Lists the vCenter servers registered in a fabric.", + "operationId": "ReplicationvCenters_ListByReplicationFabrics", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VCenterCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the list of vCenter registered under a fabric.": { + "$ref": "./examples/ReplicationvCenters_ListByReplicationFabrics.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationvCenters/{vcenterName}": { + "get": { + "tags": [ + "ReplicationvCenters" + ], + "summary": "Gets the details of a vCenter.", + "description": "Gets the details of a registered vCenter server(Add vCenter server).", + "operationId": "ReplicationvCenters_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "vcenterName", + "in": "path", + "description": "vcenter name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VCenter" + } + } + }, + "x-ms-examples": { + "Gets the details of a vCenter.": { + "$ref": "./examples/ReplicationvCenters_Get.json" + } + } + }, + "put": { + "tags": [ + "ReplicationvCenters" + ], + "summary": "Add vCenter.", + "description": "The operation to create a vCenter object..", + "operationId": "ReplicationvCenters_Create", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "vcenterName", + "in": "path", + "description": "vcenter name.", + "required": true, + "type": "string" + }, + { + "name": "addVCenterRequest", + "in": "body", + "description": "The input to the add vCenter operation.", + "required": true, + "schema": { + "$ref": "#/definitions/AddVCenterRequest" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VCenter" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Add vCenter.": { + "$ref": "./examples/ReplicationvCenters_Create.json" + } + } + }, + "delete": { + "tags": [ + "ReplicationvCenters" + ], + "summary": "Remove vcenter operation.", + "description": "The operation to remove(unregister) a registered vCenter server from the vault.", + "operationId": "ReplicationvCenters_Delete", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "vcenterName", + "in": "path", + "description": "vcenter name.", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Remove vCenter operation.": { + "$ref": "./examples/ReplicationvCenters_Delete.json" + } + } + }, + "patch": { + "tags": [ + "ReplicationvCenters" + ], + "summary": "Update vCenter operation.", + "description": "The operation to update a registered vCenter.", + "operationId": "ReplicationvCenters_Update", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "vcenterName", + "in": "path", + "description": "vcenter name.", + "required": true, + "type": "string" + }, + { + "name": "updateVCenterRequest", + "in": "body", + "description": "The input to the update vCenter operation.", + "required": true, + "schema": { + "$ref": "#/definitions/UpdateVCenterRequest" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VCenter" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update vCenter operation.": { + "$ref": "./examples/ReplicationvCenters_Update.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationJobs": { + "get": { + "tags": [ + "ReplicationJobs" + ], + "summary": "Gets the list of jobs.", + "description": "Gets the list of Azure Site Recovery Jobs for the vault.", + "operationId": "ReplicationJobs_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/JobCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/JobQueryParameter", + "x-ms-examples": { + "Gets the list of jobs.": { + "$ref": "./examples/ReplicationJobs_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationJobs/{jobName}": { + "get": { + "tags": [ + "ReplicationJobs" + ], + "summary": "Gets the job details.", + "description": "Get the details of an Azure Site Recovery job.", + "operationId": "ReplicationJobs_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "jobName", + "in": "path", + "description": "Job identifier.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Job" + } + } + }, + "x-ms-examples": { + "Gets the job details.": { + "$ref": "./examples/ReplicationJobs_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationJobs/{jobName}/cancel": { + "post": { + "tags": [ + "ReplicationJobs" + ], + "summary": "Cancels the specified job.", + "description": "The operation to cancel an Azure Site Recovery job.", + "operationId": "ReplicationJobs_Cancel", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "jobName", + "in": "path", + "description": "Job identifier.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Job" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Cancels the specified job.": { + "$ref": "./examples/ReplicationJobs_Cancel.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationJobs/{jobName}/restart": { + "post": { + "tags": [ + "ReplicationJobs" + ], + "summary": "Restarts the specified job.", + "description": "The operation to restart an Azure Site Recovery job.", + "operationId": "ReplicationJobs_Restart", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "jobName", + "in": "path", + "description": "Job identifier.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Job" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Restarts the specified job.": { + "$ref": "./examples/ReplicationJobs_Restart.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationJobs/{jobName}/resume": { + "post": { + "tags": [ + "ReplicationJobs" + ], + "summary": "Resumes the specified job.", + "description": "The operation to resume an Azure Site Recovery job.", + "operationId": "ReplicationJobs_Resume", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "jobName", + "in": "path", + "description": "Job identifier.", + "required": true, + "type": "string" + }, + { + "name": "resumeJobParams", + "in": "body", + "description": "Resume rob comments.", + "required": true, + "schema": { + "$ref": "#/definitions/ResumeJobParams" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Job" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Resumes the specified job.": { + "$ref": "./examples/ReplicationJobs_Resume.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationJobs/export": { + "post": { + "tags": [ + "ReplicationJobs" + ], + "summary": "Exports the details of the Azure Site Recovery jobs of the vault.", + "description": "The operation to export the details of the Azure Site Recovery jobs of the vault.", + "operationId": "ReplicationJobs_Export", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "jobQueryParameter", + "in": "body", + "description": "job query filter.", + "required": true, + "schema": { + "$ref": "#/definitions/JobQueryParameter" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Job" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Exports the details of the Azure Site Recovery jobs of the vault.": { + "$ref": "./examples/ReplicationJobs_Export.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationMigrationItems": { + "get": { + "tags": [ + "ReplicationMigrationItems" + ], + "summary": "Gets the list of migration items in the vault.", + "operationId": "ReplicationMigrationItems_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "skipToken", + "in": "query", + "description": "The pagination token.", + "required": false, + "type": "string" + }, + { + "name": "takeToken", + "in": "query", + "description": "The page size.", + "required": false, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MigrationItemCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/MigrationItemsQueryParameter", + "x-ms-examples": { + "Gets the list of migration items in the vault.": { + "$ref": "./examples/ReplicationMigrationItems_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationNetworkMappings": { + "get": { + "tags": [ + "ReplicationNetworkMappings" + ], + "summary": "Gets all the network mappings under a vault.", + "description": "Lists all ASR network mappings in the vault.", + "operationId": "ReplicationNetworkMappings_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/NetworkMappingCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets all the network mappings under a vault.": { + "$ref": "./examples/ReplicationNetworkMappings_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationNetworks": { + "get": { + "tags": [ + "ReplicationNetworks" + ], + "summary": "Gets the list of networks. View-only API.", + "description": "Lists the networks available in a vault.", + "operationId": "ReplicationNetworks_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/NetworkCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the list of networks. View-only API.": { + "$ref": "./examples/ReplicationNetworks_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationPolicies": { + "get": { + "tags": [ + "ReplicationPolicies" + ], + "summary": "Gets the list of replication policies.", + "description": "Lists the replication policies for a vault.", + "operationId": "ReplicationPolicies_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PolicyCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the list of replication policies.": { + "$ref": "./examples/ReplicationPolicies_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationPolicies/{policyName}": { + "get": { + "tags": [ + "ReplicationPolicies" + ], + "summary": "Gets the requested policy.", + "description": "Gets the details of a replication policy.", + "operationId": "ReplicationPolicies_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "policyName", + "in": "path", + "description": "Replication policy name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Policy" + } + } + }, + "x-ms-examples": { + "Gets the requested policy.": { + "$ref": "./examples/ReplicationPolicies_Get.json" + } + } + }, + "put": { + "tags": [ + "ReplicationPolicies" + ], + "summary": "Creates the policy.", + "description": "The operation to create a replication policy.", + "operationId": "ReplicationPolicies_Create", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "policyName", + "in": "path", + "description": "Replication policy name.", + "required": true, + "type": "string" + }, + { + "name": "input", + "in": "body", + "description": "Create policy input.", + "required": true, + "schema": { + "$ref": "#/definitions/CreatePolicyInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Policy" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Creates the policy.": { + "$ref": "./examples/ReplicationPolicies_Create.json" + } + } + }, + "delete": { + "tags": [ + "ReplicationPolicies" + ], + "summary": "Delete the policy.", + "description": "The operation to delete a replication policy.", + "operationId": "ReplicationPolicies_Delete", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "policyName", + "in": "path", + "description": "Replication policy name.", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete the policy.": { + "$ref": "./examples/ReplicationPolicies_Delete.json" + } + } + }, + "patch": { + "tags": [ + "ReplicationPolicies" + ], + "summary": "Updates the policy.", + "description": "The operation to update a replication policy.", + "operationId": "ReplicationPolicies_Update", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "policyName", + "in": "path", + "description": "Policy Id.", + "required": true, + "type": "string" + }, + { + "name": "input", + "in": "body", + "description": "Update Policy Input.", + "required": true, + "schema": { + "$ref": "#/definitions/UpdatePolicyInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Policy" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Updates the policy.": { + "$ref": "./examples/ReplicationPolicies_Update.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationProtectedItems": { + "get": { + "tags": [ + "ReplicationProtectedItems" + ], + "summary": "Gets the list of replication protected items.", + "description": "Gets the list of ASR replication protected items in the vault.", + "operationId": "ReplicationProtectedItems_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "skipToken", + "in": "query", + "description": "The pagination token. Possible values: \"FabricId\" or \"FabricId_CloudId\" or null.", + "required": false, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationProtectedItemCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/ProtectedItemsQueryParameter", + "x-ms-examples": { + "Gets the list of replication protected items.": { + "$ref": "./examples/ReplicationProtectedItems_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationProtectionContainerMappings": { + "get": { + "tags": [ + "ReplicationProtectionContainerMappings" + ], + "summary": "Gets the list of all protection container mappings in a vault.", + "description": "Lists the protection container mappings in the vault.", + "operationId": "ReplicationProtectionContainerMappings_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionContainerMappingCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the list of all protection container mappings in a vault.": { + "$ref": "./examples/ReplicationProtectionContainerMappings_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationProtectionContainers": { + "get": { + "tags": [ + "ReplicationProtectionContainers" + ], + "summary": "Gets the list of all protection containers in a vault.", + "description": "Lists the protection containers in a vault.", + "operationId": "ReplicationProtectionContainers_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionContainerCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the list of all protection containers in a vault.": { + "$ref": "./examples/ReplicationProtectionContainers_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationProtectionIntents": { + "get": { + "tags": [ + "ReplicationProtectionIntents" + ], + "summary": "Gets the list of replication protection intent objects.", + "description": "Gets the list of ASR replication protection intent objects in the vault.", + "operationId": "ReplicationProtectionIntents_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "skipToken", + "in": "query", + "description": "The pagination token.", + "required": false, + "type": "string" + }, + { + "name": "takeToken", + "in": "query", + "description": "The page size.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationProtectionIntentCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the list of replication protection intent objects.": { + "$ref": "./examples/ReplicationProtectionIntents_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationProtectionIntents/{intentObjectName}": { + "get": { + "tags": [ + "ReplicationProtectionIntents" + ], + "summary": "Gets the details of a Replication protection intent item.", + "description": "Gets the details of an ASR replication protection intent.", + "operationId": "ReplicationProtectionIntents_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "intentObjectName", + "in": "path", + "description": "Replication protection intent name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationProtectionIntent" + } + } + }, + "x-ms-examples": { + "Gets the details of a Replication protection intent item.": { + "$ref": "./examples/ReplicationProtectionIntents_Get.json" + } + } + }, + "put": { + "tags": [ + "ReplicationProtectionIntents" + ], + "summary": "Create protection intent Resource.", + "description": "The operation to create an ASR replication protection intent item.", + "operationId": "ReplicationProtectionIntents_Create", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "intentObjectName", + "in": "path", + "description": "A name for the replication protection item.", + "required": true, + "type": "string" + }, + { + "name": "input", + "in": "body", + "description": "Create Protection Intent Input.", + "required": true, + "schema": { + "$ref": "#/definitions/CreateProtectionIntentInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationProtectionIntent" + } + } + }, + "x-ms-examples": { + "Create protection intent Resource.": { + "$ref": "./examples/ReplicationProtectionIntents_Create.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans": { + "get": { + "tags": [ + "ReplicationRecoveryPlans" + ], + "summary": "Gets the list of recovery plans.", + "description": "Lists the recovery plans in the vault.", + "operationId": "ReplicationRecoveryPlans_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoveryPlanCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the list of recovery plans.": { + "$ref": "./examples/ReplicationRecoveryPlans_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}": { + "get": { + "tags": [ + "ReplicationRecoveryPlans" + ], + "summary": "Gets the requested recovery plan.", + "description": "Gets the details of the recovery plan.", + "operationId": "ReplicationRecoveryPlans_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "recoveryPlanName", + "in": "path", + "description": "Name of the recovery plan.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoveryPlan" + } + } + }, + "x-ms-examples": { + "Gets the requested recovery plan.": { + "$ref": "./examples/ReplicationRecoveryPlans_Get.json" + } + } + }, + "put": { + "tags": [ + "ReplicationRecoveryPlans" + ], + "summary": "Creates a recovery plan with the given details.", + "description": "The operation to create a recovery plan.", + "operationId": "ReplicationRecoveryPlans_Create", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "recoveryPlanName", + "in": "path", + "description": "Recovery plan name.", + "required": true, + "type": "string" + }, + { + "name": "input", + "in": "body", + "description": "Recovery Plan creation input.", + "required": true, + "schema": { + "$ref": "#/definitions/CreateRecoveryPlanInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoveryPlan" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Creates a recovery plan with the given details.": { + "$ref": "./examples/ReplicationRecoveryPlans_Create.json" + } + } + }, + "delete": { + "tags": [ + "ReplicationRecoveryPlans" + ], + "summary": "Deletes the specified recovery plan.", + "description": "Delete a recovery plan.", + "operationId": "ReplicationRecoveryPlans_Delete", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "recoveryPlanName", + "in": "path", + "description": "Recovery plan name.", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Deletes the specified recovery plan.": { + "$ref": "./examples/ReplicationRecoveryPlans_Delete.json" + } + } + }, + "patch": { + "tags": [ + "ReplicationRecoveryPlans" + ], + "summary": "Updates the given recovery plan.", + "description": "The operation to update a recovery plan.", + "operationId": "ReplicationRecoveryPlans_Update", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "recoveryPlanName", + "in": "path", + "description": "Recovery plan name.", + "required": true, + "type": "string" + }, + { + "name": "input", + "in": "body", + "description": "Update recovery plan input.", + "required": true, + "schema": { + "$ref": "#/definitions/UpdateRecoveryPlanInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoveryPlan" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Updates the given recovery plan.": { + "$ref": "./examples/ReplicationRecoveryPlans_Update.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}/failoverCancel": { + "post": { + "tags": [ + "ReplicationRecoveryPlans" + ], + "summary": "Execute cancel failover of the recovery plan.", + "description": "The operation to cancel the failover of a recovery plan.", + "operationId": "ReplicationRecoveryPlans_FailoverCancel", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "recoveryPlanName", + "in": "path", + "description": "Recovery plan name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoveryPlan" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Execute cancel failover of the recovery plan.": { + "$ref": "./examples/ReplicationRecoveryPlans_FailoverCancel.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}/failoverCommit": { + "post": { + "tags": [ + "ReplicationRecoveryPlans" + ], + "summary": "Execute commit failover of the recovery plan.", + "description": "The operation to commit the failover of a recovery plan.", + "operationId": "ReplicationRecoveryPlans_FailoverCommit", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "recoveryPlanName", + "in": "path", + "description": "Recovery plan name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoveryPlan" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Execute commit failover of the recovery plan.": { + "$ref": "./examples/ReplicationRecoveryPlans_FailoverCommit.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}/plannedFailover": { + "post": { + "tags": [ + "ReplicationRecoveryPlans" + ], + "summary": "Execute planned failover of the recovery plan.", + "description": "The operation to start the planned failover of a recovery plan.", + "operationId": "ReplicationRecoveryPlans_PlannedFailover", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "recoveryPlanName", + "in": "path", + "description": "Recovery plan name.", + "required": true, + "type": "string" + }, + { + "name": "input", + "in": "body", + "description": "Failover input.", + "required": true, + "schema": { + "$ref": "#/definitions/RecoveryPlanPlannedFailoverInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoveryPlan" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Execute planned failover of the recovery plan.": { + "$ref": "./examples/ReplicationRecoveryPlans_PlannedFailover.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}/reProtect": { + "post": { + "tags": [ + "ReplicationRecoveryPlans" + ], + "summary": "Execute reprotect of the recovery plan.", + "description": "The operation to reprotect(reverse replicate) a recovery plan.", + "operationId": "ReplicationRecoveryPlans_Reprotect", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "recoveryPlanName", + "in": "path", + "description": "Recovery plan name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoveryPlan" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Execute reprotect of the recovery plan.": { + "$ref": "./examples/ReplicationRecoveryPlans_Reprotect.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}/testFailover": { + "post": { + "tags": [ + "ReplicationRecoveryPlans" + ], + "summary": "Execute test failover of the recovery plan.", + "description": "The operation to start the test failover of a recovery plan.", + "operationId": "ReplicationRecoveryPlans_TestFailover", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "recoveryPlanName", + "in": "path", + "description": "Recovery plan name.", + "required": true, + "type": "string" + }, + { + "name": "input", + "in": "body", + "description": "Recovery plan test failover input.", + "required": true, + "schema": { + "$ref": "#/definitions/RecoveryPlanTestFailoverInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoveryPlan" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Execute test failover of the recovery plan.": { + "$ref": "./examples/ReplicationRecoveryPlans_TestFailover.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}/testFailoverCleanup": { + "post": { + "tags": [ + "ReplicationRecoveryPlans" + ], + "summary": "Execute test failover cleanup of the recovery plan.", + "description": "The operation to cleanup test failover of a recovery plan.", + "operationId": "ReplicationRecoveryPlans_TestFailoverCleanup", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "recoveryPlanName", + "in": "path", + "description": "Recovery plan name.", + "required": true, + "type": "string" + }, + { + "name": "input", + "in": "body", + "description": "Recovery plan test failover cleanup input.", + "required": true, + "schema": { + "$ref": "#/definitions/RecoveryPlanTestFailoverCleanupInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoveryPlan" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Execute test failover cleanup of the recovery plan.": { + "$ref": "./examples/ReplicationRecoveryPlans_TestFailoverCleanup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}/unplannedFailover": { + "post": { + "tags": [ + "ReplicationRecoveryPlans" + ], + "summary": "Execute unplanned failover of the recovery plan.", + "description": "The operation to start the unplanned failover of a recovery plan.", + "operationId": "ReplicationRecoveryPlans_UnplannedFailover", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "recoveryPlanName", + "in": "path", + "description": "Recovery plan name.", + "required": true, + "type": "string" + }, + { + "name": "input", + "in": "body", + "description": "Recovery plan unplanned failover input.", + "required": true, + "schema": { + "$ref": "#/definitions/RecoveryPlanUnplannedFailoverInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoveryPlan" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Execute unplanned failover of the recovery plan.": { + "$ref": "./examples/ReplicationRecoveryPlans_UnplannedFailover.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryServicesProviders": { + "get": { + "tags": [ + "ReplicationRecoveryServicesProviders" + ], + "summary": "Gets the list of registered recovery services providers in the vault. This is a view only api.", + "description": "Lists the registered recovery services providers in the vault.", + "operationId": "ReplicationRecoveryServicesProviders_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoveryServicesProviderCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the list of registered recovery services providers in the vault. This is a view only api.": { + "$ref": "./examples/ReplicationRecoveryServicesProviders_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationStorageClassificationMappings": { + "get": { + "tags": [ + "ReplicationStorageClassificationMappings" + ], + "summary": "Gets the list of storage classification mappings objects under a vault.", + "description": "Lists the storage classification mappings in the vault.", + "operationId": "ReplicationStorageClassificationMappings_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/StorageClassificationMappingCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the list of storage classification mappings objects under a vault.": { + "$ref": "./examples/ReplicationStorageClassificationMappings_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationStorageClassifications": { + "get": { + "tags": [ + "ReplicationStorageClassifications" + ], + "summary": "Gets the list of storage classification objects under a vault.", + "description": "Lists the storage classifications in the vault.", + "operationId": "ReplicationStorageClassifications_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/StorageClassificationCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the list of storage classification objects under a vault.": { + "$ref": "./examples/ReplicationStorageClassifications_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationSupportedOperatingSystems": { + "get": { + "tags": [ + "SupportedOperatingSystems" + ], + "summary": "Gets the data of supported operating systems by SRS.", + "operationId": "SupportedOperatingSystems_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "instanceType", + "in": "query", + "description": "The instance type.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SupportedOperatingSystems" + } + } + }, + "x-ms-examples": { + "Gets the data of supported operating systems by SRS.": { + "$ref": "./examples/SupportedOperatingSystems_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationVaultHealth": { + "get": { + "tags": [ + "ReplicationVaultHealth" + ], + "summary": "Gets the health summary for the vault.", + "description": "Gets the health details of the vault.", + "operationId": "ReplicationVaultHealth_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VaultHealthDetails" + } + } + }, + "x-ms-examples": { + "Gets the health summary for the vault.": { + "$ref": "./examples/ReplicationVaultHealth_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationVaultHealth/default/refresh": { + "post": { + "tags": [ + "ReplicationVaultHealth" + ], + "summary": "Refreshes health summary of the vault.", + "operationId": "ReplicationVaultHealth_Refresh", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VaultHealthDetails" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Refreshes health summary of the vault.": { + "$ref": "./examples/ReplicationVaultHealth_Refresh.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationVaultSettings": { + "get": { + "tags": [ + "ReplicationVaultSetting" + ], + "summary": "Gets the list of vault setting.", + "description": "Gets the list of vault setting. This includes the Migration Hub connection settings.", + "operationId": "ReplicationVaultSetting_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VaultSettingCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the list of vault setting.": { + "$ref": "./examples/ReplicationVaultSetting_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationVaultSettings/{vaultSettingName}": { + "get": { + "tags": [ + "ReplicationVaultSetting" + ], + "summary": "Gets the vault setting.", + "description": "Gets the vault setting. This includes the Migration Hub connection settings.", + "operationId": "ReplicationVaultSetting_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "vaultSettingName", + "in": "path", + "description": "Vault setting name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VaultSetting" + } + } + }, + "x-ms-examples": { + "Gets the vault setting.": { + "$ref": "./examples/ReplicationVaultSetting_Get.json" + } + } + }, + "put": { + "tags": [ + "ReplicationVaultSetting" + ], + "summary": "Updates vault setting. A vault setting object is a singleton per vault and it is always present by default.", + "description": "The operation to configure vault setting.", + "operationId": "ReplicationVaultSetting_Create", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "vaultSettingName", + "in": "path", + "description": "Vault setting name.", + "required": true, + "type": "string" + }, + { + "name": "input", + "in": "body", + "description": "Vault setting creation input.", + "required": true, + "schema": { + "$ref": "#/definitions/VaultSettingCreationInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VaultSetting" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Updates vault setting. A vault setting object is a singleton per vault and it is always present by default.": { + "$ref": "./examples/ReplicationVaultSetting_Create.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationvCenters": { + "get": { + "tags": [ + "ReplicationvCenters" + ], + "summary": "Gets the list of vCenter registered under the vault.", + "description": "Lists the vCenter servers registered in the vault.", + "operationId": "ReplicationvCenters_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VCenterCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the list of vCenter registered under the vault.": { + "$ref": "./examples/ReplicationvCenters_List.json" + } + } + } + } + }, + "definitions": { + "A2AAddDisksInput": { + "description": "A2A add disk(s) input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AddDisksProviderSpecificInput" + } + ], + "properties": { + "vmDisks": { + "description": "The list of vm disk details.", + "type": "array", + "items": { + "$ref": "#/definitions/A2AVmDiskInputDetails" + } + }, + "vmManagedDisks": { + "description": "The list of vm managed disk details.", + "type": "array", + "items": { + "$ref": "#/definitions/A2AVmManagedDiskInputDetails" + } + } + }, + "x-ms-discriminator-value": "A2A" + }, + "A2AApplyRecoveryPointInput": { + "description": "ApplyRecoveryPoint input specific to A2A provider.", + "required": [ + "instanceType" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ApplyRecoveryPointProviderSpecificInput" + } + ], + "properties": {}, + "x-ms-discriminator-value": "A2A" + }, + "A2AContainerCreationInput": { + "description": "A2A cloud creation input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ReplicationProviderSpecificContainerCreationInput" + } + ], + "properties": {}, + "x-ms-discriminator-value": "A2A" + }, + "A2AContainerMappingInput": { + "description": "A2A container mapping input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ReplicationProviderSpecificContainerMappingInput" + } + ], + "properties": { + "agentAutoUpdateStatus": { + "description": "A value indicating whether the auto update is enabled.", + "enum": [ + "Disabled", + "Enabled" + ], + "type": "string", + "x-ms-enum": { + "name": "AgentAutoUpdateStatus", + "modelAsString": true + } + }, + "automationAccountArmId": { + "description": "The automation account arm id.", + "type": "string" + } + }, + "x-ms-discriminator-value": "A2A" + }, + "A2ACreateProtectionIntentInput": { + "description": "A2A create protection intent input.", + "required": [ + "fabricObjectId", + "primaryLocation", + "recoveryLocation", + "recoverySubscriptionId", + "recoveryAvailabilityType", + "recoveryResourceGroupId" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CreateProtectionIntentProviderSpecificDetails" + } + ], + "properties": { + "fabricObjectId": { + "description": "The fabric specific object Id of the virtual machine.", + "type": "string" + }, + "primaryLocation": { + "description": "The primary location for the virtual machine.", + "type": "string" + }, + "recoveryLocation": { + "description": "The recovery location for the virtual machine.", + "type": "string" + }, + "recoverySubscriptionId": { + "description": "The recovery subscription Id of the virtual machine.", + "type": "string" + }, + "recoveryAvailabilityType": { + "description": "The recovery availability type of the virtual machine.", + "enum": [ + "Single", + "AvailabilitySet", + "AvailabilityZone" + ], + "type": "string", + "x-ms-enum": { + "name": "A2ARecoveryAvailabilityType", + "modelAsString": true + } + }, + "protectionProfileCustomInput": { + "$ref": "#/definitions/ProtectionProfileCustomDetails", + "description": "The protection profile custom inputs." + }, + "recoveryResourceGroupId": { + "description": "The recovery resource group Id. Valid for V2 scenarios.", + "type": "string" + }, + "primaryStagingStorageAccountCustomInput": { + "$ref": "#/definitions/StorageAccountCustomDetails", + "description": "The primary staging storage account input." + }, + "recoveryAvailabilitySetCustomInput": { + "$ref": "#/definitions/RecoveryAvailabilitySetCustomDetails", + "description": "The recovery availability set input." + }, + "recoveryVirtualNetworkCustomInput": { + "$ref": "#/definitions/RecoveryVirtualNetworkCustomDetails", + "description": "The recovery virtual network input." + }, + "recoveryProximityPlacementGroupCustomInput": { + "$ref": "#/definitions/RecoveryProximityPlacementGroupCustomDetails", + "description": "The recovery proximity placement group custom input." + }, + "autoProtectionOfDataDisk": { + "description": "A value indicating whether the auto protection is enabled.", + "enum": [ + "Disabled", + "Enabled" + ], + "type": "string", + "x-ms-enum": { + "name": "AutoProtectionOfDataDisk", + "modelAsString": true + } + }, + "vmDisks": { + "description": "The list of vm disk inputs.", + "type": "array", + "items": { + "$ref": "#/definitions/A2AProtectionIntentDiskInputDetails" + } + }, + "vmManagedDisks": { + "description": "The list of vm managed disk inputs.", + "type": "array", + "items": { + "$ref": "#/definitions/A2AProtectionIntentManagedDiskInputDetails" + } + }, + "multiVmGroupName": { + "description": "The multi vm group name.", + "type": "string" + }, + "multiVmGroupId": { + "description": "The multi vm group id.", + "type": "string" + }, + "recoveryBootDiagStorageAccount": { + "$ref": "#/definitions/StorageAccountCustomDetails", + "description": "The boot diagnostic storage account." + }, + "diskEncryptionInfo": { + "$ref": "#/definitions/DiskEncryptionInfo", + "description": "The recovery disk encryption information (for two pass flows)." + }, + "recoveryAvailabilityZone": { + "description": "The recovery availability zone.", + "type": "string" + } + }, + "x-ms-discriminator-value": "A2A" + }, + "A2ACrossClusterMigrationApplyRecoveryPointInput": { + "description": "ApplyRecoveryPoint input specific to A2ACrossClusterMigration provider.", + "required": [ + "instanceType" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ApplyRecoveryPointProviderSpecificInput" + } + ], + "properties": {}, + "x-ms-discriminator-value": "A2ACrossClusterMigration" + }, + "A2ACrossClusterMigrationContainerCreationInput": { + "description": "A2ACrossClusterMigration cloud creation input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ReplicationProviderSpecificContainerCreationInput" + } + ], + "properties": {}, + "x-ms-discriminator-value": "A2ACrossClusterMigration" + }, + "A2ACrossClusterMigrationEnableProtectionInput": { + "description": "A2A Cross-Cluster Migration enable protection input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/EnableProtectionProviderSpecificInput" + } + ], + "properties": { + "fabricObjectId": { + "description": "The fabric specific object Id of the virtual machine.", + "type": "string" + }, + "recoveryContainerId": { + "description": "The recovery container Id.", + "type": "string" + } + }, + "x-ms-discriminator-value": "A2ACrossClusterMigration" + }, + "A2ACrossClusterMigrationPolicyCreationInput": { + "description": "A2A Cross-Cluster Migration Policy creation input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/PolicyProviderSpecificInput" + } + ], + "properties": {}, + "x-ms-discriminator-value": "A2ACrossClusterMigration" + }, + "A2ACrossClusterMigrationReplicationDetails": { + "description": "A2A provider specific settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ReplicationProviderSpecificSettings" + } + ], + "properties": { + "fabricObjectId": { + "description": "The fabric specific object Id of the virtual machine.", + "type": "string" + }, + "primaryFabricLocation": { + "description": "Primary fabric location.", + "type": "string" + }, + "osType": { + "description": "The type of operating system.", + "type": "string" + }, + "vmProtectionState": { + "description": "The protection state for the vm.", + "type": "string" + }, + "vmProtectionStateDescription": { + "description": "The protection state description for the vm.", + "type": "string" + }, + "lifecycleId": { + "description": "An id associated with the PE that survives actions like switch protection which change the backing PE/CPE objects internally.The lifecycle id gets carried forward to have a link/continuity in being able to have an Id that denotes the \"same\" protected item even though other internal Ids/ARM Id might be changing.", + "type": "string" + } + }, + "x-ms-discriminator-value": "A2ACrossClusterMigration" + }, + "A2AEnableProtectionInput": { + "description": "A2A enable protection input.", + "required": [ + "fabricObjectId" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/EnableProtectionProviderSpecificInput" + } + ], + "properties": { + "fabricObjectId": { + "description": "The fabric specific object Id of the virtual machine.", + "type": "string" + }, + "recoveryContainerId": { + "description": "The recovery container Id.", + "type": "string" + }, + "recoveryResourceGroupId": { + "description": "The recovery resource group Id. Valid for V2 scenarios.", + "type": "string" + }, + "recoveryCloudServiceId": { + "description": "The recovery cloud service Id. Valid for V1 scenarios.", + "type": "string" + }, + "recoveryAvailabilitySetId": { + "description": "The recovery availability set Id.", + "type": "string" + }, + "recoveryProximityPlacementGroupId": { + "description": "The recovery proximity placement group Id.", + "type": "string" + }, + "vmDisks": { + "description": "The list of vm disk details.", + "type": "array", + "items": { + "$ref": "#/definitions/A2AVmDiskInputDetails" + } + }, + "vmManagedDisks": { + "description": "The list of vm managed disk details.", + "type": "array", + "items": { + "$ref": "#/definitions/A2AVmManagedDiskInputDetails" + } + }, + "multiVmGroupName": { + "description": "The multi vm group name.", + "type": "string" + }, + "multiVmGroupId": { + "description": "The multi vm group id.", + "type": "string" + }, + "recoveryBootDiagStorageAccountId": { + "description": "The boot diagnostic storage account.", + "type": "string" + }, + "diskEncryptionInfo": { + "$ref": "#/definitions/DiskEncryptionInfo", + "description": "The recovery disk encryption information (for two pass flows)." + }, + "recoveryAvailabilityZone": { + "description": "The recovery availability zone.", + "type": "string" + }, + "recoveryAzureNetworkId": { + "description": "The recovery Azure virtual network ARM id.", + "type": "string" + }, + "recoverySubnetName": { + "description": "The recovery subnet name.", + "type": "string" + }, + "recoveryVirtualMachineScaleSetId": { + "description": "The virtual machine scale set Id.", + "type": "string" + } + }, + "x-ms-discriminator-value": "A2A" + }, + "A2AEventDetails": { + "description": "Model class for event details of a A2A event.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/EventProviderSpecificDetails" + } + ], + "properties": { + "protectedItemName": { + "description": "The protected item arm name.", + "type": "string" + }, + "fabricObjectId": { + "description": "The azure vm arm id.", + "type": "string" + }, + "fabricName": { + "description": "Fabric arm name.", + "type": "string" + }, + "fabricLocation": { + "description": "The fabric location.", + "type": "string" + }, + "remoteFabricName": { + "description": "Remote fabric arm name.", + "type": "string" + }, + "remoteFabricLocation": { + "description": "Remote fabric location.", + "type": "string" + } + }, + "x-ms-discriminator-value": "A2A" + }, + "A2APolicyCreationInput": { + "description": "A2A Policy creation input.", + "required": [ + "multiVmSyncStatus" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/PolicyProviderSpecificInput" + } + ], + "properties": { + "recoveryPointHistory": { + "format": "int32", + "description": "The duration in minutes until which the recovery points need to be stored.", + "type": "integer" + }, + "crashConsistentFrequencyInMinutes": { + "format": "int32", + "description": "The crash consistent snapshot frequency (in minutes).", + "type": "integer" + }, + "appConsistentFrequencyInMinutes": { + "format": "int32", + "description": "The app consistent snapshot frequency (in minutes).", + "type": "integer" + }, + "multiVmSyncStatus": { + "description": "A value indicating whether multi-VM sync has to be enabled. Value should be 'Enabled' or 'Disabled'.", + "enum": [ + "Enable", + "Disable" + ], + "type": "string", + "x-ms-enum": { + "name": "SetMultiVmSyncStatus", + "modelAsString": true + } + } + }, + "x-ms-discriminator-value": "A2A" + }, + "A2APolicyDetails": { + "description": "A2A specific policy details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/PolicyProviderSpecificDetails" + } + ], + "properties": { + "recoveryPointThresholdInMinutes": { + "format": "int32", + "description": "The recovery point threshold in minutes.", + "type": "integer" + }, + "recoveryPointHistory": { + "format": "int32", + "description": "The duration in minutes until which the recovery points need to be stored.", + "type": "integer" + }, + "appConsistentFrequencyInMinutes": { + "format": "int32", + "description": "The app consistent snapshot frequency in minutes.", + "type": "integer" + }, + "multiVmSyncStatus": { + "description": "A value indicating whether multi-VM sync has to be enabled.", + "type": "string" + }, + "crashConsistentFrequencyInMinutes": { + "format": "int32", + "description": "The crash consistent snapshot frequency in minutes.", + "type": "integer" + } + }, + "x-ms-discriminator-value": "A2A" + }, + "A2AProtectedDiskDetails": { + "description": "A2A protected disk details.", + "type": "object", + "properties": { + "diskUri": { + "description": "The disk uri.", + "type": "string" + }, + "recoveryAzureStorageAccountId": { + "description": "The recovery disk storage account.", + "type": "string" + }, + "primaryDiskAzureStorageAccountId": { + "description": "The primary disk storage account.", + "type": "string" + }, + "recoveryDiskUri": { + "description": "Recovery disk uri.", + "type": "string" + }, + "diskName": { + "description": "The disk name.", + "type": "string" + }, + "diskCapacityInBytes": { + "format": "int64", + "description": "The disk capacity in bytes.", + "type": "integer" + }, + "primaryStagingAzureStorageAccountId": { + "description": "The primary staging storage account.", + "type": "string" + }, + "diskType": { + "description": "The type of disk.", + "type": "string" + }, + "resyncRequired": { + "description": "A value indicating whether resync is required for this disk.", + "type": "boolean" + }, + "monitoringPercentageCompletion": { + "format": "int32", + "description": "The percentage of the monitoring job. The type of the monitoring job is defined by MonitoringJobType property.", + "type": "integer" + }, + "monitoringJobType": { + "description": "The type of the monitoring job. The progress is contained in MonitoringPercentageCompletion property.", + "type": "string" + }, + "dataPendingInStagingStorageAccountInMB": { + "format": "double", + "description": "The data pending for replication in MB at staging account.", + "type": "number" + }, + "dataPendingAtSourceAgentInMB": { + "format": "double", + "description": "The data pending at source virtual machine in MB.", + "type": "number" + }, + "diskState": { + "description": "The disk state.", + "type": "string" + }, + "allowedDiskLevelOperation": { + "description": "The disk level operations list.", + "type": "array", + "items": { + "type": "string" + } + }, + "isDiskEncrypted": { + "description": "A value indicating whether vm has encrypted os disk or not.", + "type": "boolean" + }, + "secretIdentifier": { + "description": "The secret URL / identifier (BEK).", + "type": "string" + }, + "dekKeyVaultArmId": { + "description": "The KeyVault resource id for secret (BEK).", + "type": "string" + }, + "isDiskKeyEncrypted": { + "description": "A value indicating whether disk key got encrypted or not.", + "type": "boolean" + }, + "keyIdentifier": { + "description": "The key URL / identifier (KEK).", + "type": "string" + }, + "kekKeyVaultArmId": { + "description": "The KeyVault resource id for key (KEK).", + "type": "string" + }, + "failoverDiskName": { + "description": "The failover name for the managed disk.", + "type": "string" + }, + "tfoDiskName": { + "description": "The test failover name for the managed disk.", + "type": "string" + } + } + }, + "A2AProtectedManagedDiskDetails": { + "description": "A2A protected managed disk details.", + "type": "object", + "properties": { + "diskId": { + "description": "The managed disk Arm id.", + "type": "string" + }, + "recoveryResourceGroupId": { + "description": "The recovery disk resource group Arm Id.", + "type": "string" + }, + "recoveryTargetDiskId": { + "description": "Recovery target disk Arm Id.", + "type": "string" + }, + "recoveryReplicaDiskId": { + "description": "Recovery replica disk Arm Id.", + "type": "string" + }, + "recoveryOrignalTargetDiskId": { + "description": "Recovery original target disk Arm Id.", + "type": "string" + }, + "recoveryReplicaDiskAccountType": { + "description": "The replica disk type. Its an optional value and will be same as source disk type if not user provided.", + "type": "string" + }, + "recoveryTargetDiskAccountType": { + "description": "The target disk type after failover. Its an optional value and will be same as source disk type if not user provided.", + "type": "string" + }, + "recoveryDiskEncryptionSetId": { + "description": "The recovery disk encryption set Id.", + "type": "string" + }, + "primaryDiskEncryptionSetId": { + "description": "The primary disk encryption set Id.", + "type": "string" + }, + "diskName": { + "description": "The disk name.", + "type": "string" + }, + "diskCapacityInBytes": { + "format": "int64", + "description": "The disk capacity in bytes.", + "type": "integer" + }, + "primaryStagingAzureStorageAccountId": { + "description": "The primary staging storage account.", + "type": "string" + }, + "diskType": { + "description": "The type of disk.", + "type": "string" + }, + "resyncRequired": { + "description": "A value indicating whether resync is required for this disk.", + "type": "boolean" + }, + "monitoringPercentageCompletion": { + "format": "int32", + "description": "The percentage of the monitoring job. The type of the monitoring job is defined by MonitoringJobType property.", + "type": "integer" + }, + "monitoringJobType": { + "description": "The type of the monitoring job. The progress is contained in MonitoringPercentageCompletion property.", + "type": "string" + }, + "dataPendingInStagingStorageAccountInMB": { + "format": "double", + "description": "The data pending for replication in MB at staging account.", + "type": "number" + }, + "dataPendingAtSourceAgentInMB": { + "format": "double", + "description": "The data pending at source virtual machine in MB.", + "type": "number" + }, + "diskState": { + "description": "The disk state.", + "type": "string" + }, + "allowedDiskLevelOperation": { + "description": "The disk level operations list.", + "type": "array", + "items": { + "type": "string" + } + }, + "isDiskEncrypted": { + "description": "A value indicating whether vm has encrypted os disk or not.", + "type": "boolean" + }, + "secretIdentifier": { + "description": "The secret URL / identifier (BEK).", + "type": "string" + }, + "dekKeyVaultArmId": { + "description": "The KeyVault resource id for secret (BEK).", + "type": "string" + }, + "isDiskKeyEncrypted": { + "description": "A value indicating whether disk key got encrypted or not.", + "type": "boolean" + }, + "keyIdentifier": { + "description": "The key URL / identifier (KEK).", + "type": "string" + }, + "kekKeyVaultArmId": { + "description": "The KeyVault resource id for key (KEK).", + "type": "string" + }, + "failoverDiskName": { + "description": "The failover name for the managed disk.", + "type": "string" + }, + "tfoDiskName": { + "description": "The test failover name for the managed disk.", + "type": "string" + } + } + }, + "A2AProtectionContainerMappingDetails": { + "description": "A2A provider specific settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionContainerMappingProviderSpecificDetails" + } + ], + "properties": { + "agentAutoUpdateStatus": { + "description": "A value indicating whether the auto update is enabled.", + "enum": [ + "Disabled", + "Enabled" + ], + "type": "string", + "x-ms-enum": { + "name": "AgentAutoUpdateStatus", + "modelAsString": true + } + }, + "automationAccountArmId": { + "description": "The automation account arm id.", + "type": "string" + }, + "scheduleName": { + "description": "The schedule arm name.", + "type": "string" + }, + "jobScheduleName": { + "description": "The job schedule arm name.", + "type": "string" + } + }, + "x-ms-discriminator-value": "A2A" + }, + "A2AProtectionIntentDiskInputDetails": { + "description": "Azure VM unmanaged disk input details.", + "required": [ + "diskUri" + ], + "type": "object", + "properties": { + "diskUri": { + "description": "The disk Uri.", + "type": "string" + }, + "recoveryAzureStorageAccountCustomInput": { + "$ref": "#/definitions/StorageAccountCustomDetails", + "description": "The recovery VHD storage account input." + }, + "primaryStagingStorageAccountCustomInput": { + "$ref": "#/definitions/StorageAccountCustomDetails", + "description": "The primary staging storage account input." + } + } + }, + "A2AProtectionIntentManagedDiskInputDetails": { + "description": "Azure VM managed disk input details.", + "required": [ + "diskId" + ], + "type": "object", + "properties": { + "diskId": { + "description": "The disk Id.", + "type": "string" + }, + "primaryStagingStorageAccountCustomInput": { + "$ref": "#/definitions/StorageAccountCustomDetails", + "description": "The primary staging storage account input." + }, + "recoveryResourceGroupCustomInput": { + "$ref": "#/definitions/RecoveryResourceGroupCustomDetails", + "description": "The recovery resource group input." + }, + "recoveryReplicaDiskAccountType": { + "description": "The replica disk type. Its an optional value and will be same as source disk type if not user provided.", + "type": "string" + }, + "recoveryTargetDiskAccountType": { + "description": "The target disk type after failover. Its an optional value and will be same as source disk type if not user provided.", + "type": "string" + }, + "recoveryDiskEncryptionSetId": { + "description": "The recovery disk encryption set Id.", + "type": "string" + }, + "diskEncryptionInfo": { + "$ref": "#/definitions/DiskEncryptionInfo", + "description": "The recovery disk encryption information (for one / single pass flows)." + } + } + }, + "A2ARecoveryPointDetails": { + "description": "A2A provider specific recovery point details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProviderSpecificRecoveryPointDetails" + } + ], + "properties": { + "recoveryPointSyncType": { + "description": "A value indicating whether the recovery point is multi VM consistent.", + "enum": [ + "MultiVmSyncRecoveryPoint", + "PerVmRecoveryPoint" + ], + "type": "string", + "x-ms-enum": { + "name": "RecoveryPointSyncType", + "modelAsString": true + } + }, + "disks": { + "description": "List of disk ids representing a recovery point.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "x-ms-discriminator-value": "A2A" + }, + "A2ARemoveDisksInput": { + "description": "A2A remove disk(s) input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RemoveDisksProviderSpecificInput" + } + ], + "properties": { + "vmDisksUris": { + "description": "The list of vm disk vhd URIs.", + "type": "array", + "items": { + "type": "string" + } + }, + "vmManagedDisksIds": { + "description": "The list of vm managed disk Ids.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "x-ms-discriminator-value": "A2A" + }, + "A2AReplicationDetails": { + "description": "A2A provider specific settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ReplicationProviderSpecificSettings" + } + ], + "properties": { + "fabricObjectId": { + "description": "The fabric specific object Id of the virtual machine.", + "type": "string" + }, + "initialPrimaryZone": { + "description": "The initial primary availability zone.", + "type": "string", + "readOnly": true + }, + "initialPrimaryFabricLocation": { + "description": "The initial primary fabric location.", + "type": "string", + "readOnly": true + }, + "initialRecoveryZone": { + "description": "The initial recovery availability zone.", + "type": "string", + "readOnly": true + }, + "initialRecoveryFabricLocation": { + "description": "The initial recovery fabric location.", + "type": "string", + "readOnly": true + }, + "multiVmGroupId": { + "description": "The multi vm group Id.", + "type": "string" + }, + "multiVmGroupName": { + "description": "The multi vm group name.", + "type": "string" + }, + "multiVmGroupCreateOption": { + "description": "Whether Multi VM group is auto created or specified by user.", + "enum": [ + "AutoCreated", + "UserSpecified" + ], + "type": "string", + "x-ms-enum": { + "name": "MultiVmGroupCreateOption", + "modelAsString": true + } + }, + "managementId": { + "description": "The management Id.", + "type": "string" + }, + "protectedDisks": { + "description": "The list of protected disks.", + "type": "array", + "items": { + "$ref": "#/definitions/A2AProtectedDiskDetails" + } + }, + "unprotectedDisks": { + "description": "The list of unprotected disks.", + "type": "array", + "items": { + "$ref": "#/definitions/A2AUnprotectedDiskDetails" + } + }, + "protectedManagedDisks": { + "description": "The list of protected managed disks.", + "type": "array", + "items": { + "$ref": "#/definitions/A2AProtectedManagedDiskDetails" + } + }, + "recoveryBootDiagStorageAccountId": { + "description": "The recovery boot diagnostic storage account Arm Id.", + "type": "string" + }, + "primaryFabricLocation": { + "description": "Primary fabric location.", + "type": "string" + }, + "recoveryFabricLocation": { + "description": "The recovery fabric location.", + "type": "string" + }, + "osType": { + "description": "The type of operating system.", + "type": "string" + }, + "recoveryAzureVMSize": { + "description": "The size of recovery virtual machine.", + "type": "string" + }, + "recoveryAzureVMName": { + "description": "The name of recovery virtual machine.", + "type": "string" + }, + "recoveryAzureResourceGroupId": { + "description": "The recovery resource group.", + "type": "string" + }, + "recoveryCloudService": { + "description": "The recovery cloud service.", + "type": "string" + }, + "recoveryAvailabilitySet": { + "description": "The recovery availability set.", + "type": "string" + }, + "selectedRecoveryAzureNetworkId": { + "description": "The recovery virtual network.", + "type": "string" + }, + "selectedTfoAzureNetworkId": { + "description": "The test failover virtual network.", + "type": "string" + }, + "vmNics": { + "description": "The virtual machine nic details.", + "type": "array", + "items": { + "$ref": "#/definitions/VMNicDetails" + } + }, + "vmSyncedConfigDetails": { + "$ref": "#/definitions/AzureToAzureVmSyncedConfigDetails", + "description": "The synced configuration details." + }, + "monitoringPercentageCompletion": { + "format": "int32", + "description": "The percentage of the monitoring job. The type of the monitoring job is defined by MonitoringJobType property.", + "type": "integer" + }, + "monitoringJobType": { + "description": "The type of the monitoring job. The progress is contained in MonitoringPercentageCompletion property.", + "type": "string" + }, + "lastHeartbeat": { + "format": "date-time", + "description": "The last heartbeat received from the source server.", + "type": "string" + }, + "agentVersion": { + "description": "The agent version.", + "type": "string" + }, + "agentExpiryDate": { + "format": "date-time", + "description": "Agent expiry date.", + "type": "string" + }, + "isReplicationAgentUpdateRequired": { + "description": "A value indicating whether replication agent update is required.", + "type": "boolean" + }, + "agentCertificateExpiryDate": { + "format": "date-time", + "description": "Agent certificate expiry date.", + "type": "string", + "readOnly": true + }, + "isReplicationAgentCertificateUpdateRequired": { + "description": "A value indicating whether agent certificate update is required.", + "type": "boolean" + }, + "recoveryFabricObjectId": { + "description": "The recovery fabric object Id.", + "type": "string" + }, + "vmProtectionState": { + "description": "The protection state for the vm.", + "type": "string" + }, + "vmProtectionStateDescription": { + "description": "The protection state description for the vm.", + "type": "string" + }, + "lifecycleId": { + "description": "An id associated with the PE that survives actions like switch protection which change the backing PE/CPE objects internally.The lifecycle id gets carried forward to have a link/continuity in being able to have an Id that denotes the \"same\" protected item even though other internal Ids/ARM Id might be changing.", + "type": "string" + }, + "testFailoverRecoveryFabricObjectId": { + "description": "The test failover fabric object Id.", + "type": "string" + }, + "rpoInSeconds": { + "format": "int64", + "description": "The last RPO value in seconds.", + "type": "integer" + }, + "lastRpoCalculatedTime": { + "format": "date-time", + "description": "The time (in UTC) when the last RPO value was calculated by Protection Service.", + "type": "string" + }, + "primaryAvailabilityZone": { + "description": "The primary availability zone.", + "type": "string" + }, + "recoveryAvailabilityZone": { + "description": "The recovery availability zone.", + "type": "string" + }, + "vmEncryptionType": { + "description": "The encryption type of the VM.", + "type": "string", + "readOnly": true, + "enum": [ + "NotEncrypted", + "OnePassEncrypted", + "TwoPassEncrypted" + ], + "x-ms-enum": { + "name": "VmEncryptionType", + "modelAsString": true + } + }, + "tfoAzureVMName": { + "description": "The test failover vm name.", + "type": "string" + }, + "recoveryAzureGeneration": { + "description": "The recovery azure generation.", + "type": "string", + "readOnly": true + }, + "recoveryProximityPlacementGroupId": { + "description": "The recovery proximity placement group Id.", + "type": "string" + }, + "autoProtectionOfDataDisk": { + "description": "A value indicating whether the auto protection is enabled.", + "enum": [ + "Disabled", + "Enabled" + ], + "type": "string", + "x-ms-enum": { + "name": "AutoProtectionOfDataDisk", + "modelAsString": true + } + }, + "recoveryVirtualMachineScaleSetId": { + "description": "The recovery virtual machine scale set id.", + "type": "string" + } + }, + "x-ms-discriminator-value": "A2A" + }, + "A2AReplicationIntentDetails": { + "description": "A2A provider specific settings.", + "required": [ + "recoveryAvailabilityType" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ReplicationProtectionIntentProviderSpecificSettings" + } + ], + "properties": { + "fabricObjectId": { + "description": "The fabric specific object Id of the virtual machine.", + "type": "string" + }, + "primaryLocation": { + "description": "The primary location for the virtual machine.", + "type": "string" + }, + "recoveryLocation": { + "description": "The recovery location for the virtual machine.", + "type": "string" + }, + "recoverySubscriptionId": { + "description": "The recovery subscription Id of the virtual machine.", + "type": "string" + }, + "vmDisks": { + "description": "The list of vm disk details.", + "type": "array", + "items": { + "$ref": "#/definitions/A2AProtectionIntentDiskInputDetails" + } + }, + "vmManagedDisks": { + "description": "The list of vm managed disk details.", + "type": "array", + "items": { + "$ref": "#/definitions/A2AProtectionIntentManagedDiskInputDetails" + } + }, + "recoveryResourceGroupId": { + "description": "The recovery resource group id.", + "type": "string" + }, + "protectionProfile": { + "$ref": "#/definitions/ProtectionProfileCustomDetails", + "description": "The protection profile custom details." + }, + "primaryStagingStorageAccount": { + "$ref": "#/definitions/StorageAccountCustomDetails", + "description": "The primary staging storage account details." + }, + "recoveryAvailabilitySet": { + "$ref": "#/definitions/RecoveryAvailabilitySetCustomDetails", + "description": "The recovery availability set details." + }, + "recoveryVirtualNetwork": { + "$ref": "#/definitions/RecoveryVirtualNetworkCustomDetails", + "description": "The recovery virtual network details." + }, + "recoveryProximityPlacementGroup": { + "$ref": "#/definitions/RecoveryProximityPlacementGroupCustomDetails", + "description": "The recovery proximity placement group custom details." + }, + "autoProtectionOfDataDisk": { + "description": "A value indicating whether the auto protection is enabled.", + "enum": [ + "Disabled", + "Enabled" + ], + "type": "string", + "x-ms-enum": { + "name": "AutoProtectionOfDataDisk", + "modelAsString": true + } + }, + "multiVmGroupName": { + "description": "The multi vm group name.", + "type": "string" + }, + "multiVmGroupId": { + "description": "The multi vm group id.", + "type": "string" + }, + "recoveryBootDiagStorageAccount": { + "$ref": "#/definitions/StorageAccountCustomDetails", + "description": "The boot diagnostic storage account." + }, + "diskEncryptionInfo": { + "$ref": "#/definitions/DiskEncryptionInfo", + "description": "The recovery disk encryption information (for two pass flows)." + }, + "recoveryAvailabilityZone": { + "description": "The recovery availability zone.", + "type": "string" + }, + "recoveryAvailabilityType": { + "description": "The recovery availability type of the virtual machine.", + "type": "string" + } + }, + "x-ms-discriminator-value": "A2A" + }, + "A2AReprotectInput": { + "description": "Azure specific reprotect input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ReverseReplicationProviderSpecificInput" + } + ], + "properties": { + "recoveryContainerId": { + "description": "The recovery container Id.", + "type": "string" + }, + "vmDisks": { + "description": "The list of vm disk details.", + "type": "array", + "items": { + "$ref": "#/definitions/A2AVmDiskInputDetails" + } + }, + "recoveryResourceGroupId": { + "description": "The recovery resource group Id. Valid for V2 scenarios.", + "type": "string" + }, + "recoveryCloudServiceId": { + "description": "The recovery cloud service Id. Valid for V1 scenarios.", + "type": "string" + }, + "recoveryAvailabilitySetId": { + "description": "The recovery availability set.", + "type": "string" + }, + "policyId": { + "description": "The Policy Id.", + "type": "string" + } + }, + "x-ms-discriminator-value": "A2A" + }, + "A2ASwitchProtectionInput": { + "description": "A2A specific switch protection input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/SwitchProtectionProviderSpecificInput" + } + ], + "properties": { + "recoveryContainerId": { + "description": "The recovery container Id.", + "type": "string" + }, + "vmDisks": { + "description": "The list of vm disk details.", + "type": "array", + "items": { + "$ref": "#/definitions/A2AVmDiskInputDetails" + } + }, + "vmManagedDisks": { + "description": "The list of vm managed disk details.", + "type": "array", + "items": { + "$ref": "#/definitions/A2AVmManagedDiskInputDetails" + } + }, + "recoveryResourceGroupId": { + "description": "The recovery resource group Id. Valid for V2 scenarios.", + "type": "string" + }, + "recoveryCloudServiceId": { + "description": "The recovery cloud service Id. Valid for V1 scenarios.", + "type": "string" + }, + "recoveryAvailabilitySetId": { + "description": "The recovery availability set.", + "type": "string" + }, + "policyId": { + "description": "The Policy Id.", + "type": "string" + }, + "recoveryBootDiagStorageAccountId": { + "description": "The boot diagnostic storage account.", + "type": "string" + }, + "recoveryAvailabilityZone": { + "description": "The recovery availability zone.", + "type": "string" + }, + "recoveryProximityPlacementGroupId": { + "description": "The recovery proximity placement group Id.", + "type": "string" + }, + "recoveryVirtualMachineScaleSetId": { + "description": "The virtual machine scale set id.", + "type": "string" + }, + "diskEncryptionInfo": { + "$ref": "#/definitions/DiskEncryptionInfo", + "description": "The recovery disk encryption information." + } + }, + "x-ms-discriminator-value": "A2A" + }, + "A2ATestFailoverInput": { + "description": "A2A provider specific input for test failover.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TestFailoverProviderSpecificInput" + } + ], + "properties": { + "recoveryPointId": { + "description": "The recovery point id to be passed to test failover to a particular recovery point. In case of latest recovery point, null should be passed.", + "type": "string" + }, + "cloudServiceCreationOption": { + "description": "A value indicating whether to use recovery cloud service for TFO or not.", + "type": "string" + } + }, + "x-ms-discriminator-value": "A2A" + }, + "A2AUnplannedFailoverInput": { + "description": "A2A provider specific input for unplanned failover.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/UnplannedFailoverProviderSpecificInput" + } + ], + "properties": { + "recoveryPointId": { + "description": "The recovery point id to be passed to failover to a particular recovery point. In case of latest recovery point, null should be passed.", + "type": "string" + }, + "cloudServiceCreationOption": { + "description": "A value indicating whether to use recovery cloud service for failover or not.", + "type": "string" + } + }, + "x-ms-discriminator-value": "A2A" + }, + "A2AUnprotectedDiskDetails": { + "description": "A2A unprotected disk details.", + "type": "object", + "properties": { + "diskLunId": { + "format": "int32", + "description": "The source lun Id for the data disk.", + "type": "integer" + }, + "diskAutoProtectionStatus": { + "description": "A value indicating whether the disk auto protection is enabled.", + "enum": [ + "Disabled", + "Enabled" + ], + "type": "string", + "x-ms-enum": { + "name": "AutoProtectionOfDataDisk", + "modelAsString": true + } + } + } + }, + "A2AUpdateContainerMappingInput": { + "description": "A2A update protection container mapping.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ReplicationProviderSpecificUpdateContainerMappingInput" + } + ], + "properties": { + "agentAutoUpdateStatus": { + "description": "A value indicating whether the auto update is enabled.", + "enum": [ + "Disabled", + "Enabled" + ], + "type": "string", + "x-ms-enum": { + "name": "AgentAutoUpdateStatus", + "modelAsString": true + } + }, + "automationAccountArmId": { + "description": "The automation account arm id.", + "type": "string" + } + }, + "x-ms-discriminator-value": "A2A" + }, + "A2AUpdateReplicationProtectedItemInput": { + "description": "InMage Azure V2 input to update replication protected item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/UpdateReplicationProtectedItemProviderInput" + } + ], + "properties": { + "recoveryCloudServiceId": { + "description": "The target cloud service ARM Id (for V1).", + "type": "string" + }, + "recoveryResourceGroupId": { + "description": "The target resource group ARM Id (for V2).", + "type": "string" + }, + "managedDiskUpdateDetails": { + "description": "Managed disk update details.", + "type": "array", + "items": { + "$ref": "#/definitions/A2AVmManagedDiskUpdateDetails" + } + }, + "recoveryBootDiagStorageAccountId": { + "description": "The boot diagnostic storage account.", + "type": "string" + }, + "diskEncryptionInfo": { + "$ref": "#/definitions/DiskEncryptionInfo", + "description": "The recovery os disk encryption information." + }, + "tfoAzureVMName": { + "description": "The user given name for Test Failover VM.", + "type": "string" + }, + "recoveryProximityPlacementGroupId": { + "description": "The recovery proximity placement group Id.", + "type": "string" + }, + "recoveryVirtualMachineScaleSetId": { + "description": "The recovery virtual machine scale set Id.", + "type": "string" + } + }, + "x-ms-discriminator-value": "A2A" + }, + "A2AVmDiskInputDetails": { + "description": "A2A disk input details.", + "required": [ + "diskUri", + "recoveryAzureStorageAccountId", + "primaryStagingAzureStorageAccountId" + ], + "type": "object", + "properties": { + "diskUri": { + "description": "The disk Uri.", + "type": "string" + }, + "recoveryAzureStorageAccountId": { + "description": "The recovery VHD storage account Id.", + "type": "string" + }, + "primaryStagingAzureStorageAccountId": { + "description": "The primary staging storage account Id.", + "type": "string" + } + } + }, + "A2AVmManagedDiskInputDetails": { + "description": "A2A managed disk input details.", + "required": [ + "diskId", + "primaryStagingAzureStorageAccountId", + "recoveryResourceGroupId" + ], + "type": "object", + "properties": { + "diskId": { + "description": "The disk Id.", + "type": "string" + }, + "primaryStagingAzureStorageAccountId": { + "description": "The primary staging storage account Arm Id.", + "type": "string" + }, + "recoveryResourceGroupId": { + "description": "The target resource group Arm Id.", + "type": "string" + }, + "recoveryReplicaDiskAccountType": { + "description": "The replica disk type. Its an optional value and will be same as source disk type if not user provided.", + "type": "string" + }, + "recoveryTargetDiskAccountType": { + "description": "The target disk type after failover. Its an optional value and will be same as source disk type if not user provided.", + "type": "string" + }, + "recoveryDiskEncryptionSetId": { + "description": "The recovery disk encryption set Id.", + "type": "string" + }, + "diskEncryptionInfo": { + "$ref": "#/definitions/DiskEncryptionInfo", + "description": "The recovery disk encryption information (for one / single pass flows)." + } + } + }, + "A2AVmManagedDiskUpdateDetails": { + "description": "A2A Vm managed disk update details.", + "type": "object", + "properties": { + "diskId": { + "description": "The disk Id.", + "type": "string" + }, + "recoveryTargetDiskAccountType": { + "description": "The target disk type before failover.", + "type": "string" + }, + "recoveryReplicaDiskAccountType": { + "description": "The replica disk type before failover.", + "type": "string" + }, + "diskEncryptionInfo": { + "$ref": "#/definitions/DiskEncryptionInfo", + "description": "The recovery os disk encryption information." + }, + "failoverDiskName": { + "description": "The target disk name for unplanned failover operation.", + "type": "string" + }, + "tfoDiskName": { + "description": "The target disk name for test failover operation.", + "type": "string" + } + } + }, + "A2AZoneDetails": { + "description": "Zone details data.", + "type": "object", + "properties": { + "source": { + "description": "Source zone info.", + "type": "string" + }, + "target": { + "description": "The target zone info.", + "type": "string" + } + } + }, + "AddDisksInput": { + "description": "Input for add disk(s) operation.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/AddDisksInputProperties", + "description": "Add disks input properties." + } + } + }, + "AddDisksInputProperties": { + "description": "Add Disks input properties.", + "required": [ + "providerSpecificDetails" + ], + "type": "object", + "properties": { + "providerSpecificDetails": { + "$ref": "#/definitions/AddDisksProviderSpecificInput", + "description": "The ReplicationProviderInput. For HyperVReplicaAzure provider, it will be AzureEnableProtectionInput object. For San provider, it will be SanEnableProtectionInput object. For HyperVReplicaAzure provider, it can be null." + } + } + }, + "AddDisksProviderSpecificInput": { + "description": "Add Disks provider specific input.", + "type": "object", + "properties": { + "instanceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, + "AddRecoveryServicesProviderInput": { + "description": "Input required to add a provider.", + "required": [ + "properties" + ], + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/AddRecoveryServicesProviderInputProperties", + "description": "The properties of an add provider request." + } + } + }, + "AddRecoveryServicesProviderInputProperties": { + "description": "The properties of an add provider request.", + "required": [ + "machineName", + "authenticationIdentityInput", + "resourceAccessIdentityInput" + ], + "type": "object", + "properties": { + "machineName": { + "description": "The name of the machine where the provider is getting added.", + "type": "string" + }, + "machineId": { + "description": "The Id of the machine where the provider is getting added.", + "type": "string" + }, + "biosId": { + "description": "The Bios Id of the machine.", + "type": "string" + }, + "authenticationIdentityInput": { + "$ref": "#/definitions/IdentityProviderInput", + "description": "The identity provider input for DRA authentication." + }, + "resourceAccessIdentityInput": { + "$ref": "#/definitions/IdentityProviderInput", + "description": "The identity provider input for resource access." + }, + "dataPlaneAuthenticationIdentityInput": { + "$ref": "#/definitions/IdentityProviderInput", + "description": "The identity provider input for data plane authentication." + } + } + }, + "AddVCenterRequest": { + "description": "Input required to add vCenter.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/AddVCenterRequestProperties", + "description": "The properties of an add vCenter request." + } + } + }, + "AddVCenterRequestProperties": { + "description": "The properties of an add vCenter request.", + "type": "object", + "properties": { + "friendlyName": { + "description": "The friendly name of the vCenter.", + "type": "string" + }, + "ipAddress": { + "description": "The IP address of the vCenter to be discovered.", + "type": "string" + }, + "processServerId": { + "description": "The process server Id from where the discovery is orchestrated.", + "type": "string" + }, + "port": { + "description": "The port number for discovery.", + "type": "string" + }, + "runAsAccountId": { + "description": "The account Id which has privileges to discover the vCenter.", + "type": "string" + } + } + }, + "AgentDetails": { + "description": "Agent details.", + "type": "object", + "properties": { + "agentId": { + "description": "The Id of the agent running on the server.", + "type": "string", + "readOnly": true + }, + "machineId": { + "description": "The Id of the machine to which the agent is registered.", + "type": "string", + "readOnly": true + }, + "biosId": { + "description": "The machine BIOS Id.", + "type": "string", + "readOnly": true + }, + "fqdn": { + "description": "The machine FQDN.", + "type": "string", + "readOnly": true + }, + "disks": { + "description": "The disks.", + "type": "array", + "items": { + "$ref": "#/definitions/AgentDiskDetails" + }, + "readOnly": true + } + } + }, + "AgentDiskDetails": { + "description": "Agent disk details.", + "type": "object", + "properties": { + "diskId": { + "description": "The disk Id.", + "type": "string", + "readOnly": true + }, + "diskName": { + "description": "The disk name.", + "type": "string", + "readOnly": true + }, + "isOSDisk": { + "description": "A value indicating whether the disk is the OS disk.", + "type": "string", + "readOnly": true + }, + "capacityInBytes": { + "format": "int64", + "description": "The disk capacity in bytes.", + "type": "integer", + "readOnly": true + }, + "lunId": { + "format": "int32", + "description": "The lun of disk.", + "type": "integer", + "readOnly": true + } + } + }, + "Alert": { + "description": "Implements the Alert class.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/AlertProperties", + "description": "Alert related data." + } + } + }, + "AlertCollection": { + "description": "Collection of alerts.", + "type": "object", + "properties": { + "value": { + "description": "The list of alerts.", + "type": "array", + "items": { + "$ref": "#/definitions/Alert" + } + }, + "nextLink": { + "description": "The value of next link.", + "type": "string" + } + } + }, + "AlertProperties": { + "description": "The properties of an alert.", + "type": "object", + "properties": { + "sendToOwners": { + "description": "A value indicating whether to send email to subscription administrator.", + "type": "string" + }, + "customEmailAddresses": { + "description": "The custom email address for sending emails.", + "type": "array", + "items": { + "type": "string" + } + }, + "locale": { + "description": "The locale for the email notification.", + "type": "string" + } + } + }, + "ApplyRecoveryPointInput": { + "description": "Input to apply recovery point.", + "required": [ + "properties" + ], + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/ApplyRecoveryPointInputProperties", + "description": "The input properties to apply recovery point." + } + } + }, + "ApplyRecoveryPointInputProperties": { + "description": "Input properties to apply recovery point.", + "required": [ + "providerSpecificDetails" + ], + "type": "object", + "properties": { + "recoveryPointId": { + "description": "The recovery point Id.", + "type": "string" + }, + "providerSpecificDetails": { + "$ref": "#/definitions/ApplyRecoveryPointProviderSpecificInput", + "description": "Provider specific input for applying recovery point." + } + } + }, + "ApplyRecoveryPointProviderSpecificInput": { + "description": "Provider specific input for apply recovery point.", + "required": [ + "instanceType" + ], + "type": "object", + "properties": { + "instanceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, + "AsrJobDetails": { + "description": "This class represents job details based on specific job type.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/JobDetails" + } + ], + "properties": {}, + "x-ms-discriminator-value": "AsrJobDetails" + }, + "ASRTask": { + "description": "Task of the Job.", + "type": "object", + "properties": { + "taskId": { + "description": "The Id.", + "type": "string" + }, + "name": { + "description": "The unique Task name.", + "type": "string" + }, + "startTime": { + "format": "date-time", + "description": "The start time.", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "The end time.", + "type": "string" + }, + "allowedActions": { + "description": "The state/actions applicable on this task.", + "type": "array", + "items": { + "type": "string" + } + }, + "friendlyName": { + "description": "The name.", + "type": "string" + }, + "state": { + "description": "The State. It is one of these values - NotStarted, InProgress, Succeeded, Failed, Cancelled, Suspended or Other.", + "type": "string" + }, + "stateDescription": { + "description": "The description of the task state. For example - For Succeeded state, description can be Completed, PartiallySucceeded, CompletedWithInformation or Skipped.", + "type": "string" + }, + "taskType": { + "description": "The type of task. Details in CustomDetails property depend on this type.", + "type": "string" + }, + "customDetails": { + "$ref": "#/definitions/TaskTypeDetails", + "description": "The custom task details based on the task type." + }, + "groupTaskCustomDetails": { + "$ref": "#/definitions/GroupTaskDetails", + "description": "The custom task details based on the task type, if the task type is GroupTaskDetails or one of the types derived from it." + }, + "errors": { + "description": "The task error details.", + "type": "array", + "items": { + "$ref": "#/definitions/JobErrorDetails" + } + } + } + }, + "AutomationRunbookTaskDetails": { + "description": "This class represents the task details for an automation runbook.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TaskTypeDetails" + } + ], + "properties": { + "name": { + "description": "The recovery plan task name.", + "type": "string" + }, + "cloudServiceName": { + "description": "The cloud service of the automation runbook account.", + "type": "string" + }, + "subscriptionId": { + "description": "The subscription Id of the automation runbook account.", + "type": "string" + }, + "accountName": { + "description": "The automation account name of the runbook.", + "type": "string" + }, + "runbookId": { + "description": "The runbook Id.", + "type": "string" + }, + "runbookName": { + "description": "The runbook name.", + "type": "string" + }, + "jobId": { + "description": "The job Id of the runbook execution.", + "type": "string" + }, + "jobOutput": { + "description": "The execution output of the runbook.", + "type": "string" + }, + "isPrimarySideScript": { + "description": "A value indicating whether it is a primary side script or not.", + "type": "boolean" + } + }, + "x-ms-discriminator-value": "AutomationRunbookTaskDetails" + }, + "AzureFabricCreationInput": { + "description": "Fabric provider specific settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/FabricSpecificCreationInput" + } + ], + "properties": { + "location": { + "description": "The Location.", + "type": "string" + } + }, + "x-ms-discriminator-value": "Azure" + }, + "AzureFabricSpecificDetails": { + "description": "Azure Fabric Specific Details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/FabricSpecificDetails" + } + ], + "properties": { + "location": { + "description": "The Location for the Azure fabric.", + "type": "string" + }, + "containerIds": { + "description": "The container Ids for the Azure fabric.", + "type": "array", + "items": { + "type": "string" + } + }, + "zones": { + "description": "The zones.", + "type": "array", + "items": { + "$ref": "#/definitions/A2AZoneDetails" + } + } + }, + "x-ms-discriminator-value": "Azure" + }, + "AzureToAzureCreateNetworkMappingInput": { + "description": "Create network mappings input properties/behavior specific to Azure to Azure Network mapping.", + "required": [ + "primaryNetworkId" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/FabricSpecificCreateNetworkMappingInput" + } + ], + "properties": { + "primaryNetworkId": { + "description": "The primary azure vnet Id.", + "type": "string" + } + }, + "x-ms-discriminator-value": "AzureToAzure" + }, + "AzureToAzureNetworkMappingSettings": { + "description": "A2A Network Mapping fabric specific settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/NetworkMappingFabricSpecificSettings" + } + ], + "properties": { + "primaryFabricLocation": { + "description": "The primary fabric location.", + "type": "string" + }, + "recoveryFabricLocation": { + "description": "The recovery fabric location.", + "type": "string" + } + }, + "x-ms-discriminator-value": "AzureToAzure" + }, + "AzureToAzureUpdateNetworkMappingInput": { + "description": "Updates network mappings input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/FabricSpecificUpdateNetworkMappingInput" + } + ], + "properties": { + "primaryNetworkId": { + "description": "The primary azure vnet Id.", + "type": "string" + } + }, + "x-ms-discriminator-value": "AzureToAzure" + }, + "AzureToAzureVmSyncedConfigDetails": { + "description": "Azure to Azure VM synced configuration details.", + "type": "object", + "properties": { + "tags": { + "description": "The Azure VM tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "inputEndpoints": { + "description": "The Azure VM input endpoints.", + "type": "array", + "items": { + "$ref": "#/definitions/InputEndpoint" + } + } + } + }, + "AzureVmDiskDetails": { + "description": "Disk details for E2A provider.", + "type": "object", + "properties": { + "vhdType": { + "description": "VHD type.", + "type": "string" + }, + "vhdId": { + "description": "The VHD id.", + "type": "string" + }, + "diskId": { + "description": "The disk resource id.", + "type": "string" + }, + "vhdName": { + "description": "VHD name.", + "type": "string" + }, + "maxSizeMB": { + "description": "Max side in MB.", + "type": "string" + }, + "targetDiskLocation": { + "description": "Blob uri of the Azure disk.", + "type": "string" + }, + "targetDiskName": { + "description": "The target Azure disk name.", + "type": "string" + }, + "lunId": { + "description": "Ordinal\\LunId of the disk for the Azure VM.", + "type": "string" + }, + "diskEncryptionSetId": { + "description": "The DiskEncryptionSet ARM ID.", + "type": "string" + } + } + }, + "ComputeSizeErrorDetails": { + "description": "Represents the error used to indicate why the target compute size is not applicable.", + "type": "object", + "properties": { + "message": { + "description": "The error message.", + "type": "string" + }, + "severity": { + "description": "The severity of the error.", + "type": "string" + } + } + }, + "ConfigurationSettings": { + "description": "Replication provider specific settings.", + "type": "object", + "properties": { + "instanceType": { + "description": "Gets the class type. Overridden in derived classes.", + "type": "string", + "readOnly": true + } + }, + "discriminator": "instanceType" + }, + "ConfigureAlertRequest": { + "description": "Request to configure alerts for the system.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/ConfigureAlertRequestProperties", + "description": "The properties of a configure alert request." + } + } + }, + "ConfigureAlertRequestProperties": { + "description": "Properties of a configure alert request.", + "type": "object", + "properties": { + "sendToOwners": { + "description": "A value indicating whether to send email to subscription administrator.", + "type": "string" + }, + "customEmailAddresses": { + "description": "The custom email address for sending emails.", + "type": "array", + "items": { + "type": "string" + } + }, + "locale": { + "description": "The locale for the email notification.", + "type": "string" + } + } + }, + "ConsistencyCheckTaskDetails": { + "description": "This class contains monitoring details of all the inconsistent Protected Entities in Vmm.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TaskTypeDetails" + } + ], + "properties": { + "vmDetails": { + "description": "The list of inconsistent Vm details.", + "type": "array", + "items": { + "$ref": "#/definitions/InconsistentVmDetails" + } + } + }, + "x-ms-discriminator-value": "ConsistencyCheckTaskDetails" + }, + "CreateNetworkMappingInput": { + "description": "Create network mappings input.", + "required": [ + "properties" + ], + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/CreateNetworkMappingInputProperties", + "description": "Input properties for creating network mapping." + } + } + }, + "CreateNetworkMappingInputProperties": { + "description": "Common input details for network mapping operation.", + "required": [ + "recoveryNetworkId" + ], + "type": "object", + "properties": { + "recoveryFabricName": { + "description": "Recovery fabric Name.", + "type": "string" + }, + "recoveryNetworkId": { + "description": "Recovery network Id.", + "type": "string" + }, + "fabricSpecificDetails": { + "$ref": "#/definitions/FabricSpecificCreateNetworkMappingInput", + "description": "Fabric specific input properties." + } + } + }, + "CreatePolicyInput": { + "description": "Protection Policy input.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/CreatePolicyInputProperties", + "description": "Policy creation properties." + } + } + }, + "CreatePolicyInputProperties": { + "description": "Policy creation properties.", + "type": "object", + "properties": { + "providerSpecificInput": { + "$ref": "#/definitions/PolicyProviderSpecificInput", + "description": "The ReplicationProviderSettings." + } + } + }, + "CreateProtectionContainerInput": { + "description": "Create protection container input.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/CreateProtectionContainerInputProperties", + "description": "Create protection container input properties." + } + } + }, + "CreateProtectionContainerInputProperties": { + "description": "Create protection container input properties.", + "type": "object", + "properties": { + "providerSpecificInput": { + "description": "Provider specific inputs for container creation.", + "type": "array", + "items": { + "$ref": "#/definitions/ReplicationProviderSpecificContainerCreationInput" + } + } + } + }, + "CreateProtectionContainerMappingInput": { + "description": "Configure pairing input.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/CreateProtectionContainerMappingInputProperties", + "description": "Configure protection input properties." + } + } + }, + "CreateProtectionContainerMappingInputProperties": { + "description": "Configure pairing input properties.", + "type": "object", + "properties": { + "targetProtectionContainerId": { + "description": "The target unique protection container name.", + "type": "string" + }, + "policyId": { + "description": "Applicable policy.", + "type": "string" + }, + "providerSpecificInput": { + "$ref": "#/definitions/ReplicationProviderSpecificContainerMappingInput", + "description": "Provider specific input for pairing." + } + } + }, + "CreateProtectionIntentInput": { + "description": "Create protection intent input.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/CreateProtectionIntentProperties", + "description": "Create protection intent input properties." + } + } + }, + "CreateProtectionIntentProperties": { + "description": "Create protection intent input properties.", + "type": "object", + "properties": { + "providerSpecificDetails": { + "$ref": "#/definitions/CreateProtectionIntentProviderSpecificDetails", + "description": "The ReplicationProviderInput. For A2A provider, it will be A2ACreateProtectionIntentInput object." + } + } + }, + "CreateProtectionIntentProviderSpecificDetails": { + "description": "Create protection intent provider specific input.", + "type": "object", + "properties": { + "instanceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, + "CreateRecoveryPlanInput": { + "description": "Create recovery plan input class.", + "required": [ + "properties" + ], + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/CreateRecoveryPlanInputProperties", + "description": "Recovery plan creation properties." + } + } + }, + "CreateRecoveryPlanInputProperties": { + "description": "Recovery plan creation properties.", + "required": [ + "primaryFabricId", + "recoveryFabricId", + "groups" + ], + "type": "object", + "properties": { + "primaryFabricId": { + "description": "The primary fabric Id.", + "type": "string" + }, + "recoveryFabricId": { + "description": "The recovery fabric Id.", + "type": "string" + }, + "failoverDeploymentModel": { + "description": "The failover deployment model.", + "enum": [ + "NotApplicable", + "Classic", + "ResourceManager" + ], + "type": "string", + "x-ms-enum": { + "name": "FailoverDeploymentModel", + "modelAsString": true + } + }, + "groups": { + "description": "The recovery plan groups.", + "type": "array", + "items": { + "$ref": "#/definitions/RecoveryPlanGroup" + } + }, + "providerSpecificInput": { + "description": "The provider specific input.", + "type": "array", + "items": { + "$ref": "#/definitions/RecoveryPlanProviderSpecificInput" + } + } + } + }, + "CurrentJobDetails": { + "description": "Current job details of the migration item.", + "type": "object", + "properties": { + "jobName": { + "description": "The job name.", + "type": "string", + "readOnly": true + }, + "jobId": { + "description": "The ARM Id of the job being executed.", + "type": "string", + "readOnly": true + }, + "startTime": { + "format": "date-time", + "description": "The start time of the job.", + "type": "string", + "readOnly": true + } + } + }, + "CurrentScenarioDetails": { + "description": "Current scenario details of the protected entity.", + "type": "object", + "properties": { + "scenarioName": { + "description": "Scenario name.", + "type": "string" + }, + "jobId": { + "description": "ARM Id of the job being executed.", + "type": "string" + }, + "startTime": { + "format": "date-time", + "description": "Start time of the workflow.", + "type": "string" + } + } + }, + "DataStore": { + "description": "The datastore details of the MT.", + "type": "object", + "properties": { + "symbolicName": { + "description": "The symbolic name of data store.", + "type": "string" + }, + "uuid": { + "description": "The uuid of data store.", + "type": "string" + }, + "capacity": { + "description": "The capacity of data store in GBs.", + "type": "string" + }, + "freeSpace": { + "description": "The free space of data store in GBs.", + "type": "string" + }, + "type": { + "description": "The type of data store.", + "type": "string" + } + } + }, + "DisableProtectionInput": { + "description": "Disable protection input.", + "required": [ + "properties" + ], + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/DisableProtectionInputProperties", + "description": "Disable protection input properties." + } + } + }, + "DisableProtectionInputProperties": { + "description": "Disable protection input properties.", + "type": "object", + "properties": { + "disableProtectionReason": { + "description": "Disable protection reason. It can have values NotSpecified/MigrationComplete.", + "enum": [ + "NotSpecified", + "MigrationComplete" + ], + "type": "string", + "x-ms-enum": { + "name": "DisableProtectionReason", + "modelAsString": true + } + }, + "replicationProviderInput": { + "$ref": "#/definitions/DisableProtectionProviderSpecificInput", + "description": "Replication provider specific input." + } + } + }, + "DisableProtectionProviderSpecificInput": { + "description": "Disable protection provider specific input.", + "type": "object", + "properties": { + "instanceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, + "DiscoverProtectableItemRequest": { + "description": "Request to add a physical machine as a protectable item in a container.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/DiscoverProtectableItemRequestProperties", + "description": "The properties of a discover protectable item request." + } + } + }, + "DiscoverProtectableItemRequestProperties": { + "description": "Discover protectable item properties.", + "type": "object", + "properties": { + "friendlyName": { + "description": "The friendly name of the physical machine.", + "type": "string" + }, + "ipAddress": { + "description": "The IP address of the physical machine to be discovered.", + "type": "string" + }, + "osType": { + "description": "The OS type on the physical machine.", + "type": "string" + } + } + }, + "DiskDetails": { + "description": "Onprem disk details data.", + "type": "object", + "properties": { + "maxSizeMB": { + "format": "int64", + "description": "The hard disk max size in MB.", + "type": "integer" + }, + "vhdType": { + "description": "The type of the volume.", + "type": "string" + }, + "vhdId": { + "description": "The VHD Id.", + "type": "string" + }, + "vhdName": { + "description": "The VHD name.", + "type": "string" + } + } + }, + "DiskEncryptionInfo": { + "description": "Recovery disk encryption info (BEK and KEK).", + "type": "object", + "properties": { + "diskEncryptionKeyInfo": { + "$ref": "#/definitions/DiskEncryptionKeyInfo", + "description": "The recovery KeyVault reference for secret." + }, + "keyEncryptionKeyInfo": { + "$ref": "#/definitions/KeyEncryptionKeyInfo", + "description": "The recovery KeyVault reference for key." + } + } + }, + "DiskEncryptionKeyInfo": { + "description": "Disk Encryption Key Information (BitLocker Encryption Key (BEK) on Windows).", + "type": "object", + "properties": { + "secretIdentifier": { + "description": "The secret url / identifier.", + "type": "string" + }, + "keyVaultResourceArmId": { + "description": "The KeyVault resource ARM id for secret.", + "type": "string" + } + } + }, + "DiskVolumeDetails": { + "description": "Volume details.", + "type": "object", + "properties": { + "label": { + "description": "The volume label.", + "type": "string" + }, + "name": { + "description": "The volume name.", + "type": "string" + } + } + }, + "Display": { + "description": "Contains the localized display information for this particular operation / action. These value will be used by several clients for (1) custom role definitions for RBAC; (2) complex query filters for the event service; and (3) audit history / records for management operations.", + "type": "object", + "properties": { + "provider": { + "description": "The provider. The localized friendly form of the resource provider name - it is expected to also include the publisher/company responsible. It should use Title Casing and begin with \"Microsoft\" for 1st party services. e.g. \"Microsoft Monitoring Insights\" or \"Microsoft Compute.\".", + "type": "string" + }, + "resource": { + "description": "The resource. The localized friendly form of the resource related to this action/operation - it should match the public documentation for the resource provider. It should use Title Casing. This value should be unique for a particular URL type (e.g. nested types should *not* reuse their parent's display.resource field). e.g. \"Virtual Machines\" or \"Scheduler Job Collections\", or \"Virtual Machine VM Sizes\" or \"Scheduler Jobs\".", + "type": "string" + }, + "operation": { + "description": "The operation. The localized friendly name for the operation, as it should be shown to the user. It should be concise (to fit in drop downs) but clear (i.e. self-documenting). It should use Title Casing. Prescriptive guidance: Read Create or Update Delete 'ActionName'.", + "type": "string" + }, + "description": { + "description": "The description. The localized friendly description for the operation, as it should be shown to the user. It should be thorough, yet concise - it will be used in tool tips and detailed views. Prescriptive guidance for namespaces: Read any 'display.provider' resource Create or Update any 'display.provider' resource Delete any 'display.provider' resource Perform any other action on any 'display.provider' resource Prescriptive guidance for namespaces: Read any 'display.resource' Create or Update any 'display.resource' Delete any 'display.resource' 'ActionName' any 'display.resources'.", + "type": "string" + } + } + }, + "DraDetails": { + "description": "DRA details.", + "type": "object", + "properties": { + "id": { + "description": "The DRA Id.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The DRA name.", + "type": "string", + "readOnly": true + }, + "biosId": { + "description": "The DRA Bios Id.", + "type": "string", + "readOnly": true + }, + "version": { + "description": "The version.", + "type": "string", + "readOnly": true + }, + "lastHeartbeatUtc": { + "format": "date-time", + "description": "The last heartbeat received from the DRA.", + "type": "string", + "readOnly": true + }, + "health": { + "description": "The health.", + "enum": [ + "None", + "Normal", + "Warning", + "Critical" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProtectionHealth", + "modelAsString": true + } + }, + "healthErrors": { + "description": "The health errors.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthError" + }, + "readOnly": true + } + } + }, + "EnableMigrationInput": { + "description": "Enable migration input.", + "required": [ + "properties" + ], + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/EnableMigrationInputProperties", + "description": "Enable migration input properties." + } + } + }, + "EnableMigrationInputProperties": { + "description": "Enable migration input properties.", + "required": [ + "policyId", + "providerSpecificDetails" + ], + "type": "object", + "properties": { + "policyId": { + "description": "The policy Id.", + "type": "string" + }, + "providerSpecificDetails": { + "$ref": "#/definitions/EnableMigrationProviderSpecificInput", + "description": "The provider specific details." + } + } + }, + "EnableMigrationProviderSpecificInput": { + "description": "Enable migration provider specific input.", + "required": [ + "instanceType" + ], + "type": "object", + "properties": { + "instanceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, + "EnableProtectionInput": { + "description": "Enable protection input.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/EnableProtectionInputProperties", + "description": "Enable protection input properties." + } + } + }, + "EnableProtectionInputProperties": { + "description": "Enable protection input properties.", + "type": "object", + "properties": { + "policyId": { + "description": "The Policy Id.", + "type": "string" + }, + "protectableItemId": { + "description": "The protectable item Id.", + "type": "string" + }, + "providerSpecificDetails": { + "$ref": "#/definitions/EnableProtectionProviderSpecificInput", + "description": "The ReplicationProviderInput. For HyperVReplicaAzure provider, it will be AzureEnableProtectionInput object. For San provider, it will be SanEnableProtectionInput object. For HyperVReplicaAzure provider, it can be null." + } + } + }, + "EnableProtectionProviderSpecificInput": { + "description": "Enable protection provider specific input.", + "type": "object", + "properties": { + "instanceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, + "EncryptionDetails": { + "description": "Encryption details for the fabric.", + "type": "object", + "properties": { + "kekState": { + "description": "The key encryption key state for the Vmm.", + "type": "string" + }, + "kekCertThumbprint": { + "description": "The key encryption key certificate thumbprint.", + "type": "string" + }, + "kekCertExpiryDate": { + "format": "date-time", + "description": "The key encryption key certificate expiry date.", + "type": "string" + } + } + }, + "Event": { + "description": "Implements the Event class.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/EventProperties", + "description": "Event related data." + } + } + }, + "EventCollection": { + "description": "Collection of fabric details.", + "type": "object", + "properties": { + "value": { + "description": "The list of events.", + "type": "array", + "items": { + "$ref": "#/definitions/Event" + } + }, + "nextLink": { + "description": "The value of next link.", + "type": "string" + } + } + }, + "EventProperties": { + "description": "The properties of a monitoring event.", + "type": "object", + "properties": { + "eventCode": { + "description": "The Id of the monitoring event.", + "type": "string" + }, + "description": { + "description": "The event name.", + "type": "string" + }, + "eventType": { + "description": "The type of the event. for example: VM Health, Server Health, Job Failure etc.", + "type": "string" + }, + "affectedObjectFriendlyName": { + "description": "The friendly name of the source of the event on which it is raised (for example, VM, VMM etc).", + "type": "string" + }, + "affectedObjectCorrelationId": { + "description": "The affected object correlationId for the event.", + "type": "string" + }, + "severity": { + "description": "The severity of the event.", + "type": "string" + }, + "timeOfOccurrence": { + "format": "date-time", + "description": "The time of occurrence of the event.", + "type": "string" + }, + "fabricId": { + "description": "The ARM ID of the fabric.", + "type": "string" + }, + "providerSpecificDetails": { + "$ref": "#/definitions/EventProviderSpecificDetails", + "description": "The provider specific settings." + }, + "eventSpecificDetails": { + "$ref": "#/definitions/EventSpecificDetails", + "description": "The event specific settings." + }, + "healthErrors": { + "description": "The list of errors / warnings capturing details associated with the issue(s).", + "type": "array", + "items": { + "$ref": "#/definitions/HealthError" + } + } + } + }, + "EventProviderSpecificDetails": { + "description": "Model class for provider specific details for an event.", + "type": "object", + "properties": { + "instanceType": { + "description": "Gets the class type. Overridden in derived classes.", + "type": "string", + "readOnly": true + } + }, + "discriminator": "instanceType" + }, + "EventQueryParameter": { + "description": "Implements the event query parameter.", + "type": "object", + "properties": { + "eventCode": { + "description": "The source id of the events to be queried.", + "type": "string" + }, + "severity": { + "description": "The severity of the events to be queried.", + "type": "string" + }, + "eventType": { + "description": "The type of the events to be queried.", + "type": "string" + }, + "fabricName": { + "description": "The affected object server id of the events to be queried.", + "type": "string" + }, + "affectedObjectFriendlyName": { + "description": "The affected object name of the events to be queried.", + "type": "string" + }, + "affectedObjectCorrelationId": { + "description": "The affected object correlationId for the events to be queried.", + "type": "string" + }, + "startTime": { + "format": "date-time", + "description": "The start time of the time range within which the events are to be queried.", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "The end time of the time range within which the events are to be queried.", + "type": "string" + } + } + }, + "EventSpecificDetails": { + "description": "Model class for event specific details for an event.", + "type": "object", + "properties": { + "instanceType": { + "description": "Gets the class type. Overridden in derived classes.", + "type": "string", + "readOnly": true + } + }, + "discriminator": "instanceType" + }, + "ExistingProtectionProfile": { + "description": "Existing storage account input.", + "required": [ + "protectionProfileId" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionProfileCustomDetails" + } + ], + "properties": { + "protectionProfileId": { + "description": "The protection profile Arm Id. Throw error, if resource does not exists.", + "type": "string" + } + }, + "x-ms-discriminator-value": "Existing" + }, + "ExistingRecoveryAvailabilitySet": { + "description": "Existing recovery availability set input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RecoveryAvailabilitySetCustomDetails" + } + ], + "properties": { + "recoveryAvailabilitySetId": { + "description": "The recovery availability set Id. Will throw error, if resource does not exist.", + "type": "string" + } + }, + "x-ms-discriminator-value": "Existing" + }, + "ExistingRecoveryProximityPlacementGroup": { + "description": "Existing recovery proximity placement group input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RecoveryProximityPlacementGroupCustomDetails" + } + ], + "properties": { + "recoveryProximityPlacementGroupId": { + "description": "The recovery proximity placement group Id. Will throw error, if resource does not exist.", + "type": "string" + } + }, + "x-ms-discriminator-value": "Existing" + }, + "ExistingRecoveryRecoveryResourceGroup": { + "description": "Existing recovery resource group input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RecoveryResourceGroupCustomDetails" + } + ], + "properties": { + "recoveryResourceGroupId": { + "description": "The recovery resource group Id. Valid for V2 scenarios.", + "type": "string" + } + }, + "x-ms-discriminator-value": "Existing" + }, + "ExistingRecoveryVirtualNetwork": { + "description": "Existing recovery virtual network input.", + "required": [ + "recoveryVirtualNetworkId" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RecoveryVirtualNetworkCustomDetails" + } + ], + "properties": { + "recoveryVirtualNetworkId": { + "description": "The recovery virtual network Id. Will throw error, if resource does not exist.", + "type": "string" + }, + "recoverySubnetName": { + "description": "The recovery subnet name.", + "type": "string" + } + }, + "x-ms-discriminator-value": "Existing" + }, + "ExistingStorageAccount": { + "description": "Existing storage account input.", + "required": [ + "azureStorageAccountId" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/StorageAccountCustomDetails" + } + ], + "properties": { + "azureStorageAccountId": { + "description": "The storage account Arm Id. Throw error, if resource does not exists.", + "type": "string" + } + }, + "x-ms-discriminator-value": "Existing" + }, + "ExportJobDetails": { + "description": "This class represents details for export jobs workflow.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/JobDetails" + } + ], + "properties": { + "blobUri": { + "description": "BlobUri of the exported jobs.", + "type": "string" + }, + "sasToken": { + "description": "The sas token to access blob.", + "type": "string" + } + }, + "x-ms-discriminator-value": "ExportJobDetails" + }, + "Fabric": { + "description": "Fabric definition.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/FabricProperties", + "description": "Fabric related data." + } + } + }, + "FabricCollection": { + "description": "Collection of fabric details.", + "type": "object", + "properties": { + "value": { + "description": "The fabric details.", + "type": "array", + "items": { + "$ref": "#/definitions/Fabric" + } + }, + "nextLink": { + "description": "The value of next link.", + "type": "string" + } + } + }, + "FabricCreationInput": { + "description": "Site details provided during the time of site creation.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/FabricCreationInputProperties", + "description": "Fabric creation input." + } + } + }, + "FabricCreationInputProperties": { + "description": "Properties of site details provided during the time of site creation.", + "type": "object", + "properties": { + "customDetails": { + "$ref": "#/definitions/FabricSpecificCreationInput", + "description": "Fabric provider specific creation input." + } + } + }, + "FabricProperties": { + "description": "Fabric properties.", + "type": "object", + "properties": { + "friendlyName": { + "description": "Friendly name of the fabric.", + "type": "string" + }, + "encryptionDetails": { + "$ref": "#/definitions/EncryptionDetails", + "description": "Encryption details for the fabric." + }, + "rolloverEncryptionDetails": { + "$ref": "#/definitions/EncryptionDetails", + "description": "Rollover encryption details for the fabric." + }, + "internalIdentifier": { + "description": "Dra Registration Id.", + "type": "string" + }, + "bcdrState": { + "description": "BCDR state of the fabric.", + "type": "string" + }, + "customDetails": { + "$ref": "#/definitions/FabricSpecificDetails", + "description": "Fabric specific settings." + }, + "healthErrorDetails": { + "description": "Fabric health error details.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthError" + } + }, + "health": { + "description": "Health of fabric.", + "type": "string" + } + } + }, + "FabricQueryParameter": { + "description": "Query parameter to get fabric.", + "type": "object", + "properties": { + "zoneToZoneMappings": { + "description": "A value indicating whether the zone to zone mappings are to be returned.", + "type": "string" + }, + "fetchAgentDetails": { + "description": "A value indicating whether the agent details are to be fetched.", + "type": "string" + }, + "biosId": { + "description": "The BIOS Id to be used for fetching agent details.", + "type": "string" + }, + "fqdn": { + "description": "The FQDN to be used for fetching agent details.", + "type": "string" + }, + "discoveryType": { + "description": "The type of the discovered machine to be used for fetching agent details.", + "type": "string" + }, + "osType": { + "description": "The OS type to be used for fetching agent details.", + "type": "string" + } + } + }, + "FabricReplicationGroupTaskDetails": { + "description": "This class represents the fabric replication group task details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/JobTaskDetails" + } + ], + "properties": { + "skippedReason": { + "description": "The skipped reason.", + "type": "string" + }, + "skippedReasonString": { + "description": "The skipped reason string.", + "type": "string" + } + }, + "x-ms-discriminator-value": "FabricReplicationGroupTaskDetails" + }, + "FabricSpecificCreateNetworkMappingInput": { + "description": "Input details specific to fabrics during Network Mapping.", + "type": "object", + "properties": { + "instanceType": { + "description": "The instance type.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, + "FabricSpecificCreationInput": { + "description": "Fabric provider specific settings.", + "type": "object", + "properties": { + "instanceType": { + "description": "Gets the class type.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, + "FabricSpecificDetails": { + "description": "Fabric specific details.", + "type": "object", + "properties": { + "instanceType": { + "description": "Gets the class type. Overridden in derived classes.", + "type": "string", + "readOnly": true + } + }, + "discriminator": "instanceType" + }, + "FabricSpecificUpdateNetworkMappingInput": { + "description": "Input details specific to fabrics during Network Mapping.", + "type": "object", + "properties": { + "instanceType": { + "description": "The instance type.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, + "FailoverJobDetails": { + "description": "This class represents the details for a failover job.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/JobDetails" + } + ], + "properties": { + "protectedItemDetails": { + "description": "The test VM details.", + "type": "array", + "items": { + "$ref": "#/definitions/FailoverReplicationProtectedItemDetails" + } + } + }, + "x-ms-discriminator-value": "FailoverJobDetails" + }, + "FailoverProcessServerRequest": { + "description": "Request to failover a process server.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/FailoverProcessServerRequestProperties", + "description": "The properties of the PS Failover request." + } + } + }, + "FailoverProcessServerRequestProperties": { + "description": "The properties of the Failover Process Server request.", + "type": "object", + "properties": { + "containerName": { + "description": "The container identifier.", + "type": "string" + }, + "sourceProcessServerId": { + "description": "The source process server.", + "type": "string" + }, + "targetProcessServerId": { + "description": "The new process server.", + "type": "string" + }, + "vmsToMigrate": { + "description": "The VMS to migrate.", + "type": "array", + "items": { + "type": "string" + } + }, + "updateType": { + "description": "A value for failover type. It can be systemlevel/serverlevel.", + "type": "string" + } + } + }, + "FailoverReplicationProtectedItemDetails": { + "description": "Failover details for a replication protected item.", + "type": "object", + "properties": { + "name": { + "description": "The name.", + "type": "string" + }, + "friendlyName": { + "description": "The friendly name.", + "type": "string" + }, + "testVmName": { + "description": "The test Vm name.", + "type": "string" + }, + "testVmFriendlyName": { + "description": "The test Vm friendly name.", + "type": "string" + }, + "networkConnectionStatus": { + "description": "The network connection status.", + "type": "string" + }, + "networkFriendlyName": { + "description": "The network friendly name.", + "type": "string" + }, + "subnet": { + "description": "The network subnet.", + "type": "string" + }, + "recoveryPointId": { + "description": "The recovery point Id.", + "type": "string" + }, + "recoveryPointTime": { + "format": "date-time", + "description": "The recovery point time.", + "type": "string" + } + } + }, + "GroupTaskDetails": { + "description": "This class represents the group task details when parent child relationship exists in the drill down.", + "type": "object", + "properties": { + "instanceType": { + "description": "The type of task details.", + "type": "string" + }, + "childTasks": { + "description": "The child tasks.", + "type": "array", + "items": { + "$ref": "#/definitions/ASRTask" + } + } + }, + "discriminator": "instanceType" + }, + "HealthError": { + "description": "Health Error.", + "type": "object", + "properties": { + "innerHealthErrors": { + "description": "The inner health errors. HealthError having a list of HealthError as child errors is problematic. InnerHealthError is used because this will prevent an infinite loop of structures when Hydra tries to auto-generate the contract. We are exposing the related health errors as inner health errors and all API consumers can utilize this in the same fashion as Exception -> InnerException.", + "type": "array", + "items": { + "$ref": "#/definitions/InnerHealthError" + } + }, + "errorSource": { + "description": "Source of error.", + "type": "string" + }, + "errorType": { + "description": "Type of error.", + "type": "string" + }, + "errorLevel": { + "description": "Level of error.", + "type": "string" + }, + "errorCategory": { + "description": "Category of error.", + "type": "string" + }, + "errorCode": { + "description": "Error code.", + "type": "string" + }, + "summaryMessage": { + "description": "Summary message of the entity.", + "type": "string" + }, + "errorMessage": { + "description": "Error message.", + "type": "string" + }, + "possibleCauses": { + "description": "Possible causes of error.", + "type": "string" + }, + "recommendedAction": { + "description": "Recommended action to resolve error.", + "type": "string" + }, + "creationTimeUtc": { + "format": "date-time", + "description": "Error creation time (UTC).", + "type": "string" + }, + "recoveryProviderErrorMessage": { + "description": "DRA error message.", + "type": "string" + }, + "entityId": { + "description": "ID of the entity.", + "type": "string" + }, + "errorId": { + "description": "The health error unique id.", + "type": "string" + }, + "customerResolvability": { + "description": "Value indicating whether the health error is customer resolvable.", + "enum": [ + "Allowed", + "NotAllowed" + ], + "type": "string", + "x-ms-enum": { + "name": "HealthErrorCustomerResolvability", + "modelAsString": true + } + } + } + }, + "HealthErrorSummary": { + "description": "class to define the summary of the health error details.", + "type": "object", + "properties": { + "summaryCode": { + "description": "The code of the health error.", + "type": "string" + }, + "category": { + "description": "The category of the health error.", + "enum": [ + "None", + "Replication", + "TestFailover", + "Configuration", + "FabricInfrastructure", + "VersionExpiry", + "AgentAutoUpdateInfra", + "AgentAutoUpdateArtifactDeleted", + "AgentAutoUpdateRunAsAccount", + "AgentAutoUpdateRunAsAccountExpiry", + "AgentAutoUpdateRunAsAccountExpired" + ], + "type": "string", + "x-ms-enum": { + "name": "HealthErrorCategory", + "modelAsString": true + } + }, + "severity": { + "description": "Severity of error.", + "enum": [ + "NONE", + "Warning", + "Error", + "Info" + ], + "type": "string", + "x-ms-enum": { + "name": "Severity", + "modelAsString": true + } + }, + "summaryMessage": { + "description": "The summary message of the health error.", + "type": "string" + }, + "affectedResourceType": { + "description": "The type of affected ARM resource.", + "type": "string" + }, + "affectedResourceSubtype": { + "description": "The sub type of any subcomponent within the ARM resource that this might be applicable. Value remains null if not applicable.", + "type": "string" + }, + "affectedResourceCorrelationIds": { + "description": "The list of affected resource correlation Ids. This can be used to uniquely identify the count of items affected by a specific category and severity as well as count of item affected by an specific issue.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "HyperVHostDetails": { + "description": "Hyper-V host details.", + "type": "object", + "properties": { + "id": { + "description": "The Hyper-V host Id.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The Hyper-V host name.", + "type": "string", + "readOnly": true + }, + "marsAgentVersion": { + "description": "The Mars agent version.", + "type": "string", + "readOnly": true + } + } + }, + "HyperVReplica2012EventDetails": { + "description": "Model class for event details of a HyperVReplica E2E event.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/EventProviderSpecificDetails" + } + ], + "properties": { + "containerName": { + "description": "The container friendly name.", + "type": "string" + }, + "fabricName": { + "description": "The fabric friendly name.", + "type": "string" + }, + "remoteContainerName": { + "description": "The remote container name.", + "type": "string" + }, + "remoteFabricName": { + "description": "The remote fabric name.", + "type": "string" + } + }, + "x-ms-discriminator-value": "HyperVReplica2012" + }, + "HyperVReplica2012R2EventDetails": { + "description": "Model class for event details of a HyperVReplica blue E2E event.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/EventProviderSpecificDetails" + } + ], + "properties": { + "containerName": { + "description": "The container friendly name.", + "type": "string" + }, + "fabricName": { + "description": "The fabric friendly name.", + "type": "string" + }, + "remoteContainerName": { + "description": "The remote container name.", + "type": "string" + }, + "remoteFabricName": { + "description": "The remote fabric name.", + "type": "string" + } + }, + "x-ms-discriminator-value": "HyperVReplica2012R2" + }, + "HyperVReplicaAzureApplyRecoveryPointInput": { + "description": "ApplyRecoveryPoint input specific to HyperVReplicaAzure provider.", + "required": [ + "instanceType" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ApplyRecoveryPointProviderSpecificInput" + } + ], + "properties": { + "primaryKekCertificatePfx": { + "description": "The primary kek certificate pfx.", + "type": "string" + }, + "secondaryKekCertificatePfx": { + "description": "The secondary kek certificate pfx.", + "type": "string" + } + }, + "x-ms-discriminator-value": "HyperVReplicaAzure" + }, + "HyperVReplicaAzureDiskInputDetails": { + "description": "Disk input details.", + "type": "object", + "properties": { + "diskId": { + "description": "The DiskId.", + "type": "string" + }, + "logStorageAccountId": { + "description": "The LogStorageAccountId.", + "type": "string" + }, + "diskType": { + "description": "The DiskType.", + "enum": [ + "Standard_LRS", + "Premium_LRS", + "StandardSSD_LRS" + ], + "type": "string", + "x-ms-enum": { + "name": "DiskAccountType", + "modelAsString": true + } + }, + "diskEncryptionSetId": { + "description": "The DiskEncryptionSet ARM ID.", + "type": "string" + } + } + }, + "HyperVReplicaAzureEnableProtectionInput": { + "description": "HyperVReplicaAzure specific enable protection input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/EnableProtectionProviderSpecificInput" + } + ], + "properties": { + "hvHostVmId": { + "description": "The Hyper-V host VM Id.", + "type": "string" + }, + "vmName": { + "description": "The VM Name.", + "type": "string" + }, + "osType": { + "description": "The OS type associated with VM.", + "type": "string" + }, + "vhdId": { + "description": "The OS disk VHD id associated with VM.", + "type": "string" + }, + "targetStorageAccountId": { + "description": "The storage account Id.", + "type": "string" + }, + "targetAzureNetworkId": { + "description": "The selected target Azure network Id.", + "type": "string" + }, + "targetAzureSubnetId": { + "description": "The selected target Azure subnet Id.", + "type": "string" + }, + "enableRdpOnTargetOption": { + "description": "The selected option to enable RDP\\SSH on target vm after failover. String value of SrsDataContract.EnableRDPOnTargetOption enum.", + "type": "string" + }, + "targetAzureVmName": { + "description": "The target azure VM Name.", + "type": "string" + }, + "logStorageAccountId": { + "description": "The storage account to be used for logging during replication.", + "type": "string" + }, + "disksToInclude": { + "description": "The list of VHD Ids of disks to be protected.", + "type": "array", + "items": { + "type": "string" + } + }, + "targetAzureV1ResourceGroupId": { + "description": "The Id of the target resource group (for classic deployment) in which the failover VM is to be created.", + "type": "string" + }, + "targetAzureV2ResourceGroupId": { + "description": "The Id of the target resource group (for resource manager deployment) in which the failover VM is to be created.", + "type": "string" + }, + "useManagedDisks": { + "description": "A value indicating whether managed disks should be used during failover.", + "type": "string" + }, + "targetAvailabilitySetId": { + "description": "The target availability set ARM Id for resource manager deployment.", + "type": "string" + }, + "targetAvailabilityZone": { + "description": "The target availability zone.", + "type": "string" + }, + "licenseType": { + "description": "License type.", + "enum": [ + "NotSpecified", + "NoLicenseType", + "WindowsServer" + ], + "type": "string", + "x-ms-enum": { + "name": "LicenseType", + "modelAsString": true + } + }, + "sqlServerLicenseType": { + "description": "The SQL Server license type.", + "enum": [ + "NotSpecified", + "NoLicenseType", + "PAYG", + "AHUB" + ], + "type": "string", + "x-ms-enum": { + "name": "SqlServerLicenseType", + "modelAsString": true + } + }, + "targetVmSize": { + "description": "The target VM size.", + "type": "string" + }, + "targetProximityPlacementGroupId": { + "description": "The proximity placement group ARM Id.", + "type": "string" + }, + "useManagedDisksForReplication": { + "description": "A value indicating whether managed disks should be used during replication.", + "type": "string" + }, + "diskType": { + "description": "The DiskType.", + "enum": [ + "Standard_LRS", + "Premium_LRS", + "StandardSSD_LRS" + ], + "type": "string", + "x-ms-enum": { + "name": "DiskAccountType", + "modelAsString": true + } + }, + "disksToIncludeForManagedDisks": { + "description": "The disks to include list for managed disks.", + "type": "array", + "items": { + "$ref": "#/definitions/HyperVReplicaAzureDiskInputDetails" + } + }, + "diskEncryptionSetId": { + "description": "The DiskEncryptionSet ARM Id.", + "type": "string" + }, + "targetVmTags": { + "description": "The target VM tags.", + "maxLength": 50, + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "seedManagedDiskTags": { + "description": "The tags for the seed managed disks.", + "maxLength": 49, + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "targetManagedDiskTags": { + "description": "The tags for the target managed disks.", + "maxLength": 49, + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "targetNicTags": { + "description": "The tags for the target NICs.", + "maxLength": 50, + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "x-ms-discriminator-value": "HyperVReplicaAzure" + }, + "HyperVReplicaAzureEventDetails": { + "description": "Model class for event details of a HyperVReplica E2A event.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/EventProviderSpecificDetails" + } + ], + "properties": { + "containerName": { + "description": "The container friendly name.", + "type": "string" + }, + "fabricName": { + "description": "The fabric friendly name.", + "type": "string" + }, + "remoteContainerName": { + "description": "The remote container name.", + "type": "string" + } + }, + "x-ms-discriminator-value": "HyperVReplicaAzure" + }, + "HyperVReplicaAzureFailbackProviderInput": { + "description": "HyperVReplicaAzureFailback specific planned failover input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/PlannedFailoverProviderSpecificFailoverInput" + } + ], + "properties": { + "dataSyncOption": { + "description": "Data sync option.", + "type": "string" + }, + "recoveryVmCreationOption": { + "description": "ALR options to create alternate recovery.", + "type": "string" + }, + "providerIdForAlternateRecovery": { + "description": "Provider Id for alternate location.", + "type": "string" + } + }, + "x-ms-discriminator-value": "HyperVReplicaAzureFailback" + }, + "HyperVReplicaAzureManagedDiskDetails": { + "description": "Hyper-V Managed disk details.", + "type": "object", + "properties": { + "diskId": { + "description": "The disk Id.", + "type": "string" + }, + "seedManagedDiskId": { + "description": "Seed managed disk Id.", + "type": "string" + }, + "replicaDiskType": { + "description": "The replica disk type.", + "type": "string" + }, + "diskEncryptionSetId": { + "description": "The disk encryption set ARM Id.", + "type": "string" + } + } + }, + "HyperVReplicaAzurePlannedFailoverProviderInput": { + "description": "HyperVReplicaAzure specific planned failover input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/PlannedFailoverProviderSpecificFailoverInput" + } + ], + "properties": { + "primaryKekCertificatePfx": { + "description": "Primary kek certificate pfx.", + "type": "string" + }, + "secondaryKekCertificatePfx": { + "description": "Secondary kek certificate pfx.", + "type": "string" + }, + "recoveryPointId": { + "description": "The recovery point id to be passed to failover to a particular recovery point. In case of latest recovery point, null should be passed.", + "type": "string" + } + }, + "x-ms-discriminator-value": "HyperVReplicaAzure" + }, + "HyperVReplicaAzurePolicyDetails": { + "description": "Hyper-V Replica Azure specific protection profile details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/PolicyProviderSpecificDetails" + } + ], + "properties": { + "recoveryPointHistoryDurationInHours": { + "format": "int32", + "description": "The duration (in hours) to which point the recovery history needs to be maintained.", + "type": "integer" + }, + "applicationConsistentSnapshotFrequencyInHours": { + "format": "int32", + "description": "The interval (in hours) at which Hyper-V Replica should create an application consistent snapshot within the VM.", + "type": "integer" + }, + "replicationInterval": { + "format": "int32", + "description": "The replication interval.", + "type": "integer" + }, + "onlineReplicationStartTime": { + "description": "The scheduled start time for the initial replication. If this parameter is Null, the initial replication starts immediately.", + "type": "string" + }, + "encryption": { + "description": "A value indicating whether encryption is enabled for virtual machines in this cloud.", + "type": "string" + }, + "activeStorageAccountId": { + "description": "The active storage account Id.", + "type": "string" + } + }, + "x-ms-discriminator-value": "HyperVReplicaAzure" + }, + "HyperVReplicaAzurePolicyInput": { + "description": "Hyper-V Replica Azure specific input for creating a protection profile.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/PolicyProviderSpecificInput" + } + ], + "properties": { + "recoveryPointHistoryDuration": { + "format": "int32", + "description": "The duration (in hours) to which point the recovery history needs to be maintained.", + "type": "integer" + }, + "applicationConsistentSnapshotFrequencyInHours": { + "format": "int32", + "description": "The interval (in hours) at which Hyper-V Replica should create an application consistent snapshot within the VM.", + "type": "integer" + }, + "replicationInterval": { + "format": "int32", + "description": "The replication interval.", + "type": "integer" + }, + "onlineReplicationStartTime": { + "description": "The scheduled start time for the initial replication. If this parameter is Null, the initial replication starts immediately.", + "type": "string" + }, + "storageAccounts": { + "description": "The list of storage accounts to which the VMs in the primary cloud can replicate to.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "x-ms-discriminator-value": "HyperVReplicaAzure" + }, + "HyperVReplicaAzureReplicationDetails": { + "description": "Hyper V Replica Azure provider specific settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ReplicationProviderSpecificSettings" + } + ], + "properties": { + "azureVmDiskDetails": { + "description": "Azure VM Disk details.", + "type": "array", + "items": { + "$ref": "#/definitions/AzureVmDiskDetails" + } + }, + "recoveryAzureVmName": { + "description": "Recovery Azure given name.", + "type": "string" + }, + "recoveryAzureVMSize": { + "description": "The Recovery Azure VM size.", + "type": "string" + }, + "recoveryAzureStorageAccount": { + "description": "The recovery Azure storage account.", + "type": "string" + }, + "recoveryAzureLogStorageAccountId": { + "description": "The ARM id of the log storage account used for replication. This will be set to null if no log storage account was provided during enable protection.", + "type": "string" + }, + "lastReplicatedTime": { + "format": "date-time", + "description": "The Last replication time.", + "type": "string" + }, + "rpoInSeconds": { + "format": "int64", + "description": "Last RPO value.", + "type": "integer" + }, + "lastRpoCalculatedTime": { + "format": "date-time", + "description": "The last RPO calculated time.", + "type": "string" + }, + "vmId": { + "description": "The virtual machine Id.", + "type": "string" + }, + "vmProtectionState": { + "description": "The protection state for the vm.", + "type": "string" + }, + "vmProtectionStateDescription": { + "description": "The protection state description for the vm.", + "type": "string" + }, + "initialReplicationDetails": { + "$ref": "#/definitions/InitialReplicationDetails", + "description": "Initial replication details." + }, + "vmNics": { + "description": "The PE Network details.", + "type": "array", + "items": { + "$ref": "#/definitions/VMNicDetails" + } + }, + "selectedRecoveryAzureNetworkId": { + "description": "The selected recovery azure network Id.", + "type": "string" + }, + "selectedSourceNicId": { + "description": "The selected source nic Id which will be used as the primary nic during failover.", + "type": "string" + }, + "encryption": { + "description": "The encryption info.", + "type": "string" + }, + "oSDetails": { + "$ref": "#/definitions/OSDetails", + "description": "The operating system info." + }, + "sourceVmRamSizeInMB": { + "format": "int32", + "description": "The RAM size of the VM on the primary side.", + "type": "integer" + }, + "sourceVmCpuCount": { + "format": "int32", + "description": "The CPU count of the VM on the primary side.", + "type": "integer" + }, + "enableRdpOnTargetOption": { + "description": "The selected option to enable RDP\\SSH on target vm after failover. String value of SrsDataContract.EnableRDPOnTargetOption enum.", + "type": "string" + }, + "recoveryAzureResourceGroupId": { + "description": "The target resource group Id.", + "type": "string" + }, + "recoveryAvailabilitySetId": { + "description": "The recovery availability set Id.", + "type": "string" + }, + "targetAvailabilityZone": { + "description": "The target availability zone.", + "type": "string" + }, + "targetProximityPlacementGroupId": { + "description": "The target proximity placement group Id.", + "type": "string" + }, + "useManagedDisks": { + "description": "A value indicating whether managed disks should be used during failover.", + "type": "string" + }, + "licenseType": { + "description": "License Type of the VM to be used.", + "type": "string" + }, + "sqlServerLicenseType": { + "description": "The SQL Server license type.", + "type": "string" + }, + "lastRecoveryPointReceived": { + "format": "date-time", + "description": "The last recovery point received time.", + "type": "string", + "readOnly": true + }, + "targetVmTags": { + "description": "The target VM tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "seedManagedDiskTags": { + "description": "The tags for the seed managed disks.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "targetManagedDiskTags": { + "description": "The tags for the target managed disks.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "targetNicTags": { + "description": "The tags for the target NICs.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "protectedManagedDisks": { + "description": "The list of protected managed disks.", + "type": "array", + "items": { + "$ref": "#/definitions/HyperVReplicaAzureManagedDiskDetails" + } + } + }, + "x-ms-discriminator-value": "HyperVReplicaAzure" + }, + "HyperVReplicaAzureReprotectInput": { + "description": "Azure specific reprotect input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ReverseReplicationProviderSpecificInput" + } + ], + "properties": { + "hvHostVmId": { + "description": "The Hyper-V host Vm Id.", + "type": "string" + }, + "vmName": { + "description": "The Vm Name.", + "type": "string" + }, + "osType": { + "description": "The OS type associated with vm.", + "type": "string" + }, + "vHDId": { + "description": "The OS disk VHD id associated with vm.", + "type": "string" + }, + "storageAccountId": { + "description": "The storage account name.", + "type": "string" + }, + "logStorageAccountId": { + "description": "The storage account to be used for logging during replication.", + "type": "string" + } + }, + "x-ms-discriminator-value": "HyperVReplicaAzure" + }, + "HyperVReplicaAzureTestFailoverInput": { + "description": "HvrA provider specific input for test failover.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TestFailoverProviderSpecificInput" + } + ], + "properties": { + "primaryKekCertificatePfx": { + "description": "Primary kek certificate pfx.", + "type": "string" + }, + "secondaryKekCertificatePfx": { + "description": "Secondary kek certificate pfx.", + "type": "string" + }, + "recoveryPointId": { + "description": "The recovery point id to be passed to test failover to a particular recovery point. In case of latest recovery point, null should be passed.", + "type": "string" + } + }, + "x-ms-discriminator-value": "HyperVReplicaAzure" + }, + "HyperVReplicaAzureUnplannedFailoverInput": { + "description": "HvrA provider specific input for unplanned failover.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/UnplannedFailoverProviderSpecificInput" + } + ], + "properties": { + "primaryKekCertificatePfx": { + "description": "Primary kek certificate pfx.", + "type": "string" + }, + "secondaryKekCertificatePfx": { + "description": "Secondary kek certificate pfx.", + "type": "string" + }, + "recoveryPointId": { + "description": "The recovery point id to be passed to failover to a particular recovery point. In case of latest recovery point, null should be passed.", + "type": "string" + } + }, + "x-ms-discriminator-value": "HyperVReplicaAzure" + }, + "HyperVReplicaAzureUpdateReplicationProtectedItemInput": { + "description": "HyperV replica Azure input to update replication protected item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/UpdateReplicationProtectedItemProviderInput" + } + ], + "properties": { + "recoveryAzureV1ResourceGroupId": { + "description": "The recovery Azure resource group Id for classic deployment.", + "type": "string" + }, + "recoveryAzureV2ResourceGroupId": { + "description": "The recovery Azure resource group Id for resource manager deployment.", + "type": "string" + }, + "useManagedDisks": { + "description": "A value indicating whether managed disks should be used during failover.", + "type": "string" + }, + "diskIdToDiskEncryptionMap": { + "description": "The dictionary of disk resource Id to disk encryption set ARM Id.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "targetProximityPlacementGroupId": { + "description": "The target proximity placement group Id.", + "type": "string" + }, + "targetAvailabilityZone": { + "description": "The target availability zone.", + "type": "string" + }, + "targetVmTags": { + "description": "The target VM tags.", + "maxLength": 50, + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "targetManagedDiskTags": { + "description": "The tags for the target managed disks.", + "maxLength": 49, + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "targetNicTags": { + "description": "The tags for the target NICs.", + "maxLength": 50, + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "sqlServerLicenseType": { + "description": "The SQL Server license type.", + "enum": [ + "NotSpecified", + "NoLicenseType", + "PAYG", + "AHUB" + ], + "type": "string", + "x-ms-enum": { + "name": "SqlServerLicenseType", + "modelAsString": true + } + } + }, + "x-ms-discriminator-value": "HyperVReplicaAzure" + }, + "HyperVReplicaBaseEventDetails": { + "description": "Abstract model class for event details of a HyperVReplica E2E event.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/EventProviderSpecificDetails" + } + ], + "properties": { + "containerName": { + "description": "The container friendly name.", + "type": "string" + }, + "fabricName": { + "description": "The fabric friendly name.", + "type": "string" + }, + "remoteContainerName": { + "description": "The remote container name.", + "type": "string" + }, + "remoteFabricName": { + "description": "The remote fabric name.", + "type": "string" + } + }, + "x-ms-discriminator-value": "HyperVReplicaBaseEventDetails" + }, + "HyperVReplicaBasePolicyDetails": { + "description": "Base class for HyperVReplica policy details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/PolicyProviderSpecificDetails" + } + ], + "properties": { + "recoveryPoints": { + "format": "int32", + "description": "A value indicating the number of recovery points.", + "type": "integer" + }, + "applicationConsistentSnapshotFrequencyInHours": { + "format": "int32", + "description": "A value indicating the application consistent frequency.", + "type": "integer" + }, + "compression": { + "description": "A value indicating whether compression has to be enabled.", + "type": "string" + }, + "initialReplicationMethod": { + "description": "A value indicating whether IR is online.", + "type": "string" + }, + "onlineReplicationStartTime": { + "description": "A value indicating the online IR start time.", + "type": "string" + }, + "offlineReplicationImportPath": { + "description": "A value indicating the offline IR import path.", + "type": "string" + }, + "offlineReplicationExportPath": { + "description": "A value indicating the offline IR export path.", + "type": "string" + }, + "replicationPort": { + "format": "int32", + "description": "A value indicating the recovery HTTPS port.", + "type": "integer" + }, + "allowedAuthenticationType": { + "format": "int32", + "description": "A value indicating the authentication type.", + "type": "integer" + }, + "replicaDeletionOption": { + "description": "A value indicating whether the VM has to be auto deleted. Supported Values: String.Empty, None, OnRecoveryCloud.", + "type": "string" + } + }, + "x-ms-discriminator-value": "HyperVReplicaBasePolicyDetails" + }, + "HyperVReplicaBaseReplicationDetails": { + "description": "Hyper V replica provider specific settings base class.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ReplicationProviderSpecificSettings" + } + ], + "properties": { + "lastReplicatedTime": { + "format": "date-time", + "description": "The Last replication time.", + "type": "string" + }, + "vmNics": { + "description": "The PE Network details.", + "type": "array", + "items": { + "$ref": "#/definitions/VMNicDetails" + } + }, + "vmId": { + "description": "The virtual machine Id.", + "type": "string" + }, + "vmProtectionState": { + "description": "The protection state for the vm.", + "type": "string" + }, + "vmProtectionStateDescription": { + "description": "The protection state description for the vm.", + "type": "string" + }, + "initialReplicationDetails": { + "$ref": "#/definitions/InitialReplicationDetails", + "description": "Initial replication details." + }, + "vMDiskDetails": { + "description": "VM disk details.", + "type": "array", + "items": { + "$ref": "#/definitions/DiskDetails" + } + } + }, + "x-ms-discriminator-value": "HyperVReplicaBaseReplicationDetails" + }, + "HyperVReplicaBluePolicyDetails": { + "description": "Hyper-V Replica Blue specific protection profile details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/PolicyProviderSpecificDetails" + } + ], + "properties": { + "replicationFrequencyInSeconds": { + "format": "int32", + "description": "A value indicating the replication interval.", + "type": "integer" + }, + "recoveryPoints": { + "format": "int32", + "description": "A value indicating the number of recovery points.", + "type": "integer" + }, + "applicationConsistentSnapshotFrequencyInHours": { + "format": "int32", + "description": "A value indicating the application consistent frequency.", + "type": "integer" + }, + "compression": { + "description": "A value indicating whether compression has to be enabled.", + "type": "string" + }, + "initialReplicationMethod": { + "description": "A value indicating whether IR is online.", + "type": "string" + }, + "onlineReplicationStartTime": { + "description": "A value indicating the online IR start time.", + "type": "string" + }, + "offlineReplicationImportPath": { + "description": "A value indicating the offline IR import path.", + "type": "string" + }, + "offlineReplicationExportPath": { + "description": "A value indicating the offline IR export path.", + "type": "string" + }, + "replicationPort": { + "format": "int32", + "description": "A value indicating the recovery HTTPS port.", + "type": "integer" + }, + "allowedAuthenticationType": { + "format": "int32", + "description": "A value indicating the authentication type.", + "type": "integer" + }, + "replicaDeletionOption": { + "description": "A value indicating whether the VM has to be auto deleted. Supported Values: String.Empty, None, OnRecoveryCloud", + "type": "string" + } + }, + "x-ms-discriminator-value": "HyperVReplica2012R2" + }, + "HyperVReplicaBluePolicyInput": { + "description": "HyperV Replica Blue policy input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/HyperVReplicaPolicyInput" + } + ], + "properties": { + "replicationFrequencyInSeconds": { + "format": "int32", + "description": "A value indicating the replication interval.", + "type": "integer" + } + }, + "x-ms-discriminator-value": "HyperVReplica2012R2" + }, + "HyperVReplicaBlueReplicationDetails": { + "description": "HyperV replica 2012 R2 (Blue) replication details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ReplicationProviderSpecificSettings" + } + ], + "properties": { + "lastReplicatedTime": { + "format": "date-time", + "description": "The Last replication time.", + "type": "string" + }, + "vmNics": { + "description": "The PE Network details.", + "type": "array", + "items": { + "$ref": "#/definitions/VMNicDetails" + } + }, + "vmId": { + "description": "The virtual machine Id.", + "type": "string" + }, + "vmProtectionState": { + "description": "The protection state for the vm.", + "type": "string" + }, + "vmProtectionStateDescription": { + "description": "The protection state description for the vm.", + "type": "string" + }, + "initialReplicationDetails": { + "$ref": "#/definitions/InitialReplicationDetails", + "description": "Initial replication details." + }, + "vMDiskDetails": { + "description": "VM disk details.", + "type": "array", + "items": { + "$ref": "#/definitions/DiskDetails" + } + } + }, + "x-ms-discriminator-value": "HyperVReplica2012R2" + }, + "HyperVReplicaPolicyDetails": { + "description": "Hyper-V Replica Blue specific protection profile details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/PolicyProviderSpecificDetails" + } + ], + "properties": { + "recoveryPoints": { + "format": "int32", + "description": "A value indicating the number of recovery points.", + "type": "integer" + }, + "applicationConsistentSnapshotFrequencyInHours": { + "format": "int32", + "description": "A value indicating the application consistent frequency.", + "type": "integer" + }, + "compression": { + "description": "A value indicating whether compression has to be enabled.", + "type": "string" + }, + "initialReplicationMethod": { + "description": "A value indicating whether IR is online.", + "type": "string" + }, + "onlineReplicationStartTime": { + "description": "A value indicating the online IR start time.", + "type": "string" + }, + "offlineReplicationImportPath": { + "description": "A value indicating the offline IR import path.", + "type": "string" + }, + "offlineReplicationExportPath": { + "description": "A value indicating the offline IR export path.", + "type": "string" + }, + "replicationPort": { + "format": "int32", + "description": "A value indicating the recovery HTTPS port.", + "type": "integer" + }, + "allowedAuthenticationType": { + "format": "int32", + "description": "A value indicating the authentication type.", + "type": "integer" + }, + "replicaDeletionOption": { + "description": "A value indicating whether the VM has to be auto deleted. Supported Values: String.Empty, None, OnRecoveryCloud", + "type": "string" + } + }, + "x-ms-discriminator-value": "HyperVReplica2012" + }, + "HyperVReplicaPolicyInput": { + "description": "Hyper-V Replica specific policy Input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/PolicyProviderSpecificInput" + } + ], + "properties": { + "recoveryPoints": { + "format": "int32", + "description": "A value indicating the number of recovery points.", + "type": "integer" + }, + "applicationConsistentSnapshotFrequencyInHours": { + "format": "int32", + "description": "A value indicating the application consistent frequency.", + "type": "integer" + }, + "compression": { + "description": "A value indicating whether compression has to be enabled.", + "type": "string" + }, + "initialReplicationMethod": { + "description": "A value indicating whether IR is online.", + "type": "string" + }, + "onlineReplicationStartTime": { + "description": "A value indicating the online IR start time.", + "type": "string" + }, + "offlineReplicationImportPath": { + "description": "A value indicating the offline IR import path.", + "type": "string" + }, + "offlineReplicationExportPath": { + "description": "A value indicating the offline IR export path.", + "type": "string" + }, + "replicationPort": { + "format": "int32", + "description": "A value indicating the recovery HTTPS port.", + "type": "integer" + }, + "allowedAuthenticationType": { + "format": "int32", + "description": "A value indicating the authentication type.", + "type": "integer" + }, + "replicaDeletion": { + "description": "A value indicating whether the VM has to be auto deleted.", + "type": "string" + } + }, + "discriminator": "instanceType", + "x-ms-discriminator-value": "HyperVReplica2012" + }, + "HyperVReplicaReplicationDetails": { + "description": "HyperV replica 2012 replication details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ReplicationProviderSpecificSettings" + } + ], + "properties": { + "lastReplicatedTime": { + "format": "date-time", + "description": "The Last replication time.", + "type": "string" + }, + "vmNics": { + "description": "The PE Network details.", + "type": "array", + "items": { + "$ref": "#/definitions/VMNicDetails" + } + }, + "vmId": { + "description": "The virtual machine Id.", + "type": "string" + }, + "vmProtectionState": { + "description": "The protection state for the vm.", + "type": "string" + }, + "vmProtectionStateDescription": { + "description": "The protection state description for the vm.", + "type": "string" + }, + "initialReplicationDetails": { + "$ref": "#/definitions/InitialReplicationDetails", + "description": "Initial replication details." + }, + "vMDiskDetails": { + "description": "VM disk details.", + "type": "array", + "items": { + "$ref": "#/definitions/DiskDetails" + } + } + }, + "x-ms-discriminator-value": "HyperVReplica2012" + }, + "HyperVSiteDetails": { + "description": "HyperVSite fabric specific details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/FabricSpecificDetails" + } + ], + "properties": { + "hyperVHosts": { + "description": "The list of Hyper-V hosts associated with the fabric.", + "type": "array", + "items": { + "$ref": "#/definitions/HyperVHostDetails" + } + } + }, + "x-ms-discriminator-value": "HyperVSite" + }, + "HyperVVirtualMachineDetails": { + "description": "Single Host fabric provider specific VM settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ConfigurationSettings" + } + ], + "properties": { + "sourceItemId": { + "description": "The source id of the object.", + "type": "string" + }, + "generation": { + "description": "The id of the object in fabric.", + "type": "string" + }, + "osDetails": { + "$ref": "#/definitions/OSDetails", + "description": "The Last replication time." + }, + "diskDetails": { + "description": "The Last successful failover time.", + "type": "array", + "items": { + "$ref": "#/definitions/DiskDetails" + } + }, + "hasPhysicalDisk": { + "description": "A value indicating whether the VM has a physical disk attached. String value of SrsDataContract.PresenceStatus enum.", + "enum": [ + "Unknown", + "Present", + "NotPresent" + ], + "type": "string", + "x-ms-enum": { + "name": "PresenceStatus", + "modelAsString": true + } + }, + "hasFibreChannelAdapter": { + "description": "A value indicating whether the VM has a fibre channel adapter attached. String value of SrsDataContract.PresenceStatus enum.", + "enum": [ + "Unknown", + "Present", + "NotPresent" + ], + "type": "string", + "x-ms-enum": { + "name": "PresenceStatus", + "modelAsString": true + } + }, + "hasSharedVhd": { + "description": "A value indicating whether the VM has a shared VHD attached. String value of SrsDataContract.PresenceStatus enum.", + "enum": [ + "Unknown", + "Present", + "NotPresent" + ], + "type": "string", + "x-ms-enum": { + "name": "PresenceStatus", + "modelAsString": true + } + } + }, + "discriminator": "instanceType", + "x-ms-discriminator-value": "HyperVVirtualMachine" + }, + "IdentityProviderDetails": { + "description": "Identity provider details.", + "type": "object", + "properties": { + "tenantId": { + "description": "The tenant Id for the service principal with which the on-premise management/data plane components would communicate with our Azure services.", + "type": "string" + }, + "applicationId": { + "description": "The application/client Id for the service principal with which the on-premise management/data plane components would communicate with our Azure services.", + "type": "string" + }, + "objectId": { + "description": "The object Id of the service principal with which the on-premise management/data plane components would communicate with our Azure services.", + "type": "string" + }, + "audience": { + "description": "The intended Audience of the service principal with which the on-premise management/data plane components would communicate with our Azure services.", + "type": "string" + }, + "aadAuthority": { + "description": "The base authority for Azure Active Directory authentication.", + "type": "string" + } + } + }, + "IdentityProviderInput": { + "description": "Identity provider input.", + "required": [ + "tenantId", + "applicationId", + "objectId", + "audience", + "aadAuthority" + ], + "type": "object", + "properties": { + "tenantId": { + "description": "The tenant Id for the service principal with which the on-premise management/data plane components would communicate with our Azure services.", + "type": "string" + }, + "applicationId": { + "description": "The application/client Id for the service principal with which the on-premise management/data plane components would communicate with our Azure services.", + "type": "string" + }, + "objectId": { + "description": "The object Id of the service principal with which the on-premise management/data plane components would communicate with our Azure services.", + "type": "string" + }, + "audience": { + "description": "The intended Audience of the service principal with which the on-premise management/data plane components would communicate with our Azure services.", + "type": "string" + }, + "aadAuthority": { + "description": "The base authority for Azure Active Directory authentication.", + "type": "string" + } + } + }, + "InconsistentVmDetails": { + "description": "This class stores the monitoring details for consistency check of inconsistent Protected Entity.", + "type": "object", + "properties": { + "vmName": { + "description": "The Vm name.", + "type": "string" + }, + "cloudName": { + "description": "The Cloud name.", + "type": "string" + }, + "details": { + "description": "The list of details regarding state of the Protected Entity in SRS and On prem.", + "type": "array", + "items": { + "type": "string" + } + }, + "errorIds": { + "description": "The list of error ids.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "InitialReplicationDetails": { + "description": "Initial replication details.", + "type": "object", + "properties": { + "initialReplicationType": { + "description": "Initial replication type.", + "type": "string" + }, + "initialReplicationProgressPercentage": { + "description": "The initial replication progress percentage.", + "type": "string" + } + } + }, + "InlineWorkflowTaskDetails": { + "description": "This class represents the inline workflow task details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/GroupTaskDetails" + } + ], + "properties": { + "workflowIds": { + "description": "The list of child workflow ids.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "x-ms-discriminator-value": "InlineWorkflowTaskDetails" + }, + "InMageAgentDetails": { + "description": "The details of the InMage agent.", + "type": "object", + "properties": { + "agentVersion": { + "description": "The agent version.", + "type": "string" + }, + "agentUpdateStatus": { + "description": "A value indicating whether installed agent needs to be updated.", + "type": "string" + }, + "postUpdateRebootStatus": { + "description": "A value indicating whether reboot is required after update is applied.", + "type": "string" + }, + "agentExpiryDate": { + "format": "date-time", + "description": "Agent expiry date.", + "type": "string" + } + } + }, + "InMageAzureV2ApplyRecoveryPointInput": { + "description": "ApplyRecoveryPoint input specific to InMageAzureV2 provider.", + "required": [ + "instanceType" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ApplyRecoveryPointProviderSpecificInput" + } + ], + "properties": {}, + "x-ms-discriminator-value": "InMageAzureV2" + }, + "InMageAzureV2DiskInputDetails": { + "description": "Disk input details.", + "type": "object", + "properties": { + "diskId": { + "description": "The DiskId.", + "type": "string" + }, + "logStorageAccountId": { + "description": "The LogStorageAccountId.", + "type": "string" + }, + "diskType": { + "description": "The DiskType.", + "enum": [ + "Standard_LRS", + "Premium_LRS", + "StandardSSD_LRS" + ], + "type": "string", + "x-ms-enum": { + "name": "DiskAccountType", + "modelAsString": true + } + }, + "diskEncryptionSetId": { + "description": "The DiskEncryptionSet ARM ID.", + "type": "string" + } + } + }, + "InMageAzureV2EnableProtectionInput": { + "description": "VMware Azure specific enable protection input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/EnableProtectionProviderSpecificInput" + } + ], + "properties": { + "masterTargetId": { + "description": "The Master target Id.", + "type": "string" + }, + "processServerId": { + "description": "The Process Server Id.", + "type": "string" + }, + "storageAccountId": { + "description": "The storage account Id.", + "type": "string" + }, + "runAsAccountId": { + "description": "The CS account Id.", + "type": "string" + }, + "multiVmGroupId": { + "description": "The multi VM group Id.", + "type": "string" + }, + "multiVmGroupName": { + "description": "The multi VM group name.", + "type": "string" + }, + "disksToInclude": { + "description": "The disks to include list.", + "type": "array", + "items": { + "$ref": "#/definitions/InMageAzureV2DiskInputDetails" + } + }, + "targetAzureNetworkId": { + "description": "The selected target Azure network Id.", + "type": "string" + }, + "targetAzureSubnetId": { + "description": "The selected target Azure subnet Id.", + "type": "string" + }, + "enableRdpOnTargetOption": { + "description": "The selected option to enable RDP\\SSH on target VM after failover. String value of SrsDataContract.EnableRDPOnTargetOption enum.", + "type": "string" + }, + "targetAzureVmName": { + "description": "The target azure VM Name.", + "type": "string" + }, + "logStorageAccountId": { + "description": "The storage account to be used for logging during replication.", + "type": "string" + }, + "targetAzureV1ResourceGroupId": { + "description": "The Id of the target resource group (for classic deployment) in which the failover VM is to be created.", + "type": "string" + }, + "targetAzureV2ResourceGroupId": { + "description": "The Id of the target resource group (for resource manager deployment) in which the failover VM is to be created.", + "type": "string" + }, + "diskType": { + "description": "The DiskType.", + "enum": [ + "Standard_LRS", + "Premium_LRS", + "StandardSSD_LRS" + ], + "type": "string", + "x-ms-enum": { + "name": "DiskAccountType", + "modelAsString": true + } + }, + "targetAvailabilitySetId": { + "description": "The target availability set ARM Id for resource manager deployment.", + "type": "string" + }, + "targetAvailabilityZone": { + "description": "The target availability zone.", + "type": "string" + }, + "targetProximityPlacementGroupId": { + "description": "The proximity placement group ARM Id.", + "type": "string" + }, + "licenseType": { + "description": "License type.", + "enum": [ + "NotSpecified", + "NoLicenseType", + "WindowsServer" + ], + "type": "string", + "x-ms-enum": { + "name": "LicenseType", + "modelAsString": true + } + }, + "sqlServerLicenseType": { + "description": "The SQL Server license type.", + "enum": [ + "NotSpecified", + "NoLicenseType", + "PAYG", + "AHUB" + ], + "type": "string", + "x-ms-enum": { + "name": "SqlServerLicenseType", + "modelAsString": true + } + }, + "targetVmSize": { + "description": "The target VM size.", + "type": "string" + }, + "diskEncryptionSetId": { + "description": "The DiskEncryptionSet ARM Id.", + "type": "string" + }, + "targetVmTags": { + "description": "The target VM tags.", + "maxLength": 50, + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "seedManagedDiskTags": { + "description": "The tags for the seed managed disks.", + "maxLength": 49, + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "targetManagedDiskTags": { + "description": "The tags for the target managed disks.", + "maxLength": 49, + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "targetNicTags": { + "description": "The tags for the target NICs.", + "maxLength": 50, + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "x-ms-discriminator-value": "InMageAzureV2" + }, + "InMageAzureV2EventDetails": { + "description": "Model class for event details of a VMwareAzureV2 event.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/EventProviderSpecificDetails" + } + ], + "properties": { + "eventType": { + "description": "InMage Event type. Takes one of the values of InMageDataContract.InMageMonitoringEventType.", + "type": "string" + }, + "category": { + "description": "InMage Event Category.", + "type": "string" + }, + "component": { + "description": "InMage Event Component.", + "type": "string" + }, + "correctiveAction": { + "description": "Corrective Action string for the event.", + "type": "string" + }, + "details": { + "description": "InMage Event Details.", + "type": "string" + }, + "summary": { + "description": "InMage Event Summary.", + "type": "string" + }, + "siteName": { + "description": "VMware Site name.", + "type": "string" + } + }, + "x-ms-discriminator-value": "InMageAzureV2" + }, + "InMageAzureV2ManagedDiskDetails": { + "description": "InMageAzureV2 Managed disk details.", + "type": "object", + "properties": { + "diskId": { + "description": "The disk id.", + "type": "string" + }, + "seedManagedDiskId": { + "description": "Seed managed disk Id.", + "type": "string" + }, + "replicaDiskType": { + "description": "The replica disk type.", + "type": "string" + }, + "diskEncryptionSetId": { + "description": "The DiskEncryptionSet ARM ID.", + "type": "string" + } + } + }, + "InMageAzureV2PolicyDetails": { + "description": "InMage Azure v2 specific protection profile details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/PolicyProviderSpecificDetails" + } + ], + "properties": { + "crashConsistentFrequencyInMinutes": { + "format": "int32", + "description": "The crash consistent snapshot frequency in minutes.", + "type": "integer" + }, + "recoveryPointThresholdInMinutes": { + "format": "int32", + "description": "The recovery point threshold in minutes.", + "type": "integer" + }, + "recoveryPointHistory": { + "format": "int32", + "description": "The duration in minutes until which the recovery points need to be stored.", + "type": "integer" + }, + "appConsistentFrequencyInMinutes": { + "format": "int32", + "description": "The app consistent snapshot frequency in minutes.", + "type": "integer" + }, + "multiVmSyncStatus": { + "description": "A value indicating whether multi-VM sync has to be enabled.", + "type": "string" + } + }, + "x-ms-discriminator-value": "InMageAzureV2" + }, + "InMageAzureV2PolicyInput": { + "description": "VMWare Azure specific policy Input.", + "required": [ + "multiVmSyncStatus" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/PolicyProviderSpecificInput" + } + ], + "properties": { + "recoveryPointThresholdInMinutes": { + "format": "int32", + "description": "The recovery point threshold in minutes.", + "type": "integer" + }, + "recoveryPointHistory": { + "format": "int32", + "description": "The duration in minutes until which the recovery points need to be stored.", + "type": "integer" + }, + "crashConsistentFrequencyInMinutes": { + "format": "int32", + "description": "The crash consistent snapshot frequency (in minutes).", + "type": "integer" + }, + "appConsistentFrequencyInMinutes": { + "format": "int32", + "description": "The app consistent snapshot frequency (in minutes).", + "type": "integer" + }, + "multiVmSyncStatus": { + "description": "A value indicating whether multi-VM sync has to be enabled. Value should be 'Enabled' or 'Disabled'.", + "enum": [ + "Enable", + "Disable" + ], + "type": "string", + "x-ms-enum": { + "name": "SetMultiVmSyncStatus", + "modelAsString": true + } + } + }, + "x-ms-discriminator-value": "InMageAzureV2" + }, + "InMageAzureV2ProtectedDiskDetails": { + "description": "InMageAzureV2 protected disk details.", + "type": "object", + "properties": { + "diskId": { + "description": "The disk id.", + "type": "string" + }, + "diskName": { + "description": "The disk name.", + "type": "string" + }, + "protectionStage": { + "description": "The protection stage.", + "type": "string" + }, + "healthErrorCode": { + "description": "The health error code for the disk.", + "type": "string" + }, + "rpoInSeconds": { + "format": "int64", + "description": "The RPO in seconds.", + "type": "integer" + }, + "resyncRequired": { + "description": "A value indicating whether resync is required for this disk.", + "type": "string" + }, + "resyncProgressPercentage": { + "format": "int32", + "description": "The resync progress percentage.", + "type": "integer" + }, + "resyncDurationInSeconds": { + "format": "int64", + "description": "The resync duration in seconds.", + "type": "integer" + }, + "diskCapacityInBytes": { + "format": "int64", + "description": "The disk capacity in bytes.", + "type": "integer" + }, + "fileSystemCapacityInBytes": { + "format": "int64", + "description": "The disk file system capacity in bytes.", + "type": "integer" + }, + "sourceDataInMegaBytes": { + "format": "double", + "description": "The source data transit in MB.", + "type": "number" + }, + "psDataInMegaBytes": { + "format": "double", + "description": "The PS data transit in MB.", + "type": "number" + }, + "targetDataInMegaBytes": { + "format": "double", + "description": "The target data transit in MB.", + "type": "number" + }, + "diskResized": { + "description": "A value indicating whether disk is resized.", + "type": "string" + }, + "lastRpoCalculatedTime": { + "format": "date-time", + "description": "The last RPO calculated time.", + "type": "string" + }, + "resyncProcessedBytes": { + "format": "int64", + "description": "The resync processed bytes.", + "type": "integer" + }, + "resyncTotalTransferredBytes": { + "format": "int64", + "description": "The resync total transferred bytes.", + "type": "integer" + }, + "resyncLast15MinutesTransferredBytes": { + "format": "int64", + "description": "The resync last 15 minutes transferred bytes.", + "type": "integer" + }, + "resyncLastDataTransferTimeUTC": { + "format": "date-time", + "description": "The last data transfer time in UTC.", + "type": "string" + }, + "resyncStartTime": { + "format": "date-time", + "description": "The resync start time.", + "type": "string" + }, + "progressHealth": { + "description": "The Progress Health.", + "type": "string" + }, + "progressStatus": { + "description": "The Progress Status.", + "type": "string" + } + } + }, + "InMageAzureV2RecoveryPointDetails": { + "description": "InMage Azure V2 provider specific recovery point details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProviderSpecificRecoveryPointDetails" + } + ], + "properties": { + "isMultiVmSyncPoint": { + "description": "A value indicating whether the recovery point is multi VM consistent.", + "type": "string" + } + }, + "x-ms-discriminator-value": "InMageAzureV2" + }, + "InMageAzureV2ReplicationDetails": { + "description": "InMageAzureV2 provider specific settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ReplicationProviderSpecificSettings" + } + ], + "properties": { + "infrastructureVmId": { + "description": "The infrastructure VM Id.", + "type": "string" + }, + "vCenterInfrastructureId": { + "description": "The vCenter infrastructure Id.", + "type": "string" + }, + "protectionStage": { + "description": "The protection stage.", + "type": "string" + }, + "vmId": { + "description": "The virtual machine Id.", + "type": "string" + }, + "vmProtectionState": { + "description": "The protection state for the vm.", + "type": "string" + }, + "vmProtectionStateDescription": { + "description": "The protection state description for the vm.", + "type": "string" + }, + "resyncProgressPercentage": { + "format": "int32", + "description": "The resync progress percentage.", + "type": "integer" + }, + "rpoInSeconds": { + "format": "int64", + "description": "The RPO in seconds.", + "type": "integer" + }, + "compressedDataRateInMB": { + "format": "double", + "description": "The compressed data change rate in MB.", + "type": "number" + }, + "uncompressedDataRateInMB": { + "format": "double", + "description": "The uncompressed data change rate in MB.", + "type": "number" + }, + "ipAddress": { + "description": "The source IP address.", + "type": "string" + }, + "agentVersion": { + "description": "The agent version.", + "type": "string" + }, + "agentExpiryDate": { + "format": "date-time", + "description": "Agent expiry date.", + "type": "string" + }, + "isAgentUpdateRequired": { + "description": "A value indicating whether installed agent needs to be updated.", + "type": "string" + }, + "isRebootAfterUpdateRequired": { + "description": "A value indicating whether the source server requires a restart after update.", + "type": "string" + }, + "lastHeartbeat": { + "format": "date-time", + "description": "The last heartbeat received from the source server.", + "type": "string" + }, + "processServerId": { + "description": "The process server Id.", + "type": "string" + }, + "processServerName": { + "description": "The process server name.", + "type": "string" + }, + "multiVmGroupId": { + "description": "The multi vm group Id.", + "type": "string" + }, + "multiVmGroupName": { + "description": "The multi vm group name.", + "type": "string" + }, + "multiVmSyncStatus": { + "description": "A value indicating whether multi vm sync is enabled or disabled.", + "type": "string" + }, + "protectedDisks": { + "description": "The list of protected disks.", + "type": "array", + "items": { + "$ref": "#/definitions/InMageAzureV2ProtectedDiskDetails" + } + }, + "diskResized": { + "description": "A value indicating whether any disk is resized for this VM.", + "type": "string" + }, + "masterTargetId": { + "description": "The master target Id.", + "type": "string" + }, + "sourceVmCpuCount": { + "format": "int32", + "description": "The CPU count of the VM on the primary side.", + "type": "integer" + }, + "sourceVmRamSizeInMB": { + "format": "int32", + "description": "The RAM size of the VM on the primary side.", + "type": "integer" + }, + "osType": { + "description": "The type of the OS on the VM.", + "type": "string" + }, + "vhdName": { + "description": "The OS disk VHD name.", + "type": "string" + }, + "osDiskId": { + "description": "The id of the disk containing the OS.", + "type": "string" + }, + "azureVMDiskDetails": { + "description": "Azure VM Disk details.", + "type": "array", + "items": { + "$ref": "#/definitions/AzureVmDiskDetails" + } + }, + "recoveryAzureVMName": { + "description": "Recovery Azure given name.", + "type": "string" + }, + "recoveryAzureVMSize": { + "description": "The Recovery Azure VM size.", + "type": "string" + }, + "recoveryAzureStorageAccount": { + "description": "The recovery Azure storage account.", + "type": "string" + }, + "recoveryAzureLogStorageAccountId": { + "description": "The ARM id of the log storage account used for replication. This will be set to null if no log storage account was provided during enable protection.", + "type": "string" + }, + "vmNics": { + "description": "The PE Network details.", + "type": "array", + "items": { + "$ref": "#/definitions/VMNicDetails" + } + }, + "selectedRecoveryAzureNetworkId": { + "description": "The selected recovery azure network Id.", + "type": "string" + }, + "selectedTfoAzureNetworkId": { + "description": "The test failover virtual network.", + "type": "string" + }, + "selectedSourceNicId": { + "description": "The selected source nic Id which will be used as the primary nic during failover.", + "type": "string" + }, + "discoveryType": { + "description": "A value indicating the discovery type of the machine. Value can be vCenter or physical.", + "type": "string" + }, + "enableRdpOnTargetOption": { + "description": "The selected option to enable RDP\\SSH on target vm after failover. String value of SrsDataContract.EnableRDPOnTargetOption enum.", + "type": "string" + }, + "datastores": { + "description": "The datastores of the on-premise machine. Value can be list of strings that contain datastore names.", + "type": "array", + "items": { + "type": "string" + } + }, + "targetVmId": { + "description": "The ARM Id of the target Azure VM. This value will be null until the VM is failed over. Only after failure it will be populated with the ARM Id of the Azure VM.", + "type": "string" + }, + "recoveryAzureResourceGroupId": { + "description": "The target resource group Id.", + "type": "string" + }, + "recoveryAvailabilitySetId": { + "description": "The recovery availability set Id.", + "type": "string" + }, + "targetAvailabilityZone": { + "description": "The target availability zone.", + "type": "string" + }, + "targetProximityPlacementGroupId": { + "description": "The target proximity placement group Id.", + "type": "string" + }, + "useManagedDisks": { + "description": "A value indicating whether managed disks should be used during failover.", + "type": "string" + }, + "licenseType": { + "description": "License Type of the VM to be used.", + "type": "string" + }, + "sqlServerLicenseType": { + "description": "The SQL Server license type.", + "type": "string" + }, + "validationErrors": { + "description": "The validation errors of the on-premise machine Value can be list of validation errors.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthError" + } + }, + "lastRpoCalculatedTime": { + "format": "date-time", + "description": "The last RPO calculated time.", + "type": "string" + }, + "lastUpdateReceivedTime": { + "format": "date-time", + "description": "The last update time received from on-prem components.", + "type": "string" + }, + "replicaId": { + "description": "The replica id of the protected item.", + "type": "string" + }, + "osVersion": { + "description": "The OS Version of the protected item.", + "type": "string" + }, + "protectedManagedDisks": { + "description": "The list of protected managed disks.", + "type": "array", + "items": { + "$ref": "#/definitions/InMageAzureV2ManagedDiskDetails" + } + }, + "lastRecoveryPointReceived": { + "format": "date-time", + "description": "The last recovery point received time.", + "type": "string", + "readOnly": true + }, + "firmwareType": { + "description": "The firmware type of this protected item.", + "type": "string" + }, + "azureVmGeneration": { + "description": "The target generation for this protected item.", + "type": "string" + }, + "isAdditionalStatsAvailable": { + "description": "A value indicating whether additional IR stats are available or not.", + "type": "boolean" + }, + "totalDataTransferred": { + "format": "int64", + "description": "The total transferred data in bytes.", + "type": "integer" + }, + "totalProgressHealth": { + "description": "The progress health.", + "type": "string" + }, + "targetVmTags": { + "description": "The target VM tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "seedManagedDiskTags": { + "description": "The tags for the seed managed disks.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "targetManagedDiskTags": { + "description": "The tags for the target managed disks.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "targetNicTags": { + "description": "The tags for the target NICs.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "x-ms-discriminator-value": "InMageAzureV2" + }, + "InMageAzureV2ReprotectInput": { + "description": "InMageAzureV2 specific provider input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ReverseReplicationProviderSpecificInput" + } + ], + "properties": { + "masterTargetId": { + "description": "The Master target Id.", + "type": "string" + }, + "processServerId": { + "description": "The Process Server Id.", + "type": "string" + }, + "storageAccountId": { + "description": "The storage account id.", + "type": "string" + }, + "runAsAccountId": { + "description": "The CS account Id.", + "type": "string" + }, + "policyId": { + "description": "The Policy Id.", + "type": "string" + }, + "logStorageAccountId": { + "description": "The storage account to be used for logging during replication.", + "type": "string" + }, + "disksToInclude": { + "description": "The disks to include list.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "x-ms-discriminator-value": "InMageAzureV2" + }, + "InMageAzureV2TestFailoverInput": { + "description": "InMageAzureV2 provider specific input for test failover.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TestFailoverProviderSpecificInput" + } + ], + "properties": { + "recoveryPointId": { + "description": "The recovery point id to be passed to test failover to a particular recovery point. In case of latest recovery point, null should be passed.", + "type": "string" + } + }, + "x-ms-discriminator-value": "InMageAzureV2" + }, + "InMageAzureV2UnplannedFailoverInput": { + "description": "InMageAzureV2 provider specific input for unplanned failover.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/UnplannedFailoverProviderSpecificInput" + } + ], + "properties": { + "recoveryPointId": { + "description": "The recovery point id to be passed to failover to a particular recovery point. In case of latest recovery point, null should be passed.", + "type": "string" + } + }, + "x-ms-discriminator-value": "InMageAzureV2" + }, + "InMageAzureV2UpdateReplicationProtectedItemInput": { + "description": "InMage Azure V2 input to update replication protected item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/UpdateReplicationProtectedItemProviderInput" + } + ], + "properties": { + "recoveryAzureV1ResourceGroupId": { + "description": "The recovery Azure resource group Id for classic deployment.", + "type": "string" + }, + "recoveryAzureV2ResourceGroupId": { + "description": "The recovery Azure resource group Id for resource manager deployment.", + "type": "string" + }, + "useManagedDisks": { + "description": "A value indicating whether managed disks should be used during failover.", + "type": "string" + }, + "targetProximityPlacementGroupId": { + "description": "The target proximity placement group Id.", + "type": "string" + }, + "targetAvailabilityZone": { + "description": "The target availability zone.", + "type": "string" + }, + "targetVmTags": { + "description": "The target VM tags.", + "maxLength": 50, + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "targetManagedDiskTags": { + "description": "The tags for the target managed disks.", + "maxLength": 49, + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "targetNicTags": { + "description": "The tags for the target NICs.", + "maxLength": 50, + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "sqlServerLicenseType": { + "description": "The SQL Server license type.", + "enum": [ + "NotSpecified", + "NoLicenseType", + "PAYG", + "AHUB" + ], + "type": "string", + "x-ms-enum": { + "name": "SqlServerLicenseType", + "modelAsString": true + } + } + }, + "x-ms-discriminator-value": "InMageAzureV2" + }, + "InMageBasePolicyDetails": { + "description": "Base class for the policies of providers using InMage replication.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/PolicyProviderSpecificDetails" + } + ], + "properties": { + "recoveryPointThresholdInMinutes": { + "format": "int32", + "description": "The recovery point threshold in minutes.", + "type": "integer" + }, + "recoveryPointHistory": { + "format": "int32", + "description": "The duration in minutes until which the recovery points need to be stored.", + "type": "integer" + }, + "appConsistentFrequencyInMinutes": { + "format": "int32", + "description": "The app consistent snapshot frequency in minutes.", + "type": "integer" + }, + "multiVmSyncStatus": { + "description": "A value indicating whether multi-VM sync has to be enabled.", + "type": "string" + } + }, + "x-ms-discriminator-value": "InMageBasePolicyDetails" + }, + "InMageDisableProtectionProviderSpecificInput": { + "description": "InMage disable protection provider specific input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DisableProtectionProviderSpecificInput" + } + ], + "properties": { + "replicaVmDeletionStatus": { + "description": "A value indicating whether the replica VM should be destroyed or retained. Values from Delete and Retain.", + "type": "string" + } + }, + "x-ms-discriminator-value": "InMage" + }, + "InMageDiskDetails": { + "description": "VMware/Physical specific Disk Details.", + "type": "object", + "properties": { + "diskId": { + "description": "The disk Id.", + "type": "string" + }, + "diskName": { + "description": "The disk name.", + "type": "string" + }, + "diskSizeInMB": { + "description": "The disk size in MB.", + "type": "string" + }, + "diskType": { + "description": "Whether disk is system disk or data disk.", + "type": "string" + }, + "diskConfiguration": { + "description": "Whether disk is dynamic disk or basic disk.", + "type": "string" + }, + "volumeList": { + "description": "Volumes of the disk.", + "type": "array", + "items": { + "$ref": "#/definitions/DiskVolumeDetails" + } + } + } + }, + "InMageDiskExclusionInput": { + "description": "DiskExclusionInput when doing enable protection of virtual machine in InMage provider.", + "type": "object", + "properties": { + "volumeOptions": { + "description": "The volume label based option for disk exclusion.", + "type": "array", + "items": { + "$ref": "#/definitions/InMageVolumeExclusionOptions" + } + }, + "diskSignatureOptions": { + "description": "The guest disk signature based option for disk exclusion.", + "type": "array", + "items": { + "$ref": "#/definitions/InMageDiskSignatureExclusionOptions" + } + } + } + }, + "InMageDiskSignatureExclusionOptions": { + "description": "Guest disk signature based disk exclusion option when doing enable protection of virtual machine in InMage provider.", + "type": "object", + "properties": { + "diskSignature": { + "description": "The guest signature of disk to be excluded from replication.", + "type": "string" + } + } + }, + "InMageEnableProtectionInput": { + "description": "VMware Azure specific enable protection input.", + "required": [ + "masterTargetId", + "processServerId", + "retentionDrive", + "multiVmGroupId", + "multiVmGroupName" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/EnableProtectionProviderSpecificInput" + } + ], + "properties": { + "vmFriendlyName": { + "description": "The VM Name.", + "type": "string" + }, + "masterTargetId": { + "description": "The Master Target Id.", + "type": "string" + }, + "processServerId": { + "description": "The Process Server Id.", + "type": "string" + }, + "retentionDrive": { + "description": "The retention drive to use on the MT.", + "type": "string" + }, + "runAsAccountId": { + "description": "The CS account Id.", + "type": "string" + }, + "multiVmGroupId": { + "description": "The multi VM group Id.", + "type": "string" + }, + "multiVmGroupName": { + "description": "The multi VM group name.", + "type": "string" + }, + "datastoreName": { + "description": "The target datastore name.", + "type": "string" + }, + "diskExclusionInput": { + "$ref": "#/definitions/InMageDiskExclusionInput", + "description": "The enable disk exclusion input." + }, + "disksToInclude": { + "description": "The disks to include list.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "x-ms-discriminator-value": "InMage" + }, + "InMagePolicyDetails": { + "description": "InMage specific protection profile details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/PolicyProviderSpecificDetails" + } + ], + "properties": { + "recoveryPointThresholdInMinutes": { + "format": "int32", + "description": "The recovery point threshold in minutes.", + "type": "integer" + }, + "recoveryPointHistory": { + "format": "int32", + "description": "The duration in minutes until which the recovery points need to be stored.", + "type": "integer" + }, + "appConsistentFrequencyInMinutes": { + "format": "int32", + "description": "The app consistent snapshot frequency in minutes.", + "type": "integer" + }, + "multiVmSyncStatus": { + "description": "A value indicating whether multi-VM sync has to be enabled.", + "type": "string" + } + }, + "x-ms-discriminator-value": "InMage" + }, + "InMagePolicyInput": { + "description": "VMWare Azure specific protection profile Input.", + "required": [ + "multiVmSyncStatus" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/PolicyProviderSpecificInput" + } + ], + "properties": { + "recoveryPointThresholdInMinutes": { + "format": "int32", + "description": "The recovery point threshold in minutes.", + "type": "integer" + }, + "recoveryPointHistory": { + "format": "int32", + "description": "The duration in minutes until which the recovery points need to be stored.", + "type": "integer" + }, + "appConsistentFrequencyInMinutes": { + "format": "int32", + "description": "The app consistent snapshot frequency (in minutes).", + "type": "integer" + }, + "multiVmSyncStatus": { + "description": "A value indicating whether multi-VM sync has to be enabled. Value should be 'Enabled' or 'Disabled'.", + "enum": [ + "Enable", + "Disable" + ], + "type": "string", + "x-ms-enum": { + "name": "SetMultiVmSyncStatus", + "modelAsString": true + } + } + }, + "x-ms-discriminator-value": "InMage" + }, + "InMageProtectedDiskDetails": { + "description": "InMage protected disk details.", + "type": "object", + "properties": { + "diskId": { + "description": "The disk id.", + "type": "string" + }, + "diskName": { + "description": "The disk name.", + "type": "string" + }, + "protectionStage": { + "description": "The protection stage.", + "type": "string" + }, + "healthErrorCode": { + "description": "The health error code for the disk.", + "type": "string" + }, + "rpoInSeconds": { + "format": "int64", + "description": "The RPO in seconds.", + "type": "integer" + }, + "resyncRequired": { + "description": "A value indicating whether resync is required for this disk.", + "type": "string" + }, + "resyncProgressPercentage": { + "format": "int32", + "description": "The resync progress percentage.", + "type": "integer" + }, + "resyncDurationInSeconds": { + "format": "int64", + "description": "The resync duration in seconds.", + "type": "integer" + }, + "diskCapacityInBytes": { + "format": "int64", + "description": "The disk capacity in bytes.", + "type": "integer" + }, + "fileSystemCapacityInBytes": { + "format": "int64", + "description": "The file system capacity in bytes.", + "type": "integer" + }, + "sourceDataInMB": { + "format": "double", + "description": "The source data transit in MB.", + "type": "number" + }, + "psDataInMB": { + "format": "double", + "description": "The PS data transit in MB.", + "type": "number" + }, + "targetDataInMB": { + "format": "double", + "description": "The target data transit in MB.", + "type": "number" + }, + "diskResized": { + "description": "A value indicating whether disk is resized.", + "type": "string" + }, + "lastRpoCalculatedTime": { + "format": "date-time", + "description": "The last RPO calculated time.", + "type": "string" + }, + "resyncProcessedBytes": { + "format": "int64", + "description": "The resync processed bytes.", + "type": "integer" + }, + "resyncTotalTransferredBytes": { + "format": "int64", + "description": "The resync total transferred bytes.", + "type": "integer" + }, + "resyncLast15MinutesTransferredBytes": { + "format": "int64", + "description": "The resync last 15 minutes transferred bytes.", + "type": "integer" + }, + "resyncLastDataTransferTimeUTC": { + "format": "date-time", + "description": "The last data transfer time in UTC.", + "type": "string" + }, + "resyncStartTime": { + "format": "date-time", + "description": "The resync start time.", + "type": "string" + }, + "progressHealth": { + "description": "The Progress Health.", + "type": "string" + }, + "progressStatus": { + "description": "The Progress Status.", + "type": "string" + } + } + }, + "InMageRcmAgentUpgradeBlockingErrorDetails": { + "description": "InMageRcm source agent upgrade blocking error details.", + "type": "object", + "properties": { + "errorCode": { + "description": "The error code.", + "type": "string", + "readOnly": true + }, + "errorMessage": { + "description": "The error message.", + "type": "string", + "readOnly": true + }, + "possibleCauses": { + "description": "The possible causes.", + "type": "string", + "readOnly": true + }, + "recommendedAction": { + "description": "The recommended action.", + "type": "string", + "readOnly": true + }, + "errorMessageParameters": { + "description": "The error message parameters.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "readOnly": true + }, + "errorTags": { + "description": "The error tags.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "readOnly": true + } + } + }, + "InMageRcmApplyRecoveryPointInput": { + "description": "ApplyRecoveryPoint input specific to InMageRcm provider.", + "required": [ + "recoveryPointId", + "instanceType" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ApplyRecoveryPointProviderSpecificInput" + } + ], + "properties": { + "recoveryPointId": { + "description": "The recovery point Id.", + "type": "string" + } + }, + "x-ms-discriminator-value": "InMageRcm" + }, + "InMageRcmDiskInput": { + "description": "InMageRcm disk input.", + "required": [ + "diskId", + "logStorageAccountId", + "diskType" + ], + "type": "object", + "properties": { + "diskId": { + "description": "The disk Id.", + "type": "string" + }, + "logStorageAccountId": { + "description": "The log storage account ARM Id.", + "type": "string" + }, + "diskType": { + "description": "The disk type.", + "enum": [ + "Standard_LRS", + "Premium_LRS", + "StandardSSD_LRS" + ], + "type": "string", + "x-ms-enum": { + "name": "DiskAccountType", + "modelAsString": true + } + }, + "diskEncryptionSetId": { + "description": "The DiskEncryptionSet ARM Id.", + "type": "string" + } + } + }, + "InMageRcmDisksDefaultInput": { + "description": "InMageRcm disk input.", + "required": [ + "logStorageAccountId", + "diskType" + ], + "type": "object", + "properties": { + "logStorageAccountId": { + "description": "The log storage account ARM Id.", + "type": "string" + }, + "diskType": { + "description": "The disk type.", + "enum": [ + "Standard_LRS", + "Premium_LRS", + "StandardSSD_LRS" + ], + "type": "string", + "x-ms-enum": { + "name": "DiskAccountType", + "modelAsString": true + } + }, + "diskEncryptionSetId": { + "description": "The DiskEncryptionSet ARM Id.", + "type": "string" + } + } + }, + "InMageRcmEnableProtectionInput": { + "description": "InMageRcm specific enable protection input.", + "required": [ + "fabricDiscoveryMachineId", + "targetResourceGroupId", + "processServerId" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/EnableProtectionProviderSpecificInput" + } + ], + "properties": { + "fabricDiscoveryMachineId": { + "description": "The ARM Id of discovered machine.", + "type": "string" + }, + "disksToInclude": { + "description": "The disks to include list.", + "minLength": 1, + "type": "array", + "items": { + "$ref": "#/definitions/InMageRcmDiskInput" + } + }, + "disksDefault": { + "$ref": "#/definitions/InMageRcmDisksDefaultInput", + "description": "The default disk input." + }, + "targetResourceGroupId": { + "description": "The target resource group ARM Id.", + "type": "string" + }, + "targetNetworkId": { + "description": "The selected target network ARM Id.", + "type": "string" + }, + "testNetworkId": { + "description": "The selected test network ARM Id.", + "type": "string" + }, + "targetSubnetName": { + "description": "The selected target subnet name.", + "type": "string" + }, + "testSubnetName": { + "description": "The selected test subnet name.", + "type": "string" + }, + "targetVmName": { + "description": "The target VM name.", + "type": "string" + }, + "targetVmSize": { + "description": "The target VM size.", + "type": "string" + }, + "licenseType": { + "description": "The license type.", + "enum": [ + "NotSpecified", + "NoLicenseType", + "WindowsServer" + ], + "type": "string", + "x-ms-enum": { + "name": "LicenseType", + "modelAsString": true + } + }, + "targetAvailabilitySetId": { + "description": "The target availability set ARM Id.", + "type": "string" + }, + "targetAvailabilityZone": { + "description": "The target availability zone.", + "type": "string" + }, + "targetProximityPlacementGroupId": { + "description": "The target proximity placement group Id.", + "type": "string" + }, + "targetBootDiagnosticsStorageAccountId": { + "description": "The target boot diagnostics storage account ARM Id.", + "type": "string" + }, + "runAsAccountId": { + "description": "The run-as account Id.", + "type": "string" + }, + "processServerId": { + "description": "The process server Id.", + "type": "string" + }, + "multiVmGroupName": { + "description": "The multi VM group name.", + "type": "string" + } + }, + "x-ms-discriminator-value": "InMageRcm" + }, + "InMageRcmEventDetails": { + "description": "Event details for InMageRcm provider.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/EventProviderSpecificDetails" + } + ], + "properties": { + "protectedItemName": { + "description": "The protected item name.", + "type": "string", + "readOnly": true + }, + "vmName": { + "description": "The protected item name.", + "type": "string", + "readOnly": true + }, + "latestAgentVersion": { + "description": "The latest agent version.", + "type": "string", + "readOnly": true + }, + "jobId": { + "description": "The job Id.", + "type": "string", + "readOnly": true + }, + "fabricName": { + "description": "The fabric name.", + "type": "string", + "readOnly": true + }, + "applianceName": { + "description": "The appliance name.", + "type": "string", + "readOnly": true + }, + "serverType": { + "description": "The server type.", + "type": "string", + "readOnly": true + }, + "componentDisplayName": { + "description": "The component display name.", + "type": "string", + "readOnly": true + } + }, + "x-ms-discriminator-value": "InMageRcm" + }, + "InMageRcmFabricCreationInput": { + "description": "InMageRcm fabric provider specific settings.", + "required": [ + "vmwareSiteId", + "physicalSiteId", + "sourceAgentIdentity" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/FabricSpecificCreationInput" + } + ], + "properties": { + "vmwareSiteId": { + "description": "The ARM Id of the VMware site.", + "type": "string" + }, + "physicalSiteId": { + "description": "The ARM Id of the physical site.", + "type": "string" + }, + "sourceAgentIdentity": { + "$ref": "#/definitions/IdentityProviderInput", + "description": "The identity provider input for source agent authentication." + } + }, + "x-ms-discriminator-value": "InMageRcm" + }, + "InMageRcmFabricSpecificDetails": { + "description": "InMageRcm fabric specific details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/FabricSpecificDetails" + } + ], + "properties": { + "vmwareSiteId": { + "description": "The ARM Id of the VMware site.", + "type": "string", + "readOnly": true + }, + "physicalSiteId": { + "description": "The ARM Id of the physical site.", + "type": "string", + "readOnly": true + }, + "serviceEndpoint": { + "description": "The service endpoint.", + "type": "string", + "readOnly": true + }, + "serviceResourceId": { + "description": "The service resource Id.", + "type": "string", + "readOnly": true + }, + "serviceContainerId": { + "description": "The service container Id.", + "type": "string", + "readOnly": true + }, + "dataPlaneUri": { + "description": "The data plane Uri.", + "type": "string", + "readOnly": true + }, + "controlPlaneUri": { + "description": "The control plane Uri.", + "type": "string", + "readOnly": true + }, + "processServers": { + "description": "The list of process servers.", + "type": "array", + "items": { + "$ref": "#/definitions/ProcessServerDetails" + }, + "readOnly": true + }, + "rcmProxies": { + "description": "The list of RCM proxies.", + "type": "array", + "items": { + "$ref": "#/definitions/RcmProxyDetails" + }, + "readOnly": true + }, + "pushInstallers": { + "description": "The list of push installers.", + "type": "array", + "items": { + "$ref": "#/definitions/PushInstallerDetails" + }, + "readOnly": true + }, + "replicationAgents": { + "description": "The list of replication agents.", + "type": "array", + "items": { + "$ref": "#/definitions/ReplicationAgentDetails" + }, + "readOnly": true + }, + "reprotectAgents": { + "description": "The list of reprotect agents.", + "type": "array", + "items": { + "$ref": "#/definitions/ReprotectAgentDetails" + }, + "readOnly": true + }, + "marsAgents": { + "description": "The list of Mars agents.", + "type": "array", + "items": { + "$ref": "#/definitions/MarsAgentDetails" + }, + "readOnly": true + }, + "dras": { + "description": "The list of DRAs.", + "type": "array", + "items": { + "$ref": "#/definitions/DraDetails" + }, + "readOnly": true + }, + "agentDetails": { + "description": "The list of agent details.", + "type": "array", + "items": { + "$ref": "#/definitions/AgentDetails" + }, + "readOnly": true + } + }, + "x-ms-discriminator-value": "InMageRcm" + }, + "InMageRcmFailbackEventDetails": { + "description": "Event details for InMageRcmFailback provider.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/EventProviderSpecificDetails" + } + ], + "properties": { + "protectedItemName": { + "description": "The protected item name.", + "type": "string", + "readOnly": true + } + }, + "x-ms-discriminator-value": "InMageRcmFailback" + }, + "InMageRcmFailbackMobilityAgentDetails": { + "description": "InMageRcmFailback mobility agent details.", + "type": "object", + "properties": { + "version": { + "description": "The agent version.", + "type": "string", + "readOnly": true + }, + "latestVersion": { + "description": "The latest agent version available.", + "type": "string", + "readOnly": true + }, + "driverVersion": { + "description": "The driver version.", + "type": "string", + "readOnly": true + }, + "latestUpgradableVersionWithoutReboot": { + "description": "The latest upgradeable version available without reboot.", + "type": "string", + "readOnly": true + }, + "agentVersionExpiryDate": { + "format": "date-time", + "description": "The agent version expiry date.", + "type": "string", + "readOnly": true + }, + "driverVersionExpiryDate": { + "format": "date-time", + "description": "The driver version expiry date.", + "type": "string", + "readOnly": true + }, + "lastHeartbeatUtc": { + "format": "date-time", + "description": "The time of the last heartbeat received from the agent.", + "type": "string", + "readOnly": true + }, + "reasonsBlockingUpgrade": { + "description": "The whether update is possible or not.", + "type": "array", + "items": { + "enum": [ + "AlreadyOnLatestVersion", + "RebootRequired", + "AgentNoHeartbeat", + "RcmProxyNoHeartbeat", + "ProcessServerNoHeartbeat", + "IncompatibleApplianceVersion", + "NotProtected", + "UnsupportedProtectionScenario", + "DistroIsNotReported", + "DistroNotSupportedForUpgrade", + "MissingUpgradePath", + "InvalidAgentVersion", + "InvalidDriverVersion", + "Unknown" + ], + "type": "string", + "x-ms-enum": { + "name": "AgentUpgradeBlockedReason", + "modelAsString": true + } + }, + "readOnly": true + }, + "isUpgradeable": { + "description": "A value indicating whether agent is upgradeable or not.", + "type": "string", + "readOnly": true + } + } + }, + "InMageRcmFailbackNicDetails": { + "description": "InMageRcmFailback NIC details.", + "type": "object", + "properties": { + "macAddress": { + "description": "The mac address.", + "type": "string", + "readOnly": true + }, + "networkName": { + "description": "The network name.", + "type": "string", + "readOnly": true + }, + "adapterType": { + "description": "The adapter type.", + "type": "string", + "readOnly": true + }, + "sourceIpAddress": { + "description": "The IP address.", + "type": "string", + "readOnly": true + } + } + }, + "InMageRcmFailbackPlannedFailoverProviderInput": { + "description": "Provider specific input for InMageRcmFailback failover.", + "required": [ + "recoveryPointType" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/PlannedFailoverProviderSpecificFailoverInput" + } + ], + "properties": { + "recoveryPointType": { + "description": "The recovery point type.", + "enum": [ + "ApplicationConsistent", + "CrashConsistent" + ], + "type": "string", + "x-ms-enum": { + "name": "InMageRcmFailbackRecoveryPointType", + "modelAsString": true + } + } + }, + "x-ms-discriminator-value": "InMageRcmFailback" + }, + "InMageRcmFailbackPolicyCreationInput": { + "description": "InMageRcmFailback policy creation input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/PolicyProviderSpecificInput" + } + ], + "properties": { + "crashConsistentFrequencyInMinutes": { + "format": "int32", + "description": "The crash consistent snapshot frequency (in minutes).", + "type": "integer" + }, + "appConsistentFrequencyInMinutes": { + "format": "int32", + "description": "The app consistent snapshot frequency (in minutes).", + "type": "integer" + } + }, + "x-ms-discriminator-value": "InMageRcmFailback" + }, + "InMageRcmFailbackPolicyDetails": { + "description": "InMageRcm failback specific policy details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/PolicyProviderSpecificDetails" + } + ], + "properties": { + "appConsistentFrequencyInMinutes": { + "format": "int32", + "description": "The app consistent snapshot frequency in minutes.", + "type": "integer" + }, + "crashConsistentFrequencyInMinutes": { + "format": "int32", + "description": "The crash consistent snapshot frequency in minutes.", + "type": "integer" + } + }, + "x-ms-discriminator-value": "InMageRcmFailback" + }, + "InMageRcmFailbackProtectedDiskDetails": { + "description": "InMageRcmFailback protected disk details.", + "type": "object", + "properties": { + "diskId": { + "description": "The disk Id (reported by source agent).", + "type": "string", + "readOnly": true + }, + "diskName": { + "description": "The disk name.", + "type": "string", + "readOnly": true + }, + "isOSDisk": { + "description": "A value indicating whether the disk is the OS disk.", + "type": "string", + "readOnly": true + }, + "capacityInBytes": { + "format": "int64", + "description": "The disk capacity in bytes.", + "type": "integer", + "readOnly": true + }, + "diskUuid": { + "description": "The disk Uuid (reported by vCenter).", + "type": "string", + "readOnly": true + }, + "dataPendingInLogDataStoreInMB": { + "format": "double", + "description": "The data pending in log data store in MB.", + "type": "number", + "readOnly": true + }, + "dataPendingAtSourceAgentInMB": { + "format": "double", + "description": "The data pending at source agent in MB.", + "type": "number", + "readOnly": true + }, + "isInitialReplicationComplete": { + "description": "A value indicating whether initial replication is complete or not.", + "type": "string", + "readOnly": true + }, + "irDetails": { + "$ref": "#/definitions/InMageRcmFailbackSyncDetails", + "description": "The initial replication details." + }, + "resyncDetails": { + "$ref": "#/definitions/InMageRcmFailbackSyncDetails", + "description": "The resync details." + }, + "lastSyncTime": { + "format": "date-time", + "description": "The last sync time.", + "type": "string", + "readOnly": true + } + } + }, + "InMageRcmFailbackReplicationDetails": { + "description": "InMageRcmFailback provider specific details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ReplicationProviderSpecificSettings" + } + ], + "properties": { + "internalIdentifier": { + "description": "The virtual machine internal identifier.", + "type": "string", + "readOnly": true + }, + "azureVirtualMachineId": { + "description": "The ARM Id of the azure VM.", + "type": "string", + "readOnly": true + }, + "multiVmGroupName": { + "description": "The multi VM group name.", + "type": "string", + "readOnly": true + }, + "reprotectAgentId": { + "description": "The reprotect agent Id.", + "type": "string", + "readOnly": true + }, + "reprotectAgentName": { + "description": "The reprotect agent name.", + "type": "string", + "readOnly": true + }, + "osType": { + "description": "The type of the OS on the VM.", + "type": "string", + "readOnly": true + }, + "logStorageAccountId": { + "description": "The log storage account ARM Id.", + "type": "string", + "readOnly": true + }, + "targetvCenterId": { + "description": "The target vCenter Id.", + "type": "string", + "readOnly": true + }, + "targetDataStoreName": { + "description": "The target datastore name.", + "type": "string", + "readOnly": true + }, + "targetVmName": { + "description": "The target VM name.", + "type": "string", + "readOnly": true + }, + "initialReplicationProgressPercentage": { + "format": "int32", + "description": "The initial replication progress percentage.", + "type": "integer", + "readOnly": true + }, + "initialReplicationProcessedBytes": { + "format": "int64", + "description": "The initial replication processed bytes. This includes sum of total bytes transferred and matched bytes on all selected disks in source VM.", + "type": "integer", + "readOnly": true + }, + "initialReplicationTransferredBytes": { + "format": "int64", + "description": "The initial replication transferred bytes from source VM to target for all selected disks on source VM.", + "type": "integer", + "readOnly": true + }, + "initialReplicationProgressHealth": { + "description": "The initial replication progress health.", + "enum": [ + "None", + "InProgress", + "SlowProgress", + "NoProgress" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "VmReplicationProgressHealth", + "modelAsString": true + } + }, + "resyncProgressPercentage": { + "format": "int32", + "description": "The resync progress percentage.", + "type": "integer", + "readOnly": true + }, + "resyncProcessedBytes": { + "format": "int64", + "description": "The resync processed bytes. This includes sum of total bytes transferred and matched bytes on all selected disks in source VM.", + "type": "integer", + "readOnly": true + }, + "resyncTransferredBytes": { + "format": "int64", + "description": "The resync transferred bytes from source VM to target for all selected disks on source VM.", + "type": "integer", + "readOnly": true + }, + "resyncProgressHealth": { + "description": "The resync progress health.", + "enum": [ + "None", + "InProgress", + "SlowProgress", + "NoProgress" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "VmReplicationProgressHealth", + "modelAsString": true + } + }, + "resyncRequired": { + "description": "A value indicating whether resync is required.", + "type": "string", + "readOnly": true + }, + "resyncState": { + "description": "The resync state.", + "enum": [ + "None", + "PreparedForResynchronization", + "StartedResynchronization" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ResyncState", + "modelAsString": true + } + }, + "protectedDisks": { + "description": "The list of protected disks.", + "type": "array", + "items": { + "$ref": "#/definitions/InMageRcmFailbackProtectedDiskDetails" + } + }, + "mobilityAgentDetails": { + "$ref": "#/definitions/InMageRcmFailbackMobilityAgentDetails", + "description": "The mobility agent information." + }, + "vmNics": { + "description": "The network details.", + "type": "array", + "items": { + "$ref": "#/definitions/InMageRcmFailbackNicDetails" + } + } + }, + "x-ms-discriminator-value": "InMageRcmFailback" + }, + "InMageRcmFailbackReprotectInput": { + "description": "InMageRcmFailback specific provider input.", + "required": [ + "processServerId", + "policyId" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ReverseReplicationProviderSpecificInput" + } + ], + "properties": { + "processServerId": { + "description": "The process server Id.", + "type": "string" + }, + "runAsAccountId": { + "description": "The run as account Id.", + "type": "string" + }, + "policyId": { + "description": "The Policy Id.", + "type": "string" + } + }, + "x-ms-discriminator-value": "InMageRcmFailback" + }, + "InMageRcmFailbackSyncDetails": { + "description": "InMageRcmFailback disk level sync details.", + "type": "object", + "properties": { + "progressHealth": { + "description": "The progress health.", + "enum": [ + "None", + "InProgress", + "SlowProgress", + "NoProgress", + "Queued" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "DiskReplicationProgressHealth", + "modelAsString": true + } + }, + "transferredBytes": { + "format": "int64", + "description": "The transferred bytes from source VM to azure for the disk.", + "type": "integer", + "readOnly": true + }, + "last15MinutesTransferredBytes": { + "format": "int64", + "description": "The bytes transferred in last 15 minutes from source VM to target.", + "type": "integer", + "readOnly": true + }, + "lastDataTransferTimeUtc": { + "description": "The time of the last data transfer from source VM to target.", + "type": "string", + "readOnly": true + }, + "processedBytes": { + "format": "int64", + "description": "The total processed bytes. This includes bytes that are transferred from source VM to target and matched bytes.", + "type": "integer", + "readOnly": true + }, + "startTime": { + "description": "The start time.", + "type": "string", + "readOnly": true + }, + "lastRefreshTime": { + "description": "The last refresh time.", + "type": "string", + "readOnly": true + }, + "progressPercentage": { + "format": "int32", + "description": "Progress in percentage. Progress percentage is calculated based on processed bytes.", + "type": "integer", + "readOnly": true + } + } + }, + "InMageRcmLastAgentUpgradeErrorDetails": { + "description": "InMageRcm last source agent upgrade error details.", + "type": "object", + "properties": { + "errorCode": { + "description": "The error code.", + "type": "string", + "readOnly": true + }, + "errorMessage": { + "description": "The error message.", + "type": "string", + "readOnly": true + }, + "possibleCauses": { + "description": "The possible causes.", + "type": "string", + "readOnly": true + }, + "recommendedAction": { + "description": "The recommended action.", + "type": "string", + "readOnly": true + }, + "errorMessageParameters": { + "description": "The error message parameters.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "readOnly": true + }, + "errorTags": { + "description": "The error tags.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "readOnly": true + } + } + }, + "InMageRcmMobilityAgentDetails": { + "description": "InMageRcm mobility agent details.", + "type": "object", + "properties": { + "version": { + "description": "The agent version.", + "type": "string", + "readOnly": true + }, + "latestVersion": { + "description": "The latest agent version available.", + "type": "string", + "readOnly": true + }, + "latestAgentReleaseDate": { + "description": "The latest agent version release date.", + "type": "string", + "readOnly": true + }, + "driverVersion": { + "description": "The driver version.", + "type": "string", + "readOnly": true + }, + "latestUpgradableVersionWithoutReboot": { + "description": "The latest upgradeable version available without reboot.", + "type": "string", + "readOnly": true + }, + "agentVersionExpiryDate": { + "format": "date-time", + "description": "The agent version expiry date.", + "type": "string", + "readOnly": true + }, + "driverVersionExpiryDate": { + "format": "date-time", + "description": "The driver version expiry date.", + "type": "string", + "readOnly": true + }, + "lastHeartbeatUtc": { + "format": "date-time", + "description": "The time of the last heartbeat received from the agent.", + "type": "string", + "readOnly": true + }, + "reasonsBlockingUpgrade": { + "description": "The whether update is possible or not.", + "type": "array", + "items": { + "enum": [ + "AlreadyOnLatestVersion", + "RebootRequired", + "AgentNoHeartbeat", + "RcmProxyNoHeartbeat", + "ProcessServerNoHeartbeat", + "IncompatibleApplianceVersion", + "NotProtected", + "UnsupportedProtectionScenario", + "DistroIsNotReported", + "DistroNotSupportedForUpgrade", + "MissingUpgradePath", + "InvalidAgentVersion", + "InvalidDriverVersion", + "Unknown" + ], + "type": "string", + "x-ms-enum": { + "name": "AgentUpgradeBlockedReason", + "modelAsString": true + } + }, + "readOnly": true + }, + "isUpgradeable": { + "description": "A value indicating whether agent is upgradeable or not.", + "type": "string", + "readOnly": true + } + } + }, + "InMageRcmNicDetails": { + "description": "InMageRcm NIC details.", + "type": "object", + "properties": { + "nicId": { + "description": "The NIC Id.", + "type": "string", + "readOnly": true + }, + "isPrimaryNic": { + "description": "A value indicating whether this is the primary NIC.", + "type": "string" + }, + "isSelectedForFailover": { + "description": "A value indicating whether this NIC is selected for failover.", + "type": "string" + }, + "sourceIPAddress": { + "description": "The source IP address.", + "type": "string", + "readOnly": true + }, + "sourceIPAddressType": { + "description": "The source IP address type.", + "enum": [ + "Dynamic", + "Static" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "EthernetAddressType", + "modelAsString": true + } + }, + "sourceNetworkId": { + "description": "Source network Id.", + "type": "string", + "readOnly": true + }, + "sourceSubnetName": { + "description": "Source subnet name.", + "type": "string", + "readOnly": true + }, + "targetIPAddress": { + "description": "The target IP address.", + "type": "string" + }, + "targetIPAddressType": { + "description": "The target IP address type.", + "enum": [ + "Dynamic", + "Static" + ], + "type": "string", + "x-ms-enum": { + "name": "EthernetAddressType", + "modelAsString": true + } + }, + "targetSubnetName": { + "description": "Target subnet name.", + "type": "string" + }, + "testSubnetName": { + "description": "Test subnet name.", + "type": "string" + }, + "testIPAddress": { + "description": "The test IP address.", + "type": "string" + }, + "testIPAddressType": { + "description": "The test IP address type.", + "enum": [ + "Dynamic", + "Static" + ], + "type": "string", + "x-ms-enum": { + "name": "EthernetAddressType", + "modelAsString": true + } + } + } + }, + "InMageRcmNicInput": { + "description": "InMageRcm NIC input.", + "required": [ + "nicId", + "isPrimaryNic" + ], + "type": "object", + "properties": { + "nicId": { + "description": "The NIC Id.", + "type": "string" + }, + "isPrimaryNic": { + "description": "A value indicating whether this is the primary NIC.", + "type": "string" + }, + "isSelectedForFailover": { + "description": "A value indicating whether this NIC is selected for failover.", + "type": "string" + }, + "targetSubnetName": { + "description": "Target subnet name.", + "type": "string" + }, + "targetStaticIPAddress": { + "description": "The target static IP address.", + "type": "string" + }, + "testSubnetName": { + "description": "The test subnet name.", + "type": "string" + }, + "testStaticIPAddress": { + "description": "The test static IP address.", + "type": "string" + } + } + }, + "InMageRcmPolicyCreationInput": { + "description": "InMageRcm policy creation input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/PolicyProviderSpecificInput" + } + ], + "properties": { + "recoveryPointHistoryInMinutes": { + "format": "int32", + "description": "The duration in minutes until which the recovery points need to be stored.", + "type": "integer" + }, + "crashConsistentFrequencyInMinutes": { + "format": "int32", + "description": "The crash consistent snapshot frequency (in minutes).", + "type": "integer" + }, + "appConsistentFrequencyInMinutes": { + "format": "int32", + "description": "The app consistent snapshot frequency (in minutes).", + "type": "integer" + }, + "enableMultiVmSync": { + "description": "A value indicating whether multi-VM sync has to be enabled.", + "type": "string" + } + }, + "x-ms-discriminator-value": "InMageRcm" + }, + "InMageRcmPolicyDetails": { + "description": "InMageRcm specific policy details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/PolicyProviderSpecificDetails" + } + ], + "properties": { + "recoveryPointHistoryInMinutes": { + "format": "int32", + "description": "The duration in minutes until which the recovery points need to be stored.", + "type": "integer" + }, + "appConsistentFrequencyInMinutes": { + "format": "int32", + "description": "The app consistent snapshot frequency in minutes.", + "type": "integer" + }, + "crashConsistentFrequencyInMinutes": { + "format": "int32", + "description": "The crash consistent snapshot frequency in minutes.", + "type": "integer" + }, + "enableMultiVmSync": { + "description": "A value indicating whether multi-VM sync has to be enabled.", + "type": "string" + } + }, + "x-ms-discriminator-value": "InMageRcm" + }, + "InMageRcmProtectedDiskDetails": { + "description": "InMageRcm protected disk details.", + "type": "object", + "properties": { + "diskId": { + "description": "The disk Id.", + "type": "string", + "readOnly": true + }, + "diskName": { + "description": "The disk name.", + "type": "string", + "readOnly": true + }, + "isOSDisk": { + "description": "A value indicating whether the disk is the OS disk.", + "type": "string", + "readOnly": true + }, + "capacityInBytes": { + "format": "int64", + "description": "The disk capacity in bytes.", + "type": "integer", + "readOnly": true + }, + "logStorageAccountId": { + "description": "The log storage account ARM Id.", + "type": "string", + "readOnly": true + }, + "diskEncryptionSetId": { + "description": "The DiskEncryptionSet ARM Id.", + "type": "string", + "readOnly": true + }, + "seedManagedDiskId": { + "description": "The ARM Id of the seed managed disk.", + "type": "string", + "readOnly": true + }, + "targetManagedDiskId": { + "description": "The ARM Id of the target managed disk.", + "type": "string", + "readOnly": true + }, + "diskType": { + "description": "The disk type.", + "enum": [ + "Standard_LRS", + "Premium_LRS", + "StandardSSD_LRS" + ], + "type": "string", + "x-ms-enum": { + "name": "DiskAccountType", + "modelAsString": true + } + }, + "dataPendingInLogDataStoreInMB": { + "format": "double", + "description": "The data pending in log data store in MB.", + "type": "number", + "readOnly": true + }, + "dataPendingAtSourceAgentInMB": { + "format": "double", + "description": "The data pending at source agent in MB.", + "type": "number", + "readOnly": true + }, + "isInitialReplicationComplete": { + "description": "A value indicating whether initial replication is complete or not.", + "type": "string", + "readOnly": true + }, + "irDetails": { + "$ref": "#/definitions/InMageRcmSyncDetails", + "description": "The initial replication details." + }, + "resyncDetails": { + "$ref": "#/definitions/InMageRcmSyncDetails", + "description": "The resync details." + } + } + }, + "InMageRcmProtectionContainerMappingDetails": { + "description": "InMageRcm provider specific container mapping details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionContainerMappingProviderSpecificDetails" + } + ], + "properties": { + "enableAgentAutoUpgrade": { + "description": "A value indicating whether the flag for enable agent auto upgrade.", + "type": "string", + "readOnly": true + } + }, + "x-ms-discriminator-value": "InMageRcm" + }, + "InMageRcmRecoveryPointDetails": { + "description": "InMageRcm provider specific recovery point details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProviderSpecificRecoveryPointDetails" + } + ], + "properties": { + "isMultiVmSyncPoint": { + "description": "A value indicating whether the recovery point is multi VM consistent.", + "type": "string", + "readOnly": true + } + }, + "x-ms-discriminator-value": "InMageRcm" + }, + "InMageRcmReplicationDetails": { + "description": "InMageRcm provider specific details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ReplicationProviderSpecificSettings" + } + ], + "properties": { + "internalIdentifier": { + "description": "The virtual machine internal identifier.", + "type": "string", + "readOnly": true + }, + "fabricDiscoveryMachineId": { + "description": "The ARM Id of the discovered VM.", + "type": "string", + "readOnly": true + }, + "multiVmGroupName": { + "description": "The multi VM group name.", + "type": "string", + "readOnly": true + }, + "discoveryType": { + "description": "The type of the discovered VM.", + "type": "string", + "readOnly": true + }, + "processServerId": { + "description": "The process server Id.", + "type": "string", + "readOnly": true + }, + "processorCoreCount": { + "format": "int32", + "description": "The processor core count.", + "type": "integer", + "readOnly": true + }, + "allocatedMemoryInMB": { + "format": "double", + "description": "The allocated memory in MB.", + "type": "number", + "readOnly": true + }, + "processServerName": { + "description": "The process server name.", + "type": "string", + "readOnly": true + }, + "runAsAccountId": { + "description": "The run-as account Id.", + "type": "string", + "readOnly": true + }, + "osType": { + "description": "The type of the OS on the VM.", + "type": "string", + "readOnly": true + }, + "firmwareType": { + "description": "The firmware type.", + "type": "string", + "readOnly": true + }, + "primaryNicIpAddress": { + "description": "The IP address of the primary network interface.", + "type": "string", + "readOnly": true + }, + "targetGeneration": { + "description": "The target generation.", + "type": "string", + "readOnly": true + }, + "licenseType": { + "description": "License Type of the VM to be used.", + "type": "string" + }, + "targetVmName": { + "description": "Target VM name.", + "type": "string" + }, + "targetVmSize": { + "description": "The target VM size.", + "type": "string" + }, + "targetResourceGroupId": { + "description": "The target resource group Id.", + "type": "string" + }, + "targetLocation": { + "description": "The target location.", + "type": "string" + }, + "targetAvailabilitySetId": { + "description": "The target availability set Id.", + "type": "string" + }, + "targetAvailabilityZone": { + "description": "The target availability zone.", + "type": "string" + }, + "targetProximityPlacementGroupId": { + "description": "The target proximity placement group Id.", + "type": "string" + }, + "targetBootDiagnosticsStorageAccountId": { + "description": "The target boot diagnostics storage account ARM Id.", + "type": "string" + }, + "targetNetworkId": { + "description": "The target network Id.", + "type": "string" + }, + "testNetworkId": { + "description": "The test network Id.", + "type": "string" + }, + "failoverRecoveryPointId": { + "description": "The recovery point Id to which the VM was failed over.", + "type": "string", + "readOnly": true + }, + "lastRecoveryPointReceived": { + "format": "date-time", + "description": "The last recovery point received time.", + "type": "string", + "readOnly": true + }, + "lastRpoInSeconds": { + "format": "int64", + "description": "The last recovery point objective value.", + "type": "integer", + "readOnly": true + }, + "lastRpoCalculatedTime": { + "format": "date-time", + "description": "The last recovery point objective calculated time.", + "type": "string", + "readOnly": true + }, + "lastRecoveryPointId": { + "description": "The last recovery point Id.", + "type": "string", + "readOnly": true + }, + "initialReplicationProgressPercentage": { + "format": "int32", + "description": "The initial replication progress percentage. This is calculated based on total bytes processed for all disks in the source VM.", + "type": "integer", + "readOnly": true + }, + "initialReplicationProcessedBytes": { + "format": "int64", + "description": "The initial replication processed bytes. This includes sum of total bytes transferred and matched bytes on all selected disks in source VM.", + "type": "integer", + "readOnly": true + }, + "initialReplicationTransferredBytes": { + "format": "int64", + "description": "The initial replication transferred bytes from source VM to azure for all selected disks on source VM.", + "type": "integer", + "readOnly": true + }, + "initialReplicationProgressHealth": { + "description": "The initial replication progress health.", + "enum": [ + "None", + "InProgress", + "SlowProgress", + "NoProgress" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "VmReplicationProgressHealth", + "modelAsString": true + } + }, + "resyncProgressPercentage": { + "format": "int32", + "description": "The resync progress percentage. This is calculated based on total bytes processed for all disks in the source VM.", + "type": "integer", + "readOnly": true + }, + "resyncProcessedBytes": { + "format": "int64", + "description": "The resync processed bytes. This includes sum of total bytes transferred and matched bytes on all selected disks in source VM.", + "type": "integer", + "readOnly": true + }, + "resyncTransferredBytes": { + "format": "int64", + "description": "The resync transferred bytes from source VM to azure for all selected disks on source VM.", + "type": "integer", + "readOnly": true + }, + "resyncProgressHealth": { + "description": "The resync progress health.", + "enum": [ + "None", + "InProgress", + "SlowProgress", + "NoProgress" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "VmReplicationProgressHealth", + "modelAsString": true + } + }, + "resyncRequired": { + "description": "A value indicating whether resync is required.", + "type": "string", + "readOnly": true + }, + "resyncState": { + "description": "The resync state.", + "enum": [ + "None", + "PreparedForResynchronization", + "StartedResynchronization" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ResyncState", + "modelAsString": true + } + }, + "agentUpgradeState": { + "description": "The agent auto upgrade state.", + "enum": [ + "None", + "Started", + "Completed", + "Commit" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "MobilityAgentUpgradeState", + "modelAsString": true + } + }, + "lastAgentUpgradeType": { + "description": "The last agent upgrade type.", + "type": "string", + "readOnly": true + }, + "agentUpgradeJobId": { + "description": "The agent upgrade job Id.", + "type": "string", + "readOnly": true + }, + "agentUpgradeAttemptToVersion": { + "description": "The agent version to which last agent upgrade was attempted.", + "type": "string", + "readOnly": true + }, + "protectedDisks": { + "description": "The list of protected disks.", + "type": "array", + "items": { + "$ref": "#/definitions/InMageRcmProtectedDiskDetails" + } + }, + "isLastUpgradeSuccessful": { + "description": "A value indicating whether last agent upgrade was successful or not.", + "type": "string", + "readOnly": true + }, + "mobilityAgentDetails": { + "$ref": "#/definitions/InMageRcmMobilityAgentDetails", + "description": "The mobility agent information." + }, + "lastAgentUpgradeErrorDetails": { + "description": "The last agent upgrade error information.", + "type": "array", + "items": { + "$ref": "#/definitions/InMageRcmLastAgentUpgradeErrorDetails" + } + }, + "agentUpgradeBlockingErrorDetails": { + "description": "The agent upgrade blocking error information.", + "type": "array", + "items": { + "$ref": "#/definitions/InMageRcmAgentUpgradeBlockingErrorDetails" + } + }, + "vmNics": { + "description": "The network details.", + "type": "array", + "items": { + "$ref": "#/definitions/InMageRcmNicDetails" + } + } + }, + "x-ms-discriminator-value": "InMageRcm" + }, + "InMageRcmReprotectInput": { + "description": "InMageRcm specific provider input.", + "required": [ + "reprotectAgentId", + "datastoreName", + "logStorageAccountId" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ReverseReplicationProviderSpecificInput" + } + ], + "properties": { + "reprotectAgentId": { + "description": "The reprotect agent Id.", + "type": "string" + }, + "datastoreName": { + "description": "The target datastore name.", + "type": "string" + }, + "logStorageAccountId": { + "description": "The log storage account ARM Id.", + "type": "string" + }, + "policyId": { + "description": "The Policy Id.", + "type": "string" + } + }, + "x-ms-discriminator-value": "InMageRcm" + }, + "InMageRcmSyncDetails": { + "description": "InMageRcm disk level sync details.", + "type": "object", + "properties": { + "progressHealth": { + "description": "The progress health.", + "enum": [ + "None", + "InProgress", + "SlowProgress", + "NoProgress", + "Queued" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "DiskReplicationProgressHealth", + "modelAsString": true + } + }, + "transferredBytes": { + "format": "int64", + "description": "The transferred bytes from source VM to azure for the disk.", + "type": "integer", + "readOnly": true + }, + "last15MinutesTransferredBytes": { + "format": "int64", + "description": "The bytes transferred in last 15 minutes from source VM to azure.", + "type": "integer", + "readOnly": true + }, + "lastDataTransferTimeUtc": { + "description": "The time of the last data transfer from source VM to azure.", + "type": "string", + "readOnly": true + }, + "processedBytes": { + "format": "int64", + "description": "The total processed bytes. This includes bytes that are transferred from source VM to azure and matched bytes.", + "type": "integer", + "readOnly": true + }, + "startTime": { + "description": "The start time.", + "type": "string", + "readOnly": true + }, + "lastRefreshTime": { + "description": "The last refresh time.", + "type": "string", + "readOnly": true + }, + "progressPercentage": { + "format": "int32", + "description": "Progress in percentage. Progress percentage is calculated based on processed bytes.", + "type": "integer", + "readOnly": true + } + } + }, + "InMageRcmTestFailoverInput": { + "description": "InMageRcm provider specific input for test failover.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TestFailoverProviderSpecificInput" + } + ], + "properties": { + "networkId": { + "description": "The test network Id.", + "type": "string" + }, + "recoveryPointId": { + "description": "The recovery point id to be passed to test failover to a particular recovery point. In case of latest recovery point, null should be passed.", + "type": "string" + } + }, + "x-ms-discriminator-value": "InMageRcm" + }, + "InMageRcmUnplannedFailoverInput": { + "description": "InMageRcm provider specific input for unplanned failover.", + "required": [ + "performShutdown" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/UnplannedFailoverProviderSpecificInput" + } + ], + "properties": { + "performShutdown": { + "description": "A value indicating whether VM is to be shutdown.", + "type": "string" + }, + "recoveryPointId": { + "description": "The recovery point id to be passed to failover to a particular recovery point. In case of latest recovery point, null should be passed.", + "type": "string" + } + }, + "x-ms-discriminator-value": "InMageRcm" + }, + "InMageRcmUpdateContainerMappingInput": { + "description": "InMageRcm update protection container mapping.", + "required": [ + "enableAgentAutoUpgrade" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ReplicationProviderSpecificUpdateContainerMappingInput" + } + ], + "properties": { + "enableAgentAutoUpgrade": { + "description": "A value indicating whether agent auto upgrade has to be enabled.", + "type": "string" + } + }, + "x-ms-discriminator-value": "InMageRcm" + }, + "InMageRcmUpdateReplicationProtectedItemInput": { + "description": "InMageRcm provider specific input to update replication protected item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/UpdateReplicationProtectedItemProviderInput" + } + ], + "properties": { + "targetVmName": { + "description": "The target VM name.", + "type": "string" + }, + "targetVmSize": { + "description": "The target VM size.", + "type": "string" + }, + "targetResourceGroupId": { + "description": "The target resource group ARM Id.", + "type": "string" + }, + "targetAvailabilitySetId": { + "description": "The target availability set ARM Id.", + "type": "string" + }, + "targetAvailabilityZone": { + "description": "The target availability zone.", + "type": "string" + }, + "targetProximityPlacementGroupId": { + "description": "The target proximity placement group Id.", + "type": "string" + }, + "targetBootDiagnosticsStorageAccountId": { + "description": "The target boot diagnostics storage account ARM Id.", + "type": "string" + }, + "targetNetworkId": { + "description": "The target network ARM Id.", + "type": "string" + }, + "testNetworkId": { + "description": "The test network ARM Id.", + "type": "string" + }, + "vmNics": { + "description": "The list of NIC details.", + "minLength": 1, + "type": "array", + "items": { + "$ref": "#/definitions/InMageRcmNicInput" + } + }, + "licenseType": { + "description": "The license type.", + "enum": [ + "NotSpecified", + "NoLicenseType", + "WindowsServer" + ], + "type": "string", + "x-ms-enum": { + "name": "LicenseType", + "modelAsString": true + } + } + }, + "x-ms-discriminator-value": "InMageRcm" + }, + "InMageReplicationDetails": { + "description": "InMage provider specific settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ReplicationProviderSpecificSettings" + } + ], + "properties": { + "activeSiteType": { + "description": "The active location of the VM. If the VM is being protected from Azure, this field will take values from { Azure, OnPrem }. If the VM is being protected between two data-centers, this field will be OnPrem always.", + "type": "string" + }, + "sourceVmCpuCount": { + "format": "int32", + "description": "The CPU count of the VM on the primary side.", + "type": "integer" + }, + "sourceVmRamSizeInMB": { + "format": "int32", + "description": "The RAM size of the VM on the primary side.", + "type": "integer" + }, + "osDetails": { + "$ref": "#/definitions/OSDiskDetails", + "description": "The OS details." + }, + "protectionStage": { + "description": "The protection stage.", + "type": "string" + }, + "vmId": { + "description": "The virtual machine Id.", + "type": "string" + }, + "vmProtectionState": { + "description": "The protection state for the vm.", + "type": "string" + }, + "vmProtectionStateDescription": { + "description": "The protection state description for the vm.", + "type": "string" + }, + "resyncDetails": { + "$ref": "#/definitions/InitialReplicationDetails", + "description": "The resync details of the machine." + }, + "retentionWindowStart": { + "format": "date-time", + "description": "The retention window start time.", + "type": "string" + }, + "retentionWindowEnd": { + "format": "date-time", + "description": "The retention window end time.", + "type": "string" + }, + "compressedDataRateInMB": { + "format": "double", + "description": "The compressed data change rate in MB.", + "type": "number" + }, + "uncompressedDataRateInMB": { + "format": "double", + "description": "The uncompressed data change rate in MB.", + "type": "number" + }, + "rpoInSeconds": { + "format": "int64", + "description": "The RPO in seconds.", + "type": "integer" + }, + "protectedDisks": { + "description": "The list of protected disks.", + "type": "array", + "items": { + "$ref": "#/definitions/InMageProtectedDiskDetails" + } + }, + "ipAddress": { + "description": "The source IP address.", + "type": "string" + }, + "lastHeartbeat": { + "format": "date-time", + "description": "The last heartbeat received from the source server.", + "type": "string" + }, + "processServerId": { + "description": "The process server Id.", + "type": "string" + }, + "masterTargetId": { + "description": "The master target Id.", + "type": "string" + }, + "consistencyPoints": { + "description": "The collection of Consistency points.", + "type": "object", + "additionalProperties": { + "format": "date-time", + "type": "string" + } + }, + "diskResized": { + "description": "A value indicating whether any disk is resized for this VM.", + "type": "string" + }, + "rebootAfterUpdateStatus": { + "description": "A value indicating whether the source server requires a restart after update.", + "type": "string" + }, + "multiVmGroupId": { + "description": "The multi vm group Id, if any.", + "type": "string" + }, + "multiVmGroupName": { + "description": "The multi vm group name, if any.", + "type": "string" + }, + "multiVmSyncStatus": { + "description": "A value indicating whether the multi vm sync is enabled or disabled.", + "type": "string" + }, + "agentDetails": { + "$ref": "#/definitions/InMageAgentDetails", + "description": "The agent details." + }, + "vCenterInfrastructureId": { + "description": "The vCenter infrastructure Id.", + "type": "string" + }, + "infrastructureVmId": { + "description": "The infrastructure VM Id.", + "type": "string" + }, + "vmNics": { + "description": "The PE Network details.", + "type": "array", + "items": { + "$ref": "#/definitions/VMNicDetails" + } + }, + "discoveryType": { + "description": "A value indicating the discovery type of the machine.", + "type": "string" + }, + "azureStorageAccountId": { + "description": "A value indicating the underlying Azure storage account. If the VM is not running in Azure, this value shall be set to null.", + "type": "string" + }, + "datastores": { + "description": "The datastores of the on-premise machine Value can be list of strings that contain datastore names.", + "type": "array", + "items": { + "type": "string" + } + }, + "validationErrors": { + "description": "The validation errors of the on-premise machine Value can be list of validation errors.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthError" + } + }, + "lastRpoCalculatedTime": { + "format": "date-time", + "description": "The last RPO calculated time.", + "type": "string" + }, + "lastUpdateReceivedTime": { + "format": "date-time", + "description": "The last update time received from on-prem components.", + "type": "string" + }, + "replicaId": { + "description": "The replica id of the protected item.", + "type": "string" + }, + "osVersion": { + "description": "The OS Version of the protected item.", + "type": "string" + }, + "isAdditionalStatsAvailable": { + "description": "A value indicating whether additional IR stats are available or not.", + "type": "boolean" + }, + "totalDataTransferred": { + "format": "int64", + "description": "The total transferred data in bytes.", + "type": "integer" + }, + "totalProgressHealth": { + "description": "The progress health.", + "type": "string" + } + }, + "x-ms-discriminator-value": "InMage" + }, + "InMageReprotectInput": { + "description": "InMageAzureV2 specific provider input.", + "required": [ + "masterTargetId", + "processServerId", + "retentionDrive", + "profileId" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ReverseReplicationProviderSpecificInput" + } + ], + "properties": { + "masterTargetId": { + "description": "The Master Target Id.", + "type": "string" + }, + "processServerId": { + "description": "The Process Server Id.", + "type": "string" + }, + "retentionDrive": { + "description": "The retention drive to use on the MT.", + "type": "string" + }, + "runAsAccountId": { + "description": "The CS account Id.", + "type": "string" + }, + "datastoreName": { + "description": "The target datastore name.", + "type": "string" + }, + "diskExclusionInput": { + "$ref": "#/definitions/InMageDiskExclusionInput", + "description": "The enable disk exclusion input." + }, + "profileId": { + "description": "The Policy Id.", + "type": "string" + }, + "disksToInclude": { + "description": "The disks to include list.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "x-ms-discriminator-value": "InMage" + }, + "InMageTestFailoverInput": { + "description": "Provider specific input for InMage test failover.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TestFailoverProviderSpecificInput" + } + ], + "properties": { + "recoveryPointType": { + "description": "The recovery point type. Values from LatestTime, LatestTag or Custom. In the case of custom, the recovery point provided by RecoveryPointId will be used. In the other two cases, recovery point id will be ignored.", + "enum": [ + "LatestTime", + "LatestTag", + "Custom" + ], + "type": "string", + "x-ms-enum": { + "name": "RecoveryPointType", + "modelAsString": true + } + }, + "recoveryPointId": { + "description": "The recovery point id to be passed to test failover to a particular recovery point. In case of latest recovery point, null should be passed.", + "type": "string" + } + }, + "x-ms-discriminator-value": "InMage" + }, + "InMageUnplannedFailoverInput": { + "description": "Provider specific input for InMage unplanned failover.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/UnplannedFailoverProviderSpecificInput" + } + ], + "properties": { + "recoveryPointType": { + "description": "The recovery point type. Values from LatestTime, LatestTag or Custom. In the case of custom, the recovery point provided by RecoveryPointId will be used. In the other two cases, recovery point id will be ignored.", + "enum": [ + "LatestTime", + "LatestTag", + "Custom" + ], + "type": "string", + "x-ms-enum": { + "name": "RecoveryPointType", + "modelAsString": true + } + }, + "recoveryPointId": { + "description": "The recovery point id to be passed to failover to a particular recovery point. In case of latest recovery point, null should be passed.", + "type": "string" + } + }, + "x-ms-discriminator-value": "InMage" + }, + "InMageVolumeExclusionOptions": { + "description": "Guest disk signature based disk exclusion option when doing enable protection of virtual machine in InMage provider.", + "type": "object", + "properties": { + "volumeLabel": { + "description": "The volume label. The disk having any volume with this label will be excluded from replication.", + "type": "string" + }, + "onlyExcludeIfSingleVolume": { + "description": "The value indicating whether to exclude multi volume disk or not. If a disk has multiple volumes and one of the volume has label matching with VolumeLabel this disk will be excluded from replication if OnlyExcludeIfSingleVolume is false.", + "type": "string" + } + } + }, + "InnerHealthError": { + "description": "Implements InnerHealthError class. HealthError object has a list of InnerHealthErrors as child errors. InnerHealthError is used because this will prevent an infinite loop of structures when Hydra tries to auto-generate the contract. We are exposing the related health errors as inner health errors and all API consumers can utilize this in the same fashion as Exception -> InnerException.", + "type": "object", + "properties": { + "errorSource": { + "description": "Source of error.", + "type": "string" + }, + "errorType": { + "description": "Type of error.", + "type": "string" + }, + "errorLevel": { + "description": "Level of error.", + "type": "string" + }, + "errorCategory": { + "description": "Category of error.", + "type": "string" + }, + "errorCode": { + "description": "Error code.", + "type": "string" + }, + "summaryMessage": { + "description": "Summary message of the entity.", + "type": "string" + }, + "errorMessage": { + "description": "Error message.", + "type": "string" + }, + "possibleCauses": { + "description": "Possible causes of error.", + "type": "string" + }, + "recommendedAction": { + "description": "Recommended action to resolve error.", + "type": "string" + }, + "creationTimeUtc": { + "format": "date-time", + "description": "Error creation time (UTC).", + "type": "string" + }, + "recoveryProviderErrorMessage": { + "description": "DRA error message.", + "type": "string" + }, + "entityId": { + "description": "ID of the entity.", + "type": "string" + }, + "errorId": { + "description": "The health error unique id.", + "type": "string" + }, + "customerResolvability": { + "description": "Value indicating whether the health error is customer resolvable.", + "enum": [ + "Allowed", + "NotAllowed" + ], + "type": "string", + "x-ms-enum": { + "name": "HealthErrorCustomerResolvability", + "modelAsString": true + } + } + } + }, + "InputEndpoint": { + "type": "object", + "properties": { + "endpointName": { + "type": "string" + }, + "privatePort": { + "format": "int32", + "type": "integer" + }, + "publicPort": { + "format": "int32", + "type": "integer" + }, + "protocol": { + "type": "string" + } + } + }, + "Job": { + "description": "Job details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/JobProperties", + "description": "The custom data." + } + } + }, + "JobCollection": { + "description": "Collection of jobs.", + "type": "object", + "properties": { + "value": { + "description": "The list of jobs.", + "type": "array", + "items": { + "$ref": "#/definitions/Job" + } + }, + "nextLink": { + "description": "The value of next link.", + "type": "string" + } + } + }, + "JobDetails": { + "description": "Job details based on specific job type.", + "type": "object", + "properties": { + "instanceType": { + "description": "Gets the type of job details (see JobDetailsTypes enum for possible values).", + "type": "string", + "readOnly": true + }, + "affectedObjectDetails": { + "description": "The affected object properties like source server, source cloud, target server, target cloud etc. based on the workflow object details.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "discriminator": "instanceType" + }, + "JobEntity": { + "description": "This class contains the minimal job details required to navigate to the desired drill down.", + "type": "object", + "properties": { + "jobId": { + "description": "The job id.", + "type": "string" + }, + "jobFriendlyName": { + "description": "The job display name.", + "type": "string" + }, + "targetObjectId": { + "description": "The object id.", + "type": "string" + }, + "targetObjectName": { + "description": "The object name.", + "type": "string" + }, + "targetInstanceType": { + "description": "The workflow affected object type.", + "type": "string" + }, + "jobScenarioName": { + "description": "The job name. Enum type ScenarioName.", + "type": "string" + } + } + }, + "JobErrorDetails": { + "description": "This class contains the error details per object.", + "type": "object", + "properties": { + "serviceErrorDetails": { + "$ref": "#/definitions/ServiceError", + "description": "The Service error details." + }, + "providerErrorDetails": { + "$ref": "#/definitions/ProviderError", + "description": "The Provider error details." + }, + "errorLevel": { + "description": "Error level of error.", + "type": "string" + }, + "creationTime": { + "format": "date-time", + "description": "The creation time of job error.", + "type": "string" + }, + "taskId": { + "description": "The Id of the task.", + "type": "string" + } + } + }, + "JobProperties": { + "description": "Job custom data details.", + "type": "object", + "properties": { + "activityId": { + "description": "The activity id.", + "type": "string" + }, + "scenarioName": { + "description": "The ScenarioName.", + "type": "string" + }, + "friendlyName": { + "description": "The DisplayName.", + "type": "string" + }, + "state": { + "description": "The status of the Job. It is one of these values - NotStarted, InProgress, Succeeded, Failed, Cancelled, Suspended or Other.", + "type": "string" + }, + "stateDescription": { + "description": "The description of the state of the Job. For e.g. - For Succeeded state, description can be Completed, PartiallySucceeded, CompletedWithInformation or Skipped.", + "type": "string" + }, + "tasks": { + "description": "The tasks.", + "type": "array", + "items": { + "$ref": "#/definitions/ASRTask" + } + }, + "errors": { + "description": "The errors.", + "type": "array", + "items": { + "$ref": "#/definitions/JobErrorDetails" + } + }, + "startTime": { + "format": "date-time", + "description": "The start time.", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "The end time.", + "type": "string" + }, + "allowedActions": { + "description": "The Allowed action the job.", + "type": "array", + "items": { + "type": "string" + } + }, + "targetObjectId": { + "description": "The affected Object Id.", + "type": "string" + }, + "targetObjectName": { + "description": "The name of the affected object.", + "type": "string" + }, + "targetInstanceType": { + "description": "The type of the affected object which is of Microsoft.Azure.SiteRecovery.V2015_11_10.AffectedObjectType class.", + "type": "string" + }, + "customDetails": { + "$ref": "#/definitions/JobDetails", + "description": "The custom job details like test failover job details." + } + } + }, + "JobQueryParameter": { + "description": "Query parameter to enumerate jobs.", + "type": "object", + "properties": { + "startTime": { + "description": "Date time to get jobs from.", + "type": "string" + }, + "endTime": { + "description": "Date time to get jobs upto.", + "type": "string" + }, + "fabricId": { + "description": "The Id of the fabric to search jobs under.", + "type": "string" + }, + "affectedObjectTypes": { + "description": "The type of objects.", + "type": "string" + }, + "jobStatus": { + "description": "The states of the job to be filtered can be in.", + "type": "string" + }, + "jobOutputType": { + "description": "The output type of the jobs.", + "enum": [ + "Json", + "Xml", + "Excel" + ], + "type": "string", + "x-ms-enum": { + "name": "ExportJobOutputSerializationType", + "modelAsString": true + } + }, + "jobName": { + "description": "The job Name.", + "type": "string" + }, + "timezoneOffset": { + "format": "double", + "description": "The timezone offset for the location of the request (in minutes).", + "type": "number" + } + } + }, + "JobStatusEventDetails": { + "description": "Model class for event details of a job status event.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/EventSpecificDetails" + } + ], + "properties": { + "jobId": { + "description": "Job arm id for the event.", + "type": "string" + }, + "jobFriendlyName": { + "description": "JobName for the Event.", + "type": "string" + }, + "jobStatus": { + "description": "JobStatus for the Event.", + "type": "string" + }, + "affectedObjectType": { + "description": "AffectedObjectType for the event.", + "type": "string" + } + }, + "x-ms-discriminator-value": "JobStatus" + }, + "JobTaskDetails": { + "description": "This class represents a task which is actually a workflow so that one can navigate to its individual drill down.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TaskTypeDetails" + } + ], + "properties": { + "jobTask": { + "$ref": "#/definitions/JobEntity", + "description": "The job entity." + } + }, + "discriminator": "instanceType", + "x-ms-discriminator-value": "JobTaskDetails" + }, + "KeyEncryptionKeyInfo": { + "description": "Key Encryption Key (KEK) information.", + "type": "object", + "properties": { + "keyIdentifier": { + "description": "The key URL / identifier.", + "type": "string" + }, + "keyVaultResourceArmId": { + "description": "The KeyVault resource ARM Id for key.", + "type": "string" + } + } + }, + "LogicalNetwork": { + "description": "Logical network data model.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/LogicalNetworkProperties", + "description": "The Logical Network Properties." + } + } + }, + "LogicalNetworkCollection": { + "description": "List of logical networks.", + "type": "object", + "properties": { + "value": { + "description": "The Logical Networks list details.", + "type": "array", + "items": { + "$ref": "#/definitions/LogicalNetwork" + } + }, + "nextLink": { + "description": "The value of next link.", + "type": "string" + } + } + }, + "LogicalNetworkProperties": { + "description": "Logical Network Properties.", + "type": "object", + "properties": { + "friendlyName": { + "description": "The Friendly Name.", + "type": "string" + }, + "networkVirtualizationStatus": { + "description": "A value indicating whether Network Virtualization is enabled for the logical network.", + "type": "string" + }, + "logicalNetworkUsage": { + "description": "A value indicating whether logical network is used as private test network by test failover.", + "type": "string" + }, + "logicalNetworkDefinitionsStatus": { + "description": "A value indicating whether logical network definitions are isolated.", + "type": "string" + } + } + }, + "ManualActionTaskDetails": { + "description": "This class represents the manual action task details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TaskTypeDetails" + } + ], + "properties": { + "name": { + "description": "The name.", + "type": "string" + }, + "instructions": { + "description": "The instructions.", + "type": "string" + }, + "observation": { + "description": "The observation.", + "type": "string" + } + }, + "x-ms-discriminator-value": "ManualActionTaskDetails" + }, + "MarsAgentDetails": { + "description": "Mars agent details.", + "type": "object", + "properties": { + "id": { + "description": "The Mars agent Id.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The Mars agent name.", + "type": "string", + "readOnly": true + }, + "biosId": { + "description": "The Mars agent Bios Id.", + "type": "string", + "readOnly": true + }, + "fabricObjectId": { + "description": "The fabric object Id.", + "type": "string", + "readOnly": true + }, + "fqdn": { + "description": "The Mars agent Fqdn.", + "type": "string", + "readOnly": true + }, + "version": { + "description": "The version.", + "type": "string", + "readOnly": true + }, + "lastHeartbeatUtc": { + "format": "date-time", + "description": "The last heartbeat received from the Mars agent.", + "type": "string", + "readOnly": true + }, + "health": { + "description": "The health of the Mars agent.", + "enum": [ + "None", + "Normal", + "Warning", + "Critical" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProtectionHealth", + "modelAsString": true + } + }, + "healthErrors": { + "description": "The health errors.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthError" + }, + "readOnly": true + } + } + }, + "MasterTargetServer": { + "description": "Details of a Master Target Server.", + "type": "object", + "properties": { + "id": { + "description": "The server Id.", + "type": "string" + }, + "ipAddress": { + "description": "The IP address of the server.", + "type": "string" + }, + "name": { + "description": "The server name.", + "type": "string" + }, + "osType": { + "description": "The OS type of the server.", + "type": "string" + }, + "agentVersion": { + "description": "The version of the scout component on the server.", + "type": "string" + }, + "lastHeartbeat": { + "format": "date-time", + "description": "The last heartbeat received from the server.", + "type": "string" + }, + "versionStatus": { + "description": "Version status.", + "type": "string" + }, + "retentionVolumes": { + "description": "The retention volumes of Master target Server.", + "type": "array", + "items": { + "$ref": "#/definitions/RetentionVolume" + } + }, + "dataStores": { + "description": "The list of data stores in the fabric.", + "type": "array", + "items": { + "$ref": "#/definitions/DataStore" + } + }, + "validationErrors": { + "description": "Validation errors.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthError" + } + }, + "healthErrors": { + "description": "Health errors.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthError" + } + }, + "diskCount": { + "format": "int32", + "description": "Disk count of the master target.", + "type": "integer" + }, + "osVersion": { + "description": "OS Version of the master target.", + "type": "string" + }, + "agentExpiryDate": { + "format": "date-time", + "description": "Agent expiry date.", + "type": "string" + }, + "marsAgentVersion": { + "description": "MARS agent version.", + "type": "string" + }, + "marsAgentExpiryDate": { + "format": "date-time", + "description": "MARS agent expiry date.", + "type": "string" + }, + "agentVersionDetails": { + "$ref": "#/definitions/VersionDetails", + "description": "Agent version details." + }, + "marsAgentVersionDetails": { + "$ref": "#/definitions/VersionDetails", + "description": "Mars agent version details." + } + } + }, + "MigrateInput": { + "description": "Input for migrate.", + "required": [ + "properties" + ], + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/MigrateInputProperties", + "description": "Migrate input properties." + } + } + }, + "MigrateInputProperties": { + "description": "Migrate input properties.", + "required": [ + "providerSpecificDetails" + ], + "type": "object", + "properties": { + "providerSpecificDetails": { + "$ref": "#/definitions/MigrateProviderSpecificInput", + "description": "The provider specific details." + } + } + }, + "MigrateProviderSpecificInput": { + "description": "Migrate provider specific input.", + "required": [ + "instanceType" + ], + "type": "object", + "properties": { + "instanceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, + "MigrationItem": { + "description": "Migration item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/MigrationItemProperties", + "description": "The migration item properties." + } + } + }, + "MigrationItemCollection": { + "description": "Migration item collection.", + "type": "object", + "properties": { + "value": { + "description": "The list of migration items.", + "type": "array", + "items": { + "$ref": "#/definitions/MigrationItem" + } + }, + "nextLink": { + "description": "The value of next link.", + "type": "string" + } + } + }, + "MigrationItemProperties": { + "description": "Migration item properties.", + "type": "object", + "properties": { + "machineName": { + "description": "The on-premise virtual machine name.", + "type": "string", + "readOnly": true + }, + "policyId": { + "description": "The ARM Id of policy governing this item.", + "type": "string", + "readOnly": true + }, + "policyFriendlyName": { + "description": "The name of policy governing this item.", + "type": "string", + "readOnly": true + }, + "migrationState": { + "description": "The migration status.", + "enum": [ + "None", + "EnableMigrationInProgress", + "EnableMigrationFailed", + "DisableMigrationInProgress", + "DisableMigrationFailed", + "InitialSeedingInProgress", + "InitialSeedingFailed", + "Replicating", + "MigrationInProgress", + "MigrationSucceeded", + "MigrationFailed" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "MigrationState", + "modelAsString": true + } + }, + "migrationStateDescription": { + "description": "The migration state description.", + "type": "string", + "readOnly": true + }, + "lastTestMigrationTime": { + "format": "date-time", + "description": "The last test migration time.", + "type": "string", + "readOnly": true + }, + "lastTestMigrationStatus": { + "description": "The status of the last test migration.", + "type": "string", + "readOnly": true + }, + "testMigrateState": { + "description": "The test migrate state.", + "enum": [ + "None", + "TestMigrationInProgress", + "TestMigrationSucceeded", + "TestMigrationFailed", + "TestMigrationCleanupInProgress" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "TestMigrationState", + "modelAsString": true + } + }, + "testMigrateStateDescription": { + "description": "The test migrate state description.", + "type": "string", + "readOnly": true + }, + "health": { + "description": "The consolidated health.", + "enum": [ + "None", + "Normal", + "Warning", + "Critical" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProtectionHealth", + "modelAsString": true + } + }, + "healthErrors": { + "description": "The list of health errors.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthError" + }, + "readOnly": true + }, + "allowedOperations": { + "description": "The allowed operations on the migration item based on the current migration state of the item.", + "type": "array", + "items": { + "enum": [ + "DisableMigration", + "TestMigrate", + "TestMigrateCleanup", + "Migrate", + "StartResync" + ], + "type": "string", + "x-ms-enum": { + "name": "MigrationItemOperation", + "modelAsString": true + } + }, + "readOnly": true + }, + "currentJob": { + "$ref": "#/definitions/CurrentJobDetails", + "description": "The current job details.", + "readOnly": true + }, + "eventCorrelationId": { + "description": "The correlation Id for events associated with this migration item.", + "type": "string", + "readOnly": true + }, + "providerSpecificDetails": { + "$ref": "#/definitions/MigrationProviderSpecificSettings", + "description": "The migration provider custom settings." + } + } + }, + "MigrationItemsQueryParameter": { + "description": "Query parameter to enumerate migration items.", + "type": "object", + "properties": { + "sourceFabricName": { + "description": "The source fabric name filter.", + "type": "string" + }, + "sourceContainerName": { + "description": "The source container name filter.", + "type": "string" + }, + "instanceType": { + "description": "The replication provider type.", + "type": "string" + } + } + }, + "MigrationProviderSpecificSettings": { + "description": "Migration provider specific settings.", + "type": "object", + "properties": { + "instanceType": { + "description": "Gets the instance type.", + "type": "string", + "readOnly": true + } + }, + "discriminator": "instanceType" + }, + "MigrationRecoveryPoint": { + "description": "Recovery point for a migration item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/MigrationRecoveryPointProperties", + "description": "Recovery point properties." + } + } + }, + "MigrationRecoveryPointCollection": { + "description": "Collection of migration recovery points.", + "type": "object", + "properties": { + "value": { + "description": "The migration recovery point details.", + "type": "array", + "items": { + "$ref": "#/definitions/MigrationRecoveryPoint" + } + }, + "nextLink": { + "description": "The value of next link.", + "type": "string" + } + } + }, + "MigrationRecoveryPointProperties": { + "description": "Migration item recovery point properties.", + "type": "object", + "properties": { + "recoveryPointTime": { + "format": "date-time", + "description": "The recovery point time.", + "type": "string", + "readOnly": true + }, + "recoveryPointType": { + "description": "The recovery point type.", + "enum": [ + "NotSpecified", + "ApplicationConsistent", + "CrashConsistent" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "MigrationRecoveryPointType", + "modelAsString": true + } + } + } + }, + "MobilityServiceUpdate": { + "description": "The Mobility Service update details.", + "type": "object", + "properties": { + "version": { + "description": "The version of the latest update.", + "type": "string" + }, + "rebootStatus": { + "description": "The reboot status of the update - whether it is required or not.", + "type": "string" + }, + "osType": { + "description": "The OS type.", + "type": "string" + } + } + }, + "Network": { + "description": "Network model.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/NetworkProperties", + "description": "The Network Properties." + } + } + }, + "NetworkCollection": { + "description": "List of networks.", + "type": "object", + "properties": { + "value": { + "description": "The Networks list details.", + "type": "array", + "items": { + "$ref": "#/definitions/Network" + } + }, + "nextLink": { + "description": "The value of next link.", + "type": "string" + } + } + }, + "NetworkMapping": { + "description": "Network Mapping model. Ideally it should have been possible to inherit this class from prev version in InheritedModels as long as there is no difference in structure or method signature. Since there were no base Models for certain fields and methods viz NetworkMappingProperties and Load with required return type, the class has been introduced in its entirety with references to base models to facilitate extensions in subsequent versions.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/NetworkMappingProperties", + "description": "The Network Mapping Properties." + } + } + }, + "NetworkMappingCollection": { + "description": "List of network mappings. As with NetworkMapping, it should be possible to reuse a prev version of this class. It doesn't seem likely this class could be anything more than a slightly bespoke collection of NetworkMapping. Hence it makes sense to override Load with Base.NetworkMapping instead of existing CurrentVersion.NetworkMapping.", + "type": "object", + "properties": { + "value": { + "description": "The Network Mappings list.", + "type": "array", + "items": { + "$ref": "#/definitions/NetworkMapping" + } + }, + "nextLink": { + "description": "The value of next link.", + "type": "string" + } + } + }, + "NetworkMappingFabricSpecificSettings": { + "description": "Network Mapping fabric specific settings.", + "type": "object", + "properties": { + "instanceType": { + "description": "Gets the Instance type.", + "type": "string", + "readOnly": true + } + }, + "discriminator": "instanceType" + }, + "NetworkMappingProperties": { + "description": "Network Mapping Properties.", + "type": "object", + "properties": { + "state": { + "description": "The pairing state for network mapping.", + "type": "string" + }, + "primaryNetworkFriendlyName": { + "description": "The primary network friendly name.", + "type": "string" + }, + "primaryNetworkId": { + "description": "The primary network id for network mapping.", + "type": "string" + }, + "primaryFabricFriendlyName": { + "description": "The primary fabric friendly name.", + "type": "string" + }, + "recoveryNetworkFriendlyName": { + "description": "The recovery network friendly name.", + "type": "string" + }, + "recoveryNetworkId": { + "description": "The recovery network id for network mapping.", + "type": "string" + }, + "recoveryFabricArmId": { + "description": "The recovery fabric ARM id.", + "type": "string" + }, + "recoveryFabricFriendlyName": { + "description": "The recovery fabric friendly name.", + "type": "string" + }, + "fabricSpecificSettings": { + "$ref": "#/definitions/NetworkMappingFabricSpecificSettings", + "description": "The fabric specific settings." + } + } + }, + "NetworkProperties": { + "description": "Network Properties.", + "type": "object", + "properties": { + "fabricType": { + "description": "The Fabric Type.", + "type": "string" + }, + "subnets": { + "description": "The List of subnets.", + "type": "array", + "items": { + "$ref": "#/definitions/Subnet" + } + }, + "friendlyName": { + "description": "The Friendly Name.", + "type": "string" + }, + "networkType": { + "description": "The Network Type.", + "type": "string" + } + } + }, + "NewProtectionProfile": { + "description": "New Protection profile input.", + "required": [ + "policyName", + "multiVmSyncStatus" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionProfileCustomDetails" + } + ], + "properties": { + "policyName": { + "description": "The protection profile input.", + "type": "string" + }, + "recoveryPointHistory": { + "format": "int32", + "description": "The duration in minutes until which the recovery points need to be stored.", + "type": "integer" + }, + "crashConsistentFrequencyInMinutes": { + "format": "int32", + "description": "The crash consistent snapshot frequency (in minutes).", + "type": "integer" + }, + "appConsistentFrequencyInMinutes": { + "format": "int32", + "description": "The app consistent snapshot frequency (in minutes).", + "type": "integer" + }, + "multiVmSyncStatus": { + "description": "A value indicating whether multi-VM sync has to be enabled. Value should be 'Enabled' or 'Disabled'.", + "enum": [ + "Enable", + "Disable" + ], + "type": "string", + "x-ms-enum": { + "name": "SetMultiVmSyncStatus", + "modelAsString": true + } + } + }, + "x-ms-discriminator-value": "New" + }, + "NewRecoveryVirtualNetwork": { + "description": "Recovery virtual network input to create new virtual network from given source network.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RecoveryVirtualNetworkCustomDetails" + } + ], + "properties": { + "recoveryVirtualNetworkResourceGroupName": { + "description": "The name of the resource group to be used to create the recovery virtual network. If absent, target network would be created in the same resource group as target VM.", + "type": "string" + }, + "recoveryVirtualNetworkName": { + "description": "The recovery virtual network name.", + "type": "string" + } + }, + "x-ms-discriminator-value": "New" + }, + "OperationsDiscovery": { + "description": "Operations discovery class.", + "type": "object", + "properties": { + "name": { + "description": "Name of the API. The name of the operation being performed on this particular object. It should match the action name that appears in RBAC / the event service. Examples of operations include: * Microsoft.Compute/virtualMachine/capture/action * Microsoft.Compute/virtualMachine/restart/action * Microsoft.Compute/virtualMachine/write * Microsoft.Compute/virtualMachine/read * Microsoft.Compute/virtualMachine/delete Each action should include, in order: (1) Resource Provider Namespace (2) Type hierarchy for which the action applies (e.g. server/databases for a SQL Azure database) (3) Read, Write, Action or Delete indicating which type applies. If it is a PUT/PATCH on a collection or named value, Write should be used. If it is a GET, Read should be used. If it is a DELETE, Delete should be used. If it is a POST, Action should be used. As a note: all resource providers would need to include the \"{Resource Provider Namespace}/register/action\" operation in their response. This API is used to register for their service, and should include details about the operation (e.g. a localized name for the resource provider + any special considerations like PII release).", + "type": "string" + }, + "display": { + "$ref": "#/definitions/Display", + "description": "Object type." + }, + "origin": { + "description": "Origin. 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\".", + "type": "string" + }, + "properties": { + "$ref": "#/definitions/OperationsDiscoveryProperties", + "description": "Properties. Reserved for future use." + } + } + }, + "OperationsDiscoveryCollection": { + "description": "Collection of ClientDiscovery details.", + "type": "object", + "properties": { + "value": { + "description": "The ClientDiscovery details.", + "type": "array", + "items": { + "$ref": "#/definitions/OperationsDiscovery" + } + }, + "nextLink": { + "description": "The value of next link.", + "type": "string" + } + } + }, + "OperationsDiscoveryProperties": { + "description": "ClientDiscovery properties.", + "type": "object", + "properties": {} + }, + "OSDetails": { + "description": "Disk Details.", + "type": "object", + "properties": { + "osType": { + "description": "VM Disk details.", + "type": "string" + }, + "productType": { + "description": "Product type.", + "type": "string" + }, + "osEdition": { + "description": "The OSEdition.", + "type": "string" + }, + "oSVersion": { + "description": "The OS Version.", + "type": "string" + }, + "oSMajorVersion": { + "description": "The OS Major Version.", + "type": "string" + }, + "oSMinorVersion": { + "description": "The OS Minor Version.", + "type": "string" + } + } + }, + "OSDiskDetails": { + "description": "Details of the OS Disk.", + "type": "object", + "properties": { + "osVhdId": { + "description": "The id of the disk containing the OS.", + "type": "string" + }, + "osType": { + "description": "The type of the OS on the VM.", + "type": "string" + }, + "vhdName": { + "description": "The OS disk VHD name.", + "type": "string" + } + } + }, + "OSVersionWrapper": { + "description": "Wrapper model for OSVersion to include version and service pack info.", + "type": "object", + "properties": { + "version": { + "description": "The version.", + "type": "string" + }, + "servicePack": { + "description": "The service pack.", + "type": "string" + } + } + }, + "PlannedFailoverInput": { + "description": "Input definition for planned failover.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/PlannedFailoverInputProperties", + "description": "Planned failover input properties." + } + } + }, + "PlannedFailoverInputProperties": { + "description": "Input definition for planned failover input properties.", + "type": "object", + "properties": { + "failoverDirection": { + "description": "Failover direction.", + "type": "string" + }, + "providerSpecificDetails": { + "$ref": "#/definitions/PlannedFailoverProviderSpecificFailoverInput", + "description": "Provider specific settings." + } + } + }, + "PlannedFailoverProviderSpecificFailoverInput": { + "description": "Provider specific failover input.", + "type": "object", + "properties": { + "instanceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, + "Policy": { + "description": "Protection profile details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PolicyProperties", + "description": "The custom data." + } + } + }, + "PolicyCollection": { + "description": "Protection Profile Collection details.", + "type": "object", + "properties": { + "value": { + "description": "The policy details.", + "type": "array", + "items": { + "$ref": "#/definitions/Policy" + } + }, + "nextLink": { + "description": "The value of next link.", + "type": "string" + } + } + }, + "PolicyProperties": { + "description": "Protection profile custom data details.", + "type": "object", + "properties": { + "friendlyName": { + "description": "The FriendlyName.", + "type": "string" + }, + "providerSpecificDetails": { + "$ref": "#/definitions/PolicyProviderSpecificDetails", + "description": "The ReplicationChannelSetting." + } + } + }, + "PolicyProviderSpecificDetails": { + "description": "Base class for Provider specific details for policies.", + "type": "object", + "properties": { + "instanceType": { + "description": "Gets the class type. Overridden in derived classes.", + "type": "string", + "readOnly": true + } + }, + "discriminator": "instanceType" + }, + "PolicyProviderSpecificInput": { + "description": "Base class for provider specific input.", + "type": "object", + "properties": { + "instanceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, + "ProcessServer": { + "description": "Details of the Process Server.", + "type": "object", + "properties": { + "friendlyName": { + "description": "The Process Server's friendly name.", + "type": "string" + }, + "id": { + "description": "The Process Server Id.", + "type": "string" + }, + "ipAddress": { + "description": "The IP address of the server.", + "type": "string" + }, + "osType": { + "description": "The OS type of the server.", + "type": "string" + }, + "agentVersion": { + "description": "The version of the scout component on the server.", + "type": "string" + }, + "lastHeartbeat": { + "format": "date-time", + "description": "The last heartbeat received from the server.", + "type": "string" + }, + "versionStatus": { + "description": "Version status.", + "type": "string" + }, + "mobilityServiceUpdates": { + "description": "The list of the mobility service updates available on the Process Server.", + "type": "array", + "items": { + "$ref": "#/definitions/MobilityServiceUpdate" + } + }, + "hostId": { + "description": "The agent generated Id.", + "type": "string" + }, + "machineCount": { + "description": "The servers configured with this PS.", + "type": "string" + }, + "replicationPairCount": { + "description": "The number of replication pairs configured in this PS.", + "type": "string" + }, + "systemLoad": { + "description": "The percentage of the system load.", + "type": "string" + }, + "systemLoadStatus": { + "description": "The system load status.", + "type": "string" + }, + "cpuLoad": { + "description": "The percentage of the CPU load.", + "type": "string" + }, + "cpuLoadStatus": { + "description": "The CPU load status.", + "type": "string" + }, + "totalMemoryInBytes": { + "format": "int64", + "description": "The total memory.", + "type": "integer" + }, + "availableMemoryInBytes": { + "format": "int64", + "description": "The available memory.", + "type": "integer" + }, + "memoryUsageStatus": { + "description": "The memory usage status.", + "type": "string" + }, + "totalSpaceInBytes": { + "format": "int64", + "description": "The total space.", + "type": "integer" + }, + "availableSpaceInBytes": { + "format": "int64", + "description": "The available space.", + "type": "integer" + }, + "spaceUsageStatus": { + "description": "The space usage status.", + "type": "string" + }, + "psServiceStatus": { + "description": "The PS service status.", + "type": "string" + }, + "sslCertExpiryDate": { + "format": "date-time", + "description": "The PS SSL cert expiry date.", + "type": "string" + }, + "sslCertExpiryRemainingDays": { + "format": "int32", + "description": "CS SSL cert expiry date.", + "type": "integer" + }, + "osVersion": { + "description": "OS Version of the process server. Note: This will get populated if user has CS version greater than 9.12.0.0.", + "type": "string" + }, + "healthErrors": { + "description": "Health errors.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthError" + } + }, + "agentExpiryDate": { + "format": "date-time", + "description": "Agent expiry date.", + "type": "string" + }, + "agentVersionDetails": { + "$ref": "#/definitions/VersionDetails", + "description": "The agent version details." + }, + "health": { + "description": "The health of Process Server.", + "enum": [ + "None", + "Normal", + "Warning", + "Critical" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProtectionHealth", + "modelAsString": true + } + }, + "psStatsRefreshTime": { + "format": "date-time", + "description": "The process server stats refresh time.", + "type": "string", + "readOnly": true + }, + "throughputUploadPendingDataInBytes": { + "format": "int64", + "description": "The uploading pending data in bytes.", + "type": "integer", + "readOnly": true + }, + "throughputInMBps": { + "format": "int64", + "description": "The throughput in MBps.", + "type": "integer", + "readOnly": true + }, + "throughputInBytes": { + "format": "int64", + "description": "The throughput in bytes.", + "type": "integer", + "readOnly": true + }, + "throughputStatus": { + "description": "The throughput status.", + "type": "string", + "readOnly": true + }, + "marsCommunicationStatus": { + "description": "The MARS communication status.", + "type": "string", + "readOnly": true + }, + "marsRegistrationStatus": { + "description": "The MARS registration status.", + "type": "string", + "readOnly": true + } + } + }, + "ProcessServerDetails": { + "description": "Process server details.", + "type": "object", + "properties": { + "id": { + "description": "The process server Id.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The process server name.", + "type": "string", + "readOnly": true + }, + "biosId": { + "description": "The process server Bios Id.", + "type": "string", + "readOnly": true + }, + "fabricObjectId": { + "description": "The fabric object Id.", + "type": "string", + "readOnly": true + }, + "fqdn": { + "description": "The process server Fqdn.", + "type": "string", + "readOnly": true + }, + "version": { + "description": "The version.", + "type": "string", + "readOnly": true + }, + "lastHeartbeatUtc": { + "format": "date-time", + "description": "The last heartbeat received from the process server.", + "type": "string", + "readOnly": true + }, + "totalMemoryInBytes": { + "format": "int64", + "description": "The total memory.", + "type": "integer", + "readOnly": true + }, + "availableMemoryInBytes": { + "format": "int64", + "description": "The available memory.", + "type": "integer", + "readOnly": true + }, + "usedMemoryInBytes": { + "format": "int64", + "description": "The used memory.", + "type": "integer", + "readOnly": true + }, + "memoryUsagePercentage": { + "format": "double", + "description": "The memory usage percentage.", + "type": "number", + "readOnly": true + }, + "totalSpaceInBytes": { + "format": "int64", + "description": "The total disk space.", + "type": "integer", + "readOnly": true + }, + "availableSpaceInBytes": { + "format": "int64", + "description": "The available disk space.", + "type": "integer", + "readOnly": true + }, + "usedSpaceInBytes": { + "format": "int64", + "description": "The used disk space.", + "type": "integer", + "readOnly": true + }, + "freeSpacePercentage": { + "format": "double", + "description": "The free disk space percentage.", + "type": "number", + "readOnly": true + }, + "throughputUploadPendingDataInBytes": { + "format": "int64", + "description": "The uploading pending data in bytes.", + "type": "integer", + "readOnly": true + }, + "throughputInBytes": { + "format": "int64", + "description": "The throughput in bytes.", + "type": "integer", + "readOnly": true + }, + "processorUsagePercentage": { + "format": "double", + "description": "The processor usage percentage.", + "type": "number", + "readOnly": true + }, + "throughputStatus": { + "description": "The throughput status.", + "enum": [ + "Healthy", + "Warning", + "Critical", + "Unknown" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "RcmComponentStatus", + "modelAsString": true + } + }, + "systemLoad": { + "format": "int64", + "description": "The system load.", + "type": "integer", + "readOnly": true + }, + "systemLoadStatus": { + "description": "The system load status.", + "enum": [ + "Healthy", + "Warning", + "Critical", + "Unknown" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "RcmComponentStatus", + "modelAsString": true + } + }, + "diskUsageStatus": { + "description": "The disk usage status.", + "enum": [ + "Healthy", + "Warning", + "Critical", + "Unknown" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "RcmComponentStatus", + "modelAsString": true + } + }, + "memoryUsageStatus": { + "description": "The memory usage status.", + "enum": [ + "Healthy", + "Warning", + "Critical", + "Unknown" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "RcmComponentStatus", + "modelAsString": true + } + }, + "processorUsageStatus": { + "description": "The processor usage status.", + "enum": [ + "Healthy", + "Warning", + "Critical", + "Unknown" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "RcmComponentStatus", + "modelAsString": true + } + }, + "health": { + "description": "The health of the process server.", + "enum": [ + "None", + "Normal", + "Warning", + "Critical" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProtectionHealth", + "modelAsString": true + } + }, + "healthErrors": { + "description": "The health errors.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthError" + }, + "readOnly": true + }, + "historicHealth": { + "description": "The historic health of the process server based on the health in last 24 hours.", + "enum": [ + "None", + "Normal", + "Warning", + "Critical" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProtectionHealth", + "modelAsString": true + } + } + } + }, + "ProtectableItem": { + "description": "Replication protected item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ProtectableItemProperties", + "description": "The custom data." + } + } + }, + "ProtectableItemCollection": { + "description": "Protectable item collection.", + "type": "object", + "properties": { + "value": { + "description": "The Protectable item details.", + "type": "array", + "items": { + "$ref": "#/definitions/ProtectableItem" + } + }, + "nextLink": { + "description": "The value of next link.", + "type": "string" + } + } + }, + "ProtectableItemProperties": { + "description": "Replication protected item custom data details.", + "type": "object", + "properties": { + "friendlyName": { + "description": "The name.", + "type": "string" + }, + "protectionStatus": { + "description": "The protection status.", + "type": "string" + }, + "replicationProtectedItemId": { + "description": "The ARM resource of protected items.", + "type": "string" + }, + "recoveryServicesProviderId": { + "description": "The recovery provider ARM Id.", + "type": "string" + }, + "protectionReadinessErrors": { + "description": "The Current protection readiness errors.", + "type": "array", + "items": { + "type": "string" + } + }, + "supportedReplicationProviders": { + "description": "The list of replication providers supported for the protectable item.", + "type": "array", + "items": { + "type": "string" + } + }, + "customDetails": { + "$ref": "#/definitions/ConfigurationSettings", + "description": "The Replication provider custom settings." + } + } + }, + "ProtectableItemQueryParameter": { + "description": "Query parameter to enumerate Protectable items.", + "type": "object", + "properties": { + "state": { + "description": "State of the Protectable item query filter.", + "type": "string" + } + } + }, + "ProtectedItemsQueryParameter": { + "description": "Query parameter to enumerate protected items.", + "type": "object", + "properties": { + "sourceFabricName": { + "description": "The source fabric name filter.", + "type": "string" + }, + "recoveryPlanName": { + "description": "The recovery plan filter.", + "type": "string" + }, + "vCenterName": { + "description": "The vCenter name filter.", + "type": "string" + }, + "instanceType": { + "description": "The replication provider type.", + "type": "string" + }, + "multiVmGroupCreateOption": { + "description": "Whether Multi VM group is auto created or specified by user.", + "enum": [ + "AutoCreated", + "UserSpecified" + ], + "type": "string", + "x-ms-enum": { + "name": "MultiVmGroupCreateOption", + "modelAsString": true + } + }, + "processServerId": { + "description": "The process server Id filter.", + "type": "string" + } + } + }, + "ProtectionContainer": { + "description": "Protection container details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ProtectionContainerProperties", + "description": "The custom data." + } + } + }, + "ProtectionContainerCollection": { + "description": "Protection Container collection.", + "type": "object", + "properties": { + "value": { + "description": "The Protection Container details.", + "type": "array", + "items": { + "$ref": "#/definitions/ProtectionContainer" + } + }, + "nextLink": { + "description": "The value of next link.", + "type": "string" + } + } + }, + "ProtectionContainerFabricSpecificDetails": { + "description": "Base class for fabric specific details of container.", + "type": "object", + "properties": { + "instanceType": { + "description": "Gets the class type. Overridden in derived classes.", + "type": "string", + "readOnly": true + } + } + }, + "ProtectionContainerMapping": { + "description": "Protection container mapping object.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ProtectionContainerMappingProperties", + "description": "The custom data." + } + } + }, + "ProtectionContainerMappingCollection": { + "description": "Protection container mapping collection class.", + "type": "object", + "properties": { + "value": { + "description": "List of container mappings.", + "type": "array", + "items": { + "$ref": "#/definitions/ProtectionContainerMapping" + } + }, + "nextLink": { + "description": "Link to fetch rest of the data.", + "type": "string" + } + } + }, + "ProtectionContainerMappingProperties": { + "description": "Protection container mapping properties.", + "type": "object", + "properties": { + "targetProtectionContainerId": { + "description": "Paired protection container ARM ID.", + "type": "string" + }, + "targetProtectionContainerFriendlyName": { + "description": "Friendly name of paired container.", + "type": "string" + }, + "providerSpecificDetails": { + "$ref": "#/definitions/ProtectionContainerMappingProviderSpecificDetails", + "description": "Provider specific provider details." + }, + "health": { + "description": "Health of pairing.", + "type": "string" + }, + "healthErrorDetails": { + "description": "Health error.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthError" + } + }, + "policyId": { + "description": "Policy ARM Id.", + "type": "string" + }, + "state": { + "description": "Association Status.", + "type": "string" + }, + "sourceProtectionContainerFriendlyName": { + "description": "Friendly name of source protection container.", + "type": "string" + }, + "sourceFabricFriendlyName": { + "description": "Friendly name of source fabric.", + "type": "string" + }, + "targetFabricFriendlyName": { + "description": "Friendly name of target fabric.", + "type": "string" + }, + "policyFriendlyName": { + "description": "Friendly name of replication policy.", + "type": "string" + } + } + }, + "ProtectionContainerMappingProviderSpecificDetails": { + "description": "Container mapping provider specific details.", + "type": "object", + "properties": { + "instanceType": { + "description": "Gets the class type. Overridden in derived classes.", + "type": "string", + "readOnly": true + } + }, + "discriminator": "instanceType" + }, + "ProtectionContainerProperties": { + "description": "Protection profile custom data details.", + "type": "object", + "properties": { + "fabricFriendlyName": { + "description": "Fabric friendly name.", + "type": "string" + }, + "friendlyName": { + "description": "The name.", + "type": "string" + }, + "fabricType": { + "description": "The fabric type.", + "type": "string" + }, + "protectedItemCount": { + "format": "int32", + "description": "Number of protected PEs.", + "type": "integer" + }, + "pairingStatus": { + "description": "The pairing status of this cloud.", + "type": "string" + }, + "role": { + "description": "The role of this cloud.", + "type": "string" + }, + "fabricSpecificDetails": { + "$ref": "#/definitions/ProtectionContainerFabricSpecificDetails", + "description": "Fabric specific details." + } + } + }, + "ProtectionProfileCustomDetails": { + "description": "Protection Profile custom input.", + "type": "object", + "properties": { + "resourceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "resourceType" + }, + "ProviderError": { + "description": "This class contains the error details per object.", + "type": "object", + "properties": { + "errorCode": { + "format": "int32", + "description": "The Error code.", + "type": "integer" + }, + "errorMessage": { + "description": "The Error message.", + "type": "string" + }, + "errorId": { + "description": "The Provider error Id.", + "type": "string" + }, + "possibleCauses": { + "description": "The possible causes for the error.", + "type": "string" + }, + "recommendedAction": { + "description": "The recommended action to resolve the error.", + "type": "string" + } + } + }, + "ProviderSpecificRecoveryPointDetails": { + "description": "Replication provider specific recovery point details.", + "type": "object", + "properties": { + "instanceType": { + "description": "Gets the provider type.", + "type": "string", + "readOnly": true + } + }, + "discriminator": "instanceType" + }, + "PushInstallerDetails": { + "description": "Push installer details.", + "type": "object", + "properties": { + "id": { + "description": "The push installer Id.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The push installer name.", + "type": "string", + "readOnly": true + }, + "biosId": { + "description": "The push installer Bios Id.", + "type": "string", + "readOnly": true + }, + "fabricObjectId": { + "description": "The fabric object Id.", + "type": "string", + "readOnly": true + }, + "fqdn": { + "description": "The push installer Fqdn.", + "type": "string", + "readOnly": true + }, + "version": { + "description": "The version.", + "type": "string", + "readOnly": true + }, + "lastHeartbeatUtc": { + "format": "date-time", + "description": "The last heartbeat received from the push installer.", + "type": "string", + "readOnly": true + }, + "health": { + "description": "The health of the push installer.", + "enum": [ + "None", + "Normal", + "Warning", + "Critical" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProtectionHealth", + "modelAsString": true + } + }, + "healthErrors": { + "description": "The health errors.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthError" + }, + "readOnly": true + } + } + }, + "RcmProxyDetails": { + "description": "RCM proxy details.", + "type": "object", + "properties": { + "id": { + "description": "The RCM proxy Id.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The RCM proxy name.", + "type": "string", + "readOnly": true + }, + "biosId": { + "description": "The RCM proxy Bios Id.", + "type": "string", + "readOnly": true + }, + "fabricObjectId": { + "description": "The fabric object Id.", + "type": "string", + "readOnly": true + }, + "fqdn": { + "description": "The RCM proxy Fqdn.", + "type": "string", + "readOnly": true + }, + "version": { + "description": "The version.", + "type": "string", + "readOnly": true + }, + "lastHeartbeatUtc": { + "format": "date-time", + "description": "The last heartbeat received from the RCM proxy.", + "type": "string", + "readOnly": true + }, + "health": { + "description": "The health of the RCM proxy.", + "enum": [ + "None", + "Normal", + "Warning", + "Critical" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProtectionHealth", + "modelAsString": true + } + }, + "healthErrors": { + "description": "The health errors.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthError" + }, + "readOnly": true + } + } + }, + "RecoveryAvailabilitySetCustomDetails": { + "description": "Recovery Availability Set custom input.", + "type": "object", + "properties": { + "resourceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "resourceType" + }, + "RecoveryPlan": { + "description": "Recovery plan details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/RecoveryPlanProperties", + "description": "The custom details." + } + } + }, + "RecoveryPlanA2ADetails": { + "description": "Recovery plan A2A specific details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RecoveryPlanProviderSpecificDetails" + } + ], + "properties": { + "primaryZone": { + "description": "The primary zone.", + "type": "string" + }, + "recoveryZone": { + "description": "The recovery zone.", + "type": "string" + } + }, + "x-ms-discriminator-value": "A2A" + }, + "RecoveryPlanA2AFailoverInput": { + "description": "Recovery plan A2A failover input.", + "required": [ + "recoveryPointType" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RecoveryPlanProviderSpecificFailoverInput" + } + ], + "properties": { + "recoveryPointType": { + "description": "The recovery point type.", + "enum": [ + "Latest", + "LatestApplicationConsistent", + "LatestCrashConsistent", + "LatestProcessed" + ], + "type": "string", + "x-ms-enum": { + "name": "A2ARpRecoveryPointType", + "modelAsString": true + } + }, + "cloudServiceCreationOption": { + "description": "A value indicating whether to use recovery cloud service for TFO or not.", + "type": "string" + }, + "multiVmSyncPointOption": { + "description": "A value indicating whether multi VM sync enabled VMs should use multi VM sync points for failover.", + "enum": [ + "UseMultiVmSyncRecoveryPoint", + "UsePerVmRecoveryPoint" + ], + "type": "string", + "x-ms-enum": { + "name": "MultiVmSyncPointOption", + "modelAsString": true + } + } + }, + "x-ms-discriminator-value": "A2A" + }, + "RecoveryPlanA2AInput": { + "description": "Recovery plan A2A input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RecoveryPlanProviderSpecificInput" + } + ], + "properties": { + "primaryZone": { + "description": "The primary zone.", + "type": "string" + }, + "recoveryZone": { + "description": "The recovery zone.", + "type": "string" + } + }, + "x-ms-discriminator-value": "A2A" + }, + "RecoveryPlanAction": { + "description": "Recovery plan action details.", + "required": [ + "actionName", + "failoverTypes", + "failoverDirections", + "customDetails" + ], + "type": "object", + "properties": { + "actionName": { + "description": "The action name.", + "type": "string" + }, + "failoverTypes": { + "description": "The list of failover types.", + "type": "array", + "items": { + "enum": [ + "ReverseReplicate", + "Commit", + "PlannedFailover", + "UnplannedFailover", + "DisableProtection", + "TestFailover", + "TestFailoverCleanup", + "Failback", + "FinalizeFailback", + "CancelFailover", + "ChangePit", + "RepairReplication", + "SwitchProtection", + "CompleteMigration" + ], + "type": "string", + "x-ms-enum": { + "name": "ReplicationProtectedItemOperation", + "modelAsString": true + } + } + }, + "failoverDirections": { + "description": "The list of failover directions.", + "type": "array", + "items": { + "enum": [ + "PrimaryToRecovery", + "RecoveryToPrimary" + ], + "type": "string", + "x-ms-enum": { + "name": "PossibleOperationsDirections", + "modelAsString": true + } + } + }, + "customDetails": { + "$ref": "#/definitions/RecoveryPlanActionDetails", + "description": "The custom details." + } + } + }, + "RecoveryPlanActionDetails": { + "description": "Recovery plan action custom details.", + "type": "object", + "properties": { + "instanceType": { + "description": "Gets the type of action details (see RecoveryPlanActionDetailsTypes enum for possible values).", + "type": "string", + "readOnly": true + } + }, + "discriminator": "instanceType" + }, + "RecoveryPlanAutomationRunbookActionDetails": { + "description": "Recovery plan Automation runbook action details.", + "required": [ + "fabricLocation" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RecoveryPlanActionDetails" + } + ], + "properties": { + "runbookId": { + "description": "The runbook ARM Id.", + "type": "string" + }, + "timeout": { + "description": "The runbook timeout.", + "type": "string" + }, + "fabricLocation": { + "description": "The fabric location.", + "enum": [ + "Primary", + "Recovery" + ], + "type": "string", + "x-ms-enum": { + "name": "RecoveryPlanActionLocation", + "modelAsString": true + } + } + }, + "x-ms-discriminator-value": "AutomationRunbookActionDetails" + }, + "RecoveryPlanCollection": { + "description": "Recovery plan collection details.", + "type": "object", + "properties": { + "value": { + "description": "The list of recovery plans.", + "type": "array", + "items": { + "$ref": "#/definitions/RecoveryPlan" + } + }, + "nextLink": { + "description": "The value of next link.", + "type": "string" + } + } + }, + "RecoveryPlanGroup": { + "description": "Recovery plan group details.", + "required": [ + "groupType" + ], + "type": "object", + "properties": { + "groupType": { + "description": "The group type.", + "enum": [ + "Shutdown", + "Boot", + "Failover" + ], + "type": "string", + "x-ms-enum": { + "name": "RecoveryPlanGroupType", + "modelAsString": true + } + }, + "replicationProtectedItems": { + "description": "The list of protected items.", + "type": "array", + "items": { + "$ref": "#/definitions/RecoveryPlanProtectedItem" + } + }, + "startGroupActions": { + "description": "The start group actions.", + "type": "array", + "items": { + "$ref": "#/definitions/RecoveryPlanAction" + } + }, + "endGroupActions": { + "description": "The end group actions.", + "type": "array", + "items": { + "$ref": "#/definitions/RecoveryPlanAction" + } + } + } + }, + "RecoveryPlanGroupTaskDetails": { + "description": "This class represents the recovery plan group task.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/GroupTaskDetails" + } + ], + "properties": { + "name": { + "description": "The name.", + "type": "string" + }, + "groupId": { + "description": "The group identifier.", + "type": "string" + }, + "rpGroupType": { + "description": "The group type.", + "type": "string" + } + }, + "discriminator": "instanceType", + "x-ms-discriminator-value": "RecoveryPlanGroupTaskDetails" + }, + "RecoveryPlanHyperVReplicaAzureFailbackInput": { + "description": "Recovery plan HVR Azure failback input.", + "required": [ + "dataSyncOption", + "recoveryVmCreationOption" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RecoveryPlanProviderSpecificFailoverInput" + } + ], + "properties": { + "dataSyncOption": { + "description": "The data sync option.", + "enum": [ + "ForDownTime", + "ForSynchronization" + ], + "type": "string", + "x-ms-enum": { + "name": "DataSyncStatus", + "modelAsString": true + } + }, + "recoveryVmCreationOption": { + "description": "The ALR option.", + "enum": [ + "CreateVmIfNotFound", + "NoAction" + ], + "type": "string", + "x-ms-enum": { + "name": "AlternateLocationRecoveryOption", + "modelAsString": true + } + } + }, + "x-ms-discriminator-value": "HyperVReplicaAzureFailback" + }, + "RecoveryPlanHyperVReplicaAzureFailoverInput": { + "description": "Recovery plan HVR Azure failover input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RecoveryPlanProviderSpecificFailoverInput" + } + ], + "properties": { + "primaryKekCertificatePfx": { + "description": "The primary KEK certificate PFX.", + "type": "string" + }, + "secondaryKekCertificatePfx": { + "description": "The secondary KEK certificate PFX.", + "type": "string" + }, + "recoveryPointType": { + "description": "The recovery point type.", + "enum": [ + "Latest", + "LatestApplicationConsistent", + "LatestProcessed" + ], + "type": "string", + "x-ms-enum": { + "name": "HyperVReplicaAzureRpRecoveryPointType", + "modelAsString": true + } + } + }, + "x-ms-discriminator-value": "HyperVReplicaAzure" + }, + "RecoveryPlanInMageAzureV2FailoverInput": { + "description": "Recovery plan InMageAzureV2 failover input.", + "required": [ + "recoveryPointType" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RecoveryPlanProviderSpecificFailoverInput" + } + ], + "properties": { + "recoveryPointType": { + "description": "The recovery point type.", + "enum": [ + "Latest", + "LatestApplicationConsistent", + "LatestCrashConsistent", + "LatestProcessed" + ], + "type": "string", + "x-ms-enum": { + "name": "InMageV2RpRecoveryPointType", + "modelAsString": true + } + }, + "useMultiVmSyncPoint": { + "description": "A value indicating whether multi VM sync enabled VMs should use multi VM sync points for failover.", + "type": "string" + } + }, + "x-ms-discriminator-value": "InMageAzureV2" + }, + "RecoveryPlanInMageFailoverInput": { + "description": "Recovery plan InMage failover input.", + "required": [ + "recoveryPointType" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RecoveryPlanProviderSpecificFailoverInput" + } + ], + "properties": { + "recoveryPointType": { + "description": "The recovery point type.", + "enum": [ + "LatestTime", + "LatestTag", + "Custom" + ], + "type": "string", + "x-ms-enum": { + "name": "RpInMageRecoveryPointType", + "modelAsString": true + } + } + }, + "x-ms-discriminator-value": "InMage" + }, + "RecoveryPlanInMageRcmFailbackFailoverInput": { + "description": "Recovery plan InMageRcmFailback failover input.", + "required": [ + "recoveryPointType" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RecoveryPlanProviderSpecificFailoverInput" + } + ], + "properties": { + "recoveryPointType": { + "description": "The recovery point type.", + "enum": [ + "ApplicationConsistent", + "CrashConsistent" + ], + "type": "string", + "x-ms-enum": { + "name": "InMageRcmFailbackRecoveryPointType", + "modelAsString": true + } + }, + "useMultiVmSyncPoint": { + "description": "A value indicating whether multi VM sync enabled VMs should use multi VM sync points for failover.", + "type": "string" + } + }, + "x-ms-discriminator-value": "InMageRcmFailback" + }, + "RecoveryPlanInMageRcmFailoverInput": { + "description": "Recovery plan InMageRcm failover input.", + "required": [ + "recoveryPointType" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RecoveryPlanProviderSpecificFailoverInput" + } + ], + "properties": { + "recoveryPointType": { + "description": "The recovery point type.", + "enum": [ + "Latest", + "LatestApplicationConsistent", + "LatestCrashConsistent", + "LatestProcessed" + ], + "type": "string", + "x-ms-enum": { + "name": "RecoveryPlanPointType", + "modelAsString": true + } + }, + "useMultiVmSyncPoint": { + "description": "A value indicating whether multi VM sync enabled VMs should use multi VM sync points for failover.", + "type": "string" + } + }, + "x-ms-discriminator-value": "InMageRcm" + }, + "RecoveryPlanManualActionDetails": { + "description": "Recovery plan manual action details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RecoveryPlanActionDetails" + } + ], + "properties": { + "description": { + "description": "The manual action description.", + "type": "string" + } + }, + "x-ms-discriminator-value": "ManualActionDetails" + }, + "RecoveryPlanPlannedFailoverInput": { + "description": "Recovery plan planned failover input.", + "required": [ + "properties" + ], + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/RecoveryPlanPlannedFailoverInputProperties", + "description": "The recovery plan planned failover input properties." + } + } + }, + "RecoveryPlanPlannedFailoverInputProperties": { + "description": "Recovery plan planned failover input properties.", + "required": [ + "failoverDirection" + ], + "type": "object", + "properties": { + "failoverDirection": { + "description": "The failover direction.", + "enum": [ + "PrimaryToRecovery", + "RecoveryToPrimary" + ], + "type": "string", + "x-ms-enum": { + "name": "PossibleOperationsDirections", + "modelAsString": true + } + }, + "providerSpecificDetails": { + "description": "The provider specific properties.", + "type": "array", + "items": { + "$ref": "#/definitions/RecoveryPlanProviderSpecificFailoverInput" + } + } + } + }, + "RecoveryPlanProperties": { + "description": "Recovery plan properties.", + "type": "object", + "properties": { + "friendlyName": { + "description": "The friendly name.", + "type": "string" + }, + "primaryFabricId": { + "description": "The primary fabric Id.", + "type": "string" + }, + "primaryFabricFriendlyName": { + "description": "The primary fabric friendly name.", + "type": "string" + }, + "recoveryFabricId": { + "description": "The recovery fabric Id.", + "type": "string" + }, + "recoveryFabricFriendlyName": { + "description": "The recovery fabric friendly name.", + "type": "string" + }, + "failoverDeploymentModel": { + "description": "The failover deployment model.", + "type": "string" + }, + "replicationProviders": { + "description": "The list of replication providers.", + "type": "array", + "items": { + "type": "string" + } + }, + "allowedOperations": { + "description": "The list of allowed operations.", + "type": "array", + "items": { + "type": "string" + } + }, + "lastPlannedFailoverTime": { + "format": "date-time", + "description": "The start time of the last planned failover.", + "type": "string" + }, + "lastUnplannedFailoverTime": { + "format": "date-time", + "description": "The start time of the last unplanned failover.", + "type": "string" + }, + "lastTestFailoverTime": { + "format": "date-time", + "description": "The start time of the last test failover.", + "type": "string" + }, + "currentScenario": { + "$ref": "#/definitions/CurrentScenarioDetails", + "description": "The current scenario details." + }, + "currentScenarioStatus": { + "description": "The recovery plan status.", + "type": "string" + }, + "currentScenarioStatusDescription": { + "description": "The recovery plan status description.", + "type": "string" + }, + "groups": { + "description": "The recovery plan groups.", + "type": "array", + "items": { + "$ref": "#/definitions/RecoveryPlanGroup" + } + }, + "providerSpecificDetails": { + "description": "The provider id and provider specific details.", + "type": "array", + "items": { + "$ref": "#/definitions/RecoveryPlanProviderSpecificDetails" + } + } + } + }, + "RecoveryPlanProtectedItem": { + "description": "Recovery plan protected item.", + "type": "object", + "properties": { + "id": { + "description": "The ARM Id of the recovery plan protected item.", + "type": "string" + }, + "virtualMachineId": { + "description": "The virtual machine Id.", + "type": "string" + } + } + }, + "RecoveryPlanProviderSpecificDetails": { + "description": "Recovery plan provider specific details.", + "type": "object", + "properties": { + "instanceType": { + "description": "Gets the Instance type.", + "type": "string", + "readOnly": true + } + }, + "discriminator": "instanceType" + }, + "RecoveryPlanProviderSpecificFailoverInput": { + "description": "Recovery plan provider specific failover input.", + "type": "object", + "properties": { + "instanceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, + "RecoveryPlanProviderSpecificInput": { + "description": "Recovery plan provider specific input base class.", + "type": "object", + "properties": { + "instanceType": { + "description": "Gets the Instance type.", + "type": "string", + "readOnly": true + } + }, + "discriminator": "instanceType" + }, + "RecoveryPlanScriptActionDetails": { + "description": "Recovery plan script action details.", + "required": [ + "path", + "fabricLocation" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RecoveryPlanActionDetails" + } + ], + "properties": { + "path": { + "description": "The script path.", + "type": "string" + }, + "timeout": { + "description": "The script timeout.", + "type": "string" + }, + "fabricLocation": { + "description": "The fabric location.", + "enum": [ + "Primary", + "Recovery" + ], + "type": "string", + "x-ms-enum": { + "name": "RecoveryPlanActionLocation", + "modelAsString": true + } + } + }, + "x-ms-discriminator-value": "ScriptActionDetails" + }, + "RecoveryPlanShutdownGroupTaskDetails": { + "description": "This class represents the recovery plan shutdown group task details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RecoveryPlanGroupTaskDetails" + } + ], + "properties": {}, + "x-ms-discriminator-value": "RecoveryPlanShutdownGroupTaskDetails" + }, + "RecoveryPlanTestFailoverCleanupInput": { + "description": "Recovery plan test failover cleanup input.", + "required": [ + "properties" + ], + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/RecoveryPlanTestFailoverCleanupInputProperties", + "description": "The recovery plan test failover cleanup input properties." + } + } + }, + "RecoveryPlanTestFailoverCleanupInputProperties": { + "description": "Recovery plan test failover cleanup input properties.", + "type": "object", + "properties": { + "comments": { + "description": "The test failover cleanup comments.", + "maxLength": 1024, + "type": "string" + } + } + }, + "RecoveryPlanTestFailoverInput": { + "description": "Recovery plan test failover input.", + "required": [ + "properties" + ], + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/RecoveryPlanTestFailoverInputProperties", + "description": "The recovery plan test failover input properties." + } + } + }, + "RecoveryPlanTestFailoverInputProperties": { + "description": "Recovery plan test failover input properties.", + "required": [ + "failoverDirection", + "networkType" + ], + "type": "object", + "properties": { + "failoverDirection": { + "description": "The failover direction.", + "enum": [ + "PrimaryToRecovery", + "RecoveryToPrimary" + ], + "type": "string", + "x-ms-enum": { + "name": "PossibleOperationsDirections", + "modelAsString": true + } + }, + "networkType": { + "description": "The network type to be used for test failover.", + "type": "string" + }, + "networkId": { + "description": "The Id of the network to be used for test failover.", + "type": "string" + }, + "providerSpecificDetails": { + "description": "The provider specific properties.", + "maxLength": 1, + "type": "array", + "items": { + "$ref": "#/definitions/RecoveryPlanProviderSpecificFailoverInput" + } + } + } + }, + "RecoveryPlanUnplannedFailoverInput": { + "description": "Recovery plan unplanned failover input.", + "required": [ + "properties" + ], + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/RecoveryPlanUnplannedFailoverInputProperties", + "description": "The recovery plan unplanned failover input properties." + } + } + }, + "RecoveryPlanUnplannedFailoverInputProperties": { + "description": "Recovery plan unplanned failover input properties.", + "required": [ + "failoverDirection", + "sourceSiteOperations" + ], + "type": "object", + "properties": { + "failoverDirection": { + "description": "The failover direction.", + "enum": [ + "PrimaryToRecovery", + "RecoveryToPrimary" + ], + "type": "string", + "x-ms-enum": { + "name": "PossibleOperationsDirections", + "modelAsString": true + } + }, + "sourceSiteOperations": { + "description": "A value indicating whether source site operations are required.", + "enum": [ + "Required", + "NotRequired" + ], + "type": "string", + "x-ms-enum": { + "name": "SourceSiteOperations", + "modelAsString": true + } + }, + "providerSpecificDetails": { + "description": "The provider specific properties.", + "maxLength": 1, + "type": "array", + "items": { + "$ref": "#/definitions/RecoveryPlanProviderSpecificFailoverInput" + } + } + } + }, + "RecoveryPoint": { + "description": "Recovery point.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/RecoveryPointProperties", + "description": "The recovery point properties." + } + } + }, + "RecoveryPointCollection": { + "description": "Collection of recovery point details.", + "type": "object", + "properties": { + "value": { + "description": "The recovery point details.", + "type": "array", + "items": { + "$ref": "#/definitions/RecoveryPoint" + } + }, + "nextLink": { + "description": "The value of next link.", + "type": "string" + } + } + }, + "RecoveryPointProperties": { + "description": "Recovery point properties.", + "type": "object", + "properties": { + "recoveryPointTime": { + "format": "date-time", + "description": "The recovery point time.", + "type": "string" + }, + "recoveryPointType": { + "description": "The recovery point type: ApplicationConsistent, CrashConsistent.", + "type": "string" + }, + "providerSpecificDetails": { + "$ref": "#/definitions/ProviderSpecificRecoveryPointDetails", + "description": "The provider specific details for the recovery point." + } + } + }, + "RecoveryProximityPlacementGroupCustomDetails": { + "description": "Recovery Proximity placement group custom input.", + "type": "object", + "properties": { + "resourceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "resourceType" + }, + "RecoveryResourceGroupCustomDetails": { + "description": "Recovery Resource Group custom input.", + "type": "object", + "properties": { + "resourceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "resourceType" + }, + "RecoveryServicesProvider": { + "description": "Provider details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/RecoveryServicesProviderProperties", + "description": "Provider properties." + } + } + }, + "RecoveryServicesProviderCollection": { + "description": "Collection of providers.", + "type": "object", + "properties": { + "value": { + "description": "The Servers details.", + "type": "array", + "items": { + "$ref": "#/definitions/RecoveryServicesProvider" + } + }, + "nextLink": { + "description": "The value of next link.", + "type": "string" + } + } + }, + "RecoveryServicesProviderProperties": { + "description": "Recovery services provider properties.", + "type": "object", + "properties": { + "fabricType": { + "description": "Type of the site.", + "type": "string" + }, + "friendlyName": { + "description": "Friendly name of the DRA.", + "type": "string" + }, + "providerVersion": { + "description": "The provider version.", + "type": "string" + }, + "serverVersion": { + "description": "The fabric provider.", + "type": "string" + }, + "providerVersionState": { + "description": "DRA version status.", + "type": "string" + }, + "providerVersionExpiryDate": { + "format": "date-time", + "description": "Expiry date of the version.", + "type": "string" + }, + "fabricFriendlyName": { + "description": "The fabric friendly name.", + "type": "string" + }, + "lastHeartBeat": { + "format": "date-time", + "description": "Time when last heartbeat was sent by the DRA.", + "type": "string" + }, + "connectionStatus": { + "description": "A value indicating whether DRA is responsive.", + "type": "string" + }, + "protectedItemCount": { + "format": "int32", + "description": "Number of protected VMs currently managed by the DRA.", + "type": "integer" + }, + "allowedScenarios": { + "description": "The scenarios allowed on this provider.", + "type": "array", + "items": { + "type": "string" + } + }, + "healthErrorDetails": { + "description": "The recovery services provider health error details.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthError" + } + }, + "draIdentifier": { + "description": "The DRA Id.", + "type": "string" + }, + "machineId": { + "description": "The machine Id.", + "type": "string" + }, + "machineName": { + "description": "The machine name.", + "type": "string" + }, + "biosId": { + "description": "The Bios Id.", + "type": "string" + }, + "authenticationIdentityDetails": { + "$ref": "#/definitions/IdentityProviderDetails", + "description": "The authentication identity details." + }, + "resourceAccessIdentityDetails": { + "$ref": "#/definitions/IdentityProviderDetails", + "description": "The resource access identity details." + }, + "dataPlaneAuthenticationIdentityDetails": { + "$ref": "#/definitions/IdentityProviderDetails", + "description": "The data plane authentication identity details." + }, + "providerVersionDetails": { + "$ref": "#/definitions/VersionDetails", + "description": "The provider version details." + } + } + }, + "RecoveryVirtualNetworkCustomDetails": { + "description": "Recovery Virtual network custom input.", + "type": "object", + "properties": { + "resourceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "resourceType" + }, + "RemoveDisksInput": { + "description": "Input for remove disk(s) operation.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/RemoveDisksInputProperties", + "description": "Remove disk input properties." + } + } + }, + "RemoveDisksInputProperties": { + "description": "Remove Disk input properties.", + "type": "object", + "properties": { + "providerSpecificDetails": { + "$ref": "#/definitions/RemoveDisksProviderSpecificInput", + "description": "The ReplicationProviderInput. For HyperVReplicaAzure provider, it will be AzureEnableProtectionInput object. For San provider, it will be SanEnableProtectionInput object. For HyperVReplicaAzure provider, it can be null." + } + } + }, + "RemoveDisksProviderSpecificInput": { + "description": "Remove Disk provider specific input.", + "type": "object", + "properties": { + "instanceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, + "RemoveProtectionContainerMappingInput": { + "description": "Container unpairing input.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/RemoveProtectionContainerMappingInputProperties", + "description": "Configure protection input properties." + } + } + }, + "RemoveProtectionContainerMappingInputProperties": { + "description": "Unpairing input properties.", + "type": "object", + "properties": { + "providerSpecificInput": { + "$ref": "#/definitions/ReplicationProviderContainerUnmappingInput", + "description": "Provider specific input for unpairing." + } + } + }, + "RenewCertificateInput": { + "description": "Certificate renewal input.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/RenewCertificateInputProperties", + "description": "Renew certificate input properties." + } + } + }, + "RenewCertificateInputProperties": { + "description": "Renew Certificate input properties.", + "type": "object", + "properties": { + "renewCertificateType": { + "description": "Renew certificate type.", + "type": "string" + } + } + }, + "ReplicationAgentDetails": { + "description": "Replication agent details.", + "type": "object", + "properties": { + "id": { + "description": "The replication agent Id.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The replication agent name.", + "type": "string", + "readOnly": true + }, + "biosId": { + "description": "The replication agent Bios Id.", + "type": "string", + "readOnly": true + }, + "fabricObjectId": { + "description": "The fabric object Id.", + "type": "string", + "readOnly": true + }, + "fqdn": { + "description": "The replication agent Fqdn.", + "type": "string", + "readOnly": true + }, + "version": { + "description": "The version.", + "type": "string", + "readOnly": true + }, + "lastHeartbeatUtc": { + "format": "date-time", + "description": "The last heartbeat received from the replication agent.", + "type": "string", + "readOnly": true + }, + "health": { + "description": "The health of the replication agent.", + "enum": [ + "None", + "Normal", + "Warning", + "Critical" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProtectionHealth", + "modelAsString": true + } + }, + "healthErrors": { + "description": "The health errors.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthError" + }, + "readOnly": true + } + } + }, + "ReplicationEligibilityResults": { + "description": "Replication eligibility results response model.", + "type": "object", + "properties": { + "name": { + "description": "Gets the name of this object.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Gets the object type.", + "type": "string", + "readOnly": true + }, + "id": { + "description": "Gets Unique ARM identifier for this object.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/ReplicationEligibilityResultsProperties", + "description": "Gets properties model for replication eligibility results API.", + "readOnly": true + } + } + }, + "ReplicationEligibilityResultsCollection": { + "description": "Replication eligibility results collection response model.", + "type": "object", + "properties": { + "value": { + "description": "The replication eligibility results details.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/ReplicationEligibilityResults" + } + } + } + }, + "ReplicationEligibilityResultsErrorInfo": { + "description": "Error model that can be exposed to the user.", + "type": "object", + "properties": { + "code": { + "description": "The error code.", + "type": "string" + }, + "message": { + "description": "The error message.", + "type": "string" + }, + "possibleCauses": { + "description": "The possible causes.", + "type": "string" + }, + "recommendedAction": { + "description": "The recommended action.", + "type": "string" + }, + "status": { + "description": "The error status.", + "readOnly": true, + "type": "string" + } + } + }, + "ReplicationEligibilityResultsProperties": { + "description": "Properties model for replication eligibility results API.", + "type": "object", + "properties": { + "clientRequestId": { + "description": "The client request Id.", + "readOnly": true, + "type": "string" + }, + "errors": { + "description": "The error details.", + "type": "array", + "uniqueItems": false, + "items": { + "$ref": "#/definitions/ReplicationEligibilityResultsErrorInfo" + } + } + } + }, + "ReplicationGroupDetails": { + "description": "Replication group details. This will be used in case of San.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ConfigurationSettings" + } + ], + "properties": {}, + "x-ms-discriminator-value": "ReplicationGroupDetails" + }, + "ReplicationProtectedItem": { + "description": "Replication protected item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ReplicationProtectedItemProperties", + "description": "The custom data." + } + } + }, + "ReplicationProtectedItemCollection": { + "description": "Replication protected item collection.", + "type": "object", + "properties": { + "value": { + "description": "The Replication protected item details.", + "type": "array", + "items": { + "$ref": "#/definitions/ReplicationProtectedItem" + } + }, + "nextLink": { + "description": "The value of next link.", + "type": "string" + } + } + }, + "ReplicationProtectedItemProperties": { + "description": "Replication protected item custom data details.", + "type": "object", + "properties": { + "friendlyName": { + "description": "The name.", + "type": "string" + }, + "protectedItemType": { + "description": "The type of protected item type.", + "type": "string" + }, + "protectableItemId": { + "description": "The protected item ARM Id.", + "type": "string" + }, + "recoveryServicesProviderId": { + "description": "The recovery provider ARM Id.", + "type": "string" + }, + "primaryFabricFriendlyName": { + "description": "The friendly name of the primary fabric.", + "type": "string" + }, + "primaryFabricProvider": { + "description": "The fabric provider of the primary fabric.", + "type": "string" + }, + "recoveryFabricFriendlyName": { + "description": "The friendly name of recovery fabric.", + "type": "string" + }, + "recoveryFabricId": { + "description": "The Arm Id of recovery fabric.", + "type": "string" + }, + "primaryProtectionContainerFriendlyName": { + "description": "The name of primary protection container friendly name.", + "type": "string" + }, + "recoveryProtectionContainerFriendlyName": { + "description": "The name of recovery container friendly name.", + "type": "string" + }, + "protectionState": { + "description": "The protection status.", + "type": "string" + }, + "protectionStateDescription": { + "description": "The protection state description.", + "type": "string" + }, + "activeLocation": { + "description": "The Current active location of the PE.", + "type": "string" + }, + "testFailoverState": { + "description": "The Test failover state.", + "type": "string" + }, + "testFailoverStateDescription": { + "description": "The Test failover state description.", + "type": "string" + }, + "allowedOperations": { + "description": "The allowed operations on the Replication protected item.", + "type": "array", + "items": { + "type": "string" + } + }, + "replicationHealth": { + "description": "The consolidated protection health for the VM taking any issues with SRS as well as all the replication units associated with the VM's replication group into account. This is a string representation of the ProtectionHealth enumeration.", + "type": "string" + }, + "failoverHealth": { + "description": "The consolidated failover health for the VM.", + "type": "string" + }, + "healthErrors": { + "description": "List of health errors.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthError" + } + }, + "policyId": { + "description": "The ID of Policy governing this PE.", + "type": "string" + }, + "policyFriendlyName": { + "description": "The name of Policy governing this PE.", + "type": "string" + }, + "lastSuccessfulFailoverTime": { + "format": "date-time", + "description": "The Last successful failover time.", + "type": "string" + }, + "lastSuccessfulTestFailoverTime": { + "format": "date-time", + "description": "The Last successful test failover time.", + "type": "string" + }, + "currentScenario": { + "$ref": "#/definitions/CurrentScenarioDetails", + "description": "The current scenario." + }, + "failoverRecoveryPointId": { + "description": "The recovery point ARM Id to which the Vm was failed over.", + "type": "string" + }, + "providerSpecificDetails": { + "$ref": "#/definitions/ReplicationProviderSpecificSettings", + "description": "The Replication provider custom settings." + }, + "recoveryContainerId": { + "description": "The recovery container Id.", + "type": "string" + }, + "eventCorrelationId": { + "description": "The correlation Id for events associated with this protected item.", + "type": "string" + } + } + }, + "ReplicationProtectionIntent": { + "description": "Replication protection intent.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ReplicationProtectionIntentProperties", + "description": "The custom data." + } + } + }, + "ReplicationProtectionIntentCollection": { + "description": "Replication protection intent objects collection.", + "type": "object", + "properties": { + "value": { + "description": "The Replication protection intent details.", + "type": "array", + "items": { + "$ref": "#/definitions/ReplicationProtectionIntent" + } + }, + "nextLink": { + "description": "The value of next link.", + "type": "string" + } + } + }, + "ReplicationProtectionIntentProperties": { + "description": "Replication protection intent custom data details.", + "type": "object", + "properties": { + "friendlyName": { + "description": "The name.", + "type": "string" + }, + "jobId": { + "description": "The job Id.", + "type": "string", + "readOnly": true + }, + "jobState": { + "description": "The job state.", + "type": "string", + "readOnly": true + }, + "isActive": { + "description": "A value indicating whether the intent object is active.", + "type": "boolean", + "readOnly": true + }, + "creationTimeUTC": { + "description": "The creation time in UTC.", + "type": "string", + "readOnly": true + }, + "providerSpecificDetails": { + "$ref": "#/definitions/ReplicationProtectionIntentProviderSpecificSettings", + "description": "The Replication provider custom settings." + } + } + }, + "ReplicationProtectionIntentProviderSpecificSettings": { + "description": "Replication provider specific settings.", + "type": "object", + "properties": { + "instanceType": { + "description": "Gets the Instance type.", + "type": "string", + "readOnly": true + } + }, + "discriminator": "instanceType" + }, + "ReplicationProviderContainerUnmappingInput": { + "description": "Provider specific input for unpairing operations.", + "type": "object", + "properties": { + "instanceType": { + "description": "The class type.", + "type": "string" + } + } + }, + "ReplicationProviderSpecificContainerCreationInput": { + "description": "Provider specific input for container creation operation.", + "type": "object", + "properties": { + "instanceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, + "ReplicationProviderSpecificContainerMappingInput": { + "description": "Provider specific input for pairing operations.", + "type": "object", + "properties": { + "instanceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, + "ReplicationProviderSpecificSettings": { + "description": "Replication provider specific settings.", + "type": "object", + "properties": { + "instanceType": { + "description": "Gets the Instance type.", + "type": "string", + "readOnly": true + } + }, + "discriminator": "instanceType" + }, + "ReplicationProviderSpecificUpdateContainerMappingInput": { + "description": "Provider specific input for update pairing operations.", + "type": "object", + "properties": { + "instanceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, + "ReprotectAgentDetails": { + "description": "Reprotect agent details.", + "type": "object", + "properties": { + "id": { + "description": "The reprotect agent Id.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The reprotect agent name.", + "type": "string", + "readOnly": true + }, + "biosId": { + "description": "The reprotect agent Bios Id.", + "type": "string", + "readOnly": true + }, + "fabricObjectId": { + "description": "The fabric object Id.", + "type": "string", + "readOnly": true + }, + "fqdn": { + "description": "The reprotect agent Fqdn.", + "type": "string", + "readOnly": true + }, + "version": { + "description": "The version.", + "type": "string", + "readOnly": true + }, + "lastHeartbeatUtc": { + "format": "date-time", + "description": "The last heartbeat received from the reprotect agent.", + "type": "string", + "readOnly": true + }, + "health": { + "description": "The health of the reprotect agent.", + "enum": [ + "None", + "Normal", + "Warning", + "Critical" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProtectionHealth", + "modelAsString": true + } + }, + "healthErrors": { + "description": "The health errors.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthError" + }, + "readOnly": true + } + } + }, + "ResolveHealthError": { + "description": "Resolve health errors input properties.", + "type": "object", + "properties": { + "healthErrorId": { + "description": "Health error id.", + "type": "string" + } + } + }, + "ResolveHealthInput": { + "description": "Resolve health input.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/ResolveHealthInputProperties", + "description": "Disable resolve health input properties." + } + } + }, + "ResolveHealthInputProperties": { + "description": "Resolve health input properties.", + "type": "object", + "properties": { + "healthErrors": { + "description": "Health errors.", + "type": "array", + "items": { + "$ref": "#/definitions/ResolveHealthError" + } + } + } + }, + "Resource": { + "description": "Azure resource.", + "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 + }, + "location": { + "description": "Resource Location", + "type": "string" + } + }, + "x-ms-azure-resource": true + }, + "ResourceHealthSummary": { + "description": "Base class to define the health summary of the resources contained under an Arm resource.", + "type": "object", + "properties": { + "resourceCount": { + "format": "int32", + "description": "The count of total resources under the container.", + "type": "integer" + }, + "issues": { + "description": "The list of summary of health errors across the resources under the container.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthErrorSummary" + } + }, + "categorizedResourceCounts": { + "description": "The categorized resource counts.", + "type": "object", + "additionalProperties": { + "format": "int32", + "type": "integer" + } + } + } + }, + "ResumeJobParams": { + "description": "Resume job params.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/ResumeJobParamsProperties", + "description": "Resume job properties." + } + } + }, + "ResumeJobParamsProperties": { + "description": "Resume job properties.", + "type": "object", + "properties": { + "comments": { + "description": "Resume job comments.", + "type": "string" + } + } + }, + "ResyncInput": { + "description": "Resync input.", + "required": [ + "properties" + ], + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/ResyncInputProperties", + "description": "Resync input properties." + } + } + }, + "ResyncInputProperties": { + "description": "Resync input properties.", + "required": [ + "providerSpecificDetails" + ], + "type": "object", + "properties": { + "providerSpecificDetails": { + "$ref": "#/definitions/ResyncProviderSpecificInput", + "description": "The provider specific details." + } + } + }, + "ResyncProviderSpecificInput": { + "description": "Resync provider specific input.", + "required": [ + "instanceType" + ], + "type": "object", + "properties": { + "instanceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, + "RetentionVolume": { + "description": "The retention details of the MT.", + "type": "object", + "properties": { + "volumeName": { + "description": "The volume name.", + "type": "string" + }, + "capacityInBytes": { + "format": "int64", + "description": "The volume capacity.", + "type": "integer" + }, + "freeSpaceInBytes": { + "format": "int64", + "description": "The free space available in this volume.", + "type": "integer" + }, + "thresholdPercentage": { + "format": "int32", + "description": "The threshold percentage.", + "type": "integer" + } + } + }, + "ReverseReplicationInput": { + "description": "Reverse replication input.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/ReverseReplicationInputProperties", + "description": "Reverse replication properties." + } + } + }, + "ReverseReplicationInputProperties": { + "description": "Reverse replication input properties.", + "type": "object", + "properties": { + "failoverDirection": { + "description": "Failover direction.", + "type": "string" + }, + "providerSpecificDetails": { + "$ref": "#/definitions/ReverseReplicationProviderSpecificInput", + "description": "Provider specific reverse replication input." + } + } + }, + "ReverseReplicationProviderSpecificInput": { + "description": "Provider specific reverse replication input.", + "type": "object", + "properties": { + "instanceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, + "RoleAssignment": { + "description": "Azure role assignment details.", + "type": "object", + "properties": { + "id": { + "description": "The ARM Id of the role assignment.", + "type": "string" + }, + "name": { + "description": "The name of the role assignment.", + "type": "string" + }, + "scope": { + "description": "Role assignment scope.", + "type": "string" + }, + "principalId": { + "description": "Principal Id.", + "type": "string" + }, + "roleDefinitionId": { + "description": "Role definition id.", + "type": "string" + } + } + }, + "RunAsAccount": { + "description": "CS Accounts Details.", + "type": "object", + "properties": { + "accountId": { + "description": "The CS RunAs account Id.", + "type": "string" + }, + "accountName": { + "description": "The CS RunAs account name.", + "type": "string" + } + } + }, + "ScriptActionTaskDetails": { + "description": "This class represents the script action task details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TaskTypeDetails" + } + ], + "properties": { + "name": { + "description": "The name.", + "type": "string" + }, + "path": { + "description": "The path.", + "type": "string" + }, + "output": { + "description": "The output.", + "type": "string" + }, + "isPrimarySideScript": { + "description": "A value indicating whether it is a primary side script or not.", + "type": "boolean" + } + }, + "x-ms-discriminator-value": "ScriptActionTaskDetails" + }, + "ServiceError": { + "description": "ASR error model.", + "type": "object", + "properties": { + "code": { + "description": "Error code.", + "type": "string" + }, + "message": { + "description": "Error message.", + "type": "string" + }, + "possibleCauses": { + "description": "Possible causes of error.", + "type": "string" + }, + "recommendedAction": { + "description": "Recommended action to resolve error.", + "type": "string" + }, + "activityId": { + "description": "Activity Id.", + "type": "string" + } + } + }, + "IPConfigDetails": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "isPrimary": { + "type": "boolean" + }, + "subnetName": { + "type": "string" + }, + "staticIPAddress": { + "type": "string" + }, + "ipAddressType": { + "type": "string" + }, + "isSeletedForFailover": { + "type": "boolean" + }, + "recoverySubnetName": { + "type": "string" + }, + "recoveryStaticIPAddress": { + "type": "string" + }, + "recoveryIPAddressType": { + "type": "string" + }, + "recoveryPublicIPAddressId": { + "type": "string" + }, + "recoveryLBBackendAddressPoolIds": { + "type": "array", + "items": { + "type": "string" + } + }, + "tfoSubnetName": { + "type": "string" + }, + "tfoStaticIPAddress": { + "type": "string" + }, + "tfoPublicIPAddressId": { + "type": "string" + }, + "tfoLBBackendAddressPoolIds": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "IPConfigInputDetails": { + "type": "object", + "properties": { + "ipConfigName": { + "type": "string" + }, + "isPrimary": { + "type": "boolean" + }, + "isSeletedForFailover": { + "type": "boolean" + }, + "recoverySubnetName": { + "type": "string" + }, + "recoveryStaticIPAddress": { + "type": "string" + }, + "recoveryPublicIPAddressId": { + "type": "string" + }, + "recoveryLBBackendAddressPoolIds": { + "type": "array", + "items": { + "type": "string" + } + }, + "tfoSubnetName": { + "type": "string" + }, + "tfoStaticIPAddress": { + "type": "string" + }, + "tfoPublicIPAddressId": { + "type": "string" + }, + "tfoLBBackendAddressPoolIds": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "StorageAccountCustomDetails": { + "description": "Storage account custom input.", + "type": "object", + "properties": { + "resourceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "resourceType" + }, + "StorageClassification": { + "description": "Storage object definition.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/StorageClassificationProperties", + "description": "Properties of the storage object." + } + } + }, + "StorageClassificationCollection": { + "description": "Collection of storage details.", + "type": "object", + "properties": { + "value": { + "description": "The storage details.", + "type": "array", + "items": { + "$ref": "#/definitions/StorageClassification" + } + }, + "nextLink": { + "description": "The value of next link.", + "type": "string" + } + } + }, + "StorageClassificationMapping": { + "description": "Storage mapping object.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/StorageClassificationMappingProperties", + "description": "Properties of the storage mapping object." + } + } + }, + "StorageClassificationMappingCollection": { + "description": "Collection of storage mapping details.", + "type": "object", + "properties": { + "value": { + "description": "The storage details.", + "type": "array", + "items": { + "$ref": "#/definitions/StorageClassificationMapping" + } + }, + "nextLink": { + "description": "The value of next link.", + "type": "string" + } + } + }, + "StorageClassificationMappingInput": { + "description": "Storage mapping input.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/StorageMappingInputProperties", + "description": "Storage mapping input properties." + } + } + }, + "StorageClassificationMappingProperties": { + "description": "Storage mapping properties.", + "type": "object", + "properties": { + "targetStorageClassificationId": { + "description": "Target storage object Id.", + "type": "string" + } + } + }, + "StorageClassificationProperties": { + "description": "Storage object properties.", + "type": "object", + "properties": { + "friendlyName": { + "description": "Friendly name of the Storage classification.", + "type": "string" + } + } + }, + "StorageMappingInputProperties": { + "description": "Storage mapping input properties.", + "type": "object", + "properties": { + "targetStorageClassificationId": { + "description": "The ID of the storage object.", + "type": "string" + } + } + }, + "Subnet": { + "description": "Subnets of the network.", + "type": "object", + "properties": { + "name": { + "description": "The subnet name.", + "type": "string" + }, + "friendlyName": { + "description": "The subnet friendly name.", + "type": "string" + }, + "addressList": { + "description": "The list of addresses for the subnet.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "SupportedOperatingSystems": { + "description": "Supported operating systems.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/SupportedOSProperties", + "description": "The supported operating systems properties." + } + } + }, + "SupportedOSDetails": { + "description": "Supported operating system details.", + "type": "object", + "properties": { + "osName": { + "description": "The name.", + "type": "string" + }, + "osType": { + "description": "The type.", + "type": "string" + }, + "osVersions": { + "description": "The list of version for operating system.", + "type": "array", + "items": { + "$ref": "#/definitions/OSVersionWrapper" + } + } + } + }, + "SupportedOSProperties": { + "description": "Supported operating systems properties.", + "type": "object", + "properties": { + "supportedOsList": { + "description": "The supported operating systems property list.", + "type": "array", + "items": { + "$ref": "#/definitions/SupportedOSProperty" + } + } + } + }, + "SupportedOSProperty": { + "description": "Supported operating systems property.", + "type": "object", + "properties": { + "instanceType": { + "description": "The replication provider type.", + "type": "string" + }, + "supportedOs": { + "description": "The list of supported operating systems.", + "type": "array", + "items": { + "$ref": "#/definitions/SupportedOSDetails" + } + } + } + }, + "SwitchProtectionInput": { + "description": "Switch protection input.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/SwitchProtectionInputProperties", + "description": "Switch protection properties." + } + } + }, + "SwitchProtectionInputProperties": { + "description": "Switch protection input properties.", + "type": "object", + "properties": { + "replicationProtectedItemName": { + "description": "The unique replication protected item name.", + "type": "string" + }, + "providerSpecificDetails": { + "$ref": "#/definitions/SwitchProtectionProviderSpecificInput", + "description": "Provider specific switch protection input." + } + } + }, + "SwitchProtectionJobDetails": { + "description": "This class represents details for switch protection job.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/JobDetails" + } + ], + "properties": { + "newReplicationProtectedItemId": { + "description": "ARM Id of the new replication protected item.", + "type": "string" + } + }, + "x-ms-discriminator-value": "SwitchProtectionJobDetails" + }, + "SwitchProtectionProviderSpecificInput": { + "description": "Provider specific switch protection input.", + "type": "object", + "properties": { + "instanceType": { + "description": "Gets the Instance type.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, + "TargetComputeSize": { + "description": "Represents applicable recovery vm sizes.", + "type": "object", + "properties": { + "id": { + "description": "The Id.", + "type": "string" + }, + "name": { + "description": "The name.", + "type": "string" + }, + "type": { + "description": "The Type of the object.", + "type": "string" + }, + "properties": { + "$ref": "#/definitions/TargetComputeSizeProperties", + "description": "The custom data." + } + } + }, + "TargetComputeSizeCollection": { + "description": "Target compute size collection.", + "type": "object", + "properties": { + "value": { + "description": "The list of target compute sizes.", + "type": "array", + "items": { + "$ref": "#/definitions/TargetComputeSize" + } + }, + "nextLink": { + "description": "The value of next link.", + "type": "string" + } + } + }, + "TargetComputeSizeProperties": { + "description": "Represents applicable recovery vm sizes properties.", + "type": "object", + "properties": { + "name": { + "description": "Target compute size name.", + "type": "string" + }, + "friendlyName": { + "description": "Target compute size display name.", + "type": "string" + }, + "cpuCoresCount": { + "format": "int32", + "description": "The maximum cpu cores count supported by target compute size.", + "type": "integer" + }, + "vCPUsAvailable": { + "format": "int32", + "description": "The Available vCPUs supported by target compute size.", + "type": "integer", + "readOnly": true + }, + "memoryInGB": { + "format": "double", + "description": "The maximum memory in GB supported by target compute size.", + "type": "number" + }, + "maxDataDiskCount": { + "format": "int32", + "description": "The maximum data disks count supported by target compute size.", + "type": "integer" + }, + "maxNicsCount": { + "format": "int32", + "description": "The maximum Nics count supported by target compute size.", + "type": "integer" + }, + "errors": { + "description": "The reasons why the target compute size is not applicable for the protected item.", + "type": "array", + "items": { + "$ref": "#/definitions/ComputeSizeErrorDetails" + } + }, + "highIopsSupported": { + "description": "The value indicating whether the target compute size supports high Iops.", + "type": "string" + }, + "hyperVGenerations": { + "description": "The supported HyperV Generations.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "TaskTypeDetails": { + "description": "Task details based on specific task type.", + "type": "object", + "properties": { + "instanceType": { + "description": "The type of task details.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, + "TestFailoverCleanupInput": { + "description": "Input definition for test failover cleanup.", + "required": [ + "properties" + ], + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/TestFailoverCleanupInputProperties", + "description": "Test failover cleanup input properties." + } + } + }, + "TestFailoverCleanupInputProperties": { + "description": "Input definition for test failover cleanup input properties.", + "type": "object", + "properties": { + "comments": { + "description": "Test failover cleanup comments.", + "maxLength": 1024, + "type": "string" + } + } + }, + "TestFailoverInput": { + "description": "Input definition for test failover.", + "required": [ + "properties" + ], + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/TestFailoverInputProperties", + "description": "Test failover input properties." + } + } + }, + "TestFailoverInputProperties": { + "description": "Input definition for test failover input properties.", + "type": "object", + "properties": { + "failoverDirection": { + "description": "Test failover direction.", + "type": "string" + }, + "networkType": { + "description": "Network type to be used for test failover.", + "type": "string" + }, + "networkId": { + "description": "The id of the network to be used for test failover.", + "type": "string" + }, + "providerSpecificDetails": { + "$ref": "#/definitions/TestFailoverProviderSpecificInput", + "description": "Provider specific settings." + } + } + }, + "TestFailoverJobDetails": { + "description": "This class represents the details for a test failover job.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/JobDetails" + } + ], + "properties": { + "testFailoverStatus": { + "description": "The test failover status.", + "type": "string" + }, + "comments": { + "description": "The test failover comments.", + "type": "string" + }, + "networkName": { + "description": "The test network name.", + "type": "string" + }, + "networkFriendlyName": { + "description": "The test network friendly name.", + "type": "string" + }, + "networkType": { + "description": "The test network type (see TestFailoverInput enum for possible values).", + "type": "string" + }, + "protectedItemDetails": { + "description": "The test VM details.", + "type": "array", + "items": { + "$ref": "#/definitions/FailoverReplicationProtectedItemDetails" + } + } + }, + "x-ms-discriminator-value": "TestFailoverJobDetails" + }, + "TestFailoverProviderSpecificInput": { + "description": "Provider specific test failover input.", + "type": "object", + "properties": { + "instanceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, + "TestMigrateCleanupInput": { + "description": "Input for test migrate cleanup.", + "required": [ + "properties" + ], + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/TestMigrateCleanupInputProperties", + "description": "Test migrate cleanup input properties." + } + } + }, + "TestMigrateCleanupInputProperties": { + "description": "Test migrate cleanup input properties.", + "type": "object", + "properties": { + "comments": { + "description": "Test migrate cleanup comments.", + "maxLength": 1024, + "type": "string" + } + } + }, + "TestMigrateInput": { + "description": "Input for test migrate.", + "required": [ + "properties" + ], + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/TestMigrateInputProperties", + "description": "Test migrate input properties." + } + } + }, + "TestMigrateInputProperties": { + "description": "Test migrate input properties.", + "required": [ + "providerSpecificDetails" + ], + "type": "object", + "properties": { + "providerSpecificDetails": { + "$ref": "#/definitions/TestMigrateProviderSpecificInput", + "description": "The provider specific details." + } + } + }, + "TestMigrateProviderSpecificInput": { + "description": "Test migrate provider specific input.", + "required": [ + "instanceType" + ], + "type": "object", + "properties": { + "instanceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, + "UnplannedFailoverInput": { + "description": "Input definition for unplanned failover.", + "required": [ + "properties" + ], + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/UnplannedFailoverInputProperties", + "description": "Unplanned failover input properties." + } + } + }, + "UnplannedFailoverInputProperties": { + "description": "Input definition for unplanned failover input properties.", + "type": "object", + "properties": { + "failoverDirection": { + "description": "Failover direction.", + "type": "string" + }, + "sourceSiteOperations": { + "description": "Source site operations status.", + "type": "string" + }, + "providerSpecificDetails": { + "$ref": "#/definitions/UnplannedFailoverProviderSpecificInput", + "description": "Provider specific settings." + } + } + }, + "UnplannedFailoverProviderSpecificInput": { + "description": "Provider specific unplanned failover input.", + "type": "object", + "properties": { + "instanceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, + "UpdateMigrationItemInput": { + "description": "Update migration item input.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/UpdateMigrationItemInputProperties", + "description": "Update migration item input properties." + } + } + }, + "UpdateMigrationItemInputProperties": { + "description": "Update migration item input properties.", + "required": [ + "providerSpecificDetails" + ], + "type": "object", + "properties": { + "providerSpecificDetails": { + "$ref": "#/definitions/UpdateMigrationItemProviderSpecificInput", + "description": "The provider specific input to update migration item." + } + } + }, + "UpdateMigrationItemProviderSpecificInput": { + "description": "Update migration item provider specific input.", + "type": "object", + "properties": { + "instanceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, + "UpdateMobilityServiceRequest": { + "description": "Request to update the mobility service on a protected item.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/UpdateMobilityServiceRequestProperties", + "description": "The properties of the update mobility service request." + } + } + }, + "UpdateMobilityServiceRequestProperties": { + "description": "The properties of an update mobility service request.", + "type": "object", + "properties": { + "runAsAccountId": { + "description": "The CS run as account Id.", + "type": "string" + } + } + }, + "UpdateNetworkMappingInput": { + "description": "Update network mapping input.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/UpdateNetworkMappingInputProperties", + "description": "The input properties needed to update network mapping." + } + } + }, + "UpdateNetworkMappingInputProperties": { + "description": "Common input details for network mapping operation.", + "type": "object", + "properties": { + "recoveryFabricName": { + "description": "Recovery fabric name.", + "type": "string" + }, + "recoveryNetworkId": { + "description": "Recovery network Id.", + "type": "string" + }, + "fabricSpecificDetails": { + "$ref": "#/definitions/FabricSpecificUpdateNetworkMappingInput", + "description": "Fabrics specific input network Id." + } + } + }, + "UpdatePolicyInput": { + "description": "Update policy input.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/UpdatePolicyInputProperties", + "description": "The ReplicationProviderSettings." + } + } + }, + "UpdatePolicyInputProperties": { + "description": "Policy update properties.", + "type": "object", + "properties": { + "replicationProviderSettings": { + "$ref": "#/definitions/PolicyProviderSpecificInput", + "description": "The ReplicationProviderSettings." + } + } + }, + "UpdateProtectionContainerMappingInput": { + "description": "Container pairing update input.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/UpdateProtectionContainerMappingInputProperties", + "description": "Update protection container mapping input properties." + } + } + }, + "UpdateProtectionContainerMappingInputProperties": { + "description": "Container pairing update input.", + "type": "object", + "properties": { + "providerSpecificInput": { + "$ref": "#/definitions/ReplicationProviderSpecificUpdateContainerMappingInput", + "description": "Provider specific input for updating protection container mapping." + } + } + }, + "UpdateRecoveryPlanInput": { + "description": "Update recovery plan input class.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/UpdateRecoveryPlanInputProperties", + "description": "Recovery plan update properties." + } + } + }, + "UpdateRecoveryPlanInputProperties": { + "description": "Recovery plan update properties.", + "type": "object", + "properties": { + "groups": { + "description": "The recovery plan groups.", + "type": "array", + "items": { + "$ref": "#/definitions/RecoveryPlanGroup" + } + } + } + }, + "UpdateReplicationProtectedItemInput": { + "description": "Update replication protected item input.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/UpdateReplicationProtectedItemInputProperties", + "description": "Update replication protected item properties." + } + } + }, + "UpdateReplicationProtectedItemInputProperties": { + "description": "Update protected item input properties.", + "type": "object", + "properties": { + "recoveryAzureVMName": { + "description": "Target Azure VM name given by the user.", + "type": "string" + }, + "recoveryAzureVMSize": { + "description": "Target Azure VM size.", + "type": "string" + }, + "selectedRecoveryAzureNetworkId": { + "description": "Target Azure Network Id.", + "type": "string" + }, + "selectedTfoAzureNetworkId": { + "description": "The Azure Network Id for test failover.", + "type": "string" + }, + "selectedSourceNicId": { + "description": "The selected source nic Id which will be used as the primary nic during failover.", + "type": "string" + }, + "enableRdpOnTargetOption": { + "description": "The selected option to enable RDP\\SSH on target vm after failover. String value of SrsDataContract.EnableRDPOnTargetOption enum.", + "type": "string" + }, + "vmNics": { + "description": "The list of VM nic details.", + "type": "array", + "items": { + "$ref": "#/definitions/VMNicInputDetails" + } + }, + "licenseType": { + "description": "License type.", + "enum": [ + "NotSpecified", + "NoLicenseType", + "WindowsServer" + ], + "type": "string", + "x-ms-enum": { + "name": "LicenseType", + "modelAsString": true + } + }, + "recoveryAvailabilitySetId": { + "description": "The target availability set Id.", + "type": "string" + }, + "providerSpecificDetails": { + "$ref": "#/definitions/UpdateReplicationProtectedItemProviderInput", + "description": "The provider specific input to update replication protected item." + } + } + }, + "UpdateReplicationProtectedItemProviderInput": { + "description": "Update replication protected item provider specific input.", + "type": "object", + "properties": { + "instanceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, + "UpdateVCenterRequest": { + "description": "Input required to update vCenter.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/UpdateVCenterRequestProperties", + "description": "The update VCenter Request Properties." + } + } + }, + "UpdateVCenterRequestProperties": { + "description": "The properties of an update vCenter request.", + "type": "object", + "properties": { + "friendlyName": { + "description": "The friendly name of the vCenter.", + "type": "string" + }, + "ipAddress": { + "description": "The IP address of the vCenter to be discovered.", + "type": "string" + }, + "processServerId": { + "description": "The process server Id from where the update can be orchestrated.", + "type": "string" + }, + "port": { + "description": "The port number for discovery.", + "type": "string" + }, + "runAsAccountId": { + "description": "The CS account Id which has privileges to update the vCenter.", + "type": "string" + } + } + }, + "VaultHealthDetails": { + "description": "Vault health details definition.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/VaultHealthProperties", + "description": "The vault health related data." + } + } + }, + "VaultHealthProperties": { + "description": "class to define the health summary of the Vault.", + "type": "object", + "properties": { + "vaultErrors": { + "description": "The list of errors on the vault.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthError" + } + }, + "protectedItemsHealth": { + "$ref": "#/definitions/ResourceHealthSummary", + "description": "The list of the health detail of the protected items in the vault." + }, + "fabricsHealth": { + "$ref": "#/definitions/ResourceHealthSummary", + "description": "The list of the health detail of the fabrics in the vault." + }, + "containersHealth": { + "$ref": "#/definitions/ResourceHealthSummary", + "description": "The list of the health detail of the containers in the vault." + } + } + }, + "VaultSetting": { + "description": "Vault setting.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/VaultSettingProperties", + "description": "The vault setting properties." + } + } + }, + "VaultSettingCollection": { + "description": "Vault setting collection.", + "type": "object", + "properties": { + "value": { + "description": "The list of vault setting.", + "type": "array", + "items": { + "$ref": "#/definitions/VaultSetting" + } + }, + "nextLink": { + "description": "The value of next link.", + "type": "string" + } + } + }, + "VaultSettingCreationInput": { + "description": "Input to create vault setting.", + "required": [ + "properties" + ], + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/VaultSettingCreationInputProperties", + "description": "Vault setting creation input properties." + } + } + }, + "VaultSettingCreationInputProperties": { + "description": "Input to create vault setting.", + "required": [ + "migrationSolutionId" + ], + "type": "object", + "properties": { + "migrationSolutionId": { + "description": "The migration solution Id.", + "type": "string" + } + } + }, + "VaultSettingProperties": { + "description": "Vault setting properties.", + "type": "object", + "properties": { + "migrationSolutionId": { + "description": "The migration solution ARM Id.", + "type": "string" + } + } + }, + "VCenter": { + "description": "vCenter definition.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/VCenterProperties", + "description": "VCenter related data." + } + } + }, + "VCenterCollection": { + "description": "Collection of vCenter details.", + "type": "object", + "properties": { + "value": { + "description": "The vCenter details.", + "type": "array", + "items": { + "$ref": "#/definitions/VCenter" + } + }, + "nextLink": { + "description": "The value of next link.", + "type": "string" + } + } + }, + "VCenterProperties": { + "description": "vCenter properties.", + "type": "object", + "properties": { + "friendlyName": { + "description": "Friendly name of the vCenter.", + "type": "string" + }, + "internalId": { + "description": "VCenter internal ID.", + "type": "string" + }, + "lastHeartbeat": { + "format": "date-time", + "description": "The time when the last heartbeat was received by vCenter.", + "type": "string" + }, + "discoveryStatus": { + "description": "The VCenter discovery status.", + "type": "string" + }, + "processServerId": { + "description": "The process server Id.", + "type": "string" + }, + "ipAddress": { + "description": "The IP address of the vCenter.", + "type": "string" + }, + "infrastructureId": { + "description": "The infrastructure Id of vCenter.", + "type": "string" + }, + "port": { + "description": "The port number for discovery.", + "type": "string" + }, + "runAsAccountId": { + "description": "The account Id which has privileges to discover the vCenter.", + "type": "string" + }, + "fabricArmResourceName": { + "description": "The ARM resource name of the fabric containing this VCenter.", + "type": "string" + }, + "healthErrors": { + "description": "The health errors for this VCenter.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthError" + } + } + } + }, + "VersionDetails": { + "description": "Version related details.", + "type": "object", + "properties": { + "version": { + "description": "The agent version.", + "type": "string" + }, + "expiryDate": { + "format": "date-time", + "description": "Version expiry date.", + "type": "string" + }, + "status": { + "description": "A value indicating whether security update required.", + "enum": [ + "Supported", + "NotSupported", + "Deprecated", + "UpdateRequired", + "SecurityUpdateRequired" + ], + "type": "string", + "x-ms-enum": { + "name": "AgentVersionStatus", + "modelAsString": true + } + } + } + }, + "VirtualMachineTaskDetails": { + "description": "This class represents the virtual machine task details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/JobTaskDetails" + } + ], + "properties": { + "skippedReason": { + "description": "The skipped reason.", + "type": "string" + }, + "skippedReasonString": { + "description": "The skipped reason string.", + "type": "string" + } + }, + "x-ms-discriminator-value": "VirtualMachineTaskDetails" + }, + "VmmDetails": { + "description": "VMM fabric specific details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/FabricSpecificDetails" + } + ], + "properties": {}, + "x-ms-discriminator-value": "VMM" + }, + "VmmToAzureCreateNetworkMappingInput": { + "description": "Create network mappings input properties/behavior specific to Vmm to Azure Network mapping.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/FabricSpecificCreateNetworkMappingInput" + } + ], + "properties": {}, + "x-ms-discriminator-value": "VmmToAzure" + }, + "VmmToAzureNetworkMappingSettings": { + "description": "E2A Network Mapping fabric specific settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/NetworkMappingFabricSpecificSettings" + } + ], + "properties": {}, + "x-ms-discriminator-value": "VmmToAzure" + }, + "VmmToAzureUpdateNetworkMappingInput": { + "description": "Update network mappings input properties/behavior specific to vmm to azure.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/FabricSpecificUpdateNetworkMappingInput" + } + ], + "properties": {}, + "x-ms-discriminator-value": "VmmToAzure" + }, + "VmmToVmmCreateNetworkMappingInput": { + "description": "Create network mappings input properties/behavior specific to vmm to vmm Network mapping.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/FabricSpecificCreateNetworkMappingInput" + } + ], + "properties": {}, + "x-ms-discriminator-value": "VmmToVmm" + }, + "VmmToVmmNetworkMappingSettings": { + "description": "E2E Network Mapping fabric specific settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/NetworkMappingFabricSpecificSettings" + } + ], + "properties": {}, + "x-ms-discriminator-value": "VmmToVmm" + }, + "VmmToVmmUpdateNetworkMappingInput": { + "description": "Update network mappings input properties/behavior specific to vmm to vmm.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/FabricSpecificUpdateNetworkMappingInput" + } + ], + "properties": {}, + "x-ms-discriminator-value": "VmmToVmm" + }, + "VmmVirtualMachineDetails": { + "description": "VMM fabric provider specific VM settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/HyperVVirtualMachineDetails" + } + ], + "properties": {}, + "x-ms-discriminator-value": "VmmVirtualMachine" + }, + "VMNicDetails": { + "description": "Hyper V VM network details.", + "type": "object", + "properties": { + "nicId": { + "description": "The nic Id.", + "type": "string" + }, + "replicaNicId": { + "description": "The replica nic Id.", + "type": "string" + }, + "sourceNicArmId": { + "description": "The source nic ARM Id.", + "type": "string" + }, + "vMNetworkName": { + "description": "VM network name.", + "type": "string" + }, + "recoveryVMNetworkId": { + "description": "Recovery VM network Id.", + "type": "string" + }, + "ipConfigs": { + "description": "The IP configurations of the NIC.", + "type": "array", + "items": { + "$ref": "#/definitions/IPConfigDetails" + } + }, + "selectionType": { + "description": "Selection type for failover.", + "type": "string" + }, + "recoveryNetworkSecurityGroupId": { + "description": "The id of the NSG associated with the NIC.", + "type": "string" + }, + "enableAcceleratedNetworkingOnRecovery": { + "description": "A value indicating whether the NIC has accelerated networking enabled.", + "type": "boolean" + }, + "tfoVMNetworkId": { + "description": "The network to be used by NIC during test failover.", + "type": "string" + }, + "tfoNetworkSecurityGroupId": { + "description": "The NSG to be used by NIC during test failover.", + "type": "string" + }, + "enableAcceleratedNetworkingOnTfo": { + "description": "Whether the TFO NIC has accelerated networking enabled.", + "type": "boolean" + }, + "recoveryNicName": { + "description": "The name of the NIC to be used when creating target NICs.", + "type": "string" + }, + "recoveryNicResourceGroupName": { + "description": "The resource group of the NIC to be used when creating target NICs.", + "type": "string" + }, + "reuseExistingNic": { + "description": "A value indicating whether an existing NIC is allowed to be reused during failover subject to availability.", + "type": "boolean", + "default": false + }, + "tfoRecoveryNicName": { + "description": "The name of the NIC to be used when creating target NICs in TFO.", + "type": "string" + }, + "tfoRecoveryNicResourceGroupName": { + "description": "The resource group of the NIC to be used when creating target NICs in TFO.", + "type": "string" + }, + "tfoReuseExistingNic": { + "description": "A value indicating whether an existing NIC is allowed to be reused during test failover subject to availability.", + "type": "boolean", + "default": false + } + } + }, + "VMNicInputDetails": { + "description": "Hyper V VM network input details.", + "type": "object", + "properties": { + "nicId": { + "description": "The nic Id.", + "type": "string" + }, + "ipConfigs": { + "description": "The IP configurations to be used by NIC during test failover and failover.", + "type": "array", + "items": { + "$ref": "#/definitions/IPConfigInputDetails" + } + }, + "selectionType": { + "description": "Selection type for failover.", + "type": "string" + }, + "recoveryNetworkSecurityGroupId": { + "description": "The id of the NSG associated with the NIC.", + "type": "string" + }, + "enableAcceleratedNetworkingOnRecovery": { + "description": "Whether the NIC has accelerated networking enabled.", + "type": "boolean" + }, + "tfoNetworkSecurityGroupId": { + "description": "The NSG to be used by NIC during test failover.", + "type": "string" + }, + "enableAcceleratedNetworkingOnTfo": { + "description": "Whether the test NIC has accelerated networking enabled.", + "type": "boolean" + }, + "recoveryNicName": { + "description": "The name of the NIC to be used when creating target NICs.", + "type": "string" + }, + "recoveryNicResourceGroupName": { + "description": "The resource group of the NIC to be used when creating target NICs.", + "type": "string" + }, + "reuseExistingNic": { + "description": "A value indicating whether an existing NIC is allowed to be reused during failover subject to availability.", + "type": "boolean" + }, + "tfoNicName": { + "description": "The name of the NIC to be used when creating target NICs in TFO.", + "type": "string" + }, + "tfoNicResourceGroupName": { + "description": "The resource group of the NIC to be used when creating target NICs in TFO.", + "type": "string" + }, + "tfoReuseExistingNic": { + "description": "A value indicating whether an existing NIC is allowed to be reused during test failover subject to availability.", + "type": "boolean" + } + } + }, + "VmNicUpdatesTaskDetails": { + "description": "This class represents the vm NicUpdates task details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TaskTypeDetails" + } + ], + "properties": { + "vmId": { + "description": "Virtual machine Id.", + "type": "string" + }, + "nicId": { + "description": "Nic Id.", + "type": "string" + }, + "name": { + "description": "Name of the Nic.", + "type": "string" + } + }, + "x-ms-discriminator-value": "VmNicUpdatesTaskDetails" + }, + "VMwareCbtContainerCreationInput": { + "description": "VMwareCbt container creation input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ReplicationProviderSpecificContainerCreationInput" + } + ], + "properties": {}, + "x-ms-discriminator-value": "VMwareCbt" + }, + "VMwareCbtContainerMappingInput": { + "description": "VMwareCbt container mapping input.", + "required": [ + "keyVaultId", + "keyVaultUri", + "storageAccountId", + "storageAccountSasSecretName", + "serviceBusConnectionStringSecretName", + "targetLocation" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ReplicationProviderSpecificContainerMappingInput" + } + ], + "properties": { + "keyVaultId": { + "description": "The target key vault ARM Id.", + "type": "string" + }, + "keyVaultUri": { + "description": "The target key vault URL.", + "type": "string" + }, + "storageAccountId": { + "description": "The storage account ARM Id.", + "type": "string" + }, + "storageAccountSasSecretName": { + "description": "The secret name of the storage account.", + "type": "string" + }, + "serviceBusConnectionStringSecretName": { + "description": "The secret name of the service bus connection string.", + "type": "string" + }, + "targetLocation": { + "description": "The target location.", + "type": "string" + } + }, + "x-ms-discriminator-value": "VMwareCbt" + }, + "VMwareCbtDiskInput": { + "description": "VMwareCbt disk input.", + "required": [ + "diskId", + "isOSDisk", + "logStorageAccountId", + "logStorageAccountSasSecretName" + ], + "type": "object", + "properties": { + "diskId": { + "description": "The disk Id.", + "type": "string" + }, + "diskType": { + "description": "The disk type.", + "enum": [ + "Standard_LRS", + "Premium_LRS", + "StandardSSD_LRS" + ], + "type": "string", + "x-ms-enum": { + "name": "DiskAccountType", + "modelAsString": true + } + }, + "isOSDisk": { + "description": "A value indicating whether the disk is the OS disk.", + "type": "string" + }, + "logStorageAccountId": { + "description": "The log storage account ARM Id.", + "type": "string" + }, + "logStorageAccountSasSecretName": { + "description": "The key vault secret name of the log storage account.", + "type": "string" + }, + "diskEncryptionSetId": { + "description": "The DiskEncryptionSet ARM Id.", + "type": "string" + } + } + }, + "VMwareCbtEnableMigrationInput": { + "description": "VMwareCbt specific enable migration input.", + "required": [ + "vmwareMachineId", + "disksToInclude", + "dataMoverRunAsAccountId", + "snapshotRunAsAccountId", + "targetResourceGroupId", + "targetNetworkId", + "instanceType" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/EnableMigrationProviderSpecificInput" + } + ], + "properties": { + "vmwareMachineId": { + "description": "The ARM Id of the VM discovered in VMware.", + "type": "string" + }, + "disksToInclude": { + "description": "The disks to include list.", + "minLength": 1, + "type": "array", + "items": { + "$ref": "#/definitions/VMwareCbtDiskInput" + } + }, + "licenseType": { + "description": "License type.", + "enum": [ + "NotSpecified", + "NoLicenseType", + "WindowsServer" + ], + "type": "string", + "x-ms-enum": { + "name": "LicenseType", + "modelAsString": true + } + }, + "sqlServerLicenseType": { + "description": "The SQL Server license type.", + "enum": [ + "NotSpecified", + "NoLicenseType", + "PAYG", + "AHUB" + ], + "type": "string", + "x-ms-enum": { + "name": "SqlServerLicenseType", + "modelAsString": true + } + }, + "dataMoverRunAsAccountId": { + "description": "The data mover run as account Id.", + "type": "string" + }, + "snapshotRunAsAccountId": { + "description": "The snapshot run as account Id.", + "type": "string" + }, + "targetVmName": { + "description": "The target VM name.", + "type": "string" + }, + "targetVmSize": { + "description": "The target VM size.", + "type": "string" + }, + "targetResourceGroupId": { + "description": "The target resource group ARM Id.", + "type": "string" + }, + "targetNetworkId": { + "description": "The target network ARM Id.", + "type": "string" + }, + "targetSubnetName": { + "description": "The target subnet name.", + "type": "string" + }, + "targetAvailabilitySetId": { + "description": "The target availability set ARM Id.", + "type": "string" + }, + "targetAvailabilityZone": { + "description": "The target availability zone.", + "type": "string" + }, + "targetProximityPlacementGroupId": { + "description": "The target proximity placement group ARM Id.", + "type": "string" + }, + "targetBootDiagnosticsStorageAccountId": { + "description": "The target boot diagnostics storage account ARM Id.", + "type": "string" + }, + "performAutoResync": { + "description": "A value indicating whether auto resync is to be done.", + "type": "string" + }, + "targetVmTags": { + "description": "The target VM tags.", + "maxLength": 50, + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "seedDiskTags": { + "description": "The tags for the seed disks.", + "maxLength": 49, + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "targetDiskTags": { + "description": "The tags for the target disks.", + "maxLength": 49, + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "targetNicTags": { + "description": "The tags for the target NICs.", + "maxLength": 50, + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "x-ms-discriminator-value": "VMwareCbt" + }, + "VMwareCbtEventDetails": { + "description": "Event details for VMwareCbt provider.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/EventProviderSpecificDetails" + } + ], + "properties": { + "migrationItemName": { + "description": "The migration item name.", + "type": "string", + "readOnly": true + } + }, + "x-ms-discriminator-value": "VMwareCbt" + }, + "VMwareCbtMigrateInput": { + "description": "VMwareCbt specific migrate input.", + "required": [ + "performShutdown", + "instanceType" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/MigrateProviderSpecificInput" + } + ], + "properties": { + "performShutdown": { + "description": "A value indicating whether VM is to be shutdown.", + "type": "string" + } + }, + "x-ms-discriminator-value": "VMwareCbt" + }, + "VMwareCbtMigrationDetails": { + "description": "VMwareCbt provider specific settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/MigrationProviderSpecificSettings" + } + ], + "properties": { + "vmwareMachineId": { + "description": "The ARM Id of the VM discovered in VMware.", + "type": "string", + "readOnly": true + }, + "osType": { + "description": "The type of the OS on the VM.", + "type": "string", + "readOnly": true + }, + "firmwareType": { + "description": "The firmware type.", + "type": "string", + "readOnly": true + }, + "targetGeneration": { + "description": "The target generation.", + "type": "string", + "readOnly": true + }, + "licenseType": { + "description": "License Type of the VM to be used.", + "type": "string" + }, + "sqlServerLicenseType": { + "description": "The SQL Server license type.", + "type": "string" + }, + "dataMoverRunAsAccountId": { + "description": "The data mover run as account Id.", + "type": "string", + "readOnly": true + }, + "snapshotRunAsAccountId": { + "description": "The snapshot run as account Id.", + "type": "string", + "readOnly": true + }, + "targetVmName": { + "description": "Target VM name.", + "type": "string" + }, + "targetVmSize": { + "description": "The target VM size.", + "type": "string" + }, + "targetLocation": { + "description": "The target location.", + "type": "string", + "readOnly": true + }, + "targetResourceGroupId": { + "description": "The target resource group Id.", + "type": "string" + }, + "targetAvailabilitySetId": { + "description": "The target availability set Id.", + "type": "string" + }, + "targetAvailabilityZone": { + "description": "The target availability zone.", + "type": "string" + }, + "targetProximityPlacementGroupId": { + "description": "The target proximity placement group Id.", + "type": "string" + }, + "targetBootDiagnosticsStorageAccountId": { + "description": "The target boot diagnostics storage account ARM Id.", + "type": "string" + }, + "targetVmTags": { + "description": "The target VM tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "protectedDisks": { + "description": "The list of protected disks.", + "type": "array", + "items": { + "$ref": "#/definitions/VMwareCbtProtectedDiskDetails" + } + }, + "targetNetworkId": { + "description": "The target network Id.", + "type": "string" + }, + "vmNics": { + "description": "The network details.", + "type": "array", + "items": { + "$ref": "#/definitions/VMwareCbtNicDetails" + } + }, + "targetNicTags": { + "description": "The tags for the target NICs.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "migrationRecoveryPointId": { + "description": "The recovery point Id to which the VM was migrated.", + "type": "string", + "readOnly": true + }, + "lastRecoveryPointReceived": { + "format": "date-time", + "description": "The last recovery point received time.", + "type": "string", + "readOnly": true + }, + "lastRecoveryPointId": { + "description": "The last recovery point Id.", + "type": "string", + "readOnly": true + }, + "initialSeedingProgressPercentage": { + "format": "int32", + "description": "The initial seeding progress percentage.", + "type": "integer", + "readOnly": true + }, + "migrationProgressPercentage": { + "format": "int32", + "description": "The migration progress percentage.", + "type": "integer", + "readOnly": true + }, + "resyncProgressPercentage": { + "format": "int32", + "description": "The resync progress percentage.", + "type": "integer", + "readOnly": true + }, + "initialSeedingRetryCount": { + "format": "int64", + "description": "The initial seeding retry count.", + "type": "integer", + "readOnly": true + }, + "resyncRetryCount": { + "format": "int64", + "description": "The resync retry count.", + "type": "integer", + "readOnly": true + }, + "resyncRequired": { + "description": "A value indicating whether resync is required.", + "type": "string", + "readOnly": true + }, + "resyncState": { + "description": "The resync state.", + "enum": [ + "None", + "PreparedForResynchronization", + "StartedResynchronization" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ResyncState", + "modelAsString": true + } + }, + "performAutoResync": { + "description": "A value indicating whether auto resync is to be done.", + "type": "string" + }, + "seedDiskTags": { + "description": "The tags for the seed disks.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "targetDiskTags": { + "description": "The tags for the target disks.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "x-ms-discriminator-value": "VMwareCbt" + }, + "VMwareCbtNicDetails": { + "description": "VMwareCbt NIC details.", + "type": "object", + "properties": { + "nicId": { + "description": "The NIC Id.", + "type": "string", + "readOnly": true + }, + "isPrimaryNic": { + "description": "A value indicating whether this is the primary NIC.", + "type": "string" + }, + "sourceIPAddress": { + "description": "The source IP address.", + "type": "string", + "readOnly": true + }, + "sourceIPAddressType": { + "description": "The source IP address type.", + "enum": [ + "Dynamic", + "Static" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "EthernetAddressType", + "modelAsString": true + } + }, + "sourceNetworkId": { + "description": "Source network Id.", + "type": "string", + "readOnly": true + }, + "targetIPAddress": { + "description": "The target IP address.", + "type": "string" + }, + "targetIPAddressType": { + "description": "The target IP address type.", + "enum": [ + "Dynamic", + "Static" + ], + "type": "string", + "x-ms-enum": { + "name": "EthernetAddressType", + "modelAsString": true + } + }, + "targetSubnetName": { + "description": "Target subnet name.", + "type": "string" + }, + "targetNicName": { + "description": "Target NIC name.", + "type": "string" + }, + "isSelectedForMigration": { + "description": "A value indicating whether this NIC is selected for migration.", + "type": "string" + } + } + }, + "VMwareCbtNicInput": { + "description": "VMwareCbt NIC input.", + "required": [ + "nicId", + "isPrimaryNic" + ], + "type": "object", + "properties": { + "nicId": { + "description": "The NIC Id.", + "type": "string" + }, + "isPrimaryNic": { + "description": "A value indicating whether this is the primary NIC.", + "type": "string" + }, + "targetSubnetName": { + "description": "Target subnet name.", + "type": "string" + }, + "targetStaticIPAddress": { + "description": "The static IP address.", + "type": "string" + }, + "isSelectedForMigration": { + "description": "A value indicating whether this NIC is selected for migration.", + "type": "string" + }, + "targetNicName": { + "description": "Target NIC name.", + "type": "string" + } + } + }, + "VMwareCbtPolicyCreationInput": { + "description": "VMware Cbt policy creation input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/PolicyProviderSpecificInput" + } + ], + "properties": { + "recoveryPointHistoryInMinutes": { + "format": "int32", + "description": "The duration in minutes until which the recovery points need to be stored.", + "type": "integer" + }, + "crashConsistentFrequencyInMinutes": { + "format": "int32", + "description": "The crash consistent snapshot frequency (in minutes).", + "type": "integer" + }, + "appConsistentFrequencyInMinutes": { + "format": "int32", + "description": "The app consistent snapshot frequency (in minutes).", + "type": "integer" + } + }, + "x-ms-discriminator-value": "VMwareCbt" + }, + "VmwareCbtPolicyDetails": { + "description": "VMware Cbt specific policy details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/PolicyProviderSpecificDetails" + } + ], + "properties": { + "recoveryPointHistoryInMinutes": { + "format": "int32", + "description": "The duration in minutes until which the recovery points need to be stored.", + "type": "integer" + }, + "appConsistentFrequencyInMinutes": { + "format": "int32", + "description": "The app consistent snapshot frequency in minutes.", + "type": "integer" + }, + "crashConsistentFrequencyInMinutes": { + "format": "int32", + "description": "The crash consistent snapshot frequency in minutes.", + "type": "integer" + } + }, + "x-ms-discriminator-value": "VMwareCbt" + }, + "VMwareCbtProtectedDiskDetails": { + "description": "VMwareCbt protected disk details.", + "type": "object", + "properties": { + "diskId": { + "description": "The disk id.", + "type": "string", + "readOnly": true + }, + "diskName": { + "description": "The disk name.", + "type": "string", + "readOnly": true + }, + "diskType": { + "description": "The disk type.", + "enum": [ + "Standard_LRS", + "Premium_LRS", + "StandardSSD_LRS" + ], + "type": "string", + "x-ms-enum": { + "name": "DiskAccountType", + "modelAsString": true + } + }, + "diskPath": { + "description": "The disk path.", + "type": "string", + "readOnly": true + }, + "isOSDisk": { + "description": "A value indicating whether the disk is the OS disk.", + "type": "string", + "readOnly": true + }, + "capacityInBytes": { + "format": "int64", + "description": "The disk capacity in bytes.", + "type": "integer", + "readOnly": true + }, + "logStorageAccountId": { + "description": "The log storage account ARM Id.", + "type": "string", + "readOnly": true + }, + "logStorageAccountSasSecretName": { + "description": "The key vault secret name of the log storage account.", + "type": "string", + "readOnly": true + }, + "diskEncryptionSetId": { + "description": "The DiskEncryptionSet ARM Id.", + "type": "string", + "readOnly": true + }, + "seedManagedDiskId": { + "description": "The ARM Id of the seed managed disk.", + "type": "string", + "readOnly": true + }, + "targetManagedDiskId": { + "description": "The ARM Id of the target managed disk.", + "type": "string", + "readOnly": true + }, + "targetDiskName": { + "description": "The name for the target managed disk.", + "type": "string" + } + } + }, + "VMwareCbtProtectionContainerMappingDetails": { + "description": "VMwareCbt provider specific container mapping details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionContainerMappingProviderSpecificDetails" + } + ], + "properties": { + "keyVaultId": { + "description": "The target key vault ARM Id.", + "type": "string", + "readOnly": true + }, + "keyVaultUri": { + "description": "The target key vault URI.", + "type": "string", + "readOnly": true + }, + "storageAccountId": { + "description": "The storage account ARM Id.", + "type": "string", + "readOnly": true + }, + "storageAccountSasSecretName": { + "description": "The secret name of the storage account.", + "type": "string", + "readOnly": true + }, + "serviceBusConnectionStringSecretName": { + "description": "The secret name of the service bus connection string.", + "type": "string", + "readOnly": true + }, + "targetLocation": { + "description": "The target location.", + "type": "string", + "readOnly": true + } + }, + "x-ms-discriminator-value": "VMwareCbt" + }, + "VMwareCbtResyncInput": { + "description": "VMwareCbt specific resync input.", + "required": [ + "skipCbtReset", + "instanceType" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ResyncProviderSpecificInput" + } + ], + "properties": { + "skipCbtReset": { + "description": "A value indicating whether CBT is to be reset.", + "type": "string" + } + }, + "x-ms-discriminator-value": "VMwareCbt" + }, + "VMwareCbtTestMigrateInput": { + "description": "VMwareCbt specific test migrate input.", + "required": [ + "recoveryPointId", + "networkId", + "instanceType" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TestMigrateProviderSpecificInput" + } + ], + "properties": { + "recoveryPointId": { + "description": "The recovery point Id.", + "type": "string" + }, + "networkId": { + "description": "The test network Id.", + "type": "string" + } + }, + "x-ms-discriminator-value": "VMwareCbt" + }, + "VMwareCbtUpdateDiskInput": { + "description": "VMwareCbt disk input for update.", + "required": [ + "diskId" + ], + "type": "object", + "properties": { + "diskId": { + "description": "The disk Id.", + "type": "string" + }, + "targetDiskName": { + "description": "The target disk name.", + "type": "string" + } + } + }, + "VMwareCbtUpdateMigrationItemInput": { + "description": "VMwareCbt specific update migration item input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/UpdateMigrationItemProviderSpecificInput" + } + ], + "properties": { + "targetVmName": { + "description": "The target VM name.", + "type": "string" + }, + "targetVmSize": { + "description": "The target VM size.", + "type": "string" + }, + "targetResourceGroupId": { + "description": "The target resource group ARM Id.", + "type": "string" + }, + "targetAvailabilitySetId": { + "description": "The target availability set ARM Id.", + "type": "string" + }, + "targetAvailabilityZone": { + "description": "The target availability zone.", + "type": "string" + }, + "targetProximityPlacementGroupId": { + "description": "The target proximity placement group ARM Id.", + "type": "string" + }, + "targetBootDiagnosticsStorageAccountId": { + "description": "The target boot diagnostics storage account ARM Id.", + "type": "string" + }, + "targetNetworkId": { + "description": "The target network ARM Id.", + "type": "string" + }, + "vmNics": { + "description": "The list of NIC details.", + "minLength": 1, + "type": "array", + "items": { + "$ref": "#/definitions/VMwareCbtNicInput" + } + }, + "vmDisks": { + "description": "The list of disk update properties.", + "minLength": 1, + "type": "array", + "items": { + "$ref": "#/definitions/VMwareCbtUpdateDiskInput" + } + }, + "licenseType": { + "description": "The license type.", + "enum": [ + "NotSpecified", + "NoLicenseType", + "WindowsServer" + ], + "type": "string", + "x-ms-enum": { + "name": "LicenseType", + "modelAsString": true + } + }, + "sqlServerLicenseType": { + "description": "The SQL Server license type.", + "enum": [ + "NotSpecified", + "NoLicenseType", + "PAYG", + "AHUB" + ], + "type": "string", + "x-ms-enum": { + "name": "SqlServerLicenseType", + "modelAsString": true + } + }, + "performAutoResync": { + "description": "A value indicating whether auto resync is to be done.", + "type": "string" + }, + "targetVmTags": { + "description": "The target VM tags.", + "maxLength": 50, + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "targetDiskTags": { + "description": "The tags for the target disks.", + "maxLength": 49, + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "targetNicTags": { + "description": "The tags for the target NICs.", + "maxLength": 50, + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "x-ms-discriminator-value": "VMwareCbt" + }, + "VMwareDetails": { + "description": "Store the fabric details specific to the VMware fabric.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/FabricSpecificDetails" + } + ], + "properties": { + "processServers": { + "description": "The list of Process Servers associated with the fabric.", + "type": "array", + "items": { + "$ref": "#/definitions/ProcessServer" + } + }, + "masterTargetServers": { + "description": "The list of Master Target servers associated with the fabric.", + "type": "array", + "items": { + "$ref": "#/definitions/MasterTargetServer" + } + }, + "runAsAccounts": { + "description": "The list of run as accounts created on the server.", + "type": "array", + "items": { + "$ref": "#/definitions/RunAsAccount" + } + }, + "replicationPairCount": { + "description": "The number of replication pairs configured in this CS.", + "type": "string" + }, + "processServerCount": { + "description": "The number of process servers.", + "type": "string" + }, + "agentCount": { + "description": "The number of source and target servers configured to talk to this CS.", + "type": "string" + }, + "protectedServers": { + "description": "The number of protected servers.", + "type": "string" + }, + "systemLoad": { + "description": "The percentage of the system load.", + "type": "string" + }, + "systemLoadStatus": { + "description": "The system load status.", + "type": "string" + }, + "cpuLoad": { + "description": "The percentage of the CPU load.", + "type": "string" + }, + "cpuLoadStatus": { + "description": "The CPU load status.", + "type": "string" + }, + "totalMemoryInBytes": { + "format": "int64", + "description": "The total memory.", + "type": "integer" + }, + "availableMemoryInBytes": { + "format": "int64", + "description": "The available memory.", + "type": "integer" + }, + "memoryUsageStatus": { + "description": "The memory usage status.", + "type": "string" + }, + "totalSpaceInBytes": { + "format": "int64", + "description": "The total space.", + "type": "integer" + }, + "availableSpaceInBytes": { + "format": "int64", + "description": "The available space.", + "type": "integer" + }, + "spaceUsageStatus": { + "description": "The space usage status.", + "type": "string" + }, + "webLoad": { + "description": "The web load.", + "type": "string" + }, + "webLoadStatus": { + "description": "The web load status.", + "type": "string" + }, + "databaseServerLoad": { + "description": "The database server load.", + "type": "string" + }, + "databaseServerLoadStatus": { + "description": "The database server load status.", + "type": "string" + }, + "csServiceStatus": { + "description": "The CS service status.", + "type": "string" + }, + "ipAddress": { + "description": "The IP address.", + "type": "string" + }, + "agentVersion": { + "description": "The agent Version.", + "type": "string" + }, + "hostName": { + "description": "The host name.", + "type": "string" + }, + "lastHeartbeat": { + "format": "date-time", + "description": "The last heartbeat received from CS server.", + "type": "string" + }, + "versionStatus": { + "description": "Version status.", + "type": "string" + }, + "sslCertExpiryDate": { + "format": "date-time", + "description": "CS SSL cert expiry date.", + "type": "string" + }, + "sslCertExpiryRemainingDays": { + "format": "int32", + "description": "CS SSL cert expiry date.", + "type": "integer" + }, + "psTemplateVersion": { + "description": "PS template version.", + "type": "string" + }, + "agentExpiryDate": { + "format": "date-time", + "description": "Agent expiry date.", + "type": "string" + }, + "agentVersionDetails": { + "$ref": "#/definitions/VersionDetails", + "description": "The agent version details." + } + }, + "x-ms-discriminator-value": "VMware" + }, + "VMwareV2FabricCreationInput": { + "description": "VMwareV2 fabric provider specific settings.", + "required": [ + "migrationSolutionId" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/FabricSpecificCreationInput" + } + ], + "properties": { + "vmwareSiteId": { + "description": "The ARM Id of the VMware site.", + "type": "string" + }, + "physicalSiteId": { + "description": "The ARM Id of the physical site.", + "type": "string" + }, + "migrationSolutionId": { + "description": "The ARM Id of the migration solution.", + "type": "string" + } + }, + "x-ms-discriminator-value": "VMwareV2" + }, + "VMwareV2FabricSpecificDetails": { + "description": "VMwareV2 fabric specific details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/FabricSpecificDetails" + } + ], + "properties": { + "vmwareSiteId": { + "description": "The ARM Id of the VMware site.", + "type": "string", + "readOnly": true + }, + "physicalSiteId": { + "description": "The ARM Id of the physical site.", + "type": "string", + "readOnly": true + }, + "migrationSolutionId": { + "description": "The Migration solution ARM Id.", + "type": "string", + "readOnly": true + }, + "serviceEndpoint": { + "description": "The service endpoint.", + "type": "string", + "readOnly": true + }, + "serviceResourceId": { + "description": "The service resource Id.", + "type": "string", + "readOnly": true + }, + "serviceContainerId": { + "description": "The service container Id.", + "type": "string", + "readOnly": true + }, + "processServers": { + "description": "The list of process servers.", + "type": "array", + "items": { + "$ref": "#/definitions/ProcessServerDetails" + }, + "readOnly": true + } + }, + "x-ms-discriminator-value": "VMwareV2" + }, + "VMwareVirtualMachineDetails": { + "description": "VMware provider specific settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ConfigurationSettings" + } + ], + "properties": { + "agentGeneratedId": { + "description": "The ID generated by the InMage agent after it gets installed on guest. This is the ID to be used during InMage CreateProtection.", + "type": "string" + }, + "agentInstalled": { + "description": "The value indicating if InMage scout agent is installed on guest.", + "type": "string" + }, + "osType": { + "description": "The OsType installed on VM.", + "type": "string" + }, + "agentVersion": { + "description": "The agent version.", + "type": "string" + }, + "ipAddress": { + "description": "The IP address.", + "type": "string" + }, + "poweredOn": { + "description": "The value indicating whether VM is powered on.", + "type": "string" + }, + "vCenterInfrastructureId": { + "description": "The VCenter infrastructure Id.", + "type": "string" + }, + "discoveryType": { + "description": "A value indicating the discovery type of the machine. Value can be vCenter or physical.", + "type": "string" + }, + "diskDetails": { + "description": "The disk details.", + "type": "array", + "items": { + "$ref": "#/definitions/InMageDiskDetails" + } + }, + "validationErrors": { + "description": "The validation errors.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthError" + } + } + }, + "x-ms-discriminator-value": "VMwareVirtualMachine" + } + }, + "parameters": { + "SubscriptionId": { + "name": "subscriptionId", + "in": "path", + "description": "The subscription Id.", + "required": true, + "type": "string" + }, + "ResourceGroupName": { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group where the recovery services vault is present.", + "required": true, + "type": "string", + "x-ms-parameter-location": "client" + }, + "ResourceName": { + "name": "resourceName", + "in": "path", + "description": "The name of the recovery services vault.", + "required": true, + "type": "string", + "x-ms-parameter-location": "client" + }, + "ApiVersion": { + "name": "api-version", + "in": "query", + "description": "Client Api Version.", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account." + }, + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow" + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "tags": [] +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/MigrationRecoveryPoints_Get.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/MigrationRecoveryPoints_Get.json new file mode 100644 index 000000000000..35382d2bffa1 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/MigrationRecoveryPoints_Get.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "migrationRecoveryPointName": "b22134ea-620c-474b-9fa5-3c1cb47708e3", + "migrationItemName": "virtualmachine1", + "protectionContainerName": "vmwareContainer1", + "fabricName": "vmwarefabric1", + "resourceName": "migrationvault", + "resourceGroupName": "resourcegroup1", + "subscriptionId": "cb53d0c3-bd59-4721-89bc-06916a9147ef" + }, + "responses": { + "200": { + "body": { + "name": "b22134ea-620c-474b-9fa5-3c1cb47708e3", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationMigrationItems/migrationRecoveryPoints", + "id": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationProtectionContainers/vmwareContainer1/replicationMigrationItems/virtualmachine1/migrationRecoveryPoints/b22134ea-620c-474b-9fa5-3c1cb47708e3", + "properties": { + "recoveryPointTime": "2017-04-26T06:37:50.8082715Z", + "recoveryPointType": "CrashConsistent" + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/MigrationRecoveryPoints_ListByReplicationMigrationItems.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/MigrationRecoveryPoints_ListByReplicationMigrationItems.json new file mode 100644 index 000000000000..4e8c10d4ab4e --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/MigrationRecoveryPoints_ListByReplicationMigrationItems.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "migrationItemName": "virtualmachine1", + "protectionContainerName": "vmwareContainer1", + "fabricName": "vmwarefabric1", + "resourceName": "migrationvault", + "resourceGroupName": "resourcegroup1", + "subscriptionId": "cb53d0c3-bd59-4721-89bc-06916a9147ef" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "648336ef-2d70-4d98-b100-8c299f97cd41", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationMigrationItems/migrationRecoveryPoints", + "id": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationProtectionContainers/vmwareContainer1/replicationMigrationItems/virtualmachine1/migrationRecoveryPoints/648336ef-2d70-4d98-b100-8c299f97cd41", + "properties": { + "recoveryPointTime": "2017-04-26T06:37:50.8082715Z", + "recoveryPointType": "CrashConsistent" + } + }, + { + "name": "34cb2d05-e730-4d3f-b96b-a60a5e92acb2", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationMigrationItems/migrationRecoveryPoints", + "id": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationProtectionContainers/vmwareContainer1/replicationMigrationItems/virtualmachine1/migrationRecoveryPoints/34cb2d05-e730-4d3f-b96b-a60a5e92acb2", + "properties": { + "recoveryPointTime": "2017-04-26T07:37:30.9722019Z", + "recoveryPointType": "CrashConsistent" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Operations_List.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Operations_List.json new file mode 100644 index 000000000000..32e6a59447c1 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/Operations_List.json @@ -0,0 +1,1225 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.RecoveryServices/Vaults/vaultTokens/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Vaults", + "operation": "Vault Token", + "description": "The Vault Token operation can be used to get Vault Token for vault level backend operations." + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/registeredIdentities/write", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Vaults", + "operation": "Register Service Container", + "description": "The Register Service Container operation can be used to register a container with Recovery Service." + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/registeredIdentities/operationResults/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Vaults", + "operation": "Get Operation Results", + "description": "The Get Operation Results operation can be used get the operation status and result for the asynchronously submitted operation" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/registeredIdentities/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Vaults", + "operation": "Get Containers", + "description": "The Get Containers operation can be used get the containers registered for a resource." + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/registeredIdentities/delete", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Vaults", + "operation": "Unregister Service Container", + "description": "The UnRegister Container operation can be used to unregister a container." + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/certificates/write", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Vaults", + "operation": "Update Resource Certificate", + "description": "The Update Resource Certificate operation updates the resource/vault credential certificate." + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationAlertSettings/read", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Alerts Settings", + "operation": "Read Alerts Settings", + "description": "Read Any Alerts Settings" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationAlertSettings/write", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Alerts Settings", + "operation": "Create or Update Alerts Settings", + "description": "Create or Update Any Alerts Settings" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationEvents/read", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Events", + "operation": "Read Events", + "description": "Read Any Events" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationNetworks/read", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Networks", + "operation": "Read Networks", + "description": "Read Any Networks" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationNetworks/replicationNetworkMappings/read", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Network Mappings", + "operation": "Read Network Mappings", + "description": "Read Any Network Mappings" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationNetworks/replicationNetworkMappings/write", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Network Mappings", + "operation": "Create or Update Network Mappings", + "description": "Create or Update Any Network Mappings" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationNetworks/replicationNetworkMappings/delete", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Network Mappings", + "operation": "Delete Network Mappings", + "description": "Delete Any Network Mappings" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectableItems/read", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Protectable Items", + "operation": "Read Protectable Items", + "description": "Read Any Protectable Items" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectionContainerMappings/read", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Protection Container Mappings", + "operation": "Read Protection Container Mappings", + "description": "Read Any Protection Container Mappings" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectionContainerMappings/write", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Protection Container Mappings", + "operation": "Create or Update Protection Container Mappings", + "description": "Create or Update Any Protection Container Mappings" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectionContainerMappings/remove/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Protection Container Mappings", + "operation": "Remove Protection Container Mapping", + "description": "Remove Protection Container Mapping" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectionContainerMappings/delete", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Protection Container Mappings", + "operation": "Delete Protection Container Mappings", + "description": "Delete Any Protection Container Mappings" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems/recoveryPoints/read", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Replication Recovery Points", + "operation": "Read Replication Recovery Points", + "description": "Read Any Replication Recovery Points" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems/read", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Protected Items", + "operation": "Read Protected Items", + "description": "Read Any Protected Items" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems/write", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Protected Items", + "operation": "Create or Update Protected Items", + "description": "Create or Update Any Protected Items" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems/delete", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Protected Items", + "operation": "Delete Protected Items", + "description": "Delete Any Protected Items" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems/remove/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Protected Items", + "operation": "Remove Protected Item", + "description": "Remove Protected Item" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems/plannedFailover/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Protected Items", + "operation": "Planned Failover", + "description": "Planned Failover" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems/unplannedFailover/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Protected Items", + "operation": "Failover", + "description": "Failover" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems/testFailover/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Protected Items", + "operation": "Test Failover", + "description": "Test Failover" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems/testFailoverCleanup/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Protected Items", + "operation": "Test Failover Cleanup", + "description": "Test Failover Cleanup" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems/failoverCommit/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Protected Items", + "operation": "Failover Commit", + "description": "Failover Commit" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems/reProtect/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Protected Items", + "operation": "ReProtect Protected Item", + "description": "ReProtect Protected Item" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems/updateMobilityService/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Protected Items", + "operation": "Update Mobility Service", + "description": "Update Mobility Service" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems/repairReplication/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Protected Items", + "operation": "Repair replication", + "description": "Repair replication" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems/applyRecoveryPoint/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Protected Items", + "operation": "Apply Recovery Point", + "description": "Apply Recovery Point" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationJobs/read", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Jobs", + "operation": "Read Jobs", + "description": "Read Any Jobs" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationJobs/cancel/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Jobs", + "operation": "Cancel Job", + "description": "Cancel Job" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationJobs/restart/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Jobs", + "operation": "Restart job", + "description": "Restart job" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationJobs/resume/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Jobs", + "operation": "Resume Job", + "description": "Resume Job" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/read", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Protection Containers", + "operation": "Read Protection Containers", + "description": "Read Any Protection Containers" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/discoverProtectableItem/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Protection Containers", + "operation": "Discover Protectable Item", + "description": "Discover Protectable Item" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/write", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Protection Containers", + "operation": "Create or Update Protection Containers", + "description": "Create or Update Any Protection Containers" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/remove/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Protection Containers", + "operation": "Remove Protection Container", + "description": "Remove Protection Container" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/switchprotection/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Protection Containers", + "operation": "Switch Protection Container", + "description": "Switch Protection Container" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationPolicies/read", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Policies", + "operation": "Read Policies", + "description": "Read Any Policies" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationPolicies/write", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Policies", + "operation": "Create or Update Policies", + "description": "Create or Update Any Policies" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationPolicies/delete", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Policies", + "operation": "Delete Policies", + "description": "Delete Any Policies" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationRecoveryPlans/read", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Recovery Plans", + "operation": "Read Recovery Plans", + "description": "Read Any Recovery Plans" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationRecoveryPlans/write", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Recovery Plans", + "operation": "Create or Update Recovery Plans", + "description": "Create or Update Any Recovery Plans" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationRecoveryPlans/delete", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Recovery Plans", + "operation": "Delete Recovery Plans", + "description": "Delete Any Recovery Plans" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationRecoveryPlans/plannedFailover/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Recovery Plans", + "operation": "Planned Failover Recovery Plan", + "description": "Planned Failover Recovery Plan" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationRecoveryPlans/unplannedFailover/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Recovery Plans", + "operation": "Failover Recovery Plan", + "description": "Failover Recovery Plan" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationRecoveryPlans/testFailover/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Recovery Plans", + "operation": "Test Failover Recovery Plan", + "description": "Test Failover Recovery Plan" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationRecoveryPlans/testFailoverCleanup/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Recovery Plans", + "operation": "Test Failover Cleanup Recovery Plan", + "description": "Test Failover Cleanup Recovery Plan" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationRecoveryPlans/failoverCommit/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Recovery Plans", + "operation": "Failover Commit Recovery Plan", + "description": "Failover Commit Recovery Plan" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationRecoveryPlans/reProtect/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Recovery Plans", + "operation": "ReProtect Recovery Plan", + "description": "ReProtect Recovery Plan" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationRecoveryServicesProviders/read", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Recovery Services Providers", + "operation": "Read Recovery Services Providers", + "description": "Read Any Recovery Services Providers" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationRecoveryServicesProviders/remove/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Recovery Services Providers", + "operation": "Remove Recovery Services Provider", + "description": "Remove Recovery Services Provider" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationRecoveryServicesProviders/delete", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Recovery Services Providers", + "operation": "Delete Recovery Services Providers", + "description": "Delete Any Recovery Services Providers" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationRecoveryServicesProviders/refreshProvider/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Recovery Services Providers", + "operation": "Refresh Provider", + "description": "Refresh Provider" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/read", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Fabrics", + "operation": "Read Fabrics", + "description": "Read Any Fabrics" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/write", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Fabrics", + "operation": "Create or Update Fabrics", + "description": "Create or Update Any Fabrics" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/remove/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Fabrics", + "operation": "Remove Fabric", + "description": "Remove Fabric" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/checkConsistency/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Fabrics", + "operation": "Checks Consistency of the Fabric", + "description": "Checks Consistency of the Fabric" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/delete", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Fabrics", + "operation": "Delete Fabrics", + "description": "Delete Any Fabrics" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/renewcertificate/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Fabrics", + "operation": "Renew Certificate for Fabric", + "description": "Renew Certificate for Fabric" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/deployProcessServerImage/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Fabrics", + "operation": "Deploy Process Server Image", + "description": "Deploy Process Server Image" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/reassociateGateway/action", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Fabrics", + "operation": "Reassociate Gateway", + "description": "Reassociate Gateway" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationStorageClassifications/read", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Storage Classifications", + "operation": "Read Storage Classifications", + "description": "Read Any Storage Classifications" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationStorageClassifications/replicationStorageClassificationMappings/read", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Storage Classification Mappings", + "operation": "Read Storage Classification Mappings", + "description": "Read Any Storage Classification Mappings" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationStorageClassifications/replicationStorageClassificationMappings/write", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Storage Classification Mappings", + "operation": "Create or Update Storage Classification Mappings", + "description": "Create or Update Any Storage Classification Mappings" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationStorageClassifications/replicationStorageClassificationMappings/delete", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Storage Classification Mappings", + "operation": "Delete Storage Classification Mappings", + "description": "Delete Any Storage Classification Mappings" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/usages/read", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Vault Usages", + "operation": "Read Vault Usages", + "description": "Read Any Vault Usages" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationvCenters/read", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Jobs", + "operation": "Read Jobs", + "description": "Read Any Jobs" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationvCenters/write", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Jobs", + "operation": "Create or Update Jobs", + "description": "Create or Update Any Jobs" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationvCenters/delete", + "display": { + "provider": "Microsoft Recovery Services", + "resource": "Jobs", + "operation": "Delete Jobs", + "description": "Delete Any Jobs" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/usages/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Vault Usage", + "operation": "Recovery Services Vault usage details.", + "description": "Returns usage details for a Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupUsageSummaries/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Backup Usages Summaries", + "operation": "Recovery Services Protected Items and Protected Servers usage summaries details.", + "description": "Returns summaries for Protected Items and Protected Servers for a Recovery Services ." + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/storageConfig/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Vault Storage Config", + "operation": "Get Resource Storage Config", + "description": "Returns Storage Configuration for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/storageConfig/write", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Vault Storage Config", + "operation": "Write Resource Storage Config", + "description": "Updates Storage Configuration for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupconfig/vaultconfig/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Vault Config", + "operation": "Get Resource Config", + "description": "Returns Configuration for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupconfig/vaultconfig/write", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Vault Config", + "operation": "Update Resource Config", + "description": "Updates Configuration for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/tokenInfo/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Token Info", + "operation": "Get Vault Token Info", + "description": "Returns token information for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupSecurityPIN/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "SecurityPINInfo", + "operation": "Get Security PIN Info", + "description": "Returns Security PIN Information for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupManagementMetaData/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Backup Management Metadata", + "operation": "Get Backup Management Metadata", + "description": "Returns Backup Management Metadata for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupOperationResults/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Backup Operation Results", + "operation": "Get Backup Operation Result", + "description": "Returns Backup Operation Result for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupOperations/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Backup Operation Status", + "operation": "Get Backup Operation Status", + "description": "Returns Backup Operation Status for Recovery Services Vault." + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupJobs/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Backup Jobs", + "operation": "Get Jobs", + "description": "Returns all Job Objects" + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupJobs/cancel/action", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Backup Jobs", + "operation": "Cancel Jobs", + "description": "Cancel the Job" + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupJobsExport/action", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Export Backup Jobs", + "operation": "Export Jobs", + "description": "Export Jobs" + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupJobs/operationResults/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Backup Jobs Operation Results", + "operation": "Get Job Operation Result", + "description": "Returns the Result of Job Operation." + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupJobsExport/operationResults/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Export Backup Jobs Operation Results", + "operation": "Get Export Job Operation Result", + "description": "Returns the Result of Export Job Operation." + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Recovery Points", + "operation": "Get Recovery Points", + "description": "Get Recovery Points for Protected Items." + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints/restore/action", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Recovery Points", + "operation": "Restore Recovery Points", + "description": "Restore Recovery Points for Protected Items." + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints/provisionInstantItemRecovery/action", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Recovery Points", + "operation": "Provision Instant Item Recovery for Protected Item", + "description": "Provision Instant Item Recovery for Protected Item" + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints/revokeInstantItemRecovery/action", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Recovery Points", + "operation": "Revoke Instant Item Recovery for Protected Item", + "description": "Revoke Instant Item Recovery for Protected Item" + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupPolicies/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Backup Policies", + "operation": "Get Protection Policy", + "description": "Returns all Protection Policies" + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupPolicies/write", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Backup Policies", + "operation": "Create Protection Policy", + "description": "Creates Protection Policy" + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupPolicies/delete", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Backup Policies", + "operation": "Delete Protection Policy", + "description": "Delete a Protection Policy" + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupPolicies/operationResults/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Backup Policy Operation Results", + "operation": "Get Policy Operation Results", + "description": "Get Results of Policy Operation." + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupPolicies/operationStatus/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Backup Policy Operation Status", + "operation": "Get Policy Operation Status", + "description": "Get Status of Policy Operation." + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupFabrics/protectionContainers/protectedItems/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Protected Items", + "operation": "Get Protected Item Details", + "description": "Returns object details of the Protected Item" + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupProtectedItems/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Protected Items", + "operation": "Get All Protected Items", + "description": "Returns the list of all Protected Items." + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupFabrics/protectionContainers/protectedItems/write", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Protected Items", + "operation": "Create Backup Protected Item", + "description": "Create a backup Protected Item" + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupFabrics/protectionContainers/protectedItems/delete", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Protected Items", + "operation": "Delete Protected Items", + "description": "Deletes Protected Item" + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupFabrics/protectionContainers/protectedItems/operationResults/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Protected Item Operation Results", + "operation": "Get Protected Items Operation Results", + "description": "Gets Result of Operation Performed on Protected Items." + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupFabrics/protectionContainers/protectedItems/operationStatus/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Protected Item Operation Status", + "operation": "Get Protected Items operation status", + "description": "Returns the status of Operation performed on Protected Items." + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupFabrics/protectionContainers/protectedItems/backup/action", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Protected Items", + "operation": "Backup Protected Item", + "description": "Performs Backup for Protected Item." + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupProtectableItems/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Backup Protectable Items", + "operation": "Get Protectable Items", + "description": "Returns list of all Protectable Items." + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/refreshContainers/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Refresh Containers", + "operation": "Refresh container", + "description": "Refreshes the container list" + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupFabrics/operationResults/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Refresh Containers Operation Results", + "operation": "Get Operation Results", + "description": "Returns status of the operation" + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupProtectionContainers/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Backup Protection Containers", + "operation": "Get Containers In Subscription", + "description": "Returns all containers belonging to the subscription" + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupFabrics/protectionContainers/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Protection Containers", + "operation": "Get Registered Container", + "description": "Returns all registered containers" + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupFabrics/protectionContainers/operationResults/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Protection Containers Operation Results", + "operation": "Get Container Operation Results", + "description": "Gets result of Operation performed on Protection Container." + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupEngines", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Backup Engines", + "operation": "List of backup management servers.", + "description": "Returns all the backup management servers registered with vault." + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/backupStatus", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Backup Status", + "operation": "Check Backup Status for Vault", + "description": "Check Backup Status for Recovery Services Vaults" + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/write", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Vaults", + "operation": "Create Vault", + "description": "Create Vault operation creates an Azure resource of type 'vault'" + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Vaults", + "operation": "Get Vault", + "description": "The Get Vault operation gets an object representing the Azure resource of type 'vault'" + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/delete", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Vaults", + "operation": "Delete Vault", + "description": "The Delete Vault operation deletes the specified Azure resource of type 'vault'" + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/extendedInformation/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Vaults", + "operation": "Get Extended Info", + "description": "The Get Extended Info operation gets an object's Extended Info representing the Azure resource of type ?vault?" + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/extendedInformation/write", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Vaults", + "operation": "Get Extended Info", + "description": "The Get Extended Info operation gets an object's Extended Info representing the Azure resource of type ?vault?" + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/Vaults/extendedInformation/delete", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "Vaults", + "operation": "Get Extended Info", + "description": "The Get Extended Info operation gets an object's Extended Info representing the Azure resource of type ?vault?" + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/locations/allocatedStamp/read", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "locations/allocatedStamp", + "operation": "Get Allocated Stamp", + "description": "GetAllocatedStamp is internal operation used by service" + }, + "origin": "user" + }, + { + "name": "Microsoft.RecoveryServices/locations/allocateStamp/action", + "display": { + "provider": "Microsoft.RecoveryServices", + "resource": "locations/allocateStamp", + "operation": "Allocated Stamp Action", + "description": "AllocateStamp is internal operation used by service" + }, + "origin": "user" + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/RecoveryPoints_Get.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/RecoveryPoints_Get.json new file mode 100644 index 000000000000..e60617ecb8c0 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/RecoveryPoints_Get.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "replicatedProtectedItemName": "f8491e4f-817a-40dd-a90c-af773978c75b", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "recoveryPointName": "b22134ea-620c-474b-9fa5-3c1cb47708e3" + }, + "responses": { + "200": { + "body": { + "name": "b22134ea-620c-474b-9fa5-3c1cb47708e3", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems/recoveryPoints", + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b/recoveryPoints/b22134ea-620c-474b-9fa5-3c1cb47708e3", + "properties": { + "recoveryPointTime": "2017-04-26T06:37:50.8082715Z", + "recoveryPointType": "CrashConsistent" + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/RecoveryPoints_ListByReplicationProtectedItems.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/RecoveryPoints_ListByReplicationProtectedItems.json new file mode 100644 index 000000000000..33336a691d4f --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/RecoveryPoints_ListByReplicationProtectedItems.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "replicatedProtectedItemName": "f8491e4f-817a-40dd-a90c-af773978c75b", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "b22134ea-620c-474b-9fa5-3c1cb47708e3", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems/recoveryPoints", + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b/recoveryPoints/b22134ea-620c-474b-9fa5-3c1cb47708e3", + "properties": { + "recoveryPointTime": "2017-04-26T06:37:50.8082715Z", + "recoveryPointType": "CrashConsistent" + } + }, + { + "name": "34cb2d05-e730-4d3f-b96b-a60a5e92acb2", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems/recoveryPoints", + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b/recoveryPoints/34cb2d05-e730-4d3f-b96b-a60a5e92acb2", + "properties": { + "recoveryPointTime": "2017-04-26T07:37:30.9722019Z", + "recoveryPointType": "CrashConsistent" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationAlertSettings_Create.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationAlertSettings_Create.json new file mode 100644 index 000000000000..f2cdb78dd924 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationAlertSettings_Create.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "alertSettingName": "defaultAlertSetting", + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "request": { + "properties": { + "sendToOwners": "false", + "customEmailAddresses": [ + "ronehr@microsoft.com" + ], + "locale": "" + } + } + }, + "responses": { + "200": { + "body": { + "type": "Microsoft.RecoveryServices/vaults/replicationAlertSettings", + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationAlertSettings/defaultAlertSetting", + "name": "defaultAlertSetting", + "properties": { + "sendToOwners": "false", + "customEmailAddresses": [ + "ronehr@microsoft.com" + ], + "locale": "en-US" + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationAlertSettings_Get.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationAlertSettings_Get.json new file mode 100644 index 000000000000..0fc7da6d0385 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationAlertSettings_Get.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "alertSettingName": "defaultAlertSetting", + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "type": "Microsoft.RecoveryServices/vaults/replicationAlertSettings", + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationAlertSettings/defaultAlertSetting", + "name": "defaultAlertSetting", + "properties": { + "sendToOwners": "false", + "customEmailAddresses": [ + "ronehr@microsoft.com" + ], + "locale": "en-US" + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationAlertSettings_List.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationAlertSettings_List.json new file mode 100644 index 000000000000..e458dc9fb9ac --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationAlertSettings_List.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "type": "Microsoft.RecoveryServices/vaults/replicationAlertSettings", + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationAlertSettings/defaultAlertSetting", + "name": "defaultAlertSetting", + "properties": { + "sendToOwners": "false", + "customEmailAddresses": [ + "ronehr@microsoft.com" + ], + "locale": "en-US" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationEligibilityResults_Get.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationEligibilityResults_Get.json new file mode 100644 index 000000000000..fc4636d744b8 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationEligibilityResults_Get.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "virtualMachineName": "testVm1", + "resourceGroupName": "testRg1", + "subscriptionId": "d90d145a-4cdd-45a3-b2c4-971d69775278" + }, + "responses": { + "200": { + "body": { + "name": "default", + "type": "Microsoft.RecoveryServices/replicationEligibilityResults", + "id": "/subscriptions/d90d145a-4cdd-45a3-b2c4-971d69775278/resourceGroups/testRg1/providers/Microsoft.Compute/virtualMachines/testVm1/providers/Microsoft.RecoveryServices/replicationEligibilityResults/default", + "properties": { + "clientRequestId": "7d72ade7-b9f7-4d9b-8a19-15d9728c6190", + "errors": [ + { + "code": "A2AOperatingSystemNotSupported", + "message": "The A2A operation could not be completed as the virtual machine is running OS 'ubuntu' with version '18.04' which is not supported for replication.", + "possibleCauses": "OS version not supported.", + "recommendedAction": "The virtual machine is running unsupported Operating system. Refer to the documentation for supported OS versions - https://aka.ms/a2a-os-support-matrix.", + "status": "Error" + } + ] + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationEligibilityResults_List.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationEligibilityResults_List.json new file mode 100644 index 000000000000..810eb36f58ba --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationEligibilityResults_List.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "virtualMachineName": "testVm2", + "resourceGroupName": "testRg1", + "subscriptionId": "d90d145a-4cdd-45a3-b2c4-971d69775278" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "default", + "type": "Microsoft.RecoveryServices/replicationEligibilityResults", + "id": "/subscriptions/d90d145a-4cdd-45a3-b2c4-971d69775278/resourceGroups/testRg1/providers/Microsoft.Compute/virtualMachines/testVm2/providers/Microsoft.RecoveryServices/replicationEligibilityResults/default", + "properties": { + "clientRequestId": "a62c81df-e26e-47ea-ab4b-f1fcc1e5b135", + "errors": [ + { + "code": "AzureVmIsNotInDesiredProvisioningState", + "message": "Azure virtual machine with Id (/subscriptions/d90d145a-4cdd-45a3-b2c4-971d69775278/resourceGroups/testRg1/providers/Microsoft.Compute/virtualMachines/testVm2) is with provisioning state 'failed'. To enable replication, VM's provisioning state should be 'succeeded'.", + "possibleCauses": "Virtual machine is not in desired state.", + "recommendedAction": "\n Ensure that the VM's provisioning state is 'succeeded'.\n Refer to https://aka.ms/a2a-vm-state-issues to troubleshoot VM provisioning state issues.\n ", + "status": "Error" + }, + { + "code": "AzureVmIsNotInDesiredPowerState", + "message": "Azure virtual machine with Id (/subscriptions/d90d145a-4cdd-45a3-b2c4-971d69775278/resourceGroups/testRg1/providers/Microsoft.Compute/virtualMachines/testVm2) is with power status 'deallocated'. To enable replication, VM's power status should be 'running'.", + "possibleCauses": "Virtual machine is not in desired state.", + "recommendedAction": "\n Ensure that the VM's power status is 'running'.\n You can check the power status in 'VM > Settings > Properties > Status' in Azure portal.\n ", + "status": "Error" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationEvents_Get.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationEvents_Get.json new file mode 100644 index 000000000000..548a402e1134 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationEvents_Get.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "eventName": "654b71d0-b2ce-4e6e-a861-98528d4bd375", + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "type": "Microsoft.RecoveryServices/vaults/replicationEvents", + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationEvents/VmMonitoringEvent;9091989947769704276_516de684-0079-48f7-b44b-882923268654", + "name": "VmMonitoringEvent;9091989947769704276_516de684-0079-48f7-b44b-882923268654", + "properties": { + "eventCode": "d9a07b07-c7b5-49ca-ab6c-6926596dfe47", + "description": "Virtual machine health is OK", + "eventType": "VmHealth", + "affectedObjectFriendlyName": "vm1", + "severity": "OK", + "timeOfOccurrence": "2017-05-02T14:28:28.5071531Z", + "fabricId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1", + "providerSpecificDetails": { + "instanceType": "HyperVReplicaAzure" + }, + "eventSpecificDetails": { + "instanceType": "JobStatus" + }, + "healthErrors": [] + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationEvents_List.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationEvents_List.json new file mode 100644 index 000000000000..0408a7e93a88 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationEvents_List.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "type": "Microsoft.RecoveryServices/vaults/replicationEvents", + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationEvents/JobStatusMonitoringEvent;9091989892524070155_4ed6f1a6-9b6d-4048-9079-1307dd24b814", + "name": "JobStatusMonitoringEvent;9091989892524070155_4ed6f1a6-9b6d-4048-9079-1307dd24b814", + "properties": { + "eventCode": "d32574f6-f59e-4545-b5ac-bc88d545f089", + "description": "TestFailover - Failed", + "eventType": "JobStatus", + "affectedObjectFriendlyName": "vm1", + "severity": "Critical", + "timeOfOccurrence": "2017-05-02T16:00:33.0705652Z", + "fabricId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1", + "providerSpecificDetails": { + "instanceType": "HyperVReplicaAzure" + }, + "eventSpecificDetails": { + "instanceType": "JobStatus" + }, + "healthErrors": [ + { + "errorCode": "499", + "errorMessage": "An internal error occurred.", + "possibleCauses": "The operation failed due to an internal error.", + "recommendedAction": "Retry the last action. If the issue persists, contact Support." + } + ] + } + }, + { + "type": "Microsoft.RecoveryServices/vaults/replicationEvents", + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationEvents/VmMonitoringEvent;9091989947769704276_516de684-0079-48f7-b44b-882923268654", + "name": "VmMonitoringEvent;9091989947769704276_516de684-0079-48f7-b44b-882923268654", + "properties": { + "eventCode": "d9a07b07-c7b5-49ca-ab6c-6926596dfe47", + "description": "Virtual machine health is OK", + "eventType": "VmHealth", + "affectedObjectFriendlyName": "vm1", + "severity": "OK", + "timeOfOccurrence": "2017-05-02T14:28:28.5071531Z", + "fabricId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1", + "providerSpecificDetails": { + "instanceType": "HyperVReplicaAzure" + }, + "eventSpecificDetails": { + "instanceType": "JobStatus" + }, + "healthErrors": [] + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationFabrics_CheckConsistency.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationFabrics_CheckConsistency.json new file mode 100644 index 000000000000..c73b2ef7da84 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationFabrics_CheckConsistency.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "fabricName": "cloud1", + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "name": "cloud1", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics", + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1", + "properties": { + "friendlyName": "cloud1", + "encryptionDetails": { + "kekState": "None" + }, + "rolloverEncryptionDetails": { + "kekState": "None" + }, + "internalIdentifier": "6d224fc6-f326-5d35-96de-fbf51efb3179", + "bcdrState": "Valid", + "customDetails": { + "instanceType": "HyperVSite" + }, + "healthErrorDetails": [], + "health": "Normal" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationFabrics_Create.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationFabrics_Create.json new file mode 100644 index 000000000000..e50e5a0de1cb --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationFabrics_Create.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "fabricName": "cloud1", + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "input": { + "properties": { + "customDetails": { + "instanceType": "FabricSpecificCreationInput" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "cloud1", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics", + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1", + "properties": { + "friendlyName": "cloud1", + "encryptionDetails": { + "kekState": "None" + }, + "rolloverEncryptionDetails": { + "kekState": "None" + }, + "internalIdentifier": "6d224fc6-f326-5d35-96de-fbf51efb3179", + "bcdrState": "Valid", + "customDetails": { + "instanceType": "HyperVSite" + }, + "healthErrorDetails": [], + "health": "Normal" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationFabrics_Delete.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationFabrics_Delete.json new file mode 100644 index 000000000000..d9530738e86c --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationFabrics_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "fabricName": "cloud1", + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationFabrics_Get.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationFabrics_Get.json new file mode 100644 index 000000000000..aa7e8c665933 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationFabrics_Get.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "fabricName": "cloud1", + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "name": "cloud1", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics", + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1", + "properties": { + "friendlyName": "cloud1", + "encryptionDetails": { + "kekState": "None" + }, + "rolloverEncryptionDetails": { + "kekState": "None" + }, + "internalIdentifier": "6d224fc6-f326-5d35-96de-fbf51efb3179", + "bcdrState": "Valid", + "customDetails": { + "instanceType": "HyperVSite" + }, + "healthErrorDetails": [], + "health": "Normal" + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationFabrics_List.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationFabrics_List.json new file mode 100644 index 000000000000..b3008411d9d1 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationFabrics_List.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "cloud1", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics", + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1", + "properties": { + "friendlyName": "cloud1", + "encryptionDetails": { + "kekState": "None" + }, + "rolloverEncryptionDetails": { + "kekState": "None" + }, + "internalIdentifier": "6d224fc6-f326-5d35-96de-fbf51efb3179", + "bcdrState": "Valid", + "customDetails": { + "instanceType": "HyperVSite" + }, + "healthErrorDetails": [], + "health": "Normal" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationFabrics_MigrateToAad.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationFabrics_MigrateToAad.json new file mode 100644 index 000000000000..d9530738e86c --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationFabrics_MigrateToAad.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "fabricName": "cloud1", + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationFabrics_Purge.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationFabrics_Purge.json new file mode 100644 index 000000000000..d9530738e86c --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationFabrics_Purge.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "fabricName": "cloud1", + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationFabrics_ReassociateGateway.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationFabrics_ReassociateGateway.json new file mode 100644 index 000000000000..de5caeec1582 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationFabrics_ReassociateGateway.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "fabricName": "GRACE-V2A-1", + "api-version": "2021-03-01", + "resourceName": "MadhaviVault", + "resourceGroupName": "MadhaviVRG", + "subscriptionId": "7c943c1b-5122-4097-90c8-861411bdd574", + "failoverProcessServerRequest": { + "properties": { + "containerName": "cloud_1f3c15af-2256-4568-9e06-e1ef4f728f75", + "sourceProcessServerId": "AFA0EC54-1894-4E44-9CAB02DB8854B117", + "targetProcessServerId": "5D3ED340-85AE-C646-B338641E015DA405", + "vmsToMigrate": [ + "Vm1", + "Vm2" + ], + "updateType": "ServerLevel" + } + } + }, + "responses": { + "200": { + "body": { + "name": "bc15edf300344660d9c2965f5d9225593d99734f6580613c997033abc3512a56", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics", + "id": "/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/MadhaviVRG/providers/Microsoft.RecoveryServices/vaults/MadhaviVault/replicationFabrics/bc15edf300344660d9c2965f5d9225593d99734f6580613c997033abc3512a56", + "properties": { + "friendlyName": "GRACE-V2A-1", + "encryptionDetails": { + "kekState": "None" + }, + "rolloverEncryptionDetails": { + "kekState": "None" + }, + "internalIdentifier": "1f3c15af-2256-4568-9e06-e1ef4f728f75", + "bcdrState": "Valid", + "customDetails": { + "instanceType": "VMware" + }, + "healthErrorDetails": [], + "health": "Normal" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationFabrics_RenewCertificate.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationFabrics_RenewCertificate.json new file mode 100644 index 000000000000..31ab50ecb4d0 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationFabrics_RenewCertificate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "fabricName": "cloud1", + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "renewCertificate": { + "properties": { + "renewCertificateType": "Cloud" + } + } + }, + "responses": { + "200": { + "body": { + "name": "cloud1", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics", + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1", + "properties": { + "friendlyName": "cloud1", + "encryptionDetails": { + "kekState": "None" + }, + "rolloverEncryptionDetails": { + "kekState": "None" + }, + "internalIdentifier": "6d224fc6-f326-5d35-96de-fbf51efb3179", + "bcdrState": "Valid", + "customDetails": { + "instanceType": "HyperVSite" + }, + "healthErrorDetails": [], + "health": "Normal" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationJobs_Cancel.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationJobs_Cancel.json new file mode 100644 index 000000000000..8bf07e39217d --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationJobs_Cancel.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "jobName": "2653c648-fc72-4316-86f3-fdf8eaa0066b", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/2653c648-fc72-4316-86f3-fdf8eaa0066b", + "name": "2653c648-fc72-4316-86f3-fdf8eaa0066b", + "properties": { + "activityId": "bfbbf6dd-9cbb-4cbc-98a6-faecc8891579 ActivityId: 07cc35ca-b63f-4e42-83c9-81ae0191c322", + "scenarioName": "PlannedFailover", + "friendlyName": "Planned failover", + "state": "Cancelling", + "stateDescription": "Cancelling", + "tasks": [], + "errors": [], + "startTime": "2017-05-03T06:16:06.3235186Z", + "allowedActions": [], + "targetObjectId": "f8491e4f-817a-40dd-a90c-af773978c75b", + "targetObjectName": "vm1", + "targetInstanceType": "ProtectionEntity", + "customDetails": { + "instanceType": "AsrJobDetails", + "affectedObjectDetails": { + "PrimaryVmId": "f8491e4f-817a-40dd-a90c-af773978c75b", + "PrimaryVmName": "vm1", + "RecoveryVmId": "", + "RecoveryVmName": "vm1", + "ProtectionProfileId": "af095a1e-1f1b-5365-87c9-99162ebcfaf0", + "PrimaryCloudId": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "PrimaryCloudName": "cloud1", + "RecoveryCloudId": "d38048d4-b460-4791-8ece-108395ee8478", + "RecoveryCloudName": "Microsoft Azure", + "PrimaryVmmId": "6d224fc6-f326-5d35-96de-fbf51efb3179", + "PrimaryVmmName": "cloud1", + "RecoveryVmmId": "21a9403c-6ec1-44f2-b744-b4e50b792387", + "RecoveryVmmName": "Microsoft Azure", + "PrimaryFabricProviderId": "HyperVSite", + "RecoveryFabricProviderId": "Azure" + } + } + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationJobs_Export.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationJobs_Export.json new file mode 100644 index 000000000000..b9ba3aaa0892 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationJobs_Export.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "jobQueryParameter": { + "startTime": "2017-04-27T14:26:51.9161395Z", + "endTime": "2017-05-04T14:26:51.9161395Z", + "affectedObjectTypes": "", + "jobStatus": "" + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/37e0fc2b-13f2-4817-aafa-0cd807d46842", + "name": "37e0fc2b-13f2-4817-aafa-0cd807d46842", + "properties": { + "activityId": "36841d27-34f6-49ad-b572-e7dc263f100b-2017-05-04 14:26:47Z-Ibz ActivityId: c124df21-7661-4541-b32a-3c723ebbb045", + "scenarioName": "ExportJobs", + "state": "Succeeded", + "stateDescription": "Completed", + "tasks": [], + "errors": [], + "startTime": "2017-05-04T14:33:42.2765562Z", + "endTime": "2017-05-04T14:33:43Z", + "allowedActions": [], + "targetObjectId": "", + "targetObjectName": "", + "targetInstanceType": "Other", + "customDetails": { + "blobUri": "", + "sasToken": "", + "instanceType": "ExportJobDetails", + "affectedObjectDetails": {} + } + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationJobs_Get.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationJobs_Get.json new file mode 100644 index 000000000000..b45357831b3b --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationJobs_Get.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "jobName": "58776d0b-3141-48b2-a377-9ad863eb160d", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/32ea4b9e-de62-49a1-b062-7864d5c3b897", + "name": "32ea4b9e-de62-49a1-b062-7864d5c3b897", + "properties": { + "activityId": "fc8e9c8f-0e76-4b6b-8e7e-d37c1b31eba0 ActivityId: c506b6ba-0711-411e-8b09-1f3f4dcb824b", + "scenarioName": "DeleteRecoveryPlan", + "friendlyName": "Delete a recovery plan", + "state": "Succeeded", + "stateDescription": "Completed", + "tasks": [ + { + "taskId": "763326a2-01c9-4257-b2a1-0aac56465014", + "name": "DeleteRecoveryPlanTask", + "startTime": "2017-04-27T11:25:57.3029434Z", + "endTime": "2017-04-27T11:25:57.318574Z", + "allowedActions": [], + "friendlyName": "Delete a recovery plan task", + "state": "Succeeded", + "stateDescription": "Completed", + "taskType": "TaskDetails", + "customDetails": { + "instanceType": "ManualActionTaskDetails" + }, + "errors": [] + } + ], + "errors": [], + "startTime": "2017-04-27T11:25:56.800358Z", + "endTime": "2017-04-27T11:25:57Z", + "allowedActions": [], + "targetObjectId": "966c33bb-66e7-4567-9786-f80b0694f5f9", + "targetObjectName": "RPtest1", + "targetInstanceType": "RecoveryPlan", + "customDetails": { + "instanceType": "AsrJobDetails", + "affectedObjectDetails": { + "PrimaryVmmId": "6d224fc6-f326-5d35-96de-fbf51efb3179", + "PrimaryVmmName": "cloud1", + "RecoveryVmmId": "21a9403c-6ec1-44f2-b744-b4e50b792387", + "PrimaryFabricProviderId": "HyperVSite", + "RecoveryFabricProviderId": "Azure" + } + } + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationJobs_List.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationJobs_List.json new file mode 100644 index 000000000000..55ad1b8e77ec --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationJobs_List.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/1557d73f-6244-491e-8f0b-d300f752240b", + "name": "1557d73f-6244-491e-8f0b-d300f752240b", + "properties": { + "scenarioName": "AddProtectionProfile", + "friendlyName": "Create replication policy", + "state": "Succeeded", + "stateDescription": "Completed", + "tasks": [], + "errors": [], + "startTime": "2017-04-27T12:46:04.641851Z", + "endTime": "2017-04-27T12:46:11Z", + "allowedActions": [], + "targetObjectId": "af095a1e-1f1b-5365-87c9-99162ebcfaf0", + "targetObjectName": "protectionprofile1", + "targetInstanceType": "ProtectionProfile" + } + }, + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/0236416a-7573-4913-a4a1-6a286fbb1ceb", + "name": "0236416a-7573-4913-a4a1-6a286fbb1ceb", + "properties": { + "scenarioName": "RegisterDra", + "friendlyName": "Register the Azure Site Recovery Provider", + "state": "Succeeded", + "stateDescription": "Completed", + "tasks": [], + "errors": [], + "startTime": "2017-05-02T14:07:19.2784338Z", + "endTime": "2017-05-02T14:07:21Z", + "allowedActions": [], + "targetObjectId": "6d224fc6-f326-5d35-96de-fbf51efb3179", + "targetObjectName": "CP-B3L40406-12.ntdev.corp.microsoft.com", + "targetInstanceType": "Server" + } + }, + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/2438d560-80f0-420b-839e-5c8ee0af90a1", + "name": "2438d560-80f0-420b-839e-5c8ee0af90a1", + "properties": { + "scenarioName": "CreateSite", + "friendlyName": "Create a site", + "state": "Succeeded", + "stateDescription": "Completed", + "tasks": [], + "errors": [], + "startTime": "2017-05-02T05:56:14.569095Z", + "endTime": "2017-05-02T05:56:16Z", + "allowedActions": [], + "targetObjectId": "6d224fc6-f326-5d35-96de-fbf51efb3179", + "targetObjectName": "cloud1", + "targetInstanceType": "Server" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationJobs_Restart.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationJobs_Restart.json new file mode 100644 index 000000000000..13d688d66f9c --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationJobs_Restart.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "jobName": "0664564c-353e-401a-ab0c-722257c10e25", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/42c7d13b-790c-4609-8e0b-0936f1c5e5fb", + "name": "42c7d13b-790c-4609-8e0b-0936f1c5e5fb", + "properties": { + "activityId": "2443a5b4-e675-499f-8983-4126ea0e232c ActivityId: 2a776896-5e56-470b-af55-3c981283c4bc", + "scenarioName": "RestartJob", + "friendlyName": "Restart job", + "state": "Succeeded", + "stateDescription": "Completed", + "tasks": [ + { + "taskId": "RemediateWfTask", + "name": "RemediateTask", + "startTime": "2017-05-03T10:45:13.5677237Z", + "endTime": "2017-05-03T10:45:13.6458467Z", + "allowedActions": [], + "friendlyName": "Restarting job", + "state": "Succeeded", + "stateDescription": "Completed", + "taskType": "TaskDetails", + "customDetails": { + "instanceType": "ManualActionTaskDetails" + }, + "errors": [] + } + ], + "errors": [], + "startTime": "2017-05-03T10:45:12.1320757Z", + "endTime": "2017-05-03T10:45:14Z", + "allowedActions": [], + "targetObjectId": "f8491e4f-817a-40dd-a90c-af773978c75b", + "targetObjectName": "vm1", + "targetInstanceType": "ProtectionEntity", + "customDetails": { + "instanceType": "AsrJobDetails", + "affectedObjectDetails": {} + } + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationJobs_Resume.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationJobs_Resume.json new file mode 100644 index 000000000000..0ee91ea4d2b8 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationJobs_Resume.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "jobName": "58776d0b-3141-48b2-a377-9ad863eb160d", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "resumeJobParams": { + "properties": { + "comments": " " + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/58776d0b-3141-48b2-a377-9ad863eb160d", + "name": "58776d0b-3141-48b2-a377-9ad863eb160d", + "properties": { + "activityId": "1b808dfe-0451-44ac-894c-c7270711cd8c ActivityId: 9f6f849e-922a-43ec-a7a6-0be45fc85c56", + "scenarioName": "TestFailover", + "friendlyName": "Test failover", + "state": "Suspended", + "stateDescription": "WaitingForStopTestFailover", + "tasks": [], + "errors": [], + "startTime": "2017-04-25T09:57:57.0357829Z", + "allowedActions": [ + "Cancel", + "Resume" + ], + "targetObjectId": "f8491e4f-817a-40dd-a90c-af773978c75b", + "targetObjectName": "vm1", + "targetInstanceType": "ProtectionEntity", + "customDetails": { + "instanceType": "TestFailoverJobDetails", + "testFailoverStatus": "Completed", + "comments": " ", + "networkName": "vnetavrai", + "networkFriendlyName": "vnetavrai", + "networkType": "VmNetworkAsInput", + "protectedItemDetails": [ + { + "name": "f8491e4f-817a-40dd-a90c-af773978c75b", + "friendlyName": "vm1", + "testVmName": "vm1-test", + "testVmFriendlyName": "vm1-test", + "networkConnectionStatus": "Connected", + "networkFriendlyName": "vnetavrai", + "subnet": "Subnet1" + } + ], + "affectedObjectDetails": { + "PrimaryVmId": "f8491e4f-817a-40dd-a90c-af773978c75b", + "PrimaryVmName": "vm1", + "RecoveryVmId": "", + "RecoveryVmName": "vm1", + "ProtectionProfileId": "af095a1e-1f1b-5365-87c9-99162ebcfaf0", + "PrimaryCloudId": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "PrimaryCloudName": "cloud1", + "RecoveryCloudId": "d38048d4-b460-4791-8ece-108395ee8478", + "RecoveryCloudName": "Microsoft Azure", + "PrimaryVmmId": "6d224fc6-f326-5d35-96de-fbf51efb3179", + "PrimaryVmmName": "cloud1", + "RecoveryVmmId": "21a9403c-6ec1-44f2-b744-b4e50b792387", + "RecoveryVmmName": "Microsoft Azure", + "PrimaryFabricProviderId": "HyperVSite", + "RecoveryFabricProviderId": "Azure" + } + } + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationLogicalNetworks_Get.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationLogicalNetworks_Get.json new file mode 100644 index 000000000000..c252642eb5cf --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationLogicalNetworks_Get.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "logicalNetworkName": "87ab394f-165f-4aa9-bd84-b018500b4509", + "fabricName": "cloud1", + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationLogicalNetworks", + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationLogicalNetworks/53f5a278-ae85-4001-bd5f-f6a02e1f579d", + "name": "87ab394f-165f-4aa9-bd84-b018500b4509", + "properties": { + "friendlyName": "corp", + "networkVirtualizationStatus": "NetworkVirtualizationNotEnabled", + "logicalNetworkUsage": "NotUsedAsPrivateNetworkForTestFailover", + "logicalNetworkDefinitionsStatus": "LogicalNetworkDefinitionsNotIsolated" + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationLogicalNetworks_ListByReplicationFabrics.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationLogicalNetworks_ListByReplicationFabrics.json new file mode 100644 index 000000000000..4b1e9c83fa59 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationLogicalNetworks_ListByReplicationFabrics.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "fabricName": "cloud1", + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationLogicalNetworks", + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationLogicalNetworks/53f5a278-ae85-4001-bd5f-f6a02e1f579d", + "name": "87ab394f-165f-4aa9-bd84-b018500b4509", + "properties": { + "friendlyName": "corp", + "networkVirtualizationStatus": "NetworkVirtualizationNotEnabled", + "logicalNetworkUsage": "NotUsedAsPrivateNetworkForTestFailover", + "logicalNetworkDefinitionsStatus": "LogicalNetworkDefinitionsNotIsolated" + } + }, + { + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationLogicalNetworks", + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationLogicalNetworks/87ab394f-165f-4aa9-bd84-b018500b4509", + "name": "53f5a278-ae85-4001-bd5f-f6a02e1f579d", + "properties": { + "friendlyName": "LN-VLANNetwork-4", + "networkVirtualizationStatus": "NetworkVirtualizationNotEnabled", + "logicalNetworkUsage": "NotUsedAsPrivateNetworkForTestFailover", + "logicalNetworkDefinitionsStatus": "LogicalNetworkDefinitionsIsolated" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationMigrationItems_Create.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationMigrationItems_Create.json new file mode 100644 index 000000000000..92365c6cb646 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationMigrationItems_Create.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "migrationItemName": "virtualmachine1", + "protectionContainerName": "vmwareContainer1", + "fabricName": "vmwarefabric1", + "resourceName": "migrationvault", + "resourceGroupName": "resourcegroup1", + "subscriptionId": "cb53d0c3-bd59-4721-89bc-06916a9147ef", + "input": { + "properties": { + "policyId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationPolicies/vmwarepolicy1", + "providerSpecificDetails": { + "instanceType": "VMwareCbt", + "disksToInclude": [ + { + "diskId": "disk1", + "isOSDisk": "true", + "logStorageAccountId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.Storage/storageAccounts/logStorageAccount1", + "logStorageAccountSasSecretName": "logStorageSas" + } + ], + "vmwareMachineId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.OffAzure/VMwareSites/vmwaresite1/machines/virtualmachine1", + "targetNetworkId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.Network/virtualNetworks/virtualNetwork1", + "targetResourceGroupId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1", + "snapshotRunAsAccountId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.OffAzure/VMwareSites/vmwaresite1/runasaccounts/snapshotRunAsAccount1", + "dataMoverRunAsAccountId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.OffAzure/VMwareSites/vmwaresite1/runasaccounts/dataMoverRunAsAccount1" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationProtectionContainers/vmwareContainer1/replicationMigrationItems/virtualmachine1", + "name": "virtualmachine1", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationMigrationItems", + "properties": { + "machineName": "vm-0520-2", + "migrationState": "Replicating", + "migrationStateDescription": "Ready to migrate", + "testMigrateState": "None", + "testMigrateStateDescription": "None", + "policyFriendlyName": "vmwarepolicy1", + "policyId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationPolicies/vmwarepolicy1", + "allowedOperations": [ + "Migrate", + "DisableMigration", + "TestMigrate", + "TestMigrateCleanup" + ], + "currentJob": { + "jobName": "None", + "jobId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationJobs/None", + "startTime": "2017-04-26T06:37:50.8082715Z" + }, + "providerSpecificDetails": { + "instanceType": "VMwareCbt" + }, + "recoveryServicesProviderId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationRecoveryServicesProviders/45b55118-f42d-505f-8bde-f3745258171f" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationMigrationItems_Delete.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationMigrationItems_Delete.json new file mode 100644 index 000000000000..d16cb59cff64 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationMigrationItems_Delete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "migrationItemName": "virtualmachine1", + "protectionContainerName": "vmwareContainer1", + "fabricName": "vmwarefabric1", + "resourceName": "migrationvault", + "resourceGroupName": "resourcegroup1", + "subscriptionId": "cb53d0c3-bd59-4721-89bc-06916a9147ef" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationMigrationItems_Get.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationMigrationItems_Get.json new file mode 100644 index 000000000000..230bb612875a --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationMigrationItems_Get.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "migrationItemName": "virtualmachine1", + "protectionContainerName": "vmwareContainer1", + "fabricName": "vmwarefabric1", + "resourceName": "migrationvault", + "resourceGroupName": "resourcegroup1", + "subscriptionId": "cb53d0c3-bd59-4721-89bc-06916a9147ef" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationProtectionContainers/vmwareContainer1/replicationMigrationItems/virtualmachine1", + "name": "virtualmachine1", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationMigrationItems", + "properties": { + "machineName": "vm-0520-2", + "migrationState": "Replicating", + "migrationStateDescription": "Ready to migrate", + "testMigrateState": "None", + "testMigrateStateDescription": "None", + "policyFriendlyName": "vmwarepolicy1", + "policyId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationPolicies/vmwarepolicy1", + "allowedOperations": [ + "Migrate", + "DisableMigration", + "TestMigrate", + "TestMigrateCleanup" + ], + "currentJob": { + "jobName": "None", + "jobId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationJobs/None", + "startTime": "2017-04-26T06:37:50.8082715Z" + }, + "providerSpecificDetails": { + "instanceType": "VMwareCbt" + }, + "recoveryServicesProviderId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationRecoveryServicesProviders/45b55118-f42d-505f-8bde-f3745258171f" + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationMigrationItems_List.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationMigrationItems_List.json new file mode 100644 index 000000000000..44d9fed8cf2f --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationMigrationItems_List.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "resourceName": "migrationvault", + "resourceGroupName": "resourcegroup1", + "subscriptionId": "cb53d0c3-bd59-4721-89bc-06916a9147ef" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationProtectionContainers/vmwareContainer1/replicationMigrationItems/virtualmachine1", + "name": "virtualmachine1", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationMigrationItems", + "properties": { + "machineName": "vm-0520-2", + "migrationState": "Replicating", + "migrationStateDescription": "Ready to migrate", + "testMigrateState": "None", + "testMigrateStateDescription": "None", + "policyFriendlyName": "vmwarepolicy1", + "policyId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationPolicies/vmwarepolicy1", + "allowedOperations": [ + "Migrate", + "DisableMigration", + "TestMigrate", + "TestMigrateCleanup" + ], + "currentJob": { + "jobName": "None", + "jobId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationJobs/None", + "startTime": "2017-04-26T06:37:50.8082715Z" + }, + "providerSpecificDetails": { + "instanceType": "VMwareCbt" + }, + "recoveryServicesProviderId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationRecoveryServicesProviders/45b55118-f42d-505f-8bde-f3745258171f" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationMigrationItems_ListByReplicationProtectionContainers.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationMigrationItems_ListByReplicationProtectionContainers.json new file mode 100644 index 000000000000..a04c9b53f2f8 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationMigrationItems_ListByReplicationProtectionContainers.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "protectionContainerName": "vmwareContainer1", + "fabricName": "vmwarefabric1", + "resourceName": "migrationvault", + "resourceGroupName": "resourcegroup1", + "subscriptionId": "cb53d0c3-bd59-4721-89bc-06916a9147ef" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationProtectionContainers/vmwareContainer1/replicationMigrationItems/virtualmachine1", + "name": "virtualmachine1", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationMigrationItems", + "properties": { + "machineName": "vm-0520-2", + "migrationState": "Replicating", + "migrationStateDescription": "Ready to migrate", + "testMigrateState": "None", + "testMigrateStateDescription": "None", + "policyFriendlyName": "vmwarepolicy1", + "policyId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationPolicies/vmwarepolicy1", + "allowedOperations": [ + "Migrate", + "DisableMigration", + "TestMigrate", + "TestMigrateCleanup" + ], + "currentJob": { + "jobName": "None", + "jobId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationJobs/None", + "startTime": "2017-04-26T06:37:50.8082715Z" + }, + "providerSpecificDetails": { + "instanceType": "VMwareCbt" + }, + "recoveryServicesProviderId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationRecoveryServicesProviders/45b55118-f42d-505f-8bde-f3745258171f" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationMigrationItems_Migrate.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationMigrationItems_Migrate.json new file mode 100644 index 000000000000..3fa73effdc10 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationMigrationItems_Migrate.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "migrationItemName": "virtualmachine1", + "protectionContainerName": "vmwareContainer1", + "fabricName": "vmwarefabric1", + "resourceName": "migrationvault", + "resourceGroupName": "resourcegroup1", + "subscriptionId": "cb53d0c3-bd59-4721-89bc-06916a9147ef", + "migrateInput": { + "properties": { + "providerSpecificDetails": { + "instanceType": "VMwareCbt", + "performShutdown": "true" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationProtectionContainers/vmwareContainer1/replicationMigrationItems/virtualmachine1", + "name": "virtualmachine1", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationMigrationItems", + "properties": { + "machineName": "vm-0520-2", + "migrationState": "Replicating", + "migrationStateDescription": "Ready to migrate", + "testMigrateState": "None", + "testMigrateStateDescription": "None", + "policyFriendlyName": "vmwarepolicy1", + "policyId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationPolicies/vmwarepolicy1", + "allowedOperations": [ + "Migrate", + "DisableMigration", + "TestMigrate", + "TestMigrateCleanup" + ], + "currentJob": { + "jobName": "None", + "jobId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationJobs/None", + "startTime": "2017-04-26T06:37:50.8082715Z" + }, + "providerSpecificDetails": { + "instanceType": "VMwareCbt" + }, + "recoveryServicesProviderId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationRecoveryServicesProviders/45b55118-f42d-505f-8bde-f3745258171f" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationMigrationItems_TestMigrate.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationMigrationItems_TestMigrate.json new file mode 100644 index 000000000000..d0e787598360 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationMigrationItems_TestMigrate.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "migrationItemName": "virtualmachine1", + "protectionContainerName": "vmwareContainer1", + "fabricName": "vmwarefabric1", + "resourceName": "migrationvault", + "resourceGroupName": "resourcegroup1", + "subscriptionId": "cb53d0c3-bd59-4721-89bc-06916a9147ef", + "testMigrateInput": { + "properties": { + "providerSpecificDetails": { + "instanceType": "VMwareCbt", + "recoveryPointId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationProtectionContainers/vmwareContainer1/replicationMigrationItems/virtualmachine1/migrationRecoveryPoints/9e737191-317e-43d0-8c83-e32ac3b34686", + "networkId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.Network/virtualNetworks/virtualNetwork1" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationProtectionContainers/vmwareContainer1/replicationMigrationItems/virtualmachine1", + "name": "virtualmachine1", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationMigrationItems", + "properties": { + "machineName": "vm-0520-2", + "migrationState": "Replicating", + "migrationStateDescription": "Ready to migrate", + "testMigrateState": "None", + "testMigrateStateDescription": "None", + "policyFriendlyName": "vmwarepolicy1", + "policyId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationPolicies/vmwarepolicy1", + "allowedOperations": [ + "Migrate", + "DisableMigration", + "TestMigrate", + "TestMigrateCleanup" + ], + "currentJob": { + "jobName": "None", + "jobId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationJobs/None", + "startTime": "2017-04-26T06:37:50.8082715Z" + }, + "providerSpecificDetails": { + "instanceType": "VMwareCbt" + }, + "recoveryServicesProviderId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationRecoveryServicesProviders/45b55118-f42d-505f-8bde-f3745258171f" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationMigrationItems_TestMigrateCleanup.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationMigrationItems_TestMigrateCleanup.json new file mode 100644 index 000000000000..7726316c04fa --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationMigrationItems_TestMigrateCleanup.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "migrationItemName": "virtualmachine1", + "protectionContainerName": "vmwareContainer1", + "fabricName": "vmwarefabric1", + "resourceName": "migrationvault", + "resourceGroupName": "resourcegroup1", + "subscriptionId": "cb53d0c3-bd59-4721-89bc-06916a9147ef", + "testMigrateCleanupInput": { + "properties": { + "comments": "Test Failover Cleanup" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationProtectionContainers/vmwareContainer1/replicationMigrationItems/virtualmachine1", + "name": "virtualmachine1", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationMigrationItems", + "properties": { + "machineName": "vm-0520-2", + "migrationState": "Replicating", + "migrationStateDescription": "Ready to migrate", + "testMigrateState": "None", + "testMigrateStateDescription": "None", + "policyFriendlyName": "vmwarepolicy1", + "policyId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationPolicies/vmwarepolicy1", + "allowedOperations": [ + "Migrate", + "DisableMigration", + "TestMigrate", + "TestMigrateCleanup" + ], + "currentJob": { + "jobName": "None", + "jobId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationJobs/None", + "startTime": "2017-04-26T06:37:50.8082715Z" + }, + "providerSpecificDetails": { + "instanceType": "VMwareCbt" + }, + "recoveryServicesProviderId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationRecoveryServicesProviders/45b55118-f42d-505f-8bde-f3745258171f" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationMigrationItems_Update.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationMigrationItems_Update.json new file mode 100644 index 000000000000..506356ec9d5a --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationMigrationItems_Update.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "migrationItemName": "virtualmachine1", + "protectionContainerName": "vmwareContainer1", + "fabricName": "vmwarefabric1", + "resourceName": "migrationvault", + "resourceGroupName": "resourcegroup1", + "subscriptionId": "cb53d0c3-bd59-4721-89bc-06916a9147ef", + "input": { + "properties": { + "providerSpecificDetails": { + "instanceType": "VMwareCbt" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationProtectionContainers/vmwareContainer1/replicationMigrationItems/virtualmachine1", + "name": "virtualmachine1", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationMigrationItems", + "properties": { + "machineName": "vm-0520-2", + "migrationState": "Replicating", + "migrationStateDescription": "Ready to migrate", + "testMigrateState": "None", + "testMigrateStateDescription": "None", + "policyFriendlyName": "vmwarepolicy1", + "policyId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationPolicies/vmwarepolicy1", + "allowedOperations": [ + "Migrate", + "DisableMigration", + "TestMigrate", + "TestMigrateCleanup" + ], + "currentJob": { + "jobName": "None", + "jobId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationJobs/None", + "startTime": "2017-04-26T06:37:50.8082715Z" + }, + "providerSpecificDetails": { + "instanceType": "VMwareCbt" + }, + "recoveryServicesProviderId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationRecoveryServicesProviders/45b55118-f42d-505f-8bde-f3745258171f" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationNetworkMappings_Create.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationNetworkMappings_Create.json new file mode 100644 index 000000000000..98236f61459c --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationNetworkMappings_Create.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "fabricName": "b0cef6e9a4437b81803d0b55ada4f700ab66caae59c35d62723a1589c0cd13ac", + "api-version": "2021-03-01", + "resourceName": "srce2avaultbvtaC27", + "resourceGroupName": "srcBvte2a14C27", + "subscriptionId": "9112a37f-0f3e-46ec-9c00-060c6edca071", + "networkName": "e2267b5c-2650-49bd-ab3f-d66aae694c06", + "networkMappingName": "corpe2amap", + "input": { + "properties": { + "recoveryFabricName": "Microsoft Azure", + "recoveryNetworkId": "/subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/siterecoveryProd1/providers/Microsoft.Network/virtualNetworks/vnetavrai", + "fabricSpecificDetails": { + "instanceType": "VmmToAzure" + } + } + } + }, + "responses": { + "200": { + "body": { + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationNetworks/replicationNetworkMappings", + "id": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/srcBvte2a14C27/providers/Microsoft.RecoveryServices/vaults/srce2avaultbvtaC27/replicationFabrics/b0cef6e9a4437b81803d0b55ada4f700ab66caae59c35d62723a1589c0cd13ac/replicationNetworks/e2267b5c-2650-49bd-ab3f-d66aae694c06/replicationNetworkMappings/corpe2amap", + "name": "corpe2amap", + "properties": { + "state": "Paired", + "primaryNetworkFriendlyName": "corp", + "primaryNetworkId": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/srcBvte2a14C27/providers/Microsoft.RecoveryServices/vaults/srce2avaultbvtaC27/replicationFabrics/d49858f157601230a6ac5862fbbc6e63bf38d23ecd96cf953767945d457fe9d5/replicationNetworks/e2267b5c-2650-49bd-ab3f-d66aae694c06", + "primaryFabricFriendlyName": "CP-B3L30108-01.ntdev.corp.microsoft.com", + "recoveryNetworkFriendlyName": "vnetavrai", + "recoveryNetworkId": "/subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/siterecoveryProd1/providers/Microsoft.Network/virtualNetworks/vnetavrai", + "recoveryFabricArmId": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/srcBvte2a14C27/providers/Microsoft.RecoveryServices/vaults/srce2avaultbvtaC27/replicationFabrics/d49858f157601230a6ac5862fbbc6e63bf38d23ecd96cf953767945d457fe9d5", + "recoveryFabricFriendlyName": "Microsoft Azure", + "fabricSpecificSettings": { + "instanceType": "VmmToAzure" + } + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationNetworkMappings_Delete.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationNetworkMappings_Delete.json new file mode 100644 index 000000000000..46bcce5e337b --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationNetworkMappings_Delete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "fabricName": "b0cef6e9a4437b81803d0b55ada4f700ab66caae59c35d62723a1589c0cd13ac", + "api-version": "2021-03-01", + "resourceName": "srce2avaultbvtaC27", + "resourceGroupName": "srcBvte2a14C27", + "subscriptionId": "9112a37f-0f3e-46ec-9c00-060c6edca071", + "networkName": "e2267b5c-2650-49bd-ab3f-d66aae694c06", + "networkMappingName": "corpe2amap" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationNetworkMappings_Get.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationNetworkMappings_Get.json new file mode 100644 index 000000000000..a6dae29fc166 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationNetworkMappings_Get.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "fabricName": "b0cef6e9a4437b81803d0b55ada4f700ab66caae59c35d62723a1589c0cd13ac", + "api-version": "2021-03-01", + "resourceName": "srce2avaultbvtaC27", + "resourceGroupName": "srcBvte2a14C27", + "subscriptionId": "9112a37f-0f3e-46ec-9c00-060c6edca071", + "networkName": "e2267b5c-2650-49bd-ab3f-d66aae694c06", + "networkMappingName": "corpe2amap" + }, + "responses": { + "200": { + "body": { + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationNetworks/replicationNetworkMappings", + "id": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/srcBvte2a14C27/providers/Microsoft.RecoveryServices/vaults/srce2avaultbvtaC27/replicationFabrics/b0cef6e9a4437b81803d0b55ada4f700ab66caae59c35d62723a1589c0cd13ac/replicationNetworks/e2267b5c-2650-49bd-ab3f-d66aae694c06/replicationNetworkMappings/corpe2amap", + "name": "corpe2amap", + "properties": { + "state": "Paired", + "primaryNetworkFriendlyName": "corp", + "primaryNetworkId": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/srcBvte2a14C27/providers/Microsoft.RecoveryServices/vaults/srce2avaultbvtaC27/replicationFabrics/d49858f157601230a6ac5862fbbc6e63bf38d23ecd96cf953767945d457fe9d5/replicationNetworks/e2267b5c-2650-49bd-ab3f-d66aae694c06", + "primaryFabricFriendlyName": "CP-B3L30108-01.ntdev.corp.microsoft.com", + "recoveryNetworkFriendlyName": "vnetavrai", + "recoveryNetworkId": "/subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/siterecoveryProd1/providers/Microsoft.Network/virtualNetworks/vnetavrai", + "recoveryFabricArmId": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/srcBvte2a14C27/providers/Microsoft.RecoveryServices/vaults/srce2avaultbvtaC27/replicationFabrics/d49858f157601230a6ac5862fbbc6e63bf38d23ecd96cf953767945d457fe9d5", + "recoveryFabricFriendlyName": "Microsoft Azure", + "fabricSpecificSettings": { + "instanceType": "VmmToAzure" + } + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationNetworkMappings_List.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationNetworkMappings_List.json new file mode 100644 index 000000000000..a666135bb7c6 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationNetworkMappings_List.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "resourceName": "srce2avaultbvtaC27", + "resourceGroupName": "srcBvte2a14C27", + "subscriptionId": "9112a37f-0f3e-46ec-9c00-060c6edca071" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "type": "Microsoft.RecoveryServicesBVTD2/vaults/replicationFabrics/replicationNetworks/replicationNetworkMappings", + "id": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/srcBvte2a14C27/providers/Microsoft.RecoveryServicesBVTD2/vaults/srce2avaultbvtaC27/replicationFabrics/b0cef6e9a4437b81803d0b55ada4f700ab66caae59c35d62723a1589c0cd13ac/replicationNetworks/e2267b5c-2650-49bd-ab3f-d66aae694c06/replicationNetworkMappings/corpe2amap", + "name": "corpe2amap", + "properties": { + "state": "Paired", + "primaryNetworkFriendlyName": "corp", + "primaryNetworkId": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/srcBvte2a14C27/providers/Microsoft.RecoveryServicesBVTD2/vaults/srce2avaultbvtaC27/replicationFabrics/d49858f157601230a6ac5862fbbc6e63bf38d23ecd96cf953767945d457fe9d5/replicationNetworks/e2267b5c-2650-49bd-ab3f-d66aae694c06", + "primaryFabricFriendlyName": "CP-B3L30108-01.ntdev.corp.microsoft.com", + "recoveryNetworkFriendlyName": "vnetavrai", + "recoveryNetworkId": "/subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/siterecoveryProd1/providers/Microsoft.Network/virtualNetworks/vnetavrai", + "recoveryFabricArmId": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/srcBvte2a14C27/providers/Microsoft.RecoveryServicesBVTD2/vaults/srce2avaultbvtaC27/replicationFabrics/d49858f157601230a6ac5862fbbc6e63bf38d23ecd96cf953767945d457fe9d5", + "recoveryFabricFriendlyName": "Microsoft Azure", + "fabricSpecificSettings": { + "instanceType": "VmmToAzure" + } + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationNetworkMappings_ListByReplicationNetworks.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationNetworkMappings_ListByReplicationNetworks.json new file mode 100644 index 000000000000..56429687794f --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationNetworkMappings_ListByReplicationNetworks.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "networkName": "e2267b5c-2650-49bd-ab3f-d66aae694c06", + "fabricName": "b0cef6e9a4437b81803d0b55ada4f700ab66caae59c35d62723a1589c0cd13ac", + "api-version": "2021-03-01", + "resourceName": "srce2avaultbvtaC27", + "resourceGroupName": "srcBvte2a14C27", + "subscriptionId": "9112a37f-0f3e-46ec-9c00-060c6edca071" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationNetworks/replicationNetworkMappings", + "id": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/srcBvte2a14C27/providers/Microsoft.RecoveryServices/vaults/srce2avaultbvtaC27/replicationFabrics/b0cef6e9a4437b81803d0b55ada4f700ab66caae59c35d62723a1589c0cd13ac/replicationNetworks/e2267b5c-2650-49bd-ab3f-d66aae694c06/replicationNetworkMappings/corpe2amap", + "name": "corpe2amap", + "properties": { + "state": "Paired", + "primaryNetworkFriendlyName": "corp", + "primaryNetworkId": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/srcBvte2a14C27/providers/Microsoft.RecoveryServices/vaults/srce2avaultbvtaC27/replicationFabrics/d49858f157601230a6ac5862fbbc6e63bf38d23ecd96cf953767945d457fe9d5/replicationNetworks/e2267b5c-2650-49bd-ab3f-d66aae694c06", + "primaryFabricFriendlyName": "CP-B3L30108-01.ntdev.corp.microsoft.com", + "recoveryNetworkFriendlyName": "vnetavrai", + "recoveryNetworkId": "/subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/siterecoveryProd1/providers/Microsoft.Network/virtualNetworks/vnetavrai", + "recoveryFabricArmId": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/srcBvte2a14C27/providers/Microsoft.RecoveryServices/vaults/srce2avaultbvtaC27/replicationFabrics/d49858f157601230a6ac5862fbbc6e63bf38d23ecd96cf953767945d457fe9d5", + "recoveryFabricFriendlyName": "Microsoft Azure", + "fabricSpecificSettings": { + "instanceType": "VmmToAzure" + } + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationNetworkMappings_Update.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationNetworkMappings_Update.json new file mode 100644 index 000000000000..46fbc6db9336 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationNetworkMappings_Update.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "fabricName": "b0cef6e9a4437b81803d0b55ada4f700ab66caae59c35d62723a1589c0cd13ac", + "api-version": "2021-03-01", + "resourceName": "srce2avaultbvtaC27", + "resourceGroupName": "srcBvte2a14C27", + "subscriptionId": "9112a37f-0f3e-46ec-9c00-060c6edca071", + "networkName": "e2267b5c-2650-49bd-ab3f-d66aae694c06", + "networkMappingName": "corpe2amap", + "input": { + "properties": { + "recoveryFabricName": "Microsoft Azure", + "recoveryNetworkId": "/subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/siterecoveryProd1/providers/Microsoft.Network/virtualNetworks/vnetavrai2", + "fabricSpecificDetails": { + "instanceType": "VmmToAzure" + } + } + } + }, + "responses": { + "200": { + "body": { + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationNetworks/replicationNetworkMappings", + "id": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/srcBvte2a14C27/providers/Microsoft.RecoveryServices/vaults/srce2avaultbvtaC27/replicationFabrics/b0cef6e9a4437b81803d0b55ada4f700ab66caae59c35d62723a1589c0cd13ac/replicationNetworks/e2267b5c-2650-49bd-ab3f-d66aae694c06/replicationNetworkMappings/corpe2amap", + "name": "corpe2amap", + "properties": { + "state": "Paired", + "primaryNetworkFriendlyName": "corp", + "primaryNetworkId": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/srcBvte2a14C27/providers/Microsoft.RecoveryServices/vaults/srce2avaultbvtaC27/replicationFabrics/d49858f157601230a6ac5862fbbc6e63bf38d23ecd96cf953767945d457fe9d5/replicationNetworks/e2267b5c-2650-49bd-ab3f-d66aae694c06", + "primaryFabricFriendlyName": "CP-B3L30108-01.ntdev.corp.microsoft.com", + "recoveryNetworkFriendlyName": "vnetavrai2", + "recoveryNetworkId": "/subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/siterecoveryProd1/providers/Microsoft.Network/virtualNetworks/vnetavrai2", + "recoveryFabricArmId": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/srcBvte2a14C27/providers/Microsoft.RecoveryServices/vaults/srce2avaultbvtaC27/replicationFabrics/d49858f157601230a6ac5862fbbc6e63bf38d23ecd96cf953767945d457fe9d5", + "recoveryFabricFriendlyName": "Microsoft Azure", + "fabricSpecificSettings": { + "instanceType": "VmmToAzure" + } + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationNetworks_Get.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationNetworks_Get.json new file mode 100644 index 000000000000..882a3b45eb8d --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationNetworks_Get.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "fabricName": "b0cef6e9a4437b81803d0b55ada4f700ab66caae59c35d62723a1589c0cd13ac", + "api-version": "2021-03-01", + "resourceName": "srce2avaultbvtaC27", + "resourceGroupName": "srcBvte2a14C27", + "subscriptionId": "9112a37f-0f3e-46ec-9c00-060c6edca071", + "networkName": "93ce99d7-1219-4914-aa61-73fe5023988e" + }, + "responses": { + "200": { + "body": { + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationNetworks", + "id": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/srcBvte2a14C27/providers/Microsoft.RecoveryServices/vaults/srce2avaultbvtaC27/replicationFabrics/b0cef6e9a4437b81803d0b55ada4f700ab66caae59c35d62723a1589c0cd13ac/replicationNetworks/93ce99d7-1219-4914-aa61-73fe5023988e", + "name": "93ce99d7-1219-4914-aa61-73fe5023988e", + "properties": { + "fabricType": "VMM", + "subnets": [], + "friendlyName": "VSwitch_VLan", + "networkType": "NoIsolation" + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationNetworks_List.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationNetworks_List.json new file mode 100644 index 000000000000..96d60510ab38 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationNetworks_List.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "resourceName": "srce2avaultbvtaC27", + "resourceGroupName": "srcBvte2a14C27", + "subscriptionId": "9112a37f-0f3e-46ec-9c00-060c6edca071" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationNetworks", + "id": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/srcBvte2a14C27/providers/Microsoft.RecoveryServices/vaults/srce2avaultbvtaC27/replicationFabrics/b0cef6e9a4437b81803d0b55ada4f700ab66caae59c35d62723a1589c0cd13ac/replicationNetworks/93ce99d7-1219-4914-aa61-73fe5023988e", + "name": "93ce99d7-1219-4914-aa61-73fe5023988e", + "properties": { + "fabricType": "VMM", + "subnets": [], + "friendlyName": "VSwitch_VLan", + "networkType": "NoIsolation" + } + }, + { + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationNetworks", + "id": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/srcBvte2a14C27/providers/Microsoft.RecoveryServices/vaults/srce2avaultbvtaC27/replicationFabrics/b0cef6e9a4437b81803d0b55ada4f700ab66caae59c35d62723a1589c0cd13ac/replicationNetworks/b83bf8fd-f304-48d7-82c9-5d74e6215c1b", + "name": "b83bf8fd-f304-48d7-82c9-5d74e6215c1b", + "properties": { + "fabricType": "VMM", + "subnets": [], + "friendlyName": "VSwitch_NoIso", + "networkType": "NoIsolation" + } + }, + { + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationNetworks", + "id": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/srcBvte2a14C27/providers/Microsoft.RecoveryServices/vaults/srce2avaultbvtaC27/replicationFabrics/b0cef6e9a4437b81803d0b55ada4f700ab66caae59c35d62723a1589c0cd13ac/replicationNetworks/e2267b5c-2650-49bd-ab3f-d66aae694c06", + "name": "e2267b5c-2650-49bd-ab3f-d66aae694c06", + "properties": { + "fabricType": "VMM", + "subnets": [], + "friendlyName": "corp", + "networkType": "NoIsolation" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationNetworks_ListByReplicationFabrics.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationNetworks_ListByReplicationFabrics.json new file mode 100644 index 000000000000..c2edde0fd161 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationNetworks_ListByReplicationFabrics.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "fabricName": "b0cef6e9a4437b81803d0b55ada4f700ab66caae59c35d62723a1589c0cd13ac", + "api-version": "2021-03-01", + "resourceName": "srce2avaultbvtaC27", + "resourceGroupName": "srcBvte2a14C27", + "subscriptionId": "9112a37f-0f3e-46ec-9c00-060c6edca071" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationNetworks", + "id": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/srcBvte2a14C27/providers/Microsoft.RecoveryServices/vaults/srce2avaultbvtaC27/replicationFabrics/b0cef6e9a4437b81803d0b55ada4f700ab66caae59c35d62723a1589c0cd13ac/replicationNetworks/93ce99d7-1219-4914-aa61-73fe5023988e", + "name": "93ce99d7-1219-4914-aa61-73fe5023988e", + "properties": { + "fabricType": "VMM", + "subnets": [], + "friendlyName": "VSwitch_VLan", + "networkType": "NoIsolation" + } + }, + { + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationNetworks", + "id": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/srcBvte2a14C27/providers/Microsoft.RecoveryServices/vaults/srce2avaultbvtaC27/replicationFabrics/b0cef6e9a4437b81803d0b55ada4f700ab66caae59c35d62723a1589c0cd13ac/replicationNetworks/b83bf8fd-f304-48d7-82c9-5d74e6215c1b", + "name": "b83bf8fd-f304-48d7-82c9-5d74e6215c1b", + "properties": { + "fabricType": "VMM", + "subnets": [], + "friendlyName": "VSwitch_NoIso", + "networkType": "NoIsolation" + } + }, + { + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationNetworks", + "id": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/srcBvte2a14C27/providers/Microsoft.RecoveryServices/vaults/srce2avaultbvtaC27/replicationFabrics/b0cef6e9a4437b81803d0b55ada4f700ab66caae59c35d62723a1589c0cd13ac/replicationNetworks/e2267b5c-2650-49bd-ab3f-d66aae694c06", + "name": "e2267b5c-2650-49bd-ab3f-d66aae694c06", + "properties": { + "fabricType": "VMM", + "subnets": [], + "friendlyName": "corp", + "networkType": "NoIsolation" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationPolicies_Create.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationPolicies_Create.json new file mode 100644 index 000000000000..4cc4a7d5a158 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationPolicies_Create.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "policyName": "protectionprofile1", + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "input": { + "properties": { + "providerSpecificInput": { + "instanceType": "HyperVReplicaAzure" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/protectionprofile1", + "name": "protectionprofile1", + "type": "Microsoft.RecoveryServices/vaults/replicationPolicies", + "properties": { + "friendlyName": "protectionprofile1", + "providerSpecificDetails": { + "instanceType": "HyperVReplicaAzure" + } + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationPolicies_Delete.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationPolicies_Delete.json new file mode 100644 index 000000000000..416dd8a4727a --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationPolicies_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "policyName": "protectionprofile1", + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationPolicies_Get.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationPolicies_Get.json new file mode 100644 index 000000000000..2c6913ab5cca --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationPolicies_Get.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "policyName": "protectionprofile1", + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/protectionprofile1", + "name": "protectionprofile1", + "type": "Microsoft.RecoveryServices/vaults/replicationPolicies", + "properties": { + "friendlyName": "protectionprofile1", + "providerSpecificDetails": { + "instanceType": "HyperVReplicaAzure" + } + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationPolicies_List.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationPolicies_List.json new file mode 100644 index 000000000000..6c861b9186f0 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationPolicies_List.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/protectionprofile1", + "name": "protectionprofile1", + "type": "Microsoft.RecoveryServices/vaults/replicationPolicies", + "properties": { + "friendlyName": "protectionprofile1", + "providerSpecificDetails": { + "instanceType": "HyperVReplicaAzure" + } + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationPolicies_Update.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationPolicies_Update.json new file mode 100644 index 000000000000..1325d057fa4d --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationPolicies_Update.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "policyName": "protectionprofile1", + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "input": { + "properties": { + "replicationProviderSettings": { + "instanceType": "HyperVReplicaAzure" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/protectionprofile1", + "name": "protectionprofile1", + "type": "Microsoft.RecoveryServices/vaults/replicationPolicies", + "properties": { + "friendlyName": "protectionprofile1", + "providerSpecificDetails": { + "instanceType": "HyperVReplicaAzure" + } + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectableItems_Get.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectableItems_Get.json new file mode 100644 index 000000000000..292e57f05d7c --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectableItems_Get.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "protectableItemName": "c0c14913-3d7a-48ea-9531-cc99e0e686e6", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectableItems/c0c14913-3d7a-48ea-9531-cc99e0e686e6", + "name": "c0c14913-3d7a-48ea-9531-cc99e0e686e6", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectableItems", + "properties": { + "friendlyName": "vm2", + "protectionStatus": "Unprotected", + "recoveryServicesProviderId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationRecoveryServicesProviders/241641e6-ee7b-4ee4-8141-821fadda43fa", + "protectionReadinessErrors": [], + "supportedReplicationProviders": [ + "HyperVReplicaAzure" + ], + "customDetails": { + "instanceType": "HyperVVirtualMachine" + } + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectableItems_ListByReplicationProtectionContainers.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectableItems_ListByReplicationProtectionContainers.json new file mode 100644 index 000000000000..9740a4dc817a --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectableItems_ListByReplicationProtectionContainers.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectableItems/c0c14913-3d7a-48ea-9531-cc99e0e686e6", + "name": "c0c14913-3d7a-48ea-9531-cc99e0e686e6", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectableItems", + "properties": { + "friendlyName": "vm2", + "protectionStatus": "Unprotected", + "recoveryServicesProviderId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationRecoveryServicesProviders/241641e6-ee7b-4ee4-8141-821fadda43fa", + "protectionReadinessErrors": [], + "supportedReplicationProviders": [ + "HyperVReplicaAzure" + ], + "customDetails": { + "instanceType": "HyperVVirtualMachine" + } + } + }, + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectableItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "name": "f8491e4f-817a-40dd-a90c-af773978c75b", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectableItems", + "properties": { + "friendlyName": "vm1", + "protectionStatus": "Unprotected", + "recoveryServicesProviderId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationRecoveryServicesProviders/241641e6-ee7b-4ee4-8141-821fadda43fa", + "protectionReadinessErrors": [], + "supportedReplicationProviders": [ + "HyperVReplicaAzure" + ], + "customDetails": { + "instanceType": "HyperVVirtualMachine" + } + } + } + ], + "nextLink": "https://management.azure.com/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectableItems?api-version=2021-03-01&%24skipToken=ReplicationGroup%3aBegin" + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_AddDisks.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_AddDisks.json new file mode 100644 index 000000000000..e284e4b794f9 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_AddDisks.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "replicatedProtectedItemName": "f8491e4f-817a-40dd-a90c-af773978c75b", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "addDisksInput": { + "properties": { + "providerSpecificDetails": { + "instanceType": "A2A", + "vmDisks": [ + { + "diskUri": "https://vmstorage.blob.core.windows.net/vhds/datadisk1.vhd", + "recoveryAzureStorageAccountId": "/subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourcegroups/recoveryResource/providers/Microsoft.Storage/storageAccounts/recoverystorage", + "primaryStagingAzureStorageAccountId": "/subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourcegroups/primaryResource/providers/Microsoft.Storage/storageAccounts/vmcachestorage" + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "name": "f8491e4f-817a-40dd-a90c-af773978c75b", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems", + "properties": { + "friendlyName": "f8491e4f-817a-40dd-a90c-af773978c75b", + "protectedItemType": "", + "protectableItemId": null, + "recoveryServicesProviderId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationRecoveryServicesProviders/6d2940f9-4c34-5989-9f56-1243a6e76ecf", + "primaryFabricFriendlyName": "cloud1", + "primaryFabricProvider": "AzureFabric", + "recoveryFabricFriendlyName": "cloud2", + "recoveryFabricId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud2", + "primaryProtectionContainerFriendlyName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "recoveryProtectionContainerFriendlyName": "cloud_81224fc6-f326-5d35-96de-fbf51efb3188", + "protectionState": "Protected", + "protectionStateDescription": "Protected", + "activeLocation": "Primary", + "testFailoverState": "None", + "testFailoverStateDescription": "None", + "allowedOperations": [ + "RepairReplication", + "UnplannedFailover", + "DisableProtection", + "TestFailover" + ], + "replicationHealth": "Normal", + "failoverHealth": "Normal", + "healthErrors": [], + "policyId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/A2APolicy", + "policyFriendlyName": "A2APolicy", + "currentScenario": { + "scenarioName": "None", + "jobId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/None", + "startTime": "1752-12-31T19:31:01Z" + }, + "failoverRecoveryPointId": null, + "providerSpecificDetails": { + "instanceType": "A2A" + }, + "recoveryContainerId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud2/replicationProtectionContainers/cloud_81224fc6-f326-5d35-96de-fbf51efb3188" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_ApplyRecoveryPoint.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_ApplyRecoveryPoint.json new file mode 100644 index 000000000000..b99debae2c5e --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_ApplyRecoveryPoint.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "replicatedProtectedItemName": "f8491e4f-817a-40dd-a90c-af773978c75b", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "applyRecoveryPointInput": { + "properties": { + "recoveryPointId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b/recoveryPoints/e4d05fe9-5dfd-47be-b50b-aad306b2802d", + "providerSpecificDetails": { + "instanceType": "HyperVReplicaAzure" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "name": "f8491e4f-817a-40dd-a90c-af773978c75b", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems", + "properties": { + "friendlyName": "vm1", + "protectedItemType": "HyperVVirtualMachine", + "protectableItemId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectableItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "recoveryServicesProviderId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationRecoveryServicesProviders/241641e6-ee7b-4ee4-8141-821fadda43fa", + "primaryFabricFriendlyName": "cloud1", + "recoveryFabricFriendlyName": "Microsoft Azure", + "recoveryFabricId": "Microsoft Azure", + "primaryProtectionContainerFriendlyName": "cloud1", + "recoveryProtectionContainerFriendlyName": "Microsoft Azure", + "protectionState": "UnplannedFailoverCommitPendingStatesBegin", + "protectionStateDescription": "Failover completed", + "activeLocation": "Recovery", + "testFailoverState": "MarkedForDeletion", + "testFailoverStateDescription": "Cleaning up test environment", + "allowedOperations": [ + "CompleteMigration", + "Commit", + "DisableProtection", + "ChangePit" + ], + "replicationHealth": "Critical", + "policyId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/protectionprofile1", + "policyFriendlyName": "protectionprofile1", + "lastSuccessfulFailoverTime": "2017-04-26T08:42:33.0996129Z", + "lastSuccessfulTestFailoverTime": "2017-04-25T09:57:57.0357829Z", + "currentScenario": { + "scenarioName": "None", + "jobId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/None", + "startTime": "1753-01-01T01:01:01Z" + }, + "failoverRecoveryPointId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b/recoveryPoints/e4d05fe9-5dfd-47be-b50b-aad306b2802d", + "providerSpecificDetails": { + "instanceType": "HyperVReplicaAzure" + }, + "recoveryContainerId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/d49858f157601230a6ac5862fbbc6e63bf38d23ecd96cf953767945d457fe9d5/replicationProtectionContainers/d38048d4-b460-4791-8ece-108395ee8478" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_Create.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_Create.json new file mode 100644 index 000000000000..d6ce74ca5c4f --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_Create.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "replicatedProtectedItemName": "f8491e4f-817a-40dd-a90c-af773978c75b", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "input": { + "properties": { + "policyId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/protectionprofile1", + "protectableItemId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectableItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "providerSpecificDetails": { + "instanceType": "HyperVReplicaAzure" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "name": "f8491e4f-817a-40dd-a90c-af773978c75b", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems", + "properties": { + "friendlyName": "vm1", + "protectedItemType": "HyperVVirtualMachine", + "protectableItemId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectableItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "recoveryServicesProviderId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationRecoveryServicesProviders/241641e6-ee7b-4ee4-8141-821fadda43fa", + "primaryFabricFriendlyName": "cloud1", + "recoveryFabricFriendlyName": "Microsoft Azure", + "recoveryFabricId": "Microsoft Azure", + "primaryProtectionContainerFriendlyName": "cloud1", + "recoveryProtectionContainerFriendlyName": "Microsoft Azure", + "protectionState": "Protected", + "protectionStateDescription": "Protected", + "activeLocation": "Primary", + "testFailoverState": "None", + "testFailoverStateDescription": "None", + "allowedOperations": [ + "PlannedFailover", + "UnplannedFailover", + "DisableProtection", + "TestFailover" + ], + "replicationHealth": "Normal", + "policyId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/protectionprofile1", + "policyFriendlyName": "protectionprofile1", + "currentScenario": { + "scenarioName": "None", + "jobId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/None", + "startTime": "1753-01-01T01:01:01Z" + }, + "providerSpecificDetails": { + "instanceType": "HyperVReplicaAzure" + }, + "recoveryContainerId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/d49858f157601230a6ac5862fbbc6e63bf38d23ecd96cf953767945d457fe9d5/replicationProtectionContainers/d38048d4-b460-4791-8ece-108395ee8478" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_Delete.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_Delete.json new file mode 100644 index 000000000000..a8c20e308ac6 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_Delete.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "replicatedProtectedItemName": "c0c14913-3d7a-48ea-9531-cc99e0e686e6", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "disableProtectionInput": { + "properties": { + "replicationProviderInput": { + "instanceType": "DisableProtectionProviderSpecificInput" + } + } + } + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_FailoverCommit.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_FailoverCommit.json new file mode 100644 index 000000000000..be69029d6686 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_FailoverCommit.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "replicatedProtectedItemName": "f8491e4f-817a-40dd-a90c-af773978c75b", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "name": "f8491e4f-817a-40dd-a90c-af773978c75b", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems", + "properties": { + "friendlyName": "vm1", + "protectedItemType": "HyperVVirtualMachine", + "protectableItemId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectableItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "recoveryServicesProviderId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationRecoveryServicesProviders/241641e6-ee7b-4ee4-8141-821fadda43fa", + "primaryFabricFriendlyName": "cloud1", + "recoveryFabricFriendlyName": "Microsoft Azure", + "recoveryFabricId": "Microsoft Azure", + "primaryProtectionContainerFriendlyName": "cloud1", + "recoveryProtectionContainerFriendlyName": "Microsoft Azure", + "protectionState": "PlannedFailoverStatesBegin", + "protectionStateDescription": "Planned failover committed", + "activeLocation": "Recovery", + "testFailoverState": "MarkedForDeletion", + "testFailoverStateDescription": "Cleaning up test environment", + "allowedOperations": [ + "CompleteMigration", + "DisableProtection", + "Failback" + ], + "replicationHealth": "Normal", + "policyId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/protectionprofile1", + "policyFriendlyName": "protectionprofile1", + "lastSuccessfulFailoverTime": "2017-04-26T06:37:23.1578655Z", + "lastSuccessfulTestFailoverTime": "2017-04-25T09:57:57.0357829Z", + "currentScenario": { + "scenarioName": "None", + "jobId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/None", + "startTime": "1753-01-01T01:01:01Z" + }, + "failoverRecoveryPointId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b/recoveryPoints/b22134ea-620c-474b-9fa5-3c1cb47708e3", + "providerSpecificDetails": { + "instanceType": "HyperVReplicaAzure" + }, + "recoveryContainerId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/d49858f157601230a6ac5862fbbc6e63bf38d23ecd96cf953767945d457fe9d5/replicationProtectionContainers/d38048d4-b460-4791-8ece-108395ee8478" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_Get.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_Get.json new file mode 100644 index 000000000000..136820c11fba --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_Get.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "replicatedProtectedItemName": "f8491e4f-817a-40dd-a90c-af773978c75b", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "name": "f8491e4f-817a-40dd-a90c-af773978c75b", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems", + "properties": { + "friendlyName": "vm1", + "protectedItemType": "HyperVVirtualMachine", + "protectableItemId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectableItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "recoveryServicesProviderId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationRecoveryServicesProviders/241641e6-ee7b-4ee4-8141-821fadda43fa", + "primaryFabricFriendlyName": "cloud1", + "recoveryFabricFriendlyName": "Microsoft Azure", + "recoveryFabricId": "Microsoft Azure", + "primaryProtectionContainerFriendlyName": "cloud1", + "recoveryProtectionContainerFriendlyName": "Microsoft Azure", + "protectionState": "Protected", + "protectionStateDescription": "Protected", + "activeLocation": "Primary", + "testFailoverState": "None", + "testFailoverStateDescription": "None", + "allowedOperations": [ + "PlannedFailover", + "UnplannedFailover", + "DisableProtection", + "TestFailover" + ], + "replicationHealth": "Normal", + "policyId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/protectionprofile1", + "policyFriendlyName": "protectionprofile1", + "currentScenario": { + "scenarioName": "None", + "jobId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/None", + "startTime": "1753-01-01T01:01:01Z" + }, + "providerSpecificDetails": { + "instanceType": "HyperVReplicaAzure" + }, + "recoveryContainerId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/d49858f157601230a6ac5862fbbc6e63bf38d23ecd96cf953767945d457fe9d5/replicationProtectionContainers/d38048d4-b460-4791-8ece-108395ee8478" + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_List.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_List.json new file mode 100644 index 000000000000..7a0d346900a4 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_List.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "name": "f8491e4f-817a-40dd-a90c-af773978c75b", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems", + "properties": { + "friendlyName": "vm1", + "protectedItemType": "HyperVVirtualMachine", + "protectableItemId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectableItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "recoveryServicesProviderId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationRecoveryServicesProviders/241641e6-ee7b-4ee4-8141-821fadda43fa", + "primaryFabricFriendlyName": "cloud1", + "recoveryFabricFriendlyName": "Microsoft Azure", + "recoveryFabricId": "Microsoft Azure", + "primaryProtectionContainerFriendlyName": "cloud1", + "recoveryProtectionContainerFriendlyName": "Microsoft Azure", + "protectionState": "Protected", + "protectionStateDescription": "Protected", + "activeLocation": "Primary", + "testFailoverState": "None", + "testFailoverStateDescription": "None", + "allowedOperations": [ + "PlannedFailover", + "UnplannedFailover", + "DisableProtection", + "TestFailover" + ], + "replicationHealth": "Normal", + "policyId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/protectionprofile1", + "policyFriendlyName": "protectionprofile1", + "currentScenario": { + "scenarioName": "None", + "jobId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/None", + "startTime": "1753-01-01T01:01:01Z" + }, + "providerSpecificDetails": { + "instanceType": "HyperVReplicaAzure" + }, + "recoveryContainerId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/d49858f157601230a6ac5862fbbc6e63bf38d23ecd96cf953767945d457fe9d5/replicationProtectionContainers/d38048d4-b460-4791-8ece-108395ee8478" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_ListByReplicationProtectionContainers.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_ListByReplicationProtectionContainers.json new file mode 100644 index 000000000000..3280e454c197 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_ListByReplicationProtectionContainers.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "name": "f8491e4f-817a-40dd-a90c-af773978c75b", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems", + "properties": { + "friendlyName": "vm1", + "protectedItemType": "HyperVVirtualMachine", + "protectableItemId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectableItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "recoveryServicesProviderId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationRecoveryServicesProviders/241641e6-ee7b-4ee4-8141-821fadda43fa", + "primaryFabricFriendlyName": "cloud1", + "recoveryFabricFriendlyName": "Microsoft Azure", + "recoveryFabricId": "Microsoft Azure", + "primaryProtectionContainerFriendlyName": "cloud1", + "recoveryProtectionContainerFriendlyName": "Microsoft Azure", + "protectionState": "Protected", + "protectionStateDescription": "Protected", + "activeLocation": "Primary", + "testFailoverState": "None", + "testFailoverStateDescription": "None", + "allowedOperations": [ + "PlannedFailover", + "UnplannedFailover", + "DisableProtection", + "TestFailover" + ], + "replicationHealth": "Normal", + "policyId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/protectionprofile1", + "policyFriendlyName": "protectionprofile1", + "currentScenario": { + "scenarioName": "None", + "jobId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/None", + "startTime": "1753-01-01T01:01:01Z" + }, + "providerSpecificDetails": { + "instanceType": "HyperVReplicaAzure" + }, + "recoveryContainerId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/d49858f157601230a6ac5862fbbc6e63bf38d23ecd96cf953767945d457fe9d5/replicationProtectionContainers/d38048d4-b460-4791-8ece-108395ee8478" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_PlannedFailover.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_PlannedFailover.json new file mode 100644 index 000000000000..c32ef201b823 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_PlannedFailover.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "replicatedProtectedItemName": "f8491e4f-817a-40dd-a90c-af773978c75b", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "failoverInput": { + "properties": { + "failoverDirection": "PrimaryToRecovery", + "providerSpecificDetails": { + "instanceType": "HyperVReplicaAzure" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "name": "f8491e4f-817a-40dd-a90c-af773978c75b", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems", + "properties": { + "friendlyName": "vm1", + "protectedItemType": "HyperVVirtualMachine", + "protectableItemId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectableItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "recoveryServicesProviderId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationRecoveryServicesProviders/241641e6-ee7b-4ee4-8141-821fadda43fa", + "primaryFabricFriendlyName": "cloud1", + "recoveryFabricFriendlyName": "Microsoft Azure", + "recoveryFabricId": "Microsoft Azure", + "primaryProtectionContainerFriendlyName": "cloud1", + "recoveryProtectionContainerFriendlyName": "Microsoft Azure", + "protectionState": "PlannedFailoverCommitRequired", + "protectionStateDescription": "Planned failover finished", + "activeLocation": "Recovery", + "testFailoverState": "MarkedForDeletion", + "testFailoverStateDescription": "Cleaning up test environment", + "allowedOperations": [ + "CompleteMigration", + "Commit", + "DisableProtection", + "ChangePit" + ], + "replicationHealth": "Normal", + "policyId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/protectionprofile1", + "policyFriendlyName": "protectionprofile1", + "lastSuccessfulFailoverTime": "2017-04-26T06:37:23.1578655Z", + "lastSuccessfulTestFailoverTime": "2017-04-25T09:57:57.0357829Z", + "currentScenario": { + "scenarioName": "None", + "jobId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/None", + "startTime": "1753-01-01T01:01:01Z" + }, + "failoverRecoveryPointId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b/recoveryPoints/b22134ea-620c-474b-9fa5-3c1cb47708e3", + "providerSpecificDetails": { + "instanceType": "HyperVReplicaAzure" + }, + "recoveryContainerId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/d49858f157601230a6ac5862fbbc6e63bf38d23ecd96cf953767945d457fe9d5/replicationProtectionContainers/d38048d4-b460-4791-8ece-108395ee8478" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_Purge.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_Purge.json new file mode 100644 index 000000000000..81e2d32ae36f --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_Purge.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "replicatedProtectedItemName": "c0c14913-3d7a-48ea-9531-cc99e0e686e6", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_RemoveDisks.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_RemoveDisks.json new file mode 100644 index 000000000000..71af632d7f8e --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_RemoveDisks.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "replicatedProtectedItemName": "f8491e4f-817a-40dd-a90c-af773978c75b", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "removeDisksInput": { + "properties": { + "providerSpecificDetails": { + "instanceType": "A2A", + "vmDisksUris": [ + "https://vmstorage.blob.core.windows.net/vhds/datadisk1.vhd" + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "name": "f8491e4f-817a-40dd-a90c-af773978c75b", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems", + "properties": { + "friendlyName": "f8491e4f-817a-40dd-a90c-af773978c75b", + "protectedItemType": "", + "protectableItemId": null, + "recoveryServicesProviderId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationRecoveryServicesProviders/6d2940f9-4c34-5989-9f56-1243a6e76ecf", + "primaryFabricFriendlyName": "cloud1", + "primaryFabricProvider": "AzureFabric", + "recoveryFabricFriendlyName": "cloud2", + "recoveryFabricId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud2", + "primaryProtectionContainerFriendlyName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "recoveryProtectionContainerFriendlyName": "cloud_81224fc6-f326-5d35-96de-fbf51efb3188", + "protectionState": "Protected", + "protectionStateDescription": "Protected", + "activeLocation": "Primary", + "testFailoverState": "None", + "testFailoverStateDescription": "None", + "allowedOperations": [ + "RepairReplication", + "UnplannedFailover", + "DisableProtection", + "TestFailover" + ], + "replicationHealth": "Normal", + "failoverHealth": "Normal", + "healthErrors": [], + "policyId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/A2APolicy", + "policyFriendlyName": "A2APolicy", + "currentScenario": { + "scenarioName": "None", + "jobId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/None", + "startTime": "1752-12-31T19:31:01Z" + }, + "failoverRecoveryPointId": null, + "providerSpecificDetails": { + "instanceType": "A2A" + }, + "recoveryContainerId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud2/replicationProtectionContainers/cloud_81224fc6-f326-5d35-96de-fbf51efb3188" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_RepairReplication.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_RepairReplication.json new file mode 100644 index 000000000000..1a86c60e768a --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_RepairReplication.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "replicatedProtectedItemName": "f8491e4f-817a-40dd-a90c-af773978c75b", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "name": "f8491e4f-817a-40dd-a90c-af773978c75b", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems", + "properties": { + "friendlyName": "vm1", + "protectedItemType": "HyperVVirtualMachine", + "protectableItemId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectableItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "recoveryServicesProviderId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationRecoveryServicesProviders/241641e6-ee7b-4ee4-8141-821fadda43fa", + "primaryFabricFriendlyName": "cloud1", + "recoveryFabricFriendlyName": "Microsoft Azure", + "recoveryFabricId": "Microsoft Azure", + "primaryProtectionContainerFriendlyName": "cloud1", + "recoveryProtectionContainerFriendlyName": "Microsoft Azure", + "protectionState": "Protected", + "protectionStateDescription": "Protected", + "activeLocation": "Primary", + "testFailoverState": "None", + "testFailoverStateDescription": "None", + "allowedOperations": [ + "PlannedFailover", + "UnplannedFailover", + "DisableProtection", + "TestFailover" + ], + "replicationHealth": "Normal", + "policyId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/protectionprofile1", + "policyFriendlyName": "protectionprofile1", + "currentScenario": { + "scenarioName": "None", + "jobId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/None", + "startTime": "1753-01-01T01:01:01Z" + }, + "providerSpecificDetails": { + "instanceType": "HyperVReplicaAzure" + }, + "recoveryContainerId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/d49858f157601230a6ac5862fbbc6e63bf38d23ecd96cf953767945d457fe9d5/replicationProtectionContainers/d38048d4-b460-4791-8ece-108395ee8478" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_Reprotect.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_Reprotect.json new file mode 100644 index 000000000000..34789b67dc3f --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_Reprotect.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "replicatedProtectedItemName": "f8491e4f-817a-40dd-a90c-af773978c75b", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "rrInput": { + "properties": { + "failoverDirection": "PrimaryToRecovery", + "providerSpecificDetails": { + "instanceType": "HyperVReplicaAzure" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "name": "f8491e4f-817a-40dd-a90c-af773978c75b", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems", + "properties": { + "friendlyName": "vm1", + "protectedItemType": "HyperVVirtualMachine", + "protectableItemId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectableItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "recoveryServicesProviderId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationRecoveryServicesProviders/241641e6-ee7b-4ee4-8141-821fadda43fa", + "primaryFabricFriendlyName": "cloud1", + "recoveryFabricFriendlyName": "Microsoft Azure", + "recoveryFabricId": "Microsoft Azure", + "primaryProtectionContainerFriendlyName": "cloud1", + "recoveryProtectionContainerFriendlyName": "Microsoft Azure", + "protectionState": "Protected", + "protectionStateDescription": "Protected", + "activeLocation": "Primary", + "testFailoverState": "MarkedForDeletion", + "testFailoverStateDescription": "Cleaning up test environment", + "allowedOperations": [ + "PlannedFailover", + "UnplannedFailover", + "DisableProtection", + "TestFailover" + ], + "replicationHealth": "Normal", + "policyId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/protectionprofile1", + "policyFriendlyName": "protectionprofile1", + "lastSuccessfulFailoverTime": "2017-04-26T06:37:23.1578655Z", + "lastSuccessfulTestFailoverTime": "2017-04-25T09:57:57.0357829Z", + "currentScenario": { + "scenarioName": "None", + "jobId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/None", + "startTime": "1753-01-01T01:01:01Z" + }, + "failoverRecoveryPointId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b/recoveryPoints/b22134ea-620c-474b-9fa5-3c1cb47708e3", + "providerSpecificDetails": { + "instanceType": "HyperVReplicaAzure" + }, + "recoveryContainerId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/d49858f157601230a6ac5862fbbc6e63bf38d23ecd96cf953767945d457fe9d5/replicationProtectionContainers/d38048d4-b460-4791-8ece-108395ee8478" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_ResolveHealthErrors.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_ResolveHealthErrors.json new file mode 100644 index 000000000000..6fc53e3b754b --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_ResolveHealthErrors.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "replicatedProtectedItemName": "f8491e4f-817a-40dd-a90c-af773978c75b", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "resolveHealthInput": { + "properties": { + "healthErrors": [ + { + "healthErrorId": "3:8020" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "name": "f8491e4f-817a-40dd-a90c-af773978c75b", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems", + "properties": { + "friendlyName": "f8491e4f-817a-40dd-a90c-af773978c75b", + "protectedItemType": "", + "protectableItemId": null, + "recoveryServicesProviderId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationRecoveryServicesProviders/6d2940f9-4c34-5989-9f56-1243a6e76ecf", + "primaryFabricFriendlyName": "cloud1", + "primaryFabricProvider": "AzureFabric", + "recoveryFabricFriendlyName": "cloud2", + "recoveryFabricId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud2", + "primaryProtectionContainerFriendlyName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "recoveryProtectionContainerFriendlyName": "cloud_81224fc6-f326-5d35-96de-fbf51efb3188", + "protectionState": "Protected", + "protectionStateDescription": "Protected", + "activeLocation": "Primary", + "testFailoverState": "None", + "testFailoverStateDescription": "None", + "allowedOperations": [ + "RepairReplication", + "UnplannedFailover", + "DisableProtection", + "TestFailover" + ], + "replicationHealth": "Normal", + "failoverHealth": "Normal", + "healthErrors": [], + "policyId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/A2APolicy", + "policyFriendlyName": "A2APolicy", + "currentScenario": { + "scenarioName": "None", + "jobId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/None", + "startTime": "1752-12-31T19:31:01Z" + }, + "failoverRecoveryPointId": null, + "providerSpecificDetails": { + "instanceType": "A2A" + }, + "recoveryContainerId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud2/replicationProtectionContainers/cloud_81224fc6-f326-5d35-96de-fbf51efb3188" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_TestFailover.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_TestFailover.json new file mode 100644 index 000000000000..a0c9a1c719db --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_TestFailover.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "replicatedProtectedItemName": "f8491e4f-817a-40dd-a90c-af773978c75b", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "failoverInput": { + "properties": { + "failoverDirection": "PrimaryToRecovery", + "networkType": "VmNetworkAsInput", + "networkId": "/subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/siterecoveryProd1/providers/Microsoft.Network/virtualNetworks/vnetavrai", + "skipTestFailoverCleanup": "false", + "providerSpecificDetails": { + "instanceType": "HyperVReplicaAzure" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "name": "f8491e4f-817a-40dd-a90c-af773978c75b", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems", + "properties": { + "friendlyName": "vm1", + "protectedItemType": "HyperVVirtualMachine", + "protectableItemId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectableItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "recoveryServicesProviderId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationRecoveryServicesProviders/241641e6-ee7b-4ee4-8141-821fadda43fa", + "primaryFabricFriendlyName": "cloud1", + "recoveryFabricFriendlyName": "Microsoft Azure", + "recoveryFabricId": "Microsoft Azure", + "primaryProtectionContainerFriendlyName": "cloud1", + "recoveryProtectionContainerFriendlyName": "Microsoft Azure", + "protectionState": "Protected", + "protectionStateDescription": "Cleanup test failover pending", + "activeLocation": "Primary", + "testFailoverState": "WaitingForCompletion", + "testFailoverStateDescription": "Waiting for user input", + "allowedOperations": [ + "TestFailoverCleanup" + ], + "replicationHealth": "Normal", + "policyId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/protectionprofile1", + "policyFriendlyName": "protectionprofile1", + "currentScenario": { + "scenarioName": "TestFailover", + "jobId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/2838f9b4-2609-4f76-a7e9-07e6387c5e98", + "startTime": "2017-04-25T09:57:57.0357829Z" + }, + "failoverRecoveryPointId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b/recoveryPoints/0689d0d0-3518-4793-8c98-c26bf94526f6", + "providerSpecificDetails": { + "instanceType": "HyperVReplicaAzure" + }, + "recoveryContainerId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/d49858f157601230a6ac5862fbbc6e63bf38d23ecd96cf953767945d457fe9d5/replicationProtectionContainers/d38048d4-b460-4791-8ece-108395ee8478" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_TestFailoverCleanup.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_TestFailoverCleanup.json new file mode 100644 index 000000000000..57c2f50b89e2 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_TestFailoverCleanup.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "replicatedProtectedItemName": "f8491e4f-817a-40dd-a90c-af773978c75b", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "cleanupInput": { + "properties": { + "comments": "Test Failover Cleanup" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "name": "f8491e4f-817a-40dd-a90c-af773978c75b", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems", + "properties": { + "friendlyName": "vm1", + "protectedItemType": "HyperVVirtualMachine", + "protectableItemId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectableItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "recoveryServicesProviderId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationRecoveryServicesProviders/241641e6-ee7b-4ee4-8141-821fadda43fa", + "primaryFabricFriendlyName": "cloud1", + "recoveryFabricFriendlyName": "Microsoft Azure", + "recoveryFabricId": "Microsoft Azure", + "primaryProtectionContainerFriendlyName": "cloud1", + "recoveryProtectionContainerFriendlyName": "Microsoft Azure", + "protectionState": "Protected", + "protectionStateDescription": "Protected", + "activeLocation": "Primary", + "testFailoverState": "MarkedForDeletion", + "testFailoverStateDescription": "Cleaning up test environment", + "allowedOperations": [ + "PlannedFailover", + "UnplannedFailover", + "DisableProtection", + "TestFailover" + ], + "replicationHealth": "Normal", + "policyId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/protectionprofile1", + "policyFriendlyName": "protectionprofile1", + "lastSuccessfulFailoverTime": "2017-04-26T06:37:23.1578655Z", + "lastSuccessfulTestFailoverTime": "2017-04-25T09:57:57.0357829Z", + "currentScenario": { + "scenarioName": "None", + "jobId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/None", + "startTime": "1753-01-01T01:01:01Z" + }, + "failoverRecoveryPointId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b/recoveryPoints/b22134ea-620c-474b-9fa5-3c1cb47708e3", + "providerSpecificDetails": { + "instanceType": "HyperVReplicaAzure" + }, + "recoveryContainerId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/d49858f157601230a6ac5862fbbc6e63bf38d23ecd96cf953767945d457fe9d5/replicationProtectionContainers/d38048d4-b460-4791-8ece-108395ee8478" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_UnplannedFailover.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_UnplannedFailover.json new file mode 100644 index 000000000000..ee861202a3a7 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_UnplannedFailover.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "replicatedProtectedItemName": "f8491e4f-817a-40dd-a90c-af773978c75b", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "failoverInput": { + "properties": { + "failoverDirection": "PrimaryToRecovery", + "sourceSiteOperations": "NotRequired", + "providerSpecificDetails": { + "instanceType": "HyperVReplicaAzure" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "name": "f8491e4f-817a-40dd-a90c-af773978c75b", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems", + "properties": { + "friendlyName": "vm1", + "protectedItemType": "HyperVVirtualMachine", + "protectableItemId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectableItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "recoveryServicesProviderId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationRecoveryServicesProviders/241641e6-ee7b-4ee4-8141-821fadda43fa", + "primaryFabricFriendlyName": "cloud1", + "recoveryFabricFriendlyName": "Microsoft Azure", + "recoveryFabricId": "Microsoft Azure", + "primaryProtectionContainerFriendlyName": "cloud1", + "recoveryProtectionContainerFriendlyName": "Microsoft Azure", + "protectionState": "UnplannedFailoverCommitPendingStatesBegin", + "protectionStateDescription": "Failover completed", + "activeLocation": "Recovery", + "testFailoverState": "MarkedForDeletion", + "testFailoverStateDescription": "Cleaning up test environment", + "allowedOperations": [ + "CompleteMigration", + "Commit", + "DisableProtection", + "ChangePit" + ], + "replicationHealth": "Normal", + "policyId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/protectionprofile1", + "policyFriendlyName": "protectionprofile1", + "lastSuccessfulFailoverTime": "2017-04-26T08:42:33.0996129Z", + "lastSuccessfulTestFailoverTime": "2017-04-25T09:57:57.0357829Z", + "currentScenario": { + "scenarioName": "None", + "jobId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/None", + "startTime": "1753-01-01T01:01:01Z" + }, + "failoverRecoveryPointId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b/recoveryPoints/b2c7b208-0999-40a4-804f-8ee1019c8f76", + "providerSpecificDetails": { + "instanceType": "HyperVReplicaAzure" + }, + "recoveryContainerId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/d49858f157601230a6ac5862fbbc6e63bf38d23ecd96cf953767945d457fe9d5/replicationProtectionContainers/d38048d4-b460-4791-8ece-108395ee8478" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_Update.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_Update.json new file mode 100644 index 000000000000..bd2a0a81991b --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_Update.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "replicatedProtectedItemName": "f8491e4f-817a-40dd-a90c-af773978c75b", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "updateProtectionInput": { + "properties": { + "recoveryAzureVMName": "vm1", + "recoveryAzureVMSize": "Basic_A0", + "selectedRecoveryAzureNetworkId": "/subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/siterecoveryProd1/providers/Microsoft.Network/virtualNetworks/vnetavrai", + "vmNics": [ + { + "nicId": "TWljcm9zb2Z0OkY4NDkxRTRGLTgxN0EtNDBERC1BOTBDLUFGNzczOTc4Qzc1Qlw3NjAwMzMxRS03NDk4LTQ0QTQtQjdDNy0xQjY1NkJDREQ1MkQ=", + "recoveryVMSubnetName": "Subnet1", + "selectionType": "SelectedByUser" + } + ], + "licenseType": "WindowsServer", + "providerSpecificDetails": { + "instanceType": "HyperVReplicaAzure" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "name": "f8491e4f-817a-40dd-a90c-af773978c75b", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems", + "properties": { + "friendlyName": "vm1", + "protectedItemType": "HyperVVirtualMachine", + "protectableItemId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectableItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "recoveryServicesProviderId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationRecoveryServicesProviders/241641e6-ee7b-4ee4-8141-821fadda43fa", + "primaryFabricFriendlyName": "cloud1", + "recoveryFabricFriendlyName": "Microsoft Azure", + "recoveryFabricId": "Microsoft Azure", + "primaryProtectionContainerFriendlyName": "cloud1", + "recoveryProtectionContainerFriendlyName": "Microsoft Azure", + "protectionState": "Protected", + "protectionStateDescription": "Protected", + "activeLocation": "Primary", + "testFailoverState": "None", + "testFailoverStateDescription": "None", + "allowedOperations": [ + "PlannedFailover", + "UnplannedFailover", + "DisableProtection", + "TestFailover" + ], + "replicationHealth": "Normal", + "policyId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/protectionprofile1", + "policyFriendlyName": "protectionprofile1", + "currentScenario": { + "scenarioName": "None", + "jobId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/None", + "startTime": "1753-01-01T01:01:01Z" + }, + "providerSpecificDetails": { + "instanceType": "HyperVReplicaAzure" + }, + "recoveryContainerId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/d49858f157601230a6ac5862fbbc6e63bf38d23ecd96cf953767945d457fe9d5/replicationProtectionContainers/d38048d4-b460-4791-8ece-108395ee8478" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_UpdateMobilityService.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_UpdateMobilityService.json new file mode 100644 index 000000000000..0032ff0f2fff --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectedItems_UpdateMobilityService.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "replicationProtectedItemName": "79dd20ab-2b40-11e7-9791-0050568f387e", + "protectionContainerName": "cloud_c6780228-83bd-4f3e-a70e-cb46b7da33a0", + "fabricName": "WIN-JKKJ31QI8U2", + "resourceName": "WCUSVault", + "resourceGroupName": "wcusValidations", + "subscriptionId": "b364ed8d-4279-4bf8-8fd1-56f8fa0ae05c", + "updateMobilityServiceRequest": { + "properties": { + "runAsAccountId": "2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "79dd20ab-2b40-11e7-9791-0050568f387e", + "id": "/Subscriptions/b364ed8d-4279-4bf8-8fd1-56f8fa0ae05c/resourceGroups/wcusValidations/providers/Microsoft.RecoveryServices/vaults/WCUSVault/replicationFabrics/d70b0326a201008a953505ef271dc908e5e23468bc7356862ea178696f5f15c7/replicationProtectionContainers/cloud_c6780228-83bd-4f3e-a70e-cb46b7da33a0/replicationProtectedItems/79dd20ab-2b40-11e7-9791-0050568f387e", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems", + "properties": { + "friendlyName": "MMR-LIN-V2A-3", + "protectedItemType": "", + "protectableItemId": "/Subscriptions/b364ed8d-4279-4bf8-8fd1-56f8fa0ae05c/resourceGroups/wcusValidations/providers/Microsoft.RecoveryServices/vaults/WCUSVault/replicationFabrics/d70b0326a201008a953505ef271dc908e5e23468bc7356862ea178696f5f15c7/replicationProtectionContainers/cloud_c6780228-83bd-4f3e-a70e-cb46b7da33a0/replicationProtectableItems/79dd20ab-2b40-11e7-9791-0050568f387e", + "recoveryServicesProviderId": "/Subscriptions/b364ed8d-4279-4bf8-8fd1-56f8fa0ae05c/resourceGroups/wcusValidations/providers/Microsoft.RecoveryServices/vaults/WCUSVault/replicationFabrics/d70b0326a201008a953505ef271dc908e5e23468bc7356862ea178696f5f15c7/replicationRecoveryServicesProviders/c6780228-83bd-4f3e-a70e-cb46b7da33a0", + "primaryFabricFriendlyName": "WIN-JKKJ31QI8U2", + "recoveryFabricFriendlyName": "Microsoft Azure", + "recoveryFabricId": "Microsoft Azure", + "primaryProtectionContainerFriendlyName": "WIN-JKKJ31QI8U2", + "recoveryProtectionContainerFriendlyName": "Microsoft Azure", + "protectionState": "Protected", + "protectionStateDescription": "Protected", + "activeLocation": "Primary", + "testFailoverState": "None", + "testFailoverStateDescription": "None", + "allowedOperations": [ + "UnplannedFailover", + "DisableProtection", + "TestFailover" + ], + "replicationHealth": "Normal", + "policyId": "/Subscriptions/b364ed8d-4279-4bf8-8fd1-56f8fa0ae05c/resourceGroups/wcusValidations/providers/Microsoft.RecoveryServices/vaults/WCUSVault/replicationPolicies/MadhaviPolicyNew", + "policyFriendlyName": "MadhaviPolicyNew", + "currentScenario": { + "scenarioName": "None", + "jobId": "/Subscriptions/b364ed8d-4279-4bf8-8fd1-56f8fa0ae05c/resourceGroups/wcusValidations/providers/Microsoft.RecoveryServices/vaults/WCUSVault/replicationJobs/None", + "startTime": "1753-01-01T01:01:01Z" + }, + "providerSpecificDetails": { + "instanceType": "InMageAzureV2" + }, + "recoveryContainerId": "/Subscriptions/b364ed8d-4279-4bf8-8fd1-56f8fa0ae05c/resourceGroups/wcusValidations/providers/Microsoft.RecoveryServices/vaults/WCUSVault/replicationFabrics/d49858f157601230a6ac5862fbbc6e63bf38d23ecd96cf953767945d457fe9d5/replicationProtectionContainers/d38048d4-b460-4791-8ece-108395ee8478" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectionContainerMappings_Create.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectionContainerMappings_Create.json new file mode 100644 index 000000000000..8f7993b0b670 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectionContainerMappings_Create.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "mappingName": "cloud1protectionprofile1", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "creationInput": { + "properties": { + "targetProtectionContainerId": "Microsoft Azure", + "policyId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/protectionprofile1", + "providerSpecificInput": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectionContainerMappings/cloud1protectionprofile1", + "name": "cloud1protectionprofile1", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectionContainerMappings", + "properties": { + "targetProtectionContainerId": "Microsoft Azure", + "targetProtectionContainerFriendlyName": "Microsoft Azure", + "health": "Normal", + "healthErrorDetails": [], + "policyId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/protectionprofile1", + "state": "Paired", + "sourceProtectionContainerFriendlyName": "cloud1", + "sourceFabricFriendlyName": "cloud1", + "targetFabricFriendlyName": "Microsoft Azure", + "policyFriendlyName": "protectionprofile1" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectionContainerMappings_Delete.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectionContainerMappings_Delete.json new file mode 100644 index 000000000000..5c37615e8ea2 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectionContainerMappings_Delete.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "mappingName": "cloud1protectionprofile1", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "removalInput": { + "properties": { + "providerSpecificInput": {} + } + } + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectionContainerMappings_Get.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectionContainerMappings_Get.json new file mode 100644 index 000000000000..a805ed12da00 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectionContainerMappings_Get.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "mappingName": "cloud1protectionprofile1", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectionContainerMappings/cloud1protectionprofile1", + "name": "cloud1protectionprofile1", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectionContainerMappings", + "properties": { + "targetProtectionContainerId": "Microsoft Azure", + "targetProtectionContainerFriendlyName": "Microsoft Azure", + "health": "Normal", + "healthErrorDetails": [], + "policyId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/protectionprofile1", + "state": "Paired", + "sourceProtectionContainerFriendlyName": "cloud1", + "sourceFabricFriendlyName": "cloud1", + "targetFabricFriendlyName": "Microsoft Azure", + "policyFriendlyName": "protectionprofile1" + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectionContainerMappings_List.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectionContainerMappings_List.json new file mode 100644 index 000000000000..28c8c9840f41 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectionContainerMappings_List.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectionContainerMappings/cloud1protectionprofile1", + "name": "cloud1protectionprofile1", + "type": "Microsoft.RecoveryServices/vaults/replicationProtectionContainerMappings", + "properties": { + "targetProtectionContainerId": "Microsoft Azure", + "targetProtectionContainerFriendlyName": "Microsoft Azure", + "health": "Normal", + "healthErrorDetails": [], + "policyId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/protectionprofile1", + "state": "Paired", + "sourceProtectionContainerFriendlyName": "cloud1", + "sourceFabricFriendlyName": "cloud1", + "targetFabricFriendlyName": "Microsoft Azure", + "policyFriendlyName": "protectionprofile1" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectionContainerMappings_ListByReplicationProtectionContainers.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectionContainerMappings_ListByReplicationProtectionContainers.json new file mode 100644 index 000000000000..a66aaaca5855 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectionContainerMappings_ListByReplicationProtectionContainers.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectionContainerMappings/cloud1protectionprofile1", + "name": "cloud1protectionprofile1", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectionContainerMappings", + "properties": { + "targetProtectionContainerId": "Microsoft Azure", + "targetProtectionContainerFriendlyName": "Microsoft Azure", + "health": "Normal", + "healthErrorDetails": [], + "policyId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/protectionprofile1", + "state": "Paired", + "sourceProtectionContainerFriendlyName": "cloud1", + "sourceFabricFriendlyName": "cloud1", + "targetFabricFriendlyName": "Microsoft Azure", + "policyFriendlyName": "protectionprofile1" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectionContainerMappings_Purge.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectionContainerMappings_Purge.json new file mode 100644 index 000000000000..777c401ceb19 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectionContainerMappings_Purge.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "mappingName": "cloud1protectionprofile1", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectionContainerMappings_Update.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectionContainerMappings_Update.json new file mode 100644 index 000000000000..e65a84445ca1 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectionContainerMappings_Update.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "mappingName": "cloud1protectionprofile1", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "updateInput": { + "properties": { + "providerSpecificInput": { + "instanceType": "A2A", + "agentAutoUpdateStatus": "Enabled", + "automationAccountArmId": "/subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/automationrg1/providers/Microsoft.Automation/automationAccounts/automationaccount1" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectionContainerMappings/cloud1protectionprofile1", + "name": "cloud1protectionprofile1", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectionContainerMappings", + "properties": { + "targetProtectionContainerId": "Microsoft Azure", + "targetProtectionContainerFriendlyName": "Microsoft Azure", + "health": "Normal", + "healthErrorDetails": [], + "policyId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/protectionprofile1", + "state": "Paired", + "sourceProtectionContainerFriendlyName": "cloud1", + "sourceFabricFriendlyName": "cloud1", + "targetFabricFriendlyName": "Microsoft Azure", + "policyFriendlyName": "protectionprofile1", + "providerSpecificDetails": { + "instanceType": "A2A", + "agentAutoUpdateStatus": "Enabled", + "automationAccountArmId": "/subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/automationrg1/providers/Microsoft.Automation/automationAccounts/automationaccount1", + "scheduleName": "cloud1protectionprofile1_a85ea38f-62a8-471b-93cc-69b74fd9578c", + "jobScheduleName": "ffd503ec-5f88-4b58-97c8-841466e7aa47" + } + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectionContainers_Create.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectionContainers_Create.json new file mode 100644 index 000000000000..57707c539096 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectionContainers_Create.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "creationInput": { + "properties": { + "providerSpecificInput": [ + { + "instanceType": "ReplicationProviderSpecificContainerCreationInput" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "name": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers", + "properties": { + "fabricFriendlyName": "cloud1", + "friendlyName": "cloud1", + "fabricType": "HyperVSite", + "protectedItemCount": 0, + "pairingStatus": "NotPaired", + "role": "" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectionContainers_Delete.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectionContainers_Delete.json new file mode 100644 index 000000000000..257a139a43bd --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectionContainers_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectionContainers_DiscoverProtectableItem.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectionContainers_DiscoverProtectableItem.json new file mode 100644 index 000000000000..2aa2c315a4fb --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectionContainers_DiscoverProtectableItem.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "protectionContainerName": "cloud_7328549c-5c37-4459-a3c2-e35f9ef6893c", + "fabricName": "V2A-W2K12-660", + "resourceName": "MadhaviVault", + "resourceGroupName": "MadhaviVRG", + "subscriptionId": "7c943c1b-5122-4097-90c8-861411bdd574", + "discoverProtectableItemRequest": { + "properties": { + "friendlyName": "Test", + "ipAddress": "10.150.2.3", + "osType": "Windows" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/MadhaviVRG/providers/Microsoft.RecoveryServices/vaults/MadhaviVault/replicationFabrics/239f778f368e34f78216d81f030725cdf2033174b47879b9f2eeede06fdd9c4d/replicationProtectionContainers/cloud_7328549c-5c37-4459-a3c2-e35f9ef6893c", + "name": "cloud_7328549c-5c37-4459-a3c2-e35f9ef6893c", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers", + "properties": { + "fabricFriendlyName": "V2A-W2K12-660", + "friendlyName": "V2A-W2K12-660", + "fabricType": "VMware", + "protectedItemCount": 2, + "pairingStatus": "Paired", + "role": "Primary" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectionContainers_Get.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectionContainers_Get.json new file mode 100644 index 000000000000..5bc9818afd1b --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectionContainers_Get.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "protectionContainerName": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "fabricName": "cloud1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "name": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers", + "properties": { + "fabricFriendlyName": "cloud1", + "friendlyName": "cloud1", + "fabricType": "HyperVSite", + "protectedItemCount": 0, + "pairingStatus": "NotPaired", + "role": "" + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectionContainers_List.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectionContainers_List.json new file mode 100644 index 000000000000..40bf2cd5fd9f --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectionContainers_List.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "name": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "type": "Microsoft.RecoveryServices/vaults/replicationProtectionContainers", + "properties": { + "fabricFriendlyName": "cloud1", + "friendlyName": "cloud1", + "fabricType": "HyperVSite", + "protectedItemCount": 0, + "pairingStatus": "NotPaired", + "role": "" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectionContainers_ListByReplicationFabrics.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectionContainers_ListByReplicationFabrics.json new file mode 100644 index 000000000000..c3d724425c06 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectionContainers_ListByReplicationFabrics.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "fabricName": "cloud1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "name": "cloud_6d224fc6-f326-5d35-96de-fbf51efb3179", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers", + "properties": { + "fabricFriendlyName": "cloud1", + "friendlyName": "cloud1", + "fabricType": "HyperVSite", + "protectedItemCount": 0, + "pairingStatus": "NotPaired", + "role": "" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectionContainers_SwitchProtection.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectionContainers_SwitchProtection.json new file mode 100644 index 000000000000..4eca3c892270 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectionContainers_SwitchProtection.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "protectionContainerName": "CentralUSCancloud", + "fabricName": "CentralUSCanSite", + "resourceName": "priyanponeboxvault", + "resourceGroupName": "priyanprg", + "subscriptionId": "42195872-7e70-4f8a-837f-84b28ecbb78b", + "switchInput": { + "properties": { + "replicationProtectedItemName": "a2aSwapOsVm", + "providerSpecificDetails": { + "instanceType": "A2A" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/42195872-7e70-4f8a-837f-84b28ecbb78b/resourceGroups/priyanprg/providers/Microsoft.RecoveryServices/vaults/priyanponeboxvault/replicationFabrics/EUSCanSite/replicationProtectionContainers/euscancloud", + "name": "euscancloud", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers", + "properties": { + "fabricFriendlyName": "East US 2 EUAP", + "friendlyName": "euscancloud", + "fabricType": "Azure", + "protectedItemCount": 0, + "pairingStatus": "Paired", + "role": "Primary" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectionIntents_Create.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectionIntents_Create.json new file mode 100644 index 000000000000..73daa42ff53c --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectionIntents_Create.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "intentObjectName": "vm1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "509099b2-9d2c-4636-b43e-bd5cafb6be69", + "input": { + "properties": { + "providerSpecificDetails": { + "instanceType": "A2A", + "fabricObjectId": "/subscriptions/509099b2-9d2c-4636-b43e-bd5cafb6be69/resourceGroups/removeOne/providers/Microsoft.Compute/virtualMachines/vmPpgAv5", + "primaryLocation": "eastUs2", + "recoveryLocation": "westus2", + "recoverySubscriptionId": "ed5bcdf6-d61e-47bd-8ea9-f2bd379a2640", + "recoveryAvailabilityType": "Single", + "recoveryResourceGroupId": "/subscriptions/509099b2-9d2c-4636-b43e-bd5cafb6be69/resourceGroups/removeOne-asr" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/509099b2-9d2c-4636-b43e-bd5cafb6be69/resourceGroups/2007vttp/providers/Microsoft.RecoveryServices/vaults/tp2007vt/replicationProtectionIntents/vm1", + "name": "vm1", + "type": "Microsoft.RecoveryServices/vaults/replicationProtectionIntents", + "properties": { + "friendlyName": "vm1", + "jobId": "/Subscriptions/d90d145a-4cdd-45a3-b2c4-971d69775278/resourceGroups/a2acl-rg-vault-prod-gip-ccy/providers/Microsoft.RecoveryServices/vaults/a2acl-vault-prod-gip-ccy/replicationJobs/02004ea7-d498-4bb4-bdeb-cdb611706867", + "jobState": "InProgress", + "providerSpecificDetails": { + "instanceType": "A2A" + } + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectionIntents_Get.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectionIntents_Get.json new file mode 100644 index 000000000000..4e362f8c211f --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectionIntents_Get.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "intentObjectName": "vm1", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "509099b2-9d2c-4636-b43e-bd5cafb6be69" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/509099b2-9d2c-4636-b43e-bd5cafb6be69/resourceGroups/2007vttp/providers/Microsoft.RecoveryServices/vaults/tp2007vt/replicationProtectionIntents/vm1", + "name": "vm1", + "type": "Microsoft.RecoveryServices/vaults/replicationProtectionIntents", + "properties": { + "friendlyName": "vm1", + "jobId": "/Subscriptions/d90d145a-4cdd-45a3-b2c4-971d69775278/resourceGroups/a2acl-rg-vault-prod-gip-ccy/providers/Microsoft.RecoveryServices/vaults/a2acl-vault-prod-gip-ccy/replicationJobs/02004ea7-d498-4bb4-bdeb-cdb611706867", + "jobState": "InProgress", + "providerSpecificDetails": { + "instanceType": "A2A", + "fabricObjectId": "/subscriptions/509099b2-9d2c-4636-b43e-bd5cafb6be69/resourceGroups/removeOne/providers/Microsoft.Compute/virtualMachines/vmPpgAv5", + "primaryLocation": "eastUs2", + "recoveryLocation": "westus2", + "recoverySubscriptionId": "ed5bcdf6-d61e-47bd-8ea9-f2bd379a2640", + "recoveryAvailabilityType": "Single" + } + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectionIntents_List.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectionIntents_List.json new file mode 100644 index 000000000000..df5f1c6b4170 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationProtectionIntents_List.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "resourceName": "2007vttp", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "509099b2-9d2c-4636-b43e-bd5cafb6be69" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/509099b2-9d2c-4636-b43e-bd5cafb6be69/resourceGroups/2007vttp/providers/Microsoft.RecoveryServices/vaults/tp2007vt/replicationProtectionIntents/vm1", + "name": "vm1", + "type": "Microsoft.RecoveryServices/vaults/replicationProtectionIntents", + "properties": { + "friendlyName": "vm1", + "jobId": "/Subscriptions/d90d145a-4cdd-45a3-b2c4-971d69775278/resourceGroups/a2acl-rg-vault-prod-gip-ccy/providers/Microsoft.RecoveryServices/vaults/a2acl-vault-prod-gip-ccy/replicationJobs/02004ea7-d498-4bb4-bdeb-cdb611706867", + "jobState": "InProgress", + "providerSpecificDetails": { + "instanceType": "A2A", + "fabricObjectId": "/subscriptions/509099b2-9d2c-4636-b43e-bd5cafb6be69/resourceGroups/removeOne/providers/Microsoft.Compute/virtualMachines/vmPpgAv5", + "primaryLocation": "eastUs2", + "recoveryLocation": "westus2", + "recoverySubscriptionId": "ed5bcdf6-d61e-47bd-8ea9-f2bd379a2640", + "recoveryAvailabilityType": "Single" + } + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationRecoveryPlans_Create.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationRecoveryPlans_Create.json new file mode 100644 index 000000000000..61da3004df82 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationRecoveryPlans_Create.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "recoveryPlanName": "RPtest1", + "input": { + "properties": { + "primaryFabricId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1", + "recoveryFabricId": "Microsoft Azure", + "failoverDeploymentModel": "ResourceManager", + "groups": [ + { + "groupType": "Boot", + "replicationProtectedItems": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "virtualMachineId": "f8491e4f-817a-40dd-a90c-af773978c75b" + } + ], + "startGroupActions": [], + "endGroupActions": [] + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationRecoveryPlans/RPtest1", + "name": "RPtest1", + "type": "Microsoft.RecoveryServices/vaults/replicationRecoveryPlans", + "properties": { + "friendlyName": "RPtest1", + "primaryFabricId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1", + "primaryFabricFriendlyName": "cloud1", + "recoveryFabricId": "Microsoft Azure", + "recoveryFabricFriendlyName": "Microsoft Azure", + "failoverDeploymentModel": "ResourceManager", + "replicationProviders": [ + "HyperVReplicaAzure" + ], + "allowedOperations": [ + "PlannedFailover", + "UnplannedFailover", + "TestFailover" + ], + "groups": [ + { + "groupType": "Shutdown", + "replicationProtectedItems": [], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Failover", + "replicationProtectedItems": [], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Boot", + "replicationProtectedItems": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "virtualMachineId": "f8491e4f-817a-40dd-a90c-af773978c75b" + } + ], + "startGroupActions": [], + "endGroupActions": [] + } + ] + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationRecoveryPlans_Delete.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationRecoveryPlans_Delete.json new file mode 100644 index 000000000000..ad1ca12b1ba9 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationRecoveryPlans_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "recoveryPlanName": "RPtest1" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationRecoveryPlans_FailoverCommit.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationRecoveryPlans_FailoverCommit.json new file mode 100644 index 000000000000..711d5ee97176 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationRecoveryPlans_FailoverCommit.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "recoveryPlanName": "RPtest1" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationRecoveryPlans/RPtest1", + "name": "RPtest1", + "type": "Microsoft.RecoveryServices/vaults/replicationRecoveryPlans", + "properties": { + "friendlyName": "RPtest1", + "primaryFabricId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1", + "primaryFabricFriendlyName": "cloud1", + "recoveryFabricId": "Microsoft Azure", + "recoveryFabricFriendlyName": "Microsoft Azure", + "failoverDeploymentModel": "ResourceManager", + "replicationProviders": [ + "HyperVReplicaAzure" + ], + "allowedOperations": [ + "PlannedFailover", + "UnplannedFailover", + "TestFailover" + ], + "lastPlannedFailoverTime": "2017-04-27T07:33:49.1372448Z", + "lastTestFailoverTime": "2017-04-27T07:00:27.8354747Z", + "currentScenario": { + "scenarioName": "CommitFailover", + "jobId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/5276a7bc-12a3-43a1-bc53-9bf80e0be87b", + "startTime": "2017-04-27T08:52:42.1587592Z" + }, + "currentScenarioStatus": "Succeeded", + "currentScenarioStatusDescription": "Completed", + "groups": [ + { + "groupType": "Shutdown", + "replicationProtectedItems": [], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Failover", + "replicationProtectedItems": [], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Boot", + "replicationProtectedItems": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "virtualMachineId": "f8491e4f-817a-40dd-a90c-af773978c75b" + } + ], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Boot", + "replicationProtectedItems": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/c0c14913-3d7a-48ea-9531-cc99e0e686e6", + "virtualMachineId": "c0c14913-3d7a-48ea-9531-cc99e0e686e6" + } + ], + "startGroupActions": [], + "endGroupActions": [] + } + ] + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationRecoveryPlans_Get.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationRecoveryPlans_Get.json new file mode 100644 index 000000000000..1cbfc98f8e67 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationRecoveryPlans_Get.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "recoveryPlanName": "RPtest1" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationRecoveryPlans/RPtest1", + "name": "RPtest1", + "type": "Microsoft.RecoveryServices/vaults/replicationRecoveryPlans", + "properties": { + "friendlyName": "RPtest1", + "primaryFabricId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1", + "primaryFabricFriendlyName": "cloud1", + "recoveryFabricId": "Microsoft Azure", + "recoveryFabricFriendlyName": "Microsoft Azure", + "failoverDeploymentModel": "ResourceManager", + "replicationProviders": [ + "HyperVReplicaAzure" + ], + "allowedOperations": [ + "PlannedFailover", + "UnplannedFailover", + "TestFailover" + ], + "groups": [ + { + "groupType": "Shutdown", + "replicationProtectedItems": [], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Failover", + "replicationProtectedItems": [], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Boot", + "replicationProtectedItems": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "virtualMachineId": "f8491e4f-817a-40dd-a90c-af773978c75b" + } + ], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Boot", + "replicationProtectedItems": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/c0c14913-3d7a-48ea-9531-cc99e0e686e6", + "virtualMachineId": "c0c14913-3d7a-48ea-9531-cc99e0e686e6" + } + ], + "startGroupActions": [], + "endGroupActions": [] + } + ] + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationRecoveryPlans_List.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationRecoveryPlans_List.json new file mode 100644 index 000000000000..e331b6e5f49c --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationRecoveryPlans_List.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationRecoveryPlans/RPtest1", + "name": "RPtest1", + "type": "Microsoft.RecoveryServices/vaults/replicationRecoveryPlans", + "properties": { + "friendlyName": "RPtest1", + "primaryFabricId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1", + "primaryFabricFriendlyName": "cloud1", + "recoveryFabricId": "Microsoft Azure", + "recoveryFabricFriendlyName": "Microsoft Azure", + "failoverDeploymentModel": "ResourceManager", + "replicationProviders": [ + "HyperVReplicaAzure" + ], + "allowedOperations": [ + "PlannedFailover", + "UnplannedFailover", + "TestFailover" + ], + "groups": [] + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationRecoveryPlans_PlannedFailover.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationRecoveryPlans_PlannedFailover.json new file mode 100644 index 000000000000..1c791b4fed6c --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationRecoveryPlans_PlannedFailover.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "recoveryPlanName": "RPtest1", + "input": { + "properties": { + "failoverDirection": "PrimaryToRecovery", + "providerSpecificDetails": [ + { + "instanceType": "HyperVReplicaAzure" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationRecoveryPlans/RPtest1", + "name": "RPtest1", + "type": "Microsoft.RecoveryServices/vaults/replicationRecoveryPlans", + "properties": { + "friendlyName": "RPtest1", + "primaryFabricId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1", + "primaryFabricFriendlyName": "cloud1", + "recoveryFabricId": "Microsoft Azure", + "recoveryFabricFriendlyName": "Microsoft Azure", + "failoverDeploymentModel": "ResourceManager", + "replicationProviders": [ + "HyperVReplicaAzure" + ], + "allowedOperations": [ + "PlannedFailover", + "UnplannedFailover", + "TestFailover", + "Commit" + ], + "lastPlannedFailoverTime": "2017-04-27T07:33:49.1372448Z", + "lastTestFailoverTime": "2017-04-27T07:00:27.8354747Z", + "currentScenario": { + "scenarioName": "PlannedFailover", + "jobId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/d4821a53-90da-4fcb-bc11-a280d13e3350", + "startTime": "2017-04-27T07:34:02.6176524Z" + }, + "currentScenarioStatus": "Succeeded", + "currentScenarioStatusDescription": "Completed", + "groups": [ + { + "groupType": "Shutdown", + "replicationProtectedItems": [], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Failover", + "replicationProtectedItems": [], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Boot", + "replicationProtectedItems": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "virtualMachineId": "f8491e4f-817a-40dd-a90c-af773978c75b" + } + ], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Boot", + "replicationProtectedItems": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/c0c14913-3d7a-48ea-9531-cc99e0e686e6", + "virtualMachineId": "c0c14913-3d7a-48ea-9531-cc99e0e686e6" + } + ], + "startGroupActions": [], + "endGroupActions": [] + } + ] + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationRecoveryPlans_Reprotect.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationRecoveryPlans_Reprotect.json new file mode 100644 index 000000000000..95653b9c9279 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationRecoveryPlans_Reprotect.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "recoveryPlanName": "RPtest1" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationRecoveryPlans/RPtest1", + "name": "RPtest1", + "type": "Microsoft.RecoveryServices/vaults/replicationRecoveryPlans", + "properties": { + "friendlyName": "RPtest1", + "primaryFabricId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1", + "primaryFabricFriendlyName": "cloud1", + "recoveryFabricId": "Microsoft Azure", + "recoveryFabricFriendlyName": "Microsoft Azure", + "failoverDeploymentModel": "ResourceManager", + "replicationProviders": [ + "HyperVReplicaAzure" + ], + "allowedOperations": [ + "PlannedFailover", + "UnplannedFailover", + "TestFailover" + ], + "lastPlannedFailoverTime": "2017-04-27T08:58:35.9062813Z", + "lastTestFailoverTime": "2017-04-27T07:00:27.8354747Z", + "currentScenario": { + "scenarioName": "ReverseReplication", + "jobId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/edf01dfb-b649-4802-91e4-3d55ce3bebf0", + "startTime": "2017-04-27T09:52:16.9818841Z" + }, + "currentScenarioStatus": "Succeeded", + "currentScenarioStatusDescription": "Completed", + "groups": [ + { + "groupType": "Shutdown", + "replicationProtectedItems": [], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Failover", + "replicationProtectedItems": [], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Boot", + "replicationProtectedItems": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "virtualMachineId": "f8491e4f-817a-40dd-a90c-af773978c75b" + } + ], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Boot", + "replicationProtectedItems": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/c0c14913-3d7a-48ea-9531-cc99e0e686e6", + "virtualMachineId": "c0c14913-3d7a-48ea-9531-cc99e0e686e6" + } + ], + "startGroupActions": [], + "endGroupActions": [] + } + ] + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationRecoveryPlans_TestFailover.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationRecoveryPlans_TestFailover.json new file mode 100644 index 000000000000..7bb55a3f128e --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationRecoveryPlans_TestFailover.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "recoveryPlanName": "RPtest1", + "input": { + "properties": { + "failoverDirection": "PrimaryToRecovery", + "networkType": "VmNetworkAsInput", + "networkId": "/subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/siterecoveryProd1/providers/Microsoft.Network/virtualNetworks/vnetavrai", + "providerSpecificDetails": [ + { + "instanceType": "HyperVReplicaAzure" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationRecoveryPlans/RPtest1", + "name": "RPtest1", + "type": "Microsoft.RecoveryServices/vaults/replicationRecoveryPlans", + "properties": { + "friendlyName": "RPtest1", + "primaryFabricId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1", + "primaryFabricFriendlyName": "cloud1", + "recoveryFabricId": "Microsoft Azure", + "recoveryFabricFriendlyName": "Microsoft Azure", + "failoverDeploymentModel": "ResourceManager", + "replicationProviders": [ + "HyperVReplicaAzure" + ], + "allowedOperations": [ + "TestFailoverCleanup" + ], + "currentScenario": { + "scenarioName": "TestFailover", + "jobId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/d40bfb40-aaaa-4c0d-87d3-41b15439a84b", + "startTime": "2017-04-27T07:00:58.8191916Z" + }, + "currentScenarioStatus": "Suspended", + "currentScenarioStatusDescription": "WaitingForStopTestFailover", + "groups": [ + { + "groupType": "Shutdown", + "replicationProtectedItems": [], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Failover", + "replicationProtectedItems": [], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Boot", + "replicationProtectedItems": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "virtualMachineId": "f8491e4f-817a-40dd-a90c-af773978c75b" + } + ], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Boot", + "replicationProtectedItems": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/c0c14913-3d7a-48ea-9531-cc99e0e686e6", + "virtualMachineId": "c0c14913-3d7a-48ea-9531-cc99e0e686e6" + } + ], + "startGroupActions": [], + "endGroupActions": [] + } + ] + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationRecoveryPlans_TestFailoverCleanup.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationRecoveryPlans_TestFailoverCleanup.json new file mode 100644 index 000000000000..dc847909b631 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationRecoveryPlans_TestFailoverCleanup.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "recoveryPlanName": "RPtest1", + "input": { + "properties": { + "comments": "Test Failover Cleanup" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationRecoveryPlans/RPtest1", + "name": "RPtest1", + "type": "Microsoft.RecoveryServices/vaults/replicationRecoveryPlans", + "properties": { + "friendlyName": "RPtest1", + "primaryFabricId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1", + "primaryFabricFriendlyName": "cloud1", + "recoveryFabricId": "Microsoft Azure", + "recoveryFabricFriendlyName": "Microsoft Azure", + "failoverDeploymentModel": "ResourceManager", + "replicationProviders": [ + "HyperVReplicaAzure" + ], + "allowedOperations": [ + "PlannedFailover", + "UnplannedFailover", + "TestFailover" + ], + "lastPlannedFailoverTime": "2017-04-27T07:33:49.1372448Z", + "lastTestFailoverTime": "2017-04-27T07:00:27.8354747Z", + "currentScenario": { + "scenarioName": "TestFailoverCleanup", + "jobId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/4ae8eaa8-a384-42cb-9768-152cb5b8a1ff", + "startTime": "2017-04-27T07:10:52.8424747Z" + }, + "currentScenarioStatus": "Succeeded", + "currentScenarioStatusDescription": "Completed", + "groups": [ + { + "groupType": "Shutdown", + "replicationProtectedItems": [], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Failover", + "replicationProtectedItems": [], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Boot", + "replicationProtectedItems": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "virtualMachineId": "f8491e4f-817a-40dd-a90c-af773978c75b" + } + ], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Boot", + "replicationProtectedItems": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/c0c14913-3d7a-48ea-9531-cc99e0e686e6", + "virtualMachineId": "c0c14913-3d7a-48ea-9531-cc99e0e686e6" + } + ], + "startGroupActions": [], + "endGroupActions": [] + } + ] + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationRecoveryPlans_UnplannedFailover.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationRecoveryPlans_UnplannedFailover.json new file mode 100644 index 000000000000..07feb63825a5 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationRecoveryPlans_UnplannedFailover.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "recoveryPlanName": "RPtest1", + "input": { + "properties": { + "failoverDirection": "PrimaryToRecovery", + "sourceSiteOperations": "Required", + "providerSpecificDetails": [ + { + "instanceType": "HyperVReplicaAzure" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationRecoveryPlans/RPtest1", + "name": "RPtest1", + "type": "Microsoft.RecoveryServices/vaults/replicationRecoveryPlans", + "properties": { + "friendlyName": "RPtest1", + "primaryFabricId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1", + "primaryFabricFriendlyName": "cloud1", + "recoveryFabricId": "Microsoft Azure", + "recoveryFabricFriendlyName": "Microsoft Azure", + "failoverDeploymentModel": "ResourceManager", + "replicationProviders": [ + "HyperVReplicaAzure" + ], + "allowedOperations": [ + "PlannedFailover", + "UnplannedFailover", + "TestFailover", + "Commit" + ], + "lastPlannedFailoverTime": "2017-04-27T08:58:35.9062813Z", + "lastTestFailoverTime": "2017-04-27T07:00:27.8354747Z", + "currentScenario": { + "scenarioName": "UnplannedFailover", + "jobId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/60b84068-9adb-4867-a49d-88be40bff14b", + "startTime": "2017-04-27T10:03:03.2206946Z" + }, + "currentScenarioStatus": "Succeeded", + "currentScenarioStatusDescription": "Completed", + "groups": [ + { + "groupType": "Shutdown", + "replicationProtectedItems": [], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Failover", + "replicationProtectedItems": [], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Boot", + "replicationProtectedItems": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "virtualMachineId": "f8491e4f-817a-40dd-a90c-af773978c75b" + } + ], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Boot", + "replicationProtectedItems": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/c0c14913-3d7a-48ea-9531-cc99e0e686e6", + "virtualMachineId": "c0c14913-3d7a-48ea-9531-cc99e0e686e6" + } + ], + "startGroupActions": [], + "endGroupActions": [] + } + ] + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationRecoveryPlans_Update.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationRecoveryPlans_Update.json new file mode 100644 index 000000000000..2965d23c2675 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationRecoveryPlans_Update.json @@ -0,0 +1,111 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "recoveryPlanName": "RPtest1", + "input": { + "properties": { + "groups": [ + { + "groupType": "Shutdown", + "replicationProtectedItems": [], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Failover", + "replicationProtectedItems": [], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Boot", + "replicationProtectedItems": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "virtualMachineId": "f8491e4f-817a-40dd-a90c-af773978c75b" + } + ], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Boot", + "replicationProtectedItems": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/c0c14913-3d7a-48ea-9531-cc99e0e686e6", + "virtualMachineId": "c0c14913-3d7a-48ea-9531-cc99e0e686e6" + } + ], + "startGroupActions": [], + "endGroupActions": [] + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationRecoveryPlans/RPtest1", + "name": "RPtest1", + "type": "Microsoft.RecoveryServices/vaults/replicationRecoveryPlans", + "properties": { + "friendlyName": "RPtest1", + "primaryFabricId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1", + "primaryFabricFriendlyName": "cloud1", + "recoveryFabricId": "Microsoft Azure", + "recoveryFabricFriendlyName": "Microsoft Azure", + "failoverDeploymentModel": "ResourceManager", + "replicationProviders": [ + "HyperVReplicaAzure" + ], + "allowedOperations": [ + "PlannedFailover", + "UnplannedFailover", + "TestFailover" + ], + "groups": [ + { + "groupType": "Shutdown", + "replicationProtectedItems": [], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Failover", + "replicationProtectedItems": [], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Boot", + "replicationProtectedItems": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/f8491e4f-817a-40dd-a90c-af773978c75b", + "virtualMachineId": "f8491e4f-817a-40dd-a90c-af773978c75b" + } + ], + "startGroupActions": [], + "endGroupActions": [] + }, + { + "groupType": "Boot", + "replicationProtectedItems": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationProtectionContainers/cloud_6d224fc6-f326-5d35-96de-fbf51efb3179/replicationProtectedItems/c0c14913-3d7a-48ea-9531-cc99e0e686e6", + "virtualMachineId": "c0c14913-3d7a-48ea-9531-cc99e0e686e6" + } + ], + "startGroupActions": [], + "endGroupActions": [] + } + ] + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationRecoveryServicesProviders_Create.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationRecoveryServicesProviders_Create.json new file mode 100644 index 000000000000..633d2dca50ec --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationRecoveryServicesProviders_Create.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "providerName": "vmwareprovider1", + "fabricName": "vmwarefabric1", + "resourceName": "migrationvault", + "resourceGroupName": "resourcegroup1", + "subscriptionId": "cb53d0c3-bd59-4721-89bc-06916a9147ef", + "addProviderInput": { + "properties": { + "machineName": "vmwareprovider1", + "authenticationIdentityInput": { + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "applicationId": "f66fce08-c0c6-47a1-beeb-0ede5ea94f90", + "objectId": "141360b8-5686-4240-a027-5e24e6affeba", + "audience": "https://microsoft.onmicrosoft.com/cf19e349-644c-4c6a-bcae-9c8f35357874", + "aadAuthority": "https://login.microsoftonline.com" + }, + "resourceAccessIdentityInput": { + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "applicationId": "f66fce08-c0c6-47a1-beeb-0ede5ea94f90", + "objectId": "141360b8-5686-4240-a027-5e24e6affeba", + "audience": "https://microsoft.onmicrosoft.com/cf19e349-644c-4c6a-bcae-9c8f35357874", + "aadAuthority": "https://login.microsoftonline.com" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationRecoveryServicesProviders/vmwareprovider1", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationRecoveryServicesProviders", + "name": "vmwareprovider1", + "properties": { + "fabricType": "VMwareV2", + "friendlyName": "vmwareprovider1", + "providerVersion": "5.1.3688.0", + "serverVersion": "3.2.7510.0", + "providerVersionState": "Latest", + "fabricFriendlyName": "vmwarefabric1", + "lastHeartBeat": "2017-04-27T09:16:04.9405768Z", + "connectionStatus": "Connected", + "protectedItemCount": 2, + "allowedScenarios": [ + "Refresh" + ] + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationRecoveryServicesProviders_Delete.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationRecoveryServicesProviders_Delete.json new file mode 100644 index 000000000000..60c4517bd94a --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationRecoveryServicesProviders_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "providerName": "241641e6-ee7b-4ee4-8141-821fadda43fa", + "fabricName": "cloud1", + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationRecoveryServicesProviders_Get.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationRecoveryServicesProviders_Get.json new file mode 100644 index 000000000000..b3a976a912db --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationRecoveryServicesProviders_Get.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "providerName": "241641e6-ee7b-4ee4-8141-821fadda43fa", + "fabricName": "cloud1", + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationRecoveryServicesProviders/241641e6-ee7b-4ee4-8141-821fadda43fa", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationRecoveryServicesProviders", + "name": "241641e6-ee7b-4ee4-8141-821fadda43fa", + "properties": { + "fabricType": "HyperVSite", + "friendlyName": "CP-B3L40406-12.ntdev.corp.microsoft.com", + "providerVersion": "5.1.2250.0", + "serverVersion": "3.2.7510.0", + "providerVersionState": "Latest", + "fabricFriendlyName": "cloud1", + "lastHeartBeat": "2017-04-27T09:16:04.9405768Z", + "connectionStatus": "Connected", + "protectedItemCount": 2, + "allowedScenarios": [ + "Refresh" + ] + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationRecoveryServicesProviders_List.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationRecoveryServicesProviders_List.json new file mode 100644 index 000000000000..9bdf993b15a2 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationRecoveryServicesProviders_List.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationRecoveryServicesProviders/241641e6-ee7b-4ee4-8141-821fadda43fa", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationRecoveryServicesProviders", + "name": "241641e6-ee7b-4ee4-8141-821fadda43fa", + "properties": { + "fabricType": "HyperVSite", + "friendlyName": "CP-B3L40406-12.ntdev.corp.microsoft.com", + "providerVersion": "5.1.2250.0", + "serverVersion": "3.2.7510.0", + "providerVersionState": "Latest", + "fabricFriendlyName": "cloud1", + "lastHeartBeat": "2017-04-27T09:06:38.2728455Z", + "connectionStatus": "Connected", + "protectedItemCount": 2, + "allowedScenarios": [ + "Refresh" + ] + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationRecoveryServicesProviders_ListByReplicationFabrics.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationRecoveryServicesProviders_ListByReplicationFabrics.json new file mode 100644 index 000000000000..4d02d49905cc --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationRecoveryServicesProviders_ListByReplicationFabrics.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "fabricName": "cloud1", + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationRecoveryServicesProviders/241641e6-ee7b-4ee4-8141-821fadda43fa", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationRecoveryServicesProviders", + "name": "241641e6-ee7b-4ee4-8141-821fadda43fa", + "properties": { + "fabricType": "HyperVSite", + "friendlyName": "CP-B3L40406-12.ntdev.corp.microsoft.com", + "providerVersion": "5.1.2250.0", + "serverVersion": "3.2.7510.0", + "providerVersionState": "Latest", + "fabricFriendlyName": "cloud1", + "lastHeartBeat": "2017-04-27T09:06:38.2728455Z", + "connectionStatus": "Connected", + "protectedItemCount": 2, + "allowedScenarios": [ + "Refresh" + ] + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationRecoveryServicesProviders_Purge.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationRecoveryServicesProviders_Purge.json new file mode 100644 index 000000000000..60c4517bd94a --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationRecoveryServicesProviders_Purge.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "providerName": "241641e6-ee7b-4ee4-8141-821fadda43fa", + "fabricName": "cloud1", + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationRecoveryServicesProviders_RefreshProvider.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationRecoveryServicesProviders_RefreshProvider.json new file mode 100644 index 000000000000..33383054e12b --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationRecoveryServicesProviders_RefreshProvider.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "providerName": "241641e6-ee7b-4ee4-8141-821fadda43fa", + "fabricName": "cloud1", + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/cloud1/replicationRecoveryServicesProviders/241641e6-ee7b-4ee4-8141-821fadda43fa", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationRecoveryServicesProviders", + "name": "241641e6-ee7b-4ee4-8141-821fadda43fa", + "properties": { + "fabricType": "HyperVSite", + "friendlyName": "CP-B3L40406-12.ntdev.corp.microsoft.com", + "providerVersion": "5.1.2250.0", + "serverVersion": "3.2.7510.0", + "providerVersionState": "Latest", + "fabricFriendlyName": "cloud1", + "lastHeartBeat": "2017-04-27T09:48:36.6528303Z", + "connectionStatus": "Connected", + "protectedItemCount": 2, + "allowedScenarios": [ + "Refresh" + ] + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationStorageClassificationMappings_Create.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationStorageClassificationMappings_Create.json new file mode 100644 index 000000000000..c282638a58c1 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationStorageClassificationMappings_Create.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "storageClassificationMappingName": "testStorageMapping", + "storageClassificationName": "8891569e-aaef-4a46-a4a0-78c14f2d7b09", + "fabricName": "2a48e3770ac08aa2be8bfbd94fcfb1cbf2dcc487b78fb9d3bd778304441b06a0", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "9112a37f-0f3e-46ec-9c00-060c6edca071", + "pairingInput": { + "properties": { + "targetStorageClassificationId": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/2a48e3770ac08aa2be8bfbd94fcfb1cbf2dcc487b78fb9d3bd778304441b06a0/replicationStorageClassifications/8891569e-aaef-4a46-a4a0-78c14f2d7b09" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/2a48e3770ac08aa2be8bfbd94fcfb1cbf2dcc487b78fb9d3bd778304441b06a0/replicationStorageClassifications/8891569e-aaef-4a46-a4a0-78c14f2d7b09/replicationStorageClassificationMappings/testStorageMapping", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationStorageClassifications/replicationStorageClassificationMappings", + "name": "testStorageMapping", + "properties": { + "targetStorageClassificationId": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/2a48e3770ac08aa2be8bfbd94fcfb1cbf2dcc487b78fb9d3bd778304441b06a0/replicationStorageClassifications/8891569e-aaef-4a46-a4a0-78c14f2d7b09" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationStorageClassificationMappings_Delete.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationStorageClassificationMappings_Delete.json new file mode 100644 index 000000000000..45c0933f61a3 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationStorageClassificationMappings_Delete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "storageClassificationMappingName": "testStorageMapping", + "storageClassificationName": "8891569e-aaef-4a46-a4a0-78c14f2d7b09", + "fabricName": "2a48e3770ac08aa2be8bfbd94fcfb1cbf2dcc487b78fb9d3bd778304441b06a0", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "9112a37f-0f3e-46ec-9c00-060c6edca071" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationStorageClassificationMappings_Get.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationStorageClassificationMappings_Get.json new file mode 100644 index 000000000000..5558d290f8db --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationStorageClassificationMappings_Get.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "storageClassificationMappingName": "testStorageMapping", + "storageClassificationName": "8891569e-aaef-4a46-a4a0-78c14f2d7b09", + "fabricName": "2a48e3770ac08aa2be8bfbd94fcfb1cbf2dcc487b78fb9d3bd778304441b06a0", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "9112a37f-0f3e-46ec-9c00-060c6edca071" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/2a48e3770ac08aa2be8bfbd94fcfb1cbf2dcc487b78fb9d3bd778304441b06a0/replicationStorageClassifications/8891569e-aaef-4a46-a4a0-78c14f2d7b09/replicationStorageClassificationMappings/testStorageMapping", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationStorageClassifications/replicationStorageClassificationMappings", + "name": "testStorageMapping", + "properties": { + "targetStorageClassificationId": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/2a48e3770ac08aa2be8bfbd94fcfb1cbf2dcc487b78fb9d3bd778304441b06a0/replicationStorageClassifications/8891569e-aaef-4a46-a4a0-78c14f2d7b09" + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationStorageClassificationMappings_List.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationStorageClassificationMappings_List.json new file mode 100644 index 000000000000..bc232efa88dc --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationStorageClassificationMappings_List.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "9112a37f-0f3e-46ec-9c00-060c6edca071" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/2a48e3770ac08aa2be8bfbd94fcfb1cbf2dcc487b78fb9d3bd778304441b06a0/replicationStorageClassifications/8891569e-aaef-4a46-a4a0-78c14f2d7b09/replicationStorageClassificationMappings/testStorageMapping", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationStorageClassifications/replicationStorageClassificationMappings", + "name": "testStorageMapping", + "properties": { + "targetStorageClassificationId": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/2a48e3770ac08aa2be8bfbd94fcfb1cbf2dcc487b78fb9d3bd778304441b06a0/replicationStorageClassifications/8891569e-aaef-4a46-a4a0-78c14f2d7b09" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationStorageClassificationMappings_ListByReplicationStorageClassifications.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationStorageClassificationMappings_ListByReplicationStorageClassifications.json new file mode 100644 index 000000000000..7b832f75ab6c --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationStorageClassificationMappings_ListByReplicationStorageClassifications.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "storageClassificationName": "8891569e-aaef-4a46-a4a0-78c14f2d7b09", + "fabricName": "2a48e3770ac08aa2be8bfbd94fcfb1cbf2dcc487b78fb9d3bd778304441b06a0", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "9112a37f-0f3e-46ec-9c00-060c6edca071" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/2a48e3770ac08aa2be8bfbd94fcfb1cbf2dcc487b78fb9d3bd778304441b06a0/replicationStorageClassifications/8891569e-aaef-4a46-a4a0-78c14f2d7b09/replicationStorageClassificationMappings/testStorageMapping", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationStorageClassifications/replicationStorageClassificationMappings", + "name": "testStorageMapping", + "properties": { + "targetStorageClassificationId": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/2a48e3770ac08aa2be8bfbd94fcfb1cbf2dcc487b78fb9d3bd778304441b06a0/replicationStorageClassifications/8891569e-aaef-4a46-a4a0-78c14f2d7b09" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationStorageClassifications_Get.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationStorageClassifications_Get.json new file mode 100644 index 000000000000..badd44d44f46 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationStorageClassifications_Get.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "storageClassificationName": "8891569e-aaef-4a46-a4a0-78c14f2d7b09", + "fabricName": "2a48e3770ac08aa2be8bfbd94fcfb1cbf2dcc487b78fb9d3bd778304441b06a0", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "9112a37f-0f3e-46ec-9c00-060c6edca071" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/2a48e3770ac08aa2be8bfbd94fcfb1cbf2dcc487b78fb9d3bd778304441b06a0/replicationStorageClassifications/8891569e-aaef-4a46-a4a0-78c14f2d7b09", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationStorageClassifications", + "name": "8891569e-aaef-4a46-a4a0-78c14f2d7b09", + "properties": { + "friendlyName": "testStorageClassification" + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationStorageClassifications_List.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationStorageClassifications_List.json new file mode 100644 index 000000000000..116ca284fa0a --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationStorageClassifications_List.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "9112a37f-0f3e-46ec-9c00-060c6edca071" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/2a48e3770ac08aa2be8bfbd94fcfb1cbf2dcc487b78fb9d3bd778304441b06a0/replicationStorageClassifications/8891569e-aaef-4a46-a4a0-78c14f2d7b09", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationStorageClassifications", + "name": "8891569e-aaef-4a46-a4a0-78c14f2d7b09", + "properties": { + "friendlyName": "testStorageClassification" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationStorageClassifications_ListByReplicationFabrics.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationStorageClassifications_ListByReplicationFabrics.json new file mode 100644 index 000000000000..97be9b5853a0 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationStorageClassifications_ListByReplicationFabrics.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "fabricName": "2a48e3770ac08aa2be8bfbd94fcfb1cbf2dcc487b78fb9d3bd778304441b06a0", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "9112a37f-0f3e-46ec-9c00-060c6edca071" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/9112a37f-0f3e-46ec-9c00-060c6edca071/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/2a48e3770ac08aa2be8bfbd94fcfb1cbf2dcc487b78fb9d3bd778304441b06a0/replicationStorageClassifications/8891569e-aaef-4a46-a4a0-78c14f2d7b09", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationStorageClassifications", + "name": "8891569e-aaef-4a46-a4a0-78c14f2d7b09", + "properties": { + "friendlyName": "testStorageClassification" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationVaultHealth_Get.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationVaultHealth_Get.json new file mode 100644 index 000000000000..abfc62be8764 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationVaultHealth_Get.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "name": "Default", + "type": "Microsoft.RecoveryServices/vaults/replicationVaultHealth", + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationVaultHealth/Default", + "properties": { + "vaultErrors": [], + "protectedItemsHealth": { + "resourceCount": 6, + "issues": [ + { + "summaryCode": "10008", + "category": "Replication", + "severity": "Error", + "summaryMessage": "RPO Throttled", + "affectedResourceType": "replicationProtectedItems", + "affectedResourceSubtype": "", + "affectedResourceCorrelationIds": [ + "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "c183865e-6077-46f2-a3b1-ceb0a4c3751e" + ] + } + ] + }, + "fabricsHealth": { + "resourceCount": 1, + "issues": [] + } + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationVaultHealth_Refresh.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationVaultHealth_Refresh.json new file mode 100644 index 000000000000..a8ef4d85bd3a --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationVaultHealth_Refresh.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "name": "Default", + "type": "Microsoft.RecoveryServices/vaults/replicationVaultHealth", + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationVaultHealth/Default", + "properties": { + "vaultErrors": [], + "protectedItemsHealth": { + "resourceCount": 2, + "issues": [] + }, + "fabricsHealth": { + "resourceCount": 1, + "issues": [] + } + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationVaultSetting_Create.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationVaultSetting_Create.json new file mode 100644 index 000000000000..1b73a917bffb --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationVaultSetting_Create.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "vaultSettingName": "default", + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a", + "input": { + "properties": { + "migrationSolutionId": "/subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.Migrate/MigrateProjects/resourceGroupPS1-MigrateProject/Solutions/Servers-Migration-ServerMigration" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationVaultSettings/default", + "name": "default", + "type": "Microsoft.RecoveryServices/vaults/replicationVaultSettings", + "properties": { + "migrationSolutionId": "/subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.Migrate/MigrateProjects/resourceGroupPS1-MigrateProject/Solutions/Servers-Migration-ServerMigration" + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationVaultSetting_Get.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationVaultSetting_Get.json new file mode 100644 index 000000000000..bceaf79f5da2 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationVaultSetting_Get.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "vaultSettingName": "default", + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationVaultSettings/default", + "name": "default", + "type": "Microsoft.RecoveryServices/vaults/replicationVaultSettings", + "properties": { + "migrationSolutionId": "/subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.Migrate/MigrateProjects/resourceGroupPS1-MigrateProject/Solutions/Servers-Migration-ServerMigration" + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationVaultSetting_List.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationVaultSetting_List.json new file mode 100644 index 000000000000..3406dea8dd5d --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationVaultSetting_List.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationVaultSettings/default", + "name": "default", + "type": "Microsoft.RecoveryServices/vaults/replicationVaultSettings", + "properties": { + "migrationSolutionId": "/subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.Migrate/MigrateProjects/resourceGroupPS1-MigrateProject/Solutions/Servers-Migration-ServerMigration" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationvCenters_Create.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationvCenters_Create.json new file mode 100644 index 000000000000..be0ebfff04e6 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationvCenters_Create.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "vCenterName": "esx-78", + "fabricName": "MadhaviFabric", + "api-version": "2021-03-01", + "resourceName": "MadhaviVault", + "resourceGroupName": "MadhaviVRG", + "subscriptionId": "7c943c1b-5122-4097-90c8-861411bdd574", + "addVCenterRequest": { + "properties": { + "friendlyName": "esx-78", + "ipAddress": "inmtest78", + "processServerId": "5A720CAB-39CB-F445-BD1662B0B33164B5", + "port": "443", + "runAsAccountId": "2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "esx-78", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationvCenters", + "id": "/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/MadhaviVRG/providers/Microsoft.RecoveryServices/vaults/MadhaviVault/replicationFabrics/239f778f368e34f78216d81f030725cdf2033174b47879b9f2eeede06fdd9c4d/replicationvCenters/esx-78", + "properties": { + "friendlyName": "esx-78", + "internalId": "inmtest78", + "discoveryStatus": "Pending", + "processServerId": "5A720CAB-39CB-F445-BD1662B0B33164B5", + "ipAddress": "inmtest78", + "port": "443", + "runAsAccountId": "2", + "fabricArmResourceName": "239f778f368e34f78216d81f030725cdf2033174b47879b9f2eeede06fdd9c4d" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationvCenters_Delete.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationvCenters_Delete.json new file mode 100644 index 000000000000..badd58428ee9 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationvCenters_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "vCenterName": "esx-78", + "fabricName": "MadhaviFabric", + "api-version": "2021-03-01", + "resourceName": "MadhaviVault", + "resourceGroupName": "MadhaviVRG", + "subscriptionId": "7c943c1b-5122-4097-90c8-861411bdd574" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationvCenters_Get.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationvCenters_Get.json new file mode 100644 index 000000000000..74f9a8888e1b --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationvCenters_Get.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "vCenterName": "esx-78", + "fabricName": "MadhaviFabric", + "api-version": "2021-03-01", + "resourceName": "MadhaviVault", + "resourceGroupName": "MadhaviVRG", + "subscriptionId": "7c943c1b-5122-4097-90c8-861411bdd574" + }, + "responses": { + "200": { + "body": { + "name": "esx-78", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationvCenters", + "id": "/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/MadhaviVRG/providers/Microsoft.RecoveryServices/vaults/MadhaviVault/replicationFabrics/239f778f368e34f78216d81f030725cdf2033174b47879b9f2eeede06fdd9c4d/replicationvCenters/esx-78", + "properties": { + "friendlyName": "esx-78", + "internalId": "inmtest78", + "discoveryStatus": "Pending", + "processServerId": "5A720CAB-39CB-F445-BD1662B0B33164B5", + "ipAddress": "inmtest78", + "port": "443", + "runAsAccountId": "2", + "fabricArmResourceName": "239f778f368e34f78216d81f030725cdf2033174b47879b9f2eeede06fdd9c4d" + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationvCenters_List.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationvCenters_List.json new file mode 100644 index 000000000000..75c4d38502db --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationvCenters_List.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "resourceName": "MadhaviVault", + "resourceGroupName": "MadhaviVRG", + "subscriptionId": "7c943c1b-5122-4097-90c8-861411bdd574" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "esx-78", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationvCenters", + "id": "/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/MadhaviVRG/providers/Microsoft.RecoveryServices/vaults/MadhaviVault/replicationFabrics/239f778f368e34f78216d81f030725cdf2033174b47879b9f2eeede06fdd9c4d/replicationvCenters/esx-78", + "properties": { + "friendlyName": "esx-78", + "internalId": "inmtest78", + "discoveryStatus": "Pending", + "processServerId": "5A720CAB-39CB-F445-BD1662B0B33164B5", + "ipAddress": "inmtest78", + "port": "443", + "runAsAccountId": "2", + "fabricArmResourceName": "239f778f368e34f78216d81f030725cdf2033174b47879b9f2eeede06fdd9c4d" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationvCenters_ListByReplicationFabrics.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationvCenters_ListByReplicationFabrics.json new file mode 100644 index 000000000000..494885f201d2 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationvCenters_ListByReplicationFabrics.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "fabricName": "MadhaviFabric", + "api-version": "2021-03-01", + "resourceName": "MadhaviVault", + "resourceGroupName": "MadhaviVRG", + "subscriptionId": "7c943c1b-5122-4097-90c8-861411bdd574" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "esx-78", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationvCenters", + "id": "/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/MadhaviVRG/providers/Microsoft.RecoveryServices/vaults/MadhaviVault/replicationFabrics/239f778f368e34f78216d81f030725cdf2033174b47879b9f2eeede06fdd9c4d/replicationvCenters/esx-78", + "properties": { + "friendlyName": "esx-78", + "internalId": "inmtest78", + "discoveryStatus": "Pending", + "processServerId": "5A720CAB-39CB-F445-BD1662B0B33164B5", + "ipAddress": "inmtest78", + "port": "443", + "runAsAccountId": "2", + "fabricArmResourceName": "239f778f368e34f78216d81f030725cdf2033174b47879b9f2eeede06fdd9c4d" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationvCenters_Update.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationvCenters_Update.json new file mode 100644 index 000000000000..3a0665273125 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/ReplicationvCenters_Update.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "vCenterName": "esx-78", + "fabricName": "MadhaviFabric", + "api-version": "2021-03-01", + "resourceName": "MadhaviVault", + "resourceGroupName": "MadhaviVRG", + "subscriptionId": "7c943c1b-5122-4097-90c8-861411bdd574", + "updateVCenterRequest": { + "properties": { + "ipAddress": "10.150.109.25" + } + } + }, + "responses": { + "200": { + "body": { + "name": "esx-78", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationvCenters", + "id": "/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/MadhaviVRG/providers/Microsoft.RecoveryServices/vaults/MadhaviVault/replicationFabrics/239f778f368e34f78216d81f030725cdf2033174b47879b9f2eeede06fdd9c4d/replicationvCenters/esx-78", + "properties": { + "friendlyName": "esx-78", + "internalId": "inmtest78", + "discoveryStatus": "Pending", + "processServerId": "5A720CAB-39CB-F445-BD1662B0B33164B5", + "ipAddress": "10.150.109.25", + "port": "443", + "runAsAccountId": "2", + "fabricArmResourceName": "239f778f368e34f78216d81f030725cdf2033174b47879b9f2eeede06fdd9c4d" + } + } + }, + "202": {} + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/SupportedOperatingSystems_Get.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/SupportedOperatingSystems_Get.json new file mode 100644 index 000000000000..df7cdbaebed7 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/SupportedOperatingSystems_Get.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "resourceName": "vault1", + "resourceGroupName": "resourceGroupPS1", + "subscriptionId": "c183865e-6077-46f2-a3b1-deb0f4f4650a" + }, + "responses": { + "200": { + "body": { + "name": "Default", + "type": "Microsoft.RecoveryServices/vaults/replicationSupportedOperatingSystems", + "id": "/Subscriptions/bc403605-c2b0-43dd-abe9-0162124b1ee1/resourceGroups/oneBoxRG/providers/Microsoft.RecoveryServices/vaults/oneBoxRSVault/replicationSupportedOperatingSystems/Default", + "properties": { + "supportedOsList": [ + { + "instanceType": "A2A", + "supportedOs": [ + { + "osName": "centos", + "osType": "linux", + "osVersions": [ + { + "version": "6.0" + } + ] + }, + { + "osName": "Windows Server 2008 R2 Datacenter", + "osType": "windows", + "osVersions": [ + { + "version": "6.1", + "servicePack": "1" + } + ] + } + ] + } + ] + } + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/TargetComputeSizes_ListByReplicationProtectedItems.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/TargetComputeSizes_ListByReplicationProtectedItems.json new file mode 100644 index 000000000000..9d2cdead9223 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/examples/TargetComputeSizes_ListByReplicationProtectedItems.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2021-03-01", + "replicatedProtectedItemName": "468c912d-b1ab-4ea2-97eb-4b5095155db2", + "protectionContainerName": "asr-a2a-default-centraluseuap-container", + "fabricName": "asr-a2a-default-centraluseuap", + "resourceName": "avraiMgDiskVault", + "resourceGroupName": "avraiMgDiskVaultRG", + "subscriptionId": "6808dbbc-98c7-431f-a1b1-9580902423b7" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/6808dbbc-98c7-431f-a1b1-9580902423b7/resourceGroups/avraiMgDiskVaultRG/providers/Microsoft.RecoveryServices/vaults/avraiMgDiskVault/replicationFabrics/asr-a2a-default-centraluseuap/replicationProtectionContainers/asr-a2a-default-centraluseuap-container/replicationProtectedItems/468c912d-b1ab-4ea2-97eb-4b5095155db2/targetComputeSizes/Basic_A0", + "name": "Basic_A0", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems/targetComputeSizes", + "properties": { + "name": "Basic_A0", + "friendlyName": "Basic_A0", + "cpuCoresCount": 1, + "memoryInGB": 0.75, + "maxDataDiskCount": 1, + "maxNicsCount": 2, + "errors": null, + "highIopsSupported": "NotSupported" + } + }, + { + "id": "/Subscriptions/6808dbbc-98c7-431f-a1b1-9580902423b7/resourceGroups/avraiMgDiskVaultRG/providers/Microsoft.RecoveryServices/vaults/avraiMgDiskVault/replicationFabrics/asr-a2a-default-centraluseuap/replicationProtectionContainers/asr-a2a-default-centraluseuap-container/replicationProtectedItems/468c912d-b1ab-4ea2-97eb-4b5095155db2/targetComputeSizes/Standard_A0", + "name": "Standard_A0", + "type": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems/targetComputeSizes", + "properties": { + "name": "Standard_A0", + "friendlyName": "Standard_A0", + "cpuCoresCount": 1, + "vCPUsAvailable": 1, + "memoryInGB": 0.75, + "maxDataDiskCount": 1, + "maxNicsCount": 2, + "errors": null, + "highIopsSupported": "NotSupported", + "hyperVGenerations": [ + "V1" + ] + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/service.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/service.json new file mode 100644 index 000000000000..1d2ce38dd839 --- /dev/null +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2021-03-01/service.json @@ -0,0 +1,21058 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-03-01", + "title": "SiteRecoveryManagementClient", + "x-ms-code-generation-settings": { + "header": "MICROSOFT_MIT_NO_VERSION" + } + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/operations": { + "get": { + "tags": [ + "Operations" + ], + "summary": "Returns the list of available operations.", + "description": "Operation to return the list of available operations.", + "operationId": "Operations_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationsDiscoveryCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Returns the list of available operations.": { + "$ref": "./examples/Operations_List.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationAlertSettings": { + "get": { + "tags": [ + "ReplicationAlertSettings" + ], + "summary": "Gets the list of configured email notification(alert) configurations.", + "description": "Gets the list of email notification(alert) configurations for the vault.", + "operationId": "ReplicationAlertSettings_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AlertCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the list of configured email notification(alert) configurations.": { + "$ref": "./examples/ReplicationAlertSettings_List.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationAlertSettings/{alertSettingName}": { + "get": { + "tags": [ + "ReplicationAlertSettings" + ], + "summary": "Gets an email notification(alert) configuration.", + "description": "Gets the details of the specified email notification(alert) configuration.", + "operationId": "ReplicationAlertSettings_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "alertSettingName", + "in": "path", + "description": "The name of the email notification configuration.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Alert" + } + } + }, + "x-ms-examples": { + "Gets an email notification(alert) configuration.": { + "$ref": "./examples/ReplicationAlertSettings_Get.json" + } + } + }, + "put": { + "tags": [ + "ReplicationAlertSettings" + ], + "summary": "Configures email notifications for this vault.", + "description": "Create or update an email notification(alert) configuration.", + "operationId": "ReplicationAlertSettings_Create", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "alertSettingName", + "in": "path", + "description": "The name of the email notification(alert) configuration.", + "required": true, + "type": "string" + }, + { + "name": "request", + "in": "body", + "description": "The input to configure the email notification(alert).", + "required": true, + "schema": { + "$ref": "#/definitions/ConfigureAlertRequest" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Alert" + } + } + }, + "x-ms-examples": { + "Configures email notifications for this vault.": { + "$ref": "./examples/ReplicationAlertSettings_Create.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{virtualMachineName}/providers/Microsoft.RecoveryServices/replicationEligibilityResults": { + "get": { + "tags": [ + "ReplicationEligibilityResults" + ], + "summary": "Gets the validation errors in case the VM is unsuitable for protection.", + "description": "Validates whether a given VM can be protected or not in which case returns list of errors.", + "operationId": "ReplicationEligibilityResults_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "virtualMachineName", + "in": "path", + "description": "Virtual Machine name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationEligibilityResultsCollection" + } + } + }, + "x-ms-examples": { + "Gets the validation errors in case the VM is unsuitable for protection.": { + "$ref": "./examples/ReplicationEligibilityResults_List.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{virtualMachineName}/providers/Microsoft.RecoveryServices/replicationEligibilityResults/default": { + "get": { + "tags": [ + "ReplicationEligibilityResults" + ], + "summary": "Gets the validation errors in case the VM is unsuitable for protection.", + "description": "Validates whether a given VM can be protected or not in which case returns list of errors.", + "operationId": "ReplicationEligibilityResults_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "virtualMachineName", + "in": "path", + "description": "Virtual Machine name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationEligibilityResults" + } + } + }, + "x-ms-examples": { + "Gets the validation errors in case the VM is unsuitable for protection.": { + "$ref": "./examples/ReplicationEligibilityResults_Get.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationEvents": { + "get": { + "tags": [ + "ReplicationEvents" + ], + "summary": "Gets the list of Azure Site Recovery events.", + "description": "Gets the list of Azure Site Recovery events for the vault.", + "operationId": "ReplicationEvents_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/EventCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/EventQueryParameter", + "x-ms-examples": { + "Gets the list of Azure Site Recovery events.": { + "$ref": "./examples/ReplicationEvents_List.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationEvents/{eventName}": { + "get": { + "tags": [ + "ReplicationEvents" + ], + "summary": "Get the details of an Azure Site recovery event.", + "description": "The operation to get the details of an Azure Site recovery event.", + "operationId": "ReplicationEvents_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "eventName", + "in": "path", + "description": "The name of the Azure Site Recovery event.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Event" + } + } + }, + "x-ms-examples": { + "Get the details of an Azure Site recovery event.": { + "$ref": "./examples/ReplicationEvents_Get.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics": { + "get": { + "tags": [ + "ReplicationFabrics" + ], + "summary": "Gets the list of ASR fabrics", + "description": "Gets a list of the Azure Site Recovery fabrics in the vault.", + "operationId": "ReplicationFabrics_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/FabricCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the list of ASR fabrics": { + "$ref": "./examples/ReplicationFabrics_List.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}": { + "get": { + "tags": [ + "ReplicationFabrics" + ], + "summary": "Gets the details of an ASR fabric.", + "description": "Gets the details of an Azure Site Recovery fabric.", + "operationId": "ReplicationFabrics_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Fabric" + } + } + }, + "x-ms-examples": { + "Gets the details of an ASR fabric.": { + "$ref": "./examples/ReplicationFabrics_Get.json" + } + } + }, + "put": { + "tags": [ + "ReplicationFabrics" + ], + "summary": "Creates an Azure Site Recovery fabric.", + "description": "The operation to create an Azure Site Recovery fabric (for e.g. Hyper-V site)", + "operationId": "ReplicationFabrics_Create", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Name of the ASR fabric.", + "required": true, + "type": "string" + }, + { + "name": "input", + "in": "body", + "description": "Fabric creation input.", + "required": true, + "schema": { + "$ref": "#/definitions/FabricCreationInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Fabric" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Creates an Azure Site Recovery fabric.": { + "$ref": "./examples/ReplicationFabrics_Create.json" + } + } + }, + "delete": { + "tags": [ + "ReplicationFabrics" + ], + "summary": "Purges the site.", + "description": "The operation to purge(force delete) an Azure Site Recovery fabric.", + "operationId": "ReplicationFabrics_Purge", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "ASR fabric to purge.", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Purges the site.": { + "$ref": "./examples/ReplicationFabrics_Purge.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/checkConsistency": { + "post": { + "tags": [ + "ReplicationFabrics" + ], + "summary": "Checks the consistency of the ASR fabric.", + "description": "The operation to perform a consistency check on the fabric.", + "operationId": "ReplicationFabrics_CheckConsistency", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Fabric" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Checks the consistency of the ASR fabric.": { + "$ref": "./examples/ReplicationFabrics_CheckConsistency.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/migratetoaad": { + "post": { + "tags": [ + "ReplicationFabrics" + ], + "summary": "Migrates the site to AAD.", + "description": "The operation to migrate an Azure Site Recovery fabric to AAD.", + "operationId": "ReplicationFabrics_MigrateToAad", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "ASR fabric to migrate.", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Migrates the site to AAD.": { + "$ref": "./examples/ReplicationFabrics_MigrateToAad.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/reassociateGateway": { + "post": { + "tags": [ + "ReplicationFabrics" + ], + "summary": "Perform failover of the process server.", + "description": "The operation to move replications from a process server to another process server.", + "operationId": "ReplicationFabrics_ReassociateGateway", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "The name of the fabric containing the process server.", + "required": true, + "type": "string" + }, + { + "name": "failoverProcessServerRequest", + "in": "body", + "description": "The input to the failover process server operation.", + "required": true, + "schema": { + "$ref": "#/definitions/FailoverProcessServerRequest" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Fabric" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Perform failover of the process server.": { + "$ref": "./examples/ReplicationFabrics_ReassociateGateway.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/remove": { + "post": { + "tags": [ + "ReplicationFabrics" + ], + "summary": "Deletes the site.", + "description": "The operation to delete or remove an Azure Site Recovery fabric.", + "operationId": "ReplicationFabrics_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "ASR fabric to delete", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Deletes the site.": { + "$ref": "./examples/ReplicationFabrics_Delete.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/renewCertificate": { + "post": { + "tags": [ + "ReplicationFabrics" + ], + "summary": "Renews certificate for the fabric.", + "description": "Renews the connection certificate for the ASR replication fabric.", + "operationId": "ReplicationFabrics_RenewCertificate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "fabric name to renew certs for.", + "required": true, + "type": "string" + }, + { + "name": "renewCertificate", + "in": "body", + "description": "Renew certificate input.", + "required": true, + "schema": { + "$ref": "#/definitions/RenewCertificateInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Fabric" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Renews certificate for the fabric.": { + "$ref": "./examples/ReplicationFabrics_RenewCertificate.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationLogicalNetworks": { + "get": { + "tags": [ + "ReplicationLogicalNetworks" + ], + "summary": "Gets the list of logical networks under a fabric.", + "description": "Lists all the logical networks of the Azure Site Recovery fabric", + "operationId": "ReplicationLogicalNetworks_ListByReplicationFabrics", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Server Id.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/LogicalNetworkCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the list of logical networks under a fabric.": { + "$ref": "./examples/ReplicationLogicalNetworks_ListByReplicationFabrics.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationLogicalNetworks/{logicalNetworkName}": { + "get": { + "tags": [ + "ReplicationLogicalNetworks" + ], + "summary": "Gets a logical network with specified server id and logical network name.", + "description": "Gets the details of a logical network.", + "operationId": "ReplicationLogicalNetworks_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Server Id.", + "required": true, + "type": "string" + }, + { + "name": "logicalNetworkName", + "in": "path", + "description": "Logical network name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/LogicalNetwork" + } + } + }, + "x-ms-examples": { + "Gets a logical network with specified server id and logical network name.": { + "$ref": "./examples/ReplicationLogicalNetworks_Get.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationNetworks": { + "get": { + "tags": [ + "ReplicationNetworks" + ], + "summary": "Gets the list of networks under a fabric.", + "description": "Lists the networks available for a fabric.", + "operationId": "ReplicationNetworks_ListByReplicationFabrics", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/NetworkCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the list of networks under a fabric.": { + "$ref": "./examples/ReplicationNetworks_ListByReplicationFabrics.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationNetworks/{networkName}": { + "get": { + "tags": [ + "ReplicationNetworks" + ], + "summary": "Gets a network with specified server id and network name.", + "description": "Gets the details of a network.", + "operationId": "ReplicationNetworks_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Server Id.", + "required": true, + "type": "string" + }, + { + "name": "networkName", + "in": "path", + "description": "Primary network name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Network" + } + } + }, + "x-ms-examples": { + "Gets a network with specified server id and network name.": { + "$ref": "./examples/ReplicationNetworks_Get.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationNetworks/{networkName}/replicationNetworkMappings": { + "get": { + "tags": [ + "ReplicationNetworkMappings" + ], + "summary": "Gets all the network mappings under a network.", + "description": "Lists all ASR network mappings for the specified network.", + "operationId": "ReplicationNetworkMappings_ListByReplicationNetworks", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Primary fabric name.", + "required": true, + "type": "string" + }, + { + "name": "networkName", + "in": "path", + "description": "Primary network name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/NetworkMappingCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets all the network mappings under a network.": { + "$ref": "./examples/ReplicationNetworkMappings_ListByReplicationNetworks.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationNetworks/{networkName}/replicationNetworkMappings/{networkMappingName}": { + "get": { + "tags": [ + "ReplicationNetworkMappings" + ], + "summary": "Gets network mapping by name.", + "description": "Gets the details of an ASR network mapping", + "operationId": "ReplicationNetworkMappings_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Primary fabric name.", + "required": true, + "type": "string" + }, + { + "name": "networkName", + "in": "path", + "description": "Primary network name.", + "required": true, + "type": "string" + }, + { + "name": "networkMappingName", + "in": "path", + "description": "Network mapping name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/NetworkMapping" + } + } + }, + "x-ms-examples": { + "Gets network mapping by name.": { + "$ref": "./examples/ReplicationNetworkMappings_Get.json" + } + } + }, + "put": { + "tags": [ + "ReplicationNetworkMappings" + ], + "summary": "Creates network mapping.", + "description": "The operation to create an ASR network mapping.", + "operationId": "ReplicationNetworkMappings_Create", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Primary fabric name.", + "required": true, + "type": "string" + }, + { + "name": "networkName", + "in": "path", + "description": "Primary network name.", + "required": true, + "type": "string" + }, + { + "name": "networkMappingName", + "in": "path", + "description": "Network mapping name.", + "required": true, + "type": "string" + }, + { + "name": "input", + "in": "body", + "description": "Create network mapping input.", + "required": true, + "schema": { + "$ref": "#/definitions/CreateNetworkMappingInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/NetworkMapping" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Creates network mapping.": { + "$ref": "./examples/ReplicationNetworkMappings_Create.json" + } + } + }, + "delete": { + "tags": [ + "ReplicationNetworkMappings" + ], + "summary": "Delete network mapping.", + "description": "The operation to delete a network mapping.", + "operationId": "ReplicationNetworkMappings_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Primary fabric name.", + "required": true, + "type": "string" + }, + { + "name": "networkName", + "in": "path", + "description": "Primary network name.", + "required": true, + "type": "string" + }, + { + "name": "networkMappingName", + "in": "path", + "description": "ARM Resource Name for network mapping.", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete network mapping.": { + "$ref": "./examples/ReplicationNetworkMappings_Delete.json" + } + } + }, + "patch": { + "tags": [ + "ReplicationNetworkMappings" + ], + "summary": "Updates network mapping.", + "description": "The operation to update an ASR network mapping.", + "operationId": "ReplicationNetworkMappings_Update", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Primary fabric name.", + "required": true, + "type": "string" + }, + { + "name": "networkName", + "in": "path", + "description": "Primary network name.", + "required": true, + "type": "string" + }, + { + "name": "networkMappingName", + "in": "path", + "description": "Network mapping name.", + "required": true, + "type": "string" + }, + { + "name": "input", + "in": "body", + "description": "Update network mapping input.", + "required": true, + "schema": { + "$ref": "#/definitions/UpdateNetworkMappingInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/NetworkMapping" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Updates network mapping.": { + "$ref": "./examples/ReplicationNetworkMappings_Update.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers": { + "get": { + "tags": [ + "ReplicationProtectionContainers" + ], + "summary": "Gets the list of protection container for a fabric.", + "description": "Lists the protection containers in the specified fabric.", + "operationId": "ReplicationProtectionContainers_ListByReplicationFabrics", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionContainerCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the list of protection container for a fabric.": { + "$ref": "./examples/ReplicationProtectionContainers_ListByReplicationFabrics.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}": { + "get": { + "tags": [ + "ReplicationProtectionContainers" + ], + "summary": "Gets the protection container details.", + "description": "Gets the details of a protection container.", + "operationId": "ReplicationProtectionContainers_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionContainer" + } + } + }, + "x-ms-examples": { + "Gets the protection container details.": { + "$ref": "./examples/ReplicationProtectionContainers_Get.json" + } + } + }, + "put": { + "tags": [ + "ReplicationProtectionContainers" + ], + "summary": "Create a protection container.", + "description": "Operation to create a protection container.", + "operationId": "ReplicationProtectionContainers_Create", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Unique fabric ARM name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Unique protection container ARM name.", + "required": true, + "type": "string" + }, + { + "name": "creationInput", + "in": "body", + "description": "Creation input.", + "required": true, + "schema": { + "$ref": "#/definitions/CreateProtectionContainerInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionContainer" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create a protection container.": { + "$ref": "./examples/ReplicationProtectionContainers_Create.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/discoverProtectableItem": { + "post": { + "tags": [ + "ReplicationProtectionContainers" + ], + "summary": "Adds a protectable item to the replication protection container.", + "description": "The operation to a add a protectable item to a protection container(Add physical server.)", + "operationId": "ReplicationProtectionContainers_DiscoverProtectableItem", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "The name of the fabric.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "The name of the protection container.", + "required": true, + "type": "string" + }, + { + "name": "discoverProtectableItemRequest", + "in": "body", + "description": "The request object to add a protectable item.", + "required": true, + "schema": { + "$ref": "#/definitions/DiscoverProtectableItemRequest" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionContainer" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Adds a protectable item to the replication protection container.": { + "$ref": "./examples/ReplicationProtectionContainers_DiscoverProtectableItem.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/remove": { + "post": { + "tags": [ + "ReplicationProtectionContainers" + ], + "summary": "Removes a protection container.", + "description": "Operation to remove a protection container.", + "operationId": "ReplicationProtectionContainers_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Unique fabric ARM name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Unique protection container ARM name.", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Removes a protection container.": { + "$ref": "./examples/ReplicationProtectionContainers_Delete.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems": { + "get": { + "tags": [ + "ReplicationMigrationItems" + ], + "summary": "Gets the list of migration items in the protection container.", + "description": "Gets the list of ASR migration items in the protection container.", + "operationId": "ReplicationMigrationItems_ListByReplicationProtectionContainers", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MigrationItemCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the list of migration items in the protection container.": { + "$ref": "./examples/ReplicationMigrationItems_ListByReplicationProtectionContainers.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}": { + "get": { + "tags": [ + "ReplicationMigrationItems" + ], + "summary": "Gets the details of a migration item.", + "operationId": "ReplicationMigrationItems_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric unique name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "migrationItemName", + "in": "path", + "description": "Migration item name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MigrationItem" + } + } + }, + "x-ms-examples": { + "Gets the details of a migration item.": { + "$ref": "./examples/ReplicationMigrationItems_Get.json" + } + } + }, + "put": { + "tags": [ + "ReplicationMigrationItems" + ], + "summary": "Enables migration.", + "description": "The operation to create an ASR migration item (enable migration).", + "operationId": "ReplicationMigrationItems_Create", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "migrationItemName", + "in": "path", + "description": "Migration item name.", + "required": true, + "type": "string" + }, + { + "name": "input", + "in": "body", + "description": "Enable migration input.", + "required": true, + "schema": { + "$ref": "#/definitions/EnableMigrationInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MigrationItem" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Enables migration.": { + "$ref": "./examples/ReplicationMigrationItems_Create.json" + } + } + }, + "delete": { + "tags": [ + "ReplicationMigrationItems" + ], + "summary": "Delete the migration item.", + "description": "The operation to delete an ASR migration item.", + "operationId": "ReplicationMigrationItems_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "migrationItemName", + "in": "path", + "description": "Migration item name.", + "required": true, + "type": "string" + }, + { + "name": "deleteOption", + "in": "query", + "description": "The delete option.", + "required": false, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete the migration item.": { + "$ref": "./examples/ReplicationMigrationItems_Delete.json" + } + } + }, + "patch": { + "tags": [ + "ReplicationMigrationItems" + ], + "summary": "Updates migration item.", + "description": "The operation to update the recovery settings of an ASR migration item.", + "operationId": "ReplicationMigrationItems_Update", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "migrationItemName", + "in": "path", + "description": "Migration item name.", + "required": true, + "type": "string" + }, + { + "name": "input", + "in": "body", + "description": "Update migration item input.", + "required": true, + "schema": { + "$ref": "#/definitions/UpdateMigrationItemInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MigrationItem" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Updates migration item.": { + "$ref": "./examples/ReplicationMigrationItems_Update.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/migrate": { + "post": { + "tags": [ + "ReplicationMigrationItems" + ], + "summary": "Migrate item.", + "description": "The operation to initiate migration of the item.", + "operationId": "ReplicationMigrationItems_Migrate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "migrationItemName", + "in": "path", + "description": "Migration item name.", + "required": true, + "type": "string" + }, + { + "name": "migrateInput", + "in": "body", + "description": "Migrate input.", + "required": true, + "schema": { + "$ref": "#/definitions/MigrateInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MigrationItem" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Migrate item.": { + "$ref": "./examples/ReplicationMigrationItems_Migrate.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/migrationRecoveryPoints": { + "get": { + "tags": [ + "MigrationRecoveryPoints" + ], + "summary": "Gets the recovery points for a migration item.", + "operationId": "MigrationRecoveryPoints_ListByReplicationMigrationItems", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric unique name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "migrationItemName", + "in": "path", + "description": "Migration item name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MigrationRecoveryPointCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the recovery points for a migration item.": { + "$ref": "./examples/MigrationRecoveryPoints_ListByReplicationMigrationItems.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/migrationRecoveryPoints/{migrationRecoveryPointName}": { + "get": { + "tags": [ + "MigrationRecoveryPoints" + ], + "summary": "Gets a recovery point for a migration item.", + "operationId": "MigrationRecoveryPoints_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric unique name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "migrationItemName", + "in": "path", + "description": "Migration item name.", + "required": true, + "type": "string" + }, + { + "name": "migrationRecoveryPointName", + "in": "path", + "description": "The migration recovery point name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MigrationRecoveryPoint" + } + } + }, + "x-ms-examples": { + "Gets a recovery point for a migration item.": { + "$ref": "./examples/MigrationRecoveryPoints_Get.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/testMigrate": { + "post": { + "tags": [ + "ReplicationMigrationItems" + ], + "summary": "Test migrate item.", + "description": "The operation to initiate test migration of the item.", + "operationId": "ReplicationMigrationItems_TestMigrate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "migrationItemName", + "in": "path", + "description": "Migration item name.", + "required": true, + "type": "string" + }, + { + "name": "testMigrateInput", + "in": "body", + "description": "Test migrate input.", + "required": true, + "schema": { + "$ref": "#/definitions/TestMigrateInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MigrationItem" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Test migrate item.": { + "$ref": "./examples/ReplicationMigrationItems_TestMigrate.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/testMigrateCleanup": { + "post": { + "tags": [ + "ReplicationMigrationItems" + ], + "summary": "Test migrate cleanup.", + "description": "The operation to initiate test migrate cleanup.", + "operationId": "ReplicationMigrationItems_TestMigrateCleanup", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "migrationItemName", + "in": "path", + "description": "Migration item name.", + "required": true, + "type": "string" + }, + { + "name": "testMigrateCleanupInput", + "in": "body", + "description": "Test migrate cleanup input.", + "required": true, + "schema": { + "$ref": "#/definitions/TestMigrateCleanupInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MigrationItem" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Test migrate cleanup.": { + "$ref": "./examples/ReplicationMigrationItems_TestMigrateCleanup.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectableItems": { + "get": { + "tags": [ + "ReplicationProtectableItems" + ], + "summary": "Gets the list of protectable items.", + "description": "Lists the protectable items in a protection container.", + "operationId": "ReplicationProtectableItems_ListByReplicationProtectionContainers", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectableItemCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/ProtectableItemQueryParameter", + "x-ms-examples": { + "Gets the list of protectable items.": { + "$ref": "./examples/ReplicationProtectableItems_ListByReplicationProtectionContainers.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectableItems/{protectableItemName}": { + "get": { + "tags": [ + "ReplicationProtectableItems" + ], + "summary": "Gets the details of a protectable item.", + "description": "The operation to get the details of a protectable item.", + "operationId": "ReplicationProtectableItems_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "protectableItemName", + "in": "path", + "description": "Protectable item name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectableItem" + } + } + }, + "x-ms-examples": { + "Gets the details of a protectable item.": { + "$ref": "./examples/ReplicationProtectableItems_Get.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems": { + "get": { + "tags": [ + "ReplicationProtectedItems" + ], + "summary": "Gets the list of Replication protected items.", + "description": "Gets the list of ASR replication protected items in the protection container.", + "operationId": "ReplicationProtectedItems_ListByReplicationProtectionContainers", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationProtectedItemCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the list of Replication protected items.": { + "$ref": "./examples/ReplicationProtectedItems_ListByReplicationProtectionContainers.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}": { + "get": { + "tags": [ + "ReplicationProtectedItems" + ], + "summary": "Gets the details of a Replication protected item.", + "description": "Gets the details of an ASR replication protected item.", + "operationId": "ReplicationProtectedItems_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric unique name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "replicatedProtectedItemName", + "in": "path", + "description": "Replication protected item name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationProtectedItem" + } + } + }, + "x-ms-examples": { + "Gets the details of a Replication protected item.": { + "$ref": "./examples/ReplicationProtectedItems_Get.json" + } + } + }, + "put": { + "tags": [ + "ReplicationProtectedItems" + ], + "summary": "Enables protection.", + "description": "The operation to create an ASR replication protected item (Enable replication).", + "operationId": "ReplicationProtectedItems_Create", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Name of the fabric.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "replicatedProtectedItemName", + "in": "path", + "description": "A name for the replication protected item.", + "required": true, + "type": "string" + }, + { + "name": "input", + "in": "body", + "description": "Enable Protection Input.", + "required": true, + "schema": { + "$ref": "#/definitions/EnableProtectionInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationProtectedItem" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Enables protection.": { + "$ref": "./examples/ReplicationProtectedItems_Create.json" + } + } + }, + "delete": { + "tags": [ + "ReplicationProtectedItems" + ], + "summary": "Purges protection.", + "description": "The operation to delete or purge a replication protected item. This operation will force delete the replication protected item. Use the remove operation on replication protected item to perform a clean disable replication for the item.", + "operationId": "ReplicationProtectedItems_Purge", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "replicatedProtectedItemName", + "in": "path", + "description": "Replication protected item name.", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Purges protection.": { + "$ref": "./examples/ReplicationProtectedItems_Purge.json" + } + } + }, + "patch": { + "tags": [ + "ReplicationProtectedItems" + ], + "summary": "Updates protection.", + "description": "The operation to update the recovery settings of an ASR replication protected item.", + "operationId": "ReplicationProtectedItems_Update", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "replicatedProtectedItemName", + "in": "path", + "description": "Replication protected item name.", + "required": true, + "type": "string" + }, + { + "name": "updateProtectionInput", + "in": "body", + "description": "Update protection input.", + "required": true, + "schema": { + "$ref": "#/definitions/UpdateReplicationProtectedItemInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationProtectedItem" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Updates protection.": { + "$ref": "./examples/ReplicationProtectedItems_Update.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/addDisks": { + "post": { + "tags": [ + "ReplicationProtectedItems" + ], + "summary": "Add disk(s) for protection.", + "description": "Operation to add disks(s) to the replication protected item.", + "operationId": "ReplicationProtectedItems_AddDisks", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Unique fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "replicatedProtectedItemName", + "in": "path", + "description": "Replication protected item name.", + "required": true, + "type": "string" + }, + { + "name": "addDisksInput", + "in": "body", + "description": "Add disks input.", + "required": true, + "schema": { + "$ref": "#/definitions/AddDisksInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationProtectedItem" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Add disk(s) for protection.": { + "$ref": "./examples/ReplicationProtectedItems_AddDisks.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/applyRecoveryPoint": { + "post": { + "tags": [ + "ReplicationProtectedItems" + ], + "summary": "Change or apply recovery point.", + "description": "The operation to change the recovery point of a failed over replication protected item.", + "operationId": "ReplicationProtectedItems_ApplyRecoveryPoint", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "The ARM fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "The protection container name.", + "required": true, + "type": "string" + }, + { + "name": "replicatedProtectedItemName", + "in": "path", + "description": "The replicated protected item's name.", + "required": true, + "type": "string" + }, + { + "name": "applyRecoveryPointInput", + "in": "body", + "description": "The ApplyRecoveryPointInput.", + "required": true, + "schema": { + "$ref": "#/definitions/ApplyRecoveryPointInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationProtectedItem" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Change or apply recovery point.": { + "$ref": "./examples/ReplicationProtectedItems_ApplyRecoveryPoint.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/failoverCommit": { + "post": { + "tags": [ + "ReplicationProtectedItems" + ], + "summary": "Execute commit failover", + "description": "Operation to commit the failover of the replication protected item.", + "operationId": "ReplicationProtectedItems_FailoverCommit", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Unique fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "replicatedProtectedItemName", + "in": "path", + "description": "Replication protected item name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationProtectedItem" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Execute commit failover": { + "$ref": "./examples/ReplicationProtectedItems_FailoverCommit.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/plannedFailover": { + "post": { + "tags": [ + "ReplicationProtectedItems" + ], + "summary": "Execute planned failover", + "description": "Operation to initiate a planned failover of the replication protected item.", + "operationId": "ReplicationProtectedItems_PlannedFailover", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Unique fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "replicatedProtectedItemName", + "in": "path", + "description": "Replication protected item name.", + "required": true, + "type": "string" + }, + { + "name": "failoverInput", + "in": "body", + "description": "Disable protection input.", + "required": true, + "schema": { + "$ref": "#/definitions/PlannedFailoverInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationProtectedItem" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Execute planned failover": { + "$ref": "./examples/ReplicationProtectedItems_PlannedFailover.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/recoveryPoints": { + "get": { + "tags": [ + "RecoveryPoints" + ], + "summary": "Get recovery points for a replication protected item.", + "description": "Lists the available recovery points for a replication protected item.", + "operationId": "RecoveryPoints_ListByReplicationProtectedItems", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "The fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "The protection container name.", + "required": true, + "type": "string" + }, + { + "name": "replicatedProtectedItemName", + "in": "path", + "description": "The replication protected item's name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoveryPointCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get recovery points for a replication protected item.": { + "$ref": "./examples/RecoveryPoints_ListByReplicationProtectedItems.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/recoveryPoints/{recoveryPointName}": { + "get": { + "tags": [ + "RecoveryPoints" + ], + "summary": "Get a recovery point.", + "description": "Get the details of specified recovery point.", + "operationId": "RecoveryPoints_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "The fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "The protection container name.", + "required": true, + "type": "string" + }, + { + "name": "replicatedProtectedItemName", + "in": "path", + "description": "The replication protected item's name.", + "required": true, + "type": "string" + }, + { + "name": "recoveryPointName", + "in": "path", + "description": "The recovery point name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoveryPoint" + } + } + }, + "x-ms-examples": { + "Get a recovery point.": { + "$ref": "./examples/RecoveryPoints_Get.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/remove": { + "post": { + "tags": [ + "ReplicationProtectedItems" + ], + "summary": "Disables protection.", + "description": "The operation to disable replication on a replication protected item. This will also remove the item.", + "operationId": "ReplicationProtectedItems_Delete", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "replicatedProtectedItemName", + "in": "path", + "description": "Replication protected item name.", + "required": true, + "type": "string" + }, + { + "name": "disableProtectionInput", + "in": "body", + "description": "Disable protection input.", + "required": true, + "schema": { + "$ref": "#/definitions/DisableProtectionInput" + } + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Disables protection.": { + "$ref": "./examples/ReplicationProtectedItems_Delete.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/removeDisks": { + "post": { + "tags": [ + "ReplicationProtectedItems" + ], + "summary": "Removes disk(s).", + "description": "Operation to remove disk(s) from the replication protected item.", + "operationId": "ReplicationProtectedItems_RemoveDisks", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Unique fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "replicatedProtectedItemName", + "in": "path", + "description": "Replication protected item name.", + "required": true, + "type": "string" + }, + { + "name": "removeDisksInput", + "in": "body", + "description": "Remove disks input.", + "required": true, + "schema": { + "$ref": "#/definitions/RemoveDisksInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationProtectedItem" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Removes disk(s).": { + "$ref": "./examples/ReplicationProtectedItems_RemoveDisks.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/repairReplication": { + "post": { + "tags": [ + "ReplicationProtectedItems" + ], + "summary": "Resynchronize or repair replication.", + "description": "The operation to start resynchronize/repair replication for a replication protected item requiring resynchronization.", + "operationId": "ReplicationProtectedItems_RepairReplication", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "The name of the fabric.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "replicatedProtectedItemName", + "in": "path", + "description": "The name of the replication protected item.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationProtectedItem" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Resynchronize or repair replication.": { + "$ref": "./examples/ReplicationProtectedItems_RepairReplication.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/reProtect": { + "post": { + "tags": [ + "ReplicationProtectedItems" + ], + "summary": "Execute Reverse Replication\\Reprotect", + "description": "Operation to reprotect or reverse replicate a failed over replication protected item.", + "operationId": "ReplicationProtectedItems_Reprotect", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Unique fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "replicatedProtectedItemName", + "in": "path", + "description": "Replication protected item name.", + "required": true, + "type": "string" + }, + { + "name": "rrInput", + "in": "body", + "description": "Disable protection input.", + "required": true, + "schema": { + "$ref": "#/definitions/ReverseReplicationInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationProtectedItem" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Execute Reverse Replication\\Reprotect": { + "$ref": "./examples/ReplicationProtectedItems_Reprotect.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/ResolveHealthErrors": { + "post": { + "tags": [ + "ReplicationProtectedItems" + ], + "summary": "Resolve health errors.", + "description": "Operation to resolve health issues of the replication protected item.", + "operationId": "ReplicationProtectedItems_ResolveHealthErrors", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Unique fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "replicatedProtectedItemName", + "in": "path", + "description": "Replication protected item name.", + "required": true, + "type": "string" + }, + { + "name": "resolveHealthInput", + "in": "body", + "description": "Health issue input object.", + "required": true, + "schema": { + "$ref": "#/definitions/ResolveHealthInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationProtectedItem" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Resolve health errors.": { + "$ref": "./examples/ReplicationProtectedItems_ResolveHealthErrors.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/targetComputeSizes": { + "get": { + "tags": [ + "TargetComputeSizes" + ], + "summary": "Gets the list of target compute sizes for the replication protected item.", + "description": "Lists the available target compute sizes for a replication protected item.", + "operationId": "TargetComputeSizes_ListByReplicationProtectedItems", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "protection container name.", + "required": true, + "type": "string" + }, + { + "name": "replicatedProtectedItemName", + "in": "path", + "description": "Replication protected item name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TargetComputeSizeCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the list of target compute sizes for the replication protected item.": { + "$ref": "./examples/TargetComputeSizes_ListByReplicationProtectedItems.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/testFailover": { + "post": { + "tags": [ + "ReplicationProtectedItems" + ], + "summary": "Execute test failover", + "description": "Operation to perform a test failover of the replication protected item.", + "operationId": "ReplicationProtectedItems_TestFailover", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Unique fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "replicatedProtectedItemName", + "in": "path", + "description": "Replication protected item name.", + "required": true, + "type": "string" + }, + { + "name": "failoverInput", + "in": "body", + "description": "Test failover input.", + "required": true, + "schema": { + "$ref": "#/definitions/TestFailoverInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationProtectedItem" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Execute test failover": { + "$ref": "./examples/ReplicationProtectedItems_TestFailover.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/testFailoverCleanup": { + "post": { + "tags": [ + "ReplicationProtectedItems" + ], + "summary": "Execute test failover cleanup.", + "description": "Operation to clean up the test failover of a replication protected item.", + "operationId": "ReplicationProtectedItems_TestFailoverCleanup", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Unique fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "replicatedProtectedItemName", + "in": "path", + "description": "Replication protected item name.", + "required": true, + "type": "string" + }, + { + "name": "cleanupInput", + "in": "body", + "description": "Test failover cleanup input.", + "required": true, + "schema": { + "$ref": "#/definitions/TestFailoverCleanupInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationProtectedItem" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Execute test failover cleanup.": { + "$ref": "./examples/ReplicationProtectedItems_TestFailoverCleanup.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/unplannedFailover": { + "post": { + "tags": [ + "ReplicationProtectedItems" + ], + "summary": "Execute unplanned failover", + "description": "Operation to initiate a failover of the replication protected item.", + "operationId": "ReplicationProtectedItems_UnplannedFailover", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Unique fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "replicatedProtectedItemName", + "in": "path", + "description": "Replication protected item name.", + "required": true, + "type": "string" + }, + { + "name": "failoverInput", + "in": "body", + "description": "Disable protection input.", + "required": true, + "schema": { + "$ref": "#/definitions/UnplannedFailoverInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationProtectedItem" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Execute unplanned failover": { + "$ref": "./examples/ReplicationProtectedItems_UnplannedFailover.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicationProtectedItemName}/updateMobilityService": { + "post": { + "tags": [ + "ReplicationProtectedItems" + ], + "summary": "Update the mobility service on a protected item.", + "description": "The operation to update(push update) the installed mobility service software on a replication protected item to the latest available version.", + "operationId": "ReplicationProtectedItems_UpdateMobilityService", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "The name of the fabric containing the protected item.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "The name of the container containing the protected item.", + "required": true, + "type": "string" + }, + { + "name": "replicationProtectedItemName", + "in": "path", + "description": "The name of the protected item on which the agent is to be updated.", + "required": true, + "type": "string" + }, + { + "name": "updateMobilityServiceRequest", + "in": "body", + "description": "Request to update the mobility service on the protected item.", + "required": true, + "schema": { + "$ref": "#/definitions/UpdateMobilityServiceRequest" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationProtectedItem" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update the mobility service on a protected item.": { + "$ref": "./examples/ReplicationProtectedItems_UpdateMobilityService.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectionContainerMappings": { + "get": { + "tags": [ + "ReplicationProtectionContainerMappings" + ], + "summary": "Gets the list of protection container mappings for a protection container.", + "description": "Lists the protection container mappings for a protection container.", + "operationId": "ReplicationProtectionContainerMappings_ListByReplicationProtectionContainers", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionContainerMappingCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the list of protection container mappings for a protection container.": { + "$ref": "./examples/ReplicationProtectionContainerMappings_ListByReplicationProtectionContainers.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationProtectionIntents": { + "get": { + "tags": [ + "ReplicationProtectionIntents" + ], + "summary": "Gets the list of replication protection intent objects.", + "description": "Gets the list of ASR replication protection intent objects in the vault.", + "operationId": "ReplicationProtectionIntents_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationProtectionIntentCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the list of replication protection intent objects.": { + "$ref": "./examples/ReplicationProtectionIntents_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationProtectionIntents/{intentObjectName}": { + "get": { + "tags": [ + "ReplicationProtectionIntent" + ], + "summary": "Gets the details of a Replication protection intent item.", + "description": "Gets the details of an ASR replication protection intent.", + "operationId": "ReplicationProtectionIntents_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "intentObjectName", + "in": "path", + "description": "Replication protection intent name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationProtectionIntent" + } + } + }, + "x-ms-examples": { + "Gets the details of a Replication protection intent item.": { + "$ref": "./examples/ReplicationProtectionIntents_Get.json" + } + } + }, + "put": { + "tags": [ + "ReplicationProtectionIntent" + ], + "summary": "Create protection intent Resource.", + "description": "The operation to create an ASR replication protection intent item.", + "operationId": "ReplicationProtectionIntents_Create", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "intentObjectName", + "in": "path", + "description": "A name for the replication protection item.", + "required": true, + "type": "string" + }, + { + "name": "input", + "in": "body", + "description": "Create Protection Intent Input.", + "required": true, + "schema": { + "$ref": "#/definitions/CreateProtectionIntentInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationProtectionIntent" + } + } + }, + "x-ms-examples": { + "Create protection intent Resource.": { + "$ref": "./examples/ReplicationProtectionIntents_Create.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectionContainerMappings/{mappingName}": { + "get": { + "tags": [ + "ReplicationProtectionContainerMappings" + ], + "summary": "Gets a protection container mapping/", + "description": "Gets the details of a protection container mapping.", + "operationId": "ReplicationProtectionContainerMappings_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "mappingName", + "in": "path", + "description": "Protection Container mapping name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionContainerMapping" + } + } + }, + "x-ms-examples": { + "Gets a protection container mapping/": { + "$ref": "./examples/ReplicationProtectionContainerMappings_Get.json" + } + } + }, + "put": { + "tags": [ + "ReplicationProtectionContainerMappings" + ], + "summary": "Create protection container mapping.", + "description": "The operation to create a protection container mapping.", + "operationId": "ReplicationProtectionContainerMappings_Create", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "mappingName", + "in": "path", + "description": "Protection container mapping name.", + "required": true, + "type": "string" + }, + { + "name": "creationInput", + "in": "body", + "description": "Mapping creation input.", + "required": true, + "schema": { + "$ref": "#/definitions/CreateProtectionContainerMappingInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionContainerMapping" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create protection container mapping.": { + "$ref": "./examples/ReplicationProtectionContainerMappings_Create.json" + } + } + }, + "delete": { + "tags": [ + "ReplicationProtectionContainerMappings" + ], + "summary": "Purge protection container mapping.", + "description": "The operation to purge(force delete) a protection container mapping", + "operationId": "ReplicationProtectionContainerMappings_Purge", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "mappingName", + "in": "path", + "description": "Protection container mapping name.", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Purge protection container mapping.": { + "$ref": "./examples/ReplicationProtectionContainerMappings_Purge.json" + } + } + }, + "patch": { + "tags": [ + "ReplicationProtectionContainerMappings" + ], + "summary": "Update protection container mapping.", + "description": "The operation to update protection container mapping.", + "operationId": "ReplicationProtectionContainerMappings_Update", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "mappingName", + "in": "path", + "description": "Protection container mapping name.", + "required": true, + "type": "string" + }, + { + "name": "updateInput", + "in": "body", + "description": "Mapping update input.", + "required": true, + "schema": { + "$ref": "#/definitions/UpdateProtectionContainerMappingInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionContainerMapping" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update protection container mapping.": { + "$ref": "./examples/ReplicationProtectionContainerMappings_Update.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectionContainerMappings/{mappingName}/remove": { + "post": { + "tags": [ + "ReplicationProtectionContainerMappings" + ], + "summary": "Remove protection container mapping.", + "description": "The operation to delete or remove a protection container mapping.", + "operationId": "ReplicationProtectionContainerMappings_Delete", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "mappingName", + "in": "path", + "description": "Protection container mapping name.", + "required": true, + "type": "string" + }, + { + "name": "removalInput", + "in": "body", + "description": "Removal input.", + "required": true, + "schema": { + "$ref": "#/definitions/RemoveProtectionContainerMappingInput" + } + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Remove protection container mapping.": { + "$ref": "./examples/ReplicationProtectionContainerMappings_Delete.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/switchprotection": { + "post": { + "tags": [ + "ReplicationProtectionContainers" + ], + "summary": "Switches protection from one container to another or one replication provider to another.", + "description": "Operation to switch protection from one container to another or one replication provider to another.", + "operationId": "ReplicationProtectionContainers_SwitchProtection", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Unique fabric name.", + "required": true, + "type": "string" + }, + { + "name": "protectionContainerName", + "in": "path", + "description": "Protection container name.", + "required": true, + "type": "string" + }, + { + "name": "switchInput", + "in": "body", + "description": "Switch protection input.", + "required": true, + "schema": { + "$ref": "#/definitions/SwitchProtectionInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionContainer" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Switches protection from one container to another or one replication provider to another.": { + "$ref": "./examples/ReplicationProtectionContainers_SwitchProtection.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationRecoveryServicesProviders": { + "get": { + "tags": [ + "ReplicationRecoveryServicesProviders" + ], + "summary": "Gets the list of registered recovery services providers for the fabric.", + "description": "Lists the registered recovery services providers for the specified fabric.", + "operationId": "ReplicationRecoveryServicesProviders_ListByReplicationFabrics", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoveryServicesProviderCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the list of registered recovery services providers for the fabric.": { + "$ref": "./examples/ReplicationRecoveryServicesProviders_ListByReplicationFabrics.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationRecoveryServicesProviders/{providerName}": { + "get": { + "tags": [ + "ReplicationRecoveryServicesProviders" + ], + "summary": "Gets the details of a recovery services provider.", + "description": "Gets the details of registered recovery services provider.", + "operationId": "ReplicationRecoveryServicesProviders_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Recovery services provider name", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoveryServicesProvider" + } + } + }, + "x-ms-examples": { + "Gets the details of a recovery services provider.": { + "$ref": "./examples/ReplicationRecoveryServicesProviders_Get.json" + } + } + }, + "put": { + "tags": [ + "ReplicationRecoveryServicesProviders" + ], + "summary": "Adds a recovery services provider.", + "description": "The operation to add a recovery services provider.", + "operationId": "ReplicationRecoveryServicesProviders_Create", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Recovery services provider name.", + "required": true, + "type": "string" + }, + { + "name": "addProviderInput", + "in": "body", + "description": "Add provider input.", + "required": true, + "schema": { + "$ref": "#/definitions/AddRecoveryServicesProviderInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoveryServicesProvider" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Adds a recovery services provider.": { + "$ref": "./examples/ReplicationRecoveryServicesProviders_Create.json" + } + } + }, + "delete": { + "tags": [ + "ReplicationRecoveryServicesProviders" + ], + "summary": "Purges recovery service provider from fabric", + "description": "The operation to purge(force delete) a recovery services provider from the vault.", + "operationId": "ReplicationRecoveryServicesProviders_Purge", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Recovery services provider name.", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Purges recovery service provider from fabric": { + "$ref": "./examples/ReplicationRecoveryServicesProviders_Purge.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationRecoveryServicesProviders/{providerName}/refreshProvider": { + "post": { + "tags": [ + "ReplicationRecoveryServicesProviders" + ], + "summary": "Refresh details from the recovery services provider.", + "description": "The operation to refresh the information from the recovery services provider.", + "operationId": "ReplicationRecoveryServicesProviders_RefreshProvider", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Recovery services provider name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoveryServicesProvider" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Refresh details from the recovery services provider.": { + "$ref": "./examples/ReplicationRecoveryServicesProviders_RefreshProvider.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationRecoveryServicesProviders/{providerName}/remove": { + "post": { + "tags": [ + "ReplicationRecoveryServicesProviders" + ], + "summary": "Deletes provider from fabric. Note: Deleting provider for any fabric other than SingleHost is unsupported. To maintain backward compatibility for released clients the object \"deleteRspInput\" is used (if the object is empty we assume that it is old client and continue the old behavior).", + "description": "The operation to removes/delete(unregister) a recovery services provider from the vault", + "operationId": "ReplicationRecoveryServicesProviders_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Recovery services provider name.", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Deletes provider from fabric. Note: Deleting provider for any fabric other than SingleHost is unsupported. To maintain backward compatibility for released clients the object \"deleteRspInput\" is used (if the object is empty we assume that it is old client and continue the old behavior).": { + "$ref": "./examples/ReplicationRecoveryServicesProviders_Delete.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationStorageClassifications": { + "get": { + "tags": [ + "ReplicationStorageClassifications" + ], + "summary": "Gets the list of storage classification objects under a fabric.", + "description": "Lists the storage classifications available in the specified fabric.", + "operationId": "ReplicationStorageClassifications_ListByReplicationFabrics", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Site name of interest.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/StorageClassificationCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the list of storage classification objects under a fabric.": { + "$ref": "./examples/ReplicationStorageClassifications_ListByReplicationFabrics.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationStorageClassifications/{storageClassificationName}": { + "get": { + "tags": [ + "ReplicationStorageClassifications" + ], + "summary": "Gets the details of a storage classification.", + "description": "Gets the details of the specified storage classification.", + "operationId": "ReplicationStorageClassifications_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "storageClassificationName", + "in": "path", + "description": "Storage classification name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/StorageClassification" + } + } + }, + "x-ms-examples": { + "Gets the details of a storage classification.": { + "$ref": "./examples/ReplicationStorageClassifications_Get.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationStorageClassifications/{storageClassificationName}/replicationStorageClassificationMappings": { + "get": { + "tags": [ + "ReplicationStorageClassificationMappings" + ], + "summary": "Gets the list of storage classification mappings objects under a storage.", + "description": "Lists the storage classification mappings for the fabric.", + "operationId": "ReplicationStorageClassificationMappings_ListByReplicationStorageClassifications", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "storageClassificationName", + "in": "path", + "description": "Storage classification name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/StorageClassificationMappingCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the list of storage classification mappings objects under a storage.": { + "$ref": "./examples/ReplicationStorageClassificationMappings_ListByReplicationStorageClassifications.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationStorageClassifications/{storageClassificationName}/replicationStorageClassificationMappings/{storageClassificationMappingName}": { + "get": { + "tags": [ + "ReplicationStorageClassificationMappings" + ], + "summary": "Gets the details of a storage classification mapping.", + "description": "Gets the details of the specified storage classification mapping.", + "operationId": "ReplicationStorageClassificationMappings_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "storageClassificationName", + "in": "path", + "description": "Storage classification name.", + "required": true, + "type": "string" + }, + { + "name": "storageClassificationMappingName", + "in": "path", + "description": "Storage classification mapping name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/StorageClassificationMapping" + } + } + }, + "x-ms-examples": { + "Gets the details of a storage classification mapping.": { + "$ref": "./examples/ReplicationStorageClassificationMappings_Get.json" + } + } + }, + "put": { + "tags": [ + "ReplicationStorageClassificationMappings" + ], + "summary": "Create storage classification mapping.", + "description": "The operation to create a storage classification mapping.", + "operationId": "ReplicationStorageClassificationMappings_Create", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "storageClassificationName", + "in": "path", + "description": "Storage classification name.", + "required": true, + "type": "string" + }, + { + "name": "storageClassificationMappingName", + "in": "path", + "description": "Storage classification mapping name.", + "required": true, + "type": "string" + }, + { + "name": "pairingInput", + "in": "body", + "description": "Pairing input.", + "required": true, + "schema": { + "$ref": "#/definitions/StorageClassificationMappingInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/StorageClassificationMapping" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create storage classification mapping.": { + "$ref": "./examples/ReplicationStorageClassificationMappings_Create.json" + } + } + }, + "delete": { + "tags": [ + "ReplicationStorageClassificationMappings" + ], + "summary": "Delete a storage classification mapping.", + "description": "The operation to delete a storage classification mapping.", + "operationId": "ReplicationStorageClassificationMappings_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "storageClassificationName", + "in": "path", + "description": "Storage classification name.", + "required": true, + "type": "string" + }, + { + "name": "storageClassificationMappingName", + "in": "path", + "description": "Storage classification mapping name.", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete a storage classification mapping.": { + "$ref": "./examples/ReplicationStorageClassificationMappings_Delete.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationvCenters": { + "get": { + "tags": [ + "ReplicationvCenters" + ], + "summary": "Gets the list of vCenter registered under a fabric.", + "description": "Lists the vCenter servers registered in a fabric.", + "operationId": "ReplicationvCenters_ListByReplicationFabrics", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VCenterCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the list of vCenter registered under a fabric.": { + "$ref": "./examples/ReplicationvCenters_ListByReplicationFabrics.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationvCenters/{vCenterName}": { + "get": { + "tags": [ + "ReplicationvCenters" + ], + "summary": "Gets the details of a vCenter.", + "description": "Gets the details of a registered vCenter server(Add vCenter server.)", + "operationId": "ReplicationvCenters_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "vCenterName", + "in": "path", + "description": "vCenter name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VCenter" + } + } + }, + "x-ms-examples": { + "Gets the details of a vCenter.": { + "$ref": "./examples/ReplicationvCenters_Get.json" + } + } + }, + "put": { + "tags": [ + "ReplicationvCenters" + ], + "summary": "Add vCenter.", + "description": "The operation to create a vCenter object..", + "operationId": "ReplicationvCenters_Create", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "vCenterName", + "in": "path", + "description": "vCenter name.", + "required": true, + "type": "string" + }, + { + "name": "addVCenterRequest", + "in": "body", + "description": "The input to the add vCenter operation.", + "required": true, + "schema": { + "$ref": "#/definitions/AddVCenterRequest" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VCenter" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Add vCenter.": { + "$ref": "./examples/ReplicationvCenters_Create.json" + } + } + }, + "delete": { + "tags": [ + "ReplicationvCenters" + ], + "summary": "Remove vCenter operation.", + "description": "The operation to remove(unregister) a registered vCenter server from the vault.", + "operationId": "ReplicationvCenters_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "vCenterName", + "in": "path", + "description": "vCenter name.", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Remove vCenter operation.": { + "$ref": "./examples/ReplicationvCenters_Delete.json" + } + } + }, + "patch": { + "tags": [ + "ReplicationvCenters" + ], + "summary": "Update vCenter operation.", + "description": "The operation to update a registered vCenter.", + "operationId": "ReplicationvCenters_Update", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name.", + "required": true, + "type": "string" + }, + { + "name": "vCenterName", + "in": "path", + "description": "vCenter name", + "required": true, + "type": "string" + }, + { + "name": "updateVCenterRequest", + "in": "body", + "description": "The input to the update vCenter operation.", + "required": true, + "schema": { + "$ref": "#/definitions/UpdateVCenterRequest" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VCenter" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update vCenter operation.": { + "$ref": "./examples/ReplicationvCenters_Update.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationJobs": { + "get": { + "tags": [ + "ReplicationJobs" + ], + "summary": "Gets the list of jobs.", + "description": "Gets the list of Azure Site Recovery Jobs for the vault.", + "operationId": "ReplicationJobs_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/JobCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/JobQueryParameter", + "x-ms-examples": { + "Gets the list of jobs.": { + "$ref": "./examples/ReplicationJobs_List.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationJobs/{jobName}": { + "get": { + "tags": [ + "ReplicationJobs" + ], + "summary": "Gets the job details.", + "description": "Get the details of an Azure Site Recovery job.", + "operationId": "ReplicationJobs_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "jobName", + "in": "path", + "description": "Job identifier", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Job" + } + } + }, + "x-ms-examples": { + "Gets the job details.": { + "$ref": "./examples/ReplicationJobs_Get.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationJobs/{jobName}/cancel": { + "post": { + "tags": [ + "ReplicationJobs" + ], + "summary": "Cancels the specified job.", + "description": "The operation to cancel an Azure Site Recovery job.", + "operationId": "ReplicationJobs_Cancel", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "jobName", + "in": "path", + "description": "Job identifier.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Job" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Cancels the specified job.": { + "$ref": "./examples/ReplicationJobs_Cancel.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationJobs/{jobName}/restart": { + "post": { + "tags": [ + "ReplicationJobs" + ], + "summary": "Restarts the specified job.", + "description": "The operation to restart an Azure Site Recovery job.", + "operationId": "ReplicationJobs_Restart", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "jobName", + "in": "path", + "description": "Job identifier.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Job" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Restarts the specified job.": { + "$ref": "./examples/ReplicationJobs_Restart.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationJobs/{jobName}/resume": { + "post": { + "tags": [ + "ReplicationJobs" + ], + "summary": "Resumes the specified job.", + "description": "The operation to resume an Azure Site Recovery job", + "operationId": "ReplicationJobs_Resume", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "jobName", + "in": "path", + "description": "Job identifier.", + "required": true, + "type": "string" + }, + { + "name": "resumeJobParams", + "in": "body", + "description": "Resume rob comments.", + "required": true, + "schema": { + "$ref": "#/definitions/ResumeJobParams" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Job" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Resumes the specified job.": { + "$ref": "./examples/ReplicationJobs_Resume.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationJobs/export": { + "post": { + "tags": [ + "ReplicationJobs" + ], + "summary": "Exports the details of the Azure Site Recovery jobs of the vault.", + "description": "The operation to export the details of the Azure Site Recovery jobs of the vault.", + "operationId": "ReplicationJobs_Export", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "jobQueryParameter", + "in": "body", + "description": "job query filter.", + "required": true, + "schema": { + "$ref": "#/definitions/JobQueryParameter" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Job" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Exports the details of the Azure Site Recovery jobs of the vault.": { + "$ref": "./examples/ReplicationJobs_Export.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationMigrationItems": { + "get": { + "tags": [ + "ReplicationMigrationItems" + ], + "summary": "Gets the list of migration items in the vault.", + "operationId": "ReplicationMigrationItems_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "skipToken", + "in": "query", + "description": "The pagination token.", + "required": false, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MigrationItemCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/MigrationItemsQueryParameter", + "x-ms-examples": { + "Gets the list of migration items in the vault.": { + "$ref": "./examples/ReplicationMigrationItems_List.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationNetworkMappings": { + "get": { + "tags": [ + "ReplicationNetworkMappings" + ], + "summary": "Gets all the network mappings under a vault.", + "description": "Lists all ASR network mappings in the vault.", + "operationId": "ReplicationNetworkMappings_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/NetworkMappingCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets all the network mappings under a vault.": { + "$ref": "./examples/ReplicationNetworkMappings_List.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationNetworks": { + "get": { + "tags": [ + "ReplicationNetworks" + ], + "summary": "Gets the list of networks. View-only API.", + "description": "Lists the networks available in a vault", + "operationId": "ReplicationNetworks_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/NetworkCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the list of networks. View-only API.": { + "$ref": "./examples/ReplicationNetworks_List.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationPolicies": { + "get": { + "tags": [ + "ReplicationPolicies" + ], + "summary": "Gets the list of replication policies", + "description": "Lists the replication policies for a vault.", + "operationId": "ReplicationPolicies_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PolicyCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the list of replication policies": { + "$ref": "./examples/ReplicationPolicies_List.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationPolicies/{policyName}": { + "get": { + "tags": [ + "ReplicationPolicies" + ], + "summary": "Gets the requested policy.", + "description": "Gets the details of a replication policy.", + "operationId": "ReplicationPolicies_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "policyName", + "in": "path", + "description": "Replication policy name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Policy" + } + } + }, + "x-ms-examples": { + "Gets the requested policy.": { + "$ref": "./examples/ReplicationPolicies_Get.json" + } + } + }, + "put": { + "tags": [ + "ReplicationPolicies" + ], + "summary": "Creates the policy.", + "description": "The operation to create a replication policy", + "operationId": "ReplicationPolicies_Create", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "policyName", + "in": "path", + "description": "Replication policy name", + "required": true, + "type": "string" + }, + { + "name": "input", + "in": "body", + "description": "Create policy input", + "required": true, + "schema": { + "$ref": "#/definitions/CreatePolicyInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Policy" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Creates the policy.": { + "$ref": "./examples/ReplicationPolicies_Create.json" + } + } + }, + "delete": { + "tags": [ + "ReplicationPolicies" + ], + "summary": "Delete the policy.", + "description": "The operation to delete a replication policy.", + "operationId": "ReplicationPolicies_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "policyName", + "in": "path", + "description": "Replication policy name.", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete the policy.": { + "$ref": "./examples/ReplicationPolicies_Delete.json" + } + } + }, + "patch": { + "tags": [ + "ReplicationPolicies" + ], + "summary": "Updates the policy.", + "description": "The operation to update a replication policy.", + "operationId": "ReplicationPolicies_Update", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "policyName", + "in": "path", + "description": "Policy Id.", + "required": true, + "type": "string" + }, + { + "name": "input", + "in": "body", + "description": "Update Policy Input", + "required": true, + "schema": { + "$ref": "#/definitions/UpdatePolicyInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Policy" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Updates the policy.": { + "$ref": "./examples/ReplicationPolicies_Update.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationProtectedItems": { + "get": { + "tags": [ + "ReplicationProtectedItems" + ], + "summary": "Gets the list of replication protected items.", + "description": "Gets the list of ASR replication protected items in the vault.", + "operationId": "ReplicationProtectedItems_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "skipToken", + "in": "query", + "description": "The pagination token. Possible values: \"FabricId\" or \"FabricId_CloudId\" or null", + "required": false, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationProtectedItemCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/ProtectedItemsQueryParameter", + "x-ms-examples": { + "Gets the list of replication protected items.": { + "$ref": "./examples/ReplicationProtectedItems_List.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationProtectionContainerMappings": { + "get": { + "tags": [ + "ReplicationProtectionContainerMappings" + ], + "summary": "Gets the list of all protection container mappings in a vault.", + "description": "Lists the protection container mappings in the vault.", + "operationId": "ReplicationProtectionContainerMappings_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionContainerMappingCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the list of all protection container mappings in a vault.": { + "$ref": "./examples/ReplicationProtectionContainerMappings_List.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationProtectionContainers": { + "get": { + "tags": [ + "ReplicationProtectionContainers" + ], + "summary": "Gets the list of all protection containers in a vault.", + "description": "Lists the protection containers in a vault.", + "operationId": "ReplicationProtectionContainers_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectionContainerCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the list of all protection containers in a vault.": { + "$ref": "./examples/ReplicationProtectionContainers_List.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans": { + "get": { + "tags": [ + "ReplicationRecoveryPlans" + ], + "summary": "Gets the list of recovery plans.", + "description": "Lists the recovery plans in the vault.", + "operationId": "ReplicationRecoveryPlans_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoveryPlanCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the list of recovery plans.": { + "$ref": "./examples/ReplicationRecoveryPlans_List.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}": { + "get": { + "tags": [ + "ReplicationRecoveryPlans" + ], + "summary": "Gets the requested recovery plan.", + "description": "Gets the details of the recovery plan.", + "operationId": "ReplicationRecoveryPlans_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "recoveryPlanName", + "in": "path", + "description": "Name of the recovery plan.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoveryPlan" + } + } + }, + "x-ms-examples": { + "Gets the requested recovery plan.": { + "$ref": "./examples/ReplicationRecoveryPlans_Get.json" + } + } + }, + "put": { + "tags": [ + "ReplicationRecoveryPlans" + ], + "summary": "Creates a recovery plan with the given details.", + "description": "The operation to create a recovery plan.", + "operationId": "ReplicationRecoveryPlans_Create", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "recoveryPlanName", + "in": "path", + "description": "Recovery plan name.", + "required": true, + "type": "string" + }, + { + "name": "input", + "in": "body", + "description": "Recovery Plan creation input.", + "required": true, + "schema": { + "$ref": "#/definitions/CreateRecoveryPlanInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoveryPlan" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Creates a recovery plan with the given details.": { + "$ref": "./examples/ReplicationRecoveryPlans_Create.json" + } + } + }, + "delete": { + "tags": [ + "ReplicationRecoveryPlans" + ], + "summary": "Deletes the specified recovery plan.", + "description": "Delete a recovery plan.", + "operationId": "ReplicationRecoveryPlans_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "recoveryPlanName", + "in": "path", + "description": "Recovery plan name.", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Deletes the specified recovery plan.": { + "$ref": "./examples/ReplicationRecoveryPlans_Delete.json" + } + } + }, + "patch": { + "tags": [ + "ReplicationRecoveryPlans" + ], + "summary": "Updates the given recovery plan.", + "description": "The operation to update a recovery plan.", + "operationId": "ReplicationRecoveryPlans_Update", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "recoveryPlanName", + "in": "path", + "description": "Recovery plan name.", + "required": true, + "type": "string" + }, + { + "name": "input", + "in": "body", + "description": "Update recovery plan input", + "required": true, + "schema": { + "$ref": "#/definitions/UpdateRecoveryPlanInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoveryPlan" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Updates the given recovery plan.": { + "$ref": "./examples/ReplicationRecoveryPlans_Update.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}/failoverCommit": { + "post": { + "tags": [ + "ReplicationRecoveryPlans" + ], + "summary": "Execute commit failover of the recovery plan.", + "description": "The operation to commit the fail over of a recovery plan.", + "operationId": "ReplicationRecoveryPlans_FailoverCommit", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "recoveryPlanName", + "in": "path", + "description": "Recovery plan name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoveryPlan" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Execute commit failover of the recovery plan.": { + "$ref": "./examples/ReplicationRecoveryPlans_FailoverCommit.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}/plannedFailover": { + "post": { + "tags": [ + "ReplicationRecoveryPlans" + ], + "summary": "Execute planned failover of the recovery plan.", + "description": "The operation to start the planned failover of a recovery plan.", + "operationId": "ReplicationRecoveryPlans_PlannedFailover", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "recoveryPlanName", + "in": "path", + "description": "Recovery plan name.", + "required": true, + "type": "string" + }, + { + "name": "input", + "in": "body", + "description": "Failover input.", + "required": true, + "schema": { + "$ref": "#/definitions/RecoveryPlanPlannedFailoverInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoveryPlan" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Execute planned failover of the recovery plan.": { + "$ref": "./examples/ReplicationRecoveryPlans_PlannedFailover.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}/reProtect": { + "post": { + "tags": [ + "ReplicationRecoveryPlans" + ], + "summary": "Execute reprotect of the recovery plan.", + "description": "The operation to reprotect(reverse replicate) a recovery plan.", + "operationId": "ReplicationRecoveryPlans_Reprotect", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "recoveryPlanName", + "in": "path", + "description": "Recovery plan name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoveryPlan" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Execute reprotect of the recovery plan.": { + "$ref": "./examples/ReplicationRecoveryPlans_Reprotect.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}/testFailover": { + "post": { + "tags": [ + "ReplicationRecoveryPlans" + ], + "summary": "Execute test failover of the recovery plan.", + "description": "The operation to start the test failover of a recovery plan.", + "operationId": "ReplicationRecoveryPlans_TestFailover", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "recoveryPlanName", + "in": "path", + "description": "Recovery plan name.", + "required": true, + "type": "string" + }, + { + "name": "input", + "in": "body", + "description": "Failover input.", + "required": true, + "schema": { + "$ref": "#/definitions/RecoveryPlanTestFailoverInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoveryPlan" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Execute test failover of the recovery plan.": { + "$ref": "./examples/ReplicationRecoveryPlans_TestFailover.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}/testFailoverCleanup": { + "post": { + "tags": [ + "ReplicationRecoveryPlans" + ], + "summary": "Execute test failover cleanup of the recovery plan.", + "description": "The operation to cleanup test failover of a recovery plan.", + "operationId": "ReplicationRecoveryPlans_TestFailoverCleanup", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "recoveryPlanName", + "in": "path", + "description": "Recovery plan name.", + "required": true, + "type": "string" + }, + { + "name": "input", + "in": "body", + "description": "Test failover cleanup input.", + "required": true, + "schema": { + "$ref": "#/definitions/RecoveryPlanTestFailoverCleanupInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoveryPlan" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Execute test failover cleanup of the recovery plan.": { + "$ref": "./examples/ReplicationRecoveryPlans_TestFailoverCleanup.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}/unplannedFailover": { + "post": { + "tags": [ + "ReplicationRecoveryPlans" + ], + "summary": "Execute unplanned failover of the recovery plan.", + "description": "The operation to start the failover of a recovery plan.", + "operationId": "ReplicationRecoveryPlans_UnplannedFailover", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "recoveryPlanName", + "in": "path", + "description": "Recovery plan name.", + "required": true, + "type": "string" + }, + { + "name": "input", + "in": "body", + "description": "Failover input.", + "required": true, + "schema": { + "$ref": "#/definitions/RecoveryPlanUnplannedFailoverInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoveryPlan" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Execute unplanned failover of the recovery plan.": { + "$ref": "./examples/ReplicationRecoveryPlans_UnplannedFailover.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryServicesProviders": { + "get": { + "tags": [ + "ReplicationRecoveryServicesProviders" + ], + "summary": "Gets the list of registered recovery services providers in the vault. This is a view only api.", + "description": "Lists the registered recovery services providers in the vault", + "operationId": "ReplicationRecoveryServicesProviders_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoveryServicesProviderCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the list of registered recovery services providers in the vault. This is a view only api.": { + "$ref": "./examples/ReplicationRecoveryServicesProviders_List.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationStorageClassificationMappings": { + "get": { + "tags": [ + "ReplicationStorageClassificationMappings" + ], + "summary": "Gets the list of storage classification mappings objects under a vault.", + "description": "Lists the storage classification mappings in the vault.", + "operationId": "ReplicationStorageClassificationMappings_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/StorageClassificationMappingCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the list of storage classification mappings objects under a vault.": { + "$ref": "./examples/ReplicationStorageClassificationMappings_List.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationStorageClassifications": { + "get": { + "tags": [ + "ReplicationStorageClassifications" + ], + "summary": "Gets the list of storage classification objects under a vault.", + "description": "Lists the storage classifications in the vault.", + "operationId": "ReplicationStorageClassifications_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/StorageClassificationCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the list of storage classification objects under a vault.": { + "$ref": "./examples/ReplicationStorageClassifications_List.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationSupportedOperatingSystems": { + "get": { + "tags": [ + "SupportedOperatingSystems" + ], + "summary": "Gets the data of supported OSes by SRS.", + "operationId": "SupportedOperatingSystems_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SupportedOperatingSystems" + } + } + }, + "x-ms-examples": { + "Gets the data of supported OSes by SRS.": { + "$ref": "./examples/SupportedOperatingSystems_Get.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationVaultHealth": { + "get": { + "tags": [ + "ReplicationVaultHealth" + ], + "summary": "Gets the health summary for the vault.", + "description": "Gets the health details of the vault.", + "operationId": "ReplicationVaultHealth_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VaultHealthDetails" + } + } + }, + "x-ms-examples": { + "Gets the health summary for the vault.": { + "$ref": "./examples/ReplicationVaultHealth_Get.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationVaultHealth/default/refresh": { + "post": { + "tags": [ + "ReplicationVaultHealth" + ], + "summary": "Refreshes health summary of the vault.", + "operationId": "ReplicationVaultHealth_Refresh", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VaultHealthDetails" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Refreshes health summary of the vault.": { + "$ref": "./examples/ReplicationVaultHealth_Refresh.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationVaultSettings": { + "get": { + "tags": [ + "ReplicationVaultSetting" + ], + "summary": "Gets the list of vault setting.", + "description": "Gets the list of vault setting. This includes the Migration Hub connection settings.", + "operationId": "ReplicationVaultSetting_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VaultSettingCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the list of vault setting.": { + "$ref": "./examples/ReplicationVaultSetting_List.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationVaultSettings/{vaultSettingName}": { + "get": { + "tags": [ + "ReplicationVaultSetting" + ], + "summary": "Gets the vault setting.", + "description": "Gets the vault setting. This includes the Migration Hub connection settings.", + "operationId": "ReplicationVaultSetting_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "vaultSettingName", + "in": "path", + "description": "Vault setting name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VaultSetting" + } + } + }, + "x-ms-examples": { + "Gets the vault setting.": { + "$ref": "./examples/ReplicationVaultSetting_Get.json" + } + } + }, + "put": { + "tags": [ + "ReplicationVaultSetting" + ], + "summary": "Updates vault setting. A vault setting object is a singleton per vault and it is always present by default.", + "description": "The operation to configure vault setting.", + "operationId": "ReplicationVaultSetting_Create", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "vaultSettingName", + "in": "path", + "description": "Vault setting name.", + "required": true, + "type": "string" + }, + { + "name": "input", + "in": "body", + "description": "Vault setting creation input.", + "required": true, + "schema": { + "$ref": "#/definitions/VaultSettingCreationInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VaultSetting" + } + } + }, + "x-ms-examples": { + "Updates vault setting. A vault setting object is a singleton per vault and it is always present by default.": { + "$ref": "./examples/ReplicationVaultSetting_Create.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationvCenters": { + "get": { + "tags": [ + "ReplicationvCenters" + ], + "summary": "Gets the list of vCenter registered under the vault.", + "description": "Lists the vCenter servers registered in the vault.", + "operationId": "ReplicationvCenters_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ResourceName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VCenterCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the list of vCenter registered under the vault.": { + "$ref": "./examples/ReplicationvCenters_List.json" + } + } + } + } + }, + "definitions": { + "A2AAddDisksInput": { + "description": "A2A add disk(s) input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AddDisksProviderSpecificInput" + } + ], + "properties": { + "vmDisks": { + "description": "The list of vm disk details.", + "type": "array", + "items": { + "$ref": "#/definitions/A2AVmDiskInputDetails" + } + }, + "vmManagedDisks": { + "description": "The list of vm managed disk details.", + "type": "array", + "items": { + "$ref": "#/definitions/A2AVmManagedDiskInputDetails" + } + } + }, + "x-ms-discriminator-value": "A2A" + }, + "A2AApplyRecoveryPointInput": { + "description": "ApplyRecoveryPoint input specific to A2A provider.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ApplyRecoveryPointProviderSpecificInput" + } + ], + "properties": {}, + "x-ms-discriminator-value": "A2A" + }, + "A2AContainerCreationInput": { + "description": "A2A cloud creation input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ReplicationProviderSpecificContainerCreationInput" + } + ], + "properties": {}, + "x-ms-discriminator-value": "A2A" + }, + "A2AContainerMappingInput": { + "description": "A2A container mapping input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ReplicationProviderSpecificContainerMappingInput" + } + ], + "properties": { + "agentAutoUpdateStatus": { + "description": "A value indicating whether the auto update is enabled.", + "enum": [ + "Disabled", + "Enabled" + ], + "type": "string", + "x-ms-enum": { + "name": "AgentAutoUpdateStatus", + "modelAsString": true + } + }, + "automationAccountArmId": { + "description": "The automation account arm id.", + "type": "string" + } + }, + "x-ms-discriminator-value": "A2A" + }, + "A2ACreateProtectionIntentInput": { + "description": "A2A create protection intent input.", + "required": [ + "fabricObjectId", + "primaryLocation", + "recoveryLocation", + "recoverySubscriptionId", + "recoveryAvailabilityType", + "recoveryResourceGroupId" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CreateProtectionIntentProviderSpecificDetails" + } + ], + "properties": { + "fabricObjectId": { + "description": "The fabric specific object Id of the virtual machine.", + "type": "string" + }, + "primaryLocation": { + "description": "The primary location for the virtual machine.", + "type": "string" + }, + "recoveryLocation": { + "description": "The recovery location for the virtual machine.", + "type": "string" + }, + "recoverySubscriptionId": { + "description": "The recovery subscription Id of the virtual machine.", + "type": "string" + }, + "recoveryAvailabilityType": { + "description": "The recovery availability type of the virtual machine.", + "enum": [ + "Single", + "AvailabilitySet", + "AvailabilityZone" + ], + "type": "string", + "x-ms-enum": { + "name": "A2ARecoveryAvailabilityType", + "modelAsString": true + } + }, + "protectionProfileCustomInput": { + "$ref": "#/definitions/ProtectionProfileCustomDetails", + "description": "The protection profile custom inputs." + }, + "recoveryResourceGroupId": { + "description": "The recovery resource group Id. Valid for V2 scenarios.", + "type": "string" + }, + "primaryStagingStorageAccountCustomInput": { + "$ref": "#/definitions/StorageAccountCustomDetails", + "description": "The primary staging storage account input." + }, + "recoveryAvailabilitySetCustomInput": { + "$ref": "#/definitions/RecoveryAvailabilitySetCustomDetails", + "description": "The recovery availability set input." + }, + "recoveryVirtualNetworkCustomInput": { + "$ref": "#/definitions/RecoveryVirtualNetworkCustomDetails", + "description": "The recovery virtual network input." + }, + "recoveryProximityPlacementGroupCustomInput": { + "$ref": "#/definitions/RecoveryProximityPlacementGroupCustomDetails", + "description": "The recovery proximity placement group custom input." + }, + "autoProtectionOfDataDisk": { + "description": "A value indicating whether the auto protection is enabled.", + "enum": [ + "Disabled", + "Enabled" + ], + "type": "string", + "x-ms-enum": { + "name": "AutoProtectionOfDataDisk", + "modelAsString": true + } + }, + "vmDisks": { + "description": "The list of vm disk inputs.", + "type": "array", + "items": { + "$ref": "#/definitions/A2AProtectionIntentDiskInputDetails" + } + }, + "vmManagedDisks": { + "description": "The list of vm managed disk inputs.", + "type": "array", + "items": { + "$ref": "#/definitions/A2AProtectionIntentManagedDiskInputDetails" + } + }, + "multiVmGroupName": { + "description": "The multi vm group name.", + "type": "string" + }, + "multiVmGroupId": { + "description": "The multi vm group id.", + "type": "string" + }, + "recoveryBootDiagStorageAccount": { + "$ref": "#/definitions/StorageAccountCustomDetails", + "description": "The boot diagnostic storage account." + }, + "diskEncryptionInfo": { + "$ref": "#/definitions/DiskEncryptionInfo", + "description": "The recovery disk encryption information (for two pass flows)." + }, + "recoveryAvailabilityZone": { + "description": "The recovery availability zone.", + "type": "string" + } + }, + "x-ms-discriminator-value": "A2A" + }, + "A2AEnableProtectionInput": { + "description": "A2A enable protection input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/EnableProtectionProviderSpecificInput" + } + ], + "properties": { + "fabricObjectId": { + "description": "The fabric specific object Id of the virtual machine.", + "type": "string" + }, + "recoveryContainerId": { + "description": "The recovery container Id.", + "type": "string" + }, + "recoveryResourceGroupId": { + "description": "The recovery resource group Id. Valid for V2 scenarios.", + "type": "string" + }, + "recoveryCloudServiceId": { + "description": "The recovery cloud service Id. Valid for V1 scenarios.", + "type": "string" + }, + "recoveryAvailabilitySetId": { + "description": "The recovery availability set Id.", + "type": "string" + }, + "recoveryProximityPlacementGroupId": { + "description": "The recovery proximity placement group Id.", + "type": "string" + }, + "vmDisks": { + "description": "The list of vm disk details.", + "type": "array", + "items": { + "$ref": "#/definitions/A2AVmDiskInputDetails" + } + }, + "vmManagedDisks": { + "description": "The list of vm managed disk details.", + "type": "array", + "items": { + "$ref": "#/definitions/A2AVmManagedDiskInputDetails" + } + }, + "multiVmGroupName": { + "description": "The multi vm group name.", + "type": "string" + }, + "recoveryBootDiagStorageAccountId": { + "description": "The boot diagnostic storage account.", + "type": "string" + }, + "diskEncryptionInfo": { + "$ref": "#/definitions/DiskEncryptionInfo", + "description": "The recovery disk encryption information." + }, + "recoveryAvailabilityZone": { + "description": "The recovery availability zone.", + "type": "string" + }, + "recoveryAzureNetworkId": { + "description": "The recovery Azure virtual network ARM id.", + "type": "string" + }, + "recoverySubnetName": { + "description": "The recovery subnet name.", + "type": "string" + } + }, + "x-ms-discriminator-value": "A2A" + }, + "A2AEventDetails": { + "description": "Model class for event details of a A2A event.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/EventProviderSpecificDetails" + } + ], + "properties": { + "protectedItemName": { + "description": "The protected item arm name.", + "type": "string" + }, + "fabricObjectId": { + "description": "The azure vm arm id.", + "type": "string" + }, + "fabricName": { + "description": "Fabric arm name.", + "type": "string" + }, + "fabricLocation": { + "description": "The fabric location.", + "type": "string" + }, + "remoteFabricName": { + "description": "Remote fabric arm name.", + "type": "string" + }, + "remoteFabricLocation": { + "description": "Remote fabric location.", + "type": "string" + } + }, + "x-ms-discriminator-value": "A2A" + }, + "A2AFailoverProviderInput": { + "description": "A2A provider specific input for failover.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProviderSpecificFailoverInput" + } + ], + "properties": { + "recoveryPointId": { + "description": "The recovery point id to be passed to failover to a particular recovery point. In case of latest recovery point, null should be passed.", + "type": "string" + }, + "cloudServiceCreationOption": { + "description": "A value indicating whether to use recovery cloud service for TFO or not.", + "type": "string" + } + }, + "x-ms-discriminator-value": "A2A" + }, + "A2APolicyCreationInput": { + "description": "A2A Policy creation input.", + "required": [ + "multiVmSyncStatus" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/PolicyProviderSpecificInput" + } + ], + "properties": { + "recoveryPointHistory": { + "format": "int32", + "description": "The duration in minutes until which the recovery points need to be stored.", + "type": "integer" + }, + "crashConsistentFrequencyInMinutes": { + "format": "int32", + "description": "The crash consistent snapshot frequency (in minutes).", + "type": "integer" + }, + "appConsistentFrequencyInMinutes": { + "format": "int32", + "description": "The app consistent snapshot frequency (in minutes).", + "type": "integer" + }, + "multiVmSyncStatus": { + "description": "A value indicating whether multi-VM sync has to be enabled. Value should be 'Enabled' or 'Disabled'.", + "enum": [ + "Enable", + "Disable" + ], + "type": "string", + "x-ms-enum": { + "name": "SetMultiVmSyncStatus", + "modelAsString": true + } + } + }, + "x-ms-discriminator-value": "A2A" + }, + "A2APolicyDetails": { + "description": "A2A specific policy details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/PolicyProviderSpecificDetails" + } + ], + "properties": { + "recoveryPointThresholdInMinutes": { + "format": "int32", + "description": "The recovery point threshold in minutes.", + "type": "integer" + }, + "recoveryPointHistory": { + "format": "int32", + "description": "The duration in minutes until which the recovery points need to be stored.", + "type": "integer" + }, + "appConsistentFrequencyInMinutes": { + "format": "int32", + "description": "The app consistent snapshot frequency in minutes.", + "type": "integer" + }, + "multiVmSyncStatus": { + "description": "A value indicating whether multi-VM sync has to be enabled.", + "type": "string" + }, + "crashConsistentFrequencyInMinutes": { + "format": "int32", + "description": "The crash consistent snapshot frequency in minutes.", + "type": "integer" + } + }, + "x-ms-discriminator-value": "A2A" + }, + "A2AProtectedDiskDetails": { + "description": "A2A protected disk details.", + "type": "object", + "properties": { + "diskUri": { + "description": "The disk uri.", + "type": "string" + }, + "recoveryAzureStorageAccountId": { + "description": "The recovery disk storage account.", + "type": "string" + }, + "primaryDiskAzureStorageAccountId": { + "description": "The primary disk storage account.", + "type": "string" + }, + "recoveryDiskUri": { + "description": "Recovery disk uri.", + "type": "string" + }, + "diskName": { + "description": "The disk name.", + "type": "string" + }, + "diskCapacityInBytes": { + "format": "int64", + "description": "The disk capacity in bytes.", + "type": "integer" + }, + "primaryStagingAzureStorageAccountId": { + "description": "The primary staging storage account.", + "type": "string" + }, + "diskType": { + "description": "The type of disk.", + "type": "string" + }, + "resyncRequired": { + "description": "A value indicating whether resync is required for this disk.", + "type": "boolean" + }, + "monitoringPercentageCompletion": { + "format": "int32", + "description": "The percentage of the monitoring job. The type of the monitoring job is defined by MonitoringJobType property.", + "type": "integer" + }, + "monitoringJobType": { + "description": "The type of the monitoring job. The progress is contained in MonitoringPercentageCompletion property.", + "type": "string" + }, + "dataPendingInStagingStorageAccountInMB": { + "format": "double", + "description": "The data pending for replication in MB at staging account.", + "type": "number" + }, + "dataPendingAtSourceAgentInMB": { + "format": "double", + "description": "The data pending at source virtual machine in MB.", + "type": "number" + }, + "diskState": { + "description": "The disk state.", + "type": "string" + }, + "allowedDiskLevelOperation": { + "description": "The disk level operations list.", + "type": "array", + "items": { + "type": "string" + } + }, + "isDiskEncrypted": { + "description": "A value indicating whether vm has encrypted os disk or not.", + "type": "boolean" + }, + "secretIdentifier": { + "description": "The secret URL / identifier (BEK).", + "type": "string" + }, + "dekKeyVaultArmId": { + "description": "The KeyVault resource id for secret (BEK).", + "type": "string" + }, + "isDiskKeyEncrypted": { + "description": "A value indicating whether disk key got encrypted or not.", + "type": "boolean" + }, + "keyIdentifier": { + "description": "The key URL / identifier (KEK).", + "type": "string" + }, + "kekKeyVaultArmId": { + "description": "The KeyVault resource id for key (KEK).", + "type": "string" + } + } + }, + "A2AProtectedManagedDiskDetails": { + "description": "A2A protected managed disk details.", + "type": "object", + "properties": { + "diskId": { + "description": "The managed disk Arm id.", + "type": "string" + }, + "recoveryResourceGroupId": { + "description": "The recovery disk resource group Arm Id.", + "type": "string" + }, + "recoveryTargetDiskId": { + "description": "Recovery target disk Arm Id.", + "type": "string" + }, + "recoveryReplicaDiskId": { + "description": "Recovery replica disk Arm Id.", + "type": "string" + }, + "recoveryReplicaDiskAccountType": { + "description": "The replica disk type. Its an optional value and will be same as source disk type if not user provided.", + "type": "string" + }, + "recoveryTargetDiskAccountType": { + "description": "The target disk type after failover. Its an optional value and will be same as source disk type if not user provided.", + "type": "string" + }, + "recoveryDiskEncryptionSetId": { + "description": "The recovery disk encryption set Id.", + "type": "string" + }, + "diskName": { + "description": "The disk name.", + "type": "string" + }, + "diskCapacityInBytes": { + "format": "int64", + "description": "The disk capacity in bytes.", + "type": "integer" + }, + "primaryStagingAzureStorageAccountId": { + "description": "The primary staging storage account.", + "type": "string" + }, + "diskType": { + "description": "The type of disk.", + "type": "string" + }, + "resyncRequired": { + "description": "A value indicating whether resync is required for this disk.", + "type": "boolean" + }, + "monitoringPercentageCompletion": { + "format": "int32", + "description": "The percentage of the monitoring job. The type of the monitoring job is defined by MonitoringJobType property.", + "type": "integer" + }, + "monitoringJobType": { + "description": "The type of the monitoring job. The progress is contained in MonitoringPercentageCompletion property.", + "type": "string" + }, + "dataPendingInStagingStorageAccountInMB": { + "format": "double", + "description": "The data pending for replication in MB at staging account.", + "type": "number" + }, + "dataPendingAtSourceAgentInMB": { + "format": "double", + "description": "The data pending at source virtual machine in MB.", + "type": "number" + }, + "diskState": { + "description": "The disk state.", + "type": "string" + }, + "allowedDiskLevelOperation": { + "description": "The disk level operations list.", + "type": "array", + "items": { + "type": "string" + } + }, + "isDiskEncrypted": { + "description": "A value indicating whether vm has encrypted os disk or not.", + "type": "boolean" + }, + "secretIdentifier": { + "description": "The secret URL / identifier (BEK).", + "type": "string" + }, + "dekKeyVaultArmId": { + "description": "The KeyVault resource id for secret (BEK).", + "type": "string" + }, + "isDiskKeyEncrypted": { + "description": "A value indicating whether disk key got encrypted or not.", + "type": "boolean" + }, + "keyIdentifier": { + "description": "The key URL / identifier (KEK).", + "type": "string" + }, + "kekKeyVaultArmId": { + "description": "The KeyVault resource id for key (KEK).", + "type": "string" + }, + "failoverDiskName": { + "description": "The failover name for the managed disk.", + "type": "string" + }, + "tfoDiskName": { + "description": "The test failover name for the managed disk.", + "type": "string" + } + } + }, + "A2AProtectionContainerMappingDetails": { + "description": "A2A provider specific settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionContainerMappingProviderSpecificDetails" + } + ], + "properties": { + "agentAutoUpdateStatus": { + "description": "A value indicating whether the auto update is enabled.", + "enum": [ + "Disabled", + "Enabled" + ], + "type": "string", + "x-ms-enum": { + "name": "AgentAutoUpdateStatus", + "modelAsString": true + } + }, + "automationAccountArmId": { + "description": "The automation account arm id.", + "type": "string" + }, + "scheduleName": { + "description": "The schedule arm name.", + "type": "string" + }, + "jobScheduleName": { + "description": "The job schedule arm name.", + "type": "string" + } + }, + "x-ms-discriminator-value": "A2A" + }, + "A2AProtectionIntentDiskInputDetails": { + "description": "Azure VM disk input details.", + "required": [ + "diskUri" + ], + "type": "object", + "properties": { + "diskUri": { + "description": "The disk Uri.", + "type": "string" + }, + "recoveryAzureStorageAccountCustomInput": { + "$ref": "#/definitions/StorageAccountCustomDetails", + "description": "The recovery VHD storage account input." + }, + "primaryStagingStorageAccountCustomInput": { + "$ref": "#/definitions/StorageAccountCustomDetails", + "description": "The primary staging storage account input." + } + } + }, + "A2AProtectionIntentManagedDiskInputDetails": { + "description": "Azure VM managed disk input details.", + "required": [ + "diskId" + ], + "type": "object", + "properties": { + "diskId": { + "description": "The disk Id.", + "type": "string" + }, + "primaryStagingStorageAccountCustomInput": { + "$ref": "#/definitions/StorageAccountCustomDetails", + "description": "The primary staging storage account input." + }, + "recoveryResourceGroupCustomInput": { + "$ref": "#/definitions/RecoveryResourceGroupCustomDetails", + "description": "The recovery resource group input." + }, + "recoveryReplicaDiskAccountType": { + "description": "The replica disk type. Its an optional value and will be same as source disk type if not user provided.", + "type": "string" + }, + "recoveryTargetDiskAccountType": { + "description": "The target disk type after failover. Its an optional value and will be same as source disk type if not user provided.", + "type": "string" + }, + "recoveryDiskEncryptionSetId": { + "description": "The recovery disk encryption set Id.", + "type": "string" + }, + "diskEncryptionInfo": { + "$ref": "#/definitions/DiskEncryptionInfo", + "description": "The recovery disk encryption information (for one / single pass flows)." + } + } + }, + "A2ARecoveryPointDetails": { + "description": "A2A provider specific recovery point details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProviderSpecificRecoveryPointDetails" + } + ], + "properties": { + "recoveryPointSyncType": { + "description": "A value indicating whether the recovery point is multi VM consistent.", + "enum": [ + "MultiVmSyncRecoveryPoint", + "PerVmRecoveryPoint" + ], + "type": "string", + "x-ms-enum": { + "name": "RecoveryPointSyncType", + "modelAsString": true + } + }, + "disks": { + "description": "List of disk ids representing a recovery point.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "x-ms-discriminator-value": "A2A" + }, + "A2ARemoveDisksInput": { + "description": "A2A remove disk(s) input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RemoveDisksProviderSpecificInput" + } + ], + "properties": { + "vmDisksUris": { + "description": "The list of vm disk vhd URIs.", + "type": "array", + "items": { + "type": "string" + } + }, + "vmManagedDisksIds": { + "description": "The list of vm managed disk Ids.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "x-ms-discriminator-value": "A2A" + }, + "A2AReplicationDetails": { + "description": "A2A provider specific settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ReplicationProviderSpecificSettings" + } + ], + "properties": { + "fabricObjectId": { + "description": "The fabric specific object Id of the virtual machine.", + "type": "string" + }, + "initialPrimaryFabricLocation": { + "description": "The initial primary fabric location.", + "type": "string", + "readOnly": true + }, + "initialRecoveryFabricLocation": { + "description": "The initial recovery fabric location.", + "type": "string", + "readOnly": true + }, + "initialPrimaryZone": { + "description": "The initial primary availability zone.", + "type": "string", + "readOnly": true + }, + "initialRecoveryZone": { + "description": "The initial recovery availability zone.", + "type": "string", + "readOnly": true + }, + "multiVmGroupId": { + "description": "The multi vm group Id.", + "type": "string" + }, + "multiVmGroupName": { + "description": "The multi vm group name.", + "type": "string" + }, + "multiVmGroupCreateOption": { + "description": "Whether Multi VM group is auto created or specified by user.", + "enum": [ + "AutoCreated", + "UserSpecified" + ], + "type": "string", + "x-ms-enum": { + "name": "MultiVmGroupCreateOption", + "modelAsString": true + } + }, + "managementId": { + "description": "The management Id.", + "type": "string" + }, + "protectedDisks": { + "description": "The list of protected disks.", + "type": "array", + "items": { + "$ref": "#/definitions/A2AProtectedDiskDetails" + } + }, + "unprotectedDisks": { + "description": "The list of unprotected disks.", + "type": "array", + "items": { + "$ref": "#/definitions/A2AUnprotectedDiskDetails" + } + }, + "protectedManagedDisks": { + "description": "The list of protected managed disks.", + "type": "array", + "items": { + "$ref": "#/definitions/A2AProtectedManagedDiskDetails" + } + }, + "recoveryBootDiagStorageAccountId": { + "description": "The recovery boot diagnostic storage account Arm Id.", + "type": "string" + }, + "primaryFabricLocation": { + "description": "Primary fabric location.", + "type": "string" + }, + "recoveryFabricLocation": { + "description": "The recovery fabric location.", + "type": "string" + }, + "osType": { + "description": "The type of operating system.", + "type": "string" + }, + "recoveryAzureVMSize": { + "description": "The size of recovery virtual machine.", + "type": "string" + }, + "recoveryAzureVMName": { + "description": "The name of recovery virtual machine.", + "type": "string" + }, + "recoveryAzureResourceGroupId": { + "description": "The recovery resource group.", + "type": "string" + }, + "recoveryCloudService": { + "description": "The recovery cloud service.", + "type": "string" + }, + "recoveryAvailabilitySet": { + "description": "The recovery availability set.", + "type": "string" + }, + "selectedRecoveryAzureNetworkId": { + "description": "The recovery virtual network.", + "type": "string" + }, + "selectedTfoAzureNetworkId": { + "description": "The test failover virtual network.", + "type": "string" + }, + "vmNics": { + "description": "The virtual machine nic details.", + "type": "array", + "items": { + "$ref": "#/definitions/VMNicDetails" + } + }, + "vmSyncedConfigDetails": { + "$ref": "#/definitions/AzureToAzureVmSyncedConfigDetails", + "description": "The synced configuration details." + }, + "monitoringPercentageCompletion": { + "format": "int32", + "description": "The percentage of the monitoring job. The type of the monitoring job is defined by MonitoringJobType property.", + "type": "integer" + }, + "monitoringJobType": { + "description": "The type of the monitoring job. The progress is contained in MonitoringPercentageCompletion property.", + "type": "string" + }, + "lastHeartbeat": { + "format": "date-time", + "description": "The last heartbeat received from the source server.", + "type": "string" + }, + "agentVersion": { + "description": "The agent version.", + "type": "string" + }, + "isReplicationAgentUpdateRequired": { + "description": "A value indicating whether replication agent update is required.", + "type": "boolean" + }, + "recoveryFabricObjectId": { + "description": "The recovery fabric object Id.", + "type": "string" + }, + "vmProtectionState": { + "description": "The protection state for the vm.", + "type": "string" + }, + "vmProtectionStateDescription": { + "description": "The protection state description for the vm.", + "type": "string" + }, + "lifecycleId": { + "description": "An id associated with the PE that survives actions like switch protection which change the backing PE/CPE objects internally.The lifecycle id gets carried forward to have a link/continuity in being able to have an Id that denotes the \"same\" protected item even though other internal Ids/ARM Id might be changing.", + "type": "string" + }, + "testFailoverRecoveryFabricObjectId": { + "description": "The test failover fabric object Id.", + "type": "string" + }, + "rpoInSeconds": { + "format": "int64", + "description": "The last RPO value in seconds.", + "type": "integer" + }, + "lastRpoCalculatedTime": { + "format": "date-time", + "description": "The time (in UTC) when the last RPO value was calculated by Protection Service.", + "type": "string" + }, + "recoveryAvailabilityZone": { + "description": "The recovery availability zone.", + "type": "string" + }, + "vmEncryptionType": { + "description": "The encryption type of the VM.", + "type": "string", + "readOnly": true, + "enum": [ + "NotEncrypted", + "OnePassEncrypted", + "TwoPassEncrypted" + ], + "x-ms-enum": { + "name": "VmEncryptionType", + "modelAsString": true + } + }, + "tfoAzureVMName": { + "description": "The test failover VM name.", + "type": "string" + }, + "recoveryProximityPlacementGroupId": { + "description": "The recovery proximity placement group Id.", + "type": "string" + } + }, + "x-ms-discriminator-value": "A2A" + }, + "A2AReplicationIntentDetails": { + "description": "A2A provider specific settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ReplicationProtectionIntentProviderSpecificSettings" + } + ], + "properties": { + "fabricObjectId": { + "description": "The fabric specific object Id of the virtual machine.", + "type": "string" + }, + "policyId": { + "description": "The ID of Policy governing this PE.", + "type": "string" + }, + "primaryLocation": { + "description": "The primary location for the virtual machine.", + "type": "string" + }, + "recoveryLocation": { + "description": "The recovery location for the virtual machine.", + "type": "string" + }, + "recoverySubscriptionId": { + "description": "The recovery subscription Id of the virtual machine.", + "type": "string" + }, + "primaryFabricFriendlyName": { + "description": "The recovery fabric Name.", + "type": "string" + }, + "recoveryFabricFriendlyName": { + "description": "The recovery fabric Name.", + "type": "string" + }, + "primaryContainerFriendlyName": { + "description": "The primary container Name.", + "type": "string" + }, + "recoveryContainerFriendlyName": { + "description": "The recovery container Name.", + "type": "string" + }, + "recoveryAvailabilityType": { + "description": "The recovery availability type of the virtual machine.", + "type": "string" + }, + "vmDisks": { + "description": "The list of vm disk details.", + "type": "array", + "items": { + "$ref": "#/definitions/A2AVmDiskDetails" + } + }, + "vmManagedDisks": { + "description": "The list of vm managed disk details.", + "type": "array", + "items": { + "$ref": "#/definitions/A2AVmManagedDiskDetails" + } + }, + "recoveryResourceGroupId": { + "description": "The recovery resource group id.", + "type": "string" + }, + "recoveryAvailabilitySetId": { + "description": "The recovery availability set Id.", + "type": "string" + }, + "recoveryVirtualNetworkId": { + "description": "The recovery virtual network Id.", + "type": "string" + }, + "recoveryProximityPlacementGroupId": { + "description": "The recovery proximity placement group custom details.", + "type": "string" + }, + "autoProtectionOfDataDiskStatus": { + "description": "A value indicating whether the auto protection is enabled.", + "enum": [ + "Disabled", + "Enabled" + ], + "type": "string", + "x-ms-enum": { + "name": "AutoProtectionOfDataDiskStatus", + "modelAsString": true + } + }, + "multiVmGroupName": { + "description": "The multi vm group name.", + "type": "string" + }, + "multiVmGroupId": { + "description": "The multi vm group id.", + "type": "string" + }, + "recoveryBootDiagStorageAccountId": { + "description": "The boot diagnostic storage account.", + "type": "string" + }, + "diskEncryptionInfo": { + "$ref": "#/definitions/DiskEncryptionInfo", + "description": "The recovery disk encryption information (for two pass flows)." + }, + "recoveryAvailabilityZone": { + "description": "The recovery availability zone.", + "type": "string" + } + }, + "x-ms-discriminator-value": "A2A" + }, + "A2AReprotectInput": { + "description": "Azure specific reprotect input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ReverseReplicationProviderSpecificInput" + } + ], + "properties": { + "recoveryContainerId": { + "description": "The recovery container Id.", + "type": "string" + }, + "vmDisks": { + "description": "The list of vm disk details.", + "type": "array", + "items": { + "$ref": "#/definitions/A2AVmDiskInputDetails" + } + }, + "recoveryResourceGroupId": { + "description": "The recovery resource group Id. Valid for V2 scenarios.", + "type": "string" + }, + "recoveryCloudServiceId": { + "description": "The recovery cloud service Id. Valid for V1 scenarios.", + "type": "string" + }, + "recoveryAvailabilitySetId": { + "description": "The recovery availability set.", + "type": "string" + }, + "policyId": { + "description": "The Policy Id.", + "type": "string" + } + }, + "x-ms-discriminator-value": "A2A" + }, + "A2ASwitchProtectionInput": { + "description": "A2A specific switch protection input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/SwitchProtectionProviderSpecificInput" + } + ], + "properties": { + "recoveryContainerId": { + "description": "The recovery container Id.", + "type": "string" + }, + "vmDisks": { + "description": "The list of vm disk details.", + "type": "array", + "items": { + "$ref": "#/definitions/A2AVmDiskInputDetails" + } + }, + "vmManagedDisks": { + "description": "The list of vm managed disk details.", + "type": "array", + "items": { + "$ref": "#/definitions/A2AVmManagedDiskInputDetails" + } + }, + "recoveryResourceGroupId": { + "description": "The recovery resource group Id. Valid for V2 scenarios.", + "type": "string" + }, + "recoveryCloudServiceId": { + "description": "The recovery cloud service Id. Valid for V1 scenarios.", + "type": "string" + }, + "recoveryAvailabilitySetId": { + "description": "The recovery availability set.", + "type": "string" + }, + "recoveryProximityPlacementGroupId": { + "description": "The recovery proximity placement group Id.", + "type": "string" + }, + "policyId": { + "description": "The Policy Id.", + "type": "string" + }, + "recoveryBootDiagStorageAccountId": { + "description": "The boot diagnostic storage account.", + "type": "string" + }, + "diskEncryptionInfo": { + "$ref": "#/definitions/DiskEncryptionInfo", + "description": "The recovery disk encryption information." + } + }, + "x-ms-discriminator-value": "A2A" + }, + "A2ATestFailoverInput": { + "description": "A2A provider specific input for test failover.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TestFailoverProviderSpecificInput" + } + ], + "properties": { + "recoveryPointId": { + "description": "The recovery point id to be passed to test failover to a particular recovery point. In case of latest recovery point, null should be passed.", + "type": "string" + }, + "cloudServiceCreationOption": { + "description": "A value indicating whether to use recovery cloud service for TFO or not.", + "type": "string" + } + }, + "x-ms-discriminator-value": "A2A" + }, + "A2AUnplannedFailoverInput": { + "description": "A2A provider specific input for unplanned failover.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/UnplannedFailoverProviderSpecificInput" + } + ], + "properties": { + "recoveryPointId": { + "description": "The recovery point id to be passed to failover to a particular recovery point. In case of latest recovery point, null should be passed.", + "type": "string" + }, + "cloudServiceCreationOption": { + "description": "A value indicating whether to use recovery cloud service for failover or not.", + "type": "string" + } + }, + "x-ms-discriminator-value": "A2A" + }, + "A2AUnprotectedDiskDetails": { + "description": "A2A unprotected disk details.", + "type": "object", + "properties": { + "diskLunId": { + "format": "int32", + "description": "The source lun Id for the data disk.", + "type": "integer" + } + } + }, + "A2AUpdateContainerMappingInput": { + "description": "A2A update protection container mapping.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ReplicationProviderSpecificUpdateContainerMappingInput" + } + ], + "properties": { + "agentAutoUpdateStatus": { + "description": "A value indicating whether the auto update is enabled.", + "enum": [ + "Disabled", + "Enabled" + ], + "type": "string", + "x-ms-enum": { + "name": "AgentAutoUpdateStatus", + "modelAsString": true + } + }, + "automationAccountArmId": { + "description": "The automation account arm id.", + "type": "string" + } + }, + "x-ms-discriminator-value": "A2A" + }, + "A2AUpdateReplicationProtectedItemInput": { + "description": "InMage Azure V2 input to update replication protected item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/UpdateReplicationProtectedItemProviderInput" + } + ], + "properties": { + "recoveryCloudServiceId": { + "description": "The target cloud service ARM Id (for V1).", + "type": "string" + }, + "recoveryResourceGroupId": { + "description": "The target resource group ARM Id (for V2).", + "type": "string" + }, + "managedDiskUpdateDetails": { + "description": "Managed disk update details.", + "type": "array", + "items": { + "$ref": "#/definitions/A2AVmManagedDiskUpdateDetails" + } + }, + "recoveryBootDiagStorageAccountId": { + "description": "The boot diagnostic storage account.", + "type": "string" + }, + "diskEncryptionInfo": { + "$ref": "#/definitions/DiskEncryptionInfo", + "description": "The recovery os disk encryption information." + }, + "recoveryProximityPlacementGroupId": { + "description": "The recovery proximity placement group Id.", + "type": "string" + }, + "tfoAzureVMName": { + "description": "The user given name for test failover VM.", + "type": "string" + } + }, + "x-ms-discriminator-value": "A2A" + }, + "A2AVmDiskDetails": { + "description": "Azure VM disk details.", + "type": "object", + "properties": { + "diskUri": { + "description": "The disk Uri.", + "type": "string" + }, + "recoveryAzureStorageAccountId": { + "description": "The recovery VHD storage account Id.", + "type": "string" + }, + "primaryStagingAzureStorageAccountId": { + "description": "The primary staging storage account Id.", + "type": "string" + } + } + }, + "A2AVmDiskInputDetails": { + "description": "Azure VM disk input details.", + "type": "object", + "properties": { + "diskUri": { + "description": "The disk Uri.", + "type": "string" + }, + "recoveryAzureStorageAccountId": { + "description": "The recovery VHD storage account Id.", + "type": "string" + }, + "primaryStagingAzureStorageAccountId": { + "description": "The primary staging storage account Id.", + "type": "string" + } + } + }, + "A2AVmManagedDiskDetails": { + "description": "Azure VM managed disk input details.", + "type": "object", + "properties": { + "diskId": { + "description": "The disk Id.", + "type": "string" + }, + "primaryStagingAzureStorageAccountId": { + "description": "The primary staging storage account Arm Id.", + "type": "string" + }, + "recoveryResourceGroupId": { + "description": "The target resource group Arm Id.", + "type": "string" + }, + "recoveryReplicaDiskAccountType": { + "description": "The replica disk type.", + "type": "string" + }, + "recoveryTargetDiskAccountType": { + "description": "The target disk type after failover.", + "type": "string" + }, + "recoveryDiskEncryptionSetId": { + "description": "The recovery disk encryption set Id.", + "type": "string" + }, + "diskEncryptionInfo": { + "$ref": "#/definitions/DiskEncryptionInfo", + "description": "The recovery disk encryption information (for one / single pass flows)." + } + } + }, + "A2AVmManagedDiskInputDetails": { + "description": "Azure VM managed disk input details.", + "type": "object", + "properties": { + "diskId": { + "description": "The disk Id.", + "type": "string" + }, + "primaryStagingAzureStorageAccountId": { + "description": "The primary staging storage account Arm Id.", + "type": "string" + }, + "recoveryResourceGroupId": { + "description": "The target resource group Arm Id.", + "type": "string" + }, + "recoveryReplicaDiskAccountType": { + "description": "The replica disk type. Its an optional value and will be same as source disk type if not user provided.", + "type": "string" + }, + "recoveryTargetDiskAccountType": { + "description": "The target disk type after failover. Its an optional value and will be same as source disk type if not user provided.", + "type": "string" + }, + "recoveryDiskEncryptionSetId": { + "description": "The recovery disk encryption set Id.", + "type": "string" + }, + "diskEncryptionInfo": { + "$ref": "#/definitions/DiskEncryptionInfo", + "description": "The recovery disk encryption information (for one / single pass flows)." + } + } + }, + "A2AVmManagedDiskUpdateDetails": { + "description": "Azure VM managed disk update input details.", + "type": "object", + "properties": { + "diskId": { + "description": "The disk Id.", + "type": "string" + }, + "recoveryTargetDiskAccountType": { + "description": "The target disk type before failover.", + "type": "string" + }, + "recoveryReplicaDiskAccountType": { + "description": "The replica disk type before failover.", + "type": "string" + }, + "diskEncryptionInfo": { + "$ref": "#/definitions/DiskEncryptionInfo", + "description": "The recovery disk encryption information (for one / single pass flows)." + }, + "failoverDiskName": { + "description": "The target disk name for unplanned failover operation.", + "type": "string" + }, + "tfoDiskName": { + "description": "The target disk name for test failover operation.", + "type": "string" + } + } + }, + "AddDisksInput": { + "description": "Input for add disk(s) operation.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/AddDisksInputProperties", + "description": "Add disks input properties." + } + } + }, + "AddDisksInputProperties": { + "description": "Add Disks input properties.", + "type": "object", + "properties": { + "providerSpecificDetails": { + "$ref": "#/definitions/AddDisksProviderSpecificInput", + "description": "The ReplicationProviderInput. For HyperVReplicaAzure provider, it will be AzureEnableProtectionInput object. For San provider, it will be SanEnableProtectionInput object. For HyperVReplicaAzure provider, it can be null." + } + } + }, + "AddDisksProviderSpecificInput": { + "description": "Add Disks provider specific input.", + "type": "object", + "properties": { + "instanceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, + "AddRecoveryServicesProviderInput": { + "description": "Input required to add a provider.", + "required": [ + "properties" + ], + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/AddRecoveryServicesProviderInputProperties", + "description": "The properties of an add provider request." + } + } + }, + "AddRecoveryServicesProviderInputProperties": { + "description": "The properties of an add provider request.", + "required": [ + "machineName", + "authenticationIdentityInput", + "resourceAccessIdentityInput" + ], + "type": "object", + "properties": { + "machineName": { + "description": "The name of the machine where the provider is getting added.", + "type": "string" + }, + "machineId": { + "description": "The Id of the machine where the provider is getting added.", + "type": "string" + }, + "authenticationIdentityInput": { + "$ref": "#/definitions/IdentityProviderInput", + "description": "The identity provider input for DRA authentication." + }, + "resourceAccessIdentityInput": { + "$ref": "#/definitions/IdentityProviderInput", + "description": "The identity provider input for resource access." + }, + "dataPlaneAuthenticationIdentityInput": { + "$ref": "#/definitions/IdentityProviderInput", + "description": "The identity provider input for data plane authentication." + } + } + }, + "AddVCenterRequest": { + "description": "Input required to add vCenter.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/AddVCenterRequestProperties", + "description": "The properties of an add vCenter request." + } + } + }, + "AddVCenterRequestProperties": { + "description": "The properties of an add vCenter request.", + "type": "object", + "properties": { + "friendlyName": { + "description": "The friendly name of the vCenter.", + "type": "string" + }, + "ipAddress": { + "description": "The IP address of the vCenter to be discovered.", + "type": "string" + }, + "processServerId": { + "description": "The process server Id from where the discovery is orchestrated.", + "type": "string" + }, + "port": { + "description": "The port number for discovery.", + "type": "string" + }, + "runAsAccountId": { + "description": "The account Id which has privileges to discover the vCenter.", + "type": "string" + } + } + }, + "AgentDetails": { + "description": "Agent details.", + "type": "object", + "properties": { + "agentId": { + "description": "The Id of the agent running on the server.", + "type": "string", + "readOnly": true + }, + "machineId": { + "description": "The Id of the machine to which the agent is registered.", + "type": "string", + "readOnly": true + }, + "biosId": { + "description": "The machine BIOS Id.", + "type": "string", + "readOnly": true + }, + "fqdn": { + "description": "The machine FQDN.", + "type": "string", + "readOnly": true + }, + "disks": { + "description": "The details of agent disks.", + "type": "array", + "items": { + "$ref": "#/definitions/AgentDiskDetails" + }, + "readOnly": true + } + } + }, + "AgentDiskDetails": { + "description": "Agent disk details.", + "type": "object", + "properties": { + "diskId": { + "description": "The disk Id.", + "type": "string", + "readOnly": true + }, + "diskName": { + "description": "The disk name.", + "type": "string", + "readOnly": true + }, + "isOSDisk": { + "description": "A value indicating whether the disk is the OS disk.", + "type": "string", + "readOnly": true + }, + "capacityInBytes": { + "format": "int64", + "description": "The disk capacity in bytes.", + "type": "integer", + "readOnly": true + }, + "lunId": { + "format": "int32", + "description": "The lun of disk.", + "type": "integer", + "readOnly": true + } + } + }, + "Alert": { + "description": "Implements the Alert class.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/AlertProperties", + "description": "Alert related data." + } + } + }, + "AlertCollection": { + "description": "Collection of alerts.", + "type": "object", + "properties": { + "value": { + "description": "The list of alerts.", + "type": "array", + "items": { + "$ref": "#/definitions/Alert" + } + }, + "nextLink": { + "description": "The value of next link.", + "type": "string" + } + } + }, + "AlertProperties": { + "description": "The properties of an alert.", + "type": "object", + "properties": { + "sendToOwners": { + "description": "A value indicating whether to send email to subscription administrator.", + "type": "string" + }, + "customEmailAddresses": { + "description": "The custom email address for sending emails.", + "type": "array", + "items": { + "type": "string" + } + }, + "locale": { + "description": "The locale for the email notification.", + "type": "string" + } + } + }, + "ApplyRecoveryPointInput": { + "description": "Input to apply recovery point.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/ApplyRecoveryPointInputProperties", + "description": "The input properties to apply recovery point." + } + } + }, + "ApplyRecoveryPointInputProperties": { + "description": "Input properties to apply recovery point.", + "type": "object", + "properties": { + "recoveryPointId": { + "description": "The recovery point Id.", + "type": "string" + }, + "providerSpecificDetails": { + "$ref": "#/definitions/ApplyRecoveryPointProviderSpecificInput", + "description": "Provider specific input for applying recovery point." + } + } + }, + "ApplyRecoveryPointProviderSpecificInput": { + "description": "Provider specific input for apply recovery point.", + "type": "object", + "properties": { + "instanceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, + "AsrJobDetails": { + "description": "This class represents job details based on specific job type.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/JobDetails" + } + ], + "properties": {}, + "x-ms-discriminator-value": "AsrJobDetails" + }, + "ASRTask": { + "description": "Task of the Job.", + "type": "object", + "properties": { + "taskId": { + "description": "The Id.", + "type": "string" + }, + "name": { + "description": "The unique Task name.", + "type": "string" + }, + "startTime": { + "format": "date-time", + "description": "The start time.", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "The end time.", + "type": "string" + }, + "allowedActions": { + "description": "The state/actions applicable on this task.", + "type": "array", + "items": { + "type": "string" + } + }, + "friendlyName": { + "description": "The name.", + "type": "string" + }, + "state": { + "description": "The State. It is one of these values - NotStarted, InProgress, Succeeded, Failed, Cancelled, Suspended or Other.", + "type": "string" + }, + "stateDescription": { + "description": "The description of the task state. For example - For Succeeded state, description can be Completed, PartiallySucceeded, CompletedWithInformation or Skipped.", + "type": "string" + }, + "taskType": { + "description": "The type of task. Details in CustomDetails property depend on this type.", + "type": "string" + }, + "customDetails": { + "$ref": "#/definitions/TaskTypeDetails", + "description": "The custom task details based on the task type." + }, + "groupTaskCustomDetails": { + "$ref": "#/definitions/GroupTaskDetails", + "description": "The custom task details based on the task type, if the task type is GroupTaskDetails or one of the types derived from it." + }, + "errors": { + "description": "The task error details.", + "type": "array", + "items": { + "$ref": "#/definitions/JobErrorDetails" + } + } + } + }, + "AutomationRunbookTaskDetails": { + "description": "This class represents the task details for an automation runbook.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TaskTypeDetails" + } + ], + "properties": { + "name": { + "description": "The recovery plan task name.", + "type": "string" + }, + "cloudServiceName": { + "description": "The cloud service of the automation runbook account.", + "type": "string" + }, + "subscriptionId": { + "description": "The subscription Id of the automation runbook account.", + "type": "string" + }, + "accountName": { + "description": "The automation account name of the runbook.", + "type": "string" + }, + "runbookId": { + "description": "The runbook Id.", + "type": "string" + }, + "runbookName": { + "description": "The runbook name.", + "type": "string" + }, + "jobId": { + "description": "The job Id of the runbook execution.", + "type": "string" + }, + "jobOutput": { + "description": "The execution output of the runbook.", + "type": "string" + }, + "isPrimarySideScript": { + "description": "A value indicating whether it is a primary side script or not.", + "type": "boolean" + } + }, + "x-ms-discriminator-value": "AutomationRunbookTaskDetails" + }, + "AzureFabricCreationInput": { + "description": "Fabric provider specific settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/FabricSpecificCreationInput" + } + ], + "properties": { + "location": { + "description": "The Location.", + "type": "string" + } + }, + "x-ms-discriminator-value": "Azure" + }, + "AzureFabricSpecificDetails": { + "description": "Azure Fabric Specific Details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/FabricSpecificDetails" + } + ], + "properties": { + "location": { + "description": "The Location for the Azure fabric.", + "type": "string" + }, + "containerIds": { + "description": "The container Ids for the Azure fabric.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "x-ms-discriminator-value": "Azure" + }, + "AzureToAzureCreateNetworkMappingInput": { + "description": "Create network mappings input properties/behavior specific to Azure to Azure Network mapping.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/FabricSpecificCreateNetworkMappingInput" + } + ], + "properties": { + "primaryNetworkId": { + "description": "The primary azure vnet Id.", + "type": "string" + } + }, + "x-ms-discriminator-value": "AzureToAzure" + }, + "AzureToAzureNetworkMappingSettings": { + "description": "A2A Network Mapping fabric specific settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/NetworkMappingFabricSpecificSettings" + } + ], + "properties": { + "primaryFabricLocation": { + "description": "The primary fabric location.", + "type": "string" + }, + "recoveryFabricLocation": { + "description": "The recovery fabric location.", + "type": "string" + } + }, + "x-ms-discriminator-value": "AzureToAzure" + }, + "AzureToAzureUpdateNetworkMappingInput": { + "description": "Updates network mappings input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/FabricSpecificUpdateNetworkMappingInput" + } + ], + "properties": { + "primaryNetworkId": { + "description": "The primary azure vnet Id.", + "type": "string" + } + }, + "x-ms-discriminator-value": "AzureToAzure" + }, + "AzureToAzureVmSyncedConfigDetails": { + "description": "Azure to Azure VM synced configuration details.", + "type": "object", + "properties": { + "tags": { + "description": "The Azure VM tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "inputEndpoints": { + "description": "The Azure VM input endpoints.", + "type": "array", + "items": { + "$ref": "#/definitions/InputEndpoint" + } + } + } + }, + "AzureVmDiskDetails": { + "description": "Disk details for E2A provider.", + "type": "object", + "properties": { + "vhdType": { + "description": "VHD type.", + "type": "string" + }, + "vhdId": { + "description": "The VHD id.", + "type": "string" + }, + "diskId": { + "description": "The disk resource id.", + "type": "string" + }, + "vhdName": { + "description": "VHD name.", + "type": "string" + }, + "maxSizeMB": { + "description": "Max side in MB.", + "type": "string" + }, + "targetDiskLocation": { + "description": "Blob uri of the Azure disk.", + "type": "string" + }, + "targetDiskName": { + "description": "The target Azure disk name.", + "type": "string" + }, + "lunId": { + "description": "Ordinal\\LunId of the disk for the Azure VM.", + "type": "string" + }, + "diskEncryptionSetId": { + "description": "The DiskEncryptionSet ARM ID.", + "type": "string" + } + } + }, + "ComputeSizeErrorDetails": { + "description": "Represents the error used to indicate why the target compute size is not applicable.", + "type": "object", + "properties": { + "message": { + "description": "The error message.", + "type": "string" + }, + "severity": { + "description": "The severity of the error.", + "type": "string" + } + } + }, + "ConfigurationSettings": { + "description": "Replication provider specific settings.", + "type": "object", + "properties": { + "instanceType": { + "description": "Gets the class type. Overridden in derived classes.", + "type": "string", + "readOnly": true + } + }, + "discriminator": "instanceType" + }, + "ConfigureAlertRequest": { + "description": "Request to configure alerts for the system.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/ConfigureAlertRequestProperties", + "description": "The properties of a configure alert request." + } + } + }, + "ConfigureAlertRequestProperties": { + "description": "Properties of a configure alert request.", + "type": "object", + "properties": { + "sendToOwners": { + "description": "A value indicating whether to send email to subscription administrator.", + "type": "string" + }, + "customEmailAddresses": { + "description": "The custom email address for sending emails.", + "type": "array", + "items": { + "type": "string" + } + }, + "locale": { + "description": "The locale for the email notification.", + "type": "string" + } + } + }, + "ConsistencyCheckTaskDetails": { + "description": "This class contains monitoring details of all the inconsistent Protected Entities in Vmm.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TaskTypeDetails" + } + ], + "properties": { + "vmDetails": { + "description": "The list of inconsistent Vm details.", + "type": "array", + "items": { + "$ref": "#/definitions/InconsistentVmDetails" + } + } + }, + "x-ms-discriminator-value": "ConsistencyCheckTaskDetails" + }, + "CreateNetworkMappingInput": { + "description": "Create network mappings input.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/CreateNetworkMappingInputProperties", + "description": "Input properties for creating network mapping." + } + } + }, + "CreateNetworkMappingInputProperties": { + "description": "Common input details for network mapping operation.", + "type": "object", + "properties": { + "recoveryFabricName": { + "description": "Recovery fabric Name.", + "type": "string" + }, + "recoveryNetworkId": { + "description": "Recovery network Id.", + "type": "string" + }, + "fabricSpecificDetails": { + "$ref": "#/definitions/FabricSpecificCreateNetworkMappingInput", + "description": "Fabric specific input properties." + } + } + }, + "CreatePolicyInput": { + "description": "Protection Policy input.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/CreatePolicyInputProperties", + "description": "Policy creation properties." + } + } + }, + "CreatePolicyInputProperties": { + "description": "Policy creation properties.", + "type": "object", + "properties": { + "providerSpecificInput": { + "$ref": "#/definitions/PolicyProviderSpecificInput", + "description": "The ReplicationProviderSettings." + } + } + }, + "CreateProtectionContainerInput": { + "description": "Create protection container input.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/CreateProtectionContainerInputProperties", + "description": "Create protection container input properties." + } + } + }, + "CreateProtectionContainerInputProperties": { + "description": "Create protection container input properties.", + "type": "object", + "properties": { + "providerSpecificInput": { + "description": "Provider specific inputs for container creation.", + "type": "array", + "items": { + "$ref": "#/definitions/ReplicationProviderSpecificContainerCreationInput" + } + } + } + }, + "CreateProtectionContainerMappingInput": { + "description": "Configure pairing input.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/CreateProtectionContainerMappingInputProperties", + "description": "Configure protection input properties." + } + } + }, + "CreateProtectionContainerMappingInputProperties": { + "description": "Configure pairing input properties.", + "type": "object", + "properties": { + "targetProtectionContainerId": { + "description": "The target unique protection container name.", + "type": "string" + }, + "policyId": { + "description": "Applicable policy.", + "type": "string" + }, + "providerSpecificInput": { + "$ref": "#/definitions/ReplicationProviderSpecificContainerMappingInput", + "description": "Provider specific input for pairing." + } + } + }, + "CreateProtectionIntentInput": { + "description": "Create protection intent input.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/CreateProtectionIntentProperties", + "description": "Create protection intent input properties." + } + } + }, + "CreateProtectionIntentProperties": { + "description": "Create protection intent input properties.", + "type": "object", + "properties": { + "providerSpecificDetails": { + "$ref": "#/definitions/CreateProtectionIntentProviderSpecificDetails", + "description": "The ReplicationProviderInput. For A2A provider, it will be A2ACreateProtectionIntentInput object. For other providers, it can be null." + } + } + }, + "CreateProtectionIntentProviderSpecificDetails": { + "description": "Create protection intent provider specific input.", + "type": "object", + "properties": { + "instanceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, + "CreateRecoveryPlanInput": { + "description": "Create recovery plan input class.", + "required": [ + "properties" + ], + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/CreateRecoveryPlanInputProperties", + "description": "Recovery plan creation properties." + } + } + }, + "CreateRecoveryPlanInputProperties": { + "description": "Recovery plan creation properties.", + "required": [ + "primaryFabricId", + "recoveryFabricId", + "groups" + ], + "type": "object", + "properties": { + "primaryFabricId": { + "description": "The primary fabric Id.", + "type": "string" + }, + "recoveryFabricId": { + "description": "The recovery fabric Id.", + "type": "string" + }, + "failoverDeploymentModel": { + "description": "The failover deployment model.", + "enum": [ + "NotApplicable", + "Classic", + "ResourceManager" + ], + "type": "string", + "x-ms-enum": { + "name": "FailoverDeploymentModel", + "modelAsString": true + } + }, + "groups": { + "description": "The recovery plan groups.", + "type": "array", + "items": { + "$ref": "#/definitions/RecoveryPlanGroup" + } + }, + "providerSpecificInput": { + "description": "The provider specific input.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/RecoveryPlanProviderSpecificInput" + } + } + } + }, + "CurrentJobDetails": { + "description": "Current job details of the migration item.", + "type": "object", + "properties": { + "jobName": { + "description": "The job name.", + "type": "string" + }, + "jobId": { + "description": "The ARM Id of the job being executed.", + "type": "string" + }, + "startTime": { + "format": "date-time", + "description": "The start time of the job.", + "type": "string" + } + } + }, + "CurrentScenarioDetails": { + "description": "Current scenario details of the protected entity.", + "type": "object", + "properties": { + "scenarioName": { + "description": "Scenario name.", + "type": "string" + }, + "jobId": { + "description": "ARM Id of the job being executed.", + "type": "string" + }, + "startTime": { + "format": "date-time", + "description": "Start time of the workflow.", + "type": "string" + } + } + }, + "DataStore": { + "description": "The data store details of the MT.", + "type": "object", + "properties": { + "symbolicName": { + "description": "The symbolic name of data store.", + "type": "string" + }, + "uuid": { + "description": "The uuid of data store.", + "type": "string" + }, + "capacity": { + "description": "The capacity of data store in GBs.", + "type": "string" + }, + "freeSpace": { + "description": "The free space of data store in GBs.", + "type": "string" + }, + "type": { + "description": "The type of data store.", + "type": "string" + } + } + }, + "DisableProtectionInput": { + "description": "Disable protection input.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/DisableProtectionInputProperties", + "description": "Disable protection input properties." + } + } + }, + "DisableProtectionInputProperties": { + "description": "Disable protection input properties.", + "type": "object", + "properties": { + "disableProtectionReason": { + "description": "Disable protection reason. It can have values NotSpecified/MigrationComplete.", + "enum": [ + "NotSpecified", + "MigrationComplete" + ], + "type": "string", + "x-ms-enum": { + "name": "DisableProtectionReason", + "modelAsString": true + } + }, + "replicationProviderInput": { + "$ref": "#/definitions/DisableProtectionProviderSpecificInput", + "description": "Replication provider specific input." + } + } + }, + "DisableProtectionProviderSpecificInput": { + "description": "Disable protection provider specific input.", + "type": "object", + "properties": { + "instanceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, + "DiscoverProtectableItemRequest": { + "description": "Request to add a physical machine as a protectable item in a container.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/DiscoverProtectableItemRequestProperties", + "description": "The properties of a discover protectable item request." + } + } + }, + "DiscoverProtectableItemRequestProperties": { + "description": "Discover protectable item properties.", + "type": "object", + "properties": { + "friendlyName": { + "description": "The friendly name of the physical machine.", + "type": "string" + }, + "ipAddress": { + "description": "The IP address of the physical machine to be discovered.", + "type": "string" + }, + "osType": { + "description": "The OS type on the physical machine.", + "type": "string" + } + } + }, + "DiskDetails": { + "description": "On-prem disk details data.", + "type": "object", + "properties": { + "maxSizeMB": { + "format": "int64", + "description": "The hard disk max size in MB.", + "type": "integer" + }, + "vhdType": { + "description": "The type of the volume.", + "type": "string" + }, + "vhdId": { + "description": "The VHD Id.", + "type": "string" + }, + "vhdName": { + "description": "The VHD name.", + "type": "string" + } + } + }, + "DiskEncryptionInfo": { + "description": "Recovery disk encryption info (BEK and KEK).", + "type": "object", + "properties": { + "diskEncryptionKeyInfo": { + "$ref": "#/definitions/DiskEncryptionKeyInfo", + "description": "The recovery KeyVault reference for secret." + }, + "keyEncryptionKeyInfo": { + "$ref": "#/definitions/KeyEncryptionKeyInfo", + "description": "The recovery KeyVault reference for key." + } + } + }, + "DiskEncryptionKeyInfo": { + "description": "Disk Encryption Key Information (BitLocker Encryption Key (BEK) on Windows).", + "type": "object", + "properties": { + "secretIdentifier": { + "description": "The secret URL / identifier.", + "type": "string" + }, + "keyVaultResourceArmId": { + "description": "The KeyVault resource ARM Id for secret.", + "type": "string" + } + } + }, + "DiskVolumeDetails": { + "description": "Volume details.", + "type": "object", + "properties": { + "label": { + "description": "The volume label.", + "type": "string" + }, + "name": { + "description": "The volume name.", + "type": "string" + } + } + }, + "Display": { + "description": "Contains the localized display information for this particular operation / action. These value will be used by several clients for (1) custom role definitions for RBAC; (2) complex query filters for the event service; and (3) audit history / records for management operations.", + "type": "object", + "properties": { + "provider": { + "description": "The provider. The localized friendly form of the resource provider name – it is expected to also include the publisher/company responsible. It should use Title Casing and begin with \"Microsoft\" for 1st party services. e.g. \"Microsoft Monitoring Insights\" or \"Microsoft Compute.\"", + "type": "string" + }, + "resource": { + "description": "The resource. The localized friendly form of the resource related to this action/operation – it should match the public documentation for the resource provider. It should use Title Casing. This value should be unique for a particular URL type (e.g. nested types should *not* reuse their parent’s display.resource field). e.g. \"Virtual Machines\" or \"Scheduler Job Collections\", or \"Virtual Machine VM Sizes\" or \"Scheduler Jobs\"", + "type": "string" + }, + "operation": { + "description": "The operation. The localized friendly name for the operation, as it should be shown to the user. It should be concise (to fit in drop downs) but clear (i.e. self-documenting). It should use Title Casing. Prescriptive guidance: Read Create or Update Delete 'ActionName'", + "type": "string" + }, + "description": { + "description": "The description. The localized friendly description for the operation, as it should be shown to the user. It should be thorough, yet concise – it will be used in tool tips and detailed views. Prescriptive guidance for namespaces: Read any 'display.provider' resource Create or Update any 'display.provider' resource Delete any 'display.provider' resource Perform any other action on any 'display.provider' resource Prescriptive guidance for namespaces: Read any 'display.resource' Create or Update any 'display.resource' Delete any 'display.resource' 'ActionName' any 'display.resources'", + "type": "string" + } + } + }, + "DraDetails": { + "description": "DRA details.", + "type": "object", + "properties": { + "id": { + "description": "The DRA Id.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The DRA name.", + "type": "string", + "readOnly": true + }, + "version": { + "description": "The DRA version.", + "type": "string", + "readOnly": true + }, + "lastHeartbeatUtc": { + "format": "date-time", + "description": "The last heartbeat received from the DRA.", + "type": "string", + "readOnly": true + }, + "health": { + "description": "The health of the DRA.", + "enum": [ + "None", + "Normal", + "Warning", + "Critical" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProtectionHealth", + "modelAsString": true + } + }, + "healthErrors": { + "description": "The health errors.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthError" + }, + "readOnly": true + } + } + }, + "EnableMigrationInput": { + "description": "Enable migration input.", + "required": [ + "properties" + ], + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/EnableMigrationInputProperties", + "description": "Enable migration input properties." + } + } + }, + "EnableMigrationInputProperties": { + "description": "Enable migration input properties.", + "required": [ + "policyId", + "providerSpecificDetails" + ], + "type": "object", + "properties": { + "policyId": { + "description": "The policy Id.", + "type": "string" + }, + "providerSpecificDetails": { + "$ref": "#/definitions/EnableMigrationProviderSpecificInput", + "description": "The provider specific details." + } + } + }, + "EnableMigrationProviderSpecificInput": { + "description": "Enable migration provider specific input.", + "required": [ + "instanceType" + ], + "type": "object", + "properties": { + "instanceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, + "EnableProtectionInput": { + "description": "Enable protection input.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/EnableProtectionInputProperties", + "description": "Enable protection input properties." + } + } + }, + "EnableProtectionInputProperties": { + "description": "Enable protection input properties.", + "type": "object", + "properties": { + "policyId": { + "description": "The Policy Id.", + "type": "string" + }, + "protectableItemId": { + "description": "The protectable item Id.", + "type": "string" + }, + "providerSpecificDetails": { + "$ref": "#/definitions/EnableProtectionProviderSpecificInput", + "description": "The ReplicationProviderInput. For HyperVReplicaAzure provider, it will be AzureEnableProtectionInput object. For San provider, it will be SanEnableProtectionInput object. For HyperVReplicaAzure provider, it can be null." + } + } + }, + "EnableProtectionProviderSpecificInput": { + "description": "Enable protection provider specific input.", + "type": "object", + "properties": { + "instanceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, + "EncryptionDetails": { + "description": "Encryption details for the fabric.", + "type": "object", + "properties": { + "kekState": { + "description": "The key encryption key state for the Vmm.", + "type": "string" + }, + "kekCertThumbprint": { + "description": "The key encryption key certificate thumbprint.", + "type": "string" + }, + "kekCertExpiryDate": { + "format": "date-time", + "description": "The key encryption key certificate expiry date.", + "type": "string" + } + } + }, + "Event": { + "description": "Implements the Event class.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/EventProperties", + "description": "Event related data." + } + } + }, + "EventCollection": { + "description": "Collection of fabric details.", + "type": "object", + "properties": { + "value": { + "description": "The list of events.", + "type": "array", + "items": { + "$ref": "#/definitions/Event" + } + }, + "nextLink": { + "description": "The value of next link.", + "type": "string" + } + } + }, + "EventProperties": { + "description": "The properties of a monitoring event.", + "type": "object", + "properties": { + "eventCode": { + "description": "The Id of the monitoring event.", + "type": "string" + }, + "description": { + "description": "The event name.", + "type": "string" + }, + "eventType": { + "description": "The type of the event. for example: VM Health, Server Health, Job Failure etc.", + "type": "string" + }, + "affectedObjectFriendlyName": { + "description": "The friendly name of the source of the event on which it is raised (for example, VM, VMM etc).", + "type": "string" + }, + "severity": { + "description": "The severity of the event.", + "type": "string" + }, + "timeOfOccurrence": { + "format": "date-time", + "description": "The time of occurrence of the event.", + "type": "string" + }, + "fabricId": { + "description": "The ARM ID of the fabric.", + "type": "string" + }, + "providerSpecificDetails": { + "$ref": "#/definitions/EventProviderSpecificDetails", + "description": "The provider specific settings." + }, + "eventSpecificDetails": { + "$ref": "#/definitions/EventSpecificDetails", + "description": "The event specific settings." + }, + "healthErrors": { + "description": "The list of errors / warnings capturing details associated with the issue(s).", + "type": "array", + "items": { + "$ref": "#/definitions/HealthError" + } + } + } + }, + "EventProviderSpecificDetails": { + "description": "Model class for provider specific details for an event.", + "type": "object", + "properties": { + "instanceType": { + "description": "Gets the class type. Overridden in derived classes.", + "type": "string", + "readOnly": true + } + }, + "discriminator": "instanceType" + }, + "EventQueryParameter": { + "description": "Implements the event query parameter.", + "type": "object", + "properties": { + "eventCode": { + "description": "The source id of the events to be queried.", + "type": "string" + }, + "severity": { + "description": "The severity of the events to be queried.", + "type": "string" + }, + "eventType": { + "description": "The type of the events to be queried.", + "type": "string" + }, + "fabricName": { + "description": "The affected object server id of the events to be queried.", + "type": "string" + }, + "affectedObjectFriendlyName": { + "description": "The affected object name of the events to be queried.", + "type": "string" + }, + "startTime": { + "format": "date-time", + "description": "The start time of the time range within which the events are to be queried.", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "The end time of the time range within which the events are to be queried.", + "type": "string" + } + } + }, + "EventSpecificDetails": { + "description": "Model class for event specific details for an event.", + "type": "object", + "properties": { + "instanceType": { + "description": "Gets the class type. Overridden in derived classes.", + "type": "string", + "readOnly": true + } + }, + "discriminator": "instanceType" + }, + "ExistingProtectionProfile": { + "description": "Existing storage account input.", + "required": [ + "protectionProfileId" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionProfileCustomDetails" + } + ], + "properties": { + "protectionProfileId": { + "description": "The protection profile Arm Id. Throw error, if resource does not exists.", + "type": "string" + } + }, + "x-ms-discriminator-value": "Existing" + }, + "ExistingRecoveryAvailabilitySet": { + "description": "Existing recovery availability set input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RecoveryAvailabilitySetCustomDetails" + } + ], + "properties": { + "recoveryAvailabilitySetId": { + "description": "The recovery availability set Id. Will throw error, if resource does not exist.", + "type": "string" + } + }, + "x-ms-discriminator-value": "Existing" + }, + "ExistingRecoveryProximityPlacementGroup": { + "description": "Existing recovery proximity placement group input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RecoveryProximityPlacementGroupCustomDetails" + } + ], + "properties": { + "recoveryProximityPlacementGroupId": { + "description": "The recovery proximity placement group Id. Will throw error, if resource does not exist.", + "type": "string" + } + }, + "x-ms-discriminator-value": "Existing" + }, + "ExistingRecoveryRecoveryResourceGroup": { + "description": "Existing recovery resource group input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RecoveryResourceGroupCustomDetails" + } + ], + "properties": { + "recoveryResourceGroupId": { + "description": "The recovery resource group Id. Valid for V2 scenarios.", + "type": "string" + } + }, + "x-ms-discriminator-value": "Existing" + }, + "ExistingRecoveryVirtualNetwork": { + "description": "Existing recovery virtual network input.", + "required": [ + "recoveryVirtualNetworkId" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RecoveryVirtualNetworkCustomDetails" + } + ], + "properties": { + "recoveryVirtualNetworkId": { + "description": "The recovery virtual network Id. Will throw error, if resource does not exist.", + "type": "string" + }, + "recoverySubnetName": { + "description": "The recovery subnet name.", + "type": "string" + } + }, + "x-ms-discriminator-value": "Existing" + }, + "ExistingStorageAccount": { + "description": "Existing storage account input.", + "required": [ + "azureStorageAccountId" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/StorageAccountCustomDetails" + } + ], + "properties": { + "azureStorageAccountId": { + "description": "The storage account Arm Id. Throw error, if resource does not exists.", + "type": "string" + } + }, + "x-ms-discriminator-value": "Existing" + }, + "ExportJobDetails": { + "description": "This class represents details for export jobs workflow.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/JobDetails" + } + ], + "properties": { + "blobUri": { + "description": "BlobUri of the exported jobs.", + "type": "string" + }, + "sasToken": { + "description": "The sas token to access blob.", + "type": "string" + } + }, + "x-ms-discriminator-value": "ExportJobDetails" + }, + "Fabric": { + "description": "Fabric definition.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/FabricProperties", + "description": "Fabric related data." + } + } + }, + "FabricCollection": { + "description": "Collection of fabric details.", + "type": "object", + "properties": { + "value": { + "description": "The fabric details.", + "type": "array", + "items": { + "$ref": "#/definitions/Fabric" + } + }, + "nextLink": { + "description": "The value of next link.", + "type": "string" + } + } + }, + "FabricCreationInput": { + "description": "Site details provided during the time of site creation", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/FabricCreationInputProperties", + "description": "Fabric creation input." + } + } + }, + "FabricCreationInputProperties": { + "description": "Properties of site details provided during the time of site creation", + "type": "object", + "properties": { + "customDetails": { + "$ref": "#/definitions/FabricSpecificCreationInput", + "description": "Fabric provider specific creation input." + } + } + }, + "FabricProperties": { + "description": "Fabric properties.", + "type": "object", + "properties": { + "friendlyName": { + "description": "Friendly name of the fabric.", + "type": "string" + }, + "encryptionDetails": { + "$ref": "#/definitions/EncryptionDetails", + "description": "Encryption details for the fabric." + }, + "rolloverEncryptionDetails": { + "$ref": "#/definitions/EncryptionDetails", + "description": "Rollover encryption details for the fabric." + }, + "internalIdentifier": { + "description": "Dra Registration Id.", + "type": "string" + }, + "bcdrState": { + "description": "BCDR state of the fabric.", + "type": "string" + }, + "customDetails": { + "$ref": "#/definitions/FabricSpecificDetails", + "description": "Fabric specific settings." + }, + "healthErrorDetails": { + "description": "Fabric health error details.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthError" + } + }, + "health": { + "description": "Health of fabric.", + "type": "string" + } + } + }, + "FabricReplicationGroupTaskDetails": { + "description": "This class represents the fabric replication group task details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TaskTypeDetails" + } + ], + "properties": { + "skippedReason": { + "description": "The skipped reason.", + "type": "string" + }, + "skippedReasonString": { + "description": "The skipped reason string.", + "type": "string" + }, + "jobTask": { + "$ref": "#/definitions/JobEntity", + "description": "The job entity." + } + }, + "x-ms-discriminator-value": "FabricReplicationGroupTaskDetails" + }, + "FabricSpecificCreateNetworkMappingInput": { + "description": "Input details specific to fabrics during Network Mapping.", + "type": "object", + "properties": { + "instanceType": { + "description": "The instance type.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, + "FabricSpecificCreationInput": { + "description": "Fabric provider specific settings.", + "type": "object", + "properties": { + "instanceType": { + "description": "Gets the class type.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, + "FabricSpecificDetails": { + "description": "Fabric specific details.", + "type": "object", + "properties": { + "instanceType": { + "description": "Gets the class type. Overridden in derived classes.", + "type": "string", + "readOnly": true + } + }, + "discriminator": "instanceType" + }, + "FabricSpecificUpdateNetworkMappingInput": { + "description": "Input details specific to fabrics during Network Mapping.", + "type": "object", + "properties": { + "instanceType": { + "description": "The instance type.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, + "FailoverJobDetails": { + "description": "This class represents the details for a failover job.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/JobDetails" + } + ], + "properties": { + "protectedItemDetails": { + "description": "The test VM details.", + "type": "array", + "items": { + "$ref": "#/definitions/FailoverReplicationProtectedItemDetails" + } + } + }, + "x-ms-discriminator-value": "FailoverJobDetails" + }, + "FailoverProcessServerRequest": { + "description": "Request to failover a process server.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/FailoverProcessServerRequestProperties", + "description": "The properties of the PS Failover request." + } + } + }, + "FailoverProcessServerRequestProperties": { + "description": "The properties of the Failover Process Server request.", + "type": "object", + "properties": { + "containerName": { + "description": "The container identifier.", + "type": "string" + }, + "sourceProcessServerId": { + "description": "The source process server.", + "type": "string" + }, + "targetProcessServerId": { + "description": "The new process server.", + "type": "string" + }, + "vmsToMigrate": { + "description": "The VMS to migrate.", + "type": "array", + "items": { + "type": "string" + } + }, + "updateType": { + "description": "A value for failover type. It can be systemlevel/serverlevel", + "type": "string" + } + } + }, + "FailoverReplicationProtectedItemDetails": { + "description": "Failover details for a replication protected item.", + "type": "object", + "properties": { + "name": { + "description": "The name.", + "type": "string" + }, + "friendlyName": { + "description": "The friendly name.", + "type": "string" + }, + "testVmName": { + "description": "The test Vm name.", + "type": "string" + }, + "testVmFriendlyName": { + "description": "The test Vm friendly name.", + "type": "string" + }, + "networkConnectionStatus": { + "description": "The network connection status.", + "type": "string" + }, + "networkFriendlyName": { + "description": "The network friendly name.", + "type": "string" + }, + "subnet": { + "description": "The network subnet.", + "type": "string" + }, + "recoveryPointId": { + "description": "The recovery point Id.", + "type": "string" + }, + "recoveryPointTime": { + "format": "date-time", + "description": "The recovery point time.", + "type": "string" + } + } + }, + "GroupTaskDetails": { + "description": "This class represents the group task details when parent child relationship exists in the drill down.", + "type": "object", + "properties": { + "instanceType": { + "description": "The type of task details.", + "type": "string" + }, + "childTasks": { + "description": "The child tasks.", + "type": "array", + "items": { + "$ref": "#/definitions/ASRTask" + } + } + }, + "discriminator": "instanceType" + }, + "HealthError": { + "description": "Health Error", + "type": "object", + "properties": { + "innerHealthErrors": { + "description": "The inner health errors. HealthError having a list of HealthError as child errors is problematic. InnerHealthError is used because this will prevent an infinite loop of structures when Hydra tries to auto-generate the contract. We are exposing the related health errors as inner health errors and all API consumers can utilize this in the same fashion as Exception -> InnerException.", + "type": "array", + "items": { + "$ref": "#/definitions/InnerHealthError" + } + }, + "errorSource": { + "description": "Source of error.", + "type": "string" + }, + "errorType": { + "description": "Type of error.", + "type": "string" + }, + "errorLevel": { + "description": "Level of error.", + "type": "string" + }, + "errorCategory": { + "description": "Category of error.", + "type": "string" + }, + "errorCode": { + "description": "Error code.", + "type": "string" + }, + "summaryMessage": { + "description": "Summary message of the entity.", + "type": "string" + }, + "errorMessage": { + "description": "Error message.", + "type": "string" + }, + "possibleCauses": { + "description": "Possible causes of error.", + "type": "string" + }, + "recommendedAction": { + "description": "Recommended action to resolve error.", + "type": "string" + }, + "creationTimeUtc": { + "format": "date-time", + "description": "Error creation time (UTC)", + "type": "string" + }, + "recoveryProviderErrorMessage": { + "description": "DRA error message.", + "type": "string" + }, + "entityId": { + "description": "ID of the entity.", + "type": "string" + }, + "errorId": { + "description": "The health error unique id.", + "type": "string" + }, + "customerResolvability": { + "description": "Value indicating whether the health error is customer resolvable.", + "enum": [ + "Allowed", + "NotAllowed" + ], + "type": "string", + "x-ms-enum": { + "name": "HealthErrorCustomerResolvability", + "modelAsString": true + } + } + } + }, + "HealthErrorSummary": { + "description": "class to define the summary of the health error details.", + "type": "object", + "properties": { + "summaryCode": { + "description": "The code of the health error.", + "type": "string" + }, + "category": { + "description": "The category of the health error.", + "enum": [ + "None", + "Replication", + "TestFailover", + "Configuration", + "FabricInfrastructure", + "VersionExpiry", + "AgentAutoUpdate" + ], + "type": "string", + "x-ms-enum": { + "name": "HealthErrorCategory", + "modelAsString": true + } + }, + "severity": { + "description": "Severity of error.", + "enum": [ + "NONE", + "Warning", + "Error", + "Info" + ], + "type": "string", + "x-ms-enum": { + "name": "Severity", + "modelAsString": true + } + }, + "summaryMessage": { + "description": "The summary message of the health error.", + "type": "string" + }, + "affectedResourceType": { + "description": "The type of affected ARM resource.", + "type": "string" + }, + "affectedResourceSubtype": { + "description": "The sub type of any subcomponent within the ARM resource that this might be applicable. Value remains null if not applicable.", + "type": "string" + }, + "affectedResourceCorrelationIds": { + "description": "The list of affected resource correlation Ids. This can be used to uniquely identify the count of items affected by a specific category and severity as well as count of item affected by an specific issue.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "HyperVReplica2012EventDetails": { + "description": "Model class for event details of a HyperVReplica E2E event.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/EventProviderSpecificDetails" + } + ], + "properties": { + "containerName": { + "description": "The container friendly name.", + "type": "string" + }, + "fabricName": { + "description": "The fabric friendly name.", + "type": "string" + }, + "remoteContainerName": { + "description": "The remote container name.", + "type": "string" + }, + "remoteFabricName": { + "description": "The remote fabric name.", + "type": "string" + } + }, + "x-ms-discriminator-value": "HyperVReplica2012" + }, + "HyperVReplica2012R2EventDetails": { + "description": "Model class for event details of a HyperVReplica blue E2E event.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/EventProviderSpecificDetails" + } + ], + "properties": { + "containerName": { + "description": "The container friendly name.", + "type": "string" + }, + "fabricName": { + "description": "The fabric friendly name.", + "type": "string" + }, + "remoteContainerName": { + "description": "The remote container name.", + "type": "string" + }, + "remoteFabricName": { + "description": "The remote fabric name.", + "type": "string" + } + }, + "x-ms-discriminator-value": "HyperVReplica2012R2" + }, + "HyperVReplicaAzureApplyRecoveryPointInput": { + "description": "ApplyRecoveryPoint input specific to HyperVReplicaAzure provider.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ApplyRecoveryPointProviderSpecificInput" + } + ], + "properties": { + "vaultLocation": { + "description": "The vault location where the recovery Vm resides.", + "type": "string" + }, + "primaryKekCertificatePfx": { + "description": "The primary kek certificate pfx.", + "type": "string" + }, + "secondaryKekCertificatePfx": { + "description": "The secondary kek certificate pfx.", + "type": "string" + } + }, + "x-ms-discriminator-value": "HyperVReplicaAzure" + }, + "HyperVReplicaAzureEnableProtectionInput": { + "description": "Azure specific enable protection input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/EnableProtectionProviderSpecificInput" + } + ], + "properties": { + "hvHostVmId": { + "description": "The Hyper-V host Vm Id.", + "type": "string" + }, + "vmName": { + "description": "The Vm Name.", + "type": "string" + }, + "osType": { + "description": "The OS type associated with vm.", + "type": "string" + }, + "vhdId": { + "description": "The OS disk VHD id associated with vm.", + "type": "string" + }, + "targetStorageAccountId": { + "description": "The storage account name.", + "type": "string" + }, + "targetAzureNetworkId": { + "description": "The selected target Azure network Id.", + "type": "string" + }, + "targetAzureSubnetId": { + "description": "The selected target Azure subnet Id.", + "type": "string" + }, + "enableRdpOnTargetOption": { + "description": "The selected option to enable RDP\\SSH on target vm after failover. String value of {SrsDataContract.EnableRDPOnTargetOption} enum.", + "type": "string" + }, + "targetAzureVmName": { + "description": "The target azure Vm Name.", + "type": "string" + }, + "logStorageAccountId": { + "description": "The storage account to be used for logging during replication.", + "type": "string" + }, + "disksToInclude": { + "description": "The list of VHD IDs of disks to be protected.", + "type": "array", + "items": { + "type": "string" + } + }, + "targetAzureV1ResourceGroupId": { + "description": "The Id of the target resource group (for classic deployment) in which the failover VM is to be created.", + "type": "string" + }, + "targetAzureV2ResourceGroupId": { + "description": "The Id of the target resource group (for resource manager deployment) in which the failover VM is to be created.", + "type": "string" + }, + "useManagedDisks": { + "description": "A value indicating whether managed disks should be used during failover.", + "type": "string" + }, + "targetAvailabilityZone": { + "description": "The target availability zone.", + "type": "string" + }, + "targetProximityPlacementGroupId": { + "description": "The proximity placement group ARM Id.", + "type": "string" + }, + "targetAvailabilitySetId": { + "description": "The availability set ARM Id.", + "type": "string" + }, + "targetVmSize": { + "description": "The target VM size.", + "type": "string" + } + }, + "x-ms-discriminator-value": "HyperVReplicaAzure" + }, + "HyperVReplicaAzureEventDetails": { + "description": "Model class for event details of a HyperVReplica E2A event.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/EventProviderSpecificDetails" + } + ], + "properties": { + "containerName": { + "description": "The container friendly name.", + "type": "string" + }, + "fabricName": { + "description": "The fabric friendly name.", + "type": "string" + }, + "remoteContainerName": { + "description": "The remote container name.", + "type": "string" + } + }, + "x-ms-discriminator-value": "HyperVReplicaAzure" + }, + "HyperVReplicaAzureFailbackProviderInput": { + "description": "HvrA provider specific input for failback.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProviderSpecificFailoverInput" + } + ], + "properties": { + "dataSyncOption": { + "description": "Data sync option.", + "type": "string" + }, + "recoveryVmCreationOption": { + "description": "ALR options to create alternate recovery.", + "type": "string" + }, + "providerIdForAlternateRecovery": { + "description": "Provider ID for alternate location", + "type": "string" + } + }, + "x-ms-discriminator-value": "HyperVReplicaAzureFailback" + }, + "HyperVReplicaAzureFailoverProviderInput": { + "description": "HvrA provider specific input for failover.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProviderSpecificFailoverInput" + } + ], + "properties": { + "vaultLocation": { + "description": "Location of the vault.", + "type": "string" + }, + "primaryKekCertificatePfx": { + "description": "Primary kek certificate pfx.", + "type": "string" + }, + "secondaryKekCertificatePfx": { + "description": "Secondary kek certificate pfx.", + "type": "string" + }, + "recoveryPointId": { + "description": "The recovery point id to be passed to failover to a particular recovery point. In case of latest recovery point, null should be passed.", + "type": "string" + } + }, + "x-ms-discriminator-value": "HyperVReplicaAzure" + }, + "HyperVReplicaAzurePolicyDetails": { + "description": "Hyper-V Replica Azure specific protection profile details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/PolicyProviderSpecificDetails" + } + ], + "properties": { + "recoveryPointHistoryDurationInHours": { + "format": "int32", + "description": "The duration (in hours) to which point the recovery history needs to be maintained.", + "type": "integer" + }, + "applicationConsistentSnapshotFrequencyInHours": { + "format": "int32", + "description": "The interval (in hours) at which Hyper-V Replica should create an application consistent snapshot within the VM.", + "type": "integer" + }, + "replicationInterval": { + "format": "int32", + "description": "The replication interval.", + "type": "integer" + }, + "onlineReplicationStartTime": { + "description": "The scheduled start time for the initial replication. If this parameter is Null, the initial replication starts immediately.", + "type": "string" + }, + "encryption": { + "description": "A value indicating whether encryption is enabled for virtual machines in this cloud.", + "type": "string" + }, + "activeStorageAccountId": { + "description": "The active storage account Id.", + "type": "string" + } + }, + "x-ms-discriminator-value": "HyperVReplicaAzure" + }, + "HyperVReplicaAzurePolicyInput": { + "description": "Hyper-V Replica Azure specific input for creating a protection profile.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/PolicyProviderSpecificInput" + } + ], + "properties": { + "recoveryPointHistoryDuration": { + "format": "int32", + "description": "The duration (in hours) to which point the recovery history needs to be maintained.", + "type": "integer" + }, + "applicationConsistentSnapshotFrequencyInHours": { + "format": "int32", + "description": "The interval (in hours) at which Hyper-V Replica should create an application consistent snapshot within the VM.", + "type": "integer" + }, + "replicationInterval": { + "format": "int32", + "description": "The replication interval.", + "type": "integer" + }, + "onlineReplicationStartTime": { + "description": "The scheduled start time for the initial replication. If this parameter is Null, the initial replication starts immediately.", + "type": "string" + }, + "storageAccounts": { + "description": "The list of storage accounts to which the VMs in the primary cloud can replicate to.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "x-ms-discriminator-value": "HyperVReplicaAzure" + }, + "HyperVReplicaAzureReplicationDetails": { + "description": "Hyper V Replica Azure provider specific settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ReplicationProviderSpecificSettings" + } + ], + "properties": { + "azureVmDiskDetails": { + "description": "Azure VM Disk details.", + "type": "array", + "items": { + "$ref": "#/definitions/AzureVmDiskDetails" + } + }, + "recoveryAzureVmName": { + "description": "Recovery Azure given name.", + "type": "string" + }, + "recoveryAzureVMSize": { + "description": "The Recovery Azure VM size.", + "type": "string" + }, + "recoveryAzureStorageAccount": { + "description": "The recovery Azure storage account.", + "type": "string" + }, + "recoveryAzureLogStorageAccountId": { + "description": "The ARM id of the log storage account used for replication. This will be set to null if no log storage account was provided during enable protection.", + "type": "string" + }, + "lastReplicatedTime": { + "format": "date-time", + "description": "The Last replication time.", + "type": "string" + }, + "rpoInSeconds": { + "format": "int64", + "description": "Last RPO value.", + "type": "integer" + }, + "lastRpoCalculatedTime": { + "format": "date-time", + "description": "The last RPO calculated time.", + "type": "string" + }, + "vmId": { + "description": "The virtual machine Id.", + "type": "string" + }, + "vmProtectionState": { + "description": "The protection state for the vm.", + "type": "string" + }, + "vmProtectionStateDescription": { + "description": "The protection state description for the vm.", + "type": "string" + }, + "initialReplicationDetails": { + "$ref": "#/definitions/InitialReplicationDetails", + "description": "Initial replication details." + }, + "vmNics": { + "description": "The PE Network details.", + "type": "array", + "items": { + "$ref": "#/definitions/VMNicDetails" + } + }, + "selectedRecoveryAzureNetworkId": { + "description": "The selected recovery azure network Id.", + "type": "string" + }, + "selectedSourceNicId": { + "description": "The selected source nic Id which will be used as the primary nic during failover.", + "type": "string" + }, + "encryption": { + "description": "The encryption info.", + "type": "string" + }, + "oSDetails": { + "$ref": "#/definitions/OSDetails", + "description": "The operating system info." + }, + "sourceVmRamSizeInMB": { + "format": "int32", + "description": "The RAM size of the VM on the primary side.", + "type": "integer" + }, + "sourceVmCpuCount": { + "format": "int32", + "description": "The CPU count of the VM on the primary side.", + "type": "integer" + }, + "enableRdpOnTargetOption": { + "description": "The selected option to enable RDP\\SSH on target vm after failover. String value of {SrsDataContract.EnableRDPOnTargetOption} enum.", + "type": "string" + }, + "recoveryAzureResourceGroupId": { + "description": "The target resource group Id.", + "type": "string" + }, + "recoveryAvailabilitySetId": { + "description": "The recovery availability set Id.", + "type": "string" + }, + "targetAvailabilityZone": { + "description": "The target availability zone.", + "type": "string" + }, + "targetProximityPlacementGroupId": { + "description": "The target proximity placement group Id.", + "type": "string" + }, + "useManagedDisks": { + "description": "A value indicating whether managed disks should be used during failover.", + "type": "string" + }, + "licenseType": { + "description": "License Type of the VM to be used.", + "type": "string" + } + }, + "x-ms-discriminator-value": "HyperVReplicaAzure" + }, + "HyperVReplicaAzureReprotectInput": { + "description": "Azure specific reprotect input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ReverseReplicationProviderSpecificInput" + } + ], + "properties": { + "hvHostVmId": { + "description": "The Hyper-V host Vm Id.", + "type": "string" + }, + "vmName": { + "description": "The Vm Name.", + "type": "string" + }, + "osType": { + "description": "The OS type associated with vm.", + "type": "string" + }, + "vHDId": { + "description": "The OS disk VHD id associated with vm.", + "type": "string" + }, + "storageAccountId": { + "description": "The storage account name.", + "type": "string" + }, + "logStorageAccountId": { + "description": "The storage account to be used for logging during replication.", + "type": "string" + } + }, + "x-ms-discriminator-value": "HyperVReplicaAzure" + }, + "HyperVReplicaAzureTestFailoverInput": { + "description": "HvrA provider specific input for test failover.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TestFailoverProviderSpecificInput" + } + ], + "properties": { + "vaultLocation": { + "description": "Location of the vault.", + "type": "string" + }, + "primaryKekCertificatePfx": { + "description": "Primary kek certificate pfx.", + "type": "string" + }, + "secondaryKekCertificatePfx": { + "description": "Secondary kek certificate pfx.", + "type": "string" + }, + "recoveryPointId": { + "description": "The recovery point id to be passed to test failover to a particular recovery point. In case of latest recovery point, null should be passed.", + "type": "string" + } + }, + "x-ms-discriminator-value": "HyperVReplicaAzure" + }, + "HyperVReplicaAzureUnplannedFailoverInput": { + "description": "HvrA provider specific input for unplanned failover.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/UnplannedFailoverProviderSpecificInput" + } + ], + "properties": { + "vaultLocation": { + "description": "Location of the vault.", + "type": "string" + }, + "primaryKekCertificatePfx": { + "description": "Primary kek certificate pfx.", + "type": "string" + }, + "secondaryKekCertificatePfx": { + "description": "Secondary kek certificate pfx.", + "type": "string" + }, + "recoveryPointId": { + "description": "The recovery point id to be passed to failover to a particular recovery point. In case of latest recovery point, null should be passed.", + "type": "string" + } + }, + "x-ms-discriminator-value": "HyperVReplicaAzure" + }, + "HyperVReplicaAzureUpdateReplicationProtectedItemInput": { + "description": "HyperV replica Azure input to update replication protected item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/UpdateReplicationProtectedItemProviderInput" + } + ], + "properties": { + "recoveryAzureV1ResourceGroupId": { + "description": "The recovery Azure resource group Id for classic deployment.", + "type": "string" + }, + "recoveryAzureV2ResourceGroupId": { + "description": "The recovery Azure resource group Id for resource manager deployment.", + "type": "string" + }, + "useManagedDisks": { + "description": "A value indicating whether managed disks should be used during failover.", + "type": "string" + }, + "diskIdToDiskEncryptionMap": { + "description": "The dictionary of disk resource Id to disk encryption set ARM Id.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "targetProximityPlacementGroupId": { + "description": "The target proximity placement group Id.", + "type": "string" + }, + "targetAvailabilityZone": { + "description": "The target availability zone.", + "type": "string" + } + }, + "x-ms-discriminator-value": "HyperVReplicaAzure" + }, + "HyperVReplicaBaseEventDetails": { + "description": "Abstract model class for event details of a HyperVReplica E2E event.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/EventProviderSpecificDetails" + } + ], + "properties": { + "containerName": { + "description": "The container friendly name.", + "type": "string" + }, + "fabricName": { + "description": "The fabric friendly name.", + "type": "string" + }, + "remoteContainerName": { + "description": "The remote container name.", + "type": "string" + }, + "remoteFabricName": { + "description": "The remote fabric name.", + "type": "string" + } + }, + "x-ms-discriminator-value": "HyperVReplicaBaseEventDetails" + }, + "HyperVReplicaBasePolicyDetails": { + "description": "Base class for HyperVReplica policy details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/PolicyProviderSpecificDetails" + } + ], + "properties": { + "recoveryPoints": { + "format": "int32", + "description": "A value indicating the number of recovery points.", + "type": "integer" + }, + "applicationConsistentSnapshotFrequencyInHours": { + "format": "int32", + "description": "A value indicating the application consistent frequency.", + "type": "integer" + }, + "compression": { + "description": "A value indicating whether compression has to be enabled.", + "type": "string" + }, + "initialReplicationMethod": { + "description": "A value indicating whether IR is online.", + "type": "string" + }, + "onlineReplicationStartTime": { + "description": "A value indicating the online IR start time.", + "type": "string" + }, + "offlineReplicationImportPath": { + "description": "A value indicating the offline IR import path.", + "type": "string" + }, + "offlineReplicationExportPath": { + "description": "A value indicating the offline IR export path.", + "type": "string" + }, + "replicationPort": { + "format": "int32", + "description": "A value indicating the recovery HTTPS port.", + "type": "integer" + }, + "allowedAuthenticationType": { + "format": "int32", + "description": "A value indicating the authentication type.", + "type": "integer" + }, + "replicaDeletionOption": { + "description": "A value indicating whether the VM has to be auto deleted. Supported Values: String.Empty, None, OnRecoveryCloud", + "type": "string" + } + }, + "x-ms-discriminator-value": "HyperVReplicaBasePolicyDetails" + }, + "HyperVReplicaBaseReplicationDetails": { + "description": "Hyper V replica provider specific settings base class.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ReplicationProviderSpecificSettings" + } + ], + "properties": { + "lastReplicatedTime": { + "format": "date-time", + "description": "The Last replication time.", + "type": "string" + }, + "vmNics": { + "description": "The PE Network details.", + "type": "array", + "items": { + "$ref": "#/definitions/VMNicDetails" + } + }, + "vmId": { + "description": "The virtual machine Id.", + "type": "string" + }, + "vmProtectionState": { + "description": "The protection state for the vm.", + "type": "string" + }, + "vmProtectionStateDescription": { + "description": "The protection state description for the vm.", + "type": "string" + }, + "initialReplicationDetails": { + "$ref": "#/definitions/InitialReplicationDetails", + "description": "Initial replication details." + }, + "vMDiskDetails": { + "description": "VM disk details.", + "type": "array", + "items": { + "$ref": "#/definitions/DiskDetails" + } + } + }, + "x-ms-discriminator-value": "HyperVReplicaBaseReplicationDetails" + }, + "HyperVReplicaBluePolicyDetails": { + "description": "Hyper-V Replica Blue specific protection profile details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/PolicyProviderSpecificDetails" + } + ], + "properties": { + "replicationFrequencyInSeconds": { + "format": "int32", + "description": "A value indicating the replication interval.", + "type": "integer" + }, + "recoveryPoints": { + "format": "int32", + "description": "A value indicating the number of recovery points.", + "type": "integer" + }, + "applicationConsistentSnapshotFrequencyInHours": { + "format": "int32", + "description": "A value indicating the application consistent frequency.", + "type": "integer" + }, + "compression": { + "description": "A value indicating whether compression has to be enabled.", + "type": "string" + }, + "initialReplicationMethod": { + "description": "A value indicating whether IR is online.", + "type": "string" + }, + "onlineReplicationStartTime": { + "description": "A value indicating the online IR start time.", + "type": "string" + }, + "offlineReplicationImportPath": { + "description": "A value indicating the offline IR import path.", + "type": "string" + }, + "offlineReplicationExportPath": { + "description": "A value indicating the offline IR export path.", + "type": "string" + }, + "replicationPort": { + "format": "int32", + "description": "A value indicating the recovery HTTPS port.", + "type": "integer" + }, + "allowedAuthenticationType": { + "format": "int32", + "description": "A value indicating the authentication type.", + "type": "integer" + }, + "replicaDeletionOption": { + "description": "A value indicating whether the VM has to be auto deleted. Supported Values: String.Empty, None, OnRecoveryCloud", + "type": "string" + } + }, + "x-ms-discriminator-value": "HyperVReplica2012R2" + }, + "HyperVReplicaBluePolicyInput": { + "description": "HyperV Replica Blue policy input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/PolicyProviderSpecificInput" + } + ], + "properties": { + "replicationFrequencyInSeconds": { + "format": "int32", + "description": "A value indicating the replication interval.", + "type": "integer" + }, + "recoveryPoints": { + "format": "int32", + "description": "A value indicating the number of recovery points.", + "type": "integer" + }, + "applicationConsistentSnapshotFrequencyInHours": { + "format": "int32", + "description": "A value indicating the application consistent frequency.", + "type": "integer" + }, + "compression": { + "description": "A value indicating whether compression has to be enabled.", + "type": "string" + }, + "initialReplicationMethod": { + "description": "A value indicating whether IR is online.", + "type": "string" + }, + "onlineReplicationStartTime": { + "description": "A value indicating the online IR start time.", + "type": "string" + }, + "offlineReplicationImportPath": { + "description": "A value indicating the offline IR import path.", + "type": "string" + }, + "offlineReplicationExportPath": { + "description": "A value indicating the offline IR export path.", + "type": "string" + }, + "replicationPort": { + "format": "int32", + "description": "A value indicating the recovery HTTPS port.", + "type": "integer" + }, + "allowedAuthenticationType": { + "format": "int32", + "description": "A value indicating the authentication type.", + "type": "integer" + }, + "replicaDeletion": { + "description": "A value indicating whether the VM has to be auto deleted.", + "type": "string" + } + }, + "x-ms-discriminator-value": "HyperVReplica2012R2" + }, + "HyperVReplicaBlueReplicationDetails": { + "description": "HyperV replica 2012 R2 (Blue) replication details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ReplicationProviderSpecificSettings" + } + ], + "properties": { + "lastReplicatedTime": { + "format": "date-time", + "description": "The Last replication time.", + "type": "string" + }, + "vmNics": { + "description": "The PE Network details.", + "type": "array", + "items": { + "$ref": "#/definitions/VMNicDetails" + } + }, + "vmId": { + "description": "The virtual machine Id.", + "type": "string" + }, + "vmProtectionState": { + "description": "The protection state for the vm.", + "type": "string" + }, + "vmProtectionStateDescription": { + "description": "The protection state description for the vm.", + "type": "string" + }, + "initialReplicationDetails": { + "$ref": "#/definitions/InitialReplicationDetails", + "description": "Initial replication details." + }, + "vMDiskDetails": { + "description": "VM disk details.", + "type": "array", + "items": { + "$ref": "#/definitions/DiskDetails" + } + } + }, + "x-ms-discriminator-value": "HyperVReplica2012R2" + }, + "HyperVReplicaPolicyDetails": { + "description": "Hyper-V Replica Blue specific protection profile details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/PolicyProviderSpecificDetails" + } + ], + "properties": { + "recoveryPoints": { + "format": "int32", + "description": "A value indicating the number of recovery points.", + "type": "integer" + }, + "applicationConsistentSnapshotFrequencyInHours": { + "format": "int32", + "description": "A value indicating the application consistent frequency.", + "type": "integer" + }, + "compression": { + "description": "A value indicating whether compression has to be enabled.", + "type": "string" + }, + "initialReplicationMethod": { + "description": "A value indicating whether IR is online.", + "type": "string" + }, + "onlineReplicationStartTime": { + "description": "A value indicating the online IR start time.", + "type": "string" + }, + "offlineReplicationImportPath": { + "description": "A value indicating the offline IR import path.", + "type": "string" + }, + "offlineReplicationExportPath": { + "description": "A value indicating the offline IR export path.", + "type": "string" + }, + "replicationPort": { + "format": "int32", + "description": "A value indicating the recovery HTTPS port.", + "type": "integer" + }, + "allowedAuthenticationType": { + "format": "int32", + "description": "A value indicating the authentication type.", + "type": "integer" + }, + "replicaDeletionOption": { + "description": "A value indicating whether the VM has to be auto deleted. Supported Values: String.Empty, None, OnRecoveryCloud", + "type": "string" + } + }, + "x-ms-discriminator-value": "HyperVReplica2012" + }, + "HyperVReplicaPolicyInput": { + "description": "Hyper-V Replica specific policy Input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/PolicyProviderSpecificInput" + } + ], + "properties": { + "recoveryPoints": { + "format": "int32", + "description": "A value indicating the number of recovery points.", + "type": "integer" + }, + "applicationConsistentSnapshotFrequencyInHours": { + "format": "int32", + "description": "A value indicating the application consistent frequency.", + "type": "integer" + }, + "compression": { + "description": "A value indicating whether compression has to be enabled.", + "type": "string" + }, + "initialReplicationMethod": { + "description": "A value indicating whether IR is online.", + "type": "string" + }, + "onlineReplicationStartTime": { + "description": "A value indicating the online IR start time.", + "type": "string" + }, + "offlineReplicationImportPath": { + "description": "A value indicating the offline IR import path.", + "type": "string" + }, + "offlineReplicationExportPath": { + "description": "A value indicating the offline IR export path.", + "type": "string" + }, + "replicationPort": { + "format": "int32", + "description": "A value indicating the recovery HTTPS port.", + "type": "integer" + }, + "allowedAuthenticationType": { + "format": "int32", + "description": "A value indicating the authentication type.", + "type": "integer" + }, + "replicaDeletion": { + "description": "A value indicating whether the VM has to be auto deleted.", + "type": "string" + } + }, + "x-ms-discriminator-value": "HyperVReplica2012" + }, + "HyperVReplicaReplicationDetails": { + "description": "HyperV replica 2012 replication details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ReplicationProviderSpecificSettings" + } + ], + "properties": { + "lastReplicatedTime": { + "format": "date-time", + "description": "The Last replication time.", + "type": "string" + }, + "vmNics": { + "description": "The PE Network details.", + "type": "array", + "items": { + "$ref": "#/definitions/VMNicDetails" + } + }, + "vmId": { + "description": "The virtual machine Id.", + "type": "string" + }, + "vmProtectionState": { + "description": "The protection state for the vm.", + "type": "string" + }, + "vmProtectionStateDescription": { + "description": "The protection state description for the vm.", + "type": "string" + }, + "initialReplicationDetails": { + "$ref": "#/definitions/InitialReplicationDetails", + "description": "Initial replication details." + }, + "vMDiskDetails": { + "description": "VM disk details.", + "type": "array", + "items": { + "$ref": "#/definitions/DiskDetails" + } + } + }, + "x-ms-discriminator-value": "HyperVReplica2012" + }, + "HyperVSiteDetails": { + "description": "HyperVSite fabric specific details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/FabricSpecificDetails" + } + ], + "properties": {}, + "x-ms-discriminator-value": "HyperVSite" + }, + "HyperVVirtualMachineDetails": { + "description": "Single Host fabric provider specific VM settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ConfigurationSettings" + } + ], + "properties": { + "sourceItemId": { + "description": "The source id of the object.", + "type": "string" + }, + "generation": { + "description": "The id of the object in fabric.", + "type": "string" + }, + "osDetails": { + "$ref": "#/definitions/OSDetails", + "description": "The Last replication time." + }, + "diskDetails": { + "description": "The Last successful failover time.", + "type": "array", + "items": { + "$ref": "#/definitions/DiskDetails" + } + }, + "hasPhysicalDisk": { + "description": "A value indicating whether the VM has a physical disk attached. String value of {SrsDataContract.PresenceStatus} enum.", + "enum": [ + "Unknown", + "Present", + "NotPresent" + ], + "type": "string", + "x-ms-enum": { + "name": "PresenceStatus", + "modelAsString": true + } + }, + "hasFibreChannelAdapter": { + "description": "A value indicating whether the VM has a fibre channel adapter attached. String value of {SrsDataContract.PresenceStatus} enum.", + "enum": [ + "Unknown", + "Present", + "NotPresent" + ], + "type": "string", + "x-ms-enum": { + "name": "PresenceStatus", + "modelAsString": true + } + }, + "hasSharedVhd": { + "description": "A value indicating whether the VM has a shared VHD attached. String value of {SrsDataContract.PresenceStatus} enum.", + "enum": [ + "Unknown", + "Present", + "NotPresent" + ], + "type": "string", + "x-ms-enum": { + "name": "PresenceStatus", + "modelAsString": true + } + } + }, + "x-ms-discriminator-value": "HyperVVirtualMachine" + }, + "IdentityProviderDetails": { + "description": "Identity provider details.", + "type": "object", + "properties": { + "tenantId": { + "description": "The tenant Id for the service principal with which the on-premise management/data plane components would communicate with our Azure services.", + "type": "string" + }, + "applicationId": { + "description": "The application/client Id for the service principal with which the on-premise management/data plane components would communicate with our Azure services.", + "type": "string" + }, + "objectId": { + "description": "The object Id of the service principal with which the on-premise management/data plane components would communicate with our Azure services.", + "type": "string" + }, + "audience": { + "description": "The intended Audience of the service principal with which the on-premise management/data plane components would communicate with our Azure services.", + "type": "string" + }, + "aadAuthority": { + "description": "The base authority for Azure Active Directory authentication.", + "type": "string" + } + } + }, + "IdentityProviderInput": { + "description": "Identity provider input.", + "required": [ + "tenantId", + "applicationId", + "objectId", + "audience", + "aadAuthority" + ], + "type": "object", + "properties": { + "tenantId": { + "description": "The tenant Id for the service principal with which the on-premise management/data plane components would communicate with our Azure services.", + "type": "string" + }, + "applicationId": { + "description": "The application/client Id for the service principal with which the on-premise management/data plane components would communicate with our Azure services.", + "type": "string" + }, + "objectId": { + "description": "The object Id of the service principal with which the on-premise management/data plane components would communicate with our Azure services.", + "type": "string" + }, + "audience": { + "description": "The intended Audience of the service principal with which the on-premise management/data plane components would communicate with our Azure services.", + "type": "string" + }, + "aadAuthority": { + "description": "The base authority for Azure Active Directory authentication.", + "type": "string" + } + } + }, + "InconsistentVmDetails": { + "description": "This class stores the monitoring details for consistency check of inconsistent Protected Entity.", + "type": "object", + "properties": { + "vmName": { + "description": "The Vm name.", + "type": "string" + }, + "cloudName": { + "description": "The Cloud name.", + "type": "string" + }, + "details": { + "description": "The list of details regarding state of the Protected Entity in SRS and On prem.", + "type": "array", + "items": { + "type": "string" + } + }, + "errorIds": { + "description": "The list of error ids.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "InitialReplicationDetails": { + "description": "Initial replication details.", + "type": "object", + "properties": { + "initialReplicationType": { + "description": "Initial replication type.", + "type": "string" + }, + "initialReplicationProgressPercentage": { + "description": "The initial replication progress percentage.", + "type": "string" + } + } + }, + "InlineWorkflowTaskDetails": { + "description": "This class represents the inline workflow task details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/GroupTaskDetails" + } + ], + "properties": { + "workflowIds": { + "description": "The list of child workflow ids.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "x-ms-discriminator-value": "InlineWorkflowTaskDetails" + }, + "InMageAgentDetails": { + "description": "The details of the InMage agent.", + "type": "object", + "properties": { + "agentVersion": { + "description": "The agent version.", + "type": "string" + }, + "agentUpdateStatus": { + "description": "A value indicating whether installed agent needs to be updated.", + "type": "string" + }, + "postUpdateRebootStatus": { + "description": "A value indicating whether reboot is required after update is applied.", + "type": "string" + }, + "agentExpiryDate": { + "format": "date-time", + "description": "Agent expiry date.", + "type": "string" + } + } + }, + "InMageAgentVersionDetails": { + "description": "InMage agent version details.", + "type": "object", + "properties": { + "postUpdateRebootStatus": { + "description": "A value indicating whether reboot is required after update is applied.", + "type": "string" + }, + "version": { + "description": "The agent version.", + "type": "string" + }, + "expiryDate": { + "format": "date-time", + "description": "Version expiry date.", + "type": "string" + }, + "status": { + "description": "A value indicating whether security update required.", + "enum": [ + "Supported", + "NotSupported", + "Deprecated", + "UpdateRequired", + "SecurityUpdateRequired" + ], + "type": "string", + "x-ms-enum": { + "name": "AgentVersionStatus", + "modelAsString": true + } + } + } + }, + "InMageAzureV2ApplyRecoveryPointInput": { + "description": "ApplyRecoveryPoint input specific to InMageAzureV2 provider.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ApplyRecoveryPointProviderSpecificInput" + } + ], + "properties": { + "vaultLocation": { + "description": "The vault location where the recovery Vm resides.", + "type": "string" + } + }, + "x-ms-discriminator-value": "InMageAzureV2" + }, + "InMageAzureV2DiskInputDetails": { + "description": "Disk input details.", + "type": "object", + "properties": { + "diskId": { + "description": "The DiskId.", + "type": "string" + }, + "logStorageAccountId": { + "description": "The LogStorageAccountId.", + "type": "string" + }, + "diskType": { + "description": "The DiskType.", + "enum": [ + "Standard_LRS", + "Premium_LRS", + "StandardSSD_LRS" + ], + "type": "string", + "x-ms-enum": { + "name": "DiskAccountType", + "modelAsString": true + } + }, + "diskEncryptionSetId": { + "description": "The DiskEncryptionSet ARM ID.", + "type": "string" + } + } + }, + "InMageAzureV2EnableProtectionInput": { + "description": "VMware Azure specific enable protection input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/EnableProtectionProviderSpecificInput" + } + ], + "properties": { + "masterTargetId": { + "description": "The Master target Id.", + "type": "string" + }, + "processServerId": { + "description": "The Process Server Id.", + "type": "string" + }, + "storageAccountId": { + "description": "The storage account name.", + "type": "string" + }, + "runAsAccountId": { + "description": "The CS account Id.", + "type": "string" + }, + "multiVmGroupId": { + "description": "The multi vm group Id.", + "type": "string" + }, + "multiVmGroupName": { + "description": "The multi vm group name.", + "type": "string" + }, + "disksToInclude": { + "description": "The disks to include list.", + "type": "array", + "items": { + "$ref": "#/definitions/InMageAzureV2DiskInputDetails" + } + }, + "targetAzureNetworkId": { + "description": "The selected target Azure network Id.", + "type": "string" + }, + "targetAzureSubnetId": { + "description": "The selected target Azure subnet Id.", + "type": "string" + }, + "enableRdpOnTargetOption": { + "description": "The selected option to enable RDP\\SSH on target vm after failover. String value of {SrsDataContract.EnableRDPOnTargetOption} enum.", + "type": "string" + }, + "targetAzureVmName": { + "description": "The target azure Vm Name.", + "type": "string" + }, + "logStorageAccountId": { + "description": "The storage account to be used for logging during replication.", + "type": "string" + }, + "targetAzureV1ResourceGroupId": { + "description": "The Id of the target resource group (for classic deployment) in which the failover VM is to be created.", + "type": "string" + }, + "targetAzureV2ResourceGroupId": { + "description": "The Id of the target resource group (for resource manager deployment) in which the failover VM is to be created.", + "type": "string" + }, + "diskType": { + "description": "The DiskType.", + "enum": [ + "Standard_LRS", + "Premium_LRS", + "StandardSSD_LRS" + ], + "type": "string", + "x-ms-enum": { + "name": "DiskAccountType", + "modelAsString": true + } + }, + "diskEncryptionSetId": { + "description": "The DiskEncryptionSet ARM ID.", + "type": "string" + }, + "targetAvailabilityZone": { + "description": "The target availability zone.", + "type": "string" + }, + "targetProximityPlacementGroupId": { + "description": "The proximity placement group ARM Id.", + "type": "string" + }, + "targetAvailabilitySetId": { + "description": "The availability set ARM Id.", + "type": "string" + }, + "targetVmSize": { + "description": "The target VM size.", + "type": "string" + } + }, + "x-ms-discriminator-value": "InMageAzureV2" + }, + "InMageAzureV2EventDetails": { + "description": "Model class for event details of a VMwareAzureV2 event.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/EventProviderSpecificDetails" + } + ], + "properties": { + "eventType": { + "description": "InMage Event type. Takes one of the values of {InMageDataContract.InMageMonitoringEventType}.", + "type": "string" + }, + "category": { + "description": "InMage Event Category.", + "type": "string" + }, + "component": { + "description": "InMage Event Component.", + "type": "string" + }, + "correctiveAction": { + "description": "Corrective Action string for the event.", + "type": "string" + }, + "details": { + "description": "InMage Event Details.", + "type": "string" + }, + "summary": { + "description": "InMage Event Summary.", + "type": "string" + }, + "siteName": { + "description": "VMware Site name.", + "type": "string" + } + }, + "x-ms-discriminator-value": "InMageAzureV2" + }, + "InMageAzureV2FailoverProviderInput": { + "description": "InMageAzureV2 provider specific input for failover.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProviderSpecificFailoverInput" + } + ], + "properties": { + "vaultLocation": { + "description": "Location of the vault.", + "type": "string" + }, + "recoveryPointId": { + "description": "The recovery point id to be passed to failover to a particular recovery point. In case of latest recovery point, null should be passed.", + "type": "string" + } + }, + "x-ms-discriminator-value": "InMageAzureV2" + }, + "InMageAzureV2ManagedDiskDetails": { + "description": "InMageAzureV2 Managed disk details.", + "type": "object", + "properties": { + "diskId": { + "description": "The disk id.", + "type": "string" + }, + "seedManagedDiskId": { + "description": "Seed managed disk Id.", + "type": "string" + }, + "replicaDiskType": { + "description": "The replica disk type.", + "type": "string" + } + } + }, + "InMageAzureV2PolicyDetails": { + "description": "InMage Azure v2 specific protection profile details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/PolicyProviderSpecificDetails" + } + ], + "properties": { + "crashConsistentFrequencyInMinutes": { + "format": "int32", + "description": "The crash consistent snapshot frequency in minutes.", + "type": "integer" + }, + "recoveryPointThresholdInMinutes": { + "format": "int32", + "description": "The recovery point threshold in minutes.", + "type": "integer" + }, + "recoveryPointHistory": { + "format": "int32", + "description": "The duration in minutes until which the recovery points need to be stored.", + "type": "integer" + }, + "appConsistentFrequencyInMinutes": { + "format": "int32", + "description": "The app consistent snapshot frequency in minutes.", + "type": "integer" + }, + "multiVmSyncStatus": { + "description": "A value indicating whether multi-VM sync has to be enabled.", + "type": "string" + } + }, + "x-ms-discriminator-value": "InMageAzureV2" + }, + "InMageAzureV2PolicyInput": { + "description": "VMWare Azure specific policy Input.", + "required": [ + "multiVmSyncStatus" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/PolicyProviderSpecificInput" + } + ], + "properties": { + "recoveryPointThresholdInMinutes": { + "format": "int32", + "description": "The recovery point threshold in minutes.", + "type": "integer" + }, + "recoveryPointHistory": { + "format": "int32", + "description": "The duration in minutes until which the recovery points need to be stored.", + "type": "integer" + }, + "crashConsistentFrequencyInMinutes": { + "format": "int32", + "description": "The crash consistent snapshot frequency (in minutes).", + "type": "integer" + }, + "appConsistentFrequencyInMinutes": { + "format": "int32", + "description": "The app consistent snapshot frequency (in minutes).", + "type": "integer" + }, + "multiVmSyncStatus": { + "description": "A value indicating whether multi-VM sync has to be enabled. Value should be 'Enabled' or 'Disabled'.", + "enum": [ + "Enable", + "Disable" + ], + "type": "string", + "x-ms-enum": { + "name": "SetMultiVmSyncStatus", + "modelAsString": true + } + } + }, + "x-ms-discriminator-value": "InMageAzureV2" + }, + "InMageAzureV2ProtectedDiskDetails": { + "description": "InMageAzureV2 protected disk details.", + "type": "object", + "properties": { + "diskId": { + "description": "The disk id.", + "type": "string" + }, + "diskName": { + "description": "The disk name.", + "type": "string" + }, + "protectionStage": { + "description": "The protection stage.", + "type": "string" + }, + "healthErrorCode": { + "description": "The health error code for the disk.", + "type": "string" + }, + "rpoInSeconds": { + "format": "int64", + "description": "The RPO in seconds.", + "type": "integer" + }, + "resyncRequired": { + "description": "A value indicating whether resync is required for this disk.", + "type": "string" + }, + "resyncProgressPercentage": { + "format": "int32", + "description": "The resync progress percentage.", + "type": "integer" + }, + "resyncDurationInSeconds": { + "format": "int64", + "description": "The resync duration in seconds.", + "type": "integer" + }, + "diskCapacityInBytes": { + "format": "int64", + "description": "The disk capacity in bytes.", + "type": "integer" + }, + "fileSystemCapacityInBytes": { + "format": "int64", + "description": "The disk file system capacity in bytes.", + "type": "integer" + }, + "sourceDataInMegaBytes": { + "format": "double", + "description": "The source data transit in MB.", + "type": "number" + }, + "psDataInMegaBytes": { + "format": "double", + "description": "The PS data transit in MB.", + "type": "number" + }, + "targetDataInMegaBytes": { + "format": "double", + "description": "The target data transit in MB.", + "type": "number" + }, + "diskResized": { + "description": "A value indicating whether disk is resized.", + "type": "string" + }, + "lastRpoCalculatedTime": { + "format": "date-time", + "description": "The last RPO calculated time.", + "type": "string" + } + } + }, + "InMageAzureV2RecoveryPointDetails": { + "description": "InMage Azure V2 provider specific recovery point details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProviderSpecificRecoveryPointDetails" + } + ], + "properties": { + "isMultiVmSyncPoint": { + "description": "A value indicating whether the recovery point is multi VM consistent.", + "type": "string" + } + }, + "x-ms-discriminator-value": "InMageAzureV2" + }, + "InMageAzureV2ReplicationDetails": { + "description": "InMageAzureV2 provider specific settings", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ReplicationProviderSpecificSettings" + } + ], + "properties": { + "infrastructureVmId": { + "description": "The infrastructure VM Id.", + "type": "string" + }, + "vCenterInfrastructureId": { + "description": "The vCenter infrastructure Id.", + "type": "string" + }, + "protectionStage": { + "description": "The protection stage.", + "type": "string" + }, + "vmId": { + "description": "The virtual machine Id.", + "type": "string" + }, + "vmProtectionState": { + "description": "The protection state for the vm.", + "type": "string" + }, + "vmProtectionStateDescription": { + "description": "The protection state description for the vm.", + "type": "string" + }, + "resyncProgressPercentage": { + "format": "int32", + "description": "The resync progress percentage.", + "type": "integer" + }, + "rpoInSeconds": { + "format": "int64", + "description": "The RPO in seconds.", + "type": "integer" + }, + "compressedDataRateInMB": { + "format": "double", + "description": "The compressed data change rate in MB.", + "type": "number" + }, + "uncompressedDataRateInMB": { + "format": "double", + "description": "The uncompressed data change rate in MB.", + "type": "number" + }, + "ipAddress": { + "description": "The source IP address.", + "type": "string" + }, + "agentVersion": { + "description": "The agent version.", + "type": "string" + }, + "agentExpiryDate": { + "format": "date-time", + "description": "Agent expiry date.", + "type": "string" + }, + "isAgentUpdateRequired": { + "description": "A value indicating whether installed agent needs to be updated.", + "type": "string" + }, + "isRebootAfterUpdateRequired": { + "description": "A value indicating whether the source server requires a restart after update.", + "type": "string" + }, + "lastHeartbeat": { + "format": "date-time", + "description": "The last heartbeat received from the source server.", + "type": "string" + }, + "processServerId": { + "description": "The process server Id.", + "type": "string" + }, + "processServerName": { + "description": "The process server name.", + "type": "string", + "readOnly": true + }, + "multiVmGroupId": { + "description": "The multi vm group Id.", + "type": "string" + }, + "multiVmGroupName": { + "description": "The multi vm group name.", + "type": "string" + }, + "multiVmSyncStatus": { + "description": "A value indicating whether multi vm sync is enabled or disabled.", + "type": "string" + }, + "protectedDisks": { + "description": "The list of protected disks.", + "type": "array", + "items": { + "$ref": "#/definitions/InMageAzureV2ProtectedDiskDetails" + } + }, + "diskResized": { + "description": "A value indicating whether any disk is resized for this VM.", + "type": "string" + }, + "masterTargetId": { + "description": "The master target Id.", + "type": "string" + }, + "sourceVmCpuCount": { + "format": "int32", + "description": "The CPU count of the VM on the primary side.", + "type": "integer" + }, + "sourceVmRamSizeInMB": { + "format": "int32", + "description": "The RAM size of the VM on the primary side.", + "type": "integer" + }, + "osType": { + "description": "The type of the OS on the VM.", + "type": "string" + }, + "vhdName": { + "description": "The OS disk VHD name.", + "type": "string" + }, + "osDiskId": { + "description": "The id of the disk containing the OS.", + "type": "string" + }, + "azureVMDiskDetails": { + "description": "Azure VM Disk details.", + "type": "array", + "items": { + "$ref": "#/definitions/AzureVmDiskDetails" + } + }, + "recoveryAzureVMName": { + "description": "Recovery Azure given name.", + "type": "string" + }, + "recoveryAzureVMSize": { + "description": "The Recovery Azure VM size.", + "type": "string" + }, + "recoveryAzureStorageAccount": { + "description": "The recovery Azure storage account.", + "type": "string" + }, + "recoveryAzureLogStorageAccountId": { + "description": "The ARM id of the log storage account used for replication. This will be set to null if no log storage account was provided during enable protection.", + "type": "string" + }, + "vmNics": { + "description": "The PE Network details.", + "type": "array", + "items": { + "$ref": "#/definitions/VMNicDetails" + } + }, + "selectedRecoveryAzureNetworkId": { + "description": "The selected recovery azure network Id.", + "type": "string" + }, + "selectedTfoAzureNetworkId": { + "description": "The test failover virtual network.", + "type": "string" + }, + "selectedSourceNicId": { + "description": "The selected source nic Id which will be used as the primary nic during failover.", + "type": "string" + }, + "discoveryType": { + "description": "A value indicating the discovery type of the machine. Value can be vCenter or physical.", + "type": "string" + }, + "enableRdpOnTargetOption": { + "description": "The selected option to enable RDP\\SSH on target vm after failover. String value of {SrsDataContract.EnableRDPOnTargetOption} enum.", + "type": "string" + }, + "datastores": { + "description": "The data stores of the on-premise machine. Value can be list of strings that contain data store names.", + "type": "array", + "items": { + "type": "string" + } + }, + "targetVmId": { + "description": "The ARM Id of the target Azure VM. This value will be null until the VM is failed over. Only after failure it will be populated with the ARM Id of the Azure VM.", + "type": "string" + }, + "recoveryAzureResourceGroupId": { + "description": "The target resource group Id.", + "type": "string" + }, + "recoveryAvailabilitySetId": { + "description": "The recovery availability set Id.", + "type": "string" + }, + "targetAvailabilityZone": { + "description": "The target availability zone.", + "type": "string" + }, + "targetProximityPlacementGroupId": { + "description": "The target proximity placement group Id.", + "type": "string" + }, + "useManagedDisks": { + "description": "A value indicating whether managed disks should be used during failover.", + "type": "string" + }, + "licenseType": { + "description": "License Type of the VM to be used.", + "type": "string" + }, + "validationErrors": { + "description": "The validation errors of the on-premise machine Value can be list of validation errors.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthError" + } + }, + "lastRpoCalculatedTime": { + "format": "date-time", + "description": "The last RPO calculated time.", + "type": "string" + }, + "lastUpdateReceivedTime": { + "format": "date-time", + "description": "The last update time received from on-prem components.", + "type": "string" + }, + "replicaId": { + "description": "The replica id of the protected item.", + "type": "string" + }, + "osVersion": { + "description": "The OS Version of the protected item.", + "type": "string" + }, + "protectedManagedDisks": { + "description": "The list of protected managed disks.", + "type": "array", + "items": { + "$ref": "#/definitions/InMageAzureV2ManagedDiskDetails" + } + } + }, + "x-ms-discriminator-value": "InMageAzureV2" + }, + "InMageAzureV2ReprotectInput": { + "description": "InMageAzureV2 specific provider input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ReverseReplicationProviderSpecificInput" + } + ], + "properties": { + "masterTargetId": { + "description": "The Master target Id.", + "type": "string" + }, + "processServerId": { + "description": "The Process Server Id.", + "type": "string" + }, + "storageAccountId": { + "description": "The storage account id.", + "type": "string" + }, + "runAsAccountId": { + "description": "The CS account Id.", + "type": "string" + }, + "policyId": { + "description": "The Policy Id.", + "type": "string" + }, + "logStorageAccountId": { + "description": "The storage account to be used for logging during replication.", + "type": "string" + }, + "disksToInclude": { + "description": "The disks to include list.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "x-ms-discriminator-value": "InMageAzureV2" + }, + "InMageAzureV2TestFailoverInput": { + "description": "InMageAzureV2 provider specific input for test failover.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TestFailoverProviderSpecificInput" + } + ], + "properties": { + "vaultLocation": { + "description": "Location of the vault.", + "type": "string" + }, + "recoveryPointId": { + "description": "The recovery point id to be passed to test failover to a particular recovery point. In case of latest recovery point, null should be passed.", + "type": "string" + } + }, + "x-ms-discriminator-value": "InMageAzureV2" + }, + "InMageAzureV2UnplannedFailoverInput": { + "description": "InMageAzureV2 provider specific input for unplanned failover.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/UnplannedFailoverProviderSpecificInput" + } + ], + "properties": { + "vaultLocation": { + "description": "Location of the vault.", + "type": "string" + }, + "recoveryPointId": { + "description": "The recovery point id to be passed to failover to a particular recovery point. In case of latest recovery point, null should be passed.", + "type": "string" + } + }, + "x-ms-discriminator-value": "InMageAzureV2" + }, + "InMageAzureV2UpdateReplicationProtectedItemInput": { + "description": "InMage Azure V2 input to update replication protected item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/UpdateReplicationProtectedItemProviderInput" + } + ], + "properties": { + "recoveryAzureV1ResourceGroupId": { + "description": "The recovery Azure resource group Id for classic deployment.", + "type": "string" + }, + "recoveryAzureV2ResourceGroupId": { + "description": "The recovery Azure resource group Id for resource manager deployment.", + "type": "string" + }, + "useManagedDisks": { + "description": "A value indicating whether managed disks should be used during failover.", + "type": "string" + }, + "targetProximityPlacementGroupId": { + "description": "The target proximity placement group Id.", + "type": "string" + }, + "targetAvailabilityZone": { + "description": "The target availability zone.", + "type": "string" + } + }, + "x-ms-discriminator-value": "InMageAzureV2" + }, + "InMageBasePolicyDetails": { + "description": "Base class for the policies of providers using InMage replication.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/PolicyProviderSpecificDetails" + } + ], + "properties": { + "recoveryPointThresholdInMinutes": { + "format": "int32", + "description": "The recovery point threshold in minutes.", + "type": "integer" + }, + "recoveryPointHistory": { + "format": "int32", + "description": "The duration in minutes until which the recovery points need to be stored.", + "type": "integer" + }, + "appConsistentFrequencyInMinutes": { + "format": "int32", + "description": "The app consistent snapshot frequency in minutes.", + "type": "integer" + }, + "multiVmSyncStatus": { + "description": "A value indicating whether multi-VM sync has to be enabled.", + "type": "string" + } + }, + "x-ms-discriminator-value": "InMageBasePolicyDetails" + }, + "InMageDisableProtectionProviderSpecificInput": { + "description": "InMage disable protection provider specific input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DisableProtectionProviderSpecificInput" + } + ], + "properties": { + "replicaVmDeletionStatus": { + "description": "A value indicating whether the replica VM should be destroyed or retained. Values from Delete and Retain.", + "type": "string" + } + }, + "x-ms-discriminator-value": "InMage" + }, + "InMageDiskDetails": { + "description": "VMware/Physical specific Disk Details", + "type": "object", + "properties": { + "diskId": { + "description": "The disk Id.", + "type": "string" + }, + "diskName": { + "description": "The disk name.", + "type": "string" + }, + "diskSizeInMB": { + "description": "The disk size in MB.", + "type": "string" + }, + "diskType": { + "description": "Whether disk is system disk or data disk.", + "type": "string" + }, + "diskConfiguration": { + "description": "Whether disk is dynamic disk or basic disk.", + "type": "string" + }, + "volumeList": { + "description": "Volumes of the disk.", + "type": "array", + "items": { + "$ref": "#/definitions/DiskVolumeDetails" + } + } + } + }, + "InMageDiskExclusionInput": { + "description": "DiskExclusionInput when doing enable protection of virtual machine in InMage provider.", + "type": "object", + "properties": { + "volumeOptions": { + "description": "The volume label based option for disk exclusion.", + "type": "array", + "items": { + "$ref": "#/definitions/InMageVolumeExclusionOptions" + } + }, + "diskSignatureOptions": { + "description": "The guest disk signature based option for disk exclusion.", + "type": "array", + "items": { + "$ref": "#/definitions/InMageDiskSignatureExclusionOptions" + } + } + } + }, + "InMageDiskSignatureExclusionOptions": { + "description": "Guest disk signature based disk exclusion option when doing enable protection of virtual machine in InMage provider.", + "type": "object", + "properties": { + "diskSignature": { + "description": "The guest signature of disk to be excluded from replication.", + "type": "string" + } + } + }, + "InMageEnableProtectionInput": { + "description": "VMware Azure specific enable protection input.", + "required": [ + "masterTargetId", + "processServerId", + "retentionDrive", + "multiVmGroupId", + "multiVmGroupName" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/EnableProtectionProviderSpecificInput" + } + ], + "properties": { + "vmFriendlyName": { + "description": "The Vm Name.", + "type": "string" + }, + "masterTargetId": { + "description": "The Master Target Id.", + "type": "string" + }, + "processServerId": { + "description": "The Process Server Id.", + "type": "string" + }, + "retentionDrive": { + "description": "The retention drive to use on the MT.", + "type": "string" + }, + "runAsAccountId": { + "description": "The CS account Id.", + "type": "string" + }, + "multiVmGroupId": { + "description": "The multi vm group Id.", + "type": "string" + }, + "multiVmGroupName": { + "description": "The multi vm group name.", + "type": "string" + }, + "datastoreName": { + "description": "The target data store name.", + "type": "string" + }, + "diskExclusionInput": { + "$ref": "#/definitions/InMageDiskExclusionInput", + "description": "The enable disk exclusion input." + }, + "disksToInclude": { + "description": "The disks to include list.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "x-ms-discriminator-value": "InMage" + }, + "InMageFailoverProviderInput": { + "description": "Provider specific input for InMage failover.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProviderSpecificFailoverInput" + } + ], + "properties": { + "recoveryPointType": { + "description": "The recovery point type. Values from LatestTime, LatestTag or Custom. In the case of custom, the recovery point provided by RecoveryPointId will be used. In the other two cases, recovery point id will be ignored.", + "enum": [ + "LatestTime", + "LatestTag", + "Custom" + ], + "type": "string", + "x-ms-enum": { + "name": "RecoveryPointType", + "modelAsString": true + } + }, + "recoveryPointId": { + "description": "The recovery point id to be passed to failover to a particular recovery point. In case of latest recovery point, null should be passed.", + "type": "string" + } + }, + "x-ms-discriminator-value": "InMage" + }, + "InMagePolicyDetails": { + "description": "InMage specific protection profile details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/PolicyProviderSpecificDetails" + } + ], + "properties": { + "recoveryPointThresholdInMinutes": { + "format": "int32", + "description": "The recovery point threshold in minutes.", + "type": "integer" + }, + "recoveryPointHistory": { + "format": "int32", + "description": "The duration in minutes until which the recovery points need to be stored.", + "type": "integer" + }, + "appConsistentFrequencyInMinutes": { + "format": "int32", + "description": "The app consistent snapshot frequency in minutes.", + "type": "integer" + }, + "multiVmSyncStatus": { + "description": "A value indicating whether multi-VM sync has to be enabled.", + "type": "string" + } + }, + "x-ms-discriminator-value": "InMage" + }, + "InMagePolicyInput": { + "description": "VMWare Azure specific protection profile Input.", + "required": [ + "multiVmSyncStatus" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/PolicyProviderSpecificInput" + } + ], + "properties": { + "recoveryPointThresholdInMinutes": { + "format": "int32", + "description": "The recovery point threshold in minutes.", + "type": "integer" + }, + "recoveryPointHistory": { + "format": "int32", + "description": "The duration in minutes until which the recovery points need to be stored.", + "type": "integer" + }, + "appConsistentFrequencyInMinutes": { + "format": "int32", + "description": "The app consistent snapshot frequency (in minutes).", + "type": "integer" + }, + "multiVmSyncStatus": { + "description": "A value indicating whether multi-VM sync has to be enabled. Value should be 'Enabled' or 'Disabled'.", + "enum": [ + "Enable", + "Disable" + ], + "type": "string", + "x-ms-enum": { + "name": "SetMultiVmSyncStatus", + "modelAsString": true + } + } + }, + "x-ms-discriminator-value": "InMage" + }, + "InMageProtectedDiskDetails": { + "description": "InMage protected disk details.", + "type": "object", + "properties": { + "diskId": { + "description": "The disk id.", + "type": "string" + }, + "diskName": { + "description": "The disk name.", + "type": "string" + }, + "protectionStage": { + "description": "The protection stage.", + "type": "string" + }, + "healthErrorCode": { + "description": "The health error code for the disk.", + "type": "string" + }, + "rpoInSeconds": { + "format": "int64", + "description": "The RPO in seconds.", + "type": "integer" + }, + "resyncRequired": { + "description": "A value indicating whether resync is required for this disk.", + "type": "string" + }, + "resyncProgressPercentage": { + "format": "int32", + "description": "The resync progress percentage.", + "type": "integer" + }, + "resyncDurationInSeconds": { + "format": "int64", + "description": "The resync duration in seconds.", + "type": "integer" + }, + "diskCapacityInBytes": { + "format": "int64", + "description": "The disk capacity in bytes.", + "type": "integer" + }, + "fileSystemCapacityInBytes": { + "format": "int64", + "description": "The file system capacity in bytes.", + "type": "integer" + }, + "sourceDataInMB": { + "format": "double", + "description": "The source data transit in MB.", + "type": "number" + }, + "psDataInMB": { + "format": "double", + "description": "The PS data transit in MB.", + "type": "number" + }, + "targetDataInMB": { + "format": "double", + "description": "The target data transit in MB.", + "type": "number" + }, + "diskResized": { + "description": "A value indicating whether disk is resized.", + "type": "string" + }, + "lastRpoCalculatedTime": { + "format": "date-time", + "description": "The last RPO calculated time.", + "type": "string" + } + } + }, + "InMageRcmAgentUpgradeBlockingErrorDetails": { + "description": "InMageRcm source agent upgrade blocking error details.", + "type": "object", + "properties": { + "errorCode": { + "description": "The error code.", + "type": "string", + "readOnly": true + }, + "errorMessage": { + "description": "The error message.", + "type": "string", + "readOnly": true + }, + "possibleCauses": { + "description": "The possible causes.", + "type": "string", + "readOnly": true + }, + "recommendedAction": { + "description": "The recommended action.", + "type": "string", + "readOnly": true + }, + "errorMessageParameters": { + "description": "The error message parameters.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "readOnly": true + }, + "errorTags": { + "description": "The error tags.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "readOnly": true + } + } + }, + "InMageRcmApplyRecoveryPointInput": { + "description": "ApplyRecoveryPoint input specific to InMageRcm provider.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ApplyRecoveryPointProviderSpecificInput" + } + ], + "properties": { + "recoveryPointId": { + "description": "The recovery point Id.", + "type": "string" + } + }, + "x-ms-discriminator-value": "InMageRcm" + }, + "InMageRcmDiskInput": { + "description": "InMageRcm disk input.", + "type": "object", + "properties": { + "diskId": { + "description": "The disk Id.", + "type": "string" + }, + "logStorageAccountId": { + "description": "The log storage account ARM Id.", + "type": "string" + }, + "diskType": { + "description": "The disk type.", + "enum": [ + "Standard_LRS", + "Premium_LRS", + "StandardSSD_LRS" + ], + "type": "string", + "x-ms-enum": { + "name": "DiskAccountType", + "modelAsString": true + } + }, + "diskEncryptionSetId": { + "description": "The disk encryption set ARM Id.", + "type": "string" + } + } + }, + "InMageRcmDisksDefaultInput": { + "description": "InMageRcm disk input.", + "type": "object", + "properties": { + "logStorageAccountId": { + "description": "The log storage account ARM Id.", + "type": "string" + }, + "diskType": { + "description": "The disk type.", + "enum": [ + "Standard_LRS", + "Premium_LRS", + "StandardSSD_LRS" + ], + "type": "string", + "x-ms-enum": { + "name": "DiskAccountType", + "modelAsString": true + } + }, + "diskEncryptionSetId": { + "description": "The disk encryption set ARM Id.", + "type": "string" + } + } + }, + "InMageRcmEnableProtectionInput": { + "description": "InMageRcm specific enable protection input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/EnableProtectionProviderSpecificInput" + } + ], + "properties": { + "fabricDiscoveryMachineId": { + "description": "The ARM Id of discovered machine.", + "type": "string" + }, + "disksToInclude": { + "description": "The disks to include list.", + "minLength": 1, + "type": "array", + "items": { + "$ref": "#/definitions/InMageRcmDiskInput" + } + }, + "disksDefault": { + "$ref": "#/definitions/InMageRcmDisksDefaultInput", + "description": "The default disk input." + }, + "targetResourceGroupId": { + "description": "The target resource group ARM Id.", + "type": "string" + }, + "targetNetworkId": { + "description": "The selected target network ARM Id.", + "type": "string" + }, + "testNetworkId": { + "description": "The selected test network ARM Id.", + "type": "string" + }, + "targetSubnetName": { + "description": "The selected target subnet name.", + "type": "string" + }, + "testSubnetName": { + "description": "The selected test subnet name.", + "type": "string" + }, + "targetVmName": { + "description": "The target VM name.", + "type": "string" + }, + "targetVmSize": { + "description": "The target VM size.", + "type": "string" + }, + "licenseType": { + "description": "The license type.", + "enum": [ + "NotSpecified", + "NoLicenseType", + "WindowsServer" + ], + "type": "string", + "x-ms-enum": { + "name": "LicenseType", + "modelAsString": true + } + }, + "targetAvailabilitySetId": { + "description": "The target availability set ARM Id.", + "type": "string" + }, + "targetAvailabilityZone": { + "description": "The target availability zone.", + "type": "string" + }, + "targetProximityPlacementGroupId": { + "description": "The target proximity placement group Id.", + "type": "string" + }, + "targetBootDiagnosticsStorageAccountId": { + "description": "The target boot diagnostics storage account ARM Id.", + "type": "string" + }, + "runAsAccountId": { + "description": "The run-as account Id.", + "type": "string" + }, + "processServerId": { + "description": "The process server Id.", + "type": "string" + }, + "multiVmGroupName": { + "description": "The multi VM group name.", + "type": "string" + } + }, + "x-ms-discriminator-value": "InMageRcm" + }, + "InMageRcmEventDetails": { + "description": "Event details for InMageRcm provider.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/EventProviderSpecificDetails" + } + ], + "properties": { + "protectedItemName": { + "description": "The protected item name.", + "type": "string", + "readOnly": true + } + }, + "x-ms-discriminator-value": "InMageRcm" + }, + "InMageRcmFabricCreationInput": { + "description": "InMageRcm fabric provider specific settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/FabricSpecificCreationInput" + } + ], + "properties": { + "vmwareSiteId": { + "description": "The ARM Id of the VMware site.", + "type": "string" + }, + "physicalSiteId": { + "description": "The ARM Id of the physical site.", + "type": "string" + }, + "sourceAgentIdentity": { + "$ref": "#/definitions/IdentityProviderInput", + "description": "The identity provider input for source agent authentication." + }, + "authCertificate": { + "description": "The certificate to be used for AAD authentication.", + "type": "string" + } + }, + "x-ms-discriminator-value": "InMageRcm" + }, + "InMageRcmFabricSpecificDetails": { + "description": "InMageRcm fabric specific details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/FabricSpecificDetails" + } + ], + "properties": { + "vmwareSiteId": { + "description": "The ARM Id of the VMware site.", + "type": "string", + "readOnly": true + }, + "physicalSiteId": { + "description": "The ARM Id of the physical site.", + "type": "string", + "readOnly": true + }, + "serviceEndpoint": { + "description": "The service endpoint.", + "type": "string", + "readOnly": true + }, + "serviceResourceId": { + "description": "The service resource Id.", + "type": "string", + "readOnly": true + }, + "serviceContainerId": { + "description": "The service container Id.", + "type": "string", + "readOnly": true + }, + "dataPlaneUri": { + "description": "The data plane Uri.", + "type": "string", + "readOnly": true + }, + "controlPlaneUri": { + "description": "The control plane Uri.", + "type": "string", + "readOnly": true + }, + "processServers": { + "description": "The list of process servers.", + "type": "array", + "items": { + "$ref": "#/definitions/ProcessServerDetails" + }, + "readOnly": true + }, + "rcmProxies": { + "description": "The list of RCM proxies.", + "type": "array", + "items": { + "$ref": "#/definitions/RcmProxyDetails" + }, + "readOnly": true + }, + "pushInstallers": { + "description": "The list of push installers.", + "type": "array", + "items": { + "$ref": "#/definitions/PushInstallerDetails" + }, + "readOnly": true + }, + "replicationAgents": { + "description": "The list of replication agents.", + "type": "array", + "items": { + "$ref": "#/definitions/ReplicationAgentDetails" + }, + "readOnly": true + }, + "reprotectAgents": { + "description": "The list of reprotect agents.", + "type": "array", + "items": { + "$ref": "#/definitions/ReprotectAgentDetails" + }, + "readOnly": true + }, + "dras": { + "description": "The list of DRAs.", + "type": "array", + "items": { + "$ref": "#/definitions/DraDetails" + }, + "readOnly": true + }, + "agentDetails": { + "description": "The list of agent details.", + "type": "array", + "items": { + "$ref": "#/definitions/AgentDetails" + }, + "readOnly": true + } + }, + "x-ms-discriminator-value": "InMageRcm" + }, + "InMageRcmLastAgentUpgradeErrorDetails": { + "description": "InMageRcm last source agent upgrade error details.", + "type": "object", + "properties": { + "errorCode": { + "description": "The error code.", + "type": "string", + "readOnly": true + }, + "errorMessage": { + "description": "The error message.", + "type": "string", + "readOnly": true + }, + "possibleCauses": { + "description": "The possible causes.", + "type": "string", + "readOnly": true + }, + "recommendedAction": { + "description": "The recommended action.", + "type": "string", + "readOnly": true + }, + "errorMessageParameters": { + "description": "The error message parameters.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "readOnly": true + }, + "errorTags": { + "description": "The error tags.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "readOnly": true + } + } + }, + "InMageRcmMobilityAgentDetails": { + "description": "InMageRcm mobility agent details.", + "type": "object", + "properties": { + "version": { + "description": "The agent version.", + "type": "string", + "readOnly": true + }, + "latestVersion": { + "description": "The latest agent version available.", + "type": "string", + "readOnly": true + }, + "driverVersion": { + "description": "The driver version.", + "type": "string", + "readOnly": true + }, + "latestUpgradableVersionWithoutReboot": { + "description": "The latest upgradeable version available without reboot.", + "type": "string", + "readOnly": true + }, + "agentVersionExpiryDate": { + "format": "date-time", + "description": "The agent version expiry date.", + "type": "string", + "readOnly": true + }, + "driverVersionExpiryDate": { + "format": "date-time", + "description": "The driver version expiry date.", + "type": "string", + "readOnly": true + }, + "lastHeartbeatUtc": { + "format": "date-time", + "description": "The time of the last heartbeat received from the agent.", + "type": "string", + "readOnly": true + }, + "reasonsBlockingUpgrade": { + "description": "The whether update is possible or not.", + "type": "array", + "items": { + "enum": [ + "AlreadyOnLatestVersion", + "RebootRequired", + "AgentNoHeartbeat", + "RcmProxyNoHeartbeat", + "ProcessServerNoHeartbeat", + "IncompatibleApplianceVersion", + "NotProtected", + "UnsupportedProtectionScenario", + "DistroIsNotReported", + "DistroNotSupportedForUpgrade", + "MissingUpgradePath", + "InvalidAgentVersion", + "InvalidDriverVersion", + "Unknown" + ], + "type": "string", + "x-ms-enum": { + "name": "AgentUpgradeBlockedReason", + "modelAsString": true + } + }, + "readOnly": true + }, + "isUpgradeable": { + "description": "A value indicating whether agent is upgradeable or not.", + "type": "string", + "readOnly": true + } + } + }, + "InMageRcmNicDetails": { + "description": "InMageRcm NIC details.", + "type": "object", + "properties": { + "nicId": { + "description": "The NIC Id.", + "type": "string", + "readOnly": true + }, + "isPrimaryNic": { + "description": "A value indicating whether this is the primary NIC.", + "type": "string", + "readOnly": true + }, + "isSelectedForFailover": { + "description": "A value indicating whether this NIC is selected for failover.", + "type": "string", + "readOnly": true + }, + "sourceIPAddress": { + "description": "The source IP address.", + "type": "string", + "readOnly": true + }, + "sourceIPAddressType": { + "description": "The source IP address type.", + "enum": [ + "Dynamic", + "Static" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "EthernetAddressType", + "modelAsString": true + } + }, + "sourceNetworkId": { + "description": "Source network Id.", + "type": "string", + "readOnly": true + }, + "sourceSubnetName": { + "description": "Source subnet name.", + "type": "string", + "readOnly": true + }, + "targetIPAddress": { + "description": "The target IP address.", + "type": "string", + "readOnly": true + }, + "targetIPAddressType": { + "description": "The target IP address type.", + "enum": [ + "Dynamic", + "Static" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "EthernetAddressType", + "modelAsString": true + } + }, + "targetSubnetName": { + "description": "Target subnet name.", + "type": "string", + "readOnly": true + }, + "testSubnetName": { + "description": "Test subnet name.", + "type": "string", + "readOnly": true + }, + "testIPAddress": { + "description": "The test IP address.", + "type": "string", + "readOnly": true + }, + "testIPAddressType": { + "description": "The test IP address type.", + "enum": [ + "Dynamic", + "Static" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "EthernetAddressType", + "modelAsString": true + } + } + } + }, + "InMageRcmNicInput": { + "description": "InMageRcm NIC input.", + "type": "object", + "properties": { + "nicId": { + "description": "The NIC Id.", + "type": "string" + }, + "isPrimaryNic": { + "description": "A value indicating whether this is the primary NIC.", + "type": "string" + }, + "isSelectedForFailover": { + "description": "A value indicating whether this NIC is selected for failover.", + "type": "string" + }, + "targetSubnetName": { + "description": "Target subnet name.", + "type": "string" + }, + "targetStaticIPAddress": { + "description": "The target static IP address.", + "type": "string" + }, + "testSubnetName": { + "description": "The test subnet name.", + "type": "string" + }, + "testStaticIPAddress": { + "description": "The test static IP address.", + "type": "string" + } + } + }, + "InMageRcmPolicyCreationInput": { + "description": "InMageRcm policy creation input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/PolicyProviderSpecificInput" + } + ], + "properties": { + "recoveryPointHistoryInMinutes": { + "format": "int32", + "description": "The duration in minutes until which the recovery points need to be stored.", + "type": "integer" + }, + "crashConsistentFrequencyInMinutes": { + "format": "int32", + "description": "The crash consistent snapshot frequency (in minutes).", + "type": "integer" + }, + "appConsistentFrequencyInMinutes": { + "format": "int32", + "description": "The app consistent snapshot frequency (in minutes).", + "type": "integer" + }, + "enableMultiVmSync": { + "description": "A value indicating whether multi-VM sync has to be enabled.", + "type": "string" + } + }, + "x-ms-discriminator-value": "InMageRcm" + }, + "InMageRcmPolicyDetails": { + "description": "InMageRcm specific policy details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/PolicyProviderSpecificDetails" + } + ], + "properties": { + "recoveryPointHistoryInMinutes": { + "format": "int32", + "description": "The duration in minutes until which the recovery points need to be stored.", + "type": "integer", + "readOnly": true + }, + "appConsistentFrequencyInMinutes": { + "format": "int32", + "description": "The app consistent snapshot frequency in minutes.", + "type": "integer", + "readOnly": true + }, + "crashConsistentFrequencyInMinutes": { + "format": "int32", + "description": "The crash consistent snapshot frequency in minutes.", + "type": "integer", + "readOnly": true + }, + "enableMultiVmSync": { + "description": "A value indicating whether multi-VM sync has to be enabled.", + "type": "string", + "readOnly": true + } + }, + "x-ms-discriminator-value": "InMageRcm" + }, + "InMageRcmProtectedDiskDetails": { + "description": "InMageRcm protected disk details.", + "type": "object", + "properties": { + "diskId": { + "description": "The disk Id.", + "type": "string", + "readOnly": true + }, + "diskName": { + "description": "The disk name.", + "type": "string", + "readOnly": true + }, + "isOSDisk": { + "description": "A value indicating whether the disk is the OS disk.", + "type": "string", + "readOnly": true + }, + "capacityInBytes": { + "format": "int64", + "description": "The disk capacity in bytes.", + "type": "integer", + "readOnly": true + }, + "logStorageAccountId": { + "description": "The log storage account ARM Id.", + "type": "string", + "readOnly": true + }, + "diskEncryptionSetId": { + "description": "The disk encryption set ARM Id.", + "type": "string", + "readOnly": true + }, + "seedManagedDiskId": { + "description": "The ARM Id of the seed managed disk.", + "type": "string", + "readOnly": true + }, + "targetManagedDiskId": { + "description": "The ARM Id of the target managed disk.", + "type": "string", + "readOnly": true + }, + "diskType": { + "description": "The disk type.", + "enum": [ + "Standard_LRS", + "Premium_LRS", + "StandardSSD_LRS" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "DiskAccountType", + "modelAsString": true + } + } + } + }, + "InMageRcmRecoveryPointDetails": { + "description": "InMageRcm provider specific recovery point details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProviderSpecificRecoveryPointDetails" + } + ], + "properties": { + "isMultiVmSyncPoint": { + "description": "A value indicating whether the recovery point is multi VM consistent.", + "type": "string", + "readOnly": true + } + }, + "x-ms-discriminator-value": "InMageRcm" + }, + "InMageRcmReplicationDetails": { + "description": "InMageRcm provider specific details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ReplicationProviderSpecificSettings" + } + ], + "properties": { + "internalIdentifier": { + "description": "The virtual machine internal identifier.", + "type": "string", + "readOnly": true + }, + "fabricDiscoveryMachineId": { + "description": "The ARM Id of the discovered VM.", + "type": "string", + "readOnly": true + }, + "multiVmGroupName": { + "description": "The multi VM group name.", + "type": "string", + "readOnly": true + }, + "discoveryType": { + "description": "The type of the discovered VM.", + "type": "string", + "readOnly": true + }, + "processServerId": { + "description": "The process server Id.", + "type": "string", + "readOnly": true + }, + "processorCoreCount": { + "format": "int32", + "description": "The processor core count.", + "type": "integer", + "readOnly": true + }, + "allocatedMemoryInMB": { + "format": "double", + "description": "The allocated memory in MB.", + "type": "number", + "readOnly": true + }, + "processServerName": { + "description": "The process server name.", + "type": "string", + "readOnly": true + }, + "runAsAccountId": { + "description": "The run-as account Id.", + "type": "string", + "readOnly": true + }, + "osType": { + "description": "The type of the OS on the VM.", + "type": "string", + "readOnly": true + }, + "firmwareType": { + "description": "The firmware type.", + "type": "string", + "readOnly": true + }, + "targetGeneration": { + "description": "The target generation.", + "type": "string", + "readOnly": true + }, + "licenseType": { + "description": "License Type of the VM to be used.", + "type": "string", + "readOnly": true + }, + "targetVmName": { + "description": "Target VM name.", + "type": "string", + "readOnly": true + }, + "targetVmSize": { + "description": "The target VM size.", + "type": "string", + "readOnly": true + }, + "targetResourceGroupId": { + "description": "The target resource group Id.", + "type": "string", + "readOnly": true + }, + "targetAvailabilitySetId": { + "description": "The target availability set Id.", + "type": "string", + "readOnly": true + }, + "targetAvailabilityZone": { + "description": "The target availability zone.", + "type": "string", + "readOnly": true + }, + "targetProximityPlacementGroupId": { + "description": "The target proximity placement group Id.", + "type": "string", + "readOnly": true + }, + "targetBootDiagnosticsStorageAccountId": { + "description": "The target boot diagnostics storage account ARM Id.", + "type": "string", + "readOnly": true + }, + "targetNetworkId": { + "description": "The target network Id.", + "type": "string", + "readOnly": true + }, + "testNetworkId": { + "description": "The test network Id.", + "type": "string", + "readOnly": true + }, + "failoverRecoveryPointId": { + "description": "The recovery point Id to which the VM was failed over.", + "type": "string", + "readOnly": true + }, + "lastRecoveryPointReceived": { + "format": "date-time", + "description": "The last recovery point received time.", + "type": "string", + "readOnly": true + }, + "lastRpoInSeconds": { + "format": "int64", + "description": "The last recovery point objective value.", + "type": "integer", + "readOnly": true + }, + "lastRpoCalculatedTime": { + "format": "date-time", + "description": "The last recovery point objective calculated time.", + "type": "string", + "readOnly": true + }, + "lastRecoveryPointId": { + "description": "The last recovery point Id.", + "type": "string", + "readOnly": true + }, + "initialReplicationProgressPercentage": { + "format": "int32", + "description": "The initial replication progress percentage. This is calculated based on total bytes processed for all disks in the source VM.", + "type": "integer", + "readOnly": true + }, + "initialReplicationProcessedBytes": { + "format": "int64", + "description": "The initial replication processed bytes. This includes sum of total bytes transferred and matched bytes on all selected disks in source VM.", + "type": "integer", + "readOnly": true + }, + "initialReplicationTransferredBytes": { + "format": "int64", + "description": "The initial replication transferred bytes from source VM to azure for all selected disks on source VM.", + "type": "integer", + "readOnly": true + }, + "resyncProgressPercentage": { + "format": "int32", + "description": "The resync progress percentage. This is calculated based on total bytes processed for all disks in the source VM.", + "type": "integer", + "readOnly": true + }, + "resyncProcessedBytes": { + "format": "int64", + "description": "The resync processed bytes. This includes sum of total bytes transferred and matched bytes on all selected disks in source VM.", + "type": "integer", + "readOnly": true + }, + "resyncTransferredBytes": { + "format": "int64", + "description": "The resync transferred bytes from source VM to azure for all selected disks on source VM.", + "type": "integer", + "readOnly": true + }, + "resyncRequired": { + "description": "A value indicating whether resync is required.", + "type": "string", + "readOnly": true + }, + "resyncState": { + "description": "The resync state.", + "enum": [ + "None", + "PreparedForResynchronization", + "StartedResynchronization" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ResyncState", + "modelAsString": true + } + }, + "agentUpgradeState": { + "description": "The agent auto upgrade state.", + "enum": [ + "None", + "Started", + "Completed", + "Commit" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "MobilityAgentUpgradeState", + "modelAsString": true + } + }, + "lastAgentUpgradeType": { + "description": "The last agent upgrade type.", + "type": "string", + "readOnly": true + }, + "lastAgentUpgradeFailedJobId": { + "description": "The last agent upgrade failed or cancelled job Id.", + "type": "string", + "readOnly": true + }, + "protectedDisks": { + "description": "The list of protected disks.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/InMageRcmProtectedDiskDetails" + } + }, + "isLastUpgradeSuccessful": { + "description": "A value indicating whether last agent upgrade was successful or not.", + "type": "string", + "readOnly": true + }, + "mobilityAgentDetails": { + "$ref": "#/definitions/InMageRcmMobilityAgentDetails", + "description": "The mobility agent information.", + "readOnly": true + }, + "lastAgentUpgradeErrorDetails": { + "description": "The last agent upgrade error information.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/InMageRcmLastAgentUpgradeErrorDetails" + } + }, + "agentUpgradeBlockingErrorDetails": { + "description": "The agent upgrade blocking error information.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/InMageRcmAgentUpgradeBlockingErrorDetails" + } + }, + "vmNics": { + "description": "The network details.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/InMageRcmNicDetails" + } + } + }, + "x-ms-discriminator-value": "InMageRcm" + }, + "InMageRcmTestFailoverInput": { + "description": "InMageRcm provider specific input for test failover.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TestFailoverProviderSpecificInput" + } + ], + "properties": { + "networkId": { + "description": "The test network Id.", + "type": "string" + }, + "recoveryPointId": { + "description": "The recovery point id to be passed to test failover to a particular recovery point. In case of latest recovery point, null should be passed.", + "type": "string" + } + }, + "x-ms-discriminator-value": "InMageRcm" + }, + "InMageRcmUnplannedFailoverInput": { + "description": "InMageRcm provider specific input for unplanned failover.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/UnplannedFailoverProviderSpecificInput" + } + ], + "properties": { + "performShutdown": { + "description": "A value indicating whether VM is to be shutdown.", + "type": "string" + }, + "recoveryPointId": { + "description": "The recovery point id to be passed to failover to a particular recovery point. In case of latest recovery point, null should be passed.", + "type": "string" + } + }, + "x-ms-discriminator-value": "InMageRcm" + }, + "InMageRcmUpdateReplicationProtectedItemInput": { + "description": "InMageRcm provider specific input to update replication protected item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/UpdateReplicationProtectedItemProviderInput" + } + ], + "properties": { + "targetVmName": { + "description": "The target VM name.", + "type": "string" + }, + "targetVmSize": { + "description": "The target VM size.", + "type": "string" + }, + "targetResourceGroupId": { + "description": "The target resource group ARM Id.", + "type": "string" + }, + "targetAvailabilitySetId": { + "description": "The target availability set ARM Id.", + "type": "string" + }, + "targetAvailabilityZone": { + "description": "The target availability zone.", + "type": "string" + }, + "targetProximityPlacementGroupId": { + "description": "The target proximity placement group Id.", + "type": "string" + }, + "targetBootDiagnosticsStorageAccountId": { + "description": "The target boot diagnostics storage account ARM Id.", + "type": "string" + }, + "targetNetworkId": { + "description": "The target network ARM Id.", + "type": "string" + }, + "testNetworkId": { + "description": "The test network ARM Id.", + "type": "string" + }, + "vmNics": { + "description": "The list of NIC details.", + "minLength": 1, + "type": "array", + "items": { + "$ref": "#/definitions/InMageRcmNicInput" + } + }, + "licenseType": { + "description": "The license type.", + "enum": [ + "NotSpecified", + "NoLicenseType", + "WindowsServer" + ], + "type": "string", + "x-ms-enum": { + "name": "LicenseType", + "modelAsString": true + } + } + }, + "x-ms-discriminator-value": "InMageRcm" + }, + "InMageReplicationDetails": { + "description": "InMage provider specific settings", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ReplicationProviderSpecificSettings" + } + ], + "properties": { + "activeSiteType": { + "description": "The active location of the VM. If the VM is being protected from Azure, this field will take values from { Azure, OnPrem }. If the VM is being protected between two data-centers, this field will be OnPrem always.", + "type": "string" + }, + "sourceVmCpuCount": { + "format": "int32", + "description": "The CPU count of the VM on the primary side.", + "type": "integer" + }, + "sourceVmRamSizeInMB": { + "format": "int32", + "description": "The RAM size of the VM on the primary side.", + "type": "integer" + }, + "osDetails": { + "$ref": "#/definitions/OSDiskDetails", + "description": "The OS details." + }, + "protectionStage": { + "description": "The protection stage.", + "type": "string" + }, + "vmId": { + "description": "The virtual machine Id.", + "type": "string" + }, + "vmProtectionState": { + "description": "The protection state for the vm.", + "type": "string" + }, + "vmProtectionStateDescription": { + "description": "The protection state description for the vm.", + "type": "string" + }, + "resyncDetails": { + "$ref": "#/definitions/InitialReplicationDetails", + "description": "The resync details of the machine" + }, + "retentionWindowStart": { + "format": "date-time", + "description": "The retention window start time.", + "type": "string" + }, + "retentionWindowEnd": { + "format": "date-time", + "description": "The retention window end time.", + "type": "string" + }, + "compressedDataRateInMB": { + "format": "double", + "description": "The compressed data change rate in MB.", + "type": "number" + }, + "uncompressedDataRateInMB": { + "format": "double", + "description": "The uncompressed data change rate in MB.", + "type": "number" + }, + "rpoInSeconds": { + "format": "int64", + "description": "The RPO in seconds.", + "type": "integer" + }, + "protectedDisks": { + "description": "The list of protected disks.", + "type": "array", + "items": { + "$ref": "#/definitions/InMageProtectedDiskDetails" + } + }, + "ipAddress": { + "description": "The source IP address.", + "type": "string" + }, + "lastHeartbeat": { + "format": "date-time", + "description": "The last heartbeat received from the source server.", + "type": "string" + }, + "processServerId": { + "description": "The process server Id.", + "type": "string" + }, + "masterTargetId": { + "description": "The master target Id.", + "type": "string" + }, + "consistencyPoints": { + "description": "The collection of Consistency points.", + "type": "object", + "additionalProperties": { + "format": "date-time", + "type": "string" + } + }, + "diskResized": { + "description": "A value indicating whether any disk is resized for this VM.", + "type": "string" + }, + "rebootAfterUpdateStatus": { + "description": "A value indicating whether the source server requires a restart after update.", + "type": "string" + }, + "multiVmGroupId": { + "description": "The multi vm group Id, if any.", + "type": "string" + }, + "multiVmGroupName": { + "description": "The multi vm group name, if any.", + "type": "string" + }, + "multiVmSyncStatus": { + "description": "A value indicating whether the multi vm sync is enabled or disabled.", + "type": "string" + }, + "agentDetails": { + "$ref": "#/definitions/InMageAgentDetails", + "description": "The agent details." + }, + "vCenterInfrastructureId": { + "description": "The vCenter infrastructure Id.", + "type": "string" + }, + "infrastructureVmId": { + "description": "The infrastructure VM Id.", + "type": "string" + }, + "vmNics": { + "description": "The PE Network details.", + "type": "array", + "items": { + "$ref": "#/definitions/VMNicDetails" + } + }, + "discoveryType": { + "description": "A value indicating the discovery type of the machine.", + "type": "string" + }, + "azureStorageAccountId": { + "description": "A value indicating the underlying Azure storage account. If the VM is not running in Azure, this value shall be set to null.", + "type": "string" + }, + "datastores": { + "description": "The data stores of the on-premise machine Value can be list of strings that contain data store names", + "type": "array", + "items": { + "type": "string" + } + }, + "validationErrors": { + "description": "The validation errors of the on-premise machine Value can be list of validation errors", + "type": "array", + "items": { + "$ref": "#/definitions/HealthError" + } + }, + "lastRpoCalculatedTime": { + "format": "date-time", + "description": "The last RPO calculated time.", + "type": "string" + }, + "lastUpdateReceivedTime": { + "format": "date-time", + "description": "The last update time received from on-prem components.", + "type": "string" + }, + "replicaId": { + "description": "The replica id of the protected item.", + "type": "string" + }, + "osVersion": { + "description": "The OS Version of the protected item.", + "type": "string" + } + }, + "x-ms-discriminator-value": "InMage" + }, + "InMageReprotectInput": { + "description": "InMageAzureV2 specific provider input.", + "required": [ + "masterTargetId", + "processServerId", + "retentionDrive", + "profileId" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ReverseReplicationProviderSpecificInput" + } + ], + "properties": { + "masterTargetId": { + "description": "The Master Target Id.", + "type": "string" + }, + "processServerId": { + "description": "The Process Server Id.", + "type": "string" + }, + "retentionDrive": { + "description": "The retention drive to use on the MT.", + "type": "string" + }, + "runAsAccountId": { + "description": "The CS account Id.", + "type": "string" + }, + "datastoreName": { + "description": "The target data store name.", + "type": "string" + }, + "diskExclusionInput": { + "$ref": "#/definitions/InMageDiskExclusionInput", + "description": "The enable disk exclusion input." + }, + "profileId": { + "description": "The Policy Id.", + "type": "string" + }, + "disksToInclude": { + "description": "The disks to include list.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "x-ms-discriminator-value": "InMage" + }, + "InMageTestFailoverInput": { + "description": "Provider specific input for InMage test failover.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TestFailoverProviderSpecificInput" + } + ], + "properties": { + "recoveryPointType": { + "description": "The recovery point type. Values from LatestTime, LatestTag or Custom. In the case of custom, the recovery point provided by RecoveryPointId will be used. In the other two cases, recovery point id will be ignored.", + "enum": [ + "LatestTime", + "LatestTag", + "Custom" + ], + "type": "string", + "x-ms-enum": { + "name": "RecoveryPointType", + "modelAsString": true + } + }, + "recoveryPointId": { + "description": "The recovery point id to be passed to test failover to a particular recovery point. In case of latest recovery point, null should be passed.", + "type": "string" + } + }, + "x-ms-discriminator-value": "InMage" + }, + "InMageUnplannedFailoverInput": { + "description": "Provider specific input for InMage unplanned failover.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/UnplannedFailoverProviderSpecificInput" + } + ], + "properties": { + "recoveryPointType": { + "description": "The recovery point type. Values from LatestTime, LatestTag or Custom. In the case of custom, the recovery point provided by RecoveryPointId will be used. In the other two cases, recovery point id will be ignored.", + "enum": [ + "LatestTime", + "LatestTag", + "Custom" + ], + "type": "string", + "x-ms-enum": { + "name": "RecoveryPointType", + "modelAsString": true + } + }, + "recoveryPointId": { + "description": "The recovery point id to be passed to failover to a particular recovery point. In case of latest recovery point, null should be passed.", + "type": "string" + } + }, + "x-ms-discriminator-value": "InMage" + }, + "InMageVolumeExclusionOptions": { + "description": "Guest disk signature based disk exclusion option when doing enable protection of virtual machine in InMage provider.", + "type": "object", + "properties": { + "volumeLabel": { + "description": "The volume label. The disk having any volume with this label will be excluded from replication.", + "type": "string" + }, + "onlyExcludeIfSingleVolume": { + "description": "The value indicating whether to exclude multi volume disk or not. If a disk has multiple volumes and one of the volume has label matching with VolumeLabel this disk will be excluded from replication if OnlyExcludeIfSingleVolume is false.", + "type": "string" + } + } + }, + "InnerHealthError": { + "description": "Implements InnerHealthError class. HealthError object has a list of InnerHealthErrors as child errors. InnerHealthError is used because this will prevent an infinite loop of structures when Hydra tries to auto-generate the contract. We are exposing the related health errors as inner health errors and all API consumers can utilize this in the same fashion as Exception -> InnerException.", + "type": "object", + "properties": { + "errorSource": { + "description": "Source of error.", + "type": "string" + }, + "errorType": { + "description": "Type of error.", + "type": "string" + }, + "errorLevel": { + "description": "Level of error.", + "type": "string" + }, + "errorCategory": { + "description": "Category of error.", + "type": "string" + }, + "errorCode": { + "description": "Error code.", + "type": "string" + }, + "summaryMessage": { + "description": "Summary message of the entity.", + "type": "string" + }, + "errorMessage": { + "description": "Error message.", + "type": "string" + }, + "possibleCauses": { + "description": "Possible causes of error.", + "type": "string" + }, + "recommendedAction": { + "description": "Recommended action to resolve error.", + "type": "string" + }, + "creationTimeUtc": { + "format": "date-time", + "description": "Error creation time (UTC)", + "type": "string" + }, + "recoveryProviderErrorMessage": { + "description": "DRA error message.", + "type": "string" + }, + "entityId": { + "description": "ID of the entity.", + "type": "string" + } + } + }, + "InputEndpoint": { + "description": "Azure VM input endpoint details.", + "type": "object", + "properties": { + "endpointName": { + "description": "The input endpoint name.", + "type": "string" + }, + "privatePort": { + "format": "int32", + "description": "The input endpoint private port.", + "type": "integer" + }, + "publicPort": { + "format": "int32", + "description": "The input endpoint public port.", + "type": "integer" + }, + "protocol": { + "description": "The input endpoint protocol.", + "type": "string" + } + } + }, + "IPConfig": { + "description": "IP configuration details.", + "type": "object", + "properties": { + "staticIPAddress": { + "description": "The static IP address of the IP configuration.", + "type": "string" + }, + "publicIpAddressId": { + "description": "The Id of the public IP address associated with the IP configuration.", + "type": "string" + }, + "lBBackendAddressPoolIds": { + "description": "The backend address pools associated with the IP configuration.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "Job": { + "description": "Job details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/JobProperties", + "description": "The custom data." + } + } + }, + "JobCollection": { + "description": "Collection of jobs.", + "type": "object", + "properties": { + "value": { + "description": "The list of jobs.", + "type": "array", + "items": { + "$ref": "#/definitions/Job" + } + }, + "nextLink": { + "description": "The value of next link.", + "type": "string" + } + } + }, + "JobDetails": { + "description": "Job details based on specific job type.", + "type": "object", + "properties": { + "instanceType": { + "description": "Gets the type of job details (see JobDetailsTypes enum for possible values).", + "type": "string", + "readOnly": true + }, + "affectedObjectDetails": { + "description": "The affected object properties like source server, source cloud, target server, target cloud etc. based on the workflow object details.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "discriminator": "instanceType" + }, + "JobEntity": { + "description": "This class contains the minimal job details required to navigate to the desired drill down.", + "type": "object", + "properties": { + "jobId": { + "description": "The job id.", + "type": "string" + }, + "jobFriendlyName": { + "description": "The job display name.", + "type": "string" + }, + "targetObjectId": { + "description": "The object id.", + "type": "string" + }, + "targetObjectName": { + "description": "The object name.", + "type": "string" + }, + "targetInstanceType": { + "description": "The workflow affected object type.", + "type": "string" + }, + "jobScenarioName": { + "description": "The job name. Enum type ScenarioName.", + "type": "string" + } + } + }, + "JobErrorDetails": { + "description": "This class contains the error details per object.", + "type": "object", + "properties": { + "serviceErrorDetails": { + "$ref": "#/definitions/ServiceError", + "description": "The Service error details." + }, + "providerErrorDetails": { + "$ref": "#/definitions/ProviderError", + "description": "The Provider error details." + }, + "errorLevel": { + "description": "Error level of error.", + "type": "string" + }, + "creationTime": { + "format": "date-time", + "description": "The creation time of job error.", + "type": "string" + }, + "taskId": { + "description": "The Id of the task.", + "type": "string" + } + } + }, + "JobProperties": { + "description": "Job custom data details.", + "type": "object", + "properties": { + "activityId": { + "description": "The activity id.", + "type": "string" + }, + "scenarioName": { + "description": "The ScenarioName.", + "type": "string" + }, + "friendlyName": { + "description": "The DisplayName.", + "type": "string" + }, + "state": { + "description": "The status of the Job. It is one of these values - NotStarted, InProgress, Succeeded, Failed, Cancelled, Suspended or Other.", + "type": "string" + }, + "stateDescription": { + "description": "The description of the state of the Job. For e.g. - For Succeeded state, description can be Completed, PartiallySucceeded, CompletedWithInformation or Skipped.", + "type": "string" + }, + "tasks": { + "description": "The tasks.", + "type": "array", + "items": { + "$ref": "#/definitions/ASRTask" + } + }, + "errors": { + "description": "The errors.", + "type": "array", + "items": { + "$ref": "#/definitions/JobErrorDetails" + } + }, + "startTime": { + "format": "date-time", + "description": "The start time.", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "The end time.", + "type": "string" + }, + "allowedActions": { + "description": "The Allowed action the job.", + "type": "array", + "items": { + "type": "string" + } + }, + "targetObjectId": { + "description": "The affected Object Id.", + "type": "string" + }, + "targetObjectName": { + "description": "The name of the affected object.", + "type": "string" + }, + "targetInstanceType": { + "description": "The type of the affected object which is of {Microsoft.Azure.SiteRecovery.V2015_11_10.AffectedObjectType} class.", + "type": "string" + }, + "customDetails": { + "$ref": "#/definitions/JobDetails", + "description": "The custom job details like test failover job details." + } + } + }, + "JobQueryParameter": { + "description": "Query parameter to enumerate jobs.", + "type": "object", + "properties": { + "startTime": { + "description": "Date time to get jobs from.", + "type": "string" + }, + "endTime": { + "description": "Date time to get jobs up to.", + "type": "string" + }, + "fabricId": { + "description": "The Id of the fabric to search jobs under.", + "type": "string" + }, + "affectedObjectTypes": { + "description": "The type of objects.", + "type": "string" + }, + "jobStatus": { + "description": "The states of the job to be filtered can be in.", + "type": "string" + } + } + }, + "JobStatusEventDetails": { + "description": "Model class for event details of a job status event.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/EventSpecificDetails" + } + ], + "properties": { + "jobId": { + "description": "Job arm id for the event.", + "type": "string" + }, + "jobFriendlyName": { + "description": "JobName for the Event.", + "type": "string" + }, + "jobStatus": { + "description": "JobStatus for the Event.", + "type": "string" + }, + "affectedObjectType": { + "description": "AffectedObjectType for the event.", + "type": "string" + } + }, + "x-ms-discriminator-value": "JobStatus" + }, + "JobTaskDetails": { + "description": "This class represents a task which is actually a workflow so that one can navigate to its individual drill down.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TaskTypeDetails" + } + ], + "properties": { + "jobTask": { + "$ref": "#/definitions/JobEntity", + "description": "The job entity." + } + }, + "x-ms-discriminator-value": "JobTaskDetails" + }, + "KeyEncryptionKeyInfo": { + "description": "Key Encryption Key (KEK) information.", + "type": "object", + "properties": { + "keyIdentifier": { + "description": "The key URL / identifier.", + "type": "string" + }, + "keyVaultResourceArmId": { + "description": "The KeyVault resource ARM Id for key.", + "type": "string" + } + } + }, + "LogicalNetwork": { + "description": "Logical network data model.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/LogicalNetworkProperties", + "description": "The Logical Network Properties." + } + } + }, + "LogicalNetworkCollection": { + "description": "List of logical networks.", + "type": "object", + "properties": { + "value": { + "description": "The Logical Networks list details.", + "type": "array", + "items": { + "$ref": "#/definitions/LogicalNetwork" + } + }, + "nextLink": { + "description": "The value of next link.", + "type": "string" + } + } + }, + "LogicalNetworkProperties": { + "description": "Logical Network Properties.", + "type": "object", + "properties": { + "friendlyName": { + "description": "The Friendly Name.", + "type": "string" + }, + "networkVirtualizationStatus": { + "description": "A value indicating whether Network Virtualization is enabled for the logical network.", + "type": "string" + }, + "logicalNetworkUsage": { + "description": "A value indicating whether logical network is used as private test network by test failover.", + "type": "string" + }, + "logicalNetworkDefinitionsStatus": { + "description": "A value indicating whether logical network definitions are isolated.", + "type": "string" + } + } + }, + "ManualActionTaskDetails": { + "description": "This class represents the manual action task details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TaskTypeDetails" + } + ], + "properties": { + "name": { + "description": "The name.", + "type": "string" + }, + "instructions": { + "description": "The instructions.", + "type": "string" + }, + "observation": { + "description": "The observation.", + "type": "string" + } + }, + "x-ms-discriminator-value": "ManualActionTaskDetails" + }, + "MasterTargetServer": { + "description": "Details of a Master Target Server.", + "type": "object", + "properties": { + "id": { + "description": "The server Id.", + "type": "string" + }, + "ipAddress": { + "description": "The IP address of the server.", + "type": "string" + }, + "name": { + "description": "The server name.", + "type": "string" + }, + "osType": { + "description": "The OS type of the server.", + "type": "string" + }, + "agentVersion": { + "description": "The version of the scout component on the server.", + "type": "string" + }, + "lastHeartbeat": { + "format": "date-time", + "description": "The last heartbeat received from the server.", + "type": "string" + }, + "versionStatus": { + "description": "Version status", + "type": "string" + }, + "retentionVolumes": { + "description": "The retention volumes of Master target Server.", + "type": "array", + "items": { + "$ref": "#/definitions/RetentionVolume" + } + }, + "dataStores": { + "description": "The list of data stores in the fabric.", + "type": "array", + "items": { + "$ref": "#/definitions/DataStore" + } + }, + "validationErrors": { + "description": "Validation errors.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthError" + } + }, + "healthErrors": { + "description": "Health errors.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthError" + } + }, + "diskCount": { + "format": "int32", + "description": "Disk count of the master target.", + "type": "integer" + }, + "osVersion": { + "description": "OS Version of the master target.", + "type": "string" + }, + "agentExpiryDate": { + "format": "date-time", + "description": "Agent expiry date.", + "type": "string" + }, + "marsAgentVersion": { + "description": "MARS agent version.", + "type": "string" + }, + "marsAgentExpiryDate": { + "format": "date-time", + "description": "MARS agent expiry date.", + "type": "string" + }, + "agentVersionDetails": { + "$ref": "#/definitions/VersionDetails", + "description": "Agent version details." + }, + "marsAgentVersionDetails": { + "$ref": "#/definitions/VersionDetails", + "description": "Mars agent version details." + } + } + }, + "MigrateInput": { + "description": "Input for migrate.", + "required": [ + "properties" + ], + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/MigrateInputProperties", + "description": "Migrate input properties." + } + } + }, + "MigrateInputProperties": { + "description": "Migrate input properties.", + "required": [ + "providerSpecificDetails" + ], + "type": "object", + "properties": { + "providerSpecificDetails": { + "$ref": "#/definitions/MigrateProviderSpecificInput", + "description": "The provider specific details." + } + } + }, + "MigrateProviderSpecificInput": { + "description": "Migrate provider specific input.", + "required": [ + "instanceType" + ], + "type": "object", + "properties": { + "instanceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, + "MigrationItem": { + "description": "Migration item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/MigrationItemProperties", + "description": "The migration item properties." + } + } + }, + "MigrationItemCollection": { + "description": "Migration item collection.", + "type": "object", + "properties": { + "value": { + "description": "The list of migration items.", + "type": "array", + "items": { + "$ref": "#/definitions/MigrationItem" + } + }, + "nextLink": { + "description": "The value of next link.", + "type": "string" + } + } + }, + "MigrationItemProperties": { + "description": "Migration item properties.", + "type": "object", + "properties": { + "machineName": { + "description": "The on-premise virtual machine name.", + "type": "string", + "readOnly": true + }, + "policyId": { + "description": "The ARM Id of policy governing this item.", + "type": "string", + "readOnly": true + }, + "policyFriendlyName": { + "description": "The name of policy governing this item.", + "type": "string", + "readOnly": true + }, + "recoveryServicesProviderId": { + "description": "The recovery services provider ARM Id.", + "type": "string", + "readOnly": true + }, + "migrationState": { + "description": "The migration status.", + "enum": [ + "None", + "EnableMigrationInProgress", + "EnableMigrationFailed", + "DisableMigrationInProgress", + "DisableMigrationFailed", + "InitialSeedingInProgress", + "InitialSeedingFailed", + "Replicating", + "MigrationInProgress", + "MigrationSucceeded", + "MigrationFailed" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "MigrationState", + "modelAsString": true + } + }, + "migrationStateDescription": { + "description": "The migration state description.", + "type": "string", + "readOnly": true + }, + "testMigrateState": { + "description": "The test migrate state.", + "enum": [ + "None", + "TestMigrationInProgress", + "TestMigrationSucceeded", + "TestMigrationFailed", + "TestMigrationCleanupInProgress" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "TestMigrationState", + "modelAsString": true + } + }, + "testMigrateStateDescription": { + "description": "The test migrate state description.", + "type": "string", + "readOnly": true + }, + "health": { + "description": "The consolidated health.", + "type": "string", + "readOnly": true + }, + "healthErrors": { + "description": "The list of health errors.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthError" + }, + "readOnly": true + }, + "allowedOperations": { + "description": "The allowed operations on the migration item, based on the current migration state of the item.", + "type": "array", + "items": { + "enum": [ + "DisableMigration", + "TestMigrate", + "TestMigrateCleanup", + "Migrate" + ], + "type": "string", + "x-ms-enum": { + "name": "MigrationItemOperation", + "modelAsString": true + } + }, + "readOnly": true + }, + "currentJob": { + "$ref": "#/definitions/CurrentJobDetails", + "description": "The current job details.", + "readOnly": true + }, + "providerSpecificDetails": { + "$ref": "#/definitions/MigrationProviderSpecificSettings", + "description": "The migration provider custom settings." + } + } + }, + "MigrationItemsQueryParameter": { + "description": "Query parameter to enumerate migration items.", + "type": "object", + "properties": { + "sourceFabricName": { + "description": "The source fabric name filter.", + "type": "string" + }, + "instanceType": { + "description": "The replication provider type.", + "type": "string" + } + } + }, + "MigrationProviderSpecificSettings": { + "description": "Migration provider specific settings.", + "type": "object", + "properties": { + "instanceType": { + "description": "Gets the instance type.", + "type": "string", + "readOnly": true + } + }, + "discriminator": "instanceType" + }, + "MigrationRecoveryPoint": { + "description": "Recovery point for a migration item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/MigrationRecoveryPointProperties", + "description": "Recovery point properties." + } + } + }, + "MigrationRecoveryPointCollection": { + "description": "Collection of migration recovery points.", + "type": "object", + "properties": { + "value": { + "description": "The migration recovery point details.", + "type": "array", + "items": { + "$ref": "#/definitions/MigrationRecoveryPoint" + } + }, + "nextLink": { + "description": "The value of next link.", + "type": "string" + } + } + }, + "MigrationRecoveryPointProperties": { + "description": "Migration item recovery point properties.", + "type": "object", + "properties": { + "recoveryPointTime": { + "format": "date-time", + "description": "The recovery point time.", + "type": "string", + "readOnly": true + }, + "recoveryPointType": { + "description": "The recovery point type.", + "enum": [ + "NotSpecified", + "ApplicationConsistent", + "CrashConsistent" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "MigrationRecoveryPointType", + "modelAsString": true + } + } + } + }, + "MobilityServiceUpdate": { + "description": "The Mobility Service update details.", + "type": "object", + "properties": { + "version": { + "description": "The version of the latest update.", + "type": "string" + }, + "rebootStatus": { + "description": "The reboot status of the update - whether it is required or not.", + "type": "string" + }, + "osType": { + "description": "The OS type.", + "type": "string" + } + } + }, + "Network": { + "description": "Network model.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/NetworkProperties", + "description": "The Network Properties." + } + } + }, + "NetworkCollection": { + "description": "List of networks.", + "type": "object", + "properties": { + "value": { + "description": "The Networks list details.", + "type": "array", + "items": { + "$ref": "#/definitions/Network" + } + }, + "nextLink": { + "description": "The value of next link.", + "type": "string" + } + } + }, + "NetworkMapping": { + "description": "Network Mapping model. Ideally it should have been possible to inherit this class from prev version in InheritedModels as long as there is no difference in structure or method signature. Since there were no base Models for certain fields and methods viz NetworkMappingProperties and Load with required return type, the class has been introduced in its entirety with references to base models to facilitate extensions in subsequent versions.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/NetworkMappingProperties", + "description": "The Network Mapping Properties." + } + } + }, + "NetworkMappingCollection": { + "description": "List of network mappings. As with NetworkMapping, it should be possible to reuse a prev version of this class. It doesn't seem likely this class could be anything more than a slightly bespoke collection of NetworkMapping. Hence it makes sense to override Load with Base.NetworkMapping instead of existing CurrentVersion.NetworkMapping.", + "type": "object", + "properties": { + "value": { + "description": "The Network Mappings list.", + "type": "array", + "items": { + "$ref": "#/definitions/NetworkMapping" + } + }, + "nextLink": { + "description": "The value of next link.", + "type": "string" + } + } + }, + "NetworkMappingFabricSpecificSettings": { + "description": "Network Mapping fabric specific settings.", + "type": "object", + "properties": { + "instanceType": { + "description": "Gets the Instance type.", + "type": "string", + "readOnly": true + } + }, + "discriminator": "instanceType" + }, + "NetworkMappingProperties": { + "description": "Network Mapping Properties.", + "type": "object", + "properties": { + "state": { + "description": "The pairing state for network mapping.", + "type": "string" + }, + "primaryNetworkFriendlyName": { + "description": "The primary network friendly name.", + "type": "string" + }, + "primaryNetworkId": { + "description": "The primary network id for network mapping.", + "type": "string" + }, + "primaryFabricFriendlyName": { + "description": "The primary fabric friendly name.", + "type": "string" + }, + "recoveryNetworkFriendlyName": { + "description": "The recovery network friendly name.", + "type": "string" + }, + "recoveryNetworkId": { + "description": "The recovery network id for network mapping.", + "type": "string" + }, + "recoveryFabricArmId": { + "description": "The recovery fabric ARM id.", + "type": "string" + }, + "recoveryFabricFriendlyName": { + "description": "The recovery fabric friendly name.", + "type": "string" + }, + "fabricSpecificSettings": { + "$ref": "#/definitions/NetworkMappingFabricSpecificSettings", + "description": "The fabric specific settings." + } + } + }, + "NetworkProperties": { + "description": "Network Properties", + "type": "object", + "properties": { + "fabricType": { + "description": "The Fabric Type.", + "type": "string" + }, + "subnets": { + "description": "The List of subnets.", + "type": "array", + "items": { + "$ref": "#/definitions/Subnet" + } + }, + "friendlyName": { + "description": "The Friendly Name.", + "type": "string" + }, + "networkType": { + "description": "The Network Type.", + "type": "string" + } + } + }, + "NewProtectionProfile": { + "description": "New Protection profile input.", + "required": [ + "policyName", + "multiVmSyncStatus" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionProfileCustomDetails" + } + ], + "properties": { + "policyName": { + "description": "The protection profile input.", + "type": "string" + }, + "recoveryPointHistory": { + "format": "int32", + "description": "The duration in minutes until which the recovery points need to be stored.", + "type": "integer" + }, + "crashConsistentFrequencyInMinutes": { + "format": "int32", + "description": "The crash consistent snapshot frequency (in minutes).", + "type": "integer" + }, + "appConsistentFrequencyInMinutes": { + "format": "int32", + "description": "The app consistent snapshot frequency (in minutes).", + "type": "integer" + }, + "multiVmSyncStatus": { + "description": "A value indicating whether multi-VM sync has to be enabled. Value should be 'Enabled' or 'Disabled'.", + "enum": [ + "Enable", + "Disable" + ], + "type": "string", + "x-ms-enum": { + "name": "SetMultiVmSyncStatus", + "modelAsString": true + } + } + }, + "x-ms-discriminator-value": "New" + }, + "NewRecoveryVirtualNetwork": { + "description": "Recovery virtual network input to create new virtual network from given source network.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RecoveryVirtualNetworkCustomDetails" + } + ], + "properties": { + "recoveryVirtualNetworkResourceGroupName": { + "description": "The name of the resource group to be used to create the recovery virtual network. If absent, target network would be created in the same resource group as target VM.", + "type": "string" + }, + "recoveryVirtualNetworkName": { + "description": "The recovery virtual network name.", + "type": "string" + } + }, + "x-ms-discriminator-value": "New" + }, + "Object": { + "description": "Base of all objects.", + "type": "object", + "properties": {} + }, + "OperationsDiscovery": { + "description": "Operations discovery class.", + "type": "object", + "properties": { + "name": { + "description": "Name of the API. The name of the operation being performed on this particular object. It should match the action name that appears in RBAC / the event service. Examples of operations include: * Microsoft.Compute/virtualMachine/capture/action * Microsoft.Compute/virtualMachine/restart/action * Microsoft.Compute/virtualMachine/write * Microsoft.Compute/virtualMachine/read * Microsoft.Compute/virtualMachine/delete Each action should include, in order: (1) Resource Provider Namespace (2) Type hierarchy for which the action applies (e.g. server/databases for a SQL Azure database) (3) Read, Write, Action or Delete indicating which type applies. If it is a PUT/PATCH on a collection or named value, Write should be used. If it is a GET, Read should be used. If it is a DELETE, Delete should be used. If it is a POST, Action should be used. As a note: all resource providers would need to include the \"{Resource Provider Namespace}/register/action\" operation in their response. This API is used to register for their service, and should include details about the operation (e.g. a localized name for the resource provider + any special considerations like PII release)", + "type": "string" + }, + "display": { + "$ref": "#/definitions/Display", + "description": "Object type" + }, + "origin": { + "description": "Origin. 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\"", + "type": "string" + }, + "properties": { + "$ref": "#/definitions/OperationsDiscoveryProperties", + "description": "Properties. Reserved for future use." + } + } + }, + "OperationsDiscoveryCollection": { + "description": "Collection of ClientDiscovery details.", + "type": "object", + "properties": { + "value": { + "description": "The ClientDiscovery details.", + "type": "array", + "items": { + "$ref": "#/definitions/OperationsDiscovery" + } + }, + "nextLink": { + "description": "The value of next link.", + "type": "string" + } + } + }, + "OperationsDiscoveryProperties": { + "description": "ClientDiscovery properties.", + "type": "object", + "properties": {} + }, + "OSDetails": { + "description": "Disk Details.", + "type": "object", + "properties": { + "osType": { + "description": "VM Disk details.", + "type": "string" + }, + "productType": { + "description": "Product type.", + "type": "string" + }, + "osEdition": { + "description": "The OSEdition.", + "type": "string" + }, + "oSVersion": { + "description": "The OS Version.", + "type": "string" + }, + "oSMajorVersion": { + "description": "The OS Major Version.", + "type": "string" + }, + "oSMinorVersion": { + "description": "The OS Minor Version.", + "type": "string" + } + } + }, + "OSDiskDetails": { + "description": "Details of the OS Disk.", + "type": "object", + "properties": { + "osVhdId": { + "description": "The id of the disk containing the OS.", + "type": "string" + }, + "osType": { + "description": "The type of the OS on the VM.", + "type": "string" + }, + "vhdName": { + "description": "The OS disk VHD name.", + "type": "string" + } + } + }, + "OSVersionWrapper": { + "description": "Wrapper model for OSVersion to include version and service pack info.", + "type": "object", + "properties": { + "version": { + "description": "The version.", + "type": "string" + }, + "servicePack": { + "description": "Service pack.", + "type": "string" + } + } + }, + "PlannedFailoverInput": { + "description": "Input definition for planned failover.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/PlannedFailoverInputProperties", + "description": "Planned failover input properties" + } + } + }, + "PlannedFailoverInputProperties": { + "description": "Input definition for planned failover input properties.", + "type": "object", + "properties": { + "failoverDirection": { + "description": "Failover direction.", + "type": "string" + }, + "providerSpecificDetails": { + "$ref": "#/definitions/ProviderSpecificFailoverInput", + "description": "Provider specific settings" + } + } + }, + "Policy": { + "description": "Protection profile details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PolicyProperties", + "description": "The custom data." + } + } + }, + "PolicyCollection": { + "description": "Protection Profile Collection details.", + "type": "object", + "properties": { + "value": { + "description": "The policy details.", + "type": "array", + "items": { + "$ref": "#/definitions/Policy" + } + }, + "nextLink": { + "description": "The value of next link.", + "type": "string" + } + } + }, + "PolicyProperties": { + "description": "Protection profile custom data details.", + "type": "object", + "properties": { + "friendlyName": { + "description": "The FriendlyName.", + "type": "string" + }, + "providerSpecificDetails": { + "$ref": "#/definitions/PolicyProviderSpecificDetails", + "description": "The ReplicationChannelSetting." + } + } + }, + "PolicyProviderSpecificDetails": { + "description": "Base class for Provider specific details for policies.", + "type": "object", + "properties": { + "instanceType": { + "description": "Gets the class type. Overridden in derived classes.", + "type": "string", + "readOnly": true + } + }, + "discriminator": "instanceType" + }, + "PolicyProviderSpecificInput": { + "description": "Base class for provider specific input", + "type": "object", + "properties": { + "instanceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, + "ProcessServer": { + "description": "Details of the Process Server.", + "type": "object", + "properties": { + "friendlyName": { + "description": "The Process Server's friendly name.", + "type": "string" + }, + "id": { + "description": "The Process Server Id.", + "type": "string" + }, + "ipAddress": { + "description": "The IP address of the server.", + "type": "string" + }, + "osType": { + "description": "The OS type of the server.", + "type": "string" + }, + "agentVersion": { + "description": "The version of the scout component on the server.", + "type": "string" + }, + "lastHeartbeat": { + "format": "date-time", + "description": "The last heartbeat received from the server.", + "type": "string" + }, + "versionStatus": { + "description": "Version status", + "type": "string" + }, + "mobilityServiceUpdates": { + "description": "The list of the mobility service updates available on the Process Server.", + "type": "array", + "items": { + "$ref": "#/definitions/MobilityServiceUpdate" + } + }, + "hostId": { + "description": "The agent generated Id.", + "type": "string" + }, + "machineCount": { + "description": "The servers configured with this PS.", + "type": "string" + }, + "replicationPairCount": { + "description": "The number of replication pairs configured in this PS.", + "type": "string" + }, + "systemLoad": { + "description": "The percentage of the system load.", + "type": "string" + }, + "systemLoadStatus": { + "description": "The system load status.", + "type": "string" + }, + "cpuLoad": { + "description": "The percentage of the CPU load.", + "type": "string" + }, + "cpuLoadStatus": { + "description": "The CPU load status.", + "type": "string" + }, + "totalMemoryInBytes": { + "format": "int64", + "description": "The total memory.", + "type": "integer" + }, + "availableMemoryInBytes": { + "format": "int64", + "description": "The available memory.", + "type": "integer" + }, + "memoryUsageStatus": { + "description": "The memory usage status.", + "type": "string" + }, + "totalSpaceInBytes": { + "format": "int64", + "description": "The total space.", + "type": "integer" + }, + "availableSpaceInBytes": { + "format": "int64", + "description": "The available space.", + "type": "integer" + }, + "spaceUsageStatus": { + "description": "The space usage status.", + "type": "string" + }, + "psServiceStatus": { + "description": "The PS service status.", + "type": "string" + }, + "sslCertExpiryDate": { + "format": "date-time", + "description": "The PS SSL cert expiry date.", + "type": "string" + }, + "sslCertExpiryRemainingDays": { + "format": "int32", + "description": "CS SSL cert expiry date.", + "type": "integer" + }, + "osVersion": { + "description": "OS Version of the process server. Note: This will get populated if user has CS version greater than 9.12.0.0.", + "type": "string" + }, + "healthErrors": { + "description": "Health errors.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthError" + } + }, + "agentExpiryDate": { + "format": "date-time", + "description": "Agent expiry date.", + "type": "string" + }, + "agentVersionDetails": { + "$ref": "#/definitions/VersionDetails", + "description": "The agent version details." + }, + "health": { + "description": "The health of Process Server.", + "enum": [ + "None", + "Normal", + "Warning", + "Critical" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProtectionHealth", + "modelAsString": true + } + }, + "psStatsRefreshTime": { + "format": "date-time", + "description": "The process server stats refresh time.", + "type": "string", + "readOnly": true + }, + "throughputUploadPendingDataInBytes": { + "format": "int64", + "description": "The uploading pending data in bytes.", + "type": "integer", + "readOnly": true + }, + "throughputInMBps": { + "format": "int64", + "description": "The throughput in MBps.", + "type": "integer", + "readOnly": true + }, + "throughputInBytes": { + "format": "int64", + "description": "The throughput in bytes.", + "type": "integer", + "readOnly": true + }, + "throughputStatus": { + "description": "The throughput status.", + "type": "string", + "readOnly": true + }, + "marsCommunicationStatus": { + "description": "The MARS communication status.", + "type": "string", + "readOnly": true + }, + "marsRegistrationStatus": { + "description": "The MARS registration status.", + "type": "string", + "readOnly": true + } + } + }, + "ProcessServerDetails": { + "description": "Process server details.", + "type": "object", + "properties": { + "id": { + "description": "The process server Id.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The process server name.", + "type": "string", + "readOnly": true + }, + "version": { + "description": "The process server version.", + "type": "string", + "readOnly": true + }, + "lastHeartbeatUtc": { + "format": "date-time", + "description": "The last heartbeat received from the process server.", + "type": "string", + "readOnly": true + }, + "totalMemoryInBytes": { + "format": "int64", + "description": "The total memory.", + "type": "integer", + "readOnly": true + }, + "availableMemoryInBytes": { + "format": "int64", + "description": "The available memory.", + "type": "integer", + "readOnly": true + }, + "usedMemoryInBytes": { + "format": "int64", + "description": "The used memory.", + "type": "integer", + "readOnly": true + }, + "memoryUsagePercentage": { + "format": "double", + "description": "The memory usage percentage.", + "type": "number", + "readOnly": true + }, + "totalSpaceInBytes": { + "format": "int64", + "description": "The total disk space.", + "type": "integer", + "readOnly": true + }, + "availableSpaceInBytes": { + "format": "int64", + "description": "The available disk space.", + "type": "integer", + "readOnly": true + }, + "usedSpaceInBytes": { + "format": "int64", + "description": "The used disk space.", + "type": "integer", + "readOnly": true + }, + "freeSpacePercentage": { + "format": "double", + "description": "The free disk space percentage.", + "type": "number", + "readOnly": true + }, + "throughputUploadPendingDataInBytes": { + "format": "int64", + "description": "The uploading pending data in bytes.", + "type": "integer", + "readOnly": true + }, + "throughputInBytes": { + "format": "int64", + "description": "The throughput in bytes.", + "type": "integer", + "readOnly": true + }, + "processorUsagePercentage": { + "format": "double", + "description": "The processor usage percentage.", + "type": "number", + "readOnly": true + }, + "health": { + "description": "The health of the process server.", + "enum": [ + "None", + "Normal", + "Warning", + "Critical" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProtectionHealth", + "modelAsString": true + } + }, + "healthErrors": { + "description": "The health errors.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthError" + }, + "readOnly": true + }, + "historicHealth": { + "description": "The historic health of the process server based on the health in last 24 hours.", + "enum": [ + "None", + "Normal", + "Warning", + "Critical" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProtectionHealth", + "modelAsString": true + } + } + } + }, + "ProtectableItem": { + "description": "Replication protected item", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ProtectableItemProperties", + "description": "The custom data." + } + } + }, + "ProtectableItemCollection": { + "description": "Protectable item collection.", + "type": "object", + "properties": { + "value": { + "description": "The Protectable item details.", + "type": "array", + "items": { + "$ref": "#/definitions/ProtectableItem" + } + }, + "nextLink": { + "description": "The value of next link.", + "type": "string" + } + } + }, + "ProtectableItemProperties": { + "description": "Replication protected item custom data details.", + "type": "object", + "properties": { + "friendlyName": { + "description": "The name.", + "type": "string" + }, + "protectionStatus": { + "description": "The protection status.", + "type": "string" + }, + "replicationProtectedItemId": { + "description": "The ARM resource of protected items.", + "type": "string" + }, + "recoveryServicesProviderId": { + "description": "The recovery provider ARM Id.", + "type": "string" + }, + "protectionReadinessErrors": { + "description": "The Current protection readiness errors.", + "type": "array", + "items": { + "type": "string" + } + }, + "supportedReplicationProviders": { + "description": "The list of replication providers supported for the protectable item.", + "type": "array", + "items": { + "type": "string" + } + }, + "customDetails": { + "$ref": "#/definitions/ConfigurationSettings", + "description": "The Replication provider custom settings." + } + } + }, + "ProtectableItemQueryParameter": { + "description": "Query parameter to enumerate Protectable items.", + "type": "object", + "properties": { + "state": { + "description": "State of the Protectable item query filter.", + "type": "string" + } + } + }, + "ProtectedItemsQueryParameter": { + "description": "Query parameter to enumerate protected items.", + "type": "object", + "properties": { + "sourceFabricName": { + "description": "The source fabric name filter.", + "type": "string" + }, + "recoveryPlanName": { + "description": "The recovery plan filter.", + "type": "string" + }, + "vCenterName": { + "description": "The vCenter name filter.", + "type": "string" + }, + "instanceType": { + "description": "The replication provider type.", + "type": "string" + }, + "multiVmGroupCreateOption": { + "description": "Whether Multi VM group is auto created or specified by user.", + "enum": [ + "AutoCreated", + "UserSpecified" + ], + "type": "string", + "x-ms-enum": { + "name": "MultiVmGroupCreateOption", + "modelAsString": true + } + } + } + }, + "ProtectionContainer": { + "description": "Protection container details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ProtectionContainerProperties", + "description": "The custom data." + } + } + }, + "ProtectionContainerCollection": { + "description": "Protection Container collection.", + "type": "object", + "properties": { + "value": { + "description": "The Protection Container details.", + "type": "array", + "items": { + "$ref": "#/definitions/ProtectionContainer" + } + }, + "nextLink": { + "description": "The value of next link.", + "type": "string" + } + } + }, + "ProtectionContainerFabricSpecificDetails": { + "description": "Base class for fabric specific details of container.", + "type": "object", + "properties": { + "instanceType": { + "description": "Gets the class type. Overridden in derived classes.", + "type": "string", + "readOnly": true + } + } + }, + "ProtectionContainerMapping": { + "description": "Protection container mapping object.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ProtectionContainerMappingProperties", + "description": "The custom data." + } + } + }, + "ProtectionContainerMappingCollection": { + "description": "Protection container mapping collection class.", + "type": "object", + "properties": { + "value": { + "description": "List of container mappings.", + "type": "array", + "items": { + "$ref": "#/definitions/ProtectionContainerMapping" + } + }, + "nextLink": { + "description": "Link to fetch rest of the data.", + "type": "string" + } + } + }, + "ProtectionContainerMappingProperties": { + "description": "Protection container mapping properties.", + "type": "object", + "properties": { + "targetProtectionContainerId": { + "description": "Paired protection container ARM ID.", + "type": "string" + }, + "targetProtectionContainerFriendlyName": { + "description": "Friendly name of paired container.", + "type": "string" + }, + "providerSpecificDetails": { + "$ref": "#/definitions/ProtectionContainerMappingProviderSpecificDetails", + "description": "Provider specific provider details." + }, + "health": { + "description": "Health of pairing.", + "type": "string" + }, + "healthErrorDetails": { + "description": "Health error.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthError" + } + }, + "policyId": { + "description": "Policy ARM Id.", + "type": "string" + }, + "state": { + "description": "Association Status", + "type": "string" + }, + "sourceProtectionContainerFriendlyName": { + "description": "Friendly name of source protection container.", + "type": "string" + }, + "sourceFabricFriendlyName": { + "description": "Friendly name of source fabric.", + "type": "string" + }, + "targetFabricFriendlyName": { + "description": "Friendly name of target fabric.", + "type": "string" + }, + "policyFriendlyName": { + "description": "Friendly name of replication policy.", + "type": "string" + } + } + }, + "ProtectionContainerMappingProviderSpecificDetails": { + "description": "Container mapping provider specific details.", + "type": "object", + "properties": { + "instanceType": { + "description": "Gets the class type. Overridden in derived classes.", + "type": "string", + "readOnly": true + } + }, + "discriminator": "instanceType" + }, + "ProtectionContainerProperties": { + "description": "Protection profile custom data details.", + "type": "object", + "properties": { + "fabricFriendlyName": { + "description": "Fabric friendly name.", + "type": "string" + }, + "friendlyName": { + "description": "The name.", + "type": "string" + }, + "fabricType": { + "description": "The fabric type.", + "type": "string" + }, + "protectedItemCount": { + "format": "int32", + "description": "Number of protected PEs", + "type": "integer" + }, + "pairingStatus": { + "description": "The pairing status of this cloud.", + "type": "string" + }, + "role": { + "description": "The role of this cloud.", + "type": "string" + }, + "fabricSpecificDetails": { + "$ref": "#/definitions/ProtectionContainerFabricSpecificDetails", + "description": "Fabric specific details." + } + } + }, + "ProtectionProfileCustomDetails": { + "description": "Protection Profile custom input.", + "type": "object", + "properties": { + "resourceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "resourceType" + }, + "ProviderError": { + "description": "This class contains the error details per object.", + "type": "object", + "properties": { + "errorCode": { + "format": "int32", + "description": "The Error code.", + "type": "integer" + }, + "errorMessage": { + "description": "The Error message.", + "type": "string" + }, + "errorId": { + "description": "The Provider error Id.", + "type": "string" + }, + "possibleCauses": { + "description": "The possible causes for the error.", + "type": "string" + }, + "recommendedAction": { + "description": "The recommended action to resolve the error.", + "type": "string" + } + } + }, + "ProviderSpecificFailoverInput": { + "description": "Provider specific failover input.", + "type": "object", + "properties": { + "instanceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, + "ProviderSpecificRecoveryPointDetails": { + "description": "Replication provider specific recovery point details.", + "type": "object", + "properties": { + "instanceType": { + "description": "Gets the provider type.", + "type": "string", + "readOnly": true + } + }, + "discriminator": "instanceType" + }, + "RcmAzureMigrationPolicyDetails": { + "description": "RCM based Azure migration specific policy details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/PolicyProviderSpecificDetails" + } + ], + "properties": { + "recoveryPointThresholdInMinutes": { + "format": "int32", + "description": "The recovery point threshold in minutes.", + "type": "integer" + }, + "recoveryPointHistory": { + "format": "int32", + "description": "The duration in minutes until which the recovery points need to be stored.", + "type": "integer" + }, + "appConsistentFrequencyInMinutes": { + "format": "int32", + "description": "The app consistent snapshot frequency in minutes.", + "type": "integer" + }, + "multiVmSyncStatus": { + "description": "A value indicating whether multi-VM sync has to be enabled.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "MultiVmSyncStatus", + "modelAsString": true + } + }, + "crashConsistentFrequencyInMinutes": { + "format": "int32", + "description": "The crash consistent snapshot frequency in minutes.", + "type": "integer" + } + }, + "x-ms-discriminator-value": "RcmAzureMigration" + }, + "PushInstallerDetails": { + "description": "Push installer details.", + "type": "object", + "properties": { + "id": { + "description": "The push installer Id.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The push installer name.", + "type": "string", + "readOnly": true + }, + "version": { + "description": "The push installer version.", + "type": "string", + "readOnly": true + }, + "lastHeartbeatUtc": { + "format": "date-time", + "description": "The last heartbeat received from the push installer.", + "type": "string", + "readOnly": true + }, + "health": { + "description": "The health of the push installer.", + "enum": [ + "None", + "Normal", + "Warning", + "Critical" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProtectionHealth", + "modelAsString": true + } + }, + "healthErrors": { + "description": "The health errors.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthError" + }, + "readOnly": true + } + } + }, + "RcmProxyDetails": { + "description": "RCM proxy details.", + "type": "object", + "properties": { + "id": { + "description": "The RCM proxy Id.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The RCM proxy name.", + "type": "string", + "readOnly": true + }, + "version": { + "description": "The RCM proxy version.", + "type": "string", + "readOnly": true + }, + "lastHeartbeatUtc": { + "format": "date-time", + "description": "The last heartbeat received from the RCM proxy.", + "type": "string", + "readOnly": true + }, + "health": { + "description": "The health of the RCM proxy.", + "enum": [ + "None", + "Normal", + "Warning", + "Critical" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProtectionHealth", + "modelAsString": true + } + }, + "healthErrors": { + "description": "The health errors.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthError" + }, + "readOnly": true + } + } + }, + "RecoveryAvailabilitySetCustomDetails": { + "description": "Recovery Availability Set custom input.", + "type": "object", + "properties": { + "resourceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "resourceType" + }, + "RecoveryPlan": { + "description": "Recovery plan details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/RecoveryPlanProperties", + "description": "The custom details." + } + } + }, + "RecoveryPlanA2AFailoverInput": { + "description": "Recovery plan A2A failover input.", + "required": [ + "recoveryPointType" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RecoveryPlanProviderSpecificFailoverInput" + } + ], + "properties": { + "recoveryPointType": { + "description": "The recovery point type.", + "enum": [ + "Latest", + "LatestApplicationConsistent", + "LatestCrashConsistent", + "LatestProcessed" + ], + "type": "string", + "x-ms-enum": { + "name": "A2ARpRecoveryPointType", + "modelAsString": true + } + }, + "cloudServiceCreationOption": { + "description": "A value indicating whether to use recovery cloud service for TFO or not.", + "type": "string" + }, + "multiVmSyncPointOption": { + "description": "A value indicating whether multi VM sync enabled VMs should use multi VM sync points for failover.", + "enum": [ + "UseMultiVmSyncRecoveryPoint", + "UsePerVmRecoveryPoint" + ], + "type": "string", + "x-ms-enum": { + "name": "MultiVmSyncPointOption", + "modelAsString": true + } + } + }, + "x-ms-discriminator-value": "A2A" + }, + "RecoveryPlanA2ADetails": { + "description": "Recovery plan A2A specific details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RecoveryPlanProviderSpecificDetails" + } + ], + "properties": { + "primaryZone": { + "description": "The primary zone.", + "type": "string" + }, + "recoveryZone": { + "description": "The recovery zone.", + "type": "string" + } + }, + "x-ms-discriminator-value": "A2A" + }, + "RecoveryPlanA2AInput": { + "description": "Recovery plan A2A input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RecoveryPlanProviderSpecificInput" + } + ], + "properties": { + "primaryZone": { + "description": "The primary zone.", + "type": "string" + }, + "recoveryZone": { + "description": "The recovery zone.", + "type": "string" + } + }, + "x-ms-discriminator-value": "A2A" + }, + "RecoveryPlanAction": { + "description": "Recovery plan action details.", + "required": [ + "actionName", + "failoverTypes", + "failoverDirections", + "customDetails" + ], + "type": "object", + "properties": { + "actionName": { + "description": "The action name.", + "type": "string" + }, + "failoverTypes": { + "description": "The list of failover types.", + "type": "array", + "items": { + "enum": [ + "ReverseReplicate", + "Commit", + "PlannedFailover", + "UnplannedFailover", + "DisableProtection", + "TestFailover", + "TestFailoverCleanup", + "Failback", + "FinalizeFailback", + "ChangePit", + "RepairReplication", + "SwitchProtection", + "CompleteMigration" + ], + "type": "string", + "x-ms-enum": { + "name": "ReplicationProtectedItemOperation", + "modelAsString": true + } + } + }, + "failoverDirections": { + "description": "The list of failover directions.", + "type": "array", + "items": { + "enum": [ + "PrimaryToRecovery", + "RecoveryToPrimary" + ], + "type": "string", + "x-ms-enum": { + "name": "PossibleOperationsDirections", + "modelAsString": true + } + } + }, + "customDetails": { + "$ref": "#/definitions/RecoveryPlanActionDetails", + "description": "The custom details." + } + } + }, + "RecoveryPlanActionDetails": { + "description": "Recovery plan action custom details.", + "type": "object", + "properties": { + "instanceType": { + "description": "Gets the type of action details (see RecoveryPlanActionDetailsTypes enum for possible values).", + "type": "string", + "readOnly": true + } + }, + "discriminator": "instanceType" + }, + "RecoveryPlanAutomationRunbookActionDetails": { + "description": "Recovery plan Automation runbook action details.", + "required": [ + "fabricLocation" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RecoveryPlanActionDetails" + } + ], + "properties": { + "runbookId": { + "description": "The runbook ARM Id.", + "type": "string" + }, + "timeout": { + "description": "The runbook timeout.", + "type": "string" + }, + "fabricLocation": { + "description": "The fabric location.", + "enum": [ + "Primary", + "Recovery" + ], + "type": "string", + "x-ms-enum": { + "name": "RecoveryPlanActionLocation", + "modelAsString": true + } + } + }, + "x-ms-discriminator-value": "AutomationRunbookActionDetails" + }, + "RecoveryPlanCollection": { + "description": "Recovery plan collection details.", + "type": "object", + "properties": { + "value": { + "description": "The list of recovery plans.", + "type": "array", + "items": { + "$ref": "#/definitions/RecoveryPlan" + } + }, + "nextLink": { + "description": "The value of next link.", + "type": "string" + } + } + }, + "RecoveryPlanGroup": { + "description": "Recovery plan group details.", + "required": [ + "groupType" + ], + "type": "object", + "properties": { + "groupType": { + "description": "The group type.", + "enum": [ + "Shutdown", + "Boot", + "Failover" + ], + "type": "string", + "x-ms-enum": { + "name": "RecoveryPlanGroupType", + "modelAsString": true + } + }, + "replicationProtectedItems": { + "description": "The list of protected items.", + "type": "array", + "items": { + "$ref": "#/definitions/RecoveryPlanProtectedItem" + } + }, + "startGroupActions": { + "description": "The start group actions.", + "type": "array", + "items": { + "$ref": "#/definitions/RecoveryPlanAction" + } + }, + "endGroupActions": { + "description": "The end group actions.", + "type": "array", + "items": { + "$ref": "#/definitions/RecoveryPlanAction" + } + } + } + }, + "RecoveryPlanGroupTaskDetails": { + "description": "This class represents the recovery plan group task.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/GroupTaskDetails" + } + ], + "properties": { + "name": { + "description": "The name.", + "type": "string" + }, + "groupId": { + "description": "The group identifier.", + "type": "string" + }, + "rpGroupType": { + "description": "The group type.", + "type": "string" + } + }, + "x-ms-discriminator-value": "RecoveryPlanGroupTaskDetails" + }, + "RecoveryPlanHyperVReplicaAzureFailbackInput": { + "description": "Recovery plan HVR Azure failback input.", + "required": [ + "dataSyncOption", + "recoveryVmCreationOption" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RecoveryPlanProviderSpecificFailoverInput" + } + ], + "properties": { + "dataSyncOption": { + "description": "The data sync option.", + "enum": [ + "ForDownTime", + "ForSynchronization" + ], + "type": "string", + "x-ms-enum": { + "name": "DataSyncStatus", + "modelAsString": true + } + }, + "recoveryVmCreationOption": { + "description": "The ALR option.", + "enum": [ + "CreateVmIfNotFound", + "NoAction" + ], + "type": "string", + "x-ms-enum": { + "name": "AlternateLocationRecoveryOption", + "modelAsString": true + } + } + }, + "x-ms-discriminator-value": "HyperVReplicaAzureFailback" + }, + "RecoveryPlanHyperVReplicaAzureFailoverInput": { + "description": "Recovery plan HVR Azure failover input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RecoveryPlanProviderSpecificFailoverInput" + } + ], + "properties": { + "vaultLocation": { + "description": "The vault location.", + "type": "string" + }, + "primaryKekCertificatePfx": { + "description": "The primary KEK certificate PFX.", + "type": "string" + }, + "secondaryKekCertificatePfx": { + "description": "The secondary KEK certificate PFX.", + "type": "string" + }, + "recoveryPointType": { + "description": "The recovery point type.", + "enum": [ + "Latest", + "LatestApplicationConsistent", + "LatestProcessed" + ], + "type": "string", + "x-ms-enum": { + "name": "HyperVReplicaAzureRpRecoveryPointType", + "modelAsString": true + } + } + }, + "x-ms-discriminator-value": "HyperVReplicaAzure" + }, + "RecoveryPlanInMageAzureV2FailoverInput": { + "description": "Recovery plan InMageAzureV2 failover input.", + "required": [ + "vaultLocation", + "recoveryPointType" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RecoveryPlanProviderSpecificFailoverInput" + } + ], + "properties": { + "vaultLocation": { + "description": "The vault location.", + "type": "string" + }, + "recoveryPointType": { + "description": "The recovery point type.", + "enum": [ + "Latest", + "LatestApplicationConsistent", + "LatestCrashConsistent", + "LatestProcessed" + ], + "type": "string", + "x-ms-enum": { + "name": "InMageV2RpRecoveryPointType", + "modelAsString": true + } + }, + "useMultiVmSyncPoint": { + "description": "A value indicating whether multi VM sync enabled VMs should use multi VM sync points for failover.", + "type": "string" + } + }, + "x-ms-discriminator-value": "InMageAzureV2" + }, + "RecoveryPlanInMageFailoverInput": { + "description": "Recovery plan InMage failover input.", + "required": [ + "recoveryPointType" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RecoveryPlanProviderSpecificFailoverInput" + } + ], + "properties": { + "recoveryPointType": { + "description": "The recovery point type.", + "enum": [ + "LatestTime", + "LatestTag", + "Custom" + ], + "type": "string", + "x-ms-enum": { + "name": "RpInMageRecoveryPointType", + "modelAsString": true + } + } + }, + "x-ms-discriminator-value": "InMage" + }, + "RecoveryPlanInMageRcmFailoverInput": { + "description": "Recovery plan InMageRcm failover input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RecoveryPlanProviderSpecificFailoverInput" + } + ], + "properties": { + "recoveryPointType": { + "description": "The recovery point type.", + "enum": [ + "Latest", + "LatestApplicationConsistent", + "LatestCrashConsistent", + "LatestProcessed" + ], + "type": "string", + "x-ms-enum": { + "name": "RecoveryPlanPointType", + "modelAsString": true + } + }, + "useMultiVmSyncPoint": { + "description": "A value indicating whether multi VM sync enabled VMs should use multi VM sync points for failover.", + "type": "string" + } + }, + "x-ms-discriminator-value": "InMageRcm" + }, + "RecoveryPlanManualActionDetails": { + "description": "Recovery plan manual action details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RecoveryPlanActionDetails" + } + ], + "properties": { + "description": { + "description": "The manual action description.", + "type": "string" + } + }, + "x-ms-discriminator-value": "ManualActionDetails" + }, + "RecoveryPlanPlannedFailoverInput": { + "description": "Recovery plan planned failover input.", + "required": [ + "properties" + ], + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/RecoveryPlanPlannedFailoverInputProperties", + "description": "The recovery plan planned failover input properties." + } + } + }, + "RecoveryPlanPlannedFailoverInputProperties": { + "description": "Recovery plan planned failover input properties.", + "required": [ + "failoverDirection" + ], + "type": "object", + "properties": { + "failoverDirection": { + "description": "The failover direction.", + "enum": [ + "PrimaryToRecovery", + "RecoveryToPrimary" + ], + "type": "string", + "x-ms-enum": { + "name": "PossibleOperationsDirections", + "modelAsString": true + } + }, + "providerSpecificDetails": { + "description": "The provider specific properties.", + "type": "array", + "items": { + "$ref": "#/definitions/RecoveryPlanProviderSpecificFailoverInput" + } + } + } + }, + "RecoveryPlanProperties": { + "description": "Recovery plan custom details.", + "type": "object", + "properties": { + "friendlyName": { + "description": "The friendly name.", + "type": "string" + }, + "primaryFabricId": { + "description": "The primary fabric Id.", + "type": "string" + }, + "primaryFabricFriendlyName": { + "description": "The primary fabric friendly name.", + "type": "string" + }, + "recoveryFabricId": { + "description": "The recovery fabric Id.", + "type": "string" + }, + "recoveryFabricFriendlyName": { + "description": "The recovery fabric friendly name.", + "type": "string" + }, + "failoverDeploymentModel": { + "description": "The failover deployment model.", + "type": "string" + }, + "replicationProviders": { + "description": "The list of replication providers.", + "type": "array", + "items": { + "type": "string" + } + }, + "allowedOperations": { + "description": "The list of allowed operations.", + "type": "array", + "items": { + "type": "string" + } + }, + "lastPlannedFailoverTime": { + "format": "date-time", + "description": "The start time of the last planned failover.", + "type": "string" + }, + "lastUnplannedFailoverTime": { + "format": "date-time", + "description": "The start time of the last unplanned failover.", + "type": "string" + }, + "lastTestFailoverTime": { + "format": "date-time", + "description": "The start time of the last test failover.", + "type": "string" + }, + "currentScenario": { + "$ref": "#/definitions/CurrentScenarioDetails", + "description": "The current scenario details." + }, + "currentScenarioStatus": { + "description": "The recovery plan status.", + "type": "string" + }, + "currentScenarioStatusDescription": { + "description": "The recovery plan status description.", + "type": "string" + }, + "groups": { + "description": "The recovery plan groups.", + "type": "array", + "items": { + "$ref": "#/definitions/RecoveryPlanGroup" + } + }, + "providerSpecificDetails": { + "description": "The provider id and provider specific details.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/RecoveryPlanProviderSpecificDetails" + }, + "readOnly": true + } + } + }, + "RecoveryPlanProtectedItem": { + "description": "Recovery plan protected item.", + "type": "object", + "properties": { + "id": { + "description": "The ARM Id of the recovery plan protected item.", + "type": "string" + }, + "virtualMachineId": { + "description": "The virtual machine Id.", + "type": "string" + } + } + }, + "RecoveryPlanProviderSpecificDetails": { + "description": "Recovery plan provider specific details.", + "type": "object", + "properties": { + "instanceType": { + "description": "Gets the Instance type.", + "type": "string", + "readOnly": true + } + }, + "discriminator": "instanceType" + }, + "RecoveryPlanProviderSpecificInput": { + "description": "Recovery plan provider specific input base class.", + "type": "object", + "properties": { + "instanceType": { + "description": "Gets the Instance type.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, + "RecoveryPlanProviderSpecificFailoverInput": { + "description": "Recovery plan provider specific failover input base class.", + "type": "object", + "properties": { + "instanceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, + "RecoveryPlanScriptActionDetails": { + "description": "Recovery plan script action details.", + "required": [ + "path", + "fabricLocation" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RecoveryPlanActionDetails" + } + ], + "properties": { + "path": { + "description": "The script path.", + "type": "string" + }, + "timeout": { + "description": "The script timeout.", + "type": "string" + }, + "fabricLocation": { + "description": "The fabric location.", + "enum": [ + "Primary", + "Recovery" + ], + "type": "string", + "x-ms-enum": { + "name": "RecoveryPlanActionLocation", + "modelAsString": true + } + } + }, + "x-ms-discriminator-value": "ScriptActionDetails" + }, + "RecoveryPlanShutdownGroupTaskDetails": { + "description": "This class represents the recovery plan shutdown group task details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/GroupTaskDetails" + } + ], + "properties": { + "name": { + "description": "The name.", + "type": "string" + }, + "groupId": { + "description": "The group identifier.", + "type": "string" + }, + "rpGroupType": { + "description": "The group type.", + "type": "string" + } + }, + "x-ms-discriminator-value": "RecoveryPlanShutdownGroupTaskDetails" + }, + "RecoveryPlanTestFailoverCleanupInput": { + "description": "Recovery plan test failover cleanup input.", + "required": [ + "properties" + ], + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/RecoveryPlanTestFailoverCleanupInputProperties", + "description": "The recovery plan test failover cleanup input properties." + } + } + }, + "RecoveryPlanTestFailoverCleanupInputProperties": { + "description": "Recovery plan test failover cleanup input properties.", + "type": "object", + "properties": { + "comments": { + "description": "The test failover cleanup comments.", + "type": "string" + } + } + }, + "RecoveryPlanTestFailoverInput": { + "description": "Recovery plan test failover input.", + "required": [ + "properties" + ], + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/RecoveryPlanTestFailoverInputProperties", + "description": "The recovery plan test failover input properties." + } + } + }, + "RecoveryPlanTestFailoverInputProperties": { + "description": "Recovery plan test failover input properties.", + "required": [ + "failoverDirection", + "networkType" + ], + "type": "object", + "properties": { + "failoverDirection": { + "description": "The failover direction.", + "enum": [ + "PrimaryToRecovery", + "RecoveryToPrimary" + ], + "type": "string", + "x-ms-enum": { + "name": "PossibleOperationsDirections", + "modelAsString": true + } + }, + "networkType": { + "description": "The network type to be used for test failover.", + "type": "string" + }, + "networkId": { + "description": "The Id of the network to be used for test failover.", + "type": "string" + }, + "skipTestFailoverCleanup": { + "description": "A value indicating whether the test failover cleanup is to be skipped.", + "type": "string" + }, + "providerSpecificDetails": { + "description": "The provider specific properties.", + "type": "array", + "items": { + "$ref": "#/definitions/RecoveryPlanProviderSpecificFailoverInput" + } + } + } + }, + "RecoveryPlanUnplannedFailoverInput": { + "description": "Recovery plan unplanned failover input.", + "required": [ + "properties" + ], + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/RecoveryPlanUnplannedFailoverInputProperties", + "description": "The recovery plan unplanned failover input properties." + } + } + }, + "RecoveryPlanUnplannedFailoverInputProperties": { + "description": "Recovery plan unplanned failover input properties.", + "required": [ + "failoverDirection", + "sourceSiteOperations" + ], + "type": "object", + "properties": { + "failoverDirection": { + "description": "The failover direction.", + "enum": [ + "PrimaryToRecovery", + "RecoveryToPrimary" + ], + "type": "string", + "x-ms-enum": { + "name": "PossibleOperationsDirections", + "modelAsString": true + } + }, + "sourceSiteOperations": { + "description": "A value indicating whether source site operations are required.", + "enum": [ + "Required", + "NotRequired" + ], + "type": "string", + "x-ms-enum": { + "name": "SourceSiteOperations", + "modelAsString": true + } + }, + "providerSpecificDetails": { + "description": "The provider specific properties.", + "type": "array", + "items": { + "$ref": "#/definitions/RecoveryPlanProviderSpecificFailoverInput" + } + } + } + }, + "RecoveryPoint": { + "description": "Base class representing a recovery point.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/RecoveryPointProperties", + "description": "Recovery point related data." + } + } + }, + "RecoveryPointCollection": { + "description": "Collection of recovery point details.", + "type": "object", + "properties": { + "value": { + "description": "The recovery point details.", + "type": "array", + "items": { + "$ref": "#/definitions/RecoveryPoint" + } + }, + "nextLink": { + "description": "The value of next link.", + "type": "string" + } + } + }, + "RecoveryPointProperties": { + "description": "Recovery point properties.", + "type": "object", + "properties": { + "recoveryPointTime": { + "format": "date-time", + "description": "The recovery point time.", + "type": "string" + }, + "recoveryPointType": { + "description": "The recovery point type: ApplicationConsistent, CrashConsistent.", + "type": "string" + }, + "providerSpecificDetails": { + "$ref": "#/definitions/ProviderSpecificRecoveryPointDetails", + "description": "The provider specific details for the recovery point." + } + } + }, + "RecoveryProximityPlacementGroupCustomDetails": { + "description": "Recovery Proximity placement group custom input.", + "type": "object", + "properties": { + "resourceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "resourceType" + }, + "RecoveryResourceGroupCustomDetails": { + "description": "Recovery Resource Group custom input.", + "type": "object", + "properties": { + "resourceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "resourceType" + }, + "RecoveryServicesProvider": { + "description": "Provider details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/RecoveryServicesProviderProperties", + "description": "Provider properties." + } + } + }, + "RecoveryServicesProviderCollection": { + "description": "Collection of providers.", + "type": "object", + "properties": { + "value": { + "description": "The Servers details.", + "type": "array", + "items": { + "$ref": "#/definitions/RecoveryServicesProvider" + } + }, + "nextLink": { + "description": "The value of next link.", + "type": "string" + } + } + }, + "RecoveryServicesProviderProperties": { + "description": "Recovery services provider properties.", + "type": "object", + "properties": { + "fabricType": { + "description": "Type of the site.", + "type": "string" + }, + "friendlyName": { + "description": "Friendly name of the DRA.", + "type": "string" + }, + "providerVersion": { + "description": "The provider version.", + "type": "string" + }, + "serverVersion": { + "description": "The fabric provider.", + "type": "string" + }, + "providerVersionState": { + "description": "DRA version status.", + "type": "string" + }, + "providerVersionExpiryDate": { + "format": "date-time", + "description": "Expiry date of the version.", + "type": "string" + }, + "fabricFriendlyName": { + "description": "The fabric friendly name.", + "type": "string" + }, + "lastHeartBeat": { + "format": "date-time", + "description": "Time when last heartbeat was sent by the DRA.", + "type": "string" + }, + "connectionStatus": { + "description": "A value indicating whether DRA is responsive.", + "type": "string" + }, + "protectedItemCount": { + "format": "int32", + "description": "Number of protected VMs currently managed by the DRA.", + "type": "integer" + }, + "allowedScenarios": { + "description": "The scenarios allowed on this provider.", + "type": "array", + "items": { + "type": "string" + } + }, + "healthErrorDetails": { + "description": "The recovery services provider health error details.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthError" + } + }, + "draIdentifier": { + "description": "The DRA Id.", + "type": "string" + }, + "authenticationIdentityDetails": { + "$ref": "#/definitions/IdentityProviderDetails", + "description": "The authentication identity details." + }, + "resourceAccessIdentityDetails": { + "$ref": "#/definitions/IdentityProviderDetails", + "description": "The resource access identity details." + }, + "providerVersionDetails": { + "$ref": "#/definitions/VersionDetails", + "description": "The provider version details." + } + } + }, + "RecoveryVirtualNetworkCustomDetails": { + "description": "Recovery Virtual network custom input.", + "type": "object", + "properties": { + "resourceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "resourceType" + }, + "RemoveDisksInput": { + "description": "Input for remove disk(s) operation.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/RemoveDisksInputProperties", + "description": "Remove disk input properties." + } + } + }, + "RemoveDisksInputProperties": { + "description": "Remove Disk input properties.", + "type": "object", + "properties": { + "providerSpecificDetails": { + "$ref": "#/definitions/RemoveDisksProviderSpecificInput", + "description": "The ReplicationProviderInput. For HyperVReplicaAzure provider, it will be AzureEnableProtectionInput object. For San provider, it will be SanEnableProtectionInput object. For HyperVReplicaAzure provider, it can be null." + } + } + }, + "RemoveDisksProviderSpecificInput": { + "description": "Remove Disk provider specific input.", + "type": "object", + "properties": { + "instanceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, + "RemoveProtectionContainerMappingInput": { + "description": "Container unpairing input.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/RemoveProtectionContainerMappingInputProperties", + "description": "Configure protection input properties." + } + } + }, + "RemoveProtectionContainerMappingInputProperties": { + "description": "Unpairing input properties.", + "type": "object", + "properties": { + "providerSpecificInput": { + "$ref": "#/definitions/ReplicationProviderContainerUnmappingInput", + "description": "Provider specific input for unpairing." + } + } + }, + "RenewCertificateInput": { + "description": "Certificate renewal input.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/RenewCertificateInputProperties", + "description": "Renew certificate input properties." + } + } + }, + "RenewCertificateInputProperties": { + "description": "Renew Certificate input properties.", + "type": "object", + "properties": { + "renewCertificateType": { + "description": "Renew certificate type.", + "type": "string" + } + } + }, + "ReplicationAgentDetails": { + "description": "Replication agent details.", + "type": "object", + "properties": { + "id": { + "description": "The replication agent Id.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The replication agent name.", + "type": "string", + "readOnly": true + }, + "version": { + "description": "The replication agent version.", + "type": "string", + "readOnly": true + }, + "lastHeartbeatUtc": { + "format": "date-time", + "description": "The last heartbeat received from the replication agent.", + "type": "string", + "readOnly": true + }, + "health": { + "description": "The health of the replication agent.", + "enum": [ + "None", + "Normal", + "Warning", + "Critical" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProtectionHealth", + "modelAsString": true + } + }, + "healthErrors": { + "description": "The health errors.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthError" + }, + "readOnly": true + } + } + }, + "ReplicationEligibilityResults": { + "description": "Replication eligibility results response model.", + "type": "object", + "properties": { + "name": { + "description": "Gets the name of this object.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Gets the object type.", + "type": "string", + "readOnly": true + }, + "id": { + "description": "Gets Unique ARM identifier for this object.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/ReplicationEligibilityResultsProperties", + "description": "Gets properties model for replication eligibility results API.", + "readOnly": true + } + } + }, + "ReplicationEligibilityResultsCollection": { + "description": "Replication eligibility results collection response model.", + "type": "object", + "properties": { + "value": { + "description": "The replication eligibility results details.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/ReplicationEligibilityResults" + } + } + } + }, + "ReplicationEligibilityResultsErrorInfo": { + "description": "Error model that can be exposed to the user.", + "type": "object", + "properties": { + "code": { + "description": "The error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "The error message.", + "type": "string", + "readOnly": true + }, + "possibleCauses": { + "description": "The possible causes.", + "type": "string", + "readOnly": true + }, + "recommendedAction": { + "description": "The recommended action.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "The error status.", + "type": "string", + "readOnly": true + } + } + }, + "ReplicationEligibilityResultsProperties": { + "description": "Properties model for replication eligibility results API.", + "type": "object", + "properties": { + "clientRequestId": { + "description": "The client request Id.", + "type": "string", + "readOnly": true + }, + "errors": { + "description": "The error details.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/ReplicationEligibilityResultsErrorInfo" + } + } + } + }, + "ReplicationGroupDetails": { + "description": "Replication group details. This will be used in case of San and Wvr.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ConfigurationSettings" + } + ], + "properties": {}, + "x-ms-discriminator-value": "ReplicationGroupDetails" + }, + "ReplicationProtectedItem": { + "description": "Replication protected item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ReplicationProtectedItemProperties", + "description": "The custom data." + } + } + }, + "ReplicationProtectedItemCollection": { + "description": "Replication protected item collection.", + "type": "object", + "properties": { + "value": { + "description": "The Replication protected item details.", + "type": "array", + "items": { + "$ref": "#/definitions/ReplicationProtectedItem" + } + }, + "nextLink": { + "description": "The value of next link.", + "type": "string" + } + } + }, + "ReplicationProtectedItemProperties": { + "description": "Replication protected item custom data details.", + "type": "object", + "properties": { + "friendlyName": { + "description": "The name.", + "type": "string" + }, + "protectedItemType": { + "description": "The type of protected item type.", + "type": "string" + }, + "protectableItemId": { + "description": "The protected item ARM Id.", + "type": "string" + }, + "recoveryServicesProviderId": { + "description": "The recovery provider ARM Id.", + "type": "string" + }, + "primaryFabricFriendlyName": { + "description": "The friendly name of the primary fabric.", + "type": "string" + }, + "primaryFabricProvider": { + "description": "The fabric provider of the primary fabric.", + "type": "string" + }, + "recoveryFabricFriendlyName": { + "description": "The friendly name of recovery fabric.", + "type": "string" + }, + "recoveryFabricId": { + "description": "The Arm Id of recovery fabric.", + "type": "string" + }, + "primaryProtectionContainerFriendlyName": { + "description": "The name of primary protection container friendly name.", + "type": "string" + }, + "recoveryProtectionContainerFriendlyName": { + "description": "The name of recovery container friendly name.", + "type": "string" + }, + "protectionState": { + "description": "The protection status.", + "type": "string" + }, + "protectionStateDescription": { + "description": "The protection state description.", + "type": "string" + }, + "activeLocation": { + "description": "The Current active location of the PE.", + "type": "string" + }, + "testFailoverState": { + "description": "The Test failover state.", + "type": "string" + }, + "testFailoverStateDescription": { + "description": "The Test failover state description.", + "type": "string" + }, + "allowedOperations": { + "description": "The allowed operations on the Replication protected item.", + "type": "array", + "items": { + "type": "string" + } + }, + "replicationHealth": { + "description": "The consolidated protection health for the VM taking any issues with SRS as well as all the replication units associated with the VM's replication group into account. This is a string representation of the ProtectionHealth enumeration.", + "type": "string" + }, + "failoverHealth": { + "description": "The consolidated failover health for the VM.", + "type": "string" + }, + "healthErrors": { + "description": "List of health errors.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthError" + } + }, + "policyId": { + "description": "The ID of Policy governing this PE.", + "type": "string" + }, + "policyFriendlyName": { + "description": "The name of Policy governing this PE.", + "type": "string" + }, + "lastSuccessfulFailoverTime": { + "format": "date-time", + "description": "The Last successful failover time.", + "type": "string" + }, + "lastSuccessfulTestFailoverTime": { + "format": "date-time", + "description": "The Last successful test failover time.", + "type": "string" + }, + "currentScenario": { + "$ref": "#/definitions/CurrentScenarioDetails", + "description": "The current scenario." + }, + "failoverRecoveryPointId": { + "description": "The recovery point ARM Id to which the Vm was failed over.", + "type": "string" + }, + "providerSpecificDetails": { + "$ref": "#/definitions/ReplicationProviderSpecificSettings", + "description": "The Replication provider custom settings." + }, + "recoveryContainerId": { + "description": "The recovery container Id.", + "type": "string" + } + } + }, + "ReplicationProtectionIntent": { + "description": "Replication protection intent.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ReplicationProtectionIntentProperties", + "description": "The custom data." + } + } + }, + "ReplicationProtectionIntentCollection": { + "description": "Replication protection intent objects collection.", + "type": "object", + "properties": { + "value": { + "description": "The Replication protection intent details.", + "type": "array", + "items": { + "$ref": "#/definitions/ReplicationProtectionIntent" + } + }, + "nextLink": { + "description": "The value of next link.", + "type": "string" + } + } + }, + "ReplicationProtectionIntentProperties": { + "description": "Replication protection intent custom data details.", + "type": "object", + "properties": { + "friendlyName": { + "description": "The name.", + "type": "string" + }, + "jobId": { + "description": "The job Id.", + "type": "string", + "readOnly": true + }, + "jobState": { + "description": "The job state.", + "type": "string", + "readOnly": true + }, + "isActive": { + "description": "A value indicating whether the intent object is active.", + "type": "boolean", + "readOnly": true + }, + "creationTimeUTC": { + "description": "The creation time in UTC.", + "type": "string", + "readOnly": true + }, + "providerSpecificDetails": { + "$ref": "#/definitions/ReplicationProtectionIntentProviderSpecificSettings", + "description": "The Replication provider custom settings." + } + } + }, + "ReplicationProtectionIntentProviderSpecificSettings": { + "description": "Replication provider specific settings.", + "type": "object", + "properties": { + "instanceType": { + "description": "Gets the Instance type.", + "type": "string", + "readOnly": true + } + }, + "discriminator": "instanceType" + }, + "ReplicationProviderContainerUnmappingInput": { + "description": "Provider specific input for unpairing operations.", + "type": "object", + "properties": { + "instanceType": { + "description": "The class type.", + "type": "string" + } + } + }, + "ReplicationProviderSpecificContainerCreationInput": { + "description": "Provider specific input for container creation operation.", + "type": "object", + "properties": { + "instanceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, + "ReplicationProviderSpecificContainerMappingInput": { + "description": "Provider specific input for pairing operations.", + "type": "object", + "properties": { + "instanceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, + "ReplicationProviderSpecificSettings": { + "description": "Replication provider specific settings.", + "type": "object", + "properties": { + "instanceType": { + "description": "Gets the Instance type.", + "type": "string", + "readOnly": true + } + }, + "discriminator": "instanceType" + }, + "ReplicationProviderSpecificUpdateContainerMappingInput": { + "description": "Provider specific input for update pairing operations.", + "type": "object", + "properties": { + "instanceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, + "ReprotectAgentDetails": { + "description": "Reprotect agent details.", + "type": "object", + "properties": { + "id": { + "description": "The reprotect agent Id.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The reprotect agent name.", + "type": "string", + "readOnly": true + }, + "version": { + "description": "The version.", + "type": "string", + "readOnly": true + }, + "lastHeartbeatUtc": { + "format": "date-time", + "description": "The last heartbeat received from the reprotect agent.", + "type": "string", + "readOnly": true + }, + "health": { + "description": "The health of the reprotect agent.", + "enum": [ + "None", + "Normal", + "Warning", + "Critical" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProtectionHealth", + "modelAsString": true + } + }, + "healthErrors": { + "description": "The health errors.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthError" + }, + "readOnly": true + } + } + }, + "ResolveHealthError": { + "description": "Resolve health errors input properties.", + "type": "object", + "properties": { + "healthErrorId": { + "description": "Health error id.", + "type": "string" + } + } + }, + "ResolveHealthInput": { + "description": "Resolve health input.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/ResolveHealthInputProperties", + "description": "Disable resolve health input properties." + } + } + }, + "ResolveHealthInputProperties": { + "description": "Resolve health input properties.", + "type": "object", + "properties": { + "healthErrors": { + "description": "Health errors.", + "type": "array", + "items": { + "$ref": "#/definitions/ResolveHealthError" + } + } + } + }, + "Resource": { + "description": "Azure resource.", + "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 + }, + "location": { + "description": "Resource Location", + "type": "string" + } + }, + "x-ms-azure-resource": true + }, + "ResourceHealthSummary": { + "description": "Base class to define the health summary of the resources contained under an Arm resource.", + "type": "object", + "properties": { + "resourceCount": { + "format": "int32", + "description": "The count of total resources under the container.", + "type": "integer" + }, + "issues": { + "description": "The list of summary of health errors across the resources under the container.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthErrorSummary" + } + } + } + }, + "ResumeJobParams": { + "description": "Resume job params.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/ResumeJobParamsProperties", + "description": "Resume job properties." + } + } + }, + "ResumeJobParamsProperties": { + "description": "Resume job properties.", + "type": "object", + "properties": { + "comments": { + "description": "Resume job comments.", + "type": "string" + } + } + }, + "RetentionVolume": { + "description": "The retention details of the MT.", + "type": "object", + "properties": { + "volumeName": { + "description": "The volume name.", + "type": "string" + }, + "capacityInBytes": { + "format": "int64", + "description": "The volume capacity.", + "type": "integer" + }, + "freeSpaceInBytes": { + "format": "int64", + "description": "The free space available in this volume.", + "type": "integer" + }, + "thresholdPercentage": { + "format": "int32", + "description": "The threshold percentage.", + "type": "integer" + } + } + }, + "ReverseReplicationInput": { + "description": "Reverse replication input.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/ReverseReplicationInputProperties", + "description": "Reverse replication properties" + } + } + }, + "ReverseReplicationInputProperties": { + "description": "Reverse replication input properties.", + "type": "object", + "properties": { + "failoverDirection": { + "description": "Failover direction.", + "type": "string" + }, + "providerSpecificDetails": { + "$ref": "#/definitions/ReverseReplicationProviderSpecificInput", + "description": "Provider specific reverse replication input." + } + } + }, + "ReverseReplicationProviderSpecificInput": { + "description": "Provider specific reverse replication input.", + "type": "object", + "properties": { + "instanceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, + "RoleAssignment": { + "description": "Azure role assignment details.", + "type": "object", + "properties": { + "id": { + "description": "The ARM Id of the role assignment.", + "type": "string" + }, + "name": { + "description": "The name of the role assignment.", + "type": "string" + }, + "scope": { + "description": "Role assignment scope.", + "type": "string" + }, + "principalId": { + "description": "Principal Id.", + "type": "string" + }, + "roleDefinitionId": { + "description": "Role definition id.", + "type": "string" + } + } + }, + "RunAsAccount": { + "description": "CS Accounts Details.", + "type": "object", + "properties": { + "accountId": { + "description": "The CS RunAs account Id.", + "type": "string" + }, + "accountName": { + "description": "The CS RunAs account name.", + "type": "string" + } + } + }, + "SanEnableProtectionInput": { + "description": "San enable protection provider specific input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/EnableProtectionProviderSpecificInput" + } + ], + "properties": {}, + "x-ms-discriminator-value": "San" + }, + "ScriptActionTaskDetails": { + "description": "This class represents the script action task details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TaskTypeDetails" + } + ], + "properties": { + "name": { + "description": "The name.", + "type": "string" + }, + "path": { + "description": "The path.", + "type": "string" + }, + "output": { + "description": "The output.", + "type": "string" + }, + "isPrimarySideScript": { + "description": "A value indicating whether it is a primary side script or not.", + "type": "boolean" + } + }, + "x-ms-discriminator-value": "ScriptActionTaskDetails" + }, + "ServiceError": { + "description": "ASR error model", + "type": "object", + "properties": { + "code": { + "description": "Error code.", + "type": "string" + }, + "message": { + "description": "Error message.", + "type": "string" + }, + "possibleCauses": { + "description": "Possible causes of error.", + "type": "string" + }, + "recommendedAction": { + "description": "Recommended action to resolve error.", + "type": "string" + }, + "activityId": { + "description": "Activity Id.", + "type": "string" + } + } + }, + "StorageAccountCustomDetails": { + "description": "Storage account custom input.", + "type": "object", + "properties": { + "resourceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "resourceType" + }, + "StorageClassification": { + "description": "Storage object definition.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/StorageClassificationProperties", + "description": "Properties of the storage object." + } + } + }, + "StorageClassificationCollection": { + "description": "Collection of storage details.", + "type": "object", + "properties": { + "value": { + "description": "The storage details.", + "type": "array", + "items": { + "$ref": "#/definitions/StorageClassification" + } + }, + "nextLink": { + "description": "The value of next link.", + "type": "string" + } + } + }, + "StorageClassificationMapping": { + "description": "Storage mapping object.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/StorageClassificationMappingProperties", + "description": "Properties of the storage mapping object." + } + } + }, + "StorageClassificationMappingCollection": { + "description": "Collection of storage mapping details.", + "type": "object", + "properties": { + "value": { + "description": "The storage details.", + "type": "array", + "items": { + "$ref": "#/definitions/StorageClassificationMapping" + } + }, + "nextLink": { + "description": "The value of next link.", + "type": "string" + } + } + }, + "StorageClassificationMappingInput": { + "description": "Storage mapping input.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/StorageMappingInputProperties", + "description": "Storage mapping input properties." + } + } + }, + "StorageClassificationMappingProperties": { + "description": "Storage mapping properties.", + "type": "object", + "properties": { + "targetStorageClassificationId": { + "description": "Target storage object Id.", + "type": "string" + } + } + }, + "StorageClassificationProperties": { + "description": "Storage object properties.", + "type": "object", + "properties": { + "friendlyName": { + "description": "Friendly name of the Storage classification.", + "type": "string" + } + } + }, + "StorageMappingInputProperties": { + "description": "Storage mapping input properties.", + "type": "object", + "properties": { + "targetStorageClassificationId": { + "description": "The ID of the storage object.", + "type": "string" + } + } + }, + "Subnet": { + "description": "Subnets of the network.", + "type": "object", + "properties": { + "name": { + "description": "The subnet name.", + "type": "string" + }, + "friendlyName": { + "description": "The subnet friendly name.", + "type": "string" + }, + "addressList": { + "description": "The list of addresses for the subnet.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "SupportedOperatingSystems": { + "description": "Response object for supported operating systems API.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/SupportedOSProperties", + "description": "Properties model for supported OS API." + } + } + }, + "SupportedOSDetails": { + "description": "Supported Operating system details.", + "type": "object", + "properties": { + "osName": { + "description": "The name.", + "type": "string" + }, + "osType": { + "description": "The type.", + "type": "string" + }, + "osVersions": { + "description": "List of version for OS.", + "type": "array", + "items": { + "$ref": "#/definitions/OSVersionWrapper" + } + } + } + }, + "SupportedOSProperties": { + "description": "Properties model for supported OS API.", + "type": "object", + "properties": { + "supportedOsList": { + "description": "The supported OS List.", + "type": "array", + "items": { + "$ref": "#/definitions/SupportedOSProperty" + } + } + } + }, + "SupportedOSProperty": { + "description": "Property object for supported OS api.", + "type": "object", + "properties": { + "instanceType": { + "description": "Gets the replication provider type.", + "type": "string", + "readOnly": true + }, + "supportedOs": { + "description": "List of supported OS.", + "type": "array", + "items": { + "$ref": "#/definitions/SupportedOSDetails" + } + } + } + }, + "SwitchProtectionInput": { + "description": "Switch protection input.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/SwitchProtectionInputProperties", + "description": "Switch protection properties" + } + } + }, + "SwitchProtectionInputProperties": { + "description": "Switch protection input properties.", + "type": "object", + "properties": { + "replicationProtectedItemName": { + "description": "The unique replication protected item name.", + "type": "string" + }, + "providerSpecificDetails": { + "$ref": "#/definitions/SwitchProtectionProviderSpecificInput", + "description": "Provider specific switch protection input." + } + } + }, + "SwitchProtectionJobDetails": { + "description": "This class represents details for switch protection job.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/JobDetails" + } + ], + "properties": { + "newReplicationProtectedItemId": { + "description": "ARM Id of the new replication protected item.", + "type": "string" + } + }, + "x-ms-discriminator-value": "SwitchProtectionJobDetails" + }, + "SwitchProtectionProviderSpecificInput": { + "description": "Provider specific switch protection input.", + "type": "object", + "properties": { + "instanceType": { + "description": "Gets the Instance type.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, + "TargetComputeSize": { + "description": "Represents applicable recovery vm sizes.", + "type": "object", + "properties": { + "id": { + "description": "The Id.", + "type": "string" + }, + "name": { + "description": "The name.", + "type": "string" + }, + "type": { + "description": "The Type of the object.", + "type": "string" + }, + "properties": { + "$ref": "#/definitions/TargetComputeSizeProperties", + "description": "The custom data." + } + } + }, + "TargetComputeSizeCollection": { + "description": "Target compute size collection.", + "type": "object", + "properties": { + "value": { + "description": "The list of target compute sizes.", + "type": "array", + "items": { + "$ref": "#/definitions/TargetComputeSize" + } + }, + "nextLink": { + "description": "The value of next link.", + "type": "string" + } + } + }, + "TargetComputeSizeProperties": { + "description": "Represents applicable recovery vm sizes properties.", + "type": "object", + "properties": { + "name": { + "description": "Target compute size name.", + "type": "string" + }, + "friendlyName": { + "description": "Target compute size display name.", + "type": "string" + }, + "cpuCoresCount": { + "format": "int32", + "description": "The maximum cpu cores count supported by target compute size.", + "type": "integer" + }, + "vCPUsAvailable": { + "format": "int32", + "description": "The Available vCPUs supported by target compute size.", + "type": "integer", + "readOnly": true + }, + "memoryInGB": { + "format": "double", + "description": "The maximum memory in GB supported by target compute size.", + "type": "number" + }, + "maxDataDiskCount": { + "format": "int32", + "description": "The maximum data disks count supported by target compute size.", + "type": "integer" + }, + "maxNicsCount": { + "format": "int32", + "description": "The maximum Nics count supported by target compute size.", + "type": "integer" + }, + "errors": { + "description": "The reasons why the target compute size is not applicable for the protected item.", + "type": "array", + "items": { + "$ref": "#/definitions/ComputeSizeErrorDetails" + } + }, + "highIopsSupported": { + "description": "The value indicating whether the target compute size supports high Iops.", + "type": "string" + }, + "hyperVGenerations": { + "description": "The supported HyperV Generations.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + } + } + }, + "TaskTypeDetails": { + "description": "Task details based on specific task type.", + "type": "object", + "properties": { + "instanceType": { + "description": "The type of task details.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, + "TestFailoverCleanupInput": { + "description": "Input definition for test failover cleanup.", + "required": [ + "properties" + ], + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/TestFailoverCleanupInputProperties", + "description": "Test failover cleanup input properties." + } + } + }, + "TestFailoverCleanupInputProperties": { + "description": "Input definition for test failover cleanup input properties.", + "type": "object", + "properties": { + "comments": { + "description": "Test failover cleanup comments.", + "type": "string" + } + } + }, + "TestFailoverInput": { + "description": "Input definition for test failover.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/TestFailoverInputProperties", + "description": "test failover input properties" + } + } + }, + "TestFailoverInputProperties": { + "description": "Input definition for test failover input properties.", + "type": "object", + "properties": { + "failoverDirection": { + "description": "Test failover direction.", + "type": "string" + }, + "networkType": { + "description": "Network type to be used for test failover.", + "type": "string" + }, + "networkId": { + "description": "The id of the network to be used for test failover", + "type": "string" + }, + "skipTestFailoverCleanup": { + "description": "A value indicating whether the test failover cleanup is to be skipped.", + "type": "string" + }, + "providerSpecificDetails": { + "$ref": "#/definitions/TestFailoverProviderSpecificInput", + "description": "Provider specific settings" + } + } + }, + "TestFailoverJobDetails": { + "description": "This class represents the details for a test failover job.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/JobDetails" + } + ], + "properties": { + "testFailoverStatus": { + "description": "The test failover status.", + "type": "string" + }, + "comments": { + "description": "The test failover comments.", + "type": "string" + }, + "networkName": { + "description": "The test network name.", + "type": "string" + }, + "networkFriendlyName": { + "description": "The test network friendly name.", + "type": "string" + }, + "networkType": { + "description": "The test network type (see TestFailoverInput enum for possible values).", + "type": "string" + }, + "protectedItemDetails": { + "description": "The test VM details.", + "type": "array", + "items": { + "$ref": "#/definitions/FailoverReplicationProtectedItemDetails" + } + } + }, + "x-ms-discriminator-value": "TestFailoverJobDetails" + }, + "TestFailoverProviderSpecificInput": { + "description": "Provider specific test failover input.", + "type": "object", + "properties": { + "instanceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, + "TestMigrateCleanupInput": { + "description": "Input for test migrate cleanup.", + "required": [ + "properties" + ], + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/TestMigrateCleanupInputProperties", + "description": "Test migrate cleanup input properties." + } + } + }, + "TestMigrateCleanupInputProperties": { + "description": "Test migrate cleanup input properties.", + "type": "object", + "properties": { + "comments": { + "description": "Test migrate cleanup comments.", + "type": "string" + } + } + }, + "TestMigrateInput": { + "description": "Input for test migrate.", + "required": [ + "properties" + ], + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/TestMigrateInputProperties", + "description": "Test migrate input properties." + } + } + }, + "TestMigrateInputProperties": { + "description": "Test migrate input properties.", + "required": [ + "providerSpecificDetails" + ], + "type": "object", + "properties": { + "providerSpecificDetails": { + "$ref": "#/definitions/TestMigrateProviderSpecificInput", + "description": "The provider specific details." + } + } + }, + "TestMigrateProviderSpecificInput": { + "description": "Test migrate provider specific input.", + "required": [ + "instanceType" + ], + "type": "object", + "properties": { + "instanceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, + "UnplannedFailoverInput": { + "description": "Input definition for unplanned failover.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/UnplannedFailoverInputProperties", + "description": "Unplanned failover input properties." + } + } + }, + "UnplannedFailoverInputProperties": { + "description": "Input definition for unplanned failover input properties.", + "type": "object", + "properties": { + "failoverDirection": { + "description": "Failover direction.", + "type": "string" + }, + "sourceSiteOperations": { + "description": "Source site operations status", + "type": "string" + }, + "providerSpecificDetails": { + "$ref": "#/definitions/UnplannedFailoverProviderSpecificInput", + "description": "Provider specific settings" + } + } + }, + "UnplannedFailoverProviderSpecificInput": { + "description": "Provider specific unplanned failover input.", + "type": "object", + "properties": { + "instanceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, + "UpdateMigrationItemInput": { + "description": "Update migration item input.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/UpdateMigrationItemInputProperties", + "description": "Update migration item input properties." + } + } + }, + "UpdateMigrationItemInputProperties": { + "description": "Update migration item input properties.", + "required": [ + "providerSpecificDetails" + ], + "type": "object", + "properties": { + "providerSpecificDetails": { + "$ref": "#/definitions/UpdateMigrationItemProviderSpecificInput", + "description": "The provider specific input to update migration item." + } + } + }, + "UpdateMigrationItemProviderSpecificInput": { + "description": "Update migration item provider specific input.", + "type": "object", + "properties": { + "instanceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, + "UpdateMobilityServiceRequest": { + "description": "Request to update the mobility service on a protected item.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/UpdateMobilityServiceRequestProperties", + "description": "The properties of the update mobility service request." + } + } + }, + "UpdateMobilityServiceRequestProperties": { + "description": "The properties of an update mobility service request.", + "type": "object", + "properties": { + "runAsAccountId": { + "description": "The CS run as account Id.", + "type": "string" + } + } + }, + "UpdateNetworkMappingInput": { + "description": "Update network mapping input.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/UpdateNetworkMappingInputProperties", + "description": "The input properties needed to update network mapping." + } + } + }, + "UpdateNetworkMappingInputProperties": { + "description": "Common input details for network mapping operation.", + "type": "object", + "properties": { + "recoveryFabricName": { + "description": "Recovery fabric name.", + "type": "string" + }, + "recoveryNetworkId": { + "description": "Recovery network Id.", + "type": "string" + }, + "fabricSpecificDetails": { + "$ref": "#/definitions/FabricSpecificUpdateNetworkMappingInput", + "description": "Fabrics specific input network Id." + } + } + }, + "UpdatePolicyInput": { + "description": "Update policy input.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/UpdatePolicyInputProperties", + "description": "The ReplicationProviderSettings." + } + } + }, + "UpdatePolicyInputProperties": { + "description": "Policy update properties.", + "type": "object", + "properties": { + "replicationProviderSettings": { + "$ref": "#/definitions/PolicyProviderSpecificInput", + "description": "The ReplicationProviderSettings." + } + } + }, + "UpdateProtectionContainerMappingInput": { + "description": "Container pairing update input.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/UpdateProtectionContainerMappingInputProperties", + "description": "Update protection container mapping input properties." + } + } + }, + "UpdateProtectionContainerMappingInputProperties": { + "description": "Container pairing update input.", + "type": "object", + "properties": { + "providerSpecificInput": { + "$ref": "#/definitions/ReplicationProviderSpecificUpdateContainerMappingInput", + "description": "Provider specific input for updating protection container mapping." + } + } + }, + "UpdateRecoveryPlanInput": { + "description": "Update recovery plan input class.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/UpdateRecoveryPlanInputProperties", + "description": "Recovery plan update properties." + } + } + }, + "UpdateRecoveryPlanInputProperties": { + "description": "Recovery plan update properties.", + "type": "object", + "properties": { + "groups": { + "description": "The recovery plan groups.", + "type": "array", + "items": { + "$ref": "#/definitions/RecoveryPlanGroup" + } + } + } + }, + "UpdateReplicationProtectedItemInput": { + "description": "Update replication protected item input.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/UpdateReplicationProtectedItemInputProperties", + "description": "Update replication protected item properties." + } + } + }, + "UpdateReplicationProtectedItemInputProperties": { + "description": "Update protected item input properties.", + "type": "object", + "properties": { + "recoveryAzureVMName": { + "description": "Target azure VM name given by the user.", + "type": "string" + }, + "recoveryAzureVMSize": { + "description": "Target Azure Vm size.", + "type": "string" + }, + "selectedRecoveryAzureNetworkId": { + "description": "Target Azure Network Id.", + "type": "string" + }, + "selectedTfoAzureNetworkId": { + "description": "The Azure Network Id for test failover.", + "type": "string" + }, + "selectedSourceNicId": { + "description": "The selected source nic Id which will be used as the primary nic during failover.", + "type": "string" + }, + "enableRdpOnTargetOption": { + "description": "The selected option to enable RDP\\SSH on target vm after failover. String value of {SrsDataContract.EnableRDPOnTargetOption} enum.", + "type": "string" + }, + "vmNics": { + "description": "The list of vm nic details.", + "type": "array", + "items": { + "$ref": "#/definitions/VMNicInputDetails" + } + }, + "licenseType": { + "description": "License type.", + "enum": [ + "NotSpecified", + "NoLicenseType", + "WindowsServer" + ], + "type": "string", + "x-ms-enum": { + "name": "LicenseType", + "modelAsString": true + } + }, + "recoveryAvailabilitySetId": { + "description": "The target availability set id.", + "type": "string" + }, + "providerSpecificDetails": { + "$ref": "#/definitions/UpdateReplicationProtectedItemProviderInput", + "description": "The provider specific input to update replication protected item." + } + } + }, + "UpdateReplicationProtectedItemProviderInput": { + "description": "Update replication protected item provider specific input.", + "type": "object", + "properties": { + "instanceType": { + "description": "The class type.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, + "UpdateVCenterRequest": { + "description": "Input required to update vCenter.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/UpdateVCenterRequestProperties", + "description": "The update VCenter Request Properties." + } + } + }, + "UpdateVCenterRequestProperties": { + "description": "The properties of an update vCenter request.", + "type": "object", + "properties": { + "friendlyName": { + "description": "The friendly name of the vCenter.", + "type": "string" + }, + "ipAddress": { + "description": "The IP address of the vCenter to be discovered.", + "type": "string" + }, + "processServerId": { + "description": "The process server Id from where the update can be orchestrated.", + "type": "string" + }, + "port": { + "description": "The port number for discovery.", + "type": "string" + }, + "runAsAccountId": { + "description": "The CS account Id which has privileges to update the vCenter.", + "type": "string" + } + } + }, + "VaultHealthDetails": { + "description": "Vault health details definition.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/VaultHealthProperties", + "description": "The vault health related data." + } + } + }, + "VaultHealthProperties": { + "description": "class to define the health summary of the Vault.", + "type": "object", + "properties": { + "vaultErrors": { + "description": "The list of errors on the vault.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthError" + } + }, + "protectedItemsHealth": { + "$ref": "#/definitions/ResourceHealthSummary", + "description": "The list of the health detail of the protected items in the vault." + }, + "fabricsHealth": { + "$ref": "#/definitions/ResourceHealthSummary", + "description": "The list of the health detail of the fabrics in the vault." + }, + "containersHealth": { + "$ref": "#/definitions/ResourceHealthSummary", + "description": "The list of the health detail of the containers in the vault." + } + } + }, + "VaultSetting": { + "description": "Vault setting.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/VaultSettingProperties", + "description": "The vault setting properties." + } + } + }, + "VaultSettingCollection": { + "description": "Vault setting collection.", + "type": "object", + "properties": { + "value": { + "description": "The list of vault setting.", + "type": "array", + "items": { + "$ref": "#/definitions/VaultSetting" + } + }, + "nextLink": { + "description": "The value of next link.", + "type": "string" + } + } + }, + "VaultSettingCreationInput": { + "description": "Input to create vault setting.", + "required": [ + "properties" + ], + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/VaultSettingCreationInputProperties", + "description": "Vault setting creation input properties." + } + } + }, + "VaultSettingCreationInputProperties": { + "description": "Input to create vault setting.", + "required": [ + "migrationSolutionId" + ], + "type": "object", + "properties": { + "migrationSolutionId": { + "description": "The migration solution Id.", + "type": "string" + } + } + }, + "VaultSettingProperties": { + "description": "Vault setting properties.", + "type": "object", + "properties": { + "migrationSolutionId": { + "description": "The migration solution ARM Id.", + "type": "string" + } + } + }, + "VCenter": { + "description": "vCenter definition.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/VCenterProperties", + "description": "VCenter related data." + } + } + }, + "VCenterCollection": { + "description": "Collection of vCenter details.", + "type": "object", + "properties": { + "value": { + "description": "The vCenter details.", + "type": "array", + "items": { + "$ref": "#/definitions/VCenter" + } + }, + "nextLink": { + "description": "The value of next link.", + "type": "string" + } + } + }, + "VCenterProperties": { + "description": "vCenter properties.", + "type": "object", + "properties": { + "friendlyName": { + "description": "Friendly name of the vCenter.", + "type": "string" + }, + "internalId": { + "description": "VCenter internal ID.", + "type": "string" + }, + "lastHeartbeat": { + "format": "date-time", + "description": "The time when the last heartbeat was received by vCenter.", + "type": "string" + }, + "discoveryStatus": { + "description": "The VCenter discovery status.", + "type": "string" + }, + "processServerId": { + "description": "The process server Id.", + "type": "string" + }, + "ipAddress": { + "description": "The IP address of the vCenter.", + "type": "string" + }, + "infrastructureId": { + "description": "The infrastructure Id of vCenter.", + "type": "string" + }, + "port": { + "description": "The port number for discovery.", + "type": "string" + }, + "runAsAccountId": { + "description": "The account Id which has privileges to discover the vCenter.", + "type": "string" + }, + "fabricArmResourceName": { + "description": "The ARM resource name of the fabric containing this VCenter.", + "type": "string" + }, + "healthErrors": { + "description": "The health errors for this VCenter.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthError" + } + } + } + }, + "VersionDetails": { + "description": "Version related details.", + "type": "object", + "properties": { + "version": { + "description": "The agent version.", + "type": "string" + }, + "expiryDate": { + "format": "date-time", + "description": "Version expiry date.", + "type": "string" + }, + "status": { + "description": "A value indicating whether security update required.", + "enum": [ + "Supported", + "NotSupported", + "Deprecated", + "UpdateRequired", + "SecurityUpdateRequired" + ], + "type": "string", + "x-ms-enum": { + "name": "AgentVersionStatus", + "modelAsString": true + } + } + } + }, + "VirtualMachineTaskDetails": { + "description": "This class represents the virtual machine task details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TaskTypeDetails" + } + ], + "properties": { + "skippedReason": { + "description": "The skipped reason.", + "type": "string" + }, + "skippedReasonString": { + "description": "The skipped reason string.", + "type": "string" + }, + "jobTask": { + "$ref": "#/definitions/JobEntity", + "description": "The job entity." + } + }, + "x-ms-discriminator-value": "VirtualMachineTaskDetails" + }, + "VmmDetails": { + "description": "VMM fabric specific details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/FabricSpecificDetails" + } + ], + "properties": {}, + "x-ms-discriminator-value": "VMM" + }, + "VmmToAzureCreateNetworkMappingInput": { + "description": "Create network mappings input properties/behavior specific to Vmm to Azure Network mapping.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/FabricSpecificCreateNetworkMappingInput" + } + ], + "properties": {}, + "x-ms-discriminator-value": "VmmToAzure" + }, + "VmmToAzureNetworkMappingSettings": { + "description": "E2A Network Mapping fabric specific settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/NetworkMappingFabricSpecificSettings" + } + ], + "properties": {}, + "x-ms-discriminator-value": "VmmToAzure" + }, + "VmmToAzureUpdateNetworkMappingInput": { + "description": "Update network mappings input properties/behavior specific to vmm to azure.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/FabricSpecificUpdateNetworkMappingInput" + } + ], + "properties": {}, + "x-ms-discriminator-value": "VmmToAzure" + }, + "VmmToVmmCreateNetworkMappingInput": { + "description": "Create network mappings input properties/behavior specific to vmm to vmm Network mapping.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/FabricSpecificCreateNetworkMappingInput" + } + ], + "properties": {}, + "x-ms-discriminator-value": "VmmToVmm" + }, + "VmmToVmmNetworkMappingSettings": { + "description": "E2E Network Mapping fabric specific settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/NetworkMappingFabricSpecificSettings" + } + ], + "properties": {}, + "x-ms-discriminator-value": "VmmToVmm" + }, + "VmmToVmmUpdateNetworkMappingInput": { + "description": "Update network mappings input properties/behavior specific to vmm to vmm.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/FabricSpecificUpdateNetworkMappingInput" + } + ], + "properties": {}, + "x-ms-discriminator-value": "VmmToVmm" + }, + "VmmVirtualMachineDetails": { + "description": "VMM fabric provider specific VM settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ConfigurationSettings" + } + ], + "properties": { + "sourceItemId": { + "description": "The source id of the object.", + "type": "string" + }, + "generation": { + "description": "The id of the object in fabric.", + "type": "string" + }, + "osDetails": { + "$ref": "#/definitions/OSDetails", + "description": "The Last replication time." + }, + "diskDetails": { + "description": "The Last successful failover time.", + "type": "array", + "items": { + "$ref": "#/definitions/DiskDetails" + } + }, + "hasPhysicalDisk": { + "description": "A value indicating whether the VM has a physical disk attached. String value of {SrsDataContract.PresenceStatus} enum.", + "enum": [ + "Unknown", + "Present", + "NotPresent" + ], + "type": "string", + "x-ms-enum": { + "name": "PresenceStatus", + "modelAsString": true + } + }, + "hasFibreChannelAdapter": { + "description": "A value indicating whether the VM has a fibre channel adapter attached. String value of {SrsDataContract.PresenceStatus} enum.", + "enum": [ + "Unknown", + "Present", + "NotPresent" + ], + "type": "string", + "x-ms-enum": { + "name": "PresenceStatus", + "modelAsString": true + } + }, + "hasSharedVhd": { + "description": "A value indicating whether the VM has a shared VHD attached. String value of {SrsDataContract.PresenceStatus} enum.", + "enum": [ + "Unknown", + "Present", + "NotPresent" + ], + "type": "string", + "x-ms-enum": { + "name": "PresenceStatus", + "modelAsString": true + } + } + }, + "x-ms-discriminator-value": "VmmVirtualMachine" + }, + "VMNicDetails": { + "description": "Hyper V VM network details.", + "type": "object", + "properties": { + "nicId": { + "description": "The nic Id.", + "type": "string" + }, + "replicaNicId": { + "description": "The replica nic Id.", + "type": "string" + }, + "sourceNicArmId": { + "description": "The source nic ARM Id.", + "type": "string" + }, + "vMSubnetName": { + "description": "VM subnet name.", + "type": "string" + }, + "vMNetworkName": { + "description": "VM network name.", + "type": "string" + }, + "recoveryVMNetworkId": { + "description": "Recovery VM network Id.", + "type": "string" + }, + "recoveryVMSubnetName": { + "description": "Recovery VM subnet name.", + "type": "string" + }, + "ipAddressType": { + "description": "Ip address type.", + "type": "string" + }, + "primaryNicStaticIPAddress": { + "description": "Primary nic static IP address.", + "type": "string" + }, + "replicaNicStaticIPAddress": { + "description": "Replica nic static IP address.", + "type": "string" + }, + "selectionType": { + "description": "Selection type for failover.", + "type": "string" + }, + "recoveryNicIpAddressType": { + "description": "IP allocation type for recovery VM.", + "type": "string" + }, + "recoveryPublicIpAddressId": { + "description": "The id of the public IP address resource associated with the NIC.", + "type": "string" + }, + "recoveryNetworkSecurityGroupId": { + "description": "The id of the NSG associated with the NIC.", + "type": "string" + }, + "recoveryLBBackendAddressPoolIds": { + "description": "The target backend address pools for the NIC.", + "type": "array", + "items": { + "type": "string" + } + }, + "enableAcceleratedNetworkingOnRecovery": { + "description": "A value indicating whether the NIC has accelerated networking enabled.", + "type": "boolean" + }, + "tfoVMNetworkId": { + "description": "The network to be used by NIC during test failover.", + "type": "string" + }, + "tfoVMSubnetName": { + "description": "The subnet to be used by NIC during test failover.", + "type": "string" + }, + "tfoNetworkSecurityGroupId": { + "description": "The NSG to be used by NIC during test failover.", + "type": "string" + }, + "enableAcceleratedNetworkingOnTfo": { + "description": "Whether the test failover NIC has accelerated networking enabled.", + "type": "boolean" + }, + "tfoIPConfigs": { + "description": "The IP configurations to be used by NIC during test failover.", + "type": "array", + "items": { + "$ref": "#/definitions/IPConfig" + } + }, + "recoveryNicName": { + "description": "The name of the NIC to be used when creating target NICs.", + "type": "string" + }, + "recoveryNicResourceGroupName": { + "description": "The resource group of the NIC to be used when creating target NICs.", + "type": "string" + }, + "reuseExistingNic": { + "description": "A value indicating whether an existing NIC is allowed to be reused during failover subject to availability.", + "type": "boolean", + "default": false + }, + "tfoRecoveryNicName": { + "description": "The name of the NIC to be used when creating target NICs in TFO.", + "type": "string" + }, + "tfoRecoveryNicResourceGroupName": { + "description": "The resource group of the NIC to be used when creating target NICs in TFO.", + "type": "string" + }, + "tfoReuseExistingNic": { + "description": "A value indicating whether an existing NIC is allowed to be reused during test failover subject to availability.", + "type": "boolean", + "default": false + } + } + }, + "VMNicInputDetails": { + "description": "Hyper V VM network input details.", + "type": "object", + "properties": { + "nicId": { + "description": "The nic Id.", + "type": "string" + }, + "recoveryVMSubnetName": { + "description": "Recovery VM subnet name.", + "type": "string" + }, + "replicaNicStaticIPAddress": { + "description": "Replica nic static IP address.", + "type": "string" + }, + "selectionType": { + "description": "Selection type for failover.", + "type": "string" + }, + "recoveryPublicIpAddressId": { + "description": "The id of the public IP address resource associated with the NIC.", + "type": "string" + }, + "recoveryNetworkSecurityGroupId": { + "description": "The id of the NSG associated with the NIC.", + "type": "string" + }, + "recoveryLBBackendAddressPoolIds": { + "description": "The target backend address pools for the NIC.", + "type": "array", + "items": { + "type": "string" + } + }, + "enableAcceleratedNetworkingOnRecovery": { + "description": "Whether the NIC has accelerated networking enabled.", + "type": "boolean" + }, + "tfoVMSubnetName": { + "description": "The subnet to be used by NIC during test failover.", + "type": "string" + }, + "tfoNetworkSecurityGroupId": { + "description": "The NSG to be used by NIC during test failover.", + "type": "string" + }, + "enableAcceleratedNetworkingOnTfo": { + "description": "Whether the test NIC has accelerated networking enabled.", + "type": "boolean" + }, + "tfoIPConfigs": { + "description": "The IP configurations to be used by NIC during test failover.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/IPConfig" + } + }, + "recoveryNicName": { + "description": "The name of the NIC to be used when creating target NICs.", + "type": "string" + }, + "recoveryNicResourceGroupName": { + "description": "The resource group of the NIC to be used when creating target NICs.", + "type": "string" + }, + "reuseExistingNic": { + "description": "A value indicating whether an existing NIC is allowed to be reused during failover subject to availability.", + "type": "boolean", + "default": false + }, + "tfoNicName": { + "description": "The name of the NIC to be used when creating target NICs in TFO.", + "type": "string" + }, + "tfoNicResourceGroupName": { + "description": "The resource group of the NIC to be used when creating target NICs in TFO.", + "type": "string" + }, + "tfoReuseExistingNic": { + "description": "A value indicating whether an existing NIC is allowed to be reused during test failover subject to availability.", + "type": "boolean", + "default": false + } + } + }, + "VmNicUpdatesTaskDetails": { + "description": "This class represents the vm NicUpdates task details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TaskTypeDetails" + } + ], + "properties": { + "vmId": { + "description": "Virtual machine Id.", + "type": "string" + }, + "nicId": { + "description": "Nic Id.", + "type": "string" + }, + "name": { + "description": "Name of the Nic.", + "type": "string" + } + }, + "x-ms-discriminator-value": "VmNicUpdatesTaskDetails" + }, + "VMwareCbtContainerCreationInput": { + "description": "VMwareCbt container creation input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ReplicationProviderSpecificContainerCreationInput" + } + ], + "properties": {}, + "x-ms-discriminator-value": "6c7da455-506f-43ff-a16a-8eb101aebb70" + }, + "VMwareCbtContainerMappingInput": { + "description": "VMwareCbt container mapping input.", + "required": [ + "keyVaultId", + "keyVaultUri", + "storageAccountId", + "storageAccountSasSecretName", + "serviceBusConnectionStringSecretName", + "targetLocation" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ReplicationProviderSpecificContainerMappingInput" + } + ], + "properties": { + "keyVaultId": { + "description": "The target key vault ARM Id.", + "type": "string" + }, + "keyVaultUri": { + "description": "The target key vault URL.", + "type": "string" + }, + "storageAccountId": { + "description": "The storage account ARM Id.", + "type": "string" + }, + "storageAccountSasSecretName": { + "description": "The secret name of the storage account.", + "type": "string" + }, + "serviceBusConnectionStringSecretName": { + "description": "The secret name of the service bus connection string.", + "type": "string" + }, + "targetLocation": { + "description": "The target location.", + "type": "string" + } + }, + "x-ms-discriminator-value": "VMwareCbt" + }, + "VMwareCbtDiskInput": { + "description": "VMwareCbt disk input.", + "required": [ + "diskId", + "isOSDisk", + "logStorageAccountId", + "logStorageAccountSasSecretName" + ], + "type": "object", + "properties": { + "diskId": { + "description": "The disk Id.", + "type": "string" + }, + "isOSDisk": { + "description": "A value indicating whether the disk is the OS disk.", + "type": "string" + }, + "logStorageAccountId": { + "description": "The log storage account ARM Id.", + "type": "string" + }, + "logStorageAccountSasSecretName": { + "description": "The key vault secret name of the log storage account.", + "type": "string" + }, + "diskType": { + "description": "The disk type.", + "enum": [ + "Standard_LRS", + "Premium_LRS", + "StandardSSD_LRS" + ], + "type": "string", + "x-ms-enum": { + "name": "DiskAccountType", + "modelAsString": true + } + } + } + }, + "VMwareCbtEnableMigrationInput": { + "description": "VMwareCbt specific enable migration input.", + "required": [ + "vmwareMachineId", + "disksToInclude", + "dataMoverRunAsAccountId", + "snapshotRunAsAccountId", + "targetResourceGroupId", + "targetNetworkId", + "instanceType" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/EnableMigrationProviderSpecificInput" + } + ], + "properties": { + "vmwareMachineId": { + "description": "The ARM Id of the VM discovered in VMware.", + "type": "string" + }, + "disksToInclude": { + "description": "The disks to include list.", + "type": "array", + "items": { + "$ref": "#/definitions/VMwareCbtDiskInput" + } + }, + "licenseType": { + "description": "License type.", + "enum": [ + "NotSpecified", + "NoLicenseType", + "WindowsServer" + ], + "type": "string", + "x-ms-enum": { + "name": "LicenseType", + "modelAsString": true + } + }, + "dataMoverRunAsAccountId": { + "description": "The data mover RunAs account Id.", + "type": "string" + }, + "snapshotRunAsAccountId": { + "description": "The snapshot RunAs account Id.", + "type": "string" + }, + "targetVmName": { + "description": "The target VM name.", + "type": "string" + }, + "targetVmSize": { + "description": "The target VM size.", + "type": "string" + }, + "targetResourceGroupId": { + "description": "The target resource group ARM Id.", + "type": "string" + }, + "targetNetworkId": { + "description": "The target network ARM Id.", + "type": "string" + }, + "targetSubnetName": { + "description": "The target subnet name.", + "type": "string" + }, + "targetAvailabilitySetId": { + "description": "The target availability set ARM Id.", + "type": "string" + }, + "targetBootDiagnosticsStorageAccountId": { + "description": "The target boot diagnostics storage account ARM Id.", + "type": "string" + } + }, + "x-ms-discriminator-value": "VMwareCbt" + }, + "VMwareCbtMigrateInput": { + "description": "VMwareCbt specific migrate input.", + "required": [ + "performShutdown", + "instanceType" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/MigrateProviderSpecificInput" + } + ], + "properties": { + "performShutdown": { + "description": "A value indicating whether VM is to be shutdown.", + "type": "string" + } + }, + "x-ms-discriminator-value": "VMwareCbt" + }, + "VMwareCbtMigrationDetails": { + "description": "VMwareCbt provider specific settings", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/MigrationProviderSpecificSettings" + } + ], + "properties": { + "vmwareMachineId": { + "description": "The ARM Id of the VM discovered in VMware.", + "type": "string", + "readOnly": true + }, + "osType": { + "description": "The type of the OS on the VM.", + "type": "string", + "readOnly": true + }, + "licenseType": { + "description": "License Type of the VM to be used.", + "type": "string" + }, + "dataMoverRunAsAccountId": { + "description": "The data mover RunAs account Id.", + "type": "string", + "readOnly": true + }, + "snapshotRunAsAccountId": { + "description": "The snapshot RunAs account Id.", + "type": "string", + "readOnly": true + }, + "targetVmName": { + "description": "Target VM name.", + "type": "string" + }, + "targetVmSize": { + "description": "The target VM size.", + "type": "string" + }, + "targetLocation": { + "description": "The target location.", + "type": "string", + "readOnly": true + }, + "targetResourceGroupId": { + "description": "The target resource group Id.", + "type": "string" + }, + "targetAvailabilitySetId": { + "description": "The target availability set Id.", + "type": "string" + }, + "targetBootDiagnosticsStorageAccountId": { + "description": "The target boot diagnostics storage account ARM Id.", + "type": "string" + }, + "protectedDisks": { + "description": "The list of protected disks.", + "type": "array", + "items": { + "$ref": "#/definitions/VMwareCbtProtectedDiskDetails" + } + }, + "targetNetworkId": { + "description": "The target network Id.", + "type": "string" + }, + "vmNics": { + "description": "The network details.", + "type": "array", + "items": { + "$ref": "#/definitions/VMwareCbtNicDetails" + } + }, + "migrationRecoveryPointId": { + "description": "The recovery point Id to which the VM was migrated.", + "type": "string", + "readOnly": true + }, + "lastRecoveryPointReceived": { + "format": "date-time", + "description": "The last recovery point received time.", + "type": "string", + "readOnly": true + } + }, + "x-ms-discriminator-value": "VMwareCbt" + }, + "VMwareCbtNicDetails": { + "description": "VMwareCbt NIC details.", + "type": "object", + "properties": { + "nicId": { + "description": "The NIC Id.", + "type": "string", + "readOnly": true + }, + "isPrimaryNic": { + "description": "A value indicating whether this is the primary NIC.", + "type": "string" + }, + "sourceIPAddress": { + "description": "The source IP address.", + "type": "string", + "readOnly": true + }, + "sourceIPAddressType": { + "description": "The source IP address type.", + "enum": [ + "Dynamic", + "Static" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "EthernetAddressType", + "modelAsString": true + } + }, + "sourceNetworkId": { + "description": "Source network Id.", + "type": "string", + "readOnly": true + }, + "targetIPAddress": { + "description": "The target IP address.", + "type": "string" + }, + "targetIPAddressType": { + "description": "The target IP address type.", + "enum": [ + "Dynamic", + "Static" + ], + "type": "string", + "x-ms-enum": { + "name": "EthernetAddressType", + "modelAsString": true + } + }, + "targetSubnetName": { + "description": "Target subnet name.", + "type": "string" + }, + "isSelectedForMigration": { + "description": "A value indicating whether this NIC is selected for migration.", + "type": "string" + } + } + }, + "VMwareCbtNicInput": { + "description": "VMwareCbt NIC input.", + "required": [ + "nicId", + "isPrimaryNic" + ], + "type": "object", + "properties": { + "nicId": { + "description": "The NIC Id.", + "type": "string" + }, + "isPrimaryNic": { + "description": "A value indicating whether this is the primary NIC.", + "type": "string" + }, + "targetSubnetName": { + "description": "Target subnet name.", + "type": "string" + }, + "targetStaticIPAddress": { + "description": "The static IP address.", + "type": "string" + }, + "isSelectedForMigration": { + "description": "A value indicating whether this NIC is selected for migration.", + "type": "string" + } + } + }, + "VMwareCbtPolicyCreationInput": { + "description": "VMware Cbt policy creation input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/PolicyProviderSpecificInput" + } + ], + "properties": { + "recoveryPointHistoryInMinutes": { + "format": "int32", + "description": "The duration in minutes until which the recovery points need to be stored.", + "type": "integer" + }, + "crashConsistentFrequencyInMinutes": { + "format": "int32", + "description": "The crash consistent snapshot frequency (in minutes).", + "type": "integer" + }, + "appConsistentFrequencyInMinutes": { + "format": "int32", + "description": "The app consistent snapshot frequency (in minutes).", + "type": "integer" + } + }, + "x-ms-discriminator-value": "VMwareCbt" + }, + "VmwareCbtPolicyDetails": { + "description": "VMware Cbt specific policy details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/PolicyProviderSpecificDetails" + } + ], + "properties": { + "recoveryPointHistoryInMinutes": { + "format": "int32", + "description": "The duration in minutes until which the recovery points need to be stored.", + "type": "integer" + }, + "appConsistentFrequencyInMinutes": { + "format": "int32", + "description": "The app consistent snapshot frequency in minutes.", + "type": "integer" + }, + "crashConsistentFrequencyInMinutes": { + "format": "int32", + "description": "The crash consistent snapshot frequency in minutes.", + "type": "integer" + } + }, + "x-ms-discriminator-value": "VMwareCbt" + }, + "VMwareCbtProtectedDiskDetails": { + "description": "VMwareCbt protected disk details.", + "type": "object", + "properties": { + "diskId": { + "description": "The disk id.", + "type": "string", + "readOnly": true + }, + "diskName": { + "description": "The disk name.", + "type": "string", + "readOnly": true + }, + "diskPath": { + "description": "The disk path.", + "type": "string", + "readOnly": true + }, + "isOSDisk": { + "description": "A value indicating whether the disk is the OS disk.", + "type": "string", + "readOnly": true + }, + "capacityInBytes": { + "format": "int64", + "description": "The disk capacity in bytes.", + "type": "integer", + "readOnly": true + }, + "logStorageAccountId": { + "description": "The log storage account ARM Id.", + "type": "string", + "readOnly": true + }, + "logStorageAccountSasSecretName": { + "description": "The key vault secret name of the log storage account.", + "type": "string", + "readOnly": true + }, + "seedManagedDiskId": { + "description": "The ARM Id of the seed managed disk.", + "type": "string", + "readOnly": true + }, + "targetManagedDiskId": { + "description": "The ARM Id of the target managed disk.", + "type": "string", + "readOnly": true + }, + "diskType": { + "description": "The disk type.", + "enum": [ + "Standard_LRS", + "Premium_LRS", + "StandardSSD_LRS" + ], + "type": "string", + "x-ms-enum": { + "name": "DiskType", + "modelAsString": true + } + } + } + }, + "VMwareCbtProtectionContainerMappingDetails": { + "description": "VMwareCbt provider specific container mapping details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectionContainerMappingProviderSpecificDetails" + } + ], + "properties": { + "keyVaultId": { + "description": "The target key vault ARM Id.", + "type": "string", + "readOnly": true + }, + "keyVaultUri": { + "description": "The target key vault URI.", + "type": "string", + "readOnly": true + }, + "storageAccountId": { + "description": "The storage account ARM Id.", + "type": "string", + "readOnly": true + }, + "storageAccountSasSecretName": { + "description": "The secret name of the storage account.", + "type": "string", + "readOnly": true + }, + "serviceBusConnectionStringSecretName": { + "description": "The secret name of the service bus connection string.", + "type": "string", + "readOnly": true + }, + "targetLocation": { + "description": "The target location.", + "type": "string", + "readOnly": true + } + }, + "x-ms-discriminator-value": "VMwareCbt" + }, + "VMwareCbtTestMigrateInput": { + "description": "VMwareCbt specific test migrate input.", + "required": [ + "recoveryPointId", + "networkId", + "instanceType" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TestMigrateProviderSpecificInput" + } + ], + "properties": { + "recoveryPointId": { + "description": "The recovery point Id.", + "type": "string" + }, + "networkId": { + "description": "The test network Id.", + "type": "string" + } + }, + "x-ms-discriminator-value": "VMwareCbt" + }, + "VMwareCbtUpdateMigrationItemInput": { + "description": "VMwareCbt specific update migration item input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/UpdateMigrationItemProviderSpecificInput" + } + ], + "properties": { + "targetVmName": { + "description": "The target VM name.", + "type": "string" + }, + "targetVmSize": { + "description": "The target VM size.", + "type": "string" + }, + "targetResourceGroupId": { + "description": "The target resource group ARM Id.", + "type": "string" + }, + "targetAvailabilitySetId": { + "description": "The target availability set ARM Id.", + "type": "string" + }, + "targetBootDiagnosticsStorageAccountId": { + "description": "The target boot diagnostics storage account ARM Id.", + "type": "string" + }, + "targetNetworkId": { + "description": "The target network ARM Id.", + "type": "string" + }, + "vmNics": { + "description": "The list of NIC details.", + "type": "array", + "items": { + "$ref": "#/definitions/VMwareCbtNicInput" + } + }, + "licenseType": { + "description": "The license type.", + "enum": [ + "NotSpecified", + "NoLicenseType", + "WindowsServer" + ], + "type": "string", + "x-ms-enum": { + "name": "LicenseType", + "modelAsString": true + } + } + }, + "x-ms-discriminator-value": "VMwareCbt" + }, + "VMwareDetails": { + "description": "Store the fabric details specific to the VMware fabric.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/FabricSpecificDetails" + } + ], + "properties": { + "processServers": { + "description": "The list of Process Servers associated with the fabric.", + "type": "array", + "items": { + "$ref": "#/definitions/ProcessServer" + } + }, + "masterTargetServers": { + "description": "The list of Master Target servers associated with the fabric.", + "type": "array", + "items": { + "$ref": "#/definitions/MasterTargetServer" + } + }, + "runAsAccounts": { + "description": "The list of run as accounts created on the server.", + "type": "array", + "items": { + "$ref": "#/definitions/RunAsAccount" + } + }, + "replicationPairCount": { + "description": "The number of replication pairs configured in this CS.", + "type": "string" + }, + "processServerCount": { + "description": "The number of process servers.", + "type": "string" + }, + "agentCount": { + "description": "The number of source and target servers configured to talk to this CS.", + "type": "string" + }, + "protectedServers": { + "description": "The number of protected servers.", + "type": "string" + }, + "systemLoad": { + "description": "The percentage of the system load.", + "type": "string" + }, + "systemLoadStatus": { + "description": "The system load status.", + "type": "string" + }, + "cpuLoad": { + "description": "The percentage of the CPU load.", + "type": "string" + }, + "cpuLoadStatus": { + "description": "The CPU load status.", + "type": "string" + }, + "totalMemoryInBytes": { + "format": "int64", + "description": "The total memory.", + "type": "integer" + }, + "availableMemoryInBytes": { + "format": "int64", + "description": "The available memory.", + "type": "integer" + }, + "memoryUsageStatus": { + "description": "The memory usage status.", + "type": "string" + }, + "totalSpaceInBytes": { + "format": "int64", + "description": "The total space.", + "type": "integer" + }, + "availableSpaceInBytes": { + "format": "int64", + "description": "The available space.", + "type": "integer" + }, + "spaceUsageStatus": { + "description": "The space usage status.", + "type": "string" + }, + "webLoad": { + "description": "The web load.", + "type": "string" + }, + "webLoadStatus": { + "description": "The web load status.", + "type": "string" + }, + "databaseServerLoad": { + "description": "The database server load.", + "type": "string" + }, + "databaseServerLoadStatus": { + "description": "The database server load status.", + "type": "string" + }, + "csServiceStatus": { + "description": "The CS service status.", + "type": "string" + }, + "ipAddress": { + "description": "The IP address.", + "type": "string" + }, + "agentVersion": { + "description": "The agent Version.", + "type": "string" + }, + "hostName": { + "description": "The host name.", + "type": "string" + }, + "lastHeartbeat": { + "format": "date-time", + "description": "The last heartbeat received from CS server.", + "type": "string" + }, + "versionStatus": { + "description": "Version status", + "type": "string" + }, + "sslCertExpiryDate": { + "format": "date-time", + "description": "CS SSL cert expiry date.", + "type": "string" + }, + "sslCertExpiryRemainingDays": { + "format": "int32", + "description": "CS SSL cert expiry date.", + "type": "integer" + }, + "psTemplateVersion": { + "description": "PS template version.", + "type": "string" + }, + "agentExpiryDate": { + "format": "date-time", + "description": "Agent expiry date.", + "type": "string" + }, + "agentVersionDetails": { + "$ref": "#/definitions/VersionDetails", + "description": "The agent version details." + } + }, + "x-ms-discriminator-value": "VMware" + }, + "VMwareV2FabricCreationInput": { + "description": "VMwareV2 fabric provider specific settings.", + "required": [ + "vmwareSiteId", + "migrationSolutionId" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/FabricSpecificCreationInput" + } + ], + "properties": { + "vmwareSiteId": { + "description": "The ARM Id of the VMware site.", + "type": "string" + }, + "migrationSolutionId": { + "description": "The ARM Id of the migration solution.", + "type": "string" + } + }, + "x-ms-discriminator-value": "VMwareV2" + }, + "VMwareV2FabricSpecificDetails": { + "description": "VMwareV2 fabric specific details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/FabricSpecificDetails" + } + ], + "properties": { + "vmwareSiteId": { + "description": "The ARM Id of the VMware site.", + "type": "string", + "readOnly": true + }, + "migrationSolutionId": { + "description": "The Migration solution ARM Id.", + "type": "string", + "readOnly": true + }, + "serviceEndpoint": { + "description": "The service endpoint.", + "type": "string", + "readOnly": true + }, + "serviceResourceId": { + "description": "The service resource Id.", + "type": "string", + "readOnly": true + } + }, + "x-ms-discriminator-value": "VMwareV2" + }, + "VMwareVirtualMachineDetails": { + "description": "VMware provider specific settings", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ConfigurationSettings" + } + ], + "properties": { + "agentGeneratedId": { + "description": "The ID generated by the InMage agent after it gets installed on guest. This is the ID to be used during InMage CreateProtection.", + "type": "string" + }, + "agentInstalled": { + "description": "The value indicating if InMage scout agent is installed on guest.", + "type": "string" + }, + "osType": { + "description": "The OsType installed on VM.", + "type": "string" + }, + "agentVersion": { + "description": "The agent version.", + "type": "string" + }, + "ipAddress": { + "description": "The IP address.", + "type": "string" + }, + "poweredOn": { + "description": "The value indicating whether VM is powered on.", + "type": "string" + }, + "vCenterInfrastructureId": { + "description": "The VCenter infrastructure Id.", + "type": "string" + }, + "discoveryType": { + "description": "A value indicating the discovery type of the machine. Value can be vCenter or physical.", + "type": "string" + }, + "diskDetails": { + "description": "The disk details.", + "type": "array", + "items": { + "$ref": "#/definitions/InMageDiskDetails" + } + }, + "validationErrors": { + "description": "The validation errors.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthError" + } + } + }, + "x-ms-discriminator-value": "VMwareVirtualMachine" + } + }, + "parameters": { + "SubscriptionId": { + "name": "subscriptionId", + "in": "path", + "description": "The subscription Id.", + "required": true, + "type": "string" + }, + "ResourceGroupName": { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group where the recovery services vault is present.", + "required": true, + "x-ms-parameter-location": "client", + "type": "string" + }, + "ResourceName": { + "name": "resourceName", + "in": "path", + "description": "The name of the recovery services vault.", + "required": true, + "x-ms-parameter-location": "client", + "type": "string" + }, + "ApiVersion": { + "name": "api-version", + "in": "query", + "description": "Client Api Version.", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account." + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/readme.azureresourceschema.md b/specification/recoveryservicessiterecovery/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 4e9dff193db3..000000000000 --- a/specification/recoveryservicessiterecovery/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,48 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-recoveryservices-2018-07-10 - - tag: schema-recoveryservices-2018-01-10 - - tag: schema-recoveryservices-2016-08-10 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-recoveryservices-2018-07-10 and azureresourceschema - -``` yaml $(tag) == 'schema-recoveryservices-2018-07-10' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.RecoveryServices/stable/2018-07-10/service.json - -``` - -### Tag: schema-recoveryservices-2018-01-10 and azureresourceschema - -``` yaml $(tag) == 'schema-recoveryservices-2018-01-10' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.RecoveryServices/stable/2018-01-10/service.json - -``` - -### Tag: schema-recoveryservices-2016-08-10 and azureresourceschema - -``` yaml $(tag) == 'schema-recoveryservices-2016-08-10' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.RecoveryServices/stable/2016-08-10/service.json - -``` diff --git a/specification/recoveryservicessiterecovery/resource-manager/readme.go.md b/specification/recoveryservicessiterecovery/resource-manager/readme.go.md index e6d7500824d8..64290e8aa1ed 100644 --- a/specification/recoveryservicessiterecovery/resource-manager/readme.go.md +++ b/specification/recoveryservicessiterecovery/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION clear-output-folder: true namespace: siterecovery ``` @@ -13,11 +13,21 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-2021-02 - tag: package-2018-07 - tag: package-2018-01 - tag: package-2016-08 ``` +### Tag: package-2021-02 and go + +These settings apply only when `--tag=package-2021-02 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag)=='package-2021-02' && $(go) +output-folder: $(go-sdk-folder)/services/recoveryservices/mgmt/2021-02-10/$(namespace) +``` + ### Tag: package-2018-07 and go These settings apply only when `--tag=package-2018-07 --go` is specified on the command line. diff --git a/specification/recoveryservicessiterecovery/resource-manager/readme.md b/specification/recoveryservicessiterecovery/resource-manager/readme.md index 67390f8243b7..95586209c9a7 100644 --- a/specification/recoveryservicessiterecovery/resource-manager/readme.md +++ b/specification/recoveryservicessiterecovery/resource-manager/readme.md @@ -28,7 +28,22 @@ directive: - from: service.json suppress: R4010 - reason: Testing purpose + reason: Testing purpose + + - from: service.json + suppress: + - R4009 + reason: suppressing system data for 2021-02-10 + + - from: service.json + suppress: + - R4010 + reason: suppressing default error response as ASR is an old service and implements error response in a different format. + + - from: service.json + suppress: + - R4011 + reason: service implements 204 for delete and DeleteOperationResponses error was falsely raised. ``` ## Configuration @@ -39,21 +54,37 @@ These are the global settings for the RecoveryServicesSiteRecovery API. ``` yaml openapi-type: arm -tag: package-2018-07 - +tag: package-2021-03 directive: - where: - $.paths suppress: - UniqueResourcePaths - +``` + + +### Tag: package-2021-03 + +These settings apply only when `--tag=package-2021-03` is specified on the command line. + +```yaml $(tag) == 'package-2021-03' +input-file: + - Microsoft.RecoveryServices/stable/2021-03-01/service.json +``` +### Tag: package-2021-02 + +These settings apply only when `--tag=package-2021-02` is specified on the command line. + +```yaml $(tag) == 'package-2021-02' +input-file: + - Microsoft.RecoveryServices/stable/2021-02-10/service.json ``` ### Tag: package-2018-07 These settings apply only when `--tag=package-2018-07` is specified on the command line. -```yaml $(tag) == 'package-2018-07' +``` yaml $(tag) == 'package-2018-07' input-file: - Microsoft.RecoveryServices/stable/2018-07-10/service.json ``` @@ -62,7 +93,7 @@ input-file: These settings apply only when `--tag=package-2018-01` is specified on the command line. -```yaml $(tag) == 'package-2018-01' +``` yaml $(tag) == 'package-2018-01' input-file: - Microsoft.RecoveryServices/stable/2018-01-10/service.json ``` @@ -97,8 +128,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_recovery_services_site_recovery'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js recoveryservicessiterecovery/resource-manager ``` ## C# @@ -124,7 +153,3 @@ See configuration in [readme.go.md](./readme.go.md) See configuration in [readme.java.md](./readme.java.md) -## AzureResourceSchema - -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) - diff --git a/specification/redhatopenshift/resource-manager/readme.azureresourceschema.md b/specification/redhatopenshift/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 0dcb1c1d1fea..000000000000 --- a/specification/redhatopenshift/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,24 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-redhatopenshift-2020-04-30 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-redhatopenshift-2020-04-30 and azureresourceschema - -``` yaml $(tag) == 'schema-redhatopenshift-2020-04-30' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.RedHatOpenShift/stable/2020-04-30/redhatopenshift.json - -``` diff --git a/specification/redhatopenshift/resource-manager/readme.go.md b/specification/redhatopenshift/resource-manager/readme.go.md index a43d0fcd9c52..fa9ec1b4bd54 100644 --- a/specification/redhatopenshift/resource-manager/readme.go.md +++ b/specification/redhatopenshift/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: redhatopenshift clear-output-folder: true ``` diff --git a/specification/redhatopenshift/resource-manager/readme.md b/specification/redhatopenshift/resource-manager/readme.md index 291be7e51d7c..6533fbb8185b 100644 --- a/specification/redhatopenshift/resource-manager/readme.md +++ b/specification/redhatopenshift/resource-manager/readme.md @@ -52,10 +52,9 @@ swagger-to-sdk: - repo: azure-sdk-for-python after_scripts: - python ./scripts/multiapi_init_gen.py azure-mgmt-redhatopenshift + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-go - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js redhatopenshift/resource-manager ``` ## Go @@ -66,7 +65,5 @@ See configuration in [readme.go.md](./readme.go.md) See configuration in [readme.python.md](./readme.python.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/redhatopenshift/resource-manager/readme.python.md b/specification/redhatopenshift/resource-manager/readme.python.md index 9e505b34be50..f321a62ff14e 100644 --- a/specification/redhatopenshift/resource-manager/readme.python.md +++ b/specification/redhatopenshift/resource-manager/readme.python.md @@ -8,6 +8,7 @@ python: license-header: MICROSOFT_MIT_NO_VERSION payload-flattening-threshold: 2 package-name: azure-mgmt-redhatopenshift + package-version: 1.0.0b1 clear-output-folder: true no-namespace-folders: true ``` @@ -15,6 +16,7 @@ python: azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION package-name: azure-mgmt-redhatopenshift +package-version: 1.0.0b1 clear-output-folder: true no-namespace-folders: true ``` diff --git a/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheCheckNameAvailability.json b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheCheckNameAvailability.json new file mode 100644 index 000000000000..396c7c845879 --- /dev/null +++ b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheCheckNameAvailability.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-12-01", + "subscriptionId": "subid", + "parameters": { + "type": "Microsoft.Cache/Redis", + "name": "cacheName" + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheCreate.json b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheCreate.json new file mode 100644 index 000000000000..b40dae98d390 --- /dev/null +++ b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheCreate.json @@ -0,0 +1,205 @@ +{ + "parameters": { + "name": "cache1", + "resourceGroupName": "rg1", + "api-version": "2020-12-01", + "subscriptionId": "subid", + "parameters": { + "location": "West US", + "zones": [ + "1" + ], + "properties": { + "sku": { + "name": "Premium", + "family": "P", + "capacity": 1 + }, + "redisVersion": "4", + "enableNonSslPort": true, + "shardCount": 2, + "replicasPerPrimary": 2, + "redisConfiguration": { + "maxmemory-policy": "allkeys-lru" + }, + "subnetId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/network1/subnets/subnet1", + "staticIP": "192.168.0.5", + "minimumTlsVersion": "1.2" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/cache1", + "location": "West US", + "zones": [ + "1" + ], + "name": "cache1", + "type": "Microsoft.Cache/Redis", + "tags": {}, + "properties": { + "accessKeys": { + "primaryKey": "", + "secondaryKey": "" + }, + "provisioningState": "Succeeded", + "redisVersion": "4.0.14", + "sku": { + "name": "Premium", + "family": "P", + "capacity": 1 + }, + "enableNonSslPort": false, + "replicasPerMaster": 2, + "replicasPerPrimary": 2, + "redisConfiguration": { + "maxmemory-policy": "allkeys-lru" + }, + "hostName": "cache1.redis.cache.windows.net", + "port": 6379, + "sslPort": 6380, + "minimumTlsVersion": "1.2", + "instances": [ + { + "sslPort": 15000, + "nonSslPort": 13000, + "zone": "1", + "shardId": 0, + "isMaster": true, + "isPrimary": true + }, + { + "sslPort": 15001, + "nonSslPort": 13001, + "zone": "1", + "shardId": 0, + "isMaster": false, + "isPrimary": false + }, + { + "sslPort": 15002, + "nonSslPort": 13002, + "zone": "1", + "shardId": 0, + "isMaster": false, + "isPrimary": false + }, + { + "sslPort": 15003, + "nonSslPort": 13003, + "zone": "1", + "shardId": 1, + "isMaster": true, + "isPrimary": true + }, + { + "sslPort": 15004, + "nonSslPort": 13004, + "zone": "1", + "shardId": 1, + "isMaster": false, + "isPrimary": false + }, + { + "sslPort": 15005, + "nonSslPort": 13005, + "zone": "1", + "shardId": 1, + "isMaster": false, + "isPrimary": false + } + ] + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/cache1", + "location": "West US", + "zones": [ + "1" + ], + "name": "cache1", + "type": "Microsoft.Cache/Redis", + "tags": {}, + "properties": { + "accessKeys": { + "primaryKey": "", + "secondaryKey": "" + }, + "provisioningState": "Succeeded", + "redisVersion": "3.0", + "sku": { + "name": "Premium", + "family": "P", + "capacity": 1 + }, + "enableNonSslPort": false, + "replicasPerMaster": 2, + "replicasPerPrimary": 2, + "redisConfiguration": { + "maxclients": "1000", + "maxmemory-reserved": "50", + "maxmemory-delta": "50" + }, + "hostName": "cache1.redis.cache.windows.net", + "port": 6379, + "sslPort": 6380, + "minimumTlsVersion": "1.2", + "instances": [ + { + "sslPort": 15000, + "nonSslPort": 13000, + "zone": "1", + "shardId": 0, + "isMaster": true, + "isPrimary": true + }, + { + "sslPort": 15001, + "nonSslPort": 13001, + "zone": "1", + "shardId": 0, + "isMaster": false, + "isPrimary": false + }, + { + "sslPort": 15002, + "nonSslPort": 13002, + "zone": "1", + "shardId": 0, + "isMaster": false, + "isPrimary": false + }, + { + "sslPort": 15003, + "nonSslPort": 13003, + "zone": "1", + "shardId": 1, + "isMaster": true, + "isPrimary": true + }, + { + "sslPort": 15004, + "nonSslPort": 13004, + "zone": "1", + "shardId": 1, + "isMaster": false, + "isPrimary": false + }, + { + "sslPort": 15005, + "nonSslPort": 13005, + "zone": "1", + "shardId": 1, + "isMaster": false, + "isPrimary": false + } + ] + } + } + } + } +} diff --git a/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheDelete.json b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheDelete.json new file mode 100644 index 000000000000..ce5ddf5f95ba --- /dev/null +++ b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheDelete.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "name": "cache1", + "resourceGroupName": "rg1", + "api-version": "2020-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Cache/...pathToOperationResult..." + } + }, + "204": {} + } +} diff --git a/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheDeletePrivateEndpointConnection.json b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheDeletePrivateEndpointConnection.json new file mode 100644 index 000000000000..2f74640197ca --- /dev/null +++ b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheDeletePrivateEndpointConnection.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "rgtest01", + "cacheName": "cachetest01", + "privateEndpointConnectionName": "pectest01", + "api-version": "2020-12-01" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheExport.json b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheExport.json new file mode 100644 index 000000000000..53cf078496d2 --- /dev/null +++ b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheExport.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "name": "cache1", + "resourceGroupName": "rg1", + "api-version": "2020-12-01", + "subscriptionId": "subid", + "parameters": { + "format": "RDB", + "prefix": "datadump1", + "container": "https://contosostorage.blob.core.window.net/urltoBlobContainer?sasKeyParameters" + } + }, + "responses": { + "200": {}, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Cache/...pathToOperationResult..." + } + }, + "204": {} + } +} diff --git a/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheFirewallRuleCreate.json b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheFirewallRuleCreate.json new file mode 100644 index 000000000000..10d1d4931f01 --- /dev/null +++ b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheFirewallRuleCreate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "ruleName": "rule1", + "cacheName": "cache1", + "resourceGroupName": "rg1", + "api-version": "2020-12-01", + "subscriptionId": "subid", + "parameters": { + "properties": { + "startIP": "192.168.1.1", + "endIP": "192.168.1.4" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/cache1/firewallRules/rule1", + "name": "cache1/rule1", + "type": "Microsoft.Cache/Redis/firewallRules", + "properties": { + "startIP": "192.168.1.1", + "endIP": "192.168.1.4" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/cache1/firewallRules/rule1", + "name": "cache1/rule1", + "type": "Microsoft.Cache/Redis/firewallRules", + "properties": { + "startIP": "192.168.1.1", + "endIP": "192.168.1.4" + } + } + } + } +} diff --git a/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheFirewallRuleDelete.json b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheFirewallRuleDelete.json new file mode 100644 index 000000000000..9919c4e42f42 --- /dev/null +++ b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheFirewallRuleDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "ruleName": "rule1", + "cacheName": "cache1", + "resourceGroupName": "rg1", + "api-version": "2020-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheFirewallRuleGet.json b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheFirewallRuleGet.json new file mode 100644 index 000000000000..0cf8f861a99d --- /dev/null +++ b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheFirewallRuleGet.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "ruleName": "rule1", + "cacheName": "cache1", + "resourceGroupName": "rg1", + "api-version": "2020-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/cache1/firewallRules/rule1", + "name": "cache1/rule1", + "type": "Microsoft.Cache/Redis/firewallRules", + "properties": { + "startIP": "192.168.1.1", + "endIP": "192.168.1.4" + } + } + } + } +} diff --git a/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheFirewallRulesList.json b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheFirewallRulesList.json new file mode 100644 index 000000000000..8ba66f557a93 --- /dev/null +++ b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheFirewallRulesList.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "cacheName": "cache1", + "resourceGroupName": "rg1", + "api-version": "2020-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/cache1/firewallRules/rule1", + "name": "rule1", + "type": "Microsoft.Cache/Redis/firewallRules", + "properties": { + "startIP": "192.168.1.1", + "endIP": "192.168.1.4" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/cache1/firewallRules/rule2", + "name": "rule2", + "type": "Microsoft.Cache/Redis/firewallRules", + "properties": { + "startIP": "192.169.1.0", + "endIP": "192.169.1.255" + } + } + ] + } + } + } +} diff --git a/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheForceReboot.json b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheForceReboot.json new file mode 100644 index 000000000000..053bd48750e7 --- /dev/null +++ b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheForceReboot.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "name": "cache1", + "resourceGroupName": "rg1", + "api-version": "2020-12-01", + "subscriptionId": "subid", + "parameters": { + "shardId": 0, + "rebootType": "AllNodes", + "ports": [ + 13000, + 15001 + ] + } + }, + "responses": { + "200": { + "body": { + "message": "reboot operation enqueued" + } + } + } +} diff --git a/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheGet.json b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheGet.json new file mode 100644 index 000000000000..12879be27160 --- /dev/null +++ b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheGet.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "name": "cache1", + "resourceGroupName": "rg1", + "api-version": "2020-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/cache1", + "location": "West US", + "name": "cache1", + "type": "Microsoft.Cache/Redis", + "tags": {}, + "properties": { + "provisioningState": "Creating", + "redisVersion": "3.2", + "sku": { + "name": "Premium", + "family": "P", + "capacity": 3 + }, + "enableNonSslPort": true, + "replicasPerMaster": 2, + "replicasPerPrimary": 2, + "redisConfiguration": {}, + "hostName": "cache1.redis.cache.windows.net", + "port": 6379, + "sslPort": 6380, + "linkedServers": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/cache1/linkedServers/cache2" + } + ], + "instances": [ + { + "sslPort": 15000, + "nonSslPort": 13000, + "isMaster": true, + "isPrimary": true + }, + { + "sslPort": 15001, + "nonSslPort": 13001, + "isMaster": false, + "isPrimary": false + }, + { + "sslPort": 15002, + "nonSslPort": 13002, + "isMaster": false, + "isPrimary": false + } + ], + "publicNetworkAccess": "Enabled", + "privateEndpointConnections": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/cache1/privateEndpointConnections/cachePec", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/cachePe" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Please approve my connection", + "actionsRequired": "None" + } + } + } + ] + } + } + } + } +} diff --git a/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheGetPrivateEndpointConnection.json b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheGetPrivateEndpointConnection.json new file mode 100644 index 000000000000..ee988a9fd2e0 --- /dev/null +++ b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheGetPrivateEndpointConnection.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "rgtest01", + "cacheName": "cachetest01", + "privateEndpointConnectionName": "pectest01", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/rgtest01/providers/Microsoft.Cache/Redis/cachetest01/privateEndpointConnections/pectest01", + "name": "pectest01", + "type": "Microsoft.Cache/Redis/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/rgtest01/providers/Microsoft.Network/privateEndpoints/petest01" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheImport.json b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheImport.json new file mode 100644 index 000000000000..54cafd18b4ea --- /dev/null +++ b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheImport.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "name": "cache1", + "resourceGroupName": "rg1", + "api-version": "2020-12-01", + "subscriptionId": "subid", + "parameters": { + "format": "RDB", + "files": [ + "http://fileuris.contoso.com/pathtofile1" + ] + } + }, + "responses": { + "200": {}, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Cache/...pathToOperationResult..." + } + }, + "204": {} + } +} diff --git a/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheLinkedServer_Create.json b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheLinkedServer_Create.json new file mode 100644 index 000000000000..0e3836d97fda --- /dev/null +++ b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheLinkedServer_Create.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "name": "cache1", + "resourceGroupName": "rg1", + "linkedServerName": "cache2", + "api-version": "2020-12-01", + "subscriptionId": "subid", + "parameters": { + "properties": { + "linkedRedisCacheId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/cache2", + "linkedRedisCacheLocation": "West US", + "serverRole": "Secondary" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/cache1/linkedServers/cache2", + "name": "cache2", + "type": "Microsoft.Cache/Redis/linkedServers", + "properties": { + "linkedRedisCacheId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/cache2", + "linkedRedisCacheLocation": "West US", + "provisioningState": "Creating", + "serverRole": "Secondary" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/cache1/linkedServers/cache2", + "name": "cache2", + "type": "Microsoft.Cache/Redis/linkedServers", + "properties": { + "linkedRedisCacheId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/cache2", + "linkedRedisCacheLocation": "West US", + "provisioningState": "Creating", + "serverRole": "Secondary" + } + } + } + } +} diff --git a/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheLinkedServer_Delete.json b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheLinkedServer_Delete.json new file mode 100644 index 000000000000..5342d6c78f9f --- /dev/null +++ b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheLinkedServer_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "name": "cache1", + "resourceGroupName": "rg1", + "linkedServerName": "cache2", + "api-version": "2020-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheLinkedServer_Get.json b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheLinkedServer_Get.json new file mode 100644 index 000000000000..673cb0b2d440 --- /dev/null +++ b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheLinkedServer_Get.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "name": "cache1", + "resourceGroupName": "rg1", + "api-version": "2020-12-01", + "subscriptionId": "subid", + "linkedServerName": "cache2" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/cache1/linkedServers/cache2", + "name": "cache2", + "type": "Microsoft.Cache/Redis/linkedServers", + "properties": { + "linkedRedisCacheId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/cache2", + "linkedRedisCacheLocation": "West US", + "provisioningState": "Succeeded", + "serverRole": "Secondary" + } + } + } + } +} diff --git a/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheLinkedServer_List.json b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheLinkedServer_List.json new file mode 100644 index 000000000000..a47988256af4 --- /dev/null +++ b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheLinkedServer_List.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "name": "cache1", + "resourceGroupName": "rg1", + "api-version": "2020-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/cache1/linkedServers/cache2", + "name": "cache2", + "type": "Microsoft.Cache/Redis/linkedServers", + "properties": { + "linkedRedisCacheId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/cache2", + "linkedRedisCacheLocation": "West US", + "provisioningState": "Succeeded", + "serverRole": "Secondary" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/cache1/linkedServers/cache3", + "name": "cache3", + "type": "Microsoft.Cache/Redis/linkedServers", + "properties": { + "linkedRedisCacheId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/cache3", + "linkedRedisCacheLocation": "West US", + "provisioningState": "Succeeded", + "serverRole": "Secondary" + } + } + ] + } + } +} diff --git a/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheList.json b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheList.json new file mode 100644 index 000000000000..2814791b123b --- /dev/null +++ b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheList.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2020-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/cache1", + "location": "West US", + "name": "cache1", + "type": "Microsoft.Cache/Redis", + "tags": {}, + "properties": { + "provisioningState": "Creating", + "redisVersion": "3.2", + "sku": { + "name": "Standard", + "family": "C", + "capacity": 6 + }, + "enableNonSslPort": true, + "replicasPerMaster": 2, + "replicasPerPrimary": 2, + "redisConfiguration": {}, + "hostName": "cache1.redis.cache.windows.net", + "port": 6379, + "sslPort": 6380, + "instances": [ + { + "sslPort": 15000, + "nonSslPort": 13000, + "isMaster": true, + "isPrimary": true + }, + { + "sslPort": 15001, + "nonSslPort": 13001, + "isMaster": false, + "isPrimary": false + }, + { + "sslPort": 15002, + "nonSslPort": 13002, + "isMaster": false, + "isPrimary": false + } + ] + } + } + ] + } + } + } +} diff --git a/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheListByResourceGroup.json b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheListByResourceGroup.json new file mode 100644 index 000000000000..3415cd76c3c8 --- /dev/null +++ b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheListByResourceGroup.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2020-12-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/cache1", + "location": "West US", + "name": "cache1", + "type": "Microsoft.Cache/Redis", + "tags": {}, + "properties": { + "provisioningState": "Creating", + "redisVersion": "3.2", + "sku": { + "name": "Standard", + "family": "C", + "capacity": 6 + }, + "enableNonSslPort": true, + "redisConfiguration": {}, + "hostName": "cache1.redis.cache.windows.net", + "port": 6379, + "sslPort": 6380 + } + } + ] + } + } + } +} diff --git a/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheListKeys.json b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheListKeys.json new file mode 100644 index 000000000000..666fe85becb2 --- /dev/null +++ b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheListKeys.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "name": "cache1", + "resourceGroupName": "rg1", + "api-version": "2020-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "primaryKey": "", + "secondaryKey": "" + } + } + } +} diff --git a/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheListPrivateEndpointConnections.json b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheListPrivateEndpointConnections.json new file mode 100644 index 000000000000..a3b8e07f421f --- /dev/null +++ b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheListPrivateEndpointConnections.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "rgtest01", + "cacheName": "cachetest01", + "privateEndpointConnectionName": "pectest01", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "body": [ + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/rgtest01/providers/Microsoft.Cache/Redis/cachetest01/privateEndpointConnections/pectest01", + "name": "pectest01", + "type": "Microsoft.Cache/Redis/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/rgtest01/providers/Microsoft.Network/privateEndpoints/petest01" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionsRequired": "None" + } + } + }, + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/rgtest01/providers/Microsoft.Cache/Redis/cachetest01/privateEndpointConnections/pectest01", + "name": "pectest01", + "type": "Microsoft.Cache/Redis/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/rgtest01/providers/Microsoft.Network/privateEndpoints/petest01" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionsRequired": "None" + } + } + } + ] + } + } +} diff --git a/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheListPrivateLinkResources.json b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheListPrivateLinkResources.json new file mode 100644 index 000000000000..ace531e906b0 --- /dev/null +++ b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheListPrivateLinkResources.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "rgtest01", + "cacheName": "cacheTest01", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/rgtest01/providers/Microsoft.Cache/Redis/cacheTest01/privateLinkResources/redisCache", + "name": "redisCache", + "type": "Microsoft.Cache/Redis/privateLinkResources", + "properties": { + "groupId": "redisCache", + "requiredMembers": [ + "redisCache" + ], + "requiredZoneNames": [ + "privatelink.redis.cache.windows.net" + ] + } + } + ] + } + } + } +} diff --git a/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheListUpgradeNotifications.json b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheListUpgradeNotifications.json new file mode 100644 index 000000000000..f996e12ae4a5 --- /dev/null +++ b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheListUpgradeNotifications.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "name": "cache1", + "resourceGroupName": "rg1", + "api-version": "2020-12-01", + "subscriptionId": "subid", + "history": "5000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "notification1", + "timestamp": "2017-02-16T23:20:50.52Z", + "upsellNotification": {} + } + ] + } + } + } +} diff --git a/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCachePatchSchedulesCreateOrUpdate.json b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCachePatchSchedulesCreateOrUpdate.json new file mode 100644 index 000000000000..498656370051 --- /dev/null +++ b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCachePatchSchedulesCreateOrUpdate.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "name": "cache1", + "resourceGroupName": "rg1", + "default": "default", + "api-version": "2020-12-01", + "subscriptionId": "subid", + "parameters": { + "properties": { + "scheduleEntries": [ + { + "dayOfWeek": "Monday", + "startHourUtc": 12, + "maintenanceWindow": "PT5H" + }, + { + "dayOfWeek": "Tuesday", + "startHourUtc": 12 + } + ] + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/cache1/patchSchedules/default", + "name": "default", + "type": "Microsoft.Cache/Redis/patchSchedules", + "properties": { + "scheduleEntries": [ + { + "dayOfWeek": "Monday", + "startHourUtc": 12, + "maintenanceWindow": "PT5H" + }, + { + "dayOfWeek": "Tuesday", + "startHourUtc": 12 + } + ] + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/cache1/patchSchedules/default", + "name": "default", + "type": "Microsoft.Cache/Redis/patchSchedules", + "properties": { + "scheduleEntries": [ + { + "dayOfWeek": "Monday", + "startHourUtc": 12, + "maintenanceWindow": "PT5H" + }, + { + "dayOfWeek": "Tuesday", + "startHourUtc": 12 + } + ] + } + } + } + } +} diff --git a/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCachePatchSchedulesDelete.json b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCachePatchSchedulesDelete.json new file mode 100644 index 000000000000..60afa74b4aea --- /dev/null +++ b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCachePatchSchedulesDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "name": "cache1", + "resourceGroupName": "rg1", + "default": "default", + "api-version": "2020-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCachePatchSchedulesGet.json b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCachePatchSchedulesGet.json new file mode 100644 index 000000000000..c27d0c4a938f --- /dev/null +++ b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCachePatchSchedulesGet.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "name": "cache1", + "resourceGroupName": "rg1", + "default": "default", + "api-version": "2020-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/cache1/patchSchedules/default", + "name": "default", + "type": "Microsoft.Cache/Redis/patchSchedules", + "properties": { + "scheduleEntries": [ + { + "dayOfWeek": "Monday", + "startHourUtc": 12, + "maintenanceWindow": "PT5H" + }, + { + "dayOfWeek": "Tuesday", + "startHourUtc": 12 + } + ] + } + } + } + } +} diff --git a/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCachePatchSchedulesList.json b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCachePatchSchedulesList.json new file mode 100644 index 000000000000..ce8749d17e25 --- /dev/null +++ b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCachePatchSchedulesList.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "cacheName": "cache1", + "resourceGroupName": "rg1", + "api-version": "2020-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/cache1/patchSchedules/default", + "name": "default", + "type": "Microsoft.Cache/Redis/patchSchedules", + "properties": { + "scheduleEntries": [ + { + "dayOfWeek": "Monday", + "startHourUtc": 12, + "maintenanceWindow": "PT5H" + }, + { + "dayOfWeek": "Tuesday", + "startHourUtc": 12 + } + ] + } + } + ] + } + } + } +} diff --git a/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCachePutPrivateEndpointConnection.json b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCachePutPrivateEndpointConnection.json new file mode 100644 index 000000000000..c8d51c4c8e53 --- /dev/null +++ b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCachePutPrivateEndpointConnection.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "rgtest01", + "cacheName": "cachetest01", + "privateEndpointConnectionName": "pectest01", + "api-version": "2020-12-01", + "properties": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved" + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/rgtest01/providers/Microsoft.Cache/Redis/cachetest01/privateEndpointConnections/pectest01", + "name": "pectest01", + "type": "Microsoft.Cache/Redis/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/rgtest01/providers/Microsoft.Network/privateEndpoints/petest01" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheRegenerateKey.json b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheRegenerateKey.json new file mode 100644 index 000000000000..5822efb37501 --- /dev/null +++ b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheRegenerateKey.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "name": "cache1", + "resourceGroupName": "rg1", + "api-version": "2020-12-01", + "subscriptionId": "subid", + "parameters": { + "keyType": "Primary" + } + }, + "responses": { + "200": { + "body": { + "primaryKey": "", + "secondaryKey": "" + } + } + } +} diff --git a/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheUpdate.json b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheUpdate.json new file mode 100644 index 000000000000..cd0f639c111f --- /dev/null +++ b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/examples/RedisCacheUpdate.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "name": "cache1", + "resourceGroupName": "rg1", + "api-version": "2020-12-01", + "subscriptionId": "subid", + "parameters": { + "properties": { + "enableNonSslPort": true, + "replicasPerPrimary": 2 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/cache1", + "location": "West US", + "name": "cache1", + "type": "Microsoft.Cache/Redis", + "tags": {}, + "properties": { + "accessKeys": { + "primaryKey": "", + "secondaryKey": "" + }, + "provisioningState": "Succeeded", + "redisVersion": "3.0", + "sku": { + "name": "Premium", + "family": "P", + "capacity": 1 + }, + "enableNonSslPort": true, + "replicasPerMaster": 2, + "replicasPerPrimary": 2, + "redisConfiguration": { + "maxclients": "1000", + "maxmemory-reserved": "50", + "maxmemory-delta": "50" + }, + "hostName": "cache1.redis.cache.windows.net", + "port": 6379, + "sslPort": 6380, + "instances": [ + { + "sslPort": 15000, + "nonSslPort": 13000, + "isMaster": true, + "isPrimary": true + }, + { + "sslPort": 15001, + "nonSslPort": 13001, + "isMaster": false, + "isPrimary": false + }, + { + "sslPort": 15002, + "nonSslPort": 13002, + "isMaster": false, + "isPrimary": false + } + ] + } + } + } + } +} diff --git a/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/redis.json b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/redis.json new file mode 100644 index 000000000000..55ed658f4fe9 --- /dev/null +++ b/specification/redis/resource-manager/Microsoft.Cache/stable/2020-12-01/redis.json @@ -0,0 +1,2632 @@ +{ + "swagger": "2.0", + "info": { + "title": "RedisManagementClient", + "description": "REST API for Azure Redis Cache Service.", + "version": "2020-12-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/providers/Microsoft.Cache/operations": { + "get": { + "tags": [ + "Operations" + ], + "description": "Lists all of the available REST API operations of the Microsoft.Cache provider.", + "operationId": "Operations_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describes the list of operations.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Cache/CheckNameAvailability": { + "post": { + "tags": [ + "Redis" + ], + "operationId": "Redis_CheckNameAvailability", + "x-ms-examples": { + "RedisCacheCheckNameAvailability": { + "$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. The only supported resource type is 'Microsoft.Cache/redis'" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Name is available" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/redis/{name}/listUpgradeNotifications": { + "get": { + "tags": [ + "Redis" + ], + "operationId": "Redis_ListUpgradeNotifications", + "x-ms-examples": { + "RedisCacheListUpgradeNotifications": { + "$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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/redis/{name}": { + "put": { + "tags": [ + "Redis" + ], + "operationId": "Redis_Create", + "x-ms-examples": { + "RedisCacheCreate": { + "$ref": "./examples/RedisCacheCreate.json" + } + }, + "description": "Create or replace (overwrite/recreate, with potential downtime) an existing Redis cache.", + "x-ms-long-running-operation": true, + "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." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RedisCreateParameters" + }, + "description": "Parameters supplied to the Create Redis operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "The new redis cache was successfully created. Check provisioningState to see detailed status.", + "schema": { + "$ref": "#/definitions/RedisResource" + } + }, + "200": { + "description": "The existing redis cache was successfully updated. Check provisioningState to see detailed status.", + "schema": { + "$ref": "#/definitions/RedisResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Redis" + ], + "operationId": "Redis_Update", + "x-ms-examples": { + "RedisCacheUpdate": { + "$ref": "./examples/RedisCacheUpdate.json" + } + }, + "description": "Update an existing 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." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RedisUpdateParameters" + }, + "description": "Parameters supplied to the Update Redis operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The existing redis cache was successfully updated. Check provisioningState to see detailed status.", + "schema": { + "$ref": "#/definitions/RedisResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Redis" + ], + "operationId": "Redis_Delete", + "x-ms-examples": { + "RedisCacheDelete": { + "$ref": "./examples/RedisCacheDelete.json" + } + }, + "description": "Deletes a Redis cache.", + "x-ms-long-running-operation": true, + "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" + } + ], + "responses": { + "200": { + "description": "The redis cache was successfully deleted." + }, + "202": { + "description": "The redis cache 'delete' operation was successfully enqueued; follow the Location header to poll for final outcome." + }, + "204": { + "description": "The redis cache was successfully deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Redis" + ], + "operationId": "Redis_Get", + "x-ms-examples": { + "RedisCacheGet": { + "$ref": "./examples/RedisCacheGet.json" + } + }, + "description": "Gets a Redis cache (resource description).", + "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" + } + ], + "responses": { + "200": { + "description": "The redis cache was successfully found.", + "schema": { + "$ref": "#/definitions/RedisResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/redis": { + "get": { + "tags": [ + "Redis" + ], + "operationId": "Redis_ListByResourceGroup", + "x-ms-examples": { + "RedisCacheListByResourceGroup": { + "$ref": "./examples/RedisCacheListByResourceGroup.json" + } + }, + "description": "Lists all Redis caches in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/RedisListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Cache/redis": { + "get": { + "tags": [ + "Redis" + ], + "operationId": "Redis_ListBySubscription", + "x-ms-examples": { + "RedisCacheList": { + "$ref": "./examples/RedisCacheList.json" + } + }, + "description": "Gets all Redis caches in the specified subscription.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/RedisListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/redis/{name}/listKeys": { + "post": { + "tags": [ + "Redis" + ], + "operationId": "Redis_ListKeys", + "x-ms-examples": { + "RedisCacheListKeys": { + "$ref": "./examples/RedisCacheListKeys.json" + } + }, + "description": "Retrieve a Redis cache's access keys. This operation requires write permission to the cache resource.", + "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" + } + ], + "responses": { + "200": { + "description": "Lists the keys for the specified Redis cache.", + "schema": { + "$ref": "#/definitions/RedisAccessKeys" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/redis/{name}/regenerateKey": { + "post": { + "tags": [ + "Redis" + ], + "operationId": "Redis_RegenerateKey", + "x-ms-examples": { + "RedisCacheRegenerateKey": { + "$ref": "./examples/RedisCacheRegenerateKey.json" + } + }, + "description": "Regenerate Redis cache's access keys. This operation requires write permission to the cache resource.", + "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." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RedisRegenerateKeyParameters" + }, + "description": "Specifies which key to regenerate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists the regenerated keys for Redis Cache", + "schema": { + "$ref": "#/definitions/RedisAccessKeys" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/redis/{name}/forceReboot": { + "post": { + "tags": [ + "Redis" + ], + "operationId": "Redis_ForceReboot", + "x-ms-examples": { + "RedisCacheForceReboot": { + "$ref": "./examples/RedisCacheForceReboot.json" + } + }, + "description": "Reboot specified Redis node(s). This operation requires write permission to the cache resource. There can be potential data loss.", + "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." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RedisRebootParameters" + }, + "description": "Specifies which Redis node(s) to reboot." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Reboot operation successfully enqueued", + "schema": { + "$ref": "#/definitions/RedisForceRebootResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/redis/{name}/import": { + "post": { + "tags": [ + "Redis" + ], + "operationId": "Redis_ImportData", + "x-ms-examples": { + "RedisCacheImport": { + "$ref": "./examples/RedisCacheImport.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Import data into 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." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ImportRDBParameters" + }, + "description": "Parameters for Redis import operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Import operation successfully enqueued; follow the Location header to poll for final outcome." + }, + "200": { + "description": "Import operation succeeded." + }, + "204": { + "description": "Import operation succeeded." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/redis/{name}/export": { + "post": { + "tags": [ + "Redis" + ], + "operationId": "Redis_ExportData", + "x-ms-examples": { + "RedisCacheExport": { + "$ref": "./examples/RedisCacheExport.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Export data from the redis cache to blobs in a container.", + "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." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExportRDBParameters" + }, + "description": "Parameters for Redis export operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Export operation successfully enqueued; follow the Location header to poll for final outcome." + }, + "200": { + "description": "Export operation succeeded." + }, + "204": { + "description": "Export operation succeeded." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/redis/{cacheName}/firewallRules": { + "get": { + "tags": [ + "Redis", + "FirewallRules" + ], + "operationId": "FirewallRules_List", + "description": "Gets all firewall rules in the specified redis cache.", + "x-ms-examples": { + "RedisCacheFirewallRulesList": { + "$ref": "./examples/RedisCacheFirewallRulesList.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "cacheName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Redis cache." + } + ], + "responses": { + "200": { + "description": "Successfully got the current rules", + "schema": { + "$ref": "#/definitions/RedisFirewallRuleListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/redis/{cacheName}/firewallRules/{ruleName}": { + "put": { + "tags": [ + "Redis", + "FirewallRules" + ], + "operationId": "FirewallRules_CreateOrUpdate", + "description": "Create or update a redis cache firewall rule", + "x-ms-examples": { + "RedisCacheFirewallRuleCreate": { + "$ref": "./examples/RedisCacheFirewallRuleCreate.json" + } + }, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "cacheName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Redis cache." + }, + { + "name": "ruleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the firewall rule." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RedisFirewallRule" + }, + "description": "Parameters supplied to the create or update redis firewall rule operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Resource was successfully updated", + "schema": { + "$ref": "#/definitions/RedisFirewallRule" + } + }, + "201": { + "description": "Resource was successfully created", + "schema": { + "$ref": "#/definitions/RedisFirewallRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Redis", + "FirewallRules" + ], + "operationId": "FirewallRules_Get", + "description": "Gets a single firewall rule in a specified redis cache.", + "x-ms-examples": { + "RedisCacheFirewallRuleGet": { + "$ref": "./examples/RedisCacheFirewallRuleGet.json" + } + }, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "cacheName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Redis cache." + }, + { + "name": "ruleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the firewall rule." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully found the rule", + "schema": { + "$ref": "#/definitions/RedisFirewallRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Redis", + "FirewallRules" + ], + "operationId": "FirewallRules_Delete", + "description": "Deletes a single firewall rule in a specified redis cache.", + "x-ms-examples": { + "RedisCacheFirewallRuleDelete": { + "$ref": "./examples/RedisCacheFirewallRuleDelete.json" + } + }, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "cacheName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Redis cache." + }, + { + "name": "ruleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the firewall rule." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the rule" + }, + "204": { + "description": "Successfully deleted the rule" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/redis/{cacheName}/patchSchedules": { + "get": { + "tags": [ + "Redis", + "PatchSchedules" + ], + "operationId": "PatchSchedules_ListByRedisResource", + "description": "Gets all patch schedules in the specified redis cache (there is only one).", + "x-ms-examples": { + "RedisCachePatchSchedulesList": { + "$ref": "./examples/RedisCachePatchSchedulesList.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "cacheName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Redis cache." + } + ], + "responses": { + "200": { + "description": "Successfully got the current patch schedules", + "schema": { + "$ref": "#/definitions/RedisPatchScheduleListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/redis/{name}/patchSchedules/{default}": { + "put": { + "tags": [ + "Redis", + "PatchSchedules" + ], + "operationId": "PatchSchedules_CreateOrUpdate", + "x-ms-examples": { + "RedisCachePatchSchedulesCreateOrUpdate": { + "$ref": "./examples/RedisCachePatchSchedulesCreateOrUpdate.json" + } + }, + "description": "Create or replace the patching schedule for 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." + }, + { + "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", + "required": true, + "schema": { + "$ref": "#/definitions/RedisPatchSchedule" + }, + "description": "Parameters to set the patching schedule for Redis cache." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The patch schedule was successfully updated.", + "schema": { + "$ref": "#/definitions/RedisPatchSchedule" + } + }, + "201": { + "description": "The patch schedule was successfully created.", + "schema": { + "$ref": "#/definitions/RedisPatchSchedule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Redis", + "PatchSchedules" + ], + "operationId": "PatchSchedules_Delete", + "x-ms-examples": { + "RedisCachePatchSchedulesDelete": { + "$ref": "./examples/RedisCachePatchSchedulesDelete.json" + } + }, + "description": "Deletes the patching schedule of 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." + }, + { + "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" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success." + }, + "204": { + "description": "Success." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Redis", + "PatchSchedules" + ], + "operationId": "PatchSchedules_Get", + "x-ms-examples": { + "RedisCachePatchSchedulesGet": { + "$ref": "./examples/RedisCachePatchSchedulesGet.json" + } + }, + "description": "Gets the patching schedule of 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." + }, + { + "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" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Response of get patch schedules.", + "schema": { + "$ref": "#/definitions/RedisPatchSchedule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/redis/{name}/linkedServers/{linkedServerName}": { + "put": { + "tags": [ + "Redis" + ], + "operationId": "LinkedServer_Create", + "x-ms-long-running-operation": true, + "x-ms-examples": { + "LinkedServer_Create": { + "$ref": "./examples/RedisCacheLinkedServer_Create.json" + } + }, + "description": "Adds a linked server to the Redis cache (requires Premium SKU).", + "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." + }, + { + "name": "linkedServerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the linked server that is being added to the Redis cache." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RedisLinkedServerCreateParameters" + }, + "description": "Parameters supplied to the Create Linked server operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The linked server was successfully added.", + "schema": { + "$ref": "#/definitions/RedisLinkedServerWithProperties" + } + }, + "201": { + "description": "The linked server was successfully added.", + "schema": { + "$ref": "#/definitions/RedisLinkedServerWithProperties" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Redis" + ], + "operationId": "LinkedServer_Delete", + "x-ms-examples": { + "LinkedServerDelete": { + "$ref": "./examples/RedisCacheLinkedServer_Delete.json" + } + }, + "description": "Deletes the linked server from a redis cache (requires Premium SKU).", + "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." + }, + { + "name": "linkedServerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the linked server that is being added to the Redis cache." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The redis cache was successfully deleted." + }, + "204": { + "description": "Linked server was successfully deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Redis" + ], + "operationId": "LinkedServer_Get", + "x-ms-examples": { + "LinkedServer_Get": { + "$ref": "./examples/RedisCacheLinkedServer_Get.json" + } + }, + "description": "Gets the detailed information about a linked server of a redis cache (requires Premium SKU).", + "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." + }, + { + "name": "linkedServerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the linked server." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Response of get linked server.", + "schema": { + "$ref": "#/definitions/RedisLinkedServerWithProperties" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/redis/{name}/linkedServers": { + "get": { + "tags": [ + "Redis" + ], + "operationId": "LinkedServer_List", + "x-ms-examples": { + "LinkedServer_List": { + "$ref": "./examples/RedisCacheLinkedServer_List.json" + } + }, + "description": "Gets the list of linked servers associated with this redis cache (requires Premium SKU).", + "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" + } + ], + "responses": { + "200": { + "description": "Response of get linked servers.", + "schema": { + "$ref": "#/definitions/RedisLinkedServerWithPropertiesList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/redis/{cacheName}/privateEndpointConnections": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_List", + "description": "List all the private endpoint connections associated with the redis cache.", + "x-ms-examples": { + "RedisCacheListPrivateEndpointConnection": { + "$ref": "./examples/RedisCacheListPrivateEndpointConnections.json" + } + }, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "cacheName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Redis cache." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Successfully retrieved private endpoint connections.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v1/privatelinks.json#/definitions/PrivateEndpointConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/redis/{cacheName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Get", + "description": "Gets the specified private endpoint connection associated with the redis cache.", + "x-ms-examples": { + "RedisCacheGetPrivateEndpointConnection": { + "$ref": "./examples/RedisCacheGetPrivateEndpointConnection.json" + } + }, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "cacheName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Redis cache." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/privatelinks.json#/parameters/PrivateEndpointConnectionName" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Get the private endpoint connection properties successfully.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v1/privatelinks.json#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Put", + "description": "Update the state of specified private endpoint connection associated with the redis cache.", + "x-ms-examples": { + "RedisCachePutPrivateEndpointConnection": { + "$ref": "./examples/RedisCachePutPrivateEndpointConnection.json" + } + }, + "x-ms-long-running-operation": true, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "cacheName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Redis cache." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/privatelinks.json#/parameters/PrivateEndpointConnectionName" + }, + { + "name": "properties", + "in": "body", + "required": true, + "schema": { + "$ref": "../../../../../common-types/resource-management/v1/privatelinks.json#/definitions/PrivateEndpointConnection" + }, + "description": "The private endpoint connection properties." + } + ], + "responses": { + "201": { + "description": "OK -- Update the private endpoint connection properties successfully.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v1/privatelinks.json#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Delete", + "description": "Deletes the specified private endpoint connection associated with the redis cache.", + "x-ms-examples": { + "RedisCacheDeletePrivateEndpointConnection": { + "$ref": "./examples/RedisCacheDeletePrivateEndpointConnection.json" + } + }, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "cacheName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Redis cache." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/privatelinks.json#/parameters/PrivateEndpointConnectionName" + } + ], + "responses": { + "200": { + "description": "OK -- Delete the private endpoint connection successfully." + }, + "204": { + "description": "No Content -- The private endpoint connection does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/redis/{cacheName}/privateLinkResources": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "operationId": "PrivateLinkResources_ListByRedisCache", + "description": "Gets the private link resources that need to be created for a redis cache.", + "x-ms-examples": { + "StorageAccountListPrivateLinkResources": { + "$ref": "./examples/RedisCacheListPrivateLinkResources.json" + } + }, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "cacheName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Redis cache." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private link resources.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v1/privatelinks.json#/definitions/PrivateLinkResourceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + } + }, + "definitions": { + "Sku": { + "properties": { + "name": { + "type": "string", + "description": "The type of Redis cache to deploy. Valid values: (Basic, Standard, Premium)", + "enum": [ + "Basic", + "Standard", + "Premium" + ], + "x-ms-enum": { + "name": "SkuName", + "modelAsString": true + } + }, + "family": { + "type": "string", + "description": "The SKU family to use. Valid values: (C, P). (C = Basic/Standard, P = Premium).", + "enum": [ + "C", + "P" + ], + "x-ms-enum": { + "name": "SkuFamily", + "modelAsString": true + } + }, + "capacity": { + "type": "integer", + "format": "int32", + "description": "The size of the Redis cache to deploy. Valid values: for C (Basic/Standard) family (0, 1, 2, 3, 4, 5, 6), for P (Premium) family (1, 2, 3, 4)." + } + }, + "required": [ + "name", + "family", + "capacity" + ], + "description": "SKU parameters supplied to the create Redis operation." + }, + "RedisCommonProperties": { + "properties": { + "redisConfiguration": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "All Redis Settings. Few possible keys: rdb-backup-enabled,rdb-storage-connection-string,rdb-backup-frequency,maxmemory-delta,maxmemory-policy,notify-keyspace-events,maxmemory-samples,slowlog-log-slower-than,slowlog-max-len,list-max-ziplist-entries,list-max-ziplist-value,hash-max-ziplist-entries,hash-max-ziplist-value,set-max-intset-entries,zset-max-ziplist-entries,zset-max-ziplist-value etc." + }, + "redisVersion": { + "type": "string", + "description": "Redis version. Only major version will be used in PUT/PATCH request with current valid values: (4, 6)" + }, + "enableNonSslPort": { + "type": "boolean", + "description": "Specifies whether the non-ssl Redis server port (6379) is enabled." + }, + "replicasPerMaster": { + "type": "integer", + "format": "int32", + "description": "The number of replicas to be created per primary." + }, + "replicasPerPrimary": { + "type": "integer", + "format": "int32", + "description": "The number of replicas to be created per primary." + }, + "tenantSettings": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "A dictionary of tenant settings" + }, + "shardCount": { + "type": "integer", + "format": "int32", + "description": "The number of shards to be created on a Premium Cluster Cache." + }, + "minimumTlsVersion": { + "type": "string", + "description": "Optional: requires clients to use a specified TLS version (or higher) to connect (e,g, '1.0', '1.1', '1.2')", + "enum": [ + "1.0", + "1.1", + "1.2" + ], + "x-ms-enum": { + "name": "TlsVersion", + "modelAsString": true + } + }, + "publicNetworkAccess": { + "description": "Whether or not public endpoint access is allowed for this cache. Value is optional but if passed in, must be 'Enabled' or 'Disabled'. If 'Disabled', private endpoints are the exclusive access method. Default value is 'Enabled'", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "PublicNetworkAccess", + "modelAsString": true + } + } + }, + "description": "Create/Update/Get common properties of the redis cache.", + "x-ms-external": true + }, + "RedisCreateProperties": { + "properties": { + "sku": { + "$ref": "#/definitions/Sku", + "description": "The SKU of the Redis cache to deploy." + }, + "subnetId": { + "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 Redis cache in. Example format: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/Microsoft.{Network|ClassicNetwork}/VirtualNetworks/vnet1/subnets/subnet1" + }, + "staticIP": { + "type": "string", + "pattern": "^\\d+\\.\\d+\\.\\d+\\.\\d+$", + "description": "Static IP address. Required when deploying a Redis cache inside an existing Azure Virtual Network." + } + }, + "required": [ + "sku" + ], + "allOf": [ + { + "$ref": "#/definitions/RedisCommonProperties" + } + ], + "description": "Properties supplied to Create Redis operation.", + "x-ms-external": true + }, + "RedisUpdateProperties": { + "properties": { + "sku": { + "$ref": "#/definitions/Sku", + "description": "The SKU of the Redis cache to deploy." + } + }, + "allOf": [ + { + "$ref": "#/definitions/RedisCommonProperties" + } + ], + "description": "Patchable properties of the redis cache.", + "x-ms-external": true + }, + "RedisProperties": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "Redis instance provisioning status.", + "enum": [ + "Creating", + "Deleting", + "Disabled", + "Failed", + "Linking", + "Provisioning", + "RecoveringScaleFailure", + "Scaling", + "Succeeded", + "Unlinking", + "Unprovisioning", + "Updating" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "hostName": { + "readOnly": true, + "type": "string", + "description": "Redis host name." + }, + "port": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "Redis non-SSL port." + }, + "sslPort": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "Redis SSL port." + }, + "accessKeys": { + "readOnly": true, + "$ref": "#/definitions/RedisAccessKeys", + "description": "The keys of the Redis cache - not set if this object is not the response to Create or Update redis cache" + }, + "linkedServers": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/RedisLinkedServer" + }, + "description": "List of the linked servers associated with the cache" + }, + "instances": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/RedisInstanceDetails" + }, + "description": "List of the Redis instances associated with the cache" + }, + "privateEndpointConnections": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "../../../../../common-types/resource-management/v1/privatelinks.json#/definitions/PrivateEndpointConnection" + }, + "description": "List of private endpoint connection associated with the specified redis cache" + } + }, + "allOf": [ + { + "$ref": "#/definitions/RedisCreateProperties" + } + ], + "description": "Properties of the redis cache.", + "x-ms-external": true + }, + "RedisCreateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RedisCreateProperties", + "description": "Redis cache properties." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of availability zones denoting where the resource needs to come from." + }, + "location": { + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ], + "description": "The geo-location where the resource lives" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "required": [ + "properties", + "location" + ], + "description": "Parameters supplied to the Create Redis operation." + }, + "RedisUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RedisUpdateProperties", + "description": "Redis cache properties." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "description": "Parameters supplied to the Update Redis operation." + }, + "RedisAccessKeys": { + "properties": { + "primaryKey": { + "readOnly": true, + "type": "string", + "description": "The current primary key that clients can use to authenticate with Redis cache." + }, + "secondaryKey": { + "readOnly": true, + "type": "string", + "description": "The current secondary key that clients can use to authenticate with Redis cache." + } + }, + "description": "Redis cache access keys." + }, + "RedisFirewallRule": { + "description": "A firewall rule on a redis cache has a name, and describes a contiguous range of IP addresses permitted to connect", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RedisFirewallRuleProperties", + "description": "redis cache firewall rule properties" + } + }, + "required": [ + "properties" + ], + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ] + }, + "RedisFirewallRuleCreateParameters": { + "allOf": [ + { + "$ref": "#/definitions/RedisFirewallRule" + } + ], + "description": "Parameters required for creating a firewall rule on redis cache. (Note, you can just use the FirewallRule type instead now.)" + }, + "RedisFirewallRuleProperties": { + "description": "Specifies a range of IP addresses permitted to connect to the cache", + "properties": { + "startIP": { + "type": "string", + "description": "lowest IP address included in the range" + }, + "endIP": { + "type": "string", + "description": "highest IP address included in the range" + } + }, + "required": [ + "startIP", + "endIP" + ] + }, + "RedisFirewallRuleListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RedisFirewallRule" + }, + "description": "Results of the list firewall rules operation." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link for next page of results." + } + }, + "description": "The response of list firewall rules Redis operation." + }, + "RedisResource": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RedisProperties", + "description": "Redis cache properties." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of availability zones denoting where the resource needs to come from." + } + }, + "required": [ + "properties" + ], + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/TrackedResource" + } + ], + "description": "A single Redis item in List or Get Operation." + }, + "RedisInstanceDetails": { + "properties": { + "sslPort": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "Redis instance SSL port." + }, + "nonSslPort": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "If enableNonSslPort is true, provides Redis instance Non-SSL port." + }, + "zone": { + "readOnly": true, + "type": "string", + "description": "If the Cache uses availability zones, specifies availability zone where this instance is located." + }, + "shardId": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "If clustering is enabled, the Shard ID of Redis Instance" + }, + "isMaster": { + "readOnly": true, + "type": "boolean", + "description": "Specifies whether the instance is a primary node." + }, + "isPrimary": { + "readOnly": true, + "type": "boolean", + "description": "Specifies whether the instance is a primary node." + } + }, + "description": "Details of single instance of redis." + }, + "RedisListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RedisResource" + }, + "description": "List of Redis cache instances." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link for next page of results." + } + }, + "description": "The response of list Redis operation." + }, + "RedisRegenerateKeyParameters": { + "properties": { + "keyType": { + "type": "string", + "description": "The Redis access key to regenerate.", + "enum": [ + "Primary", + "Secondary" + ], + "x-ms-enum": { + "name": "RedisKeyType", + "modelAsString": false + } + } + }, + "required": [ + "keyType" + ], + "description": "Specifies which Redis access keys to reset." + }, + "RedisRebootParameters": { + "properties": { + "rebootType": { + "type": "string", + "description": "Which Redis node(s) to reboot. Depending on this value data loss is possible.", + "enum": [ + "PrimaryNode", + "SecondaryNode", + "AllNodes" + ], + "x-ms-enum": { + "name": "RebootType", + "modelAsString": true + } + }, + "shardId": { + "type": "integer", + "format": "int32", + "description": "If clustering is enabled, the ID of the shard to be rebooted." + }, + "ports": { + "type": "array", + "items": { + "type": "integer" + }, + "description": "A list of redis instances to reboot, specified by per-instance SSL ports or non-SSL ports." + } + }, + "description": "Specifies which Redis node(s) to reboot." + }, + "ExportRDBParameters": { + "properties": { + "format": { + "type": "string", + "description": "File format." + }, + "prefix": { + "type": "string", + "description": "Prefix to use for exported files." + }, + "container": { + "type": "string", + "description": "Container name to export to." + } + }, + "required": [ + "container", + "prefix" + ], + "description": "Parameters for Redis export operation." + }, + "ImportRDBParameters": { + "properties": { + "format": { + "type": "string", + "description": "File format." + }, + "files": { + "type": "array", + "description": "files to import.", + "items": { + "type": "string" + } + } + }, + "required": [ + "files" + ], + "description": "Parameters for Redis import operation." + }, + "ScheduleEntry": { + "properties": { + "dayOfWeek": { + "type": "string", + "description": "Day of the week when a cache can be patched.", + "enum": [ + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday", + "Sunday", + "Everyday", + "Weekend" + ], + "x-ms-enum": { + "name": "DayOfWeek", + "modelAsString": false + } + }, + "startHourUtc": { + "type": "integer", + "format": "int32", + "description": "Start hour after which cache patching can start." + }, + "maintenanceWindow": { + "type": "string", + "format": "duration", + "description": "ISO8601 timespan specifying how much time cache patching can take. " + } + }, + "required": [ + "dayOfWeek", + "startHourUtc" + ], + "description": "Patch schedule entry for a Premium Redis Cache." + }, + "ScheduleEntries": { + "properties": { + "scheduleEntries": { + "x-ms-client-name": "ScheduleEntries", + "type": "array", + "items": { + "$ref": "#/definitions/ScheduleEntry" + }, + "description": "List of patch schedules for a Redis cache." + } + }, + "required": [ + "scheduleEntries" + ], + "description": "List of patch schedules for a Redis cache." + }, + "RedisPatchSchedule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ScheduleEntries", + "description": "List of patch schedules for a Redis cache." + } + }, + "required": [ + "properties" + ], + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ], + "description": "Response to put/get patch schedules for Redis cache." + }, + "RedisPatchScheduleListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RedisPatchSchedule" + }, + "description": "Results of the list patch schedules operation." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link for next page of results." + } + }, + "description": "The response of list patch schedules Redis operation." + }, + "RedisForceRebootResponse": { + "properties": { + "message": { + "readOnly": true, + "type": "string", + "description": "Status message" + } + }, + "description": "Response to force reboot for Redis cache." + }, + "RedisLinkedServer": { + "description": "Linked server Id", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Linked server Id." + } + } + }, + "RedisLinkedServerWithProperties": { + "description": "Response to put/get linked server (with properties) for Redis cache.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RedisLinkedServerProperties", + "description": "Properties of the linked server." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ] + }, + "RedisLinkedServerProperties": { + "description": "Properties of a linked server to be returned in get/put response", + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "Terminal state of the link between primary and secondary redis cache." + } + }, + "allOf": [ + { + "$ref": "#/definitions/RedisLinkedServerCreateProperties" + } + ] + }, + "RedisLinkedServerWithPropertiesList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RedisLinkedServerWithProperties" + }, + "description": "List of linked servers (with properties) of a Redis cache." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link for next set." + } + }, + "description": "List of linked servers (with properties) of a Redis cache." + }, + "RedisLinkedServerCreateProperties": { + "description": "Create properties for a linked server", + "properties": { + "linkedRedisCacheId": { + "type": "string", + "description": "Fully qualified resourceId of the linked redis cache." + }, + "linkedRedisCacheLocation": { + "type": "string", + "description": "Location of the linked redis cache." + }, + "serverRole": { + "type": "string", + "description": "Role of the linked server.", + "enum": [ + "Primary", + "Secondary" + ], + "x-ms-enum": { + "name": "ReplicationRole", + "modelAsString": false + } + } + }, + "required": [ + "linkedRedisCacheId", + "linkedRedisCacheLocation", + "serverRole" + ] + }, + "RedisLinkedServerCreateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RedisLinkedServerCreateProperties", + "description": "Properties required to create a linked server." + } + }, + "required": [ + "properties" + ], + "description": "Parameter required for creating a linked server to redis cache." + }, + "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" + } + } + } + } + }, + "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", + "readOnly": true, + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "CheckNameAvailabilityParameters": { + "description": "Parameters body to pass for resource name availability check.", + "properties": { + "name": { + "type": "string", + "description": "Resource name." + }, + "type": { + "type": "string", + "description": "Resource type. The only legal value of this property for checking redis cache name availability is 'Microsoft.Cache/redis'." + } + }, + "required": [ + "name", + "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 occurred." + }, + "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": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Gets subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client Api Version." + } + } +} diff --git a/specification/redis/resource-manager/readme.azureresourceschema.md b/specification/redis/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 1c16e24096b8..000000000000 --- a/specification/redis/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,96 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-cache-2020-06-01 - - tag: schema-cache-2019-07-01 - - tag: schema-cache-2018-03-01 - - tag: schema-cache-2017-10-01 - - tag: schema-cache-2017-02-01 - - tag: schema-cache-2016-04-01 - - tag: schema-cache-2015-08-01 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-cache-2020-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-cache-2020-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Cache/stable/2020-06-01/redis.json - -``` - -### Tag: schema-cache-2019-07-01 and azureresourceschema - -``` yaml $(tag) == 'schema-cache-2019-07-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Cache/preview/2019-07-01/redis.json - -``` - -### Tag: schema-cache-2018-03-01 and azureresourceschema - -``` yaml $(tag) == 'schema-cache-2018-03-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Cache/stable/2018-03-01/redis.json - -``` - -### Tag: schema-cache-2017-10-01 and azureresourceschema - -``` yaml $(tag) == 'schema-cache-2017-10-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Cache/stable/2017-10-01/redis.json - -``` - -### Tag: schema-cache-2017-02-01 and azureresourceschema - -``` yaml $(tag) == 'schema-cache-2017-02-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Cache/stable/2017-02-01/redis.json - -``` - -### Tag: schema-cache-2016-04-01 and azureresourceschema - -``` yaml $(tag) == 'schema-cache-2016-04-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Cache/stable/2016-04-01/redis.json - -``` - -### Tag: schema-cache-2015-08-01 and azureresourceschema - -``` yaml $(tag) == 'schema-cache-2015-08-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Cache/stable/2015-08-01/redis.json - -``` diff --git a/specification/redis/resource-manager/readme.go.md b/specification/redis/resource-manager/readme.go.md index 2a653ec62a7f..307213b58cbb 100644 --- a/specification/redis/resource-manager/readme.go.md +++ b/specification/redis/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: redis clear-output-folder: true ``` diff --git a/specification/redis/resource-manager/readme.md b/specification/redis/resource-manager/readme.md index 99cac265a32b..320429f7b641 100644 --- a/specification/redis/resource-manager/readme.md +++ b/specification/redis/resource-manager/readme.md @@ -26,10 +26,18 @@ These are the global settings for the Redis API. ``` yaml openapi-type: arm -tag: package-2020-06 +tag: package-2020-12 ``` +### Tag: package-2020-12 + +These settings apply only when `--tag=package-2020-12` is specified on the command line. + +```yaml $(tag) == 'package-2020-12' +input-file: + - Microsoft.Cache/stable/2020-12-01/redis.json +``` ### Tag: package-2020-06 These settings apply only when `--tag=package-2020-06` is specified on the command line. @@ -38,6 +46,7 @@ These settings apply only when `--tag=package-2020-06` is specified on the comma input-file: - Microsoft.Cache/stable/2020-06-01/redis.json ``` + ### Tag: package-2019-07-preview These settings apply only when `--tag=package-2019-07-preview` is specified on the command line. @@ -113,8 +122,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_redis'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js redis/resource-manager ``` ## C# @@ -244,6 +251,21 @@ directive: - $.definitions.RedisCommonProperties.properties.enableNonSslPort from: redis.json reason: this will result in breaking change + - suppress: R3018 # Booleans are not descriptive and make them hard to use. Consider using string enums with allowed set of values defined. Property: isMaster." + where: + - $.definitions.RedisInstanceDetails.properties.isMaster + from: redis.json + reason: this will result in breaking change + - suppress: R3018 # Booleans are not descriptive and make them hard to use. Consider using string enums with allowed set of values defined. Property: isPrimary" + where: + - $.definitions.RedisInstanceDetails.properties.isPrimary + from: redis.json + reason: this will result in breaking change + - suppress: R3018 # Booleans are not descriptive and make them hard to use. Consider using string enums with allowed set of values defined. Property: isDataAction" + where: + - $.definitions.Operation.properties.isDataAction + from: types.json + reason: its per the RPC specification - suppress: R2017 # PUT request and response should be of same type " where: - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/Redis/{name}/linkedServers/{linkedServerName}"].put @@ -258,7 +280,5 @@ directive: reason: This is false positive, 'linkedServers' is not a tracked resource. ``` -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/redisenterprise/resource-manager/Microsoft.Cache/preview/2020-10-01-preview/examples/RedisEnterpriseUpdate.json b/specification/redisenterprise/resource-manager/Microsoft.Cache/preview/2020-10-01-preview/examples/RedisEnterpriseUpdate.json index e8ea0df53ab9..671887fcd0f6 100644 --- a/specification/redisenterprise/resource-manager/Microsoft.Cache/preview/2020-10-01-preview/examples/RedisEnterpriseUpdate.json +++ b/specification/redisenterprise/resource-manager/Microsoft.Cache/preview/2020-10-01-preview/examples/RedisEnterpriseUpdate.json @@ -9,9 +9,7 @@ "name": "EnterpriseFlash_F300", "capacity": 9 }, - "properties": { - "minimumTlsVersion": "1.2" - }, + "properties": {}, "tags": { "tag1": "value1" } diff --git a/specification/redisenterprise/resource-manager/Microsoft.Cache/preview/2020-10-01-preview/redisenterprise.json b/specification/redisenterprise/resource-manager/Microsoft.Cache/preview/2020-10-01-preview/redisenterprise.json index 60f0a3cb706f..5b3afb62569c 100644 --- a/specification/redisenterprise/resource-manager/Microsoft.Cache/preview/2020-10-01-preview/redisenterprise.json +++ b/specification/redisenterprise/resource-manager/Microsoft.Cache/preview/2020-10-01-preview/redisenterprise.json @@ -1259,6 +1259,10 @@ "properties": { "minimumTlsVersion": { "type": "string", + "x-ms-mutability": [ + "read", + "create" + ], "description": "The minimum TLS version for the cluster to support, e.g. '1.2'" }, "hostName": { diff --git a/specification/redisenterprise/resource-manager/readme.azureresourceschema.md b/specification/redisenterprise/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index b993e6d3a649..000000000000 --- a/specification/redisenterprise/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,37 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-cache-2021-03-01 - - tag: schema-cache-2021-02-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-cache-2021-03-01 and azureresourceschema - -``` yaml $(tag) == 'schema-cache-2021-03-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Cache/stable/2021-03-01/redisenterprise.json - -``` - -### Tag: schema-cache-2021-02-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-cache-2021-02-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Cache/preview/2021-02-01-preview/redisenterprise.json - -``` - diff --git a/specification/redisenterprise/resource-manager/readme.go.md b/specification/redisenterprise/resource-manager/readme.go.md index f7153c1e4564..62ca1799815f 100644 --- a/specification/redisenterprise/resource-manager/readme.go.md +++ b/specification/redisenterprise/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ```yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: redisenterprise clear-output-folder: true ``` diff --git a/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/NetworkRuleSets-preview.json b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/NetworkRuleSets-preview.json index 72704f717385..9439c153ad1f 100644 --- a/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/NetworkRuleSets-preview.json +++ b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/NetworkRuleSets-preview.json @@ -37,7 +37,7 @@ } }, "paths": { - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/networkRuleSets/default": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Relay/namespaces/{namespaceName}/networkRuleSets/default": { "put": { "tags": [ "Namespaces" diff --git a/specification/relay/resource-manager/readme.azureresourceschema.md b/specification/relay/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 594e0810982e..000000000000 --- a/specification/relay/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,51 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-relay-2018-01-01-preview - - tag: schema-relay-2017-04-01 - - tag: schema-relay-2016-07-01 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-relay-2018-01-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-relay-2018-01-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Relay/preview/2018-01-01-preview/Namespaces-preview.json - - Microsoft.Relay/preview/2018-01-01-preview/NetworkRuleSets-preview.json - - Microsoft.Relay/preview/2018-01-01-preview/PrivateEndpointConnection-preview.json - - Microsoft.Relay/preview/2018-01-01-preview/PrivateLinkResources-preview.json - -``` - -### Tag: schema-relay-2017-04-01 and azureresourceschema - -``` yaml $(tag) == 'schema-relay-2017-04-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Relay/stable/2017-04-01/relay.json - -``` - -### Tag: schema-relay-2016-07-01 and azureresourceschema - -``` yaml $(tag) == 'schema-relay-2016-07-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Relay/stable/2016-07-01/relay.json - -``` diff --git a/specification/relay/resource-manager/readme.go.md b/specification/relay/resource-manager/readme.go.md index 1c46002f430e..e835e15efbd8 100644 --- a/specification/relay/resource-manager/readme.go.md +++ b/specification/relay/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: relay clear-output-folder: true ``` diff --git a/specification/relay/resource-manager/readme.md b/specification/relay/resource-manager/readme.md index 79c4ab022296..732063078b72 100644 --- a/specification/relay/resource-manager/readme.md +++ b/specification/relay/resource-manager/readme.md @@ -29,6 +29,14 @@ openapi-type: arm tag: package-2017-04 ``` +### Suppression + +``` yaml +directive: + - suppress: R4007 + reason: DefaultErrorResponseSchema - we will be Implementing in new API version +``` + ### Tag: package-2017-04 @@ -84,8 +92,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_relay'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js relay/resource-manager ``` @@ -157,7 +163,5 @@ generate-interface: true -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/reservations/resource-manager/readme.azureresourceschema.md b/specification/reservations/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 373e5921c928..000000000000 --- a/specification/reservations/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,96 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-capacity-2020-11-15-preview - - tag: schema-capacity-2020-10-25 - - tag: schema-capacity-2020-10-01-preview - - tag: schema-capacity-2019-07-19 - - tag: schema-capacity-2019-04-01 - - tag: schema-capacity-2018-06-01 - - tag: schema-capacity-2017-11-01 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-capacity-2020-11-15-preview and azureresourceschema - -``` yaml $(tag) == 'schema-capacity-2020-11-15-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Capacity/preview/2020-11-15-preview/reservationsChangeDirectory.json - -``` - -### Tag: schema-capacity-2020-10-25 and azureresourceschema - -``` yaml $(tag) == 'schema-capacity-2020-10-25' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Capacity/stable/2020-10-25/quota.json - -``` - -### Tag: schema-capacity-2020-10-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-capacity-2020-10-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Capacity/preview/2020-10-01-preview/reservations.json - -``` - -### Tag: schema-capacity-2019-07-19 and azureresourceschema - -``` yaml $(tag) == 'schema-capacity-2019-07-19' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Capacity/preview/2019-07-19/quota.json - -``` - -### Tag: schema-capacity-2019-04-01 and azureresourceschema - -``` yaml $(tag) == 'schema-capacity-2019-04-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Capacity/preview/2019-04-01/reservations.json - -``` - -### Tag: schema-capacity-2018-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-capacity-2018-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Capacity/preview/2018-06-01/reservations.json - -``` - -### Tag: schema-capacity-2017-11-01 and azureresourceschema - -``` yaml $(tag) == 'schema-capacity-2017-11-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Capacity/stable/2017-11-01/reservations.json - -``` diff --git a/specification/reservations/resource-manager/readme.go.md b/specification/reservations/resource-manager/readme.go.md index 74b6960914fd..9650269a3713 100644 --- a/specification/reservations/resource-manager/readme.go.md +++ b/specification/reservations/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION clear-output-folder: true namespace: reservations ``` diff --git a/specification/reservations/resource-manager/readme.md b/specification/reservations/resource-manager/readme.md index c0f77db82d7a..d17ad6db7c1b 100644 --- a/specification/reservations/resource-manager/readme.md +++ b/specification/reservations/resource-manager/readme.md @@ -116,8 +116,6 @@ swagger-to-sdk: - repo: azure-sdk-for-node - repo: azure-cli-extensions - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js reservations/resource-manager ``` ## C# @@ -150,7 +148,5 @@ See configuration in [readme.cli.md](./readme.cli.md) See configuration in [readme.go.md](./readme.go.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/resourcegraph/resource-manager/readme.azureresourceschema.md b/specification/resourcegraph/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index f8941bfb4a5c..000000000000 --- a/specification/resourcegraph/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,51 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-resourcegraph-2020-04-01-preview - - tag: schema-resourcegraph-2019-04-01 - - tag: schema-resourcegraph-2018-09-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-resourcegraph-2020-04-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-resourcegraph-2020-04-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ResourceGraph/preview/2020-04-01-preview/resourcegraph.json - - Microsoft.ResourceGraph/preview/2020-04-01-preview/resourcechanges.json - - Microsoft.ResourceGraph/preview/2020-04-01-preview/resourceshistory.json - -``` - -### Tag: schema-resourcegraph-2019-04-01 and azureresourceschema - -``` yaml $(tag) == 'schema-resourcegraph-2019-04-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ResourceGraph/stable/2019-04-01/resourcegraph.json - -``` - -### Tag: schema-resourcegraph-2018-09-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-resourcegraph-2018-09-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ResourceGraph/preview/2018-09-01-preview/resourcegraph.json - - Microsoft.ResourceGraph/preview/2018-09-01-preview/graphquery.json - -``` diff --git a/specification/resourcegraph/resource-manager/readme.go.md b/specification/resourcegraph/resource-manager/readme.go.md index 9c93699bc8af..15ee848a9a4d 100644 --- a/specification/resourcegraph/resource-manager/readme.go.md +++ b/specification/resourcegraph/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: resourcegraph clear-output-folder: true ``` @@ -13,10 +13,30 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-preview-2021-03 + - tag: package-2021-03 - tag: package-2019-04 - tag: package-2018-09-preview ``` +### Tag: package-preview-2021-03 and go + +These settings apply only when `--tag=package-preview-2021-03 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-preview-2021-03' && $(go) +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2021-03-01-preview/$(namespace) +``` + +### Tag: package-2021-03 and go + +These settings apply only when `--tag=package-2021-03 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2021-03' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2021-03-01/$(namespace) +``` + ### Tag: package-2019-04 and go These settings apply only when `--tag=package-2019-04 --go` is specified on the command line. diff --git a/specification/resourcegraph/resource-manager/readme.md b/specification/resourcegraph/resource-manager/readme.md index a384324849c0..bbf13fe032b6 100644 --- a/specification/resourcegraph/resource-manager/readme.md +++ b/specification/resourcegraph/resource-manager/readme.md @@ -27,7 +27,7 @@ These are the global settings for the ResourceGraph API. ``` yaml title: ResourceGraphClient openapi-type: arm -tag: package-2021-03 +tag: package-preview-2021-03 ``` ### Validations @@ -40,6 +40,17 @@ semantic-validator: true model-validator: true message-format: json ``` +### Tag: package-preview-2021-03 + +These settings apply only when `--tag=package-preview-2021-03` is specified on the command line. + +``` yaml $(tag) == 'package-preview-2021-03' +input-file: + - Microsoft.ResourceGraph/preview/2020-09-01-preview/resourcechanges.json + - Microsoft.ResourceGraph/stable/2021-03-01/resourcegraph.json + - Microsoft.ResourceGraph/preview/2020-04-01-preview/resourceshistory.json +``` + ### Tag: package-2021-03 These settings apply only when `--tag=package-2021-03` is specified on the command line. @@ -100,14 +111,12 @@ This is not used by Autorest itself. ``` yaml $(swagger-to-sdk) swagger-to-sdk: - repo: azure-sdk-for-net - - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-java - repo: azure-sdk-for-go - repo: azure-sdk-for-js - repo: azure-sdk-for-trenton - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js resourcegraph/resource-manager ``` ## C# @@ -124,6 +133,10 @@ csharp: clear-output-folder: true ``` +## Python + +See configuration in [readme.python.md](./readme.python.md) + ## Java See configuration in [readme.java.md](./readme.java.md) @@ -153,9 +166,7 @@ directive: reason: This is a clear scenario for a boolean and will not have more than 2 values in the future. ``` -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) ## cli diff --git a/specification/resourcegraph/resource-manager/readme.python.md b/specification/resourcegraph/resource-manager/readme.python.md index 45ee1b787413..a24de77d5c1c 100644 --- a/specification/resourcegraph/resource-manager/readme.python.md +++ b/specification/resourcegraph/resource-manager/readme.python.md @@ -4,17 +4,7 @@ These settings apply only when `--python` is specified on the command line. Please also specify `--python-sdks-folder=`. Use `--python-mode=update` if you already have a setup.py and just want to update the code itself. -``` yaml $(python) && !$(track2) -python-mode: create -python: - azure-arm: true - license-header: MICROSOFT_MIT_NO_VERSION - payload-flattening-threshold: 2 - namespace: azure.mgmt.resourcegraph - package-name: azure-mgmt-resourcegraph - package-version: 1.0.0 - clear-output-folder: true -``` + ``` yaml $(python) && $(track2) python-mode: create azure-arm: true @@ -24,16 +14,6 @@ package-name: azure-mgmt-resourcegraph package-version: 1.0.0 clear-output-folder: true ``` -``` yaml $(python) && $(python-mode) == 'update' && !$(track2) -python: - no-namespace-folders: true - output-folder: $(python-sdks-folder)/resources/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph -``` -``` yaml $(python) && $(python-mode) == 'create' && !$(track2) -python: - basic-setup-py: true - output-folder: $(python-sdks-folder)/resources/azure-mgmt-resourcegraph -``` ``` yaml $(python) && $(python-mode) == 'update' && $(track2) no-namespace-folders: true output-folder: $(python-sdks-folder)/resources/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph diff --git a/specification/resourcehealth/resource-manager/Microsoft.ResourceHealth/stable/2018-07-01/ResourceHealth.json b/specification/resourcehealth/resource-manager/Microsoft.ResourceHealth/stable/2018-07-01/ResourceHealth.json index daabe2fe08bd..641ea46f5f22 100644 --- a/specification/resourcehealth/resource-manager/Microsoft.ResourceHealth/stable/2018-07-01/ResourceHealth.json +++ b/specification/resourcehealth/resource-manager/Microsoft.ResourceHealth/stable/2018-07-01/ResourceHealth.json @@ -45,6 +45,9 @@ { "$ref": "#/parameters/FilterParameter" }, + { + "$ref": "#/parameters/QueryStartTimeParameter" + }, { "$ref": "#/parameters/SubscriptionIdParameter" }, @@ -1356,7 +1359,15 @@ "in": "query", "required": false, "type": "string", - "description": "The filter to apply on the operation. For more information please see https://docs.microsoft.com/en-us/rest/api/apimanagement/apis?redirectedfrom=MSDN", + "description": "A valid odata query to limit the events returned. The logical operators and, or, equal, not equal, and top are supported. For example, $filter=Properties/EventType eq 'ServiceIssue' or Properties/EventType eq 'PlannedMaintenance' OR %24filter=Properties%2FEventType%20eq%20%27ServiceIssue%27%20or%20Properties%2FEventType%20eq%20%27PlannedMaintenance%27", + "x-ms-parameter-location": "method" + }, + "QueryStartTimeParameter": { + "name": "queryStartTime", + "in": "query", + "required": false, + "type": "string", + "description": "Specifies from when to return events, based on the lastUpdateTime property. For example, queryStartTime = 7/24/2020 OR queryStartTime=7%2F24%2F2020", "x-ms-parameter-location": "method" }, "ExpandParameter": { diff --git a/specification/resourcehealth/resource-manager/Microsoft.ResourceHealth/stable/2018-07-01/examples/Events_ListBySubscriptionId.json b/specification/resourcehealth/resource-manager/Microsoft.ResourceHealth/stable/2018-07-01/examples/Events_ListBySubscriptionId.json index 11c578ca672a..da7b93b0c303 100644 --- a/specification/resourcehealth/resource-manager/Microsoft.ResourceHealth/stable/2018-07-01/examples/Events_ListBySubscriptionId.json +++ b/specification/resourcehealth/resource-manager/Microsoft.ResourceHealth/stable/2018-07-01/examples/Events_ListBySubscriptionId.json @@ -2,7 +2,8 @@ "parameters": { "subscriptionId": "subscriptionId", "api-version": "2018-07-01-preview", - "$filter": "service eq 'Virtual Machines' or region eq 'West US'" + "$filter": "service eq 'Virtual Machines' or region eq 'West US'", + "queryStartTime": "7/24/2020" }, "responses": { "200": { diff --git a/specification/resourcehealth/resource-manager/readme.azureresourceschema.md b/specification/resourcehealth/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index cf5e58b870e5..000000000000 --- a/specification/resourcehealth/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,60 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-resourcehealth-2018-08-01 - - tag: schema-resourcehealth-2018-07-01 - - tag: schema-resourcehealth-2017-07-01 - - tag: schema-resourcehealth-2015-01-01 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-resourcehealth-2018-08-01 and azureresourceschema - -``` yaml $(tag) == 'schema-resourcehealth-2018-08-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ResourceHealth/preview/2018-08-01/ResourceHealth.json - -``` - -### Tag: schema-resourcehealth-2018-07-01 and azureresourceschema - -``` yaml $(tag) == 'schema-resourcehealth-2018-07-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ResourceHealth/stable/2018-07-01/ResourceHealth.json - -``` - -### Tag: schema-resourcehealth-2017-07-01 and azureresourceschema - -``` yaml $(tag) == 'schema-resourcehealth-2017-07-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ResourceHealth/stable/2017-07-01/resourcehealth.json - -``` - -### Tag: schema-resourcehealth-2015-01-01 and azureresourceschema - -``` yaml $(tag) == 'schema-resourcehealth-2015-01-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ResourceHealth/stable/2015-01-01/resourcehealth.json - -``` diff --git a/specification/resourcehealth/resource-manager/readme.go.md b/specification/resourcehealth/resource-manager/readme.go.md index 73b8c080c8c8..0bb5f2ce8c3a 100644 --- a/specification/resourcehealth/resource-manager/readme.go.md +++ b/specification/resourcehealth/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: resourcehealth clear-output-folder: true ``` diff --git a/specification/resourcehealth/resource-manager/readme.md b/specification/resourcehealth/resource-manager/readme.md index cb06b5ae582d..24f70a412441 100644 --- a/specification/resourcehealth/resource-manager/readme.md +++ b/specification/resourcehealth/resource-manager/readme.md @@ -89,8 +89,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_resourcehealth'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js resourcehealth/resource-manager ``` ## Go @@ -109,6 +107,7 @@ namespace: com.microsoft.azure.management.resourcehealth license-header: MICROSOFT_MIT_NO_CODEGEN payload-flattening-threshold: 1 output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-resourcehealth +service-name: ResourceHealth ``` ### Java multi-api @@ -172,7 +171,5 @@ generate-interface: true ``` -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/resourcemover/resource-manager/readme.azureresourceschema.md b/specification/resourcemover/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 74dec997f261..000000000000 --- a/specification/resourcemover/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,36 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-migrate-2021-01-01 - - tag: schema-migrate-2019-10-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-migrate-2021-01-01 and azureresourceschema - -``` yaml $(tag) == 'schema-migrate-2021-01-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Migrate/stable/2021-01-01/resourcemovercollection.json - -``` - -### Tag: schema-migrate-2019-10-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-migrate-2019-10-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Migrate/preview/2019-10-01-preview/resourcemovercollection.json - -``` diff --git a/specification/resourcemover/resource-manager/readme.go.md b/specification/resourcemover/resource-manager/readme.go.md index d065629b880f..b94d91c3a51f 100644 --- a/specification/resourcemover/resource-manager/readme.go.md +++ b/specification/resourcemover/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ```yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: resourcemover clear-output-folder: true ``` diff --git a/specification/resourcemover/resource-manager/readme.md b/specification/resourcemover/resource-manager/readme.md index 24addf3e0307..26a31fad57f6 100644 --- a/specification/resourcemover/resource-manager/readme.md +++ b/specification/resourcemover/resource-manager/readme.md @@ -67,8 +67,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_resourcemover'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js resourcemover/resource-manager ``` ## Go @@ -95,6 +93,4 @@ See configuration in [readme.csharp.md](./readme.csharp.md) See configuration in [readme.java.md](./readme.java.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/resourcemover/resource-manager/readme.python.md b/specification/resourcemover/resource-manager/readme.python.md index 496619ce1a88..0d7425442463 100644 --- a/specification/resourcemover/resource-manager/readme.python.md +++ b/specification/resourcemover/resource-manager/readme.python.md @@ -3,7 +3,7 @@ These settings apply only when `--python` is specified on the command line. Please also specify `--python-sdks-folder=`. -```yaml $(python) +```yaml $(python) && $(track2) azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION package-name: azure-mgmt-resourcemover @@ -12,13 +12,12 @@ no-namespace-folders: true package-version: 1.0.0b1 ``` -```yaml $(python) && $(python-mode) == 'update' +```yaml $(python) && $(python-mode) == 'update' && $(track2) no-namespace-folders: true output-folder: $(python-sdks-folder)/resourcemover/azure-mgmt-resourcemover/azure/mgmt/resourcemover ``` -``` yaml $(python) && $(python-mode) == 'create' -python: - basic-setup-py: true - output-folder: $(python-sdks-folder)/resourcemover/azure-mgmt-resourcemover +``` yaml $(python) && $(python-mode) == 'create' && $(track2) +basic-setup-py: true +output-folder: $(python-sdks-folder)/resourcemover/azure-mgmt-resourcemover ``` diff --git a/specification/resourcemover/resource-manager/readme.terraform.md b/specification/resourcemover/resource-manager/readme.terraform.md index 321d4290b9f0..82259f25a2ab 100644 --- a/specification/resourcemover/resource-manager/readme.terraform.md +++ b/specification/resourcemover/resource-manager/readme.terraform.md @@ -18,3 +18,12 @@ overrides: set: - SchemaName: "dependency" ``` + + +```yaml $(tag) == 'package-2019-10-01-preview' && $(terraform) +gosdk-folder: services/preview/resourcemover/mgmt/2019-10-01-preview/resourcemover +``` + +```yaml $(tag) == 'package-2021-01-01' && $(terraform) +gosdk-folder: services/resourcemover/mgmt/2021-01-01/resourcemover +``` diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecVersionsCreate.json b/specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecVersionsCreate.json new file mode 100644 index 000000000000..ddb5f52e7c9f --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecVersionsCreate.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "templateSpecRG", + "templateSpecName": "simpleTemplateSpec", + "templateSpecVersion": "v1.0", + "templateSpecVersionModel": { + "location": "eastus", + "properties": { + "description": "This is version v1.0 of our template content", + "mainTemplate": { + "$schema": "http://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#", + "contentVersion": "1.0.0.0", + "parameters": {}, + "resources": [] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/templateSpecRG/providers/Microsoft.Resources/templateSpecs/simpleTemplateSpec/versions/v1.0", + "type": "Microsoft.Resources/templateSpecs/versions", + "name": "v1.0", + "location": "eastus", + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-02-02T02:03:01.1974346Z" + }, + "properties": { + "description": "This is version v1.0 of our template content", + "mainTemplate": { + "$schema": "http://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#", + "contentVersion": "1.0.0.0", + "parameters": {}, + "resources": [] + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/templateSpecRG/providers/Microsoft.Resources/templateSpecs/simpleTemplateSpec/versions/v1.0", + "type": "Microsoft.Resources/templateSpecs/versions", + "name": "v1.0", + "location": "eastus", + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + }, + "properties": { + "description": "This is version v1.0 of our template content", + "mainTemplate": { + "$schema": "http://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#", + "contentVersion": "1.0.0.0", + "parameters": {}, + "resources": [] + } + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecVersionsDelete.json b/specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecVersionsDelete.json new file mode 100644 index 000000000000..874d2f214ce9 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecVersionsDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "templateSpecRG", + "templateSpecName": "simpleTemplateSpec", + "templateSpecVersion": "v1.0" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecVersionsGet.json b/specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecVersionsGet.json new file mode 100644 index 000000000000..175622b1fe55 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecVersionsGet.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "templateSpecRG", + "templateSpecName": "simpleTemplateSpec", + "templateSpecVersion": "v1.0" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/templateSpecRG/providers/Microsoft.Resources/templateSpecs/simpleTemplateSpec/versions/v1.0", + "type": "Microsoft.Resources/templateSpecs/versions", + "name": "v1.0", + "location": "eastus", + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-02-02T02:03:01.1974346Z" + }, + "properties": { + "description": "This is version v1.0 of our template content", + "mainTemplate": { + "$schema": "http://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#", + "contentVersion": "1.0.0.0", + "parameters": {}, + "resources": [] + } + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecVersionsList.json b/specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecVersionsList.json new file mode 100644 index 000000000000..620a8980fa3c --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecVersionsList.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "templateSpecRG", + "templateSpecName": "simpleTemplateSpec" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/templateSpecRG/providers/Microsoft.Resources/templateSpecs/simpleTemplateSpec/versions/v1.0", + "type": "Microsoft.Resources/templateSpecs/versions", + "name": "v1.0", + "location": "eastus", + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-02-02T02:03:01.1974346Z" + }, + "properties": { + "description": "This is version v1.0" + } + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/templateSpecRG/providers/Microsoft.Resources/templateSpecs/simpleTemplateSpec/versions/v2.0", + "type": "Microsoft.Resources/templateSpecs/versions", + "name": "v2.0", + "location": "eastus", + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-02-03T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-02-04T02:03:01.1974346Z" + }, + "properties": { + "description": "This is another version (v2.0)" + } + } + ] + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecVersionsPatch.json b/specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecVersionsPatch.json new file mode 100644 index 000000000000..49f2b38fe025 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecVersionsPatch.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "templateSpecRG", + "templateSpecName": "simpleTemplateSpec", + "templateSpecVersion": "v1.0", + "templateSpecVersionUpdateModel": { + "tags": { + "myTag": "My Value" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/templateSpecRG/providers/Microsoft.Resources/templateSpecs/simpleTemplateSpec/versions/v1.0", + "type": "Microsoft.Resources/templateSpecs/versions", + "name": "v1.0", + "location": "eastus", + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-02-02T02:03:01.1974346Z" + }, + "properties": { + "description": "This is version v1.0 of our template content", + "mainTemplate": { + "$schema": "http://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#", + "contentVersion": "1.0.0.0", + "parameters": {}, + "resources": [] + } + }, + "tags": { + "myTag": "My Value" + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecsCreate.json b/specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecsCreate.json new file mode 100644 index 000000000000..925f7de6cbbb --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecsCreate.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "templateSpecRG", + "templateSpecName": "simpleTemplateSpec", + "templateSpec": { + "location": "eastus", + "properties": { + "description": "A very simple Template Spec" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/templateSpecRG/providers/Microsoft.Resources/templateSpecs/simpleTemplateSpec", + "type": "Microsoft.Resources/templateSpecs", + "name": "simpleTemplateSpec", + "location": "eastus", + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + }, + "properties": { + "description": "A very simple Template Spec" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/templateSpecRG/providers/Microsoft.Resources/templateSpecs/simpleTemplateSpec", + "type": "Microsoft.Resources/templateSpecs", + "name": "simpleTemplateSpec", + "location": "eastus", + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-02-02T02:03:01.1974346Z" + }, + "properties": { + "description": "A very simple Template Spec" + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecsDelete.json b/specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecsDelete.json new file mode 100644 index 000000000000..5b874447a9cd --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecsDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "templateSpecRG", + "templateSpecName": "simpleTemplateSpec" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecsGet.json b/specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecsGet.json new file mode 100644 index 000000000000..07f9f0d3855d --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecsGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "templateSpecRG", + "templateSpecName": "simpleTemplateSpec" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/templateSpecRG/providers/Microsoft.Resources/templateSpecs/simpleTemplateSpec", + "type": "Microsoft.Resources/templateSpecs", + "name": "simpleTemplateSpec", + "location": "eastus", + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-02-02T02:03:01.1974346Z" + }, + "properties": { + "description": "A very simple Template Spec" + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecsListByResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecsListByResourceGroup.json new file mode 100644 index 000000000000..1e0fd3b8a53f --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecsListByResourceGroup.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "templateSpecRG" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/templateSpecRG/providers/Microsoft.Resources/templateSpecs/simpleTemplateSpec", + "type": "Microsoft.Resources/templateSpecs", + "name": "simpleTemplateSpec", + "location": "eastus", + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-02-02T02:03:01.1974346Z" + }, + "properties": { + "description": "A very simple Template Spec" + } + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/templateSpecRG/providers/Microsoft.Resources/templateSpecs/anotherSimpleTemplateSpec", + "type": "Microsoft.Resources/templateSpecs", + "name": "anotherSimpleTemplateSpec", + "location": "westus", + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-02-02T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-02-03T02:03:01.1974346Z" + }, + "properties": { + "description": "Another very simple Template Spec" + } + } + ] + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecsListBySubscription.json b/specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecsListBySubscription.json new file mode 100644 index 000000000000..2dbe39f0c861 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecsListBySubscription.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/templateSpecRG/providers/Microsoft.Resources/templateSpecs/simpleTemplateSpec", + "type": "Microsoft.Resources/templateSpecs", + "name": "simpleTemplateSpec", + "location": "eastus", + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-02-02T02:03:01.1974346Z" + }, + "properties": { + "description": "A very simple Template Spec" + } + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/templateSpecRG2/providers/Microsoft.Resources/templateSpecs/anotherSimpleTemplateSpec", + "type": "Microsoft.Resources/templateSpecs", + "name": "anotherSimpleTemplateSpec", + "location": "westus", + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-02-02T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-02-03T02:03:01.1974346Z" + }, + "properties": { + "description": "Another very simple Template Spec" + } + } + ] + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecsPatch.json b/specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecsPatch.json new file mode 100644 index 000000000000..6900a2365d4d --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecsPatch.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "templateSpecRG", + "templateSpecName": "simpleTemplateSpec", + "templateSpec": { + "tags": { + "myTag": "My Value" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/templateSpecRG/providers/Microsoft.Resources/templateSpecs/simpleTemplateSpec", + "type": "Microsoft.Resources/templateSpecs", + "name": "simpleTemplateSpec", + "location": "eastus", + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-02-02T02:03:01.1974346Z" + }, + "properties": { + "description": "A very simple Template Spec" + }, + "tags": { + "myTag": "My Value" + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/templateSpecs.json b/specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/templateSpecs.json new file mode 100644 index 000000000000..18a24d1bf71e --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/templateSpecs.json @@ -0,0 +1,903 @@ +{ + "swagger": "2.0", + "info": { + "title": "TemplateSpecsClient", + "description": "The APIs listed in this specification can be used to manage Template Spec resources through the Azure Resource Manager.", + "version": "2021-03-01-preview" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Resources/templateSpecs/{templateSpecName}": { + "put": { + "tags": [ + "TemplateSpecs" + ], + "operationId": "TemplateSpecs_CreateOrUpdate", + "description": "Creates or updates a Template Spec.", + "x-ms-examples": { + "TemplateSpecsCreateUpdate": { + "$ref": "./examples/TemplateSpecsCreate.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/TemplateSpecNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "templateSpec", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TemplateSpec" + }, + "description": "Template Spec supplied to the operation." + } + ], + "responses": { + "200": { + "description": "OK - The Template Spec update request has succeeded.", + "schema": { + "$ref": "#/definitions/TemplateSpec" + } + }, + "201": { + "description": "Template Spec created.", + "schema": { + "$ref": "#/definitions/TemplateSpec" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/TemplateSpecsError" + } + } + } + }, + "patch": { + "tags": [ + "TemplateSpecs" + ], + "operationId": "TemplateSpecs_Update", + "description": "Updates Template Spec tags with specified values.", + "x-ms-examples": { + "TemplateSpecsPatch": { + "$ref": "./examples/TemplateSpecsPatch.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/TemplateSpecNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "templateSpec", + "in": "body", + "schema": { + "$ref": "#/definitions/TemplateSpecUpdateModel" + }, + "description": "Template Spec resource with the tags to be updated." + } + ], + "responses": { + "200": { + "description": "OK -- Template Spec tags are updated.", + "schema": { + "$ref": "#/definitions/TemplateSpec" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/TemplateSpecsError" + } + } + } + }, + "get": { + "tags": [ + "TemplateSpecs" + ], + "operationId": "TemplateSpecs_Get", + "description": "Gets a Template Spec with a given name.", + "x-ms-examples": { + "TemplateSpecsGet": { + "$ref": "./examples/TemplateSpecsGet.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/TemplateSpecNameParameter" + }, + { + "$ref": "#/parameters/TemplateSpecExpandParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the Template Spec.", + "schema": { + "$ref": "#/definitions/TemplateSpec" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/TemplateSpecsError" + } + } + } + }, + "delete": { + "tags": [ + "TemplateSpecs" + ], + "operationId": "TemplateSpecs_Delete", + "description": "Deletes a Template Spec by name. When operation completes, status code 200 returned without content.", + "x-ms-examples": { + "TemplateSpecsDelete": { + "$ref": "./examples/TemplateSpecsDelete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/TemplateSpecNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Template Spec deleted." + }, + "204": { + "description": "Template Spec does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/TemplateSpecsError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/templateSpecs/": { + "get": { + "tags": [ + "TemplateSpecs" + ], + "operationId": "TemplateSpecs_ListBySubscription", + "description": "Lists all the Template Specs within the specified subscriptions.", + "x-ms-examples": { + "TemplatesSpecsListBySubscription": { + "$ref": "./examples/TemplateSpecsListBySubscription.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/TemplateSpecExpandParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of Template Specs.", + "schema": { + "$ref": "#/definitions/TemplateSpecsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/TemplateSpecsError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Resources/templateSpecs/": { + "get": { + "tags": [ + "TemplateSpecs" + ], + "operationId": "TemplateSpecs_ListByResourceGroup", + "description": "Lists all the Template Specs within the specified resource group.", + "x-ms-examples": { + "TemplateSpecsListByResourceGroup": { + "$ref": "./examples/TemplateSpecsListByResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/TemplateSpecExpandParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of Template Specs.", + "schema": { + "$ref": "#/definitions/TemplateSpecsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/TemplateSpecsError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Resources/templateSpecs/{templateSpecName}/versions/{templateSpecVersion}": { + "put": { + "tags": [ + "TemplateSpecVersions" + ], + "operationId": "TemplateSpecVersions_CreateOrUpdate", + "description": "Creates or updates a Template Spec version.", + "x-ms-examples": { + "TemplateSpecVersionsCreateUpdate": { + "$ref": "./examples/TemplateSpecVersionsCreate.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/TemplateSpecNameParameter" + }, + { + "$ref": "#/parameters/TemplateSpecVersionParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "templateSpecVersionModel", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TemplateSpecVersion" + }, + "description": "Template Spec Version supplied to the operation." + } + ], + "responses": { + "200": { + "description": "OK - The Template Spec Version has been successfully updated.", + "schema": { + "$ref": "#/definitions/TemplateSpecVersion" + } + }, + "201": { + "description": "Template Spec Version created.", + "schema": { + "$ref": "#/definitions/TemplateSpecVersion" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/TemplateSpecsError" + } + } + } + }, + "patch": { + "tags": [ + "TemplateSpecVersions" + ], + "operationId": "TemplateSpecVersions_Update", + "description": "Updates Template Spec Version tags with specified values.", + "x-ms-examples": { + "TemplateSpecsPatch": { + "$ref": "./examples/TemplateSpecVersionsPatch.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/TemplateSpecNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/TemplateSpecVersionParameter" + }, + { + "name": "templateSpecVersionUpdateModel", + "in": "body", + "schema": { + "$ref": "#/definitions/TemplateSpecVersionUpdateModel" + }, + "description": "Template Spec Version resource with the tags to be updated." + } + ], + "responses": { + "200": { + "description": "OK -- Template Spec Version tags are updated.", + "schema": { + "$ref": "#/definitions/TemplateSpecVersion" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/TemplateSpecsError" + } + } + } + }, + "get": { + "tags": [ + "TemplateSpecVersions" + ], + "operationId": "TemplateSpecVersions_Get", + "description": "Gets a Template Spec version from a specific Template Spec.", + "x-ms-examples": { + "TemplateSpecVersionsGet": { + "$ref": "./examples/TemplateSpecVersionsGet.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/TemplateSpecNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/TemplateSpecVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the Template Spec version.", + "schema": { + "$ref": "#/definitions/TemplateSpecVersion" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/TemplateSpecsError" + } + } + } + }, + "delete": { + "tags": [ + "TemplateSpecVersions" + ], + "operationId": "TemplateSpecVersions_Delete", + "description": "Deletes a specific version from a Template Spec. When operation completes, status code 200 returned without content.", + "x-ms-examples": { + "TemplateSpecVersionsDelete": { + "$ref": "./examples/TemplateSpecVersionsDelete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/TemplateSpecNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/TemplateSpecVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Template Spec Version deleted." + }, + "204": { + "description": "Template Spec Version does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/TemplateSpecsError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Resources/templateSpecs/{templateSpecName}/versions": { + "get": { + "tags": [ + "TemplateSpecVersions" + ], + "operationId": "TemplateSpecVersions_List", + "description": "Lists all the Template Spec versions in the specified Template Spec.", + "x-ms-examples": { + "TemplateSpecVersions_List": { + "$ref": "./examples/TemplateSpecVersionsList.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/TemplateSpecNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of Template Spec versions.", + "schema": { + "$ref": "#/definitions/TemplateSpecVersionsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/TemplateSpecsError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "TemplateSpec": { + "required": [ + "location" + ], + "type": "object", + "description": "Template Spec object.", + "allOf": [ + { + "$ref": "#/definitions/AzureResourceBase" + } + ], + "properties": { + "location": { + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ], + "description": "The location of the Template Spec. It cannot be changed after Template Spec creation. It must be one of the supported Azure locations." + }, + "properties": { + "description": "Template Spec properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/TemplateSpecProperties" + }, + "tags": { + "type": "object", + "description": "Resource tags.", + "additionalProperties": { + "type": "string" + } + } + } + }, + "TemplateSpecProperties": { + "type": "object", + "description": "Template Spec properties.", + "properties": { + "description": { + "type": "string", + "maxLength": 4096, + "description": "Template Spec description." + }, + "displayName": { + "type": "string", + "maxLength": 64, + "description": "Template Spec display name." + }, + "metadata": { + "type": "object", + "description": "The Template Spec metadata. Metadata is an open-ended object and is typically a collection of key-value pairs." + }, + "versions": { + "type": "object", + "readOnly": true, + "description": "High-level information about the versions within this Template Spec. The keys are the version names. Only populated if the $expand query parameter is set to 'versions'.", + "additionalProperties": { + "$ref": "#/definitions/TemplateSpecVersionInfo" + } + } + } + }, + "TemplateSpecsListResult": { + "description": "List of Template Specs.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/TemplateSpec" + }, + "description": "An array of Template Specs." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + } + }, + "TemplateSpecUpdateModel": { + "type": "object", + "description": "Template Spec properties to be updated (only tags are currently supported).", + "properties": { + "tags": { + "type": "object", + "description": "Resource tags.", + "additionalProperties": { + "type": "string" + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/AzureResourceBase" + } + ] + }, + "TemplateSpecVersionUpdateModel": { + "type": "object", + "description": "Template Spec Version properties to be updated (only tags are currently supported).", + "properties": { + "tags": { + "type": "object", + "description": "Resource tags.", + "additionalProperties": { + "type": "string" + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/AzureResourceBase" + } + ] + }, + "AzureResourceBase": { + "x-ms-azure-resource": true, + "type": "object", + "description": "Common properties for all Azure resources.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "String Id used to locate any resource on Azure." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Name of this resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of this resource." + }, + "systemData": { + "readOnly": true, + "type": "object", + "description": "Azure Resource Manager metadata containing createdBy and modifiedBy information.", + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/systemData" + } + } + }, + "TemplateSpecVersion": { + "required": [ + "properties", + "location" + ], + "type": "object", + "description": "Template Spec Version object.", + "allOf": [ + { + "$ref": "#/definitions/AzureResourceBase" + } + ], + "properties": { + "location": { + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ], + "description": "The location of the Template Spec Version. It must match the location of the parent Template Spec." + }, + "properties": { + "description": "Template Spec Version properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/TemplateSpecVersionProperties" + }, + "tags": { + "type": "object", + "description": "Resource tags.", + "additionalProperties": { + "type": "string" + } + } + } + }, + "TemplateSpecVersionProperties": { + "type": "object", + "description": "Template Spec Version properties.", + "properties": { + "description": { + "type": "string", + "maxLength": 4096, + "description": "Template Spec version description." + }, + "linkedTemplates": { + "type": "array", + "items": { + "$ref": "#/definitions/LinkedTemplateArtifact" + }, + "description": "An array of linked template artifacts." + }, + "metadata": { + "type": "object", + "description": "The version metadata. Metadata is an open-ended object and is typically a collection of key-value pairs." + }, + "mainTemplate": { + "type": "object", + "description": "The main Azure Resource Manager template content." + }, + "uiFormDefinition": { + "type": "object", + "description": "The Azure Resource Manager template UI definition content." + } + } + }, + "TemplateSpecVersionsListResult": { + "description": "List of Template Specs versions", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/TemplateSpecVersion" + }, + "description": "An array of Template Spec versions." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + } + }, + "LinkedTemplateArtifact": { + "type": "object", + "description": "Represents a Template Spec artifact containing an embedded Azure Resource Manager template for use as a linked template.", + "properties": { + "path": { + "type": "string", + "description": "A filesystem safe relative path of the artifact." + }, + "template": { + "type": "object", + "description": "The Azure Resource Manager template." + } + }, + "required": [ + "template", + "path" + ] + }, + "TemplateSpecVersionInfo": { + "type": "object", + "description": "High-level information about a Template Spec version.", + "properties": { + "description": { + "type": "string", + "readOnly": true, + "description": "Template Spec version description." + }, + "timeCreated": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The timestamp of when the version was created." + }, + "timeModified": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The timestamp of when the version was last modified." + } + } + }, + "TemplateSpecsError": { + "properties": { + "error": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "Template Specs error response." + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "client", + "description": "Subscription Id which forms part of the URI for every service call." + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90, + "x-ms-parameter-location": "method" + }, + "TemplateSpecNameParameter": { + "name": "templateSpecName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[-\\w\\._\\(\\)]+$", + "description": "Name of the Template Spec.", + "minLength": 1, + "maxLength": 90, + "x-ms-parameter-location": "method" + }, + "TemplateSpecVersionParameter": { + "name": "templateSpecVersion", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[-\\w\\._\\(\\)]+$", + "description": "The version of the Template Spec.", + "minLength": 1, + "maxLength": 90, + "x-ms-parameter-location": "method" + }, + "TemplateSpecExpandParameter": { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Allows for expansion of additional Template Spec details in the response. Optional.", + "x-ms-parameter-location": "method", + "enum": [ + "versions" + ], + "x-ms-enum": { + "name": "TemplateSpecExpandKind", + "modelAsString": true, + "values": [ + { + "value": "versions", + "description": "Includes version information with the Template Spec." + } + ] + } + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "x-ms-parameter-location": "client", + "description": "Client Api version." + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2016-02-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2016-02-01/resources.json index 82416c7d820d..9f7bacedf35d 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2016-02-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2016-02-01/resources.json @@ -1039,7 +1039,8 @@ "name": "api-version", "in": "query", "required": true, - "type": "string" + "type": "string", + "x-ms-api-version": false }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -1105,7 +1106,8 @@ "name": "api-version", "in": "query", "required": true, - "type": "string" + "type": "string", + "x-ms-api-version": false }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -1174,7 +1176,8 @@ "name": "api-version", "in": "query", "required": true, - "type": "string" + "type": "string", + "x-ms-api-version": false }, { "name": "parameters", @@ -1256,7 +1259,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "name": "parameters", @@ -1335,7 +1339,8 @@ "name": "api-version", "in": "query", "required": true, - "type": "string" + "type": "string", + "x-ms-api-version": false }, { "$ref": "#/parameters/SubscriptionIdParameter" diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2016-07-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2016-07-01/resources.json index ba75570f5d41..188923c9ce46 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2016-07-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2016-07-01/resources.json @@ -1912,6 +1912,12 @@ }, "description": "The api version." }, + "zoneMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ZoneMapping" + } + }, "properties": { "type": "object", "additionalProperties": { @@ -2634,6 +2640,20 @@ "description": "The template hash." } } + }, + "ZoneMapping": { + "properties": { + "location": { + "type": "string", + "description": "The location of the zone mapping." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + } + } + } } }, "parameters": { diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2016-09-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2016-09-01/resources.json index ac7164349bc7..1e7c9492a676 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2016-09-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2016-09-01/resources.json @@ -1068,7 +1068,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -1135,7 +1136,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -1206,7 +1208,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "name": "parameters", @@ -1292,7 +1295,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "name": "parameters", @@ -1372,7 +1376,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -1409,7 +1414,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { @@ -1441,7 +1447,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { @@ -1477,7 +1484,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "name": "parameters", @@ -1528,7 +1536,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "name": "parameters", @@ -1573,7 +1582,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { @@ -2153,6 +2163,12 @@ }, "description": "The API version." }, + "zoneMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ZoneMapping" + } + }, "properties": { "type": "object", "additionalProperties": { @@ -2893,6 +2909,20 @@ "description": "The template hash." } } + }, + "ZoneMapping": { + "properties": { + "location": { + "type": "string", + "description": "The location of the zone mapping." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + } + } + } } }, "parameters": { diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2017-05-10/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2017-05-10/resources.json index 58b83811613c..ad4cff1528f2 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2017-05-10/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2017-05-10/resources.json @@ -1117,7 +1117,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -1184,7 +1185,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -1255,7 +1257,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "name": "parameters", @@ -1341,7 +1344,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "name": "parameters", @@ -1421,7 +1425,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -1458,7 +1463,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { @@ -1490,7 +1496,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { @@ -1526,7 +1533,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "name": "parameters", @@ -1577,7 +1585,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "name": "parameters", @@ -1622,7 +1631,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { @@ -2203,6 +2213,12 @@ }, "description": "The API version." }, + "zoneMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ZoneMapping" + } + }, "properties": { "type": "object", "additionalProperties": { @@ -2975,6 +2991,20 @@ "description": "The template hash." } } + }, + "ZoneMapping": { + "properties": { + "location": { + "type": "string", + "description": "The location of the zone mapping." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + } + } + } } }, "parameters": { 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 index 94a0fa735d50..bb74dad2f700 100644 --- 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 @@ -1125,7 +1125,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -1192,7 +1193,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -1263,7 +1265,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "name": "parameters", @@ -1349,7 +1352,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "name": "parameters", @@ -1429,7 +1433,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -1466,7 +1471,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { @@ -1498,7 +1504,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { @@ -1534,7 +1541,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "name": "parameters", @@ -1585,7 +1593,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "name": "parameters", @@ -1630,7 +1639,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { @@ -2215,6 +2225,12 @@ }, "description": "The API version." }, + "zoneMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ZoneMapping" + } + }, "properties": { "type": "object", "additionalProperties": { @@ -3042,6 +3058,20 @@ "description": "The template hash." } } + }, + "ZoneMapping": { + "properties": { + "location": { + "type": "string", + "description": "The location of the zone mapping." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + } + } + } } }, "parameters": { diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2018-05-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2018-05-01/resources.json index 96741c288d29..c974df338f3c 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2018-05-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2018-05-01/resources.json @@ -1470,7 +1470,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -1537,7 +1538,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -1608,7 +1610,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "name": "parameters", @@ -1694,7 +1697,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "name": "parameters", @@ -1774,7 +1778,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -1811,7 +1816,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { @@ -1843,7 +1849,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { @@ -1879,7 +1886,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "name": "parameters", @@ -1930,7 +1938,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "name": "parameters", @@ -1975,7 +1984,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { @@ -2652,6 +2662,12 @@ }, "description": "The API version." }, + "zoneMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ZoneMapping" + } + }, "properties": { "type": "object", "additionalProperties": { @@ -3558,6 +3574,20 @@ "description": "The template hash." } } + }, + "ZoneMapping": { + "properties": { + "location": { + "type": "string", + "description": "The location of the zone mapping." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + } + } + } } }, "parameters": { diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-03-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-03-01/resources.json index d68a5cbff97c..b6a920df901f 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-03-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-03-01/resources.json @@ -1478,7 +1478,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -1545,7 +1546,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -1616,7 +1618,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "name": "parameters", @@ -1702,7 +1705,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "name": "parameters", @@ -1782,7 +1786,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -1819,7 +1824,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { @@ -1851,7 +1857,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { @@ -1887,7 +1894,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "name": "parameters", @@ -1938,7 +1946,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "name": "parameters", @@ -1983,7 +1992,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { @@ -2660,6 +2670,12 @@ }, "description": "The API version." }, + "zoneMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ZoneMapping" + } + }, "capabilities": { "type": "string", "description": "The additional capabilities offered by this resource type." @@ -3575,6 +3591,20 @@ "description": "The template hash." } } + }, + "ZoneMapping": { + "properties": { + "location": { + "type": "string", + "description": "The location of the zone mapping." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + } + } + } } }, "parameters": { diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-01/resources.json index 608abcbb182d..44c5c2603c73 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-01/resources.json @@ -1651,7 +1651,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -1718,7 +1719,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -1789,7 +1791,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "name": "parameters", @@ -1875,7 +1878,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "name": "parameters", @@ -1955,7 +1959,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -1992,7 +1997,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { @@ -2024,7 +2030,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { @@ -2060,7 +2067,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "name": "parameters", @@ -2111,7 +2119,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "name": "parameters", @@ -2156,7 +2165,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { @@ -2880,6 +2890,12 @@ }, "description": "The API version." }, + "zoneMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ZoneMapping" + } + }, "capabilities": { "type": "string", "description": "The additional capabilities offered by this resource type." @@ -3807,6 +3823,20 @@ "description": "The template hash." } } + }, + "ZoneMapping": { + "properties": { + "location": { + "type": "string", + "description": "The location of the zone mapping." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + } + } + } } }, "parameters": { diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-10/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-10/resources.json index 1cbe25092823..63ad852c4df7 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-10/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-10/resources.json @@ -1727,7 +1727,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -1794,7 +1795,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -1865,7 +1867,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "name": "parameters", @@ -1951,7 +1954,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "name": "parameters", @@ -2031,7 +2035,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -2068,7 +2073,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { @@ -2100,7 +2106,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { @@ -2136,7 +2143,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "name": "parameters", @@ -2187,7 +2195,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "name": "parameters", @@ -2232,7 +2241,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { @@ -2956,6 +2966,12 @@ }, "description": "The API version." }, + "zoneMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ZoneMapping" + } + }, "capabilities": { "type": "string", "description": "The additional capabilities offered by this resource type." @@ -3883,6 +3899,20 @@ "description": "The template hash." } } + }, + "ZoneMapping": { + "properties": { + "location": { + "type": "string", + "description": "The location of the zone mapping." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + } + } + } } }, "parameters": { diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-07-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-07-01/resources.json index 2d3b9b296a41..384f3cea97f7 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-07-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-07-01/resources.json @@ -2730,7 +2730,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -2803,7 +2804,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -2880,7 +2882,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "name": "parameters", @@ -2972,7 +2975,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "name": "parameters", @@ -3058,7 +3062,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -3101,7 +3106,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { @@ -3139,7 +3145,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { @@ -3181,7 +3188,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "name": "parameters", @@ -3238,7 +3246,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "name": "parameters", @@ -3289,7 +3298,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { @@ -4270,6 +4280,12 @@ }, "description": "The API version." }, + "zoneMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ZoneMapping" + } + }, "capabilities": { "type": "string", "description": "The additional capabilities offered by this resource type." @@ -5357,6 +5373,20 @@ "description": "Error when What-If operation fails." } } + }, + "ZoneMapping": { + "properties": { + "location": { + "type": "string", + "description": "The location of the zone mapping." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + } + } + } } }, "parameters": { diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/resources.json index 9e93e552c6db..5bfcc92f0fa0 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/resources.json @@ -4297,6 +4297,12 @@ }, "description": "The API version." }, + "zoneMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ZoneMapping" + } + }, "capabilities": { "type": "string", "description": "The additional capabilities offered by this resource type." @@ -5384,6 +5390,20 @@ "description": "Error when What-If operation fails." } } + }, + "ZoneMapping": { + "properties": { + "location": { + "type": "string", + "description": "The location of the zone mapping." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + } + } + } } }, "parameters": { diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/resources.json index 9f40dec3bcba..89956e138b1d 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/resources.json @@ -4701,6 +4701,12 @@ }, "description": "The API version." }, + "zoneMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ZoneMapping" + } + }, "capabilities": { "type": "string", "description": "The additional capabilities offered by this resource type." @@ -5982,6 +5988,20 @@ } }, "x-ms-azure-resource": true + }, + "ZoneMapping": { + "properties": { + "location": { + "type": "string", + "description": "The location of the zone mapping." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + } + } + } } }, "parameters": { diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-06-01/examples/ForceDeleteVMsAndVMSSInResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2020-06-01/examples/ForceDeleteVMsAndVMSSInResourceGroup.json index 593f902a362f..2dba850f1157 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-06-01/examples/ForceDeleteVMsAndVMSSInResourceGroup.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2020-06-01/examples/ForceDeleteVMsAndVMSSInResourceGroup.json @@ -2,7 +2,7 @@ "parameters": { "subscriptionId": "00000000-0000-0000-0000-000000000000", "resourceGroupName": "my-resource-group", - "forceDeletionResourceTypes": "Microsoft.Compute/virtualMachines,Microsoft.Compute/virtualMachineScaleSets", + "forceDeletionTypes": "Microsoft.Compute/virtualMachines,Microsoft.Compute/virtualMachineScaleSets", "api-version": "2020-06-01" }, "responses": { diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-06-01/examples/ForceDeleteVMsInResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2020-06-01/examples/ForceDeleteVMsInResourceGroup.json index 0307e628327e..ba2a47410f91 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-06-01/examples/ForceDeleteVMsInResourceGroup.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2020-06-01/examples/ForceDeleteVMsInResourceGroup.json @@ -2,7 +2,7 @@ "parameters": { "subscriptionId": "00000000-0000-0000-0000-000000000000", "resourceGroupName": "my-resource-group", - "forceDeletionResourceTypes": "Microsoft.Compute/virtualMachines", + "forceDeletionTypes": "Microsoft.Compute/virtualMachines", "api-version": "2020-06-01" }, "responses": { diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-06-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2020-06-01/resources.json index 9a5a19d43daf..d26f70d0c469 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-06-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2020-06-01/resources.json @@ -1540,7 +1540,6 @@ "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 }, @@ -1583,7 +1582,6 @@ "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 }, @@ -1626,7 +1624,6 @@ "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 }, @@ -1695,7 +1692,6 @@ "required": true, "type": "string", "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, @@ -1740,7 +1736,6 @@ "required": true, "type": "string", "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, @@ -1782,7 +1777,6 @@ "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 }, @@ -1844,7 +1838,6 @@ "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 }, @@ -1919,7 +1912,6 @@ "required": true, "type": "string", "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, @@ -1963,7 +1955,6 @@ "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 }, @@ -2321,7 +2312,6 @@ "required": true, "type": "string", "description": "The resource group with the resources to get.", - "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, @@ -2388,7 +2378,6 @@ "required": true, "type": "string", "description": "The name of the resource group to check. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, @@ -2432,7 +2421,6 @@ "required": true, "type": "string", "description": "The name of the resource group to create or update. Can include alphanumeric, underscore, parentheses, hyphen, period (except at end), and Unicode characters that match the allowed characters.", - "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, @@ -2487,16 +2475,15 @@ "required": true, "type": "string", "description": "The name of the resource group to delete. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, { - "name": "forceDeletionResourceTypes", + "name": "forceDeletionTypes", "in": "query", "required": false, "type": "string", - "description": "The resource types you want to force delete. Currently, only the following is supported: forceDeletionResourceTypes=Microsoft.Compute/virtualMachines,Microsoft.Compute/virtualMachineScaleSets" + "description": "The resource types you want to force delete. Currently, only the following is supported: forceDeletionTypes=Microsoft.Compute/virtualMachines,Microsoft.Compute/virtualMachineScaleSets" }, { "$ref": "#/parameters/ApiVersionParameter" @@ -2542,7 +2529,6 @@ "required": true, "type": "string", "description": "The name of the resource group to get. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, @@ -2582,7 +2568,6 @@ "required": true, "type": "string", "description": "The name of the resource group to update. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, @@ -2741,7 +2726,6 @@ "required": true, "type": "string", "description": "The name of the resource group containing the resources to move.", - "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, @@ -2793,7 +2777,6 @@ "required": true, "type": "string", "description": "The name of the resource group containing the resources to validate for move.", - "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, @@ -2901,7 +2884,6 @@ "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 }, @@ -2975,7 +2957,6 @@ "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 }, @@ -3053,7 +3034,6 @@ "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 }, @@ -3146,7 +3126,6 @@ "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 }, @@ -3233,7 +3212,6 @@ "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 }, @@ -4093,7 +4071,6 @@ "required": true, "type": "string", "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, @@ -4144,7 +4121,6 @@ "required": true, "type": "string", "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, @@ -4882,6 +4858,12 @@ "readOnly": true, "description": "The default API version." }, + "zoneMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ZoneMapping" + } + }, "apiProfiles": { "type": "array", "readOnly": true, @@ -5262,8 +5244,7 @@ }, "kind": { "type": "string", - "description": "The kind of the resource.", - "pattern": "^[-\\w\\._,\\(\\)]+$" + "description": "The kind of the resource." }, "managedBy": { "type": "string", @@ -6221,6 +6202,20 @@ } }, "description": "Specifies whether template expressions are evaluated within the scope of the parent template or nested template." + }, + "ZoneMapping": { + "properties": { + "location": { + "type": "string", + "description": "The location of the zone mapping." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + } + } + } } }, "parameters": { @@ -6255,7 +6250,6 @@ "in": "path", "required": true, "type": "string", - "pattern": "^[-\\w\\._\\(\\)]+$", "x-ms-parameter-location": "method", "minLength": 1, "maxLength": 64, diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-08-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2020-08-01/resources.json index 554c1093ab41..bc1e7eef1041 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-08-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2020-08-01/resources.json @@ -1540,7 +1540,6 @@ "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 }, @@ -1583,7 +1582,6 @@ "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 }, @@ -1626,7 +1624,6 @@ "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 }, @@ -1695,7 +1692,6 @@ "required": true, "type": "string", "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, @@ -1740,7 +1736,6 @@ "required": true, "type": "string", "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, @@ -1782,7 +1777,6 @@ "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 }, @@ -1844,7 +1838,6 @@ "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 }, @@ -1919,7 +1912,6 @@ "required": true, "type": "string", "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, @@ -1963,7 +1955,6 @@ "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 }, @@ -2346,7 +2337,6 @@ "required": true, "type": "string", "description": "The resource group with the resources to get.", - "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, @@ -2413,7 +2403,6 @@ "required": true, "type": "string", "description": "The name of the resource group to check. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, @@ -2457,7 +2446,6 @@ "required": true, "type": "string", "description": "The name of the resource group to create or update. Can include alphanumeric, underscore, parentheses, hyphen, period (except at end), and Unicode characters that match the allowed characters.", - "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, @@ -2512,7 +2500,6 @@ "required": true, "type": "string", "description": "The name of the resource group to delete. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, @@ -2552,7 +2539,6 @@ "required": true, "type": "string", "description": "The name of the resource group to get. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, @@ -2592,7 +2578,6 @@ "required": true, "type": "string", "description": "The name of the resource group to update. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, @@ -2751,7 +2736,6 @@ "required": true, "type": "string", "description": "The name of the resource group containing the resources to move.", - "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, @@ -2803,7 +2787,6 @@ "required": true, "type": "string", "description": "The name of the resource group containing the resources to validate for move.", - "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, @@ -2911,7 +2894,6 @@ "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 }, @@ -2985,7 +2967,6 @@ "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 }, @@ -3063,7 +3044,6 @@ "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 }, @@ -3156,7 +3136,6 @@ "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 }, @@ -3243,7 +3222,6 @@ "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 }, @@ -4103,7 +4081,6 @@ "required": true, "type": "string", "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, @@ -4154,7 +4131,6 @@ "required": true, "type": "string", "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, @@ -4915,6 +4891,12 @@ "readOnly": true, "description": "The default API version." }, + "zoneMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ZoneMapping" + } + }, "apiProfiles": { "type": "array", "readOnly": true, @@ -5312,8 +5294,7 @@ }, "kind": { "type": "string", - "description": "The kind of the resource.", - "pattern": "^[-\\w\\._,\\(\\)]+$" + "description": "The kind of the resource." }, "managedBy": { "type": "string", @@ -6253,6 +6234,20 @@ "description": "The error reported by the operation." } } + }, + "ZoneMapping": { + "properties": { + "location": { + "type": "string", + "description": "The location of the zone mapping." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + } + } + } } }, "parameters": { @@ -6287,7 +6282,6 @@ "in": "path", "required": true, "type": "string", - "pattern": "^[-\\w\\._\\(\\)]+$", "x-ms-parameter-location": "method", "minLength": 1, "maxLength": 64, diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/deploymentScripts.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/deploymentScripts.json index b05f6d197dd4..cb6e0ed5e960 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/deploymentScripts.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/deploymentScripts.json @@ -920,7 +920,6 @@ "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" diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/resources.json index dc6eaab3d311..746bd4018064 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/resources.json @@ -1540,7 +1540,6 @@ "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 }, @@ -1583,7 +1582,6 @@ "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 }, @@ -1626,7 +1624,6 @@ "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 }, @@ -1698,7 +1695,6 @@ "required": true, "type": "string", "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, @@ -1743,7 +1739,6 @@ "required": true, "type": "string", "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, @@ -1785,7 +1780,6 @@ "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 }, @@ -1847,7 +1841,6 @@ "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 }, @@ -1922,7 +1915,6 @@ "required": true, "type": "string", "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, @@ -1966,7 +1958,6 @@ "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 }, @@ -2384,7 +2375,6 @@ "required": true, "type": "string", "description": "The resource group with the resources to get.", - "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, @@ -2451,7 +2441,6 @@ "required": true, "type": "string", "description": "The name of the resource group to check. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, @@ -2495,7 +2484,6 @@ "required": true, "type": "string", "description": "The name of the resource group to create or update. Can include alphanumeric, underscore, parentheses, hyphen, period (except at end), and Unicode characters that match the allowed characters.", - "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, @@ -2550,7 +2538,6 @@ "required": true, "type": "string", "description": "The name of the resource group to delete. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, @@ -2590,7 +2577,6 @@ "required": true, "type": "string", "description": "The name of the resource group to get. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, @@ -2630,7 +2616,6 @@ "required": true, "type": "string", "description": "The name of the resource group to update. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, @@ -2789,7 +2774,6 @@ "required": true, "type": "string", "description": "The name of the resource group containing the resources to move.", - "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, @@ -2841,7 +2825,6 @@ "required": true, "type": "string", "description": "The name of the resource group containing the resources to validate for move.", - "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, @@ -2949,7 +2932,6 @@ "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 }, @@ -3023,7 +3005,6 @@ "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 }, @@ -3101,7 +3082,6 @@ "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 }, @@ -3194,7 +3174,6 @@ "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 }, @@ -3281,7 +3260,6 @@ "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 }, @@ -4141,7 +4119,6 @@ "required": true, "type": "string", "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, @@ -4192,7 +4169,6 @@ "required": true, "type": "string", "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, @@ -4961,6 +4937,12 @@ "readOnly": true, "description": "The default API version." }, + "zoneMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ZoneMapping" + } + }, "apiProfiles": { "type": "array", "readOnly": true, @@ -5358,8 +5340,7 @@ }, "kind": { "type": "string", - "description": "The kind of the resource.", - "pattern": "^[-\\w\\._,\\(\\)]+$" + "description": "The kind of the resource." }, "managedBy": { "type": "string", @@ -6317,6 +6298,20 @@ } }, "description": "Specifies whether template expressions are evaluated within the scope of the parent template or nested template." + }, + "ZoneMapping": { + "properties": { + "location": { + "type": "string", + "description": "The location of the zone mapping." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + } + } + } } }, "parameters": { @@ -6351,7 +6346,6 @@ "in": "path", "required": true, "type": "string", - "pattern": "^[-\\w\\._\\(\\)]+$", "x-ms-parameter-location": "method", "minLength": 1, "maxLength": 64, diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/CalculateTemplateHash.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/CalculateTemplateHash.json new file mode 100644 index 000000000000..d1f83634bd30 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/CalculateTemplateHash.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "api-version": "2021-01-01", + "template": { + "$schema": "http://schemas.management.azure.com/deploymentTemplate?api-version=2014-04-01-preview", + "contentVersion": "1.0.0.0", + "parameters": { + "string": { + "type": "string" + } + }, + "variables": { + "string": "string", + "int": 42, + "bool": true, + "array": [ + 1, + 2, + 3, + 4 + ], + "object": { + "object": { + "vmSize": "Large", + "location": "West US" + } + } + }, + "resources": [], + "outputs": { + "string": { + "type": "string", + "value": "myvalue" + } + } + } + }, + "responses": { + "200": { + "body": { + "minifiedTemplate": "{\"$SCHEMA\":\"HTTP://SCHEMAS.MANAGEMENT.AZURE.COM/DEPLOYMENTTEMPLATE?API-VERSION=2014-04-01-PREVIEW\",\"CONTENTVERSION\":\"1.0.0.0\",\"PARAMETERS\":{\"STRING\":{\"TYPE\":\"STRING\"}},\"VARIABLES\":{\"STRING\":\"STRING\",\"INT\":42,\"BOOL\":TRUE,\"ARRAY\":[1,2,3,4],\"OBJECT\":{\"OBJECT\":{\"VMSIZE\":\"LARGE\",\"LOCATION\":\"WEST US\"}}},\"RESOURCES\":[],\"OUTPUTS\":{\"STRING\":{\"TYPE\":\"STRING\",\"VALUE\":\"MYVALUE\"}}}", + "templateHash": "695440707931307747" + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/CheckResourceName.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/CheckResourceName.json new file mode 100644 index 000000000000..45b60e3b9971 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/CheckResourceName.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "body": [ + { + "Name": "isxbox", + "Type": "ResourceProviderTestHost/TestResourceType" + } + ], + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "name": "isxbox", + "type": "ResourceProviderTestHost/TestResourceType", + "status": "Allowed" + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/CreateResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/CreateResourceGroup.json new file mode 100644 index 000000000000..74398d45af47 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/CreateResourceGroup.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "my-resource-group", + "api-version": "2021-01-01", + "parameters": { + "location": "eastus" + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/my-resource-group", + "name": "my-resource-group", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/my-resource-group", + "name": "my-resource-group", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/ExportResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/ExportResourceGroup.json new file mode 100644 index 000000000000..5c3a43383fd1 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/ExportResourceGroup.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "my-resource-group", + "api-version": "2021-01-01", + "parameters": { + "resources": [ + "*" + ], + "options": "IncludeParameterDefaultValue,IncludeComments" + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/c9bbccf4-e16a-4eb7-befb-2e2e5195c347?api-version=2018-08-01" + } + }, + "200": { + "body": { + "template": { + "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#", + "contentVersion": "1.0.0.0", + "parameters": { + "myResourceType_myFirstResource_name": { + "defaultValue": "myFirstResource", + "type": "String" + }, + "myResourceType_mySecondResource_name": { + "defaultValue": "mySecondResource", + "type": "String" + }, + "myResourceType_myFirstResource_secret": { + "defaultValue": null, + "type": "SecureString" + } + }, + "variables": {}, + "resources": [ + { + "type": "My.RP/myResourceType", + "apiVersion": "2019-01-01", + "name": "[parameters('myResourceType_myFirstResource_name')]", + "location": "West US", + "properties": { + "secret": "[parameters('myResourceType_myFirstResource_secret')]" + } + }, + { + "type": "My.RP/myResourceType", + "apiVersion": "2019-01-01", + "name": "[parameters('myResourceType_mySecondResource_name')]", + "location": "West US", + "properties": { + "customProperty": "hello!" + } + } + ] + }, + "error": { + "code": "ExportTemplateCompletedWithErrors", + "message": "Export template operation completed with errors. Some resources were not exported. Please see details for more information.", + "details": [] + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/ExportResourceGroupWithFiltering.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/ExportResourceGroupWithFiltering.json new file mode 100644 index 000000000000..b70a6c3b1c65 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/ExportResourceGroupWithFiltering.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "my-resource-group", + "api-version": "2021-01-01", + "parameters": { + "resources": [ + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/my-resource-group/providers/My.RP/myResourceType/myFirstResource" + ], + "options": "SkipResourceNameParameterization" + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/c9bbccf4-e16a-4eb7-befb-2e2e5195c347?api-version=2018-08-01" + } + }, + "200": { + "body": { + "template": { + "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#", + "contentVersion": "1.0.0.0", + "parameters": { + "myResourceType_myFirstResource_secret": { + "defaultValue": null, + "type": "SecureString" + } + }, + "variables": {}, + "resources": [ + { + "type": "My.RP/myResourceType", + "apiVersion": "2019-01-01", + "name": "myFirstResource", + "location": "West US", + "properties": { + "secret": "[parameters('myResourceType_myFirstResource_secret')]" + } + } + ] + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/ForceDeleteVMsAndVMSSInResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/ForceDeleteVMsAndVMSSInResourceGroup.json new file mode 100644 index 000000000000..2dba850f1157 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/ForceDeleteVMsAndVMSSInResourceGroup.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "my-resource-group", + "forceDeletionTypes": "Microsoft.Compute/virtualMachines,Microsoft.Compute/virtualMachineScaleSets", + "api-version": "2020-06-01" + }, + "responses": { + "202": { + "description": "Accepted" + }, + "200": { + "description": "OK" + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/ForceDeleteVMsInResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/ForceDeleteVMsInResourceGroup.json new file mode 100644 index 000000000000..ba2a47410f91 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/ForceDeleteVMsInResourceGroup.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "my-resource-group", + "forceDeletionTypes": "Microsoft.Compute/virtualMachines", + "api-version": "2020-06-01" + }, + "responses": { + "202": { + "description": "Accepted" + }, + "200": { + "description": "OK" + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/GetLocations.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/GetLocations.json new file mode 100644 index 000000000000..445f660c0b38 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/GetLocations.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "291bba3f-e0a5-47bc-a099-3bdcb2a50a05", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": [ + { + "id": "/subscriptions/291bba3f-e0a5-47bc-a099-3bdcb2a50a05/locations/eastus", + "name": "eastus", + "type": "Region", + "displayName": "East US", + "regionalDisplayName": "(US) East US", + "metadata": { + "regionType": "Physical", + "regionCategory": "Recommended", + "geographyGroup": "US", + "longitude": "-79.8164", + "latitude": "37.3719", + "physicalLocation": "Virginia", + "pairedRegion": [ + { + "name": "westus", + "id": "/subscriptions/291bba3f-e0a5-47bc-a099-3bdcb2a50a05/locations/westus" + } + ] + } + }, + { + "id": "/subscriptions/291bba3f-e0a5-47bc-a099-3bdcb2a50a05/locations/eastus2", + "name": "eastus2", + "type": "Region", + "displayName": "East US 2", + "regionalDisplayName": "(US) East US 2", + "metadata": { + "regionType": "Physical", + "regionCategory": "Recommended", + "geographyGroup": "US", + "longitude": "-78.3889", + "latitude": "36.6681", + "physicalLocation": "Virginia", + "pairedRegion": [ + { + "name": "centralus", + "id": "/subscriptions/291bba3f-e0a5-47bc-a099-3bdcb2a50a05/locations/centralus" + } + ] + } + } + ] + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/GetLocationsWithExtendedLocations.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/GetLocationsWithExtendedLocations.json new file mode 100644 index 000000000000..ded38f8b6a21 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/GetLocationsWithExtendedLocations.json @@ -0,0 +1,83 @@ +{ + "parameters": { + "subscriptionId": "291bba3f-e0a5-47bc-a099-3bdcb2a50a05", + "api-version": "2021-01-01", + "includeExtendedLocations": "true" + }, + "responses": { + "200": { + "body": [ + { + "id": "/subscriptions/291bba3f-e0a5-47bc-a099-3bdcb2a50a05/locations/eastus", + "name": "eastus", + "type": "Region", + "displayName": "East US", + "regionalDisplayName": "(US) East US", + "metadata": { + "regionType": "Physical", + "regionCategory": "Recommended", + "geographyGroup": "US", + "longitude": "-79.8164", + "latitude": "37.3719", + "physicalLocation": "Virginia", + "pairedRegion": [ + { + "name": "westus", + "id": "/subscriptions/291bba3f-e0a5-47bc-a099-3bdcb2a50a05/locations/westus" + } + ] + } + }, + { + "id": "/subscriptions/291bba3f-e0a5-47bc-a099-3bdcb2a50a05/locations/eastus2", + "name": "eastus2", + "type": "Region", + "displayName": "East US 2", + "regionalDisplayName": "(US) East US 2", + "metadata": { + "regionType": "Physical", + "regionCategory": "Recommended", + "geographyGroup": "US", + "longitude": "-78.3889", + "latitude": "36.6681", + "physicalLocation": "Virginia", + "pairedRegion": [ + { + "name": "centralus", + "id": "/subscriptions/291bba3f-e0a5-47bc-a099-3bdcb2a50a05/locations/centralus" + } + ] + } + }, + { + "id": "/subscriptions/291bba3f-e0a5-47bc-a099-3bdcb2a50a05/locations/westus/edgeZones/microsoftlosangeles1", + "name": "microsoftlosangeles1", + "type": "EdgeZone", + "displayName": "Microsoft Los Angeles 1", + "regionalDisplayName": "Microsoft Los Angeles 1", + "metadata": { + "regionType": "Physical", + "regionCategory": "Extended", + "longitude": "-118.235374", + "latitude": "34.058414", + "homeLocation": "westus" + } + }, + { + "id": "/subscriptions/291bba3f-e0a5-47bc-a099-3bdcb2a50a05/locations/eastus2euap/edgeZones/microsoftrrdclab1", + "name": "microsoftrrdclab1", + "type": "EdgeZone", + "displayName": "Microsoft RRDC Lab 1", + "regionalDisplayName": "Microsoft RRDC Lab 1", + "metadata": { + "regionType": "Physical", + "regionCategory": "Extended", + "longitude": "-122.03197", + "latitude": "47.69106", + "homeLocation": "eastus2euap" + } + } + ] + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/GetNamedProviderAtTenant.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/GetNamedProviderAtTenant.json new file mode 100644 index 000000000000..86573a1566d2 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/GetNamedProviderAtTenant.json @@ -0,0 +1,253 @@ +{ + "parameters": { + "$expand": "resourceTypes/aliases", + "resourceProviderNamespace": "Microsoft.Storage", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "namespace": "Microsoft.Storage", + "resourceTypes": [ + { + "resourceType": "storageAccounts", + "locations": [ + "East US", + "East US 2", + "East US 2 (Stage)", + "West US", + "West Europe", + "East Asia", + "Southeast Asia", + "Japan East", + "Japan West", + "North Central US", + "South Central US", + "Central US", + "North Europe", + "Brazil South", + "Australia East", + "Australia Southeast", + "South India", + "Central India", + "West India", + "Canada East", + "Canada Central", + "West US 2", + "West Central US", + "UK South", + "UK West", + "Korea Central", + "Korea South", + "East US 2 EUAP", + "Central US EUAP", + "France Central", + "France South", + "Australia Central", + "Australia Central 2", + "South Africa West", + "South Africa North", + "UAE Central", + "UAE North", + "Switzerland North", + "Switzerland West", + "Germany West Central", + "Germany North", + "Norway East", + "Norway West", + "South Central US STG", + "Brazil Southeast" + ], + "apiVersions": [ + "2019-06-01", + "2019-04-01", + "2018-11-01", + "2018-07-01", + "2018-03-01-preview", + "2018-02-01", + "2017-10-01", + "2017-06-01", + "2016-12-01", + "2016-05-01", + "2016-01-01", + "2015-06-15", + "2015-05-01-preview" + ], + "defaultApiVersion": "2019-06-01", + "apiProfiles": [ + { + "profileVersion": "2019-03-01-hybrid", + "apiVersion": "2017-10-01" + }, + { + "profileVersion": "2017-03-09-profile", + "apiVersion": "2016-01-01" + }, + { + "profileVersion": "2018-03-01-hybrid", + "apiVersion": "2016-01-01" + }, + { + "profileVersion": "2018-06-01-profile", + "apiVersion": "2017-10-01" + } + ], + "aliases": [ + { + "name": "Microsoft.Storage/storageAccounts/accountType", + "paths": [ + { + "path": "properties.accountType", + "apiVersions": [ + "2015-06-15", + "2015-05-01-preview" + ] + }, + { + "path": "sku.name", + "apiVersions": [ + "2018-11-01", + "2018-11-09", + "2018-07-01", + "2018-03-01-Preview", + "2018-02-01", + "2017-10-01", + "2017-06-01", + "2016-12-01", + "2016-05-01", + "2016-01-01" + ] + } + ], + "defaultPath": "sku.name" + }, + { + "name": "Microsoft.Storage/storageAccounts/sku.name", + "paths": [ + { + "path": "properties.accountType", + "apiVersions": [ + "2015-06-15", + "2015-05-01-preview" + ] + }, + { + "path": "sku.name", + "apiVersions": [ + "2018-11-01", + "2018-11-09", + "2018-07-01", + "2018-03-01-Preview", + "2018-02-01", + "2017-10-01", + "2017-06-01", + "2016-12-01", + "2016-05-01", + "2016-01-01" + ] + } + ], + "defaultPath": "sku.name" + }, + { + "name": "Microsoft.Storage/storageAccounts/accessTier", + "paths": [ + { + "path": "properties.accessTier", + "apiVersions": [ + "2018-11-01", + "2018-11-09", + "2018-07-01", + "2018-03-01-Preview", + "2018-02-01", + "2017-10-01", + "2017-06-01", + "2016-12-01", + "2016-05-01", + "2016-01-01", + "2015-06-15", + "2015-05-01-preview" + ] + } + ], + "defaultPath": "properties.accessTier" + }, + { + "name": "Microsoft.Storage/storageAccounts/enableBlobEncryption", + "paths": [ + { + "path": "properties.encryption.services.blob.enabled", + "apiVersions": [ + "2018-11-01", + "2018-11-09", + "2018-07-01", + "2018-03-01-Preview", + "2018-02-01", + "2017-10-01", + "2017-06-01", + "2016-12-01", + "2016-05-01", + "2016-01-01", + "2015-06-15", + "2015-05-01-preview" + ] + } + ], + "defaultPath": "properties.encryption.services.blob.enabled" + }, + { + "name": "Microsoft.Storage/storageAccounts/enableFileEncryption", + "paths": [ + { + "path": "properties.encryption.services.file.enabled", + "apiVersions": [ + "2018-11-01", + "2018-11-09", + "2018-07-01", + "2018-03-01-Preview", + "2018-02-01", + "2017-10-01", + "2017-06-01", + "2016-12-01", + "2016-05-01", + "2016-01-01", + "2015-06-15", + "2015-05-01-preview" + ] + } + ], + "defaultPath": "properties.encryption.services.file.enabled" + }, + { + "name": "Microsoft.Storage/storageAccounts/supportsHttpsTrafficOnly", + "paths": [ + { + "path": "properties.supportsHttpsTrafficOnly", + "apiVersions": [ + "2018-11-09", + "2018-03-01-Preview", + "2016-05-01", + "2016-01-01", + "2015-06-15", + "2015-05-01-preview" + ], + "metadata": { + "type": "NotSpecified", + "attributes": "None" + } + } + ], + "defaultPath": "properties.supportsHttpsTrafficOnly", + "defaultMetadata": { + "type": "Boolean", + "attributes": "Modifiable" + } + } + ], + "capabilities": "SupportsTags, SupportsLocation" + } + ] + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/GetProvider.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/GetProvider.json new file mode 100644 index 000000000000..c56e92960fbc --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/GetProvider.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceProviderNamespace": "Microsoft.TestRP1", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.TestRP1", + "namespace": "Microsoft.TestRP1", + "registrationState": "Registering", + "registrationPolicy": "RegistrationRequired", + "resourceTypes": [ + { + "resourceType": "TestResourceType", + "locations": [ + "West US" + ], + "apiVersions": [ + "2018-01-01", + "2015-05-01" + ], + "locationMappings": [ + { + "location": "West US", + "type": "EdgeZone", + "extendedLocations": [ + "LosAngeles", + "LosAngeles2" + ] + } + ], + "capabilities": "CrossResourceGroupResourceMove, CrossSubscriptionResourceMove, SupportsTags, SupportsLocation" + }, + { + "resourceType": "TestResourceTypeSibling", + "locations": [ + "West US" + ], + "apiVersions": [ + "2018-01-01", + "2015-05-01" + ], + "capabilities": "CrossResourceGroupResourceMove, CrossSubscriptionResourceMove, SupportsTags, SupportsLocation" + } + ] + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/GetProviderResourceTypes.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/GetProviderResourceTypes.json new file mode 100644 index 000000000000..bbb9260ba33a --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/GetProviderResourceTypes.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceProviderNamespace": "Microsoft.TestRP", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "TestResourceType", + "locations": [ + "West US" + ], + "apiVersions": [ + "2018-01-01", + "2015-05-01" + ], + "locationMappings": [ + { + "location": "West US", + "type": "EdgeZone", + "extendedLocations": [ + "LosAngeles", + "LosAngeles2" + ] + } + ], + "capabilities": "CrossResourceGroupResourceMove, CrossSubscriptionResourceMove, SupportsTags, SupportsLocation" + }, + { + "resourceType": "TestResourceTypeSibling", + "locations": [ + "West US" + ], + "apiVersions": [ + "2018-01-01", + "2015-05-01" + ], + "capabilities": "CrossResourceGroupResourceMove, CrossSubscriptionResourceMove, SupportsTags, SupportsLocation" + } + ] + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/GetProviders.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/GetProviders.json new file mode 100644 index 000000000000..20756d3a8b52 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/GetProviders.json @@ -0,0 +1,175 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.TestRP1", + "namespace": "Microsoft.TestRP1", + "registrationState": "Registering", + "registrationPolicy": "RegistrationRequired", + "resourceTypes": [ + { + "resourceType": "TestResourceType", + "locations": [ + "West US" + ], + "apiVersions": [ + "2018-01-01", + "2015-05-01" + ], + "locationMappings": [ + { + "location": "West US", + "type": "EdgeZone", + "extendedLocations": [ + "LosAngeles", + "LosAngeles2" + ] + } + ], + "capabilities": "CrossResourceGroupResourceMove, CrossSubscriptionResourceMove, SupportsTags, SupportsLocation" + }, + { + "resourceType": "TestResourceTypeSibling", + "locations": [ + "West US" + ], + "apiVersions": [ + "2018-01-01", + "2015-05-01" + ], + "capabilities": "CrossResourceGroupResourceMove, CrossSubscriptionResourceMove, SupportsTags, SupportsLocation" + } + ] + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Resources", + "namespace": "Microsoft.Resources", + "registrationState": "Registered", + "registrationPolicy": "RegistrationFree", + "resourceTypes": [ + { + "resourceType": "subscriptions", + "locations": [ + "eastus", + "eastus2", + "westus" + ], + "apiVersions": [ + "2016-09-01", + "2014-04-01-preview" + ], + "aliases": [], + "capabilities": "CrossResourceGroupResourceMove, CrossSubscriptionResourceMove, SupportsTags, SupportsLocation" + }, + { + "resourceType": "resourceGroups", + "locations": [ + "centralus", + "eastasia", + "southeastasia" + ], + "apiVersions": [ + "2016-09-01", + "2014-04-01-preview" + ], + "aliases": [], + "capabilities": "CrossResourceGroupResourceMove, CrossSubscriptionResourceMove, SupportsTags, SupportsLocation" + }, + { + "resourceType": "subscriptions/resourceGroups", + "locations": [ + "eastus", + "eastus2", + "westus" + ], + "apiVersions": [ + "2016-09-01", + "2014-04-01-preview" + ], + "aliases": [], + "capabilities": "CrossResourceGroupResourceMove, CrossSubscriptionResourceMove, SupportsTags, SupportsLocation" + }, + { + "resourceType": "bulkDelete", + "locations": [ + "centralus", + "eastasia" + ], + "apiVersions": [ + "2014-04-01-preview" + ], + "aliases": [], + "capabilities": "CrossResourceGroupResourceMove, CrossSubscriptionResourceMove, SupportsTags, SupportsLocation" + }, + { + "resourceType": "deployments", + "locations": [], + "apiVersions": [ + "2017-08-01", + "2017-06-01" + ], + "aliases": [], + "capabilities": "SupportsTags" + }, + { + "resourceType": "tags", + "locations": [ + "DevFabric" + ], + "apiVersions": [], + "aliases": [], + "capabilities": "SupportsExtension" + } + ] + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.TestRP2", + "namespace": "Microsoft.TestRP2", + "registrationState": "NotRegistered", + "registrationPolicy": "RegistrationRequired", + "resourceTypes": [ + { + "resourceType": "TestResourceType", + "locations": [ + "West US" + ], + "apiVersions": [ + "2018-01-01", + "2015-05-01" + ], + "locationMappings": [ + { + "location": "West US", + "type": "EdgeZone", + "extendedLocations": [ + "LosAngeles", + "LosAngeles2" + ] + } + ], + "capabilities": "CrossResourceGroupResourceMove, CrossSubscriptionResourceMove, SupportsTags, SupportsLocation" + }, + { + "resourceType": "TestResourceTypeSibling", + "locations": [ + "West US" + ], + "apiVersions": [ + "2018-01-01", + "2015-05-01" + ], + "capabilities": "CrossResourceGroupResourceMove, CrossSubscriptionResourceMove, SupportsTags, SupportsLocation" + } + ] + } + ] + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/GetSubscription.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/GetSubscription.json new file mode 100644 index 000000000000..f62a28551dcc --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/GetSubscription.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "291bba3f-e0a5-47bc-a099-3bdcb2a50a05", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/291bba3f-e0a5-47bc-a099-3bdcb2a50a05", + "subscriptionId": "291bba3f-e0a5-47bc-a099-3bdcb2a50a05", + "tenantId": "31c75423-32d6-4322-88b7-c478bdde4858", + "displayName": "Example Subscription", + "state": "Enabled", + "subscriptionPolicies": { + "locationPlacementId": "Internal_2014-09-01", + "quotaId": "Internal_2014-09-01", + "spendingLimit": "Off" + }, + "authorizationSource": "Bypassed", + "managedByTenants": [ + { + "tenantId": "8f70baf1-1f6e-46a2-a1ff-238dac1ebfb7" + } + ], + "tags": { + "tagKey1": "tagValue1", + "tagKey2": "tagValue2" + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/GetSubscriptions.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/GetSubscriptions.json new file mode 100644 index 000000000000..b340788d7eee --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/GetSubscriptions.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/291bba3f-e0a5-47bc-a099-3bdcb2a50a05", + "subscriptionId": "291bba3f-e0a5-47bc-a099-3bdcb2a50a05", + "tenantId": "31c75423-32d6-4322-88b7-c478bdde4858", + "displayName": "Example Subscription", + "state": "Enabled", + "subscriptionPolicies": { + "locationPlacementId": "Internal_2014-09-01", + "quotaId": "Internal_2014-09-01", + "spendingLimit": "Off" + }, + "authorizationSource": "RoleBased", + "managedByTenants": [ + { + "tenantId": "8f70baf1-1f6e-46a2-a1ff-238dac1ebfb7" + } + ], + "tags": { + "tagKey1": "tagValue1", + "tagKey2": "tagValue2" + } + }, + { + "id": "/subscriptions/72ac930a-f34e-42d8-b06d-dc2a9e12ed71", + "subscriptionId": "72ac930a-f34e-42d8-b06d-dc2a9e12ed71", + "tenantId": "2a0ff0de-96b2-4859-bb7c-a430d07a3e0c", + "displayName": "Example Subscription2", + "state": "Enabled", + "subscriptionPolicies": { + "locationPlacementId": "Internal_2014-09-01", + "quotaId": "Internal_2014-09-01", + "spendingLimit": "Off" + }, + "authorizationSource": "RoleBased", + "managedByTenants": [ + { + "tenantId": "8f70baf1-1f6e-46a2-a1ff-238dac1ebfb7" + }, + { + "tenantId": "f7fb6af2-321d-47c8-9c0f-b0239eaad39a" + } + ], + "tags": { + "tagKey1": "tagValue1", + "tagKey2": "tagValue2" + } + } + ], + "nextLink": "..." + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/GetTagsResource.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/GetTagsResource.json new file mode 100644 index 000000000000..b66f222eb0af --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/GetTagsResource.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "scope": "subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/my-resource-group/providers/myPRNameSpace/VM/myVm", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "properties": { + "tags": { + "tagKey1": "tag-value-1", + "tagKey2": "tag-value-2" + } + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/GetTagsSubscription.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/GetTagsSubscription.json new file mode 100644 index 000000000000..625262aec894 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/GetTagsSubscription.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "properties": { + "tags": { + "tagKey1": "tag-value-1", + "tagKey2": "tag-value-2" + } + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/GetTenants.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/GetTenants.json new file mode 100644 index 000000000000..553693bbc1e4 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/GetTenants.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/tenants/a70a1586-9c4a-4373-b907-1d310660dbd1", + "tenantId": "a70a1586-9c4a-4373-b907-1d310660dbd1", + "countryCode": "US", + "displayName": "Test_Test_aad50", + "domains": [ + "aad50.ccsctp.net" + ], + "tenantCategory": "ManagedBy", + "defaultDomain": "aad50.ccsctp.net", + "tenantType": "AAD" + }, + { + "id": "/tenants/83abe5cd-bcc3-441a-bd86-e6a75360cecc", + "tenantId": "83abe5cd-bcc3-441a-bd86-e6a75360cecc", + "countryCode": "US", + "displayName": "Contoso Corp.", + "domains": [ + "auxteststagemanual.ccsctp.net" + ], + "tenantCategory": "Home", + "defaultDomain": "auxteststagemanual.ccsctp.net", + "tenantType": "AAD" + }, + { + "id": "/tenants/daea2e9b-847b-4c93-850d-2aa6f2d7af33", + "tenantId": "daea2e9b-847b-4c93-850d-2aa6f2d7af33", + "countryCode": "US", + "displayName": "TEST_TEST_RDV", + "domains": [ + "rdvmohoro.ccsctp.net", + "rdvmohoro.mail.ccsctp.net", + "rdvmohoro.com" + ], + "tenantCategory": "ProjectedBy", + "defaultDomain": "rdvmohoro.ccsctp.net", + "tenantType": "AAD", + "tenantBrandingLogoUrl": "logo1.logo.rdvmohoro.com" + } + ], + "nextLink": "..." + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PostDeploymentWhatIfOnManagementGroup.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PostDeploymentWhatIfOnManagementGroup.json new file mode 100644 index 000000000000..3439446e7254 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PostDeploymentWhatIfOnManagementGroup.json @@ -0,0 +1,87 @@ +{ + "parameters": { + "groupId": "myManagementGruop", + "deploymentName": "exampleDeploymentName", + "api-version": "2021-01-01", + "parameters": { + "location": "eastus", + "properties": { + "templateLink": "https://example.com/exampleTemplate.json", + "parameters": {}, + "mode": "Incremental" + } + } + }, + "responses": { + "200": { + "body": { + "status": "Succeeded", + "properties": { + "changes": [ + { + "resourceId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/myPolicyAssignment", + "changeType": "Modify", + "before": { + "apiVersion": "2019-06-01", + "id": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/myPolicyAssignment", + "type": "Microsoft.Authorization/policyAssignments", + "name": "myPolicyAssignment", + "location": "westus2", + "properties": { + "policyDefinitionId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/myPolicyDefinition", + "scope": "/subscriptions/00000000-0000-0000-0000-000000000001", + "enforcementMode": "Default" + } + }, + "after": { + "resourceId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/myPolicyAssignment", + "changeType": "Modify", + "before": { + "apiVersion": "2019-06-01", + "id": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/myPolicyAssignment", + "type": "Microsoft.Authorization/policyAssignments", + "name": "myPolicyAssignment", + "location": "westus2", + "properties": { + "policyDefinitionId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/myPolicyDefinition", + "scope": "/subscriptions/00000000-0000-0000-0000-000000000001", + "enforcementMode": "DoNotEnforce" + } + }, + "delta": [ + { + "path": "properties.enforcementMode", + "propertyChangeType": "Modify", + "before": "Default", + "after": "DoNotEnforce" + } + ] + } + }, + { + "resourceId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/myPolicyAssignment2", + "changeType": "Create", + "after": { + "apiVersion": "2019-06-01", + "id": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/myPolicyAssignment2", + "type": "Microsoft.Authorization/policyAssignments", + "name": "myPolicyAssignment2", + "location": "westus2", + "properties": { + "policyDefinitionId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/myPolicyDefinition", + "scope": "/subscriptions/00000000-0000-0000-0000-000000000002", + "enforcementMode": "Default" + } + } + } + ] + } + } + }, + "202": { + "headers": { + "Location": "/subscriptions/4d0ca63b-7939-4c9c-afbe-5fafae501724/operationresults/ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ" + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PostDeploymentWhatIfOnResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PostDeploymentWhatIfOnResourceGroup.json new file mode 100644 index 000000000000..f8d370feeb6a --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PostDeploymentWhatIfOnResourceGroup.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000001", + "resourceGroupName": "my-resource-group", + "deploymentName": "my-deployment", + "api-version": "2021-01-01", + "parameters": { + "properties": { + "templateLink": "https://example.com/exampleTemplate.json", + "parameters": {}, + "mode": "Incremental" + } + } + }, + "responses": { + "200": { + "body": { + "status": "succeeded", + "properties": { + "changes": [ + { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myExistingIdentity", + "changeType": "Modify", + "before": { + "apiVersion": "2018-11-30", + "id": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myExistingIdentity", + "type": "Microsoft.ManagedIdentity/userAssignedIdentities", + "name": "myExistingIdentity", + "location": "westus2" + }, + "after": { + "apiVersion": "2018-11-30", + "id": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myExistingIdentity", + "type": "Microsoft.ManagedIdentity/userAssignedIdentities", + "name": "myExistingIdentity", + "location": "westus2", + "tags": { + "myNewTag": "my tag value" + } + }, + "delta": [ + { + "path": "tags.myNewTag", + "propertyChangeType": "Create", + "after": "my tag value" + } + ] + }, + { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myNewIdentity", + "changeType": "Create", + "after": { + "apiVersion": "2018-11-30", + "id": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myNewIdentity", + "type": "Microsoft.ManagedIdentity/userAssignedIdentities", + "name": "myNewIdentity", + "location": "eastus", + "tags": { + "myOtherNewTag": "another new tag value" + } + } + } + ] + } + } + }, + "202": { + "headers": { + "Location": "/subscriptions/00000000-0000-0000-0000-000000000000/ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ" + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PostDeploymentWhatIfOnSubscription.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PostDeploymentWhatIfOnSubscription.json new file mode 100644 index 000000000000..1178815a7bfd --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PostDeploymentWhatIfOnSubscription.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000001", + "deploymentName": "my-deployment", + "api-version": "2021-01-01", + "parameters": { + "location": "westus", + "properties": { + "templateLink": "https://example.com/exampleTemplate.json", + "parameters": {}, + "mode": "Incremental" + } + } + }, + "responses": { + "200": { + "body": { + "status": "succeeded", + "properties": { + "changes": [ + { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myExistingIdentity", + "changeType": "Modify", + "before": { + "apiVersion": "2018-11-30", + "id": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myExistingIdentity", + "type": "Microsoft.ManagedIdentity/userAssignedIdentities", + "name": "myExistingIdentity", + "location": "westus2" + }, + "after": { + "apiVersion": "2018-11-30", + "id": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myExistingIdentity", + "type": "Microsoft.ManagedIdentity/userAssignedIdentities", + "name": "myExistingIdentity", + "location": "westus2", + "tags": { + "myNewTag": "my tag value" + } + }, + "delta": [ + { + "path": "tags.myNewTag", + "propertyChangeType": "Create", + "after": "my tag value" + } + ] + }, + { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myNewIdentity", + "changeType": "Create", + "after": { + "apiVersion": "2018-11-30", + "id": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myNewIdentity", + "type": "Microsoft.ManagedIdentity/userAssignedIdentities", + "name": "myNewIdentity", + "location": "eastus", + "tags": { + "myOtherNewTag": "another new tag value" + } + } + }, + { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group2", + "changeType": "Create", + "after": { + "apiVersion": "2019-03-01", + "id": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group2", + "type": "Microsoft.Resources/resourceGroups", + "name": "my-resource-group2", + "location": "{location3}" + } + } + ] + } + } + }, + "202": { + "headers": { + "Location": "/subscriptions/00000000-0000-0000-0000-000000000000/ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ" + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PostDeploymentWhatIfOnTenant.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PostDeploymentWhatIfOnTenant.json new file mode 100644 index 000000000000..0fcab3e885a1 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PostDeploymentWhatIfOnTenant.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "deploymentName": "exampleDeploymentName", + "api-version": "2021-01-01", + "parameters": { + "location": "eastus", + "properties": { + "templateLink": "https://example.com/exampleTemplate.json", + "parameters": {}, + "mode": "Incremental" + } + } + }, + "responses": { + "200": { + "body": { + "status": "Succeeded", + "properties": { + "changes": [ + { + "resourceId": "/providers/Microsoft.Management/managementGroups/myManagementGroup", + "changeType": "Create", + "after": { + "id": "/providers/Microsoft.Management/managementGroups/myManagementGroup", + "apiVersion": "2019-11-01", + "type": "Microsoft.Management/managementGroups", + "name": "myManagementGroup" + } + } + ] + } + } + }, + "202": { + "headers": { + "Location": "/subscriptions/4d0ca63b-7939-4c9c-afbe-5fafae501724/operationresults/ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ" + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PutDeploymentAtManagementGroup.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PutDeploymentAtManagementGroup.json new file mode 100644 index 000000000000..4e3566988164 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PutDeploymentAtManagementGroup.json @@ -0,0 +1,139 @@ +{ + "parameters": { + "groupId": "my-management-group-id", + "deploymentName": "my-deployment", + "api-version": "2021-01-01", + "parameters": { + "location": "eastus", + "properties": { + "templateLink": { + "uri": "https://example.com/exampleTemplate.json" + }, + "parameters": {}, + "mode": "Incremental" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Management/managementGroups/my-management-group-id/providers/Microsoft.Resources/deployments/my-deployment", + "name": "my-deployment", + "type": "Microsoft.Resources/deployments", + "location": "eastus", + "properties": { + "parameters": {}, + "mode": "Incremental", + "provisioningState": "Accepted", + "timestamp": "2019-04-24T22:52:38.7895563Z", + "duration": "PT1.2970875S", + "correlationId": "00000000-0000-0000-0000-000000000000", + "providers": [ + { + "namespace": "Microsoft.Authorization", + "resourceTypes": [ + { + "resourceType": "policyDefinitions", + "locations": [ + null + ] + }, + { + "resourceType": "policyAssignments", + "locations": [ + null + ] + } + ] + }, + { + "namespace": "Microsoft.Resources", + "resourceTypes": [ + { + "resourceType": "deployments", + "locations": [ + "eastus" + ] + } + ] + } + ], + "dependencies": [ + { + "dependsOn": [ + { + "id": "/providers/Microsoft.Management/managementGroups/my-management-group-id/providers/Microsoft.Authorization/policyDefinitions/policy-definition-name", + "resourceType": "Microsoft.Authorization/policyDefinitions", + "resourceName": "policy-definition-name" + } + ], + "id": "/providers/Microsoft.Management/managementGroups/my-management-group-id/providers/Microsoft.Authorization/policyAssignments/location-lock", + "resourceType": "Microsoft.Authorization/policyAssignments", + "resourceName": "location-lock" + } + ] + } + } + }, + "201": { + "body": { + "id": "/providers/Microsoft.Management/managementGroups/my-management-group-id/providers/Microsoft.Resources/deployments/my-deployment", + "name": "my-deployment", + "type": "Microsoft.Resources/deployments", + "location": "eastus", + "properties": { + "parameters": {}, + "mode": "Incremental", + "provisioningState": "Accepted", + "timestamp": "2019-04-24T22:52:38.7895563Z", + "duration": "PT1.2970875S", + "correlationId": "00000000-0000-0000-0000-000000000000", + "providers": [ + { + "namespace": "Microsoft.Authorization", + "resourceTypes": [ + { + "resourceType": "policyDefinitions", + "locations": [ + null + ] + }, + { + "resourceType": "policyAssignments", + "locations": [ + null + ] + } + ] + }, + { + "namespace": "Microsoft.Resources", + "resourceTypes": [ + { + "resourceType": "deployments", + "locations": [ + "eastus" + ] + } + ] + } + ], + "dependencies": [ + { + "dependsOn": [ + { + "id": "/providers/Microsoft.Management/managementGroups/my-management-group-id/providers/Microsoft.Authorization/policyDefinitions/policy-definition-name", + "resourceType": "Microsoft.Authorization/policyDefinitions", + "resourceName": "policy-definition-name" + } + ], + "id": "/providers/Microsoft.Management/managementGroups/my-management-group-id/providers/Microsoft.Authorization/policyAssignments/location-lock", + "resourceType": "Microsoft.Authorization/policyAssignments", + "resourceName": "location-lock" + } + ] + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PutDeploymentAtScope.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PutDeploymentAtScope.json new file mode 100644 index 000000000000..3c0c649f4c06 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PutDeploymentAtScope.json @@ -0,0 +1,151 @@ +{ + "parameters": { + "scope": "providers/Microsoft.Management/managementGroups/my-management-group-id", + "deploymentName": "my-deployment", + "api-version": "2021-01-01", + "parameters": { + "location": "eastus", + "properties": { + "templateLink": { + "uri": "https://example.com/exampleTemplate.json" + }, + "parameters": {}, + "mode": "Incremental" + }, + "tags": { + "tagKey1": "tag-value-1", + "tagKey2": "tag-value-2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Management/managementGroups/my-management-group-id/providers/Microsoft.Resources/deployments/my-deployment", + "name": "my-deployment", + "type": "Microsoft.Resources/deployments", + "location": "eastus", + "properties": { + "parameters": {}, + "mode": "Incremental", + "provisioningState": "Accepted", + "timestamp": "2019-04-24T22:52:38.7895563Z", + "duration": "PT1.2970875S", + "correlationId": "00000000-0000-0000-0000-000000000000", + "providers": [ + { + "namespace": "Microsoft.Authorization", + "resourceTypes": [ + { + "resourceType": "policyDefinitions", + "locations": [ + null + ] + }, + { + "resourceType": "policyAssignments", + "locations": [ + null + ] + } + ] + }, + { + "namespace": "Microsoft.Resources", + "resourceTypes": [ + { + "resourceType": "deployments", + "locations": [ + "eastus" + ] + } + ] + } + ], + "dependencies": [ + { + "dependsOn": [ + { + "id": "/providers/Microsoft.Management/managementGroups/my-management-group-id/providers/Microsoft.Authorization/policyDefinitions/policy-definition-name", + "resourceType": "Microsoft.Authorization/policyDefinitions", + "resourceName": "policy-definition-name" + } + ], + "id": "/providers/Microsoft.Management/managementGroups/my-management-group-id/providers/Microsoft.Authorization/policyAssignments/location-lock", + "resourceType": "Microsoft.Authorization/policyAssignments", + "resourceName": "location-lock" + } + ] + }, + "tags": { + "tagKey1": "tag-value-1", + "tagKey2": "tag-value-2" + } + } + }, + "201": { + "body": { + "id": "/providers/Microsoft.Management/managementGroups/my-management-group-id/providers/Microsoft.Resources/deployments/my-deployment", + "name": "my-deployment", + "type": "Microsoft.Resources/deployments", + "location": "eastus", + "properties": { + "parameters": {}, + "mode": "Incremental", + "provisioningState": "Accepted", + "timestamp": "2019-04-24T22:52:38.7895563Z", + "duration": "PT1.2970875S", + "correlationId": "00000000-0000-0000-0000-000000000000", + "providers": [ + { + "namespace": "Microsoft.Authorization", + "resourceTypes": [ + { + "resourceType": "policyDefinitions", + "locations": [ + null + ] + }, + { + "resourceType": "policyAssignments", + "locations": [ + null + ] + } + ] + }, + { + "namespace": "Microsoft.Resources", + "resourceTypes": [ + { + "resourceType": "deployments", + "locations": [ + "eastus" + ] + } + ] + } + ], + "dependencies": [ + { + "dependsOn": [ + { + "id": "/providers/Microsoft.Management/managementGroups/my-management-group-id/providers/Microsoft.Authorization/policyDefinitions/policy-definition-name", + "resourceType": "Microsoft.Authorization/policyDefinitions", + "resourceName": "policy-definition-name" + } + ], + "id": "/providers/Microsoft.Management/managementGroups/my-management-group-id/providers/Microsoft.Authorization/policyAssignments/location-lock", + "resourceType": "Microsoft.Authorization/policyAssignments", + "resourceName": "location-lock" + } + ] + }, + "tags": { + "tagKey1": "tag-value-1", + "tagKey2": "tag-value-2" + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PutDeploymentAtTenant.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PutDeploymentAtTenant.json new file mode 100644 index 000000000000..e610b895cb91 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PutDeploymentAtTenant.json @@ -0,0 +1,150 @@ +{ + "parameters": { + "deploymentName": "tenant-dep01", + "api-version": "2021-01-01", + "parameters": { + "location": "eastus", + "properties": { + "templateLink": { + "uri": "https://example.com/exampleTemplate.json" + }, + "parameters": {}, + "mode": "Incremental" + }, + "tags": { + "tagKey1": "tag-value-1", + "tagKey2": "tag-value-2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Resources/deployments/tenant-dep01", + "name": "tenant-dep01", + "type": "Microsoft.Resources/deployments", + "location": "eastus", + "properties": { + "parameters": {}, + "mode": "Incremental", + "provisioningState": "Accepted", + "timestamp": "2019-04-24T22:52:38.7895563Z", + "duration": "PT1.2970875S", + "correlationId": "00000000-0000-0000-0000-000000000000", + "providers": [ + { + "namespace": "Microsoft.Authorization", + "resourceTypes": [ + { + "resourceType": "policyDefinitions", + "locations": [ + null + ] + }, + { + "resourceType": "policyAssignments", + "locations": [ + null + ] + } + ] + }, + { + "namespace": "Microsoft.Resources", + "resourceTypes": [ + { + "resourceType": "deployments", + "locations": [ + "eastus" + ] + } + ] + } + ], + "dependencies": [ + { + "dependsOn": [ + { + "id": "/providers/Microsoft.Authorization/policyDefinitions/policy-definition-name", + "resourceType": "Microsoft.Authorization/policyDefinitions", + "resourceName": "policy-definition-name" + } + ], + "id": "/providers/Microsoft.Authorization/policyAssignments/location-lock", + "resourceType": "Microsoft.Authorization/policyAssignments", + "resourceName": "location-lock" + } + ] + }, + "tags": { + "tagKey1": "tag-value-1", + "tagKey2": "tag-value-2" + } + } + }, + "201": { + "body": { + "id": "/providers/Microsoft.Resources/deployments/tenant-dep01", + "name": "tenant-dep01", + "type": "Microsoft.Resources/deployments", + "location": "eastus", + "properties": { + "parameters": {}, + "mode": "Incremental", + "provisioningState": "Accepted", + "timestamp": "2019-04-24T22:52:38.7895563Z", + "duration": "PT1.2970875S", + "correlationId": "00000000-0000-0000-0000-000000000000", + "providers": [ + { + "namespace": "Microsoft.Authorization", + "resourceTypes": [ + { + "resourceType": "policyDefinitions", + "locations": [ + null + ] + }, + { + "resourceType": "policyAssignments", + "locations": [ + null + ] + } + ] + }, + { + "namespace": "Microsoft.Resources", + "resourceTypes": [ + { + "resourceType": "deployments", + "locations": [ + "eastus" + ] + } + ] + } + ], + "dependencies": [ + { + "dependsOn": [ + { + "id": "/providers/Microsoft.Authorization/policyDefinitions/policy-definition-name", + "resourceType": "Microsoft.Authorization/policyDefinitions", + "resourceName": "policy-definition-name" + } + ], + "id": "/providers/Microsoft.Authorization/policyAssignments/location-lock", + "resourceType": "Microsoft.Authorization/policyAssignments", + "resourceName": "location-lock" + } + ] + }, + "tags": { + "tagKey1": "tag-value-1", + "tagKey2": "tag-value-2" + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PutDeploymentResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PutDeploymentResourceGroup.json new file mode 100644 index 000000000000..00357457df8b --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PutDeploymentResourceGroup.json @@ -0,0 +1,93 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000001", + "resourceGroupName": "my-resource-group", + "deploymentName": "my-deployment", + "api-version": "2021-01-01", + "parameters": { + "properties": { + "templateLink": { + "uri": "https://example.com/exampleTemplate.json", + "queryString": "sv=2019-02-02&st=2019-04-29T22%3A18%3A26Z&se=2019-04-30T02%3A23%3A26Z&sr=b&sp=rw&sip=168.1.5.60-168.1.5.70&spr=https&sig=xxxxxxxx0xxxxxxxxxxxxx%2bxxxxxxxxxxxxxxxxxxxx%3d" + }, + "parameters": {}, + "mode": "Incremental" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group/providers/Microsoft.Resources/deployments/my-deployment", + "name": "my-deployment", + "type": "Microsoft.Resources/deployments", + "properties": { + "templateLink": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group/providers/Microsoft.Resources/TemplateSpecs/TemplateSpec-Name/versions/v1", + "contentVersion": "1.0.0.0" + }, + "templateHash": "0000000000000000000", + "parameters": {}, + "mode": "Incremental", + "provisioningState": "Succeeded", + "timestamp": "2020-06-05T01:20:01.723776Z", + "duration": "PT22.8356799S", + "correlationId": "00000000-0000-0000-0000-000000000000", + "providers": [ + { + "namespace": "Microsoft.Storage", + "resourceTypes": [ + { + "resourceType": "storageAccounts", + "locations": [ + "eastus" + ] + } + ] + } + ], + "dependencies": [], + "outputResources": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group/providers/Microsoft.Storage/storageAccounts/my-storage-account" + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group/providers/Microsoft.Resources/deployments/my-deployment", + "name": "my-deployment", + "type": "Microsoft.Resources/deployments", + "properties": { + "templateLink": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group/providers/Microsoft.Resources/TemplateSpecs/TemplateSpec-Name/versions/v1", + "contentVersion": "1.0.0.0" + }, + "templateHash": "0000000000000000000", + "parameters": {}, + "mode": "Incremental", + "provisioningState": "Accepted", + "timestamp": "2020-06-05T01:20:01.723776Z", + "duration": "PT22.8356799S", + "correlationId": "00000000-0000-0000-0000-000000000000", + "providers": [ + { + "namespace": "Microsoft.Storage", + "resourceTypes": [ + { + "resourceType": "storageAccounts", + "locations": [ + "eastus" + ] + } + ] + } + ], + "dependencies": [] + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PutDeploymentResourceGroupTemplateSpecsWithId.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PutDeploymentResourceGroupTemplateSpecsWithId.json new file mode 100644 index 000000000000..e92197398583 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PutDeploymentResourceGroupTemplateSpecsWithId.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000001", + "resourceGroupName": "my-resource-group", + "deploymentName": "my-deployment", + "api-version": "2021-01-01", + "parameters": { + "properties": { + "templateLink": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group/providers/Microsoft.Resources/TemplateSpecs/TemplateSpec-Name/versions/v1" + }, + "parameters": {}, + "mode": "Incremental" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group/providers/Microsoft.Resources/deployments/my-deployment", + "name": "my-deployment", + "type": "Microsoft.Resources/deployments", + "properties": { + "templateLink": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group/providers/Microsoft.Resources/TemplateSpecs/TemplateSpec-Name/versions/v1", + "contentVersion": "1.0.0.0" + }, + "templateHash": "0000000000000000000", + "parameters": {}, + "mode": "Incremental", + "provisioningState": "Succeeded", + "timestamp": "2020-06-05T01:20:01.723776Z", + "duration": "PT22.8356799S", + "correlationId": "00000000-0000-0000-0000-000000000000", + "providers": [ + { + "namespace": "Microsoft.Storage", + "resourceTypes": [ + { + "resourceType": "storageAccounts", + "locations": [ + "eastus" + ] + } + ] + } + ], + "dependencies": [], + "outputResources": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group/providers/Microsoft.Storage/storageAccounts/my-storage-account" + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group/providers/Microsoft.Resources/deployments/my-deployment", + "name": "my-deployment", + "type": "Microsoft.Resources/deployments", + "properties": { + "templateLink": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group/providers/Microsoft.Resources/TemplateSpecs/TemplateSpec-Name/versions/v1", + "contentVersion": "1.0.0.0" + }, + "templateHash": "0000000000000000000", + "parameters": {}, + "mode": "Incremental", + "provisioningState": "Accepted", + "timestamp": "2020-06-05T01:20:01.723776Z", + "duration": "PT22.8356799S", + "correlationId": "00000000-0000-0000-0000-000000000000", + "providers": [ + { + "namespace": "Microsoft.Storage", + "resourceTypes": [ + { + "resourceType": "storageAccounts", + "locations": [ + "eastus" + ] + } + ] + } + ], + "dependencies": [] + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PutDeploymentSubscriptionTemplateSpecsWithId.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PutDeploymentSubscriptionTemplateSpecsWithId.json new file mode 100644 index 000000000000..176551e6c9b2 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PutDeploymentSubscriptionTemplateSpecsWithId.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000001", + "deploymentName": "my-deployment", + "api-version": "2021-01-01", + "parameters": { + "location": "eastus", + "properties": { + "templateLink": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group/providers/Microsoft.Resources/TemplateSpecs/TemplateSpec-Name/versions/v1" + }, + "parameters": {}, + "mode": "Incremental" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000001/providers/Microsoft.Resources/deployments/my-deployment", + "name": "my-deployment", + "type": "Microsoft.Resources/deployments", + "location": "eastus", + "properties": { + "templateLink": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group/providers/Microsoft.Resources/TemplateSpecs/TemplateSpec-Name/versions/v1", + "contentVersion": "1.0.0.0" + }, + "templateHash": "0000000000000000000", + "parameters": {}, + "mode": "Incremental", + "provisioningState": "Succeeded", + "timestamp": "2020-06-05T01:51:58.6288067Z", + "duration": "PT1.2637681S", + "correlationId": "00000000-0000-0000-0000-000000000000", + "providers": [], + "dependencies": [], + "outputResources": [] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000001/providers/Microsoft.Resources/deployments/my-deployment", + "name": "my-deployment", + "type": "Microsoft.Resources/deployments", + "location": "eastus", + "properties": { + "templateLink": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group/providers/Microsoft.Resources/TemplateSpecs/TemplateSpec-Name/versions/v1", + "contentVersion": "1.0.0.0" + }, + "templateHash": "0000000000000000000", + "parameters": {}, + "mode": "Incremental", + "provisioningState": "Accepted", + "timestamp": "2020-06-05T01:51:58.6288067Z", + "duration": "PT1.2637681S", + "correlationId": "00000000-0000-0000-0000-000000000000", + "providers": [], + "dependencies": [] + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json new file mode 100644 index 000000000000..9ff4e6e5c909 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json @@ -0,0 +1,168 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "my-resource-group", + "deploymentName": "my-deployment", + "api-version": "2021-01-01", + "parameters": { + "properties": { + "templateLink": { + "uri": "https://example.com/exampleTemplate.json" + }, + "parameters": {}, + "mode": "Complete", + "onErrorDeployment": { + "type": "LastSuccessful" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/my-resource-group/providers/Microsoft.Resources/deployments/my-deployment", + "name": "my-deployment", + "type": "Microsoft.Resources/deployments", + "properties": { + "templateLink": { + "uri": "https://example.com/exampleTemplate.json", + "contentVersion": "1.0.0.0" + }, + "parameters": {}, + "mode": "Complete", + "provisioningState": "Accepted", + "timestamp": "2019-03-01T00:00:00.0000000Z", + "duration": "PT0.8204881S", + "correlationId": "00000000-0000-0000-0000-000000000000", + "providers": [ + { + "namespace": "Microsoft.Network", + "resourceTypes": [ + { + "resourceType": "virtualNetworks", + "locations": [ + "centralus" + ] + }, + { + "resourceType": "virtualNetworks/subnets", + "locations": [ + "centralus" + ] + } + ] + } + ], + "dependencies": [ + { + "dependsOn": [ + { + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks", + "resourceName": "VNet1" + } + ], + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks/subnets", + "resourceName": "VNet1/Subnet1" + }, + { + "dependsOn": [ + { + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks", + "resourceName": "VNet1" + }, + { + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks/subnets", + "resourceName": "VNet1/Subnet1" + } + ], + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks/subnets", + "resourceName": "VNet1/Subnet2" + } + ], + "onErrorDeployment": { + "type": "LastSuccessful", + "deploymentName": "{nameOfLastSuccesfulDeployment}" + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/my-resource-group/providers/Microsoft.Resources/deployments/my-deployment", + "name": "my-deployment", + "type": "Microsoft.Resources/deployments", + "properties": { + "templateLink": { + "uri": "https://example.com/exampleTemplate.json", + "contentVersion": "1.0.0.0" + }, + "parameters": {}, + "mode": "Complete", + "provisioningState": "Accepted", + "timestamp": "2019-03-01T00:00:00.0000000Z", + "duration": "PT0.8204881S", + "correlationId": "00000000-0000-0000-0000-000000000000", + "providers": [ + { + "namespace": "Microsoft.Network", + "resourceTypes": [ + { + "resourceType": "virtualNetworks", + "locations": [ + "centralus" + ] + }, + { + "resourceType": "virtualNetworks/subnets", + "locations": [ + "centralus" + ] + } + ] + } + ], + "dependencies": [ + { + "dependsOn": [ + { + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks", + "resourceName": "VNet1" + } + ], + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks/subnets", + "resourceName": "VNet1/Subnet1" + }, + { + "dependsOn": [ + { + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks", + "resourceName": "VNet1" + }, + { + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks/subnets", + "resourceName": "VNet1/Subnet1" + } + ], + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks/subnets", + "resourceName": "VNet1/Subnet2" + } + ], + "onErrorDeployment": { + "type": "LastSuccessful", + "deploymentName": "{nameOfLastSuccesfulDeployment}" + } + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json new file mode 100644 index 000000000000..1d735cd878fd --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json @@ -0,0 +1,169 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "my-resource-group", + "deploymentName": "my-deployment", + "api-version": "2021-01-01", + "parameters": { + "properties": { + "templateLink": { + "uri": "https://example.com/exampleTemplate.json" + }, + "parameters": {}, + "mode": "Complete", + "onErrorDeployment": { + "type": "SpecificDeployment", + "deploymentName": "name-of-deployment-to-use" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/my-resource-group/providers/Microsoft.Resources/deployments/my-deployment", + "name": "my-deployment", + "type": "Microsoft.Resources/deployments", + "properties": { + "templateLink": { + "uri": "https://example.com/exampleTemplate.json", + "contentVersion": "1.0.0.0" + }, + "parameters": {}, + "mode": "Complete", + "provisioningState": "Accepted", + "timestamp": "2019-03-01T00:00:00.0000000Z", + "duration": "PT0.8204881S", + "correlationId": "00000000-0000-0000-0000-000000000000", + "providers": [ + { + "namespace": "Microsoft.Network", + "resourceTypes": [ + { + "resourceType": "virtualNetworks", + "locations": [ + "centralus" + ] + }, + { + "resourceType": "virtualNetworks/subnets", + "locations": [ + "centralus" + ] + } + ] + } + ], + "dependencies": [ + { + "dependsOn": [ + { + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks", + "resourceName": "VNet1" + } + ], + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks/subnets", + "resourceName": "VNet1/Subnet1" + }, + { + "dependsOn": [ + { + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks", + "resourceName": "VNet1" + }, + { + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks/subnets", + "resourceName": "VNet1/Subnet1" + } + ], + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks/subnets", + "resourceName": "VNet1/Subnet2" + } + ], + "onErrorDeployment": { + "type": "SpecificDeployment", + "deploymentName": "name-of-deployment-to-use" + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/my-resource-group/providers/Microsoft.Resources/deployments/my-deployment", + "name": "my-deployment", + "type": "Microsoft.Resources/deployments", + "properties": { + "templateLink": { + "uri": "https://example.com/exampleTemplate.json", + "contentVersion": "1.0.0.0" + }, + "parameters": {}, + "mode": "Complete", + "provisioningState": "Accepted", + "timestamp": "2019-03-01T00:00:00.0000000Z", + "duration": "PT0.8204881S", + "correlationId": "00000000-0000-0000-0000-000000000000", + "providers": [ + { + "namespace": "Microsoft.Network", + "resourceTypes": [ + { + "resourceType": "virtualNetworks", + "locations": [ + "centralus" + ] + }, + { + "resourceType": "virtualNetworks/subnets", + "locations": [ + "centralus" + ] + } + ] + } + ], + "dependencies": [ + { + "dependsOn": [ + { + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks", + "resourceName": "VNet1" + } + ], + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks/subnets", + "resourceName": "VNet1/Subnet1" + }, + { + "dependsOn": [ + { + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks", + "resourceName": "VNet1" + }, + { + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks/subnets", + "resourceName": "VNet1/Subnet1" + } + ], + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks/subnets", + "resourceName": "VNet1/Subnet2" + } + ], + "onErrorDeployment": { + "type": "SpecificDeployment", + "deploymentName": "name-of-deployment-to-use" + } + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PutTagsResource.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PutTagsResource.json new file mode 100644 index 000000000000..39b2f5583b88 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PutTagsResource.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "scope": "subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/my-resource-group/providers/myPRNameSpace/VM/myVm", + "api-version": "2021-01-01", + "parameters": { + "properties": { + "tags": { + "tagKey1": "tag-value-1", + "tagKey2": "tag-value-2" + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "tags": { + "tagKey1": "tag-value-1", + "tagKey2": "tag-value-2" + } + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PutTagsSubscription.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PutTagsSubscription.json new file mode 100644 index 000000000000..d193c0a7e661 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PutTagsSubscription.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "api-version": "2021-01-01", + "parameters": { + "properties": { + "tags": { + "tagKey1": "tag-value-1", + "tagKey2": "tag-value-2" + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "tags": { + "tagKey1": "tag-value-1", + "tagKey2": "tag-value-2" + } + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/resources.json new file mode 100644 index 000000000000..4c0957d91b24 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/resources.json @@ -0,0 +1,6425 @@ +{ + "swagger": "2.0", + "info": { + "title": "ResourceManagementClient", + "version": "2021-01-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": { + "/providers/Microsoft.Resources/operations": { + "get": { + "tags": [ + "Operations" + ], + "operationId": "Operations_List", + "description": "Lists all of the available Microsoft.Resources REST API operations.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtScope", + "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. 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": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtScope", + "summary": "Deploys resources at a given scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at a given scope.": { + "$ref": "./examples/PutDeploymentAtScope.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtScope", + "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 resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtScope", + "description": "Get all the deployments at the given scope.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "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" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtTenantScope", + "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. 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": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtTenantScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtTenantScope", + "summary": "Deploys resources at tenant scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at tenant scope.": { + "$ref": "./examples/PutDeploymentAtTenant.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtTenantScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtTenantScope", + "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 resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtTenantScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIfAtTenantScope", + "description": "Returns changes that will be made by the deployment if executed at the scope of the tenant group.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeploymentWhatIf" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at management group scope": { + "$ref": "./examples/PostDeploymentWhatIfOnTenant.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtTenantScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtTenantScope", + "description": "Get all the deployments at the tenant scope.", + "parameters": [ + { + "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" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtManagementGroupScope", + "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. 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": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtManagementGroupScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtManagementGroupScope", + "summary": "Deploys resources at management group scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at management group scope.": { + "$ref": "./examples/PutDeploymentAtManagementGroup.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtManagementGroupScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtManagementGroupScope", + "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 resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtManagementGroupScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIfAtManagementGroupScope", + "description": "Returns changes that will be made by the deployment if executed at the scope of the management group.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeploymentWhatIf" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at management group scope": { + "$ref": "./examples/PostDeploymentWhatIfOnManagementGroup.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtManagementGroupScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtManagementGroupScope", + "description": "Get all the deployments for a management group.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "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" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtSubscriptionScope", + "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. 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": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtSubscriptionScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtSubscriptionScope", + "summary": "Deploys resources at subscription scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create a deployment that will deploy a templateSpec with the given resourceId": { + "$ref": "./examples/PutDeploymentSubscriptionTemplateSpecsWithId.json" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtSubscriptionScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtSubscriptionScope", + "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 resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtSubscriptionScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "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" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIfAtSubscriptionScope", + "description": "Returns changes that will be made by the deployment if executed at the scope of the subscription.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DeploymentWhatIf" + }, + "description": "Parameters to What If." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at subscription scope": { + "$ref": "./examples/PostDeploymentWhatIfOnSubscription.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtSubscriptionScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtSubscriptionScope", + "description": "Get all the deployments for a subscription.", + "parameters": [ + { + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/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 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "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 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "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 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create a deployment that will redeploy the last successful deployment on failure": { + "$ref": "./examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json" + }, + "Create a deployment that will redeploy another deployment on failure": { + "$ref": "./examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json" + }, + "Create a deployment that will deploy a templateSpec with the given resourceId": { + "$ref": "./examples/PutDeploymentResourceGroupTemplateSpecsWithId.json" + }, + "Create a deployment that will deploy a template with a uri and queryString": { + "$ref": "./examples/PutDeploymentResourceGroup.json" + } + }, + "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 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/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 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Validate", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "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 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "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" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIf", + "description": "Returns changes that will be made by the deployment if executed at the scope of the resource group.", + "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 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DeploymentWhatIf" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at resource group scope": { + "$ref": "./examples/PostDeploymentWhatIfOnResourceGroup.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/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 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "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 information about the resource provider.", + "schema": { + "$ref": "#/definitions/Provider" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/{resourceProviderNamespace}/register": { + "post": { + "tags": [ + "Providers" + ], + "operationId": "Providers_RegisterAtManagementGroupScope", + "description": "Registers a management group 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/GroupIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the resource provider." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get providers.": { + "$ref": "./examples/GetProviders.json" + } + } + } + }, + "/providers": { + "get": { + "tags": [ + "Providers" + ], + "operationId": "Providers_ListAtTenantScope", + "description": "Gets all resource providers for the tenant.", + "parameters": [ + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return. If null is passed returns all providers." + }, + { + "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" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of resource providers.", + "schema": { + "$ref": "#/definitions/ProviderListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get provider.": { + "$ref": "./examples/GetProvider.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/resourceTypes": { + "get": { + "tags": [ + "Providers" + ], + "operationId": "ProviderResourceTypes_List", + "description": "List the resource types for a 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 resource types information for the resource provider.", + "schema": { + "$ref": "#/definitions/ProviderResourceTypeListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get provider resource types.": { + "$ref": "./examples/GetProviderResourceTypes.json" + } + } + } + }, + "/providers/{resourceProviderNamespace}": { + "get": { + "tags": [ + "Providers" + ], + "x-ms-examples": { + "Get a resource provider at tenant scope": { + "$ref": "./examples/GetNamedProviderAtTenant.json" + } + }, + "operationId": "Providers_GetAtTenantScope", + "description": "Gets the specified resource provider at the tenant level.", + "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" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the resource provider.", + "schema": { + "$ref": "#/definitions/Provider" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/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.

    The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

    For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

    You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

    For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

    You can link more than one substringof together by adding and/or operators.

    You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results.

    You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." + }, + { + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "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" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "ResourceGroups" + ], + "x-ms-examples": { + "Create or update a resource group": { + "$ref": "./examples/CreateResourceGroup.json" + } + }, + "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. Can include alphanumeric, underscore, parentheses, hyphen, period (except at end), and Unicode characters that match the allowed characters.", + "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": { + "200": { + "description": "OK - Returns information about the new resource group.", + "schema": { + "$ref": "#/definitions/ResourceGroup" + } + }, + "201": { + "description": "Created - Returns information about the new resource group.", + "schema": { + "$ref": "#/definitions/ResourceGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "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 + }, + { + "name": "forceDeletionTypes", + "in": "query", + "required": false, + "type": "string", + "description": "The resource types you want to force delete. Currently, only the following is supported: forceDeletionTypes=Microsoft.Compute/virtualMachines,Microsoft.Compute/virtualMachineScaleSets" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "x-ms-examples": { + "Force delete all the Virtual Machines in a resource group": { + "$ref": "./examples/ForceDeleteVMsInResourceGroup.json" + }, + "Force delete all the Virtual Machines and Virtual Machine Scale Sets in a resource group": { + "$ref": "./examples/ForceDeleteVMsAndVMSSInResourceGroup.json" + } + }, + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/exportTemplate": { + "post": { + "tags": [ + "ResourceGroups" + ], + "operationId": "ResourceGroups_ExportTemplate", + "description": "Captures the specified resource group as a template.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExportTemplateRequest" + }, + "description": "Parameters for exporting the template." + } + ], + "x-ms-examples": { + "Export a resource group": { + "$ref": "./examples/ExportResourceGroup.json" + }, + "Export a resource group with filtering": { + "$ref": "./examples/ExportResourceGroupWithFiltering.json" + } + }, + "responses": { + "200": { + "description": "OK - Returns the result of the export.", + "schema": { + "$ref": "#/definitions/ResourceGroupExportResult" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/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.

    You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'" + }, + { + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "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" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "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" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "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.

    The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

    For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

    You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

    For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

    You can link more than one substringof together by adding and/or operators.

    You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results.

    You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." + }, + { + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "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.", + "x-ms-api-version": false + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "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.", + "x-ms-api-version": false + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "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.", + "x-ms-api-version": false + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Parameters for creating or updating the resource." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the resource.", + "schema": { + "$ref": "#/definitions/GenericResource" + } + }, + "201": { + "description": "Created - Returns information about the resource.", + "schema": { + "$ref": "#/definitions/GenericResource" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "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.", + "x-ms-api-version": false + }, + { + "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" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "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.", + "x-ms-api-version": false + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the resource.", + "schema": { + "$ref": "#/definitions/GenericResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{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.", + "x-ms-api-version": false + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "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.", + "x-ms-api-version": false + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "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.", + "x-ms-api-version": false + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Create or update resource parameters." + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the resource.", + "schema": { + "$ref": "#/definitions/GenericResource" + } + }, + "201": { + "description": "Created - Returns information about the resource.", + "schema": { + "$ref": "#/definitions/GenericResource" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "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.", + "x-ms-api-version": false + }, + { + "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" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "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.", + "x-ms-api-version": false + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the resource.", + "schema": { + "$ref": "#/definitions/GenericResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/tagNames/{tagName}/tagValues/{tagValue}": { + "delete": { + "tags": [ + "Tags" + ], + "operationId": "Tags_DeleteValue", + "summary": "Deletes a predefined tag value for a predefined tag name.", + "description": "This operation allows deleting a value from the list of predefined values for an existing predefined tag name. The value being deleted must not be in use as a tag value for the given tag name for any resource.", + "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": "Predefined tag value successfully deleted." + }, + "204": { + "description": "Predefined tag value did not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Tags" + ], + "operationId": "Tags_CreateOrUpdateValue", + "summary": "Creates a predefined value for a predefined tag name.", + "description": "This operation allows adding a value to the list of predefined values for an existing predefined tag name. A tag value can have a maximum of 256 characters.", + "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": "Predefined tag value already exists. Returns information about the predefined tag value.", + "schema": { + "$ref": "#/definitions/TagValue" + } + }, + "201": { + "description": "Predefined tag value successfully created. Returns information about the predefined tag value.", + "schema": { + "$ref": "#/definitions/TagValue" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/tagNames/{tagName}": { + "put": { + "tags": [ + "Tags" + ], + "operationId": "Tags_CreateOrUpdate", + "summary": "Creates a predefined tag name.", + "description": "This operation allows adding a name to the list of predefined tag names for the given subscription. A tag name can have a maximum of 512 characters and is case-insensitive. Tag names cannot have the following prefixes which are reserved for Azure use: 'microsoft', 'azure', 'windows'.", + "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": "Predefined tag name already exists. Returns information about the predefined tag name.", + "schema": { + "$ref": "#/definitions/TagDetails" + } + }, + "201": { + "description": "Predefined tag name successfully created. Returns information about the predefined tag name.", + "schema": { + "$ref": "#/definitions/TagDetails" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "Tags" + ], + "operationId": "Tags_Delete", + "summary": "Deletes a predefined tag name.", + "description": "This operation allows deleting a name from the list of predefined tag names for the given subscription. The name being deleted must not be in use as a tag name for any resource. All predefined values for the given name must have already been deleted.", + "parameters": [ + { + "name": "tagName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tag." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Predefined tag name successfully deleted." + }, + "204": { + "description": "Predefined tag name did not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/tagNames": { + "get": { + "tags": [ + "Tags" + ], + "operationId": "Tags_List", + "summary": "Gets a summary of tag usage under the subscription.", + "description": "This operation performs a union of predefined tags, resource tags, resource group tags and subscription tags, and returns a summary of usage for each tag name and value under the given subscription. In case of a large number of tags, this operation may return a previously cached result.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of tag names and values.", + "schema": { + "$ref": "#/definitions/TagsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtTenantScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtTenantScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtManagementGroupScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtManagementGroupScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtSubscriptionScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtSubscriptionScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "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 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/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 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Resources/calculateTemplateHash": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CalculateTemplateHash", + "description": "Calculate the hash of the given template.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "template", + "in": "body", + "required": true, + "schema": { + "type": "object" + }, + "description": "The template provided to calculate hash." + } + ], + "x-ms-examples": { + "Calculate template hash": { + "$ref": "./examples/CalculateTemplateHash.json" + } + }, + "responses": { + "200": { + "description": "OK - Returns the hash.", + "schema": { + "$ref": "#/definitions/TemplateHashResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/tags/default": { + "put": { + "tags": [ + "Tags" + ], + "operationId": "Tags_CreateOrUpdateAtScope", + "summary": "Creates or updates the entire set of tags on a resource or subscription.", + "description": "This operation allows adding or replacing the entire set of tags on the specified resource or subscription. The specified entity can have a maximum of 50 tags.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TagsResource" + } + } + ], + "responses": { + "200": { + "description": "Tags updated successfully. Returns tags from the specified object.", + "schema": { + "$ref": "#/definitions/TagsResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update tags on a resource": { + "$ref": "./examples/PutTagsResource.json" + }, + "Update tags on a subscription": { + "$ref": "./examples/PutTagsSubscription.json" + } + } + }, + "patch": { + "tags": [ + "Tags" + ], + "operationId": "Tags_UpdateAtScope", + "summary": "Selectively updates the set of tags on a resource or subscription.", + "description": "This operation allows replacing, merging or selectively deleting tags on the specified resource or subscription. The specified entity can have a maximum of 50 tags at the end of the operation. The 'replace' option replaces the entire set of existing tags with a new set. The 'merge' option allows adding tags with new names and updating the values of tags with existing names. The 'delete' option allows selectively deleting tags based on given names or name/value pairs.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TagsPatchResource" + } + } + ], + "responses": { + "200": { + "description": "Tags updated successfully. Returns tags from the specified object.", + "schema": { + "$ref": "#/definitions/TagsResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "get": { + "tags": [ + "Tags" + ], + "operationId": "Tags_GetAtScope", + "summary": "Gets the entire set of tags on a resource or subscription.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Returns tags from the specified object.", + "schema": { + "$ref": "#/definitions/TagsResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get tags on a resource": { + "$ref": "./examples/GetTagsResource.json" + }, + "Get tags on a subscription": { + "$ref": "./examples/GetTagsSubscription.json" + } + } + }, + "delete": { + "tags": [ + "Tags" + ], + "operationId": "Tags_DeleteAtScope", + "summary": "Deletes the entire set of tags on a resource or subscription.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Tags successfully deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + } + }, + "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. Use either the uri or id property, but not both." + }, + "id": { + "type": "string", + "description": "The resource id of a Template Spec. Use either the id or uri property, but not both." + }, + "relativePath": { + "type": "string", + "description": "The relativePath property can be used to deploy a linked template at a location relative to the parent. If the parent template was linked with a TemplateSpec, this will reference an artifact in the TemplateSpec. If the parent was linked with a URI, the child deployment will be a combination of the parent and relativePath URIs" + }, + "contentVersion": { + "type": "string", + "description": "If included, must match the ContentVersion in the template." + }, + "queryString": { + "type": "string", + "description": "The query string (for example, a SAS token) to be used with the templateLink 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 parameters." + }, + "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." + }, + "expressionEvaluationOptions": { + "$ref": "#/definitions/ExpressionEvaluationOptions", + "description": "Specifies whether template expressions are evaluated within the scope of the parent template or nested template. Only applicable to nested templates. If not specified, default value is outer." + } + }, + "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." + } + }, + "description": "The debug setting." + }, + "Deployment": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentProperties", + "description": "The deployment properties." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Deployment tags" + } + }, + "required": [ + "properties" + ], + "description": "Deployment operation parameters." + }, + "ScopedDeployment": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentProperties", + "description": "The deployment properties." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Deployment tags" + } + }, + "required": [ + "location", + "properties" + ], + "description": "Deployment operation parameters." + }, + "DeploymentExportResult": { + "properties": { + "template": { + "type": "object", + "description": "The template content." + } + }, + "description": "The deployment export result. " + }, + "DeploymentWhatIf": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentWhatIfProperties", + "description": "The deployment properties." + } + }, + "required": [ + "properties" + ], + "description": "Deployment What-if operation parameters." + }, + "ScopedDeploymentWhatIf": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentWhatIfProperties", + "description": "The deployment properties." + } + }, + "required": [ + "location", + "properties" + ], + "description": "Deployment What-if operation parameters." + }, + "DeploymentWhatIfProperties": { + "properties": { + "whatIfSettings": { + "$ref": "#/definitions/DeploymentWhatIfSettings", + "description": "Optional What-If operation settings." + } + }, + "allOf": [ + { + "$ref": "#/definitions/DeploymentProperties" + } + ], + "description": "Deployment What-if properties." + }, + "DeploymentWhatIfSettings": { + "properties": { + "resultFormat": { + "type": "string", + "description": "The format of the What-If results", + "enum": [ + "ResourceIdOnly", + "FullResourcePayloads" + ], + "x-ms-enum": { + "name": "WhatIfResultFormat", + "modelAsString": false + } + } + }, + "description": "Deployment What-If operation settings." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "An error response for a resource management request." + }, + "ApiProfile": { + "properties": { + "profileVersion": { + "type": "string", + "readOnly": true, + "description": "The profile version." + }, + "apiVersion": { + "type": "string", + "readOnly": true, + "description": "The API version." + } + } + }, + "AliasPathMetadata": { + "properties": { + "type": { + "type": "string", + "readOnly": true, + "enum": [ + "NotSpecified", + "Any", + "String", + "Object", + "Array", + "Integer", + "Number", + "Boolean" + ], + "x-ms-enum": { + "name": "AliasPathTokenType", + "modelAsString": true, + "values": [ + { + "value": "NotSpecified", + "description": "The token type is not specified." + }, + { + "value": "Any", + "description": "The token type can be anything." + }, + { + "value": "String", + "description": "The token type is string." + }, + { + "value": "Object", + "description": "The token type is object." + }, + { + "value": "Array", + "description": "The token type is array." + }, + { + "value": "Integer", + "description": "The token type is integer." + }, + { + "value": "Number", + "description": "The token type is number." + }, + { + "value": "Boolean", + "description": "The token type is boolean." + } + ] + }, + "description": "The type of the token that the alias path is referring to." + }, + "attributes": { + "type": "string", + "readOnly": true, + "enum": [ + "None", + "Modifiable" + ], + "x-ms-enum": { + "name": "AliasPathAttributes", + "modelAsString": true, + "values": [ + { + "value": "None", + "description": "The token that the alias path is referring to has no attributes." + }, + { + "value": "Modifiable", + "description": "The token that the alias path is referring to is modifiable by policies with 'modify' effect." + } + ] + }, + "description": "The attributes of the token that the alias path is referring to." + } + } + }, + "AliasPath": { + "properties": { + "path": { + "type": "string", + "description": "The path of an alias." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API versions." + }, + "pattern": { + "$ref": "#/definitions/AliasPattern", + "description": "The pattern for an alias path." + }, + "metadata": { + "readOnly": true, + "$ref": "#/definitions/AliasPathMetadata", + "description": "The metadata of the alias path. If missing, fall back to the default metadata of the alias." + } + }, + "description": "The type of the paths for alias." + }, + "AliasPattern": { + "properties": { + "phrase": { + "type": "string", + "description": "The alias pattern phrase." + }, + "variable": { + "type": "string", + "description": "The alias pattern variable." + }, + "type": { + "type": "string", + "enum": [ + "NotSpecified", + "Extract" + ], + "x-ms-enum": { + "name": "AliasPatternType", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "NotSpecified is not allowed." + }, + { + "value": "Extract", + "description": "Extract is the only allowed value." + } + ] + }, + "description": "The type of alias pattern" + } + }, + "description": "The type of the pattern for an alias path." + }, + "Alias": { + "properties": { + "name": { + "type": "string", + "description": "The alias name." + }, + "paths": { + "type": "array", + "items": { + "$ref": "#/definitions/AliasPath" + }, + "description": "The paths for an alias." + }, + "type": { + "type": "string", + "description": "The type of the alias.", + "enum": [ + "NotSpecified", + "PlainText", + "Mask" + ], + "x-ms-enum": { + "name": "AliasType", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "Alias type is unknown (same as not providing alias type)." + }, + { + "value": "PlainText", + "description": "Alias value is not secret." + }, + { + "value": "Mask", + "description": "Alias value is secret." + } + ] + } + }, + "defaultPath": { + "type": "string", + "description": "The default path for an alias." + }, + "defaultPattern": { + "$ref": "#/definitions/AliasPattern", + "description": "The default pattern for an alias." + }, + "defaultMetadata": { + "readOnly": true, + "$ref": "#/definitions/AliasPathMetadata", + "description": "The default alias path metadata. Applies to the default path and to any alias path that doesn't have metadata" + } + }, + "description": "The alias type. " + }, + "ProviderExtendedLocation": { + "properties": { + "location": { + "type": "string", + "description": "The azure location." + }, + "type": { + "type": "string", + "description": "The extended location type." + }, + "extendedLocations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The extended locations for the azure location." + } + }, + "description": "The provider extended location. " + }, + "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." + }, + "locationMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ProviderExtendedLocation" + }, + "description": "The location mappings that are supported by this resource type." + }, + "aliases": { + "type": "array", + "items": { + "$ref": "#/definitions/Alias" + }, + "description": "The aliases that are supported by this resource type." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API version." + }, + "defaultApiVersion": { + "type": "string", + "readOnly": true, + "description": "The default API version." + }, + "apiProfiles": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ApiProfile" + }, + "description": "The API profiles for the resource provider." + }, + "capabilities": { + "type": "string", + "description": "The additional capabilities offered by this resource type." + }, + "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 resource provider." + }, + "registrationPolicy": { + "readOnly": true, + "type": "string", + "description": "The registration policy of the resource 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": { + "type": "string", + "readOnly": true, + "description": "Denotes the state of provisioning.", + "enum": [ + "NotSpecified", + "Accepted", + "Running", + "Ready", + "Creating", + "Created", + "Deleting", + "Deleted", + "Canceled", + "Failed", + "Succeeded", + "Updating" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "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." + }, + "duration": { + "readOnly": true, + "type": "string", + "description": "The duration of the template deployment." + }, + "outputs": { + "readOnly": true, + "type": "object", + "description": "Key/value pairs that represent deployment output." + }, + "providers": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Provider" + }, + "description": "The list of resource providers needed for the deployment." + }, + "dependencies": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Dependency" + }, + "description": "The list of deployment dependencies." + }, + "templateLink": { + "readOnly": true, + "$ref": "#/definitions/TemplateLink", + "description": "The URI referencing the template." + }, + "parameters": { + "readOnly": true, + "type": "object", + "description": "Deployment parameters. " + }, + "parametersLink": { + "readOnly": true, + "$ref": "#/definitions/ParametersLink", + "description": "The URI referencing the parameters. " + }, + "mode": { + "readOnly": true, + "type": "string", + "description": "The deployment mode. Possible values are Incremental and Complete.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "debugSetting": { + "readOnly": true, + "$ref": "#/definitions/DebugSetting", + "description": "The debug setting of the deployment." + }, + "onErrorDeployment": { + "readOnly": true, + "$ref": "#/definitions/OnErrorDeploymentExtended", + "description": "The deployment on error behavior." + }, + "templateHash": { + "readOnly": true, + "type": "string", + "description": "The hash produced for the template." + }, + "outputResources": { + "readOnly": true, + "type": "array", + "description": "Array of provisioned resources.", + "items": { + "$ref": "#/definitions/ResourceReference", + "description": "Details of provisioned resources." + } + }, + "validatedResources": { + "readOnly": true, + "type": "array", + "description": "Array of validated resources.", + "items": { + "$ref": "#/definitions/ResourceReference", + "description": "Details of validated resources." + } + }, + "error": { + "readOnly": true, + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The deployment error." + } + }, + "description": "Deployment properties with additional details." + }, + "ResourceReference": { + "description": "The resource Id model.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The fully qualified resource Id." + } + } + }, + "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": { + "readOnly": true, + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The deployment validation error." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "The template deployment properties." + } + }, + "description": "Information from validate template deployment response." + }, + "DeploymentExtended": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ID of the deployment." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the deployment." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of the deployment." + }, + "location": { + "type": "string", + "description": "the location of the deployment." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "Deployment properties." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Deployment tags" + } + }, + "x-ms-azure-resource": true, + "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." + }, + "ProviderResourceTypeListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ProviderResourceType" + }, + "description": "An array of resource types." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of resource types of a resource provider." + }, + "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." + }, + "ExtendedLocation": { + "properties": { + "type": { + "type": "string", + "enum": [ + "EdgeZone" + ], + "x-ms-enum": { + "name": "ExtendedLocationType", + "modelAsString": true + }, + "description": "The extended location type." + }, + "name": { + "type": "string", + "description": "The extended location name." + } + }, + "description": "Resource extended location." + }, + "GenericResourceExpanded": { + "properties": { + "createdTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The created time of the resource. This is only present if requested via the $expand query parameter." + }, + "changedTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The changed time of the resource. This is only present if requested via the $expand query parameter." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state of the resource. This is only present if requested via the $expand query parameter." + } + }, + "allOf": [ + { + "$ref": "#/definitions/GenericResource" + } + ], + "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 + } + }, + "userAssignedIdentities": { + "type": "object", + "additionalProperties": { + "type": "object", + "x-ms-client-name": "IdentityUserAssignedIdentitiesValue", + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of user assigned identity." + }, + "clientId": { + "readOnly": true, + "type": "string", + "description": "The client id of user assigned identity." + } + } + }, + "description": "The list of user identities associated with the resource. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'." + } + }, + "description": "Identity for the resource." + }, + "ResourceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/GenericResourceExpanded" + }, + "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": { + "readOnly": true, + "type": "string", + "description": "The name of the resource group." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of the resource group." + }, + "properties": { + "$ref": "#/definitions/ResourceGroupProperties", + "description": "The resource group properties." + }, + "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" + ], + "x-ms-azure-resource": true, + "description": "Resource group information." + }, + "ResourceGroupPatchable": { + "properties": { + "name": { + "type": "string", + "description": "The name of the resource group." + }, + "properties": { + "$ref": "#/definitions/ResourceGroupProperties", + "description": "The resource group properties." + }, + "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 to filter the export by. To export all resources, supply an array with single entry '*'." + }, + "options": { + "type": "string", + "description": "The export template options. A CSV-formatted list containing zero or more of the following: 'IncludeParameterDefaultValue', 'IncludeComments', 'SkipResourceNameParameterization', 'SkipAllParameterization'" + } + }, + "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": { + "readOnly": true, + "type": "string", + "description": "The tag value ID." + }, + "tagValue": { + "type": "string", + "description": "The tag value." + }, + "count": { + "$ref": "#/definitions/TagCount", + "description": "The tag value count." + } + }, + "x-ms-azure-resource": true, + "description": "Tag information." + }, + "TagDetails": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The tag name 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." + } + }, + "x-ms-azure-resource": true, + "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": { + "provisioningOperation": { + "readOnly": true, + "type": "string", + "description": "The name of the current provisioning operation.", + "enum": [ + "NotSpecified", + "Create", + "Delete", + "Waiting", + "AzureAsyncOperationWaiting", + "ResourceCacheWaiting", + "Action", + "Read", + "EvaluateDeploymentOutput", + "DeploymentCleanup" + ], + "x-ms-enum": { + "name": "ProvisioningOperation", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "The provisioning operation is not specified." + }, + { + "value": "Create", + "description": "The provisioning operation is create." + }, + { + "value": "Delete", + "description": "The provisioning operation is delete." + }, + { + "value": "Waiting", + "description": "The provisioning operation is waiting." + }, + { + "value": "AzureAsyncOperationWaiting", + "description": "The provisioning operation is waiting Azure async operation." + }, + { + "value": "ResourceCacheWaiting", + "description": "The provisioning operation is waiting for resource cache." + }, + { + "value": "Action", + "description": "The provisioning operation is action." + }, + { + "value": "Read", + "description": "The provisioning operation is read." + }, + { + "value": "EvaluateDeploymentOutput", + "description": "The provisioning operation is evaluate output." + }, + { + "value": "DeploymentCleanup", + "description": "The provisioning operation is cleanup. This operation is part of the 'complete' mode deployment." + } + ] + } + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The date and time of the operation." + }, + "duration": { + "readOnly": true, + "type": "string", + "description": "The duration of the operation." + }, + "serviceRequestId": { + "readOnly": true, + "type": "string", + "description": "Deployment operation service request id." + }, + "statusCode": { + "readOnly": true, + "type": "string", + "description": "Operation status code from the resource provider. This property may not be set if a response has not yet been received." + }, + "statusMessage": { + "readOnly": true, + "description": "Operation status message from the resource provider. This property is optional. It will only be provided if an error was received from the resource provider.", + "$ref": "#/definitions/StatusMessage" + }, + "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": "Resource provider 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" + }, + "extendedLocation": { + "$ref": "#/definitions/ExtendedLocation", + "x-ms-mutability": [ + "read", + "create" + ], + "description": "Resource extended location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "x-ms-azure-resource": true, + "description": "Specified 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": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The template export error." + } + }, + "description": "Resource group export result." + }, + "Operation": { + "description": "Microsoft.Resources operation", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}", + "type": "string" + }, + "display": { + "description": "The object that represents the operation.", + "properties": { + "provider": { + "description": "Service provider: Microsoft.Resources", + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed: Profile, endpoint, etc.", + "type": "string" + }, + "operation": { + "description": "Operation type: Read, write, delete, etc.", + "type": "string" + }, + "description": { + "description": "Description of the operation.", + "type": "string" + } + } + } + } + }, + "OperationListResult": { + "description": "Result of the request to list Microsoft.Resources operations. It contains a list of operations and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "description": "List of Microsoft.Resources operations." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "TemplateHashResult": { + "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", + "properties": { + "minifiedTemplate": { + "type": "string", + "description": "The minified template string." + }, + "templateHash": { + "type": "string", + "description": "The template hash." + } + } + }, + "WhatIfPropertyChange": { + "required": [ + "path", + "propertyChangeType" + ], + "properties": { + "path": { + "type": "string", + "description": "The path of the property." + }, + "propertyChangeType": { + "type": "string", + "description": "The type of property change.", + "enum": [ + "Create", + "Delete", + "Modify", + "Array", + "NoEffect" + ], + "x-ms-enum": { + "name": "PropertyChangeType", + "modelAsString": false, + "values": [ + { + "value": "Create", + "description": "The property does not exist in the current state but is present in the desired state. The property will be created when the deployment is executed." + }, + { + "value": "Delete", + "description": "The property exists in the current state and is missing from the desired state. It will be deleted when the deployment is executed." + }, + { + "value": "Modify", + "description": "The property exists in both current and desired state and is different. The value of the property will change when the deployment is executed." + }, + { + "value": "Array", + "description": "The property is an array and contains nested changes." + }, + { + "value": "NoEffect", + "description": "The property will not be set or updated." + } + ] + } + }, + "before": { + "type": "object", + "description": "The value of the property before the deployment is executed." + }, + "after": { + "type": "object", + "description": "The value of the property after the deployment is executed." + }, + "children": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfPropertyChange" + }, + "description": "Nested property changes." + } + }, + "description": "The predicted change to the resource property." + }, + "WhatIfChange": { + "description": "Information about a single resource change predicted by What-If operation.", + "required": [ + "resourceId", + "changeType" + ], + "properties": { + "resourceId": { + "type": "string", + "description": "Resource ID" + }, + "changeType": { + "type": "string", + "description": "Type of change that will be made to the resource when the deployment is executed.", + "enum": [ + "Create", + "Delete", + "Ignore", + "Deploy", + "NoChange", + "Modify", + "Unsupported" + ], + "x-ms-enum": { + "name": "ChangeType", + "modelAsString": false, + "values": [ + { + "value": "Create", + "description": "The resource does not exist in the current state but is present in the desired state. The resource will be created when the deployment is executed." + }, + { + "value": "Delete", + "description": "The resource exists in the current state and is missing from the desired state. The resource will be deleted when the deployment is executed." + }, + { + "value": "Ignore", + "description": "The resource exists in the current state and is missing from the desired state. The resource will not be deployed or modified when the deployment is executed." + }, + { + "value": "Deploy", + "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource may or may not change." + }, + { + "value": "NoChange", + "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will not change." + }, + { + "value": "Modify", + "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will change." + }, + { + "value": "Unsupported", + "description": "The resource is not supported by What-If." + } + ] + } + }, + "unsupportedReason": { + "type": "string", + "description": "The explanation about why the resource is unsupported by What-If." + }, + "before": { + "type": "object", + "description": "The snapshot of the resource before the deployment is executed." + }, + "after": { + "type": "object", + "description": "The predicted snapshot of the resource after the deployment is executed." + }, + "delta": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfPropertyChange" + }, + "description": "The predicted changes to resource properties." + } + } + }, + "WhatIfOperationProperties": { + "description": "Deployment operation properties.", + "properties": { + "changes": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfChange" + }, + "description": "List of resource changes predicted by What-If operation." + } + } + }, + "WhatIfOperationResult": { + "description": "Result of the What-If operation. Contains a list of predicted changes and a URL link to get to the next set of results.", + "properties": { + "status": { + "type": "string", + "description": "Status of the What-If operation." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/WhatIfOperationProperties", + "description": "What-If operation properties." + }, + "error": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "Error when What-If operation fails." + } + } + }, + "Tags": { + "description": "A dictionary of name and value pairs.", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "The tag value." + } + } + } + }, + "TagsPatchResource": { + "type": "object", + "description": "Wrapper resource for tags patch API request only.", + "properties": { + "operation": { + "type": "string", + "description": "The operation type for the patch API.", + "enum": [ + "Replace", + "Merge", + "Delete" + ], + "x-ms-enum": { + "name": "tagsPatchOperation", + "modelAsString": true, + "values": [ + { + "value": "Replace", + "description": "The 'replace' option replaces the entire set of existing tags with a new set." + }, + { + "value": "Merge", + "description": "The 'merge' option allows adding tags with new names and updating the values of tags with existing names." + }, + { + "value": "Delete", + "description": "The 'delete' option allows selectively deleting tags based on given names or name/value pairs." + } + ] + } + }, + "properties": { + "$ref": "#/definitions/Tags", + "description": "The set of tags." + } + } + }, + "TagsResource": { + "type": "object", + "description": "Wrapper resource for tags API requests and responses.", + "required": [ + "properties" + ], + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ID of the tags wrapper resource." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the tags wrapper resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of the tags wrapper resource." + }, + "properties": { + "$ref": "#/definitions/Tags", + "description": "The set of tags." + } + }, + "x-ms-azure-resource": true + }, + "StatusMessage": { + "type": "object", + "description": "Operation status message object.", + "properties": { + "status": { + "type": "string", + "description": "Status of the deployment operation." + }, + "error": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The error reported by the operation." + } + } + }, + "ExpressionEvaluationOptions": { + "properties": { + "scope": { + "type": "string", + "description": "The scope to be used for evaluation of parameters, variables and functions in a nested template.", + "enum": [ + "NotSpecified", + "Outer", + "Inner" + ], + "x-ms-enum": { + "name": "ExpressionEvaluationOptionsScopeType", + "modelAsString": true + } + } + }, + "description": "Specifies whether template expressions are evaluated within the scope of the parent template or nested template." + } + }, + "parameters": { + "ScopeParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The resource scope.", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, + "GroupIdParameter": { + "name": "groupId", + "in": "path", + "required": true, + "type": "string", + "description": "The management group ID.", + "x-ms-parameter-location": "method", + "minLength": 1, + "maxLength": 90 + }, + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the target subscription." + }, + "DeploymentNameParameter": { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[-\\w\\._\\(\\)]+$", + "x-ms-parameter-location": "method", + "minLength": 1, + "maxLength": 64, + "description": "The name of the deployment." + }, + "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/Microsoft.Resources/stable/2021-01-01/subscriptions.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/subscriptions.json new file mode 100644 index 000000000000..f1a2f58dbb72 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/subscriptions.json @@ -0,0 +1,747 @@ +{ + "swagger": "2.0", + "info": { + "title": "SubscriptionClient", + "version": "2021-01-01", + "description": "All resource groups and resources exist within subscriptions. These operation enable you get information about your subscriptions and tenants. A tenant is a dedicated instance of Azure Active Directory (Azure AD) for your organization." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/providers/Microsoft.Resources/operations": { + "get": { + "tags": [ + "Operations" + ], + "operationId": "Operations_List", + "description": "Lists all of the available Microsoft.Resources REST API operations.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/locations": { + "get": { + "tags": [ + "Subscriptions" + ], + "operationId": "Subscriptions_ListLocations", + "summary": "Gets all available geo-locations.", + "description": "This operation provides all the locations that are available for resource providers; however, each resource provider may support a subset of this list.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "includeExtendedLocations", + "in": "query", + "required": false, + "type": "boolean", + "description": "Whether to include extended locations.", + "x-ms-parameter-location": "method" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of locations.", + "schema": { + "$ref": "#/definitions/LocationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "GetLocationsWithASubscriptionId": { + "$ref": "./examples/GetLocations.json" + }, + "GetLocationsWithExtendedLocations": { + "$ref": "./examples/GetLocationsWithExtendedLocations.json" + } + } + } + }, + "/subscriptions/{subscriptionId}": { + "get": { + "tags": [ + "Subscriptions" + ], + "operationId": "Subscriptions_Get", + "description": "Gets details about a specified subscription.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the subscription.", + "schema": { + "$ref": "#/definitions/Subscription" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetASingleSubscription": { + "$ref": "./examples/GetSubscription.json" + } + } + } + }, + "/subscriptions": { + "get": { + "tags": [ + "Subscriptions" + ], + "operationId": "Subscriptions_List", + "description": "Gets all subscriptions for a tenant.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of subscriptions.", + "schema": { + "$ref": "#/definitions/SubscriptionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetAllSubscriptions": { + "$ref": "./examples/GetSubscriptions.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/tenants": { + "get": { + "tags": [ + "Tenants" + ], + "operationId": "Tenants_List", + "description": "Gets the tenants for your account.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of tenants.", + "schema": { + "$ref": "#/definitions/TenantListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetAllTenants": { + "$ref": "./examples/GetTenants.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Resources/checkResourceName": { + "post": { + "tags": [ + "Tenants" + ], + "operationId": "checkResourceName", + "description": "A resource name is valid if it is not a reserved word, does not contains a reserved word and does not start with a reserved word", + "summary": "Checks resource name validity", + "consumes": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/CheckResourceNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns status as allowed or not.", + "schema": { + "$ref": "#/definitions/CheckResourceNameResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "CheckValidityForAResourceName": { + "$ref": "./examples/CheckResourceName.json" + } + } + } + } + }, + "definitions": { + "PairedRegion": { + "description": "Information regarding paired region.", + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the paired region." + }, + "id": { + "readOnly": true, + "type": "string", + "description": "The fully qualified ID of the location. For example, /subscriptions/00000000-0000-0000-0000-000000000000/locations/westus." + }, + "subscriptionId": { + "readOnly": true, + "type": "string", + "description": "The subscription ID." + } + } + }, + "LocationMetadata": { + "description": "Location metadata information", + "properties": { + "regionType": { + "readOnly": true, + "type": "string", + "description": "The type of the region.", + "enum": [ + "Physical", + "Logical" + ], + "x-ms-enum": { + "name": "RegionType", + "modelAsString": true + } + }, + "regionCategory": { + "readOnly": true, + "type": "string", + "description": "The category of the region.", + "enum": [ + "Recommended", + "Extended", + "Other" + ], + "x-ms-enum": { + "name": "RegionCategory", + "modelAsString": true + } + }, + "geographyGroup": { + "readOnly": true, + "type": "string", + "description": "The geography group of the location." + }, + "longitude": { + "readOnly": true, + "type": "string", + "description": "The longitude of the location." + }, + "latitude": { + "readOnly": true, + "type": "string", + "description": "The latitude of the location." + }, + "physicalLocation": { + "readOnly": true, + "type": "string", + "description": "The physical location of the Azure location." + }, + "pairedRegion": { + "type": "array", + "description": "The regions paired to this region.", + "items": { + "$ref": "#/definitions/PairedRegion" + } + }, + "homeLocation": { + "readOnly": true, + "type": "string", + "description": "The home location of an edge zone." + } + } + }, + "Location": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The fully qualified ID of the location. For example, /subscriptions/00000000-0000-0000-0000-000000000000/locations/westus." + }, + "subscriptionId": { + "readOnly": true, + "type": "string", + "description": "The subscription ID." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The location name." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The location type.", + "enum": [ + "Region", + "EdgeZone" + ], + "x-ms-enum": { + "name": "LocationType", + "modelAsString": false + } + }, + "displayName": { + "readOnly": true, + "type": "string", + "description": "The display name of the location." + }, + "regionalDisplayName": { + "readOnly": true, + "type": "string", + "description": "The display name of the location and its region." + }, + "metadata": { + "description": "Metadata of the location, such as lat/long, paired region, and others.", + "$ref": "#/definitions/LocationMetadata" + } + }, + "description": "Location information." + }, + "LocationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Location" + }, + "description": "An array of locations." + } + }, + "description": "Location list operation response." + }, + "Subscription": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The fully qualified ID for the subscription. For example, /subscriptions/00000000-0000-0000-0000-000000000000." + }, + "subscriptionId": { + "readOnly": true, + "type": "string", + "description": "The subscription ID." + }, + "displayName": { + "readOnly": true, + "type": "string", + "description": "The subscription display name." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The subscription tenant ID." + }, + "state": { + "readOnly": true, + "type": "string", + "description": "The subscription state. Possible values are Enabled, Warned, PastDue, Disabled, and Deleted.", + "enum": [ + "Enabled", + "Warned", + "PastDue", + "Disabled", + "Deleted" + ], + "x-ms-enum": { + "name": "SubscriptionState", + "modelAsString": false + } + }, + "subscriptionPolicies": { + "$ref": "#/definitions/SubscriptionPolicies", + "description": "The subscription policies." + }, + "authorizationSource": { + "type": "string", + "description": "The authorization source of the request. Valid values are one or more combinations of Legacy, RoleBased, Bypassed, Direct and Management. For example, 'Legacy, RoleBased'." + }, + "managedByTenants": { + "type": "array", + "items": { + "$ref": "#/definitions/ManagedByTenant" + }, + "description": "An array containing the tenants managing the subscription." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "The additional properties. " + }, + "description": "The tags attached to the subscription." + } + }, + "description": "Subscription information." + }, + "SubscriptionPolicies": { + "properties": { + "locationPlacementId": { + "readOnly": true, + "type": "string", + "description": "The subscription location placement ID. The ID indicates which regions are visible for a subscription. For example, a subscription with a location placement Id of Public_2014-09-01 has access to Azure public regions." + }, + "quotaId": { + "readOnly": true, + "type": "string", + "description": "The subscription quota ID." + }, + "spendingLimit": { + "readOnly": true, + "type": "string", + "description": "The subscription spending limit.", + "enum": [ + "On", + "Off", + "CurrentPeriodOff" + ], + "x-ms-enum": { + "name": "spendingLimit", + "modelAsString": false + } + } + }, + "description": "Subscription policies." + }, + "ManagedByTenant": { + "properties": { + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant ID of the managing tenant. This is a GUID." + } + }, + "description": "Information about a tenant managing the subscription." + }, + "SubscriptionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Subscription" + }, + "description": "An array of subscriptions." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "required": [ + "nextLink" + ], + "description": "Subscription list operation response." + }, + "TenantIdDescription": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The fully qualified ID of the tenant. For example, /tenants/00000000-0000-0000-0000-000000000000." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant ID. For example, 00000000-0000-0000-0000-000000000000." + }, + "tenantCategory": { + "readOnly": true, + "type": "string", + "description": "Category of the tenant.", + "enum": [ + "Home", + "ProjectedBy", + "ManagedBy" + ], + "x-ms-enum": { + "name": "TenantCategory", + "modelAsString": false + } + }, + "country": { + "readOnly": true, + "type": "string", + "description": "Country/region name of the address for the tenant." + }, + "countryCode": { + "readOnly": true, + "type": "string", + "description": "Country/region abbreviation for the tenant." + }, + "displayName": { + "readOnly": true, + "type": "string", + "description": "The display name of the tenant." + }, + "domains": { + "readOnly": true, + "type": "array", + "items": { + "type": "string", + "description": "The domain name for a tenant." + }, + "description": "The list of domains for the tenant." + }, + "defaultDomain": { + "readOnly": true, + "type": "string", + "description": "The default domain for the tenant." + }, + "tenantType": { + "readOnly": true, + "type": "string", + "description": "The tenant type. Only available for 'Home' tenant category." + }, + "tenantBrandingLogoUrl": { + "readOnly": true, + "type": "string", + "description": "The tenant's branding logo URL. Only available for 'Home' tenant category." + } + }, + "description": "Tenant Id information." + }, + "TenantListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/TenantIdDescription" + }, + "description": "An array of tenants." + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "required": [ + "nextLink" + ], + "description": "Tenant Ids information." + }, + "ResourceName": { + "description": "Name and Type of the Resource", + "required": [ + "name", + "type" + ], + "properties": { + "name": { + "description": "Name of the resource", + "type": "string" + }, + "type": { + "type": "string", + "description": "The type of the resource" + } + } + }, + "CheckResourceNameResult": { + "properties": { + "name": { + "description": "Name of Resource", + "type": "string" + }, + "type": { + "description": "Type of Resource", + "type": "string" + }, + "status": { + "description": "Is the resource name Allowed or Reserved", + "type": "string", + "enum": [ + "Allowed", + "Reserved" + ], + "x-ms-enum": { + "name": "ResourceNameStatus", + "modelAsString": true + } + } + }, + "description": "Resource Name valid if not a reserved word, does not contain a reserved word and does not start with a reserved word" + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "An error response for a resource management request." + }, + "Operation": { + "description": "Microsoft.Resources operation", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}", + "type": "string" + }, + "display": { + "description": "The object that represents the operation.", + "properties": { + "provider": { + "description": "Service provider: Microsoft.Resources", + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed: Profile, endpoint, etc.", + "type": "string" + }, + "operation": { + "description": "Operation type: Read, write, delete, etc.", + "type": "string" + }, + "description": { + "description": "Description of the operation.", + "type": "string" + } + } + } + } + }, + "OperationListResult": { + "description": "Result of the request to list Microsoft.Resources operations. It contains a list of operations and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "description": "List of Microsoft.Resources operations." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the target subscription.", + "x-ms-parameter-location": "method" + }, + "CheckResourceNameParameter": { + "description": "Resource object with values for resource name and resource type", + "in": "body", + "name": "Resource Name Definition", + "schema": { + "$ref": "#/definitions/ResourceName" + }, + "x-ms-parameter-location": "method" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-parameter-location": "client" + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/CalculateTemplateHash.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/CalculateTemplateHash.json new file mode 100644 index 000000000000..8f0a276d19de --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/CalculateTemplateHash.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "api-version": "2021-04-01", + "template": { + "$schema": "http://schemas.management.azure.com/deploymentTemplate?api-version=2014-04-01-preview", + "contentVersion": "1.0.0.0", + "parameters": { + "string": { + "type": "string" + } + }, + "variables": { + "string": "string", + "int": 42, + "bool": true, + "array": [ + 1, + 2, + 3, + 4 + ], + "object": { + "object": { + "vmSize": "Large", + "location": "West US" + } + } + }, + "resources": [], + "outputs": { + "string": { + "type": "string", + "value": "myvalue" + } + } + } + }, + "responses": { + "200": { + "body": { + "minifiedTemplate": "{\"$SCHEMA\":\"HTTP://SCHEMAS.MANAGEMENT.AZURE.COM/DEPLOYMENTTEMPLATE?API-VERSION=2014-04-01-PREVIEW\",\"CONTENTVERSION\":\"1.0.0.0\",\"PARAMETERS\":{\"STRING\":{\"TYPE\":\"STRING\"}},\"VARIABLES\":{\"STRING\":\"STRING\",\"INT\":42,\"BOOL\":TRUE,\"ARRAY\":[1,2,3,4],\"OBJECT\":{\"OBJECT\":{\"VMSIZE\":\"LARGE\",\"LOCATION\":\"WEST US\"}}},\"RESOURCES\":[],\"OUTPUTS\":{\"STRING\":{\"TYPE\":\"STRING\",\"VALUE\":\"MYVALUE\"}}}", + "templateHash": "695440707931307747" + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/CreateResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/CreateResourceGroup.json new file mode 100644 index 000000000000..462b77d8dcf8 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/CreateResourceGroup.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "my-resource-group", + "api-version": "2021-04-01", + "parameters": { + "location": "eastus" + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/my-resource-group", + "name": "my-resource-group", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/my-resource-group", + "name": "my-resource-group", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/ExportResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/ExportResourceGroup.json new file mode 100644 index 000000000000..27ac587be139 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/ExportResourceGroup.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "my-resource-group", + "api-version": "2021-04-01", + "parameters": { + "resources": [ + "*" + ], + "options": "IncludeParameterDefaultValue,IncludeComments" + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/c9bbccf4-e16a-4eb7-befb-2e2e5195c347?api-version=2018-08-01" + } + }, + "200": { + "body": { + "template": { + "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#", + "contentVersion": "1.0.0.0", + "parameters": { + "myResourceType_myFirstResource_name": { + "defaultValue": "myFirstResource", + "type": "String" + }, + "myResourceType_mySecondResource_name": { + "defaultValue": "mySecondResource", + "type": "String" + }, + "myResourceType_myFirstResource_secret": { + "defaultValue": null, + "type": "SecureString" + } + }, + "variables": {}, + "resources": [ + { + "type": "My.RP/myResourceType", + "apiVersion": "2019-01-01", + "name": "[parameters('myResourceType_myFirstResource_name')]", + "location": "West US", + "properties": { + "secret": "[parameters('myResourceType_myFirstResource_secret')]" + } + }, + { + "type": "My.RP/myResourceType", + "apiVersion": "2019-01-01", + "name": "[parameters('myResourceType_mySecondResource_name')]", + "location": "West US", + "properties": { + "customProperty": "hello!" + } + } + ] + }, + "error": { + "code": "ExportTemplateCompletedWithErrors", + "message": "Export template operation completed with errors. Some resources were not exported. Please see details for more information.", + "details": [] + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/ExportResourceGroupWithFiltering.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/ExportResourceGroupWithFiltering.json new file mode 100644 index 000000000000..3e6459f4befb --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/ExportResourceGroupWithFiltering.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "my-resource-group", + "api-version": "2021-04-01", + "parameters": { + "resources": [ + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/my-resource-group/providers/My.RP/myResourceType/myFirstResource" + ], + "options": "SkipResourceNameParameterization" + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/c9bbccf4-e16a-4eb7-befb-2e2e5195c347?api-version=2018-08-01" + } + }, + "200": { + "body": { + "template": { + "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#", + "contentVersion": "1.0.0.0", + "parameters": { + "myResourceType_myFirstResource_secret": { + "defaultValue": null, + "type": "SecureString" + } + }, + "variables": {}, + "resources": [ + { + "type": "My.RP/myResourceType", + "apiVersion": "2019-01-01", + "name": "myFirstResource", + "location": "West US", + "properties": { + "secret": "[parameters('myResourceType_myFirstResource_secret')]" + } + } + ] + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/ForceDeleteVMsAndVMSSInResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/ForceDeleteVMsAndVMSSInResourceGroup.json new file mode 100644 index 000000000000..2dba850f1157 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/ForceDeleteVMsAndVMSSInResourceGroup.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "my-resource-group", + "forceDeletionTypes": "Microsoft.Compute/virtualMachines,Microsoft.Compute/virtualMachineScaleSets", + "api-version": "2020-06-01" + }, + "responses": { + "202": { + "description": "Accepted" + }, + "200": { + "description": "OK" + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/ForceDeleteVMsInResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/ForceDeleteVMsInResourceGroup.json new file mode 100644 index 000000000000..ba2a47410f91 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/ForceDeleteVMsInResourceGroup.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "my-resource-group", + "forceDeletionTypes": "Microsoft.Compute/virtualMachines", + "api-version": "2020-06-01" + }, + "responses": { + "202": { + "description": "Accepted" + }, + "200": { + "description": "OK" + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/GetNamedProviderAtTenant.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/GetNamedProviderAtTenant.json new file mode 100644 index 000000000000..46acf93be8b4 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/GetNamedProviderAtTenant.json @@ -0,0 +1,253 @@ +{ + "parameters": { + "$expand": "resourceTypes/aliases", + "resourceProviderNamespace": "Microsoft.Storage", + "api-version": "2021-04-01" + }, + "responses": { + "200": { + "body": { + "namespace": "Microsoft.Storage", + "resourceTypes": [ + { + "resourceType": "storageAccounts", + "locations": [ + "East US", + "East US 2", + "East US 2 (Stage)", + "West US", + "West Europe", + "East Asia", + "Southeast Asia", + "Japan East", + "Japan West", + "North Central US", + "South Central US", + "Central US", + "North Europe", + "Brazil South", + "Australia East", + "Australia Southeast", + "South India", + "Central India", + "West India", + "Canada East", + "Canada Central", + "West US 2", + "West Central US", + "UK South", + "UK West", + "Korea Central", + "Korea South", + "East US 2 EUAP", + "Central US EUAP", + "France Central", + "France South", + "Australia Central", + "Australia Central 2", + "South Africa West", + "South Africa North", + "UAE Central", + "UAE North", + "Switzerland North", + "Switzerland West", + "Germany West Central", + "Germany North", + "Norway East", + "Norway West", + "South Central US STG", + "Brazil Southeast" + ], + "apiVersions": [ + "2019-06-01", + "2019-04-01", + "2018-11-01", + "2018-07-01", + "2018-03-01-preview", + "2018-02-01", + "2017-10-01", + "2017-06-01", + "2016-12-01", + "2016-05-01", + "2016-01-01", + "2015-06-15", + "2015-05-01-preview" + ], + "defaultApiVersion": "2019-06-01", + "apiProfiles": [ + { + "profileVersion": "2019-03-01-hybrid", + "apiVersion": "2017-10-01" + }, + { + "profileVersion": "2017-03-09-profile", + "apiVersion": "2016-01-01" + }, + { + "profileVersion": "2018-03-01-hybrid", + "apiVersion": "2016-01-01" + }, + { + "profileVersion": "2018-06-01-profile", + "apiVersion": "2017-10-01" + } + ], + "aliases": [ + { + "name": "Microsoft.Storage/storageAccounts/accountType", + "paths": [ + { + "path": "properties.accountType", + "apiVersions": [ + "2015-06-15", + "2015-05-01-preview" + ] + }, + { + "path": "sku.name", + "apiVersions": [ + "2018-11-01", + "2018-11-09", + "2018-07-01", + "2018-03-01-Preview", + "2018-02-01", + "2017-10-01", + "2017-06-01", + "2016-12-01", + "2016-05-01", + "2016-01-01" + ] + } + ], + "defaultPath": "sku.name" + }, + { + "name": "Microsoft.Storage/storageAccounts/sku.name", + "paths": [ + { + "path": "properties.accountType", + "apiVersions": [ + "2015-06-15", + "2015-05-01-preview" + ] + }, + { + "path": "sku.name", + "apiVersions": [ + "2018-11-01", + "2018-11-09", + "2018-07-01", + "2018-03-01-Preview", + "2018-02-01", + "2017-10-01", + "2017-06-01", + "2016-12-01", + "2016-05-01", + "2016-01-01" + ] + } + ], + "defaultPath": "sku.name" + }, + { + "name": "Microsoft.Storage/storageAccounts/accessTier", + "paths": [ + { + "path": "properties.accessTier", + "apiVersions": [ + "2018-11-01", + "2018-11-09", + "2018-07-01", + "2018-03-01-Preview", + "2018-02-01", + "2017-10-01", + "2017-06-01", + "2016-12-01", + "2016-05-01", + "2016-01-01", + "2015-06-15", + "2015-05-01-preview" + ] + } + ], + "defaultPath": "properties.accessTier" + }, + { + "name": "Microsoft.Storage/storageAccounts/enableBlobEncryption", + "paths": [ + { + "path": "properties.encryption.services.blob.enabled", + "apiVersions": [ + "2018-11-01", + "2018-11-09", + "2018-07-01", + "2018-03-01-Preview", + "2018-02-01", + "2017-10-01", + "2017-06-01", + "2016-12-01", + "2016-05-01", + "2016-01-01", + "2015-06-15", + "2015-05-01-preview" + ] + } + ], + "defaultPath": "properties.encryption.services.blob.enabled" + }, + { + "name": "Microsoft.Storage/storageAccounts/enableFileEncryption", + "paths": [ + { + "path": "properties.encryption.services.file.enabled", + "apiVersions": [ + "2018-11-01", + "2018-11-09", + "2018-07-01", + "2018-03-01-Preview", + "2018-02-01", + "2017-10-01", + "2017-06-01", + "2016-12-01", + "2016-05-01", + "2016-01-01", + "2015-06-15", + "2015-05-01-preview" + ] + } + ], + "defaultPath": "properties.encryption.services.file.enabled" + }, + { + "name": "Microsoft.Storage/storageAccounts/supportsHttpsTrafficOnly", + "paths": [ + { + "path": "properties.supportsHttpsTrafficOnly", + "apiVersions": [ + "2018-11-09", + "2018-03-01-Preview", + "2016-05-01", + "2016-01-01", + "2015-06-15", + "2015-05-01-preview" + ], + "metadata": { + "type": "NotSpecified", + "attributes": "None" + } + } + ], + "defaultPath": "properties.supportsHttpsTrafficOnly", + "defaultMetadata": { + "type": "Boolean", + "attributes": "Modifiable" + } + } + ], + "capabilities": "SupportsTags, SupportsLocation" + } + ] + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/GetProvider.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/GetProvider.json new file mode 100644 index 000000000000..75f9efba4024 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/GetProvider.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceProviderNamespace": "Microsoft.TestRP1", + "api-version": "2021-04-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.TestRP1", + "namespace": "Microsoft.TestRP1", + "registrationState": "Registering", + "registrationPolicy": "RegistrationRequired", + "resourceTypes": [ + { + "resourceType": "TestResourceType", + "locations": [ + "West US" + ], + "apiVersions": [ + "2018-01-01", + "2015-05-01" + ], + "locationMappings": [ + { + "location": "West US", + "type": "EdgeZone", + "extendedLocations": [ + "LosAngeles", + "LosAngeles2" + ] + } + ], + "capabilities": "CrossResourceGroupResourceMove, CrossSubscriptionResourceMove, SupportsTags, SupportsLocation" + }, + { + "resourceType": "TestResourceTypeSibling", + "locations": [ + "West US" + ], + "apiVersions": [ + "2018-01-01", + "2015-05-01" + ], + "capabilities": "CrossResourceGroupResourceMove, CrossSubscriptionResourceMove, SupportsTags, SupportsLocation" + } + ] + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/GetProviderPermissions.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/GetProviderPermissions.json new file mode 100644 index 000000000000..64d7b405d8c2 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/GetProviderPermissions.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceProviderNamespace": "Microsoft.TestRP", + "api-version": "2021-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "applicationId": "00000000-0000-0000-0000-000000000000", + "roleDefinition": { + "id": "00000000000000000000000000000000", + "name": "Contoso service role", + "isServiceRole": true, + "permissions": [ + { + "actions": [ + "Microsoft.Contoso/*" + ], + "notActions": [], + "dataActions": [], + "notDataActions": [] + } + ], + "scopes": [ + "/" + ] + }, + "providerAuthorizationConsentState": "Consented" + } + ] + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/GetProviderResourceTypes.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/GetProviderResourceTypes.json new file mode 100644 index 000000000000..d33fed1fe799 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/GetProviderResourceTypes.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceProviderNamespace": "Microsoft.TestRP", + "api-version": "2021-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "TestResourceType", + "locations": [ + "West US" + ], + "apiVersions": [ + "2018-01-01", + "2015-05-01" + ], + "locationMappings": [ + { + "location": "West US", + "type": "EdgeZone", + "extendedLocations": [ + "LosAngeles", + "LosAngeles2" + ] + } + ], + "capabilities": "CrossResourceGroupResourceMove, CrossSubscriptionResourceMove, SupportsTags, SupportsLocation" + }, + { + "resourceType": "TestResourceTypeSibling", + "locations": [ + "West US" + ], + "apiVersions": [ + "2018-01-01", + "2015-05-01" + ], + "capabilities": "CrossResourceGroupResourceMove, CrossSubscriptionResourceMove, SupportsTags, SupportsLocation" + } + ] + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/GetProviders.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/GetProviders.json new file mode 100644 index 000000000000..a885383c54dc --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/GetProviders.json @@ -0,0 +1,175 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.TestRP1", + "namespace": "Microsoft.TestRP1", + "registrationState": "Registering", + "registrationPolicy": "RegistrationRequired", + "resourceTypes": [ + { + "resourceType": "TestResourceType", + "locations": [ + "West US" + ], + "apiVersions": [ + "2018-01-01", + "2015-05-01" + ], + "locationMappings": [ + { + "location": "West US", + "type": "EdgeZone", + "extendedLocations": [ + "LosAngeles", + "LosAngeles2" + ] + } + ], + "capabilities": "CrossResourceGroupResourceMove, CrossSubscriptionResourceMove, SupportsTags, SupportsLocation" + }, + { + "resourceType": "TestResourceTypeSibling", + "locations": [ + "West US" + ], + "apiVersions": [ + "2018-01-01", + "2015-05-01" + ], + "capabilities": "CrossResourceGroupResourceMove, CrossSubscriptionResourceMove, SupportsTags, SupportsLocation" + } + ] + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Resources", + "namespace": "Microsoft.Resources", + "registrationState": "Registered", + "registrationPolicy": "RegistrationFree", + "resourceTypes": [ + { + "resourceType": "subscriptions", + "locations": [ + "eastus", + "eastus2", + "westus" + ], + "apiVersions": [ + "2016-09-01", + "2014-04-01-preview" + ], + "aliases": [], + "capabilities": "CrossResourceGroupResourceMove, CrossSubscriptionResourceMove, SupportsTags, SupportsLocation" + }, + { + "resourceType": "resourceGroups", + "locations": [ + "centralus", + "eastasia", + "southeastasia" + ], + "apiVersions": [ + "2016-09-01", + "2014-04-01-preview" + ], + "aliases": [], + "capabilities": "CrossResourceGroupResourceMove, CrossSubscriptionResourceMove, SupportsTags, SupportsLocation" + }, + { + "resourceType": "subscriptions/resourceGroups", + "locations": [ + "eastus", + "eastus2", + "westus" + ], + "apiVersions": [ + "2016-09-01", + "2014-04-01-preview" + ], + "aliases": [], + "capabilities": "CrossResourceGroupResourceMove, CrossSubscriptionResourceMove, SupportsTags, SupportsLocation" + }, + { + "resourceType": "bulkDelete", + "locations": [ + "centralus", + "eastasia" + ], + "apiVersions": [ + "2014-04-01-preview" + ], + "aliases": [], + "capabilities": "CrossResourceGroupResourceMove, CrossSubscriptionResourceMove, SupportsTags, SupportsLocation" + }, + { + "resourceType": "deployments", + "locations": [], + "apiVersions": [ + "2017-08-01", + "2017-06-01" + ], + "aliases": [], + "capabilities": "SupportsTags" + }, + { + "resourceType": "tags", + "locations": [ + "DevFabric" + ], + "apiVersions": [], + "aliases": [], + "capabilities": "SupportsExtension" + } + ] + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.TestRP2", + "namespace": "Microsoft.TestRP2", + "registrationState": "NotRegistered", + "registrationPolicy": "RegistrationRequired", + "resourceTypes": [ + { + "resourceType": "TestResourceType", + "locations": [ + "West US" + ], + "apiVersions": [ + "2018-01-01", + "2015-05-01" + ], + "locationMappings": [ + { + "location": "West US", + "type": "EdgeZone", + "extendedLocations": [ + "LosAngeles", + "LosAngeles2" + ] + } + ], + "capabilities": "CrossResourceGroupResourceMove, CrossSubscriptionResourceMove, SupportsTags, SupportsLocation" + }, + { + "resourceType": "TestResourceTypeSibling", + "locations": [ + "West US" + ], + "apiVersions": [ + "2018-01-01", + "2015-05-01" + ], + "capabilities": "CrossResourceGroupResourceMove, CrossSubscriptionResourceMove, SupportsTags, SupportsLocation" + } + ] + } + ] + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/GetTagsResource.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/GetTagsResource.json new file mode 100644 index 000000000000..2d8862abb511 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/GetTagsResource.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "scope": "subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/my-resource-group/providers/myPRNameSpace/VM/myVm", + "api-version": "2021-04-01" + }, + "responses": { + "200": { + "body": { + "properties": { + "tags": { + "tagKey1": "tag-value-1", + "tagKey2": "tag-value-2" + } + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/GetTagsSubscription.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/GetTagsSubscription.json new file mode 100644 index 000000000000..ca145ccf6597 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/GetTagsSubscription.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "api-version": "2021-04-01" + }, + "responses": { + "200": { + "body": { + "properties": { + "tags": { + "tagKey1": "tag-value-1", + "tagKey2": "tag-value-2" + } + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PostDeploymentWhatIfOnManagementGroup.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PostDeploymentWhatIfOnManagementGroup.json new file mode 100644 index 000000000000..c3bb7da8a1cb --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PostDeploymentWhatIfOnManagementGroup.json @@ -0,0 +1,87 @@ +{ + "parameters": { + "groupId": "myManagementGruop", + "deploymentName": "exampleDeploymentName", + "api-version": "2021-04-01", + "parameters": { + "location": "eastus", + "properties": { + "templateLink": "https://example.com/exampleTemplate.json", + "parameters": {}, + "mode": "Incremental" + } + } + }, + "responses": { + "200": { + "body": { + "status": "Succeeded", + "properties": { + "changes": [ + { + "resourceId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/myPolicyAssignment", + "changeType": "Modify", + "before": { + "apiVersion": "2019-06-01", + "id": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/myPolicyAssignment", + "type": "Microsoft.Authorization/policyAssignments", + "name": "myPolicyAssignment", + "location": "westus2", + "properties": { + "policyDefinitionId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/myPolicyDefinition", + "scope": "/subscriptions/00000000-0000-0000-0000-000000000001", + "enforcementMode": "Default" + } + }, + "after": { + "resourceId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/myPolicyAssignment", + "changeType": "Modify", + "before": { + "apiVersion": "2019-06-01", + "id": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/myPolicyAssignment", + "type": "Microsoft.Authorization/policyAssignments", + "name": "myPolicyAssignment", + "location": "westus2", + "properties": { + "policyDefinitionId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/myPolicyDefinition", + "scope": "/subscriptions/00000000-0000-0000-0000-000000000001", + "enforcementMode": "DoNotEnforce" + } + }, + "delta": [ + { + "path": "properties.enforcementMode", + "propertyChangeType": "Modify", + "before": "Default", + "after": "DoNotEnforce" + } + ] + } + }, + { + "resourceId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/myPolicyAssignment2", + "changeType": "Create", + "after": { + "apiVersion": "2019-06-01", + "id": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/myPolicyAssignment2", + "type": "Microsoft.Authorization/policyAssignments", + "name": "myPolicyAssignment2", + "location": "westus2", + "properties": { + "policyDefinitionId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/myPolicyDefinition", + "scope": "/subscriptions/00000000-0000-0000-0000-000000000002", + "enforcementMode": "Default" + } + } + } + ] + } + } + }, + "202": { + "headers": { + "Location": "/subscriptions/4d0ca63b-7939-4c9c-afbe-5fafae501724/operationresults/ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ" + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PostDeploymentWhatIfOnResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PostDeploymentWhatIfOnResourceGroup.json new file mode 100644 index 000000000000..2be6e4b25990 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PostDeploymentWhatIfOnResourceGroup.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000001", + "resourceGroupName": "my-resource-group", + "deploymentName": "my-deployment", + "api-version": "2021-04-01", + "parameters": { + "properties": { + "templateLink": "https://example.com/exampleTemplate.json", + "parameters": {}, + "mode": "Incremental" + } + } + }, + "responses": { + "200": { + "body": { + "status": "succeeded", + "properties": { + "changes": [ + { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myExistingIdentity", + "changeType": "Modify", + "before": { + "apiVersion": "2018-11-30", + "id": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myExistingIdentity", + "type": "Microsoft.ManagedIdentity/userAssignedIdentities", + "name": "myExistingIdentity", + "location": "westus2" + }, + "after": { + "apiVersion": "2018-11-30", + "id": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myExistingIdentity", + "type": "Microsoft.ManagedIdentity/userAssignedIdentities", + "name": "myExistingIdentity", + "location": "westus2", + "tags": { + "myNewTag": "my tag value" + } + }, + "delta": [ + { + "path": "tags.myNewTag", + "propertyChangeType": "Create", + "after": "my tag value" + } + ] + }, + { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myNewIdentity", + "changeType": "Create", + "after": { + "apiVersion": "2018-11-30", + "id": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myNewIdentity", + "type": "Microsoft.ManagedIdentity/userAssignedIdentities", + "name": "myNewIdentity", + "location": "eastus", + "tags": { + "myOtherNewTag": "another new tag value" + } + } + } + ] + } + } + }, + "202": { + "headers": { + "Location": "/subscriptions/00000000-0000-0000-0000-000000000000/ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ" + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PostDeploymentWhatIfOnSubscription.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PostDeploymentWhatIfOnSubscription.json new file mode 100644 index 000000000000..e9a700a1967e --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PostDeploymentWhatIfOnSubscription.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000001", + "deploymentName": "my-deployment", + "api-version": "2021-04-01", + "parameters": { + "location": "westus", + "properties": { + "templateLink": "https://example.com/exampleTemplate.json", + "parameters": {}, + "mode": "Incremental" + } + } + }, + "responses": { + "200": { + "body": { + "status": "succeeded", + "properties": { + "changes": [ + { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myExistingIdentity", + "changeType": "Modify", + "before": { + "apiVersion": "2018-11-30", + "id": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myExistingIdentity", + "type": "Microsoft.ManagedIdentity/userAssignedIdentities", + "name": "myExistingIdentity", + "location": "westus2" + }, + "after": { + "apiVersion": "2018-11-30", + "id": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myExistingIdentity", + "type": "Microsoft.ManagedIdentity/userAssignedIdentities", + "name": "myExistingIdentity", + "location": "westus2", + "tags": { + "myNewTag": "my tag value" + } + }, + "delta": [ + { + "path": "tags.myNewTag", + "propertyChangeType": "Create", + "after": "my tag value" + } + ] + }, + { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myNewIdentity", + "changeType": "Create", + "after": { + "apiVersion": "2018-11-30", + "id": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myNewIdentity", + "type": "Microsoft.ManagedIdentity/userAssignedIdentities", + "name": "myNewIdentity", + "location": "eastus", + "tags": { + "myOtherNewTag": "another new tag value" + } + } + }, + { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group2", + "changeType": "Create", + "after": { + "apiVersion": "2019-03-01", + "id": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group2", + "type": "Microsoft.Resources/resourceGroups", + "name": "my-resource-group2", + "location": "{location3}" + } + } + ] + } + } + }, + "202": { + "headers": { + "Location": "/subscriptions/00000000-0000-0000-0000-000000000000/ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ" + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PostDeploymentWhatIfOnTenant.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PostDeploymentWhatIfOnTenant.json new file mode 100644 index 000000000000..1f3575c48471 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PostDeploymentWhatIfOnTenant.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "deploymentName": "exampleDeploymentName", + "api-version": "2021-04-01", + "parameters": { + "location": "eastus", + "properties": { + "templateLink": "https://example.com/exampleTemplate.json", + "parameters": {}, + "mode": "Incremental" + } + } + }, + "responses": { + "200": { + "body": { + "status": "Succeeded", + "properties": { + "changes": [ + { + "resourceId": "/providers/Microsoft.Management/managementGroups/myManagementGroup", + "changeType": "Create", + "after": { + "id": "/providers/Microsoft.Management/managementGroups/myManagementGroup", + "apiVersion": "2019-11-01", + "type": "Microsoft.Management/managementGroups", + "name": "myManagementGroup" + } + } + ] + } + } + }, + "202": { + "headers": { + "Location": "/subscriptions/4d0ca63b-7939-4c9c-afbe-5fafae501724/operationresults/ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ" + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PutDeploymentAtManagementGroup.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PutDeploymentAtManagementGroup.json new file mode 100644 index 000000000000..b2464102cd98 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PutDeploymentAtManagementGroup.json @@ -0,0 +1,139 @@ +{ + "parameters": { + "groupId": "my-management-group-id", + "deploymentName": "my-deployment", + "api-version": "2021-04-01", + "parameters": { + "location": "eastus", + "properties": { + "templateLink": { + "uri": "https://example.com/exampleTemplate.json" + }, + "parameters": {}, + "mode": "Incremental" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Management/managementGroups/my-management-group-id/providers/Microsoft.Resources/deployments/my-deployment", + "name": "my-deployment", + "type": "Microsoft.Resources/deployments", + "location": "eastus", + "properties": { + "parameters": {}, + "mode": "Incremental", + "provisioningState": "Accepted", + "timestamp": "2019-04-24T22:52:38.7895563Z", + "duration": "PT1.2970875S", + "correlationId": "00000000-0000-0000-0000-000000000000", + "providers": [ + { + "namespace": "Microsoft.Authorization", + "resourceTypes": [ + { + "resourceType": "policyDefinitions", + "locations": [ + null + ] + }, + { + "resourceType": "policyAssignments", + "locations": [ + null + ] + } + ] + }, + { + "namespace": "Microsoft.Resources", + "resourceTypes": [ + { + "resourceType": "deployments", + "locations": [ + "eastus" + ] + } + ] + } + ], + "dependencies": [ + { + "dependsOn": [ + { + "id": "/providers/Microsoft.Management/managementGroups/my-management-group-id/providers/Microsoft.Authorization/policyDefinitions/policy-definition-name", + "resourceType": "Microsoft.Authorization/policyDefinitions", + "resourceName": "policy-definition-name" + } + ], + "id": "/providers/Microsoft.Management/managementGroups/my-management-group-id/providers/Microsoft.Authorization/policyAssignments/location-lock", + "resourceType": "Microsoft.Authorization/policyAssignments", + "resourceName": "location-lock" + } + ] + } + } + }, + "201": { + "body": { + "id": "/providers/Microsoft.Management/managementGroups/my-management-group-id/providers/Microsoft.Resources/deployments/my-deployment", + "name": "my-deployment", + "type": "Microsoft.Resources/deployments", + "location": "eastus", + "properties": { + "parameters": {}, + "mode": "Incremental", + "provisioningState": "Accepted", + "timestamp": "2019-04-24T22:52:38.7895563Z", + "duration": "PT1.2970875S", + "correlationId": "00000000-0000-0000-0000-000000000000", + "providers": [ + { + "namespace": "Microsoft.Authorization", + "resourceTypes": [ + { + "resourceType": "policyDefinitions", + "locations": [ + null + ] + }, + { + "resourceType": "policyAssignments", + "locations": [ + null + ] + } + ] + }, + { + "namespace": "Microsoft.Resources", + "resourceTypes": [ + { + "resourceType": "deployments", + "locations": [ + "eastus" + ] + } + ] + } + ], + "dependencies": [ + { + "dependsOn": [ + { + "id": "/providers/Microsoft.Management/managementGroups/my-management-group-id/providers/Microsoft.Authorization/policyDefinitions/policy-definition-name", + "resourceType": "Microsoft.Authorization/policyDefinitions", + "resourceName": "policy-definition-name" + } + ], + "id": "/providers/Microsoft.Management/managementGroups/my-management-group-id/providers/Microsoft.Authorization/policyAssignments/location-lock", + "resourceType": "Microsoft.Authorization/policyAssignments", + "resourceName": "location-lock" + } + ] + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PutDeploymentAtScope.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PutDeploymentAtScope.json new file mode 100644 index 000000000000..a25607eccdba --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PutDeploymentAtScope.json @@ -0,0 +1,151 @@ +{ + "parameters": { + "scope": "providers/Microsoft.Management/managementGroups/my-management-group-id", + "deploymentName": "my-deployment", + "api-version": "2021-04-01", + "parameters": { + "location": "eastus", + "properties": { + "templateLink": { + "uri": "https://example.com/exampleTemplate.json" + }, + "parameters": {}, + "mode": "Incremental" + }, + "tags": { + "tagKey1": "tag-value-1", + "tagKey2": "tag-value-2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Management/managementGroups/my-management-group-id/providers/Microsoft.Resources/deployments/my-deployment", + "name": "my-deployment", + "type": "Microsoft.Resources/deployments", + "location": "eastus", + "properties": { + "parameters": {}, + "mode": "Incremental", + "provisioningState": "Accepted", + "timestamp": "2019-04-24T22:52:38.7895563Z", + "duration": "PT1.2970875S", + "correlationId": "00000000-0000-0000-0000-000000000000", + "providers": [ + { + "namespace": "Microsoft.Authorization", + "resourceTypes": [ + { + "resourceType": "policyDefinitions", + "locations": [ + null + ] + }, + { + "resourceType": "policyAssignments", + "locations": [ + null + ] + } + ] + }, + { + "namespace": "Microsoft.Resources", + "resourceTypes": [ + { + "resourceType": "deployments", + "locations": [ + "eastus" + ] + } + ] + } + ], + "dependencies": [ + { + "dependsOn": [ + { + "id": "/providers/Microsoft.Management/managementGroups/my-management-group-id/providers/Microsoft.Authorization/policyDefinitions/policy-definition-name", + "resourceType": "Microsoft.Authorization/policyDefinitions", + "resourceName": "policy-definition-name" + } + ], + "id": "/providers/Microsoft.Management/managementGroups/my-management-group-id/providers/Microsoft.Authorization/policyAssignments/location-lock", + "resourceType": "Microsoft.Authorization/policyAssignments", + "resourceName": "location-lock" + } + ] + }, + "tags": { + "tagKey1": "tag-value-1", + "tagKey2": "tag-value-2" + } + } + }, + "201": { + "body": { + "id": "/providers/Microsoft.Management/managementGroups/my-management-group-id/providers/Microsoft.Resources/deployments/my-deployment", + "name": "my-deployment", + "type": "Microsoft.Resources/deployments", + "location": "eastus", + "properties": { + "parameters": {}, + "mode": "Incremental", + "provisioningState": "Accepted", + "timestamp": "2019-04-24T22:52:38.7895563Z", + "duration": "PT1.2970875S", + "correlationId": "00000000-0000-0000-0000-000000000000", + "providers": [ + { + "namespace": "Microsoft.Authorization", + "resourceTypes": [ + { + "resourceType": "policyDefinitions", + "locations": [ + null + ] + }, + { + "resourceType": "policyAssignments", + "locations": [ + null + ] + } + ] + }, + { + "namespace": "Microsoft.Resources", + "resourceTypes": [ + { + "resourceType": "deployments", + "locations": [ + "eastus" + ] + } + ] + } + ], + "dependencies": [ + { + "dependsOn": [ + { + "id": "/providers/Microsoft.Management/managementGroups/my-management-group-id/providers/Microsoft.Authorization/policyDefinitions/policy-definition-name", + "resourceType": "Microsoft.Authorization/policyDefinitions", + "resourceName": "policy-definition-name" + } + ], + "id": "/providers/Microsoft.Management/managementGroups/my-management-group-id/providers/Microsoft.Authorization/policyAssignments/location-lock", + "resourceType": "Microsoft.Authorization/policyAssignments", + "resourceName": "location-lock" + } + ] + }, + "tags": { + "tagKey1": "tag-value-1", + "tagKey2": "tag-value-2" + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PutDeploymentAtTenant.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PutDeploymentAtTenant.json new file mode 100644 index 000000000000..6b5785eac657 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PutDeploymentAtTenant.json @@ -0,0 +1,150 @@ +{ + "parameters": { + "deploymentName": "tenant-dep01", + "api-version": "2021-04-01", + "parameters": { + "location": "eastus", + "properties": { + "templateLink": { + "uri": "https://example.com/exampleTemplate.json" + }, + "parameters": {}, + "mode": "Incremental" + }, + "tags": { + "tagKey1": "tag-value-1", + "tagKey2": "tag-value-2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Resources/deployments/tenant-dep01", + "name": "tenant-dep01", + "type": "Microsoft.Resources/deployments", + "location": "eastus", + "properties": { + "parameters": {}, + "mode": "Incremental", + "provisioningState": "Accepted", + "timestamp": "2019-04-24T22:52:38.7895563Z", + "duration": "PT1.2970875S", + "correlationId": "00000000-0000-0000-0000-000000000000", + "providers": [ + { + "namespace": "Microsoft.Authorization", + "resourceTypes": [ + { + "resourceType": "policyDefinitions", + "locations": [ + null + ] + }, + { + "resourceType": "policyAssignments", + "locations": [ + null + ] + } + ] + }, + { + "namespace": "Microsoft.Resources", + "resourceTypes": [ + { + "resourceType": "deployments", + "locations": [ + "eastus" + ] + } + ] + } + ], + "dependencies": [ + { + "dependsOn": [ + { + "id": "/providers/Microsoft.Authorization/policyDefinitions/policy-definition-name", + "resourceType": "Microsoft.Authorization/policyDefinitions", + "resourceName": "policy-definition-name" + } + ], + "id": "/providers/Microsoft.Authorization/policyAssignments/location-lock", + "resourceType": "Microsoft.Authorization/policyAssignments", + "resourceName": "location-lock" + } + ] + }, + "tags": { + "tagKey1": "tag-value-1", + "tagKey2": "tag-value-2" + } + } + }, + "201": { + "body": { + "id": "/providers/Microsoft.Resources/deployments/tenant-dep01", + "name": "tenant-dep01", + "type": "Microsoft.Resources/deployments", + "location": "eastus", + "properties": { + "parameters": {}, + "mode": "Incremental", + "provisioningState": "Accepted", + "timestamp": "2019-04-24T22:52:38.7895563Z", + "duration": "PT1.2970875S", + "correlationId": "00000000-0000-0000-0000-000000000000", + "providers": [ + { + "namespace": "Microsoft.Authorization", + "resourceTypes": [ + { + "resourceType": "policyDefinitions", + "locations": [ + null + ] + }, + { + "resourceType": "policyAssignments", + "locations": [ + null + ] + } + ] + }, + { + "namespace": "Microsoft.Resources", + "resourceTypes": [ + { + "resourceType": "deployments", + "locations": [ + "eastus" + ] + } + ] + } + ], + "dependencies": [ + { + "dependsOn": [ + { + "id": "/providers/Microsoft.Authorization/policyDefinitions/policy-definition-name", + "resourceType": "Microsoft.Authorization/policyDefinitions", + "resourceName": "policy-definition-name" + } + ], + "id": "/providers/Microsoft.Authorization/policyAssignments/location-lock", + "resourceType": "Microsoft.Authorization/policyAssignments", + "resourceName": "location-lock" + } + ] + }, + "tags": { + "tagKey1": "tag-value-1", + "tagKey2": "tag-value-2" + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PutDeploymentResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PutDeploymentResourceGroup.json new file mode 100644 index 000000000000..758bc645ba06 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PutDeploymentResourceGroup.json @@ -0,0 +1,93 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000001", + "resourceGroupName": "my-resource-group", + "deploymentName": "my-deployment", + "api-version": "2021-04-01", + "parameters": { + "properties": { + "templateLink": { + "uri": "https://example.com/exampleTemplate.json", + "queryString": "sv=2019-02-02&st=2019-04-29T22%3A18%3A26Z&se=2019-04-30T02%3A23%3A26Z&sr=b&sp=rw&sip=168.1.5.60-168.1.5.70&spr=https&sig=xxxxxxxx0xxxxxxxxxxxxx%2bxxxxxxxxxxxxxxxxxxxx%3d" + }, + "parameters": {}, + "mode": "Incremental" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group/providers/Microsoft.Resources/deployments/my-deployment", + "name": "my-deployment", + "type": "Microsoft.Resources/deployments", + "properties": { + "templateLink": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group/providers/Microsoft.Resources/TemplateSpecs/TemplateSpec-Name/versions/v1", + "contentVersion": "1.0.0.0" + }, + "templateHash": "0000000000000000000", + "parameters": {}, + "mode": "Incremental", + "provisioningState": "Succeeded", + "timestamp": "2020-06-05T01:20:01.723776Z", + "duration": "PT22.8356799S", + "correlationId": "00000000-0000-0000-0000-000000000000", + "providers": [ + { + "namespace": "Microsoft.Storage", + "resourceTypes": [ + { + "resourceType": "storageAccounts", + "locations": [ + "eastus" + ] + } + ] + } + ], + "dependencies": [], + "outputResources": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group/providers/Microsoft.Storage/storageAccounts/my-storage-account" + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group/providers/Microsoft.Resources/deployments/my-deployment", + "name": "my-deployment", + "type": "Microsoft.Resources/deployments", + "properties": { + "templateLink": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group/providers/Microsoft.Resources/TemplateSpecs/TemplateSpec-Name/versions/v1", + "contentVersion": "1.0.0.0" + }, + "templateHash": "0000000000000000000", + "parameters": {}, + "mode": "Incremental", + "provisioningState": "Accepted", + "timestamp": "2020-06-05T01:20:01.723776Z", + "duration": "PT22.8356799S", + "correlationId": "00000000-0000-0000-0000-000000000000", + "providers": [ + { + "namespace": "Microsoft.Storage", + "resourceTypes": [ + { + "resourceType": "storageAccounts", + "locations": [ + "eastus" + ] + } + ] + } + ], + "dependencies": [] + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PutDeploymentResourceGroupTemplateSpecsWithId.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PutDeploymentResourceGroupTemplateSpecsWithId.json new file mode 100644 index 000000000000..ce7596c35643 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PutDeploymentResourceGroupTemplateSpecsWithId.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000001", + "resourceGroupName": "my-resource-group", + "deploymentName": "my-deployment", + "api-version": "2021-04-01", + "parameters": { + "properties": { + "templateLink": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group/providers/Microsoft.Resources/TemplateSpecs/TemplateSpec-Name/versions/v1" + }, + "parameters": {}, + "mode": "Incremental" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group/providers/Microsoft.Resources/deployments/my-deployment", + "name": "my-deployment", + "type": "Microsoft.Resources/deployments", + "properties": { + "templateLink": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group/providers/Microsoft.Resources/TemplateSpecs/TemplateSpec-Name/versions/v1", + "contentVersion": "1.0.0.0" + }, + "templateHash": "0000000000000000000", + "parameters": {}, + "mode": "Incremental", + "provisioningState": "Succeeded", + "timestamp": "2020-06-05T01:20:01.723776Z", + "duration": "PT22.8356799S", + "correlationId": "00000000-0000-0000-0000-000000000000", + "providers": [ + { + "namespace": "Microsoft.Storage", + "resourceTypes": [ + { + "resourceType": "storageAccounts", + "locations": [ + "eastus" + ] + } + ] + } + ], + "dependencies": [], + "outputResources": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group/providers/Microsoft.Storage/storageAccounts/my-storage-account" + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group/providers/Microsoft.Resources/deployments/my-deployment", + "name": "my-deployment", + "type": "Microsoft.Resources/deployments", + "properties": { + "templateLink": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group/providers/Microsoft.Resources/TemplateSpecs/TemplateSpec-Name/versions/v1", + "contentVersion": "1.0.0.0" + }, + "templateHash": "0000000000000000000", + "parameters": {}, + "mode": "Incremental", + "provisioningState": "Accepted", + "timestamp": "2020-06-05T01:20:01.723776Z", + "duration": "PT22.8356799S", + "correlationId": "00000000-0000-0000-0000-000000000000", + "providers": [ + { + "namespace": "Microsoft.Storage", + "resourceTypes": [ + { + "resourceType": "storageAccounts", + "locations": [ + "eastus" + ] + } + ] + } + ], + "dependencies": [] + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PutDeploymentSubscriptionTemplateSpecsWithId.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PutDeploymentSubscriptionTemplateSpecsWithId.json new file mode 100644 index 000000000000..f87ed42951e4 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PutDeploymentSubscriptionTemplateSpecsWithId.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000001", + "deploymentName": "my-deployment", + "api-version": "2021-04-01", + "parameters": { + "location": "eastus", + "properties": { + "templateLink": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group/providers/Microsoft.Resources/TemplateSpecs/TemplateSpec-Name/versions/v1" + }, + "parameters": {}, + "mode": "Incremental" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000001/providers/Microsoft.Resources/deployments/my-deployment", + "name": "my-deployment", + "type": "Microsoft.Resources/deployments", + "location": "eastus", + "properties": { + "templateLink": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group/providers/Microsoft.Resources/TemplateSpecs/TemplateSpec-Name/versions/v1", + "contentVersion": "1.0.0.0" + }, + "templateHash": "0000000000000000000", + "parameters": {}, + "mode": "Incremental", + "provisioningState": "Succeeded", + "timestamp": "2020-06-05T01:51:58.6288067Z", + "duration": "PT1.2637681S", + "correlationId": "00000000-0000-0000-0000-000000000000", + "providers": [], + "dependencies": [], + "outputResources": [] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000001/providers/Microsoft.Resources/deployments/my-deployment", + "name": "my-deployment", + "type": "Microsoft.Resources/deployments", + "location": "eastus", + "properties": { + "templateLink": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group/providers/Microsoft.Resources/TemplateSpecs/TemplateSpec-Name/versions/v1", + "contentVersion": "1.0.0.0" + }, + "templateHash": "0000000000000000000", + "parameters": {}, + "mode": "Incremental", + "provisioningState": "Accepted", + "timestamp": "2020-06-05T01:51:58.6288067Z", + "duration": "PT1.2637681S", + "correlationId": "00000000-0000-0000-0000-000000000000", + "providers": [], + "dependencies": [] + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json new file mode 100644 index 000000000000..4d0bff403709 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json @@ -0,0 +1,168 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "my-resource-group", + "deploymentName": "my-deployment", + "api-version": "2021-04-01", + "parameters": { + "properties": { + "templateLink": { + "uri": "https://example.com/exampleTemplate.json" + }, + "parameters": {}, + "mode": "Complete", + "onErrorDeployment": { + "type": "LastSuccessful" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/my-resource-group/providers/Microsoft.Resources/deployments/my-deployment", + "name": "my-deployment", + "type": "Microsoft.Resources/deployments", + "properties": { + "templateLink": { + "uri": "https://example.com/exampleTemplate.json", + "contentVersion": "1.0.0.0" + }, + "parameters": {}, + "mode": "Complete", + "provisioningState": "Accepted", + "timestamp": "2019-03-01T00:00:00.0000000Z", + "duration": "PT0.8204881S", + "correlationId": "00000000-0000-0000-0000-000000000000", + "providers": [ + { + "namespace": "Microsoft.Network", + "resourceTypes": [ + { + "resourceType": "virtualNetworks", + "locations": [ + "centralus" + ] + }, + { + "resourceType": "virtualNetworks/subnets", + "locations": [ + "centralus" + ] + } + ] + } + ], + "dependencies": [ + { + "dependsOn": [ + { + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks", + "resourceName": "VNet1" + } + ], + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks/subnets", + "resourceName": "VNet1/Subnet1" + }, + { + "dependsOn": [ + { + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks", + "resourceName": "VNet1" + }, + { + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks/subnets", + "resourceName": "VNet1/Subnet1" + } + ], + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks/subnets", + "resourceName": "VNet1/Subnet2" + } + ], + "onErrorDeployment": { + "type": "LastSuccessful", + "deploymentName": "{nameOfLastSuccesfulDeployment}" + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/my-resource-group/providers/Microsoft.Resources/deployments/my-deployment", + "name": "my-deployment", + "type": "Microsoft.Resources/deployments", + "properties": { + "templateLink": { + "uri": "https://example.com/exampleTemplate.json", + "contentVersion": "1.0.0.0" + }, + "parameters": {}, + "mode": "Complete", + "provisioningState": "Accepted", + "timestamp": "2019-03-01T00:00:00.0000000Z", + "duration": "PT0.8204881S", + "correlationId": "00000000-0000-0000-0000-000000000000", + "providers": [ + { + "namespace": "Microsoft.Network", + "resourceTypes": [ + { + "resourceType": "virtualNetworks", + "locations": [ + "centralus" + ] + }, + { + "resourceType": "virtualNetworks/subnets", + "locations": [ + "centralus" + ] + } + ] + } + ], + "dependencies": [ + { + "dependsOn": [ + { + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks", + "resourceName": "VNet1" + } + ], + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks/subnets", + "resourceName": "VNet1/Subnet1" + }, + { + "dependsOn": [ + { + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks", + "resourceName": "VNet1" + }, + { + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks/subnets", + "resourceName": "VNet1/Subnet1" + } + ], + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks/subnets", + "resourceName": "VNet1/Subnet2" + } + ], + "onErrorDeployment": { + "type": "LastSuccessful", + "deploymentName": "{nameOfLastSuccesfulDeployment}" + } + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json new file mode 100644 index 000000000000..227047f54de1 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json @@ -0,0 +1,169 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "my-resource-group", + "deploymentName": "my-deployment", + "api-version": "2021-04-01", + "parameters": { + "properties": { + "templateLink": { + "uri": "https://example.com/exampleTemplate.json" + }, + "parameters": {}, + "mode": "Complete", + "onErrorDeployment": { + "type": "SpecificDeployment", + "deploymentName": "name-of-deployment-to-use" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/my-resource-group/providers/Microsoft.Resources/deployments/my-deployment", + "name": "my-deployment", + "type": "Microsoft.Resources/deployments", + "properties": { + "templateLink": { + "uri": "https://example.com/exampleTemplate.json", + "contentVersion": "1.0.0.0" + }, + "parameters": {}, + "mode": "Complete", + "provisioningState": "Accepted", + "timestamp": "2019-03-01T00:00:00.0000000Z", + "duration": "PT0.8204881S", + "correlationId": "00000000-0000-0000-0000-000000000000", + "providers": [ + { + "namespace": "Microsoft.Network", + "resourceTypes": [ + { + "resourceType": "virtualNetworks", + "locations": [ + "centralus" + ] + }, + { + "resourceType": "virtualNetworks/subnets", + "locations": [ + "centralus" + ] + } + ] + } + ], + "dependencies": [ + { + "dependsOn": [ + { + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks", + "resourceName": "VNet1" + } + ], + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks/subnets", + "resourceName": "VNet1/Subnet1" + }, + { + "dependsOn": [ + { + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks", + "resourceName": "VNet1" + }, + { + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks/subnets", + "resourceName": "VNet1/Subnet1" + } + ], + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks/subnets", + "resourceName": "VNet1/Subnet2" + } + ], + "onErrorDeployment": { + "type": "SpecificDeployment", + "deploymentName": "name-of-deployment-to-use" + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/my-resource-group/providers/Microsoft.Resources/deployments/my-deployment", + "name": "my-deployment", + "type": "Microsoft.Resources/deployments", + "properties": { + "templateLink": { + "uri": "https://example.com/exampleTemplate.json", + "contentVersion": "1.0.0.0" + }, + "parameters": {}, + "mode": "Complete", + "provisioningState": "Accepted", + "timestamp": "2019-03-01T00:00:00.0000000Z", + "duration": "PT0.8204881S", + "correlationId": "00000000-0000-0000-0000-000000000000", + "providers": [ + { + "namespace": "Microsoft.Network", + "resourceTypes": [ + { + "resourceType": "virtualNetworks", + "locations": [ + "centralus" + ] + }, + { + "resourceType": "virtualNetworks/subnets", + "locations": [ + "centralus" + ] + } + ] + } + ], + "dependencies": [ + { + "dependsOn": [ + { + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks", + "resourceName": "VNet1" + } + ], + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks/subnets", + "resourceName": "VNet1/Subnet1" + }, + { + "dependsOn": [ + { + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks", + "resourceName": "VNet1" + }, + { + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks/subnets", + "resourceName": "VNet1/Subnet1" + } + ], + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks/subnets", + "resourceName": "VNet1/Subnet2" + } + ], + "onErrorDeployment": { + "type": "SpecificDeployment", + "deploymentName": "name-of-deployment-to-use" + } + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PutTagsResource.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PutTagsResource.json new file mode 100644 index 000000000000..bf42075db85f --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PutTagsResource.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "scope": "subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/my-resource-group/providers/myPRNameSpace/VM/myVm", + "api-version": "2021-04-01", + "parameters": { + "properties": { + "tags": { + "tagKey1": "tag-value-1", + "tagKey2": "tag-value-2" + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "tags": { + "tagKey1": "tag-value-1", + "tagKey2": "tag-value-2" + } + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PutTagsSubscription.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PutTagsSubscription.json new file mode 100644 index 000000000000..7305cb7d41ee --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PutTagsSubscription.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "api-version": "2021-04-01", + "parameters": { + "properties": { + "tags": { + "tagKey1": "tag-value-1", + "tagKey2": "tag-value-2" + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "tags": { + "tagKey1": "tag-value-1", + "tagKey2": "tag-value-2" + } + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/resources.json new file mode 100644 index 000000000000..bf742b4114e6 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/resources.json @@ -0,0 +1,6627 @@ +{ + "swagger": "2.0", + "info": { + "title": "ResourceManagementClient", + "version": "2021-04-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": { + "/providers/Microsoft.Resources/operations": { + "get": { + "tags": [ + "Operations" + ], + "operationId": "Operations_List", + "description": "Lists all of the available Microsoft.Resources REST API operations.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtScope", + "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. 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": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtScope", + "summary": "Deploys resources at a given scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at a given scope.": { + "$ref": "./examples/PutDeploymentAtScope.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtScope", + "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 resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtScope", + "description": "Get all the deployments at the given scope.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "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" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtTenantScope", + "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. 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": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtTenantScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtTenantScope", + "summary": "Deploys resources at tenant scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at tenant scope.": { + "$ref": "./examples/PutDeploymentAtTenant.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtTenantScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtTenantScope", + "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 resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtTenantScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIfAtTenantScope", + "description": "Returns changes that will be made by the deployment if executed at the scope of the tenant group.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeploymentWhatIf" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at management group scope": { + "$ref": "./examples/PostDeploymentWhatIfOnTenant.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtTenantScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtTenantScope", + "description": "Get all the deployments at the tenant scope.", + "parameters": [ + { + "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" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtManagementGroupScope", + "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. 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": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtManagementGroupScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtManagementGroupScope", + "summary": "Deploys resources at management group scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at management group scope.": { + "$ref": "./examples/PutDeploymentAtManagementGroup.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtManagementGroupScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtManagementGroupScope", + "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 resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtManagementGroupScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIfAtManagementGroupScope", + "description": "Returns changes that will be made by the deployment if executed at the scope of the management group.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeploymentWhatIf" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at management group scope": { + "$ref": "./examples/PostDeploymentWhatIfOnManagementGroup.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtManagementGroupScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtManagementGroupScope", + "description": "Get all the deployments for a management group.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "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" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtSubscriptionScope", + "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. 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": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtSubscriptionScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtSubscriptionScope", + "summary": "Deploys resources at subscription scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create a deployment that will deploy a templateSpec with the given resourceId": { + "$ref": "./examples/PutDeploymentSubscriptionTemplateSpecsWithId.json" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtSubscriptionScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtSubscriptionScope", + "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 resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtSubscriptionScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "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" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIfAtSubscriptionScope", + "description": "Returns changes that will be made by the deployment if executed at the scope of the subscription.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DeploymentWhatIf" + }, + "description": "Parameters to What If." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at subscription scope": { + "$ref": "./examples/PostDeploymentWhatIfOnSubscription.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtSubscriptionScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtSubscriptionScope", + "description": "Get all the deployments for a subscription.", + "parameters": [ + { + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/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 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "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 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "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 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create a deployment that will redeploy the last successful deployment on failure": { + "$ref": "./examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json" + }, + "Create a deployment that will redeploy another deployment on failure": { + "$ref": "./examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json" + }, + "Create a deployment that will deploy a templateSpec with the given resourceId": { + "$ref": "./examples/PutDeploymentResourceGroupTemplateSpecsWithId.json" + }, + "Create a deployment that will deploy a template with a uri and queryString": { + "$ref": "./examples/PutDeploymentResourceGroup.json" + } + }, + "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 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/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 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Validate", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "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 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "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" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIf", + "description": "Returns changes that will be made by the deployment if executed at the scope of the resource group.", + "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 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DeploymentWhatIf" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at resource group scope": { + "$ref": "./examples/PostDeploymentWhatIfOnResourceGroup.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/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 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "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 information about the resource provider.", + "schema": { + "$ref": "#/definitions/Provider" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/{resourceProviderNamespace}/register": { + "post": { + "tags": [ + "Providers" + ], + "operationId": "Providers_RegisterAtManagementGroupScope", + "description": "Registers a management group 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/GroupIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the resource provider." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/providerPermissions": { + "get": { + "tags": [ + "Providers" + ], + "operationId": "Providers_ProviderPermissions", + "description": "Get the provider permissions.", + "parameters": [ + { + "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 on the provider permissions.", + "schema": { + "$ref": "#/definitions/ProviderPermissionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get provider resource types.": { + "$ref": "./examples/GetProviderPermissions.json" + } + } + } + }, + "/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" + }, + { + "name": "properties", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/ProviderRegistrationRequest" + }, + "description": "The third party consent for S2S." + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the resource provider.", + "schema": { + "$ref": "#/definitions/Provider" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get providers.": { + "$ref": "./examples/GetProviders.json" + } + } + } + }, + "/providers": { + "get": { + "tags": [ + "Providers" + ], + "operationId": "Providers_ListAtTenantScope", + "description": "Gets all resource providers for the tenant.", + "parameters": [ + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return. If null is passed returns all providers." + }, + { + "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" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of resource providers.", + "schema": { + "$ref": "#/definitions/ProviderListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get provider.": { + "$ref": "./examples/GetProvider.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/resourceTypes": { + "get": { + "tags": [ + "Providers" + ], + "operationId": "ProviderResourceTypes_List", + "description": "List the resource types for a 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 resource types information for the resource provider.", + "schema": { + "$ref": "#/definitions/ProviderResourceTypeListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get provider resource types.": { + "$ref": "./examples/GetProviderResourceTypes.json" + } + } + } + }, + "/providers/{resourceProviderNamespace}": { + "get": { + "tags": [ + "Providers" + ], + "x-ms-examples": { + "Get a resource provider at tenant scope": { + "$ref": "./examples/GetNamedProviderAtTenant.json" + } + }, + "operationId": "Providers_GetAtTenantScope", + "description": "Gets the specified resource provider at the tenant level.", + "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" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the resource provider.", + "schema": { + "$ref": "#/definitions/Provider" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/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.

    The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

    For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

    You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

    For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

    You can link more than one substringof together by adding and/or operators.

    You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results.

    You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." + }, + { + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "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" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "ResourceGroups" + ], + "x-ms-examples": { + "Create or update a resource group": { + "$ref": "./examples/CreateResourceGroup.json" + } + }, + "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. Can include alphanumeric, underscore, parentheses, hyphen, period (except at end), and Unicode characters that match the allowed characters.", + "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": { + "200": { + "description": "OK - Returns information about the new resource group.", + "schema": { + "$ref": "#/definitions/ResourceGroup" + } + }, + "201": { + "description": "Created - Returns information about the new resource group.", + "schema": { + "$ref": "#/definitions/ResourceGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "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 + }, + { + "name": "forceDeletionTypes", + "in": "query", + "required": false, + "type": "string", + "description": "The resource types you want to force delete. Currently, only the following is supported: forceDeletionTypes=Microsoft.Compute/virtualMachines,Microsoft.Compute/virtualMachineScaleSets" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "x-ms-examples": { + "Force delete all the Virtual Machines in a resource group": { + "$ref": "./examples/ForceDeleteVMsInResourceGroup.json" + }, + "Force delete all the Virtual Machines and Virtual Machine Scale Sets in a resource group": { + "$ref": "./examples/ForceDeleteVMsAndVMSSInResourceGroup.json" + } + }, + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/exportTemplate": { + "post": { + "tags": [ + "ResourceGroups" + ], + "operationId": "ResourceGroups_ExportTemplate", + "description": "Captures the specified resource group as a template.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExportTemplateRequest" + }, + "description": "Parameters for exporting the template." + } + ], + "x-ms-examples": { + "Export a resource group": { + "$ref": "./examples/ExportResourceGroup.json" + }, + "Export a resource group with filtering": { + "$ref": "./examples/ExportResourceGroupWithFiltering.json" + } + }, + "responses": { + "200": { + "description": "OK - Returns the result of the export.", + "schema": { + "$ref": "#/definitions/ResourceGroupExportResult" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/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.

    You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'" + }, + { + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "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 be moved must be in the same source resource group in the source subscription being used. 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 from the source subscription containing the resources to be moved.", + "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" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "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 be moved must be in the same source resource group in the source subscription being used. 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 from the source subscription containing the resources to be validated 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" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "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.

    The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

    For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

    You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

    For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

    You can link more than one substringof together by adding and/or operators.

    You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results.

    You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." + }, + { + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "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.", + "x-ms-api-version": false + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "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.", + "x-ms-api-version": false + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "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.", + "x-ms-api-version": false + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Parameters for creating or updating the resource." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the resource.", + "schema": { + "$ref": "#/definitions/GenericResource" + } + }, + "201": { + "description": "Created - Returns information about the resource.", + "schema": { + "$ref": "#/definitions/GenericResource" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "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.", + "x-ms-api-version": false + }, + { + "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" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "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.", + "x-ms-api-version": false + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the resource.", + "schema": { + "$ref": "#/definitions/GenericResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{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.", + "x-ms-api-version": false + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "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.", + "x-ms-api-version": false + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "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.", + "x-ms-api-version": false + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Create or update resource parameters." + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the resource.", + "schema": { + "$ref": "#/definitions/GenericResource" + } + }, + "201": { + "description": "Created - Returns information about the resource.", + "schema": { + "$ref": "#/definitions/GenericResource" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "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.", + "x-ms-api-version": false + }, + { + "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" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "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.", + "x-ms-api-version": false + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the resource.", + "schema": { + "$ref": "#/definitions/GenericResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/tagNames/{tagName}/tagValues/{tagValue}": { + "delete": { + "tags": [ + "Tags" + ], + "operationId": "Tags_DeleteValue", + "summary": "Deletes a predefined tag value for a predefined tag name.", + "description": "This operation allows deleting a value from the list of predefined values for an existing predefined tag name. The value being deleted must not be in use as a tag value for the given tag name for any resource.", + "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": "Predefined tag value successfully deleted." + }, + "204": { + "description": "Predefined tag value did not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Tags" + ], + "operationId": "Tags_CreateOrUpdateValue", + "summary": "Creates a predefined value for a predefined tag name.", + "description": "This operation allows adding a value to the list of predefined values for an existing predefined tag name. A tag value can have a maximum of 256 characters.", + "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": "Predefined tag value already exists. Returns information about the predefined tag value.", + "schema": { + "$ref": "#/definitions/TagValue" + } + }, + "201": { + "description": "Predefined tag value successfully created. Returns information about the predefined tag value.", + "schema": { + "$ref": "#/definitions/TagValue" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/tagNames/{tagName}": { + "put": { + "tags": [ + "Tags" + ], + "operationId": "Tags_CreateOrUpdate", + "summary": "Creates a predefined tag name.", + "description": "This operation allows adding a name to the list of predefined tag names for the given subscription. A tag name can have a maximum of 512 characters and is case-insensitive. Tag names cannot have the following prefixes which are reserved for Azure use: 'microsoft', 'azure', 'windows'.", + "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": "Predefined tag name already exists. Returns information about the predefined tag name.", + "schema": { + "$ref": "#/definitions/TagDetails" + } + }, + "201": { + "description": "Predefined tag name successfully created. Returns information about the predefined tag name.", + "schema": { + "$ref": "#/definitions/TagDetails" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "Tags" + ], + "operationId": "Tags_Delete", + "summary": "Deletes a predefined tag name.", + "description": "This operation allows deleting a name from the list of predefined tag names for the given subscription. The name being deleted must not be in use as a tag name for any resource. All predefined values for the given name must have already been deleted.", + "parameters": [ + { + "name": "tagName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tag." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Predefined tag name successfully deleted." + }, + "204": { + "description": "Predefined tag name did not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/tagNames": { + "get": { + "tags": [ + "Tags" + ], + "operationId": "Tags_List", + "summary": "Gets a summary of tag usage under the subscription.", + "description": "This operation performs a union of predefined tags, resource tags, resource group tags and subscription tags, and returns a summary of usage for each tag name and value under the given subscription. In case of a large number of tags, this operation may return a previously cached result.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of tag names and values.", + "schema": { + "$ref": "#/definitions/TagsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtTenantScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtTenantScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtManagementGroupScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtManagementGroupScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtSubscriptionScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtSubscriptionScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "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 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/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 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Resources/calculateTemplateHash": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CalculateTemplateHash", + "description": "Calculate the hash of the given template.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "template", + "in": "body", + "required": true, + "schema": { + "type": "object" + }, + "description": "The template provided to calculate hash." + } + ], + "x-ms-examples": { + "Calculate template hash": { + "$ref": "./examples/CalculateTemplateHash.json" + } + }, + "responses": { + "200": { + "description": "OK - Returns the hash.", + "schema": { + "$ref": "#/definitions/TemplateHashResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/tags/default": { + "put": { + "tags": [ + "Tags" + ], + "operationId": "Tags_CreateOrUpdateAtScope", + "summary": "Creates or updates the entire set of tags on a resource or subscription.", + "description": "This operation allows adding or replacing the entire set of tags on the specified resource or subscription. The specified entity can have a maximum of 50 tags.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TagsResource" + } + } + ], + "responses": { + "200": { + "description": "Tags updated successfully. Returns tags from the specified object.", + "schema": { + "$ref": "#/definitions/TagsResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update tags on a resource": { + "$ref": "./examples/PutTagsResource.json" + }, + "Update tags on a subscription": { + "$ref": "./examples/PutTagsSubscription.json" + } + } + }, + "patch": { + "tags": [ + "Tags" + ], + "operationId": "Tags_UpdateAtScope", + "summary": "Selectively updates the set of tags on a resource or subscription.", + "description": "This operation allows replacing, merging or selectively deleting tags on the specified resource or subscription. The specified entity can have a maximum of 50 tags at the end of the operation. The 'replace' option replaces the entire set of existing tags with a new set. The 'merge' option allows adding tags with new names and updating the values of tags with existing names. The 'delete' option allows selectively deleting tags based on given names or name/value pairs.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TagsPatchResource" + } + } + ], + "responses": { + "200": { + "description": "Tags updated successfully. Returns tags from the specified object.", + "schema": { + "$ref": "#/definitions/TagsResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "get": { + "tags": [ + "Tags" + ], + "operationId": "Tags_GetAtScope", + "summary": "Gets the entire set of tags on a resource or subscription.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Returns tags from the specified object.", + "schema": { + "$ref": "#/definitions/TagsResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get tags on a resource": { + "$ref": "./examples/GetTagsResource.json" + }, + "Get tags on a subscription": { + "$ref": "./examples/GetTagsSubscription.json" + } + } + }, + "delete": { + "tags": [ + "Tags" + ], + "operationId": "Tags_DeleteAtScope", + "summary": "Deletes the entire set of tags on a resource or subscription.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Tags successfully deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + } + }, + "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. Use either the uri or id property, but not both." + }, + "id": { + "type": "string", + "description": "The resource id of a Template Spec. Use either the id or uri property, but not both." + }, + "relativePath": { + "type": "string", + "description": "The relativePath property can be used to deploy a linked template at a location relative to the parent. If the parent template was linked with a TemplateSpec, this will reference an artifact in the TemplateSpec. If the parent was linked with a URI, the child deployment will be a combination of the parent and relativePath URIs" + }, + "contentVersion": { + "type": "string", + "description": "If included, must match the ContentVersion in the template." + }, + "queryString": { + "type": "string", + "description": "The query string (for example, a SAS token) to be used with the templateLink 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 parameters." + }, + "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." + }, + "expressionEvaluationOptions": { + "$ref": "#/definitions/ExpressionEvaluationOptions", + "description": "Specifies whether template expressions are evaluated within the scope of the parent template or nested template. Only applicable to nested templates. If not specified, default value is outer." + } + }, + "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." + } + }, + "description": "The debug setting." + }, + "Deployment": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentProperties", + "description": "The deployment properties." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Deployment tags" + } + }, + "required": [ + "properties" + ], + "description": "Deployment operation parameters." + }, + "ScopedDeployment": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentProperties", + "description": "The deployment properties." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Deployment tags" + } + }, + "required": [ + "location", + "properties" + ], + "description": "Deployment operation parameters." + }, + "DeploymentExportResult": { + "properties": { + "template": { + "type": "object", + "description": "The template content." + } + }, + "description": "The deployment export result. " + }, + "DeploymentWhatIf": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentWhatIfProperties", + "description": "The deployment properties." + } + }, + "required": [ + "properties" + ], + "description": "Deployment What-if operation parameters." + }, + "ScopedDeploymentWhatIf": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentWhatIfProperties", + "description": "The deployment properties." + } + }, + "required": [ + "location", + "properties" + ], + "description": "Deployment What-if operation parameters." + }, + "DeploymentWhatIfProperties": { + "properties": { + "whatIfSettings": { + "$ref": "#/definitions/DeploymentWhatIfSettings", + "description": "Optional What-If operation settings." + } + }, + "allOf": [ + { + "$ref": "#/definitions/DeploymentProperties" + } + ], + "description": "Deployment What-if properties." + }, + "DeploymentWhatIfSettings": { + "properties": { + "resultFormat": { + "type": "string", + "description": "The format of the What-If results", + "enum": [ + "ResourceIdOnly", + "FullResourcePayloads" + ], + "x-ms-enum": { + "name": "WhatIfResultFormat", + "modelAsString": false + } + } + }, + "description": "Deployment What-If operation settings." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "An error response for a resource management request." + }, + "ApiProfile": { + "properties": { + "profileVersion": { + "type": "string", + "readOnly": true, + "description": "The profile version." + }, + "apiVersion": { + "type": "string", + "readOnly": true, + "description": "The API version." + } + } + }, + "AliasPathMetadata": { + "properties": { + "type": { + "type": "string", + "readOnly": true, + "enum": [ + "NotSpecified", + "Any", + "String", + "Object", + "Array", + "Integer", + "Number", + "Boolean" + ], + "x-ms-enum": { + "name": "AliasPathTokenType", + "modelAsString": true, + "values": [ + { + "value": "NotSpecified", + "description": "The token type is not specified." + }, + { + "value": "Any", + "description": "The token type can be anything." + }, + { + "value": "String", + "description": "The token type is string." + }, + { + "value": "Object", + "description": "The token type is object." + }, + { + "value": "Array", + "description": "The token type is array." + }, + { + "value": "Integer", + "description": "The token type is integer." + }, + { + "value": "Number", + "description": "The token type is number." + }, + { + "value": "Boolean", + "description": "The token type is boolean." + } + ] + }, + "description": "The type of the token that the alias path is referring to." + }, + "attributes": { + "type": "string", + "readOnly": true, + "enum": [ + "None", + "Modifiable" + ], + "x-ms-enum": { + "name": "AliasPathAttributes", + "modelAsString": true, + "values": [ + { + "value": "None", + "description": "The token that the alias path is referring to has no attributes." + }, + { + "value": "Modifiable", + "description": "The token that the alias path is referring to is modifiable by policies with 'modify' effect." + } + ] + }, + "description": "The attributes of the token that the alias path is referring to." + } + } + }, + "AliasPath": { + "properties": { + "path": { + "type": "string", + "description": "The path of an alias." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API versions." + }, + "pattern": { + "$ref": "#/definitions/AliasPattern", + "description": "The pattern for an alias path." + }, + "metadata": { + "readOnly": true, + "$ref": "#/definitions/AliasPathMetadata", + "description": "The metadata of the alias path. If missing, fall back to the default metadata of the alias." + } + }, + "description": "The type of the paths for alias." + }, + "AliasPattern": { + "properties": { + "phrase": { + "type": "string", + "description": "The alias pattern phrase." + }, + "variable": { + "type": "string", + "description": "The alias pattern variable." + }, + "type": { + "type": "string", + "enum": [ + "NotSpecified", + "Extract" + ], + "x-ms-enum": { + "name": "AliasPatternType", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "NotSpecified is not allowed." + }, + { + "value": "Extract", + "description": "Extract is the only allowed value." + } + ] + }, + "description": "The type of alias pattern" + } + }, + "description": "The type of the pattern for an alias path." + }, + "Alias": { + "properties": { + "name": { + "type": "string", + "description": "The alias name." + }, + "paths": { + "type": "array", + "items": { + "$ref": "#/definitions/AliasPath" + }, + "description": "The paths for an alias." + }, + "type": { + "type": "string", + "description": "The type of the alias.", + "enum": [ + "NotSpecified", + "PlainText", + "Mask" + ], + "x-ms-enum": { + "name": "AliasType", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "Alias type is unknown (same as not providing alias type)." + }, + { + "value": "PlainText", + "description": "Alias value is not secret." + }, + { + "value": "Mask", + "description": "Alias value is secret." + } + ] + } + }, + "defaultPath": { + "type": "string", + "description": "The default path for an alias." + }, + "defaultPattern": { + "$ref": "#/definitions/AliasPattern", + "description": "The default pattern for an alias." + }, + "defaultMetadata": { + "readOnly": true, + "$ref": "#/definitions/AliasPathMetadata", + "description": "The default alias path metadata. Applies to the default path and to any alias path that doesn't have metadata" + } + }, + "description": "The alias type. " + }, + "ProviderExtendedLocation": { + "properties": { + "location": { + "type": "string", + "description": "The azure location." + }, + "type": { + "type": "string", + "description": "The extended location type." + }, + "extendedLocations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The extended locations for the azure location." + } + }, + "description": "The provider extended location. " + }, + "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." + }, + "locationMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ProviderExtendedLocation" + }, + "description": "The location mappings that are supported by this resource type." + }, + "aliases": { + "type": "array", + "items": { + "$ref": "#/definitions/Alias" + }, + "description": "The aliases that are supported by this resource type." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API version." + }, + "defaultApiVersion": { + "type": "string", + "readOnly": true, + "description": "The default API version." + }, + "apiProfiles": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ApiProfile" + }, + "description": "The API profiles for the resource provider." + }, + "capabilities": { + "type": "string", + "description": "The additional capabilities offered by this resource type." + }, + "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 resource provider." + }, + "registrationPolicy": { + "readOnly": true, + "type": "string", + "description": "The registration policy of the resource provider." + }, + "resourceTypes": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ProviderResourceType" + }, + "description": "The collection of provider resource types." + }, + "providerAuthorizationConsentState": { + "type": "string", + "enum": [ + "NotSpecified", + "Required", + "NotRequired", + "Consented" + ], + "description": "The provider authorization consent state.", + "x-ms-enum": { + "name": "ProviderAuthorizationConsentState", + "modelAsString": true + } + } + }, + "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": { + "type": "string", + "readOnly": true, + "description": "Denotes the state of provisioning.", + "enum": [ + "NotSpecified", + "Accepted", + "Running", + "Ready", + "Creating", + "Created", + "Deleting", + "Deleted", + "Canceled", + "Failed", + "Succeeded", + "Updating" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "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." + }, + "duration": { + "readOnly": true, + "type": "string", + "description": "The duration of the template deployment." + }, + "outputs": { + "readOnly": true, + "type": "object", + "description": "Key/value pairs that represent deployment output." + }, + "providers": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Provider" + }, + "description": "The list of resource providers needed for the deployment." + }, + "dependencies": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Dependency" + }, + "description": "The list of deployment dependencies." + }, + "templateLink": { + "readOnly": true, + "$ref": "#/definitions/TemplateLink", + "description": "The URI referencing the template." + }, + "parameters": { + "readOnly": true, + "type": "object", + "description": "Deployment parameters. " + }, + "parametersLink": { + "readOnly": true, + "$ref": "#/definitions/ParametersLink", + "description": "The URI referencing the parameters. " + }, + "mode": { + "readOnly": true, + "type": "string", + "description": "The deployment mode. Possible values are Incremental and Complete.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "debugSetting": { + "readOnly": true, + "$ref": "#/definitions/DebugSetting", + "description": "The debug setting of the deployment." + }, + "onErrorDeployment": { + "readOnly": true, + "$ref": "#/definitions/OnErrorDeploymentExtended", + "description": "The deployment on error behavior." + }, + "templateHash": { + "readOnly": true, + "type": "string", + "description": "The hash produced for the template." + }, + "outputResources": { + "readOnly": true, + "type": "array", + "description": "Array of provisioned resources.", + "items": { + "$ref": "#/definitions/ResourceReference", + "description": "Details of provisioned resources." + } + }, + "validatedResources": { + "readOnly": true, + "type": "array", + "description": "Array of validated resources.", + "items": { + "$ref": "#/definitions/ResourceReference", + "description": "Details of validated resources." + } + }, + "error": { + "readOnly": true, + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The deployment error." + } + }, + "description": "Deployment properties with additional details." + }, + "ResourceReference": { + "description": "The resource Id model.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The fully qualified resource Id." + } + } + }, + "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": { + "readOnly": true, + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The deployment validation error." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "The template deployment properties." + } + }, + "description": "Information from validate template deployment response." + }, + "DeploymentExtended": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ID of the deployment." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the deployment." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of the deployment." + }, + "location": { + "type": "string", + "description": "the location of the deployment." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "Deployment properties." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Deployment tags" + } + }, + "x-ms-azure-resource": true, + "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." + }, + "ProviderResourceTypeListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ProviderResourceType" + }, + "description": "An array of resource types." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of resource types of a resource provider." + }, + "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." + }, + "ExtendedLocation": { + "properties": { + "type": { + "type": "string", + "enum": [ + "EdgeZone" + ], + "x-ms-enum": { + "name": "ExtendedLocationType", + "modelAsString": true + }, + "description": "The extended location type." + }, + "name": { + "type": "string", + "description": "The extended location name." + } + }, + "description": "Resource extended location." + }, + "GenericResourceExpanded": { + "properties": { + "createdTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The created time of the resource. This is only present if requested via the $expand query parameter." + }, + "changedTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The changed time of the resource. This is only present if requested via the $expand query parameter." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state of the resource. This is only present if requested via the $expand query parameter." + } + }, + "allOf": [ + { + "$ref": "#/definitions/GenericResource" + } + ], + "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 + } + }, + "userAssignedIdentities": { + "type": "object", + "additionalProperties": { + "type": "object", + "x-ms-client-name": "IdentityUserAssignedIdentitiesValue", + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of user assigned identity." + }, + "clientId": { + "readOnly": true, + "type": "string", + "description": "The client id of user assigned identity." + } + } + }, + "description": "The list of user identities associated with the resource. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'." + } + }, + "description": "Identity for the resource." + }, + "ResourceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/GenericResourceExpanded" + }, + "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": { + "readOnly": true, + "type": "string", + "description": "The name of the resource group." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of the resource group." + }, + "properties": { + "$ref": "#/definitions/ResourceGroupProperties", + "description": "The resource group properties." + }, + "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" + ], + "x-ms-azure-resource": true, + "description": "Resource group information." + }, + "ResourceGroupPatchable": { + "properties": { + "name": { + "type": "string", + "description": "The name of the resource group." + }, + "properties": { + "$ref": "#/definitions/ResourceGroupProperties", + "description": "The resource group properties." + }, + "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 to filter the export by. To export all resources, supply an array with single entry '*'." + }, + "options": { + "type": "string", + "description": "The export template options. A CSV-formatted list containing zero or more of the following: 'IncludeParameterDefaultValue', 'IncludeComments', 'SkipResourceNameParameterization', 'SkipAllParameterization'" + } + }, + "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": { + "readOnly": true, + "type": "string", + "description": "The tag value ID." + }, + "tagValue": { + "type": "string", + "description": "The tag value." + }, + "count": { + "$ref": "#/definitions/TagCount", + "description": "The tag value count." + } + }, + "x-ms-azure-resource": true, + "description": "Tag information." + }, + "TagDetails": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The tag name 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." + } + }, + "x-ms-azure-resource": true, + "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": { + "provisioningOperation": { + "readOnly": true, + "type": "string", + "description": "The name of the current provisioning operation.", + "enum": [ + "NotSpecified", + "Create", + "Delete", + "Waiting", + "AzureAsyncOperationWaiting", + "ResourceCacheWaiting", + "Action", + "Read", + "EvaluateDeploymentOutput", + "DeploymentCleanup" + ], + "x-ms-enum": { + "name": "ProvisioningOperation", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "The provisioning operation is not specified." + }, + { + "value": "Create", + "description": "The provisioning operation is create." + }, + { + "value": "Delete", + "description": "The provisioning operation is delete." + }, + { + "value": "Waiting", + "description": "The provisioning operation is waiting." + }, + { + "value": "AzureAsyncOperationWaiting", + "description": "The provisioning operation is waiting Azure async operation." + }, + { + "value": "ResourceCacheWaiting", + "description": "The provisioning operation is waiting for resource cache." + }, + { + "value": "Action", + "description": "The provisioning operation is action." + }, + { + "value": "Read", + "description": "The provisioning operation is read." + }, + { + "value": "EvaluateDeploymentOutput", + "description": "The provisioning operation is evaluate output." + }, + { + "value": "DeploymentCleanup", + "description": "The provisioning operation is cleanup. This operation is part of the 'complete' mode deployment." + } + ] + } + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The date and time of the operation." + }, + "duration": { + "readOnly": true, + "type": "string", + "description": "The duration of the operation." + }, + "serviceRequestId": { + "readOnly": true, + "type": "string", + "description": "Deployment operation service request id." + }, + "statusCode": { + "readOnly": true, + "type": "string", + "description": "Operation status code from the resource provider. This property may not be set if a response has not yet been received." + }, + "statusMessage": { + "readOnly": true, + "description": "Operation status message from the resource provider. This property is optional. It will only be provided if an error was received from the resource provider.", + "$ref": "#/definitions/StatusMessage" + }, + "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": "Resource provider 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" + }, + "extendedLocation": { + "$ref": "#/definitions/ExtendedLocation", + "x-ms-mutability": [ + "read", + "create" + ], + "description": "Resource extended location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "x-ms-azure-resource": true, + "description": "Specified 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": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The template export error." + } + }, + "description": "Resource group export result." + }, + "Operation": { + "description": "Microsoft.Resources operation", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}", + "type": "string" + }, + "display": { + "description": "The object that represents the operation.", + "properties": { + "provider": { + "description": "Service provider: Microsoft.Resources", + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed: Profile, endpoint, etc.", + "type": "string" + }, + "operation": { + "description": "Operation type: Read, write, delete, etc.", + "type": "string" + }, + "description": { + "description": "Description of the operation.", + "type": "string" + } + } + } + } + }, + "OperationListResult": { + "description": "Result of the request to list Microsoft.Resources operations. It contains a list of operations and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "description": "List of Microsoft.Resources operations." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "TemplateHashResult": { + "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", + "properties": { + "minifiedTemplate": { + "type": "string", + "description": "The minified template string." + }, + "templateHash": { + "type": "string", + "description": "The template hash." + } + } + }, + "WhatIfPropertyChange": { + "required": [ + "path", + "propertyChangeType" + ], + "properties": { + "path": { + "type": "string", + "description": "The path of the property." + }, + "propertyChangeType": { + "type": "string", + "description": "The type of property change.", + "enum": [ + "Create", + "Delete", + "Modify", + "Array", + "NoEffect" + ], + "x-ms-enum": { + "name": "PropertyChangeType", + "modelAsString": false, + "values": [ + { + "value": "Create", + "description": "The property does not exist in the current state but is present in the desired state. The property will be created when the deployment is executed." + }, + { + "value": "Delete", + "description": "The property exists in the current state and is missing from the desired state. It will be deleted when the deployment is executed." + }, + { + "value": "Modify", + "description": "The property exists in both current and desired state and is different. The value of the property will change when the deployment is executed." + }, + { + "value": "Array", + "description": "The property is an array and contains nested changes." + }, + { + "value": "NoEffect", + "description": "The property will not be set or updated." + } + ] + } + }, + "before": { + "type": "object", + "description": "The value of the property before the deployment is executed." + }, + "after": { + "type": "object", + "description": "The value of the property after the deployment is executed." + }, + "children": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfPropertyChange" + }, + "description": "Nested property changes." + } + }, + "description": "The predicted change to the resource property." + }, + "WhatIfChange": { + "description": "Information about a single resource change predicted by What-If operation.", + "required": [ + "resourceId", + "changeType" + ], + "properties": { + "resourceId": { + "type": "string", + "description": "Resource ID" + }, + "changeType": { + "type": "string", + "description": "Type of change that will be made to the resource when the deployment is executed.", + "enum": [ + "Create", + "Delete", + "Ignore", + "Deploy", + "NoChange", + "Modify", + "Unsupported" + ], + "x-ms-enum": { + "name": "ChangeType", + "modelAsString": false, + "values": [ + { + "value": "Create", + "description": "The resource does not exist in the current state but is present in the desired state. The resource will be created when the deployment is executed." + }, + { + "value": "Delete", + "description": "The resource exists in the current state and is missing from the desired state. The resource will be deleted when the deployment is executed." + }, + { + "value": "Ignore", + "description": "The resource exists in the current state and is missing from the desired state. The resource will not be deployed or modified when the deployment is executed." + }, + { + "value": "Deploy", + "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource may or may not change." + }, + { + "value": "NoChange", + "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will not change." + }, + { + "value": "Modify", + "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will change." + }, + { + "value": "Unsupported", + "description": "The resource is not supported by What-If." + } + ] + } + }, + "unsupportedReason": { + "type": "string", + "description": "The explanation about why the resource is unsupported by What-If." + }, + "before": { + "type": "object", + "description": "The snapshot of the resource before the deployment is executed." + }, + "after": { + "type": "object", + "description": "The predicted snapshot of the resource after the deployment is executed." + }, + "delta": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfPropertyChange" + }, + "description": "The predicted changes to resource properties." + } + } + }, + "WhatIfOperationProperties": { + "description": "Deployment operation properties.", + "properties": { + "changes": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfChange" + }, + "description": "List of resource changes predicted by What-If operation." + } + } + }, + "WhatIfOperationResult": { + "description": "Result of the What-If operation. Contains a list of predicted changes and a URL link to get to the next set of results.", + "properties": { + "status": { + "type": "string", + "description": "Status of the What-If operation." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/WhatIfOperationProperties", + "description": "What-If operation properties." + }, + "error": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "Error when What-If operation fails." + } + } + }, + "Tags": { + "description": "A dictionary of name and value pairs.", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "The tag value." + } + } + } + }, + "TagsPatchResource": { + "type": "object", + "description": "Wrapper resource for tags patch API request only.", + "properties": { + "operation": { + "type": "string", + "description": "The operation type for the patch API.", + "enum": [ + "Replace", + "Merge", + "Delete" + ], + "x-ms-enum": { + "name": "tagsPatchOperation", + "modelAsString": true, + "values": [ + { + "value": "Replace", + "description": "The 'replace' option replaces the entire set of existing tags with a new set." + }, + { + "value": "Merge", + "description": "The 'merge' option allows adding tags with new names and updating the values of tags with existing names." + }, + { + "value": "Delete", + "description": "The 'delete' option allows selectively deleting tags based on given names or name/value pairs." + } + ] + } + }, + "properties": { + "$ref": "#/definitions/Tags", + "description": "The set of tags." + } + } + }, + "TagsResource": { + "type": "object", + "description": "Wrapper resource for tags API requests and responses.", + "required": [ + "properties" + ], + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ID of the tags wrapper resource." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the tags wrapper resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of the tags wrapper resource." + }, + "properties": { + "$ref": "#/definitions/Tags", + "description": "The set of tags." + } + }, + "x-ms-azure-resource": true + }, + "Permission": { + "type": "object", + "readOnly": true, + "properties": { + "actions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Allowed actions." + }, + "notActions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Denied actions." + }, + "dataActions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Allowed Data actions." + }, + "notDataActions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Denied Data actions." + } + }, + "description": "Role definition permissions." + }, + "RoleDefinition": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "The role definition ID." + }, + "name": { + "type": "string", + "description": "The role definition name." + }, + "isServiceRole": { + "type": "boolean", + "description": "If this is a service role." + }, + "permissions": { + "type": "array", + "items": { + "$ref": "#/definitions/Permission" + }, + "description": "Role definition permissions." + }, + "scopes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Role definition assignable scopes." + } + }, + "description": "Role definition properties." + }, + "ProviderPermission": { + "type": "object", + "description": "The provider permission", + "properties": { + "applicationId": { + "type": "string", + "description": "The application id." + }, + "roleDefinition": { + "$ref": "#/definitions/RoleDefinition", + "description": "Role definition properties." + }, + "managedByRoleDefinition": { + "$ref": "#/definitions/RoleDefinition", + "description": "Role definition properties." + }, + "providerAuthorizationConsentState": { + "type": "string", + "enum": [ + "NotSpecified", + "Required", + "NotRequired", + "Consented" + ], + "description": "The provider authorization consent state.", + "x-ms-enum": { + "name": "ProviderAuthorizationConsentState", + "modelAsString": true + } + } + } + }, + "ProviderPermissionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ProviderPermission" + }, + "description": "An array of provider permissions." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of provider permissions." + }, + "ProviderConsentDefinition": { + "type": "object", + "description": "The provider consent.", + "properties": { + "consentToAuthorization": { + "type": "boolean", + "description": "A value indicating whether authorization is consented or not." + } + } + }, + "ProviderRegistrationRequest": { + "type": "object", + "description": "The provider registration definition.", + "properties": { + "thirdPartyProviderConsent": { + "$ref": "#/definitions/ProviderConsentDefinition", + "description": "The provider consent." + } + } + }, + "StatusMessage": { + "type": "object", + "description": "Operation status message object.", + "properties": { + "status": { + "type": "string", + "description": "Status of the deployment operation." + }, + "error": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The error reported by the operation." + } + } + }, + "ExpressionEvaluationOptions": { + "properties": { + "scope": { + "type": "string", + "description": "The scope to be used for evaluation of parameters, variables and functions in a nested template.", + "enum": [ + "NotSpecified", + "Outer", + "Inner" + ], + "x-ms-enum": { + "name": "ExpressionEvaluationOptionsScopeType", + "modelAsString": true + } + } + }, + "description": "Specifies whether template expressions are evaluated within the scope of the parent template or nested template." + } + }, + "parameters": { + "ScopeParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The resource scope.", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, + "GroupIdParameter": { + "name": "groupId", + "in": "path", + "required": true, + "type": "string", + "description": "The management group ID.", + "x-ms-parameter-location": "method", + "minLength": 1, + "maxLength": 90 + }, + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The Microsoft Azure subscription ID." + }, + "DeploymentNameParameter": { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[-\\w\\._\\(\\)]+$", + "x-ms-parameter-location": "method", + "minLength": 1, + "maxLength": 64, + "description": "The name of the deployment." + }, + "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/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecVersionsCreate.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecVersionsCreate.json new file mode 100644 index 000000000000..85ae8bf2bdf7 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecVersionsCreate.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "templateSpecRG", + "templateSpecName": "simpleTemplateSpec", + "templateSpecVersion": "v1.0", + "templateSpecVersionModel": { + "location": "eastus", + "properties": { + "description": "This is version v1.0 of our template content", + "mainTemplate": { + "$schema": "http://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#", + "contentVersion": "1.0.0.0", + "parameters": {}, + "resources": [] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/templateSpecRG/providers/Microsoft.Resources/templateSpecs/simpleTemplateSpec/versions/v1.0", + "type": "Microsoft.Resources/templateSpecs/versions", + "name": "v1.0", + "location": "eastus", + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-02-02T02:03:01.1974346Z" + }, + "properties": { + "description": "This is version v1.0 of our template content", + "mainTemplate": { + "$schema": "http://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#", + "contentVersion": "1.0.0.0", + "parameters": {}, + "resources": [] + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/templateSpecRG/providers/Microsoft.Resources/templateSpecs/simpleTemplateSpec/versions/v1.0", + "type": "Microsoft.Resources/templateSpecs/versions", + "name": "v1.0", + "location": "eastus", + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + }, + "properties": { + "description": "This is version v1.0 of our template content", + "mainTemplate": { + "$schema": "http://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#", + "contentVersion": "1.0.0.0", + "parameters": {}, + "resources": [] + } + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecVersionsDelete.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecVersionsDelete.json new file mode 100644 index 000000000000..66f1dd1918e6 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecVersionsDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "templateSpecRG", + "templateSpecName": "simpleTemplateSpec", + "templateSpecVersion": "v1.0" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecVersionsGet.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecVersionsGet.json new file mode 100644 index 000000000000..238d2511997c --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecVersionsGet.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "templateSpecRG", + "templateSpecName": "simpleTemplateSpec", + "templateSpecVersion": "v1.0" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/templateSpecRG/providers/Microsoft.Resources/templateSpecs/simpleTemplateSpec/versions/v1.0", + "type": "Microsoft.Resources/templateSpecs/versions", + "name": "v1.0", + "location": "eastus", + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-02-02T02:03:01.1974346Z" + }, + "properties": { + "description": "This is version v1.0 of our template content", + "mainTemplate": { + "$schema": "http://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#", + "contentVersion": "1.0.0.0", + "parameters": {}, + "resources": [] + } + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecVersionsList.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecVersionsList.json new file mode 100644 index 000000000000..1bb178b5c335 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecVersionsList.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "templateSpecRG", + "templateSpecName": "simpleTemplateSpec" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/templateSpecRG/providers/Microsoft.Resources/templateSpecs/simpleTemplateSpec/versions/v1.0", + "type": "Microsoft.Resources/templateSpecs/versions", + "name": "v1.0", + "location": "eastus", + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-02-02T02:03:01.1974346Z" + }, + "properties": { + "description": "This is version v1.0" + } + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/templateSpecRG/providers/Microsoft.Resources/templateSpecs/simpleTemplateSpec/versions/v2.0", + "type": "Microsoft.Resources/templateSpecs/versions", + "name": "v2.0", + "location": "eastus", + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-02-03T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-02-04T02:03:01.1974346Z" + }, + "properties": { + "description": "This is another version (v2.0)" + } + } + ] + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecVersionsPatch.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecVersionsPatch.json new file mode 100644 index 000000000000..c6e753d725c0 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecVersionsPatch.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "templateSpecRG", + "templateSpecName": "simpleTemplateSpec", + "templateSpecVersion": "v1.0", + "templateSpecVersionUpdateModel": { + "tags": { + "myTag": "My Value" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/templateSpecRG/providers/Microsoft.Resources/templateSpecs/simpleTemplateSpec/versions/v1.0", + "type": "Microsoft.Resources/templateSpecs/versions", + "name": "v1.0", + "location": "eastus", + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-02-02T02:03:01.1974346Z" + }, + "properties": { + "description": "This is version v1.0 of our template content", + "mainTemplate": { + "$schema": "http://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#", + "contentVersion": "1.0.0.0", + "parameters": {}, + "resources": [] + } + }, + "tags": { + "myTag": "My Value" + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecsCreate.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecsCreate.json new file mode 100644 index 000000000000..28aa0acd72ef --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecsCreate.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "templateSpecRG", + "templateSpecName": "simpleTemplateSpec", + "templateSpec": { + "location": "eastus", + "properties": { + "description": "A very simple Template Spec" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/templateSpecRG/providers/Microsoft.Resources/templateSpecs/simpleTemplateSpec", + "type": "Microsoft.Resources/templateSpecs", + "name": "simpleTemplateSpec", + "location": "eastus", + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + }, + "properties": { + "description": "A very simple Template Spec" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/templateSpecRG/providers/Microsoft.Resources/templateSpecs/simpleTemplateSpec", + "type": "Microsoft.Resources/templateSpecs", + "name": "simpleTemplateSpec", + "location": "eastus", + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-02-02T02:03:01.1974346Z" + }, + "properties": { + "description": "A very simple Template Spec" + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecsDelete.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecsDelete.json new file mode 100644 index 000000000000..a55c5525c2ac --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecsDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "templateSpecRG", + "templateSpecName": "simpleTemplateSpec" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecsGet.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecsGet.json new file mode 100644 index 000000000000..bd0cd78888b4 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecsGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "templateSpecRG", + "templateSpecName": "simpleTemplateSpec" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/templateSpecRG/providers/Microsoft.Resources/templateSpecs/simpleTemplateSpec", + "type": "Microsoft.Resources/templateSpecs", + "name": "simpleTemplateSpec", + "location": "eastus", + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-02-02T02:03:01.1974346Z" + }, + "properties": { + "description": "A very simple Template Spec" + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecsListByResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecsListByResourceGroup.json new file mode 100644 index 000000000000..7f63bd9df159 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecsListByResourceGroup.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "templateSpecRG" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/templateSpecRG/providers/Microsoft.Resources/templateSpecs/simpleTemplateSpec", + "type": "Microsoft.Resources/templateSpecs", + "name": "simpleTemplateSpec", + "location": "eastus", + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-02-02T02:03:01.1974346Z" + }, + "properties": { + "description": "A very simple Template Spec" + } + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/templateSpecRG/providers/Microsoft.Resources/templateSpecs/anotherSimpleTemplateSpec", + "type": "Microsoft.Resources/templateSpecs", + "name": "anotherSimpleTemplateSpec", + "location": "westus", + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-02-02T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-02-03T02:03:01.1974346Z" + }, + "properties": { + "description": "Another very simple Template Spec" + } + } + ] + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecsListBySubscription.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecsListBySubscription.json new file mode 100644 index 000000000000..f05913d9f36a --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecsListBySubscription.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/templateSpecRG/providers/Microsoft.Resources/templateSpecs/simpleTemplateSpec", + "type": "Microsoft.Resources/templateSpecs", + "name": "simpleTemplateSpec", + "location": "eastus", + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-02-02T02:03:01.1974346Z" + }, + "properties": { + "description": "A very simple Template Spec" + } + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/templateSpecRG2/providers/Microsoft.Resources/templateSpecs/anotherSimpleTemplateSpec", + "type": "Microsoft.Resources/templateSpecs", + "name": "anotherSimpleTemplateSpec", + "location": "westus", + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-02-02T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-02-03T02:03:01.1974346Z" + }, + "properties": { + "description": "Another very simple Template Spec" + } + } + ] + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecsPatch.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecsPatch.json new file mode 100644 index 000000000000..7b03e393c08b --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecsPatch.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2021-05-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "templateSpecRG", + "templateSpecName": "simpleTemplateSpec", + "templateSpec": { + "tags": { + "myTag": "My Value" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/templateSpecRG/providers/Microsoft.Resources/templateSpecs/simpleTemplateSpec", + "type": "Microsoft.Resources/templateSpecs", + "name": "simpleTemplateSpec", + "location": "eastus", + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-02-02T02:03:01.1974346Z" + }, + "properties": { + "description": "A very simple Template Spec" + }, + "tags": { + "myTag": "My Value" + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/templateSpecs.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/templateSpecs.json new file mode 100644 index 000000000000..e6a6b1c38e21 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/templateSpecs.json @@ -0,0 +1,903 @@ +{ + "swagger": "2.0", + "info": { + "title": "TemplateSpecsClient", + "description": "The APIs listed in this specification can be used to manage Template Spec resources through the Azure Resource Manager.", + "version": "2021-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.Resources/templateSpecs/{templateSpecName}": { + "put": { + "tags": [ + "TemplateSpecs" + ], + "operationId": "TemplateSpecs_CreateOrUpdate", + "description": "Creates or updates a Template Spec.", + "x-ms-examples": { + "TemplateSpecsCreateUpdate": { + "$ref": "./examples/TemplateSpecsCreate.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/TemplateSpecNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "templateSpec", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TemplateSpec" + }, + "description": "Template Spec supplied to the operation." + } + ], + "responses": { + "200": { + "description": "OK - The Template Spec update request has succeeded.", + "schema": { + "$ref": "#/definitions/TemplateSpec" + } + }, + "201": { + "description": "Template Spec created.", + "schema": { + "$ref": "#/definitions/TemplateSpec" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/TemplateSpecsError" + } + } + } + }, + "patch": { + "tags": [ + "TemplateSpecs" + ], + "operationId": "TemplateSpecs_Update", + "description": "Updates Template Spec tags with specified values.", + "x-ms-examples": { + "TemplateSpecsPatch": { + "$ref": "./examples/TemplateSpecsPatch.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/TemplateSpecNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "templateSpec", + "in": "body", + "schema": { + "$ref": "#/definitions/TemplateSpecUpdateModel" + }, + "description": "Template Spec resource with the tags to be updated." + } + ], + "responses": { + "200": { + "description": "OK -- Template Spec tags are updated.", + "schema": { + "$ref": "#/definitions/TemplateSpec" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/TemplateSpecsError" + } + } + } + }, + "get": { + "tags": [ + "TemplateSpecs" + ], + "operationId": "TemplateSpecs_Get", + "description": "Gets a Template Spec with a given name.", + "x-ms-examples": { + "TemplateSpecsGet": { + "$ref": "./examples/TemplateSpecsGet.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/TemplateSpecNameParameter" + }, + { + "$ref": "#/parameters/TemplateSpecExpandParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the Template Spec.", + "schema": { + "$ref": "#/definitions/TemplateSpec" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/TemplateSpecsError" + } + } + } + }, + "delete": { + "tags": [ + "TemplateSpecs" + ], + "operationId": "TemplateSpecs_Delete", + "description": "Deletes a Template Spec by name. When operation completes, status code 200 returned without content.", + "x-ms-examples": { + "TemplateSpecsDelete": { + "$ref": "./examples/TemplateSpecsDelete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/TemplateSpecNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Template Spec deleted." + }, + "204": { + "description": "Template Spec does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/TemplateSpecsError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/templateSpecs/": { + "get": { + "tags": [ + "TemplateSpecs" + ], + "operationId": "TemplateSpecs_ListBySubscription", + "description": "Lists all the Template Specs within the specified subscriptions.", + "x-ms-examples": { + "TemplatesSpecsListBySubscription": { + "$ref": "./examples/TemplateSpecsListBySubscription.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/TemplateSpecExpandParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of Template Specs.", + "schema": { + "$ref": "#/definitions/TemplateSpecsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/TemplateSpecsError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Resources/templateSpecs/": { + "get": { + "tags": [ + "TemplateSpecs" + ], + "operationId": "TemplateSpecs_ListByResourceGroup", + "description": "Lists all the Template Specs within the specified resource group.", + "x-ms-examples": { + "TemplateSpecsListByResourceGroup": { + "$ref": "./examples/TemplateSpecsListByResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/TemplateSpecExpandParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of Template Specs.", + "schema": { + "$ref": "#/definitions/TemplateSpecsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/TemplateSpecsError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Resources/templateSpecs/{templateSpecName}/versions/{templateSpecVersion}": { + "put": { + "tags": [ + "TemplateSpecVersions" + ], + "operationId": "TemplateSpecVersions_CreateOrUpdate", + "description": "Creates or updates a Template Spec version.", + "x-ms-examples": { + "TemplateSpecVersionsCreateUpdate": { + "$ref": "./examples/TemplateSpecVersionsCreate.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/TemplateSpecNameParameter" + }, + { + "$ref": "#/parameters/TemplateSpecVersionParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "templateSpecVersionModel", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TemplateSpecVersion" + }, + "description": "Template Spec Version supplied to the operation." + } + ], + "responses": { + "200": { + "description": "OK - The Template Spec Version has been successfully updated.", + "schema": { + "$ref": "#/definitions/TemplateSpecVersion" + } + }, + "201": { + "description": "Template Spec Version created.", + "schema": { + "$ref": "#/definitions/TemplateSpecVersion" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/TemplateSpecsError" + } + } + } + }, + "patch": { + "tags": [ + "TemplateSpecVersions" + ], + "operationId": "TemplateSpecVersions_Update", + "description": "Updates Template Spec Version tags with specified values.", + "x-ms-examples": { + "TemplateSpecsPatch": { + "$ref": "./examples/TemplateSpecVersionsPatch.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/TemplateSpecNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/TemplateSpecVersionParameter" + }, + { + "name": "templateSpecVersionUpdateModel", + "in": "body", + "schema": { + "$ref": "#/definitions/TemplateSpecVersionUpdateModel" + }, + "description": "Template Spec Version resource with the tags to be updated." + } + ], + "responses": { + "200": { + "description": "OK -- Template Spec Version tags are updated.", + "schema": { + "$ref": "#/definitions/TemplateSpecVersion" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/TemplateSpecsError" + } + } + } + }, + "get": { + "tags": [ + "TemplateSpecVersions" + ], + "operationId": "TemplateSpecVersions_Get", + "description": "Gets a Template Spec version from a specific Template Spec.", + "x-ms-examples": { + "TemplateSpecVersionsGet": { + "$ref": "./examples/TemplateSpecVersionsGet.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/TemplateSpecNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/TemplateSpecVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the Template Spec version.", + "schema": { + "$ref": "#/definitions/TemplateSpecVersion" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/TemplateSpecsError" + } + } + } + }, + "delete": { + "tags": [ + "TemplateSpecVersions" + ], + "operationId": "TemplateSpecVersions_Delete", + "description": "Deletes a specific version from a Template Spec. When operation completes, status code 200 returned without content.", + "x-ms-examples": { + "TemplateSpecVersionsDelete": { + "$ref": "./examples/TemplateSpecVersionsDelete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/TemplateSpecNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/TemplateSpecVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Template Spec Version deleted." + }, + "204": { + "description": "Template Spec Version does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/TemplateSpecsError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Resources/templateSpecs/{templateSpecName}/versions": { + "get": { + "tags": [ + "TemplateSpecVersions" + ], + "operationId": "TemplateSpecVersions_List", + "description": "Lists all the Template Spec versions in the specified Template Spec.", + "x-ms-examples": { + "TemplateSpecVersions_List": { + "$ref": "./examples/TemplateSpecVersionsList.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/TemplateSpecNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of Template Spec versions.", + "schema": { + "$ref": "#/definitions/TemplateSpecVersionsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/TemplateSpecsError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "TemplateSpec": { + "required": [ + "location" + ], + "type": "object", + "description": "Template Spec object.", + "allOf": [ + { + "$ref": "#/definitions/AzureResourceBase" + } + ], + "properties": { + "location": { + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ], + "description": "The location of the Template Spec. It cannot be changed after Template Spec creation. It must be one of the supported Azure locations." + }, + "properties": { + "description": "Template Spec properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/TemplateSpecProperties" + }, + "tags": { + "type": "object", + "description": "Resource tags.", + "additionalProperties": { + "type": "string" + } + } + } + }, + "TemplateSpecProperties": { + "type": "object", + "description": "Template Spec properties.", + "properties": { + "description": { + "type": "string", + "maxLength": 4096, + "description": "Template Spec description." + }, + "displayName": { + "type": "string", + "maxLength": 64, + "description": "Template Spec display name." + }, + "metadata": { + "type": "object", + "description": "The Template Spec metadata. Metadata is an open-ended object and is typically a collection of key-value pairs." + }, + "versions": { + "type": "object", + "readOnly": true, + "description": "High-level information about the versions within this Template Spec. The keys are the version names. Only populated if the $expand query parameter is set to 'versions'.", + "additionalProperties": { + "$ref": "#/definitions/TemplateSpecVersionInfo" + } + } + } + }, + "TemplateSpecsListResult": { + "description": "List of Template Specs.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/TemplateSpec" + }, + "description": "An array of Template Specs." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + } + }, + "TemplateSpecUpdateModel": { + "type": "object", + "description": "Template Spec properties to be updated (only tags are currently supported).", + "properties": { + "tags": { + "type": "object", + "description": "Resource tags.", + "additionalProperties": { + "type": "string" + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/AzureResourceBase" + } + ] + }, + "TemplateSpecVersionUpdateModel": { + "type": "object", + "description": "Template Spec Version properties to be updated (only tags are currently supported).", + "properties": { + "tags": { + "type": "object", + "description": "Resource tags.", + "additionalProperties": { + "type": "string" + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/AzureResourceBase" + } + ] + }, + "AzureResourceBase": { + "x-ms-azure-resource": true, + "type": "object", + "description": "Common properties for all Azure resources.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "String Id used to locate any resource on Azure." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Name of this resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of this resource." + }, + "systemData": { + "readOnly": true, + "type": "object", + "description": "Azure Resource Manager metadata containing createdBy and modifiedBy information.", + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/systemData" + } + } + }, + "TemplateSpecVersion": { + "required": [ + "properties", + "location" + ], + "type": "object", + "description": "Template Spec Version object.", + "allOf": [ + { + "$ref": "#/definitions/AzureResourceBase" + } + ], + "properties": { + "location": { + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ], + "description": "The location of the Template Spec Version. It must match the location of the parent Template Spec." + }, + "properties": { + "description": "Template Spec Version properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/TemplateSpecVersionProperties" + }, + "tags": { + "type": "object", + "description": "Resource tags.", + "additionalProperties": { + "type": "string" + } + } + } + }, + "TemplateSpecVersionProperties": { + "type": "object", + "description": "Template Spec Version properties.", + "properties": { + "description": { + "type": "string", + "maxLength": 4096, + "description": "Template Spec version description." + }, + "linkedTemplates": { + "type": "array", + "items": { + "$ref": "#/definitions/LinkedTemplateArtifact" + }, + "description": "An array of linked template artifacts." + }, + "metadata": { + "type": "object", + "description": "The version metadata. Metadata is an open-ended object and is typically a collection of key-value pairs." + }, + "mainTemplate": { + "type": "object", + "description": "The main Azure Resource Manager template content." + }, + "uiFormDefinition": { + "type": "object", + "description": "The Azure Resource Manager template UI definition content." + } + } + }, + "TemplateSpecVersionsListResult": { + "description": "List of Template Specs versions", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/TemplateSpecVersion" + }, + "description": "An array of Template Spec versions." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + } + }, + "LinkedTemplateArtifact": { + "type": "object", + "description": "Represents a Template Spec artifact containing an embedded Azure Resource Manager template for use as a linked template.", + "properties": { + "path": { + "type": "string", + "description": "A filesystem safe relative path of the artifact." + }, + "template": { + "type": "object", + "description": "The Azure Resource Manager template." + } + }, + "required": [ + "template", + "path" + ] + }, + "TemplateSpecVersionInfo": { + "type": "object", + "description": "High-level information about a Template Spec version.", + "properties": { + "description": { + "type": "string", + "readOnly": true, + "description": "Template Spec version description." + }, + "timeCreated": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The timestamp of when the version was created." + }, + "timeModified": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The timestamp of when the version was last modified." + } + } + }, + "TemplateSpecsError": { + "properties": { + "error": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "Template Specs error response." + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "client", + "description": "Subscription Id which forms part of the URI for every service call." + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90, + "x-ms-parameter-location": "method" + }, + "TemplateSpecNameParameter": { + "name": "templateSpecName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[-\\w\\._\\(\\)]+$", + "description": "Name of the Template Spec.", + "minLength": 1, + "maxLength": 90, + "x-ms-parameter-location": "method" + }, + "TemplateSpecVersionParameter": { + "name": "templateSpecVersion", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[-\\w\\._\\(\\)]+$", + "description": "The version of the Template Spec.", + "minLength": 1, + "maxLength": 90, + "x-ms-parameter-location": "method" + }, + "TemplateSpecExpandParameter": { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Allows for expansion of additional Template Spec details in the response. Optional.", + "x-ms-parameter-location": "method", + "enum": [ + "versions" + ], + "x-ms-enum": { + "name": "TemplateSpecExpandKind", + "modelAsString": true, + "values": [ + { + "value": "versions", + "description": "Includes version information with the Template Spec." + } + ] + } + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "x-ms-parameter-location": "client", + "description": "Client Api version." + } + } +} diff --git a/specification/resources/resource-manager/readme.azureresourceschema.md b/specification/resources/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 43615a3fc23d..000000000000 --- a/specification/resources/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,548 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-solutions-2020-08-21-preview - - tag: schema-solutions-2019-07-01 - - tag: schema-solutions-2018-06-01 - - tag: schema-solutions-2017-09-01 - - tag: schema-solutions-2016-09-01-preview - - tag: schema-resources-2020-10-01 - - tag: schema-resources-2020-08-01 - - tag: schema-resources-2020-06-01 - - tag: schema-resources-2020-01-01 - - tag: schema-resources-2019-11-01 - - tag: schema-resources-2019-10-01-preview - - tag: schema-resources-2019-10-01 - - tag: schema-resources-2019-08-01 - - tag: schema-resources-2019-07-01 - - tag: schema-resources-2019-06-01-preview - - tag: schema-resources-2019-06-01 - - tag: schema-resources-2019-05-10 - - tag: schema-resources-2019-05-01 - - tag: schema-resources-2019-03-01 - - tag: schema-resources-2018-06-01 - - tag: schema-resources-2018-05-01 - - tag: schema-resources-2018-02-01 - - tag: schema-resources-2017-05-10 - - tag: schema-resources-2016-09-01 - - tag: schema-resources-2016-07-01 - - tag: schema-resources-2016-06-01 - - tag: schema-resources-2016-02-01 - - tag: schema-resources-2015-11-01 - - tag: schema-features-2015-12-01 - - tag: schema-authorization-2020-09-01 - - tag: schema-authorization-2020-07-01-preview - - tag: schema-authorization-2020-03-01 - - tag: schema-authorization-2019-09-01 - - tag: schema-authorization-2019-06-01 - - tag: schema-authorization-2019-01-01 - - tag: schema-authorization-2018-05-01 - - tag: schema-authorization-2018-03-01 - - tag: schema-authorization-2017-06-01-preview - - tag: schema-authorization-2016-12-01 - - tag: schema-authorization-2016-09-01 - - tag: schema-authorization-2016-04-01 - - tag: schema-authorization-2015-10-01-preview - - tag: schema-authorization-2015-01-01 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-solutions-2020-08-21-preview and azureresourceschema - -``` yaml $(tag) == 'schema-solutions-2020-08-21-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Solutions/preview/2020-08-21-preview/managedapplications.json - -``` - -### Tag: schema-solutions-2019-07-01 and azureresourceschema - -``` yaml $(tag) == 'schema-solutions-2019-07-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Solutions/stable/2019-07-01/managedapplications.json - -``` - -### Tag: schema-solutions-2018-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-solutions-2018-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Solutions/stable/2018-06-01/managedapplications.json - -``` - -### Tag: schema-solutions-2017-09-01 and azureresourceschema - -``` yaml $(tag) == 'schema-solutions-2017-09-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Solutions/stable/2017-09-01/managedapplications.json - -``` - -### Tag: schema-solutions-2016-09-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-solutions-2016-09-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Solutions/preview/2016-09-01-preview/managedapplications.json - -``` - -### Tag: schema-resources-2020-10-01 and azureresourceschema - -``` yaml $(tag) == 'schema-resources-2020-10-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Resources/stable/2020-10-01/resources.json - - Microsoft.Resources/stable/2020-10-01/deploymentScripts.json - -``` - -### Tag: schema-resources-2020-08-01 and azureresourceschema - -``` yaml $(tag) == 'schema-resources-2020-08-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Resources/stable/2020-08-01/resources.json - -``` - -### Tag: schema-resources-2020-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-resources-2020-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Resources/stable/2020-06-01/resources.json - -``` - -### Tag: schema-resources-2020-01-01 and azureresourceschema - -``` yaml $(tag) == 'schema-resources-2020-01-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Resources/stable/2020-01-01/subscriptions.json - -``` - -### Tag: schema-resources-2019-11-01 and azureresourceschema - -``` yaml $(tag) == 'schema-resources-2019-11-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Resources/stable/2019-11-01/subscriptions.json - -``` - -### Tag: schema-resources-2019-10-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-resources-2019-10-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Resources/preview/2019-10-01-preview/deploymentScripts.json - -``` - -### Tag: schema-resources-2019-10-01 and azureresourceschema - -``` yaml $(tag) == 'schema-resources-2019-10-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Resources/stable/2019-10-01/resources.json - -``` - -### Tag: schema-resources-2019-08-01 and azureresourceschema - -``` yaml $(tag) == 'schema-resources-2019-08-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Resources/stable/2019-08-01/resources.json - -``` - -### Tag: schema-resources-2019-07-01 and azureresourceschema - -``` yaml $(tag) == 'schema-resources-2019-07-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Resources/stable/2019-07-01/resources.json - -``` - -### Tag: schema-resources-2019-06-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-resources-2019-06-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Resources/preview/2019-06-01-preview/templateSpecs.json - -``` - -### Tag: schema-resources-2019-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-resources-2019-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Resources/stable/2019-06-01/subscriptions.json - -``` - -### Tag: schema-resources-2019-05-10 and azureresourceschema - -``` yaml $(tag) == 'schema-resources-2019-05-10' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Resources/stable/2019-05-10/resources.json - -``` - -### Tag: schema-resources-2019-05-01 and azureresourceschema - -``` yaml $(tag) == 'schema-resources-2019-05-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Resources/stable/2019-05-01/resources.json - -``` - -### Tag: schema-resources-2019-03-01 and azureresourceschema - -``` yaml $(tag) == 'schema-resources-2019-03-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Resources/stable/2019-03-01/resources.json - -``` - -### Tag: schema-resources-2018-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-resources-2018-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Resources/stable/2018-06-01/subscriptions.json - -``` - -### Tag: schema-resources-2018-05-01 and azureresourceschema - -``` yaml $(tag) == 'schema-resources-2018-05-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Resources/stable/2018-05-01/resources.json - -``` - -### Tag: schema-resources-2018-02-01 and azureresourceschema - -``` yaml $(tag) == 'schema-resources-2018-02-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Resources/stable/2018-02-01/resources.json - -``` - -### Tag: schema-resources-2017-05-10 and azureresourceschema - -``` yaml $(tag) == 'schema-resources-2017-05-10' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Resources/stable/2017-05-10/resources.json - -``` - -### Tag: schema-resources-2016-09-01 and azureresourceschema - -``` yaml $(tag) == 'schema-resources-2016-09-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Resources/stable/2016-09-01/resources.json - - Microsoft.Resources/stable/2016-09-01/links.json - -``` - -### Tag: schema-resources-2016-07-01 and azureresourceschema - -``` yaml $(tag) == 'schema-resources-2016-07-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Resources/stable/2016-07-01/resources.json - -``` - -### Tag: schema-resources-2016-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-resources-2016-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Resources/stable/2016-06-01/subscriptions.json - -``` - -### Tag: schema-resources-2016-02-01 and azureresourceschema - -``` yaml $(tag) == 'schema-resources-2016-02-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Resources/stable/2016-02-01/resources.json - -``` - -### Tag: schema-resources-2015-11-01 and azureresourceschema - -``` yaml $(tag) == 'schema-resources-2015-11-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Resources/stable/2015-11-01/resources.json - - Microsoft.Resources/stable/2015-11-01/subscriptions.json - -``` - -### Tag: schema-features-2015-12-01 and azureresourceschema - -``` yaml $(tag) == 'schema-features-2015-12-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Features/stable/2015-12-01/features.json - -``` - -### Tag: schema-authorization-2020-09-01 and azureresourceschema - -``` yaml $(tag) == 'schema-authorization-2020-09-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Authorization/stable/2020-09-01/dataPolicyManifests.json - - Microsoft.Authorization/stable/2020-09-01/policyAssignments.json - - Microsoft.Authorization/stable/2020-09-01/policyDefinitions.json - - Microsoft.Authorization/stable/2020-09-01/policySetDefinitions.json - -``` - -### Tag: schema-authorization-2020-07-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-authorization-2020-07-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Authorization/preview/2020-07-01-preview/policyExemptions.json - -``` - -### Tag: schema-authorization-2020-03-01 and azureresourceschema - -``` yaml $(tag) == 'schema-authorization-2020-03-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Authorization/stable/2020-03-01/policyAssignments.json - - Microsoft.Authorization/stable/2020-03-01/policyDefinitions.json - - Microsoft.Authorization/stable/2020-03-01/policySetDefinitions.json - -``` - -### Tag: schema-authorization-2019-09-01 and azureresourceschema - -``` yaml $(tag) == 'schema-authorization-2019-09-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Authorization/stable/2019-09-01/policyAssignments.json - - Microsoft.Authorization/stable/2019-09-01/policyDefinitions.json - - Microsoft.Authorization/stable/2019-09-01/policySetDefinitions.json - -``` - -### Tag: schema-authorization-2019-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-authorization-2019-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Authorization/stable/2019-06-01/policyAssignments.json - - Microsoft.Authorization/stable/2019-06-01/policyDefinitions.json - - Microsoft.Authorization/stable/2019-06-01/policySetDefinitions.json - -``` - -### Tag: schema-authorization-2019-01-01 and azureresourceschema - -``` yaml $(tag) == 'schema-authorization-2019-01-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Authorization/stable/2019-01-01/policyAssignments.json - - Microsoft.Authorization/stable/2019-01-01/policyDefinitions.json - - Microsoft.Authorization/stable/2019-01-01/policySetDefinitions.json - -``` - -### Tag: schema-authorization-2018-05-01 and azureresourceschema - -``` yaml $(tag) == 'schema-authorization-2018-05-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Authorization/stable/2018-05-01/policyAssignments.json - - Microsoft.Authorization/stable/2018-05-01/policyDefinitions.json - - Microsoft.Authorization/stable/2018-05-01/policySetDefinitions.json - -``` - -### Tag: schema-authorization-2018-03-01 and azureresourceschema - -``` yaml $(tag) == 'schema-authorization-2018-03-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Authorization/stable/2018-03-01/policyAssignments.json - - Microsoft.Authorization/stable/2018-03-01/policyDefinitions.json - - Microsoft.Authorization/stable/2018-03-01/policySetDefinitions.json - -``` - -### Tag: schema-authorization-2017-06-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-authorization-2017-06-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Authorization/preview/2017-06-01-preview/policyAssignments.json - - Microsoft.Authorization/preview/2017-06-01-preview/policySetDefinitions.json - -``` - -### Tag: schema-authorization-2016-12-01 and azureresourceschema - -``` yaml $(tag) == 'schema-authorization-2016-12-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Authorization/stable/2016-12-01/policyDefinitions.json - - Microsoft.Authorization/stable/2016-12-01/policyAssignments.json - -``` - -### Tag: schema-authorization-2016-09-01 and azureresourceschema - -``` yaml $(tag) == 'schema-authorization-2016-09-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Authorization/stable/2016-09-01/locks.json - -``` - -### Tag: schema-authorization-2016-04-01 and azureresourceschema - -``` yaml $(tag) == 'schema-authorization-2016-04-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Authorization/stable/2016-04-01/policy.json - -``` - -### Tag: schema-authorization-2015-10-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-authorization-2015-10-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Authorization/preview/2015-10-01-preview/policy.json - -``` - -### Tag: schema-authorization-2015-01-01 and azureresourceschema - -``` yaml $(tag) == 'schema-authorization-2015-01-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Authorization/stable/2015-01-01/locks.json - -``` diff --git a/specification/resources/resource-manager/readme.go.md b/specification/resources/resource-manager/readme.go.md index ea5ab26b6333..e84d09cd6eb4 100644 --- a/specification/resources/resource-manager/readme.go.md +++ b/specification/resources/resource-manager/readme.go.md @@ -12,12 +12,20 @@ directive: reason: Necessary to match Unicode characters in the Go regexp engine. ``` -``` yaml $(go) +``` yaml $(go) && !$(track2) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION clear-output-folder: true ``` +``` yaml $(go) && $(package-resources) && $(track2) +license-header: MICROSOFT_MIT_NO_VERSION +module-name: sdk/resources/armresources +module: github.com/Azure/azure-sdk-for-go/$(module-name) +output-folder: $(go-sdk-folder)/$(module-name) +azure-arm: true +``` + ### Go multi-api ``` yaml $(go) && $(multiapi) @@ -37,6 +45,7 @@ batch: - tag: package-policy-2016-12 - tag: package-policy-2016-04 - tag: package-policy-2015-10 + - tag: package-resources-2021-01 - tag: package-resources-2020-10 - tag: package-resources-2020-06 - tag: package-resources-2019-10 @@ -49,6 +58,7 @@ batch: - tag: package-resources-2016-07 - tag: package-resources-2016-02 - tag: package-resources-2015-11 + - tag: package-subscriptions-2021-01 - tag: package-subscriptions-2019-11 - tag: package-subscriptions-2019-06 - tag: package-subscriptions-2018-06 @@ -222,6 +232,16 @@ namespace: policy output-folder: $(go-sdk-folder)/services/preview/resources/mgmt/2015-10-01-preview/policy ``` +### Tag: package-resources-2021-01 and go + +These settings apply only when `--tag=package-resources-2021-01 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-resources-2021-01' && $(go) +namespace: resources +output-folder: $(go-sdk-folder)/services/resources/mgmt/2021-01-01/resources +``` + ### Tag: package-resources-2020-10 and go These settings apply only when `--tag=package-resources-2020-10 --go` is specified on the command line. @@ -342,6 +362,16 @@ namespace: resources output-folder: $(go-sdk-folder)/services/resources/mgmt/2015-11-01/resources ``` +### Tag: package-subscriptions-2021-01 and go + +These settings apply only when `--tag=package-subscriptions-2021-01 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-subscriptions-2021-01' && $(go) +namespace: subscriptions +output-folder: $(go-sdk-folder)/services/resources/mgmt/2021-01-01/subscriptions +``` + ### Tag: package-subscriptions-2019-11 and go These settings apply only when `--tag=package-subscriptions-2019-11 --go` is specified on the command line. diff --git a/specification/resources/resource-manager/readme.md b/specification/resources/resource-manager/readme.md index 4739620a69db..56a878d78930 100644 --- a/specification/resources/resource-manager/readme.md +++ b/specification/resources/resource-manager/readme.md @@ -41,11 +41,11 @@ tag: package-policy-2020-09 ``` ``` yaml $(package-resources) -tag: package-resources-2020-10 +tag: package-resources-2021-04 ``` ``` yaml $(package-subscriptions) -tag: package-subscriptions-2019-11 +tag: package-subscriptions-2021-01 ``` ``` yaml $(package-links) @@ -61,16 +61,16 @@ tag: package-deploymentscripts-2020-10 ``` ``` yaml $(package-templatespecs) -tag: package-templatespecs-2019-06-preview +tag: package-templatespecs-2021-03-preview ``` -### Tag: package-resources-2020-10 +### Tag: package-resources-2021-04 -These settings apply only when `--tag=package-resources-2020-10` is specified on the command line. +These settings apply only when `--tag=package-resources-2021-04` is specified on the command line. -``` yaml $(tag) == 'package-resources-2020-10' +``` yaml $(tag) == 'package-resources-2021-04' input-file: -- Microsoft.Resources/stable/2020-10-01/resources.json +- Microsoft.Resources/stable/2021-04-01/resources.json ``` ### Tag: package-policy-2020-09 @@ -99,24 +99,17 @@ input-file: - Microsoft.Solutions/preview/2020-08-21-preview/managedapplications.json ``` -### Tag: package-resources-2020-08 -These settings apply only when `--tag=package-resources-2020-08` is specified on the command line. +### Tag: package-subscriptions-2021-01 -``` yaml $(tag) == 'package-resources-2020-08' -input-file: - - Microsoft.Resources/stable/2020-08-01/resources.json -``` - -### Tag: package-subscriptions-2020-01 +These settings apply only when `--tag=package-subscriptions-2021-01` is specified on the command line. -These settings apply only when `--tag=package-subscriptions-2020-01` is specified on the command line. - -``` yaml $(tag) == 'package-subscriptions-2020-01' +``` yaml $(tag) == 'package-subscriptions-2021-01' input-file: - - Microsoft.Resources/stable/2020-01-01/subscriptions.json +- Microsoft.Resources/stable/2021-01-01/subscriptions.json ``` + ### Tag: package-deploymentscripts-2020-10 These settings apply only when `--tag=package-deploymentscripts-2020-10` is specified on the command line. @@ -282,6 +275,24 @@ override-info: title: PolicyClient ``` +### Tag: package-templatespecs-2021-05 + +These settings apply only when `--tag=package-templatespecs-2021-05` is specified on the command line. + +``` yaml $(tag) == 'package-templatespecs-2021-05' +input-file: +- Microsoft.Resources/stable/2021-05-01/templateSpecs.json +``` + +### Tag: package-templatespecs-2021-03-preview + +These settings apply only when `--tag=package-templatespecs-2021-03-preview` is specified on the command line. + +``` yaml $(tag) == 'package-templatespecs-2021-03-preview' +input-file: +- Microsoft.Resources/preview/2021-03-01-preview/templateSpecs.json +``` + ### Tag: package-templatespecs-2019-06-preview These settings apply only when `--tag=package-templatespecs-2019-06-preview` is specified on the command line. @@ -323,6 +334,33 @@ input-file: - Microsoft.Authorization/preview/2015-10-01-preview/policy.json ``` +### Tag: package-resources-2021-01 + +These settings apply only when `--tag=package-resources-2021-01` is specified on the command line. + +``` yaml $(tag) == 'package-resources-2021-01' +input-file: +- Microsoft.Resources/stable/2021-01-01/resources.json +``` + +### Tag: package-resources-2020-10 + +These settings apply only when `--tag=package-resources-2020-10` is specified on the command line. + +``` yaml $(tag) == 'package-resources-2020-10' +input-file: + - Microsoft.Resources/stable/2020-10-01/resources.json +``` + +### Tag: package-resources-2020-08 + +These settings apply only when `--tag=package-resources-2020-08` is specified on the command line. + +``` yaml $(tag) == 'package-resources-2020-08' +input-file: + - Microsoft.Resources/stable/2020-08-01/resources.json +``` + ### Tag: package-resources-2020-06 These settings apply only when `--tag=package-resources-2020-06` is specified on the command line. @@ -449,6 +487,15 @@ input-file: - Microsoft.Resources/stable/2015-11-01/resources.json ``` +### Tag: package-subscriptions-2020-01 + +These settings apply only when `--tag=package-subscriptions-2020-01` is specified on the command line. + +``` yaml $(tag) == 'package-subscriptions-2020-01' +input-file: + - Microsoft.Resources/stable/2020-01-01/subscriptions.json +``` + ### Tag: package-subscriptions-2019-11 These settings apply only when `--tag=package-subscriptions-2019-11` is specified on the command line. @@ -738,9 +785,10 @@ swagger-to-sdk: - repo: azure-sdk-for-node - repo: azure-sdk-for-js - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js resources/resource-manager ``` +## Python + +See configuration in [readme.python.md](./readme.python.md) ## Go @@ -784,6 +832,4 @@ override-info: title: PolicyClient ``` -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/resources/resource-manager/readme.python.md b/specification/resources/resource-manager/readme.python.md index bd569ac43e98..2be524003445 100644 --- a/specification/resources/resource-manager/readme.python.md +++ b/specification/resources/resource-manager/readme.python.md @@ -9,6 +9,7 @@ python: package-name: azure-mgmt-resource payload-flattening-threshold: 2 clear-output-folder: true + package-version: 1.0.0b1 no-namespace-folders: true verbose: true debug: true @@ -18,6 +19,7 @@ python: azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION package-name: azure-mgmt-resource +package-version: 1.0.0b1 no-namespace-folders: true ``` @@ -25,6 +27,7 @@ no-namespace-folders: true Generate all API versions currently shipped for this package + ```yaml $(multiapi) && !$(track2) batch: - tag: package-features-2015-12 @@ -35,13 +38,15 @@ batch: - tag: package-policy-2020-09 - tag: package-policy-2019-09 - tag: package-policy-2019-06 - - tag: package-policy-2019-01 + - tag: package-policy-2019-01 - tag: package-policy-2018-05 - tag: package-policy-2018-03 - tag: package-policy-2017-06 - tag: package-policy-2016-12 - tag: package-policy-2016-04 - tag: package-policy-2015-10 + - tag: package-resources-2021-04 + - tag: package-resources-2021-01 - tag: package-resources-2020-10 - tag: package-resources-2020-06 - tag: package-resources-2019-10 @@ -60,8 +65,10 @@ batch: - tag: package-subscriptions-2018-06 - tag: package-subscriptions-2016-06 - tag: package-deploymentscripts-2020-10 - - tag: package-deploymentscripts-2019-10-preview - - tag: package-templatespecs-2019-06-preview + - tag: package-deploymentscripts-2019-10-preview + - tag: package-templatespecs-2021-05 + - tag: package-templatespecs-2021-03-preview + - tag: package-templatespecs-2019-06-preview ``` ```yaml $(multiapi) && $(track2) @@ -78,7 +85,7 @@ batch: - tag: package-policy-2020-09 - tag: package-policy-2019-09 - tag: package-policy-2019-06 - - tag: package-policy-2019-01 + - tag: package-policy-2019-01 - tag: package-policy-2018-05 - tag: package-policy-2018-03 - tag: package-policy-2017-06 @@ -86,6 +93,8 @@ batch: - tag: package-policy-2016-04 - tag: package-policy-2015-10 - multiapiscript-policy: true + - tag: package-resources-2021-04 + - tag: package-resources-2021-01 - tag: package-resources-2020-10 - tag: package-resources-2020-06 - tag: package-resources-2019-10 @@ -106,13 +115,16 @@ batch: - tag: package-subscriptions-2016-06 - multiapiscript-subscriptions: true - tag: package-deploymentscripts-2020-10 - - tag: package-deploymentscripts-2019-10-preview + - tag: package-deploymentscripts-2019-10-preview - multiapiscript-deploymentscripts: true - - tag: package-templatespecs-2019-06-preview + - tag: package-templatespecs-2021-05 + - tag: package-templatespecs-2021-03-preview + - tag: package-templatespecs-2019-06-preview - multiapiscript-templatespecs: true ``` ```yaml $(multiapiscript-features) +package-name: azure-mgmt-resource#features multiapiscript: true output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/features clear-output-folder: false @@ -120,6 +132,7 @@ perform-load: false ``` ```yaml $(multiapiscript-policy) +package-name: azure-mgmt-resource#policy multiapiscript: true output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/policy clear-output-folder: false @@ -127,6 +140,7 @@ perform-load: false ``` ```yaml $(multiapiscript-resources) +package-name: azure-mgmt-resource#resources multiapiscript: true output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/resources clear-output-folder: false @@ -134,6 +148,7 @@ perform-load: false ``` ```yaml $(multiapiscript-subscriptions) +package-name: azure-mgmt-resource#subscriptions multiapiscript: true output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/subscriptions clear-output-folder: false @@ -141,6 +156,7 @@ perform-load: false ``` ```yaml $(multiapiscript-deploymentscripts) +package-name: azure-mgmt-resource#deploymentscripts multiapiscript: true output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/deploymentscripts clear-output-folder: false @@ -149,6 +165,7 @@ perform-load: false ```yaml $(multiapiscript-templatespecs) +package-name: azure-mgmt-resource#templatespecs multiapiscript: true output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/templatespecs clear-output-folder: false @@ -157,6 +174,7 @@ perform-load: false ```yaml $(multiapiscript-locks) +package-name: azure-mgmt-resource#locks multiapiscript: true output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/locks clear-output-folder: false @@ -164,6 +182,7 @@ perform-load: false ``` ```yaml $(multiapiscript-links) +package-name: azure-mgmt-resource#links multiapiscript: true output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/links clear-output-folder: false @@ -364,6 +383,33 @@ python: namespace: azure.mgmt.resource.policy.v2015_10_01_preview output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/policy/v2015_10_01_preview ``` + +### Tag: package-resources-2021-04 and python + +These settings apply only when `--tag=package-resources-2021-04 --python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-resources-2021-04' +namespace: azure.mgmt.resource.resources.v2021_04_01 +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/resources/v2021_04_01 +python: + namespace: azure.mgmt.resource.resources.v2021_04_01 + output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/resources/v2021_04_01 +``` + +### Tag: package-resources-2021-01 and python + +These settings apply only when `--tag=package-resources-2021-01 --python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-resources-2021-01' +namespace: azure.mgmt.resource.resources.v2021_01_01 +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/resources/v2021_01_01 +python: + namespace: azure.mgmt.resource.resources.v2021_01_01 + output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/resources/v2021_01_01 +``` + ### Tag: package-resources-2020-10 and python These settings apply only when `--tag=package-resources-2020-10 --python` is specified on the command line. @@ -623,3 +669,29 @@ python: namespace: azure.mgmt.resource.templatespecs.v2019_06_01_preview output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/templatespecs/v2019_06_01_preview ``` + +### Tag: package-templatespecs-2021-03-preview and python + +These settings apply only when `--tag=package-templatespecs-2021-03-preview` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-templatespecs-2021-03-preview' +namespace: azure.mgmt.resource.templatespecs.v2021_03_01_preview +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/templatespecs/v2021_03_01_preview +python: + namespace: azure.mgmt.resource.templatespecs.v2021_03_01_preview + output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/templatespecs/v2021_03_01_preview +``` + +### Tag: package-templatespecs-2021-05 and python + +These settings apply only when `--tag=package-templatespecs-2021-05` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-templatespecs-2021-05' +namespace: azure.mgmt.resource.templatespecs.v2021_05_01 +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/templatespecs/v2021_05_01 +python: + namespace: azure.mgmt.resource.templatespecs.v2021_05_01 + output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/templatespecs/v2021_05_01 +``` \ No newline at end of file diff --git a/specification/saas/resource-manager/readme.azureresourceschema.md b/specification/saas/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 2ed4e21a2173..000000000000 --- a/specification/saas/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,12 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: [] - -``` - -Please also specify `--azureresourceschema-folder=`. diff --git a/specification/saas/resource-manager/readme.go.md b/specification/saas/resource-manager/readme.go.md index ffda2af79735..3b7c23350efa 100644 --- a/specification/saas/resource-manager/readme.go.md +++ b/specification/saas/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ```yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION clear-output-folder: true ``` diff --git a/specification/scheduler/resource-manager/readme.azureresourceschema.md b/specification/scheduler/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 623238bb5d07..000000000000 --- a/specification/scheduler/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,48 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-scheduler-2016-03-01 - - tag: schema-scheduler-2016-01-01 - - tag: schema-scheduler-2014-08-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-scheduler-2016-03-01 and azureresourceschema - -``` yaml $(tag) == 'schema-scheduler-2016-03-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Scheduler/stable/2016-03-01/scheduler.json - -``` - -### Tag: schema-scheduler-2016-01-01 and azureresourceschema - -``` yaml $(tag) == 'schema-scheduler-2016-01-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Scheduler/stable/2016-01-01/scheduler.json - -``` - -### Tag: schema-scheduler-2014-08-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-scheduler-2014-08-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Scheduler/preview/2014-08-01-preview/scheduler.json - -``` diff --git a/specification/scheduler/resource-manager/readme.go.md b/specification/scheduler/resource-manager/readme.go.md index 22734f446845..1e30d8c16630 100644 --- a/specification/scheduler/resource-manager/readme.go.md +++ b/specification/scheduler/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: scheduler clear-output-folder: true ``` diff --git a/specification/scheduler/resource-manager/readme.md b/specification/scheduler/resource-manager/readme.md index cd522a6ae448..05a09f91762f 100644 --- a/specification/scheduler/resource-manager/readme.md +++ b/specification/scheduler/resource-manager/readme.md @@ -77,8 +77,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_scheduler'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js scheduler/resource-manager ``` @@ -206,7 +204,5 @@ generate-interface: true -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceCreateSkillset.json b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceCreateSkillset.json index e3335335eeba..c81b171f3c3d 100644 --- a/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceCreateSkillset.json +++ b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceCreateSkillset.json @@ -109,7 +109,53 @@ ], "httpHeaders": {} } - ] + ], + "knowledgeStore": { + "storageConnectionString": "DefaultEndpointsProtocol=https;AccountName=myStorage;AccountKey=myStorageKey;EndpointSuffix=core.windows.net", + "projections": [ + { + "tables": [ + { + "tableName": "Reviews", + "generatedKeyName": "ReviewId", + "source": "/document/Review", + "sourceContext": null, + "inputs": [] + }, + { + "tableName": "Sentences", + "generatedKeyName": "SentenceId", + "source": "/document/Review/Sentences/*", + "sourceContext": null, + "inputs": [] + }, + { + "tableName": "KeyPhrases", + "generatedKeyName": "KeyPhraseId", + "source": "/document/Review/Sentences/*/KeyPhrases", + "sourceContext": null, + "inputs": [] + }, + { + "tableName": "Entities", + "generatedKeyName": "EntityId", + "source": "/document/Review/Sentences/*/Entities/*", + "sourceContext": null, + "inputs": [] + } + ] + }, + { + "objects": [ + { + "storageContainer": "Reviews", + "source": "/document/Review", + "generatedKeyName": "/document/Review/Id" + } + ] + } + ] + } } }, "responses": { diff --git a/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/searchservice.json b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/searchservice.json index b38d48f31401..9fcf384738fb 100644 --- a/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/searchservice.json +++ b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/searchservice.json @@ -6822,6 +6822,10 @@ "$ref": "#/definitions/CognitiveServicesAccount", "description": "Details about cognitive services to be used when running skills." }, + "knowledgeStore": { + "$ref": "#/definitions/SearchIndexerKnowledgeStore", + "description": "Definition of additional projections to azure blob, table, or files, of enriched data." + }, "@odata.etag": { "x-ms-client-name": "ETag", "type": "string", @@ -6881,6 +6885,138 @@ "key" ] }, + "SearchIndexerKnowledgeStore": { + "properties": { + "storageConnectionString": { + "type": "string", + "description": "The connection string to the storage account projections will be stored in." + }, + "projections": { + "type": "array", + "items": { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreProjection", + "x-nullable": false + }, + "description": "A list of additional projections to perform during indexing." + } + }, + "required": [ + "storageConnectionString", + "projections" + ], + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/knowledge-store-projection-overview" + }, + "description": "Definition of additional projections to azure blob, table, or files, of enriched data." + }, + "SearchIndexerKnowledgeStoreProjection": { + "properties": { + "tables": { + "type": "array", + "items": { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreTableProjectionSelector", + "x-nullable": false + }, + "description": "Projections to Azure Table storage." + }, + "objects": { + "type": "array", + "items": { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreObjectProjectionSelector", + "x-nullable": false + }, + "description": "Projections to Azure Blob storage." + }, + "files": { + "type": "array", + "items": { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreFileProjectionSelector", + "x-nullable": false + }, + "description": "Projections to Azure File storage." + } + }, + "description": "Container object for various projection selectors." + }, + "SearchIndexerKnowledgeStoreProjectionSelector": { + "properties": { + "referenceKeyName": { + "type": "string", + "description": "Name of reference key to different projection." + }, + "generatedKeyName": { + "type": "string", + "description": "Name of generated key to store projection under." + }, + "source": { + "type": "string", + "description": "Source data to project." + }, + "sourceContext": { + "type": "string", + "description": "Source context for complex projections." + }, + "inputs": { + "type": "array", + "items": { + "$ref": "#/definitions/InputFieldMappingEntry" + }, + "description": "Nested inputs for complex projections." + } + }, + "description": "Abstract class to share properties between concrete selectors." + }, + "SearchIndexerKnowledgeStoreBlobProjectionSelector": { + "properties": { + "storageContainer": { + "type": "string", + "description": "Blob container to store projections in." + } + }, + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreProjectionSelector" + } + ], + "required": [ + "storageContainer" + ], + "description": "Abstract class to share properties between concrete selectors." + }, + "SearchIndexerKnowledgeStoreTableProjectionSelector": { + "properties": { + "tableName": { + "type": "string", + "description": "Name of the Azure table to store projected data in." + } + }, + "required": [ + "generatedKeyName", + "tableName" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreProjectionSelector" + } + ], + "description": "Description for what data to store in Azure Tables." + }, + "SearchIndexerKnowledgeStoreObjectProjectionSelector": { + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreBlobProjectionSelector" + } + ], + "description": "Projection definition for what data to store in Azure Blob." + }, + "SearchIndexerKnowledgeStoreFileProjectionSelector": { + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreBlobProjectionSelector" + } + ], + "description": "Projection definition for what data to store in Azure Files." + }, "SearchIndexerSkill": { "discriminator": "@odata.type", "properties": { @@ -8518,8 +8654,7 @@ "indexersCount", "dataSourcesCount", "storageSize", - "synonymMaps", - "skillsetCount" + "synonymMaps" ], "description": "Represents service-level resource counters and quotas." }, diff --git a/specification/search/data-plane/Azure.Search/preview/2020-06-30-Preview/examples/SearchServiceCreateSkillset.json b/specification/search/data-plane/Azure.Search/preview/2020-06-30-Preview/examples/SearchServiceCreateSkillset.json index f5add28c77ae..04824a8cff6c 100644 --- a/specification/search/data-plane/Azure.Search/preview/2020-06-30-Preview/examples/SearchServiceCreateSkillset.json +++ b/specification/search/data-plane/Azure.Search/preview/2020-06-30-Preview/examples/SearchServiceCreateSkillset.json @@ -110,6 +110,52 @@ "httpHeaders": {} } ], + "knowledgeStore": { + "storageConnectionString": "DefaultEndpointsProtocol=https;AccountName=myStorage;AccountKey=myStorageKey;EndpointSuffix=core.windows.net", + "projections": [ + { + "tables": [ + { + "tableName": "Reviews", + "generatedKeyName": "ReviewId", + "source": "/document/Review", + "sourceContext": null, + "inputs": [] + }, + { + "tableName": "Sentences", + "generatedKeyName": "SentenceId", + "source": "/document/Review/Sentences/*", + "sourceContext": null, + "inputs": [] + }, + { + "tableName": "KeyPhrases", + "generatedKeyName": "KeyPhraseId", + "source": "/document/Review/Sentences/*/KeyPhrases", + "sourceContext": null, + "inputs": [] + }, + { + "tableName": "Entities", + "generatedKeyName": "EntityId", + "source": "/document/Review/Sentences/*/Entities/*", + "sourceContext": null, + "inputs": [] + } + ] + }, + { + "objects": [ + { + "storageContainer": "Reviews", + "source": "/document/Review", + "generatedKeyName": "/document/Review/Id" + } + ] + } + ] + }, "encryptionKey": { "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", diff --git a/specification/search/data-plane/Azure.Search/preview/2020-06-30-Preview/searchindex.json b/specification/search/data-plane/Azure.Search/preview/2020-06-30-Preview/searchindex.json index 8f2ac132dd62..49a958560e5c 100644 --- a/specification/search/data-plane/Azure.Search/preview/2020-06-30-Preview/searchindex.json +++ b/specification/search/data-plane/Azure.Search/preview/2020-06-30-Preview/searchindex.json @@ -186,7 +186,8 @@ "type": "string", "enum": [ "simple", - "full" + "full", + "semantic" ], "x-ms-enum": { "name": "QueryType", @@ -201,6 +202,11 @@ "value": "full", "name": "Full", "description": "Uses the full Lucene query syntax for searches. Search text is interpreted using the Lucene query language which allows field-specific and weighted searches, as well as other advanced features." + }, + { + "value": "semantic", + "name": "Semantic", + "description": "Best suited for queries expressed in natural language as opposed to keywords. Improves precision of search results by re-ranking the top search results using a ranking model trained on the Web corpus." } ] }, @@ -245,6 +251,93 @@ "name": "SearchOptions" } }, + { + "name": "queryLanguage", + "in": "query", + "type": "string", + "enum": [ + "none", + "en-us" + ], + "x-ms-enum": { + "name": "QueryLanguage", + "modelAsString": true, + "values": [ + { + "value": "none", + "name": "None", + "description": "Query language not specified." + }, + { + "value": "en-us", + "name": "EnUs", + "description": "English (US)" + } + ] + }, + "description": "The language of the query.", + "x-ms-parameter-grouping": { + "name": "SearchOptions" + } + }, + { + "name": "speller", + "in": "query", + "type": "string", + "enum": [ + "none", + "lexicon" + ], + "x-ms-enum": { + "name": "Speller", + "modelAsString": true, + "values": [ + { + "value": "none", + "name": "None", + "description": "Speller not enabled." + }, + { + "value": "lexicon", + "name": "Lexicon", + "description": "Speller corrects individual query terms using a static lexicon for the language specified by the queryLanguage parameter." + } + ] + }, + "description": "Improve search recall by spell-correcting individual search query terms.", + "x-ms-parameter-grouping": { + "name": "SearchOptions" + } + }, + { + "name": "answers", + "in": "query", + "type": "string", + "enum": [ + "none", + "extractive" + ], + "x-ms-enum": { + "name": "Answers", + "modelAsString": true, + "values": [ + { + "value": "none", + "name": "None", + "description": "Do not return answers for the query." + }, + { + "value": "extractive", + "name": "Extractive", + "description": "Extracts answer candidates from the contents of the documents returned in response to a query expressed as a question in natural language." + } + ] + }, + "description": "This parameter is only valid if the query type is 'semantic'. If set, the query returns answers extracted from key passages in the highest ranked documents. The number of answers returned can be configured by appending the pipe character '|' followed by the 'count-' option after the answers parameter value, such as 'extractive|count-3'. Default count is 1.", + "x-ms-parameter-grouping": { + "name": "SearchOptions" + } + }, { "name": "searchMode", "in": "query", @@ -992,6 +1085,51 @@ "additionalProperties": true, "description": "A single bucket of a facet query result. Reports the number of documents with a field value falling within a particular range or having a particular value or interval." }, + "AnswerResult": { + "properties": { + "score": { + "type": "number", + "format": "double", + "readOnly": true, + "description": "The score value represents how relevant the answer is to the the query relative to other answers returned for the query." + }, + "key": { + "type": "string", + "readOnly": true, + "description": "The key of the document the answer was extracted from." + }, + "text": { + "type": "string", + "readOnly": true, + "description": "The text passage extracted from the document contents as the answer." + }, + "highlights": { + "type": "string", + "readOnly": true, + "x-nullable": true, + "description": "Same text passage as in the Text property with highlighted text phrases most relevant to the query." + } + }, + "additionalProperties": true, + "description": "An answer is a text passage extracted from the contents of the most relevant documents that matched the query. Answers are extracted from the top search results. Answer candidates are scored and the top answers are selected." + }, + "CaptionResult": { + "properties": { + "text": { + "type": "string", + "readOnly": true, + "description": "A representative text passage extracted from the document most relevant to the search query." + }, + "highlights": { + "type": "string", + "readOnly": true, + "x-nullable": true, + "description": "Same text passage as in the Text property with highlighted phrases most relevant to the query." + } + }, + "additionalProperties": true, + "description": "Captions are the most representative passages from the document relatively to the search query. They are often used as document summary. Captions are only returned for queries of type 'semantic'.." + }, "SearchDocumentsResult": { "properties": { "@odata.count": { @@ -1020,6 +1158,16 @@ "x-ms-client-name": "Facets", "description": "The facet query results for the search operation, organized as a collection of buckets for each faceted field; null if the query did not include any facet expressions." }, + "@search.answers": { + "type": "array", + "items": { + "$ref": "#/definitions/AnswerResult" + }, + "readOnly": true, + "x-ms-client-name": "Answers", + "x-nullable": true, + "description": "The answers query results for the search operation; null if the answers query parameter was not specified or set to 'none'." + }, "@search.nextPageParameters": { "$ref": "#/definitions/SearchRequest", "readOnly": true, @@ -1057,6 +1205,14 @@ "x-nullable": false, "description": "The relevance score of the document compared to other documents returned by the query." }, + "@search.rerankerScore": { + "type": "number", + "format": "double", + "readOnly": true, + "x-ms-client-name": "RerankerScore", + "x-nullable": true, + "description": "The relevance score computed by the semantic ranker for the top search results. Search results are sorted by the RerankerScore first and then by the Score. RerankerScore is only returned for queries of type 'semantic'." + }, "@search.highlights": { "type": "object", "additionalProperties": { @@ -1068,6 +1224,16 @@ "readOnly": true, "x-ms-client-name": "Highlights", "description": "Text fragments from the document that indicate the matching search terms, organized by each applicable field; null if hit highlighting was not enabled for the query." + }, + "@search.captions": { + "type": "array", + "items": { + "$ref": "#/definitions/CaptionResult" + }, + "readOnly": true, + "x-ms-client-name": "Captions", + "x-nullable": true, + "description": "Captions are the most representative passages from the document relatively to the search query. They are often used as document summary. Captions are only returned for queries of type 'semantic'." } }, "required": [ @@ -1215,7 +1381,8 @@ "type": "string", "enum": [ "simple", - "full" + "full", + "semantic" ], "x-ms-enum": { "name": "QueryType", @@ -1230,10 +1397,87 @@ "value": "full", "name": "Full", "description": "Uses the full Lucene query syntax for searches. Search text is interpreted using the Lucene query language which allows field-specific and weighted searches, as well as other advanced features." + }, + { + "value": "semantic", + "name": "Semantic", + "description": "Best suited for queries expressed in natural language as opposed to keywords. Improves precision of search results by re-ranking the top search results using a ranking model trained on the Web corpus." } ] }, - "description": "Specifies the syntax of the search query. The default is 'simple'. Use 'full' if your query uses the Lucene query syntax." + "description": "Specifies the syntax of the search query. The default is 'simple'. Use 'full' if your query uses the Lucene query syntax and 'semantic' if query syntax is not needed." + }, + "Speller": { + "type": "string", + "enum": [ + "none", + "lexicon" + ], + "x-ms-enum": { + "name": "Speller", + "modelAsString": true, + "values": [ + { + "value": "none", + "name": "None", + "description": "Speller not enabled." + }, + { + "value": "lexicon", + "name": "Lexicon", + "description": "Speller corrects individual query terms using a static lexicon for the language specified by the queryLanguage parameter." + } + ] + }, + "description": "Improve search recall by spell-correcting individual search query terms." + }, + "Answers": { + "type": "string", + "enum": [ + "none", + "extractive" + ], + "x-ms-enum": { + "name": "Answers", + "modelAsString": true, + "values": [ + { + "value": "none", + "name": "None", + "description": "Do not return answers for the query." + }, + { + "value": "extractive", + "name": "Extractive", + "description": "Extracts answer candidates from the contents of the documents returned in response to a query expressed as a question in natural language." + } + ] + }, + "description": "This parameter is only valid if the query type is 'semantic'. If set, the query returns answers extracted from key passages in the highest ranked documents. The number of answers returned can be configured by appending the pipe character '|' followed by the 'count-' option after the answers parameter value, such as 'extractive|count-3'. Default count is 1." + }, + "QueryLanguage": { + "type": "string", + "enum": [ + "none", + "en-us" + ], + "x-ms-enum": { + "name": "QueryLanguage", + "modelAsString": true, + "values": [ + { + "value": "none", + "name": "None", + "description": "Query language not specified." + }, + { + "value": "en-us", + "name": "EnUs", + "description": "English" + } + ] + }, + "description": "The language of the query." }, "ScoringStatistics": { "type": "string", @@ -1372,6 +1616,18 @@ "$ref": "#/definitions/SearchMode", "description": "A value that specifies whether any or all of the search terms must be matched in order to count the document as a match." }, + "queryLanguage": { + "$ref": "#/definitions/QueryLanguage", + "description": "A value that specifies the language of the search query." + }, + "speller": { + "$ref": "#/definitions/Speller", + "description": "A value that specified the type of the speller to use to spell-correct individual search query terms." + }, + "answers": { + "$ref": "#/definitions/Answers", + "description": "A value that specifies whether answers should be returned as part of the search response." + }, "select": { "type": "string", "description": "The comma-separated list of fields to retrieve. If unspecified, all fields marked as retrievable in the schema are included." diff --git a/specification/search/data-plane/Azure.Search/preview/2020-06-30-Preview/searchservice.json b/specification/search/data-plane/Azure.Search/preview/2020-06-30-Preview/searchservice.json index b92738e00a76..532c46803106 100644 --- a/specification/search/data-plane/Azure.Search/preview/2020-06-30-Preview/searchservice.json +++ b/specification/search/data-plane/Azure.Search/preview/2020-06-30-Preview/searchservice.json @@ -7215,6 +7215,10 @@ "$ref": "#/definitions/CognitiveServicesAccount", "description": "Details about cognitive services to be used when running skills." }, + "knowledgeStore": { + "$ref": "#/definitions/SearchIndexerKnowledgeStore", + "description": "Definition of additional projections to azure blob, table, or files, of enriched data." + }, "@odata.etag": { "x-ms-client-name": "ETag", "type": "string", @@ -7255,6 +7259,138 @@ ], "description": "Base type for describing any cognitive service resource attached to a skillset." }, + "SearchIndexerKnowledgeStore": { + "properties": { + "storageConnectionString": { + "type": "string", + "description": "The connection string to the storage account projections will be stored in." + }, + "projections": { + "type": "array", + "items": { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreProjection", + "x-nullable": false + }, + "description": "A list of additional projections to perform during indexing." + } + }, + "required": [ + "storageConnectionString", + "projections" + ], + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/knowledge-store-projection-overview" + }, + "description": "Definition of additional projections to azure blob, table, or files, of enriched data." + }, + "SearchIndexerKnowledgeStoreProjection": { + "properties": { + "tables": { + "type": "array", + "items": { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreTableProjectionSelector", + "x-nullable": false + }, + "description": "Projections to Azure Table storage." + }, + "objects": { + "type": "array", + "items": { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreObjectProjectionSelector", + "x-nullable": false + }, + "description": "Projections to Azure Blob storage." + }, + "files": { + "type": "array", + "items": { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreFileProjectionSelector", + "x-nullable": false + }, + "description": "Projections to Azure File storage." + } + }, + "description": "Container object for various projection selectors." + }, + "SearchIndexerKnowledgeStoreProjectionSelector": { + "properties": { + "referenceKeyName": { + "type": "string", + "description": "Name of reference key to different projection." + }, + "generatedKeyName": { + "type": "string", + "description": "Name of generated key to store projection under." + }, + "source": { + "type": "string", + "description": "Source data to project." + }, + "sourceContext": { + "type": "string", + "description": "Source context for complex projections." + }, + "inputs": { + "type": "array", + "items": { + "$ref": "#/definitions/InputFieldMappingEntry" + }, + "description": "Nested inputs for complex projections." + } + }, + "description": "Abstract class to share properties between concrete selectors." + }, + "SearchIndexerKnowledgeStoreBlobProjectionSelector": { + "properties": { + "storageContainer": { + "type": "string", + "description": "Blob container to store projections in." + } + }, + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreProjectionSelector" + } + ], + "required": [ + "storageContainer" + ], + "description": "Abstract class to share properties between concrete selectors." + }, + "SearchIndexerKnowledgeStoreTableProjectionSelector": { + "properties": { + "tableName": { + "type": "string", + "description": "Name of the Azure table to store projected data in." + } + }, + "required": [ + "generatedKeyName", + "tableName" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreProjectionSelector" + } + ], + "description": "Description for what data to store in Azure Tables." + }, + "SearchIndexerKnowledgeStoreObjectProjectionSelector": { + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreBlobProjectionSelector" + } + ], + "description": "Projection definition for what data to store in Azure Blob." + }, + "SearchIndexerKnowledgeStoreFileProjectionSelector": { + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreBlobProjectionSelector" + } + ], + "description": "Projection definition for what data to store in Azure Files." + }, "DefaultCognitiveServicesAccount": { "description": "An empty object that represents the default cognitive service resource for a skillset.", "x-ms-discriminator-value": "#Microsoft.Azure.Search.DefaultCognitiveServices", @@ -9158,8 +9294,7 @@ "indexersCount", "dataSourcesCount", "storageSize", - "synonymMaps", - "skillsetCount" + "synonymMaps" ], "description": "Represents service-level resource counters and quotas." }, diff --git a/specification/search/data-plane/Azure.Search/preview/2020-06-30/examples/SearchServiceCreateSkillset.json b/specification/search/data-plane/Azure.Search/preview/2020-06-30/examples/SearchServiceCreateSkillset.json index bc539fd71f3e..b729782f4025 100644 --- a/specification/search/data-plane/Azure.Search/preview/2020-06-30/examples/SearchServiceCreateSkillset.json +++ b/specification/search/data-plane/Azure.Search/preview/2020-06-30/examples/SearchServiceCreateSkillset.json @@ -110,6 +110,52 @@ "httpHeaders": {} } ], + "knowledgeStore": { + "storageConnectionString": "DefaultEndpointsProtocol=https;AccountName=myStorage;AccountKey=myStorageKey;EndpointSuffix=core.windows.net", + "projections": [ + { + "tables": [ + { + "tableName": "Reviews", + "generatedKeyName": "ReviewId", + "source": "/document/Review", + "sourceContext": null, + "inputs": [] + }, + { + "tableName": "Sentences", + "generatedKeyName": "SentenceId", + "source": "/document/Review/Sentences/*", + "sourceContext": null, + "inputs": [] + }, + { + "tableName": "KeyPhrases", + "generatedKeyName": "KeyPhraseId", + "source": "/document/Review/Sentences/*/KeyPhrases", + "sourceContext": null, + "inputs": [] + }, + { + "tableName": "Entities", + "generatedKeyName": "EntityId", + "source": "/document/Review/Sentences/*/Entities/*", + "sourceContext": null, + "inputs": [] + } + ] + }, + { + "objects": [ + { + "storageContainer": "Reviews", + "source": "/document/Review", + "generatedKeyName": "/document/Review/Id" + } + ] + } + ] + }, "encryptionKey": { "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", diff --git a/specification/search/data-plane/Azure.Search/preview/2020-06-30/searchservice.json b/specification/search/data-plane/Azure.Search/preview/2020-06-30/searchservice.json index 2a83a87ab347..994e705c0e19 100644 --- a/specification/search/data-plane/Azure.Search/preview/2020-06-30/searchservice.json +++ b/specification/search/data-plane/Azure.Search/preview/2020-06-30/searchservice.json @@ -7102,6 +7102,10 @@ "$ref": "#/definitions/CognitiveServicesAccount", "description": "Details about cognitive services to be used when running skills." }, + "knowledgeStore": { + "$ref": "#/definitions/SearchIndexerKnowledgeStore", + "description": "Definition of additional projections to azure blob, table, or files, of enriched data." + }, "@odata.etag": { "x-ms-client-name": "ETag", "type": "string", @@ -7142,6 +7146,138 @@ ], "description": "Base type for describing any cognitive service resource attached to a skillset." }, + "SearchIndexerKnowledgeStore": { + "properties": { + "storageConnectionString": { + "type": "string", + "description": "The connection string to the storage account projections will be stored in." + }, + "projections": { + "type": "array", + "items": { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreProjection", + "x-nullable": false + }, + "description": "A list of additional projections to perform during indexing." + } + }, + "required": [ + "storageConnectionString", + "projections" + ], + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/knowledge-store-projection-overview" + }, + "description": "Definition of additional projections to azure blob, table, or files, of enriched data." + }, + "SearchIndexerKnowledgeStoreProjection": { + "properties": { + "tables": { + "type": "array", + "items": { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreTableProjectionSelector", + "x-nullable": false + }, + "description": "Projections to Azure Table storage." + }, + "objects": { + "type": "array", + "items": { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreObjectProjectionSelector", + "x-nullable": false + }, + "description": "Projections to Azure Blob storage." + }, + "files": { + "type": "array", + "items": { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreFileProjectionSelector", + "x-nullable": false + }, + "description": "Projections to Azure File storage." + } + }, + "description": "Container object for various projection selectors." + }, + "SearchIndexerKnowledgeStoreProjectionSelector": { + "properties": { + "referenceKeyName": { + "type": "string", + "description": "Name of reference key to different projection." + }, + "generatedKeyName": { + "type": "string", + "description": "Name of generated key to store projection under." + }, + "source": { + "type": "string", + "description": "Source data to project." + }, + "sourceContext": { + "type": "string", + "description": "Source context for complex projections." + }, + "inputs": { + "type": "array", + "items": { + "$ref": "#/definitions/InputFieldMappingEntry" + }, + "description": "Nested inputs for complex projections." + } + }, + "description": "Abstract class to share properties between concrete selectors." + }, + "SearchIndexerKnowledgeStoreBlobProjectionSelector": { + "properties": { + "storageContainer": { + "type": "string", + "description": "Blob container to store projections in." + } + }, + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreProjectionSelector" + } + ], + "required": [ + "storageContainer" + ], + "description": "Abstract class to share properties between concrete selectors." + }, + "SearchIndexerKnowledgeStoreTableProjectionSelector": { + "properties": { + "tableName": { + "type": "string", + "description": "Name of the Azure table to store projected data in." + } + }, + "required": [ + "generatedKeyName", + "tableName" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreProjectionSelector" + } + ], + "description": "Description for what data to store in Azure Tables." + }, + "SearchIndexerKnowledgeStoreObjectProjectionSelector": { + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreBlobProjectionSelector" + } + ], + "description": "Projection definition for what data to store in Azure Blob." + }, + "SearchIndexerKnowledgeStoreFileProjectionSelector": { + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreBlobProjectionSelector" + } + ], + "description": "Projection definition for what data to store in Azure Files." + }, "DefaultCognitiveServicesAccount": { "description": "An empty object that represents the default cognitive service resource for a skillset.", "x-ms-discriminator-value": "#Microsoft.Azure.Search.DefaultCognitiveServices", @@ -9032,6 +9168,11 @@ "x-ms-client-name": "synonymMapCounter", "$ref": "#/definitions/ResourceCounter", "description": "Total number of synonym maps." + }, + "skillsetCount": { + "x-ms-client-name": "skillsetCounter", + "$ref": "#/definitions/ResourceCounter", + "description": "Total number of skillsets." } }, "required": [ diff --git a/specification/search/data-plane/Azure.Search/readme.md b/specification/search/data-plane/Azure.Search/readme.md index 9e0c7d0e0ffa..934fd0d2b97d 100644 --- a/specification/search/data-plane/Azure.Search/readme.md +++ b/specification/search/data-plane/Azure.Search/readme.md @@ -417,7 +417,7 @@ directive: return $ .replace(/(getAdditionalProperties)/g, "getDocument") .replace(/(setAdditionalProperties)/g, "setDocument") - reason: Provides a better description of the getter/setter for addtionalProperties + reason: Provides a better description of the getter/setter for additionalProperties - from: - SearchResult.java diff --git a/specification/search/resource-manager/readme.azureresourceschema.md b/specification/search/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 13dc9c705646..000000000000 --- a/specification/search/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,84 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-search-2020-08-01-preview - - tag: schema-search-2020-08-01 - - tag: schema-search-2020-03-13 - - tag: schema-search-2019-10-01-preview - - tag: schema-search-2015-08-19 - - tag: schema-search-2015-02-28 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-search-2020-08-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-search-2020-08-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Search/preview/2020-08-01-preview/search.json - -``` - -### Tag: schema-search-2020-08-01 and azureresourceschema - -``` yaml $(tag) == 'schema-search-2020-08-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Search/stable/2020-08-01/search.json - -``` - -### Tag: schema-search-2020-03-13 and azureresourceschema - -``` yaml $(tag) == 'schema-search-2020-03-13' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Search/stable/2020-03-13/search.json - -``` - -### Tag: schema-search-2019-10-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-search-2019-10-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Search/preview/2019-10-01-preview/search.json - -``` - -### Tag: schema-search-2015-08-19 and azureresourceschema - -``` yaml $(tag) == 'schema-search-2015-08-19' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Search/stable/2015-08-19/search.json - -``` - -### Tag: schema-search-2015-02-28 and azureresourceschema - -``` yaml $(tag) == 'schema-search-2015-02-28' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Search/stable/2015-02-28/search.json - -``` diff --git a/specification/search/resource-manager/readme.go.md b/specification/search/resource-manager/readme.go.md index e93d6897eedb..37ca670add13 100644 --- a/specification/search/resource-manager/readme.go.md +++ b/specification/search/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: search clear-output-folder: true ``` diff --git a/specification/search/resource-manager/readme.md b/specification/search/resource-manager/readme.md index e4e7e9f0ebcc..f96b053201f1 100644 --- a/specification/search/resource-manager/readme.md +++ b/specification/search/resource-manager/readme.md @@ -103,8 +103,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_search'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js search/resource-manager ``` @@ -203,7 +201,5 @@ generate-interface: true ``` -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/assessmentMetadata.json b/specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/assessmentMetadata.json index cd2adb339f49..124becdd58ab 100644 --- a/specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/assessmentMetadata.json +++ b/specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/assessmentMetadata.json @@ -314,11 +314,11 @@ "type": "string", "description": "Human readable description of what you should do to mitigate this security issue" }, - "category": { + "categories": { "type": "array", "items": { "type": "string", - "description": "The category of resource that is at risk when the assessment is unhealthy", + "description": "The categories of resource that is at risk when the assessment is unhealthy", "enum": [ "Compute", "Networking", @@ -327,7 +327,7 @@ "IoT" ], "x-ms-enum": { - "name": "category", + "name": "categories", "modelAsString": true, "values": [ { diff --git a/specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/AssessmentsMetadata/CreateAssessmentsMetadata_subscription_example.json b/specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/AssessmentsMetadata/CreateAssessmentsMetadata_subscription_example.json index a4f0a54edd29..1300f9639098 100644 --- a/specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/AssessmentsMetadata/CreateAssessmentsMetadata_subscription_example.json +++ b/specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/AssessmentsMetadata/CreateAssessmentsMetadata_subscription_example.json @@ -6,10 +6,9 @@ "assessmentMetadata": { "properties": { "displayName": "Install endpoint protection solution on virtual machine scale sets", - "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/26a828e1-e88f-464e-bbb3-c134a282b9de", "description": "Install an endpoint protection solution on your virtual machines scale sets, to protect them from threats and vulnerabilities.", "remediationDescription": "To install an endpoint protection solution: 1. Follow the instructions in How do I turn on antimalware in my virtual machine scale set", - "category": [ + "categories": [ "Compute" ], "severity": "Medium", @@ -34,7 +33,7 @@ "displayName": "My organization security assessment", "description": "Assessment that my organization created to view our security assessment in Azure Security Center", "remediationDescription": "Fix it with these remediation instructions", - "category": [ + "categories": [ "Compute" ], "severity": "Medium", diff --git a/specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/AssessmentsMetadata/GetAssessmentsMetadata_example.json b/specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/AssessmentsMetadata/GetAssessmentsMetadata_example.json index d97f85567e01..57cbbe3e62a6 100644 --- a/specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/AssessmentsMetadata/GetAssessmentsMetadata_example.json +++ b/specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/AssessmentsMetadata/GetAssessmentsMetadata_example.json @@ -14,7 +14,7 @@ "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/26a828e1-e88f-464e-bbb3-c134a282b9de", "description": "Install an endpoint protection solution on your virtual machines scale sets, to protect them from threats and vulnerabilities.", "remediationDescription": "To install an endpoint protection solution: 1. Follow the instructions in How do I turn on antimalware in my virtual machine scale set", - "category": [ + "categories": [ "Compute" ], "severity": "Medium", diff --git a/specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/AssessmentsMetadata/GetAssessmentsMetadata_subscription_example.json b/specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/AssessmentsMetadata/GetAssessmentsMetadata_subscription_example.json index fdd8f69fe296..1a486275f87a 100644 --- a/specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/AssessmentsMetadata/GetAssessmentsMetadata_subscription_example.json +++ b/specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/AssessmentsMetadata/GetAssessmentsMetadata_subscription_example.json @@ -15,7 +15,7 @@ "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/26a828e1-e88f-464e-bbb3-c134a282b9de", "description": "Install an endpoint protection solution on your virtual machines scale sets, to protect them from threats and vulnerabilities.", "remediationDescription": "To install an endpoint protection solution: 1. Follow the instructions in How do I turn on antimalware in my virtual machine scale set", - "category": [ + "categories": [ "Compute" ], "severity": "Medium", diff --git a/specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/AssessmentsMetadata/ListAssessmentsMetadata_example.json b/specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/AssessmentsMetadata/ListAssessmentsMetadata_example.json index 3e0ab9018412..3160007d050f 100644 --- a/specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/AssessmentsMetadata/ListAssessmentsMetadata_example.json +++ b/specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/AssessmentsMetadata/ListAssessmentsMetadata_example.json @@ -15,7 +15,7 @@ "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/26a828e1-e88f-464e-bbb3-c134a282b9de", "description": "Install an endpoint protection solution on your virtual machines scale sets, to protect them from threats and vulnerabilities.", "remediationDescription": "To install an endpoint protection solution: 1. Follow the instructions in How do I turn on antimalware in my virtual machine scale set", - "category": [ + "categories": [ "Compute" ], "severity": "Medium", @@ -38,7 +38,7 @@ "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/22730e10-96f6-4aac-ad84-9383d35b5917", "description": "Open remote management ports expose your VM to a high level of risk from internet-based attacks that attempt to brute force credentials to gain admin access to the machine.", "remediationDescription": "We recommend that you edit the inbound rules of the below virtual machines to restrict access to specific source ranges.
    To restrict the access to your virtual machines: 1. Click on a VM from the list below 2. At the 'Networking' blade, click on each of the rules that allow management ports (e.g. RDP-3389, WINRM-5985, SSH-22) 3. Change the 'Action' property to 'Deny' 4. Click 'Save'", - "category": [ + "categories": [ "Networking" ], "severity": "Medium", @@ -61,7 +61,7 @@ "displayName": "My organization security assessment", "description": "Assessment that my organization created to view our security assessment in Azure Security Center", "remediationDescription": "Fix it with these remediation instructions", - "category": [ + "categories": [ "Compute" ], "severity": "Medium", diff --git a/specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/AssessmentsMetadata/ListAssessmentsMetadata_subscription_example.json b/specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/AssessmentsMetadata/ListAssessmentsMetadata_subscription_example.json index 9fb42c0ddeec..5fdd7cc9dd89 100644 --- a/specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/AssessmentsMetadata/ListAssessmentsMetadata_subscription_example.json +++ b/specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/AssessmentsMetadata/ListAssessmentsMetadata_subscription_example.json @@ -16,7 +16,7 @@ "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/26a828e1-e88f-464e-bbb3-c134a282b9de", "description": "Install an endpoint protection solution on your virtual machines scale sets, to protect them from threats and vulnerabilities.", "remediationDescription": "To install an endpoint protection solution: 1. Follow the instructions in How do I turn on antimalware in my virtual machine scale set", - "category": [ + "categories": [ "Compute" ], "severity": "Medium", @@ -39,7 +39,7 @@ "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/22730e10-96f6-4aac-ad84-9383d35b5917", "description": "Open remote management ports expose your VM to a high level of risk from internet-based attacks that attempt to brute force credentials to gain admin access to the machine.", "remediationDescription": "We recommend that you edit the inbound rules of the below virtual machines to restrict access to specific source ranges.
    To restrict the access to your virtual machines: 1. Click on a VM from the list below 2. At the 'Networking' blade, click on each of the rules that allow management ports (e.g. RDP-3389, WINRM-5985, SSH-22) 3. Change the 'Action' property to 'Deny' 4. Click 'Save'", - "category": [ + "categories": [ "Networking" ], "severity": "Medium", diff --git a/specification/security/resource-manager/Microsoft.Security/preview/2021-01-15-preview/examples/IngestionSettings/CreateIngestionSetting_example.json b/specification/security/resource-manager/Microsoft.Security/preview/2021-01-15-preview/examples/IngestionSettings/CreateIngestionSetting_example.json new file mode 100644 index 000000000000..37a9405975b2 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/preview/2021-01-15-preview/examples/IngestionSettings/CreateIngestionSetting_example.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2021-01-15-preview", + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "ingestionSettingName": "default", + "ingestionSetting": {} + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/ingestionSettings/default", + "name": "default", + "type": "Microsoft.Security/ingestionSettings" + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/preview/2021-01-15-preview/examples/IngestionSettings/DeleteIngestionSetting_example.json b/specification/security/resource-manager/Microsoft.Security/preview/2021-01-15-preview/examples/IngestionSettings/DeleteIngestionSetting_example.json new file mode 100644 index 000000000000..476c7350eef0 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/preview/2021-01-15-preview/examples/IngestionSettings/DeleteIngestionSetting_example.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "api-version": "2021-01-15-preview", + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "ingestionSettingName": "default" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/preview/2021-01-15-preview/examples/IngestionSettings/GetIngestionSetting_example.json b/specification/security/resource-manager/Microsoft.Security/preview/2021-01-15-preview/examples/IngestionSettings/GetIngestionSetting_example.json new file mode 100644 index 000000000000..0796b0e912f7 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/preview/2021-01-15-preview/examples/IngestionSettings/GetIngestionSetting_example.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "api-version": "2021-01-15-preview", + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "ingestionSettingName": "default" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/ingestionSettings/default", + "name": "default", + "type": "Microsoft.Security/ingestionSettings" + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/preview/2021-01-15-preview/examples/IngestionSettings/GetIngestionSettings_example.json b/specification/security/resource-manager/Microsoft.Security/preview/2021-01-15-preview/examples/IngestionSettings/GetIngestionSettings_example.json new file mode 100644 index 000000000000..d84ed1d45653 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/preview/2021-01-15-preview/examples/IngestionSettings/GetIngestionSettings_example.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2021-01-15-preview", + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/ingestionSettings/default", + "name": "default", + "type": "Microsoft.Security/ingestionSettings" + }, + { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/ingestionSettings/default2", + "name": "default2", + "type": "Microsoft.Security/ingestionSettings" + } + ] + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/preview/2021-01-15-preview/examples/IngestionSettings/ListConnectionStrings_example.json b/specification/security/resource-manager/Microsoft.Security/preview/2021-01-15-preview/examples/IngestionSettings/ListConnectionStrings_example.json new file mode 100644 index 000000000000..a83f04b81872 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/preview/2021-01-15-preview/examples/IngestionSettings/ListConnectionStrings_example.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2021-01-15-preview", + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "ingestionSettingName": "default" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "location": "CUS", + "value": "" + }, + { + "location": "WEU", + "value": "" + } + ] + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/preview/2021-01-15-preview/examples/IngestionSettings/ListTokensIngestionSetting_example.json b/specification/security/resource-manager/Microsoft.Security/preview/2021-01-15-preview/examples/IngestionSettings/ListTokensIngestionSetting_example.json new file mode 100644 index 000000000000..1d0e37ecd760 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/preview/2021-01-15-preview/examples/IngestionSettings/ListTokensIngestionSetting_example.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-01-15-preview", + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "ingestionSettingName": "default" + }, + "responses": { + "200": { + "body": { + "token": "" + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/preview/2021-01-15-preview/ingestionSettings.json b/specification/security/resource-manager/Microsoft.Security/preview/2021-01-15-preview/ingestionSettings.json new file mode 100644 index 000000000000..593b245f7cd6 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/preview/2021-01-15-preview/ingestionSettings.json @@ -0,0 +1,375 @@ +{ + "swagger": "2.0", + "info": { + "title": "Security Center", + "description": "API spec for Microsoft.Security (Azure Security Center) resource provider", + "version": "2021-01-15-preview" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/ingestionSettings": { + "get": { + "x-ms-examples": { + "Get ingestion settings on subscription": { + "$ref": "./examples/IngestionSettings/GetIngestionSettings_example.json" + } + }, + "tags": [ + "Ingestion Settings" + ], + "description": "Settings for ingesting security data and logs to correlate with resources associated with the subscription.", + "operationId": "IngestionSettings_List", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/IngestionSettingList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/ingestionSettings/{ingestionSettingName}": { + "get": { + "x-ms-examples": { + "Get a ingestion setting on subscription": { + "$ref": "./examples/IngestionSettings/GetIngestionSetting_example.json" + } + }, + "tags": [ + "Ingestion Settings" + ], + "description": "Settings for ingesting security data and logs to correlate with resources associated with the subscription.", + "operationId": "IngestionSettings_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/IngestionSettingName" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/IngestionSetting" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + } + }, + "put": { + "x-ms-examples": { + "Create an ingestion setting for subscription": { + "$ref": "./examples/IngestionSettings/CreateIngestionSetting_example.json" + } + }, + "tags": [ + "Ingestion Settings" + ], + "description": "Create setting for ingesting security data and logs to correlate with resources associated with the subscription.", + "operationId": "IngestionSettings_Create", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/IngestionSettingName" + }, + { + "$ref": "#/parameters/IngestionSetting" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/IngestionSetting" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "x-ms-examples": { + "Delete an ingestion setting for the subscription": { + "$ref": "./examples/IngestionSettings/DeleteIngestionSetting_example.json" + } + }, + "tags": [ + "Ingestion Settings" + ], + "description": "Deletes the ingestion settings for this subscription.", + "operationId": "IngestionSettings_Delete", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/IngestionSettingName" + } + ], + "responses": { + "200": { + "description": "The resource was deleted successfully" + }, + "204": { + "description": "The resource was not found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/ingestionSettings/{ingestionSettingName}/listTokens": { + "post": { + "x-ms-examples": { + "List ingestion setting tokens": { + "$ref": "./examples/IngestionSettings/ListTokensIngestionSetting_example.json" + } + }, + "tags": [ + "Ingestion Settings" + ], + "description": "Returns the token that is used for correlating ingested telemetry with the resources in the subscription.", + "operationId": "IngestionSettings_ListTokens", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/IngestionSettingName" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/IngestionSettingToken" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/ingestionSettings/{ingestionSettingName}/listConnectionStrings": { + "post": { + "x-ms-examples": { + "List connection strings for ingesting security data and logs": { + "$ref": "./examples/IngestionSettings/ListConnectionStrings_example.json" + } + }, + "tags": [ + "Connection Strings" + ], + "description": "Connection strings for ingesting security scan logs and data.", + "operationId": "IngestionSettings_ListConnectionStrings", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/IngestionSettingName" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ConnectionStrings" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "IngestionSettingList": { + "description": "List of ingestion settings", + "properties": { + "value": { + "readOnly": true, + "type": "array", + "description": "List of ingestion settings", + "items": { + "$ref": "#/definitions/IngestionSetting" + } + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URI to fetch the next page." + } + } + }, + "IngestionSetting": { + "type": "object", + "description": "Configures how to correlate scan data and logs with resources associated with the subscription.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Ingestion setting data", + "$ref": "#/definitions/IngestionSettingProperties" + } + }, + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/Resource" + } + ] + }, + "IngestionSettingToken": { + "type": "object", + "description": "Configures how to correlate scan data and logs with resources associated with the subscription.", + "properties": { + "token": { + "type": "string", + "x-ms-secret": true, + "readOnly": true, + "description": "The token is used for correlating security data and logs with the resources in the subscription." + } + } + }, + "IngestionSettingProperties": { + "type": "object", + "description": "Ingestion setting data" + }, + "IngestionConnectionString": { + "type": "object", + "description": "Connection string for ingesting security data and logs", + "properties": { + "location": { + "type": "string", + "readOnly": true, + "description": "The region where ingested logs and data resides" + }, + "value": { + "type": "string", + "readOnly": true, + "x-ms-secret": true, + "description": "Connection string value" + } + } + }, + "ConnectionStrings": { + "description": "Connection string for ingesting security data and logs", + "required": [ + "value" + ], + "properties": { + "value": { + "type": "array", + "description": "Connection strings", + "items": { + "$ref": "#/definitions/IngestionConnectionString" + } + } + } + } + }, + "parameters": { + "IngestionSettingName": { + "name": "ingestionSettingName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the ingestion setting", + "x-ms-parameter-location": "method" + }, + "IngestionSetting": { + "name": "ingestionSetting", + "in": "body", + "required": true, + "description": "Ingestion setting object", + "schema": { + "$ref": "#/definitions/IngestionSetting" + }, + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/preview/2021-05-01-preview/examples/SoftwareInventories/GetSoftware_example.json b/specification/security/resource-manager/Microsoft.Security/preview/2021-05-01-preview/examples/SoftwareInventories/GetSoftware_example.json new file mode 100644 index 000000000000..7fa8e0a868d6 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/preview/2021-05-01-preview/examples/SoftwareInventories/GetSoftware_example.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2021-05-01-preview", + "subscriptionId": "e5d1b86c-3051-44d5-8802-aa65d45a279b", + "resourceGroupName": "EITAN-TESTS", + "resourceNamespace": "Microsoft.Compute", + "resourceType": "virtualMachines", + "resourceName": "Eitan-Test1", + "softwareName": "outlook_16.0.10371.20060" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/e5d1b86c-3051-44d5-8802-aa65d45a279b/resourcegroups/EITAN-TESTS/providers/Microsoft.Compute/virtualMachines/Eitan-Test1/providers/Microsoft.Security/softwareInventories/outlook_16.0.10371.20060", + "name": "outlook_16.0.10371.20060", + "type": "Microsoft.Security/softwareInventories", + "properties": { + "deviceId": "7bd19ed6b07553e52a2844451bcec68d25963a53", + "osPlatform": "Windows10", + "vendor": "microsoft", + "softwareName": "outlook", + "version": "16.0.10371.20060", + "endOfSupportStatus": "None", + "numberOfKnownVulnerabilities": 0, + "firstSeenAt": "2021-01-26 15:48:56" + } + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/preview/2021-05-01-preview/examples/SoftwareInventories/ListByExtendedResourceSoftwareInventories_example.json b/specification/security/resource-manager/Microsoft.Security/preview/2021-05-01-preview/examples/SoftwareInventories/ListByExtendedResourceSoftwareInventories_example.json new file mode 100644 index 000000000000..7e0496860960 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/preview/2021-05-01-preview/examples/SoftwareInventories/ListByExtendedResourceSoftwareInventories_example.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2021-05-01-preview", + "subscriptionId": "e5d1b86c-3051-44d5-8802-aa65d45a279b", + "resourceGroupName": "EITAN-TESTS", + "resourceNamespace": "Microsoft.Compute", + "resourceType": "virtualMachines", + "resourceName": "Eitan-Test1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/e5d1b86c-3051-44d5-8802-aa65d45a279b/resourcegroups/EITAN-TESTS/providers/Microsoft.Compute/virtualMachines/Eitan-Test1/providers/Microsoft.Security/softwareInventories/outlook_16.0.10371.20060", + "name": "outlook_16.0.10371.20060", + "type": "Microsoft.Security/softwareInventories", + "properties": { + "deviceId": "7bd19ed6b07553e52a2844451bcec68d25963a53", + "osPlatform": "Windows10", + "vendor": "microsoft", + "softwareName": "outlook", + "version": "16.0.10371.20060", + "endOfSupportStatus": "None", + "numberOfKnownVulnerabilities": 0, + "firstSeenAt": "2021-01-26 15:48:56" + } + }, + { + "id": "/subscriptions/e5d1b86c-3051-44d5-8802-aa65d45a279b/resourcegroups/EITAN-TESTS/providers/Microsoft.Compute/virtualMachines/Eitan-Test1/providers/Microsoft.Security/softwareInventories/windows_10_10.0.19042.746", + "name": "windows_10_10.0.19042.746", + "type": "Microsoft.Security/softwareInventories", + "properties": { + "deviceId": "7bd19ed6b07553e52a2844451bcec68d25963a53", + "osPlatform": "Windows10", + "vendor": "microsoft", + "softwareName": "windows_10", + "version": "10.0.19042.746", + "endOfSupportStatus": "None", + "numberOfKnownVulnerabilities": 26, + "firstSeenAt": "2021-01-26 15:51:19" + } + } + ] + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/preview/2021-05-01-preview/examples/SoftwareInventories/ListBySubscriptionSoftwareInventories_example.json b/specification/security/resource-manager/Microsoft.Security/preview/2021-05-01-preview/examples/SoftwareInventories/ListBySubscriptionSoftwareInventories_example.json new file mode 100644 index 000000000000..207deda61a4b --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/preview/2021-05-01-preview/examples/SoftwareInventories/ListBySubscriptionSoftwareInventories_example.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2021-05-01-preview", + "subscriptionId": "e5d1b86c-3051-44d5-8802-aa65d45a279b" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/e5d1b86c-3051-44d5-8802-aa65d45a279b/resourcegroups/EITAN-TESTS/providers/Microsoft.Compute/virtualMachines/Eitan-Test1/providers/Microsoft.Security/softwareInventories/outlook_16.0.10371.20060", + "name": "outlook_16.0.10371.20060", + "type": "Microsoft.Security/softwareInventories", + "properties": { + "deviceId": "7bd19ed6b07553e52a2844451bcec68d25963a53", + "osPlatform": "Windows10", + "vendor": "microsoft", + "softwareName": "outlook", + "version": "16.0.10371.20060", + "endOfSupportStatus": "None", + "numberOfKnownVulnerabilities": 0, + "firstSeenAt": "2021-01-26 15:48:56" + } + }, + { + "id": "/subscriptions/e5d1b86c-3051-44d5-8802-aa65d45a279b/resourcegroups/EITAN-TESTS/providers/Microsoft.Compute/virtualMachines/Eitan-Test2/providers/Microsoft.Security/softwareInventories/windows_10_10.0.19042.746", + "name": "windows_10_10.0.19042.746", + "type": "Microsoft.Security/softwareInventories", + "properties": { + "deviceId": "7bd19ed6b07553e52a2844451bcec68d25963a53", + "osPlatform": "Windows10", + "vendor": "microsoft", + "softwareName": "windows_10", + "version": "10.0.19042.746", + "endOfSupportStatus": "None", + "numberOfKnownVulnerabilities": 26, + "firstSeenAt": "2021-01-26 15:51:19" + } + } + ] + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/preview/2021-05-01-preview/softwareInventories.json b/specification/security/resource-manager/Microsoft.Security/preview/2021-05-01-preview/softwareInventories.json new file mode 100644 index 000000000000..1af50949c5b3 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/preview/2021-05-01-preview/softwareInventories.json @@ -0,0 +1,307 @@ +{ + "swagger": "2.0", + "info": { + "title": "Security Center", + "description": "API spec for Microsoft.Security (Azure Security Center) resource provider", + "version": "2021-05-01-preview" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceNamespace}/{resourceType}/{resourceName}/providers/Microsoft.Security/softwareInventories": { + "get": { + "description": "Gets the software inventory of the virtual machine.", + "operationId": "SoftwareInventories_ListByExtendedResource", + "x-ms-examples": { + "Gets the software inventory of the virtual machine": { + "$ref": "./examples/SoftwareInventories/ListByExtendedResourceSoftwareInventories_example.json" + } + }, + "tags": [ + "softwareInventories" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupName" + }, + { + "name": "resourceNamespace", + "in": "path", + "description": "The namespace of the resource.", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "The type of the resource.", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Name of the resource.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SoftwaresList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/softwareInventories": { + "get": { + "description": "Gets the software inventory of all virtual machines in the subscriptions.", + "operationId": "SoftwareInventories_ListBySubscription", + "x-ms-examples": { + "Gets the software inventory of all virtual machines in the subscriptions": { + "$ref": "./examples/SoftwareInventories/ListBySubscriptionSoftwareInventories_example.json" + } + }, + "tags": [ + "softwareInventories" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SoftwaresList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceNamespace}/{resourceType}/{resourceName}/providers/Microsoft.Security/softwareInventories/{softwareName}": { + "get": { + "description": "Gets a single software data of the virtual machine.", + "operationId": "SoftwareInventories_Get", + "x-ms-examples": { + "Gets a single software data of the virtual machine": { + "$ref": "./examples/SoftwareInventories/GetSoftware_example.json" + } + }, + "tags": [ + "softwareInventories" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupName" + }, + { + "name": "resourceNamespace", + "in": "path", + "description": "The namespace of the resource.", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "The type of the resource.", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Name of the resource.", + "required": true, + "type": "string" + }, + { + "name": "softwareName", + "in": "path", + "description": "Name of the installed software.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Software" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "SoftwaresList": { + "type": "object", + "description": "Represents the software inventory of the virtual machine.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Software" + } + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URI to fetch the next page." + } + } + }, + "Software": { + "type": "object", + "description": "Represents a software data", + "required": [ + "properties" + ], + "properties": { + "properties": { + "description": "Properties of the Software Inventory resource", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SoftwareProperties" + } + }, + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/Resource" + } + ] + }, + "SoftwareProperties": { + "description": "Software Inventory resource properties", + "properties": { + "deviceId": { + "type": "string", + "description": "Unique identifier for the virtual machine in the service." + }, + "osPlatform": { + "type": "string", + "description": "Platform of the operating system running on the device." + }, + "vendor": { + "type": "string", + "description": "Name of the software vendor." + }, + "softwareName": { + "type": "string", + "description": "Name of the software product." + }, + "version": { + "type": "string", + "description": "Version number of the software product." + }, + "endOfSupportStatus": { + "type": "string", + "description": "End of support status.", + "enum": [ + "None", + "noLongerSupported", + "versionNoLongerSupported", + "upcomingNoLongerSupported", + "upcomingVersionNoLongerSupported" + ], + "x-ms-enum": { + "name": "EndOfSupportStatus", + "modelAsString": true + } + }, + "endOfSupportDate": { + "type": "string", + "description": "The end of support date in case the product is upcoming end of support." + }, + "numberOfKnownVulnerabilities": { + "type": "integer", + "format": "int32", + "description": "Number of weaknesses." + }, + "firstSeenAt": { + "type": "string", + "description": "First time that the software was seen in the device." + } + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/assessmentMetadata.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/assessmentMetadata.json index 47a2a8e0c452..534b992680b6 100644 --- a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/assessmentMetadata.json +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/assessmentMetadata.json @@ -314,11 +314,11 @@ "type": "string", "description": "Human readable description of what you should do to mitigate this security issue" }, - "category": { + "categories": { "type": "array", "items": { "type": "string", - "description": "The category of resource that is at risk when the assessment is unhealthy", + "description": "The categories of resource that is at risk when the assessment is unhealthy", "enum": [ "Compute", "Networking", @@ -327,7 +327,7 @@ "IoT" ], "x-ms-enum": { - "name": "category", + "name": "categories", "modelAsString": true, "values": [ { diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AssessmentsMetadata/CreateAssessmentsMetadata_subscription_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AssessmentsMetadata/CreateAssessmentsMetadata_subscription_example.json index 617146f3ec81..64665047d6c9 100644 --- a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AssessmentsMetadata/CreateAssessmentsMetadata_subscription_example.json +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AssessmentsMetadata/CreateAssessmentsMetadata_subscription_example.json @@ -6,10 +6,9 @@ "assessmentMetadata": { "properties": { "displayName": "Install endpoint protection solution on virtual machine scale sets", - "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/26a828e1-e88f-464e-bbb3-c134a282b9de", "description": "Install an endpoint protection solution on your virtual machines scale sets, to protect them from threats and vulnerabilities.", "remediationDescription": "To install an endpoint protection solution: 1. Follow the instructions in How do I turn on antimalware in my virtual machine scale set", - "category": [ + "categories": [ "Compute" ], "severity": "Medium", @@ -34,7 +33,7 @@ "displayName": "My organization security assessment", "description": "Assessment that my organization created to view our security assessment in Azure Security Center", "remediationDescription": "Fix it with these remediation instructions", - "category": [ + "categories": [ "Compute" ], "severity": "Medium", diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AssessmentsMetadata/GetAssessmentsMetadata_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AssessmentsMetadata/GetAssessmentsMetadata_example.json index f2202a19c14f..d57abd27d2c5 100644 --- a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AssessmentsMetadata/GetAssessmentsMetadata_example.json +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AssessmentsMetadata/GetAssessmentsMetadata_example.json @@ -14,7 +14,7 @@ "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/26a828e1-e88f-464e-bbb3-c134a282b9de", "description": "Install an endpoint protection solution on your virtual machines scale sets, to protect them from threats and vulnerabilities.", "remediationDescription": "To install an endpoint protection solution: 1. Follow the instructions in How do I turn on antimalware in my virtual machine scale set", - "category": [ + "categories": [ "Compute" ], "severity": "Medium", diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AssessmentsMetadata/GetAssessmentsMetadata_subscription_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AssessmentsMetadata/GetAssessmentsMetadata_subscription_example.json index ae60eb4cbb9e..39ee1e55064a 100644 --- a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AssessmentsMetadata/GetAssessmentsMetadata_subscription_example.json +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AssessmentsMetadata/GetAssessmentsMetadata_subscription_example.json @@ -15,7 +15,7 @@ "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/26a828e1-e88f-464e-bbb3-c134a282b9de", "description": "Install an endpoint protection solution on your virtual machines scale sets, to protect them from threats and vulnerabilities.", "remediationDescription": "To install an endpoint protection solution: 1. Follow the instructions in How do I turn on antimalware in my virtual machine scale set", - "category": [ + "categories": [ "Compute" ], "severity": "Medium", diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AssessmentsMetadata/ListAssessmentsMetadata_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AssessmentsMetadata/ListAssessmentsMetadata_example.json index 937869acbbd8..c1b1c467460c 100644 --- a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AssessmentsMetadata/ListAssessmentsMetadata_example.json +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AssessmentsMetadata/ListAssessmentsMetadata_example.json @@ -15,7 +15,7 @@ "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/26a828e1-e88f-464e-bbb3-c134a282b9de", "description": "Install an endpoint protection solution on your virtual machines scale sets, to protect them from threats and vulnerabilities.", "remediationDescription": "To install an endpoint protection solution: 1. Follow the instructions in How do I turn on antimalware in my virtual machine scale set", - "category": [ + "categories": [ "Compute" ], "severity": "Medium", @@ -38,7 +38,7 @@ "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/22730e10-96f6-4aac-ad84-9383d35b5917", "description": "Open remote management ports expose your VM to a high level of risk from internet-based attacks that attempt to brute force credentials to gain admin access to the machine.", "remediationDescription": "We recommend that you edit the inbound rules of the below virtual machines to restrict access to specific source ranges.
    To restrict the access to your virtual machines: 1. Click on a VM from the list below 2. At the 'Networking' blade, click on each of the rules that allow management ports (e.g. RDP-3389, WINRM-5985, SSH-22) 3. Change the 'Action' property to 'Deny' 4. Click 'Save'", - "category": [ + "categories": [ "Networking" ], "severity": "Medium", @@ -61,7 +61,7 @@ "displayName": "My organization security assessment", "description": "Assessment that my organization created to view our security assessment in Azure Security Center", "remediationDescription": "Fix it with these remediation instructions", - "category": [ + "categories": [ "Compute" ], "severity": "Medium", diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AssessmentsMetadata/ListAssessmentsMetadata_subscription_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AssessmentsMetadata/ListAssessmentsMetadata_subscription_example.json index 8bde3eae2b3d..1efdc0526ce9 100644 --- a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AssessmentsMetadata/ListAssessmentsMetadata_subscription_example.json +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AssessmentsMetadata/ListAssessmentsMetadata_subscription_example.json @@ -16,7 +16,7 @@ "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/26a828e1-e88f-464e-bbb3-c134a282b9de", "description": "Install an endpoint protection solution on your virtual machines scale sets, to protect them from threats and vulnerabilities.", "remediationDescription": "To install an endpoint protection solution: 1. Follow the instructions in How do I turn on antimalware in my virtual machine scale set", - "category": [ + "categories": [ "Compute" ], "severity": "Medium", @@ -39,7 +39,7 @@ "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/22730e10-96f6-4aac-ad84-9383d35b5917", "description": "Open remote management ports expose your VM to a high level of risk from internet-based attacks that attempt to brute force credentials to gain admin access to the machine.", "remediationDescription": "We recommend that you edit the inbound rules of the below virtual machines to restrict access to specific source ranges.
    To restrict the access to your virtual machines: 1. Click on a VM from the list below 2. At the 'Networking' blade, click on each of the rules that allow management ports (e.g. RDP-3389, WINRM-5985, SSH-22) 3. Change the 'Action' property to 'Deny' 4. Click 'Save'", - "category": [ + "categories": [ "Networking" ], "severity": "Medium", diff --git a/specification/security/resource-manager/readme.azureresourceschema.md b/specification/security/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 923dbed1dc1c..000000000000 --- a/specification/security/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,213 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-security-2021-01-01 - - tag: schema-security-2020-08-06-preview - - tag: schema-security-2020-07-01-preview - - tag: schema-security-2020-01-01-preview - - tag: schema-security-2020-01-01 - - tag: schema-security-2019-08-01 - - tag: schema-security-2019-01-01-preview - - tag: schema-security-2019-01-01 - - tag: schema-security-2018-06-01 - - tag: schema-security-2017-08-01-preview - - tag: schema-security-2017-08-01 - - tag: schema-security-2015-06-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-security-2021-01-01 and azureresourceschema - -``` yaml $(tag) == 'schema-security-2021-01-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Security/stable/2021-01-01/alerts.json - -``` - -### Tag: schema-security-2020-08-06-preview and azureresourceschema - -``` yaml $(tag) == 'schema-security-2020-08-06-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Security/preview/2020-08-06-preview/iotDefenderSettings.json - - Microsoft.Security/preview/2020-08-06-preview/iotSensors.json - - Microsoft.Security/preview/2020-08-06-preview/devices.json - - Microsoft.Security/preview/2020-08-06-preview/onPremiseIotSensors.json - - Microsoft.Security/preview/2020-08-06-preview/iotSites.json - - Microsoft.Security/preview/2020-08-06-preview/iotAlerts.json - - Microsoft.Security/preview/2020-08-06-preview/iotAlertTypes.json - - Microsoft.Security/preview/2020-08-06-preview/iotRecommendations.json - - Microsoft.Security/preview/2020-08-06-preview/iotRecommendationTypes.json - -``` - -### Tag: schema-security-2020-07-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-security-2020-07-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Security/preview/2020-07-01-preview/sqlVulnerabilityAssessmentsScanOperations.json - - Microsoft.Security/preview/2020-07-01-preview/sqlVulnerabilityAssessmentsScanResultsOperations.json - - Microsoft.Security/preview/2020-07-01-preview/sqlVulnerabilityAssessmentsBaselineRuleOperations.json - -``` - -### Tag: schema-security-2020-01-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-security-2020-01-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Security/preview/2020-01-01-preview/secureScore.json - - Microsoft.Security/preview/2020-01-01-preview/connectors.json - -``` - -### Tag: schema-security-2020-01-01 and azureresourceschema - -``` yaml $(tag) == 'schema-security-2020-01-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Security/stable/2020-01-01/serverVulnerabilityAssessments.json - - Microsoft.Security/stable/2020-01-01/assessmentMetadata.json - - Microsoft.Security/stable/2020-01-01/assessments.json - - Microsoft.Security/stable/2020-01-01/applicationWhitelistings.json - - Microsoft.Security/stable/2020-01-01/adaptiveNetworkHardenings.json - - Microsoft.Security/stable/2020-01-01/allowedConnections.json - - Microsoft.Security/stable/2020-01-01/topologies.json - - Microsoft.Security/stable/2020-01-01/jitNetworkAccessPolicies.json - - Microsoft.Security/stable/2020-01-01/discoveredSecuritySolutions.json - - Microsoft.Security/stable/2020-01-01/securitySolutionsReferenceData.json - - Microsoft.Security/stable/2020-01-01/externalSecuritySolutions.json - - Microsoft.Security/stable/2020-01-01/secureScore.json - - Microsoft.Security/stable/2020-01-01/SecuritySolutions.json - - Microsoft.Security/stable/2020-01-01/alerts.json - -``` - -### Tag: schema-security-2019-08-01 and azureresourceschema - -``` yaml $(tag) == 'schema-security-2019-08-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Security/stable/2019-08-01/deviceSecurityGroups.json - - Microsoft.Security/stable/2019-08-01/iotSecuritySolutions.json - - Microsoft.Security/stable/2019-08-01/iotSecuritySolutionAnalytics.json - - Microsoft.Security/stable/2019-08-01/iotAlertTypes.json - - Microsoft.Security/stable/2019-08-01/iotAlerts.json - - Microsoft.Security/stable/2019-08-01/iotRecommendationTypes.json - - Microsoft.Security/stable/2019-08-01/iotRecommendations.json - -``` - -### Tag: schema-security-2019-01-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-security-2019-01-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Security/preview/2019-01-01-preview/automations.json - - Microsoft.Security/preview/2019-01-01-preview/subAssessments.json - - Microsoft.Security/preview/2019-01-01-preview/regulatoryCompliance.json - - Microsoft.Security/preview/2019-01-01-preview/alertsSuppressionRules.json - - Microsoft.Security/preview/2019-01-01-preview/assessmentMetadata.json - - Microsoft.Security/preview/2019-01-01-preview/assessments.json - -``` - -### Tag: schema-security-2019-01-01 and azureresourceschema - -``` yaml $(tag) == 'schema-security-2019-01-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Security/stable/2019-01-01/alerts.json - - Microsoft.Security/stable/2019-01-01/settings.json - - Microsoft.Security/stable/2019-01-01/advancedThreatProtectionSettings.json - -``` - -### Tag: schema-security-2018-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-security-2018-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Security/stable/2018-06-01/pricings.json - -``` - -### Tag: schema-security-2017-08-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-security-2017-08-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Security/preview/2017-08-01-preview/pricings.json - - Microsoft.Security/preview/2017-08-01-preview/securityContacts.json - - Microsoft.Security/preview/2017-08-01-preview/workspaceSettings.json - - Microsoft.Security/preview/2017-08-01-preview/autoProvisioningSettings.json - - Microsoft.Security/preview/2017-08-01-preview/compliances.json - - Microsoft.Security/preview/2017-08-01-preview/advancedThreatProtectionSettings.json - - Microsoft.Security/preview/2017-08-01-preview/deviceSecurityGroups.json - - Microsoft.Security/preview/2017-08-01-preview/settings.json - - Microsoft.Security/preview/2017-08-01-preview/informationProtectionPolicies.json - - Microsoft.Security/preview/2017-08-01-preview/iotSecuritySolutions.json - - Microsoft.Security/preview/2017-08-01-preview/iotSecuritySolutionAnalytics.json - -``` - -### Tag: schema-security-2017-08-01 and azureresourceschema - -``` yaml $(tag) == 'schema-security-2017-08-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Security/stable/2017-08-01/complianceResults.json - -``` - -### Tag: schema-security-2015-06-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-security-2015-06-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Security/preview/2015-06-01-preview/operations.json - - Microsoft.Security/preview/2015-06-01-preview/locations.json - - Microsoft.Security/preview/2015-06-01-preview/tasks.json - - Microsoft.Security/preview/2015-06-01-preview/alerts.json - - Microsoft.Security/preview/2015-06-01-preview/discoveredSecuritySolutions.json - - Microsoft.Security/preview/2015-06-01-preview/jitNetworkAccessPolicies.json - - Microsoft.Security/preview/2015-06-01-preview/applicationWhitelistings.json - - Microsoft.Security/preview/2015-06-01-preview/externalSecuritySolutions.json - - Microsoft.Security/preview/2015-06-01-preview/topologies.json - - Microsoft.Security/preview/2015-06-01-preview/allowedConnections.json - - Microsoft.Security/preview/2015-06-01-preview/adaptiveNetworkHardenings.json - -``` diff --git a/specification/security/resource-manager/readme.go.md b/specification/security/resource-manager/readme.go.md index 0a443c28ef8e..9416851acb01 100644 --- a/specification/security/resource-manager/readme.go.md +++ b/specification/security/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ```yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: security clear-output-folder: true ``` diff --git a/specification/security/resource-manager/readme.md b/specification/security/resource-manager/readme.md index 417405fb440f..23c851a84205 100644 --- a/specification/security/resource-manager/readme.md +++ b/specification/security/resource-manager/readme.md @@ -60,6 +60,14 @@ directive: from: onPremiseIotSensors.json where: $.definitions.OnPremiseIotSensor reason: The resource is managed in a subscription level (instead of inside a resource group) + - suppress: SECRET_PROPERTY + from: ingestionSettings.json + where: $.definitions.IngestionSettingToken.properties.token + reason: Secrets are OK to return in a POST response. + - suppress: SECRET_PROPERTY + from: ingestionSettings.json + where: $.definitions.IngestionConnectionString.properties.value + reason: Secrets are OK to return in a POST response. ``` ### Basic Information @@ -84,6 +92,7 @@ These settings apply only when `--tag=package-composite-v1` is specified on the ``` yaml $(tag) == 'package-composite-v1' input-file: +- Microsoft.Security/preview/2021-05-01-preview/softwareInventories.json - Microsoft.Security/preview/2020-07-01-preview/sqlVulnerabilityAssessmentsScanOperations.json - Microsoft.Security/preview/2020-07-01-preview/sqlVulnerabilityAssessmentsScanResultsOperations.json - Microsoft.Security/preview/2020-07-01-preview/sqlVulnerabilityAssessmentsBaselineRuleOperations.json @@ -113,6 +122,7 @@ input-file: - Microsoft.Security/preview/2015-06-01-preview/allowedConnections.json - Microsoft.Security/preview/2015-06-01-preview/adaptiveNetworkHardenings.json - Microsoft.Security/preview/2019-01-01-preview/alertsSuppressionRules.json +- Microsoft.Security/preview/2021-01-15-preview/ingestionSettings.json # Needed when there is more than one input file override-info: @@ -125,6 +135,7 @@ These settings apply only when `--tag=package-composite-v2` is specified on the ``` yaml $(tag) == 'package-composite-v2' input-file: +- Microsoft.Security/preview/2021-05-01-preview/softwareInventories.json - Microsoft.Security/preview/2020-07-01-preview/sqlVulnerabilityAssessmentsScanOperations.json - Microsoft.Security/preview/2020-07-01-preview/sqlVulnerabilityAssessmentsScanResultsOperations.json - Microsoft.Security/preview/2020-07-01-preview/sqlVulnerabilityAssessmentsBaselineRuleOperations.json @@ -156,6 +167,7 @@ input-file: - Microsoft.Security/preview/2015-06-01-preview/allowedConnections.json - Microsoft.Security/preview/2015-06-01-preview/adaptiveNetworkHardenings.json - Microsoft.Security/preview/2019-01-01-preview/alertsSuppressionRules.json +- Microsoft.Security/preview/2021-01-15-preview/ingestionSettings.json # Needed when there is more than one input file override-info: @@ -218,6 +230,8 @@ input-file: - Microsoft.Security/preview/2020-08-06-preview/iotRecommendations.json - Microsoft.Security/preview/2020-08-06-preview/iotRecommendationTypes.json - Microsoft.Security/stable/2021-01-01/alerts.json +- Microsoft.Security/preview/2021-01-15-preview/ingestionSettings.json +- Microsoft.Security/preview/2021-05-01-preview/softwareInventories.json # Needed when there is more than one input file override-info: @@ -433,6 +447,31 @@ override-info: title: SecurityCenter ``` +### Tag: package-2021-01-preview-only + +These settings apply only when `--tag=package-2021-01-preview-only` is specified on the command line. This tag is used for Ruby SDK. + +``` yaml $(tag) == 'package-2021-01-preview-only' +input-file: +- Microsoft.Security/preview/2021-01-15-preview/ingestionSettings.json +# Needed when there is more than one input file +override-info: + title: SecurityCenter +``` + +### Tag: package-2021-05-preview-only + +These settings apply only when `--tag=package-2021-05-preview-only` is specified on the command line. This tag is used for Ruby SDK. + +``` yaml $(tag) == 'package-package-2021-05-preview-only' +input-file: +- Microsoft.Security/preview/2021-05-01-preview/softwareInventories.json + +# Needed when there is more than one input file +override-info: + title: SecurityCenter +``` + --- # Code Generation @@ -450,8 +489,6 @@ swagger-to-sdk: - repo: azure-sdk-for-js - repo: azure-sdk-for-node - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js security/resource-manager ``` ## C# @@ -478,6 +515,4 @@ See configuration in [readme.typescript.md](./readme.typescript.md) See configuration in [readme.ruby.md](./readme.ruby.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/securityandcompliance/resource-manager/readme.azureresourceschema.md b/specification/securityandcompliance/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 0b7813c0d821..000000000000 --- a/specification/securityandcompliance/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,50 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-securityandcompliance-2021-01-11 -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-securityandcompliance-2021-01-11 and azureresourceschema - -``` yaml $(tag) == 'schema-securityandcompliance-2021-01-11' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.SecurityAndCompliance/stable/2021-01-11/common-types.json - - Microsoft.SecurityAndCompliance/stable/2021-01-11/privateLinkServicesForEDMUpload.json - - Microsoft.SecurityAndCompliance/stable/2021-01-11/privateLinkServicesForM365ComplianceCenter.json - - Microsoft.SecurityAndCompliance/stable/2021-01-11/privateLinkServicesForM365SecurityCenter.json - - Microsoft.SecurityAndCompliance/stable/2021-01-11/privateLinkServicesForO365ManagementActivityAPI.json - - Microsoft.SecurityAndCompliance/stable/2021-01-11/privateLinkServicesForSCCPowershell.json - -``` - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-securityandcompliance-2021-03-08 -``` - -### Tag: schema-securityandcompliance-2021-03-08 and azureresourceschema - -``` yaml $(tag) == 'schema-securityandcompliance-2021-03-08' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.SecurityAndCompliance/stable/2021-03-08/common-types.json - - Microsoft.SecurityAndCompliance/stable/2021-03-08/privateLinkServicesForEDMUpload.json - - Microsoft.SecurityAndCompliance/stable/2021-03-08/privateLinkServicesForM365ComplianceCenter.json - - Microsoft.SecurityAndCompliance/stable/2021-03-08/privateLinkServicesForM365SecurityCenter.json - - Microsoft.SecurityAndCompliance/stable/2021-03-08/privateLinkServicesForO365ManagementActivityAPI.json - - Microsoft.SecurityAndCompliance/stable/2021-03-08/privateLinkServicesForSCCPowershell.json - - Microsoft.SecurityAndCompliance/stable/2021-03-08/privateLinkServicesForMIPPolicySync.json - -``` diff --git a/specification/securityandcompliance/resource-manager/readme.go.md b/specification/securityandcompliance/resource-manager/readme.go.md index 0beac5910606..24591dacf6e2 100644 --- a/specification/securityandcompliance/resource-manager/readme.go.md +++ b/specification/securityandcompliance/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION clear-output-folder: true namespace: securityandcompliance ``` diff --git a/specification/securityandcompliance/resource-manager/readme.md b/specification/securityandcompliance/resource-manager/readme.md index cf0c5a6b2efd..7bb8b11db588 100644 --- a/specification/securityandcompliance/resource-manager/readme.md +++ b/specification/securityandcompliance/resource-manager/readme.md @@ -77,8 +77,6 @@ swagger-to-sdk: - repo: azure-sdk-for-node - repo: azure-sdk-for-python - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js securityandcompliance/resource-manager ``` ## C# @@ -157,7 +155,5 @@ See configuration in [readme.python.md](./readme.python.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/SecurityInsights.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/SecurityInsights.json index 4b4b3ece3e45..f7a1d2656d01 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/SecurityInsights.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/SecurityInsights.json @@ -1849,6 +1849,90 @@ } } }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SecurityInsights/enrichment/ip/geodata/": { + "get": { + "x-ms-examples": { + "Get geodata for a single IP address": { + "$ref": "./examples/enrichment/GetGeodataByIp.json" + } + }, + "tags": [ + "Enrichment" + ], + "description": "Get geodata for a single IP address", + "operationId": "IPGeodata_Get", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/EnrichmentIpAddress" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/EnrichmentIpGeodata" + } + }, + "default": { + "description": "Error response describing why the operation failed to enrich this ip.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SecurityInsights/enrichment/domain/whois/": { + "get": { + "x-ms-examples": { + "Get whois information for a single domain name": { + "$ref": "./examples/enrichment/GetWhoisByDomainName.json" + } + }, + "tags": [ + "Enrichment" + ], + "description": "Get whois information for a single domain name", + "operationId": "DomainWhois_Get", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/EnrichmentDomain" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/EnrichmentDomainWhois" + } + }, + "default": { + "description": "Error response describing why the operation failed to enrich this domain.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{operationalInsightsResourceProvider}/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/dataConnectors": { "get": { "x-ms-examples": { @@ -5029,7 +5113,10 @@ } }, "description": "Data type for Microsoft Threat Intelligence Platforms data connector.", - "type": "object" + "type": "object", + "required": [ + "lookbackPeriod" + ] }, "microsoftEmergingThreatFeed": { "allOf": [ @@ -5044,10 +5131,17 @@ } }, "description": "Data type for Microsoft Threat Intelligence Platforms data connector.", - "type": "object" + "type": "object", + "required": [ + "lookbackPeriod" + ] } }, - "type": "object" + "type": "object", + "required": [ + "bingSafetyPhishingURL", + "microsoftEmergingThreatFeed" + ] }, "MSTIDataConnectorProperties": { "allOf": [ @@ -5062,6 +5156,9 @@ "description": "The available data types for the connector." } }, + "required": [ + "dataTypes" + ], "type": "object" }, "MSTICheckRequirements": { @@ -5120,7 +5217,10 @@ "type": "object" } }, - "type": "object" + "type": "object", + "required": [ + "incidents" + ] }, "MTPDataConnectorProperties": { "allOf": [ @@ -5135,6 +5235,9 @@ "description": "The available data types for the connector." } }, + "required": [ + "dataTypes" + ], "type": "object" }, "MtpCheckRequirements": { @@ -5702,7 +5805,10 @@ "type": "object" } }, - "type": "object" + "type": "object", + "required": [ + "alerts" + ] }, "AttackTactic": { "description": "The severity for alerts created by this alert rule.", @@ -6418,7 +6524,10 @@ "type": "object" } }, - "type": "object" + "type": "object", + "required": [ + "logs" + ] }, "AwsCloudTrailDataConnectorProperties": { "description": "Amazon Web Services CloudTrail data connector properties.", @@ -6432,6 +6541,9 @@ "description": "The available data types for the connector." } }, + "required": [ + "dataTypes" + ], "type": "object" }, "AwsCloudTrailCheckRequirements": { @@ -7414,7 +7526,10 @@ } } }, - "type": "object" + "type": "object", + "required": [ + "state" + ] }, "DataConnectorKind": { "description": "Describes an Azure resource with kind.", @@ -7531,6 +7646,9 @@ "type": "string" } }, + "required": [ + "tenantId" + ], "type": "object" }, "DataConnectorWithAlertsProperties": { @@ -7625,7 +7743,10 @@ "type": "object" } }, - "type": "object" + "type": "object", + "required": [ + "dynamics365CdsActivities" + ] }, "Dynamics365DataConnectorProperties": { "allOf": [ @@ -7640,6 +7761,9 @@ "description": "The available data types for the connector." } }, + "required": [ + "dataTypes" + ], "type": "object" }, "Dynamics365CheckRequirements": { @@ -7668,6 +7792,239 @@ "description": "Dynamics365 requirements check properties.", "type": "object" }, + "EnrichmentDomainWhois": { + "description": "Whois information for a given domain and associated metadata", + "properties": { + "domain": { + "description": "The domain for this whois record", + "type": "string" + }, + "server": { + "description": "The hostname of this registrar's whois server", + "type": "string" + }, + "created": { + "description": "The timestamp at which this record was created", + "format": "date-time", + "type": "string" + }, + "updated": { + "description": "The timestamp at which this record was last updated", + "format": "date-time", + "type": "string" + }, + "expires": { + "description": "The timestamp at which this record will expire", + "format": "date-time", + "type": "string" + }, + "parsedWhois": { + "description": "The whois record for a given domain", + "$ref": "#/definitions/EnrichmentDomainWhoisDetails" + } + } + }, + "EnrichmentDomainWhoisDetails": { + "description": "The whois record for a given domain", + "properties": { + "registrar": { + "description": "The registrar associated with this domain", + "$ref": "#/definitions/EnrichmentDomainWhoisRegistrarDetails" + }, + "contacts": { + "description": "The set of contacts associated with this domain", + "$ref": "#/definitions/EnrichmentDomainWhoisContacts" + }, + "nameServers": { + "description": "A list of name servers associated with this domain", + "type": "array", + "items": { + "type": "string" + } + }, + "statuses": { + "description": "The set of status flags for this whois record", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "EnrichmentDomainWhoisRegistrarDetails": { + "description": "The registrar associated with this domain", + "properties": { + "name": { + "description": "The name of this registrar", + "type": "string" + }, + "abuseContactEmail": { + "description": "This registrar's abuse contact email", + "type": "string" + }, + "abuseContactPhone": { + "description": "This registrar's abuse contact phone number", + "type": "string" + }, + "ianaId": { + "description": "This registrar's Internet Assigned Numbers Authority id", + "type": "string" + }, + "url": { + "description": "This registrar's URL", + "type": "string" + }, + "whoisServer": { + "description": "The hostname of this registrar's whois server", + "type": "string" + } + } + }, + "EnrichmentDomainWhoisContacts": { + "description": "The set of contacts associated with this domain", + "properties": { + "admin": { + "description": "The admin contact for this whois record", + "$ref": "#/definitions/EnrichmentDomainWhoisContact" + }, + "billing": { + "description": "The billing contact for this whois record", + "$ref": "#/definitions/EnrichmentDomainWhoisContact" + }, + "registrant": { + "description": "The registrant contact for this whois record", + "$ref": "#/definitions/EnrichmentDomainWhoisContact" + }, + "tech": { + "description": "The technical contact for this whois record", + "$ref": "#/definitions/EnrichmentDomainWhoisContact" + } + } + }, + "EnrichmentDomainWhoisContact": { + "description": "An individual contact associated with this domain", + "properties": { + "name": { + "description": "The name of this contact", + "type": "string" + }, + "org": { + "description": "The organization for this contact", + "type": "string" + }, + "street": { + "description": "A list describing the street address for this contact", + "type": "array", + "items": { + "type": "string" + } + }, + "city": { + "description": "The city for this contact", + "type": "string" + }, + "state": { + "description": "The state for this contact", + "type": "string" + }, + "postal": { + "description": "The postal code for this contact", + "type": "string" + }, + "country": { + "description": "The country for this contact", + "type": "string" + }, + "phone": { + "description": "The phone number for this contact", + "type": "string" + }, + "fax": { + "description": "The fax number for this contact", + "type": "string" + }, + "email": { + "description": "The email address for this contact", + "type": "string" + } + } + }, + "EnrichmentIpGeodata": { + "description": "Geodata information for a given IP address", + "properties": { + "asn": { + "description": "The autonomous system number associated with this IP address", + "type": "string" + }, + "carrier": { + "description": "The name of the carrier for this IP address", + "type": "string" + }, + "city": { + "description": "The city this IP address is located in", + "type": "string" + }, + "cityCf": { + "description": "A numeric rating of confidence that the value in the 'city' field is correct, on a scale of 0-100", + "type": "integer", + "format": "int32" + }, + "continent": { + "description": "The continent this IP address is located on", + "type": "string" + }, + "country": { + "description": "The county this IP address is located in", + "type": "string" + }, + "countryCf": { + "description": "A numeric rating of confidence that the value in the 'country' field is correct on a scale of 0-100", + "type": "integer", + "format": "int32" + }, + "ipAddr": { + "description": "The dotted-decimal or colon-separated string representation of the IP address", + "type": "string" + }, + "ipRoutingType": { + "description": "A description of the connection type of this IP address", + "type": "string" + }, + "latitude": { + "description": "The latitude of this IP address", + "type": "string" + }, + "longitude": { + "description": "The longitude of this IP address", + "type": "string" + }, + "organization": { + "description": "The name of the organization for this IP address", + "type": "string" + }, + "organizationType": { + "description": "The type of the organization for this IP address", + "type": "string" + }, + "region": { + "description": "The geographic region this IP address is located in", + "type": "string" + }, + "state": { + "description": "The state this IP address is located in", + "type": "string" + }, + "stateCf": { + "description": "A numeric rating of confidence that the value in the 'state' field is correct on a scale of 0-100", + "type": "integer", + "format": "int32" + }, + "stateCode": { + "description": "The abbreviated name for the state this IP address is located in", + "type": "string" + } + } + }, "Entity": { "allOf": [ { @@ -10393,6 +10750,9 @@ "description": "The available data types for the connector." } }, + "required": [ + "dataTypes" + ], "type": "object" }, "MCASCheckRequirements": { @@ -10819,7 +11179,12 @@ "type": "object" } }, - "type": "object" + "type": "object", + "required": [ + "exchange", + "sharePoint", + "teams" + ] }, "OfficeDataConnectorProperties": { "allOf": [ @@ -10834,6 +11199,9 @@ "description": "The available data types for the connector." } }, + "required": [ + "dataTypes" + ], "type": "object" }, "Operation": { @@ -12050,7 +12418,10 @@ "type": "object" } }, - "type": "object" + "type": "object", + "required": [ + "indicators" + ] }, "TIDataConnectorProperties": { "description": "TI (Threat Intelligence) data connector properties.", @@ -12070,7 +12441,11 @@ "description": "The available data types for the connector." } }, - "type": "object" + "type": "object", + "required": [ + "tenantId", + "dataTypes" + ] }, "TICheckRequirements": { "allOf": [ @@ -12129,7 +12504,10 @@ "type": "object" } }, - "type": "object" + "type": "object", + "required": [ + "taxiiClient" + ] }, "TiTaxiiDataConnectorProperties": { "allOf": [ @@ -12202,6 +12580,10 @@ "description": "The available data types for Threat Intelligence TAXII data connector." } }, + "required": [ + "dataTypes", + "pollingFrequency" + ], "type": "object" }, "TiTaxiiCheckRequirements": { @@ -13845,6 +14227,22 @@ }, "x-ms-parameter-location": "method" }, + "EnrichmentDomain": { + "description": "Domain name to be enriched", + "in": "query", + "name": "domain", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "EnrichmentIpAddress": { + "description": "IP address (v4 or v6) to be enriched", + "in": "query", + "name": "ipAddress", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, "EntityExpandRequestBody": { "description": "The parameters required to execute an expand operation on the given entity.", "in": "body", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/actions/CreateActionOfAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/actions/CreateActionOfAlertRule.json index 70983078afb8..b9646c9a04cc 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/actions/CreateActionOfAlertRule.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/actions/CreateActionOfAlertRule.json @@ -18,7 +18,7 @@ "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5/actions/912bec42-cb66-4c03-ac63-1761b6898c3e", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5/actions/912bec42-cb66-4c03-ac63-1761b6898c3e", "name": "912bec42-cb66-4c03-ac63-1761b6898c3e", "type": "Microsoft.SecurityInsights/alertRules/actions", "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", @@ -30,7 +30,7 @@ }, "201": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5/actions/912bec42-cb66-4c03-ac63-1761b6898c3e", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5/actions/912bec42-cb66-4c03-ac63-1761b6898c3e", "name": "912bec42-cb66-4c03-ac63-1761b6898c3e", "type": "Microsoft.SecurityInsights/alertRules/actions", "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/actions/DeleteActionOfAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/actions/DeleteActionOfAlertRule.json index af1bd0d03727..9bac7acf3f78 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/actions/DeleteActionOfAlertRule.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/actions/DeleteActionOfAlertRule.json @@ -4,7 +4,7 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "ruleId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", "actionId": "912bec42-cb66-4c03-ac63-1761b6898c3e" }, diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/actions/GetActionOfAlertRuleById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/actions/GetActionOfAlertRuleById.json index 4501f69a57cb..d67ffd31d373 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/actions/GetActionOfAlertRuleById.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/actions/GetActionOfAlertRuleById.json @@ -4,14 +4,14 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "ruleId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", "actionId": "912bec42-cb66-4c03-ac63-1761b6898c3e" }, "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5/actions/912bec42-cb66-4c03-ac63-1761b6898c3e", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5/actions/912bec42-cb66-4c03-ac63-1761b6898c3e", "name": "912bec42-cb66-4c03-ac63-1761b6898c3e", "type": "Microsoft.SecurityInsights/alertRules/actions", "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/actions/GetAllActionsByAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/actions/GetAllActionsByAlertRule.json index f6e415ce6c5d..25672aac6755 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/actions/GetAllActionsByAlertRule.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/actions/GetAllActionsByAlertRule.json @@ -4,7 +4,7 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "ruleId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5" }, "responses": { @@ -12,7 +12,7 @@ "body": { "value": [ { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5/actions/912bec42-cb66-4c03-ac63-1761b6898c3e", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5/actions/912bec42-cb66-4c03-ac63-1761b6898c3e", "name": "912bec42-cb66-4c03-ac63-1761b6898c3e", "type": "Microsoft.SecurityInsights/alertRules/actions", "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRuleTemplates/GetAlertRuleTemplateById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRuleTemplates/GetAlertRuleTemplateById.json index c8bf2e708639..02e76a6ec86f 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRuleTemplates/GetAlertRuleTemplateById.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRuleTemplates/GetAlertRuleTemplateById.json @@ -4,13 +4,13 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "alertRuleTemplateId": "65360bb0-8986-4ade-a89d-af3cf44d28aa" }, "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRuleTemplates/65360bb0-8986-4ade-a89d-af3cf44d28aa", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRuleTemplates/65360bb0-8986-4ade-a89d-af3cf44d28aa", "name": "65360bb0-8986-4ade-a89d-af3cf44d28aa", "type": "Microsoft.SecurityInsights/AlertRuleTemplates", "kind": "Scheduled", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRuleTemplates/GetAlertRuleTemplates.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRuleTemplates/GetAlertRuleTemplates.json index d7465f160737..060fabfb33dd 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRuleTemplates/GetAlertRuleTemplates.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRuleTemplates/GetAlertRuleTemplates.json @@ -4,14 +4,14 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights" + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights" }, "responses": { "200": { "body": { "value": [ { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/AlertRuleTemplates/65360bb0-8986-4ade-a89d-af3cf44d28aa", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/AlertRuleTemplates/65360bb0-8986-4ade-a89d-af3cf44d28aa", "name": "65360bb0-8986-4ade-a89d-af3cf44d28aa", "type": "Microsoft.SecurityInsights/AlertRuleTemplates", "kind": "Scheduled", @@ -43,7 +43,7 @@ } }, { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/AlertRuleTemplates/f71aba3d-28fb-450b-b192-4e76a83015c8", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/AlertRuleTemplates/f71aba3d-28fb-450b-b192-4e76a83015c8", "name": "f71aba3d-28fb-450b-b192-4e76a83015c8", "type": "Microsoft.SecurityInsights/AlertRuleTemplates", "kind": "Fusion", @@ -64,7 +64,7 @@ } }, { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/AlertRuleTemplates/b3cfc7c0-092c-481c-a55b-34a3979758cb", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/AlertRuleTemplates/b3cfc7c0-092c-481c-a55b-34a3979758cb", "name": "b3cfc7c0-092c-481c-a55b-34a3979758cb", "type": "Microsoft.SecurityInsights/AlertRuleTemplates", "kind": "MicrosoftSecurityIncidentCreation", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/CreateFusionAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/CreateFusionAlertRule.json index 5e14cc180679..2c9605f90548 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/CreateFusionAlertRule.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/CreateFusionAlertRule.json @@ -18,7 +18,7 @@ "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/myFirstFusionRule", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/myFirstFusionRule", "name": "myFirstFusionRule", "etag": "\"260090e2-0000-0d00-0000-5d6fb8670000\"", "type": "Microsoft.SecurityInsights/alertRules", @@ -41,7 +41,7 @@ }, "201": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/myFirstFusionRule", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/myFirstFusionRule", "name": "myFirstFusionRule", "etag": "\"260090e2-0000-0d00-0000-5d6fb8670000\"", "type": "Microsoft.SecurityInsights/alertRules", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/CreateMicrosoftSecurityIncidentCreationAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/CreateMicrosoftSecurityIncidentCreationAlertRule.json index e508373c9660..0d0009cb6b1d 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/CreateMicrosoftSecurityIncidentCreationAlertRule.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/CreateMicrosoftSecurityIncidentCreationAlertRule.json @@ -19,7 +19,7 @@ "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/microsoftSecurityIncidentCreationRuleExample", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/microsoftSecurityIncidentCreationRuleExample", "name": "microsoftSecurityIncidentCreationRuleExample", "etag": "\"260097e0-0000-0d00-0000-5d6fa88f0000\"", "type": "Microsoft.SecurityInsights/alertRules", @@ -38,7 +38,7 @@ }, "201": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/microsoftSecurityIncidentCreationRuleExample", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/microsoftSecurityIncidentCreationRuleExample", "name": "microsoftSecurityIncidentCreationRuleExample", "etag": "\"260097e0-0000-0d00-0000-5d6fa88f0000\"", "type": "Microsoft.SecurityInsights/alertRules", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/CreateScheduledAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/CreateScheduledAlertRule.json index c03e8e794cbd..153980fde20d 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/CreateScheduledAlertRule.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/CreateScheduledAlertRule.json @@ -47,7 +47,7 @@ "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5", "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", "type": "Microsoft.SecurityInsights/alertRules", "kind": "Scheduled", @@ -91,7 +91,7 @@ }, "201": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5", "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", "type": "Microsoft.SecurityInsights/alertRules", "kind": "Scheduled", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/DeleteAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/DeleteAlertRule.json index 8483cfc354d6..45ff1c95ad3f 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/DeleteAlertRule.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/DeleteAlertRule.json @@ -4,7 +4,7 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "ruleId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5" }, "responses": { diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/GetAllAlertRules.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/GetAllAlertRules.json index ccf7c6c6ed5d..d88a4ee57ba1 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/GetAllAlertRules.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/GetAllAlertRules.json @@ -4,14 +4,14 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights" + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights" }, "responses": { "200": { "body": { "value": [ { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5", "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", "type": "Microsoft.SecurityInsights/alertRules", "kind": "Scheduled", @@ -53,7 +53,7 @@ } }, { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/microsoftSecurityIncidentCreationRuleExample", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/microsoftSecurityIncidentCreationRuleExample", "name": "microsoftSecurityIncidentCreationRuleExample", "etag": "\"260097e0-0000-0d00-0000-5d6fa88f0000\"", "type": "Microsoft.SecurityInsights/alertRules", @@ -70,7 +70,7 @@ } }, { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/myFirstFusionRule", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/myFirstFusionRule", "name": "myFirstFusionRule", "etag": "\"25005c11-0000-0d00-0000-5d6cc0e20000\"", "type": "Microsoft.SecurityInsights/alertRules", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/GetFusionAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/GetFusionAlertRule.json index d53f95e4c84e..f5020610ccf2 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/GetFusionAlertRule.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/GetFusionAlertRule.json @@ -4,13 +4,13 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "ruleId": "myFirstFusionRule" }, "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/myFirstFusionRule", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/myFirstFusionRule", "name": "myFirstFusionRule", "etag": "\"260090e2-0000-0d00-0000-5d6fb8670000\"", "type": "Microsoft.SecurityInsights/alertRules", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/GetMicrosoftSecurityIncidentCreationAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/GetMicrosoftSecurityIncidentCreationAlertRule.json index db8510ffb988..39470e168e5f 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/GetMicrosoftSecurityIncidentCreationAlertRule.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/GetMicrosoftSecurityIncidentCreationAlertRule.json @@ -4,13 +4,13 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "ruleId": "microsoftSecurityIncidentCreationRuleExample" }, "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/microsoftSecurityIncidentCreationRuleExample", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/microsoftSecurityIncidentCreationRuleExample", "name": "microsoftSecurityIncidentCreationRuleExample", "etag": "\"260097e0-0000-0d00-0000-5d6fa88f0000\"", "type": "Microsoft.SecurityInsights/alertRules", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/GetScheduledAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/GetScheduledAlertRule.json index d4dc43f15071..bb101e34440d 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/GetScheduledAlertRule.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/GetScheduledAlertRule.json @@ -4,13 +4,13 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "ruleId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5" }, "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5", "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", "type": "Microsoft.SecurityInsights/alertRules", "kind": "Scheduled", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/CreateBookmark.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/CreateBookmark.json index af9c4dc03c91..e0735815ccc4 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/CreateBookmark.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/CreateBookmark.json @@ -31,7 +31,7 @@ "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/73e01a99-5cd7-4139-a149-9f2736ff2ab5", "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", "type": "Microsoft.SecurityInsights/bookmarks", "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", @@ -61,7 +61,7 @@ }, "201": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/73e01a99-5cd7-4139-a149-9f2736ff2ab5", "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", "type": "Microsoft.SecurityInsights/bookmarks", "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/DeleteBookmark.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/DeleteBookmark.json index a8caa7a62607..75aa6ebd85e5 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/DeleteBookmark.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/DeleteBookmark.json @@ -4,7 +4,7 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "bookmarkId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5" }, "responses": { diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/GetBookmarkById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/GetBookmarkById.json index 12fb6b2fbf7d..2d9829a92e58 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/GetBookmarkById.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/GetBookmarkById.json @@ -4,13 +4,13 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "bookmarkId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5" }, "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/73e01a99-5cd7-4139-a149-9f2736ff2ab5", "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", "type": "Microsoft.SecurityInsights/bookmarks", "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/GetBookmarks.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/GetBookmarks.json index 581dddb31d94..83b3911c67e7 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/GetBookmarks.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/GetBookmarks.json @@ -4,14 +4,14 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights" + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights" }, "responses": { "200": { "body": { "value": [ { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/73e01a99-5cd7-4139-a149-9f2736ff2ab5", "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", "type": "Microsoft.SecurityInsights/bookmarks", "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/expand/PostExpandBookmark.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/expand/PostExpandBookmark.json index a8788054e17a..6db0bd9214e0 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/expand/PostExpandBookmark.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/expand/PostExpandBookmark.json @@ -4,7 +4,7 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "bookmarkId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", "parameters": { "expansionId": "27f76e63-c41b-480f-bb18-12ad2e011d49", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/relations/CreateBookmarkRelation.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/relations/CreateBookmarkRelation.json index 9c539588f1f8..661741911088 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/relations/CreateBookmarkRelation.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/relations/CreateBookmarkRelation.json @@ -9,19 +9,19 @@ "relationName": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "relation": { "properties": { - "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/afbd324f-6c48-459c-8710-8d1e1cd03812" + "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/afbd324f-6c48-459c-8710-8d1e1cd03812" } } }, "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/2216d0e1-91e3-4902-89fd-d2df8c535096/relations/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/2216d0e1-91e3-4902-89fd-d2df8c535096/relations/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "type": "Microsoft.SecurityInsights/bookmarks/relations", "etag": "190057d0-0000-0d00-0000-5c6f5adb0000", "properties": { - "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/afbd324f-6c48-459c-8710-8d1e1cd03812", + "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/afbd324f-6c48-459c-8710-8d1e1cd03812", "relatedResourceName": "afbd324f-6c48-459c-8710-8d1e1cd03812", "relatedResourceType": "Microsoft.SecurityInsights/incidents" } @@ -29,12 +29,12 @@ }, "201": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/2216d0e1-91e3-4902-89fd-d2df8c535096/relations/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/2216d0e1-91e3-4902-89fd-d2df8c535096/relations/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "type": "Microsoft.SecurityInsights/bookmarks/relations", "etag": "190057d0-0000-0d00-0000-5c6f5adb0000", "properties": { - "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/afbd324f-6c48-459c-8710-8d1e1cd03812", + "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/afbd324f-6c48-459c-8710-8d1e1cd03812", "relatedResourceName": "afbd324f-6c48-459c-8710-8d1e1cd03812", "relatedResourceType": "Microsoft.SecurityInsights/incidents" } diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/relations/DeleteBookmarkRelation.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/relations/DeleteBookmarkRelation.json index c613dd8d9e77..0a4bc219e23e 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/relations/DeleteBookmarkRelation.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/relations/DeleteBookmarkRelation.json @@ -4,7 +4,7 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "bookmarkId": "2216d0e1-91e3-4902-89fd-d2df8c535096", "relationName": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014" }, diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/relations/GetAllBookmarkRelations.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/relations/GetAllBookmarkRelations.json index f9648d084a97..edd5062ce61e 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/relations/GetAllBookmarkRelations.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/relations/GetAllBookmarkRelations.json @@ -4,7 +4,7 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "bookmarkId": "2216d0e1-91e3-4902-89fd-d2df8c535096" }, "responses": { @@ -12,12 +12,12 @@ "body": { "value": [ { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/2216d0e1-91e3-4902-89fd-d2df8c535096/relations/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/2216d0e1-91e3-4902-89fd-d2df8c535096/relations/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "type": "Microsoft.SecurityInsights/bookmarks/relations", "etag": "190057d0-0000-0d00-0000-5c6f5adb0000", "properties": { - "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/afbd324f-6c48-459c-8710-8d1e1cd03812", + "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/afbd324f-6c48-459c-8710-8d1e1cd03812", "relatedResourceName": "afbd324f-6c48-459c-8710-8d1e1cd03812", "relatedResourceType": "Microsoft.SecurityInsights/incidents" } diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/relations/GetBookmarkRelationByName.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/relations/GetBookmarkRelationByName.json index f03b116a69f2..c02146c3c661 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/relations/GetBookmarkRelationByName.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/relations/GetBookmarkRelationByName.json @@ -4,19 +4,19 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "bookmarkId": "2216d0e1-91e3-4902-89fd-d2df8c535096", "relationName": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014" }, "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/2216d0e1-91e3-4902-89fd-d2df8c535096/relations/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/2216d0e1-91e3-4902-89fd-d2df8c535096/relations/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "type": "Microsoft.SecurityInsights/bookmarks/relations", "etag": "190057d0-0000-0d00-0000-5c6f5adb0000", "properties": { - "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/afbd324f-6c48-459c-8710-8d1e1cd03812", + "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/afbd324f-6c48-459c-8710-8d1e1cd03812", "relatedResourceName": "afbd324f-6c48-459c-8710-8d1e1cd03812", "relatedResourceType": "Microsoft.SecurityInsights/incidents" } diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/CreateCase.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/CreateCase.json index 175dadb402ec..3a22fdc9776e 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/CreateCase.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/CreateCase.json @@ -29,7 +29,7 @@ "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/cases/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/cases/73e01a99-5cd7-4139-a149-9f2736ff2ab5", "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", "type": "Microsoft.SecurityInsights/cases", "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", @@ -62,7 +62,7 @@ }, "201": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/cases/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/cases/73e01a99-5cd7-4139-a149-9f2736ff2ab5", "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", "type": "Microsoft.SecurityInsights/cases", "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/DeleteCase.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/DeleteCase.json index 8724e8edc2a2..90581fc84224 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/DeleteCase.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/DeleteCase.json @@ -4,7 +4,7 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "caseId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5" }, "responses": { diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/GetCaseById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/GetCaseById.json index bc910ada2839..7e290b8e7f73 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/GetCaseById.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/GetCaseById.json @@ -4,13 +4,13 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "caseId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5" }, "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/cases/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/cases/73e01a99-5cd7-4139-a149-9f2736ff2ab5", "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", "type": "Microsoft.SecurityInsights/cases", "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/GetCases.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/GetCases.json index abe154c9de63..be30141c8f38 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/GetCases.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/GetCases.json @@ -4,7 +4,7 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "$orderby": "properties/createdTimeUtc desc", "$top": 1 }, @@ -13,7 +13,7 @@ "body": { "value": [ { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/cases/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/cases/73e01a99-5cd7-4139-a149-9f2736ff2ab5", "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", "type": "Microsoft.SecurityInsights/cases", "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/comments/CreateCaseComment.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/comments/CreateCaseComment.json index f87f16a08fc5..345e3eb6b51a 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/comments/CreateCaseComment.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/comments/CreateCaseComment.json @@ -16,7 +16,7 @@ "responses": { "201": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/cases/73e01a99-5cd7-4139-a149-9f2736ff2ab5/comments/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/cases/73e01a99-5cd7-4139-a149-9f2736ff2ab5/comments/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "type": "Microsoft.SecurityInsights/cases/comments", "properties": { diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/comments/GetAllCaseComments.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/comments/GetAllCaseComments.json index 739f440774dd..9ca262b1ed71 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/comments/GetAllCaseComments.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/comments/GetAllCaseComments.json @@ -4,7 +4,7 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "caseId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5" }, "responses": { @@ -12,7 +12,7 @@ "body": { "value": [ { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/cases/73e01a99-5cd7-4139-a149-9f2736ff2ab5/comments/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/cases/73e01a99-5cd7-4139-a149-9f2736ff2ab5/comments/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "type": "Microsoft.SecurityInsights/cases/comments", "properties": { diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/comments/GetCaseCommentById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/comments/GetCaseCommentById.json index 4a6b85d23b77..72aefbb05ac9 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/comments/GetCaseCommentById.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/comments/GetCaseCommentById.json @@ -4,14 +4,14 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "caseId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", "caseCommentId": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014" }, "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/cases/73e01a99-5cd7-4139-a149-9f2736ff2ab5/comments/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/cases/73e01a99-5cd7-4139-a149-9f2736ff2ab5/comments/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "type": "Microsoft.SecurityInsights/cases/comments", "properties": { diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/relations/CreateCaseRelation.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/relations/CreateCaseRelation.json index ee9a7c92b6c6..73a38c85ef34 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/relations/CreateCaseRelation.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/relations/CreateCaseRelation.json @@ -21,7 +21,7 @@ "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/cases/afbd324f-6c48-459c-8710-8d1e1cd03812/relations/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/cases/afbd324f-6c48-459c-8710-8d1e1cd03812/relations/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "type": "Microsoft.SecurityInsights/cases/relations", "kind": "CasesToBookmarks", @@ -36,7 +36,7 @@ }, "201": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/cases/afbd324f-6c48-459c-8710-8d1e1cd03812/relations/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/cases/afbd324f-6c48-459c-8710-8d1e1cd03812/relations/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "type": "Microsoft.SecurityInsights/cases/relations", "kind": "CasesToBookmarks", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/relations/DeleteCaseRelation.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/relations/DeleteCaseRelation.json index 6868677a15e6..f2c639b88a2c 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/relations/DeleteCaseRelation.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/relations/DeleteCaseRelation.json @@ -4,7 +4,7 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "caseId": "afbd324f-6c48-459c-8710-8d1e1cd03812", "relationName": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014" }, diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/relations/GetAllCaseRelations.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/relations/GetAllCaseRelations.json index 6bc6240dfc4d..eeb5656e527a 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/relations/GetAllCaseRelations.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/relations/GetAllCaseRelations.json @@ -4,7 +4,7 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "caseId": "afbd324f-6c48-459c-8710-8d1e1cd03812" }, "responses": { @@ -12,7 +12,7 @@ "body": { "value": [ { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/cases/afbd324f-6c48-459c-8710-8d1e1cd03812/relations/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/cases/afbd324f-6c48-459c-8710-8d1e1cd03812/relations/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "type": "Microsoft.SecurityInsights/cases/relations", "kind": "CasesToBookmarks", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/relations/GetCaseRelationByName.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/relations/GetCaseRelationByName.json index d7866b66c5b8..94f60b008879 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/relations/GetCaseRelationByName.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/relations/GetCaseRelationByName.json @@ -4,14 +4,14 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "caseId": "afbd324f-6c48-459c-8710-8d1e1cd03812", "relationName": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014" }, "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/cases/afbd324f-6c48-459c-8710-8d1e1cd03812/relations/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/cases/afbd324f-6c48-459c-8710-8d1e1cd03812/relations/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "type": "Microsoft.SecurityInsights/cases/relations", "kind": "CasesToBookmarks", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsAzureActiveDirectory.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsAzureActiveDirectory.json index 1537ba3e8a72..8c1b4a54c610 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsAzureActiveDirectory.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsAzureActiveDirectory.json @@ -4,7 +4,7 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "DataConnectorsCheckRequirements": { "kind": "AzureActiveDirectory", "properties": { diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsAzureActiveDirectoryNoAuthorization.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsAzureActiveDirectoryNoAuthorization.json index 1537ba3e8a72..8c1b4a54c610 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsAzureActiveDirectoryNoAuthorization.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsAzureActiveDirectoryNoAuthorization.json @@ -4,7 +4,7 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "DataConnectorsCheckRequirements": { "kind": "AzureActiveDirectory", "properties": { diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsAzureActiveDirectoryNoLicense.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsAzureActiveDirectoryNoLicense.json index 1537ba3e8a72..8c1b4a54c610 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsAzureActiveDirectoryNoLicense.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsAzureActiveDirectoryNoLicense.json @@ -4,7 +4,7 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "DataConnectorsCheckRequirements": { "kind": "AzureActiveDirectory", "properties": { diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsAzureSecurityCenter.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsAzureSecurityCenter.json index 7e6c5db280a4..782af2f93719 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsAzureSecurityCenter.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsAzureSecurityCenter.json @@ -4,7 +4,7 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "DataConnectorsCheckRequirements": { "kind": "AzureSecurityCenter", "properties": { diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsDynamics365.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsDynamics365.json index fbbe72c64327..090e4b5b40b3 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsDynamics365.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsDynamics365.json @@ -4,7 +4,7 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "DataConnectorsCheckRequirements": { "kind": "Dynamics365", "properties": { diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsMdatp.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsMdatp.json index 9bafdafddb32..f404ff1c5da0 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsMdatp.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsMdatp.json @@ -4,7 +4,7 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "DataConnectorsCheckRequirements": { "kind": "MicrosoftCloudAppSecurity", "properties": { diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsMicrosoftCloudAppSecurity.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsMicrosoftCloudAppSecurity.json index 9bafdafddb32..f404ff1c5da0 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsMicrosoftCloudAppSecurity.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsMicrosoftCloudAppSecurity.json @@ -4,7 +4,7 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "DataConnectorsCheckRequirements": { "kind": "MicrosoftCloudAppSecurity", "properties": { diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsMicrosoftThreatIntelligence.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsMicrosoftThreatIntelligence.json index 688399bf1e28..9f419962a181 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsMicrosoftThreatIntelligence.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsMicrosoftThreatIntelligence.json @@ -4,7 +4,7 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "DataConnectorsCheckRequirements": { "kind": "MicrosoftThreatIntelligence", "properties": { diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsMicrosoftThreatProtection.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsMicrosoftThreatProtection.json index 27878f3b4ab4..b90142f46e2b 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsMicrosoftThreatProtection.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsMicrosoftThreatProtection.json @@ -4,7 +4,7 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "DataConnectorsCheckRequirements": { "kind": "MicrosoftThreatProtection", "properties": { diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsOfficeATP.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsOfficeATP.json index 2e1b31f61760..d84f4b5527db 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsOfficeATP.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsOfficeATP.json @@ -4,7 +4,7 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "DataConnectorsCheckRequirements": { "kind": "OfficeATP", "properties": { diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsThreatIntelligence.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsThreatIntelligence.json index e5021e1ecbd9..d862f472054f 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsThreatIntelligence.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsThreatIntelligence.json @@ -4,7 +4,7 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "DataConnectorsCheckRequirements": { "kind": "ThreatIntelligence", "properties": { diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsThreatIntelligenceTaxii.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsThreatIntelligenceTaxii.json index cf0b1c18c239..662be2785c92 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsThreatIntelligenceTaxii.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsThreatIntelligenceTaxii.json @@ -4,7 +4,7 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "DataConnectorsCheckRequirements": { "kind": "ThreatIntelligenceTaxii", "properties": { diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CreateDynamics365DataConnetor.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CreateDynamics365DataConnetor.json index 0e6c38114ae9..5ffa8d38a641 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CreateDynamics365DataConnetor.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CreateDynamics365DataConnetor.json @@ -22,7 +22,7 @@ "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5", "name": "c2541efb-c9a6-47fe-9501-87d1017d1512", "type": "Microsoft.SecurityInsights/dataConnectors", "kind": "Dynamics365", @@ -39,7 +39,7 @@ }, "201": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5", "name": "c2541efb-c9a6-47fe-9501-87d1017d1512", "type": "Microsoft.SecurityInsights/dataConnectors", "kind": "Dynamics365", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CreateOfficeDataConnetor.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CreateOfficeDataConnetor.json index 7bab944cb7e8..dd3597364980 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CreateOfficeDataConnetor.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CreateOfficeDataConnetor.json @@ -28,7 +28,7 @@ "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5", "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", "type": "Microsoft.SecurityInsights/dataConnectors", "kind": "Office365", @@ -51,7 +51,7 @@ }, "201": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5", "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", "type": "Microsoft.SecurityInsights/dataConnectors", "kind": "Office365", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CreateThreatIntelligenceDataConnector.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CreateThreatIntelligenceDataConnector.json index 61b536af1ffa..ae4f013317e1 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CreateThreatIntelligenceDataConnector.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CreateThreatIntelligenceDataConnector.json @@ -22,7 +22,7 @@ "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5", "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", "type": "Microsoft.SecurityInsights/dataConnectors", "kind": "ThreatIntelligence", @@ -40,7 +40,7 @@ }, "201": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5", "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", "type": "Microsoft.SecurityInsights/dataConnectors", "kind": "ThreatIntelligence", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CreateThreatIntelligenceTaxiiDataConnector.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CreateThreatIntelligenceTaxiiDataConnector.json index 9313356bf2f3..923b7bbf2524 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CreateThreatIntelligenceTaxiiDataConnector.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CreateThreatIntelligenceTaxiiDataConnector.json @@ -30,7 +30,7 @@ "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5", "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", "type": "Microsoft.SecurityInsights/dataConnectors", "etag": "d12423f6-a60b-4ca5-88c0-feb1a182d0f0", @@ -55,7 +55,7 @@ }, "201": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5", "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", "type": "Microsoft.SecurityInsights/dataConnectors", "etag": "d12423f6-a60b-4ca5-88c0-feb1a182d0f0", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/DeleteOfficeDataConnetor.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/DeleteOfficeDataConnetor.json index bbf6a13976c5..e226cb4183a4 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/DeleteOfficeDataConnetor.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/DeleteOfficeDataConnetor.json @@ -4,7 +4,7 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "dataConnectorId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5" }, "responses": { diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/GetAzureActiveDirectoryById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/GetAzureActiveDirectoryById.json index e4e4e794bd45..9d43733d314c 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/GetAzureActiveDirectoryById.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/GetAzureActiveDirectoryById.json @@ -4,13 +4,13 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "dataConnectorId": "f0cd27d2-5f03-4c06-ba31-d2dc82dcb51d" }, "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/f0cd27d2-5f03-4c06-ba31-d2dc82dcb51d", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/f0cd27d2-5f03-4c06-ba31-d2dc82dcb51d", "name": "f0cd27d2-5f03-4c06-ba31-d2dc82dcb51d", "type": "Microsoft.SecurityInsights/dataConnectors", "kind": "AzureActiveDirectory", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/GetAzureSecurityCenterById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/GetAzureSecurityCenterById.json index 480a760109b6..77fa2804dbc6 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/GetAzureSecurityCenterById.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/GetAzureSecurityCenterById.json @@ -4,13 +4,13 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "dataConnectorId": "763f9fa1-c2d3-4fa2-93e9-bccd4899aa12" }, "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/763f9fa1-c2d3-4fa2-93e9-bccd4899aa12", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/763f9fa1-c2d3-4fa2-93e9-bccd4899aa12", "name": "763f9fa1-c2d3-4fa2-93e9-bccd4899aa12", "type": "Microsoft.SecurityInsights/dataConnectors", "kind": "AzureSecurityCenter", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/GetDataConnectors.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/GetDataConnectors.json index 6ac1af725510..9c253b18091a 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/GetDataConnectors.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/GetDataConnectors.json @@ -41,7 +41,7 @@ } }, { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/c39bb458-02a7-4b3f-b0c8-71a1d2692652", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/c39bb458-02a7-4b3f-b0c8-71a1d2692652", "name": "c39bb458-02a7-4b3f-b0c8-71a1d2692652", "type": "Microsoft.SecurityInsights/dataConnectors", "kind": "ThreatIntelligenceTaxii", @@ -54,6 +54,7 @@ "collectionId": "e0b1f32d-1188-48f7-a7a3-de71924e4b5e", "userName": "", "password": "", + "pollingFrequency": "OnceAMinute", "dataTypes": { "taxiiClient": { "state": "Enabled" @@ -90,6 +91,9 @@ }, "exchange": { "state": "Enabled" + }, + "teams": { + "state": "Enabled" } } } diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/GetMicrosoftThreatIntelligenceById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/GetMicrosoftThreatIntelligenceById.json index ea2eacdb75a8..f459ef934637 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/GetMicrosoftThreatIntelligenceById.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/GetMicrosoftThreatIntelligenceById.json @@ -4,13 +4,13 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "dataConnectorId": "c345bf40-8509-4ed2-b947-50cb773aaf04" }, "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/c345bf40-8509-4ed2-b947-50cb773aaf04", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/c345bf40-8509-4ed2-b947-50cb773aaf04", "name": "c345bf40-8509-4ed2-b947-50cb773aaf04", "type": "Microsoft.SecurityInsights/dataConnectors", "kind": "MicrosoftThreatIntelligence", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/GetMicrosoftThreatProtectionById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/GetMicrosoftThreatProtectionById.json index 9bd741e67982..ffcc45f395c8 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/GetMicrosoftThreatProtectionById.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/GetMicrosoftThreatProtectionById.json @@ -4,13 +4,13 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "dataConnectorId": "c345bf40-8509-4ed2-b947-50cb773aaf04" }, "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/c345bf40-8509-4ed2-b947-50cb773aaf04", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/c345bf40-8509-4ed2-b947-50cb773aaf04", "name": "c345bf40-8509-4ed2-b947-50cb773aaf04", "type": "Microsoft.SecurityInsights/dataConnectors", "kind": "MicrosoftThreatProtection", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/GetOfficeDataConnetorById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/GetOfficeDataConnetorById.json index 2ba766091cf3..d7b7b59dc501 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/GetOfficeDataConnetorById.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/GetOfficeDataConnetorById.json @@ -4,13 +4,13 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "dataConnectorId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5" }, "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5", "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", "type": "Microsoft.SecurityInsights/dataConnectors", "kind": "Office365", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/GetThreatIntelligenceById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/GetThreatIntelligenceById.json index f87d42dcdfd1..48c7ef9df717 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/GetThreatIntelligenceById.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/GetThreatIntelligenceById.json @@ -4,13 +4,13 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "dataConnectorId": "c345bf40-8509-4ed2-b947-50cb773aaf04" }, "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/c345bf40-8509-4ed2-b947-50cb773aaf04", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/c345bf40-8509-4ed2-b947-50cb773aaf04", "name": "c345bf40-8509-4ed2-b947-50cb773aaf04", "type": "Microsoft.SecurityInsights/dataConnectors", "kind": "ThreatIntelligence", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/GetThreatIntelligenceTaxiiById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/GetThreatIntelligenceTaxiiById.json index bac15ae677d8..5408280f7aef 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/GetThreatIntelligenceTaxiiById.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/GetThreatIntelligenceTaxiiById.json @@ -4,13 +4,13 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "dataConnectorId": "c39bb458-02a7-4b3f-b0c8-71a1d2692652" }, "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/c39bb458-02a7-4b3f-b0c8-71a1d2692652", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/c39bb458-02a7-4b3f-b0c8-71a1d2692652", "name": "c39bb458-02a7-4b3f-b0c8-71a1d2692652", "type": "Microsoft.SecurityInsights/dataConnectors", "kind": "ThreatIntelligenceTaxii", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/enrichment/GetGeodataByIp.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/enrichment/GetGeodataByIp.json new file mode 100644 index 000000000000..a351f5e1ecfe --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/enrichment/GetGeodataByIp.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2019-01-01-preview", + "subscriptionId": "bd794837-4d29-4647-9105-6339bfdb4e6a", + "resourceGroupName": "myRg", + "ipAddress": "1.2.3.4" + }, + "responses": { + "200": { + "body": { + "asn": "12345", + "carrier": "Microsoft", + "city": "Redmond", + "cityCf": 90, + "continent": "north america", + "country": "united states", + "countryCf": 99, + "ipAddr": "1.2.3.4", + "ipRoutingType": "fixed", + "latitude": "40.2436", + "longitude": "-100.8891", + "organization": "Microsoft", + "organizationType": "tech", + "region": "western usa", + "state": "washington", + "stateCf": null, + "stateCode": "wa" + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/enrichment/GetWhoisByDomainName.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/enrichment/GetWhoisByDomainName.json new file mode 100644 index 000000000000..446f5f059cad --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/enrichment/GetWhoisByDomainName.json @@ -0,0 +1,87 @@ +{ + "parameters": { + "api-version": "2019-01-01-preview", + "subscriptionId": "bd794837-4d29-4647-9105-6339bfdb4e6a", + "resourceGroupName": "myRg", + "domain": "microsoft.com" + }, + "responses": { + "200": { + "body": { + "domain": "microsoft.com", + "server": null, + "created": "2021-02-25T16:15:01.187045Z", + "updated": "2021-02-25T16:15:01.187045Z", + "expires": null, + "parsedWhois": { + "registrar": { + "name": "MarkMonitor, Inc", + "abuseContactPhone": "12083895770", + "abuseContactEmail": "abuse@microsoft.com", + "url": "http://www.markmonitor.com", + "whoisServer": "whois.markmonitor.com" + }, + "contacts": { + "admin": { + "name": "Administrator", + "org": "Microsoft", + "street": [ + "One Microsoft Way" + ], + "city": null, + "state": "WA", + "postal": "98052", + "country": "United States", + "phone": "1-800-555-1234", + "fax": null, + "email": "mail@microsoft.com" + }, + "registrant": null, + "billing": { + "name": "Administrator", + "org": "Microsoft", + "street": [ + "One Microsoft Way" + ], + "city": null, + "state": "WA", + "postal": "98052", + "country": "United States", + "phone": "1-800-555-1234", + "fax": null, + "email": "mail@microsoft.com" + }, + "tech": { + "name": "Administrator", + "org": "Microsoft", + "street": [ + "One Microsoft Way" + ], + "city": null, + "state": "WA", + "postal": "98052", + "country": "United States", + "phone": "1-800-555-1234", + "fax": null, + "email": "mail@microsoft.com" + } + }, + "nameServers": [ + "ns1-205.azure-dns.com", + "ns2-205.azure-dns.net", + "ns3-205.azure-dns.org", + "ns4-205.azure-dns.info" + ], + "statuses": [ + "clientUpdateProhibited", + "clientTransferProhibited", + "clientDeleteProhibited", + "serverUpdateProhibited", + "serverTransferProhibited", + "serverDeleteProhibited" + ] + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetAccountEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetAccountEntityById.json index 893bd08a3e57..540c3e71cfde 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetAccountEntityById.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetAccountEntityById.json @@ -4,13 +4,13 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "entityId": "e1d3d618-e11f-478b-98e3-bb381539a8e1" }, "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/e1d3d618-e11f-478b-98e3-bb381539a8e1", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/e1d3d618-e11f-478b-98e3-bb381539a8e1", "name": "e1d3d618-e11f-478b-98e3-bb381539a8e1", "type": "Microsoft.SecurityInsights/entities", "kind": "Account", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetAzureResourceEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetAzureResourceEntityById.json index e4e589b66489..942132f4e154 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetAzureResourceEntityById.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetAzureResourceEntityById.json @@ -4,13 +4,13 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "entityId": "e1d3d618-e11f-478b-98e3-bb381539a8e1" }, "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/e1d3d618-e11f-478b-98e3-bb381539a8e1", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/e1d3d618-e11f-478b-98e3-bb381539a8e1", "name": "e1d3d618-e11f-478b-98e3-bb381539a8e1", "type": "Microsoft.SecurityInsights/entities", "kind": "AzureResource", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetCloudApplicationEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetCloudApplicationEntityById.json index 31067cee831f..4e1145c9248e 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetCloudApplicationEntityById.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetCloudApplicationEntityById.json @@ -4,13 +4,13 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "entityId": "e1d3d618-e11f-478b-98e3-bb381539a8e1" }, "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/e1d3d618-e11f-478b-98e3-bb381539a8e1", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/e1d3d618-e11f-478b-98e3-bb381539a8e1", "name": "e1d3d618-e11f-478b-98e3-bb381539a8e1", "type": "Microsoft.SecurityInsights/entities", "kind": "CloudApplication", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetDnsEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetDnsEntityById.json index 38ea66b5c8d7..aafd2be91609 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetDnsEntityById.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetDnsEntityById.json @@ -4,13 +4,13 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "entityId": "f4e74920-f2c0-4412-a45f-66d94fdf01f8" }, "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/f4e74920-f2c0-4412-a45f-66d94fdf01f8", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/f4e74920-f2c0-4412-a45f-66d94fdf01f8", "name": "f4e74920-f2c0-4412-a45f-66d94fdf01f8", "type": "Microsoft.SecurityInsights/entities", "kind": "DnsResolution", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetEntities.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetEntities.json index 40cf28f9ce3a..8056f72d434c 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetEntities.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetEntities.json @@ -4,14 +4,14 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights" + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights" }, "responses": { "200": { "body": { "value": [ { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/e1d3d618-e11f-478b-98e3-bb381539a8e1", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/e1d3d618-e11f-478b-98e3-bb381539a8e1", "name": "e1d3d618-e11f-478b-98e3-bb381539a8e1", "type": "Microsoft.SecurityInsights/entities", "kind": "Account", @@ -29,7 +29,7 @@ } }, { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/fed9fe89-dce8-40f2-bf44-70f23fe93b3c", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/fed9fe89-dce8-40f2-bf44-70f23fe93b3c", "name": "fed9fe89-dce8-40f2-bf44-70f23fe93b3c", "type": "Microsoft.SecurityInsights/entities", "kind": "Host", @@ -47,7 +47,7 @@ } }, { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/af378b21-b4aa-4fe7-bc70-13f8621a322f", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/af378b21-b4aa-4fe7-bc70-13f8621a322f", "name": "af378b21-b4aa-4fe7-bc70-13f8621a322f", "type": "Microsoft.SecurityInsights/entities", "kind": "File", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetFileEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetFileEntityById.json index 4a3bcc139f44..c9bd988f771f 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetFileEntityById.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetFileEntityById.json @@ -4,13 +4,13 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "entityId": "af378b21-b4aa-4fe7-bc70-13f8621a322f" }, "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/af378b21-b4aa-4fe7-bc70-13f8621a322f", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/af378b21-b4aa-4fe7-bc70-13f8621a322f", "name": "af378b21-b4aa-4fe7-bc70-13f8621a322f", "type": "Microsoft.SecurityInsights/entities", "kind": "File", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetFileHashEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetFileHashEntityById.json index 54f495799839..7ca192c6bbdc 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetFileHashEntityById.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetFileHashEntityById.json @@ -4,13 +4,13 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "entityId": "ea359fa6-c1e5-f878-e105-6344f3e399a1" }, "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/ea359fa6-c1e5-f878-e105-6344f3e399a1", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/ea359fa6-c1e5-f878-e105-6344f3e399a1", "name": "ea359fa6-c1e5-f878-e105-6344f3e399a1", "type": "Microsoft.SecurityInsights/entities", "kind": "FileHash", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetHostEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetHostEntityById.json index 8674609f90db..9a9583403f1a 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetHostEntityById.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetHostEntityById.json @@ -4,13 +4,13 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "entityId": "e1d3d618-e11f-478b-98e3-bb381539a8e1" }, "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/e1d3d618-e11f-478b-98e3-bb381539a8e1", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/e1d3d618-e11f-478b-98e3-bb381539a8e1", "name": "e1d3d618-e11f-478b-98e3-bb381539a8e1", "type": "Microsoft.SecurityInsights/entities", "kind": "Host", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetIoTDeviceEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetIoTDeviceEntityById.json index 037fdaa249f1..d906f228e78a 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetIoTDeviceEntityById.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetIoTDeviceEntityById.json @@ -4,13 +4,13 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "entityId": "e1d3d618-e11f-478b-98e3-bb381539a8e1" }, "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/e1d3d618-e11f-478b-98e3-bb381539a8e1", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/e1d3d618-e11f-478b-98e3-bb381539a8e1", "name": "e1d3d618-e11f-478b-98e3-bb381539a8e1", "type": "Microsoft.SecurityInsights/entities", "kind": "IoTDevice", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetIpEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetIpEntityById.json index e4b40831f8a9..48dbbc12ea66 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetIpEntityById.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetIpEntityById.json @@ -4,13 +4,13 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "entityId": "e1d3d618-e11f-478b-98e3-bb381539a8e1" }, "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/e1d3d618-e11f-478b-98e3-bb381539a8e1", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/e1d3d618-e11f-478b-98e3-bb381539a8e1", "name": "e1d3d618-e11f-478b-98e3-bb381539a8e1", "type": "Microsoft.SecurityInsights/entities", "kind": "Ip", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetMailClusterEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetMailClusterEntityById.json index 8265b9a47e69..5c2c5e813e9a 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetMailClusterEntityById.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetMailClusterEntityById.json @@ -4,13 +4,13 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "entityId": "e1d3d618-e11f-478b-98e3-bb381539a8e1" }, "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/e1d3d618-e11f-478b-98e3-bb381539a8e1", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/e1d3d618-e11f-478b-98e3-bb381539a8e1", "name": "e1d3d618-e11f-478b-98e3-bb381539a8e1", "type": "Microsoft.SecurityInsights/entities", "kind": "MailCluster", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetMailMessageEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetMailMessageEntityById.json index cb72079697a8..d0ed8f49521a 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetMailMessageEntityById.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetMailMessageEntityById.json @@ -4,13 +4,13 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "entityId": "e1d3d618-e11f-478b-98e3-bb381539a8e1" }, "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/e1d3d618-e11f-478b-98e3-bb381539a8e1", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/e1d3d618-e11f-478b-98e3-bb381539a8e1", "name": "e1d3d618-e11f-478b-98e3-bb381539a8e1", "type": "Microsoft.SecurityInsights/entities", "kind": "MailMessage", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetMailboxEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetMailboxEntityById.json index 8db205b9f657..402117b17420 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetMailboxEntityById.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetMailboxEntityById.json @@ -4,13 +4,13 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "entityId": "e1d3d618-e11f-478b-98e3-bb381539a8e1" }, "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/e1d3d618-e11f-478b-98e3-bb381539a8e1", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/e1d3d618-e11f-478b-98e3-bb381539a8e1", "name": "e1d3d618-e11f-478b-98e3-bb381539a8e1", "type": "Microsoft.SecurityInsights/entities", "kind": "Mailbox", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetMalwareEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetMalwareEntityById.json index 77bcffb266ba..95b24ec7c1fd 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetMalwareEntityById.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetMalwareEntityById.json @@ -4,13 +4,13 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "entityId": "af378b21-b4aa-4fe7-bc70-13f8621a322f" }, "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/af378b21-b4aa-4fe7-bc70-13f8621a322f", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/af378b21-b4aa-4fe7-bc70-13f8621a322f", "name": "af378b21-b4aa-4fe7-bc70-13f8621a322f", "type": "Microsoft.SecurityInsights/entities", "kind": "Malware", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetProcessEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetProcessEntityById.json index e3b3d000424f..911d28f6b7c2 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetProcessEntityById.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetProcessEntityById.json @@ -4,13 +4,13 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "entityId": "7264685c-038c-42c6-948c-38e14ef1fb98" }, "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/7264685c-038c-42c6-948c-38e14ef1fb98", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/7264685c-038c-42c6-948c-38e14ef1fb98", "name": "7264685c-038c-42c6-948c-38e14ef1fb98", "type": "Microsoft.SecurityInsights/entities", "kind": "Process", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetQueries.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetQueries.json index e0f5831092bf..29b22c51c402 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetQueries.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetQueries.json @@ -4,7 +4,7 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "entityId": "e1d3d618-e11f-478b-98e3-bb381539a8e1", "kind": "Insight" }, diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetRegistryKeyEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetRegistryKeyEntityById.json index 429e932a5114..1b5078f48a83 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetRegistryKeyEntityById.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetRegistryKeyEntityById.json @@ -4,13 +4,13 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "entityId": "e1d3d618-e11f-478b-98e3-bb381539a8e1" }, "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/e1d3d618-e11f-478b-98e3-bb381539a8e1", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/e1d3d618-e11f-478b-98e3-bb381539a8e1", "name": "e1d3d618-e11f-478b-98e3-bb381539a8e1", "type": "Microsoft.SecurityInsights/entities", "kind": "RegistryKey", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetRegistryValueEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetRegistryValueEntityById.json index 87d59b560965..726b60985090 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetRegistryValueEntityById.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetRegistryValueEntityById.json @@ -4,13 +4,13 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "entityId": "dc44bd11-b348-4d76-ad29-37bf7aa41356" }, "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/dc44bd11-b348-4d76-ad29-37bf7aa41356", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/dc44bd11-b348-4d76-ad29-37bf7aa41356", "name": "dc44bd11-b348-4d76-ad29-37bf7aa41356", "type": "Microsoft.SecurityInsights/entities", "kind": "RegistryValue", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetSecurityAlertEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetSecurityAlertEntityById.json index 640d2f28fa68..1f5f0d3b2151 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetSecurityAlertEntityById.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetSecurityAlertEntityById.json @@ -4,13 +4,13 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "entityId": "4aa486e0-6f85-41af-99ea-7acdce7be6c8" }, "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/4aa486e0-6f85-41af-99ea-7acdce7be6c8", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/4aa486e0-6f85-41af-99ea-7acdce7be6c8", "name": "e1d3d618-e11f-478b-98e3-bb381539a8e1", "type": "Microsoft.SecurityInsights/entities", "kind": "SecurityAlert", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetSecurityGroupEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetSecurityGroupEntityById.json index 181fb12aeb9b..63726bc3874e 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetSecurityGroupEntityById.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetSecurityGroupEntityById.json @@ -4,13 +4,13 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "entityId": "e1d3d618-e11f-478b-98e3-bb381539a8e1" }, "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/e1d3d618-e11f-478b-98e3-bb381539a8e1", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/e1d3d618-e11f-478b-98e3-bb381539a8e1", "name": "e1d3d618-e11f-478b-98e3-bb381539a8e1", "type": "Microsoft.SecurityInsights/entities", "kind": "SecurityGroup", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetSubmissionMailEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetSubmissionMailEntityById.json index d20e01a4f8d5..70c52747de5d 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetSubmissionMailEntityById.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetSubmissionMailEntityById.json @@ -4,13 +4,13 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "entityId": "e1d3d618-e11f-478b-98e3-bb381539a8e1" }, "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/e1d3d618-e11f-478b-98e3-bb381539a8e1", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/e1d3d618-e11f-478b-98e3-bb381539a8e1", "name": "e1d3d618-e11f-478b-98e3-bb381539a8e1", "type": "Microsoft.SecurityInsights/entities", "kind": "SubmissionMail", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetUrlEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetUrlEntityById.json index f5ab8cdd25da..de7ef67afe62 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetUrlEntityById.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetUrlEntityById.json @@ -4,13 +4,13 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "entityId": "e1d3d618-e11f-478b-98e3-bb381539a8e1" }, "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/e1d3d618-e11f-478b-98e3-bb381539a8e1", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/e1d3d618-e11f-478b-98e3-bb381539a8e1", "name": "e1d3d618-e11f-478b-98e3-bb381539a8e1", "type": "Microsoft.SecurityInsights/entities", "kind": "Url", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/expand/PostExpandEntity.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/expand/PostExpandEntity.json index 448bbf66eccb..699aca470b01 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/expand/PostExpandEntity.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/expand/PostExpandEntity.json @@ -4,7 +4,7 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "entityId": "e1d3d618-e11f-478b-98e3-bb381539a8e1", "parameters": { "expansionId": "a77992f3-25e9-4d01-99a4-5ff606cc410a", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/insights/PostGetInsights.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/insights/PostGetInsights.json index 74aed1a38eb8..50f290308573 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/insights/PostGetInsights.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/insights/PostGetInsights.json @@ -4,7 +4,7 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "entityId": "e1d3d618-e11f-478b-98e3-bb381539a8e1", "parameters": { "addDefaultExtendedTimeRange": false, diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/relations/GetAllEntityRelations.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/relations/GetAllEntityRelations.json index 8019900f524f..c26b0b1d005b 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/relations/GetAllEntityRelations.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/relations/GetAllEntityRelations.json @@ -4,7 +4,7 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "entityId": "afbd324f-6c48-459c-8710-8d1e1cd03812" }, "responses": { @@ -12,12 +12,12 @@ "body": { "value": [ { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/afbd324f-6c48-459c-8710-8d1e1cd03812/relations/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/afbd324f-6c48-459c-8710-8d1e1cd03812/relations/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "type": "Microsoft.SecurityInsights/entities/relations", "etag": "190057d0-0000-0d00-0000-5c6f5adb0000", "properties": { - "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/2216d0e1-91e3-4902-89fd-d2df8c535096", + "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/2216d0e1-91e3-4902-89fd-d2df8c535096", "relatedResourceName": "2216d0e1-91e3-4902-89fd-d2df8c535096", "relatedResourceType": "Microsoft.SecurityInsights/incidents" } diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/relations/GetEntityRelationByName.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/relations/GetEntityRelationByName.json index d6c273d1b9c9..c7a18b9d5ed5 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/relations/GetEntityRelationByName.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/relations/GetEntityRelationByName.json @@ -4,19 +4,19 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "entityId": "afbd324f-6c48-459c-8710-8d1e1cd03812", "relationName": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014" }, "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/afbd324f-6c48-459c-8710-8d1e1cd03812/relations/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/afbd324f-6c48-459c-8710-8d1e1cd03812/relations/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "type": "Microsoft.SecurityInsights/entities/relations", "etag": "190057d0-0000-0d00-0000-5c6f5adb0000", "properties": { - "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/2216d0e1-91e3-4902-89fd-d2df8c535096", + "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/2216d0e1-91e3-4902-89fd-d2df8c535096", "relatedResourceName": "2216d0e1-91e3-4902-89fd-d2df8c535096", "relatedResourceType": "Microsoft.SecurityInsights/incidents" } diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/timeline/PostTimelineEntity.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/timeline/PostTimelineEntity.json index cf9619134ce7..6f9eb7314dfe 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/timeline/PostTimelineEntity.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/timeline/PostTimelineEntity.json @@ -4,7 +4,7 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "entityId": "e1d3d618-e11f-478b-98e3-bb381539a8e1", "parameters": { "numberOfBucket": 4, diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entityQueries/GetEntityQueries.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entityQueries/GetEntityQueries.json index f92e7013f013..1d78fee1ea43 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entityQueries/GetEntityQueries.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entityQueries/GetEntityQueries.json @@ -4,7 +4,7 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights" + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights" }, "responses": { "200": { diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entityQueries/GetExpansionEntityQueryById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entityQueries/GetExpansionEntityQueryById.json index 467eabaa366b..08ccab6f4919 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entityQueries/GetExpansionEntityQueryById.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entityQueries/GetExpansionEntityQueryById.json @@ -4,7 +4,7 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "entityQueryId": "07da3cc8-c8ad-4710-a44e-334cdcb7882b" }, "responses": { diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/CreateIncident.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/CreateIncident.json index ca0a03319dfc..d81fa9593f9f 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/CreateIncident.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/CreateIncident.json @@ -27,7 +27,7 @@ "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5", "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", "type": "Microsoft.SecurityInsights/incidents", "etag": "\"0300bf09-0000-0000-0000-5c37296e0001\"", @@ -49,7 +49,7 @@ "classificationComment": "Not a malicious activity", "classificationReason": "IncorrectAlertLogic", "status": "Closed", - "incidentUrl": "https://portal.azure.com/#asset/Microsoft_Azure_Security_Insights/Incident/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "incidentUrl": "https://portal.azure.com/#asset/Microsoft_Azure_Security_Insights/Incident/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5", "incidentNumber": 3177, "labels": [], "providerName": "Azure Sentinel", @@ -67,7 +67,7 @@ }, "201": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5", "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", "type": "Microsoft.SecurityInsights/incidents", "etag": "\"0300bf09-0000-0000-0000-5c37296e0001\"", @@ -89,7 +89,7 @@ "classificationComment": "Not a malicious activity", "classificationReason": "IncorrectAlertLogic", "status": "Closed", - "incidentUrl": "https://portal.azure.com/#asset/Microsoft_Azure_Security_Insights/Incident/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "incidentUrl": "https://portal.azure.com/#asset/Microsoft_Azure_Security_Insights/Incident/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5", "incidentNumber": 3177, "labels": [], "providerName": "Azure Sentinel", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/DeleteIncident.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/DeleteIncident.json index bfd04662497a..84a5d11be0d8 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/DeleteIncident.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/DeleteIncident.json @@ -4,7 +4,7 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "incidentId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5" }, "responses": { diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/GetAllIncidentAlerts.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/GetAllIncidentAlerts.json index 4a543ecd8e07..1cb622e01b4a 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/GetAllIncidentAlerts.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/GetAllIncidentAlerts.json @@ -4,7 +4,7 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "incidentId": "afbd324f-6c48-459c-8710-8d1e1cd03812" }, "responses": { diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/GetAllIncidentBookmarks.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/GetAllIncidentBookmarks.json index 711caaffaf16..e8d5421a16f3 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/GetAllIncidentBookmarks.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/GetAllIncidentBookmarks.json @@ -4,7 +4,7 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "incidentId": "afbd324f-6c48-459c-8710-8d1e1cd03812" }, "responses": { @@ -12,7 +12,7 @@ "body": { "value": [ { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/afbd324f-6c48-459c-8710-8d1e1cd03812", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/afbd324f-6c48-459c-8710-8d1e1cd03812", "name": "afbd324f-6c48-459c-8710-8d1e1cd03812", "type": "Microsoft.SecurityInsights/Entities", "kind": "Bookmark", @@ -42,7 +42,7 @@ } }, { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/bbbd324f-6c48-459c-8710-8d1e1cd03812", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/bbbd324f-6c48-459c-8710-8d1e1cd03812", "name": "bbbd324f-6c48-459c-8710-8d1e1cd03812", "type": "Microsoft.SecurityInsights/Entities", "kind": "Bookmark", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/GetIncidentById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/GetIncidentById.json index 497a79e439a7..60d2581a20e6 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/GetIncidentById.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/GetIncidentById.json @@ -4,13 +4,13 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "incidentId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5" }, "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5", "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", "type": "Microsoft.SecurityInsights/incidents", "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", @@ -32,13 +32,13 @@ "classificationComment": "Not a malicious activity", "classificationReason": "InaccurateData", "status": "Closed", - "incidentUrl": "https://portal.azure.com/#asset/Microsoft_Azure_Security_Insights/Incident/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "incidentUrl": "https://portal.azure.com/#asset/Microsoft_Azure_Security_Insights/Incident/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5", "incidentNumber": 3177, "labels": [], "providerName": "Azure Sentinel", "providerIncidentId": "3177", "relatedAnalyticRuleIds": [ - "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/fab3d2d4-747f-46a7-8ef0-9c0be8112bf7" + "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/fab3d2d4-747f-46a7-8ef0-9c0be8112bf7" ], "additionalData": { "alertsCount": 0, diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/GetIncidents.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/GetIncidents.json index 099bbb249aba..2a3f27a07d23 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/GetIncidents.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/GetIncidents.json @@ -4,7 +4,7 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "$orderby": "properties/createdTimeUtc desc", "$top": 1 }, @@ -13,7 +13,7 @@ "body": { "value": [ { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5", "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", "type": "Microsoft.SecurityInsights/incidents", "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", @@ -35,14 +35,14 @@ "classificationComment": "Not a malicious activity", "classificationReason": "IncorrectAlertLogic", "status": "Closed", - "incidentUrl": "https://portal.azure.com/#asset/Microsoft_Azure_Security_Insights/Incident/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "incidentUrl": "https://portal.azure.com/#asset/Microsoft_Azure_Security_Insights/Incident/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5", "incidentNumber": 3177, "labels": [], "providerName": "Azure Sentinel", "providerIncidentId": "3177", "relatedAnalyticRuleIds": [ - "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/fab3d2d4-747f-46a7-8ef0-9c0be8112bf7", - "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/8deb8303-e94d-46ff-96e0-5fd94b33df1a" + "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/fab3d2d4-747f-46a7-8ef0-9c0be8112bf7", + "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/8deb8303-e94d-46ff-96e0-5fd94b33df1a" ], "additionalData": { "alertsCount": 0, diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/comments/CreateIncidentComment.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/comments/CreateIncidentComment.json index 40faabcdc088..70c0f0bb37ff 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/comments/CreateIncidentComment.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/comments/CreateIncidentComment.json @@ -16,7 +16,7 @@ "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5/comments/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5/comments/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "type": "Microsoft.SecurityInsights/incidents/comments", "etag": "190057d0-0000-0d00-0000-5c6f5adb0000", @@ -35,7 +35,7 @@ }, "201": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5/comments/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5/comments/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "type": "Microsoft.SecurityInsights/incidents/comments", "etag": "190057d0-0000-0d00-0000-5c622adb0000", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/comments/GetAllIncidentComments.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/comments/GetAllIncidentComments.json index b820b7626c63..b94e350a6bde 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/comments/GetAllIncidentComments.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/comments/GetAllIncidentComments.json @@ -4,7 +4,7 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "incidentId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5" }, "responses": { @@ -12,7 +12,7 @@ "body": { "value": [ { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5/comments/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5/comments/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "type": "Microsoft.SecurityInsights/incidents/comments", "etag": "190057d0-0000-0d00-0000-5c6f5adb0000", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/comments/GetIncidentCommentById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/comments/GetIncidentCommentById.json index 315f614edc5e..54e77267c21a 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/comments/GetIncidentCommentById.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/comments/GetIncidentCommentById.json @@ -4,14 +4,14 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "incidentId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", "incidentCommentId": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014" }, "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5/comments/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5/comments/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "type": "Microsoft.SecurityInsights/incidents/comments", "etag": "190057d0-0000-0d00-0000-5c6f5adb0000", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/entities/GetAllIncidentEntities.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/entities/GetAllIncidentEntities.json index 4db37d3eb932..723c7f13bdf3 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/entities/GetAllIncidentEntities.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/entities/GetAllIncidentEntities.json @@ -4,7 +4,7 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "incidentId": "afbd324f-6c48-459c-8710-8d1e1cd03812" }, "responses": { diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/relations/CreateIncidentRelation.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/relations/CreateIncidentRelation.json index bbc267ef2842..b0f4b0f6b365 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/relations/CreateIncidentRelation.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/relations/CreateIncidentRelation.json @@ -9,19 +9,19 @@ "relationName": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "relation": { "properties": { - "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/2216d0e1-91e3-4902-89fd-d2df8c535096" + "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/2216d0e1-91e3-4902-89fd-d2df8c535096" } } }, "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/afbd324f-6c48-459c-8710-8d1e1cd03812/relations/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/afbd324f-6c48-459c-8710-8d1e1cd03812/relations/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "type": "Microsoft.SecurityInsights/incidents/relations", "etag": "190057d0-0000-0d00-0000-5c6f5adb0000", "properties": { - "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/2216d0e1-91e3-4902-89fd-d2df8c535096", + "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/2216d0e1-91e3-4902-89fd-d2df8c535096", "relatedResourceName": "2216d0e1-91e3-4902-89fd-d2df8c535096", "relatedResourceType": "Microsoft.SecurityInsights/bookmarks" } @@ -29,12 +29,12 @@ }, "201": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/afbd324f-6c48-459c-8710-8d1e1cd03812/relations/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/afbd324f-6c48-459c-8710-8d1e1cd03812/relations/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "type": "Microsoft.SecurityInsights/incidents/relations", "etag": "190057d0-0000-0d00-0000-5c6f5adb0000", "properties": { - "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/2216d0e1-91e3-4902-89fd-d2df8c535096", + "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/2216d0e1-91e3-4902-89fd-d2df8c535096", "relatedResourceName": "2216d0e1-91e3-4902-89fd-d2df8c535096", "relatedResourceType": "Microsoft.SecurityInsights/bookmarks" } diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/relations/DeleteIncidentRelation.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/relations/DeleteIncidentRelation.json index c0ebcb3647ab..49a82ea4b948 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/relations/DeleteIncidentRelation.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/relations/DeleteIncidentRelation.json @@ -4,7 +4,7 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "incidentId": "afbd324f-6c48-459c-8710-8d1e1cd03812", "relationName": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014" }, diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/relations/GetAllIncidentRelations.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/relations/GetAllIncidentRelations.json index 9fda5d1dfb05..47fb49937ed6 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/relations/GetAllIncidentRelations.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/relations/GetAllIncidentRelations.json @@ -4,7 +4,7 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "incidentId": "afbd324f-6c48-459c-8710-8d1e1cd03812" }, "responses": { @@ -12,23 +12,23 @@ "body": { "value": [ { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/afbd324f-6c48-459c-8710-8d1e1cd03812/relations/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/afbd324f-6c48-459c-8710-8d1e1cd03812/relations/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "type": "Microsoft.SecurityInsights/incidents/relations", "etag": "190057d0-0000-0d00-0000-5c6f5adb0000", "properties": { - "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/2216d0e1-91e3-4902-89fd-d2df8c535096", + "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/2216d0e1-91e3-4902-89fd-d2df8c535096", "relatedResourceName": "2216d0e1-91e3-4902-89fd-d2df8c535096", "relatedResourceType": "Microsoft.SecurityInsights/bookmarks" } }, { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/afbd324f-6c48-459c-8710-8d1e1cd03812/relations/9673a17d-8bc7-4ca6-88ee-38a4f3efc032", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/afbd324f-6c48-459c-8710-8d1e1cd03812/relations/9673a17d-8bc7-4ca6-88ee-38a4f3efc032", "name": "9673a17d-8bc7-4ca6-88ee-38a4f3efc032", "type": "Microsoft.SecurityInsights/incidents/relations", "etag": "6f714025-dd7c-46aa-b5d0-b9857488d060", "properties": { - "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/1dd267cd-8a1f-4f6f-b92c-da43ac8819af", + "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/1dd267cd-8a1f-4f6f-b92c-da43ac8819af", "relatedResourceName": "1dd267cd-8a1f-4f6f-b92c-da43ac8819af", "relatedResourceType": "Microsoft.SecurityInsights/entities", "relatedResourceKind": "SecurityAlert" diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/relations/GetIncidentRelationByName.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/relations/GetIncidentRelationByName.json index 22cc32e2554f..cf5b863b8af8 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/relations/GetIncidentRelationByName.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/relations/GetIncidentRelationByName.json @@ -4,19 +4,19 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "incidentId": "afbd324f-6c48-459c-8710-8d1e1cd03812", "relationName": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014" }, "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/afbd324f-6c48-459c-8710-8d1e1cd03812/relations/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/afbd324f-6c48-459c-8710-8d1e1cd03812/relations/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "type": "Microsoft.SecurityInsights/incidents/relations", "etag": "190057d0-0000-0d00-0000-5c6f5adb0000", "properties": { - "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/2216d0e1-91e3-4902-89fd-d2df8c535096", + "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/2216d0e1-91e3-4902-89fd-d2df8c535096", "relatedResourceName": "2216d0e1-91e3-4902-89fd-d2df8c535096", "relatedResourceType": "Microsoft.SecurityInsights/bookmarks" } diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/officeConsents/DeleteOfficeConsents.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/officeConsents/DeleteOfficeConsents.json index 096d0cf9e7aa..91d4447fb699 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/officeConsents/DeleteOfficeConsents.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/officeConsents/DeleteOfficeConsents.json @@ -4,7 +4,7 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "consentId": "04e5fd05-ff86-4b97-b8d2-1c20933cb46c" }, "responses": { diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/officeConsents/GetOfficeConsents.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/officeConsents/GetOfficeConsents.json index ac1c9f704cd4..02c012211ce1 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/officeConsents/GetOfficeConsents.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/officeConsents/GetOfficeConsents.json @@ -4,14 +4,14 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights" + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights" }, "responses": { "200": { "body": { "value": [ { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/officeConsents/04e5fd05-ff86-4b97-b8d2-1c20933cb46c", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/officeConsents/04e5fd05-ff86-4b97-b8d2-1c20933cb46c", "name": "04e5fd05-ff86-4b97-b8d2-1c20933cb46c", "type": "Microsoft.SecurityInsights/officeConsents", "properties": { diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/officeConsents/GetOfficeConsentsById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/officeConsents/GetOfficeConsentsById.json index 2e45fea4d13c..900042313453 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/officeConsents/GetOfficeConsentsById.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/officeConsents/GetOfficeConsentsById.json @@ -4,13 +4,13 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "consentId": "04e5fd05-ff86-4b97-b8d2-1c20933cb46c" }, "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/officeConsents/04e5fd05-ff86-4b97-b8d2-1c20933cb46c", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/officeConsents/04e5fd05-ff86-4b97-b8d2-1c20933cb46c", "name": "04e5fd05-ff86-4b97-b8d2-1c20933cb46c", "type": "Microsoft.SecurityInsights/officeConsents", "properties": { diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/settings/DeleteEyesOnSetting.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/settings/DeleteEyesOnSetting.json index 1190612db5e6..345b4494efd1 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/settings/DeleteEyesOnSetting.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/settings/DeleteEyesOnSetting.json @@ -4,7 +4,7 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "settingsName": "EyesOn" }, "responses": { diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/settings/GetAllSettings.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/settings/GetAllSettings.json index 6bd881fec292..1149edfc673f 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/settings/GetAllSettings.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/settings/GetAllSettings.json @@ -4,7 +4,7 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights" + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights" }, "responses": { "200": { diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/settings/GetEyesOnSetting.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/settings/GetEyesOnSetting.json index de6a916d486f..0f31f01a892d 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/settings/GetEyesOnSetting.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/settings/GetEyesOnSetting.json @@ -4,7 +4,7 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "settingsName": "EyesOn" }, "responses": { diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/threatintelligence/AppendTagsThreatIntelligence.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/threatintelligence/AppendTagsThreatIntelligence.json index a6e6689cb7f9..8fa8ec5f0277 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/threatintelligence/AppendTagsThreatIntelligence.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/threatintelligence/AppendTagsThreatIntelligence.json @@ -4,7 +4,7 @@ "subscriptionId": "bd794837-4d29-4647-9105-6339bfdb4e6a", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "name": "d9cd6f0b-96b9-3984-17cd-a779d1e15a93", "ThreatIntelligenceAppendTags": { "threatIntelligenceTags": [ diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/threatintelligence/CollectThreatIntelligenceMetrics.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/threatintelligence/CollectThreatIntelligenceMetrics.json index 2755c5120c4f..098d87dfd614 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/threatintelligence/CollectThreatIntelligenceMetrics.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/threatintelligence/CollectThreatIntelligenceMetrics.json @@ -4,7 +4,7 @@ "subscriptionId": "bd794837-4d29-4647-9105-6339bfdb4e6a", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights" + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights" }, "responses": { "200": { diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/threatintelligence/CreateThreatIntelligence.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/threatintelligence/CreateThreatIntelligence.json index 3f81c79d04fb..09b3d0811edf 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/threatintelligence/CreateThreatIntelligence.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/threatintelligence/CreateThreatIntelligence.json @@ -4,7 +4,7 @@ "subscriptionId": "bd794837-4d29-4647-9105-6339bfdb4e6a", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "ThreatIntelligenceProperties": { "kind": "indicator", "properties": { diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/threatintelligence/DeleteThreatIntelligence.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/threatintelligence/DeleteThreatIntelligence.json index 76f6009ce7ec..e9f6856ceaab 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/threatintelligence/DeleteThreatIntelligence.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/threatintelligence/DeleteThreatIntelligence.json @@ -4,7 +4,7 @@ "subscriptionId": "bd794837-4d29-4647-9105-6339bfdb4e6a", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "name": "d9cd6f0b-96b9-3984-17cd-a779d1e15a93" }, "responses": { diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/threatintelligence/GetThreatIntelligence.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/threatintelligence/GetThreatIntelligence.json index ceec827d2de5..b207abfd4007 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/threatintelligence/GetThreatIntelligence.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/threatintelligence/GetThreatIntelligence.json @@ -4,7 +4,7 @@ "subscriptionId": "bd794837-4d29-4647-9105-6339bfdb4e6a", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights" + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights" }, "responses": { "200": { diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/threatintelligence/GetThreatIntelligenceById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/threatintelligence/GetThreatIntelligenceById.json index a3185f2a44bb..cefa9f4b90e2 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/threatintelligence/GetThreatIntelligenceById.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/threatintelligence/GetThreatIntelligenceById.json @@ -4,7 +4,7 @@ "subscriptionId": "bd794837-4d29-4647-9105-6339bfdb4e6a", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "name": "e16ef847-962e-d7b6-9c8b-a33e4bd30e47" }, "responses": { diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/threatintelligence/QueryThreatIntelligence.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/threatintelligence/QueryThreatIntelligence.json index 61318f6d8fa6..5b36dd94e726 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/threatintelligence/QueryThreatIntelligence.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/threatintelligence/QueryThreatIntelligence.json @@ -4,7 +4,7 @@ "subscriptionId": "bd794837-4d29-4647-9105-6339bfdb4e6a", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "ThreatIntelligenceFilteringCriteria": { "pageSize": 100, "minConfidence": 25, diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/threatintelligence/ReplaceTagsThreatIntelligence.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/threatintelligence/ReplaceTagsThreatIntelligence.json index ade5aec86dfc..e787f08bfe94 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/threatintelligence/ReplaceTagsThreatIntelligence.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/threatintelligence/ReplaceTagsThreatIntelligence.json @@ -4,7 +4,7 @@ "subscriptionId": "bd794837-4d29-4647-9105-6339bfdb4e6a", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "name": "d9cd6f0b-96b9-3984-17cd-a779d1e15a93", "ThreatIntelligenceReplaceTags": { "etag": "\"0000262c-0000-0800-0000-5e9767060000\"", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/threatintelligence/UpdateThreatIntelligence.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/threatintelligence/UpdateThreatIntelligence.json index 7420558b8127..0ccf1b9fce94 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/threatintelligence/UpdateThreatIntelligence.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/threatintelligence/UpdateThreatIntelligence.json @@ -4,7 +4,7 @@ "subscriptionId": "bd794837-4d29-4647-9105-6339bfdb4e6a", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "name": "d9cd6f0b-96b9-3984-17cd-a779d1e15a93", "ThreatIntelligenceProperties": { "kind": "indicator", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/watchlists/CreateWatchlist.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/watchlists/CreateWatchlist.json index e1d3cb3aba1e..cf140d6b2075 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/watchlists/CreateWatchlist.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/watchlists/CreateWatchlist.json @@ -22,7 +22,7 @@ "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/watchlists/highValueAsset", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/watchlists/highValueAsset", "name": "highValueAsset", "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", "type": "Microsoft.SecurityInsights/Watchlists", @@ -53,7 +53,7 @@ }, "201": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/watchlists/highValueAsset", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/watchlists/highValueAsset", "name": "highValueAsset", "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", "type": "Microsoft.SecurityInsights/Watchlists", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/watchlists/GetWatchlistByAlias.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/watchlists/GetWatchlistByAlias.json index 47992b08f1fc..f697357b9462 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/watchlists/GetWatchlistByAlias.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/watchlists/GetWatchlistByAlias.json @@ -10,7 +10,7 @@ "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/watchlists/highValueAsset", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/watchlists/highValueAsset", "name": "highValueAsset", "type": "Microsoft.SecurityInsights/Watchlists", "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/watchlists/GetWatchlists.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/watchlists/GetWatchlists.json index a19b9a45da58..b1020c26e1cc 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/watchlists/GetWatchlists.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/watchlists/GetWatchlists.json @@ -11,7 +11,7 @@ "body": { "value": [ { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/watchlists/highValueAsset", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/watchlists/highValueAsset", "name": "highValueAsset", "type": "Microsoft.SecurityInsights/Watchlists", "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/EntityQueries.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/EntityQueries.json new file mode 100644 index 000000000000..bf9c8bd66409 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/EntityQueries.json @@ -0,0 +1,659 @@ +{ + "swagger": "2.0", + "info": { + "title": "Security Insights", + "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider", + "version": "2021-03-01-preview" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{operationalInsightsResourceProvider}/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/entityQueries": { + "get": { + "x-ms-examples": { + "Get all entity queries.": { + "$ref": "./examples/entityQueries/GetEntityQueries.json" + } + }, + "tags": [ + "EntityQueries" + ], + "description": "Gets all entity queries.", + "operationId": "EntityQueries_List", + "parameters": [ + { + "$ref": "#/parameters/EntityQueryKind" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/OperationalInsightsResourceProvider" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/WorkspaceName" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/EntityQueryList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/1.0/types.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{operationalInsightsResourceProvider}/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/entityQueries/{entityQueryId}": { + "get": { + "x-ms-examples": { + "Get an Expansion entity query.": { + "$ref": "./examples/entityQueries/GetExpansionEntityQueryById.json" + }, + "Get an Activity entity query.": { + "$ref": "./examples/entityQueries/GetActivityEntityQueryById.json" + } + }, + "tags": [ + "EntityQueries" + ], + "description": "Gets an entity query.", + "operationId": "EntityQueries_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/OperationalInsightsResourceProvider" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/EntityQueryId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/EntityQuery" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/1.0/types.json#/definitions/CloudError" + } + } + } + }, + "put": { + "x-ms-examples": { + "Creates or updates an Activity entity query.": { + "$ref": "./examples/entityQueries/CreateEntityQueryActivity.json" + } + }, + "tags": [ + "EntityQueries" + ], + "description": "Creates or updates the entity query.", + "operationId": "EntityQueries_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/OperationalInsightsResourceProvider" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/EntityQueryId" + }, + { + "$ref": "#/parameters/CustomEntityQuery" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/EntityQuery" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/EntityQuery" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/1.0/types.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "x-ms-examples": { + "Delete an entity query.": { + "$ref": "./examples/entityQueries/DeleteEntityQuery.json" + } + }, + "tags": [ + "EntityQueries" + ], + "description": "Delete the entity query.", + "operationId": "EntityQueries_Delete", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/OperationalInsightsResourceProvider" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/EntityQueryId" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/1.0/types.json#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "EntityInnerType": { + "description": "The type of the entity", + "enum": [ + "Account", + "Host", + "File", + "AzureResource", + "CloudApplication", + "DNS", + "FileHash", + "IP", + "Malware", + "Process", + "RegistryKey", + "RegistryValue", + "SecurityGroup", + "URL", + "IoTDevice", + "SecurityAlert", + "HuntingBookmark", + "MailCluster", + "MailMessage", + "Mailbox", + "SubmissionMail" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "EntityType", + "values": [ + { + "description": "Entity represents account in the system.", + "value": "Account" + }, + { + "description": "Entity represents host in the system.", + "value": "Host" + }, + { + "description": "Entity represents file in the system.", + "value": "File" + }, + { + "description": "Entity represents azure resource in the system.", + "value": "AzureResource" + }, + { + "description": "Entity represents cloud application in the system.", + "value": "CloudApplication" + }, + { + "description": "Entity represents dns in the system.", + "value": "DNS" + }, + { + "description": "Entity represents file hash in the system.", + "value": "FileHash" + }, + { + "description": "Entity represents ip in the system.", + "value": "IP" + }, + { + "description": "Entity represents malware in the system.", + "value": "Malware" + }, + { + "description": "Entity represents process in the system.", + "value": "Process" + }, + { + "description": "Entity represents registry key in the system.", + "value": "RegistryKey" + }, + { + "description": "Entity represents registry value in the system.", + "value": "RegistryValue" + }, + { + "description": "Entity represents security group in the system.", + "value": "SecurityGroup" + }, + { + "description": "Entity represents url in the system.", + "value": "URL" + }, + { + "description": "Entity represents IoT device in the system.", + "value": "IoTDevice" + }, + { + "description": "Entity represents security alert in the system.", + "value": "SecurityAlert" + }, + { + "description": "Entity represents HuntingBookmark in the system.", + "value": "HuntingBookmark" + }, + { + "description": "Entity represents mail cluster in the system.", + "value": "MailCluster" + }, + { + "description": "Entity represents mail message in the system.", + "value": "MailMessage" + }, + { + "description": "Entity represents mailbox in the system.", + "value": "Mailbox" + }, + { + "description": "Entity represents submission mail in the system.", + "value": "SubmissionMail" + } + ] + } + }, + "EntityQueryKind": { + "description": "The kind of the entity query", + "enum": [ + "Expansion", + "Insight", + "Activity" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "EntityQueryKind", + "values": [ + { + "value": "Expansion" + }, + { + "value": "Insight" + }, + { + "value": "Activity" + } + ] + } + }, + "CustomEntityQueryKind": { + "description": "The kind of the entity query that supports put request.", + "enum": [ + "Activity" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "CustomEntityQueryKind", + "values": [ + { + "value": "Activity" + } + ] + } + }, + "EntityQueryList": { + "description": "List of all the entity queries.", + "properties": { + "nextLink": { + "description": "URL to fetch the next set of entity queries.", + "readOnly": true, + "type": "string" + }, + "value": { + "description": "Array of entity queries.", + "items": { + "$ref": "#/definitions/EntityQuery" + }, + "type": "array" + } + }, + "required": [ + "value" + ] + }, + "EntityQuery": { + "allOf": [ + { + "$ref": "../../../common/1.0/types.json#/definitions/ResourceWithEtag" + } + ], + "description": "Specific entity query.", + "discriminator": "kind", + "properties": { + "kind": { + "$ref": "#/definitions/EntityQueryKind", + "description": "the entity query kind" + } + }, + "type": "object", + "required": [ + "kind" + ] + }, + "CustomEntityQuery": { + "allOf": [ + { + "$ref": "../../../common/1.0/types.json#/definitions/ResourceWithEtag" + } + ], + "description": "Specific entity query that supports put requests.", + "discriminator": "kind", + "properties": { + "kind": { + "$ref": "#/definitions/CustomEntityQueryKind", + "description": "the entity query kind" + } + }, + "type": "object", + "required": [ + "kind" + ] + }, + "ExpansionEntityQuery": { + "description": "Represents Expansion entity query.", + "allOf": [ + { + "$ref": "#/definitions/EntityQuery" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ExpansionEntityQueriesProperties", + "description": "Expansion entity query properties", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "Expansion" + }, + "ExpansionEntityQueriesProperties": { + "description": "Describes expansion entity query properties", + "properties": { + "dataSources": { + "description": "List of the data sources that are required to run the query", + "items": { + "description": "data source", + "type": "string" + }, + "type": "array" + }, + "displayName": { + "description": "The query display name", + "type": "string" + }, + "inputEntityType": { + "$ref": "#/definitions/EntityInnerType", + "description": "The type of the query's source entity" + }, + "inputFields": { + "description": "List of the fields of the source entity that are required to run the query", + "items": { + "description": "input field", + "type": "string" + }, + "type": "array" + }, + "outputEntityTypes": { + "description": "List of the desired output types to be constructed from the result", + "items": { + "$ref": "#/definitions/EntityInnerType", + "description": "output entity type" + }, + "type": "array" + }, + "queryTemplate": { + "description": "The template query string to be parsed and formatted", + "type": "string" + } + }, + "type": "object" + }, + "ActivityEntityQuery": { + "description": "Represents Activity entity query.", + "allOf": [ + { + "$ref": "#/definitions/EntityQuery" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ActivityEntityQueriesProperties", + "description": "Activity entity query properties", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "Activity" + }, + "ActivityCustomEntityQuery": { + "description": "Represents Activity entity query.", + "allOf": [ + { + "$ref": "#/definitions/CustomEntityQuery" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ActivityEntityQueriesProperties", + "description": "Activity entity query properties", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "Activity" + }, + "ActivityEntityQueriesProperties": { + "description": "Describes activity entity query properties", + "properties": { + "title": { + "description": "The entity query title", + "type": "string" + }, + "content": { + "description": "The entity query content to display in timeline", + "type": "string" + }, + "description": { + "description": "The entity query description", + "type": "string" + }, + "queryDefinitions": { + "description": "The Activity query definitions", + "properties": { + "query": { + "description": "The Activity query to run on a given entity", + "type": "string" + } + }, + "type": "object" + }, + "inputEntityType": { + "$ref": "#/definitions/EntityInnerType", + "description": "The type of the query's source entity" + }, + "requiredInputFieldsSets": { + "description": "List of the fields of the source entity that are required to run the query", + "items": { + "description": "Sub sets of the field of the source entity that are required to run the query", + "items": { + "description": "Required input field name", + "type": "string" + }, + "type": "array" + }, + "type": "array" + }, + "entitiesFilter": { + "description": "The query applied only to entities matching to all filters", + "type": "object", + "additionalProperties": { + "description": "Filter field name", + "items": { + "description": "Filter field values", + "type": "string" + }, + "type": "array" + } + }, + "templateName": { + "description": "The template id this activity was created from", + "type": "string" + }, + "enabled": { + "description": "Determines whether this activity is enabled or disabled.", + "type": "boolean" + }, + "createdTimeUtc": { + "description": "The time the activity was created", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "lastModifiedTimeUtc": { + "description": "The last time the activity was updated", + "format": "date-time", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + } + }, + "parameters": { + "EntityQueryId": { + "description": "entity query ID", + "in": "path", + "name": "entityQueryId", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "EntityQueryKind": { + "description": "The entity query kind we want to fetch", + "in": "query", + "name": "kind", + "required": false, + "enum": [ + "Expansion", + "Activity" + ], + "type": "string", + "x-ms-parameter-location": "method" + }, + "CustomEntityQuery": { + "description": "The entity query we want to create or update", + "in": "body", + "name": "entityQuery", + "required": true, + "schema": { + "$ref": "#/definitions/CustomEntityQuery" + }, + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/Metadata.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/Metadata.json new file mode 100644 index 000000000000..9b735e4bfc08 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/Metadata.json @@ -0,0 +1,777 @@ +{ + "swagger": "2.0", + "info": { + "title": "Security Insights", + "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider", + "version": "2021-03-01-preview" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{operationalInsightsResourceProvider}/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/metadata": { + "get": { + "x-ms-examples": { + "Get all metadata.": { + "$ref": "./examples/metadata/GetAllMetadata.json" + }, + "Get all metadata with OData filter/orderby/skip/top": { + "$ref": "./examples/metadata/GetAllMetadataOData.json" + } + }, + "tags": [ + "Metadata" + ], + "description": "List of all metadata", + "operationId": "Metadata_List", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/OperationalInsightsResourceProvider" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/ODataFilter" + }, + { + "$ref": "#/parameters/ODataOrderBy" + }, + { + "$ref": "#/parameters/ODataTop" + }, + { + "$ref": "#/parameters/ODataSkip" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MetadataList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/1.0/types.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{operationalInsightsResourceProvider}/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/metadata/{metadataName}": { + "get": { + "x-ms-examples": { + "Get single metadata by name": { + "$ref": "./examples/metadata/GetMetadata.json" + } + }, + "tags": [ + "Metadata" + ], + "description": "Get a Metadata.", + "operationId": "Metadata_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/OperationalInsightsResourceProvider" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/MetadataName" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MetadataModel" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/1.0/types.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "x-ms-examples": { + "Delete metadata.": { + "$ref": "./examples/metadata/DeleteMetadata.json" + } + }, + "tags": [ + "Metadata" + ], + "description": "Delete a Metadata.", + "operationId": "Metadata_Delete", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/OperationalInsightsResourceProvider" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/MetadataName" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/1.0/types.json#/definitions/CloudError" + } + } + } + }, + "put": { + "x-ms-examples": { + "Create/update full metadata.": { + "$ref": "./examples/metadata/PutMetadata.json" + }, + "Create/update minimal metadata.": { + "$ref": "./examples/metadata/PutMetadataMinimal.json" + } + }, + "tags": [ + "Metadata" + ], + "description": "Create a Metadata.", + "operationId": "Metadata_Create", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/OperationalInsightsResourceProvider" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/MetadataName" + }, + { + "$ref": "#/parameters/Metadata" + } + ], + "responses": { + "200": { + "description": "OK, Operation successfully completed", + "schema": { + "$ref": "#/definitions/MetadataModel" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/MetadataModel" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/1.0/types.json#/definitions/CloudError" + } + } + } + }, + "patch": { + "x-ms-examples": { + "Update metadata.": { + "$ref": "./examples/metadata/PatchMetadata.json" + } + }, + "tags": [ + "Metadata" + ], + "description": "Update an existing Metadata.", + "operationId": "Metadata_Update", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/OperationalInsightsResourceProvider" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/MetadataName" + }, + { + "$ref": "#/parameters/MetadataPatch" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MetadataModel" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/1.0/types.json#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "MetadataList": { + "description": "List of all the metadata.", + "type": "object", + "properties": { + "value": { + "description": "Array of metadata.", + "items": { + "$ref": "#/definitions/MetadataModel" + }, + "type": "array" + }, + "nextLink": { + "description": "URL to fetch the next page of metadata.", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "value" + ] + }, + "MetadataModel": { + "type": "object", + "allOf": [ + { + "$ref": "../../../common/1.0/types.json#/definitions/ResourceWithEtag" + } + ], + "description": "Metadata resource definition.", + "properties": { + "properties": { + "$ref": "#/definitions/metadataProperties", + "description": "Metadata properties", + "x-ms-client-flatten": true + } + } + }, + "metadataPatch": { + "allOf": [ + { + "$ref": "../../../common/1.0/types.json#/definitions/ResourceWithEtag" + } + ], + "description": "Metadata patch request body.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/metadataPropertiesPatch", + "description": "Metadata patch request body", + "x-ms-client-flatten": true + } + } + }, + "metadataContentId": { + "description": "Static ID for the content. Used to identify dependencies and content from solutions or community. Hard-coded/static for out of the box content and solutions. Dynamic for user-created. This is the resource name", + "type": "string" + }, + "metadataParentId": { + "description": "Full parent resource ID of the content item the metadata is for. This is the full resource ID including the scope (subscription and resource group)", + "type": "string" + }, + "metadataVersion": { + "description": "Version of the content. Default and recommended format is numeric (e.g. 1, 1.0, 1.0.0, 1.0.0.0), following ARM template best practices. Can also be any string, but then we cannot guarantee any version checks", + "type": "string" + }, + "metadataKind": { + "type": "string", + "description": "The kind of content the metadata is for.", + "enum": [ + "dataConnector", + "dataType", + "workbook", + "workbookTemplate", + "playbook", + "playbookTemplate", + "analyticRuleTemplate", + "analyticRule", + "huntingQuery", + "investigationQuery", + "parser", + "watchlist", + "watchlistTemplate", + "solution" + ], + "x-ms-enum": { + "modelAsString": true, + "name": "kind", + "values": [ + { + "value": "dataConnector" + }, + { + "value": "dataType" + }, + { + "value": "workbook" + }, + { + "value": "workbookTemplate" + }, + { + "value": "playbook" + }, + { + "value": "playbookTemplate" + }, + { + "value": "analyticRuleTemplate" + }, + { + "value": "analyticRule" + }, + { + "value": "huntingQuery" + }, + { + "value": "investigationQuery" + }, + { + "value": "parser" + }, + { + "value": "watchlist" + }, + { + "value": "watchlistTemplate" + }, + { + "value": "solution" + } + ] + } + }, + "metadataSource": { + "description": "The original source of the content item, where it comes from.", + "type": "object", + "required": [ + "kind" + ], + "properties": { + "kind": { + "description": "Source type of the content", + "type": "string", + "enum": [ + "localWorkspace", + "community", + "solution", + "sourceRepository" + ], + "x-ms-enum": { + "modelAsString": true, + "name": "sourceKind", + "values": [ + { + "value": "localWorkspace" + }, + { + "value": "community" + }, + { + "value": "solution" + }, + { + "value": "sourceRepository" + } + ] + } + }, + "name": { + "description": "Name of the content source. The repo name, solution name, LA workspace name etc.", + "type": "string" + }, + "sourceId": { + "description": "ID of the content source. The solution ID, workspace ID, etc", + "type": "string" + } + } + }, + "metadataAuthor": { + "type": "object", + "description": "Publisher or creator of the content item.", + "properties": { + "name": { + "description": "Name of the author. Company or person.", + "type": "string" + }, + "email": { + "description": "Email of author contact", + "type": "string" + }, + "link": { + "description": "Link for author/vendor page", + "type": "string" + } + } + }, + "metadataSupport": { + "type": "object", + "description": "Support information for the content item.", + "required": [ + "tier" + ], + "properties": { + "tier": { + "description": "Type of support for content item", + "type": "string", + "enum": [ + "microsoft", + "developer", + "community" + ], + "x-ms-enum": { + "modelAsString": true, + "name": "supportTier", + "values": [ + { + "value": "microsoft" + }, + { + "value": "developer" + }, + { + "value": "community" + } + ] + } + }, + "name": { + "description": "Name of the support contact. Company or person.", + "type": "string" + }, + "email": { + "description": "Email of support contact", + "type": "string" + }, + "link": { + "description": "Link for support help, like to support page to open a ticket etc.", + "type": "string" + } + } + }, + "metadataDependencies": { + "description": "Dependencies for the content item, what other content items it requires to work. Can describe more complex dependencies using a recursive/nested structure. For a single dependency an id/kind/version can be supplied or operator/criteria for complex dependencies.", + "type": "object", + "properties": { + "contentId": { + "description": "Id of the content item we depend on", + "$ref": "#/definitions/metadataContentId" + }, + "kind": { + "description": "Type of the content item we depend on", + "$ref": "#/definitions/metadataKind" + }, + "version": { + "description": "Version of the the content item we depend on. Can be blank, * or missing to indicate any version fulfills the dependency. If version does not match our defined numeric format then an exact match is required.", + "$ref": "#/definitions/metadataVersion" + }, + "name": { + "description": "Name of the content item", + "type": "string" + }, + "operator": { + "description": "Operator used for list of dependencies in criteria array.", + "type": "string", + "enum": [ + "AND", + "OR" + ], + "x-ms-enum": { + "modelAsString": true, + "name": "operator", + "values": [ + { + "value": "AND" + }, + { + "value": "OR" + } + ] + } + }, + "criteria": { + "description": "This is the list of dependencies we must fulfill, according to the AND/OR operator", + "type": "array", + "items": { + "$ref": "#/definitions/metadataDependencies", + "description": "Dependencies for the content item, what other content items it requires to work. Can describe more complex dependencies using a recursive/nested structure. For a single dependency an id/kind/version can be supplied or operator/criteria for complex formats." + } + } + } + }, + "metadataProperties": { + "description": "Metadata property bag.", + "required": [ + "contentId", + "parentId", + "kind" + ], + "type": "object", + "properties": { + "contentId": { + "$ref": "#/definitions/metadataContentId", + "description": "Static ID for the content. Used to identify dependencies and content from solutions or community. Hard-coded/static for out of the box content and solutions. Dynamic for user-created. This is the resource name" + }, + "parentId": { + "$ref": "#/definitions/metadataParentId", + "description": "Full parent resource ID of the content item the metadata is for. This is the full resource ID including the scope (subscription and resource group)" + }, + "version": { + "$ref": "#/definitions/metadataVersion", + "description": "Version of the content. Default and recommended format is numeric (e.g. 1, 1.0, 1.0.0, 1.0.0.0), following ARM template best practices. Can also be any string, but then we cannot guarantee any version checks" + }, + "kind": { + "$ref": "#/definitions/metadataKind", + "description": "The kind of content the metadata is for." + }, + "source": { + "$ref": "#/definitions/metadataSource", + "description": "Source of the content. This is where/how it was created." + }, + "author": { + "$ref": "#/definitions/metadataAuthor", + "description": "The creator of the content item." + }, + "support": { + "$ref": "#/definitions/metadataSupport", + "description": "Support information for the metadata - type, name, contact information" + }, + "dependencies": { + "$ref": "#/definitions/metadataDependencies", + "description": "Dependencies for the content item, what other content items it requires to work. Can describe more complex dependencies using a recursive/nested structure. For a single dependency an id/kind/version can be supplied or operator/criteria for complex formats." + } + } + }, + "metadataPropertiesPatch": { + "description": "Metadata property bag for patch requests. This is the same as the MetadataProperties, but with nothing required", + "type": "object", + "properties": { + "contentId": { + "$ref": "#/definitions/metadataContentId", + "description": "Static ID for the content. Used to identify dependencies and content from solutions or community. Hard-coded/static for out of the box content and solutions. Dynamic for user-created. This is the resource name" + }, + "parentId": { + "$ref": "#/definitions/metadataParentId", + "description": "Full parent resource ID of the content item the metadata is for. This is the full resource ID including the scope (subscription and resource group)" + }, + "version": { + "$ref": "#/definitions/metadataVersion", + "description": "Version of the content. Default and recommended format is numeric (e.g. 1, 1.0, 1.0.0, 1.0.0.0), following ARM template best practices. Can also be any string, but then we cannot guarantee any version checks" + }, + "kind": { + "$ref": "#/definitions/metadataKind", + "description": "The kind of content the metadata is for." + }, + "source": { + "$ref": "#/definitions/metadataSource", + "description": "Source of the content. This is where/how it was created." + }, + "author": { + "$ref": "#/definitions/metadataAuthor", + "description": "The creator of the content item." + }, + "support": { + "$ref": "#/definitions/metadataSupport", + "description": "Support information for the metadata - type, name, contact information" + }, + "dependencies": { + "$ref": "#/definitions/metadataDependencies", + "description": "Dependencies for the content item, what other content items it requires to work. Can describe more complex dependencies using a recursive/nested structure. For a single dependency an id/kind/version can be supplied or operator/criteria for complex formats." + } + } + } + }, + "parameters": { + "Metadata": { + "description": "Metadata resource.", + "in": "body", + "name": "metadata", + "required": true, + "schema": { + "$ref": "#/definitions/MetadataModel" + }, + "x-ms-parameter-location": "method" + }, + "MetadataPatch": { + "description": "Partial metadata request.", + "in": "body", + "name": "metadataPatch", + "required": true, + "schema": { + "$ref": "#/definitions/metadataPatch" + }, + "x-ms-parameter-location": "method" + }, + "MetadataName": { + "description": "The Metadata name.", + "in": "path", + "name": "metadataName", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "SubscriptionId": { + "description": "Azure subscription ID", + "in": "path", + "name": "subscriptionId", + "pattern": "^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$", + "required": true, + "type": "string" + }, + "ResourceGroupName": { + "description": "The name of the resource group within the user's subscription. The name is case insensitive.", + "in": "path", + "maxLength": 90, + "minLength": 1, + "name": "resourceGroupName", + "pattern": "^[-\\w\\._\\(\\)]+$", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "WorkspaceName": { + "description": "The name of the workspace.", + "in": "path", + "name": "workspaceName", + "maxLength": 90, + "minLength": 1, + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "OperationalInsightsResourceProvider": { + "description": "The namespace of workspaces resource provider- Microsoft.OperationalInsights.", + "in": "path", + "name": "operationalInsightsResourceProvider", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ODataFilter": { + "description": "Filters the results, based on a Boolean condition. Optional.", + "in": "query", + "name": "$filter", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ODataOrderBy": { + "description": "Sorts the results. Optional.", + "in": "query", + "name": "$orderby", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ODataSkip": { + "description": "Used to skip n elements in the OData query (offset). Returns a nextLink to the next page of results if there are any left.", + "in": "query", + "name": "$skip", + "required": false, + "type": "integer", + "format": "int32", + "x-ms-parameter-location": "method" + }, + "ODataTop": { + "description": "Returns only the first n results. Optional.", + "in": "query", + "name": "$top", + "required": false, + "type": "integer", + "format": "int32", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/OnboardingStates.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/OnboardingStates.json new file mode 100644 index 000000000000..2687fa244506 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/OnboardingStates.json @@ -0,0 +1,332 @@ +{ + "swagger": "2.0", + "info": { + "title": "Security Insights", + "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider", + "version": "2021-03-01-preview" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{operationalInsightsResourceProvider}/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/onboardingStates/{sentinelOnboardingStateName}": { + "get": { + "x-ms-examples": { + "Get Sentinel onboarding state": { + "$ref": "./examples/onboardingStates/GetSentinelOnboardingState.json" + } + }, + "tags": [ + "SentinelOnboardingStates" + ], + "description": "Get Sentinel onboarding state", + "operationId": "SentinelOnboardingStates_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/OperationalInsightsResourceProvider" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/SentinelOnboardingStateName" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SentinelOnboardingState" + } + }, + "default": { + "description": "Error in getting the Sentinel onboarding state", + "schema": { + "$ref": "../../../common/1.0/types.json#/definitions/CloudError" + } + } + } + }, + "put": { + "x-ms-examples": { + "Create Sentinel onboarding state": { + "$ref": "./examples/onboardingStates/CreateSentinelOnboardingState.json" + } + }, + "tags": [ + "SentinelOnboardingStates" + ], + "description": "Create Sentinel onboarding state", + "operationId": "SentinelOnboardingStates_Create", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/OperationalInsightsResourceProvider" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/SentinelOnboardingStateName" + }, + { + "$ref": "#/parameters/SentinelOnboardingStateParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SentinelOnboardingState" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/SentinelOnboardingState" + } + }, + "default": { + "description": "Error in creating the Sentinel onboarding state", + "schema": { + "$ref": "../../../common/1.0/types.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "x-ms-examples": { + "Delete Sentinel onboarding state": { + "$ref": "./examples/onboardingStates/DeleteSentinelOnboardingState.json" + } + }, + "tags": [ + "SentinelOnboardingStates" + ], + "description": "Delete Sentinel onboarding state", + "operationId": "SentinelOnboardingStates_Delete", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/OperationalInsightsResourceProvider" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/SentinelOnboardingStateName" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error in deleting the Sentinel onboarding state", + "schema": { + "$ref": "../../../common/1.0/types.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{operationalInsightsResourceProvider}/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/onboardingStates": { + "get": { + "x-ms-examples": { + "Get all Sentinel onboarding states": { + "$ref": "./examples/onboardingStates/GetAllSentinelOnboardingStates.json" + } + }, + "tags": [ + "SentinelOnboardingStates" + ], + "description": "Gets all Sentinel onboarding states", + "operationId": "SentinelOnboardingStates_List", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/OperationalInsightsResourceProvider" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/WorkspaceName" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SentinelOnboardingStatesList" + } + }, + "default": { + "description": "Error in listing the Sentinel onboarding states", + "schema": { + "$ref": "../../../common/1.0/types.json#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "SentinelOnboardingStateProperties": { + "description": "The Sentinel onboarding state properties", + "type": "object", + "properties": { + "customerManagedKey": { + "description": "Flag that indicates the status of the CMK setting", + "type": "boolean" + } + } + }, + "SentinelOnboardingState": { + "allOf": [ + { + "$ref": "../../../common/1.0/types.json#/definitions/ResourceWithEtag" + } + ], + "description": "Sentinel onboarding state", + "properties": { + "properties": { + "$ref": "#/definitions/SentinelOnboardingStateProperties", + "description": "The Sentinel onboarding state object", + "x-ms-client-flatten": true + } + }, + "type": "object" + }, + "SentinelOnboardingStatesList": { + "description": "List of the Sentinel onboarding states", + "properties": { + "value": { + "description": "Array of Sentinel onboarding states", + "items": { + "$ref": "#/definitions/SentinelOnboardingState" + }, + "type": "array" + } + }, + "required": [ + "value" + ] + } + }, + "parameters": { + "SubscriptionId": { + "description": "Azure subscription ID", + "in": "path", + "name": "subscriptionId", + "pattern": "^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$", + "required": true, + "type": "string" + }, + "ResourceGroupName": { + "description": "The name of the resource group within the user's subscription. The name is case insensitive.", + "in": "path", + "maxLength": 90, + "minLength": 1, + "name": "resourceGroupName", + "pattern": "^[-\\w\\._\\(\\)]+$", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "WorkspaceName": { + "description": "The name of the workspace.", + "in": "path", + "name": "workspaceName", + "maxLength": 90, + "minLength": 1, + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "OperationalInsightsResourceProvider": { + "description": "The namespace of workspaces resource provider- Microsoft.OperationalInsights.", + "in": "path", + "name": "operationalInsightsResourceProvider", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "SentinelOnboardingStateName": { + "description": "The Sentinel onboarding state name. Supports - default", + "in": "path", + "name": "sentinelOnboardingStateName", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "SentinelOnboardingStateParameter": { + "description": "The Sentinel onboarding state parameter", + "in": "body", + "name": "sentinelOnboardingStateParameter", + "required": false, + "schema": { + "$ref": "#/definitions/SentinelOnboardingState" + }, + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/SourceControls.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/SourceControls.json new file mode 100644 index 000000000000..fa56c4d5559d --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/SourceControls.json @@ -0,0 +1,514 @@ +{ + "swagger": "2.0", + "info": { + "title": "Security Insights", + "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider", + "version": "2021-03-01-preview" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{operationalInsightsResourceProvider}/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/listRepositories": { + "post": { + "x-ms-examples": { + "Get repository list.": { + "$ref": "./examples/repositories/GetRepositories.json" + } + }, + "tags": [ + "Repositories" + ], + "description": "Gets a list of repositories metadata.", + "operationId": "SourceControl_listRepositories", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/OperationalInsightsResourceProvider" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/RepoTypeParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RepoList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/1.0/types.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{operationalInsightsResourceProvider}/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/sourcecontrols": { + "get": { + "x-ms-examples": { + "Get all source controls.": { + "$ref": "./examples/sourcecontrols/GetSourceControls.json" + } + }, + "tags": [ + "SourceControls" + ], + "description": "Gets all source controls, without source control items.", + "operationId": "SourceControls_List", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/OperationalInsightsResourceProvider" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/WorkspaceName" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SourceControlList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/1.0/types.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{operationalInsightsResourceProvider}/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/sourcecontrols/{sourceControlId}": { + "get": { + "x-ms-examples": { + "Get a source control.": { + "$ref": "./examples/sourcecontrols/GetSourceControlById.json" + } + }, + "tags": [ + "SourceControls" + ], + "description": "Gets a source control byt its identifier.", + "operationId": "SourceControls_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/OperationalInsightsResourceProvider" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/SourceControlIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SourceControl" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/1.0/types.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "x-ms-examples": { + "Delete a source control.": { + "$ref": "./examples/sourcecontrols/DeleteSourceControl.json" + } + }, + "tags": [ + "SourceControls" + ], + "description": "Delete a source control.", + "operationId": "SourceControls_Delete", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/OperationalInsightsResourceProvider" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/SourceControlIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/1.0/types.json#/definitions/CloudError" + } + } + } + }, + "put": { + "x-ms-examples": { + "Creates a source control.": { + "$ref": "./examples/sourcecontrols/CreateSourceControl.json" + } + }, + "tags": [ + "SourceControls" + ], + "description": "Creates a source control.", + "operationId": "SourceControls_Create", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/OperationalInsightsResourceProvider" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/SourceControlIdParameter" + }, + { + "$ref": "#/parameters/SourceControl" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SourceControl" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/SourceControl" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/1.0/types.json#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "RepoList": { + "description": "List all the source controls.", + "properties": { + "nextLink": { + "description": "URL to fetch the next set of repositories.", + "readOnly": true, + "type": "string" + }, + "value": { + "description": "Array of repositories.", + "items": { + "$ref": "#/definitions/Repo" + }, + "type": "array" + } + }, + "required": [ + "value" + ] + }, + "Repo": { + "description": "Represents a repository.", + "properties": { + "repoUrl": { + "description": "The url to access the repository.", + "type": "string" + }, + "fullName": { + "description": "The name of the repository.", + "type": "string" + }, + "branches": { + "description": "Array of branches.", + "items": { + "description": "name of branch.", + "type": "string" + }, + "type": "array" + } + }, + "x-ms-azure-resource": false, + "type": "object" + }, + "SourceControlList": { + "description": "List all the source controls.", + "properties": { + "nextLink": { + "description": "URL to fetch the next set of source controls.", + "readOnly": true, + "type": "string" + }, + "value": { + "description": "Array of source controls.", + "items": { + "$ref": "#/definitions/SourceControl" + }, + "type": "array" + } + }, + "required": [ + "value" + ], + "type": "object" + }, + "SourceControl": { + "allOf": [ + { + "$ref": "../../../common/1.0/types.json#/definitions/ResourceWithEtag" + } + ], + "description": "Represents a SourceControl in Azure Security Insights.", + "properties": { + "properties": { + "description": "source control properties", + "$ref": "#/definitions/SourceControlProperties", + "x-ms-client-flatten": true + } + }, + "type": "object" + }, + "SourceControlProperties": { + "description": "Describes source control properties", + "properties": { + "sourceControlId": { + "description": "The id (a Guid) of the source control", + "type": "string" + }, + "displayName": { + "description": "The display name of the source control", + "type": "string" + }, + "description": { + "description": "A description of the source control", + "type": "string" + }, + "repoType": { + "$ref": "#/definitions/RepoType", + "description": "The repository type of the source control", + "type": "string" + }, + "contentTypes": { + "description": "Array of source control content types.", + "items": { + "$ref": "#/definitions/ContentType" + }, + "type": "array" + }, + "repository": { + "description": "Repository metadata.", + "$ref": "#/definitions/Repository" + } + }, + "required": [ + "displayName", + "repoType", + "contentTypes", + "repository" + ], + "type": "object" + }, + "Repository": { + "type": "object", + "description": "metadata of a repository.", + "properties": { + "url": { + "description": "Url of repository.", + "type": "string" + }, + "branch": { + "description": "Branch name of repository.", + "type": "string" + }, + "pathMapping": { + "description": "Dictionary of source control content type and path mapping.", + "items": { + "$ref": "#/definitions/ContentPathMap" + }, + "type": "array" + } + } + }, + "ContentPathMap": { + "description": "The mapping of content type to a repo path.", + "properties": { + "contentType": { + "$ref": "#/definitions/ContentType", + "description": "Content type.", + "type": "string" + }, + "path": { + "description": "The path to the content.", + "type": "string" + } + }, + "type": "object" + }, + "ContentType": { + "description": "The content type of a source control path.", + "enum": [ + "AnalyticRule", + "Workbook" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "ContentType", + "values": [ + { + "value": "AnalyticRule" + }, + { + "value": "Workbook" + } + ] + } + }, + "RepoType": { + "description": "The type of repository.", + "enum": [ + "Github", + "DevOps" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "RepoType", + "values": [ + { + "value": "Github" + }, + { + "value": "DevOps" + } + ] + } + } + }, + "parameters": { + "RepoTypeParameter": { + "description": "The repo type.", + "in": "body", + "name": "repoType", + "required": true, + "schema": { + "$ref": "#/definitions/RepoType" + }, + "x-ms-parameter-location": "method" + }, + "SourceControlIdParameter": { + "description": "Source control Id", + "in": "path", + "name": "sourceControlId", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "SourceControl": { + "description": "The SourceControl", + "in": "body", + "name": "sourceControl", + "required": true, + "schema": { + "$ref": "#/definitions/SourceControl" + }, + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/Watchlists.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/Watchlists.json new file mode 100644 index 000000000000..dee7068085b7 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/Watchlists.json @@ -0,0 +1,752 @@ +{ + "swagger": "2.0", + "info": { + "title": "Security Insights", + "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider", + "version": "2021-03-01-preview" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{operationalInsightsResourceProvider}/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/watchlists": { + "get": { + "x-ms-examples": { + "Get all watchlists.": { + "$ref": "./examples/watchlists/GetWatchlists.json" + } + }, + "tags": [ + "Watchlists" + ], + "description": "Gets all watchlists, without watchlist items.", + "operationId": "Watchlists_List", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/OperationalInsightsResourceProvider" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/WorkspaceName" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/WatchlistList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/1.0/types.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{operationalInsightsResourceProvider}/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/watchlists/{watchlistAlias}": { + "get": { + "x-ms-examples": { + "Get a watchlist.": { + "$ref": "./examples/watchlists/GetWatchlistByAlias.json" + } + }, + "tags": [ + "Watchlists" + ], + "description": "Gets a watchlist, without its watchlist items.", + "operationId": "Watchlists_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/OperationalInsightsResourceProvider" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/WatchlistAlias" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Watchlist" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/1.0/types.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "x-ms-examples": { + "Delete a watchlist.": { + "$ref": "./examples/watchlists/DeleteWatchlist.json" + } + }, + "tags": [ + "Watchlists" + ], + "description": "Delete a watchlist.", + "operationId": "Watchlists_Delete", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/OperationalInsightsResourceProvider" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/WatchlistAlias" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/1.0/types.json#/definitions/CloudError" + } + } + } + }, + "put": { + "x-ms-examples": { + "Creates or updates a watchlist.": { + "$ref": "./examples/watchlists/CreateWatchlist.json" + }, + "Creates or updates a watchlist and bulk creates watchlist items.": { + "$ref": "./examples/watchlists/CreateWatchlistAndWatchlistItems.json" + } + }, + "tags": [ + "Watchlists" + ], + "description": "Creates or updates a watchlist and its watchlist items (bulk creation, e.g. through text/csv content type). To create a Watchlist and its items, we should call this endpoint with rawContent and contentType properties.", + "operationId": "Watchlists_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/OperationalInsightsResourceProvider" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/WatchlistAlias" + }, + { + "$ref": "#/parameters/Watchlist" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Watchlist" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/Watchlist" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/1.0/types.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{operationalInsightsResourceProvider}/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/watchlists/{watchlistAlias}/watchlistItems": { + "get": { + "x-ms-examples": { + "Get all watchlist Items.": { + "$ref": "./examples/watchlists/GetWatchlistItems.json" + } + }, + "tags": [ + "WatchlistItems" + ], + "description": "Gets all watchlist Items.", + "operationId": "WatchlistItems_List", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/OperationalInsightsResourceProvider" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/WatchlistAlias" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/WatchlistItemList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/1.0/types.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{operationalInsightsResourceProvider}/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/watchlists/{watchlistAlias}/watchlistItems/{watchlistItemId}": { + "get": { + "x-ms-examples": { + "Get a watchlist item.": { + "$ref": "./examples/watchlists/GetWatchlistItemById.json" + } + }, + "tags": [ + "WatchlistItems" + ], + "description": "Gets a watchlist, without its watchlist items.", + "operationId": "WatchlistItems_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/OperationalInsightsResourceProvider" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/WatchlistAlias" + }, + { + "$ref": "#/parameters/WatchlistItemId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/WatchlistItem" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/1.0/types.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "x-ms-examples": { + "Delete a watchlist Item.": { + "$ref": "./examples/watchlists/DeleteWatchlistItem.json" + } + }, + "tags": [ + "WatchlistItems" + ], + "description": "Delete a watchlist item.", + "operationId": "WatchlistItems_Delete", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/OperationalInsightsResourceProvider" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/WatchlistAlias" + }, + { + "$ref": "#/parameters/WatchlistItemId" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/1.0/types.json#/definitions/CloudError" + } + } + } + }, + "put": { + "x-ms-examples": { + "Creates or updates a watchlist item.": { + "$ref": "./examples/watchlists/CreateWatchlistItem.json" + } + }, + "tags": [ + "WatchlistItems" + ], + "description": "Creates or updates a watchlist item.", + "operationId": "WatchlistItems_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/OperationalInsightsResourceProvider" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/WatchlistAlias" + }, + { + "$ref": "#/parameters/WatchlistItemId" + }, + { + "$ref": "#/parameters/WatchlistItem" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/WatchlistItem" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/WatchlistItem" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/1.0/types.json#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "WatchlistList": { + "description": "List all the watchlists.", + "properties": { + "nextLink": { + "description": "URL to fetch the next set of watchlists.", + "readOnly": true, + "type": "string" + }, + "value": { + "description": "Array of watchlist.", + "items": { + "$ref": "#/definitions/Watchlist" + }, + "type": "array" + } + }, + "required": [ + "value" + ] + }, + "Watchlist": { + "allOf": [ + { + "$ref": "../../../common/1.0/types.json#/definitions/ResourceWithEtag" + } + ], + "description": "Represents a Watchlist in Azure Security Insights.", + "properties": { + "properties": { + "$ref": "#/definitions/WatchlistProperties", + "description": "Watchlist properties", + "x-ms-client-flatten": true + } + }, + "type": "object" + }, + "WatchlistProperties": { + "description": "Describes watchlist properties", + "properties": { + "watchlistId": { + "description": "The id (a Guid) of the watchlist", + "type": "string" + }, + "displayName": { + "description": "The display name of the watchlist", + "type": "string" + }, + "provider": { + "description": "The provider of the watchlist", + "type": "string" + }, + "source": { + "description": "The source of the watchlist", + "enum": [ + "Local file", + "Remote storage" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "source" + } + }, + "created": { + "description": "The time the watchlist was created", + "format": "date-time", + "type": "string" + }, + "updated": { + "description": "The last time the watchlist was updated", + "format": "date-time", + "type": "string" + }, + "createdBy": { + "$ref": "#/definitions/UserInfo", + "description": "Describes a user that created the watchlist", + "type": "object" + }, + "updatedBy": { + "$ref": "#/definitions/UserInfo", + "description": "Describes a user that updated the watchlist", + "type": "object" + }, + "description": { + "description": "A description of the watchlist", + "type": "string" + }, + "watchlistType": { + "description": "The type of the watchlist", + "type": "string" + }, + "watchlistAlias": { + "description": "The alias of the watchlist", + "type": "string" + }, + "isDeleted": { + "description": "A flag that indicates if the watchlist is deleted or not", + "type": "boolean" + }, + "labels": { + "description": "List of labels relevant to this watchlist", + "items": { + "$ref": "#/definitions/Label" + }, + "type": "array" + }, + "defaultDuration": { + "description": "The default duration of a watchlist (in ISO 8601 duration format)", + "format": "duration", + "type": "string" + }, + "tenantId": { + "description": "The tenantId where the watchlist belongs to", + "type": "string" + }, + "numberOfLinesToSkip": { + "description": "The number of lines in a csv/tsv content to skip before the header", + "type": "integer", + "format": "int32" + }, + "rawContent": { + "description": "The raw content that represents to watchlist items to create. In case of csv/tsv content type, it's the content of the file that will parsed by the endpoint", + "type": "string" + }, + "itemsSearchKey": { + "description": "The search key is used to optimize query performance when using watchlists for joins with other data. For example, enable a column with IP addresses to be the designated SearchKey field, then use this field as the key field when joining to other event data by IP address.", + "type": "string" + }, + "contentType": { + "description": "The content type of the raw content. Example : text/csv or text/tsv ", + "type": "string" + }, + "uploadStatus": { + "description": "The status of the Watchlist upload : New, InProgress or Complete. Pls note : When a Watchlist upload status is equal to InProgress, the Watchlist cannot be deleted", + "type": "string" + }, + "watchlistItemsCount": { + "description": "The number of Watchlist Items in the Watchlist", + "type": "integer", + "format": "int32" + } + }, + "required": [ + "displayName", + "source", + "provider", + "itemsSearchKey" + ], + "type": "object" + }, + "WatchlistItemList": { + "description": "List all the watchlist items.", + "properties": { + "nextLink": { + "description": "URL to fetch the next set of watchlist item.", + "readOnly": true, + "type": "string" + }, + "value": { + "description": "Array of watchlist items.", + "items": { + "$ref": "#/definitions/WatchlistItem" + }, + "type": "array" + } + }, + "required": [ + "value" + ] + }, + "WatchlistItem": { + "allOf": [ + { + "$ref": "../../../common/1.0/types.json#/definitions/ResourceWithEtag" + } + ], + "description": "Represents a Watchlist item in Azure Security Insights.", + "properties": { + "properties": { + "$ref": "#/definitions/WatchlistItemProperties", + "description": "Watchlist Item properties", + "x-ms-client-flatten": true + } + }, + "type": "object" + }, + "WatchlistItemProperties": { + "description": "Describes watchlist item properties", + "properties": { + "watchlistItemType": { + "description": "The type of the watchlist item", + "type": "string" + }, + "watchlistItemId": { + "description": "The id (a Guid) of the watchlist item", + "type": "string" + }, + "tenantId": { + "description": "The tenantId to which the watchlist item belongs to", + "type": "string" + }, + "isDeleted": { + "description": "A flag that indicates if the watchlist item is deleted or not", + "type": "boolean" + }, + "created": { + "description": "The time the watchlist item was created", + "format": "date-time", + "type": "string" + }, + "updated": { + "description": "The last time the watchlist item was updated", + "format": "date-time", + "type": "string" + }, + "createdBy": { + "$ref": "#/definitions/UserInfo", + "description": "Describes a user that created the watchlist item", + "type": "object" + }, + "updatedBy": { + "$ref": "#/definitions/UserInfo", + "description": "Describes a user that updated the watchlist item", + "type": "object" + }, + "itemsKeyValue": { + "description": "key-value pairs for a watchlist item", + "type": "object" + }, + "entityMapping": { + "description": "key-value pairs for a watchlist item entity mapping", + "type": "object" + } + }, + "required": [ + "itemsKeyValue" + ], + "type": "object" + }, + "UserInfo": { + "description": "User information that made some action", + "properties": { + "email": { + "description": "The email of the user.", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "The name of the user.", + "readOnly": true, + "type": "string" + }, + "objectId": { + "description": "The object id of the user.", + "format": "uuid", + "type": "string", + "x-nullable": true + } + }, + "type": "object" + }, + "Label": { + "description": "Label that will be used to tag and filter on.", + "type": "string" + } + }, + "parameters": { + "WatchlistAlias": { + "description": "Watchlist Alias", + "in": "path", + "name": "watchlistAlias", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "Watchlist": { + "description": "The watchlist", + "in": "body", + "name": "watchlist", + "required": true, + "schema": { + "$ref": "#/definitions/Watchlist" + }, + "x-ms-parameter-location": "method" + }, + "WatchlistItem": { + "description": "The watchlist item", + "in": "body", + "name": "watchlistItem", + "required": true, + "schema": { + "$ref": "#/definitions/WatchlistItem" + }, + "x-ms-parameter-location": "method" + }, + "WatchlistItemId": { + "description": "Watchlist Item Id (GUID)", + "in": "path", + "name": "watchlistItemId", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/dataConnectors.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/dataConnectors.json new file mode 100644 index 000000000000..ff653f082db9 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/dataConnectors.json @@ -0,0 +1,1574 @@ +{ + "swagger": "2.0", + "info": { + "title": "Security Insights", + "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider", + "version": "2021-03-01-preview" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{operationalInsightsResourceProvider}/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/dataConnectors": { + "get": { + "x-ms-examples": { + "Get all data connectors.": { + "$ref": "./examples/dataConnectors/GetDataConnectors.json" + } + }, + "tags": [ + "Data Connectors" + ], + "description": "Gets all data connectors.", + "operationId": "DataConnectors_List", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/OperationalInsightsResourceProvider" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/WorkspaceName" + } + ], + "responses": { + "200": { + "description": "OK, Operation successfully completed", + "schema": { + "$ref": "#/definitions/DataConnectorList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/1.0/types.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{operationalInsightsResourceProvider}/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/dataConnectors/{dataConnectorId}": { + "get": { + "x-ms-examples": { + "Get an Office365 data connector.": { + "$ref": "./examples/dataConnectors/GetOfficeDataConnetorById.json" + }, + "Get a TI data connector": { + "$ref": "./examples/dataConnectors/GetThreatIntelligenceById.json" + }, + "Get a TI Taxii data connector.": { + "$ref": "./examples/dataConnectors/GetThreatIntelligenceTaxiiById.json" + }, + "Get a MCAS data connector": { + "$ref": "./examples/dataConnectors/GetMicrosoftCloudAppSecurityById.json" + }, + "Get a ASC data connector": { + "$ref": "./examples/dataConnectors/GetAzureSecurityCenterById.json" + }, + "Get an AAD data connector": { + "$ref": "./examples/dataConnectors/GetAzureActiveDirectoryById.json" + }, + "Get an AwsCloudTrail data connector": { + "$ref": "./examples/dataConnectors/GetAmazonWebServicesCloudTrailById.json" + }, + "Get an AATP data connector": { + "$ref": "./examples/dataConnectors/GetAzureAdvancedThreatProtectionById.json" + }, + "Get a MDATP data connector": { + "$ref": "./examples/dataConnectors/GetMicrosoftDefenderAdvancedThreatProtectionById.json" + }, + "Get a Office ATP data connector": { + "$ref": "./examples/dataConnectors/GetOffice365AdvancedThreatProtectionById.json" + }, + "Get a Dynamics365 data connector": { + "$ref": "./examples/dataConnectors/GetDynamics365DataConnectorById.json" + }, + "Get a MicrosoftThreatProtection data connector": { + "$ref": "./examples/dataConnectors/GetMicrosoftThreatProtectionById.json" + }, + "Get a MicrosoftThreatIntelligence data connector": { + "$ref": "./examples/dataConnectors/GetMicrosoftThreatIntelligenceById.json" + }, + "Get a GenericUI data connector": { + "$ref": "./examples/dataConnectors/GetGenericUI.json" + } + }, + "tags": [ + "Data Connectors" + ], + "description": "Gets a data connector.", + "operationId": "DataConnectors_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/OperationalInsightsResourceProvider" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/DataConnectorId" + } + ], + "responses": { + "200": { + "description": "OK, Operation successfully completed", + "schema": { + "$ref": "#/definitions/DataConnector" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/1.0/types.json#/definitions/CloudError" + } + } + } + }, + "put": { + "x-ms-examples": { + "Creates or updates an Office365 data connector": { + "$ref": "./examples/dataConnectors/CreateOfficeDataConnetor.json" + }, + "Creates or updates a Threat Intelligence Taxii data connector.": { + "$ref": "./examples/dataConnectors/CreateThreatIntelligenceTaxiiDataConnector.json" + }, + "Creates or updates an Threat Intelligence Platform data connector": { + "$ref": "./examples/dataConnectors/CreateThreatIntelligenceDataConnector.json" + }, + "Creates or updates a Dynamics365 data connector.": { + "$ref": "./examples/dataConnectors/CreateDynamics365DataConnetor.json" + }, + "Creates or updates a GenericUI data connector": { + "$ref": "./examples/dataConnectors/CreateGenericUI.json" + } + }, + "tags": [ + "Data Connectors" + ], + "description": "Creates or updates the data connector.", + "operationId": "DataConnectors_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/OperationalInsightsResourceProvider" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/DataConnectorId" + }, + { + "$ref": "#/parameters/DataConnector" + } + ], + "responses": { + "200": { + "description": "OK, Operation successfully completed", + "schema": { + "$ref": "#/definitions/DataConnector" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/DataConnector" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/1.0/types.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "x-ms-examples": { + "Delete an Office365 data connector": { + "$ref": "./examples/dataConnectors/DeleteOfficeDataConnetor.json" + }, + "Delete a GenericUI data connector": { + "$ref": "./examples/dataConnectors/DeleteGenericUI.json" + } + }, + "tags": [ + "Data Connectors" + ], + "description": "Delete the data connector.", + "operationId": "DataConnectors_Delete", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/OperationalInsightsResourceProvider" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/DataConnectorId" + } + ], + "responses": { + "200": { + "description": "OK, Operation successfully completed" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/1.0/types.json#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "AADDataConnector": { + "allOf": [ + { + "$ref": "#/definitions/DataConnector" + } + ], + "description": "Represents AAD (Azure Active Directory) data connector.", + "properties": { + "properties": { + "$ref": "#/definitions/AADDataConnectorProperties", + "description": "AAD (Azure Active Directory) data connector properties.", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "AzureActiveDirectory" + }, + "AADDataConnectorProperties": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorTenantId" + }, + { + "$ref": "#/definitions/DataConnectorWithAlertsProperties" + } + ], + "description": "AAD (Azure Active Directory) data connector properties.", + "type": "object" + }, + "AlertsDataTypeOfDataConnector": { + "description": "Alerts data type for data connectors.", + "properties": { + "alerts": { + "$ref": "#/definitions/DataConnectorDataTypeCommon", + "description": "Alerts data type connection.", + "type": "object" + } + }, + "type": "object", + "required": [ + "alerts" + ] + }, + "MSTIDataConnector": { + "allOf": [ + { + "$ref": "#/definitions/DataConnector" + } + ], + "description": "Represents Microsoft Threat Intelligence data connector.", + "properties": { + "properties": { + "$ref": "#/definitions/MSTIDataConnectorProperties", + "description": "Microsoft Threat Intelligence data connector properties.", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "MicrosoftThreatIntelligence" + }, + "MSTIDataConnectorDataTypes": { + "description": "The available data types for Microsoft Threat Intelligence Platforms data connector.", + "properties": { + "bingSafetyPhishingURL": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorDataTypeCommon" + } + ], + "properties": { + "lookbackPeriod": { + "description": "lookback period", + "type": "string" + } + }, + "description": "Data type for Microsoft Threat Intelligence Platforms data connector.", + "type": "object", + "required": [ + "lookbackPeriod" + ] + }, + "microsoftEmergingThreatFeed": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorDataTypeCommon" + } + ], + "properties": { + "lookbackPeriod": { + "description": "lookback period", + "type": "string" + } + }, + "description": "Data type for Microsoft Threat Intelligence Platforms data connector.", + "type": "object", + "required": [ + "lookbackPeriod" + ] + } + }, + "type": "object", + "required": [ + "bingSafetyPhishingURL", + "microsoftEmergingThreatFeed" + ] + }, + "MSTIDataConnectorProperties": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorTenantId" + } + ], + "description": "Microsoft Threat Intelligence data connector properties.", + "properties": { + "dataTypes": { + "$ref": "#/definitions/MSTIDataConnectorDataTypes", + "description": "The available data types for the connector." + } + }, + "required": [ + "dataTypes" + ], + "type": "object" + }, + "MTPDataConnector": { + "allOf": [ + { + "$ref": "#/definitions/DataConnector" + } + ], + "description": "Represents MTP (Microsoft Threat Protection) data connector.", + "properties": { + "properties": { + "$ref": "#/definitions/MTPDataConnectorProperties", + "description": "MTP (Microsoft Threat Protection) data connector properties.", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "MicrosoftThreatProtection" + }, + "MTPDataConnectorDataTypes": { + "description": "The available data types for Microsoft Threat Protection Platforms data connector.", + "properties": { + "incidents": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorDataTypeCommon" + } + ], + "description": "Data type for Microsoft Threat Protection Platforms data connector.", + "type": "object" + } + }, + "type": "object", + "required": [ + "incidents" + ] + }, + "MTPDataConnectorProperties": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorTenantId" + } + ], + "description": "MTP (Microsoft Threat Protection) data connector properties.", + "properties": { + "dataTypes": { + "$ref": "#/definitions/MTPDataConnectorDataTypes", + "description": "The available data types for the connector." + } + }, + "required": [ + "dataTypes" + ], + "type": "object" + }, + "AATPDataConnector": { + "allOf": [ + { + "$ref": "#/definitions/DataConnector" + } + ], + "description": "Represents AATP (Azure Advanced Threat Protection) data connector.", + "properties": { + "properties": { + "$ref": "#/definitions/AATPDataConnectorProperties", + "description": "AATP (Azure Advanced Threat Protection) data connector properties.", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "AzureAdvancedThreatProtection" + }, + "AATPDataConnectorProperties": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorTenantId" + }, + { + "$ref": "#/definitions/DataConnectorWithAlertsProperties" + } + ], + "description": "AATP (Azure Advanced Threat Protection) data connector properties.", + "type": "object" + }, + "ASCDataConnector": { + "allOf": [ + { + "$ref": "#/definitions/DataConnector" + } + ], + "description": "Represents ASC (Azure Security Center) data connector.", + "properties": { + "properties": { + "$ref": "#/definitions/ASCDataConnectorProperties", + "description": "ASC (Azure Security Center) data connector properties.", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "AzureSecurityCenter" + }, + "ASCDataConnectorProperties": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorWithAlertsProperties" + } + ], + "description": "ASC (Azure Security Center) data connector properties.", + "properties": { + "subscriptionId": { + "description": "The subscription id to connect to, and get the data from.", + "type": "string" + } + }, + "type": "object" + }, + "AwsCloudTrailDataConnector": { + "allOf": [ + { + "$ref": "#/definitions/DataConnector" + } + ], + "description": "Represents Amazon Web Services CloudTrail data connector.", + "properties": { + "properties": { + "$ref": "#/definitions/AwsCloudTrailDataConnectorProperties", + "description": "Amazon Web Services CloudTrail data connector properties.", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "AmazonWebServicesCloudTrail" + }, + "AwsCloudTrailDataConnectorDataTypes": { + "description": "The available data types for Amazon Web Services CloudTrail data connector.", + "properties": { + "logs": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorDataTypeCommon" + } + ], + "description": "Logs data type.", + "type": "object" + } + }, + "type": "object", + "required": [ + "logs" + ] + }, + "AwsCloudTrailDataConnectorProperties": { + "description": "Amazon Web Services CloudTrail data connector properties.", + "properties": { + "awsRoleArn": { + "description": "The Aws Role Arn (with CloudTrailReadOnly policy) that is used to access the Aws account.", + "type": "string" + }, + "dataTypes": { + "$ref": "#/definitions/AwsCloudTrailDataConnectorDataTypes", + "description": "The available data types for the connector." + } + }, + "type": "object", + "required": [ + "dataTypes" + ] + }, + "DataConnector": { + "description": "Data connector", + "allOf": [ + { + "$ref": "../../../common/1.0/types.json#/definitions/ResourceWithEtag" + } + ], + "discriminator": "kind", + "required": [ + "kind" + ], + "properties": { + "kind": { + "$ref": "#/definitions/DataConnectorKind", + "description": "The data connector kind" + } + }, + "type": "object" + }, + "DataConnectorDataTypeCommon": { + "description": "Common field for data type in data connectors.", + "properties": { + "state": { + "description": "Describe whether this data type connection is enabled or not.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "DataTypeState" + } + } + }, + "type": "object", + "required": [ + "state" + ] + }, + "DataConnectorWithAlertsProperties": { + "description": "Data connector properties.", + "properties": { + "dataTypes": { + "$ref": "#/definitions/AlertsDataTypeOfDataConnector", + "description": "The available data types for the connector." + } + }, + "type": "object" + }, + "DataConnectorKind": { + "description": "The kind of the data connector", + "enum": [ + "AzureActiveDirectory", + "AzureSecurityCenter", + "MicrosoftCloudAppSecurity", + "ThreatIntelligence", + "ThreatIntelligenceTaxii", + "Office365", + "OfficeATP", + "AmazonWebServicesCloudTrail", + "AzureAdvancedThreatProtection", + "MicrosoftDefenderAdvancedThreatProtection", + "Dynamics365", + "MicrosoftThreatProtection", + "MicrosoftThreatIntelligence", + "GenericUI" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "DataConnectorKind", + "values": [ + { + "value": "AzureActiveDirectory" + }, + { + "value": "AzureSecurityCenter" + }, + { + "value": "MicrosoftCloudAppSecurity" + }, + { + "value": "ThreatIntelligence" + }, + { + "value": "ThreatIntelligenceTaxii" + }, + { + "value": "Office365" + }, + { + "value": "OfficeATP" + }, + { + "value": "AmazonWebServicesCloudTrail" + }, + { + "value": "AzureAdvancedThreatProtection" + }, + { + "value": "MicrosoftDefenderAdvancedThreatProtection" + }, + { + "value": "Dynamics365" + }, + { + "value": "MicrosoftThreatProtection" + }, + { + "value": "MicrosoftThreatIntelligence" + }, + { + "value": "GenericUI" + } + ] + } + }, + "DataConnectorList": { + "description": "List all the data connectors.", + "properties": { + "nextLink": { + "description": "URL to fetch the next set of data connectors.", + "readOnly": true, + "type": "string" + }, + "value": { + "description": "Array of data connectors.", + "items": { + "$ref": "#/definitions/DataConnector" + }, + "type": "array" + } + }, + "required": [ + "value" + ] + }, + "DataConnectorTenantId": { + "description": "Properties data connector on tenant level.", + "properties": { + "tenantId": { + "description": "The tenant id to connect to, and get the data from.", + "type": "string" + } + }, + "type": "object", + "required": [ + "tenantId" + ] + }, + "MCASDataConnector": { + "allOf": [ + { + "$ref": "#/definitions/DataConnector" + } + ], + "description": "Represents MCAS (Microsoft Cloud App Security) data connector.", + "properties": { + "properties": { + "$ref": "#/definitions/MCASDataConnectorProperties", + "description": "MCAS (Microsoft Cloud App Security) data connector properties.", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "MicrosoftCloudAppSecurity" + }, + "MCASDataConnectorDataTypes": { + "allOf": [ + { + "$ref": "#/definitions/AlertsDataTypeOfDataConnector" + } + ], + "description": "The available data types for MCAS (Microsoft Cloud App Security) data connector.", + "properties": { + "discoveryLogs": { + "$ref": "#/definitions/DataConnectorDataTypeCommon", + "description": "Discovery log data type connection." + } + }, + "type": "object" + }, + "MCASDataConnectorProperties": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorTenantId" + } + ], + "description": "MCAS (Microsoft Cloud App Security) data connector properties.", + "properties": { + "dataTypes": { + "$ref": "#/definitions/MCASDataConnectorDataTypes", + "description": "The available data types for the connector." + } + }, + "required": [ + "dataTypes" + ], + "type": "object" + }, + "Dynamics365DataConnector": { + "allOf": [ + { + "$ref": "#/definitions/DataConnector" + } + ], + "description": "Represents Dynamics365 data connector.", + "properties": { + "properties": { + "$ref": "#/definitions/Dynamics365DataConnectorProperties", + "description": "Dynamics365 data connector properties.", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "Dynamics365" + }, + "Dynamics365DataConnectorDataTypes": { + "description": "The available data types for Dynamics365 data connector.", + "properties": { + "dynamics365CdsActivities": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorDataTypeCommon" + } + ], + "description": "Common Data Service data type connection.", + "type": "object" + } + }, + "type": "object", + "required": [ + "dynamics365CdsActivities" + ] + }, + "Dynamics365DataConnectorProperties": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorTenantId" + } + ], + "description": "Dynamics365 data connector properties.", + "properties": { + "dataTypes": { + "$ref": "#/definitions/Dynamics365DataConnectorDataTypes", + "description": "The available data types for the connector." + } + }, + "required": [ + "dataTypes" + ], + "type": "object" + }, + "OfficeATPDataConnector": { + "allOf": [ + { + "$ref": "#/definitions/DataConnector" + } + ], + "description": "Represents OfficeATP (Office 365 Advanced Threat Protection) data connector.", + "properties": { + "properties": { + "$ref": "#/definitions/OfficeATPDataConnectorProperties", + "description": "OfficeATP (Office 365 Advanced Threat Protection) data connector properties.", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "OfficeATP" + }, + "OfficeATPDataConnectorProperties": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorTenantId" + }, + { + "$ref": "#/definitions/DataConnectorWithAlertsProperties" + } + ], + "description": "OfficeATP (Office 365 Advanced Threat Protection) data connector properties.", + "type": "object" + }, + "MDATPDataConnector": { + "allOf": [ + { + "$ref": "#/definitions/DataConnector" + } + ], + "description": "Represents MDATP (Microsoft Defender Advanced Threat Protection) data connector.", + "properties": { + "properties": { + "$ref": "#/definitions/MDATPDataConnectorProperties", + "description": "MDATP (Microsoft Defender Advanced Threat Protection) data connector properties.", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "MicrosoftDefenderAdvancedThreatProtection" + }, + "MDATPDataConnectorProperties": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorTenantId" + }, + { + "$ref": "#/definitions/DataConnectorWithAlertsProperties" + } + ], + "description": "MDATP (Microsoft Defender Advanced Threat Protection) data connector properties.", + "type": "object" + }, + "OfficeDataConnector": { + "allOf": [ + { + "$ref": "#/definitions/DataConnector" + } + ], + "description": "Represents office data connector.", + "properties": { + "properties": { + "$ref": "#/definitions/OfficeDataConnectorProperties", + "description": "Office data connector properties.", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "Office365" + }, + "OfficeDataConnectorDataTypes": { + "description": "The available data types for office data connector.", + "properties": { + "exchange": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorDataTypeCommon" + } + ], + "description": "Exchange data type connection.", + "type": "object" + }, + "sharePoint": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorDataTypeCommon" + } + ], + "description": "SharePoint data type connection.", + "type": "object" + }, + "teams": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorDataTypeCommon" + } + ], + "description": "Teams data type connection.", + "type": "object" + } + }, + "required": [ + "exchange", + "sharePoint", + "teams" + ], + "type": "object" + }, + "OfficeDataConnectorProperties": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorTenantId" + } + ], + "description": "Office data connector properties.", + "properties": { + "dataTypes": { + "$ref": "#/definitions/OfficeDataConnectorDataTypes", + "description": "The available data types for the connector." + } + }, + "required": [ + "dataTypes" + ], + "type": "object" + }, + "TIDataConnector": { + "allOf": [ + { + "$ref": "#/definitions/DataConnector" + } + ], + "description": "Represents threat intelligence data connector.", + "properties": { + "properties": { + "$ref": "#/definitions/TIDataConnectorProperties", + "description": "TI (Threat Intelligence) data connector properties.", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "ThreatIntelligence" + }, + "TIDataConnectorDataTypes": { + "description": "The available data types for TI (Threat Intelligence) data connector.", + "properties": { + "indicators": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorDataTypeCommon" + } + ], + "description": "Data type for indicators connection.", + "type": "object" + } + }, + "type": "object", + "required": [ + "indicators" + ] + }, + "TIDataConnectorProperties": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorTenantId" + } + ], + "description": "TI (Threat Intelligence) data connector properties.", + "properties": { + "tipLookbackPeriod": { + "description": "The lookback period for the feed to be imported.", + "format": "date-time", + "type": "string", + "x-nullable": true + }, + "dataTypes": { + "$ref": "#/definitions/TIDataConnectorDataTypes", + "description": "The available data types for the connector." + } + }, + "type": "object", + "required": [ + "dataTypes" + ] + }, + "TiTaxiiDataConnector": { + "allOf": [ + { + "$ref": "#/definitions/DataConnector" + } + ], + "description": "Data connector to pull Threat intelligence data from TAXII 2.0/2.1 server", + "properties": { + "properties": { + "$ref": "#/definitions/TiTaxiiDataConnectorProperties", + "description": "Threat intelligence TAXII data connector properties.", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "ThreatIntelligenceTaxii" + }, + "TiTaxiiDataConnectorDataTypes": { + "description": "The available data types for Threat Intelligence TAXII data connector.", + "properties": { + "taxiiClient": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorDataTypeCommon" + } + ], + "description": "Data type for TAXII connector.", + "type": "object" + } + }, + "type": "object", + "required": [ + "taxiiClient" + ] + }, + "TiTaxiiDataConnectorProperties": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorTenantId" + } + ], + "description": "Threat Intelligence TAXII data connector properties.", + "properties": { + "workspaceId": { + "description": "The workspace id.", + "type": "string" + }, + "friendlyName": { + "description": "The friendly name for the TAXII server.", + "type": "string" + }, + "taxiiServer": { + "description": "The API root for the TAXII server.", + "type": "string" + }, + "collectionId": { + "description": "The collection id of the TAXII server.", + "type": "string" + }, + "userName": { + "description": "The userName for the TAXII server.", + "type": "string" + }, + "password": { + "description": "The password for the TAXII server.", + "type": "string" + }, + "taxiiLookbackPeriod": { + "description": "The lookback period for the TAXII server.", + "format": "date-time", + "type": "string", + "x-nullable": true + }, + "pollingFrequency": { + "description": "The polling frequency for the TAXII server.", + "type": "string", + "x-nullable": true, + "enum": [ + "OnceAMinute", + "OnceAnHour", + "OnceADay" + ], + "x-ms-enum": { + "modelAsString": true, + "name": "PollingFrequency", + "values": [ + { + "description": "Once a minute", + "value": "OnceAMinute" + }, + { + "description": "Once an hour", + "value": "OnceAnHour" + }, + { + "description": "Once a day", + "value": "OnceADay" + } + ] + } + }, + "dataTypes": { + "$ref": "#/definitions/TiTaxiiDataConnectorDataTypes", + "description": "The available data types for Threat Intelligence TAXII data connector." + } + }, + "required": [ + "dataTypes", + "pollingFrequency" + ], + "type": "object" + }, + "CodelessUiDataConnector": { + "allOf": [ + { + "$ref": "#/definitions/DataConnector" + } + ], + "description": "Represents Codeless UI data connector.", + "properties": { + "properties": { + "$ref": "#/definitions/CodelessParameters", + "description": "Codeless UI data connector properties", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "GenericUI" + }, + "CodelessParameters": { + "description": "Represents Codeless UI data connector", + "type": "object", + "properties": { + "connectorUiConfig": { + "$ref": "#/definitions/CodelessUiConnectorConfigProperties", + "description": "Config to describe the instructions blade" + } + } + }, + "CodelessUiConnectorConfigProperties": { + "description": "Config to describe the instructions blade", + "type": "object", + "properties": { + "title": { + "description": "Connector blade title", + "type": "string" + }, + "publisher": { + "description": "Connector publisher name", + "type": "string" + }, + "descriptionMarkdown": { + "description": "Connector description", + "type": "string" + }, + "customImage": { + "description": "An optional custom image to be used when displaying the connector within Azure Sentinel's connector's gallery", + "type": "string" + }, + "graphQueriesTableName": { + "description": "Name of the table the connector will insert the data to", + "type": "string" + }, + "graphQueries": { + "description": "The graph query to show the current data status", + "items": { + "allOf": [ + { + "$ref": "#/definitions/GraphQueries" + } + ] + }, + "type": "array" + }, + "sampleQueries": { + "description": "The sample queries for the connector", + "items": { + "allOf": [ + { + "$ref": "#/definitions/SampleQueries" + } + ] + }, + "type": "array" + }, + "dataTypes": { + "description": "Data types to check for last data received", + "items": { + "allOf": [ + { + "$ref": "#/definitions/LastDataReceivedDataType" + } + ] + }, + "type": "array" + }, + "connectivityCriteria": { + "description": "Define the way the connector check connectivity", + "items": { + "allOf": [ + { + "$ref": "#/definitions/ConnectivityCriteria" + } + ] + }, + "type": "array" + }, + "availability": { + "description": "Connector Availability Status", + "$ref": "#/definitions/Availability" + }, + "permissions": { + "description": "Permissions required for the connector", + "$ref": "#/definitions/Permissions" + }, + "instructionSteps": { + "description": "Instruction steps to enable the connector", + "items": { + "allOf": [ + { + "$ref": "#/definitions/InstructionSteps" + } + ] + }, + "type": "array" + } + }, + "required": [ + "title", + "publisher", + "descriptionMarkdown", + "graphQueriesTableName", + "graphQueries", + "sampleQueries", + "dataTypes", + "connectivityCriteria", + "availability", + "permissions", + "instructionSteps" + ] + }, + "LastDataReceivedDataType": { + "description": "Data type for last data received", + "type": "object", + "properties": { + "name": { + "description": "Name of the data type to show in the graph. can be use with {{graphQueriesTableName}} placeholder", + "type": "string" + }, + "lastDataReceivedQuery": { + "description": "Query for indicate last data received", + "type": "string" + } + } + }, + "Permissions": { + "description": "Permissions required for the connector", + "type": "object", + "properties": { + "resourceProvider": { + "description": "Resource provider permissions required for the connector", + "items": { + "allOf": [ + { + "$ref": "#/definitions/ResourceProvider" + } + ] + }, + "type": "array" + }, + "customs": { + "description": "Customs permissions required for the connector", + "items": { + "allOf": [ + { + "$ref": "#/definitions/Customs" + } + ] + }, + "type": "array" + } + } + }, + "Customs": { + "description": "Customs permissions required for the connector", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CustomsPermission" + } + ] + }, + "CustomsPermission": { + "description": "Customs permissions required for the connector", + "type": "object", + "properties": { + "name": { + "description": "Customs permissions name", + "type": "string" + }, + "description": { + "description": "Customs permissions description", + "type": "string" + } + } + }, + "ResourceProvider": { + "description": "Resource provider permissions required for the connector", + "type": "object", + "properties": { + "provider": { + "description": "Provider name", + "enum": [ + "Microsoft.OperationalInsights/solutions", + "Microsoft.OperationalInsights/workspaces", + "Microsoft.OperationalInsights/workspaces/datasources", + "microsoft.aadiam/diagnosticSettings", + "Microsoft.OperationalInsights/workspaces/sharedKeys", + "Microsoft.Authorization/policyAssignments" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "ProviderName" + } + }, + "permissionsDisplayText": { + "description": "Permission description text", + "type": "string" + }, + "providerDisplayName": { + "description": "Permission provider display name", + "type": "string" + }, + "scope": { + "description": "Permission provider scope", + "enum": [ + "ResourceGroup", + "Subscription", + "Workspace" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "PermissionProviderScope" + } + }, + "requiredPermissions": { + "description": "Required permissions for the connector", + "$ref": "#/definitions/RequiredPermissions" + } + } + }, + "InstructionSteps": { + "description": "Instruction steps to enable the connector", + "type": "object", + "properties": { + "title": { + "description": "Instruction step title", + "type": "string" + }, + "description": { + "description": "Instruction step description", + "type": "string" + }, + "instructions": { + "description": "Instruction step details", + "items": { + "allOf": [ + { + "$ref": "#/definitions/ConnectorInstructionModelBase" + } + ] + }, + "type": "array" + } + } + }, + "ConnectorInstructionModelBase": { + "description": "Instruction step details", + "type": "object", + "properties": { + "parameters": { + "type": "object", + "description": "The parameters for the setting" + }, + "type": { + "description": "The kind of the setting", + "enum": [ + "CopyableLabel", + "InstructionStepsGroup", + "InfoMessage" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "SettingType" + } + } + }, + "required": [ + "type" + ] + }, + "RequiredPermissions": { + "description": "Required permissions for the connector", + "type": "object", + "properties": { + "action": { + "description": "action permission", + "type": "boolean" + }, + "write": { + "description": "write permission", + "type": "boolean" + }, + "read": { + "description": "read permission", + "type": "boolean" + }, + "delete": { + "description": "delete permission", + "type": "boolean" + } + } + }, + "Availability": { + "description": "Connector Availability Status", + "type": "object", + "properties": { + "status": { + "description": "The connector Availability Status", + "format": "int32", + "type": "integer", + "enum": [ + 1 + ], + "x-ms-enum": { + "name": "AvailabilityStatus", + "values": [ + { + "value": 1, + "description": "Available" + } + ] + } + }, + "isPreview": { + "description": "Set connector as preview", + "type": "boolean" + } + } + }, + "ConnectivityCriteria": { + "description": "Setting for the connector check connectivity", + "type": "object", + "properties": { + "type": { + "description": "type of connectivity", + "enum": [ + "IsConnectedQuery" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "ConnectivityType" + } + }, + "value": { + "description": "Queries for checking connectivity", + "type": "array", + "items": { + "description": "checking connectivity query", + "type": "string" + } + } + } + }, + "SampleQueries": { + "description": "The sample queries for the connector", + "type": "object", + "properties": { + "description": { + "description": "The sample query description", + "type": "string" + }, + "query": { + "description": "the sample query", + "type": "string" + } + } + }, + "GraphQueries": { + "type": "object", + "description": "The graph query to show the current data status", + "properties": { + "metricName": { + "description": "the metric that the query is checking", + "type": "string" + }, + "legend": { + "description": "The legend for the graph", + "type": "string" + }, + "baseQuery": { + "description": "The base query for the graph", + "type": "string" + } + } + } + }, + "parameters": { + "ResourceGroupName": { + "description": "The name of the resource group within the user's subscription. The name is case insensitive.", + "in": "path", + "maxLength": 90, + "minLength": 1, + "name": "resourceGroupName", + "pattern": "^[-\\w\\._\\(\\)]+$", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "SubscriptionId": { + "description": "Azure subscription ID", + "in": "path", + "name": "subscriptionId", + "pattern": "^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$", + "required": true, + "type": "string" + }, + "DataConnector": { + "description": "The data connector", + "in": "body", + "name": "dataConnector", + "required": true, + "schema": { + "$ref": "#/definitions/DataConnector" + }, + "x-ms-parameter-location": "method" + }, + "DataConnectorId": { + "description": "Connector ID", + "in": "path", + "name": "dataConnectorId", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/CreateDynamics365DataConnetor.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/CreateDynamics365DataConnetor.json new file mode 100644 index 000000000000..e93f2f48f5ab --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/CreateDynamics365DataConnetor.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "dataConnectorId": "c2541efb-c9a6-47fe-9501-87d1017d1512", + "dataConnector": { + "kind": "Dynamics365", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8", + "dataTypes": { + "dynamics365CdsActivities": { + "state": "Enabled" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "name": "c2541efb-c9a6-47fe-9501-87d1017d1512", + "type": "Microsoft.SecurityInsights/dataConnectors", + "kind": "Dynamics365", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8", + "dataTypes": { + "dynamics365CdsActivities": { + "state": "Enabled" + } + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "name": "c2541efb-c9a6-47fe-9501-87d1017d1512", + "type": "Microsoft.SecurityInsights/dataConnectors", + "kind": "Dynamics365", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8", + "dataTypes": { + "dynamics365CdsActivities": { + "state": "Enabled" + } + } + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/CreateGenericUI.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/CreateGenericUI.json new file mode 100644 index 000000000000..a99de411ae40 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/CreateGenericUI.json @@ -0,0 +1,438 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "dataConnectorId": "316ec55e-7138-4d63-ab18-90c8a60fd1c8", + "dataConnector": { + "kind": "GenericUI", + "properties": { + "connectorUiConfig": { + "title": "Qualys Vulnerability Management (CCP DEMO)", + "publisher": "Qualys", + "descriptionMarkdown": "The [Qualys Vulnerability Management (VM)](https://www.qualys.com/apps/vulnerability-management/) data connector provides the capability to ingest vulnerability host detection data into Azure Sentinel through the Qualys API. The connector provides visibility into host detection data from vulerability scans. This connector provides Azure Sentinel the capability to view dashboards, create custom alerts, and improve investigation ", + "graphQueriesTableName": "QualysHostDetection_CL", + "graphQueries": [ + { + "metricName": "Total data received", + "legend": "{{graphQueriesTableName}}", + "baseQuery": "{{graphQueriesTableName}}" + } + ], + "sampleQueries": [ + { + "description": "Top 10 Vulerabilities detected", + "query": "{{graphQueriesTableName}}\n | mv-expand todynamic(Detections_s)\n | extend Vulnerability = tostring(Detections_s.Results)\n | summarize count() by Vulnerability\n | top 10 by count_" + } + ], + "dataTypes": [ + { + "name": "{{graphQueriesTableName}}", + "lastDataReceivedQuery": "{{graphQueriesTableName}}\n | summarize Time = max(TimeGenerated)\n | where isnotempty(Time)" + } + ], + "availability": { + "status": 1, + "isPreview": true + }, + "connectivityCriteria": [ + { + "type": "IsConnectedQuery", + "value": [ + "{{graphQueriesTableName}}\n | summarize LastLogReceived = max(TimeGenerated)\n | project IsConnected = LastLogReceived > ago(30d)" + ] + } + ], + "permissions": { + "resourceProvider": [ + { + "provider": "Microsoft.OperationalInsights/workspaces", + "permissionsDisplayText": "read and write permissions on the workspace are required.", + "providerDisplayName": "Workspace", + "scope": "Workspace", + "requiredPermissions": { + "write": true, + "read": true, + "delete": true + } + }, + { + "provider": "Microsoft.OperationalInsights/workspaces/sharedKeys", + "permissionsDisplayText": "read permissions to shared keys for the workspace are required. [See the documentation to learn more about workspace keys](https://docs.microsoft.com/azure/azure-monitor/platform/agent-windows#obtain-workspace-id-and-key).", + "providerDisplayName": "Keys", + "scope": "Workspace", + "requiredPermissions": { + "action": true + } + } + ], + "customs": [ + { + "name": "Microsoft.Web/sites permissions", + "description": "Read and write permissions to Azure Functions to create a Function App is required. [See the documentation to learn more about Azure Functions](https://docs.microsoft.com/azure/azure-functions/)." + }, + { + "name": "Qualys API Key", + "description": "A Qualys VM API username and password is required. [See the documentation to learn more about Qualys VM API](https://www.qualys.com/docs/qualys-api-vmpc-user-guide.pdf)." + } + ] + }, + "instructionSteps": [ + { + "title": "", + "description": ">**NOTE:** This connector uses Azure Functions to connect to Qualys VM to pull its logs into Azure Sentinel. This might result in additional data ingestion costs. Check the [Azure Functions pricing page](https://azure.microsoft.com/pricing/details/functions/) for details." + }, + { + "title": "", + "description": ">**(Optional Step)** Securely store workspace and API authorization key(s) or token(s) in Azure Key Vault. Azure Key Vault provides a secure mechanism to store and retrieve key values. [Follow these instructions](https://docs.microsoft.com/azure/app-service/app-service-key-vault-references) to use Azure Key Vault with an Azure Function App." + }, + { + "title": "", + "description": "**STEP 1 - Configuration steps for the Qualys VM API**\n\n1. Log into the Qualys Vulnerability Management console with an administrator account, select the **Users** tab and the **Users** subtab. \n2. Click on the **New** drop-down menu and select **Users..**\n3. Create a username and password for the API account. \n4. In the **User Roles** tab, ensure the account role is set to **Manager** and access is allowed to **GUI** and **API**\n4. Log out of the administrator account and log into the console with the new API credentials for validation, then log out of the API account. \n5. Log back into the console using an administrator account and modify the API accounts User Roles, removing access to **GUI**. \n6. Save all changes." + }, + { + "title": "", + "description": "**STEP 2 - Choose ONE from the following two deployment options to deploy the connector and the associated Azure Function**\n\n>**IMPORTANT:** Before deploying the Qualys VM connector, have the Workspace ID and Workspace Primary Key (can be copied from the following), as well as the Qualys VM API Authorization Key(s), readily available.", + "instructions": [ + { + "parameters": { + "fillWith": [ + "WorkspaceId" + ], + "label": "Workspace ID" + }, + "type": "CopyableLabel" + }, + { + "parameters": { + "fillWith": [ + "PrimaryKey" + ], + "label": "Primary Key" + }, + "type": "CopyableLabel" + } + ] + }, + { + "title": "Option 1 - Azure Resource Manager (ARM) Template", + "description": "Use this method for automated deployment of the Qualys VM connector using an ARM Tempate.\n\n1. Click the **Deploy to Azure** button below. \n\n\t[![Deploy To Azure](https://aka.ms/deploytoazurebutton)](https://aka.ms/sentinelqualysvmazuredeploy)\n2. Select the preferred **Subscription**, **Resource Group** and **Location**. \n3. Enter the **Workspace ID**, **Workspace Key**, **API Username**, **API Password** , update the **URI**, and any additional URI **Filter Parameters** (each filter should be separated by an \"&\" symbol, no spaces.) \n> - Enter the URI that corresponds to your region. The complete list of API Server URLs can be [found here](https://www.qualys.com/docs/qualys-api-vmpc-user-guide.pdf#G4.735348) -- There is no need to add a time suffix to the URI, the Function App will dynamically append the Time Value to the URI in the proper format. \n - The default **Time Interval** is set to pull the last five (5) minutes of data. If the time interval needs to be modified, it is recommended to change the Function App Timer Trigger accordingly (in the function.json file, post deployment) to prevent overlapping data ingestion. \n> - Note: If using Azure Key Vault secrets for any of the values above, use the`@Microsoft.KeyVault(SecretUri={Security Identifier})`schema in place of the string values. Refer to [Key Vault references documentation](https://docs.microsoft.com/azure/app-service/app-service-key-vault-references) for further details. \n4. Mark the checkbox labeled **I agree to the terms and conditions stated above**. \n5. Click **Purchase** to deploy." + }, + { + "title": "Option 2 - Manual Deployment of Azure Functions", + "description": "Use the following step-by-step instructions to deploy the Quayls VM connector manually with Azure Functions." + }, + { + "title": "", + "description": "**1. Create a Function App**\n\n1. From the Azure Portal, navigate to [Function App](https://portal.azure.com/#blade/HubsExtension/BrowseResource/resourceType/Microsoft.Web%2Fsites/kind/functionapp), and select **+ Add**.\n2. In the **Basics** tab, ensure Runtime stack is set to **Powershell Core**. \n3. In the **Hosting** tab, ensure the **Consumption (Serverless)** plan type is selected.\n4. Make other preferrable configuration changes, if needed, then click **Create**." + }, + { + "title": "", + "description": "**2. Import Function App Code**\n\n1. In the newly created Function App, select **Functions** on the left pane and click **+ New Function**.\n2. Select **Timer Trigger**.\n3. Enter a unique Function **Name** and leave the default cron schedule of every 5 minutes, then click **Create**.\n5. Click on **Code + Test** on the left pane. \n6. Copy the [Function App Code](https://aka.ms/sentinelqualysvmazurefunctioncode) and paste into the Function App `run.ps1` editor.\n7. Click **Save**." + }, + { + "title": "", + "description": "**3. Configure the Function App**\n\n1. In the Function App, select the Function App Name and select **Configuration**.\n2. In the **Application settings** tab, select **+ New application setting**.\n3. Add each of the following seven (7) application settings individually, with their respective string values (case-sensitive): \n\t\tapiUsername\n\t\tapiPassword\n\t\tworkspaceID\n\t\tworkspaceKey\n\t\turi\n\t\tfilterParameters\n\t\ttimeInterval\n> - Enter the URI that corresponds to your region. The complete list of API Server URLs can be [found here](https://www.qualys.com/docs/qualys-api-vmpc-user-guide.pdf#G4.735348). The `uri` value must follow the following schema: `https:///api/2.0/fo/asset/host/vm/detection/?action=list&vm_processed_after=` -- There is no need to add a time suffix to the URI, the Function App will dynamically append the Time Value to the URI in the proper format.\n> - Add any additional filter parameters, for the `filterParameters` variable, that need to be appended to the URI. Each parameter should be seperated by an \"&\" symbol and should not include any spaces.\n> - Set the `timeInterval` (in minutes) to the value of `5` to correspond to the Timer Trigger of every `5` minutes. If the time interval needs to be modified, it is recommended to change the Function App Timer Trigger accordingly to prevent overlapping data ingestion.\n> - Note: If using Azure Key Vault, use the`@Microsoft.KeyVault(SecretUri={Security Identifier})`schema in place of the string values. Refer to [Key Vault references documentation](https://docs.microsoft.com/azure/app-service/app-service-key-vault-references) for further details.\n4. Once all application settings have been entered, click **Save**." + }, + { + "title": "", + "description": "**4. Configure the host.json**.\n\nDue to the potentially large amount of Qualys host detection data being ingested, it can cause the execution time to surpass the default Function App timeout of five (5) minutes. Increase the default timeout duration to the maximum of ten (10) minutes, under the Consumption Plan, to allow more time for the Function App to execute.\n\n1. In the Function App, select the Function App Name and select the **App Service Editor** blade.\n2. Click **Go** to open the editor, then select the **host.json** file under the **wwwroot** directory.\n3. Add the line `\"functionTimeout\": \"00:10:00\",` above the `managedDependancy` line \n4. Ensure **SAVED** appears on the top right corner of the editor, then exit the editor.\n\n> NOTE: If a longer timeout duration is required, consider upgrading to an [App Service Plan](https://docs.microsoft.com/azure/azure-functions/functions-scale#timeout)" + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/316ec55e-7138-4d63-ab18-90c8a60fd1c8", + "name": "316ec55e-7138-4d63-ab18-90c8a60fd1c8", + "etag": "\"1a00b074-0000-0100-0000-606ef5bd0000\"", + "type": "Microsoft.SecurityInsights/dataConnectors", + "kind": "GenericUI", + "properties": { + "connectorUiConfig": { + "title": "Qualys Vulnerability Management (CCP DEMO)", + "publisher": "Qualys", + "descriptionMarkdown": "The [Qualys Vulnerability Management (VM)](https://www.qualys.com/apps/vulnerability-management/) data connector provides the capability to ingest vulnerability host detection data into Azure Sentinel through the Qualys API. The connector provides visibility into host detection data from vulerability scans. This connector provides Azure Sentinel the capability to view dashboards, create custom alerts, and improve investigation ", + "graphQueriesTableName": "QualysHostDetection_CL", + "graphQueries": [ + { + "metricName": "Total data received", + "legend": "{{graphQueriesTableName}}", + "baseQuery": "{{graphQueriesTableName}}" + } + ], + "sampleQueries": [ + { + "description": "Top 10 Vulerabilities detected", + "query": "{{graphQueriesTableName}}\n | mv-expand todynamic(Detections_s)\n | extend Vulnerability = tostring(Detections_s.Results)\n | summarize count() by Vulnerability\n | top 10 by count_" + } + ], + "dataTypes": [ + { + "name": "{{graphQueriesTableName}}", + "lastDataReceivedQuery": "{{graphQueriesTableName}}\n | summarize Time = max(TimeGenerated)\n | where isnotempty(Time)" + } + ], + "connectivityCriteria": [ + { + "type": "IsConnectedQuery", + "value": [ + "{{graphQueriesTableName}}\n | summarize LastLogReceived = max(TimeGenerated)\n | project IsConnected = LastLogReceived > ago(30d)" + ] + } + ], + "availability": { + "status": 1, + "isPreview": true + }, + "permissions": { + "resourceProvider": [ + { + "provider": "Microsoft.OperationalInsights/workspaces", + "permissionsDisplayText": "read and write permissions on the workspace are required.", + "providerDisplayName": "Workspace", + "scope": "Workspace", + "requiredPermissions": { + "write": true, + "read": true, + "delete": true + } + }, + { + "provider": "Microsoft.OperationalInsights/workspaces/sharedKeys", + "permissionsDisplayText": "read permissions to shared keys for the workspace are required. [See the documentation to learn more about workspace keys](https://docs.microsoft.com/azure/azure-monitor/platform/agent-windows#obtain-workspace-id-and-key).", + "providerDisplayName": "Keys", + "scope": "Workspace", + "requiredPermissions": { + "action": true + } + } + ], + "customs": [ + { + "name": "Microsoft.Web/sites permissions", + "description": "Read and write permissions to Azure Functions to create a Function App is required. [See the documentation to learn more about Azure Functions](https://docs.microsoft.com/azure/azure-functions/)." + }, + { + "name": "Qualys API Key", + "description": "A Qualys VM API username and password is required. [See the documentation to learn more about Qualys VM API](https://www.qualys.com/docs/qualys-api-vmpc-user-guide.pdf)." + } + ] + }, + "instructionSteps": [ + { + "title": "", + "description": ">**NOTE:** This connector uses Azure Functions to connect to Qualys VM to pull its logs into Azure Sentinel. This might result in additional data ingestion costs. Check the [Azure Functions pricing page](https://azure.microsoft.com/pricing/details/functions/) for details." + }, + { + "title": "", + "description": ">**(Optional Step)** Securely store workspace and API authorization key(s) or token(s) in Azure Key Vault. Azure Key Vault provides a secure mechanism to store and retrieve key values. [Follow these instructions](https://docs.microsoft.com/azure/app-service/app-service-key-vault-references) to use Azure Key Vault with an Azure Function App." + }, + { + "title": "", + "description": "**STEP 1 - Configuration steps for the Qualys VM API**\n\n1. Log into the Qualys Vulnerability Management console with an administrator account, select the **Users** tab and the **Users** subtab. \n2. Click on the **New** drop-down menu and select **Users..**\n3. Create a username and password for the API account. \n4. In the **User Roles** tab, ensure the account role is set to **Manager** and access is allowed to **GUI** and **API**\n4. Log out of the administrator account and log into the console with the new API credentials for validation, then log out of the API account. \n5. Log back into the console using an administrator account and modify the API accounts User Roles, removing access to **GUI**. \n6. Save all changes." + }, + { + "title": "", + "description": "**STEP 2 - Choose ONE from the following two deployment options to deploy the connector and the associated Azure Function**\n\n>**IMPORTANT:** Before deploying the Qualys VM connector, have the Workspace ID and Workspace Primary Key (can be copied from the following), as well as the Qualys VM API Authorization Key(s), readily available.", + "instructions": [ + { + "parameters": { + "fillWith": [ + "WorkspaceId" + ], + "label": "Workspace ID" + }, + "type": "CopyableLabel" + }, + { + "parameters": { + "fillWith": [ + "PrimaryKey" + ], + "label": "Primary Key" + }, + "type": "CopyableLabel" + } + ] + }, + { + "title": "Option 1 - Azure Resource Manager (ARM) Template", + "description": "Use this method for automated deployment of the Qualys VM connector using an ARM Tempate.\n\n1. Click the **Deploy to Azure** button below. \n\n\t[![Deploy To Azure](https://aka.ms/deploytoazurebutton)](https://aka.ms/sentinelqualysvmazuredeploy)\n2. Select the preferred **Subscription**, **Resource Group** and **Location**. \n3. Enter the **Workspace ID**, **Workspace Key**, **API Username**, **API Password** , update the **URI**, and any additional URI **Filter Parameters** (each filter should be separated by an \"&\" symbol, no spaces.) \n> - Enter the URI that corresponds to your region. The complete list of API Server URLs can be [found here](https://www.qualys.com/docs/qualys-api-vmpc-user-guide.pdf#G4.735348) -- There is no need to add a time suffix to the URI, the Function App will dynamically append the Time Value to the URI in the proper format. \n - The default **Time Interval** is set to pull the last five (5) minutes of data. If the time interval needs to be modified, it is recommended to change the Function App Timer Trigger accordingly (in the function.json file, post deployment) to prevent overlapping data ingestion. \n> - Note: If using Azure Key Vault secrets for any of the values above, use the`@Microsoft.KeyVault(SecretUri={Security Identifier})`schema in place of the string values. Refer to [Key Vault references documentation](https://docs.microsoft.com/azure/app-service/app-service-key-vault-references) for further details. \n4. Mark the checkbox labeled **I agree to the terms and conditions stated above**. \n5. Click **Purchase** to deploy." + }, + { + "title": "Option 2 - Manual Deployment of Azure Functions", + "description": "Use the following step-by-step instructions to deploy the Quayls VM connector manually with Azure Functions." + }, + { + "title": "", + "description": "**1. Create a Function App**\n\n1. From the Azure Portal, navigate to [Function App](https://portal.azure.com/#blade/HubsExtension/BrowseResource/resourceType/Microsoft.Web%2Fsites/kind/functionapp), and select **+ Add**.\n2. In the **Basics** tab, ensure Runtime stack is set to **Powershell Core**. \n3. In the **Hosting** tab, ensure the **Consumption (Serverless)** plan type is selected.\n4. Make other preferrable configuration changes, if needed, then click **Create**." + }, + { + "title": "", + "description": "**2. Import Function App Code**\n\n1. In the newly created Function App, select **Functions** on the left pane and click **+ New Function**.\n2. Select **Timer Trigger**.\n3. Enter a unique Function **Name** and leave the default cron schedule of every 5 minutes, then click **Create**.\n5. Click on **Code + Test** on the left pane. \n6. Copy the [Function App Code](https://aka.ms/sentinelqualysvmazurefunctioncode) and paste into the Function App `run.ps1` editor.\n7. Click **Save**." + }, + { + "title": "", + "description": "**3. Configure the Function App**\n\n1. In the Function App, select the Function App Name and select **Configuration**.\n2. In the **Application settings** tab, select **+ New application setting**.\n3. Add each of the following seven (7) application settings individually, with their respective string values (case-sensitive): \n\t\tapiUsername\n\t\tapiPassword\n\t\tworkspaceID\n\t\tworkspaceKey\n\t\turi\n\t\tfilterParameters\n\t\ttimeInterval\n> - Enter the URI that corresponds to your region. The complete list of API Server URLs can be [found here](https://www.qualys.com/docs/qualys-api-vmpc-user-guide.pdf#G4.735348). The `uri` value must follow the following schema: `https:///api/2.0/fo/asset/host/vm/detection/?action=list&vm_processed_after=` -- There is no need to add a time suffix to the URI, the Function App will dynamically append the Time Value to the URI in the proper format.\n> - Add any additional filter parameters, for the `filterParameters` variable, that need to be appended to the URI. Each parameter should be seperated by an \"&\" symbol and should not include any spaces.\n> - Set the `timeInterval` (in minutes) to the value of `5` to correspond to the Timer Trigger of every `5` minutes. If the time interval needs to be modified, it is recommended to change the Function App Timer Trigger accordingly to prevent overlapping data ingestion.\n> - Note: If using Azure Key Vault, use the`@Microsoft.KeyVault(SecretUri={Security Identifier})`schema in place of the string values. Refer to [Key Vault references documentation](https://docs.microsoft.com/azure/app-service/app-service-key-vault-references) for further details.\n4. Once all application settings have been entered, click **Save**." + }, + { + "title": "", + "description": "**4. Configure the host.json**.\n\nDue to the potentially large amount of Qualys host detection data being ingested, it can cause the execution time to surpass the default Function App timeout of five (5) minutes. Increase the default timeout duration to the maximum of ten (10) minutes, under the Consumption Plan, to allow more time for the Function App to execute.\n\n1. In the Function App, select the Function App Name and select the **App Service Editor** blade.\n2. Click **Go** to open the editor, then select the **host.json** file under the **wwwroot** directory.\n3. Add the line `\"functionTimeout\": \"00:10:00\",` above the `managedDependancy` line \n4. Ensure **SAVED** appears on the top right corner of the editor, then exit the editor.\n\n> NOTE: If a longer timeout duration is required, consider upgrading to an [App Service Plan](https://docs.microsoft.com/azure/azure-functions/functions-scale#timeout)" + } + ] + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/316ec55e-7138-4d63-ab18-90c8a60fd1c8", + "name": "316ec55e-7138-4d63-ab18-90c8a60fd1c8", + "etag": "\"1a00b074-0000-0100-0000-606ef5bd0000\"", + "type": "Microsoft.SecurityInsights/dataConnectors", + "kind": "GenericUI", + "properties": { + "connectorUiConfig": { + "title": "Qualys Vulnerability Management (CCP DEMO)", + "publisher": "Qualys", + "descriptionMarkdown": "The [Qualys Vulnerability Management (VM)](https://www.qualys.com/apps/vulnerability-management/) data connector provides the capability to ingest vulnerability host detection data into Azure Sentinel through the Qualys API. The connector provides visibility into host detection data from vulerability scans. This connector provides Azure Sentinel the capability to view dashboards, create custom alerts, and improve investigation ", + "graphQueriesTableName": "QualysHostDetection_CL", + "graphQueries": [ + { + "metricName": "Total data received", + "legend": "{{graphQueriesTableName}}", + "baseQuery": "{{graphQueriesTableName}}" + } + ], + "sampleQueries": [ + { + "description": "Top 10 Vulerabilities detected", + "query": "{{graphQueriesTableName}}\n | mv-expand todynamic(Detections_s)\n | extend Vulnerability = tostring(Detections_s.Results)\n | summarize count() by Vulnerability\n | top 10 by count_" + } + ], + "dataTypes": [ + { + "name": "{{graphQueriesTableName}}", + "lastDataReceivedQuery": "{{graphQueriesTableName}}\n | summarize Time = max(TimeGenerated)\n | where isnotempty(Time)" + } + ], + "connectivityCriteria": [ + { + "type": "IsConnectedQuery", + "value": [ + "{{graphQueriesTableName}}\n | summarize LastLogReceived = max(TimeGenerated)\n | project IsConnected = LastLogReceived > ago(30d)" + ] + } + ], + "availability": { + "status": 1, + "isPreview": true + }, + "permissions": { + "resourceProvider": [ + { + "provider": "Microsoft.OperationalInsights/workspaces", + "permissionsDisplayText": "read and write permissions on the workspace are required.", + "providerDisplayName": "Workspace", + "scope": "Workspace", + "requiredPermissions": { + "write": true, + "read": true, + "delete": true + } + }, + { + "provider": "Microsoft.OperationalInsights/workspaces/sharedKeys", + "permissionsDisplayText": "read permissions to shared keys for the workspace are required. [See the documentation to learn more about workspace keys](https://docs.microsoft.com/azure/azure-monitor/platform/agent-windows#obtain-workspace-id-and-key).", + "providerDisplayName": "Keys", + "scope": "Workspace", + "requiredPermissions": { + "action": true + } + } + ], + "customs": [ + { + "name": "Microsoft.Web/sites permissions", + "description": "Read and write permissions to Azure Functions to create a Function App is required. [See the documentation to learn more about Azure Functions](https://docs.microsoft.com/azure/azure-functions/)." + }, + { + "name": "Qualys API Key", + "description": "A Qualys VM API username and password is required. [See the documentation to learn more about Qualys VM API](https://www.qualys.com/docs/qualys-api-vmpc-user-guide.pdf)." + } + ] + }, + "instructionSteps": [ + { + "title": "", + "description": ">**NOTE:** This connector uses Azure Functions to connect to Qualys VM to pull its logs into Azure Sentinel. This might result in additional data ingestion costs. Check the [Azure Functions pricing page](https://azure.microsoft.com/pricing/details/functions/) for details." + }, + { + "title": "", + "description": ">**(Optional Step)** Securely store workspace and API authorization key(s) or token(s) in Azure Key Vault. Azure Key Vault provides a secure mechanism to store and retrieve key values. [Follow these instructions](https://docs.microsoft.com/azure/app-service/app-service-key-vault-references) to use Azure Key Vault with an Azure Function App." + }, + { + "title": "", + "description": "**STEP 1 - Configuration steps for the Qualys VM API**\n\n1. Log into the Qualys Vulnerability Management console with an administrator account, select the **Users** tab and the **Users** subtab. \n2. Click on the **New** drop-down menu and select **Users..**\n3. Create a username and password for the API account. \n4. In the **User Roles** tab, ensure the account role is set to **Manager** and access is allowed to **GUI** and **API**\n4. Log out of the administrator account and log into the console with the new API credentials for validation, then log out of the API account. \n5. Log back into the console using an administrator account and modify the API accounts User Roles, removing access to **GUI**. \n6. Save all changes." + }, + { + "title": "", + "description": "**STEP 2 - Choose ONE from the following two deployment options to deploy the connector and the associated Azure Function**\n\n>**IMPORTANT:** Before deploying the Qualys VM connector, have the Workspace ID and Workspace Primary Key (can be copied from the following), as well as the Qualys VM API Authorization Key(s), readily available.", + "instructions": [ + { + "parameters": { + "fillWith": [ + "WorkspaceId" + ], + "label": "Workspace ID" + }, + "type": "CopyableLabel" + }, + { + "parameters": { + "fillWith": [ + "PrimaryKey" + ], + "label": "Primary Key" + }, + "type": "CopyableLabel" + } + ] + }, + { + "title": "Option 1 - Azure Resource Manager (ARM) Template", + "description": "Use this method for automated deployment of the Qualys VM connector using an ARM Tempate.\n\n1. Click the **Deploy to Azure** button below. \n\n\t[![Deploy To Azure](https://aka.ms/deploytoazurebutton)](https://aka.ms/sentinelqualysvmazuredeploy)\n2. Select the preferred **Subscription**, **Resource Group** and **Location**. \n3. Enter the **Workspace ID**, **Workspace Key**, **API Username**, **API Password** , update the **URI**, and any additional URI **Filter Parameters** (each filter should be separated by an \"&\" symbol, no spaces.) \n> - Enter the URI that corresponds to your region. The complete list of API Server URLs can be [found here](https://www.qualys.com/docs/qualys-api-vmpc-user-guide.pdf#G4.735348) -- There is no need to add a time suffix to the URI, the Function App will dynamically append the Time Value to the URI in the proper format. \n - The default **Time Interval** is set to pull the last five (5) minutes of data. If the time interval needs to be modified, it is recommended to change the Function App Timer Trigger accordingly (in the function.json file, post deployment) to prevent overlapping data ingestion. \n> - Note: If using Azure Key Vault secrets for any of the values above, use the`@Microsoft.KeyVault(SecretUri={Security Identifier})`schema in place of the string values. Refer to [Key Vault references documentation](https://docs.microsoft.com/azure/app-service/app-service-key-vault-references) for further details. \n4. Mark the checkbox labeled **I agree to the terms and conditions stated above**. \n5. Click **Purchase** to deploy." + }, + { + "title": "Option 2 - Manual Deployment of Azure Functions", + "description": "Use the following step-by-step instructions to deploy the Quayls VM connector manually with Azure Functions." + }, + { + "title": "", + "description": "**1. Create a Function App**\n\n1. From the Azure Portal, navigate to [Function App](https://portal.azure.com/#blade/HubsExtension/BrowseResource/resourceType/Microsoft.Web%2Fsites/kind/functionapp), and select **+ Add**.\n2. In the **Basics** tab, ensure Runtime stack is set to **Powershell Core**. \n3. In the **Hosting** tab, ensure the **Consumption (Serverless)** plan type is selected.\n4. Make other preferrable configuration changes, if needed, then click **Create**." + }, + { + "title": "", + "description": "**2. Import Function App Code**\n\n1. In the newly created Function App, select **Functions** on the left pane and click **+ New Function**.\n2. Select **Timer Trigger**.\n3. Enter a unique Function **Name** and leave the default cron schedule of every 5 minutes, then click **Create**.\n5. Click on **Code + Test** on the left pane. \n6. Copy the [Function App Code](https://aka.ms/sentinelqualysvmazurefunctioncode) and paste into the Function App `run.ps1` editor.\n7. Click **Save**." + }, + { + "title": "", + "description": "**3. Configure the Function App**\n\n1. In the Function App, select the Function App Name and select **Configuration**.\n2. In the **Application settings** tab, select **+ New application setting**.\n3. Add each of the following seven (7) application settings individually, with their respective string values (case-sensitive): \n\t\tapiUsername\n\t\tapiPassword\n\t\tworkspaceID\n\t\tworkspaceKey\n\t\turi\n\t\tfilterParameters\n\t\ttimeInterval\n> - Enter the URI that corresponds to your region. The complete list of API Server URLs can be [found here](https://www.qualys.com/docs/qualys-api-vmpc-user-guide.pdf#G4.735348). The `uri` value must follow the following schema: `https:///api/2.0/fo/asset/host/vm/detection/?action=list&vm_processed_after=` -- There is no need to add a time suffix to the URI, the Function App will dynamically append the Time Value to the URI in the proper format.\n> - Add any additional filter parameters, for the `filterParameters` variable, that need to be appended to the URI. Each parameter should be seperated by an \"&\" symbol and should not include any spaces.\n> - Set the `timeInterval` (in minutes) to the value of `5` to correspond to the Timer Trigger of every `5` minutes. If the time interval needs to be modified, it is recommended to change the Function App Timer Trigger accordingly to prevent overlapping data ingestion.\n> - Note: If using Azure Key Vault, use the`@Microsoft.KeyVault(SecretUri={Security Identifier})`schema in place of the string values. Refer to [Key Vault references documentation](https://docs.microsoft.com/azure/app-service/app-service-key-vault-references) for further details.\n4. Once all application settings have been entered, click **Save**." + }, + { + "title": "", + "description": "**4. Configure the host.json**.\n\nDue to the potentially large amount of Qualys host detection data being ingested, it can cause the execution time to surpass the default Function App timeout of five (5) minutes. Increase the default timeout duration to the maximum of ten (10) minutes, under the Consumption Plan, to allow more time for the Function App to execute.\n\n1. In the Function App, select the Function App Name and select the **App Service Editor** blade.\n2. Click **Go** to open the editor, then select the **host.json** file under the **wwwroot** directory.\n3. Add the line `\"functionTimeout\": \"00:10:00\",` above the `managedDependancy` line \n4. Ensure **SAVED** appears on the top right corner of the editor, then exit the editor.\n\n> NOTE: If a longer timeout duration is required, consider upgrading to an [App Service Plan](https://docs.microsoft.com/azure/azure-functions/functions-scale#timeout)" + } + ] + } + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/CreateOfficeDataConnetor.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/CreateOfficeDataConnetor.json new file mode 100644 index 000000000000..4f3e9abe10e1 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/CreateOfficeDataConnetor.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "dataConnectorId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "dataConnector": { + "kind": "Office365", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8", + "dataTypes": { + "sharePoint": { + "state": "Enabled" + }, + "exchange": { + "state": "Enabled" + }, + "teams": { + "state": "Enabled" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "type": "Microsoft.SecurityInsights/dataConnectors", + "kind": "Office365", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8", + "dataTypes": { + "sharePoint": { + "state": "Enabled" + }, + "exchange": { + "state": "Enabled" + }, + "teams": { + "state": "Enabled" + } + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "type": "Microsoft.SecurityInsights/dataConnectors", + "kind": "Office365", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8", + "dataTypes": { + "sharePoint": { + "state": "Enabled" + }, + "exchange": { + "state": "Enabled" + }, + "teams": { + "state": "Enabled" + } + } + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/CreateThreatIntelligenceDataConnector.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/CreateThreatIntelligenceDataConnector.json new file mode 100644 index 000000000000..e80e83a25b29 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/CreateThreatIntelligenceDataConnector.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "dataConnectorId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "dataConnector": { + "kind": "ThreatIntelligence", + "properties": { + "tenantId": "06b3ccb8-1384-4bcc-aec7-852f6d57161b", + "tipLookbackPeriod": "2020-01-01T13:00:30.123Z", + "dataTypes": { + "indicators": { + "state": "Enabled" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "type": "Microsoft.SecurityInsights/dataConnectors", + "kind": "ThreatIntelligence", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "tenantId": "06b3ccb8-1384-4bcc-aec7-852f6d57161b", + "tipLookbackPeriod": "2020-01-01T13:00:30.123Z", + "dataTypes": { + "indicators": { + "state": "Enabled" + } + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "type": "Microsoft.SecurityInsights/dataConnectors", + "kind": "ThreatIntelligence", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "tenantId": "06b3ccb8-1384-4bcc-aec7-852f6d57161b", + "tipLookbackPeriod": "2020-01-01T13:00:30.123Z", + "dataTypes": { + "indicators": { + "state": "Enabled" + } + } + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/CreateThreatIntelligenceTaxiiDataConnector.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/CreateThreatIntelligenceTaxiiDataConnector.json new file mode 100644 index 000000000000..32042fc3ad96 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/CreateThreatIntelligenceTaxiiDataConnector.json @@ -0,0 +1,82 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "dataConnectorId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "dataConnector": { + "etag": "d12423f6-a60b-4ca5-88c0-feb1a182d0f0", + "kind": "ThreatIntelligenceTaxii", + "properties": { + "tenantId": "06b3ccb8-1384-4bcc-aec7-852f6d57161b", + "taxiiServer": "https://limo.anomali.com/api/v1/taxii2/feeds", + "collectionId": "135", + "workspaceId": "dd124572-4962-4495-9bd2-9dade12314b4", + "friendlyName": "testTaxii", + "userName": "--", + "password": "--", + "taxiiLookbackPeriod": "2020-01-01T13:00:30.123Z", + "pollingFrequency": "OnceADay", + "dataTypes": { + "taxiiClient": { + "state": "Enabled" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "type": "Microsoft.SecurityInsights/dataConnectors", + "etag": "d12423f6-a60b-4ca5-88c0-feb1a182d0f0", + "kind": "ThreatIntelligenceTaxii", + "properties": { + "tenantId": "06b3ccb8-1384-4bcc-aec7-852f6d57161b", + "taxiiServer": "https://limo.anomali.com/api/v1/taxii2/feeds", + "collectionId": "135", + "workspaceId": "28e5f051-34cb-4208-9037-693e5342a871", + "friendlyName": "testTaxii", + "userName": null, + "password": null, + "taxiiLookbackPeriod": "2020-01-01T13:00:30.123Z", + "pollingFrequency": "OnceADay", + "dataTypes": { + "taxiiClient": { + "state": "Enabled" + } + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "type": "Microsoft.SecurityInsights/dataConnectors", + "etag": "d12423f6-a60b-4ca5-88c0-feb1a182d0f0", + "kind": "ThreatIntelligenceTaxii", + "properties": { + "tenantId": "06b3ccb8-1384-4bcc-aec7-852f6d57161b", + "taxiiServer": "https://limo.anomali.com/api/v1/taxii2/feeds", + "collectionId": "135", + "workspaceId": "28e5f051-34cb-4208-9037-693e5342a871", + "friendlyName": "testTaxii", + "userName": null, + "password": null, + "taxiiLookbackPeriod": "2020-01-01T13:00:30.123Z", + "pollingFrequency": "OnceADay", + "dataTypes": { + "taxiiClient": { + "state": "Enabled" + } + } + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/DeleteGenericUI.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/DeleteGenericUI.json new file mode 100644 index 000000000000..5e8dda4914a8 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/DeleteGenericUI.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "dataConnectorId": "316ec55e-7138-4d63-ab18-90c8a60fd1c8" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/DeleteOfficeDataConnetor.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/DeleteOfficeDataConnetor.json new file mode 100644 index 000000000000..499e3c818a20 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/DeleteOfficeDataConnetor.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "dataConnectorId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/GetAmazonWebServicesCloudTrailById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/GetAmazonWebServicesCloudTrailById.json new file mode 100644 index 000000000000..1fcae507b229 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/GetAmazonWebServicesCloudTrailById.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "dataConnectorId": "c345bf40-8509-4ed2-b947-50cb773aaf04" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/c345bf40-8509-4ed2-b947-50cb773aaf04", + "name": "c345bf40-8509-4ed2-b947-50cb773aaf04", + "type": "Microsoft.SecurityInsights/dataConnectors", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "kind": "AmazonWebServicesCloudTrail", + "properties": { + "awsRoleArn": "myAwsRoleArn", + "dataTypes": { + "logs": { + "state": "Enabled" + } + } + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/GetAzureActiveDirectoryById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/GetAzureActiveDirectoryById.json new file mode 100644 index 000000000000..965eabf0c898 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/GetAzureActiveDirectoryById.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "dataConnectorId": "f0cd27d2-5f03-4c06-ba31-d2dc82dcb51d" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/f0cd27d2-5f03-4c06-ba31-d2dc82dcb51d", + "name": "f0cd27d2-5f03-4c06-ba31-d2dc82dcb51d", + "type": "Microsoft.SecurityInsights/dataConnectors", + "kind": "AzureActiveDirectory", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8", + "dataTypes": { + "alerts": { + "state": "Enabled" + } + } + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/GetAzureAdvancedThreatProtectionById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/GetAzureAdvancedThreatProtectionById.json new file mode 100644 index 000000000000..3c45b6a74679 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/GetAzureAdvancedThreatProtectionById.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "dataConnectorId": "07e42cb3-e658-4e90-801c-efa0f29d3d44" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/07e42cb3-e658-4e90-801c-efa0f29d3d44", + "name": "07e42cb3-e658-4e90-801c-efa0f29d3d44", + "type": "Microsoft.SecurityInsights/dataConnectors", + "kind": "AzureAdvancedThreatProtection", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8", + "dataTypes": { + "alerts": { + "state": "Enabled" + } + } + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/GetAzureSecurityCenterById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/GetAzureSecurityCenterById.json new file mode 100644 index 000000000000..79aecf3b98a1 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/GetAzureSecurityCenterById.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "dataConnectorId": "763f9fa1-c2d3-4fa2-93e9-bccd4899aa12" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/763f9fa1-c2d3-4fa2-93e9-bccd4899aa12", + "name": "763f9fa1-c2d3-4fa2-93e9-bccd4899aa12", + "type": "Microsoft.SecurityInsights/dataConnectors", + "kind": "AzureSecurityCenter", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "subscriptionId": "c0688291-89d7-4bed-87a2-a7b1bff43f4c", + "dataTypes": { + "alerts": { + "state": "Enabled" + } + } + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/GetDataConnectors.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/GetDataConnectors.json new file mode 100644 index 000000000000..b76e74dbb782 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/GetDataConnectors.json @@ -0,0 +1,341 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/763f9fa1-c2d3-4fa2-93e9-bccd4899aa12", + "name": "763f9fa1-c2d3-4fa2-93e9-bccd4899aa12", + "type": "Microsoft.SecurityInsights/dataConnectors", + "kind": "AzureSecurityCenter", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "dataTypes": { + "alerts": { + "state": "Enabled" + } + } + } + }, + { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/c345bf40-8509-4ed2-b947-50cb773aaf04", + "name": "c345bf40-8509-4ed2-b947-50cb773aaf04", + "type": "Microsoft.SecurityInsights/dataConnectors", + "kind": "ThreatIntelligence", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8", + "dataTypes": { + "indicators": { + "state": "Enabled" + } + } + } + }, + { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/c39bb458-02a7-4b3f-b0c8-71a1d2692652", + "name": "c39bb458-02a7-4b3f-b0c8-71a1d2692652", + "type": "Microsoft.SecurityInsights/dataConnectors", + "kind": "ThreatIntelligenceTaxii", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8", + "workspaceId": "8b014a77-4695-4ef4-96bb-6623afb121a2", + "friendlyName": "My TI Taxii Connector", + "taxiiServer": "https://mytaxiiserver.com/taxiing/v2/api", + "collectionId": "e0b1f32d-1188-48f7-a7a3-de71924e4b5e", + "userName": "", + "password": "", + "pollingFrequency": "OnceAMinute", + "dataTypes": { + "taxiiClient": { + "state": "Enabled" + } + } + } + }, + { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/f0cd27d2-5f03-4c06-ba31-d2dc82dcb51d", + "name": "f0cd27d2-5f03-4c06-ba31-d2dc82dcb51d", + "type": "Microsoft.SecurityInsights/dataConnectors", + "kind": "AzureActiveDirectory", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8", + "dataTypes": { + "alerts": { + "state": "Enabled" + } + } + } + }, + { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "type": "Microsoft.SecurityInsights/dataConnectors", + "kind": "Office365", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8", + "dataTypes": { + "sharePoint": { + "state": "Enabled" + }, + "exchange": { + "state": "Enabled" + }, + "teams": { + "state": "Enabled" + } + } + } + }, + { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/b96d014d-b5c2-4a01-9aba-a8058f629d42", + "name": "b96d014d-b5c2-4a01-9aba-a8058f629d42", + "type": "Microsoft.SecurityInsights/dataConnectors", + "kind": "MicrosoftCloudAppSecurity", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8", + "dataTypes": { + "alerts": { + "state": "Enabled" + }, + "discoveryLogs": { + "state": "Enabled" + } + } + } + }, + { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/07e42cb3-e658-4e90-801c-efa0f29d3d44", + "name": "07e42cb3-e658-4e90-801c-efa0f29d3d44", + "type": "Microsoft.SecurityInsights/dataConnectors", + "kind": "AzureAdvancedThreatProtection", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8", + "dataTypes": { + "alerts": { + "state": "Enabled" + } + } + } + }, + { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/c345bf40-8509-4ed2-b947-50cb773aaf04", + "name": "c345bf40-8509-4ed2-b947-50cb773aaf04", + "type": "Microsoft.SecurityInsights/dataConnectors", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "kind": "AmazonWebServicesCloudTrail", + "properties": { + "awsRoleArn": "myAwsRoleArn", + "dataTypes": { + "logs": { + "state": "Enabled" + } + } + } + }, + { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/06b3ccb8-1384-4bcc-aec7-852f6d57161b", + "name": "06b3ccb8-1384-4bcc-aec7-852f6d57161b", + "type": "Microsoft.SecurityInsights/dataConnectors", + "kind": "MicrosoftDefenderAdvancedThreatProtection", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8", + "dataTypes": { + "alerts": { + "state": "Enabled" + } + } + } + }, + { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/3d3e955e-33eb-401d-89a7-251c81ddd660", + "name": "3d3e955e-33eb-401d-89a7-251c81ddd660", + "type": "Microsoft.SecurityInsights/dataConnectors", + "kind": "OfficeATP", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8", + "dataTypes": { + "alerts": { + "state": "Enabled" + } + } + } + }, + { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/3d3e955e-33eb-401d-89a7-251c81ddd660", + "name": "c2541efb-c9a6-47fe-9501-87d1017d1512", + "type": "Microsoft.SecurityInsights/dataConnectors", + "kind": "Dynamics365", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8", + "dataTypes": { + "dynamics365CdsActivities": { + "state": "Enabled" + } + } + } + }, + { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/316ec55e-7138-4d63-ab18-90c8a60fd1c8", + "name": "316ec55e-7138-4d63-ab18-90c8a60fd1c8", + "etag": "\"1a00b074-0000-0100-0000-606ef5bd0000\"", + "type": "Microsoft.SecurityInsights/dataConnectors", + "kind": "GenericUI", + "properties": { + "connectorUiConfig": { + "title": "Qualys Vulnerability Management (CCP DEMO)", + "publisher": "Qualys", + "descriptionMarkdown": "The [Qualys Vulnerability Management (VM)](https://www.qualys.com/apps/vulnerability-management/) data connector provides the capability to ingest vulnerability host detection data into Azure Sentinel through the Qualys API. The connector provides visibility into host detection data from vulerability scans. This connector provides Azure Sentinel the capability to view dashboards, create custom alerts, and improve investigation ", + "customImage": "The image connector content", + "graphQueriesTableName": "QualysHostDetection_CL", + "graphQueries": [ + { + "metricName": "Total data received", + "legend": "{{graphQueriesTableName}}", + "baseQuery": "{{graphQueriesTableName}}" + } + ], + "sampleQueries": [ + { + "description": "Top 10 Vulerabilities detected", + "query": "{{graphQueriesTableName}}\n | mv-expand todynamic(Detections_s)\n | extend Vulnerability = tostring(Detections_s.Results)\n | summarize count() by Vulnerability\n | top 10 by count_" + } + ], + "dataTypes": [ + { + "name": "{{graphQueriesTableName}}", + "lastDataReceivedQuery": "{{graphQueriesTableName}}\n | summarize Time = max(TimeGenerated)\n | where isnotempty(Time)" + } + ], + "connectivityCriteria": [ + { + "type": "IsConnectedQuery", + "value": [ + "{{graphQueriesTableName}}\n | summarize LastLogReceived = max(TimeGenerated)\n | project IsConnected = LastLogReceived > ago(30d)" + ] + } + ], + "availability": { + "status": 1, + "isPreview": true + }, + "permissions": { + "resourceProvider": [ + { + "provider": "Microsoft.OperationalInsights/workspaces", + "permissionsDisplayText": "read and write permissions on the workspace are required.", + "providerDisplayName": "Workspace", + "scope": "Workspace", + "requiredPermissions": { + "write": true, + "read": true, + "delete": true + } + }, + { + "provider": "Microsoft.OperationalInsights/workspaces/sharedKeys", + "permissionsDisplayText": "read permissions to shared keys for the workspace are required. [See the documentation to learn more about workspace keys](https://docs.microsoft.com/azure/azure-monitor/platform/agent-windows#obtain-workspace-id-and-key).", + "providerDisplayName": "Keys", + "scope": "Workspace", + "requiredPermissions": { + "action": true + } + } + ], + "customs": [ + { + "name": "Microsoft.Web/sites permissions", + "description": "Read and write permissions to Azure Functions to create a Function App is required. [See the documentation to learn more about Azure Functions](https://docs.microsoft.com/azure/azure-functions/)." + }, + { + "name": "Qualys API Key", + "description": "A Qualys VM API username and password is required. [See the documentation to learn more about Qualys VM API](https://www.qualys.com/docs/qualys-api-vmpc-user-guide.pdf)." + } + ] + }, + "instructionSteps": [ + { + "title": "", + "description": ">**NOTE:** This connector uses Azure Functions to connect to Qualys VM to pull its logs into Azure Sentinel. This might result in additional data ingestion costs. Check the [Azure Functions pricing page](https://azure.microsoft.com/pricing/details/functions/) for details." + }, + { + "title": "", + "description": ">**(Optional Step)** Securely store workspace and API authorization key(s) or token(s) in Azure Key Vault. Azure Key Vault provides a secure mechanism to store and retrieve key values. [Follow these instructions](https://docs.microsoft.com/azure/app-service/app-service-key-vault-references) to use Azure Key Vault with an Azure Function App." + }, + { + "title": "", + "description": "**STEP 1 - Configuration steps for the Qualys VM API**\n\n1. Log into the Qualys Vulnerability Management console with an administrator account, select the **Users** tab and the **Users** subtab. \n2. Click on the **New** drop-down menu and select **Users..**\n3. Create a username and password for the API account. \n4. In the **User Roles** tab, ensure the account role is set to **Manager** and access is allowed to **GUI** and **API**\n4. Log out of the administrator account and log into the console with the new API credentials for validation, then log out of the API account. \n5. Log back into the console using an administrator account and modify the API accounts User Roles, removing access to **GUI**. \n6. Save all changes." + }, + { + "title": "", + "description": "**STEP 2 - Choose ONE from the following two deployment options to deploy the connector and the associated Azure Function**\n\n>**IMPORTANT:** Before deploying the Qualys VM connector, have the Workspace ID and Workspace Primary Key (can be copied from the following), as well as the Qualys VM API Authorization Key(s), readily available.", + "instructions": [ + { + "parameters": { + "fillWith": [ + "WorkspaceId" + ], + "label": "Workspace ID" + }, + "type": "CopyableLabel" + }, + { + "parameters": { + "fillWith": [ + "PrimaryKey" + ], + "label": "Primary Key" + }, + "type": "CopyableLabel" + } + ] + }, + { + "title": "Option 1 - Azure Resource Manager (ARM) Template", + "description": "Use this method for automated deployment of the Qualys VM connector using an ARM Tempate.\n\n1. Click the **Deploy to Azure** button below. \n\n\t[![Deploy To Azure](https://aka.ms/deploytoazurebutton)](https://aka.ms/sentinelqualysvmazuredeploy)\n2. Select the preferred **Subscription**, **Resource Group** and **Location**. \n3. Enter the **Workspace ID**, **Workspace Key**, **API Username**, **API Password** , update the **URI**, and any additional URI **Filter Parameters** (each filter should be separated by an \"&\" symbol, no spaces.) \n> - Enter the URI that corresponds to your region. The complete list of API Server URLs can be [found here](https://www.qualys.com/docs/qualys-api-vmpc-user-guide.pdf#G4.735348) -- There is no need to add a time suffix to the URI, the Function App will dynamically append the Time Value to the URI in the proper format. \n - The default **Time Interval** is set to pull the last five (5) minutes of data. If the time interval needs to be modified, it is recommended to change the Function App Timer Trigger accordingly (in the function.json file, post deployment) to prevent overlapping data ingestion. \n> - Note: If using Azure Key Vault secrets for any of the values above, use the`@Microsoft.KeyVault(SecretUri={Security Identifier})`schema in place of the string values. Refer to [Key Vault references documentation](https://docs.microsoft.com/azure/app-service/app-service-key-vault-references) for further details. \n4. Mark the checkbox labeled **I agree to the terms and conditions stated above**. \n5. Click **Purchase** to deploy." + }, + { + "title": "Option 2 - Manual Deployment of Azure Functions", + "description": "Use the following step-by-step instructions to deploy the Quayls VM connector manually with Azure Functions." + }, + { + "title": "", + "description": "**1. Create a Function App**\n\n1. From the Azure Portal, navigate to [Function App](https://portal.azure.com/#blade/HubsExtension/BrowseResource/resourceType/Microsoft.Web%2Fsites/kind/functionapp), and select **+ Add**.\n2. In the **Basics** tab, ensure Runtime stack is set to **Powershell Core**. \n3. In the **Hosting** tab, ensure the **Consumption (Serverless)** plan type is selected.\n4. Make other preferrable configuration changes, if needed, then click **Create**." + }, + { + "title": "", + "description": "**2. Import Function App Code**\n\n1. In the newly created Function App, select **Functions** on the left pane and click **+ New Function**.\n2. Select **Timer Trigger**.\n3. Enter a unique Function **Name** and leave the default cron schedule of every 5 minutes, then click **Create**.\n5. Click on **Code + Test** on the left pane. \n6. Copy the [Function App Code](https://aka.ms/sentinelqualysvmazurefunctioncode) and paste into the Function App `run.ps1` editor.\n7. Click **Save**." + }, + { + "title": "", + "description": "**3. Configure the Function App**\n\n1. In the Function App, select the Function App Name and select **Configuration**.\n2. In the **Application settings** tab, select **+ New application setting**.\n3. Add each of the following seven (7) application settings individually, with their respective string values (case-sensitive): \n\t\tapiUsername\n\t\tapiPassword\n\t\tworkspaceID\n\t\tworkspaceKey\n\t\turi\n\t\tfilterParameters\n\t\ttimeInterval\n> - Enter the URI that corresponds to your region. The complete list of API Server URLs can be [found here](https://www.qualys.com/docs/qualys-api-vmpc-user-guide.pdf#G4.735348). The `uri` value must follow the following schema: `https:///api/2.0/fo/asset/host/vm/detection/?action=list&vm_processed_after=` -- There is no need to add a time suffix to the URI, the Function App will dynamically append the Time Value to the URI in the proper format.\n> - Add any additional filter parameters, for the `filterParameters` variable, that need to be appended to the URI. Each parameter should be seperated by an \"&\" symbol and should not include any spaces.\n> - Set the `timeInterval` (in minutes) to the value of `5` to correspond to the Timer Trigger of every `5` minutes. If the time interval needs to be modified, it is recommended to change the Function App Timer Trigger accordingly to prevent overlapping data ingestion.\n> - Note: If using Azure Key Vault, use the`@Microsoft.KeyVault(SecretUri={Security Identifier})`schema in place of the string values. Refer to [Key Vault references documentation](https://docs.microsoft.com/azure/app-service/app-service-key-vault-references) for further details.\n4. Once all application settings have been entered, click **Save**." + }, + { + "title": "", + "description": "**4. Configure the host.json**.\n\nDue to the potentially large amount of Qualys host detection data being ingested, it can cause the execution time to surpass the default Function App timeout of five (5) minutes. Increase the default timeout duration to the maximum of ten (10) minutes, under the Consumption Plan, to allow more time for the Function App to execute.\n\n1. In the Function App, select the Function App Name and select the **App Service Editor** blade.\n2. Click **Go** to open the editor, then select the **host.json** file under the **wwwroot** directory.\n3. Add the line `\"functionTimeout\": \"00:10:00\",` above the `managedDependancy` line \n4. Ensure **SAVED** appears on the top right corner of the editor, then exit the editor.\n\n> NOTE: If a longer timeout duration is required, consider upgrading to an [App Service Plan](https://docs.microsoft.com/azure/azure-functions/functions-scale#timeout)" + } + ] + } + } + } + ] + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/GetDynamics365DataConnectorById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/GetDynamics365DataConnectorById.json new file mode 100644 index 000000000000..b56379dff771 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/GetDynamics365DataConnectorById.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "dataConnectorId": "c2541efb-c9a6-47fe-9501-87d1017d1512" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/3d3e955e-33eb-401d-89a7-251c81ddd660", + "name": "c2541efb-c9a6-47fe-9501-87d1017d1512", + "type": "Microsoft.SecurityInsights/dataConnectors", + "kind": "Dynamics365", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8", + "dataTypes": { + "dynamics365CdsActivities": { + "state": "Enabled" + } + } + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/GetGenericUI.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/GetGenericUI.json new file mode 100644 index 000000000000..8fde364a96bc --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/GetGenericUI.json @@ -0,0 +1,157 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "dataConnectorId": "316ec55e-7138-4d63-ab18-90c8a60fd1c8" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/316ec55e-7138-4d63-ab18-90c8a60fd1c8", + "name": "316ec55e-7138-4d63-ab18-90c8a60fd1c8", + "etag": "\"1a00b074-0000-0100-0000-606ef5bd0000\"", + "type": "Microsoft.SecurityInsights/dataConnectors", + "kind": "GenericUI", + "properties": { + "connectorUiConfig": { + "title": "Qualys Vulnerability Management (CCP DEMO)", + "publisher": "Qualys", + "descriptionMarkdown": "The [Qualys Vulnerability Management (VM)](https://www.qualys.com/apps/vulnerability-management/) data connector provides the capability to ingest vulnerability host detection data into Azure Sentinel through the Qualys API. The connector provides visibility into host detection data from vulerability scans. This connector provides Azure Sentinel the capability to view dashboards, create custom alerts, and improve investigation ", + "customImage": "The image connector content", + "graphQueriesTableName": "QualysHostDetection_CL", + "graphQueries": [ + { + "metricName": "Total data received", + "legend": "{{graphQueriesTableName}}", + "baseQuery": "{{graphQueriesTableName}}" + } + ], + "sampleQueries": [ + { + "description": "Top 10 Vulerabilities detected", + "query": "{{graphQueriesTableName}}\n | mv-expand todynamic(Detections_s)\n | extend Vulnerability = tostring(Detections_s.Results)\n | summarize count() by Vulnerability\n | top 10 by count_" + } + ], + "dataTypes": [ + { + "name": "{{graphQueriesTableName}}", + "lastDataReceivedQuery": "{{graphQueriesTableName}}\n | summarize Time = max(TimeGenerated)\n | where isnotempty(Time)" + } + ], + "connectivityCriteria": [ + { + "type": "IsConnectedQuery", + "value": [ + "{{graphQueriesTableName}}\n | summarize LastLogReceived = max(TimeGenerated)\n | project IsConnected = LastLogReceived > ago(30d)" + ] + } + ], + "availability": { + "status": 1, + "isPreview": true + }, + "permissions": { + "resourceProvider": [ + { + "provider": "Microsoft.OperationalInsights/workspaces", + "permissionsDisplayText": "read and write permissions on the workspace are required.", + "providerDisplayName": "Workspace", + "scope": "Workspace", + "requiredPermissions": { + "write": true, + "read": true, + "delete": true + } + }, + { + "provider": "Microsoft.OperationalInsights/workspaces/sharedKeys", + "permissionsDisplayText": "read permissions to shared keys for the workspace are required. [See the documentation to learn more about workspace keys](https://docs.microsoft.com/azure/azure-monitor/platform/agent-windows#obtain-workspace-id-and-key).", + "providerDisplayName": "Keys", + "scope": "Workspace", + "requiredPermissions": { + "action": true + } + } + ], + "customs": [ + { + "name": "Microsoft.Web/sites permissions", + "description": "Read and write permissions to Azure Functions to create a Function App is required. [See the documentation to learn more about Azure Functions](https://docs.microsoft.com/azure/azure-functions/)." + }, + { + "name": "Qualys API Key", + "description": "A Qualys VM API username and password is required. [See the documentation to learn more about Qualys VM API](https://www.qualys.com/docs/qualys-api-vmpc-user-guide.pdf)." + } + ] + }, + "instructionSteps": [ + { + "title": "", + "description": ">**NOTE:** This connector uses Azure Functions to connect to Qualys VM to pull its logs into Azure Sentinel. This might result in additional data ingestion costs. Check the [Azure Functions pricing page](https://azure.microsoft.com/pricing/details/functions/) for details." + }, + { + "title": "", + "description": ">**(Optional Step)** Securely store workspace and API authorization key(s) or token(s) in Azure Key Vault. Azure Key Vault provides a secure mechanism to store and retrieve key values. [Follow these instructions](https://docs.microsoft.com/azure/app-service/app-service-key-vault-references) to use Azure Key Vault with an Azure Function App." + }, + { + "title": "", + "description": "**STEP 1 - Configuration steps for the Qualys VM API**\n\n1. Log into the Qualys Vulnerability Management console with an administrator account, select the **Users** tab and the **Users** subtab. \n2. Click on the **New** drop-down menu and select **Users..**\n3. Create a username and password for the API account. \n4. In the **User Roles** tab, ensure the account role is set to **Manager** and access is allowed to **GUI** and **API**\n4. Log out of the administrator account and log into the console with the new API credentials for validation, then log out of the API account. \n5. Log back into the console using an administrator account and modify the API accounts User Roles, removing access to **GUI**. \n6. Save all changes." + }, + { + "title": "", + "description": "**STEP 2 - Choose ONE from the following two deployment options to deploy the connector and the associated Azure Function**\n\n>**IMPORTANT:** Before deploying the Qualys VM connector, have the Workspace ID and Workspace Primary Key (can be copied from the following), as well as the Qualys VM API Authorization Key(s), readily available.", + "instructions": [ + { + "parameters": { + "fillWith": [ + "WorkspaceId" + ], + "label": "Workspace ID" + }, + "type": "CopyableLabel" + }, + { + "parameters": { + "fillWith": [ + "PrimaryKey" + ], + "label": "Primary Key" + }, + "type": "CopyableLabel" + } + ] + }, + { + "title": "Option 1 - Azure Resource Manager (ARM) Template", + "description": "Use this method for automated deployment of the Qualys VM connector using an ARM Tempate.\n\n1. Click the **Deploy to Azure** button below. \n\n\t[![Deploy To Azure](https://aka.ms/deploytoazurebutton)](https://aka.ms/sentinelqualysvmazuredeploy)\n2. Select the preferred **Subscription**, **Resource Group** and **Location**. \n3. Enter the **Workspace ID**, **Workspace Key**, **API Username**, **API Password** , update the **URI**, and any additional URI **Filter Parameters** (each filter should be separated by an \"&\" symbol, no spaces.) \n> - Enter the URI that corresponds to your region. The complete list of API Server URLs can be [found here](https://www.qualys.com/docs/qualys-api-vmpc-user-guide.pdf#G4.735348) -- There is no need to add a time suffix to the URI, the Function App will dynamically append the Time Value to the URI in the proper format. \n - The default **Time Interval** is set to pull the last five (5) minutes of data. If the time interval needs to be modified, it is recommended to change the Function App Timer Trigger accordingly (in the function.json file, post deployment) to prevent overlapping data ingestion. \n> - Note: If using Azure Key Vault secrets for any of the values above, use the`@Microsoft.KeyVault(SecretUri={Security Identifier})`schema in place of the string values. Refer to [Key Vault references documentation](https://docs.microsoft.com/azure/app-service/app-service-key-vault-references) for further details. \n4. Mark the checkbox labeled **I agree to the terms and conditions stated above**. \n5. Click **Purchase** to deploy." + }, + { + "title": "Option 2 - Manual Deployment of Azure Functions", + "description": "Use the following step-by-step instructions to deploy the Quayls VM connector manually with Azure Functions." + }, + { + "title": "", + "description": "**1. Create a Function App**\n\n1. From the Azure Portal, navigate to [Function App](https://portal.azure.com/#blade/HubsExtension/BrowseResource/resourceType/Microsoft.Web%2Fsites/kind/functionapp), and select **+ Add**.\n2. In the **Basics** tab, ensure Runtime stack is set to **Powershell Core**. \n3. In the **Hosting** tab, ensure the **Consumption (Serverless)** plan type is selected.\n4. Make other preferrable configuration changes, if needed, then click **Create**." + }, + { + "title": "", + "description": "**2. Import Function App Code**\n\n1. In the newly created Function App, select **Functions** on the left pane and click **+ New Function**.\n2. Select **Timer Trigger**.\n3. Enter a unique Function **Name** and leave the default cron schedule of every 5 minutes, then click **Create**.\n5. Click on **Code + Test** on the left pane. \n6. Copy the [Function App Code](https://aka.ms/sentinelqualysvmazurefunctioncode) and paste into the Function App `run.ps1` editor.\n7. Click **Save**." + }, + { + "title": "", + "description": "**3. Configure the Function App**\n\n1. In the Function App, select the Function App Name and select **Configuration**.\n2. In the **Application settings** tab, select **+ New application setting**.\n3. Add each of the following seven (7) application settings individually, with their respective string values (case-sensitive): \n\t\tapiUsername\n\t\tapiPassword\n\t\tworkspaceID\n\t\tworkspaceKey\n\t\turi\n\t\tfilterParameters\n\t\ttimeInterval\n> - Enter the URI that corresponds to your region. The complete list of API Server URLs can be [found here](https://www.qualys.com/docs/qualys-api-vmpc-user-guide.pdf#G4.735348). The `uri` value must follow the following schema: `https:///api/2.0/fo/asset/host/vm/detection/?action=list&vm_processed_after=` -- There is no need to add a time suffix to the URI, the Function App will dynamically append the Time Value to the URI in the proper format.\n> - Add any additional filter parameters, for the `filterParameters` variable, that need to be appended to the URI. Each parameter should be seperated by an \"&\" symbol and should not include any spaces.\n> - Set the `timeInterval` (in minutes) to the value of `5` to correspond to the Timer Trigger of every `5` minutes. If the time interval needs to be modified, it is recommended to change the Function App Timer Trigger accordingly to prevent overlapping data ingestion.\n> - Note: If using Azure Key Vault, use the`@Microsoft.KeyVault(SecretUri={Security Identifier})`schema in place of the string values. Refer to [Key Vault references documentation](https://docs.microsoft.com/azure/app-service/app-service-key-vault-references) for further details.\n4. Once all application settings have been entered, click **Save**." + }, + { + "title": "", + "description": "**4. Configure the host.json**.\n\nDue to the potentially large amount of Qualys host detection data being ingested, it can cause the execution time to surpass the default Function App timeout of five (5) minutes. Increase the default timeout duration to the maximum of ten (10) minutes, under the Consumption Plan, to allow more time for the Function App to execute.\n\n1. In the Function App, select the Function App Name and select the **App Service Editor** blade.\n2. Click **Go** to open the editor, then select the **host.json** file under the **wwwroot** directory.\n3. Add the line `\"functionTimeout\": \"00:10:00\",` above the `managedDependancy` line \n4. Ensure **SAVED** appears on the top right corner of the editor, then exit the editor.\n\n> NOTE: If a longer timeout duration is required, consider upgrading to an [App Service Plan](https://docs.microsoft.com/azure/azure-functions/functions-scale#timeout)" + } + ] + } + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/GetMicrosoftCloudAppSecurityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/GetMicrosoftCloudAppSecurityById.json new file mode 100644 index 000000000000..1ceb73dd3ca2 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/GetMicrosoftCloudAppSecurityById.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "dataConnectorId": "b96d014d-b5c2-4a01-9aba-a8058f629d42" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/b96d014d-b5c2-4a01-9aba-a8058f629d42", + "name": "b96d014d-b5c2-4a01-9aba-a8058f629d42", + "type": "Microsoft.SecurityInsights/dataConnectors", + "kind": "MicrosoftCloudAppSecurity", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8", + "dataTypes": { + "alerts": { + "state": "Enabled" + }, + "discoveryLogs": { + "state": "Enabled" + } + } + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/GetMicrosoftDefenderAdvancedThreatProtectionById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/GetMicrosoftDefenderAdvancedThreatProtectionById.json new file mode 100644 index 000000000000..b057f538445d --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/GetMicrosoftDefenderAdvancedThreatProtectionById.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "dataConnectorId": "06b3ccb8-1384-4bcc-aec7-852f6d57161b" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/06b3ccb8-1384-4bcc-aec7-852f6d57161b", + "name": "06b3ccb8-1384-4bcc-aec7-852f6d57161b", + "type": "Microsoft.SecurityInsights/dataConnectors", + "kind": "MicrosoftDefenderAdvancedThreatProtection", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8", + "dataTypes": { + "alerts": { + "state": "Enabled" + } + } + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/GetMicrosoftThreatIntelligenceById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/GetMicrosoftThreatIntelligenceById.json new file mode 100644 index 000000000000..8ef8b6f84354 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/GetMicrosoftThreatIntelligenceById.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "dataConnectorId": "c345bf40-8509-4ed2-b947-50cb773aaf04" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/c345bf40-8509-4ed2-b947-50cb773aaf04", + "name": "c345bf40-8509-4ed2-b947-50cb773aaf04", + "type": "Microsoft.SecurityInsights/dataConnectors", + "kind": "MicrosoftThreatIntelligence", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8", + "dataTypes": { + "bingSafetyPhishingURL": { + "state": "Enabled", + "lookbackPeriod": "example ??" + }, + "microsoftEmergingThreatFeed": { + "state": "Enabled", + "lookbackPeriod": "example" + } + } + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/GetMicrosoftThreatProtectionById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/GetMicrosoftThreatProtectionById.json new file mode 100644 index 000000000000..5b5bf817b8a0 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/GetMicrosoftThreatProtectionById.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "dataConnectorId": "c345bf40-8509-4ed2-b947-50cb773aaf04" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/c345bf40-8509-4ed2-b947-50cb773aaf04", + "name": "c345bf40-8509-4ed2-b947-50cb773aaf04", + "type": "Microsoft.SecurityInsights/dataConnectors", + "kind": "MicrosoftThreatProtection", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8", + "dataTypes": { + "incidents": { + "state": "Enabled" + } + } + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/GetOffice365AdvancedThreatProtectionById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/GetOffice365AdvancedThreatProtectionById.json new file mode 100644 index 000000000000..5688997cb7c7 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/GetOffice365AdvancedThreatProtectionById.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "dataConnectorId": "3d3e955e-33eb-401d-89a7-251c81ddd660" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/3d3e955e-33eb-401d-89a7-251c81ddd660", + "name": "3d3e955e-33eb-401d-89a7-251c81ddd660", + "type": "Microsoft.SecurityInsights/dataConnectors", + "kind": "OfficeATP", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8", + "dataTypes": { + "alerts": { + "state": "Enabled" + } + } + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/GetOfficeDataConnetorById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/GetOfficeDataConnetorById.json new file mode 100644 index 000000000000..25bfdbd312e8 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/GetOfficeDataConnetorById.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "dataConnectorId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "type": "Microsoft.SecurityInsights/dataConnectors", + "kind": "Office365", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8", + "dataTypes": { + "sharePoint": { + "state": "Enabled" + }, + "exchange": { + "state": "Enabled" + }, + "teams": { + "state": "Enabled" + } + } + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/GetThreatIntelligenceById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/GetThreatIntelligenceById.json new file mode 100644 index 000000000000..9671cc9a2992 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/GetThreatIntelligenceById.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "dataConnectorId": "c345bf40-8509-4ed2-b947-50cb773aaf04" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/c345bf40-8509-4ed2-b947-50cb773aaf04", + "name": "c345bf40-8509-4ed2-b947-50cb773aaf04", + "type": "Microsoft.SecurityInsights/dataConnectors", + "kind": "ThreatIntelligence", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8", + "tipLookbackPeriod": "2020-01-01T13:00:30.123Z", + "dataTypes": { + "indicators": { + "state": "Enabled" + } + } + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/GetThreatIntelligenceTaxiiById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/GetThreatIntelligenceTaxiiById.json new file mode 100644 index 000000000000..f3a8ae0f2599 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/dataConnectors/GetThreatIntelligenceTaxiiById.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "dataConnectorId": "c39bb458-02a7-4b3f-b0c8-71a1d2692652" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/c39bb458-02a7-4b3f-b0c8-71a1d2692652", + "name": "c39bb458-02a7-4b3f-b0c8-71a1d2692652", + "type": "Microsoft.SecurityInsights/dataConnectors", + "kind": "ThreatIntelligenceTaxii", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8", + "workspaceId": "8b014a77-4695-4ef4-96bb-6623afb121a2", + "friendlyName": "My TI Taxii Connector", + "taxiiServer": "https://mytaxiiserver.com/taxiing/v2/api", + "collectionId": "e0b1f32d-1188-48f7-a7a3-de71924e4b5e", + "userName": "", + "password": "", + "taxiiLookbackPeriod": "2020-01-01T13:00:30.123Z", + "pollingFrequency": "OnceADay", + "dataTypes": { + "taxiiClient": { + "state": "Enabled" + } + } + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/entityQueries/CreateEntityQueryActivity.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/entityQueries/CreateEntityQueryActivity.json new file mode 100644 index 000000000000..e4cf9a4e72ad --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/entityQueries/CreateEntityQueryActivity.json @@ -0,0 +1,134 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "entityQueryId": "07da3cc8-c8ad-4710-a44e-334cdcb7882b", + "entityQuery": { + "kind": "Activity", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "title": "An account was deleted on this host", + "content": "On '{{Computer}}' the account '{{TargetAccount}}' was deleted by '{{AddedBy}}'", + "description": "Account deleted on host", + "queryDefinitions": { + "query": "let GetAccountActions = (v_Host_Name:string, v_Host_NTDomain:string, v_Host_DnsDomain:string, v_Host_AzureID:string, v_Host_OMSAgentID:string){\nSecurityEvent\n| where EventID in (4725, 4726, 4767, 4720, 4722, 4723, 4724)\n// parsing for Host to handle variety of conventions coming from data\n| extend Host_HostName = case(\nComputer has '@', tostring(split(Computer, '@')[0]),\nComputer has '\\\\', tostring(split(Computer, '\\\\')[1]),\nComputer has '.', tostring(split(Computer, '.')[0]),\nComputer\n)\n| extend Host_NTDomain = case(\nComputer has '\\\\', tostring(split(Computer, '\\\\')[0]), \nComputer has '.', tostring(split(Computer, '.')[-2]), \nComputer\n)\n| extend Host_DnsDomain = case(\nComputer has '\\\\', tostring(split(Computer, '\\\\')[0]), \nComputer has '.', strcat_array(array_slice(split(Computer,'.'),-2,-1),'.'), \nComputer\n)\n| where (Host_HostName =~ v_Host_Name and Host_NTDomain =~ v_Host_NTDomain) \nor (Host_HostName =~ v_Host_Name and Host_DnsDomain =~ v_Host_DnsDomain) \nor v_Host_AzureID =~ _ResourceId \nor v_Host_OMSAgentID == SourceComputerId\n| project TimeGenerated, EventID, Activity, Computer, TargetAccount, TargetUserName, TargetDomainName, TargetSid, SubjectUserName, SubjectUserSid, _ResourceId, SourceComputerId\n| extend AddedBy = SubjectUserName\n// Future support for Activities\n| extend timestamp = TimeGenerated, HostCustomEntity = Computer, AccountCustomEntity = TargetAccount\n};\nGetAccountActions('{{Host_HostName}}', '{{Host_NTDomain}}', '{{Host_DnsDomain}}', '{{Host_AzureID}}', '{{Host_OMSAgentID}}')\n \n| where EventID == 4726 " + }, + "inputEntityType": "Host", + "requiredInputFieldsSets": [ + [ + "Host_HostName", + "Host_NTDomain" + ], + [ + "Host_HostName", + "Host_DnsDomain" + ], + [ + "Host_AzureID" + ], + [ + "Host_OMSAgentID" + ] + ], + "entitiesFilter": { + "Host_OsFamily": [ + "Windows" + ] + }, + "enabled": true, + "templateName": null + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entityQueries/07da3cc8-c8ad-4710-a44e-334cdcb7882b", + "name": "07da3cc8-c8ad-4710-a44e-334cdcb7882b", + "type": "Microsoft.SecurityInsights/entityQueries", + "kind": "Activity", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "title": "An account was deleted on this host", + "content": "On '{{Computer}}' the account '{{TargetAccount}}' was deleted by '{{AddedBy}}'", + "description": "Account deleted on host", + "queryDefinitions": { + "query": "let GetAccountActions = (v_Host_Name:string, v_Host_NTDomain:string, v_Host_DnsDomain:string, v_Host_AzureID:string, v_Host_OMSAgentID:string){\nSecurityEvent\n| where EventID in (4725, 4726, 4767, 4720, 4722, 4723, 4724)\n// parsing for Host to handle variety of conventions coming from data\n| extend Host_HostName = case(\nComputer has '@', tostring(split(Computer, '@')[0]),\nComputer has '\\\\', tostring(split(Computer, '\\\\')[1]),\nComputer has '.', tostring(split(Computer, '.')[0]),\nComputer\n)\n| extend Host_NTDomain = case(\nComputer has '\\\\', tostring(split(Computer, '\\\\')[0]), \nComputer has '.', tostring(split(Computer, '.')[-2]), \nComputer\n)\n| extend Host_DnsDomain = case(\nComputer has '\\\\', tostring(split(Computer, '\\\\')[0]), \nComputer has '.', strcat_array(array_slice(split(Computer,'.'),-2,-1),'.'), \nComputer\n)\n| where (Host_HostName =~ v_Host_Name and Host_NTDomain =~ v_Host_NTDomain) \nor (Host_HostName =~ v_Host_Name and Host_DnsDomain =~ v_Host_DnsDomain) \nor v_Host_AzureID =~ _ResourceId \nor v_Host_OMSAgentID == SourceComputerId\n| project TimeGenerated, EventID, Activity, Computer, TargetAccount, TargetUserName, TargetDomainName, TargetSid, SubjectUserName, SubjectUserSid, _ResourceId, SourceComputerId\n| extend AddedBy = SubjectUserName\n// Future support for Activities\n| extend timestamp = TimeGenerated, HostCustomEntity = Computer, AccountCustomEntity = TargetAccount\n};\nGetAccountActions('{{Host_HostName}}', '{{Host_NTDomain}}', '{{Host_DnsDomain}}', '{{Host_AzureID}}', '{{Host_OMSAgentID}}')\n \n| where EventID == 4726 " + }, + "inputEntityType": "Host", + "requiredInputFieldsSets": [ + [ + "Host_HostName", + "Host_NTDomain" + ], + [ + "Host_HostName", + "Host_DnsDomain" + ], + [ + "Host_AzureID" + ], + [ + "Host_OMSAgentID" + ] + ], + "entitiesFilter": { + "Host_OsFamily": [ + "Windows" + ] + }, + "enabled": true, + "templateName": null, + "createdTimeUtc": "2019-01-01T13:15:30Z", + "lastModifiedTimeUtc": "2019-01-01T13:15:30Z" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entityQueries/07da3cc8-c8ad-4710-a44e-334cdcb7882b", + "name": "07da3cc8-c8ad-4710-a44e-334cdcb7882b", + "type": "Microsoft.SecurityInsights/entityQueries", + "kind": "Activity", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "title": "An account was deleted on this host", + "content": "On '{{Computer}}' the account '{{TargetAccount}}' was deleted by '{{AddedBy}}'", + "description": "Account deleted on host", + "queryDefinitions": { + "query": "let GetAccountActions = (v_Host_Name:string, v_Host_NTDomain:string, v_Host_DnsDomain:string, v_Host_AzureID:string, v_Host_OMSAgentID:string){\nSecurityEvent\n| where EventID in (4725, 4726, 4767, 4720, 4722, 4723, 4724)\n// parsing for Host to handle variety of conventions coming from data\n| extend Host_HostName = case(\nComputer has '@', tostring(split(Computer, '@')[0]),\nComputer has '\\\\', tostring(split(Computer, '\\\\')[1]),\nComputer has '.', tostring(split(Computer, '.')[0]),\nComputer\n)\n| extend Host_NTDomain = case(\nComputer has '\\\\', tostring(split(Computer, '\\\\')[0]), \nComputer has '.', tostring(split(Computer, '.')[-2]), \nComputer\n)\n| extend Host_DnsDomain = case(\nComputer has '\\\\', tostring(split(Computer, '\\\\')[0]), \nComputer has '.', strcat_array(array_slice(split(Computer,'.'),-2,-1),'.'), \nComputer\n)\n| where (Host_HostName =~ v_Host_Name and Host_NTDomain =~ v_Host_NTDomain) \nor (Host_HostName =~ v_Host_Name and Host_DnsDomain =~ v_Host_DnsDomain) \nor v_Host_AzureID =~ _ResourceId \nor v_Host_OMSAgentID == SourceComputerId\n| project TimeGenerated, EventID, Activity, Computer, TargetAccount, TargetUserName, TargetDomainName, TargetSid, SubjectUserName, SubjectUserSid, _ResourceId, SourceComputerId\n| extend AddedBy = SubjectUserName\n// Future support for Activities\n| extend timestamp = TimeGenerated, HostCustomEntity = Computer, AccountCustomEntity = TargetAccount\n};\nGetAccountActions('{{Host_HostName}}', '{{Host_NTDomain}}', '{{Host_DnsDomain}}', '{{Host_AzureID}}', '{{Host_OMSAgentID}}')\n \n| where EventID == 4726 " + }, + "inputEntityType": "Host", + "requiredInputFieldsSets": [ + [ + "Host_HostName", + "Host_NTDomain" + ], + [ + "Host_HostName", + "Host_DnsDomain" + ], + [ + "Host_AzureID" + ], + [ + "Host_OMSAgentID" + ] + ], + "entitiesFilter": { + "Host_OsFamily": [ + "Windows" + ] + }, + "enabled": true, + "templateName": null, + "createdTimeUtc": "2019-01-01T13:15:30Z", + "lastModifiedTimeUtc": "2019-01-01T13:15:30Z" + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/entityQueries/DeleteEntityQuery.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/entityQueries/DeleteEntityQuery.json new file mode 100644 index 000000000000..0a7f73c32995 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/entityQueries/DeleteEntityQuery.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "entityQueryId": "07da3cc8-c8ad-4710-a44e-334cdcb7882b" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/entityQueries/GetActivityEntityQueryById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/entityQueries/GetActivityEntityQueryById.json new file mode 100644 index 000000000000..e1c3cee8fcfb --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/entityQueries/GetActivityEntityQueryById.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "entityQueryId": "07da3cc8-c8ad-4710-a44e-334cdcb7882b" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entityQueries/07da3cc8-c8ad-4710-a44e-334cdcb7882b", + "name": "07da3cc8-c8ad-4710-a44e-334cdcb7882b", + "type": "Microsoft.SecurityInsights/entityQueries", + "etag": null, + "kind": "Activity", + "properties": { + "title": "An account was deleted on this host", + "content": "On '{{Computer}}' the account '{{TargetAccount}}' was deleted by '{{AddedBy}}'", + "description": "Account deleted on host", + "queryDefinitions": { + "query": "let GetAccountActions = (v_Host_Name:string, v_Host_NTDomain:string, v_Host_DnsDomain:string, v_Host_AzureID:string, v_Host_OMSAgentID:string){\nSecurityEvent\n| where EventID in (4725, 4726, 4767, 4720, 4722, 4723, 4724)\n// parsing for Host to handle variety of conventions coming from data\n| extend Host_HostName = case(\nComputer has '@', tostring(split(Computer, '@')[0]),\nComputer has '\\\\', tostring(split(Computer, '\\\\')[1]),\nComputer has '.', tostring(split(Computer, '.')[0]),\nComputer\n)\n| extend Host_NTDomain = case(\nComputer has '\\\\', tostring(split(Computer, '\\\\')[0]), \nComputer has '.', tostring(split(Computer, '.')[-2]), \nComputer\n)\n| extend Host_DnsDomain = case(\nComputer has '\\\\', tostring(split(Computer, '\\\\')[0]), \nComputer has '.', strcat_array(array_slice(split(Computer,'.'),-2,-1),'.'), \nComputer\n)\n| where (Host_HostName =~ v_Host_Name and Host_NTDomain =~ v_Host_NTDomain) \nor (Host_HostName =~ v_Host_Name and Host_DnsDomain =~ v_Host_DnsDomain) \nor v_Host_AzureID =~ _ResourceId \nor v_Host_OMSAgentID == SourceComputerId\n| project TimeGenerated, EventID, Activity, Computer, TargetAccount, TargetUserName, TargetDomainName, TargetSid, SubjectUserName, SubjectUserSid, _ResourceId, SourceComputerId\n| extend AddedBy = SubjectUserName\n// Future support for Activities\n| extend timestamp = TimeGenerated, HostCustomEntity = Computer, AccountCustomEntity = TargetAccount\n};\nGetAccountActions('{{Host_HostName}}', '{{Host_NTDomain}}', '{{Host_DnsDomain}}', '{{Host_AzureID}}', '{{Host_OMSAgentID}}')\n \n| where EventID == 4726 " + }, + "inputEntityType": "Host", + "requiredInputFieldsSets": [ + [ + "Host_HostName", + "Host_NTDomain" + ], + [ + "Host_HostName", + "Host_DnsDomain" + ], + [ + "Host_AzureID" + ], + [ + "Host_OMSAgentID" + ] + ], + "entitiesFilter": { + "Host_OsFamily": [ + "Windows" + ] + }, + "enabled": true, + "templateName": null, + "createdTimeUtc": "2019-01-01T13:15:30Z", + "lastModifiedTimeUtc": "2019-01-01T13:15:30Z" + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/entityQueries/GetEntityQueries.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/entityQueries/GetEntityQueries.json new file mode 100644 index 000000000000..0a2e23767f81 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/entityQueries/GetEntityQueries.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "kind": "Expansion", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entityQueries/37ca3555-c135-4a73-a65e-9c1d00323f5d", + "name": "37ca3555-c135-4a73-a65e-9c1d00323f5d", + "type": "Microsoft.SecurityInsights/entityQueries", + "etag": null, + "kind": "Expansion", + "properties": { + "queryTemplate": "let AccountActivity_byIP = (v_IP_Address:string){\r\n AzureActivity\r\n | where Caller != '' and CallerIpAddress == v_IP_Address\r\n | summarize Account_Aux_StartTime = min(TimeGenerated), Account_Aux_EndTime = max(TimeGenerated), Count = count() by Caller, TenantId\r\n | top 10 by Count asc nulls last \r\n | extend UPN = iff(Caller contains '@', Caller, ''), Account_AadUserId = iff(Caller !contains '@', Caller,'')\r\n | extend Account_Name = split(UPN,'@')[0] , Account_UPNSuffix = split(UPN,'@')[1]\r\n | project Account_Name, Account_UPNSuffix, Account_AadUserId, Account_AadTenantId=TenantId, Account_Aux_StartTime , Account_Aux_EndTime};\r\n AccountActivity_byIP('

    ')", + "inputFields": [ + "address" + ], + "outputEntityTypes": [ + "Account" + ], + "dataSources": [ + "AzureActivity" + ], + "inputEntityType": "IP", + "displayName": "Least active accounts on Azure from this IP" + } + }, + { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entityQueries/97a1d515-abf2-4231-9a35-985f9de0bb91", + "name": "97a1d515-abf2-4231-9a35-985f9de0bb91", + "type": "Microsoft.SecurityInsights/entityQueries", + "etag": null, + "kind": "Expansion", + "properties": { + "queryTemplate": "let AccountActivity_byIP = (v_IP_Address:string){\r\n AzureActivity\r\n | where Caller != '' and CallerIpAddress == v_IP_Address\r\n | summarize Account_Aux_StartTime = min(TimeGenerated), Account_Aux_EndTime = max(TimeGenerated), Count = count() by Caller, TenantId\r\n | top 10 by Count desc nulls last \r\n | extend UPN = iff(Caller contains '@', Caller, ''), Account_AadUserId = iff(Caller !contains '@', Caller,'')\r\n | extend Account_Name = split(UPN,'@')[0] , Account_UPNSuffix = split(UPN,'@')[1]\r\n | project Account_Name, Account_UPNSuffix, Account_AadUserId, Account_AadTenantId=TenantId, Account_Aux_StartTime , Account_Aux_EndTime};\r\n AccountActivity_byIP('
    ')", + "inputFields": [ + "address" + ], + "outputEntityTypes": [ + "Account" + ], + "dataSources": [ + "AzureActivity" + ], + "inputEntityType": "IP", + "displayName": "Most active accounts on Azure from this IP" + } + } + ] + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/entityQueries/GetExpansionEntityQueryById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/entityQueries/GetExpansionEntityQueryById.json new file mode 100644 index 000000000000..f33d16ea2e1b --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/entityQueries/GetExpansionEntityQueryById.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "entityQueryId": "07da3cc8-c8ad-4710-a44e-334cdcb7882b" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entityQueries/07da3cc8-c8ad-4710-a44e-334cdcb7882b", + "name": "07da3cc8-c8ad-4710-a44e-334cdcb7882b", + "type": "Microsoft.SecurityInsights/entityQueries", + "etag": null, + "kind": "Expansion", + "properties": { + "queryTemplate": "let GetParentProcessesOnHost = (v_Host_HostName:string){\r\n SecurityEvent \r\n | where EventID == 4688 \r\n | where isnotempty(ParentProcessName)\r\n | where NewProcessName !contains ':\\\\Windows\\\\System32\\\\conhost.exe' and ParentProcessName !contains ':\\\\Windows\\\\System32\\\\conhost.exe'\r\n and NewProcessName !contains ':\\\\Windows\\\\Microsoft.NET\\\\Framework64\\\\v2.0.50727\\\\csc.exe' and ParentProcessName !contains ':\\\\Windows\\\\Microsoft.NET\\\\Framework64\\\\v2.0.50727\\\\csc.exe'\r\n and NewProcessName !contains ':\\\\Windows\\\\Microsoft.NET\\\\Framework64\\\\v2.0.50727\\\\cvtres.exe' and ParentProcessName !contains ':\\\\Windows\\\\Microsoft.NET\\\\Framework64\\\\v2.0.50727\\\\cvtres.exe'\r\n and NewProcessName!contains ':\\\\Program Files\\\\Microsoft Monitoring Agent\\\\Agent\\\\MonitoringHost.exe' and ParentProcessName !contains ':\\\\Program Files\\\\Microsoft Monitoring Agent\\\\Agent\\\\MonitoringHost.exe'\r\n and ParentProcessName !contains ':\\\\Windows\\\\CCM\\\\CcmExec.exe'\r\n | where(ParentProcessName !contains ':\\\\Windows\\\\System32\\\\svchost.exe' and (NewProcessName !contains ':\\\\Windows\\\\System32\\\\wbem\\\\WmiPrvSE.exe' or NewProcessName !contains ':\\\\Windows\\\\SysWOW64\\\\wbem\\\\WmiPrvSE.exe'))\r\n | where(ParentProcessName !contains ':\\\\Windows\\\\System32\\\\services.exe' and NewProcessName !contains ':\\\\Windows\\\\servicing\\\\TrustedInstaller.exe')\r\n | where toupper(Computer) contains v_Host_HostName or toupper(WorkstationName) contains v_Host_HostName\r\n | summarize min(TimeGenerated), max(TimeGenerated) by Account, Computer, ParentProcessName, NewProcessName, CommandLine, ProcessId\r\n | project min_TimeGenerated, max_TimeGenerated, Account, Computer, ParentProcessName, NewProcessName, CommandLine, ProcessId\r\n | project-rename Process_Host_UnstructuredName=Computer, Process_Account_UnstructuredName=Account, Process_CommandLine=CommandLine, Process_ProcessId=ProcessId, Process_ImageFile_FullPath=NewProcessName, Process_ParentProcess_ImageFile_FullPath=ParentProcessName\r\n | top 10 by min_TimeGenerated asc};\r\n GetParentProcessesOnHost(toupper(''))", + "inputFields": [ + "hostName" + ], + "outputEntityTypes": [ + "Process" + ], + "dataSources": [ + "SecurityEvent" + ], + "inputEntityType": "Host", + "displayName": "Parent processes running on host" + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/metadata/DeleteMetadata.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/metadata/DeleteMetadata.json new file mode 100644 index 000000000000..6aa141539b2b --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/metadata/DeleteMetadata.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "metadataName": "metadataName" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/metadata/GetAllMetadata.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/metadata/GetAllMetadata.json new file mode 100644 index 000000000000..6007e6681da4 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/metadata/GetAllMetadata.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/2e1dc338-d04d-4443-b721-037eff4fdcac/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/metadata/metadataName1", + "name": "metadataName1", + "type": "Microsoft.SecurityInsights/metadata", + "properties": { + "contentId": "c00ee137-7475-47c8-9cce-ec6f0f1bedd0", + "version": "1.0.0.0", + "kind": "analyticRule", + "parentId": "/subscriptions/2e1dc338-d04d-4443-b721-037eff4fdcac/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/ruleName", + "source": { + "kind": "solution", + "name": "Contoso Solution 1.0", + "sourceId": "b688a130-76f4-4a07-bf57-762222a3cadf" + } + } + }, + { + "id": "/subscriptions/2e1dc338-d04d-4443-b721-037eff4fdcac/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/metadata/metadataName2", + "name": "metadataName2", + "type": "Microsoft.SecurityInsights/metadata", + "properties": { + "contentId": "f5160682-0e10-4e23-8fcf-df3df49c5522", + "version": "1.0.0.0", + "kind": "analyticRule", + "parentId": "/subscriptions/2e1dc338-d04d-4443-b721-037eff4fdcac/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/ruleName2", + "source": { + "kind": "solution", + "name": "Contoso Solution 1.0", + "sourceId": "b688a130-76f4-4a07-bf57-762222a3cadf" + } + } + }, + { + "id": "/subscriptions/2e1dc338-d04d-4443-b721-037eff4fdcac/resourceGroups/myRg/providers/Microsoft.Insights/workbooks/myWorkspace/providers/Microsoft.SecurityInsights/metadata/metadataName3", + "name": "metadataName3", + "type": "Microsoft.SecurityInsights/metadata", + "properties": { + "contentId": "f593501d-ec01-4057-8146-a1de35c461ef", + "version": "1.0.0.0", + "kind": "workbook", + "parentId": "/subscriptions/2e1dc338-d04d-4443-b721-037eff4fdcac/resourceGroups/myRg/providers/Microsoft.Insights/workbooks/workbookName", + "source": { + "kind": "solution", + "name": "Contoso Solution 1.0", + "sourceId": "b688a130-76f4-4a07-bf57-762222a3cadf" + } + } + } + ] + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/metadata/GetAllMetadataOData.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/metadata/GetAllMetadataOData.json new file mode 100644 index 000000000000..eead11bcca11 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/metadata/GetAllMetadataOData.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "ODataFilter": "properties/kind eq 'analyticRule'", + "ODataOrderBy": "properties/parentId desc", + "ODataSkip": "2", + "ODataTop": "2" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/2e1dc338-d04d-4443-b721-037eff4fdcac/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/metadata/metadataName1", + "name": "metadataName1", + "type": "Microsoft.SecurityInsights/metadata", + "properties": { + "contentId": "c00ee137-7475-47c8-9cce-ec6f0f1bedd0", + "version": "1.0.0.0", + "kind": "analyticRule", + "parentId": "/subscriptions/2e1dc338-d04d-4443-b721-037eff4fdcac/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/ruleName1", + "source": { + "kind": "solution", + "name": "Contoso Solution 1.0", + "sourceId": "b688a130-76f4-4a07-bf57-762222a3cadf" + } + } + }, + { + "id": "/subscriptions/2e1dc338-d04d-4443-b721-037eff4fdcac/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/metadata/metadataName2", + "name": "metadataName2", + "type": "Microsoft.SecurityInsights/metadata", + "properties": { + "contentId": "f5160682-0e10-4e23-8fcf-df3df49c5522", + "version": "1.0.0.0", + "kind": "analyticRule", + "parentId": "/subscriptions/2e1dc338-d04d-4443-b721-037eff4fdcac/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/ruleName2", + "source": { + "kind": "solution", + "name": "Contoso Solution 1.0", + "sourceId": "b688a130-76f4-4a07-bf57-762222a3cadf" + } + } + } + ] + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/metadata/GetMetadata.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/metadata/GetMetadata.json new file mode 100644 index 000000000000..8d01ae218bca --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/metadata/GetMetadata.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "2e1dc338-d04d-4443-b721-037eff4fdcac", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "metadataName": "metadataName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/2e1dc338-d04d-4443-b721-037eff4fdcac/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/metadata/metadataName", + "name": "metadataName", + "type": "Microsoft.SecurityInsights/metadata", + "properties": { + "contentId": "c00ee137-7475-47c8-9cce-ec6f0f1bedd0", + "version": "1.0.0.0", + "kind": "analyticRule", + "parentId": "/subscriptions/2e1dc338-d04d-4443-b721-037eff4fdcac/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/ruleName", + "source": { + "kind": "solution", + "name": "Contoso Solution 1.0", + "sourceId": "b688a130-76f4-4a07-bf57-762222a3cadf" + }, + "author": { + "name": "User Name", + "email": "email@microsoft.com" + }, + "support": { + "name": "Microsoft", + "email": "support@microsoft.com", + "link": "https://support.microsoft.com/", + "tier": "developer" + }, + "dependencies": { + "operator": "AND", + "criteria": [ + { + "operator": "OR", + "criteria": [ + { + "contentId": "045d06d0-ee72-4794-aba4-cf5646e4c756", + "kind": "dataConnector" + }, + { + "contentId": "dbfcb2cc-d782-40ef-8d94-fe7af58a6f2d", + "kind": "dataConnector" + }, + { + "contentId": "de4dca9b-eb37-47d6-a56f-b8b06b261593", + "kind": "dataConnector", + "version": "2.0" + } + ] + }, + { + "kind": "playbook", + "contentId": "31ee11cc-9989-4de8-b176-5e0ef5c4dbab", + "version": "1.0" + }, + { + "kind": "parser", + "contentId": "21ba424a-9438-4444-953a-7059539a7a1b" + } + ] + } + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/metadata/PatchMetadata.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/metadata/PatchMetadata.json new file mode 100644 index 000000000000..5b41f54be96b --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/metadata/PatchMetadata.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "metadataName": "metadataName", + "metadataPatch": { + "properties": { + "author": { + "name": "User Name", + "email": "email@microsoft.com" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/2e1dc338-d04d-4443-b721-037eff4fdcac/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/metadata/metadataName", + "name": "metadataName", + "type": "Microsoft.SecurityInsights/metadata", + "properties": { + "contentId": "c00ee137-7475-47c8-9cce-ec6f0f1bedd0", + "kind": "analyticRule", + "parentId": "/subscriptions/2e1dc338-d04d-4443-b721-037eff4fdcac/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/ruleName", + "author": { + "name": "User Name", + "email": "email@microsoft.com" + } + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/metadata/PutMetadata.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/metadata/PutMetadata.json new file mode 100644 index 000000000000..1cf87ee0e38e --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/metadata/PutMetadata.json @@ -0,0 +1,188 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "metadataName": "metadataName", + "metadata": { + "properties": { + "contentId": "c00ee137-7475-47c8-9cce-ec6f0f1bedd0", + "version": "1.0.0.0", + "kind": "analyticRule", + "parentId": "/subscriptions/2e1dc338-d04d-4443-b721-037eff4fdcac/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/ruleName", + "source": { + "kind": "solution", + "name": "Contoso Solution 1.0", + "sourceId": "b688a130-76f4-4a07-bf57-762222a3cadf" + }, + "author": { + "name": "User Name", + "email": "email@microsoft.com" + }, + "support": { + "name": "Microsoft", + "email": "support@microsoft.com", + "link": "https://support.microsoft.com/", + "tier": "developer" + }, + "dependencies": { + "operator": "AND", + "criteria": [ + { + "operator": "OR", + "criteria": [ + { + "contentId": "045d06d0-ee72-4794-aba4-cf5646e4c756", + "kind": "dataConnector", + "name": "Microsoft Defender for Endpoint" + }, + { + "contentId": "dbfcb2cc-d782-40ef-8d94-fe7af58a6f2d", + "kind": "dataConnector" + }, + { + "contentId": "de4dca9b-eb37-47d6-a56f-b8b06b261593", + "kind": "dataConnector", + "version": "2.0" + } + ] + }, + { + "kind": "playbook", + "contentId": "31ee11cc-9989-4de8-b176-5e0ef5c4dbab", + "version": "1.0" + }, + { + "kind": "parser", + "contentId": "21ba424a-9438-4444-953a-7059539a7a1b" + } + ] + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/2e1dc338-d04d-4443-b721-037eff4fdcac/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/metadata/metadataName", + "name": "metadataName", + "type": "Microsoft.SecurityInsights/metadata", + "properties": { + "contentId": "c00ee137-7475-47c8-9cce-ec6f0f1bedd0", + "version": "1.0.0.0", + "kind": "analyticRule", + "parentId": "/subscriptions/2e1dc338-d04d-4443-b721-037eff4fdcac/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/ruleName", + "source": { + "kind": "solution", + "name": "Contoso Solution 1.0", + "sourceId": "b688a130-76f4-4a07-bf57-762222a3cadf" + }, + "author": { + "name": "User Name", + "email": "email@microsoft.com" + }, + "support": { + "name": "Microsoft", + "email": "support@microsoft.com", + "link": "https://support.microsoft.com/", + "tier": "developer" + }, + "dependencies": { + "operator": "AND", + "criteria": [ + { + "operator": "OR", + "criteria": [ + { + "contentId": "045d06d0-ee72-4794-aba4-cf5646e4c756", + "kind": "dataConnector" + }, + { + "contentId": "dbfcb2cc-d782-40ef-8d94-fe7af58a6f2d", + "kind": "dataConnector" + }, + { + "contentId": "de4dca9b-eb37-47d6-a56f-b8b06b261593", + "kind": "dataConnector", + "version": "2.0" + } + ] + }, + { + "kind": "playbook", + "contentId": "31ee11cc-9989-4de8-b176-5e0ef5c4dbab", + "version": "1.0" + }, + { + "kind": "parser", + "contentId": "21ba424a-9438-4444-953a-7059539a7a1b" + } + ] + } + } + } + }, + "200": { + "body": { + "id": "/subscriptions/2e1dc338-d04d-4443-b721-037eff4fdcac/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/metadata/metadataName", + "name": "metadataName", + "type": "Microsoft.SecurityInsights/metadata", + "properties": { + "contentId": "c00ee137-7475-47c8-9cce-ec6f0f1bedd0", + "version": "1.0.0.0", + "kind": "analyticRule", + "parentId": "/subscriptions/2e1dc338-d04d-4443-b721-037eff4fdcac/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/ruleName", + "source": { + "kind": "solution", + "name": "Contoso Solution 1.0", + "sourceId": "b688a130-76f4-4a07-bf57-762222a3cadf" + }, + "author": { + "name": "User Name", + "email": "email@microsoft.com" + }, + "support": { + "name": "Microsoft", + "email": "support@microsoft.com", + "link": "https://support.microsoft.com/", + "tier": "developer" + }, + "dependencies": { + "operator": "AND", + "criteria": [ + { + "operator": "OR", + "criteria": [ + { + "contentId": "045d06d0-ee72-4794-aba4-cf5646e4c756", + "kind": "dataConnector" + }, + { + "contentId": "dbfcb2cc-d782-40ef-8d94-fe7af58a6f2d", + "kind": "dataConnector" + }, + { + "contentId": "de4dca9b-eb37-47d6-a56f-b8b06b261593", + "kind": "dataConnector", + "version": "2.0" + } + ] + }, + { + "kind": "playbook", + "contentId": "31ee11cc-9989-4de8-b176-5e0ef5c4dbab", + "version": "1.0" + }, + { + "kind": "parser", + "contentId": "21ba424a-9438-4444-953a-7059539a7a1b" + } + ] + } + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/metadata/PutMetadataMinimal.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/metadata/PutMetadataMinimal.json new file mode 100644 index 000000000000..1d916bf7c02e --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/metadata/PutMetadataMinimal.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "metadataName": "metadataName", + "metadata": { + "properties": { + "contentId": "c00ee137-7475-47c8-9cce-ec6f0f1bedd0", + "kind": "analyticRule", + "parentId": "/subscriptions/2e1dc338-d04d-4443-b721-037eff4fdcac/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/ruleName" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/2e1dc338-d04d-4443-b721-037eff4fdcac/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/metadata/metadataName", + "name": "metadataName", + "type": "Microsoft.SecurityInsights/metadata", + "properties": { + "contentId": "c00ee137-7475-47c8-9cce-ec6f0f1bedd0", + "kind": "analyticRule", + "parentId": "/subscriptions/2e1dc338-d04d-4443-b721-037eff4fdcac/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/ruleName" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/2e1dc338-d04d-4443-b721-037eff4fdcac/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/metadata/metadataName", + "name": "metadataName", + "type": "Microsoft.SecurityInsights/metadata", + "properties": { + "contentId": "c00ee137-7475-47c8-9cce-ec6f0f1bedd0", + "kind": "analyticRule", + "parentId": "/subscriptions/2e1dc338-d04d-4443-b721-037eff4fdcac/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/ruleName" + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/onboardingStates/CreateSentinelOnboardingState.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/onboardingStates/CreateSentinelOnboardingState.json new file mode 100644 index 000000000000..eade28e2b8e2 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/onboardingStates/CreateSentinelOnboardingState.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "sentinelOnboardingStateName": "default", + "sentinelOnboardingStateParameter": { + "properties": { + "customerManagedKey": false + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/onboardingStates/default", + "name": "default", + "type": "Microsoft.SecurityInsights/onboardingStates", + "properties": { + "customerManagedKey": false + } + } + }, + "201": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/onboardingStates/default", + "name": "default", + "type": "Microsoft.SecurityInsights/onboardingStates", + "properties": { + "customerManagedKey": false + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/onboardingStates/DeleteSentinelOnboardingState.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/onboardingStates/DeleteSentinelOnboardingState.json new file mode 100644 index 000000000000..f35e9c9c2e78 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/onboardingStates/DeleteSentinelOnboardingState.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "sentinelOnboardingStateName": "default" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/onboardingStates/GetAllSentinelOnboardingStates.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/onboardingStates/GetAllSentinelOnboardingStates.json new file mode 100644 index 000000000000..18ce172dd023 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/onboardingStates/GetAllSentinelOnboardingStates.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/onboardingStates/default", + "name": "default", + "type": "Microsoft.SecurityInsights/onboardingStates", + "properties": { + "customerManagedKey": false + } + } + ] + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/onboardingStates/GetSentinelOnboardingState.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/onboardingStates/GetSentinelOnboardingState.json new file mode 100644 index 000000000000..723a842aae67 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/onboardingStates/GetSentinelOnboardingState.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "sentinelOnboardingStateName": "default" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/onboardingStates/default", + "name": "default", + "type": "Microsoft.SecurityInsights/onboardingStates", + "properties": { + "customerManagedKey": false + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/repositories/GetRepositories.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/repositories/GetRepositories.json new file mode 100644 index 000000000000..5f29c4f3d495 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/repositories/GetRepositories.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "repoType": "Github", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "repoUrl": "https://api.github.com/repos/user/reponame", + "fullName": "reponame", + "branches": [ + "master", + "develop" + ] + } + ] + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/settings/DeleteEyesOnSetting.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/settings/DeleteEyesOnSetting.json index c5bd41305f9b..9120c9f8e9b9 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/settings/DeleteEyesOnSetting.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/settings/DeleteEyesOnSetting.json @@ -4,7 +4,7 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "settingsName": "EyesOn" }, "responses": { diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/settings/GetAllSettings.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/settings/GetAllSettings.json index c5cfaf392fb1..98fbfb457977 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/settings/GetAllSettings.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/settings/GetAllSettings.json @@ -4,7 +4,7 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights" + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights" }, "responses": { "200": { diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/settings/GetEyesOnSetting.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/settings/GetEyesOnSetting.json index 9819b887ec53..b4b8e56e6b58 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/settings/GetEyesOnSetting.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/settings/GetEyesOnSetting.json @@ -4,7 +4,7 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "settingsName": "EyesOn" }, "responses": { diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/sourcecontrols/CreateSourceControl.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/sourcecontrols/CreateSourceControl.json new file mode 100644 index 000000000000..006c6dbaa4c9 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/sourcecontrols/CreateSourceControl.json @@ -0,0 +1,118 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "sourceControlId": "789e0c1f-4a3d-43ad-809c-e713b677b04a", + "sourceControl": { + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "displayName": "My Source Control", + "description": "This is a source control", + "repoType": "Github", + "contentTypes": [ + "AnalyticRules", + "Workbook" + ], + "repository": { + "url": "https://github.com/user/repo", + "branch": "master", + "pathMapping": [ + { + "contentType": "AnalyticRules", + "path": "path/to/rules" + }, + { + "contentType": "Workbook", + "path": "path/to/workbooks" + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/sourcecontrols/789e0c1f-4a3d-43ad-809c-e713b677b04a", + "name": "789e0c1f-4a3d-43ad-809c-e713b677b04a", + "type": "Microsoft.SecurityInsights/SourceControls", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "sourceControlId": "789e0c1f-4a3d-43ad-809c-e713b677b04a", + "displayName": "My Source Control", + "description": "this is a source control", + "repoType": "Github", + "contentTypes": [ + "AnalyticRules", + "Workbook" + ], + "repository": { + "url": "https://github.com/user/repo", + "branch": "master", + "pathMapping": [ + { + "contentType": "AnalyticRules", + "path": "path/to/rules" + }, + { + "contentType": "Workbook", + "path": "path/to/workbooks" + } + ] + } + }, + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2020-04-27T21:53:29.0928001Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-04-27T21:53:29.0928001Z" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/sourcecontrols/789e0c1f-4a3d-43ad-809c-e713b677b04a", + "name": "789e0c1f-4a3d-43ad-809c-e713b677b04a", + "type": "Microsoft.SecurityInsights/SourceControls", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "sourceControlId": "789e0c1f-4a3d-43ad-809c-e713b677b04a", + "displayName": "My Source Control", + "description": "this is a source control", + "repoType": "Github", + "contentTypes": [ + "AnalyticRules", + "Workbook" + ], + "repository": { + "url": "https://github.com/user/repo", + "branch": "master", + "pathMapping": [ + { + "contentType": "AnalyticRules", + "path": "path/to/rules" + }, + { + "contentType": "Workbook", + "path": "path/to/workbooks" + } + ] + } + }, + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2020-04-27T21:53:29.0928001Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-04-27T21:53:29.0928001Z" + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/sourcecontrols/DeleteSourceControl.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/sourcecontrols/DeleteSourceControl.json new file mode 100644 index 000000000000..45c070ae38a8 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/sourcecontrols/DeleteSourceControl.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "sourceControlId": "789e0c1f-4a3d-43ad-809c-e713b677b04a" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/sourcecontrols/GetSourceControlById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/sourcecontrols/GetSourceControlById.json new file mode 100644 index 000000000000..f23a1875609f --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/sourcecontrols/GetSourceControlById.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "sourceControlId": "789e0c1f-4a3d-43ad-809c-e713b677b04a" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/sourcecontrols/789e0c1f-4a3d-43ad-809c-e713b677b04a", + "name": "789e0c1f-4a3d-43ad-809c-e713b677b04a", + "type": "Microsoft.SecurityInsights/SourceControls", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "sourceControlId": "789e0c1f-4a3d-43ad-809c-e713b677b04a", + "displayName": "My Source Control", + "description": "this is a source control", + "repoType": "Github", + "contentTypes": [ + "AnalyticRules", + "Workbook" + ], + "repository": { + "url": "https://github.com/user/repo", + "branch": "master", + "pathMapping": [ + { + "contentType": "AnalyticRules", + "path": "path/to/rules" + }, + { + "contentType": "Workbook", + "path": "path/to/workbooks" + } + ] + } + }, + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2020-04-27T21:53:29.0928001Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-04-27T21:53:29.0928001Z" + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/sourcecontrols/GetSourceControls.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/sourcecontrols/GetSourceControls.json new file mode 100644 index 000000000000..fe9547ec3124 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/sourcecontrols/GetSourceControls.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/sourcecontrols/789e0c1f-4a3d-43ad-809c-e713b677b04a", + "name": "789e0c1f-4a3d-43ad-809c-e713b677b04a", + "type": "Microsoft.SecurityInsights/SourceControls", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "sourceControlId": "789e0c1f-4a3d-43ad-809c-e713b677b04a", + "displayName": "My Source Control", + "description": "this is a source control", + "repoType": "Github", + "contentTypes": [ + "AnalyticRules", + "Workbook" + ], + "repository": { + "url": "https://github.com/user/repo", + "branch": "master", + "pathMapping": [ + { + "contentType": "AnalyticRules", + "path": "path/to/rules" + }, + { + "contentType": "Workbook", + "path": "path/to/workbooks" + } + ] + } + }, + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2020-04-27T21:53:29.0928001Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-04-27T21:53:29.0928001Z" + } + } + ] + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/watchlists/CreateWatchlist.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/watchlists/CreateWatchlist.json new file mode 100644 index 000000000000..baa0dc9d8363 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/watchlists/CreateWatchlist.json @@ -0,0 +1,86 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "watchlistAlias": "highValueAsset", + "watchlist": { + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "displayName": "High Value Assets Watchlist", + "source": "Local file", + "provider": "Microsoft", + "description": "Watchlist from CSV content", + "itemsSearchKey": "header1" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/watchlists/highValueAsset", + "name": "highValueAsset", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "type": "Microsoft.SecurityInsights/Watchlists", + "properties": { + "watchlistId": "76d5a51f-ba1f-4038-9d22-59fda38dc017", + "displayName": "High Value Assets Watchlist", + "provider": "Microsoft", + "source": "Local file", + "created": "2020-09-28T00:26:54.7746089+00:00", + "updated": "2020-09-28T00:26:57+00:00", + "createdBy": { + "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70", + "email": "john@contoso.com", + "name": "john doe" + }, + "updatedBy": { + "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70", + "email": "john@contoso.com", + "name": "john doe" + }, + "description": "Watchlist from CSV content", + "watchlistType": "watchlist", + "watchlistAlias": "highValueAsset", + "itemsSearchKey": "header1", + "isDeleted": false, + "tenantId": "f686d426-8d16-42db-81b7-ab578e110ccd" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/watchlists/highValueAsset", + "name": "highValueAsset", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "type": "Microsoft.SecurityInsights/Watchlists", + "properties": { + "watchlistId": "76d5a51f-ba1f-4038-9d22-59fda38dc017", + "displayName": "High Value Assets Watchlist", + "provider": "Microsoft", + "source": "Local file", + "created": "2020-09-28T00:26:54.7746089+00:00", + "updated": "2020-09-28T00:26:57+00:00", + "createdBy": { + "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70", + "email": "john@contoso.com", + "name": "john doe" + }, + "updatedBy": { + "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70", + "email": "john@contoso.com", + "name": "john doe" + }, + "description": "Watchlist from CSV content", + "watchlistType": "watchlist", + "watchlistAlias": "highValueAsset", + "itemsSearchKey": "header1", + "isDeleted": false, + "tenantId": "f686d426-8d16-42db-81b7-ab578e110ccd" + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/watchlists/CreateWatchlistAndWatchlistItems.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/watchlists/CreateWatchlistAndWatchlistItems.json new file mode 100644 index 000000000000..d852b0ff16e0 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/watchlists/CreateWatchlistAndWatchlistItems.json @@ -0,0 +1,89 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "watchlistAlias": "highValueAsset", + "watchlist": { + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "displayName": "High Value Assets Watchlist", + "source": "Local file", + "provider": "Microsoft", + "description": "Watchlist from CSV content", + "numberOfLinesToSkip": 1, + "rawContent": "This line will be skipped\nheader1,header2\nvalue1,value2", + "itemsSearchKey": "header1", + "contentType": "text/csv" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/watchlists/highValueAsset", + "name": "highValueAsset", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "type": "Microsoft.SecurityInsights/Watchlists", + "properties": { + "watchlistId": "76d5a51f-ba1f-4038-9d22-59fda38dc017", + "displayName": "High Value Assets Watchlist", + "provider": "Microsoft", + "source": "Local file", + "created": "2020-09-28T00:26:54.7746089+00:00", + "updated": "2020-09-28T00:26:57+00:00", + "createdBy": { + "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70", + "email": "john@contoso.com", + "name": "john doe" + }, + "updatedBy": { + "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70", + "email": "john@contoso.com", + "name": "john doe" + }, + "description": "Watchlist from CSV content", + "watchlistType": "watchlist", + "watchlistAlias": "highValueAsset", + "itemsSearchKey": "header1", + "isDeleted": false, + "tenantId": "f686d426-8d16-42db-81b7-ab578e110ccd" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/watchlists/highValueAsset", + "name": "highValueAsset", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "type": "Microsoft.SecurityInsights/Watchlists", + "properties": { + "watchlistId": "76d5a51f-ba1f-4038-9d22-59fda38dc017", + "displayName": "High Value Assets Watchlist", + "provider": "Microsoft", + "source": "Local file", + "created": "2020-09-28T00:26:54.7746089+00:00", + "updated": "2020-09-28T00:26:57+00:00", + "createdBy": { + "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70", + "email": "john@contoso.com", + "name": "john doe" + }, + "updatedBy": { + "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70", + "email": "john@contoso.com", + "name": "john doe" + }, + "description": "Watchlist from CSV content", + "watchlistType": "watchlist", + "watchlistAlias": "highValueAsset", + "itemsSearchKey": "header1", + "isDeleted": false, + "tenantId": "f686d426-8d16-42db-81b7-ab578e110ccd" + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/watchlists/CreateWatchlistItem.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/watchlists/CreateWatchlistItem.json new file mode 100644 index 000000000000..e83eab48bae3 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/watchlists/CreateWatchlistItem.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "watchlistAlias": "highValueAsset", + "watchlistItemId": "82ba292c-dc97-4dfc-969d-d4dd9e666842", + "watchlistItem": { + "etag": "0300bf09-0000-0000-0000-5c37296e0000", + "properties": { + "itemsKeyValue": { + "Gateway subnet": "10.0.255.224/27", + "Web Tier": "10.0.1.0/24", + "Business tier": "10.0.2.0/24", + "Data tier": "10.0.2.0/24", + "Private DMZ in": "10.0.0.0/27", + "Public DMZ out": "10.0.0.96/27" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/Watchlists/highValueAsset/WatchlistItems/82ba292c-dc97-4dfc-969d-d4dd9e666842", + "etag": "0300bf09-0000-0000-0000-5c37296e0000", + "type": "Microsoft.SecurityInsights/Watchlists/WatchlistItems", + "properties": { + "watchlistItemType": "watchlist-item", + "watchlistItemId": "82ba292c-dc97-4dfc-969d-d4dd9e666842", + "tenantId": "4008512e-1d30-48b2-9ee2-d3612ed9d3ea", + "isDeleted": false, + "created": "2020-11-15T04:58:56.0748363+00:00", + "updated": "2020-11-16T16:05:20+00:00", + "createdBy": { + "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70", + "email": "john@contoso.com", + "name": "john doe" + }, + "updatedBy": { + "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70", + "email": "john@contoso.com", + "name": "john doe" + }, + "itemsKeyValue": { + "Gateway subnet": "10.0.255.224/27", + "Web Tier": "10.0.1.0/24", + "Business tier": "10.0.2.0/24", + "Data tier": "10.0.2.0/24", + "Private DMZ in": "10.0.0.0/27", + "Public DMZ out": "10.0.0.96/27" + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/Watchlists/highValueAsset/WatchlistItems/82ba292c-dc97-4dfc-969d-d4dd9e666842", + "etag": "0300bf09-0000-0000-0000-5c37296e0000", + "type": "Microsoft.SecurityInsights/Watchlists/WatchlistItems", + "properties": { + "watchlistItemType": "watchlist-item", + "watchlistItemId": "82ba292c-dc97-4dfc-969d-d4dd9e666842", + "tenantId": "4008512e-1d30-48b2-9ee2-d3612ed9d3ea", + "isDeleted": false, + "created": "2020-11-15T04:58:56.0748363+00:00", + "updated": "2020-11-16T16:05:20+00:00", + "createdBy": { + "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70", + "email": "john@contoso.com", + "name": "john doe" + }, + "updatedBy": { + "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70", + "email": "john@contoso.com", + "name": "john doe" + }, + "itemsKeyValue": { + "Gateway subnet": "10.0.255.224/27", + "Web Tier": "10.0.1.0/24", + "Business tier": "10.0.2.0/24", + "Data tier": "10.0.2.0/24", + "Private DMZ in": "10.0.0.0/27", + "Public DMZ out": "10.0.0.96/27" + } + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/watchlists/DeleteWatchlist.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/watchlists/DeleteWatchlist.json new file mode 100644 index 000000000000..eebf3d5551b0 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/watchlists/DeleteWatchlist.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "watchlistAlias": "highValueAsset" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/watchlists/DeleteWatchlistItem.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/watchlists/DeleteWatchlistItem.json new file mode 100644 index 000000000000..a645a5ae6f89 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/watchlists/DeleteWatchlistItem.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "watchlistAlias": "highValueAsset", + "watchlistItemId": "4008512e-1d30-48b2-9ee2-d3612ed9d3ea" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/watchlists/GetWatchlistByAlias.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/watchlists/GetWatchlistByAlias.json new file mode 100644 index 000000000000..401ffa61f269 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/watchlists/GetWatchlistByAlias.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "watchlistAlias": "highValueAsset" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/watchlists/highValueAsset", + "name": "highValueAsset", + "type": "Microsoft.SecurityInsights/Watchlists", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "watchlistId": "76d5a51f-ba1f-4038-9d22-59fda38dc017", + "displayName": "High Value Assets Watchlist", + "provider": "Microsoft", + "source": "Local file", + "created": "2020-09-28T00:26:54.7746089+00:00", + "updated": "2020-09-28T00:26:57+00:00", + "createdBy": { + "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70", + "email": "john@contoso.com", + "name": "john doe" + }, + "updatedBy": { + "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70", + "email": "john@contoso.com", + "name": "john doe" + }, + "description": "Watchlist from CSV content", + "watchlistType": "watchlist", + "watchlistAlias": "highValueAsset", + "itemsSearchKey": "header1", + "isDeleted": false, + "labels": [ + "Tag1", + "Tag2" + ], + "defaultDuration": "P1279DT12H30M5S", + "tenantId": "f686d426-8d16-42db-81b7-ab578e110ccd" + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/watchlists/GetWatchlistItemById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/watchlists/GetWatchlistItemById.json new file mode 100644 index 000000000000..e189c4712931 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/watchlists/GetWatchlistItemById.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "watchlistAlias": "highValueAsset", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "watchlistItemId": "3f8901fe-63d9-4875-9ad5-9fb3b8105797" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/Watchlists/highValueAsset/WatchlistItems/fd37d325-7090-47fe-851a-5b5a00c3f576", + "name": "fd37d325-7090-47fe-851a-5b5a00c3f576", + "etag": "\"f2089bfa-0000-0d00-0000-601c58b42021\"", + "type": "Microsoft.SecurityInsights/Watchlists/WatchlistItems", + "properties": { + "watchlistItemType": "watchlist-item", + "watchlistItemId": "fd37d325-7090-47fe-851a-5b5a00c3f576", + "tenantId": "3f8901fe-63d9-4875-9ad5-9fb3b8105797", + "isDeleted": false, + "created": "2021-02-04T12:27:32.3783333-08:00", + "updated": "2021-02-04T12:27:32.3783333-08:00", + "createdBy": { + "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70", + "email": "john@contoso.com", + "name": "john doe" + }, + "updatedBy": { + "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70", + "email": "john@contoso.com", + "name": "john doe" + }, + "itemsKeyValue": { + "Header-1": "v1_1", + "Header-2": "v1_2", + "Header-3": "v1_3", + "Header-4": "v1_4", + "Header-5": "v1_5" + }, + "entityMapping": {} + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/watchlists/GetWatchlistItems.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/watchlists/GetWatchlistItems.json new file mode 100644 index 000000000000..35b6c8464688 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/watchlists/GetWatchlistItems.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "watchlistAlias": "highValueAsset" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/Watchlists/highValueAsset/WatchlistItems/fd37d325-7090-47fe-851a-5b5a00c3f576", + "name": "fd37d325-7090-47fe-851a-5b5a00c3f576", + "etag": "\"f2089bfa-0000-0d00-0000-601c58b42021\"", + "type": "Microsoft.SecurityInsights/Watchlists/WatchlistItems", + "properties": { + "watchlistItemType": "watchlist-item", + "watchlistItemId": "fd37d325-7090-47fe-851a-5b5a00c3f576", + "tenantId": "3f8901fe-63d9-4875-9ad5-9fb3b8105797", + "isDeleted": false, + "created": "2021-02-04T12:27:32.3783333-08:00", + "updated": "2021-02-04T12:27:32.3783333-08:00", + "createdBy": { + "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70", + "email": "john@contoso.com", + "name": "john doe" + }, + "updatedBy": { + "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70", + "email": "john@contoso.com", + "name": "john doe" + }, + "itemsKeyValue": { + "Header-1": "v1_1", + "Header-2": "v1_2", + "Header-3": "v1_3", + "Header-4": "v1_4", + "Header-5": "v1_5" + }, + "entityMapping": {} + } + } + ] + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/watchlists/GetWatchlists.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/watchlists/GetWatchlists.json new file mode 100644 index 000000000000..2d7b8c050b66 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2021-03-01-preview/examples/watchlists/GetWatchlists.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "api-version": "2021-03-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/watchlists/highValueAsset", + "name": "highValueAsset", + "type": "Microsoft.SecurityInsights/Watchlists", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "watchlistId": "76d5a51f-ba1f-4038-9d22-59fda38dc017", + "displayName": "High Value Assets Watchlist", + "provider": "Microsoft", + "source": "Local file", + "created": "2020-09-28T00:26:54.7746089+00:00", + "updated": "2020-09-28T00:26:57+00:00", + "createdBy": { + "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70", + "email": "john@contoso.com", + "name": "john doe" + }, + "updatedBy": { + "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70", + "email": "john@contoso.com", + "name": "john doe" + }, + "description": "Watchlist from CSV content", + "watchlistType": "watchlist", + "watchlistAlias": "highValueAsset", + "itemsSearchKey": "header1", + "isDeleted": false, + "labels": [ + "Tag1", + "Tag2" + ], + "defaultDuration": "P1279DT12H30M5S", + "tenantId": "f686d426-8d16-42db-81b7-ab578e110ccd" + } + } + ] + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/actions/CreateActionOfAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/actions/CreateActionOfAlertRule.json index e600106c6361..801727127c16 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/actions/CreateActionOfAlertRule.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/actions/CreateActionOfAlertRule.json @@ -18,7 +18,7 @@ "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5/actions/912bec42-cb66-4c03-ac63-1761b6898c3e", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5/actions/912bec42-cb66-4c03-ac63-1761b6898c3e", "name": "912bec42-cb66-4c03-ac63-1761b6898c3e", "type": "Microsoft.SecurityInsights/alertRules/actions", "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", @@ -30,7 +30,7 @@ }, "201": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5/actions/912bec42-cb66-4c03-ac63-1761b6898c3e", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5/actions/912bec42-cb66-4c03-ac63-1761b6898c3e", "name": "912bec42-cb66-4c03-ac63-1761b6898c3e", "type": "Microsoft.SecurityInsights/alertRules/actions", "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/actions/DeleteActionOfAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/actions/DeleteActionOfAlertRule.json index 7171f40ea567..9b2972bf9e3a 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/actions/DeleteActionOfAlertRule.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/actions/DeleteActionOfAlertRule.json @@ -4,7 +4,7 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "ruleId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", "actionId": "912bec42-cb66-4c03-ac63-1761b6898c3e" }, diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/actions/GetActionOfAlertRuleById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/actions/GetActionOfAlertRuleById.json index 8e1e384e1a67..065f9e92c07b 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/actions/GetActionOfAlertRuleById.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/actions/GetActionOfAlertRuleById.json @@ -4,14 +4,14 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "ruleId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", "actionId": "912bec42-cb66-4c03-ac63-1761b6898c3e" }, "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5/actions/912bec42-cb66-4c03-ac63-1761b6898c3e", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5/actions/912bec42-cb66-4c03-ac63-1761b6898c3e", "name": "912bec42-cb66-4c03-ac63-1761b6898c3e", "type": "Microsoft.SecurityInsights/alertRules/actions", "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/actions/GetAllActionsByAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/actions/GetAllActionsByAlertRule.json index 3fd9a05dfb8d..d0292df56be5 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/actions/GetAllActionsByAlertRule.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/actions/GetAllActionsByAlertRule.json @@ -4,7 +4,7 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "ruleId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5" }, "responses": { @@ -12,7 +12,7 @@ "body": { "value": [ { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5/actions/912bec42-cb66-4c03-ac63-1761b6898c3e", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5/actions/912bec42-cb66-4c03-ac63-1761b6898c3e", "name": "912bec42-cb66-4c03-ac63-1761b6898c3e", "type": "Microsoft.SecurityInsights/alertRules/actions", "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRuleTemplates/GetAlertRuleTemplateById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRuleTemplates/GetAlertRuleTemplateById.json index d37e8c470833..4dbca1922dba 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRuleTemplates/GetAlertRuleTemplateById.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRuleTemplates/GetAlertRuleTemplateById.json @@ -4,13 +4,13 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "alertRuleTemplateId": "65360bb0-8986-4ade-a89d-af3cf44d28aa" }, "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRuleTemplates/65360bb0-8986-4ade-a89d-af3cf44d28aa", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRuleTemplates/65360bb0-8986-4ade-a89d-af3cf44d28aa", "name": "65360bb0-8986-4ade-a89d-af3cf44d28aa", "type": "Microsoft.SecurityInsights/AlertRuleTemplates", "kind": "Scheduled", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRuleTemplates/GetAlertRuleTemplates.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRuleTemplates/GetAlertRuleTemplates.json index d10304254569..df498bf54949 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRuleTemplates/GetAlertRuleTemplates.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRuleTemplates/GetAlertRuleTemplates.json @@ -4,14 +4,14 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights" + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights" }, "responses": { "200": { "body": { "value": [ { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/AlertRuleTemplates/65360bb0-8986-4ade-a89d-af3cf44d28aa", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/AlertRuleTemplates/65360bb0-8986-4ade-a89d-af3cf44d28aa", "name": "65360bb0-8986-4ade-a89d-af3cf44d28aa", "type": "Microsoft.SecurityInsights/AlertRuleTemplates", "kind": "Scheduled", @@ -42,7 +42,7 @@ } }, { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/AlertRuleTemplates/f71aba3d-28fb-450b-b192-4e76a83015c8", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/AlertRuleTemplates/f71aba3d-28fb-450b-b192-4e76a83015c8", "name": "f71aba3d-28fb-450b-b192-4e76a83015c8", "type": "Microsoft.SecurityInsights/AlertRuleTemplates", "kind": "Fusion", @@ -62,7 +62,7 @@ } }, { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/AlertRuleTemplates/b3cfc7c0-092c-481c-a55b-34a3979758cb", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/AlertRuleTemplates/b3cfc7c0-092c-481c-a55b-34a3979758cb", "name": "b3cfc7c0-092c-481c-a55b-34a3979758cb", "type": "Microsoft.SecurityInsights/AlertRuleTemplates", "kind": "MicrosoftSecurityIncidentCreation", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/CreateFusionAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/CreateFusionAlertRule.json index ea49be0c55ab..6bcf080c3091 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/CreateFusionAlertRule.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/CreateFusionAlertRule.json @@ -18,7 +18,7 @@ "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/myFirstFusionRule", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/myFirstFusionRule", "name": "myFirstFusionRule", "etag": "\"260090e2-0000-0d00-0000-5d6fb8670000\"", "type": "Microsoft.SecurityInsights/alertRules", @@ -41,7 +41,7 @@ }, "201": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/myFirstFusionRule", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/myFirstFusionRule", "name": "myFirstFusionRule", "etag": "\"260090e2-0000-0d00-0000-5d6fb8670000\"", "type": "Microsoft.SecurityInsights/alertRules", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/CreateMicrosoftSecurityIncidentCreationAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/CreateMicrosoftSecurityIncidentCreationAlertRule.json index 5f6770266197..a30144340874 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/CreateMicrosoftSecurityIncidentCreationAlertRule.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/CreateMicrosoftSecurityIncidentCreationAlertRule.json @@ -19,7 +19,7 @@ "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/microsoftSecurityIncidentCreationRuleExample", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/microsoftSecurityIncidentCreationRuleExample", "name": "microsoftSecurityIncidentCreationRuleExample", "etag": "\"260097e0-0000-0d00-0000-5d6fa88f0000\"", "type": "Microsoft.SecurityInsights/alertRules", @@ -38,7 +38,7 @@ }, "201": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/microsoftSecurityIncidentCreationRuleExample", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/microsoftSecurityIncidentCreationRuleExample", "name": "microsoftSecurityIncidentCreationRuleExample", "etag": "\"260097e0-0000-0d00-0000-5d6fa88f0000\"", "type": "Microsoft.SecurityInsights/alertRules", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/CreateScheduledAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/CreateScheduledAlertRule.json index 419d7e30bf09..d00bc205ef7e 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/CreateScheduledAlertRule.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/CreateScheduledAlertRule.json @@ -31,7 +31,7 @@ "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5", "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", "type": "Microsoft.SecurityInsights/alertRules", "kind": "Scheduled", @@ -59,7 +59,7 @@ }, "201": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5", "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", "type": "Microsoft.SecurityInsights/alertRules", "kind": "Scheduled", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/DeleteAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/DeleteAlertRule.json index af8489176a37..e9aed01e1d36 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/DeleteAlertRule.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/DeleteAlertRule.json @@ -4,7 +4,7 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "ruleId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5" }, "responses": { diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/GetAllAlertRules.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/GetAllAlertRules.json index 8278214a32f3..4ee691803483 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/GetAllAlertRules.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/GetAllAlertRules.json @@ -4,14 +4,14 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights" + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights" }, "responses": { "200": { "body": { "value": [ { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5", "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", "type": "Microsoft.SecurityInsights/alertRules", "kind": "Scheduled", @@ -37,7 +37,7 @@ } }, { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/microsoftSecurityIncidentCreationRuleExample", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/microsoftSecurityIncidentCreationRuleExample", "name": "microsoftSecurityIncidentCreationRuleExample", "etag": "\"260097e0-0000-0d00-0000-5d6fa88f0000\"", "type": "Microsoft.SecurityInsights/alertRules", @@ -54,7 +54,7 @@ } }, { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/myFirstFusionRule", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/myFirstFusionRule", "name": "myFirstFusionRule", "etag": "\"25005c11-0000-0d00-0000-5d6cc0e20000\"", "type": "Microsoft.SecurityInsights/alertRules", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/GetFusionAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/GetFusionAlertRule.json index 7c12477f716d..c0406f4f8ed9 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/GetFusionAlertRule.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/GetFusionAlertRule.json @@ -4,13 +4,13 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "ruleId": "myFirstFusionRule" }, "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/myFirstFusionRule", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/myFirstFusionRule", "name": "myFirstFusionRule", "etag": "\"260090e2-0000-0d00-0000-5d6fb8670000\"", "type": "Microsoft.SecurityInsights/alertRules", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/GetMicrosoftSecurityIncidentCreationAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/GetMicrosoftSecurityIncidentCreationAlertRule.json index 3260afe2af19..fa0aed9bcc72 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/GetMicrosoftSecurityIncidentCreationAlertRule.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/GetMicrosoftSecurityIncidentCreationAlertRule.json @@ -4,13 +4,13 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "ruleId": "microsoftSecurityIncidentCreationRuleExample" }, "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/microsoftSecurityIncidentCreationRuleExample", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/microsoftSecurityIncidentCreationRuleExample", "name": "microsoftSecurityIncidentCreationRuleExample", "etag": "\"260097e0-0000-0d00-0000-5d6fa88f0000\"", "type": "Microsoft.SecurityInsights/alertRules", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/GetScheduledAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/GetScheduledAlertRule.json index c3b74f069693..f20128778ff0 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/GetScheduledAlertRule.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/GetScheduledAlertRule.json @@ -4,13 +4,13 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "ruleId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5" }, "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5", "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", "type": "Microsoft.SecurityInsights/alertRules", "kind": "Scheduled", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/bookmarks/CreateBookmark.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/bookmarks/CreateBookmark.json index 302388cb061a..42dc461a6f52 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/bookmarks/CreateBookmark.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/bookmarks/CreateBookmark.json @@ -31,7 +31,7 @@ "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/73e01a99-5cd7-4139-a149-9f2736ff2ab5", "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", "type": "Microsoft.SecurityInsights/bookmarks", "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", @@ -61,7 +61,7 @@ }, "201": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/73e01a99-5cd7-4139-a149-9f2736ff2ab5", "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", "type": "Microsoft.SecurityInsights/bookmarks", "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/bookmarks/DeleteBookmark.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/bookmarks/DeleteBookmark.json index ed370512b64f..f8357a113600 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/bookmarks/DeleteBookmark.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/bookmarks/DeleteBookmark.json @@ -4,7 +4,7 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "bookmarkId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5" }, "responses": { diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/bookmarks/GetBookmarkById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/bookmarks/GetBookmarkById.json index 1fc0d3f2facd..d38d2d2eee42 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/bookmarks/GetBookmarkById.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/bookmarks/GetBookmarkById.json @@ -4,13 +4,13 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "bookmarkId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5" }, "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/73e01a99-5cd7-4139-a149-9f2736ff2ab5", "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", "type": "Microsoft.SecurityInsights/bookmarks", "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/bookmarks/GetBookmarks.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/bookmarks/GetBookmarks.json index 5e2412060910..78612f8957a5 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/bookmarks/GetBookmarks.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/bookmarks/GetBookmarks.json @@ -4,14 +4,14 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights" + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights" }, "responses": { "200": { "body": { "value": [ { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/73e01a99-5cd7-4139-a149-9f2736ff2ab5", "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", "type": "Microsoft.SecurityInsights/bookmarks", "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/CreateOfficeDataConnetor.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/CreateOfficeDataConnetor.json index 74358347ff01..51d132bc4656 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/CreateOfficeDataConnetor.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/CreateOfficeDataConnetor.json @@ -28,7 +28,7 @@ "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5", "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", "type": "Microsoft.SecurityInsights/dataConnectors", "kind": "Office365", @@ -51,7 +51,7 @@ }, "201": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5", "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", "type": "Microsoft.SecurityInsights/dataConnectors", "kind": "Office365", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/CreateThreatIntelligenceDataConnector.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/CreateThreatIntelligenceDataConnector.json index 4b10a4d584cd..200254b12150 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/CreateThreatIntelligenceDataConnector.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/CreateThreatIntelligenceDataConnector.json @@ -22,7 +22,7 @@ "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5", "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", "type": "Microsoft.SecurityInsights/dataConnectors", "kind": "ThreatIntelligence", @@ -40,7 +40,7 @@ }, "201": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5", "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", "type": "Microsoft.SecurityInsights/dataConnectors", "kind": "ThreatIntelligence", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/DeleteOfficeDataConnetor.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/DeleteOfficeDataConnetor.json index c6dfa5a562fc..e279bf430a8a 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/DeleteOfficeDataConnetor.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/DeleteOfficeDataConnetor.json @@ -4,7 +4,7 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "dataConnectorId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5" }, "responses": { diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/GetAzureActiveDirectoryById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/GetAzureActiveDirectoryById.json index 75a5325cb3ac..ceab1826ed8f 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/GetAzureActiveDirectoryById.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/GetAzureActiveDirectoryById.json @@ -4,13 +4,13 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "dataConnectorId": "f0cd27d2-5f03-4c06-ba31-d2dc82dcb51d" }, "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/f0cd27d2-5f03-4c06-ba31-d2dc82dcb51d", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/f0cd27d2-5f03-4c06-ba31-d2dc82dcb51d", "name": "f0cd27d2-5f03-4c06-ba31-d2dc82dcb51d", "type": "Microsoft.SecurityInsights/dataConnectors", "kind": "AzureActiveDirectory", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/GetAzureSecurityCenterById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/GetAzureSecurityCenterById.json index 69f572c44756..6fba0c432dc3 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/GetAzureSecurityCenterById.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/GetAzureSecurityCenterById.json @@ -4,13 +4,13 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "dataConnectorId": "763f9fa1-c2d3-4fa2-93e9-bccd4899aa12" }, "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/763f9fa1-c2d3-4fa2-93e9-bccd4899aa12", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/763f9fa1-c2d3-4fa2-93e9-bccd4899aa12", "name": "763f9fa1-c2d3-4fa2-93e9-bccd4899aa12", "type": "Microsoft.SecurityInsights/dataConnectors", "kind": "AzureSecurityCenter", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/GetOfficeDataConnetorById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/GetOfficeDataConnetorById.json index 25f8ef996f8f..a696c73731ef 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/GetOfficeDataConnetorById.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/GetOfficeDataConnetorById.json @@ -4,13 +4,13 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "dataConnectorId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5" }, "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5", "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", "type": "Microsoft.SecurityInsights/dataConnectors", "kind": "Office365", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/GetThreatIntelligenceById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/GetThreatIntelligenceById.json index 033debf19d91..2fd7052c04a4 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/GetThreatIntelligenceById.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/GetThreatIntelligenceById.json @@ -4,13 +4,13 @@ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", "resourceGroupName": "myRg", "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "dataConnectorId": "c345bf40-8509-4ed2-b947-50cb773aaf04" }, "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/c345bf40-8509-4ed2-b947-50cb773aaf04", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/c345bf40-8509-4ed2-b947-50cb773aaf04", "name": "c345bf40-8509-4ed2-b947-50cb773aaf04", "type": "Microsoft.SecurityInsights/dataConnectors", "kind": "ThreatIntelligence", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/incidents/CreateIncident.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/incidents/CreateIncident.json index b0ec076e645c..3225ca91cbff 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/incidents/CreateIncident.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/incidents/CreateIncident.json @@ -26,7 +26,7 @@ "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5", "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", "type": "Microsoft.SecurityInsights/incidents", "etag": "\"0300bf09-0000-0000-0000-5c37296e0001\"", @@ -48,7 +48,7 @@ "classificationComment": "Not a malicious activity", "classificationReason": "IncorrectAlertLogic", "status": "Closed", - "incidentUrl": "https://portal.azure.com/#asset/Microsoft_Azure_Security_Insights/Incident/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "incidentUrl": "https://portal.azure.com/#asset/Microsoft_Azure_Security_Insights/Incident/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5", "incidentNumber": 3177, "labels": [], "relatedAnalyticRuleIds": [], @@ -64,7 +64,7 @@ }, "201": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5", "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", "type": "Microsoft.SecurityInsights/incidents", "etag": "\"0300bf09-0000-0000-0000-5c37296e0001\"", @@ -86,7 +86,7 @@ "classificationComment": "Not a malicious activity", "classificationReason": "IncorrectAlertLogic", "status": "Closed", - "incidentUrl": "https://portal.azure.com/#asset/Microsoft_Azure_Security_Insights/Incident/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "incidentUrl": "https://portal.azure.com/#asset/Microsoft_Azure_Security_Insights/Incident/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5", "incidentNumber": 3177, "labels": [], "relatedAnalyticRuleIds": [], diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/incidents/GetIncidentById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/incidents/GetIncidentById.json index 02700be4d343..b3b72c83f16a 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/incidents/GetIncidentById.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/incidents/GetIncidentById.json @@ -9,7 +9,7 @@ "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5", "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", "type": "Microsoft.SecurityInsights/incidents", "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", @@ -31,11 +31,11 @@ "classificationComment": "Not a malicious activity", "classificationReason": "InaccurateData", "status": "Closed", - "incidentUrl": "https://portal.azure.com/#asset/Microsoft_Azure_Security_Insights/Incident/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "incidentUrl": "https://portal.azure.com/#asset/Microsoft_Azure_Security_Insights/Incident/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5", "incidentNumber": 3177, "labels": [], "relatedAnalyticRuleIds": [ - "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/fab3d2d4-747f-46a7-8ef0-9c0be8112bf7" + "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/fab3d2d4-747f-46a7-8ef0-9c0be8112bf7" ], "additionalData": { "alertsCount": 0, diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/incidents/GetIncidents.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/incidents/GetIncidents.json index a7c9c0c95747..17cb62937ad8 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/incidents/GetIncidents.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/incidents/GetIncidents.json @@ -12,7 +12,7 @@ "body": { "value": [ { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5", "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", "type": "Microsoft.SecurityInsights/incidents", "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", @@ -34,12 +34,12 @@ "classificationComment": "Not a malicious activity", "classificationReason": "IncorrectAlertLogic", "status": "Closed", - "incidentUrl": "https://portal.azure.com/#asset/Microsoft_Azure_Security_Insights/Incident/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "incidentUrl": "https://portal.azure.com/#asset/Microsoft_Azure_Security_Insights/Incident/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5", "incidentNumber": 3177, "labels": [], "relatedAnalyticRuleIds": [ - "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/fab3d2d4-747f-46a7-8ef0-9c0be8112bf7", - "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/8deb8303-e94d-46ff-96e0-5fd94b33df1a" + "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/fab3d2d4-747f-46a7-8ef0-9c0be8112bf7", + "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/8deb8303-e94d-46ff-96e0-5fd94b33df1a" ], "additionalData": { "alertsCount": 0, diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/incidents/comments/CreateIncidentComment.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/incidents/comments/CreateIncidentComment.json index c14515e36f4c..c5bf2a226e10 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/incidents/comments/CreateIncidentComment.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/incidents/comments/CreateIncidentComment.json @@ -15,7 +15,7 @@ "responses": { "201": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5/comments/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5/comments/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "type": "Microsoft.SecurityInsights/incidents/comments", "properties": { diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/incidents/comments/GetAllIncidentComments.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/incidents/comments/GetAllIncidentComments.json index 63d4de097b65..257807034921 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/incidents/comments/GetAllIncidentComments.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/incidents/comments/GetAllIncidentComments.json @@ -11,7 +11,7 @@ "body": { "value": [ { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5/comments/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5/comments/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "type": "Microsoft.SecurityInsights/incidents/comments", "properties": { diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/incidents/comments/GetIncidentCommentById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/incidents/comments/GetIncidentCommentById.json index 5874711a65b4..6ff96b83c4e9 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/incidents/comments/GetIncidentCommentById.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/incidents/comments/GetIncidentCommentById.json @@ -10,7 +10,7 @@ "responses": { "200": { "body": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5/comments/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5/comments/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "type": "Microsoft.SecurityInsights/incidents/comments", "properties": { diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2021-04-01/Incidents.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2021-04-01/Incidents.json new file mode 100644 index 000000000000..17389e311dfb --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2021-04-01/Incidents.json @@ -0,0 +1,3866 @@ +{ + "swagger": "2.0", + "info": { + "title": "Security Insights", + "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider", + "version": "2021-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.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/incidents": { + "get": { + "x-ms-examples": { + "Get all incidents.": { + "$ref": "./examples/incidents/GetIncidents.json" + } + }, + "tags": [ + "Incidents" + ], + "description": "Gets all incidents.", + "operationId": "Incidents_List", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/ODataFilter" + }, + { + "$ref": "#/parameters/ODataOrderBy" + }, + { + "$ref": "#/parameters/ODataTop" + }, + { + "$ref": "#/parameters/ODataSkipToken" + } + ], + "responses": { + "200": { + "description": "OK, Operation successfully completed", + "schema": { + "$ref": "#/definitions/IncidentList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/incidents/{incidentId}": { + "get": { + "x-ms-examples": { + "Get an incident.": { + "$ref": "./examples/incidents/GetIncidentById.json" + } + }, + "tags": [ + "Incidents" + ], + "description": "Gets a given incident.", + "operationId": "Incidents_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/IncidentId" + } + ], + "responses": { + "200": { + "description": "OK, Operation successfully completed", + "schema": { + "$ref": "#/definitions/Incident" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "x-ms-examples": { + "Creates or updates an incident.": { + "$ref": "./examples/incidents/CreateIncident.json" + } + }, + "tags": [ + "Incidents" + ], + "description": "Creates or updates an incident.", + "operationId": "Incidents_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/IncidentId" + }, + { + "$ref": "#/parameters/Incident" + } + ], + "responses": { + "200": { + "description": "OK, Operation successfully completed", + "schema": { + "$ref": "#/definitions/Incident" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/Incident" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "x-ms-examples": { + "Delete an incident.": { + "$ref": "./examples/incidents/DeleteIncident.json" + } + }, + "tags": [ + "Incidents" + ], + "description": "Deletes a given incident.", + "operationId": "Incidents_Delete", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/IncidentId" + } + ], + "responses": { + "200": { + "description": "OK, Operation successfully completed" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/incidents/{incidentId}/alerts": { + "post": { + "x-ms-examples": { + "Get all incident alerts.": { + "$ref": "./examples/incidents/GetAllIncidentAlerts.json" + } + }, + "tags": [ + "IncidentAlerts" + ], + "description": "Gets all alerts for an incident.", + "operationId": "Incidents_ListOfAlerts", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/IncidentId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/IncidentAlertList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/incidents/{incidentId}/bookmarks": { + "post": { + "x-ms-examples": { + "Get all incident bookmarks.": { + "$ref": "./examples/incidents/GetAllIncidentBookmarks.json" + } + }, + "tags": [ + "IncidentBookmarks" + ], + "description": "Gets all bookmarks for an incident.", + "operationId": "Incidents_ListOfBookmarks", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/IncidentId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/IncidentBookmarkList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/incidents/{incidentId}/comments": { + "get": { + "x-ms-examples": { + "Get all incident comments.": { + "$ref": "./examples/incidents/comments/GetAllIncidentComments.json" + } + }, + "tags": [ + "IncidentComments" + ], + "description": "Gets all comments for a given incident.", + "operationId": "IncidentComments_ListByIncident", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/IncidentId" + }, + { + "$ref": "#/parameters/ODataFilter" + }, + { + "$ref": "#/parameters/ODataOrderBy" + }, + { + "$ref": "#/parameters/ODataTop" + }, + { + "$ref": "#/parameters/ODataSkipToken" + } + ], + "responses": { + "200": { + "description": "OK, Operation successfully completed", + "schema": { + "$ref": "#/definitions/IncidentCommentList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-odata": "#/definitions/IncidentComment", + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/incidents/{incidentId}/comments/{incidentCommentId}": { + "get": { + "x-ms-examples": { + "Get an incident comment.": { + "$ref": "./examples/incidents/comments/GetIncidentCommentById.json" + } + }, + "tags": [ + "IncidentComments" + ], + "description": "Gets a comment for a given incident.", + "operationId": "IncidentComments_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/IncidentId" + }, + { + "$ref": "#/parameters/IncidentCommentId" + } + ], + "responses": { + "200": { + "description": "OK, Operation successfully completed", + "schema": { + "$ref": "#/definitions/IncidentComment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "x-ms-examples": { + "Creates or updates an incident comment.": { + "$ref": "./examples/incidents/comments/CreateIncidentComment.json" + } + }, + "tags": [ + "IncidentComments" + ], + "description": "Creates or updates a comment for a given incident.", + "operationId": "IncidentComments_CreateComment", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/IncidentId" + }, + { + "$ref": "#/parameters/IncidentCommentId" + }, + { + "$ref": "#/parameters/IncidentComment" + } + ], + "responses": { + "200": { + "description": "Updated", + "schema": { + "$ref": "#/definitions/IncidentComment" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/IncidentComment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "x-ms-examples": { + "Delete the incident comment.": { + "$ref": "./examples/incidents/comments/DeleteIncidentComment.json" + } + }, + "tags": [ + "IncidentComments" + ], + "description": "Deletes a comment for a given incident.", + "operationId": "IncidentComments_DeleteComment", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/IncidentId" + }, + { + "$ref": "#/parameters/IncidentCommentId" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/incidents/{incidentId}/entities": { + "post": { + "x-ms-examples": { + "Gets all incident related entities": { + "$ref": "./examples/incidents/GetAllIncidentEntities.json" + } + }, + "tags": [ + "IncidentEntities" + ], + "description": "Gets all entities for an incident.", + "operationId": "Incidents_ListOfEntities", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/IncidentId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/IncidentEntitiesResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/incidents/{incidentId}/relations": { + "get": { + "x-ms-examples": { + "Get all incident relations.": { + "$ref": "./examples/incidents/relations/GetAllIncidentRelations.json" + } + }, + "tags": [ + "IncidentRelations" + ], + "description": "Gets all relations for a given incident.", + "operationId": "IncidentRelations_List", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/IncidentId" + }, + { + "$ref": "#/parameters/ODataFilter" + }, + { + "$ref": "#/parameters/ODataOrderBy" + }, + { + "$ref": "#/parameters/ODataTop" + }, + { + "$ref": "#/parameters/ODataSkipToken" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RelationList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-odata": "#/definitions/Relation", + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/incidents/{incidentId}/relations/{relationName}": { + "get": { + "x-ms-examples": { + "Get an incident relation.": { + "$ref": "./examples/incidents/relations/GetIncidentRelationByName.json" + } + }, + "tags": [ + "IncidentRelations" + ], + "description": "Gets a relation for a given incident.", + "operationId": "IncidentRelations_GetRelation", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/IncidentId" + }, + { + "$ref": "#/parameters/RelationName" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Relation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "x-ms-examples": { + "Creates or updates an incident relation.": { + "$ref": "./examples/incidents/relations/CreateIncidentRelation.json" + } + }, + "tags": [ + "IncidentRelations" + ], + "description": "Creates or updates a relation for a given incident.", + "operationId": "IncidentRelations_CreateOrUpdateRelation", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/IncidentId" + }, + { + "$ref": "#/parameters/RelationName" + }, + { + "$ref": "#/parameters/Relation" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Relation" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/Relation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "x-ms-examples": { + "Delete the incident relation.": { + "$ref": "./examples/incidents/relations/DeleteIncidentRelation.json" + } + }, + "tags": [ + "IncidentRelations" + ], + "description": "Deletes a relation for a given incident.", + "operationId": "IncidentRelations_DeleteRelation", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "../../../common/1.0/types.json#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/IncidentId" + }, + { + "$ref": "#/parameters/RelationName" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "AccountEntity": { + "allOf": [ + { + "$ref": "#/definitions/Entity" + } + ], + "description": "Represents an account entity.", + "properties": { + "properties": { + "$ref": "#/definitions/AccountEntityProperties", + "description": "Account entity properties", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "Account" + }, + "AccountEntityProperties": { + "allOf": [ + { + "$ref": "#/definitions/EntityCommonProperties" + } + ], + "description": "Account entity property bag.", + "properties": { + "aadTenantId": { + "description": "The Azure Active Directory tenant id.", + "readOnly": true, + "type": "string" + }, + "aadUserId": { + "description": "The Azure Active Directory user id.", + "readOnly": true, + "type": "string" + }, + "accountName": { + "description": "The name of the account. This field should hold only the name without any domain added to it, i.e. administrator.", + "readOnly": true, + "type": "string" + }, + "displayName": { + "description": "The display name of the account.", + "readOnly": true, + "type": "string" + }, + "hostEntityId": { + "description": "The Host entity id that contains the account in case it is a local account (not domain joined)", + "readOnly": true, + "type": "string" + }, + "isDomainJoined": { + "description": "Determines whether this is a domain account.", + "readOnly": true, + "type": "boolean" + }, + "ntDomain": { + "description": "The NetBIOS domain name as it appears in the alert format – domain\\username. Examples: NT AUTHORITY.", + "readOnly": true, + "type": "string" + }, + "objectGuid": { + "description": "The objectGUID attribute is a single-value attribute that is the unique identifier for the object, assigned by active directory.", + "format": "uuid", + "readOnly": true, + "type": "string" + }, + "puid": { + "description": "The Azure Active Directory Passport User ID.", + "readOnly": true, + "type": "string" + }, + "sid": { + "description": "The account security identifier, e.g. S-1-5-18.", + "readOnly": true, + "type": "string" + }, + "upnSuffix": { + "description": "The user principal name suffix for the account, in some cases it is also the domain name. Examples: contoso.com.", + "readOnly": true, + "type": "string" + }, + "dnsDomain": { + "description": "The fully qualified domain DNS name.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "AlertSeverity": { + "description": "The severity of the alert", + "enum": [ + "High", + "Medium", + "Low", + "Informational" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "AlertSeverity", + "values": [ + { + "description": "High severity", + "value": "High" + }, + { + "description": "Medium severity", + "value": "Medium" + }, + { + "description": "Low severity", + "value": "Low" + }, + { + "description": "Informational severity", + "value": "Informational" + } + ] + } + }, + "AttackTactic": { + "description": "The severity for alerts created by this alert rule.", + "enum": [ + "InitialAccess", + "Execution", + "Persistence", + "PrivilegeEscalation", + "DefenseEvasion", + "CredentialAccess", + "Discovery", + "LateralMovement", + "Collection", + "Exfiltration", + "CommandAndControl", + "Impact" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "AttackTactic" + } + }, + "AzureResourceEntity": { + "allOf": [ + { + "$ref": "#/definitions/Entity" + } + ], + "description": "Represents an azure resource entity.", + "properties": { + "properties": { + "$ref": "#/definitions/AzureResourceEntityProperties", + "description": "AzureResource entity properties", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "AzureResource" + }, + "AzureResourceEntityProperties": { + "allOf": [ + { + "$ref": "#/definitions/EntityCommonProperties" + } + ], + "description": "AzureResource entity property bag.", + "properties": { + "resourceId": { + "description": "The azure resource id of the resource", + "readOnly": true, + "type": "string" + }, + "subscriptionId": { + "description": "The subscription id of the resource", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "ClientInfo": { + "description": "Information on the client (user or application) that made some action", + "properties": { + "email": { + "description": "The email of the client.", + "type": "string" + }, + "name": { + "description": "The name of the client.", + "type": "string" + }, + "objectId": { + "description": "The object id of the client.", + "format": "uuid", + "type": "string" + }, + "userPrincipalName": { + "description": "The user principal name of the client.", + "type": "string" + } + }, + "type": "object" + }, + "CloudApplicationEntity": { + "allOf": [ + { + "$ref": "#/definitions/Entity" + } + ], + "description": "Represents a cloud application entity.", + "properties": { + "properties": { + "$ref": "#/definitions/CloudApplicationEntityProperties", + "description": "CloudApplication entity properties", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "CloudApplication" + }, + "CloudApplicationEntityProperties": { + "allOf": [ + { + "$ref": "#/definitions/EntityCommonProperties" + } + ], + "description": "CloudApplication entity property bag.", + "properties": { + "appId": { + "description": "The technical identifier of the application.", + "readOnly": true, + "type": "integer", + "format": "int32" + }, + "appName": { + "description": "The name of the related cloud application.", + "readOnly": true, + "type": "string" + }, + "instanceName": { + "description": "The user defined instance name of the cloud application. It is often used to distinguish between several applications of the same type that a customer has.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The error object of the CloudError response" + } + }, + "description": "An error response for a resource management request." + }, + "DnsEntity": { + "allOf": [ + { + "$ref": "#/definitions/Entity" + } + ], + "description": "Represents a dns entity.", + "properties": { + "properties": { + "$ref": "#/definitions/DnsEntityProperties", + "description": "Dns entity properties", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "DnsResolution" + }, + "DnsEntityProperties": { + "allOf": [ + { + "$ref": "#/definitions/EntityCommonProperties" + } + ], + "description": "Dns entity property bag.", + "properties": { + "dnsServerIpEntityId": { + "description": "An ip entity id for the dns server resolving the request", + "readOnly": true, + "type": "string" + }, + "domainName": { + "description": "The name of the dns record associated with the alert", + "readOnly": true, + "type": "string" + }, + "hostIpAddressEntityId": { + "description": "An ip entity id for the dns request client", + "readOnly": true, + "type": "string" + }, + "ipAddressEntityIds": { + "description": "Ip entity identifiers for the resolved ip address.", + "items": { + "description": "Ip entity id", + "type": "string" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "Entity": { + "allOf": [ + { + "$ref": "../../../common/1.0/types.json#/definitions/Resource" + }, + { + "$ref": "#/definitions/EntityKind" + } + ], + "description": "Specific entity.", + "discriminator": "kind", + "type": "object", + "required": [ + "kind" + ] + }, + "EntityCommonProperties": { + "description": "Entity common property bag.", + "properties": { + "additionalData": { + "additionalProperties": { + "type": "object" + }, + "description": "A bag of custom fields that should be part of the entity and will be presented to the user.", + "readOnly": true, + "type": "object" + }, + "friendlyName": { + "description": "The graph item display name which is a short humanly readable description of the graph item instance. This property is optional and might be system generated.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "EntityEdges": { + "description": "The edge that connects the entity to the other entity.", + "properties": { + "targetEntityId": { + "description": "The target entity Id.", + "type": "string" + }, + "additionalData": { + "additionalProperties": { + "type": "object" + }, + "description": "A bag of custom fields that should be part of the entity and will be presented to the user.", + "type": "object" + } + }, + "type": "object" + }, + "EntityInnerKind": { + "description": "The kind of the entity", + "enum": [ + "Account", + "Host", + "File", + "AzureResource", + "CloudApplication", + "DnsResolution", + "FileHash", + "Ip", + "Malware", + "Process", + "RegistryKey", + "RegistryValue", + "SecurityGroup", + "Url", + "IoTDevice", + "SecurityAlert", + "Bookmark", + "Mailbox", + "MailCluster", + "MailMessage", + "SubmissionMail" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "EntityKindEnum", + "values": [ + { + "description": "Entity represents account in the system.", + "value": "Account" + }, + { + "description": "Entity represents host in the system.", + "value": "Host" + }, + { + "description": "Entity represents file in the system.", + "value": "File" + }, + { + "description": "Entity represents azure resource in the system.", + "value": "AzureResource" + }, + { + "description": "Entity represents cloud application in the system.", + "value": "CloudApplication" + }, + { + "description": "Entity represents dns resolution in the system.", + "value": "DnsResolution" + }, + { + "description": "Entity represents file hash in the system.", + "value": "FileHash" + }, + { + "description": "Entity represents ip in the system.", + "value": "Ip" + }, + { + "description": "Entity represents malware in the system.", + "value": "Malware" + }, + { + "description": "Entity represents process in the system.", + "value": "Process" + }, + { + "description": "Entity represents registry key in the system.", + "value": "RegistryKey" + }, + { + "description": "Entity represents registry value in the system.", + "value": "RegistryValue" + }, + { + "description": "Entity represents security group in the system.", + "value": "SecurityGroup" + }, + { + "description": "Entity represents url in the system.", + "value": "Url" + }, + { + "description": "Entity represents IoT device in the system.", + "value": "IoTDevice" + }, + { + "description": "Entity represents security alert in the system.", + "value": "SecurityAlert" + }, + { + "description": "Entity represents bookmark in the system.", + "value": "Bookmark" + }, + { + "description": "Entity represents mail cluster in the system.", + "value": "MailCluster" + }, + { + "description": "Entity represents mail message in the system.", + "value": "MailMessage" + }, + { + "description": "Entity represents mailbox in the system.", + "value": "Mailbox" + }, + { + "description": "Entity represents submission mail in the system.", + "value": "SubmissionMail" + } + ] + } + }, + "EntityKind": { + "description": "Describes an entity with kind.", + "properties": { + "kind": { + "$ref": "#/definitions/EntityInnerKind", + "description": "The kind of the entity." + } + }, + "required": [ + "kind" + ], + "type": "object" + }, + "FileEntity": { + "allOf": [ + { + "$ref": "#/definitions/Entity" + } + ], + "description": "Represents a file entity.", + "properties": { + "properties": { + "$ref": "#/definitions/FileEntityProperties", + "description": "File entity properties", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "File" + }, + "FileEntityProperties": { + "allOf": [ + { + "$ref": "#/definitions/EntityCommonProperties" + } + ], + "description": "File entity property bag.", + "properties": { + "directory": { + "description": "The full path to the file.", + "readOnly": true, + "type": "string" + }, + "fileHashEntityIds": { + "description": "The file hash entity identifiers associated with this file", + "items": { + "description": "file hash id", + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "fileName": { + "description": "The file name without path (some alerts might not include path).", + "readOnly": true, + "type": "string" + }, + "hostEntityId": { + "description": "The Host entity id which the file belongs to", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "FileHashEntity": { + "allOf": [ + { + "$ref": "#/definitions/Entity" + } + ], + "description": "Represents a file hash entity.", + "properties": { + "properties": { + "$ref": "#/definitions/FileHashEntityProperties", + "description": "FileHash entity properties", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "FileHash" + }, + "FileHashEntityProperties": { + "allOf": [ + { + "$ref": "#/definitions/EntityCommonProperties" + } + ], + "description": "FileHash entity property bag.", + "properties": { + "algorithm": { + "description": "The hash algorithm type.", + "enum": [ + "Unknown", + "MD5", + "SHA1", + "SHA256", + "SHA256AC" + ], + "readOnly": true, + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "FileHashAlgorithm", + "values": [ + { + "description": "Unknown hash algorithm", + "value": "Unknown" + }, + { + "description": "MD5 hash type", + "value": "MD5" + }, + { + "description": "SHA1 hash type", + "value": "SHA1" + }, + { + "description": "SHA256 hash type", + "value": "SHA256" + }, + { + "description": "SHA256 Authenticode hash type", + "value": "SHA256AC" + } + ] + } + }, + "hashValue": { + "description": "The file hash value.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "GeoLocation": { + "description": "The geo-location context attached to the ip entity", + "properties": { + "asn": { + "description": "Autonomous System Number", + "readOnly": true, + "type": "integer", + "format": "int32" + }, + "city": { + "description": "City name", + "readOnly": true, + "type": "string" + }, + "countryCode": { + "description": "The country code according to ISO 3166 format", + "readOnly": true, + "type": "string" + }, + "countryName": { + "description": "Country name according to ISO 3166 Alpha 2: the lowercase of the English Short Name", + "readOnly": true, + "type": "string" + }, + "latitude": { + "description": "The longitude of the identified location, expressed as a floating point number with range of -180 to 180, with positive numbers representing East and negative numbers representing West. Latitude and longitude are derived from the city or postal code.", + "format": "double", + "readOnly": true, + "type": "number" + }, + "longitude": { + "description": "The latitude of the identified location, expressed as a floating point number with range of - 90 to 90, with positive numbers representing North and negative numbers representing South. Latitude and longitude are derived from the city or postal code.", + "format": "double", + "readOnly": true, + "type": "number" + }, + "state": { + "description": "State name", + "readOnly": true, + "type": "string" + } + }, + "readOnly": true, + "type": "object" + }, + "HostEntity": { + "allOf": [ + { + "$ref": "#/definitions/Entity" + } + ], + "description": "Represents a host entity.", + "properties": { + "properties": { + "$ref": "#/definitions/HostEntityProperties", + "description": "Host entity properties", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "Host" + }, + "HostEntityProperties": { + "allOf": [ + { + "$ref": "#/definitions/EntityCommonProperties" + } + ], + "description": "Host entity property bag.", + "properties": { + "azureID": { + "description": "The azure resource id of the VM.", + "readOnly": true, + "type": "string" + }, + "dnsDomain": { + "description": "The DNS domain that this host belongs to. Should contain the compete DNS suffix for the domain", + "readOnly": true, + "type": "string" + }, + "hostName": { + "description": "The hostname without the domain suffix.", + "readOnly": true, + "type": "string" + }, + "isDomainJoined": { + "description": "Determines whether this host belongs to a domain.", + "readOnly": true, + "type": "boolean" + }, + "netBiosName": { + "description": "The host name (pre-windows2000).", + "readOnly": true, + "type": "string" + }, + "ntDomain": { + "description": "The NT domain that this host belongs to.", + "readOnly": true, + "type": "string" + }, + "omsAgentID": { + "description": "The OMS agent id, if the host has OMS agent installed.", + "readOnly": true, + "type": "string" + }, + "osFamily": { + "description": "The operating system type.", + "enum": [ + "Linux", + "Windows", + "Android", + "IOS", + "Unknown" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": false, + "name": "OSFamily", + "values": [ + { + "description": "Host with Linux operating system.", + "value": "Linux" + }, + { + "description": "Host with Windows operating system.", + "value": "Windows" + }, + { + "description": "Host with Android operating system.", + "value": "Android" + }, + { + "description": "Host with IOS operating system.", + "value": "IOS" + }, + { + "description": "Host with Unknown operating system.", + "value": "Unknown" + } + ] + } + }, + "osVersion": { + "description": "A free text representation of the operating system. This field is meant to hold specific versions the are more fine grained than OSFamily or future values not supported by OSFamily enumeration", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "HuntingBookmark": { + "allOf": [ + { + "$ref": "#/definitions/Entity" + } + ], + "description": "Represents a Hunting bookmark entity.", + "properties": { + "properties": { + "$ref": "#/definitions/HuntingBookmarkProperties", + "description": "HuntingBookmark entity properties", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "Bookmark" + }, + "HuntingBookmarkProperties": { + "allOf": [ + { + "$ref": "#/definitions/EntityCommonProperties" + } + ], + "description": "Describes bookmark properties", + "properties": { + "created": { + "description": "The time the bookmark was created", + "format": "date-time", + "type": "string" + }, + "createdBy": { + "$ref": "#/definitions/UserInfo", + "description": "Describes a user that created the bookmark", + "type": "object" + }, + "displayName": { + "description": "The display name of the bookmark", + "type": "string" + }, + "eventTime": { + "description": "The time of the event", + "format": "date-time", + "type": "string" + }, + "labels": { + "description": "List of labels relevant to this bookmark", + "items": { + "$ref": "#/definitions/Label" + }, + "type": "array" + }, + "notes": { + "description": "The notes of the bookmark", + "type": "string" + }, + "query": { + "description": "The query of the bookmark.", + "type": "string" + }, + "queryResult": { + "description": "The query result of the bookmark.", + "type": "string" + }, + "updated": { + "description": "The last time the bookmark was updated", + "format": "date-time", + "type": "string" + }, + "updatedBy": { + "$ref": "#/definitions/UserInfo", + "description": "Describes a user that updated the bookmark", + "type": "object" + }, + "incidentInfo": { + "$ref": "#/definitions/IncidentInfo", + "description": "Describes an incident that relates to bookmark", + "type": "object" + } + }, + "required": [ + "displayName", + "query" + ], + "type": "object" + }, + "Incident": { + "allOf": [ + { + "$ref": "../../../common/1.0/types.json#/definitions/ResourceWithEtag" + } + ], + "description": "Represents an incident in Azure Security Insights.", + "properties": { + "properties": { + "$ref": "#/definitions/IncidentProperties", + "description": "Incident properties", + "x-ms-client-flatten": true + } + }, + "type": "object" + }, + "IncidentAdditionalData": { + "description": "Incident additional data property bag.", + "properties": { + "alertsCount": { + "description": "The number of alerts in the incident", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "bookmarksCount": { + "description": "The number of bookmarks in the incident", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "commentsCount": { + "description": "The number of comments in the incident", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "alertProductNames": { + "description": "List of product names of alerts in the incident", + "items": { + "description": "Alert product name", + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "tactics": { + "description": "The tactics associated with incident", + "items": { + "$ref": "#/definitions/AttackTactic" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "IncidentAlertList": { + "description": "List of incident alerts.", + "properties": { + "value": { + "description": "Array of incident alerts.", + "type": "array", + "items": { + "$ref": "#/definitions/SecurityAlert" + } + } + }, + "required": [ + "value" + ] + }, + "IncidentBookmarkList": { + "description": "List of incident bookmarks.", + "properties": { + "value": { + "description": "Array of incident bookmarks.", + "type": "array", + "items": { + "$ref": "#/definitions/HuntingBookmark" + } + } + }, + "required": [ + "value" + ] + }, + "IncidentComment": { + "allOf": [ + { + "$ref": "../../../common/1.0/types.json#/definitions/ResourceWithEtag" + } + ], + "description": "Represents an incident comment", + "properties": { + "properties": { + "$ref": "#/definitions/IncidentCommentProperties", + "description": "Incident comment properties", + "x-ms-client-flatten": true + } + }, + "type": "object" + }, + "IncidentCommentList": { + "description": "List of incident comments.", + "properties": { + "nextLink": { + "description": "URL to fetch the next set of comments.", + "readOnly": true, + "type": "string" + }, + "value": { + "description": "Array of comments.", + "items": { + "$ref": "#/definitions/IncidentComment" + }, + "type": "array" + } + }, + "required": [ + "value" + ] + }, + "IncidentCommentProperties": { + "description": "Incident comment property bag.", + "properties": { + "createdTimeUtc": { + "description": "The time the comment was created", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "lastModifiedTimeUtc": { + "description": "The time the comment was updated", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "message": { + "description": "The comment message", + "type": "string" + }, + "author": { + "$ref": "#/definitions/ClientInfo", + "description": "Describes the client that created the comment", + "readOnly": true, + "type": "object" + } + }, + "required": [ + "message" + ], + "type": "object" + }, + "IncidentEntitiesResponse": { + "description": "The incident related entities response.", + "properties": { + "entities": { + "description": "Array of the incident related entities.", + "type": "array", + "items": { + "$ref": "#/definitions/Entity" + } + }, + "metaData": { + "description": "The metadata from the incident related entities results.", + "type": "array", + "items": { + "$ref": "#/definitions/IncidentEntitiesResultsMetadata" + } + } + } + }, + "IncidentEntitiesResultsMetadata": { + "description": "Information of a specific aggregation in the incident related entities result.", + "properties": { + "count": { + "description": "Total number of aggregations of the given kind in the incident related entities result.", + "type": "integer", + "format": "int32" + }, + "entityKind": { + "$ref": "#/definitions/EntityInnerKind", + "description": "The kind of the aggregated entity." + } + }, + "required": [ + "entityKind", + "count" + ], + "type": "object" + }, + "IncidentInfo": { + "description": "Describes related incident information for the bookmark", + "properties": { + "incidentId": { + "description": "Incident Id", + "type": "string" + }, + "severity": { + "description": "The severity of the incident", + "enum": [ + "Critical", + "High", + "Medium", + "Low", + "Informational" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "CaseSeverity", + "values": [ + { + "description": "Critical severity", + "value": "Critical" + }, + { + "description": "High severity", + "value": "High" + }, + { + "description": "Medium severity", + "value": "Medium" + }, + { + "description": "Low severity", + "value": "Low" + }, + { + "description": "Informational severity", + "value": "Informational" + } + ] + } + }, + "title": { + "description": "The title of the incident", + "type": "string" + }, + "relationName": { + "description": "Relation Name", + "type": "string" + } + }, + "type": "object" + }, + "IncidentLabel": { + "description": "Represents an incident label", + "properties": { + "labelName": { + "description": "The name of the label", + "type": "string" + }, + "labelType": { + "description": "The type of the label", + "enum": [ + "User", + "System" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "modelAsString": true, + "name": "IncidentLabelType", + "values": [ + { + "description": "Label manually created by a user", + "value": "User" + }, + { + "description": "Label automatically created by the system", + "value": "System" + } + ] + } + } + }, + "required": [ + "labelName" + ], + "type": "object" + }, + "IncidentList": { + "description": "List all the incidents.", + "properties": { + "nextLink": { + "description": "URL to fetch the next set of incidents.", + "readOnly": true, + "type": "string" + }, + "value": { + "description": "Array of incidents.", + "items": { + "$ref": "#/definitions/Incident" + }, + "type": "array" + } + }, + "required": [ + "value" + ] + }, + "IncidentOwnerInfo": { + "description": "Information on the user an incident is assigned to", + "properties": { + "email": { + "description": "The email of the user the incident is assigned to.", + "type": "string" + }, + "assignedTo": { + "description": "The name of the user the incident is assigned to.", + "type": "string" + }, + "objectId": { + "description": "The object id of the user the incident is assigned to.", + "format": "uuid", + "type": "string" + }, + "userPrincipalName": { + "description": "The user principal name of the user the incident is assigned to.", + "type": "string" + } + }, + "type": "object" + }, + "IncidentProperties": { + "description": "Describes incident properties", + "properties": { + "additionalData": { + "$ref": "#/definitions/IncidentAdditionalData", + "description": "Additional data on the incident", + "readOnly": true, + "type": "object" + }, + "classification": { + "description": "The reason the incident was closed", + "enum": [ + "Undetermined", + "TruePositive", + "BenignPositive", + "FalsePositive" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "IncidentClassification", + "values": [ + { + "description": "Incident classification was undetermined", + "value": "Undetermined" + }, + { + "description": "Incident was true positive", + "value": "TruePositive" + }, + { + "description": "Incident was benign positive", + "value": "BenignPositive" + }, + { + "description": "Incident was false positive", + "value": "FalsePositive" + } + ] + } + }, + "classificationComment": { + "description": "Describes the reason the incident was closed", + "type": "string" + }, + "classificationReason": { + "description": "The classification reason the incident was closed with", + "enum": [ + "SuspiciousActivity", + "SuspiciousButExpected", + "IncorrectAlertLogic", + "InaccurateData" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "IncidentClassificationReason", + "values": [ + { + "description": "Classification reason was suspicious activity", + "value": "SuspiciousActivity" + }, + { + "description": "Classification reason was suspicious but expected", + "value": "SuspiciousButExpected" + }, + { + "description": "Classification reason was incorrect alert logic", + "value": "IncorrectAlertLogic" + }, + { + "description": "Classification reason was inaccurate data", + "value": "InaccurateData" + } + ] + } + }, + "createdTimeUtc": { + "description": "The time the incident was created", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "The description of the incident", + "type": "string" + }, + "firstActivityTimeUtc": { + "description": "The time of the first activity in the incident", + "format": "date-time", + "type": "string" + }, + "incidentUrl": { + "description": "The deep-link url to the incident in Azure portal", + "readOnly": true, + "type": "string" + }, + "incidentNumber": { + "description": "A sequential number", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "labels": { + "description": "List of labels relevant to this incident", + "items": { + "$ref": "#/definitions/IncidentLabel" + }, + "type": "array" + }, + "lastActivityTimeUtc": { + "description": "The time of the last activity in the incident", + "format": "date-time", + "type": "string" + }, + "lastModifiedTimeUtc": { + "description": "The last time the incident was updated", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "owner": { + "$ref": "#/definitions/IncidentOwnerInfo", + "description": "Describes a user that the incident is assigned to", + "type": "object" + }, + "relatedAnalyticRuleIds": { + "description": "List of resource ids of Analytic rules related to the incident", + "items": { + "description": "Related Analytic rule resource id", + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "severity": { + "description": "The severity of the incident", + "enum": [ + "High", + "Medium", + "Low", + "Informational" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "IncidentSeverity", + "values": [ + { + "description": "High severity", + "value": "High" + }, + { + "description": "Medium severity", + "value": "Medium" + }, + { + "description": "Low severity", + "value": "Low" + }, + { + "description": "Informational severity", + "value": "Informational" + } + ] + } + }, + "status": { + "description": "The status of the incident", + "enum": [ + "New", + "Active", + "Closed" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "IncidentStatus", + "values": [ + { + "description": "An active incident which isn't being handled currently", + "value": "New" + }, + { + "description": "An active incident which is being handled", + "value": "Active" + }, + { + "description": "A non-active incident", + "value": "Closed" + } + ] + } + }, + "title": { + "description": "The title of the incident", + "type": "string" + } + }, + "required": [ + "title", + "severity", + "status" + ], + "type": "object" + }, + "IoTDeviceEntity": { + "allOf": [ + { + "$ref": "#/definitions/Entity" + } + ], + "description": "Represents an IoT device entity.", + "properties": { + "properties": { + "$ref": "#/definitions/IoTDeviceEntityProperties", + "description": "IoTDevice entity properties", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "IoTDevice" + }, + "IoTDeviceEntityProperties": { + "allOf": [ + { + "$ref": "#/definitions/EntityCommonProperties" + } + ], + "description": "IoTDevice entity property bag.", + "properties": { + "deviceId": { + "description": "The ID of the IoT Device in the IoT Hub", + "readOnly": true, + "type": "string" + }, + "deviceName": { + "description": "The friendly name of the device", + "readOnly": true, + "type": "string" + }, + "source": { + "description": "The source of the device", + "readOnly": true, + "type": "string" + }, + "iotSecurityAgentId": { + "description": "The ID of the security agent running on the device", + "format": "uuid", + "readOnly": true, + "type": "string" + }, + "deviceType": { + "description": "The type of the device", + "readOnly": true, + "type": "string" + }, + "vendor": { + "description": "The vendor of the device", + "readOnly": true, + "type": "string" + }, + "edgeId": { + "description": "The ID of the edge device", + "readOnly": true, + "type": "string" + }, + "macAddress": { + "description": "The MAC address of the device", + "readOnly": true, + "type": "string" + }, + "model": { + "description": "The model of the device", + "readOnly": true, + "type": "string" + }, + "serialNumber": { + "description": "The serial number of the device", + "readOnly": true, + "type": "string" + }, + "firmwareVersion": { + "description": "The firmware version of the device", + "readOnly": true, + "type": "string" + }, + "operatingSystem": { + "description": "The operating system of the device", + "readOnly": true, + "type": "string" + }, + "iotHubEntityId": { + "description": "The AzureResource entity id of the IoT Hub", + "readOnly": true, + "type": "string" + }, + "hostEntityId": { + "description": "The Host entity id of this device", + "readOnly": true, + "type": "string" + }, + "ipAddressEntityId": { + "description": "The IP entity if of this device", + "readOnly": true, + "type": "string" + }, + "threatIntelligence": { + "description": "A list of TI contexts attached to the IoTDevice entity.", + "items": { + "$ref": "#/definitions/ThreatIntelligence" + }, + "readOnly": true, + "type": "array" + }, + "protocols": { + "description": "A list of protocols of the IoTDevice entity.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "IpEntity": { + "allOf": [ + { + "$ref": "#/definitions/Entity" + } + ], + "description": "Represents an ip entity.", + "properties": { + "properties": { + "$ref": "#/definitions/IpEntityProperties", + "description": "Ip entity properties", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "Ip" + }, + "IpEntityProperties": { + "allOf": [ + { + "$ref": "#/definitions/EntityCommonProperties" + } + ], + "description": "Ip entity property bag.", + "properties": { + "address": { + "description": "The IP address as string, e.g. 127.0.0.1 (either in Ipv4 or Ipv6)", + "readOnly": true, + "type": "string" + }, + "location": { + "$ref": "#/definitions/GeoLocation", + "description": "The geo-location context attached to the ip entity" + }, + "threatIntelligence": { + "description": "A list of TI contexts attached to the ip entity.", + "items": { + "$ref": "#/definitions/ThreatIntelligence" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "Label": { + "description": "Label that will be used to tag and filter on.", + "type": "string" + }, + "MailboxEntity": { + "allOf": [ + { + "$ref": "#/definitions/Entity" + } + ], + "description": "Represents a mailbox entity.", + "properties": { + "properties": { + "$ref": "#/definitions/MailboxEntityProperties", + "description": "Mailbox entity properties", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "Mailbox" + }, + "MailboxEntityProperties": { + "allOf": [ + { + "$ref": "#/definitions/EntityCommonProperties" + } + ], + "description": "Mailbox entity property bag.", + "properties": { + "mailboxPrimaryAddress": { + "description": "The mailbox's primary address", + "readOnly": true, + "type": "string" + }, + "displayName": { + "description": "The mailbox's display name", + "readOnly": true, + "type": "string" + }, + "upn": { + "description": "The mailbox's UPN", + "readOnly": true, + "type": "string" + }, + "externalDirectoryObjectId": { + "description": "The AzureAD identifier of mailbox. Similar to AadUserId in account entity but this property is specific to mailbox object on office side", + "format": "uuid", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "MailClusterEntity": { + "allOf": [ + { + "$ref": "#/definitions/Entity" + } + ], + "description": "Represents a mail cluster entity.", + "properties": { + "properties": { + "$ref": "#/definitions/MailClusterEntityProperties", + "description": "Mail cluster entity properties", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "MailCluster" + }, + "MailClusterEntityProperties": { + "allOf": [ + { + "$ref": "#/definitions/EntityCommonProperties" + } + ], + "description": "Mail cluster entity property bag.", + "properties": { + "networkMessageIds": { + "description": "The mail message IDs that are part of the mail cluster", + "items": { + "description": "A mail message ID", + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "countByDeliveryStatus": { + "description": "Count of mail messages by DeliveryStatus string representation", + "readOnly": true, + "type": "object" + }, + "countByThreatType": { + "description": "Count of mail messages by ThreatType string representation", + "readOnly": true, + "type": "object" + }, + "countByProtectionStatus": { + "description": "Count of mail messages by ProtectionStatus string representation", + "readOnly": true, + "type": "object" + }, + "threats": { + "description": "The threats of mail messages that are part of the mail cluster", + "items": { + "description": "A threat", + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "query": { + "description": "The query that was used to identify the messages of the mail cluster", + "readOnly": true, + "type": "string" + }, + "queryTime": { + "description": "The query time", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "mailCount": { + "description": "The number of mail messages that are part of the mail cluster", + "readOnly": true, + "type": "integer", + "format": "int32" + }, + "isVolumeAnomaly": { + "description": "Is this a volume anomaly mail cluster", + "readOnly": true, + "type": "boolean" + }, + "source": { + "description": "The source of the mail cluster (default is 'O365 ATP')", + "readOnly": true, + "type": "string" + }, + "clusterSourceIdentifier": { + "description": "The id of the cluster source", + "readOnly": true, + "type": "string" + }, + "clusterSourceType": { + "description": "The type of the cluster source", + "readOnly": true, + "type": "string" + }, + "clusterQueryStartTime": { + "description": "The cluster query start time", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "clusterQueryEndTime": { + "description": "The cluster query end time", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "clusterGroup": { + "description": "The cluster group", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "MailMessageEntity": { + "allOf": [ + { + "$ref": "#/definitions/Entity" + } + ], + "description": "Represents a mail message entity.", + "properties": { + "properties": { + "$ref": "#/definitions/MailMessageEntityProperties", + "description": "Mail message entity properties", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "MailMessage" + }, + "MailMessageEntityProperties": { + "allOf": [ + { + "$ref": "#/definitions/EntityCommonProperties" + } + ], + "description": "Mail message entity property bag.", + "properties": { + "fileEntityIds": { + "description": "The File entity ids of this mail message's attachments", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "recipient": { + "description": "The recipient of this mail message. Note that in case of multiple recipients the mail message is forked and each copy has one recipient", + "readOnly": true, + "type": "string" + }, + "urls": { + "description": "The Urls contained in this mail message", + "items": { + "description": "A Url contained in this mail message", + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "threats": { + "description": "The threats of this mail message", + "items": { + "description": "A threat of the mail message", + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "p1Sender": { + "description": "The p1 sender's email address", + "readOnly": true, + "type": "string" + }, + "p1SenderDisplayName": { + "description": "The p1 sender's display name", + "readOnly": true, + "type": "string" + }, + "p1SenderDomain": { + "description": "The p1 sender's domain", + "readOnly": true, + "type": "string" + }, + "senderIP": { + "description": "The sender's IP address", + "readOnly": true, + "type": "string" + }, + "p2Sender": { + "description": "The p2 sender's email address", + "readOnly": true, + "type": "string" + }, + "p2SenderDisplayName": { + "description": "The p2 sender's display name", + "readOnly": true, + "type": "string" + }, + "p2SenderDomain": { + "description": "The p2 sender's domain", + "readOnly": true, + "type": "string" + }, + "receiveDate": { + "description": "The receive date of this message", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "networkMessageId": { + "description": "The network message id of this mail message", + "format": "uuid", + "readOnly": true, + "type": "string" + }, + "internetMessageId": { + "description": "The internet message id of this mail message", + "readOnly": true, + "type": "string" + }, + "subject": { + "description": "The subject of this mail message", + "readOnly": true, + "type": "string" + }, + "language": { + "description": "The language of this mail message", + "readOnly": true, + "type": "string" + }, + "threatDetectionMethods": { + "description": "The threat detection methods", + "items": { + "description": "A threat detection method", + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "bodyFingerprintBin1": { + "description": "The bodyFingerprintBin1", + "type": "integer", + "format": "int32" + }, + "bodyFingerprintBin2": { + "description": "The bodyFingerprintBin2", + "type": "integer", + "format": "int32" + }, + "bodyFingerprintBin3": { + "description": "The bodyFingerprintBin3", + "type": "integer", + "format": "int32" + }, + "bodyFingerprintBin4": { + "description": "The bodyFingerprintBin4", + "type": "integer", + "format": "int32" + }, + "bodyFingerprintBin5": { + "description": "The bodyFingerprintBin5", + "type": "integer", + "format": "int32" + }, + "antispamDirection": { + "description": "The directionality of this mail message", + "enum": [ + "Unknown", + "Inbound", + "Outbound", + "Intraorg" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "AntispamMailDirection", + "values": [ + { + "description": "Unknown", + "value": "Unknown" + }, + { + "description": "Inbound", + "value": "Inbound" + }, + { + "description": "Outbound", + "value": "Outbound" + }, + { + "description": "Intraorg", + "value": "Intraorg" + } + ] + } + }, + "deliveryAction": { + "description": "The delivery action of this mail message like Delivered, Blocked, Replaced etc", + "enum": [ + "Unknown", + "DeliveredAsSpam", + "Delivered", + "Blocked", + "Replaced" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": false, + "name": "DeliveryAction", + "values": [ + { + "description": "Unknown", + "value": "Unknown" + }, + { + "description": "DeliveredAsSpam", + "value": "DeliveredAsSpam" + }, + { + "description": "Delivered", + "value": "Delivered" + }, + { + "description": "Blocked", + "value": "Blocked" + }, + { + "description": "Replaced", + "value": "Replaced" + } + ] + } + }, + "deliveryLocation": { + "description": "The delivery location of this mail message like Inbox, JunkFolder etc", + "enum": [ + "Unknown", + "Inbox", + "JunkFolder", + "DeletedFolder", + "Quarantine", + "External", + "Failed", + "Dropped", + "Forwarded" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": false, + "name": "DeliveryLocation", + "values": [ + { + "description": "Unknown", + "value": "Unknown" + }, + { + "description": "Inbox", + "value": "Inbox" + }, + { + "description": "JunkFolder", + "value": "JunkFolder" + }, + { + "description": "DeletedFolder", + "value": "DeletedFolder" + }, + { + "description": "Quarantine", + "value": "Quarantine" + }, + { + "description": "External", + "value": "External" + }, + { + "description": "Failed", + "value": "Failed" + }, + { + "description": "Dropped", + "value": "Dropped" + }, + { + "description": "Forwarded", + "value": "Forwarded" + } + ] + } + } + }, + "type": "object" + }, + "MalwareEntity": { + "allOf": [ + { + "$ref": "#/definitions/Entity" + } + ], + "description": "Represents a malware entity.", + "properties": { + "properties": { + "$ref": "#/definitions/MalwareEntityProperties", + "description": "File entity properties", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "Malware" + }, + "MalwareEntityProperties": { + "allOf": [ + { + "$ref": "#/definitions/EntityCommonProperties" + } + ], + "description": "Malware entity property bag.", + "properties": { + "category": { + "description": "The malware category by the vendor, e.g. Trojan", + "readOnly": true, + "type": "string" + }, + "fileEntityIds": { + "description": "List of linked file entity identifiers on which the malware was found", + "items": { + "description": "file entity id", + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "malwareName": { + "description": "The malware name by the vendor, e.g. Win32/Toga!rfn", + "readOnly": true, + "type": "string" + }, + "processEntityIds": { + "description": "List of linked process entity identifiers on which the malware was found.", + "items": { + "description": "process entity id", + "type": "string" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "ProcessEntity": { + "allOf": [ + { + "$ref": "#/definitions/Entity" + } + ], + "description": "Represents a process entity.", + "properties": { + "properties": { + "$ref": "#/definitions/ProcessEntityProperties", + "description": "Process entity properties", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "Process" + }, + "ProcessEntityProperties": { + "allOf": [ + { + "$ref": "#/definitions/EntityCommonProperties" + } + ], + "description": "Process entity property bag.", + "properties": { + "accountEntityId": { + "description": "The account entity id running the processes.", + "readOnly": true, + "type": "string" + }, + "commandLine": { + "description": "The command line used to create the process", + "readOnly": true, + "type": "string" + }, + "creationTimeUtc": { + "description": "The time when the process started to run", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "elevationToken": { + "description": "The elevation token associated with the process.", + "enum": [ + "Default", + "Full", + "Limited" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": false, + "name": "ElevationToken", + "values": [ + { + "description": "Default elevation token", + "value": "Default" + }, + { + "description": "Full elevation token", + "value": "Full" + }, + { + "description": "Limited elevation token", + "value": "Limited" + } + ] + } + }, + "hostEntityId": { + "description": "The host entity id on which the process was running", + "readOnly": true, + "type": "string" + }, + "hostLogonSessionEntityId": { + "description": "The session entity id in which the process was running", + "readOnly": true, + "type": "string" + }, + "imageFileEntityId": { + "description": "Image file entity id", + "readOnly": true, + "type": "string" + }, + "parentProcessEntityId": { + "description": "The parent process entity id.", + "readOnly": true, + "type": "string" + }, + "processId": { + "description": "The process ID", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "RegistryKeyEntity": { + "allOf": [ + { + "$ref": "#/definitions/Entity" + } + ], + "description": "Represents a registry key entity.", + "properties": { + "properties": { + "$ref": "#/definitions/RegistryKeyEntityProperties", + "description": "RegistryKey entity properties", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "RegistryKey" + }, + "RegistryKeyEntityProperties": { + "allOf": [ + { + "$ref": "#/definitions/EntityCommonProperties" + } + ], + "description": "RegistryKey entity property bag.", + "properties": { + "hive": { + "description": "the hive that holds the registry key.", + "enum": [ + "HKEY_LOCAL_MACHINE", + "HKEY_CLASSES_ROOT", + "HKEY_CURRENT_CONFIG", + "HKEY_USERS", + "HKEY_CURRENT_USER_LOCAL_SETTINGS", + "HKEY_PERFORMANCE_DATA", + "HKEY_PERFORMANCE_NLSTEXT", + "HKEY_PERFORMANCE_TEXT", + "HKEY_A", + "HKEY_CURRENT_USER" + ], + "readOnly": true, + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "RegistryHive", + "values": [ + { + "description": "HKEY_LOCAL_MACHINE", + "value": "HKEY_LOCAL_MACHINE" + }, + { + "description": "HKEY_CLASSES_ROOT", + "value": "HKEY_CLASSES_ROOT" + }, + { + "description": "HKEY_CURRENT_CONFIG", + "value": "HKEY_CURRENT_CONFIG" + }, + { + "description": "HKEY_USERS", + "value": "HKEY_USERS" + }, + { + "description": "HKEY_CURRENT_USER_LOCAL_SETTINGS", + "value": "HKEY_CURRENT_USER_LOCAL_SETTINGS" + }, + { + "description": "HKEY_PERFORMANCE_DATA", + "value": "HKEY_PERFORMANCE_DATA" + }, + { + "description": "HKEY_PERFORMANCE_NLSTEXT", + "value": "HKEY_PERFORMANCE_NLSTEXT" + }, + { + "description": "HKEY_PERFORMANCE_TEXT", + "value": "HKEY_PERFORMANCE_TEXT" + }, + { + "description": "HKEY_A", + "value": "HKEY_A" + }, + { + "description": "HKEY_CURRENT_USER", + "value": "HKEY_CURRENT_USER" + } + ] + } + }, + "key": { + "description": "The registry key path.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "RegistryValueEntity": { + "allOf": [ + { + "$ref": "#/definitions/Entity" + } + ], + "description": "Represents a registry value entity.", + "properties": { + "properties": { + "$ref": "#/definitions/RegistryValueEntityProperties", + "description": "RegistryKey entity properties", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "RegistryValue" + }, + "RegistryValueEntityProperties": { + "allOf": [ + { + "$ref": "#/definitions/EntityCommonProperties" + } + ], + "description": "RegistryValue entity property bag.", + "properties": { + "keyEntityId": { + "description": "The registry key entity id.", + "readOnly": true, + "type": "string" + }, + "valueData": { + "description": "String formatted representation of the value data.", + "readOnly": true, + "type": "string" + }, + "valueName": { + "description": "The registry value name.", + "readOnly": true, + "type": "string" + }, + "valueType": { + "description": "Specifies the data types to use when storing values in the registry, or identifies the data type of a value in the registry.", + "enum": [ + "None", + "Unknown", + "String", + "ExpandString", + "Binary", + "DWord", + "MultiString", + "QWord" + ], + "readOnly": true, + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "RegistryValueKind", + "values": [ + { + "description": "None", + "value": "None" + }, + { + "description": "Unknown value type", + "value": "Unknown" + }, + { + "description": "String value type", + "value": "String" + }, + { + "description": "ExpandString value type", + "value": "ExpandString" + }, + { + "description": "Binary value type", + "value": "Binary" + }, + { + "description": "DWord value type", + "value": "DWord" + }, + { + "description": "MultiString value type", + "value": "MultiString" + }, + { + "description": "QWord value type", + "value": "QWord" + } + ] + } + } + }, + "type": "object" + }, + "Relation": { + "type": "object", + "description": "Represents a relation between two resources", + "allOf": [ + { + "$ref": "../../../common/1.0/types.json#/definitions/ResourceWithEtag" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/RelationProperties", + "description": "Relation properties", + "x-ms-client-flatten": true + } + } + }, + "RelationList": { + "description": "List of relations.", + "properties": { + "nextLink": { + "readOnly": true, + "description": "URL to fetch the next set of relations.", + "type": "string" + }, + "value": { + "description": "Array of relations.", + "type": "array", + "items": { + "$ref": "#/definitions/Relation" + } + } + }, + "required": [ + "value" + ] + }, + "RelationProperties": { + "description": "Relation property bag.", + "properties": { + "relatedResourceId": { + "description": "The resource ID of the related resource", + "type": "string" + }, + "relatedResourceName": { + "description": "The name of the related resource", + "readOnly": true, + "type": "string" + }, + "relatedResourceType": { + "description": "The resource type of the related resource", + "readOnly": true, + "type": "string" + }, + "relatedResourceKind": { + "description": "The resource kind of the related resource", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "relatedResourceId" + ], + "type": "object" + }, + "SecurityAlert": { + "allOf": [ + { + "$ref": "#/definitions/Entity" + } + ], + "description": "Represents a security alert entity.", + "properties": { + "properties": { + "$ref": "#/definitions/SecurityAlertProperties", + "description": "SecurityAlert entity properties", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "SecurityAlert" + }, + "SecurityAlertProperties": { + "allOf": [ + { + "$ref": "#/definitions/EntityCommonProperties" + } + ], + "description": "SecurityAlert entity property bag.", + "properties": { + "alertDisplayName": { + "description": "The display name of the alert.", + "readOnly": true, + "type": "string" + }, + "alertType": { + "description": "The type name of the alert.", + "readOnly": true, + "type": "string" + }, + "compromisedEntity": { + "description": "Display name of the main entity being reported on.", + "readOnly": true, + "type": "string" + }, + "confidenceLevel": { + "description": "The confidence level of this alert.", + "enum": [ + "Unknown", + "Low", + "High" + ], + "readOnly": true, + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "ConfidenceLevel", + "values": [ + { + "description": "Unknown confidence, the is the default value", + "value": "Unknown" + }, + { + "description": "Low confidence, meaning we have some doubts this is indeed malicious or part of an attack", + "value": "Low" + }, + { + "description": "High confidence that the alert is true positive malicious", + "value": "High" + } + ] + } + }, + "confidenceReasons": { + "description": "The confidence reasons", + "items": { + "description": "confidence reason item", + "properties": { + "reason": { + "description": "The reason's description", + "readOnly": true, + "type": "string" + }, + "reasonType": { + "description": "The type (category) of the reason", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "readOnly": true, + "type": "array" + }, + "confidenceScore": { + "description": "The confidence score of the alert.", + "format": "double", + "readOnly": true, + "type": "number" + }, + "confidenceScoreStatus": { + "description": "The confidence score calculation status, i.e. indicating if score calculation is pending for this alert, not applicable or final.", + "enum": [ + "NotApplicable", + "InProcess", + "NotFinal", + "Final" + ], + "readOnly": true, + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "ConfidenceScoreStatus", + "values": [ + { + "description": "Score will not be calculated for this alert as it is not supported by virtual analyst", + "value": "NotApplicable" + }, + { + "description": "No score was set yet and calculation is in progress", + "value": "InProcess" + }, + { + "description": "Score is calculated and shown as part of the alert, but may be updated again at a later time following the processing of additional data", + "value": "NotFinal" + }, + { + "description": "Final score was calculated and available", + "value": "Final" + } + ] + } + }, + "description": { + "description": "Alert description.", + "readOnly": true, + "type": "string" + }, + "endTimeUtc": { + "description": "The impact end time of the alert (the time of the last event contributing to the alert).", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "intent": { + "description": "Holds the alert intent stage(s) mapping for this alert.", + "enum": [ + "Unknown", + "Probing", + "Exploitation", + "Persistence", + "PrivilegeEscalation", + "DefenseEvasion", + "CredentialAccess", + "Discovery", + "LateralMovement", + "Execution", + "Collection", + "Exfiltration", + "CommandAndControl", + "Impact" + ], + "readOnly": true, + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "KillChainIntent", + "values": [ + { + "description": "The default value.", + "value": "Unknown" + }, + { + "description": "Probing could be an attempt to access a certain resource regardless of a malicious intent or a failed attempt to gain access to a target system to gather information prior to exploitation. This step is usually detected as an attempt originating from outside the network in attempt to scan the target system and find a way in.", + "value": "Probing" + }, + { + "description": "Exploitation is the stage where an attacker manage to get foothold on the attacked resource. This stage is applicable not only for compute hosts, but also for resources such as user accounts, certificates etc. Adversaries will often be able to control the resource after this stage.", + "value": "Exploitation" + }, + { + "description": "Persistence is any access, action, or configuration change to a system that gives an adversary a persistent presence on that system. Adversaries will often need to maintain access to systems through interruptions such as system restarts, loss of credentials, or other failures that would require a remote access tool to restart or alternate backdoor for them to regain access.", + "value": "Persistence" + }, + { + "description": "Privilege escalation is the result of actions that allow an adversary to obtain a higher level of permissions on a system or network. Certain tools or actions require a higher level of privilege to work and are likely necessary at many points throughout an operation. User accounts with permissions to access specific systems or perform specific functions necessary for adversaries to achieve their objective may also be considered an escalation of privilege.", + "value": "PrivilegeEscalation" + }, + { + "description": "Defense evasion consists of techniques an adversary may use to evade detection or avoid other defenses. Sometimes these actions are the same as or variations of techniques in other categories that have the added benefit of subverting a particular defense or mitigation. ", + "value": "DefenseEvasion" + }, + { + "description": "Credential access represents techniques resulting in access to or control over system, domain, or service credentials that are used within an enterprise environment. Adversaries will likely attempt to obtain legitimate credentials from users or administrator accounts (local system administrator or domain users with administrator access) to use within the network. With sufficient access within a network, an adversary can create accounts for later use within the environment.", + "value": "CredentialAccess" + }, + { + "description": "Discovery consists of techniques that allow the adversary to gain knowledge about the system and internal network. When adversaries gain access to a new system, they must orient themselves to what they now have control of and what benefits operating from that system give to their current objective or overall goals during the intrusion. The operating system provides many native tools that aid in this post-compromise information-gathering phase.", + "value": "Discovery" + }, + { + "description": "Lateral movement consists of techniques that enable an adversary to access and control remote systems on a network and could, but does not necessarily, include execution of tools on remote systems. The lateral movement techniques could allow an adversary to gather information from a system without needing additional tools, such as a remote access tool. An adversary can use lateral movement for many purposes, including remote Execution of tools, pivoting to additional systems, access to specific information or files, access to additional credentials, or to cause an effect.", + "value": "LateralMovement" + }, + { + "description": "The execution tactic represents techniques that result in execution of adversary-controlled code on a local or remote system. This tactic is often used in conjunction with lateral movement to expand access to remote systems on a network.", + "value": "Execution" + }, + { + "description": "Collection consists of techniques used to identify and gather information, such as sensitive files, from a target network prior to exfiltration. This category also covers locations on a system or network where the adversary may look for information to exfiltrate.", + "value": "Collection" + }, + { + "description": "Exfiltration refers to techniques and attributes that result or aid in the adversary removing files and information from a target network. This category also covers locations on a system or network where the adversary may look for information to exfiltrate.", + "value": "Exfiltration" + }, + { + "description": "The command and control tactic represents how adversaries communicate with systems under their control within a target network.", + "value": "CommandAndControl" + }, + { + "description": "The impact intent primary objective is to directly reduce the availability or integrity of a system, service, or network; including manipulation of data to impact a business or operational process. This would often refer to techniques such as ransom-ware, defacement, data manipulation and others.", + "value": "Impact" + } + ] + } + }, + "providerAlertId": { + "description": "The identifier of the alert inside the product which generated the alert.", + "readOnly": true, + "type": "string" + }, + "processingEndTime": { + "description": "The time the alert was made available for consumption.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "productComponentName": { + "description": "The name of a component inside the product which generated the alert.", + "readOnly": true, + "type": "string" + }, + "productName": { + "description": "The name of the product which published this alert.", + "readOnly": true, + "type": "string" + }, + "productVersion": { + "description": "The version of the product generating the alert.", + "readOnly": true, + "type": "string" + }, + "remediationSteps": { + "description": "Manual action items to take to remediate the alert.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "severity": { + "$ref": "#/definitions/AlertSeverity", + "description": "The severity of the alert" + }, + "startTimeUtc": { + "description": "The impact start time of the alert (the time of the first event contributing to the alert).", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "status": { + "description": "The lifecycle status of the alert.", + "enum": [ + "Unknown", + "New", + "Resolved", + "Dismissed", + "InProgress" + ], + "readOnly": true, + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "AlertStatus", + "values": [ + { + "description": "Unknown value", + "value": "Unknown" + }, + { + "description": "New alert", + "value": "New" + }, + { + "description": "Alert closed after handling", + "value": "Resolved" + }, + { + "description": "Alert dismissed as false positive", + "value": "Dismissed" + }, + { + "description": "Alert is being handled", + "value": "InProgress" + } + ] + } + }, + "systemAlertId": { + "description": "Holds the product identifier of the alert for the product.", + "readOnly": true, + "type": "string" + }, + "tactics": { + "description": "The tactics of the alert", + "items": { + "$ref": "#/definitions/AttackTactic" + }, + "readOnly": true, + "type": "array" + }, + "timeGenerated": { + "description": "The time the alert was generated.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "vendorName": { + "description": "The name of the vendor that raise the alert.", + "readOnly": true, + "type": "string" + }, + "alertLink": { + "description": "The uri link of the alert.", + "readOnly": true, + "type": "string" + }, + "resourceIdentifiers": { + "description": "The list of resource identifiers of the alert.", + "items": { + "type": "object" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "SecurityGroupEntity": { + "allOf": [ + { + "$ref": "#/definitions/Entity" + } + ], + "description": "Represents a security group entity.", + "properties": { + "properties": { + "$ref": "#/definitions/SecurityGroupEntityProperties", + "description": "SecurityGroup entity properties", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "SecurityGroup" + }, + "SecurityGroupEntityProperties": { + "allOf": [ + { + "$ref": "#/definitions/EntityCommonProperties" + } + ], + "description": "SecurityGroup entity property bag.", + "properties": { + "distinguishedName": { + "description": "The group distinguished name", + "readOnly": true, + "type": "string" + }, + "objectGuid": { + "description": "A single-value attribute that is the unique identifier for the object, assigned by active directory.", + "format": "uuid", + "readOnly": true, + "type": "string" + }, + "sid": { + "description": "The SID attribute is a single-value attribute that specifies the security identifier (SID) of the group", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "SubmissionMailEntity": { + "allOf": [ + { + "$ref": "#/definitions/Entity" + } + ], + "description": "Represents a submission mail entity.", + "properties": { + "properties": { + "$ref": "#/definitions/SubmissionMailEntityProperties", + "description": "Submission mail entity properties", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "SubmissionMail" + }, + "SubmissionMailEntityProperties": { + "allOf": [ + { + "$ref": "#/definitions/EntityCommonProperties" + } + ], + "description": "Submission mail entity property bag.", + "properties": { + "networkMessageId": { + "description": "The network message id of email to which submission belongs", + "format": "uuid", + "readOnly": true, + "type": "string" + }, + "submissionId": { + "description": "The submission id", + "format": "uuid", + "readOnly": true, + "type": "string" + }, + "submitter": { + "description": "The submitter", + "readOnly": true, + "type": "string" + }, + "submissionDate": { + "description": "The submission date", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "timestamp": { + "description": "The Time stamp when the message is received (Mail)", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "recipient": { + "description": "The recipient of the mail", + "readOnly": true, + "type": "string" + }, + "sender": { + "description": "The sender of the mail", + "readOnly": true, + "type": "string" + }, + "senderIp": { + "description": "The sender's IP", + "readOnly": true, + "type": "string" + }, + "subject": { + "description": "The subject of submission mail", + "readOnly": true, + "type": "string" + }, + "reportType": { + "description": "The submission type for the given instance. This maps to Junk, Phish, Malware or NotJunk.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "ThreatIntelligence": { + "description": "ThreatIntelligence property bag.", + "properties": { + "confidence": { + "description": "Confidence (must be between 0 and 1)", + "format": "double", + "readOnly": true, + "type": "number" + }, + "providerName": { + "description": "Name of the provider from whom this Threat Intelligence information was received", + "readOnly": true, + "type": "string" + }, + "reportLink": { + "description": "Report link", + "readOnly": true, + "type": "string" + }, + "threatDescription": { + "description": "Threat description (free text)", + "readOnly": true, + "type": "string" + }, + "threatName": { + "description": "Threat name (e.g. \"Jedobot malware\")", + "readOnly": true, + "type": "string" + }, + "threatType": { + "description": "Threat type (e.g. \"Botnet\")", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "UrlEntity": { + "allOf": [ + { + "$ref": "#/definitions/Entity" + } + ], + "description": "Represents a url entity.", + "properties": { + "properties": { + "$ref": "#/definitions/UrlEntityProperties", + "description": "Url entity properties", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "Url" + }, + "UrlEntityProperties": { + "allOf": [ + { + "$ref": "#/definitions/EntityCommonProperties" + } + ], + "description": "Url entity property bag.", + "properties": { + "url": { + "description": "A full URL the entity points to", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "UserInfo": { + "description": "User information that made some action", + "properties": { + "email": { + "description": "The email of the user.", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "The name of the user.", + "readOnly": true, + "type": "string" + }, + "objectId": { + "description": "The object id of the user.", + "format": "uuid", + "type": "string", + "x-nullable": true + } + }, + "type": "object" + } + }, + "parameters": { + "Incident": { + "description": "The incident", + "in": "body", + "name": "incident", + "required": true, + "schema": { + "$ref": "#/definitions/Incident" + }, + "x-ms-parameter-location": "method" + }, + "IncidentComment": { + "description": "The incident comment", + "in": "body", + "name": "incidentComment", + "required": true, + "schema": { + "$ref": "#/definitions/IncidentComment" + }, + "x-ms-parameter-location": "method" + }, + "IncidentCommentId": { + "description": "Incident comment ID", + "in": "path", + "name": "incidentCommentId", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "IncidentId": { + "description": "Incident ID", + "in": "path", + "name": "incidentId", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ODataFilter": { + "description": "Filters the results, based on a Boolean condition. Optional.", + "in": "query", + "name": "$filter", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ODataOrderBy": { + "description": "Sorts the results. Optional.", + "in": "query", + "name": "$orderby", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ODataSkipToken": { + "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. Optional.", + "in": "query", + "name": "$skipToken", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ODataTop": { + "description": "Returns only the first n results. Optional.", + "format": "int32", + "in": "query", + "name": "$top", + "required": false, + "type": "integer", + "x-ms-parameter-location": "method" + }, + "Relation": { + "name": "relation", + "in": "body", + "description": "The relation model", + "required": true, + "schema": { + "$ref": "#/definitions/Relation" + }, + "x-ms-parameter-location": "method" + }, + "RelationName": { + "name": "relationName", + "in": "path", + "required": true, + "type": "string", + "description": "Relation Name", + "x-ms-parameter-location": "method" + }, + "ResourceGroupName": { + "description": "The name of the resource group within the user's subscription. The name is case insensitive.", + "in": "path", + "maxLength": 90, + "minLength": 1, + "name": "resourceGroupName", + "pattern": "^[-\\w\\._\\(\\)]+$", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "SubscriptionId": { + "description": "Azure subscription ID", + "in": "path", + "name": "subscriptionId", + "pattern": "^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$", + "required": true, + "type": "string" + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2021-04-01/examples/incidents/CreateIncident.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2021-04-01/examples/incidents/CreateIncident.json new file mode 100644 index 000000000000..6f5924caeb9e --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2021-04-01/examples/incidents/CreateIncident.json @@ -0,0 +1,104 @@ +{ + "parameters": { + "api-version": "2021-04-01", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "incidentId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "incident": { + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "lastActivityTimeUtc": "2019-01-01T13:05:30Z", + "firstActivityTimeUtc": "2019-01-01T13:00:30Z", + "description": "This is a demo incident", + "title": "My incident", + "owner": { + "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70" + }, + "severity": "High", + "classification": "FalsePositive", + "classificationComment": "Not a malicious activity", + "classificationReason": "IncorrectAlertLogic", + "status": "Closed" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "type": "Microsoft.SecurityInsights/incidents", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0001\"", + "properties": { + "lastModifiedTimeUtc": "2019-01-01T13:15:30Z", + "createdTimeUtc": "2019-01-01T13:15:30Z", + "lastActivityTimeUtc": "2019-01-01T13:05:30Z", + "firstActivityTimeUtc": "2019-01-01T13:00:30Z", + "description": "This is a demo incident", + "title": "My incident", + "owner": { + "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70", + "email": "john.doe@contoso.com", + "userPrincipalName": "john@contoso.com", + "assignedTo": "john doe" + }, + "severity": "High", + "classification": "FalsePositive", + "classificationComment": "Not a malicious activity", + "classificationReason": "IncorrectAlertLogic", + "status": "Closed", + "incidentUrl": "https://portal.azure.com/#asset/Microsoft_Azure_Security_Insights/Incident/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "incidentNumber": 3177, + "labels": [], + "relatedAnalyticRuleIds": [], + "additionalData": { + "alertsCount": 0, + "bookmarksCount": 0, + "commentsCount": 3, + "alertProductNames": [], + "tactics": [] + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "type": "Microsoft.SecurityInsights/incidents", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0001\"", + "properties": { + "lastModifiedTimeUtc": "2019-01-01T13:15:30Z", + "createdTimeUtc": "2019-01-01T13:15:30Z", + "lastActivityTimeUtc": "2019-01-01T13:05:30Z", + "firstActivityTimeUtc": "2019-01-01T13:00:30Z", + "description": "This is a demo incident", + "title": "My incident", + "owner": { + "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70", + "email": "john.doe@contoso.com", + "userPrincipalName": "john@contoso.com", + "assignedTo": "john doe" + }, + "severity": "High", + "classification": "FalsePositive", + "classificationComment": "Not a malicious activity", + "classificationReason": "IncorrectAlertLogic", + "status": "Closed", + "incidentUrl": "https://portal.azure.com/#asset/Microsoft_Azure_Security_Insights/Incident/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "incidentNumber": 3177, + "labels": [], + "relatedAnalyticRuleIds": [], + "additionalData": { + "alertsCount": 0, + "bookmarksCount": 0, + "commentsCount": 3, + "alertProductNames": [], + "tactics": [] + } + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2021-04-01/examples/incidents/DeleteIncident.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2021-04-01/examples/incidents/DeleteIncident.json new file mode 100644 index 000000000000..566038983d19 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2021-04-01/examples/incidents/DeleteIncident.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-04-01", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "incidentId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2021-04-01/examples/incidents/GetAllIncidentAlerts.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2021-04-01/examples/incidents/GetAllIncidentAlerts.json new file mode 100644 index 000000000000..2a7544a52f22 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2021-04-01/examples/incidents/GetAllIncidentAlerts.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2021-04-01", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "incidentId": "afbd324f-6c48-459c-8710-8d1e1cd03812" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/bd794837-4d29-4647-9105-6339bfdb4e6a/resourceGroups/myRG/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/Entities/baa8a239-6fde-4ab7-a093-d09f7b75c58c", + "name": "baa8a239-6fde-4ab7-a093-d09f7b75c58c", + "type": "Microsoft.SecurityInsights/Entities", + "kind": "SecurityAlert", + "properties": { + "systemAlertId": "baa8a239-6fde-4ab7-a093-d09f7b75c58c", + "tactics": [], + "alertDisplayName": "myAlert", + "confidenceLevel": "Unknown", + "severity": "Low", + "vendorName": "Microsoft", + "productName": "Azure Security Center", + "alertType": "myAlert", + "processingEndTime": "2020-07-20T18:21:53.6158361Z", + "status": "New", + "endTimeUtc": "2020-07-20T18:21:53.6158361Z", + "startTimeUtc": "2020-07-20T18:21:53.6158361Z", + "timeGenerated": "2020-07-20T18:21:53.6158361Z", + "resourceIdentifiers": [ + { + "type": "LogAnalytics", + "workspaceId": "c8c99641-985d-4e4e-8e91-fb3466cd0e5b", + "subscriptionId": "bd794837-4d29-4647-9105-6339bfdb4e6a", + "resourceGroup": "myRG" + } + ], + "additionalData": { + "AlertMessageEnqueueTime": "2020-07-20T18:21:57.304Z" + }, + "friendlyName": "myAlert" + } + } + ] + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2021-04-01/examples/incidents/GetAllIncidentBookmarks.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2021-04-01/examples/incidents/GetAllIncidentBookmarks.json new file mode 100644 index 000000000000..757b79296408 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2021-04-01/examples/incidents/GetAllIncidentBookmarks.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "api-version": "2021-04-01", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "incidentId": "afbd324f-6c48-459c-8710-8d1e1cd03812" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/afbd324f-6c48-459c-8710-8d1e1cd03812", + "name": "afbd324f-6c48-459c-8710-8d1e1cd03812", + "type": "Microsoft.SecurityInsights/Entities", + "kind": "Bookmark", + "properties": { + "displayName": "SecurityEvent - 868f40f4698d", + "created": "2020-06-17T15:34:01.4265524+00:00", + "updated": "2020-06-17T15:34:01.4265524+00:00", + "createdBy": { + "objectId": "b03ca914-5eb6-45e5-9417-fe0797c372fd", + "email": "user@microsoft.com", + "name": "user" + }, + "updatedBy": { + "objectId": "b03ca914-5eb6-45e5-9417-fe0797c372fd", + "email": "user@microsoft.com", + "name": "user" + }, + "eventTime": "2020-06-17T15:34:01.4265524+00:00", + "labels": [], + "query": "SecurityEvent\r\n| take 1\n", + "queryResult": "{\"TimeGenerated\":\"2020-05-24T01:24:25.67Z\",\"Account\":\"\\\\ADMINISTRATOR\",\"AccountType\":\"User\",\"Computer\":\"SecurityEvents\",\"EventSourceName\":\"Microsoft-Windows-Security-Auditing\",\"Channel\":\"Security\",\"Task\":12544,\"Level\":\"16\",\"EventID\":4625,\"Activity\":\"4625 - An account failed to log on.\",\"AuthenticationPackageName\":\"NTLM\",\"FailureReason\":\"%%2313\",\"IpAddress\":\"176.113.115.73\",\"IpPort\":\"0\",\"LmPackageName\":\"-\",\"LogonProcessName\":\"NtLmSsp \",\"LogonType\":3,\"LogonTypeName\":\"3 - Network\",\"Process\":\"-\",\"ProcessId\":\"0x0\",\"__entityMapping\":{\"\\\\ADMINISTRATOR\":\"Account\",\"SecurityEvents\":\"Host\"}}", + "additionalData": { + "ETag": "\"3b00acab-0000-0d00-0000-5f15e4ed0000\"", + "EntityId": "afbd324f-6c48-459c-8710-8d1e1cd03812" + }, + "friendlyName": "SecurityEvent - 868f40f4698d" + } + }, + { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/bbbd324f-6c48-459c-8710-8d1e1cd03812", + "name": "bbbd324f-6c48-459c-8710-8d1e1cd03812", + "type": "Microsoft.SecurityInsights/Entities", + "kind": "Bookmark", + "properties": { + "displayName": "SecurityEvent - 868f40f4698d", + "created": "2020-06-17T15:34:01.4265524+00:00", + "updated": "2020-06-17T15:34:01.4265524+00:00", + "createdBy": { + "objectId": "303ca914-5eb6-45e5-9417-fe0797c372fd", + "email": "user@microsoft.com", + "name": "user" + }, + "updatedBy": { + "objectId": "b03ca914-5eb6-45e5-9417-fe0797c372fd", + "email": "user@microsoft.com", + "name": "user" + }, + "eventTime": "2020-06-17T15:34:01.4265524+00:00", + "labels": [], + "query": "SecurityEvent\r\n| take 1\n", + "queryResult": "{\"TimeGenerated\":\"2020-05-24T01:24:25.67Z\",\"Account\":\"\\\\ADMINISTRATOR\",\"AccountType\":\"User\",\"Computer\":\"SecurityEvents\",\"EventSourceName\":\"Microsoft-Windows-Security-Auditing\",\"Channel\":\"Security\",\"Task\":12544,\"Level\":\"16\",\"EventID\":4625,\"Activity\":\"4625 - An account failed to log on.\",\"AuthenticationPackageName\":\"NTLM\",\"FailureReason\":\"%%2313\",\"IpAddress\":\"176.113.115.73\",\"IpPort\":\"0\",\"LmPackageName\":\"-\",\"LogonProcessName\":\"NtLmSsp \",\"LogonType\":3,\"LogonTypeName\":\"3 - Network\",\"Process\":\"-\",\"ProcessId\":\"0x0\",\"__entityMapping\":{\"\\\\ADMINISTRATOR\":\"Account\",\"SecurityEvents\":\"Host\"}}", + "additionalData": { + "ETag": "\"3b00acab-0000-0d00-0000-5f15e4ed0000\"", + "EntityId": "afbd324f-6c48-459c-8710-8d1e1cd03812" + }, + "friendlyName": "SecurityEvent - 868f40f4698d" + } + } + ] + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2021-04-01/examples/incidents/GetAllIncidentEntities.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2021-04-01/examples/incidents/GetAllIncidentEntities.json new file mode 100644 index 000000000000..9fbd40237fa3 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2021-04-01/examples/incidents/GetAllIncidentEntities.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2021-04-01", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "incidentId": "afbd324f-6c48-459c-8710-8d1e1cd03812" + }, + "responses": { + "200": { + "body": { + "entities": [ + { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/Entities/e1d3d618-e11f-478b-98e3-bb381539a8e1", + "name": "e1d3d618-e11f-478b-98e3-bb381539a8e1", + "type": "Microsoft.SecurityInsights/Entities", + "kind": "Account", + "properties": { + "friendlyName": "administrator", + "accountName": "administrator", + "ntDomain": "domain" + } + } + ], + "metaData": [ + { + "entityKind": "Account", + "count": 1 + } + ] + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2021-04-01/examples/incidents/GetIncidentById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2021-04-01/examples/incidents/GetIncidentById.json new file mode 100644 index 000000000000..78ecfba0ec51 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2021-04-01/examples/incidents/GetIncidentById.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2021-04-01", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "incidentId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "type": "Microsoft.SecurityInsights/incidents", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "lastModifiedTimeUtc": "2019-01-01T13:15:30Z", + "createdTimeUtc": "2019-01-01T13:15:30Z", + "lastActivityTimeUtc": "2019-01-01T13:05:30Z", + "firstActivityTimeUtc": "2019-01-01T13:00:30Z", + "description": "This is a demo incident", + "title": "My incident", + "owner": { + "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70", + "email": "john.doe@contoso.com", + "userPrincipalName": "john@contoso.com", + "assignedTo": "john doe" + }, + "severity": "High", + "classification": "FalsePositive", + "classificationComment": "Not a malicious activity", + "classificationReason": "InaccurateData", + "status": "Closed", + "incidentUrl": "https://portal.azure.com/#asset/Microsoft_Azure_Security_Insights/Incident/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "incidentNumber": 3177, + "labels": [], + "relatedAnalyticRuleIds": [ + "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/fab3d2d4-747f-46a7-8ef0-9c0be8112bf7" + ], + "additionalData": { + "alertsCount": 0, + "bookmarksCount": 0, + "commentsCount": 3, + "alertProductNames": [], + "tactics": [ + "InitialAccess", + "Persistence" + ] + } + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2021-04-01/examples/incidents/GetIncidents.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2021-04-01/examples/incidents/GetIncidents.json new file mode 100644 index 000000000000..927a9671e844 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2021-04-01/examples/incidents/GetIncidents.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "api-version": "2021-04-01", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "$orderby": "properties/createdTimeUtc desc", + "$top": 1 + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "type": "Microsoft.SecurityInsights/incidents", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "lastModifiedTimeUtc": "2019-01-01T13:15:30Z", + "createdTimeUtc": "2019-01-01T13:15:30Z", + "lastActivityTimeUtc": "2019-01-01T13:05:30Z", + "firstActivityTimeUtc": "2019-01-01T13:00:30Z", + "description": "This is a demo incident", + "title": "My incident", + "owner": { + "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70", + "email": "john.doe@contoso.com", + "userPrincipalName": "john@contoso.com", + "assignedTo": "john doe" + }, + "severity": "High", + "classification": "FalsePositive", + "classificationComment": "Not a malicious activity", + "classificationReason": "IncorrectAlertLogic", + "status": "Closed", + "incidentUrl": "https://portal.azure.com/#asset/Microsoft_Azure_Security_Insights/Incident/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "incidentNumber": 3177, + "labels": [], + "relatedAnalyticRuleIds": [ + "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/fab3d2d4-747f-46a7-8ef0-9c0be8112bf7", + "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/8deb8303-e94d-46ff-96e0-5fd94b33df1a" + ], + "additionalData": { + "alertsCount": 0, + "bookmarksCount": 0, + "commentsCount": 3, + "alertProductNames": [], + "tactics": [ + "Persistence" + ] + } + } + } + ] + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2021-04-01/examples/incidents/comments/CreateIncidentComment.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2021-04-01/examples/incidents/comments/CreateIncidentComment.json new file mode 100644 index 000000000000..e86a3fb7ea9d --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2021-04-01/examples/incidents/comments/CreateIncidentComment.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2021-04-01", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "incidentId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "incidentCommentId": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "incidentComment": { + "properties": { + "message": "Some message" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5/comments/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "type": "Microsoft.SecurityInsights/incidents/comments", + "etag": "0300bf09-0000-0000-0000-5c37296e0000", + "properties": { + "message": "Some message", + "createdTimeUtc": "2019-01-01T13:15:30Z", + "lastModifiedTimeUtc": "2019-01-04T13:15:30Z", + "author": { + "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70", + "email": "john.doe@contoso.com", + "userPrincipalName": "john@contoso.com", + "name": "john doe" + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5/comments/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "type": "Microsoft.SecurityInsights/incidents/comments", + "etag": "0300bf09-0000-0000-0000-5c37296e0000", + "properties": { + "message": "Some message", + "createdTimeUtc": "2019-01-01T13:15:30Z", + "lastModifiedTimeUtc": "2019-01-01T13:15:30Z", + "author": { + "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70", + "email": "john.doe@contoso.com", + "userPrincipalName": "john@contoso.com", + "name": "john doe" + } + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2021-04-01/examples/incidents/comments/DeleteIncidentComment.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2021-04-01/examples/incidents/comments/DeleteIncidentComment.json new file mode 100644 index 000000000000..e23ae7f8d527 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2021-04-01/examples/incidents/comments/DeleteIncidentComment.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-04-01", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "incidentId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "incidentCommentId": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2021-04-01/examples/incidents/comments/GetAllIncidentComments.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2021-04-01/examples/incidents/comments/GetAllIncidentComments.json new file mode 100644 index 000000000000..bebe3cc39482 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2021-04-01/examples/incidents/comments/GetAllIncidentComments.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2021-04-01", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "incidentId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5/comments/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "type": "Microsoft.SecurityInsights/incidents/comments", + "etag": "0300bf09-0000-0000-0000-5c37296e0000", + "properties": { + "message": "Some message", + "createdTimeUtc": "2019-01-01T13:15:30Z", + "lastModifiedTimeUtc": "2019-01-01T13:15:30Z", + "author": { + "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70", + "email": "john.doe@contoso.com", + "userPrincipalName": "john@contoso.com", + "name": "john doe" + } + } + } + ] + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2021-04-01/examples/incidents/comments/GetIncidentCommentById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2021-04-01/examples/incidents/comments/GetIncidentCommentById.json new file mode 100644 index 000000000000..b52d6efd63dc --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2021-04-01/examples/incidents/comments/GetIncidentCommentById.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2021-04-01", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "incidentId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "incidentCommentId": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5/comments/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "type": "Microsoft.SecurityInsights/incidents/comments", + "etag": "0300bf09-0000-0000-0000-5c37296e0000", + "properties": { + "message": "Some message", + "createdTimeUtc": "2019-01-01T13:15:30Z", + "lastModifiedTimeUtc": "2019-01-01T13:15:30Z", + "author": { + "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70", + "email": "john.doe@contoso.com", + "userPrincipalName": "john@contoso.com", + "name": "john doe" + } + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2021-04-01/examples/incidents/relations/CreateIncidentRelation.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2021-04-01/examples/incidents/relations/CreateIncidentRelation.json new file mode 100644 index 000000000000..82c2500fa570 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2021-04-01/examples/incidents/relations/CreateIncidentRelation.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2021-04-01", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "incidentId": "afbd324f-6c48-459c-8710-8d1e1cd03812", + "relationName": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "relation": { + "properties": { + "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/2216d0e1-91e3-4902-89fd-d2df8c535096" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/afbd324f-6c48-459c-8710-8d1e1cd03812/relations/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "type": "Microsoft.SecurityInsights/incidents/relations", + "etag": "190057d0-0000-0d00-0000-5c6f5adb0000", + "properties": { + "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/2216d0e1-91e3-4902-89fd-d2df8c535096", + "relatedResourceName": "2216d0e1-91e3-4902-89fd-d2df8c535096", + "relatedResourceType": "Microsoft.SecurityInsights/bookmarks" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/afbd324f-6c48-459c-8710-8d1e1cd03812/relations/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "type": "Microsoft.SecurityInsights/incidents/relations", + "etag": "190057d0-0000-0d00-0000-5c6f5adb0000", + "properties": { + "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/2216d0e1-91e3-4902-89fd-d2df8c535096", + "relatedResourceName": "2216d0e1-91e3-4902-89fd-d2df8c535096", + "relatedResourceType": "Microsoft.SecurityInsights/bookmarks" + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2021-04-01/examples/incidents/relations/DeleteIncidentRelation.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2021-04-01/examples/incidents/relations/DeleteIncidentRelation.json new file mode 100644 index 000000000000..7a37ded950d1 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2021-04-01/examples/incidents/relations/DeleteIncidentRelation.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-04-01", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "incidentId": "afbd324f-6c48-459c-8710-8d1e1cd03812", + "relationName": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2021-04-01/examples/incidents/relations/GetAllIncidentRelations.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2021-04-01/examples/incidents/relations/GetAllIncidentRelations.json new file mode 100644 index 000000000000..b53500d98872 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2021-04-01/examples/incidents/relations/GetAllIncidentRelations.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2021-04-01", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "incidentId": "afbd324f-6c48-459c-8710-8d1e1cd03812" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/afbd324f-6c48-459c-8710-8d1e1cd03812/relations/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "type": "Microsoft.SecurityInsights/incidents/relations", + "etag": "190057d0-0000-0d00-0000-5c6f5adb0000", + "properties": { + "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/2216d0e1-91e3-4902-89fd-d2df8c535096", + "relatedResourceName": "2216d0e1-91e3-4902-89fd-d2df8c535096", + "relatedResourceType": "Microsoft.SecurityInsights/bookmarks" + } + }, + { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/afbd324f-6c48-459c-8710-8d1e1cd03812/relations/9673a17d-8bc7-4ca6-88ee-38a4f3efc032", + "name": "9673a17d-8bc7-4ca6-88ee-38a4f3efc032", + "type": "Microsoft.SecurityInsights/incidents/relations", + "etag": "6f714025-dd7c-46aa-b5d0-b9857488d060", + "properties": { + "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/1dd267cd-8a1f-4f6f-b92c-da43ac8819af", + "relatedResourceName": "1dd267cd-8a1f-4f6f-b92c-da43ac8819af", + "relatedResourceType": "Microsoft.SecurityInsights/entities", + "relatedResourceKind": "SecurityAlert" + } + } + ] + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2021-04-01/examples/incidents/relations/GetIncidentRelationByName.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2021-04-01/examples/incidents/relations/GetIncidentRelationByName.json new file mode 100644 index 000000000000..a28466790ce3 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2021-04-01/examples/incidents/relations/GetIncidentRelationByName.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2021-04-01", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "incidentId": "afbd324f-6c48-459c-8710-8d1e1cd03812", + "relationName": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/afbd324f-6c48-459c-8710-8d1e1cd03812/relations/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "type": "Microsoft.SecurityInsights/incidents/relations", + "etag": "190057d0-0000-0d00-0000-5c6f5adb0000", + "properties": { + "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/2216d0e1-91e3-4902-89fd-d2df8c535096", + "relatedResourceName": "2216d0e1-91e3-4902-89fd-d2df8c535096", + "relatedResourceType": "Microsoft.SecurityInsights/bookmarks" + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2021-04-01/operations.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2021-04-01/operations.json new file mode 100644 index 000000000000..55fcc4edc101 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2021-04-01/operations.json @@ -0,0 +1,137 @@ +{ + "swagger": "2.0", + "info": { + "title": "Security Insights", + "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider", + "version": "2021-04-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/providers/Microsoft.SecurityInsights/operations": { + "get": { + "operationId": "Operations_List", + "description": "Lists all operations available Azure Security Insights Resource Provider.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "OK. Successfully retrieved operations list.", + "schema": { + "$ref": "#/definitions/OperationsList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The error object of the CloudError response" + } + }, + "description": "An error response for a resource management request." + }, + "OperationsList": { + "description": "Lists the operations available in the SecurityInsights RP.", + "properties": { + "nextLink": { + "description": "URL to fetch the next set of operations.", + "type": "string", + "readOnly": true + }, + "value": { + "description": "Array of operations", + "items": { + "$ref": "#/definitions/Operation" + }, + "type": "array" + } + }, + "required": [ + "value" + ] + }, + "Operation": { + "description": "Operation provided by provider", + "properties": { + "display": { + "description": "Properties of the operation", + "properties": { + "description": { + "description": "Description of the operation", + "type": "string" + }, + "operation": { + "description": "Operation name", + "type": "string" + }, + "provider": { + "description": "Provider name", + "type": "string" + }, + "resource": { + "description": "Resource name", + "type": "string" + } + }, + "type": "object" + }, + "name": { + "description": "Name of the operation", + "type": "string" + }, + "origin": { + "description": "The origin of the operation", + "type": "string" + } + } + } + }, + "parameters": {} +} diff --git a/specification/securityinsights/resource-manager/common/1.0/types.json b/specification/securityinsights/resource-manager/common/1.0/types.json index e56d8f28b2b6..6ff8f8cbce71 100644 --- a/specification/securityinsights/resource-manager/common/1.0/types.json +++ b/specification/securityinsights/resource-manager/common/1.0/types.json @@ -36,7 +36,21 @@ "x-ms-external": true }, "ResourceWithEtag": { + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], "description": "An azure resource object with an Etag property", + "properties": { + "etag": { + "description": "Etag of the azure resource", + "type": "string" + } + } + }, + "Resource": { + "description": "An azure resource object", "properties": { "id": { "description": "Azure resource Id", @@ -53,10 +67,6 @@ "readOnly": true, "type": "string" }, - "etag": { - "description": "Etag of the azure resource", - "type": "string" - }, "systemData": { "readOnly": true, "type": "object", diff --git a/specification/securityinsights/resource-manager/readme.azureresourceschema.md b/specification/securityinsights/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 9c79b93fdec9..000000000000 --- a/specification/securityinsights/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,48 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-securityinsights-2020-01-01 - - tag: schema-securityinsights-2019-01-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-securityinsights-2021-03-01 and azureresourceschema - -``` yaml $(tag) == 'schema-securityinsights-2021-03-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.SecurityInsights/preview/2021-03-01/Settings.json - - Microsoft.SecurityInsights/preview/2021-03-01/operations.json - -``` - -### Tag: schema-securityinsights-2020-01-01 and azureresourceschema - -``` yaml $(tag) == 'schema-securityinsights-2020-01-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.SecurityInsights/stable/2020-01-01/SecurityInsights.json - -``` - -### Tag: schema-securityinsights-2019-01-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-securityinsights-2019-01-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.SecurityInsights/preview/2019-01-01-preview/SecurityInsights.json - -``` diff --git a/specification/securityinsights/resource-manager/readme.go.md b/specification/securityinsights/resource-manager/readme.go.md index 63c524bd0691..5d0a3c224e75 100644 --- a/specification/securityinsights/resource-manager/readme.go.md +++ b/specification/securityinsights/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ```yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: securityinsight clear-output-folder: true ``` @@ -13,32 +13,24 @@ go: ```yaml $(go) && $(multiapi) batch: - - tag: package-composite-v1 - - tag: package-2019-01-preview-only + - tag: package-2020-01 + - tag: package-2019-01-preview ``` -### Tag: package-composite-v1 and go +### Tag: package-2020-01 and go -These settings apply only when `--tag=package-composite-v1 --go` is specified on the command line. +These settings apply only when `--tag=package-2020-01 --go` is specified on the command line. Please also specify `--go-sdk-folder=`. -```yaml $(tag) == 'package-composite-v1' && $(go) -output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/v1.0/$(namespace) +```yaml $(tag) == 'package-2020-01' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2020-01-01/$(namespace) ``` -### Tag: package-2021-03-preview-only and go -These settings apply only when `--tag=package-2021-03-preview-only --go` is specified on the command line. -Please also specify `--go-sdk-folder=`. - -```yaml $(tag) == 'package-2019-01-preview-only' && $(go) -output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2019-01-01-preview/$(namespace) -``` - -### Tag: package-2019-01-preview-only and go +### Tag: package-2019-01-preview and go -These settings apply only when `--tag=package-2019-01-preview-only --go` is specified on the command line. +These settings apply only when `--tag=package-2019-01-preview --go` is specified on the command line. Please also specify `--go-sdk-folder=`. -```yaml $(tag) == 'package-2019-01-preview-only' && $(go) +```yaml $(tag) == 'package-2019-01-preview' && $(go) output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2019-01-01-preview/$(namespace) ``` diff --git a/specification/securityinsights/resource-manager/readme.md b/specification/securityinsights/resource-manager/readme.md index 2e3d16cc64ba..fdafc4cba152 100644 --- a/specification/securityinsights/resource-manager/readme.md +++ b/specification/securityinsights/resource-manager/readme.md @@ -26,14 +26,33 @@ These are the global settings for the SecurityInsights API. ```yaml openapi-type: arm -tag: package-composite-v1 +tag: package-2020-01 ``` -### Tag: package-composite-v1 -These settings apply only when `--tag=package-composite-v1` is specified on the command line. +### Tag: package-2021-04-01-only -```yaml $(tag) == 'package-composite-v1' +These settings apply only when `--tag=package-2021-04-01-only` is specified on the command line. + +```yaml $(tag) == 'package-2021-04-01-only' +input-file: +- Microsoft.SecurityInsights/stable/2021-04-01/Incidents.json +- Microsoft.SecurityInsights/stable/2021-04-01/operations.json +directive: + - suppress: R4017 + from: Microsoft.SecurityInsights/stable/2021-04-01/Incidents.json + where: $.definitions.Incidents + reason: The Incident does not support list by subscription. It's not a top-level resource. To get the Incident, we should have a subscription as well as a resource group and Log Analytics workspace. +``` + +--- + +### Tag: package-2020-01 + +These settings apply only when `--tag=package-2020-01` is specified on the command line. + + +```yaml $(tag) == 'package-2020-01' input-file: - Microsoft.SecurityInsights/stable/2020-01-01/SecurityInsights.json directive: @@ -52,21 +71,51 @@ These settings apply only when `--tag=package-2021-03-preview-only` is specified ```yaml $(tag) == 'package-2021-03-preview-only' input-file: - Microsoft.SecurityInsights/preview/2021-03-01-preview/Settings.json +- Microsoft.SecurityInsights/preview/2021-03-01-preview/OnboardingStates.json - Microsoft.SecurityInsights/preview/2021-03-01-preview/operations.json +- Microsoft.SecurityInsights/preview/2021-03-01-preview/SourceControls.json +- Microsoft.SecurityInsights/preview/2021-03-01-preview/dataConnectors.json +- Microsoft.SecurityInsights/preview/2021-03-01-preview/Watchlists.json +- Microsoft.SecurityInsights/preview/2021-03-01-preview/EntityQueries.json +- Microsoft.SecurityInsights/preview/2021-03-01-preview/Metadata.json directive: - suppress: R4017 from: Microsoft.SecurityInsights/preview/2021-03-01-preview/Settings.json where: $.definitions.Settings - reason: The Setting does not support list by subscription. It's not a top-level resource. To get the Watchlist, we should have a subscription as well as a resource group and Log Analytics workspace. + reason: The Setting does not support list by subscription. It's not a top-level resource. To get the Setting, we should have a subscription as well as a resource group and Log Analytics workspace. + - suppress: R4017 + from: Microsoft.SecurityInsights/preview/2021-03-01-preview/dataConnectors.json + where: $.definitions.DataConnector + reason: The DataConnector does not support list by subscription. It's not a top-level resource. + - suppress: R4017 + from: Microsoft.SecurityInsights/preview/2021-03-01-preview/Watchlists.json + where: $.definitions.Watchlist + reason: The Watchlist does not support list by subscription. It's not a top-level resource. To get the Watchlist, we should have a subscription as well as a resource group and Log Analytics workspace. + - suppress: R4017 + from: Microsoft.SecurityInsights/preview/2021-03-01-preview/SourceControls.json + where: $.definitions.SourceControl + reason: The sourceControl does not support list by subscription. It's not a top-level resource. + - suppress: R4017 + from: Microsoft.SecurityInsights/preview/2021-03-01-preview/OnboardingStates.json + where: $.definitions.SentinelOnboardingState + reason: The SentinelOnboardingState does not support list by subscription. It's not a top-level resource. To get the SentinelOnboardingState, we should have a subscription as well as a resource group and Log Analytics workspace. + - suppress: R4017 + from: Microsoft.SecurityInsights/preview/2021-03-01-preview/EntityQueries.json + where: $.definitions.EntityQuery + reason: The EntityQuery does not support list by subscription. It's not a top-level resource. To get the EntityQuery, we should have a subscription as well as a resource group and Log Analytics workspace. + - suppress: R4017 + from: Microsoft.SecurityInsights/preview/2021-03-01-preview/Metadata.json + where: $.definitions.MetadataModel + reason: Metadata does not support list by subscription. It's not a top-level resource. To get a Metadata list, we should have a subscription as well as a resource group and Log Analytics workspace. ``` --- -### Tag: package-2019-01-preview-only +### Tag: package-2019-01-preview -These settings apply only when `--tag=package-2019-01-preview-only` is specified on the command line. +These settings apply only when `--tag=package-2019-01-preview` is specified on the command line. -```yaml $(tag) == 'package-2019-01-preview-only' +```yaml $(tag) == 'package-2019-01-preview' input-file: - Microsoft.SecurityInsights/preview/2019-01-01-preview/SecurityInsights.json directive: @@ -82,7 +131,7 @@ directive: - suppress: R4017 from: Microsoft.SecurityInsights/preview/2019-01-01-preview/SecurityInsights.json where: $.definitions.AutomationRule - reason: The AutomationRule does not support list by subscription. It's not a top-level resource. To get the AutomationRule, we should have a subscription as well as a resource group and Log Analytics workspace. + reason: The AutomationRule does not support list by subscription. It's not a top-level resource. To get the AutomationRule, we should have a subscription as well as a resource group and Log Analytics workspace. ``` --- @@ -103,8 +152,6 @@ swagger-to-sdk: - repo: azure-sdk-for-node - repo: azure-cli-extensions - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js securityinsights/resource-manager ``` ## C# @@ -138,7 +185,5 @@ See configuration in [readme.nodejs.md](./readme.nodejs.md) See configuration in [readme.typescript.md](./readme.typescript.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/serialconsole/resource-manager/readme.azureresourceschema.md b/specification/serialconsole/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 275b646822c7..000000000000 --- a/specification/serialconsole/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,25 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-serialconsole-2018-05-01 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-serialconsole-2018-05-01 and azureresourceschema - -``` yaml $(tag) == 'schema-serialconsole-2018-05-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.SerialConsole/stable/2018-05-01/serialconsole.json - - Microsoft.SerialConsole/stable/2018-05-01/serialport.json - -``` diff --git a/specification/serialconsole/resource-manager/readme.go.md b/specification/serialconsole/resource-manager/readme.go.md index 1e43c4cb4019..7a18b9e2b34c 100644 --- a/specification/serialconsole/resource-manager/readme.go.md +++ b/specification/serialconsole/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: serialconsole clear-output-folder: true ``` diff --git a/specification/serialconsole/resource-manager/readme.md b/specification/serialconsole/resource-manager/readme.md index 49d8fbeff380..7ea05f4bc4b2 100644 --- a/specification/serialconsole/resource-manager/readme.md +++ b/specification/serialconsole/resource-manager/readme.md @@ -45,12 +45,10 @@ This is not used by Autorest itself. ``` yaml $(swagger-to-sdk) swagger-to-sdk: - - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-go - repo: azure-sdk-for-js - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js serialconsole/resource-manager ``` ## C# @@ -68,7 +66,5 @@ csharp: See configuration in [readme.go.md](./readme.go.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/serialconsole/resource-manager/readme.python.md b/specification/serialconsole/resource-manager/readme.python.md index 0cf297047236..0ed58db2fbd3 100644 --- a/specification/serialconsole/resource-manager/readme.python.md +++ b/specification/serialconsole/resource-manager/readme.python.md @@ -4,17 +4,6 @@ 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) && !$(track2) -python-mode: create -python: - azure-arm: true - license-header: MICROSOFT_MIT_NO_VERSION - payload-flattening-threshold: 2 - namespace: azure.mgmt.serialconsole - package-name: azure-mgmt-serialconsole - package-version: 0.1.0 - clear-output-folder: true -``` ``` yaml $(python) && $(track2) python-mode: create azure-arm: true @@ -25,17 +14,6 @@ package-version: 0.1.0 clear-output-folder: true ``` -``` yaml $(python) && $(python-mode) == 'update' && !$(track2) -python: - no-namespace-folders: true - output-folder: $(python-sdks-folder)/serialconsole/azure-mgmt-serialconsole/azure/mgmt/serialconsole -``` -``` yaml $(python) && $(python-mode) == 'create' && !$(track2) -python: - basic-setup-py: true - output-folder: $(python-sdks-folder)/serialconsole/azure-mgmt-serialconsole -``` - ``` yaml $(python) && $(python-mode) == 'update' && $(track2) no-namespace-folders: true output-folder: $(python-sdks-folder)/serialconsole/azure-mgmt-serialconsole/azure/mgmt/serialconsole diff --git a/specification/service-map/resource-manager/readme.azureresourceschema.md b/specification/service-map/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index a92884d7690c..000000000000 --- a/specification/service-map/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,24 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-operationalinsights-2015-11-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-operationalinsights-2015-11-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-operationalinsights-2015-11-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.OperationalInsights/preview/2015-11-01-preview/arm-service-map.json - -``` diff --git a/specification/service-map/resource-manager/readme.go.md b/specification/service-map/resource-manager/readme.go.md index 326356917bf6..a21078c2c4d9 100644 --- a/specification/service-map/resource-manager/readme.go.md +++ b/specification/service-map/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: servicemap clear-output-folder: true ``` diff --git a/specification/service-map/resource-manager/readme.md b/specification/service-map/resource-manager/readme.md index 9050b2e25e2f..801cb90e6fea 100644 --- a/specification/service-map/resource-manager/readme.md +++ b/specification/service-map/resource-manager/readme.md @@ -69,8 +69,6 @@ swagger-to-sdk: - repo: azure-sdk-for-js - repo: azure-sdk-for-node - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js service-map/resource-manager ``` ## Go @@ -113,7 +111,5 @@ generate-interface: true -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/servicebus/resource-manager/Microsoft.ServiceBus/preview/2018-01-01-preview/Rules.json b/specification/servicebus/resource-manager/Microsoft.ServiceBus/preview/2018-01-01-preview/Rules.json index 05bd373f7f2a..83de2d489952 100644 --- a/specification/servicebus/resource-manager/Microsoft.ServiceBus/preview/2018-01-01-preview/Rules.json +++ b/specification/servicebus/resource-manager/Microsoft.ServiceBus/preview/2018-01-01-preview/Rules.json @@ -216,9 +216,6 @@ } }, "description": "Retrieves the description for the specified rule.", - "externalDocs": { - "url": "" - }, "parameters": [ { "$ref": "../../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" diff --git a/specification/servicebus/resource-manager/Microsoft.ServiceBus/preview/2018-01-01-preview/namespace-preview.json b/specification/servicebus/resource-manager/Microsoft.ServiceBus/preview/2018-01-01-preview/namespace-preview.json index 5885f3077d1d..90af1460dfdb 100644 --- a/specification/servicebus/resource-manager/Microsoft.ServiceBus/preview/2018-01-01-preview/namespace-preview.json +++ b/specification/servicebus/resource-manager/Microsoft.ServiceBus/preview/2018-01-01-preview/namespace-preview.json @@ -681,6 +681,11 @@ "type": "string", "description": "Provisioning state of the namespace." }, + "status": { + "readOnly": true, + "type": "string", + "description": "Status of the namespace." + }, "createdAt": { "readOnly": true, "format": "date-time", diff --git a/specification/servicebus/resource-manager/Microsoft.ServiceBus/preview/2021-01-01-preview/Rules.json b/specification/servicebus/resource-manager/Microsoft.ServiceBus/preview/2021-01-01-preview/Rules.json index cb53204b2cda..232eff1423ba 100644 --- a/specification/servicebus/resource-manager/Microsoft.ServiceBus/preview/2021-01-01-preview/Rules.json +++ b/specification/servicebus/resource-manager/Microsoft.ServiceBus/preview/2021-01-01-preview/Rules.json @@ -216,9 +216,6 @@ } }, "description": "Retrieves the description for the specified rule.", - "externalDocs": { - "url": "" - }, "parameters": [ { "$ref": "../../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" diff --git a/specification/servicebus/resource-manager/Microsoft.ServiceBus/preview/2021-01-01-preview/namespace-preview.json b/specification/servicebus/resource-manager/Microsoft.ServiceBus/preview/2021-01-01-preview/namespace-preview.json index 6f80c478a8fe..8adc47246373 100644 --- a/specification/servicebus/resource-manager/Microsoft.ServiceBus/preview/2021-01-01-preview/namespace-preview.json +++ b/specification/servicebus/resource-manager/Microsoft.ServiceBus/preview/2021-01-01-preview/namespace-preview.json @@ -686,6 +686,11 @@ "type": "string", "description": "Provisioning state of the namespace." }, + "status": { + "readOnly": true, + "type": "string", + "description": "Status of the namespace." + }, "createdAt": { "readOnly": true, "format": "date-time", diff --git a/specification/servicebus/resource-manager/Microsoft.ServiceBus/stable/2017-04-01/Rules.json b/specification/servicebus/resource-manager/Microsoft.ServiceBus/stable/2017-04-01/Rules.json index 0a2be2c6dc3a..a28e07bf1ec2 100644 --- a/specification/servicebus/resource-manager/Microsoft.ServiceBus/stable/2017-04-01/Rules.json +++ b/specification/servicebus/resource-manager/Microsoft.ServiceBus/stable/2017-04-01/Rules.json @@ -216,9 +216,6 @@ } }, "description": "Retrieves the description for the specified rule.", - "externalDocs": { - "url": "" - }, "parameters": [ { "$ref": "../../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" diff --git a/specification/servicebus/resource-manager/readme.azureresourceschema.md b/specification/servicebus/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index de5d0cfab195..000000000000 --- a/specification/servicebus/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,78 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-servicebus-2018-01-01-preview - - tag: schema-servicebus-2017-04-01 - - tag: schema-servicebus-2015-08-01 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-servicebus-2018-01-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-servicebus-2018-01-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ServiceBus/preview/2018-01-01-preview/IPFilterRules-preview.json - - Microsoft.ServiceBus/preview/2018-01-01-preview/namespace-preview.json - - Microsoft.ServiceBus/preview/2018-01-01-preview/VirtualNetworkRules-preview.json - - Microsoft.ServiceBus/preview/2018-01-01-preview/DisasterRecoveryConfig.json - - Microsoft.ServiceBus/preview/2018-01-01-preview/AuthorizationRules.json - - Microsoft.ServiceBus/preview/2018-01-01-preview/CheckNameAvailability.json - - Microsoft.ServiceBus/preview/2018-01-01-preview/eventhubs.json - - Microsoft.ServiceBus/preview/2018-01-01-preview/networksets.json - - Microsoft.ServiceBus/preview/2018-01-01-preview/migrate.json - - Microsoft.ServiceBus/preview/2018-01-01-preview/migrationconfigs.json - - Microsoft.ServiceBus/preview/2018-01-01-preview/PremiumMessagingRegions.json - - Microsoft.ServiceBus/preview/2018-01-01-preview/Queue.json - - Microsoft.ServiceBus/preview/2018-01-01-preview/sku.json - - Microsoft.ServiceBus/preview/2018-01-01-preview/subscriptions.json - - Microsoft.ServiceBus/preview/2018-01-01-preview/topics.json - - Microsoft.ServiceBus/preview/2018-01-01-preview/Rules.json - - Microsoft.ServiceBus/preview/2018-01-01-preview/operations.json - -``` - -### Tag: schema-servicebus-2017-04-01 and azureresourceschema - -``` yaml $(tag) == 'schema-servicebus-2017-04-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ServiceBus/stable/2017-04-01/AuthorizationRules.json - - Microsoft.ServiceBus/stable/2017-04-01/CheckNameAvailability.json - - Microsoft.ServiceBus/stable/2017-04-01/DisasterRecoveryConfig.json - - Microsoft.ServiceBus/stable/2017-04-01/eventhubs.json - - Microsoft.ServiceBus/stable/2017-04-01/migrate.json - - Microsoft.ServiceBus/stable/2017-04-01/migrationconfigs.json - - Microsoft.ServiceBus/stable/2017-04-01/namespaces.json - - Microsoft.ServiceBus/stable/2017-04-01/networksets.json - - Microsoft.ServiceBus/stable/2017-04-01/operations.json - - Microsoft.ServiceBus/stable/2017-04-01/PremiumMessagingRegions.json - - Microsoft.ServiceBus/stable/2017-04-01/Queue.json - - Microsoft.ServiceBus/stable/2017-04-01/Rules.json - - Microsoft.ServiceBus/stable/2017-04-01/sku.json - - Microsoft.ServiceBus/stable/2017-04-01/subscriptions.json - - Microsoft.ServiceBus/stable/2017-04-01/topics.json - -``` - -### Tag: schema-servicebus-2015-08-01 and azureresourceschema - -``` yaml $(tag) == 'schema-servicebus-2015-08-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ServiceBus/stable/2015-08-01/servicebus.json - -``` diff --git a/specification/servicebus/resource-manager/readme.go.md b/specification/servicebus/resource-manager/readme.go.md index e51da92a4617..68bd36ff7a14 100644 --- a/specification/servicebus/resource-manager/readme.go.md +++ b/specification/servicebus/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: servicebus clear-output-folder: true ``` diff --git a/specification/servicebus/resource-manager/readme.md b/specification/servicebus/resource-manager/readme.md index a20a42f9874d..bca59addcee2 100644 --- a/specification/servicebus/resource-manager/readme.md +++ b/specification/servicebus/resource-manager/readme.md @@ -134,8 +134,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_service_bus'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js servicebus/resource-manager ``` @@ -165,7 +163,5 @@ See configuration in [readme.go.md](./readme.go.md) See configuration in [readme.java.md](./readme.java.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/BackupPartition-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/BackupPartition-1.json new file mode 100644 index 000000000000..2a7638588821 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/BackupPartition-1.json @@ -0,0 +1,12 @@ +{ + "operationId": "BackupPartition", + "description": "This example shows how to trigger backup of a partition now, which is already configured for periodic backups. The newly created backup will be saved at the same location where the periodic backups are being saved.", + "parameters": { + "api-version": "6.4", + "partitionId": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d", + "BackupPartitionDescription": {} + }, + "responses": { + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/BackupPartition-2.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/BackupPartition-2.json new file mode 100644 index 000000000000..9aa037a4d490 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/BackupPartition-2.json @@ -0,0 +1,18 @@ +{ + "operationId": "BackupPartition", + "description": "This example shows how to trigger backup of a partition now, and save the backup to a specific Azure blob storage account.", + "parameters": { + "api-version": "6.4", + "partitionId": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d", + "BackupPartitionDescription": { + "BackupStorage": { + "StorageKind": "AzureBlobStore", + "ConnectionString": "DefaultEndpointsProtocol=https;AccountName=storagesample;AccountKey=", + "ContainerName": "BackupContainer" + } + } + }, + "responses": { + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/BackupPartition-3.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/BackupPartition-3.json new file mode 100644 index 000000000000..4c37489ce7cd --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/BackupPartition-3.json @@ -0,0 +1,19 @@ +{ + "operationId": "BackupPartition", + "description": "This example shows how to trigger backup of a partition now, and save the backup to a specific file share accessible from all cluster nodes.", + "parameters": { + "api-version": "6.4", + "partitionId": "partition-id", + "BackupPartitionDescription": { + "BackupStorage": { + "StorageKind": "FileShare", + "Path": "\\\\myshare\\backupshare", + "PrimaryUserName": "mydomain\\backupaccount", + "PrimaryPassword": "password" + } + } + }, + "responses": { + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/BackupPartition-4.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/BackupPartition-4.json new file mode 100644 index 000000000000..e77b1a9f010d --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/BackupPartition-4.json @@ -0,0 +1,18 @@ +{ + "operationId": "BackupPartition", + "description": "This example shows how to trigger backup of a partition now, and save the backup to a specific Dsms Azure blob storage location.", + "parameters": { + "api-version": "6.4", + "partitionId": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d", + "BackupPartitionDescription": { + "BackupStorage": { + "StorageKind": "DsmsAzureBlobStore", + "StorageCredentialsSourceLocation": "https://sample-dsms.dsms.core.winows.net/dsms/samplecredentiallocation/storageaccounts/samplestorageac/servicefabricbackup/samplebackup", + "ContainerName": "BackupContainer" + } + } + }, + "responses": { + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/BackupPartition-5.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/BackupPartition-5.json new file mode 100644 index 000000000000..0a5ff384d065 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/BackupPartition-5.json @@ -0,0 +1,19 @@ +{ + "operationId": "BackupPartition", + "description": "This example shows how to trigger backup of a partition now, and save the backup to a specific Azure blob storage account using managed identity.", + "parameters": { + "api-version": "6.4", + "partitionId": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d", + "BackupPartitionDescription": { + "BackupStorage": { + "StorageKind": "ManagedIdentityAzureBlobStore", + "BlobServiceUri": "https://managedidentitytest.blob.core.windows.net/", + "ContainerName": "BackupContainer", + "ManagedIdentityType": "Cluster" + } + } + }, + "responses": { + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/CreateApplication-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/CreateApplication-1.json new file mode 100644 index 000000000000..815b59ce3e50 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/CreateApplication-1.json @@ -0,0 +1,15 @@ +{ + "operationId": "CreateApplication", + "description": "This example shows how to create a Service Fabric application without overriding any application parameter values.", + "parameters": { + "api-version": "6.0", + "ApplicationDescription": { + "Name": "fabric:/samples/CalcApp", + "TypeVersion": "1.0", + "TypeName": "CalculatorApp" + } + }, + "responses": { + "201": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/CreateBackupPolicy-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/CreateBackupPolicy-1.json new file mode 100644 index 000000000000..a2bb056ee6d0 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/CreateBackupPolicy-1.json @@ -0,0 +1,34 @@ +{ + "operationId": "CreateBackupPolicy", + "description": "This example shows how to create a backup policy which takes backup twice everyday at 9 AM and 5 PM UTC which shall get deleted after 3 months, with Azure blob store as the backup location.", + "parameters": { + "api-version": "6.4", + "BackupPolicyDescription": { + "Name": "DailyAzureBackupPolicy", + "AutoRestoreOnDataLoss": false, + "MaxIncrementalBackups": 3, + "Schedule": { + "ScheduleKind": "TimeBased", + "ScheduleFrequencyType": "Daily", + "RunTimes": [ + "0001-01-01T09:00:00Z", + "0001-01-01T17:00:00Z" + ] + }, + "Storage": { + "StorageKind": "AzureBlobStore", + "FriendlyName": "Azure_storagesample", + "ConnectionString": "DefaultEndpointsProtocol=https;AccountName=storagesample;AccountKey=", + "ContainerName": "BackupContainer" + }, + "RetentionPolicy": { + "RetentionPolicyType": "Basic", + "MinimumNumberOfBackups": 20, + "RetentionDuration": "P3M" + } + } + }, + "responses": { + "201": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/CreateBackupPolicy-2.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/CreateBackupPolicy-2.json new file mode 100644 index 000000000000..bdbd7b8ec42d --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/CreateBackupPolicy-2.json @@ -0,0 +1,31 @@ +{ + "operationId": "CreateBackupPolicy", + "description": "This example shows how to create a backup policy which takes backup every 10 minutes which shall get deleted after 20 days, with file share as the backup location.", + "parameters": { + "api-version": "6.4", + "BackupPolicyDescription": { + "Name": "FileShare10MinBackupPolicy", + "AutoRestoreOnDataLoss": false, + "MaxIncrementalBackups": 3, + "Schedule": { + "ScheduleKind": "FrequencyBased", + "Interval": "PT10M" + }, + "Storage": { + "StorageKind": "FileShare", + "FriendlyName": "FileShare_myshare", + "Path": "\\\\myshare\\backupshare", + "PrimaryUserName": "backupaccount", + "PrimaryPassword": "password" + }, + "RetentionPolicy": { + "RetentionPolicyType": "Basic", + "MinimumNumberOfBackups": 20, + "RetentionDuration": "P20D" + } + } + }, + "responses": { + "201": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/CreateBackupPolicy-3.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/CreateBackupPolicy-3.json new file mode 100644 index 000000000000..9c6068a735f8 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/CreateBackupPolicy-3.json @@ -0,0 +1,34 @@ +{ + "operationId": "CreateBackupPolicy", + "description": "This example shows how to create a backup policy which takes backup twice everyday at 9 AM and 5 PM UTC which shall get deleted after 3 months, with Dsms Azure blob store as the backup location.", + "parameters": { + "api-version": "6.4", + "BackupPolicyDescription": { + "Name": "SampleDsmsBackupPolicy", + "AutoRestoreOnDataLoss": false, + "MaxIncrementalBackups": 3, + "Schedule": { + "ScheduleKind": "TimeBased", + "ScheduleFrequencyType": "Daily", + "RunTimes": [ + "0001-01-01T09:00:00Z", + "0001-01-01T17:00:00Z" + ] + }, + "Storage": { + "StorageKind": "DsmsAzureBlobStore", + "FriendlyName": "DsmsAzure_storagesample", + "StorageCredentialsSourceLocation": "https://sample-dsms.dsms.core.winows.net/dsms/samplecredentiallocation/storageaccounts/samplestorageac/servicefabricbackup/samplebackup", + "ContainerName": "BackupContainer" + }, + "RetentionPolicy": { + "RetentionPolicyType": "Basic", + "MinimumNumberOfBackups": 20, + "RetentionDuration": "P3M" + } + } + }, + "responses": { + "201": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/CreateBackupPolicy-4.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/CreateBackupPolicy-4.json new file mode 100644 index 000000000000..f744fbccc22a --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/CreateBackupPolicy-4.json @@ -0,0 +1,35 @@ +{ + "operationId": "CreateBackupPolicy", + "description": "This example shows how to create a backup policy which takes backup twice everyday at 9 AM and 5 PM UTC which shall get deleted after 3 months, with Azure blob store as the backup location using managed identity.", + "parameters": { + "api-version": "6.4", + "BackupPolicyDescription": { + "Name": "DailyAzureMIBackupPolicy", + "AutoRestoreOnDataLoss": false, + "MaxIncrementalBackups": 3, + "Schedule": { + "ScheduleKind": "TimeBased", + "ScheduleFrequencyType": "Daily", + "RunTimes": [ + "0001-01-01T09:00:00Z", + "0001-01-01T17:00:00Z" + ] + }, + "Storage": { + "StorageKind": "ManagedIdentityAzureBlobStore", + "FriendlyName": "AzureMI_storagesample", + "BlobServiceUri": "https://managedidentitytest.blob.core.windows.net/", + "ContainerName": "BackupContainer", + "ManagedIdentityType": "Cluster" + }, + "RetentionPolicy": { + "RetentionPolicyType": "Basic", + "MinimumNumberOfBackups": 20, + "RetentionDuration": "P3M" + } + } + }, + "responses": { + "201": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/CreateName-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/CreateName-1.json new file mode 100644 index 000000000000..39588770e334 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/CreateName-1.json @@ -0,0 +1,13 @@ +{ + "operationId": "CreateName", + "description": "This example shows how to create a new Service Fabric name. The name can be created under an existing name that represents an appliction or a service or under a completely new name.", + "parameters": { + "api-version": "6.0", + "NameDescription": { + "Name": "fabric:/samples/CalculatorApp/CalculatorService/Name-1" + } + }, + "responses": { + "201": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/CreateService-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/CreateService-1.json new file mode 100644 index 000000000000..a969c12cd8a9 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/CreateService-1.json @@ -0,0 +1,21 @@ +{ + "operationId": "CreateService", + "description": "This example shows how to create a basic stateless Service Fabric service.", + "parameters": { + "applicationId": "test", + "api-version": "6.0", + "ServiceDescription": { + "ServiceKind": "Stateless", + "ApplicationName": "fabric:/test", + "ServiceName": "fabric:/test/test1", + "ServiceTypeName": "StatelessFrontendService", + "PartitionDescription": { + "PartitionScheme": "Singleton" + }, + "InstanceCount": 4 + } + }, + "responses": { + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/CreateService-2.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/CreateService-2.json new file mode 100644 index 000000000000..bc7ada6bb8be --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/CreateService-2.json @@ -0,0 +1,23 @@ +{ + "operationId": "CreateService", + "description": "This example shows how to create a basic stateful Service Fabric service.", + "parameters": { + "applicationId": "test", + "api-version": "6.0", + "ServiceDescription": { + "ServiceKind": "Stateful", + "ApplicationName": "fabric:/test", + "ServiceName": "fabric:/test/test2", + "ServiceTypeName": "StatefulBackendService", + "PartitionDescription": { + "PartitionScheme": "Singleton" + }, + "TargetReplicaSetSize": 3, + "MinReplicaSetSize": 2, + "HasPersistedState": false + } + }, + "responses": { + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/CreateService-3.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/CreateService-3.json new file mode 100644 index 000000000000..75eaaea023df --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/CreateService-3.json @@ -0,0 +1,47 @@ +{ + "operationId": "CreateService", + "description": "This example shows how to create a stateless Service Fabric service with a dns name definied and auto scaling based on cpu usage.", + "parameters": { + "applicationId": "test", + "api-version": "6.0", + "ServiceDescription": { + "ServiceKind": "Stateless", + "ApplicationName": "fabric:/test", + "ServiceName": "fabric:/test/test1", + "ServiceTypeName": "StatelessFrontendService", + "InitializationData": [], + "PartitionDescription": { + "PartitionScheme": "Singleton" + }, + "InstanceCount": 2, + "PlacementConstraints": "Color==Blue", + "CorrelationScheme": [], + "ServiceLoadMetrics": [], + "ServicePlacementPolicies": [], + "DefaultMoveCost": "Low", + "IsDefaultMoveCostSpecified": true, + "ServicePackageActivationMode": "ExclusiveProcess", + "ServiceDnsName": "test1.test", + "ScalingPolicies": [ + { + "ScalingTrigger": { + "Kind": "AveragePartitionLoad", + "MetricName": "servicefabric:/_CpuCores", + "LowerLoadThreshold": "0.300000", + "UpperLoadThreshold": "0.800000", + "ScaleIntervalInSeconds": 600 + }, + "ScalingMechanism": { + "Kind": "PartitionInstanceCount", + "MinInstanceCount": 1, + "MaxInstanceCount": 6, + "ScaleIncrement": 2 + } + } + ] + } + }, + "responses": { + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/CreateService-4.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/CreateService-4.json new file mode 100644 index 000000000000..23f6a2ad6c29 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/CreateService-4.json @@ -0,0 +1,47 @@ +{ + "operationId": "CreateService", + "description": "This example shows how to create a stateful Service Fabric service with named partitions and scaling enabled based on memory usage.", + "parameters": { + "applicationId": "test", + "api-version": "6.0", + "ServiceDescription": { + "ServiceKind": "Stateful", + "ApplicationName": "fabric:/test", + "ServiceName": "fabric:/test/test2", + "ServiceTypeName": "StatefulBackendService", + "InitializationData": [], + "PartitionDescription": { + "PartitionScheme": "Named", + "Count": 1, + "Names": [ + "0" + ] + }, + "TargetReplicaSetSize": 3, + "MinReplicaSetSize": 2, + "HasPersistedState": true, + "ServicePackageActivationMode": "ExclusiveProcess", + "ScalingPolicies": [ + { + "ScalingTrigger": { + "Kind": "AverageServiceLoad", + "MetricName": "servicefabric:/_MemoryInMB", + "LowerLoadThreshold": "500", + "UpperLoadThreshold": "900", + "ScaleIntervalInSeconds": 600, + "UseOnlyPrimaryLoad": false + }, + "ScalingMechanism": { + "Kind": "AddRemoveIncrementalNamedPartition", + "MinPartitionCount": 1, + "MaxPartitionCount": 3, + "ScaleIncrement": 1 + } + } + ] + } + }, + "responses": { + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/DeleteBackupPolicy.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/DeleteBackupPolicy.json new file mode 100644 index 000000000000..d4796b5ede08 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/DeleteBackupPolicy.json @@ -0,0 +1,11 @@ +{ + "operationId": "DeleteBackupPolicy", + "description": "This example shows how to delete an existing backup policy which is currently not associated with any backup entity.", + "parameters": { + "api-version": "6.4", + "backupPolicyName": "SampleBackupPolicy" + }, + "responses": { + "200": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/DisableApplicationBackup.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/DisableApplicationBackup.json new file mode 100644 index 000000000000..964fdaa8c3f3 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/DisableApplicationBackup.json @@ -0,0 +1,14 @@ +{ + "operationId": "DisableApplicationBackup", + "description": "This example shows how to disable periodic backup for a stateful application which was previously enabled.", + "parameters": { + "api-version": "6.4", + "applicationId": "CalcApp", + "DisableBackupDescription": { + "CleanBackup": true + } + }, + "responses": { + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/DisablePartitionBackup.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/DisablePartitionBackup.json new file mode 100644 index 000000000000..1f6cc6b32ed3 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/DisablePartitionBackup.json @@ -0,0 +1,14 @@ +{ + "operationId": "DisablePartitionBackup", + "description": "This example shows how to disable periodic backup for a stateful partition which was previously enabled.", + "parameters": { + "api-version": "6.4", + "partitionId": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d", + "DisableBackupDescription": { + "CleanBackup": false + } + }, + "responses": { + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/DisableServiceBackup.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/DisableServiceBackup.json new file mode 100644 index 000000000000..14ca9acf4e25 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/DisableServiceBackup.json @@ -0,0 +1,14 @@ +{ + "operationId": "DisableServiceBackup", + "description": "This example shows how to disable periodic backup for a stateful service which was previously enabled.", + "parameters": { + "api-version": "6.4", + "serviceId": "CalcApp/CalcService", + "DisableBackupDescription": { + "CleanBackup": true + } + }, + "responses": { + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/EnableApplicationBackup.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/EnableApplicationBackup.json new file mode 100644 index 000000000000..b0e24cd35f67 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/EnableApplicationBackup.json @@ -0,0 +1,14 @@ +{ + "operationId": "EnableApplicationBackup", + "description": "This example shows how to enable periodic backup for a stateful application.", + "parameters": { + "api-version": "6.4", + "applicationId": "CalcApp", + "EnableBackupDescription": { + "BackupPolicyName": "DailyAzureBackupPolicy" + } + }, + "responses": { + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/EnablePartitionBackup.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/EnablePartitionBackup.json new file mode 100644 index 000000000000..739bd06ce60e --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/EnablePartitionBackup.json @@ -0,0 +1,14 @@ +{ + "operationId": "EnablePartitionBackup", + "description": "This example shows how to enable periodic backup for a stateful partition.", + "parameters": { + "api-version": "6.4", + "partitionId": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d", + "EnableBackupDescription": { + "BackupPolicyName": "DailyAzureBackupPolicy" + } + }, + "responses": { + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/EnableServiceBackup.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/EnableServiceBackup.json new file mode 100644 index 000000000000..0fe38fd714bc --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/EnableServiceBackup.json @@ -0,0 +1,14 @@ +{ + "operationId": "EnableServiceBackup", + "description": "This example shows how to enable periodic backup for a stateful service.", + "parameters": { + "api-version": "6.4", + "serviceId": "CalcApp/CalcService", + "EnableBackupDescription": { + "BackupPolicyName": "DailyAzureBackupPolicy" + } + }, + "responses": { + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetAllEntitiesBackedUpByPolicy-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetAllEntitiesBackedUpByPolicy-1.json new file mode 100644 index 000000000000..9f4e37d7fdf9 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetAllEntitiesBackedUpByPolicy-1.json @@ -0,0 +1,27 @@ +{ + "operationId": "GetAllEntitiesBackedUpByPolicy", + "description": "This example shows how to get list of backup entities that are currently associated with a backup policy. The number of results in a page are limited to maximum of two using the MaxResult parameter.", + "parameters": { + "api-version": "6.4", + "backupPolicyName": "DailyAzureBackupPolicy", + "MaxResults": 2 + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "fabric:/DemoApp", + "Items": [ + { + "EntityKind": "Application", + "ApplicationName": "fabric:/CalcApp" + }, + { + "EntityKind": "Application", + "ApplicationName": "fabric:/DemoApp" + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetAllEntitiesBackedUpByPolicy-2.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetAllEntitiesBackedUpByPolicy-2.json new file mode 100644 index 000000000000..18f3467fc9ed --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetAllEntitiesBackedUpByPolicy-2.json @@ -0,0 +1,24 @@ +{ + "operationId": "GetAllEntitiesBackedUpByPolicy", + "description": "This example shows how to get list of backup entities that are currently associated with a backup policy. This example uses the ContinuationToken parameter. The value of this parameter is provided from the previous query; in this case the example shown above. The response contains the remaining results and an empty ContinuationToken. The empty ContinuationToken indicates that additional results are not available.", + "parameters": { + "api-version": "6.4", + "backupPolicyName": "DailyAzureBackupPolicy", + "MaxResults": 2, + "ContinuationToken": "fabric:/DemoApp" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "EntityKind": "Service", + "ServiceName": "fabric:/VotingApp/VotingActorService" + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetApplicationBackupConfigurationInfo-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetApplicationBackupConfigurationInfo-1.json new file mode 100644 index 000000000000..3d396dbf082d --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetApplicationBackupConfigurationInfo-1.json @@ -0,0 +1,39 @@ +{ + "operationId": "GetApplicationBackupConfigurationInfo", + "description": "This example shows how to get list of backup configuration for this application and entities (services and partitions) under this application. The number of results in a page are limited to maximum of two using the MaxResult parameter.", + "parameters": { + "api-version": "6.4", + "applicationId": "CalcApp", + "MaxResults": 2 + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "fabric:/CalcApp/CalcService", + "Items": [ + { + "Kind": "Application", + "PolicyName": "BackupPolicy1", + "PolicyInheritedFrom": "Application", + "ApplicationName": "fabric:/CalcApp", + "SuspensionInfo": { + "IsSuspended": false, + "SuspensionInheritedFrom": "Invalid" + } + }, + { + "Kind": "Service", + "PolicyName": "BackupPolicy2", + "PolicyInheritedFrom": "Service", + "ServiceName": "fabric:/CalcApp/CalcService", + "SuspensionInfo": { + "IsSuspended": false, + "SuspensionInheritedFrom": "Invalid" + } + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetApplicationBackupConfigurationInfo-2.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetApplicationBackupConfigurationInfo-2.json new file mode 100644 index 000000000000..1ca86bee1983 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetApplicationBackupConfigurationInfo-2.json @@ -0,0 +1,31 @@ +{ + "operationId": "GetApplicationBackupConfigurationInfo", + "description": "This example shows how to get list of backup configuration for this application and entities (services and partitions) under this application. The number of results in a page are limited to maximum of two using the MaxResult parameter. This example uses the ContinuationToken parameter. The value of this parameter is provided from the previous query; in this case the example shown above. The response contains the remaining results and an empty ContinuationToken. The empty ContinuationToken indicates that additional results are not available.", + "parameters": { + "api-version": "6.4", + "applicationId": "CalcApp", + "MaxResults": 2, + "ContinuationToken": "fabric:/CalcApp/CalcService" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "Kind": "Partition", + "PolicyName": "BackupPolicy2", + "PolicyInheritedFrom": "Service", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionId": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d", + "SuspensionInfo": { + "IsSuspended": true, + "SuspensionInheritedFrom": "Partition" + } + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetApplicationBackupList-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetApplicationBackupList-1.json new file mode 100644 index 000000000000..bc89f402c6bd --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetApplicationBackupList-1.json @@ -0,0 +1,108 @@ +{ + "operationId": "GetApplicationBackupList", + "description": "This example shows how to get list of application backups within a time range.", + "parameters": { + "api-version": "6.4", + "applicationId": "CalcApp", + "StartDateTimeFilter": "2018-01-01T00:00:00Z", + "EndDateTimeFilter": "2018-01-01T23:59:59Z" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "BackupId": "3a056ac9-7206-43c3-8424-6f6103003eba", + "BackupChainId": "3a056ac9-7206-43c3-8424-6f6103003eba", + "ApplicationName": "fabric:/CalcApp", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d" + }, + "BackupLocation": "CalcApp\\CalcService\\1daae3f5-7fd6-42e9-b1ba-8c05f873994d\\2018-01-01 09.00.55.zip", + "BackupType": "Full", + "ServiceManifestVersion": "1.0.0", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "261", + "CreationTimeUtc": "2018-01-01T09:00:55Z", + "FailureError": null + }, + { + "BackupId": "7903dc2a-228d-44b0-b7c8-a13a6c9b46bd", + "BackupChainId": "3a056ac9-7206-43c3-8424-6f6103003eba", + "ApplicationName": "fabric:/CalcApp", + "ServiceManifestVersion": "1.0.0", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d" + }, + "BackupLocation": "CalcApp\\CalcService\\1daae3f5-7fd6-42e9-b1ba-8c05f873994d\\2018-01-01 17.01.02.zip", + "BackupType": "Incremental", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "446", + "CreationTimeUtc": "2018-01-01T17:01:02Z", + "FailureError": null + }, + { + "BackupId": "0ff4fdbe-131c-4dfb-8249-7b4029ddc014", + "BackupChainId": "0ff4fdbe-131c-4dfb-8249-7b4029ddc014", + "ApplicationName": "fabric:/CalcApp", + "ServiceName": "fabric:/CalcApp/CalcService", + "ServiceManifestVersion": "1.0.0", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "81645ec7-d260-4c59-9533-8f129bde8e83" + }, + "BackupLocation": "CalcApp\\CalcService\\81645ec7-d260-4c59-9533-8f129bde8e83\\2018-01-01 09.01.02.zip", + "BackupType": "Full", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "161", + "CreationTimeUtc": "2018-01-01T09:01:02Z", + "FailureError": null + }, + { + "BackupId": "d55a2d98-258b-4a34-8fe5-2063e81af9dc", + "BackupChainId": "0ff4fdbe-131c-4dfb-8249-7b4029ddc014", + "ApplicationName": "fabric:/CalcApp", + "ServiceName": "fabric:/CalcApp/CalcService", + "ServiceManifestVersion": "1.0.0", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "81645ec7-d260-4c59-9533-8f129bde8e83" + }, + "BackupLocation": "CalcApp\\CalcService\\81645ec7-d260-4c59-9533-8f129bde8e83\\2018-01-01 17.00.34.zip", + "BackupType": "Incremental", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "246", + "CreationTimeUtc": "2018-01-01T17:00:34Z", + "FailureError": null + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetApplicationBackupList-2.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetApplicationBackupList-2.json new file mode 100644 index 000000000000..adb11bc306b8 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetApplicationBackupList-2.json @@ -0,0 +1,63 @@ +{ + "operationId": "GetApplicationBackupList", + "description": "This example shows how to get the latest backup for each partition within an application.", + "parameters": { + "api-version": "6.4", + "applicationId": "CalcApp", + "Latest": true + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "BackupId": "7903dc2a-228d-44b0-b7c8-a13a6c9b46bd", + "BackupChainId": "3a056ac9-7206-43c3-8424-6f6103003eba", + "ApplicationName": "fabric:/CalcApp", + "ServiceName": "fabric:/CalcApp/CalcService", + "ServiceManifestVersion": "1.0.0", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d" + }, + "BackupLocation": "CalcApp\\CalcService\\1daae3f5-7fd6-42e9-b1ba-8c05f873994d\\2018-01-01 17.01.02.zip", + "BackupType": "Incremental", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "446", + "CreationTimeUtc": "2018-01-01T17:01:02Z", + "FailureError": null + }, + { + "BackupId": "d55a2d98-258b-4a34-8fe5-2063e81af9dc", + "BackupChainId": "0ff4fdbe-131c-4dfb-8249-7b4029ddc014", + "ApplicationName": "fabric:/CalcApp", + "ServiceManifestVersion": "1.0.0", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "81645ec7-d260-4c59-9533-8f129bde8e83" + }, + "BackupLocation": "CalcApp\\CalcService\\81645ec7-d260-4c59-9533-8f129bde8e83\\2018-01-01 17.00.34.zip", + "BackupType": "Incremental", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "246", + "CreationTimeUtc": "2018-01-01T17:00:34Z", + "FailureError": null + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetApplicationBackupList-3.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetApplicationBackupList-3.json new file mode 100644 index 000000000000..189ba7d18cbf --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetApplicationBackupList-3.json @@ -0,0 +1,63 @@ +{ + "operationId": "GetApplicationBackupList", + "description": "This example shows how to get list of application backups. The number of results in a page are limited to maximum of two using the MaxResult parameter.", + "parameters": { + "api-version": "6.4", + "applicationId": "CalcApp", + "MaxResults": 2 + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "fabric:/CalcApp/CalcService#1daae3f5-7fd6-42e9-b1ba-8c05f873994d#7903dc2a-228d-44b0-b7c8-a13a6c9b46bd", + "Items": [ + { + "BackupId": "3a056ac9-7206-43c3-8424-6f6103003eba", + "BackupChainId": "3a056ac9-7206-43c3-8424-6f6103003eba", + "ApplicationName": "fabric:/CalcApp", + "ServiceManifestVersion": "1.0.0", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d" + }, + "BackupLocation": "CalcApp\\CalcService\\1daae3f5-7fd6-42e9-b1ba-8c05f873994d\\2018-01-01 09.00.55.zip", + "BackupType": "Full", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "261", + "CreationTimeUtc": "2018-01-01T09:00:55Z", + "FailureError": null + }, + { + "BackupId": "7903dc2a-228d-44b0-b7c8-a13a6c9b46bd", + "BackupChainId": "3a056ac9-7206-43c3-8424-6f6103003eba", + "ApplicationName": "fabric:/CalcApp", + "ServiceManifestVersion": "1.0.0", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d" + }, + "BackupLocation": "CalcApp\\CalcService\\1daae3f5-7fd6-42e9-b1ba-8c05f873994d\\2018-01-01 17.01.02.zip", + "BackupType": "Incremental", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "446", + "CreationTimeUtc": "2018-01-01T17:01:02Z", + "FailureError": null + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetApplicationBackupList-4.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetApplicationBackupList-4.json new file mode 100644 index 000000000000..537af235a0e2 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetApplicationBackupList-4.json @@ -0,0 +1,64 @@ +{ + "operationId": "GetApplicationBackupList", + "description": "This example shows how to get list of application backups. The number of results in a page are limited to maximum of two using the MaxResult parameter. This example uses the ContinuationToken parameter. The value of this parameter is provided from the previous query; in this case the example shown above. The response contains the remaining results and an empty ContinuationToken. The empty ContinuationToken indicates that additional results are not available.", + "parameters": { + "api-version": "6.4", + "applicationId": "CalcApp", + "MaxResults": 2, + "ContinuationToken": "fabric:/CalcApp/CalcService#1daae3f5-7fd6-42e9-b1ba-8c05f873994d#7903dc2a-228d-44b0-b7c8-a13a6c9b46bd" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "BackupId": "0ff4fdbe-131c-4dfb-8249-7b4029ddc014", + "BackupChainId": "0ff4fdbe-131c-4dfb-8249-7b4029ddc014", + "ApplicationName": "fabric:/CalcApp", + "ServiceManifestVersion": "1.0.0", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "81645ec7-d260-4c59-9533-8f129bde8e83" + }, + "BackupLocation": "CalcApp\\CalcService\\81645ec7-d260-4c59-9533-8f129bde8e83\\2018-01-01 09.01.02.zip", + "BackupType": "Full", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "161", + "CreationTimeUtc": "2018-01-01T09:01:02Z", + "FailureError": null + }, + { + "BackupId": "d55a2d98-258b-4a34-8fe5-2063e81af9dc", + "BackupChainId": "0ff4fdbe-131c-4dfb-8249-7b4029ddc014", + "ApplicationName": "fabric:/CalcApp", + "ServiceManifestVersion": "1.0.0", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "81645ec7-d260-4c59-9533-8f129bde8e83" + }, + "BackupLocation": "CalcApp\\CalcService\\81645ec7-d260-4c59-9533-8f129bde8e83\\2018-01-01 17.00.34.zip", + "BackupType": "Incremental", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "246", + "CreationTimeUtc": "2018-01-01T17:00:34Z", + "FailureError": null + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetApplicationEventList.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetApplicationEventList.json new file mode 100644 index 000000000000..32bca288ae42 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetApplicationEventList.json @@ -0,0 +1,27 @@ +{ + "operationId": "GetApplicationEventList", + "description": "This example shows how to get all application-related events during a certain time window.", + "parameters": { + "applicationId": "app1", + "api-version": "6.4", + "StartTimeUtc": "2018-04-03T18:00:00Z", + "EndTimeUtc": "2018-04-04T18:00:00Z" + }, + "responses": { + "200": { + "headers": {}, + "body": [ + { + "Kind": "ApplicationCreated", + "ApplicationTypeName": "App1Type", + "ApplicationTypeVersion": "1.0.1", + "ApplicationDefinitionKind": "ServiceFabricApplicationDescription", + "ApplicationId": "app1", + "EventInstanceId": "8a7a0c42-67ca-4cd3-9160-edcdb822db10", + "TimeStamp": "2018-04-03T20:21:23.5774199Z", + "HasCorrelatedEvents": false + } + ] + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetApplicationInfoByName-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetApplicationInfoByName-1.json new file mode 100644 index 000000000000..fb15937b1e84 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetApplicationInfoByName-1.json @@ -0,0 +1,33 @@ +{ + "operationId": "GetApplicationInfo", + "description": "This example shows how to get information about an application using it's identifier. If the application is found, information about it is returned with 200 status code. If the application is not found, empty content is returned with 204 status code.", + "parameters": { + "api-version": "6.0", + "applicationId": "samples~CalculatorApp" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "Id": "samples~CalculatorApp", + "Name": "fabric:/samples/CalculatorApp", + "TypeName": "CalculatorApp", + "TypeVersion": "1.0", + "Status": "Ready", + "Parameters": [ + { + "Key": "CalculatorAppParameter1", + "Value": "314" + }, + { + "Key": "CalculatorAppParameter2", + "Value": "271" + } + ], + "HealthState": "Ok", + "ApplicationDefinitionKind": "ServiceFabricApplicationDescription" + } + }, + "204": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetApplicationInfoList-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetApplicationInfoList-1.json new file mode 100644 index 000000000000..2ca46b64e3a4 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetApplicationInfoList-1.json @@ -0,0 +1,38 @@ +{ + "operationId": "GetApplicationInfoList", + "description": "This example shows how to get information about applications on the cluster. The number of results in a page are limited to maximum of two using the MaxResult parameter.", + "parameters": { + "api-version": "6.1", + "MaxResults": 2 + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "fabric:/samples/PQueueApp1", + "Items": [ + { + "Id": "samples~CalculatorApp", + "Name": "fabric:/samples/CalculatorApp", + "TypeName": "CalculatorApp", + "TypeVersion": "1.0", + "Status": "Ready", + "Parameters": [], + "HealthState": "Ok", + "ApplicationDefinitionKind": "ServiceFabricApplicationDescription" + }, + { + "Id": "samples~PQueueApp1", + "Name": "fabric:/samples/PQueueApp1", + "TypeName": "PersistentQueueApp", + "TypeVersion": "1.0", + "Status": "Ready", + "Parameters": [], + "HealthState": "Ok", + "ApplicationDefinitionKind": "ServiceFabricApplicationDescription" + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetApplicationInfoList-2.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetApplicationInfoList-2.json new file mode 100644 index 000000000000..c0755d26e14b --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetApplicationInfoList-2.json @@ -0,0 +1,29 @@ +{ + "operationId": "GetApplicationInfoList", + "description": "This example shows how to page through the information about applications on the cluster using the ContinuationToken parameter. The value of this parameter is provided from the previous query, in this case the example shown above. The response contains the remaining one result and an empty ContinuationToken. The empty ContinuationToken indicates that additional results are not available.", + "parameters": { + "api-version": "6.1", + "MaxResults": 2, + "ContinuationToken": "fabric:/samples/PQueueApp1" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "Id": "samples~VQueueApp1", + "Name": "fabric:/samples/VQueueApp1", + "TypeName": "VolatileQueueApp", + "TypeVersion": "1.0", + "Status": "Ready", + "Parameters": [], + "HealthState": "Ok", + "ApplicationDefinitionKind": "ServiceFabricApplicationDescription" + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetApplicationTypeInfoList-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetApplicationTypeInfoList-1.json new file mode 100644 index 000000000000..bcb6a4e5e3b7 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetApplicationTypeInfoList-1.json @@ -0,0 +1,85 @@ +{ + "operationId": "GetApplicationTypeInfoList", + "description": "This example shows how to get information about application types that are provisioned or being provisioned in the cluster. The number of results in a page are limited to maximum of five using MaxResult parameter.", + "parameters": { + "api-version": "6.0", + "MaxResults": 5 + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "PersistentQueueApp+2.0", + "Items": [ + { + "Name": "CalculatorApp", + "Version": "1.0", + "DefaultParameterList": [ + { + "Key": "ServiceInstanceCount", + "Value": "3" + } + ], + "Status": "Available" + }, + { + "Name": "CalculatorApp", + "Version": "2.0", + "DefaultParameterList": [ + { + "Key": "ServiceInstanceCount", + "Value": "3" + } + ], + "Status": "Available" + }, + { + "Name": "GatewayApp", + "Version": "1.0", + "DefaultParameterList": [ + { + "Key": "GatewayPort", + "Value": "8505" + }, + { + "Key": "ServiceInstanceCount", + "Value": "1000" + } + ], + "Status": "Available" + }, + { + "Name": "PersistentQueueApp", + "Version": "1.0", + "DefaultParameterList": [ + { + "Key": "MinReplicaSetSize", + "Value": "2" + }, + { + "Key": "TargetReplicaSetSize", + "Value": "3" + } + ], + "Status": "Available" + }, + { + "Name": "PersistentQueueApp", + "Version": "2.0", + "DefaultParameterList": [ + { + "Key": "MinReplicaSetSize", + "Value": "2" + }, + { + "Key": "TargetReplicaSetSize", + "Value": "3" + } + ], + "Status": "Available" + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetApplicationTypeInfoList-2.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetApplicationTypeInfoList-2.json new file mode 100644 index 000000000000..a7c38cdedbe7 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetApplicationTypeInfoList-2.json @@ -0,0 +1,49 @@ +{ + "operationId": "GetApplicationTypeInfoList", + "description": "This example shows how to page through the information about application types that are provisioned or being provisioned in the cluster using ContinuationToken parameter. The value of this parameter is provided from the previous query, in this case the example shown above. The response contains the remaining two results and an empty ContinuationToken. The empty ContinuationToken indicates that additional results are not available.", + "parameters": { + "api-version": "6.0", + "MaxResults": 5, + "ContinuationToken": "PersistentQueueApp+2.0" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "Name": "VolatileQueueApp", + "Version": "1.0", + "DefaultParameterList": [ + { + "Key": "MinReplicaSetSize", + "Value": "2" + }, + { + "Key": "TargetReplicaSetSize", + "Value": "3" + } + ], + "Status": "Available" + }, + { + "Name": "VolatileQueueApp", + "Version": "2.0", + "DefaultParameterList": [ + { + "Key": "MinReplicaSetSize", + "Value": "2" + }, + { + "Key": "TargetReplicaSetSize", + "Value": "3" + } + ], + "Status": "Available" + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetApplicationTypeInfoList-3.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetApplicationTypeInfoList-3.json new file mode 100644 index 000000000000..473565e56c6d --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetApplicationTypeInfoList-3.json @@ -0,0 +1,60 @@ +{ + "operationId": "GetApplicationTypeInfoList", + "description": "This example shows how to exclude application parameter in the result when getting the information about application types that are provisioned or being provisioned in the cluster.", + "parameters": { + "api-version": "6.0", + "ExcludeApplicationParameters": true + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "Name": "CalculatorApp", + "Version": "1.0", + "DefaultParameterList": [], + "Status": "Available" + }, + { + "Name": "CalculatorApp", + "Version": "2.0", + "DefaultParameterList": [], + "Status": "Available" + }, + { + "Name": "GatewayApp", + "Version": "1.0", + "DefaultParameterList": [], + "Status": "Available" + }, + { + "Name": "PersistentQueueApp", + "Version": "1.0", + "DefaultParameterList": [], + "Status": "Available" + }, + { + "Name": "PersistentQueueApp", + "Version": "2.0", + "DefaultParameterList": [], + "Status": "Available" + }, + { + "Name": "VolatileQueueApp", + "Version": "1.0", + "DefaultParameterList": [], + "Status": "Available" + }, + { + "Name": "VolatileQueueApp", + "Version": "2.0", + "DefaultParameterList": [], + "Status": "Available" + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetApplicationsEventList.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetApplicationsEventList.json new file mode 100644 index 000000000000..fa65ec159120 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetApplicationsEventList.json @@ -0,0 +1,36 @@ +{ + "operationId": "GetApplicationsEventList", + "description": "This example shows how to get all applications-related events during a certain time window.", + "parameters": { + "api-version": "6.4", + "StartTimeUtc": "2018-04-03T18:00:00Z", + "EndTimeUtc": "2018-04-04T18:00:00Z" + }, + "responses": { + "200": { + "headers": {}, + "body": [ + { + "Kind": "ApplicationCreated", + "ApplicationTypeName": "App1Type", + "ApplicationTypeVersion": "1.0.1", + "ApplicationDefinitionKind": "ServiceFabricApplicationDescription", + "ApplicationId": "app1", + "EventInstanceId": "8a7a0c42-67ca-4cd3-9160-edcdb822db10", + "TimeStamp": "2018-04-03T20:21:23.5774199Z", + "HasCorrelatedEvents": false + }, + { + "Kind": "ApplicationCreated", + "ApplicationTypeName": "App2Type", + "ApplicationTypeVersion": "4.0.1", + "ApplicationDefinitionKind": "ServiceFabricApplicationDescription", + "ApplicationId": "app2", + "EventInstanceId": "d50574bc-6a31-4945-8275-7639bec7a0b3", + "TimeStamp": "2018-04-03T20:21:59.74842Z", + "HasCorrelatedEvents": false + } + ] + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetBackupPolicyByName.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetBackupPolicyByName.json new file mode 100644 index 000000000000..411b836109b2 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetBackupPolicyByName.json @@ -0,0 +1,36 @@ +{ + "operationId": "GetBackupPolicyByName", + "description": "This example shows how to query a backup policy by name.", + "parameters": { + "api-version": "6.4", + "backupPolicyName": "DailyAzureBackupPolicy" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "Name": "DailyAzureBackupPolicy", + "AutoRestoreOnDataLoss": false, + "MaxIncrementalBackups": 3, + "Schedule": { + "ScheduleKind": "TimeBased", + "ScheduleFrequencyType": "Daily", + "RunTimes": [ + "0001-01-01T09:00:00Z", + "0001-01-01T17:00:00Z" + ] + }, + "Storage": { + "StorageKind": "AzureBlobStore", + "ConnectionString": "DefaultEndpointsProtocol=https;AccountName=storagesample;AccountKey=", + "ContainerName": "BackupContainer" + }, + "RetentionPolicy": { + "RetentionPolicyType": "Basic", + "MinimumNumberOfBackups": 20, + "RetentionDuration": "P20D" + } + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetBackupPolicyList-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetBackupPolicyList-1.json new file mode 100644 index 000000000000..5ab468a09e2b --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetBackupPolicyList-1.json @@ -0,0 +1,112 @@ +{ + "operationId": "GetBackupPolicyList", + "description": "This example shows how to get list of backup policies. The number of results in a page are limited to maximum of four using the MaxResult parameter.", + "parameters": { + "api-version": "6.4", + "MaxResults": 4 + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "FileShare10MinBackupPolicy", + "Items": [ + { + "Name": "DailyAzureBackupPolicy", + "AutoRestoreOnDataLoss": false, + "MaxIncrementalBackups": 3, + "Schedule": { + "ScheduleKind": "TimeBased", + "ScheduleFrequencyType": "Daily", + "RunTimes": [ + "0001-01-01T09:00:00Z", + "0001-01-01T17:00:00Z" + ] + }, + "Storage": { + "StorageKind": "AzureBlobStore", + "FriendlyName": "Azure_storagesample", + "ConnectionString": "DefaultEndpointsProtocol=https;AccountName=storagesample;AccountKey=", + "ContainerName": "BackupContainer" + }, + "RetentionPolicy": { + "RetentionPolicyType": "Basic", + "MinimumNumberOfBackups": 30, + "RetentionDuration": "P29D" + } + }, + { + "Name": "DailyAzureMIBackupPolicy", + "AutoRestoreOnDataLoss": false, + "MaxIncrementalBackups": 3, + "Schedule": { + "ScheduleKind": "TimeBased", + "ScheduleFrequencyType": "Daily", + "RunTimes": [ + "0001-01-01T09:00:00Z", + "0001-01-01T17:00:00Z" + ] + }, + "Storage": { + "StorageKind": "ManagedIdentityAzureBlobStore", + "FriendlyName": "AzureMI_storagesample", + "BlobServiceUri": "https://managedidentitytest.blob.core.windows.net/", + "ContainerName": "BackupContainer", + "ManagedIdentityType": "Cluster" + }, + "RetentionPolicy": { + "RetentionPolicyType": "Basic", + "MinimumNumberOfBackups": 30, + "RetentionDuration": "P29D" + } + }, + { + "Name": "SampleDsmsBackupPolicy", + "AutoRestoreOnDataLoss": false, + "MaxIncrementalBackups": 3, + "Schedule": { + "ScheduleKind": "TimeBased", + "ScheduleFrequencyType": "Daily", + "RunTimes": [ + "0001-01-01T09:00:00Z", + "0001-01-01T17:00:00Z" + ] + }, + "Storage": { + "StorageKind": "DsmsAzureBlobStore", + "FriendlyName": "DsmsAzure_storagesample", + "StorageCredentialsSourceLocation": "https://sample-dsms.dsms.core.winows.net/dsms/samplecredentiallocation/storageaccounts/samplestorageac/servicefabricbackup/samplebackup", + "ContainerName": "BackupContainer" + }, + "RetentionPolicy": { + "RetentionPolicyType": "Basic", + "MinimumNumberOfBackups": 10, + "RetentionDuration": "P3M" + } + }, + { + "Name": "FileShare10MinBackupPolicy", + "AutoRestoreOnDataLoss": false, + "MaxIncrementalBackups": 3, + "Schedule": { + "ScheduleKind": "FrequencyBased", + "Interval": "PT10M" + }, + "Storage": { + "StorageKind": "FileShare", + "FriendlyName": "FileShare_myshare", + "Path": "\\\\myshare\\backupshare", + "PrimaryUserName": "backupaccount", + "PrimaryPassword": "****" + }, + "RetentionPolicy": { + "RetentionPolicyType": "Basic", + "MinimumNumberOfBackups": 20, + "RetentionDuration": "P20D" + } + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetBackupPolicyList-2.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetBackupPolicyList-2.json new file mode 100644 index 000000000000..9a2cbd82d8f7 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetBackupPolicyList-2.json @@ -0,0 +1,42 @@ +{ + "operationId": "GetBackupPolicyList", + "description": "This example shows how to get list of backup policies. The number of results in a page are limited to maximum of three using the MaxResult parameter. This example uses the ContinuationToken parameter. The value of this parameter is provided from the previous query; in this case the example shown above. The response contains the remaining results and an empty ContinuationToken. The empty ContinuationToken indicates that additional results are not available.", + "parameters": { + "api-version": "6.4", + "MaxResults": 3, + "ContinuationToken": "FileShare10MinBackupPolicy" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "AutoRestoreOnDataLoss": false, + "Name": "SampleBackupPolicy", + "MaxIncrementalBackups": 5, + "Schedule": { + "ScheduleKind": "FrequencyBased", + "Interval": "PT4H5M" + }, + "Storage": { + "Path": "\\\\myshare\\BackupStore", + "PrimaryUserName": "myuser1", + "PrimaryPassword": "****", + "SecondaryUserName": "myuser2", + "SecondaryPassword": "****", + "StorageKind": "FileShare", + "FriendlyName": "" + }, + "RetentionPolicy": { + "RetentionPolicyType": "Basic", + "MinimumNumberOfBackups": 0, + "RetentionDuration": "P20D" + } + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetBackupsFromBackupLocation-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetBackupsFromBackupLocation-1.json new file mode 100644 index 000000000000..6925de02aeb5 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetBackupsFromBackupLocation-1.json @@ -0,0 +1,73 @@ +{ + "operationId": "GetBackupsFromBackupLocation", + "description": "This example shows how to get list of application backups from a specified backup location. The number of results in a page are limited to maximum of two using the MaxResult parameter.", + "parameters": { + "api-version": "6.4", + "MaxResults": 2, + "GetBackupByStorageQueryDescription": { + "Storage": { + "StorageKind": "AzureBlobStore", + "ConnectionString": "DefaultEndpointsProtocol=https;AccountName=storagesample;AccountKey=", + "ContainerName": "BackupContainer" + }, + "BackupEntity": { + "EntityKind": "Application", + "ApplicationName": "fabric:/CalcApp" + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "fabric:/CalcApp/CalcService#1daae3f5-7fd6-42e9-b1ba-8c05f873994d#7903dc2a-228d-44b0-b7c8-a13a6c9b46bd", + "Items": [ + { + "BackupId": "3a056ac9-7206-43c3-8424-6f6103003eba", + "BackupChainId": "3a056ac9-7206-43c3-8424-6f6103003eba", + "ApplicationName": "fabric:/CalcApp", + "ServiceManifestVersion": "1.0.0", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d" + }, + "BackupLocation": "CalcApp\\CalcService\\1daae3f5-7fd6-42e9-b1ba-8c05f873994d\\2018-01-01 09.00.55.zip", + "BackupType": "Full", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "261", + "CreationTimeUtc": "2018-01-01T09:00:55Z", + "FailureError": null + }, + { + "BackupId": "7903dc2a-228d-44b0-b7c8-a13a6c9b46bd", + "BackupChainId": "3a056ac9-7206-43c3-8424-6f6103003eba", + "ApplicationName": "fabric:/CalcApp", + "ServiceManifestVersion": "1.0.0", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d" + }, + "BackupLocation": "CalcApp\\CalcService\\1daae3f5-7fd6-42e9-b1ba-8c05f873994d\\2018-01-01 17.01.02.zip", + "BackupType": "Incremental", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "446", + "CreationTimeUtc": "2018-01-01T17:01:02Z", + "FailureError": null + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetBackupsFromBackupLocation-2.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetBackupsFromBackupLocation-2.json new file mode 100644 index 000000000000..190f318797ab --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetBackupsFromBackupLocation-2.json @@ -0,0 +1,74 @@ +{ + "operationId": "GetBackupsFromBackupLocation", + "description": "This example shows how to get list of application backups. The number of results in a page are limited to maximum of two using the MaxResult parameter. This example uses the ContinuationToken parameter. The value of this parameter is provided from the previous query; in this case the example shown above. The response contains the remaining results and an empty ContinuationToken. The empty ContinuationToken indicates that additional results are not available.", + "parameters": { + "api-version": "6.4", + "MaxResults": 2, + "GetBackupByStorageQueryDescription": { + "Storage": { + "StorageKind": "AzureBlobStore", + "ConnectionString": "DefaultEndpointsProtocol=https;AccountName=storagesample;AccountKey=", + "ContainerName": "BackupContainer" + }, + "BackupEntity": { + "EntityKind": "Application", + "ApplicationName": "fabric:/CalcApp" + } + }, + "ContinuationToken": "fabric:/CalcApp/CalcService#1daae3f5-7fd6-42e9-b1ba-8c05f873994d#7903dc2a-228d-44b0-b7c8-a13a6c9b46bd" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "BackupId": "0ff4fdbe-131c-4dfb-8249-7b4029ddc014", + "BackupChainId": "0ff4fdbe-131c-4dfb-8249-7b4029ddc014", + "ApplicationName": "fabric:/CalcApp", + "ServiceManifestVersion": "1.0.0", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "81645ec7-d260-4c59-9533-8f129bde8e83" + }, + "BackupLocation": "CalcApp\\CalcService\\81645ec7-d260-4c59-9533-8f129bde8e83\\2018-01-01 09.01.02.zip", + "BackupType": "Full", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "161", + "CreationTimeUtc": "2018-01-01T09:01:02Z", + "FailureError": null + }, + { + "BackupId": "d55a2d98-258b-4a34-8fe5-2063e81af9dc", + "BackupChainId": "0ff4fdbe-131c-4dfb-8249-7b4029ddc014", + "ApplicationName": "fabric:/CalcApp", + "ServiceManifestVersion": "1.0.0", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "81645ec7-d260-4c59-9533-8f129bde8e83" + }, + "BackupLocation": "CalcApp\\CalcService\\81645ec7-d260-4c59-9533-8f129bde8e83\\2018-01-01 17.00.34.zip", + "BackupType": "Incremental", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "246", + "CreationTimeUtc": "2018-01-01T17:00:34Z", + "FailureError": null + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetChaosEvents.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetChaosEvents.json new file mode 100644 index 000000000000..4e5d7bb0b4e3 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetChaosEvents.json @@ -0,0 +1,62 @@ +{ + "operationId": "GetChaosEvents", + "description": "This example shows how to get Chaos events in a single response message without the need for paging through ContinuationToken parameter.", + "parameters": { + "api-version": "6.2", + "StartTimeUtc": "0", + "EndTimeUtc": "3155378975999999999" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "History": [ + { + "ChaosEvent": { + "Kind": "Started", + "TimeStampUtc": "2017-04-14T04:27:19.049Z", + "ChaosParameters": { + "MaxClusterStabilizationTimeoutInSeconds": 30, + "MaxConcurrentFaults": 3, + "WaitTimeBetweenIterationsInSeconds": 10, + "WaitTimeBetweenFaultsInSeconds": 1, + "TimeToRunInSeconds": "3600", + "EnableMoveReplicaFaults": true, + "ClusterHealthPolicy": { + "ConsiderWarningAsError": true, + "MaxPercentUnhealthyNodes": 0, + "MaxPercentUnhealthyApplications": 10, + "ApplicationTypeHealthPolicyMap": [ + { + "Key": "myapp", + "Value": 3 + } + ] + }, + "Context": { + "Map": { + "k1": "v1", + "k2": "v2", + "k3": "v5" + } + } + } + } + }, + { + "ChaosEvent": { + "Kind": "ExecutingFaults", + "TimeStampUtc": "2017-04-14T04:27:20.667Z", + "Faults": [ + "ActionType: RestartReplica, ServiceUri: fabric:/TestApp1/PersistServ_6R_1, PartitionId: 6a91b09a-bd76-45da-afaa-ed0fd9bfe7d2, ReplicaId: 131366172775684622", + "ActionType: CodePackageRestart, NodeName: N0050, ApplicationName: fabric:/TestApp1, ServiceManifestName: SP1, ServiceManifestName: , CodePackageName: CP1.", + "ActionType: RestartReplica, ServiceUri: fabric:/TestApp1/PersistServ_6R_3, PartitionId: baa3a51e-5c42-435e-89d3-6e97b2164661, ReplicaId: 131366172988968762" + ] + } + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetClusterEventList.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetClusterEventList.json new file mode 100644 index 000000000000..3a122bb8aec0 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetClusterEventList.json @@ -0,0 +1,55 @@ +{ + "operationId": "GetClusterEventList", + "description": "This example shows how to get all cluster-related events during a certain time window.", + "parameters": { + "api-version": "6.4", + "StartTimeUtc": "2018-04-03T18:00:00Z", + "EndTimeUtc": "2018-04-04T18:00:00Z" + }, + "responses": { + "200": { + "headers": {}, + "body": [ + { + "Kind": "ClusterUpgradeStarted", + "CurrentClusterVersion": "0.0.0.0:", + "TargetClusterVersion": "6.2:1.0", + "UpgradeType": "Rolling", + "RollingUpgradeMode": "UnmonitoredAuto", + "FailureAction": "Manual", + "EventInstanceId": "090add3c-8f56-4d35-8d57-a855745b6064", + "TimeStamp": "2018-04-03T20:18:59.4313064Z", + "HasCorrelatedEvents": false + }, + { + "Kind": "ClusterUpgradeDomainCompleted", + "TargetClusterVersion": "6.2:1.0", + "UpgradeState": "RollingForward", + "UpgradeDomains": "(0 1 2)", + "UpgradeDomainElapsedTimeInMs": 78.5288, + "EventInstanceId": "090add3c-8f56-4d35-8d57-a855745b6064", + "TimeStamp": "2018-04-03T20:19:59.5729953Z", + "HasCorrelatedEvents": false + }, + { + "Kind": "ClusterUpgradeDomainCompleted", + "TargetClusterVersion": "6.2:1.0", + "UpgradeState": "RollingForward", + "UpgradeDomains": "(3 4)", + "UpgradeDomainElapsedTimeInMs": 0.0, + "EventInstanceId": "090add3c-8f56-4d35-8d57-a855745b6064", + "TimeStamp": "2018-04-03T20:20:59.6271949Z", + "HasCorrelatedEvents": false + }, + { + "Kind": "ClusterUpgradeCompleted", + "TargetClusterVersion": "6.2:1.0", + "OverallUpgradeElapsedTimeInMs": 120196.5212, + "EventInstanceId": "090add3c-8f56-4d35-8d57-a855745b6064", + "TimeStamp": "2018-04-03T20:20:59.8134457Z", + "HasCorrelatedEvents": false + } + ] + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetClusterVersion-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetClusterVersion-1.json new file mode 100644 index 000000000000..fd3b6fbf55b8 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetClusterVersion-1.json @@ -0,0 +1,15 @@ +{ + "operationId": "GetClusterVersion", + "description": "This example retrieves the current (or lowest version during upgrade) cluster version.", + "parameters": { + "api-version": "6.4" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "Version": "6.4.514.9494" + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetContainerLogsDeployedOnNode-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetContainerLogsDeployedOnNode-1.json new file mode 100644 index 000000000000..1be29fb8e6ef --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetContainerLogsDeployedOnNode-1.json @@ -0,0 +1,19 @@ +{ + "operationId": "GetContainerLogsDeployedOnNode", + "description": "This example shows how to get container logs for container deployed on a Service Fabric node for the given code package.", + "parameters": { + "api-version": "6.2", + "nodeName": "_Node_0", + "applicationId": "SimpleHttpServerApp", + "ServiceManifestName": "SimpleHttpServerSvcPkg", + "CodePackageName": "Code" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "Content": "HTTP Server started listening on port 8080\r\n" + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetContainerLogsDeployedOnNode-2.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetContainerLogsDeployedOnNode-2.json new file mode 100644 index 000000000000..9f1025363561 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetContainerLogsDeployedOnNode-2.json @@ -0,0 +1,20 @@ +{ + "operationId": "GetContainerLogsDeployedOnNode", + "description": "This example shows how to get last 10 lines of container logs for container deployed on a Service Fabric node for the given code package.", + "parameters": { + "api-version": "6.2", + "nodeName": "_Node_0", + "applicationId": "SimpleHttpServerApp", + "ServiceManifestName": "SimpleHttpServerSvcPkg", + "CodePackageName": "Code", + "Tail": "10" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "Content": "UTC Time Now: 04/02/2018 22:06:31\r\nUTC Time Now: 04/02/2018 22:06:32\r\nUTC Time Now: 04/02/2018 22:06:33\r\nUTC Time Now: 04/02/2018 22:06:344\r\nUTC Time Now: 04/02/2018 22:06:35\r\nUTC Time Now: 04/02/2018 22:06:36\r\nUTC Time Now: 04/02/2018 22:06:37\r\nUTC Time Now: 04/02/2018 22:06:38\r\nUTC Time Now: 04/02/2018 22:06:39\r\nUTC Time Now: 04/02/2018 22:06:40\r\n" + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetContainerLogsDeployedOnNode-3.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetContainerLogsDeployedOnNode-3.json new file mode 100644 index 000000000000..2ca6cad4f774 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetContainerLogsDeployedOnNode-3.json @@ -0,0 +1,20 @@ +{ + "operationId": "GetContainerLogsDeployedOnNode", + "description": "This example shows how to get container logs of previous dead container on a Service Fabric node for the given code package.", + "parameters": { + "api-version": "6.2", + "nodeName": "_Node_0", + "applicationId": "SimpleHttpServerApp", + "ServiceManifestName": "SimpleHttpServerSvcPkg", + "CodePackageName": "Code", + "Previous": true + }, + "responses": { + "200": { + "headers": {}, + "body": { + "Content": "Exception encountered: System.Net.Http.HttpRequestException: Response status code does not indicate success: 500 (Internal Server Error).\r\n\tat System.Net.Http.HttpResponseMessage.EnsureSuccessStatusCode()\r\n" + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetCorrelatedEventList.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetCorrelatedEventList.json new file mode 100644 index 000000000000..7e271b230d90 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetCorrelatedEventList.json @@ -0,0 +1,31 @@ +{ + "operationId": "GetCorrelatedEventList", + "description": "This example shows how to get all correlated events for a given eventInstanceId.", + "parameters": { + "eventInstanceId": "e00fa5b7-f747-40dd-9e09-f5a031e96de4", + "api-version": "6.4" + }, + "responses": { + "200": { + "headers": {}, + "body": [ + { + "Kind": "PartitionPrimaryMoveAnalysis", + "WhenMoveCompleted": "2018-04-03T20:06:55.966073Z", + "PreviousNode": "node3(b9d52c016a15a8f57673d3b8041e2d35)", + "CurrentNode": "node1(cf68563e16a44f808e86197a9cf83de5)", + "MoveReason": "ApplicationHostDown", + "RelevantTraces": "", + "PartitionId": "f2a6a893-39be-4c7d-b07f-72bc2d36de89", + "EventInstanceId": "59dde2bc-a833-412e-a56d-8f6ada0c7963", + "TimeStamp": "2018-04-03T20:07:55.966073Z", + "HasCorrelatedEvents": true, + "Metadata": { + "Delay": "00:00:20", + "Duration": "00:01:59" + } + } + ] + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetDataLossProgress-Running.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetDataLossProgress-Running.json new file mode 100644 index 000000000000..90590fff4f2f --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetDataLossProgress-Running.json @@ -0,0 +1,18 @@ +{ + "operationId": "GetDataLossProgress", + "description": "This shows an example of output when a data loss operation is in a Running State. If the State has a value of Running, only the State field will have a value.", + "parameters": { + "serviceId": "fabric:/myapp/myservice", + "partitionId": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d", + "OperationId": "7216486c-1ee9-4b00-99b2-92b26fcb07f5", + "api-version": "6.0" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "State": "Running" + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetDataLossProgress.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetDataLossProgress.json new file mode 100644 index 000000000000..89d341f05c26 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetDataLossProgress.json @@ -0,0 +1,25 @@ +{ + "operationId": "GetDataLossProgress", + "description": "This shows an example of possible output when GetDataLossProgress has reached a State of Completed. If the State has a value of Running, only the State field will have a value.", + "parameters": { + "serviceId": "fabric:/myapp/myservice", + "partitionId": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d", + "OperationId": "7216486c-1ee9-4b00-99b2-92b26fcb07f5", + "api-version": "6.0" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "State": "Completed", + "InvokeDataLossResult": { + "ErrorCode": 0, + "SelectedPartition": { + "ServiceName": "fabric:/myapp/myservice", + "PartitionId": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d" + } + } + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetDeployedApplicationInfoByName-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetDeployedApplicationInfoByName-1.json new file mode 100644 index 000000000000..8552057cbe2f --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetDeployedApplicationInfoByName-1.json @@ -0,0 +1,26 @@ +{ + "operationId": "GetDeployedApplicationInfoList", + "description": "This example shows how to get information about an application deployed on a specified node by using an application identifier. If the application is found it's information is returned with 200 status code. An empty response with status code 204 is returned, if the specified application is not deployed on the node.", + "parameters": { + "api-version": "6.1", + "nodeName": "_Node_0", + "applicationId": "samples~CalculatorApp", + "IncludeHealthState": true + }, + "responses": { + "200": { + "headers": {}, + "body": { + "Id": "samples~CalculatorApp", + "Name": "fabric:/samples/CalculatorApp", + "TypeName": "CalculatorApp", + "Status": "Active", + "WorkDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_1\\CalculatorApp_App0\\work", + "LogDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_1\\CalculatorApp_App0\\log", + "TempDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_1\\CalculatorApp_App0\\temp", + "HealthState": "Ok" + } + }, + "204": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetDeployedApplicationInfoList-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetDeployedApplicationInfoList-1.json new file mode 100644 index 000000000000..c19d4e2a841c --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetDeployedApplicationInfoList-1.json @@ -0,0 +1,39 @@ +{ + "operationId": "GetDeployedApplicationInfoList", + "description": "This example shows how to specify the number of applications returned by the query when getting information about applications deployed on a specific node. The number of results in a page are limited to maximum of 2 using the MaxResult parameter. Health state is not requested in this example, so the returned health state will be Unknown.", + "parameters": { + "api-version": "6.1", + "nodeName": "_Node_0", + "MaxResults": 2 + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "fabric:/samples/PQueueApp1", + "Items": [ + { + "Id": "samples~CalculatorApp", + "Name": "fabric:/samples/CalculatorApp", + "TypeName": "CalculatorApp", + "Status": "Active", + "WorkDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_0\\CalculatorApp_App0\\work", + "LogDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_0\\CalculatorApp_App0\\log", + "TempDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_0\\CalculatorApp_App0\\temp", + "HealthState": "Unknown" + }, + { + "Id": "samples~PQueueApp1", + "Name": "fabric:/samples/PQueueApp1", + "TypeName": "PersistentQueueApp", + "Status": "Active", + "WorkDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_0\\PersistentQueueApp_App1\\work", + "LogDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_0\\PersistentQueueApp_App1\\log", + "TempDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_0\\PersistentQueueApp_App1\\temp", + "HealthState": "Unknown" + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetDeployedApplicationInfoList-2.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetDeployedApplicationInfoList-2.json new file mode 100644 index 000000000000..7f6320e69e6d --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetDeployedApplicationInfoList-2.json @@ -0,0 +1,29 @@ +{ + "operationId": "GetDeployedApplicationInfoListByName", + "description": "This example demonstrates the paging functionality available when getting information about applications deployed on a specific node. This example uses the ContinuationToken parameter. The value of this parameter is provided from the previous query; in this case the example shown above. The response contains the remaining results and an empty ContinuationToken. The empty ContinuationToken indicates that additional results are not available.", + "parameters": { + "api-version": "6.1", + "nodeName": "_Node_0", + "ContinuationToken": "fabric:/samples/PQueueApp1" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "Id": "samples~VQueueApp1", + "Name": "fabric:/samples/VQueueApp1", + "TypeName": "VolatileQueueApp", + "Status": "Active", + "WorkDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_0\\VolatileQueueApp_App2\\work", + "LogDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_0\\VolatileQueueApp_App2\\log", + "TempDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_0\\VolatileQueueApp_App2\\temp", + "HealthState": "Unknown" + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetDeployedApplicationInfoList-3.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetDeployedApplicationInfoList-3.json new file mode 100644 index 000000000000..01cad866d3c1 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetDeployedApplicationInfoList-3.json @@ -0,0 +1,49 @@ +{ + "operationId": "GetDeployedApplicationInfoList", + "description": "This example shows how to include the health state of each deployed application when getting information about applications deployed on a specific node.", + "parameters": { + "api-version": "6.1", + "nodeName": "_Node_0", + "IncludeHealthState": true + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "Id": "samples~CalculatorApp", + "Name": "fabric:/samples/CalculatorApp", + "TypeName": "CalculatorApp", + "Status": "Active", + "WorkDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_0\\CalculatorApp_App0\\work", + "LogDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_0\\CalculatorApp_App0\\log", + "TempDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_0\\CalculatorApp_App0\\temp", + "HealthState": "Ok" + }, + { + "Id": "samples~PQueueApp1", + "Name": "fabric:/samples/PQueueApp1", + "TypeName": "PersistentQueueApp", + "Status": "Active", + "WorkDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_0\\PersistentQueueApp_App1\\work", + "LogDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_0\\PersistentQueueApp_App1\\log", + "TempDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_0\\PersistentQueueApp_App1\\temp", + "HealthState": "Ok" + }, + { + "Id": "samples~VQueueApp1", + "Name": "fabric:/samples/VQueueApp1", + "TypeName": "VolatileQueueApp", + "Status": "Active", + "WorkDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_0\\VolatileQueueApp_App2\\work", + "LogDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_0\\VolatileQueueApp_App2\\log", + "TempDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_0\\VolatileQueueApp_App2\\temp", + "HealthState": "Ok" + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetFaultOperationList.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetFaultOperationList.json new file mode 100644 index 000000000000..c7194dad614a --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetFaultOperationList.json @@ -0,0 +1,51 @@ +{ + "operationId": "GetFaultOperationList", + "description": "This shows an example of possible output for GetFaultOperationList", + "parameters": { + "TypeFilter": "0xFF", + "StateFilter": "0xFF", + "api-version": "6.0" + }, + "responses": { + "200": { + "headers": {}, + "body": [ + { + "OperationId": "00000000-0000-0000-0000-000000000010", + "State": "Completed", + "Type": "PartitionDataLoss" + }, + { + "OperationId": "00000000-0000-0000-0000-000000000020", + "State": "Completed", + "Type": "PartitionQuorumLoss" + }, + { + "OperationId": "00000000-0000-0000-0000-000000000030", + "State": "Completed", + "Type": "PartitionRestart" + }, + { + "OperationId": "00000000-0000-0000-0000-000000000500", + "State": "Faulted", + "Type": "NodeTransition" + }, + { + "OperationId": "00000000-0000-0000-0000-000000000700", + "State": "Completed", + "Type": "NodeTransition" + }, + { + "OperationId": "00000000-0000-0000-0000-000000000710", + "State": "Completed", + "Type": "NodeTransition" + }, + { + "OperationId": "88ef90f9-0b94-46b0-b817-a6ea20c07f8a", + "State": "Completed", + "Type": "PartitionRestart" + } + ] + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetImageStoreContent.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetImageStoreContent.json new file mode 100644 index 000000000000..7e912c407a79 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetImageStoreContent.json @@ -0,0 +1,91 @@ +{ + "operationId": "GetImageStoreContent", + "description": "This example shows how to get image store content under the given relative path.", + "parameters": { + "api-version": "6.2", + "contentPath": "Store\\CalcServiceApp" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "StoreFiles": [ + { + "StoreRelativePath": "Store\\CalcServiceApp\\ApplicationManifest.2.0.xml", + "FileVersion": { + "EpochDataLossNumber": "131510254310497004", + "VersionNumber": "23", + "EpochConfigurationNumber": "25769803776" + }, + "FileSize": "897", + "ModifiedDate": "2017-09-28T17:44:22.609Z" + }, + { + "StoreRelativePath": "Store\\CalcServiceApp\\CalcService.Code.2.0.checksum", + "FileVersion": { + "EpochDataLossNumber": "131510254310497004", + "VersionNumber": "25", + "EpochConfigurationNumber": "25769803776" + }, + "FileSize": "66", + "ModifiedDate": "2017-09-28T17:44:22.468Z" + }, + { + "StoreRelativePath": "Store\\CalcServiceApp\\CalcService.Config.1.0.checksum", + "FileVersion": { + "EpochDataLossNumber": "131510254310497004", + "VersionNumber": "26", + "EpochConfigurationNumber": "25769803776" + }, + "FileSize": "66", + "ModifiedDate": "2017-09-28T17:44:22.468Z" + }, + { + "StoreRelativePath": "Store\\CalcServiceApp\\CalcService.Data.2.0.checksum", + "FileVersion": { + "EpochDataLossNumber": "131510254310497004", + "VersionNumber": "27", + "EpochConfigurationNumber": "25769803776" + }, + "FileSize": "66", + "ModifiedDate": "2017-09-28T17:44:22.468Z" + }, + { + "StoreRelativePath": "Store\\CalcServiceApp\\CalcService.Manifest.2.0.xml", + "FileVersion": { + "EpochDataLossNumber": "131510254310497004", + "VersionNumber": "19", + "EpochConfigurationNumber": "25769803776" + }, + "FileSize": "744", + "ModifiedDate": "2017-09-28T17:44:22.578Z" + }, + { + "StoreRelativePath": "Store\\CalcServiceApp\\CalcService.Manifest.2.0.xml.checksum", + "FileVersion": { + "EpochDataLossNumber": "131510254310497004", + "VersionNumber": "24", + "EpochConfigurationNumber": "25769803776" + }, + "FileSize": "66", + "ModifiedDate": "2017-09-28T17:44:22.484Z" + } + ], + "StoreFolders": [ + { + "StoreRelativePath": "Store\\CalcServiceApp\\CalcService.Code.2.0", + "FileCount": "2" + }, + { + "StoreRelativePath": "Store\\CalcServiceApp\\CalcService.Config.1.0", + "FileCount": "2" + }, + { + "StoreRelativePath": "Store\\CalcServiceApp\\CalcService.Data.2.0", + "FileCount": "2" + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetImageStoreInfo.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetImageStoreInfo.json new file mode 100644 index 000000000000..e4360622b5fd --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetImageStoreInfo.json @@ -0,0 +1,36 @@ +{ + "operationId": "GetImageStoreInfo", + "description": "This example shows how to get ImageStore information.", + "parameters": { + "api-version": "6.5" + }, + "responses": { + "200": { + "headers": {}, + "body": [ + { + "DiskInfo": { + "Capacity": "500090007552", + "AvailableSpace": "228851900416" + }, + "UsedByMetadata": { + "UsedSpace": "23093248", + "FileCount": 6 + }, + "UsedByStaging": { + "UsedSpace": "6291456", + "FileCount": 9 + }, + "UsedByCopy": { + "UsedSpace": "4194304", + "FileCount": 2 + }, + "UsedByRegister": { + "UsedSpace": "4194304", + "FileCount": 3 + } + } + ] + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetNodeEventList.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetNodeEventList.json new file mode 100644 index 000000000000..4368ae718d58 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetNodeEventList.json @@ -0,0 +1,32 @@ +{ + "operationId": "GetNodeEventList", + "description": "This example shows how to get all node-related events during a certain time window.", + "parameters": { + "nodeName": "node1", + "api-version": "6.4", + "StartTimeUtc": "2018-04-03T18:00:00Z", + "EndTimeUtc": "2018-04-04T18:00:00Z" + }, + "responses": { + "200": { + "headers": {}, + "body": [ + { + "Kind": "NodeOpenSucceeded", + "NodeInstance": 131672596159209215, + "NodeId": "ba001a8bb353543e646be031afb10f1e", + "UpgradeDomain": "0", + "FaultDomain": "fd:/0", + "IpAddressOrFQDN": "100.78.240.56", + "Hostname": "RD0003FF5089AA", + "IsSeedNode": false, + "NodeVersion": "6.2:1.0", + "NodeName": "node1", + "EventInstanceId": "ecbce04a-a42b-4b70-a800-dfc6bc4f9b89", + "TimeStamp": "2018-04-03T20:06:55.966073Z", + "HasCorrelatedEvents": false + } + ] + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetNodeInfo-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetNodeInfo-1.json new file mode 100644 index 000000000000..24b8cfac97f7 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetNodeInfo-1.json @@ -0,0 +1,41 @@ +{ + "operationId": "GetNodeInfo", + "description": "This example shows how to get information about an node using it's identifier. If the node is found, information about it is returned with 200 status code. If the node is not found, empty content is returned with 204 status code.", + "parameters": { + "api-version": "6.0", + "nodeName": "_Node_1" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "Name": "_testnode_0", + "IpAddressOrFQDN": "10.0.0.4", + "Type": "testnode", + "CodeVersion": "6.3.139.9494", + "ConfigVersion": "5", + "NodeStatus": "Up", + "NodeUpTimeInSeconds": "18688", + "HealthState": "Ok", + "IsSeedNode": true, + "UpgradeDomain": "0", + "FaultDomain": "fd:/0", + "Id": { + "Id": "2acb9f55540659b1c95f27cc128ab326" + }, + "InstanceId": "131738240209152398", + "NodeDeactivationInfo": { + "NodeDeactivationIntent": "Invalid", + "NodeDeactivationStatus": "None", + "NodeDeactivationTask": [], + "PendingSafetyChecks": [] + }, + "IsStopped": false, + "NodeDownTimeInSeconds": "0", + "NodeUpAt": "2018-06-18T19:33:52.944Z", + "NodeDownAt": "2018-06-18T19:33:39.514Z" + } + }, + "204": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetNodeInfoList-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetNodeInfoList-1.json new file mode 100644 index 000000000000..91d58e88e0a4 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetNodeInfoList-1.json @@ -0,0 +1,72 @@ +{ + "operationId": "GetNodeInfoList", + "description": "This example shows how to get information about the nodes in the cluster when the number of results returned is limited by the MaxResults parameter.", + "parameters": { + "api-version": "6.3", + "MaxResults": 2 + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "nodeId123", + "Items": [ + { + "Name": "_testnode_1", + "IpAddressOrFQDN": "10.0.0.5", + "Type": "testnode", + "CodeVersion": "6.3.139.9494", + "ConfigVersion": "5", + "NodeStatus": "Up", + "NodeUpTimeInSeconds": "102016", + "HealthState": "Ok", + "IsSeedNode": true, + "UpgradeDomain": "1", + "FaultDomain": "fd:/1", + "Id": { + "Id": "nodeId123" + }, + "InstanceId": "131738274982501335", + "NodeDeactivationInfo": { + "NodeDeactivationIntent": "Invalid", + "NodeDeactivationStatus": "None", + "NodeDeactivationTask": [], + "PendingSafetyChecks": [] + }, + "IsStopped": false, + "NodeDownTimeInSeconds": "0", + "NodeUpAt": "2018-06-18T20:31:39.842Z", + "NodeDownAt": "2018-06-18T20:31:37.374Z" + }, + { + "Name": "_testnode_0", + "IpAddressOrFQDN": "10.0.0.4", + "Type": "testnode", + "CodeVersion": "6.3.139.9494", + "ConfigVersion": "5", + "NodeStatus": "Up", + "NodeUpTimeInSeconds": "105483", + "HealthState": "Ok", + "IsSeedNode": true, + "UpgradeDomain": "0", + "FaultDomain": "fd:/0", + "Id": { + "Id": "2acb9f55540659b1c95f27cc128ab326" + }, + "InstanceId": "131738240209152398", + "NodeDeactivationInfo": { + "NodeDeactivationIntent": "Invalid", + "NodeDeactivationStatus": "None", + "NodeDeactivationTask": [], + "PendingSafetyChecks": [] + }, + "IsStopped": false, + "NodeDownTimeInSeconds": "0", + "NodeUpAt": "2018-06-18T19:33:52.944Z", + "NodeDownAt": "2018-06-18T19:33:39.514Z" + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetNodeInfoList-2.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetNodeInfoList-2.json new file mode 100644 index 000000000000..db84f287848a --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetNodeInfoList-2.json @@ -0,0 +1,99 @@ +{ + "operationId": "GetNodeInfoList", + "description": "This example shows how to get information about nodes in the cluster which appear on a sequential page, by using the ContinuationToken parameter.", + "parameters": { + "api-version": "6.3", + "ContinuationToken": "nodeId123" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "Name": "_Node_4", + "IpAddressOrFQDN": "10.0.0.8", + "Type": "testnode", + "CodeVersion": "6.3.139.9494", + "ConfigVersion": "5", + "NodeStatus": "Up", + "NodeUpTimeInSeconds": "101547", + "HealthState": "Ok", + "IsSeedNode": true, + "UpgradeDomain": "4", + "FaultDomain": "fd:/4", + "Id": { + "Id": "nodeId123" + }, + "InstanceId": "131737415865259763", + "NodeDeactivationInfo": { + "NodeDeactivationIntent": "Invalid", + "NodeDeactivationStatus": "None", + "NodeDeactivationTask": [], + "PendingSafetyChecks": [] + }, + "IsStopped": false, + "NodeDownTimeInSeconds": "0", + "NodeUpAt": "2018-06-17T20:40:07.378Z", + "NodeDownAt": "2018-06-17T20:33:11.877Z" + }, + { + "Name": "_Node_3", + "IpAddressOrFQDN": "10.0.0.7", + "Type": "testnode", + "CodeVersion": "6.3.139.9494", + "ConfigVersion": "5", + "NodeStatus": "Up", + "NodeUpTimeInSeconds": "15615", + "HealthState": "Ok", + "IsSeedNode": true, + "UpgradeDomain": "3", + "FaultDomain": "fd:/3", + "Id": { + "Id": "d6a18a0935a3e39aeae2a049eb97255d" + }, + "InstanceId": "131738275300526952", + "NodeDeactivationInfo": { + "NodeDeactivationIntent": "Invalid", + "NodeDeactivationStatus": "None", + "NodeDeactivationTask": [], + "PendingSafetyChecks": [] + }, + "IsStopped": false, + "NodeDownTimeInSeconds": "0", + "NodeUpAt": "2018-06-18T20:32:18.884Z", + "NodeDownAt": "2018-06-18T20:31:59.128Z" + }, + { + "Name": "_Node_2", + "IpAddressOrFQDN": "10.0.0.6", + "Type": "testnode", + "CodeVersion": "6.3.139.9494", + "ConfigVersion": "5", + "NodeStatus": "Up", + "NodeUpTimeInSeconds": "19819", + "HealthState": "Ok", + "IsSeedNode": true, + "UpgradeDomain": "2", + "FaultDomain": "fd:/2", + "Id": { + "Id": "f2af91e5e9c8254dedb75b1424a9e3fc" + }, + "InstanceId": "131738233282843485", + "NodeDeactivationInfo": { + "NodeDeactivationIntent": "Invalid", + "NodeDeactivationStatus": "None", + "NodeDeactivationTask": [], + "PendingSafetyChecks": [] + }, + "IsStopped": false, + "NodeDownTimeInSeconds": "0", + "NodeUpAt": "2018-06-18T19:22:15.272Z", + "NodeDownAt": "2018-06-18T19:22:02.740Z" + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetNodeInfoList.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetNodeInfoList.json new file mode 100644 index 000000000000..d38a618440a9 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetNodeInfoList.json @@ -0,0 +1,152 @@ +{ + "operationId": "GetNodeInfoList", + "description": "This example shows how to get information about all the nodes in the cluster when the information fits in a single response message without the need for paging through ContinuationToken parameter.", + "parameters": { + "api-version": "6.3" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "Name": "_Node_1", + "IpAddressOrFQDN": "10.0.0.5", + "Type": "testnode", + "CodeVersion": "6.3.139.9494", + "ConfigVersion": "5", + "NodeStatus": "Up", + "NodeUpTimeInSeconds": "15275", + "HealthState": "Ok", + "IsSeedNode": true, + "UpgradeDomain": "1", + "FaultDomain": "fd:/1", + "Id": { + "Id": "ebd986a1134b3643a8117fb41b259bf" + }, + "InstanceId": "131738274982501335", + "NodeDeactivationInfo": { + "NodeDeactivationIntent": "Invalid", + "NodeDeactivationStatus": "None", + "NodeDeactivationTask": [], + "PendingSafetyChecks": [] + }, + "IsStopped": false, + "NodeDownTimeInSeconds": "0", + "NodeUpAt": "2018-06-18T20:31:39.842Z", + "NodeDownAt": "2018-06-18T20:31:37.374Z" + }, + { + "Name": "_Node_0", + "IpAddressOrFQDN": "10.0.0.4", + "Type": "testnode", + "CodeVersion": "6.3.139.9494", + "ConfigVersion": "5", + "NodeStatus": "Up", + "NodeUpTimeInSeconds": "18742", + "HealthState": "Ok", + "IsSeedNode": true, + "UpgradeDomain": "0", + "FaultDomain": "fd:/0", + "Id": { + "Id": "2acb9f55540659b1c95f27cc128ab326" + }, + "InstanceId": "131738240209152398", + "NodeDeactivationInfo": { + "NodeDeactivationIntent": "Invalid", + "NodeDeactivationStatus": "None", + "NodeDeactivationTask": [], + "PendingSafetyChecks": [] + }, + "IsStopped": false, + "NodeDownTimeInSeconds": "0", + "NodeUpAt": "2018-06-18T19:33:52.944Z", + "NodeDownAt": "2018-06-18T19:33:39.514Z" + }, + { + "Name": "_Node_4", + "IpAddressOrFQDN": "10.0.0.8", + "Type": "testnode", + "CodeVersion": "6.3.139.9494", + "ConfigVersion": "5", + "NodeStatus": "Up", + "NodeUpTimeInSeconds": "101168", + "HealthState": "Ok", + "IsSeedNode": true, + "UpgradeDomain": "4", + "FaultDomain": "fd:/4", + "Id": { + "Id": "ba9383d728221add7fa996bf67b757fb" + }, + "InstanceId": "131737415865259763", + "NodeDeactivationInfo": { + "NodeDeactivationIntent": "Invalid", + "NodeDeactivationStatus": "None", + "NodeDeactivationTask": [], + "PendingSafetyChecks": [] + }, + "IsStopped": false, + "NodeDownTimeInSeconds": "0", + "NodeUpAt": "2018-06-17T20:40:07.378Z", + "NodeDownAt": "2018-06-17T20:33:11.877Z" + }, + { + "Name": "_Node_3", + "IpAddressOrFQDN": "10.0.0.7", + "Type": "testnode", + "CodeVersion": "6.3.139.9494", + "ConfigVersion": "5", + "NodeStatus": "Up", + "NodeUpTimeInSeconds": "15236", + "HealthState": "Ok", + "IsSeedNode": true, + "UpgradeDomain": "3", + "FaultDomain": "fd:/3", + "Id": { + "Id": "d6a18a0935a3e39aeae2a049eb97255d" + }, + "InstanceId": "131738275300526952", + "NodeDeactivationInfo": { + "NodeDeactivationIntent": "Invalid", + "NodeDeactivationStatus": "None", + "NodeDeactivationTask": [], + "PendingSafetyChecks": [] + }, + "IsStopped": false, + "NodeDownTimeInSeconds": "0", + "NodeUpAt": "2018-06-18T20:32:18.884Z", + "NodeDownAt": "2018-06-18T20:31:59.128Z" + }, + { + "Name": "_Node_2", + "IpAddressOrFQDN": "10.0.0.6", + "Type": "testnode", + "CodeVersion": "6.3.139.9494", + "ConfigVersion": "5", + "NodeStatus": "Up", + "NodeUpTimeInSeconds": "19440", + "HealthState": "Ok", + "IsSeedNode": true, + "UpgradeDomain": "2", + "FaultDomain": "fd:/2", + "Id": { + "Id": "f2af91e5e9c8254dedb75b1424a9e3fc" + }, + "InstanceId": "131738233282843485", + "NodeDeactivationInfo": { + "NodeDeactivationIntent": "Invalid", + "NodeDeactivationStatus": "None", + "NodeDeactivationTask": [], + "PendingSafetyChecks": [] + }, + "IsStopped": false, + "NodeDownTimeInSeconds": "0", + "NodeUpAt": "2018-06-18T19:22:15.272Z", + "NodeDownAt": "2018-06-18T19:22:02.740Z" + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetNodeTransitionProgress-Running.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetNodeTransitionProgress-Running.json new file mode 100644 index 000000000000..62ad5c37ec58 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetNodeTransitionProgress-Running.json @@ -0,0 +1,17 @@ +{ + "operationId": "GetNodeTransitionProgress", + "description": "This shows an example of output when GetTransitionProgress has a State of Running.", + "parameters": { + "nodeName": "N0060", + "OperationId": "ed903556-acf1-489c-9f33-b484c31f9087", + "api-version": "6.0" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "State": "Running" + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetNodeTransitionProgress.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetNodeTransitionProgress.json new file mode 100644 index 000000000000..474ab826b8df --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetNodeTransitionProgress.json @@ -0,0 +1,24 @@ +{ + "operationId": "GetNodeTransitionProgress", + "description": "This shows an example of possible output when GetTransitionProgress has reached a State of Completed. If the State has a value of Running, only the State field will have a value.", + "parameters": { + "nodeName": "N0060", + "OperationId": "a9c24269-88e9-4812-b4ad-a0bf2b724ad4", + "api-version": "6.0" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "State": "Completed", + "NodeTransitionResult": { + "ErrorCode": 0, + "NodeResult": { + "NodeName": "N0060", + "NodeInstanceId": "131366982707950527" + } + } + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetNodesEventList.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetNodesEventList.json new file mode 100644 index 000000000000..7aed70b97f31 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetNodesEventList.json @@ -0,0 +1,46 @@ +{ + "operationId": "GetNodesEventList", + "description": "This example shows how to get all nodes-related events during a certain time window.", + "parameters": { + "api-version": "6.4", + "StartTimeUtc": "2018-04-03T18:00:00Z", + "EndTimeUtc": "2018-04-04T18:00:00Z" + }, + "responses": { + "200": { + "headers": {}, + "body": [ + { + "Kind": "NodeOpenSucceeded", + "NodeInstance": 131672596159209215, + "NodeId": "ba001a8bb353543e646be031afb10f1e", + "UpgradeDomain": "0", + "FaultDomain": "fd:/0", + "IpAddressOrFQDN": "100.78.240.56", + "Hostname": "RD0003FF5089AA", + "IsSeedNode": false, + "NodeVersion": "6.2:1.0", + "NodeName": "node1", + "EventInstanceId": "ecbce04a-a42b-4b70-a800-dfc6bc4f9b89", + "TimeStamp": "2018-04-03T20:06:55.966073Z", + "HasCorrelatedEvents": false + }, + { + "Kind": "NodeOpenSucceeded", + "NodeInstance": 131672596186027906, + "NodeId": "ba03ef91259835c54d674889849a7cee", + "UpgradeDomain": "3", + "FaultDomain": "fd:/3", + "IpAddressOrFQDN": "100.72.76.122", + "Hostname": "RD0003FF6047A8", + "IsSeedNode": false, + "NodeVersion": "6.2:1.0", + "NodeName": "node2", + "EventInstanceId": "67730c48-752c-4209-bf28-3c121555a4c0", + "TimeStamp": "2018-04-03T20:06:58.6357365Z", + "HasCorrelatedEvents": false + } + ] + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetPartitionBackupConfigurationInfo.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetPartitionBackupConfigurationInfo.json new file mode 100644 index 000000000000..dd97740de85f --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetPartitionBackupConfigurationInfo.json @@ -0,0 +1,24 @@ +{ + "operationId": "GetPartitionBackupConfigurationInfo", + "description": "This example shows how to get backup configuration for a partition.", + "parameters": { + "api-version": "6.4", + "partitionId": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "Kind": "Partition", + "PolicyName": "BackupPolicy2", + "PolicyInheritedFrom": "Service", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionId": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d", + "SuspensionInfo": { + "IsSuspended": true, + "SuspensionInheritedFrom": "Partition" + } + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetPartitionBackupList-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetPartitionBackupList-1.json new file mode 100644 index 000000000000..2c5fb63a2bc3 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetPartitionBackupList-1.json @@ -0,0 +1,64 @@ +{ + "operationId": "GetPartitionBackupList", + "description": "This example shows how to get list of partition backups within a time range.", + "parameters": { + "api-version": "6.4", + "partitionId": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d", + "StartDateTimeFilter": "2018-01-01T00:00:00Z", + "EndDateTimeFilter": "2018-01-01T23:59:59Z" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "BackupId": "3a056ac9-7206-43c3-8424-6f6103003eba", + "BackupChainId": "3a056ac9-7206-43c3-8424-6f6103003eba", + "ApplicationName": "fabric:/CalcApp", + "ServiceManifestVersion": "1.0.0", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d" + }, + "BackupLocation": "CalcApp\\CalcService\\1daae3f5-7fd6-42e9-b1ba-8c05f873994d\\2018-01-01 09.00.55.zip", + "BackupType": "Full", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "261", + "CreationTimeUtc": "2018-01-01T09:00:55Z", + "FailureError": null + }, + { + "BackupId": "7903dc2a-228d-44b0-b7c8-a13a6c9b46bd", + "BackupChainId": "3a056ac9-7206-43c3-8424-6f6103003eba", + "ApplicationName": "fabric:/CalcApp", + "ServiceManifestVersion": "1.0.0", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d" + }, + "BackupLocation": "CalcApp\\CalcService\\1daae3f5-7fd6-42e9-b1ba-8c05f873994d\\2018-01-01 17.01.02.zip", + "BackupType": "Incremental", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "446", + "CreationTimeUtc": "2018-01-01T17:01:02Z", + "FailureError": null + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetPartitionBackupList-2.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetPartitionBackupList-2.json new file mode 100644 index 000000000000..cc627b382457 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetPartitionBackupList-2.json @@ -0,0 +1,41 @@ +{ + "operationId": "GetPartitionBackupList", + "description": "This example shows how to get the latest backup for the specified partition.", + "parameters": { + "api-version": "6.4", + "partitionId": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d", + "Latest": true + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "BackupId": "be06a49c-be67-4eb1-a602-b983605be862", + "BackupChainId": "be06a49c-be67-4eb1-a602-b983605be862", + "ApplicationName": "fabric:/CalcApp", + "ServiceManifestVersion": "1.0.0", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d" + }, + "BackupLocation": "CalcApp\\CalcService\\1daae3f5-7fd6-42e9-b1ba-8c05f873994d\\2018-01-02 08.59.53.zip", + "BackupType": "Full", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "639", + "CreationTimeUtc": "2018-01-02T08:59:53Z", + "FailureError": null + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetPartitionBackupList-3.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetPartitionBackupList-3.json new file mode 100644 index 000000000000..2cddad80321f --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetPartitionBackupList-3.json @@ -0,0 +1,63 @@ +{ + "operationId": "GetPartitionBackupList", + "description": "This example shows how to get list of partition backups. The number of results in a page are limited to maximum of two using the MaxResult parameter.", + "parameters": { + "api-version": "6.4", + "partitionId": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d", + "MaxResults": 2 + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "fabric:/CalcApp/CalcService#1daae3f5-7fd6-42e9-b1ba-8c05f873994d#7903dc2a-228d-44b0-b7c8-a13a6c9b46bd", + "Items": [ + { + "BackupId": "3a056ac9-7206-43c3-8424-6f6103003eba", + "BackupChainId": "3a056ac9-7206-43c3-8424-6f6103003eba", + "ApplicationName": "fabric:/CalcApp", + "ServiceManifestVersion": "1.0.0", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d" + }, + "BackupLocation": "CalcApp\\CalcService\\1daae3f5-7fd6-42e9-b1ba-8c05f873994d\\2018-01-01 09.00.55.zip", + "BackupType": "Full", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "261", + "CreationTimeUtc": "2018-01-01T09:00:55Z", + "FailureError": null + }, + { + "BackupId": "7903dc2a-228d-44b0-b7c8-a13a6c9b46bd", + "BackupChainId": "3a056ac9-7206-43c3-8424-6f6103003eba", + "ApplicationName": "fabric:/CalcApp", + "ServiceManifestVersion": "1.0.0", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d" + }, + "BackupLocation": "CalcApp\\CalcService\\1daae3f5-7fd6-42e9-b1ba-8c05f873994d\\2018-01-01 17.01.02.zip", + "BackupType": "Incremental", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "446", + "CreationTimeUtc": "2018-01-01T17:01:02Z", + "FailureError": null + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetPartitionBackupList-4.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetPartitionBackupList-4.json new file mode 100644 index 000000000000..c73aaece09c8 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetPartitionBackupList-4.json @@ -0,0 +1,42 @@ +{ + "operationId": "GetPartitionBackupList", + "description": "This example shows how to get list of partition backups. The number of results in a page are limited to maximum of two using the MaxResult parameter. This example uses the ContinuationToken parameter. The value of this parameter is provided from the previous query; in this case the example shown above. The response contains the remaining results and an empty ContinuationToken. The empty ContinuationToken indicates that additional results are not available.", + "parameters": { + "api-version": "6.4", + "partitionId": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d", + "MaxResults": 2, + "ContinuationToken": "fabric:/CalcApp/CalcService#1daae3f5-7fd6-42e9-b1ba-8c05f873994d#7903dc2a-228d-44b0-b7c8-a13a6c9b46bd" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "BackupId": "be06a49c-be67-4eb1-a602-b983605be862", + "BackupChainId": "be06a49c-be67-4eb1-a602-b983605be862", + "ApplicationName": "fabric:/CalcApp", + "ServiceManifestVersion": "1.0.0", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d" + }, + "BackupLocation": "CalcApp\\CalcService\\1daae3f5-7fd6-42e9-b1ba-8c05f873994d\\2018-01-02 08.59.53.zip", + "BackupType": "Full", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "639", + "CreationTimeUtc": "2018-01-02T08:59:53Z", + "FailureError": null + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetPartitionBackupProgress.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetPartitionBackupProgress.json new file mode 100644 index 000000000000..9d0df23312a6 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetPartitionBackupProgress.json @@ -0,0 +1,25 @@ +{ + "operationId": "GetPartitionBackupProgress", + "description": "This shows an example of possible output when GetPartitionBackupProgress has reached a BackupState of Success. If the BackupState has a value of BackupInProgress, only the BackupState field will have a value.", + "parameters": { + "partitionId": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d", + "api-version": "6.4" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "BackupState": "Success", + "TimeStampUtc": "2018-01-01T09:00:55Z", + "BackupId": "3a056ac9-7206-43c3-8424-6f6103003eba", + "BackupLocation": "CalcApp\\CalcService\\1daae3f5-7fd6-42e9-b1ba-8c05f873994d\\2018-01-01 09.00.55.zip", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "261", + "FailureError": null + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetPartitionEventList.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetPartitionEventList.json new file mode 100644 index 000000000000..bbfca06712e9 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetPartitionEventList.json @@ -0,0 +1,37 @@ +{ + "operationId": "GetPartitionEventList", + "description": "This example shows how to get all partition-related events during a certain time window.", + "parameters": { + "partitionId": "f2a6a893-39be-4c7d-b07f-72bc2d36de89", + "api-version": "6.4", + "StartTimeUtc": "2018-04-03T18:00:00Z", + "EndTimeUtc": "2018-04-04T18:00:00Z" + }, + "responses": { + "200": { + "headers": {}, + "body": [ + { + "Kind": "PartitionReconfigured", + "NodeName": "node1", + "NodeInstanceId": "ba001a8bb353543e646be031afb10f1e", + "ServiceType": "Svc1Type", + "CcEpochDataLossVersion": 131672604833413107, + "CcEpochConfigVersion": 8589934595, + "ReconfigType": "Other", + "Result": "Completed", + "Phase0DurationMs": 0.0, + "Phase1DurationMs": 0.0, + "Phase2DurationMs": 203.1935, + "Phase3DurationMs": 0.0262, + "Phase4DurationMs": 628.8527, + "TotalDurationMs": 832.0724, + "PartitionId": "f2a6a893-39be-4c7d-b07f-72bc2d36de89", + "EventInstanceId": "e00fa5b7-f747-40dd-9e09-f5a031e96de4", + "TimeStamp": "2018-04-03T20:21:47.3778996Z", + "HasCorrelatedEvents": true + } + ] + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetPartitionRestartProgress.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetPartitionRestartProgress.json new file mode 100644 index 000000000000..074289b470a2 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetPartitionRestartProgress.json @@ -0,0 +1,25 @@ +{ + "operationId": "GetPartitionRestartProgress", + "description": "This shows an example of possible output when GetPartitionRestartProgress has reached a State of Completed. If the State has a value of Running, only the State field will have a value.", + "parameters": { + "serviceId": "fabric:/myapp/myservice", + "partitionId": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d", + "OperationId": "6eb7f0d3-49ca-4cb1-81b7-ac2d56b5c5d1", + "api-version": "6.0" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "State": "Completed", + "RestartPartitionResult": { + "ErrorCode": 0, + "SelectedPartition": { + "ServiceName": "fabric:/myapp/myservice", + "PartitionId": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d" + } + } + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetPartitionRestoreProgress.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetPartitionRestoreProgress.json new file mode 100644 index 000000000000..da52d1a100b9 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetPartitionRestoreProgress.json @@ -0,0 +1,23 @@ +{ + "operationId": "GetPartitionRestoreProgress", + "description": "This shows an example of possible output when GetPartitionRestoreProgress has reached a RestoreState of Success. If the RestoreState has a value of RestoreInProgress, only the RestoreState field will have a value.", + "parameters": { + "partitionId": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d", + "api-version": "6.4" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "RestoreState": "Success", + "TimeStampUtc": "2018-01-01T09:00:55Z", + "RestoredEpoch": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "RestoredLsn": "261", + "FailureError": null + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetPartitionsEventList.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetPartitionsEventList.json new file mode 100644 index 000000000000..e49c5e402b00 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetPartitionsEventList.json @@ -0,0 +1,56 @@ +{ + "operationId": "GetPartitionsEventList", + "description": "This example shows how to get all partitions-related events during a certain time window.", + "parameters": { + "api-version": "6.4", + "StartTimeUtc": "2018-04-03T18:00:00Z", + "EndTimeUtc": "2018-04-04T18:00:00Z" + }, + "responses": { + "200": { + "headers": {}, + "body": [ + { + "Kind": "PartitionReconfigured", + "NodeName": "node1", + "NodeInstanceId": "ba001a8bb353543e646be031afb10f1e", + "ServiceType": "Svc1Type", + "CcEpochDataLossVersion": 131672604833413107, + "CcEpochConfigVersion": 8589934595, + "ReconfigType": "Other", + "Result": "Completed", + "Phase0DurationMs": 0.0, + "Phase1DurationMs": 0.0, + "Phase2DurationMs": 203.1935, + "Phase3DurationMs": 0.0262, + "Phase4DurationMs": 628.8527, + "TotalDurationMs": 832.0724, + "PartitionId": "f2a6a893-39be-4c7d-b07f-72bc2d36de89", + "EventInstanceId": "e00fa5b7-f747-40dd-9e09-f5a031e96de4", + "TimeStamp": "2018-04-03T20:21:47.3778996Z", + "HasCorrelatedEvents": true + }, + { + "Kind": "PartitionReconfigured", + "NodeName": "node2", + "NodeInstanceId": "ba0459d257b028296deba8bd5add33cb", + "ServiceType": "Svc1Type", + "CcEpochDataLossVersion": 131672604833413107, + "CcEpochConfigVersion": 8589934596, + "ReconfigType": "Other", + "Result": "Completed", + "Phase0DurationMs": 0.0, + "Phase1DurationMs": 0.0, + "Phase2DurationMs": 205.667, + "Phase3DurationMs": 407.7781, + "Phase4DurationMs": 630.0935, + "TotalDurationMs": 1243.5386, + "PartitionId": "e12acfb3-2a43-4a1a-a252-aa5388ef1aec", + "EventInstanceId": "9aeb234a-16ef-4e8a-974e-26c60d6f2b86", + "TimeStamp": "2018-04-03T20:21:49.5155104Z", + "HasCorrelatedEvents": false + } + ] + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetPropertyInfo-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetPropertyInfo-1.json new file mode 100644 index 000000000000..ca5def4be2fb --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetPropertyInfo-1.json @@ -0,0 +1,29 @@ +{ + "operationId": "GetPropertyInfo", + "description": "This example shows how to get a Service Fabric property under a given name.", + "parameters": { + "api-version": "6.0", + "nameId": "samples/apps", + "PropertyName": "AppData" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "Name": "CalculatorAppData", + "Value": { + "Kind": "String", + "Data": "1+2=3" + }, + "Metadata": { + "TypeId": "String", + "CustomTypeId": "EquationType", + "Parent": "fabric:/samples/apps", + "SizeInBytes": 12, + "LastModifiedUtcTimestamp": "2017-07-17T04:27:19.049Z", + "SequenceNumber": "12" + } + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetPropertyInfoList-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetPropertyInfoList-1.json new file mode 100644 index 000000000000..5729c6a4e4a2 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetPropertyInfoList-1.json @@ -0,0 +1,41 @@ +{ + "operationId": "GetPropertyInfoList", + "description": "This example shows how to get all Service Fabric properties under a given name.", + "parameters": { + "api-version": "6.0", + "nameId": "samples/apps" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "PersistentQueueAppData$131439231986491349", + "IsConsistent": true, + "Properties": [ + { + "Name": "CalculatorAppData", + "Metadata": { + "TypeId": "Int64", + "CustomTypeId": "", + "Parent": "fabric:/samples/apps", + "SizeInBytes": 5, + "LastModifiedUtcTimestamp": "2017-07-17T04:27:19.049Z", + "SequenceNumber": "10" + } + }, + { + "Name": "PersistentQueueAppData", + "Metadata": { + "TypeId": "Binary", + "CustomTypeId": "InitializationDataType", + "Parent": "fabric:/samples/apps", + "SizeInBytes": 5, + "LastModifiedUtcTimestamp": "2017-07-17T04:36:19.049Z", + "SequenceNumber": "12" + } + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetPropertyInfoList-2.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetPropertyInfoList-2.json new file mode 100644 index 000000000000..6a172f23f09a --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetPropertyInfoList-2.json @@ -0,0 +1,56 @@ +{ + "operationId": "GetPropertyInfoList", + "description": "This example shows how to get all Service Fabric properties and their values under a given name.", + "parameters": { + "api-version": "6.0", + "nameId": "samples/apps", + "IncludeValues": true + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "PersistentQueueAppData$131439231986491349", + "IsConsistent": true, + "Properties": [ + { + "Name": "CalculatorAppData", + "Value": { + "Kind": "Int64", + "Data": "4534" + }, + "Metadata": { + "TypeId": "Int64", + "CustomTypeId": "", + "Parent": "fabric:/samples/apps", + "SizeInBytes": 8, + "LastModifiedUtcTimestamp": "2017-07-17T04:27:19.049Z", + "SequenceNumber": "10" + } + }, + { + "Name": "PersistentQueueAppData", + "Value": { + "Kind": "Binary", + "Data": [ + 6, + 7, + 8, + 9, + 10 + ] + }, + "Metadata": { + "TypeId": "Binary", + "CustomTypeId": "InitializationDataType", + "Parent": "fabric:/samples/apps", + "SizeInBytes": 5, + "LastModifiedUtcTimestamp": "2017-07-17T04:36:19.049Z", + "SequenceNumber": "12" + } + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetPropertyInfoList-3.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetPropertyInfoList-3.json new file mode 100644 index 000000000000..ce12465b6ce6 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetPropertyInfoList-3.json @@ -0,0 +1,36 @@ +{ + "operationId": "GetPropertyInfoList", + "description": "This example shows how to page through the information about properties under a given Service Fabric name using ContinuationToken parameter. The value of this parameter is provided from the previous query, in this case the example shown above. The response contains the remaining two results and an empty ContinuationToken. The empty ContinuationToken indicates that additional results are not available.", + "parameters": { + "api-version": "6.0", + "nameId": "samples/apps", + "IncludeValues": true, + "ContinuationToken": "PersistentQueueAppData$131439231986491349" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "IsConsistent": true, + "Properties": [ + { + "Name": "VolatileQueueAppData", + "Value": { + "Kind": "Double", + "Data": 67.89 + }, + "Metadata": { + "TypeId": "Double", + "CustomTypeId": "", + "Parent": "fabric:/samples/apps", + "SizeInBytes": 8, + "LastModifiedUtcTimestamp": "2017-07-17T04:01:19.049Z", + "SequenceNumber": "8" + } + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetQuorumLossProgress-Running.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetQuorumLossProgress-Running.json new file mode 100644 index 000000000000..203fb157db03 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetQuorumLossProgress-Running.json @@ -0,0 +1,18 @@ +{ + "operationId": "GetQuorumLossProgress", + "description": "This shows an example of possible output when GetQuorumLossProgress has a State of Running. If the State has a value of Running, only the State field will have a value.", + "parameters": { + "serviceId": "fabric:/myapp/myservice", + "partitionId": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d", + "OperationId": "81fbaee7-4f49-44bb-a350-4cb2b51dbf26", + "api-version": "6.0" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "State": "Running" + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetQuorumLossProgress.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetQuorumLossProgress.json new file mode 100644 index 000000000000..c86fd0d2b31d --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetQuorumLossProgress.json @@ -0,0 +1,25 @@ +{ + "operationId": "GetQuorumLossProgress", + "description": "This shows an example of possible output when GetQuorumLossProgress has reached a State of Completed. If the State has a value of Running, only the State field will have a value.", + "parameters": { + "serviceId": "fabric:/myapp/myservice", + "partitionId": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d", + "OperationId": "81fbaee7-4f49-44bb-a350-4cb2b51dbf26", + "api-version": "6.0" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "State": "Completed", + "InvokeQuorumLossResult": { + "ErrorCode": 0, + "SelectedPartition": { + "ServiceName": "fabric:/myapp/myservice", + "PartitionId": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d" + } + } + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetReplicaEventList.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetReplicaEventList.json new file mode 100644 index 000000000000..a3b517117bac --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetReplicaEventList.json @@ -0,0 +1,35 @@ +{ + "operationId": "GetPartitionReplicaEventList", + "description": "This example shows how to get all replica-related events during a certain time window.", + "parameters": { + "partitionId": "f2a6a893-39be-4c7d-b07f-72bc2d36de89", + "replicaId": 131672608994209130, + "api-version": "6.4", + "StartTimeUtc": "2018-04-03T18:00:00Z", + "EndTimeUtc": "2018-04-04T18:00:00Z" + }, + "responses": { + "200": { + "headers": {}, + "body": [ + { + "Kind": "StatefulReplicaNewHealthReport", + "ReplicaInstanceId": 131672608994209130, + "SourceId": "TestSource", + "Property": "", + "HealthState": "Error", + "TimeToLiveMs": 922337203685477, + "SequenceNumber": 131672654189677787, + "Description": "", + "RemoveWhenExpired": false, + "SourceUtcTimestamp": "2018-04-03T21:43:38Z", + "PartitionId": "f2a6a893-39be-4c7d-b07f-72bc2d36de89", + "ReplicaId": 131672608994209130, + "EventInstanceId": "b2684da3-df81-4add-8baa-201f73e9195d", + "TimeStamp": "2018-04-03T21:43:38.8904013Z", + "HasCorrelatedEvents": false + } + ] + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetReplicasEventList.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetReplicasEventList.json new file mode 100644 index 000000000000..1d2e9212dfcc --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetReplicasEventList.json @@ -0,0 +1,51 @@ +{ + "operationId": "GetPartitionReplicasEventList", + "description": "This example shows how to get all replicas-related events during a certain time window.", + "parameters": { + "partitionId": "f2a6a893-39be-4c7d-b07f-72bc2d36de89", + "api-version": "6.4", + "StartTimeUtc": "2018-04-03T18:00:00Z", + "EndTimeUtc": "2018-04-04T18:00:00Z" + }, + "responses": { + "200": { + "headers": {}, + "body": [ + { + "Kind": "StatefulReplicaNewHealthReport", + "ReplicaInstanceId": 131672608994209130, + "SourceId": "TestSource", + "Property": "", + "HealthState": "Error", + "TimeToLiveMs": 922337203685477, + "SequenceNumber": 131672654189677787, + "Description": "", + "RemoveWhenExpired": false, + "SourceUtcTimestamp": "2018-04-03T21:43:38Z", + "PartitionId": "f2a6a893-39be-4c7d-b07f-72bc2d36de89", + "ReplicaId": 131672608994209130, + "EventInstanceId": "b2684da3-df81-4add-8baa-201f73e9195d", + "TimeStamp": "2018-04-03T21:43:38.8904013Z", + "HasCorrelatedEvents": false + }, + { + "Kind": "StatefulReplicaNewHealthReport", + "ReplicaInstanceId": 177872608994339550, + "SourceId": "TestSource", + "Property": "", + "HealthState": "Error", + "TimeToLiveMs": 922337203685477, + "SequenceNumber": 131672654189677788, + "Description": "", + "RemoveWhenExpired": false, + "SourceUtcTimestamp": "2018-04-03T21:44:38Z", + "PartitionId": "f549f3b3-08c2-4ec4-adb4-415e024cb0ef", + "ReplicaId": 177872608994339550, + "EventInstanceId": "4a8851d8-35a3-4618-b4ac-03ffa191c350", + "TimeStamp": "2018-04-03T21:44:38.8904013Z", + "HasCorrelatedEvents": false + } + ] + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetServiceBackupConfigurationInfo-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetServiceBackupConfigurationInfo-1.json new file mode 100644 index 000000000000..ab37c65b803f --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetServiceBackupConfigurationInfo-1.json @@ -0,0 +1,40 @@ +{ + "operationId": "GetServiceBackupConfigurationInfo", + "description": "This example shows how to get list of backup configuration for this service and partitions under this service. The number of results in a page are limited to maximum of two using the MaxResult parameter.", + "parameters": { + "api-version": "6.4", + "serviceId": "CalcApp/CalcService", + "MaxResults": 2 + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "fabric:/CalcApp/CalcService#1daae3f5-7fd6-42e9-b1ba-8c05f873994d", + "Items": [ + { + "Kind": "Service", + "PolicyName": "BackupPolicy1", + "PolicyInheritedFrom": "Application", + "ServiceName": "fabric:/CalcApp/CalcService", + "SuspensionInfo": { + "IsSuspended": false, + "SuspensionInheritedFrom": "Invalid" + } + }, + { + "Kind": "Partition", + "PolicyName": "BackupPolicy2", + "PolicyInheritedFrom": "Partition", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionId": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d", + "SuspensionInfo": { + "IsSuspended": false, + "SuspensionInheritedFrom": "Invalid" + } + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetServiceBackupConfigurationInfo-2.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetServiceBackupConfigurationInfo-2.json new file mode 100644 index 000000000000..76e7e948550d --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetServiceBackupConfigurationInfo-2.json @@ -0,0 +1,31 @@ +{ + "operationId": "GetServiceBackupConfigurationInfo", + "description": "This example shows how to get list of backup configuration for this service and partitions under this service. The number of results in a page are limited to maximum of two using the MaxResult parameter. This example uses the ContinuationToken parameter. The value of this parameter is provided from the previous query; in this case the example shown above. The response contains the remaining results and an empty ContinuationToken. The empty ContinuationToken indicates that additional results are not available.", + "parameters": { + "api-version": "6.4", + "serviceId": "CalcApp/CalcService", + "MaxResults": 2, + "ContinuationToken": "fabric:/CalcApp/CalcService#1daae3f5-7fd6-42e9-b1ba-8c05f873994d" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "Kind": "Partition", + "PolicyName": "BackupPolicy1", + "PolicyInheritedFrom": "Application", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionId": "7216486c-1ee9-4b00-99b2-92b26fcb07f6", + "SuspensionInfo": { + "IsSuspended": true, + "SuspensionInheritedFrom": "Partition" + } + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetServiceBackupList-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetServiceBackupList-1.json new file mode 100644 index 000000000000..b561b1b20f84 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetServiceBackupList-1.json @@ -0,0 +1,108 @@ +{ + "operationId": "GetServiceBackupList", + "description": "This example shows how to get list of service backups within a time range.", + "parameters": { + "api-version": "6.4", + "serviceId": "CalcApp/CalcService", + "StartDateTimeFilter": "2018-01-01T00:00:00Z", + "EndDateTimeFilter": "2018-01-01T23:59:59Z" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "BackupId": "3a056ac9-7206-43c3-8424-6f6103003eba", + "BackupChainId": "3a056ac9-7206-43c3-8424-6f6103003eba", + "ApplicationName": "fabric:/CalcApp", + "ServiceManifestVersion": "1.0.0", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d" + }, + "BackupLocation": "CalcApp\\CalcService\\1daae3f5-7fd6-42e9-b1ba-8c05f873994d\\2018-01-01 09.00.55.zip", + "BackupType": "Full", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "261", + "CreationTimeUtc": "2018-01-01T09:00:55Z", + "FailureError": null + }, + { + "BackupId": "7903dc2a-228d-44b0-b7c8-a13a6c9b46bd", + "BackupChainId": "3a056ac9-7206-43c3-8424-6f6103003eba", + "ApplicationName": "fabric:/CalcApp", + "ServiceManifestVersion": "1.0.0", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d" + }, + "BackupLocation": "CalcApp\\CalcService\\1daae3f5-7fd6-42e9-b1ba-8c05f873994d\\2018-01-01 17.01.02.zip", + "BackupType": "Incremental", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "446", + "CreationTimeUtc": "2018-01-01T17:01:02Z", + "FailureError": null + }, + { + "BackupId": "0ff4fdbe-131c-4dfb-8249-7b4029ddc014", + "BackupChainId": "0ff4fdbe-131c-4dfb-8249-7b4029ddc014", + "ApplicationName": "fabric:/CalcApp", + "ServiceManifestVersion": "1.0.0", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "81645ec7-d260-4c59-9533-8f129bde8e83" + }, + "BackupLocation": "CalcApp\\CalcService\\81645ec7-d260-4c59-9533-8f129bde8e83\\2018-01-01 09.01.02.zip", + "BackupType": "Full", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "161", + "CreationTimeUtc": "2018-01-01T09:01:02Z", + "FailureError": null + }, + { + "BackupId": "d55a2d98-258b-4a34-8fe5-2063e81af9dc", + "BackupChainId": "0ff4fdbe-131c-4dfb-8249-7b4029ddc014", + "ApplicationName": "fabric:/CalcApp", + "ServiceManifestVersion": "1.0.0", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "81645ec7-d260-4c59-9533-8f129bde8e83" + }, + "BackupLocation": "CalcApp\\CalcService\\81645ec7-d260-4c59-9533-8f129bde8e83\\2018-01-01 17.00.34.zip", + "BackupType": "Incremental", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "246", + "CreationTimeUtc": "2018-01-01T17:00:34Z", + "FailureError": null + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetServiceBackupList-2.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetServiceBackupList-2.json new file mode 100644 index 000000000000..df570db76649 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetServiceBackupList-2.json @@ -0,0 +1,63 @@ +{ + "operationId": "GetServiceBackupList", + "description": "This example shows how to get the latest backup for each partition within a service.", + "parameters": { + "api-version": "6.4", + "serviceId": "CalcApp/CalcService", + "Latest": true + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "BackupId": "7903dc2a-228d-44b0-b7c8-a13a6c9b46bd", + "BackupChainId": "3a056ac9-7206-43c3-8424-6f6103003eba", + "ApplicationName": "fabric:/CalcApp", + "ServiceManifestVersion": "1.0.0", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d" + }, + "BackupLocation": "CalcApp\\CalcService\\1daae3f5-7fd6-42e9-b1ba-8c05f873994d\\2018-01-01 17.01.02.zip", + "BackupType": "Incremental", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "446", + "CreationTimeUtc": "2018-01-01T17:01:02Z", + "FailureError": null + }, + { + "BackupId": "d55a2d98-258b-4a34-8fe5-2063e81af9dc", + "BackupChainId": "0ff4fdbe-131c-4dfb-8249-7b4029ddc014", + "ApplicationName": "fabric:/CalcApp", + "ServiceManifestVersion": "1.0.0", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "81645ec7-d260-4c59-9533-8f129bde8e83" + }, + "BackupLocation": "CalcApp\\CalcService\\81645ec7-d260-4c59-9533-8f129bde8e83\\2018-01-01 17.00.34.zip", + "BackupType": "Incremental", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "246", + "CreationTimeUtc": "2018-01-01T17:00:34Z", + "FailureError": null + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetServiceBackupList-3.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetServiceBackupList-3.json new file mode 100644 index 000000000000..5b162231a889 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetServiceBackupList-3.json @@ -0,0 +1,63 @@ +{ + "operationId": "GetServiceBackupList", + "description": "This example shows how to get list of service backups. The number of results in a page are limited to maximum of two using the MaxResult parameter.", + "parameters": { + "api-version": "6.4", + "serviceId": "CalcApp/CalcService", + "MaxResults": 2 + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "fabric:/CalcApp/CalcService#1daae3f5-7fd6-42e9-b1ba-8c05f873994d#7903dc2a-228d-44b0-b7c8-a13a6c9b46bd", + "Items": [ + { + "BackupId": "3a056ac9-7206-43c3-8424-6f6103003eba", + "BackupChainId": "3a056ac9-7206-43c3-8424-6f6103003eba", + "ApplicationName": "fabric:/CalcApp", + "ServiceManifestVersion": "1.0.0", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d" + }, + "BackupLocation": "CalcApp\\CalcService\\1daae3f5-7fd6-42e9-b1ba-8c05f873994d\\2018-01-01 09.00.55.zip", + "BackupType": "Full", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "261", + "CreationTimeUtc": "2018-01-01T09:00:55Z", + "FailureError": null + }, + { + "BackupId": "7903dc2a-228d-44b0-b7c8-a13a6c9b46bd", + "BackupChainId": "3a056ac9-7206-43c3-8424-6f6103003eba", + "ApplicationName": "fabric:/CalcApp", + "ServiceManifestVersion": "1.0.0", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d" + }, + "BackupLocation": "CalcApp\\CalcService\\1daae3f5-7fd6-42e9-b1ba-8c05f873994d\\2018-01-01 17.01.02.zip", + "BackupType": "Incremental", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "446", + "CreationTimeUtc": "2018-01-01T17:01:02Z", + "FailureError": null + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetServiceBackupList-4.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetServiceBackupList-4.json new file mode 100644 index 000000000000..7420d61aca49 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetServiceBackupList-4.json @@ -0,0 +1,64 @@ +{ + "operationId": "GetServiceBackupList", + "description": "This example shows how to get list of service backups. The number of results in a page are limited to maximum of two using the MaxResult parameter. This example uses the ContinuationToken parameter. The value of this parameter is provided from the previous query; in this case the example shown above. The response contains the remaining results and an empty ContinuationToken. The empty ContinuationToken indicates that additional results are not available.", + "parameters": { + "api-version": "6.4", + "serviceId": "CalcApp/CalcService", + "MaxResults": 2, + "ContinuationToken": "fabric:/CalcApp/CalcService#1daae3f5-7fd6-42e9-b1ba-8c05f873994d#7903dc2a-228d-44b0-b7c8-a13a6c9b46bd" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "BackupId": "0ff4fdbe-131c-4dfb-8249-7b4029ddc014", + "BackupChainId": "0ff4fdbe-131c-4dfb-8249-7b4029ddc014", + "ApplicationName": "fabric:/CalcApp", + "ServiceManifestVersion": "1.0.0", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "81645ec7-d260-4c59-9533-8f129bde8e83" + }, + "BackupLocation": "CalcApp\\CalcService\\81645ec7-d260-4c59-9533-8f129bde8e83\\2018-01-01 09.01.02.zip", + "BackupType": "Full", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "161", + "CreationTimeUtc": "2018-01-01T09:01:02Z", + "FailureError": null + }, + { + "BackupId": "d55a2d98-258b-4a34-8fe5-2063e81af9dc", + "BackupChainId": "0ff4fdbe-131c-4dfb-8249-7b4029ddc014", + "ApplicationName": "fabric:/CalcApp", + "ServiceManifestVersion": "1.0.0", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "81645ec7-d260-4c59-9533-8f129bde8e83" + }, + "BackupLocation": "CalcApp\\CalcService\\81645ec7-d260-4c59-9533-8f129bde8e83\\2018-01-01 17.00.34.zip", + "BackupType": "Incremental", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "246", + "CreationTimeUtc": "2018-01-01T17:00:34Z", + "FailureError": null + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetServiceEventList.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetServiceEventList.json new file mode 100644 index 000000000000..fdaa115873cd --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetServiceEventList.json @@ -0,0 +1,34 @@ +{ + "operationId": "GetServiceEventList", + "description": "This example shows how to get all service-related events during a certain time window.", + "parameters": { + "serviceId": "app1~svc1", + "api-version": "6.4", + "StartTimeUtc": "2018-04-03T18:00:00Z", + "EndTimeUtc": "2018-04-04T18:00:00Z" + }, + "responses": { + "200": { + "headers": {}, + "body": [ + { + "Kind": "ServiceCreated", + "ServiceTypeName": "Svc1Type", + "ApplicationName": "fabric:/app1", + "ApplicationTypeName": "App1Type", + "ServiceInstance": 131672605579916062, + "IsStateful": true, + "PartitionCount": 2, + "TargetReplicaSetSize": 3, + "MinReplicaSetSize": 2, + "ServicePackageVersion": "1.0:1.0", + "PartitionId": "bd936249-183d-4e29-94ab-2e198e4e2e87", + "ServiceId": "app1/svc1", + "EventInstanceId": "8ba26506-4a93-4b8c-ae14-29a2841b3003", + "TimeStamp": "2018-04-03T20:22:38.0560496Z", + "HasCorrelatedEvents": false + } + ] + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetServiceTypeInfoByName-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetServiceTypeInfoByName-1.json new file mode 100644 index 000000000000..4340954856fe --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetServiceTypeInfoByName-1.json @@ -0,0 +1,36 @@ +{ + "operationId": "GetServiceTypeInfoByName", + "description": "This example shows how to get information about a specific service type. A 204 response is returned if the specified service type is not found in the cluster.", + "parameters": { + "api-version": "6.0", + "applicationTypeName": "Application2Type", + "ApplicationTypeVersion": "1.0.0", + "serviceTypeName": "Actor1ActorServiceType" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ServiceTypeDescription": { + "IsStateful": true, + "ServiceTypeName": "Actor1ActorServiceType", + "PlacementConstraints": "", + "HasPersistedState": true, + "Kind": "Stateful", + "Extensions": [ + { + "Key": "__GeneratedServiceType__", + "Value": "\r\n \r\n \r\n \r\n \r\n \r\n \r\n " + } + ], + "LoadMetrics": [], + "ServicePlacementPolicies": [] + }, + "ServiceManifestVersion": "1.0.0", + "ServiceManifestName": "Actor1Pkg", + "IsServiceGroup": false + } + }, + "204": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetServiceTypeInfoList-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetServiceTypeInfoList-1.json new file mode 100644 index 000000000000..a4481bfa08c0 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetServiceTypeInfoList-1.json @@ -0,0 +1,36 @@ +{ + "operationId": "GetServiceTypeInfoList", + "description": "This example shows how to get information about service types that are supported by a provisioned application type in a Service Fabric cluster.", + "parameters": { + "api-version": "6.0", + "applicationTypeName": "Application2Type", + "ApplicationTypeVersion": "1.0.0" + }, + "responses": { + "200": { + "headers": {}, + "body": [ + { + "ServiceTypeDescription": { + "IsStateful": true, + "ServiceTypeName": "Actor1ActorServiceType", + "PlacementConstraints": "", + "HasPersistedState": true, + "Kind": "Stateful", + "Extensions": [ + { + "Key": "__GeneratedServiceType__", + "Value": "\r\n \r\n \r\n \r\n \r\n \r\n \r\n " + } + ], + "LoadMetrics": [], + "ServicePlacementPolicies": [] + }, + "ServiceManifestVersion": "1.0.0", + "ServiceManifestName": "Actor1Pkg", + "IsServiceGroup": false + } + ] + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetServicesEventList.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetServicesEventList.json new file mode 100644 index 000000000000..2d5863180a5a --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetServicesEventList.json @@ -0,0 +1,50 @@ +{ + "operationId": "GetServicesEventList", + "description": "This example shows how to get all services-related events during a certain time window.", + "parameters": { + "api-version": "6.4", + "StartTimeUtc": "2018-04-03T18:00:00Z", + "EndTimeUtc": "2018-04-04T18:00:00Z" + }, + "responses": { + "200": { + "headers": {}, + "body": [ + { + "Kind": "ServiceCreated", + "ServiceTypeName": "Svc1Type", + "ApplicationName": "fabric:/app1", + "ApplicationTypeName": "App1Type", + "ServiceInstance": 131672605579916062, + "IsStateful": true, + "PartitionCount": 2, + "TargetReplicaSetSize": 3, + "MinReplicaSetSize": 2, + "ServicePackageVersion": "1.0:1.0", + "PartitionId": "bd936249-183d-4e29-94ab-2e198e4e2e87", + "ServiceId": "app1/svc1", + "EventInstanceId": "8ba26506-4a93-4b8c-ae14-29a2841b3003", + "TimeStamp": "2018-04-03T20:22:38.0560496Z", + "HasCorrelatedEvents": false + }, + { + "Kind": "ServiceCreated", + "ServiceTypeName": "Svc2Type", + "ApplicationName": "fabric:/app1", + "ApplicationTypeName": "App1Type", + "ServiceInstance": 131672605579916062, + "IsStateful": true, + "PartitionCount": 2, + "TargetReplicaSetSize": 3, + "MinReplicaSetSize": 2, + "ServicePackageVersion": "1.0:1.0", + "PartitionId": "87413d64-0134-4b23-a439-c2692c4e3ec3", + "ServiceId": "app1/svc2", + "EventInstanceId": "03246d3b-77f5-4ca2-b065-7b8671711318", + "TimeStamp": "2018-04-03T20:22:38.056197Z", + "HasCorrelatedEvents": false + } + ] + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetSubNameInfoList-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetSubNameInfoList-1.json new file mode 100644 index 000000000000..282319140d86 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetSubNameInfoList-1.json @@ -0,0 +1,21 @@ +{ + "operationId": "GetSubNameInfoList", + "description": "This example shows how to get information about all sub names of a given Service Fabric name.", + "parameters": { + "api-version": "6.0", + "nameId": "samples" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "IsConsistent": true, + "SubNames": [ + "fabric:/samples/CalculatorApp", + "fabric:/samples/mynames" + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetSubNameInfoList-2.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetSubNameInfoList-2.json new file mode 100644 index 000000000000..15391854f370 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetSubNameInfoList-2.json @@ -0,0 +1,27 @@ +{ + "operationId": "GetSubNameInfoList", + "description": "This example shows how to recursively get information about all child sub names of a given Service Fabric name.", + "parameters": { + "api-version": "6.0", + "nameId": "samples", + "Recursive": true + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "IsConsistent": true, + "SubNames": [ + "fabric:/samples/apps", + "fabric:/samples/data", + "fabric:/samples/CalculatorApp", + "fabric:/samples/CalculatorApp/CalculatorService", + "fabric:/samples/CalculatorApp/CalculatorService/Name-1", + "fabric:/samples/CalculatorApp/CalculatorService/Name-2", + "fabric:/samples/mynames/name-1" + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetSubNameInfoList-3.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetSubNameInfoList-3.json new file mode 100644 index 000000000000..bf07c9c58bc4 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetSubNameInfoList-3.json @@ -0,0 +1,23 @@ +{ + "operationId": "GetSubNameInfoList", + "description": "This example shows how to page through the information about sub names under a given Service Fabric name using ContinuationToken parameter. The value of this parameter is provided from the previous query, in this case the example shown above. The response contains the remaining two results and an empty ContinuationToken. The empty ContinuationToken indicates that additional results are not available.", + "parameters": { + "api-version": "6.0", + "nameId": "samples", + "Recursive": true, + "ContinuationToken": "fabric:/samples/apps/PersistentQueueApp$131439231986491349" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "IsConsistent": true, + "SubNames": [ + "fabric:/samples/apps/VolatileQueueApp", + "fabric:/samples/apps/NotepadApp" + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetUploadSessionById.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetUploadSessionById.json new file mode 100644 index 000000000000..c565a13cfcbc --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetUploadSessionById.json @@ -0,0 +1,33 @@ +{ + "operationId": "GetImageStoreUploadSessionById", + "description": "This example shows how to get image store upload session by a given ID.", + "parameters": { + "api-version": "6.0", + "session-id": "4a2340e8-d8d8-497c-95fe-cdaa1052f33b" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "UploadSessions": [ + { + "StoreRelativePath": "SwaggerTest\\Common.dll", + "SessionId": "4a2340e8-d8d8-497c-95fe-cdaa1052f33b", + "FileSize": "2097152", + "ModifiedDate": "2017-09-28T17:06:37.260Z", + "ExpectedRanges": [ + { + "StartPosition": "0", + "EndPosition": "402128" + }, + { + "StartPosition": "730105", + "EndPosition": "2097151" + } + ] + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetUploadSessionByPath.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetUploadSessionByPath.json new file mode 100644 index 000000000000..8dc66b6d107d --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/GetUploadSessionByPath.json @@ -0,0 +1,49 @@ +{ + "operationId": "GetImageStoreUploadSessionByPath", + "description": "This example shows how to get image store upload session by a given relative path.", + "parameters": { + "api-version": "6.0", + "contentPath": "SwaggerTest\\Common.dll" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "UploadSessions": [ + { + "StoreRelativePath": "SwaggerTest\\Common.dll", + "SessionId": "2032ac6c-a348-4594-86da-dab0f2bb1ae1", + "FileSize": "2097152", + "ModifiedDate": "2017-09-28T17:28:11.627Z", + "ExpectedRanges": [ + { + "StartPosition": "0", + "EndPosition": "207615" + }, + { + "StartPosition": "626977", + "EndPosition": "2097151" + } + ] + }, + { + "StoreRelativePath": "SwaggerTest\\Common.dll", + "SessionId": "fb2da2b2-7cb4-45d2-a2e6-c4888d205bc5", + "FileSize": "2097152", + "ModifiedDate": "2017-09-28T17:28:11.643Z", + "ExpectedRanges": [ + { + "StartPosition": "0", + "EndPosition": "616947" + }, + { + "StartPosition": "1087529", + "EndPosition": "2097151" + } + ] + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/InvokeContainerApi.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/InvokeContainerApi.json new file mode 100644 index 000000000000..bfe285758eec --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/InvokeContainerApi.json @@ -0,0 +1,27 @@ +{ + "operationId": "InvokeContainerApi", + "description": "This example shows how to call container API with HTTP GET for a code package deployed on a node.", + "parameters": { + "api-version": "6.2", + "nodeName": "Node01", + "applicationId": "samples/winnodejs", + "ServiceManifestName": "NodeServicePackage", + "CodePackageName": "NodeService.Code", + "CodePackageInstanceId": "131668159770315380", + "ContainerApiRequestBody": { + "UriPath": "/containers/{id}/logs?stdout=true&stderr=true" + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContainerApiResult": { + "Status": 200, + "Content-Type": "text/plain; charset=utf-8", + "Body": "vEthernet (Container NIC ec5c19b2) 172.17.201.44\n" + } + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/InvokeContainerApi_Post.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/InvokeContainerApi_Post.json new file mode 100644 index 000000000000..0042fd341de0 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/InvokeContainerApi_Post.json @@ -0,0 +1,29 @@ +{ + "operationId": "InvokeContainerApi", + "description": "This example shows how to call container API with HTTP POST for a code package deployed on a node.", + "parameters": { + "api-version": "6.2", + "nodeName": "N0020", + "applicationId": "samples/nodejs1", + "ServiceManifestName": "NodeOnSF", + "CodePackageName": "Code", + "CodePackageInstanceId": "131673596679688285", + "ContainerApiRequestBody": { + "HttpVerb": "POST", + "UriPath": "/containers/{id}/update", + "Body": "{ \"CpuShares\": 512}" + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContainerApiResult": { + "Status": 200, + "Content-Type": "application/json", + "Body": "{\"Warnings\":null}\n" + } + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/PutProperty-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/PutProperty-1.json new file mode 100644 index 000000000000..8eee209e7c7b --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/PutProperty-1.json @@ -0,0 +1,25 @@ +{ + "operationId": "PutProperty", + "description": "This example shows how to create or update a Service Fabric property under a given name.", + "parameters": { + "api-version": "6.0", + "nameId": "samples/apps/CalculatorApp", + "PropertyDescription": { + "PropertyName": "AppData", + "Value": { + "Kind": "Binary", + "Data": [ + 0, + 1, + 2, + 3, + 4, + 5 + ] + } + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/PutProperty-2.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/PutProperty-2.json new file mode 100644 index 000000000000..5db6a9ad77f7 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/PutProperty-2.json @@ -0,0 +1,19 @@ +{ + "operationId": "PutProperty", + "description": "This example shows how to create or update a Service Fabric property under a given name with a custom type.", + "parameters": { + "api-version": "6.0", + "nameId": "samples/apps/CalculatorApp", + "PropertyDescription": { + "PropertyName": "AppData", + "Value": { + "Kind": "String", + "Data": "1+2=3" + }, + "CustomTypeId": "EquationType" + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Applications/Services/Replicas/CodePackages/get_logs.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Applications/Services/Replicas/CodePackages/get_logs.json new file mode 100644 index 000000000000..5f17ef376d9d --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Applications/Services/Replicas/CodePackages/get_logs.json @@ -0,0 +1,18 @@ +{ + "operationId": "MeshCodePackage_GetContainerLogs", + "description": "This example shows how to get logs from the container of service replica. If the container exists, the logs are returned with an OK (200) status code, otherwise an error is returned with an appropriate status code.", + "parameters": { + "api-version": "6.4-preview", + "applicationResourceName": "sbzDocApp", + "serviceResourceName": "sbzDocService", + "replicaName": "0", + "codePackageName": "sbzDocCode" + }, + "responses": { + "200": { + "body": { + "Content": " * Running on http://0.0.0.0:8080/ (Press CTRL+C to quit)\n * Downloading style https://assets-cdn.github.com/assets/frameworks-8f281eb0a8d2308ceb36e714ba3c3aec.css\n * Downloading style https://assets-cdn.github.com/assets/github-a698da0d53574b056d3c79ac732d4a70.css\n * Downloading style https://assets-cdn.github.com/assets/site-83dc1f7ebc9c7461fe1eab799b56c4c4.css\n * Cached all downloads in /root/.grip/cache-4.5.2\n167.220.0.83 - - [06/Apr/2018 07:16:02] \"GET / HTTP/1.1\" 200 -\n167.220.0.83 - - [06/Apr/2018 07:16:02] \"GET /__/grip/asset/frameworks-8f281eb0a8d2308ceb36e714ba3c3aec.css HTTP/1.1\" 200 -\n167.220.0.83 - - [06/Apr/2018 07:16:02] \"GET /__/grip/asset/site-83dc1f7ebc9c7461fe1eab799b56c4c4.css HTTP/1.1\" 200 -\n167.220.0.83 - - [06/Apr/2018 07:16:02] \"GET /__/grip/asset/github-a698da0d53574b056d3c79ac732d4a70.css HTTP/1.1\" 200 -\n167.220.0.83 - - [06/Apr/2018 07:16:02] \"GET /__/grip/static/octicons/octicons.css HTTP/1.1\" 200 -\n167.220.0.83 - - [06/Apr/2018 07:16:03] \"GET /__/grip/static/octicons/octicons.woff2?ef21c39f0ca9b1b5116e5eb7ac5eabe6 HTTP/1.1\" 200 -\n167.220.0.83 - - [06/Apr/2018 07:16:03] \"GET /__/grip/static/favicon.ico HTTP/1.1\" 200 -\n167.220.0.83 - - [06/Apr/2018 07:16:05] \"GET /seabreeze-index.md HTTP/1.1\" 200 -\n167.220.0.83 - - [06/Apr/2018 07:16:09] \"GET /seabreeze-api-application_get.md HTTP/1.1\" 200 -\n" + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Applications/Services/Replicas/get.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Applications/Services/Replicas/get.json new file mode 100644 index 000000000000..bb373e90c328 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Applications/Services/Replicas/get.json @@ -0,0 +1,57 @@ +{ + "operationId": "MeshServiceReplica_Get", + "description": "This example shows how to get information about given replica of a service. If the replica exists, its description is returned along with an OK (200) status code. If the replica does not exist, an error is returned with an appropriate status code.", + "parameters": { + "api-version": "6.4-preview", + "applicationResourceName": "sampleApplication", + "serviceResourceName": "helloWorldService", + "replicaName": "0" + }, + "responses": { + "200": { + "body": { + "osType": "Linux", + "codePackages": [ + { + "name": "helloWorldCode", + "image": "seabreeze/sbz-helloworld:1.0-alpine", + "endpoints": [ + { + "name": "helloWorldListener", + "port": 80 + } + ], + "resources": { + "requests": { + "memoryInGB": 1, + "cpu": 1 + } + }, + "instanceView": { + "restartCount": 1, + "currentState": { + "state": "Running", + "exitCode": "0" + }, + "previousState": { + "state": "NotSpecified", + "exitCode": "0" + } + } + } + ], + "networkRefs": [ + { + "name": "sampleNetwork", + "endpointRefs": [ + { + "name": "helloWorldListener" + } + ] + } + ], + "replicaName": "0" + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Applications/Services/Replicas/list.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Applications/Services/Replicas/list.json new file mode 100644 index 000000000000..1fe9b30fb836 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Applications/Services/Replicas/list.json @@ -0,0 +1,105 @@ +{ + "operationId": "MeshServiceReplica_List", + "description": "This example shows how to list replicas of a service resources for a given application.", + "parameters": { + "api-version": "6.4-preview", + "applicationResourceName": "sampleApplication", + "serviceResourceName": "helloWorldService" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "osType": "Linux", + "codePackages": [ + { + "name": "helloWorldCode", + "image": "seabreeze/sbz-helloworld:1.0-alpine", + "endpoints": [ + { + "name": "helloWorldListener", + "port": 80 + } + ], + "resources": { + "requests": { + "memoryInGB": 1, + "cpu": 1 + } + }, + "instanceView": { + "restartCount": 1, + "currentState": { + "state": "Running", + "exitCode": "0" + }, + "previousState": { + "state": "NotSpecified", + "exitCode": "0" + } + } + } + ], + "networkRefs": [ + { + "name": "sampleNetwork", + "endpointRefs": [ + { + "name": "helloWorldListener" + } + ] + } + ], + "replicaName": "0" + }, + { + "osType": "Linux", + "codePackages": [ + { + "name": "helloWorldCode", + "image": "seabreeze/sbz-helloworld:1.0-alpine", + "endpoints": [ + { + "name": "helloWorldListener", + "port": 80 + } + ], + "resources": { + "requests": { + "memoryInGB": 1, + "cpu": 1 + } + }, + "instanceView": { + "restartCount": 1, + "currentState": { + "state": "Running", + "exitCode": "0" + }, + "previousState": { + "state": "NotSpecified", + "exitCode": "0" + } + } + } + ], + "networkRefs": [ + { + "name": "sampleNetwork", + "endpointRefs": [ + { + "name": "helloWorldListener" + } + ] + } + ], + "replicaName": "1" + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Applications/Services/get.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Applications/Services/get.json new file mode 100644 index 000000000000..45224d3a66f8 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Applications/Services/get.json @@ -0,0 +1,51 @@ +{ + "operationId": "MeshService_Get", + "description": "This example shows how to get a service resource for a given application. If the service resource exists, its description is returned along with an OK (200) status code. If the service resource does not exist, an error is returned with an appropriate status code.", + "parameters": { + "api-version": "6.4-preview", + "applicationResourceName": "sampleApplication", + "serviceResourceName": "helloWorldService" + }, + "responses": { + "200": { + "body": { + "name": "helloWorldService", + "properties": { + "osType": "Linux", + "codePackages": [ + { + "name": "helloWorldCode", + "image": "seabreeze/sbz-helloworld:1.0-alpine", + "endpoints": [ + { + "name": "helloWorldListener", + "port": 80 + } + ], + "resources": { + "requests": { + "memoryInGB": 1, + "cpu": 1 + } + } + } + ], + "networkRefs": [ + { + "name": "sampleNetwork", + "endpointRefs": [ + { + "name": "helloWorldListener" + } + ] + } + ], + "description": "SeaBreeze Hello World Service.", + "replicaCount": 1, + "healthState": "Ok", + "status": "Ready" + } + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Applications/Services/list.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Applications/Services/list.json new file mode 100644 index 000000000000..3df5e396c764 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Applications/Services/list.json @@ -0,0 +1,56 @@ +{ + "operationId": "MeshService_List", + "description": "This example shows how to list all service resources for a given application.", + "parameters": { + "api-version": "6.4-preview", + "applicationResourceName": "sampleApplication" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "name": "helloWorldService", + "properties": { + "osType": "Linux", + "codePackages": [ + { + "name": "helloWorldCode", + "image": "seabreeze/sbz-helloworld:1.0-alpine", + "endpoints": [ + { + "name": "helloWorldListener", + "port": 80 + } + ], + "resources": { + "requests": { + "memoryInGB": 1, + "cpu": 1 + } + } + } + ], + "networkRefs": [ + { + "name": "sampleNetwork", + "endpointRefs": [ + { + "name": "helloWorldListener" + } + ] + } + ], + "description": "SeaBreeze Hello World Service.", + "replicaCount": 1, + "healthState": "Ok", + "status": "Ready" + } + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Applications/create_update.autoscale.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Applications/create_update.autoscale.json new file mode 100644 index 000000000000..16b621f6a572 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Applications/create_update.autoscale.json @@ -0,0 +1,102 @@ +{ + "operationId": "MeshApplication_CreateOrUpdate", + "description": "This example shows how to create or update a application resource with services that autoscale based on the policies.", + "parameters": { + "api-version": "6.4-preview", + "applicationResourceName": "sampleApplication", + "applicationResourceDescription": { + "name": "sampleApplication", + "properties": { + "description": "Service Fabric Mesh sample application.", + "services": [ + { + "name": "helloWorldService", + "properties": { + "description": "SeaBreeze Hello World Service.", + "osType": "Linux", + "codePackages": [ + { + "name": "helloWorldCode", + "image": "seabreeze/sbz-helloworld:1.0-alpine", + "endpoints": [ + { + "name": "helloWorldListener", + "port": 80 + } + ], + "resources": { + "requests": { + "memoryInGB": 1, + "cpu": 1 + } + } + } + ], + "replicaCount": 1, + "autoScalingPolicies": [ + { + "name": "MyAutoScaleRule", + "trigger": { + "kind": "AverageLoad", + "metric": { + "kind": "Resource", + "name": "cpu" + }, + "lowerLoadThreshold": 0.3, + "upperLoadThreshold": 0.8, + "scaleIntervalInSeconds": 3600 + }, + "mechanism": { + "kind": "AddRemoveReplica", + "minCount": 1, + "maxCount": 4, + "scaleIncrement": 1 + } + } + ], + "networkRefs": [ + { + "name": "sampleNetwork", + "endpointRefs": [ + { + "name": "helloWorldListener" + } + ] + } + ] + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "sampleApplication", + "properties": { + "description": "Service Fabric Mesh sample application.", + "serviceNames": [ + "helloWorldService" + ], + "healthState": "Ok", + "status": "Ready" + } + } + }, + "201": { + "body": { + "name": "sampleApplication", + "properties": { + "description": "Service Fabric Mesh sample application.", + "serviceNames": [ + "helloWorldService" + ], + "healthState": "Unknown", + "status": "Creating" + } + } + }, + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Applications/create_update.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Applications/create_update.json new file mode 100644 index 000000000000..8066c046fd00 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Applications/create_update.json @@ -0,0 +1,139 @@ +{ + "operationId": "MeshApplication_CreateOrUpdate", + "description": "This example shows how to create or update a application resource.", + "parameters": { + "api-version": "6.4-preview", + "applicationResourceName": "sampleApplication", + "applicationResourceDescription": { + "name": "sampleApplication", + "properties": { + "description": "Service Fabric Mesh sample application.", + "services": [ + { + "name": "helloWorldService", + "properties": { + "description": "SeaBreeze Hello World Service.", + "identityRefs": [ + { + "name": "ServiceIdentity1", + "identityRef": "/subscriptions/c1089427-83d3-4286-9f35-5af546a6eb67/resourcegroups/myGroup/providers/Microsoft.Identity/Identities/identity1" + }, + { + "name": "ServiceIdentity2", + "identityRef": "SystemAssigned" + } + ], + "osType": "Linux", + "codePackages": [ + { + "name": "helloWorldCode", + "image": "seabreeze/sbz-helloworld:1.0-alpine", + "endpoints": [ + { + "name": "helloWorldListener", + "port": 80 + } + ], + "resources": { + "requests": { + "memoryInGB": 1, + "cpu": 1 + } + } + } + ], + "replicaCount": 1, + "networkRefs": [ + { + "name": "sampleNetwork", + "endpointRefs": [ + { + "name": "helloWorldListener" + } + ] + } + ] + } + } + ] + } + }, + "identity": { + "type": "SystemAssigned,UserAssigned", + "tokenServiceEndpoint": "http://tokenservice", + "tenantId": "D47A6CD5-E870-4ADF-8C00-1C0B758BC567", + "principalId": "84DFA616-1F44-4D63-BC08-43B5F758D16C", + "userAssignedIdentities": { + "/subscriptions/c1089427-83d3-4286-9f35-5af546a6eb67/resourcegroups/myGroup/providers/Microsoft.Identity/Identities/identity1": { + "clientId": "5287A675-78D2-4E49-BF09-D3BFE02493D4", + "principalId": "7D6F0B1C-AF9F-4E21-9B3C-AE22F4D926F8" + }, + "/subscriptions/c1089427-83d3-4286-9f35-5af546a6eb67/resourcegroups/myGroup/providers/Microsoft.Identity/Identities/identity2": { + "clientId": "AF1509EC-9B5F-43CC-8A6F-FA7CC84AEBE1", + "principalId": "31144ACF-46F4-4639-A711-A257229EE0C0" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "sampleApplication", + "properties": { + "description": "Service Fabric Mesh sample application.", + "serviceNames": [ + "helloWorldService" + ], + "healthState": "Ok", + "status": "Ready" + }, + "identity": { + "type": "SystemAssigned,UserAssigned", + "tokenServiceEndpoint": "http://tokenservice", + "tenantId": "D47A6CD5-E870-4ADF-8C00-1C0B758BC567", + "principalId": "84DFA616-1F44-4D63-BC08-43B5F758D16C", + "userAssignedIdentities": { + "/subscriptions/c1089427-83d3-4286-9f35-5af546a6eb67/resourcegroups/myGroup/providers/Microsoft.Identity/Identities/identity1": { + "clientId": "5287A675-78D2-4E49-BF09-D3BFE02493D4", + "principalId": "7D6F0B1C-AF9F-4E21-9B3C-AE22F4D926F8" + }, + "/subscriptions/c1089427-83d3-4286-9f35-5af546a6eb67/resourcegroups/myGroup/providers/Microsoft.Identity/Identities/identity2": { + "clientId": "AF1509EC-9B5F-43CC-8A6F-FA7CC84AEBE1", + "principalId": "31144ACF-46F4-4639-A711-A257229EE0C0" + } + } + } + } + }, + "201": { + "body": { + "name": "sampleApplication", + "properties": { + "description": "Service Fabric Mesh sample application.", + "serviceNames": [ + "helloWorldService" + ], + "healthState": "Unknown", + "status": "Creating" + }, + "identity": { + "type": "SystemAssigned,UserAssigned", + "tokenServiceEndpoint": "http://tokenservice", + "tenantId": "D47A6CD5-E870-4ADF-8C00-1C0B758BC567", + "principalId": "84DFA616-1F44-4D63-BC08-43B5F758D16C", + "userAssignedIdentities": { + "/subscriptions/c1089427-83d3-4286-9f35-5af546a6eb67/resourcegroups/myGroup/providers/Microsoft.Identity/Identities/identity1": { + "clientId": "5287A675-78D2-4E49-BF09-D3BFE02493D4", + "principalId": "7D6F0B1C-AF9F-4E21-9B3C-AE22F4D926F8" + }, + "/subscriptions/c1089427-83d3-4286-9f35-5af546a6eb67/resourcegroups/myGroup/providers/Microsoft.Identity/Identities/identity2": { + "clientId": "AF1509EC-9B5F-43CC-8A6F-FA7CC84AEBE1", + "principalId": "31144ACF-46F4-4639-A711-A257229EE0C0" + } + } + } + } + }, + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Applications/delete.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Applications/delete.json new file mode 100644 index 000000000000..b51511b0865d --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Applications/delete.json @@ -0,0 +1,13 @@ +{ + "operationId": "MeshApplication_Delete", + "description": "This example shows how to delete an existing application resource. If the application resource exists and is deleted successfully, an empty response with 200 status code is returned. If the application resource does not exist, an empty response with 204 status code is returned.", + "parameters": { + "api-version": "6.4-preview", + "applicationResourceName": "sampleApplication" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Applications/get.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Applications/get.json new file mode 100644 index 000000000000..208ccd280bbd --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Applications/get.json @@ -0,0 +1,39 @@ +{ + "operationId": "MeshApplication_Get", + "description": "This example shows how to get a application resource. If the application resource exists, its description is returned along with an OK (200) status code. If the application resource does not exist, an error is returned with an appropriate status code.", + "parameters": { + "api-version": "6.4-preview", + "applicationResourceName": "sampleApplication" + }, + "responses": { + "200": { + "body": { + "name": "sampleApplication", + "properties": { + "description": "Service Fabric Mesh sample application.", + "serviceNames": [ + "helloWorldService" + ], + "healthState": "Ok", + "status": "Ready" + }, + "identity": { + "type": "SystemAssigned,UserAssigned", + "tokenServiceEndpoint": "http://tokenservice", + "tenantId": "D47A6CD5-E870-4ADF-8C00-1C0B758BC567", + "principalId": "84DFA616-1F44-4D63-BC08-43B5F758D16C", + "userAssignedIdentities": { + "/subscriptions/c1089427-83d3-4286-9f35-5af546a6eb67/resourcegroups/myGroup/providers/Microsoft.Identity/Identities/identity1": { + "clientId": "5287A675-78D2-4E49-BF09-D3BFE02493D4", + "principalId": "7D6F0B1C-AF9F-4E21-9B3C-AE22F4D926F8" + }, + "/subscriptions/c1089427-83d3-4286-9f35-5af546a6eb67/resourcegroups/myGroup/providers/Microsoft.Identity/Identities/identity2": { + "clientId": "AF1509EC-9B5F-43CC-8A6F-FA7CC84AEBE1", + "principalId": "31144ACF-46F4-4639-A711-A257229EE0C0" + } + } + } + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Applications/get_upgrade.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Applications/get_upgrade.json new file mode 100644 index 000000000000..61be95fa11b7 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Applications/get_upgrade.json @@ -0,0 +1,30 @@ +{ + "operationId": "MeshApplication_GetUpgradeProgress", + "description": "This example shows how to get a application resource upgrade. If the application resource exists, its description is returned along with an OK (200) status code. If the application resource does not exist, an error is returned with an appropriate status code.", + "parameters": { + "api-version": "6.4-preview", + "applicationResourceName": "sampleApplication" + }, + "responses": { + "200": { + "body": { + "Name": "sampleApplication", + "TargetApplicationTypeVersion": "v1", + "StartTimestampUtc": "0001-01-01T00:00:00.000Z", + "UpgradeState": "RollingForward", + "PercentCompleted": "0", + "ServiceUpgradeProgress": [ + { + "ServiceName": "helloWorldService", + "CompletedReplicaCount": "0", + "PendingReplicaCount": "3" + } + ], + "RollingUpgradeMode": "Monitored", + "UpgradeDuration": "PT0H0M2.31669S", + "ApplicationUpgradeStatusDetails": "Deployment upgrading from version: v0 to version: v1.", + "UpgradeReplicaSetCheckTimeoutInSeconds": 4294967295 + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Applications/list.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Applications/list.json new file mode 100644 index 000000000000..2f34f40e3488 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Applications/list.json @@ -0,0 +1,44 @@ +{ + "operationId": "MeshApplication_List", + "description": "This example shows how to list all application resources.", + "parameters": { + "api-version": "6.4-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "name": "sampleApplication", + "properties": { + "description": "Service Fabric Mesh sample application.", + "serviceNames": [ + "helloWorldService" + ], + "healthState": "Ok", + "status": "Ready" + }, + "identity": { + "type": "SystemAssigned,UserAssigned", + "tokenServiceEndpoint": "http://tokenservice", + "tenantId": "D47A6CD5-E870-4ADF-8C00-1C0B758BC567", + "principalId": "84DFA616-1F44-4D63-BC08-43B5F758D16C", + "userAssignedIdentities": { + "/subscriptions/c1089427-83d3-4286-9f35-5af546a6eb67/resourcegroups/myGroup/providers/Microsoft.Identity/Identities/identity1": { + "clientId": "5287A675-78D2-4E49-BF09-D3BFE02493D4", + "principalId": "7D6F0B1C-AF9F-4E21-9B3C-AE22F4D926F8" + }, + "/subscriptions/c1089427-83d3-4286-9f35-5af546a6eb67/resourcegroups/myGroup/providers/Microsoft.Identity/Identities/identity2": { + "clientId": "AF1509EC-9B5F-43CC-8A6F-FA7CC84AEBE1", + "principalId": "31144ACF-46F4-4639-A711-A257229EE0C0" + } + } + } + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Gateways/create_update.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Gateways/create_update.json new file mode 100644 index 000000000000..2ded194ec7cc --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Gateways/create_update.json @@ -0,0 +1,193 @@ +{ + "operationId": "MeshGateway_CreateOrUpdate", + "description": "This example shows how to create or update a gateway resource.", + "parameters": { + "api-version": "6.4-preview", + "gatewayResourceName": "sampleGateway", + "gatewayResourceDescription": { + "name": "sampleGateway", + "properties": { + "description": "Service Fabric Mesh sample gateway.", + "sourceNetwork": { + "name": "Open" + }, + "destinationNetwork": { + "name": "helloWorldNetwork" + }, + "tcp": [ + { + "name": "web", + "port": 80, + "destination": { + "applicationName": "helloWorldApp", + "serviceName": "helloWorldService", + "endpointName": "helloWorldListener" + } + } + ], + "http": [ + { + "name": "contosoWebsite", + "port": 8081, + "hosts": [ + { + "name": "contoso.com", + "routes": [ + { + "name": "index", + "match": { + "path": { + "value": "/index", + "rewrite": "/", + "type": "prefix" + }, + "headers": [ + { + "name": "accept", + "value": "application/json", + "type": "exact" + } + ] + }, + "destination": { + "applicationName": "httpHelloWorldApp", + "serviceName": "indexService", + "endpointName": "indexHttpEndpoint" + } + } + ] + } + ] + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "sampleGateway", + "properties": { + "description": "Service Fabric Mesh sample gateway.", + "sourceNetwork": { + "name": "Open" + }, + "destinationNetwork": { + "name": "helloWorldNetwork" + }, + "tcp": [ + { + "name": "web", + "port": 80, + "destination": { + "applicationName": "helloWorldApp", + "serviceName": "helloWorldService", + "endpointName": "helloWorldListener" + } + } + ], + "http": [ + { + "name": "contosoWebsite", + "port": 8081, + "hosts": [ + { + "name": "contoso.com", + "routes": [ + { + "name": "index", + "match": { + "path": { + "value": "/index", + "rewrite": "/", + "type": "prefix" + }, + "headers": [ + { + "name": "accept", + "value": "application/json", + "type": "exact" + } + ] + }, + "destination": { + "applicationName": "httpHelloWorldApp", + "serviceName": "indexService", + "endpointName": "indexHttpEndpoint" + } + } + ] + } + ] + } + ], + "status": "Ready", + "ipAddress": "192.168.1.1" + } + } + }, + "201": { + "body": { + "name": "sampleGateway", + "properties": { + "description": "Service Fabric Mesh Hello World sample gateway.", + "sourceNetwork": { + "name": "Open" + }, + "destinationNetwork": { + "name": "helloWorldNetwork" + }, + "tcp": [ + { + "name": "web", + "port": 80, + "destination": { + "applicationName": "helloWorldApp", + "serviceName": "helloWorldService", + "endpointName": "helloWorldListener" + } + } + ], + "http": [ + { + "name": "contosoWebsite", + "port": 8081, + "hosts": [ + { + "name": "contoso.com", + "routes": [ + { + "name": "index", + "match": { + "path": { + "value": "/index", + "rewrite": "/", + "type": "prefix" + }, + "headers": [ + { + "name": "accept", + "value": "application/json", + "type": "exact" + } + ] + }, + "destination": { + "applicationName": "httpHelloWorldApp", + "serviceName": "indexService", + "endpointName": "indexHttpEndpoint" + } + } + ] + } + ] + } + ], + "status": "Creating", + "ipAddress": "" + } + } + }, + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Gateways/delete.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Gateways/delete.json new file mode 100644 index 000000000000..63ed69926752 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Gateways/delete.json @@ -0,0 +1,13 @@ +{ + "operationId": "MeshGateway_Delete", + "description": "This example shows how to delete an existing gateway resource. If the gateway resource exists and is deleted successfully, an empty response with 200 status code is returned. If the gateway resource does not exist, an empty response with 204 status code is returned.", + "parameters": { + "api-version": "6.4-preview", + "gatewayResourceName": "sampleGateway" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Gateways/get.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Gateways/get.json new file mode 100644 index 000000000000..c85b652cbc45 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Gateways/get.json @@ -0,0 +1,72 @@ +{ + "operationId": "MeshGateway_Get", + "description": "This example shows how to get a gateway resource. If the gateway resource exists, its description is returned along with an OK (200) status code. If the gateway resource does not exist, an error is returned with an appropriate status code.", + "parameters": { + "api-version": "6.4-preview", + "gatewayResourceName": "sampleGateway" + }, + "responses": { + "200": { + "body": { + "name": "sampleGateway", + "properties": { + "description": "Service Fabric Mesh sample gateway.", + "sourceNetwork": { + "name": "Open" + }, + "destinationNetwork": { + "name": "helloWorldNetwork" + }, + "tcp": [ + { + "name": "web", + "port": 80, + "destination": { + "applicationName": "helloWorldApp", + "serviceName": "helloWorldService", + "endpointName": "helloWorldListener" + } + } + ], + "http": [ + { + "name": "contosoWebsite", + "port": 8081, + "hosts": [ + { + "name": "contoso.com", + "routes": [ + { + "name": "index", + "match": { + "path": { + "value": "/index", + "rewrite": "/", + "type": "prefix" + }, + "headers": [ + { + "name": "accept", + "value": "application/json", + "type": "exact" + } + ] + }, + "destination": { + "applicationName": "httpHelloWorldApp", + "serviceName": "indexService", + "endpointName": "indexHttpEndpoint" + } + } + ] + } + ] + } + ], + "status": "Ready", + "ipAddress": "192.168.1.1" + } + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Gateways/list.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Gateways/list.json new file mode 100644 index 000000000000..5ad53b7d580f --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Gateways/list.json @@ -0,0 +1,77 @@ +{ + "operationId": "MeshGateway_List", + "description": "This example shows how to list all gateway resources.", + "parameters": { + "api-version": "6.4-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "name": "sampleGateway", + "properties": { + "description": "Service Fabric Mesh sample gateway.", + "sourceNetwork": { + "name": "Open" + }, + "destinationNetwork": { + "name": "helloWorldNetwork" + }, + "tcp": [ + { + "name": "web", + "port": 80, + "destination": { + "applicationName": "helloWorldApp", + "serviceName": "helloWorldService", + "endpointName": "helloWorldListener" + } + } + ], + "http": [ + { + "name": "contosoWebsite", + "port": 8081, + "hosts": [ + { + "name": "contoso.com", + "routes": [ + { + "name": "index", + "match": { + "path": { + "value": "/index", + "rewrite": "/", + "type": "prefix" + }, + "headers": [ + { + "name": "accept", + "value": "application/json", + "type": "exact" + } + ] + }, + "destination": { + "applicationName": "httpHelloWorldApp", + "serviceName": "indexService", + "endpointName": "indexHttpEndpoint" + } + } + ] + } + ] + } + ], + "status": "Ready", + "ipAddress": "192.168.1.1" + } + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Networks/create_update.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Networks/create_update.json new file mode 100644 index 000000000000..faf2a3960b48 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Networks/create_update.json @@ -0,0 +1,41 @@ +{ + "operationId": "MeshNetwork_CreateOrUpdate", + "description": "This example shows how to create or update a network resource.", + "parameters": { + "api-version": "6.4-preview", + "networkResourceName": "sampleNetwork", + "networkResourceDescription": { + "name": "sampleNetwork", + "properties": { + "kind": "Local", + "description": "Service Fabric Mesh sample network.", + "networkAddressPrefix": "2.0.0.0/16" + } + } + }, + "responses": { + "200": { + "body": { + "name": "sampleNetwork", + "properties": { + "kind": "Local", + "description": "Service Fabric Mesh sample network.", + "networkAddressPrefix": "2.0.0.0/16", + "status": "Ready" + } + } + }, + "201": { + "body": { + "name": "sampleNetwork", + "properties": { + "kind": "Local", + "description": "Service Fabric Mesh sample network.", + "networkAddressPrefix": "2.0.0.0/16", + "status": "Creating" + } + } + }, + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Networks/delete.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Networks/delete.json new file mode 100644 index 000000000000..aea2170b7316 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Networks/delete.json @@ -0,0 +1,13 @@ +{ + "operationId": "MeshGateway_Delete", + "description": "This example shows how to delete an existing network resource. If the network resource exists and is deleted successfully, an empty response with 200 status code is returned. If the network resource does not exist, an empty response with 204 status code is returned.", + "parameters": { + "api-version": "6.4-preview", + "networkResourceName": "sampleNetwork" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Networks/get.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Networks/get.json new file mode 100644 index 000000000000..1afaee298e7d --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Networks/get.json @@ -0,0 +1,21 @@ +{ + "operationId": "MeshGateway_Get", + "description": "This example shows how to get a network resource. If the network resource exists, its description is returned along with an OK (200) status code. If the network resource does not exist, an error is returned with an appropriate status code.", + "parameters": { + "api-version": "6.4-preview", + "networkResourceName": "sampleNetwork" + }, + "responses": { + "200": { + "body": { + "name": "sampleNetwork", + "properties": { + "kind": "Local", + "description": "Service Fabric Mesh sample network.", + "networkAddressPrefix": "2.0.0.0/16", + "status": "Ready" + } + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Networks/list.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Networks/list.json new file mode 100644 index 000000000000..6cf521d8582c --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Networks/list.json @@ -0,0 +1,26 @@ +{ + "operationId": "MeshGateway_List", + "description": "This example shows how to list all network resources.", + "parameters": { + "api-version": "6.4-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "name": "sampleNetwork", + "properties": { + "kind": "Local", + "description": "Service Fabric Mesh sample network.", + "networkAddressPrefix": "2.0.0.0/16", + "status": "Ready" + } + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Secrets/create_update.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Secrets/create_update.json new file mode 100644 index 000000000000..aab0125db5a5 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Secrets/create_update.json @@ -0,0 +1,41 @@ +{ + "operationId": "MeshSecret_CreateOrUpdate", + "description": "This example shows how to create or update a secret resource.", + "parameters": { + "api-version": "6.4-preview", + "secretResourceName": "dbConnectionString", + "secretResourceDescription": { + "name": "dbConnectionString", + "properties": { + "kind": "inlinedValue", + "contentType": "text/plain", + "description": "Mongo DB connection string for backend database!" + } + } + }, + "responses": { + "200": { + "body": { + "name": "dbConnectionString", + "properties": { + "kind": "inlinedValue", + "contentType": "text/plain", + "description": "Mongo DB connection string for backend database!", + "status": "Ready" + } + } + }, + "201": { + "body": { + "name": "dbConnectionString", + "properties": { + "kind": "inlinedValue", + "contentType": "text/plain", + "description": "Mongo DB connection string for backend database!", + "status": "Creating" + } + } + }, + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Secrets/delete.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Secrets/delete.json new file mode 100644 index 000000000000..ffe68fd3ddc7 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Secrets/delete.json @@ -0,0 +1,13 @@ +{ + "operationId": "MeshSecret_Delete", + "description": "This example shows how to delete an existing secret resource. If the secret resource exists and is deleted successfully, an empty response with 200 status code is returned. If the secret resource does not exist, an empty response with 204 status code is returned.", + "parameters": { + "api-version": "6.4-preview", + "secretResourceName": "dbConnectionString" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Secrets/get.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Secrets/get.json new file mode 100644 index 000000000000..f358e51722dd --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Secrets/get.json @@ -0,0 +1,21 @@ +{ + "operationId": "MeshSecret_Get", + "description": "This example shows how to get a secret resource. If the secret resource exists, its description is returned along with an OK (200) status code. If the secret resource does not exist, an error is returned with an appropriate status code.", + "parameters": { + "api-version": "6.4-preview", + "secretResourceName": "dbConnectionString" + }, + "responses": { + "200": { + "body": { + "name": "dbConnectionString", + "properties": { + "kind": "inlinedValue", + "contentType": "text/plain", + "description": "Mongo DB connection string for backend database!", + "status": "Ready" + } + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Secrets/list.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Secrets/list.json new file mode 100644 index 000000000000..b46d7f8ff341 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Secrets/list.json @@ -0,0 +1,35 @@ +{ + "operationId": "MeshSecret_List", + "description": "This example shows how to list all secret resources.", + "parameters": { + "api-version": "6.4-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "name": "dbConnectionString", + "properties": { + "kind": "inlinedValue", + "contentType": "text/plain", + "description": "Mongo DB connection string for backend database!", + "status": "Ready" + } + }, + { + "name": "contosoServiceApiKey", + "properties": { + "kind": "inlinedValue", + "contentType": "text/plain", + "description": "API Key to access contoso service APIs", + "status": "Ready" + } + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Secrets/values/create.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Secrets/values/create.json new file mode 100644 index 000000000000..8cd0824452fd --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Secrets/values/create.json @@ -0,0 +1,34 @@ +{ + "operationId": "MeshSecretValue_AddValue", + "description": "This example shows how to add a new value of a secret resource; the secret value is provided as plaintext.", + "parameters": { + "api-version": "6.4-preview", + "secretResourceName": "dbConnectionString", + "secretValueResourceName": "v1", + "secretValueResourceDescription": { + "name": "v1", + "properties": { + "value": "mongodb://contoso123:0Fc3IolnL12312asdfawejunASDF@asdfYXX2t8a97kghVcUzcDv98hawelufhawefafnoQRGwNj2nMPL1Y9qsIr9Srdw==@contoso123.documents.azure.com:10255/mydatabase?ssl=true" + } + } + }, + "responses": { + "200": { + "body": { + "name": "v1", + "properties": { + "value": null + } + } + }, + "201": { + "body": { + "name": "v1", + "properties": { + "value": null + } + } + }, + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Secrets/values/delete.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Secrets/values/delete.json new file mode 100644 index 000000000000..ad4b3ef9540b --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Secrets/values/delete.json @@ -0,0 +1,14 @@ +{ + "operationId": "MeshSecretValue_Delete", + "description": "This example shows how to delete a secret value. If the specified named value exists and is deleted successfully, an empty response with 200 status code is returned. If the specified named value does not exist, an empty response with 204 status code is returned.", + "parameters": { + "api-version": "6.4-preview", + "secretResourceName": "dbConnectionString", + "secretValueResourceName": "v1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Secrets/values/get.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Secrets/values/get.json new file mode 100644 index 000000000000..a6491634ef44 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Secrets/values/get.json @@ -0,0 +1,19 @@ +{ + "operationId": "MeshSecretValue_Get", + "description": "This example shows how to get the specified secret value resource. If the specified named value exists, its information is returned along with status code 200. The information does not include the value. To get the unecnrypted value use ListMeshSecretValue operation. If the specified named value does not exist, an error is returned with an appropriate status code.", + "parameters": { + "api-version": "6.4-preview", + "secretResourceName": "dbConnectionString", + "secretValueResourceName": "v1" + }, + "responses": { + "200": { + "body": { + "name": "v1", + "properties": { + "value": null + } + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Secrets/values/list.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Secrets/values/list.json new file mode 100644 index 000000000000..0610d6d83c48 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Secrets/values/list.json @@ -0,0 +1,29 @@ +{ + "operationId": "MeshSecretValue_List", + "description": "This example shows how to list names of all values of a secret resource, not including their respective values.", + "parameters": { + "api-version": "6.4-preview", + "secretResourceName": "dbConnectionString" + }, + "responses": { + "200": { + "body": { + "ContinuationToken": "", + "Items": [ + { + "name": "v1", + "properties": { + "value": null + } + }, + { + "name": "v2", + "properties": { + "value": null + } + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Secrets/values/list_value.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Secrets/values/list_value.json new file mode 100644 index 000000000000..b8d09ce2e23c --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Secrets/values/list_value.json @@ -0,0 +1,16 @@ +{ + "operationId": "MeshSecretValue_Show", + "description": "This example shows how to get the unencrypted value of the secret. If the specified named value resource exists, its unencrypted value is returned along with status code 200. If the specified named value does not exist, an error is returned with an appropriate status code.", + "parameters": { + "api-version": "6.4-preview", + "secretResourceName": "dbConnectionString", + "secretValueResourceName": "v1" + }, + "responses": { + "200": { + "body": { + "value": "mongodb://contoso123:0Fc3IolnL12312asdfawejunASDF@asdfYXX2t8a97kghVcUzcDv98hawelufhawefafnoQRGwNj2nMPL1Y9qsIr9Srdw==@contoso123.documents.azure.com:10255/mydatabase?ssl=true" + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Volumes/create_update.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Volumes/create_update.json new file mode 100644 index 000000000000..ba2623cdc556 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Volumes/create_update.json @@ -0,0 +1,53 @@ +{ + "operationId": "MeshVolume_CreateOrUpdate", + "description": "This example shows how to create or update a volume resource.", + "parameters": { + "api-version": "6.4-preview", + "volumeResourceName": "sampleVolume", + "volumeResourceDescription": { + "name": "sampleVolume", + "properties": { + "description": "Service Fabric Mesh sample volume.", + "provider": "SFAzureFile", + "azureFileParameters": { + "accountName": "sbzdemoaccount", + "accountKey": "provide-account-key-here", + "shareName": "sharel" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "sampleVolume", + "properties": { + "description": "Service Fabric Mesh sample volume.", + "provider": "SFAzureFile", + "azureFileParameters": { + "accountName": "sbzdemoaccount", + "accountKey": null, + "shareName": "sharel" + }, + "status": "Ready" + } + } + }, + "201": { + "body": { + "name": "sampleVolume", + "properties": { + "description": "Service Fabric Mesh Hello World sample volume.", + "provider": "SFAzureFile", + "azureFileParameters": { + "accountName": "sbzdemoaccount", + "accountKey": null, + "shareName": "sharel" + }, + "status": "Creating" + } + } + }, + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Volumes/delete.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Volumes/delete.json new file mode 100644 index 000000000000..efaa1f836ae1 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Volumes/delete.json @@ -0,0 +1,13 @@ +{ + "operationId": "MeshVolume_Delete", + "description": "This example shows how to delete an existing volume resource. If the volume resource exists and is deleted successfully, an empty response with 200 status code is returned. If the volume resource does not exist, an empty response with 204 status code is returned.", + "parameters": { + "api-version": "6.4-preview", + "volumeResourceName": "sampleVolume" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Volumes/get.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Volumes/get.json new file mode 100644 index 000000000000..9d08f3b00a82 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Volumes/get.json @@ -0,0 +1,25 @@ +{ + "operationId": "MeshVolume_Get", + "description": "This example shows how to get a volume resource. If the volume resource exists, its description is returned along with an OK (200) status code. If the volume resource does not exist, an error is returned with an appropriate status code.", + "parameters": { + "api-version": "6.4-preview", + "volumeResourceName": "sampleVolume" + }, + "responses": { + "200": { + "body": { + "name": "sampleVolume", + "properties": { + "description": "Service Fabric Mesh sample volume.", + "provider": "SFAzureFile", + "azureFileParameters": { + "accountName": "sbzdemoaccount", + "accountKey": null, + "shareName": "sharel" + }, + "status": "Ready" + } + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Volumes/list.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Volumes/list.json new file mode 100644 index 000000000000..3bf83798904b --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/Resources/Volumes/list.json @@ -0,0 +1,30 @@ +{ + "operationId": "MeshVolume_List", + "description": "This example shows how to list all volume resources.", + "parameters": { + "api-version": "6.4-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "name": "sampleVolume", + "properties": { + "description": "Service Fabric Mesh sample volume.", + "provider": "SFAzureFile", + "azureFileParameters": { + "accountName": "sbzdemoaccount", + "accountKey": null, + "shareName": "sharel" + }, + "status": "Ready" + } + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/RestorePartition.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/RestorePartition.json new file mode 100644 index 000000000000..1e97e0557113 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/RestorePartition.json @@ -0,0 +1,20 @@ +{ + "operationId": "RestorePartition", + "description": "This example shows how to trigger restore of a partition now by specifying the backup to be used to restore.", + "parameters": { + "api-version": "6.4", + "partitionId": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d", + "RestorePartitionDescription": { + "BackupId": "3a056ac9-7206-43c3-8424-6f6103003eba", + "BackupStorage": { + "StorageKind": "AzureBlobStore", + "ConnectionString": "DefaultEndpointsProtocol=https;AccountName=storagesample;AccountKey=", + "ContainerName": "BackupContainer" + }, + "BackupLocation": "CalcApp\\CalcService\\1daae3f5-7fd6-42e9-b1ba-8c05f873994d\\2018-01-01 09.00.55.zip" + } + }, + "responses": { + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/ResumeApplicationBackup.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/ResumeApplicationBackup.json new file mode 100644 index 000000000000..b25a7ac545ec --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/ResumeApplicationBackup.json @@ -0,0 +1,11 @@ +{ + "operationId": "ResumeApplicationBackup", + "description": "This example shows how to resume periodic backup for a stateful application which was previously suspended.", + "parameters": { + "api-version": "6.4", + "applicationId": "CalcApp" + }, + "responses": { + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/ResumePartitionBackup.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/ResumePartitionBackup.json new file mode 100644 index 000000000000..feb701118438 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/ResumePartitionBackup.json @@ -0,0 +1,11 @@ +{ + "operationId": "ResumePartitionBackup", + "description": "This example shows how to resume periodic backup for a stateful partition which was previously suspended.", + "parameters": { + "api-version": "6.4", + "partitionId": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d" + }, + "responses": { + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/ResumeServiceBackup.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/ResumeServiceBackup.json new file mode 100644 index 000000000000..9037dfa23d9e --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/ResumeServiceBackup.json @@ -0,0 +1,11 @@ +{ + "operationId": "ResumeServiceBackup", + "description": "This example shows how to resume periodic backup for a stateful service which was previously suspended.", + "parameters": { + "api-version": "6.4", + "serviceId": "CalcApp/CalcService" + }, + "responses": { + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/StartApplicationUpgrade-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/StartApplicationUpgrade-1.json new file mode 100644 index 000000000000..fd0317e28196 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/StartApplicationUpgrade-1.json @@ -0,0 +1,30 @@ +{ + "operationId": "StartApplicationUpgrade", + "description": "This example shows how to start upgrading an application in a Service Fabric cluster.", + "parameters": { + "api-version": "6.0", + "applicationId": "samples~CalculatorApp", + "ApplicationUpgradeDescription": { + "Name": "fabric:/samples/CalculatorApp", + "TargetApplicationTypeVersion": "2.0", + "Parameters": [ + { + "Key": "CalculatorAppParameter1", + "Value": "314" + }, + { + "Key": "CalculatorAppParameter2", + "Value": "271" + } + ], + "UpgradeKind": "Rolling", + "RollingUpgradeMode": "Monitored", + "MonitoringPolicy": { + "FailureAction": "Rollback" + } + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/StartClusterConfigurationUpgrade-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/StartClusterConfigurationUpgrade-1.json new file mode 100644 index 000000000000..2f8fd59a474e --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/StartClusterConfigurationUpgrade-1.json @@ -0,0 +1,40 @@ +{ + "operationId": "StartClusterConfigurationUpgrade", + "description": "This example shows how to start upgrading the configuration of a Service Fabric standalone cluster.", + "parameters": { + "api-version": "6.0", + "nameId": "samples/apps/CalculatorApp", + "ClusterConfigurationUpgradeDescription": { + "ClusterConfig": "", + "ApplicationHealthPolicies": { + "ApplicationHealthPolicyMap": [ + { + "Key": "fabric:/samples/CalculatorApp", + "Value": { + "ConsiderWarningAsError": true, + "MaxPercentUnhealthyDeployedApplications": 10, + "DefaultServiceTypeHealthPolicy": { + "MaxPercentUnhealthyPartitionsPerService": 0, + "MaxPercentUnhealthyReplicasPerPartition": 0, + "MaxPercentUnhealthyServices": 0 + }, + "ServiceTypeHealthPolicyMap": [ + { + "Key": "Svc1Type", + "Value": { + "MaxPercentUnhealthyPartitionsPerService": 0, + "MaxPercentUnhealthyReplicasPerPartition": 0, + "MaxPercentUnhealthyServices": 10 + } + } + ] + } + } + ] + } + } + }, + "responses": { + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/SubmitPropertyBatch-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/SubmitPropertyBatch-1.json new file mode 100644 index 000000000000..05410c96edc2 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/SubmitPropertyBatch-1.json @@ -0,0 +1,71 @@ +{ + "operationId": "SubmitPropertyBatch", + "description": "This example shows how to submit a property batch. This batch ensures that a property exists, checks that the property has the expected sequence number, and edits the property only if the previous conditions succeed. It then performs a get operation to get the property's current info. \r\n If all of the operations succeed, the batch is committed in a transactional manner and a success response is returned with 200 status code. \r\n If the batch fails then a failed response is returned with 409 status code. The failed response below shows batch failure because the property does not have expected sequence number.", + "parameters": { + "api-version": "6.0", + "nameId": "samples/apps", + "PropertyBatchDescriptionList": { + "Operations": [ + { + "Kind": "CheckExists", + "PropertyName": "PersistentQueueAppData", + "Exists": true + }, + { + "Kind": "CheckSequence", + "PropertyName": "PersistentQueueAppData", + "SequenceNumber": "12" + }, + { + "Kind": "Put", + "PropertyName": "PersistentQueueAppData", + "Value": { + "Kind": "Binary", + "Data": [ + 1, + 2, + 3, + 4, + 5 + ] + }, + "CustomTypeId": "InitializationData" + }, + { + "Kind": "Get", + "PropertyName": "PersistentQueueAppData", + "IncludeValue": false + } + ] + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "Kind": "Successful", + "Properties": { + "3": { + "Name": "PersistentQueueAppData", + "Metadata": { + "TypeId": "Binary", + "CustomTypeId": "InitializationData", + "Parent": "fabric:/samples/apps", + "SizeInBytes": 5, + "LastModifiedUtcTimestamp": "2017-07-17T05:01:19.049Z", + "SequenceNumber": "13" + } + } + } + } + }, + "409": { + "headers": {}, + "body": { + "Kind": "Failed", + "ErrorMessage": "FABRIC_E_PROPERTY_CHECK_FAILED", + "OperationIndex": 1 + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/SuspendApplicationBackup.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/SuspendApplicationBackup.json new file mode 100644 index 000000000000..75bdad71a95e --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/SuspendApplicationBackup.json @@ -0,0 +1,11 @@ +{ + "operationId": "SuspendApplicationBackup", + "description": "This example shows how to suspend backup for a stateful application which is configured for periodic backup.", + "parameters": { + "api-version": "6.4", + "applicationId": "CalcApp" + }, + "responses": { + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/SuspendPartitionBackup.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/SuspendPartitionBackup.json new file mode 100644 index 000000000000..b14619dd6fe8 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/SuspendPartitionBackup.json @@ -0,0 +1,11 @@ +{ + "operationId": "SuspendPartitionBackup", + "description": "This example shows how to suspend backup for a stateful partition which is configured for periodic backup.", + "parameters": { + "api-version": "6.4", + "partitionId": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d" + }, + "responses": { + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/SuspendServiceBackup.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/SuspendServiceBackup.json new file mode 100644 index 000000000000..14d0575c509e --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/SuspendServiceBackup.json @@ -0,0 +1,11 @@ +{ + "operationId": "SuspendServiceBackup", + "description": "This example shows how to suspend backup for a stateful service which is configured for periodic backup.", + "parameters": { + "api-version": "6.4", + "serviceId": "CalcApp/CalcService" + }, + "responses": { + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/UpdateBackupPolicy.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/UpdateBackupPolicy.json new file mode 100644 index 000000000000..3129817ddb68 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/UpdateBackupPolicy.json @@ -0,0 +1,35 @@ +{ + "operationId": "UpdateBackupPolicy", + "description": "This example shows how to update the schedule of a backup policy to take backup twice everyday at 9 AM and 5 PM UTC which shall get deleted after 30 days, with Azure blob store as the backup location.", + "parameters": { + "api-version": "6.4", + "backupPolicyName": "DailyAzureBackupPolicy", + "BackupPolicyDescription": { + "Name": "DailyAzureBackupPolicy", + "AutoRestoreOnDataLoss": false, + "MaxIncrementalBackups": 3, + "Schedule": { + "ScheduleKind": "TimeBased", + "ScheduleFrequencyType": "Daily", + "RunTimes": [ + "0001-01-01T09:00:00Z", + "0001-01-01T17:00:00Z" + ] + }, + "Storage": { + "StorageKind": "AzureBlobStore", + "FriendlyName": "Azure_storagesample", + "ConnectionString": "DefaultEndpointsProtocol=https;AccountName=storagesample;AccountKey=", + "ContainerName": "BackupContainer" + }, + "RetentionPolicy": { + "RetentionPolicyType": "Basic", + "MinimumNumberOfBackups": 60, + "RetentionDuration": "P30D" + } + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/UpdateService-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/UpdateService-1.json new file mode 100644 index 000000000000..3dd7f5950427 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/UpdateService-1.json @@ -0,0 +1,34 @@ +{ + "operationId": "UpdateService", + "description": "This example shows how to update placement and load balancing related settings of a stateless Service Fabric service.", + "parameters": { + "serviceId": "test~test1", + "api-version": "6.0", + "ServiceUpdateDescription": { + "ServiceKind": "Stateless", + "Flags": "1568", + "PlacementConstraints": "Color==Red", + "DefaultMoveCost": "High", + "ScalingPolicies": [ + { + "ScalingTrigger": { + "Kind": "AveragePartitionLoad", + "MetricName": "servicefabric:/_CpuCores", + "LowerLoadThreshold": "0.500000", + "UpperLoadThreshold": "0.800000", + "ScaleIntervalInSeconds": 900 + }, + "ScalingMechanism": { + "Kind": "PartitionInstanceCount", + "MinInstanceCount": 4, + "MaxInstanceCount": 6, + "ScaleIncrement": 2 + } + } + ] + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/UpdateService-2.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/UpdateService-2.json new file mode 100644 index 000000000000..cdb1368dbdd6 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/examples/UpdateService-2.json @@ -0,0 +1,17 @@ +{ + "operationId": "UpdateService", + "description": "This example shows how to update placement and load balancing related settings of a stateful Service Fabric service.", + "parameters": { + "serviceId": "test~test2", + "api-version": "6.0", + "ServiceUpdateDescription": { + "ServiceKind": "Stateful", + "Flags": "40", + "PlacementConstraints": "Color==Green", + "StandByReplicaKeepDurationSeconds": "1000" + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/servicefabric.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/servicefabric.json new file mode 100644 index 000000000000..a0b5aa3b4862 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/8.0/servicefabric.json @@ -0,0 +1,29290 @@ +{ + "swagger": "2.0", + "info": { + "title": "Service Fabric Client APIs", + "description": "Service Fabric REST Client APIs allows management of Service Fabric clusters, applications and services.", + "version": "8.0" + }, + "host": "localhost:19080", + "schemes": [ + "http", + "https" + ], + "produces": [ + "application/json" + ], + "paths": { + "/$/GetClusterManifest": { + "get": { + "operationId": "GetClusterManifest", + "summary": "Get the Service Fabric cluster manifest.", + "description": "Get the Service Fabric cluster manifest. The cluster manifest contains properties of the cluster that include different node types on the cluster,\nsecurity configurations, fault, and upgrade domain topologies, etc.\n\nThese properties are specified as part of the ClusterConfig.JSON file while deploying a stand-alone cluster. However, most of the information in the cluster manifest\nis generated internally by service fabric during cluster deployment in other deployment scenarios (e.g. when using Azure portal).\n\nThe contents of the cluster manifest are for informational purposes only and users are not expected to take a dependency on the format of the file contents or its interpretation.", + "tags": [ + "Cluster" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested cluster manifest information.", + "schema": { + "$ref": "#/definitions/ClusterManifest" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/GetClusterHealth": { + "get": { + "operationId": "GetClusterHealth", + "summary": "Gets the health of a Service Fabric cluster.", + "description": "Use EventsHealthStateFilter to filter the collection of health events reported on the cluster based on the health state.\nSimilarly, use NodesHealthStateFilter and ApplicationsHealthStateFilter to filter the collection of nodes and applications returned based on their aggregated health state.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodesHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ApplicationsHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/EventsHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ExcludeHealthStatisticsOptionalQueryParam" + }, + { + "$ref": "#/parameters/IncludeSystemApplicationHealthStatisticsOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Cluster" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested cluster health information.", + "schema": { + "$ref": "#/definitions/ClusterHealth" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + }, + "post": { + "operationId": "GetClusterHealthUsingPolicy", + "summary": "Gets the health of a Service Fabric cluster using the specified policy.", + "description": "Use EventsHealthStateFilter to filter the collection of health events reported on the cluster based on the health state.\nSimilarly, use NodesHealthStateFilter and ApplicationsHealthStateFilter to filter the collection of nodes and applications returned based on their aggregated health state.\nUse ClusterHealthPolicies to override the health policies used to evaluate the health.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodesHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ApplicationsHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/EventsHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ExcludeHealthStatisticsOptionalQueryParam" + }, + { + "$ref": "#/parameters/IncludeSystemApplicationHealthStatisticsOptionalQueryParam" + }, + { + "$ref": "#/parameters/ClusterHealthPoliciesOptionalBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Cluster" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested cluster health information.", + "schema": { + "$ref": "#/definitions/ClusterHealth" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/GetClusterHealthChunk": { + "get": { + "operationId": "GetClusterHealthChunk", + "summary": "Gets the health of a Service Fabric cluster using health chunks.", + "description": "Gets the health of a Service Fabric cluster using health chunks. Includes the aggregated health state of the cluster, but none of the cluster entities.\nTo expand the cluster health and get the health state of all or some of the entities, use the POST URI and specify the cluster health chunk query description.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Cluster" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested cluster health chunk information.", + "schema": { + "$ref": "#/definitions/ClusterHealthChunk" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + }, + "post": { + "operationId": "GetClusterHealthChunkUsingPolicyAndAdvancedFilters", + "summary": "Gets the health of a Service Fabric cluster using health chunks.", + "description": "Gets the health of a Service Fabric cluster using health chunks. The health evaluation is done based on the input cluster health chunk query description.\nThe query description allows users to specify health policies for evaluating the cluster and its children.\nUsers can specify very flexible filters to select which cluster entities to return. The selection can be done based on the entities health state and based on the hierarchy.\nThe query can return multi-level children of the entities based on the specified filters. For example, it can return one application with a specified name, and for this application, return\nonly services that are in Error or Warning, and all partitions and replicas for one of these services.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ClusterHealthChunkQueryDescriptionOptionalBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Cluster" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested cluster health chunk information.", + "schema": { + "$ref": "#/definitions/ClusterHealthChunk" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/ReportClusterHealth": { + "post": { + "operationId": "ReportClusterHealth", + "summary": "Sends a health report on the Service Fabric cluster.", + "description": "Sends a health report on a Service Fabric cluster. The report must contain the information about the source of the health report and property on which it is reported.\nThe report is sent to a Service Fabric gateway node, which forwards to the health store.\nThe report may be accepted by the gateway, but rejected by the health store after extra validation.\nFor example, the health store may reject the report because of an invalid parameter, like a stale sequence number.\nTo see whether the report was applied in the health store, run GetClusterHealth and check that the report appears in the HealthEvents section.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/HealthInformationRequiredBodyParam" + }, + { + "$ref": "#/parameters/ImmediateOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Cluster" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code when the cluster health report is accepted for processing." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/GetProvisionedCodeVersions": { + "get": { + "operationId": "GetProvisionedFabricCodeVersionInfoList", + "summary": "Gets a list of fabric code versions that are provisioned in a Service Fabric cluster.", + "description": "Gets a list of information about fabric code versions that are provisioned in the cluster. The parameter CodeVersion can be used to optionally filter the output to only that particular version.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/CodeVersionOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Cluster" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested provisioned code versions information.", + "schema": { + "$ref": "#/definitions/FabricCodeVersionInfoList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/GetProvisionedConfigVersions": { + "get": { + "operationId": "GetProvisionedFabricConfigVersionInfoList", + "summary": "Gets a list of fabric config versions that are provisioned in a Service Fabric cluster.", + "description": "Gets a list of information about fabric config versions that are provisioned in the cluster. The parameter ConfigVersion can be used to optionally filter the output to only that particular version.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ConfigVersionOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Cluster" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested provisioned config versions information.", + "schema": { + "$ref": "#/definitions/FabricConfigVersionInfoList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/GetUpgradeProgress": { + "get": { + "operationId": "GetClusterUpgradeProgress", + "summary": "Gets the progress of the current cluster upgrade.", + "description": "Gets the current progress of the ongoing cluster upgrade. If no upgrade is currently in progress, get the last state of the previous cluster upgrade.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Cluster" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested cluster upgrade progress.", + "schema": { + "$ref": "#/definitions/ClusterUpgradeProgressObject" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/GetClusterConfiguration": { + "get": { + "operationId": "GetClusterConfiguration", + "summary": "Get the Service Fabric standalone cluster configuration.", + "description": "The cluster configuration contains properties of the cluster that include different node types on the cluster,\nsecurity configurations, fault, and upgrade domain topologies, etc.", + "tags": [ + "Cluster" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ConfigurationApiVersionRequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested cluster configuration information.", + "schema": { + "$ref": "#/definitions/ClusterConfiguration" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/GetClusterConfigurationUpgradeStatus": { + "get": { + "operationId": "GetClusterConfigurationUpgradeStatus", + "summary": "Get the cluster configuration upgrade status of a Service Fabric standalone cluster.", + "description": "Get the cluster configuration upgrade status details of a Service Fabric standalone cluster.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Cluster" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested cluster configuration upgrade status.", + "schema": { + "$ref": "#/definitions/ClusterConfigurationUpgradeStatusInfo" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/GetUpgradeOrchestrationServiceState": { + "get": { + "operationId": "GetUpgradeOrchestrationServiceState", + "summary": "Get the service state of Service Fabric Upgrade Orchestration Service.", + "description": "Get the service state of Service Fabric Upgrade Orchestration Service. This API is internally used for support purposes.", + "tags": [ + "Cluster" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested service state of Service Fabric Upgrade Orchestration Service.", + "schema": { + "$ref": "#/definitions/UpgradeOrchestrationServiceState" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/SetUpgradeOrchestrationServiceState": { + "post": { + "operationId": "SetUpgradeOrchestrationServiceState", + "summary": "Update the service state of Service Fabric Upgrade Orchestration Service.", + "description": "Update the service state of Service Fabric Upgrade Orchestration Service. This API is internally used for support purposes.", + "tags": [ + "Cluster" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/UpgradeOrchestrationServiceStateRequiredBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful response means that the service state of Service Fabric Upgrade Orchestration Service has been updated.", + "schema": { + "$ref": "#/definitions/UpgradeOrchestrationServiceStateSummary" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/Provision": { + "post": { + "summary": "Provision the code or configuration packages of a Service Fabric cluster.", + "description": "Validate and provision the code or configuration packages of a Service Fabric cluster.", + "operationId": "ProvisionCluster", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ProvisionFabricDescriptionRequiredBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Cluster" + ], + "responses": { + "200": { + "description": "A successful response means that the code or configuration packages have been provisioned." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/Unprovision": { + "post": { + "summary": "Unprovision the code or configuration packages of a Service Fabric cluster.", + "description": "It is supported to unprovision code and configuration separately.", + "operationId": "UnprovisionCluster", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/UnprovisionFabricDescriptionRequiredBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Cluster" + ], + "responses": { + "200": { + "description": "A successful response means that the code or configuration packages have been unprovisioned." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/RollbackUpgrade": { + "post": { + "summary": "Roll back the upgrade of a Service Fabric cluster.", + "description": "Roll back the code or configuration upgrade of a Service Fabric cluster.", + "operationId": "RollbackClusterUpgrade", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Cluster" + ], + "responses": { + "202": { + "description": "A successful response means that the rollback of a cluster upgrade has been initiated." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/MoveToNextUpgradeDomain": { + "post": { + "summary": "Make the cluster upgrade move on to the next upgrade domain.", + "description": "Make the cluster code or configuration upgrade move on to the next upgrade domain if appropriate.", + "operationId": "ResumeClusterUpgrade", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ResumeClusterUpgradeDescriptionRequiredBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Cluster" + ], + "responses": { + "200": { + "description": "A successful response means that the cluster upgrade has moved on to the next upgrade domain." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/Upgrade": { + "post": { + "summary": "Start upgrading the code or configuration version of a Service Fabric cluster.", + "description": "Validate the supplied upgrade parameters and start upgrading the code or configuration version of a Service Fabric cluster if the parameters are valid.", + "operationId": "StartClusterUpgrade", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/StartClusterUpgradeDescriptionRequiredBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Cluster" + ], + "responses": { + "202": { + "description": "A successful response means that the cluster code or configuration upgrade has started. Use GetUpgradeProgress operation to get the status of the upgrade." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/StartClusterConfigurationUpgrade": { + "post": { + "summary": "Start upgrading the configuration of a Service Fabric standalone cluster.", + "description": "Validate the supplied configuration upgrade parameters and start upgrading the cluster configuration if the parameters are valid.", + "operationId": "StartClusterConfigurationUpgrade", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ClusterConfigurationUpgradeDescriptionRequiredBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Cluster" + ], + "x-ms-examples": { + "Start upgrading the configuration of a Service Fabric standalone cluster": { + "$ref": "./examples/StartClusterConfigurationUpgrade-1.json" + } + }, + "responses": { + "202": { + "description": "A successful response means that the cluster configuration upgrade has started. Use GetClusterConfigurationUpgradeStatus operation to get the status of the upgrade." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/UpdateUpgrade": { + "post": { + "operationId": "UpdateClusterUpgrade", + "summary": "Update the upgrade parameters of a Service Fabric cluster upgrade.", + "description": "Update the upgrade parameters used during a Service Fabric cluster upgrade.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/UpdateClusterUpgradeDescriptionRequiredBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Cluster" + ], + "responses": { + "200": { + "description": "A successful operation returns 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/GetAadMetadata": { + "get": { + "operationId": "GetAadMetadata", + "summary": "Gets the Azure Active Directory metadata used for secured connection to cluster.", + "description": "Gets the Azure Active Directory metadata used for secured connection to cluster.\nThis API is not supposed to be called separately. It provides information needed to set up an Azure Active Directory secured connection with a Service Fabric cluster.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "schemes": [ + "https" + ], + "tags": [ + "Cluster" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the Azure Active Directory metadata.", + "schema": { + "$ref": "#/definitions/AadMetadataObject" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/GetClusterVersion": { + "get": { + "operationId": "GetClusterVersion", + "summary": "Get the current Service Fabric cluster version.", + "description": "If a cluster upgrade is happening, then this API will return the lowest (older) version of the current and target cluster runtime versions.", + "tags": [ + "Cluster" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "x-ms-examples": { + "Get cluster version": { + "$ref": "./examples/GetClusterVersion-1.json" + } + }, + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested cluster version information.", + "schema": { + "$ref": "#/definitions/ClusterVersion" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/GetLoadInformation": { + "get": { + "operationId": "GetClusterLoad", + "summary": "Gets the load of a Service Fabric cluster.", + "description": "Retrieves the load information of a Service Fabric cluster for all the metrics that have load or capacity defined.", + "tags": [ + "Cluster" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested cluster load information.", + "schema": { + "$ref": "#/definitions/ClusterLoadInfo" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/ToggleVerboseServicePlacementHealthReporting": { + "post": { + "operationId": "ToggleVerboseServicePlacementHealthReporting", + "summary": "Changes the verbosity of service placement health reporting.", + "description": "If verbosity is set to true, then detailed health reports will be generated when replicas cannot be placed or dropped.\nIf verbosity is set to false, then no health reports will be generated when replicas cannot be placed or dropped.", + "tags": [ + "Cluster" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/VerboseServicePlacementHealthReportingParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful response means that the verbosity of service placement health reporting was updated." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes": { + "get": { + "summary": "Gets the list of nodes in the Service Fabric cluster.", + "description": "The response includes the name, status, ID, health, uptime, and other details about the nodes.", + "operationId": "GetNodeInfoList", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-3_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ContinuationTokenOptionalQueryParam" + }, + { + "$ref": "#/parameters/NodeStatusFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/MaxResultsOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Node" + ], + "x-ms-examples": { + "Get information about all nodes": { + "$ref": "./examples/GetNodeInfoList.json" + }, + "Limit maximum results": { + "$ref": "./examples/GetNodeInfoList-1.json" + }, + "Page using continuation token": { + "$ref": "./examples/GetNodeInfoList-2.json" + } + }, + "responses": { + "200": { + "description": "List of nodes in the cluster.", + "schema": { + "$ref": "#/definitions/PagedNodeInfoList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}": { + "get": { + "summary": "Gets the information about a specific node in the Service Fabric cluster.", + "description": "The response includes the name, status, ID, health, uptime, and other details about the node.", + "operationId": "GetNodeInfo", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Node" + ], + "x-ms-examples": { + "Get a specific node by node name": { + "$ref": "./examples/GetNodeInfo-1.json" + } + }, + "responses": { + "200": { + "description": "A successful operation will return information about the node with the specified nodeName.", + "schema": { + "$ref": "#/definitions/NodeInfo" + } + }, + "204": { + "description": "An empty response is returned if the specified nodeName is not found." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/GetHealth": { + "get": { + "operationId": "GetNodeHealth", + "summary": "Gets the health of a Service Fabric node.", + "description": "Gets the health of a Service Fabric node. Use EventsHealthStateFilter to filter the collection of health events reported on the node based on the health state. If the node that you specify by name does not exist in the health store, this returns an error.", + "tags": [ + "Node" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/EventsHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested node health information.", + "schema": { + "$ref": "#/definitions/NodeHealth" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + }, + "post": { + "operationId": "GetNodeHealthUsingPolicy", + "summary": "Gets the health of a Service Fabric node, by using the specified health policy.", + "description": "Gets the health of a Service Fabric node. Use EventsHealthStateFilter to filter the collection of health events reported on the node based on the health state. Use ClusterHealthPolicy in the POST body to override the health policies used to evaluate the health. If the node that you specify by name does not exist in the health store, this returns an error.", + "tags": [ + "Node" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/EventsHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ClusterHealthPolicyOptionalBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested node health information.", + "schema": { + "$ref": "#/definitions/NodeHealth" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/ReportHealth": { + "post": { + "operationId": "ReportNodeHealth", + "summary": "Sends a health report on the Service Fabric node.", + "description": "Reports health state of the specified Service Fabric node. The report must contain the information about the source of the health report and property on which it is reported.\nThe report is sent to a Service Fabric gateway node, which forwards to the health store.\nThe report may be accepted by the gateway, but rejected by the health store after extra validation.\nFor example, the health store may reject the report because of an invalid parameter, like a stale sequence number.\nTo see whether the report was applied in the health store, run GetNodeHealth and check that the report appears in the HealthEvents section.", + "tags": [ + "Node" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/HealthInformationRequiredBodyParam" + }, + { + "$ref": "#/parameters/ImmediateOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/GetLoadInformation": { + "get": { + "operationId": "GetNodeLoadInfo", + "summary": "Gets the load information of a Service Fabric node.", + "description": "Retrieves the load information of a Service Fabric node for all the metrics that have load or capacity defined.", + "tags": [ + "Node" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested node load information.", + "schema": { + "$ref": "#/definitions/NodeLoadInfo" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/Deactivate": { + "post": { + "operationId": "DisableNode", + "summary": "Deactivate a Service Fabric cluster node with the specified deactivation intent.", + "description": "Deactivate a Service Fabric cluster node with the specified deactivation intent. Once the deactivation is in progress, the deactivation intent can be increased, but not decreased (for example, a node that is deactivated with the Pause intent can be deactivated further with Restart, but not the other way around. Nodes may be reactivated using the Activate a node operation any time after they are deactivated. If the deactivation is not complete, this will cancel the deactivation. A node that goes down and comes back up while deactivated will still need to be reactivated before services will be placed on that node.", + "tags": [ + "Node" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/DeactivationIntentDescriptionRequiredBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/Activate": { + "post": { + "operationId": "EnableNode", + "summary": "Activate a Service Fabric cluster node that is currently deactivated.", + "description": "Activates a Service Fabric cluster node that is currently deactivated. Once activated, the node will again become a viable target for placing new replicas, and any deactivated replicas remaining on the node will be reactivated.", + "tags": [ + "Node" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/RemoveNodeState": { + "post": { + "operationId": "RemoveNodeState", + "summary": "Notifies Service Fabric that the persisted state on a node has been permanently removed or lost.", + "description": "This implies that it is not possible to recover the persisted state of that node. This generally happens if a hard disk has been wiped clean, or if a hard disk crashes. The node has to be down for this operation to be successful. This operation lets Service Fabric know that the replicas on that node no longer exist, and that Service Fabric should stop waiting for those replicas to come back up. Do not run this cmdlet if the state on the node has not been removed and the node can come back up with its state intact. Starting from Service Fabric 6.5, in order to use this API for seed nodes, please change the seed nodes to regular (non-seed) nodes and then invoke this API to remove the node state. If the cluster is running on Azure, after the seed node goes down, Service Fabric will try to change it to a non-seed node automatically. To make this happen, make sure the number of non-seed nodes in the primary node type is no less than the number of Down seed nodes. If necessary, add more nodes to the primary node type to achieve this. For standalone cluster, if the Down seed node is not expected to come back up with its state intact, please remove the node from the cluster, see https://docs.microsoft.com/azure/service-fabric/service-fabric-cluster-windows-server-add-remove-nodes", + "tags": [ + "Node" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/Restart": { + "post": { + "operationId": "RestartNode", + "summary": "Restarts a Service Fabric cluster node.", + "description": "Restarts a Service Fabric cluster node that is already started.", + "tags": [ + "Node" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/RestartNodeDescriptionRequiredBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code. A successful operation means that the restart command was received by the node and it is in the process of restarting. Check the status of the node by calling GetNode operation." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/RemoveConfigurationOverrides": { + "delete": { + "operationId": "RemoveConfigurationOverrides", + "summary": "Removes configuration overrides on the specified node.", + "description": "This api allows removing all existing configuration overrides on specified node.", + "tags": [ + "Node" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_7-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/GetConfigurationOverrides": { + "get": { + "operationId": "GetConfigurationOverrides", + "summary": "Gets the list of configuration overrides on the specified node.", + "description": "This api allows getting all existing configuration overrides on the specified node.", + "tags": [ + "Node" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_7-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "List of configuration overrides on the node.", + "schema": { + "$ref": "#/definitions/ConfigParameterOverrideList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/AddConfigurationParameterOverrides": { + "post": { + "operationId": "AddConfigurationParameterOverrides", + "summary": "Adds the list of configuration overrides on the specified node.", + "description": "This api allows adding all existing configuration overrides on the specified node.", + "tags": [ + "Node" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_7-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ConfigurationOverrideListRequiredParam" + }, + { + "$ref": "#/parameters/ForceConfigurationOverrideOptionalParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/RemoveNodeTags": { + "post": { + "operationId": "RemoveNodeTags", + "summary": "Removes the list of tags from the specified node.", + "description": "This api allows removing set of tags from the specified node.", + "tags": [ + "Node" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_7-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/NodeTagsListRequiredParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/AddNodeTags": { + "post": { + "operationId": "AddNodeTags", + "summary": "Adds the list of tags on the specified node.", + "description": "This api allows adding tags to the specified node.", + "tags": [ + "Node" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_7-2_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/NodeTagsListRequiredParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/ApplicationTypes": { + "get": { + "summary": "Gets the list of application types in the Service Fabric cluster.", + "description": "Returns the information about the application types that are provisioned or in the process of being provisioned in the Service Fabric cluster. Each version of an application type is returned as one application type. The response includes the name, version, status, and other details about the application type. This is a paged query, meaning that if not all of the application types fit in a page, one page of results is returned as well as a continuation token, which can be used to get the next page. For example, if there are 10 application types but a page only fits the first three application types, or if max results is set to 3, then three is returned. To access the rest of the results, retrieve subsequent pages by using the returned continuation token in the next query. An empty continuation token is returned if there are no subsequent pages.", + "operationId": "GetApplicationTypeInfoList", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationTypeDefinitionKindFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ExcludeApplicationParametersOptionalQueryParam" + }, + { + "$ref": "#/parameters/ContinuationTokenOptionalQueryParam" + }, + { + "$ref": "#/parameters/MaxResultsOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "x-ms-examples": { + "Limit maximum results": { + "$ref": "./examples/GetApplicationTypeInfoList-1.json" + }, + "Page using continuation token": { + "$ref": "./examples/GetApplicationTypeInfoList-2.json" + }, + "Exclude application parameters from the result": { + "$ref": "./examples/GetApplicationTypeInfoList-3.json" + } + }, + "tags": [ + "ApplicationType" + ], + "responses": { + "200": { + "description": "List of application types in the cluster.", + "schema": { + "$ref": "#/definitions/PagedApplicationTypeInfoList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/ApplicationTypes/{applicationTypeName}": { + "get": { + "summary": "Gets the list of application types in the Service Fabric cluster matching exactly the specified name.", + "description": "Returns the information about the application types that are provisioned or in the process of being provisioned in the Service Fabric cluster. These results are of application types whose name match exactly the one specified as the parameter, and which comply with the given query parameters. All versions of the application type matching the application type name are returned, with each version returned as one application type. The response includes the name, version, status, and other details about the application type. This is a paged query, meaning that if not all of the application types fit in a page, one page of results is returned as well as a continuation token, which can be used to get the next page. For example, if there are 10 application types but a page only fits the first three application types, or if max results is set to 3, then three is returned. To access the rest of the results, retrieve subsequent pages by using the returned continuation token in the next query. An empty continuation token is returned if there are no subsequent pages.", + "operationId": "GetApplicationTypeInfoListByName", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationTypeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ApplicationTypeVersionOptionalQueryParam" + }, + { + "$ref": "#/parameters/ExcludeApplicationParametersOptionalQueryParam" + }, + { + "$ref": "#/parameters/ContinuationTokenOptionalQueryParam" + }, + { + "$ref": "#/parameters/MaxResultsOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "ApplicationType" + ], + "responses": { + "200": { + "description": "List of application types in the cluster.", + "schema": { + "$ref": "#/definitions/PagedApplicationTypeInfoList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/ApplicationTypes/$/Provision": { + "post": { + "operationId": "ProvisionApplicationType", + "summary": "Provisions or registers a Service Fabric application type with the cluster using the '.sfpkg' package in the external store or using the application package in the image store.", + "description": "Provisions a Service Fabric application type with the cluster. The provision is required before any new applications can be instantiated.\nThe provision operation can be performed either on the application package specified by the relativePathInImageStore, or by using the URI of the external '.sfpkg'.", + "tags": [ + "ApplicationType" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-2_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ProvisionApplicationTypeDescriptionBaseRequiredBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful provision will return 200 status code." + }, + "202": { + "description": "A 202 status code indicates the operation was accepted and the provision operation has been initiated." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/ApplicationTypes/{applicationTypeName}/$/Unprovision": { + "post": { + "operationId": "UnprovisionApplicationType", + "summary": "Removes or unregisters a Service Fabric application type from the cluster.", + "description": "This operation can only be performed if all application instances of the application type have been deleted. Once the application type is unregistered, no new application instances can be created for this particular application type.", + "tags": [ + "ApplicationType" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationTypeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/UnprovisionApplicationTypeRequiredBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful provision will return 200 status code." + }, + "202": { + "description": "A 202 status code indicates the operation was accepted." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/ApplicationTypes/{applicationTypeName}/$/GetServiceTypes": { + "get": { + "summary": "Gets the list containing the information about service types that are supported by a provisioned application type in a Service Fabric cluster.", + "description": "Gets the list containing the information about service types that are supported by a provisioned application type in a Service Fabric cluster. The provided application type must exist. Otherwise, a 404 status is returned.", + "operationId": "GetServiceTypeInfoList", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationTypeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ApplicationTypeVersionRequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "ServiceType" + ], + "x-ms-examples": { + "Get information about all nodes.": { + "$ref": "./examples/GetServiceTypeInfoList-1.json" + } + }, + "responses": { + "200": { + "description": "List of service types that are supported by a provisioned application type.", + "schema": { + "$ref": "#/definitions/ServiceTypeInfoList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/ApplicationTypes/{applicationTypeName}/$/GetServiceTypes/{serviceTypeName}": { + "get": { + "summary": "Gets the information about a specific service type that is supported by a provisioned application type in a Service Fabric cluster.", + "description": "Gets the information about a specific service type that is supported by a provisioned application type in a Service Fabric cluster. The provided application type must exist. Otherwise, a 404 status is returned. A 204 response is returned if the specified service type is not found in the cluster.", + "operationId": "GetServiceTypeInfoByName", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationTypeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ApplicationTypeVersionRequiredQueryParam" + }, + { + "$ref": "#/parameters/ServiceTypeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "ServiceType" + ], + "x-ms-examples": { + "Get information about all nodes.": { + "$ref": "./examples/GetServiceTypeInfoByName-1.json" + } + }, + "responses": { + "200": { + "description": "A specific service type which supported by a provisioned application type.", + "schema": { + "$ref": "#/definitions/ServiceTypeInfo" + } + }, + "204": { + "description": "A 204 response is returned if the specified service type is not found in the cluster." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/ApplicationTypes/{applicationTypeName}/$/GetServiceManifest": { + "get": { + "summary": "Gets the manifest describing a service type.", + "description": "Gets the manifest describing a service type. The response contains the service manifest XML as a string.", + "operationId": "GetServiceManifest", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationTypeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ApplicationTypeVersionRequiredQueryParam" + }, + { + "$ref": "#/parameters/ServiceManifestNameRequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "ServiceType" + ], + "responses": { + "200": { + "description": "Information about the service type.", + "schema": { + "$ref": "#/definitions/ServiceTypeManifest" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/GetApplications/{applicationId}/$/GetServiceTypes": { + "get": { + "summary": "Gets the list containing the information about service types from the applications deployed on a node in a Service Fabric cluster.", + "description": "Gets the list containing the information about service types from the applications deployed on a node in a Service Fabric cluster. The response includes the name of the service type, its registration status, the code package that registered it and activation ID of the service package.", + "operationId": "GetDeployedServiceTypeInfoList", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/DeployedServiceType_ServiceManifestNameOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "ServiceType" + ], + "responses": { + "200": { + "description": "List of information about service types of an application deployed on a node.", + "schema": { + "$ref": "#/definitions/DeployedServiceTypeInfoList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/GetApplications/{applicationId}/$/GetServiceTypes/{serviceTypeName}": { + "get": { + "summary": "Gets the information about a specified service type of the application deployed on a node in a Service Fabric cluster.", + "description": "Gets the list containing the information about a specific service type from the applications deployed on a node in a Service Fabric cluster. The response includes the name of the service type, its registration status, the code package that registered it and activation ID of the service package. Each entry represents one activation of a service type, differentiated by the activation ID.", + "operationId": "GetDeployedServiceTypeInfoByName", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ServiceTypeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/DeployedServiceType_ServiceManifestNameOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "ServiceType" + ], + "responses": { + "200": { + "description": "Information about service types of an application deployed on a node.", + "schema": { + "$ref": "#/definitions/DeployedServiceTypeInfoList" + } + }, + "204": { + "description": "An empty response is returned if the specified service type of the application is not deployed on the node." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Applications/$/Create": { + "post": { + "summary": "Creates a Service Fabric application.", + "description": "Creates a Service Fabric application using the specified description.", + "operationId": "CreateApplication", + "x-ms-examples": { + "Create application.": { + "$ref": "./examples/CreateApplication-1.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationDescriptionRequiredBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Application" + ], + "responses": { + "201": { + "description": "A successful response means that the application creation has been started. Use GetApplication operation to get the status of the application. Once GetApplicationInfo successfully returns application information, the application is created. If the application has default services those may be in the process of being created. Use GetServiceInfo operation to get the status of the service within the application." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Applications/{applicationId}/$/Delete": { + "post": { + "summary": "Deletes an existing Service Fabric application.", + "description": "An application must be created before it can be deleted. Deleting an application will delete all services that are part of that application. By default, Service Fabric will try to close service replicas in a graceful manner and then delete the service. However, if a service is having issues closing the replica gracefully, the delete operation may take a long time or get stuck. Use the optional ForceRemove flag to skip the graceful close sequence and forcefully delete the application and all of its services.", + "operationId": "DeleteApplication", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ForceRemoveOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Application" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Applications/{applicationId}/$/GetLoadInformation": { + "get": { + "summary": "Gets load information about a Service Fabric application.", + "description": "Returns the load information about the application that was created or in the process of being created in the Service Fabric cluster and whose name matches the one specified as the parameter. The response includes the name, minimum nodes, maximum nodes, the number of nodes the application is occupying currently, and application load metric information about the application.", + "operationId": "GetApplicationLoadInfo", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Application" + ], + "responses": { + "200": { + "description": "Information about the application load.", + "schema": { + "$ref": "#/definitions/ApplicationLoadInfo" + } + }, + "204": { + "description": "An empty response is returned if the specified applicationId is not found in the cluster." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Applications": { + "get": { + "summary": "Gets the list of applications created in the Service Fabric cluster that match the specified filters.", + "description": "Gets the information about the applications that were created or in the process of being created in the Service Fabric cluster and match the specified filters. The response includes the name, type, status, parameters, and other details about the application. If the applications do not fit in a page, one page of results is returned as well as a continuation token, which can be used to get the next page. Filters ApplicationTypeName and ApplicationDefinitionKindFilter cannot be specified at the same time.", + "operationId": "GetApplicationInfoList", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-1_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationDefinitionKindFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ApplicationTypeNameOptionalQueryParam" + }, + { + "$ref": "#/parameters/ExcludeApplicationParametersOptionalQueryParam" + }, + { + "$ref": "#/parameters/ContinuationTokenOptionalQueryParam" + }, + { + "$ref": "#/parameters/MaxResultsOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Application" + ], + "x-ms-examples": { + "Limit maximum results": { + "$ref": "./examples/GetApplicationInfoList-1.json" + }, + "Page using continuation token": { + "$ref": "./examples/GetApplicationInfoList-2.json" + } + }, + "responses": { + "200": { + "description": "List of applications created in the cluster.", + "schema": { + "$ref": "#/definitions/PagedApplicationInfoList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Applications/{applicationId}": { + "get": { + "summary": "Gets information about a Service Fabric application.", + "description": "Returns the information about the application that was created or in the process of being created in the Service Fabric cluster and whose name matches the one specified as the parameter. The response includes the name, type, status, parameters, and other details about the application.", + "operationId": "GetApplicationInfo", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ExcludeApplicationParametersOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Application" + ], + "x-ms-examples": { + "Get a specific application by application id": { + "$ref": "./examples/GetApplicationInfoByName-1.json" + } + }, + "responses": { + "200": { + "description": "Information about the application.", + "schema": { + "$ref": "#/definitions/ApplicationInfo" + } + }, + "204": { + "description": "An empty response is returned if the specified applicationId is not found in the cluster." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Applications/{applicationId}/$/GetHealth": { + "get": { + "summary": "Gets the health of the service fabric application.", + "description": "Returns the heath state of the service fabric application. The response reports either Ok, Error or Warning health state. If the entity is not found in the health store, it will return Error.", + "operationId": "GetApplicationHealth", + "parameters": [ + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/EventsHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/DeployedApplicationsHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ServicesHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ExcludeHealthStatisticsOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Application" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested application health information.", + "schema": { + "$ref": "#/definitions/ApplicationHealth" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + }, + "post": { + "operationId": "GetApplicationHealthUsingPolicy", + "summary": "Gets the health of a Service Fabric application using the specified policy.", + "description": "Gets the health of a Service Fabric application. Use EventsHealthStateFilter to filter the collection of health events reported on the node based on the health state. Use ClusterHealthPolicies to override the health policies used to evaluate the health.", + "parameters": [ + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/EventsHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/DeployedApplicationsHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ServicesHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ExcludeHealthStatisticsOptionalQueryParam" + }, + { + "$ref": "#/parameters/ApplicationHealthPolicyOptionalBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Application" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested node health information.", + "schema": { + "$ref": "#/definitions/ApplicationHealth" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Applications/{applicationId}/$/ReportHealth": { + "post": { + "operationId": "ReportApplicationHealth", + "summary": "Sends a health report on the Service Fabric application.", + "description": "Reports health state of the specified Service Fabric application. The report must contain the information about the source of the health report and property on which it is reported.\nThe report is sent to a Service Fabric gateway Application, which forwards to the health store.\nThe report may be accepted by the gateway, but rejected by the health store after extra validation.\nFor example, the health store may reject the report because of an invalid parameter, like a stale sequence number.\nTo see whether the report was applied in the health store, get application health and check that the report appears in the HealthEvents section.", + "tags": [ + "Application" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/HealthInformationRequiredBodyParam" + }, + { + "$ref": "#/parameters/ImmediateOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Applications/{applicationId}/$/Upgrade": { + "post": { + "summary": "Starts upgrading an application in the Service Fabric cluster.", + "description": "Validates the supplied application upgrade parameters and starts upgrading the application if the parameters are valid.\nNote, [ApplicationParameter](https://docs.microsoft.com/dotnet/api/system.fabric.description.applicationdescription.applicationparameters)s are not preserved across an application upgrade.\nIn order to preserve current application parameters, the user should get the parameters using [GetApplicationInfo](./GetApplicationInfo.md) operation first and pass them into the upgrade API call as shown in the example.", + "operationId": "StartApplicationUpgrade", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ApplicationUpgradeDescriptionRequiredBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Application" + ], + "x-ms-examples": { + "Upgrade an application preserving current application parameters": { + "$ref": "./examples/StartApplicationUpgrade-1.json" + } + }, + "responses": { + "200": { + "description": "A successful response means that the application upgrade has started. Use GetApplicationUpgrade operation to get the status of the upgrade." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Applications/{applicationId}/$/GetUpgradeProgress": { + "get": { + "summary": "Gets details for the latest upgrade performed on this application.", + "description": "Returns information about the state of the latest application upgrade along with details to aid debugging application health issues.", + "operationId": "GetApplicationUpgrade", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Application" + ], + "responses": { + "200": { + "description": "The application upgrade details.", + "schema": { + "$ref": "#/definitions/ApplicationUpgradeProgressInfo" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Applications/{applicationId}/$/UpdateUpgrade": { + "post": { + "summary": "Updates an ongoing application upgrade in the Service Fabric cluster.", + "description": "Updates the parameters of an ongoing application upgrade from the ones specified at the time of starting the application upgrade. This may be required to mitigate stuck application upgrades due to incorrect parameters or issues in the application to make progress.", + "operationId": "UpdateApplicationUpgrade", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ApplicationUpgradeUpdateDescriptionRequiredBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Application" + ], + "responses": { + "200": { + "description": "A successful response means that the application upgrade has updated with the specified parameters. Use GetApplicationUpgrade operation to get the status of the upgrade." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Applications/{applicationId}/$/MoveToNextUpgradeDomain": { + "post": { + "summary": "Resumes upgrading an application in the Service Fabric cluster.", + "description": "Resumes an unmonitored manual Service Fabric application upgrade. Service Fabric upgrades one upgrade domain at a time. For unmonitored manual upgrades, after Service Fabric finishes an upgrade domain, it waits for you to call this API before proceeding to the next upgrade domain.", + "operationId": "ResumeApplicationUpgrade", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ResumeApplicationUpgradeDescriptionRequiredBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Application" + ], + "responses": { + "200": { + "description": "A successful response means that the application upgrade has been resumed in the specified upgrade domain. Use GetApplicationUpgrade operation to get the status of the upgrade." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Applications/{applicationId}/$/RollbackUpgrade": { + "post": { + "summary": "Starts rolling back the currently on-going upgrade of an application in the Service Fabric cluster.", + "description": "Starts rolling back the current application upgrade to the previous version. This API can only be used to roll back the current in-progress upgrade that is rolling forward to new version. If the application is not currently being upgraded use StartApplicationUpgrade API to upgrade it to desired version, including rolling back to a previous version.", + "operationId": "RollbackApplicationUpgrade", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Application" + ], + "responses": { + "200": { + "description": "A successful response means that the application has started to roll back. Use GetApplicationUpgrade operation to get the status of the upgrade." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/GetApplications": { + "get": { + "operationId": "GetDeployedApplicationInfoList", + "summary": "Gets the list of applications deployed on a Service Fabric node.", + "description": "Gets the list of applications deployed on a Service Fabric node. The results do not include information about deployed system applications unless explicitly queried for by ID. Results encompass deployed applications in active, activating, and downloading states. This query requires that the node name corresponds to a node on the cluster. The query fails if the provided node name does not point to any active Service Fabric nodes on the cluster.", + "tags": [ + "Application" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-1_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + }, + { + "$ref": "#/parameters/IncludeHealthStateOptionalQueryParam" + }, + { + "$ref": "#/parameters/ContinuationTokenOptionalQueryParam" + }, + { + "$ref": "#/parameters/MaxResultsOptionalQueryParam" + } + ], + "x-ms-examples": { + "Limit maximum results": { + "$ref": "./examples/GetDeployedApplicationInfoList-1.json" + }, + "Page using continuation token": { + "$ref": "./examples/GetDeployedApplicationInfoList-2.json" + }, + "Include health state in the result": { + "$ref": "./examples/GetDeployedApplicationInfoList-3.json" + } + }, + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the list of deployed application information.", + "schema": { + "$ref": "#/definitions/PagedDeployedApplicationInfoList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/GetApplications/{applicationId}": { + "get": { + "operationId": "GetDeployedApplicationInfo", + "summary": "Gets the information about an application deployed on a Service Fabric node.", + "description": "This query returns system application information if the application ID provided is for system application. Results encompass deployed applications in active, activating, and downloading states. This query requires that the node name corresponds to a node on the cluster. The query fails if the provided node name does not point to any active Service Fabric nodes on the cluster.", + "tags": [ + "Application" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-1_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + }, + { + "$ref": "#/parameters/IncludeHealthStateOptionalQueryParam" + } + ], + "x-ms-examples": { + "Get a specific deployed application by application ID and include the health state in the result": { + "$ref": "./examples/GetDeployedApplicationInfoByName-1.json" + } + }, + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the information about the deployed application.", + "schema": { + "$ref": "#/definitions/DeployedApplicationInfo" + } + }, + "204": { + "description": "An empty response is returned if the specified application is not deployed on the node." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/GetApplications/{applicationId}/$/GetHealth": { + "get": { + "operationId": "GetDeployedApplicationHealth", + "summary": "Gets the information about health of an application deployed on a Service Fabric node.", + "description": "Gets the information about health of an application deployed on a Service Fabric node. Use EventsHealthStateFilter to optionally filter for the collection of HealthEvent objects reported on the deployed application based on health state. Use DeployedServicePackagesHealthStateFilter to optionally filter for DeployedServicePackageHealth children based on health state.", + "tags": [ + "Application" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/EventsHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/DeployedServicePackagesHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ExcludeHealthStatisticsOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the health information of the deployed application.", + "schema": { + "$ref": "#/definitions/DeployedApplicationHealth" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + }, + "post": { + "operationId": "GetDeployedApplicationHealthUsingPolicy", + "summary": "Gets the information about health of an application deployed on a Service Fabric node. using the specified policy.", + "description": "Gets the information about health of an application deployed on a Service Fabric node using the specified policy. Use EventsHealthStateFilter to optionally filter for the collection of HealthEvent objects reported on the deployed application based on health state. Use DeployedServicePackagesHealthStateFilter to optionally filter for DeployedServicePackageHealth children based on health state. Use ApplicationHealthPolicy to optionally override the health policies used to evaluate the health. This API only uses 'ConsiderWarningAsError' field of the ApplicationHealthPolicy. The rest of the fields are ignored while evaluating the health of the deployed application.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/EventsHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/DeployedServicePackagesHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ApplicationHealthPolicyOptionalBodyParam" + }, + { + "$ref": "#/parameters/ExcludeHealthStatisticsOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Application" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the health information of the deployed application.", + "schema": { + "$ref": "#/definitions/DeployedApplicationHealth" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/GetApplications/{applicationId}/$/ReportHealth": { + "post": { + "operationId": "ReportDeployedApplicationHealth", + "summary": "Sends a health report on the Service Fabric application deployed on a Service Fabric node.", + "description": "Reports health state of the application deployed on a Service Fabric node. The report must contain the information about the source of the health report and property on which it is reported.\nThe report is sent to a Service Fabric gateway Service, which forwards to the health store.\nThe report may be accepted by the gateway, but rejected by the health store after extra validation.\nFor example, the health store may reject the report because of an invalid parameter, like a stale sequence number.\nTo see whether the report was applied in the health store, get deployed application health and check that the report appears in the HealthEvents section.", + "tags": [ + "Application" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/HealthInformationRequiredBodyParam" + }, + { + "$ref": "#/parameters/ImmediateOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/ApplicationTypes/{applicationTypeName}/$/GetApplicationManifest": { + "get": { + "summary": "Gets the manifest describing an application type.", + "description": "The response contains the application manifest XML as a string.", + "operationId": "GetApplicationManifest", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationTypeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ApplicationTypeVersionRequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "ApplicationType" + ], + "responses": { + "200": { + "description": "Information about the node.", + "schema": { + "$ref": "#/definitions/ApplicationTypeManifest" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Applications/{applicationId}/$/GetServices": { + "get": { + "summary": "Gets the information about all services belonging to the application specified by the application ID.", + "description": "Returns the information about all services belonging to the application specified by the application ID.", + "operationId": "GetServiceInfoList", + "parameters": [ + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ServiceTypeNameOptionalQueryParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ContinuationTokenOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Service" + ], + "responses": { + "200": { + "description": "List of services in the cluster for the specified application.", + "schema": { + "$ref": "#/definitions/PagedServiceInfoList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Applications/{applicationId}/$/GetServices/{serviceId}": { + "get": { + "summary": "Gets the information about the specific service belonging to the Service Fabric application.", + "description": "Returns the information about the specified service belonging to the specified Service Fabric application.", + "operationId": "GetServiceInfo", + "parameters": [ + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ServiceIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Service" + ], + "responses": { + "200": { + "description": "Information about the specified service.", + "schema": { + "$ref": "#/definitions/ServiceInfo" + } + }, + "204": { + "description": "An empty response is returned if the specified service is not part of the specified application." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Services/{serviceId}/$/GetApplicationName": { + "get": { + "summary": "Gets the name of the Service Fabric application for a service.", + "description": "Gets the name of the application for the specified service. A 404 FABRIC_E_SERVICE_DOES_NOT_EXIST error is returned if a service with the provided service ID does not exist.", + "operationId": "GetApplicationNameInfo", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ServiceIdRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Service" + ], + "responses": { + "200": { + "description": "Information about the name of the application for the specified service.", + "schema": { + "$ref": "#/definitions/ApplicationNameInfo" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Applications/{applicationId}/$/GetServices/$/Create": { + "post": { + "operationId": "CreateService", + "summary": "Creates the specified Service Fabric service.", + "description": "This api allows creating a new Service Fabric stateless or stateful service under a specified Service Fabric application. The description for creating the service includes partitioning information and optional properties for placement and load balancing. Some of the properties can later be modified using `UpdateService` API.", + "x-ms-examples": { + "Basic stateless service": { + "$ref": "./examples/CreateService-1.json" + }, + "Basic stateful service": { + "$ref": "./examples/CreateService-2.json" + }, + "Stateless service with dns name and auto scaling": { + "$ref": "./examples/CreateService-3.json" + }, + "Stateful service with named partitions and auto scaling": { + "$ref": "./examples/CreateService-4.json" + } + }, + "tags": [ + "Service" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ServiceDescriptionRequiredBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "202": { + "description": "A successful operation will return 202 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Applications/{applicationId}/$/GetServices/$/CreateFromTemplate": { + "post": { + "summary": "Creates a Service Fabric service from the service template.", + "description": "Creates a Service Fabric service from the service template defined in the application manifest. A service template contains the properties that will be same for the service instance of the same type. The API allows overriding the properties that are usually different for different services of the same service type.", + "operationId": "CreateServiceFromTemplate", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/CreateServiceFromTemplateRequiredBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Service" + ], + "responses": { + "202": { + "description": "A successful operation will return 202 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Services/{serviceId}/$/Delete": { + "post": { + "summary": "Deletes an existing Service Fabric service.", + "description": "A service must be created before it can be deleted. By default, Service Fabric will try to close service replicas in a graceful manner and then delete the service. However, if the service is having issues closing the replica gracefully, the delete operation may take a long time or get stuck. Use the optional ForceRemove flag to skip the graceful close sequence and forcefully delete the service.", + "operationId": "DeleteService", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ServiceIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ForceRemoveOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Service" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Services/{serviceId}/$/Update": { + "post": { + "operationId": "UpdateService", + "summary": "Updates a Service Fabric service using the specified update description.", + "description": "This API allows updating properties of a running Service Fabric service. The set of properties that can be updated are a subset of the properties that were specified at the time of creating the service. The current set of properties can be obtained using `GetServiceDescription` API. Note that updating the properties of a running service is different than upgrading your application using `StartApplicationUpgrade` API. The upgrade is a long running background operation that involves moving the application from one version to another, one upgrade domain at a time, whereas update applies the new properties immediately to the service.", + "x-ms-examples": { + "Stateless service": { + "$ref": "./examples/UpdateService-1.json" + }, + "Stateful service": { + "$ref": "./examples/UpdateService-2.json" + } + }, + "tags": [ + "Service" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ServiceIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ServiceUpdateDescriptionRequiredBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 202 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Services/{serviceId}/$/GetDescription": { + "get": { + "summary": "Gets the description of an existing Service Fabric service.", + "description": "Gets the description of an existing Service Fabric service. A service must be created before its description can be obtained.", + "operationId": "GetServiceDescription", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ServiceIdRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Service" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code.", + "schema": { + "$ref": "#/definitions/ServiceDescription" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Services/{serviceId}/$/GetHealth": { + "get": { + "summary": "Gets the health of the specified Service Fabric service.", + "description": "Gets the health information of the specified service.\nUse EventsHealthStateFilter to filter the collection of health events reported on the service based on the health state.\nUse PartitionsHealthStateFilter to filter the collection of partitions returned.\nIf you specify a service that does not exist in the health store, this request returns an error.", + "operationId": "GetServiceHealth", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ServiceIdRequiredPathParam" + }, + { + "$ref": "#/parameters/EventsHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/PartitionsHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ExcludeHealthStatisticsOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Service" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the health information of the specified service.", + "schema": { + "$ref": "#/definitions/ServiceHealth" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + }, + "post": { + "summary": "Gets the health of the specified Service Fabric service, by using the specified health policy.", + "description": "Gets the health information of the specified service.\nIf the application health policy is specified, the health evaluation uses it to get the aggregated health state.\nIf the policy is not specified, the health evaluation uses the application health policy defined in the application manifest, or the default health policy, if no policy is defined in the manifest.\nUse EventsHealthStateFilter to filter the collection of health events reported on the service based on the health state.\nUse PartitionsHealthStateFilter to filter the collection of partitions returned.\nIf you specify a service that does not exist in the health store, this request returns an error.", + "operationId": "GetServiceHealthUsingPolicy", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ServiceIdRequiredPathParam" + }, + { + "$ref": "#/parameters/EventsHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/PartitionsHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ApplicationHealthPolicyOptionalBodyParam" + }, + { + "$ref": "#/parameters/ExcludeHealthStatisticsOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Service" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the health information of the specified service.", + "schema": { + "$ref": "#/definitions/ServiceHealth" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Services/{serviceId}/$/ReportHealth": { + "post": { + "operationId": "ReportServiceHealth", + "summary": "Sends a health report on the Service Fabric service.", + "description": "Reports health state of the specified Service Fabric service. The report must contain the information about the source of the health report and property on which it is reported.\nThe report is sent to a Service Fabric gateway Service, which forwards to the health store.\nThe report may be accepted by the gateway, but rejected by the health store after extra validation.\nFor example, the health store may reject the report because of an invalid parameter, like a stale sequence number.\nTo see whether the report was applied in the health store, run GetServiceHealth and check that the report appears in the HealthEvents section.", + "tags": [ + "Service" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ServiceIdRequiredPathParam" + }, + { + "$ref": "#/parameters/HealthInformationRequiredBodyParam" + }, + { + "$ref": "#/parameters/ImmediateOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Services/{serviceId}/$/ResolvePartition": { + "get": { + "operationId": "ResolveService", + "summary": "Resolve a Service Fabric partition.", + "description": "Resolve a Service Fabric service partition to get the endpoints of the service replicas.", + "tags": [ + "Service" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ServiceIdRequiredPathParam" + }, + { + "$ref": "#/parameters/PartitionKeyTypeOptionalQueryParam" + }, + { + "$ref": "#/parameters/PartitionKeyValueOptionalQueryParam" + }, + { + "$ref": "#/parameters/PreviousRspVersionOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code.", + "schema": { + "$ref": "#/definitions/ResolvedServicePartition" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Services/{serviceId}/$/GetUnplacedReplicaInformation": { + "get": { + "summary": "Gets the information about unplaced replica of the service.", + "description": "Returns the information about the unplaced replicas of the service.\nIf PartitionId is specified, then result will contain information only about unplaced replicas for that partition.\nIf PartitionId is not specified, then result will contain information about unplaced replicas for all partitions of that service.\nIf OnlyQueryPrimaries is set to true, then result will contain information only about primary replicas, and will ignore unplaced secondary replicas.", + "operationId": "GetUnplacedReplicaInformation", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ServiceIdRequiredPathParam" + }, + { + "$ref": "#/parameters/PartitionIdOptionalQueryParam" + }, + { + "$ref": "#/parameters/OnlyQueryPrimariesOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Service" + ], + "responses": { + "200": { + "description": "Information about the specified service.", + "schema": { + "$ref": "#/definitions/UnplacedReplicaInformation" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/GetLoadedPartitionInfoList": { + "get": { + "summary": "Gets ordered list of partitions.", + "description": "Retrieves partitions which are most/least loaded according to specified metric.", + "operationId": "GetLoadedPartitionInfoList", + "tags": [ + "Partition" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_8-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/MetricNameRequiredQueryParam" + }, + { + "$ref": "#/parameters/ServiceNameOptionalQueryParam" + }, + { + "$ref": "#/parameters/OrderingOptionalQueryParam" + }, + { + "$ref": "#/parameters/MaxResultsOptionalQueryParam" + }, + { + "$ref": "#/parameters/ContinuationTokenOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested cluster load information.", + "schema": { + "$ref": "#/definitions/LoadedPartitionInformationResultList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Services/{serviceId}/$/GetPartitions": { + "get": { + "summary": "Gets the list of partitions of a Service Fabric service.", + "description": "The response includes the partition ID, partitioning scheme information, keys supported by the partition, status, health, and other details about the partition.", + "operationId": "GetPartitionInfoList", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ServiceIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ContinuationTokenOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Partition" + ], + "responses": { + "200": { + "description": "List of partitions of a Service Fabric service.", + "schema": { + "$ref": "#/definitions/PagedServicePartitionInfoList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Partitions/{partitionId}": { + "get": { + "summary": "Gets the information about a Service Fabric partition.", + "description": "Gets the information about the specified partition. The response includes the partition ID, partitioning scheme information, keys supported by the partition, status, health, and other details about the partition.", + "operationId": "GetPartitionInfo", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Partition" + ], + "responses": { + "200": { + "description": "Information about the specified partition.", + "schema": { + "$ref": "#/definitions/ServicePartitionInfo" + } + }, + "204": { + "description": "An empty response is returned if the specified partitionId is not found in the cluster." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Partitions/{partitionId}/$/GetServiceName": { + "get": { + "summary": "Gets the name of the Service Fabric service for a partition.", + "description": "Gets name of the service for the specified partition. A 404 error is returned if the partition ID does not exist in the cluster.", + "operationId": "GetServiceNameInfo", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Partition" + ], + "responses": { + "200": { + "description": "Information about the name of the service for the specified partition.", + "schema": { + "$ref": "#/definitions/ServiceNameInfo" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Partitions/{partitionId}/$/GetHealth": { + "get": { + "summary": "Gets the health of the specified Service Fabric partition.", + "description": "Use EventsHealthStateFilter to filter the collection of health events reported on the service based on the health state.\nUse ReplicasHealthStateFilter to filter the collection of ReplicaHealthState objects on the partition.\nIf you specify a partition that does not exist in the health store, this request returns an error.", + "operationId": "GetPartitionHealth", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/EventsHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ReplicasHealthStateFilerOptionalQueryParam" + }, + { + "$ref": "#/parameters/ExcludeHealthStatisticsOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Partition" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the health information about the specified partition.", + "schema": { + "$ref": "#/definitions/PartitionHealth" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + }, + "post": { + "summary": "Gets the health of the specified Service Fabric partition, by using the specified health policy.", + "description": "Gets the health information of the specified partition.\nIf the application health policy is specified, the health evaluation uses it to get the aggregated health state.\nIf the policy is not specified, the health evaluation uses the application health policy defined in the application manifest, or the default health policy, if no policy is defined in the manifest.\nUse EventsHealthStateFilter to filter the collection of health events reported on the partition based on the health state.\nUse ReplicasHealthStateFilter to filter the collection of ReplicaHealthState objects on the partition. Use ApplicationHealthPolicy in the POST body to override the health policies used to evaluate the health.\nIf you specify a partition that does not exist in the health store, this request returns an error.", + "operationId": "GetPartitionHealthUsingPolicy", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/EventsHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ReplicasHealthStateFilerOptionalQueryParam" + }, + { + "$ref": "#/parameters/ApplicationHealthPolicyOptionalBodyParam" + }, + { + "$ref": "#/parameters/ExcludeHealthStatisticsOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Partition" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the health information about the specified partition.", + "schema": { + "$ref": "#/definitions/PartitionHealth" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Partitions/{partitionId}/$/ReportHealth": { + "post": { + "operationId": "ReportPartitionHealth", + "summary": "Sends a health report on the Service Fabric partition.", + "description": "Reports health state of the specified Service Fabric partition. The report must contain the information about the source of the health report and property on which it is reported.\nThe report is sent to a Service Fabric gateway Partition, which forwards to the health store.\nThe report may be accepted by the gateway, but rejected by the health store after extra validation.\nFor example, the health store may reject the report because of an invalid parameter, like a stale sequence number.\nTo see whether the report was applied in the health store, run GetPartitionHealth and check that the report appears in the HealthEvents section.", + "tags": [ + "Partition" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/HealthInformationRequiredBodyParam" + }, + { + "$ref": "#/parameters/ImmediateOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Partitions/{partitionId}/$/GetLoadInformation": { + "get": { + "summary": "Gets the load information of the specified Service Fabric partition.", + "description": "Returns information about the load of a specified partition.\nThe response includes a list of load reports for a Service Fabric partition.\nEach report includes the load metric name, value, and last reported time in UTC.", + "operationId": "GetPartitionLoadInformation", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Partition" + ], + "responses": { + "200": { + "description": "Information about the specified partition's last reported load metrics.", + "schema": { + "$ref": "#/definitions/PartitionLoadInformation" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Partitions/{partitionId}/$/ResetLoad": { + "post": { + "operationId": "ResetPartitionLoad", + "summary": "Resets the current load of a Service Fabric partition.", + "description": "Resets the current load of a Service Fabric partition to the default load for the service.", + "tags": [ + "Partition" + ], + "parameters": [ + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation request will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Partitions/{partitionId}/$/Recover": { + "post": { + "operationId": "RecoverPartition", + "summary": "Indicates to the Service Fabric cluster that it should attempt to recover a specific partition that is currently stuck in quorum loss.", + "description": "This operation should only be performed if it is known that the replicas that are down cannot be recovered. Incorrect use of this API can cause potential data loss.", + "tags": [ + "Partition" + ], + "parameters": [ + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation request will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Services/$/{serviceId}/$/GetPartitions/$/Recover": { + "post": { + "operationId": "RecoverServicePartitions", + "summary": "Indicates to the Service Fabric cluster that it should attempt to recover the specified service that is currently stuck in quorum loss.", + "description": "Indicates to the Service Fabric cluster that it should attempt to recover the specified service that is currently stuck in quorum loss. This operation should only be performed if it is known that the replicas that are down cannot be recovered. Incorrect use of this API can cause potential data loss.", + "tags": [ + "Partition" + ], + "parameters": [ + { + "$ref": "#/parameters/ServiceIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation request will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/RecoverSystemPartitions": { + "post": { + "operationId": "RecoverSystemPartitions", + "summary": "Indicates to the Service Fabric cluster that it should attempt to recover the system services that are currently stuck in quorum loss.", + "description": "Indicates to the Service Fabric cluster that it should attempt to recover the system services that are currently stuck in quorum loss. This operation should only be performed if it is known that the replicas that are down cannot be recovered. Incorrect use of this API can cause potential data loss.", + "tags": [ + "Partition" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation request will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/RecoverAllPartitions": { + "post": { + "operationId": "RecoverAllPartitions", + "summary": "Indicates to the Service Fabric cluster that it should attempt to recover any services (including system services) which are currently stuck in quorum loss.", + "description": "This operation should only be performed if it is known that the replicas that are down cannot be recovered. Incorrect use of this API can cause potential data loss.", + "tags": [ + "Partition" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation request will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Partitions/{partitionId}/$/MovePrimaryReplica": { + "post": { + "operationId": "MovePrimaryReplica", + "summary": "Moves the primary replica of a partition of a stateful service.", + "description": "This command moves the primary replica of a partition of a stateful service, respecting all constraints.\nIf NodeName parameter is specified, primary will be moved to the specified node (if constraints allow it).\nIf NodeName parameter is not specified, primary replica will be moved to a random node in the cluster.\nIf IgnoreConstraints parameter is specified and set to true, then primary will be moved regardless of the constraints.", + "tags": [ + "Partition" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-5_RequiredQueryParam" + }, + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/NodeNameOptionalParam" + }, + { + "$ref": "#/parameters/IgnoreConstraintsOptionalParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation request will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Partitions/{partitionId}/$/MoveSecondaryReplica": { + "post": { + "operationId": "MoveSecondaryReplica", + "summary": "Moves the secondary replica of a partition of a stateful service.", + "description": "This command moves the secondary replica of a partition of a stateful service, respecting all constraints.\nCurrentNodeName parameter must be specified to identify the replica that is moved.\nSource node name must be specified, but new node name can be omitted, and in that case replica is moved to a random node.\nIf IgnoreConstraints parameter is specified and set to true, then secondary will be moved regardless of the constraints.", + "tags": [ + "Partition" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-5_RequiredQueryParam" + }, + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/CurrentNodeNameRequiredParam" + }, + { + "$ref": "#/parameters/NewNodeNameOptionalParam" + }, + { + "$ref": "#/parameters/IgnoreConstraintsOptionalParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation request will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/UpdatePartitionLoad": { + "post": { + "operationId": "UpdatePartitionLoad", + "summary": "Update the loads of provided partitions for specific metrics.", + "description": "Updates the load value and predicted load value for all the partitions provided for specified metrics.", + "tags": [ + "Partition" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_7-2_RequiredQueryParam" + }, + { + "$ref": "#/parameters/PartitionMetricLoadDescriptionListRequiredParam" + }, + { + "$ref": "#/parameters/ContinuationTokenOptionalQueryParam" + }, + { + "$ref": "#/parameters/MaxResultsOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "List UpdatePartitionLoadResults.", + "schema": { + "$ref": "#/definitions/PagedUpdatePartitionLoadResultList" + } + }, + "default": { + "description": "The error code response per specified partition.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Services/{serviceId}/$/GetPartitions/{partitionId}/$/MoveInstance": { + "post": { + "operationId": "MoveInstance", + "summary": "Moves the instance of a partition of a stateless service.", + "description": "This command moves the instance of a partition of a stateless service, respecting all constraints.\nPartition id and service name must be specified to be able to move the instance.\nCurrentNodeName when specified identifies the instance that is moved. If not specified, random instance will be moved \nNew node name can be omitted, and in that case instance is moved to a random node.\nIf IgnoreConstraints parameter is specified and set to true, then instance will be moved regardless of the constraints.", + "tags": [ + "Partition" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_8-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ServiceIdRequiredPathParam" + }, + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/CurrentNodeNameOptionalParam" + }, + { + "$ref": "#/parameters/NewNodeNameOptionalParam" + }, + { + "$ref": "#/parameters/IgnoreConstraintsOptionalParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation request will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/CreateRepairTask": { + "post": { + "operationId": "CreateRepairTask", + "summary": "Creates a new repair task.", + "description": "For clusters that have the Repair Manager Service configured,\nthis API provides a way to create repair tasks that run automatically or manually.\nFor repair tasks that run automatically, an appropriate repair executor\nmust be running for each repair action to run automatically.\nThese are currently only available in specially-configured Azure Cloud Services.\n\nTo create a manual repair task, provide the set of impacted node names and the\nexpected impact. When the state of the created repair task changes to approved,\nyou can safely perform repair actions on those nodes.\n\nThis API supports the Service Fabric platform; it is not meant to be used directly from your code.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/RepairTaskRequiredBodyParam" + } + ], + "tags": [ + "RepairManagement" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code.\nThe response body provides information about the created repair task.", + "schema": { + "$ref": "#/definitions/RepairTaskUpdateInfo" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/CancelRepairTask": { + "post": { + "operationId": "CancelRepairTask", + "summary": "Requests the cancellation of the given repair task.", + "description": "This API supports the Service Fabric platform; it is not meant to be used directly from your code.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/RepairTaskCancelDescriptionRequiredBodyParam" + } + ], + "tags": [ + "RepairManagement" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code.\nThe response body provides information about the updated repair task.\nSuccess indicates that the cancellation request was recorded, but does not guarantee that the repair task will be cancelled.\nClients may use the State property of the repair task to determine the current state of the repair task.", + "schema": { + "$ref": "#/definitions/RepairTaskUpdateInfo" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/DeleteRepairTask": { + "post": { + "operationId": "DeleteRepairTask", + "summary": "Deletes a completed repair task.", + "description": "This API supports the Service Fabric platform; it is not meant to be used directly from your code.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/RepairTaskDeleteDescriptionRequiredBodyParam" + } + ], + "tags": [ + "RepairManagement" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/GetRepairTaskList": { + "get": { + "operationId": "GetRepairTaskList", + "summary": "Gets a list of repair tasks matching the given filters.", + "description": "This API supports the Service Fabric platform; it is not meant to be used directly from your code.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/RepairTaskIdFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/RepairTaskStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/RepairTaskExecutorFilterOptionalQueryParam" + } + ], + "tags": [ + "RepairManagement" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code.\nThe response body provides a list of repair tasks matching all of the given filters.", + "schema": { + "$ref": "#/definitions/RepairTaskList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/ForceApproveRepairTask": { + "post": { + "operationId": "ForceApproveRepairTask", + "summary": "Forces the approval of the given repair task.", + "description": "This API supports the Service Fabric platform; it is not meant to be used directly from your code.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/RepairTaskApproveDescriptionRequiredBodyParam" + } + ], + "tags": [ + "RepairManagement" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code.\nThe response body provides information about the updated repair task.", + "schema": { + "$ref": "#/definitions/RepairTaskUpdateInfo" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/UpdateRepairTaskHealthPolicy": { + "post": { + "operationId": "UpdateRepairTaskHealthPolicy", + "summary": "Updates the health policy of the given repair task.", + "description": "This API supports the Service Fabric platform; it is not meant to be used directly from your code.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/RepairTaskUpdateHealthPolicyDescriptionRequiredBodyParam" + } + ], + "tags": [ + "RepairManagement" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code.\nThe response body provides information about the updated repair task.", + "schema": { + "$ref": "#/definitions/RepairTaskUpdateInfo" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/UpdateRepairExecutionState": { + "post": { + "operationId": "UpdateRepairExecutionState", + "summary": "Updates the execution state of a repair task.", + "description": "This API supports the Service Fabric platform; it is not meant to be used directly from your code.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/RepairTaskRequiredBodyParam" + } + ], + "tags": [ + "RepairManagement" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code.\nThe response body provides information about the updated repair task.", + "schema": { + "$ref": "#/definitions/RepairTaskUpdateInfo" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Partitions/{partitionId}/$/GetReplicas": { + "get": { + "summary": "Gets the information about replicas of a Service Fabric service partition.", + "description": "The GetReplicas endpoint returns information about the replicas of the specified partition. The response includes the ID, role, status, health, node name, uptime, and other details about the replica.", + "operationId": "GetReplicaInfoList", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ContinuationTokenOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Replica" + ], + "responses": { + "200": { + "description": "Information about the replicas of the specified partition.", + "schema": { + "$ref": "#/definitions/PagedReplicaInfoList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Partitions/{partitionId}/$/GetReplicas/{replicaId}": { + "get": { + "summary": "Gets the information about a replica of a Service Fabric partition.", + "description": "The response includes the ID, role, status, health, node name, uptime, and other details about the replica.", + "operationId": "GetReplicaInfo", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ReplicaIdRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Replica" + ], + "responses": { + "200": { + "description": "Information about the specified replicas of the specified partition of a Service Fabric service.", + "schema": { + "$ref": "#/definitions/ReplicaInfo" + } + }, + "204": { + "description": "An empty response is returned if the specified replicaId is not a replica of the specified partition." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Partitions/{partitionId}/$/GetReplicas/{replicaId}/$/GetHealth": { + "get": { + "operationId": "GetReplicaHealth", + "summary": "Gets the health of a Service Fabric stateful service replica or stateless service instance.", + "description": "Gets the health of a Service Fabric replica.\nUse EventsHealthStateFilter to filter the collection of health events reported on the replica based on the health state.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ReplicaIdRequiredPathParam" + }, + { + "$ref": "#/parameters/EventsHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Replica" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested replica health.", + "schema": { + "$ref": "#/definitions/ReplicaHealth" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + }, + "post": { + "operationId": "GetReplicaHealthUsingPolicy", + "summary": "Gets the health of a Service Fabric stateful service replica or stateless service instance using the specified policy.", + "description": "Gets the health of a Service Fabric stateful service replica or stateless service instance.\nUse EventsHealthStateFilter to filter the collection of health events reported on the cluster based on the health state.\nUse ApplicationHealthPolicy to optionally override the health policies used to evaluate the health. This API only uses 'ConsiderWarningAsError' field of the ApplicationHealthPolicy. The rest of the fields are ignored while evaluating the health of the replica.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ReplicaIdRequiredPathParam" + }, + { + "$ref": "#/parameters/EventsHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ApplicationHealthPolicyOptionalBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Replica" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested replica health information.", + "schema": { + "$ref": "#/definitions/ReplicaHealth" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Partitions/{partitionId}/$/GetReplicas/{replicaId}/$/ReportHealth": { + "post": { + "operationId": "ReportReplicaHealth", + "summary": "Sends a health report on the Service Fabric replica.", + "description": "Reports health state of the specified Service Fabric replica. The report must contain the information about the source of the health report and property on which it is reported.\nThe report is sent to a Service Fabric gateway Replica, which forwards to the health store.\nThe report may be accepted by the gateway, but rejected by the health store after extra validation.\nFor example, the health store may reject the report because of an invalid parameter, like a stale sequence number.\nTo see whether the report was applied in the health store, run GetReplicaHealth and check that the report appears in the HealthEvents section.", + "tags": [ + "Replica" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ReplicaIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ReplicaHealthReportServiceKindRequiredQueryParam" + }, + { + "$ref": "#/parameters/HealthInformationRequiredBodyParam" + }, + { + "$ref": "#/parameters/ImmediateOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/GetApplications/{applicationId}/$/GetReplicas": { + "get": { + "operationId": "GetDeployedServiceReplicaInfoList", + "summary": "Gets the list of replicas deployed on a Service Fabric node.", + "description": "Gets the list containing the information about replicas deployed on a Service Fabric node. The information include partition ID, replica ID, status of the replica, name of the service, name of the service type, and other information. Use PartitionId or ServiceManifestName query parameters to return information about the deployed replicas matching the specified values for those parameters.", + "tags": [ + "Replica" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/PartitionIdOptionalQueryParam" + }, + { + "$ref": "#/parameters/ServiceManifestNameOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the list of deployed service replica information.", + "schema": { + "$ref": "#/definitions/DeployedServiceReplicaInfoList" + } + }, + "204": { + "description": "An empty response is returned if the specified applicationId is not found on the specified node. An empty response is also returned if there are no replicas matching the specified filter values for PartitionId or ServiceManifestName query parameters." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/GetPartitions/{partitionId}/$/GetReplicas/{replicaId}/$/GetDetail": { + "get": { + "operationId": "GetDeployedServiceReplicaDetailInfo", + "summary": "Gets the details of replica deployed on a Service Fabric node.", + "description": "Gets the details of the replica deployed on a Service Fabric node. The information includes service kind, service name, current service operation, current service operation start date time, partition ID, replica/instance ID, reported load, and other information.", + "tags": [ + "Replica" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ReplicaIdRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the list of deployed service replica information.", + "schema": { + "$ref": "#/definitions/DeployedServiceReplicaDetailInfo" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/GetPartitions/{partitionId}/$/GetReplicas": { + "get": { + "operationId": "GetDeployedServiceReplicaDetailInfoByPartitionId", + "summary": "Gets the details of replica deployed on a Service Fabric node.", + "description": "Gets the details of the replica deployed on a Service Fabric node. The information includes service kind, service name, current service operation, current service operation start date time, partition ID, replica/instance ID, reported load, and other information.", + "tags": [ + "Replica" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the list of deployed service replica information.", + "schema": { + "$ref": "#/definitions/DeployedServiceReplicaDetailInfo" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/GetPartitions/{partitionId}/$/GetReplicas/{replicaId}/$/Restart": { + "post": { + "operationId": "RestartReplica", + "summary": "Restarts a service replica of a persisted service running on a node.", + "description": "Restarts a service replica of a persisted service running on a node. Warning - There are no safety checks performed when this API is used. Incorrect use of this API can lead to availability loss for stateful services.", + "tags": [ + "Replica" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ReplicaIdRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code. A successful operation means that the restart command was received by the replica on the node and it is in the process of restarting." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/GetPartitions/{partitionId}/$/GetReplicas/{replicaId}/$/Delete": { + "post": { + "operationId": "RemoveReplica", + "summary": "Removes a service replica running on a node.", + "description": "This API simulates a Service Fabric replica failure by removing a replica from a Service Fabric cluster. The removal closes the replica, transitions the replica to the role None, and then removes all of the state information of the replica from the cluster. This API tests the replica state removal path, and simulates the report fault permanent path through client APIs. Warning - There are no safety checks performed when this API is used. Incorrect use of this API can lead to data loss for stateful services. In addition, the forceRemove flag impacts all other replicas hosted in the same process.", + "tags": [ + "Replica" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ReplicaIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ForceRemoveReplicaOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code. A successful operation means that the restart command was received by the replica on the node and it is in the process of restarting." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/GetApplications/{applicationId}/$/GetServicePackages": { + "get": { + "operationId": "GetDeployedServicePackageInfoList", + "summary": "Gets the list of service packages deployed on a Service Fabric node.", + "description": "Returns the information about the service packages deployed on a Service Fabric node for the given application.", + "tags": [ + "Service Package" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the list of deployed service packages information.", + "schema": { + "$ref": "#/definitions/DeployedServicePackageInfoList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/GetApplications/{applicationId}/$/GetServicePackages/{servicePackageName}": { + "get": { + "operationId": "GetDeployedServicePackageInfoListByName", + "summary": "Gets the list of service packages deployed on a Service Fabric node matching exactly the specified name.", + "description": "Returns the information about the service packages deployed on a Service Fabric node for the given application. These results are of service packages whose name match exactly the service package name specified as the parameter.", + "tags": [ + "Service Package" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ServicePackageNameRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the list of deployed service packages information.", + "schema": { + "$ref": "#/definitions/DeployedServicePackageInfoList" + } + }, + "204": { + "description": "An empty response is returned if the specified service package from the application is not deployed on the node." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/GetApplications/{applicationId}/$/GetServicePackages/{servicePackageName}/$/GetHealth": { + "get": { + "operationId": "GetDeployedServicePackageHealth", + "summary": "Gets the information about health of a service package for a specific application deployed for a Service Fabric node and application.", + "description": "Gets the information about health of a service package for a specific application deployed on a Service Fabric node. Use EventsHealthStateFilter to optionally filter for the collection of HealthEvent objects reported on the deployed service package based on health state.", + "tags": [ + "Service Package" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ServicePackageNameRequiredPathParam" + }, + { + "$ref": "#/parameters/EventsHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the health information of the deployed service package for a specific node and application.", + "schema": { + "$ref": "#/definitions/DeployedServicePackageHealth" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + }, + "post": { + "operationId": "GetDeployedServicePackageHealthUsingPolicy", + "summary": "Gets the information about health of service package for a specific application deployed on a Service Fabric node using the specified policy.", + "description": "Gets the information about health of a service package for a specific application deployed on a Service Fabric node. using the specified policy. Use EventsHealthStateFilter to optionally filter for the collection of HealthEvent objects reported on the deployed service package based on health state. Use ApplicationHealthPolicy to optionally override the health policies used to evaluate the health. This API only uses 'ConsiderWarningAsError' field of the ApplicationHealthPolicy. The rest of the fields are ignored while evaluating the health of the deployed service package.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ServicePackageNameRequiredPathParam" + }, + { + "$ref": "#/parameters/EventsHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ApplicationHealthPolicyOptionalBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Service Package" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the health information of the deployed service package for a specific node and application.", + "schema": { + "$ref": "#/definitions/DeployedServicePackageHealth" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/GetApplications/{applicationId}/$/GetServicePackages/{servicePackageName}/$/ReportHealth": { + "post": { + "operationId": "ReportDeployedServicePackageHealth", + "summary": "Sends a health report on the Service Fabric deployed service package.", + "description": "Reports health state of the service package of the application deployed on a Service Fabric node. The report must contain the information about the source of the health report and property on which it is reported.\nThe report is sent to a Service Fabric gateway Service, which forwards to the health store.\nThe report may be accepted by the gateway, but rejected by the health store after extra validation.\nFor example, the health store may reject the report because of an invalid parameter, like a stale sequence number.\nTo see whether the report was applied in the health store, get deployed service package health and check that the report appears in the HealthEvents section.", + "tags": [ + "Service Package" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ServicePackageNameRequiredPathParam" + }, + { + "$ref": "#/parameters/HealthInformationRequiredBodyParam" + }, + { + "$ref": "#/parameters/ImmediateOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/DeployServicePackage": { + "post": { + "operationId": "DeployServicePackageToNode", + "summary": "Downloads all of the code packages associated with specified service manifest on the specified node.", + "description": "This API provides a way to download code packages including the container images on a specific node outside of the normal application deployment and upgrade path. This is useful for the large code packages and container images to be present on the node before the actual application deployment and upgrade, thus significantly reducing the total time required for the deployment or upgrade.", + "tags": [ + "Service Package" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/DeployServicePackageToNodeRequiredBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/GetApplications/{applicationId}/$/GetCodePackages": { + "get": { + "operationId": "GetDeployedCodePackageInfoList", + "summary": "Gets the list of code packages deployed on a Service Fabric node.", + "description": "Gets the list of code packages deployed on a Service Fabric node for the given application.", + "tags": [ + "Code Package" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ServiceManifestNameOptionalQueryParam" + }, + { + "$ref": "#/parameters/CodePackageNameOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the list of deployed code packages information.", + "schema": { + "$ref": "#/definitions/DeployedCodePackageInfoList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/GetApplications/{applicationId}/$/GetCodePackages/$/Restart": { + "post": { + "operationId": "RestartDeployedCodePackage", + "summary": "Restarts a code package deployed on a Service Fabric node in a cluster.", + "description": "Restarts a code package deployed on a Service Fabric node in a cluster. This aborts the code package process, which will restart all the user service replicas hosted in that process.", + "tags": [ + "Code Package" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/RestartDeployedCodePackageRequiredBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/GetApplications/{applicationId}/$/GetCodePackages/$/ContainerLogs": { + "get": { + "operationId": "GetContainerLogsDeployedOnNode", + "summary": "Gets the container logs for container deployed on a Service Fabric node.", + "description": "Gets the container logs for container deployed on a Service Fabric node for the given code package.", + "tags": [ + "Code Package" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-2_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ServiceManifestNameRequiredQueryParam" + }, + { + "$ref": "#/parameters/CodePackageNameRequiredQueryParam" + }, + { + "$ref": "#/parameters/TailOptionalQueryParam" + }, + { + "$ref": "#/parameters/PreviousOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "x-ms-examples": { + "Get container logs for given code package": { + "$ref": "./examples/GetContainerLogsDeployedOnNode-1.json" + }, + "Get last 10 lines of container logs": { + "$ref": "./examples/GetContainerLogsDeployedOnNode-2.json" + }, + "Get container logs of previous dead container for given code package": { + "$ref": "./examples/GetContainerLogsDeployedOnNode-3.json" + } + }, + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the container logs for container deployed on a Service Fabric node for the given code package.", + "schema": { + "$ref": "#/definitions/ContainerLogs" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/GetApplications/{applicationId}/$/GetCodePackages/$/ContainerApi": { + "post": { + "operationId": "InvokeContainerApi", + "summary": "Invoke container API on a container deployed on a Service Fabric node.", + "description": "Invoke container API on a container deployed on a Service Fabric node for the given code package.", + "x-ms-examples": { + "Get container logs": { + "$ref": "./examples/InvokeContainerApi.json" + }, + "Update container": { + "$ref": "./examples/InvokeContainerApi_Post.json" + } + }, + "tags": [ + "Code Package" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-2_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ServiceManifestNameRequiredQueryParam" + }, + { + "$ref": "#/parameters/CodePackageNameRequiredQueryParam" + }, + { + "$ref": "#/parameters/CodePackageInstanceIdRequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + }, + { + "$ref": "#/parameters/ContainerApiRequiredBodyParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and container API response for a container deployed on a Service Fabric node for the given code package.", + "schema": { + "$ref": "#/definitions/ContainerApiResponse" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/ComposeDeployments/$/Create": { + "put": { + "summary": "Creates a Service Fabric compose deployment.", + "description": "Compose is a file format that describes multi-container applications. This API allows deploying container based applications defined in compose format in a Service Fabric cluster. Once the deployment is created, its status can be tracked via the `GetComposeDeploymentStatus` API.", + "operationId": "CreateComposeDeployment", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/CreateComposeDeploymentRequiredBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Compose Deployment" + ], + "responses": { + "202": { + "description": "A successful operation will return 202 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/ComposeDeployments/{deploymentName}": { + "get": { + "summary": "Gets information about a Service Fabric compose deployment.", + "description": "Returns the status of the compose deployment that was created or in the process of being created in the Service Fabric cluster and whose name matches the one specified as the parameter. The response includes the name, status, and other details about the deployment.", + "operationId": "GetComposeDeploymentStatus", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/DeploymentNameRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Compose Deployment" + ], + "responses": { + "200": { + "description": "Information about the compose deployment.", + "schema": { + "$ref": "#/definitions/ComposeDeploymentStatusInfo" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/ComposeDeployments": { + "get": { + "summary": "Gets the list of compose deployments created in the Service Fabric cluster.", + "description": "Gets the status about the compose deployments that were created or in the process of being created in the Service Fabric cluster. The response includes the name, status, and other details about the compose deployments. If the list of deployments do not fit in a page, one page of results is returned as well as a continuation token, which can be used to get the next page.", + "operationId": "GetComposeDeploymentStatusList", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ContinuationTokenOptionalQueryParam" + }, + { + "$ref": "#/parameters/MaxResultsOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Compose Deployment" + ], + "responses": { + "200": { + "description": "List of status of compose deployments in the cluster.", + "schema": { + "$ref": "#/definitions/PagedComposeDeploymentStatusInfoList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/ComposeDeployments/{deploymentName}/$/GetUpgradeProgress": { + "get": { + "summary": "Gets details for the latest upgrade performed on this Service Fabric compose deployment.", + "description": "Returns the information about the state of the compose deployment upgrade along with details to aid debugging application health issues.", + "operationId": "GetComposeDeploymentUpgradeProgress", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/DeploymentNameRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Compose Deployment" + ], + "responses": { + "200": { + "description": "Details about the compose deployment upgrade.", + "schema": { + "$ref": "#/definitions/ComposeDeploymentUpgradeProgressInfo" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/ComposeDeployments/{deploymentName}/$/Delete": { + "post": { + "summary": "Deletes an existing Service Fabric compose deployment from cluster.", + "description": "Deletes an existing Service Fabric compose deployment.", + "operationId": "RemoveComposeDeployment", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/DeploymentNameRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Compose Deployment" + ], + "responses": { + "202": { + "description": "A successful operation will return 202 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/ComposeDeployments/{deploymentName}/$/Upgrade": { + "post": { + "summary": "Starts upgrading a compose deployment in the Service Fabric cluster.", + "description": "Validates the supplied upgrade parameters and starts upgrading the deployment if the parameters are valid.", + "operationId": "StartComposeDeploymentUpgrade", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/DeploymentNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ComposeDeploymentUpgradeDescriptionRequiredBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Compose Deployment" + ], + "responses": { + "202": { + "description": "A successful response means that the upgrade has started. Use GetComposeDeploymentUpgrade operation to get the status of the upgrade." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/ComposeDeployments/{deploymentName}/$/RollbackUpgrade": { + "post": { + "summary": "Starts rolling back a compose deployment upgrade in the Service Fabric cluster.", + "description": "Rollback a service fabric compose deployment upgrade.", + "operationId": "StartRollbackComposeDeploymentUpgrade", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/DeploymentNameRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Compose Deployment" + ], + "responses": { + "200": { + "description": "A successful response means that the rollback has started. Use GetComposeDeploymentUpgrade operation to get the status of the rollback." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Tools/Chaos": { + "get": { + "operationId": "GetChaos", + "summary": "Get the status of Chaos.", + "description": "Get the status of Chaos indicating whether or not Chaos is running, the Chaos parameters used for running Chaos and the status of the Chaos Schedule.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-2_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Chaos" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the status of Chaos.", + "schema": { + "$ref": "#/definitions/Chaos" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Tools/Chaos/$/Start": { + "post": { + "operationId": "StartChaos", + "summary": "Starts Chaos in the cluster.", + "description": "If Chaos is not already running in the cluster, it starts Chaos with the passed in Chaos parameters.\nIf Chaos is already running when this call is made, the call fails with the error code FABRIC_E_CHAOS_ALREADY_RUNNING.\nRefer to the article [Induce controlled Chaos in Service Fabric clusters](https://docs.microsoft.com/azure/service-fabric/service-fabric-controlled-chaos) for more details.", + "tags": [ + "Chaos" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ChaosParametersRequiredBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Tools/Chaos/$/Stop": { + "post": { + "operationId": "StopChaos", + "summary": "Stops Chaos if it is running in the cluster and put the Chaos Schedule in a stopped state.", + "description": "Stops Chaos from executing new faults. In-flight faults will continue to execute until they are complete. The current Chaos Schedule is put into a stopped state.\nOnce a schedule is stopped, it will stay in the stopped state and not be used to Chaos Schedule new runs of Chaos. A new Chaos Schedule must be set in order to resume scheduling.", + "tags": [ + "Chaos" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Tools/Chaos/Events": { + "get": { + "operationId": "GetChaosEvents", + "summary": "Gets the next segment of the Chaos events based on the continuation token or the time range.", + "description": "To get the next segment of the Chaos events, you can specify the ContinuationToken. To get the start of a new segment of Chaos events, you can specify the time range\nthrough StartTimeUtc and EndTimeUtc. You cannot specify both the ContinuationToken and the time range in the same call.\nWhen there are more than 100 Chaos events, the Chaos events are returned in multiple segments where a segment contains no more than 100 Chaos events and to get the next segment you make a call to this API with the continuation token.", + "x-ms-examples": { + "Get Chaos events given a time range": { + "$ref": "./examples/GetChaosEvents.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-2_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ContinuationTokenOptionalQueryParam" + }, + { + "$ref": "#/parameters/StartTimeUtcOptionalQueryParam" + }, + { + "$ref": "#/parameters/EndTimeUtcOptionalQueryParam" + }, + { + "$ref": "#/parameters/MaxResultsOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Chaos" + ], + "responses": { + "200": { + "description": "Next segment of Chaos events.", + "schema": { + "$ref": "#/definitions/ChaosEventsSegment" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Tools/Chaos/Schedule": { + "get": { + "operationId": "GetChaosSchedule", + "summary": "Get the Chaos Schedule defining when and how to run Chaos.", + "description": "Gets the version of the Chaos Schedule in use and the Chaos Schedule that defines when and how to run Chaos.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-2_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Chaos" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the schedule description including a Chaos Schedule used by Chaos and the version the Chaos Schedule is on.", + "schema": { + "$ref": "#/definitions/ChaosScheduleDescription" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + }, + "post": { + "operationId": "PostChaosSchedule", + "summary": "Set the schedule used by Chaos.", + "description": "Chaos will automatically schedule runs based on the Chaos Schedule.\nThe Chaos Schedule will be updated if the provided version matches the version on the server.\nWhen updating the Chaos Schedule, the version on the server is incremented by 1.\nThe version on the server will wrap back to 0 after reaching a large number.\nIf Chaos is running when this call is made, the call will fail.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-2_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + }, + { + "$ref": "#/parameters/ChaosScheduleRequiredBodyParam" + } + ], + "tags": [ + "Chaos" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/ImageStore/{contentPath}": { + "put": { + "summary": "Uploads contents of the file to the image store.", + "description": "Uploads contents of the file to the image store. Use this API if the file is small enough to upload again if the connection fails. The file's data needs to be added to the request body. The contents will be uploaded to the specified path. Image store service uses a mark file to indicate the availability of the folder. The mark file is an empty file named \"_.dir\". The mark file is generated by the image store service when all files in a folder are uploaded. When using File-by-File approach to upload application package in REST, the image store service isn't aware of the file hierarchy of the application package; you need to create a mark file per folder and upload it last, to let the image store service know that the folder is complete.", + "operationId": "UploadFile", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ImageStoreContentPathRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "ImageStore" + ], + "responses": { + "200": { + "description": "If the upload request succeeds, the server returns the HTTP 200 OK status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + }, + "get": { + "summary": "Gets the image store content information.", + "description": "Returns the information about the image store content at the specified contentPath. The contentPath is relative to the root of the image store.", + "operationId": "GetImageStoreContent", + "x-ms-examples": { + "Get information about image store content under a given relative path": { + "$ref": "./examples/GetImageStoreContent.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-2_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ImageStoreContentPathRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "ImageStore" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested image store content information.", + "schema": { + "$ref": "#/definitions/ImageStoreContent" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + }, + "delete": { + "summary": "Deletes existing image store content.", + "description": "Deletes existing image store content being found within the given image store relative path. This command can be used to delete uploaded application packages once they are provisioned.", + "operationId": "DeleteImageStoreContent", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ImageStoreContentPathRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "ImageStore" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/ImageStore": { + "get": { + "summary": "Gets the content information at the root of the image store.", + "description": "Returns the information about the image store content at the root of the image store.", + "operationId": "GetImageStoreRootContent", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "ImageStore" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested image store content information.", + "schema": { + "$ref": "#/definitions/ImageStoreContent" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/ImageStore/$/Copy": { + "post": { + "summary": "Copies image store content internally", + "description": "Copies the image store content from the source image store relative path to the destination image store relative path.", + "operationId": "CopyImageStoreContent", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ImageStoreCopyDescriptionRequiredBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "ImageStore" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/ImageStore/$/DeleteUploadSession": { + "delete": { + "summary": "Cancels an image store upload session.", + "description": "The DELETE request will cause the existing upload session to expire and remove any previously uploaded file chunks.", + "operationId": "DeleteImageStoreUploadSession", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/UploadSessionIdRequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "ImageStore" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/ImageStore/$/CommitUploadSession": { + "post": { + "summary": "Commit an image store upload session.", + "description": "When all file chunks have been uploaded, the upload session needs to be committed explicitly to complete the upload. Image store preserves the upload session until the expiration time, which is 30 minutes after the last chunk received. ", + "operationId": "CommitImageStoreUploadSession", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/UploadSessionIdRequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "ImageStore" + ], + "responses": { + "200": { + "description": "If the commit request succeeds, the server returns the HTTP 200 OK status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/ImageStore/$/GetUploadSession": { + "get": { + "summary": "Get the image store upload session by ID.", + "description": "Gets the image store upload session identified by the given ID. User can query the upload session at any time during uploading. ", + "operationId": "GetImageStoreUploadSessionById", + "x-ms-examples": { + "Get information about image store upload session by a given ID": { + "$ref": "./examples/GetUploadSessionById.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/UploadSessionIdRequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "ImageStore" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested image store upload session information.", + "schema": { + "$ref": "#/definitions/UploadSession" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/ImageStore/{contentPath}/$/GetUploadSession": { + "get": { + "summary": "Get the image store upload session by relative path.", + "description": "Gets the image store upload session associated with the given image store relative path. User can query the upload session at any time during uploading. ", + "operationId": "GetImageStoreUploadSessionByPath", + "x-ms-examples": { + "Get information about image store upload session by a given relative path": { + "$ref": "./examples/GetUploadSessionByPath.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ImageStoreContentPathRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "ImageStore" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested image store upload session information.", + "schema": { + "$ref": "#/definitions/UploadSession" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/ImageStore/{contentPath}/$/UploadChunk": { + "put": { + "summary": "Uploads a file chunk to the image store relative path.", + "description": "Uploads a file chunk to the image store with the specified upload session ID and image store relative path. This API allows user to resume the file upload operation. user doesn't have to restart the file upload from scratch whenever there is a network interruption. Use this option if the file size is large.\n\nTo perform a resumable file upload, user need to break the file into multiple chunks and upload these chunks to the image store one-by-one. Chunks don't have to be uploaded in order. If the file represented by the image store relative path already exists, it will be overwritten when the upload session commits.", + "operationId": "UploadFileChunk", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ImageStoreContentPathRequiredPathParam" + }, + { + "$ref": "#/parameters/UploadSessionIdRequiredQueryParam" + }, + { + "$ref": "#/parameters/UploadFileChunkContentRangeHeaderParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "ImageStore" + ], + "responses": { + "200": { + "description": "A successful operation will return the HTTP 200 OK status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/ImageStore/$/FolderSize": { + "get": { + "summary": "Get the folder size at the root of the image store.", + "description": "Returns the total size of files at the root and children folders in image store.", + "operationId": "GetImageStoreRootFolderSize", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-5_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "ImageStore" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested folder size in image store.", + "schema": { + "$ref": "#/definitions/FolderSizeInfo" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/ImageStore/{contentPath}/$/FolderSize": { + "get": { + "summary": "Get the size of a folder in image store", + "description": "Gets the total size of file under a image store folder, specified by contentPath. The contentPath is relative to the root of the image store.", + "operationId": "GetImageStoreFolderSize", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-5_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ImageStoreContentPathRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "ImageStore" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested folder size in image store.", + "schema": { + "$ref": "#/definitions/FolderSizeInfo" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/ImageStore/$/Info": { + "get": { + "summary": "Gets the overall ImageStore information", + "description": "Returns information about the primary ImageStore replica, such as disk capacity and available disk space at the node it is on, and several categories of the ImageStore's file system usage.", + "operationId": "GetImageStoreInfo", + "x-ms-examples": { + "Gets the overall ImageStore information": { + "$ref": "./examples/GetImageStoreInfo.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-5_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "ImageStore" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested ImageStore info", + "schema": { + "$ref": "#/definitions/ImageStoreInfo" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/InvokeInfrastructureCommand": { + "post": { + "operationId": "InvokeInfrastructureCommand", + "summary": "Invokes an administrative command on the given Infrastructure Service instance.", + "description": "For clusters that have one or more instances of the Infrastructure Service configured,\nthis API provides a way to send infrastructure-specific commands to a particular\ninstance of the Infrastructure Service.\n\nAvailable commands and their corresponding response formats vary depending upon\nthe infrastructure on which the cluster is running.\n\nThis API supports the Service Fabric platform; it is not meant to be used directly from your code.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/InfrastructureCommandRequiredQueryParam" + }, + { + "$ref": "#/parameters/InfrastructureServiceIdOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Infrastructure" + ], + "responses": { + "200": { + "description": "The response from the infrastructure service. The response format is a JSON stream.\nThe contents of the response depend on which command was issued.", + "schema": { + "$ref": "#/definitions/InfrastructureServiceResponse" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/InvokeInfrastructureQuery": { + "get": { + "operationId": "InvokeInfrastructureQuery", + "summary": "Invokes a read-only query on the given infrastructure service instance.", + "description": "For clusters that have one or more instances of the Infrastructure Service configured,\nthis API provides a way to send infrastructure-specific queries to a particular\ninstance of the Infrastructure Service.\n\nAvailable commands and their corresponding response formats vary depending upon\nthe infrastructure on which the cluster is running.\n\nThis API supports the Service Fabric platform; it is not meant to be used directly from your code.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/InfrastructureCommandRequiredQueryParam" + }, + { + "$ref": "#/parameters/InfrastructureServiceIdOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Infrastructure" + ], + "responses": { + "200": { + "description": "The response from the infrastructure service. The response format is a JSON stream.\nThe contents of the response depend on which command was issued.", + "schema": { + "$ref": "#/definitions/InfrastructureServiceResponse" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Faults/Services/{serviceId}/$/GetPartitions/{partitionId}/$/StartDataLoss": { + "post": { + "operationId": "StartDataLoss", + "summary": "This API will induce data loss for the specified partition. It will trigger a call to the OnDataLossAsync API of the partition.", + "description": "This API will induce data loss for the specified partition. It will trigger a call to the OnDataLoss API of the partition.\nActual data loss will depend on the specified DataLossMode.\n\n- PartialDataLoss - Only a quorum of replicas are removed and OnDataLoss is triggered for the partition but actual data loss depends on the presence of in-flight replication.\n- FullDataLoss - All replicas are removed hence all data is lost and OnDataLoss is triggered.\n\nThis API should only be called with a stateful service as the target.\n\nCalling this API with a system service as the target is not advised.\n\nNote: Once this API has been called, it cannot be reversed. Calling CancelOperation will only stop execution and clean up internal system state.\nIt will not restore data if the command has progressed far enough to cause data loss.\n\nCall the GetDataLossProgress API with the same OperationId to return information on the operation started with this API.", + "tags": [ + "Faults" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ServiceIdRequiredPathParam" + }, + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/FaultOperationIdRequiredQueryParam" + }, + { + "$ref": "#/parameters/DataLossModeRequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "202": { + "description": "A 202 status code indicates the operation was accepted. Call the GetDataLossProgress API to get the progress." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Faults/Services/{serviceId}/$/GetPartitions/{partitionId}/$/GetDataLossProgress": { + "get": { + "summary": "Gets the progress of a partition data loss operation started using the StartDataLoss API.", + "description": "Gets the progress of a data loss operation started with StartDataLoss, using the OperationId.", + "operationId": "GetDataLossProgress", + "x-ms-examples": { + "Gets information about a partition data loss operation. In this case the operation has a State of Completed": { + "$ref": "./examples/GetDataLossProgress.json" + }, + "Get information about a partition data loss operation. In this case the operation is a State of Running": { + "$ref": "./examples/GetDataLossProgress-Running.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ServiceIdRequiredPathParam" + }, + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/FaultOperationIdRequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Faults" + ], + "responses": { + "200": { + "description": "Information about the progress of the partition data loss operation.", + "schema": { + "$ref": "#/definitions/PartitionDataLossProgress" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Faults/Services/{serviceId}/$/GetPartitions/{partitionId}/$/StartQuorumLoss": { + "post": { + "operationId": "StartQuorumLoss", + "summary": "Induces quorum loss for a given stateful service partition.", + "description": "This API is useful for a temporary quorum loss situation on your service.\n\nCall the GetQuorumLossProgress API with the same OperationId to return information on the operation started with this API.\n\nThis can only be called on stateful persisted (HasPersistedState==true) services. Do not use this API on stateless services or stateful in-memory only services.", + "tags": [ + "Faults" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ServiceIdRequiredPathParam" + }, + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/FaultOperationIdRequiredQueryParam" + }, + { + "$ref": "#/parameters/QuorumLossModeRequiredQueryParam" + }, + { + "$ref": "#/parameters/QuorumLossDurationRequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "202": { + "description": "A 202 status code indicates the operation was accepted. Call the GetQuorumLossProgress API to get the progress." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Faults/Services/{serviceId}/$/GetPartitions/{partitionId}/$/GetQuorumLossProgress": { + "get": { + "summary": "Gets the progress of a quorum loss operation on a partition started using the StartQuorumLoss API.", + "description": "Gets the progress of a quorum loss operation started with StartQuorumLoss, using the provided OperationId.", + "operationId": "GetQuorumLossProgress", + "x-ms-examples": { + "Gets information about a completed quorum loss operation": { + "$ref": "./examples/GetQuorumLossProgress.json" + }, + "Gets information about a running quorum operation operation": { + "$ref": "./examples/GetQuorumLossProgress-Running.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ServiceIdRequiredPathParam" + }, + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/FaultOperationIdRequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Faults" + ], + "responses": { + "200": { + "description": "Information about the progress of a partition quorum loss operation.", + "schema": { + "$ref": "#/definitions/PartitionQuorumLossProgress" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Faults/Services/{serviceId}/$/GetPartitions/{partitionId}/$/StartRestart": { + "post": { + "operationId": "StartPartitionRestart", + "summary": "This API will restart some or all replicas or instances of the specified partition.", + "description": "This API is useful for testing failover.\n\nIf used to target a stateless service partition, RestartPartitionMode must be AllReplicasOrInstances.\n\nCall the GetPartitionRestartProgress API using the same OperationId to get the progress.", + "tags": [ + "Faults" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ServiceIdRequiredPathParam" + }, + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/FaultOperationIdRequiredQueryParam" + }, + { + "$ref": "#/parameters/RestartPartitionModeRequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "202": { + "description": "A 202 status code indicates the operation was accepted. Call the GetPartitionRestartProgress API to get the progress." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Faults/Services/{serviceId}/$/GetPartitions/{partitionId}/$/GetRestartProgress": { + "get": { + "summary": "Gets the progress of a PartitionRestart operation started using StartPartitionRestart.", + "description": "Gets the progress of a PartitionRestart started with StartPartitionRestart using the provided OperationId.", + "operationId": "GetPartitionRestartProgress", + "x-ms-examples": { + "Get information a completed PartitionRestart operation": { + "$ref": "./examples/GetPartitionRestartProgress.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ServiceIdRequiredPathParam" + }, + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/FaultOperationIdRequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Faults" + ], + "responses": { + "200": { + "description": "Information about the progress of a partition restart operation.", + "schema": { + "$ref": "#/definitions/PartitionRestartProgress" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Faults/Nodes/{nodeName}/$/StartTransition/": { + "post": { + "operationId": "StartNodeTransition", + "summary": "Starts or stops a cluster node.", + "description": "Starts or stops a cluster node. A cluster node is a process, not the OS instance itself. To start a node, pass in \"Start\" for the NodeTransitionType parameter.\nTo stop a node, pass in \"Stop\" for the NodeTransitionType parameter. This API starts the operation - when the API returns the node may not have finished transitioning yet.\nCall GetNodeTransitionProgress with the same OperationId to get the progress of the operation.", + "tags": [ + "Faults" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/FaultOperationIdRequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeTransitionTypeRequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeInstanceIdRequiredQueryParam" + }, + { + "$ref": "#/parameters/StopDurationInSecondsRequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "202": { + "description": "A 202 status code indicates the operation was accepted. Call the GetNodeTransitionProgress API to get the progress." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Faults/Nodes/{nodeName}/$/GetTransitionProgress": { + "get": { + "summary": "Gets the progress of an operation started using StartNodeTransition.", + "description": "Gets the progress of an operation started with StartNodeTransition using the provided OperationId.", + "operationId": "GetNodeTransitionProgress", + "x-ms-examples": { + "Gets information about a completed NodeTransition operation": { + "$ref": "./examples/GetNodeTransitionProgress.json" + }, + "Gets information about a running NodeTransition operation": { + "$ref": "./examples/GetNodeTransitionProgress-Running.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/FaultOperationIdRequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Faults" + ], + "responses": { + "200": { + "description": "Information about the progress of a node transition operation.", + "schema": { + "$ref": "#/definitions/NodeTransitionProgress" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Faults/": { + "get": { + "operationId": "GetFaultOperationList", + "summary": "Gets a list of user-induced fault operations filtered by provided input.", + "description": "Gets the list of user-induced fault operations filtered by provided input.", + "x-ms-examples": { + "Gets information on fault operations": { + "$ref": "./examples/GetFaultOperationList.json" + } + }, + "tags": [ + "Faults" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TypeFilterRequiredQueryParam" + }, + { + "$ref": "#/parameters/StateFilterRequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code.", + "schema": { + "$ref": "#/definitions/OperationStatusList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Faults/$/Cancel": { + "post": { + "operationId": "CancelOperation", + "summary": "Cancels a user-induced fault operation.", + "description": "The following APIs start fault operations that may be cancelled by using CancelOperation: StartDataLoss, StartQuorumLoss, StartPartitionRestart, StartNodeTransition.\n\nIf force is false, then the specified user-induced operation will be gracefully stopped and cleaned up. If force is true, the command will be aborted, and some internal state\nmay be left behind. Specifying force as true should be used with care. Calling this API with force set to true is not allowed until this API has already\nbeen called on the same test command with force set to false first, or unless the test command already has an OperationState of OperationState.RollingBack.\nClarification: OperationState.RollingBack means that the system will be/is cleaning up internal system state caused by executing the command. It will not restore data if the\ntest command was to cause data loss. For example, if you call StartDataLoss then call this API, the system will only clean up internal state from running the command.\nIt will not restore the target partition's data, if the command progressed far enough to cause data loss.\n\nImportant note: if this API is invoked with force==true, internal state may be left behind.", + "tags": [ + "Faults" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/FaultOperationIdRequiredQueryParam" + }, + { + "$ref": "#/parameters/ForceRequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/BackupRestore/BackupPolicies/$/Create": { + "post": { + "operationId": "CreateBackupPolicy", + "summary": "Creates a backup policy.", + "description": "Creates a backup policy which can be associated later with a Service Fabric application, service or a partition for periodic backup.", + "x-ms-examples": { + "Create a time based backup policy with Azure as backup location": { + "$ref": "./examples/CreateBackupPolicy-1.json" + }, + "Create a time based backup policy with Azure as backup location accessed using managed identity": { + "$ref": "./examples/CreateBackupPolicy-4.json" + }, + "Create a frequency based backup policy with file share as backup location": { + "$ref": "./examples/CreateBackupPolicy-2.json" + }, + "Create a time based backup policy with Dsms Azure as backup location": { + "$ref": "./examples/CreateBackupPolicy-3.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/BackupPolicyDescriptionRequiredBodyParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + }, + { + "$ref": "#/parameters/ValidateConnectionOptionalQueryParam" + } + ], + "tags": [ + "BackupRestore" + ], + "responses": { + "201": { + "description": "A successful operation returns 201 status code and creates a new backup policy." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/BackupRestore/BackupPolicies/{backupPolicyName}/$/Delete": { + "post": { + "operationId": "DeleteBackupPolicy", + "summary": "Deletes the backup policy.", + "description": "Deletes an existing backup policy. A backup policy must be created before it can be deleted. A currently active backup policy, associated with any Service Fabric application, service or partition, cannot be deleted without first deleting the mapping.", + "x-ms-examples": { + "Delete backup policy": { + "$ref": "./examples/DeleteBackupPolicy.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/BackupPolicyNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "BackupRestore" + ], + "responses": { + "200": { + "description": "A successful operation returns 200 status code and deletes the backup policy." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/BackupRestore/BackupPolicies": { + "get": { + "operationId": "GetBackupPolicyList", + "summary": "Gets all the backup policies configured.", + "description": "Get a list of all the backup policies configured.", + "x-ms-examples": { + "Limit maximum results": { + "$ref": "./examples/GetBackupPolicyList-1.json" + }, + "Page using continuation token": { + "$ref": "./examples/GetBackupPolicyList-2.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ContinuationTokenOptionalQueryParam" + }, + { + "$ref": "#/parameters/MaxResultsOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "BackupRestore" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and paged list of backup policies.", + "schema": { + "$ref": "#/definitions/PagedBackupPolicyDescriptionList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/BackupRestore/BackupPolicies/{backupPolicyName}": { + "get": { + "operationId": "GetBackupPolicyByName", + "summary": "Gets a particular backup policy by name.", + "description": "Gets a particular backup policy identified by {backupPolicyName}", + "x-ms-examples": { + "Get backup policy by name": { + "$ref": "./examples/GetBackupPolicyByName.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/BackupPolicyNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "BackupRestore" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the backup policy description.", + "schema": { + "$ref": "#/definitions/BackupPolicyDescription" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/BackupRestore/BackupPolicies/{backupPolicyName}/$/GetBackupEnabledEntities": { + "get": { + "operationId": "GetAllEntitiesBackedUpByPolicy", + "summary": "Gets the list of backup entities that are associated with this policy.", + "description": "Returns a list of Service Fabric application, service or partition which are associated with this backup policy.", + "x-ms-examples": { + "Limit maximum results": { + "$ref": "./examples/GetAllEntitiesBackedUpByPolicy-1.json" + }, + "Page using continuation token": { + "$ref": "./examples/GetAllEntitiesBackedUpByPolicy-2.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/BackupPolicyNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ContinuationTokenOptionalQueryParam" + }, + { + "$ref": "#/parameters/MaxResultsOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "BackupRestore" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and a paged list of Service Fabric entities that are associated with this policy.", + "schema": { + "$ref": "#/definitions/PagedBackupEntityList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/BackupRestore/BackupPolicies/{backupPolicyName}/$/Update": { + "post": { + "operationId": "UpdateBackupPolicy", + "summary": "Updates the backup policy.", + "description": "Updates the backup policy identified by {backupPolicyName}", + "x-ms-examples": { + "Update backup policy": { + "$ref": "./examples/UpdateBackupPolicy.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/BackupPolicyDescriptionRequiredBodyParam" + }, + { + "$ref": "#/parameters/BackupPolicyNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + }, + { + "$ref": "#/parameters/ValidateConnectionOptionalQueryParam" + } + ], + "tags": [ + "BackupRestore" + ], + "responses": { + "200": { + "description": "A successful operation returns 200 status code and updates the backup policy description." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Applications/{applicationId}/$/EnableBackup": { + "post": { + "operationId": "EnableApplicationBackup", + "summary": "Enables periodic backup of stateful partitions under this Service Fabric application.", + "description": "Enables periodic backup of stateful partitions which are part of this Service Fabric application. Each partition is backed up individually as per the specified backup policy description. \nNote only C# based Reliable Actor and Reliable Stateful services are currently supported for periodic backup.", + "x-ms-examples": { + "Enable application backup": { + "$ref": "./examples/EnableApplicationBackup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/EnableBackupDescriptionRequiredBodyParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "BackupRestore" + ], + "responses": { + "202": { + "description": "A 202 status code indicates the request to enable application backup has been accepted." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Applications/{applicationId}/$/DisableBackup": { + "post": { + "operationId": "DisableApplicationBackup", + "summary": "Disables periodic backup of Service Fabric application.", + "description": "Disables periodic backup of Service Fabric application which was previously enabled.", + "x-ms-examples": { + "Disable application backup": { + "$ref": "./examples/DisableApplicationBackup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + }, + { + "$ref": "#/parameters/DisableBackupDescriptionOptionalBodyParam" + } + ], + "tags": [ + "BackupRestore" + ], + "responses": { + "202": { + "description": "A 202 status code indicates the request to disable application backup has been accepted." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Applications/{applicationId}/$/GetBackupConfigurationInfo": { + "get": { + "operationId": "GetApplicationBackupConfigurationInfo", + "summary": "Gets the Service Fabric application backup configuration information.", + "description": "Gets the Service Fabric backup configuration information for the application and the services and partitions under this application.", + "x-ms-examples": { + "Limit maximum results": { + "$ref": "./examples/GetApplicationBackupConfigurationInfo-1.json" + }, + "Page using continuation token": { + "$ref": "./examples/GetApplicationBackupConfigurationInfo-2.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ContinuationTokenOptionalQueryParam" + }, + { + "$ref": "#/parameters/MaxResultsOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "BackupRestore" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and a paged list of backup configuration information for the application, and the services and partitions under this application, for which backup configuration has been overridden.", + "schema": { + "$ref": "#/definitions/PagedBackupConfigurationInfoList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Applications/{applicationId}/$/GetBackups": { + "get": { + "operationId": "GetApplicationBackupList", + "summary": "Gets the list of backups available for every partition in this application.", + "description": "Returns a list of backups available for every partition in this Service Fabric application. The server enumerates all the backups available at the backup location configured in the backup policy. It also allows filtering of the result based on start and end datetime or just fetching the latest available backup for every partition.", + "x-ms-examples": { + "Get application backups within a time range": { + "$ref": "./examples/GetApplicationBackupList-1.json" + }, + "Get latest backup": { + "$ref": "./examples/GetApplicationBackupList-2.json" + }, + "Limit maximum results": { + "$ref": "./examples/GetApplicationBackupList-3.json" + }, + "Page using continuation token": { + "$ref": "./examples/GetApplicationBackupList-4.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + }, + { + "$ref": "#/parameters/LatestOptionalQueryParam" + }, + { + "$ref": "#/parameters/StartDateTimeFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/EndDateTimeFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ContinuationTokenOptionalQueryParam" + }, + { + "$ref": "#/parameters/MaxResultsOptionalQueryParam" + } + ], + "tags": [ + "BackupRestore" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and a paged list of backup information.", + "schema": { + "$ref": "#/definitions/PagedBackupInfoList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Applications/{applicationId}/$/SuspendBackup": { + "post": { + "operationId": "SuspendApplicationBackup", + "summary": "Suspends periodic backup for the specified Service Fabric application.", + "description": "The application which is configured to take periodic backups, is suspended for taking further backups till it is resumed again. This operation applies to the entire application's hierarchy. It means all the services and partitions under this application are now suspended for backup.", + "x-ms-examples": { + "Suspend application backup": { + "$ref": "./examples/SuspendApplicationBackup.json" + } + }, + "tags": [ + "BackupRestore" + ], + "parameters": [ + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "202": { + "description": "A 202 status code indicates the operation request was accepted and application backup will be suspended." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Applications/{applicationId}/$/ResumeBackup": { + "post": { + "operationId": "ResumeApplicationBackup", + "summary": "Resumes periodic backup of a Service Fabric application which was previously suspended.", + "description": "The previously suspended Service Fabric application resumes taking periodic backup as per the backup policy currently configured for the same.", + "x-ms-examples": { + "Resume application backup": { + "$ref": "./examples/ResumeApplicationBackup.json" + } + }, + "tags": [ + "BackupRestore" + ], + "parameters": [ + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "202": { + "description": "A 202 status code indicates the operation request was accepted and application backup will be resumed." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Services/{serviceId}/$/EnableBackup": { + "post": { + "operationId": "EnableServiceBackup", + "summary": "Enables periodic backup of stateful partitions under this Service Fabric service.", + "description": "Enables periodic backup of stateful partitions which are part of this Service Fabric service. Each partition is backed up individually as per the specified backup policy description. In case the application, which the service is part of, is already enabled for backup then this operation would override the policy being used to take the periodic backup for this service and its partitions (unless explicitly overridden at the partition level).\nNote only C# based Reliable Actor and Reliable Stateful services are currently supported for periodic backup.", + "x-ms-examples": { + "Enable service backup": { + "$ref": "./examples/EnableServiceBackup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ServiceIdRequiredPathParam" + }, + { + "$ref": "#/parameters/EnableBackupDescriptionRequiredBodyParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "BackupRestore" + ], + "responses": { + "202": { + "description": "A 202 status code indicates the request to enable service backup has been accepted." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Services/{serviceId}/$/DisableBackup": { + "post": { + "operationId": "DisableServiceBackup", + "summary": "Disables periodic backup of Service Fabric service which was previously enabled.", + "description": "Disables periodic backup of Service Fabric service which was previously enabled. Backup must be explicitly enabled before it can be disabled.\nIn case the backup is enabled for the Service Fabric application, which this service is part of, this service would continue to be periodically backed up as per the policy mapped at the application level.", + "x-ms-examples": { + "Disable service backup": { + "$ref": "./examples/DisableServiceBackup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ServiceIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/DisableBackupDescriptionOptionalBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "BackupRestore" + ], + "responses": { + "202": { + "description": "A 202 status code indicates the request to disable service backup has been accepted." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Services/{serviceId}/$/GetBackupConfigurationInfo": { + "get": { + "operationId": "GetServiceBackupConfigurationInfo", + "summary": "Gets the Service Fabric service backup configuration information.", + "description": "Gets the Service Fabric backup configuration information for the service and the partitions under this service.", + "x-ms-examples": { + "Limit maximum results": { + "$ref": "./examples/GetServiceBackupConfigurationInfo-1.json" + }, + "Page using continuation token": { + "$ref": "./examples/GetServiceBackupConfigurationInfo-2.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ServiceIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ContinuationTokenOptionalQueryParam" + }, + { + "$ref": "#/parameters/MaxResultsOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "BackupRestore" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and a paged list of backup configuration information for the service, and the partitions under this service, for which backup configuration has been overridden.", + "schema": { + "$ref": "#/definitions/PagedBackupConfigurationInfoList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Services/{serviceId}/$/GetBackups": { + "get": { + "operationId": "GetServiceBackupList", + "summary": "Gets the list of backups available for every partition in this service.", + "description": "Returns a list of backups available for every partition in this Service Fabric service. The server enumerates all the backups available in the backup store configured in the backup policy. It also allows filtering of the result based on start and end datetime or just fetching the latest available backup for every partition.", + "x-ms-examples": { + "Get application backups within a time range": { + "$ref": "./examples/GetServiceBackupList-1.json" + }, + "Get latest backup": { + "$ref": "./examples/GetServiceBackupList-2.json" + }, + "Limit maximum results": { + "$ref": "./examples/GetServiceBackupList-3.json" + }, + "Page using continuation token": { + "$ref": "./examples/GetServiceBackupList-4.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ServiceIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + }, + { + "$ref": "#/parameters/LatestOptionalQueryParam" + }, + { + "$ref": "#/parameters/StartDateTimeFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/EndDateTimeFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ContinuationTokenOptionalQueryParam" + }, + { + "$ref": "#/parameters/MaxResultsOptionalQueryParam" + } + ], + "tags": [ + "BackupRestore" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and a paged list of backup information.", + "schema": { + "$ref": "#/definitions/PagedBackupInfoList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Services/{serviceId}/$/SuspendBackup": { + "post": { + "operationId": "SuspendServiceBackup", + "summary": "Suspends periodic backup for the specified Service Fabric service.", + "description": "The service which is configured to take periodic backups, is suspended for taking further backups till it is resumed again. This operation applies to the entire service's hierarchy. It means all the partitions under this service are now suspended for backup.", + "x-ms-examples": { + "Suspend service backup": { + "$ref": "./examples/SuspendServiceBackup.json" + } + }, + "tags": [ + "BackupRestore" + ], + "parameters": [ + { + "$ref": "#/parameters/ServiceIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "202": { + "description": "A 202 status code indicates the operation request was accepted and service backup will be suspended." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Services/{serviceId}/$/ResumeBackup": { + "post": { + "operationId": "ResumeServiceBackup", + "summary": "Resumes periodic backup of a Service Fabric service which was previously suspended.", + "description": "The previously suspended Service Fabric service resumes taking periodic backup as per the backup policy currently configured for the same.", + "x-ms-examples": { + "Resume service backup": { + "$ref": "./examples/ResumeServiceBackup.json" + } + }, + "tags": [ + "BackupRestore" + ], + "parameters": [ + { + "$ref": "#/parameters/ServiceIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "202": { + "description": "A 202 status code indicates the operation request was accepted and service backup will be resumed." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Partitions/{partitionId}/$/EnableBackup": { + "post": { + "operationId": "EnablePartitionBackup", + "summary": "Enables periodic backup of the stateful persisted partition.", + "description": "Enables periodic backup of stateful persisted partition. Each partition is backed up as per the specified backup policy description. In case the application or service, which is partition is part of, is already enabled for backup then this operation would override the policy being used to take the periodic backup of this partition.\nNote only C# based Reliable Actor and Reliable Stateful services are currently supported for periodic backup.", + "x-ms-examples": { + "Enable partition backup": { + "$ref": "./examples/EnablePartitionBackup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/EnableBackupDescriptionRequiredBodyParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "BackupRestore" + ], + "responses": { + "202": { + "description": "A 202 status code indicates the request to enable partition backup has been accepted." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Partitions/{partitionId}/$/DisableBackup": { + "post": { + "operationId": "DisablePartitionBackup", + "summary": "Disables periodic backup of Service Fabric partition which was previously enabled.", + "description": "Disables periodic backup of partition which was previously enabled. Backup must be explicitly enabled before it can be disabled. \nIn case the backup is enabled for the Service Fabric application or service, which this partition is part of, this partition would continue to be periodically backed up as per the policy mapped at the higher level entity.", + "x-ms-examples": { + "Disable partition backup": { + "$ref": "./examples/DisablePartitionBackup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/DisableBackupDescriptionOptionalBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "BackupRestore" + ], + "responses": { + "202": { + "description": "A 202 status code indicates the request to disable partition backup has been accepted." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Partitions/{partitionId}/$/GetBackupConfigurationInfo": { + "get": { + "operationId": "GetPartitionBackupConfigurationInfo", + "summary": "Gets the partition backup configuration information", + "description": "Gets the Service Fabric Backup configuration information for the specified partition.", + "x-ms-examples": { + "Get partition backup configuration information": { + "$ref": "./examples/GetPartitionBackupConfigurationInfo.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "BackupRestore" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and gets the partition's backup configuration information.", + "schema": { + "$ref": "#/definitions/PartitionBackupConfigurationInfo" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Partitions/{partitionId}/$/GetBackups": { + "get": { + "operationId": "GetPartitionBackupList", + "summary": "Gets the list of backups available for the specified partition.", + "description": "Returns a list of backups available for the specified partition. The server enumerates all the backups available in the backup store configured in the backup policy. It also allows filtering of the result based on start and end datetime or just fetching the latest available backup for the partition.", + "x-ms-examples": { + "Get application backups within a time range": { + "$ref": "./examples/GetPartitionBackupList-1.json" + }, + "Get latest backup": { + "$ref": "./examples/GetPartitionBackupList-2.json" + }, + "Limit maximum results": { + "$ref": "./examples/GetPartitionBackupList-3.json" + }, + "Page using continuation token": { + "$ref": "./examples/GetPartitionBackupList-4.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + }, + { + "$ref": "#/parameters/LatestOptionalQueryParam" + }, + { + "$ref": "#/parameters/StartDateTimeFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/EndDateTimeFilterOptionalQueryParam" + } + ], + "tags": [ + "BackupRestore" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and a paged list of backup information.", + "schema": { + "$ref": "#/definitions/PagedBackupInfoList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Partitions/{partitionId}/$/SuspendBackup": { + "post": { + "operationId": "SuspendPartitionBackup", + "summary": "Suspends periodic backup for the specified partition.", + "description": "The partition which is configured to take periodic backups, is suspended for taking further backups till it is resumed again.", + "x-ms-examples": { + "Suspend partition backup": { + "$ref": "./examples/SuspendPartitionBackup.json" + } + }, + "tags": [ + "BackupRestore" + ], + "parameters": [ + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "202": { + "description": "A 202 status code indicates the operation request was accepted and partition backup will be suspended." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Partitions/{partitionId}/$/ResumeBackup": { + "post": { + "operationId": "ResumePartitionBackup", + "summary": "Resumes periodic backup of partition which was previously suspended.", + "description": "The previously suspended partition resumes taking periodic backup as per the backup policy currently configured for the same.", + "x-ms-examples": { + "Resume partition backup": { + "$ref": "./examples/ResumePartitionBackup.json" + } + }, + "tags": [ + "BackupRestore" + ], + "parameters": [ + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "202": { + "description": "A 202 status code indicates the operation request was accepted and partition backup will be resumed." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Partitions/{partitionId}/$/Backup": { + "post": { + "operationId": "BackupPartition", + "summary": "Triggers backup of the partition's state.", + "description": "Creates a backup of the stateful persisted partition's state. In case the partition is already being periodically backed up, then by default the new backup is created at the same backup storage. One can also override the same by specifying the backup storage details as part of the request body. Once the backup is initiated, its progress can be tracked using the GetBackupProgress operation. \nIn case, the operation times out, specify a greater backup timeout value in the query parameter.", + "x-ms-examples": { + "Backup partition": { + "$ref": "./examples/BackupPartition-1.json" + }, + "Backup partition to a specific Azure storage account": { + "$ref": "./examples/BackupPartition-2.json" + }, + "Backup partition to a specific Azure storage location accessed using managed identity": { + "$ref": "./examples/BackupPartition-5.json" + }, + "Backup partition to a specific on-premise file share": { + "$ref": "./examples/BackupPartition-3.json" + }, + "Backup partition to a specific Dsms Azure storage location": { + "$ref": "./examples/BackupPartition-4.json" + } + }, + "tags": [ + "BackupRestore" + ], + "parameters": [ + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/BackupPartitionDescriptionOptionalBodyParam" + }, + { + "$ref": "#/parameters/BackupTimeoutOptionalQueryParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "202": { + "description": "A 202 status code indicates the operation request was accepted and backup will be initiated. Use GetPartitionBackupProgress operation to get the status of the backup operation." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Partitions/{partitionId}/$/GetBackupProgress": { + "get": { + "operationId": "GetPartitionBackupProgress", + "summary": "Gets details for the latest backup triggered for this partition.", + "description": "Returns information about the state of the latest backup along with details or failure reason in case of completion.", + "x-ms-examples": { + "Get backup operation progress": { + "$ref": "./examples/GetPartitionBackupProgress.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "BackupRestore" + ], + "responses": { + "200": { + "description": "A successful operation returns 200 status code and backup progress details.", + "schema": { + "$ref": "#/definitions/BackupProgressInfo" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Partitions/{partitionId}/$/Restore": { + "post": { + "operationId": "RestorePartition", + "summary": "Triggers restore of the state of the partition using the specified restore partition description.", + "description": "Restores the state of a of the stateful persisted partition using the specified backup point. In case the partition is already being periodically backed up, then by default the backup point is looked for in the storage specified in backup policy. One can also override the same by specifying the backup storage details as part of the restore partition description in body. Once the restore is initiated, its progress can be tracked using the GetRestoreProgress operation. \nIn case, the operation times out, specify a greater restore timeout value in the query parameter.", + "x-ms-examples": { + "Trigger partition restore": { + "$ref": "./examples/RestorePartition.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/RestorePartitionDescriptionRequiredBodyParam" + }, + { + "$ref": "#/parameters/RestoreTimeoutOptionalQueryParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "BackupRestore" + ], + "responses": { + "202": { + "description": "A 202 status code indicates the operation request was accepted and restore will be initiated. Use GetPartitionRestoreProgress operation to get the status of the restore operation." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Partitions/{partitionId}/$/GetRestoreProgress": { + "get": { + "operationId": "GetPartitionRestoreProgress", + "summary": "Gets details for the latest restore operation triggered for this partition.", + "description": "Returns information about the state of the latest restore operation along with details or failure reason in case of completion.", + "x-ms-examples": { + "Get restore operation progress": { + "$ref": "./examples/GetPartitionRestoreProgress.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "BackupRestore" + ], + "responses": { + "200": { + "description": "A successful operation returns 200 status code and restore progress details.", + "schema": { + "$ref": "#/definitions/RestoreProgressInfo" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/BackupRestore/$/GetBackups": { + "post": { + "operationId": "GetBackupsFromBackupLocation", + "summary": "Gets the list of backups available for the specified backed up entity at the specified backup location.", + "description": "Gets the list of backups available for the specified backed up entity (Application, Service or Partition) at the specified backup location (FileShare or Azure Blob Storage).", + "x-ms-examples": { + "Limit maximum results": { + "$ref": "./examples/GetBackupsFromBackupLocation-1.json" + }, + "Page using continuation token": { + "$ref": "./examples/GetBackupsFromBackupLocation-2.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + }, + { + "$ref": "#/parameters/ContinuationTokenOptionalQueryParam" + }, + { + "$ref": "#/parameters/MaxResultsOptionalQueryParam" + }, + { + "$ref": "#/parameters/GetBackupByStorageQueryDescriptionRequiredBodyParam" + } + ], + "tags": [ + "BackupRestore" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and a paged list of backup information.", + "schema": { + "$ref": "#/definitions/PagedBackupInfoList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Names/$/Create": { + "post": { + "summary": "Creates a Service Fabric name.", + "description": "Creates the specified Service Fabric name.", + "operationId": "CreateName", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NameDescriptionRequiredBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "x-ms-examples": { + "Create new name": { + "$ref": "examples/CreateName-1.json" + } + }, + "tags": [ + "Property Management" + ], + "responses": { + "201": { + "description": "A successful response means that the name has been created." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Names/{nameId}": { + "get": { + "summary": "Returns whether the Service Fabric name exists.", + "description": "Returns whether the specified Service Fabric name exists.", + "operationId": "GetNameExistsInfo", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NameIdRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Property Management" + ], + "responses": { + "200": { + "description": "A successful response means that the Service Fabric name exists." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + }, + "delete": { + "summary": "Deletes a Service Fabric name.", + "description": "Deletes the specified Service Fabric name. A name must be created before it can be deleted. Deleting a name with child properties will fail.", + "operationId": "DeleteName", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NameIdRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Property Management" + ], + "responses": { + "200": { + "description": "A successful response means that the Service Fabric name has been deleted." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Names/{nameId}/$/GetSubNames": { + "get": { + "summary": "Enumerates all the Service Fabric names under a given name.", + "description": "Enumerates all the Service Fabric names under a given name. If the subnames do not fit in a page, one page of results is returned as well as a continuation token, which can be used to get the next page. Querying a name that doesn't exist will fail.", + "operationId": "GetSubNameInfoList", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NameIdRequiredPathParam" + }, + { + "$ref": "#/parameters/RecursiveOptionalQueryParam" + }, + { + "$ref": "#/parameters/ContinuationTokenOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "x-ms-examples": { + "Get sub names": { + "$ref": "examples/GetSubNameInfoList-1.json" + }, + "Recursively search sub names": { + "$ref": "examples/GetSubNameInfoList-2.json" + }, + "Page using continuation token": { + "$ref": "examples/GetSubNameInfoList-3.json" + } + }, + "tags": [ + "Property Management" + ], + "responses": { + "200": { + "description": "A paged list of Service Fabric names.", + "schema": { + "$ref": "#/definitions/PagedSubNameInfoList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Names/{nameId}/$/GetProperties": { + "get": { + "summary": "Gets information on all Service Fabric properties under a given name.", + "description": "A Service Fabric name can have one or more named properties that store custom information. This operation gets the information about these properties in a paged list. The information includes name, value, and metadata about each of the properties.", + "operationId": "GetPropertyInfoList", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NameIdRequiredPathParam" + }, + { + "$ref": "#/parameters/IncludeValuesOptionalQueryParam" + }, + { + "$ref": "#/parameters/ContinuationTokenOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "x-ms-examples": { + "Get property info list": { + "$ref": "examples/GetPropertyInfoList-1.json" + }, + "Get property info list with values": { + "$ref": "examples/GetPropertyInfoList-2.json" + }, + "Page using continuation token": { + "$ref": "examples/GetPropertyInfoList-3.json" + } + }, + "tags": [ + "Property Management" + ], + "responses": { + "200": { + "description": "A paged list of Service Fabric properties.", + "schema": { + "$ref": "#/definitions/PagedPropertyInfoList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Names/{nameId}/$/GetProperty": { + "put": { + "summary": "Creates or updates a Service Fabric property.", + "description": "Creates or updates the specified Service Fabric property under a given name.", + "operationId": "PutProperty", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NameIdRequiredPathParam" + }, + { + "$ref": "#/parameters/PropertyDescriptionRequiredBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "x-ms-examples": { + "Put property": { + "$ref": "examples/PutProperty-1.json" + }, + "Put custom property": { + "$ref": "examples/PutProperty-2.json" + } + }, + "tags": [ + "Property Management" + ], + "responses": { + "200": { + "description": "A successful response means that the property has been created or updated." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + }, + "get": { + "summary": "Gets the specified Service Fabric property.", + "description": "Gets the specified Service Fabric property under a given name. This will always return both value and metadata.", + "operationId": "GetPropertyInfo", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NameIdRequiredPathParam" + }, + { + "$ref": "#/parameters/PropertyNameRequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "x-ms-examples": { + "Get property info": { + "$ref": "examples/GetPropertyInfo-1.json" + } + }, + "tags": [ + "Property Management" + ], + "responses": { + "200": { + "description": "Details on the Service Fabric property.", + "schema": { + "$ref": "#/definitions/PropertyInfo" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + }, + "delete": { + "summary": "Deletes the specified Service Fabric property.", + "description": "Deletes the specified Service Fabric property under a given name. A property must be created before it can be deleted.", + "operationId": "DeleteProperty", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NameIdRequiredPathParam" + }, + { + "$ref": "#/parameters/PropertyNameRequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Property Management" + ], + "responses": { + "200": { + "description": "A successful response means that the property has been deleted." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Names/{nameId}/$/GetProperties/$/SubmitBatch": { + "post": { + "summary": "Submits a property batch.", + "description": "Submits a batch of property operations. Either all or none of the operations will be committed.", + "operationId": "SubmitPropertyBatch", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NameIdRequiredPathParam" + }, + { + "$ref": "#/parameters/PropertyBatchDescriptionListRequiredBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "x-ms-examples": { + "Property batch operation": { + "$ref": "examples/SubmitPropertyBatch-1.json" + } + }, + "tags": [ + "Property Management" + ], + "responses": { + "200": { + "description": "A successful response means that the property batch succeeded.", + "schema": { + "$ref": "#/definitions/SuccessfulPropertyBatchInfo" + } + }, + "409": { + "description": "A 409 response means that one of the property batch operations failed, and contains more information about the failure. None of the operations were committed.", + "schema": { + "$ref": "#/definitions/FailedPropertyBatchInfo" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/EventsStore/Cluster/Events": { + "get": { + "summary": "Gets all Cluster-related events.", + "description": "The response is list of ClusterEvent objects.", + "operationId": "GetClusterEventList", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + }, + { + "$ref": "#/parameters/StartTimeUtcRequiredQueryParam" + }, + { + "$ref": "#/parameters/EndTimeUtcRequiredQueryParam" + }, + { + "$ref": "#/parameters/EventsTypesFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ExcludeAnalysisEventsOptionalQueryParam" + }, + { + "$ref": "#/parameters/SkipCorrelationLookupOptionalQueryParam" + } + ], + "tags": [ + "EventsStore" + ], + "x-ms-examples": { + "Get Cluster-related events": { + "$ref": "./examples/GetClusterEventList.json" + } + }, + "responses": { + "200": { + "description": "List of events objects with base type ClusterEvent.", + "schema": { + "$ref": "#/definitions/ClusterEventList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/EventsStore/Containers/Events": { + "get": { + "summary": "Gets all Containers-related events.", + "description": "The response is list of ContainerInstanceEvent objects.", + "operationId": "GetContainersEventList", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-2-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + }, + { + "$ref": "#/parameters/StartTimeUtcRequiredQueryParam" + }, + { + "$ref": "#/parameters/EndTimeUtcRequiredQueryParam" + }, + { + "$ref": "#/parameters/EventsTypesFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ExcludeAnalysisEventsOptionalQueryParam" + }, + { + "$ref": "#/parameters/SkipCorrelationLookupOptionalQueryParam" + } + ], + "tags": [ + "EventsStore" + ], + "responses": { + "200": { + "description": "List of events objects with base type ContainerInstanceEvent.", + "schema": { + "$ref": "#/definitions/ContainerInstanceEventList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/EventsStore/Nodes/{nodeName}/$/Events": { + "get": { + "summary": "Gets a Node-related events.", + "description": "The response is list of NodeEvent objects.", + "operationId": "GetNodeEventList", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + }, + { + "$ref": "#/parameters/StartTimeUtcRequiredQueryParam" + }, + { + "$ref": "#/parameters/EndTimeUtcRequiredQueryParam" + }, + { + "$ref": "#/parameters/EventsTypesFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ExcludeAnalysisEventsOptionalQueryParam" + }, + { + "$ref": "#/parameters/SkipCorrelationLookupOptionalQueryParam" + } + ], + "tags": [ + "EventsStore" + ], + "x-ms-examples": { + "Get Node-related events": { + "$ref": "./examples/GetNodeEventList.json" + } + }, + "responses": { + "200": { + "description": "List of events objects with base type NodeEvent.", + "schema": { + "$ref": "#/definitions/NodeEventList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/EventsStore/Nodes/Events": { + "get": { + "summary": "Gets all Nodes-related Events.", + "description": "The response is list of NodeEvent objects.", + "operationId": "GetNodesEventList", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + }, + { + "$ref": "#/parameters/StartTimeUtcRequiredQueryParam" + }, + { + "$ref": "#/parameters/EndTimeUtcRequiredQueryParam" + }, + { + "$ref": "#/parameters/EventsTypesFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ExcludeAnalysisEventsOptionalQueryParam" + }, + { + "$ref": "#/parameters/SkipCorrelationLookupOptionalQueryParam" + } + ], + "tags": [ + "EventsStore" + ], + "x-ms-examples": { + "Get Nodes-related events": { + "$ref": "./examples/GetNodesEventList.json" + } + }, + "responses": { + "200": { + "description": "List of events objects with base type NodeEvent.", + "schema": { + "$ref": "#/definitions/NodeEventList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/EventsStore/Applications/{applicationId}/$/Events": { + "get": { + "summary": "Gets an Application-related events.", + "description": "The response is list of ApplicationEvent objects.", + "operationId": "GetApplicationEventList", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + }, + { + "$ref": "#/parameters/StartTimeUtcRequiredQueryParam" + }, + { + "$ref": "#/parameters/EndTimeUtcRequiredQueryParam" + }, + { + "$ref": "#/parameters/EventsTypesFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ExcludeAnalysisEventsOptionalQueryParam" + }, + { + "$ref": "#/parameters/SkipCorrelationLookupOptionalQueryParam" + } + ], + "tags": [ + "EventsStore" + ], + "x-ms-examples": { + "Get Application-related events": { + "$ref": "./examples/GetApplicationEventList.json" + } + }, + "responses": { + "200": { + "description": "List of events objects with base type ApplicationEvent.", + "schema": { + "$ref": "#/definitions/ApplicationEventList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/EventsStore/Applications/Events": { + "get": { + "summary": "Gets all Applications-related events.", + "description": "The response is list of ApplicationEvent objects.", + "operationId": "GetApplicationsEventList", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + }, + { + "$ref": "#/parameters/StartTimeUtcRequiredQueryParam" + }, + { + "$ref": "#/parameters/EndTimeUtcRequiredQueryParam" + }, + { + "$ref": "#/parameters/EventsTypesFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ExcludeAnalysisEventsOptionalQueryParam" + }, + { + "$ref": "#/parameters/SkipCorrelationLookupOptionalQueryParam" + } + ], + "tags": [ + "EventsStore" + ], + "x-ms-examples": { + "Get Applications-related events": { + "$ref": "./examples/GetApplicationsEventList.json" + } + }, + "responses": { + "200": { + "description": "List of events objects with base type ApplicationEvent.", + "schema": { + "$ref": "#/definitions/ApplicationEventList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/EventsStore/Services/{serviceId}/$/Events": { + "get": { + "summary": "Gets a Service-related events.", + "description": "The response is list of ServiceEvent objects.", + "operationId": "GetServiceEventList", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ServiceIdRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + }, + { + "$ref": "#/parameters/StartTimeUtcRequiredQueryParam" + }, + { + "$ref": "#/parameters/EndTimeUtcRequiredQueryParam" + }, + { + "$ref": "#/parameters/EventsTypesFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ExcludeAnalysisEventsOptionalQueryParam" + }, + { + "$ref": "#/parameters/SkipCorrelationLookupOptionalQueryParam" + } + ], + "tags": [ + "EventsStore" + ], + "x-ms-examples": { + "Get Service-related events": { + "$ref": "./examples/GetServiceEventList.json" + } + }, + "responses": { + "200": { + "description": "List of events objects with base type ServiceEvent.", + "schema": { + "$ref": "#/definitions/ServiceEventList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/EventsStore/Services/Events": { + "get": { + "summary": "Gets all Services-related events.", + "description": "The response is list of ServiceEvent objects.", + "operationId": "GetServicesEventList", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + }, + { + "$ref": "#/parameters/StartTimeUtcRequiredQueryParam" + }, + { + "$ref": "#/parameters/EndTimeUtcRequiredQueryParam" + }, + { + "$ref": "#/parameters/EventsTypesFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ExcludeAnalysisEventsOptionalQueryParam" + }, + { + "$ref": "#/parameters/SkipCorrelationLookupOptionalQueryParam" + } + ], + "tags": [ + "EventsStore" + ], + "x-ms-examples": { + "Get Services-related events": { + "$ref": "./examples/GetServicesEventList.json" + } + }, + "responses": { + "200": { + "description": "List of events objects with base type ServiceEvent.", + "schema": { + "$ref": "#/definitions/ServiceEventList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/EventsStore/Partitions/{partitionId}/$/Events": { + "get": { + "summary": "Gets a Partition-related events.", + "description": "The response is list of PartitionEvent objects.", + "operationId": "GetPartitionEventList", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + }, + { + "$ref": "#/parameters/StartTimeUtcRequiredQueryParam" + }, + { + "$ref": "#/parameters/EndTimeUtcRequiredQueryParam" + }, + { + "$ref": "#/parameters/EventsTypesFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ExcludeAnalysisEventsOptionalQueryParam" + }, + { + "$ref": "#/parameters/SkipCorrelationLookupOptionalQueryParam" + } + ], + "tags": [ + "EventsStore" + ], + "x-ms-examples": { + "Get Partition-related events": { + "$ref": "./examples/GetPartitionEventList.json" + } + }, + "responses": { + "200": { + "description": "List of events objects with base type PartitionEvent.", + "schema": { + "$ref": "#/definitions/PartitionEventList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/EventsStore/Partitions/Events": { + "get": { + "summary": "Gets all Partitions-related events.", + "description": "The response is list of PartitionEvent objects.", + "operationId": "GetPartitionsEventList", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + }, + { + "$ref": "#/parameters/StartTimeUtcRequiredQueryParam" + }, + { + "$ref": "#/parameters/EndTimeUtcRequiredQueryParam" + }, + { + "$ref": "#/parameters/EventsTypesFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ExcludeAnalysisEventsOptionalQueryParam" + }, + { + "$ref": "#/parameters/SkipCorrelationLookupOptionalQueryParam" + } + ], + "tags": [ + "EventsStore" + ], + "x-ms-examples": { + "Get Partitions-related events": { + "$ref": "./examples/GetPartitionsEventList.json" + } + }, + "responses": { + "200": { + "description": "List of events objects with base type PartitionEvent.", + "schema": { + "$ref": "#/definitions/PartitionEventList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/EventsStore/Partitions/{partitionId}/$/Replicas/{replicaId}/$/Events": { + "get": { + "summary": "Gets a Partition Replica-related events.", + "description": "The response is list of ReplicaEvent objects.", + "operationId": "GetPartitionReplicaEventList", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ReplicaIdRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + }, + { + "$ref": "#/parameters/StartTimeUtcRequiredQueryParam" + }, + { + "$ref": "#/parameters/EndTimeUtcRequiredQueryParam" + }, + { + "$ref": "#/parameters/EventsTypesFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ExcludeAnalysisEventsOptionalQueryParam" + }, + { + "$ref": "#/parameters/SkipCorrelationLookupOptionalQueryParam" + } + ], + "tags": [ + "EventsStore" + ], + "x-ms-examples": { + "Get Partition Replica-related events": { + "$ref": "./examples/GetReplicaEventList.json" + } + }, + "responses": { + "200": { + "description": "List of events objects with base type ReplicaEvent.", + "schema": { + "$ref": "#/definitions/ReplicaEventList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/EventsStore/Partitions/{partitionId}/$/Replicas/Events": { + "get": { + "summary": "Gets all Replicas-related events for a Partition.", + "description": "The response is list of ReplicaEvent objects.", + "operationId": "GetPartitionReplicasEventList", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + }, + { + "$ref": "#/parameters/StartTimeUtcRequiredQueryParam" + }, + { + "$ref": "#/parameters/EndTimeUtcRequiredQueryParam" + }, + { + "$ref": "#/parameters/EventsTypesFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ExcludeAnalysisEventsOptionalQueryParam" + }, + { + "$ref": "#/parameters/SkipCorrelationLookupOptionalQueryParam" + } + ], + "tags": [ + "EventsStore" + ], + "x-ms-examples": { + "Get Partition Replicas-related events": { + "$ref": "./examples/GetReplicasEventList.json" + } + }, + "responses": { + "200": { + "description": "List of events objects with base type ReplicaEvent.", + "schema": { + "$ref": "#/definitions/ReplicaEventList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/EventsStore/CorrelatedEvents/{eventInstanceId}/$/Events": { + "get": { + "summary": "Gets all correlated events for a given event.", + "description": "The response is list of FabricEvents.", + "operationId": "GetCorrelatedEventList", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/EventInstanceIdRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "EventsStore" + ], + "x-ms-examples": { + "Get Correlated events": { + "$ref": "./examples/GetCorrelatedEventList.json" + } + }, + "responses": { + "200": { + "description": "List of events objects with base type FabricEvent.", + "schema": { + "$ref": "#/definitions/EventList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Resources/Secrets/{secretResourceName}": { + "put": { + "operationId": "MeshSecret_CreateOrUpdate", + "x-ms-examples": { + "CreateOrUpdateMeshSecret": { + "$ref": "./examples/Resources/Secrets/create_update.json" + } + }, + "summary": "Creates or updates a Secret resource.", + "description": "Creates a Secret resource with the specified name, description and properties. If Secret resource with the same name exists, then it is updated with the specified description and properties. Once created, the kind and contentType of a secret resource cannot be updated.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/SecretResourceNameRequiredPathParam" + }, + { + "$ref": "#/parameters/SecretResourceDescriptionRequiredBodyParam" + } + ], + "tags": [ + "MeshSecrets" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SecretResourceDescription" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/SecretResourceDescription" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + }, + "get": { + "operationId": "MeshSecret_Get", + "x-ms-examples": { + "GetSecretResource": { + "$ref": "./examples/Resources/Secrets/get.json" + } + }, + "summary": "Gets the Secret resource with the given name.", + "description": "Gets the information about the Secret resource with the given name. The information include the description and other properties of the Secret.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/SecretResourceNameRequiredPathParam" + } + ], + "tags": [ + "MeshSecrets" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SecretResourceDescription" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + }, + "delete": { + "operationId": "MeshSecret_Delete", + "x-ms-examples": { + "DeleteSecretResource": { + "$ref": "./examples/Resources/Secrets/delete.json" + } + }, + "summary": "Deletes the Secret resource.", + "description": "Deletes the specified Secret resource and all of its named values.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/SecretResourceNameRequiredPathParam" + } + ], + "tags": [ + "MeshSecrets" + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content - the specified secret was not found." + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Resources/Secrets": { + "get": { + "operationId": "MeshSecret_List", + "x-ms-examples": { + "ListMeshSecrets": { + "$ref": "./examples/Resources/Secrets/list.json" + } + }, + "summary": "Lists all the secret resources.", + "description": "Gets the information about all secret resources in a given resource group. The information include the description and other properties of the Secret.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + } + ], + "tags": [ + "MeshSecrets" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PagedSecretResourceDescriptionList" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Resources/Secrets/{secretResourceName}/values/{secretValueResourceName}": { + "put": { + "operationId": "MeshSecretValue_AddValue", + "x-ms-examples": { + "CreateMeshSecretValue": { + "$ref": "./examples/Resources/Secrets/values/create.json" + } + }, + "summary": "Adds the specified value as a new version of the specified secret resource.", + "description": "Creates a new value of the specified secret resource. The name of the value is typically the version identifier. Once created the value cannot be changed.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/SecretResourceNameRequiredPathParam" + }, + { + "$ref": "#/parameters/SecretValueResourceNameRequiredPathParam" + }, + { + "$ref": "#/parameters/SecretValueResourceDescriptionRequiredBodyParam" + } + ], + "tags": [ + "MeshSecretValues" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SecretValueResourceDescription" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/SecretValueResourceDescription" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + }, + "get": { + "operationId": "MeshSecretValue_Get", + "x-ms-examples": { + "GetMeshSecretValue": { + "$ref": "./examples/Resources/Secrets/values/get.json" + } + }, + "summary": "Gets the specified secret value resource.", + "description": "Get the information about the specified named secret value resources. The information does not include the actual value of the secret.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/SecretResourceNameRequiredPathParam" + }, + { + "$ref": "#/parameters/SecretValueResourceNameRequiredPathParam" + } + ], + "tags": [ + "MeshSecretValues" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SecretValueResourceDescription" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + }, + "delete": { + "operationId": "MeshSecretValue_Delete", + "x-ms-examples": { + "DeleteSecretValue": { + "$ref": "./examples/Resources/Secrets/values/delete.json" + } + }, + "summary": "Deletes the specified value of the named secret resource.", + "description": "Deletes the secret value resource identified by the name. The name of the resource is typically the version associated with that value. Deletion will fail if the specified value is in use.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/SecretResourceNameRequiredPathParam" + }, + { + "$ref": "#/parameters/SecretValueResourceNameRequiredPathParam" + } + ], + "tags": [ + "MeshSecretValues" + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content - the specified secret value was not found." + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Resources/Secrets/{secretResourceName}/values": { + "get": { + "operationId": "MeshSecretValue_List", + "x-ms-examples": { + "ListMeshSecretValues": { + "$ref": "./examples/Resources/Secrets/values/list.json" + } + }, + "summary": "List names of all values of the specified secret resource.", + "description": "Gets information about all secret value resources of the specified secret resource. The information includes the names of the secret value resources, but not the actual values.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/SecretResourceNameRequiredPathParam" + } + ], + "tags": [ + "MeshSecretValues" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PagedSecretValueResourceDescriptionList" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Resources/Secrets/{secretResourceName}/values/{secretValueResourceName}/list_value": { + "post": { + "operationId": "MeshSecretValue_Show", + "x-ms-examples": { + "ListMeshSecretValue": { + "$ref": "./examples/Resources/Secrets/values/list_value.json" + } + }, + "summary": "Lists the specified value of the secret resource.", + "description": "Lists the decrypted value of the specified named value of the secret resource. This is a privileged operation.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/SecretResourceNameRequiredPathParam" + }, + { + "$ref": "#/parameters/SecretValueResourceNameRequiredPathParam" + } + ], + "tags": [ + "MeshSecretValues" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SecretValue" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Resources/Volumes/{volumeResourceName}": { + "put": { + "operationId": "MeshVolume_CreateOrUpdate", + "x-ms-examples": { + "CreateOrUpdateMeshVolume": { + "$ref": "./examples/Resources/Volumes/create_update.json" + } + }, + "summary": "Creates or updates a Volume resource.", + "description": "Creates a Volume resource with the specified name, description and properties. If Volume resource with the same name exists, then it is updated with the specified description and properties.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/VolumeResourceNameRequiredPathParam" + }, + { + "$ref": "#/parameters/VolumeResourceDescriptionRequiredBodyParam" + } + ], + "tags": [ + "MeshVolumes" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VolumeResourceDescription" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/VolumeResourceDescription" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + }, + "get": { + "operationId": "MeshVolume_Get", + "x-ms-examples": { + "GetVolumeResource": { + "$ref": "./examples/Resources/Volumes/get.json" + } + }, + "summary": "Gets the Volume resource with the given name.", + "description": "Gets the information about the Volume resource with the given name. The information include the description and other properties of the Volume.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/VolumeResourceNameRequiredPathParam" + } + ], + "tags": [ + "MeshVolumes" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VolumeResourceDescription" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + }, + "delete": { + "operationId": "MeshVolume_Delete", + "x-ms-examples": { + "DeleteVolumeResource": { + "$ref": "./examples/Resources/Volumes/delete.json" + } + }, + "summary": "Deletes the Volume resource.", + "description": "Deletes the Volume resource identified by the name.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/VolumeResourceNameRequiredPathParam" + } + ], + "tags": [ + "MeshVolumes" + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content - the specified volume was not found." + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Resources/Volumes": { + "get": { + "operationId": "MeshVolume_List", + "x-ms-examples": { + "ListMeshVolumes": { + "$ref": "./examples/Resources/Volumes/list.json" + } + }, + "summary": "Lists all the volume resources.", + "description": "Gets the information about all volume resources in a given resource group. The information include the description and other properties of the Volume.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + } + ], + "tags": [ + "MeshVolumes" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PagedVolumeResourceDescriptionList" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Resources/Networks/{networkResourceName}": { + "put": { + "operationId": "MeshNetwork_CreateOrUpdate", + "x-ms-examples": { + "CreateOrUpdateMeshNetwork": { + "$ref": "./examples/Resources/Networks/create_update.json" + } + }, + "summary": "Creates or updates a Network resource.", + "description": "Creates a Network resource with the specified name, description and properties. If Network resource with the same name exists, then it is updated with the specified description and properties. Network resource provides connectivity between application services.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NetworkResourceNameRequiredPathParam" + }, + { + "$ref": "#/parameters/NetworkResourceDescriptionRequiredBodyParam" + } + ], + "tags": [ + "MeshNetworks" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/NetworkResourceDescription" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/NetworkResourceDescription" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + }, + "get": { + "operationId": "MeshNetwork_Get", + "x-ms-examples": { + "GetNetworkResource": { + "$ref": "./examples/Resources/Networks/get.json" + } + }, + "summary": "Gets the Network resource with the given name.", + "description": "Gets the information about the Network resource with the given name. The information include the description and other properties of the Network.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NetworkResourceNameRequiredPathParam" + } + ], + "tags": [ + "MeshNetworks" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/NetworkResourceDescription" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + }, + "delete": { + "operationId": "MeshNetwork_Delete", + "x-ms-examples": { + "DeleteNetworkResource": { + "$ref": "./examples/Resources/Networks/delete.json" + } + }, + "summary": "Deletes the Network resource.", + "description": "Deletes the Network resource identified by the name.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NetworkResourceNameRequiredPathParam" + } + ], + "tags": [ + "MeshNetworks" + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content - the specified network was not found." + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Resources/Networks": { + "get": { + "operationId": "MeshNetwork_List", + "x-ms-examples": { + "ListMeshNetworks": { + "$ref": "./examples/Resources/Networks/list.json" + } + }, + "summary": "Lists all the network resources.", + "description": "Gets the information about all network resources in a given resource group. The information include the description and other properties of the Network.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + } + ], + "tags": [ + "MeshNetworks" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PagedNetworkResourceDescriptionList" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Resources/Applications/{applicationResourceName}": { + "put": { + "operationId": "MeshApplication_CreateOrUpdate", + "x-ms-examples": { + "CreateOrUpdateMeshApplication": { + "$ref": "./examples/Resources/Applications/create_update.json" + }, + "CreateOrUpdateMeshApplicationWithAutoScale": { + "$ref": "./examples/Resources/Applications/create_update.autoscale.json" + } + }, + "summary": "Creates or updates a Application resource.", + "description": "Creates a Application resource with the specified name, description and properties. If Application resource with the same name exists, then it is updated with the specified description and properties.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationResourceNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ApplicationResourceDescriptionRequiredBodyParam" + } + ], + "tags": [ + "MeshApplications" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ApplicationResourceDescription" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/ApplicationResourceDescription" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + }, + "get": { + "operationId": "MeshApplication_Get", + "x-ms-examples": { + "GetApplicationResource": { + "$ref": "./examples/Resources/Applications/get.json" + } + }, + "summary": "Gets the Application resource with the given name.", + "description": "Gets the information about the Application resource with the given name. The information include the description and other properties of the Application.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationResourceNameRequiredPathParam" + } + ], + "tags": [ + "MeshApplications" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ApplicationResourceDescription" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + }, + "delete": { + "operationId": "MeshApplication_Delete", + "x-ms-examples": { + "DeleteApplicationResource": { + "$ref": "./examples/Resources/Applications/delete.json" + } + }, + "summary": "Deletes the Application resource.", + "description": "Deletes the Application resource identified by the name.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationResourceNameRequiredPathParam" + } + ], + "tags": [ + "MeshApplications" + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content - the specified application was not found." + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Resources/Applications": { + "get": { + "operationId": "MeshApplication_List", + "x-ms-examples": { + "ListMeshApplications": { + "$ref": "./examples/Resources/Applications/list.json" + } + }, + "summary": "Lists all the application resources.", + "description": "Gets the information about all application resources in a given resource group. The information include the description and other properties of the Application.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + } + ], + "tags": [ + "MeshApplications" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PagedApplicationResourceDescriptionList" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Resources/Applications/{applicationResourceName}/$/GetUpgradeProgress": { + "get": { + "operationId": "MeshApplication_GetUpgradeProgress", + "x-ms-examples": { + "GetApplicationResourceUpgrade": { + "$ref": "./examples/Resources/Applications/get_upgrade.json" + } + }, + "summary": "Gets the progress of the latest upgrade performed on this application resource.", + "description": "Gets the upgrade progress information about the Application resource with the given name. The information include percentage of completion and other upgrade state information of the Application resource.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_7-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationResourceNameRequiredPathParam" + } + ], + "tags": [ + "MeshApplications" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ApplicationResourceUpgradeProgressInfo" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Resources/Applications/{applicationResourceName}/Services/{serviceResourceName}": { + "get": { + "operationId": "MeshService_Get", + "x-ms-examples": { + "GetServiceResource": { + "$ref": "./examples/Resources/Applications/Services/get.json" + } + }, + "summary": "Gets the Service resource with the given name.", + "description": "Gets the information about the Service resource with the given name. The information include the description and other properties of the Service.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationResourceNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ServiceResourceNameRequiredPathParam" + } + ], + "tags": [ + "MeshServices" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ServiceResourceDescription" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Resources/Applications/{applicationResourceName}/Services": { + "get": { + "operationId": "MeshService_List", + "x-ms-examples": { + "ListMeshServices": { + "$ref": "./examples/Resources/Applications/Services/list.json" + } + }, + "summary": "Lists all the service resources.", + "description": "Gets the information about all services of an application resource. The information include the description and other properties of the Service.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationResourceNameRequiredPathParam" + } + ], + "tags": [ + "MeshServices" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PagedServiceResourceDescriptionList" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Resources/Applications/{applicationResourceName}/Services/{serviceResourceName}/Replicas/{replicaName}/CodePackages/{codePackageName}/Logs": { + "get": { + "operationId": "MeshCodePackage_GetContainerLogs", + "x-ms-examples": { + "GetContainerLogs": { + "$ref": "./examples/Resources/Applications/Services/Replicas/CodePackages/get_logs.json" + } + }, + "summary": "Gets the logs from the container.", + "description": "Gets the logs for the container of the specified code package of the service replica.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationResourceNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ServiceResourceNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ReplicaNameRequiredPathParam" + }, + { + "$ref": "#/parameters/CodePackageNameRequiredPathParam" + }, + { + "$ref": "#/parameters/TailOptionalQueryParam" + } + ], + "tags": [ + "MeshCodePackages" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ContainerLogs" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Resources/Applications/{applicationResourceName}/Services/{serviceResourceName}/Replicas/{replicaName}": { + "get": { + "operationId": "MeshServiceReplica_Get", + "x-ms-examples": { + "GetServiceReplica": { + "$ref": "./examples/Resources/Applications/Services/Replicas/get.json" + } + }, + "summary": "Gets the given replica of the service of an application.", + "description": "Gets the information about the service replica with the given name. The information include the description and other properties of the service replica.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationResourceNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ServiceResourceNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ReplicaNameRequiredPathParam" + } + ], + "tags": [ + "MeshServiceReplicas" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ServiceReplicaDescription" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Resources/Applications/{applicationResourceName}/Services/{serviceResourceName}/Replicas": { + "get": { + "operationId": "MeshServiceReplica_List", + "x-ms-examples": { + "ListMeshServiceReplicas": { + "$ref": "./examples/Resources/Applications/Services/Replicas/list.json" + } + }, + "summary": "Lists all the replicas of a service.", + "description": "Gets the information about all replicas of a service. The information include the description and other properties of the service replica.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationResourceNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ServiceResourceNameRequiredPathParam" + } + ], + "tags": [ + "MeshServiceReplicas" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PagedServiceReplicaDescriptionList" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Resources/Gateways/{gatewayResourceName}": { + "put": { + "operationId": "MeshGateway_CreateOrUpdate", + "x-ms-examples": { + "CreateOrUpdateMeshGateway": { + "$ref": "./examples/Resources/Gateways/create_update.json" + } + }, + "summary": "Creates or updates a Gateway resource.", + "description": "Creates a Gateway resource with the specified name, description and properties. If Gateway resource with the same name exists, then it is updated with the specified description and properties. Use Gateway resource to provide public connectivity to application services.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/GatewayResourceNameRequiredPathParam" + }, + { + "$ref": "#/parameters/GatewayResourceDescriptionRequiredBodyParam" + } + ], + "tags": [ + "MeshGateways" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GatewayResourceDescription" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/GatewayResourceDescription" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + }, + "get": { + "operationId": "MeshGateway_Get", + "x-ms-examples": { + "GetGatewayResource": { + "$ref": "./examples/Resources/Gateways/get.json" + } + }, + "summary": "Gets the Gateway resource with the given name.", + "description": "Gets the information about the Gateway resource with the given name. The information include the description and other properties of the Gateway.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/GatewayResourceNameRequiredPathParam" + } + ], + "tags": [ + "MeshGateways" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GatewayResourceDescription" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + }, + "delete": { + "operationId": "MeshGateway_Delete", + "x-ms-examples": { + "DeleteGatewayResource": { + "$ref": "./examples/Resources/Gateways/delete.json" + } + }, + "summary": "Deletes the Gateway resource.", + "description": "Deletes the Gateway resource identified by the name.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/GatewayResourceNameRequiredPathParam" + } + ], + "tags": [ + "MeshGateways" + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content - the specified gateway was not found." + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Resources/Gateways": { + "get": { + "operationId": "MeshGateway_List", + "x-ms-examples": { + "ListMeshGateways": { + "$ref": "./examples/Resources/Gateways/list.json" + } + }, + "summary": "Lists all the gateway resources.", + "description": "Gets the information about all gateway resources in a given resource group. The information include the description and other properties of the Gateway.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + } + ], + "tags": [ + "MeshGateways" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PagedGatewayResourceDescriptionList" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + } + }, + "definitions": { + "HealthState": { + "type": "string", + "description": "The health state of a Service Fabric entity such as Cluster, Node, Application, Service, Partition, Replica etc.", + "enum": [ + "Invalid", + "Ok", + "Warning", + "Error", + "Unknown" + ], + "x-ms-enum": { + "name": "HealthState", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates an invalid health state. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "Ok", + "description": "Indicates the health state is okay. The value is 1." + }, + { + "value": "Warning", + "description": "Indicates the health state is at a warning level. The value is 2." + }, + { + "value": "Error", + "description": "Indicates the health state is at an error level. Error health state should be investigated, as they can impact the correct functionality of the cluster. The value is 3." + }, + { + "value": "Unknown", + "description": "Indicates an unknown health status. The value is 65535." + } + ] + } + }, + "FabricErrorCodes": { + "type": "string", + "description": "Defines the fabric error codes that be returned as part of the error object in response to Service Fabric API operations that are not successful. Following are the error code values that can be returned for a specific HTTP status code.\n\n - Possible values of the error code for HTTP status code 400 (Bad Request)\n - \"FABRIC_E_INVALID_PARTITION_KEY\"\n - \"FABRIC_E_IMAGEBUILDER_VALIDATION_ERROR\"\n - \"FABRIC_E_INVALID_ADDRESS\"\n - \"FABRIC_E_APPLICATION_NOT_UPGRADING\"\n - \"FABRIC_E_APPLICATION_UPGRADE_VALIDATION_ERROR\"\n - \"FABRIC_E_FABRIC_NOT_UPGRADING\"\n - \"FABRIC_E_FABRIC_UPGRADE_VALIDATION_ERROR\"\n - \"FABRIC_E_INVALID_CONFIGURATION\"\n - \"FABRIC_E_INVALID_NAME_URI\"\n - \"FABRIC_E_PATH_TOO_LONG\"\n - \"FABRIC_E_KEY_TOO_LARGE\"\n - \"FABRIC_E_SERVICE_AFFINITY_CHAIN_NOT_SUPPORTED\"\n - \"FABRIC_E_INVALID_ATOMIC_GROUP\"\n - \"FABRIC_E_VALUE_EMPTY\"\n - \"FABRIC_E_BACKUP_IS_ENABLED\"\n - \"FABRIC_E_RESTORE_SOURCE_TARGET_PARTITION_MISMATCH\"\n - \"FABRIC_E_INVALID_FOR_STATELESS_SERVICES\"\n - \"FABRIC_E_INVALID_SERVICE_SCALING_POLICY\"\n - \"E_INVALIDARG\"\n\n - Possible values of the error code for HTTP status code 404 (Not Found)\n - \"FABRIC_E_NODE_NOT_FOUND\"\n - \"FABRIC_E_APPLICATION_TYPE_NOT_FOUND\"\n - \"FABRIC_E_APPLICATION_NOT_FOUND\"\n - \"FABRIC_E_SERVICE_TYPE_NOT_FOUND\"\n - \"FABRIC_E_SERVICE_DOES_NOT_EXIST\"\n - \"FABRIC_E_SERVICE_TYPE_TEMPLATE_NOT_FOUND\"\n - \"FABRIC_E_CONFIGURATION_SECTION_NOT_FOUND\"\n - \"FABRIC_E_PARTITION_NOT_FOUND\"\n - \"FABRIC_E_REPLICA_DOES_NOT_EXIST\"\n - \"FABRIC_E_SERVICE_GROUP_DOES_NOT_EXIST\"\n - \"FABRIC_E_CONFIGURATION_PARAMETER_NOT_FOUND\"\n - \"FABRIC_E_DIRECTORY_NOT_FOUND\"\n - \"FABRIC_E_FABRIC_VERSION_NOT_FOUND\"\n - \"FABRIC_E_FILE_NOT_FOUND\"\n - \"FABRIC_E_NAME_DOES_NOT_EXIST\"\n - \"FABRIC_E_PROPERTY_DOES_NOT_EXIST\"\n - \"FABRIC_E_ENUMERATION_COMPLETED\"\n - \"FABRIC_E_SERVICE_MANIFEST_NOT_FOUND\"\n - \"FABRIC_E_KEY_NOT_FOUND\"\n - \"FABRIC_E_HEALTH_ENTITY_NOT_FOUND\"\n - \"FABRIC_E_BACKUP_NOT_ENABLED\"\n - \"FABRIC_E_BACKUP_POLICY_NOT_EXISTING\"\n - \"FABRIC_E_FAULT_ANALYSIS_SERVICE_NOT_EXISTING\"\n - \"FABRIC_E_IMAGEBUILDER_RESERVED_DIRECTORY_ERROR\"\n\n - Possible values of the error code for HTTP status code 409 (Conflict)\n - \"FABRIC_E_APPLICATION_TYPE_ALREADY_EXISTS\"\n - \"FABRIC_E_APPLICATION_ALREADY_EXISTS\"\n - \"FABRIC_E_APPLICATION_ALREADY_IN_TARGET_VERSION\"\n - \"FABRIC_E_APPLICATION_TYPE_PROVISION_IN_PROGRESS\"\n - \"FABRIC_E_APPLICATION_UPGRADE_IN_PROGRESS\"\n - \"FABRIC_E_SERVICE_ALREADY_EXISTS\"\n - \"FABRIC_E_SERVICE_GROUP_ALREADY_EXISTS\"\n - \"FABRIC_E_APPLICATION_TYPE_IN_USE\"\n - \"FABRIC_E_FABRIC_ALREADY_IN_TARGET_VERSION\"\n - \"FABRIC_E_FABRIC_VERSION_ALREADY_EXISTS\"\n - \"FABRIC_E_FABRIC_VERSION_IN_USE\"\n - \"FABRIC_E_FABRIC_UPGRADE_IN_PROGRESS\"\n - \"FABRIC_E_NAME_ALREADY_EXISTS\"\n - \"FABRIC_E_NAME_NOT_EMPTY\"\n - \"FABRIC_E_PROPERTY_CHECK_FAILED\"\n - \"FABRIC_E_SERVICE_METADATA_MISMATCH\"\n - \"FABRIC_E_SERVICE_TYPE_MISMATCH\"\n - \"FABRIC_E_HEALTH_STALE_REPORT\"\n - \"FABRIC_E_SEQUENCE_NUMBER_CHECK_FAILED\"\n - \"FABRIC_E_NODE_HAS_NOT_STOPPED_YET\"\n - \"FABRIC_E_INSTANCE_ID_MISMATCH\"\n - \"FABRIC_E_BACKUP_IN_PROGRESS\"\n - \"FABRIC_E_RESTORE_IN_PROGRESS\"\n - \"FABRIC_E_BACKUP_POLICY_ALREADY_EXISTING\"\n\n - Possible values of the error code for HTTP status code 413 (Request Entity Too Large)\n - \"FABRIC_E_VALUE_TOO_LARGE\"\n\n - Possible values of the error code for HTTP status code 500 (Internal Server Error)\n - \"FABRIC_E_NODE_IS_UP\"\n - \"E_FAIL\"\n - \"FABRIC_E_SINGLE_INSTANCE_APPLICATION_ALREADY_EXISTS\"\n - \"FABRIC_E_SINGLE_INSTANCE_APPLICATION_NOT_FOUND\"\n - \"FABRIC_E_VOLUME_ALREADY_EXISTS\"\n - \"FABRIC_E_VOLUME_NOT_FOUND\"\n - \"SerializationError\"\n\n - Possible values of the error code for HTTP status code 503 (Service Unavailable)\n - \"FABRIC_E_NO_WRITE_QUORUM\"\n - \"FABRIC_E_NOT_PRIMARY\"\n - \"FABRIC_E_NOT_READY\"\n - \"FABRIC_E_RECONFIGURATION_PENDING\"\n - \"FABRIC_E_SERVICE_OFFLINE\"\n - \"E_ABORT\"\n - \"FABRIC_E_VALUE_TOO_LARGE\"\n\n - Possible values of the error code for HTTP status code 504 (Gateway Timeout)\n - \"FABRIC_E_COMMUNICATION_ERROR\"\n - \"FABRIC_E_OPERATION_NOT_COMPLETE\"\n - \"FABRIC_E_TIMEOUT\"", + "enum": [ + "FABRIC_E_INVALID_PARTITION_KEY", + "FABRIC_E_IMAGEBUILDER_VALIDATION_ERROR", + "FABRIC_E_INVALID_ADDRESS", + "FABRIC_E_APPLICATION_NOT_UPGRADING", + "FABRIC_E_APPLICATION_UPGRADE_VALIDATION_ERROR", + "FABRIC_E_FABRIC_NOT_UPGRADING", + "FABRIC_E_FABRIC_UPGRADE_VALIDATION_ERROR", + "FABRIC_E_INVALID_CONFIGURATION", + "FABRIC_E_INVALID_NAME_URI", + "FABRIC_E_PATH_TOO_LONG", + "FABRIC_E_KEY_TOO_LARGE", + "FABRIC_E_SERVICE_AFFINITY_CHAIN_NOT_SUPPORTED", + "FABRIC_E_INVALID_ATOMIC_GROUP", + "FABRIC_E_VALUE_EMPTY", + "FABRIC_E_NODE_NOT_FOUND", + "FABRIC_E_APPLICATION_TYPE_NOT_FOUND", + "FABRIC_E_APPLICATION_NOT_FOUND", + "FABRIC_E_SERVICE_TYPE_NOT_FOUND", + "FABRIC_E_SERVICE_DOES_NOT_EXIST", + "FABRIC_E_SERVICE_TYPE_TEMPLATE_NOT_FOUND", + "FABRIC_E_CONFIGURATION_SECTION_NOT_FOUND", + "FABRIC_E_PARTITION_NOT_FOUND", + "FABRIC_E_REPLICA_DOES_NOT_EXIST", + "FABRIC_E_SERVICE_GROUP_DOES_NOT_EXIST", + "FABRIC_E_CONFIGURATION_PARAMETER_NOT_FOUND", + "FABRIC_E_DIRECTORY_NOT_FOUND", + "FABRIC_E_FABRIC_VERSION_NOT_FOUND", + "FABRIC_E_FILE_NOT_FOUND", + "FABRIC_E_NAME_DOES_NOT_EXIST", + "FABRIC_E_PROPERTY_DOES_NOT_EXIST", + "FABRIC_E_ENUMERATION_COMPLETED", + "FABRIC_E_SERVICE_MANIFEST_NOT_FOUND", + "FABRIC_E_KEY_NOT_FOUND", + "FABRIC_E_HEALTH_ENTITY_NOT_FOUND", + "FABRIC_E_APPLICATION_TYPE_ALREADY_EXISTS", + "FABRIC_E_APPLICATION_ALREADY_EXISTS", + "FABRIC_E_APPLICATION_ALREADY_IN_TARGET_VERSION", + "FABRIC_E_APPLICATION_TYPE_PROVISION_IN_PROGRESS", + "FABRIC_E_APPLICATION_UPGRADE_IN_PROGRESS", + "FABRIC_E_SERVICE_ALREADY_EXISTS", + "FABRIC_E_SERVICE_GROUP_ALREADY_EXISTS", + "FABRIC_E_APPLICATION_TYPE_IN_USE", + "FABRIC_E_FABRIC_ALREADY_IN_TARGET_VERSION", + "FABRIC_E_FABRIC_VERSION_ALREADY_EXISTS", + "FABRIC_E_FABRIC_VERSION_IN_USE", + "FABRIC_E_FABRIC_UPGRADE_IN_PROGRESS", + "FABRIC_E_NAME_ALREADY_EXISTS", + "FABRIC_E_NAME_NOT_EMPTY", + "FABRIC_E_PROPERTY_CHECK_FAILED", + "FABRIC_E_SERVICE_METADATA_MISMATCH", + "FABRIC_E_SERVICE_TYPE_MISMATCH", + "FABRIC_E_HEALTH_STALE_REPORT", + "FABRIC_E_SEQUENCE_NUMBER_CHECK_FAILED", + "FABRIC_E_NODE_HAS_NOT_STOPPED_YET", + "FABRIC_E_INSTANCE_ID_MISMATCH", + "FABRIC_E_VALUE_TOO_LARGE", + "FABRIC_E_NO_WRITE_QUORUM", + "FABRIC_E_NOT_PRIMARY", + "FABRIC_E_NOT_READY", + "FABRIC_E_RECONFIGURATION_PENDING", + "FABRIC_E_SERVICE_OFFLINE", + "E_ABORT", + "FABRIC_E_COMMUNICATION_ERROR", + "FABRIC_E_OPERATION_NOT_COMPLETE", + "FABRIC_E_TIMEOUT", + "FABRIC_E_NODE_IS_UP", + "E_FAIL", + "FABRIC_E_BACKUP_IS_ENABLED", + "FABRIC_E_RESTORE_SOURCE_TARGET_PARTITION_MISMATCH", + "FABRIC_E_INVALID_FOR_STATELESS_SERVICES", + "FABRIC_E_BACKUP_NOT_ENABLED", + "FABRIC_E_BACKUP_POLICY_NOT_EXISTING", + "FABRIC_E_FAULT_ANALYSIS_SERVICE_NOT_EXISTING", + "FABRIC_E_BACKUP_IN_PROGRESS", + "FABRIC_E_RESTORE_IN_PROGRESS", + "FABRIC_E_BACKUP_POLICY_ALREADY_EXISTING", + "FABRIC_E_INVALID_SERVICE_SCALING_POLICY", + "E_INVALIDARG", + "FABRIC_E_SINGLE_INSTANCE_APPLICATION_ALREADY_EXISTS", + "FABRIC_E_SINGLE_INSTANCE_APPLICATION_NOT_FOUND", + "FABRIC_E_VOLUME_ALREADY_EXISTS", + "FABRIC_E_VOLUME_NOT_FOUND", + "SerializationError", + "FABRIC_E_IMAGEBUILDER_RESERVED_DIRECTORY_ERROR" + ], + "x-ms-enum": { + "name": "FabricErrorCodes", + "modelAsString": true, + "values": [ + { + "value": "FABRIC_E_INVALID_PARTITION_KEY" + }, + { + "value": "FABRIC_E_IMAGEBUILDER_VALIDATION_ERROR" + }, + { + "value": "FABRIC_E_INVALID_ADDRESS" + }, + { + "value": "FABRIC_E_APPLICATION_NOT_UPGRADING" + }, + { + "value": "FABRIC_E_APPLICATION_UPGRADE_VALIDATION_ERROR" + }, + { + "value": "FABRIC_E_FABRIC_NOT_UPGRADING" + }, + { + "value": "FABRIC_E_FABRIC_UPGRADE_VALIDATION_ERROR" + }, + { + "value": "FABRIC_E_INVALID_CONFIGURATION" + }, + { + "value": "FABRIC_E_INVALID_NAME_URI" + }, + { + "value": "FABRIC_E_PATH_TOO_LONG" + }, + { + "value": "FABRIC_E_KEY_TOO_LARGE" + }, + { + "value": "FABRIC_E_SERVICE_AFFINITY_CHAIN_NOT_SUPPORTED" + }, + { + "value": "FABRIC_E_INVALID_ATOMIC_GROUP" + }, + { + "value": "FABRIC_E_VALUE_EMPTY" + }, + { + "value": "FABRIC_E_NODE_NOT_FOUND" + }, + { + "value": "FABRIC_E_APPLICATION_TYPE_NOT_FOUND" + }, + { + "value": "FABRIC_E_APPLICATION_NOT_FOUND" + }, + { + "value": "FABRIC_E_SERVICE_TYPE_NOT_FOUND" + }, + { + "value": "FABRIC_E_SERVICE_DOES_NOT_EXIST" + }, + { + "value": "FABRIC_E_SERVICE_TYPE_TEMPLATE_NOT_FOUND" + }, + { + "value": "FABRIC_E_CONFIGURATION_SECTION_NOT_FOUND" + }, + { + "value": "FABRIC_E_PARTITION_NOT_FOUND" + }, + { + "value": "FABRIC_E_REPLICA_DOES_NOT_EXIST" + }, + { + "value": "FABRIC_E_SERVICE_GROUP_DOES_NOT_EXIST" + }, + { + "value": "FABRIC_E_CONFIGURATION_PARAMETER_NOT_FOUND" + }, + { + "value": "FABRIC_E_DIRECTORY_NOT_FOUND" + }, + { + "value": "FABRIC_E_FABRIC_VERSION_NOT_FOUND" + }, + { + "value": "FABRIC_E_FILE_NOT_FOUND" + }, + { + "value": "FABRIC_E_NAME_DOES_NOT_EXIST" + }, + { + "value": "FABRIC_E_PROPERTY_DOES_NOT_EXIST" + }, + { + "value": "FABRIC_E_ENUMERATION_COMPLETED" + }, + { + "value": "FABRIC_E_SERVICE_MANIFEST_NOT_FOUND" + }, + { + "value": "FABRIC_E_KEY_NOT_FOUND" + }, + { + "value": "FABRIC_E_HEALTH_ENTITY_NOT_FOUND" + }, + { + "value": "FABRIC_E_APPLICATION_TYPE_ALREADY_EXISTS" + }, + { + "value": "FABRIC_E_APPLICATION_ALREADY_EXISTS" + }, + { + "value": "FABRIC_E_APPLICATION_ALREADY_IN_TARGET_VERSION" + }, + { + "value": "FABRIC_E_APPLICATION_TYPE_PROVISION_IN_PROGRESS" + }, + { + "value": "FABRIC_E_APPLICATION_UPGRADE_IN_PROGRESS" + }, + { + "value": "FABRIC_E_SERVICE_ALREADY_EXISTS" + }, + { + "value": "FABRIC_E_SERVICE_GROUP_ALREADY_EXISTS" + }, + { + "value": "FABRIC_E_APPLICATION_TYPE_IN_USE" + }, + { + "value": "FABRIC_E_FABRIC_ALREADY_IN_TARGET_VERSION" + }, + { + "value": "FABRIC_E_FABRIC_VERSION_ALREADY_EXISTS" + }, + { + "value": "FABRIC_E_FABRIC_VERSION_IN_USE" + }, + { + "value": "FABRIC_E_FABRIC_UPGRADE_IN_PROGRESS" + }, + { + "value": "FABRIC_E_NAME_ALREADY_EXISTS" + }, + { + "value": "FABRIC_E_NAME_NOT_EMPTY" + }, + { + "value": "FABRIC_E_PROPERTY_CHECK_FAILED" + }, + { + "value": "FABRIC_E_SERVICE_METADATA_MISMATCH" + }, + { + "value": "FABRIC_E_SERVICE_TYPE_MISMATCH" + }, + { + "value": "FABRIC_E_HEALTH_STALE_REPORT" + }, + { + "value": "FABRIC_E_SEQUENCE_NUMBER_CHECK_FAILED" + }, + { + "value": "FABRIC_E_NODE_HAS_NOT_STOPPED_YET" + }, + { + "value": "FABRIC_E_INSTANCE_ID_MISMATCH" + }, + { + "value": "FABRIC_E_VALUE_TOO_LARGE" + }, + { + "value": "FABRIC_E_NO_WRITE_QUORUM" + }, + { + "value": "FABRIC_E_NOT_PRIMARY" + }, + { + "value": "FABRIC_E_NOT_READY" + }, + { + "value": "FABRIC_E_RECONFIGURATION_PENDING" + }, + { + "value": "FABRIC_E_SERVICE_OFFLINE" + }, + { + "value": "E_ABORT" + }, + { + "value": "FABRIC_E_COMMUNICATION_ERROR" + }, + { + "value": "FABRIC_E_OPERATION_NOT_COMPLETE" + }, + { + "value": "FABRIC_E_TIMEOUT" + }, + { + "value": "FABRIC_E_NODE_IS_UP" + }, + { + "value": "E_FAIL" + }, + { + "value": "FABRIC_E_BACKUP_IS_ENABLED" + }, + { + "value": "FABRIC_E_RESTORE_SOURCE_TARGET_PARTITION_MISMATCH" + }, + { + "value": "FABRIC_E_INVALID_FOR_STATELESS_SERVICES" + }, + { + "value": "FABRIC_E_BACKUP_NOT_ENABLED" + }, + { + "value": "FABRIC_E_BACKUP_POLICY_NOT_EXISTING" + }, + { + "value": "FABRIC_E_FAULT_ANALYSIS_SERVICE_NOT_EXISTING" + }, + { + "value": "FABRIC_E_BACKUP_IN_PROGRESS" + }, + { + "value": "FABRIC_E_RESTORE_IN_PROGRESS" + }, + { + "value": "FABRIC_E_BACKUP_POLICY_ALREADY_EXISTING" + }, + { + "value": "FABRIC_E_INVALID_SERVICE_SCALING_POLICY" + }, + { + "value": "E_INVALIDARG" + }, + { + "value": "FABRIC_E_SINGLE_INSTANCE_APPLICATION_ALREADY_EXISTS" + }, + { + "value": "FABRIC_E_SINGLE_INSTANCE_APPLICATION_NOT_FOUND" + }, + { + "value": "FABRIC_E_VOLUME_ALREADY_EXISTS" + }, + { + "value": "FABRIC_E_VOLUME_NOT_FOUND" + }, + { + "value": "SerializationError" + }, + { + "value": "FABRIC_E_IMAGEBUILDER_RESERVED_DIRECTORY_ERROR" + } + ] + } + }, + "FabricError": { + "description": "The REST API operations for Service Fabric return standard HTTP status codes. This type defines the additional information returned from the Service Fabric API operations that are not successful.", + "properties": { + "Error": { + "$ref": "#/definitions/FabricErrorError", + "description": "Error object containing error code and error message." + } + }, + "required": [ + "Error" + ] + }, + "FabricErrorError": { + "description": "Error object containing error code and error message.", + "properties": { + "Code": { + "$ref": "#/definitions/FabricErrorCodes", + "description": "Defines the fabric error codes that be returned as part of the error object in response to Service Fabric API operations that are not successful. Following are the error code values that can be returned for a specific HTTP status code.\n\n - Possible values of the error code for HTTP status code 400 (Bad Request)\n - \"FABRIC_E_INVALID_PARTITION_KEY\"\n - \"FABRIC_E_IMAGEBUILDER_VALIDATION_ERROR\"\n - \"FABRIC_E_INVALID_ADDRESS\"\n - \"FABRIC_E_APPLICATION_NOT_UPGRADING\"\n - \"FABRIC_E_APPLICATION_UPGRADE_VALIDATION_ERROR\"\n - \"FABRIC_E_FABRIC_NOT_UPGRADING\"\n - \"FABRIC_E_FABRIC_UPGRADE_VALIDATION_ERROR\"\n - \"FABRIC_E_INVALID_CONFIGURATION\"\n - \"FABRIC_E_INVALID_NAME_URI\"\n - \"FABRIC_E_PATH_TOO_LONG\"\n - \"FABRIC_E_KEY_TOO_LARGE\"\n - \"FABRIC_E_SERVICE_AFFINITY_CHAIN_NOT_SUPPORTED\"\n - \"FABRIC_E_INVALID_ATOMIC_GROUP\"\n - \"FABRIC_E_VALUE_EMPTY\"\n - \"FABRIC_E_BACKUP_IS_ENABLED\"\n - \"FABRIC_E_RESTORE_SOURCE_TARGET_PARTITION_MISMATCH\"\n - \"FABRIC_E_INVALID_FOR_STATELESS_SERVICES\"\n - \"FABRIC_E_INVALID_SERVICE_SCALING_POLICY\"\n - \"E_INVALIDARG\"\n\n - Possible values of the error code for HTTP status code 404 (Not Found)\n - \"FABRIC_E_NODE_NOT_FOUND\"\n - \"FABRIC_E_APPLICATION_TYPE_NOT_FOUND\"\n - \"FABRIC_E_APPLICATION_NOT_FOUND\"\n - \"FABRIC_E_SERVICE_TYPE_NOT_FOUND\"\n - \"FABRIC_E_SERVICE_DOES_NOT_EXIST\"\n - \"FABRIC_E_SERVICE_TYPE_TEMPLATE_NOT_FOUND\"\n - \"FABRIC_E_CONFIGURATION_SECTION_NOT_FOUND\"\n - \"FABRIC_E_PARTITION_NOT_FOUND\"\n - \"FABRIC_E_REPLICA_DOES_NOT_EXIST\"\n - \"FABRIC_E_SERVICE_GROUP_DOES_NOT_EXIST\"\n - \"FABRIC_E_CONFIGURATION_PARAMETER_NOT_FOUND\"\n - \"FABRIC_E_DIRECTORY_NOT_FOUND\"\n - \"FABRIC_E_FABRIC_VERSION_NOT_FOUND\"\n - \"FABRIC_E_FILE_NOT_FOUND\"\n - \"FABRIC_E_NAME_DOES_NOT_EXIST\"\n - \"FABRIC_E_PROPERTY_DOES_NOT_EXIST\"\n - \"FABRIC_E_ENUMERATION_COMPLETED\"\n - \"FABRIC_E_SERVICE_MANIFEST_NOT_FOUND\"\n - \"FABRIC_E_KEY_NOT_FOUND\"\n - \"FABRIC_E_HEALTH_ENTITY_NOT_FOUND\"\n - \"FABRIC_E_BACKUP_NOT_ENABLED\"\n - \"FABRIC_E_BACKUP_POLICY_NOT_EXISTING\"\n - \"FABRIC_E_FAULT_ANALYSIS_SERVICE_NOT_EXISTING\"\n - \"FABRIC_E_IMAGEBUILDER_RESERVED_DIRECTORY_ERROR\"\n\n - Possible values of the error code for HTTP status code 409 (Conflict)\n - \"FABRIC_E_APPLICATION_TYPE_ALREADY_EXISTS\"\n - \"FABRIC_E_APPLICATION_ALREADY_EXISTS\"\n - \"FABRIC_E_APPLICATION_ALREADY_IN_TARGET_VERSION\"\n - \"FABRIC_E_APPLICATION_TYPE_PROVISION_IN_PROGRESS\"\n - \"FABRIC_E_APPLICATION_UPGRADE_IN_PROGRESS\"\n - \"FABRIC_E_SERVICE_ALREADY_EXISTS\"\n - \"FABRIC_E_SERVICE_GROUP_ALREADY_EXISTS\"\n - \"FABRIC_E_APPLICATION_TYPE_IN_USE\"\n - \"FABRIC_E_FABRIC_ALREADY_IN_TARGET_VERSION\"\n - \"FABRIC_E_FABRIC_VERSION_ALREADY_EXISTS\"\n - \"FABRIC_E_FABRIC_VERSION_IN_USE\"\n - \"FABRIC_E_FABRIC_UPGRADE_IN_PROGRESS\"\n - \"FABRIC_E_NAME_ALREADY_EXISTS\"\n - \"FABRIC_E_NAME_NOT_EMPTY\"\n - \"FABRIC_E_PROPERTY_CHECK_FAILED\"\n - \"FABRIC_E_SERVICE_METADATA_MISMATCH\"\n - \"FABRIC_E_SERVICE_TYPE_MISMATCH\"\n - \"FABRIC_E_HEALTH_STALE_REPORT\"\n - \"FABRIC_E_SEQUENCE_NUMBER_CHECK_FAILED\"\n - \"FABRIC_E_NODE_HAS_NOT_STOPPED_YET\"\n - \"FABRIC_E_INSTANCE_ID_MISMATCH\"\n - \"FABRIC_E_BACKUP_IN_PROGRESS\"\n - \"FABRIC_E_RESTORE_IN_PROGRESS\"\n - \"FABRIC_E_BACKUP_POLICY_ALREADY_EXISTING\"\n\n - Possible values of the error code for HTTP status code 413 (Request Entity Too Large)\n - \"FABRIC_E_VALUE_TOO_LARGE\"\n\n - Possible values of the error code for HTTP status code 500 (Internal Server Error)\n - \"FABRIC_E_NODE_IS_UP\"\n - \"E_FAIL\"\n - \"FABRIC_E_SINGLE_INSTANCE_APPLICATION_ALREADY_EXISTS\"\n - \"FABRIC_E_SINGLE_INSTANCE_APPLICATION_NOT_FOUND\"\n - \"FABRIC_E_VOLUME_ALREADY_EXISTS\"\n - \"FABRIC_E_VOLUME_NOT_FOUND\"\n - \"SerializationError\"\n\n - Possible values of the error code for HTTP status code 503 (Service Unavailable)\n - \"FABRIC_E_NO_WRITE_QUORUM\"\n - \"FABRIC_E_NOT_PRIMARY\"\n - \"FABRIC_E_NOT_READY\"\n - \"FABRIC_E_RECONFIGURATION_PENDING\"\n - \"FABRIC_E_SERVICE_OFFLINE\"\n - \"E_ABORT\"\n - \"FABRIC_E_VALUE_TOO_LARGE\"\n\n - Possible values of the error code for HTTP status code 504 (Gateway Timeout)\n - \"FABRIC_E_COMMUNICATION_ERROR\"\n - \"FABRIC_E_OPERATION_NOT_COMPLETE\"\n - \"FABRIC_E_TIMEOUT\"" + }, + "Message": { + "type": "string", + "description": "Error message." + } + }, + "required": [ + "Code" + ] + }, + "ContainerLogs": { + "description": "Container logs.", + "properties": { + "Content": { + "type": "string", + "description": "Container logs." + } + } + }, + "AadMetadata": { + "description": "Azure Active Directory metadata used for secured connection to cluster.", + "properties": { + "authority": { + "type": "string", + "description": "The AAD authority url." + }, + "client": { + "type": "string", + "description": "The AAD client application Id." + }, + "cluster": { + "type": "string", + "description": "The AAD cluster application Id." + }, + "login": { + "type": "string", + "description": "The AAD login url." + }, + "redirect": { + "type": "string", + "description": "The client application redirect address." + }, + "tenant": { + "type": "string", + "description": "The AAD tenant Id." + } + } + }, + "AadMetadataObject": { + "description": "Azure Active Directory metadata object used for secured connection to cluster.", + "properties": { + "type": { + "type": "string", + "description": "The client authentication method." + }, + "metadata": { + "$ref": "#/definitions/AadMetadata", + "description": "Azure Active Directory metadata used for secured connection to cluster." + } + } + }, + "AnalysisEventMetadata": { + "description": "Metadata about an Analysis Event.", + "properties": { + "Delay": { + "type": "string", + "format": "duration", + "description": "The analysis delay." + }, + "Duration": { + "type": "string", + "format": "duration", + "description": "The duration of analysis." + } + } + }, + "ApplicationDefinitionKind": { + "type": "string", + "description": "The mechanism used to define a Service Fabric application.", + "enum": [ + "Invalid", + "ServiceFabricApplicationDescription", + "Compose" + ], + "x-ms-enum": { + "name": "ApplicationDefinitionKind", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the application definition kind is invalid. All Service Fabric enumerations have the invalid type. The value is 65535." + }, + { + "value": "ServiceFabricApplicationDescription", + "description": "Indicates the application is defined by a Service Fabric application description. The value is 0." + }, + { + "value": "Compose", + "description": "Indicates the application is defined by compose file(s). The value is 1." + } + ] + } + }, + "ApplicationEvent": { + "description": "Represents the base for all Application Events.", + "allOf": [ + { + "$ref": "#/definitions/FabricEvent" + } + ], + "properties": { + "ApplicationId": { + "$ref": "#/definitions/ApplicationId", + "description": "The identity of the application. This is an encoded representation of the application name. This is used in the REST APIs to identify the application resource.\nStarting in version 6.0, hierarchical names are delimited with the \"\\~\" character. For example, if the application name is \"fabric:/myapp/app1\",\nthe application identity would be \"myapp\\~app1\" in 6.0+ and \"myapp/app1\" in previous versions." + } + }, + "required": [ + "ApplicationId" + ], + "x-ms-discriminator-value": "ApplicationEvent" + }, + "ApplicationEventList": { + "description": "A list of ApplicationEvent objects.", + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationEvent" + } + }, + "ApplicationHealth": { + "description": "Represents the health of the application. Contains the application aggregated health state and the service and deployed application health states.", + "allOf": [ + { + "$ref": "#/definitions/EntityHealth" + } + ], + "properties": { + "Name": { + "$ref": "#/definitions/ApplicationName", + "description": "The name of the application, including the 'fabric:' URI scheme." + }, + "ServiceHealthStates": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceHealthState" + }, + "description": "Service health states as found in the health store." + }, + "DeployedApplicationHealthStates": { + "type": "array", + "items": { + "$ref": "#/definitions/DeployedApplicationHealthState" + }, + "description": "Deployed application health states as found in the health store." + } + } + }, + "ApplicationHealthEvaluation": { + "x-ms-discriminator-value": "Application", + "description": "Represents health evaluation for an application, containing information about the data and the algorithm used by the health store to evaluate health.", + "allOf": [ + { + "$ref": "#/definitions/HealthEvaluation" + } + ], + "properties": { + "ApplicationName": { + "$ref": "#/definitions/ApplicationName", + "description": "The name of the application, including the 'fabric:' URI scheme." + }, + "UnhealthyEvaluations": { + "$ref": "#/definitions/UnhealthyEvaluations", + "description": "List of unhealthy evaluations that led to the current aggregated health state of the application. The types of the unhealthy evaluations can be DeployedApplicationsHealthEvaluation, ServicesHealthEvaluation or EventHealthEvaluation." + } + } + }, + "ApplicationHealthPolicies": { + "description": "Defines the application health policy map used to evaluate the health of an application or one of its children entities.", + "properties": { + "ApplicationHealthPolicyMap": { + "$ref": "#/definitions/ApplicationHealthPolicyMap", + "description": "The wrapper that contains the map with application health policies used to evaluate specific applications in the cluster." + } + } + }, + "ApplicationHealthPolicy": { + "description": "Defines a health policy used to evaluate the health of an application or one of its children entities.", + "properties": { + "ConsiderWarningAsError": { + "type": "boolean", + "description": "Indicates whether warnings are treated with the same severity as errors.", + "default": false + }, + "MaxPercentUnhealthyDeployedApplications": { + "type": "integer", + "description": "The maximum allowed percentage of unhealthy deployed applications. Allowed values are Byte values from zero to 100.\nThe percentage represents the maximum tolerated percentage of deployed applications that can be unhealthy before the application is considered in error.\nThis is calculated by dividing the number of unhealthy deployed applications over the number of nodes where the application is currently deployed on in the cluster.\nThe computation rounds up to tolerate one failure on small numbers of nodes. Default percentage is zero.", + "default": 0 + }, + "DefaultServiceTypeHealthPolicy": { + "$ref": "#/definitions/ServiceTypeHealthPolicy", + "description": "The health policy used by default to evaluate the health of a service type." + }, + "ServiceTypeHealthPolicyMap": { + "$ref": "#/definitions/ServiceTypeHealthPolicyMap", + "description": "The map with service type health policy per service type name. The map is empty by default." + } + } + }, + "ApplicationHealthPolicyMap": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationHealthPolicyMapItem" + }, + "description": "Defines a map that contains specific application health policies for different applications.\nEach entry specifies as key the application name and as value an ApplicationHealthPolicy used to evaluate the application health.\nIf an application is not specified in the map, the application health evaluation uses the ApplicationHealthPolicy found in its application manifest or the default application health policy (if no health policy is defined in the manifest).\nThe map is empty by default." + }, + "ApplicationHealthPolicyMapItem": { + "description": "Defines an item in ApplicationHealthPolicyMap.", + "required": [ + "Key", + "Value" + ], + "properties": { + "Key": { + "$ref": "#/definitions/ApplicationName", + "description": "The key of the application health policy map item. This is the name of the application." + }, + "Value": { + "$ref": "#/definitions/ApplicationHealthPolicy", + "description": "The value of the application health policy map item. This is the ApplicationHealthPolicy for this application." + } + } + }, + "ApplicationHealthPolicyMapObject": { + "description": "Represents the map of application health policies for a ServiceFabric cluster upgrade", + "properties": { + "ApplicationHealthPolicyMap": { + "$ref": "#/definitions/ApplicationHealthPolicyMap", + "description": "Defines a map that contains specific application health policies for different applications.\nEach entry specifies as key the application name and as value an ApplicationHealthPolicy used to evaluate the application health.\nIf an application is not specified in the map, the application health evaluation uses the ApplicationHealthPolicy found in its application manifest or the default application health policy (if no health policy is defined in the manifest).\nThe map is empty by default." + } + } + }, + "ApplicationHealthState": { + "description": "Represents the health state of an application, which contains the application identifier and the aggregated health state.", + "allOf": [ + { + "$ref": "#/definitions/EntityHealthState" + } + ], + "properties": { + "Name": { + "$ref": "#/definitions/ApplicationName", + "description": "The name of the application, including the 'fabric:' URI scheme." + } + } + }, + "ApplicationHealthStateChunk": { + "description": "Represents the health state chunk of a application.\nThe application health state chunk contains the application name, its aggregated health state and any children services and deployed applications that respect the filters in cluster health chunk query description.", + "allOf": [ + { + "$ref": "#/definitions/EntityHealthStateChunk" + } + ], + "properties": { + "ApplicationName": { + "$ref": "#/definitions/ApplicationName", + "description": "The name of the application, including the 'fabric:' URI scheme." + }, + "ApplicationTypeName": { + "$ref": "#/definitions/ApplicationTypeName", + "description": "The application type name as defined in the application manifest." + }, + "ServiceHealthStateChunks": { + "$ref": "#/definitions/ServiceHealthStateChunkList", + "description": "The list of service health state chunks in the cluster that respect the filters in the cluster health chunk query description." + }, + "DeployedApplicationHealthStateChunks": { + "$ref": "#/definitions/DeployedApplicationHealthStateChunkList", + "description": "The list of deployed application health state chunks in the cluster that respect the filters in the cluster health chunk query description." + } + } + }, + "ApplicationHealthStateChunkList": { + "description": "The list of application health state chunks in the cluster that respect the input filters in the chunk query. Returned by get cluster health state chunks query.", + "allOf": [ + { + "$ref": "#/definitions/EntityHealthStateChunkList" + } + ], + "properties": { + "Items": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationHealthStateChunk" + }, + "description": "The list of application health state chunks that respect the input filters in the chunk query." + } + } + }, + "ApplicationHealthStateFilter": { + "description": "Defines matching criteria to determine whether a application should be included in the cluster health chunk.\nOne filter can match zero, one or multiple applications, depending on its properties.", + "properties": { + "ApplicationNameFilter": { + "type": "string", + "description": "The name of the application that matches the filter, as a fabric uri. The filter is applied only to the specified application, if it exists.\nIf the application doesn't exist, no application is returned in the cluster health chunk based on this filter.\nIf the application exists, it is included in the cluster health chunk if it respects the other filter properties.\nIf not specified, all applications are matched against the other filter members, like health state filter." + }, + "ApplicationTypeNameFilter": { + "type": "string", + "description": "The name of the application type that matches the filter.\nIf specified, the filter is applied only to applications of the selected application type, if any exists.\nIf no applications of the specified application type exists, no application is returned in the cluster health chunk based on this filter.\nEach application of the specified application type is included in the cluster health chunk if it respects the other filter properties.\nIf not specified, all applications are matched against the other filter members, like health state filter." + }, + "HealthStateFilter": { + "type": "integer", + "default": 0, + "description": "The filter for the health state of the applications. It allows selecting applications if they match the desired health states.\nThe possible values are integer value of one of the following health states. Only applications that match the filter are returned. All applications are used to evaluate the cluster aggregated health state.\nIf not specified, default value is None, unless the application name or the application type name are specified. If the filter has default value and application name is specified, the matching application is returned.\nThe state values are flag-based enumeration, so the value could be a combination of these values obtained using bitwise 'OR' operator.\nFor example, if the provided value is 6, it matches applications with HealthState value of OK (2) and Warning (4).\n\n- Default - Default value. Matches any HealthState. The value is zero.\n- None - Filter that doesn't match any HealthState value. Used in order to return no results on a given collection of states. The value is 1.\n- Ok - Filter that matches input with HealthState value Ok. The value is 2.\n- Warning - Filter that matches input with HealthState value Warning. The value is 4.\n- Error - Filter that matches input with HealthState value Error. The value is 8.\n- All - Filter that matches input with any HealthState value. The value is 65535." + }, + "ServiceFilters": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceHealthStateFilter" + }, + "description": "Defines a list of filters that specify which services to be included in the returned cluster health chunk as children of the application. The services are returned only if the parent application matches a filter.\nIf the list is empty, no services are returned. All the services are used to evaluate the parent application aggregated health state, regardless of the input filters.\nThe application filter may specify multiple service filters.\nFor example, it can specify a filter to return all services with health state Error and another filter to always include a service identified by its service name." + }, + "DeployedApplicationFilters": { + "type": "array", + "items": { + "$ref": "#/definitions/DeployedApplicationHealthStateFilter" + }, + "description": "Defines a list of filters that specify which deployed applications to be included in the returned cluster health chunk as children of the application. The deployed applications are returned only if the parent application matches a filter.\nIf the list is empty, no deployed applications are returned. All the deployed applications are used to evaluate the parent application aggregated health state, regardless of the input filters.\nThe application filter may specify multiple deployed application filters.\nFor example, it can specify a filter to return all deployed applications with health state Error and another filter to always include a deployed application on a specified node." + } + } + }, + "ApplicationId": { + "type": "string", + "description": "The identity of the application. This is an encoded representation of the application name. This is used in the REST APIs to identify the application resource.\nStarting in version 6.0, hierarchical names are delimited with the \"\\~\" character. For example, if the application name is \"fabric:/myapp/app1\",\nthe application identity would be \"myapp\\~app1\" in 6.0+ and \"myapp/app1\" in previous versions." + }, + "ApplicationInfo": { + "description": "Information about a Service Fabric application.", + "properties": { + "Id": { + "$ref": "#/definitions/ApplicationId", + "description": "The identity of the application. This is an encoded representation of the application name. This is used in the REST APIs to identify the application resource.\nStarting in version 6.0, hierarchical names are delimited with the \"\\~\" character. For example, if the application name is \"fabric:/myapp/app1\",\nthe application identity would be \"myapp\\~app1\" in 6.0+ and \"myapp/app1\" in previous versions." + }, + "Name": { + "$ref": "#/definitions/ApplicationName", + "description": "The name of the application, including the 'fabric:' URI scheme." + }, + "TypeName": { + "$ref": "#/definitions/ApplicationTypeName", + "description": "The application type name as defined in the application manifest." + }, + "TypeVersion": { + "$ref": "#/definitions/ApplicationTypeVersion", + "description": "The version of the application type as defined in the application manifest." + }, + "Status": { + "$ref": "#/definitions/ApplicationStatus", + "description": "The status of the application." + }, + "Parameters": { + "$ref": "#/definitions/ApplicationParameterList", + "description": "List of application parameters with overridden values from their default values specified in the application manifest." + }, + "HealthState": { + "$ref": "#/definitions/HealthState", + "description": "The health state of a Service Fabric entity such as Cluster, Node, Application, Service, Partition, Replica etc." + }, + "ApplicationDefinitionKind": { + "$ref": "#/definitions/ApplicationDefinitionKind", + "description": "The mechanism used to define a Service Fabric application." + }, + "ManagedApplicationIdentity": { + "$ref": "#/definitions/ManagedApplicationIdentityDescription", + "description": "Managed application identity description." + } + } + }, + "ApplicationLoadInfo": { + "description": "Load Information about a Service Fabric application.", + "properties": { + "Id": { + "$ref": "#/definitions/ApplicationId", + "description": "The identity of the application. This is an encoded representation of the application name. This is used in the REST APIs to identify the application resource.\nStarting in version 6.0, hierarchical names are delimited with the \"\\~\" character. For example, if the application name is \"fabric:/myapp/app1\",\nthe application identity would be \"myapp\\~app1\" in 6.0+ and \"myapp/app1\" in previous versions." + }, + "MinimumNodes": { + "type": "integer", + "format": "int64", + "description": "The minimum number of nodes for this application.\nIt is the number of nodes where Service Fabric will reserve Capacity in the cluster which equals to ReservedLoad * MinimumNodes for this Application instance.\nFor applications that do not have application capacity defined this value will be zero." + }, + "MaximumNodes": { + "type": "integer", + "format": "int64", + "description": "The maximum number of nodes where this application can be instantiated.\nIt is the number of nodes this application is allowed to span.\nFor applications that do not have application capacity defined this value will be zero." + }, + "NodeCount": { + "type": "integer", + "format": "int64", + "description": "The number of nodes on which this application is instantiated.\nFor applications that do not have application capacity defined this value will be zero." + }, + "ApplicationLoadMetricInformation": { + "$ref": "#/definitions/ApplicationLoadMetricInformationList", + "description": "List of application load metric information." + } + } + }, + "ApplicationName": { + "type": "string", + "description": "The name of the application, including the 'fabric:' URI scheme." + }, + "ApplicationNameInfo": { + "description": "Information about the application name.", + "properties": { + "Id": { + "$ref": "#/definitions/ApplicationId", + "description": "The identity of the application. This is an encoded representation of the application name. This is used in the REST APIs to identify the application resource.\nStarting in version 6.0, hierarchical names are delimited with the \"\\~\" character. For example, if the application name is \"fabric:/myapp/app1\",\nthe application identity would be \"myapp\\~app1\" in 6.0+ and \"myapp/app1\" in previous versions." + }, + "Name": { + "$ref": "#/definitions/ApplicationName", + "description": "The name of the application, including the 'fabric:' URI scheme." + } + } + }, + "ApplicationPackageCleanupPolicy": { + "type": "string", + "description": "The kind of action that needs to be taken for cleaning up the application package after successful provision.", + "enum": [ + "Invalid", + "Default", + "Automatic", + "Manual" + ], + "x-ms-enum": { + "name": "ApplicationPackageCleanupPolicy", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates that the application package cleanup policy is invalid. This value is default. The value is zero." + }, + { + "value": "Default", + "description": "Indicates that the cleanup policy of application packages is based on the cluster setting \"CleanupApplicationPackageOnProvisionSuccess.\" The value is 1." + }, + { + "value": "Automatic", + "description": "Indicates that the service fabric runtime determines when to do the application package cleanup. By default, cleanup is done on successful provision. The value is 2." + }, + { + "value": "Manual", + "description": "Indicates that the user has to explicitly clean up the application package. The value is 3." + } + ] + } + }, + "ApplicationParameter": { + "description": "Describes an application parameter override to be applied when creating or upgrading an application.", + "required": [ + "Key", + "Value" + ], + "properties": { + "Key": { + "type": "string", + "description": "The name of the parameter." + }, + "Value": { + "type": "string", + "description": "The value of the parameter." + } + } + }, + "ApplicationParameterList": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationParameter" + }, + "description": "List of application parameters with overridden values from their default values specified in the application manifest." + }, + "ApplicationsHealthEvaluation": { + "x-ms-discriminator-value": "Applications", + "description": "Represents health evaluation for applications, containing health evaluations for each unhealthy application that impacted current aggregated health state.", + "allOf": [ + { + "$ref": "#/definitions/HealthEvaluation" + } + ], + "properties": { + "MaxPercentUnhealthyApplications": { + "type": "integer", + "description": "Maximum allowed percentage of unhealthy applications from the ClusterHealthPolicy." + }, + "TotalCount": { + "type": "integer", + "format": "int64", + "description": "Total number of applications from the health store." + }, + "UnhealthyEvaluations": { + "$ref": "#/definitions/UnhealthyEvaluations", + "description": "List of unhealthy evaluations that led to the aggregated health state. Includes all the unhealthy ApplicationHealthEvaluation that impacted the aggregated health." + } + } + }, + "ApplicationStatus": { + "type": "string", + "description": "The status of the application.", + "enum": [ + "Invalid", + "Ready", + "Upgrading", + "Creating", + "Deleting", + "Failed" + ], + "x-ms-enum": { + "name": "ApplicationStatus", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the application status is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "Ready", + "description": "Indicates the application status is ready. The value is 1." + }, + { + "value": "Upgrading", + "description": "Indicates the application status is upgrading. The value is 2." + }, + { + "value": "Creating", + "description": "Indicates the application status is creating. The value is 3." + }, + { + "value": "Deleting", + "description": "Indicates the application status is deleting. The value is 4." + }, + { + "value": "Failed", + "description": "Indicates the creation or deletion of application was terminated due to persistent failures. Another create/delete request can be accepted to resume a failed application. The value is 5." + } + ] + } + }, + "ApplicationTypeApplicationsHealthEvaluation": { + "x-ms-discriminator-value": "ApplicationTypeApplications", + "description": "Represents health evaluation for applications of a particular application type. The application type applications evaluation can be returned when cluster health evaluation returns unhealthy aggregated health state, either Error or Warning. It contains health evaluations for each unhealthy application of the included application type that impacted current aggregated health state.", + "allOf": [ + { + "$ref": "#/definitions/HealthEvaluation" + } + ], + "properties": { + "ApplicationTypeName": { + "$ref": "#/definitions/ApplicationTypeName", + "description": "The application type name as defined in the application manifest." + }, + "MaxPercentUnhealthyApplications": { + "type": "integer", + "description": "Maximum allowed percentage of unhealthy applications for the application type, specified as an entry in ApplicationTypeHealthPolicyMap." + }, + "TotalCount": { + "type": "integer", + "format": "int64", + "description": "Total number of applications of the application type found in the health store." + }, + "UnhealthyEvaluations": { + "$ref": "#/definitions/UnhealthyEvaluations", + "description": "List of unhealthy evaluations that led to the aggregated health state. Includes all the unhealthy ApplicationHealthEvaluation of this application type that impacted the aggregated health." + } + } + }, + "ApplicationTypeDefinitionKind": { + "type": "string", + "description": "The mechanism used to define a Service Fabric application type.", + "enum": [ + "Invalid", + "ServiceFabricApplicationPackage", + "Compose" + ], + "x-ms-enum": { + "name": "ApplicationTypeDefinitionKind", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the application type definition kind is invalid. All Service Fabric enumerations have the invalid type. The value is 0." + }, + { + "value": "ServiceFabricApplicationPackage", + "description": "Indicates the application type is defined and created by a Service Fabric application package provided by the user. The value is 1." + }, + { + "value": "Compose", + "description": "Indicates the application type is defined and created implicitly as part of a compose deployment. The value is 2." + } + ] + } + }, + "ApplicationTypeHealthPolicyMap": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationTypeHealthPolicyMapItem" + }, + "description": "Defines a map with max percentage unhealthy applications for specific application types.\nEach entry specifies as key the application type name and as value an integer that represents the MaxPercentUnhealthyApplications percentage used to evaluate the applications of the specified application type.\n\nThe application type health policy map can be used during cluster health evaluation to describe special application types.\nThe application types included in the map are evaluated against the percentage specified in the map, and not with the global MaxPercentUnhealthyApplications defined in the cluster health policy.\nThe applications of application types specified in the map are not counted against the global pool of applications.\nFor example, if some applications of a type are critical, the cluster administrator can add an entry to the map for that application type\nand assign it a value of 0% (that is, do not tolerate any failures).\nAll other applications can be evaluated with MaxPercentUnhealthyApplications set to 20% to tolerate some failures out of the thousands of application instances.\nThe application type health policy map is used only if the cluster manifest enables application type health evaluation using the configuration entry for HealthManager/EnableApplicationTypeHealthEvaluation." + }, + "ApplicationTypeHealthPolicyMapItem": { + "description": "Defines an item in ApplicationTypeHealthPolicyMap.", + "required": [ + "Key", + "Value" + ], + "properties": { + "Key": { + "type": "string", + "description": "The key of the application type health policy map item. This is the name of the application type." + }, + "Value": { + "type": "integer", + "description": "The value of the application type health policy map item.\nThe max percent unhealthy applications allowed for the application type. Must be between zero and 100." + } + } + }, + "ApplicationTypeInfo": { + "description": "Information about an application type.", + "properties": { + "Name": { + "$ref": "#/definitions/ApplicationTypeName", + "description": "The application type name as defined in the application manifest." + }, + "Version": { + "$ref": "#/definitions/ApplicationTypeVersion", + "description": "The version of the application type as defined in the application manifest." + }, + "DefaultParameterList": { + "$ref": "#/definitions/ApplicationTypeParameterList", + "description": "List of application type parameters that can be overridden when creating or updating the application." + }, + "Status": { + "$ref": "#/definitions/ApplicationTypeStatus", + "description": "The status of the application type." + }, + "StatusDetails": { + "type": "string", + "description": "Additional detailed information about the status of the application type." + }, + "ApplicationTypeDefinitionKind": { + "$ref": "#/definitions/ApplicationTypeDefinitionKind", + "description": "The mechanism used to define a Service Fabric application type." + } + } + }, + "PagedApplicationTypeInfoList": { + "description": "The list of application types that are provisioned or being provisioned in the cluster. The list is paged when all of the results cannot fit in a single message. The next set of results can be obtained by executing the same query with the continuation token provided in this list.", + "properties": { + "ContinuationToken": { + "$ref": "#/definitions/ContinuationToken", + "description": "The continuation token parameter is used to obtain next set of results. The continuation token is included in the response of the API when the results from the system do not fit in a single response. When this value is passed to the next API call, the API returns next set of results. If there are no further results, then the continuation token is not included in the response." + }, + "Items": { + "type": "array", + "description": "List of application type information.", + "items": { + "$ref": "#/definitions/ApplicationTypeInfo" + } + } + } + }, + "ApplicationTypeManifest": { + "description": "Contains the manifest describing an application type registered in a Service Fabric cluster.", + "properties": { + "Manifest": { + "type": "string", + "description": "The XML manifest as a string." + } + } + }, + "ApplicationTypeName": { + "type": "string", + "description": "The application type name as defined in the application manifest." + }, + "ApplicationTypeParameterList": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationParameter" + }, + "description": "List of application type parameters that can be overridden when creating or updating the application." + }, + "ApplicationTypeStatus": { + "type": "string", + "description": "The status of the application type.", + "enum": [ + "Invalid", + "Provisioning", + "Available", + "Unprovisioning", + "Failed" + ], + "x-ms-enum": { + "name": "ApplicationTypeStatus", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the application type status is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "Provisioning", + "description": "Indicates that the application type is being provisioned in the cluster. The value is 1." + }, + { + "value": "Available", + "description": "Indicates that the application type is fully provisioned and is available for use. An application of this type and version can be created. The value is 2." + }, + { + "value": "Unprovisioning", + "description": "Indicates that the application type is in process of being unprovisioned from the cluster. The value is 3." + }, + { + "value": "Failed", + "description": "Indicates that the application type provisioning failed and it is unavailable for use. The failure details can be obtained from the application type information query. The failed application type information remains in the cluster until it is unprovisioned or reprovisioned successfully. The value is 4." + } + ] + } + }, + "ApplicationUnhealthyEvaluations": { + "description": "List of health evaluations that resulted in the current aggregated health state.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthEvaluationWrapper" + } + }, + "ApplicationUpgradeDescription": { + "description": "Describes the parameters for an application upgrade. Note that upgrade description replaces the existing application description. This means that if the parameters are not specified, the existing parameters on the applications will be overwritten with the empty parameters list. This would result in the application using the default value of the parameters from the application manifest. If you do not want to change any existing parameter values, please get the application parameters first using the GetApplicationInfo query and then supply those values as Parameters in this ApplicationUpgradeDescription.", + "properties": { + "Name": { + "$ref": "#/definitions/TargetApplicationName", + "description": "The name of the target application, including the 'fabric:' URI scheme." + }, + "TargetApplicationTypeVersion": { + "$ref": "#/definitions/TargetApplicationTypeVersion", + "description": "The target application type version (found in the application manifest) for the application upgrade." + }, + "Parameters": { + "$ref": "#/definitions/ApplicationParameterList", + "description": "List of application parameters with overridden values from their default values specified in the application manifest." + }, + "UpgradeKind": { + "$ref": "#/definitions/UpgradeKind", + "description": "The kind of upgrade out of the following possible values." + }, + "RollingUpgradeMode": { + "$ref": "#/definitions/UpgradeMode", + "description": "The mode used to monitor health during a rolling upgrade. The values are UnmonitoredAuto, UnmonitoredManual, and Monitored." + }, + "UpgradeReplicaSetCheckTimeoutInSeconds": { + "$ref": "#/definitions/UpgradeReplicaSetCheckTimeout", + "description": "The maximum amount of time to block processing of an upgrade domain and prevent loss of availability when there are unexpected issues. When this timeout expires, processing of the upgrade domain will proceed regardless of availability loss issues. The timeout is reset at the start of each upgrade domain. Valid values are between 0 and 42949672925 inclusive. (unsigned 32-bit integer)." + }, + "ForceRestart": { + "$ref": "#/definitions/ForceRestart", + "description": "If true, then processes are forcefully restarted during upgrade even when the code version has not changed (the upgrade only changes configuration or data)." + }, + "SortOrder": { + "$ref": "#/definitions/UpgradeSortOrder", + "description": "Defines the order in which an upgrade proceeds through the cluster." + }, + "MonitoringPolicy": { + "$ref": "#/definitions/MonitoringPolicyDescription", + "description": "Describes the parameters for monitoring an upgrade in Monitored mode." + }, + "ApplicationHealthPolicy": { + "$ref": "#/definitions/ApplicationHealthPolicy", + "description": "Defines a health policy used to evaluate the health of an application or one of its children entities." + }, + "InstanceCloseDelayDurationInSeconds": { + "$ref": "#/definitions/InstanceCloseDelayDurationInSeconds", + "description": "Duration in seconds, to wait before a stateless instance is closed, to allow the active requests to drain gracefully. This would be effective when the instance is closing during the application/cluster\nupgrade, only for those instances which have a non-zero delay duration configured in the service description. See InstanceCloseDelayDurationSeconds property in $ref: \"#/definitions/StatelessServiceDescription.yaml\" for details.\nNote, the default value of InstanceCloseDelayDurationInSeconds is 4294967295, which indicates that the behavior will entirely depend on the delay configured in the stateless service description." + }, + "ManagedApplicationIdentity": { + "$ref": "#/definitions/ManagedApplicationIdentityDescription", + "description": "Managed application identity description." + } + }, + "required": [ + "Name", + "TargetApplicationTypeVersion", + "UpgradeKind" + ] + }, + "ApplicationUpgradeProgressInfo": { + "description": "Describes the parameters for an application upgrade.", + "properties": { + "Name": { + "$ref": "#/definitions/TargetApplicationName", + "description": "The name of the target application, including the 'fabric:' URI scheme." + }, + "TypeName": { + "$ref": "#/definitions/ApplicationTypeName", + "description": "The application type name as defined in the application manifest." + }, + "TargetApplicationTypeVersion": { + "$ref": "#/definitions/TargetApplicationTypeVersion", + "description": "The target application type version (found in the application manifest) for the application upgrade." + }, + "UpgradeDomains": { + "$ref": "#/definitions/UpgradeDomainInfoList", + "description": "List of upgrade domains and their statuses." + }, + "UpgradeState": { + "$ref": "#/definitions/UpgradeState", + "description": "The state of the upgrade domain." + }, + "NextUpgradeDomain": { + "$ref": "#/definitions/NextUpgradeDomain", + "description": "The name of the next upgrade domain to be processed." + }, + "RollingUpgradeMode": { + "$ref": "#/definitions/UpgradeMode", + "description": "The mode used to monitor health during a rolling upgrade. The values are UnmonitoredAuto, UnmonitoredManual, and Monitored." + }, + "UpgradeDescription": { + "$ref": "#/definitions/ApplicationUpgradeDescription", + "description": "Describes the parameters for an application upgrade. Note that upgrade description replaces the existing application description. This means that if the parameters are not specified, the existing parameters on the applications will be overwritten with the empty parameters list. This would result in the application using the default value of the parameters from the application manifest. If you do not want to change any existing parameter values, please get the application parameters first using the GetApplicationInfo query and then supply those values as Parameters in this ApplicationUpgradeDescription." + }, + "UpgradeDurationInMilliseconds": { + "type": "string", + "description": "The estimated total amount of time spent processing the overall upgrade." + }, + "UpgradeDomainDurationInMilliseconds": { + "type": "string", + "description": "The estimated total amount of time spent processing the current upgrade domain." + }, + "UnhealthyEvaluations": { + "$ref": "#/definitions/UnhealthyEvaluations", + "description": "List of health evaluations that resulted in the current aggregated health state." + }, + "CurrentUpgradeDomainProgress": { + "$ref": "#/definitions/CurrentUpgradeDomainProgressInfo", + "description": "Information about the current in-progress upgrade domain." + }, + "StartTimestampUtc": { + "type": "string", + "description": "The estimated UTC datetime when the upgrade started." + }, + "FailureTimestampUtc": { + "type": "string", + "description": "The estimated UTC datetime when the upgrade failed and FailureAction was executed." + }, + "FailureReason": { + "$ref": "#/definitions/FailureReason", + "description": "The cause of an upgrade failure that resulted in FailureAction being executed." + }, + "UpgradeDomainProgressAtFailure": { + "$ref": "#/definitions/FailureUpgradeDomainProgressInfo", + "description": "Information about the upgrade domain progress at the time of upgrade failure." + }, + "UpgradeStatusDetails": { + "type": "string", + "description": "Additional detailed information about the status of the pending upgrade." + } + } + }, + "ByteArray": { + "description": "Array of bytes to be sent as an integer array. Each element of array is a number between 0 and 255.", + "type": "array", + "items": { + "type": "integer" + } + }, + "ClusterConfiguration": { + "description": "Information about the standalone cluster configuration.", + "properties": { + "ClusterConfiguration": { + "type": "string", + "description": "The contents of the cluster configuration file." + } + } + }, + "ClusterEvent": { + "description": "Represents the base for all Cluster Events.", + "allOf": [ + { + "$ref": "#/definitions/FabricEvent" + } + ], + "x-ms-discriminator-value": "ClusterEvent" + }, + "ClusterEventList": { + "description": "A list of ClusterEvent objects.", + "type": "array", + "items": { + "$ref": "#/definitions/ClusterEvent" + } + }, + "ClusterHealth": { + "description": "Represents the health of the cluster.\nContains the cluster aggregated health state, the cluster application and node health states as well as the health events and the unhealthy evaluations.", + "allOf": [ + { + "$ref": "#/definitions/EntityHealth" + } + ], + "properties": { + "NodeHealthStates": { + "type": "array", + "items": { + "$ref": "#/definitions/NodeHealthState" + }, + "description": "Cluster node health states as found in the health store." + }, + "ApplicationHealthStates": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationHealthState" + }, + "description": "Cluster application health states as found in the health store." + } + } + }, + "ClusterHealthChunk": { + "description": "Represents the health chunk of the cluster.\nContains the cluster aggregated health state, and the cluster entities that respect the input filter.", + "properties": { + "HealthState": { + "$ref": "#/definitions/HealthState", + "description": "The HealthState representing the aggregated health state of the cluster computed by Health Manager.\nThe health evaluation of the entity reflects all events reported on the entity and its children (if any).\nThe aggregation is done by applying the desired cluster health policy and the application health policies." + }, + "NodeHealthStateChunks": { + "$ref": "#/definitions/NodeHealthStateChunkList", + "description": "The list of node health state chunks in the cluster that respect the filters in the cluster health chunk query description." + }, + "ApplicationHealthStateChunks": { + "$ref": "#/definitions/ApplicationHealthStateChunkList", + "description": "The list of application health state chunks in the cluster that respect the filters in the cluster health chunk query description." + } + } + }, + "ClusterHealthChunkQueryDescription": { + "description": "The cluster health chunk query description, which can specify the health policies to evaluate cluster health and very expressive filters to select which cluster entities to include in response.", + "properties": { + "NodeFilters": { + "type": "array", + "items": { + "$ref": "#/definitions/NodeHealthStateFilter" + }, + "description": "Defines a list of filters that specify which nodes to be included in the returned cluster health chunk.\nIf no filters are specified, no nodes are returned. All the nodes are used to evaluate the cluster's aggregated health state, regardless of the input filters.\nThe cluster health chunk query may specify multiple node filters.\nFor example, it can specify a filter to return all nodes with health state Error and another filter to always include a node identified by its NodeName." + }, + "ApplicationFilters": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationHealthStateFilter" + }, + "description": "Defines a list of filters that specify which applications to be included in the returned cluster health chunk.\nIf no filters are specified, no applications are returned. All the applications are used to evaluate the cluster's aggregated health state, regardless of the input filters.\nThe cluster health chunk query may specify multiple application filters.\nFor example, it can specify a filter to return all applications with health state Error and another filter to always include applications of a specified application type." + }, + "ClusterHealthPolicy": { + "$ref": "#/definitions/ClusterHealthPolicy", + "description": "Defines a health policy used to evaluate the health of the cluster or of a cluster node." + }, + "ApplicationHealthPolicies": { + "$ref": "#/definitions/ApplicationHealthPolicies", + "description": "Defines the application health policy map used to evaluate the health of an application or one of its children entities." + } + } + }, + "ClusterHealthPolicies": { + "description": "Health policies to evaluate cluster health.", + "properties": { + "ApplicationHealthPolicyMap": { + "$ref": "#/definitions/ApplicationHealthPolicyMap", + "description": "Defines a map that contains specific application health policies for different applications.\nEach entry specifies as key the application name and as value an ApplicationHealthPolicy used to evaluate the application health.\nIf an application is not specified in the map, the application health evaluation uses the ApplicationHealthPolicy found in its application manifest or the default application health policy (if no health policy is defined in the manifest).\nThe map is empty by default." + }, + "ClusterHealthPolicy": { + "$ref": "#/definitions/ClusterHealthPolicy", + "description": "Defines a health policy used to evaluate the health of the cluster or of a cluster node." + } + } + }, + "ClusterHealthPolicy": { + "description": "Defines a health policy used to evaluate the health of the cluster or of a cluster node.", + "properties": { + "ConsiderWarningAsError": { + "type": "boolean", + "description": "Indicates whether warnings are treated with the same severity as errors.", + "default": false + }, + "MaxPercentUnhealthyNodes": { + "type": "integer", + "description": "The maximum allowed percentage of unhealthy nodes before reporting an error. For example, to allow 10% of nodes to be unhealthy, this value would be 10.\n\nThe percentage represents the maximum tolerated percentage of nodes that can be unhealthy before the cluster is considered in error.\nIf the percentage is respected but there is at least one unhealthy node, the health is evaluated as Warning.\nThe percentage is calculated by dividing the number of unhealthy nodes over the total number of nodes in the cluster.\nThe computation rounds up to tolerate one failure on small numbers of nodes. Default percentage is zero.\n\nIn large clusters, some nodes will always be down or out for repairs, so this percentage should be configured to tolerate that.", + "default": 0 + }, + "MaxPercentUnhealthyApplications": { + "type": "integer", + "description": "The maximum allowed percentage of unhealthy applications before reporting an error. For example, to allow 10% of applications to be unhealthy, this value would be 10.\n\nThe percentage represents the maximum tolerated percentage of applications that can be unhealthy before the cluster is considered in error.\nIf the percentage is respected but there is at least one unhealthy application, the health is evaluated as Warning.\nThis is calculated by dividing the number of unhealthy applications over the total number of application instances in the cluster, excluding applications of application types that are included in the ApplicationTypeHealthPolicyMap.\nThe computation rounds up to tolerate one failure on small numbers of applications. Default percentage is zero.", + "default": 0 + }, + "ApplicationTypeHealthPolicyMap": { + "$ref": "#/definitions/ApplicationTypeHealthPolicyMap", + "description": "Defines a map with max percentage unhealthy applications for specific application types.\nEach entry specifies as key the application type name and as value an integer that represents the MaxPercentUnhealthyApplications percentage used to evaluate the applications of the specified application type.\n\nThe application type health policy map can be used during cluster health evaluation to describe special application types.\nThe application types included in the map are evaluated against the percentage specified in the map, and not with the global MaxPercentUnhealthyApplications defined in the cluster health policy.\nThe applications of application types specified in the map are not counted against the global pool of applications.\nFor example, if some applications of a type are critical, the cluster administrator can add an entry to the map for that application type\nand assign it a value of 0% (that is, do not tolerate any failures).\nAll other applications can be evaluated with MaxPercentUnhealthyApplications set to 20% to tolerate some failures out of the thousands of application instances.\nThe application type health policy map is used only if the cluster manifest enables application type health evaluation using the configuration entry for HealthManager/EnableApplicationTypeHealthEvaluation." + }, + "NodeTypeHealthPolicyMap": { + "$ref": "#/definitions/NodeTypeHealthPolicyMap", + "description": "Defines a map with max percentage unhealthy nodes for specific node types.\nEach entry specifies as key the node type name and as value an integer that represents the MaxPercentUnhealthyNodes percentage used to evaluate the nodes of the specified node type.\n\nThe node type health policy map can be used during cluster health evaluation to describe special node types. \nThey are evaluated against the percentages associated with their node type name in the map. \nSetting this has no impact on the global pool of nodes used for MaxPercentUnhealthyNodes. \nThe node type health policy map is used only if the cluster manifest enables node type health evaluation using the configuration entry for HealthManager/EnableNodeTypeHealthEvaluation.\n\nFor example, given a cluster with many nodes of different types, with important work hosted on node type \"SpecialNodeType\" that should not tolerate any nodes down. \nYou can specify global MaxPercentUnhealthyNodes to 20% to tolerate some failures for all nodes, but for the node type \"SpecialNodeType\", set the MaxPercentUnhealthyNodes to 0 by \nsetting the value in the key value pair in NodeTypeHealthPolicyMapItem. The key is the node type name. \nThis way, as long as no nodes of type \"SpecialNodeType\" are in Error state, \neven if some of the many nodes in the global pool are in Error state, but below the global unhealthy percentage, the cluster would be evaluated to Warning. \nA Warning health state does not impact cluster upgrade or other monitoring triggered by Error health state. \nBut even one node of type SpecialNodeType in Error would make cluster unhealthy (in Error rather than Warning/Ok), which triggers rollback or pauses the cluster upgrade, depending on the upgrade configuration. \n\nConversely, setting the global MaxPercentUnhealthyNodes to 0, and setting SpecialNodeType's max percent unhealthy nodes to 100, \nwith one node of type SpecialNodeType in Error state would still put the cluster in an Error state, since the global restriction is more strict in this case." + } + } + }, + "ClusterManifest": { + "description": "Information about the cluster manifest.", + "properties": { + "Manifest": { + "type": "string", + "description": "The contents of the cluster manifest file." + } + } + }, + "ClusterLoadInfo": { + "description": "Information about load in a Service Fabric cluster. It holds a summary of all metrics and their load in a cluster.", + "properties": { + "LastBalancingStartTimeUtc": { + "type": "string", + "format": "date-time", + "description": "The starting time of last resource balancing run." + }, + "LastBalancingEndTimeUtc": { + "type": "string", + "format": "date-time", + "description": "The end time of last resource balancing run." + }, + "LoadMetricInformation": { + "type": "array", + "items": { + "$ref": "#/definitions/LoadMetricInformation" + }, + "description": "List that contains metrics and their load information in this cluster." + } + } + }, + "LoadMetricInformation": { + "description": "Represents data structure that contains load information for a certain metric in a cluster.", + "properties": { + "Name": { + "type": "string", + "description": "Name of the metric for which this load information is provided." + }, + "IsBalancedBefore": { + "type": "boolean", + "description": "Value that indicates whether the metrics is balanced or not before resource balancer run" + }, + "IsBalancedAfter": { + "type": "boolean", + "description": "Value that indicates whether the metrics is balanced or not after resource balancer run." + }, + "DeviationBefore": { + "type": "string", + "format": "double", + "description": "The standard average deviation of the metrics before resource balancer run." + }, + "DeviationAfter": { + "type": "string", + "format": "double", + "description": "The standard average deviation of the metrics after resource balancer run." + }, + "BalancingThreshold": { + "type": "string", + "format": "double", + "description": "The balancing threshold for a certain metric." + }, + "Action": { + "type": "string", + "description": "The current action being taken with regard to this metric" + }, + "ActivityThreshold": { + "type": "string", + "format": "double", + "description": "The Activity Threshold specified for this metric in the system Cluster Manifest." + }, + "ClusterCapacity": { + "type": "string", + "description": "The total cluster capacity for a given metric" + }, + "ClusterLoad": { + "type": "string", + "description": "The total cluster load. In future releases of Service Fabric this parameter will be deprecated in favor of CurrentClusterLoad." + }, + "CurrentClusterLoad": { + "type": "string", + "format": "double", + "description": "The total cluster load." + }, + "ClusterRemainingCapacity": { + "type": "string", + "description": "The remaining capacity for the metric in the cluster. In future releases of Service Fabric this parameter will be deprecated in favor of ClusterCapacityRemaining." + }, + "ClusterCapacityRemaining": { + "type": "string", + "description": "The remaining capacity for the metric in the cluster." + }, + "IsClusterCapacityViolation": { + "type": "boolean", + "description": "Indicates that the metric is currently over capacity in the cluster." + }, + "NodeBufferPercentage": { + "type": "string", + "format": "double", + "description": "The reserved percentage of total node capacity for this metric." + }, + "ClusterBufferedCapacity": { + "type": "string", + "description": "Remaining capacity in the cluster excluding the reserved space. In future releases of Service Fabric this parameter will be deprecated in favor of BufferedClusterCapacityRemaining." + }, + "BufferedClusterCapacityRemaining": { + "type": "string", + "format": "double", + "description": "Remaining capacity in the cluster excluding the reserved space." + }, + "ClusterRemainingBufferedCapacity": { + "type": "string", + "description": "The remaining percentage of cluster total capacity for this metric." + }, + "MinNodeLoadValue": { + "type": "string", + "description": "The minimum load on any node for this metric. In future releases of Service Fabric this parameter will be deprecated in favor of MinimumNodeLoad." + }, + "MinimumNodeLoad": { + "type": "string", + "format": "double", + "description": "The minimum load on any node for this metric." + }, + "MinNodeLoadNodeId": { + "$ref": "#/definitions/NodeId", + "description": "The node id of the node with the minimum load for this metric." + }, + "MaxNodeLoadValue": { + "type": "string", + "description": "The maximum load on any node for this metric. In future releases of Service Fabric this parameter will be deprecated in favor of MaximumNodeLoad." + }, + "MaximumNodeLoad": { + "type": "string", + "format": "double", + "description": "The maximum load on any node for this metric." + }, + "MaxNodeLoadNodeId": { + "$ref": "#/definitions/NodeId", + "description": "The node id of the node with the maximum load for this metric." + }, + "PlannedLoadRemoval": { + "type": "string", + "format": "double", + "description": "This value represents the load of the replicas that are planned to be removed in the future within the cluster.\nThis kind of load is reported for replicas that are currently being moving to other nodes and for replicas that are currently being dropped but still use the load on the source node." + } + } + }, + "ClusterVersion": { + "description": "The cluster version.", + "properties": { + "Version": { + "type": "string", + "description": "The Service Fabric cluster runtime version." + } + } + }, + "ContainerApiRequestBody": { + "description": "parameters for making container API call.", + "properties": { + "HttpVerb": { + "type": "string", + "description": "HTTP verb of container REST API, defaults to \"GET\"" + }, + "UriPath": { + "type": "string", + "description": "URI path of container REST API" + }, + "Content-Type": { + "type": "string", + "description": "Content type of container REST API request, defaults to \"application/json\"" + }, + "Body": { + "type": "string", + "description": "HTTP request body of container REST API" + } + }, + "required": [ + "UriPath" + ] + }, + "ContainerApiResponse": { + "description": "Response body that wraps container API result.", + "properties": { + "ContainerApiResult": { + "$ref": "#/definitions/ContainerApiResult", + "description": "Container API result." + } + }, + "required": [ + "ContainerApiResult" + ] + }, + "ContainerApiResult": { + "description": "Container API result.", + "properties": { + "Status": { + "type": "integer", + "description": "HTTP status code returned by the target container API" + }, + "Content-Type": { + "type": "string", + "description": "HTTP content type" + }, + "Content-Encoding": { + "type": "string", + "description": "HTTP content encoding" + }, + "Body": { + "type": "string", + "description": "container API result body" + } + }, + "required": [ + "Status" + ] + }, + "ContainerInstanceEvent": { + "description": "Represents the base for all Container Events.", + "allOf": [ + { + "$ref": "#/definitions/FabricEvent" + } + ], + "x-ms-discriminator-value": "ContainerInstanceEvent" + }, + "ContainerInstanceEventList": { + "description": "A list of ContainerInstanceEvent objects.", + "type": "array", + "items": { + "$ref": "#/definitions/ContainerInstanceEvent" + } + }, + "ContinuationToken": { + "type": "string", + "description": "The continuation token parameter is used to obtain next set of results. The continuation token is included in the response of the API when the results from the system do not fit in a single response. When this value is passed to the next API call, the API returns next set of results. If there are no further results, then the continuation token is not included in the response." + }, + "ConfigParameterOverrideList": { + "type": "array", + "items": { + "$ref": "#/definitions/ConfigParameterOverride" + }, + "description": "List that contains parameters, sections that they belong and their values." + }, + "ConfigParameterOverride": { + "description": "Information about a configuration parameter override.", + "properties": { + "SectionName": { + "type": "string", + "description": "Name of the section for the parameter override." + }, + "ParameterName": { + "type": "string", + "description": "Name of the parameter that has been overridden." + }, + "ParameterValue": { + "type": "string", + "description": "Value of the overridden parameter." + }, + "Timeout": { + "type": "string", + "format": "duration", + "description": "The duration until config override is considered as valid." + }, + "PersistAcrossUpgrade": { + "type": "boolean", + "description": "A value that indicates whether config override will be removed on upgrade or will still be considered as valid." + } + }, + "required": [ + "SectionName", + "ParameterName", + "ParameterValue" + ] + }, + "CurrentUpgradeDomainProgressInfo": { + "description": "Information about the current in-progress upgrade domain.", + "properties": { + "DomainName": { + "$ref": "#/definitions/UpgradeDomainName", + "description": "The name of the upgrade domain" + }, + "NodeUpgradeProgressList": { + "$ref": "#/definitions/NodeUpgradeProgressInfoList", + "description": "List of upgrading nodes and their statuses" + } + } + }, + "CurrentUpgradeDomainDuration": { + "type": "string", + "description": "The estimated amount of time spent processing current Upgrade Domain. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds.", + "default": "PT0H2M0S" + }, + "DeactivationIntentDescription": { + "description": "Describes the intent or reason for deactivating the node.", + "properties": { + "DeactivationIntent": { + "type": "string", + "description": "Describes the intent or reason for deactivating the node. The possible values are following.", + "enum": [ + "Pause", + "Restart", + "RemoveData" + ], + "x-ms-enum": { + "name": "DeactivationIntent", + "modelAsString": true, + "values": [ + { + "value": "Pause", + "description": "Indicates that the node should be paused. The value is 1." + }, + { + "value": "Restart", + "description": "Indicates that the intent is for the node to be restarted after a short period of time. The value is 2." + }, + { + "value": "RemoveData", + "description": "Indicates the intent is for the node to remove data. The value is 3." + } + ] + } + } + } + }, + "DeltaNodesCheckHealthEvaluation": { + "x-ms-discriminator-value": "DeltaNodesCheck", + "description": "Represents health evaluation for delta nodes, containing health evaluations for each unhealthy node that impacted current aggregated health state.\nCan be returned during cluster upgrade when the aggregated health state of the cluster is Warning or Error.", + "allOf": [ + { + "$ref": "#/definitions/HealthEvaluation" + } + ], + "properties": { + "BaselineErrorCount": { + "type": "integer", + "format": "int64", + "description": "Number of nodes with aggregated heath state Error in the health store at the beginning of the cluster upgrade." + }, + "BaselineTotalCount": { + "type": "integer", + "format": "int64", + "description": "Total number of nodes in the health store at the beginning of the cluster upgrade." + }, + "MaxPercentDeltaUnhealthyNodes": { + "type": "integer", + "description": "Maximum allowed percentage of delta unhealthy nodes from the ClusterUpgradeHealthPolicy." + }, + "TotalCount": { + "type": "integer", + "format": "int64", + "description": "Total number of nodes in the health store." + }, + "UnhealthyEvaluations": { + "$ref": "#/definitions/UnhealthyEvaluations", + "description": "List of unhealthy evaluations that led to the aggregated health state.\nIncludes all the unhealthy NodeHealthEvaluation that impacted the aggregated health." + } + } + }, + "DeployedApplicationHealth": { + "description": "Information about the health of an application deployed on a Service Fabric node.", + "allOf": [ + { + "$ref": "#/definitions/EntityHealth" + } + ], + "properties": { + "Name": { + "$ref": "#/definitions/ApplicationName", + "description": "Name of the application deployed on the node whose health information is described by this object." + }, + "NodeName": { + "$ref": "#/definitions/NodeName", + "description": "Name of the node where this application is deployed." + }, + "DeployedServicePackageHealthStates": { + "$ref": "#/definitions/DeployedServicePackageHealthStateList", + "description": "Deployed service package health states for the current deployed application as found in the health store." + } + } + }, + "DeployedApplicationHealthEvaluation": { + "x-ms-discriminator-value": "DeployedApplication", + "description": "Represents health evaluation for a deployed application, containing information about the data and the algorithm used by the health store to evaluate health.", + "allOf": [ + { + "$ref": "#/definitions/HealthEvaluation" + } + ], + "properties": { + "NodeName": { + "$ref": "#/definitions/NodeName", + "description": "Name of the node where the application is deployed to." + }, + "ApplicationName": { + "$ref": "#/definitions/ApplicationName", + "description": "The name of the application, including the 'fabric:' URI scheme." + }, + "UnhealthyEvaluations": { + "$ref": "#/definitions/UnhealthyEvaluations", + "description": "List of unhealthy evaluations that led to the current aggregated health state of the deployed application.\nThe types of the unhealthy evaluations can be DeployedServicePackagesHealthEvaluation or EventHealthEvaluation." + } + } + }, + "DeployedApplicationHealthState": { + "description": "Represents the health state of a deployed application, which contains the entity identifier and the aggregated health state.", + "allOf": [ + { + "$ref": "#/definitions/EntityHealthState" + } + ], + "properties": { + "NodeName": { + "$ref": "#/definitions/NodeName", + "description": "Name of the node on which the service package is deployed." + }, + "ApplicationName": { + "$ref": "#/definitions/ApplicationName", + "description": "The name of the application, including the 'fabric:' URI scheme." + } + } + }, + "DeployedApplicationHealthStateChunk": { + "description": "Represents the health state chunk of a deployed application, which contains the node where the application is deployed, the aggregated health state and any deployed service packages that respect the chunk query description filters.", + "allOf": [ + { + "$ref": "#/definitions/EntityHealthStateChunk" + } + ], + "properties": { + "NodeName": { + "type": "string", + "description": "The name of node where the application is deployed." + }, + "DeployedServicePackageHealthStateChunks": { + "$ref": "#/definitions/DeployedServicePackageHealthStateChunkList", + "description": "The list of deployed service package health state chunks belonging to the deployed application that respect the filters in the cluster health chunk query description." + } + } + }, + "DeployedApplicationHealthStateChunkList": { + "description": "The list of deployed application health state chunks that respect the input filters in the chunk query. Returned by get cluster health state chunks query.", + "properties": { + "Items": { + "type": "array", + "items": { + "$ref": "#/definitions/DeployedApplicationHealthStateChunk" + }, + "description": "The list of deployed application health state chunks that respect the input filters in the chunk query." + } + } + }, + "DeployedApplicationHealthStateFilter": { + "description": "Defines matching criteria to determine whether a deployed application should be included as a child of an application in the cluster health chunk.\nThe deployed applications are only returned if the parent application matches a filter specified in the cluster health chunk query description.\nOne filter can match zero, one or multiple deployed applications, depending on its properties.", + "properties": { + "NodeNameFilter": { + "type": "string", + "description": "The name of the node where the application is deployed in order to match the filter.\nIf specified, the filter is applied only to the application deployed on the specified node.\nIf the application is not deployed on the node with the specified name, no deployed application is returned in the cluster health chunk based on this filter.\nOtherwise, the deployed application is included in the cluster health chunk if it respects the other filter properties.\nIf not specified, all deployed applications that match the parent filters (if any) are taken into consideration and matched against the other filter members, like health state filter." + }, + "HealthStateFilter": { + "type": "integer", + "default": 0, + "description": "The filter for the health state of the deployed applications. It allows selecting deployed applications if they match the desired health states.\nThe possible values are integer value of one of the following health states. Only deployed applications that match the filter are returned. All deployed applications are used to evaluate the cluster aggregated health state.\nIf not specified, default value is None, unless the node name is specified. If the filter has default value and node name is specified, the matching deployed application is returned.\nThe state values are flag-based enumeration, so the value could be a combination of these values obtained using bitwise 'OR' operator.\nFor example, if the provided value is 6, it matches deployed applications with HealthState value of OK (2) and Warning (4).\n\n- Default - Default value. Matches any HealthState. The value is zero.\n- None - Filter that doesn't match any HealthState value. Used in order to return no results on a given collection of states. The value is 1.\n- Ok - Filter that matches input with HealthState value Ok. The value is 2.\n- Warning - Filter that matches input with HealthState value Warning. The value is 4.\n- Error - Filter that matches input with HealthState value Error. The value is 8.\n- All - Filter that matches input with any HealthState value. The value is 65535." + }, + "DeployedServicePackageFilters": { + "type": "array", + "items": { + "$ref": "#/definitions/DeployedServicePackageHealthStateFilter" + }, + "description": "Defines a list of filters that specify which deployed service packages to be included in the returned cluster health chunk as children of the parent deployed application. The deployed service packages are returned only if the parent deployed application matches a filter.\nIf the list is empty, no deployed service packages are returned. All the deployed service packages are used to evaluate the parent deployed application aggregated health state, regardless of the input filters.\nThe deployed application filter may specify multiple deployed service package filters.\nFor example, it can specify a filter to return all deployed service packages with health state Error and another filter to always include a deployed service package on a node." + } + } + }, + "DeployedApplicationInfo": { + "description": "Information about application deployed on the node.", + "properties": { + "Id": { + "$ref": "#/definitions/ApplicationId", + "description": "The identity of the application. This is an encoded representation of the application name. This is used in the REST APIs to identify the application resource.\nStarting in version 6.0, hierarchical names are delimited with the \"\\~\" character. For example, if the application name is \"fabric:/myapp/app1\",\nthe application identity would be \"myapp\\~app1\" in 6.0+ and \"myapp/app1\" in previous versions." + }, + "Name": { + "$ref": "#/definitions/ApplicationName", + "description": "The name of the application, including the 'fabric:' URI scheme." + }, + "TypeName": { + "$ref": "#/definitions/ApplicationTypeName", + "description": "The application type name as defined in the application manifest." + }, + "Status": { + "$ref": "#/definitions/DeployedApplicationStatus", + "description": "The status of the application deployed on the node. Following are the possible values." + }, + "WorkDirectory": { + "type": "string", + "description": "The work directory of the application on the node. The work directory can be used to store application data." + }, + "LogDirectory": { + "type": "string", + "description": "The log directory of the application on the node. The log directory can be used to store application logs." + }, + "TempDirectory": { + "type": "string", + "description": "The temp directory of the application on the node. The code packages belonging to the application are forked with this directory set as their temporary directory." + }, + "HealthState": { + "$ref": "#/definitions/HealthState", + "description": "The health state of a Service Fabric entity such as Cluster, Node, Application, Service, Partition, Replica etc." + } + } + }, + "DeployedApplicationInfoList": { + "type": "array", + "items": { + "$ref": "#/definitions/DeployedApplicationInfo" + }, + "description": "List of deployed application information." + }, + "DeployedApplicationsHealthEvaluation": { + "x-ms-discriminator-value": "DeployedApplications", + "description": "Represents health evaluation for deployed applications, containing health evaluations for each unhealthy deployed application that impacted current aggregated health state.\nCan be returned when evaluating application health and the aggregated health state is either Error or Warning.", + "allOf": [ + { + "$ref": "#/definitions/HealthEvaluation" + } + ], + "properties": { + "MaxPercentUnhealthyDeployedApplications": { + "type": "integer", + "description": "Maximum allowed percentage of unhealthy deployed applications from the ApplicationHealthPolicy." + }, + "TotalCount": { + "type": "integer", + "format": "int64", + "description": "Total number of deployed applications of the application in the health store." + }, + "UnhealthyEvaluations": { + "$ref": "#/definitions/UnhealthyEvaluations", + "description": "List of unhealthy evaluations that led to the aggregated health state. Includes all the unhealthy DeployedApplicationHealthEvaluation that impacted the aggregated health." + } + } + }, + "DeployedApplicationStatus": { + "type": "string", + "description": "The status of the application deployed on the node. Following are the possible values.", + "enum": [ + "Invalid", + "Downloading", + "Activating", + "Active", + "Upgrading", + "Deactivating" + ], + "x-ms-enum": { + "name": "DeployedApplicationStatus", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates that deployment status is not valid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "Downloading", + "description": "Indicates that the package is downloading from the ImageStore. The value is 1." + }, + { + "value": "Activating", + "description": "Indicates that the package is activating. The value is 2." + }, + { + "value": "Active", + "description": "Indicates that the package is active. The value is 3." + }, + { + "value": "Upgrading", + "description": "Indicates that the package is upgrading. The value is 4." + }, + { + "value": "Deactivating", + "description": "Indicates that the package is deactivating. The value is 5." + } + ] + } + }, + "DeployedServicePackageHealth": { + "description": "Information about the health of a service package for a specific application deployed on a Service Fabric node.", + "allOf": [ + { + "$ref": "#/definitions/EntityHealth" + } + ], + "properties": { + "ApplicationName": { + "$ref": "#/definitions/ApplicationName", + "description": "The name of the application, including the 'fabric:' URI scheme." + }, + "ServiceManifestName": { + "$ref": "#/definitions/ServiceManifestName", + "description": "Name of the service manifest." + }, + "NodeName": { + "$ref": "#/definitions/NodeName", + "description": "Name of the node where this service package is deployed." + } + } + }, + "DeployedServicePackageHealthEvaluation": { + "x-ms-discriminator-value": "DeployedServicePackage", + "description": "Represents health evaluation for a deployed service package, containing information about the data and the algorithm used by health store to evaluate health. The evaluation is returned only when the aggregated health state is either Error or Warning.", + "allOf": [ + { + "$ref": "#/definitions/HealthEvaluation" + } + ], + "properties": { + "NodeName": { + "$ref": "#/definitions/NodeName", + "description": "The name of a Service Fabric node." + }, + "ApplicationName": { + "$ref": "#/definitions/ApplicationName", + "description": "The name of the application, including the 'fabric:' URI scheme." + }, + "ServiceManifestName": { + "$ref": "#/definitions/ServiceManifestName", + "description": "The name of the service manifest." + }, + "UnhealthyEvaluations": { + "$ref": "#/definitions/UnhealthyEvaluations", + "description": "List of unhealthy evaluations that led to the current aggregated health state. The type of the unhealthy evaluations can be EventHealthEvaluation." + } + } + }, + "DeployedServicePackageHealthState": { + "description": "Represents the health state of a deployed service package, containing the entity identifier and the aggregated health state.", + "allOf": [ + { + "$ref": "#/definitions/EntityHealthState" + } + ], + "properties": { + "NodeName": { + "$ref": "#/definitions/NodeName", + "description": "Name of the node on which the service package is deployed." + }, + "ApplicationName": { + "$ref": "#/definitions/ApplicationName", + "description": "The name of the application, including the 'fabric:' URI scheme." + }, + "ServiceManifestName": { + "$ref": "#/definitions/ServiceManifestName", + "description": "Name of the manifest describing the service package." + }, + "ServicePackageActivationId": { + "$ref": "#/definitions/ServicePackageActivationId", + "description": "The ActivationId of a deployed service package. If ServicePackageActivationMode specified at the time of creating the service\nis 'SharedProcess' (or if it is not specified, in which case it defaults to 'SharedProcess'), then value of ServicePackageActivationId\nis always an empty string." + } + } + }, + "DeployedServicePackageHealthStateChunk": { + "description": "Represents the health state chunk of a deployed service package, which contains the service manifest name and the service package aggregated health state.", + "allOf": [ + { + "$ref": "#/definitions/EntityHealthStateChunk" + } + ], + "properties": { + "ServiceManifestName": { + "$ref": "#/definitions/ServiceManifestName", + "description": "The name of the service manifest." + }, + "ServicePackageActivationId": { + "$ref": "#/definitions/ServicePackageActivationId", + "description": "The ActivationId of a deployed service package. If ServicePackageActivationMode specified at the time of creating the service\nis 'SharedProcess' (or if it is not specified, in which case it defaults to 'SharedProcess'), then value of ServicePackageActivationId\nis always an empty string." + } + } + }, + "DeployedServicePackageHealthStateChunkList": { + "description": "The list of deployed service package health state chunks that respect the input filters in the chunk query. Returned by get cluster health state chunks query.", + "properties": { + "Items": { + "type": "array", + "items": { + "$ref": "#/definitions/DeployedServicePackageHealthStateChunk" + }, + "description": "The list of deployed service package health state chunks that respect the input filters in the chunk query." + } + } + }, + "DeployedServicePackageHealthStateFilter": { + "description": "Defines matching criteria to determine whether a deployed service package should be included as a child of a deployed application in the cluster health chunk.\nThe deployed service packages are only returned if the parent entities match a filter specified in the cluster health chunk query description. The parent deployed application and its parent application must be included in the cluster health chunk.\nOne filter can match zero, one or multiple deployed service packages, depending on its properties.", + "properties": { + "ServiceManifestNameFilter": { + "type": "string", + "description": "The name of the service manifest which identifies the deployed service packages that matches the filter.\nIf specified, the filter is applied only to the specified deployed service packages, if any.\nIf no deployed service packages with specified manifest name exist, nothing is returned in the cluster health chunk based on this filter.\nIf any deployed service package exists, they are included in the cluster health chunk if it respects the other filter properties.\nIf not specified, all deployed service packages that match the parent filters (if any) are taken into consideration and matched against the other filter members, like health state filter." + }, + "ServicePackageActivationIdFilter": { + "type": "string", + "description": "The activation ID of a deployed service package that matches the filter.\nIf not specified, the filter applies to all deployed service packages that match the other parameters.\nIf specified, the filter matches only the deployed service package with the specified activation ID." + }, + "HealthStateFilter": { + "type": "integer", + "default": 0, + "description": "The filter for the health state of the deployed service packages. It allows selecting deployed service packages if they match the desired health states.\nThe possible values are integer value of one of the following health states. Only deployed service packages that match the filter are returned. All deployed service packages are used to evaluate the parent deployed application aggregated health state.\nIf not specified, default value is None, unless the deployed service package ID is specified. If the filter has default value and deployed service package ID is specified, the matching deployed service package is returned.\nThe state values are flag-based enumeration, so the value could be a combination of these values obtained using bitwise 'OR' operator.\nFor example, if the provided value is 6, it matches deployed service packages with HealthState value of OK (2) and Warning (4).\n\n- Default - Default value. Matches any HealthState. The value is zero.\n- None - Filter that doesn't match any HealthState value. Used in order to return no results on a given collection of states. The value is 1.\n- Ok - Filter that matches input with HealthState value Ok. The value is 2.\n- Warning - Filter that matches input with HealthState value Warning. The value is 4.\n- Error - Filter that matches input with HealthState value Error. The value is 8.\n- All - Filter that matches input with any HealthState value. The value is 65535." + } + } + }, + "DeployedServicePackageHealthStateList": { + "description": "List of health states for a service package deployed on a Service Fabric node.", + "type": "array", + "items": { + "$ref": "#/definitions/DeployedServicePackageHealthState" + } + }, + "DeployedServicePackagesHealthEvaluation": { + "x-ms-discriminator-value": "DeployedServicePackages", + "description": "Represents health evaluation for deployed service packages, containing health evaluations for each unhealthy deployed service package that impacted current aggregated health state. Can be returned when evaluating deployed application health and the aggregated health state is either Error or Warning.", + "allOf": [ + { + "$ref": "#/definitions/HealthEvaluation" + } + ], + "properties": { + "TotalCount": { + "type": "integer", + "format": "int64", + "description": "Total number of deployed service packages of the deployed application in the health store." + }, + "UnhealthyEvaluations": { + "$ref": "#/definitions/UnhealthyEvaluations", + "description": "List of unhealthy evaluations that led to the aggregated health state. Includes all the unhealthy DeployedServicePackageHealthEvaluation that impacted the aggregated health." + } + } + }, + "DeployedServiceReplicaInfo": { + "discriminator": "ServiceKind", + "description": "Information about a Service Fabric service replica deployed on a node.", + "required": [ + "ServiceKind" + ], + "properties": { + "ServiceKind": { + "$ref": "#/definitions/ServiceKind", + "description": "The kind of service (Stateless or Stateful)." + }, + "ServiceName": { + "$ref": "#/definitions/ServiceName", + "description": "The full name of the service with 'fabric:' URI scheme." + }, + "ServiceTypeName": { + "$ref": "#/definitions/ServiceTypeName", + "description": "Name of the service type as specified in the service manifest." + }, + "ServiceManifestName": { + "$ref": "#/definitions/ServiceManifestName", + "description": "The name of the service manifest in which this service type is defined." + }, + "CodePackageName": { + "$ref": "#/definitions/CodePackageName", + "description": "The name of the code package that hosts this replica." + }, + "PartitionId": { + "$ref": "#/definitions/PartitionId", + "description": "An internal ID used by Service Fabric to uniquely identify a partition. This is a randomly generated GUID when the service was created. The partition ID is unique and does not change for the lifetime of the service. If the same service was deleted and recreated the IDs of its partitions would be different." + }, + "ReplicaStatus": { + "$ref": "#/definitions/ReplicaStatus", + "description": "The status of a replica of a service." + }, + "Address": { + "type": "string", + "description": "The last address returned by the replica in Open or ChangeRole." + }, + "ServicePackageActivationId": { + "$ref": "#/definitions/ServicePackageActivationId", + "description": "The ActivationId of a deployed service package. If ServicePackageActivationMode specified at the time of creating the service\nis 'SharedProcess' (or if it is not specified, in which case it defaults to 'SharedProcess'), then value of ServicePackageActivationId\nis always an empty string." + }, + "HostProcessId": { + "type": "string", + "description": "Host process ID of the process that is hosting the replica. This will be zero if the replica is down. In hyper-v containers this host process ID will be from different kernel." + } + } + }, + "DeployedServiceReplicaInfoList": { + "type": "array", + "items": { + "$ref": "#/definitions/DeployedServiceReplicaInfo" + }, + "description": "List of deployed service replica information." + }, + "DeployedStatefulServiceReplicaInfo": { + "description": "Information about a stateful service replica deployed on a node.", + "x-ms-discriminator-value": "Stateful", + "allOf": [ + { + "$ref": "#/definitions/DeployedServiceReplicaInfo" + } + ], + "properties": { + "ReplicaId": { + "$ref": "#/definitions/ReplicaId", + "description": "Id of a stateful service replica. ReplicaId is used by Service Fabric to uniquely identify a replica of a partition. It is unique within a partition and does not change for the lifetime of the replica. If a replica gets dropped and another replica gets created on the same node for the same partition, it will get a different value for the id. Sometimes the id of a stateless service instance is also referred as a replica id." + }, + "ReplicaRole": { + "$ref": "#/definitions/ReplicaRole", + "description": "The role of a replica of a stateful service." + }, + "ReconfigurationInformation": { + "$ref": "#/definitions/ReconfigurationInformation", + "description": "Information about current reconfiguration like phase, type, previous configuration role of replica and reconfiguration start date time." + } + } + }, + "DeployedStatelessServiceInstanceInfo": { + "description": "Information about a stateless service instance deployed on a node.", + "x-ms-discriminator-value": "Stateless", + "allOf": [ + { + "$ref": "#/definitions/DeployedServiceReplicaInfo" + } + ], + "properties": { + "InstanceId": { + "$ref": "#/definitions/InstanceId", + "description": "Id of a stateless service instance. InstanceId is used by Service Fabric to uniquely identify an instance of a partition of a stateless service. It is unique within a partition and does not change for the lifetime of the instance. If the instance has failed over on the same or different node, it will get a different value for the InstanceId." + } + } + }, + "EntityHealth": { + "description": "Health information common to all entities in the cluster. It contains the aggregated health state, health events and unhealthy evaluation.", + "properties": { + "AggregatedHealthState": { + "$ref": "#/definitions/HealthState", + "description": "The HealthState representing the aggregated health state of the entity computed by Health Manager.\nThe health evaluation of the entity reflects all events reported on the entity and its children (if any).\nThe aggregation is done by applying the desired health policy." + }, + "HealthEvents": { + "type": "array", + "items": { + "$ref": "#/definitions/HealthEvent" + }, + "description": "The list of health events reported on the entity." + }, + "UnhealthyEvaluations": { + "$ref": "#/definitions/UnhealthyEvaluations", + "description": "The unhealthy evaluations that show why the current aggregated health state was returned by Health Manager." + }, + "HealthStatistics": { + "$ref": "#/definitions/HealthStatistics", + "description": "Shows the health statistics for all children types of the queried entity." + } + } + }, + "EntityHealthState": { + "description": "A base type for the health state of various entities in the cluster. It contains the aggregated health state.", + "properties": { + "AggregatedHealthState": { + "$ref": "#/definitions/HealthState", + "description": "The health state of a Service Fabric entity such as Cluster, Node, Application, Service, Partition, Replica etc." + } + } + }, + "EntityHealthStateChunk": { + "description": "A base type for the health state chunk of various entities in the cluster. It contains the aggregated health state.", + "properties": { + "HealthState": { + "$ref": "#/definitions/HealthState", + "description": "The health state of a Service Fabric entity such as Cluster, Node, Application, Service, Partition, Replica etc." + } + } + }, + "EntityHealthStateChunkList": { + "description": "A base type for the list of health state chunks found in the cluster. It contains the total number of health states that match the input filters.", + "properties": { + "TotalCount": { + "type": "integer", + "format": "int64", + "description": "Total number of entity health state objects that match the specified filters from the cluster health chunk query description." + } + } + }, + "Epoch": { + "description": "An Epoch is a configuration number for the partition as a whole. When the configuration of the replica set changes, for example when the Primary replica changes, the operations that are replicated from the new Primary replica are said to be a new Epoch from the ones which were sent by the old Primary replica.", + "properties": { + "ConfigurationVersion": { + "type": "string", + "description": "The current configuration number of this Epoch. The configuration number is an increasing value that is updated whenever the configuration of this replica set changes." + }, + "DataLossVersion": { + "type": "string", + "description": "The current data loss number of this Epoch. The data loss number property is an increasing value which is updated whenever data loss is suspected, as when loss of a quorum of replicas in the replica set that includes the Primary replica." + } + } + }, + "EventHealthEvaluation": { + "x-ms-discriminator-value": "Event", + "description": "Represents health evaluation of a HealthEvent that was reported on the entity.\nThe health evaluation is returned when evaluating health of an entity results in Error or Warning.", + "allOf": [ + { + "$ref": "#/definitions/HealthEvaluation" + } + ], + "properties": { + "ConsiderWarningAsError": { + "type": "boolean", + "description": "Indicates whether warnings are treated with the same severity as errors. The field is specified in the health policy used to evaluate the entity." + }, + "UnhealthyEvent": { + "$ref": "#/definitions/HealthEvent", + "description": "Represents health information reported on a health entity, such as cluster, application or node, with additional metadata added by the Health Manager." + } + } + }, + "EventList": { + "description": "A list of FabricEvent objects.", + "type": "array", + "items": { + "$ref": "#/definitions/FabricEvent" + } + }, + "FabricCodeVersionInfo": { + "description": "Information about a Service Fabric code version.", + "properties": { + "CodeVersion": { + "description": "The product version of Service Fabric.", + "type": "string" + } + } + }, + "FabricCodeVersionInfoList": { + "type": "array", + "items": { + "$ref": "#/definitions/FabricCodeVersionInfo" + }, + "description": "List of all Service Fabric code versions." + }, + "FabricConfigVersionInfo": { + "description": "Information about a Service Fabric config version.", + "properties": { + "ConfigVersion": { + "description": "The config version of Service Fabric.", + "type": "string" + } + } + }, + "FabricConfigVersionInfoList": { + "type": "array", + "items": { + "$ref": "#/definitions/FabricConfigVersionInfo" + }, + "description": "List of all Service Fabric config versions." + }, + "FabricEvent": { + "discriminator": "Kind", + "description": "Represents the base for all Fabric Events.", + "properties": { + "Kind": { + "$ref": "#/definitions/FabricEventKind", + "description": "The kind of FabricEvent." + }, + "EventInstanceId": { + "type": "string", + "format": "uuid", + "description": "The identifier for the FabricEvent instance." + }, + "Category": { + "type": "string", + "description": "The category of event." + }, + "TimeStamp": { + "type": "string", + "format": "date-time", + "description": "The time event was logged." + }, + "HasCorrelatedEvents": { + "type": "boolean", + "description": "Shows there is existing related events available." + } + }, + "required": [ + "Kind", + "EventInstanceId", + "TimeStamp" + ] + }, + "FabricEventKind": { + "type": "string", + "description": "The kind of FabricEvent.", + "enum": [ + "ClusterEvent", + "ContainerInstanceEvent", + "NodeEvent", + "ApplicationEvent", + "ServiceEvent", + "PartitionEvent", + "ReplicaEvent", + "PartitionAnalysisEvent", + "ApplicationCreated", + "ApplicationDeleted", + "ApplicationNewHealthReport", + "ApplicationHealthReportExpired", + "ApplicationUpgradeCompleted", + "ApplicationUpgradeDomainCompleted", + "ApplicationUpgradeRollbackCompleted", + "ApplicationUpgradeRollbackStarted", + "ApplicationUpgradeStarted", + "DeployedApplicationNewHealthReport", + "DeployedApplicationHealthReportExpired", + "ApplicationProcessExited", + "ApplicationContainerInstanceExited", + "NodeAborted", + "NodeAddedToCluster", + "NodeClosed", + "NodeDeactivateCompleted", + "NodeDeactivateStarted", + "NodeDown", + "NodeNewHealthReport", + "NodeHealthReportExpired", + "NodeOpenSucceeded", + "NodeOpenFailed", + "NodeRemovedFromCluster", + "NodeUp", + "PartitionNewHealthReport", + "PartitionHealthReportExpired", + "PartitionReconfigured", + "PartitionPrimaryMoveAnalysis", + "ServiceCreated", + "ServiceDeleted", + "ServiceNewHealthReport", + "ServiceHealthReportExpired", + "DeployedServicePackageNewHealthReport", + "DeployedServicePackageHealthReportExpired", + "StatefulReplicaNewHealthReport", + "StatefulReplicaHealthReportExpired", + "StatelessReplicaNewHealthReport", + "StatelessReplicaHealthReportExpired", + "ClusterNewHealthReport", + "ClusterHealthReportExpired", + "ClusterUpgradeCompleted", + "ClusterUpgradeDomainCompleted", + "ClusterUpgradeRollbackCompleted", + "ClusterUpgradeRollbackStarted", + "ClusterUpgradeStarted", + "ChaosStopped", + "ChaosStarted", + "ChaosCodePackageRestartScheduled", + "ChaosReplicaRemovalScheduled", + "ChaosPartitionSecondaryMoveScheduled", + "ChaosPartitionPrimaryMoveScheduled", + "ChaosReplicaRestartScheduled", + "ChaosNodeRestartScheduled" + ], + "x-ms-enum": { + "name": "FabricEventKind", + "modelAsString": true, + "values": [ + { + "value": "ClusterEvent" + }, + { + "value": "ContainerInstanceEvent" + }, + { + "value": "NodeEvent" + }, + { + "value": "ApplicationEvent" + }, + { + "value": "ServiceEvent" + }, + { + "value": "PartitionEvent" + }, + { + "value": "ReplicaEvent" + }, + { + "value": "PartitionAnalysisEvent" + }, + { + "value": "ApplicationCreated" + }, + { + "value": "ApplicationDeleted" + }, + { + "value": "ApplicationNewHealthReport" + }, + { + "value": "ApplicationHealthReportExpired" + }, + { + "value": "ApplicationUpgradeCompleted" + }, + { + "value": "ApplicationUpgradeDomainCompleted" + }, + { + "value": "ApplicationUpgradeRollbackCompleted" + }, + { + "value": "ApplicationUpgradeRollbackStarted" + }, + { + "value": "ApplicationUpgradeStarted" + }, + { + "value": "DeployedApplicationNewHealthReport" + }, + { + "value": "DeployedApplicationHealthReportExpired" + }, + { + "value": "ApplicationProcessExited" + }, + { + "value": "ApplicationContainerInstanceExited" + }, + { + "value": "NodeAborted" + }, + { + "value": "NodeAddedToCluster" + }, + { + "value": "NodeClosed" + }, + { + "value": "NodeDeactivateCompleted" + }, + { + "value": "NodeDeactivateStarted" + }, + { + "value": "NodeDown" + }, + { + "value": "NodeNewHealthReport" + }, + { + "value": "NodeHealthReportExpired" + }, + { + "value": "NodeOpenSucceeded" + }, + { + "value": "NodeOpenFailed" + }, + { + "value": "NodeRemovedFromCluster" + }, + { + "value": "NodeUp" + }, + { + "value": "PartitionNewHealthReport" + }, + { + "value": "PartitionHealthReportExpired" + }, + { + "value": "PartitionReconfigured" + }, + { + "value": "PartitionPrimaryMoveAnalysis" + }, + { + "value": "ServiceCreated" + }, + { + "value": "ServiceDeleted" + }, + { + "value": "ServiceNewHealthReport" + }, + { + "value": "ServiceHealthReportExpired" + }, + { + "value": "DeployedServicePackageNewHealthReport" + }, + { + "value": "DeployedServicePackageHealthReportExpired" + }, + { + "value": "StatefulReplicaNewHealthReport" + }, + { + "value": "StatefulReplicaHealthReportExpired" + }, + { + "value": "StatelessReplicaNewHealthReport" + }, + { + "value": "StatelessReplicaHealthReportExpired" + }, + { + "value": "ClusterNewHealthReport" + }, + { + "value": "ClusterHealthReportExpired" + }, + { + "value": "ClusterUpgradeCompleted" + }, + { + "value": "ClusterUpgradeDomainCompleted" + }, + { + "value": "ClusterUpgradeRollbackCompleted" + }, + { + "value": "ClusterUpgradeRollbackStarted" + }, + { + "value": "ClusterUpgradeStarted" + }, + { + "value": "ChaosStopped" + }, + { + "value": "ChaosStarted" + }, + { + "value": "ChaosCodePackageRestartScheduled" + }, + { + "value": "ChaosReplicaRemovalScheduled" + }, + { + "value": "ChaosPartitionSecondaryMoveScheduled" + }, + { + "value": "ChaosPartitionPrimaryMoveScheduled" + }, + { + "value": "ChaosReplicaRestartScheduled" + }, + { + "value": "ChaosNodeRestartScheduled" + } + ] + } + }, + "ClusterConfigurationUpgradeStatusInfo": { + "description": "Information about a standalone cluster configuration upgrade status.", + "properties": { + "UpgradeState": { + "$ref": "#/definitions/UpgradeState", + "description": "The state of the upgrade domain." + }, + "ProgressStatus": { + "type": "integer", + "description": "The cluster manifest version." + }, + "ConfigVersion": { + "type": "string", + "description": "The cluster configuration version." + }, + "Details": { + "type": "string", + "description": "The cluster upgrade status details." + } + } + }, + "FailureAction": { + "type": "string", + "description": "The compensating action to perform when a Monitored upgrade encounters monitoring policy or health policy violations.\nInvalid indicates the failure action is invalid. Rollback specifies that the upgrade will start rolling back automatically.\nManual indicates that the upgrade will switch to UnmonitoredManual upgrade mode.", + "enum": [ + "Invalid", + "Rollback", + "Manual" + ], + "x-ms-enum": { + "name": "FailureAction", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the failure action is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "Rollback", + "description": "The upgrade will start rolling back automatically. The value is 1" + }, + { + "value": "Manual", + "description": "The upgrade will switch to UnmonitoredManual upgrade mode. The value is 2" + } + ] + } + }, + "FailureReason": { + "type": "string", + "description": "The cause of an upgrade failure that resulted in FailureAction being executed.", + "enum": [ + "None", + "Interrupted", + "HealthCheck", + "UpgradeDomainTimeout", + "OverallUpgradeTimeout" + ], + "x-ms-enum": { + "name": "FailureReason", + "modelAsString": true, + "values": [ + { + "value": "None", + "description": "Indicates the reason is invalid or unknown. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "Interrupted", + "description": "There was an external request to roll back the upgrade. The value is 1" + }, + { + "value": "HealthCheck", + "description": "The upgrade failed due to health policy violations. The value is 2" + }, + { + "value": "UpgradeDomainTimeout", + "description": "An upgrade domain took longer than the allowed upgrade domain timeout to process. The value is 3" + }, + { + "value": "OverallUpgradeTimeout", + "description": "The overall upgrade took longer than the allowed upgrade timeout to process. The value is 4" + } + ] + } + }, + "FailureUpgradeDomainProgressInfo": { + "description": "Information about the upgrade domain progress at the time of upgrade failure.", + "properties": { + "DomainName": { + "$ref": "#/definitions/UpgradeDomainName", + "description": "The name of the upgrade domain" + }, + "NodeUpgradeProgressList": { + "$ref": "#/definitions/NodeUpgradeProgressInfoList", + "description": "List of upgrading nodes and their statuses" + } + } + }, + "ForceRestart": { + "type": "boolean", + "description": "If true, then processes are forcefully restarted during upgrade even when the code version has not changed (the upgrade only changes configuration or data).", + "default": false + }, + "HealthCheckRetryTimeout": { + "type": "string", + "description": "The amount of time to retry health evaluation when the application or cluster is unhealthy before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds.", + "default": "PT0H10M0S" + }, + "HealthCheckStableDuration": { + "type": "string", + "description": "The amount of time that the application or cluster must remain healthy before the upgrade proceeds to the next upgrade domain. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds.", + "default": "PT0H2M0S" + }, + "HealthCheckWaitDuration": { + "type": "string", + "description": "The amount of time to wait after completing an upgrade domain before applying health policies. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds.", + "default": "0" + }, + "HealthEvaluation": { + "discriminator": "Kind", + "description": "Represents a health evaluation which describes the data and the algorithm used by health manager to evaluate the health of an entity.", + "properties": { + "Kind": { + "$ref": "#/definitions/HealthEvaluationKind", + "description": "The health manager in the cluster performs health evaluations in determining the aggregated health state of an entity. This enumeration provides information on the kind of evaluation that was performed. Following are the possible values." + }, + "AggregatedHealthState": { + "$ref": "#/definitions/HealthState", + "description": "The health state of a Service Fabric entity such as Cluster, Node, Application, Service, Partition, Replica etc." + }, + "Description": { + "type": "string", + "description": "Description of the health evaluation, which represents a summary of the evaluation process." + } + }, + "required": [ + "Kind" + ] + }, + "HealthEvaluationKind": { + "type": "string", + "description": "The health manager in the cluster performs health evaluations in determining the aggregated health state of an entity. This enumeration provides information on the kind of evaluation that was performed. Following are the possible values.", + "enum": [ + "Invalid", + "Event", + "Replicas", + "Partitions", + "DeployedServicePackages", + "DeployedApplications", + "Services", + "Nodes", + "Applications", + "SystemApplication", + "UpgradeDomainDeployedApplications", + "UpgradeDomainNodes", + "Replica", + "Partition", + "DeployedServicePackage", + "DeployedApplication", + "Service", + "Node", + "Application", + "DeltaNodesCheck", + "UpgradeDomainDeltaNodesCheck", + "ApplicationTypeApplications", + "NodeTypeNodes" + ], + "x-ms-enum": { + "name": "HealthEvaluationKind", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates that the health evaluation is invalid. The value is zero." + }, + { + "value": "Event", + "description": "Indicates that the health evaluation is for a health event. The value is 1." + }, + { + "value": "Replicas", + "description": "Indicates that the health evaluation is for the replicas of a partition. The value is 2." + }, + { + "value": "Partitions", + "description": "Indicates that the health evaluation is for the partitions of a service. The value is 3." + }, + { + "value": "DeployedServicePackages", + "description": "Indicates that the health evaluation is for the deployed service packages of a deployed application. The value is 4." + }, + { + "value": "DeployedApplications", + "description": "Indicates that the health evaluation is for the deployed applications of an application. The value is 5." + }, + { + "value": "Services", + "description": "Indicates that the health evaluation is for services of an application. The value is 6." + }, + { + "value": "Nodes", + "description": "Indicates that the health evaluation is for the cluster nodes. The value is 7." + }, + { + "value": "Applications", + "description": "Indicates that the health evaluation is for the cluster applications. The value is 8." + }, + { + "value": "SystemApplication", + "description": "Indicates that the health evaluation is for the system application. The value is 9." + }, + { + "value": "UpgradeDomainDeployedApplications", + "description": "Indicates that the health evaluation is for the deployed applications of an application in an upgrade domain. The value is 10." + }, + { + "value": "UpgradeDomainNodes", + "description": "Indicates that the health evaluation is for the cluster nodes in an upgrade domain. The value is 11." + }, + { + "value": "Replica", + "description": "Indicates that the health evaluation is for a replica. The value is 13." + }, + { + "value": "Partition", + "description": "Indicates that the health evaluation is for a partition. The value is 14." + }, + { + "value": "DeployedServicePackage", + "description": "Indicates that the health evaluation is for a deployed service package. The value is 16." + }, + { + "value": "DeployedApplication", + "description": "Indicates that the health evaluation is for a deployed application. The value is 17." + }, + { + "value": "Service", + "description": "Indicates that the health evaluation is for a service. The value is 15." + }, + { + "value": "Node", + "description": "Indicates that the health evaluation is for a node. The value is 12." + }, + { + "value": "Application", + "description": "Indicates that the health evaluation is for an application. The value is 18." + }, + { + "value": "DeltaNodesCheck", + "description": "Indicates that the health evaluation is for the delta of unhealthy cluster nodes. The value is 19." + }, + { + "value": "UpgradeDomainDeltaNodesCheck", + "description": "Indicates that the health evaluation is for the delta of unhealthy upgrade domain cluster nodes. The value is 20." + }, + { + "value": "ApplicationTypeApplications", + "description": "– Indicates that the health evaluation is for applications of an application type. The value is 21." + }, + { + "value": "NodeTypeNodes", + "description": "– Indicates that the health evaluation is for nodes of a node type. The value is 22." + } + ] + } + }, + "HealthEvaluationWrapper": { + "description": "Wrapper object for health evaluation.", + "properties": { + "HealthEvaluation": { + "$ref": "#/definitions/HealthEvaluation", + "description": "Represents a health evaluation which describes the data and the algorithm used by health manager to evaluate the health of an entity." + } + } + }, + "HealthEvent": { + "description": "Represents health information reported on a health entity, such as cluster, application or node, with additional metadata added by the Health Manager.", + "allOf": [ + { + "$ref": "#/definitions/HealthInformation" + } + ], + "properties": { + "IsExpired": { + "type": "boolean", + "description": "Returns true if the health event is expired, otherwise false." + }, + "SourceUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "The date and time when the health report was sent by the source." + }, + "LastModifiedUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "The date and time when the health report was last modified by the health store." + }, + "LastOkTransitionAt": { + "type": "string", + "format": "date-time", + "description": "If the current health state is 'Ok', this property returns the time at which the health report was first reported with 'Ok'.\nFor periodic reporting, many reports with the same state may have been generated.\nThis property returns the date and time when the first 'Ok' health report was received.\n\nIf the current health state is 'Error' or 'Warning', returns the date and time at which the health state was last in 'Ok', before transitioning to a different state.\n\nIf the health state was never 'Ok', the value will be zero date-time." + }, + "LastWarningTransitionAt": { + "type": "string", + "format": "date-time", + "description": "If the current health state is 'Warning', this property returns the time at which the health report was first reported with 'Warning'. For periodic reporting, many reports with the same state may have been generated however, this property returns only the date and time at the first 'Warning' health report was received.\n\nIf the current health state is 'Ok' or 'Error', returns the date and time at which the health state was last in 'Warning', before transitioning to a different state.\n\nIf the health state was never 'Warning', the value will be zero date-time." + }, + "LastErrorTransitionAt": { + "type": "string", + "format": "date-time", + "description": "If the current health state is 'Error', this property returns the time at which the health report was first reported with 'Error'. For periodic reporting, many reports with the same state may have been generated however, this property returns only the date and time at the first 'Error' health report was received.\n\nIf the current health state is 'Ok' or 'Warning', returns the date and time at which the health state was last in 'Error', before transitioning to a different state.\n\nIf the health state was never 'Error', the value will be zero date-time." + } + } + }, + "HealthInformation": { + "description": "Represents common health report information. It is included in all health reports sent to health store and in all health events returned by health queries.", + "required": [ + "SourceId", + "Property", + "HealthState" + ], + "properties": { + "SourceId": { + "type": "string", + "description": "The source name that identifies the client/watchdog/system component that generated the health information." + }, + "Property": { + "type": "string", + "description": "The property of the health information. An entity can have health reports for different properties.\nThe property is a string and not a fixed enumeration to allow the reporter flexibility to categorize the state condition that triggers the report.\nFor example, a reporter with SourceId \"LocalWatchdog\" can monitor the state of the available disk on a node,\nso it can report \"AvailableDisk\" property on that node.\nThe same reporter can monitor the node connectivity, so it can report a property \"Connectivity\" on the same node.\nIn the health store, these reports are treated as separate health events for the specified node.\n\nTogether with the SourceId, the property uniquely identifies the health information." + }, + "HealthState": { + "$ref": "#/definitions/HealthState", + "description": "The health state of a Service Fabric entity such as Cluster, Node, Application, Service, Partition, Replica etc." + }, + "TimeToLiveInMilliSeconds": { + "type": "string", + "format": "duration", + "description": "The duration for which this health report is valid. This field uses ISO8601 format for specifying the duration.\nWhen clients report periodically, they should send reports with higher frequency than time to live.\nIf clients report on transition, they can set the time to live to infinite.\nWhen time to live expires, the health event that contains the health information\nis either removed from health store, if RemoveWhenExpired is true, or evaluated at error, if RemoveWhenExpired false.\n\nIf not specified, time to live defaults to infinite value." + }, + "Description": { + "type": "string", + "description": "The description of the health information. It represents free text used to add human readable information about the report.\nThe maximum string length for the description is 4096 characters.\nIf the provided string is longer, it will be automatically truncated.\nWhen truncated, the last characters of the description contain a marker \"[Truncated]\", and total string size is 4096 characters.\nThe presence of the marker indicates to users that truncation occurred.\nNote that when truncated, the description has less than 4096 characters from the original string." + }, + "SequenceNumber": { + "type": "string", + "description": "The sequence number for this health report as a numeric string.\nThe report sequence number is used by the health store to detect stale reports.\nIf not specified, a sequence number is auto-generated by the health client when a report is added." + }, + "RemoveWhenExpired": { + "type": "boolean", + "description": "Value that indicates whether the report is removed from health store when it expires.\nIf set to true, the report is removed from the health store after it expires.\nIf set to false, the report is treated as an error when expired. The value of this property is false by default.\nWhen clients report periodically, they should set RemoveWhenExpired false (default).\nThis way, if the reporter has issues (e.g. deadlock) and can't report, the entity is evaluated at error when the health report expires.\nThis flags the entity as being in Error health state." + }, + "HealthReportId": { + "type": "string", + "description": "A health report ID which identifies the health report and can be used to find more detailed information about a specific health event at\naka.ms/sfhealthid" + } + } + }, + "Int64RangePartitionInformation": { + "description": "Describes the partition information for the integer range that is based on partition schemes.", + "allOf": [ + { + "$ref": "#/definitions/PartitionInformation" + } + ], + "x-ms-discriminator-value": "Int64Range", + "properties": { + "LowKey": { + "type": "string", + "description": "Specifies the minimum key value handled by this partition." + }, + "HighKey": { + "type": "string", + "description": "Specifies the maximum key value handled by this partition." + } + } + }, + "LoadedPartitionInformationResult": { + "description": "Represents partition information.", + "properties": { + "ServiceName": { + "type": "string", + "description": "Name of the service this partition belongs to." + }, + "PartitionId": { + "$ref": "#/definitions/PartitionId", + "description": "Id of the partition." + }, + "MetricName": { + "type": "string", + "description": "Name of the metric for which this information is provided." + }, + "Load": { + "type": "integer", + "format": "int64", + "description": "Load for metric." + } + }, + "required": [ + "ServiceName", + "PartitionId", + "MetricName", + "Load" + ] + }, + "LoadedPartitionInformationResultList": { + "description": "Represents data structure that contains top/least loaded partitions for a certain metric.", + "properties": { + "ContinuationToken": { + "$ref": "#/definitions/ContinuationToken", + "description": "The continuation token parameter is used to obtain next set of results. The continuation token is included in the response of the API when the results from the system do not fit in a single response. When this value is passed to the next API call, the API returns next set of results. If there are no further results, then the continuation token is not included in the response." + }, + "Items": { + "type": "array", + "description": "List of application information.", + "items": { + "$ref": "#/definitions/LoadedPartitionInformationResult" + } + } + } + }, + "LoadedPartitionInformationQueryDescription": { + "description": "Represents data structure that contains query information.", + "properties": { + "MetricName": { + "type": "string", + "description": "Name of the metric for which this information is provided." + }, + "ServiceName": { + "type": "string", + "description": "Name of the service this partition belongs to." + }, + "Ordering": { + "type": "string", + "description": "Ordering of partitions' load.", + "$ref": "#/definitions/Ordering" + }, + "MaxResults": { + "type": "integer", + "format": "int64", + "description": "The maximum number of results to be returned as part of the paged queries. This parameter defines the upper bound on the number of results returned. The results returned can be less than the specified maximum results if they do not fit in the message as per the max message size restrictions defined in the configuration. If this parameter is zero or not specified, the paged query includes as many results as possible that fit in the return message." + }, + "ContinuationToken": { + "$ref": "#/definitions/ContinuationToken", + "description": "The continuation token parameter is used to obtain next set of results. The continuation token is included in the response of the API when the results from the system do not fit in a single response. When this value is passed to the next API call, the API returns next set of results. If there are no further results, then the continuation token is not included in the response." + } + } + }, + "MinInstanceCount": { + "type": "integer", + "default": 1, + "minimum": 1, + "description": "MinInstanceCount is the minimum number of instances that must be up to meet the EnsureAvailability safety check during operations like upgrade or deactivate node.\nThe actual number that is used is max( MinInstanceCount, ceil( MinInstancePercentage/100.0 * InstanceCount) ).\nNote, if InstanceCount is set to -1, during MinInstanceCount computation -1 is first converted into the number of nodes on which the instances are allowed to be placed according to the placement constraints on the service." + }, + "MinInstancePercentage": { + "type": "integer", + "default": 0, + "minimum": 0, + "maximum": 100, + "description": "MinInstancePercentage is the minimum percentage of InstanceCount that must be up to meet the EnsureAvailability safety check during operations like upgrade or deactivate node.\nThe actual number that is used is max( MinInstanceCount, ceil( MinInstancePercentage/100.0 * InstanceCount) ).\nNote, if InstanceCount is set to -1, during MinInstancePercentage computation, -1 is first converted into the number of nodes on which the instances are allowed to be placed according to the placement constraints on the service." + }, + "MonitoringPolicyDescription": { + "description": "Describes the parameters for monitoring an upgrade in Monitored mode.", + "properties": { + "FailureAction": { + "$ref": "#/definitions/FailureAction", + "description": "The compensating action to perform when a Monitored upgrade encounters monitoring policy or health policy violations.\nInvalid indicates the failure action is invalid. Rollback specifies that the upgrade will start rolling back automatically.\nManual indicates that the upgrade will switch to UnmonitoredManual upgrade mode." + }, + "HealthCheckWaitDurationInMilliseconds": { + "$ref": "#/definitions/HealthCheckWaitDuration", + "description": "The amount of time to wait after completing an upgrade domain before applying health policies. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + }, + "HealthCheckStableDurationInMilliseconds": { + "$ref": "#/definitions/HealthCheckStableDuration", + "description": "The amount of time that the application or cluster must remain healthy before the upgrade proceeds to the next upgrade domain. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + }, + "HealthCheckRetryTimeoutInMilliseconds": { + "$ref": "#/definitions/HealthCheckRetryTimeout", + "description": "The amount of time to retry health evaluation when the application or cluster is unhealthy before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + }, + "UpgradeTimeoutInMilliseconds": { + "$ref": "#/definitions/UpgradeTimeout", + "description": "The amount of time the overall upgrade has to complete before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + }, + "UpgradeDomainTimeoutInMilliseconds": { + "$ref": "#/definitions/UpgradeDomainTimeout", + "description": "The amount of time each upgrade domain has to complete before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + } + } + }, + "NamedPartitionInformation": { + "description": "Describes the partition information for the name as a string that is based on partition schemes.", + "allOf": [ + { + "$ref": "#/definitions/PartitionInformation" + } + ], + "x-ms-discriminator-value": "Named", + "properties": { + "Name": { + "type": "string", + "description": "Name of the partition." + } + } + }, + "NextUpgradeDomain": { + "type": "string", + "description": "The name of the next upgrade domain to be processed." + }, + "NodeDeactivationInfo": { + "description": "Information about the node deactivation. This information is valid for a node that is undergoing deactivation or has already been deactivated.", + "properties": { + "NodeDeactivationIntent": { + "$ref": "#/definitions/NodeDeactivationIntent", + "description": "The intent or the reason for deactivating the node. Following are the possible values for it." + }, + "NodeDeactivationStatus": { + "$ref": "#/definitions/NodeDeactivationStatus", + "description": "The status of node deactivation operation. Following are the possible values." + }, + "NodeDeactivationTask": { + "$ref": "#/definitions/NodeDeactivationTaskList", + "description": "List of tasks representing the deactivation operation on the node." + }, + "PendingSafetyChecks": { + "$ref": "#/definitions/SafetyCheckInfoList", + "description": "List of pending safety checks" + } + } + }, + "NodeDeactivationIntent": { + "type": "string", + "description": "The intent or the reason for deactivating the node. Following are the possible values for it.", + "enum": [ + "Invalid", + "Pause", + "Restart", + "RemoveData", + "RemoveNode" + ], + "x-ms-enum": { + "name": "NodeDeactivationIntent", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the node deactivation intent is invalid. All Service Fabric enumerations have the invalid type. The value is zero. This value is not used." + }, + { + "value": "Pause", + "description": "Indicates that the node should be paused. The value is 1." + }, + { + "value": "Restart", + "description": "Indicates that the intent is for the node to be restarted after a short period of time. Service Fabric does not restart the node, this action is done outside of Service Fabric. The value is 2." + }, + { + "value": "RemoveData", + "description": "Indicates that the intent is to reimage the node. Service Fabric does not reimage the node, this action is done outside of Service Fabric. The value is 3." + }, + { + "value": "RemoveNode", + "description": "Indicates that the node is being decommissioned and is not expected to return. Service Fabric does not decommission the node, this action is done outside of Service Fabric. The value is 4." + } + ] + } + }, + "NodeDeactivationStatus": { + "type": "string", + "description": "The status of node deactivation operation. Following are the possible values.", + "enum": [ + "None", + "SafetyCheckInProgress", + "SafetyCheckComplete", + "Completed" + ], + "x-ms-enum": { + "name": "NodeDeactivationStatus", + "modelAsString": true, + "values": [ + { + "value": "None", + "description": "No status is associated with the task. The value is zero." + }, + { + "value": "SafetyCheckInProgress", + "description": "When a node is deactivated Service Fabric performs checks to ensure that the operation is safe to proceed to ensure availability of the service and reliability of the state. This value indicates that one or more safety checks are in progress. The value is 1." + }, + { + "value": "SafetyCheckComplete", + "description": "When a node is deactivated Service Fabric performs checks to ensure that the operation is safe to proceed to ensure availability of the service and reliability of the state. This value indicates that all safety checks have been completed. The value is 2." + }, + { + "value": "Completed", + "description": "The task is completed. The value is 3." + } + ] + } + }, + "NodeDeactivationTask": { + "description": "The task representing the deactivation operation on the node.", + "properties": { + "NodeDeactivationTaskId": { + "$ref": "#/definitions/NodeDeactivationTaskId", + "description": "Identity of the task related to deactivation operation on the node." + }, + "NodeDeactivationIntent": { + "$ref": "#/definitions/NodeDeactivationIntent", + "description": "The intent or the reason for deactivating the node. Following are the possible values for it." + } + } + }, + "NodeDeactivationTaskId": { + "description": "Identity of the task related to deactivation operation on the node.", + "properties": { + "Id": { + "type": "string", + "description": "Value of the task id." + }, + "NodeDeactivationTaskType": { + "$ref": "#/definitions/NodeDeactivationTaskType", + "description": "The type of the task that performed the node deactivation. Following are the possible values." + } + } + }, + "NodeDeactivationTaskList": { + "type": "array", + "items": { + "$ref": "#/definitions/NodeDeactivationTask" + }, + "description": "List of tasks representing the deactivation operation on the node." + }, + "NodeDeactivationTaskType": { + "type": "string", + "description": "The type of the task that performed the node deactivation. Following are the possible values.", + "enum": [ + "Invalid", + "Infrastructure", + "Repair", + "Client" + ], + "x-ms-enum": { + "name": "NodeDeactivationTaskType", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the node deactivation task type is invalid. All Service Fabric enumerations have the invalid type. The value is zero. This value is not used." + }, + { + "value": "Infrastructure", + "description": "Specifies the task created by Infrastructure hosting the nodes. The value is 1." + }, + { + "value": "Repair", + "description": "Specifies the task that was created by the Repair Manager service. The value is 2." + }, + { + "value": "Client", + "description": "Specifies that the task was created by using the public API. The value is 3." + } + ] + } + }, + "NodeEvent": { + "description": "Represents the base for all Node Events.", + "allOf": [ + { + "$ref": "#/definitions/FabricEvent" + } + ], + "properties": { + "NodeName": { + "$ref": "#/definitions/NodeName", + "description": "The name of a Service Fabric node." + } + }, + "required": [ + "NodeName" + ], + "x-ms-discriminator-value": "NodeEvent" + }, + "NodeEventList": { + "description": "A list of NodeEvent objects.", + "type": "array", + "items": { + "$ref": "#/definitions/NodeEvent" + } + }, + "NodeHealth": { + "description": "Information about the health of a Service Fabric node.", + "allOf": [ + { + "$ref": "#/definitions/EntityHealth" + } + ], + "properties": { + "Name": { + "$ref": "#/definitions/NodeName", + "description": "Name of the node whose health information is described by this object." + } + } + }, + "NodeHealthEvaluation": { + "x-ms-discriminator-value": "Node", + "description": "Represents health evaluation for a node, containing information about the data and the algorithm used by health store to evaluate health. The evaluation is returned only when the aggregated health state is either Error or Warning.", + "allOf": [ + { + "$ref": "#/definitions/HealthEvaluation" + } + ], + "properties": { + "NodeName": { + "$ref": "#/definitions/NodeName", + "description": "The name of a Service Fabric node." + }, + "UnhealthyEvaluations": { + "$ref": "#/definitions/UnhealthyEvaluations", + "description": "List of unhealthy evaluations that led to the current aggregated health state of the node. The types of the unhealthy evaluations can be EventHealthEvaluation." + } + } + }, + "NodeHealthState": { + "description": "Represents the health state of a node, which contains the node identifier and its aggregated health state.", + "allOf": [ + { + "$ref": "#/definitions/EntityHealthState" + } + ], + "properties": { + "Name": { + "$ref": "#/definitions/NodeName", + "description": "The name of a Service Fabric node." + }, + "Id": { + "$ref": "#/definitions/NodeId", + "description": "An internal ID used by Service Fabric to uniquely identify a node. Node Id is deterministically generated from node name." + } + } + }, + "NodeHealthStateChunk": { + "description": "Represents the health state chunk of a node, which contains the node name and its aggregated health state.", + "allOf": [ + { + "$ref": "#/definitions/EntityHealthStateChunk" + } + ], + "properties": { + "NodeName": { + "$ref": "#/definitions/NodeName", + "description": "The name of a Service Fabric node." + } + } + }, + "NodeHealthStateChunkList": { + "description": "The list of node health state chunks in the cluster that respect the input filters in the chunk query. Returned by get cluster health state chunks query.", + "allOf": [ + { + "$ref": "#/definitions/EntityHealthStateChunkList" + } + ], + "properties": { + "Items": { + "type": "array", + "items": { + "$ref": "#/definitions/NodeHealthStateChunk" + }, + "description": "The list of node health state chunks that respect the input filters in the chunk query." + } + } + }, + "NodeHealthStateFilter": { + "description": "Defines matching criteria to determine whether a node should be included in the returned cluster health chunk.\nOne filter can match zero, one or multiple nodes, depending on its properties.\nCan be specified in the cluster health chunk query description.", + "properties": { + "NodeNameFilter": { + "type": "string", + "description": "Name of the node that matches the filter. The filter is applied only to the specified node, if it exists.\nIf the node doesn't exist, no node is returned in the cluster health chunk based on this filter.\nIf the node exists, it is included in the cluster health chunk if the health state matches the other filter properties.\nIf not specified, all nodes that match the parent filters (if any) are taken into consideration and matched against the other filter members, like health state filter." + }, + "HealthStateFilter": { + "type": "integer", + "default": 0, + "description": "The filter for the health state of the nodes. It allows selecting nodes if they match the desired health states.\nThe possible values are integer value of one of the following health states. Only nodes that match the filter are returned. All nodes are used to evaluate the cluster aggregated health state.\nIf not specified, default value is None, unless the node name is specified. If the filter has default value and node name is specified, the matching node is returned.\nThe state values are flag-based enumeration, so the value could be a combination of these values obtained using bitwise 'OR' operator.\nFor example, if the provided value is 6, it matches nodes with HealthState value of OK (2) and Warning (4).\n\n- Default - Default value. Matches any HealthState. The value is zero.\n- None - Filter that doesn't match any HealthState value. Used in order to return no results on a given collection of states. The value is 1.\n- Ok - Filter that matches input with HealthState value Ok. The value is 2.\n- Warning - Filter that matches input with HealthState value Warning. The value is 4.\n- Error - Filter that matches input with HealthState value Error. The value is 8.\n- All - Filter that matches input with any HealthState value. The value is 65535." + } + } + }, + "NodeId": { + "description": "An internal ID used by Service Fabric to uniquely identify a node. Node Id is deterministically generated from node name.", + "properties": { + "Id": { + "type": "string", + "description": "Value of the node Id. This is a 128 bit integer." + } + } + }, + "NodeIdList": { + "description": "A list of NodeIds.", + "type": "array", + "items": { + "$ref": "#/definitions/NodeId" + } + }, + "NodeInfo": { + "description": "Information about a node in Service Fabric cluster.", + "properties": { + "Name": { + "$ref": "#/definitions/NodeName", + "description": "The name of a Service Fabric node." + }, + "IpAddressOrFQDN": { + "type": "string", + "description": "The IP address or fully qualified domain name of the node." + }, + "Type": { + "type": "string", + "description": "The type of the node." + }, + "CodeVersion": { + "type": "string", + "description": "The version of Service Fabric binaries that the node is running." + }, + "ConfigVersion": { + "type": "string", + "description": "The version of Service Fabric cluster manifest that the node is using." + }, + "NodeStatus": { + "$ref": "#/definitions/NodeStatus", + "description": "The status of the node." + }, + "NodeUpTimeInSeconds": { + "type": "string", + "description": "Time in seconds since the node has been in NodeStatus Up. Value zero indicates that the node is not Up." + }, + "HealthState": { + "$ref": "#/definitions/HealthState", + "description": "The health state of a Service Fabric entity such as Cluster, Node, Application, Service, Partition, Replica etc." + }, + "IsSeedNode": { + "type": "boolean", + "description": "Indicates if the node is a seed node or not. Returns true if the node is a seed node, otherwise false. A quorum of seed nodes are required for proper operation of Service Fabric cluster." + }, + "UpgradeDomain": { + "type": "string", + "description": "The upgrade domain of the node." + }, + "FaultDomain": { + "type": "string", + "description": "The fault domain of the node." + }, + "Id": { + "$ref": "#/definitions/NodeId", + "description": "An internal ID used by Service Fabric to uniquely identify a node. Node Id is deterministically generated from node name." + }, + "InstanceId": { + "type": "string", + "description": "The ID representing the node instance. While the ID of the node is deterministically generated from the node name and remains same across restarts, the InstanceId changes every time node restarts." + }, + "NodeDeactivationInfo": { + "$ref": "#/definitions/NodeDeactivationInfo", + "description": "Information about the node deactivation. This information is valid for a node that is undergoing deactivation or has already been deactivated." + }, + "IsStopped": { + "type": "boolean", + "description": "Indicates if the node is stopped by calling stop node API or not. Returns true if the node is stopped, otherwise false." + }, + "NodeDownTimeInSeconds": { + "type": "string", + "description": "Time in seconds since the node has been in NodeStatus Down. Value zero indicates node is not NodeStatus Down." + }, + "NodeUpAt": { + "type": "string", + "format": "date-time", + "description": "Date time in UTC when the node came up. If the node has never been up then this value will be zero date time." + }, + "NodeDownAt": { + "type": "string", + "format": "date-time", + "description": "Date time in UTC when the node went down. If node has never been down then this value will be zero date time." + }, + "NodeTags": { + "$ref": "#/definitions/NodeTagsList", + "description": "List that contains tags, which will be applied to the nodes." + } + } + }, + "NodeLoadInfo": { + "description": "Information about load on a Service Fabric node. It holds a summary of all metrics and their load on a node.", + "properties": { + "NodeName": { + "$ref": "#/definitions/NodeName", + "description": "Name of the node for which the load information is provided by this object." + }, + "NodeLoadMetricInformation": { + "type": "array", + "items": { + "$ref": "#/definitions/NodeLoadMetricInformation" + }, + "description": "List that contains metrics and their load information on this node." + } + } + }, + "NodeLoadMetricInformation": { + "description": "Represents data structure that contains load information for a certain metric on a node.", + "properties": { + "Name": { + "type": "string", + "description": "Name of the metric for which this load information is provided." + }, + "NodeCapacity": { + "type": "string", + "description": "Total capacity on the node for this metric." + }, + "NodeLoad": { + "type": "string", + "description": "Current load on the node for this metric. In future releases of Service Fabric this parameter will be deprecated in favor of CurrentNodeLoad." + }, + "NodeRemainingCapacity": { + "type": "string", + "description": "The remaining capacity on the node for this metric. In future releases of Service Fabric this parameter will be deprecated in favor of NodeCapacityRemaining." + }, + "IsCapacityViolation": { + "type": "boolean", + "description": "Indicates if there is a capacity violation for this metric on the node." + }, + "NodeBufferedCapacity": { + "type": "string", + "description": "The value that indicates the reserved capacity for this metric on the node." + }, + "NodeRemainingBufferedCapacity": { + "type": "string", + "description": "The remaining reserved capacity for this metric on the node. In future releases of Service Fabric this parameter will be deprecated in favor of BufferedNodeCapacityRemaining." + }, + "CurrentNodeLoad": { + "type": "string", + "format": "double", + "description": "Current load on the node for this metric." + }, + "NodeCapacityRemaining": { + "type": "string", + "format": "double", + "description": "The remaining capacity on the node for the metric." + }, + "BufferedNodeCapacityRemaining": { + "type": "string", + "format": "double", + "description": "The remaining capacity which is not reserved by NodeBufferPercentage for this metric on the node." + }, + "PlannedNodeLoadRemoval": { + "type": "string", + "format": "double", + "description": "This value represents the load of the replicas that are planned to be removed in the future.\nThis kind of load is reported for replicas that are currently being moving to other nodes and for replicas that are currently being dropped but still use the load on the source node." + } + } + }, + "NodeName": { + "type": "string", + "description": "The name of a Service Fabric node." + }, + "NodeType": { + "type": "string", + "description": "The type name of a Service Fabric node.\nRefer to the article [The relationship between Service Fabric node types and Virtual Machine Scale Sets](https://docs.microsoft.com/azure/service-fabric/service-fabric-cluster-nodetypes) for more details." + }, + "NodeTypeName": { + "type": "string", + "description": "The node type name as defined in the cluster manifest." + }, + "NodesHealthEvaluation": { + "x-ms-discriminator-value": "Nodes", + "description": "Represents health evaluation for nodes, containing health evaluations for each unhealthy node that impacted current aggregated health state. Can be returned when evaluating cluster health and the aggregated health state is either Error or Warning.", + "allOf": [ + { + "$ref": "#/definitions/HealthEvaluation" + } + ], + "properties": { + "MaxPercentUnhealthyNodes": { + "type": "integer", + "description": "Maximum allowed percentage of unhealthy nodes from the ClusterHealthPolicy." + }, + "TotalCount": { + "type": "integer", + "format": "int64", + "description": "Total number of nodes found in the health store." + }, + "UnhealthyEvaluations": { + "$ref": "#/definitions/UnhealthyEvaluations", + "description": "List of unhealthy evaluations that led to the aggregated health state. Includes all the unhealthy NodeHealthEvaluation that impacted the aggregated health." + } + } + }, + "NodeStatus": { + "type": "string", + "description": "The status of the node.", + "enum": [ + "Invalid", + "Up", + "Down", + "Enabling", + "Disabling", + "Disabled", + "Unknown", + "Removed" + ], + "x-ms-enum": { + "name": "NodeStatus", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the node status is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "Up", + "description": "Indicates the node is up. The value is 1." + }, + { + "value": "Down", + "description": "Indicates the node is down. The value is 2." + }, + { + "value": "Enabling", + "description": "Indicates the node is in process of being enabled. The value is 3." + }, + { + "value": "Disabling", + "description": "Indicates the node is in the process of being disabled. The value is 4." + }, + { + "value": "Disabled", + "description": "Indicates the node is disabled. The value is 5." + }, + { + "value": "Unknown", + "description": "Indicates the node is unknown. A node would be in Unknown state if Service Fabric does not have authoritative information about that node. This can happen if the system learns about a node at runtime.The value is 6." + }, + { + "value": "Removed", + "description": "Indicates the node is removed. A node would be in Removed state if NodeStateRemoved API has been called for this node. In other words, Service Fabric has been informed that the persisted state on the node has been permanently lost. The value is 7." + } + ] + } + }, + "NodeUpgradePhase": { + "type": "string", + "description": "The state of the upgrading node.", + "enum": [ + "Invalid", + "PreUpgradeSafetyCheck", + "Upgrading", + "PostUpgradeSafetyCheck" + ], + "x-ms-enum": { + "name": "NodeUpgradePhase", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the upgrade state is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "PreUpgradeSafetyCheck", + "description": "The upgrade has not started yet due to pending safety checks. The value is 1" + }, + { + "value": "Upgrading", + "description": "The upgrade is in progress. The value is 2" + }, + { + "value": "PostUpgradeSafetyCheck", + "description": "The upgrade has completed and post upgrade safety checks are being performed. The value is 3" + } + ] + } + }, + "NodeUpgradeProgressInfo": { + "description": "Information about the upgrading node and its status", + "properties": { + "NodeName": { + "$ref": "#/definitions/NodeName", + "description": "The name of a Service Fabric node." + }, + "UpgradePhase": { + "$ref": "#/definitions/NodeUpgradePhase", + "description": "The state of the upgrading node." + }, + "PendingSafetyChecks": { + "$ref": "#/definitions/SafetyCheckInfoList", + "description": "List of pending safety checks" + } + } + }, + "NodeUpgradeProgressInfoList": { + "type": "array", + "description": "List of upgrading nodes and their statuses", + "items": { + "$ref": "#/definitions/NodeUpgradeProgressInfo" + } + }, + "PagedApplicationInfoList": { + "description": "The list of applications in the cluster. The list is paged when all of the results cannot fit in a single message. The next set of results can be obtained by executing the same query with the continuation token provided in this list.", + "properties": { + "ContinuationToken": { + "$ref": "#/definitions/ContinuationToken", + "description": "The continuation token parameter is used to obtain next set of results. The continuation token is included in the response of the API when the results from the system do not fit in a single response. When this value is passed to the next API call, the API returns next set of results. If there are no further results, then the continuation token is not included in the response." + }, + "Items": { + "type": "array", + "description": "List of application information.", + "items": { + "$ref": "#/definitions/ApplicationInfo" + } + } + } + }, + "PagedDeployedApplicationInfoList": { + "description": "The list of deployed applications in activating, downloading, or active states on a node.\nThe list is paged when all of the results cannot fit in a single message.\nThe next set of results can be obtained by executing the same query with the continuation token provided in this list.", + "properties": { + "ContinuationToken": { + "$ref": "#/definitions/ContinuationToken", + "description": "The continuation token parameter is used to obtain next set of results. The continuation token is included in the response of the API when the results from the system do not fit in a single response. When this value is passed to the next API call, the API returns next set of results. If there are no further results, then the continuation token is not included in the response." + }, + "Items": { + "type": "array", + "description": "List of deployed application information.", + "items": { + "$ref": "#/definitions/DeployedApplicationInfo" + } + } + } + }, + "PagedNodeInfoList": { + "description": "The list of nodes in the cluster. The list is paged when all of the results cannot fit in a single message. The next set of results can be obtained by executing the same query with the continuation token provided in this list.", + "properties": { + "ContinuationToken": { + "$ref": "#/definitions/ContinuationToken", + "description": "The continuation token parameter is used to obtain next set of results. The continuation token is included in the response of the API when the results from the system do not fit in a single response. When this value is passed to the next API call, the API returns next set of results. If there are no further results, then the continuation token is not included in the response." + }, + "Items": { + "type": "array", + "description": "List of node information.", + "items": { + "$ref": "#/definitions/NodeInfo" + } + } + } + }, + "PagedServicePartitionInfoList": { + "description": "The list of partition in the cluster for a service. The list is paged when all of the results cannot fit in a single message. The next set of results can be obtained by executing the same query with the continuation token provided in this list.", + "properties": { + "ContinuationToken": { + "$ref": "#/definitions/ContinuationToken", + "description": "The continuation token parameter is used to obtain next set of results. The continuation token is included in the response of the API when the results from the system do not fit in a single response. When this value is passed to the next API call, the API returns next set of results. If there are no further results, then the continuation token is not included in the response." + }, + "Items": { + "type": "array", + "description": "List of service partition information.", + "items": { + "$ref": "#/definitions/ServicePartitionInfo" + } + } + } + }, + "PagedReplicaInfoList": { + "description": "The list of replicas in the cluster for a given partition. The list is paged when all of the results cannot fit in a single message. The next set of results can be obtained by executing the same query with the continuation token provided in this list.", + "properties": { + "ContinuationToken": { + "$ref": "#/definitions/ContinuationToken", + "description": "The continuation token parameter is used to obtain next set of results. The continuation token is included in the response of the API when the results from the system do not fit in a single response. When this value is passed to the next API call, the API returns next set of results. If there are no further results, then the continuation token is not included in the response." + }, + "Items": { + "type": "array", + "description": "List of replica information.", + "items": { + "$ref": "#/definitions/ReplicaInfo" + } + } + } + }, + "PagedServiceInfoList": { + "description": "The list of services in the cluster for an application. The list is paged when all of the results cannot fit in a single message. The next set of results can be obtained by executing the same query with the continuation token provided in this list.", + "properties": { + "ContinuationToken": { + "$ref": "#/definitions/ContinuationToken", + "description": "The continuation token parameter is used to obtain next set of results. The continuation token is included in the response of the API when the results from the system do not fit in a single response. When this value is passed to the next API call, the API returns next set of results. If there are no further results, then the continuation token is not included in the response." + }, + "Items": { + "type": "array", + "description": "List of service information.", + "items": { + "$ref": "#/definitions/ServiceInfo" + } + } + } + }, + "PartitionAnalysisEvent": { + "description": "Represents the base for all Partition Analysis Events.", + "allOf": [ + { + "$ref": "#/definitions/PartitionEvent" + } + ], + "properties": { + "Metadata": { + "$ref": "#/definitions/AnalysisEventMetadata", + "description": "Metadata about an Analysis Event." + } + }, + "required": [ + "Metadata" + ], + "x-ms-discriminator-value": "PartitionAnalysisEvent" + }, + "PartitionEvent": { + "description": "Represents the base for all Partition Events.", + "allOf": [ + { + "$ref": "#/definitions/FabricEvent" + } + ], + "properties": { + "PartitionId": { + "$ref": "#/definitions/PartitionId", + "description": "An internal ID used by Service Fabric to uniquely identify a partition. This is a randomly generated GUID when the service was created. The partition ID is unique and does not change for the lifetime of the service. If the same service was deleted and recreated the IDs of its partitions would be different." + } + }, + "required": [ + "PartitionId" + ], + "x-ms-discriminator-value": "PartitionEvent" + }, + "PartitionEventList": { + "description": "A list of PartitionEvent objects.", + "type": "array", + "items": { + "$ref": "#/definitions/PartitionEvent" + } + }, + "PartitionHealth": { + "description": "Information about the health of a Service Fabric partition.", + "allOf": [ + { + "$ref": "#/definitions/EntityHealth" + } + ], + "properties": { + "PartitionId": { + "$ref": "#/definitions/PartitionId", + "description": "ID of the partition whose health information is described by this object." + }, + "ReplicaHealthStates": { + "type": "array", + "items": { + "$ref": "#/definitions/ReplicaHealthState" + }, + "description": "The list of replica health states associated with the partition." + } + } + }, + "PartitionHealthEvaluation": { + "x-ms-discriminator-value": "Partition", + "description": "Represents health evaluation for a partition, containing information about the data and the algorithm used by health store to evaluate health. The evaluation is returned only when the aggregated health state is either Error or Warning.", + "allOf": [ + { + "$ref": "#/definitions/HealthEvaluation" + } + ], + "properties": { + "PartitionId": { + "$ref": "#/definitions/PartitionId", + "description": "Id of the partition whose health evaluation is described by this object." + }, + "UnhealthyEvaluations": { + "$ref": "#/definitions/UnhealthyEvaluations", + "description": "List of unhealthy evaluations that led to the current aggregated health state of the partition. The types of the unhealthy evaluations can be ReplicasHealthEvaluation or EventHealthEvaluation." + } + } + }, + "PartitionHealthState": { + "description": "Represents the health state of a partition, which contains the partition identifier and its aggregated health state.", + "allOf": [ + { + "$ref": "#/definitions/EntityHealthState" + } + ], + "properties": { + "PartitionId": { + "$ref": "#/definitions/PartitionId", + "description": "Id of the partition whose health state is described by this object." + } + } + }, + "PartitionHealthStateChunk": { + "description": "Represents the health state chunk of a partition, which contains the partition ID, its aggregated health state and any replicas that respect the filters in the cluster health chunk query description.", + "allOf": [ + { + "$ref": "#/definitions/EntityHealthStateChunk" + } + ], + "properties": { + "PartitionId": { + "$ref": "#/definitions/PartitionId", + "description": "The Id of the partition." + }, + "ReplicaHealthStateChunks": { + "$ref": "#/definitions/ReplicaHealthStateChunkList", + "description": "The list of replica health state chunks belonging to the partition that respect the filters in the cluster health chunk query description." + } + } + }, + "PartitionHealthStateChunkList": { + "description": "The list of partition health state chunks that respect the input filters in the chunk query description.\nReturned by get cluster health state chunks query as part of the parent application hierarchy.", + "properties": { + "Items": { + "type": "array", + "items": { + "$ref": "#/definitions/PartitionHealthStateChunk" + }, + "description": "The list of partition health state chunks that respect the input filters in the chunk query." + } + } + }, + "PartitionHealthStateFilter": { + "description": "Defines matching criteria to determine whether a partition should be included as a child of a service in the cluster health chunk.\nThe partitions are only returned if the parent entities match a filter specified in the cluster health chunk query description. The parent service and application must be included in the cluster health chunk.\nOne filter can match zero, one or multiple partitions, depending on its properties.", + "properties": { + "PartitionIdFilter": { + "type": "string", + "format": "uuid", + "description": "ID of the partition that matches the filter. The filter is applied only to the specified partition, if it exists.\nIf the partition doesn't exist, no partition is returned in the cluster health chunk based on this filter.\nIf the partition exists, it is included in the cluster health chunk if it respects the other filter properties.\nIf not specified, all partitions that match the parent filters (if any) are taken into consideration and matched against the other filter members, like health state filter." + }, + "HealthStateFilter": { + "type": "integer", + "default": 0, + "description": "The filter for the health state of the partitions. It allows selecting partitions if they match the desired health states.\nThe possible values are integer value of one of the following health states. Only partitions that match the filter are returned. All partitions are used to evaluate the cluster aggregated health state.\nIf not specified, default value is None, unless the partition ID is specified. If the filter has default value and partition ID is specified, the matching partition is returned.\nThe state values are flag-based enumeration, so the value could be a combination of these values obtained using bitwise 'OR' operator.\nFor example, if the provided value is 6, it matches partitions with HealthState value of OK (2) and Warning (4).\n\n- Default - Default value. Matches any HealthState. The value is zero.\n- None - Filter that doesn't match any HealthState value. Used in order to return no results on a given collection of states. The value is 1.\n- Ok - Filter that matches input with HealthState value Ok. The value is 2.\n- Warning - Filter that matches input with HealthState value Warning. The value is 4.\n- Error - Filter that matches input with HealthState value Error. The value is 8.\n- All - Filter that matches input with any HealthState value. The value is 65535." + }, + "ReplicaFilters": { + "type": "array", + "items": { + "$ref": "#/definitions/ReplicaHealthStateFilter" + }, + "description": "Defines a list of filters that specify which replicas to be included in the returned cluster health chunk as children of the parent partition. The replicas are returned only if the parent partition matches a filter.\nIf the list is empty, no replicas are returned. All the replicas are used to evaluate the parent partition aggregated health state, regardless of the input filters.\nThe partition filter may specify multiple replica filters.\nFor example, it can specify a filter to return all replicas with health state Error and another filter to always include a replica identified by its replica id." + } + } + }, + "PartitionId": { + "type": "string", + "format": "uuid", + "description": "An internal ID used by Service Fabric to uniquely identify a partition. This is a randomly generated GUID when the service was created. The partition ID is unique and does not change for the lifetime of the service. If the same service was deleted and recreated the IDs of its partitions would be different." + }, + "PartitionInformation": { + "discriminator": "ServicePartitionKind", + "description": "Information about the partition identity, partitioning scheme and keys supported by it.", + "required": [ + "ServicePartitionKind" + ], + "properties": { + "ServicePartitionKind": { + "$ref": "#/definitions/ServicePartitionKind", + "description": "The kind of partitioning scheme used to partition the service." + }, + "Id": { + "$ref": "#/definitions/PartitionId", + "description": "An internal ID used by Service Fabric to uniquely identify a partition. This is a randomly generated GUID when the service was created. The partition ID is unique and does not change for the lifetime of the service. If the same service was deleted and recreated the IDs of its partitions would be different." + } + } + }, + "ProvisionFabricDescription": { + "description": "Describes the parameters for provisioning a cluster.", + "properties": { + "CodeFilePath": { + "type": "string", + "description": "The cluster code package file path." + }, + "ClusterManifestFilePath": { + "type": "string", + "description": "The cluster manifest file path." + } + } + }, + "ProvisionApplicationTypeKind": { + "type": "string", + "description": "The kind of application type registration or provision requested. The application package can be registered or provisioned either from the image store or from an external store. Following are the kinds of the application type provision.", + "enum": [ + "Invalid", + "ImageStorePath", + "ExternalStore" + ], + "x-ms-enum": { + "name": "ProvisionApplicationTypeKind", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates that the provision kind is invalid. This value is default and should not be used. The value is zero." + }, + { + "value": "ImageStorePath", + "description": "Indicates that the provision is for a package that was previously uploaded to the image store. The value is 1." + }, + { + "value": "ExternalStore", + "description": "Indicates that the provision is for an application package that was previously uploaded to an external store. The application package ends with the extension *.sfpkg. The value is 2." + } + ] + } + }, + "ProvisionApplicationTypeDescriptionBase": { + "discriminator": "Kind", + "description": "Represents the type of registration or provision requested, and if the operation needs to be asynchronous or not. Supported types of provision operations are from either image store or external store.", + "properties": { + "Kind": { + "$ref": "#/definitions/ProvisionApplicationTypeKind", + "description": "The kind of application type registration or provision requested. The application package can be registered or provisioned either from the image store or from an external store. Following are the kinds of the application type provision." + }, + "Async": { + "type": "boolean", + "description": "Indicates whether or not provisioning should occur asynchronously. When set to true, the provision operation returns when the request is accepted by the system, and the provision operation continues without any timeout limit. The default value is false. For large application packages, we recommend setting the value to true." + } + }, + "required": [ + "Kind", + "Async" + ] + }, + "ProvisionApplicationTypeDescription": { + "description": "Describes the operation to register or provision an application type using an application package uploaded to the Service Fabric image store.", + "required": [ + "ApplicationTypeBuildPath" + ], + "allOf": [ + { + "$ref": "#/definitions/ProvisionApplicationTypeDescriptionBase" + } + ], + "properties": { + "ApplicationTypeBuildPath": { + "description": "The relative path for the application package in the image store specified during the prior upload operation.", + "type": "string" + }, + "ApplicationPackageCleanupPolicy": { + "$ref": "#/definitions/ApplicationPackageCleanupPolicy", + "description": "The kind of action that needs to be taken for cleaning up the application package after successful provision." + } + }, + "x-ms-discriminator-value": "ImageStorePath" + }, + "ExternalStoreProvisionApplicationTypeDescription": { + "description": "Describes the operation to register or provision an application type using an application package from an external store instead of a package uploaded to the Service Fabric image store.", + "allOf": [ + { + "$ref": "#/definitions/ProvisionApplicationTypeDescriptionBase" + } + ], + "properties": { + "ApplicationPackageDownloadUri": { + "description": "The path to the '.sfpkg' application package from where the application package can be downloaded using HTTP or HTTPS protocols. The application package can be stored in an external store that provides GET operation to download the file. Supported protocols are HTTP and HTTPS, and the path must allow READ access.", + "type": "string" + }, + "ApplicationTypeName": { + "description": "The application type name represents the name of the application type found in the application manifest.", + "type": "string" + }, + "ApplicationTypeVersion": { + "description": "The application type version represents the version of the application type found in the application manifest.", + "type": "string" + } + }, + "x-ms-discriminator-value": "ExternalStore", + "required": [ + "ApplicationPackageDownloadUri", + "ApplicationTypeName", + "ApplicationTypeVersion" + ] + }, + "UnprovisionFabricDescription": { + "description": "Describes the parameters for unprovisioning a cluster.", + "properties": { + "CodeVersion": { + "type": "string", + "description": "The cluster code package version." + }, + "ConfigVersion": { + "type": "string", + "description": "The cluster manifest version." + } + } + }, + "ResumeClusterUpgradeDescription": { + "description": "Describes the parameters for resuming a cluster upgrade.", + "properties": { + "UpgradeDomain": { + "type": "string", + "description": "The next upgrade domain for this cluster upgrade." + } + }, + "required": [ + "UpgradeDomain" + ] + }, + "StartClusterUpgradeDescription": { + "description": "Describes the parameters for starting a cluster upgrade.", + "properties": { + "CodeVersion": { + "type": "string", + "description": "The cluster code version." + }, + "ConfigVersion": { + "type": "string", + "description": "The cluster configuration version." + }, + "UpgradeKind": { + "$ref": "#/definitions/UpgradeKind", + "description": "The kind of upgrade out of the following possible values." + }, + "RollingUpgradeMode": { + "$ref": "#/definitions/UpgradeMode", + "description": "The mode used to monitor health during a rolling upgrade. The values are UnmonitoredAuto, UnmonitoredManual, and Monitored." + }, + "UpgradeReplicaSetCheckTimeoutInSeconds": { + "$ref": "#/definitions/UpgradeReplicaSetCheckTimeout", + "description": "The maximum amount of time to block processing of an upgrade domain and prevent loss of availability when there are unexpected issues. When this timeout expires, processing of the upgrade domain will proceed regardless of availability loss issues. The timeout is reset at the start of each upgrade domain. Valid values are between 0 and 42949672925 inclusive. (unsigned 32-bit integer)." + }, + "ForceRestart": { + "$ref": "#/definitions/ForceRestart", + "description": "If true, then processes are forcefully restarted during upgrade even when the code version has not changed (the upgrade only changes configuration or data)." + }, + "SortOrder": { + "$ref": "#/definitions/UpgradeSortOrder", + "description": "Defines the order in which an upgrade proceeds through the cluster." + }, + "MonitoringPolicy": { + "$ref": "#/definitions/MonitoringPolicyDescription", + "description": "Describes the parameters for monitoring an upgrade in Monitored mode." + }, + "ClusterHealthPolicy": { + "$ref": "#/definitions/ClusterHealthPolicy", + "description": "Defines a health policy used to evaluate the health of the cluster or of a cluster node." + }, + "EnableDeltaHealthEvaluation": { + "type": "boolean", + "description": "When true, enables delta health evaluation rather than absolute health evaluation after completion of each upgrade domain." + }, + "ClusterUpgradeHealthPolicy": { + "$ref": "#/definitions/ClusterUpgradeHealthPolicyObject", + "description": "Defines a health policy used to evaluate the health of the cluster during a cluster upgrade." + }, + "ApplicationHealthPolicyMap": { + "$ref": "#/definitions/ApplicationHealthPolicies", + "description": "Defines the application health policy map used to evaluate the health of an application or one of its children entities." + }, + "InstanceCloseDelayDurationInSeconds": { + "$ref": "#/definitions/InstanceCloseDelayDurationInSeconds", + "description": "Duration in seconds, to wait before a stateless instance is closed, to allow the active requests to drain gracefully. This would be effective when the instance is closing during the application/cluster\nupgrade, only for those instances which have a non-zero delay duration configured in the service description. See InstanceCloseDelayDurationSeconds property in $ref: \"#/definitions/StatelessServiceDescription.yaml\" for details.\nNote, the default value of InstanceCloseDelayDurationInSeconds is 4294967295, which indicates that the behavior will entirely depend on the delay configured in the stateless service description." + } + } + }, + "UpdateClusterUpgradeDescription": { + "description": "Parameters for updating a cluster upgrade.", + "properties": { + "UpgradeKind": { + "$ref": "#/definitions/UpgradeType", + "description": "The type of upgrade out of the following possible values." + }, + "UpdateDescription": { + "$ref": "#/definitions/RollingUpgradeUpdateDescription", + "description": "Describes the parameters for updating a rolling upgrade of application or cluster." + }, + "ClusterHealthPolicy": { + "$ref": "#/definitions/ClusterHealthPolicy", + "description": "Defines a health policy used to evaluate the health of the cluster or of a cluster node." + }, + "EnableDeltaHealthEvaluation": { + "$ref": "#/definitions/DeltaHealthEvaluationBool", + "description": "When true, enables delta health evaluation rather than absolute health evaluation after completion of each upgrade domain." + }, + "ClusterUpgradeHealthPolicy": { + "$ref": "#/definitions/ClusterUpgradeHealthPolicyObject", + "description": "Defines a health policy used to evaluate the health of the cluster during a cluster upgrade." + }, + "ApplicationHealthPolicyMap": { + "$ref": "#/definitions/ApplicationHealthPolicies", + "description": "Defines the application health policy map used to evaluate the health of an application or one of its children entities." + } + } + }, + "SafetyCheckKind": { + "type": "string", + "description": "The kind of safety check performed by service fabric before continuing with the operations. These checks ensure the availability of the service and the reliability of the state. Following are the kinds of safety checks.", + "enum": [ + "Invalid", + "EnsureSeedNodeQuorum", + "EnsurePartitionQuorum", + "WaitForPrimaryPlacement", + "WaitForPrimarySwap", + "WaitForReconfiguration", + "WaitForInbuildReplica", + "EnsureAvailability" + ], + "x-ms-enum": { + "name": "SafetyCheckKind", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates that the upgrade safety check kind is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "EnsureSeedNodeQuorum", + "description": "Indicates that if we bring down the node then this will result in global seed node quorum loss. The value is 1." + }, + { + "value": "EnsurePartitionQuorum", + "description": "Indicates that there is some partition for which if we bring down the replica on the node, it will result in quorum loss for that partition. The value is 2." + }, + { + "value": "WaitForPrimaryPlacement", + "description": "Indicates that there is some replica on the node that was moved out of this node due to upgrade. Service Fabric is now waiting for the primary to be moved back to this node. The value is 3." + }, + { + "value": "WaitForPrimarySwap", + "description": "Indicates that Service Fabric is waiting for a primary replica to be moved out of the node before starting upgrade on that node. The value is 4." + }, + { + "value": "WaitForReconfiguration", + "description": "Indicates that there is some replica on the node that is involved in a reconfiguration. Service Fabric is waiting for the reconfiguration to be complete before staring upgrade on that node. The value is 5." + }, + { + "value": "WaitForInbuildReplica", + "description": "Indicates that there is either a replica on the node that is going through copy, or there is a primary replica on the node that is copying data to some other replica. In both cases, bringing down the replica on the node due to upgrade will abort the copy. The value is 6." + }, + { + "value": "EnsureAvailability", + "description": "Indicates that there is either a stateless service partition on the node having exactly one instance, or there is a primary replica on the node for which the partition is quorum loss. In both cases, bringing down the replicas due to upgrade will result in loss of availability. The value is 7." + } + ] + } + }, + "SafetyCheck": { + "discriminator": "Kind", + "description": "Represents a safety check performed by service fabric before continuing with the operations. These checks ensure the availability of the service and the reliability of the state.", + "properties": { + "Kind": { + "$ref": "#/definitions/SafetyCheckKind", + "description": "The kind of safety check performed by service fabric before continuing with the operations. These checks ensure the availability of the service and the reliability of the state. Following are the kinds of safety checks." + } + }, + "required": [ + "Kind" + ] + }, + "PartitionSafetyCheck": { + "description": "Represents a safety check for the service partition being performed by service fabric before continuing with operations.", + "allOf": [ + { + "$ref": "#/definitions/SafetyCheck" + } + ], + "properties": { + "PartitionId": { + "$ref": "#/definitions/PartitionId", + "description": "Id of the partition which is undergoing the safety check." + } + } + }, + "EnsureAvailabilitySafetyCheck": { + "description": "Safety check that waits to ensure the availability of the partition. It waits until there are replicas available such that bringing down this replica will not cause availability loss for the partition.", + "allOf": [ + { + "$ref": "#/definitions/PartitionSafetyCheck" + } + ], + "x-ms-discriminator-value": "EnsureAvailability" + }, + "EnsurePartitionQuorumSafetyCheck": { + "description": "Safety check that ensures that a quorum of replicas are not lost for a partition.", + "allOf": [ + { + "$ref": "#/definitions/PartitionSafetyCheck" + } + ], + "x-ms-discriminator-value": "EnsurePartitionQuorum" + }, + "SeedNodeSafetyCheck": { + "description": "Represents a safety check for the seed nodes being performed by service fabric before continuing with node level operations.", + "allOf": [ + { + "$ref": "#/definitions/SafetyCheck" + } + ], + "x-ms-discriminator-value": "EnsureSeedNodeQuorum" + }, + "PartitionsHealthEvaluation": { + "x-ms-discriminator-value": "Partitions", + "description": "Represents health evaluation for the partitions of a service, containing health evaluations for each unhealthy partition that impacts current aggregated health state. Can be returned when evaluating service health and the aggregated health state is either Error or Warning.", + "allOf": [ + { + "$ref": "#/definitions/HealthEvaluation" + } + ], + "properties": { + "MaxPercentUnhealthyPartitionsPerService": { + "type": "integer", + "description": "Maximum allowed percentage of unhealthy partitions per service from the ServiceTypeHealthPolicy." + }, + "TotalCount": { + "type": "integer", + "format": "int64", + "description": "Total number of partitions of the service from the health store." + }, + "UnhealthyEvaluations": { + "$ref": "#/definitions/UnhealthyEvaluations", + "description": "List of unhealthy evaluations that led to the aggregated health state. Includes all the unhealthy PartitionHealthEvaluation that impacted the aggregated health." + } + } + }, + "ReplicaEvent": { + "description": "Represents the base for all Replica Events.", + "allOf": [ + { + "$ref": "#/definitions/FabricEvent" + } + ], + "properties": { + "PartitionId": { + "$ref": "#/definitions/PartitionId", + "description": "An internal ID used by Service Fabric to uniquely identify a partition. This is a randomly generated GUID when the service was created. The partition ID is unique and does not change for the lifetime of the service. If the same service was deleted and recreated the IDs of its partitions would be different." + }, + "ReplicaId": { + "$ref": "#/definitions/ReplicaId_Integer", + "description": "Id of a stateful service replica. ReplicaId is used by Service Fabric to uniquely identify a replica of a partition. It is unique within a partition and does not change for the lifetime of the replica. If a replica gets dropped and another replica gets created on the same node for the same partition, it will get a different value for the id. Sometimes the id of a stateless service instance is also referred as a replica id." + } + }, + "required": [ + "PartitionId", + "ReplicaId" + ], + "x-ms-discriminator-value": "ReplicaEvent" + }, + "ReplicaEventList": { + "description": "A list of ReplicaEvent objects.", + "type": "array", + "items": { + "$ref": "#/definitions/ReplicaEvent" + } + }, + "ReplicaHealth": { + "allOf": [ + { + "$ref": "#/definitions/EntityHealth" + } + ], + "discriminator": "ServiceKind", + "description": "Represents a base class for stateful service replica or stateless service instance health.\nContains the replica aggregated health state, the health events and the unhealthy evaluations.", + "properties": { + "ServiceKind": { + "$ref": "#/definitions/ServiceKind", + "description": "The kind of service (Stateless or Stateful)." + }, + "PartitionId": { + "$ref": "#/definitions/PartitionId", + "description": "Id of the partition to which this replica belongs." + } + }, + "required": [ + "ServiceKind" + ] + }, + "ReplicaHealthEvaluation": { + "x-ms-discriminator-value": "Replica", + "description": "Represents health evaluation for a replica, containing information about the data and the algorithm used by health store to evaluate health. The evaluation is returned only when the aggregated health state is either Error or Warning.", + "allOf": [ + { + "$ref": "#/definitions/HealthEvaluation" + } + ], + "properties": { + "PartitionId": { + "$ref": "#/definitions/PartitionId", + "description": "Id of the partition to which the replica belongs." + }, + "ReplicaOrInstanceId": { + "$ref": "#/definitions/ReplicaOrInstanceId", + "description": "Id of a stateful service replica or a stateless service instance. This ID is used in the queries that apply to both stateful and stateless services. It is used by Service Fabric to uniquely identify a replica of a partition of a stateful service or an instance of a stateless service partition. It is unique within a partition and does not change for the lifetime of the replica or the instance. If a stateful replica gets dropped and another replica gets created on the same node for the same partition, it will get a different value for the ID. If a stateless instance is failed over on the same or different node it will get a different value for the ID." + }, + "UnhealthyEvaluations": { + "$ref": "#/definitions/UnhealthyEvaluations", + "description": "List of unhealthy evaluations that led to the current aggregated health state of the replica. The types of the unhealthy evaluations can be EventHealthEvaluation." + } + } + }, + "ReplicaHealthState": { + "discriminator": "ServiceKind", + "required": [ + "ServiceKind" + ], + "description": "Represents a base class for stateful service replica or stateless service instance health state.", + "allOf": [ + { + "$ref": "#/definitions/EntityHealthState" + } + ], + "properties": { + "ServiceKind": { + "$ref": "#/definitions/ServiceKind", + "description": "The kind of service (Stateless or Stateful)." + }, + "PartitionId": { + "$ref": "#/definitions/PartitionId", + "description": "The ID of the partition to which this replica belongs." + } + } + }, + "ReplicaHealthStateChunk": { + "description": "Represents the health state chunk of a stateful service replica or a stateless service instance.\nThe replica health state contains the replica ID and its aggregated health state.", + "allOf": [ + { + "$ref": "#/definitions/EntityHealthStateChunk" + } + ], + "properties": { + "ReplicaOrInstanceId": { + "$ref": "#/definitions/ReplicaOrInstanceId", + "description": "Id of a stateful service replica or a stateless service instance. This ID is used in the queries that apply to both stateful and stateless services. It is used by Service Fabric to uniquely identify a replica of a partition of a stateful service or an instance of a stateless service partition. It is unique within a partition and does not change for the lifetime of the replica or the instance. If a stateful replica gets dropped and another replica gets created on the same node for the same partition, it will get a different value for the ID. If a stateless instance is failed over on the same or different node it will get a different value for the ID." + } + } + }, + "ReplicaHealthStateChunkList": { + "description": "The list of replica health state chunks that respect the input filters in the chunk query. Returned by get cluster health state chunks query.", + "properties": { + "Items": { + "type": "array", + "items": { + "$ref": "#/definitions/ReplicaHealthStateChunk" + }, + "description": "The list of replica health state chunks that respect the input filters in the chunk query." + } + } + }, + "ReplicaHealthStateFilter": { + "description": "Defines matching criteria to determine whether a replica should be included as a child of a partition in the cluster health chunk.\nThe replicas are only returned if the parent entities match a filter specified in the cluster health chunk query description. The parent partition, service and application must be included in the cluster health chunk.\nOne filter can match zero, one or multiple replicas, depending on its properties.", + "properties": { + "ReplicaOrInstanceIdFilter": { + "type": "string", + "description": "Id of the stateful service replica or stateless service instance that matches the filter. The filter is applied only to the specified replica, if it exists.\nIf the replica doesn't exist, no replica is returned in the cluster health chunk based on this filter.\nIf the replica exists, it is included in the cluster health chunk if it respects the other filter properties.\nIf not specified, all replicas that match the parent filters (if any) are taken into consideration and matched against the other filter members, like health state filter." + }, + "HealthStateFilter": { + "type": "integer", + "default": 0, + "description": "The filter for the health state of the replicas. It allows selecting replicas if they match the desired health states.\nThe possible values are integer value of one of the following health states. Only replicas that match the filter are returned. All replicas are used to evaluate the parent partition aggregated health state.\nIf not specified, default value is None, unless the replica ID is specified. If the filter has default value and replica ID is specified, the matching replica is returned.\nThe state values are flag-based enumeration, so the value could be a combination of these values obtained using bitwise 'OR' operator.\nFor example, if the provided value is 6, it matches replicas with HealthState value of OK (2) and Warning (4).\n\n- Default - Default value. Matches any HealthState. The value is zero.\n- None - Filter that doesn't match any HealthState value. Used in order to return no results on a given collection of states. The value is 1.\n- Ok - Filter that matches input with HealthState value Ok. The value is 2.\n- Warning - Filter that matches input with HealthState value Warning. The value is 4.\n- Error - Filter that matches input with HealthState value Error. The value is 8.\n- All - Filter that matches input with any HealthState value. The value is 65535." + } + } + }, + "ReplicaId": { + "type": "string", + "description": "Id of a stateful service replica. ReplicaId is used by Service Fabric to uniquely identify a replica of a partition. It is unique within a partition and does not change for the lifetime of the replica. If a replica gets dropped and another replica gets created on the same node for the same partition, it will get a different value for the id. Sometimes the id of a stateless service instance is also referred as a replica id." + }, + "ReplicaId_Integer": { + "type": "integer", + "format": "int64", + "description": "Id of a stateful service replica. ReplicaId is used by Service Fabric to uniquely identify a replica of a partition. It is unique within a partition and does not change for the lifetime of the replica. If a replica gets dropped and another replica gets created on the same node for the same partition, it will get a different value for the id. Sometimes the id of a stateless service instance is also referred as a replica id." + }, + "ReplicaOrInstanceId": { + "type": "string", + "description": "Id of a stateful service replica or a stateless service instance. This ID is used in the queries that apply to both stateful and stateless services. It is used by Service Fabric to uniquely identify a replica of a partition of a stateful service or an instance of a stateless service partition. It is unique within a partition and does not change for the lifetime of the replica or the instance. If a stateful replica gets dropped and another replica gets created on the same node for the same partition, it will get a different value for the ID. If a stateless instance is failed over on the same or different node it will get a different value for the ID." + }, + "ReplicaInfo": { + "discriminator": "ServiceKind", + "description": "Information about the identity, status, health, node name, uptime, and other details about the replica.", + "required": [ + "ServiceKind" + ], + "properties": { + "ServiceKind": { + "$ref": "#/definitions/ServiceKind", + "description": "The kind of service (Stateless or Stateful)." + }, + "ReplicaStatus": { + "$ref": "#/definitions/ReplicaStatus", + "description": "The status of a replica of a service." + }, + "HealthState": { + "$ref": "#/definitions/HealthState", + "description": "The health state of a Service Fabric entity such as Cluster, Node, Application, Service, Partition, Replica etc." + }, + "NodeName": { + "$ref": "#/definitions/NodeName", + "description": "The name of a Service Fabric node." + }, + "Address": { + "type": "string", + "description": "The address the replica is listening on." + }, + "LastInBuildDurationInSeconds": { + "type": "string", + "description": "The last in build duration of the replica in seconds." + } + } + }, + "ReplicaRole": { + "type": "string", + "description": "The role of a replica of a stateful service.", + "enum": [ + "Unknown", + "None", + "Primary", + "IdleSecondary", + "ActiveSecondary" + ], + "x-ms-enum": { + "name": "ReplicaRole", + "modelAsString": true, + "values": [ + { + "value": "Unknown", + "description": "Indicates the initial role that a replica is created in. The value is zero." + }, + { + "value": "None", + "description": "Specifies that the replica has no responsibility in regard to the replica set. The value is 1" + }, + { + "value": "Primary", + "description": "Refers to the replica in the set on which all read and write operations are complete in order to enforce strong consistency semantics. Read operations are handled directly by the Primary replica, while write operations must be acknowledged by a quorum of the replicas in the replica set. There can only be one Primary replica in a replica set at a time. The value is 2." + }, + { + "value": "IdleSecondary", + "description": "Refers to a replica in the set that receives a state transfer from the Primary replica to prepare for becoming an active Secondary replica. There can be multiple Idle Secondary replicas in a replica set at a time. Idle Secondary replicas do not count as a part of a write quorum. The value is 3." + }, + { + "value": "ActiveSecondary", + "description": "Refers to a replica in the set that receives state updates from the Primary replica, applies them, and sends acknowledgements back. Secondary replicas must participate in the write quorum for a replica set. There can be multiple active Secondary replicas in a replica set at a time. The number of active Secondary replicas is configurable that the reliability subsystem should maintain. The value is 4." + } + ] + } + }, + "ReplicasHealthEvaluation": { + "x-ms-discriminator-value": "Replicas", + "description": "Represents health evaluation for replicas, containing health evaluations for each unhealthy replica that impacted current aggregated health state. Can be returned when evaluating partition health and the aggregated health state is either Error or Warning.", + "allOf": [ + { + "$ref": "#/definitions/HealthEvaluation" + } + ], + "properties": { + "MaxPercentUnhealthyReplicasPerPartition": { + "type": "integer", + "description": "Maximum allowed percentage of unhealthy replicas per partition from the ApplicationHealthPolicy." + }, + "TotalCount": { + "type": "integer", + "format": "int64", + "description": "Total number of replicas in the partition from the health store." + }, + "UnhealthyEvaluations": { + "$ref": "#/definitions/UnhealthyEvaluations", + "description": "List of unhealthy evaluations that led to the aggregated health state. Includes all the unhealthy ReplicaHealthEvaluation that impacted the aggregated health." + } + } + }, + "ReplicaStatus": { + "type": "string", + "description": "The status of a replica of a service.", + "enum": [ + "Invalid", + "InBuild", + "Standby", + "Ready", + "Down", + "Dropped" + ], + "x-ms-enum": { + "name": "ReplicaStatus", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the replica status is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "InBuild", + "description": "The replica is being built. This means that a primary replica is seeding this replica. The value is 1." + }, + { + "value": "Standby", + "description": "The replica is in standby. The value is 2." + }, + { + "value": "Ready", + "description": "The replica is ready. The value is 3." + }, + { + "value": "Down", + "description": "The replica is down. The value is 4." + }, + { + "value": "Dropped", + "description": "Replica is dropped. This means that the replica has been removed from the replica set. If it is persisted, its state has been deleted. The value is 5." + } + ] + } + }, + "RestartNodeDescription": { + "description": "Describes the parameters to restart a Service Fabric node.", + "properties": { + "NodeInstanceId": { + "type": "string", + "description": "The instance ID of the target node. If instance ID is specified the node is restarted only if it matches with the current instance of the node. A default value of \"0\" would match any instance ID. The instance ID can be obtained using get node query.", + "default": "0" + }, + "CreateFabricDump": { + "type": "string", + "description": "Specify True to create a dump of the fabric node process. This is case-sensitive.", + "enum": [ + "False", + "True" + ], + "default": "False", + "x-ms-enum": { + "name": "CreateFabricDump", + "modelAsString": true, + "values": [ + { + "value": "False" + }, + { + "value": "True" + } + ] + } + } + }, + "required": [ + "NodeInstanceId" + ] + }, + "SafetyCheckInfoList": { + "type": "array", + "description": "List of pending safety checks", + "items": { + "$ref": "#/definitions/SafetyCheckWrapper" + } + }, + "SafetyCheckWrapper": { + "description": "A wrapper for the safety check object. Safety checks are performed by service fabric before continuing with the operations. These checks ensure the availability of the service and the reliability of the state.", + "properties": { + "SafetyCheck": { + "$ref": "#/definitions/SafetyCheck", + "description": "Represents a safety check performed by service fabric before continuing with the operations. These checks ensure the availability of the service and the reliability of the state." + } + } + }, + "ServiceEvent": { + "description": "Represents the base for all Service Events.", + "allOf": [ + { + "$ref": "#/definitions/FabricEvent" + } + ], + "properties": { + "ServiceId": { + "$ref": "#/definitions/ServiceId", + "description": "The identity of the service. This ID is an encoded representation of the service name. This is used in the REST APIs to identify the service resource.\nStarting in version 6.0, hierarchical names are delimited with the \"\\~\" character. For example, if the service name is \"fabric:/myapp/app1/svc1\",\nthe service identity would be \"myapp~app1\\~svc1\" in 6.0+ and \"myapp/app1/svc1\" in previous versions." + } + }, + "required": [ + "ServiceId" + ], + "x-ms-discriminator-value": "ServiceEvent" + }, + "ServiceEventList": { + "description": "A list of ServiceEvent objects.", + "type": "array", + "items": { + "$ref": "#/definitions/ServiceEvent" + } + }, + "ServiceFromTemplateDescription": { + "description": "Defines description for creating a Service Fabric service from a template defined in the application manifest.", + "required": [ + "ApplicationName", + "ServiceName", + "ServiceTypeName" + ], + "properties": { + "ApplicationName": { + "$ref": "#/definitions/ApplicationName", + "description": "The name of the application, including the 'fabric:' URI scheme." + }, + "ServiceName": { + "$ref": "#/definitions/ServiceName", + "description": "The full name of the service with 'fabric:' URI scheme." + }, + "ServiceTypeName": { + "$ref": "#/definitions/ServiceTypeName", + "description": "Name of the service type as specified in the service manifest." + }, + "InitializationData": { + "$ref": "#/definitions/ByteArray", + "description": "The initialization data for the newly created service instance." + }, + "ServicePackageActivationMode": { + "$ref": "#/definitions/ServicePackageActivationMode", + "description": "The activation mode of service package to be used for a service." + }, + "ServiceDnsName": { + "type": "string", + "description": "The DNS name of the service. It requires the DNS system service to be enabled in Service Fabric cluster." + } + } + }, + "ServiceHealthEvaluation": { + "x-ms-discriminator-value": "Service", + "description": "Represents health evaluation for a service, containing information about the data and the algorithm used by health store to evaluate health. The evaluation is returned only when the aggregated health state is either Error or Warning.", + "allOf": [ + { + "$ref": "#/definitions/HealthEvaluation" + } + ], + "properties": { + "ServiceName": { + "$ref": "#/definitions/ServiceName", + "description": "Name of the service whose health evaluation is described by this object." + }, + "UnhealthyEvaluations": { + "$ref": "#/definitions/UnhealthyEvaluations", + "description": "List of unhealthy evaluations that led to the current aggregated health state of the service. The types of the unhealthy evaluations can be PartitionsHealthEvaluation or EventHealthEvaluation." + } + } + }, + "ServiceHealthState": { + "description": "Represents the health state of a service, which contains the service identifier and its aggregated health state.", + "allOf": [ + { + "$ref": "#/definitions/EntityHealthState" + } + ], + "properties": { + "ServiceName": { + "$ref": "#/definitions/ServiceName", + "description": "Name of the service whose health state is represented by this object." + } + } + }, + "ServiceHealthStateChunk": { + "description": "Represents the health state chunk of a service, which contains the service name, its aggregated health state and any partitions that respect the filters in the cluster health chunk query description.", + "allOf": [ + { + "$ref": "#/definitions/EntityHealthStateChunk" + } + ], + "properties": { + "ServiceName": { + "$ref": "#/definitions/ServiceName", + "description": "The name of the service whose health state chunk is provided in this object." + }, + "PartitionHealthStateChunks": { + "$ref": "#/definitions/PartitionHealthStateChunkList", + "description": "The list of partition health state chunks belonging to the service that respect the filters in the cluster health chunk query description." + } + } + }, + "ServiceHealthStateChunkList": { + "description": "The list of service health state chunks that respect the input filters in the chunk query. Returned by get cluster health state chunks query.", + "properties": { + "Items": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceHealthStateChunk" + }, + "description": "The list of service health state chunks that respect the input filters in the chunk query." + } + } + }, + "ServiceHealthStateFilter": { + "description": "Defines matching criteria to determine whether a service should be included as a child of an application in the cluster health chunk.\nThe services are only returned if the parent application matches a filter specified in the cluster health chunk query description.\nOne filter can match zero, one or multiple services, depending on its properties.", + "properties": { + "ServiceNameFilter": { + "type": "string", + "description": "The name of the service that matches the filter. The filter is applied only to the specified service, if it exists.\nIf the service doesn't exist, no service is returned in the cluster health chunk based on this filter.\nIf the service exists, it is included as the application's child if the health state matches the other filter properties.\nIf not specified, all services that match the parent filters (if any) are taken into consideration and matched against the other filter members, like health state filter." + }, + "HealthStateFilter": { + "type": "integer", + "default": 0, + "description": "The filter for the health state of the services. It allows selecting services if they match the desired health states.\nThe possible values are integer value of one of the following health states. Only services that match the filter are returned. All services are used to evaluate the cluster aggregated health state.\nIf not specified, default value is None, unless the service name is specified. If the filter has default value and service name is specified, the matching service is returned.\nThe state values are flag-based enumeration, so the value could be a combination of these values obtained using bitwise 'OR' operator.\nFor example, if the provided value is 6, it matches services with HealthState value of OK (2) and Warning (4).\n\n- Default - Default value. Matches any HealthState. The value is zero.\n- None - Filter that doesn't match any HealthState value. Used in order to return no results on a given collection of states. The value is 1.\n- Ok - Filter that matches input with HealthState value Ok. The value is 2.\n- Warning - Filter that matches input with HealthState value Warning. The value is 4.\n- Error - Filter that matches input with HealthState value Error. The value is 8.\n- All - Filter that matches input with any HealthState value. The value is 65535." + }, + "PartitionFilters": { + "type": "array", + "items": { + "$ref": "#/definitions/PartitionHealthStateFilter" + }, + "description": "Defines a list of filters that specify which partitions to be included in the returned cluster health chunk as children of the service. The partitions are returned only if the parent service matches a filter.\nIf the list is empty, no partitions are returned. All the partitions are used to evaluate the parent service aggregated health state, regardless of the input filters.\nThe service filter may specify multiple partition filters.\nFor example, it can specify a filter to return all partitions with health state Error and another filter to always include a partition identified by its partition ID." + } + } + }, + "ServiceHealth": { + "description": "Information about the health of a Service Fabric service.", + "allOf": [ + { + "$ref": "#/definitions/EntityHealth" + } + ], + "properties": { + "Name": { + "$ref": "#/definitions/ServiceName", + "description": "The name of the service whose health information is described by this object." + }, + "PartitionHealthStates": { + "type": "array", + "items": { + "$ref": "#/definitions/PartitionHealthState" + }, + "description": "The list of partition health states associated with the service." + } + } + }, + "ServiceId": { + "type": "string", + "description": "The identity of the service. This ID is an encoded representation of the service name. This is used in the REST APIs to identify the service resource.\nStarting in version 6.0, hierarchical names are delimited with the \"\\~\" character. For example, if the service name is \"fabric:/myapp/app1/svc1\",\nthe service identity would be \"myapp~app1\\~svc1\" in 6.0+ and \"myapp/app1/svc1\" in previous versions." + }, + "ServiceName": { + "type": "string", + "description": "The full name of the service with 'fabric:' URI scheme." + }, + "ServiceManifestName": { + "type": "string", + "description": "The name of the service manifest." + }, + "ServiceTypeName": { + "type": "string", + "description": "Name of the service type as specified in the service manifest." + }, + "ServiceInfo": { + "discriminator": "ServiceKind", + "description": "Information about a Service Fabric service.", + "properties": { + "Id": { + "$ref": "#/definitions/ServiceId", + "description": "The identity of the service. This ID is an encoded representation of the service name. This is used in the REST APIs to identify the service resource.\nStarting in version 6.0, hierarchical names are delimited with the \"\\~\" character. For example, if the service name is \"fabric:/myapp/app1/svc1\",\nthe service identity would be \"myapp~app1\\~svc1\" in 6.0+ and \"myapp/app1/svc1\" in previous versions." + }, + "ServiceKind": { + "$ref": "#/definitions/ServiceKind", + "description": "The kind of service (Stateless or Stateful)." + }, + "Name": { + "$ref": "#/definitions/ServiceName", + "description": "The full name of the service with 'fabric:' URI scheme." + }, + "TypeName": { + "$ref": "#/definitions/ServiceTypeName", + "description": "Name of the service type as specified in the service manifest." + }, + "ManifestVersion": { + "description": "The version of the service manifest.", + "type": "string" + }, + "HealthState": { + "$ref": "#/definitions/HealthState", + "description": "The health state of a Service Fabric entity such as Cluster, Node, Application, Service, Partition, Replica etc." + }, + "ServiceStatus": { + "$ref": "#/definitions/ServiceStatus", + "description": "The status of the application." + }, + "IsServiceGroup": { + "description": "Whether the service is in a service group.", + "type": "boolean" + } + }, + "required": [ + "ServiceKind" + ] + }, + "ServiceKind": { + "type": "string", + "description": "The kind of service (Stateless or Stateful).", + "enum": [ + "Invalid", + "Stateless", + "Stateful" + ], + "x-ms-enum": { + "name": "ServiceKind", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the service kind is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "Stateless", + "description": "Does not use Service Fabric to make its state highly available or reliable. The value is 1." + }, + { + "value": "Stateful", + "description": "Uses Service Fabric to make its state or part of its state highly available and reliable. The value is 2." + } + ] + } + }, + "ServiceNameInfo": { + "description": "Information about the service name.", + "properties": { + "Id": { + "$ref": "#/definitions/ServiceId", + "description": "The identity of the service. This ID is an encoded representation of the service name. This is used in the REST APIs to identify the service resource.\nStarting in version 6.0, hierarchical names are delimited with the \"\\~\" character. For example, if the service name is \"fabric:/myapp/app1/svc1\",\nthe service identity would be \"myapp~app1\\~svc1\" in 6.0+ and \"myapp/app1/svc1\" in previous versions." + }, + "Name": { + "$ref": "#/definitions/ServiceName", + "description": "The full name of the service with 'fabric:' URI scheme." + } + } + }, + "ServicePackageActivationId": { + "type": "string", + "description": "The ActivationId of a deployed service package. If ServicePackageActivationMode specified at the time of creating the service\nis 'SharedProcess' (or if it is not specified, in which case it defaults to 'SharedProcess'), then value of ServicePackageActivationId\nis always an empty string." + }, + "ServicePartitionInfo": { + "discriminator": "ServiceKind", + "description": "Information about a partition of a Service Fabric service.", + "required": [ + "ServiceKind" + ], + "properties": { + "ServiceKind": { + "$ref": "#/definitions/ServiceKind", + "description": "The kind of service (Stateless or Stateful)." + }, + "HealthState": { + "$ref": "#/definitions/HealthState", + "description": "The health state of a Service Fabric entity such as Cluster, Node, Application, Service, Partition, Replica etc." + }, + "PartitionStatus": { + "$ref": "#/definitions/ServicePartitionStatus", + "description": "The status of the service fabric service partition." + }, + "PartitionInformation": { + "$ref": "#/definitions/PartitionInformation", + "description": "Information about the partition identity, partitioning scheme and keys supported by it." + } + } + }, + "ServicePartitionKind": { + "type": "string", + "description": "The kind of partitioning scheme used to partition the service.", + "enum": [ + "Invalid", + "Singleton", + "Int64Range", + "Named" + ], + "x-ms-enum": { + "name": "ServicePartitionKind", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the partition kind is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "Singleton", + "description": "Indicates that there is only one partition, and SingletonPartitionSchemeDescription was specified while creating the service. The value is 1." + }, + { + "value": "Int64Range", + "description": "Indicates that the partition is based on Int64 key ranges, and UniformInt64RangePartitionSchemeDescription was specified while creating the service. The value is 2." + }, + { + "value": "Named", + "description": "Indicates that the partition is based on string names, and NamedPartitionInformation was specified while creating the service. The value is 3." + } + ] + } + }, + "ServicePartitionStatus": { + "type": "string", + "description": "The status of the service fabric service partition.", + "enum": [ + "Invalid", + "Ready", + "NotReady", + "InQuorumLoss", + "Reconfiguring", + "Deleting" + ], + "x-ms-enum": { + "name": "ServicePartitionStatus", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the partition status is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "Ready", + "description": "Indicates that the partition is ready. This means that for a stateless service partition there is at least one instance that is up and for a stateful service partition the number of ready replicas is greater than or equal to the MinReplicaSetSize. The value is 1." + }, + { + "value": "NotReady", + "description": "Indicates that the partition is not ready. This status is returned when none of the other states apply. The value is 2." + }, + { + "value": "InQuorumLoss", + "description": "Indicates that the partition is in quorum loss. This means that number of replicas that are up and participating in a replica set is less than MinReplicaSetSize for this partition. The value is 3." + }, + { + "value": "Reconfiguring", + "description": "Indicates that the partition is undergoing reconfiguration of its replica sets. This can happen due to failover, upgrade, load balancing or addition or removal of replicas from the replica set. The value is 4." + }, + { + "value": "Deleting", + "description": "Indicates that the partition is being deleted. The value is 5." + } + ] + } + }, + "ServicePlacementInvalidDomainPolicyDescription": { + "x-ms-discriminator-value": "InvalidDomain", + "description": "Describes the policy to be used for placement of a Service Fabric service where a particular fault or upgrade domain should not be used for placement of the instances or replicas of that service.", + "allOf": [ + { + "$ref": "#/definitions/ServicePlacementPolicyDescription" + } + ], + "properties": { + "DomainName": { + "type": "string", + "description": "The name of the domain that should not be used for placement." + } + } + }, + "ServicePlacementNonPartiallyPlaceServicePolicyDescription": { + "x-ms-discriminator-value": "NonPartiallyPlaceService", + "description": "Describes the policy to be used for placement of a Service Fabric service where all replicas must be able to be placed in order for any replicas to be created.", + "allOf": [ + { + "$ref": "#/definitions/ServicePlacementPolicyDescription" + } + ] + }, + "ServicePlacementAllowMultipleStatelessInstancesOnNodePolicyDescription": { + "x-ms-discriminator-value": "AllowMultipleStatelessInstancesOnNode", + "description": "Describes the policy to be used for placement of a Service Fabric service allowing multiple stateless instances of a partition of the service to be placed on a node.", + "allOf": [ + { + "$ref": "#/definitions/ServicePlacementPolicyDescription" + } + ], + "properties": { + "DomainName": { + "type": "string", + "description": "Holdover from other policy descriptions, not used for this policy, values are ignored by runtime. Keeping it for any backwards-compatibility with clients." + } + } + }, + "ServicePlacementPolicyDescription": { + "discriminator": "Type", + "description": "Describes the policy to be used for placement of a Service Fabric service.", + "required": [ + "Type" + ], + "properties": { + "Type": { + "$ref": "#/definitions/ServicePlacementPolicyType", + "description": "The type of placement policy for a service fabric service. Following are the possible values." + } + } + }, + "ServicePlacementPolicyDescriptionList": { + "type": "array", + "items": { + "$ref": "#/definitions/ServicePlacementPolicyDescription" + }, + "description": "List of service placement policy descriptions." + }, + "ServicePlacementPolicyType": { + "type": "string", + "description": "The type of placement policy for a service fabric service. Following are the possible values.", + "enum": [ + "Invalid", + "InvalidDomain", + "RequireDomain", + "PreferPrimaryDomain", + "RequireDomainDistribution", + "NonPartiallyPlaceService", + "AllowMultipleStatelessInstancesOnNode" + ], + "x-ms-enum": { + "name": "ServicePlacementPolicyType", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the type of the placement policy is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "InvalidDomain", + "description": "Indicates that the ServicePlacementPolicyDescription is of type ServicePlacementInvalidDomainPolicyDescription, which indicates that a particular fault or upgrade domain cannot be used for placement of this service. The value is 1." + }, + { + "value": "RequireDomain", + "description": "Indicates that the ServicePlacementPolicyDescription is of type ServicePlacementRequireDomainDistributionPolicyDescription indicating that the replicas of the service must be placed in a specific domain. The value is 2." + }, + { + "value": "PreferPrimaryDomain", + "description": "Indicates that the ServicePlacementPolicyDescription is of type ServicePlacementPreferPrimaryDomainPolicyDescription, which indicates that if possible the Primary replica for the partitions of the service should be located in a particular domain as an optimization. The value is 3." + }, + { + "value": "RequireDomainDistribution", + "description": "Indicates that the ServicePlacementPolicyDescription is of type ServicePlacementRequireDomainDistributionPolicyDescription, indicating that the system will disallow placement of any two replicas from the same partition in the same domain at any time. The value is 4." + }, + { + "value": "NonPartiallyPlaceService", + "description": "Indicates that the ServicePlacementPolicyDescription is of type ServicePlacementNonPartiallyPlaceServicePolicyDescription, which indicates that if possible all replicas of a particular partition of the service should be placed atomically. The value is 5." + }, + { + "value": "AllowMultipleStatelessInstancesOnNode", + "description": "Indicates that the ServicePlacementPolicyDescription is of type ServicePlacementAllowMultipleStatelessInstancesOnNodePolicyDescription, which indicates that multiple stateless instances of a particular partition of the service can be placed on a node. The value is 6." + } + ] + } + }, + "ServicePlacementPreferPrimaryDomainPolicyDescription": { + "x-ms-discriminator-value": "PreferPrimaryDomain", + "description": "Describes the policy to be used for placement of a Service Fabric service where the service's Primary replicas should optimally be placed in a particular domain.\n\nThis placement policy is usually used with fault domains in scenarios where the Service Fabric cluster is geographically distributed in order to indicate that a service's primary replica should be located in a particular fault domain, which in geo-distributed scenarios usually aligns with regional or datacenter boundaries. Note that since this is an optimization it is possible that the Primary replica may not end up located in this domain due to failures, capacity limits, or other constraints.", + "allOf": [ + { + "$ref": "#/definitions/ServicePlacementPolicyDescription" + } + ], + "properties": { + "DomainName": { + "type": "string", + "description": "The name of the domain that should used for placement as per this policy." + } + } + }, + "ServicePlacementRequiredDomainPolicyDescription": { + "x-ms-discriminator-value": "RequireDomain", + "description": "Describes the policy to be used for placement of a Service Fabric service where the instances or replicas of that service must be placed in a particular domain", + "allOf": [ + { + "$ref": "#/definitions/ServicePlacementPolicyDescription" + } + ], + "properties": { + "DomainName": { + "type": "string", + "description": "The name of the domain that should used for placement as per this policy." + } + } + }, + "ServicePlacementRequireDomainDistributionPolicyDescription": { + "x-ms-discriminator-value": "RequireDomainDistribution", + "description": "Describes the policy to be used for placement of a Service Fabric service where two replicas from the same partition should never be placed in the same fault or upgrade domain.\n\nWhile this is not common it can expose the service to an increased risk of concurrent failures due to unplanned outages or other cases of subsequent/concurrent failures. As an example, consider a case where replicas are deployed across different data center, with one replica per location. In the event that one of the datacenters goes offline, normally the replica that was placed in that datacenter will be packed into one of the remaining datacenters. If this is not desirable then this policy should be set.", + "allOf": [ + { + "$ref": "#/definitions/ServicePlacementPolicyDescription" + } + ], + "properties": { + "DomainName": { + "type": "string", + "description": "The name of the domain that should used for placement as per this policy." + } + } + }, + "ServicesHealthEvaluation": { + "x-ms-discriminator-value": "Services", + "description": "Represents health evaluation for services of a certain service type belonging to an application, containing health evaluations for each unhealthy service that impacted current aggregated health state. Can be returned when evaluating application health and the aggregated health state is either Error or Warning.", + "allOf": [ + { + "$ref": "#/definitions/HealthEvaluation" + } + ], + "properties": { + "ServiceTypeName": { + "type": "string", + "description": "Name of the service type of the services." + }, + "MaxPercentUnhealthyServices": { + "type": "integer", + "description": "Maximum allowed percentage of unhealthy services from the ServiceTypeHealthPolicy." + }, + "TotalCount": { + "type": "integer", + "format": "int64", + "description": "Total number of services of the current service type in the application from the health store." + }, + "UnhealthyEvaluations": { + "$ref": "#/definitions/UnhealthyEvaluations", + "description": "List of unhealthy evaluations that led to the aggregated health state. Includes all the unhealthy ServiceHealthEvaluation that impacted the aggregated health." + } + } + }, + "ServiceStatus": { + "type": "string", + "description": "The status of the application.", + "enum": [ + "Unknown", + "Active", + "Upgrading", + "Deleting", + "Creating", + "Failed" + ], + "x-ms-enum": { + "name": "ServiceStatus", + "modelAsString": true, + "values": [ + { + "value": "Unknown", + "description": "Indicates the service status is unknown. The value is zero." + }, + { + "value": "Active", + "description": "Indicates the service status is active. The value is 1." + }, + { + "value": "Upgrading", + "description": "Indicates the service is upgrading. The value is 2." + }, + { + "value": "Deleting", + "description": "Indicates the service is being deleted. The value is 3." + }, + { + "value": "Creating", + "description": "Indicates the service is being created. The value is 4." + }, + { + "value": "Failed", + "description": "Indicates creation or deletion was terminated due to persistent failures. Another create/delete request can be accepted. The value is 5." + } + ] + } + }, + "ServiceTypeDescription": { + "discriminator": "Kind", + "description": "Describes a service type defined in the service manifest of a provisioned application type. The properties the ones defined in the service manifest.", + "required": [ + "Kind" + ], + "properties": { + "Kind": { + "$ref": "#/definitions/ServiceKind", + "description": "The kind of service (Stateless or Stateful)." + }, + "IsStateful": { + "type": "boolean", + "description": "Indicates whether the service type is a stateful service type or a stateless service type. This property is true if the service type is a stateful service type, false otherwise." + }, + "ServiceTypeName": { + "$ref": "#/definitions/ServiceTypeName", + "description": "Name of the service type as specified in the service manifest." + }, + "PlacementConstraints": { + "type": "string", + "description": "The placement constraint to be used when instantiating this service in a Service Fabric cluster." + }, + "LoadMetrics": { + "$ref": "#/definitions/ServiceLoadMetricsList", + "description": "The service load metrics is given as an array of ServiceLoadMetricDescription objects." + }, + "ServicePlacementPolicies": { + "$ref": "#/definitions/ServicePlacementPolicyDescriptionList", + "description": "List of service placement policy descriptions." + }, + "Extensions": { + "$ref": "#/definitions/ServiceTypeExtensionDescriptionList", + "description": "List of service type extensions." + } + } + }, + "ServiceTypeExtensionDescription": { + "description": "Describes extension of a service type defined in the service manifest.", + "properties": { + "Key": { + "type": "string", + "description": "The name of the extension." + }, + "Value": { + "type": "string", + "description": "The extension value." + } + } + }, + "ServiceTypeExtensionDescriptionList": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceTypeExtensionDescription" + }, + "description": "List of service type extensions." + }, + "ServiceTypeHealthPolicy": { + "description": "Represents the health policy used to evaluate the health of services belonging to a service type.", + "properties": { + "MaxPercentUnhealthyPartitionsPerService": { + "type": "integer", + "description": "The maximum allowed percentage of unhealthy partitions per service. Allowed values are Byte values from zero to 100\n\nThe percentage represents the maximum tolerated percentage of partitions that can be unhealthy before the service is considered in error.\nIf the percentage is respected but there is at least one unhealthy partition, the health is evaluated as Warning.\nThe percentage is calculated by dividing the number of unhealthy partitions over the total number of partitions in the service.\nThe computation rounds up to tolerate one failure on small numbers of partitions. Default percentage is zero.", + "default": 0 + }, + "MaxPercentUnhealthyReplicasPerPartition": { + "type": "integer", + "description": "The maximum allowed percentage of unhealthy replicas per partition. Allowed values are Byte values from zero to 100.\n\nThe percentage represents the maximum tolerated percentage of replicas that can be unhealthy before the partition is considered in error.\nIf the percentage is respected but there is at least one unhealthy replica, the health is evaluated as Warning.\nThe percentage is calculated by dividing the number of unhealthy replicas over the total number of replicas in the partition.\nThe computation rounds up to tolerate one failure on small numbers of replicas. Default percentage is zero.", + "default": 0 + }, + "MaxPercentUnhealthyServices": { + "type": "integer", + "description": "The maximum allowed percentage of unhealthy services. Allowed values are Byte values from zero to 100.\n\nThe percentage represents the maximum tolerated percentage of services that can be unhealthy before the application is considered in error.\nIf the percentage is respected but there is at least one unhealthy service, the health is evaluated as Warning.\nThis is calculated by dividing the number of unhealthy services of the specific service type over the total number of services of the specific service type.\nThe computation rounds up to tolerate one failure on small numbers of services. Default percentage is zero.", + "default": 0 + } + } + }, + "ServiceTypeHealthPolicyMap": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceTypeHealthPolicyMapItem" + }, + "description": "Defines a ServiceTypeHealthPolicy per service type name.\n\nThe entries in the map replace the default service type health policy for each specified service type. For example, in an application that contains both a stateless gateway service type and a stateful engine service type, the health policies for the stateless and stateful services can be configured differently. With policy per service type, there's more granular control of the health of the service.\n\nIf no policy is specified for a service type name, the DefaultServiceTypeHealthPolicy is used for evaluation." + }, + "ServiceTypeHealthPolicyMapItem": { + "description": "Defines an item in ServiceTypeHealthPolicyMap.", + "required": [ + "Key", + "Value" + ], + "properties": { + "Key": { + "type": "string", + "description": "The key of the service type health policy map item. This is the name of the service type." + }, + "Value": { + "$ref": "#/definitions/ServiceTypeHealthPolicy", + "description": "The value of the service type health policy map item. This is the ServiceTypeHealthPolicy for this service type." + } + } + }, + "ServiceTypeInfo": { + "description": "Information about a service type that is defined in a service manifest of a provisioned application type.", + "properties": { + "ServiceTypeDescription": { + "$ref": "#/definitions/ServiceTypeDescription", + "description": "Describes a service type defined in the service manifest of a provisioned application type. The properties the ones defined in the service manifest." + }, + "ServiceManifestName": { + "$ref": "#/definitions/ServiceManifestName", + "description": "The name of the service manifest in which this service type is defined." + }, + "ServiceManifestVersion": { + "type": "string", + "description": "The version of the service manifest in which this service type is defined." + }, + "IsServiceGroup": { + "type": "boolean", + "description": "Indicates whether the service is a service group. If it is, the property value is true otherwise false." + } + } + }, + "ServiceTypeInfoList": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceTypeInfo" + }, + "description": "List of service type information." + }, + "ServiceTypeManifest": { + "description": "Contains the manifest describing a service type registered as part of an application in a Service Fabric cluster.", + "properties": { + "Manifest": { + "type": "string", + "description": "The XML manifest as a string." + } + } + }, + "SingletonPartitionInformation": { + "description": "Information about a partition that is singleton. The services with singleton partitioning scheme are effectively non-partitioned. They only have one partition.", + "allOf": [ + { + "$ref": "#/definitions/PartitionInformation" + } + ], + "x-ms-discriminator-value": "Singleton" + }, + "StatefulServiceInfo": { + "description": "Information about a stateful Service Fabric service.", + "allOf": [ + { + "$ref": "#/definitions/ServiceInfo" + } + ], + "properties": { + "HasPersistedState": { + "description": "Whether the service has persisted state.", + "type": "boolean" + } + }, + "x-ms-discriminator-value": "Stateful" + }, + "StatefulServicePartitionInfo": { + "description": "Information about a partition of a stateful Service Fabric service..", + "allOf": [ + { + "$ref": "#/definitions/ServicePartitionInfo" + } + ], + "x-ms-discriminator-value": "Stateful", + "properties": { + "TargetReplicaSetSize": { + "type": "integer", + "format": "int64", + "description": "The target replica set size as a number." + }, + "MinReplicaSetSize": { + "type": "integer", + "format": "int64", + "description": "The minimum replica set size as a number." + }, + "LastQuorumLossDuration": { + "type": "string", + "format": "duration", + "description": "The duration for which this partition was in quorum loss. If the partition is currently in quorum loss, it returns the duration since it has been in that state. This field is using ISO8601 format for specifying the duration." + }, + "PrimaryEpoch": { + "$ref": "#/definitions/Epoch", + "description": "An Epoch is a configuration number for the partition as a whole. When the configuration of the replica set changes, for example when the Primary replica changes, the operations that are replicated from the new Primary replica are said to be a new Epoch from the ones which were sent by the old Primary replica." + } + } + }, + "StatefulServiceReplicaHealth": { + "description": "Represents the health of the stateful service replica.\nContains the replica aggregated health state, the health events and the unhealthy evaluations.", + "x-ms-discriminator-value": "Stateful", + "allOf": [ + { + "$ref": "#/definitions/ReplicaHealth" + } + ], + "properties": { + "ReplicaId": { + "$ref": "#/definitions/ReplicaId", + "description": "Id of a stateful service replica. ReplicaId is used by Service Fabric to uniquely identify a replica of a partition. It is unique within a partition and does not change for the lifetime of the replica. If a replica gets dropped and another replica gets created on the same node for the same partition, it will get a different value for the id. Sometimes the id of a stateless service instance is also referred as a replica id." + } + } + }, + "StatefulServiceReplicaHealthState": { + "x-ms-discriminator-value": "Stateful", + "description": "Represents the health state of the stateful service replica, which contains the replica ID and the aggregated health state.", + "allOf": [ + { + "$ref": "#/definitions/ReplicaHealthState" + } + ], + "properties": { + "ReplicaId": { + "$ref": "#/definitions/ReplicaId", + "description": "Id of a stateful service replica. ReplicaId is used by Service Fabric to uniquely identify a replica of a partition. It is unique within a partition and does not change for the lifetime of the replica. If a replica gets dropped and another replica gets created on the same node for the same partition, it will get a different value for the id. Sometimes the id of a stateless service instance is also referred as a replica id." + } + } + }, + "StatefulServiceTypeDescription": { + "description": "Describes a stateful service type defined in the service manifest of a provisioned application type.", + "allOf": [ + { + "$ref": "#/definitions/ServiceTypeDescription" + } + ], + "x-ms-discriminator-value": "Stateful", + "properties": { + "HasPersistedState": { + "type": "boolean", + "description": "A flag indicating whether this is a persistent service which stores states on the local disk. If it is then the value of this property is true, if not it is false." + } + } + }, + "StatelessServiceInfo": { + "description": "Information about a stateless Service Fabric service.", + "allOf": [ + { + "$ref": "#/definitions/ServiceInfo" + } + ], + "x-ms-discriminator-value": "Stateless" + }, + "StatelessServiceInstanceHealth": { + "description": "Represents the health of the stateless service instance.\nContains the instance aggregated health state, the health events and the unhealthy evaluations.", + "x-ms-discriminator-value": "Stateless", + "allOf": [ + { + "$ref": "#/definitions/ReplicaHealth" + } + ], + "properties": { + "InstanceId": { + "$ref": "#/definitions/InstanceId", + "description": "Id of a stateless service instance. InstanceId is used by Service Fabric to uniquely identify an instance of a partition of a stateless service. It is unique within a partition and does not change for the lifetime of the instance. If the instance has failed over on the same or different node, it will get a different value for the InstanceId." + } + } + }, + "StatelessServiceInstanceHealthState": { + "x-ms-discriminator-value": "Stateless", + "description": "Represents the health state of the stateless service instance, which contains the instance ID and the aggregated health state.", + "allOf": [ + { + "$ref": "#/definitions/ReplicaHealthState" + } + ], + "properties": { + "ReplicaId": { + "$ref": "#/definitions/ReplicaId", + "description": "Id of the stateless service instance on the wire this field is called ReplicaId." + } + } + }, + "StatelessServicePartitionInfo": { + "description": "Information about a partition of a stateless Service Fabric service.", + "allOf": [ + { + "$ref": "#/definitions/ServicePartitionInfo" + } + ], + "x-ms-discriminator-value": "Stateless", + "properties": { + "InstanceCount": { + "type": "integer", + "format": "int64", + "description": "Number of instances of this partition." + }, + "MinInstanceCount": { + "$ref": "#/definitions/MinInstanceCount", + "description": "MinInstanceCount is the minimum number of instances that must be up to meet the EnsureAvailability safety check during operations like upgrade or deactivate node.\nThe actual number that is used is max( MinInstanceCount, ceil( MinInstancePercentage/100.0 * InstanceCount) ).\nNote, if InstanceCount is set to -1, during MinInstanceCount computation -1 is first converted into the number of nodes on which the instances are allowed to be placed according to the placement constraints on the service." + }, + "MinInstancePercentage": { + "$ref": "#/definitions/MinInstancePercentage", + "description": "MinInstancePercentage is the minimum percentage of InstanceCount that must be up to meet the EnsureAvailability safety check during operations like upgrade or deactivate node.\nThe actual number that is used is max( MinInstanceCount, ceil( MinInstancePercentage/100.0 * InstanceCount) ).\nNote, if InstanceCount is set to -1, during MinInstancePercentage computation, -1 is first converted into the number of nodes on which the instances are allowed to be placed according to the placement constraints on the service." + } + } + }, + "StatelessServiceTypeDescription": { + "description": "Describes a stateless service type defined in the service manifest of a provisioned application type.", + "allOf": [ + { + "$ref": "#/definitions/ServiceTypeDescription" + } + ], + "x-ms-discriminator-value": "Stateless", + "properties": { + "UseImplicitHost": { + "type": "boolean", + "description": "A flag indicating if this type is not implemented and hosted by a user service process, but is implicitly hosted by a system created process. This value is true for services using the guest executable services, false otherwise." + } + } + }, + "SystemApplicationHealthEvaluation": { + "x-ms-discriminator-value": "SystemApplication", + "description": "Represents health evaluation for the fabric:/System application, containing information about the data and the algorithm used by health store to evaluate health. The evaluation is returned only when the aggregated health state of the cluster is either Error or Warning.", + "allOf": [ + { + "$ref": "#/definitions/HealthEvaluation" + } + ], + "properties": { + "UnhealthyEvaluations": { + "$ref": "#/definitions/UnhealthyEvaluations", + "description": "List of unhealthy evaluations that led to the current aggregated health state of the system application. The types of the unhealthy evaluations can be DeployedApplicationsHealthEvaluation, ServicesHealthEvaluation or EventHealthEvaluation." + } + } + }, + "TargetApplicationName": { + "type": "string", + "description": "The name of the target application, including the 'fabric:' URI scheme." + }, + "TargetApplicationTypeVersion": { + "type": "string", + "description": "The target application type version (found in the application manifest) for the application upgrade." + }, + "TargetDeploymentName": { + "type": "string", + "description": "The name of the target deployment." + }, + "UnhealthyEvaluations": { + "description": "List of health evaluations that resulted in the current aggregated health state.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthEvaluationWrapper" + } + }, + "UpgradeDomainDeltaNodesCheckHealthEvaluation": { + "x-ms-discriminator-value": "UpgradeDomainDeltaNodesCheck", + "description": "Represents health evaluation for delta unhealthy cluster nodes in an upgrade domain, containing health evaluations for each unhealthy node that impacted current aggregated health state.\nCan be returned during cluster upgrade when cluster aggregated health state is Warning or Error.", + "allOf": [ + { + "$ref": "#/definitions/HealthEvaluation" + } + ], + "properties": { + "UpgradeDomainName": { + "type": "string", + "description": "Name of the upgrade domain where nodes health is currently evaluated." + }, + "BaselineErrorCount": { + "type": "integer", + "format": "int64", + "description": "Number of upgrade domain nodes with aggregated heath state Error in the health store at the beginning of the cluster upgrade." + }, + "BaselineTotalCount": { + "type": "integer", + "format": "int64", + "description": "Total number of upgrade domain nodes in the health store at the beginning of the cluster upgrade." + }, + "MaxPercentDeltaUnhealthyNodes": { + "type": "integer", + "description": "Maximum allowed percentage of upgrade domain delta unhealthy nodes from the ClusterUpgradeHealthPolicy." + }, + "TotalCount": { + "type": "integer", + "format": "int64", + "description": "Total number of upgrade domain nodes in the health store." + }, + "UnhealthyEvaluations": { + "$ref": "#/definitions/UnhealthyEvaluations", + "description": "List of unhealthy evaluations that led to the aggregated health state. Includes all the unhealthy NodeHealthEvaluation that impacted the aggregated health." + } + } + }, + "UpgradeDomainInfo": { + "description": "Information about an upgrade domain.", + "properties": { + "Name": { + "$ref": "#/definitions/UpgradeDomainName", + "description": "The name of the upgrade domain" + }, + "State": { + "$ref": "#/definitions/UpgradeDomainState", + "description": "The state of the upgrade domain." + } + } + }, + "UpgradeDomainInfoList": { + "type": "array", + "description": "List of upgrade domains and their statuses.", + "items": { + "$ref": "#/definitions/UpgradeDomainInfo" + } + }, + "UpgradeDomainName": { + "type": "string", + "description": "The name of the upgrade domain" + }, + "UpgradeDomainNodesHealthEvaluation": { + "x-ms-discriminator-value": "UpgradeDomainNodes", + "description": "Represents health evaluation for cluster nodes in an upgrade domain, containing health evaluations for each unhealthy node that impacted current aggregated health state. Can be returned when evaluating cluster health during cluster upgrade and the aggregated health state is either Error or Warning.", + "allOf": [ + { + "$ref": "#/definitions/HealthEvaluation" + } + ], + "properties": { + "UpgradeDomainName": { + "type": "string", + "description": "Name of the upgrade domain where nodes health is currently evaluated." + }, + "MaxPercentUnhealthyNodes": { + "type": "integer", + "description": "Maximum allowed percentage of unhealthy nodes from the ClusterHealthPolicy." + }, + "TotalCount": { + "type": "integer", + "format": "int64", + "description": "Total number of nodes in the current upgrade domain." + }, + "UnhealthyEvaluations": { + "$ref": "#/definitions/UnhealthyEvaluations", + "description": "List of unhealthy evaluations that led to the aggregated health state. Includes all the unhealthy NodeHealthEvaluation that impacted the aggregated health." + } + } + }, + "UpgradeDomainState": { + "type": "string", + "description": "The state of the upgrade domain.", + "enum": [ + "Invalid", + "Pending", + "InProgress", + "Completed" + ], + "x-ms-enum": { + "name": "UpgradeDomainState", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the upgrade domain state is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "Pending", + "description": "The upgrade domain has not started upgrading yet. The value is 1" + }, + { + "value": "InProgress", + "description": "The upgrade domain is being upgraded but not complete yet. The value is 2" + }, + { + "value": "Completed", + "description": "The upgrade domain has completed upgrade. The value is 3" + } + ] + } + }, + "UpgradeDomainTimeout": { + "type": "string", + "description": "The amount of time each upgrade domain has to complete before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds.", + "default": "P10675199DT02H48M05.4775807S" + }, + "UpgradeDuration": { + "type": "string", + "description": "The estimated amount of time that the overall upgrade elapsed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds.", + "default": "PT0H2M0S" + }, + "UpgradeKind": { + "type": "string", + "description": "The kind of upgrade out of the following possible values.", + "default": "Rolling", + "enum": [ + "Invalid", + "Rolling" + ], + "x-ms-enum": { + "name": "UpgradeKind", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the upgrade kind is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "Rolling", + "description": "The upgrade progresses one upgrade domain at a time. The value is 1" + } + ] + } + }, + "UpgradeMode": { + "type": "string", + "description": "The mode used to monitor health during a rolling upgrade. The values are UnmonitoredAuto, UnmonitoredManual, and Monitored.", + "enum": [ + "Invalid", + "UnmonitoredAuto", + "UnmonitoredManual", + "Monitored" + ], + "default": "UnmonitoredAuto", + "x-ms-enum": { + "name": "UpgradeMode", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the upgrade mode is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "UnmonitoredAuto", + "description": "The upgrade will proceed automatically without performing any health monitoring. The value is 1" + }, + { + "value": "UnmonitoredManual", + "description": "The upgrade will stop after completing each upgrade domain, giving the opportunity to manually monitor health before proceeding. The value is 2" + }, + { + "value": "Monitored", + "description": "The upgrade will stop after completing each upgrade domain and automatically monitor health before proceeding. The value is 3" + } + ] + } + }, + "UpgradeSortOrder": { + "type": "string", + "description": "Defines the order in which an upgrade proceeds through the cluster.", + "enum": [ + "Invalid", + "Default", + "Numeric", + "Lexicographical", + "ReverseNumeric", + "ReverseLexicographical" + ], + "default": "Default", + "x-ms-enum": { + "name": "UpgradeSortOrder", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates that this sort order is not valid. All Service Fabric enumerations have the invalid type. The value is 0." + }, + { + "value": "Default", + "description": "Indicates that the default sort order (as specified in cluster manifest) will be used. The value is 1." + }, + { + "value": "Numeric", + "description": "Indicates that forward numeric sort order (UD names sorted as numbers) will be used. The value is 2." + }, + { + "value": "Lexicographical", + "description": "Indicates that forward lexicographical sort order (UD names sorted as strings) will be used. The value is 3." + }, + { + "value": "ReverseNumeric", + "description": "Indicates that reverse numeric sort order (UD names sorted as numbers) will be used. The value is 4." + }, + { + "value": "ReverseLexicographical", + "description": "Indicates that reverse lexicographical sort order (UD names sorted as strings) will be used. The value is 5." + } + ] + } + }, + "UpgradeType": { + "type": "string", + "description": "The type of upgrade out of the following possible values.", + "default": "Rolling", + "enum": [ + "Invalid", + "Rolling", + "Rolling_ForceRestart" + ], + "x-ms-enum": { + "name": "UpgradeType", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the upgrade kind is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "Rolling", + "description": "The upgrade progresses one upgrade domain at a time. The value is 1." + }, + { + "value": "Rolling_ForceRestart", + "description": "The upgrade gets restarted by force. The value is 2." + } + ] + } + }, + "UpgradeReplicaSetCheckTimeout": { + "type": "integer", + "format": "int64", + "description": "The maximum amount of time to block processing of an upgrade domain and prevent loss of availability when there are unexpected issues. When this timeout expires, processing of the upgrade domain will proceed regardless of availability loss issues. The timeout is reset at the start of each upgrade domain. Valid values are between 0 and 42949672925 inclusive. (unsigned 32-bit integer).", + "default": 42949672925 + }, + "UpgradeState": { + "type": "string", + "description": "The state of the upgrade domain.", + "enum": [ + "Invalid", + "RollingBackInProgress", + "RollingBackCompleted", + "RollingForwardPending", + "RollingForwardInProgress", + "RollingForwardCompleted", + "Failed" + ], + "x-ms-enum": { + "name": "UpgradeState", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the upgrade state is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "RollingBackInProgress", + "description": "The upgrade is rolling back to the previous version but is not complete yet. The value is 1" + }, + { + "value": "RollingBackCompleted", + "description": "The upgrade has finished rolling back. The value is 2" + }, + { + "value": "RollingForwardPending", + "description": "The current upgrade domain has finished upgrading. The overall upgrade is waiting for an explicit move next request in UnmonitoredManual mode or performing health checks in Monitored mode. The value is 3" + }, + { + "value": "RollingForwardInProgress", + "description": "The upgrade is rolling forward to the target version but is not complete yet. The value is 4" + }, + { + "value": "RollingForwardCompleted", + "description": "The upgrade has finished rolling forward. The value is 5" + }, + { + "value": "Failed", + "description": "The upgrade has failed and is unable to execute FailureAction. The value is 6" + } + ] + } + }, + "UpgradeTimeout": { + "type": "string", + "description": "The amount of time the overall upgrade has to complete before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds.", + "default": "P10675199DT02H48M05.4775807S" + }, + "WaitForInbuildReplicaSafetyCheck": { + "description": "Safety check that waits for the replica build operation to finish. This indicates that there is a replica that is going through the copy or is providing data for building another replica. Bring the node down will abort this copy operation which are typically expensive involving data movements.", + "allOf": [ + { + "$ref": "#/definitions/PartitionSafetyCheck" + } + ], + "x-ms-discriminator-value": "WaitForInbuildReplica" + }, + "WaitForPrimaryPlacementSafetyCheck": { + "description": "Safety check that waits for the primary replica that was moved out of the node due to upgrade to be placed back again on that node.", + "allOf": [ + { + "$ref": "#/definitions/PartitionSafetyCheck" + } + ], + "x-ms-discriminator-value": "WaitForPrimaryPlacement" + }, + "WaitForPrimarySwapSafetyCheck": { + "description": "Safety check that waits for the primary replica to be moved out of the node before starting an upgrade to ensure the availability of the primary replica for the partition.", + "allOf": [ + { + "$ref": "#/definitions/PartitionSafetyCheck" + } + ], + "x-ms-discriminator-value": "WaitForPrimarySwap" + }, + "WaitForReconfigurationSafetyCheck": { + "description": "Safety check that waits for the current reconfiguration of the partition to be completed before starting an upgrade.", + "allOf": [ + { + "$ref": "#/definitions/PartitionSafetyCheck" + } + ], + "x-ms-discriminator-value": "WaitForReconfiguration" + }, + "LoadMetricReport": { + "description": "Represents the load metric report which contains the time metric was reported, its name and value.", + "properties": { + "LastReportedUtc": { + "type": "string", + "format": "date-time", + "description": "Gets the UTC time when the load was reported." + }, + "Name": { + "type": "string", + "description": "The name of the load metric." + }, + "Value": { + "type": "string", + "format": "int32", + "description": "The value of the load metric. In future releases of Service Fabric this parameter will be deprecated in favor of CurrentValue." + }, + "CurrentValue": { + "type": "string", + "format": "double", + "description": "The value of the load metric." + } + } + }, + "PartitionLoadInformation": { + "description": "Represents load information for a partition, which contains the primary and secondary reported load metrics.\nIn case there is no load reported, PartitionLoadInformation will contain the default load for the service of the partition.\nFor default loads, LoadMetricReport's LastReportedUtc is set to 0.", + "properties": { + "PartitionId": { + "$ref": "#/definitions/PartitionId", + "description": "Id of the partition." + }, + "PrimaryLoadMetricReports": { + "type": "array", + "description": "Array of load reports from the primary replica for this partition.", + "items": { + "$ref": "#/definitions/LoadMetricReport" + } + }, + "SecondaryLoadMetricReports": { + "type": "array", + "description": "Array of aggregated load reports from all secondary replicas for this partition.\nArray only contains the latest reported load for each metric.", + "items": { + "$ref": "#/definitions/LoadMetricReport" + } + } + } + }, + "StatefulServiceReplicaInfo": { + "x-ms-discriminator-value": "Stateful", + "description": "Represents a stateful service replica. This includes information about the identity, role, status, health, node name, uptime, and other details about the replica.", + "allOf": [ + { + "$ref": "#/definitions/ReplicaInfo" + } + ], + "properties": { + "ReplicaRole": { + "$ref": "#/definitions/ReplicaRole", + "description": "The role of a replica of a stateful service." + }, + "ReplicaId": { + "$ref": "#/definitions/ReplicaId", + "description": "Id of a stateful service replica. ReplicaId is used by Service Fabric to uniquely identify a replica of a partition. It is unique within a partition and does not change for the lifetime of the replica. If a replica gets dropped and another replica gets created on the same node for the same partition, it will get a different value for the id. Sometimes the id of a stateless service instance is also referred as a replica id." + } + } + }, + "StatelessServiceInstanceInfo": { + "x-ms-discriminator-value": "Stateless", + "description": "Represents a stateless service instance. This includes information about the identity, status, health, node name, uptime, and other details about the instance.", + "allOf": [ + { + "$ref": "#/definitions/ReplicaInfo" + } + ], + "properties": { + "InstanceId": { + "$ref": "#/definitions/InstanceId", + "description": "Id of a stateless service instance. InstanceId is used by Service Fabric to uniquely identify an instance of a partition of a stateless service. It is unique within a partition and does not change for the lifetime of the instance. If the instance has failed over on the same or different node, it will get a different value for the InstanceId." + } + } + }, + "ClusterFabricCodeVersionString": { + "type": "string", + "description": "The ServiceFabric code version of the cluster." + }, + "ClusterFabricConfigVersionString": { + "type": "string", + "description": "The cluster configuration version (specified in the cluster manifest)." + }, + "ClusterUpgradeDescriptionObject": { + "description": "Represents a ServiceFabric cluster upgrade", + "properties": { + "ConfigVersion": { + "$ref": "#/definitions/ClusterFabricConfigVersionString", + "description": "The cluster configuration version (specified in the cluster manifest)." + }, + "CodeVersion": { + "$ref": "#/definitions/ClusterFabricCodeVersionString", + "description": "The ServiceFabric code version of the cluster." + }, + "UpgradeKind": { + "$ref": "#/definitions/UpgradeKind", + "description": "The kind of upgrade out of the following possible values." + }, + "RollingUpgradeMode": { + "$ref": "#/definitions/UpgradeMode", + "description": "The mode used to monitor health during a rolling upgrade. The values are UnmonitoredAuto, UnmonitoredManual, and Monitored." + }, + "UpgradeReplicaSetCheckTimeoutInSeconds": { + "$ref": "#/definitions/UpgradeReplicaSetCheckTimeout", + "description": "The maximum amount of time to block processing of an upgrade domain and prevent loss of availability when there are unexpected issues. When this timeout expires, processing of the upgrade domain will proceed regardless of availability loss issues. The timeout is reset at the start of each upgrade domain. Valid values are between 0 and 42949672925 inclusive. (unsigned 32-bit integer)." + }, + "ForceRestart": { + "$ref": "#/definitions/ForceRestart", + "description": "If true, then processes are forcefully restarted during upgrade even when the code version has not changed (the upgrade only changes configuration or data)." + }, + "SortOrder": { + "$ref": "#/definitions/UpgradeSortOrder", + "description": "Defines the order in which an upgrade proceeds through the cluster." + }, + "EnableDeltaHealthEvaluation": { + "$ref": "#/definitions/DeltaHealthEvaluationBool", + "description": "When true, enables delta health evaluation rather than absolute health evaluation after completion of each upgrade domain." + }, + "MonitoringPolicy": { + "$ref": "#/definitions/MonitoringPolicyDescription", + "description": "Describes the parameters for monitoring an upgrade in Monitored mode." + }, + "ClusterHealthPolicy": { + "$ref": "#/definitions/ClusterHealthPolicy", + "description": "Defines a health policy used to evaluate the health of the cluster or of a cluster node." + }, + "ClusterUpgradeHealthPolicy": { + "$ref": "#/definitions/ClusterUpgradeHealthPolicyObject", + "description": "Defines a health policy used to evaluate the health of the cluster during a cluster upgrade." + }, + "ApplicationHealthPolicyMap": { + "$ref": "#/definitions/ApplicationHealthPolicyMapObject", + "description": "Represents the map of application health policies for a ServiceFabric cluster upgrade" + } + } + }, + "ClusterUpgradeHealthPolicyObject": { + "description": "Defines a health policy used to evaluate the health of the cluster during a cluster upgrade.", + "properties": { + "MaxPercentDeltaUnhealthyNodes": { + "type": "integer", + "description": "The maximum allowed percentage of nodes health degradation allowed during cluster upgrades. The delta is measured between the state of the nodes at the beginning of upgrade and the state of the nodes at the time of the health evaluation. The check is performed after every upgrade domain upgrade completion to make sure the global state of the cluster is within tolerated limits. The default value is 10%.", + "maximum": 100, + "minimum": 0 + }, + "MaxPercentUpgradeDomainDeltaUnhealthyNodes": { + "type": "integer", + "description": "The maximum allowed percentage of upgrade domain nodes health degradation allowed during cluster upgrades. The delta is measured between the state of the upgrade domain nodes at the beginning of upgrade and the state of the upgrade domain nodes at the time of the health evaluation. The check is performed after every upgrade domain upgrade completion for all completed upgrade domains to make sure the state of the upgrade domains is within tolerated limits. The default value is 15%.", + "maximum": 100, + "minimum": 0 + } + } + }, + "ClusterUpgradeProgressObject": { + "description": "Information about a cluster upgrade.", + "properties": { + "CodeVersion": { + "$ref": "#/definitions/ClusterFabricCodeVersionString", + "description": "The ServiceFabric code version of the cluster." + }, + "ConfigVersion": { + "$ref": "#/definitions/ClusterFabricConfigVersionString", + "description": "The cluster configuration version (specified in the cluster manifest)." + }, + "UpgradeDomains": { + "$ref": "#/definitions/UpgradeDomainInfoList", + "description": "List of upgrade domains and their statuses." + }, + "UpgradeState": { + "$ref": "#/definitions/UpgradeState", + "description": "The state of the upgrade domain." + }, + "NextUpgradeDomain": { + "$ref": "#/definitions/NextUpgradeDomain", + "description": "The name of the next upgrade domain to be processed." + }, + "RollingUpgradeMode": { + "$ref": "#/definitions/UpgradeMode", + "description": "The mode used to monitor health during a rolling upgrade. The values are UnmonitoredAuto, UnmonitoredManual, and Monitored." + }, + "UpgradeDescription": { + "$ref": "#/definitions/ClusterUpgradeDescriptionObject", + "description": "Represents a ServiceFabric cluster upgrade" + }, + "UpgradeDurationInMilliseconds": { + "$ref": "#/definitions/UpgradeDurationString", + "description": "The estimated elapsed time spent processing the current overall upgrade." + }, + "UpgradeDomainDurationInMilliseconds": { + "$ref": "#/definitions/UpgradeDomainDurationString", + "description": "The estimated elapsed time spent processing the current upgrade domain." + }, + "UnhealthyEvaluations": { + "$ref": "#/definitions/UnhealthyEvaluations", + "description": "List of health evaluations that resulted in the current aggregated health state." + }, + "CurrentUpgradeDomainProgress": { + "$ref": "#/definitions/CurrentUpgradeDomainProgressInfo", + "description": "Information about the current in-progress upgrade domain." + }, + "StartTimestampUtc": { + "$ref": "#/definitions/UpgradeStartTimeUTCString", + "description": "The start time of the upgrade in UTC." + }, + "FailureTimestampUtc": { + "$ref": "#/definitions/UpgradeFailureTimeUTCString", + "description": "The failure time of the upgrade in UTC." + }, + "FailureReason": { + "$ref": "#/definitions/FailureReason", + "description": "The cause of an upgrade failure that resulted in FailureAction being executed." + }, + "UpgradeDomainProgressAtFailure": { + "$ref": "#/definitions/FailedUpgradeDomainProgressObject", + "description": "The detailed upgrade progress for nodes in the current upgrade domain at the point of failure." + } + } + }, + "ClusterConfigurationUpgradeDescription": { + "description": "Describes the parameters for a standalone cluster configuration upgrade.", + "properties": { + "ClusterConfig": { + "type": "string", + "description": "The cluster configuration as a JSON string. For example, [this file](https://github.com/Azure-Samples/service-fabric-dotnet-standalone-cluster-configuration/blob/master/Samples/ClusterConfig.Unsecure.DevCluster.json) contains JSON describing the [nodes and other properties of the cluster](https://docs.microsoft.com/azure/service-fabric/service-fabric-cluster-manifest)." + }, + "HealthCheckRetryTimeout": { + "type": "string", + "format": "duration", + "description": "The length of time between attempts to perform health checks if the application or cluster is not healthy.", + "default": "PT0H0M0S" + }, + "HealthCheckWaitDurationInSeconds": { + "type": "string", + "format": "duration", + "description": "The length of time to wait after completing an upgrade domain before starting the health checks process.", + "default": "PT0H0M0S" + }, + "HealthCheckStableDurationInSeconds": { + "type": "string", + "format": "duration", + "description": "The length of time that the application or cluster must remain healthy before the upgrade proceeds to the next upgrade domain.", + "default": "PT0H0M0S" + }, + "UpgradeDomainTimeoutInSeconds": { + "type": "string", + "format": "duration", + "description": "The timeout for the upgrade domain.", + "default": "PT0H0M0S" + }, + "UpgradeTimeoutInSeconds": { + "type": "string", + "format": "duration", + "description": "The upgrade timeout.", + "default": "PT0H0M0S" + }, + "MaxPercentUnhealthyApplications": { + "type": "integer", + "description": "The maximum allowed percentage of unhealthy applications during the upgrade. Allowed values are integer values from zero to 100.", + "default": 0 + }, + "MaxPercentUnhealthyNodes": { + "type": "integer", + "description": "The maximum allowed percentage of unhealthy nodes during the upgrade. Allowed values are integer values from zero to 100.", + "default": 0 + }, + "MaxPercentDeltaUnhealthyNodes": { + "type": "integer", + "description": "The maximum allowed percentage of delta health degradation during the upgrade. Allowed values are integer values from zero to 100.", + "default": 0 + }, + "MaxPercentUpgradeDomainDeltaUnhealthyNodes": { + "type": "integer", + "description": "The maximum allowed percentage of upgrade domain delta health degradation during the upgrade. Allowed values are integer values from zero to 100.", + "default": 0 + }, + "ApplicationHealthPolicies": { + "$ref": "#/definitions/ApplicationHealthPolicies", + "description": "Defines the application health policy map used to evaluate the health of an application or one of its children entities." + } + }, + "required": [ + "ClusterConfig" + ] + }, + "DeltaHealthEvaluationBool": { + "type": "boolean", + "description": "When true, enables delta health evaluation rather than absolute health evaluation after completion of each upgrade domain." + }, + "FailedUpgradeDomainProgressObject": { + "description": "The detailed upgrade progress for nodes in the current upgrade domain at the point of failure.", + "properties": { + "DomainName": { + "$ref": "#/definitions/UpgradeDomainName", + "description": "The name of the upgrade domain" + }, + "NodeUpgradeProgressList": { + "$ref": "#/definitions/NodeUpgradeProgressInfoList", + "description": "List of upgrading nodes and their statuses" + } + } + }, + "UpgradeDomainDurationString": { + "type": "string", + "description": "The estimated elapsed time spent processing the current upgrade domain." + }, + "UpgradeDurationString": { + "type": "string", + "description": "The estimated elapsed time spent processing the current overall upgrade." + }, + "UpgradeFailureTimeUTCString": { + "type": "string", + "description": "The failure time of the upgrade in UTC." + }, + "UpgradeStartTimeUTCString": { + "type": "string", + "description": "The start time of the upgrade in UTC." + }, + "UpgradeOrchestrationServiceState": { + "description": "Service state of Service Fabric Upgrade Orchestration Service.", + "properties": { + "ServiceState": { + "type": "string", + "description": "The state of Service Fabric Upgrade Orchestration Service." + } + } + }, + "UpgradeOrchestrationServiceStateSummary": { + "description": "Service state summary of Service Fabric Upgrade Orchestration Service.", + "properties": { + "CurrentCodeVersion": { + "type": "string", + "description": "The current code version of the cluster." + }, + "CurrentManifestVersion": { + "type": "string", + "description": "The current manifest version of the cluster." + }, + "TargetCodeVersion": { + "type": "string", + "description": "The target code version of the cluster." + }, + "TargetManifestVersion": { + "type": "string", + "description": "The target manifest version of the cluster." + }, + "PendingUpgradeType": { + "type": "string", + "description": "The type of the pending upgrade of the cluster." + } + } + }, + "ApplicationTypeImageStorePath": { + "description": "Path description for the application package in the image store specified during the prior copy operation.", + "required": [ + "ApplicationTypeBuildPath" + ], + "properties": { + "ApplicationTypeBuildPath": { + "type": "string", + "description": "The relative image store path to the application package." + } + } + }, + "UnprovisionApplicationTypeDescriptionInfo": { + "description": "Describes the operation to unregister or unprovision an application type and its version that was registered with the Service Fabric.", + "required": [ + "ApplicationTypeVersion" + ], + "properties": { + "ApplicationTypeVersion": { + "$ref": "#/definitions/ApplicationTypeVersion", + "description": "The version of the application type as defined in the application manifest." + }, + "Async": { + "type": "boolean", + "description": "The flag indicating whether or not unprovision should occur asynchronously. When set to true, the unprovision operation returns when the request is accepted by the system, and the unprovision operation continues without any timeout limit. The default value is false. However, we recommend setting it to true for large application packages that were provisioned." + } + } + }, + "CodePackageName": { + "type": "string", + "description": "The name of the code package defined in the service manifest." + }, + "CodePackageEntryPointStatistics": { + "description": "Statistics about setup or main entry point of a code package deployed on a Service Fabric node.", + "properties": { + "LastExitCode": { + "type": "string", + "description": "The last exit code of the entry point." + }, + "LastActivationTime": { + "type": "string", + "format": "date-time", + "description": "The last time (in UTC) when Service Fabric attempted to run the entry point." + }, + "LastExitTime": { + "type": "string", + "format": "date-time", + "description": "The last time (in UTC) when the entry point finished running." + }, + "LastSuccessfulActivationTime": { + "type": "string", + "format": "date-time", + "description": "The last time (in UTC) when the entry point ran successfully." + }, + "LastSuccessfulExitTime": { + "type": "string", + "format": "date-time", + "description": "The last time (in UTC) when the entry point finished running gracefully." + }, + "ActivationCount": { + "type": "string", + "description": "Number of times the entry point has run." + }, + "ActivationFailureCount": { + "type": "string", + "description": "Number of times the entry point failed to run." + }, + "ContinuousActivationFailureCount": { + "type": "string", + "description": "Number of times the entry point continuously failed to run." + }, + "ExitCount": { + "type": "string", + "description": "Number of times the entry point finished running." + }, + "ExitFailureCount": { + "type": "string", + "description": "Number of times the entry point failed to exit gracefully." + }, + "ContinuousExitFailureCount": { + "type": "string", + "description": "Number of times the entry point continuously failed to exit gracefully." + } + } + }, + "DeployedCodePackageInfoList": { + "type": "array", + "items": { + "$ref": "#/definitions/DeployedCodePackageInfo" + }, + "description": "List of deployed code package information." + }, + "DeployedCodePackageInfo": { + "description": "Information about code package deployed on a Service Fabric node.", + "properties": { + "Name": { + "$ref": "#/definitions/CodePackageName", + "description": "The name of the code package." + }, + "Version": { + "type": "string", + "description": "The version of the code package specified in service manifest." + }, + "ServiceManifestName": { + "$ref": "#/definitions/ServiceManifestName", + "description": "The name of service manifest that specified this code package." + }, + "ServicePackageActivationId": { + "$ref": "#/definitions/ServicePackageActivationId", + "description": "The ActivationId of a deployed service package. If ServicePackageActivationMode specified at the time of creating the service\nis 'SharedProcess' (or if it is not specified, in which case it defaults to 'SharedProcess'), then value of ServicePackageActivationId\nis always an empty string." + }, + "HostType": { + "$ref": "#/definitions/HostType", + "description": "Specifies the type of host for main entry point of a code package as specified in service manifest." + }, + "HostIsolationMode": { + "$ref": "#/definitions/HostIsolationMode", + "description": "Specifies the isolation mode of main entry point of a code package when it's host type is ContainerHost. This is specified as part of container host policies in application manifest while importing service manifest." + }, + "Status": { + "$ref": "#/definitions/DeploymentStatus", + "description": "Specifies the status of a deployed application or service package on a Service Fabric node." + }, + "RunFrequencyInterval": { + "type": "string", + "description": "The interval at which code package is run. This is used for periodic code package." + }, + "SetupEntryPoint": { + "$ref": "#/definitions/CodePackageEntryPoint", + "description": "Information about setup or main entry point of a code package deployed on a Service Fabric node." + }, + "MainEntryPoint": { + "$ref": "#/definitions/CodePackageEntryPoint", + "description": "Information about setup or main entry point of a code package deployed on a Service Fabric node." + } + } + }, + "DeploymentStatus": { + "type": "string", + "description": "Specifies the status of a deployed application or service package on a Service Fabric node.", + "enum": [ + "Invalid", + "Downloading", + "Activating", + "Active", + "Upgrading", + "Deactivating", + "RanToCompletion", + "Failed" + ], + "x-ms-enum": { + "name": "DeploymentStatus", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates status of the application or service package is not known or invalid. The value is 0." + }, + { + "value": "Downloading", + "description": "Indicates the application or service package is being downloaded to the node from the ImageStore. The value is 1." + }, + { + "value": "Activating", + "description": "Indicates the application or service package is being activated. The value is 2." + }, + { + "value": "Active", + "description": "Indicates the application or service package is active the node. The value is 3." + }, + { + "value": "Upgrading", + "description": "Indicates the application or service package is being upgraded. The value is 4." + }, + { + "value": "Deactivating", + "description": "Indicates the application or service package is being deactivated. The value is 5." + }, + { + "value": "RanToCompletion", + "description": "Indicates the application or service package has ran to completion successfully. The value is 6." + }, + { + "value": "Failed", + "description": "Indicates the application or service package has failed to run to completion. The value is 7." + } + ] + } + }, + "EntryPointStatus": { + "type": "string", + "description": "Specifies the status of the code package entry point deployed on a Service Fabric node.", + "enum": [ + "Invalid", + "Pending", + "Starting", + "Started", + "Stopping", + "Stopped" + ], + "x-ms-enum": { + "name": "EntryPointStatus", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates status of entry point is not known or invalid. The value is 0." + }, + { + "value": "Pending", + "description": "Indicates the entry point is scheduled to be started. The value is 1." + }, + { + "value": "Starting", + "description": "Indicates the entry point is being started. The value is 2." + }, + { + "value": "Started", + "description": "Indicates the entry point was started successfully and is running. The value is 3." + }, + { + "value": "Stopping", + "description": "Indicates the entry point is being stopped. The value is 4." + }, + { + "value": "Stopped", + "description": "Indicates the entry point is not running. The value is 5." + } + ] + } + }, + "CodePackageEntryPoint": { + "description": "Information about setup or main entry point of a code package deployed on a Service Fabric node.", + "properties": { + "EntryPointLocation": { + "type": "string", + "description": "The location of entry point executable on the node." + }, + "ProcessId": { + "type": "string", + "description": "The process ID of the entry point." + }, + "RunAsUserName": { + "type": "string", + "description": "The user name under which entry point executable is run on the node." + }, + "CodePackageEntryPointStatistics": { + "$ref": "#/definitions/CodePackageEntryPointStatistics", + "description": "Statistics about setup or main entry point of a code package deployed on a Service Fabric node." + }, + "Status": { + "$ref": "#/definitions/EntryPointStatus", + "description": "Specifies the status of the code package entry point deployed on a Service Fabric node." + }, + "NextActivationTime": { + "type": "string", + "format": "date-time", + "description": "The time (in UTC) when the entry point executable will be run next." + }, + "InstanceId": { + "$ref": "#/definitions/CodePackageInstanceId", + "description": "The instance ID for current running entry point. For a code package setup entry point (if specified) runs first and after it finishes main entry point is started. Each time entry point executable is run, its instance id will change." + } + } + }, + "Chaos": { + "description": "Contains a description of Chaos.", + "properties": { + "ChaosParameters": { + "$ref": "#/definitions/ChaosParameters", + "description": "If Chaos is running, these are the parameters Chaos is running with." + }, + "Status": { + "$ref": "#/definitions/ChaosStatus", + "description": "Current status of the Chaos run." + }, + "ScheduleStatus": { + "$ref": "#/definitions/ChaosScheduleStatus", + "description": "Current status of the schedule." + } + } + }, + "ChaosStatus": { + "type": "string", + "description": "Current status of the Chaos run.", + "enum": [ + "Invalid", + "Running", + "Stopped" + ], + "x-ms-enum": { + "name": "ChaosStatus", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates an invalid Chaos status. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "Running", + "description": "Indicates that Chaos is not stopped. The value is one." + }, + { + "value": "Stopped", + "description": "Indicates that Chaos is not scheduling further faults. The value is two." + } + ] + } + }, + "ChaosScheduleStatus": { + "type": "string", + "description": "Current status of the schedule.", + "enum": [ + "Invalid", + "Stopped", + "Active", + "Expired", + "Pending" + ], + "x-ms-enum": { + "name": "ChaosScheduleStatus", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates an invalid Chaos Schedule status. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "Stopped", + "description": "Indicates that the schedule is stopped and not being used to schedule runs of chaos. The value is one." + }, + { + "value": "Active", + "description": "Indicates that the schedule is active and is being used to schedule runs of Chaos. The value is two." + }, + { + "value": "Expired", + "description": "Indicates that the schedule is expired and will no longer be used to schedule runs of Chaos. The value is three." + }, + { + "value": "Pending", + "description": "Indicates that the schedule is pending and is not yet being used to schedule runs of Chaos but will be used when the start time is passed. The value is four." + } + ] + } + }, + "ChaosContextMap": { + "additionalProperties": { + "type": "string" + }, + "description": "Describes a map that contains a collection of ChaosContextMapItem's." + }, + "ChaosContext": { + "description": "Describes a map, which is a collection of (string, string) type key-value pairs. The map can be used to record information about\nthe Chaos run. There cannot be more than 100 such pairs and each string (key or value) can be at most 4095 characters long.\nThis map is set by the starter of the Chaos run to optionally store the context about the specific run.", + "properties": { + "Map": { + "$ref": "#/definitions/ChaosContextMap", + "description": "Describes a map that contains a collection of ChaosContextMapItem's." + } + } + }, + "ChaosParameters": { + "description": "Defines all the parameters to configure a Chaos run.", + "properties": { + "TimeToRunInSeconds": { + "type": "string", + "description": "Total time (in seconds) for which Chaos will run before automatically stopping. The maximum allowed value is 4,294,967,295 (System.UInt32.MaxValue).", + "default": "4294967295" + }, + "MaxClusterStabilizationTimeoutInSeconds": { + "type": "integer", + "format": "int64", + "description": "The maximum amount of time to wait for all cluster entities to become stable and healthy. Chaos executes in iterations and at the start of each iteration it validates the health of cluster entities.\nDuring validation if a cluster entity is not stable and healthy within MaxClusterStabilizationTimeoutInSeconds, Chaos generates a validation failed event.", + "default": 60, + "minimum": 0, + "maximum": 4294967295 + }, + "MaxConcurrentFaults": { + "type": "integer", + "format": "int64", + "description": "MaxConcurrentFaults is the maximum number of concurrent faults induced per iteration.\nChaos executes in iterations and two consecutive iterations are separated by a validation phase.\nThe higher the concurrency, the more aggressive the injection of faults, leading to inducing more complex series of states to uncover bugs.\nThe recommendation is to start with a value of 2 or 3 and to exercise caution while moving up.", + "default": 1, + "minimum": 0, + "maximum": 4294967295 + }, + "EnableMoveReplicaFaults": { + "type": "boolean", + "description": "Enables or disables the move primary and move secondary faults.", + "default": true + }, + "WaitTimeBetweenFaultsInSeconds": { + "type": "integer", + "format": "int64", + "description": "Wait time (in seconds) between consecutive faults within a single iteration.\nThe larger the value, the lower the overlapping between faults and the simpler the sequence of state transitions that the cluster goes through.\nThe recommendation is to start with a value between 1 and 5 and exercise caution while moving up.", + "default": 20, + "minimum": 0, + "maximum": 4294967295 + }, + "WaitTimeBetweenIterationsInSeconds": { + "type": "integer", + "format": "int64", + "description": "Time-separation (in seconds) between two consecutive iterations of Chaos.\nThe larger the value, the lower the fault injection rate.", + "default": 30, + "minimum": 0, + "maximum": 4294967295 + }, + "ClusterHealthPolicy": { + "$ref": "#/definitions/ClusterHealthPolicy", + "description": "Passed-in cluster health policy is used to validate health of the cluster in between Chaos iterations. If the cluster health is in error or if an unexpected exception happens during fault execution--to provide the cluster with some time to recuperate--Chaos will wait for 30 minutes before the next health-check." + }, + "Context": { + "$ref": "#/definitions/ChaosContext", + "description": "Describes a map, which is a collection of (string, string) type key-value pairs. The map can be used to record information about\nthe Chaos run. There cannot be more than 100 such pairs and each string (key or value) can be at most 4095 characters long.\nThis map is set by the starter of the Chaos run to optionally store the context about the specific run." + }, + "ChaosTargetFilter": { + "$ref": "#/definitions/ChaosTargetFilter", + "description": "List of cluster entities to target for Chaos faults.\nThis filter can be used to target Chaos faults only to certain node types or only to certain application instances. If ChaosTargetFilter is not used, Chaos faults all cluster entities.\nIf ChaosTargetFilter is used, Chaos faults only the entities that meet the ChaosTargetFilter specification." + } + } + }, + "ChaosParametersDictionaryItem": { + "description": "Defines an item in ChaosParametersDictionary of the Chaos Schedule.", + "required": [ + "Key", + "Value" + ], + "properties": { + "Key": { + "type": "string", + "description": "The key identifying the Chaos Parameter in the dictionary. This key is referenced by Chaos Schedule Jobs." + }, + "Value": { + "$ref": "#/definitions/ChaosParameters", + "description": "Defines all the parameters to configure a Chaos run." + } + } + }, + "ChaosEvent": { + "discriminator": "Kind", + "description": "Represents an event generated during a Chaos run.", + "properties": { + "Kind": { + "$ref": "#/definitions/ChaosEventKind", + "description": "The kind of Chaos event." + }, + "TimeStampUtc": { + "type": "string", + "description": "The UTC timestamp when this Chaos event was generated.", + "format": "date-time" + } + }, + "required": [ + "Kind", + "TimeStampUtc" + ] + }, + "ChaosEventWrapper": { + "description": "Wrapper object for Chaos event.", + "properties": { + "ChaosEvent": { + "$ref": "#/definitions/ChaosEvent", + "description": "Represents an event generated during a Chaos run." + } + } + }, + "ChaosEventKind": { + "type": "string", + "description": "The kind of Chaos event.", + "enum": [ + "Invalid", + "Started", + "ExecutingFaults", + "Waiting", + "ValidationFailed", + "TestError", + "Stopped" + ], + "x-ms-enum": { + "name": "ChaosEventKind", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates an invalid Chaos event kind. All Service Fabric enumerations have the invalid type." + }, + { + "value": "Started", + "description": "Indicates a Chaos event that gets generated when Chaos is started." + }, + { + "value": "ExecutingFaults", + "description": "Indicates a Chaos event that gets generated when Chaos has decided on the faults for an iteration. This Chaos event contains the details of the faults as a list of strings." + }, + { + "value": "Waiting", + "description": "Indicates a Chaos event that gets generated when Chaos is waiting for the cluster to become ready for faulting, for example, Chaos may be waiting for the on-going upgrade to finish." + }, + { + "value": "ValidationFailed", + "description": "Indicates a Chaos event that gets generated when the cluster entities do not become stable and healthy within ChaosParameters.MaxClusterStabilizationTimeoutInSeconds." + }, + { + "value": "TestError", + "description": "Indicates a Chaos event that gets generated when an unexpected event has occurred in the Chaos engine, for example, due to the cluster snapshot being inconsistent, while faulting a faultable entity Chaos found that the entity was already faulted." + }, + { + "value": "Stopped", + "description": "Indicates a Chaos event that gets generated when Chaos stops because either the user issued a stop or the time to run was up." + } + ] + } + }, + "ChaosEventsSegment": { + "description": "Contains the list of Chaos events and the continuation token to get the next segment.", + "properties": { + "ContinuationToken": { + "$ref": "#/definitions/ContinuationToken", + "description": "The continuation token parameter is used to obtain next set of results. The continuation token is included in the response of the API when the results from the system do not fit in a single response. When this value is passed to the next API call, the API returns next set of results. If there are no further results, then the continuation token is not included in the response." + }, + "History": { + "$ref": "#/definitions/ChaosEventHistory", + "description": "List of Chaos events that meet the user-supplied criteria." + } + } + }, + "ChaosScheduleDescription": { + "description": "Defines the Chaos Schedule used by Chaos and the version of the Chaos Schedule. The version value wraps back to 0 after surpassing 2,147,483,647.", + "properties": { + "Version": { + "description": "The version number of the Schedule.", + "type": "integer", + "format": "int32", + "minimum": 0 + }, + "Schedule": { + "$ref": "#/definitions/ChaosSchedule", + "description": "Defines the schedule used by Chaos." + } + } + }, + "ChaosSchedule": { + "description": "Defines the schedule used by Chaos.", + "properties": { + "StartDate": { + "type": "string", + "format": "date-time", + "description": "The date and time Chaos will start using this schedule.", + "default": "1601-01-01T00:00:00Z" + }, + "ExpiryDate": { + "type": "string", + "format": "date-time", + "description": "The date and time Chaos will continue to use this schedule until.", + "default": "9999-12-31T23:59:59.999Z" + }, + "ChaosParametersDictionary": { + "type": "array", + "description": "A mapping of string names to Chaos Parameters to be referenced by Chaos Schedule Jobs.", + "items": { + "$ref": "#/definitions/ChaosParametersDictionaryItem" + } + }, + "Jobs": { + "description": "A list of all Chaos Schedule Jobs that will be automated by the schedule.", + "type": "array", + "items": { + "$ref": "#/definitions/ChaosScheduleJob" + } + } + } + }, + "ChaosScheduleJob": { + "description": "Defines a repetition rule and parameters of Chaos to be used with the Chaos Schedule.", + "properties": { + "ChaosParameters": { + "type": "string", + "description": "A reference to which Chaos Parameters of the Chaos Schedule to use." + }, + "Days": { + "$ref": "#/definitions/ChaosScheduleJobActiveDaysOfWeek", + "description": "Defines the days of the week that a Chaos Schedule Job will run for." + }, + "Times": { + "description": "A list of Time Ranges that specify when during active days that this job will run. The times are interpreted as UTC.", + "type": "array", + "items": { + "$ref": "#/definitions/TimeRange" + } + } + } + }, + "ChaosScheduleJobActiveDaysOfWeek": { + "description": "Defines the days of the week that a Chaos Schedule Job will run for.", + "properties": { + "Sunday": { + "type": "boolean", + "description": "Indicates if the Chaos Schedule Job will run on Sunday", + "default": false + }, + "Monday": { + "type": "boolean", + "description": "Indicates if the Chaos Schedule Job will run on Monday", + "default": false + }, + "Tuesday": { + "type": "boolean", + "description": "Indicates if the Chaos Schedule Job will run on Tuesday", + "default": false + }, + "Wednesday": { + "type": "boolean", + "description": "Indicates if the Chaos Schedule Job will run on Wednesday", + "default": false + }, + "Thursday": { + "type": "boolean", + "description": "Indicates if the Chaos Schedule Job will run on Thursday", + "default": false + }, + "Friday": { + "type": "boolean", + "description": "Indicates if the Chaos Schedule Job will run on Friday", + "default": false + }, + "Saturday": { + "type": "boolean", + "description": "Indicates if the Chaos Schedule Job will run on Saturday", + "default": false + } + } + }, + "TimeRange": { + "description": "Defines a time range in a 24 hour day specified by a start and end time.", + "properties": { + "StartTime": { + "$ref": "#/definitions/TimeOfDay", + "description": "Defines an hour and minute of the day specified in 24 hour time." + }, + "EndTime": { + "$ref": "#/definitions/TimeOfDay", + "description": "Defines an hour and minute of the day specified in 24 hour time." + } + } + }, + "TimeOfDay": { + "description": "Defines an hour and minute of the day specified in 24 hour time.", + "properties": { + "Hour": { + "type": "integer", + "format": "int32", + "description": "Represents the hour of the day. Value must be between 0 and 23 inclusive.", + "minimum": 0, + "maximum": 23 + }, + "Minute": { + "type": "integer", + "format": "int32", + "description": "Represents the minute of the hour. Value must be between 0 to 59 inclusive.", + "minimum": 0, + "maximum": 59 + } + } + }, + "ExecutingFaultsChaosEvent": { + "description": "Describes a Chaos event that gets generated when Chaos has decided on the faults for an iteration. This Chaos event contains the details of the faults as a list of strings.", + "x-ms-discriminator-value": "ExecutingFaults", + "allOf": [ + { + "$ref": "#/definitions/ChaosEvent" + } + ], + "properties": { + "Faults": { + "type": "array", + "description": "List of string description of the faults that Chaos decided to execute in an iteration.", + "items": { + "type": "string" + } + } + } + }, + "StartedChaosEvent": { + "description": "Describes a Chaos event that gets generated when Chaos is started.", + "x-ms-discriminator-value": "Started", + "allOf": [ + { + "$ref": "#/definitions/ChaosEvent" + } + ], + "properties": { + "ChaosParameters": { + "$ref": "#/definitions/ChaosParameters", + "description": "Defines all the parameters to configure a Chaos run." + } + } + }, + "StoppedChaosEvent": { + "description": "Describes a Chaos event that gets generated when Chaos stops because either the user issued a stop or the time to run was up.", + "x-ms-discriminator-value": "Stopped", + "allOf": [ + { + "$ref": "#/definitions/ChaosEvent" + } + ], + "properties": { + "Reason": { + "type": "string", + "description": "Describes why Chaos stopped. Chaos can stop because of StopChaos API call or the timeToRun provided in ChaosParameters is over." + } + } + }, + "TestErrorChaosEvent": { + "description": "Describes a Chaos event that gets generated when an unexpected event occurs in the Chaos engine.\nFor example, due to the cluster snapshot being inconsistent, while faulting an entity, Chaos found that the entity was already faulted -- which would be an unexpected event.", + "x-ms-discriminator-value": "TestError", + "allOf": [ + { + "$ref": "#/definitions/ChaosEvent" + } + ], + "properties": { + "Reason": { + "type": "string", + "description": "Describes why TestErrorChaosEvent was generated. For example, Chaos tries to fault a partition but finds that the partition is no longer fault tolerant, then a TestErrorEvent gets generated with the reason stating that the partition is not fault tolerant." + } + } + }, + "ValidationFailedChaosEvent": { + "description": "Chaos event corresponding to a failure during validation.", + "x-ms-discriminator-value": "ValidationFailed", + "allOf": [ + { + "$ref": "#/definitions/ChaosEvent" + } + ], + "properties": { + "Reason": { + "type": "string", + "description": "Describes why the ValidationFailedChaosEvent was generated. This may happen because more than MaxPercentUnhealthyNodes are unhealthy for more than MaxClusterStabilizationTimeout. This reason will be in the Reason property of the ValidationFailedChaosEvent as a string." + } + } + }, + "WaitingChaosEvent": { + "description": "Describes a Chaos event that gets generated when Chaos is waiting for the cluster to become ready for faulting, for example, Chaos may be waiting for the on-going upgrade to finish.", + "x-ms-discriminator-value": "Waiting", + "allOf": [ + { + "$ref": "#/definitions/ChaosEvent" + } + ], + "properties": { + "Reason": { + "type": "string", + "description": "Describes why the WaitingChaosEvent was generated, for example, due to a cluster upgrade." + } + } + }, + "ChaosEventHistory": { + "type": "array", + "description": "An list of Chaos events that were generated during the time range passed into the GetChaosReport API call.", + "items": { + "$ref": "#/definitions/ChaosEventWrapper" + } + }, + "ChaosTargetFilter": { + "description": "Defines all filters for targeted Chaos faults, for example, faulting only certain node types or faulting only certain applications.\nIf ChaosTargetFilter is not used, Chaos faults all cluster entities. If ChaosTargetFilter is used, Chaos faults only the entities that meet the ChaosTargetFilter\nspecification. NodeTypeInclusionList and ApplicationInclusionList allow a union semantics only. It is not possible to specify an intersection\nof NodeTypeInclusionList and ApplicationInclusionList. For example, it is not possible to specify \"fault this application only when it is on that node type.\"\nOnce an entity is included in either NodeTypeInclusionList or ApplicationInclusionList, that entity cannot be excluded using ChaosTargetFilter. Even if\napplicationX does not appear in ApplicationInclusionList, in some Chaos iteration applicationX can be faulted because it happens to be on a node of nodeTypeY that is included\nin NodeTypeInclusionList. If both NodeTypeInclusionList and ApplicationInclusionList are null or empty, an ArgumentException is thrown.", + "properties": { + "NodeTypeInclusionList": { + "type": "array", + "description": "A list of node types to include in Chaos faults.\nAll types of faults (restart node, restart code package, remove replica, restart replica, move primary, and move secondary) are enabled for the nodes of these node types.\nIf a node type (say NodeTypeX) does not appear in the NodeTypeInclusionList, then node level faults (like NodeRestart) will never be enabled for the nodes of\nNodeTypeX, but code package and replica faults can still be enabled for NodeTypeX if an application in the ApplicationInclusionList.\nhappens to reside on a node of NodeTypeX.\nAt most 100 node type names can be included in this list, to increase this number, a config upgrade is required for MaxNumberOfNodeTypesInChaosEntityFilter configuration.", + "items": { + "$ref": "#/definitions/NodeType" + } + }, + "ApplicationInclusionList": { + "type": "array", + "description": "A list of application URIs to include in Chaos faults.\nAll replicas belonging to services of these applications are amenable to replica faults (restart replica, remove replica, move primary, and move secondary) by Chaos.\nChaos may restart a code package only if the code package hosts replicas of these applications only.\nIf an application does not appear in this list, it can still be faulted in some Chaos iteration if the application ends up on a node of a node type that is included in NodeTypeInclusionList.\nHowever, if applicationX is tied to nodeTypeY through placement constraints and applicationX is absent from ApplicationInclusionList and nodeTypeY is absent from NodeTypeInclusionList, then applicationX will never be faulted.\nAt most 1000 application names can be included in this list, to increase this number, a config upgrade is required for MaxNumberOfApplicationsInChaosEntityFilter configuration.", + "items": { + "$ref": "#/definitions/ApplicationName" + } + } + } + }, + "ApplicationTypeVersion": { + "type": "string", + "description": "The version of the application type as defined in the application manifest." + }, + "ApplicationCapacityDescription": { + "description": "Describes capacity information for services of this application. This description can be used for describing the following.\n- Reserving the capacity for the services on the nodes\n- Limiting the total number of nodes that services of this application can run on\n- Limiting the custom capacity metrics to limit the total consumption of this metric by the services of this application", + "properties": { + "MinimumNodes": { + "type": "integer", + "format": "int64", + "description": "The minimum number of nodes where Service Fabric will reserve capacity for this application. Note that this does not mean that the services of this application will be placed on all of those nodes. If this property is set to zero, no capacity will be reserved. The value of this property cannot be more than the value of the MaximumNodes property.", + "minimum": 0 + }, + "MaximumNodes": { + "type": "integer", + "format": "int64", + "description": "The maximum number of nodes where Service Fabric will reserve capacity for this application. Note that this does not mean that the services of this application will be placed on all of those nodes. By default, the value of this property is zero and it means that the services can be placed on any node.", + "minimum": 0, + "default": 0 + }, + "ApplicationMetrics": { + "$ref": "#/definitions/ApplicationMetricDescriptionList", + "description": "List of application capacity metric description." + } + } + }, + "ApplicationDescription": { + "description": "Describes a Service Fabric application.", + "properties": { + "Name": { + "$ref": "#/definitions/ApplicationName", + "description": "The name of the application, including the 'fabric:' URI scheme." + }, + "TypeName": { + "$ref": "#/definitions/ApplicationTypeName", + "description": "The application type name as defined in the application manifest." + }, + "TypeVersion": { + "$ref": "#/definitions/ApplicationTypeVersion", + "description": "The version of the application type as defined in the application manifest." + }, + "ParameterList": { + "$ref": "#/definitions/ApplicationParameterList", + "description": "List of application parameters with overridden values from their default values specified in the application manifest." + }, + "ApplicationCapacity": { + "$ref": "#/definitions/ApplicationCapacityDescription", + "description": "Describes capacity information for services of this application. This description can be used for describing the following.\n- Reserving the capacity for the services on the nodes\n- Limiting the total number of nodes that services of this application can run on\n- Limiting the custom capacity metrics to limit the total consumption of this metric by the services of this application" + }, + "ManagedApplicationIdentity": { + "$ref": "#/definitions/ManagedApplicationIdentityDescription", + "description": "Managed application identity description." + } + }, + "required": [ + "Name", + "TypeName", + "TypeVersion" + ] + }, + "ApplicationMetricDescription": { + "description": "Describes capacity information for a custom resource balancing metric. This can be used to limit the total consumption of this metric by the services of this application.", + "properties": { + "Name": { + "type": "string", + "description": "The name of the metric." + }, + "MaximumCapacity": { + "type": "integer", + "format": "int64", + "description": "The maximum node capacity for Service Fabric application.\nThis is the maximum Load for an instance of this application on a single node. Even if the capacity of node is greater than this value, Service Fabric will limit the total load of services within the application on each node to this value.\nIf set to zero, capacity for this metric is unlimited on each node.\nWhen creating a new application with application capacity defined, the product of MaximumNodes and this value must always be smaller than or equal to TotalApplicationCapacity.\nWhen updating existing application with application capacity, the product of MaximumNodes and this value must always be smaller than or equal to TotalApplicationCapacity." + }, + "ReservationCapacity": { + "type": "integer", + "format": "int64", + "description": "The node reservation capacity for Service Fabric application.\nThis is the amount of load which is reserved on nodes which have instances of this application.\nIf MinimumNodes is specified, then the product of these values will be the capacity reserved in the cluster for the application.\nIf set to zero, no capacity is reserved for this metric.\nWhen setting application capacity or when updating application capacity; this value must be smaller than or equal to MaximumCapacity for each metric." + }, + "TotalApplicationCapacity": { + "description": "The total metric capacity for Service Fabric application.\nThis is the total metric capacity for this application in the cluster. Service Fabric will try to limit the sum of loads of services within the application to this value.\nWhen creating a new application with application capacity defined, the product of MaximumNodes and MaximumCapacity must always be smaller than or equal to this value.", + "type": "integer", + "format": "int64" + } + } + }, + "ApplicationMetricDescriptionList": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationMetricDescription" + }, + "description": "List of application capacity metric description." + }, + "ApplicationLoadMetricInformation": { + "description": "Describes load information for a custom resource balancing metric. This can be used to limit the total consumption of this metric by the services of this application.", + "properties": { + "Name": { + "type": "string", + "description": "The name of the metric." + }, + "ReservationCapacity": { + "type": "integer", + "format": "int64", + "description": "This is the capacity reserved in the cluster for the application.\nIt's the product of NodeReservationCapacity and MinimumNodes.\nIf set to zero, no capacity is reserved for this metric.\nWhen setting application capacity or when updating application capacity this value must be smaller than or equal to MaximumCapacity for each metric." + }, + "ApplicationCapacity": { + "type": "integer", + "format": "int64", + "description": "Total capacity for this metric in this application instance." + }, + "ApplicationLoad": { + "type": "integer", + "format": "int64", + "description": "Current load for this metric in this application instance." + } + } + }, + "ApplicationLoadMetricInformationList": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationLoadMetricInformation" + }, + "description": "List of application load metric information." + }, + "ComposeDeploymentStatus": { + "type": "string", + "description": "The status of the compose deployment.", + "enum": [ + "Invalid", + "Provisioning", + "Creating", + "Ready", + "Unprovisioning", + "Deleting", + "Failed", + "Upgrading" + ], + "x-ms-enum": { + "name": "ComposeDeploymentStatus", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates that the compose deployment status is invalid. The value is zero." + }, + { + "value": "Provisioning", + "description": "Indicates that the compose deployment is being provisioned in background. The value is 1." + }, + { + "value": "Creating", + "description": "Indicates that the compose deployment is being created in background. The value is 2." + }, + { + "value": "Ready", + "description": "Indicates that the compose deployment has been successfully created or upgraded. The value is 3." + }, + { + "value": "Unprovisioning", + "description": "Indicates that the compose deployment is being unprovisioned in background. The value is 4." + }, + { + "value": "Deleting", + "description": "Indicates that the compose deployment is being deleted in background. The value is 5." + }, + { + "value": "Failed", + "description": "Indicates that the compose deployment was terminated due to persistent failures. The value is 6." + }, + { + "value": "Upgrading", + "description": "Indicates that the compose deployment is being upgraded in the background. The value is 7." + } + ] + } + }, + "ComposeDeploymentStatusInfo": { + "description": "Information about a Service Fabric compose deployment.", + "properties": { + "Name": { + "$ref": "#/definitions/DeploymentName", + "description": "The name of the deployment." + }, + "ApplicationName": { + "$ref": "#/definitions/ApplicationName", + "description": "The name of the application, including the 'fabric:' URI scheme." + }, + "Status": { + "$ref": "#/definitions/ComposeDeploymentStatus", + "description": "The status of the compose deployment." + }, + "StatusDetails": { + "description": "The status details of compose deployment including failure message.", + "type": "string" + } + } + }, + "ComposeDeploymentUpgradeDescription": { + "description": "Describes the parameters for a compose deployment upgrade.", + "properties": { + "DeploymentName": { + "$ref": "#/definitions/DeploymentName", + "description": "The name of the deployment." + }, + "ComposeFileContent": { + "type": "string", + "description": "The content of the compose file that describes the deployment to create." + }, + "RegistryCredential": { + "$ref": "#/definitions/RegistryCredential", + "description": "Credential information to connect to container registry." + }, + "UpgradeKind": { + "$ref": "#/definitions/UpgradeKind", + "description": "The kind of upgrade out of the following possible values." + }, + "RollingUpgradeMode": { + "$ref": "#/definitions/UpgradeMode", + "description": "The mode used to monitor health during a rolling upgrade. The values are UnmonitoredAuto, UnmonitoredManual, and Monitored." + }, + "UpgradeReplicaSetCheckTimeoutInSeconds": { + "$ref": "#/definitions/UpgradeReplicaSetCheckTimeout", + "description": "The maximum amount of time to block processing of an upgrade domain and prevent loss of availability when there are unexpected issues. When this timeout expires, processing of the upgrade domain will proceed regardless of availability loss issues. The timeout is reset at the start of each upgrade domain. Valid values are between 0 and 42949672925 inclusive. (unsigned 32-bit integer)." + }, + "ForceRestart": { + "$ref": "#/definitions/ForceRestart", + "description": "If true, then processes are forcefully restarted during upgrade even when the code version has not changed (the upgrade only changes configuration or data)." + }, + "MonitoringPolicy": { + "$ref": "#/definitions/MonitoringPolicyDescription", + "description": "Describes the parameters for monitoring an upgrade in Monitored mode." + }, + "ApplicationHealthPolicy": { + "$ref": "#/definitions/ApplicationHealthPolicy", + "description": "Defines a health policy used to evaluate the health of an application or one of its children entities." + } + }, + "required": [ + "DeploymentName", + "ComposeFileContent", + "UpgradeKind" + ] + }, + "ComposeDeploymentUpgradeProgressInfo": { + "description": "Describes the parameters for a compose deployment upgrade.", + "properties": { + "DeploymentName": { + "$ref": "#/definitions/TargetDeploymentName", + "description": "The name of the target deployment." + }, + "ApplicationName": { + "$ref": "#/definitions/TargetApplicationName", + "description": "The name of the target application, including the 'fabric:' URI scheme." + }, + "UpgradeState": { + "$ref": "#/definitions/ComposeDeploymentUpgradeState", + "description": "The state of the compose deployment upgrade." + }, + "UpgradeStatusDetails": { + "type": "string", + "description": "Additional detailed information about the status of the pending upgrade." + }, + "UpgradeKind": { + "$ref": "#/definitions/UpgradeKind", + "description": "The kind of upgrade out of the following possible values." + }, + "RollingUpgradeMode": { + "$ref": "#/definitions/UpgradeMode", + "description": "The mode used to monitor health during a rolling upgrade. The values are UnmonitoredAuto, UnmonitoredManual, and Monitored." + }, + "ForceRestart": { + "$ref": "#/definitions/ForceRestart", + "description": "If true, then processes are forcefully restarted during upgrade even when the code version has not changed (the upgrade only changes configuration or data)." + }, + "UpgradeReplicaSetCheckTimeoutInSeconds": { + "$ref": "#/definitions/UpgradeReplicaSetCheckTimeout", + "description": "The maximum amount of time to block processing of an upgrade domain and prevent loss of availability when there are unexpected issues. When this timeout expires, processing of the upgrade domain will proceed regardless of availability loss issues. The timeout is reset at the start of each upgrade domain. Valid values are between 0 and 42949672925 inclusive. (unsigned 32-bit integer)." + }, + "MonitoringPolicy": { + "$ref": "#/definitions/MonitoringPolicyDescription", + "description": "Describes the parameters for monitoring an upgrade in Monitored mode." + }, + "ApplicationHealthPolicy": { + "$ref": "#/definitions/ApplicationHealthPolicy", + "description": "Defines a health policy used to evaluate the health of an application or one of its children entities." + }, + "TargetApplicationTypeVersion": { + "$ref": "#/definitions/TargetApplicationTypeVersion", + "description": "The target application type version (found in the application manifest) for the application upgrade." + }, + "UpgradeDuration": { + "$ref": "#/definitions/UpgradeDuration", + "description": "The estimated amount of time that the overall upgrade elapsed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + }, + "CurrentUpgradeDomainDuration": { + "$ref": "#/definitions/CurrentUpgradeDomainDuration", + "description": "The estimated amount of time spent processing current Upgrade Domain. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + }, + "ApplicationUnhealthyEvaluations": { + "$ref": "#/definitions/ApplicationUnhealthyEvaluations", + "description": "List of health evaluations that resulted in the current aggregated health state." + }, + "CurrentUpgradeDomainProgress": { + "$ref": "#/definitions/CurrentUpgradeDomainProgressInfo", + "description": "Information about the current in-progress upgrade domain." + }, + "StartTimestampUtc": { + "type": "string", + "description": "The estimated UTC datetime when the upgrade started." + }, + "FailureTimestampUtc": { + "type": "string", + "description": "The estimated UTC datetime when the upgrade failed and FailureAction was executed." + }, + "FailureReason": { + "$ref": "#/definitions/FailureReason", + "description": "The cause of an upgrade failure that resulted in FailureAction being executed." + }, + "UpgradeDomainProgressAtFailure": { + "$ref": "#/definitions/FailureUpgradeDomainProgressInfo", + "description": "Information about the upgrade domain progress at the time of upgrade failure." + }, + "ApplicationUpgradeStatusDetails": { + "type": "string", + "description": "Additional details of application upgrade including failure message." + } + } + }, + "ComposeDeploymentUpgradeState": { + "type": "string", + "description": "The state of the compose deployment upgrade.", + "enum": [ + "Invalid", + "ProvisioningTarget", + "RollingForwardInProgress", + "RollingForwardPending", + "UnprovisioningCurrent", + "RollingForwardCompleted", + "RollingBackInProgress", + "UnprovisioningTarget", + "RollingBackCompleted", + "Failed" + ], + "x-ms-enum": { + "name": "ComposeDeploymentUpgradeState", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the upgrade state is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "ProvisioningTarget", + "description": "The upgrade is in the progress of provisioning target application type version. The value is 1." + }, + { + "value": "RollingForwardInProgress", + "description": "The upgrade is rolling forward to the target version but is not complete yet. The value is 2." + }, + { + "value": "RollingForwardPending", + "description": "The current upgrade domain has finished upgrading. The overall upgrade is waiting for an explicit move next request in UnmonitoredManual mode or performing health checks in Monitored mode. The value is 3" + }, + { + "value": "UnprovisioningCurrent", + "description": "The upgrade is in the progress of unprovisioning current application type version and rolling forward to the target version is completed. The value is 4." + }, + { + "value": "RollingForwardCompleted", + "description": "The upgrade has finished rolling forward. The value is 5." + }, + { + "value": "RollingBackInProgress", + "description": "The upgrade is rolling back to the previous version but is not complete yet. The value is 6." + }, + { + "value": "UnprovisioningTarget", + "description": "The upgrade is in the progress of unprovisioning target application type version and rolling back to the current version is completed. The value is 7." + }, + { + "value": "RollingBackCompleted", + "description": "The upgrade has finished rolling back. The value is 8." + }, + { + "value": "Failed", + "description": "The upgrade has failed and is unable to execute FailureAction. The value is 9." + } + ] + } + }, + "PagedComposeDeploymentStatusInfoList": { + "description": "The list of compose deployments in the cluster. The list is paged when all of the results cannot fit in a single message. The next set of results can be obtained by executing the same query with the continuation token provided in this list.", + "properties": { + "ContinuationToken": { + "$ref": "#/definitions/ContinuationToken", + "description": "The continuation token parameter is used to obtain next set of results. The continuation token is included in the response of the API when the results from the system do not fit in a single response. When this value is passed to the next API call, the API returns next set of results. If there are no further results, then the continuation token is not included in the response." + }, + "Items": { + "type": "array", + "description": "List of compose deployment status information.", + "items": { + "$ref": "#/definitions/ComposeDeploymentStatusInfo" + } + } + } + }, + "CreateComposeDeploymentDescription": { + "description": "Defines description for creating a Service Fabric compose deployment.", + "properties": { + "DeploymentName": { + "$ref": "#/definitions/DeploymentName", + "description": "The name of the deployment." + }, + "ComposeFileContent": { + "type": "string", + "description": "The content of the compose file that describes the deployment to create." + }, + "RegistryCredential": { + "$ref": "#/definitions/RegistryCredential", + "description": "Credential information to connect to container registry." + } + }, + "required": [ + "DeploymentName", + "ComposeFileContent" + ] + }, + "RegistryCredential": { + "description": "Credential information to connect to container registry.", + "properties": { + "RegistryUserName": { + "type": "string", + "description": "The user name to connect to container registry." + }, + "RegistryPassword": { + "type": "string", + "description": "The password for supplied username to connect to container registry." + }, + "PasswordEncrypted": { + "type": "boolean", + "description": "Indicates that supplied container registry password is encrypted." + } + } + }, + "DeployedServicePackageInfoList": { + "type": "array", + "items": { + "$ref": "#/definitions/DeployedServicePackageInfo" + }, + "description": "List of deployed service package information." + }, + "DeployedServicePackageInfo": { + "description": "Information about service package deployed on a Service Fabric node.", + "properties": { + "Name": { + "$ref": "#/definitions/ServiceManifestName", + "description": "The name of the service package as specified in the service manifest." + }, + "Version": { + "type": "string", + "description": "The version of the service package specified in service manifest." + }, + "Status": { + "$ref": "#/definitions/DeploymentStatus", + "description": "Specifies the status of a deployed application or service package on a Service Fabric node." + }, + "ServicePackageActivationId": { + "$ref": "#/definitions/ServicePackageActivationId", + "description": "The ActivationId of a deployed service package. If ServicePackageActivationMode specified at the time of creating the service\nis 'SharedProcess' (or if it is not specified, in which case it defaults to 'SharedProcess'), then value of ServicePackageActivationId\nis always an empty string." + } + } + }, + "DeploymentName": { + "type": "string", + "description": "The name of the deployment." + }, + "CorrelationSchemeList": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceCorrelationDescription" + }, + "description": "A list that describes the correlation of the service with other services." + }, + "MoveCost": { + "type": "string", + "description": "Specifies the move cost for the service.", + "enum": [ + "Zero", + "Low", + "Medium", + "High", + "VeryHigh" + ], + "x-ms-enum": { + "name": "MoveCost", + "modelAsString": true, + "values": [ + { + "value": "Zero", + "description": "Zero move cost. This value is zero." + }, + { + "value": "Low", + "description": "Specifies the move cost of the service as Low. The value is 1." + }, + { + "value": "Medium", + "description": "Specifies the move cost of the service as Medium. The value is 2." + }, + { + "value": "High", + "description": "Specifies the move cost of the service as High. The value is 3." + }, + { + "value": "VeryHigh", + "description": "Specifies the move cost of the service as VeryHigh. The value is 4." + } + ] + } + }, + "PartitionScheme": { + "type": "string", + "description": "Enumerates the ways that a service can be partitioned.", + "enum": [ + "Invalid", + "Singleton", + "UniformInt64Range", + "Named" + ], + "x-ms-enum": { + "name": "PartitionScheme", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the partition kind is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "Singleton", + "description": "Indicates that the partition is based on string names, and is a SingletonPartitionSchemeDescription object, The value is 1." + }, + { + "value": "UniformInt64Range", + "description": "Indicates that the partition is based on Int64 key ranges, and is a UniformInt64RangePartitionSchemeDescription object. The value is 2." + }, + { + "value": "Named", + "description": "Indicates that the partition is based on string names, and is a NamedPartitionSchemeDescription object. The value is 3" + } + ] + } + }, + "ServiceCorrelationDescription": { + "description": "Creates a particular correlation between services.", + "required": [ + "Scheme", + "ServiceName" + ], + "properties": { + "Scheme": { + "$ref": "#/definitions/ServiceCorrelationScheme", + "description": "The ServiceCorrelationScheme which describes the relationship between this service and the service specified via ServiceName." + }, + "ServiceName": { + "$ref": "#/definitions/ServiceName", + "description": "The name of the service that the correlation relationship is established with." + } + } + }, + "ServiceCorrelationScheme": { + "type": "string", + "description": "The service correlation scheme.", + "enum": [ + "Invalid", + "Affinity", + "AlignedAffinity", + "NonAlignedAffinity" + ], + "x-ms-enum": { + "name": "ServiceCorrelationScheme", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "An invalid correlation scheme. Cannot be used. The value is zero." + }, + { + "value": "Affinity", + "description": "Indicates that this service has an affinity relationship with another service. Provided for backwards compatibility, consider preferring the Aligned or NonAlignedAffinity options. The value is 1." + }, + { + "value": "AlignedAffinity", + "description": "Aligned affinity ensures that the primaries of the partitions of the affinitized services are collocated on the same nodes. This is the default and is the same as selecting the Affinity scheme. The value is 2." + }, + { + "value": "NonAlignedAffinity", + "description": "Non-Aligned affinity guarantees that all replicas of each service will be placed on the same nodes. Unlike Aligned Affinity, this does not guarantee that replicas of particular role will be collocated. The value is 3." + } + ] + } + }, + "ServiceLoadMetricsList": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceLoadMetricDescription" + }, + "description": "The service load metrics is given as an array of ServiceLoadMetricDescription objects." + }, + "ServiceLoadMetricDescription": { + "description": "Specifies a metric to load balance a service during runtime.", + "required": [ + "Name" + ], + "properties": { + "Name": { + "type": "string", + "description": "The name of the metric. If the service chooses to report load during runtime, the load metric name should match the name that is specified in Name exactly. Note that metric names are case-sensitive." + }, + "Weight": { + "$ref": "#/definitions/ServiceLoadMetricWeight", + "description": "The service load metric relative weight, compared to other metrics configured for this service, as a number." + }, + "PrimaryDefaultLoad": { + "type": "integer", + "description": "Used only for Stateful services. The default amount of load, as a number, that this service creates for this metric when it is a Primary replica." + }, + "SecondaryDefaultLoad": { + "type": "integer", + "description": "Used only for Stateful services. The default amount of load, as a number, that this service creates for this metric when it is a Secondary replica." + }, + "DefaultLoad": { + "type": "integer", + "description": "Used only for Stateless services. The default amount of load, as a number, that this service creates for this metric." + } + } + }, + "ServiceLoadMetricWeight": { + "type": "string", + "description": "Determines the metric weight relative to the other metrics that are configured for this service. During runtime, if two metrics end up in conflict, the Cluster Resource Manager prefers the metric with the higher weight.", + "enum": [ + "Zero", + "Low", + "Medium", + "High" + ], + "x-ms-enum": { + "name": "ServiceLoadMetricWeight", + "modelAsString": true, + "values": [ + { + "value": "Zero", + "description": "Disables resource balancing for this metric. This value is zero." + }, + { + "value": "Low", + "description": "Specifies the metric weight of the service load as Low. The value is 1." + }, + { + "value": "Medium", + "description": "Specifies the metric weight of the service load as Medium. The value is 2." + }, + { + "value": "High", + "description": "Specifies the metric weight of the service load as High. The value is 3." + } + ] + } + }, + "ServicePackageActivationMode": { + "type": "string", + "description": "The activation mode of service package to be used for a Service Fabric service. This is specified at the time of creating the Service.", + "enum": [ + "SharedProcess", + "ExclusiveProcess" + ], + "x-ms-enum": { + "name": "ServicePackageActivationMode", + "modelAsString": true, + "values": [ + { + "value": "SharedProcess", + "description": "This is the default activation mode. With this activation mode, replicas or instances from different partition(s) of service, on a given node, will share same activation of service package on a node. The value is zero." + }, + { + "value": "ExclusiveProcess", + "description": "With this activation mode, each replica or instance of service, on a given node, will have its own dedicated activation of service package on a node. The value is 1." + } + ] + } + }, + "ServicePlacementPoliciesList": { + "type": "array", + "items": { + "$ref": "#/definitions/ServicePlacementPolicyDescription" + }, + "description": "A list that describes the correlation of the service with other services." + }, + "PartitionSchemeDescription": { + "discriminator": "PartitionScheme", + "description": "Describes how the service is partitioned.", + "required": [ + "PartitionScheme" + ], + "properties": { + "PartitionScheme": { + "$ref": "#/definitions/PartitionScheme", + "description": "Specifies how the service is partitioned." + } + } + }, + "NamedPartitionSchemeDescription": { + "description": "Describes the named partition scheme of the service.", + "allOf": [ + { + "$ref": "#/definitions/PartitionSchemeDescription" + } + ], + "x-ms-discriminator-value": "Named", + "required": [ + "Count", + "Names" + ], + "properties": { + "Count": { + "type": "integer", + "description": "The number of partitions." + }, + "Names": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Array of size specified by the ‘Count’ parameter, for the names of the partitions." + } + } + }, + "SingletonPartitionSchemeDescription": { + "description": "Describes the partition scheme of a singleton-partitioned, or non-partitioned service.", + "allOf": [ + { + "$ref": "#/definitions/PartitionSchemeDescription" + } + ], + "x-ms-discriminator-value": "Singleton" + }, + "UniformInt64RangePartitionSchemeDescription": { + "description": "Describes a partitioning scheme where an integer range is allocated evenly across a number of partitions.", + "allOf": [ + { + "$ref": "#/definitions/PartitionSchemeDescription" + } + ], + "x-ms-discriminator-value": "UniformInt64Range", + "required": [ + "Count", + "LowKey", + "HighKey" + ], + "properties": { + "Count": { + "type": "integer", + "description": "The number of partitions." + }, + "LowKey": { + "type": "string", + "description": "String indicating the lower bound of the partition key range that\nshould be split between the partitions." + }, + "HighKey": { + "type": "string", + "description": "String indicating the upper bound of the partition key range that\nshould be split between the partitions." + } + } + }, + "ServiceDescription": { + "discriminator": "ServiceKind", + "description": "A ServiceDescription contains all of the information necessary to create a service.", + "required": [ + "ServiceKind", + "ServiceName", + "ServiceTypeName", + "PartitionDescription" + ], + "properties": { + "ServiceKind": { + "$ref": "#/definitions/ServiceKind", + "description": "The service kind." + }, + "ApplicationName": { + "$ref": "#/definitions/ApplicationName", + "description": "The name of the application, including the 'fabric:' URI scheme." + }, + "ServiceName": { + "$ref": "#/definitions/ServiceName", + "description": "The full name of the service with 'fabric:' URI scheme." + }, + "ServiceTypeName": { + "$ref": "#/definitions/ServiceTypeName", + "description": "Name of the service type as specified in the service manifest." + }, + "InitializationData": { + "$ref": "#/definitions/ByteArray", + "description": "The initialization data as an array of bytes. Initialization data is passed to service instances or replicas when they are created." + }, + "PartitionDescription": { + "$ref": "#/definitions/PartitionSchemeDescription", + "description": "The partition description as an object." + }, + "PlacementConstraints": { + "type": "string", + "description": "The placement constraints as a string. Placement constraints are boolean expressions on node properties and allow for restricting a service to particular nodes based on the service requirements. For example, to place a service on nodes where NodeType is blue specify the following: \"NodeColor == blue)\"." + }, + "CorrelationScheme": { + "$ref": "#/definitions/CorrelationSchemeList", + "description": "The correlation scheme." + }, + "ServiceLoadMetrics": { + "$ref": "#/definitions/ServiceLoadMetricsList", + "description": "The service load metrics." + }, + "ServicePlacementPolicies": { + "$ref": "#/definitions/ServicePlacementPoliciesList", + "description": "The service placement policies." + }, + "DefaultMoveCost": { + "$ref": "#/definitions/MoveCost", + "description": "The move cost for the service." + }, + "IsDefaultMoveCostSpecified": { + "type": "boolean", + "description": "Indicates if the DefaultMoveCost property is specified." + }, + "ServicePackageActivationMode": { + "$ref": "#/definitions/ServicePackageActivationMode", + "description": "The activation mode of service package to be used for a service." + }, + "ServiceDnsName": { + "type": "string", + "description": "The DNS name of the service. It requires the DNS system service to be enabled in Service Fabric cluster." + }, + "ScalingPolicies": { + "$ref": "#/definitions/ScalingPolicyDescriptionList", + "description": "Scaling policies for this service." + }, + "TagsRequiredToPlace": { + "$ref": "#/definitions/NodeTagsDescription", + "description": "Tags for placement of this service." + }, + "TagsRequiredToRun": { + "$ref": "#/definitions/NodeTagsDescription", + "description": "Tags for running of this service." + } + } + }, + "StatefulServiceDescription": { + "description": "Describes a stateful service.", + "allOf": [ + { + "$ref": "#/definitions/ServiceDescription" + } + ], + "x-ms-discriminator-value": "Stateful", + "required": [ + "TargetReplicaSetSize", + "MinReplicaSetSize", + "HasPersistedState" + ], + "properties": { + "TargetReplicaSetSize": { + "type": "integer", + "minimum": 1, + "description": "The target replica set size as a number." + }, + "MinReplicaSetSize": { + "type": "integer", + "minimum": 1, + "description": "The minimum replica set size as a number." + }, + "HasPersistedState": { + "type": "boolean", + "description": "A flag indicating whether this is a persistent service which stores states on the local disk. If it is then the value of this property is true, if not it is false." + }, + "Flags": { + "type": "integer", + "description": "Flags indicating whether other properties are set. Each of the associated properties corresponds to a flag, specified below, which, if set, indicate that the property is specified.\nThis property can be a combination of those flags obtained using bitwise 'OR' operator.\nFor example, if the provided value is 6 then the flags for QuorumLossWaitDuration (2) and StandByReplicaKeepDuration(4) are set.\n\n- None - Does not indicate any other properties are set. The value is zero.\n- ReplicaRestartWaitDuration - Indicates the ReplicaRestartWaitDuration property is set. The value is 1.\n- QuorumLossWaitDuration - Indicates the QuorumLossWaitDuration property is set. The value is 2.\n- StandByReplicaKeepDuration - Indicates the StandByReplicaKeepDuration property is set. The value is 4.\n- ServicePlacementTimeLimit - Indicates the ServicePlacementTimeLimit property is set. The value is 8.\n- DropSourceReplicaOnMove - Indicates the DropSourceReplicaOnMove property is set. The value is 16." + }, + "ReplicaRestartWaitDurationSeconds": { + "type": "integer", + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "description": "The duration, in seconds, between when a replica goes down and when a new replica is created." + }, + "QuorumLossWaitDurationSeconds": { + "type": "integer", + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "description": "The maximum duration, in seconds, for which a partition is allowed to be in a state of quorum loss." + }, + "StandByReplicaKeepDurationSeconds": { + "type": "integer", + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "description": "The definition on how long StandBy replicas should be maintained before being removed." + }, + "ServicePlacementTimeLimitSeconds": { + "type": "integer", + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "description": "The duration for which replicas can stay InBuild before reporting that build is stuck." + }, + "DropSourceReplicaOnMove": { + "type": "boolean", + "description": "Indicates whether to drop source Secondary replica even if the target replica has not finished build. If desired behavior is to drop it as soon as possible the value of this property is true, if not it is false." + }, + "ReplicaLifecycleDescription": { + "$ref": "#/definitions/ReplicaLifecycleDescription", + "description": "Defines how replicas of this service will behave during their lifecycle." + } + } + }, + "StatelessServiceDescription": { + "description": "Describes a stateless service.", + "allOf": [ + { + "$ref": "#/definitions/ServiceDescription" + } + ], + "x-ms-discriminator-value": "Stateless", + "required": [ + "InstanceCount" + ], + "properties": { + "InstanceCount": { + "type": "integer", + "minimum": -1, + "description": "The instance count." + }, + "MinInstanceCount": { + "$ref": "#/definitions/MinInstanceCount", + "description": "MinInstanceCount is the minimum number of instances that must be up to meet the EnsureAvailability safety check during operations like upgrade or deactivate node.\nThe actual number that is used is max( MinInstanceCount, ceil( MinInstancePercentage/100.0 * InstanceCount) ).\nNote, if InstanceCount is set to -1, during MinInstanceCount computation -1 is first converted into the number of nodes on which the instances are allowed to be placed according to the placement constraints on the service." + }, + "MinInstancePercentage": { + "$ref": "#/definitions/MinInstancePercentage", + "description": "MinInstancePercentage is the minimum percentage of InstanceCount that must be up to meet the EnsureAvailability safety check during operations like upgrade or deactivate node.\nThe actual number that is used is max( MinInstanceCount, ceil( MinInstancePercentage/100.0 * InstanceCount) ).\nNote, if InstanceCount is set to -1, during MinInstancePercentage computation, -1 is first converted into the number of nodes on which the instances are allowed to be placed according to the placement constraints on the service." + }, + "Flags": { + "type": "integer", + "description": "Flags indicating whether other properties are set. Each of the associated properties corresponds to a flag, specified below, which, if set, indicate that the property is specified.\nThis property can be a combination of those flags obtained using bitwise 'OR' operator.\nFor example, if the provided value is 1 then the flags for InstanceCloseDelayDuration is set.\n\n- None - Does not indicate any other properties are set. The value is zero.\n- InstanceCloseDelayDuration - Indicates the InstanceCloseDelayDuration property is set. The value is 1.\n- InstanceRestartWaitDuration - Indicates the InstanceRestartWaitDurationSeconds property is set. The value is 2." + }, + "InstanceCloseDelayDurationSeconds": { + "type": "integer", + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "description": "Duration in seconds, to wait before a stateless instance is closed, to allow the active requests to drain gracefully. This would be effective when the instance is closing during the application/cluster upgrade and disabling node.\nThe endpoint exposed on this instance is removed prior to starting the delay, which prevents new connections to this instance.\nIn addition, clients that have subscribed to service endpoint change events(https://docs.microsoft.com/dotnet/api/system.fabric.fabricclient.servicemanagementclient.registerservicenotificationfilterasync), can do\nthe following upon receiving the endpoint removal notification:\n - Stop sending new requests to this instance.\n - Close existing connections after in-flight requests have completed.\n - Connect to a different instance of the service partition for future requests.\nNote, the default value of InstanceCloseDelayDuration is 0, which indicates that there won't be any delay or removal of the endpoint prior to closing the instance." + }, + "InstanceLifecycleDescription": { + "$ref": "#/definitions/InstanceLifecycleDescription", + "description": "Defines how instances of this service will behave during their lifecycle." + }, + "InstanceRestartWaitDurationSeconds": { + "type": "integer", + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "description": "When a stateless instance goes down, this timer starts. When it expires Service Fabric will create a new instance on any node in the cluster. \nThis configuration is to reduce unnecessary creation of a new instance in situations where the instance going down is likely to recover in a short time. For example, during an upgrade.\nThe default value is 0, which indicates that when stateless instance goes down, Service Fabric will immediately start building its replacement." + } + } + }, + "ReplicatorQueueStatus": { + "description": "Provides various statistics of the queue used in the service fabric replicator.\nContains information about the service fabric replicator like the replication/copy queue utilization, last acknowledgement received timestamp, etc.\nDepending on the role of the replicator, the properties in this type imply different meanings.", + "properties": { + "QueueUtilizationPercentage": { + "type": "integer", + "format": "int32", + "description": "Represents the utilization of the queue. A value of 0 indicates that the queue is empty and a value of 100 indicates the queue is full." + }, + "QueueMemorySize": { + "type": "string", + "description": "Represents the virtual memory consumed by the queue in bytes." + }, + "FirstSequenceNumber": { + "type": "string", + "description": "On a primary replicator, this is semantically the sequence number of the operation for which all the secondary replicas have sent an acknowledgement.\nOn a secondary replicator, this is the smallest sequence number of the operation that is present in the queue." + }, + "CompletedSequenceNumber": { + "type": "string", + "description": "On a primary replicator, this is semantically the highest sequence number of the operation for which all the secondary replicas have sent an acknowledgement.\nOn a secondary replicator, this is semantically the highest sequence number that has been applied to the persistent state." + }, + "CommittedSequenceNumber": { + "type": "string", + "description": "On a primary replicator, this is semantically the highest sequence number of the operation for which a write quorum of the secondary replicas have sent an acknowledgement.\nOn a secondary replicator, this is semantically the highest sequence number of the in-order operation received from the primary." + }, + "LastSequenceNumber": { + "type": "string", + "description": "Represents the latest sequence number of the operation that is available in the queue." + } + } + }, + "ReplicatorStatus": { + "discriminator": "Kind", + "description": "Represents a base class for primary or secondary replicator status.\nContains information about the service fabric replicator like the replication/copy queue utilization, last acknowledgement received timestamp, etc.", + "required": [ + "Kind" + ], + "properties": { + "Kind": { + "$ref": "#/definitions/ReplicaRole", + "description": "The role of a replica of a stateful service." + } + } + }, + "PrimaryReplicatorStatus": { + "x-ms-discriminator-value": "Primary", + "description": "Provides statistics about the Service Fabric Replicator, when it is functioning in a Primary role.", + "allOf": [ + { + "$ref": "#/definitions/ReplicatorStatus" + } + ], + "properties": { + "ReplicationQueueStatus": { + "$ref": "#/definitions/ReplicatorQueueStatus", + "description": "Details about the replication queue on the primary replicator." + }, + "RemoteReplicators": { + "$ref": "#/definitions/RemoteReplicatorStatusList", + "description": "The status of all the active and idle secondary replicators that the primary is aware of." + } + } + }, + "SecondaryReplicatorStatus": { + "description": "Provides statistics about the Service Fabric Replicator, when it is functioning in a ActiveSecondary role.", + "allOf": [ + { + "$ref": "#/definitions/ReplicatorStatus" + } + ], + "properties": { + "ReplicationQueueStatus": { + "$ref": "#/definitions/ReplicatorQueueStatus", + "description": "Details about the replication queue on the secondary replicator." + }, + "LastReplicationOperationReceivedTimeUtc": { + "type": "string", + "format": "date-time", + "description": "The last time-stamp (UTC) at which a replication operation was received from the primary.\nUTC 0 represents an invalid value, indicating that a replication operation message was never received." + }, + "IsInBuild": { + "type": "boolean", + "description": "Value that indicates whether the replica is currently being built." + }, + "CopyQueueStatus": { + "$ref": "#/definitions/ReplicatorQueueStatus", + "description": "Details about the copy queue on the secondary replicator." + }, + "LastCopyOperationReceivedTimeUtc": { + "type": "string", + "format": "date-time", + "description": "The last time-stamp (UTC) at which a copy operation was received from the primary.\nUTC 0 represents an invalid value, indicating that a copy operation message was never received." + }, + "LastAcknowledgementSentTimeUtc": { + "type": "string", + "format": "date-time", + "description": "The last time-stamp (UTC) at which an acknowledgment was sent to the primary replicator.\nUTC 0 represents an invalid value, indicating that an acknowledgment message was never sent." + } + } + }, + "SecondaryActiveReplicatorStatus": { + "x-ms-discriminator-value": "ActiveSecondary", + "description": "Status of the secondary replicator when it is in active mode and is part of the replica set.", + "allOf": [ + { + "$ref": "#/definitions/SecondaryReplicatorStatus" + } + ] + }, + "SecondaryIdleReplicatorStatus": { + "x-ms-discriminator-value": "IdleSecondary", + "description": "Status of the secondary replicator when it is in idle mode and is being built by the primary.", + "allOf": [ + { + "$ref": "#/definitions/SecondaryReplicatorStatus" + } + ] + }, + "RemoteReplicatorStatus": { + "description": "Represents the state of the secondary replicator from the primary replicator’s point of view.", + "properties": { + "ReplicaId": { + "$ref": "#/definitions/ReplicaId", + "description": "Represents the replica ID of the remote secondary replicator." + }, + "LastAcknowledgementProcessedTimeUtc": { + "type": "string", + "format": "date-time", + "description": "The last timestamp (in UTC) when an acknowledgement from the secondary replicator was processed on the primary.\nUTC 0 represents an invalid value, indicating that no acknowledgement messages were ever processed." + }, + "LastReceivedReplicationSequenceNumber": { + "type": "string", + "description": "The highest replication operation sequence number that the secondary has received from the primary." + }, + "LastAppliedReplicationSequenceNumber": { + "type": "string", + "description": "The highest replication operation sequence number that the secondary has applied to its state." + }, + "IsInBuild": { + "type": "boolean", + "description": "A value that indicates whether the secondary replica is in the process of being built." + }, + "LastReceivedCopySequenceNumber": { + "type": "string", + "description": "The highest copy operation sequence number that the secondary has received from the primary.\nA value of -1 implies that the secondary has received all copy operations." + }, + "LastAppliedCopySequenceNumber": { + "type": "string", + "description": "The highest copy operation sequence number that the secondary has applied to its state.\nA value of -1 implies that the secondary has applied all copy operations and the copy process is complete." + }, + "RemoteReplicatorAcknowledgementStatus": { + "$ref": "#/definitions/RemoteReplicatorAcknowledgementStatus", + "description": "Represents the acknowledgment status for the remote secondary replicator." + } + } + }, + "RemoteReplicatorStatusList": { + "type": "array", + "items": { + "$ref": "#/definitions/RemoteReplicatorStatus" + }, + "description": "List of remote replicator status" + }, + "RemoteReplicatorAcknowledgementStatus": { + "description": "Provides details about the remote replicators from the primary replicator's point of view.", + "properties": { + "ReplicationStreamAcknowledgementDetail": { + "$ref": "#/definitions/RemoteReplicatorAcknowledgementDetail", + "description": "Details about the acknowledgements for operations that are part of the replication stream data." + }, + "CopyStreamAcknowledgementDetail": { + "$ref": "#/definitions/RemoteReplicatorAcknowledgementDetail", + "description": "Details about the acknowledgements for operations that are part of the copy stream data." + } + } + }, + "RemoteReplicatorAcknowledgementDetail": { + "description": "Provides various statistics of the acknowledgements that are being received from the remote replicator.", + "properties": { + "AverageReceiveDuration": { + "type": "string", + "description": "Represents the average duration it takes for the remote replicator to receive an operation." + }, + "AverageApplyDuration": { + "type": "string", + "description": "Represents the average duration it takes for the remote replicator to apply an operation. This usually entails writing the operation to disk." + }, + "NotReceivedCount": { + "type": "string", + "description": "Represents the number of operations not yet received by a remote replicator." + }, + "ReceivedAndNotAppliedCount": { + "type": "string", + "description": "Represents the number of operations received and not yet applied by a remote replicator." + } + } + }, + "DeployedServiceReplicaDetailInfo": { + "discriminator": "ServiceKind", + "description": "Information about a Service Fabric service replica deployed on a node.", + "required": [ + "ServiceKind" + ], + "properties": { + "ServiceKind": { + "$ref": "#/definitions/ServiceKind", + "description": "The kind of service (Stateless or Stateful)." + }, + "ServiceName": { + "$ref": "#/definitions/ServiceName", + "description": "Full hierarchical name of the service in URI format starting with `fabric:`." + }, + "PartitionId": { + "$ref": "#/definitions/PartitionId", + "description": "An internal ID used by Service Fabric to uniquely identify a partition. This is a randomly generated GUID when the service was created. The partition ID is unique and does not change for the lifetime of the service. If the same service was deleted and recreated the IDs of its partitions would be different." + }, + "CurrentServiceOperation": { + "$ref": "#/definitions/ServiceOperationName", + "description": "Specifies the current active life-cycle operation on a stateful service replica or stateless service instance." + }, + "CurrentServiceOperationStartTimeUtc": { + "type": "string", + "format": "date-time", + "description": "The start time of the current service operation in UTC format." + }, + "ReportedLoad": { + "$ref": "#/definitions/LoadMetricReportInfoList", + "description": "List of load reported by replica." + } + } + }, + "DeployedStatefulServiceReplicaDetailInfo": { + "description": "Information about a stateful replica running in a code package. Note DeployedServiceReplicaQueryResult will contain duplicate data like ServiceKind, ServiceName, PartitionId and replicaId.", + "x-ms-discriminator-value": "Stateful", + "allOf": [ + { + "$ref": "#/definitions/DeployedServiceReplicaDetailInfo" + } + ], + "properties": { + "ReplicaId": { + "$ref": "#/definitions/ReplicaId", + "description": "Id of a stateful service replica. ReplicaId is used by Service Fabric to uniquely identify a replica of a partition. It is unique within a partition and does not change for the lifetime of the replica. If a replica gets dropped and another replica gets created on the same node for the same partition, it will get a different value for the id. Sometimes the id of a stateless service instance is also referred as a replica id." + }, + "CurrentReplicatorOperation": { + "$ref": "#/definitions/ReplicatorOperationName", + "description": "Specifies the operation currently being executed by the Replicator." + }, + "ReadStatus": { + "$ref": "#/definitions/PartitionAccessStatus", + "description": "Specifies the access status of the partition." + }, + "WriteStatus": { + "$ref": "#/definitions/PartitionAccessStatus", + "description": "Specifies the access status of the partition." + }, + "ReplicatorStatus": { + "$ref": "#/definitions/ReplicatorStatus", + "description": "Represents a base class for primary or secondary replicator status.\nContains information about the service fabric replicator like the replication/copy queue utilization, last acknowledgement received timestamp, etc." + }, + "ReplicaStatus": { + "$ref": "#/definitions/KeyValueStoreReplicaStatus", + "description": "Key value store related information for the replica." + }, + "DeployedServiceReplicaQueryResult": { + "$ref": "#/definitions/DeployedStatefulServiceReplicaInfo", + "description": "Information about a stateful service replica deployed on a node." + } + } + }, + "DeployedStatelessServiceInstanceDetailInfo": { + "description": "Information about a stateless instance running in a code package. Note that DeployedServiceReplicaQueryResult will contain duplicate data like ServiceKind, ServiceName, PartitionId and InstanceId.", + "x-ms-discriminator-value": "Stateless", + "allOf": [ + { + "$ref": "#/definitions/DeployedServiceReplicaDetailInfo" + } + ], + "properties": { + "InstanceId": { + "$ref": "#/definitions/InstanceId", + "description": "Id of a stateless service instance. InstanceId is used by Service Fabric to uniquely identify an instance of a partition of a stateless service. It is unique within a partition and does not change for the lifetime of the instance. If the instance has failed over on the same or different node, it will get a different value for the InstanceId." + }, + "DeployedServiceReplicaQueryResult": { + "$ref": "#/definitions/DeployedStatelessServiceInstanceInfo", + "description": "Information about a stateless service instance deployed on a node." + } + } + }, + "FabricReplicaStatus": { + "type": "string", + "description": "Specifies the status of the replica.", + "enum": [ + "Invalid", + "Down", + "Up" + ], + "x-ms-enum": { + "name": "FabricReplicaStatus", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates that the read or write operation access status is not valid. This value is not returned to the caller." + }, + { + "value": "Down", + "description": "Indicates that the replica is down." + }, + { + "value": "Up", + "description": "Indicates that the replica is up." + } + ] + } + }, + "LoadMetricReportInfoList": { + "type": "array", + "items": { + "$ref": "#/definitions/LoadMetricReportInfo" + }, + "description": "List of load reported by replica." + }, + "LoadMetricReportInfo": { + "description": "Information about load reported by replica.", + "properties": { + "Name": { + "type": "string", + "description": "The name of the metric." + }, + "Value": { + "type": "integer", + "format": "int32", + "description": "The value of the load for the metric. In future releases of Service Fabric this parameter will be deprecated in favor of CurrentValue." + }, + "CurrentValue": { + "type": "string", + "format": "double", + "description": "The double value of the load for the metric." + }, + "LastReportedUtc": { + "type": "string", + "format": "date-time", + "description": "The UTC time when the load is reported." + } + } + }, + "PartitionAccessStatus": { + "type": "string", + "description": "Specifies the access status of the partition.", + "enum": [ + "Invalid", + "Granted", + "ReconfigurationPending", + "NotPrimary", + "NoWriteQuorum" + ], + "x-ms-enum": { + "name": "PartitionAccessStatus", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates that the read or write operation access status is not valid. This value is not returned to the caller." + }, + { + "value": "Granted", + "description": "Indicates that the read or write operation access is granted and the operation is allowed." + }, + { + "value": "ReconfigurationPending", + "description": "Indicates that the client should try again later, because a reconfiguration is in progress." + }, + { + "value": "NotPrimary", + "description": "Indicates that this client request was received by a replica that is not a Primary replica." + }, + { + "value": "NoWriteQuorum", + "description": "Indicates that no write quorum is available and, therefore, no write operation can be accepted." + } + ] + } + }, + "ReplicatorOperationName": { + "type": "string", + "description": "Specifies the operation currently being executed by the Replicator.", + "enum": [ + "Invalid", + "None", + "Open", + "ChangeRole", + "UpdateEpoch", + "Close", + "Abort", + "OnDataLoss", + "WaitForCatchup", + "Build" + ], + "x-ms-enum": { + "name": "ReplicatorOperationName", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Default value if the replicator is not yet ready." + }, + { + "value": "None", + "description": "Replicator is not running any operation from Service Fabric perspective." + }, + { + "value": "Open", + "description": "Replicator is opening." + }, + { + "value": "ChangeRole", + "description": "Replicator is in the process of changing its role." + }, + { + "value": "UpdateEpoch", + "description": "Due to a change in the replica set, replicator is being updated with its Epoch." + }, + { + "value": "Close", + "description": "Replicator is closing." + }, + { + "value": "Abort", + "description": "Replicator is being aborted." + }, + { + "value": "OnDataLoss", + "description": "Replicator is handling the data loss condition, where the user service may potentially be recovering state from an external source." + }, + { + "value": "WaitForCatchup", + "description": "Replicator is waiting for a quorum of replicas to be caught up to the latest state." + }, + { + "value": "Build", + "description": "Replicator is in the process of building one or more replicas." + } + ] + } + }, + "ServiceOperationName": { + "type": "string", + "description": "Specifies the current active life-cycle operation on a stateful service replica or stateless service instance.", + "enum": [ + "Unknown", + "None", + "Open", + "ChangeRole", + "Close", + "Abort" + ], + "x-ms-enum": { + "name": "ServiceOperationName", + "modelAsString": true, + "values": [ + { + "value": "Unknown", + "description": "Reserved for future use." + }, + { + "value": "None", + "description": "The service replica or instance is not going through any life-cycle changes." + }, + { + "value": "Open", + "description": "The service replica or instance is being opened." + }, + { + "value": "ChangeRole", + "description": "The service replica is changing roles." + }, + { + "value": "Close", + "description": "The service replica or instance is being closed." + }, + { + "value": "Abort", + "description": "The service replica or instance is being aborted." + } + ] + } + }, + "ReplicaKind": { + "type": "string", + "description": "The role of a replica of a stateful service.", + "enum": [ + "Invalid", + "KeyValueStore" + ], + "x-ms-enum": { + "name": "ReplicaKind", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Represents an invalid replica kind. The value is zero." + }, + { + "value": "KeyValueStore", + "description": "Represents a key value store replica. The value is 1" + } + ] + } + }, + "ReplicaStatusBase": { + "discriminator": "Kind", + "description": "Information about the replica.", + "required": [ + "Kind" + ], + "properties": { + "Kind": { + "$ref": "#/definitions/ReplicaKind", + "description": "The role of a replica of a stateful service." + } + } + }, + "KeyValueStoreReplicaStatus": { + "description": "Key value store related information for the replica.", + "x-ms-discriminator-value": "KeyValueStore", + "allOf": [ + { + "$ref": "#/definitions/ReplicaStatusBase" + } + ], + "properties": { + "DatabaseRowCountEstimate": { + "type": "string", + "description": "Value indicating the estimated number of rows in the underlying database." + }, + "DatabaseLogicalSizeEstimate": { + "type": "string", + "description": "Value indicating the estimated size of the underlying database." + }, + "CopyNotificationCurrentKeyFilter": { + "type": "string", + "description": "Value indicating the latest key-prefix filter applied to enumeration during the callback. Null if there is no pending callback." + }, + "CopyNotificationCurrentProgress": { + "type": "string", + "description": "Value indicating the latest number of keys enumerated during the callback. 0 if there is no pending callback." + }, + "StatusDetails": { + "type": "string", + "description": "Value indicating the current status details of the replica." + } + } + }, + "ServiceUpdateDescription": { + "discriminator": "ServiceKind", + "description": "A ServiceUpdateDescription contains all of the information necessary to update a service.", + "required": [ + "ServiceKind" + ], + "properties": { + "ServiceKind": { + "$ref": "#/definitions/ServiceKind", + "description": "The service kind." + }, + "Flags": { + "type": "string", + "description": "Flags indicating whether other properties are set. Each of the associated properties corresponds to a flag, specified below, which, if set, indicate that the property is specified.\nThis property can be a combination of those flags obtained using bitwise 'OR' operator.\nFor example, if the provided value is 6 then the flags for ReplicaRestartWaitDuration (2) and QuorumLossWaitDuration (4) are set.\n\n- None - Does not indicate any other properties are set. The value is zero.\n- TargetReplicaSetSize/InstanceCount - Indicates whether the TargetReplicaSetSize property (for Stateful services) or the InstanceCount property (for Stateless services) is set. The value is 1.\n- ReplicaRestartWaitDuration - Indicates the ReplicaRestartWaitDuration property is set. The value is 2.\n- QuorumLossWaitDuration - Indicates the QuorumLossWaitDuration property is set. The value is 4.\n- StandByReplicaKeepDuration - Indicates the StandByReplicaKeepDuration property is set. The value is 8.\n- MinReplicaSetSize - Indicates the MinReplicaSetSize property is set. The value is 16.\n- PlacementConstraints - Indicates the PlacementConstraints property is set. The value is 32.\n- PlacementPolicyList - Indicates the ServicePlacementPolicies property is set. The value is 64.\n- Correlation - Indicates the CorrelationScheme property is set. The value is 128.\n- Metrics - Indicates the ServiceLoadMetrics property is set. The value is 256.\n- DefaultMoveCost - Indicates the DefaultMoveCost property is set. The value is 512.\n- ScalingPolicy - Indicates the ScalingPolicies property is set. The value is 1024.\n- ServicePlacementTimeLimit - Indicates the ServicePlacementTimeLimit property is set. The value is 2048.\n- MinInstanceCount - Indicates the MinInstanceCount property is set. The value is 4096.\n- MinInstancePercentage - Indicates the MinInstancePercentage property is set. The value is 8192.\n- InstanceCloseDelayDuration - Indicates the InstanceCloseDelayDuration property is set. The value is 16384.\n- InstanceRestartWaitDuration - Indicates the InstanceCloseDelayDuration property is set. The value is 32768.\n- DropSourceReplicaOnMove - Indicates the DropSourceReplicaOnMove property is set. The value is 65536.\n- ServiceDnsName - Indicates the ServiceDnsName property is set. The value is 131072.\n- TagsForPlacement - Indicates the TagsForPlacement property is set. The value is 1048576.\n- TagsForRunning - Indicates the TagsForRunning property is set. The value is 2097152." + }, + "PlacementConstraints": { + "type": "string", + "description": "The placement constraints as a string. Placement constraints are boolean expressions on node properties and allow for restricting a service to particular nodes based on the service requirements. For example, to place a service on nodes where NodeType is blue specify the following: \"NodeColor == blue)\"." + }, + "CorrelationScheme": { + "$ref": "#/definitions/CorrelationSchemeList", + "description": "The correlation scheme." + }, + "LoadMetrics": { + "$ref": "#/definitions/ServiceLoadMetricsList", + "description": "The service load metrics." + }, + "ServicePlacementPolicies": { + "$ref": "#/definitions/ServicePlacementPoliciesList", + "description": "The service placement policies." + }, + "DefaultMoveCost": { + "$ref": "#/definitions/MoveCost", + "description": "The move cost for the service." + }, + "ScalingPolicies": { + "$ref": "#/definitions/ScalingPolicyDescriptionList", + "description": "Scaling policies for this service." + }, + "ServiceDnsName": { + "type": "string", + "description": "The DNS name of the service." + }, + "TagsForPlacement": { + "$ref": "#/definitions/NodeTagsDescription", + "description": "Tags for placement of this service." + }, + "TagsForRunning": { + "$ref": "#/definitions/NodeTagsDescription", + "description": "Tags for running of this service." + } + } + }, + "StatefulServiceUpdateDescription": { + "description": "Describes an update for a stateful service.", + "allOf": [ + { + "$ref": "#/definitions/ServiceUpdateDescription" + } + ], + "x-ms-discriminator-value": "Stateful", + "properties": { + "TargetReplicaSetSize": { + "type": "integer", + "minimum": 1, + "description": "The target replica set size as a number." + }, + "MinReplicaSetSize": { + "type": "integer", + "minimum": 1, + "description": "The minimum replica set size as a number." + }, + "ReplicaRestartWaitDurationSeconds": { + "type": "string", + "description": "The duration, in seconds, between when a replica goes down and when a new replica is created." + }, + "QuorumLossWaitDurationSeconds": { + "type": "string", + "description": "The maximum duration, in seconds, for which a partition is allowed to be in a state of quorum loss." + }, + "StandByReplicaKeepDurationSeconds": { + "type": "string", + "description": "The definition on how long StandBy replicas should be maintained before being removed." + }, + "ServicePlacementTimeLimitSeconds": { + "type": "string", + "description": "The duration for which replicas can stay InBuild before reporting that build is stuck." + }, + "DropSourceReplicaOnMove": { + "type": "boolean", + "description": "Indicates whether to drop source Secondary replica even if the target replica has not finished build. If desired behavior is to drop it as soon as possible the value of this property is true, if not it is false." + }, + "ReplicaLifecycleDescription": { + "$ref": "#/definitions/ReplicaLifecycleDescription", + "description": "Defines how replicas of this service will behave during their lifecycle." + } + } + }, + "StatelessServiceUpdateDescription": { + "description": "Describes an update for a stateless service.", + "allOf": [ + { + "$ref": "#/definitions/ServiceUpdateDescription" + } + ], + "x-ms-discriminator-value": "Stateless", + "properties": { + "InstanceCount": { + "type": "integer", + "minimum": -1, + "description": "The instance count." + }, + "MinInstanceCount": { + "$ref": "#/definitions/MinInstanceCount", + "description": "MinInstanceCount is the minimum number of instances that must be up to meet the EnsureAvailability safety check during operations like upgrade or deactivate node.\nThe actual number that is used is max( MinInstanceCount, ceil( MinInstancePercentage/100.0 * InstanceCount) ).\nNote, if InstanceCount is set to -1, during MinInstanceCount computation -1 is first converted into the number of nodes on which the instances are allowed to be placed according to the placement constraints on the service." + }, + "MinInstancePercentage": { + "$ref": "#/definitions/MinInstancePercentage", + "description": "MinInstancePercentage is the minimum percentage of InstanceCount that must be up to meet the EnsureAvailability safety check during operations like upgrade or deactivate node.\nThe actual number that is used is max( MinInstanceCount, ceil( MinInstancePercentage/100.0 * InstanceCount) ).\nNote, if InstanceCount is set to -1, during MinInstancePercentage computation, -1 is first converted into the number of nodes on which the instances are allowed to be placed according to the placement constraints on the service." + }, + "InstanceCloseDelayDurationSeconds": { + "type": "string", + "description": "Duration in seconds, to wait before a stateless instance is closed, to allow the active requests to drain gracefully. This would be effective when the instance is closing during the application/cluster upgrade and disabling node.\nThe endpoint exposed on this instance is removed prior to starting the delay, which prevents new connections to this instance.\nIn addition, clients that have subscribed to service endpoint change events(https://docs.microsoft.com/dotnet/api/system.fabric.fabricclient.servicemanagementclient.registerservicenotificationfilterasync), can do\nthe following upon receiving the endpoint removal notification:\n - Stop sending new requests to this instance.\n - Close existing connections after in-flight requests have completed.\n - Connect to a different instance of the service partition for future requests." + }, + "InstanceLifecycleDescription": { + "$ref": "#/definitions/InstanceLifecycleDescription", + "description": "Defines how instances of this service will behave during their lifecycle." + }, + "InstanceRestartWaitDurationSeconds": { + "type": "string", + "description": "When a stateless instance goes down, this timer starts. When it expires Service Fabric will create a new instance on any node in the cluster. \nThis configuration is to reduce unnecessary creation of a new instance in situations where the instance going down is likely to recover in a short time. For example, during an upgrade.\nThe default value is 0, which indicates that when stateless instance goes down, Service Fabric will immediately start building its replacement." + } + } + }, + "ImageStoreRelativePath": { + "type": "string", + "description": "The remote location within image store. This path is relative to the image store root." + }, + "FileVersion": { + "description": "Information about the version of image store file.", + "properties": { + "VersionNumber": { + "type": "string", + "description": "The current image store version number for the file is used in image store for checking whether it need to be updated." + }, + "EpochDataLossNumber": { + "type": "string", + "description": "The epoch data loss number of image store replica when this file entry was updated or created." + }, + "EpochConfigurationNumber": { + "type": "string", + "description": "The epoch configuration version number of the image store replica when this file entry was created or updated." + } + } + }, + "DiskInfo": { + "description": "Information about the disk", + "properties": { + "Capacity": { + "type": "string", + "description": "the disk size in bytes" + }, + "AvailableSpace": { + "type": "string", + "description": "the available disk space in bytes" + } + } + }, + "FileInfo": { + "description": "Information about a image store file.", + "properties": { + "FileSize": { + "type": "string", + "description": "The size of file in bytes." + }, + "FileVersion": { + "$ref": "#/definitions/FileVersion", + "description": "Information about the version of image store file." + }, + "ModifiedDate": { + "type": "string", + "format": "date-time", + "description": "The date and time when the image store file was last modified." + }, + "StoreRelativePath": { + "type": "string", + "description": "The file path relative to the image store root path." + } + } + }, + "FolderInfo": { + "description": "Information about a image store folder. It includes how many files this folder contains and its image store relative path.", + "properties": { + "StoreRelativePath": { + "$ref": "#/definitions/ImageStoreRelativePath", + "description": "The remote location within image store. This path is relative to the image store root." + }, + "FileCount": { + "type": "string", + "description": "The number of files from within the image store folder." + } + } + }, + "FolderSizeInfo": { + "description": "Information of a image store folder size", + "properties": { + "StoreRelativePath": { + "$ref": "#/definitions/ImageStoreRelativePath", + "description": "The remote location within image store. This path is relative to the image store root." + }, + "FolderSize": { + "type": "string", + "description": "The size of folder in bytes." + } + } + }, + "UsageInfo": { + "description": "Information about how much space and how many files in the file system the ImageStore is using in this category", + "properties": { + "UsedSpace": { + "type": "string", + "description": "the size of all files in this category" + }, + "FileCount": { + "type": "string", + "description": "the number of all files in this category" + } + } + }, + "ImageStoreContent": { + "description": "Information about the image store content.", + "properties": { + "StoreFiles": { + "type": "array", + "items": { + "$ref": "#/definitions/FileInfo" + }, + "description": "The list of image store file info objects represents files found under the given image store relative path." + }, + "StoreFolders": { + "type": "array", + "items": { + "$ref": "#/definitions/FolderInfo" + }, + "description": "The list of image store folder info objects represents subfolders found under the given image store relative path." + } + } + }, + "ImageStoreCopyDescription": { + "description": "Information about how to copy image store content from one image store relative path to another image store relative path.", + "required": [ + "RemoteSource", + "RemoteDestination" + ], + "properties": { + "RemoteSource": { + "type": "string", + "description": "The relative path of source image store content to be copied from." + }, + "RemoteDestination": { + "type": "string", + "description": "The relative path of destination image store content to be copied to." + }, + "SkipFiles": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of the file names to be skipped for copying." + }, + "CheckMarkFile": { + "type": "boolean", + "description": "Indicates whether to check mark file during copying. The property is true if checking mark file is required, false otherwise. The mark file is used to check whether the folder is well constructed. If the property is true and mark file does not exist, the copy is skipped." + } + } + }, + "ImageStoreInfo": { + "description": "Information about the ImageStore's resource usage", + "properties": { + "DiskInfo": { + "$ref": "#/definitions/DiskInfo", + "description": "disk capacity and available disk space on the node where the ImageStore primary is placed." + }, + "UsedByMetadata": { + "$ref": "#/definitions/UsageInfo", + "description": "the ImageStore's file system usage for metadata." + }, + "UsedByStaging": { + "$ref": "#/definitions/UsageInfo", + "description": "The ImageStore's file system usage for staging files that are being uploaded." + }, + "UsedByCopy": { + "$ref": "#/definitions/UsageInfo", + "description": "the ImageStore's file system usage for copied application and cluster packages. [Removing application and cluster packages](https://docs.microsoft.com/rest/api/servicefabric/sfclient-api-deleteimagestorecontent) will free up this space." + }, + "UsedByRegister": { + "$ref": "#/definitions/UsageInfo", + "description": "the ImageStore's file system usage for registered and cluster packages. [Unregistering application](https://docs.microsoft.com/rest/api/servicefabric/sfclient-api-unprovisionapplicationtype) and [cluster packages](https://docs.microsoft.com/rest/api/servicefabric/sfclient-api-unprovisionapplicationtype) will free up this space." + } + } + }, + "InstanceId": { + "type": "string", + "description": "Id of a stateless service instance. InstanceId is used by Service Fabric to uniquely identify an instance of a partition of a stateless service. It is unique within a partition and does not change for the lifetime of the instance. If the instance has failed over on the same or different node, it will get a different value for the InstanceId." + }, + "CodePackageInstanceId": { + "type": "string", + "description": "The instance ID for current running entry point. For a code package setup entry point (if specified) runs first and after it finishes main entry point is started. Each time entry point executable is run, its instance id will change." + }, + "HostIsolationMode": { + "type": "string", + "description": "Specifies the isolation mode of main entry point of a code package when it's host type is ContainerHost. This is specified as part of container host policies in application manifest while importing service manifest.", + "enum": [ + "None", + "Process", + "HyperV" + ], + "x-ms-enum": { + "name": "HostIsolationMode", + "modelAsString": true, + "values": [ + { + "value": "None", + "description": "Indicates the isolation mode is not applicable for given HostType. The value is 0." + }, + { + "value": "Process", + "description": "This is the default isolation mode for a ContainerHost. The value is 1." + }, + { + "value": "HyperV", + "description": "Indicates the ContainerHost is a Hyper-V container. This applies to only Windows containers. The value is 2." + } + ] + } + }, + "HostType": { + "type": "string", + "description": "Specifies the type of host for main entry point of a code package as specified in service manifest.", + "enum": [ + "Invalid", + "ExeHost", + "ContainerHost" + ], + "x-ms-enum": { + "name": "HostType", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the type of host is not known or invalid. The value is 0." + }, + { + "value": "ExeHost", + "description": "Indicates the host is an executable. The value is 1." + }, + { + "value": "ContainerHost", + "description": "Indicates the host is a container. The value is 2." + } + ] + } + }, + "RestartDeployedCodePackageDescription": { + "description": "Defines description for restarting a deployed code package on Service Fabric node.", + "required": [ + "ServiceManifestName", + "CodePackageName", + "CodePackageInstanceId" + ], + "properties": { + "ServiceManifestName": { + "$ref": "#/definitions/ServiceManifestName", + "description": "The name of service manifest that specified this code package." + }, + "ServicePackageActivationId": { + "$ref": "#/definitions/ServicePackageActivationId", + "description": "The ActivationId of a deployed service package. If ServicePackageActivationMode specified at the time of creating the service\nis 'SharedProcess' (or if it is not specified, in which case it defaults to 'SharedProcess'), then value of ServicePackageActivationId\nis always an empty string." + }, + "CodePackageName": { + "$ref": "#/definitions/CodePackageName", + "description": "The name of the code package defined in the service manifest." + }, + "CodePackageInstanceId": { + "$ref": "#/definitions/CodePackageInstanceId", + "description": "The instance ID for currently running entry point. For a code package setup entry point (if specified) runs first and after it finishes main entry point is started.\nEach time entry point executable is run, its instance ID will change. If 0 is passed in as the code package instance ID, the API will restart the code package with whatever instance ID it is currently running.\nIf an instance ID other than 0 is passed in, the API will restart the code package only if the current Instance ID matches the passed in instance ID.\nNote, passing in the exact instance ID (not 0) in the API is safer, because if ensures at most one restart of the code package." + } + } + }, + "DeployedServiceTypeInfo": { + "description": "Information about service type deployed on a node, information such as the status of the service type registration on a node.", + "properties": { + "ServiceTypeName": { + "$ref": "#/definitions/ServiceTypeName", + "description": "Name of the service type as specified in the service manifest." + }, + "ServiceManifestName": { + "$ref": "#/definitions/ServiceManifestName", + "description": "The name of the service manifest in which this service type is defined." + }, + "CodePackageName": { + "$ref": "#/definitions/CodePackageName", + "description": "The name of the code package that registered the service type." + }, + "Status": { + "$ref": "#/definitions/ServiceTypeRegistrationStatus", + "description": "The status of the service type registration on the node." + }, + "ServicePackageActivationId": { + "$ref": "#/definitions/ServicePackageActivationId", + "description": "The ActivationId of a deployed service package. If ServicePackageActivationMode specified at the time of creating the service\nis 'SharedProcess' (or if it is not specified, in which case it defaults to 'SharedProcess'), then value of ServicePackageActivationId\nis always an empty string." + } + } + }, + "DeployedServiceTypeInfoList": { + "type": "array", + "items": { + "$ref": "#/definitions/DeployedServiceTypeInfo" + }, + "description": "List of information about service type deployed on a node." + }, + "ServiceTypeRegistrationStatus": { + "type": "string", + "description": "The status of the service type registration on the node.", + "enum": [ + "Invalid", + "Disabled", + "Enabled", + "Registered" + ], + "x-ms-enum": { + "name": "ServiceTypeRegistrationStatus", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the registration status is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "Disabled", + "description": "Indicates that the service type is disabled on this node. A type gets disabled when there are too many failures of the code package hosting the service type. If the service type is disabled, new replicas of that service type will not be placed on the node until it is enabled again. The service type is enabled again after the process hosting it comes up and re-registers the type or a preconfigured time interval has passed. The value is 1." + }, + { + "value": "Enabled", + "description": "Indicates that the service type is enabled on this node. Replicas of this service type can be placed on this node when the code package registers the service type. The value is 2." + }, + { + "value": "Registered", + "description": "Indicates that the service type is enabled and registered on the node by a code package. Replicas of this service type can now be placed on this node. The value is 3." + } + ] + } + }, + "ServiceEndpointRole": { + "type": "string", + "description": "The role of the replica where the endpoint is reported.", + "enum": [ + "Invalid", + "Stateless", + "StatefulPrimary", + "StatefulSecondary" + ], + "x-ms-enum": { + "name": "ServiceEndpointRole", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the service endpoint role is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "Stateless", + "description": "Indicates that the service endpoint is of a stateless service. The value is 1." + }, + { + "value": "StatefulPrimary", + "description": "Indicates that the service endpoint is of a primary replica of a stateful service. The value is 2." + }, + { + "value": "StatefulSecondary", + "description": "Indicates that the service endpoint is of a secondary replica of a stateful service. The value is 3." + } + ] + } + }, + "ResolvedServiceEndpoint": { + "description": "Endpoint of a resolved service partition.", + "properties": { + "Kind": { + "$ref": "#/definitions/ServiceEndpointRole", + "description": "The role of the replica where the endpoint is reported." + }, + "Address": { + "type": "string", + "description": "The address of the endpoint. If the endpoint has multiple listeners the address is a JSON object with one property per listener with the value as the address of that listener." + } + } + }, + "ResolvedServicePartition": { + "description": "Information about a service partition and its associated endpoints.", + "required": [ + "Name", + "PartitionInformation", + "Endpoints", + "Version" + ], + "properties": { + "Name": { + "$ref": "#/definitions/ServiceName", + "description": "The full name of the service with 'fabric:' URI scheme." + }, + "PartitionInformation": { + "$ref": "#/definitions/PartitionInformation", + "description": "A representation of the resolved partition." + }, + "Endpoints": { + "$ref": "#/definitions/ResolvedServiceEndpointList", + "description": "List of resolved service endpoints of a service partition." + }, + "Version": { + "type": "string", + "description": "The version of this resolved service partition result. This version should be passed in the next time the ResolveService call is made via the PreviousRspVersion query parameter." + } + } + }, + "ResolvedServiceEndpointList": { + "type": "array", + "items": { + "$ref": "#/definitions/ResolvedServiceEndpoint" + }, + "description": "List of resolved service endpoints of a service partition." + }, + "InvokeDataLossResult": { + "description": "Represents information about an operation in a terminal state (Completed or Faulted).", + "properties": { + "ErrorCode": { + "type": "integer", + "format": "int32", + "description": "If OperationState is Completed, this is 0. If OperationState is Faulted, this is an error code indicating the reason." + }, + "SelectedPartition": { + "$ref": "#/definitions/SelectedPartition", + "description": "This class returns information about the partition that the user-induced operation acted upon." + } + } + }, + "InvokeQuorumLossResult": { + "description": "Represents information about an operation in a terminal state (Completed or Faulted).", + "properties": { + "ErrorCode": { + "type": "integer", + "format": "int32", + "description": "If OperationState is Completed, this is 0. If OperationState is Faulted, this is an error code indicating the reason." + }, + "SelectedPartition": { + "$ref": "#/definitions/SelectedPartition", + "description": "This class returns information about the partition that the user-induced operation acted upon." + } + } + }, + "NodeResult": { + "description": "Contains information about a node that was targeted by a user-induced operation.", + "properties": { + "NodeName": { + "$ref": "#/definitions/NodeName", + "description": "The name of a Service Fabric node." + }, + "NodeInstanceId": { + "type": "string", + "description": "The node instance id." + } + } + }, + "NodeTransitionProgress": { + "description": "Information about an NodeTransition operation. This class contains an OperationState and a NodeTransitionResult. The NodeTransitionResult is not valid until OperationState\nis Completed or Faulted.", + "properties": { + "State": { + "$ref": "#/definitions/OperationState", + "description": "The state of the operation." + }, + "NodeTransitionResult": { + "$ref": "#/definitions/NodeTransitionResult", + "description": "Represents information about an operation in a terminal state (Completed or Faulted)." + } + } + }, + "NodeTransitionResult": { + "description": "Represents information about an operation in a terminal state (Completed or Faulted).", + "properties": { + "ErrorCode": { + "type": "integer", + "format": "int32", + "description": "If OperationState is Completed, this is 0. If OperationState is Faulted, this is an error code indicating the reason." + }, + "NodeResult": { + "$ref": "#/definitions/NodeResult", + "description": "Contains information about a node that was targeted by a user-induced operation." + } + } + }, + "Ordering": { + "type": "string", + "description": "Defines the order.", + "enum": [ + "Desc", + "Asc" + ], + "default": "Desc", + "x-ms-enum": { + "name": "Ordering", + "modelAsString": true, + "values": [ + { + "value": "Desc", + "description": "Descending sort order." + }, + { + "value": "Asc", + "description": "Ascending sort order." + } + ] + } + }, + "NodeTagsDescription": { + "description": "Describes the tags required for placement or running of the service.", + "required": [ + "Count", + "Tags" + ], + "properties": { + "Count": { + "type": "integer", + "description": "The number of tags." + }, + "Tags": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Array of size specified by the ‘Count’ parameter, for the placement tags of the service." + } + } + }, + "OperationId": { + "type": "string", + "format": "uuid", + "description": "A GUID that identifies a call to this API. This is also passed into the corresponding GetProgress API." + }, + "OperationState": { + "type": "string", + "description": "The state of the operation.", + "enum": [ + "Invalid", + "Running", + "RollingBack", + "Completed", + "Faulted", + "Cancelled", + "ForceCancelled" + ], + "x-ms-enum": { + "name": "OperationState", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "The operation state is invalid." + }, + { + "value": "Running", + "description": "The operation is in progress." + }, + { + "value": "RollingBack", + "description": "The operation is rolling back internal system state because it encountered a fatal error or was cancelled by the user. \"RollingBack\" does not refer to user state. For example, if CancelOperation is called on a command of type PartitionDataLoss, state of \"RollingBack\" does not mean service data is being restored (assuming the command has progressed far enough to cause data loss). It means the system is rolling back/cleaning up internal system state associated with the command." + }, + { + "value": "Completed", + "description": "The operation has completed successfully and is no longer running." + }, + { + "value": "Faulted", + "description": "The operation has failed and is no longer running." + }, + { + "value": "Cancelled", + "description": "The operation was cancelled by the user using CancelOperation, and is no longer running." + }, + { + "value": "ForceCancelled", + "description": "The operation was cancelled by the user using CancelOperation, with the force parameter set to true. It is no longer running. Refer to CancelOperation for more details." + } + ] + } + }, + "OperationStatus": { + "description": "Contains the OperationId, OperationState, and OperationType for user-induced operations.", + "properties": { + "OperationId": { + "$ref": "#/definitions/OperationId", + "description": "A GUID that identifies a call to this API. This is also passed into the corresponding GetProgress API." + }, + "State": { + "$ref": "#/definitions/OperationState", + "description": "The state of the operation." + }, + "Type": { + "$ref": "#/definitions/OperationType", + "description": "The type of the operation." + } + } + }, + "OperationStatusList": { + "type": "array", + "description": "A list of OperationStatus objects.", + "items": { + "$ref": "#/definitions/OperationStatus" + } + }, + "OperationType": { + "type": "string", + "description": "The type of the operation.", + "enum": [ + "Invalid", + "PartitionDataLoss", + "PartitionQuorumLoss", + "PartitionRestart", + "NodeTransition" + ], + "x-ms-enum": { + "name": "OperationType", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "The operation state is invalid." + }, + { + "value": "PartitionDataLoss", + "description": "An operation started using the StartDataLoss API." + }, + { + "value": "PartitionQuorumLoss", + "description": "An operation started using the StartQuorumLoss API." + }, + { + "value": "PartitionRestart", + "description": "An operation started using the StartPartitionRestart API." + }, + { + "value": "NodeTransition", + "description": "An operation started using the StartNodeTransition API." + } + ] + } + }, + "PartitionDataLossProgress": { + "description": "Information about a partition data loss user-induced operation.", + "properties": { + "State": { + "$ref": "#/definitions/OperationState", + "description": "The state of the operation." + }, + "InvokeDataLossResult": { + "$ref": "#/definitions/InvokeDataLossResult", + "description": "Represents information about an operation in a terminal state (Completed or Faulted)." + } + } + }, + "PartitionQuorumLossProgress": { + "description": "Information about a partition quorum loss user-induced operation.", + "properties": { + "State": { + "$ref": "#/definitions/OperationState", + "description": "The state of the operation." + }, + "InvokeQuorumLossResult": { + "$ref": "#/definitions/InvokeQuorumLossResult", + "description": "Represents information about an operation in a terminal state (Completed or Faulted)." + } + } + }, + "PartitionRestartProgress": { + "description": "Information about a partition restart user-induced operation.", + "properties": { + "State": { + "$ref": "#/definitions/OperationState", + "description": "The state of the operation." + }, + "RestartPartitionResult": { + "$ref": "#/definitions/RestartPartitionResult", + "description": "Represents information about an operation in a terminal state (Completed or Faulted)." + } + } + }, + "RestartPartitionResult": { + "description": "Represents information about an operation in a terminal state (Completed or Faulted).", + "properties": { + "ErrorCode": { + "type": "integer", + "format": "int32", + "description": "If OperationState is Completed, this is 0. If OperationState is Faulted, this is an error code indicating the reason." + }, + "SelectedPartition": { + "$ref": "#/definitions/SelectedPartition", + "description": "This class returns information about the partition that the user-induced operation acted upon." + } + } + }, + "SelectedPartition": { + "description": "This class returns information about the partition that the user-induced operation acted upon.", + "properties": { + "ServiceName": { + "$ref": "#/definitions/ServiceName", + "description": "The name of the service the partition belongs to." + }, + "PartitionId": { + "$ref": "#/definitions/PartitionId", + "description": "An internal ID used by Service Fabric to uniquely identify a partition. This is a randomly generated GUID when the service was created. The partition ID is unique and does not change for the lifetime of the service. If the same service was deleted and recreated the IDs of its partitions would be different." + } + } + }, + "DeployServicePackageToNodeDescription": { + "description": "Defines description for downloading packages associated with a service manifest to image cache on a Service Fabric node.", + "properties": { + "ServiceManifestName": { + "$ref": "#/definitions/ServiceManifestName", + "description": "The name of service manifest whose packages need to be downloaded." + }, + "ApplicationTypeName": { + "$ref": "#/definitions/ApplicationTypeName", + "description": "The application type name as defined in the application manifest." + }, + "ApplicationTypeVersion": { + "$ref": "#/definitions/ApplicationTypeVersion", + "description": "The version of the application type as defined in the application manifest." + }, + "NodeName": { + "$ref": "#/definitions/NodeName", + "description": "The name of a Service Fabric node." + }, + "PackageSharingPolicy": { + "$ref": "#/definitions/PackageSharingPolicyInfoList", + "description": "List of package sharing policy information." + } + }, + "required": [ + "ServiceManifestName", + "ApplicationTypeName", + "ApplicationTypeVersion", + "NodeName" + ] + }, + "PackageSharingPolicyInfo": { + "description": "Represents a policy for the package sharing.", + "properties": { + "SharedPackageName": { + "type": "string", + "description": "The name of code, configuration or data package that should be shared." + }, + "PackageSharingScope": { + "$ref": "#/definitions/PackageSharingPolicyScope", + "description": "Represents the scope for PackageSharingPolicy. This is specified during DeployServicePackageToNode operation." + } + } + }, + "PackageSharingPolicyInfoList": { + "type": "array", + "items": { + "$ref": "#/definitions/PackageSharingPolicyInfo" + }, + "description": "List of package sharing policy information." + }, + "PackageSharingPolicyScope": { + "type": "string", + "description": "Represents the scope for PackageSharingPolicy. This is specified during DeployServicePackageToNode operation.", + "enum": [ + "None", + "All", + "Code", + "Config", + "Data" + ], + "x-ms-enum": { + "name": "PackageSharingPolicyScope", + "modelAsString": true, + "values": [ + { + "value": "None", + "description": "No package sharing policy scope. The value is 0." + }, + { + "value": "All", + "description": "Share all code, config and data packages from corresponding service manifest. The value is 1." + }, + { + "value": "Code", + "description": "Share all code packages from corresponding service manifest. The value is 2." + }, + { + "value": "Config", + "description": "Share all config packages from corresponding service manifest. The value is 3." + }, + { + "value": "Data", + "description": "Share all data packages from corresponding service manifest. The value is 4." + } + ] + } + }, + "ResumeApplicationUpgradeDescription": { + "description": "Describes the parameters for resuming an unmonitored manual Service Fabric application upgrade", + "properties": { + "UpgradeDomainName": { + "type": "string", + "description": "The name of the upgrade domain in which to resume the upgrade." + } + }, + "required": [ + "UpgradeDomainName" + ] + }, + "ApplicationUpgradeUpdateDescription": { + "description": "Describes the parameters for updating an ongoing application upgrade.", + "properties": { + "Name": { + "$ref": "#/definitions/ApplicationName", + "description": "The name of the application, including the 'fabric:' URI scheme." + }, + "UpgradeKind": { + "$ref": "#/definitions/UpgradeKind", + "description": "The kind of upgrade out of the following possible values." + }, + "ApplicationHealthPolicy": { + "$ref": "#/definitions/ApplicationHealthPolicy", + "description": "Defines a health policy used to evaluate the health of an application or one of its children entities." + }, + "UpdateDescription": { + "$ref": "#/definitions/RollingUpgradeUpdateDescription", + "description": "Describes the parameters for updating a rolling upgrade of application or cluster." + } + }, + "required": [ + "Name", + "UpgradeKind" + ] + }, + "RollingUpgradeUpdateDescription": { + "description": "Describes the parameters for updating a rolling upgrade of application or cluster.", + "properties": { + "RollingUpgradeMode": { + "$ref": "#/definitions/UpgradeMode", + "description": "The mode used to monitor health during a rolling upgrade. The values are UnmonitoredAuto, UnmonitoredManual, and Monitored." + }, + "ForceRestart": { + "$ref": "#/definitions/ForceRestart", + "description": "If true, then processes are forcefully restarted during upgrade even when the code version has not changed (the upgrade only changes configuration or data)." + }, + "ReplicaSetCheckTimeoutInMilliseconds": { + "$ref": "#/definitions/UpgradeReplicaSetCheckTimeout", + "description": "The maximum amount of time to block processing of an upgrade domain and prevent loss of availability when there are unexpected issues. When this timeout expires, processing of the upgrade domain will proceed regardless of availability loss issues. The timeout is reset at the start of each upgrade domain. Valid values are between 0 and 42949672925 inclusive. (unsigned 32-bit integer)." + }, + "FailureAction": { + "$ref": "#/definitions/FailureAction", + "description": "The compensating action to perform when a Monitored upgrade encounters monitoring policy or health policy violations.\nInvalid indicates the failure action is invalid. Rollback specifies that the upgrade will start rolling back automatically.\nManual indicates that the upgrade will switch to UnmonitoredManual upgrade mode." + }, + "HealthCheckWaitDurationInMilliseconds": { + "$ref": "#/definitions/HealthCheckWaitDuration", + "description": "The amount of time to wait after completing an upgrade domain before applying health policies. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + }, + "HealthCheckStableDurationInMilliseconds": { + "$ref": "#/definitions/HealthCheckStableDuration", + "description": "The amount of time that the application or cluster must remain healthy before the upgrade proceeds to the next upgrade domain. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + }, + "HealthCheckRetryTimeoutInMilliseconds": { + "$ref": "#/definitions/HealthCheckRetryTimeout", + "description": "The amount of time to retry health evaluation when the application or cluster is unhealthy before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + }, + "UpgradeTimeoutInMilliseconds": { + "$ref": "#/definitions/UpgradeTimeout", + "description": "The amount of time the overall upgrade has to complete before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + }, + "UpgradeDomainTimeoutInMilliseconds": { + "$ref": "#/definitions/UpgradeDomainTimeout", + "description": "The amount of time each upgrade domain has to complete before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + }, + "InstanceCloseDelayDurationInSeconds": { + "$ref": "#/definitions/InstanceCloseDelayDurationInSeconds", + "description": "Duration in seconds, to wait before a stateless instance is closed, to allow the active requests to drain gracefully. This would be effective when the instance is closing during the application/cluster\nupgrade, only for those instances which have a non-zero delay duration configured in the service description. See InstanceCloseDelayDurationSeconds property in $ref: \"#/definitions/StatelessServiceDescription.yaml\" for details.\nNote, the default value of InstanceCloseDelayDurationInSeconds is 4294967295, which indicates that the behavior will entirely depend on the delay configured in the stateless service description." + } + }, + "required": [ + "RollingUpgradeMode" + ] + }, + "NameDescription": { + "description": "Describes a Service Fabric name.", + "properties": { + "Name": { + "$ref": "#/definitions/FabricName", + "description": "The Service Fabric name, including the 'fabric:' URI scheme." + } + }, + "required": [ + "Name" + ] + }, + "FabricName": { + "type": "string", + "description": "The Service Fabric name, including the 'fabric:' URI scheme." + }, + "PagedSubNameInfoList": { + "description": "A paged list of Service Fabric names. The list is paged when all of the results cannot fit in a single message. The next set of results can be obtained by executing the same query with the continuation token provided in this list.", + "properties": { + "ContinuationToken": { + "$ref": "#/definitions/ContinuationToken", + "description": "The continuation token parameter is used to obtain next set of results. The continuation token is included in the response of the API when the results from the system do not fit in a single response. When this value is passed to the next API call, the API returns next set of results. If there are no further results, then the continuation token is not included in the response." + }, + "IsConsistent": { + "type": "boolean", + "description": "Indicates whether any name under the given name has been modified during the enumeration. If there was a modification, this property value is false." + }, + "SubNames": { + "type": "array", + "description": "List of the child names.", + "items": { + "$ref": "#/definitions/FabricName" + } + } + } + }, + "PropertyValueKind": { + "type": "string", + "description": "The kind of property, determined by the type of data. Following are the possible values.", + "enum": [ + "Invalid", + "Binary", + "Int64", + "Double", + "String", + "Guid" + ], + "x-ms-enum": { + "name": "PropertyValueKind", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the property is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "Binary", + "description": "The data inside the property is a binary blob. The value is 1." + }, + { + "value": "Int64", + "description": "The data inside the property is an int64. The value is 2." + }, + { + "value": "Double", + "description": "The data inside the property is a double. The value is 3." + }, + { + "value": "String", + "description": "The data inside the property is a string. The value is 4." + }, + { + "value": "Guid", + "description": "The data inside the property is a guid. The value is 5." + } + ] + } + }, + "PropertyValue": { + "discriminator": "Kind", + "description": "Describes a Service Fabric property value.", + "properties": { + "Kind": { + "$ref": "#/definitions/PropertyValueKind", + "description": "The kind of property, determined by the type of data. Following are the possible values." + } + }, + "required": [ + "Kind" + ] + }, + "BinaryPropertyValue": { + "description": "Describes a Service Fabric property value of type Binary.", + "allOf": [ + { + "$ref": "#/definitions/PropertyValue" + } + ], + "x-ms-discriminator-value": "Binary", + "required": [ + "Data" + ], + "properties": { + "Data": { + "$ref": "#/definitions/ByteArray", + "description": "Array of bytes to be sent as an integer array. Each element of array is a number between 0 and 255." + } + } + }, + "Int64PropertyValue": { + "description": "Describes a Service Fabric property value of type Int64.", + "allOf": [ + { + "$ref": "#/definitions/PropertyValue" + } + ], + "x-ms-discriminator-value": "Int64", + "required": [ + "Data" + ], + "properties": { + "Data": { + "type": "string", + "description": "The data of the property value." + } + } + }, + "DoublePropertyValue": { + "description": "Describes a Service Fabric property value of type Double.", + "allOf": [ + { + "$ref": "#/definitions/PropertyValue" + } + ], + "x-ms-discriminator-value": "Double", + "required": [ + "Data" + ], + "properties": { + "Data": { + "type": "number", + "format": "double", + "description": "The data of the property value." + } + } + }, + "StringPropertyValue": { + "description": "Describes a Service Fabric property value of type String.", + "allOf": [ + { + "$ref": "#/definitions/PropertyValue" + } + ], + "x-ms-discriminator-value": "String", + "required": [ + "Data" + ], + "properties": { + "Data": { + "type": "string", + "description": "The data of the property value." + } + } + }, + "GuidPropertyValue": { + "description": "Describes a Service Fabric property value of type Guid.", + "allOf": [ + { + "$ref": "#/definitions/PropertyValue" + } + ], + "x-ms-discriminator-value": "Guid", + "required": [ + "Data" + ], + "properties": { + "Data": { + "type": "string", + "format": "uuid", + "description": "The data of the property value." + } + } + }, + "PropertyInfo": { + "description": "Information about a Service Fabric property.", + "properties": { + "Name": { + "$ref": "#/definitions/PropertyName", + "description": "The name of the Service Fabric property." + }, + "Value": { + "$ref": "#/definitions/PropertyValue", + "description": "Describes a Service Fabric property value." + }, + "Metadata": { + "$ref": "#/definitions/PropertyMetadata", + "description": "The metadata associated with a property, including the property's name." + } + }, + "required": [ + "Name", + "Metadata" + ] + }, + "PagedPropertyInfoList": { + "description": "The paged list of Service Fabric properties under a given name. The list is paged when all of the results cannot fit in a single message. The next set of results can be obtained by executing the same query with the continuation token provided in this list.", + "properties": { + "ContinuationToken": { + "$ref": "#/definitions/ContinuationToken", + "description": "The continuation token parameter is used to obtain next set of results. The continuation token is included in the response of the API when the results from the system do not fit in a single response. When this value is passed to the next API call, the API returns next set of results. If there are no further results, then the continuation token is not included in the response." + }, + "IsConsistent": { + "type": "boolean", + "description": "Indicates whether any property under the given name has been modified during the enumeration. If there was a modification, this property value is false." + }, + "Properties": { + "type": "array", + "description": "List of property information.", + "items": { + "$ref": "#/definitions/PropertyInfo" + } + } + } + }, + "PropertyDescription": { + "description": "Description of a Service Fabric property.", + "properties": { + "PropertyName": { + "$ref": "#/definitions/PropertyName", + "description": "The name of the Service Fabric property." + }, + "CustomTypeId": { + "$ref": "#/definitions/PropertyCustomTypeId", + "description": "The property's custom type ID. Using this property, the user is able to tag the type of the value of the property." + }, + "Value": { + "$ref": "#/definitions/PropertyValue", + "description": "Describes a Service Fabric property value." + } + }, + "required": [ + "PropertyName", + "Value" + ] + }, + "PropertyName": { + "type": "string", + "description": "The name of the Service Fabric property." + }, + "PropertyMetadata": { + "description": "The metadata associated with a property, including the property's name.", + "properties": { + "TypeId": { + "$ref": "#/definitions/PropertyValueKind", + "description": "The kind of property, determined by the type of data. Following are the possible values." + }, + "CustomTypeId": { + "$ref": "#/definitions/PropertyCustomTypeId", + "description": "The property's custom type ID." + }, + "Parent": { + "$ref": "#/definitions/FabricName", + "description": "The name of the parent Service Fabric Name for the property. It could be thought of as the name-space/table under which the property exists." + }, + "SizeInBytes": { + "type": "integer", + "description": "The length of the serialized property value." + }, + "LastModifiedUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "Represents when the Property was last modified. Only write operations will cause this field to be updated." + }, + "SequenceNumber": { + "type": "string", + "description": "The version of the property. Every time a property is modified, its sequence number is increased." + } + } + }, + "PropertyCustomTypeId": { + "type": "string", + "description": "The property's custom type ID. Using this property, the user is able to tag the type of the value of the property." + }, + "PropertyBatchDescriptionList": { + "description": "Describes a list of property batch operations to be executed. Either all or none of the operations will be committed.", + "properties": { + "Operations": { + "type": "array", + "items": { + "$ref": "#/definitions/PropertyBatchOperation" + }, + "description": "A list of the property batch operations to be executed." + } + } + }, + "PropertyBatchOperationKind": { + "type": "string", + "description": "The kind of property batch operation, determined by the operation to be performed. The following are the possible values.", + "enum": [ + "Invalid", + "Put", + "Get", + "CheckExists", + "CheckSequence", + "Delete", + "CheckValue" + ], + "x-ms-enum": { + "name": "PropertyBatchOperationKind", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the property operation is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "Put", + "description": "The operation will create or edit a property. The value is 1." + }, + { + "value": "Get", + "description": "The operation will get a property. The value is 2." + }, + { + "value": "CheckExists", + "description": "The operation will check that a property exists or doesn't exists, depending on the provided value. The value is 3." + }, + { + "value": "CheckSequence", + "description": "The operation will ensure that the sequence number is equal to the provided value. The value is 4." + }, + { + "value": "Delete", + "description": "The operation will delete a property. The value is 5." + }, + { + "value": "CheckValue", + "description": "The operation will ensure that the value of a property is equal to the provided value. The value is 7." + } + ] + } + }, + "PropertyBatchOperation": { + "discriminator": "Kind", + "description": "Represents the base type for property operations that can be put into a batch and submitted.", + "properties": { + "Kind": { + "$ref": "#/definitions/PropertyBatchOperationKind", + "description": "The kind of property batch operation, determined by the operation to be performed. The following are the possible values." + }, + "PropertyName": { + "$ref": "#/definitions/PropertyName", + "description": "The name of the Service Fabric property." + } + }, + "required": [ + "Kind", + "PropertyName" + ] + }, + "CheckExistsPropertyBatchOperation": { + "description": "Represents a PropertyBatchOperation that compares the Boolean existence of a property with the Exists argument.\nThe PropertyBatchOperation operation fails if the property's existence is not equal to the Exists argument.\nThe CheckExistsPropertyBatchOperation is generally used as a precondition for the write operations in the batch.\nNote that if one PropertyBatchOperation in a PropertyBatch fails,\nthe entire batch fails and cannot be committed in a transactional manner.", + "allOf": [ + { + "$ref": "#/definitions/PropertyBatchOperation" + } + ], + "x-ms-discriminator-value": "CheckExists", + "properties": { + "Exists": { + "type": "boolean", + "description": "Whether or not the property should exist for the operation to pass." + } + }, + "required": [ + "Exists" + ] + }, + "CheckSequencePropertyBatchOperation": { + "description": "Compares the Sequence Number of a property with the SequenceNumber argument.\nA property's sequence number can be thought of as that property's version.\nEvery time the property is modified, its sequence number is increased.\nThe sequence number can be found in a property's metadata.\nThe comparison fails if the sequence numbers are not equal.\nCheckSequencePropertyBatchOperation is generally used as a precondition for the write operations in the batch.\nNote that if one PropertyBatchOperation in a PropertyBatch fails,\nthe entire batch fails and cannot be committed in a transactional manner.", + "allOf": [ + { + "$ref": "#/definitions/PropertyBatchOperation" + } + ], + "x-ms-discriminator-value": "CheckSequence", + "properties": { + "SequenceNumber": { + "type": "string", + "description": "The expected sequence number." + } + }, + "required": [ + "SequenceNumber" + ] + }, + "CheckValuePropertyBatchOperation": { + "description": "Represents a PropertyBatchOperation that compares the value of the property with the expected value.\nThe CheckValuePropertyBatchOperation is generally used as a precondition for the write operations in the batch.\nNote that if one PropertyBatchOperation in a PropertyBatch fails,\nthe entire batch fails and cannot be committed in a transactional manner.", + "allOf": [ + { + "$ref": "#/definitions/PropertyBatchOperation" + } + ], + "x-ms-discriminator-value": "CheckValue", + "properties": { + "Value": { + "$ref": "#/definitions/PropertyValue", + "description": "The expected property value." + } + }, + "required": [ + "Value" + ] + }, + "DeletePropertyBatchOperation": { + "description": "Represents a PropertyBatchOperation that deletes a specified property if it exists.\nNote that if one PropertyBatchOperation in a PropertyBatch fails,\nthe entire batch fails and cannot be committed in a transactional manner.", + "allOf": [ + { + "$ref": "#/definitions/PropertyBatchOperation" + } + ], + "x-ms-discriminator-value": "Delete" + }, + "GetPropertyBatchOperation": { + "description": "Represents a PropertyBatchOperation that gets the specified property if it exists.\nNote that if one PropertyBatchOperation in a PropertyBatch fails,\nthe entire batch fails and cannot be committed in a transactional manner.", + "allOf": [ + { + "$ref": "#/definitions/PropertyBatchOperation" + } + ], + "x-ms-discriminator-value": "Get", + "properties": { + "IncludeValue": { + "type": "boolean", + "default": false, + "description": "Whether or not to return the property value with the metadata.\nTrue if values should be returned with the metadata; False to return only property metadata." + } + } + }, + "PutPropertyBatchOperation": { + "description": "Puts the specified property under the specified name.\nNote that if one PropertyBatchOperation in a PropertyBatch fails,\nthe entire batch fails and cannot be committed in a transactional manner.", + "allOf": [ + { + "$ref": "#/definitions/PropertyBatchOperation" + } + ], + "x-ms-discriminator-value": "Put", + "properties": { + "Value": { + "$ref": "#/definitions/PropertyValue", + "description": "Describes a Service Fabric property value." + }, + "CustomTypeId": { + "$ref": "#/definitions/PropertyCustomTypeId", + "description": "The property's custom type ID. Using this property, the user is able to tag the type of the value of the property." + } + }, + "required": [ + "Value" + ] + }, + "PropertyBatchInfoKind": { + "type": "string", + "description": "The kind of property batch info, determined by the results of a property batch. The following are the possible values.", + "enum": [ + "Invalid", + "Successful", + "Failed" + ], + "x-ms-enum": { + "name": "PropertyBatchInfoKind", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the property batch info is invalid. All Service Fabric enumerations have the invalid type." + }, + { + "value": "Successful", + "description": "The property batch succeeded." + }, + { + "value": "Failed", + "description": "The property batch failed." + } + ] + } + }, + "PropertyBatchInfo": { + "discriminator": "Kind", + "description": "Information about the results of a property batch.", + "properties": { + "Kind": { + "$ref": "#/definitions/PropertyBatchInfoKind", + "description": "The kind of property batch info, determined by the results of a property batch. The following are the possible values." + } + }, + "required": [ + "Kind" + ] + }, + "SuccessfulPropertyBatchInfo": { + "description": "Derived from PropertyBatchInfo. Represents the property batch succeeding. Contains the results of any \"Get\" operations in the batch.", + "allOf": [ + { + "$ref": "#/definitions/PropertyBatchInfo" + } + ], + "x-ms-discriminator-value": "Successful", + "properties": { + "Properties": { + "additionalProperties": { + "$ref": "#/definitions/PropertyInfo" + }, + "description": "A map containing the properties that were requested through any \"Get\" property batch operations. The key represents the index of the \"Get\" operation in the original request, in string form. The value is the property. If a property is not found, it will not be in the map." + } + } + }, + "FailedPropertyBatchInfo": { + "description": "Derived from PropertyBatchInfo. Represents the property batch failing. Contains information about the specific batch failure.", + "allOf": [ + { + "$ref": "#/definitions/PropertyBatchInfo" + } + ], + "x-ms-discriminator-value": "Failed", + "properties": { + "ErrorMessage": { + "type": "string", + "description": "The error message of the failed operation. Describes the exception thrown due to the first unsuccessful operation in the property batch." + }, + "OperationIndex": { + "type": "integer", + "description": "The index of the unsuccessful operation in the property batch." + } + } + }, + "EntityKind": { + "type": "string", + "description": "The entity type of a Service Fabric entity such as Cluster, Node, Application, Service, Partition, Replica etc.", + "enum": [ + "Invalid", + "Node", + "Partition", + "Service", + "Application", + "Replica", + "DeployedApplication", + "DeployedServicePackage", + "Cluster" + ], + "x-ms-enum": { + "name": "EntityKind", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates an invalid entity kind. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "Node", + "description": "Indicates the entity is a Service Fabric node. The value is 1." + }, + { + "value": "Partition", + "description": "Indicates the entity is a Service Fabric partition. The value is 2." + }, + { + "value": "Service", + "description": "Indicates the entity is a Service Fabric service. The value is 3." + }, + { + "value": "Application", + "description": "Indicates the entity is a Service Fabric application. The value is 4." + }, + { + "value": "Replica", + "description": "Indicates the entity is a Service Fabric replica. The value is 5." + }, + { + "value": "DeployedApplication", + "description": "Indicates the entity is a Service Fabric deployed application. The value is 6." + }, + { + "value": "DeployedServicePackage", + "description": "Indicates the entity is a Service Fabric deployed service package. The value is 7." + }, + { + "value": "Cluster", + "description": "Indicates the entity is a Service Fabric cluster. The value is 8." + } + ] + } + }, + "HealthStateCount": { + "description": "Represents information about how many health entities are in Ok, Warning and Error health state.", + "properties": { + "OkCount": { + "type": "integer", + "format": "int64", + "description": "The number of health entities with aggregated health state Ok.", + "minimum": 0 + }, + "WarningCount": { + "type": "integer", + "format": "int64", + "description": "The number of health entities with aggregated health state Warning.", + "minimum": 0 + }, + "ErrorCount": { + "type": "integer", + "format": "int64", + "description": "The number of health entities with aggregated health state Error.", + "minimum": 0 + } + } + }, + "EntityKindHealthStateCount": { + "description": "Represents health state count for entities of the specified entity kind.", + "properties": { + "EntityKind": { + "$ref": "#/definitions/EntityKind", + "description": "The entity kind for which health states are evaluated." + }, + "HealthStateCount": { + "$ref": "#/definitions/HealthStateCount", + "description": "The health state count for the entities of the specified kind." + } + } + }, + "HealthStatistics": { + "description": "The health statistics of an entity, returned as part of the health query result when the query description is configured to include statistics.\nThe statistics include health state counts for all children types of the current entity.\nFor example, for cluster, the health statistics include health state counts for nodes, applications, services, partitions, replicas, deployed applications and deployed service packages.\nFor partition, the health statistics include health counts for replicas.", + "properties": { + "HealthStateCountList": { + "type": "array", + "items": { + "$ref": "#/definitions/EntityKindHealthStateCount" + }, + "description": "List of health state counts per entity kind, which keeps track of how many children of the queried entity are in Ok, Warning and Error state." + } + } + }, + "BackupPolicyDescription": { + "description": "Describes a backup policy for configuring periodic backup.", + "required": [ + "Name", + "AutoRestoreOnDataLoss", + "Schedule", + "MaxIncrementalBackups", + "Storage" + ], + "properties": { + "Name": { + "type": "string", + "description": "The unique name identifying this backup policy." + }, + "AutoRestoreOnDataLoss": { + "type": "boolean", + "description": "Specifies whether to trigger restore automatically using the latest available backup in case the partition experiences a data loss event." + }, + "MaxIncrementalBackups": { + "type": "integer", + "minimum": 0, + "maximum": 255, + "description": "Defines the maximum number of incremental backups to be taken between two full backups. This is just the upper limit. A full backup may be taken before specified number of incremental backups are completed in one of the following conditions\n- The replica has never taken a full backup since it has become primary,\n- Some of the log records since the last backup has been truncated, or\n- Replica passed the MaxAccumulatedBackupLogSizeInMB limit." + }, + "Schedule": { + "$ref": "#/definitions/BackupScheduleDescription", + "description": "Describes the backup schedule parameters." + }, + "Storage": { + "$ref": "#/definitions/BackupStorageDescription", + "description": "Describes the details of backup storage where to store the periodic backups." + }, + "RetentionPolicy": { + "$ref": "#/definitions/RetentionPolicyDescription", + "description": "Describes the policy to retain backups in storage." + } + } + }, + "PagedBackupPolicyDescriptionList": { + "description": "The list of backup policies configured in the cluster. The list is paged when all of the results cannot fit in a single message. The next set of results can be obtained by executing the same query with the continuation token provided in this list.", + "properties": { + "ContinuationToken": { + "$ref": "#/definitions/ContinuationToken", + "description": "The continuation token parameter is used to obtain next set of results. The continuation token is included in the response of the API when the results from the system do not fit in a single response. When this value is passed to the next API call, the API returns next set of results. If there are no further results, then the continuation token is not included in the response." + }, + "Items": { + "type": "array", + "description": "The list of backup policies information.", + "items": { + "$ref": "#/definitions/BackupPolicyDescription" + } + } + } + }, + "BasicRetentionPolicyDescription": { + "description": "Describes basic retention policy.", + "allOf": [ + { + "$ref": "#/definitions/RetentionPolicyDescription" + } + ], + "x-ms-discriminator-value": "Basic", + "required": [ + "RetentionDuration" + ], + "properties": { + "RetentionDuration": { + "type": "string", + "format": "duration", + "description": "It is the minimum duration for which a backup created, will remain stored in the storage and might get deleted after that span of time. It should be specified in ISO8601 format." + }, + "MinimumNumberOfBackups": { + "type": "integer", + "minimum": 0, + "description": "It is the minimum number of backups to be retained at any point of time. If specified with a non zero value, backups will not be deleted even if the backups have gone past retention duration and have number of backups less than or equal to it." + } + } + }, + "RetentionPolicyType": { + "type": "string", + "description": "The type of retention policy. Currently only \"Basic\" retention policy is supported.", + "enum": [ + "Basic", + "Invalid" + ], + "x-ms-enum": { + "name": "RetentionPolicyType", + "modelAsString": true, + "values": [ + { + "value": "Basic", + "description": "Indicates a basic retention policy type." + }, + { + "value": "Invalid", + "description": "Indicates an invalid retention policy type." + } + ] + } + }, + "DisableBackupDescription": { + "description": "It describes the body parameters while disabling backup of a backup entity(Application/Service/Partition).", + "required": [ + "CleanBackup" + ], + "properties": { + "CleanBackup": { + "type": "boolean", + "description": "Boolean flag to delete backups. It can be set to true for deleting all the backups which were created for the backup entity that is getting disabled for backup." + } + } + }, + "RetentionPolicyDescription": { + "description": "Describes the retention policy configured.", + "required": [ + "RetentionPolicyType" + ], + "discriminator": "RetentionPolicyType", + "properties": { + "RetentionPolicyType": { + "$ref": "#/definitions/RetentionPolicyType", + "description": "The type of retention policy. Currently only \"Basic\" retention policy is supported." + } + } + }, + "BackupStorageDescription": { + "required": [ + "StorageKind" + ], + "discriminator": "StorageKind", + "properties": { + "StorageKind": { + "$ref": "#/definitions/BackupStorageKind", + "description": "The kind of backup storage, where backups are saved." + }, + "FriendlyName": { + "type": "string", + "description": "Friendly name for this backup storage." + } + }, + "description": "Describes the parameters for the backup storage." + }, + "BackupStorageKind": { + "type": "string", + "description": "The kind of backup storage, where backups are saved.", + "enum": [ + "Invalid", + "FileShare", + "AzureBlobStore", + "DsmsAzureBlobStore", + "ManagedIdentityAzureBlobStore" + ], + "x-ms-enum": { + "name": "BackupStorageKind", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates an invalid backup storage kind. All Service Fabric enumerations have the invalid type." + }, + { + "value": "FileShare", + "description": "Indicates file/ SMB share to be used as backup storage." + }, + { + "value": "AzureBlobStore", + "description": "Indicates Azure blob store to be used as backup storage." + }, + { + "value": "DsmsAzureBlobStore", + "description": "Indicates Dsms Azure blob store to be used as backup storage." + }, + { + "value": "ManagedIdentityAzureBlobStore", + "description": "Indicates Azure blob store to be used as backup storage using managed identity." + } + ] + } + }, + "BackupScheduleDescription": { + "description": "Describes the backup schedule parameters.", + "required": [ + "ScheduleKind" + ], + "discriminator": "ScheduleKind", + "properties": { + "ScheduleKind": { + "$ref": "#/definitions/BackupScheduleKind", + "description": "The kind of backup schedule, time based or frequency based." + } + } + }, + "BackupScheduleKind": { + "type": "string", + "description": "The kind of backup schedule, time based or frequency based.", + "enum": [ + "Invalid", + "TimeBased", + "FrequencyBased" + ], + "x-ms-enum": { + "name": "BackupScheduleKind", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates an invalid backup schedule kind. All Service Fabric enumerations have the invalid type." + }, + { + "value": "TimeBased", + "description": "Indicates a time-based backup schedule." + }, + { + "value": "FrequencyBased", + "description": "Indicates a frequency-based backup schedule." + } + ] + } + }, + "ApplicationBackupConfigurationInfo": { + "description": "Backup configuration information for a specific Service Fabric application specifying what backup policy is being applied and suspend description, if any.", + "allOf": [ + { + "$ref": "#/definitions/BackupConfigurationInfo" + } + ], + "properties": { + "ApplicationName": { + "$ref": "#/definitions/ApplicationName", + "description": "The name of the application, including the 'fabric:' URI scheme." + } + }, + "x-ms-discriminator-value": "Application" + }, + "ServiceBackupConfigurationInfo": { + "description": "Backup configuration information for a specific Service Fabric service specifying what backup policy is being applied and suspend description, if any.", + "allOf": [ + { + "$ref": "#/definitions/BackupConfigurationInfo" + } + ], + "properties": { + "ServiceName": { + "$ref": "#/definitions/ServiceName", + "description": "The full name of the service with 'fabric:' URI scheme." + } + }, + "x-ms-discriminator-value": "Service" + }, + "PagedBackupConfigurationInfoList": { + "description": "The list of backup configuration information. The list is paged when all of the results cannot fit in a single message. The next set of results can be obtained by executing the same query with the continuation token provided in this list.", + "properties": { + "ContinuationToken": { + "$ref": "#/definitions/ContinuationToken", + "description": "The continuation token parameter is used to obtain next set of results. The continuation token is included in the response of the API when the results from the system do not fit in a single response. When this value is passed to the next API call, the API returns next set of results. If there are no further results, then the continuation token is not included in the response." + }, + "Items": { + "type": "array", + "description": "List of backup configuration information.", + "items": { + "$ref": "#/definitions/BackupConfigurationInfo" + } + } + } + }, + "BackupPolicyScope": { + "type": "string", + "description": "Specifies the scope at which the backup policy is applied.", + "enum": [ + "Invalid", + "Partition", + "Service", + "Application" + ], + "x-ms-enum": { + "name": "BackupPolicyScope", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates an invalid backup policy scope type. All Service Fabric enumerations have the invalid type." + }, + { + "value": "Partition", + "description": "Indicates the backup policy is applied at partition level. Hence overriding any policy which may have applied at partition's service or application level." + }, + { + "value": "Service", + "description": "Indicates the backup policy is applied at service level. All partitions of the service inherit this policy unless explicitly overridden at partition level." + }, + { + "value": "Application", + "description": "Indicates the backup policy is applied at application level. All services and partitions of the application inherit this policy unless explicitly overridden at service or partition level." + } + ] + } + }, + "BackupSuspensionScope": { + "type": "string", + "description": "Specifies the scope at which the backup suspension was applied.", + "enum": [ + "Invalid", + "Partition", + "Service", + "Application" + ], + "x-ms-enum": { + "name": "BackupSuspensionScope", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates an invalid backup suspension scope type also indicating entity is not suspended. All Service Fabric enumerations have the invalid type." + }, + { + "value": "Partition", + "description": "Indicates the backup suspension is applied at partition level." + }, + { + "value": "Service", + "description": "Indicates the backup suspension is applied at service level. All partitions of the service are hence suspended for backup." + }, + { + "value": "Application", + "description": "Indicates the backup suspension is applied at application level. All services and partitions of the application are hence suspended for backup." + } + ] + } + }, + "RestorePartitionDescription": { + "description": "Specifies the parameters needed to trigger a restore of a specific partition.", + "required": [ + "BackupId", + "BackupLocation" + ], + "properties": { + "BackupId": { + "type": "string", + "format": "uuid", + "description": "Unique backup ID." + }, + "BackupLocation": { + "type": "string", + "description": "Location of the backup relative to the backup storage specified/ configured." + }, + "BackupStorage": { + "$ref": "#/definitions/BackupStorageDescription", + "description": "Location of the backup from where the partition will be restored." + } + } + }, + "RestoreProgressInfo": { + "description": "Describes the progress of a restore operation on a partition.", + "properties": { + "RestoreState": { + "$ref": "#/definitions/RestoreState", + "description": "Represents the current state of the partition restore operation." + }, + "TimeStampUtc": { + "type": "string", + "format": "date-time", + "description": "Timestamp when operation succeeded or failed." + }, + "RestoredEpoch": { + "$ref": "#/definitions/Epoch", + "description": "Describes the epoch at which the partition is restored." + }, + "RestoredLsn": { + "type": "string", + "description": "Restored LSN." + }, + "FailureError": { + "$ref": "#/definitions/FabricErrorError", + "description": "Denotes the failure encountered in performing restore operation." + } + } + }, + "RestoreState": { + "type": "string", + "description": "Represents the current state of the partition restore operation.", + "enum": [ + "Invalid", + "Accepted", + "RestoreInProgress", + "Success", + "Failure", + "Timeout" + ], + "x-ms-enum": { + "name": "RestoreState", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates an invalid restore state. All Service Fabric enumerations have the invalid type." + }, + { + "value": "Accepted", + "description": "Operation has been validated and accepted. Restore is yet to be triggered." + }, + { + "value": "RestoreInProgress", + "description": "Restore operation has been triggered and is under process." + }, + { + "value": "Success", + "description": "Operation completed with success." + }, + { + "value": "Failure", + "description": "Operation completed with failure." + }, + { + "value": "Timeout", + "description": "Operation timed out." + } + ] + } + }, + "BackupPartitionDescription": { + "description": "Describes the parameters for triggering partition's backup.", + "properties": { + "BackupStorage": { + "$ref": "#/definitions/BackupStorageDescription", + "description": "Specifies the details of the backup storage where to save the backup." + } + } + }, + "BackupInfo": { + "description": "Represents a backup point which can be used to trigger a restore.", + "properties": { + "BackupId": { + "type": "string", + "format": "uuid", + "description": "Unique backup ID ." + }, + "BackupChainId": { + "type": "string", + "format": "uuid", + "description": "Unique backup chain ID. All backups part of the same chain has the same backup chain id. A backup chain is comprised of 1 full backup and multiple incremental backups." + }, + "ApplicationName": { + "type": "string", + "description": "Name of the Service Fabric application this partition backup belongs to." + }, + "ServiceName": { + "type": "string", + "description": "Name of the Service Fabric service this partition backup belongs to." + }, + "PartitionInformation": { + "$ref": "#/definitions/PartitionInformation", + "description": "Information about the partition to which this backup belongs to" + }, + "BackupLocation": { + "type": "string", + "description": "Location of the backup, relative to the backup store." + }, + "BackupType": { + "$ref": "#/definitions/BackupType", + "description": "Describes the type of backup, whether its full or incremental." + }, + "EpochOfLastBackupRecord": { + "$ref": "#/definitions/Epoch", + "description": "Epoch of the last record in this backup." + }, + "LsnOfLastBackupRecord": { + "type": "string", + "description": "LSN of the last record in this backup." + }, + "CreationTimeUtc": { + "type": "string", + "format": "date-time", + "description": "The date time when this backup was taken." + }, + "ServiceManifestVersion": { + "type": "string", + "description": "Manifest Version of the service this partition backup belongs to." + }, + "FailureError": { + "$ref": "#/definitions/FabricErrorError", + "description": "Denotes the failure encountered in getting backup point information." + } + } + }, + "PagedBackupInfoList": { + "description": "The list of backups. The list is paged when all of the results cannot fit in a single message. The next set of results can be obtained by executing the same query with the continuation token provided in this list.", + "properties": { + "ContinuationToken": { + "$ref": "#/definitions/ContinuationToken", + "description": "The continuation token parameter is used to obtain next set of results. The continuation token is included in the response of the API when the results from the system do not fit in a single response. When this value is passed to the next API call, the API returns next set of results. If there are no further results, then the continuation token is not included in the response." + }, + "Items": { + "type": "array", + "description": "List of backup information.", + "items": { + "$ref": "#/definitions/BackupInfo" + } + } + } + }, + "BackupType": { + "type": "string", + "description": "Describes the type of backup, whether its full or incremental.", + "enum": [ + "Invalid", + "Full", + "Incremental" + ], + "x-ms-enum": { + "name": "BackupType", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates an invalid backup type. All Service Fabric enumerations have the invalid type." + }, + { + "value": "Full", + "description": "Indicates a full backup." + }, + { + "value": "Incremental", + "description": "Indicates an incremental backup. A backup chain is comprised of a full backup followed by 0 or more incremental backups." + } + ] + } + }, + "AzureBlobBackupStorageDescription": { + "allOf": [ + { + "$ref": "#/definitions/BackupStorageDescription" + } + ], + "x-ms-discriminator-value": "AzureBlobStore", + "required": [ + "ConnectionString", + "ContainerName" + ], + "properties": { + "ConnectionString": { + "type": "string", + "description": "The connection string to connect to the Azure blob store." + }, + "ContainerName": { + "type": "string", + "description": "The name of the container in the blob store to store and enumerate backups from." + } + }, + "description": "Describes the parameters for Azure blob store used for storing and enumerating backups." + }, + "FileShareBackupStorageDescription": { + "allOf": [ + { + "$ref": "#/definitions/BackupStorageDescription" + } + ], + "x-ms-discriminator-value": "FileShare", + "required": [ + "Path" + ], + "description": "Describes the parameters for file share storage used for storing or enumerating backups.", + "properties": { + "Path": { + "type": "string", + "description": "UNC path of the file share where to store or enumerate backups from." + }, + "PrimaryUserName": { + "type": "string", + "description": "Primary user name to access the file share." + }, + "PrimaryPassword": { + "type": "string", + "description": "Primary password to access the share location." + }, + "SecondaryUserName": { + "type": "string", + "description": "Secondary user name to access the file share." + }, + "SecondaryPassword": { + "type": "string", + "description": "Secondary password to access the share location" + } + } + }, + "DsmsAzureBlobBackupStorageDescription": { + "allOf": [ + { + "$ref": "#/definitions/BackupStorageDescription" + } + ], + "x-ms-discriminator-value": "DsmsAzureBlobStore", + "required": [ + "StorageCredentialsSourceLocation", + "ContainerName" + ], + "properties": { + "StorageCredentialsSourceLocation": { + "type": "string", + "description": "The source location of the storage credentials to connect to the Dsms Azure blob store." + }, + "ContainerName": { + "type": "string", + "description": "The name of the container in the blob store to store and enumerate backups from." + } + }, + "description": "Describes the parameters for Dsms Azure blob store used for storing and enumerating backups." + }, + "ManagedIdentityAzureBlobBackupStorageDescription": { + "allOf": [ + { + "$ref": "#/definitions/BackupStorageDescription" + } + ], + "x-ms-discriminator-value": "ManagedIdentityAzureBlobStore", + "required": [ + "BlobServiceUri", + "ContainerName", + "ManagedIdentityType" + ], + "properties": { + "ManagedIdentityType": { + "$ref": "#/definitions/ManagedIdentityType", + "description": "The type of managed identity to be used to connect to Azure Blob Store via Managed Identity." + }, + "BlobServiceUri": { + "type": "string", + "description": "The Blob Service Uri to connect to the Azure blob store.." + }, + "ContainerName": { + "type": "string", + "description": "The name of the container in the blob store to store and enumerate backups from." + } + }, + "description": "Describes the parameters for Azure blob store (connected using managed identity) used for storing and enumerating backups." + }, + "ManagedIdentityType": { + "type": "string", + "description": "The type of managed identity to be used to connect to Azure Blob Store via Managed Identity.", + "enum": [ + "Invalid", + "VMSS", + "Cluster" + ], + "x-ms-enum": { + "name": "ManagedIdentityType", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates an invalid managed identity type. All Service Fabric enumerations have the invalid type." + }, + { + "value": "VMSS", + "description": "Indicates VMSS managed identity should be used to connect to Azure blob store." + }, + { + "value": "Cluster", + "description": "Indicates cluster managed identity should be used to connect to Azure blob store." + } + ] + } + }, + "FrequencyBasedBackupScheduleDescription": { + "description": "Describes the frequency based backup schedule.", + "allOf": [ + { + "$ref": "#/definitions/BackupScheduleDescription" + } + ], + "x-ms-discriminator-value": "FrequencyBased", + "required": [ + "Interval" + ], + "properties": { + "Interval": { + "type": "string", + "format": "duration", + "description": "Defines the interval with which backups are periodically taken. It should be specified in ISO8601 format. Timespan in seconds is not supported and will be ignored while creating the policy." + } + } + }, + "TimeBasedBackupScheduleDescription": { + "description": "Describes the time based backup schedule.", + "allOf": [ + { + "$ref": "#/definitions/BackupScheduleDescription" + } + ], + "x-ms-discriminator-value": "TimeBased", + "required": [ + "ScheduleFrequencyType", + "RunTimes" + ], + "properties": { + "ScheduleFrequencyType": { + "$ref": "#/definitions/BackupScheduleFrequencyType", + "description": "Describes the frequency with which to run the time based backup schedule." + }, + "RunDays": { + "$ref": "#/definitions/DayOfWeekList", + "description": "List of days of a week when to trigger the periodic backup. This is valid only when the backup schedule frequency type is weekly." + }, + "RunTimes": { + "$ref": "#/definitions/TimeList", + "description": "Represents the list of exact time during the day in ISO8601 format. Like '19:00:00' will represent '7PM' during the day. Date specified along with time will be ignored." + } + } + }, + "BackupScheduleFrequencyType": { + "type": "string", + "description": "Describes the frequency with which to run the time based backup schedule.", + "enum": [ + "Invalid", + "Daily", + "Weekly" + ], + "x-ms-enum": { + "name": "BackupScheduleFrequencyType", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates an invalid backup schedule frequency type. All Service Fabric enumerations have the invalid type." + }, + { + "value": "Daily", + "description": "Indicates that the time based backup schedule is repeated at a daily frequency." + }, + { + "value": "Weekly", + "description": "Indicates that the time based backup schedule is repeated at a weekly frequency." + } + ] + } + }, + "TimeList": { + "type": "array", + "items": { + "type": "string", + "format": "date-time" + }, + "description": "Represents the list of exact time during the day in ISO8601 format. Like '19:00:00' will represent '7PM' during the day. Date specified along with time will be ignored." + }, + "DayOfWeekList": { + "type": "array", + "items": { + "$ref": "#/definitions/DayOfWeek" + }, + "description": "List of days of a week when to trigger the periodic backup. This is valid only when the backup schedule frequency type is weekly." + }, + "DayOfWeek": { + "type": "string", + "description": "Describes the days in a week.", + "enum": [ + "Sunday", + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday" + ], + "x-ms-enum": { + "name": "DayOfWeek", + "modelAsString": true, + "values": [ + { + "value": "Sunday", + "description": "Indicates the Day referred is Sunday." + }, + { + "value": "Monday", + "description": "Indicates the Day referred is Monday." + }, + { + "value": "Tuesday", + "description": "Indicates the Day referred is Tuesday." + }, + { + "value": "Wednesday", + "description": "Indicates the Day referred is Wednesday." + }, + { + "value": "Thursday", + "description": "Indicates the Day referred is Thursday." + }, + { + "value": "Friday", + "description": "Indicates the Day referred is Friday." + }, + { + "value": "Saturday", + "description": "Indicates the Day referred is Saturday." + } + ] + } + }, + "BackupProgressInfo": { + "description": "Describes the progress of a partition's backup.", + "properties": { + "BackupState": { + "$ref": "#/definitions/BackupState", + "description": "Represents the current state of the partition backup operation." + }, + "TimeStampUtc": { + "type": "string", + "format": "date-time", + "description": "TimeStamp in UTC when operation succeeded or failed." + }, + "BackupId": { + "type": "string", + "format": "uuid", + "description": "Unique ID of the newly created backup." + }, + "BackupLocation": { + "type": "string", + "description": "Location, relative to the backup store, of the newly created backup." + }, + "EpochOfLastBackupRecord": { + "$ref": "#/definitions/Epoch", + "description": "Specifies the epoch of the last record included in backup." + }, + "LsnOfLastBackupRecord": { + "type": "string", + "description": "The LSN of last record included in backup." + }, + "FailureError": { + "$ref": "#/definitions/FabricErrorError", + "description": "Denotes the failure encountered in performing backup operation." + } + } + }, + "BackupConfigurationInfo": { + "discriminator": "Kind", + "description": "Describes the backup configuration information.", + "properties": { + "Kind": { + "$ref": "#/definitions/BackupEntityKind", + "description": "The entity type of a Service Fabric entity such as Application, Service or a Partition where periodic backups can be enabled." + }, + "PolicyName": { + "description": "The name of the backup policy which is applicable to this Service Fabric application or service or partition.", + "type": "string" + }, + "PolicyInheritedFrom": { + "$ref": "#/definitions/BackupPolicyScope", + "description": "Specifies the scope at which the backup policy is applied." + }, + "SuspensionInfo": { + "$ref": "#/definitions/BackupSuspensionInfo", + "description": "Describes the backup suspension details." + } + }, + "required": [ + "Kind" + ] + }, + "PartitionBackupConfigurationInfo": { + "description": "Backup configuration information, for a specific partition, specifying what backup policy is being applied and suspend description, if any.", + "allOf": [ + { + "$ref": "#/definitions/BackupConfigurationInfo" + } + ], + "properties": { + "ServiceName": { + "$ref": "#/definitions/ServiceName", + "description": "The full name of the service with 'fabric:' URI scheme." + }, + "PartitionId": { + "$ref": "#/definitions/PartitionId", + "description": "The partition ID identifying the partition." + } + }, + "x-ms-discriminator-value": "Partition" + }, + "BackupState": { + "type": "string", + "description": "Represents the current state of the partition backup operation.", + "enum": [ + "Invalid", + "Accepted", + "BackupInProgress", + "Success", + "Failure", + "Timeout" + ], + "x-ms-enum": { + "name": "BackupState", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates an invalid backup state. All Service Fabric enumerations have the invalid type." + }, + { + "value": "Accepted", + "description": "Operation has been validated and accepted. Backup is yet to be triggered." + }, + { + "value": "BackupInProgress", + "description": "Backup operation has been triggered and is under process." + }, + { + "value": "Success", + "description": "Operation completed with success." + }, + { + "value": "Failure", + "description": "Operation completed with failure." + }, + { + "value": "Timeout", + "description": "Operation timed out." + } + ] + } + }, + "BackupEntity": { + "discriminator": "EntityKind", + "description": "Describes the Service Fabric entity that is configured for backup.", + "properties": { + "EntityKind": { + "$ref": "#/definitions/BackupEntityKind", + "description": "The entity type of a Service Fabric entity such as Application, Service or a Partition where periodic backups can be enabled." + } + }, + "required": [ + "EntityKind" + ] + }, + "ApplicationBackupEntity": { + "description": "Identifies the Service Fabric application which is being backed up.", + "allOf": [ + { + "$ref": "#/definitions/BackupEntity" + } + ], + "properties": { + "ApplicationName": { + "$ref": "#/definitions/ApplicationName", + "description": "The name of the application, including the 'fabric:' URI scheme." + } + }, + "x-ms-discriminator-value": "Application" + }, + "ServiceBackupEntity": { + "description": "Identifies the Service Fabric stateful service which is being backed up.", + "allOf": [ + { + "$ref": "#/definitions/BackupEntity" + } + ], + "properties": { + "ServiceName": { + "$ref": "#/definitions/ServiceName", + "description": "The full name of the service with 'fabric:' URI scheme." + } + }, + "x-ms-discriminator-value": "Service" + }, + "PartitionBackupEntity": { + "description": "Identifies the Service Fabric stateful partition which is being backed up.", + "allOf": [ + { + "$ref": "#/definitions/BackupEntity" + } + ], + "properties": { + "ServiceName": { + "$ref": "#/definitions/ServiceName", + "description": "The full name of the service with 'fabric:' URI scheme." + }, + "PartitionId": { + "$ref": "#/definitions/PartitionId", + "description": "The partition ID identifying the partition." + } + }, + "x-ms-discriminator-value": "Partition" + }, + "EnableBackupDescription": { + "description": "Specifies the parameters needed to enable periodic backup.", + "required": [ + "BackupPolicyName" + ], + "properties": { + "BackupPolicyName": { + "type": "string", + "description": "Name of the backup policy to be used for enabling periodic backups." + } + } + }, + "PagedBackupEntityList": { + "description": "The list of backup entities that are being periodically backed. The list is paged when all of the results cannot fit in a single message. The next set of results can be obtained by executing the same query with the continuation token provided in this list.", + "properties": { + "ContinuationToken": { + "$ref": "#/definitions/ContinuationToken", + "description": "The continuation token parameter is used to obtain next set of results. The continuation token is included in the response of the API when the results from the system do not fit in a single response. When this value is passed to the next API call, the API returns next set of results. If there are no further results, then the continuation token is not included in the response." + }, + "Items": { + "type": "array", + "description": "List of backup entity information.", + "items": { + "$ref": "#/definitions/BackupEntity" + } + } + } + }, + "BackupSuspensionInfo": { + "description": "Describes the backup suspension details.", + "properties": { + "IsSuspended": { + "type": "boolean", + "description": "Indicates whether periodic backup is suspended at this level or not." + }, + "SuspensionInheritedFrom": { + "$ref": "#/definitions/BackupSuspensionScope", + "description": "Specifies the scope at which the backup suspension was applied." + } + } + }, + "BackupEntityKind": { + "type": "string", + "description": "The entity type of a Service Fabric entity such as Application, Service or a Partition where periodic backups can be enabled.", + "enum": [ + "Invalid", + "Partition", + "Service", + "Application" + ], + "x-ms-enum": { + "name": "BackupEntityKind", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates an invalid entity kind. All Service Fabric enumerations have the invalid type." + }, + { + "value": "Partition", + "description": "Indicates the entity is a Service Fabric partition." + }, + { + "value": "Service", + "description": "Indicates the entity is a Service Fabric service." + }, + { + "value": "Application", + "description": "Indicates the entity is a Service Fabric application." + } + ] + } + }, + "GetBackupByStorageQueryDescription": { + "description": "Describes additional filters to be applied, while listing backups, and backup storage details from where to fetch the backups.", + "required": [ + "Storage", + "BackupEntity" + ], + "properties": { + "StartDateTimeFilter": { + "type": "string", + "format": "date-time", + "description": "Specifies the start date time in ISO8601 from which to enumerate backups. If not specified, backups are enumerated from the beginning." + }, + "EndDateTimeFilter": { + "type": "string", + "format": "date-time", + "description": "Specifies the end date time in ISO8601 till which to enumerate backups. If not specified, backups are enumerated till the end." + }, + "Latest": { + "type": "boolean", + "default": false, + "description": "If specified as true, gets the most recent backup (within the specified time range) for every partition under the specified backup entity." + }, + "Storage": { + "$ref": "#/definitions/BackupStorageDescription", + "description": "Describes the parameters for the backup storage from where to enumerate backups. This is optional and by default backups are enumerated from the backup storage where this backup entity is currently being backed up (as specified in backup policy). This parameter is useful to be able to enumerate backups from another cluster where you may intend to restore." + }, + "BackupEntity": { + "$ref": "#/definitions/BackupEntity", + "description": "Indicates the entity for which to enumerate backups." + } + } + }, + "NodeImpact": { + "description": "Describes the expected impact of a repair to a particular node.\n\nThis type supports the Service Fabric platform; it is not meant to be used directly from your code.", + "properties": { + "NodeName": { + "type": "string", + "description": "The name of the impacted node." + }, + "ImpactLevel": { + "type": "string", + "enum": [ + "Invalid", + "None", + "Restart", + "RemoveData", + "RemoveNode" + ], + "description": "The level of impact expected.", + "x-ms-enum": { + "name": "ImpactLevel", + "modelAsString": true, + "values": [ + { + "value": "Invalid" + }, + { + "value": "None" + }, + { + "value": "Restart" + }, + { + "value": "RemoveData" + }, + { + "value": "RemoveNode" + } + ] + } + } + }, + "required": [ + "NodeName" + ] + }, + "NodeRepairImpactDescription": { + "description": "Describes the expected impact of a repair on a set of nodes.\n\nThis type supports the Service Fabric platform; it is not meant to be used directly from your code.", + "x-ms-discriminator-value": "Node", + "allOf": [ + { + "$ref": "#/definitions/RepairImpactDescriptionBase" + } + ], + "properties": { + "NodeImpactList": { + "type": "array", + "items": { + "$ref": "#/definitions/NodeImpact" + }, + "description": "The list of nodes impacted by a repair action and their respective expected impact." + } + } + }, + "NodeRepairTargetDescription": { + "description": "Describes the list of nodes targeted by a repair action.\n\nThis type supports the Service Fabric platform; it is not meant to be used directly from your code.", + "x-ms-discriminator-value": "Node", + "allOf": [ + { + "$ref": "#/definitions/RepairTargetDescriptionBase" + } + ], + "properties": { + "NodeNames": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of nodes targeted by a repair action." + } + } + }, + "RepairImpactDescriptionBase": { + "discriminator": "Kind", + "description": "Describes the expected impact of executing a repair task.\n\nThis type supports the Service Fabric platform; it is not meant to be used directly from your code.", + "properties": { + "Kind": { + "$ref": "#/definitions/RepairImpactKind", + "description": "The kind of repair impact represented by the current object." + } + }, + "required": [ + "Kind" + ] + }, + "RepairImpactKind": { + "description": "Specifies the kind of the impact. This type supports the Service Fabric platform; it is not meant to be used directly from your code.'", + "type": "string", + "enum": [ + "Invalid", + "Node" + ], + "x-ms-enum": { + "name": "RepairImpactKind", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "The repair impact is not valid or is of an unknown type." + }, + { + "value": "Node", + "description": "The repair impact affects a set of Service Fabric nodes." + } + ] + } + }, + "RepairTargetDescriptionBase": { + "discriminator": "Kind", + "description": "Describes the entities targeted by a repair action.\n\nThis type supports the Service Fabric platform; it is not meant to be used directly from your code.", + "properties": { + "Kind": { + "$ref": "#/definitions/RepairTargetKind", + "description": "The kind of repair target described by the current object." + } + }, + "required": [ + "Kind" + ] + }, + "RepairTargetKind": { + "description": "Specifies the kind of the repair target. This type supports the Service Fabric platform; it is not meant to be used directly from your code.'", + "type": "string", + "enum": [ + "Invalid", + "Node" + ], + "x-ms-enum": { + "name": "RepairTargetKind", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "The repair target is not valid or is of an unknown type." + }, + { + "value": "Node", + "description": "The repair target is a set of Service Fabric nodes." + } + ] + } + }, + "RepairTask": { + "description": "Represents a repair task, which includes information about what kind of repair was requested, what its progress is, and what its final result was.\n\nThis type supports the Service Fabric platform; it is not meant to be used directly from your code.", + "properties": { + "TaskId": { + "type": "string", + "description": "The ID of the repair task." + }, + "Version": { + "type": "string", + "description": "The version of the repair task.\nWhen creating a new repair task, the version must be set to zero. When updating a repair task,\nthe version is used for optimistic concurrency checks. If the version is\nset to zero, the update will not check for write conflicts. If the version is set to a non-zero value, then the\nupdate will only succeed if the actual current version of the repair task matches this value." + }, + "Description": { + "type": "string", + "description": "A description of the purpose of the repair task, or other informational details.\nMay be set when the repair task is created, and is immutable once set." + }, + "State": { + "type": "string", + "enum": [ + "Invalid", + "Created", + "Claimed", + "Preparing", + "Approved", + "Executing", + "Restoring", + "Completed" + ], + "description": "The workflow state of the repair task. Valid initial states are Created, Claimed, and Preparing.", + "x-ms-enum": { + "name": "State", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates that the repair task state is invalid. All Service Fabric enumerations have the invalid value." + }, + { + "value": "Created", + "description": "Indicates that the repair task has been created." + }, + { + "value": "Claimed", + "description": "Indicates that the repair task has been claimed by a repair executor." + }, + { + "value": "Preparing", + "description": "Indicates that the Repair Manager is preparing the system to handle the impact of the repair task, usually by taking resources offline gracefully." + }, + { + "value": "Approved", + "description": "Indicates that the repair task has been approved by the Repair Manager and is safe to execute." + }, + { + "value": "Executing", + "description": "Indicates that execution of the repair task is in progress." + }, + { + "value": "Restoring", + "description": "Indicates that the Repair Manager is restoring the system to its pre-repair state, usually by bringing resources back online." + }, + { + "value": "Completed", + "description": "Indicates that the repair task has completed, and no further state changes will occur." + } + ] + } + }, + "Flags": { + "type": "integer", + "description": "A bitwise-OR of the following values, which gives additional details about the status of the repair task.\n- 1 - Cancellation of the repair has been requested\n- 2 - Abort of the repair has been requested\n- 4 - Approval of the repair was forced via client request" + }, + "Action": { + "type": "string", + "description": "The requested repair action. Must be specified when the repair task is created, and is immutable once set." + }, + "Target": { + "$ref": "#/definitions/RepairTargetDescriptionBase", + "description": "The target object determines what actions the system will take to prepare for the impact of the repair, prior to approving execution of the repair.\nMay be set when the repair task is created, and is immutable once set." + }, + "Executor": { + "type": "string", + "description": "The name of the repair executor. Must be specified in Claimed and later states, and is immutable once set." + }, + "ExecutorData": { + "type": "string", + "description": "A data string that the repair executor can use to store its internal state." + }, + "Impact": { + "$ref": "#/definitions/RepairImpactDescriptionBase", + "description": "The impact object determines what actions the system will take to prepare for the impact of the repair, prior to approving execution of the repair.\nImpact must be specified by the repair executor when transitioning to the Preparing state, and is immutable once set." + }, + "ResultStatus": { + "type": "string", + "enum": [ + "Invalid", + "Succeeded", + "Cancelled", + "Interrupted", + "Failed", + "Pending" + ], + "description": "A value describing the overall result of the repair task execution. Must be specified in the Restoring and later states, and is immutable once set.", + "x-ms-enum": { + "name": "ResultStatus", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates that the repair task result is invalid. All Service Fabric enumerations have the invalid value." + }, + { + "value": "Succeeded", + "description": "Indicates that the repair task completed execution successfully." + }, + { + "value": "Cancelled", + "description": "Indicates that the repair task was cancelled prior to execution." + }, + { + "value": "Interrupted", + "description": "Indicates that execution of the repair task was interrupted by a cancellation request after some work had already been performed." + }, + { + "value": "Failed", + "description": "Indicates that there was a failure during execution of the repair task. Some work may have been performed." + }, + { + "value": "Pending", + "description": "Indicates that the repair task result is not yet available, because the repair task has not finished executing." + } + ] + } + }, + "ResultCode": { + "type": "integer", + "description": "A numeric value providing additional details about the result of the repair task execution.\nMay be specified in the Restoring and later states, and is immutable once set." + }, + "ResultDetails": { + "type": "string", + "description": "A string providing additional details about the result of the repair task execution.\nMay be specified in the Restoring and later states, and is immutable once set." + }, + "History": { + "$ref": "#/definitions/RepairTaskHistory", + "description": "An object that contains timestamps of the repair task's state transitions.\nThese timestamps are updated by the system, and cannot be directly modified." + }, + "PreparingHealthCheckState": { + "$ref": "#/definitions/RepairTaskHealthCheckState", + "description": "The workflow state of the health check when the repair task is in the Preparing state." + }, + "RestoringHealthCheckState": { + "$ref": "#/definitions/RepairTaskHealthCheckState", + "description": "The workflow state of the health check when the repair task is in the Restoring state." + }, + "PerformPreparingHealthCheck": { + "type": "boolean", + "description": "A value to determine if health checks will be performed when the repair task enters the Preparing state." + }, + "PerformRestoringHealthCheck": { + "type": "boolean", + "description": "A value to determine if health checks will be performed when the repair task enters the Restoring state." + } + }, + "required": [ + "TaskId", + "Action", + "State" + ] + }, + "RepairTaskApproveDescription": { + "description": "Describes a request for forced approval of a repair task.\n\nThis type supports the Service Fabric platform; it is not meant to be used directly from your code.", + "properties": { + "TaskId": { + "type": "string", + "description": "The ID of the repair task." + }, + "Version": { + "type": "string", + "description": "The current version number of the repair task. If non-zero, then the request will only succeed if this value matches the actual current version of the repair task. If zero, then no version check is performed." + } + }, + "required": [ + "TaskId" + ] + }, + "RepairTaskCancelDescription": { + "description": "Describes a request to cancel a repair task.\n\nThis type supports the Service Fabric platform; it is not meant to be used directly from your code.", + "properties": { + "TaskId": { + "type": "string", + "description": "The ID of the repair task." + }, + "Version": { + "type": "string", + "description": "The current version number of the repair task. If non-zero, then the request will only succeed if this value matches the actual current version of the repair task. If zero, then no version check is performed." + }, + "RequestAbort": { + "type": "boolean", + "description": "_True_ if the repair should be stopped as soon as possible even if it has already started executing. _False_ if the repair should be cancelled only if execution has not yet started." + } + }, + "required": [ + "TaskId" + ] + }, + "RepairTaskDeleteDescription": { + "description": "Describes a request to delete a completed repair task.\n\nThis type supports the Service Fabric platform; it is not meant to be used directly from your code.", + "properties": { + "TaskId": { + "type": "string", + "description": "The ID of the completed repair task to be deleted." + }, + "Version": { + "type": "string", + "description": "The current version number of the repair task. If non-zero, then the request will only succeed if this value matches the actual current version of the repair task. If zero, then no version check is performed." + } + }, + "required": [ + "TaskId" + ] + }, + "RepairTaskHealthCheckState": { + "description": "Specifies the workflow state of a repair task's health check. This type supports the Service Fabric platform; it is not meant to be used directly from your code.", + "type": "string", + "enum": [ + "NotStarted", + "InProgress", + "Succeeded", + "Skipped", + "TimedOut" + ], + "x-ms-enum": { + "name": "RepairTaskHealthCheckState", + "modelAsString": true, + "values": [ + { + "value": "NotStarted", + "description": "Indicates that the health check has not started." + }, + { + "value": "InProgress", + "description": "Indicates that the health check is in progress." + }, + { + "value": "Succeeded", + "description": "Indicates that the health check succeeded." + }, + { + "value": "Skipped", + "description": "Indicates that the health check was skipped." + }, + { + "value": "TimedOut", + "description": "Indicates that the health check timed out." + } + ] + } + }, + "RepairTaskHistory": { + "description": "A record of the times when the repair task entered each state.\n\nThis type supports the Service Fabric platform; it is not meant to be used directly from your code.", + "properties": { + "CreatedUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "The time when the repair task entered the Created state." + }, + "ClaimedUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "The time when the repair task entered the Claimed state." + }, + "PreparingUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "The time when the repair task entered the Preparing state." + }, + "ApprovedUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "The time when the repair task entered the Approved state" + }, + "ExecutingUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "The time when the repair task entered the Executing state" + }, + "RestoringUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "The time when the repair task entered the Restoring state" + }, + "CompletedUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "The time when the repair task entered the Completed state" + }, + "PreparingHealthCheckStartUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "The time when the repair task started the health check in the Preparing state." + }, + "PreparingHealthCheckEndUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "The time when the repair task completed the health check in the Preparing state." + }, + "RestoringHealthCheckStartUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "The time when the repair task started the health check in the Restoring state." + }, + "RestoringHealthCheckEndUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "The time when the repair task completed the health check in the Restoring state." + } + } + }, + "RepairTaskList": { + "type": "array", + "description": "A list of repair tasks.", + "items": { + "$ref": "#/definitions/RepairTask" + } + }, + "RepairTaskUpdateHealthPolicyDescription": { + "description": "Describes a request to update the health policy of a repair task.\n\nThis type supports the Service Fabric platform; it is not meant to be used directly from your code.", + "properties": { + "TaskId": { + "type": "string", + "description": "The ID of the repair task to be updated." + }, + "Version": { + "type": "string", + "description": "The current version number of the repair task. If non-zero, then the request will only succeed if this value matches the actual current value of the repair task. If zero, then no version check is performed." + }, + "PerformPreparingHealthCheck": { + "type": "boolean", + "description": "A boolean indicating if health check is to be performed in the Preparing stage of the repair task. If not specified the existing value should not be altered. Otherwise, specify the desired new value." + }, + "PerformRestoringHealthCheck": { + "type": "boolean", + "description": "A boolean indicating if health check is to be performed in the Restoring stage of the repair task. If not specified the existing value should not be altered. Otherwise, specify the desired new value." + } + }, + "required": [ + "TaskId" + ] + }, + "RepairTaskUpdateInfo": { + "description": "Describes the result of an operation that created or updated a repair task.\n\nThis type supports the Service Fabric platform; it is not meant to be used directly from your code.", + "properties": { + "Version": { + "type": "string", + "description": "The new version of the repair task." + } + }, + "required": [ + "Version" + ] + }, + "ReconfigurationInformation": { + "description": "Information about current reconfiguration like phase, type, previous configuration role of replica and reconfiguration start date time.", + "properties": { + "PreviousConfigurationRole": { + "$ref": "#/definitions/ReplicaRole", + "description": "Replica role before reconfiguration started." + }, + "ReconfigurationPhase": { + "$ref": "#/definitions/ReconfigurationPhase", + "description": "Current phase of ongoing reconfiguration. If no reconfiguration is taking place then this value will be \"None\"." + }, + "ReconfigurationType": { + "$ref": "#/definitions/ReconfigurationType", + "description": "Type of current ongoing reconfiguration. If no reconfiguration is taking place then this value will be \"None\"." + }, + "ReconfigurationStartTimeUtc": { + "type": "string", + "format": "date-time", + "description": "Start time (in UTC) of the ongoing reconfiguration. If no reconfiguration is taking place then this value will be zero date-time." + } + } + }, + "ReconfigurationPhase": { + "type": "string", + "description": "The reconfiguration phase of a replica of a stateful service.", + "enum": [ + "Unknown", + "None", + "Phase0", + "Phase1", + "Phase2", + "Phase3", + "Phase4", + "AbortPhaseZero" + ], + "x-ms-enum": { + "name": "ReconfigurationPhase", + "modelAsString": true, + "values": [ + { + "value": "Unknown", + "description": "Indicates the invalid reconfiguration phase." + }, + { + "value": "None", + "description": "Specifies that there is no reconfiguration in progress." + }, + { + "value": "Phase0", + "description": "Refers to the phase where the reconfiguration is transferring data from the previous primary to the new primary." + }, + { + "value": "Phase1", + "description": "Refers to the phase where the reconfiguration is querying the replica set for the progress." + }, + { + "value": "Phase2", + "description": "Refers to the phase where the reconfiguration is ensuring that data from the current primary is present in a majority of the replica set." + }, + { + "value": "Phase3", + "description": "This phase is for internal use only." + }, + { + "value": "Phase4", + "description": "This phase is for internal use only." + }, + { + "value": "AbortPhaseZero", + "description": "This phase is for internal use only." + } + ] + } + }, + "ReconfigurationType": { + "type": "string", + "description": "The type of reconfiguration for replica of a stateful service.", + "enum": [ + "Unknown", + "SwapPrimary", + "Failover", + "Other" + ], + "x-ms-enum": { + "name": "ReconfigurationType", + "modelAsString": true, + "values": [ + { + "value": "Unknown", + "description": "Indicates the invalid reconfiguration type." + }, + { + "value": "SwapPrimary", + "description": "Specifies that the primary replica is being swapped with a different replica." + }, + { + "value": "Failover", + "description": "Reconfiguration triggered in response to a primary going down. This could be due to many reasons such as primary replica crashing etc." + }, + { + "value": "Other", + "description": "Reconfigurations where the primary replica is not changing." + } + ] + } + }, + "InfrastructureServiceResponse": { + "type": "string", + "format": "binary", + "description": "This is a weakly-typed response stream to the client. It contains the JSON response from the infrastructure service without deserialization.\nThe content of the response depends on which command was issued to the infrastructure service." + }, + "UploadChunkRange": { + "description": "Information about which portion of the file to upload.", + "properties": { + "StartPosition": { + "type": "string", + "description": "The start position of the portion of the file. It's represented by the number of bytes." + }, + "EndPosition": { + "type": "string", + "description": "The end position of the portion of the file. It's represented by the number of bytes." + } + } + }, + "UploadSessionInfo": { + "description": "Information about an image store upload session. A session is associated with a relative path in the image store.", + "properties": { + "StoreRelativePath": { + "type": "string", + "description": "The remote location within image store. This path is relative to the image store root." + }, + "SessionId": { + "type": "string", + "format": "uuid", + "description": "A unique ID of the upload session. A session ID can be reused only if the session was committed or removed." + }, + "ModifiedDate": { + "type": "string", + "format": "date-time", + "description": "The date and time when the upload session was last modified." + }, + "FileSize": { + "type": "string", + "description": "The size in bytes of the uploading file." + }, + "ExpectedRanges": { + "type": "array", + "items": { + "$ref": "#/definitions/UploadChunkRange" + }, + "description": "List of chunk ranges that image store has not received yet." + } + } + }, + "UploadSession": { + "description": "Information about a image store upload session", + "properties": { + "UploadSessions": { + "type": "array", + "items": { + "$ref": "#/definitions/UploadSessionInfo" + }, + "description": "When querying upload session by upload session ID, the result contains only one upload session. When querying upload session by image store relative path, the result might contain multiple upload sessions." + } + } + }, + "ScalingPolicyDescription": { + "description": "Describes how the scaling should be performed", + "required": [ + "ScalingTrigger", + "ScalingMechanism" + ], + "properties": { + "ScalingTrigger": { + "$ref": "#/definitions/ScalingTriggerDescription", + "description": "Specifies the trigger associated with this scaling policy" + }, + "ScalingMechanism": { + "$ref": "#/definitions/ScalingMechanismDescription", + "description": "Specifies the mechanism associated with this scaling policy" + } + } + }, + "ScalingPolicyDescriptionList": { + "type": "array", + "items": { + "$ref": "#/definitions/ScalingPolicyDescription" + }, + "description": "A list that describes the scaling policies." + }, + "ScalingTriggerDescription": { + "discriminator": "Kind", + "description": "Describes the trigger for performing a scaling operation.", + "required": [ + "Kind" + ], + "properties": { + "Kind": { + "$ref": "#/definitions/ScalingTriggerKind", + "description": "Specifies the kind of scaling trigger" + } + } + }, + "ScalingMechanismDescription": { + "discriminator": "Kind", + "description": "Describes the mechanism for performing a scaling operation.", + "required": [ + "Kind" + ], + "properties": { + "Kind": { + "$ref": "#/definitions/ScalingMechanismKind", + "description": "Specifies the kind of scaling mechanism" + } + } + }, + "ScalingTriggerKind": { + "type": "string", + "description": "Enumerates the ways that a service can be scaled.", + "enum": [ + "Invalid", + "AveragePartitionLoad", + "AverageServiceLoad" + ], + "x-ms-enum": { + "name": "ScalingTriggerKind", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the scaling trigger is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "AveragePartitionLoad", + "description": "Indicates a trigger where scaling decisions are made based on average load of a partition. The value is 1." + }, + { + "value": "AverageServiceLoad", + "description": "Indicates a trigger where scaling decisions are made based on average load of a service. The value is 2." + } + ] + } + }, + "ScalingMechanismKind": { + "type": "string", + "description": "Enumerates the ways that a service can be scaled.", + "enum": [ + "Invalid", + "PartitionInstanceCount", + "AddRemoveIncrementalNamedPartition" + ], + "x-ms-enum": { + "name": "ScalingMechanismKind", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the scaling mechanism is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "PartitionInstanceCount", + "description": "Indicates a mechanism for scaling where new instances are added or removed from a partition. The value is 1." + }, + { + "value": "AddRemoveIncrementalNamedPartition", + "description": "Indicates a mechanism for scaling where new named partitions are added or removed from a service. The value is 2." + } + ] + } + }, + "AveragePartitionLoadScalingTrigger": { + "description": "Represents a scaling trigger related to an average load of a metric/resource of a partition.", + "allOf": [ + { + "$ref": "#/definitions/ScalingTriggerDescription" + } + ], + "x-ms-discriminator-value": "AveragePartitionLoad", + "required": [ + "MetricName", + "LowerLoadThreshold", + "UpperLoadThreshold", + "ScaleIntervalInSeconds" + ], + "properties": { + "MetricName": { + "type": "string", + "description": "The name of the metric for which usage should be tracked." + }, + "LowerLoadThreshold": { + "type": "string", + "format": "double", + "description": "The lower limit of the load below which a scale in operation should be performed." + }, + "UpperLoadThreshold": { + "type": "string", + "format": "double", + "description": "The upper limit of the load beyond which a scale out operation should be performed." + }, + "ScaleIntervalInSeconds": { + "type": "integer", + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "description": "The period in seconds on which a decision is made whether to scale or not." + } + } + }, + "AverageServiceLoadScalingTrigger": { + "description": "Represents a scaling policy related to an average load of a metric/resource of a service.", + "allOf": [ + { + "$ref": "#/definitions/ScalingTriggerDescription" + } + ], + "x-ms-discriminator-value": "AverageServiceLoad", + "required": [ + "MetricName", + "LowerLoadThreshold", + "UpperLoadThreshold", + "ScaleIntervalInSeconds", + "UseOnlyPrimaryLoad" + ], + "properties": { + "MetricName": { + "type": "string", + "description": "The name of the metric for which usage should be tracked." + }, + "LowerLoadThreshold": { + "type": "string", + "format": "double", + "description": "The lower limit of the load below which a scale in operation should be performed." + }, + "UpperLoadThreshold": { + "type": "string", + "format": "double", + "description": "The upper limit of the load beyond which a scale out operation should be performed." + }, + "ScaleIntervalInSeconds": { + "type": "integer", + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "description": "The period in seconds on which a decision is made whether to scale or not." + }, + "UseOnlyPrimaryLoad": { + "type": "boolean", + "description": "Flag determines whether only the load of primary replica should be considered for scaling.\nIf set to true, then trigger will only consider the load of primary replicas of stateful service. \nIf set to false, trigger will consider load of all replicas. \nThis parameter cannot be set to true for stateless service." + } + } + }, + "PartitionInstanceCountScaleMechanism": { + "description": "Represents a scaling mechanism for adding or removing instances of stateless service partition.", + "allOf": [ + { + "$ref": "#/definitions/ScalingMechanismDescription" + } + ], + "x-ms-discriminator-value": "PartitionInstanceCount", + "required": [ + "MinInstanceCount", + "MaxInstanceCount", + "ScaleIncrement" + ], + "properties": { + "MinInstanceCount": { + "type": "integer", + "description": "Minimum number of instances of the partition." + }, + "MaxInstanceCount": { + "type": "integer", + "description": "Maximum number of instances of the partition." + }, + "ScaleIncrement": { + "type": "integer", + "description": "The number of instances to add or remove during a scaling operation." + } + } + }, + "AddRemoveIncrementalNamedPartitionScalingMechanism": { + "description": "Represents a scaling mechanism for adding or removing named partitions of a stateless service. Partition names are in the format '0','1''N-1'", + "allOf": [ + { + "$ref": "#/definitions/ScalingMechanismDescription" + } + ], + "x-ms-discriminator-value": "AddRemoveIncrementalNamedPartition", + "required": [ + "MinPartitionCount", + "MaxPartitionCount", + "ScaleIncrement" + ], + "properties": { + "MinPartitionCount": { + "type": "integer", + "description": "Minimum number of named partitions of the service." + }, + "MaxPartitionCount": { + "type": "integer", + "description": "Maximum number of named partitions of the service." + }, + "ScaleIncrement": { + "type": "integer", + "description": "The number of instances to add or remove during a scaling operation." + } + } + }, + "UnplacedReplicaInformation": { + "description": "Contains information for an unplaced replica.", + "properties": { + "ServiceName": { + "$ref": "#/definitions/ServiceName", + "description": "The name of the service." + }, + "PartitionId": { + "$ref": "#/definitions/PartitionId", + "description": "The ID of the partition." + }, + "UnplacedReplicaDetails": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of reasons due to which a replica cannot be placed." + } + } + }, + "ApplicationCreatedEvent": { + "description": "Application Created event.", + "allOf": [ + { + "$ref": "#/definitions/ApplicationEvent" + } + ], + "properties": { + "ApplicationTypeName": { + "type": "string", + "description": "Application type name." + }, + "ApplicationTypeVersion": { + "type": "string", + "description": "Application type version." + }, + "ApplicationDefinitionKind": { + "type": "string", + "description": "Application definition kind." + } + }, + "required": [ + "ApplicationTypeName", + "ApplicationTypeVersion", + "ApplicationDefinitionKind" + ], + "x-ms-discriminator-value": "ApplicationCreated" + }, + "ApplicationDeletedEvent": { + "description": "Application Deleted event.", + "allOf": [ + { + "$ref": "#/definitions/ApplicationEvent" + } + ], + "properties": { + "ApplicationTypeName": { + "type": "string", + "description": "Application type name." + }, + "ApplicationTypeVersion": { + "type": "string", + "description": "Application type version." + } + }, + "required": [ + "ApplicationTypeName", + "ApplicationTypeVersion" + ], + "x-ms-discriminator-value": "ApplicationDeleted" + }, + "ApplicationNewHealthReportEvent": { + "description": "Application Health Report Created event.", + "allOf": [ + { + "$ref": "#/definitions/ApplicationEvent" + } + ], + "properties": { + "ApplicationInstanceId": { + "type": "integer", + "format": "int64", + "description": "Id of Application instance." + }, + "SourceId": { + "type": "string", + "description": "Id of report source." + }, + "Property": { + "type": "string", + "description": "Describes the property." + }, + "HealthState": { + "type": "string", + "description": "Describes the property health state." + }, + "TimeToLiveMs": { + "type": "integer", + "format": "int64", + "description": "Time to live in milli-seconds." + }, + "SequenceNumber": { + "type": "integer", + "format": "int64", + "description": "Sequence number of report." + }, + "Description": { + "type": "string", + "description": "Description of report." + }, + "RemoveWhenExpired": { + "type": "boolean", + "description": "Indicates the removal when it expires." + }, + "SourceUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "Source time." + } + }, + "required": [ + "ApplicationInstanceId", + "SourceId", + "Property", + "HealthState", + "TimeToLiveMs", + "SequenceNumber", + "Description", + "RemoveWhenExpired", + "SourceUtcTimestamp" + ], + "x-ms-discriminator-value": "ApplicationNewHealthReport" + }, + "ApplicationHealthReportExpiredEvent": { + "description": "Application Health Report Expired event.", + "allOf": [ + { + "$ref": "#/definitions/ApplicationEvent" + } + ], + "properties": { + "ApplicationInstanceId": { + "type": "integer", + "format": "int64", + "description": "Id of Application instance." + }, + "SourceId": { + "type": "string", + "description": "Id of report source." + }, + "Property": { + "type": "string", + "description": "Describes the property." + }, + "HealthState": { + "type": "string", + "description": "Describes the property health state." + }, + "TimeToLiveMs": { + "type": "integer", + "format": "int64", + "description": "Time to live in milli-seconds." + }, + "SequenceNumber": { + "type": "integer", + "format": "int64", + "description": "Sequence number of report." + }, + "Description": { + "type": "string", + "description": "Description of report." + }, + "RemoveWhenExpired": { + "type": "boolean", + "description": "Indicates the removal when it expires." + }, + "SourceUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "Source time." + } + }, + "required": [ + "ApplicationInstanceId", + "SourceId", + "Property", + "HealthState", + "TimeToLiveMs", + "SequenceNumber", + "Description", + "RemoveWhenExpired", + "SourceUtcTimestamp" + ], + "x-ms-discriminator-value": "ApplicationHealthReportExpired" + }, + "ApplicationUpgradeCompletedEvent": { + "description": "Application Upgrade Completed event.", + "allOf": [ + { + "$ref": "#/definitions/ApplicationEvent" + } + ], + "properties": { + "ApplicationTypeName": { + "type": "string", + "description": "Application type name." + }, + "ApplicationTypeVersion": { + "type": "string", + "description": "Application type version." + }, + "OverallUpgradeElapsedTimeInMs": { + "type": "number", + "format": "double", + "description": "Overall upgrade time in milli-seconds." + } + }, + "required": [ + "ApplicationTypeName", + "ApplicationTypeVersion", + "OverallUpgradeElapsedTimeInMs" + ], + "x-ms-discriminator-value": "ApplicationUpgradeCompleted" + }, + "ApplicationUpgradeDomainCompletedEvent": { + "description": "Application Upgrade Domain Completed event.", + "allOf": [ + { + "$ref": "#/definitions/ApplicationEvent" + } + ], + "properties": { + "ApplicationTypeName": { + "type": "string", + "description": "Application type name." + }, + "CurrentApplicationTypeVersion": { + "type": "string", + "description": "Current Application type version." + }, + "ApplicationTypeVersion": { + "type": "string", + "description": "Target Application type version." + }, + "UpgradeState": { + "type": "string", + "description": "State of upgrade." + }, + "UpgradeDomains": { + "type": "string", + "description": "Upgrade domains." + }, + "UpgradeDomainElapsedTimeInMs": { + "type": "number", + "format": "double", + "description": "Upgrade time of domain in milli-seconds." + } + }, + "required": [ + "ApplicationTypeName", + "CurrentApplicationTypeVersion", + "ApplicationTypeVersion", + "UpgradeState", + "UpgradeDomains", + "UpgradeDomainElapsedTimeInMs" + ], + "x-ms-discriminator-value": "ApplicationUpgradeDomainCompleted" + }, + "ApplicationUpgradeRollbackCompletedEvent": { + "description": "Application Upgrade Rollback Completed event.", + "allOf": [ + { + "$ref": "#/definitions/ApplicationEvent" + } + ], + "properties": { + "ApplicationTypeName": { + "type": "string", + "description": "Application type name." + }, + "ApplicationTypeVersion": { + "type": "string", + "description": "Application type version." + }, + "FailureReason": { + "type": "string", + "description": "Describes reason of failure." + }, + "OverallUpgradeElapsedTimeInMs": { + "type": "number", + "format": "double", + "description": "Overall upgrade time in milli-seconds." + } + }, + "required": [ + "ApplicationTypeName", + "ApplicationTypeVersion", + "FailureReason", + "OverallUpgradeElapsedTimeInMs" + ], + "x-ms-discriminator-value": "ApplicationUpgradeRollbackCompleted" + }, + "ApplicationUpgradeRollbackStartedEvent": { + "description": "Application Upgrade Rollback Started event.", + "allOf": [ + { + "$ref": "#/definitions/ApplicationEvent" + } + ], + "properties": { + "ApplicationTypeName": { + "type": "string", + "description": "Application type name." + }, + "CurrentApplicationTypeVersion": { + "type": "string", + "description": "Current Application type version." + }, + "ApplicationTypeVersion": { + "type": "string", + "description": "Target Application type version." + }, + "FailureReason": { + "type": "string", + "description": "Describes reason of failure." + }, + "OverallUpgradeElapsedTimeInMs": { + "type": "number", + "format": "double", + "description": "Overall upgrade time in milli-seconds." + } + }, + "required": [ + "ApplicationTypeName", + "CurrentApplicationTypeVersion", + "ApplicationTypeVersion", + "FailureReason", + "OverallUpgradeElapsedTimeInMs" + ], + "x-ms-discriminator-value": "ApplicationUpgradeRollbackStarted" + }, + "ApplicationUpgradeStartedEvent": { + "description": "Application Upgrade Started event.", + "allOf": [ + { + "$ref": "#/definitions/ApplicationEvent" + } + ], + "properties": { + "ApplicationTypeName": { + "type": "string", + "description": "Application type name." + }, + "CurrentApplicationTypeVersion": { + "type": "string", + "description": "Current Application type version." + }, + "ApplicationTypeVersion": { + "type": "string", + "description": "Target Application type version." + }, + "UpgradeType": { + "type": "string", + "description": "Type of upgrade." + }, + "RollingUpgradeMode": { + "type": "string", + "description": "Mode of upgrade." + }, + "FailureAction": { + "type": "string", + "description": "Action if failed." + } + }, + "required": [ + "ApplicationTypeName", + "CurrentApplicationTypeVersion", + "ApplicationTypeVersion", + "UpgradeType", + "RollingUpgradeMode", + "FailureAction" + ], + "x-ms-discriminator-value": "ApplicationUpgradeStarted" + }, + "DeployedApplicationNewHealthReportEvent": { + "description": "Deployed Application Health Report Created event.", + "allOf": [ + { + "$ref": "#/definitions/ApplicationEvent" + } + ], + "properties": { + "ApplicationInstanceId": { + "type": "integer", + "format": "int64", + "description": "Id of Application instance." + }, + "NodeName": { + "$ref": "#/definitions/NodeName", + "description": "The name of a Service Fabric node." + }, + "SourceId": { + "type": "string", + "description": "Id of report source." + }, + "Property": { + "type": "string", + "description": "Describes the property." + }, + "HealthState": { + "type": "string", + "description": "Describes the property health state." + }, + "TimeToLiveMs": { + "type": "integer", + "format": "int64", + "description": "Time to live in milli-seconds." + }, + "SequenceNumber": { + "type": "integer", + "format": "int64", + "description": "Sequence number of report." + }, + "Description": { + "type": "string", + "description": "Description of report." + }, + "RemoveWhenExpired": { + "type": "boolean", + "description": "Indicates the removal when it expires." + }, + "SourceUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "Source time." + } + }, + "required": [ + "ApplicationInstanceId", + "NodeName", + "SourceId", + "Property", + "HealthState", + "TimeToLiveMs", + "SequenceNumber", + "Description", + "RemoveWhenExpired", + "SourceUtcTimestamp" + ], + "x-ms-discriminator-value": "DeployedApplicationNewHealthReport" + }, + "DeployedApplicationHealthReportExpiredEvent": { + "description": "Deployed Application Health Report Expired event.", + "allOf": [ + { + "$ref": "#/definitions/ApplicationEvent" + } + ], + "properties": { + "ApplicationInstanceId": { + "type": "integer", + "format": "int64", + "description": "Id of Application instance." + }, + "NodeName": { + "$ref": "#/definitions/NodeName", + "description": "The name of a Service Fabric node." + }, + "SourceId": { + "type": "string", + "description": "Id of report source." + }, + "Property": { + "type": "string", + "description": "Describes the property." + }, + "HealthState": { + "type": "string", + "description": "Describes the property health state." + }, + "TimeToLiveMs": { + "type": "integer", + "format": "int64", + "description": "Time to live in milli-seconds." + }, + "SequenceNumber": { + "type": "integer", + "format": "int64", + "description": "Sequence number of report." + }, + "Description": { + "type": "string", + "description": "Description of report." + }, + "RemoveWhenExpired": { + "type": "boolean", + "description": "Indicates the removal when it expires." + }, + "SourceUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "Source time." + } + }, + "required": [ + "ApplicationInstanceId", + "NodeName", + "SourceId", + "Property", + "HealthState", + "TimeToLiveMs", + "SequenceNumber", + "Description", + "RemoveWhenExpired", + "SourceUtcTimestamp" + ], + "x-ms-discriminator-value": "DeployedApplicationHealthReportExpired" + }, + "ApplicationProcessExitedEvent": { + "description": "Process Exited event.", + "allOf": [ + { + "$ref": "#/definitions/ApplicationEvent" + } + ], + "properties": { + "ServiceName": { + "type": "string", + "description": "Name of Service." + }, + "ServicePackageName": { + "type": "string", + "description": "Name of Service package." + }, + "ServicePackageActivationId": { + "type": "string", + "description": "Activation Id of Service package." + }, + "IsExclusive": { + "type": "boolean", + "description": "Indicates IsExclusive flag." + }, + "CodePackageName": { + "type": "string", + "description": "Name of Code package." + }, + "EntryPointType": { + "type": "string", + "description": "Type of EntryPoint." + }, + "ExeName": { + "type": "string", + "description": "Name of executable." + }, + "ProcessId": { + "type": "integer", + "format": "int64", + "description": "Process Id." + }, + "HostId": { + "type": "string", + "description": "Host Id." + }, + "ExitCode": { + "type": "integer", + "format": "int64", + "description": "Exit code of process." + }, + "UnexpectedTermination": { + "type": "boolean", + "description": "Indicates if termination is unexpected." + }, + "StartTime": { + "type": "string", + "format": "date-time", + "description": "Start time of process." + } + }, + "required": [ + "ServiceName", + "ServicePackageName", + "ServicePackageActivationId", + "IsExclusive", + "CodePackageName", + "EntryPointType", + "ExeName", + "ProcessId", + "HostId", + "ExitCode", + "UnexpectedTermination", + "StartTime" + ], + "x-ms-discriminator-value": "ApplicationProcessExited" + }, + "ApplicationContainerInstanceExitedEvent": { + "description": "Container Exited event.", + "allOf": [ + { + "$ref": "#/definitions/ApplicationEvent" + } + ], + "properties": { + "ServiceName": { + "type": "string", + "description": "Name of Service." + }, + "ServicePackageName": { + "type": "string", + "description": "Name of Service package." + }, + "ServicePackageActivationId": { + "type": "string", + "description": "Activation Id of Service package." + }, + "IsExclusive": { + "type": "boolean", + "description": "Indicates IsExclusive flag." + }, + "CodePackageName": { + "type": "string", + "description": "Name of Code package." + }, + "EntryPointType": { + "type": "string", + "description": "Type of EntryPoint." + }, + "ImageName": { + "type": "string", + "description": "Name of Container image." + }, + "ContainerName": { + "type": "string", + "description": "Name of Container." + }, + "HostId": { + "type": "string", + "description": "Host Id." + }, + "ExitCode": { + "type": "integer", + "format": "int64", + "description": "Exit code of process." + }, + "UnexpectedTermination": { + "type": "boolean", + "description": "Indicates if termination is unexpected." + }, + "StartTime": { + "type": "string", + "format": "date-time", + "description": "Start time of process." + } + }, + "required": [ + "ServiceName", + "ServicePackageName", + "ServicePackageActivationId", + "IsExclusive", + "CodePackageName", + "EntryPointType", + "ImageName", + "ContainerName", + "HostId", + "ExitCode", + "UnexpectedTermination", + "StartTime" + ], + "x-ms-discriminator-value": "ApplicationContainerInstanceExited" + }, + "NodeAbortedEvent": { + "description": "Node Aborted event.", + "allOf": [ + { + "$ref": "#/definitions/NodeEvent" + } + ], + "properties": { + "NodeInstance": { + "type": "integer", + "format": "int64", + "description": "Id of Node instance." + }, + "NodeId": { + "type": "string", + "description": "Id of Node." + }, + "UpgradeDomain": { + "type": "string", + "description": "Upgrade domain of Node." + }, + "FaultDomain": { + "type": "string", + "description": "Fault domain of Node." + }, + "IpAddressOrFQDN": { + "type": "string", + "description": "IP address or FQDN." + }, + "Hostname": { + "type": "string", + "description": "Name of Host." + }, + "IsSeedNode": { + "type": "boolean", + "description": "Indicates if it is seed node." + }, + "NodeVersion": { + "type": "string", + "description": "Version of Node." + } + }, + "required": [ + "NodeInstance", + "NodeId", + "UpgradeDomain", + "FaultDomain", + "IpAddressOrFQDN", + "Hostname", + "IsSeedNode", + "NodeVersion" + ], + "x-ms-discriminator-value": "NodeAborted" + }, + "NodeAddedToClusterEvent": { + "description": "Node Added event.", + "allOf": [ + { + "$ref": "#/definitions/NodeEvent" + } + ], + "properties": { + "NodeId": { + "type": "string", + "description": "Id of Node." + }, + "NodeInstance": { + "type": "integer", + "format": "int64", + "description": "Id of Node instance." + }, + "NodeType": { + "type": "string", + "description": "Type of Node." + }, + "FabricVersion": { + "type": "string", + "description": "Fabric version." + }, + "IpAddressOrFQDN": { + "type": "string", + "description": "IP address or FQDN." + }, + "NodeCapacities": { + "type": "string", + "description": "Capacities." + } + }, + "required": [ + "NodeId", + "NodeInstance", + "NodeType", + "FabricVersion", + "IpAddressOrFQDN", + "NodeCapacities" + ], + "x-ms-discriminator-value": "NodeAddedToCluster" + }, + "NodeClosedEvent": { + "description": "Node Closed event.", + "allOf": [ + { + "$ref": "#/definitions/NodeEvent" + } + ], + "properties": { + "NodeId": { + "type": "string", + "description": "Id of Node." + }, + "NodeInstance": { + "type": "integer", + "format": "int64", + "description": "Id of Node instance." + }, + "Error": { + "type": "string", + "description": "Describes error." + } + }, + "required": [ + "NodeId", + "NodeInstance", + "Error" + ], + "x-ms-discriminator-value": "NodeClosed" + }, + "NodeDeactivateCompletedEvent": { + "description": "Node Deactivate Completed event.", + "allOf": [ + { + "$ref": "#/definitions/NodeEvent" + } + ], + "properties": { + "NodeInstance": { + "type": "integer", + "format": "int64", + "description": "Id of Node instance." + }, + "EffectiveDeactivateIntent": { + "type": "string", + "description": "Describes deactivate intent." + }, + "BatchIdsWithDeactivateIntent": { + "type": "string", + "description": "Batch Ids." + }, + "StartTime": { + "type": "string", + "format": "date-time", + "description": "Start time." + } + }, + "required": [ + "NodeInstance", + "EffectiveDeactivateIntent", + "BatchIdsWithDeactivateIntent", + "StartTime" + ], + "x-ms-discriminator-value": "NodeDeactivateCompleted" + }, + "NodeDeactivateStartedEvent": { + "description": "Node Deactivate Started event.", + "allOf": [ + { + "$ref": "#/definitions/NodeEvent" + } + ], + "properties": { + "NodeInstance": { + "type": "integer", + "format": "int64", + "description": "Id of Node instance." + }, + "BatchId": { + "type": "string", + "description": "Batch Id." + }, + "DeactivateIntent": { + "type": "string", + "description": "Describes deactivate intent." + } + }, + "required": [ + "NodeInstance", + "BatchId", + "DeactivateIntent" + ], + "x-ms-discriminator-value": "NodeDeactivateStarted" + }, + "NodeDownEvent": { + "description": "Node Down event.", + "allOf": [ + { + "$ref": "#/definitions/NodeEvent" + } + ], + "properties": { + "NodeInstance": { + "type": "integer", + "format": "int64", + "description": "Id of Node instance." + }, + "LastNodeUpAt": { + "type": "string", + "format": "date-time", + "description": "Time when Node was last up." + } + }, + "required": [ + "NodeInstance", + "LastNodeUpAt" + ], + "x-ms-discriminator-value": "NodeDown" + }, + "NodeNewHealthReportEvent": { + "description": "Node Health Report Created event.", + "allOf": [ + { + "$ref": "#/definitions/NodeEvent" + } + ], + "properties": { + "NodeInstanceId": { + "type": "integer", + "format": "int64", + "description": "Id of Node instance." + }, + "SourceId": { + "type": "string", + "description": "Id of report source." + }, + "Property": { + "type": "string", + "description": "Describes the property." + }, + "HealthState": { + "type": "string", + "description": "Describes the property health state." + }, + "TimeToLiveMs": { + "type": "integer", + "format": "int64", + "description": "Time to live in milli-seconds." + }, + "SequenceNumber": { + "type": "integer", + "format": "int64", + "description": "Sequence number of report." + }, + "Description": { + "type": "string", + "description": "Description of report." + }, + "RemoveWhenExpired": { + "type": "boolean", + "description": "Indicates the removal when it expires." + }, + "SourceUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "Source time." + } + }, + "required": [ + "NodeInstanceId", + "SourceId", + "Property", + "HealthState", + "TimeToLiveMs", + "SequenceNumber", + "Description", + "RemoveWhenExpired", + "SourceUtcTimestamp" + ], + "x-ms-discriminator-value": "NodeNewHealthReport" + }, + "NodeHealthReportExpiredEvent": { + "description": "Node Health Report Expired event.", + "allOf": [ + { + "$ref": "#/definitions/NodeEvent" + } + ], + "properties": { + "NodeInstanceId": { + "type": "integer", + "format": "int64", + "description": "Id of Node instance." + }, + "SourceId": { + "type": "string", + "description": "Id of report source." + }, + "Property": { + "type": "string", + "description": "Describes the property." + }, + "HealthState": { + "type": "string", + "description": "Describes the property health state." + }, + "TimeToLiveMs": { + "type": "integer", + "format": "int64", + "description": "Time to live in milli-seconds." + }, + "SequenceNumber": { + "type": "integer", + "format": "int64", + "description": "Sequence number of report." + }, + "Description": { + "type": "string", + "description": "Description of report." + }, + "RemoveWhenExpired": { + "type": "boolean", + "description": "Indicates the removal when it expires." + }, + "SourceUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "Source time." + } + }, + "required": [ + "NodeInstanceId", + "SourceId", + "Property", + "HealthState", + "TimeToLiveMs", + "SequenceNumber", + "Description", + "RemoveWhenExpired", + "SourceUtcTimestamp" + ], + "x-ms-discriminator-value": "NodeHealthReportExpired" + }, + "NodeOpenSucceededEvent": { + "description": "Node Opened Succeeded event.", + "allOf": [ + { + "$ref": "#/definitions/NodeEvent" + } + ], + "properties": { + "NodeInstance": { + "type": "integer", + "format": "int64", + "description": "Id of Node instance." + }, + "NodeId": { + "type": "string", + "description": "Id of Node." + }, + "UpgradeDomain": { + "type": "string", + "description": "Upgrade domain of Node." + }, + "FaultDomain": { + "type": "string", + "description": "Fault domain of Node." + }, + "IpAddressOrFQDN": { + "type": "string", + "description": "IP address or FQDN." + }, + "Hostname": { + "type": "string", + "description": "Name of Host." + }, + "IsSeedNode": { + "type": "boolean", + "description": "Indicates if it is seed node." + }, + "NodeVersion": { + "type": "string", + "description": "Version of Node." + } + }, + "required": [ + "NodeInstance", + "NodeId", + "UpgradeDomain", + "FaultDomain", + "IpAddressOrFQDN", + "Hostname", + "IsSeedNode", + "NodeVersion" + ], + "x-ms-discriminator-value": "NodeOpenSucceeded" + }, + "NodeOpenFailedEvent": { + "description": "Node Open Failed event.", + "allOf": [ + { + "$ref": "#/definitions/NodeEvent" + } + ], + "properties": { + "NodeInstance": { + "type": "integer", + "format": "int64", + "description": "Id of Node instance." + }, + "NodeId": { + "type": "string", + "description": "Id of Node." + }, + "UpgradeDomain": { + "type": "string", + "description": "Upgrade domain of Node." + }, + "FaultDomain": { + "type": "string", + "description": "Fault domain of Node." + }, + "IpAddressOrFQDN": { + "type": "string", + "description": "IP address or FQDN." + }, + "Hostname": { + "type": "string", + "description": "Name of Host." + }, + "IsSeedNode": { + "type": "boolean", + "description": "Indicates if it is seed node." + }, + "NodeVersion": { + "type": "string", + "description": "Version of Node." + }, + "Error": { + "type": "string", + "description": "Describes the error." + } + }, + "required": [ + "NodeInstance", + "NodeId", + "UpgradeDomain", + "FaultDomain", + "IpAddressOrFQDN", + "Hostname", + "IsSeedNode", + "NodeVersion", + "Error" + ], + "x-ms-discriminator-value": "NodeOpenFailed" + }, + "NodeRemovedFromClusterEvent": { + "description": "Node Removed event.", + "allOf": [ + { + "$ref": "#/definitions/NodeEvent" + } + ], + "properties": { + "NodeId": { + "type": "string", + "description": "Id of Node." + }, + "NodeInstance": { + "type": "integer", + "format": "int64", + "description": "Id of Node instance." + }, + "NodeType": { + "type": "string", + "description": "Type of Node." + }, + "FabricVersion": { + "type": "string", + "description": "Fabric version." + }, + "IpAddressOrFQDN": { + "type": "string", + "description": "IP address or FQDN." + }, + "NodeCapacities": { + "type": "string", + "description": "Capacities." + } + }, + "required": [ + "NodeId", + "NodeInstance", + "NodeType", + "FabricVersion", + "IpAddressOrFQDN", + "NodeCapacities" + ], + "x-ms-discriminator-value": "NodeRemovedFromCluster" + }, + "NodeUpEvent": { + "description": "Node Up event.", + "allOf": [ + { + "$ref": "#/definitions/NodeEvent" + } + ], + "properties": { + "NodeInstance": { + "type": "integer", + "format": "int64", + "description": "Id of Node instance." + }, + "LastNodeDownAt": { + "type": "string", + "format": "date-time", + "description": "Time when Node was last down." + } + }, + "required": [ + "NodeInstance", + "LastNodeDownAt" + ], + "x-ms-discriminator-value": "NodeUp" + }, + "PartitionNewHealthReportEvent": { + "description": "Partition Health Report Created event.", + "allOf": [ + { + "$ref": "#/definitions/PartitionEvent" + } + ], + "properties": { + "SourceId": { + "type": "string", + "description": "Id of report source." + }, + "Property": { + "type": "string", + "description": "Describes the property." + }, + "HealthState": { + "type": "string", + "description": "Describes the property health state." + }, + "TimeToLiveMs": { + "type": "integer", + "format": "int64", + "description": "Time to live in milli-seconds." + }, + "SequenceNumber": { + "type": "integer", + "format": "int64", + "description": "Sequence number of report." + }, + "Description": { + "type": "string", + "description": "Description of report." + }, + "RemoveWhenExpired": { + "type": "boolean", + "description": "Indicates the removal when it expires." + }, + "SourceUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "Source time." + } + }, + "required": [ + "SourceId", + "Property", + "HealthState", + "TimeToLiveMs", + "SequenceNumber", + "Description", + "RemoveWhenExpired", + "SourceUtcTimestamp" + ], + "x-ms-discriminator-value": "PartitionNewHealthReport" + }, + "PartitionHealthReportExpiredEvent": { + "description": "Partition Health Report Expired event.", + "allOf": [ + { + "$ref": "#/definitions/PartitionEvent" + } + ], + "properties": { + "SourceId": { + "type": "string", + "description": "Id of report source." + }, + "Property": { + "type": "string", + "description": "Describes the property." + }, + "HealthState": { + "type": "string", + "description": "Describes the property health state." + }, + "TimeToLiveMs": { + "type": "integer", + "format": "int64", + "description": "Time to live in milli-seconds." + }, + "SequenceNumber": { + "type": "integer", + "format": "int64", + "description": "Sequence number of report." + }, + "Description": { + "type": "string", + "description": "Description of report." + }, + "RemoveWhenExpired": { + "type": "boolean", + "description": "Indicates the removal when it expires." + }, + "SourceUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "Source time." + } + }, + "required": [ + "SourceId", + "Property", + "HealthState", + "TimeToLiveMs", + "SequenceNumber", + "Description", + "RemoveWhenExpired", + "SourceUtcTimestamp" + ], + "x-ms-discriminator-value": "PartitionHealthReportExpired" + }, + "PartitionReconfiguredEvent": { + "description": "Partition Reconfiguration event.", + "allOf": [ + { + "$ref": "#/definitions/PartitionEvent" + } + ], + "properties": { + "NodeName": { + "$ref": "#/definitions/NodeName", + "description": "The name of a Service Fabric node." + }, + "NodeInstanceId": { + "type": "string", + "description": "Id of Node instance." + }, + "ServiceType": { + "type": "string", + "description": "Type of Service." + }, + "CcEpochDataLossVersion": { + "type": "integer", + "format": "int64", + "description": "CcEpochDataLoss version." + }, + "CcEpochConfigVersion": { + "type": "integer", + "format": "int64", + "description": "CcEpochConfig version." + }, + "ReconfigType": { + "type": "string", + "description": "Type of reconfiguration." + }, + "Result": { + "type": "string", + "description": "Describes reconfiguration result." + }, + "Phase0DurationMs": { + "type": "number", + "format": "double", + "description": "Duration of Phase0 in milli-seconds." + }, + "Phase1DurationMs": { + "type": "number", + "format": "double", + "description": "Duration of Phase1 in milli-seconds." + }, + "Phase2DurationMs": { + "type": "number", + "format": "double", + "description": "Duration of Phase2 in milli-seconds." + }, + "Phase3DurationMs": { + "type": "number", + "format": "double", + "description": "Duration of Phase3 in milli-seconds." + }, + "Phase4DurationMs": { + "type": "number", + "format": "double", + "description": "Duration of Phase4 in milli-seconds." + }, + "TotalDurationMs": { + "type": "number", + "format": "double", + "description": "Total duration in milli-seconds." + } + }, + "required": [ + "NodeName", + "NodeInstanceId", + "ServiceType", + "CcEpochDataLossVersion", + "CcEpochConfigVersion", + "ReconfigType", + "Result", + "Phase0DurationMs", + "Phase1DurationMs", + "Phase2DurationMs", + "Phase3DurationMs", + "Phase4DurationMs", + "TotalDurationMs" + ], + "x-ms-discriminator-value": "PartitionReconfigured" + }, + "PartitionPrimaryMoveAnalysisEvent": { + "description": "Partition Primary Move Analysis event.", + "allOf": [ + { + "$ref": "#/definitions/PartitionAnalysisEvent" + } + ], + "properties": { + "WhenMoveCompleted": { + "type": "string", + "format": "date-time", + "description": "Time when the move was completed." + }, + "PreviousNode": { + "$ref": "#/definitions/NodeName", + "description": "The name of a Service Fabric node." + }, + "CurrentNode": { + "$ref": "#/definitions/NodeName", + "description": "The name of a Service Fabric node." + }, + "MoveReason": { + "type": "string", + "description": "Move reason." + }, + "RelevantTraces": { + "type": "string", + "description": "Relevant traces." + } + }, + "required": [ + "WhenMoveCompleted", + "PreviousNode", + "CurrentNode", + "MoveReason", + "RelevantTraces" + ], + "x-ms-discriminator-value": "PartitionPrimaryMoveAnalysis" + }, + "ServiceCreatedEvent": { + "description": "Service Created event.", + "allOf": [ + { + "$ref": "#/definitions/ServiceEvent" + } + ], + "properties": { + "ServiceTypeName": { + "type": "string", + "description": "Service type name." + }, + "ApplicationName": { + "type": "string", + "description": "Application name." + }, + "ApplicationTypeName": { + "type": "string", + "description": "Application type name." + }, + "ServiceInstance": { + "type": "integer", + "format": "int64", + "description": "Id of Service instance." + }, + "IsStateful": { + "type": "boolean", + "description": "Indicates if Service is stateful." + }, + "PartitionCount": { + "type": "integer", + "format": "int32", + "description": "Number of partitions." + }, + "TargetReplicaSetSize": { + "type": "integer", + "format": "int32", + "description": "Size of target replicas set." + }, + "MinReplicaSetSize": { + "type": "integer", + "format": "int32", + "description": "Minimum size of replicas set." + }, + "ServicePackageVersion": { + "type": "string", + "description": "Version of Service package." + }, + "PartitionId": { + "$ref": "#/definitions/PartitionId", + "description": "An internal ID used by Service Fabric to uniquely identify a partition. This is a randomly generated GUID when the service was created. The partition ID is unique and does not change for the lifetime of the service. If the same service was deleted and recreated the IDs of its partitions would be different." + } + }, + "required": [ + "ServiceTypeName", + "ApplicationName", + "ApplicationTypeName", + "ServiceInstance", + "IsStateful", + "PartitionCount", + "TargetReplicaSetSize", + "MinReplicaSetSize", + "ServicePackageVersion", + "PartitionId" + ], + "x-ms-discriminator-value": "ServiceCreated" + }, + "ServiceDeletedEvent": { + "description": "Service Deleted event.", + "allOf": [ + { + "$ref": "#/definitions/ServiceEvent" + } + ], + "properties": { + "ServiceTypeName": { + "type": "string", + "description": "Service type name." + }, + "ApplicationName": { + "type": "string", + "description": "Application name." + }, + "ApplicationTypeName": { + "type": "string", + "description": "Application type name." + }, + "ServiceInstance": { + "type": "integer", + "format": "int64", + "description": "Id of Service instance." + }, + "IsStateful": { + "type": "boolean", + "description": "Indicates if Service is stateful." + }, + "PartitionCount": { + "type": "integer", + "format": "int32", + "description": "Number of partitions." + }, + "TargetReplicaSetSize": { + "type": "integer", + "format": "int32", + "description": "Size of target replicas set." + }, + "MinReplicaSetSize": { + "type": "integer", + "format": "int32", + "description": "Minimum size of replicas set." + }, + "ServicePackageVersion": { + "type": "string", + "description": "Version of Service package." + } + }, + "required": [ + "ServiceTypeName", + "ApplicationName", + "ApplicationTypeName", + "ServiceInstance", + "IsStateful", + "PartitionCount", + "TargetReplicaSetSize", + "MinReplicaSetSize", + "ServicePackageVersion" + ], + "x-ms-discriminator-value": "ServiceDeleted" + }, + "ServiceNewHealthReportEvent": { + "description": "Service Health Report Created event.", + "allOf": [ + { + "$ref": "#/definitions/ServiceEvent" + } + ], + "properties": { + "InstanceId": { + "type": "integer", + "format": "int64", + "description": "Id of Service instance." + }, + "SourceId": { + "type": "string", + "description": "Id of report source." + }, + "Property": { + "type": "string", + "description": "Describes the property." + }, + "HealthState": { + "type": "string", + "description": "Describes the property health state." + }, + "TimeToLiveMs": { + "type": "integer", + "format": "int64", + "description": "Time to live in milli-seconds." + }, + "SequenceNumber": { + "type": "integer", + "format": "int64", + "description": "Sequence number of report." + }, + "Description": { + "type": "string", + "description": "Description of report." + }, + "RemoveWhenExpired": { + "type": "boolean", + "description": "Indicates the removal when it expires." + }, + "SourceUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "Source time." + } + }, + "required": [ + "InstanceId", + "SourceId", + "Property", + "HealthState", + "TimeToLiveMs", + "SequenceNumber", + "Description", + "RemoveWhenExpired", + "SourceUtcTimestamp" + ], + "x-ms-discriminator-value": "ServiceNewHealthReport" + }, + "ServiceHealthReportExpiredEvent": { + "description": "Service Health Report Expired event.", + "allOf": [ + { + "$ref": "#/definitions/ServiceEvent" + } + ], + "properties": { + "InstanceId": { + "type": "integer", + "format": "int64", + "description": "Id of Service instance." + }, + "SourceId": { + "type": "string", + "description": "Id of report source." + }, + "Property": { + "type": "string", + "description": "Describes the property." + }, + "HealthState": { + "type": "string", + "description": "Describes the property health state." + }, + "TimeToLiveMs": { + "type": "integer", + "format": "int64", + "description": "Time to live in milli-seconds." + }, + "SequenceNumber": { + "type": "integer", + "format": "int64", + "description": "Sequence number of report." + }, + "Description": { + "type": "string", + "description": "Description of report." + }, + "RemoveWhenExpired": { + "type": "boolean", + "description": "Indicates the removal when it expires." + }, + "SourceUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "Source time." + } + }, + "required": [ + "InstanceId", + "SourceId", + "Property", + "HealthState", + "TimeToLiveMs", + "SequenceNumber", + "Description", + "RemoveWhenExpired", + "SourceUtcTimestamp" + ], + "x-ms-discriminator-value": "ServiceHealthReportExpired" + }, + "DeployedServicePackageNewHealthReportEvent": { + "description": "Deployed Service Health Report Created event.", + "allOf": [ + { + "$ref": "#/definitions/ApplicationEvent" + } + ], + "properties": { + "ServiceManifestName": { + "type": "string", + "description": "Service manifest name." + }, + "ServicePackageInstanceId": { + "type": "integer", + "format": "int64", + "description": "Id of Service package instance." + }, + "ServicePackageActivationId": { + "type": "string", + "description": "Id of Service package activation." + }, + "NodeName": { + "$ref": "#/definitions/NodeName", + "description": "The name of a Service Fabric node." + }, + "SourceId": { + "type": "string", + "description": "Id of report source." + }, + "Property": { + "type": "string", + "description": "Describes the property." + }, + "HealthState": { + "type": "string", + "description": "Describes the property health state." + }, + "TimeToLiveMs": { + "type": "integer", + "format": "int64", + "description": "Time to live in milli-seconds." + }, + "SequenceNumber": { + "type": "integer", + "format": "int64", + "description": "Sequence number of report." + }, + "Description": { + "type": "string", + "description": "Description of report." + }, + "RemoveWhenExpired": { + "type": "boolean", + "description": "Indicates the removal when it expires." + }, + "SourceUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "Source time." + } + }, + "required": [ + "ServiceManifestName", + "ServicePackageInstanceId", + "ServicePackageActivationId", + "NodeName", + "SourceId", + "Property", + "HealthState", + "TimeToLiveMs", + "SequenceNumber", + "Description", + "RemoveWhenExpired", + "SourceUtcTimestamp" + ], + "x-ms-discriminator-value": "DeployedServicePackageNewHealthReport" + }, + "DeployedServicePackageHealthReportExpiredEvent": { + "description": "Deployed Service Health Report Expired event.", + "allOf": [ + { + "$ref": "#/definitions/ApplicationEvent" + } + ], + "properties": { + "ServiceManifest": { + "type": "string", + "description": "Service manifest name." + }, + "ServicePackageInstanceId": { + "type": "integer", + "format": "int64", + "description": "Id of Service package instance." + }, + "ServicePackageActivationId": { + "type": "string", + "description": "Id of Service package activation." + }, + "NodeName": { + "$ref": "#/definitions/NodeName", + "description": "The name of a Service Fabric node." + }, + "SourceId": { + "type": "string", + "description": "Id of report source." + }, + "Property": { + "type": "string", + "description": "Describes the property." + }, + "HealthState": { + "type": "string", + "description": "Describes the property health state." + }, + "TimeToLiveMs": { + "type": "integer", + "format": "int64", + "description": "Time to live in milli-seconds." + }, + "SequenceNumber": { + "type": "integer", + "format": "int64", + "description": "Sequence number of report." + }, + "Description": { + "type": "string", + "description": "Description of report." + }, + "RemoveWhenExpired": { + "type": "boolean", + "description": "Indicates the removal when it expires." + }, + "SourceUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "Source time." + } + }, + "required": [ + "ServiceManifest", + "ServicePackageInstanceId", + "ServicePackageActivationId", + "NodeName", + "SourceId", + "Property", + "HealthState", + "TimeToLiveMs", + "SequenceNumber", + "Description", + "RemoveWhenExpired", + "SourceUtcTimestamp" + ], + "x-ms-discriminator-value": "DeployedServicePackageHealthReportExpired" + }, + "StatefulReplicaNewHealthReportEvent": { + "description": "Stateful Replica Health Report Created event.", + "allOf": [ + { + "$ref": "#/definitions/ReplicaEvent" + } + ], + "properties": { + "ReplicaInstanceId": { + "type": "integer", + "format": "int64", + "description": "Id of Replica instance." + }, + "SourceId": { + "type": "string", + "description": "Id of report source." + }, + "Property": { + "type": "string", + "description": "Describes the property." + }, + "HealthState": { + "type": "string", + "description": "Describes the property health state." + }, + "TimeToLiveMs": { + "type": "integer", + "format": "int64", + "description": "Time to live in milli-seconds." + }, + "SequenceNumber": { + "type": "integer", + "format": "int64", + "description": "Sequence number of report." + }, + "Description": { + "type": "string", + "description": "Description of report." + }, + "RemoveWhenExpired": { + "type": "boolean", + "description": "Indicates the removal when it expires." + }, + "SourceUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "Source time." + } + }, + "required": [ + "ReplicaInstanceId", + "SourceId", + "Property", + "HealthState", + "TimeToLiveMs", + "SequenceNumber", + "Description", + "RemoveWhenExpired", + "SourceUtcTimestamp" + ], + "x-ms-discriminator-value": "StatefulReplicaNewHealthReport" + }, + "StatefulReplicaHealthReportExpiredEvent": { + "description": "Stateful Replica Health Report Expired event.", + "allOf": [ + { + "$ref": "#/definitions/ReplicaEvent" + } + ], + "properties": { + "ReplicaInstanceId": { + "type": "integer", + "format": "int64", + "description": "Id of Replica instance." + }, + "SourceId": { + "type": "string", + "description": "Id of report source." + }, + "Property": { + "type": "string", + "description": "Describes the property." + }, + "HealthState": { + "type": "string", + "description": "Describes the property health state." + }, + "TimeToLiveMs": { + "type": "integer", + "format": "int64", + "description": "Time to live in milli-seconds." + }, + "SequenceNumber": { + "type": "integer", + "format": "int64", + "description": "Sequence number of report." + }, + "Description": { + "type": "string", + "description": "Description of report." + }, + "RemoveWhenExpired": { + "type": "boolean", + "description": "Indicates the removal when it expires." + }, + "SourceUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "Source time." + } + }, + "required": [ + "ReplicaInstanceId", + "SourceId", + "Property", + "HealthState", + "TimeToLiveMs", + "SequenceNumber", + "Description", + "RemoveWhenExpired", + "SourceUtcTimestamp" + ], + "x-ms-discriminator-value": "StatefulReplicaHealthReportExpired" + }, + "StatelessReplicaNewHealthReportEvent": { + "description": "Stateless Replica Health Report Created event.", + "allOf": [ + { + "$ref": "#/definitions/ReplicaEvent" + } + ], + "properties": { + "SourceId": { + "type": "string", + "description": "Id of report source." + }, + "Property": { + "type": "string", + "description": "Describes the property." + }, + "HealthState": { + "type": "string", + "description": "Describes the property health state." + }, + "TimeToLiveMs": { + "type": "integer", + "format": "int64", + "description": "Time to live in milli-seconds." + }, + "SequenceNumber": { + "type": "integer", + "format": "int64", + "description": "Sequence number of report." + }, + "Description": { + "type": "string", + "description": "Description of report." + }, + "RemoveWhenExpired": { + "type": "boolean", + "description": "Indicates the removal when it expires." + }, + "SourceUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "Source time." + } + }, + "required": [ + "SourceId", + "Property", + "HealthState", + "TimeToLiveMs", + "SequenceNumber", + "Description", + "RemoveWhenExpired", + "SourceUtcTimestamp" + ], + "x-ms-discriminator-value": "StatelessReplicaNewHealthReport" + }, + "StatelessReplicaHealthReportExpiredEvent": { + "description": "Stateless Replica Health Report Expired event.", + "allOf": [ + { + "$ref": "#/definitions/ReplicaEvent" + } + ], + "properties": { + "SourceId": { + "type": "string", + "description": "Id of report source." + }, + "Property": { + "type": "string", + "description": "Describes the property." + }, + "HealthState": { + "type": "string", + "description": "Describes the property health state." + }, + "TimeToLiveMs": { + "type": "integer", + "format": "int64", + "description": "Time to live in milli-seconds." + }, + "SequenceNumber": { + "type": "integer", + "format": "int64", + "description": "Sequence number of report." + }, + "Description": { + "type": "string", + "description": "Description of report." + }, + "RemoveWhenExpired": { + "type": "boolean", + "description": "Indicates the removal when it expires." + }, + "SourceUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "Source time." + } + }, + "required": [ + "SourceId", + "Property", + "HealthState", + "TimeToLiveMs", + "SequenceNumber", + "Description", + "RemoveWhenExpired", + "SourceUtcTimestamp" + ], + "x-ms-discriminator-value": "StatelessReplicaHealthReportExpired" + }, + "ClusterNewHealthReportEvent": { + "description": "Cluster Health Report Created event.", + "allOf": [ + { + "$ref": "#/definitions/ClusterEvent" + } + ], + "properties": { + "SourceId": { + "type": "string", + "description": "Id of report source." + }, + "Property": { + "type": "string", + "description": "Describes the property." + }, + "HealthState": { + "type": "string", + "description": "Describes the property health state." + }, + "TimeToLiveMs": { + "type": "integer", + "format": "int64", + "description": "Time to live in milli-seconds." + }, + "SequenceNumber": { + "type": "integer", + "format": "int64", + "description": "Sequence number of report." + }, + "Description": { + "type": "string", + "description": "Description of report." + }, + "RemoveWhenExpired": { + "type": "boolean", + "description": "Indicates the removal when it expires." + }, + "SourceUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "Source time." + } + }, + "required": [ + "SourceId", + "Property", + "HealthState", + "TimeToLiveMs", + "SequenceNumber", + "Description", + "RemoveWhenExpired", + "SourceUtcTimestamp" + ], + "x-ms-discriminator-value": "ClusterNewHealthReport" + }, + "ClusterHealthReportExpiredEvent": { + "description": "Cluster Health Report Expired event.", + "allOf": [ + { + "$ref": "#/definitions/ClusterEvent" + } + ], + "properties": { + "SourceId": { + "type": "string", + "description": "Id of report source." + }, + "Property": { + "type": "string", + "description": "Describes the property." + }, + "HealthState": { + "type": "string", + "description": "Describes the property health state." + }, + "TimeToLiveMs": { + "type": "integer", + "format": "int64", + "description": "Time to live in milli-seconds." + }, + "SequenceNumber": { + "type": "integer", + "format": "int64", + "description": "Sequence number of report." + }, + "Description": { + "type": "string", + "description": "Description of report." + }, + "RemoveWhenExpired": { + "type": "boolean", + "description": "Indicates the removal when it expires." + }, + "SourceUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "Source time." + } + }, + "required": [ + "SourceId", + "Property", + "HealthState", + "TimeToLiveMs", + "SequenceNumber", + "Description", + "RemoveWhenExpired", + "SourceUtcTimestamp" + ], + "x-ms-discriminator-value": "ClusterHealthReportExpired" + }, + "ClusterUpgradeCompletedEvent": { + "description": "Cluster Upgrade Completed event.", + "allOf": [ + { + "$ref": "#/definitions/ClusterEvent" + } + ], + "properties": { + "TargetClusterVersion": { + "type": "string", + "description": "Target Cluster version." + }, + "OverallUpgradeElapsedTimeInMs": { + "type": "number", + "format": "double", + "description": "Overall duration of upgrade in milli-seconds." + } + }, + "required": [ + "TargetClusterVersion", + "OverallUpgradeElapsedTimeInMs" + ], + "x-ms-discriminator-value": "ClusterUpgradeCompleted" + }, + "ClusterUpgradeDomainCompletedEvent": { + "description": "Cluster Upgrade Domain Completed event.", + "allOf": [ + { + "$ref": "#/definitions/ClusterEvent" + } + ], + "properties": { + "TargetClusterVersion": { + "type": "string", + "description": "Target Cluster version." + }, + "UpgradeState": { + "type": "string", + "description": "State of upgrade." + }, + "UpgradeDomains": { + "type": "string", + "description": "Upgrade domains." + }, + "UpgradeDomainElapsedTimeInMs": { + "type": "number", + "format": "double", + "description": "Duration of domain upgrade in milli-seconds." + } + }, + "required": [ + "TargetClusterVersion", + "UpgradeState", + "UpgradeDomains", + "UpgradeDomainElapsedTimeInMs" + ], + "x-ms-discriminator-value": "ClusterUpgradeDomainCompleted" + }, + "ClusterUpgradeRollbackCompletedEvent": { + "description": "Cluster Upgrade Rollback Completed event.", + "allOf": [ + { + "$ref": "#/definitions/ClusterEvent" + } + ], + "properties": { + "TargetClusterVersion": { + "type": "string", + "description": "Target Cluster version." + }, + "FailureReason": { + "type": "string", + "description": "Describes failure." + }, + "OverallUpgradeElapsedTimeInMs": { + "type": "number", + "format": "double", + "description": "Overall duration of upgrade in milli-seconds." + } + }, + "required": [ + "TargetClusterVersion", + "FailureReason", + "OverallUpgradeElapsedTimeInMs" + ], + "x-ms-discriminator-value": "ClusterUpgradeRollbackCompleted" + }, + "ClusterUpgradeRollbackStartedEvent": { + "description": "Cluster Upgrade Rollback Started event.", + "allOf": [ + { + "$ref": "#/definitions/ClusterEvent" + } + ], + "properties": { + "TargetClusterVersion": { + "type": "string", + "description": "Target Cluster version." + }, + "FailureReason": { + "type": "string", + "description": "Describes failure." + }, + "OverallUpgradeElapsedTimeInMs": { + "type": "number", + "format": "double", + "description": "Overall duration of upgrade in milli-seconds." + } + }, + "required": [ + "TargetClusterVersion", + "FailureReason", + "OverallUpgradeElapsedTimeInMs" + ], + "x-ms-discriminator-value": "ClusterUpgradeRollbackStarted" + }, + "ClusterUpgradeStartedEvent": { + "description": "Cluster Upgrade Started event.", + "allOf": [ + { + "$ref": "#/definitions/ClusterEvent" + } + ], + "properties": { + "CurrentClusterVersion": { + "type": "string", + "description": "Current Cluster version." + }, + "TargetClusterVersion": { + "type": "string", + "description": "Target Cluster version." + }, + "UpgradeType": { + "type": "string", + "description": "Type of upgrade." + }, + "RollingUpgradeMode": { + "type": "string", + "description": "Mode of upgrade." + }, + "FailureAction": { + "type": "string", + "description": "Action if failed." + } + }, + "required": [ + "CurrentClusterVersion", + "TargetClusterVersion", + "UpgradeType", + "RollingUpgradeMode", + "FailureAction" + ], + "x-ms-discriminator-value": "ClusterUpgradeStarted" + }, + "ChaosStoppedEvent": { + "description": "Chaos Stopped event.", + "allOf": [ + { + "$ref": "#/definitions/ClusterEvent" + } + ], + "properties": { + "Reason": { + "type": "string", + "description": "Describes reason." + } + }, + "required": [ + "Reason" + ], + "x-ms-discriminator-value": "ChaosStopped" + }, + "ChaosStartedEvent": { + "description": "Chaos Started event.", + "allOf": [ + { + "$ref": "#/definitions/ClusterEvent" + } + ], + "properties": { + "MaxConcurrentFaults": { + "type": "integer", + "format": "int64", + "description": "Maximum number of concurrent faults." + }, + "TimeToRunInSeconds": { + "type": "number", + "format": "double", + "description": "Time to run in seconds." + }, + "MaxClusterStabilizationTimeoutInSeconds": { + "type": "number", + "format": "double", + "description": "Maximum timeout for cluster stabilization in seconds." + }, + "WaitTimeBetweenIterationsInSeconds": { + "type": "number", + "format": "double", + "description": "Wait time between iterations in seconds." + }, + "WaitTimeBetweenFaultsInSeconds": { + "type": "number", + "format": "double", + "description": "Wait time between faults in seconds." + }, + "MoveReplicaFaultEnabled": { + "type": "boolean", + "description": "Indicates MoveReplica fault is enabled." + }, + "IncludedNodeTypeList": { + "type": "string", + "description": "List of included Node types." + }, + "IncludedApplicationList": { + "type": "string", + "description": "List of included Applications." + }, + "ClusterHealthPolicy": { + "type": "string", + "description": "Health policy." + }, + "ChaosContext": { + "type": "string", + "description": "Chaos Context." + } + }, + "required": [ + "MaxConcurrentFaults", + "TimeToRunInSeconds", + "MaxClusterStabilizationTimeoutInSeconds", + "WaitTimeBetweenIterationsInSeconds", + "WaitTimeBetweenFaultsInSeconds", + "MoveReplicaFaultEnabled", + "IncludedNodeTypeList", + "IncludedApplicationList", + "ClusterHealthPolicy", + "ChaosContext" + ], + "x-ms-discriminator-value": "ChaosStarted" + }, + "ChaosCodePackageRestartScheduledEvent": { + "description": "Chaos Restart Code Package Fault Scheduled event.", + "allOf": [ + { + "$ref": "#/definitions/ApplicationEvent" + } + ], + "properties": { + "FaultGroupId": { + "type": "string", + "format": "uuid", + "description": "Id of fault group." + }, + "FaultId": { + "type": "string", + "format": "uuid", + "description": "Id of fault." + }, + "NodeName": { + "$ref": "#/definitions/NodeName", + "description": "The name of a Service Fabric node." + }, + "ServiceManifestName": { + "type": "string", + "description": "Service manifest name." + }, + "CodePackageName": { + "type": "string", + "description": "Code package name." + }, + "ServicePackageActivationId": { + "type": "string", + "description": "Id of Service package activation." + } + }, + "required": [ + "FaultGroupId", + "FaultId", + "NodeName", + "ServiceManifestName", + "CodePackageName", + "ServicePackageActivationId" + ], + "x-ms-discriminator-value": "ChaosCodePackageRestartScheduled" + }, + "ChaosReplicaRemovalScheduledEvent": { + "description": "Chaos Remove Replica Fault Scheduled event.", + "allOf": [ + { + "$ref": "#/definitions/ReplicaEvent" + } + ], + "properties": { + "FaultGroupId": { + "type": "string", + "format": "uuid", + "description": "Id of fault group." + }, + "FaultId": { + "type": "string", + "format": "uuid", + "description": "Id of fault." + }, + "ServiceUri": { + "type": "string", + "description": "Service name." + } + }, + "required": [ + "FaultGroupId", + "FaultId", + "ServiceUri" + ], + "x-ms-discriminator-value": "ChaosReplicaRemovalScheduled" + }, + "ChaosPartitionSecondaryMoveScheduledEvent": { + "description": "Chaos Move Secondary Fault Scheduled event.", + "allOf": [ + { + "$ref": "#/definitions/PartitionEvent" + } + ], + "properties": { + "FaultGroupId": { + "type": "string", + "format": "uuid", + "description": "Id of fault group." + }, + "FaultId": { + "type": "string", + "format": "uuid", + "description": "Id of fault." + }, + "ServiceName": { + "type": "string", + "description": "Service name." + }, + "SourceNode": { + "$ref": "#/definitions/NodeName", + "description": "The name of a Service Fabric node." + }, + "DestinationNode": { + "$ref": "#/definitions/NodeName", + "description": "The name of a Service Fabric node." + }, + "ForcedMove": { + "type": "boolean", + "description": "Indicates a forced move." + } + }, + "required": [ + "FaultGroupId", + "FaultId", + "ServiceName", + "SourceNode", + "DestinationNode", + "ForcedMove" + ], + "x-ms-discriminator-value": "ChaosPartitionSecondaryMoveScheduled" + }, + "ChaosPartitionPrimaryMoveScheduledEvent": { + "description": "Chaos Move Primary Fault Scheduled event.", + "allOf": [ + { + "$ref": "#/definitions/PartitionEvent" + } + ], + "properties": { + "FaultGroupId": { + "type": "string", + "format": "uuid", + "description": "Id of fault group." + }, + "FaultId": { + "type": "string", + "format": "uuid", + "description": "Id of fault." + }, + "ServiceName": { + "type": "string", + "description": "Service name." + }, + "NodeTo": { + "$ref": "#/definitions/NodeName", + "description": "The name of a Service Fabric node." + }, + "ForcedMove": { + "type": "boolean", + "description": "Indicates a forced move." + } + }, + "required": [ + "FaultGroupId", + "FaultId", + "ServiceName", + "NodeTo", + "ForcedMove" + ], + "x-ms-discriminator-value": "ChaosPartitionPrimaryMoveScheduled" + }, + "ChaosReplicaRestartScheduledEvent": { + "description": "Chaos Restart Replica Fault Scheduled event.", + "allOf": [ + { + "$ref": "#/definitions/ReplicaEvent" + } + ], + "properties": { + "FaultGroupId": { + "type": "string", + "format": "uuid", + "description": "Id of fault group." + }, + "FaultId": { + "type": "string", + "format": "uuid", + "description": "Id of fault." + }, + "ServiceUri": { + "type": "string", + "description": "Service name." + } + }, + "required": [ + "FaultGroupId", + "FaultId", + "ServiceUri" + ], + "x-ms-discriminator-value": "ChaosReplicaRestartScheduled" + }, + "ChaosNodeRestartScheduledEvent": { + "description": "Chaos Restart Node Fault Scheduled event.", + "allOf": [ + { + "$ref": "#/definitions/NodeEvent" + } + ], + "properties": { + "NodeInstanceId": { + "type": "integer", + "format": "int64", + "description": "Id of Node instance." + }, + "FaultGroupId": { + "type": "string", + "format": "uuid", + "description": "Id of fault group." + }, + "FaultId": { + "type": "string", + "format": "uuid", + "description": "Id of fault." + } + }, + "required": [ + "NodeInstanceId", + "FaultGroupId", + "FaultId" + ], + "x-ms-discriminator-value": "ChaosNodeRestartScheduled" + }, + "ManagedApplicationIdentityDescription": { + "description": "Managed application identity description.", + "properties": { + "TokenServiceEndpoint": { + "type": "string", + "description": "Token service endpoint." + }, + "ManagedIdentities": { + "$ref": "#/definitions/ManagedApplicationIdentityList", + "description": "A list of managed application identity objects." + } + } + }, + "ManagedApplicationIdentityList": { + "description": "A list of managed application identity objects.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedApplicationIdentity" + } + }, + "ManagedApplicationIdentity": { + "description": "Describes a managed application identity.", + "required": [ + "Name" + ], + "properties": { + "Name": { + "type": "string", + "description": "The name of the identity." + }, + "PrincipalId": { + "type": "string", + "description": "The identity's PrincipalId." + } + } + }, + "InstanceCloseDelayDurationInSeconds": { + "type": "integer", + "format": "int64", + "description": "Duration in seconds, to wait before a stateless instance is closed, to allow the active requests to drain gracefully. This would be effective when the instance is closing during the application/cluster\nupgrade, only for those instances which have a non-zero delay duration configured in the service description. See InstanceCloseDelayDurationSeconds property in $ref: \"#/definitions/StatelessServiceDescription.yaml\" for details.\nNote, the default value of InstanceCloseDelayDurationInSeconds is 4294967295, which indicates that the behavior will entirely depend on the delay configured in the stateless service description.", + "default": 4294967295 + }, + "MetricLoadDescription": { + "description": "Specifies metric load information.", + "properties": { + "MetricName": { + "type": "string", + "description": "The name of the reported metric." + }, + "CurrentLoad": { + "type": "integer", + "format": "int64", + "description": "The current value of the metric load." + }, + "PredictedLoad": { + "type": "integer", + "format": "int64", + "description": "The predicted value of the metric load." + } + } + }, + "PagedUpdatePartitionLoadResultList": { + "description": "The list of results of the call UpdatePartitionLoad. The list is paged when all of the results cannot fit in a single message. The next set of results can be obtained by executing the same query with the continuation token provided in this list.", + "properties": { + "ContinuationToken": { + "$ref": "#/definitions/ContinuationToken", + "description": "The continuation token parameter is used to obtain next set of results. The continuation token is included in the response of the API when the results from the system do not fit in a single response. When this value is passed to the next API call, the API returns next set of results. If there are no further results, then the continuation token is not included in the response." + }, + "Items": { + "type": "array", + "description": "List of partition load update information.", + "items": { + "$ref": "#/definitions/UpdatePartitionLoadResult" + } + } + } + }, + "PartitionMetricLoadDescription": { + "description": "Represents load information for a partition, which contains the metrics load information about primary, all secondary replicas/instances or a specific secondary replica/instance located on a specific node.", + "properties": { + "PartitionId": { + "$ref": "#/definitions/PartitionId", + "description": "Id of the partition." + }, + "PrimaryReplicaLoadEntries": { + "type": "array", + "description": "Partition's load information for primary replica, in case partition is from a stateful service.", + "items": { + "$ref": "#/definitions/MetricLoadDescription" + } + }, + "SecondaryReplicasOrInstancesLoadEntries": { + "type": "array", + "description": "Partition's load information for all secondary replicas or instances.", + "items": { + "$ref": "#/definitions/MetricLoadDescription" + } + }, + "SecondaryReplicaOrInstanceLoadEntriesPerNode": { + "type": "array", + "description": "Partition's load information for a specific secondary replica or instance located on a specific node.", + "items": { + "$ref": "#/definitions/ReplicaMetricLoadDescription" + } + } + } + }, + "PartitionMetricLoadDescriptionList": { + "type": "array", + "items": { + "$ref": "#/definitions/PartitionMetricLoadDescription" + }, + "description": "List that contains load descriptions of each partition." + }, + "ReplicaMetricLoadDescription": { + "description": "Specifies metric loads of a partition's specific secondary replica or instance.", + "properties": { + "NodeName": { + "type": "string", + "description": "Node name of a specific secondary replica or instance." + }, + "ReplicaOrInstanceLoadEntries": { + "type": "array", + "items": { + "$ref": "#/definitions/MetricLoadDescription" + }, + "description": "Loads of a different metrics for a partition's secondary replica or instance." + } + } + }, + "UpdatePartitionLoadResult": { + "description": "Specifies result of updating load for specified partitions. The output will be ordered based on the partition ID.", + "properties": { + "PartitionId": { + "$ref": "#/definitions/PartitionId", + "description": "Id of the partition." + }, + "PartitionErrorCode": { + "type": "integer", + "description": "If OperationState is Completed - this is 0. If OperationState is Faulted - this is an error code indicating the reason." + } + } + }, + "InstanceLifecycleDescription": { + "description": "Describes how the instance will behave", + "properties": { + "RestoreReplicaLocationAfterUpgrade": { + "type": "boolean", + "description": "If set to true, move/swap replica to original location after upgrade." + } + } + }, + "ReplicaLifecycleDescription": { + "description": "Describes how the replica will behave", + "properties": { + "IsSingletonReplicaMoveAllowedDuringUpgrade": { + "type": "boolean", + "description": "If set to true, replicas with a target replica set size of 1 will be permitted to move during upgrade." + }, + "RestoreReplicaLocationAfterUpgrade": { + "type": "boolean", + "description": "If set to true, move/swap replica to original location after upgrade." + } + } + }, + "NodeTagsList": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List that contains tags, which will be applied to the nodes." + }, + "NodeTypeHealthPolicyMap": { + "type": "array", + "items": { + "$ref": "#/definitions/NodeTypeHealthPolicyMapItem" + }, + "description": "Defines a map with max percentage unhealthy nodes for specific node types.\nEach entry specifies as key the node type name and as value an integer that represents the MaxPercentUnhealthyNodes percentage used to evaluate the nodes of the specified node type.\n\nThe node type health policy map can be used during cluster health evaluation to describe special node types. \nThey are evaluated against the percentages associated with their node type name in the map. \nSetting this has no impact on the global pool of nodes used for MaxPercentUnhealthyNodes. \nThe node type health policy map is used only if the cluster manifest enables node type health evaluation using the configuration entry for HealthManager/EnableNodeTypeHealthEvaluation.\n\nFor example, given a cluster with many nodes of different types, with important work hosted on node type \"SpecialNodeType\" that should not tolerate any nodes down. \nYou can specify global MaxPercentUnhealthyNodes to 20% to tolerate some failures for all nodes, but for the node type \"SpecialNodeType\", set the MaxPercentUnhealthyNodes to 0 by \nsetting the value in the key value pair in NodeTypeHealthPolicyMapItem. The key is the node type name. \nThis way, as long as no nodes of type \"SpecialNodeType\" are in Error state, \neven if some of the many nodes in the global pool are in Error state, but below the global unhealthy percentage, the cluster would be evaluated to Warning. \nA Warning health state does not impact cluster upgrade or other monitoring triggered by Error health state. \nBut even one node of type SpecialNodeType in Error would make cluster unhealthy (in Error rather than Warning/Ok), which triggers rollback or pauses the cluster upgrade, depending on the upgrade configuration. \n\nConversely, setting the global MaxPercentUnhealthyNodes to 0, and setting SpecialNodeType's max percent unhealthy nodes to 100, \nwith one node of type SpecialNodeType in Error state would still put the cluster in an Error state, since the global restriction is more strict in this case." + }, + "NodeTypeHealthPolicyMapItem": { + "description": "Defines an item in NodeTypeHealthPolicyMap.", + "required": [ + "Key", + "Value" + ], + "properties": { + "Key": { + "type": "string", + "description": "The key of the node type health policy map item. This is the name of the node type." + }, + "Value": { + "type": "integer", + "description": "The value of the node type health policy map item.\nIf the percentage is respected but there is at least one unhealthy node in the node type, the health is evaluated as Warning. \nThe percentage is calculated by dividing the number of unhealthy nodes over the total number of nodes in the node type. \nThe computation rounds up to tolerate one failure on small numbers of nodes.\nThe max percent unhealthy nodes allowed for the node type. Must be between zero and 100." + } + } + }, + "NodeTypeNodesHealthEvaluation": { + "x-ms-discriminator-value": "NodeTypeNodes", + "description": "Represents health evaluation for nodes of a particular node type. The node type nodes evaluation can be returned when cluster health evaluation returns unhealthy aggregated health state, either Error or Warning. It contains health evaluations for each unhealthy node of the included node type that impacted current aggregated health state.", + "allOf": [ + { + "$ref": "#/definitions/HealthEvaluation" + } + ], + "properties": { + "NodeTypeName": { + "$ref": "#/definitions/NodeTypeName", + "description": "The node type name as defined in the cluster manifest." + }, + "MaxPercentUnhealthyNodes": { + "type": "integer", + "description": "Maximum allowed percentage of unhealthy nodes for the node type, specified as an entry in NodeTypeHealthPolicyMap." + }, + "TotalCount": { + "type": "integer", + "format": "int64", + "description": "Total number of nodes of the node type found in the health store." + }, + "UnhealthyEvaluations": { + "$ref": "#/definitions/UnhealthyEvaluations", + "description": "List of unhealthy evaluations that led to the aggregated health state. Includes all the unhealthy NodeHealthEvaluation of this node type that impacted the aggregated health." + } + } + }, + "ResourceStatus": { + "description": "Status of the resource.", + "type": "string", + "enum": [ + "Unknown", + "Ready", + "Upgrading", + "Creating", + "Deleting", + "Failed" + ], + "x-ms-enum": { + "name": "ResourceStatus", + "modelAsString": true, + "values": [ + { + "value": "Unknown", + "description": "Indicates the resource status is unknown. The value is zero." + }, + { + "value": "Ready", + "description": "Indicates the resource is ready. The value is 1." + }, + { + "value": "Upgrading", + "description": "Indicates the resource is upgrading. The value is 2." + }, + { + "value": "Creating", + "description": "Indicates the resource is being created. The value is 3." + }, + { + "value": "Deleting", + "description": "Indicates the resource is being deleted. The value is 4." + }, + { + "value": "Failed", + "description": "Indicates the resource is not functional due to persistent failures. See statusDetails property for more details. The value is 5." + } + ] + } + }, + "SecretKind": { + "type": "string", + "description": "Describes the kind of secret.", + "enum": [ + "inlinedValue", + "keyVaultVersionedReference" + ], + "x-ms-enum": { + "name": "SecretKind", + "modelAsString": true, + "values": [ + { + "value": "inlinedValue", + "description": "A simple secret resource whose plaintext value is provided by the user." + }, + { + "value": "keyVaultVersionedReference", + "description": "A secret resource that references a specific version of a secret stored in Azure Key Vault; the expected value is a versioned KeyVault URI corresponding to the version of the secret being referenced." + } + ] + } + }, + "SecretResourceProperties": { + "description": "Describes the properties of a secret resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/SecretResourcePropertiesBase" + } + ], + "properties": { + "description": { + "description": "User readable description of the secret.", + "type": "string" + }, + "status": { + "readOnly": true, + "$ref": "#/definitions/ResourceStatus", + "description": "Status of the resource." + }, + "statusDetails": { + "readOnly": true, + "type": "string", + "description": "Gives additional information about the current status of the secret." + }, + "contentType": { + "type": "string", + "description": "The type of the content stored in the secret value. The value of this property is opaque to Service Fabric. Once set, the value of this property cannot be changed." + } + } + }, + "InlinedValueSecretResourceProperties": { + "description": "Describes the properties of a secret resource whose value is provided explicitly as plaintext. The secret resource may have multiple values, each being uniquely versioned. The secret value of each version is stored encrypted, and delivered as plaintext into the context of applications referencing it.", + "allOf": [ + { + "$ref": "#/definitions/SecretResourceProperties" + } + ], + "x-ms-discriminator-value": "inlinedValue" + }, + "SecretResourceName": { + "type": "string", + "description": "Name of the Secret resource." + }, + "SecretResourceDescription": { + "description": "This type describes a secret resource.", + "properties": { + "properties": { + "$ref": "#/definitions/SecretResourceProperties", + "description": "Describes the properties of a secret resource." + }, + "name": { + "$ref": "#/definitions/SecretResourceName", + "description": "Name of the Secret resource." + } + }, + "required": [ + "name", + "properties" + ] + }, + "PagedSecretResourceDescriptionList": { + "type": "object", + "description": "The list of secret resources. The list is paged when all of the results cannot fit in a single message. The next set of results can be obtained by executing the same query with the continuation token provided in this list.", + "properties": { + "ContinuationToken": { + "$ref": "#/definitions/ContinuationToken", + "description": "The continuation token parameter is used to obtain next set of results. The continuation token is included in the response of the API when the results from the system do not fit in a single response. When this value is passed to the next API call, the API returns next set of results. If there are no further results, then the continuation token is not included in the response." + }, + "Items": { + "type": "array", + "description": "One page of the list.", + "items": { + "$ref": "#/definitions/SecretResourceDescription" + } + } + } + }, + "SecretResourcePropertiesBase": { + "discriminator": "kind", + "description": "This type describes the properties of a secret resource, including its kind.", + "type": "object", + "properties": { + "kind": { + "$ref": "#/definitions/SecretKind", + "description": "Describes the kind of secret." + } + }, + "required": [ + "kind" + ] + }, + "SecretValue": { + "type": "object", + "description": "This type represents the unencrypted value of the secret.", + "properties": { + "value": { + "type": "string", + "description": "The actual value of the secret." + } + } + }, + "SecretValueProperties": { + "type": "object", + "description": "This type describes properties of secret value resource.", + "properties": { + "value": { + "type": "string", + "description": "The actual value of the secret." + } + } + }, + "SecretValueResourceDescription": { + "description": "This type describes a value of a secret resource. The name of this resource is the version identifier corresponding to this secret value.", + "properties": { + "name": { + "type": "string", + "description": "Version identifier of the secret value." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SecretValueResourceProperties", + "description": "This type describes properties of a secret value resource." + } + }, + "required": [ + "name", + "properties" + ] + }, + "PagedSecretValueResourceDescriptionList": { + "type": "object", + "description": "The list of values of a secret resource, paged if the number of results exceeds the limits of a single message. The next set of results can be obtained by executing the same query with the continuation token provided in the previous page.", + "properties": { + "ContinuationToken": { + "$ref": "#/definitions/ContinuationToken", + "description": "The continuation token parameter is used to obtain next set of results. The continuation token is included in the response of the API when the results from the system do not fit in a single response. When this value is passed to the next API call, the API returns next set of results. If there are no further results, then the continuation token is not included in the response." + }, + "Items": { + "type": "array", + "items": { + "$ref": "#/definitions/SecretValueResourceDescription" + }, + "description": "One page of the list." + } + } + }, + "SecretValueResourceProperties": { + "description": "This type describes properties of a secret value resource.", + "allOf": [ + { + "$ref": "#/definitions/SecretValueProperties" + } + ] + }, + "VolumeProperties": { + "description": "Describes properties of a volume resource.", + "properties": { + "description": { + "type": "string", + "description": "User readable description of the volume." + }, + "status": { + "readOnly": true, + "$ref": "#/definitions/ResourceStatus", + "description": "Status of the volume." + }, + "statusDetails": { + "readOnly": true, + "type": "string", + "description": "Gives additional information about the current status of the volume." + }, + "provider": { + "$ref": "#/definitions/VolumeProvider", + "description": "Provider of the volume." + }, + "azureFileParameters": { + "$ref": "#/definitions/VolumeProviderParametersAzureFile", + "description": "This type describes a volume provided by an Azure Files file share." + } + }, + "required": [ + "provider" + ] + }, + "VolumeProvider": { + "type": "string", + "description": "Describes the provider of the volume resource.", + "enum": [ + "SFAzureFile" + ], + "x-ms-enum": { + "name": "VolumeProvider", + "modelAsString": true, + "values": [ + { + "value": "SFAzureFile", + "description": "Provides volumes that are backed by Azure Files." + } + ] + } + }, + "VolumeProviderParametersAzureFile": { + "description": "This type describes a volume provided by an Azure Files file share.", + "properties": { + "accountName": { + "description": "Name of the Azure storage account for the File Share.", + "type": "string" + }, + "accountKey": { + "description": "Access key of the Azure storage account for the File Share.", + "type": "string" + }, + "shareName": { + "description": "Name of the Azure Files file share that provides storage for the volume.", + "type": "string" + } + }, + "required": [ + "accountName", + "shareName" + ] + }, + "VolumeReference": { + "description": "Describes a reference to a volume resource.", + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of the volume being referenced." + }, + "readOnly": { + "type": "boolean", + "description": "The flag indicating whether the volume is read only. Default is 'false'." + }, + "destinationPath": { + "type": "string", + "description": "The path within the container at which the volume should be mounted. Only valid path characters are allowed." + } + }, + "required": [ + "name", + "destinationPath" + ] + }, + "ApplicationScopedVolume": { + "description": "Describes a volume whose lifetime is scoped to the application's lifetime.", + "allOf": [ + { + "$ref": "#/definitions/VolumeReference" + } + ], + "properties": { + "creationParameters": { + "$ref": "#/definitions/ApplicationScopedVolumeCreationParameters", + "description": "Describes parameters for creating application-scoped volumes." + } + }, + "required": [ + "creationParameters" + ] + }, + "ApplicationScopedVolumeCreationParameters": { + "description": "Describes parameters for creating application-scoped volumes.", + "type": "object", + "discriminator": "kind", + "properties": { + "kind": { + "$ref": "#/definitions/ApplicationScopedVolumeKind", + "description": "Specifies the application-scoped volume kind." + }, + "description": { + "description": "User readable description of the volume.", + "type": "string" + } + }, + "required": [ + "kind" + ] + }, + "ApplicationScopedVolumeCreationParametersServiceFabricVolumeDisk": { + "description": "Describes parameters for creating application-scoped volumes provided by Service Fabric Volume Disks", + "allOf": [ + { + "$ref": "#/definitions/ApplicationScopedVolumeCreationParameters" + } + ], + "properties": { + "sizeDisk": { + "description": "Volume size", + "type": "string", + "enum": [ + "Small", + "Medium", + "Large" + ], + "x-ms-enum": { + "name": "SizeTypes", + "modelAsString": true + } + } + }, + "required": [ + "sizeDisk" + ], + "x-ms-discriminator-value": "ServiceFabricVolumeDisk" + }, + "ApplicationScopedVolumeKind": { + "description": "Specifies the application-scoped volume kind.", + "type": "string", + "enum": [ + "ServiceFabricVolumeDisk" + ], + "x-ms-enum": { + "name": "ApplicationScopedVolumeKind", + "modelAsString": true, + "values": [ + { + "value": "ServiceFabricVolumeDisk", + "description": "Provides Service Fabric High Availability Volume Disk" + } + ] + } + }, + "VolumeResourceName": { + "type": "string", + "description": "Name of the Volume resource." + }, + "VolumeResourceDescription": { + "description": "This type describes a volume resource.", + "properties": { + "name": { + "$ref": "#/definitions/VolumeResourceName", + "description": "Name of the Volume resource." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VolumeProperties", + "description": "Describes properties of a volume resource." + } + }, + "required": [ + "name", + "properties" + ] + }, + "PagedVolumeResourceDescriptionList": { + "type": "object", + "description": "The list of volume resources. The list is paged when all of the results cannot fit in a single message. The next set of results can be obtained by executing the same query with the continuation token provided in this list.", + "properties": { + "ContinuationToken": { + "$ref": "#/definitions/ContinuationToken", + "description": "The continuation token parameter is used to obtain next set of results. The continuation token is included in the response of the API when the results from the system do not fit in a single response. When this value is passed to the next API call, the API returns next set of results. If there are no further results, then the continuation token is not included in the response." + }, + "Items": { + "type": "array", + "description": "One page of the list.", + "items": { + "$ref": "#/definitions/VolumeResourceDescription" + } + } + } + }, + "NetworkAddressPrefix": { + "type": "string", + "description": "Address space for a container network. This is expressed in CIDR notation." + }, + "NetworkRef": { + "description": "Describes a network reference in a service.", + "properties": { + "name": { + "type": "string", + "description": "Name of the network" + }, + "endpointRefs": { + "description": "A list of endpoints that are exposed on this network.", + "type": "array", + "items": { + "$ref": "#/definitions/EndpointRef" + } + } + } + }, + "EndpointRef": { + "description": "Describes a reference to a service endpoint.", + "properties": { + "name": { + "type": "string", + "description": "Name of the endpoint." + } + } + }, + "NetworkKind": { + "type": "string", + "description": "The type of a Service Fabric container network.", + "enum": [ + "Local" + ], + "x-ms-enum": { + "name": "NetworkKind", + "modelAsString": true, + "values": [ + { + "value": "Local", + "description": "Indicates a container network local to a single Service Fabric cluster. The value is 1." + } + ] + } + }, + "NetworkResourceProperties": { + "description": "Describes properties of a network resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/NetworkResourcePropertiesBase" + } + ], + "properties": { + "description": { + "type": "string", + "description": "User readable description of the network." + }, + "status": { + "readOnly": true, + "$ref": "#/definitions/ResourceStatus", + "description": "Status of the network." + }, + "statusDetails": { + "readOnly": true, + "type": "string", + "description": "Gives additional information about the current status of the network." + } + } + }, + "LocalNetworkResourceProperties": { + "description": "Information about a Service Fabric container network local to a single Service Fabric cluster.", + "allOf": [ + { + "$ref": "#/definitions/NetworkResourceProperties" + } + ], + "x-ms-discriminator-value": "Local", + "properties": { + "networkAddressPrefix": { + "$ref": "#/definitions/NetworkAddressPrefix", + "description": "Address space for the local container network." + } + } + }, + "NetworkResourceName": { + "type": "string", + "description": "Name of the Network resource." + }, + "NetworkResourceDescription": { + "description": "This type describes a network resource.", + "properties": { + "name": { + "$ref": "#/definitions/NetworkResourceName", + "description": "Name of the Network resource." + }, + "properties": { + "$ref": "#/definitions/NetworkResourceProperties", + "description": "Describes properties of a network resource." + } + }, + "required": [ + "name", + "properties" + ] + }, + "NetworkResourcePropertiesBase": { + "discriminator": "kind", + "description": "This type describes the properties of a network resource, including its kind.", + "type": "object", + "properties": { + "kind": { + "$ref": "#/definitions/NetworkKind", + "description": "The type of a Service Fabric container network." + } + }, + "required": [ + "kind" + ] + }, + "PagedNetworkResourceDescriptionList": { + "type": "object", + "description": "The list of network resources. The list is paged when all of the results cannot fit in a single message. The next set of results can be obtained by executing the same query with the continuation token provided in this list.", + "properties": { + "ContinuationToken": { + "$ref": "#/definitions/ContinuationToken", + "description": "The continuation token parameter is used to obtain next set of results. The continuation token is included in the response of the API when the results from the system do not fit in a single response. When this value is passed to the next API call, the API returns next set of results. If there are no further results, then the continuation token is not included in the response." + }, + "Items": { + "type": "array", + "description": "One page of the list.", + "items": { + "$ref": "#/definitions/NetworkResourceDescription" + } + } + } + }, + "GatewayDestination": { + "description": "Describes destination endpoint for routing traffic.", + "type": "object", + "properties": { + "applicationName": { + "type": "string", + "description": "Name of the service fabric Mesh application." + }, + "serviceName": { + "type": "string", + "description": "service that contains the endpoint." + }, + "endpointName": { + "type": "string", + "description": "name of the endpoint in the service." + } + }, + "required": [ + "applicationName", + "endpointName", + "serviceName" + ] + }, + "GatewayProperties": { + "description": "Describes properties of a gateway resource.", + "properties": { + "description": { + "description": "User readable description of the gateway.", + "type": "string" + }, + "sourceNetwork": { + "$ref": "#/definitions/NetworkRef", + "description": "Network the gateway should listen on for requests." + }, + "destinationNetwork": { + "$ref": "#/definitions/NetworkRef", + "description": "Network that the Application is using." + }, + "tcp": { + "description": "Configuration for tcp connectivity for this gateway.", + "type": "array", + "items": { + "$ref": "#/definitions/TcpConfig" + } + }, + "http": { + "description": "Configuration for http connectivity for this gateway.", + "type": "array", + "items": { + "$ref": "#/definitions/HttpConfig" + } + }, + "status": { + "readOnly": true, + "$ref": "#/definitions/ResourceStatus", + "description": "Status of the resource." + }, + "statusDetails": { + "readOnly": true, + "type": "string", + "description": "Gives additional information about the current status of the gateway." + }, + "ipAddress": { + "readOnly": true, + "type": "string", + "description": "IP address of the gateway. This is populated in the response and is ignored for incoming requests." + } + }, + "required": [ + "destinationNetwork", + "sourceNetwork" + ] + }, + "HttpConfig": { + "description": "Describes the http configuration for external connectivity for this network.", + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "http gateway config name." + }, + "port": { + "type": "integer", + "description": "Specifies the port at which the service endpoint below needs to be exposed." + }, + "hosts": { + "type": "array", + "description": "description for routing.", + "items": { + "$ref": "#/definitions/HttpHostConfig" + } + } + }, + "required": [ + "hosts", + "name", + "port" + ] + }, + "HttpHostConfig": { + "description": "Describes the hostname properties for http routing.", + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "http hostname config name." + }, + "routes": { + "type": "array", + "description": "Route information to use for routing. Routes are processed in the order they are specified. Specify routes that are more specific before routes that can handle general cases.", + "items": { + "$ref": "#/definitions/HttpRouteConfig" + } + } + }, + "required": [ + "name", + "routes" + ] + }, + "HttpRouteConfig": { + "description": "Describes the hostname properties for http routing.", + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "http route name." + }, + "match": { + "$ref": "#/definitions/HttpRouteMatchRule", + "description": "Describes a rule for http route matching." + }, + "destination": { + "$ref": "#/definitions/GatewayDestination", + "description": "Describes destination endpoint for routing traffic." + } + }, + "required": [ + "destination", + "match", + "name" + ] + }, + "HttpRouteMatchHeader": { + "description": "Describes header information for http route matching.", + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of header to match in request." + }, + "value": { + "type": "string", + "description": "Value of header to match in request." + }, + "type": { + "type": "string", + "description": "how to match header value", + "enum": [ + "exact" + ], + "x-ms-enum": { + "name": "HeaderMatchType", + "modelAsString": true + } + } + }, + "required": [ + "name" + ] + }, + "HttpRouteMatchPath": { + "description": "Path to match for routing.", + "type": "object", + "properties": { + "value": { + "type": "string", + "description": "Uri path to match for request." + }, + "rewrite": { + "type": "string", + "description": "replacement string for matched part of the Uri." + }, + "type": { + "type": "string", + "description": "how to match value in the Uri", + "enum": [ + "prefix" + ], + "x-ms-enum": { + "name": "PathMatchType", + "modelAsString": true + } + } + }, + "required": [ + "type", + "value" + ] + }, + "HttpRouteMatchRule": { + "description": "Describes a rule for http route matching.", + "type": "object", + "properties": { + "path": { + "$ref": "#/definitions/HttpRouteMatchPath", + "description": "Path to match for routing." + }, + "headers": { + "type": "array", + "description": "headers and their values to match in request.", + "items": { + "$ref": "#/definitions/HttpRouteMatchHeader" + } + } + }, + "required": [ + "path" + ] + }, + "TcpConfig": { + "description": "Describes the tcp configuration for external connectivity for this network.", + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "tcp gateway config name." + }, + "port": { + "type": "integer", + "description": "Specifies the port at which the service endpoint below needs to be exposed." + }, + "destination": { + "$ref": "#/definitions/GatewayDestination", + "description": "Describes destination endpoint for routing traffic." + } + }, + "required": [ + "destination", + "name", + "port" + ] + }, + "GatewayResourceName": { + "type": "string", + "description": "Name of the Gateway resource." + }, + "GatewayResourceDescription": { + "description": "This type describes a gateway resource.", + "properties": { + "name": { + "$ref": "#/definitions/GatewayResourceName", + "description": "Name of the Gateway resource." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/GatewayProperties", + "description": "Describes properties of a gateway resource." + } + }, + "required": [ + "name", + "properties" + ] + }, + "PagedGatewayResourceDescriptionList": { + "type": "object", + "description": "The list of gateway resources. The list is paged when all of the results cannot fit in a single message. The next set of results can be obtained by executing the same query with the continuation token provided in this list.", + "properties": { + "ContinuationToken": { + "$ref": "#/definitions/ContinuationToken", + "description": "The continuation token parameter is used to obtain next set of results. The continuation token is included in the response of the API when the results from the system do not fit in a single response. When this value is passed to the next API call, the API returns next set of results. If there are no further results, then the continuation token is not included in the response." + }, + "Items": { + "type": "array", + "description": "One page of the list.", + "items": { + "$ref": "#/definitions/GatewayResourceDescription" + } + } + } + }, + "ApplicationProperties": { + "description": "Describes properties of a application resource.", + "properties": { + "description": { + "type": "string", + "description": "User readable description of the application." + }, + "services": { + "type": "array", + "description": "Describes the services in the application. This property is used to create or modify services of the application. On get only the name of the service is returned. The service description can be obtained by querying for the service resource.", + "items": { + "$ref": "#/definitions/ServiceResourceDescription" + } + }, + "diagnostics": { + "$ref": "#/definitions/DiagnosticsDescription", + "description": "Describes the diagnostics definition and usage for an application resource." + }, + "debugParams": { + "description": "Internal - used by Visual Studio to setup the debugging session on the local development environment.", + "type": "string" + }, + "serviceNames": { + "readOnly": true, + "description": "Names of the services in the application.", + "type": "array", + "items": { + "type": "string" + } + }, + "status": { + "readOnly": true, + "$ref": "#/definitions/ResourceStatus", + "description": "Status of the application." + }, + "statusDetails": { + "readOnly": true, + "type": "string", + "description": "Gives additional information about the current status of the application." + }, + "healthState": { + "readOnly": true, + "$ref": "#/definitions/HealthState", + "description": "Describes the health state of an application resource." + }, + "unhealthyEvaluation": { + "readOnly": true, + "type": "string", + "description": "When the application's health state is not 'Ok', this additional details from service fabric Health Manager for the user to know why the application is marked unhealthy." + } + } + }, + "ApplicationResourceUpgradeProgressInfo": { + "description": "This type describes an application resource upgrade.", + "properties": { + "Name": { + "type": "string", + "description": "Name of the Application resource." + }, + "TargetApplicationTypeVersion": { + "type": "string", + "description": "The target application version for the application upgrade." + }, + "StartTimestampUtc": { + "type": "string", + "description": "The estimated UTC datetime when the upgrade started." + }, + "UpgradeState": { + "$ref": "#/definitions/ApplicationResourceUpgradeState", + "description": "The state of the application resource upgrade." + }, + "PercentCompleted": { + "type": "string", + "description": "The estimated percent of replicas are completed in the upgrade." + }, + "ServiceUpgradeProgress": { + "$ref": "#/definitions/ServiceUpgradeProgressList", + "description": "List of service upgrade progresses." + }, + "RollingUpgradeMode": { + "$ref": "#/definitions/RollingUpgradeMode", + "description": "The mode used to monitor health during a rolling upgrade. The values are UnmonitoredAuto, UnmonitoredManual, and Monitored." + }, + "UpgradeDuration": { + "type": "string", + "description": "The estimated amount of time that the overall upgrade elapsed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds.", + "default": "PT0H2M0S" + }, + "ApplicationUpgradeStatusDetails": { + "type": "string", + "description": "Additional detailed information about the status of the pending upgrade." + }, + "UpgradeReplicaSetCheckTimeoutInSeconds": { + "type": "integer", + "format": "int64", + "description": "The maximum amount of time to block processing of an upgrade domain and prevent loss of availability when there are unexpected issues. When this timeout expires, processing of the upgrade domain will proceed regardless of availability loss issues. The timeout is reset at the start of each upgrade domain. Valid values are between 0 and 42949672925 inclusive. (unsigned 32-bit integer).", + "default": 42949672925 + }, + "FailureTimestampUtc": { + "type": "string", + "description": "The estimated UTC datetime when the upgrade failed and FailureAction was executed." + } + } + }, + "ApplicationResourceUpgradeState": { + "type": "string", + "description": "The state of the application resource upgrade.", + "enum": [ + "Invalid", + "ProvisioningTarget", + "RollingForward", + "UnprovisioningCurrent", + "CompletedRollforward", + "RollingBack", + "UnprovisioningTarget", + "CompletedRollback", + "Failed" + ], + "x-ms-enum": { + "name": "ApplicationResourceUpgradeState", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the upgrade state is invalid. All Service Fabric enumerations have the invalid type. The value is 0." + }, + { + "value": "ProvisioningTarget", + "description": "The upgrade is in the progress of provisioning target application type version. The value is 1." + }, + { + "value": "RollingForward", + "description": "The upgrade is rolling forward to the target version but is not complete yet. The value is 2." + }, + { + "value": "UnprovisioningCurrent", + "description": "The upgrade is in the progress of unprovisioning current application type version and rolling forward to the target version is completed. The value is 3." + }, + { + "value": "CompletedRollforward", + "description": "The upgrade has finished rolling forward. The value is 4." + }, + { + "value": "RollingBack", + "description": "The upgrade is rolling back to the previous version but is not complete yet. The value is 5." + }, + { + "value": "UnprovisioningTarget", + "description": "The upgrade is in the progress of unprovisioning target application type version and rolling back to the current version is completed. The value is 6." + }, + { + "value": "CompletedRollback", + "description": "The upgrade has finished rolling back. The value is 7." + }, + { + "value": "Failed", + "description": "The upgrade has failed and is unable to execute FailureAction. The value is 8." + } + ] + } + }, + "AzureInternalMonitoringPipelineSinkDescription": { + "allOf": [ + { + "$ref": "#/definitions/DiagnosticsSinkProperties" + } + ], + "x-ms-discriminator-value": "AzureInternalMonitoringPipeline", + "description": "Diagnostics settings for Geneva.", + "properties": { + "accountName": { + "description": "Azure Internal monitoring pipeline account.", + "type": "string" + }, + "namespace": { + "description": "Azure Internal monitoring pipeline account namespace.", + "type": "string" + }, + "maConfigUrl": { + "description": "Azure Internal monitoring agent configuration.", + "type": "string" + }, + "fluentdConfigUrl": { + "description": "Azure Internal monitoring agent fluentd configuration.", + "type": "string" + }, + "autoKeyConfigUrl": { + "description": "Azure Internal monitoring pipeline autokey associated with the certificate.", + "type": "string" + } + } + }, + "DiagnosticsDescription": { + "description": "Describes the diagnostics options available", + "properties": { + "sinks": { + "description": "List of supported sinks that can be referenced.", + "type": "array", + "items": { + "$ref": "#/definitions/DiagnosticsSinkProperties" + } + }, + "enabled": { + "description": "Status of whether or not sinks are enabled.", + "type": "boolean" + }, + "defaultSinkRefs": { + "description": "The sinks to be used if diagnostics is enabled. Sink choices can be overridden at the service and code package level.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "DiagnosticsRef": { + "description": "Reference to sinks in DiagnosticsDescription.", + "properties": { + "enabled": { + "description": "Status of whether or not sinks are enabled.", + "type": "boolean" + }, + "sinkRefs": { + "description": "List of sinks to be used if enabled. References the list of sinks in DiagnosticsDescription.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "DiagnosticsSinkKind": { + "type": "string", + "description": "The kind of DiagnosticsSink.", + "enum": [ + "Invalid", + "AzureInternalMonitoringPipeline" + ], + "x-ms-enum": { + "name": "DiagnosticsSinkKind", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates an invalid sink kind. All Service Fabric enumerations have the invalid type." + }, + { + "value": "AzureInternalMonitoringPipeline", + "description": "Diagnostics settings for Geneva." + } + ] + } + }, + "DiagnosticsSinkProperties": { + "description": "Properties of a DiagnosticsSink.", + "discriminator": "kind", + "properties": { + "kind": { + "$ref": "#/definitions/DiagnosticsSinkKind", + "description": "The kind of DiagnosticsSink." + }, + "name": { + "description": "Name of the sink. This value is referenced by DiagnosticsReferenceDescription", + "type": "string" + }, + "description": { + "description": "A description of the sink.", + "type": "string" + } + }, + "required": [ + "kind" + ] + }, + "IdentityDescription": { + "description": "Information describing the identities associated with this application.", + "properties": { + "tokenServiceEndpoint": { + "type": "string", + "description": "the endpoint for the token service managing this identity" + }, + "type": { + "type": "string", + "description": "the types of identities associated with this resource; currently restricted to 'SystemAssigned and UserAssigned'" + }, + "tenantId": { + "type": "string", + "description": "the identifier of the tenant containing the application's identity." + }, + "principalId": { + "type": "string", + "description": "the object identifier of the Service Principal of the identity associated with this resource." + }, + "userAssignedIdentities": { + "$ref": "#/definitions/UserAssignedIdentityMap", + "description": "represents user assigned identities map." + } + }, + "required": [ + "type" + ] + }, + "IdentityItemDescription": { + "description": "Describes a single user-assigned identity associated with the application.", + "type": "object", + "properties": { + "principalId": { + "type": "string", + "description": "the object identifier of the Service Principal which this identity represents." + }, + "clientId": { + "type": "string", + "description": "the client identifier of the Service Principal which this identity represents." + } + } + }, + "RollingUpgradeMode": { + "type": "string", + "description": "The mode used to monitor health during a rolling upgrade. The values are UnmonitoredAuto, UnmonitoredManual, and Monitored.", + "enum": [ + "Invalid", + "UnmonitoredAuto", + "UnmonitoredManual", + "Monitored" + ], + "default": "Monitored", + "x-ms-enum": { + "name": "RollingUpgradeMode", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the upgrade mode is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "UnmonitoredAuto", + "description": "The upgrade will proceed automatically without performing any health monitoring. The value is 1" + }, + { + "value": "UnmonitoredManual", + "description": "The upgrade will stop after completing each upgrade domain, giving the opportunity to manually monitor health before proceeding. The value is 2" + }, + { + "value": "Monitored", + "description": "The upgrade will stop after completing each upgrade domain and automatically monitor health before proceeding. The value is 3" + } + ] + } + }, + "ServiceUpgradeProgressList": { + "type": "array", + "description": "List of service upgrade progresses.", + "items": { + "$ref": "#/definitions/ServiceUpgradeProgress" + } + }, + "ServiceUpgradeProgress": { + "description": "Information about how many replicas are completed or pending for a specific service during upgrade.", + "properties": { + "ServiceName": { + "type": "string", + "description": "Name of the Service resource." + }, + "CompletedReplicaCount": { + "type": "string", + "description": "The number of replicas that completes the upgrade in the service." + }, + "PendingReplicaCount": { + "type": "string", + "description": "The number of replicas that are waiting to be upgraded in the service." + } + } + }, + "UserAssignedIdentityMap": { + "type": "object", + "description": "Defines a map that contains user assigned identities.", + "additionalProperties": { + "$ref": "#/definitions/IdentityItemDescription" + } + }, + "AddRemoveReplicaScalingMechanism": { + "description": "Describes the horizontal auto scaling mechanism that adds or removes replicas (containers or container groups).", + "allOf": [ + { + "$ref": "#/definitions/AutoScalingMechanism" + }, + { + "type": "object" + } + ], + "x-ms-discriminator-value": "AddRemoveReplica", + "properties": { + "minCount": { + "type": "integer", + "description": "Minimum number of containers (scale down won't be performed below this number)." + }, + "maxCount": { + "type": "integer", + "description": "Maximum number of containers (scale up won't be performed above this number)." + }, + "scaleIncrement": { + "type": "integer", + "description": "Each time auto scaling is performed, this number of containers will be added or removed." + } + }, + "required": [ + "minCount", + "maxCount", + "scaleIncrement" + ] + }, + "AutoScalingMechanism": { + "type": "object", + "discriminator": "kind", + "description": "Describes the mechanism for performing auto scaling operation. Derived classes will describe the actual mechanism.", + "properties": { + "kind": { + "$ref": "#/definitions/AutoScalingMechanismKind", + "description": "The type of auto scaling mechanism." + } + }, + "required": [ + "kind" + ] + }, + "AutoScalingMechanismKind": { + "type": "string", + "description": "Enumerates the mechanisms for auto scaling.", + "enum": [ + "AddRemoveReplica" + ], + "x-ms-enum": { + "name": "AutoScalingMechanismKind", + "modelAsString": true, + "values": [ + { + "value": "AddRemoveReplica", + "description": "Indicates that scaling should be performed by adding or removing replicas." + } + ] + } + }, + "AutoScalingMetric": { + "type": "object", + "discriminator": "kind", + "description": "Describes the metric that is used for triggering auto scaling operation. Derived classes will describe resources or metrics.", + "properties": { + "kind": { + "$ref": "#/definitions/AutoScalingMetricKind", + "description": "The type of auto scaling metric" + } + }, + "required": [ + "kind" + ] + }, + "AutoScalingMetricKind": { + "type": "string", + "description": "Enumerates the metrics that are used for triggering auto scaling.", + "enum": [ + "Resource" + ], + "x-ms-enum": { + "name": "AutoScalingMetricKind", + "modelAsString": true, + "values": [ + { + "value": "Resource", + "description": "Indicates that the metric is one of resources, like cpu or memory." + } + ] + } + }, + "AutoScalingPolicy": { + "description": "Describes the auto scaling policy", + "type": "object", + "properties": { + "name": { + "description": "The name of the auto scaling policy.", + "type": "string" + }, + "trigger": { + "$ref": "#/definitions/AutoScalingTrigger", + "description": "Determines when auto scaling operation will be invoked." + }, + "mechanism": { + "$ref": "#/definitions/AutoScalingMechanism", + "description": "The mechanism that is used to scale when auto scaling operation is invoked." + } + }, + "required": [ + "name", + "trigger", + "mechanism" + ] + }, + "AutoScalingResourceMetric": { + "description": "Describes the resource that is used for triggering auto scaling.", + "allOf": [ + { + "$ref": "#/definitions/AutoScalingMetric" + }, + { + "type": "object" + } + ], + "x-ms-discriminator-value": "Resource", + "properties": { + "name": { + "$ref": "#/definitions/AutoScalingResourceMetricName", + "description": "Name of the resource." + } + }, + "required": [ + "name" + ] + }, + "AutoScalingResourceMetricName": { + "type": "string", + "description": "Enumerates the resources that are used for triggering auto scaling.", + "enum": [ + "cpu", + "memoryInGB" + ], + "x-ms-enum": { + "name": "AutoScalingResourceMetricName", + "modelAsString": true, + "values": [ + { + "value": "cpu", + "description": "Indicates that the resource is CPU cores." + }, + { + "value": "memoryInGB", + "description": "Indicates that the resource is memory in GB." + } + ] + } + }, + "AutoScalingTrigger": { + "type": "object", + "discriminator": "kind", + "description": "Describes the trigger for performing auto scaling operation.", + "properties": { + "kind": { + "$ref": "#/definitions/AutoScalingTriggerKind", + "description": "The type of auto scaling trigger" + } + }, + "required": [ + "kind" + ] + }, + "AutoScalingTriggerKind": { + "type": "string", + "description": "Enumerates the triggers for auto scaling.", + "enum": [ + "AverageLoad" + ], + "x-ms-enum": { + "name": "AutoScalingTriggerKind", + "modelAsString": true, + "values": [ + { + "value": "AverageLoad", + "description": "Indicates that scaling should be performed based on average load of all replicas in the service." + } + ] + } + }, + "ContainerCodePackageProperties": { + "description": "Describes a container and its runtime properties.", + "properties": { + "name": { + "description": "The name of the code package.", + "type": "string" + }, + "image": { + "description": "The Container image to use.", + "type": "string" + }, + "imageRegistryCredential": { + "$ref": "#/definitions/ImageRegistryCredential", + "description": "Image registry credential." + }, + "entryPoint": { + "description": "Override for the default entry point in the container.", + "type": "string" + }, + "commands": { + "description": "Command array to execute within the container in exec form.", + "type": "array", + "items": { + "type": "string" + } + }, + "environmentVariables": { + "description": "The environment variables to set in this container", + "type": "array", + "items": { + "$ref": "#/definitions/EnvironmentVariable" + } + }, + "settings": { + "description": "The settings to set in this container. The setting file path can be fetched from environment variable \"Fabric_SettingPath\". The path for Windows container is \"C:\\\\secrets\". The path for Linux container is \"/var/secrets\".", + "type": "array", + "items": { + "$ref": "#/definitions/Setting" + } + }, + "labels": { + "description": "The labels to set in this container.", + "type": "array", + "items": { + "$ref": "#/definitions/ContainerLabel" + } + }, + "endpoints": { + "description": "The endpoints exposed by this container.", + "type": "array", + "items": { + "$ref": "#/definitions/EndpointProperties" + } + }, + "resources": { + "description": "The resources required by this container.", + "$ref": "#/definitions/ResourceRequirements" + }, + "volumeRefs": { + "description": "Volumes to be attached to the container. The lifetime of these volumes is independent of the application's lifetime.", + "type": "array", + "items": { + "$ref": "#/definitions/VolumeReference" + } + }, + "volumes": { + "description": "Volumes to be attached to the container. The lifetime of these volumes is scoped to the application's lifetime.", + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationScopedVolume" + } + }, + "diagnostics": { + "$ref": "#/definitions/DiagnosticsRef", + "description": "Reference to sinks in DiagnosticsDescription." + }, + "reliableCollectionsRefs": { + "description": "A list of ReliableCollection resources used by this particular code package. Please refer to ReliableCollectionsRef for more details.", + "type": "array", + "items": { + "$ref": "#/definitions/ReliableCollectionsRef" + } + }, + "instanceView": { + "readOnly": true, + "$ref": "#/definitions/ContainerInstanceView", + "description": "Runtime information of a container instance." + }, + "livenessProbe": { + "description": "An array of liveness probes for a code package. It determines when to restart a code package.", + "type": "array", + "items": { + "$ref": "#/definitions/Probe" + } + }, + "readinessProbe": { + "description": "An array of readiness probes for a code package. It determines when to unpublish an endpoint.", + "type": "array", + "items": { + "$ref": "#/definitions/Probe" + } + } + }, + "required": [ + "name", + "image", + "resources" + ] + }, + "ContainerEvent": { + "description": "A container event.", + "properties": { + "name": { + "type": "string", + "description": "The name of the container event." + }, + "count": { + "type": "integer", + "description": "The count of the event." + }, + "firstTimestamp": { + "type": "string", + "description": "Date/time of the first event." + }, + "lastTimestamp": { + "type": "string", + "description": "Date/time of the last event." + }, + "message": { + "type": "string", + "description": "The event message" + }, + "type": { + "type": "string", + "description": "The event type." + } + } + }, + "ContainerInstanceView": { + "description": "Runtime information of a container instance.", + "properties": { + "restartCount": { + "type": "integer", + "description": "The number of times the container has been restarted." + }, + "currentState": { + "$ref": "#/definitions/ContainerState", + "description": "Current container instance state." + }, + "previousState": { + "$ref": "#/definitions/ContainerState", + "description": "Previous container instance state." + }, + "events": { + "description": "The events of this container instance.", + "type": "array", + "items": { + "$ref": "#/definitions/ContainerEvent" + } + } + } + }, + "ContainerLabel": { + "description": "Describes a container label.", + "properties": { + "name": { + "description": "The name of the container label.", + "type": "string" + }, + "value": { + "description": "The value of the container label.", + "type": "string" + } + }, + "required": [ + "name", + "value" + ] + }, + "ContainerState": { + "description": "The container state.", + "properties": { + "state": { + "type": "string", + "description": "The state of this container" + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "Date/time when the container state started." + }, + "exitCode": { + "type": "string", + "description": "The container exit code." + }, + "finishTime": { + "type": "string", + "format": "date-time", + "description": "Date/time when the container state finished." + }, + "detailStatus": { + "description": "Human-readable status of this state.", + "type": "string" + } + } + }, + "DefaultExecutionPolicy": { + "description": "The default execution policy. Always restart the service if an exit occurs.", + "allOf": [ + { + "$ref": "#/definitions/ExecutionPolicy" + }, + { + "type": "object" + } + ], + "x-ms-discriminator-value": "Default" + }, + "EndpointProperties": { + "description": "Describes a container endpoint.", + "properties": { + "name": { + "description": "The name of the endpoint.", + "type": "string" + }, + "port": { + "description": "Port used by the container.", + "type": "integer" + } + }, + "required": [ + "name" + ] + }, + "EnvironmentVariable": { + "description": "Describes an environment variable for the container.", + "properties": { + "type": { + "$ref": "#/definitions/EnvironmentVariableType", + "description": "The type of the environment variable being given in value" + }, + "name": { + "description": "The name of the environment variable.", + "type": "string" + }, + "value": { + "description": "The value of the environment variable, will be processed based on the type provided.", + "type": "string" + } + } + }, + "EnvironmentVariableType": { + "type": "string", + "description": "The type of the environment variable being given in value", + "default": "ClearText", + "enum": [ + "ClearText", + "KeyVaultReference", + "SecretValueReference" + ], + "x-ms-enum": { + "name": "EnvironmentVariableType", + "modelAsString": true, + "values": [ + { + "value": "ClearText", + "description": "The environment variable in clear text, will not be processed in any way and passed in as is" + }, + { + "value": "KeyVaultReference", + "description": "The URI to a KeyVault secret version, will be resolved using the application's managed identity (this type is only valid if the app was assigned a managed identity) before getting passed in" + }, + { + "value": "SecretValueReference", + "description": "The reference to a SecretValue resource, will be resolved before getting passed in" + } + ] + } + }, + "ExecutionPolicy": { + "type": "object", + "discriminator": "type", + "description": "The execution policy of the service", + "properties": { + "type": { + "$ref": "#/definitions/ExecutionPolicyType", + "description": "Enumerates the execution policy types for services." + } + }, + "required": [ + "type" + ] + }, + "ExecutionPolicyType": { + "type": "string", + "description": "Enumerates the execution policy types for services.", + "enum": [ + "Default", + "RunToCompletion" + ], + "x-ms-enum": { + "name": "ExecutionPolicyType", + "modelAsString": true, + "values": [ + { + "value": "Default", + "description": "Indicates the default execution policy, always restart the service if an exit occurs." + }, + { + "value": "RunToCompletion", + "description": "Indicates that the service will perform its desired operation and complete successfully. If the service encounters failure, it will restarted based on restart policy specified. If the service completes its operation successfully, it will not be restarted again." + } + ] + } + }, + "ImageRegistryCredential": { + "description": "Image registry credential.", + "properties": { + "server": { + "type": "string", + "description": "Docker image registry server, without protocol such as `http` and `https`." + }, + "username": { + "type": "string", + "description": "The username for the private registry." + }, + "passwordType": { + "$ref": "#/definitions/ImageRegistryPasswordType", + "description": "The type of the image registry password being given in password" + }, + "password": { + "type": "string", + "description": "The password for the private registry. The password is required for create or update operations, however it is not returned in the get or list operations. Will be processed based on the type provided." + } + }, + "required": [ + "server", + "username" + ] + }, + "ImageRegistryPasswordType": { + "type": "string", + "description": "The type of the image registry password being given in password", + "default": "ClearText", + "enum": [ + "ClearText", + "KeyVaultReference", + "SecretValueReference" + ], + "x-ms-enum": { + "name": "ImageRegistryPasswordType", + "modelAsString": true, + "values": [ + { + "value": "ClearText", + "description": "The image registry password in clear text, will not be processed in any way and used directly" + }, + { + "value": "KeyVaultReference", + "description": "The URI to a KeyVault secret version, will be resolved using the application's managed identity (this type is only valid if the app was assigned a managed identity) before getting used" + }, + { + "value": "SecretValueReference", + "description": "The reference to a SecretValue resource, will be resolved before getting used" + } + ] + } + }, + "OperatingSystemType": { + "type": "string", + "description": "The operation system required by the code in service.", + "enum": [ + "Linux", + "Windows" + ], + "x-ms-enum": { + "name": "OperatingSystemType", + "modelAsString": true, + "values": [ + { + "value": "Linux", + "description": "The required operating system is Linux." + }, + { + "value": "Windows", + "description": "The required operating system is Windows." + } + ] + } + }, + "Probe": { + "description": "Probes have a number of fields that you can use to control their behavior.", + "properties": { + "initialDelaySeconds": { + "type": "integer", + "description": "The initial delay in seconds to start executing probe once codepackage has started.", + "default": 0 + }, + "periodSeconds": { + "type": "integer", + "description": "Periodic seconds to execute probe.", + "default": 10 + }, + "timeoutSeconds": { + "type": "integer", + "description": "Period after which probe is considered as failed if it hasn't completed successfully.", + "default": 1 + }, + "successThreshold": { + "type": "integer", + "description": "The count of successful probe executions after which probe is considered success.", + "default": 1 + }, + "failureThreshold": { + "type": "integer", + "description": "The count of failures after which probe is considered failed.", + "default": 3 + }, + "exec": { + "$ref": "#/definitions/ProbeExec", + "description": "Exec command to run inside the container." + }, + "httpGet": { + "$ref": "#/definitions/ProbeHttpGet", + "description": "Http probe for the container." + }, + "tcpSocket": { + "$ref": "#/definitions/ProbeTcpSocket", + "description": "Tcp port to probe inside the container." + } + } + }, + "ProbeExec": { + "description": "Exec command to run inside the container.", + "properties": { + "command": { + "description": "Comma separated command to run inside the container for example \"sh, -c, echo hello world\".", + "type": "string" + } + }, + "required": [ + "command" + ] + }, + "ProbeHttpGet": { + "description": "Http probe for the container.", + "properties": { + "port": { + "description": "Port to access for probe.", + "type": "integer" + }, + "path": { + "description": "Path to access on the HTTP request.", + "type": "string" + }, + "host": { + "description": "Host IP to connect to.", + "type": "string" + }, + "httpHeaders": { + "description": "Headers to set in the request.", + "type": "array", + "items": { + "$ref": "#/definitions/ProbeHttpGetHeaders" + } + }, + "scheme": { + "type": "string", + "description": "Scheme for the http probe. Can be Http or Https.", + "enum": [ + "http", + "https" + ], + "x-ms-enum": { + "name": "scheme", + "modelAsString": true, + "values": [ + { + "value": "http", + "description": "Indicates that the probe is http." + }, + { + "value": "https", + "description": "Indicates that the probe is https. No cert validation." + } + ] + } + } + }, + "required": [ + "port" + ] + }, + "ProbeHttpGetHeaders": { + "description": "Http headers.", + "properties": { + "name": { + "description": "The name of the header.", + "type": "string" + }, + "value": { + "description": "The value of the header.", + "type": "string" + } + }, + "required": [ + "name", + "value" + ] + }, + "ProbeTcpSocket": { + "description": "Tcp port to probe inside the container.", + "properties": { + "port": { + "description": "Port to access for probe.", + "type": "integer" + } + }, + "required": [ + "port" + ] + }, + "ReliableCollectionsRef": { + "description": "Specifying this parameter adds support for reliable collections", + "properties": { + "name": { + "description": "Name of ReliableCollection resource. Right now it's not used and you can use any string.", + "type": "string" + }, + "doNotPersistState": { + "description": "False (the default) if ReliableCollections state is persisted to disk as usual. True if you do not want to persist state, in which case replication is still enabled and you can use ReliableCollections as distributed cache.", + "type": "boolean" + } + }, + "required": [ + "name" + ] + }, + "ResourceLimits": { + "description": "This type describes the resource limits for a given container. It describes the most amount of resources a container is allowed to use before being restarted.", + "properties": { + "memoryInGB": { + "description": "The memory limit in GB.", + "type": "number", + "format": "double" + }, + "cpu": { + "description": "CPU limits in cores. At present, only full cores are supported.", + "type": "number", + "format": "double" + } + } + }, + "ResourceRequests": { + "description": "This type describes the requested resources for a given container. It describes the least amount of resources required for the container. A container can consume more than requested resources up to the specified limits before being restarted. Currently, the requested resources are treated as limits.", + "properties": { + "memoryInGB": { + "description": "The memory request in GB for this container.", + "type": "number", + "format": "double" + }, + "cpu": { + "description": "Requested number of CPU cores. At present, only full cores are supported.", + "type": "number", + "format": "double" + } + }, + "required": [ + "memoryInGB", + "cpu" + ] + }, + "ResourceRequirements": { + "description": "This type describes the resource requirements for a container or a service.", + "properties": { + "requests": { + "$ref": "#/definitions/ResourceRequests", + "description": "Describes the requested resources for a given container." + }, + "limits": { + "$ref": "#/definitions/ResourceLimits", + "description": "Describes the maximum limits on the resources for a given container." + } + }, + "required": [ + "requests" + ] + }, + "RestartPolicy": { + "type": "string", + "description": "Enumerates the restart policy for RunToCompletionExecutionPolicy", + "enum": [ + "OnFailure", + "Never" + ], + "x-ms-enum": { + "name": "RestartPolicy", + "modelAsString": true, + "values": [ + { + "value": "OnFailure", + "description": "Service will be restarted when it encounters a failure." + }, + { + "value": "Never", + "description": "Service will never be restarted. If the service encounters a failure, it will move to Failed state." + } + ] + } + }, + "RunToCompletionExecutionPolicy": { + "description": "The run to completion execution policy, the service will perform its desired operation and complete successfully. If the service encounters failure, it will restarted based on restart policy specified. If the service completes its operation successfully, it will not be restarted again.", + "allOf": [ + { + "$ref": "#/definitions/ExecutionPolicy" + }, + { + "type": "object" + } + ], + "x-ms-discriminator-value": "RunToCompletion", + "properties": { + "restart": { + "$ref": "#/definitions/RestartPolicy", + "description": "Enumerates the restart policy for RunToCompletionExecutionPolicy" + } + }, + "required": [ + "restart" + ] + }, + "ServiceProperties": { + "description": "Describes properties of a service resource.", + "properties": { + "description": { + "type": "string", + "description": "User readable description of the service." + }, + "replicaCount": { + "type": "integer", + "description": "The number of replicas of the service to create. Defaults to 1 if not specified." + }, + "executionPolicy": { + "$ref": "#/definitions/ExecutionPolicy", + "description": "The execution policy of the service" + }, + "autoScalingPolicies": { + "type": "array", + "items": { + "$ref": "#/definitions/AutoScalingPolicy" + }, + "description": "Auto scaling policies" + }, + "status": { + "readOnly": true, + "$ref": "#/definitions/ResourceStatus", + "description": "Status of the service." + }, + "statusDetails": { + "readOnly": true, + "type": "string", + "description": "Gives additional information about the current status of the service." + }, + "healthState": { + "readOnly": true, + "$ref": "#/definitions/HealthState", + "description": "Describes the health state of an application resource." + }, + "unhealthyEvaluation": { + "readOnly": true, + "type": "string", + "description": "When the service's health state is not 'Ok', this additional details from service fabric Health Manager for the user to know why the service is marked unhealthy." + }, + "identityRefs": { + "description": "The service identity list.", + "type": "array", + "items": { + "$ref": "#/definitions/ServiceIdentity" + } + }, + "dnsName": { + "type": "string", + "description": "Dns name of the service." + } + } + }, + "ServiceReplicaProperties": { + "description": "Describes the properties of a service replica.", + "properties": { + "osType": { + "$ref": "#/definitions/OperatingSystemType", + "description": "The operation system required by the code in service." + }, + "codePackages": { + "description": "Describes the set of code packages that forms the service. A code package describes the container and the properties for running it. All the code packages are started together on the same host and share the same context (network, process etc.).", + "type": "array", + "items": { + "$ref": "#/definitions/ContainerCodePackageProperties" + } + }, + "networkRefs": { + "type": "array", + "description": "The names of the private networks that this service needs to be part of.", + "items": { + "$ref": "#/definitions/NetworkRef" + } + }, + "diagnostics": { + "$ref": "#/definitions/DiagnosticsRef", + "description": "Reference to sinks in DiagnosticsDescription." + } + }, + "required": [ + "osType", + "codePackages" + ] + }, + "Setting": { + "description": "Describes a setting for the container. The setting file path can be fetched from environment variable \"Fabric_SettingPath\". The path for Windows container is \"C:\\\\secrets\". The path for Linux container is \"/var/secrets\".", + "properties": { + "type": { + "$ref": "#/definitions/SettingType", + "description": "The type of the setting being given in value" + }, + "name": { + "description": "The name of the setting.", + "type": "string" + }, + "value": { + "description": "The value of the setting, will be processed based on the type provided.", + "type": "string" + } + } + }, + "SettingType": { + "type": "string", + "description": "The type of the setting being given in value", + "default": "ClearText", + "enum": [ + "ClearText", + "KeyVaultReference", + "SecretValueReference" + ], + "x-ms-enum": { + "name": "SettingType", + "modelAsString": true, + "values": [ + { + "value": "ClearText", + "description": "The setting in clear text, will not be processed in any way and passed in as is" + }, + { + "value": "KeyVaultReference", + "description": "The URI to a KeyVault secret version, will be resolved using the application's managed identity (this type is only valid if the app was assigned a managed identity) before getting passed in" + }, + { + "value": "SecretValueReference", + "description": "The reference to a SecretValue resource, will be resolved before getting passed in" + } + ] + } + }, + "ServiceReplicaDescription": { + "description": "Describes a replica of a service resource.", + "allOf": [ + { + "$ref": "#/definitions/ServiceReplicaProperties" + } + ], + "properties": { + "replicaName": { + "type": "string", + "description": "Name of the replica." + } + }, + "required": [ + "replicaName" + ] + }, + "AverageLoadScalingTrigger": { + "description": "Describes the average load trigger used for auto scaling.", + "allOf": [ + { + "$ref": "#/definitions/AutoScalingTrigger" + }, + { + "type": "object" + } + ], + "x-ms-discriminator-value": "AverageLoad", + "properties": { + "metric": { + "$ref": "#/definitions/AutoScalingMetric", + "description": "Description of the metric that is used for scaling." + }, + "lowerLoadThreshold": { + "type": "number", + "format": "double", + "description": "Lower load threshold (if average load is below this threshold, service will scale down)." + }, + "upperLoadThreshold": { + "type": "number", + "format": "double", + "description": "Upper load threshold (if average load is above this threshold, service will scale up)." + }, + "scaleIntervalInSeconds": { + "type": "integer", + "description": "Scale interval that indicates how often will this trigger be checked.", + "minimum": 60 + } + }, + "required": [ + "metric", + "lowerLoadThreshold", + "upperLoadThreshold", + "scaleIntervalInSeconds" + ] + }, + "ServiceIdentity": { + "description": "Map service identity friendly name to an application identity.", + "properties": { + "name": { + "description": "The identity friendly name.", + "type": "string" + }, + "identityRef": { + "description": "The application identity name.", + "type": "string" + } + } + }, + "ServiceResourceName": { + "type": "string", + "description": "Name of the Service resource." + }, + "ServiceResourceDescription": { + "description": "This type describes a service resource.", + "properties": { + "name": { + "$ref": "#/definitions/ServiceResourceName", + "description": "Name of the Service resource." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ServiceResourceProperties", + "description": "This type describes properties of a service resource." + } + }, + "required": [ + "name", + "properties" + ] + }, + "ServiceResourceProperties": { + "description": "This type describes properties of a service resource.", + "allOf": [ + { + "$ref": "#/definitions/ServiceReplicaProperties" + }, + { + "$ref": "#/definitions/ServiceProperties" + } + ] + }, + "PagedServiceResourceDescriptionList": { + "type": "object", + "description": "The list of service resources. The list is paged when all of the results cannot fit in a single message. The next set of results can be obtained by executing the same query with the continuation token provided in this list.", + "properties": { + "ContinuationToken": { + "$ref": "#/definitions/ContinuationToken", + "description": "The continuation token parameter is used to obtain next set of results. The continuation token is included in the response of the API when the results from the system do not fit in a single response. When this value is passed to the next API call, the API returns next set of results. If there are no further results, then the continuation token is not included in the response." + }, + "Items": { + "type": "array", + "description": "One page of the list.", + "items": { + "$ref": "#/definitions/ServiceResourceDescription" + } + } + } + }, + "PagedServiceReplicaDescriptionList": { + "description": "The list of service resource replicas in the cluster. The list is paged when all of the results cannot fit in a single message. The next set of results can be obtained by executing the same query with the continuation token provided in this list.", + "properties": { + "ContinuationToken": { + "$ref": "#/definitions/ContinuationToken", + "description": "The continuation token parameter is used to obtain next set of results. The continuation token is included in the response of the API when the results from the system do not fit in a single response. When this value is passed to the next API call, the API returns next set of results. If there are no further results, then the continuation token is not included in the response." + }, + "Items": { + "type": "array", + "description": "List of service resource replica description.", + "items": { + "$ref": "#/definitions/ServiceReplicaDescription" + } + } + } + }, + "ApplicationResourceName": { + "type": "string", + "description": "Name of the Application resource." + }, + "ApplicationResourceDescription": { + "description": "This type describes a application resource.", + "properties": { + "name": { + "$ref": "#/definitions/ApplicationResourceName", + "description": "Name of the Application resource." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationProperties", + "description": "Describes properties of a application resource." + }, + "identity": { + "$ref": "#/definitions/IdentityDescription", + "description": "Describes the identity of the application." + } + }, + "required": [ + "name", + "properties" + ] + }, + "PagedApplicationResourceDescriptionList": { + "type": "object", + "description": "The list of application resources. The list is paged when all of the results cannot fit in a single message. The next set of results can be obtained by executing the same query with the continuation token provided in this list.", + "properties": { + "ContinuationToken": { + "$ref": "#/definitions/ContinuationToken", + "description": "The continuation token parameter is used to obtain next set of results. The continuation token is included in the response of the API when the results from the system do not fit in a single response. When this value is passed to the next API call, the API returns next set of results. If there are no further results, then the continuation token is not included in the response." + }, + "Items": { + "type": "array", + "description": "One page of the list.", + "items": { + "$ref": "#/definitions/ApplicationResourceDescription" + } + } + } + } + }, + "parameters": { + "CodePackageNameRequiredPathParam": { + "name": "codePackageName", + "in": "path", + "x-ms-parameter-location": "method", + "type": "string", + "required": true, + "description": "The name of code package of the service." + }, + "ApiVersion_6-4-Preview_RequiredQueryParam": { + "name": "api-version", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "enum": [ + "6.4-preview" + ], + "required": true, + "default": "6.4-preview", + "description": "The version of the API. This parameter is required and its value must be '6.4-preview'.", + "x-ms-enum": { + "name": "ApiVersion_6-4-Preview_RequiredQueryParam", + "modelAsString": true, + "values": [ + { + "value": "6.4-preview", + "description": "The version number for the preview functionality of 6.4 runtime" + } + ] + } + }, + "TailOptionalQueryParam": { + "name": "Tail", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": false, + "description": "Number of lines to show from the end of the logs. Default is 100. 'all' to show the complete logs." + }, + "ApiVersion_6-0-Preview_RequiredQueryParam": { + "name": "api-version", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "enum": [ + "6.0-preview" + ], + "required": true, + "default": "6.0-preview", + "description": "The version of the API. This parameter is required and its value must be '\"6.0-preview'.", + "x-ms-enum": { + "name": "ApiVersion_6-0-Preview_RequiredQueryParam", + "modelAsString": true, + "values": [ + { + "value": "6.0-preview", + "description": "The version number for the preview functionality of 6.0 runtime." + } + ] + } + }, + "ApiVersion_6-0_RequiredQueryParam": { + "name": "api-version", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "enum": [ + "6.0" + ], + "required": true, + "default": "6.0", + "description": "The version of the API. This parameter is required and its value must be '6.0'.\n\nService Fabric REST API version is based on the runtime version in which the API was introduced or was changed. Service Fabric runtime supports more than one version of the API. This is the latest supported version of the API. If a lower API version is passed, the returned response may be different from the one documented in this specification.\n\nAdditionally the runtime accept any version that is higher than the latest supported version up to the current version of the runtime. So if the latest API version is 6.0, but if the runtime is 6.1, in order to make it easier to write the clients, the runtime will accept version 6.1 for that API. However the behavior of the API will be as per the documented 6.0 version.", + "x-ms-enum": { + "name": "ApiVersion_6-0_RequiredQueryParam", + "modelAsString": true, + "values": [ + { + "value": "6.0", + "description": "The 6.0 version of the API." + } + ] + } + }, + "ApiVersion_6-1_RequiredQueryParam": { + "name": "api-version", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "enum": [ + "6.1" + ], + "required": true, + "default": "6.1", + "description": "The version of the API. This parameter is required and its value must be '6.1'.\n\nService Fabric REST API version is based on the runtime version in which the API was introduced or was changed. Service Fabric runtime supports more than one version of the API. This is the latest supported version of the API. If a lower API version is passed, the returned response may be different from the one documented in this specification.\n\nAdditionally the runtime accept any version that is higher than the latest supported version up to the current version of the runtime. So if the latest API version is 6.0, but if the runtime is 6.1, in order to make it easier to write the clients, the runtime will accept version 6.1 for that API. However the behavior of the API will be as per the documented 6.0 version.", + "x-ms-enum": { + "name": "ApiVersion_6-1_RequiredQueryParam", + "modelAsString": true, + "values": [ + { + "value": "6.1", + "description": "The 6.1 version of the API." + } + ] + } + }, + "ApiVersion_6-2_RequiredQueryParam": { + "name": "api-version", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "enum": [ + "6.2" + ], + "required": true, + "default": "6.2", + "description": "The version of the API. This parameter is required and its value must be '6.2'.\n\nService Fabric REST API version is based on the runtime version in which the API was introduced or was changed. Service Fabric runtime supports more than one version of the API. This version is the latest supported version of the API. If a lower API version is passed, the returned response may be different from the one documented in this specification.\n\nAdditionally the runtime accepts any version that is higher than the latest supported version up to the current version of the runtime. So if the latest API version is 6.0 and the runtime is 6.1, the runtime will accept version 6.1 for that API. However the behavior of the API will be as per the documented 6.0 version.", + "x-ms-enum": { + "name": "ApiVersion_6-2_RequiredQueryParam", + "modelAsString": true, + "values": [ + { + "value": "6.2", + "description": "The 6.2 version of the API." + } + ] + } + }, + "ApiVersion_6-2-Preview_RequiredQueryParam": { + "name": "api-version", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "enum": [ + "6.2-preview" + ], + "required": true, + "default": "6.2-preview", + "description": "The version of the API. This parameter is required and its value must be '6.2-preview'.", + "x-ms-enum": { + "name": "ApiVersion_6-2-Preview_RequiredQueryParam", + "modelAsString": true, + "values": [ + { + "value": "6.2-preview", + "description": "The version number for the preview functionality of 6.2 runtime" + } + ] + } + }, + "ApiVersion_6-3_RequiredQueryParam": { + "name": "api-version", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "enum": [ + "6.3" + ], + "required": true, + "default": "6.3", + "description": "The version of the API. This parameter is required and its value must be '6.3'.\n\nService Fabric REST API version is based on the runtime version in which the API was introduced or was changed. Service Fabric runtime supports more than one version of the API. This version is the latest supported version of the API. If a lower API version is passed, the returned response may be different from the one documented in this specification.\n\nAdditionally the runtime accepts any version that is higher than the latest supported version up to the current version of the runtime. So if the latest API version is 6.0 and the runtime is 6.1, the runtime will accept version 6.1 for that API. However the behavior of the API will be as per the documented 6.0 version.", + "x-ms-enum": { + "name": "ApiVersion_6-3_RequiredQueryParam", + "modelAsString": true, + "values": [ + { + "value": "6.3", + "description": "The 6.3 version of the API." + } + ] + } + }, + "ApiVersion_6-3-Preview_RequiredQueryParam": { + "name": "api-version", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "enum": [ + "6.3-preview" + ], + "required": true, + "default": "6.3-preview", + "description": "The version of the API. This parameter is required and its value must be '6.3-preview'.", + "x-ms-enum": { + "name": "ApiVersion_6-3-Preview_RequiredQueryParam", + "modelAsString": true, + "values": [ + { + "value": "6.3-preview", + "description": "The version number for the preview functionality of 6.3 runtime" + } + ] + } + }, + "ApiVersion_6-4_RequiredQueryParam": { + "name": "api-version", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "enum": [ + "6.4" + ], + "required": true, + "default": "6.4", + "description": "The version of the API. This parameter is required and its value must be '6.4'.\n\nService Fabric REST API version is based on the runtime version in which the API was introduced or was changed. Service Fabric runtime supports more than one version of the API. This version is the latest supported version of the API. If a lower API version is passed, the returned response may be different from the one documented in this specification.\n\nAdditionally the runtime accepts any version that is higher than the latest supported version up to the current version of the runtime. So if the latest API version is 6.0 and the runtime is 6.1, the runtime will accept version 6.1 for that API. However the behavior of the API will be as per the documented 6.0 version.", + "x-ms-enum": { + "name": "ApiVersion_6-4_RequiredQueryParam", + "modelAsString": true, + "values": [ + { + "value": "6.4", + "description": "The 6.4 version of the API." + } + ] + } + }, + "ApiVersion_6-5_RequiredQueryParam": { + "name": "api-version", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "enum": [ + "6.5" + ], + "required": true, + "default": "6.5", + "description": "The version of the API. This parameter is required and its value must be '6.5'.\n\nService Fabric REST API version is based on the runtime version in which the API was introduced or was changed. Service Fabric runtime supports more than one version of the API. This version is the latest supported version of the API. If a lower API version is passed, the returned response may be different from the one documented in this specification.\n\nAdditionally the runtime accepts any version that is higher than the latest supported version up to the current version of the runtime. So if the latest API version is 6.0 and the runtime is 6.1, the runtime will accept version 6.1 for that API. However the behavior of the API will be as per the documented 6.0 version.", + "x-ms-enum": { + "name": "ApiVersion_6-5_RequiredQueryParam", + "modelAsString": true, + "values": [ + { + "value": "6.5", + "description": "The 6.5 version of the API." + } + ] + } + }, + "ApiVersion_7-0_RequiredQueryParam": { + "name": "api-version", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "enum": [ + "7.0" + ], + "required": true, + "default": "7.0", + "description": "The version of the API. This parameter is required and its value must be '7.0'.\n\nService Fabric REST API version is based on the runtime version in which the API was introduced or was changed. Service Fabric runtime supports more than one version of the API. This version is the latest supported version of the API. If a lower API version is passed, the returned response may be different from the one documented in this specification.\n\nAdditionally the runtime accepts any version that is higher than the latest supported version up to the current version of the runtime. So if the latest API version is 6.0 and the runtime is 6.1, the runtime will accept version 6.1 for that API. However the behavior of the API will be as per the documented 6.0 version.", + "x-ms-enum": { + "name": "ApiVersion_7-0_RequiredQueryParam", + "modelAsString": true, + "values": [ + { + "value": "7.0", + "description": "The 7.0 version of the API." + } + ] + } + }, + "ApiVersion_7-2_RequiredQueryParam": { + "name": "api-version", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "enum": [ + "7.2" + ], + "required": true, + "default": "7.2", + "description": "The version of the API. This parameter is required and its value must be '7.2'.\n\nService Fabric REST API version is based on the runtime version in which the API was introduced or was changed. Service Fabric runtime supports more than one version of the API. This version is the latest supported version of the API. If a lower API version is passed, the returned response may be different from the one documented in this specification.\n\nAdditionally the runtime accepts any version that is higher than the latest supported version up to the current version of the runtime. So if the latest API version is 6.0 and the runtime is 6.1, the runtime will accept version 6.1 for that API. However the behavior of the API will be as per the documented 6.0 version.", + "x-ms-enum": { + "name": "ApiVersion_7-2_RequiredQueryParam", + "modelAsString": true, + "values": [ + { + "value": "7.2", + "description": "The 7.2 version of the API." + } + ] + } + }, + "ApiVersion_8-0_RequiredQueryParam": { + "name": "api-version", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "enum": [ + "8.0" + ], + "required": true, + "default": "8.0", + "description": "The version of the API. This parameter is required and its value must be '8.0'.\n\nService Fabric REST API version is based on the runtime version in which the API was introduced or was changed. Service Fabric runtime supports more than one version of the API. This version is the latest supported version of the API. If a lower API version is passed, the returned response may be different from the one documented in this specification.\n\nAdditionally the runtime accepts any version that is higher than the latest supported version up to the current version of the runtime. So if the latest API version is 6.0 and the runtime is 6.1, the runtime will accept version 6.1 for that API. However the behavior of the API will be as per the documented 6.0 version.", + "x-ms-enum": { + "name": "ApiVersion_8-0_RequiredQueryParam", + "modelAsString": true, + "values": [ + { + "value": "8.0", + "description": "The 8.0 version of the API." + } + ] + } + }, + "ApplicationDefinitionKindFilterOptionalQueryParam": { + "name": "ApplicationDefinitionKindFilter", + "description": "Used to filter on ApplicationDefinitionKind, which is the mechanism used to define a Service Fabric application.\n- Default - Default value, which performs the same function as selecting \"All\". The value is 0.\n- All - Filter that matches input with any ApplicationDefinitionKind value. The value is 65535.\n- ServiceFabricApplicationDescription - Filter that matches input with ApplicationDefinitionKind value ServiceFabricApplicationDescription. The value is 1.\n- Compose - Filter that matches input with ApplicationDefinitionKind value Compose. The value is 2.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "integer", + "required": false, + "default": 0 + }, + "ApplicationHealthPolicyOptionalBodyParam": { + "name": "ApplicationHealthPolicy", + "in": "body", + "description": "Describes the health policies used to evaluate the health of an application or one of its children.\nIf not present, the health evaluation uses the health policy from application manifest or the default health policy.", + "required": false, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/ApplicationHealthPolicy" + } + }, + "ApplicationIdRequiredPathParam": { + "name": "applicationId", + "in": "path", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true, + "type": "string", + "required": true, + "description": "The identity of the application. This is typically the full name of the application without the 'fabric:' URI scheme.\nStarting from version 6.0, hierarchical names are delimited with the \"~\" character.\nFor example, if the application name is \"fabric:/myapp/app1\", the application identity would be \"myapp~app1\" in 6.0+ and \"myapp/app1\" in previous versions." + }, + "ApplicationsHealthStateFilterOptionalQueryParam": { + "name": "ApplicationsHealthStateFilter", + "description": "Allows filtering of the application health state objects returned in the result of cluster health\nquery based on their health state.\nThe possible values for this parameter include integer value obtained from members or bitwise operations\non members of HealthStateFilter enumeration. Only applications that match the filter are returned.\nAll applications are used to evaluate the aggregated health state. If not specified, all entries are returned.\nThe state values are flag-based enumeration, so the value could be a combination of these values obtained using bitwise 'OR' operator.\nFor example, if the provided value is 6 then health state of applications with HealthState value of OK (2) and Warning (4) are returned.\n\n- Default - Default value. Matches any HealthState. The value is zero.\n- None - Filter that doesn't match any HealthState value. Used in order to return no results on a given collection of states. The value is 1.\n- Ok - Filter that matches input with HealthState value Ok. The value is 2.\n- Warning - Filter that matches input with HealthState value Warning. The value is 4.\n- Error - Filter that matches input with HealthState value Error. The value is 8.\n- All - Filter that matches input with any HealthState value. The value is 65535.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "integer", + "required": false, + "default": 0 + }, + "ApplicationTypeDefinitionKindFilterOptionalQueryParam": { + "name": "ApplicationTypeDefinitionKindFilter", + "description": "Used to filter on ApplicationTypeDefinitionKind which is the mechanism used to define a Service Fabric application type.\n- Default - Default value, which performs the same function as selecting \"All\". The value is 0.\n- All - Filter that matches input with any ApplicationTypeDefinitionKind value. The value is 65535.\n- ServiceFabricApplicationPackage - Filter that matches input with ApplicationTypeDefinitionKind value ServiceFabricApplicationPackage. The value is 1.\n- Compose - Filter that matches input with ApplicationTypeDefinitionKind value Compose. The value is 2.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "integer", + "required": false, + "default": 0 + }, + "ApplicationTypeNameOptionalQueryParam": { + "name": "ApplicationTypeName", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": false, + "description": "The application type name used to filter the applications to query for. This value should not contain the application type version." + }, + "ApplicationTypeNameRequiredPathParam": { + "name": "applicationTypeName", + "in": "path", + "x-ms-parameter-location": "method", + "type": "string", + "required": true, + "description": "The name of the application type." + }, + "ApplicationTypeVersionOptionalQueryParam": { + "name": "ApplicationTypeVersion", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": false, + "description": "The version of the application type." + }, + "ApplicationTypeVersionRequiredQueryParam": { + "name": "ApplicationTypeVersion", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": true, + "description": "The version of the application type." + }, + "ProvisionApplicationTypeDescriptionBaseRequiredBodyParam": { + "name": "ProvisionApplicationTypeDescriptionBaseRequiredBodyParam", + "in": "body", + "description": "The base type of provision application type description which supports either image store-based provision or external store-based provision.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/ProvisionApplicationTypeDescriptionBase" + } + }, + "ClusterConfigurationUpgradeDescriptionRequiredBodyParam": { + "name": "ClusterConfigurationUpgradeDescription", + "in": "body", + "description": "Parameters for a standalone cluster configuration upgrade.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/ClusterConfigurationUpgradeDescription" + } + }, + "ClusterHealthPoliciesOptionalBodyParam": { + "name": "ClusterHealthPolicies", + "in": "body", + "description": "Describes the health policies used to evaluate the cluster health.\nIf not present, the health evaluation uses the cluster health policy defined in the cluster manifest or the default cluster health policy.\nBy default, each application is evaluated using its specific application health policy, defined in the application manifest, or the default health policy, if no policy is defined in manifest.\nIf the application health policy map is specified, and it has an entry for an application, the specified application health policy\nis used to evaluate the application health.", + "required": false, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/ClusterHealthPolicies" + } + }, + "ClusterHealthPolicyOptionalBodyParam": { + "name": "ClusterHealthPolicy", + "in": "body", + "description": "Describes the health policies used to evaluate the health of a cluster or node. If not present, the health evaluation uses the health policy from cluster manifest or the default health policy.", + "required": false, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/ClusterHealthPolicy" + } + }, + "ClusterHealthChunkQueryDescriptionOptionalBodyParam": { + "name": "ClusterHealthChunkQueryDescription", + "in": "body", + "description": "Describes the cluster and application health policies used to evaluate the cluster health and the filters to select which cluster entities to be returned.\nIf the cluster health policy is present, it is used to evaluate the cluster events and the cluster nodes. If not present, the health evaluation uses the cluster health policy defined in the cluster manifest or the default cluster health policy.\nBy default, each application is evaluated using its specific application health policy, defined in the application manifest, or the default health policy, if no policy is defined in manifest.\nIf the application health policy map is specified, and it has an entry for an application, the specified application health policy\nis used to evaluate the application health.\nUsers can specify very flexible filters to select which cluster entities to include in response. The selection can be done based on the entities health state and based on the hierarchy.\nThe query can return multi-level children of the entities based on the specified filters. For example, it can return one application with a specified name, and for this application, return\nonly services that are in Error or Warning, and all partitions and replicas for one of these services.", + "required": false, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/ClusterHealthChunkQueryDescription" + } + }, + "CodePackageInstanceIdRequiredQueryParam": { + "name": "CodePackageInstanceId", + "description": "ID that uniquely identifies a code package instance deployed on a service fabric node.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": true + }, + "CodePackageNameRequiredQueryParam": { + "name": "CodePackageName", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": true, + "description": "The name of code package specified in service manifest registered as part of an application type in a Service Fabric cluster." + }, + "CodeVersionOptionalQueryParam": { + "name": "CodeVersion", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": false, + "description": "The product version of Service Fabric." + }, + "ConfigVersionOptionalQueryParam": { + "name": "ConfigVersion", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": false, + "description": "The config version of Service Fabric." + }, + "ConfigurationApiVersionRequiredQueryParam": { + "name": "ConfigurationApiVersion", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": true, + "description": "The API version of the Standalone cluster json configuration." + }, + "ContainerApiRequiredBodyParam": { + "name": "ContainerApiRequestBody", + "in": "body", + "description": "Parameters for making container API call", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/ContainerApiRequestBody" + } + }, + "ContinuationTokenOptionalQueryParam": { + "name": "ContinuationToken", + "in": "query", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true, + "type": "string", + "required": false, + "description": "The continuation token parameter is used to obtain next set of results. A continuation token with a non-empty value is included in the response of the API when the results from the system do not fit in a single response. When this value is passed to the next API call, the API returns next set of results. If there are no further results, then the continuation token does not contain a value. The value of this parameter should not be URL encoded." + }, + "DeployedApplicationsHealthStateFilterOptionalQueryParam": { + "name": "DeployedApplicationsHealthStateFilter", + "description": "Allows filtering of the deployed applications health state objects returned in the result of application health query based on their health state.\nThe possible values for this parameter include integer value of one of the following health states. Only deployed applications that match the filter will be returned.\nAll deployed applications are used to evaluate the aggregated health state. If not specified, all entries are returned.\nThe state values are flag-based enumeration, so the value could be a combination of these values, obtained using bitwise 'OR' operator.\nFor example, if the provided value is 6 then health state of deployed applications with HealthState value of OK (2) and Warning (4) are returned.\n\n- Default - Default value. Matches any HealthState. The value is zero.\n- None - Filter that doesn't match any HealthState value. Used in order to return no results on a given collection of states. The value is 1.\n- Ok - Filter that matches input with HealthState value Ok. The value is 2.\n- Warning - Filter that matches input with HealthState value Warning. The value is 4.\n- Error - Filter that matches input with HealthState value Error. The value is 8.\n- All - Filter that matches input with any HealthState value. The value is 65535.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "integer", + "required": false, + "default": 0 + }, + "DeployedServicePackagesHealthStateFilterOptionalQueryParam": { + "name": "DeployedServicePackagesHealthStateFilter", + "description": "Allows filtering of the deployed service package health state objects returned in the result of deployed application health query based on their health state.\nThe possible values for this parameter include integer value of one of the following health states.\nOnly deployed service packages that match the filter are returned. All deployed service packages are used to evaluate the aggregated health state of the deployed application.\nIf not specified, all entries are returned.\nThe state values are flag-based enumeration, so the value can be a combination of these values, obtained using the bitwise 'OR' operator.\nFor example, if the provided value is 6 then health state of service packages with HealthState value of OK (2) and Warning (4) are returned.\n\n- Default - Default value. Matches any HealthState. The value is zero.\n- None - Filter that doesn't match any HealthState value. Used in order to return no results on a given collection of states. The value is 1.\n- Ok - Filter that matches input with HealthState value Ok. The value is 2.\n- Warning - Filter that matches input with HealthState value Warning. The value is 4.\n- Error - Filter that matches input with HealthState value Error. The value is 8.\n- All - Filter that matches input with any HealthState value. The value is 65535.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "integer", + "required": false, + "default": 0 + }, + "DeploymentNameRequiredPathParam": { + "name": "deploymentName", + "in": "path", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true, + "type": "string", + "required": true, + "description": "The identity of the deployment." + }, + "EventsHealthStateFilterOptionalQueryParam": { + "name": "EventsHealthStateFilter", + "description": "Allows filtering the collection of HealthEvent objects returned based on health state.\nThe possible values for this parameter include integer value of one of the following health states.\nOnly events that match the filter are returned. All events are used to evaluate the aggregated health state.\nIf not specified, all entries are returned. The state values are flag-based enumeration, so the value could be a combination of these values, obtained using the bitwise 'OR' operator. For example, If the provided value is 6 then all of the events with HealthState value of OK (2) and Warning (4) are returned.\n\n- Default - Default value. Matches any HealthState. The value is zero.\n- None - Filter that doesn't match any HealthState value. Used in order to return no results on a given collection of states. The value is 1.\n- Ok - Filter that matches input with HealthState value Ok. The value is 2.\n- Warning - Filter that matches input with HealthState value Warning. The value is 4.\n- Error - Filter that matches input with HealthState value Error. The value is 8.\n- All - Filter that matches input with any HealthState value. The value is 65535.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "integer", + "required": false, + "default": 0 + }, + "ExcludeApplicationParametersOptionalQueryParam": { + "name": "ExcludeApplicationParameters", + "in": "query", + "x-ms-parameter-location": "method", + "type": "boolean", + "required": false, + "default": false, + "description": "The flag that specifies whether application parameters will be excluded from the result." + }, + "HealthInformationRequiredBodyParam": { + "name": "HealthInformation", + "in": "body", + "description": "Describes the health information for the health report. This information needs to be present in all of the health reports sent to the health manager.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/HealthInformation" + } + }, + "NodeNameRequiredPathParam": { + "name": "nodeName", + "in": "path", + "x-ms-parameter-location": "method", + "type": "string", + "required": true, + "description": "The name of the node." + }, + "NodesHealthStateFilterOptionalQueryParam": { + "name": "NodesHealthStateFilter", + "description": "Allows filtering of the node health state objects returned in the result of cluster health query\nbased on their health state. The possible values for this parameter include integer value of one of the\nfollowing health states. Only nodes that match the filter are returned. All nodes are used to evaluate the aggregated health state.\nIf not specified, all entries are returned.\nThe state values are flag-based enumeration, so the value could be a combination of these values obtained using bitwise 'OR' operator.\nFor example, if the provided value is 6 then health state of nodes with HealthState value of OK (2) and Warning (4) are returned.\n\n- Default - Default value. Matches any HealthState. The value is zero.\n- None - Filter that doesn't match any HealthState value. Used in order to return no results on a given collection of states. The value is 1.\n- Ok - Filter that matches input with HealthState value Ok. The value is 2.\n- Warning - Filter that matches input with HealthState value Warning. The value is 4.\n- Error - Filter that matches input with HealthState value Error. The value is 8.\n- All - Filter that matches input with any HealthState value. The value is 65535.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "integer", + "required": false, + "default": 0 + }, + "NodeStatusFilterOptionalQueryParam": { + "name": "NodeStatusFilter", + "description": "Allows filtering the nodes based on the NodeStatus. Only the nodes that are matching the specified filter value will be returned. The filter value can be one of the following.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "enum": [ + "default", + "all", + "up", + "down", + "enabling", + "disabling", + "disabled", + "unknown", + "removed" + ], + "required": false, + "default": "default", + "x-ms-enum": { + "name": "NodeStatusFilter", + "modelAsString": true, + "values": [ + { + "value": "default", + "description": "This filter value will match all of the nodes excepts the ones with status as Unknown or Removed." + }, + { + "value": "all", + "description": "This filter value will match all of the nodes." + }, + { + "value": "up", + "description": "This filter value will match nodes that are Up." + }, + { + "value": "down", + "description": "This filter value will match nodes that are Down." + }, + { + "value": "enabling", + "description": "This filter value will match nodes that are in the process of being enabled with status as Enabling." + }, + { + "value": "disabling", + "description": "This filter value will match nodes that are in the process of being disabled with status as Disabling." + }, + { + "value": "disabled", + "description": "This filter value will match nodes that are Disabled." + }, + { + "value": "unknown", + "description": "This filter value will match nodes whose status is Unknown. A node would be in Unknown state if Service Fabric does not have authoritative information about that node. This can happen if the system learns about a node at runtime." + }, + { + "value": "removed", + "description": "This filter value will match nodes whose status is Removed. These are the nodes that are removed from the cluster using the RemoveNodeState API." + } + ] + } + }, + "PartitionIdOptionalQueryParam": { + "name": "PartitionId", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "format": "uuid", + "required": false, + "description": "The identity of the partition." + }, + "PartitionIdRequiredPathParam": { + "name": "partitionId", + "in": "path", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true, + "type": "string", + "format": "uuid", + "required": true, + "description": "The identity of the partition." + }, + "ProvisionFabricDescriptionRequiredBodyParam": { + "name": "ProvisionFabricDescription", + "in": "body", + "description": "Describes the parameters for provisioning a cluster.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/ProvisionFabricDescription" + } + }, + "UnprovisionFabricDescriptionRequiredBodyParam": { + "name": "UnprovisionFabricDescription", + "in": "body", + "description": "Describes the parameters for unprovisioning a cluster.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/UnprovisionFabricDescription" + } + }, + "ResumeClusterUpgradeDescriptionRequiredBodyParam": { + "name": "ResumeClusterUpgradeDescription", + "in": "body", + "description": "Describes the parameters for resuming a cluster upgrade.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/ResumeClusterUpgradeDescription" + } + }, + "UpdateClusterUpgradeDescriptionRequiredBodyParam": { + "name": "UpdateClusterUpgradeDescription", + "in": "body", + "description": "Parameters for updating a cluster upgrade.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/UpdateClusterUpgradeDescription" + } + }, + "StartClusterUpgradeDescriptionRequiredBodyParam": { + "name": "StartClusterUpgradeDescription", + "in": "body", + "description": "Describes the parameters for starting a cluster upgrade.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/StartClusterUpgradeDescription" + } + }, + "ReplicaHealthReportServiceKindRequiredQueryParam": { + "name": "ServiceKind", + "in": "query", + "required": true, + "x-ms-parameter-location": "method", + "description": "The kind of service replica (Stateless or Stateful) for which the health is being reported. Following are the possible values.", + "type": "string", + "enum": [ + "Stateless", + "Stateful" + ], + "default": "Stateful", + "x-ms-enum": { + "name": "ReplicaHealthReportServiceKind", + "modelAsString": true, + "values": [ + { + "value": "Stateless", + "description": "Does not use Service Fabric to make its state highly available or reliable. The value is 1" + }, + { + "value": "Stateful", + "description": "Uses Service Fabric to make its state or part of its state highly available and reliable. The value is 2." + } + ] + } + }, + "ReplicaIdRequiredPathParam": { + "name": "replicaId", + "in": "path", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true, + "type": "string", + "required": true, + "description": "The identifier of the replica." + }, + "ReplicasHealthStateFilerOptionalQueryParam": { + "name": "ReplicasHealthStateFilter", + "description": "Allows filtering the collection of ReplicaHealthState objects on the partition. The value can be obtained from members or bitwise operations on members of HealthStateFilter. Only replicas that match the filter will be returned. All replicas will be used to evaluate the aggregated health state. If not specified, all entries will be returned.The state values are flag-based enumeration, so the value could be a combination of these values obtained using bitwise 'OR' operator. For example, If the provided value is 6 then all of the events with HealthState value of OK (2) and Warning (4) will be returned. The possible values for this parameter include integer value of one of the following health states.\n\n- Default - Default value. Matches any HealthState. The value is zero.\n- None - Filter that doesn't match any HealthState value. Used in order to return no results on a given collection of states. The value is 1.\n- Ok - Filter that matches input with HealthState value Ok. The value is 2.\n- Warning - Filter that matches input with HealthState value Warning. The value is 4.\n- Error - Filter that matches input with HealthState value Error. The value is 8.\n- All - Filter that matches input with any HealthState value. The value is 65535.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "integer", + "required": false, + "default": 0 + }, + "ServiceIdRequiredPathParam": { + "name": "serviceId", + "in": "path", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true, + "type": "string", + "required": true, + "description": "The identity of the service. This ID is typically the full name of the service without the 'fabric:' URI scheme.\nStarting from version 6.0, hierarchical names are delimited with the \"~\" character.\nFor example, if the service name is \"fabric:/myapp/app1/svc1\", the service identity would be \"myapp~app1~svc1\" in 6.0+ and \"myapp/app1/svc1\" in previous versions." + }, + "ServiceManifestNameOptionalQueryParam": { + "name": "ServiceManifestName", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": false, + "description": "The name of a service manifest registered as part of an application type in a Service Fabric cluster." + }, + "ServiceManifestNameRequiredQueryParam": { + "name": "ServiceManifestName", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": true, + "description": "The name of a service manifest registered as part of an application type in a Service Fabric cluster." + }, + "ServiceNameOptionalQueryParam": { + "name": "ServiceName", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": false, + "description": "The name of a service." + }, + "ServicePackageNameRequiredPathParam": { + "name": "servicePackageName", + "in": "path", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true, + "type": "string", + "required": true, + "description": "The name of the service package." + }, + "ServicesHealthStateFilterOptionalQueryParam": { + "name": "ServicesHealthStateFilter", + "description": "Allows filtering of the services health state objects returned in the result of services health query based on their health state.\nThe possible values for this parameter include integer value of one of the following health states.\nOnly services that match the filter are returned. All services are used to evaluate the aggregated health state.\nIf not specified, all entries are returned. The state values are flag-based enumeration, so the value could be a combination of these values,\nobtained using bitwise 'OR' operator. For example, if the provided value is 6 then health state of services with HealthState value of OK (2) and Warning (4) will be returned.\n\n- Default - Default value. Matches any HealthState. The value is zero.\n- None - Filter that doesn't match any HealthState value. Used in order to return no results on a given collection of states. The value is 1.\n- Ok - Filter that matches input with HealthState value Ok. The value is 2.\n- Warning - Filter that matches input with HealthState value Warning. The value is 4.\n- Error - Filter that matches input with HealthState value Error. The value is 8.\n- All - Filter that matches input with any HealthState value. The value is 65535.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "integer", + "required": false, + "default": 0 + }, + "CreateServiceFromTemplateRequiredBodyParam": { + "name": "ServiceFromTemplateDescription", + "in": "body", + "description": "Describes the service that needs to be created from the template defined in the application manifest.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/ServiceFromTemplateDescription" + } + }, + "ServiceTypeNameOptionalQueryParam": { + "name": "ServiceTypeName", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": false, + "description": "The service type name used to filter the services to query for." + }, + "InfrastructureCommandRequiredQueryParam": { + "name": "Command", + "description": "The text of the command to be invoked. The content of the command is infrastructure-specific.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": true + }, + "InfrastructureServiceIdOptionalQueryParam": { + "name": "ServiceId", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "description": "The identity of the infrastructure service. This is the full name of the infrastructure service without the 'fabric:' URI scheme. This parameter required only for the cluster that has more than one instance of infrastructure service running.", + "required": false + }, + "ForceRemoveOptionalQueryParam": { + "name": "ForceRemove", + "in": "query", + "x-ms-parameter-location": "method", + "type": "boolean", + "required": false, + "description": "Remove a Service Fabric application or service forcefully without going through the graceful shutdown sequence. This parameter can be used to forcefully delete an application or service for which delete is timing out due to issues in the service code that prevents graceful close of replicas." + }, + "ForceRemoveReplicaOptionalQueryParam": { + "name": "ForceRemove", + "in": "query", + "x-ms-parameter-location": "method", + "type": "boolean", + "required": false, + "description": "Remove a Service Fabric application or service forcefully without going through the graceful shutdown sequence. This parameter can be used to forcefully delete an application or service for which delete is timing out due to issues in the service code that prevents graceful close of replicas." + }, + "DeactivationIntentDescriptionRequiredBodyParam": { + "name": "DeactivationIntentDescription", + "in": "body", + "description": "Describes the intent or reason for deactivating the node.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/DeactivationIntentDescription" + } + }, + "RestartNodeDescriptionRequiredBodyParam": { + "name": "RestartNodeDescription", + "in": "body", + "description": "The instance of the node to be restarted and a flag indicating the need to take dump of the fabric process.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/RestartNodeDescription" + } + }, + "ApplicationUpgradeDescriptionRequiredBodyParam": { + "name": "ApplicationUpgradeDescription", + "in": "body", + "description": "Parameters for an application upgrade.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/ApplicationUpgradeDescription" + } + }, + "ComposeDeploymentUpgradeDescriptionRequiredBodyParam": { + "name": "ComposeDeploymentUpgradeDescription", + "in": "body", + "description": "Parameters for upgrading compose deployment.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/ComposeDeploymentUpgradeDescription" + } + }, + "ApplicationTypeImageStorePathRequiredBodyParam": { + "name": "ApplicationTypeImageStorePath", + "in": "body", + "description": "The relative path for the application package in the image store specified during the prior copy operation.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/ApplicationTypeImageStorePath" + } + }, + "UnprovisionApplicationTypeRequiredBodyParam": { + "name": "UnprovisionApplicationTypeDescriptionInfo", + "in": "body", + "description": "The relative path for the application package in the image store specified during the prior copy operation.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/UnprovisionApplicationTypeDescriptionInfo" + } + }, + "UpgradeOrchestrationServiceStateRequiredBodyParam": { + "name": "UpgradeOrchestrationServiceState", + "in": "body", + "x-ms-parameter-location": "method", + "required": true, + "description": "Service state of Service Fabric Upgrade Orchestration Service.", + "schema": { + "$ref": "#/definitions/UpgradeOrchestrationServiceState" + } + }, + "ChaosParametersRequiredBodyParam": { + "name": "ChaosParameters", + "in": "body", + "description": "Describes all the parameters to configure a Chaos run.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/ChaosParameters" + } + }, + "StartTimeUtcOptionalQueryParam": { + "name": "StartTimeUtc", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": false, + "description": "The Windows file time representing the start time of the time range for which a Chaos report is to be generated. Consult [DateTime.ToFileTimeUtc Method](https://msdn.microsoft.com/library/system.datetime.tofiletimeutc(v=vs.110).aspx) for details." + }, + "EndTimeUtcOptionalQueryParam": { + "name": "EndTimeUtc", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": false, + "description": "The Windows file time representing the end time of the time range for which a Chaos report is to be generated. Consult [DateTime.ToFileTimeUtc Method](https://msdn.microsoft.com/library/system.datetime.tofiletimeutc(v=vs.110).aspx) for details." + }, + "ApplicationNameRequiredQueryParam": { + "name": "ApplicationName", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": true, + "description": "The name of application to create from compose file. This is typically the full name of the application including 'fabric:' URI scheme." + }, + "CreateComposeDeploymentRequiredBodyParam": { + "name": "CreateComposeDeploymentDescription", + "in": "body", + "description": "Describes the compose deployment that needs to be created.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/CreateComposeDeploymentDescription" + } + }, + "PasswordEncryptedOptionalQueryParam": { + "name": "PasswordEncrypted", + "in": "query", + "x-ms-parameter-location": "method", + "type": "boolean", + "required": false, + "description": "Indicates that supplied container repository password is encrypted." + }, + "RepositoryPasswordOptionalQueryParam": { + "name": "RepositoryPassword", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": false, + "description": "The password for supplied username to connect to container repository." + }, + "RepositoryUserNameOptionalQueryParam": { + "name": "RepositoryUserName", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": false, + "description": "The user name to connect to container repository." + }, + "MaxResultsOptionalQueryParam": { + "name": "MaxResults", + "in": "query", + "x-ms-parameter-location": "method", + "type": "integer", + "format": "int64", + "minimum": 0, + "default": 0, + "required": false, + "description": "The maximum number of results to be returned as part of the paged queries. This parameter defines the upper bound on the number of results returned. The results returned can be less than the specified maximum results if they do not fit in the message as per the max message size restrictions defined in the configuration. If this parameter is zero or not specified, the paged query includes as many results as possible that fit in the return message." + }, + "MetricNameRequiredQueryParam": { + "name": "MetricName", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": true, + "description": "Name of the metric based on which to get ordered list of partitions." + }, + "ApplicationDescriptionRequiredBodyParam": { + "name": "ApplicationDescription", + "in": "body", + "description": "Description for creating an application.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/ApplicationDescription" + } + }, + "ServiceDescriptionRequiredBodyParam": { + "name": "ServiceDescription", + "in": "body", + "description": "The information necessary to create a service.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/ServiceDescription" + } + }, + "ServiceUpdateDescriptionRequiredBodyParam": { + "name": "ServiceUpdateDescription", + "in": "body", + "description": "The information necessary to update a service.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/ServiceUpdateDescription" + } + }, + "ImageStoreCopyDescriptionRequiredBodyParam": { + "name": "ImageStoreCopyDescription", + "in": "body", + "description": "Describes the copy description for the image store.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/ImageStoreCopyDescription" + } + }, + "CodePackageNameOptionalQueryParam": { + "name": "CodePackageName", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": false, + "description": "The name of code package specified in service manifest registered as part of an application type in a Service Fabric cluster." + }, + "RestartDeployedCodePackageRequiredBodyParam": { + "name": "RestartDeployedCodePackageDescription", + "in": "body", + "description": "Describes the deployed code package on Service Fabric node to restart.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/RestartDeployedCodePackageDescription" + } + }, + "PartitionsHealthStateFilterOptionalQueryParam": { + "name": "PartitionsHealthStateFilter", + "description": "Allows filtering of the partitions health state objects returned in the result of service health query based on their health state.\nThe possible values for this parameter include integer value of one of the following health states.\nOnly partitions that match the filter are returned. All partitions are used to evaluate the aggregated health state.\nIf not specified, all entries are returned. The state values are flag-based enumeration, so the value could be a combination of these value\nobtained using bitwise 'OR' operator. For example, if the provided value is 6 then health state of partitions with HealthState value of OK (2) and Warning (4) will be returned.\n\n- Default - Default value. Matches any HealthState. The value is zero.\n- None - Filter that doesn't match any HealthState value. Used in order to return no results on a given collection of states. The value is 1.\n- Ok - Filter that matches input with HealthState value Ok. The value is 2.\n- Warning - Filter that matches input with HealthState value Warning. The value is 4.\n- Error - Filter that matches input with HealthState value Error. The value is 8.\n- All - Filter that matches input with any HealthState value. The value is 65535.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "integer", + "required": false, + "default": 0 + }, + "DeployedServiceType_ServiceManifestNameOptionalQueryParam": { + "name": "ServiceManifestName", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": false, + "description": "The name of the service manifest to filter the list of deployed service type information. If specified, the response will only contain the information about service types that are defined in this service manifest." + }, + "ServiceTypeNameRequiredPathParam": { + "name": "serviceTypeName", + "in": "path", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true, + "type": "string", + "required": true, + "description": "Specifies the name of a Service Fabric service type." + }, + "ImageStoreContentPathRequiredPathParam": { + "name": "contentPath", + "in": "path", + "x-ms-parameter-location": "method", + "type": "string", + "required": true, + "description": "Relative path to file or folder in the image store from its root." + }, + "PartitionKeyTypeOptionalQueryParam": { + "name": "PartitionKeyType", + "description": "Key type for the partition. This parameter is required if the partition scheme for the service is Int64Range or Named. The possible values are following.\n- None (1) - Indicates that the PartitionKeyValue parameter is not specified. This is valid for the partitions with partitioning scheme as Singleton. This is the default value. The value is 1.\n- Int64Range (2) - Indicates that the PartitionKeyValue parameter is an int64 partition key. This is valid for the partitions with partitioning scheme as Int64Range. The value is 2.\n- Named (3) - Indicates that the PartitionKeyValue parameter is a name of the partition. This is valid for the partitions with partitioning scheme as Named. The value is 3.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "integer", + "required": false + }, + "PartitionKeyValueOptionalQueryParam": { + "name": "PartitionKeyValue", + "in": "query", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true, + "type": "string", + "required": false, + "description": "Partition key. This is required if the partition scheme for the service is Int64Range or Named. \nThis is not the partition ID, but rather, either the integer key value, or the name of the partition ID.\nFor example, if your service is using ranged partitions from 0 to 10, then they PartitionKeyValue would be an\ninteger in that range. Query service description to see the range or name." + }, + "PreviousRspVersionOptionalQueryParam": { + "name": "PreviousRspVersion", + "in": "query", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true, + "type": "string", + "required": false, + "description": "The value in the Version field of the response that was received previously. This is required if the user knows that the result that was gotten previously is stale." + }, + "DataLossModeRequiredQueryParam": { + "name": "DataLossMode", + "description": "This enum is passed to the StartDataLoss API to indicate what type of data loss to induce.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "enum": [ + "Invalid", + "PartialDataLoss", + "FullDataLoss" + ], + "required": true, + "x-ms-enum": { + "name": "DataLossMode", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Reserved. Do not pass into API." + }, + { + "value": "PartialDataLoss", + "description": "PartialDataLoss option will cause a quorum of replicas to go down, triggering an OnDataLoss event in the system for the given partition." + }, + { + "value": "FullDataLoss", + "description": "FullDataLoss option will drop all the replicas which means that all the data will be lost." + } + ] + } + }, + "FaultOperationIdRequiredQueryParam": { + "name": "OperationId", + "description": "A GUID that identifies a call of this API. This is passed into the corresponding GetProgress API", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "format": "uuid", + "required": true + }, + "ForceRequiredQueryParam": { + "name": "Force", + "description": "Indicates whether to gracefully roll back and clean up internal system state modified by executing the user-induced operation.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "boolean", + "required": true, + "default": false + }, + "NodeInstanceIdRequiredQueryParam": { + "name": "NodeInstanceId", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": true, + "description": "The node instance ID of the target node. This can be determined through GetNodeInfo API." + }, + "NodeTransitionTypeRequiredQueryParam": { + "name": "NodeTransitionType", + "description": "Indicates the type of transition to perform. NodeTransitionType.Start will start a stopped node. NodeTransitionType.Stop will stop a node that is up.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "enum": [ + "Invalid", + "Start", + "Stop" + ], + "required": true, + "x-ms-enum": { + "name": "NodeTransitionType", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Reserved. Do not pass into API." + }, + { + "value": "Start", + "description": "Transition a stopped node to up." + }, + { + "value": "Stop", + "description": "Transition an up node to stopped." + } + ] + } + }, + "QuorumLossDurationRequiredQueryParam": { + "name": "QuorumLossDuration", + "description": "The amount of time for which the partition will be kept in quorum loss. This must be specified in seconds.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "integer", + "required": true + }, + "QuorumLossModeRequiredQueryParam": { + "name": "QuorumLossMode", + "description": "This enum is passed to the StartQuorumLoss API to indicate what type of quorum loss to induce.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "enum": [ + "Invalid", + "QuorumReplicas", + "AllReplicas" + ], + "required": true, + "x-ms-enum": { + "name": "QuorumLossMode", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Reserved. Do not pass into API." + }, + { + "value": "QuorumReplicas", + "description": "Partial Quorum loss mode : Minimum number of replicas for a partition will be down that will cause a quorum loss." + }, + { + "value": "AllReplicas" + } + ] + } + }, + "RestartPartitionModeRequiredQueryParam": { + "name": "RestartPartitionMode", + "description": "Describe which partitions to restart.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "enum": [ + "Invalid", + "AllReplicasOrInstances", + "OnlyActiveSecondaries" + ], + "required": true, + "x-ms-enum": { + "name": "RestartPartitionMode", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Reserved. Do not pass into API." + }, + { + "value": "AllReplicasOrInstances", + "description": "All replicas or instances in the partition are restarted at once." + }, + { + "value": "OnlyActiveSecondaries", + "description": "Only the secondary replicas are restarted." + } + ] + } + }, + "StateFilterRequiredQueryParam": { + "name": "StateFilter", + "description": "Used to filter on OperationState's for user-induced operations.\n\n- 65535 - select All\n- 1 - select Running\n- 2 - select RollingBack\n- 8 - select Completed\n- 16 - select Faulted\n- 32 - select Cancelled\n- 64 - select ForceCancelled", + "in": "query", + "x-ms-parameter-location": "method", + "type": "integer", + "required": true, + "default": 65535 + }, + "StopDurationInSecondsRequiredQueryParam": { + "name": "StopDurationInSeconds", + "in": "query", + "x-ms-parameter-location": "method", + "type": "integer", + "format": "int32", + "minimum": 0, + "required": true, + "description": "The duration, in seconds, to keep the node stopped. The minimum value is 600, the maximum is 14400. After this time expires, the node will automatically come back up." + }, + "TypeFilterRequiredQueryParam": { + "name": "TypeFilter", + "description": "Used to filter on OperationType for user-induced operations.\n\n- 65535 - select all\n- 1 - select PartitionDataLoss.\n- 2 - select PartitionQuorumLoss.\n- 4 - select PartitionRestart.\n- 8 - select NodeTransition.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "integer", + "required": true, + "default": 65535 + }, + "DeployServicePackageToNodeRequiredBodyParam": { + "name": "DeployServicePackageToNodeDescription", + "in": "body", + "description": "Describes information for deploying a service package to a Service Fabric node.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/DeployServicePackageToNodeDescription" + } + }, + "ResumeApplicationUpgradeDescriptionRequiredBodyParam": { + "name": "ResumeApplicationUpgradeDescription", + "in": "body", + "description": "Describes the parameters for resuming an application upgrade.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/ResumeApplicationUpgradeDescription" + } + }, + "ApplicationUpgradeUpdateDescriptionRequiredBodyParam": { + "name": "ApplicationUpgradeUpdateDescription", + "in": "body", + "description": "Parameters for updating an existing application upgrade.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/ApplicationUpgradeUpdateDescription" + } + }, + "TimeoutOptionalQueryParam": { + "name": "timeout", + "in": "query", + "x-ms-parameter-location": "method", + "type": "integer", + "format": "int64", + "required": false, + "minimum": 1, + "maximum": 4294967295, + "default": 60, + "description": "The server timeout for performing the operation in seconds. This timeout specifies the time duration that the client is willing to wait for the requested operation to complete. The default value for this parameter is 60 seconds." + }, + "NameDescriptionRequiredBodyParam": { + "name": "NameDescription", + "in": "body", + "description": "Describes the Service Fabric name to be created.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/NameDescription" + } + }, + "NameIdRequiredPathParam": { + "name": "nameId", + "in": "path", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true, + "type": "string", + "required": true, + "description": "The Service Fabric name, without the 'fabric:' URI scheme." + }, + "RecursiveOptionalQueryParam": { + "name": "Recursive", + "description": "Allows specifying that the search performed should be recursive.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "boolean", + "required": false, + "default": false + }, + "IncludeValuesOptionalQueryParam": { + "name": "IncludeValues", + "description": "Allows specifying whether to include the values of the properties returned. True if values should be returned with the metadata; False to return only property metadata.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "boolean", + "required": false, + "default": false + }, + "PropertyDescriptionRequiredBodyParam": { + "name": "PropertyDescription", + "in": "body", + "description": "Describes the Service Fabric property to be created.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/PropertyDescription" + } + }, + "PropertyNameRequiredQueryParam": { + "name": "PropertyName", + "description": "Specifies the name of the property to get.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": true + }, + "PropertyBatchDescriptionListRequiredBodyParam": { + "name": "PropertyBatchDescriptionList", + "in": "body", + "description": "Describes the property batch operations to be submitted.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/PropertyBatchDescriptionList" + } + }, + "ImmediateOptionalQueryParam": { + "name": "Immediate", + "in": "query", + "x-ms-parameter-location": "method", + "type": "boolean", + "required": false, + "default": false, + "description": "A flag that indicates whether the report should be sent immediately.\nA health report is sent to a Service Fabric gateway Application, which forwards to the health store.\nIf Immediate is set to true, the report is sent immediately from HTTP Gateway to the health store, regardless of the fabric client settings that the HTTP Gateway Application is using.\nThis is useful for critical reports that should be sent as soon as possible.\nDepending on timing and other conditions, sending the report may still fail, for example if the HTTP Gateway is closed or the message doesn't reach the Gateway.\nIf Immediate is set to false, the report is sent based on the health client settings from the HTTP Gateway. Therefore, it will be batched according to the HealthReportSendInterval configuration.\nThis is the recommended setting because it allows the health client to optimize health reporting messages to health store as well as health report processing.\nBy default, reports are not sent immediately." + }, + "ExcludeHealthStatisticsOptionalQueryParam": { + "name": "ExcludeHealthStatistics", + "description": "Indicates whether the health statistics should be returned as part of the query result. False by default.\nThe statistics show the number of children entities in health state Ok, Warning, and Error.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "boolean", + "required": false, + "default": false + }, + "IncludeSystemApplicationHealthStatisticsOptionalQueryParam": { + "name": "IncludeSystemApplicationHealthStatistics", + "description": "Indicates whether the health statistics should include the fabric:/System application health statistics. False by default.\nIf IncludeSystemApplicationHealthStatistics is set to true, the health statistics include the entities that belong to the fabric:/System application.\nOtherwise, the query result includes health statistics only for user applications.\nThe health statistics must be included in the query result for this parameter to be applied.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "boolean", + "required": false, + "default": false + }, + "IncludeHealthStateOptionalQueryParam": { + "name": "IncludeHealthState", + "in": "query", + "x-ms-parameter-location": "method", + "type": "boolean", + "required": false, + "default": false, + "description": "Include the health state of an entity.\nIf this parameter is false or not specified, then the health state returned is \"Unknown\".\nWhen set to true, the query goes in parallel to the node and the health system service before the results are merged.\nAs a result, the query is more expensive and may take a longer time." + }, + "BackupPolicyDescriptionRequiredBodyParam": { + "name": "BackupPolicyDescription", + "in": "body", + "required": true, + "x-ms-parameter-location": "method", + "description": "Describes the backup policy.", + "schema": { + "$ref": "#/definitions/BackupPolicyDescription" + } + }, + "DisableBackupDescriptionOptionalBodyParam": { + "name": "DisableBackupDescription", + "in": "body", + "description": "Specifies the parameters to disable backup for any backup entity.", + "required": false, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/DisableBackupDescription" + } + }, + "BackupPolicyNameRequiredPathParam": { + "name": "backupPolicyName", + "in": "path", + "description": "The name of the backup policy.", + "required": true, + "x-ms-parameter-location": "method", + "type": "string" + }, + "EnableBackupDescriptionRequiredBodyParam": { + "name": "EnableBackupDescription", + "in": "body", + "description": "Specifies the parameters for enabling backup.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/EnableBackupDescription" + } + }, + "RestorePartitionDescriptionRequiredBodyParam": { + "name": "RestorePartitionDescription", + "in": "body", + "description": "Describes the parameters to restore the partition.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/RestorePartitionDescription" + } + }, + "RestoreTimeoutOptionalQueryParam": { + "name": "RestoreTimeout", + "description": "Specifies the maximum amount of time to wait, in minutes, for the restore operation to complete. Post that, the operation returns back with timeout error. However, in certain corner cases it could be that the restore operation goes through even though it completes with timeout. In case of timeout error, its recommended to invoke this operation again with a greater timeout value. the default value for the same is 10 minutes.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "integer", + "required": false, + "default": 10 + }, + "BackupPartitionDescriptionOptionalBodyParam": { + "name": "BackupPartitionDescription", + "in": "body", + "required": false, + "x-ms-parameter-location": "method", + "description": "Describes the parameters to backup the partition now. If not present, backup operation uses default parameters from the backup policy current associated with this partition.", + "schema": { + "$ref": "#/definitions/BackupPartitionDescription" + } + }, + "BackupTimeoutOptionalQueryParam": { + "name": "BackupTimeout", + "in": "query", + "x-ms-parameter-location": "method", + "type": "integer", + "required": false, + "description": "Specifies the maximum amount of time, in minutes, to wait for the backup operation to complete. Post that, the operation completes with timeout error. However, in certain corner cases it could be that though the operation returns back timeout, the backup actually goes through. In case of timeout error, its recommended to invoke this operation again with a greater timeout value. The default value for the same is 10 minutes.", + "default": 10 + }, + "LatestOptionalQueryParam": { + "name": "Latest", + "in": "query", + "x-ms-parameter-location": "method", + "type": "boolean", + "description": "Specifies whether to get only the most recent backup available for a partition for the specified time range.", + "required": false, + "default": false + }, + "ValidateConnectionOptionalQueryParam": { + "name": "ValidateConnection", + "in": "query", + "x-ms-parameter-location": "method", + "type": "boolean", + "description": "Specifies whether to validate the storage connection and credentials before creating or updating the backup policies.", + "required": false, + "default": false + }, + "StartDateTimeFilterOptionalQueryParam": { + "name": "StartDateTimeFilter", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "format": "date-time", + "required": false, + "description": "Specify the start date time from which to enumerate backups, in datetime format. The date time must be specified in ISO8601 format. This is an optional parameter. If not specified, all backups from the beginning are enumerated." + }, + "EndDateTimeFilterOptionalQueryParam": { + "name": "EndDateTimeFilter", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "format": "date-time", + "required": false, + "description": "Specify the end date time till which to enumerate backups, in datetime format. The date time must be specified in ISO8601 format. This is an optional parameter. If not specified, enumeration is done till the most recent backup." + }, + "GetBackupByStorageQueryDescriptionRequiredBodyParam": { + "name": "GetBackupByStorageQueryDescription", + "in": "body", + "required": true, + "x-ms-parameter-location": "method", + "description": "Describes the filters and backup storage details to be used for enumerating backups.", + "schema": { + "$ref": "#/definitions/GetBackupByStorageQueryDescription" + } + }, + "RepairTaskApproveDescriptionRequiredBodyParam": { + "name": "RepairTaskApproveDescription", + "in": "body", + "description": "Describes the repair task to be approved.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/RepairTaskApproveDescription" + } + }, + "RepairTaskCancelDescriptionRequiredBodyParam": { + "name": "RepairTaskCancelDescription", + "in": "body", + "description": "Describes the repair task to be cancelled.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/RepairTaskCancelDescription" + } + }, + "RepairTaskDeleteDescriptionRequiredBodyParam": { + "name": "RepairTaskDeleteDescription", + "in": "body", + "description": "Describes the repair task to be deleted.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/RepairTaskDeleteDescription" + } + }, + "RepairTaskExecutorFilterOptionalQueryParam": { + "name": "ExecutorFilter", + "description": "The name of the repair executor whose claimed tasks should be included in the list.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": false + }, + "RepairTaskIdFilterOptionalQueryParam": { + "name": "TaskIdFilter", + "description": "The repair task ID prefix to be matched.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": false + }, + "RepairTaskRequiredBodyParam": { + "name": "RepairTask", + "in": "body", + "description": "Describes the repair task to be created or updated.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/RepairTask" + } + }, + "RepairTaskStateFilterOptionalQueryParam": { + "name": "StateFilter", + "description": "A bitwise-OR of the following values, specifying which task states should be included in the result list.\n\n- 1 - Created\n- 2 - Claimed\n- 4 - Preparing\n- 8 - Approved\n- 16 - Executing\n- 32 - Restoring\n- 64 - Completed", + "in": "query", + "x-ms-parameter-location": "method", + "type": "integer", + "required": false + }, + "RepairTaskUpdateHealthPolicyDescriptionRequiredBodyParam": { + "name": "RepairTaskUpdateHealthPolicyDescription", + "in": "body", + "description": "Describes the repair task healthy policy to be updated.", + "x-ms-parameter-location": "method", + "required": true, + "schema": { + "$ref": "#/definitions/RepairTaskUpdateHealthPolicyDescription" + } + }, + "UploadSessionIdRequiredQueryParam": { + "name": "session-id", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "format": "uuid", + "required": true, + "description": "A GUID generated by the user for a file uploading. It identifies an image store upload session which keeps track of all file chunks until it is committed." + }, + "UploadFileChunkContentRangeHeaderParam": { + "name": "Content-Range", + "in": "header", + "x-ms-parameter-location": "method", + "type": "string", + "required": true, + "description": "When uploading file chunks to the image store, the Content-Range header field need to be configured and sent with a request. The format should looks like \"bytes {First-Byte-Position}-{Last-Byte-Position}/{File-Length}\". For example, Content-Range:bytes 300-5000/20000 indicates that user is sending bytes 300 through 5,000 and the total file length is 20,000 bytes." + }, + "ChaosScheduleRequiredBodyParam": { + "name": "ChaosSchedule", + "in": "body", + "description": "Describes the schedule used by Chaos.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/ChaosScheduleDescription" + } + }, + "StartTimeUtcRequiredQueryParam": { + "name": "StartTimeUtc", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": true, + "description": "The start time of a lookup query in ISO UTC yyyy-MM-ddTHH:mm:ssZ." + }, + "EndTimeUtcRequiredQueryParam": { + "name": "EndTimeUtc", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": true, + "description": "The end time of a lookup query in ISO UTC yyyy-MM-ddTHH:mm:ssZ." + }, + "EventsTypesFilterOptionalQueryParam": { + "name": "EventsTypesFilter", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": false, + "description": "This is a comma separated string specifying the types of FabricEvents that should only be included in the response." + }, + "ExcludeAnalysisEventsOptionalQueryParam": { + "name": "ExcludeAnalysisEvents", + "in": "query", + "x-ms-parameter-location": "method", + "type": "boolean", + "required": false, + "description": "This param disables the retrieval of AnalysisEvents if true is passed." + }, + "SkipCorrelationLookupOptionalQueryParam": { + "name": "SkipCorrelationLookup", + "in": "query", + "x-ms-parameter-location": "method", + "type": "boolean", + "required": false, + "description": "This param disables the search of CorrelatedEvents information if true is passed. otherwise the CorrelationEvents get processed and HasCorrelatedEvents field in every FabricEvent gets populated." + }, + "EventInstanceIdRequiredPathParam": { + "name": "eventInstanceId", + "in": "path", + "x-ms-parameter-location": "method", + "type": "string", + "required": true, + "description": "The EventInstanceId." + }, + "PreviousOptionalQueryParam": { + "name": "Previous", + "in": "query", + "x-ms-parameter-location": "method", + "type": "boolean", + "description": "Specifies whether to get container logs from exited/dead containers of the code package instance.", + "required": false, + "default": false + }, + "IgnoreConstraintsOptionalParam": { + "name": "IgnoreConstraints", + "in": "query", + "x-ms-parameter-location": "method", + "type": "boolean", + "required": false, + "default": false, + "description": "Ignore constraints when moving a replica or instance. If this parameter is not specified, all constraints are honored." + }, + "NodeNameOptionalParam": { + "name": "NodeName", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": false, + "description": "The name of the node." + }, + "VerboseServicePlacementHealthReportingParam": { + "name": "Enabled", + "in": "query", + "x-ms-parameter-location": "method", + "type": "boolean", + "required": true, + "description": "The verbosity of service placement health reporting." + }, + "NewNodeNameOptionalParam": { + "name": "NewNodeName", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": false, + "description": "The name of the target node for secondary replica or instance move. If not specified, replica or instance is moved to a random node." + }, + "CurrentNodeNameRequiredParam": { + "name": "CurrentNodeName", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": true, + "description": "The name of the source node for secondary replica move." + }, + "CurrentNodeNameOptionalParam": { + "name": "CurrentNodeName", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": false, + "description": "The name of the source node for instance move. If not specified, instance is moved from a random node." + }, + "OnlyQueryPrimariesOptionalQueryParam": { + "name": "OnlyQueryPrimaries", + "description": "Indicates that unplaced replica information will be queries only for primary replicas.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "boolean", + "required": false, + "default": false + }, + "OrderingOptionalQueryParam": { + "name": "Ordering", + "description": "Ordering of partitions' load.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": false, + "default": "Desc", + "enum": [ + "Desc", + "Asc" + ], + "x-ms-enum": { + "name": "Ordering", + "modelAsString": true, + "values": [ + { + "value": "Desc", + "description": "Sort load descending." + }, + { + "value": "Asc", + "description": "Sort load ascending." + } + ] + } + }, + "ForceConfigurationOverrideOptionalParam": { + "name": "Force", + "in": "query", + "x-ms-parameter-location": "method", + "type": "boolean", + "required": false, + "description": "Force adding configuration overrides on specified nodes." + }, + "ConfigurationOverrideListRequiredParam": { + "name": "ConfigParameterOverrideList", + "in": "body", + "description": "Description for adding list of configuration overrides.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/ConfigParameterOverrideList" + } + }, + "PartitionMetricLoadDescriptionListRequiredParam": { + "name": "PartitionMetricLoadDescriptionList", + "in": "body", + "description": "Description of updating load for list of partitions.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/PartitionMetricLoadDescriptionList" + } + }, + "NodeTagsListRequiredParam": { + "name": "NodeTags", + "in": "body", + "description": "Description for adding list of node tags.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/NodeTagsList" + } + }, + "SecretResourceDescriptionRequiredBodyParam": { + "name": "secretResourceDescription", + "in": "body", + "description": "Description for creating a secret resource.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/SecretResourceDescription" + } + }, + "SecretResourceNameRequiredPathParam": { + "name": "secretResourceName", + "in": "path", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true, + "type": "string", + "required": true, + "description": "The name of the secret resource." + }, + "SecretValueResourceDescriptionRequiredBodyParam": { + "name": "secretValueResourceDescription", + "in": "body", + "description": "Description for creating a value of a secret resource.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/SecretValueResourceDescription" + } + }, + "SecretValueResourceNameRequiredPathParam": { + "name": "secretValueResourceName", + "in": "path", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true, + "type": "string", + "required": true, + "description": "The name of the secret resource value which is typically the version identifier for the value." + }, + "VolumeResourceDescriptionRequiredBodyParam": { + "name": "volumeResourceDescription", + "in": "body", + "description": "Description for creating a Volume resource.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/VolumeResourceDescription" + } + }, + "VolumeResourceNameRequiredPathParam": { + "name": "volumeResourceName", + "in": "path", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true, + "type": "string", + "required": true, + "description": "The identity of the volume." + }, + "NetworkResourceDescriptionRequiredBodyParam": { + "name": "networkResourceDescription", + "in": "body", + "description": "Description for creating a Network resource.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/NetworkResourceDescription" + } + }, + "NetworkResourceNameRequiredPathParam": { + "name": "networkResourceName", + "in": "path", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true, + "type": "string", + "required": true, + "description": "The identity of the network." + }, + "ApplicationResourceDescriptionRequiredBodyParam": { + "name": "applicationResourceDescription", + "in": "body", + "description": "Description for creating a Application resource.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/ApplicationResourceDescription" + } + }, + "ApplicationResourceNameRequiredPathParam": { + "name": "applicationResourceName", + "in": "path", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true, + "type": "string", + "required": true, + "description": "The identity of the application." + }, + "ServiceResourceNameRequiredPathParam": { + "name": "serviceResourceName", + "in": "path", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true, + "type": "string", + "required": true, + "description": "The identity of the service." + }, + "ReplicaNameRequiredPathParam": { + "name": "replicaName", + "in": "path", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true, + "type": "string", + "required": true, + "description": "Service Fabric replica name." + }, + "GatewayResourceDescriptionRequiredBodyParam": { + "name": "gatewayResourceDescription", + "in": "body", + "description": "Description for creating a Gateway resource.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/GatewayResourceDescription" + } + }, + "GatewayResourceNameRequiredPathParam": { + "name": "gatewayResourceName", + "in": "path", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true, + "type": "string", + "required": true, + "description": "The identity of the gateway." + } + } +} diff --git a/specification/servicefabric/data-plane/readme.go.md b/specification/servicefabric/data-plane/readme.go.md index d59076f5d70e..3e5966edb6d6 100644 --- a/specification/servicefabric/data-plane/readme.go.md +++ b/specification/servicefabric/data-plane/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: servicefabric clear-output-folder: true ``` @@ -68,4 +68,12 @@ These settings apply only when `--tag=7.2 --go` is specified on the command line ``` yaml $(tag) == '7.2' && $(go) output-folder: $(go-sdk-folder)/services/$(namespace)/7.2/$(namespace) +``` + +### Tag: 8.0 and go + +These settings apply only when `--tag=8.0 --go` is specified on the command line. + +``` yaml $(tag) == '8.0' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/8.0/$(namespace) ``` \ No newline at end of file diff --git a/specification/servicefabric/data-plane/readme.md b/specification/servicefabric/data-plane/readme.md index 4e8ddd138a3d..b815594e6d6f 100644 --- a/specification/servicefabric/data-plane/readme.md +++ b/specification/servicefabric/data-plane/readme.md @@ -25,7 +25,7 @@ These are the global settings for the ServiceFabricClient API. ``` yaml openapi-type: data-plane -tag: '7.2' +tag: '8.0' ``` ### Suppression @@ -135,6 +135,16 @@ input-file: ``` +### Tag: 8.0 + +These settings apply only when `--tag=8.0` is specified on the command line. + +``` yaml $(tag) == '8.0' +input-file: +- Microsoft.ServiceFabric/stable/8.0/servicefabric.json + +``` + --- # Code Generation @@ -190,6 +200,7 @@ input-file: - $(this-folder)/Microsoft.ServiceFabric/stable/7.0/servicefabric.json - $(this-folder)/Microsoft.ServiceFabric/stable/7.1/servicefabric.json - $(this-folder)/Microsoft.ServiceFabric/stable/7.2/servicefabric.json + - $(this-folder)/Microsoft.ServiceFabric/stable/8.0/servicefabric.json ``` If there are files that should not be in the `all-api-versions` set, diff --git a/specification/servicefabric/data-plane/readme.python.md b/specification/servicefabric/data-plane/readme.python.md index 3ada9c5e3aad..ddee283e08fc 100644 --- a/specification/servicefabric/data-plane/readme.python.md +++ b/specification/servicefabric/data-plane/readme.python.md @@ -11,7 +11,7 @@ python: payload-flattening-threshold: 2 namespace: azure.servicefabric package-name: azure-servicefabric - package-version: 7.2.0.0 + package-version: 8.0.0.0 add-credentials: true clear-output-folder: true ``` diff --git a/specification/servicefabric/resource-manager/readme.azureresourceschema.md b/specification/servicefabric/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 7b3160bc901c..000000000000 --- a/specification/servicefabric/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,140 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-servicefabric-2020-12-01-preview - - tag: schema-servicefabric-2020-03-01 - - tag: schema-servicefabric-2020-01-01-preview - - tag: schema-servicefabric-2019-11-01-preview - - tag: schema-servicefabric-2019-06-01-preview - - tag: schema-servicefabric-2019-03-01-preview - - tag: schema-servicefabric-2019-03-01 - - tag: schema-servicefabric-2018-02-01 - - tag: schema-servicefabric-2017-07-01-preview - - tag: schema-servicefabric-2016-09-01 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-servicefabric-2020-12-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-servicefabric-2020-12-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ServiceFabric/preview/2020-12-01-preview/cluster.json - - Microsoft.ServiceFabric/preview/2020-12-01-preview/application.json - -``` - -### Tag: schema-servicefabric-2020-03-01 and azureresourceschema - -``` yaml $(tag) == 'schema-servicefabric-2020-03-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ServiceFabric/stable/2020-03-01/cluster.json - - Microsoft.ServiceFabric/stable/2020-03-01/application.json - -``` - -### Tag: schema-servicefabric-2020-01-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-servicefabric-2020-01-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ServiceFabric/preview/2020-01-01-preview/managedcluster.json - - Microsoft.ServiceFabric/preview/2020-01-01-preview/nodetype.json - -``` - -### Tag: schema-servicefabric-2019-11-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-servicefabric-2019-11-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ServiceFabric/preview/2019-11-01-preview/cluster.json - - Microsoft.ServiceFabric/preview/2019-11-01-preview/application.json - -``` - -### Tag: schema-servicefabric-2019-06-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-servicefabric-2019-06-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ServiceFabric/preview/2019-06-01-preview/cluster.json - - Microsoft.ServiceFabric/preview/2019-06-01-preview/application.json - -``` - -### Tag: schema-servicefabric-2019-03-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-servicefabric-2019-03-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ServiceFabric/preview/2019-03-01-preview/cluster.json - - Microsoft.ServiceFabric/preview/2019-03-01-preview/application.json - -``` - -### Tag: schema-servicefabric-2019-03-01 and azureresourceschema - -``` yaml $(tag) == 'schema-servicefabric-2019-03-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ServiceFabric/stable/2019-03-01/cluster.json - - Microsoft.ServiceFabric/stable/2019-03-01/application.json - -``` - -### Tag: schema-servicefabric-2018-02-01 and azureresourceschema - -``` yaml $(tag) == 'schema-servicefabric-2018-02-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ServiceFabric/stable/2018-02-01/cluster.json - -``` - -### Tag: schema-servicefabric-2017-07-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-servicefabric-2017-07-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ServiceFabric/preview/2017-07-01-preview/application.json - - Microsoft.ServiceFabric/preview/2017-07-01-preview/servicefabric.json - -``` - -### Tag: schema-servicefabric-2016-09-01 and azureresourceschema - -``` yaml $(tag) == 'schema-servicefabric-2016-09-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ServiceFabric/stable/2016-09-01/servicefabric.json - -``` diff --git a/specification/servicefabric/resource-manager/readme.go.md b/specification/servicefabric/resource-manager/readme.go.md index b47de2db193f..f7f5d24f2ffe 100644 --- a/specification/servicefabric/resource-manager/readme.go.md +++ b/specification/servicefabric/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: servicefabric clear-output-folder: true ``` diff --git a/specification/servicefabric/resource-manager/readme.md b/specification/servicefabric/resource-manager/readme.md index a9d9b2ce5190..9aefd9714f9b 100644 --- a/specification/servicefabric/resource-manager/readme.md +++ b/specification/servicefabric/resource-manager/readme.md @@ -57,7 +57,6 @@ directive: reason: There are open issues (bugs) in the validator affecting some of the examples and since there is no way to selectively disable the validation for a particular example or paths, all of the example validation is being turned off. - suppress: Example Validations reason: There are open issues (bugs) in the validator affecting some of the examples and since there is no way to selectively disable the validation for a particular example or paths, all of the example validation is being turned off. - ``` ### Tag: package-2020-03 @@ -182,6 +181,7 @@ This is not used by Autorest itself. swagger-to-sdk: - repo: azure-sdk-for-net - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-java - repo: azure-sdk-for-go - repo: azure-sdk-for-node @@ -212,11 +212,13 @@ csharp: See configuration in [readme.go.md](./readme.go.md) +## Python + +See configuration in [readme.python.md](./readme.python.md) + ## Java See configuration in [readme.java.md](./readme.java.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/servicefabric/resource-manager/readme.python.md b/specification/servicefabric/resource-manager/readme.python.md index 17ef5ba76ed8..404c6ec0210b 100644 --- a/specification/servicefabric/resource-manager/readme.python.md +++ b/specification/servicefabric/resource-manager/readme.python.md @@ -4,7 +4,7 @@ These settings apply only when `--python` is specified on the command line. Please also specify `--python-sdks-folder=`. Use `--python-mode=update` if you already have a setup.py and just want to update the code itself. -``` yaml $(python) +``` yaml $(python) && !$(track2) python-mode: create python: azure-arm: true @@ -14,13 +14,47 @@ python: package-name: azure-mgmt-servicefabric clear-output-folder: true ``` -``` yaml $(python) && $(python-mode) == 'update' +``` yaml $(python) && $(track2) +python-mode: create +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +namespace: azure.mgmt.servicefabric +package-name: azure-mgmt-servicefabric +package-version: 1.0.0b1 +clear-output-folder: true +``` + + +``` yaml $(python) && $(python-mode) == 'update' && !$(track2) python: no-namespace-folders: true output-folder: $(python-sdks-folder)/servicefabric/azure-mgmt-servicefabric/azure/mgmt/servicefabric ``` -``` yaml $(python) && $(python-mode) == 'create' +``` yaml $(python) && $(python-mode) == 'create' && !$(track2) python: basic-setup-py: true output-folder: $(python-sdks-folder)/servicefabric/azure-mgmt-servicefabric ``` +``` yaml $(python) && $(python-mode) == 'update' && $(track2) +no-namespace-folders: true +output-folder: $(python-sdks-folder)/servicefabric/azure-mgmt-servicefabric/azure/mgmt/servicefabric +``` +``` yaml $(python) && $(python-mode) == 'create' && $(track2) +basic-setup-py: true +output-folder: $(python-sdks-folder)/servicefabric/azure-mgmt-servicefabric +``` + +``` yaml $(python) && $(track2) +directive: + - from: application.json + where: $.paths["/providers/Microsoft.ServiceFabric/operations"].get + transform: $['operationId'] = 'Application_List' + + - from: managedcluster.json + where: $.paths["/providers/Microsoft.ServiceFabric/operations"].get + transform: $['operationId'] = 'Managedcluster_List' + + - from: nodetype.json + where: $.paths["/providers/Microsoft.ServiceFabric/operations"].get + transform: $['operationId'] = 'Nodetype_List' +``` \ No newline at end of file diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/preview/2021-01-01-preview/examples/ServicePatchOperation_example.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/preview/2021-01-01-preview/examples/ServicePatchOperation_example.json index e8f5876c8398..2c867557ac00 100644 --- a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/preview/2021-01-01-preview/examples/ServicePatchOperation_example.json +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/preview/2021-01-01-preview/examples/ServicePatchOperation_example.json @@ -69,9 +69,7 @@ "instanceCount": 5, "minInstanceCount": 3, "minInstancePercentage": 30, - "instanceCloseDelayDuration": "00:10:00", - "servicePackageActivationMode": "SharedProcess", - "serviceDnsName": "my.service.dns" + "servicePackageActivationMode": "SharedProcess" } } } diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/preview/2021-01-01-preview/examples/ServicePutOperation_example_max.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/preview/2021-01-01-preview/examples/ServicePutOperation_example_max.json index 01e168a26ff8..791aa8a5e842 100644 --- a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/preview/2021-01-01-preview/examples/ServicePutOperation_example_max.json +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/preview/2021-01-01-preview/examples/ServicePutOperation_example_max.json @@ -57,9 +57,7 @@ "instanceCount": 5, "minInstanceCount": 3, "minInstancePercentage": 30, - "instanceCloseDelayDuration": "00:10:00", - "servicePackageActivationMode": "SharedProcess", - "serviceDnsName": "my.service.dns" + "servicePackageActivationMode": "SharedProcess" } } }, @@ -120,9 +118,7 @@ "instanceCount": 5, "minInstanceCount": 3, "minInstancePercentage": 30, - "instanceCloseDelayDuration": "00:10:00", - "servicePackageActivationMode": "SharedProcess", - "serviceDnsName": "my.service.dns" + "servicePackageActivationMode": "SharedProcess" } } }, @@ -185,9 +181,7 @@ "instanceCount": 5, "minInstanceCount": 3, "minInstancePercentage": 30, - "instanceCloseDelayDuration": "00:10:00", - "servicePackageActivationMode": "SharedProcess", - "serviceDnsName": "my.service.dns" + "servicePackageActivationMode": "SharedProcess" } } } diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/preview/2021-01-01-preview/managedapplication.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/preview/2021-01-01-preview/managedapplication.json index b674c66c8c05..2f7069313c4b 100644 --- a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/preview/2021-01-01-preview/managedapplication.json +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/preview/2021-01-01-preview/managedapplication.json @@ -1372,7 +1372,7 @@ "instanceCloseDelayDuration": { "type": "integer", "format": "int64", - "description": "Duration in seconds, to wait before a stateless instance is closed, to allow the active requests to drain gracefully. This would be effective when the instance is closing during the application/cluster upgrade, only for those instances which have a non-zero delay duration configured in the service description. See InstanceCloseDelayDurationSeconds property in StatelessServiceDescription for details. Note, the default value of InstanceCloseDelayDurationInSeconds is 4294967295, which indicates that the behavior will entirely depend on the delay configured in the stateless service description." + "description": "Duration in seconds, to wait before a stateless instance is closed, to allow the active requests to drain gracefully. This would be effective when the instance is closing during the application/cluster upgrade, only for those instances which have a non-zero delay duration configured in the service description." }, "upgradeMode": { "$ref": "#/definitions/RollingUpgradeMode" @@ -1459,7 +1459,8 @@ "metricName", "lowerLoadThreshold", "upperLoadThreshold", - "scaleInterval" + "scaleInterval", + "useOnlyPrimaryLoad" ], "properties": { "metricName": { @@ -1479,6 +1480,10 @@ "scaleInterval": { "type": "string", "description": "The period in seconds on which a decision is made whether to scale or not. This property should come in ISO 8601 format \"hh:mm:ss\"." + }, + "useOnlyPrimaryLoad": { + "type": "boolean", + "description": "Flag determines whether only the load of primary replica should be considered for scaling. If set to true, then trigger will only consider the load of primary replicas of stateful service. If set to false, trigger will consider load of all replicas. This parameter cannot be set to true for stateless service." } } }, @@ -2237,10 +2242,6 @@ } ] } - }, - "serviceDnsName": { - "type": "string", - "description": "The DNS name of the service. It requires the DNS system service to be enabled in Service Fabric cluster." } } }, @@ -2416,10 +2417,6 @@ "servicePlacementTimeLimit": { "type": "string", "description": "The duration for which replicas can stay InBuild before reporting that build is stuck, represented in ISO 8601 format \"hh:mm:ss\"." - }, - "dropSourceReplicaOnMove": { - "type": "boolean", - "description": "Indicates whether to drop source Secondary replica even if the target replica has not finished build. If desired behavior is to drop it as soon as possible the value of this property is true, if not it is false." } } }, @@ -2450,11 +2447,6 @@ "type": "integer", "format": "int32", "description": "MinInstancePercentage is the minimum percentage of InstanceCount that must be up to meet the EnsureAvailability safety check during operations like upgrade or deactivate node. The actual number that is used is max( MinInstanceCount, ceil( MinInstancePercentage/100.0 * InstanceCount) ). Note, if InstanceCount is set to -1, during MinInstancePercentage computation, -1 is first converted into the number of nodes on which the instances are allowed to be placed according to the placement constraints on the service." - }, - "instanceCloseDelayDuration": { - "type": "string", - "default": "0", - "description": "Duration represented in ISO 8601 format \"hh:mm:ss\", to wait before a stateless instance is closed, to allow the active requests to drain gracefully. This would be effective when the instance is closing during the application/cluster upgrade and disabling node. The endpoint exposed on this instance is removed prior to starting the delay, which prevents new connections to this instance. In addition, clients that have subscribed to service endpoint change events(https://docs.microsoft.com/dotnet/api/system.fabric.fabricclient.servicemanagementclient.registerservicenotificationfilterasync), can do the following upon receiving the endpoint removal notification: - Stop sending new requests to this instance. - Close existing connections after in-flight requests have completed. - Connect to a different instance of the service partition for future requests. Note, the default value of InstanceCloseDelayDuration is 0, which indicates that there won't be any delay or removal of the endpoint prior to closing the instance." } } }, diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/preview/2021-01-01-preview/managedcluster.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/preview/2021-01-01-preview/managedcluster.json index ffda15d86d32..39f6cae1f43c 100644 --- a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/preview/2021-01-01-preview/managedcluster.json +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/preview/2021-01-01-preview/managedcluster.json @@ -387,7 +387,7 @@ "description": "Number of unused versions per application type to keep." } }, - "description": "The policy used to clean up unused versions." + "description": "The policy used to clean up unused versions. When the policy is not specified explicitly, the default unused application versions to keep will be 3." }, "AzureActiveDirectory": { "properties": { diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ApplicationDeleteOperation_example.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ApplicationDeleteOperation_example.json new file mode 100644 index 000000000000..f81f6666f8a1 --- /dev/null +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ApplicationDeleteOperation_example.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "api-version": "2021-05-01" + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/76053752-a423-4a80-b283-1dad1ba5f314?api-version=2021-05-01" + } + }, + "204": {}, + "200": {} + } +} diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ApplicationGetOperation_example.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ApplicationGetOperation_example.json new file mode 100644 index 000000000000..e2dd60f696d0 --- /dev/null +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ApplicationGetOperation_example.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "type": "Microsoft.ServiceFabric/managedClusters/applications", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedclusters/myCluster/applications/myApp", + "name": "myApp", + "tags": {}, + "properties": { + "provisioningState": "Updating", + "version": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedclusters/myCluster/applicationTypes/myAppType/versions/1.0", + "parameters": { + "param1": "value1" + }, + "upgradePolicy": { + "applicationHealthPolicy": { + "considerWarningAsError": true, + "maxPercentUnhealthyDeployedApplications": 0, + "defaultServiceTypeHealthPolicy": { + "maxPercentUnhealthyServices": 0, + "maxPercentUnhealthyPartitionsPerService": 0, + "maxPercentUnhealthyReplicasPerPartition": 0 + }, + "serviceTypeHealthPolicyMap": { + "service1": { + "maxPercentUnhealthyReplicasPerPartition": 30, + "maxPercentUnhealthyPartitionsPerService": 30, + "maxPercentUnhealthyServices": 30 + } + } + }, + "rollingUpgradeMonitoringPolicy": { + "failureAction": "Rollback", + "healthCheckRetryTimeout": "00:10:00", + "healthCheckWaitDuration": "00:02:00", + "healthCheckStableDuration": "00:05:00", + "upgradeDomainTimeout": "00:15:00", + "upgradeTimeout": "01:00:00" + }, + "upgradeReplicaSetCheckTimeout": 3600, + "forceRestart": false, + "instanceCloseDelayDuration": 600, + "upgradeMode": "UnmonitoredAuto", + "recreateApplication": false + } + } + } + } + } +} diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ApplicationListOperation_example.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ApplicationListOperation_example.json new file mode 100644 index 000000000000..ba5ec1c56f46 --- /dev/null +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ApplicationListOperation_example.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "type": "Microsoft.ServiceFabric/managedClusters/applications", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedclusters/myCluster/applications/myApp", + "name": "myApp", + "properties": { + "provisioningState": "Updating", + "version": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedclusters/myCluster/applicationTypes/myAppType/versions/1.0" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ApplicationPatchOperation_example.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ApplicationPatchOperation_example.json new file mode 100644 index 000000000000..c46b6654cb0b --- /dev/null +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ApplicationPatchOperation_example.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "api-version": "2021-05-01", + "parameters": { + "tags": { + "a": "b" + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "type": "Microsoft.ServiceFabric/managedClusters/applications", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedclusters/myCluster/applications/myApp", + "name": "myApp", + "tags": { + "a": "b" + }, + "properties": { + "provisioningState": "Succeeded", + "version": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedclusters/myCluster/applicationTypes/myAppType/versions/1.0", + "parameters": { + "param1": "value1" + }, + "upgradePolicy": { + "applicationHealthPolicy": { + "considerWarningAsError": true, + "maxPercentUnhealthyDeployedApplications": 0, + "defaultServiceTypeHealthPolicy": { + "maxPercentUnhealthyServices": 0, + "maxPercentUnhealthyPartitionsPerService": 0, + "maxPercentUnhealthyReplicasPerPartition": 0 + }, + "serviceTypeHealthPolicyMap": { + "service1": { + "maxPercentUnhealthyReplicasPerPartition": 30, + "maxPercentUnhealthyPartitionsPerService": 30, + "maxPercentUnhealthyServices": 30 + } + } + }, + "rollingUpgradeMonitoringPolicy": { + "failureAction": "Rollback", + "healthCheckRetryTimeout": "00:10:00", + "healthCheckWaitDuration": "00:02:00", + "healthCheckStableDuration": "00:05:00", + "upgradeDomainTimeout": "00:15:00", + "upgradeTimeout": "01:00:00" + }, + "upgradeReplicaSetCheckTimeout": 3600, + "forceRestart": false, + "instanceCloseDelayDuration": 600, + "upgradeMode": "UnmonitoredAuto", + "recreateApplication": false + } + } + } + } + } +} diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ApplicationPutOperation_example_max.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ApplicationPutOperation_example_max.json new file mode 100644 index 000000000000..1680c6d43ce1 --- /dev/null +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ApplicationPutOperation_example_max.json @@ -0,0 +1,156 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "api-version": "2021-05-01", + "parameters": { + "location": "eastus", + "tags": { + "a": "b" + }, + "properties": { + "version": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedclusters/myCluster/applicationTypes/myAppType/versions/1.0", + "parameters": { + "param1": "value1" + }, + "upgradePolicy": { + "applicationHealthPolicy": { + "considerWarningAsError": true, + "maxPercentUnhealthyDeployedApplications": 0, + "defaultServiceTypeHealthPolicy": { + "maxPercentUnhealthyServices": 0, + "maxPercentUnhealthyPartitionsPerService": 0, + "maxPercentUnhealthyReplicasPerPartition": 0 + }, + "serviceTypeHealthPolicyMap": { + "myService": { + "maxPercentUnhealthyReplicasPerPartition": 30, + "maxPercentUnhealthyPartitionsPerService": 30, + "maxPercentUnhealthyServices": 30 + } + } + }, + "rollingUpgradeMonitoringPolicy": { + "failureAction": "Rollback", + "healthCheckRetryTimeout": "00:10:00", + "healthCheckWaitDuration": "00:02:00", + "healthCheckStableDuration": "00:05:00", + "upgradeDomainTimeout": "00:15:00", + "upgradeTimeout": "01:00:00" + }, + "upgradeReplicaSetCheckTimeout": 3600, + "forceRestart": false, + "instanceCloseDelayDuration": 600, + "upgradeMode": "UnmonitoredAuto", + "recreateApplication": false + } + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "type": "Microsoft.ServiceFabric/managedClusters/applications", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedclusters/myCluster/applications/myApp", + "name": "myApp", + "tags": { + "a": "b" + }, + "properties": { + "provisioningState": "Creating", + "version": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedclusters/myCluster/applicationTypes/myAppType/versions/1.0", + "parameters": { + "param1": "value1" + }, + "upgradePolicy": { + "applicationHealthPolicy": { + "considerWarningAsError": true, + "maxPercentUnhealthyDeployedApplications": 0, + "defaultServiceTypeHealthPolicy": { + "maxPercentUnhealthyServices": 0, + "maxPercentUnhealthyPartitionsPerService": 0, + "maxPercentUnhealthyReplicasPerPartition": 0 + }, + "serviceTypeHealthPolicyMap": { + "service1": { + "maxPercentUnhealthyReplicasPerPartition": 30, + "maxPercentUnhealthyPartitionsPerService": 30, + "maxPercentUnhealthyServices": 30 + } + } + }, + "rollingUpgradeMonitoringPolicy": { + "failureAction": "Rollback", + "healthCheckRetryTimeout": "00:10:00", + "healthCheckWaitDuration": "00:02:00", + "healthCheckStableDuration": "00:05:00", + "upgradeDomainTimeout": "00:15:00", + "upgradeTimeout": "01:00:00" + }, + "upgradeReplicaSetCheckTimeout": 3600, + "forceRestart": false, + "instanceCloseDelayDuration": 600, + "upgradeMode": "UnmonitoredAuto", + "recreateApplication": false + } + } + } + }, + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/9c2ce367-47ea-43de-b69e-c5a423da4557?api-version=2021-05-01" + }, + "body": { + "type": "Microsoft.ServiceFabric/managedClusters/applications", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedclusters/myCluster/applications/myApp", + "name": "myApp", + "tags": { + "a": "b" + }, + "properties": { + "provisioningState": "Updating", + "version": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedclusters/myCluster/applicationTypes/myAppType/versions/1.0", + "parameters": { + "param1": "value1" + }, + "upgradePolicy": { + "applicationHealthPolicy": { + "considerWarningAsError": true, + "maxPercentUnhealthyDeployedApplications": 0, + "defaultServiceTypeHealthPolicy": { + "maxPercentUnhealthyServices": 0, + "maxPercentUnhealthyPartitionsPerService": 0, + "maxPercentUnhealthyReplicasPerPartition": 0 + }, + "serviceTypeHealthPolicyMap": { + "service1": { + "maxPercentUnhealthyReplicasPerPartition": 30, + "maxPercentUnhealthyPartitionsPerService": 30, + "maxPercentUnhealthyServices": 30 + } + } + }, + "rollingUpgradeMonitoringPolicy": { + "failureAction": "Rollback", + "healthCheckRetryTimeout": "00:10:00", + "healthCheckWaitDuration": "00:02:00", + "healthCheckStableDuration": "00:05:00", + "upgradeDomainTimeout": "00:15:00", + "upgradeTimeout": "01:00:00" + }, + "upgradeReplicaSetCheckTimeout": 3600, + "forceRestart": false, + "instanceCloseDelayDuration": 600, + "upgradeMode": "UnmonitoredAuto", + "recreateApplication": false + } + } + } + } + } +} diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ApplicationPutOperation_example_min.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ApplicationPutOperation_example_min.json new file mode 100644 index 000000000000..67bc8a4a0fd0 --- /dev/null +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ApplicationPutOperation_example_min.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "api-version": "2021-05-01", + "parameters": { + "location": "eastus", + "properties": { + "version": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedclusters/myCluster/applicationTypes/myAppType/versions/1.0" + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "type": "Microsoft.ServiceFabric/managedClusters/applications", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedclusters/myCluster/applications/myApp", + "name": "myApp", + "properties": { + "provisioningState": "Updating", + "version": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedclusters/myCluster/applicationTypes/myAppType/versions/1.0", + "parameters": { + "param1": "value1" + }, + "upgradePolicy": { + "applicationHealthPolicy": { + "considerWarningAsError": true, + "maxPercentUnhealthyDeployedApplications": 0, + "defaultServiceTypeHealthPolicy": { + "maxPercentUnhealthyServices": 0, + "maxPercentUnhealthyPartitionsPerService": 0, + "maxPercentUnhealthyReplicasPerPartition": 0 + }, + "serviceTypeHealthPolicyMap": { + "service1": { + "maxPercentUnhealthyReplicasPerPartition": 30, + "maxPercentUnhealthyPartitionsPerService": 30, + "maxPercentUnhealthyServices": 30 + } + } + }, + "rollingUpgradeMonitoringPolicy": { + "failureAction": "Rollback", + "healthCheckRetryTimeout": "00:10:00", + "healthCheckWaitDuration": "00:02:00", + "healthCheckStableDuration": "00:05:00", + "upgradeDomainTimeout": "00:15:00", + "upgradeTimeout": "01:00:00" + }, + "upgradeReplicaSetCheckTimeout": 3600, + "forceRestart": false, + "instanceCloseDelayDuration": 600, + "upgradeMode": "UnmonitoredAuto", + "recreateApplication": false + } + } + } + }, + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/5dce62ce-439b-47af-81d8-99ab14708e91?api-version=2021-05-01" + }, + "body": { + "type": "Microsoft.ServiceFabric/managedClusters/applications", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedclusters/myCluster/applications/myApp", + "name": "myCluster", + "properties": { + "provisioningState": "Updating", + "version": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedclusters/myCluster/applicationTypes/myAppType/versions/1.0" + } + } + } + } +} diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ApplicationTypeNameDeleteOperation_example.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ApplicationTypeNameDeleteOperation_example.json new file mode 100644 index 000000000000..9de7abb6b554 --- /dev/null +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ApplicationTypeNameDeleteOperation_example.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationTypeName": "myAppType", + "api-version": "2021-05-01" + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/6a367b2d-9f60-4941-b886-e348ddcb4127?api-version=2021-05-01" + } + }, + "204": {}, + "200": {} + } +} diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ApplicationTypeNameGetOperation_example.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ApplicationTypeNameGetOperation_example.json new file mode 100644 index 000000000000..410027366c6a --- /dev/null +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ApplicationTypeNameGetOperation_example.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationTypeName": "myAppType", + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "type": "Microsoft.ServiceFabric/managedClusters/applicationTypes", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedclusters/myCluster/applicationTypes/myAppType", + "name": "myAppType", + "properties": { + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ApplicationTypeNameListOperation_example.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ApplicationTypeNameListOperation_example.json new file mode 100644 index 000000000000..44931fea5c88 --- /dev/null +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ApplicationTypeNameListOperation_example.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "type": "Microsoft.ServiceFabric/managedClusters/applicationTypes", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedclusters/myCluster/applicationTypes/myAppType", + "name": "myAppType", + "properties": { + "provisioningState": "Succeeded" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ApplicationTypeNamePatchOperation_example.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ApplicationTypeNamePatchOperation_example.json new file mode 100644 index 000000000000..816da7676330 --- /dev/null +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ApplicationTypeNamePatchOperation_example.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationTypeName": "myAppType", + "api-version": "2021-05-01", + "parameters": { + "tags": { + "a": "b" + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "type": "Microsoft.ServiceFabric/managedClusters/applicationTypes", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedclusters/myCluster/applicationTypes/myAppType", + "name": "myAppType", + "tags": { + "a": "b" + }, + "properties": { + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ApplicationTypeNamePutOperation_example.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ApplicationTypeNamePutOperation_example.json new file mode 100644 index 000000000000..891c6adba88b --- /dev/null +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ApplicationTypeNamePutOperation_example.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationTypeName": "myAppType", + "api-version": "2021-05-01", + "parameters": { + "location": "eastus" + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "type": "Microsoft.ServiceFabric/managedClusters/applicationTypes", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedclusters/myCluster/applicationTypes/myAppType", + "name": "myAppType", + "properties": { + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ApplicationTypeVersionDeleteOperation_example.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ApplicationTypeVersionDeleteOperation_example.json new file mode 100644 index 000000000000..d98ab214a8d8 --- /dev/null +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ApplicationTypeVersionDeleteOperation_example.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationTypeName": "myAppType", + "version": "1.0", + "api-version": "2021-05-01" + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/28e62369-ed8c-4aba-8c05-ab7d6238cc3d?api-version=2021-05-01s" + } + }, + "204": {}, + "200": {} + } +} diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ApplicationTypeVersionGetOperation_example.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ApplicationTypeVersionGetOperation_example.json new file mode 100644 index 000000000000..e802cd1ef5c7 --- /dev/null +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ApplicationTypeVersionGetOperation_example.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationTypeName": "myAppType", + "version": "1.0", + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "type": "Microsoft.ServiceFabric/managedClusters/applicationTypes/versions", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedclusters/myCluster/applicationTypes/myAppType/versions/1.0", + "name": "1.0", + "properties": { + "provisioningState": "Updating", + "appPackageUrl": "http://fakelink.test.com/MyAppType" + } + } + } + } +} diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ApplicationTypeVersionListOperation_example.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ApplicationTypeVersionListOperation_example.json new file mode 100644 index 000000000000..d38036f27726 --- /dev/null +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ApplicationTypeVersionListOperation_example.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationTypeName": "myAppType", + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "type": "Microsoft.ServiceFabric/managedClusters/applicationTypes/versions", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedclusters/myCluster/applicationTypes/myAppType/versions/1.0", + "name": "1.0", + "properties": { + "provisioningState": "Updating", + "appPackageUrl": "http://fakelink.test.com/MyAppType" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ApplicationTypeVersionPatchOperation_example.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ApplicationTypeVersionPatchOperation_example.json new file mode 100644 index 000000000000..c005281bad7e --- /dev/null +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ApplicationTypeVersionPatchOperation_example.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationTypeName": "myAppType", + "version": "1.0", + "api-version": "2021-05-01", + "parameters": { + "tags": { + "a": "b" + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "type": "Microsoft.ServiceFabric/managedClusters/applicationTypes/versions", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedclusters/myCluster/applicationTypes/myAppType/versions/1.0", + "name": "1.0", + "tags": { + "a": "b" + }, + "properties": { + "provisioningState": "Succeeded", + "appPackageUrl": "http://fakelink.test.com/MyAppType" + } + } + } + } +} diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ApplicationTypeVersionPutOperation_example.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ApplicationTypeVersionPutOperation_example.json new file mode 100644 index 000000000000..0563c46e876f --- /dev/null +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ApplicationTypeVersionPutOperation_example.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationTypeName": "myAppType", + "version": "1.0", + "api-version": "2021-05-01", + "parameters": { + "location": "eastus", + "properties": { + "appPackageUrl": "http://fakelink.test.com/MyAppType" + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "type": "Microsoft.ServiceFabric/managedClusters/applicationTypes/versions", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedclusters/myCluster/applicationTypes/myAppType/versions/1.0", + "name": "1.0", + "properties": { + "provisioningState": "Creating", + "appPackageUrl": "http://fakelink.test.com/MyAppType" + } + } + }, + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/e2413c7e-d51b-40ac-8155-bc85bf8ae856?api-version=2021-05-01" + }, + "body": { + "type": "Microsoft.ServiceFabric/managedClusters/applicationTypes/versions", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedclusters/myCluster/applicationTypes/myAppType/versions/1.0", + "name": "1.0", + "properties": { + "provisioningState": "Updating", + "appPackageUrl": "http://fakelink.test.com/MyAppType" + } + } + } + } +} diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/DeleteNodes_example.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/DeleteNodes_example.json new file mode 100644 index 000000000000..667258a5c2f8 --- /dev/null +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/DeleteNodes_example.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "nodeTypeName": "BE", + "api-version": "2021-05-01", + "parameters": { + "nodes": [ + "BE_0", + "BE_3" + ] + } + }, + "responses": { + "202": { + "headers": { + "Location": "http://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/managedClusterOperationResults/1ca6e48d-70ca-4e43-b652-3b0522f64d67?api-version=2021-05-01", + "Azure-AsyncOperation": "http://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/managedClusterOperationStatus/1ca6e48d-70ca-4e43-b652-3b0522f64d67?api-version=2021-05-01" + } + }, + "200": {} + } +} diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ManagedClusterDeleteOperation_example.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ManagedClusterDeleteOperation_example.json new file mode 100644 index 000000000000..8d4e1f5bc0d8 --- /dev/null +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ManagedClusterDeleteOperation_example.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "api-version": "2021-05-01" + }, + "responses": { + "202": { + "headers": { + "Location": "http://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/managedClusterOperationResults/1ca6e48d-70ca-4e43-b652-3b0522f64d67?api-version=2021-05-01" + } + }, + "204": {}, + "200": {} + } +} diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ManagedClusterGetOperation_example.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ManagedClusterGetOperation_example.json new file mode 100644 index 000000000000..0c41e653c64a --- /dev/null +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ManagedClusterGetOperation_example.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "type": "Microsoft.ServiceFabric/managedClusters", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedClusters/myCluster", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502169240745\"", + "properties": { + "provisioningState": "Succeeded", + "clusterId": "92584666-9889-4ae8-8d02-91902923d37f", + "clusterCodeVersion": "7.1.168.9494", + "clusterUpgradeMode": "Automatic", + "clusterUpgradeCadence": "Wave0", + "clusterState": "WaitingForNodes", + "dnsName": "myCluster", + "fqdn": "MyCluster.eastus.cloudapp.azure.com", + "clusterCertificateThumbprints": [ + "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + ], + "clientConnectionPort": 19000, + "httpGatewayConnectionPort": 19080, + "loadBalancingRules": [ + { + "frontendPort": 80, + "backendPort": 80, + "probePort": 80, + "protocol": "http", + "probeProtocol": "http" + }, + { + "frontendPort": 443, + "backendPort": 443, + "probePort": 443, + "protocol": "http", + "probeProtocol": "http" + }, + { + "frontendPort": 10000, + "backendPort": 10000, + "probePort": 10000, + "protocol": "tcp", + "probeProtocol": "tcp" + } + ], + "adminUserName": "vmadmin", + "fabricSettings": [ + { + "name": "ManagedIdentityTokenService", + "parameters": [ + { + "name": "IsEnabled", + "value": "true" + } + ] + } + ] + } + } + } + } +} diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ManagedClusterListByResourceGroupOperation_example.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ManagedClusterListByResourceGroupOperation_example.json new file mode 100644 index 000000000000..de7c31f8ac83 --- /dev/null +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ManagedClusterListByResourceGroupOperation_example.json @@ -0,0 +1,89 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "type": "Microsoft.ServiceFabric/managedClusters", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedClusters/myCluster", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502169240745\"", + "properties": { + "provisioningState": "Succeeded", + "clusterId": "92584666-9889-4ae8-8d02-91902923d37f", + "clusterCodeVersion": "7.1.168.9494", + "clusterUpgradeMode": "Automatic", + "clusterUpgradeCadence": "Wave0", + "clusterState": "WaitingForNodes", + "dnsName": "myCluster", + "fqdn": "MyCluster.eastus.cloudapp.azure.com", + "clusterCertificateThumbprints": [ + "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + ], + "clientConnectionPort": 19000, + "httpGatewayConnectionPort": 19080, + "loadBalancingRules": [], + "adminUserName": "vmadmin", + "fabricSettings": [ + { + "name": "ManagedIdentityTokenService", + "parameters": [ + { + "name": "IsEnabled", + "value": "true" + } + ] + } + ] + } + }, + { + "type": "Microsoft.ServiceFabric/managedClusters", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedClusters/myCluster2", + "name": "myCluster2", + "tags": {}, + "etag": "W/\"636462502164040075\"", + "properties": { + "provisioningState": "Succeeded", + "clusterId": "2747e469-b24e-4039-8a0a-46151419523f", + "clusterCodeVersion": "7.1.168.9494", + "clusterUpgradeMode": "Automatic", + "clusterUpgradeCadence": "Wave0", + "clusterState": "WaitingForNodes", + "dnsName": "myCluster2", + "fqdn": "MyCluster.eastus.cloudapp.azure.com", + "clusterCertificateThumbprints": [ + "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + ], + "clientConnectionPort": 19000, + "httpGatewayConnectionPort": 19080, + "loadBalancingRules": [], + "adminUserName": "vmadmin", + "fabricSettings": [ + { + "name": "ManagedIdentityTokenService", + "parameters": [ + { + "name": "IsEnabled", + "value": "true" + } + ] + } + ] + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ManagedClusterListBySubscriptionOperation_example.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ManagedClusterListBySubscriptionOperation_example.json new file mode 100644 index 000000000000..b4323d2db0bc --- /dev/null +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ManagedClusterListBySubscriptionOperation_example.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "type": "Microsoft.ServiceFabric/managedClusters", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedClusters/myCluster", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502169240745\"", + "properties": { + "provisioningState": "Succeeded", + "clusterId": "92584666-9889-4ae8-8d02-91902923d37f", + "clusterCodeVersion": "7.1.168.9494", + "clusterUpgradeMode": "Automatic", + "clusterUpgradeCadence": "Wave0", + "clusterState": "WaitingForNodes", + "dnsName": "myCluster", + "fqdn": "MyCluster.eastus.cloudapp.azure.com", + "clusterCertificateThumbprints": [ + "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + ], + "clientConnectionPort": 19000, + "httpGatewayConnectionPort": 19080, + "loadBalancingRules": [], + "adminUserName": "vmadmin", + "fabricSettings": [ + { + "name": "ManagedIdentityTokenService", + "parameters": [ + { + "name": "IsEnabled", + "value": "true" + } + ] + } + ] + } + }, + { + "type": "Microsoft.ServiceFabric/managedClusters", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedClusters/myCluster2", + "name": "myCluster2", + "tags": {}, + "etag": "W/\"636462502164040075\"", + "properties": { + "provisioningState": "Succeeded", + "clusterId": "2747e469-b24e-4039-8a0a-46151419523f", + "clusterCodeVersion": "7.1.168.9494", + "clusterUpgradeMode": "Automatic", + "clusterUpgradeCadence": "Wave0", + "clusterState": "WaitingForNodes", + "dnsName": "myCluster2", + "fqdn": "MyCluster.eastus.cloudapp.azure.com", + "clusterCertificateThumbprints": [ + "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + ], + "clientConnectionPort": 19000, + "httpGatewayConnectionPort": 19080, + "loadBalancingRules": [], + "adminUserName": "vmadmin", + "fabricSettings": [ + { + "name": "ManagedIdentityTokenService", + "parameters": [ + { + "name": "IsEnabled", + "value": "true" + } + ] + } + ] + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ManagedClusterPatchOperation_example.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ManagedClusterPatchOperation_example.json new file mode 100644 index 000000000000..6f30c1d621ef --- /dev/null +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ManagedClusterPatchOperation_example.json @@ -0,0 +1,106 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "api-version": "2021-05-01", + "parameters": { + "tags": { + "a": "b" + } + } + }, + "responses": { + "200": { + "body": { + "type": "Microsoft.ServiceFabric/managedClusters", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedClusters/myCluster", + "name": "myCluster", + "tags": { + "a": "b" + }, + "etag": "W/\"636462502169240745\"", + "properties": { + "provisioningState": "Succeeded", + "clusterId": "92584666-9889-4ae8-8d02-91902923d37f", + "clusterCodeVersion": "7.1.168.9494", + "clusterUpgradeMode": "Automatic", + "clusterUpgradeCadence": "Wave0", + "clusterState": "WaitingForNodes", + "dnsName": "myCluster", + "fqdn": "MyCluster.eastus.cloudapp.azure.com", + "clusterCertificateThumbprints": [ + "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + ], + "clientConnectionPort": 19001, + "httpGatewayConnectionPort": 19081, + "loadBalancingRules": [ + { + "frontendPort": 80, + "backendPort": 80, + "probePort": 80, + "protocol": "http", + "probeProtocol": "http" + }, + { + "frontendPort": 443, + "backendPort": 443, + "probePort": 443, + "protocol": "http", + "probeProtocol": "http" + }, + { + "frontendPort": 10000, + "backendPort": 10000, + "probePort": 10000, + "protocol": "tcp", + "probeProtocol": "http" + } + ], + "allowRdpAccess": true, + "networkSecurityRules": [ + { + "name": "TestName", + "protocol": "tcp", + "access": "allow", + "priority": 1010, + "direction": "inbound", + "sourcePortRanges": [ + "*" + ], + "destinationPortRanges": [ + "*" + ], + "sourceAddressPrefixes": [ + "*" + ], + "destinationAddressPrefixes": [ + "*" + ], + "description": "Test description" + } + ], + "adminUserName": "vmadmin", + "fabricSettings": [ + { + "name": "ManagedIdentityTokenService", + "parameters": [ + { + "name": "IsEnabled", + "value": "false" + } + ] + } + ], + "addonFeatures": [ + "DnsService", + "BackupRestoreService", + "ResourceMonitorService" + ], + "enableAutoOSUpgrade": true + } + } + } + } +} diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ManagedClusterPutOperation_example_max.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ManagedClusterPutOperation_example_max.json new file mode 100644 index 000000000000..44ff42069d4f --- /dev/null +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ManagedClusterPutOperation_example_max.json @@ -0,0 +1,291 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "api-version": "2021-05-01", + "parameters": { + "location": "eastus", + "tags": {}, + "sku": { + "name": "Basic" + }, + "properties": { + "clusterUpgradeMode": "Manual", + "clusterCodeVersion": "7.1.168.9494", + "dnsName": "myCluster", + "adminUserName": "vmadmin", + "adminPassword": "{vm-password}", + "clientConnectionPort": 19000, + "httpGatewayConnectionPort": 19080, + "loadBalancingRules": [ + { + "frontendPort": 80, + "backendPort": 80, + "probePort": 80, + "protocol": "http", + "probeProtocol": "http" + }, + { + "frontendPort": 443, + "backendPort": 443, + "probePort": 443, + "protocol": "http", + "probeProtocol": "http" + }, + { + "frontendPort": 10000, + "backendPort": 10000, + "probePort": 10000, + "protocol": "tcp", + "probeProtocol": "http" + } + ], + "allowRdpAccess": true, + "networkSecurityRules": [ + { + "name": "TestName", + "protocol": "tcp", + "access": "allow", + "priority": 1010, + "direction": "inbound", + "sourcePortRanges": [ + "*" + ], + "destinationPortRanges": [ + "*" + ], + "sourceAddressPrefixes": [ + "*" + ], + "destinationAddressPrefixes": [ + "*" + ], + "description": "Test description" + } + ], + "fabricSettings": [ + { + "name": "ManagedIdentityTokenService", + "parameters": [ + { + "name": "IsEnabled", + "value": "true" + } + ] + } + ], + "addonFeatures": [ + "DnsService", + "BackupRestoreService", + "ResourceMonitorService" + ], + "enableAutoOSUpgrade": true, + "applicationTypeVersionsCleanupPolicy": { + "maxUnusedVersionsToKeep": 3 + }, + "zonalResiliency": true + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "http://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/managedClusterOperationResults/1ca6e48d-70ca-4e43-b652-3b0522f64d67?api-version=2021-05-01", + "Azure-AsyncOperation": "http://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/managedClusterOperationStatus/1ca6e48d-70ca-4e43-b652-3b0522f64d67?api-version=2021-05-01" + }, + "body": { + "type": "Microsoft.ServiceFabric/managedClusters", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedClusters/myCluster", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502169240745\"", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Updating", + "clusterId": "92584666-9889-4ae8-8d02-91902923d37f", + "clusterUpgradeMode": "Manual", + "clusterCodeVersion": "7.1.168.9494", + "clusterState": "WaitingForNodes", + "dnsName": "myCluster", + "fqdn": "MyCluster.eastus.cloudapp.azure.com", + "clusterCertificateThumbprints": [ + "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + ], + "clientConnectionPort": 19000, + "httpGatewayConnectionPort": 19080, + "loadBalancingRules": [ + { + "frontendPort": 80, + "backendPort": 80, + "probePort": 80, + "protocol": "http", + "probeProtocol": "http" + }, + { + "frontendPort": 443, + "backendPort": 443, + "probePort": 443, + "protocol": "http", + "probeProtocol": "http" + }, + { + "frontendPort": 10000, + "backendPort": 10000, + "probePort": 10000, + "protocol": "tcp", + "probeProtocol": "tcp" + } + ], + "allowRdpAccess": true, + "networkSecurityRules": [ + { + "name": "TestName", + "protocol": "tcp", + "access": "allow", + "priority": 1010, + "direction": "inbound", + "sourcePortRanges": [ + "*" + ], + "destinationPortRanges": [ + "*" + ], + "sourceAddressPrefixes": [ + "*" + ], + "destinationAddressPrefixes": [ + "*" + ], + "description": "Test description" + } + ], + "adminUserName": "vmadmin", + "fabricSettings": [ + { + "name": "ManagedIdentityTokenService", + "parameters": [ + { + "name": "IsEnabled", + "value": "true" + } + ] + } + ], + "addonFeatures": [ + "DnsService", + "BackupRestoreService", + "ResourceMonitorService" + ], + "enableAutoOSUpgrade": true, + "applicationTypeVersionsCleanupPolicy": { + "maxUnusedVersionsToKeep": 3 + }, + "zonalResiliency": true + } + } + }, + "200": { + "headers": { + "Location": "http://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/managedClusterOperationResults/1ca6e48d-70ca-4e43-b652-3b0522f64d67?api-version=2021-05-01", + "Azure-AsyncOperation": "http://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/managedClusterOperationStatus/1ca6e48d-70ca-4e43-b652-3b0522f64d67?api-version=2021-05-01" + }, + "body": { + "type": "Microsoft.ServiceFabric/managedClusters", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedClusters/myCluster", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502169240745\"", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Creating", + "clusterId": "92584666-9889-4ae8-8d02-91902923d37f", + "clusterUpgradeMode": "Manual", + "clusterCodeVersion": "7.1.168.9494", + "clusterState": "WaitingForNodes", + "dnsName": "myCluster", + "fqdn": "MyCluster.eastus.cloudapp.azure.com", + "clusterCertificateThumbprints": [ + "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + ], + "clientConnectionPort": 19000, + "httpGatewayConnectionPort": 19080, + "loadBalancingRules": [ + { + "frontendPort": 80, + "backendPort": 80, + "probePort": 80, + "protocol": "http", + "probeProtocol": "http" + }, + { + "frontendPort": 443, + "backendPort": 443, + "probePort": 443, + "protocol": "http", + "probeProtocol": "http" + }, + { + "frontendPort": 10000, + "backendPort": 10000, + "probePort": 10000, + "protocol": "tcp", + "probeProtocol": "tcp" + } + ], + "allowRdpAccess": true, + "networkSecurityRules": [ + { + "name": "TestName", + "protocol": "tcp", + "access": "allow", + "priority": 1010, + "direction": "inbound", + "sourcePortRanges": [ + "*" + ], + "destinationPortRanges": [ + "*" + ], + "sourceAddressPrefixes": [ + "*" + ], + "destinationAddressPrefixes": [ + "*" + ], + "description": "Test description" + } + ], + "adminUserName": "vmadmin", + "fabricSettings": [ + { + "name": "ManagedIdentityTokenService", + "parameters": [ + { + "name": "IsEnabled", + "value": "true" + } + ] + } + ], + "addonFeatures": [ + "DnsService", + "BackupRestoreService", + "ResourceMonitorService" + ], + "enableAutoOSUpgrade": true, + "applicationTypeVersionsCleanupPolicy": { + "maxUnusedVersionsToKeep": 3 + }, + "zonalResiliency": true + } + } + } + } +} diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ManagedClusterPutOperation_example_min.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ManagedClusterPutOperation_example_min.json new file mode 100644 index 000000000000..93585f6ecaa5 --- /dev/null +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ManagedClusterPutOperation_example_min.json @@ -0,0 +1,119 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "api-version": "2021-05-01", + "parameters": { + "location": "eastus", + "properties": { + "clusterUpgradeMode": "Automatic", + "clusterUpgradeCadence": "Wave1", + "dnsName": "myCluster", + "adminUserName": "vmadmin", + "adminPassword": "{vm-password}", + "fabricSettings": [ + { + "name": "ManagedIdentityTokenService", + "parameters": [ + { + "name": "IsEnabled", + "value": "true" + } + ] + } + ] + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "http://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/managedClusterOperationResults/1ca6e48d-70ca-4e43-b652-3b0522f64d67?api-version=2021-05-01", + "Azure-AsyncOperation": "http://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/managedClusterOperationStatus/1ca6e48d-70ca-4e43-b652-3b0522f64d67?api-version=2021-05-01" + }, + "body": { + "type": "Microsoft.ServiceFabric/managedClusters", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedClusters/myCluster", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502169240745\"", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Updating", + "clusterId": "92584666-9889-4ae8-8d02-91902923d37f", + "clusterUpgradeMode": "Automatic", + "clusterUpgradeCadence": "Wave1", + "clusterState": "WaitingForNodes", + "dnsName": "myCluster", + "fqdn": "MyCluster.eastus.cloudapp.azure.com", + "clusterCertificateThumbprints": [ + "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + ], + "clientConnectionPort": 19000, + "httpGatewayConnectionPort": 19080, + "loadBalancingRules": [], + "adminUserName": "vmadmin", + "fabricSettings": [ + { + "name": "ManagedIdentityTokenService", + "parameters": [ + { + "name": "IsEnabled", + "value": "true" + } + ] + } + ] + } + } + }, + "200": { + "headers": { + "Location": "http://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/managedClusterOperationResults/1ca6e48d-70ca-4e43-b652-3b0522f64d67?api-version=2021-05-01", + "Azure-AsyncOperation": "http://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/managedClusterOperationStatus/1ca6e48d-70ca-4e43-b652-3b0522f64d67?api-version=2021-05-01" + }, + "body": { + "type": "Microsoft.ServiceFabric/managedClusters", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedClusters/myCluster", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502169240745\"", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Creating", + "clusterId": "92584666-9889-4ae8-8d02-91902923d37f", + "clusterUpgradeMode": "Automatic", + "clusterUpgradeCadence": "Wave1", + "clusterState": "WaitingForNodes", + "dnsName": "myCluster", + "fqdn": "MyCluster.eastus.cloudapp.azure.com", + "clusterCertificateThumbprints": [ + "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + ], + "clientConnectionPort": 19000, + "httpGatewayConnectionPort": 19080, + "loadBalancingRules": [], + "adminUserName": "vmadmin", + "fabricSettings": [ + { + "name": "ManagedIdentityTokenService", + "parameters": [ + { + "name": "IsEnabled", + "value": "true" + } + ] + } + ] + } + } + } + } +} diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ManagedClusterVersionGetByEnvironment_example.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ManagedClusterVersionGetByEnvironment_example.json new file mode 100644 index 000000000000..13c9b22baa0f --- /dev/null +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ManagedClusterVersionGetByEnvironment_example.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "eastus", + "environment": "Windows", + "clusterVersion": "7.2.477.9590", + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/environments/Windows/managedClusterVersions/7.2.477.9590", + "name": "7.2.477.9590", + "type": "Microsoft.ServiceFabric/locations/environments/managedClusterVersions", + "properties": { + "supportExpiryUtc": "2021-11-30T00:00:00", + "osType": "Windows", + "clusterCodeVersion": "7.2.477.9590" + } + } + } + } +} diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ManagedClusterVersionGet_example.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ManagedClusterVersionGet_example.json new file mode 100644 index 000000000000..ff7d16d5a38f --- /dev/null +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ManagedClusterVersionGet_example.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "eastus", + "clusterVersion": "7.2.477.9590", + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/environments/Windows/managedClusterVersions/7.2.477.9590", + "name": "7.2.477.9590", + "type": "Microsoft.ServiceFabric/locations/environments/managedClusterVersions", + "properties": { + "supportExpiryUtc": "2021-11-30T00:00:00", + "osType": "Windows", + "clusterCodeVersion": "7.2.477.9590" + } + } + } + } +} diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ManagedClusterVersionListByEnvironment.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ManagedClusterVersionListByEnvironment.json new file mode 100644 index 000000000000..6fcc8310cd52 --- /dev/null +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ManagedClusterVersionListByEnvironment.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "eastus", + "environment": "Windows", + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "headers": {}, + "body": [ + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/environments/Windows/managedClusterVersions/7.2.457.9590", + "name": "7.2.457.9590", + "type": "Microsoft.ServiceFabric/locations/environments/managedClusterVersions", + "properties": { + "supportExpiryUtc": "2021-11-30T00:00:00", + "osType": "Windows", + "clusterCodeVersion": "7.2.457.9590" + } + }, + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/environments/Windows/managedClusterVersions/7.2.477.9590", + "name": "7.2.477.9590", + "type": "Microsoft.ServiceFabric/locations/environments/managedClusterVersions", + "properties": { + "supportExpiryUtc": "2021-11-30T00:00:00", + "osType": "Windows", + "clusterCodeVersion": "7.2.477.9590" + } + } + ] + } + } +} diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ManagedClusterVersionList_example.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ManagedClusterVersionList_example.json new file mode 100644 index 000000000000..b932c30c2cce --- /dev/null +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ManagedClusterVersionList_example.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "eastus", + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "headers": {}, + "body": [ + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/environments/Windows/managedClusterVersions/7.2.457.9590", + "name": "7.2.457.9590", + "type": "Microsoft.ServiceFabric/locations/environments/managedClusterVersions", + "properties": { + "supportExpiryUtc": "2021-11-30T00:00:00", + "osType": "Windows", + "clusterCodeVersion": "7.2.457.9590" + } + }, + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/environments/Windows/managedClusterVersions/7.2.477.9590", + "name": "7.2.477.9590", + "type": "Microsoft.ServiceFabric/locations/environments/managedClusterVersions", + "properties": { + "supportExpiryUtc": "2021-11-30T00:00:00", + "osType": "Windows", + "clusterCodeVersion": "7.2.477.9590" + } + } + ] + } + } +} diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/NodeTypeDeleteOperation_example.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/NodeTypeDeleteOperation_example.json new file mode 100644 index 000000000000..573615021cf3 --- /dev/null +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/NodeTypeDeleteOperation_example.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "nodeTypeName": "BE", + "api-version": "2021-05-01" + }, + "responses": { + "202": { + "headers": { + "Location": "http://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/managedClusterOperationResults/1ca6e48d-70ca-4e43-b652-3b0522f64d67?api-version=2021-05-01" + } + }, + "204": {}, + "200": {} + } +} diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/NodeTypeGetOperation_example.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/NodeTypeGetOperation_example.json new file mode 100644 index 000000000000..ba637874600b --- /dev/null +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/NodeTypeGetOperation_example.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "nodeTypeName": "FE", + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "type": "Microsoft.ServiceFabric/managedClusters/nodeTypes", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedClusters/myCluster/nodeTypes/FE", + "name": "FE", + "tags": {}, + "properties": { + "isPrimary": true, + "dataDiskSizeGB": 100, + "dataDiskType": "StandardSSD_LRS", + "placementProperties": {}, + "capacities": {}, + "vmSize": "Standard_D2", + "vmImagePublisher": "MicrosoftWindowsServer", + "vmImageOffer": "WindowsServer", + "vmImageSku": "2016-Datacenter", + "vmImageVersion": "latest", + "vmInstanceCount": 5, + "isStateless": false, + "vmSecrets": [ + { + "sourceVault": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resRg/providers/Microsoft.KeyVault/vaults/myVault" + }, + "vaultCertificates": [ + { + "certificateStore": "My", + "certificateUrl": "https://myVault.vault.azure.net:443/secrets/myCert/ef1a31d39e1f46bca33def54b6cda54c" + } + ] + } + ] + } + } + } + } +} diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/NodeTypeListOperation_example.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/NodeTypeListOperation_example.json new file mode 100644 index 000000000000..11c83033bb9e --- /dev/null +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/NodeTypeListOperation_example.json @@ -0,0 +1,83 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "type": "Microsoft.ServiceFabric/managedClusters/nodeTypes", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedClusters/myCluster/nodeTypes/FE", + "name": "FE", + "tags": {}, + "properties": { + "isPrimary": true, + "dataDiskSizeGB": 100, + "dataDiskType": "StandardSSD_LRS", + "placementProperties": {}, + "capacities": {}, + "vmSize": "Standard_D2", + "vmImagePublisher": "MicrosoftWindowsServer", + "vmImageOffer": "WindowsServer", + "vmImageSku": "2016-Datacenter", + "vmImageVersion": "latest", + "vmInstanceCount": 5, + "isStateless": false + } + }, + { + "type": "Microsoft.ServiceFabric/managedClusters/nodeTypes", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedClusters/myCluster/nodeTypes/BE", + "name": "BE", + "tags": {}, + "properties": { + "isPrimary": false, + "dataDiskSizeGB": 200, + "dataDiskType": "Premium_LRS", + "placementProperties": {}, + "capacities": {}, + "vmSize": "Standard_DS3", + "vmImagePublisher": "MicrosoftWindowsServer", + "vmImageOffer": "WindowsServer", + "vmImageSku": "2016-Datacenter-Server-Core", + "vmImageVersion": "latest", + "vmInstanceCount": 10, + "isStateless": false, + "vmSecrets": [ + { + "sourceVault": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resRg/providers/Microsoft.KeyVault/vaults/myVault" + }, + "vaultCertificates": [ + { + "certificateStore": "My", + "certificateUrl": "https://myVault.vault.azure.net:443/secrets/myCert/ef1a31d39e1f46bca33def54b6cda54c" + } + ] + } + ], + "vmExtensions": [ + { + "name": "Microsoft.Azure.Geneva.GenevaMonitoring", + "properties": { + "autoUpgradeMinorVersion": true, + "publisher": "Microsoft.Azure.Geneva", + "type": "GenevaMonitoring", + "typeHandlerVersion": "2.0", + "settings": {} + } + } + ] + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/NodeTypePatchOperation_example.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/NodeTypePatchOperation_example.json new file mode 100644 index 000000000000..adf98b8d30e1 --- /dev/null +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/NodeTypePatchOperation_example.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "nodeTypeName": "BE", + "api-version": "2021-05-01", + "parameters": { + "tags": { + "a": "b" + } + } + }, + "responses": { + "200": { + "body": { + "type": "Microsoft.ServiceFabric/managedClusters/nodeTypes", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedClusters/myCluster/nodeTypes/BE", + "name": "BE", + "tags": { + "a": "b" + }, + "properties": { + "provisioningState": "Succeeded", + "isPrimary": false, + "dataDiskSizeGB": 200, + "dataDiskType": "StandardSSD_LRS", + "placementProperties": { + "HasSSD": "true", + "NodeColor": "green", + "SomeProperty": "5" + }, + "capacities": { + "ClientConnections": "65536" + }, + "vmSize": "Standard_D3", + "vmImagePublisher": "MicrosoftWindowsServer", + "vmImageOffer": "WindowsServer", + "vmImageSku": "2016-Datacenter-Server-Core", + "vmImageVersion": "latest", + "vmInstanceCount": 10, + "isStateless": false, + "vmSecrets": [ + { + "sourceVault": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resRg/providers/Microsoft.KeyVault/vaults/myVault" + }, + "vaultCertificates": [ + { + "certificateStore": "My", + "certificateUrl": "https://myVault.vault.azure.net:443/secrets/myCert/ef1a31d39e1f46bca33def54b6cda54c" + } + ] + } + ], + "vmExtensions": [ + { + "name": "Microsoft.Azure.Geneva.GenevaMonitoring", + "properties": { + "autoUpgradeMinorVersion": true, + "publisher": "Microsoft.Azure.Geneva", + "type": "GenevaMonitoring", + "typeHandlerVersion": "2.0", + "settings": {} + } + } + ], + "vmManagedIdentity": { + "userAssignedIdentities": [ + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resRg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myIdentity" + ] + } + } + } + } + } +} diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/NodeTypePutOperation_example_max.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/NodeTypePutOperation_example_max.json new file mode 100644 index 000000000000..86d1e467e84e --- /dev/null +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/NodeTypePutOperation_example_max.json @@ -0,0 +1,191 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "nodeTypeName": "BE", + "api-version": "2021-05-01", + "parameters": { + "properties": { + "isPrimary": false, + "dataDiskSizeGB": 200, + "dataDiskType": "Premium_LRS", + "placementProperties": { + "HasSSD": "true", + "NodeColor": "green", + "SomeProperty": "5" + }, + "capacities": { + "ClientConnections": "65536" + }, + "vmSize": "Standard_DS3", + "vmImagePublisher": "MicrosoftWindowsServer", + "vmImageOffer": "WindowsServer", + "vmImageSku": "2016-Datacenter-Server-Core", + "vmImageVersion": "latest", + "vmInstanceCount": 10, + "isStateless": true, + "multiplePlacementGroups": true, + "vmSecrets": [ + { + "sourceVault": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resRg/providers/Microsoft.KeyVault/vaults/myVault" + }, + "vaultCertificates": [ + { + "certificateStore": "My", + "certificateUrl": "https://myVault.vault.azure.net:443/secrets/myCert/ef1a31d39e1f46bca33def54b6cda54c" + } + ] + } + ], + "vmExtensions": [ + { + "name": "Microsoft.Azure.Geneva.GenevaMonitoring", + "properties": { + "autoUpgradeMinorVersion": true, + "publisher": "Microsoft.Azure.Geneva", + "type": "GenevaMonitoring", + "typeHandlerVersion": "2.0", + "settings": {} + } + } + ], + "vmManagedIdentity": { + "userAssignedIdentities": [ + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resRg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myIdentity", + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resRg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myIdentity2" + ] + } + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "http://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/managedClusterOperationResults/1ca6e48d-70ca-4e43-b652-3b0522f64d67?api-version=2021-05-01", + "Azure-AsyncOperation": "http://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/managedClusterOperationStatus/1ca6e48d-70ca-4e43-b652-3b0522f64d67?api-version=2021-05-01" + }, + "body": { + "type": "Microsoft.ServiceFabric/managedClusters/nodeTypes", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedClusters/myCluster/nodeTypes/BE", + "name": "BE", + "tags": {}, + "properties": { + "provisioningState": "Updating", + "isPrimary": false, + "dataDiskSizeGB": 200, + "dataDiskType": "Premium_LRS", + "placementProperties": { + "HasSSD": "true", + "NodeColor": "green", + "SomeProperty": "5" + }, + "capacities": { + "ClientConnections": "65536" + }, + "vmSize": "Standard_DS3", + "vmImagePublisher": "MicrosoftWindowsServer", + "vmImageOffer": "WindowsServer", + "vmImageSku": "2016-Datacenter-Server-Core", + "vmImageVersion": "latest", + "vmInstanceCount": 10, + "isStateless": true, + "multiplePlacementGroups": true, + "vmSecrets": [ + { + "sourceVault": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resRg/providers/Microsoft.KeyVault/vaults/myVault" + }, + "vaultCertificates": [ + { + "certificateStore": "My", + "certificateUrl": "https://myVault.vault.azure.net:443/secrets/myCert/ef1a31d39e1f46bca33def54b6cda54c" + } + ] + } + ], + "vmExtensions": [ + { + "name": "Microsoft.Azure.Geneva.GenevaMonitoring", + "properties": { + "autoUpgradeMinorVersion": true, + "forceUpdateTag": "v.1.0", + "publisher": "Microsoft.Azure.Geneva", + "type": "GenevaMonitoring", + "typeHandlerVersion": "2.0", + "settings": {} + } + } + ] + } + } + }, + "200": { + "headers": { + "Location": "http://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/managedClusterOperationResults/1ca6e48d-70ca-4e43-b652-3b0522f64d67?api-version=2021-05-01", + "Azure-AsyncOperation": "http://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/managedClusterOperationStatus/1ca6e48d-70ca-4e43-b652-3b0522f64d67?api-version=2021-05-01" + }, + "body": { + "type": "Microsoft.ServiceFabric/managedClusters/nodeTypes", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedClusters/myCluster/nodeTypes/BE", + "name": "BE", + "tags": {}, + "properties": { + "provisioningState": "Creating", + "isPrimary": false, + "dataDiskSizeGB": 200, + "dataDiskType": "Premium_LRS", + "placementProperties": { + "HasSSD": "true", + "NodeColor": "green", + "SomeProperty": "5" + }, + "capacities": { + "ClientConnections": "65536" + }, + "vmSize": "Standard_DS3", + "vmImagePublisher": "MicrosoftWindowsServer", + "vmImageOffer": "WindowsServer", + "vmImageSku": "2016-Datacenter-Server-Core", + "vmImageVersion": "latest", + "vmInstanceCount": 10, + "isStateless": true, + "multiplePlacementGroups": true, + "vmSecrets": [ + { + "sourceVault": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resRg/providers/Microsoft.KeyVault/vaults/myVault" + }, + "vaultCertificates": [ + { + "certificateStore": "My", + "certificateUrl": "https://myVault.vault.azure.net:443/secrets/myCert/ef1a31d39e1f46bca33def54b6cda54c" + } + ] + } + ], + "vmExtensions": [ + { + "name": "Microsoft.Azure.Geneva.GenevaMonitoring", + "properties": { + "autoUpgradeMinorVersion": true, + "forceUpdateTag": "v.1.0", + "publisher": "Microsoft.Azure.Geneva", + "type": "GenevaMonitoring", + "typeHandlerVersion": "2.0", + "settings": {} + } + } + ], + "vmManagedIdentity": { + "userAssignedIdentities": [ + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resRg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myIdentity", + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resRg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myIdentity2" + ] + } + } + } + } + } +} diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/NodeTypePutOperation_example_min.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/NodeTypePutOperation_example_min.json new file mode 100644 index 000000000000..d4fb7af86798 --- /dev/null +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/NodeTypePutOperation_example_min.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "nodeTypeName": "BE", + "api-version": "2021-05-01", + "parameters": { + "properties": { + "isPrimary": false, + "dataDiskSizeGB": 200, + "vmSize": "Standard_D3", + "vmImagePublisher": "MicrosoftWindowsServer", + "vmImageOffer": "WindowsServer", + "vmImageSku": "2016-Datacenter-Server-Core", + "vmImageVersion": "latest", + "vmInstanceCount": 10 + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "http://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/managedClusterOperationResults/1ca6e48d-70ca-4e43-b652-3b0522f64d67?api-version=2021-05-01", + "Azure-AsyncOperation": "http://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/managedClusterOperationStatus/1ca6e48d-70ca-4e43-b652-3b0522f64d67?api-version=2021-05-01" + }, + "body": { + "type": "Microsoft.ServiceFabric/managedClusters/nodeTypes", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedClusters/myCluster/nodeTypes/BE", + "name": "BE", + "tags": {}, + "properties": { + "provisioningState": "Updating", + "isPrimary": false, + "dataDiskSizeGB": 200, + "dataDiskType": "StandardSSD_LRS", + "placementProperties": {}, + "capacities": {}, + "vmSize": "Standard_D3", + "vmImagePublisher": "MicrosoftWindowsServer", + "vmImageOffer": "WindowsServer", + "vmImageSku": "2016-Datacenter-Server-Core", + "vmImageVersion": "latest", + "vmInstanceCount": 10, + "isStateless": false + } + } + }, + "200": { + "headers": { + "Location": "http://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/managedClusterOperationResults/1ca6e48d-70ca-4e43-b652-3b0522f64d67?api-version=2021-05-01", + "Azure-AsyncOperation": "http://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/managedClusterOperationStatus/1ca6e48d-70ca-4e43-b652-3b0522f64d67?api-version=2021-05-01" + }, + "body": { + "type": "Microsoft.ServiceFabric/managedClusters/nodeTypes", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedClusters/myCluster/nodeTypes/BE", + "name": "BE", + "tags": {}, + "properties": { + "provisioningState": "Creating", + "isPrimary": false, + "dataDiskSizeGB": 200, + "dataDiskType": "StandardSSD_LRS", + "placementProperties": {}, + "capacities": {}, + "vmSize": "Standard_D3", + "vmImagePublisher": "MicrosoftWindowsServer", + "vmImageOffer": "WindowsServer", + "vmImageSku": "2016-Datacenter-Server-Core", + "vmImageVersion": "latest", + "vmInstanceCount": 10, + "isStateless": false + } + } + } + } +} diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/Operations_example.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/Operations_example.json new file mode 100644 index 000000000000..f3a710bbe9db --- /dev/null +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/Operations_example.json @@ -0,0 +1,95 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.ServiceFabric/managedClusters/read", + "display": { + "provider": "Microsoft ServiceFabric", + "resource": "managedClusters", + "operation": "Read Cluster", + "description": "Read any Cluster" + } + }, + { + "name": "Microsoft.ServiceFabric/managedClusters/write", + "display": { + "provider": "Microsoft ServiceFabric", + "resource": "managedClusters", + "operation": "Create or Update Cluster", + "description": "Create or Update any Cluster" + } + }, + { + "name": "Microsoft.ServiceFabric/managedClusters/delete", + "display": { + "provider": "Microsoft ServiceFabric", + "resource": "managedClusters", + "operation": "Delete Cluster", + "description": "Delete any Cluster" + } + }, + { + "name": "Microsoft.ServiceFabric/nodeTypes/read", + "display": { + "provider": "Microsoft ServiceFabric", + "resource": "nodeTypes", + "operation": "Read Node type", + "description": "Read any Node type" + } + }, + { + "name": "Microsoft.ServiceFabric/nodeTypes/write", + "display": { + "provider": "Microsoft ServiceFabric", + "resource": "nodeTypes", + "operation": "Create or Update Node type", + "description": "Create or Update any Node type" + } + }, + { + "name": "Microsoft.ServiceFabric/nodeTypes/delete", + "display": { + "provider": "Microsoft ServiceFabric", + "resource": "nodeTypes", + "operation": "Delete Node type", + "description": "Delete any Node type" + } + }, + { + "name": "Microsoft.ServiceFabric/nodeTypes/restart/action", + "display": { + "provider": "Microsoft ServiceFabric", + "resource": "nodeTypes", + "operation": "Restart nodes from Node type", + "description": "Restart nodes from Node type" + } + }, + { + "name": "Microsoft.ServiceFabric/nodeTypes/reimage/action", + "display": { + "provider": "Microsoft ServiceFabric", + "resource": "nodeTypes", + "operation": "Reimage nodes from Node type", + "description": "Reimage nodes from Node type" + } + }, + { + "name": "Microsoft.ServiceFabric/nodeTypes/deleteNode/action", + "display": { + "provider": "Microsoft ServiceFabric", + "resource": "nodeTypes", + "operation": "Delete nodes from Node type", + "description": "Delete nodes from Node type" + } + } + ] + } + } + } +} diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ReimageNodes_example.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ReimageNodes_example.json new file mode 100644 index 000000000000..667258a5c2f8 --- /dev/null +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ReimageNodes_example.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "nodeTypeName": "BE", + "api-version": "2021-05-01", + "parameters": { + "nodes": [ + "BE_0", + "BE_3" + ] + } + }, + "responses": { + "202": { + "headers": { + "Location": "http://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/managedClusterOperationResults/1ca6e48d-70ca-4e43-b652-3b0522f64d67?api-version=2021-05-01", + "Azure-AsyncOperation": "http://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/managedClusterOperationStatus/1ca6e48d-70ca-4e43-b652-3b0522f64d67?api-version=2021-05-01" + } + }, + "200": {} + } +} diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/RestartNodes_example.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/RestartNodes_example.json new file mode 100644 index 000000000000..667258a5c2f8 --- /dev/null +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/RestartNodes_example.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "nodeTypeName": "BE", + "api-version": "2021-05-01", + "parameters": { + "nodes": [ + "BE_0", + "BE_3" + ] + } + }, + "responses": { + "202": { + "headers": { + "Location": "http://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/managedClusterOperationResults/1ca6e48d-70ca-4e43-b652-3b0522f64d67?api-version=2021-05-01", + "Azure-AsyncOperation": "http://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/managedClusterOperationStatus/1ca6e48d-70ca-4e43-b652-3b0522f64d67?api-version=2021-05-01" + } + }, + "200": {} + } +} diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ServiceDeleteOperation_example.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ServiceDeleteOperation_example.json new file mode 100644 index 000000000000..3ad52971084e --- /dev/null +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ServiceDeleteOperation_example.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "serviceName": "myService", + "api-version": "2021-05-01" + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/41fa5ef9-7f34-4c36-a730-93e0bb757d22?api-version2021-05-01" + } + }, + "204": {}, + "200": {} + } +} diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ServiceGetOperation_example.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ServiceGetOperation_example.json new file mode 100644 index 000000000000..41d75c6c5793 --- /dev/null +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ServiceGetOperation_example.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "serviceName": "myService", + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "type": "Microsoft.ServiceFabric/managedClusters/applications/services", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedclusters/myCluster/applications/myApp/services/myService", + "name": "myService", + "properties": { + "provisioningState": "Updating", + "serviceKind": "Stateless", + "placementConstraints": "NodeType==frontend", + "serviceTypeName": "myServiceType", + "partitionDescription": { + "partitionScheme": "Singleton" + }, + "serviceLoadMetrics": [ + { + "name": "metric1", + "weight": "Low" + } + ], + "servicePlacementPolicies": [], + "defaultMoveCost": "Medium", + "instanceCount": 5, + "servicePackageActivationMode": "SharedProcess" + } + } + } + } +} diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ServiceListOperation_example.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ServiceListOperation_example.json new file mode 100644 index 000000000000..56918d08c776 --- /dev/null +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ServiceListOperation_example.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "type": "Microsoft.ServiceFabric/managedClusters/applications/services", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedclusters/myCluster/applications/myApp/services/myService", + "name": "myService", + "properties": { + "provisioningState": "Updating", + "serviceKind": "Stateless", + "serviceTypeName": "myServiceType", + "partitionDescription": { + "partitionScheme": "Singleton" + }, + "serviceLoadMetrics": [ + { + "name": "metric1", + "weight": "Low" + } + ], + "instanceCount": 1, + "servicePackageActivationMode": "SharedProcess" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ServicePatchOperation_example.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ServicePatchOperation_example.json new file mode 100644 index 000000000000..f56e21b0cfb2 --- /dev/null +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ServicePatchOperation_example.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "serviceName": "myService", + "api-version": "2021-05-01", + "parameters": { + "tags": { + "a": "b" + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "type": "Microsoft.ServiceFabric/managedClusters/applications/services", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedclusters/myCluster/applications/myApp/services/myService", + "name": "myService", + "tags": { + "a": "b" + }, + "properties": { + "provisioningState": "Succeeded", + "serviceKind": "Stateless", + "placementConstraints": "NodeType==frontend", + "serviceTypeName": "myServiceType", + "partitionDescription": { + "partitionScheme": "Singleton" + }, + "serviceLoadMetrics": [ + { + "name": "metric1", + "weight": "Low", + "defaultLoad": 3 + } + ], + "correlationScheme": [ + { + "serviceName": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedclusters/myCluster/applications/myApp/services/myService1", + "scheme": "AlignedAffinity" + } + ], + "servicePlacementPolicies": [ + { + "type": "NonPartiallyPlaceService" + } + ], + "scalingPolicies": [ + { + "scalingMechanism": { + "kind": "ScalePartitionInstanceCount", + "maxInstanceCount": 9, + "minInstanceCount": 3, + "scaleIncrement": 2 + }, + "scalingTrigger": { + "kind": "AveragePartitionLoadTrigger", + "lowerLoadThreshold": 2.0, + "metricName": "metricName", + "scaleInterval": "00:01:00", + "upperLoadThreshold": 8.0 + } + } + ], + "defaultMoveCost": "Medium", + "instanceCount": 5, + "minInstanceCount": 3, + "minInstancePercentage": 30, + "servicePackageActivationMode": "SharedProcess" + } + } + } + } +} diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ServicePutOperation_example_max.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ServicePutOperation_example_max.json new file mode 100644 index 000000000000..b857c6f461e3 --- /dev/null +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ServicePutOperation_example_max.json @@ -0,0 +1,189 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "serviceName": "myService", + "api-version": "2021-05-01", + "parameters": { + "location": "eastus", + "tags": { + "a": "b" + }, + "properties": { + "serviceKind": "Stateless", + "placementConstraints": "NodeType==frontend", + "serviceTypeName": "myServiceType", + "partitionDescription": { + "partitionScheme": "Singleton" + }, + "serviceLoadMetrics": [ + { + "name": "metric1", + "weight": "Low", + "defaultLoad": 3 + } + ], + "correlationScheme": [ + { + "serviceName": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedclusters/myCluster/applications/myApp/services/myService1", + "scheme": "AlignedAffinity" + } + ], + "servicePlacementPolicies": [ + { + "type": "NonPartiallyPlaceService" + } + ], + "scalingPolicies": [ + { + "scalingMechanism": { + "kind": "ScalePartitionInstanceCount", + "maxInstanceCount": 9, + "minInstanceCount": 3, + "scaleIncrement": 2 + }, + "scalingTrigger": { + "kind": "AveragePartitionLoadTrigger", + "lowerLoadThreshold": 2.0, + "metricName": "metricName", + "scaleInterval": "00:01:00", + "upperLoadThreshold": 8.0 + } + } + ], + "defaultMoveCost": "Medium", + "instanceCount": 5, + "minInstanceCount": 3, + "minInstancePercentage": 30, + "servicePackageActivationMode": "SharedProcess" + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "type": "Microsoft.ServiceFabric/managedClusters/applications/services", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedclusters/myCluster/applications/myApp/services/myService", + "name": "myService", + "tags": { + "a": "b" + }, + "properties": { + "provisioningState": "Creating", + "serviceKind": "Stateless", + "placementConstraints": "NodeType==frontend", + "serviceTypeName": "myServiceType", + "partitionDescription": { + "partitionScheme": "Singleton" + }, + "serviceLoadMetrics": [ + { + "name": "metric1", + "weight": "Low", + "defaultLoad": 3 + } + ], + "correlationScheme": [ + { + "serviceName": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedclusters/myCluster/applications/myApp/services/myService1", + "scheme": "AlignedAffinity" + } + ], + "servicePlacementPolicies": [ + { + "type": "NonPartiallyPlaceService" + } + ], + "scalingPolicies": [ + { + "scalingMechanism": { + "kind": "ScalePartitionInstanceCount", + "maxInstanceCount": 9, + "minInstanceCount": 3, + "scaleIncrement": 2 + }, + "scalingTrigger": { + "kind": "AveragePartitionLoadTrigger", + "lowerLoadThreshold": 2.0, + "metricName": "metricName", + "scaleInterval": "00:01:00", + "upperLoadThreshold": 8.0 + } + } + ], + "defaultMoveCost": "Medium", + "instanceCount": 5, + "minInstanceCount": 3, + "minInstancePercentage": 30, + "servicePackageActivationMode": "SharedProcess" + } + } + }, + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/2e633105-aadc-4928-9164-d76b974170a3?api-version=2021-05-01" + }, + "body": { + "type": "Microsoft.ServiceFabric/managedClusters/applications/services", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedclusters/myCluster/applications/myApp/services/myService", + "name": "myService", + "tags": { + "a": "b" + }, + "properties": { + "provisioningState": "Updating", + "serviceKind": "Stateless", + "placementConstraints": "NodeType==frontend", + "serviceTypeName": "myServiceType", + "partitionDescription": { + "partitionScheme": "Singleton" + }, + "serviceLoadMetrics": [ + { + "name": "metric1", + "weight": "Low", + "defaultLoad": 3 + } + ], + "correlationScheme": [ + { + "serviceName": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedclusters/myCluster/applications/myApp/services/myService1", + "scheme": "AlignedAffinity" + } + ], + "servicePlacementPolicies": [ + { + "type": "NonPartiallyPlaceService" + } + ], + "scalingPolicies": [ + { + "scalingMechanism": { + "kind": "ScalePartitionInstanceCount", + "maxInstanceCount": 9, + "minInstanceCount": 3, + "scaleIncrement": 2 + }, + "scalingTrigger": { + "kind": "AveragePartitionLoadTrigger", + "lowerLoadThreshold": 2.0, + "metricName": "metricName", + "scaleInterval": "00:01:00", + "upperLoadThreshold": 8.0 + } + } + ], + "defaultMoveCost": "Medium", + "instanceCount": 5, + "minInstanceCount": 3, + "minInstancePercentage": 30, + "servicePackageActivationMode": "SharedProcess" + } + } + } + } +} diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ServicePutOperation_example_min.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ServicePutOperation_example_min.json new file mode 100644 index 000000000000..db00ecba4664 --- /dev/null +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ServicePutOperation_example_min.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "serviceName": "myService", + "api-version": "2021-05-01", + "parameters": { + "location": "eastus", + "properties": { + "serviceKind": "Stateless", + "serviceTypeName": "myServiceType", + "partitionDescription": { + "partitionScheme": "Singleton" + }, + "instanceCount": 1 + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "type": "Microsoft.ServiceFabric/managedClusters/applications/services", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedclusters/myCluster/applications/myApp/services/myService", + "name": "myService", + "properties": { + "provisioningState": "Creating", + "serviceKind": "Stateless", + "serviceTypeName": "myServiceType", + "partitionDescription": { + "partitionScheme": "Singleton" + }, + "instanceCount": 1 + } + } + }, + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/5bc615c3-6c5b-4593-80e1-008f55376ec7?api-version=2021-05-01" + }, + "body": { + "type": "Microsoft.ServiceFabric/managedClusters/applications/services", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedclusters/myCluster/applications/myApp/services/myService", + "name": "myService", + "properties": { + "provisioningState": "Updating", + "serviceKind": "Stateless", + "serviceTypeName": "myServiceType", + "partitionDescription": { + "partitionScheme": "Singleton" + }, + "instanceCount": 1 + } + } + } + } +} diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/managedapplication.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/managedapplication.json new file mode 100644 index 000000000000..00b0755e21db --- /dev/null +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/managedapplication.json @@ -0,0 +1,2688 @@ +{ + "swagger": "2.0", + "info": { + "title": "ServiceFabricManagementClient", + "description": "Azure Service Fabric Resource Provider API Client", + "version": "2021-05-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "securityDefinitions": { + "azure_auth": { + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "type": "oauth2" + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedclusters/{clusterName}/applicationTypes/{applicationTypeName}": { + "get": { + "tags": [ + "ApplicationType" + ], + "operationId": "ApplicationTypes_Get", + "summary": "Gets a Service Fabric managed application type name resource.", + "description": "Get a Service Fabric application type name resource created or in the process of being created in the Service Fabric managed cluster resource.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationTypeName" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Get an application type": { + "$ref": "./examples/ApplicationTypeNameGetOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ApplicationTypeResource" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "put": { + "tags": [ + "ApplicationType" + ], + "operationId": "ApplicationTypes_CreateOrUpdate", + "summary": "Creates or updates a Service Fabric managed application type name resource.", + "description": "Create or update a Service Fabric managed application type name resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationTypeName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "name": "parameters", + "in": "body", + "description": "The application type name resource.", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationTypeResource" + }, + "x-ms-parameter-location": "method" + } + ], + "x-ms-examples": { + "Put an application type": { + "$ref": "./examples/ApplicationTypeNamePutOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ApplicationTypeResource" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "patch": { + "tags": [ + "ApplicationType" + ], + "operationId": "ApplicationTypes_Update", + "summary": "Updates the tags of an application type resource of a given managed cluster.", + "description": "Updates the tags of an application type resource of a given managed cluster.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationTypeName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "name": "parameters", + "in": "body", + "description": "The application type resource updated tags.", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationTypeUpdateParameters" + } + } + ], + "x-ms-examples": { + "Patch an application type": { + "$ref": "./examples/ApplicationTypeNamePatchOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ApplicationTypeResource" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "delete": { + "tags": [ + "ApplicationType" + ], + "operationId": "ApplicationTypes_Delete", + "summary": "Deletes a Service Fabric managed application type name resource.", + "description": "Delete a Service Fabric managed application type name resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationTypeName" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Delete an application type": { + "$ref": "./examples/ApplicationTypeNameDeleteOperation_example.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "responses": { + "202": { + "description": "The request was accepted and the operation will complete asynchronously." + }, + "204": { + "description": "The resource was not found." + }, + "200": { + "description": "The operation completed successfully." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedclusters/{clusterName}/applicationTypes": { + "get": { + "tags": [ + "ApplicationType" + ], + "operationId": "ApplicationTypes_List", + "summary": "Gets the list of application type name resources created in the specified Service Fabric managed cluster resource.", + "description": "Gets all application type name resources created or in the process of being created in the Service Fabric managed cluster resource.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get a list of application type name resources": { + "$ref": "./examples/ApplicationTypeNameListOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ApplicationTypeResourceList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedclusters/{clusterName}/applicationTypes/{applicationTypeName}/versions/{version}": { + "get": { + "tags": [ + "ApplicationTypeVersion" + ], + "operationId": "ApplicationTypeVersions_Get", + "summary": "Gets a Service Fabric managed application type version resource.", + "description": "Get a Service Fabric managed application type version resource created or in the process of being created in the Service Fabric managed application type name resource.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationTypeName" + }, + { + "$ref": "#/parameters/version" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Get an application type version": { + "$ref": "./examples/ApplicationTypeVersionGetOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ApplicationTypeVersionResource" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "put": { + "tags": [ + "ApplicationTypeVersion" + ], + "operationId": "ApplicationTypeVersions_CreateOrUpdate", + "summary": "Creates or updates a Service Fabric managed application type version resource.", + "description": "Create or update a Service Fabric managed application type version resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationTypeName" + }, + { + "$ref": "#/parameters/version" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "name": "parameters", + "in": "body", + "description": "The application type version resource.", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationTypeVersionResource" + }, + "x-ms-parameter-location": "method" + } + ], + "x-ms-examples": { + "Put an application type version": { + "$ref": "./examples/ApplicationTypeVersionPutOperation_example.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ApplicationTypeVersionResource" + } + }, + "202": { + "description": "The request was accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/ApplicationTypeVersionResource" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "patch": { + "tags": [ + "ApplicationTypeVersion" + ], + "operationId": "ApplicationTypeVersions_Update", + "summary": "Updates the tags of an application type version resource of a given managed cluster.", + "description": "Updates the tags of an application type version resource of a given managed cluster.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationTypeName" + }, + { + "$ref": "#/parameters/version" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "name": "parameters", + "in": "body", + "description": "The application type version resource updated tags.", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationTypeVersionUpdateParameters" + } + } + ], + "x-ms-examples": { + "Patch an application type version": { + "$ref": "./examples/ApplicationTypeVersionPatchOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ApplicationTypeVersionResource" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "delete": { + "tags": [ + "ApplicationTypeVersion" + ], + "operationId": "ApplicationTypeVersions_Delete", + "summary": "Deletes a Service Fabric managed application type version resource.", + "description": "Delete a Service Fabric managed application type version resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationTypeName" + }, + { + "$ref": "#/parameters/version" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Delete an application type version": { + "$ref": "./examples/ApplicationTypeVersionDeleteOperation_example.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "responses": { + "202": { + "description": "The request was accepted and the operation will complete asynchronously." + }, + "204": { + "description": "The resource was not found." + }, + "200": { + "description": "The operation completed successfully." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedclusters/{clusterName}/applicationTypes/{applicationTypeName}/versions": { + "get": { + "tags": [ + "ApplicationTypeVersion" + ], + "operationId": "ApplicationTypeVersions_ListByApplicationTypes", + "summary": "Gets the list of application type version resources created in the specified Service Fabric managed application type name resource.", + "description": "Gets all application type version resources created or in the process of being created in the Service Fabric managed application type name resource.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationTypeName" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get a list of application type version resources": { + "$ref": "./examples/ApplicationTypeVersionListOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ApplicationTypeVersionResourceList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedclusters/{clusterName}/applications/{applicationName}": { + "get": { + "tags": [ + "Application" + ], + "operationId": "Applications_Get", + "summary": "Gets a Service Fabric managed application resource.", + "description": "Get a Service Fabric managed application resource created or in the process of being created in the Service Fabric cluster resource.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationName" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Get an application": { + "$ref": "./examples/ApplicationGetOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ApplicationResource" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "put": { + "tags": [ + "Application" + ], + "operationId": "Applications_CreateOrUpdate", + "summary": "Creates or updates a Service Fabric managed application resource.", + "description": "Create or update a Service Fabric managed application resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "name": "parameters", + "in": "body", + "description": "The application resource.", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationResource" + }, + "x-ms-parameter-location": "method" + } + ], + "x-ms-examples": { + "Put an application with minimum parameters": { + "$ref": "./examples/ApplicationPutOperation_example_min.json" + }, + "Put an application with maximum parameters": { + "$ref": "./examples/ApplicationPutOperation_example_max.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ApplicationResource" + } + }, + "202": { + "description": "The request was accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/ApplicationResource" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "patch": { + "tags": [ + "Application" + ], + "operationId": "Applications_Update", + "summary": "Updates the tags of an application resource of a given managed cluster.", + "description": "Updates the tags of an application resource of a given managed cluster.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "name": "parameters", + "in": "body", + "description": "The application resource updated tags.", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationUpdateParameters" + } + } + ], + "x-ms-examples": { + "Patch an application": { + "$ref": "./examples/ApplicationPatchOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ApplicationResource" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "delete": { + "tags": [ + "Application" + ], + "operationId": "Applications_Delete", + "summary": "Deletes a Service Fabric managed application resource.", + "description": "Delete a Service Fabric managed application resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationName" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Delete an application": { + "$ref": "./examples/ApplicationDeleteOperation_example.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "responses": { + "202": { + "description": "The request was accepted and the operation will complete asynchronously." + }, + "204": { + "description": "The resource was not found." + }, + "200": { + "description": "The operation completed successfully." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedclusters/{clusterName}/applications": { + "get": { + "tags": [ + "Application" + ], + "operationId": "Applications_List", + "summary": "Gets the list of managed application resources created in the specified Service Fabric cluster resource.", + "description": "Gets all managed application resources created or in the process of being created in the Service Fabric cluster resource.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get a list of application resources": { + "$ref": "./examples/ApplicationListOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ApplicationResourceList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedclusters/{clusterName}/applications/{applicationName}/services/{serviceName}": { + "get": { + "tags": [ + "Service" + ], + "operationId": "Services_Get", + "summary": "Gets a Service Fabric managed service resource.", + "description": "Get a Service Fabric service resource created or in the process of being created in the Service Fabric managed application resource.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationName" + }, + { + "$ref": "#/parameters/serviceName" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Get a service": { + "$ref": "./examples/ServiceGetOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ServiceResource" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "put": { + "tags": [ + "Service" + ], + "operationId": "Services_CreateOrUpdate", + "summary": "Creates or updates a Service Fabric managed service resource.", + "description": "Create or update a Service Fabric managed service resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationName" + }, + { + "$ref": "#/parameters/serviceName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "name": "parameters", + "in": "body", + "description": "The service resource.", + "required": true, + "schema": { + "$ref": "#/definitions/ServiceResource" + }, + "x-ms-parameter-location": "method" + } + ], + "x-ms-examples": { + "Put a service with minimum parameters": { + "$ref": "./examples/ServicePutOperation_example_min.json" + }, + "Put a service with maximum parameters": { + "$ref": "./examples/ServicePutOperation_example_max.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ServiceResource" + } + }, + "202": { + "description": "The request was accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/ServiceResource" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "patch": { + "tags": [ + "Services" + ], + "operationId": "Services_Update", + "summary": "Updates the tags of a service resource of a given managed cluster.", + "description": "Updates the tags of a service resource of a given managed cluster.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationName" + }, + { + "$ref": "#/parameters/serviceName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "name": "parameters", + "in": "body", + "description": "The service resource updated tags.", + "required": true, + "schema": { + "$ref": "#/definitions/ServiceUpdateParameters" + } + } + ], + "x-ms-examples": { + "Patch a service": { + "$ref": "./examples/ServicePatchOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ServiceResource" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "delete": { + "tags": [ + "Service" + ], + "operationId": "Services_Delete", + "summary": "Deletes a Service Fabric managed service resource.", + "description": "Delete a Service Fabric managed service resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationName" + }, + { + "$ref": "#/parameters/serviceName" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Delete a service": { + "$ref": "./examples/ServiceDeleteOperation_example.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "responses": { + "202": { + "description": "The request was accepted and the operation will complete asynchronously." + }, + "204": { + "description": "The resource was not found." + }, + "200": { + "description": "The operation completed successfully." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedclusters/{clusterName}/applications/{applicationName}/services": { + "get": { + "tags": [ + "Service" + ], + "operationId": "Services_ListByApplications", + "summary": "Gets the list of service resources created in the specified Service Fabric managed application resource.", + "description": "Gets all service resources created or in the process of being created in the Service Fabric managed application resource.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationName" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Get a list of service resources": { + "$ref": "./examples/ServiceListOperation_example.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ServiceResourceList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + } + }, + "definitions": { + "AddRemoveIncrementalNamedPartitionScalingMechanism": { + "description": "Represents a scaling mechanism for adding or removing named partitions of a stateless service. Partition names are in the format '0','1'...'N-1'.", + "allOf": [ + { + "$ref": "#/definitions/ScalingMechanism" + }, + { + "type": "object", + "description": "AddRemoveIncrementalNamedPartitionScalingMechanism" + } + ], + "x-ms-discriminator-value": "AddRemoveIncrementalNamedPartition", + "required": [ + "minPartitionCount", + "maxPartitionCount", + "scaleIncrement" + ], + "properties": { + "minPartitionCount": { + "type": "integer", + "format": "int32", + "description": "Minimum number of named partitions of the service." + }, + "maxPartitionCount": { + "type": "integer", + "format": "int32", + "description": "Maximum number of named partitions of the service." + }, + "scaleIncrement": { + "type": "integer", + "format": "int32", + "description": "The number of instances to add or remove during a scaling operation." + } + } + }, + "ApplicationHealthPolicy": { + "type": "object", + "description": "Defines a health policy used to evaluate the health of an application or one of its children entities.\n", + "required": [ + "considerWarningAsError", + "maxPercentUnhealthyDeployedApplications" + ], + "properties": { + "considerWarningAsError": { + "type": "boolean", + "description": "Indicates whether warnings are treated with the same severity as errors." + }, + "maxPercentUnhealthyDeployedApplications": { + "type": "integer", + "format": "int32", + "description": "The maximum allowed percentage of unhealthy deployed applications. Allowed values are Byte values from zero to 100.\nThe percentage represents the maximum tolerated percentage of deployed applications that can be unhealthy before the application is considered in error.\nThis is calculated by dividing the number of unhealthy deployed applications over the number of nodes where the application is currently deployed on in the cluster.\nThe computation rounds up to tolerate one failure on small numbers of nodes. Default percentage is zero.\n" + }, + "defaultServiceTypeHealthPolicy": { + "$ref": "#/definitions/ServiceTypeHealthPolicy", + "description": "The health policy used by default to evaluate the health of a service type." + }, + "serviceTypeHealthPolicyMap": { + "$ref": "#/definitions/ServiceTypeHealthPolicyMap", + "description": "The map with service type health policy per service type name. The map is empty by default." + } + } + }, + "ApplicationParameterList": { + "type": "object", + "description": "List of application parameters with overridden values from their default values specified in the application manifest.", + "additionalProperties": { + "type": "string" + } + }, + "ApplicationResource": { + "description": "The application resource.", + "properties": { + "identity": { + "$ref": "#/definitions/ManagedIdentity" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationResourceProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ] + }, + "ApplicationResourceList": { + "description": "The list of application resources.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationResource" + } + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of application list results if there are any.", + "readOnly": true + } + } + }, + "ApplicationResourceProperties": { + "description": "The application resource properties.", + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The current deployment or provisioning state, which only appears in the response" + }, + "version": { + "$ref": "#/definitions/ApplicationTypeVersion" + }, + "parameters": { + "$ref": "#/definitions/ApplicationParameterList" + }, + "upgradePolicy": { + "$ref": "#/definitions/ApplicationUpgradePolicy" + }, + "managedIdentities": { + "description": "List of user assigned identities for the application, each mapped to a friendly name.", + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationUserAssignedIdentity" + } + } + } + }, + "ApplicationTypeResource": { + "description": "The application type name resource", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationTypeResourceProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ] + }, + "ApplicationTypeResourceList": { + "description": "The list of application type names.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationTypeResource" + } + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of application type list results if there are any.", + "readOnly": true + } + } + }, + "ApplicationTypeResourceProperties": { + "description": "The application type name properties", + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The current deployment or provisioning state, which only appears in the response." + } + } + }, + "ApplicationTypeUpdateParameters": { + "properties": { + "tags": { + "type": "object", + "description": "Application type update parameters", + "additionalProperties": { + "type": "string" + } + } + }, + "description": "Application type update request" + }, + "ApplicationTypeVersion": { + "type": "string", + "description": "The version of the application type as defined in the application manifest.\nThis name must be the full Arm Resource ID for the referenced application type version.\n" + }, + "ApplicationTypeVersionResource": { + "description": "An application type version resource for the specified application type name resource.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationTypeVersionResourceProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ] + }, + "ApplicationTypeVersionResourceList": { + "description": "The list of application type version resources for the specified application type name resource.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationTypeVersionResource" + } + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of application type version list results if there are any.", + "readOnly": true + } + } + }, + "ApplicationTypeVersionResourceProperties": { + "description": "The properties of the application type version resource.", + "required": [ + "appPackageUrl" + ], + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The current deployment or provisioning state, which only appears in the response" + }, + "appPackageUrl": { + "type": "string", + "description": "The URL to the application package" + } + } + }, + "ApplicationTypeVersionUpdateParameters": { + "properties": { + "tags": { + "type": "object", + "description": "Application type version update parameters", + "additionalProperties": { + "type": "string" + } + } + }, + "description": "Application type version update request" + }, + "ApplicationUpdateParameters": { + "properties": { + "tags": { + "type": "object", + "description": "Application update parameters", + "additionalProperties": { + "type": "string" + } + } + }, + "description": "Application update request" + }, + "ApplicationUpgradePolicy": { + "description": "Describes the policy for a monitored application upgrade.", + "properties": { + "applicationHealthPolicy": { + "$ref": "#/definitions/ApplicationHealthPolicy" + }, + "forceRestart": { + "$ref": "#/definitions/ForceRestart" + }, + "rollingUpgradeMonitoringPolicy": { + "$ref": "#/definitions/RollingUpgradeMonitoringPolicy" + }, + "instanceCloseDelayDuration": { + "type": "integer", + "format": "int64", + "description": "Duration in seconds, to wait before a stateless instance is closed, to allow the active requests to drain gracefully. This would be effective when the instance is closing during the application/cluster upgrade, only for those instances which have a non-zero delay duration configured in the service description." + }, + "upgradeMode": { + "$ref": "#/definitions/RollingUpgradeMode" + }, + "upgradeReplicaSetCheckTimeout": { + "type": "integer", + "format": "int64", + "description": "The maximum amount of time to block processing of an upgrade domain and prevent loss of availability when there are unexpected issues. When this timeout expires, processing of the upgrade domain will proceed regardless of availability loss issues. The timeout is reset at the start of each upgrade domain. Valid values are between 0 and 42949672925 inclusive. (unsigned 32-bit integer)." + }, + "recreateApplication": { + "type": "boolean", + "description": "Determines whether the application should be recreated on update. If value=true, the rest of the upgrade policy parameters are not allowed." + } + } + }, + "ApplicationUserAssignedIdentity": { + "required": [ + "name", + "principalId" + ], + "properties": { + "name": { + "type": "string", + "description": "The friendly name of user assigned identity." + }, + "principalId": { + "type": "string", + "description": "The principal id of user assigned identity." + } + } + }, + "AveragePartitionLoadScalingTrigger": { + "description": "Represents a scaling trigger related to an average load of a metric/resource of a partition.", + "allOf": [ + { + "$ref": "#/definitions/ScalingTrigger" + }, + { + "type": "object", + "description": "AveragePartitionLoadScalingTrigger" + } + ], + "x-ms-discriminator-value": "AveragePartitionLoadTrigger", + "required": [ + "metricName", + "lowerLoadThreshold", + "upperLoadThreshold", + "scaleInterval" + ], + "properties": { + "metricName": { + "type": "string", + "description": "The name of the metric for which usage should be tracked." + }, + "lowerLoadThreshold": { + "type": "number", + "format": "double", + "description": "The lower limit of the load below which a scale in operation should be performed." + }, + "upperLoadThreshold": { + "type": "number", + "format": "double", + "description": "The upper limit of the load beyond which a scale out operation should be performed." + }, + "scaleInterval": { + "type": "string", + "description": "The period in seconds on which a decision is made whether to scale or not. This property should come in ISO 8601 format \"hh:mm:ss\"." + } + } + }, + "AverageServiceLoadScalingTrigger": { + "description": "Represents a scaling policy related to an average load of a metric/resource of a service.", + "allOf": [ + { + "$ref": "#/definitions/ScalingTrigger" + }, + { + "type": "object", + "description": "AverageServiceLoadScalingTrigger" + } + ], + "x-ms-discriminator-value": "AverageServiceLoadTrigger", + "required": [ + "metricName", + "lowerLoadThreshold", + "upperLoadThreshold", + "scaleInterval", + "useOnlyPrimaryLoad" + ], + "properties": { + "metricName": { + "type": "string", + "description": "The name of the metric for which usage should be tracked." + }, + "lowerLoadThreshold": { + "type": "number", + "format": "double", + "description": "The lower limit of the load below which a scale in operation should be performed." + }, + "upperLoadThreshold": { + "type": "number", + "format": "double", + "description": "The upper limit of the load beyond which a scale out operation should be performed." + }, + "scaleInterval": { + "type": "string", + "description": "The period in seconds on which a decision is made whether to scale or not. This property should come in ISO 8601 format \"hh:mm:ss\"." + }, + "useOnlyPrimaryLoad": { + "type": "boolean", + "description": "Flag determines whether only the load of primary replica should be considered for scaling. If set to true, then trigger will only consider the load of primary replicas of stateful service. If set to false, trigger will consider load of all replicas. This parameter cannot be set to true for stateless service." + } + } + }, + "CorrelationSchemeList": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceCorrelation" + }, + "description": "A list that describes the correlation of the service with other services." + }, + "ForceRestart": { + "type": "boolean", + "description": "If true, then processes are forcefully restarted during upgrade even when the code version has not changed (the upgrade only changes configuration or data).", + "default": false + }, + "HealthCheckRetryTimeout": { + "type": "string", + "description": "The amount of time to retry health evaluation when the application or cluster is unhealthy before FailureAction is executed. It is interpreted as a string representing an ISO 8601 duration with following format \"hh:mm:ss.fff\"." + }, + "HealthCheckStableDuration": { + "type": "string", + "description": "The amount of time that the application or cluster must remain healthy before the upgrade proceeds to the next upgrade domain. It is interpreted as a string representing an ISO 8601 duration with following format \"hh:mm:ss.fff\"." + }, + "HealthCheckWaitDuration": { + "type": "string", + "description": "The amount of time to wait after completing an upgrade domain before applying health policies. It is interpreted as a string representing an ISO 8601 duration with following format \"hh:mm:ss.fff\"." + }, + "ManagedIdentity": { + "description": "Describes the managed identities for an Azure resource.", + "properties": { + "principalId": { + "type": "string", + "readOnly": true, + "description": "The principal id of the managed identity. This property will only be provided for a system assigned identity." + }, + "tenantId": { + "type": "string", + "readOnly": true, + "description": "The tenant id of the managed identity. This property will only be provided for a system assigned identity." + }, + "type": { + "$ref": "#/definitions/ManagedIdentityType" + }, + "userAssignedIdentities": { + "$ref": "#/definitions/UserAssignedIdentityMap" + } + } + }, + "ManagedIdentityType": { + "type": "string", + "description": "The type of managed identity for the resource.", + "enum": [ + "None", + "SystemAssigned", + "UserAssigned", + "SystemAssigned, UserAssigned" + ], + "x-ms-enum": { + "name": "ManagedIdentityType", + "modelAsString": false, + "values": [ + { + "value": "None", + "description": "Indicates that no identity is associated with the resource." + }, + { + "value": "SystemAssigned", + "description": "Indicates that system assigned identity is associated with the resource." + }, + { + "value": "UserAssigned", + "description": "Indicates that user assigned identity is associated with the resource." + }, + { + "value": "SystemAssigned, UserAssigned", + "description": "Indicates that both system assigned and user assigned identity are associated with the resource." + } + ] + } + }, + "MoveCost": { + "type": "string", + "description": "Specifies the move cost for the service.", + "enum": [ + "Zero", + "Low", + "Medium", + "High" + ], + "x-ms-enum": { + "name": "MoveCost", + "modelAsString": true, + "values": [ + { + "value": "Zero", + "description": "Zero move cost. This value is zero." + }, + { + "value": "Low", + "description": "Specifies the move cost of the service as Low. The value is 1." + }, + { + "value": "Medium", + "description": "Specifies the move cost of the service as Medium. The value is 2." + }, + { + "value": "High", + "description": "Specifies the move cost of the service as High. The value is 3." + } + ] + } + }, + "NamedPartitionScheme": { + "description": "Describes the named partition scheme of the service.", + "allOf": [ + { + "$ref": "#/definitions/Partition" + }, + { + "type": "object", + "description": "NamedPartitionScheme" + } + ], + "x-ms-discriminator-value": "Named", + "required": [ + "names" + ], + "properties": { + "names": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Array for the names of the partitions." + } + } + }, + "Partition": { + "type": "object", + "discriminator": "partitionScheme", + "description": "Describes how the service is partitioned.", + "required": [ + "partitionScheme" + ], + "properties": { + "partitionScheme": { + "$ref": "#/definitions/PartitionScheme", + "description": "Specifies how the service is partitioned." + } + } + }, + "PartitionInstanceCountScaleMechanism": { + "description": "Represents a scaling mechanism for adding or removing instances of stateless service partition.", + "allOf": [ + { + "$ref": "#/definitions/ScalingMechanism" + }, + { + "type": "object", + "description": "PartitionInstanceCountScaleMechanism" + } + ], + "x-ms-discriminator-value": "ScalePartitionInstanceCount", + "required": [ + "minInstanceCount", + "maxInstanceCount", + "scaleIncrement" + ], + "properties": { + "minInstanceCount": { + "type": "integer", + "format": "int32", + "description": "Minimum number of instances of the partition." + }, + "maxInstanceCount": { + "type": "integer", + "format": "int32", + "description": "Maximum number of instances of the partition." + }, + "scaleIncrement": { + "type": "integer", + "format": "int32", + "description": "The number of instances to add or remove during a scaling operation." + } + } + }, + "PartitionScheme": { + "type": "string", + "description": "Enumerates the ways that a service can be partitioned.", + "enum": [ + "Singleton", + "UniformInt64Range", + "Named" + ], + "x-ms-enum": { + "name": "PartitionScheme", + "modelAsString": true, + "values": [ + { + "value": "Singleton", + "description": "Indicates that the partition is based on string names, and is a SingletonPartitionScheme object, The value is 0." + }, + { + "value": "UniformInt64Range", + "description": "Indicates that the partition is based on Int64 key ranges, and is a UniformInt64RangePartitionScheme object. The value is 1." + }, + { + "value": "Named", + "description": "Indicates that the partition is based on string names, and is a NamedPartitionScheme object. The value is 2." + } + ] + } + }, + "ProxyResource": { + "properties": { + "id": { + "type": "string", + "description": "Azure resource identifier.", + "readOnly": true + }, + "name": { + "type": "string", + "description": "Azure resource name.", + "readOnly": true + }, + "type": { + "type": "string", + "description": "Azure resource type.", + "readOnly": true + }, + "location": { + "type": "string", + "description": "Resource location depends on the parent resource.", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Azure resource tags.", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "systemData": { + "$ref": "#/definitions/SystemData" + } + }, + "description": "The resource model definition for proxy-only resource.", + "x-ms-azure-resource": true + }, + "RollingUpgradeMode": { + "type": "string", + "description": "The mode used to monitor health during a rolling upgrade. The values are Monitored, and UnmonitoredAuto.", + "enum": [ + "Monitored", + "UnmonitoredAuto" + ], + "x-ms-enum": { + "name": "RollingUpgradeMode", + "modelAsString": true, + "values": [ + { + "value": "Monitored", + "description": "The upgrade will stop after completing each upgrade domain and automatically monitor health before proceeding. The value is 0." + }, + { + "value": "UnmonitoredAuto", + "description": "The upgrade will proceed automatically without performing any health monitoring. The value is 1." + } + ] + } + }, + "RollingUpgradeMonitoringPolicy": { + "description": "The policy used for monitoring the application upgrade", + "required": [ + "failureAction", + "healthCheckWaitDuration", + "healthCheckStableDuration", + "healthCheckRetryTimeout", + "upgradeTimeout", + "upgradeDomainTimeout" + ], + "properties": { + "failureAction": { + "type": "string", + "description": "The compensating action to perform when a Monitored upgrade encounters monitoring policy or health policy violations. Invalid indicates the failure action is invalid. Rollback specifies that the upgrade will start rolling back automatically. Manual indicates that the upgrade will switch to UnmonitoredManual upgrade mode.", + "enum": [ + "Rollback", + "Manual" + ], + "x-ms-enum": { + "name": "FailureAction", + "modelAsString": true, + "values": [ + { + "value": "Rollback", + "description": "Indicates that a rollback of the upgrade will be performed by Service Fabric if the upgrade fails." + }, + { + "value": "Manual", + "description": "Indicates that a manual repair will need to be performed by the administrator if the upgrade fails. Service Fabric will not proceed to the next upgrade domain automatically." + } + ] + } + }, + "healthCheckWaitDuration": { + "$ref": "#/definitions/HealthCheckWaitDuration" + }, + "healthCheckStableDuration": { + "$ref": "#/definitions/HealthCheckStableDuration" + }, + "healthCheckRetryTimeout": { + "$ref": "#/definitions/HealthCheckRetryTimeout" + }, + "upgradeTimeout": { + "$ref": "#/definitions/UpgradeTimeout" + }, + "upgradeDomainTimeout": { + "$ref": "#/definitions/UpgradeDomainTimeout" + } + } + }, + "ScalingMechanism": { + "type": "object", + "discriminator": "kind", + "description": "Describes the mechanism for performing a scaling operation.", + "required": [ + "kind" + ], + "properties": { + "kind": { + "$ref": "#/definitions/ServiceScalingMechanismKind", + "description": "Specifies the mechanism associated with this scaling policy." + } + } + }, + "ScalingPolicy": { + "type": "object", + "description": "Specifies a metric to load balance a service during runtime.", + "required": [ + "scalingMechanism", + "scalingTrigger" + ], + "properties": { + "scalingMechanism": { + "$ref": "#/definitions/ScalingMechanism", + "description": "Specifies the mechanism associated with this scaling policy" + }, + "scalingTrigger": { + "$ref": "#/definitions/ScalingTrigger", + "description": "Specifies the trigger associated with this scaling policy." + } + } + }, + "ScalingPolicyList": { + "type": "array", + "items": { + "$ref": "#/definitions/ScalingPolicy" + }, + "description": "Scaling policies for this service." + }, + "ScalingTrigger": { + "type": "object", + "discriminator": "kind", + "description": "Describes the trigger for performing a scaling operation.", + "required": [ + "kind" + ], + "properties": { + "kind": { + "$ref": "#/definitions/ServiceScalingTriggerKind", + "description": "Specifies the trigger associated with this scaling policy." + } + } + }, + "ServiceCorrelation": { + "type": "object", + "description": "Creates a particular correlation between services.", + "required": [ + "scheme", + "serviceName" + ], + "properties": { + "scheme": { + "$ref": "#/definitions/ServiceCorrelationScheme", + "description": "The ServiceCorrelationScheme which describes the relationship between this service and the service specified via ServiceName." + }, + "serviceName": { + "$ref": "#/definitions/ServiceName", + "description": "The Arm Resource ID of the service that the correlation relationship is established with." + } + } + }, + "ServiceCorrelationScheme": { + "type": "string", + "description": "The service correlation scheme.", + "enum": [ + "AlignedAffinity", + "NonAlignedAffinity" + ], + "x-ms-enum": { + "name": "ServiceCorrelationScheme", + "modelAsString": true, + "values": [ + { + "value": "AlignedAffinity", + "description": "Aligned affinity ensures that the primaries of the partitions of the affinitized services are collocated on the same nodes. This is the default and is the same as selecting the Affinity scheme. The value is 0." + }, + { + "value": "NonAlignedAffinity", + "description": "Non-Aligned affinity guarantees that all replicas of each service will be placed on the same nodes. Unlike Aligned Affinity, this does not guarantee that replicas of particular role will be collocated. The value is 1." + } + ] + } + }, + "ServiceKind": { + "type": "string", + "description": "The kind of service (Stateless or Stateful).", + "enum": [ + "Stateless", + "Stateful" + ], + "x-ms-enum": { + "name": "ServiceKind", + "modelAsString": true, + "values": [ + { + "value": "Stateless", + "description": "Does not use Service Fabric to make its state highly available or reliable. The value is 0." + }, + { + "value": "Stateful", + "description": "Uses Service Fabric to make its state or part of its state highly available and reliable. The value is 1." + } + ] + } + }, + "ServiceLoadMetric": { + "type": "object", + "description": "Specifies a metric to load balance a service during runtime.", + "required": [ + "name" + ], + "properties": { + "name": { + "type": "string", + "description": "The name of the metric. If the service chooses to report load during runtime, the load metric name should match the name that is specified in Name exactly. Note that metric names are case sensitive." + }, + "weight": { + "$ref": "#/definitions/ServiceLoadMetricWeight", + "description": "The service load metric relative weight, compared to other metrics configured for this service, as a number." + }, + "primaryDefaultLoad": { + "type": "integer", + "format": "int32", + "description": "Used only for Stateful services. The default amount of load, as a number, that this service creates for this metric when it is a Primary replica." + }, + "secondaryDefaultLoad": { + "type": "integer", + "format": "int32", + "description": "Used only for Stateful services. The default amount of load, as a number, that this service creates for this metric when it is a Secondary replica." + }, + "defaultLoad": { + "type": "integer", + "format": "int32", + "description": "Used only for Stateless services. The default amount of load, as a number, that this service creates for this metric." + } + } + }, + "ServiceLoadMetricsList": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceLoadMetric" + }, + "description": "The service load metrics is given as an array of ServiceLoadMetric objects." + }, + "ServiceLoadMetricWeight": { + "type": "string", + "description": "Determines the metric weight relative to the other metrics that are configured for this service. During runtime, if two metrics end up in conflict, the Cluster Resource Manager prefers the metric with the higher weight.", + "enum": [ + "Zero", + "Low", + "Medium", + "High" + ], + "x-ms-enum": { + "name": "ServiceLoadMetricWeight", + "modelAsString": true, + "values": [ + { + "value": "Zero", + "description": "Disables resource balancing for this metric. This value is zero." + }, + { + "value": "Low", + "description": "Specifies the metric weight of the service load as Low. The value is 1." + }, + { + "value": "Medium", + "description": "Specifies the metric weight of the service load as Medium. The value is 2." + }, + { + "value": "High", + "description": "Specifies the metric weight of the service load as High. The value is 3." + } + ] + } + }, + "ServiceName": { + "type": "string", + "description": "The full ARM Resource ID describing the service resource", + "x-sf-clientlib": { + "typeName": "ServiceName" + } + }, + "ServicePlacementInvalidDomainPolicy": { + "description": "Describes the policy to be used for placement of a Service Fabric service where a particular fault or upgrade domain should not be used for placement of the instances or replicas of that service.", + "allOf": [ + { + "$ref": "#/definitions/ServicePlacementPolicy" + }, + { + "type": "object", + "description": "ServicePlacementInvalidDomainPolicy" + } + ], + "x-ms-discriminator-value": "InvalidDomain", + "required": [ + "domainName" + ], + "properties": { + "domainName": { + "type": "string", + "description": "The name of the domain that should not be used for placement." + } + } + }, + "ServicePlacementNonPartiallyPlaceServicePolicy": { + "description": "The name of the domain that should used for placement as per this policy.", + "allOf": [ + { + "$ref": "#/definitions/ServicePlacementPolicy" + }, + { + "type": "object", + "description": "ServicePlacementNonPartiallyPlaceServicePolicy" + } + ], + "x-ms-discriminator-value": "NonPartiallyPlaceService" + }, + "ServicePlacementPoliciesList": { + "type": "array", + "items": { + "$ref": "#/definitions/ServicePlacementPolicy" + }, + "description": "A list that describes the correlation of the service with other services." + }, + "ServicePlacementPolicy": { + "type": "object", + "discriminator": "type", + "description": "Describes the policy to be used for placement of a Service Fabric service.", + "required": [ + "type" + ], + "properties": { + "type": { + "$ref": "#/definitions/ServicePlacementPolicyType" + } + } + }, + "ServicePlacementPolicyType": { + "type": "string", + "description": "The type of placement policy for a service fabric service. Following are the possible values.", + "enum": [ + "InvalidDomain", + "RequiredDomain", + "PreferredPrimaryDomain", + "RequiredDomainDistribution", + "NonPartiallyPlaceService" + ], + "x-ms-enum": { + "name": "ServicePlacementPolicyType", + "modelAsString": true, + "values": [ + { + "value": "InvalidDomain", + "description": "Indicates that the ServicePlacementPolicyDescription is of type ServicePlacementInvalidDomainPolicyDescription, which indicates that a particular fault or upgrade domain cannot be used for placement of this service. The value is 0." + }, + { + "value": "RequiredDomain", + "description": "Indicates that the ServicePlacementPolicyDescription is of type ServicePlacementRequireDomainDistributionPolicyDescription indicating that the replicas of the service must be placed in a specific domain. The value is 1." + }, + { + "value": "PreferredPrimaryDomain", + "description": "Indicates that the ServicePlacementPolicyDescription is of type ServicePlacementPreferPrimaryDomainPolicyDescription, which indicates that if possible the Primary replica for the partitions of the service should be located in a particular domain as an optimization. The value is 2." + }, + { + "value": "RequiredDomainDistribution", + "description": "Indicates that the ServicePlacementPolicyDescription is of type ServicePlacementRequireDomainDistributionPolicyDescription, indicating that the system will disallow placement of any two replicas from the same partition in the same domain at any time. The value is 3." + }, + { + "value": "NonPartiallyPlaceService", + "description": "Indicates that the ServicePlacementPolicyDescription is of type ServicePlacementNonPartiallyPlaceServicePolicyDescription, which indicates that if possible all replicas of a particular partition of the service should be placed atomically. The value is 4." + } + ] + } + }, + "ServicePlacementPreferPrimaryDomainPolicy": { + "description": "Describes the policy to be used for placement of a Service Fabric service where the service's \nPrimary replicas should optimally be placed in a particular domain.\n\nThis placement policy is usually used with fault domains in scenarios where the Service Fabric\ncluster is geographically distributed in order to indicate that a service's primary replica should\nbe located in a particular fault domain, which in geo-distributed scenarios usually aligns with regional\nor datacenter boundaries. Note that since this is an optimization it is possible that the Primary replica\nmay not end up located in this domain due to failures, capacity limits, or other constraints.\n", + "allOf": [ + { + "$ref": "#/definitions/ServicePlacementPolicy" + }, + { + "type": "object", + "description": "ServicePlacementPreferPrimaryDomainPolicy" + } + ], + "x-ms-discriminator-value": "PreferredPrimaryDomain", + "required": [ + "domainName" + ], + "properties": { + "domainName": { + "type": "string", + "description": "The name of the domain that should used for placement as per this policy." + } + } + }, + "ServicePlacementRequiredDomainPolicy": { + "description": "Describes the policy to be used for placement of a Service Fabric service where the instances or replicas of that service must be placed in a particular domain.", + "allOf": [ + { + "$ref": "#/definitions/ServicePlacementPolicy" + }, + { + "type": "object", + "description": "ServicePlacementRequiredDomainPolicy" + } + ], + "x-ms-discriminator-value": "RequiredDomain", + "required": [ + "domainName" + ], + "properties": { + "domainName": { + "type": "string", + "description": "The name of the domain that should used for placement as per this policy." + } + } + }, + "ServicePlacementRequireDomainDistributionPolicy": { + "description": "Describes the policy to be used for placement of a Service Fabric service where two replicas\nfrom the same partition should never be placed in the same fault or upgrade domain.\n\nWhile this is not common it can expose the service to an increased risk of concurrent failures\ndue to unplanned outages or other cases of subsequent/concurrent failures. As an example, consider\na case where replicas are deployed across different data center, with one replica per location.\nIn the event that one of the datacenters goes offline, normally the replica that was placed in that\ndatacenter will be packed into one of the remaining datacenters. If this is not desirable then this\npolicy should be set.\n", + "allOf": [ + { + "$ref": "#/definitions/ServicePlacementPolicy" + }, + { + "type": "object", + "description": "ServicePlacementRequireDomainDistributionPolicy" + } + ], + "x-ms-discriminator-value": "RequiredDomainDistribution", + "required": [ + "domainName" + ], + "properties": { + "domainName": { + "type": "string", + "description": "The name of the domain that should used for placement as per this policy." + } + } + }, + "ServiceResource": { + "description": "The service resource.", + "properties": { + "properties": { + "$ref": "#/definitions/ServiceResourceProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ] + }, + "ServiceResourceList": { + "description": "The list of service resources.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceResource" + } + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of service list results if there are any.", + "readOnly": true + } + } + }, + "ServiceResourceProperties": { + "description": "The service resource properties.", + "allOf": [ + { + "$ref": "#/definitions/ServiceResourcePropertiesBase" + } + ], + "required": [ + "serviceKind", + "serviceTypeName", + "partitionDescription" + ], + "discriminator": "serviceKind", + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The current deployment or provisioning state, which only appears in the response" + }, + "serviceKind": { + "$ref": "#/definitions/ServiceKind" + }, + "serviceTypeName": { + "type": "string", + "description": "The name of the service type" + }, + "partitionDescription": { + "$ref": "#/definitions/Partition" + }, + "servicePackageActivationMode": { + "type": "string", + "description": "The activation Mode of the service package", + "enum": [ + "SharedProcess", + "ExclusiveProcess" + ], + "x-ms-enum": { + "name": "ServicePackageActivationMode", + "modelAsString": true, + "values": [ + { + "value": "SharedProcess", + "description": "Indicates the application package activation mode will use shared process." + }, + { + "value": "ExclusiveProcess", + "description": "Indicates the application package activation mode will use exclusive process." + } + ] + } + } + } + }, + "ServiceResourcePropertiesBase": { + "description": "The common service resource properties.", + "properties": { + "placementConstraints": { + "type": "string", + "description": "The placement constraints as a string. Placement constraints are boolean expressions on node properties and allow for restricting a service to particular nodes based on the service requirements. For example, to place a service on nodes where NodeType is blue specify the following: \"NodeColor == blue)\"." + }, + "correlationScheme": { + "$ref": "#/definitions/CorrelationSchemeList" + }, + "serviceLoadMetrics": { + "$ref": "#/definitions/ServiceLoadMetricsList" + }, + "servicePlacementPolicies": { + "$ref": "#/definitions/ServicePlacementPoliciesList" + }, + "defaultMoveCost": { + "$ref": "#/definitions/MoveCost" + }, + "scalingPolicies": { + "$ref": "#/definitions/ScalingPolicyList" + } + } + }, + "ServiceScalingMechanismKind": { + "type": "string", + "description": "Enumerates the ways that a service can be partitioned.", + "enum": [ + "ScalePartitionInstanceCount", + "AddRemoveIncrementalNamedPartition" + ], + "x-ms-enum": { + "name": "ServiceScalingMechanismKind", + "modelAsString": true, + "values": [ + { + "value": "ScalePartitionInstanceCount", + "description": "Represents a scaling mechanism for adding or removing instances of stateless service partition. The value is 0." + }, + { + "value": "AddRemoveIncrementalNamedPartition", + "description": "Represents a scaling mechanism for adding or removing named partitions of a stateless service. The value is 1." + } + ] + } + }, + "ServiceScalingTriggerKind": { + "type": "string", + "description": "Enumerates the ways that a service can be partitioned.", + "enum": [ + "AveragePartitionLoad", + "AverageServiceLoad" + ], + "x-ms-enum": { + "name": "ServiceScalingTriggerKind", + "modelAsString": true, + "values": [ + { + "value": "AveragePartitionLoad", + "description": "Represents a scaling trigger related to an average load of a metric/resource of a partition. The value is 0." + }, + { + "value": "AverageServiceLoad", + "description": "Represents a scaling policy related to an average load of a metric/resource of a service. The value is 1." + } + ] + } + }, + "ServiceTypeHealthPolicy": { + "type": "object", + "description": "Represents the health policy used to evaluate the health of services belonging to a service type.\n", + "required": [ + "maxPercentUnhealthyServices", + "maxPercentUnhealthyPartitionsPerService", + "maxPercentUnhealthyReplicasPerPartition" + ], + "properties": { + "maxPercentUnhealthyServices": { + "type": "integer", + "format": "int32", + "description": "The maximum allowed percentage of unhealthy services.\n\nThe percentage represents the maximum tolerated percentage of services that can be unhealthy before the application is considered in error.\nIf the percentage is respected but there is at least one unhealthy service, the health is evaluated as Warning.\nThis is calculated by dividing the number of unhealthy services of the specific service type over the total number of services of the specific service type.\nThe computation rounds up to tolerate one failure on small numbers of services.\n", + "minimum": 0, + "maximum": 100 + }, + "maxPercentUnhealthyPartitionsPerService": { + "type": "integer", + "format": "int32", + "description": "The maximum allowed percentage of unhealthy partitions per service.\n\nThe percentage represents the maximum tolerated percentage of partitions that can be unhealthy before the service is considered in error.\nIf the percentage is respected but there is at least one unhealthy partition, the health is evaluated as Warning.\nThe percentage is calculated by dividing the number of unhealthy partitions over the total number of partitions in the service.\nThe computation rounds up to tolerate one failure on small numbers of partitions.\n", + "minimum": 0, + "maximum": 100 + }, + "maxPercentUnhealthyReplicasPerPartition": { + "type": "integer", + "format": "int32", + "description": "The maximum allowed percentage of unhealthy replicas per partition.\n\nThe percentage represents the maximum tolerated percentage of replicas that can be unhealthy before the partition is considered in error.\nIf the percentage is respected but there is at least one unhealthy replica, the health is evaluated as Warning.\nThe percentage is calculated by dividing the number of unhealthy replicas over the total number of replicas in the partition.\nThe computation rounds up to tolerate one failure on small numbers of replicas.\n", + "minimum": 0, + "maximum": 100 + } + } + }, + "ServiceTypeHealthPolicyMap": { + "type": "object", + "description": "Defines a ServiceTypeHealthPolicy per service type name.\n\nThe entries in the map replace the default service type health policy for each specified service type.\nFor example, in an application that contains both a stateless gateway service type and a stateful engine service type, the health policies for the stateless and stateful services can be configured differently.\nWith policy per service type, there's more granular control of the health of the service.\n\nIf no policy is specified for a service type name, the DefaultServiceTypeHealthPolicy is used for evaluation.\n", + "additionalProperties": { + "$ref": "#/definitions/ServiceTypeHealthPolicy" + } + }, + "ServiceUpdateParameters": { + "properties": { + "tags": { + "type": "object", + "description": "Service update parameters", + "additionalProperties": { + "type": "string" + } + } + }, + "description": "Service update request" + }, + "SingletonPartitionScheme": { + "description": "Describes the partition scheme of a singleton-partitioned, or non-partitioned service.", + "allOf": [ + { + "$ref": "#/definitions/Partition" + }, + { + "type": "object", + "description": "SingletonPartitionScheme" + } + ], + "x-ms-discriminator-value": "Singleton" + }, + "StatefulServiceProperties": { + "description": "The properties of a stateful service resource.", + "allOf": [ + { + "$ref": "#/definitions/ServiceResourceProperties" + } + ], + "x-ms-discriminator-value": "Stateful", + "properties": { + "hasPersistedState": { + "type": "boolean", + "description": "A flag indicating whether this is a persistent service which stores states on the local disk. If it is then the value of this property is true, if not it is false." + }, + "targetReplicaSetSize": { + "type": "integer", + "format": "int32", + "minimum": 1, + "description": "The target replica set size as a number." + }, + "minReplicaSetSize": { + "type": "integer", + "format": "int32", + "minimum": 1, + "description": "The minimum replica set size as a number." + }, + "replicaRestartWaitDuration": { + "type": "string", + "description": "The duration between when a replica goes down and when a new replica is created, represented in ISO 8601 format \"hh:mm:ss\"." + }, + "quorumLossWaitDuration": { + "type": "string", + "description": "The maximum duration for which a partition is allowed to be in a state of quorum loss, represented in ISO 8601 format \"hh:mm:ss\"." + }, + "standByReplicaKeepDuration": { + "type": "string", + "description": "The definition on how long StandBy replicas should be maintained before being removed, represented in ISO 8601 format \"hh:mm:ss\"." + }, + "servicePlacementTimeLimit": { + "type": "string", + "description": "The duration for which replicas can stay InBuild before reporting that build is stuck, represented in ISO 8601 format \"hh:mm:ss\"." + } + } + }, + "StatelessServiceProperties": { + "description": "The properties of a stateless service resource.", + "allOf": [ + { + "$ref": "#/definitions/ServiceResourceProperties" + } + ], + "x-ms-discriminator-value": "Stateless", + "required": [ + "instanceCount" + ], + "properties": { + "instanceCount": { + "type": "integer", + "format": "int32", + "minimum": -1, + "description": "The instance count." + }, + "minInstanceCount": { + "type": "integer", + "format": "int32", + "description": "MinInstanceCount is the minimum number of instances that must be up to meet the EnsureAvailability safety check during operations like upgrade or deactivate node. The actual number that is used is max( MinInstanceCount, ceil( MinInstancePercentage/100.0 * InstanceCount) ). Note, if InstanceCount is set to -1, during MinInstanceCount computation -1 is first converted into the number of nodes on which the instances are allowed to be placed according to the placement constraints on the service." + }, + "minInstancePercentage": { + "type": "integer", + "format": "int32", + "description": "MinInstancePercentage is the minimum percentage of InstanceCount that must be up to meet the EnsureAvailability safety check during operations like upgrade or deactivate node. The actual number that is used is max( MinInstanceCount, ceil( MinInstancePercentage/100.0 * InstanceCount) ). Note, if InstanceCount is set to -1, during MinInstancePercentage computation, -1 is first converted into the number of nodes on which the instances are allowed to be placed according to the placement constraints on the service." + } + } + }, + "UniformInt64RangePartitionScheme": { + "description": "Describes a partitioning scheme where an integer range is allocated evenly across a number of partitions.", + "allOf": [ + { + "$ref": "#/definitions/Partition" + }, + { + "type": "object", + "description": "UniformInt64RangePartitionScheme" + } + ], + "x-ms-discriminator-value": "UniformInt64Range", + "required": [ + "count", + "lowKey", + "highKey" + ], + "properties": { + "count": { + "type": "integer", + "format": "int32", + "description": "The number of partitions." + }, + "lowKey": { + "type": "integer", + "format": "int64", + "description": "The lower bound of the partition key range that\nshould be split between the partition ‘Count’\n" + }, + "highKey": { + "type": "integer", + "format": "int64", + "description": "The upper bound of the partition key range that\nshould be split between the partition ‘Count’\n" + } + } + }, + "UpgradeDomainTimeout": { + "type": "string", + "description": "The amount of time each upgrade domain has to complete before FailureAction is executed. Cannot be larger than 12 hours. It is interpreted as a string representing an ISO 8601 duration with following format \"hh:mm:ss.fff\"." + }, + "UpgradeTimeout": { + "type": "string", + "description": "The amount of time the overall upgrade has to complete before FailureAction is executed. Cannot be larger than 12 hours. It is interpreted as a string representing an ISO 8601 duration with following format \"hh:mm:ss.fff\"." + }, + "UserAssignedIdentity": { + "properties": { + "principalId": { + "type": "string", + "readOnly": true, + "description": "The principal id of user assigned identity." + }, + "clientId": { + "type": "string", + "readOnly": true, + "description": "The client id of user assigned identity." + } + } + }, + "UserAssignedIdentityMap": { + "type": "object", + "description": "The list of user identities associated with the resource. The user identity dictionary key references will be ARM resource ids in the form:\n'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.\n", + "additionalProperties": { + "$ref": "#/definitions/UserAssignedIdentity" + } + }, + "AvailableOperationDisplay": { + "properties": { + "provider": { + "type": "string", + "description": "The name of the provider." + }, + "resource": { + "type": "string", + "description": "The resource on which the operation is performed" + }, + "operation": { + "type": "string", + "description": "The operation that can be performed." + }, + "description": { + "type": "string", + "description": "Operation description" + } + }, + "description": "Operation supported by the Service Fabric resource provider" + }, + "ErrorModel": { + "properties": { + "error": { + "$ref": "#/definitions/ErrorModelError", + "description": "The error details." + } + }, + "description": "The structure of the error." + }, + "ErrorModelError": { + "properties": { + "code": { + "type": "string", + "description": "The error code." + }, + "message": { + "type": "string", + "description": "The error message." + } + }, + "description": "The error details." + }, + "OperationResult": { + "properties": { + "name": { + "type": "string", + "description": "The name of the operation." + }, + "isDataAction": { + "type": "boolean", + "description": "Indicates whether the operation is a data action" + }, + "display": { + "$ref": "#/definitions/AvailableOperationDisplay", + "description": "The object that represents the operation." + }, + "origin": { + "type": "string", + "description": "Origin result" + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "Available operation list result" + }, + "SystemData": { + "description": "Metadata pertaining to creation and last modification of the resource.", + "type": "object", + "readOnly": true, + "properties": { + "createdBy": { + "type": "string", + "description": "The identity that created the resource." + }, + "createdByType": { + "type": "string", + "description": "The type of identity that created the resource." + }, + "createdAt": { + "type": "string", + "format": "date-time", + "description": "The timestamp of resource creation (UTC)." + }, + "lastModifiedBy": { + "type": "string", + "description": "The identity that last modified the resource." + }, + "lastModifiedByType": { + "type": "string", + "description": "The type of identity that last modified the resource." + }, + "lastModifiedAt": { + "type": "string", + "format": "date-time", + "description": "The timestamp of resource last modification (UTC)." + } + } + } + }, + "parameters": { + "api-version": { + "name": "api-version", + "in": "query", + "description": "The version of the Service Fabric resource provider API. This is a required parameter and it's value must be \"2021-05-01\" for this specification.", + "required": true, + "type": "string", + "enum": [ + "2021-05-01" + ], + "x-ms-parameter-location": "client" + }, + "applicationName": { + "name": "applicationName", + "in": "path", + "description": "The name of the application resource.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "applicationTypeName": { + "name": "applicationTypeName", + "in": "path", + "description": "The name of the application type name resource.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "clusterNameParameter": { + "name": "clusterName", + "in": "path", + "description": "The name of the cluster resource.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "serviceName": { + "name": "serviceName", + "in": "path", + "description": "The name of the service resource in the format of {applicationName}~{serviceName}.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "subscriptionId": { + "name": "subscriptionId", + "in": "path", + "description": "The customer subscription identifier.", + "required": true, + "type": "string", + "x-ms-parameter-location": "client" + }, + "version": { + "name": "version", + "in": "path", + "description": "The application type version.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/managedcluster.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/managedcluster.json new file mode 100644 index 000000000000..700522aee9c3 --- /dev/null +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/managedcluster.json @@ -0,0 +1,1411 @@ +{ + "swagger": "2.0", + "info": { + "title": "ServiceFabricManagementClient", + "description": "Azure Service Fabric Resource Provider API Client", + "version": "2021-05-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "securityDefinitions": { + "azure_auth": { + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "type": "oauth2" + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "paths": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedClusters": { + "get": { + "operationId": "ManagedClusters_ListByResourceGroup", + "summary": "Gets the list of Service Fabric cluster resources created in the specified resource group.", + "description": "Gets all Service Fabric cluster resources created or in the process of being created in the resource group.", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + } + ], + "tags": [ + "ManagedCluster" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List cluster by resource group": { + "$ref": "./examples/ManagedClusterListByResourceGroupOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ManagedClusterListResult" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabric/managedClusters": { + "get": { + "operationId": "ManagedClusters_ListBySubscription", + "summary": "Gets the list of Service Fabric cluster resources created in the specified subscription.", + "description": "Gets all Service Fabric cluster resources created or in the process of being created in the subscription.", + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + } + ], + "tags": [ + "ManagedCluster" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List managed clusters": { + "$ref": "./examples/ManagedClusterListBySubscriptionOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ManagedClusterListResult" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedClusters/{clusterName}": { + "get": { + "tags": [ + "ManagedCluster" + ], + "operationId": "ManagedClusters_Get", + "summary": "Gets a Service Fabric managed cluster resource.", + "description": "Get a Service Fabric managed cluster resource created or in the process of being created in the specified resource group.", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + } + ], + "x-ms-examples": { + "Get a cluster": { + "$ref": "./examples/ManagedClusterGetOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ManagedCluster" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "put": { + "tags": [ + "ManagedCluster" + ], + "operationId": "ManagedClusters_CreateOrUpdate", + "summary": "Creates or updates a Service Fabric managed cluster resource.", + "description": "Create or update a Service Fabric managed cluster resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "parameters", + "in": "body", + "description": "The cluster resource.", + "required": true, + "schema": { + "$ref": "#/definitions/ManagedCluster" + }, + "x-ms-parameter-location": "method" + } + ], + "x-ms-examples": { + "Put a cluster with minimum parameters": { + "$ref": "./examples/ManagedClusterPutOperation_example_min.json" + }, + "Put a cluster with maximum parameters": { + "$ref": "./examples/ManagedClusterPutOperation_example_max.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ManagedCluster" + } + }, + "202": { + "description": "The request was accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/ManagedCluster" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "patch": { + "tags": [ + "ManagedCluster" + ], + "operationId": "ManagedClusters_Update", + "summary": "Updates the tags of of a Service Fabric managed cluster resource.", + "description": "Update the tags of of a Service Fabric managed cluster resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "parameters", + "in": "body", + "description": "The managed cluster resource updated tags.", + "required": true, + "schema": { + "$ref": "#/definitions/ManagedClusterUpdateParameters" + }, + "x-ms-parameter-location": "method" + } + ], + "x-ms-examples": { + "Patch a managed cluster": { + "$ref": "./examples/ManagedClusterPatchOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ManagedCluster" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "delete": { + "tags": [ + "ManagedCluster" + ], + "operationId": "ManagedClusters_Delete", + "summary": "Deletes a Service Fabric managed cluster resource.", + "description": "Delete a Service Fabric managed cluster resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + } + ], + "x-ms-examples": { + "Delete a cluster": { + "$ref": "./examples/ManagedClusterDeleteOperation_example.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "responses": { + "202": { + "description": "The request was accepted and the operation will complete asynchronously." + }, + "204": { + "description": "The resource was not found." + }, + "200": { + "description": "The operation completed successfully." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabric/locations/{location}/managedClusterVersions/{clusterVersion}": { + "get": { + "operationId": "ManagedClusterVersion_Get", + "summary": "Gets information about a Service Fabric managed cluster code version available in the specified location.", + "description": "Gets information about an available Service Fabric managed cluster code version.", + "parameters": [ + { + "$ref": "#/parameters/locationForClusterCodeVersions" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/clusterVersion" + } + ], + "x-ms-examples": { + "Get cluster version": { + "$ref": "./examples/ManagedClusterVersionGet_example.json" + } + }, + "tags": [ + "ManagedClusterVersion" + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ManagedClusterCodeVersionResult" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabric/locations/{location}/environments/{environment}/managedClusterVersions/{clusterVersion}": { + "get": { + "operationId": "ManagedClusterVersion_GetByEnvironment", + "summary": "Gets information about a Service Fabric cluster code version available for the specified environment.", + "description": "Gets information about an available Service Fabric cluster code version by environment.", + "parameters": [ + { + "$ref": "#/parameters/locationForClusterCodeVersions" + }, + { + "$ref": "#/parameters/environment" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/clusterVersion" + } + ], + "x-ms-examples": { + "Get cluster version by environment": { + "$ref": "./examples/ManagedClusterVersionGetByEnvironment_example.json" + } + }, + "tags": [ + "ManagedClusterVersion" + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ManagedClusterCodeVersionResult" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabric/locations/{location}/managedClusterVersions": { + "get": { + "operationId": "ManagedClusterVersion_List", + "summary": "Gets the list of Service Fabric cluster code versions available for the specified location.", + "description": "Gets all available code versions for Service Fabric cluster resources by location.", + "parameters": [ + { + "$ref": "#/parameters/locationForClusterCodeVersions" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + } + ], + "x-ms-examples": { + "List cluster versions": { + "$ref": "./examples/ManagedClusterVersionList_example.json" + } + }, + "tags": [ + "ManagedClusterVersion" + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ManagedClusterCodeVersionListResult" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabric/locations/{location}/environments/{environment}/managedClusterVersions": { + "get": { + "operationId": "ManagedClusterVersion_ListByEnvironment", + "summary": "Gets the list of Service Fabric cluster code versions available for the specified environment.", + "description": "Gets all available code versions for Service Fabric cluster resources by environment.", + "parameters": [ + { + "$ref": "#/parameters/locationForClusterCodeVersions" + }, + { + "$ref": "#/parameters/environment" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + } + ], + "x-ms-examples": { + "List cluster versions by environment": { + "$ref": "./examples/ManagedClusterVersionListByEnvironment.json" + } + }, + "tags": [ + "ManagedClusterVersion" + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ManagedClusterCodeVersionListResult" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/providers/Microsoft.ServiceFabric/operations": { + "get": { + "tags": [ + "Operations" + ], + "summary": "Lists all of the available Service Fabric resource provider API operations.", + "description": "Get the list of available Service Fabric resource provider API operations.", + "operationId": "Operations_List", + "parameters": [ + { + "name": "api-version", + "in": "query", + "description": "The version of the Service Fabric resource provider API", + "required": true, + "type": "string" + } + ], + "x-ms-examples": { + "List available operations": { + "$ref": "./examples/Operations_example.json" + } + }, + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "ManagedClusterAddOnFeature": { + "type": "string", + "description": "Available cluster add-on features", + "enum": [ + "DnsService", + "BackupRestoreService", + "ResourceMonitorService" + ] + }, + "ApplicationTypeVersionsCleanupPolicy": { + "required": [ + "maxUnusedVersionsToKeep" + ], + "properties": { + "maxUnusedVersionsToKeep": { + "type": "integer", + "format": "int32", + "minimum": 0, + "description": "Number of unused versions per application type to keep." + } + }, + "description": "The policy used to clean up unused versions. When the policy is not specified explicitly, the default unused application versions to keep will be 3." + }, + "AzureActiveDirectory": { + "properties": { + "tenantId": { + "type": "string", + "description": "Azure active directory tenant id." + }, + "clusterApplication": { + "type": "string", + "description": "Azure active directory cluster application id." + }, + "clientApplication": { + "type": "string", + "description": "Azure active directory client application id." + } + }, + "description": "The settings to enable AAD authentication on the cluster." + }, + "ClientCertificate": { + "required": [ + "isAdmin" + ], + "properties": { + "isAdmin": { + "type": "boolean", + "description": "Indicates if the client certificate has admin access to the cluster. Non admin clients can perform only read only operations on the cluster." + }, + "thumbprint": { + "type": "string", + "description": "Certificate thumbprint." + }, + "commonName": { + "type": "string", + "description": "Certificate common name." + }, + "issuerThumbprint": { + "type": "string", + "description": "Issuer thumbprint for the certificate. Only used together with CommonName." + } + }, + "description": "Client certificate definition." + }, + "ClusterState": { + "type": "string", + "description": "The current state of the cluster.\n", + "enum": [ + "WaitingForNodes", + "Deploying", + "BaselineUpgrade", + "Upgrading", + "UpgradeFailed", + "Ready" + ], + "x-ms-enum": { + "name": "ClusterState", + "modelAsString": true, + "values": [ + { + "value": "WaitingForNodes", + "description": "Indicates that the cluster resource is created and the resource provider is waiting for Service Fabric VM extension to boot up and report to it." + }, + { + "value": "Deploying", + "description": "Indicates that the Service Fabric runtime is being installed on the VMs. Cluster resource will be in this state until the cluster boots up and system services are up." + }, + { + "value": "BaselineUpgrade", + "description": "Indicates that the cluster is upgrading to establishes the cluster version. This upgrade is automatically initiated when the cluster boots up for the first time." + }, + { + "value": "Upgrading", + "description": "Indicates that the cluster is being upgraded with the user provided configuration." + }, + { + "value": "UpgradeFailed", + "description": "Indicates that the last upgrade for the cluster has failed." + }, + { + "value": "Ready", + "description": "Indicates that the cluster is in a stable state." + } + ] + } + }, + "ClusterUpgradeCadence": { + "type": "string", + "enum": [ + "Wave0", + "Wave1", + "Wave2" + ], + "x-ms-enum": { + "name": "clusterUpgradeCadence", + "modelAsString": true, + "values": [ + { + "value": "Wave0", + "description": "Cluster upgrade starts immediately after a new version is rolled out. Recommended for Test/Dev clusters." + }, + { + "value": "Wave1", + "description": "Cluster upgrade starts 7 days after a new version is rolled out. Recommended for Pre-prod clusters." + }, + { + "value": "Wave2", + "description": "Cluster upgrade starts 14 days after a new version is rolled out. Recommended for Production clusters." + } + ] + }, + "description": "Indicates when new cluster runtime version upgrades will be applied after they are released. By default is Wave0." + }, + "ClusterUpgradeMode": { + "type": "string", + "description": "The upgrade mode of the cluster when new Service Fabric runtime version is available.\n", + "enum": [ + "Automatic", + "Manual" + ], + "default": "Automatic", + "x-ms-enum": { + "name": "ClusterUpgradeMode", + "modelAsString": true, + "values": [ + { + "value": "Automatic", + "description": "The cluster will be automatically upgraded to the latest Service Fabric runtime version, **clusterUpgradeCadence** will determine when the upgrade starts after the new version becomes available." + }, + { + "value": "Manual", + "description": "The cluster will not be automatically upgraded to the latest Service Fabric runtime version. The cluster is upgraded by setting the **clusterCodeVersion** property in the cluster resource." + } + ] + } + }, + "LoadBalancingRule": { + "required": [ + "frontendPort", + "backendPort", + "protocol", + "probeProtocol" + ], + "properties": { + "frontendPort": { + "type": "integer", + "format": "int32", + "description": "The port for the external endpoint. Port numbers for each rule must be unique within the Load Balancer. Acceptable values are between 1 and 65534.", + "minimum": 1, + "maximum": 65534 + }, + "backendPort": { + "type": "integer", + "format": "int32", + "description": "The port used for internal connections on the endpoint. Acceptable values are between 1 and 65535.", + "minimum": 1, + "maximum": 65534 + }, + "protocol": { + "type": "string", + "description": "The reference to the transport protocol used by the load balancing rule.", + "enum": [ + "tcp", + "udp" + ], + "x-ms-enum": { + "name": "protocol", + "modelAsString": true + } + }, + "probePort": { + "type": "integer", + "format": "int32", + "description": "The prob port used by the load balancing rule. Acceptable values are between 1 and 65535.", + "minimum": 1, + "maximum": 65534 + }, + "probeProtocol": { + "type": "string", + "description": "the reference to the load balancer probe used by the load balancing rule.", + "enum": [ + "tcp", + "http", + "https" + ], + "x-ms-enum": { + "name": "probeProtocol", + "modelAsString": true + } + }, + "probeRequestPath": { + "type": "string", + "description": "The probe request path. Only supported for HTTP/HTTPS probes." + } + }, + "description": "Describes a load balancing rule." + }, + "ManagedCluster": { + "type": "object", + "description": "The manged cluster resource\n", + "allOf": [ + { + "$ref": "#/definitions/Resource" + }, + { + "type": "object" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ManagedClusterProperties", + "description": "The managed cluster resource properties" + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "The sku of the managed cluster" + } + } + }, + "ManagedClusterCodeVersionListResult": { + "type": "array", + "items": { + "$ref": "#/definitions/ManagedClusterCodeVersionResult" + }, + "description": "The list results of the Service Fabric runtime versions." + }, + "ManagedClusterCodeVersionResult": { + "properties": { + "id": { + "type": "string", + "description": "The identification of the result" + }, + "name": { + "type": "string", + "description": "The name of the result" + }, + "type": { + "type": "string", + "description": "The result resource type" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ManagedClusterVersionDetails" + } + }, + "description": "The result of the Service Fabric runtime versions" + }, + "ManagedClusterListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ManagedCluster" + } + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "Managed Cluster list results" + }, + "ManagedClusterProperties": { + "required": [ + "dnsName", + "adminUserName" + ], + "properties": { + "dnsName": { + "type": "string", + "description": "The cluster dns name." + }, + "fqdn": { + "type": "string", + "description": "The fully qualified domain name associated with the public load balancer of the cluster.", + "readOnly": true + }, + "ipv4Address": { + "type": "string", + "description": "The IPv4 address associated with the public load balancer of the cluster.", + "readOnly": true + }, + "clusterId": { + "type": "string", + "description": "A service generated unique identifier for the cluster resource.", + "readOnly": true + }, + "clusterState": { + "readOnly": true, + "$ref": "#/definitions/ClusterState", + "description": "The current state of the cluster." + }, + "clusterCertificateThumbprints": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of thumbprints of the cluster certificates.", + "readOnly": true + }, + "clientConnectionPort": { + "type": "integer", + "format": "int32", + "description": "The port used for client connections to the cluster.", + "default": 19000 + }, + "httpGatewayConnectionPort": { + "type": "integer", + "format": "int32", + "description": "The port used for HTTP connections to the cluster.", + "default": 19080 + }, + "adminUserName": { + "type": "string", + "description": "VM admin user name." + }, + "adminPassword": { + "type": "string", + "x-ms-secret": true, + "format": "password", + "description": "VM admin user password." + }, + "loadBalancingRules": { + "type": "array", + "items": { + "$ref": "#/definitions/LoadBalancingRule" + }, + "description": "Load balancing rules that are applied to the public load balancer of the cluster." + }, + "allowRdpAccess": { + "type": "boolean", + "description": "Setting this to true enables RDP access to the VM. The default NSG rule opens RDP port to internet which can be overridden with custom Network Security Rules. The default value for this setting is false." + }, + "networkSecurityRules": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkSecurityRule" + }, + "description": "Custom Network Security Rules that are applied to the virtual network of the cluster." + }, + "clients": { + "type": "array", + "items": { + "$ref": "#/definitions/ClientCertificate" + }, + "description": "Client certificates that are allowed to manage the cluster." + }, + "azureActiveDirectory": { + "$ref": "#/definitions/AzureActiveDirectory", + "description": "The AAD authentication settings of the cluster." + }, + "fabricSettings": { + "type": "array", + "items": { + "$ref": "#/definitions/SettingsSectionDescription" + }, + "description": "The list of custom fabric settings to configure the cluster." + }, + "provisioningState": { + "$ref": "#/definitions/ManagedResourceProvisioningState", + "readOnly": true, + "description": "The provisioning state of the managed cluster resource." + }, + "clusterCodeVersion": { + "type": "string", + "description": "The Service Fabric runtime version of the cluster. This property is required when **clusterUpgradeMode** is set to 'Manual'. To get list of available Service Fabric versions for new clusters use [ClusterVersion API](./ClusterVersion.md). To get the list of available version for existing clusters use **availableClusterVersions**." + }, + "clusterUpgradeMode": { + "$ref": "#/definitions/ClusterUpgradeMode" + }, + "clusterUpgradeCadence": { + "$ref": "#/definitions/ClusterUpgradeCadence", + "description": "Indicates when new cluster runtime version upgrades will be applied after they are released. By default is Wave0. Only applies when **clusterUpgradeMode** is set to 'Automatic'." + }, + "addonFeatures": { + "type": "array", + "items": { + "$ref": "#/definitions/ManagedClusterAddOnFeature" + }, + "description": "List of add-on features to enable on the cluster." + }, + "enableAutoOSUpgrade": { + "type": "boolean", + "description": "Setting this to true enables automatic OS upgrade for the node types that are created using any platform OS image with version 'latest'. The default value for this setting is false." + }, + "zonalResiliency": { + "type": "boolean", + "description": "Indicates if the cluster has zone resiliency.", + "default": false + }, + "applicationTypeVersionsCleanupPolicy": { + "$ref": "#/definitions/ApplicationTypeVersionsCleanupPolicy", + "description": "The policy used to clean up unused versions." + } + }, + "description": "Describes the managed cluster resource properties." + }, + "ManagedClusterUpdateParameters": { + "properties": { + "tags": { + "type": "object", + "description": "Managed cluster update parameters", + "additionalProperties": { + "type": "string" + } + } + }, + "description": "Managed cluster update request" + }, + "ManagedClusterVersionDetails": { + "properties": { + "clusterCodeVersion": { + "type": "string", + "description": "The Service Fabric runtime version of the cluster." + }, + "supportExpiryUtc": { + "type": "string", + "description": "The date of expiry of support of the version." + }, + "osType": { + "$ref": "#/definitions/OsType" + } + }, + "description": "The detail of the Service Fabric runtime version result" + }, + "NetworkSecurityRule": { + "required": [ + "name", + "protocol", + "access", + "priority", + "direction" + ], + "properties": { + "name": { + "type": "string", + "description": "Network security rule name." + }, + "description": { + "type": "string", + "description": "Network security rule description." + }, + "protocol": { + "type": "string", + "description": "Network protocol this rule applies to.", + "enum": [ + "http", + "https", + "tcp", + "udp", + "icmp", + "ah", + "esp" + ], + "x-ms-enum": { + "name": "nsgProtocol", + "modelAsString": true + } + }, + "sourceAddressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The CIDR or source IP ranges." + }, + "destinationAddressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The destination address prefixes. CIDR or destination IP ranges." + }, + "sourcePortRanges": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The source port ranges." + }, + "destinationPortRanges": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The destination port ranges." + }, + "access": { + "type": "string", + "description": "The network traffic is allowed or denied.", + "enum": [ + "allow", + "deny" + ], + "x-ms-enum": { + "name": "access", + "modelAsString": true + } + }, + "priority": { + "type": "integer", + "format": "int32", + "description": "The priority of the rule. The value can be in the range 1000 to 3000. Values outside this range are reserved for Service Fabric ManagerCluster Resource Provider. The priority number must be unique for each rule in the collection. The lower the priority number, the higher the priority of the rule.", + "minimum": 1000, + "maximum": 3000 + }, + "direction": { + "type": "string", + "description": "Network security rule direction.", + "enum": [ + "inbound", + "outbound" + ], + "x-ms-enum": { + "name": "direction", + "modelAsString": true + } + } + }, + "description": "Describes a network security rule." + }, + "OsType": { + "type": "string", + "description": "Cluster operating system, the default will be Windows", + "enum": [ + "Windows" + ] + }, + "Sku": { + "required": [ + "name" + ], + "properties": { + "name": { + "$ref": "#/definitions/SkuName", + "description": "Sku Name." + } + }, + "description": "Service Fabric managed cluster Sku definition" + }, + "SkuName": { + "type": "string", + "description": "Sku Name.", + "enum": [ + "Basic", + "Standard" + ], + "x-ms-enum": { + "name": "SkuName", + "modelAsString": true, + "values": [ + { + "value": "Basic", + "description": "Basic requires a minimum of 3 nodes and allows only 1 node type." + }, + { + "value": "Standard", + "description": "Requires a minimum of 5 nodes and allows 1 or more node type." + } + ] + } + }, + "AvailableOperationDisplay": { + "properties": { + "provider": { + "type": "string", + "description": "The name of the provider." + }, + "resource": { + "type": "string", + "description": "The resource on which the operation is performed" + }, + "operation": { + "type": "string", + "description": "The operation that can be performed." + }, + "description": { + "type": "string", + "description": "Operation description" + } + }, + "description": "Operation supported by the Service Fabric resource provider" + }, + "ErrorModel": { + "properties": { + "error": { + "$ref": "#/definitions/ErrorModelError", + "description": "The error details." + } + }, + "description": "The structure of the error." + }, + "ErrorModelError": { + "properties": { + "code": { + "type": "string", + "description": "The error code." + }, + "message": { + "type": "string", + "description": "The error message." + } + }, + "description": "The error details." + }, + "ManagedResourceProvisioningState": { + "type": "string", + "description": "The provisioning state of the managed resource.", + "enum": [ + "None", + "Creating", + "Created", + "Updating", + "Succeeded", + "Failed", + "Canceled", + "Deleting", + "Deleted", + "Other" + ], + "x-ms-enum": { + "name": "ManagedResourceProvisioningState", + "modelAsString": true + } + }, + "OperationListResult": { + "properties": { + "value": { + "type": "array", + "description": "List of operations supported by the Service Fabric resource provider.", + "items": { + "$ref": "#/definitions/OperationResult" + } + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any.", + "readOnly": true + } + }, + "description": "Describes the result of the request to list Service Fabric resource provider operations." + }, + "OperationResult": { + "properties": { + "name": { + "type": "string", + "description": "The name of the operation." + }, + "isDataAction": { + "type": "boolean", + "description": "Indicates whether the operation is a data action" + }, + "display": { + "$ref": "#/definitions/AvailableOperationDisplay", + "description": "The object that represents the operation." + }, + "origin": { + "type": "string", + "description": "Origin result" + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "Available operation list result" + }, + "Resource": { + "required": [ + "location" + ], + "properties": { + "id": { + "type": "string", + "description": "Azure resource identifier.", + "readOnly": true + }, + "name": { + "type": "string", + "description": "Azure resource name.", + "readOnly": true + }, + "type": { + "type": "string", + "description": "Azure resource type.", + "readOnly": true + }, + "location": { + "type": "string", + "description": "Azure resource location.", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "tags": { + "type": "object", + "description": "Azure resource tags.", + "additionalProperties": { + "type": "string" + } + }, + "etag": { + "type": "string", + "description": "Azure resource etag.", + "readOnly": true + }, + "systemData": { + "$ref": "#/definitions/SystemData" + } + }, + "description": "The resource model definition.", + "x-ms-azure-resource": true + }, + "SettingsParameterDescription": { + "required": [ + "name", + "value" + ], + "properties": { + "name": { + "type": "string", + "description": "The parameter name of fabric setting." + }, + "value": { + "type": "string", + "description": "The parameter value of fabric setting." + } + }, + "description": "Describes a parameter in fabric settings of the cluster." + }, + "SettingsSectionDescription": { + "required": [ + "name", + "parameters" + ], + "properties": { + "name": { + "type": "string", + "description": "The section name of the fabric settings." + }, + "parameters": { + "type": "array", + "description": "The collection of parameters in the section.", + "items": { + "$ref": "#/definitions/SettingsParameterDescription" + } + } + }, + "description": "Describes a section in the fabric settings of the cluster." + }, + "SystemData": { + "description": "Metadata pertaining to creation and last modification of the resource.", + "type": "object", + "readOnly": true, + "properties": { + "createdBy": { + "type": "string", + "description": "The identity that created the resource." + }, + "createdByType": { + "type": "string", + "description": "The type of identity that created the resource." + }, + "createdAt": { + "type": "string", + "format": "date-time", + "description": "The timestamp of resource creation (UTC)." + }, + "lastModifiedBy": { + "type": "string", + "description": "The identity that last modified the resource." + }, + "lastModifiedByType": { + "type": "string", + "description": "The type of identity that last modified the resource." + }, + "lastModifiedAt": { + "type": "string", + "format": "date-time", + "description": "The timestamp of resource last modification (UTC)." + } + } + } + }, + "parameters": { + "api-version": { + "name": "api-version", + "in": "query", + "description": "The version of the Service Fabric resource provider API. This is a required parameter and it's value must be \"2021-05-01\" for this specification.", + "required": true, + "type": "string", + "enum": [ + "2021-05-01" + ], + "x-ms-parameter-location": "client" + }, + "clusterNameParameter": { + "name": "clusterName", + "in": "path", + "description": "The name of the cluster resource.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "clusterVersion": { + "name": "clusterVersion", + "in": "path", + "description": "The cluster code version.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "environment": { + "name": "environment", + "in": "path", + "description": "The operating system of the cluster. The default means all.", + "required": true, + "type": "string", + "enum": [ + "Windows" + ], + "x-ms-parameter-location": "method" + }, + "locationForClusterCodeVersions": { + "name": "location", + "in": "path", + "description": "The location for the cluster code versions. This is different from cluster location.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "subscriptionId": { + "name": "subscriptionId", + "in": "path", + "description": "The customer subscription identifier.", + "required": true, + "type": "string", + "x-ms-parameter-location": "client" + } + } +} diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/nodetype.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/nodetype.json new file mode 100644 index 000000000000..6805cc9822dd --- /dev/null +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/nodetype.json @@ -0,0 +1,1029 @@ +{ + "swagger": "2.0", + "info": { + "title": "ServiceFabricManagementClient", + "description": "Azure Service Fabric Resource Provider API Client", + "version": "2021-05-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "securityDefinitions": { + "azure_auth": { + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "type": "oauth2" + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "paths": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedClusters/{clusterName}/nodeTypes": { + "get": { + "operationId": "NodeTypes_ListByManagedClusters", + "summary": "Gets the list of Node types of the specified managed cluster.", + "description": "Gets all Node types of the specified managed cluster.", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "tags": [ + "NodeType" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List node type of the specified managed cluster": { + "$ref": "./examples/NodeTypeListOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/NodeTypeListResult" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedClusters/{clusterName}/nodeTypes/{nodeTypeName}/restart": { + "post": { + "tags": [ + "NodeType" + ], + "operationId": "NodeTypes_Restart", + "summary": "Restarts one or more nodes on the node type.", + "description": "Restarts one or more nodes on the node type. It will disable the fabric nodes, trigger a restart on the VMs and activate the nodes back again.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/nodeTypeNameParameter" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "name": "parameters", + "in": "body", + "description": "parameters for restart action.", + "required": true, + "schema": { + "$ref": "#/definitions/NodeTypeActionParameters" + }, + "x-ms-parameter-location": "method" + } + ], + "x-ms-examples": { + "Restart nodes": { + "$ref": "./examples/RestartNodes_example.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "responses": { + "202": { + "description": "The request was accepted and the operation will complete asynchronously." + }, + "200": { + "description": "The operation completed successfully." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedClusters/{clusterName}/nodeTypes/{nodeTypeName}/reimage": { + "post": { + "tags": [ + "NodeType" + ], + "operationId": "NodeTypes_Reimage", + "summary": "Reimages one or more nodes on the node type.", + "description": "Reimages one or more nodes on the node type. It will disable the fabric nodes, trigger a reimage on the VMs and activate the nodes back again.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/nodeTypeNameParameter" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "name": "parameters", + "in": "body", + "description": "parameters for reimage action.", + "required": true, + "schema": { + "$ref": "#/definitions/NodeTypeActionParameters" + }, + "x-ms-parameter-location": "method" + } + ], + "x-ms-examples": { + "Reimage nodes": { + "$ref": "./examples/ReimageNodes_example.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "responses": { + "202": { + "description": "The request was accepted and the operation will complete asynchronously." + }, + "200": { + "description": "The operation completed successfully." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedClusters/{clusterName}/nodeTypes/{nodeTypeName}/deleteNode": { + "post": { + "tags": [ + "NodeType" + ], + "operationId": "NodeTypes_DeleteNode", + "summary": "Deletes one or more nodes on the node type.", + "description": "Deletes one or more nodes on the node type. It will disable the fabric nodes, trigger a delete on the VMs and removes the state from the cluster.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/nodeTypeNameParameter" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "name": "parameters", + "in": "body", + "description": "parameters for delete action.", + "required": true, + "schema": { + "$ref": "#/definitions/NodeTypeActionParameters" + }, + "x-ms-parameter-location": "method" + } + ], + "x-ms-examples": { + "Delete nodes": { + "$ref": "./examples/DeleteNodes_example.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "responses": { + "202": { + "description": "The request was accepted and the operation will complete asynchronously." + }, + "200": { + "description": "The operation completed successfully." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedClusters/{clusterName}/nodeTypes/{nodeTypeName}": { + "get": { + "tags": [ + "NodeType" + ], + "operationId": "NodeTypes_Get", + "summary": "Gets a Service Fabric node type.", + "description": "Get a Service Fabric node type of a given managed cluster.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/nodeTypeNameParameter" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Get a node type": { + "$ref": "./examples/NodeTypeGetOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/NodeType" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "put": { + "tags": [ + "NodeType" + ], + "operationId": "NodeTypes_CreateOrUpdate", + "summary": "Creates or updates a Service Fabric node type.", + "description": "Create or update a Service Fabric node type of a given managed cluster.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/nodeTypeNameParameter" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "name": "parameters", + "in": "body", + "description": "The node type resource.", + "required": true, + "schema": { + "$ref": "#/definitions/NodeType" + }, + "x-ms-parameter-location": "method" + } + ], + "x-ms-examples": { + "Put a node type with minimum parameters": { + "$ref": "./examples/NodeTypePutOperation_example_min.json" + }, + "Put a node type with maximum parameters": { + "$ref": "./examples/NodeTypePutOperation_example_max.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/NodeType" + } + }, + "202": { + "description": "The request was accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/NodeType" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "patch": { + "tags": [ + "NodeType" + ], + "operationId": "NodeTypes_Update", + "summary": "Update the tags of a node type resource of a given managed cluster.", + "description": "Update the configuration of a node type of a given managed cluster, only updating tags.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/nodeTypeNameParameter" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "name": "parameters", + "in": "body", + "description": "The parameters to update the node type configuration.", + "required": true, + "schema": { + "$ref": "#/definitions/NodeTypeUpdateParameters" + }, + "x-ms-parameter-location": "method" + } + ], + "x-ms-examples": { + "Patch a node type": { + "$ref": "./examples/NodeTypePatchOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/NodeType" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "delete": { + "tags": [ + "NodeType" + ], + "operationId": "NodeTypes_Delete", + "summary": "Deletes a Service Fabric node type.", + "description": "Delete a Service Fabric node type of a given managed cluster.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/nodeTypeNameParameter" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Delete a node type": { + "$ref": "./examples/NodeTypeDeleteOperation_example.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "responses": { + "202": { + "description": "The request was accepted and the operation will complete asynchronously." + }, + "204": { + "description": "The resource was not found." + }, + "200": { + "description": "The operation completed successfully." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + } + }, + "definitions": { + "DiskType": { + "type": "string", + "description": "Managed data disk type. IOPS and throughput are given by the disk size, to see more information go to https://docs.microsoft.com/en-us/azure/virtual-machines/disks-types.\n", + "enum": [ + "Standard_LRS", + "StandardSSD_LRS", + "Premium_LRS" + ], + "default": "StandardSSD_LRS", + "x-ms-enum": { + "name": "DiskType", + "modelAsString": true, + "values": [ + { + "value": "Standard_LRS", + "description": "Standard HDD locally redundant storage. Best for backup, non-critical, and infrequent access." + }, + { + "value": "StandardSSD_LRS", + "description": "Standard SSD locally redundant storage. Best for web servers, lightly used enterprise applications and dev/test." + }, + { + "value": "Premium_LRS", + "description": "Premium SSD locally redundant storage. Best for production and performance sensitive workloads." + } + ] + } + }, + "ManagedProxyResource": { + "properties": { + "id": { + "type": "string", + "description": "Azure resource identifier.", + "readOnly": true + }, + "name": { + "type": "string", + "description": "Azure resource name.", + "readOnly": true + }, + "type": { + "type": "string", + "description": "Azure resource type.", + "readOnly": true + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Azure resource tags.", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "systemData": { + "$ref": "#/definitions/SystemData" + } + }, + "description": "The resource model definition for proxy-only resource.", + "x-ms-azure-resource": true + }, + "NodeType": { + "allOf": [ + { + "$ref": "#/definitions/ManagedProxyResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NodeTypeProperties", + "description": "The node type properties" + } + }, + "description": "Describes a node type in the cluster, each node type represents sub set of nodes in the cluster." + }, + "NodeTypeActionParameters": { + "required": [ + "nodes" + ], + "properties": { + "nodes": { + "description": "List of node names from the node type.", + "type": "array", + "items": { + "type": "string" + } + }, + "force": { + "description": "Force the action to go through.", + "type": "boolean" + } + }, + "description": "Parameters for Node type action." + }, + "NodeTypeProperties": { + "required": [ + "isPrimary", + "vmInstanceCount", + "dataDiskSizeGB" + ], + "properties": { + "isPrimary": { + "type": "boolean", + "description": "The node type on which system services will run. Only one node type should be marked as primary. Primary node type cannot be deleted or changed for existing clusters." + }, + "vmInstanceCount": { + "type": "integer", + "format": "int32", + "description": "The number of nodes in the node type.", + "minimum": 1, + "maximum": 2147483647 + }, + "dataDiskSizeGB": { + "type": "integer", + "format": "int32", + "description": "Disk size for each vm in the node type in GBs." + }, + "dataDiskType": { + "$ref": "#/definitions/DiskType" + }, + "placementProperties": { + "type": "object", + "description": "The placement tags applied to nodes in the node type, which can be used to indicate where certain services (workload) should run.", + "additionalProperties": { + "type": "string", + "description": "Placement tag value" + } + }, + "capacities": { + "type": "object", + "description": "The capacity tags applied to the nodes in the node type, the cluster resource manager uses these tags to understand how much resource a node has.", + "additionalProperties": { + "type": "string", + "description": "Capacity tag value" + } + }, + "applicationPorts": { + "$ref": "#/definitions/EndpointRangeDescription", + "description": "The range of ports from which cluster assigned port to Service Fabric applications." + }, + "ephemeralPorts": { + "$ref": "#/definitions/EndpointRangeDescription", + "description": "The range of ephemeral ports that nodes in this node type should be configured with." + }, + "vmSize": { + "type": "string", + "description": "The size of virtual machines in the pool. All virtual machines in a pool are the same size. For example, Standard_D3." + }, + "vmImagePublisher": { + "type": "string", + "description": "The publisher of the Azure Virtual Machines Marketplace image. For example, Canonical or MicrosoftWindowsServer." + }, + "vmImageOffer": { + "type": "string", + "description": "The offer type of the Azure Virtual Machines Marketplace image. For example, UbuntuServer or WindowsServer." + }, + "vmImageSku": { + "type": "string", + "description": "The SKU of the Azure Virtual Machines Marketplace image. For example, 14.04.0-LTS or 2012-R2-Datacenter." + }, + "vmImageVersion": { + "type": "string", + "description": "The version of the Azure Virtual Machines Marketplace image. A value of 'latest' can be specified to select the latest version of an image. If omitted, the default is 'latest'." + }, + "vmSecrets": { + "type": "array", + "title": "virtual machine secretes.", + "description": "The secrets to install in the virtual machines.", + "items": { + "$ref": "#/definitions/VaultSecretGroup" + } + }, + "vmExtensions": { + "type": "array", + "title": "virtual machine extensions.", + "description": "Set of extensions that should be installed onto the virtual machines.", + "items": { + "$ref": "#/definitions/VMSSExtension" + } + }, + "vmManagedIdentity": { + "$ref": "#/definitions/VmManagedIdentity" + }, + "isStateless": { + "type": "boolean", + "description": "Indicates if the node type can only host Stateless workloads.", + "default": false + }, + "multiplePlacementGroups": { + "type": "boolean", + "description": "Indicates if scale set associated with the node type can be composed of multiple placement groups.", + "default": false + }, + "provisioningState": { + "$ref": "#/definitions/ManagedResourceProvisioningState", + "readOnly": true, + "description": "The provisioning state of the managed cluster resource." + } + }, + "description": "Describes a node type in the cluster, each node type represents sub set of nodes in the cluster." + }, + "NodeTypeListResult": { + "properties": { + "value": { + "type": "array", + "title": "node type list value.", + "description": "The list of node types.", + "items": { + "$ref": "#/definitions/NodeType" + } + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "Node type list results" + }, + "NodeTypeUpdateParameters": { + "properties": { + "tags": { + "type": "object", + "description": "Node type update parameters", + "additionalProperties": { + "type": "string" + } + } + }, + "description": "Node type update request" + }, + "SubResource": { + "properties": { + "id": { + "type": "string", + "description": "Azure resource identifier." + } + }, + "description": "Azure resource identifier.", + "x-ms-azure-resource": true + }, + "VaultCertificate": { + "required": [ + "certificateUrl", + "certificateStore" + ], + "properties": { + "certificateUrl": { + "type": "string", + "description": "This is the URL of a certificate that has been uploaded to Key Vault as a secret. For adding a secret to the Key Vault, see [Add a key or secret to the key vault](https://docs.microsoft.com/azure/key-vault/key-vault-get-started/#add). In this case, your certificate needs to be It is the Base64 encoding of the following JSON Object which is encoded in UTF-8:

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

    For Linux VMs, the certificate file is placed under the /var/lib/waagent directory, with the file name .crt for the X509 certificate file and .prv for private key. Both of these files are .pem formatted." + } + }, + "description": "Describes a single certificate reference in a Key Vault, and where the certificate should reside on the VM." + }, + "VaultSecretGroup": { + "required": [ + "sourceVault", + "vaultCertificates" + ], + "properties": { + "sourceVault": { + "$ref": "#/definitions/SubResource", + "description": "The relative URL of the Key Vault containing all of the certificates in VaultCertificates." + }, + "vaultCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/VaultCertificate" + }, + "description": "The list of key vault references in SourceVault which contain certificates." + } + }, + "description": "Specifies set of certificates that should be installed onto the virtual machines." + }, + "VmManagedIdentity": { + "properties": { + "userAssignedIdentities": { + "type": "array", + "description": "The list of user identities associated with the virtual machine scale set under the node type. Each entry will be an ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.", + "items": { + "type": "string" + } + } + }, + "description": "Identities for the virtual machine scale set under the node type." + }, + "VMSSExtension": { + "required": [ + "name", + "properties" + ], + "properties": { + "name": { + "type": "string", + "description": "The name of the extension." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VMSSExtensionProperties", + "description": "Describes the properties of a Virtual Machine Scale Set Extension." + } + }, + "description": "Specifies set of extensions that should be installed onto the virtual machines." + }, + "VMSSExtensionProperties": { + "required": [ + "publisher", + "type", + "typeHandlerVersion" + ], + "properties": { + "publisher": { + "type": "string", + "description": "The name of the extension handler publisher." + }, + "type": { + "type": "string", + "description": "Specifies the type of the extension; an example is \"CustomScriptExtension\"." + }, + "typeHandlerVersion": { + "type": "string", + "description": "Specifies the version of the script handler." + }, + "autoUpgradeMinorVersion": { + "type": "boolean", + "description": "Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true." + }, + "settings": { + "type": "object", + "description": "Json formatted public settings for the extension." + }, + "protectedSettings": { + "type": "object", + "description": "The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all." + }, + "forceUpdateTag": { + "type": "string", + "description": "If a value is provided and is different from the previous value, the extension handler will be forced to update even if the extension configuration has not changed." + }, + "provisionAfterExtensions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Collection of extension names after which this extension needs to be provisioned." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state, which only appears in the response." + } + }, + "description": "Describes the properties of a Virtual Machine Scale Set Extension." + }, + "AvailableOperationDisplay": { + "properties": { + "provider": { + "type": "string", + "description": "The name of the provider." + }, + "resource": { + "type": "string", + "description": "The resource on which the operation is performed" + }, + "operation": { + "type": "string", + "description": "The operation that can be performed." + }, + "description": { + "type": "string", + "description": "Operation description" + } + }, + "description": "Operation supported by the Service Fabric resource provider" + }, + "EndpointRangeDescription": { + "required": [ + "endPort", + "startPort" + ], + "properties": { + "startPort": { + "type": "integer", + "format": "int32", + "description": "Starting port of a range of ports" + }, + "endPort": { + "type": "integer", + "format": "int32", + "description": "End port of a range of ports" + } + }, + "description": "Port range details" + }, + "ErrorModel": { + "properties": { + "error": { + "$ref": "#/definitions/ErrorModelError", + "description": "The error details." + } + }, + "description": "The structure of the error." + }, + "ErrorModelError": { + "properties": { + "code": { + "type": "string", + "description": "The error code." + }, + "message": { + "type": "string", + "description": "The error message." + } + }, + "description": "The error details." + }, + "ManagedResourceProvisioningState": { + "type": "string", + "description": "The provisioning state of the managed resource.", + "enum": [ + "None", + "Creating", + "Created", + "Updating", + "Succeeded", + "Failed", + "Canceled", + "Deleting", + "Deleted", + "Other" + ], + "x-ms-enum": { + "name": "ManagedResourceProvisioningState", + "modelAsString": true + } + }, + "OperationResult": { + "properties": { + "name": { + "type": "string", + "description": "The name of the operation." + }, + "isDataAction": { + "type": "boolean", + "description": "Indicates whether the operation is a data action" + }, + "display": { + "$ref": "#/definitions/AvailableOperationDisplay", + "description": "The object that represents the operation." + }, + "origin": { + "type": "string", + "description": "Origin result" + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "Available operation list result" + }, + "SystemData": { + "description": "Metadata pertaining to creation and last modification of the resource.", + "type": "object", + "readOnly": true, + "properties": { + "createdBy": { + "type": "string", + "description": "The identity that created the resource." + }, + "createdByType": { + "type": "string", + "description": "The type of identity that created the resource." + }, + "createdAt": { + "type": "string", + "format": "date-time", + "description": "The timestamp of resource creation (UTC)." + }, + "lastModifiedBy": { + "type": "string", + "description": "The identity that last modified the resource." + }, + "lastModifiedByType": { + "type": "string", + "description": "The type of identity that last modified the resource." + }, + "lastModifiedAt": { + "type": "string", + "format": "date-time", + "description": "The timestamp of resource last modification (UTC)." + } + } + } + }, + "parameters": { + "api-version": { + "name": "api-version", + "in": "query", + "description": "The version of the Service Fabric resource provider API. This is a required parameter and it's value must be \"2021-05-01\" for this specification.", + "required": true, + "type": "string", + "enum": [ + "2021-05-01" + ], + "x-ms-parameter-location": "client" + }, + "clusterNameParameter": { + "name": "clusterName", + "in": "path", + "description": "The name of the cluster resource.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "nodeTypeNameParameter": { + "name": "nodeTypeName", + "in": "path", + "description": "The name of the node type.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "subscriptionId": { + "name": "subscriptionId", + "in": "path", + "description": "The customer subscription identifier.", + "required": true, + "type": "string", + "x-ms-parameter-location": "client" + } + } +} diff --git a/specification/servicefabricmanagedclusters/resource-manager/readme.azureresourceschema.md b/specification/servicefabricmanagedclusters/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 42ac705cc2d7..000000000000 --- a/specification/servicefabricmanagedclusters/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,26 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-servicefabricmanagedclusters-2021-01-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-servicefabricmanagedclusters-2021-01-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-servicefabricmanagedclusters-2021-01-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ServiceFabricManagedClusters/preview/2021-01-01-preview/managedapplication.json - - Microsoft.ServiceFabricManagedClusters/preview/2021-01-01-preview/managedcluster.json - - Microsoft.ServiceFabricManagedClusters/preview/2021-01-01-preview/nodetype.json - -``` diff --git a/specification/servicefabricmanagedclusters/resource-manager/readme.md b/specification/servicefabricmanagedclusters/resource-manager/readme.md index 71403ec07039..6fd3361617e7 100644 --- a/specification/servicefabricmanagedclusters/resource-manager/readme.md +++ b/specification/servicefabricmanagedclusters/resource-manager/readme.md @@ -27,7 +27,7 @@ These are the global settings for the ServiceFabricManagedClustersManagementClie title: ServiceFabricManagedClustersManagementClient description: Service Fabric Managed Clusters Management Client openapi-type: arm -tag: package-2021-01-preview +tag: package-2021-05 directive: - suppress: ListInOperationName @@ -68,6 +68,16 @@ directive: - Currently systemData is not allowed. ``` +### Tag: package-2021-05 + +These settings apply only when `--tag=package-2021-05` is specified on the command line. + +``` yaml $(tag) == 'package-2021-05' +input-file: +- Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/managedapplication.json +- Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/managedcluster.json +- Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/nodetype.json +``` ### Tag: package-2021-01-preview @@ -115,7 +125,5 @@ csharp: See configuration in [readme.python.md](./readme.python.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/servicefabricmesh/resource-manager/readme.azureresourceschema.md b/specification/servicefabricmesh/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index db5f575e8158..000000000000 --- a/specification/servicefabricmesh/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,36 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-servicefabricmesh-2018-09-01-preview - - tag: schema-servicefabricmesh-2018-07-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-servicefabricmesh-2018-09-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-servicefabricmesh-2018-09-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ServiceFabricMesh/preview/2018-09-01-preview/servicefabricmesh.json - -``` - -### Tag: schema-servicefabricmesh-2018-07-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-servicefabricmesh-2018-07-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ServiceFabricMesh/preview/2018-07-01-preview/servicefabricmesh.json - -``` diff --git a/specification/servicefabricmesh/resource-manager/readme.go.md b/specification/servicefabricmesh/resource-manager/readme.go.md index 7227f9545201..c2e8b74612bf 100644 --- a/specification/servicefabricmesh/resource-manager/readme.go.md +++ b/specification/servicefabricmesh/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: servicefabricmesh clear-output-folder: true ``` diff --git a/specification/servicefabricmesh/resource-manager/readme.md b/specification/servicefabricmesh/resource-manager/readme.md index 4112c128faf2..fc593ecdcf29 100644 --- a/specification/servicefabricmesh/resource-manager/readme.md +++ b/specification/servicefabricmesh/resource-manager/readme.md @@ -77,8 +77,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_service_fabric_mesh'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js servicefabricmesh/resource-manager ``` @@ -172,7 +170,5 @@ regenerate-manager: true generate-interface: true ``` -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/Operations_List.json b/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/Operations_List.json new file mode 100644 index 000000000000..ec3a741ea0b0 --- /dev/null +++ b/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/Operations_List.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.SignalRService/SignalR/read", + "isDataAction": false, + "display": { + "provider": "Microsoft.SignalRService", + "resource": "SignalR", + "operation": "Manage SignalR (read-only)", + "description": "View the resource settings and configurations in the management portal or through API" + }, + "properties": {} + } + ], + "nextLink": "providers/Microsoft.SignalRService?$skipToken={opaqueString}" + } + } + } +} diff --git a/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalRPrivateEndpointConnections_Delete.json b/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalRPrivateEndpointConnections_Delete.json new file mode 100644 index 000000000000..39620e1f840d --- /dev/null +++ b/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalRPrivateEndpointConnections_Delete.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "resourceName": "mySignalRService", + "privateEndpointConnectionName": "mysignalrservice.1fa229cd-bf3f-47f0-8c49-afb36723997e" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.SignalRService/...pathToOperationResult...", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.SignalRService/...pathToOperationStatus..." + } + }, + "204": {} + } +} diff --git a/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalRPrivateEndpointConnections_Get.json b/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalRPrivateEndpointConnections_Get.json new file mode 100644 index 000000000000..fa90b1db509e --- /dev/null +++ b/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalRPrivateEndpointConnections_Get.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "resourceName": "mySignalRService", + "privateEndpointConnectionName": "mysignalrservice.1fa229cd-bf3f-47f0-8c49-afb36723997e" + }, + "responses": { + "200": { + "body": { + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2015-02-03T04:05:06Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2015-02-03T04:05:06Z" + }, + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "actionsRequired": "None" + } + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService/privateEndpointConnections/mysignalrservice.1fa229cd-bf3f-47f0-8c49-afb36723997e", + "name": "mysignalrservice.1fa229cd-bf3f-47f0-8c49-afb36723997e", + "type": "Microsoft.SignalRService/SignalR/privateEndpointConnections" + } + } + } +} diff --git a/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalRPrivateEndpointConnections_List.json b/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalRPrivateEndpointConnections_List.json new file mode 100644 index 000000000000..1c61ebda7c57 --- /dev/null +++ b/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalRPrivateEndpointConnections_List.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "resourceName": "mySignalRService" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2015-02-03T04:05:06Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2015-02-03T04:05:06Z" + }, + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "actionsRequired": "None" + } + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService/privateEndpointConnections/mysignalrservice.1fa229cd-bf3f-47f0-8c49-afb36723997e", + "name": "mysignalrservice.1fa229cd-bf3f-47f0-8c49-afb36723997e", + "type": "Microsoft.SignalRService/SignalR/privateEndpointConnections" + } + ] + } + } + } +} diff --git a/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalRPrivateEndpointConnections_Update.json b/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalRPrivateEndpointConnections_Update.json new file mode 100644 index 000000000000..0bc9bb609289 --- /dev/null +++ b/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalRPrivateEndpointConnections_Update.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "parameters": { + "properties": { + "privateEndpoint": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "actionsRequired": "None" + } + } + }, + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "resourceName": "mySignalRService", + "privateEndpointConnectionName": "mysignalrservice.1fa229cd-bf3f-47f0-8c49-afb36723997e" + }, + "responses": { + "200": { + "body": { + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2015-02-03T04:05:06Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2015-02-03T04:05:06Z" + }, + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "actionsRequired": "None" + } + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService/privateEndpointConnections/mysignalrservice.1fa229cd-bf3f-47f0-8c49-afb36723997e", + "name": "mysignalrservice.1fa229cd-bf3f-47f0-8c49-afb36723997e", + "type": "Microsoft.SignalRService/SignalR/privateEndpointConnections" + }, + "headers": { + "Location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.SignalRService/...pathToOperationResult...", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.SignalRService/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalRPrivateLinkResources_List.json b/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalRPrivateLinkResources_List.json new file mode 100644 index 000000000000..418d181a9d9e --- /dev/null +++ b/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalRPrivateLinkResources_List.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "resourceName": "mySignalRService" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "groupId": "signalr", + "requiredMembers": [ + "signalr" + ], + "requiredZoneNames": [ + "privatelink.service.signalr.net" + ], + "shareablePrivateLinkResourceTypes": [ + { + "name": "site", + "properties": { + "description": "Azure App Service can be used as an upstream", + "groupId": "sites", + "type": "Microsoft.Web/sites" + } + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService/privateLinkResources/myPrivateLink", + "name": "myPrivateLink", + "type": "privateLinkResources" + } + ], + "nextLink": "https://management.azure.com/subscriptions/subid/providers/Microsoft.SignalRService/...pathToMoreResults..." + } + } + } +} diff --git a/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalRSharedPrivateLinkResources_CreateOrUpdate.json b/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalRSharedPrivateLinkResources_CreateOrUpdate.json new file mode 100644 index 000000000000..2020bbae55d4 --- /dev/null +++ b/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalRSharedPrivateLinkResources_CreateOrUpdate.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "parameters": { + "properties": { + "groupId": "sites", + "privateLinkResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.Web/sites/myWebApp", + "requestMessage": "Please approve" + } + }, + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "resourceName": "mySignalRService", + "sharedPrivateLinkResourceName": "upstream" + }, + "responses": { + "200": { + "body": { + "properties": { + "groupId": "sites", + "privateLinkResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.Web/sites/myWebApp", + "provisioningState": "Succeeded", + "requestMessage": "Please approve", + "status": "Approved" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService/privateEndpointConnections/upstream", + "name": "upstream", + "type": "Microsoft.SignalRService/SignalR/privateEndpointConnections" + } + }, + "201": { + "body": { + "properties": { + "groupId": "sites", + "privateLinkResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.Web/sites/myWebApp", + "provisioningState": "Succeeded", + "requestMessage": "Please approve", + "status": "Approved" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService/privateEndpointConnections/upstream", + "name": "upstream", + "type": "Microsoft.SignalRService/SignalR/privateEndpointConnections" + }, + "headers": { + "Location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.SignalRService/...pathToOperationResult...", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.SignalRService/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalRSharedPrivateLinkResources_Delete.json b/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalRSharedPrivateLinkResources_Delete.json new file mode 100644 index 000000000000..a5bc4d4bbc6d --- /dev/null +++ b/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalRSharedPrivateLinkResources_Delete.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "resourceName": "mySignalRService", + "sharedPrivateLinkResourceName": "upstream" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.SignalRService/...pathToOperationResult...", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.SignalRService/...pathToOperationStatus..." + } + }, + "204": {} + } +} diff --git a/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalRSharedPrivateLinkResources_Get.json b/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalRSharedPrivateLinkResources_Get.json new file mode 100644 index 000000000000..e014a42b09b8 --- /dev/null +++ b/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalRSharedPrivateLinkResources_Get.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "resourceName": "mySignalRService", + "sharedPrivateLinkResourceName": "upstream" + }, + "responses": { + "200": { + "body": { + "properties": { + "groupId": "sites", + "privateLinkResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.Web/sites/myWebApp", + "provisioningState": "Succeeded", + "requestMessage": "Please approve", + "status": "Approved" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService/privateEndpointConnections/upstream", + "name": "upstream", + "type": "Microsoft.SignalRService/SignalR/privateEndpointConnections" + } + } + } +} diff --git a/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalRSharedPrivateLinkResources_List.json b/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalRSharedPrivateLinkResources_List.json new file mode 100644 index 000000000000..f8924396dd6e --- /dev/null +++ b/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalRSharedPrivateLinkResources_List.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "resourceName": "mySignalRService" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "groupId": "sites", + "privateLinkResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.Web/sites/myWebApp", + "provisioningState": "Succeeded", + "requestMessage": "Please approve", + "status": "Approved" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService/privateEndpointConnections/upstream", + "name": "upstream", + "type": "Microsoft.SignalRService/SignalR/privateEndpointConnections" + } + ] + } + } + } +} diff --git a/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalR_CheckNameAvailability.json b/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalR_CheckNameAvailability.json new file mode 100644 index 000000000000..5b7d079030ae --- /dev/null +++ b/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalR_CheckNameAvailability.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "location": "eastus", + "parameters": { + "type": "Microsoft.SignalRService/SignalR", + "name": "mySignalRService" + }, + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "nameAvailable": false, + "reason": "AlreadyExists", + "message": "The name is already taken. Please try a different name." + } + } + } +} diff --git a/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalR_CreateOrUpdate.json b/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalR_CreateOrUpdate.json new file mode 100644 index 000000000000..f8465201b7bb --- /dev/null +++ b/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalR_CreateOrUpdate.json @@ -0,0 +1,336 @@ +{ + "parameters": { + "parameters": { + "sku": { + "name": "Standard_S1", + "tier": "Standard", + "capacity": 1 + }, + "properties": { + "tls": { + "clientCertEnabled": false + }, + "features": [ + { + "flag": "ServiceMode", + "value": "Serverless", + "properties": {} + }, + { + "flag": "EnableConnectivityLogs", + "value": "True", + "properties": {} + }, + { + "flag": "EnableMessagingLogs", + "value": "False", + "properties": {} + }, + { + "flag": "EnableLiveTrace", + "value": "False", + "properties": {} + } + ], + "cors": { + "allowedOrigins": [ + "https://foo.com", + "https://bar.com" + ] + }, + "upstream": { + "templates": [ + { + "hubPattern": "*", + "eventPattern": "connect,disconnect", + "categoryPattern": "*", + "urlTemplate": "https://example.com/chat/api/connect", + "auth": { + "type": "ManagedIdentity", + "managedIdentity": { + "resource": "api://example" + } + } + } + ] + }, + "networkACLs": { + "defaultAction": "Deny", + "publicNetwork": { + "allow": [ + "ClientConnection" + ] + }, + "privateEndpoints": [ + { + "name": "mysignalrservice.1fa229cd-bf3f-47f0-8c49-afb36723997e", + "allow": [ + "ServerConnection" + ] + } + ] + } + }, + "kind": "SignalR", + "identity": { + "type": "SystemAssigned" + }, + "location": "eastus", + "tags": { + "key1": "value1" + } + }, + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "resourceName": "mySignalRService" + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "Standard_S1", + "tier": "Standard", + "size": "S1", + "capacity": 1 + }, + "properties": { + "provisioningState": "Succeeded", + "externalIP": "10.0.0.1", + "hostName": "mysignalrservice.service.signalr.net", + "publicPort": 443, + "serverPort": 443, + "version": "1.0", + "privateEndpointConnections": [ + { + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2015-02-03T04:05:06Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2015-02-03T04:05:06Z" + }, + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "actionsRequired": "None" + } + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService/privateEndpointConnections/mysignalrservice.1fa229cd-bf3f-47f0-8c49-afb36723997e", + "name": "mysignalrservice.1fa229cd-bf3f-47f0-8c49-afb36723997e", + "type": "Microsoft.SignalRService/SignalR/privateEndpointConnections" + } + ], + "tls": { + "clientCertEnabled": true + }, + "features": [ + { + "flag": "ServiceMode", + "value": "Serverless", + "properties": {} + }, + { + "flag": "EnableConnectivityLogs", + "value": "True", + "properties": {} + }, + { + "flag": "EnableMessagingLogs", + "value": "False", + "properties": {} + }, + { + "flag": "EnableLiveTrace", + "value": "False", + "properties": {} + } + ], + "cors": { + "allowedOrigins": [ + "https://foo.com", + "https://bar.com" + ] + }, + "upstream": { + "templates": [ + { + "urlTemplate": "http://foo.com" + } + ] + }, + "networkACLs": { + "defaultAction": "Deny", + "publicNetwork": { + "allow": [ + "ClientConnection" + ] + }, + "privateEndpoints": [ + { + "name": "mysignalrservice.1fa229cd-bf3f-47f0-8c49-afb36723997e", + "allow": [ + "ServerConnection" + ] + } + ] + } + }, + "kind": "SignalR", + "identity": { + "type": "SystemAssigned", + "principalId": "00000000-0000-0000-0000-000000000000", + "tenantId": "00000000-0000-0000-0000-000000000000" + }, + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2015-02-03T04:05:06Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2015-02-03T04:05:06Z" + }, + "location": "eastus", + "tags": { + "key1": "value1" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService", + "name": "mySignalRService", + "type": "Microsoft.SignalRService/SignalR" + } + }, + "201": { + "body": { + "sku": { + "name": "Standard_S1", + "tier": "Standard", + "size": "S1", + "capacity": 1 + }, + "properties": { + "provisioningState": "Succeeded", + "externalIP": "10.0.0.1", + "hostName": "mysignalrservice.service.signalr.net", + "publicPort": 443, + "serverPort": 443, + "version": "1.0", + "privateEndpointConnections": [ + { + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2015-02-03T04:05:06Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2015-02-03T04:05:06Z" + }, + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "actionsRequired": "None" + } + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService/privateEndpointConnections/mysignalrservice.1fa229cd-bf3f-47f0-8c49-afb36723997e", + "name": "mysignalrservice.1fa229cd-bf3f-47f0-8c49-afb36723997e", + "type": "Microsoft.SignalRService/SignalR/privateEndpointConnections" + } + ], + "tls": { + "clientCertEnabled": true + }, + "features": [ + { + "flag": "ServiceMode", + "value": "Serverless", + "properties": {} + }, + { + "flag": "EnableConnectivityLogs", + "value": "True", + "properties": {} + }, + { + "flag": "EnableMessagingLogs", + "value": "False", + "properties": {} + }, + { + "flag": "EnableLiveTrace", + "value": "False", + "properties": {} + } + ], + "cors": { + "allowedOrigins": [ + "https://foo.com", + "https://bar.com" + ] + }, + "upstream": { + "templates": [ + { + "urlTemplate": "http://foo.com" + } + ] + }, + "networkACLs": { + "defaultAction": "Deny", + "publicNetwork": { + "allow": [ + "ClientConnection" + ] + }, + "privateEndpoints": [ + { + "name": "mysignalrservice.1fa229cd-bf3f-47f0-8c49-afb36723997e", + "allow": [ + "ServerConnection" + ] + } + ] + } + }, + "kind": "SignalR", + "identity": { + "type": "SystemAssigned", + "principalId": "00000000-0000-0000-0000-000000000000", + "tenantId": "00000000-0000-0000-0000-000000000000" + }, + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2015-02-03T04:05:06Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2015-02-03T04:05:06Z" + }, + "location": "eastus", + "tags": { + "key1": "value1" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService", + "name": "mySignalRService", + "type": "Microsoft.SignalRService/SignalR" + }, + "headers": { + "Location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.SignalRService/...pathToOperationResult...", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.SignalRService/...pathToOperationStatus..." + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.SignalRService/...pathToOperationResult...", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.SignalRService/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalR_Delete.json b/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalR_Delete.json new file mode 100644 index 000000000000..596b7062ad73 --- /dev/null +++ b/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalR_Delete.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "resourceName": "mySignalRService" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.SignalRService/...pathToOperationResult...", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.SignalRService/...pathToOperationStatus..." + } + }, + "204": {} + } +} diff --git a/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalR_Get.json b/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalR_Get.json new file mode 100644 index 000000000000..244e2f921fe3 --- /dev/null +++ b/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalR_Get.json @@ -0,0 +1,128 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "resourceName": "mySignalRService" + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "Standard_S1", + "tier": "Standard", + "size": "S1", + "capacity": 1 + }, + "properties": { + "provisioningState": "Succeeded", + "externalIP": "10.0.0.1", + "hostName": "mysignalrservice.service.signalr.net", + "publicPort": 443, + "serverPort": 443, + "version": "1.0", + "privateEndpointConnections": [ + { + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2015-02-03T04:05:06Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2015-02-03T04:05:06Z" + }, + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "actionsRequired": "None" + } + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService/privateEndpointConnections/mysignalrservice.1fa229cd-bf3f-47f0-8c49-afb36723997e", + "name": "mysignalrservice.1fa229cd-bf3f-47f0-8c49-afb36723997e", + "type": "Microsoft.SignalRService/SignalR/privateEndpointConnections" + } + ], + "tls": { + "clientCertEnabled": true + }, + "features": [ + { + "flag": "ServiceMode", + "value": "Serverless", + "properties": {} + }, + { + "flag": "EnableConnectivityLogs", + "value": "True", + "properties": {} + }, + { + "flag": "EnableMessagingLogs", + "value": "False", + "properties": {} + }, + { + "flag": "EnableLiveTrace", + "value": "False", + "properties": {} + } + ], + "cors": { + "allowedOrigins": [ + "https://foo.com", + "https://bar.com" + ] + }, + "upstream": { + "templates": [ + { + "urlTemplate": "http://foo.com" + } + ] + }, + "networkACLs": { + "defaultAction": "Deny", + "publicNetwork": { + "allow": [ + "ClientConnection" + ] + }, + "privateEndpoints": [ + { + "name": "mysignalrservice.1fa229cd-bf3f-47f0-8c49-afb36723997e", + "allow": [ + "ServerConnection" + ] + } + ] + } + }, + "kind": "SignalR", + "identity": { + "type": "SystemAssigned", + "principalId": "00000000-0000-0000-0000-000000000000", + "tenantId": "00000000-0000-0000-0000-000000000000" + }, + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2015-02-03T04:05:06Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2015-02-03T04:05:06Z" + }, + "location": "eastus", + "tags": { + "key1": "value1" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService", + "name": "mySignalRService", + "type": "Microsoft.SignalRService/SignalR" + } + } + } +} diff --git a/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalR_ListByResourceGroup.json b/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalR_ListByResourceGroup.json new file mode 100644 index 000000000000..a2583a9e5df1 --- /dev/null +++ b/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalR_ListByResourceGroup.json @@ -0,0 +1,131 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "sku": { + "name": "Standard_S1", + "tier": "Standard", + "size": "S1", + "capacity": 1 + }, + "properties": { + "provisioningState": "Succeeded", + "externalIP": "10.0.0.1", + "hostName": "mysignalrservice.service.signalr.net", + "publicPort": 443, + "serverPort": 443, + "version": "1.0", + "privateEndpointConnections": [ + { + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2015-02-03T04:05:06Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2015-02-03T04:05:06Z" + }, + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "actionsRequired": "None" + } + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService/privateEndpointConnections/mysignalrservice.1fa229cd-bf3f-47f0-8c49-afb36723997e", + "name": "mysignalrservice.1fa229cd-bf3f-47f0-8c49-afb36723997e", + "type": "Microsoft.SignalRService/SignalR/privateEndpointConnections" + } + ], + "tls": { + "clientCertEnabled": true + }, + "features": [ + { + "flag": "ServiceMode", + "value": "Serverless", + "properties": {} + }, + { + "flag": "EnableConnectivityLogs", + "value": "True", + "properties": {} + }, + { + "flag": "EnableMessagingLogs", + "value": "False", + "properties": {} + }, + { + "flag": "EnableLiveTrace", + "value": "False", + "properties": {} + } + ], + "cors": { + "allowedOrigins": [ + "https://foo.com", + "https://bar.com" + ] + }, + "upstream": { + "templates": [ + { + "urlTemplate": "http://foo.com" + } + ] + }, + "networkACLs": { + "defaultAction": "Deny", + "publicNetwork": { + "allow": [ + "ClientConnection" + ] + }, + "privateEndpoints": [ + { + "name": "mysignalrservice.1fa229cd-bf3f-47f0-8c49-afb36723997e", + "allow": [ + "ServerConnection" + ] + } + ] + } + }, + "kind": "SignalR", + "identity": { + "type": "SystemAssigned", + "principalId": "00000000-0000-0000-0000-000000000000", + "tenantId": "00000000-0000-0000-0000-000000000000" + }, + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2015-02-03T04:05:06Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2015-02-03T04:05:06Z" + }, + "location": "eastus", + "tags": { + "key1": "value1" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService", + "name": "mySignalRService", + "type": "Microsoft.SignalRService/SignalR" + } + ] + } + } + } +} diff --git a/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalR_ListBySubscription.json b/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalR_ListBySubscription.json new file mode 100644 index 000000000000..6c1a2282131a --- /dev/null +++ b/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalR_ListBySubscription.json @@ -0,0 +1,130 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "sku": { + "name": "Standard_S1", + "tier": "Standard", + "size": "S1", + "capacity": 1 + }, + "properties": { + "provisioningState": "Succeeded", + "externalIP": "10.0.0.1", + "hostName": "mysignalrservice.service.signalr.net", + "publicPort": 443, + "serverPort": 443, + "version": "1.0", + "privateEndpointConnections": [ + { + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2015-02-03T04:05:06Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2015-02-03T04:05:06Z" + }, + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "actionsRequired": "None" + } + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService/privateEndpointConnections/mysignalrservice.1fa229cd-bf3f-47f0-8c49-afb36723997e", + "name": "mysignalrservice.1fa229cd-bf3f-47f0-8c49-afb36723997e", + "type": "Microsoft.SignalRService/SignalR/privateEndpointConnections" + } + ], + "tls": { + "clientCertEnabled": true + }, + "features": [ + { + "flag": "ServiceMode", + "value": "Serverless", + "properties": {} + }, + { + "flag": "EnableConnectivityLogs", + "value": "True", + "properties": {} + }, + { + "flag": "EnableMessagingLogs", + "value": "False", + "properties": {} + }, + { + "flag": "EnableLiveTrace", + "value": "False", + "properties": {} + } + ], + "cors": { + "allowedOrigins": [ + "https://foo.com", + "https://bar.com" + ] + }, + "upstream": { + "templates": [ + { + "urlTemplate": "http://foo.com" + } + ] + }, + "networkACLs": { + "defaultAction": "Deny", + "publicNetwork": { + "allow": [ + "ClientConnection" + ] + }, + "privateEndpoints": [ + { + "name": "mysignalrservice.1fa229cd-bf3f-47f0-8c49-afb36723997e", + "allow": [ + "ServerConnection" + ] + } + ] + } + }, + "kind": "SignalR", + "identity": { + "type": "SystemAssigned", + "principalId": "00000000-0000-0000-0000-000000000000", + "tenantId": "00000000-0000-0000-0000-000000000000" + }, + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2015-02-03T04:05:06Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2015-02-03T04:05:06Z" + }, + "location": "eastus", + "tags": { + "key1": "value1" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService", + "name": "mySignalRService", + "type": "Microsoft.SignalRService/SignalR" + } + ] + } + } + } +} diff --git a/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalR_ListKeys.json b/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalR_ListKeys.json new file mode 100644 index 000000000000..560e82caaa42 --- /dev/null +++ b/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalR_ListKeys.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "resourceName": "mySignalRService" + }, + "responses": { + "200": { + "body": {} + } + } +} diff --git a/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalR_RegenerateKey.json b/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalR_RegenerateKey.json new file mode 100644 index 000000000000..178a745fcb9a --- /dev/null +++ b/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalR_RegenerateKey.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "parameters": { + "keyType": "Primary" + }, + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "resourceName": "mySignalRService" + }, + "responses": { + "202": { + "body": {}, + "headers": { + "Location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.SignalRService/...pathToOperationResult...", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.SignalRService/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalR_Restart.json b/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalR_Restart.json new file mode 100644 index 000000000000..5e0ffc783510 --- /dev/null +++ b/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalR_Restart.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "resourceName": "mySignalRService" + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.SignalRService/...pathToOperationResult...", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.SignalRService/...pathToOperationStatus..." + } + }, + "204": {} + } +} diff --git a/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalR_Update.json b/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalR_Update.json new file mode 100644 index 000000000000..a0be57c3231e --- /dev/null +++ b/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/SignalR_Update.json @@ -0,0 +1,214 @@ +{ + "parameters": { + "parameters": { + "sku": { + "name": "Standard_S1", + "tier": "Standard", + "capacity": 1 + }, + "properties": { + "tls": { + "clientCertEnabled": false + }, + "features": [ + { + "flag": "ServiceMode", + "value": "Serverless", + "properties": {} + }, + { + "flag": "EnableConnectivityLogs", + "value": "True", + "properties": {} + }, + { + "flag": "EnableMessagingLogs", + "value": "False", + "properties": {} + }, + { + "flag": "EnableLiveTrace", + "value": "False", + "properties": {} + } + ], + "cors": { + "allowedOrigins": [ + "https://foo.com", + "https://bar.com" + ] + }, + "upstream": { + "templates": [ + { + "hubPattern": "*", + "eventPattern": "connect,disconnect", + "categoryPattern": "*", + "urlTemplate": "https://example.com/chat/api/connect", + "auth": { + "type": "ManagedIdentity", + "managedIdentity": { + "resource": "api://example" + } + } + } + ] + }, + "networkACLs": { + "defaultAction": "Deny", + "publicNetwork": { + "allow": [ + "ClientConnection" + ] + }, + "privateEndpoints": [ + { + "name": "mysignalrservice.1fa229cd-bf3f-47f0-8c49-afb36723997e", + "allow": [ + "ServerConnection" + ] + } + ] + } + }, + "kind": "SignalR", + "identity": { + "type": "SystemAssigned" + }, + "location": "eastus", + "tags": { + "key1": "value1" + } + }, + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "resourceName": "mySignalRService" + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "Standard_S1", + "tier": "Standard", + "size": "S1", + "capacity": 1 + }, + "properties": { + "provisioningState": "Succeeded", + "externalIP": "10.0.0.1", + "hostName": "mysignalrservice.service.signalr.net", + "publicPort": 443, + "serverPort": 443, + "version": "1.0", + "privateEndpointConnections": [ + { + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2015-02-03T04:05:06Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2015-02-03T04:05:06Z" + }, + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "actionsRequired": "None" + } + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService/privateEndpointConnections/mysignalrservice.1fa229cd-bf3f-47f0-8c49-afb36723997e", + "name": "mysignalrservice.1fa229cd-bf3f-47f0-8c49-afb36723997e", + "type": "Microsoft.SignalRService/SignalR/privateEndpointConnections" + } + ], + "tls": { + "clientCertEnabled": true + }, + "features": [ + { + "flag": "ServiceMode", + "value": "Serverless", + "properties": {} + }, + { + "flag": "EnableConnectivityLogs", + "value": "True", + "properties": {} + }, + { + "flag": "EnableMessagingLogs", + "value": "False", + "properties": {} + }, + { + "flag": "EnableLiveTrace", + "value": "False", + "properties": {} + } + ], + "cors": { + "allowedOrigins": [ + "https://foo.com", + "https://bar.com" + ] + }, + "upstream": { + "templates": [ + { + "urlTemplate": "http://foo.com" + } + ] + }, + "networkACLs": { + "defaultAction": "Deny", + "publicNetwork": { + "allow": [ + "ClientConnection" + ] + }, + "privateEndpoints": [ + { + "name": "mysignalrservice.1fa229cd-bf3f-47f0-8c49-afb36723997e", + "allow": [ + "ServerConnection" + ] + } + ] + } + }, + "kind": "SignalR", + "identity": { + "type": "SystemAssigned", + "principalId": "00000000-0000-0000-0000-000000000000", + "tenantId": "00000000-0000-0000-0000-000000000000" + }, + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2015-02-03T04:05:06Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2015-02-03T04:05:06Z" + }, + "location": "eastus", + "tags": { + "key1": "value1" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService", + "name": "mySignalRService", + "type": "Microsoft.SignalRService/SignalR" + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.SignalRService/...pathToOperationResult...", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.SignalRService/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/Usages_List.json b/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/Usages_List.json new file mode 100644 index 000000000000..f037659b666a --- /dev/null +++ b/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/Usages_List.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "location": "eastus", + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.SignalRService/locations/eastus/usages/Usage1", + "currentValue": 0, + "limit": 100, + "name": { + "value": "Usage1", + "localizedValue": "Usage1" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.SignalRService/locations/eastus/usages/Usage2", + "currentValue": 0, + "limit": 100, + "name": { + "value": "Usage2", + "localizedValue": "Usage2" + }, + "unit": "Count" + } + ], + "nextLink": "https://management.azure.com/subscriptions/subid/providers/Microsoft.SignalRService/...pathToMoreResults..." + } + } + } +} diff --git a/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/signalr.json b/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/signalr.json new file mode 100644 index 000000000000..f0a04bb52784 --- /dev/null +++ b/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/signalr.json @@ -0,0 +1,2228 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-04-01-preview", + "title": "SignalRManagementClient", + "description": "REST API for Azure SignalR Service" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/providers/Microsoft.SignalRService/operations": { + "get": { + "tags": [ + "SignalR" + ], + "description": "Lists all of the available REST API operations of the Microsoft.SignalRService provider.", + "operationId": "Operations_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describes the list of operations.", + "schema": { + "$ref": "#/definitions/OperationList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Operations_List": { + "$ref": "./examples/Operations_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.SignalRService/locations/{location}/checkNameAvailability": { + "post": { + "tags": [ + "SignalR" + ], + "description": "Checks that the resource name is valid and is not already in use.", + "operationId": "SignalR_CheckNameAvailability", + "parameters": [ + { + "name": "location", + "in": "path", + "description": "the region", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "Parameters supplied to the operation.", + "required": true, + "schema": { + "$ref": "#/definitions/NameAvailabilityParameters" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describes the name availability.", + "schema": { + "$ref": "#/definitions/NameAvailability" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "SignalR_CheckNameAvailability": { + "$ref": "./examples/SignalR_CheckNameAvailability.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.SignalRService/locations/{location}/usages": { + "get": { + "tags": [ + "SignalR" + ], + "description": "List resource usage quotas by location.", + "operationId": "Usages_List", + "parameters": [ + { + "name": "location", + "in": "path", + "description": "the location like \"eastus\"", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describe the usage quotas of a subscription in specified region.", + "schema": { + "$ref": "#/definitions/SignalRUsageList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Usages_List": { + "$ref": "./examples/Usages_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.SignalRService/signalR": { + "get": { + "tags": [ + "SignalR" + ], + "description": "Handles requests to list all resources in a subscription.", + "operationId": "SignalR_ListBySubscription", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describes the list of resources in the subscription.", + "schema": { + "$ref": "#/definitions/SignalRResourceList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "SignalR_ListBySubscription": { + "$ref": "./examples/SignalR_ListBySubscription.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SignalRService/signalR": { + "get": { + "tags": [ + "SignalR" + ], + "description": "Handles requests to list all resources in a resource group.", + "operationId": "SignalR_ListByResourceGroup", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describes the list of resources in a resourceGroup.", + "schema": { + "$ref": "#/definitions/SignalRResourceList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "SignalR_ListByResourceGroup": { + "$ref": "./examples/SignalR_ListByResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SignalRService/signalR/{resourceName}": { + "get": { + "tags": [ + "SignalR" + ], + "description": "Get the resource and its properties.", + "operationId": "SignalR_Get", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ResourceName" + } + ], + "responses": { + "200": { + "description": "Success. The response describes the corresponding resource.", + "schema": { + "$ref": "#/definitions/SignalRResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "SignalR_Get": { + "$ref": "./examples/SignalR_Get.json" + } + } + }, + "put": { + "tags": [ + "SignalR" + ], + "description": "Create or update a resource.", + "operationId": "SignalR_CreateOrUpdate", + "parameters": [ + { + "name": "parameters", + "in": "body", + "description": "Parameters for the create or update operation", + "required": true, + "schema": { + "$ref": "#/definitions/SignalRResource" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ResourceName" + } + ], + "responses": { + "200": { + "description": "Success. The response describes a resource.", + "schema": { + "$ref": "#/definitions/SignalRResource" + } + }, + "201": { + "description": "Created. The response describes the new resource and contains a Location header to query the operation result.", + "schema": { + "$ref": "#/definitions/SignalRResource" + } + }, + "202": { + "description": "Accepted. The response indicates the exiting resource is now updating and contains a Location header to query the operation result.." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "SignalR_CreateOrUpdate": { + "$ref": "./examples/SignalR_CreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "SignalR" + ], + "description": "Operation to delete a resource.", + "operationId": "SignalR_Delete", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ResourceName" + } + ], + "responses": { + "200": { + "description": "Success. The response indicates the resource is already deleted." + }, + "202": { + "description": "Accepted. The response indicates the delete operation is performed in the background." + }, + "204": { + "description": "Success. The response indicates the resource is already deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "SignalR_Delete": { + "$ref": "./examples/SignalR_Delete.json" + } + } + }, + "patch": { + "tags": [ + "SignalR" + ], + "description": "Operation to update an exiting resource.", + "operationId": "SignalR_Update", + "parameters": [ + { + "name": "parameters", + "in": "body", + "description": "Parameters for the update operation", + "required": true, + "schema": { + "$ref": "#/definitions/SignalRResource" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ResourceName" + } + ], + "responses": { + "200": { + "description": "Success. The response describes a resource.", + "schema": { + "$ref": "#/definitions/SignalRResource" + } + }, + "202": { + "description": "Accepted. The response indicates the exiting resource is now updating and contains a Location header to query the operation result.." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "SignalR_Update": { + "$ref": "./examples/SignalR_Update.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SignalRService/signalR/{resourceName}/listKeys": { + "post": { + "tags": [ + "SignalR" + ], + "description": "Get the access keys of the resource.", + "operationId": "SignalR_ListKeys", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ResourceName" + } + ], + "responses": { + "200": { + "description": "Success. The response describes access keys of the resource.", + "schema": { + "$ref": "#/definitions/SignalRKeys" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "SignalR_ListKeys": { + "$ref": "./examples/SignalR_ListKeys.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SignalRService/signalR/{resourceName}/privateEndpointConnections": { + "get": { + "tags": [ + "SignalR" + ], + "description": "List private endpoint connections", + "operationId": "SignalRPrivateEndpointConnections_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ResourceName" + } + ], + "responses": { + "200": { + "description": "Success. The response describes a list of private endpoint connections.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "SignalRPrivateEndpointConnections_List": { + "$ref": "./examples/SignalRPrivateEndpointConnections_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SignalRService/signalR/{resourceName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "SignalR" + ], + "description": "Get the specified private endpoint connection", + "operationId": "SignalRPrivateEndpointConnections_Get", + "parameters": [ + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ResourceName" + } + ], + "responses": { + "200": { + "description": "Success. The response describes a private endpoint connection.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "SignalRPrivateEndpointConnections_Get": { + "$ref": "./examples/SignalRPrivateEndpointConnections_Get.json" + } + } + }, + "put": { + "tags": [ + "SignalR" + ], + "description": "Update the state of specified private endpoint connection", + "operationId": "SignalRPrivateEndpointConnections_Update", + "parameters": [ + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The resource of private endpoint and its properties", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ResourceName" + } + ], + "responses": { + "200": { + "description": "OK. The response indicates the private endpoint connection is updated successfully.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "SignalRPrivateEndpointConnections_Update": { + "$ref": "./examples/SignalRPrivateEndpointConnections_Update.json" + } + } + }, + "delete": { + "tags": [ + "SignalR" + ], + "description": "Delete the specified private endpoint connection", + "operationId": "SignalRPrivateEndpointConnections_Delete", + "parameters": [ + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ResourceName" + } + ], + "responses": { + "200": { + "description": "Success. The response indicates the resource is already deleted." + }, + "202": { + "description": "Accepted. The response indicates the delete operation is performed in the background." + }, + "204": { + "description": "Success. The response indicates the private endpoint connection is already deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "SignalRPrivateEndpointConnections_Delete": { + "$ref": "./examples/SignalRPrivateEndpointConnections_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SignalRService/signalR/{resourceName}/privateLinkResources": { + "get": { + "tags": [ + "SignalR" + ], + "description": "Get the private link resources that need to be created for a resource.", + "operationId": "SignalRPrivateLinkResources_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ResourceName" + } + ], + "responses": { + "200": { + "description": "Success. The response describes a list of private link resources.", + "schema": { + "$ref": "#/definitions/PrivateLinkResourceList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "SignalRPrivateLinkResources_List": { + "$ref": "./examples/SignalRPrivateLinkResources_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SignalRService/signalR/{resourceName}/regenerateKey": { + "post": { + "tags": [ + "SignalR" + ], + "description": "Regenerate the access key for the resource. PrimaryKey and SecondaryKey cannot be regenerated at the same time.", + "operationId": "SignalR_RegenerateKey", + "parameters": [ + { + "name": "parameters", + "in": "body", + "description": "Parameter that describes the Regenerate Key Operation.", + "required": true, + "schema": { + "$ref": "#/definitions/RegenerateKeyParameters" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ResourceName" + } + ], + "responses": { + "202": { + "description": "Accepted and an async operation is executing in background to make the new key to take effect. The response contains new access keys and a Location header to query the async operation result.", + "schema": { + "$ref": "#/definitions/SignalRKeys" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "SignalR_RegenerateKey": { + "$ref": "./examples/SignalR_RegenerateKey.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SignalRService/signalR/{resourceName}/restart": { + "post": { + "tags": [ + "SignalR" + ], + "description": "Operation to restart a resource.", + "operationId": "SignalR_Restart", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ResourceName" + } + ], + "responses": { + "202": { + "description": "Accepted. The response indicates the restart operation is performed in the background." + }, + "204": { + "description": "Success. The response indicates the operation is successful and no content will be returned." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "SignalR_Restart": { + "$ref": "./examples/SignalR_Restart.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SignalRService/signalR/{resourceName}/sharedPrivateLinkResources": { + "get": { + "tags": [ + "SignalR" + ], + "description": "List shared private link resources", + "operationId": "SignalRSharedPrivateLinkResources_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ResourceName" + } + ], + "responses": { + "200": { + "description": "Success. The response describes a list of shared private link resources.", + "schema": { + "$ref": "#/definitions/SharedPrivateLinkResourceList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "SignalRSharedPrivateLinkResources_List": { + "$ref": "./examples/SignalRSharedPrivateLinkResources_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SignalRService/signalR/{resourceName}/sharedPrivateLinkResources/{sharedPrivateLinkResourceName}": { + "get": { + "tags": [ + "SignalR" + ], + "description": "Get the specified shared private link resource", + "operationId": "SignalRSharedPrivateLinkResources_Get", + "parameters": [ + { + "name": "sharedPrivateLinkResourceName", + "in": "path", + "description": "The name of the shared private link resource", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ResourceName" + } + ], + "responses": { + "200": { + "description": "Success. The response describes a shared private link resource.", + "schema": { + "$ref": "#/definitions/SharedPrivateLinkResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "SignalRSharedPrivateLinkResources_Get": { + "$ref": "./examples/SignalRSharedPrivateLinkResources_Get.json" + } + } + }, + "put": { + "tags": [ + "SignalR" + ], + "description": "Create or update a shared private link resource", + "operationId": "SignalRSharedPrivateLinkResources_CreateOrUpdate", + "parameters": [ + { + "name": "sharedPrivateLinkResourceName", + "in": "path", + "description": "The name of the shared private link resource", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The shared private link resource", + "required": true, + "schema": { + "$ref": "#/definitions/SharedPrivateLinkResource" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ResourceName" + } + ], + "responses": { + "200": { + "description": "OK. The response indicates the shared private link resource is updated.", + "schema": { + "$ref": "#/definitions/SharedPrivateLinkResource" + } + }, + "201": { + "description": "Created. The response indicates the shared private link resource is created.", + "schema": { + "$ref": "#/definitions/SharedPrivateLinkResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "SignalRSharedPrivateLinkResources_CreateOrUpdate": { + "$ref": "./examples/SignalRSharedPrivateLinkResources_CreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "SignalR" + ], + "description": "Delete the specified shared private link resource", + "operationId": "SignalRSharedPrivateLinkResources_Delete", + "parameters": [ + { + "name": "sharedPrivateLinkResourceName", + "in": "path", + "description": "The name of the shared private link resource", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ResourceName" + } + ], + "responses": { + "200": { + "description": "Success. The response indicates the resource is already deleted." + }, + "202": { + "description": "Accepted. The response indicates the delete operation is performed in the background." + }, + "204": { + "description": "Success. The response indicates the private endpoint connection is already deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "SignalRSharedPrivateLinkResources_Delete": { + "$ref": "./examples/SignalRSharedPrivateLinkResources_Delete.json" + } + } + } + } + }, + "definitions": { + "ACLAction": { + "description": "Default action when no other rule matches", + "enum": [ + "Allow", + "Deny" + ], + "type": "string", + "x-ms-enum": { + "name": "ACLAction", + "modelAsString": true + } + }, + "Dimension": { + "description": "Specifications of the Dimension of metrics.", + "type": "object", + "properties": { + "name": { + "description": "The public facing name of the dimension.", + "type": "string" + }, + "displayName": { + "description": "Localized friendly display name of the dimension.", + "type": "string" + }, + "internalName": { + "description": "Name of the dimension as it appears in MDM.", + "type": "string" + }, + "toBeExportedForShoebox": { + "description": "A Boolean flag indicating whether this dimension should be included for the shoebox export scenario.", + "type": "boolean" + } + } + }, + "FeatureFlags": { + "description": "FeatureFlags is the supported features of Azure SignalR service.\r\n- ServiceMode: Flag for backend server for SignalR service. Values allowed: \"Default\": have your own backend server; \"Serverless\": your application doesn't have a backend server; \"Classic\": for backward compatibility. Support both Default and Serverless mode but not recommended; \"PredefinedOnly\": for future use.\r\n- EnableConnectivityLogs: \"true\"/\"false\", to enable/disable the connectivity log category respectively.\r\n- EnableMessagingLogs: \"true\"/\"false\", to enable/disable the connectivity log category respectively.\r\n- EnableLiveTrace: Live Trace allows you to know what's happening inside Azure SignalR service, it will give you live traces in real time, it will be helpful when you developing your own Azure SignalR based web application or self-troubleshooting some issues. Please note that live traces are counted as outbound messages that will be charged. Values allowed: \"true\"/\"false\", to enable/disable live trace feature.", + "enum": [ + "ServiceMode", + "EnableConnectivityLogs", + "EnableMessagingLogs", + "EnableLiveTrace" + ], + "type": "string", + "x-ms-enum": { + "name": "FeatureFlags", + "modelAsString": true + } + }, + "KeyType": { + "description": "The keyType to regenerate. Must be either 'primary' or 'secondary'(case-insensitive).", + "enum": [ + "Primary", + "Secondary" + ], + "type": "string", + "x-ms-enum": { + "name": "KeyType", + "modelAsString": true + } + }, + "LogSpecification": { + "description": "Specifications of the Logs for Azure Monitoring.", + "type": "object", + "properties": { + "name": { + "description": "Name of the log.", + "type": "string" + }, + "displayName": { + "description": "Localized friendly display name of the log.", + "type": "string" + } + } + }, + "ManagedIdentity": { + "description": "A class represent managed identities used for request and response", + "type": "object", + "properties": { + "type": { + "$ref": "#/definitions/ManagedIdentityType", + "description": "Represent the identity type: systemAssigned, userAssigned, None" + }, + "userAssignedIdentities": { + "description": "Get or set the user assigned identities", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/UserAssignedIdentityProperty" + } + }, + "principalId": { + "description": "Get the principal id for the system assigned identity.\r\nOnly be used in response.", + "type": "string", + "readOnly": true + }, + "tenantId": { + "description": "Get the tenant id for the system assigned identity.\r\nOnly be used in response", + "type": "string", + "readOnly": true + } + } + }, + "ManagedIdentitySettings": { + "description": "Managed identity settings for upstream.", + "type": "object", + "properties": { + "resource": { + "description": "The Resource indicating the App ID URI of the target resource.\r\nIt also appears in the aud (audience) claim of the issued token.", + "type": "string" + } + } + }, + "ManagedIdentityType": { + "description": "Represent the identity type: systemAssigned, userAssigned, None", + "enum": [ + "None", + "SystemAssigned", + "UserAssigned" + ], + "type": "string", + "x-ms-enum": { + "name": "ManagedIdentityType", + "modelAsString": true + } + }, + "MetricSpecification": { + "description": "Specifications of the Metrics for Azure Monitoring.", + "type": "object", + "properties": { + "name": { + "description": "Name of the metric.", + "type": "string" + }, + "displayName": { + "description": "Localized friendly display name of the metric.", + "type": "string" + }, + "displayDescription": { + "description": "Localized friendly description of the metric.", + "type": "string" + }, + "unit": { + "description": "The unit that makes sense for the metric.", + "type": "string" + }, + "aggregationType": { + "description": "Only provide one value for this field. Valid values: Average, Minimum, Maximum, Total, Count.", + "type": "string" + }, + "fillGapWithZero": { + "description": "Optional. If set to true, then zero will be returned for time duration where no metric is emitted/published. \r\nEx. a metric that returns the number of times a particular error code was emitted. The error code may not appear \r\noften, instead of the RP publishing 0, Shoebox can auto fill in 0s for time periods where nothing was emitted.", + "type": "string" + }, + "category": { + "description": "The name of the metric category that the metric belongs to. A metric can only belong to a single category.", + "type": "string" + }, + "dimensions": { + "description": "The dimensions of the metrics.", + "type": "array", + "items": { + "$ref": "#/definitions/Dimension" + } + } + } + }, + "NameAvailability": { + "description": "Result of the request to check name availability. It contains a flag and possible reason of failure.", + "type": "object", + "properties": { + "nameAvailable": { + "description": "Indicates whether the name is available or not.", + "type": "boolean" + }, + "reason": { + "description": "The reason of the availability. Required if name is not available.", + "type": "string" + }, + "message": { + "description": "The message of the operation.", + "type": "string" + } + } + }, + "NameAvailabilityParameters": { + "description": "Data POST-ed to the nameAvailability action", + "required": [ + "type", + "name" + ], + "type": "object", + "properties": { + "type": { + "description": "The resource type. Can be \"Microsoft.SignalRService/SignalR\" or \"Microsoft.SignalRService/webPubSub\"", + "type": "string" + }, + "name": { + "description": "The resource name to validate. e.g.\"my-resource-name\"", + "type": "string" + } + } + }, + "NetworkACL": { + "description": "Network ACL", + "type": "object", + "properties": { + "allow": { + "description": "Allowed request types. The value can be one or more of: ClientConnection, ServerConnection, RESTAPI.", + "type": "array", + "items": { + "$ref": "#/definitions/SignalRRequestType" + } + }, + "deny": { + "description": "Denied request types. The value can be one or more of: ClientConnection, ServerConnection, RESTAPI.", + "type": "array", + "items": { + "$ref": "#/definitions/SignalRRequestType" + } + } + } + }, + "Operation": { + "description": "REST API operation supported by resource provider.", + "type": "object", + "properties": { + "name": { + "description": "Name of the operation with format: {provider}/{resource}/{operation}", + "type": "string" + }, + "isDataAction": { + "description": "If the operation is a data action. (for data plane rbac)", + "type": "boolean" + }, + "display": { + "$ref": "#/definitions/OperationDisplay", + "description": "The object that describes the operation." + }, + "origin": { + "description": "Optional. The intended executor of the operation; governs the display of the operation in the RBAC UX and the audit logs UX.", + "type": "string" + }, + "properties": { + "$ref": "#/definitions/OperationProperties", + "description": "Extra properties for the operation.", + "x-ms-client-flatten": false + } + } + }, + "OperationDisplay": { + "description": "The object that describes a operation.", + "type": "object", + "properties": { + "provider": { + "description": "Friendly name of the resource provider", + "type": "string" + }, + "resource": { + "description": "Resource type on which the operation is performed.", + "type": "string" + }, + "operation": { + "description": "The localized friendly name for the operation.", + "type": "string" + }, + "description": { + "description": "The localized friendly description for the operation", + "type": "string" + } + } + }, + "OperationList": { + "description": "Result of the request to list REST API operations. It contains a list of operations.", + "type": "object", + "properties": { + "value": { + "description": "List of operations supported by the resource provider.", + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + } + }, + "nextLink": { + "description": "The URL the client should use to fetch the next page (per server side paging).\r\nIt's null for now, added for future use.", + "type": "string" + } + } + }, + "OperationProperties": { + "description": "Extra Operation properties.", + "type": "object", + "properties": { + "serviceSpecification": { + "$ref": "#/definitions/ServiceSpecification", + "description": "The service specifications." + } + } + }, + "PrivateEndpoint": { + "description": "Private endpoint", + "type": "object", + "properties": { + "id": { + "description": "Full qualified Id of the private endpoint", + "type": "string" + } + } + }, + "PrivateEndpointACL": { + "description": "ACL for a private endpoint", + "required": [ + "name" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/NetworkACL" + } + ], + "properties": { + "name": { + "description": "Name of the private endpoint connection", + "type": "string" + } + } + }, + "PrivateEndpointConnection": { + "description": "A private endpoint connection to an azure resource", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "systemData": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData", + "description": "Metadata pertaining to creation and last modification of the resource.", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "description": "Properties of the private endpoint connection", + "x-ms-client-flatten": true + } + } + }, + "PrivateEndpointConnectionList": { + "description": "A list of private endpoint connections", + "type": "object", + "properties": { + "value": { + "description": "The list of the private endpoint connections", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "nextLink": { + "description": "Request URL that can be used to query next page of private endpoint connections. Returned when the total number of requested private endpoint connections exceed maximum page size.", + "type": "string" + } + } + }, + "PrivateEndpointConnectionProperties": { + "description": "Private endpoint connection properties", + "type": "object", + "properties": { + "provisioningState": { + "$ref": "#/definitions/ProvisioningState", + "description": "Provisioning state of the private endpoint connection", + "readOnly": true + }, + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpoint", + "description": "Private endpoint associated with the private endpoint connection" + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionState", + "description": "Connection state" + } + } + }, + "PrivateLinkResource": { + "description": "Private link resource", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "Properties of a private link resource", + "x-ms-client-flatten": true + } + } + }, + "PrivateLinkResourceList": { + "description": "Contains a list of PrivateLinkResource and a possible link to query more results", + "type": "object", + "properties": { + "value": { + "description": "List of PrivateLinkResource", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + } + }, + "nextLink": { + "description": "The URL the client should use to fetch the next page (per server side paging).\r\nIt's null for now, added for future use.", + "type": "string" + } + } + }, + "PrivateLinkResourceProperties": { + "description": "Private link resource properties", + "type": "object", + "properties": { + "groupId": { + "description": "Group Id of the private link resource", + "type": "string" + }, + "requiredMembers": { + "description": "Required members of the private link resource", + "type": "array", + "items": { + "type": "string" + } + }, + "requiredZoneNames": { + "description": "Required private DNS zone names", + "type": "array", + "items": { + "type": "string" + } + }, + "shareablePrivateLinkResourceTypes": { + "description": "The list of resources that are onboarded to private link service", + "type": "array", + "items": { + "$ref": "#/definitions/ShareablePrivateLinkResourceType" + } + } + } + }, + "PrivateLinkServiceConnectionState": { + "description": "Connection state of the private endpoint connection", + "type": "object", + "properties": { + "status": { + "$ref": "#/definitions/PrivateLinkServiceConnectionStatus", + "description": "Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service." + }, + "description": { + "description": "The reason for approval/rejection of the connection.", + "type": "string" + }, + "actionsRequired": { + "description": "A message indicating if changes on the service provider require any updates on the consumer.", + "type": "string" + } + } + }, + "PrivateLinkServiceConnectionStatus": { + "description": "Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service.", + "enum": [ + "Pending", + "Approved", + "Rejected", + "Disconnected" + ], + "type": "string", + "x-ms-enum": { + "name": "PrivateLinkServiceConnectionStatus", + "modelAsString": true + } + }, + "ProvisioningState": { + "description": "Provisioning state of the resource.", + "enum": [ + "Unknown", + "Succeeded", + "Failed", + "Canceled", + "Running", + "Creating", + "Updating", + "Deleting", + "Moving" + ], + "type": "string", + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "ProxyResource": { + "description": "The resource model definition for a ARM proxy resource. It will have everything other than required location and tags", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": {} + }, + "RegenerateKeyParameters": { + "description": "Parameters describes the request to regenerate access keys", + "type": "object", + "properties": { + "keyType": { + "$ref": "#/definitions/KeyType", + "description": "The keyType to regenerate. Must be either 'primary' or 'secondary'(case-insensitive)." + } + } + }, + "Resource": { + "description": "The core properties of ARM resources.", + "type": "object", + "properties": { + "id": { + "description": "Fully qualified resource Id for the resource.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The name of the resource.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The type of the resource - e.g. \"Microsoft.SignalRService/SignalR\"", + "type": "string", + "readOnly": true + } + }, + "x-ms-azure-resource": true + }, + "ResourceSku": { + "description": "The billing information of the resource.", + "required": [ + "name" + ], + "type": "object", + "properties": { + "name": { + "description": "The name of the SKU. Required.\r\n\r\nAllowed values: Standard_S1, Free_F1", + "type": "string" + }, + "tier": { + "$ref": "#/definitions/SignalRSkuTier", + "description": "Optional tier of this particular SKU. 'Standard' or 'Free'. \r\n\r\n`Basic` is deprecated, use `Standard` instead." + }, + "size": { + "description": "Not used. Retained for future use.", + "type": "string", + "readOnly": true + }, + "family": { + "description": "Not used. Retained for future use.", + "type": "string", + "readOnly": true + }, + "capacity": { + "format": "int32", + "description": "Optional, integer. The unit count of the resource. 1 by default.\r\n\r\nIf present, following values are allowed:\r\n Free: 1\r\n Standard: 1,2,5,10,20,50,100", + "type": "integer" + } + } + }, + "ServerlessUpstreamSettings": { + "description": "The settings for the Upstream when the service is in server-less mode.", + "type": "object", + "properties": { + "templates": { + "description": "Gets or sets the list of Upstream URL templates. Order matters, and the first matching template takes effects.", + "type": "array", + "items": { + "$ref": "#/definitions/UpstreamTemplate" + } + } + } + }, + "ServiceKind": { + "description": "The kind of the service - e.g. \"SignalR\" for \"Microsoft.SignalRService/SignalR\"", + "enum": [ + "SignalR", + "RawWebSockets" + ], + "type": "string", + "x-ms-enum": { + "name": "ServiceKind", + "modelAsString": true + } + }, + "ServiceSpecification": { + "description": "An object that describes a specification.", + "type": "object", + "properties": { + "metricSpecifications": { + "description": "Specifications of the Metrics for Azure Monitoring.", + "type": "array", + "items": { + "$ref": "#/definitions/MetricSpecification" + } + }, + "logSpecifications": { + "description": "Specifications of the Logs for Azure Monitoring.", + "type": "array", + "items": { + "$ref": "#/definitions/LogSpecification" + } + } + } + }, + "ShareablePrivateLinkResourceProperties": { + "description": "Describes the properties of a resource type that has been onboarded to private link service", + "type": "object", + "properties": { + "description": { + "description": "The description of the resource type that has been onboarded to private link service", + "type": "string" + }, + "groupId": { + "description": "The resource provider group id for the resource that has been onboarded to private link service", + "type": "string" + }, + "type": { + "description": "The resource provider type for the resource that has been onboarded to private link service", + "type": "string" + } + } + }, + "ShareablePrivateLinkResourceType": { + "description": "Describes a resource type that has been onboarded to private link service", + "type": "object", + "properties": { + "name": { + "description": "The name of the resource type that has been onboarded to private link service", + "type": "string" + }, + "properties": { + "$ref": "#/definitions/ShareablePrivateLinkResourceProperties", + "description": "Describes the properties of a resource type that has been onboarded to private link service" + } + } + }, + "SharedPrivateLinkResource": { + "description": "Describes a Shared Private Link Resource", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "systemData": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData", + "description": "Metadata pertaining to creation and last modification of the resource.", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/SharedPrivateLinkResourceProperties", + "description": "Describes the properties of a Shared Private Link Resource", + "x-ms-client-flatten": true + } + } + }, + "SharedPrivateLinkResourceList": { + "description": "A list of shared private link resources", + "type": "object", + "properties": { + "value": { + "description": "The list of the shared private link resources", + "type": "array", + "items": { + "$ref": "#/definitions/SharedPrivateLinkResource" + } + }, + "nextLink": { + "description": "Request URL that can be used to query next page of private endpoint connections. Returned when the total number of requested private endpoint connections exceed maximum page size.", + "type": "string" + } + } + }, + "SharedPrivateLinkResourceProperties": { + "description": "Describes the properties of an existing Shared Private Link Resource", + "required": [ + "groupId", + "privateLinkResourceId" + ], + "type": "object", + "properties": { + "groupId": { + "description": "The group id from the provider of resource the shared private link resource is for", + "type": "string" + }, + "privateLinkResourceId": { + "description": "The resource id of the resource the shared private link resource is for", + "type": "string" + }, + "provisioningState": { + "$ref": "#/definitions/ProvisioningState", + "description": "Provisioning state of the shared private link resource", + "readOnly": true + }, + "requestMessage": { + "description": "The request message for requesting approval of the shared private link resource", + "type": "string" + }, + "status": { + "$ref": "#/definitions/SharedPrivateLinkResourceStatus", + "description": "Status of the shared private link resource", + "readOnly": true + } + } + }, + "SharedPrivateLinkResourceStatus": { + "description": "Status of the shared private link resource", + "enum": [ + "Pending", + "Approved", + "Rejected", + "Disconnected", + "Timeout" + ], + "type": "string", + "x-ms-enum": { + "name": "SharedPrivateLinkResourceStatus", + "modelAsString": true + } + }, + "SignalRCorsSettings": { + "description": "Cross-Origin Resource Sharing (CORS) settings.", + "type": "object", + "properties": { + "allowedOrigins": { + "description": "Gets or sets the list of origins that should be allowed to make cross-origin calls (for example: http://example.com:12345). Use \"*\" to allow all. If omitted, allow all by default.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "SignalRFeature": { + "description": "Feature of a SignalR resource, which controls the SignalR runtime behavior.", + "required": [ + "flag", + "value" + ], + "type": "object", + "properties": { + "flag": { + "$ref": "#/definitions/FeatureFlags", + "description": "FeatureFlags is the supported features of Azure SignalR service.\r\n- ServiceMode: Flag for backend server for SignalR service. Values allowed: \"Default\": have your own backend server; \"Serverless\": your application doesn't have a backend server; \"Classic\": for backward compatibility. Support both Default and Serverless mode but not recommended; \"PredefinedOnly\": for future use.\r\n- EnableConnectivityLogs: \"true\"/\"false\", to enable/disable the connectivity log category respectively.\r\n- EnableMessagingLogs: \"true\"/\"false\", to enable/disable the connectivity log category respectively.\r\n- EnableLiveTrace: Live Trace allows you to know what's happening inside Azure SignalR service, it will give you live traces in real time, it will be helpful when you developing your own Azure SignalR based web application or self-troubleshooting some issues. Please note that live traces are counted as outbound messages that will be charged. Values allowed: \"true\"/\"false\", to enable/disable live trace feature." + }, + "value": { + "description": "Value of the feature flag. See Azure SignalR service document https://docs.microsoft.com/azure/azure-signalr/ for allowed values.", + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "properties": { + "description": "Optional properties related to this feature.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "SignalRKeys": { + "description": "A class represents the access keys of the resource.", + "type": "object", + "properties": { + "primaryKey": { + "description": "The primary access key.", + "type": "string", + "x-ms-secret": true + }, + "secondaryKey": { + "description": "The secondary access key.", + "type": "string", + "x-ms-secret": true + }, + "primaryConnectionString": { + "description": "Connection string constructed via the primaryKey", + "type": "string", + "x-ms-secret": true + }, + "secondaryConnectionString": { + "description": "Connection string constructed via the secondaryKey", + "type": "string", + "x-ms-secret": true + } + } + }, + "SignalRNetworkACLs": { + "description": "Network ACLs for the resource", + "type": "object", + "properties": { + "defaultAction": { + "$ref": "#/definitions/ACLAction", + "description": "Default action when no other rule matches", + "default": "Deny" + }, + "publicNetwork": { + "$ref": "#/definitions/NetworkACL", + "description": "ACL for requests from public network" + }, + "privateEndpoints": { + "description": "ACLs for requests from private endpoints", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointACL" + } + } + } + }, + "SignalRProperties": { + "description": "A class that describes the properties of the resource", + "type": "object", + "properties": { + "provisioningState": { + "$ref": "#/definitions/ProvisioningState", + "description": "Provisioning state of the resource.", + "readOnly": true + }, + "externalIP": { + "description": "The publicly accessible IP of the resource.", + "type": "string", + "readOnly": true + }, + "hostName": { + "description": "FQDN of the service instance.", + "type": "string", + "readOnly": true + }, + "publicPort": { + "format": "int32", + "description": "The publicly accessible port of the resource which is designed for browser/client side usage.", + "type": "integer", + "readOnly": true + }, + "serverPort": { + "format": "int32", + "description": "The publicly accessible port of the resource which is designed for customer server side usage.", + "type": "integer", + "readOnly": true + }, + "version": { + "description": "Version of the resource. Probably you need the same or higher version of client SDKs.", + "type": "string", + "readOnly": true + }, + "privateEndpointConnections": { + "description": "Private endpoint connections to the resource.", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "readOnly": true + }, + "sharedPrivateLinkResources": { + "description": "The list of shared private link resources.", + "type": "array", + "items": { + "$ref": "#/definitions/SharedPrivateLinkResource" + }, + "readOnly": true + }, + "tls": { + "$ref": "#/definitions/SignalRTlsSettings", + "description": "TLS settings." + }, + "features": { + "description": "List of the featureFlags.\r\n\r\nFeatureFlags that are not included in the parameters for the update operation will not be modified.\r\nAnd the response will only include featureFlags that are explicitly set. \r\nWhen a featureFlag is not explicitly set, its globally default value will be used\r\nBut keep in mind, the default value doesn't mean \"false\". It varies in terms of different FeatureFlags.", + "type": "array", + "items": { + "$ref": "#/definitions/SignalRFeature" + } + }, + "cors": { + "$ref": "#/definitions/SignalRCorsSettings", + "description": "Cross-Origin Resource Sharing (CORS) settings." + }, + "upstream": { + "$ref": "#/definitions/ServerlessUpstreamSettings", + "description": "Upstream settings when the service is in server-less mode." + }, + "networkACLs": { + "$ref": "#/definitions/SignalRNetworkACLs", + "description": "Network ACLs" + } + } + }, + "SignalRRequestType": { + "description": "Allowed request types. The value can be one or more of: ClientConnection, ServerConnection, RESTAPI.", + "enum": [ + "ClientConnection", + "ServerConnection", + "RESTAPI", + "Trace" + ], + "type": "string", + "x-ms-enum": { + "name": "SignalRRequestType", + "modelAsString": true + } + }, + "SignalRResource": { + "description": "A class represent a resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TrackedResource" + } + ], + "properties": { + "sku": { + "$ref": "#/definitions/ResourceSku", + "description": "The billing information of the resource.(e.g. Free, Standard)" + }, + "properties": { + "$ref": "#/definitions/SignalRProperties", + "description": "Settings used to provision or configure the resource", + "x-ms-client-flatten": true + }, + "kind": { + "$ref": "#/definitions/ServiceKind", + "description": "The kind of the service - e.g. \"SignalR\" for \"Microsoft.SignalRService/SignalR\"", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "identity": { + "$ref": "#/definitions/ManagedIdentity", + "description": "The managed identity response" + }, + "systemData": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData", + "description": "Metadata pertaining to creation and last modification of the resource.", + "readOnly": true + } + } + }, + "SignalRResourceList": { + "description": "Object that includes an array of resources and a possible link for next set.", + "type": "object", + "properties": { + "value": { + "description": "List of the resources", + "type": "array", + "items": { + "$ref": "#/definitions/SignalRResource" + } + }, + "nextLink": { + "description": "The URL the client should use to fetch the next page (per server side paging).\r\nIt's null for now, added for future use.", + "type": "string" + } + } + }, + "SignalRSkuTier": { + "description": "Optional tier of this particular SKU. 'Standard' or 'Free'. \r\n\r\n`Basic` is deprecated, use `Standard` instead.", + "enum": [ + "Free", + "Basic", + "Standard", + "Premium" + ], + "type": "string", + "x-ms-enum": { + "name": "SignalRSkuTier", + "modelAsString": true + } + }, + "SignalRTlsSettings": { + "description": "TLS settings for the resource", + "type": "object", + "properties": { + "clientCertEnabled": { + "description": "Request client certificate during TLS handshake if enabled", + "type": "boolean" + } + } + }, + "SignalRUsage": { + "description": "Object that describes a specific usage of the resources.", + "type": "object", + "properties": { + "id": { + "description": "Fully qualified ARM resource id", + "type": "string" + }, + "currentValue": { + "format": "int64", + "description": "Current value for the usage quota.", + "type": "integer" + }, + "limit": { + "format": "int64", + "description": "The maximum permitted value for the usage quota. If there is no limit, this value will be -1.", + "type": "integer" + }, + "name": { + "$ref": "#/definitions/SignalRUsageName", + "description": "Localizable String object containing the name and a localized value." + }, + "unit": { + "description": "Representing the units of the usage quota. Possible values are: Count, Bytes, Seconds, Percent, CountPerSecond, BytesPerSecond.", + "type": "string" + } + } + }, + "SignalRUsageList": { + "description": "Object that includes an array of the resource usages and a possible link for next set.", + "type": "object", + "properties": { + "value": { + "description": "List of the resource usages", + "type": "array", + "items": { + "$ref": "#/definitions/SignalRUsage" + } + }, + "nextLink": { + "description": "The URL the client should use to fetch the next page (per server side paging).\r\nIt's null for now, added for future use.", + "type": "string" + } + } + }, + "SignalRUsageName": { + "description": "Localizable String object containing the name and a localized value.", + "type": "object", + "properties": { + "value": { + "description": "The identifier of the usage.", + "type": "string" + }, + "localizedValue": { + "description": "Localized name of the usage.", + "type": "string" + } + } + }, + "TrackedResource": { + "description": "The resource model definition for a ARM tracked top level resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "location": { + "description": "The GEO location of the resource. e.g. West US | East US | North Central US | South Central US.", + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "tags": { + "description": "Tags of the service which is a list of key value pairs that describe the resource.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "UpstreamAuthSettings": { + "description": "Upstream auth settings.", + "type": "object", + "properties": { + "type": { + "$ref": "#/definitions/UpstreamAuthType", + "description": "Gets or sets the type of auth. None or ManagedIdentity is supported now." + }, + "managedIdentity": { + "$ref": "#/definitions/ManagedIdentitySettings", + "description": "Gets or sets the managed identity settings. It's required if the auth type is set to ManagedIdentity." + } + } + }, + "UpstreamAuthType": { + "description": "Gets or sets the type of auth. None or ManagedIdentity is supported now.", + "enum": [ + "None", + "ManagedIdentity" + ], + "type": "string", + "x-ms-enum": { + "name": "UpstreamAuthType", + "modelAsString": true + } + }, + "UpstreamTemplate": { + "description": "Upstream template item settings. It defines the Upstream URL of the incoming requests.\r\nThe template defines the pattern of the event, the hub or the category of the incoming request that matches current URL template.", + "required": [ + "urlTemplate" + ], + "type": "object", + "properties": { + "hubPattern": { + "description": "Gets or sets the matching pattern for hub names. If not set, it matches any hub.\r\nThere are 3 kind of patterns supported:\r\n 1. \"*\", it to matches any hub name\r\n 2. Combine multiple hubs with \",\", for example \"hub1,hub2\", it matches \"hub1\" and \"hub2\"\r\n 3. The single hub name, for example, \"hub1\", it matches \"hub1\"", + "type": "string" + }, + "eventPattern": { + "description": "Gets or sets the matching pattern for event names. If not set, it matches any event.\r\nThere are 3 kind of patterns supported:\r\n 1. \"*\", it to matches any event name\r\n 2. Combine multiple events with \",\", for example \"connect,disconnect\", it matches event \"connect\" and \"disconnect\"\r\n 3. The single event name, for example, \"connect\", it matches \"connect\"", + "type": "string" + }, + "categoryPattern": { + "description": "Gets or sets the matching pattern for category names. If not set, it matches any category.\r\nThere are 3 kind of patterns supported:\r\n 1. \"*\", it to matches any category name\r\n 2. Combine multiple categories with \",\", for example \"connections,messages\", it matches category \"connections\" and \"messages\"\r\n 3. The single category name, for example, \"connections\", it matches the category \"connections\"", + "type": "string" + }, + "urlTemplate": { + "description": "Gets or sets the Upstream URL template. You can use 3 predefined parameters {hub}, {category} {event} inside the template, the value of the Upstream URL is dynamically calculated when the client request comes in.\r\nFor example, if the urlTemplate is `http://example.com/{hub}/api/{event}`, with a client request from hub `chat` connects, it will first POST to this URL: `http://example.com/chat/api/connect`.", + "type": "string" + }, + "auth": { + "$ref": "#/definitions/UpstreamAuthSettings", + "description": "Gets or sets the auth settings for an upstream. If not set, no auth is used for upstream messages." + } + } + }, + "UserAssignedIdentityProperty": { + "description": "Properties of user assigned identity.", + "type": "object", + "properties": { + "principalId": { + "description": "Get the principal id for the user assigned identity", + "type": "string", + "readOnly": true + }, + "clientId": { + "description": "Get the client id for the user assigned identity", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "Client Api Version.", + "required": true, + "type": "string" + }, + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Gets subscription Id which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.", + "required": true, + "type": "string" + }, + "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" + }, + "ResourceName": { + "name": "resourceName", + "in": "path", + "description": "The name of the resource.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + }, + "securityDefinitions": { + "azure_auth": { + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow" + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/signalr/resource-manager/readme.azureresourceschema.md b/specification/signalr/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 30a00dfcb8df..000000000000 --- a/specification/signalr/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,60 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-signalrservice-2020-07-01-preview - - tag: schema-signalrservice-2020-05-01 - - tag: schema-signalrservice-2018-10-01 - - tag: schema-signalrservice-2018-03-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-signalrservice-2020-07-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-signalrservice-2020-07-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.SignalRService/preview/2020-07-01-preview/signalr.json - -``` - -### Tag: schema-signalrservice-2020-05-01 and azureresourceschema - -``` yaml $(tag) == 'schema-signalrservice-2020-05-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.SignalRService/stable/2020-05-01/signalr.json - -``` - -### Tag: schema-signalrservice-2018-10-01 and azureresourceschema - -``` yaml $(tag) == 'schema-signalrservice-2018-10-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.SignalRService/stable/2018-10-01/signalr.json - -``` - -### Tag: schema-signalrservice-2018-03-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-signalrservice-2018-03-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.SignalRService/preview/2018-03-01-preview/signalr.json - -``` diff --git a/specification/signalr/resource-manager/readme.go.md b/specification/signalr/resource-manager/readme.go.md index 99af62cf41d4..fa617e1179e2 100644 --- a/specification/signalr/resource-manager/readme.go.md +++ b/specification/signalr/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: signalr clear-output-folder: true ``` @@ -17,6 +17,7 @@ batch: - tag: package-2018-10-01 - tag: package-2020-05-01 - tag: package-2020-07-01-preview + - tag: package-2021-04-01-preview ``` ### Tag: package-2018-03-01-preview and go @@ -54,3 +55,12 @@ Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2021-04-01-preview' && $(go) +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2021-04-01-preview/$(namespace) +``` diff --git a/specification/signalr/resource-manager/readme.java.md b/specification/signalr/resource-manager/readme.java.md index 783271a172f2..7416fe504997 100644 --- a/specification/signalr/resource-manager/readme.java.md +++ b/specification/signalr/resource-manager/readme.java.md @@ -20,6 +20,20 @@ batch: - tag: package-2018-10-01 - tag: package-2020-05-01 - tag: package-2020-07-01-preview + - tag: package-2021-04-01-preview +``` + +### Tag: package-2021-04-01-preview and java + +These settings apply only when `--tag=package-2021-04-01-preview --java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-2021-04-01-preview' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.signalr.v2021_04_01_preview + output-folder: $(azure-libraries-for-java-folder)/sdk/signalr/mgmt-v2021_04_01_preview +regenerate-manager: true +generate-interface: true ``` ### Tag: package-2020-07-01-preview and java diff --git a/specification/signalr/resource-manager/readme.md b/specification/signalr/resource-manager/readme.md index 1c60fa5764f6..3767b22ed260 100644 --- a/specification/signalr/resource-manager/readme.md +++ b/specification/signalr/resource-manager/readme.md @@ -26,7 +26,7 @@ These are the global settings for the SignalR API. ``` yaml openapi-type: arm -tag: package-2020-07-01-preview +tag: package-2021-04-01-preview ``` ### Suppression @@ -35,16 +35,12 @@ tag: package-2020-07-01-preview directive: - suppress: EnumInsteadOfBoolean from: signalr.json - where: $.definitions.NameAvailability.properties.nameAvailable - reason: The boolean properties 'nameAvailable' is actually boolean value defined by Azure API spec - - suppress: EnumInsteadOfBoolean - from: signalr.json - where: $.definitions.Dimension.properties.toBeExportedForShoebox - reason: The boolean properties 'toBeExportedForShoebox' is defined by Geneva metrics. - - suppress: EnumInsteadOfBoolean - from: signalr.json - where: $.definitions.Operation.properties.isDataAction - reason: The boolean properties 'isDataAction' is a standard property for Azuer Operatoins. + where: + - $.definitions.NameAvailability.properties.nameAvailable + - $.definitions.Dimension.properties.toBeExportedForShoebox + - $.definitions.Operation.properties.isDataAction + - $.definitions.SignalRTlsSettings.properties.clientCertEnabled + reason: The boolean properties 'nameAvailable' and 'isDataAction' is standard property defined by Azure API spec. 'toBeExportedForShoebox' by Geneva metrics team. Keep 'clientCertEnabled' bool to be consistent with SignalR and not break existing customers. - suppress: TrackedResourceListByImmediateParent reason: Another list APIs naming approach is used over the specs - suppress: AvoidNestedProperties @@ -52,7 +48,21 @@ directive: where: - $.definitions.SignalRFeature.properties.properties - $.definitions.PrivateEndpointConnection.properties.properties + - $.definitions.ShareablePrivateLinkResourceType.properties.properties reason: The 'properties' is a user-defined dictionary, cannot be flattened. + - suppress: PutInOperationName + where: + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SignalRService/signalR/{resourceName}/privateEndpointConnections/{privateEndpointConnectionName}"].put.operationId + reason: It's indeed an UPDATE operation, but PUT is required per NRP requirement. +``` + +### Tag: package-2021-04-01-preview + +These settings apply only when `--tag=package-2021-04-01-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2021-04-01-preview' +input-file: +- Microsoft.SignalRService/preview/2021-04-01-preview/signalr.json ``` ### Tag: package-2020-07-01-preview @@ -104,6 +114,7 @@ This is not used by Autorest itself. swagger-to-sdk: - repo: azure-sdk-for-net - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-java - repo: azure-sdk-for-node - repo: azure-sdk-for-js @@ -112,10 +123,11 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_signalr'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js signalr/resource-manager ``` +## Python + +See configuration in [readme.python.md](./readme.python.md) ## Go @@ -140,7 +152,5 @@ csharp: clear-output-folder: true ``` -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/signalr/resource-manager/readme.ruby.md b/specification/signalr/resource-manager/readme.ruby.md index 9688e52abf65..7cd18969089b 100644 --- a/specification/signalr/resource-manager/readme.ruby.md +++ b/specification/signalr/resource-manager/readme.ruby.md @@ -16,6 +16,17 @@ batch: - tag: package-2018-10-01 - tag: package-2020-05-01 - tag: package-2020-07-01-preview + - tag: package-2021-04-01-preview +``` + +### Tag: package-2021-04-01-preview and ruby + +These settings apply only when `--tag=package-2021-04-01-preview --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +``` yaml $(tag) == 'package-2021-04-01-preview' && $(ruby) +namespace: "Azure::Signalr::Mgmt::V2021_04_01_preview" +output-folder: $(ruby-sdks-folder)/management/azure_mgmt_signalr/lib ``` ### Tag: package-2020-07-01-preview and ruby diff --git a/specification/softwareplan/resource-manager/readme.azureresourceschema.md b/specification/softwareplan/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 0193b0961d94..000000000000 --- a/specification/softwareplan/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,36 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-softwareplan-2019-12-01 - - tag: schema-softwareplan-2019-06-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-softwareplan-2019-12-01 and azureresourceschema - -``` yaml $(tag) == 'schema-softwareplan-2019-12-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.SoftwarePlan/stable/2019-12-01/softwareplan.json - -``` - -### Tag: schema-softwareplan-2019-06-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-softwareplan-2019-06-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.SoftwarePlan/preview/2019-06-01-preview/softwareplan.json - -``` diff --git a/specification/softwareplan/resource-manager/readme.go.md b/specification/softwareplan/resource-manager/readme.go.md index 42fff5ba2e85..2db081b499e1 100644 --- a/specification/softwareplan/resource-manager/readme.go.md +++ b/specification/softwareplan/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ```yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION clear-output-folder: true namespace: softwareplan ``` diff --git a/specification/softwareplan/resource-manager/readme.md b/specification/softwareplan/resource-manager/readme.md index f6933c2ae568..6435773521b5 100644 --- a/specification/softwareplan/resource-manager/readme.md +++ b/specification/softwareplan/resource-manager/readme.md @@ -72,8 +72,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_softwareplan'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js softwareplan/resource-manager ``` ## Go @@ -106,7 +104,5 @@ directive: reason: This is an issue with the common resource definition. The properties in the resource definition actually has a title and description. ``` -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/examples/ManagedInstanceRemoveMaintenanceConfiguration.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/examples/ManagedInstanceRemoveMaintenanceConfiguration.json new file mode 100644 index 000000000000..21e0272fa3f1 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/examples/ManagedInstanceRemoveMaintenanceConfiguration.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "20D7082A-0FC7-4468-82BD-542694D5042B", + "resourceGroupName": "testrg", + "managedInstanceName": "testinstance", + "api-version": "2015-05-01-preview", + "parameters": { + "properties": { + "maintenanceConfigurationId": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_Default" + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "GP_Gen4", + "tier": "GeneralPurpose", + "capacity": 8, + "family": "Gen4" + }, + "properties": { + "fullyQualifiedDomainName": "testinstance.1b4e2caff2530.database.windows.net", + "administratorLogin": "dummylogin", + "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "state": "Ready", + "vCores": 8, + "storageSizeInGB": 1024, + "licenseType": "LicenseIncluded", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "publicDataEndpointEnabled": false, + "proxyOverride": "Default", + "dnsZone": "1b4e2caff2530", + "maintenanceConfigurationId": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_Default" + }, + "location": "japaneast", + "id": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/testrg/providers/Microsoft.Sql/managedInstances/testinstance", + "name": "testinstance", + "type": "Microsoft.Sql/managedInstances" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/managedInstances.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/managedInstances.json index f73579be3d37..c205c9a6198f 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/managedInstances.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/managedInstances.json @@ -243,6 +243,9 @@ }, "Update managed instance with all properties": { "$ref": "./examples/ManagedInstanceUpdateMax.json" + }, + "Remove maintenance policy from managed instance (select default maintenance policy)": { + "$ref": "./examples/ManagedInstanceRemoveMaintenanceConfiguration.json" } } } diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/ManagedInstanceTdeCertificate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/ManagedInstanceTdeCertificate.json index 06d9053ecf70..5b6ee767f9b3 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/ManagedInstanceTdeCertificate.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/ManagedInstanceTdeCertificate.json @@ -6,7 +6,7 @@ "api-version": "2017-10-01-preview", "parameters": { "properties": { - "privateBlob": "MIIJ+QIBAzCCCbUGCSqGSIb3DQEHAaCCCaYEggmiMIIJnjCCBhcGCSqGSIb3DQEHAaCCBggEggYEMIIGADCCBfwGCyqGSIb3DQEMCgECoIIE/jCCBPowHAYKKoZIhvcNAQwBAzAOBAgUeBd7F2KZUwICB9AEggTYSRi88/Xf0EZ9smyYDCr+jHa7a/510s19/5wjqGbLTT/CYBu2qSOhj+g9sNvjj5oWAcluaZ4XCl/oJhXlB+9q9ZYSC6pPhma7/Il+/zlZm8ZUMfgnUefpKXGj+Ilydghya2DOA0PONDGbqIJGBYC0JgtiL7WcYyA+LEiO0vXc2fZ+ccjQsHM+ePFOm6rTJ1oqE3quRC5Ls2Bv22PCmF+GWkWxqH1L5x8wR2tYfecEsx4sKMj318novQqBlJckOUPDrTT2ic6izFnDWS+zbGezSCeRkt2vjCUVDg7Aqm2bkmLVn+arA3tDZ/DBxgTwwt8prpAznDYG07WRxXMUk8Uqzmcds85jSMLSBOoRaS7GwIPprx0QwyYXd8H/go2vafuGCydRk8mA0bGLXjYWuYHAtztlGrE71a7ILqHY4XankohSAY4YF9Fc1mJcdtsuICs5vNosw1lf0VK5BR4ONCkiGFdYEKUpaUrzKpQiw3zteBN8RQs/ADKGWzaWERrkptf0pLH3/QnZvu9xwwnNWneygByPy7OVYrvgjD27x7Y/C24GyQweh75OTQN3fAvUj7IqeTVyWZGZq32AY/uUXYwASBpLbNUtUBfJ7bgyvVSZlPvcFUwDHJC1P+fSP8Vfcc9W3ec9HqVheXio7gYBEg9hZrOZwiZorl8HZJsEj5NxGccBme6hEVQRZfar5kFDHor/zmKohEAJVw8lVLkgmEuz8aqQUDSWVAcLbkfqygK/NxsR2CaC6xWroagQSRwpF8YbvqYJtAQvdkUXY9Ll4LSRcxKrWMZHgI+1Z22pyNtpy/kXLADche5CF3AVbHtzNNgn9L4GVuCW1Lqufu3U2+DEG+u53u1vraf45RS1y0IyLjTGC+8j0OTxcgUU6FrGgFny0m676v8potPrfyHvuOO511aOTe8UPBfnYyx0XHJPn8RaYGq0vMOBpFyfJkXtAnbRMgXjxxiO91yXTI2hbdVlAmOER1u8QemtF5PoKwZzaAjGBC5S0ARNtxZcWInGciGgtWJVVcyU6nJv3pa2T8jNvtcp8X7j+Il6j6Sju02L/f+S9MvAoGfgG6C5cInNIBEt7+mpYYV/6Mi9Nnj+8/Cq3eAMdTTo7XIzbFpeInzpVN2lAxPockRoAVj+odYO3CIBnzJ7mcA7JqtNk76vaWKasocMk9YS0Z+43o/Z5pZPwXvUv++UUv5fGRcsnIHEeQc+XJlSqRVoaLDo3mNRV6jp5GzJW2BZx3KkuLbohcmfBdr6c8ehGvHXhPm4k2jq9UNYvG9Gy58+1GqdhIYWbRc0Haid8H7UvvdkjA+Yul2rLj4fSTJ6yJ4f6xFAsFY7wIJthpik+dQO9lqPglo9DY30gEOXs3miuJmdmFtBoYlzxti4JBGwxXPwP3rtu6rY1JEOFsh1WmSEGE6Df2l9wtUQ0WAAD6bWgCxMiiRRv7TegxSeMtGn5QKuPC5lFuvzZvtJy1rR8WQwT7lVdHz32xLP2Rs4dayQPh08x3GsuI54d2kti2rcaSltGLRAOuODWc8KjYsPS6Ku4aN2NoQB5H9TEbHy2fsUNpNPMbCY54lH5bkgJtO4WmulnAHEApZG07u8G+Kk3a15npXemWgUW3N9gGtJ2XmieendXqS3RK1ZUYDsnAWW2jCZkjGB6jANBgkrBgEEAYI3EQIxADATBgkqhkiG9w0BCRUxBgQEAQAAADBXBgkqhkiG9w0BCRQxSh5IAGEAYgBjAGYAOABhADUAOQAtAGYAZQAzADIALQA0AGIAZgA0AC0AYQBiAGMAZgAtADkAOAA3AGIANwBmADgANwAzADEANgBjMGsGCSsGAQQBgjcRATFeHlwATQBpAGMAcgBvAHMAbwBmAHQAIABFAG4AaABhAG4AYwBlAGQAIABDAHIAeQBwAHQAbwBnAHIAYQBwAGgAaQBjACAAUAByAG8AdgBpAGQAZQByACAAdgAxAC4AMDCCA38GCSqGSIb3DQEHBqCCA3AwggNsAgEAMIIDZQYJKoZIhvcNAQcBMBwGCiqGSIb3DQEMAQMwDgQIbQcNiyMGeL4CAgfQgIIDOPSSP6SqJGYsXCPWCMQU0TqdqT55fauuadduHaAlQpyN0MVYdu9QguLqMaJjxWa8Coy3K7LAOcqJ4S8FWV2SrpTuNHPv7vrtZfYhltGl+vW8rIrogeGTV4T/45oc5605HSiyItOWX8vHYKnAJkRMW4ICZXgY3dZVb+fr6yPIRFvMywqzwkViVOJIKjZN2lsAQ0xlLU0Fu/va9uxADwI2ZUKfo+6nX6bITkLvUSJoNCvZ5e7UITasxC4ZauHdMZch38N7BPH2usrAQfr3omYcScFzSeN2onhE1JBURCPDQa8+CGiWMm6mxboUOIcUGasaDqYQ8pSAgZZqQf8lU0uH4FP/z/5Dd7PniDHjvqlwYa+vB6flgtrwh6jYFeTKluhkucLrfzusFR52kHpg8K4GaUL8MhvlsNdd8iHSFjfyOdXRpY9re+B8X9Eorx0Z3xsSsVWaCwmI+Spq+BZ5CSXVm9Um6ogeM0et8JciZS2yFLIlbl2o4U1BWblskYfj/29jm4/2UKjKzORZnpjE0O+qP4hReSrx6os9dr8sNkq/7OafZock8zXjXaOpW6bqB1V5NWMPiWiPxPxfRi1F/MQp6CPY03H7MsDALEFcF7MmtY4YpN/+FFfrrOwS19Fg0OnQzNIgFpSRywX9dxyKICt/wbvhM+RLpUN50ZekFVska+C27hJRJEZ9rSdVhOVdL1UNknuwqF1cCQQriaNsnCbeVHN3/Wgsms9+Kt+glBNyZQlU8Fk+fafcQFI5MlxyMmARVwnC70F8AScnJPPFVZIdgIrvOXCDrEh8wFgkVM/MHkaTZUF51yy3pbIZaPmNd5dsUfEvMsW2IY6esnUUxPRQUUoi5Ib8EFHdiQJrYY3ELfZRXb2I1Xd0DVhlGzogn3CXZtXR2gSAakdB0qrLpXMSJNS65SS2tVTD7SI8OpUGNRjthQIAEEROPue10geFUwarWi/3jGMG529SzwDUJ4g0ix6VtcuLIDYFNdClDTyEyeV1f70NSG2QVXPIpeF7WQ8jWK7kenGaqqna4C4FYQpQk9vJP171nUXLR2mUR11bo1N4hcVhXnJls5yo9u14BB9CqVKXeDl7M5zwMDswHzAHBgUrDgMCGgQUT6Tjuka1G4O/ZCBxO7NBR34YUYQEFLaheEdRIIuxUd25/hl5vf2SFuZuAgIH0A==", + "privateBlob": "privateBlob", "certPassword": "password" } } diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/SqlTdeCertificateCreate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/SqlTdeCertificateCreate.json index 55de400a9d03..ebec5636961a 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/SqlTdeCertificateCreate.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/SqlTdeCertificateCreate.json @@ -7,7 +7,7 @@ "api-version": "2017-10-01-preview", "parameters": { "properties": { - "privateBlob": "MIIJ+QIBAzCCCbUGCSqGSIb3DQEHAaCCCaYEggmiMIIJnjCCBhcGCSqGSIb3DQEHAaCCBggEggYEMIIGADCCBfwGCyqGSIb3DQEMCgECoIIE/jCCBPowHAYKKoZIhvcNAQwBAzAOBAgUeBd7F2KZUwICB9AEggTYSRi88/Xf0EZ9smyYDCr+jHa7a/510s19/5wjqGbLTT/CYBu2qSOhj+g9sNvjj5oWAcluaZ4XCl/oJhXlB+9q9ZYSC6pPhma7/Il+/zlZm8ZUMfgnUefpKXGj+Ilydghya2DOA0PONDGbqIJGBYC0JgtiL7WcYyA+LEiO0vXc2fZ+ccjQsHM+ePFOm6rTJ1oqE3quRC5Ls2Bv22PCmF+GWkWxqH1L5x8wR2tYfecEsx4sKMj318novQqBlJckOUPDrTT2ic6izFnDWS+zbGezSCeRkt2vjCUVDg7Aqm2bkmLVn+arA3tDZ/DBxgTwwt8prpAznDYG07WRxXMUk8Uqzmcds85jSMLSBOoRaS7GwIPprx0QwyYXd8H/go2vafuGCydRk8mA0bGLXjYWuYHAtztlGrE71a7ILqHY4XankohSAY4YF9Fc1mJcdtsuICs5vNosw1lf0VK5BR4ONCkiGFdYEKUpaUrzKpQiw3zteBN8RQs/ADKGWzaWERrkptf0pLH3/QnZvu9xwwnNWneygByPy7OVYrvgjD27x7Y/C24GyQweh75OTQN3fAvUj7IqeTVyWZGZq32AY/uUXYwASBpLbNUtUBfJ7bgyvVSZlPvcFUwDHJC1P+fSP8Vfcc9W3ec9HqVheXio7gYBEg9hZrOZwiZorl8HZJsEj5NxGccBme6hEVQRZfar5kFDHor/zmKohEAJVw8lVLkgmEuz8aqQUDSWVAcLbkfqygK/NxsR2CaC6xWroagQSRwpF8YbvqYJtAQvdkUXY9Ll4LSRcxKrWMZHgI+1Z22pyNtpy/kXLADche5CF3AVbHtzNNgn9L4GVuCW1Lqufu3U2+DEG+u53u1vraf45RS1y0IyLjTGC+8j0OTxcgUU6FrGgFny0m676v8potPrfyHvuOO511aOTe8UPBfnYyx0XHJPn8RaYGq0vMOBpFyfJkXtAnbRMgXjxxiO91yXTI2hbdVlAmOER1u8QemtF5PoKwZzaAjGBC5S0ARNtxZcWInGciGgtWJVVcyU6nJv3pa2T8jNvtcp8X7j+Il6j6Sju02L/f+S9MvAoGfgG6C5cInNIBEt7+mpYYV/6Mi9Nnj+8/Cq3eAMdTTo7XIzbFpeInzpVN2lAxPockRoAVj+odYO3CIBnzJ7mcA7JqtNk76vaWKasocMk9YS0Z+43o/Z5pZPwXvUv++UUv5fGRcsnIHEeQc+XJlSqRVoaLDo3mNRV6jp5GzJW2BZx3KkuLbohcmfBdr6c8ehGvHXhPm4k2jq9UNYvG9Gy58+1GqdhIYWbRc0Haid8H7UvvdkjA+Yul2rLj4fSTJ6yJ4f6xFAsFY7wIJthpik+dQO9lqPglo9DY30gEOXs3miuJmdmFtBoYlzxti4JBGwxXPwP3rtu6rY1JEOFsh1WmSEGE6Df2l9wtUQ0WAAD6bWgCxMiiRRv7TegxSeMtGn5QKuPC5lFuvzZvtJy1rR8WQwT7lVdHz32xLP2Rs4dayQPh08x3GsuI54d2kti2rcaSltGLRAOuODWc8KjYsPS6Ku4aN2NoQB5H9TEbHy2fsUNpNPMbCY54lH5bkgJtO4WmulnAHEApZG07u8G+Kk3a15npXemWgUW3N9gGtJ2XmieendXqS3RK1ZUYDsnAWW2jCZkjGB6jANBgkrBgEEAYI3EQIxADATBgkqhkiG9w0BCRUxBgQEAQAAADBXBgkqhkiG9w0BCRQxSh5IAGEAYgBjAGYAOABhADUAOQAtAGYAZQAzADIALQA0AGIAZgA0AC0AYQBiAGMAZgAtADkAOAA3AGIANwBmADgANwAzADEANgBjMGsGCSsGAQQBgjcRATFeHlwATQBpAGMAcgBvAHMAbwBmAHQAIABFAG4AaABhAG4AYwBlAGQAIABDAHIAeQBwAHQAbwBnAHIAYQBwAGgAaQBjACAAUAByAG8AdgBpAGQAZQByACAAdgAxAC4AMDCCA38GCSqGSIb3DQEHBqCCA3AwggNsAgEAMIIDZQYJKoZIhvcNAQcBMBwGCiqGSIb3DQEMAQMwDgQIbQcNiyMGeL4CAgfQgIIDOPSSP6SqJGYsXCPWCMQU0TqdqT55fauuadduHaAlQpyN0MVYdu9QguLqMaJjxWa8Coy3K7LAOcqJ4S8FWV2SrpTuNHPv7vrtZfYhltGl+vW8rIrogeGTV4T/45oc5605HSiyItOWX8vHYKnAJkRMW4ICZXgY3dZVb+fr6yPIRFvMywqzwkViVOJIKjZN2lsAQ0xlLU0Fu/va9uxADwI2ZUKfo+6nX6bITkLvUSJoNCvZ5e7UITasxC4ZauHdMZch38N7BPH2usrAQfr3omYcScFzSeN2onhE1JBURCPDQa8+CGiWMm6mxboUOIcUGasaDqYQ8pSAgZZqQf8lU0uH4FP/z/5Dd7PniDHjvqlwYa+vB6flgtrwh6jYFeTKluhkucLrfzusFR52kHpg8K4GaUL8MhvlsNdd8iHSFjfyOdXRpY9re+B8X9Eorx0Z3xsSsVWaCwmI+Spq+BZ5CSXVm9Um6ogeM0et8JciZS2yFLIlbl2o4U1BWblskYfj/29jm4/2UKjKzORZnpjE0O+qP4hReSrx6os9dr8sNkq/7OafZock8zXjXaOpW6bqB1V5NWMPiWiPxPxfRi1F/MQp6CPY03H7MsDALEFcF7MmtY4YpN/+FFfrrOwS19Fg0OnQzNIgFpSRywX9dxyKICt/wbvhM+RLpUN50ZekFVska+C27hJRJEZ9rSdVhOVdL1UNknuwqF1cCQQriaNsnCbeVHN3/Wgsms9+Kt+glBNyZQlU8Fk+fafcQFI5MlxyMmARVwnC70F8AScnJPPFVZIdgIrvOXCDrEh8wFgkVM/MHkaTZUF51yy3pbIZaPmNd5dsUfEvMsW2IY6esnUUxPRQUUoi5Ib8EFHdiQJrYY3ELfZRXb2I1Xd0DVhlGzogn3CXZtXR2gSAakdB0qrLpXMSJNS65SS2tVTD7SI8OpUGNRjthQIAEEROPue10geFUwarWi/3jGMG529SzwDUJ4g0ix6VtcuLIDYFNdClDTyEyeV1f70NSG2QVXPIpeF7WQ8jWK7kenGaqqna4C4FYQpQk9vJP171nUXLR2mUR11bo1N4hcVhXnJls5yo9u14BB9CqVKXeDl7M5zwMDswHzAHBgUrDgMCGgQUT6Tjuka1G4O/ZCBxO7NBR34YUYQEFLaheEdRIIuxUd25/hl5vf2SFuZuAgIH0A==", + "privateBlob": "privateBlob", "certPassword": "password" } } diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceRemoveMaintenanceConfiguration.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceRemoveMaintenanceConfiguration.json new file mode 100644 index 000000000000..7cb13d585a8a --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceRemoveMaintenanceConfiguration.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "20D7082A-0FC7-4468-82BD-542694D5042B", + "resourceGroupName": "testrg", + "managedInstanceName": "testinstance", + "api-version": "2018-06-01-preview", + "parameters": { + "properties": { + "maintenanceConfigurationId": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_Default" + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "GP_Gen4", + "tier": "GeneralPurpose", + "capacity": 8, + "family": "Gen4" + }, + "properties": { + "fullyQualifiedDomainName": "testinstance.1b4e2caff2530.database.windows.net", + "administratorLogin": "dummylogin", + "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "state": "Ready", + "vCores": 8, + "storageSizeInGB": 1024, + "licenseType": "LicenseIncluded", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "publicDataEndpointEnabled": false, + "proxyOverride": "Default", + "dnsZone": "1b4e2caff2530", + "maintenanceConfigurationId": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_Default" + }, + "location": "japaneast", + "id": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/testrg/providers/Microsoft.Sql/managedInstances/testinstance", + "name": "testinstance", + "type": "Microsoft.Sql/managedInstances" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/managedInstances.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/managedInstances.json index 5006cad54c5f..2f6a18f15f3a 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/managedInstances.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/managedInstances.json @@ -289,6 +289,9 @@ }, "Update managed instance with all properties": { "$ref": "./examples/ManagedInstanceUpdateMax.json" + }, + "Remove maintenance policy from managed instance (select default maintenance policy)": { + "$ref": "./examples/ManagedInstanceRemoveMaintenanceConfiguration.json" } } } diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-02-02-preview/DatabaseAdvisors.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-02-02-preview/DatabaseAdvisors.json index 1a21f15bce74..3116c237ca50 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-02-02-preview/DatabaseAdvisors.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-02-02-preview/DatabaseAdvisors.json @@ -581,6 +581,11 @@ "RecommendedAction": { "description": "Database, Server or Elastic Pool Recommended Action.", "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], "properties": { "kind": { "description": "Resource kind.", @@ -596,21 +601,6 @@ "$ref": "#/definitions/RecommendedActionProperties", "description": "Resource properties.", "x-ms-client-flatten": true - }, - "id": { - "description": "Resource ID.", - "type": "string", - "readOnly": true - }, - "name": { - "description": "Resource name.", - "type": "string", - "readOnly": true - }, - "type": { - "description": "Resource type.", - "type": "string", - "readOnly": true } } }, diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-02-02-preview/ManagedInstances.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-02-02-preview/ManagedInstances.json index eb9e069fdc98..668f96ab0ce0 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-02-02-preview/ManagedInstances.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-02-02-preview/ManagedInstances.json @@ -289,6 +289,9 @@ }, "Update managed instance with all properties": { "$ref": "./examples/ManagedInstanceUpdateMax.json" + }, + "Remove maintenance policy from managed instance (select default maintenance policy)": { + "$ref": "./examples/ManagedInstanceRemoveMaintenanceConfiguration.json" } } } diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-02-02-preview/ServerAdvisors.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-02-02-preview/ServerAdvisors.json index df2cea7b906b..f6dd91ced9cb 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-02-02-preview/ServerAdvisors.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-02-02-preview/ServerAdvisors.json @@ -572,6 +572,11 @@ "RecommendedAction": { "description": "Database, Server or Elastic Pool Recommended Action.", "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], "properties": { "kind": { "description": "Resource kind.", @@ -587,21 +592,6 @@ "$ref": "#/definitions/RecommendedActionProperties", "description": "Resource properties.", "x-ms-client-flatten": true - }, - "id": { - "description": "Resource ID.", - "type": "string", - "readOnly": true - }, - "name": { - "description": "Resource name.", - "type": "string", - "readOnly": true - }, - "type": { - "description": "Resource type.", - "type": "string", - "readOnly": true } } }, diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-02-02-preview/examples/ManagedInstanceRemoveMaintenanceConfiguration.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-02-02-preview/examples/ManagedInstanceRemoveMaintenanceConfiguration.json new file mode 100644 index 000000000000..5b5ee9e0dfb6 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-02-02-preview/examples/ManagedInstanceRemoveMaintenanceConfiguration.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "20D7082A-0FC7-4468-82BD-542694D5042B", + "resourceGroupName": "testrg", + "managedInstanceName": "testinstance", + "api-version": "2020-02-02-preview", + "parameters": { + "properties": { + "maintenanceConfigurationId": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_Default" + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "GP_Gen4", + "tier": "GeneralPurpose", + "capacity": 8, + "family": "Gen4" + }, + "properties": { + "fullyQualifiedDomainName": "testinstance.1b4e2caff2530.database.windows.net", + "administratorLogin": "dummylogin", + "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "state": "Ready", + "vCores": 8, + "storageSizeInGB": 1024, + "licenseType": "LicenseIncluded", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "publicDataEndpointEnabled": false, + "proxyOverride": "Default", + "dnsZone": "1b4e2caff2530", + "maintenanceConfigurationId": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_Default" + }, + "location": "japaneast", + "id": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/testrg/providers/Microsoft.Sql/managedInstances/testinstance", + "name": "testinstance", + "type": "Microsoft.Sql/managedInstances" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/DatabaseAdvisors.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/DatabaseAdvisors.json index 3c717038be6c..0d1fa7d11a2c 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/DatabaseAdvisors.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/DatabaseAdvisors.json @@ -581,6 +581,11 @@ "RecommendedAction": { "description": "Database, Server or Elastic Pool Recommended Action.", "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], "properties": { "kind": { "description": "Resource kind.", @@ -596,21 +601,6 @@ "$ref": "#/definitions/RecommendedActionProperties", "description": "Resource properties.", "x-ms-client-flatten": true - }, - "id": { - "description": "Resource ID.", - "type": "string", - "readOnly": true - }, - "name": { - "description": "Resource name.", - "type": "string", - "readOnly": true - }, - "type": { - "description": "Resource type.", - "type": "string", - "readOnly": true } } }, diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/DatabaseExtensions.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/DatabaseExtensions.json index 2054c75f6d4a..6c934f298335 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/DatabaseExtensions.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/DatabaseExtensions.json @@ -88,7 +88,7 @@ "description": "The database import request parameters.", "required": true, "schema": { - "$ref": "#/definitions/DatabaseExtensionsDefinition" + "$ref": "#/definitions/DatabaseExtensions" } }, { @@ -106,7 +106,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 MissingImportExportInputParameters - Missing ImportExport input parameters.\n\n * 400 PolybaseImportAuthenticationTypeNotSupported - Authentication type parameter is not support for PolybaseImport operation.\n\n * 400 DatabaseExtensionsMissingOperationMode - Missing operationMode parameter for database extension.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 InvalidOperationType - Provide a valid operation type.\n\n * 404 ResourceNotFound - Invalid request specifying a non-existent resource.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ImportExportOperationIdNotFound - The operation Id for import or export cannot be found.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 409 ImportExportOperationInProgress - There is an import or export operation in progress on the database." + "description": "*** Error Responses: ***\n\n * 400 MissingImportExportInputParameters - Missing ImportExport input parameters.\n\n * 400 PolybaseImportAuthenticationTypeNotSupported - Authentication type parameter is not support for PolybaseImport operation.\n\n * 400 DatabaseExtensionsInvalidOperationMode - Invalid operationMode parameter for database extension.\n\n * 400 DatabaseExtensionsInvalidStorageKeyType - The storage key type must by 'StorageAccessKey'.\n\n * 400 DatabaseExtensionsMissingStorageUri - Storage URI cannot be empty.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 InvalidOperationType - Provide a valid operation type.\n\n * 400 ImportExportJobError - The ImportExport operation has failed.\n\n * 400 BlockedByOutboundFirewall - The outbound firewall rules blocked the request.\n\n * 404 ResourceNotFound - Invalid request specifying a non-existent resource.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ImportExportOperationIdNotFound - The operation Id for import or export cannot be found.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 409 ImportExportOperationInProgress - There is an import or export operation in progress on the database." }, "202": { "description": "Import/Export operation is in progress." @@ -167,7 +167,8 @@ } }, "definitions": { - "DatabaseExtensionsDefinition": { + "DatabaseExtensionsProperties": { + "description": "Contains the database information after successful export.", "required": [ "operationMode", "storageKeyType", @@ -218,27 +219,22 @@ "x-ms-mutability": [ "create" ] - }, - "administratorLogin": { - "description": "Administrator login name.", - "type": "string", - "x-ms-mutability": [ - "create" - ] - }, - "administratorLoginPassword": { - "description": "Administrator login password.", - "type": "string", - "x-ms-mutability": [ - "create" - ] - }, - "authenticationType": { - "description": "Authentication type.", - "type": "string", - "x-ms-mutability": [ - "create" - ] + } + } + }, + "DatabaseExtensions": { + "description": "An export managed database operation result resource.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/DatabaseExtensionsProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true } } }, diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/DatabaseOperations.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/DatabaseOperations.json index 2ae4dd76dc18..be096d1506e9 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/DatabaseOperations.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/DatabaseOperations.json @@ -53,7 +53,7 @@ "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 InvalidDatabaseCreateMode - Invalid request to create a database.\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 InvalidBackupStorageAccountType - User passed zrs/lrs during create/update of a database but it failed either because the customer is not whitelisted or because zrs is not available in the specified region.\n\n * 400 CannotUpdateToFreeDatabase - Updating a database to the free sku is not supported.\n\n * 400 DatabaseInvalidSkuPropertyCombination - The properties of the requested sku are inconsistent. Please check that a valid combination is specified. See https://docs.microsoft.com/en-us/rest/api/sql/capabilities/listbylocation#serviceobjectivecapability for more details.\n\n * 400 DatabaseNamedReplicaPerDatabaseLimitExceeded - User tried create a named replica that would exceed the allowed number per primary database\n\n * 400 RestoreTargetEditionSizeInsufficient - User attempted to restore a database to an edition that is a smaller size than the current allocated size of the source.\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 DatabaseCreationBlockedForNonActivatedCMKServer - SQL Pool creations are blocked for CMK enabled workspaces until the workspace is activated. First, enable purge protection and grant the workspace Managed Identity the required permissions (Get, Wrap Key, Unwrap Key) on the Azure Key Vault of the workspace key. Next, activate your workspace after you have granted access.\n\n * 400 PartnerServerNotCompatible - 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 TargetElasticPoolDoesNotExist - The elastic pool does not exist on a 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 ElasticPoolNameRequired - User tried to create or update database to elastic pool service objective without specifying the name of the elastic pool.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\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 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\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 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 InvalidReadScaleEdition - User attempted to enable read scale on a database type that does not support it.\n\n * 400 InvalidReadScaleUnits - User attempted to provide a read scale value that is not supported.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\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 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\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 RequestedDatabaseSizeRequiresShrink - User attempted to ALTER DATABASE MODIFY MAXSIZE to modify the MAXSIZE for a database to a smaller size then the current size.\n\n * 400 CurrentDatabaseSizeExceedsDbMaxSize - User attempted to reduce the max size for a database to a size smaller than the current usage.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 SourceDatabaseEditionCouldNotBeUpgraded - The source database cannot have higher edition than the target database.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 TargetDatabaseEditionCouldNotBeDowngraded - The target database cannot have lower edition than the source database.\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currently in progress.\n\n * 400 InvalidCollation - Collation is not recognized by the server.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 PartnerDBNotCompatibleForSGXEnclave - Attempt to set GeoDR link or update SLO for enclave enabled database is only supported when both database are running on DC-series hardware.\n\n * 400 UpdateNotAllowedInCurrentReplicationState - The operation is disallowed on the database in its current replication state.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 GeoReplicaLimitReached - The per-replica replication limit was reached.\n\n * 400 UnsupportedCapacity - User tried to create or update database with capacity which is not supported.\n\n * 400 ReplicationSourceAndTargetMustHaveSameName - The replication source and target databases must have the same name.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\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 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 400 RestoreToFreeEditionNotSupported - Restore and GeoRestore target cannot be free database.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 400 RestoreNotSupportedForFreeEdition - Restore and GeoRestore are not supported for free database.\n\n * 400 JobAgentDatabaseEditionUnsupported - The specified database's service level objective is not supported for use as a job agent database.\n\n * 400 InvalidDroppedDatabase - Source database dropped does not exist on server within the supported recovery period.\n\n * 400 InvalidLiveDatabase - Source database does not exist on server within the supported recovery period. If restoring a dropped database, please specify its deletion date.\n\n * 400 InvalidVldbRecoverySlo - The Hyperscale edition recovery requires both source and target databases to use Hyperscale service level objective.\n\n * 400 SourceDatabaseNotFound - The source database does not exist.\n\n * 400 InvalidVldbRestoreSlo - The Hyperscale edition Point-In-Time restore requires both source and target databases to use Hyperscale service level objective.\n\n * 400 CannotSpecifyPoolOrSlo - Specifying an elastic pool and/or changing the service level objective or edition is not supported for edition.\n\n * 400 InvalidPublicMaintenanceConfiguration - User tried to specify public maintenance configuration which cannot be converted to internal id (malformed or wrong region).\n\n * 400 ChangeUnsupportedOnEntity - User attempted an unsupported create/update/delete operation on a given entity.\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 * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 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 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 * 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 FreeDbAlreadyExists - Only one free database can exist for a subscription per region.\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 ConflictRequestToUpdateBackupRedundancy - A conflict request to change backup storage redundancy is still in progress.\n\n * 409 SkuAssignmentInProgress - The current assignment request cannot be processed because a previous request has not completed.\n\n * 409 DatabaseElasticPoolMaintenanceConflict - User tried to create or update a database with a specified maintenance configuration that conflicted with that of the elastic pool of the database.\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 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 ServerDisabled - Server is disabled.\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 TargetElasticPoolBeingUpdated - The update of elastic pool cannot be started because there is copy operation in progress for one of the databases in this elastic pool\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 DatabaseCopyLimitPerReplicaReached - User reached the limit of concurrent database copies.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 ServerDisabled - Server is disabled.\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 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\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." + "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 InvalidDatabaseCreateMode - Invalid request to create a database.\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 InvalidBackupStorageAccountType - User passed zrs/lrs during create/update of a database but it failed either because the customer is not whitelisted or because zrs is not available in the specified region.\n\n * 400 CannotUpdateToFreeDatabase - Updating a database to the free sku is not supported.\n\n * 400 DatabaseInvalidSkuPropertyCombination - The properties of the requested sku are inconsistent. Please check that a valid combination is specified. See https://docs.microsoft.com/en-us/rest/api/sql/capabilities/listbylocation#serviceobjectivecapability for more details.\n\n * 400 DatabaseNamedReplicaPerDatabaseLimitExceeded - User tried create a named replica that would exceed the allowed number per primary database\n\n * 400 RestoreTargetEditionSizeInsufficient - User attempted to restore a database to an edition that is a smaller size than the current allocated size of the source.\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 DatabaseCreationBlockedForNonActivatedCMKServer - SQL Pool creations are blocked for CMK enabled workspaces until the workspace is activated. First, enable purge protection and grant the workspace Managed Identity the required permissions (Get, Wrap Key, Unwrap Key) on the Azure Key Vault of the workspace key. Next, activate your workspace after you have granted access.\n\n * 400 PartnerServerNotCompatible - 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 TargetElasticPoolDoesNotExist - The elastic pool does not exist on a 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 ElasticPoolNameRequired - User tried to create or update database to elastic pool service objective without specifying the name of the elastic pool.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\n\n * 400 TierChangeUnsupportedDueToCDCEnabledDatabase - The database cannot update its sku because it is enabled for CDC.\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 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\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 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 InvalidReadScaleEdition - User attempted to enable read scale on a database type that does not support it.\n\n * 400 InvalidReadScaleUnits - User attempted to provide a read scale value that is not supported.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\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 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\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 RequestedDatabaseSizeRequiresShrink - User attempted to ALTER DATABASE MODIFY MAXSIZE to modify the MAXSIZE for a database to a smaller size then the current size.\n\n * 400 CurrentDatabaseSizeExceedsDbMaxSize - User attempted to reduce the max size for a database to a size smaller than the current usage.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 SourceDatabaseEditionCouldNotBeUpgraded - The source database cannot have higher edition than the target database.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 TargetDatabaseEditionCouldNotBeDowngraded - The target database cannot have lower edition than the source database.\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currently in progress.\n\n * 400 InvalidCollation - Collation is not recognized by the server.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 PartnerDBNotCompatibleForSGXEnclave - Attempt to set GeoDR link or update SLO for enclave enabled database is only supported when both database are running on DC-series hardware.\n\n * 400 UpdateNotAllowedInCurrentReplicationState - The operation is disallowed on the database in its current replication state.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 GeoReplicaLimitReached - The per-replica replication limit was reached.\n\n * 400 UnsupportedCapacity - User tried to create or update database with capacity which is not supported.\n\n * 400 ReplicationSourceAndTargetMustHaveSameName - The replication source and target databases must have the same name.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\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 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 400 RestoreToFreeEditionNotSupported - Restore and GeoRestore target cannot be free database.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 400 RestoreNotSupportedForFreeEdition - Restore and GeoRestore are not supported for free database.\n\n * 400 JobAgentDatabaseEditionUnsupported - The specified database's service level objective is not supported for use as a job agent database.\n\n * 400 InvalidDroppedDatabase - Source database dropped does not exist on server within the supported recovery period.\n\n * 400 InvalidLiveDatabase - Source database does not exist on server within the supported recovery period. If restoring a dropped database, please specify its deletion date.\n\n * 400 InvalidVldbRecoverySlo - The Hyperscale edition recovery requires both source and target databases to use Hyperscale service level objective.\n\n * 400 SourceDatabaseNotFound - The source database does not exist.\n\n * 400 InvalidVldbRestoreSlo - The Hyperscale edition Point-In-Time restore requires both source and target databases to use Hyperscale service level objective.\n\n * 400 CannotSpecifyPoolOrSlo - Specifying an elastic pool and/or changing the service level objective or edition is not supported for edition.\n\n * 400 InvalidPublicMaintenanceConfiguration - User tried to specify public maintenance configuration which cannot be converted to internal id (malformed or wrong region).\n\n * 400 ChangeUnsupportedOnEntity - User attempted an unsupported create/update/delete operation on a given entity.\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 * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 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 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 * 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 FreeDbAlreadyExists - Only one free database can exist for a subscription per region.\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 ConflictRequestToUpdateBackupRedundancy - A conflict request to change backup storage redundancy is still in progress.\n\n * 409 SkuAssignmentInProgress - The current assignment request cannot be processed because a previous request has not completed.\n\n * 409 DatabaseElasticPoolMaintenanceConflict - User tried to create or update a database with a specified maintenance configuration that conflicted with that of the elastic pool of the database.\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 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 ServerDisabled - Server is disabled.\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 TargetElasticPoolBeingUpdated - The update of elastic pool cannot be started because there is copy operation in progress for one of the databases in this elastic pool\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 DatabaseCopyLimitPerReplicaReached - User reached the limit of concurrent database copies.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 ServerDisabled - Server is disabled.\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 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\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": { @@ -95,7 +95,7 @@ } }, "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 InvalidDatabaseCreateMode - Invalid request to create a database.\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 InvalidBackupStorageAccountType - User passed zrs/lrs during create/update of a database but it failed either because the customer is not whitelisted or because zrs is not available in the specified region.\n\n * 400 CannotUpdateToFreeDatabase - Updating a database to the free sku is not supported.\n\n * 400 DatabaseInvalidSkuPropertyCombination - The properties of the requested sku are inconsistent. Please check that a valid combination is specified. See https://docs.microsoft.com/en-us/rest/api/sql/capabilities/listbylocation#serviceobjectivecapability for more details.\n\n * 400 DatabaseNamedReplicaPerDatabaseLimitExceeded - User tried create a named replica that would exceed the allowed number per primary database\n\n * 400 RestoreTargetEditionSizeInsufficient - User attempted to restore a database to an edition that is a smaller size than the current allocated size of the source.\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 DatabaseCreationBlockedForNonActivatedCMKServer - SQL Pool creations are blocked for CMK enabled workspaces until the workspace is activated. First, enable purge protection and grant the workspace Managed Identity the required permissions (Get, Wrap Key, Unwrap Key) on the Azure Key Vault of the workspace key. Next, activate your workspace after you have granted access.\n\n * 400 PartnerServerNotCompatible - 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 TargetElasticPoolDoesNotExist - The elastic pool does not exist on a 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 ElasticPoolNameRequired - User tried to create or update database to elastic pool service objective without specifying the name of the elastic pool.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\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 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\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 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 InvalidReadScaleEdition - User attempted to enable read scale on a database type that does not support it.\n\n * 400 InvalidReadScaleUnits - User attempted to provide a read scale value that is not supported.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\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 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\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 RequestedDatabaseSizeRequiresShrink - User attempted to ALTER DATABASE MODIFY MAXSIZE to modify the MAXSIZE for a database to a smaller size then the current size.\n\n * 400 CurrentDatabaseSizeExceedsDbMaxSize - User attempted to reduce the max size for a database to a size smaller than the current usage.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 SourceDatabaseEditionCouldNotBeUpgraded - The source database cannot have higher edition than the target database.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 TargetDatabaseEditionCouldNotBeDowngraded - The target database cannot have lower edition than the source database.\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currently in progress.\n\n * 400 InvalidCollation - Collation is not recognized by the server.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 PartnerDBNotCompatibleForSGXEnclave - Attempt to set GeoDR link or update SLO for enclave enabled database is only supported when both database are running on DC-series hardware.\n\n * 400 UpdateNotAllowedInCurrentReplicationState - The operation is disallowed on the database in its current replication state.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 GeoReplicaLimitReached - The per-replica replication limit was reached.\n\n * 400 UnsupportedCapacity - User tried to create or update database with capacity which is not supported.\n\n * 400 ReplicationSourceAndTargetMustHaveSameName - The replication source and target databases must have the same name.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\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 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 400 RestoreToFreeEditionNotSupported - Restore and GeoRestore target cannot be free database.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 400 RestoreNotSupportedForFreeEdition - Restore and GeoRestore are not supported for free database.\n\n * 400 JobAgentDatabaseEditionUnsupported - The specified database's service level objective is not supported for use as a job agent database.\n\n * 400 InvalidDroppedDatabase - Source database dropped does not exist on server within the supported recovery period.\n\n * 400 InvalidLiveDatabase - Source database does not exist on server within the supported recovery period. If restoring a dropped database, please specify its deletion date.\n\n * 400 InvalidVldbRecoverySlo - The Hyperscale edition recovery requires both source and target databases to use Hyperscale service level objective.\n\n * 400 SourceDatabaseNotFound - The source database does not exist.\n\n * 400 InvalidVldbRestoreSlo - The Hyperscale edition Point-In-Time restore requires both source and target databases to use Hyperscale service level objective.\n\n * 400 CannotSpecifyPoolOrSlo - Specifying an elastic pool and/or changing the service level objective or edition is not supported for edition.\n\n * 400 InvalidPublicMaintenanceConfiguration - User tried to specify public maintenance configuration which cannot be converted to internal id (malformed or wrong region).\n\n * 400 ChangeUnsupportedOnEntity - User attempted an unsupported create/update/delete operation on a given entity.\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 * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 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 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 * 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 FreeDbAlreadyExists - Only one free database can exist for a subscription per region.\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 ConflictRequestToUpdateBackupRedundancy - A conflict request to change backup storage redundancy is still in progress.\n\n * 409 SkuAssignmentInProgress - The current assignment request cannot be processed because a previous request has not completed.\n\n * 409 DatabaseElasticPoolMaintenanceConflict - User tried to create or update a database with a specified maintenance configuration that conflicted with that of the elastic pool of the database.\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 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 ServerDisabled - Server is disabled.\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 TargetElasticPoolBeingUpdated - The update of elastic pool cannot be started because there is copy operation in progress for one of the databases in this elastic pool\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 DatabaseCopyLimitPerReplicaReached - User reached the limit of concurrent database copies.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 ServerDisabled - Server is disabled.\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 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\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." + "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 InvalidDatabaseCreateMode - Invalid request to create a database.\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 InvalidBackupStorageAccountType - User passed zrs/lrs during create/update of a database but it failed either because the customer is not whitelisted or because zrs is not available in the specified region.\n\n * 400 CannotUpdateToFreeDatabase - Updating a database to the free sku is not supported.\n\n * 400 DatabaseInvalidSkuPropertyCombination - The properties of the requested sku are inconsistent. Please check that a valid combination is specified. See https://docs.microsoft.com/en-us/rest/api/sql/capabilities/listbylocation#serviceobjectivecapability for more details.\n\n * 400 DatabaseNamedReplicaPerDatabaseLimitExceeded - User tried create a named replica that would exceed the allowed number per primary database\n\n * 400 RestoreTargetEditionSizeInsufficient - User attempted to restore a database to an edition that is a smaller size than the current allocated size of the source.\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 DatabaseCreationBlockedForNonActivatedCMKServer - SQL Pool creations are blocked for CMK enabled workspaces until the workspace is activated. First, enable purge protection and grant the workspace Managed Identity the required permissions (Get, Wrap Key, Unwrap Key) on the Azure Key Vault of the workspace key. Next, activate your workspace after you have granted access.\n\n * 400 PartnerServerNotCompatible - 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 TargetElasticPoolDoesNotExist - The elastic pool does not exist on a 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 ElasticPoolNameRequired - User tried to create or update database to elastic pool service objective without specifying the name of the elastic pool.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\n\n * 400 TierChangeUnsupportedDueToCDCEnabledDatabase - The database cannot update its sku because it is enabled for CDC.\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 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\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 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 InvalidReadScaleEdition - User attempted to enable read scale on a database type that does not support it.\n\n * 400 InvalidReadScaleUnits - User attempted to provide a read scale value that is not supported.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\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 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\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 RequestedDatabaseSizeRequiresShrink - User attempted to ALTER DATABASE MODIFY MAXSIZE to modify the MAXSIZE for a database to a smaller size then the current size.\n\n * 400 CurrentDatabaseSizeExceedsDbMaxSize - User attempted to reduce the max size for a database to a size smaller than the current usage.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 SourceDatabaseEditionCouldNotBeUpgraded - The source database cannot have higher edition than the target database.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 TargetDatabaseEditionCouldNotBeDowngraded - The target database cannot have lower edition than the source database.\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currently in progress.\n\n * 400 InvalidCollation - Collation is not recognized by the server.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 PartnerDBNotCompatibleForSGXEnclave - Attempt to set GeoDR link or update SLO for enclave enabled database is only supported when both database are running on DC-series hardware.\n\n * 400 UpdateNotAllowedInCurrentReplicationState - The operation is disallowed on the database in its current replication state.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 GeoReplicaLimitReached - The per-replica replication limit was reached.\n\n * 400 UnsupportedCapacity - User tried to create or update database with capacity which is not supported.\n\n * 400 ReplicationSourceAndTargetMustHaveSameName - The replication source and target databases must have the same name.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\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 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 400 RestoreToFreeEditionNotSupported - Restore and GeoRestore target cannot be free database.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 400 RestoreNotSupportedForFreeEdition - Restore and GeoRestore are not supported for free database.\n\n * 400 JobAgentDatabaseEditionUnsupported - The specified database's service level objective is not supported for use as a job agent database.\n\n * 400 InvalidDroppedDatabase - Source database dropped does not exist on server within the supported recovery period.\n\n * 400 InvalidLiveDatabase - Source database does not exist on server within the supported recovery period. If restoring a dropped database, please specify its deletion date.\n\n * 400 InvalidVldbRecoverySlo - The Hyperscale edition recovery requires both source and target databases to use Hyperscale service level objective.\n\n * 400 SourceDatabaseNotFound - The source database does not exist.\n\n * 400 InvalidVldbRestoreSlo - The Hyperscale edition Point-In-Time restore requires both source and target databases to use Hyperscale service level objective.\n\n * 400 CannotSpecifyPoolOrSlo - Specifying an elastic pool and/or changing the service level objective or edition is not supported for edition.\n\n * 400 InvalidPublicMaintenanceConfiguration - User tried to specify public maintenance configuration which cannot be converted to internal id (malformed or wrong region).\n\n * 400 ChangeUnsupportedOnEntity - User attempted an unsupported create/update/delete operation on a given entity.\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 * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 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 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 * 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 FreeDbAlreadyExists - Only one free database can exist for a subscription per region.\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 ConflictRequestToUpdateBackupRedundancy - A conflict request to change backup storage redundancy is still in progress.\n\n * 409 SkuAssignmentInProgress - The current assignment request cannot be processed because a previous request has not completed.\n\n * 409 DatabaseElasticPoolMaintenanceConflict - User tried to create or update a database with a specified maintenance configuration that conflicted with that of the elastic pool of the database.\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 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 ServerDisabled - Server is disabled.\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 TargetElasticPoolBeingUpdated - The update of elastic pool cannot be started because there is copy operation in progress for one of the databases in this elastic pool\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 DatabaseCopyLimitPerReplicaReached - User reached the limit of concurrent database copies.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 ServerDisabled - Server is disabled.\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 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\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": { diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/DatabaseUsages.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/DatabaseUsages.json index 7a53193cc653..278022f57023 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/DatabaseUsages.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/DatabaseUsages.json @@ -48,7 +48,7 @@ } }, "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 InvalidDatabaseCreateMode - Invalid request to create a database.\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 InvalidBackupStorageAccountType - User passed zrs/lrs during create/update of a database but it failed either because the customer is not whitelisted or because zrs is not available in the specified region.\n\n * 400 CannotUpdateToFreeDatabase - Updating a database to the free sku is not supported.\n\n * 400 DatabaseInvalidSkuPropertyCombination - The properties of the requested sku are inconsistent. Please check that a valid combination is specified. See https://docs.microsoft.com/en-us/rest/api/sql/capabilities/listbylocation#serviceobjectivecapability for more details.\n\n * 400 DatabaseNamedReplicaPerDatabaseLimitExceeded - User tried create a named replica that would exceed the allowed number per primary database\n\n * 400 RestoreTargetEditionSizeInsufficient - User attempted to restore a database to an edition that is a smaller size than the current allocated size of the source.\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 DatabaseCreationBlockedForNonActivatedCMKServer - SQL Pool creations are blocked for CMK enabled workspaces until the workspace is activated. First, enable purge protection and grant the workspace Managed Identity the required permissions (Get, Wrap Key, Unwrap Key) on the Azure Key Vault of the workspace key. Next, activate your workspace after you have granted access.\n\n * 400 PartnerServerNotCompatible - 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 TargetElasticPoolDoesNotExist - The elastic pool does not exist on a 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 ElasticPoolNameRequired - User tried to create or update database to elastic pool service objective without specifying the name of the elastic pool.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\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 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\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 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 InvalidReadScaleEdition - User attempted to enable read scale on a database type that does not support it.\n\n * 400 InvalidReadScaleUnits - User attempted to provide a read scale value that is not supported.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\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 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\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 RequestedDatabaseSizeRequiresShrink - User attempted to ALTER DATABASE MODIFY MAXSIZE to modify the MAXSIZE for a database to a smaller size then the current size.\n\n * 400 CurrentDatabaseSizeExceedsDbMaxSize - User attempted to reduce the max size for a database to a size smaller than the current usage.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 SourceDatabaseEditionCouldNotBeUpgraded - The source database cannot have higher edition than the target database.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 TargetDatabaseEditionCouldNotBeDowngraded - The target database cannot have lower edition than the source database.\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currently in progress.\n\n * 400 InvalidCollation - Collation is not recognized by the server.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 PartnerDBNotCompatibleForSGXEnclave - Attempt to set GeoDR link or update SLO for enclave enabled database is only supported when both database are running on DC-series hardware.\n\n * 400 UpdateNotAllowedInCurrentReplicationState - The operation is disallowed on the database in its current replication state.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 GeoReplicaLimitReached - The per-replica replication limit was reached.\n\n * 400 UnsupportedCapacity - User tried to create or update database with capacity which is not supported.\n\n * 400 ReplicationSourceAndTargetMustHaveSameName - The replication source and target databases must have the same name.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\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 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 400 RestoreToFreeEditionNotSupported - Restore and GeoRestore target cannot be free database.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 400 RestoreNotSupportedForFreeEdition - Restore and GeoRestore are not supported for free database.\n\n * 400 JobAgentDatabaseEditionUnsupported - The specified database's service level objective is not supported for use as a job agent database.\n\n * 400 InvalidDroppedDatabase - Source database dropped does not exist on server within the supported recovery period.\n\n * 400 InvalidLiveDatabase - Source database does not exist on server within the supported recovery period. If restoring a dropped database, please specify its deletion date.\n\n * 400 InvalidVldbRecoverySlo - The Hyperscale edition recovery requires both source and target databases to use Hyperscale service level objective.\n\n * 400 SourceDatabaseNotFound - The source database does not exist.\n\n * 400 InvalidVldbRestoreSlo - The Hyperscale edition Point-In-Time restore requires both source and target databases to use Hyperscale service level objective.\n\n * 400 CannotSpecifyPoolOrSlo - Specifying an elastic pool and/or changing the service level objective or edition is not supported for edition.\n\n * 400 InvalidPublicMaintenanceConfiguration - User tried to specify public maintenance configuration which cannot be converted to internal id (malformed or wrong region).\n\n * 400 ChangeUnsupportedOnEntity - User attempted an unsupported create/update/delete operation on a given entity.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 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 * 405 UnsupportedReplicationOperation - An unsupported replication operation was initiated on the database.\n\n * 409 FreeDbAlreadyExists - Only one free database can exist for a subscription per region.\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 ConflictRequestToUpdateBackupRedundancy - A conflict request to change backup storage redundancy is still in progress.\n\n * 409 SkuAssignmentInProgress - The current assignment request cannot be processed because a previous request has not completed.\n\n * 409 DatabaseElasticPoolMaintenanceConflict - User tried to create or update a database with a specified maintenance configuration that conflicted with that of the elastic pool of the database.\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 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 ServerDisabled - Server is disabled.\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 TargetElasticPoolBeingUpdated - The update of elastic pool cannot be started because there is copy operation in progress for one of the databases in this elastic pool\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 DatabaseCopyLimitPerReplicaReached - User reached the limit of concurrent database copies.\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 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 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\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 InvalidDatabaseCreateMode - Invalid request to create a database.\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 InvalidBackupStorageAccountType - User passed zrs/lrs during create/update of a database but it failed either because the customer is not whitelisted or because zrs is not available in the specified region.\n\n * 400 CannotUpdateToFreeDatabase - Updating a database to the free sku is not supported.\n\n * 400 DatabaseInvalidSkuPropertyCombination - The properties of the requested sku are inconsistent. Please check that a valid combination is specified. See https://docs.microsoft.com/en-us/rest/api/sql/capabilities/listbylocation#serviceobjectivecapability for more details.\n\n * 400 DatabaseNamedReplicaPerDatabaseLimitExceeded - User tried create a named replica that would exceed the allowed number per primary database\n\n * 400 RestoreTargetEditionSizeInsufficient - User attempted to restore a database to an edition that is a smaller size than the current allocated size of the source.\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 DatabaseCreationBlockedForNonActivatedCMKServer - SQL Pool creations are blocked for CMK enabled workspaces until the workspace is activated. First, enable purge protection and grant the workspace Managed Identity the required permissions (Get, Wrap Key, Unwrap Key) on the Azure Key Vault of the workspace key. Next, activate your workspace after you have granted access.\n\n * 400 PartnerServerNotCompatible - 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 TargetElasticPoolDoesNotExist - The elastic pool does not exist on a 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 ElasticPoolNameRequired - User tried to create or update database to elastic pool service objective without specifying the name of the elastic pool.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\n\n * 400 TierChangeUnsupportedDueToCDCEnabledDatabase - The database cannot update its sku because it is enabled for CDC.\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 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\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 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 InvalidReadScaleEdition - User attempted to enable read scale on a database type that does not support it.\n\n * 400 InvalidReadScaleUnits - User attempted to provide a read scale value that is not supported.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\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 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\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 RequestedDatabaseSizeRequiresShrink - User attempted to ALTER DATABASE MODIFY MAXSIZE to modify the MAXSIZE for a database to a smaller size then the current size.\n\n * 400 CurrentDatabaseSizeExceedsDbMaxSize - User attempted to reduce the max size for a database to a size smaller than the current usage.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 SourceDatabaseEditionCouldNotBeUpgraded - The source database cannot have higher edition than the target database.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 TargetDatabaseEditionCouldNotBeDowngraded - The target database cannot have lower edition than the source database.\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currently in progress.\n\n * 400 InvalidCollation - Collation is not recognized by the server.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 PartnerDBNotCompatibleForSGXEnclave - Attempt to set GeoDR link or update SLO for enclave enabled database is only supported when both database are running on DC-series hardware.\n\n * 400 UpdateNotAllowedInCurrentReplicationState - The operation is disallowed on the database in its current replication state.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 GeoReplicaLimitReached - The per-replica replication limit was reached.\n\n * 400 UnsupportedCapacity - User tried to create or update database with capacity which is not supported.\n\n * 400 ReplicationSourceAndTargetMustHaveSameName - The replication source and target databases must have the same name.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\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 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 400 RestoreToFreeEditionNotSupported - Restore and GeoRestore target cannot be free database.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 400 RestoreNotSupportedForFreeEdition - Restore and GeoRestore are not supported for free database.\n\n * 400 JobAgentDatabaseEditionUnsupported - The specified database's service level objective is not supported for use as a job agent database.\n\n * 400 InvalidDroppedDatabase - Source database dropped does not exist on server within the supported recovery period.\n\n * 400 InvalidLiveDatabase - Source database does not exist on server within the supported recovery period. If restoring a dropped database, please specify its deletion date.\n\n * 400 InvalidVldbRecoverySlo - The Hyperscale edition recovery requires both source and target databases to use Hyperscale service level objective.\n\n * 400 SourceDatabaseNotFound - The source database does not exist.\n\n * 400 InvalidVldbRestoreSlo - The Hyperscale edition Point-In-Time restore requires both source and target databases to use Hyperscale service level objective.\n\n * 400 CannotSpecifyPoolOrSlo - Specifying an elastic pool and/or changing the service level objective or edition is not supported for edition.\n\n * 400 InvalidPublicMaintenanceConfiguration - User tried to specify public maintenance configuration which cannot be converted to internal id (malformed or wrong region).\n\n * 400 ChangeUnsupportedOnEntity - User attempted an unsupported create/update/delete operation on a given entity.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 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 * 405 UnsupportedReplicationOperation - An unsupported replication operation was initiated on the database.\n\n * 409 FreeDbAlreadyExists - Only one free database can exist for a subscription per region.\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 ConflictRequestToUpdateBackupRedundancy - A conflict request to change backup storage redundancy is still in progress.\n\n * 409 SkuAssignmentInProgress - The current assignment request cannot be processed because a previous request has not completed.\n\n * 409 DatabaseElasticPoolMaintenanceConflict - User tried to create or update a database with a specified maintenance configuration that conflicted with that of the elastic pool of the database.\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 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 ServerDisabled - Server is disabled.\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 TargetElasticPoolBeingUpdated - The update of elastic pool cannot be started because there is copy operation in progress for one of the databases in this elastic pool\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 DatabaseCopyLimitPerReplicaReached - User reached the limit of concurrent database copies.\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 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 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." } }, "x-ms-pageable": { diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/InstanceFailoverGroups.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/InstanceFailoverGroups.json index fc7b3d3a0a12..b61f6d03cb0a 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/InstanceFailoverGroups.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/InstanceFailoverGroups.json @@ -56,7 +56,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidPartner - The given partners field in create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestDuplicatePartner - One or more of the provided partner servers are already part of the instance failover group. Please make sure the primary server and all of the given partner servers are unique.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidManagedInstanceRegion - The provided partner managed instance region in the instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPartnerCount - Only one partner region is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPairCount - Only one managed instance pair is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpoint - The readWriteEndpoint field is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalid - The create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupUpdateOrDeleteRequestOnSecondary - Modifications to the instance failover group are not allowed on a secondary server. Execute the request on the primary server.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestNegativeGracePeriodValues - Grace period value for the read-write endpoint must be non-negative.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFields - The property failoverWithDataLossGracePeriodMinutes must be provided when failover policy Automatic is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteFailoverPolicy - The failoverPolicy field for the read-write endpoint is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFieldsForManualPolicy - Grace period value should not be provided when failover policy Manual is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestReadOnlyPropertyModified - The create or update instance failover group request body should not modify the read-only property '{0}'.\n\n * 400 InstanceFailoverGroupFailoverRequestOnPrimary - The failover request should be initiated on the secondary server of instance failover group.\n\n * 400 InstanceFailoverGroupPartnerManagedInstanceFromDifferentSubscription - Primary server and the partner server of failover group are from different subscriptions. Cross subscription for servers of failover group is not allowed.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 GeoDrInstanceSizeMismatch - Primary managed instance and partner managed instance do not have the same storage size.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 GeoDrSecondaryInstanceNotEmpty - Secondary managed instance has user databases. To create an instance failover group the secondary managed instance needs to be empty.\n\n * 400 InstanceFailoverGroupIncorrectNetworkingConfiguration - Networking configuration is incorrect. Primary server's replication traffic cannot reach secondary server.\n\n * 400 IncorrectReplicationLinkState - The operation expects the database to be in an expected state on the replication link.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\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 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 InvalidFailoverGroupRegion - Servers specified in an Instance Failover Group need to reside in different regions to provide isolation.\n\n * 400 InstanceFailoverGroupDoesNotExist - Failover group does not exist on a server.\n\n * 400 InstanceFailoverGroupNotSecondary - Failover cannot be initiated from the primary server in a instance failover group.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 PlannedFailoverTimedOutForDatabase - User invoked planned failover, it timed out, and a specific database appears to be to blame.\n\n * 400 PlannedFailoverTimedOut - User invoked planned failover, and it timed out while trying to contact the partner management service.\n\n * 400 GeoReplicationDatabaseNotSecondary - The operation expects the database to be a replication target.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\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 * 405 UnsupportedReplicationOperation - An unsupported replication operation was initiated on the database.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 InstanceFailoverGroupAlreadyExists - Failover group already exists on a given server.\n\n * 409 InstanceFailoverGroupBusy - Instance failover group is busy with another operation.\n\n * 409 GeoReplicationCannotBecomePrimaryDuringUndo - User attempted to failover or force-terminate a geo-link while the secondary is in a state where it may not be physically consistent and so cannot enter the primary role.\n\n * 409 InstanceFailoverGroupDnsRecordInUse - A duplicate DNS record exists for the requested endpoint.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 InvalidFailoverGroupName - Invalid Instance Failover Group name was supplied.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\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 InvalidOperationForDatabaseNotInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 InvalidDatabaseStateForOperation - The operation is not allowed on the database in its current replication state.\n\n * 409 DuplicateGeoDrRelation - The databases are already in a replication relation. This is a duplicate request.\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + "description": "*** Error Responses: ***\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidPartner - The given partners field in create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestDuplicatePartner - One or more of the provided partner servers are already part of the instance failover group. Please make sure the primary server and all of the given partner servers are unique.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidManagedInstanceRegion - The provided partner managed instance region in the instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPartnerCount - Only one partner region is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPairCount - Only one managed instance pair is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpoint - The readWriteEndpoint field is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalid - The create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupUpdateOrDeleteRequestOnSecondary - Modifications to the instance failover group are not allowed on a secondary server. Execute the request on the primary server.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestNegativeGracePeriodValues - Grace period value for the read-write endpoint must be non-negative.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFields - The property failoverWithDataLossGracePeriodMinutes must be provided when failover policy Automatic is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteFailoverPolicy - The failoverPolicy field for the read-write endpoint is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFieldsForManualPolicy - Grace period value should not be provided when failover policy Manual is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestReadOnlyPropertyModified - The create or update instance failover group request body should not modify the read-only property '{0}'.\n\n * 400 InstanceFailoverGroupFailoverRequestOnPrimary - The failover request should be initiated on the secondary server of instance failover group.\n\n * 400 InstanceFailoverGroupPartnerManagedInstanceFromDifferentSubscription - Primary server and the partner server of failover group are from different subscriptions. Cross subscription for servers of failover group is not allowed.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 GeoDrInstanceSizeMismatch - Primary managed instance and partner managed instance do not have the same storage size.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 GeoDrSecondaryInstanceNotEmpty - Secondary managed instance has user databases. To create an instance failover group the secondary managed instance needs to be empty.\n\n * 400 InstanceFailoverGroupIncorrectNetworkingConfiguration - Networking configuration is incorrect. Primary server's replication traffic cannot reach secondary server.\n\n * 400 IncorrectReplicationLinkState - The operation expects the database to be in an expected state on the replication link.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\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 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 InvalidFailoverGroupRegion - Servers specified in an Instance Failover Group need to reside in different regions to provide isolation.\n\n * 400 InstanceFailoverGroupDoesNotExist - Failover group does not exist on a server.\n\n * 400 InstanceFailoverGroupNotSecondary - Failover cannot be initiated from the primary server in a instance failover group.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 PlannedFailoverTimedOutForDatabase - User invoked planned failover, it timed out, and a specific database appears to be to blame.\n\n * 400 PlannedFailoverTimedOut - User invoked planned failover, and it timed out while trying to contact the partner management service.\n\n * 400 GeoReplicationDatabaseNotSecondary - The operation expects the database to be a replication target.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\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 * 405 UnsupportedReplicationOperation - An unsupported replication operation was initiated on the database.\n\n * 409 ManagedInstanceHasHybridLink - User tried to initiate operation that is not supported when managed instance has a hybrid link configured.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 InstanceFailoverGroupAlreadyExists - Failover group already exists on a given server.\n\n * 409 InstanceFailoverGroupBusy - Instance failover group is busy with another operation.\n\n * 409 GeoReplicationCannotBecomePrimaryDuringUndo - User attempted to failover or force-terminate a geo-link while the secondary is in a state where it may not be physically consistent and so cannot enter the primary role.\n\n * 409 InstanceFailoverGroupDnsRecordInUse - A duplicate DNS record exists for the requested endpoint.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 InvalidFailoverGroupName - Invalid Instance Failover Group name was supplied.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\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 InvalidOperationForDatabaseNotInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 InvalidDatabaseStateForOperation - The operation is not allowed on the database in its current replication state.\n\n * 409 DuplicateGeoDrRelation - The databases are already in a replication relation. This is a duplicate request.\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." } }, "x-ms-examples": { @@ -113,7 +113,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidPartner - The given partners field in create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestDuplicatePartner - One or more of the provided partner servers are already part of the instance failover group. Please make sure the primary server and all of the given partner servers are unique.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidManagedInstanceRegion - The provided partner managed instance region in the instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPartnerCount - Only one partner region is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPairCount - Only one managed instance pair is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpoint - The readWriteEndpoint field is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalid - The create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupUpdateOrDeleteRequestOnSecondary - Modifications to the instance failover group are not allowed on a secondary server. Execute the request on the primary server.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestNegativeGracePeriodValues - Grace period value for the read-write endpoint must be non-negative.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFields - The property failoverWithDataLossGracePeriodMinutes must be provided when failover policy Automatic is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteFailoverPolicy - The failoverPolicy field for the read-write endpoint is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFieldsForManualPolicy - Grace period value should not be provided when failover policy Manual is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestReadOnlyPropertyModified - The create or update instance failover group request body should not modify the read-only property '{0}'.\n\n * 400 InstanceFailoverGroupFailoverRequestOnPrimary - The failover request should be initiated on the secondary server of instance failover group.\n\n * 400 InstanceFailoverGroupPartnerManagedInstanceFromDifferentSubscription - Primary server and the partner server of failover group are from different subscriptions. Cross subscription for servers of failover group is not allowed.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 GeoDrInstanceSizeMismatch - Primary managed instance and partner managed instance do not have the same storage size.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 GeoDrSecondaryInstanceNotEmpty - Secondary managed instance has user databases. To create an instance failover group the secondary managed instance needs to be empty.\n\n * 400 InstanceFailoverGroupIncorrectNetworkingConfiguration - Networking configuration is incorrect. Primary server's replication traffic cannot reach secondary server.\n\n * 400 IncorrectReplicationLinkState - The operation expects the database to be in an expected state on the replication link.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\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 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 InvalidFailoverGroupRegion - Servers specified in an Instance Failover Group need to reside in different regions to provide isolation.\n\n * 400 InstanceFailoverGroupDoesNotExist - Failover group does not exist on a server.\n\n * 400 InstanceFailoverGroupNotSecondary - Failover cannot be initiated from the primary server in a instance failover group.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 PlannedFailoverTimedOutForDatabase - User invoked planned failover, it timed out, and a specific database appears to be to blame.\n\n * 400 PlannedFailoverTimedOut - User invoked planned failover, and it timed out while trying to contact the partner management service.\n\n * 400 GeoReplicationDatabaseNotSecondary - The operation expects the database to be a replication target.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\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 * 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 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 InstanceFailoverGroupAlreadyExists - Failover group already exists on a given server.\n\n * 409 InstanceFailoverGroupBusy - Instance failover group is busy with another operation.\n\n * 409 GeoReplicationCannotBecomePrimaryDuringUndo - User attempted to failover or force-terminate a geo-link while the secondary is in a state where it may not be physically consistent and so cannot enter the primary role.\n\n * 409 InstanceFailoverGroupDnsRecordInUse - A duplicate DNS record exists for the requested endpoint.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 InvalidFailoverGroupName - Invalid Instance Failover Group name was supplied.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\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 InvalidOperationForDatabaseNotInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 InvalidDatabaseStateForOperation - The operation is not allowed on the database in its current replication state.\n\n * 409 DuplicateGeoDrRelation - The databases are already in a replication relation. This is a duplicate request.\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + "description": "*** Error Responses: ***\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidPartner - The given partners field in create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestDuplicatePartner - One or more of the provided partner servers are already part of the instance failover group. Please make sure the primary server and all of the given partner servers are unique.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidManagedInstanceRegion - The provided partner managed instance region in the instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPartnerCount - Only one partner region is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPairCount - Only one managed instance pair is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpoint - The readWriteEndpoint field is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalid - The create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupUpdateOrDeleteRequestOnSecondary - Modifications to the instance failover group are not allowed on a secondary server. Execute the request on the primary server.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestNegativeGracePeriodValues - Grace period value for the read-write endpoint must be non-negative.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFields - The property failoverWithDataLossGracePeriodMinutes must be provided when failover policy Automatic is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteFailoverPolicy - The failoverPolicy field for the read-write endpoint is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFieldsForManualPolicy - Grace period value should not be provided when failover policy Manual is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestReadOnlyPropertyModified - The create or update instance failover group request body should not modify the read-only property '{0}'.\n\n * 400 InstanceFailoverGroupFailoverRequestOnPrimary - The failover request should be initiated on the secondary server of instance failover group.\n\n * 400 InstanceFailoverGroupPartnerManagedInstanceFromDifferentSubscription - Primary server and the partner server of failover group are from different subscriptions. Cross subscription for servers of failover group is not allowed.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 GeoDrInstanceSizeMismatch - Primary managed instance and partner managed instance do not have the same storage size.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 GeoDrSecondaryInstanceNotEmpty - Secondary managed instance has user databases. To create an instance failover group the secondary managed instance needs to be empty.\n\n * 400 InstanceFailoverGroupIncorrectNetworkingConfiguration - Networking configuration is incorrect. Primary server's replication traffic cannot reach secondary server.\n\n * 400 IncorrectReplicationLinkState - The operation expects the database to be in an expected state on the replication link.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\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 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 InvalidFailoverGroupRegion - Servers specified in an Instance Failover Group need to reside in different regions to provide isolation.\n\n * 400 InstanceFailoverGroupDoesNotExist - Failover group does not exist on a server.\n\n * 400 InstanceFailoverGroupNotSecondary - Failover cannot be initiated from the primary server in a instance failover group.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 PlannedFailoverTimedOutForDatabase - User invoked planned failover, it timed out, and a specific database appears to be to blame.\n\n * 400 PlannedFailoverTimedOut - User invoked planned failover, and it timed out while trying to contact the partner management service.\n\n * 400 GeoReplicationDatabaseNotSecondary - The operation expects the database to be a replication target.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\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 * 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 ManagedInstanceHasHybridLink - User tried to initiate operation that is not supported when managed instance has a hybrid link configured.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 InstanceFailoverGroupAlreadyExists - Failover group already exists on a given server.\n\n * 409 InstanceFailoverGroupBusy - Instance failover group is busy with another operation.\n\n * 409 GeoReplicationCannotBecomePrimaryDuringUndo - User attempted to failover or force-terminate a geo-link while the secondary is in a state where it may not be physically consistent and so cannot enter the primary role.\n\n * 409 InstanceFailoverGroupDnsRecordInUse - A duplicate DNS record exists for the requested endpoint.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 InvalidFailoverGroupName - Invalid Instance Failover Group name was supplied.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\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 InvalidOperationForDatabaseNotInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 InvalidDatabaseStateForOperation - The operation is not allowed on the database in its current replication state.\n\n * 409 DuplicateGeoDrRelation - The databases are already in a replication relation. This is a duplicate request.\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." }, "202": { "description": "Accepted" @@ -168,7 +168,7 @@ "description": "Successfully deleted the failover group." }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidPartner - The given partners field in create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestDuplicatePartner - One or more of the provided partner servers are already part of the instance failover group. Please make sure the primary server and all of the given partner servers are unique.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidManagedInstanceRegion - The provided partner managed instance region in the instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPartnerCount - Only one partner region is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPairCount - Only one managed instance pair is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpoint - The readWriteEndpoint field is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalid - The create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupUpdateOrDeleteRequestOnSecondary - Modifications to the instance failover group are not allowed on a secondary server. Execute the request on the primary server.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestNegativeGracePeriodValues - Grace period value for the read-write endpoint must be non-negative.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFields - The property failoverWithDataLossGracePeriodMinutes must be provided when failover policy Automatic is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteFailoverPolicy - The failoverPolicy field for the read-write endpoint is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFieldsForManualPolicy - Grace period value should not be provided when failover policy Manual is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestReadOnlyPropertyModified - The create or update instance failover group request body should not modify the read-only property '{0}'.\n\n * 400 InstanceFailoverGroupFailoverRequestOnPrimary - The failover request should be initiated on the secondary server of instance failover group.\n\n * 400 InstanceFailoverGroupPartnerManagedInstanceFromDifferentSubscription - Primary server and the partner server of failover group are from different subscriptions. Cross subscription for servers of failover group is not allowed.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 GeoDrInstanceSizeMismatch - Primary managed instance and partner managed instance do not have the same storage size.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 GeoDrSecondaryInstanceNotEmpty - Secondary managed instance has user databases. To create an instance failover group the secondary managed instance needs to be empty.\n\n * 400 InstanceFailoverGroupIncorrectNetworkingConfiguration - Networking configuration is incorrect. Primary server's replication traffic cannot reach secondary server.\n\n * 400 IncorrectReplicationLinkState - The operation expects the database to be in an expected state on the replication link.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\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 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 InvalidFailoverGroupRegion - Servers specified in an Instance Failover Group need to reside in different regions to provide isolation.\n\n * 400 InstanceFailoverGroupDoesNotExist - Failover group does not exist on a server.\n\n * 400 InstanceFailoverGroupNotSecondary - Failover cannot be initiated from the primary server in a instance failover group.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 PlannedFailoverTimedOutForDatabase - User invoked planned failover, it timed out, and a specific database appears to be to blame.\n\n * 400 PlannedFailoverTimedOut - User invoked planned failover, and it timed out while trying to contact the partner management service.\n\n * 400 GeoReplicationDatabaseNotSecondary - The operation expects the database to be a replication target.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\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 * 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 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 InstanceFailoverGroupAlreadyExists - Failover group already exists on a given server.\n\n * 409 InstanceFailoverGroupBusy - Instance failover group is busy with another operation.\n\n * 409 GeoReplicationCannotBecomePrimaryDuringUndo - User attempted to failover or force-terminate a geo-link while the secondary is in a state where it may not be physically consistent and so cannot enter the primary role.\n\n * 409 InstanceFailoverGroupDnsRecordInUse - A duplicate DNS record exists for the requested endpoint.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 InvalidFailoverGroupName - Invalid Instance Failover Group name was supplied.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\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 InvalidOperationForDatabaseNotInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 InvalidDatabaseStateForOperation - The operation is not allowed on the database in its current replication state.\n\n * 409 DuplicateGeoDrRelation - The databases are already in a replication relation. This is a duplicate request.\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + "description": "*** Error Responses: ***\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidPartner - The given partners field in create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestDuplicatePartner - One or more of the provided partner servers are already part of the instance failover group. Please make sure the primary server and all of the given partner servers are unique.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidManagedInstanceRegion - The provided partner managed instance region in the instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPartnerCount - Only one partner region is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPairCount - Only one managed instance pair is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpoint - The readWriteEndpoint field is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalid - The create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupUpdateOrDeleteRequestOnSecondary - Modifications to the instance failover group are not allowed on a secondary server. Execute the request on the primary server.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestNegativeGracePeriodValues - Grace period value for the read-write endpoint must be non-negative.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFields - The property failoverWithDataLossGracePeriodMinutes must be provided when failover policy Automatic is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteFailoverPolicy - The failoverPolicy field for the read-write endpoint is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFieldsForManualPolicy - Grace period value should not be provided when failover policy Manual is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestReadOnlyPropertyModified - The create or update instance failover group request body should not modify the read-only property '{0}'.\n\n * 400 InstanceFailoverGroupFailoverRequestOnPrimary - The failover request should be initiated on the secondary server of instance failover group.\n\n * 400 InstanceFailoverGroupPartnerManagedInstanceFromDifferentSubscription - Primary server and the partner server of failover group are from different subscriptions. Cross subscription for servers of failover group is not allowed.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 GeoDrInstanceSizeMismatch - Primary managed instance and partner managed instance do not have the same storage size.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 GeoDrSecondaryInstanceNotEmpty - Secondary managed instance has user databases. To create an instance failover group the secondary managed instance needs to be empty.\n\n * 400 InstanceFailoverGroupIncorrectNetworkingConfiguration - Networking configuration is incorrect. Primary server's replication traffic cannot reach secondary server.\n\n * 400 IncorrectReplicationLinkState - The operation expects the database to be in an expected state on the replication link.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\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 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 InvalidFailoverGroupRegion - Servers specified in an Instance Failover Group need to reside in different regions to provide isolation.\n\n * 400 InstanceFailoverGroupDoesNotExist - Failover group does not exist on a server.\n\n * 400 InstanceFailoverGroupNotSecondary - Failover cannot be initiated from the primary server in a instance failover group.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 PlannedFailoverTimedOutForDatabase - User invoked planned failover, it timed out, and a specific database appears to be to blame.\n\n * 400 PlannedFailoverTimedOut - User invoked planned failover, and it timed out while trying to contact the partner management service.\n\n * 400 GeoReplicationDatabaseNotSecondary - The operation expects the database to be a replication target.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\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 * 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 ManagedInstanceHasHybridLink - User tried to initiate operation that is not supported when managed instance has a hybrid link configured.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 InstanceFailoverGroupAlreadyExists - Failover group already exists on a given server.\n\n * 409 InstanceFailoverGroupBusy - Instance failover group is busy with another operation.\n\n * 409 GeoReplicationCannotBecomePrimaryDuringUndo - User attempted to failover or force-terminate a geo-link while the secondary is in a state where it may not be physically consistent and so cannot enter the primary role.\n\n * 409 InstanceFailoverGroupDnsRecordInUse - A duplicate DNS record exists for the requested endpoint.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 InvalidFailoverGroupName - Invalid Instance Failover Group name was supplied.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\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 InvalidOperationForDatabaseNotInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 InvalidDatabaseStateForOperation - The operation is not allowed on the database in its current replication state.\n\n * 409 DuplicateGeoDrRelation - The databases are already in a replication relation. This is a duplicate request.\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." }, "202": { "description": "Accepted" @@ -218,7 +218,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidPartner - The given partners field in create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestDuplicatePartner - One or more of the provided partner servers are already part of the instance failover group. Please make sure the primary server and all of the given partner servers are unique.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidManagedInstanceRegion - The provided partner managed instance region in the instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPartnerCount - Only one partner region is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPairCount - Only one managed instance pair is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpoint - The readWriteEndpoint field is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalid - The create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupUpdateOrDeleteRequestOnSecondary - Modifications to the instance failover group are not allowed on a secondary server. Execute the request on the primary server.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestNegativeGracePeriodValues - Grace period value for the read-write endpoint must be non-negative.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFields - The property failoverWithDataLossGracePeriodMinutes must be provided when failover policy Automatic is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteFailoverPolicy - The failoverPolicy field for the read-write endpoint is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFieldsForManualPolicy - Grace period value should not be provided when failover policy Manual is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestReadOnlyPropertyModified - The create or update instance failover group request body should not modify the read-only property '{0}'.\n\n * 400 InstanceFailoverGroupFailoverRequestOnPrimary - The failover request should be initiated on the secondary server of instance failover group.\n\n * 400 InstanceFailoverGroupPartnerManagedInstanceFromDifferentSubscription - Primary server and the partner server of failover group are from different subscriptions. Cross subscription for servers of failover group is not allowed.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 GeoDrInstanceSizeMismatch - Primary managed instance and partner managed instance do not have the same storage size.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 GeoDrSecondaryInstanceNotEmpty - Secondary managed instance has user databases. To create an instance failover group the secondary managed instance needs to be empty.\n\n * 400 InstanceFailoverGroupIncorrectNetworkingConfiguration - Networking configuration is incorrect. Primary server's replication traffic cannot reach secondary server.\n\n * 400 IncorrectReplicationLinkState - The operation expects the database to be in an expected state on the replication link.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\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 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 InvalidFailoverGroupRegion - Servers specified in an Instance Failover Group need to reside in different regions to provide isolation.\n\n * 400 InstanceFailoverGroupDoesNotExist - Failover group does not exist on a server.\n\n * 400 InstanceFailoverGroupNotSecondary - Failover cannot be initiated from the primary server in a instance failover group.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 PlannedFailoverTimedOutForDatabase - User invoked planned failover, it timed out, and a specific database appears to be to blame.\n\n * 400 PlannedFailoverTimedOut - User invoked planned failover, and it timed out while trying to contact the partner management service.\n\n * 400 GeoReplicationDatabaseNotSecondary - The operation expects the database to be a replication target.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\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 * 405 UnsupportedReplicationOperation - An unsupported replication operation was initiated on the database.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 InstanceFailoverGroupAlreadyExists - Failover group already exists on a given server.\n\n * 409 InstanceFailoverGroupBusy - Instance failover group is busy with another operation.\n\n * 409 GeoReplicationCannotBecomePrimaryDuringUndo - User attempted to failover or force-terminate a geo-link while the secondary is in a state where it may not be physically consistent and so cannot enter the primary role.\n\n * 409 InstanceFailoverGroupDnsRecordInUse - A duplicate DNS record exists for the requested endpoint.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 InvalidFailoverGroupName - Invalid Instance Failover Group name was supplied.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\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 InvalidOperationForDatabaseNotInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 InvalidDatabaseStateForOperation - The operation is not allowed on the database in its current replication state.\n\n * 409 DuplicateGeoDrRelation - The databases are already in a replication relation. This is a duplicate request.\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + "description": "*** Error Responses: ***\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidPartner - The given partners field in create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestDuplicatePartner - One or more of the provided partner servers are already part of the instance failover group. Please make sure the primary server and all of the given partner servers are unique.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidManagedInstanceRegion - The provided partner managed instance region in the instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPartnerCount - Only one partner region is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPairCount - Only one managed instance pair is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpoint - The readWriteEndpoint field is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalid - The create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupUpdateOrDeleteRequestOnSecondary - Modifications to the instance failover group are not allowed on a secondary server. Execute the request on the primary server.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestNegativeGracePeriodValues - Grace period value for the read-write endpoint must be non-negative.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFields - The property failoverWithDataLossGracePeriodMinutes must be provided when failover policy Automatic is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteFailoverPolicy - The failoverPolicy field for the read-write endpoint is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFieldsForManualPolicy - Grace period value should not be provided when failover policy Manual is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestReadOnlyPropertyModified - The create or update instance failover group request body should not modify the read-only property '{0}'.\n\n * 400 InstanceFailoverGroupFailoverRequestOnPrimary - The failover request should be initiated on the secondary server of instance failover group.\n\n * 400 InstanceFailoverGroupPartnerManagedInstanceFromDifferentSubscription - Primary server and the partner server of failover group are from different subscriptions. Cross subscription for servers of failover group is not allowed.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 GeoDrInstanceSizeMismatch - Primary managed instance and partner managed instance do not have the same storage size.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 GeoDrSecondaryInstanceNotEmpty - Secondary managed instance has user databases. To create an instance failover group the secondary managed instance needs to be empty.\n\n * 400 InstanceFailoverGroupIncorrectNetworkingConfiguration - Networking configuration is incorrect. Primary server's replication traffic cannot reach secondary server.\n\n * 400 IncorrectReplicationLinkState - The operation expects the database to be in an expected state on the replication link.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\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 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 InvalidFailoverGroupRegion - Servers specified in an Instance Failover Group need to reside in different regions to provide isolation.\n\n * 400 InstanceFailoverGroupDoesNotExist - Failover group does not exist on a server.\n\n * 400 InstanceFailoverGroupNotSecondary - Failover cannot be initiated from the primary server in a instance failover group.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 PlannedFailoverTimedOutForDatabase - User invoked planned failover, it timed out, and a specific database appears to be to blame.\n\n * 400 PlannedFailoverTimedOut - User invoked planned failover, and it timed out while trying to contact the partner management service.\n\n * 400 GeoReplicationDatabaseNotSecondary - The operation expects the database to be a replication target.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\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 * 405 UnsupportedReplicationOperation - An unsupported replication operation was initiated on the database.\n\n * 409 ManagedInstanceHasHybridLink - User tried to initiate operation that is not supported when managed instance has a hybrid link configured.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 InstanceFailoverGroupAlreadyExists - Failover group already exists on a given server.\n\n * 409 InstanceFailoverGroupBusy - Instance failover group is busy with another operation.\n\n * 409 GeoReplicationCannotBecomePrimaryDuringUndo - User attempted to failover or force-terminate a geo-link while the secondary is in a state where it may not be physically consistent and so cannot enter the primary role.\n\n * 409 InstanceFailoverGroupDnsRecordInUse - A duplicate DNS record exists for the requested endpoint.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 InvalidFailoverGroupName - Invalid Instance Failover Group name was supplied.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\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 InvalidOperationForDatabaseNotInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 InvalidDatabaseStateForOperation - The operation is not allowed on the database in its current replication state.\n\n * 409 DuplicateGeoDrRelation - The databases are already in a replication relation. This is a duplicate request.\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." } }, "x-ms-pageable": { @@ -271,7 +271,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidPartner - The given partners field in create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestDuplicatePartner - One or more of the provided partner servers are already part of the instance failover group. Please make sure the primary server and all of the given partner servers are unique.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidManagedInstanceRegion - The provided partner managed instance region in the instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPartnerCount - Only one partner region is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPairCount - Only one managed instance pair is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpoint - The readWriteEndpoint field is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalid - The create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupUpdateOrDeleteRequestOnSecondary - Modifications to the instance failover group are not allowed on a secondary server. Execute the request on the primary server.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestNegativeGracePeriodValues - Grace period value for the read-write endpoint must be non-negative.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFields - The property failoverWithDataLossGracePeriodMinutes must be provided when failover policy Automatic is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteFailoverPolicy - The failoverPolicy field for the read-write endpoint is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFieldsForManualPolicy - Grace period value should not be provided when failover policy Manual is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestReadOnlyPropertyModified - The create or update instance failover group request body should not modify the read-only property '{0}'.\n\n * 400 InstanceFailoverGroupFailoverRequestOnPrimary - The failover request should be initiated on the secondary server of instance failover group.\n\n * 400 InstanceFailoverGroupPartnerManagedInstanceFromDifferentSubscription - Primary server and the partner server of failover group are from different subscriptions. Cross subscription for servers of failover group is not allowed.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 GeoDrInstanceSizeMismatch - Primary managed instance and partner managed instance do not have the same storage size.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 GeoDrSecondaryInstanceNotEmpty - Secondary managed instance has user databases. To create an instance failover group the secondary managed instance needs to be empty.\n\n * 400 InstanceFailoverGroupIncorrectNetworkingConfiguration - Networking configuration is incorrect. Primary server's replication traffic cannot reach secondary server.\n\n * 400 IncorrectReplicationLinkState - The operation expects the database to be in an expected state on the replication link.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\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 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 InvalidFailoverGroupRegion - Servers specified in an Instance Failover Group need to reside in different regions to provide isolation.\n\n * 400 InstanceFailoverGroupDoesNotExist - Failover group does not exist on a server.\n\n * 400 InstanceFailoverGroupNotSecondary - Failover cannot be initiated from the primary server in a instance failover group.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 PlannedFailoverTimedOutForDatabase - User invoked planned failover, it timed out, and a specific database appears to be to blame.\n\n * 400 PlannedFailoverTimedOut - User invoked planned failover, and it timed out while trying to contact the partner management service.\n\n * 400 GeoReplicationDatabaseNotSecondary - The operation expects the database to be a replication target.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\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 * 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 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 InstanceFailoverGroupAlreadyExists - Failover group already exists on a given server.\n\n * 409 InstanceFailoverGroupBusy - Instance failover group is busy with another operation.\n\n * 409 GeoReplicationCannotBecomePrimaryDuringUndo - User attempted to failover or force-terminate a geo-link while the secondary is in a state where it may not be physically consistent and so cannot enter the primary role.\n\n * 409 InstanceFailoverGroupDnsRecordInUse - A duplicate DNS record exists for the requested endpoint.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 InvalidFailoverGroupName - Invalid Instance Failover Group name was supplied.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\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 InvalidOperationForDatabaseNotInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 InvalidDatabaseStateForOperation - The operation is not allowed on the database in its current replication state.\n\n * 409 DuplicateGeoDrRelation - The databases are already in a replication relation. This is a duplicate request.\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + "description": "*** Error Responses: ***\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidPartner - The given partners field in create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestDuplicatePartner - One or more of the provided partner servers are already part of the instance failover group. Please make sure the primary server and all of the given partner servers are unique.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidManagedInstanceRegion - The provided partner managed instance region in the instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPartnerCount - Only one partner region is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPairCount - Only one managed instance pair is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpoint - The readWriteEndpoint field is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalid - The create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupUpdateOrDeleteRequestOnSecondary - Modifications to the instance failover group are not allowed on a secondary server. Execute the request on the primary server.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestNegativeGracePeriodValues - Grace period value for the read-write endpoint must be non-negative.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFields - The property failoverWithDataLossGracePeriodMinutes must be provided when failover policy Automatic is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteFailoverPolicy - The failoverPolicy field for the read-write endpoint is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFieldsForManualPolicy - Grace period value should not be provided when failover policy Manual is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestReadOnlyPropertyModified - The create or update instance failover group request body should not modify the read-only property '{0}'.\n\n * 400 InstanceFailoverGroupFailoverRequestOnPrimary - The failover request should be initiated on the secondary server of instance failover group.\n\n * 400 InstanceFailoverGroupPartnerManagedInstanceFromDifferentSubscription - Primary server and the partner server of failover group are from different subscriptions. Cross subscription for servers of failover group is not allowed.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 GeoDrInstanceSizeMismatch - Primary managed instance and partner managed instance do not have the same storage size.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 GeoDrSecondaryInstanceNotEmpty - Secondary managed instance has user databases. To create an instance failover group the secondary managed instance needs to be empty.\n\n * 400 InstanceFailoverGroupIncorrectNetworkingConfiguration - Networking configuration is incorrect. Primary server's replication traffic cannot reach secondary server.\n\n * 400 IncorrectReplicationLinkState - The operation expects the database to be in an expected state on the replication link.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\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 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 InvalidFailoverGroupRegion - Servers specified in an Instance Failover Group need to reside in different regions to provide isolation.\n\n * 400 InstanceFailoverGroupDoesNotExist - Failover group does not exist on a server.\n\n * 400 InstanceFailoverGroupNotSecondary - Failover cannot be initiated from the primary server in a instance failover group.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 PlannedFailoverTimedOutForDatabase - User invoked planned failover, it timed out, and a specific database appears to be to blame.\n\n * 400 PlannedFailoverTimedOut - User invoked planned failover, and it timed out while trying to contact the partner management service.\n\n * 400 GeoReplicationDatabaseNotSecondary - The operation expects the database to be a replication target.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\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 * 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 ManagedInstanceHasHybridLink - User tried to initiate operation that is not supported when managed instance has a hybrid link configured.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 InstanceFailoverGroupAlreadyExists - Failover group already exists on a given server.\n\n * 409 InstanceFailoverGroupBusy - Instance failover group is busy with another operation.\n\n * 409 GeoReplicationCannotBecomePrimaryDuringUndo - User attempted to failover or force-terminate a geo-link while the secondary is in a state where it may not be physically consistent and so cannot enter the primary role.\n\n * 409 InstanceFailoverGroupDnsRecordInUse - A duplicate DNS record exists for the requested endpoint.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 InvalidFailoverGroupName - Invalid Instance Failover Group name was supplied.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\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 InvalidOperationForDatabaseNotInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 InvalidDatabaseStateForOperation - The operation is not allowed on the database in its current replication state.\n\n * 409 DuplicateGeoDrRelation - The databases are already in a replication relation. This is a duplicate request.\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." }, "202": { "description": "Accepted" @@ -325,7 +325,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidPartner - The given partners field in create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestDuplicatePartner - One or more of the provided partner servers are already part of the instance failover group. Please make sure the primary server and all of the given partner servers are unique.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidManagedInstanceRegion - The provided partner managed instance region in the instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPartnerCount - Only one partner region is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPairCount - Only one managed instance pair is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpoint - The readWriteEndpoint field is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalid - The create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupUpdateOrDeleteRequestOnSecondary - Modifications to the instance failover group are not allowed on a secondary server. Execute the request on the primary server.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestNegativeGracePeriodValues - Grace period value for the read-write endpoint must be non-negative.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFields - The property failoverWithDataLossGracePeriodMinutes must be provided when failover policy Automatic is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteFailoverPolicy - The failoverPolicy field for the read-write endpoint is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFieldsForManualPolicy - Grace period value should not be provided when failover policy Manual is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestReadOnlyPropertyModified - The create or update instance failover group request body should not modify the read-only property '{0}'.\n\n * 400 InstanceFailoverGroupFailoverRequestOnPrimary - The failover request should be initiated on the secondary server of instance failover group.\n\n * 400 InstanceFailoverGroupPartnerManagedInstanceFromDifferentSubscription - Primary server and the partner server of failover group are from different subscriptions. Cross subscription for servers of failover group is not allowed.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 GeoDrInstanceSizeMismatch - Primary managed instance and partner managed instance do not have the same storage size.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 GeoDrSecondaryInstanceNotEmpty - Secondary managed instance has user databases. To create an instance failover group the secondary managed instance needs to be empty.\n\n * 400 InstanceFailoverGroupIncorrectNetworkingConfiguration - Networking configuration is incorrect. Primary server's replication traffic cannot reach secondary server.\n\n * 400 IncorrectReplicationLinkState - The operation expects the database to be in an expected state on the replication link.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\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 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 InvalidFailoverGroupRegion - Servers specified in an Instance Failover Group need to reside in different regions to provide isolation.\n\n * 400 InstanceFailoverGroupDoesNotExist - Failover group does not exist on a server.\n\n * 400 InstanceFailoverGroupNotSecondary - Failover cannot be initiated from the primary server in a instance failover group.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 PlannedFailoverTimedOutForDatabase - User invoked planned failover, it timed out, and a specific database appears to be to blame.\n\n * 400 PlannedFailoverTimedOut - User invoked planned failover, and it timed out while trying to contact the partner management service.\n\n * 400 GeoReplicationDatabaseNotSecondary - The operation expects the database to be a replication target.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\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 * 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 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 InstanceFailoverGroupAlreadyExists - Failover group already exists on a given server.\n\n * 409 InstanceFailoverGroupBusy - Instance failover group is busy with another operation.\n\n * 409 GeoReplicationCannotBecomePrimaryDuringUndo - User attempted to failover or force-terminate a geo-link while the secondary is in a state where it may not be physically consistent and so cannot enter the primary role.\n\n * 409 InstanceFailoverGroupDnsRecordInUse - A duplicate DNS record exists for the requested endpoint.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 InvalidFailoverGroupName - Invalid Instance Failover Group name was supplied.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\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 InvalidOperationForDatabaseNotInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 InvalidDatabaseStateForOperation - The operation is not allowed on the database in its current replication state.\n\n * 409 DuplicateGeoDrRelation - The databases are already in a replication relation. This is a duplicate request.\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + "description": "*** Error Responses: ***\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidPartner - The given partners field in create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestDuplicatePartner - One or more of the provided partner servers are already part of the instance failover group. Please make sure the primary server and all of the given partner servers are unique.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidManagedInstanceRegion - The provided partner managed instance region in the instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPartnerCount - Only one partner region is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPairCount - Only one managed instance pair is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpoint - The readWriteEndpoint field is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalid - The create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupUpdateOrDeleteRequestOnSecondary - Modifications to the instance failover group are not allowed on a secondary server. Execute the request on the primary server.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestNegativeGracePeriodValues - Grace period value for the read-write endpoint must be non-negative.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFields - The property failoverWithDataLossGracePeriodMinutes must be provided when failover policy Automatic is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteFailoverPolicy - The failoverPolicy field for the read-write endpoint is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFieldsForManualPolicy - Grace period value should not be provided when failover policy Manual is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestReadOnlyPropertyModified - The create or update instance failover group request body should not modify the read-only property '{0}'.\n\n * 400 InstanceFailoverGroupFailoverRequestOnPrimary - The failover request should be initiated on the secondary server of instance failover group.\n\n * 400 InstanceFailoverGroupPartnerManagedInstanceFromDifferentSubscription - Primary server and the partner server of failover group are from different subscriptions. Cross subscription for servers of failover group is not allowed.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 GeoDrInstanceSizeMismatch - Primary managed instance and partner managed instance do not have the same storage size.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 GeoDrSecondaryInstanceNotEmpty - Secondary managed instance has user databases. To create an instance failover group the secondary managed instance needs to be empty.\n\n * 400 InstanceFailoverGroupIncorrectNetworkingConfiguration - Networking configuration is incorrect. Primary server's replication traffic cannot reach secondary server.\n\n * 400 IncorrectReplicationLinkState - The operation expects the database to be in an expected state on the replication link.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\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 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 InvalidFailoverGroupRegion - Servers specified in an Instance Failover Group need to reside in different regions to provide isolation.\n\n * 400 InstanceFailoverGroupDoesNotExist - Failover group does not exist on a server.\n\n * 400 InstanceFailoverGroupNotSecondary - Failover cannot be initiated from the primary server in a instance failover group.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 PlannedFailoverTimedOutForDatabase - User invoked planned failover, it timed out, and a specific database appears to be to blame.\n\n * 400 PlannedFailoverTimedOut - User invoked planned failover, and it timed out while trying to contact the partner management service.\n\n * 400 GeoReplicationDatabaseNotSecondary - The operation expects the database to be a replication target.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\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 * 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 ManagedInstanceHasHybridLink - User tried to initiate operation that is not supported when managed instance has a hybrid link configured.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 InstanceFailoverGroupAlreadyExists - Failover group already exists on a given server.\n\n * 409 InstanceFailoverGroupBusy - Instance failover group is busy with another operation.\n\n * 409 GeoReplicationCannotBecomePrimaryDuringUndo - User attempted to failover or force-terminate a geo-link while the secondary is in a state where it may not be physically consistent and so cannot enter the primary role.\n\n * 409 InstanceFailoverGroupDnsRecordInUse - A duplicate DNS record exists for the requested endpoint.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 InvalidFailoverGroupName - Invalid Instance Failover Group name was supplied.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\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 InvalidOperationForDatabaseNotInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 InvalidDatabaseStateForOperation - The operation is not allowed on the database in its current replication state.\n\n * 409 DuplicateGeoDrRelation - The databases are already in a replication relation. This is a duplicate request.\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." }, "202": { "description": "Accepted" diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/ManagedInstances.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/ManagedInstances.json index 3599252368c2..f53c7762f194 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/ManagedInstances.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/ManagedInstances.json @@ -289,6 +289,9 @@ }, "Update managed instance with all properties": { "$ref": "./examples/ManagedInstanceUpdateMax.json" + }, + "Remove maintenance policy from managed instance (select default maintenance policy)": { + "$ref": "./examples/ManagedInstanceRemoveMaintenanceConfiguration.json" } } } diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/ServerAdvisors.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/ServerAdvisors.json index 6a2af019f080..c394ad6c1df9 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/ServerAdvisors.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/ServerAdvisors.json @@ -572,6 +572,11 @@ "RecommendedAction": { "description": "Database, Server or Elastic Pool Recommended Action.", "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], "properties": { "kind": { "description": "Resource kind.", @@ -587,21 +592,6 @@ "$ref": "#/definitions/RecommendedActionProperties", "description": "Resource properties.", "x-ms-client-flatten": true - }, - "id": { - "description": "Resource ID.", - "type": "string", - "readOnly": true - }, - "name": { - "description": "Resource name.", - "type": "string", - "readOnly": true - }, - "type": { - "description": "Resource type.", - "type": "string", - "readOnly": true } } }, diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/CreateOrUpdateDatabaseExtensions.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/CreateOrUpdateDatabaseExtensions.json index 2e614efa70f2..0c4a10677285 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/CreateOrUpdateDatabaseExtensions.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/CreateOrUpdateDatabaseExtensions.json @@ -7,10 +7,12 @@ "extensionName": "polybaseimport", "api-version": "2020-08-01-preview", "parameters": { - "operationMode": "PolybaseImport", - "storageKeyType": "StorageAccessKey", - "storageKey": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx", - "storageUri": "https://teststorage.blob.core.windows.net/testcontainer/Manifest.xml" + "properties": { + "operationMode": "PolybaseImport", + "storageKeyType": "StorageAccessKey", + "storageKey": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx", + "storageUri": "https://teststorage.blob.core.windows.net/testcontainer/Manifest.xml" + } } }, "responses": { diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/ManagedInstanceRemoveMaintenanceConfiguration.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/ManagedInstanceRemoveMaintenanceConfiguration.json new file mode 100644 index 000000000000..cb43bbad7845 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/ManagedInstanceRemoveMaintenanceConfiguration.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "20D7082A-0FC7-4468-82BD-542694D5042B", + "resourceGroupName": "testrg", + "managedInstanceName": "testinstance", + "api-version": "2020-08-01-preview", + "parameters": { + "properties": { + "maintenanceConfigurationId": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_Default" + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "GP_Gen4", + "tier": "GeneralPurpose", + "capacity": 8, + "family": "Gen4" + }, + "properties": { + "fullyQualifiedDomainName": "testinstance.1b4e2caff2530.database.windows.net", + "administratorLogin": "dummylogin", + "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "state": "Ready", + "vCores": 8, + "storageSizeInGB": 1024, + "licenseType": "LicenseIncluded", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "publicDataEndpointEnabled": false, + "proxyOverride": "Default", + "dnsZone": "1b4e2caff2530", + "maintenanceConfigurationId": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_Default" + }, + "location": "japaneast", + "id": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/testrg/providers/Microsoft.Sql/managedInstances/testinstance", + "name": "testinstance", + "type": "Microsoft.Sql/managedInstances" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/BlobAuditing.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/BlobAuditing.json index 4711edcb3a86..600d1d45000d 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/BlobAuditing.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/BlobAuditing.json @@ -103,7 +103,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 BlobAuditingIsNotSupportedOnResourceType - Blob Auditing is currently not supported for this resource type.\n\n * 400 BlobAuditingPredicateExpressionSyntaxError - Invalid value of parameter 'predicateExpression'.\n\n * 400 InvalidDatabaseBlobAuditingPolicyCreateRequest - The create database blob auditing policy request does not exist or has no properties object.\n\n * 400 InvalidBlobAuditActionsAndGroups - Invalid audit actions or action groups.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 BlobAuditingPredicateExpressionEmpty - Invalid parameter 'predicateExpression', value can not be empty.\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 400 BlobAuditingInsufficientStorageAccountPermissions - Insufficient read or write permissions on the provided storage account.\n\n * 400 BlobAuditingStorageAccountIsDisabled - The provided storage account is disabled.\n\n * 400 BlobAuditingNoServerIdentity - The server identity is not correctly configured.\n\n * 400 InvalidBlobAuditActionsAndGroupsForDW - Unsupported audit actions or action groups for DW.\n\n * 400 BlobAuditingAdalTokenError - The operation could not get access token for the storage account because an Azure Active Directory error was encountered.\n\n * 400 BlobAuditingInvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 BlobAuditingInvalidStorageAccountCredentials - The provided storage account or access key is not valid.\n\n * 400 BlobAuditingIsNotSupportedOnGeoDr - Blob auditing can be configured on primary databases only.\n\n * 400 InsufficientDiskSpaceForAuditing - Insufficient disk space to save auditing metadata in the database\n\n * 400 InvalidBlobAuditActions - Invalid audit action\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + "description": "*** Error Responses: ***\n\n * 400 BlobAuditingIsNotSupportedOnResourceType - Blob Auditing is currently not supported for this resource type.\n\n * 400 BlobAuditingPredicateExpressionSyntaxError - Invalid value of parameter 'predicateExpression'.\n\n * 400 InvalidDatabaseBlobAuditingPolicyCreateRequest - The create database blob auditing policy request does not exist or has no properties object.\n\n * 400 InvalidBlobAuditActionsAndGroups - Invalid audit actions or action groups.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 BlobAuditingPredicateExpressionEmpty - Invalid parameter 'predicateExpression', value can not be empty.\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 400 BlobAuditingInsufficientStorageAccountPermissions - Insufficient read or write permissions on the provided storage account.\n\n * 400 BlobAuditingStorageAccountIsDisabled - The provided storage account is disabled.\n\n * 400 BlobAuditingNoServerIdentity - The server identity is not correctly configured.\n\n * 400 BlobAuditingStorageOutboundFirewallNotAllowed - Storage account is not in the list of allowed FQDNs, and, therefore, the outbound firewall rules will block the request.\n\n * 400 InvalidBlobAuditActionsAndGroupsForDW - Unsupported audit actions or action groups for DW.\n\n * 400 BlobAuditingAdalTokenError - The operation could not get access token for the storage account because an Azure Active Directory error was encountered.\n\n * 400 BlobAuditingInvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 BlobAuditingInvalidStorageAccountCredentials - The provided storage account or access key is not valid.\n\n * 400 BlobAuditingIsNotSupportedOnGeoDr - Blob auditing can be configured on primary databases only.\n\n * 400 InsufficientDiskSpaceForAuditing - Insufficient disk space to save auditing metadata in the database\n\n * 400 InvalidBlobAuditActions - Invalid audit action\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." }, "201": { "description": "Successfully created the extended database blob auditing policy.", @@ -537,7 +537,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 BlobAuditingIsNotSupportedOnResourceType - Blob Auditing is currently not supported for this resource type.\n\n * 400 InvalidDatabaseBlobAuditingPolicyCreateRequest - The create database blob auditing policy request does not exist or has no properties object.\n\n * 400 InvalidBlobAuditActionsAndGroups - Invalid audit actions or action groups.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 400 BlobAuditingInsufficientStorageAccountPermissions - Insufficient read or write permissions on the provided storage account.\n\n * 400 BlobAuditingStorageAccountIsDisabled - The provided storage account is disabled.\n\n * 400 BlobAuditingNoServerIdentity - The server identity is not correctly configured.\n\n * 400 InvalidBlobAuditActionsAndGroupsForDW - Unsupported audit actions or action groups for DW.\n\n * 400 BlobAuditingAdalTokenError - The operation could not get access token for the storage account because an Azure Active Directory error was encountered.\n\n * 400 BlobAuditingInvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 BlobAuditingInvalidStorageAccountCredentials - The provided storage account or access key is not valid.\n\n * 400 BlobAuditingIsNotSupportedOnGeoDr - Blob auditing can be configured on primary databases only.\n\n * 400 InsufficientDiskSpaceForAuditing - Insufficient disk space to save auditing metadata in the database\n\n * 400 InvalidBlobAuditActions - Invalid audit action\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + "description": "*** Error Responses: ***\n\n * 400 BlobAuditingIsNotSupportedOnResourceType - Blob Auditing is currently not supported for this resource type.\n\n * 400 InvalidDatabaseBlobAuditingPolicyCreateRequest - The create database blob auditing policy request does not exist or has no properties object.\n\n * 400 InvalidBlobAuditActionsAndGroups - Invalid audit actions or action groups.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 400 BlobAuditingInsufficientStorageAccountPermissions - Insufficient read or write permissions on the provided storage account.\n\n * 400 BlobAuditingStorageAccountIsDisabled - The provided storage account is disabled.\n\n * 400 BlobAuditingNoServerIdentity - The server identity is not correctly configured.\n\n * 400 BlobAuditingStorageOutboundFirewallNotAllowed - Storage account is not in the list of allowed FQDNs, and, therefore, the outbound firewall rules will block the request.\n\n * 400 InvalidBlobAuditActionsAndGroupsForDW - Unsupported audit actions or action groups for DW.\n\n * 400 BlobAuditingAdalTokenError - The operation could not get access token for the storage account because an Azure Active Directory error was encountered.\n\n * 400 BlobAuditingInvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 BlobAuditingInvalidStorageAccountCredentials - The provided storage account or access key is not valid.\n\n * 400 BlobAuditingIsNotSupportedOnGeoDr - Blob auditing can be configured on primary databases only.\n\n * 400 InsufficientDiskSpaceForAuditing - Insufficient disk space to save auditing metadata in the database\n\n * 400 InvalidBlobAuditActions - Invalid audit action\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." }, "201": { "description": "Successfully created the database blob auditing policy.", diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/DatabaseExtensions.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/DatabaseExtensions.json index 18a58e3882bd..445ae5ec65a2 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/DatabaseExtensions.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/DatabaseExtensions.json @@ -88,7 +88,7 @@ "description": "The database import request parameters.", "required": true, "schema": { - "$ref": "#/definitions/DatabaseExtensionsDefinition" + "$ref": "#/definitions/DatabaseExtensions" } }, { @@ -106,7 +106,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 MissingImportExportInputParameters - Missing ImportExport input parameters.\n\n * 400 PolybaseImportAuthenticationTypeNotSupported - Authentication type parameter is not support for PolybaseImport operation.\n\n * 400 DatabaseExtensionsMissingOperationMode - Missing operationMode parameter for database extension.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 InvalidOperationType - Provide a valid operation type.\n\n * 404 ResourceNotFound - Invalid request specifying a non-existent resource.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ImportExportOperationIdNotFound - The operation Id for import or export cannot be found.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 409 ImportExportOperationInProgress - There is an import or export operation in progress on the database." + "description": "*** Error Responses: ***\n\n * 400 MissingImportExportInputParameters - Missing ImportExport input parameters.\n\n * 400 PolybaseImportAuthenticationTypeNotSupported - Authentication type parameter is not support for PolybaseImport operation.\n\n * 400 DatabaseExtensionsInvalidOperationMode - Invalid operationMode parameter for database extension.\n\n * 400 DatabaseExtensionsInvalidStorageKeyType - The storage key type must by 'StorageAccessKey'.\n\n * 400 DatabaseExtensionsMissingStorageUri - Storage URI cannot be empty.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 InvalidOperationType - Provide a valid operation type.\n\n * 400 ImportExportJobError - The ImportExport operation has failed.\n\n * 400 BlockedByOutboundFirewall - The outbound firewall rules blocked the request.\n\n * 404 ResourceNotFound - Invalid request specifying a non-existent resource.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ImportExportOperationIdNotFound - The operation Id for import or export cannot be found.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 409 ImportExportOperationInProgress - There is an import or export operation in progress on the database." }, "202": { "description": "Import/Export operation is in progress." @@ -167,7 +167,8 @@ } }, "definitions": { - "DatabaseExtensionsDefinition": { + "DatabaseExtensionsProperties": { + "description": "Contains the database information after successful export.", "required": [ "operationMode", "storageKeyType", @@ -218,27 +219,22 @@ "x-ms-mutability": [ "create" ] - }, - "administratorLogin": { - "description": "Administrator login name.", - "type": "string", - "x-ms-mutability": [ - "create" - ] - }, - "administratorLoginPassword": { - "description": "Administrator login password.", - "type": "string", - "x-ms-mutability": [ - "create" - ] - }, - "authenticationType": { - "description": "Authentication type.", - "type": "string", - "x-ms-mutability": [ - "create" - ] + } + } + }, + "DatabaseExtensions": { + "description": "An export managed database operation result resource.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/DatabaseExtensionsProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true } } }, diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/DatabaseOperations.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/DatabaseOperations.json index 935715f1b0a3..c0b734f7e99d 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/DatabaseOperations.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/DatabaseOperations.json @@ -53,7 +53,7 @@ "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 InvalidDatabaseCreateMode - Invalid request to create a database.\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 InvalidBackupStorageAccountType - User passed zrs/lrs during create/update of a database but it failed either because the customer is not whitelisted or because zrs is not available in the specified region.\n\n * 400 CannotUpdateToFreeDatabase - Updating a database to the free sku is not supported.\n\n * 400 DatabaseInvalidSkuPropertyCombination - The properties of the requested sku are inconsistent. Please check that a valid combination is specified. See https://docs.microsoft.com/en-us/rest/api/sql/capabilities/listbylocation#serviceobjectivecapability for more details.\n\n * 400 DatabaseNamedReplicaPerDatabaseLimitExceeded - User tried create a named replica that would exceed the allowed number per primary database\n\n * 400 RestoreTargetEditionSizeInsufficient - User attempted to restore a database to an edition that is a smaller size than the current allocated size of the source.\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 DatabaseCreationBlockedForNonActivatedCMKServer - SQL Pool creations are blocked for CMK enabled workspaces until the workspace is activated. First, enable purge protection and grant the workspace Managed Identity the required permissions (Get, Wrap Key, Unwrap Key) on the Azure Key Vault of the workspace key. Next, activate your workspace after you have granted access.\n\n * 400 PartnerServerNotCompatible - 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 TargetElasticPoolDoesNotExist - The elastic pool does not exist on a 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 ElasticPoolNameRequired - User tried to create or update database to elastic pool service objective without specifying the name of the elastic pool.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\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 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\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 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 InvalidReadScaleEdition - User attempted to enable read scale on a database type that does not support it.\n\n * 400 InvalidReadScaleUnits - User attempted to provide a read scale value that is not supported.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\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 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\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 RequestedDatabaseSizeRequiresShrink - User attempted to ALTER DATABASE MODIFY MAXSIZE to modify the MAXSIZE for a database to a smaller size then the current size.\n\n * 400 CurrentDatabaseSizeExceedsDbMaxSize - User attempted to reduce the max size for a database to a size smaller than the current usage.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 SourceDatabaseEditionCouldNotBeUpgraded - The source database cannot have higher edition than the target database.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 TargetDatabaseEditionCouldNotBeDowngraded - The target database cannot have lower edition than the source database.\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currently in progress.\n\n * 400 InvalidCollation - Collation is not recognized by the server.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 PartnerDBNotCompatibleForSGXEnclave - Attempt to set GeoDR link or update SLO for enclave enabled database is only supported when both database are running on DC-series hardware.\n\n * 400 UpdateNotAllowedInCurrentReplicationState - The operation is disallowed on the database in its current replication state.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 GeoReplicaLimitReached - The per-replica replication limit was reached.\n\n * 400 UnsupportedCapacity - User tried to create or update database with capacity which is not supported.\n\n * 400 ReplicationSourceAndTargetMustHaveSameName - The replication source and target databases must have the same name.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\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 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 400 RestoreToFreeEditionNotSupported - Restore and GeoRestore target cannot be free database.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 400 RestoreNotSupportedForFreeEdition - Restore and GeoRestore are not supported for free database.\n\n * 400 JobAgentDatabaseEditionUnsupported - The specified database's service level objective is not supported for use as a job agent database.\n\n * 400 InvalidDroppedDatabase - Source database dropped does not exist on server within the supported recovery period.\n\n * 400 InvalidLiveDatabase - Source database does not exist on server within the supported recovery period. If restoring a dropped database, please specify its deletion date.\n\n * 400 InvalidVldbRecoverySlo - The Hyperscale edition recovery requires both source and target databases to use Hyperscale service level objective.\n\n * 400 SourceDatabaseNotFound - The source database does not exist.\n\n * 400 InvalidVldbRestoreSlo - The Hyperscale edition Point-In-Time restore requires both source and target databases to use Hyperscale service level objective.\n\n * 400 CannotSpecifyPoolOrSlo - Specifying an elastic pool and/or changing the service level objective or edition is not supported for edition.\n\n * 400 InvalidPublicMaintenanceConfiguration - User tried to specify public maintenance configuration which cannot be converted to internal id (malformed or wrong region).\n\n * 400 ChangeUnsupportedOnEntity - User attempted an unsupported create/update/delete operation on a given entity.\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 * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 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 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 * 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 FreeDbAlreadyExists - Only one free database can exist for a subscription per region.\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 ConflictRequestToUpdateBackupRedundancy - A conflict request to change backup storage redundancy is still in progress.\n\n * 409 SkuAssignmentInProgress - The current assignment request cannot be processed because a previous request has not completed.\n\n * 409 DatabaseElasticPoolMaintenanceConflict - User tried to create or update a database with a specified maintenance configuration that conflicted with that of the elastic pool of the database.\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 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 ServerDisabled - Server is disabled.\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 TargetElasticPoolBeingUpdated - The update of elastic pool cannot be started because there is copy operation in progress for one of the databases in this elastic pool\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 DatabaseCopyLimitPerReplicaReached - User reached the limit of concurrent database copies.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 ServerDisabled - Server is disabled.\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 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\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." + "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 InvalidDatabaseCreateMode - Invalid request to create a database.\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 InvalidBackupStorageAccountType - User passed zrs/lrs during create/update of a database but it failed either because the customer is not whitelisted or because zrs is not available in the specified region.\n\n * 400 CannotUpdateToFreeDatabase - Updating a database to the free sku is not supported.\n\n * 400 DatabaseInvalidSkuPropertyCombination - The properties of the requested sku are inconsistent. Please check that a valid combination is specified. See https://docs.microsoft.com/en-us/rest/api/sql/capabilities/listbylocation#serviceobjectivecapability for more details.\n\n * 400 DatabaseNamedReplicaPerDatabaseLimitExceeded - User tried create a named replica that would exceed the allowed number per primary database\n\n * 400 DatabaseIsCurrentlyPinned - Microsoft has pinned your database SQL Server engine version. To ensure your database does not hit production issues, any future scale operations on your database will be blocked until it has been un-pinned. Please contact Microsoft support for assistance with scaling.\n\n * 400 RestoreTargetEditionSizeInsufficient - User attempted to restore a database to an edition that is a smaller size than the current allocated size of the source.\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 DatabaseCreationBlockedForNonActivatedCMKServer - SQL Pool creations are blocked for CMK enabled workspaces until the workspace is activated. First, enable purge protection and grant the workspace Managed Identity the required permissions (Get, Wrap Key, Unwrap Key) on the Azure Key Vault of the workspace key. Next, activate your workspace after you have granted access.\n\n * 400 PartnerServerNotCompatible - 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 TargetElasticPoolDoesNotExist - The elastic pool does not exist on a 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 ElasticPoolNameRequired - User tried to create or update database to elastic pool service objective without specifying the name of the elastic pool.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\n\n * 400 TierChangeUnsupportedDueToCDCEnabledDatabase - The database cannot update its sku because it is enabled for CDC.\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 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\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 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 InvalidReadScaleEdition - User attempted to enable read scale on a database type that does not support it.\n\n * 400 InvalidReadScaleUnits - User attempted to provide a read scale value that is not supported.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\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 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\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 RequestedDatabaseSizeRequiresShrink - User attempted to ALTER DATABASE MODIFY MAXSIZE to modify the MAXSIZE for a database to a smaller size then the current size.\n\n * 400 CurrentDatabaseSizeExceedsDbMaxSize - User attempted to reduce the max size for a database to a size smaller than the current usage.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 SourceDatabaseEditionCouldNotBeUpgraded - The source database cannot have higher edition than the target database.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 TargetDatabaseEditionCouldNotBeDowngraded - The target database cannot have lower edition than the source database.\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currently in progress.\n\n * 400 InvalidCollation - Collation is not recognized by the server.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 PartnerDBNotCompatibleForSGXEnclave - Attempt to set GeoDR link or update SLO for enclave enabled database is only supported when both database are running on DC-series hardware.\n\n * 400 UpdateNotAllowedInCurrentReplicationState - The operation is disallowed on the database in its current replication state.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 GeoReplicaLimitReached - The per-replica replication limit was reached.\n\n * 400 UnsupportedCapacity - User tried to create or update database with capacity which is not supported.\n\n * 400 ReplicationSourceAndTargetMustHaveSameName - The replication source and target databases must have the same name.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\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 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 400 RestoreToFreeEditionNotSupported - Restore and GeoRestore target cannot be free database.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 400 RestoreNotSupportedForFreeEdition - Restore and GeoRestore are not supported for free database.\n\n * 400 JobAgentDatabaseEditionUnsupported - The specified database's service level objective is not supported for use as a job agent database.\n\n * 400 InvalidDroppedDatabase - Source database dropped does not exist on server within the supported recovery period.\n\n * 400 InvalidLiveDatabase - Source database does not exist on server within the supported recovery period. If restoring a dropped database, please specify its deletion date.\n\n * 400 InvalidVldbRecoverySlo - The Hyperscale edition recovery requires both source and target databases to use Hyperscale service level objective.\n\n * 400 SourceDatabaseNotFound - The source database does not exist.\n\n * 400 InvalidVldbRestoreSlo - The Hyperscale edition Point-In-Time restore requires both source and target databases to use Hyperscale service level objective.\n\n * 400 CannotSpecifyPoolOrSlo - Specifying an elastic pool and/or changing the service level objective or edition is not supported for edition.\n\n * 400 InvalidPublicMaintenanceConfiguration - User tried to specify public maintenance configuration which cannot be converted to internal id (malformed or wrong region).\n\n * 400 ChangeUnsupportedOnEntity - User attempted an unsupported create/update/delete operation on a given entity.\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 * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 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 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 * 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 FreeDbAlreadyExists - Only one free database can exist for a subscription per region.\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 ConflictRequestToUpdateBackupRedundancy - A conflict request to change backup storage redundancy is still in progress.\n\n * 409 SkuAssignmentInProgress - The current assignment request cannot be processed because a previous request has not completed.\n\n * 409 DatabaseElasticPoolMaintenanceConflict - User tried to create or update a database with a specified maintenance configuration that conflicted with that of the elastic pool of the database.\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 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 ServerDisabled - Server is disabled.\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 TargetElasticPoolBeingUpdated - The update of elastic pool cannot be started because there is copy operation in progress for one of the databases in this elastic pool\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 DatabaseCopyLimitPerReplicaReached - User reached the limit of concurrent database copies.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 ServerDisabled - Server is disabled.\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 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\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": { @@ -95,7 +95,7 @@ } }, "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 InvalidDatabaseCreateMode - Invalid request to create a database.\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 InvalidBackupStorageAccountType - User passed zrs/lrs during create/update of a database but it failed either because the customer is not whitelisted or because zrs is not available in the specified region.\n\n * 400 CannotUpdateToFreeDatabase - Updating a database to the free sku is not supported.\n\n * 400 DatabaseInvalidSkuPropertyCombination - The properties of the requested sku are inconsistent. Please check that a valid combination is specified. See https://docs.microsoft.com/en-us/rest/api/sql/capabilities/listbylocation#serviceobjectivecapability for more details.\n\n * 400 DatabaseNamedReplicaPerDatabaseLimitExceeded - User tried create a named replica that would exceed the allowed number per primary database\n\n * 400 RestoreTargetEditionSizeInsufficient - User attempted to restore a database to an edition that is a smaller size than the current allocated size of the source.\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 DatabaseCreationBlockedForNonActivatedCMKServer - SQL Pool creations are blocked for CMK enabled workspaces until the workspace is activated. First, enable purge protection and grant the workspace Managed Identity the required permissions (Get, Wrap Key, Unwrap Key) on the Azure Key Vault of the workspace key. Next, activate your workspace after you have granted access.\n\n * 400 PartnerServerNotCompatible - 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 TargetElasticPoolDoesNotExist - The elastic pool does not exist on a 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 ElasticPoolNameRequired - User tried to create or update database to elastic pool service objective without specifying the name of the elastic pool.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\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 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\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 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 InvalidReadScaleEdition - User attempted to enable read scale on a database type that does not support it.\n\n * 400 InvalidReadScaleUnits - User attempted to provide a read scale value that is not supported.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\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 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\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 RequestedDatabaseSizeRequiresShrink - User attempted to ALTER DATABASE MODIFY MAXSIZE to modify the MAXSIZE for a database to a smaller size then the current size.\n\n * 400 CurrentDatabaseSizeExceedsDbMaxSize - User attempted to reduce the max size for a database to a size smaller than the current usage.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 SourceDatabaseEditionCouldNotBeUpgraded - The source database cannot have higher edition than the target database.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 TargetDatabaseEditionCouldNotBeDowngraded - The target database cannot have lower edition than the source database.\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currently in progress.\n\n * 400 InvalidCollation - Collation is not recognized by the server.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 PartnerDBNotCompatibleForSGXEnclave - Attempt to set GeoDR link or update SLO for enclave enabled database is only supported when both database are running on DC-series hardware.\n\n * 400 UpdateNotAllowedInCurrentReplicationState - The operation is disallowed on the database in its current replication state.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 GeoReplicaLimitReached - The per-replica replication limit was reached.\n\n * 400 UnsupportedCapacity - User tried to create or update database with capacity which is not supported.\n\n * 400 ReplicationSourceAndTargetMustHaveSameName - The replication source and target databases must have the same name.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\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 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 400 RestoreToFreeEditionNotSupported - Restore and GeoRestore target cannot be free database.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 400 RestoreNotSupportedForFreeEdition - Restore and GeoRestore are not supported for free database.\n\n * 400 JobAgentDatabaseEditionUnsupported - The specified database's service level objective is not supported for use as a job agent database.\n\n * 400 InvalidDroppedDatabase - Source database dropped does not exist on server within the supported recovery period.\n\n * 400 InvalidLiveDatabase - Source database does not exist on server within the supported recovery period. If restoring a dropped database, please specify its deletion date.\n\n * 400 InvalidVldbRecoverySlo - The Hyperscale edition recovery requires both source and target databases to use Hyperscale service level objective.\n\n * 400 SourceDatabaseNotFound - The source database does not exist.\n\n * 400 InvalidVldbRestoreSlo - The Hyperscale edition Point-In-Time restore requires both source and target databases to use Hyperscale service level objective.\n\n * 400 CannotSpecifyPoolOrSlo - Specifying an elastic pool and/or changing the service level objective or edition is not supported for edition.\n\n * 400 InvalidPublicMaintenanceConfiguration - User tried to specify public maintenance configuration which cannot be converted to internal id (malformed or wrong region).\n\n * 400 ChangeUnsupportedOnEntity - User attempted an unsupported create/update/delete operation on a given entity.\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 * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 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 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 * 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 FreeDbAlreadyExists - Only one free database can exist for a subscription per region.\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 ConflictRequestToUpdateBackupRedundancy - A conflict request to change backup storage redundancy is still in progress.\n\n * 409 SkuAssignmentInProgress - The current assignment request cannot be processed because a previous request has not completed.\n\n * 409 DatabaseElasticPoolMaintenanceConflict - User tried to create or update a database with a specified maintenance configuration that conflicted with that of the elastic pool of the database.\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 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 ServerDisabled - Server is disabled.\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 TargetElasticPoolBeingUpdated - The update of elastic pool cannot be started because there is copy operation in progress for one of the databases in this elastic pool\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 DatabaseCopyLimitPerReplicaReached - User reached the limit of concurrent database copies.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 ServerDisabled - Server is disabled.\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 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\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." + "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 InvalidDatabaseCreateMode - Invalid request to create a database.\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 InvalidBackupStorageAccountType - User passed zrs/lrs during create/update of a database but it failed either because the customer is not whitelisted or because zrs is not available in the specified region.\n\n * 400 CannotUpdateToFreeDatabase - Updating a database to the free sku is not supported.\n\n * 400 DatabaseInvalidSkuPropertyCombination - The properties of the requested sku are inconsistent. Please check that a valid combination is specified. See https://docs.microsoft.com/en-us/rest/api/sql/capabilities/listbylocation#serviceobjectivecapability for more details.\n\n * 400 DatabaseNamedReplicaPerDatabaseLimitExceeded - User tried create a named replica that would exceed the allowed number per primary database\n\n * 400 DatabaseIsCurrentlyPinned - Microsoft has pinned your database SQL Server engine version. To ensure your database does not hit production issues, any future scale operations on your database will be blocked until it has been un-pinned. Please contact Microsoft support for assistance with scaling.\n\n * 400 RestoreTargetEditionSizeInsufficient - User attempted to restore a database to an edition that is a smaller size than the current allocated size of the source.\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 DatabaseCreationBlockedForNonActivatedCMKServer - SQL Pool creations are blocked for CMK enabled workspaces until the workspace is activated. First, enable purge protection and grant the workspace Managed Identity the required permissions (Get, Wrap Key, Unwrap Key) on the Azure Key Vault of the workspace key. Next, activate your workspace after you have granted access.\n\n * 400 PartnerServerNotCompatible - 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 TargetElasticPoolDoesNotExist - The elastic pool does not exist on a 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 ElasticPoolNameRequired - User tried to create or update database to elastic pool service objective without specifying the name of the elastic pool.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\n\n * 400 TierChangeUnsupportedDueToCDCEnabledDatabase - The database cannot update its sku because it is enabled for CDC.\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 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\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 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 InvalidReadScaleEdition - User attempted to enable read scale on a database type that does not support it.\n\n * 400 InvalidReadScaleUnits - User attempted to provide a read scale value that is not supported.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\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 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\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 RequestedDatabaseSizeRequiresShrink - User attempted to ALTER DATABASE MODIFY MAXSIZE to modify the MAXSIZE for a database to a smaller size then the current size.\n\n * 400 CurrentDatabaseSizeExceedsDbMaxSize - User attempted to reduce the max size for a database to a size smaller than the current usage.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 SourceDatabaseEditionCouldNotBeUpgraded - The source database cannot have higher edition than the target database.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 TargetDatabaseEditionCouldNotBeDowngraded - The target database cannot have lower edition than the source database.\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currently in progress.\n\n * 400 InvalidCollation - Collation is not recognized by the server.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 PartnerDBNotCompatibleForSGXEnclave - Attempt to set GeoDR link or update SLO for enclave enabled database is only supported when both database are running on DC-series hardware.\n\n * 400 UpdateNotAllowedInCurrentReplicationState - The operation is disallowed on the database in its current replication state.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 GeoReplicaLimitReached - The per-replica replication limit was reached.\n\n * 400 UnsupportedCapacity - User tried to create or update database with capacity which is not supported.\n\n * 400 ReplicationSourceAndTargetMustHaveSameName - The replication source and target databases must have the same name.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\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 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 400 RestoreToFreeEditionNotSupported - Restore and GeoRestore target cannot be free database.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 400 RestoreNotSupportedForFreeEdition - Restore and GeoRestore are not supported for free database.\n\n * 400 JobAgentDatabaseEditionUnsupported - The specified database's service level objective is not supported for use as a job agent database.\n\n * 400 InvalidDroppedDatabase - Source database dropped does not exist on server within the supported recovery period.\n\n * 400 InvalidLiveDatabase - Source database does not exist on server within the supported recovery period. If restoring a dropped database, please specify its deletion date.\n\n * 400 InvalidVldbRecoverySlo - The Hyperscale edition recovery requires both source and target databases to use Hyperscale service level objective.\n\n * 400 SourceDatabaseNotFound - The source database does not exist.\n\n * 400 InvalidVldbRestoreSlo - The Hyperscale edition Point-In-Time restore requires both source and target databases to use Hyperscale service level objective.\n\n * 400 CannotSpecifyPoolOrSlo - Specifying an elastic pool and/or changing the service level objective or edition is not supported for edition.\n\n * 400 InvalidPublicMaintenanceConfiguration - User tried to specify public maintenance configuration which cannot be converted to internal id (malformed or wrong region).\n\n * 400 ChangeUnsupportedOnEntity - User attempted an unsupported create/update/delete operation on a given entity.\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 * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 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 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 * 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 FreeDbAlreadyExists - Only one free database can exist for a subscription per region.\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 ConflictRequestToUpdateBackupRedundancy - A conflict request to change backup storage redundancy is still in progress.\n\n * 409 SkuAssignmentInProgress - The current assignment request cannot be processed because a previous request has not completed.\n\n * 409 DatabaseElasticPoolMaintenanceConflict - User tried to create or update a database with a specified maintenance configuration that conflicted with that of the elastic pool of the database.\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 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 ServerDisabled - Server is disabled.\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 TargetElasticPoolBeingUpdated - The update of elastic pool cannot be started because there is copy operation in progress for one of the databases in this elastic pool\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 DatabaseCopyLimitPerReplicaReached - User reached the limit of concurrent database copies.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 ServerDisabled - Server is disabled.\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 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\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": { diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/DatabaseSecurityAlertPolicies.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/DatabaseSecurityAlertPolicies.json index 3708d600ea36..8001db2b512d 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/DatabaseSecurityAlertPolicies.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/DatabaseSecurityAlertPolicies.json @@ -235,7 +235,7 @@ } }, "disabledAlerts": { - "description": "Specifies an array of alerts that are disabled. Allowed values are: Sql_Injection, Sql_Injection_Vulnerability, Access_Anomaly, Data_Exfiltration, Unsafe_Action", + "description": "Specifies an array of alerts that are disabled. Allowed values are: Sql_Injection, Sql_Injection_Vulnerability, Access_Anomaly, Data_Exfiltration, Unsafe_Action, Brute_Force", "type": "array", "items": { "type": "string" @@ -283,8 +283,9 @@ ], "properties": { "systemData": { - "readOnly": true, - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/systemData" + "$ref": "../../../common/v1/types.json#/definitions/systemData", + "description": "SystemData of SecurityAlertPolicyResource.", + "readOnly": true }, "properties": { "$ref": "#/definitions/SecurityAlertsPolicyProperties", diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/DatabaseUsages.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/DatabaseUsages.json index 4aa1063bcdd9..5251e2ecd8ae 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/DatabaseUsages.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/DatabaseUsages.json @@ -48,7 +48,7 @@ } }, "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 InvalidDatabaseCreateMode - Invalid request to create a database.\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 InvalidBackupStorageAccountType - User passed zrs/lrs during create/update of a database but it failed either because the customer is not whitelisted or because zrs is not available in the specified region.\n\n * 400 CannotUpdateToFreeDatabase - Updating a database to the free sku is not supported.\n\n * 400 DatabaseInvalidSkuPropertyCombination - The properties of the requested sku are inconsistent. Please check that a valid combination is specified. See https://docs.microsoft.com/en-us/rest/api/sql/capabilities/listbylocation#serviceobjectivecapability for more details.\n\n * 400 DatabaseNamedReplicaPerDatabaseLimitExceeded - User tried create a named replica that would exceed the allowed number per primary database\n\n * 400 RestoreTargetEditionSizeInsufficient - User attempted to restore a database to an edition that is a smaller size than the current allocated size of the source.\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 DatabaseCreationBlockedForNonActivatedCMKServer - SQL Pool creations are blocked for CMK enabled workspaces until the workspace is activated. First, enable purge protection and grant the workspace Managed Identity the required permissions (Get, Wrap Key, Unwrap Key) on the Azure Key Vault of the workspace key. Next, activate your workspace after you have granted access.\n\n * 400 PartnerServerNotCompatible - 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 TargetElasticPoolDoesNotExist - The elastic pool does not exist on a 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 ElasticPoolNameRequired - User tried to create or update database to elastic pool service objective without specifying the name of the elastic pool.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\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 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\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 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 InvalidReadScaleEdition - User attempted to enable read scale on a database type that does not support it.\n\n * 400 InvalidReadScaleUnits - User attempted to provide a read scale value that is not supported.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\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 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\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 RequestedDatabaseSizeRequiresShrink - User attempted to ALTER DATABASE MODIFY MAXSIZE to modify the MAXSIZE for a database to a smaller size then the current size.\n\n * 400 CurrentDatabaseSizeExceedsDbMaxSize - User attempted to reduce the max size for a database to a size smaller than the current usage.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 SourceDatabaseEditionCouldNotBeUpgraded - The source database cannot have higher edition than the target database.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 TargetDatabaseEditionCouldNotBeDowngraded - The target database cannot have lower edition than the source database.\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currently in progress.\n\n * 400 InvalidCollation - Collation is not recognized by the server.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 PartnerDBNotCompatibleForSGXEnclave - Attempt to set GeoDR link or update SLO for enclave enabled database is only supported when both database are running on DC-series hardware.\n\n * 400 UpdateNotAllowedInCurrentReplicationState - The operation is disallowed on the database in its current replication state.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 GeoReplicaLimitReached - The per-replica replication limit was reached.\n\n * 400 UnsupportedCapacity - User tried to create or update database with capacity which is not supported.\n\n * 400 ReplicationSourceAndTargetMustHaveSameName - The replication source and target databases must have the same name.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\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 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 400 RestoreToFreeEditionNotSupported - Restore and GeoRestore target cannot be free database.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 400 RestoreNotSupportedForFreeEdition - Restore and GeoRestore are not supported for free database.\n\n * 400 JobAgentDatabaseEditionUnsupported - The specified database's service level objective is not supported for use as a job agent database.\n\n * 400 InvalidDroppedDatabase - Source database dropped does not exist on server within the supported recovery period.\n\n * 400 InvalidLiveDatabase - Source database does not exist on server within the supported recovery period. If restoring a dropped database, please specify its deletion date.\n\n * 400 InvalidVldbRecoverySlo - The Hyperscale edition recovery requires both source and target databases to use Hyperscale service level objective.\n\n * 400 SourceDatabaseNotFound - The source database does not exist.\n\n * 400 InvalidVldbRestoreSlo - The Hyperscale edition Point-In-Time restore requires both source and target databases to use Hyperscale service level objective.\n\n * 400 CannotSpecifyPoolOrSlo - Specifying an elastic pool and/or changing the service level objective or edition is not supported for edition.\n\n * 400 InvalidPublicMaintenanceConfiguration - User tried to specify public maintenance configuration which cannot be converted to internal id (malformed or wrong region).\n\n * 400 ChangeUnsupportedOnEntity - User attempted an unsupported create/update/delete operation on a given entity.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 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 * 405 UnsupportedReplicationOperation - An unsupported replication operation was initiated on the database.\n\n * 409 FreeDbAlreadyExists - Only one free database can exist for a subscription per region.\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 ConflictRequestToUpdateBackupRedundancy - A conflict request to change backup storage redundancy is still in progress.\n\n * 409 SkuAssignmentInProgress - The current assignment request cannot be processed because a previous request has not completed.\n\n * 409 DatabaseElasticPoolMaintenanceConflict - User tried to create or update a database with a specified maintenance configuration that conflicted with that of the elastic pool of the database.\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 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 ServerDisabled - Server is disabled.\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 TargetElasticPoolBeingUpdated - The update of elastic pool cannot be started because there is copy operation in progress for one of the databases in this elastic pool\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 DatabaseCopyLimitPerReplicaReached - User reached the limit of concurrent database copies.\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 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 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\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 InvalidDatabaseCreateMode - Invalid request to create a database.\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 InvalidBackupStorageAccountType - User passed zrs/lrs during create/update of a database but it failed either because the customer is not whitelisted or because zrs is not available in the specified region.\n\n * 400 CannotUpdateToFreeDatabase - Updating a database to the free sku is not supported.\n\n * 400 DatabaseInvalidSkuPropertyCombination - The properties of the requested sku are inconsistent. Please check that a valid combination is specified. See https://docs.microsoft.com/en-us/rest/api/sql/capabilities/listbylocation#serviceobjectivecapability for more details.\n\n * 400 DatabaseNamedReplicaPerDatabaseLimitExceeded - User tried create a named replica that would exceed the allowed number per primary database\n\n * 400 DatabaseIsCurrentlyPinned - Microsoft has pinned your database SQL Server engine version. To ensure your database does not hit production issues, any future scale operations on your database will be blocked until it has been un-pinned. Please contact Microsoft support for assistance with scaling.\n\n * 400 RestoreTargetEditionSizeInsufficient - User attempted to restore a database to an edition that is a smaller size than the current allocated size of the source.\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 DatabaseCreationBlockedForNonActivatedCMKServer - SQL Pool creations are blocked for CMK enabled workspaces until the workspace is activated. First, enable purge protection and grant the workspace Managed Identity the required permissions (Get, Wrap Key, Unwrap Key) on the Azure Key Vault of the workspace key. Next, activate your workspace after you have granted access.\n\n * 400 PartnerServerNotCompatible - 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 TargetElasticPoolDoesNotExist - The elastic pool does not exist on a 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 ElasticPoolNameRequired - User tried to create or update database to elastic pool service objective without specifying the name of the elastic pool.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\n\n * 400 TierChangeUnsupportedDueToCDCEnabledDatabase - The database cannot update its sku because it is enabled for CDC.\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 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\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 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 InvalidReadScaleEdition - User attempted to enable read scale on a database type that does not support it.\n\n * 400 InvalidReadScaleUnits - User attempted to provide a read scale value that is not supported.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\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 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\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 RequestedDatabaseSizeRequiresShrink - User attempted to ALTER DATABASE MODIFY MAXSIZE to modify the MAXSIZE for a database to a smaller size then the current size.\n\n * 400 CurrentDatabaseSizeExceedsDbMaxSize - User attempted to reduce the max size for a database to a size smaller than the current usage.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 SourceDatabaseEditionCouldNotBeUpgraded - The source database cannot have higher edition than the target database.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 TargetDatabaseEditionCouldNotBeDowngraded - The target database cannot have lower edition than the source database.\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currently in progress.\n\n * 400 InvalidCollation - Collation is not recognized by the server.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 PartnerDBNotCompatibleForSGXEnclave - Attempt to set GeoDR link or update SLO for enclave enabled database is only supported when both database are running on DC-series hardware.\n\n * 400 UpdateNotAllowedInCurrentReplicationState - The operation is disallowed on the database in its current replication state.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 GeoReplicaLimitReached - The per-replica replication limit was reached.\n\n * 400 UnsupportedCapacity - User tried to create or update database with capacity which is not supported.\n\n * 400 ReplicationSourceAndTargetMustHaveSameName - The replication source and target databases must have the same name.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\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 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 400 RestoreToFreeEditionNotSupported - Restore and GeoRestore target cannot be free database.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 400 RestoreNotSupportedForFreeEdition - Restore and GeoRestore are not supported for free database.\n\n * 400 JobAgentDatabaseEditionUnsupported - The specified database's service level objective is not supported for use as a job agent database.\n\n * 400 InvalidDroppedDatabase - Source database dropped does not exist on server within the supported recovery period.\n\n * 400 InvalidLiveDatabase - Source database does not exist on server within the supported recovery period. If restoring a dropped database, please specify its deletion date.\n\n * 400 InvalidVldbRecoverySlo - The Hyperscale edition recovery requires both source and target databases to use Hyperscale service level objective.\n\n * 400 SourceDatabaseNotFound - The source database does not exist.\n\n * 400 InvalidVldbRestoreSlo - The Hyperscale edition Point-In-Time restore requires both source and target databases to use Hyperscale service level objective.\n\n * 400 CannotSpecifyPoolOrSlo - Specifying an elastic pool and/or changing the service level objective or edition is not supported for edition.\n\n * 400 InvalidPublicMaintenanceConfiguration - User tried to specify public maintenance configuration which cannot be converted to internal id (malformed or wrong region).\n\n * 400 ChangeUnsupportedOnEntity - User attempted an unsupported create/update/delete operation on a given entity.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 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 * 405 UnsupportedReplicationOperation - An unsupported replication operation was initiated on the database.\n\n * 409 FreeDbAlreadyExists - Only one free database can exist for a subscription per region.\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 ConflictRequestToUpdateBackupRedundancy - A conflict request to change backup storage redundancy is still in progress.\n\n * 409 SkuAssignmentInProgress - The current assignment request cannot be processed because a previous request has not completed.\n\n * 409 DatabaseElasticPoolMaintenanceConflict - User tried to create or update a database with a specified maintenance configuration that conflicted with that of the elastic pool of the database.\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 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 ServerDisabled - Server is disabled.\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 TargetElasticPoolBeingUpdated - The update of elastic pool cannot be started because there is copy operation in progress for one of the databases in this elastic pool\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 DatabaseCopyLimitPerReplicaReached - User reached the limit of concurrent database copies.\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 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 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." } }, "x-ms-pageable": { diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/DatabaseVulnerabilityAssesmentRuleBaselines.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/DatabaseVulnerabilityAssesmentRuleBaselines.json index 9ebc6e32a886..367ce0b86bf4 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/DatabaseVulnerabilityAssesmentRuleBaselines.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/DatabaseVulnerabilityAssesmentRuleBaselines.json @@ -88,7 +88,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 VulnerabilityAssessmentStorageAuthenticationFailed - Could not authenticate to storage account '{0}' .\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 VulnerabilityAssessmentInvalidStorageAccount - The storage account '{0}' that was defined in the policy is invalid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 VulnerabilityAssessmentRuleDoesNotExists - Rule '{0}' does not exist.\n\n * 404 VulnerabilityAssessmentBaselineDoesNotExists - Baseline does not exist for rule '{0}'\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + "description": "*** Error Responses: ***\n\n * 400 VulnerabilityAssessmentStorageAuthenticationFailed - Could not authenticate to storage account '{0}' .\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 VulnerabilityAssessmentInvalidStorageAccount - The storage account '{0}' that was defined in the policy is invalid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 VulnerabilityAssessmentRuleDoesNotExists - Rule '{0}' does not exist.\n\n * 404 VulnerabilityAssessmentBaselineDoesNotExists - Baseline does not exist for rule '{0}'\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." } }, "x-ms-examples": { @@ -177,7 +177,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 VulnerabilityAssessmentStorageAuthenticationFailed - Could not authenticate to storage account '{0}' .\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 VulnerabilityAssessmentInvalidStorageAccount - The storage account '{0}' that was defined in the policy is invalid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 VulnerabilityAssessmentRuleDoesNotExists - Rule '{0}' does not exist.\n\n * 404 VulnerabilityAssessmentBaselineDoesNotExists - Baseline does not exist for rule '{0}'\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + "description": "*** Error Responses: ***\n\n * 400 VulnerabilityAssessmentStorageAuthenticationFailed - Could not authenticate to storage account '{0}' .\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 VulnerabilityAssessmentInvalidStorageAccount - The storage account '{0}' that was defined in the policy is invalid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 VulnerabilityAssessmentRuleDoesNotExists - Rule '{0}' does not exist.\n\n * 404 VulnerabilityAssessmentBaselineDoesNotExists - Baseline does not exist for rule '{0}'\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." } }, "x-ms-examples": { @@ -254,7 +254,7 @@ "description": "Successfully removed the database vulnerability assessment rule baseline." }, "default": { - "description": "*** Error Responses: ***\n\n * 400 VulnerabilityAssessmentStorageAuthenticationFailed - Could not authenticate to storage account '{0}' .\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 VulnerabilityAssessmentInvalidStorageAccount - The storage account '{0}' that was defined in the policy is invalid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 VulnerabilityAssessmentRuleDoesNotExists - Rule '{0}' does not exist.\n\n * 404 VulnerabilityAssessmentBaselineDoesNotExists - Baseline does not exist for rule '{0}'\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + "description": "*** Error Responses: ***\n\n * 400 VulnerabilityAssessmentStorageAuthenticationFailed - Could not authenticate to storage account '{0}' .\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 VulnerabilityAssessmentInvalidStorageAccount - The storage account '{0}' that was defined in the policy is invalid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 VulnerabilityAssessmentRuleDoesNotExists - Rule '{0}' does not exist.\n\n * 404 VulnerabilityAssessmentBaselineDoesNotExists - Baseline does not exist for rule '{0}'\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." } }, "x-ms-examples": { diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/DatabaseVulnerabilityAssessmentScans.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/DatabaseVulnerabilityAssessmentScans.json index 0118781a19fa..68973df4851b 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/DatabaseVulnerabilityAssessmentScans.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/DatabaseVulnerabilityAssessmentScans.json @@ -66,7 +66,7 @@ "description": "Successfully executed a Vulnerability Assessment database scan." }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 InvalidVulnerabilityAssessmentScanIdLength - The vulnerability assessment scan ID length must be below {0} characters.\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 409 DatabaseVulnerabilityAssessmentScanIsAlreadyInProgress - Vulnerability Assessment scan is already in progress.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + "description": "*** Error Responses: ***\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 InvalidVulnerabilityAssessmentScanIdLength - The vulnerability assessment scan ID length must be below {0} characters.\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 409 DatabaseVulnerabilityAssessmentScanIsAlreadyInProgress - Vulnerability Assessment scan is already in progress.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." }, "202": { "description": "Successfully started a Vulnerability Assessment database scan." @@ -126,7 +126,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 409 DatabaseVulnerabilityAssessmentScanIsAlreadyInProgress - Vulnerability Assessment scan is already in progress.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 409 DatabaseVulnerabilityAssessmentScanIsAlreadyInProgress - Vulnerability Assessment scan is already in progress.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." } }, "x-ms-pageable": { @@ -192,7 +192,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 409 DatabaseVulnerabilityAssessmentScanIsAlreadyInProgress - Vulnerability Assessment scan is already in progress.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 409 DatabaseVulnerabilityAssessmentScanIsAlreadyInProgress - Vulnerability Assessment scan is already in progress.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." } }, "x-ms-examples": { @@ -259,7 +259,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 409 DatabaseVulnerabilityAssessmentScanIsAlreadyInProgress - Vulnerability Assessment scan is already in progress.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 409 DatabaseVulnerabilityAssessmentScanIsAlreadyInProgress - Vulnerability Assessment scan is already in progress.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." }, "201": { "description": "Scan result was converted successfully.", diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/DatabaseVulnerabilityAssessments.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/DatabaseVulnerabilityAssessments.json index cbbb756cf55d..b2dfaee29746 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/DatabaseVulnerabilityAssessments.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/DatabaseVulnerabilityAssessments.json @@ -66,7 +66,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentUnsupportedStorageAccount - The provided storage account is unsupported.\n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 400 VulnerabilityAssessmentInsufficientStorageAccountPermissions - Insufficient permissions on the provided storage account.\n\n * 400 VulnerabilityAssessmentStorageAccountIsDisabled - The provided storage account is disabled.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." } }, "x-ms-examples": { @@ -133,7 +133,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentUnsupportedStorageAccount - The provided storage account is unsupported.\n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 400 VulnerabilityAssessmentInsufficientStorageAccountPermissions - Insufficient permissions on the provided storage account.\n\n * 400 VulnerabilityAssessmentStorageAccountIsDisabled - The provided storage account is disabled.\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." }, "201": { "description": "Successfully created the vulnerability assessment.", @@ -200,7 +200,7 @@ "description": "Successfully removed the database vulnerability assessment." }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentUnsupportedStorageAccount - The provided storage account is unsupported.\n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 400 VulnerabilityAssessmentInsufficientStorageAccountPermissions - Insufficient permissions on the provided storage account.\n\n * 400 VulnerabilityAssessmentStorageAccountIsDisabled - The provided storage account is disabled.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." } }, "x-ms-examples": { @@ -246,7 +246,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 409 DatabaseVulnerabilityAssessmentScanIsAlreadyInProgress - Vulnerability Assessment scan is already in progress.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 409 DatabaseVulnerabilityAssessmentScanIsAlreadyInProgress - Vulnerability Assessment scan is already in progress.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." } }, "x-ms-pageable": { diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/Databases.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/Databases.json index e44f5bb80dcc..5f2eacd61a0f 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/Databases.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/Databases.json @@ -45,7 +45,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found" + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." } }, "x-ms-pageable": { @@ -90,7 +90,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ResourceNotFound - The requested resource was not found." + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." } }, "x-ms-examples": { @@ -139,7 +139,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidDatabaseCreateOrUpdateRequest - The request body for the create or update database operation is invalid.\n\n * 400 InvalidResourceId - Invalid resource identifier.\n\n * 400 InvalidSourceDatabaseId - Invalid source database identifier.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 MissingCollation - Collation is required.\n\n * 400 MissingMaxSizeBytes - MaxSizeBytes is required.\n\n * 400 MissingSkuName - Sku name is required.\n\n * 400 MissingSourceDatabaseId - Missing source database identifier.\n\n * 400 InvalidLicenseType - The specified license type is invalid.\n\n * 400 InvalidSkuName - Invalid SKU name.\n\n * 400 MismatchedSkuNameAndCapacity - Mismatch between SKU name and capacity.\n\n * 400 MismatchedSkuNameAndTier - Mismatch between SKU name and tier.\n\n * 400 MismatchedSkuNameAndFamily - Mismatch between SKU name and family.\n\n * 400 DatabaseNameDoesNotMatchSourceDatabaseId - The database name specified doesn’t match the database name in sourceDatabaseId.\n\n * 400 ElasticPoolNotSupportedForExternalBackupRestore - Elastic pool is not supported for external backup restore\n\n * 400 InvalidRecoverableDatabaseId - Invalid recoverable database identifier.\n\n * 400 InvalidRecoveryServicesRecoveryPointId - Invalid recovery services recovery point identifier.\n\n * 400 InvalidRestorableDroppedDatabaseDeletionDate - The restorable dropped database deletion date given is invalid\n\n * 400 InvalidRestorableDroppedDatabaseId - Invalid restorable dropped database identifier\n\n * 400 MissingRecoverableDatabaseId - Missing recoverable database identifier.\n\n * 400 MissingRecoveryServicesRecoveryPointId - Missing recovery services recovery point Id.\n\n * 400 MissingRestorableDroppedDatabaseId - Missing restorableDroppedDatabaseId\n\n * 400 MissingRestorePointInTime - Missing restore point in time\n\n * 400 MissingSourceDatabaseDeletionDate - Missing source database deletion date\n\n * 400 MissingStorageContainerSasToken - Missing storage container SAS token\n\n * 400 MissingStorageContainerUri - Missing storage container URI\n\n * 400 RestorableDroppedDatabaseIdGivenForRestoreWithSourceDatabaseId - Cannot specify restorableDroppedDatabaseId when sourceDatabaseId is already given in restore create mode\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\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 ServerNotFound - The requested server was not found.\n\n * 400 SourceDatabaseEditionCouldNotBeUpgraded - The source database cannot have higher edition than the target database.\n\n * 400 TargetDatabaseEditionCouldNotBeDowngraded - The target database cannot have lower edition than the source database.\n\n * 400 PartnerDBNotCompatibleForSGXEnclave - Attempt to set GeoDR link or update SLO for enclave enabled database is only supported when both database are running on DC-series hardware.\n\n * 400 InvalidPublicMaintenanceConfiguration - User tried to specify public maintenance configuration which cannot be converted to internal id (malformed or wrong region).\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currently in progress.\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 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 InvalidReadScaleEdition - User attempted to enable read scale on a database type that does not support it.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 InvalidReadScaleUnits - User attempted to provide a read scale value that is not supported.\n\n * 400 UnsupportedCapacity - User tried to create or update database with capacity which is not supported.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 RequestedDatabaseSizeRequiresShrink - User attempted to ALTER DATABASE MODIFY MAXSIZE to modify the MAXSIZE for a database to a smaller size then the current size.\n\n * 400 RestoreToFreeEditionNotSupported - Restore and GeoRestore target cannot be free database.\n\n * 400 CurrentDatabaseSizeExceedsDbMaxSize - User attempted to reduce the max size for a database to a size smaller than the current usage.\n\n * 400 RestoreNotSupportedForFreeEdition - Restore and GeoRestore are not supported for free database.\n\n * 400 InvalidDroppedDatabase - Source database dropped does not exist on server within the supported recovery period.\n\n * 400 InvalidLiveDatabase - Source database does not exist on server within the supported recovery period. If restoring a dropped database, please specify its deletion date.\n\n * 400 InvalidVldbRecoverySlo - The Hyperscale edition recovery requires both source and target databases to use Hyperscale service level objective.\n\n * 400 InvalidVldbRestoreSlo - The Hyperscale edition Point-In-Time restore requires both source and target databases to use Hyperscale service level objective.\n\n * 400 CannotSpecifyPoolOrSlo - Specifying an elastic pool and/or changing the service level objective or edition is not supported for edition.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 InvalidMaxSizeTierCombination - The specified tier does not support the specified database max size.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\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 TierChangeUnsupportedDueToMemoryOptimizedObject - The database cannot update its sku because it has memory-optimized objects.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 400 InvalidCollation - Collation is not recognized by the server.\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 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 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 InvalidBackupStorageAccountType - User passed zrs/lrs during create/update of a database but it failed either because the customer is not whitelisted or because zrs is not available in the specified region.\n\n * 400 TierChangeUnsupportedDueToCDCEnabledDatabase - The database cannot update its sku because it is enabled for CDC.\n\n * 400 DatabaseInvalidSkuPropertyCombination - The properties of the requested sku are inconsistent. Please check that a valid combination is specified. See https://docs.microsoft.com/en-us/rest/api/sql/capabilities/listbylocation#serviceobjectivecapability for more details.\n\n * 400 DatabaseNamedReplicaPerDatabaseLimitExceeded - User tried create a named replica that would exceed the allowed number per primary database\n\n * 400 RestoreTargetEditionSizeInsufficient - User attempted to restore a database to an edition that is a smaller size than the current allocated size of the source.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\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 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 CannotUpdateToFreeDatabase - Updating a database to the free sku is not supported.\n\n * 400 InvalidSku - The user specified an invalid sku.\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 InvalidTierSkuCombination - The specified tier does not support the specified sku.\n\n * 400 InvalidDatabaseCreateMode - Invalid request to create a database.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 UnsupportedServiceName - The specified name is an invalid name because it contains one or more unsupported unicode characters.\n\n * 400 CannotMoveOrDropSyncMetadataDatabase - Cannot drop database used as sync metadata database.\n\n * 400 OfferDisabledOnSubscription - Subscription offer type is restricted from provisioning the requested resource.\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 ElasticPoolOverStorageUsage - Attempting to write data to a database when the storage limit of the elastic pool has been reached.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 PartnerServerNotCompatible - 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 DatabaseCreationBlockedForNonActivatedCMKServer - SQL Pool creations are blocked for CMK enabled workspaces until the workspace is activated. First, enable purge protection and grant the workspace Managed Identity the required permissions (Get, Wrap Key, Unwrap Key) on the Azure Key Vault of the workspace key. Next, activate your workspace after you have granted access.\n\n * 400 TargetElasticPoolDoesNotExist - The elastic pool does not exist on a 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 ElasticPoolNameRequired - User tried to create or update database to elastic pool service objective without specifying the name of the elastic pool.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\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 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\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 SubscriptionDoesNotHaveServer - The requested server was not found\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 SimultaneousSkuChangeNotAllowed - Service objective change operations cannot run on both databases of a replication relationship at the same time.\n\n * 409 CurrentMemoryUsageExceedsSkuQuota - User attempted an sku update operation that cannot be completed due to the higher resource consumption.\n\n * 409 TargetElasticPoolBeingUpdated - The update of elastic pool cannot be started because there is copy operation in progress for one of the databases in this elastic pool\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 DatabaseCopyLimitPerReplicaReached - User reached the limit of concurrent database copies.\n\n * 409 ServerDisabled - Server is disabled.\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 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 ConflictRequestToUpdateBackupRedundancy - A conflict request to change backup storage redundancy is still in progress.\n\n * 409 DatabaseElasticPoolMaintenanceConflict - User tried to create or update a database with a specified maintenance configuration that conflicted with that of the elastic pool of the database.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 FreeDbAlreadyExists - Only one free database can exist for a subscription per region.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 SkuAssignmentInProgress - The current assignment request cannot be processed because a previous request has not completed.\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 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 * 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 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\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." + "description": "*** Error Responses: ***\n\n * 400 InvalidDatabaseCreateOrUpdateRequest - The request body for the create or update database operation is invalid.\n\n * 400 InvalidResourceId - Invalid resource identifier.\n\n * 400 InvalidSourceDatabaseId - Invalid source database identifier.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 MissingCollation - Collation is required.\n\n * 400 MissingMaxSizeBytes - MaxSizeBytes is required.\n\n * 400 MissingSkuName - Sku name is required.\n\n * 400 MissingSourceDatabaseId - Missing source database identifier.\n\n * 400 InvalidLicenseType - The specified license type is invalid.\n\n * 400 InvalidSkuName - Invalid SKU name.\n\n * 400 MismatchedSkuNameAndCapacity - Mismatch between SKU name and capacity.\n\n * 400 MismatchedSkuNameAndTier - Mismatch between SKU name and tier.\n\n * 400 MismatchedSkuNameAndFamily - Mismatch between SKU name and family.\n\n * 400 DatabaseNameDoesNotMatchSourceDatabaseId - The database name specified doesn’t match the database name in sourceDatabaseId.\n\n * 400 ElasticPoolNotSupportedForExternalBackupRestore - Elastic pool is not supported for external backup restore\n\n * 400 InvalidRecoverableDatabaseId - Invalid recoverable database identifier.\n\n * 400 InvalidRecoveryServicesRecoveryPointId - Invalid recovery services recovery point identifier.\n\n * 400 InvalidRestorableDroppedDatabaseDeletionDate - The restorable dropped database deletion date given is invalid\n\n * 400 InvalidRestorableDroppedDatabaseId - Invalid restorable dropped database identifier\n\n * 400 MissingRecoverableDatabaseId - Missing recoverable database identifier.\n\n * 400 MissingRecoveryServicesRecoveryPointId - Missing recovery services recovery point Id.\n\n * 400 MissingRestorableDroppedDatabaseId - Missing restorableDroppedDatabaseId\n\n * 400 MissingRestorePointInTime - Missing restore point in time\n\n * 400 MissingSourceDatabaseDeletionDate - Missing source database deletion date\n\n * 400 MissingStorageContainerSasToken - Missing storage container SAS token\n\n * 400 MissingStorageContainerUri - Missing storage container URI\n\n * 400 RestorableDroppedDatabaseIdGivenForRestoreWithSourceDatabaseId - Cannot specify restorableDroppedDatabaseId when sourceDatabaseId is already given in restore create mode\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 InvalidDatabaseCreateMode - Invalid request to create a database.\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 InvalidBackupStorageAccountType - User passed zrs/lrs during create/update of a database but it failed either because the customer is not whitelisted or because zrs is not available in the specified region.\n\n * 400 CannotUpdateToFreeDatabase - Updating a database to the free sku is not supported.\n\n * 400 DatabaseInvalidSkuPropertyCombination - The properties of the requested sku are inconsistent. Please check that a valid combination is specified. See https://docs.microsoft.com/en-us/rest/api/sql/capabilities/listbylocation#serviceobjectivecapability for more details.\n\n * 400 DatabaseNamedReplicaPerDatabaseLimitExceeded - User tried create a named replica that would exceed the allowed number per primary database\n\n * 400 DatabaseIsCurrentlyPinned - Microsoft has pinned your database SQL Server engine version. To ensure your database does not hit production issues, any future scale operations on your database will be blocked until it has been un-pinned. Please contact Microsoft support for assistance with scaling.\n\n * 400 RestoreTargetEditionSizeInsufficient - User attempted to restore a database to an edition that is a smaller size than the current allocated size of the source.\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 DatabaseCreationBlockedForNonActivatedCMKServer - SQL Pool creations are blocked for CMK enabled workspaces until the workspace is activated. First, enable purge protection and grant the workspace Managed Identity the required permissions (Get, Wrap Key, Unwrap Key) on the Azure Key Vault of the workspace key. Next, activate your workspace after you have granted access.\n\n * 400 PartnerServerNotCompatible - 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 TargetElasticPoolDoesNotExist - The elastic pool does not exist on a 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 ElasticPoolNameRequired - User tried to create or update database to elastic pool service objective without specifying the name of the elastic pool.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\n\n * 400 TierChangeUnsupportedDueToCDCEnabledDatabase - The database cannot update its sku because it is enabled for CDC.\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 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\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 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 InvalidReadScaleEdition - User attempted to enable read scale on a database type that does not support it.\n\n * 400 InvalidReadScaleUnits - User attempted to provide a read scale value that is not supported.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\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 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\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 RequestedDatabaseSizeRequiresShrink - User attempted to ALTER DATABASE MODIFY MAXSIZE to modify the MAXSIZE for a database to a smaller size then the current size.\n\n * 400 CurrentDatabaseSizeExceedsDbMaxSize - User attempted to reduce the max size for a database to a size smaller than the current usage.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 SourceDatabaseEditionCouldNotBeUpgraded - The source database cannot have higher edition than the target database.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 TargetDatabaseEditionCouldNotBeDowngraded - The target database cannot have lower edition than the source database.\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currently in progress.\n\n * 400 InvalidCollation - Collation is not recognized by the server.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 PartnerDBNotCompatibleForSGXEnclave - Attempt to set GeoDR link or update SLO for enclave enabled database is only supported when both database are running on DC-series hardware.\n\n * 400 UpdateNotAllowedInCurrentReplicationState - The operation is disallowed on the database in its current replication state.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 GeoReplicaLimitReached - The per-replica replication limit was reached.\n\n * 400 UnsupportedCapacity - User tried to create or update database with capacity which is not supported.\n\n * 400 ReplicationSourceAndTargetMustHaveSameName - The replication source and target databases must have the same name.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\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 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 400 RestoreToFreeEditionNotSupported - Restore and GeoRestore target cannot be free database.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 400 RestoreNotSupportedForFreeEdition - Restore and GeoRestore are not supported for free database.\n\n * 400 JobAgentDatabaseEditionUnsupported - The specified database's service level objective is not supported for use as a job agent database.\n\n * 400 InvalidDroppedDatabase - Source database dropped does not exist on server within the supported recovery period.\n\n * 400 InvalidLiveDatabase - Source database does not exist on server within the supported recovery period. If restoring a dropped database, please specify its deletion date.\n\n * 400 InvalidVldbRecoverySlo - The Hyperscale edition recovery requires both source and target databases to use Hyperscale service level objective.\n\n * 400 SourceDatabaseNotFound - The source database does not exist.\n\n * 400 InvalidVldbRestoreSlo - The Hyperscale edition Point-In-Time restore requires both source and target databases to use Hyperscale service level objective.\n\n * 400 CannotSpecifyPoolOrSlo - Specifying an elastic pool and/or changing the service level objective or edition is not supported for edition.\n\n * 400 InvalidPublicMaintenanceConfiguration - User tried to specify public maintenance configuration which cannot be converted to internal id (malformed or wrong region).\n\n * 400 ChangeUnsupportedOnEntity - User attempted an unsupported create/update/delete operation on a given entity.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 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 * 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 FreeDbAlreadyExists - Only one free database can exist for a subscription per region.\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 ConflictRequestToUpdateBackupRedundancy - A conflict request to change backup storage redundancy is still in progress.\n\n * 409 SkuAssignmentInProgress - The current assignment request cannot be processed because a previous request has not completed.\n\n * 409 DatabaseElasticPoolMaintenanceConflict - User tried to create or update a database with a specified maintenance configuration that conflicted with that of the elastic pool of the database.\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 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 ServerDisabled - Server is disabled.\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 TargetElasticPoolBeingUpdated - The update of elastic pool cannot be started because there is copy operation in progress for one of the databases in this elastic pool\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 DatabaseCopyLimitPerReplicaReached - User reached the limit of concurrent database copies.\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 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." }, "202": { "description": "Creating or updating the database is in progress." @@ -213,7 +213,7 @@ "description": "Successfully deleted the database." }, "default": { - "description": "*** Error Responses: ***\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 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 * 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 ServerDisabled - Server is disabled.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources." + "description": "*** Error Responses: ***\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 * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\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 * 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 ServerDisabled - Server is disabled.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources." }, "202": { "description": "Deleting the database is in progress." @@ -269,7 +269,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidDatabaseCreateOrUpdateRequest - The request body for the create or update database operation is invalid.\n\n * 400 InvalidResourceId - Invalid resource identifier.\n\n * 400 InvalidSourceDatabaseId - Invalid source database identifier.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 MissingCollation - Collation is required.\n\n * 400 MissingMaxSizeBytes - MaxSizeBytes is required.\n\n * 400 MissingSkuName - Sku name is required.\n\n * 400 MissingSourceDatabaseId - Missing source database identifier.\n\n * 400 InvalidLicenseType - The specified license type is invalid.\n\n * 400 InvalidSkuName - Invalid SKU name.\n\n * 400 MismatchedSkuNameAndCapacity - Mismatch between SKU name and capacity.\n\n * 400 MismatchedSkuNameAndTier - Mismatch between SKU name and tier.\n\n * 400 MismatchedSkuNameAndFamily - Mismatch between SKU name and family.\n\n * 400 DatabaseNameDoesNotMatchSourceDatabaseId - The database name specified doesn’t match the database name in sourceDatabaseId.\n\n * 400 ElasticPoolNotSupportedForExternalBackupRestore - Elastic pool is not supported for external backup restore\n\n * 400 InvalidRecoverableDatabaseId - Invalid recoverable database identifier.\n\n * 400 InvalidRecoveryServicesRecoveryPointId - Invalid recovery services recovery point identifier.\n\n * 400 InvalidRestorableDroppedDatabaseDeletionDate - The restorable dropped database deletion date given is invalid\n\n * 400 InvalidRestorableDroppedDatabaseId - Invalid restorable dropped database identifier\n\n * 400 MissingRecoverableDatabaseId - Missing recoverable database identifier.\n\n * 400 MissingRecoveryServicesRecoveryPointId - Missing recovery services recovery point Id.\n\n * 400 MissingRestorableDroppedDatabaseId - Missing restorableDroppedDatabaseId\n\n * 400 MissingRestorePointInTime - Missing restore point in time\n\n * 400 MissingSourceDatabaseDeletionDate - Missing source database deletion date\n\n * 400 MissingStorageContainerSasToken - Missing storage container SAS token\n\n * 400 MissingStorageContainerUri - Missing storage container URI\n\n * 400 RestorableDroppedDatabaseIdGivenForRestoreWithSourceDatabaseId - Cannot specify restorableDroppedDatabaseId when sourceDatabaseId is already given in restore create mode\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\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 ServerNotFound - The requested server was not found.\n\n * 400 SourceDatabaseEditionCouldNotBeUpgraded - The source database cannot have higher edition than the target database.\n\n * 400 TargetDatabaseEditionCouldNotBeDowngraded - The target database cannot have lower edition than the source database.\n\n * 400 PartnerDBNotCompatibleForSGXEnclave - Attempt to set GeoDR link or update SLO for enclave enabled database is only supported when both database are running on DC-series hardware.\n\n * 400 InvalidPublicMaintenanceConfiguration - User tried to specify public maintenance configuration which cannot be converted to internal id (malformed or wrong region).\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currently in progress.\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 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 InvalidReadScaleEdition - User attempted to enable read scale on a database type that does not support it.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 InvalidReadScaleUnits - User attempted to provide a read scale value that is not supported.\n\n * 400 UnsupportedCapacity - User tried to create or update database with capacity which is not supported.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 RequestedDatabaseSizeRequiresShrink - User attempted to ALTER DATABASE MODIFY MAXSIZE to modify the MAXSIZE for a database to a smaller size then the current size.\n\n * 400 RestoreToFreeEditionNotSupported - Restore and GeoRestore target cannot be free database.\n\n * 400 CurrentDatabaseSizeExceedsDbMaxSize - User attempted to reduce the max size for a database to a size smaller than the current usage.\n\n * 400 RestoreNotSupportedForFreeEdition - Restore and GeoRestore are not supported for free database.\n\n * 400 InvalidDroppedDatabase - Source database dropped does not exist on server within the supported recovery period.\n\n * 400 InvalidLiveDatabase - Source database does not exist on server within the supported recovery period. If restoring a dropped database, please specify its deletion date.\n\n * 400 InvalidVldbRecoverySlo - The Hyperscale edition recovery requires both source and target databases to use Hyperscale service level objective.\n\n * 400 InvalidVldbRestoreSlo - The Hyperscale edition Point-In-Time restore requires both source and target databases to use Hyperscale service level objective.\n\n * 400 CannotSpecifyPoolOrSlo - Specifying an elastic pool and/or changing the service level objective or edition is not supported for edition.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 InvalidMaxSizeTierCombination - The specified tier does not support the specified database max size.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\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 TierChangeUnsupportedDueToMemoryOptimizedObject - The database cannot update its sku because it has memory-optimized objects.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 400 InvalidCollation - Collation is not recognized by the server.\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 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 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 InvalidBackupStorageAccountType - User passed zrs/lrs during create/update of a database but it failed either because the customer is not whitelisted or because zrs is not available in the specified region.\n\n * 400 TierChangeUnsupportedDueToCDCEnabledDatabase - The database cannot update its sku because it is enabled for CDC.\n\n * 400 DatabaseInvalidSkuPropertyCombination - The properties of the requested sku are inconsistent. Please check that a valid combination is specified. See https://docs.microsoft.com/en-us/rest/api/sql/capabilities/listbylocation#serviceobjectivecapability for more details.\n\n * 400 DatabaseNamedReplicaPerDatabaseLimitExceeded - User tried create a named replica that would exceed the allowed number per primary database\n\n * 400 RestoreTargetEditionSizeInsufficient - User attempted to restore a database to an edition that is a smaller size than the current allocated size of the source.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\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 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 CannotUpdateToFreeDatabase - Updating a database to the free sku is not supported.\n\n * 400 InvalidSku - The user specified an invalid sku.\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 InvalidTierSkuCombination - The specified tier does not support the specified sku.\n\n * 400 InvalidDatabaseCreateMode - Invalid request to create a database.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 UnsupportedServiceName - The specified name is an invalid name because it contains one or more unsupported unicode characters.\n\n * 400 CannotMoveOrDropSyncMetadataDatabase - Cannot drop database used as sync metadata database.\n\n * 400 OfferDisabledOnSubscription - Subscription offer type is restricted from provisioning the requested resource.\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 ElasticPoolOverStorageUsage - Attempting to write data to a database when the storage limit of the elastic pool has been reached.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 PartnerServerNotCompatible - 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 DatabaseCreationBlockedForNonActivatedCMKServer - SQL Pool creations are blocked for CMK enabled workspaces until the workspace is activated. First, enable purge protection and grant the workspace Managed Identity the required permissions (Get, Wrap Key, Unwrap Key) on the Azure Key Vault of the workspace key. Next, activate your workspace after you have granted access.\n\n * 400 TargetElasticPoolDoesNotExist - The elastic pool does not exist on a 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 ElasticPoolNameRequired - User tried to create or update database to elastic pool service objective without specifying the name of the elastic pool.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\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 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\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 SubscriptionDoesNotHaveServer - The requested server was not found\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 SimultaneousSkuChangeNotAllowed - Service objective change operations cannot run on both databases of a replication relationship at the same time.\n\n * 409 CurrentMemoryUsageExceedsSkuQuota - User attempted an sku update operation that cannot be completed due to the higher resource consumption.\n\n * 409 TargetElasticPoolBeingUpdated - The update of elastic pool cannot be started because there is copy operation in progress for one of the databases in this elastic pool\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 DatabaseCopyLimitPerReplicaReached - User reached the limit of concurrent database copies.\n\n * 409 ServerDisabled - Server is disabled.\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 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 ConflictRequestToUpdateBackupRedundancy - A conflict request to change backup storage redundancy is still in progress.\n\n * 409 DatabaseElasticPoolMaintenanceConflict - User tried to create or update a database with a specified maintenance configuration that conflicted with that of the elastic pool of the database.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 FreeDbAlreadyExists - Only one free database can exist for a subscription per region.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 SkuAssignmentInProgress - The current assignment request cannot be processed because a previous request has not completed.\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 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 * 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 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\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." + "description": "*** Error Responses: ***\n\n * 400 InvalidDatabaseCreateOrUpdateRequest - The request body for the create or update database operation is invalid.\n\n * 400 InvalidResourceId - Invalid resource identifier.\n\n * 400 InvalidSourceDatabaseId - Invalid source database identifier.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 MissingCollation - Collation is required.\n\n * 400 MissingMaxSizeBytes - MaxSizeBytes is required.\n\n * 400 MissingSkuName - Sku name is required.\n\n * 400 MissingSourceDatabaseId - Missing source database identifier.\n\n * 400 InvalidLicenseType - The specified license type is invalid.\n\n * 400 InvalidSkuName - Invalid SKU name.\n\n * 400 MismatchedSkuNameAndCapacity - Mismatch between SKU name and capacity.\n\n * 400 MismatchedSkuNameAndTier - Mismatch between SKU name and tier.\n\n * 400 MismatchedSkuNameAndFamily - Mismatch between SKU name and family.\n\n * 400 DatabaseNameDoesNotMatchSourceDatabaseId - The database name specified doesn’t match the database name in sourceDatabaseId.\n\n * 400 ElasticPoolNotSupportedForExternalBackupRestore - Elastic pool is not supported for external backup restore\n\n * 400 InvalidRecoverableDatabaseId - Invalid recoverable database identifier.\n\n * 400 InvalidRecoveryServicesRecoveryPointId - Invalid recovery services recovery point identifier.\n\n * 400 InvalidRestorableDroppedDatabaseDeletionDate - The restorable dropped database deletion date given is invalid\n\n * 400 InvalidRestorableDroppedDatabaseId - Invalid restorable dropped database identifier\n\n * 400 MissingRecoverableDatabaseId - Missing recoverable database identifier.\n\n * 400 MissingRecoveryServicesRecoveryPointId - Missing recovery services recovery point Id.\n\n * 400 MissingRestorableDroppedDatabaseId - Missing restorableDroppedDatabaseId\n\n * 400 MissingRestorePointInTime - Missing restore point in time\n\n * 400 MissingSourceDatabaseDeletionDate - Missing source database deletion date\n\n * 400 MissingStorageContainerSasToken - Missing storage container SAS token\n\n * 400 MissingStorageContainerUri - Missing storage container URI\n\n * 400 RestorableDroppedDatabaseIdGivenForRestoreWithSourceDatabaseId - Cannot specify restorableDroppedDatabaseId when sourceDatabaseId is already given in restore create mode\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 InvalidDatabaseCreateMode - Invalid request to create a database.\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 InvalidBackupStorageAccountType - User passed zrs/lrs during create/update of a database but it failed either because the customer is not whitelisted or because zrs is not available in the specified region.\n\n * 400 CannotUpdateToFreeDatabase - Updating a database to the free sku is not supported.\n\n * 400 DatabaseInvalidSkuPropertyCombination - The properties of the requested sku are inconsistent. Please check that a valid combination is specified. See https://docs.microsoft.com/en-us/rest/api/sql/capabilities/listbylocation#serviceobjectivecapability for more details.\n\n * 400 DatabaseNamedReplicaPerDatabaseLimitExceeded - User tried create a named replica that would exceed the allowed number per primary database\n\n * 400 DatabaseIsCurrentlyPinned - Microsoft has pinned your database SQL Server engine version. To ensure your database does not hit production issues, any future scale operations on your database will be blocked until it has been un-pinned. Please contact Microsoft support for assistance with scaling.\n\n * 400 RestoreTargetEditionSizeInsufficient - User attempted to restore a database to an edition that is a smaller size than the current allocated size of the source.\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 DatabaseCreationBlockedForNonActivatedCMKServer - SQL Pool creations are blocked for CMK enabled workspaces until the workspace is activated. First, enable purge protection and grant the workspace Managed Identity the required permissions (Get, Wrap Key, Unwrap Key) on the Azure Key Vault of the workspace key. Next, activate your workspace after you have granted access.\n\n * 400 PartnerServerNotCompatible - 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 TargetElasticPoolDoesNotExist - The elastic pool does not exist on a 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 ElasticPoolNameRequired - User tried to create or update database to elastic pool service objective without specifying the name of the elastic pool.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\n\n * 400 TierChangeUnsupportedDueToCDCEnabledDatabase - The database cannot update its sku because it is enabled for CDC.\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 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\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 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 InvalidReadScaleEdition - User attempted to enable read scale on a database type that does not support it.\n\n * 400 InvalidReadScaleUnits - User attempted to provide a read scale value that is not supported.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\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 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\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 RequestedDatabaseSizeRequiresShrink - User attempted to ALTER DATABASE MODIFY MAXSIZE to modify the MAXSIZE for a database to a smaller size then the current size.\n\n * 400 CurrentDatabaseSizeExceedsDbMaxSize - User attempted to reduce the max size for a database to a size smaller than the current usage.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 SourceDatabaseEditionCouldNotBeUpgraded - The source database cannot have higher edition than the target database.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 TargetDatabaseEditionCouldNotBeDowngraded - The target database cannot have lower edition than the source database.\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currently in progress.\n\n * 400 InvalidCollation - Collation is not recognized by the server.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 PartnerDBNotCompatibleForSGXEnclave - Attempt to set GeoDR link or update SLO for enclave enabled database is only supported when both database are running on DC-series hardware.\n\n * 400 UpdateNotAllowedInCurrentReplicationState - The operation is disallowed on the database in its current replication state.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 GeoReplicaLimitReached - The per-replica replication limit was reached.\n\n * 400 UnsupportedCapacity - User tried to create or update database with capacity which is not supported.\n\n * 400 ReplicationSourceAndTargetMustHaveSameName - The replication source and target databases must have the same name.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\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 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 400 RestoreToFreeEditionNotSupported - Restore and GeoRestore target cannot be free database.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 400 RestoreNotSupportedForFreeEdition - Restore and GeoRestore are not supported for free database.\n\n * 400 JobAgentDatabaseEditionUnsupported - The specified database's service level objective is not supported for use as a job agent database.\n\n * 400 InvalidDroppedDatabase - Source database dropped does not exist on server within the supported recovery period.\n\n * 400 InvalidLiveDatabase - Source database does not exist on server within the supported recovery period. If restoring a dropped database, please specify its deletion date.\n\n * 400 InvalidVldbRecoverySlo - The Hyperscale edition recovery requires both source and target databases to use Hyperscale service level objective.\n\n * 400 SourceDatabaseNotFound - The source database does not exist.\n\n * 400 InvalidVldbRestoreSlo - The Hyperscale edition Point-In-Time restore requires both source and target databases to use Hyperscale service level objective.\n\n * 400 CannotSpecifyPoolOrSlo - Specifying an elastic pool and/or changing the service level objective or edition is not supported for edition.\n\n * 400 InvalidPublicMaintenanceConfiguration - User tried to specify public maintenance configuration which cannot be converted to internal id (malformed or wrong region).\n\n * 400 ChangeUnsupportedOnEntity - User attempted an unsupported create/update/delete operation on a given entity.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 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 * 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 FreeDbAlreadyExists - Only one free database can exist for a subscription per region.\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 ConflictRequestToUpdateBackupRedundancy - A conflict request to change backup storage redundancy is still in progress.\n\n * 409 SkuAssignmentInProgress - The current assignment request cannot be processed because a previous request has not completed.\n\n * 409 DatabaseElasticPoolMaintenanceConflict - User tried to create or update a database with a specified maintenance configuration that conflicted with that of the elastic pool of the database.\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 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 ServerDisabled - Server is disabled.\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 TargetElasticPoolBeingUpdated - The update of elastic pool cannot be started because there is copy operation in progress for one of the databases in this elastic pool\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 DatabaseCopyLimitPerReplicaReached - User reached the limit of concurrent database copies.\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 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." }, "202": { "description": "Updating the database is in progress." @@ -325,7 +325,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 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 * 429 SubscriptionTooManyRequests - 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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\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 * 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 * 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": { @@ -374,7 +374,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 CannotDeactivateWhenDeactivatingInProgress - Deactivation workflow failed because there is a deactivate workflow already running.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 500 ActivateOrDeactivateWorkflowThrottling - Activation or deactivation workflow failed because there are too many concurrent workflows" + "description": "*** Error Responses: ***\n\n * 400 CannotDeactivateWhenDeactivatingInProgress - Deactivation workflow failed because there is a deactivate workflow already running.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 500 ActivateOrDeactivateWorkflowThrottling - Activation or deactivation workflow failed because there are too many concurrent workflows" }, "202": { "description": "Pausing the database is in progress." @@ -424,7 +424,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 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 500 ActivateOrDeactivateWorkflowThrottling - Activation or deactivation workflow failed because there are too many concurrent workflows" + "description": "*** Error Responses: ***\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 500 ActivateOrDeactivateWorkflowThrottling - Activation or deactivation workflow failed because there are too many concurrent workflows" }, "202": { "description": "Resuming the database is in progress." @@ -486,7 +486,7 @@ "description": "Successfully completed database failover." }, "default": { - "description": "*** Error Responses: ***\n\n * 400 DatabaseFailoverNotSupportedOnSKU - This type of customer initiated failover is not supported on the given SKU.\n\n * 400 ManagementServiceFeatureDisabled - User attempted to use a feature which is disabled.\n\n * 400 DatabaseFailoverThrottled - There was a recent failover on the database or pool if database belongs in an elastic pool.\n\n * 409 ManagementServiceDatabaseBusy - Database '{0}' is busy with another operation. Please try your operation later.\n\n * 409 DatabaseNotInStateToFailover - The database is currently in a state such that failover cannot be issued." + "description": "*** Error Responses: ***\n\n * 400 ManagementServiceFeatureDisabled - User attempted to use a feature which is disabled.\n\n * 400 DatabaseFailoverThrottled - There was a recent failover on the database or pool if database belongs in an elastic pool.\n\n * 400 DatabaseFailoverNotSupportedOnSKU - This type of customer initiated failover is not supported on the given SKU.\n\n * 409 ManagementServiceDatabaseBusy - Database '{0}' is busy with another operation. Please try your operation later.\n\n * 409 DatabaseNotInStateToFailover - The database is currently in a state such that failover cannot be issued." }, "202": { "description": "Database failover is in progress." @@ -529,7 +529,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found" + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." } }, "x-ms-pageable": { @@ -575,7 +575,7 @@ "description": "Successfully upgraded the data warehouse." }, "default": { - "description": "*** Error Responses: ***\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\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 ServerNotFound - The requested server was not found.\n\n * 400 SourceDatabaseEditionCouldNotBeUpgraded - The source database cannot have higher edition than the target database.\n\n * 400 TargetDatabaseEditionCouldNotBeDowngraded - The target database cannot have lower edition than the source database.\n\n * 400 PartnerDBNotCompatibleForSGXEnclave - Attempt to set GeoDR link or update SLO for enclave enabled database is only supported when both database are running on DC-series hardware.\n\n * 400 InvalidPublicMaintenanceConfiguration - User tried to specify public maintenance configuration which cannot be converted to internal id (malformed or wrong region).\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currently in progress.\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 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 InvalidReadScaleEdition - User attempted to enable read scale on a database type that does not support it.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 InvalidReadScaleUnits - User attempted to provide a read scale value that is not supported.\n\n * 400 UnsupportedCapacity - User tried to create or update database with capacity which is not supported.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 RequestedDatabaseSizeRequiresShrink - User attempted to ALTER DATABASE MODIFY MAXSIZE to modify the MAXSIZE for a database to a smaller size then the current size.\n\n * 400 RestoreToFreeEditionNotSupported - Restore and GeoRestore target cannot be free database.\n\n * 400 CurrentDatabaseSizeExceedsDbMaxSize - User attempted to reduce the max size for a database to a size smaller than the current usage.\n\n * 400 RestoreNotSupportedForFreeEdition - Restore and GeoRestore are not supported for free database.\n\n * 400 InvalidDroppedDatabase - Source database dropped does not exist on server within the supported recovery period.\n\n * 400 InvalidLiveDatabase - Source database does not exist on server within the supported recovery period. If restoring a dropped database, please specify its deletion date.\n\n * 400 InvalidVldbRecoverySlo - The Hyperscale edition recovery requires both source and target databases to use Hyperscale service level objective.\n\n * 400 InvalidVldbRestoreSlo - The Hyperscale edition Point-In-Time restore requires both source and target databases to use Hyperscale service level objective.\n\n * 400 CannotSpecifyPoolOrSlo - Specifying an elastic pool and/or changing the service level objective or edition is not supported for edition.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 InvalidMaxSizeTierCombination - The specified tier does not support the specified database max size.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\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 TierChangeUnsupportedDueToMemoryOptimizedObject - The database cannot update its sku because it has memory-optimized objects.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 400 InvalidCollation - Collation is not recognized by the server.\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 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 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 InvalidBackupStorageAccountType - User passed zrs/lrs during create/update of a database but it failed either because the customer is not whitelisted or because zrs is not available in the specified region.\n\n * 400 TierChangeUnsupportedDueToCDCEnabledDatabase - The database cannot update its sku because it is enabled for CDC.\n\n * 400 DatabaseInvalidSkuPropertyCombination - The properties of the requested sku are inconsistent. Please check that a valid combination is specified. See https://docs.microsoft.com/en-us/rest/api/sql/capabilities/listbylocation#serviceobjectivecapability for more details.\n\n * 400 DatabaseNamedReplicaPerDatabaseLimitExceeded - User tried create a named replica that would exceed the allowed number per primary database\n\n * 400 RestoreTargetEditionSizeInsufficient - User attempted to restore a database to an edition that is a smaller size than the current allocated size of the source.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\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 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 CannotUpdateToFreeDatabase - Updating a database to the free sku is not supported.\n\n * 400 InvalidSku - The user specified an invalid sku.\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 InvalidTierSkuCombination - The specified tier does not support the specified sku.\n\n * 400 InvalidDatabaseCreateMode - Invalid request to create a database.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 UnsupportedServiceName - The specified name is an invalid name because it contains one or more unsupported unicode characters.\n\n * 400 CannotMoveOrDropSyncMetadataDatabase - Cannot drop database used as sync metadata database.\n\n * 400 OfferDisabledOnSubscription - Subscription offer type is restricted from provisioning the requested resource.\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 ElasticPoolOverStorageUsage - Attempting to write data to a database when the storage limit of the elastic pool has been reached.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 PartnerServerNotCompatible - 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 DatabaseCreationBlockedForNonActivatedCMKServer - SQL Pool creations are blocked for CMK enabled workspaces until the workspace is activated. First, enable purge protection and grant the workspace Managed Identity the required permissions (Get, Wrap Key, Unwrap Key) on the Azure Key Vault of the workspace key. Next, activate your workspace after you have granted access.\n\n * 400 TargetElasticPoolDoesNotExist - The elastic pool does not exist on a 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 ElasticPoolNameRequired - User tried to create or update database to elastic pool service objective without specifying the name of the elastic pool.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\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 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 400 UpgradeOnlyAllowedOnDataWarehouseInstances - User attempted to upgrade non-datawarehouse instance.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\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 SimultaneousSkuChangeNotAllowed - Service objective change operations cannot run on both databases of a replication relationship at the same time.\n\n * 409 CurrentMemoryUsageExceedsSkuQuota - User attempted an sku update operation that cannot be completed due to the higher resource consumption.\n\n * 409 TargetElasticPoolBeingUpdated - The update of elastic pool cannot be started because there is copy operation in progress for one of the databases in this elastic pool\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 DatabaseCopyLimitPerReplicaReached - User reached the limit of concurrent database copies.\n\n * 409 ServerDisabled - Server is disabled.\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 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 ConflictRequestToUpdateBackupRedundancy - A conflict request to change backup storage redundancy is still in progress.\n\n * 409 DatabaseElasticPoolMaintenanceConflict - User tried to create or update a database with a specified maintenance configuration that conflicted with that of the elastic pool of the database.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 FreeDbAlreadyExists - Only one free database can exist for a subscription per region.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 SkuAssignmentInProgress - The current assignment request cannot be processed because a previous request has not completed.\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 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 * 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 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\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." + "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 InvalidDatabaseCreateMode - Invalid request to create a database.\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 InvalidBackupStorageAccountType - User passed zrs/lrs during create/update of a database but it failed either because the customer is not whitelisted or because zrs is not available in the specified region.\n\n * 400 CannotUpdateToFreeDatabase - Updating a database to the free sku is not supported.\n\n * 400 DatabaseInvalidSkuPropertyCombination - The properties of the requested sku are inconsistent. Please check that a valid combination is specified. See https://docs.microsoft.com/en-us/rest/api/sql/capabilities/listbylocation#serviceobjectivecapability for more details.\n\n * 400 DatabaseNamedReplicaPerDatabaseLimitExceeded - User tried create a named replica that would exceed the allowed number per primary database\n\n * 400 DatabaseIsCurrentlyPinned - Microsoft has pinned your database SQL Server engine version. To ensure your database does not hit production issues, any future scale operations on your database will be blocked until it has been un-pinned. Please contact Microsoft support for assistance with scaling.\n\n * 400 RestoreTargetEditionSizeInsufficient - User attempted to restore a database to an edition that is a smaller size than the current allocated size of the source.\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 DatabaseCreationBlockedForNonActivatedCMKServer - SQL Pool creations are blocked for CMK enabled workspaces until the workspace is activated. First, enable purge protection and grant the workspace Managed Identity the required permissions (Get, Wrap Key, Unwrap Key) on the Azure Key Vault of the workspace key. Next, activate your workspace after you have granted access.\n\n * 400 PartnerServerNotCompatible - 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 TargetElasticPoolDoesNotExist - The elastic pool does not exist on a 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 ElasticPoolNameRequired - User tried to create or update database to elastic pool service objective without specifying the name of the elastic pool.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\n\n * 400 TierChangeUnsupportedDueToCDCEnabledDatabase - The database cannot update its sku because it is enabled for CDC.\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 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\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 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 InvalidReadScaleEdition - User attempted to enable read scale on a database type that does not support it.\n\n * 400 InvalidReadScaleUnits - User attempted to provide a read scale value that is not supported.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\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 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\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 RequestedDatabaseSizeRequiresShrink - User attempted to ALTER DATABASE MODIFY MAXSIZE to modify the MAXSIZE for a database to a smaller size then the current size.\n\n * 400 CurrentDatabaseSizeExceedsDbMaxSize - User attempted to reduce the max size for a database to a size smaller than the current usage.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 SourceDatabaseEditionCouldNotBeUpgraded - The source database cannot have higher edition than the target database.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 TargetDatabaseEditionCouldNotBeDowngraded - The target database cannot have lower edition than the source database.\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currently in progress.\n\n * 400 InvalidCollation - Collation is not recognized by the server.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 PartnerDBNotCompatibleForSGXEnclave - Attempt to set GeoDR link or update SLO for enclave enabled database is only supported when both database are running on DC-series hardware.\n\n * 400 UpdateNotAllowedInCurrentReplicationState - The operation is disallowed on the database in its current replication state.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 GeoReplicaLimitReached - The per-replica replication limit was reached.\n\n * 400 UnsupportedCapacity - User tried to create or update database with capacity which is not supported.\n\n * 400 ReplicationSourceAndTargetMustHaveSameName - The replication source and target databases must have the same name.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\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 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 400 RestoreToFreeEditionNotSupported - Restore and GeoRestore target cannot be free database.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 400 RestoreNotSupportedForFreeEdition - Restore and GeoRestore are not supported for free database.\n\n * 400 JobAgentDatabaseEditionUnsupported - The specified database's service level objective is not supported for use as a job agent database.\n\n * 400 InvalidDroppedDatabase - Source database dropped does not exist on server within the supported recovery period.\n\n * 400 InvalidLiveDatabase - Source database does not exist on server within the supported recovery period. If restoring a dropped database, please specify its deletion date.\n\n * 400 InvalidVldbRecoverySlo - The Hyperscale edition recovery requires both source and target databases to use Hyperscale service level objective.\n\n * 400 SourceDatabaseNotFound - The source database does not exist.\n\n * 400 InvalidVldbRestoreSlo - The Hyperscale edition Point-In-Time restore requires both source and target databases to use Hyperscale service level objective.\n\n * 400 CannotSpecifyPoolOrSlo - Specifying an elastic pool and/or changing the service level objective or edition is not supported for edition.\n\n * 400 InvalidPublicMaintenanceConfiguration - User tried to specify public maintenance configuration which cannot be converted to internal id (malformed or wrong region).\n\n * 400 ChangeUnsupportedOnEntity - User attempted an unsupported create/update/delete operation on a given entity.\n\n * 400 UpgradeOnlyAllowedOnDataWarehouseInstances - User attempted to upgrade non-datawarehouse instance.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\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 * 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 FreeDbAlreadyExists - Only one free database can exist for a subscription per region.\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 ConflictRequestToUpdateBackupRedundancy - A conflict request to change backup storage redundancy is still in progress.\n\n * 409 SkuAssignmentInProgress - The current assignment request cannot be processed because a previous request has not completed.\n\n * 409 DatabaseElasticPoolMaintenanceConflict - User tried to create or update a database with a specified maintenance configuration that conflicted with that of the elastic pool of the database.\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 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 ServerDisabled - Server is disabled.\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 TargetElasticPoolBeingUpdated - The update of elastic pool cannot be started because there is copy operation in progress for one of the databases in this elastic pool\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 DatabaseCopyLimitPerReplicaReached - User reached the limit of concurrent database copies.\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 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." }, "202": { "description": "Upgrading the data warehouse is in progress." @@ -631,7 +631,7 @@ "description": "Successfully renamed the database." }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidResourceMoveRequest - The resource move request is invalid.\n\n * 400 InvalidMoveTargetResourceId - The target resource identifier in move request is invalid.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 UnsupportedServiceName - The specified name is an invalid name because it contains one or more unsupported unicode characters.\n\n * 400 DatabaseNameInUse - Database already exists. Choose a different database name.\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 * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 409 InvalidOperationForDatabaseInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship." + "description": "*** Error Responses: ***\n\n * 400 InvalidResourceMoveRequest - The resource move request is invalid.\n\n * 400 InvalidMoveTargetResourceId - The target resource identifier in move request is invalid.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 DatabaseNameInUse - Database already exists. Choose a different database name.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 CannotMoveOrDropSyncMetadataDatabase - Cannot drop database used as sync metadata database.\n\n * 400 UnsupportedServiceName - The specified name is an invalid name because it contains one or more unsupported unicode characters.\n\n * 400 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 409 InvalidOperationForDatabaseInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship." } }, "x-ms-examples": { @@ -682,7 +682,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 MissingImportExportInputParameters - Missing ImportExport input parameters.\n\n * 400 PolybaseImportAuthenticationTypeNotSupported - Authentication type parameter is not support for PolybaseImport operation.\n\n * 400 DatabaseExtensionsMissingOperationMode - Missing operationMode parameter for database extension.\n\n * 400 ImportExportJobError - The ImportExport operation has failed.\n\n * 400 InvalidOperationType - Provide a valid operation type.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - Invalid request specifying a non-existent resource.\n\n * 404 ImportExportOperationIdNotFound - The operation Id for import or export cannot be found.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 409 ImportExportOperationInProgress - There is an import or export operation in progress on the database." + "description": "*** Error Responses: ***\n\n * 400 MissingImportExportInputParameters - Missing ImportExport input parameters.\n\n * 400 PolybaseImportAuthenticationTypeNotSupported - Authentication type parameter is not support for PolybaseImport operation.\n\n * 400 DatabaseExtensionsInvalidOperationMode - Invalid operationMode parameter for database extension.\n\n * 400 DatabaseExtensionsInvalidStorageKeyType - The storage key type must by 'StorageAccessKey'.\n\n * 400 DatabaseExtensionsMissingStorageUri - Storage URI cannot be empty.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 InvalidOperationType - Provide a valid operation type.\n\n * 400 ImportExportJobError - The ImportExport operation has failed.\n\n * 400 BlockedByOutboundFirewall - The outbound firewall rules blocked the request.\n\n * 404 ResourceNotFound - Invalid request specifying a non-existent resource.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ImportExportOperationIdNotFound - The operation Id for import or export cannot be found.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 409 ImportExportOperationInProgress - There is an import or export operation in progress on the database." }, "202": { "description": "Importing the database is in progress." @@ -740,7 +740,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 MissingImportExportInputParameters - Missing ImportExport input parameters.\n\n * 400 PolybaseImportAuthenticationTypeNotSupported - Authentication type parameter is not support for PolybaseImport operation.\n\n * 400 DatabaseExtensionsMissingOperationMode - Missing operationMode parameter for database extension.\n\n * 400 ImportExportJobError - The ImportExport operation has failed.\n\n * 400 InvalidOperationType - Provide a valid operation type.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - Invalid request specifying a non-existent resource.\n\n * 404 ImportExportOperationIdNotFound - The operation Id for import or export cannot be found.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 409 ImportExportOperationInProgress - There is an import or export operation in progress on the database." + "description": "*** Error Responses: ***\n\n * 400 MissingImportExportInputParameters - Missing ImportExport input parameters.\n\n * 400 PolybaseImportAuthenticationTypeNotSupported - Authentication type parameter is not support for PolybaseImport operation.\n\n * 400 DatabaseExtensionsInvalidOperationMode - Invalid operationMode parameter for database extension.\n\n * 400 DatabaseExtensionsInvalidStorageKeyType - The storage key type must by 'StorageAccessKey'.\n\n * 400 DatabaseExtensionsMissingStorageUri - Storage URI cannot be empty.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 InvalidOperationType - Provide a valid operation type.\n\n * 400 ImportExportJobError - The ImportExport operation has failed.\n\n * 400 BlockedByOutboundFirewall - The outbound firewall rules blocked the request.\n\n * 404 ResourceNotFound - Invalid request specifying a non-existent resource.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ImportExportOperationIdNotFound - The operation Id for import or export cannot be found.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 409 ImportExportOperationInProgress - There is an import or export operation in progress on the database." }, "202": { "description": "Exporting the database is in progress." diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/Databases_legacy.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/Databases_legacy.json index 0ac9cbc3f50b..11455f8c4dd4 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/Databases_legacy.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/Databases_legacy.json @@ -45,7 +45,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found" + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." } }, "x-ms-pageable": { @@ -90,7 +90,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ResourceNotFound - The requested resource was not found." + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." } }, "x-ms-examples": { @@ -139,7 +139,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidDatabaseCreateOrUpdateRequest - The request body for the create or update database operation is invalid.\n\n * 400 InvalidResourceId - Invalid resource identifier.\n\n * 400 InvalidSourceDatabaseId - Invalid source database identifier.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 MissingCollation - Collation is required.\n\n * 400 MissingMaxSizeBytes - MaxSizeBytes is required.\n\n * 400 MissingSkuName - Sku name is required.\n\n * 400 MissingSourceDatabaseId - Missing source database identifier.\n\n * 400 InvalidLicenseType - The specified license type is invalid.\n\n * 400 InvalidSkuName - Invalid SKU name.\n\n * 400 MismatchedSkuNameAndCapacity - Mismatch between SKU name and capacity.\n\n * 400 MismatchedSkuNameAndTier - Mismatch between SKU name and tier.\n\n * 400 MismatchedSkuNameAndFamily - Mismatch between SKU name and family.\n\n * 400 DatabaseNameDoesNotMatchSourceDatabaseId - The database name specified doesn’t match the database name in sourceDatabaseId.\n\n * 400 ElasticPoolNotSupportedForExternalBackupRestore - Elastic pool is not supported for external backup restore\n\n * 400 InvalidRecoverableDatabaseId - Invalid recoverable database identifier.\n\n * 400 InvalidRecoveryServicesRecoveryPointId - Invalid recovery services recovery point identifier.\n\n * 400 InvalidRestorableDroppedDatabaseDeletionDate - The restorable dropped database deletion date given is invalid\n\n * 400 InvalidRestorableDroppedDatabaseId - Invalid restorable dropped database identifier\n\n * 400 MissingRecoverableDatabaseId - Missing recoverable database identifier.\n\n * 400 MissingRecoveryServicesRecoveryPointId - Missing recovery services recovery point Id.\n\n * 400 MissingRestorableDroppedDatabaseId - Missing restorableDroppedDatabaseId\n\n * 400 MissingRestorePointInTime - Missing restore point in time\n\n * 400 MissingSourceDatabaseDeletionDate - Missing source database deletion date\n\n * 400 MissingStorageContainerSasToken - Missing storage container SAS token\n\n * 400 MissingStorageContainerUri - Missing storage container URI\n\n * 400 RestorableDroppedDatabaseIdGivenForRestoreWithSourceDatabaseId - Cannot specify restorableDroppedDatabaseId when sourceDatabaseId is already given in restore create mode\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\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 ServerNotFound - The requested server was not found.\n\n * 400 SourceDatabaseEditionCouldNotBeUpgraded - The source database cannot have higher edition than the target database.\n\n * 400 TargetDatabaseEditionCouldNotBeDowngraded - The target database cannot have lower edition than the source database.\n\n * 400 PartnerDBNotCompatibleForSGXEnclave - Attempt to set GeoDR link or update SLO for enclave enabled database is only supported when both database are running on DC-series hardware.\n\n * 400 InvalidPublicMaintenanceConfiguration - User tried to specify public maintenance configuration which cannot be converted to internal id (malformed or wrong region).\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currently in progress.\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 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 InvalidReadScaleEdition - User attempted to enable read scale on a database type that does not support it.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 InvalidReadScaleUnits - User attempted to provide a read scale value that is not supported.\n\n * 400 UnsupportedCapacity - User tried to create or update database with capacity which is not supported.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 RequestedDatabaseSizeRequiresShrink - User attempted to ALTER DATABASE MODIFY MAXSIZE to modify the MAXSIZE for a database to a smaller size then the current size.\n\n * 400 RestoreToFreeEditionNotSupported - Restore and GeoRestore target cannot be free database.\n\n * 400 CurrentDatabaseSizeExceedsDbMaxSize - User attempted to reduce the max size for a database to a size smaller than the current usage.\n\n * 400 RestoreNotSupportedForFreeEdition - Restore and GeoRestore are not supported for free database.\n\n * 400 InvalidDroppedDatabase - Source database dropped does not exist on server within the supported recovery period.\n\n * 400 InvalidLiveDatabase - Source database does not exist on server within the supported recovery period. If restoring a dropped database, please specify its deletion date.\n\n * 400 InvalidVldbRecoverySlo - The Hyperscale edition recovery requires both source and target databases to use Hyperscale service level objective.\n\n * 400 InvalidVldbRestoreSlo - The Hyperscale edition Point-In-Time restore requires both source and target databases to use Hyperscale service level objective.\n\n * 400 CannotSpecifyPoolOrSlo - Specifying an elastic pool and/or changing the service level objective or edition is not supported for edition.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 InvalidMaxSizeTierCombination - The specified tier does not support the specified database max size.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\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 TierChangeUnsupportedDueToMemoryOptimizedObject - The database cannot update its sku because it has memory-optimized objects.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 400 InvalidCollation - Collation is not recognized by the server.\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 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 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 InvalidBackupStorageAccountType - User passed zrs/lrs during create/update of a database but it failed either because the customer is not whitelisted or because zrs is not available in the specified region.\n\n * 400 TierChangeUnsupportedDueToCDCEnabledDatabase - The database cannot update its sku because it is enabled for CDC.\n\n * 400 DatabaseInvalidSkuPropertyCombination - The properties of the requested sku are inconsistent. Please check that a valid combination is specified. See https://docs.microsoft.com/en-us/rest/api/sql/capabilities/listbylocation#serviceobjectivecapability for more details.\n\n * 400 DatabaseNamedReplicaPerDatabaseLimitExceeded - User tried create a named replica that would exceed the allowed number per primary database\n\n * 400 RestoreTargetEditionSizeInsufficient - User attempted to restore a database to an edition that is a smaller size than the current allocated size of the source.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\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 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 CannotUpdateToFreeDatabase - Updating a database to the free sku is not supported.\n\n * 400 InvalidSku - The user specified an invalid sku.\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 InvalidTierSkuCombination - The specified tier does not support the specified sku.\n\n * 400 InvalidDatabaseCreateMode - Invalid request to create a database.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 UnsupportedServiceName - The specified name is an invalid name because it contains one or more unsupported unicode characters.\n\n * 400 CannotMoveOrDropSyncMetadataDatabase - Cannot drop database used as sync metadata database.\n\n * 400 OfferDisabledOnSubscription - Subscription offer type is restricted from provisioning the requested resource.\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 ElasticPoolOverStorageUsage - Attempting to write data to a database when the storage limit of the elastic pool has been reached.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 PartnerServerNotCompatible - 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 DatabaseCreationBlockedForNonActivatedCMKServer - SQL Pool creations are blocked for CMK enabled workspaces until the workspace is activated. First, enable purge protection and grant the workspace Managed Identity the required permissions (Get, Wrap Key, Unwrap Key) on the Azure Key Vault of the workspace key. Next, activate your workspace after you have granted access.\n\n * 400 TargetElasticPoolDoesNotExist - The elastic pool does not exist on a 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 ElasticPoolNameRequired - User tried to create or update database to elastic pool service objective without specifying the name of the elastic pool.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\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 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\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 SubscriptionDoesNotHaveServer - The requested server was not found\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 SimultaneousSkuChangeNotAllowed - Service objective change operations cannot run on both databases of a replication relationship at the same time.\n\n * 409 CurrentMemoryUsageExceedsSkuQuota - User attempted an sku update operation that cannot be completed due to the higher resource consumption.\n\n * 409 TargetElasticPoolBeingUpdated - The update of elastic pool cannot be started because there is copy operation in progress for one of the databases in this elastic pool\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 DatabaseCopyLimitPerReplicaReached - User reached the limit of concurrent database copies.\n\n * 409 ServerDisabled - Server is disabled.\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 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 ConflictRequestToUpdateBackupRedundancy - A conflict request to change backup storage redundancy is still in progress.\n\n * 409 DatabaseElasticPoolMaintenanceConflict - User tried to create or update a database with a specified maintenance configuration that conflicted with that of the elastic pool of the database.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 FreeDbAlreadyExists - Only one free database can exist for a subscription per region.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 SkuAssignmentInProgress - The current assignment request cannot be processed because a previous request has not completed.\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 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 * 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 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\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." + "description": "*** Error Responses: ***\n\n * 400 InvalidDatabaseCreateOrUpdateRequest - The request body for the create or update database operation is invalid.\n\n * 400 InvalidResourceId - Invalid resource identifier.\n\n * 400 InvalidSourceDatabaseId - Invalid source database identifier.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 MissingCollation - Collation is required.\n\n * 400 MissingMaxSizeBytes - MaxSizeBytes is required.\n\n * 400 MissingSkuName - Sku name is required.\n\n * 400 MissingSourceDatabaseId - Missing source database identifier.\n\n * 400 InvalidLicenseType - The specified license type is invalid.\n\n * 400 InvalidSkuName - Invalid SKU name.\n\n * 400 MismatchedSkuNameAndCapacity - Mismatch between SKU name and capacity.\n\n * 400 MismatchedSkuNameAndTier - Mismatch between SKU name and tier.\n\n * 400 MismatchedSkuNameAndFamily - Mismatch between SKU name and family.\n\n * 400 DatabaseNameDoesNotMatchSourceDatabaseId - The database name specified doesn’t match the database name in sourceDatabaseId.\n\n * 400 ElasticPoolNotSupportedForExternalBackupRestore - Elastic pool is not supported for external backup restore\n\n * 400 InvalidRecoverableDatabaseId - Invalid recoverable database identifier.\n\n * 400 InvalidRecoveryServicesRecoveryPointId - Invalid recovery services recovery point identifier.\n\n * 400 InvalidRestorableDroppedDatabaseDeletionDate - The restorable dropped database deletion date given is invalid\n\n * 400 InvalidRestorableDroppedDatabaseId - Invalid restorable dropped database identifier\n\n * 400 MissingRecoverableDatabaseId - Missing recoverable database identifier.\n\n * 400 MissingRecoveryServicesRecoveryPointId - Missing recovery services recovery point Id.\n\n * 400 MissingRestorableDroppedDatabaseId - Missing restorableDroppedDatabaseId\n\n * 400 MissingRestorePointInTime - Missing restore point in time\n\n * 400 MissingSourceDatabaseDeletionDate - Missing source database deletion date\n\n * 400 MissingStorageContainerSasToken - Missing storage container SAS token\n\n * 400 MissingStorageContainerUri - Missing storage container URI\n\n * 400 RestorableDroppedDatabaseIdGivenForRestoreWithSourceDatabaseId - Cannot specify restorableDroppedDatabaseId when sourceDatabaseId is already given in restore create mode\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 InvalidDatabaseCreateMode - Invalid request to create a database.\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 InvalidBackupStorageAccountType - User passed zrs/lrs during create/update of a database but it failed either because the customer is not whitelisted or because zrs is not available in the specified region.\n\n * 400 CannotUpdateToFreeDatabase - Updating a database to the free sku is not supported.\n\n * 400 DatabaseInvalidSkuPropertyCombination - The properties of the requested sku are inconsistent. Please check that a valid combination is specified. See https://docs.microsoft.com/en-us/rest/api/sql/capabilities/listbylocation#serviceobjectivecapability for more details.\n\n * 400 DatabaseNamedReplicaPerDatabaseLimitExceeded - User tried create a named replica that would exceed the allowed number per primary database\n\n * 400 DatabaseIsCurrentlyPinned - Microsoft has pinned your database SQL Server engine version. To ensure your database does not hit production issues, any future scale operations on your database will be blocked until it has been un-pinned. Please contact Microsoft support for assistance with scaling.\n\n * 400 RestoreTargetEditionSizeInsufficient - User attempted to restore a database to an edition that is a smaller size than the current allocated size of the source.\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 DatabaseCreationBlockedForNonActivatedCMKServer - SQL Pool creations are blocked for CMK enabled workspaces until the workspace is activated. First, enable purge protection and grant the workspace Managed Identity the required permissions (Get, Wrap Key, Unwrap Key) on the Azure Key Vault of the workspace key. Next, activate your workspace after you have granted access.\n\n * 400 PartnerServerNotCompatible - 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 TargetElasticPoolDoesNotExist - The elastic pool does not exist on a 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 ElasticPoolNameRequired - User tried to create or update database to elastic pool service objective without specifying the name of the elastic pool.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\n\n * 400 TierChangeUnsupportedDueToCDCEnabledDatabase - The database cannot update its sku because it is enabled for CDC.\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 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\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 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 InvalidReadScaleEdition - User attempted to enable read scale on a database type that does not support it.\n\n * 400 InvalidReadScaleUnits - User attempted to provide a read scale value that is not supported.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\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 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\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 RequestedDatabaseSizeRequiresShrink - User attempted to ALTER DATABASE MODIFY MAXSIZE to modify the MAXSIZE for a database to a smaller size then the current size.\n\n * 400 CurrentDatabaseSizeExceedsDbMaxSize - User attempted to reduce the max size for a database to a size smaller than the current usage.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 SourceDatabaseEditionCouldNotBeUpgraded - The source database cannot have higher edition than the target database.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 TargetDatabaseEditionCouldNotBeDowngraded - The target database cannot have lower edition than the source database.\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currently in progress.\n\n * 400 InvalidCollation - Collation is not recognized by the server.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 PartnerDBNotCompatibleForSGXEnclave - Attempt to set GeoDR link or update SLO for enclave enabled database is only supported when both database are running on DC-series hardware.\n\n * 400 UpdateNotAllowedInCurrentReplicationState - The operation is disallowed on the database in its current replication state.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 GeoReplicaLimitReached - The per-replica replication limit was reached.\n\n * 400 UnsupportedCapacity - User tried to create or update database with capacity which is not supported.\n\n * 400 ReplicationSourceAndTargetMustHaveSameName - The replication source and target databases must have the same name.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\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 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 400 RestoreToFreeEditionNotSupported - Restore and GeoRestore target cannot be free database.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 400 RestoreNotSupportedForFreeEdition - Restore and GeoRestore are not supported for free database.\n\n * 400 JobAgentDatabaseEditionUnsupported - The specified database's service level objective is not supported for use as a job agent database.\n\n * 400 InvalidDroppedDatabase - Source database dropped does not exist on server within the supported recovery period.\n\n * 400 InvalidLiveDatabase - Source database does not exist on server within the supported recovery period. If restoring a dropped database, please specify its deletion date.\n\n * 400 InvalidVldbRecoverySlo - The Hyperscale edition recovery requires both source and target databases to use Hyperscale service level objective.\n\n * 400 SourceDatabaseNotFound - The source database does not exist.\n\n * 400 InvalidVldbRestoreSlo - The Hyperscale edition Point-In-Time restore requires both source and target databases to use Hyperscale service level objective.\n\n * 400 CannotSpecifyPoolOrSlo - Specifying an elastic pool and/or changing the service level objective or edition is not supported for edition.\n\n * 400 InvalidPublicMaintenanceConfiguration - User tried to specify public maintenance configuration which cannot be converted to internal id (malformed or wrong region).\n\n * 400 ChangeUnsupportedOnEntity - User attempted an unsupported create/update/delete operation on a given entity.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 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 * 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 FreeDbAlreadyExists - Only one free database can exist for a subscription per region.\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 ConflictRequestToUpdateBackupRedundancy - A conflict request to change backup storage redundancy is still in progress.\n\n * 409 SkuAssignmentInProgress - The current assignment request cannot be processed because a previous request has not completed.\n\n * 409 DatabaseElasticPoolMaintenanceConflict - User tried to create or update a database with a specified maintenance configuration that conflicted with that of the elastic pool of the database.\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 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 ServerDisabled - Server is disabled.\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 TargetElasticPoolBeingUpdated - The update of elastic pool cannot be started because there is copy operation in progress for one of the databases in this elastic pool\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 DatabaseCopyLimitPerReplicaReached - User reached the limit of concurrent database copies.\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 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." }, "202": { "description": "Creating or updating the database is in progress." @@ -213,7 +213,7 @@ "description": "Successfully deleted the database." }, "default": { - "description": "*** Error Responses: ***\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 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 * 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 ServerDisabled - Server is disabled.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources." + "description": "*** Error Responses: ***\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 * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\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 * 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 ServerDisabled - Server is disabled.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources." }, "202": { "description": "Deleting the database is in progress." @@ -269,7 +269,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidDatabaseCreateOrUpdateRequest - The request body for the create or update database operation is invalid.\n\n * 400 InvalidResourceId - Invalid resource identifier.\n\n * 400 InvalidSourceDatabaseId - Invalid source database identifier.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 MissingCollation - Collation is required.\n\n * 400 MissingMaxSizeBytes - MaxSizeBytes is required.\n\n * 400 MissingSkuName - Sku name is required.\n\n * 400 MissingSourceDatabaseId - Missing source database identifier.\n\n * 400 InvalidLicenseType - The specified license type is invalid.\n\n * 400 InvalidSkuName - Invalid SKU name.\n\n * 400 MismatchedSkuNameAndCapacity - Mismatch between SKU name and capacity.\n\n * 400 MismatchedSkuNameAndTier - Mismatch between SKU name and tier.\n\n * 400 MismatchedSkuNameAndFamily - Mismatch between SKU name and family.\n\n * 400 DatabaseNameDoesNotMatchSourceDatabaseId - The database name specified doesn’t match the database name in sourceDatabaseId.\n\n * 400 ElasticPoolNotSupportedForExternalBackupRestore - Elastic pool is not supported for external backup restore\n\n * 400 InvalidRecoverableDatabaseId - Invalid recoverable database identifier.\n\n * 400 InvalidRecoveryServicesRecoveryPointId - Invalid recovery services recovery point identifier.\n\n * 400 InvalidRestorableDroppedDatabaseDeletionDate - The restorable dropped database deletion date given is invalid\n\n * 400 InvalidRestorableDroppedDatabaseId - Invalid restorable dropped database identifier\n\n * 400 MissingRecoverableDatabaseId - Missing recoverable database identifier.\n\n * 400 MissingRecoveryServicesRecoveryPointId - Missing recovery services recovery point Id.\n\n * 400 MissingRestorableDroppedDatabaseId - Missing restorableDroppedDatabaseId\n\n * 400 MissingRestorePointInTime - Missing restore point in time\n\n * 400 MissingSourceDatabaseDeletionDate - Missing source database deletion date\n\n * 400 MissingStorageContainerSasToken - Missing storage container SAS token\n\n * 400 MissingStorageContainerUri - Missing storage container URI\n\n * 400 RestorableDroppedDatabaseIdGivenForRestoreWithSourceDatabaseId - Cannot specify restorableDroppedDatabaseId when sourceDatabaseId is already given in restore create mode\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\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 ServerNotFound - The requested server was not found.\n\n * 400 SourceDatabaseEditionCouldNotBeUpgraded - The source database cannot have higher edition than the target database.\n\n * 400 TargetDatabaseEditionCouldNotBeDowngraded - The target database cannot have lower edition than the source database.\n\n * 400 PartnerDBNotCompatibleForSGXEnclave - Attempt to set GeoDR link or update SLO for enclave enabled database is only supported when both database are running on DC-series hardware.\n\n * 400 InvalidPublicMaintenanceConfiguration - User tried to specify public maintenance configuration which cannot be converted to internal id (malformed or wrong region).\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currently in progress.\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 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 InvalidReadScaleEdition - User attempted to enable read scale on a database type that does not support it.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 InvalidReadScaleUnits - User attempted to provide a read scale value that is not supported.\n\n * 400 UnsupportedCapacity - User tried to create or update database with capacity which is not supported.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 RequestedDatabaseSizeRequiresShrink - User attempted to ALTER DATABASE MODIFY MAXSIZE to modify the MAXSIZE for a database to a smaller size then the current size.\n\n * 400 RestoreToFreeEditionNotSupported - Restore and GeoRestore target cannot be free database.\n\n * 400 CurrentDatabaseSizeExceedsDbMaxSize - User attempted to reduce the max size for a database to a size smaller than the current usage.\n\n * 400 RestoreNotSupportedForFreeEdition - Restore and GeoRestore are not supported for free database.\n\n * 400 InvalidDroppedDatabase - Source database dropped does not exist on server within the supported recovery period.\n\n * 400 InvalidLiveDatabase - Source database does not exist on server within the supported recovery period. If restoring a dropped database, please specify its deletion date.\n\n * 400 InvalidVldbRecoverySlo - The Hyperscale edition recovery requires both source and target databases to use Hyperscale service level objective.\n\n * 400 InvalidVldbRestoreSlo - The Hyperscale edition Point-In-Time restore requires both source and target databases to use Hyperscale service level objective.\n\n * 400 CannotSpecifyPoolOrSlo - Specifying an elastic pool and/or changing the service level objective or edition is not supported for edition.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 InvalidMaxSizeTierCombination - The specified tier does not support the specified database max size.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\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 TierChangeUnsupportedDueToMemoryOptimizedObject - The database cannot update its sku because it has memory-optimized objects.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 400 InvalidCollation - Collation is not recognized by the server.\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 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 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 InvalidBackupStorageAccountType - User passed zrs/lrs during create/update of a database but it failed either because the customer is not whitelisted or because zrs is not available in the specified region.\n\n * 400 TierChangeUnsupportedDueToCDCEnabledDatabase - The database cannot update its sku because it is enabled for CDC.\n\n * 400 DatabaseInvalidSkuPropertyCombination - The properties of the requested sku are inconsistent. Please check that a valid combination is specified. See https://docs.microsoft.com/en-us/rest/api/sql/capabilities/listbylocation#serviceobjectivecapability for more details.\n\n * 400 DatabaseNamedReplicaPerDatabaseLimitExceeded - User tried create a named replica that would exceed the allowed number per primary database\n\n * 400 RestoreTargetEditionSizeInsufficient - User attempted to restore a database to an edition that is a smaller size than the current allocated size of the source.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\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 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 CannotUpdateToFreeDatabase - Updating a database to the free sku is not supported.\n\n * 400 InvalidSku - The user specified an invalid sku.\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 InvalidTierSkuCombination - The specified tier does not support the specified sku.\n\n * 400 InvalidDatabaseCreateMode - Invalid request to create a database.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 UnsupportedServiceName - The specified name is an invalid name because it contains one or more unsupported unicode characters.\n\n * 400 CannotMoveOrDropSyncMetadataDatabase - Cannot drop database used as sync metadata database.\n\n * 400 OfferDisabledOnSubscription - Subscription offer type is restricted from provisioning the requested resource.\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 ElasticPoolOverStorageUsage - Attempting to write data to a database when the storage limit of the elastic pool has been reached.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 PartnerServerNotCompatible - 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 DatabaseCreationBlockedForNonActivatedCMKServer - SQL Pool creations are blocked for CMK enabled workspaces until the workspace is activated. First, enable purge protection and grant the workspace Managed Identity the required permissions (Get, Wrap Key, Unwrap Key) on the Azure Key Vault of the workspace key. Next, activate your workspace after you have granted access.\n\n * 400 TargetElasticPoolDoesNotExist - The elastic pool does not exist on a 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 ElasticPoolNameRequired - User tried to create or update database to elastic pool service objective without specifying the name of the elastic pool.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\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 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\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 SubscriptionDoesNotHaveServer - The requested server was not found\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 SimultaneousSkuChangeNotAllowed - Service objective change operations cannot run on both databases of a replication relationship at the same time.\n\n * 409 CurrentMemoryUsageExceedsSkuQuota - User attempted an sku update operation that cannot be completed due to the higher resource consumption.\n\n * 409 TargetElasticPoolBeingUpdated - The update of elastic pool cannot be started because there is copy operation in progress for one of the databases in this elastic pool\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 DatabaseCopyLimitPerReplicaReached - User reached the limit of concurrent database copies.\n\n * 409 ServerDisabled - Server is disabled.\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 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 ConflictRequestToUpdateBackupRedundancy - A conflict request to change backup storage redundancy is still in progress.\n\n * 409 DatabaseElasticPoolMaintenanceConflict - User tried to create or update a database with a specified maintenance configuration that conflicted with that of the elastic pool of the database.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 FreeDbAlreadyExists - Only one free database can exist for a subscription per region.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 SkuAssignmentInProgress - The current assignment request cannot be processed because a previous request has not completed.\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 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 * 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 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\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." + "description": "*** Error Responses: ***\n\n * 400 InvalidDatabaseCreateOrUpdateRequest - The request body for the create or update database operation is invalid.\n\n * 400 InvalidResourceId - Invalid resource identifier.\n\n * 400 InvalidSourceDatabaseId - Invalid source database identifier.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 MissingCollation - Collation is required.\n\n * 400 MissingMaxSizeBytes - MaxSizeBytes is required.\n\n * 400 MissingSkuName - Sku name is required.\n\n * 400 MissingSourceDatabaseId - Missing source database identifier.\n\n * 400 InvalidLicenseType - The specified license type is invalid.\n\n * 400 InvalidSkuName - Invalid SKU name.\n\n * 400 MismatchedSkuNameAndCapacity - Mismatch between SKU name and capacity.\n\n * 400 MismatchedSkuNameAndTier - Mismatch between SKU name and tier.\n\n * 400 MismatchedSkuNameAndFamily - Mismatch between SKU name and family.\n\n * 400 DatabaseNameDoesNotMatchSourceDatabaseId - The database name specified doesn’t match the database name in sourceDatabaseId.\n\n * 400 ElasticPoolNotSupportedForExternalBackupRestore - Elastic pool is not supported for external backup restore\n\n * 400 InvalidRecoverableDatabaseId - Invalid recoverable database identifier.\n\n * 400 InvalidRecoveryServicesRecoveryPointId - Invalid recovery services recovery point identifier.\n\n * 400 InvalidRestorableDroppedDatabaseDeletionDate - The restorable dropped database deletion date given is invalid\n\n * 400 InvalidRestorableDroppedDatabaseId - Invalid restorable dropped database identifier\n\n * 400 MissingRecoverableDatabaseId - Missing recoverable database identifier.\n\n * 400 MissingRecoveryServicesRecoveryPointId - Missing recovery services recovery point Id.\n\n * 400 MissingRestorableDroppedDatabaseId - Missing restorableDroppedDatabaseId\n\n * 400 MissingRestorePointInTime - Missing restore point in time\n\n * 400 MissingSourceDatabaseDeletionDate - Missing source database deletion date\n\n * 400 MissingStorageContainerSasToken - Missing storage container SAS token\n\n * 400 MissingStorageContainerUri - Missing storage container URI\n\n * 400 RestorableDroppedDatabaseIdGivenForRestoreWithSourceDatabaseId - Cannot specify restorableDroppedDatabaseId when sourceDatabaseId is already given in restore create mode\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 InvalidDatabaseCreateMode - Invalid request to create a database.\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 InvalidBackupStorageAccountType - User passed zrs/lrs during create/update of a database but it failed either because the customer is not whitelisted or because zrs is not available in the specified region.\n\n * 400 CannotUpdateToFreeDatabase - Updating a database to the free sku is not supported.\n\n * 400 DatabaseInvalidSkuPropertyCombination - The properties of the requested sku are inconsistent. Please check that a valid combination is specified. See https://docs.microsoft.com/en-us/rest/api/sql/capabilities/listbylocation#serviceobjectivecapability for more details.\n\n * 400 DatabaseNamedReplicaPerDatabaseLimitExceeded - User tried create a named replica that would exceed the allowed number per primary database\n\n * 400 DatabaseIsCurrentlyPinned - Microsoft has pinned your database SQL Server engine version. To ensure your database does not hit production issues, any future scale operations on your database will be blocked until it has been un-pinned. Please contact Microsoft support for assistance with scaling.\n\n * 400 RestoreTargetEditionSizeInsufficient - User attempted to restore a database to an edition that is a smaller size than the current allocated size of the source.\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 DatabaseCreationBlockedForNonActivatedCMKServer - SQL Pool creations are blocked for CMK enabled workspaces until the workspace is activated. First, enable purge protection and grant the workspace Managed Identity the required permissions (Get, Wrap Key, Unwrap Key) on the Azure Key Vault of the workspace key. Next, activate your workspace after you have granted access.\n\n * 400 PartnerServerNotCompatible - 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 TargetElasticPoolDoesNotExist - The elastic pool does not exist on a 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 ElasticPoolNameRequired - User tried to create or update database to elastic pool service objective without specifying the name of the elastic pool.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\n\n * 400 TierChangeUnsupportedDueToCDCEnabledDatabase - The database cannot update its sku because it is enabled for CDC.\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 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\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 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 InvalidReadScaleEdition - User attempted to enable read scale on a database type that does not support it.\n\n * 400 InvalidReadScaleUnits - User attempted to provide a read scale value that is not supported.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\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 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\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 RequestedDatabaseSizeRequiresShrink - User attempted to ALTER DATABASE MODIFY MAXSIZE to modify the MAXSIZE for a database to a smaller size then the current size.\n\n * 400 CurrentDatabaseSizeExceedsDbMaxSize - User attempted to reduce the max size for a database to a size smaller than the current usage.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 SourceDatabaseEditionCouldNotBeUpgraded - The source database cannot have higher edition than the target database.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 TargetDatabaseEditionCouldNotBeDowngraded - The target database cannot have lower edition than the source database.\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currently in progress.\n\n * 400 InvalidCollation - Collation is not recognized by the server.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 PartnerDBNotCompatibleForSGXEnclave - Attempt to set GeoDR link or update SLO for enclave enabled database is only supported when both database are running on DC-series hardware.\n\n * 400 UpdateNotAllowedInCurrentReplicationState - The operation is disallowed on the database in its current replication state.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 GeoReplicaLimitReached - The per-replica replication limit was reached.\n\n * 400 UnsupportedCapacity - User tried to create or update database with capacity which is not supported.\n\n * 400 ReplicationSourceAndTargetMustHaveSameName - The replication source and target databases must have the same name.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\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 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 400 RestoreToFreeEditionNotSupported - Restore and GeoRestore target cannot be free database.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 400 RestoreNotSupportedForFreeEdition - Restore and GeoRestore are not supported for free database.\n\n * 400 JobAgentDatabaseEditionUnsupported - The specified database's service level objective is not supported for use as a job agent database.\n\n * 400 InvalidDroppedDatabase - Source database dropped does not exist on server within the supported recovery period.\n\n * 400 InvalidLiveDatabase - Source database does not exist on server within the supported recovery period. If restoring a dropped database, please specify its deletion date.\n\n * 400 InvalidVldbRecoverySlo - The Hyperscale edition recovery requires both source and target databases to use Hyperscale service level objective.\n\n * 400 SourceDatabaseNotFound - The source database does not exist.\n\n * 400 InvalidVldbRestoreSlo - The Hyperscale edition Point-In-Time restore requires both source and target databases to use Hyperscale service level objective.\n\n * 400 CannotSpecifyPoolOrSlo - Specifying an elastic pool and/or changing the service level objective or edition is not supported for edition.\n\n * 400 InvalidPublicMaintenanceConfiguration - User tried to specify public maintenance configuration which cannot be converted to internal id (malformed or wrong region).\n\n * 400 ChangeUnsupportedOnEntity - User attempted an unsupported create/update/delete operation on a given entity.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 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 * 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 FreeDbAlreadyExists - Only one free database can exist for a subscription per region.\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 ConflictRequestToUpdateBackupRedundancy - A conflict request to change backup storage redundancy is still in progress.\n\n * 409 SkuAssignmentInProgress - The current assignment request cannot be processed because a previous request has not completed.\n\n * 409 DatabaseElasticPoolMaintenanceConflict - User tried to create or update a database with a specified maintenance configuration that conflicted with that of the elastic pool of the database.\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 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 ServerDisabled - Server is disabled.\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 TargetElasticPoolBeingUpdated - The update of elastic pool cannot be started because there is copy operation in progress for one of the databases in this elastic pool\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 DatabaseCopyLimitPerReplicaReached - User reached the limit of concurrent database copies.\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 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." }, "202": { "description": "Updating the database is in progress." @@ -325,7 +325,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 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 * 429 SubscriptionTooManyRequests - 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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\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 * 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 * 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": { @@ -374,7 +374,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 CannotDeactivateWhenDeactivatingInProgress - Deactivation workflow failed because there is a deactivate workflow already running.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 500 ActivateOrDeactivateWorkflowThrottling - Activation or deactivation workflow failed because there are too many concurrent workflows" + "description": "*** Error Responses: ***\n\n * 400 CannotDeactivateWhenDeactivatingInProgress - Deactivation workflow failed because there is a deactivate workflow already running.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 500 ActivateOrDeactivateWorkflowThrottling - Activation or deactivation workflow failed because there are too many concurrent workflows" }, "202": { "description": "Pausing the database is in progress." @@ -424,7 +424,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 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 500 ActivateOrDeactivateWorkflowThrottling - Activation or deactivation workflow failed because there are too many concurrent workflows" + "description": "*** Error Responses: ***\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 500 ActivateOrDeactivateWorkflowThrottling - Activation or deactivation workflow failed because there are too many concurrent workflows" }, "202": { "description": "Resuming the database is in progress." @@ -486,7 +486,7 @@ "description": "Successfully completed database failover." }, "default": { - "description": "*** Error Responses: ***\n\n * 400 DatabaseFailoverNotSupportedOnSKU - This type of customer initiated failover is not supported on the given SKU.\n\n * 400 ManagementServiceFeatureDisabled - User attempted to use a feature which is disabled.\n\n * 400 DatabaseFailoverThrottled - There was a recent failover on the database or pool if database belongs in an elastic pool.\n\n * 409 ManagementServiceDatabaseBusy - Database '{0}' is busy with another operation. Please try your operation later.\n\n * 409 DatabaseNotInStateToFailover - The database is currently in a state such that failover cannot be issued." + "description": "*** Error Responses: ***\n\n * 400 ManagementServiceFeatureDisabled - User attempted to use a feature which is disabled.\n\n * 400 DatabaseFailoverThrottled - There was a recent failover on the database or pool if database belongs in an elastic pool.\n\n * 400 DatabaseFailoverNotSupportedOnSKU - This type of customer initiated failover is not supported on the given SKU.\n\n * 409 ManagementServiceDatabaseBusy - Database '{0}' is busy with another operation. Please try your operation later.\n\n * 409 DatabaseNotInStateToFailover - The database is currently in a state such that failover cannot be issued." }, "202": { "description": "Database failover is in progress." @@ -529,7 +529,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found" + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." } }, "x-ms-pageable": { @@ -575,7 +575,7 @@ "description": "Successfully upgraded the data warehouse." }, "default": { - "description": "*** Error Responses: ***\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\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 ServerNotFound - The requested server was not found.\n\n * 400 SourceDatabaseEditionCouldNotBeUpgraded - The source database cannot have higher edition than the target database.\n\n * 400 TargetDatabaseEditionCouldNotBeDowngraded - The target database cannot have lower edition than the source database.\n\n * 400 PartnerDBNotCompatibleForSGXEnclave - Attempt to set GeoDR link or update SLO for enclave enabled database is only supported when both database are running on DC-series hardware.\n\n * 400 InvalidPublicMaintenanceConfiguration - User tried to specify public maintenance configuration which cannot be converted to internal id (malformed or wrong region).\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currently in progress.\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 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 InvalidReadScaleEdition - User attempted to enable read scale on a database type that does not support it.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 InvalidReadScaleUnits - User attempted to provide a read scale value that is not supported.\n\n * 400 UnsupportedCapacity - User tried to create or update database with capacity which is not supported.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 RequestedDatabaseSizeRequiresShrink - User attempted to ALTER DATABASE MODIFY MAXSIZE to modify the MAXSIZE for a database to a smaller size then the current size.\n\n * 400 RestoreToFreeEditionNotSupported - Restore and GeoRestore target cannot be free database.\n\n * 400 CurrentDatabaseSizeExceedsDbMaxSize - User attempted to reduce the max size for a database to a size smaller than the current usage.\n\n * 400 RestoreNotSupportedForFreeEdition - Restore and GeoRestore are not supported for free database.\n\n * 400 InvalidDroppedDatabase - Source database dropped does not exist on server within the supported recovery period.\n\n * 400 InvalidLiveDatabase - Source database does not exist on server within the supported recovery period. If restoring a dropped database, please specify its deletion date.\n\n * 400 InvalidVldbRecoverySlo - The Hyperscale edition recovery requires both source and target databases to use Hyperscale service level objective.\n\n * 400 InvalidVldbRestoreSlo - The Hyperscale edition Point-In-Time restore requires both source and target databases to use Hyperscale service level objective.\n\n * 400 CannotSpecifyPoolOrSlo - Specifying an elastic pool and/or changing the service level objective or edition is not supported for edition.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 InvalidMaxSizeTierCombination - The specified tier does not support the specified database max size.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\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 TierChangeUnsupportedDueToMemoryOptimizedObject - The database cannot update its sku because it has memory-optimized objects.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 400 InvalidCollation - Collation is not recognized by the server.\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 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 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 InvalidBackupStorageAccountType - User passed zrs/lrs during create/update of a database but it failed either because the customer is not whitelisted or because zrs is not available in the specified region.\n\n * 400 TierChangeUnsupportedDueToCDCEnabledDatabase - The database cannot update its sku because it is enabled for CDC.\n\n * 400 DatabaseInvalidSkuPropertyCombination - The properties of the requested sku are inconsistent. Please check that a valid combination is specified. See https://docs.microsoft.com/en-us/rest/api/sql/capabilities/listbylocation#serviceobjectivecapability for more details.\n\n * 400 DatabaseNamedReplicaPerDatabaseLimitExceeded - User tried create a named replica that would exceed the allowed number per primary database\n\n * 400 RestoreTargetEditionSizeInsufficient - User attempted to restore a database to an edition that is a smaller size than the current allocated size of the source.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\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 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 CannotUpdateToFreeDatabase - Updating a database to the free sku is not supported.\n\n * 400 InvalidSku - The user specified an invalid sku.\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 InvalidTierSkuCombination - The specified tier does not support the specified sku.\n\n * 400 InvalidDatabaseCreateMode - Invalid request to create a database.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 UnsupportedServiceName - The specified name is an invalid name because it contains one or more unsupported unicode characters.\n\n * 400 CannotMoveOrDropSyncMetadataDatabase - Cannot drop database used as sync metadata database.\n\n * 400 OfferDisabledOnSubscription - Subscription offer type is restricted from provisioning the requested resource.\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 ElasticPoolOverStorageUsage - Attempting to write data to a database when the storage limit of the elastic pool has been reached.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 PartnerServerNotCompatible - 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 DatabaseCreationBlockedForNonActivatedCMKServer - SQL Pool creations are blocked for CMK enabled workspaces until the workspace is activated. First, enable purge protection and grant the workspace Managed Identity the required permissions (Get, Wrap Key, Unwrap Key) on the Azure Key Vault of the workspace key. Next, activate your workspace after you have granted access.\n\n * 400 TargetElasticPoolDoesNotExist - The elastic pool does not exist on a 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 ElasticPoolNameRequired - User tried to create or update database to elastic pool service objective without specifying the name of the elastic pool.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\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 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 400 UpgradeOnlyAllowedOnDataWarehouseInstances - User attempted to upgrade non-datawarehouse instance.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\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 SimultaneousSkuChangeNotAllowed - Service objective change operations cannot run on both databases of a replication relationship at the same time.\n\n * 409 CurrentMemoryUsageExceedsSkuQuota - User attempted an sku update operation that cannot be completed due to the higher resource consumption.\n\n * 409 TargetElasticPoolBeingUpdated - The update of elastic pool cannot be started because there is copy operation in progress for one of the databases in this elastic pool\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 DatabaseCopyLimitPerReplicaReached - User reached the limit of concurrent database copies.\n\n * 409 ServerDisabled - Server is disabled.\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 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 ConflictRequestToUpdateBackupRedundancy - A conflict request to change backup storage redundancy is still in progress.\n\n * 409 DatabaseElasticPoolMaintenanceConflict - User tried to create or update a database with a specified maintenance configuration that conflicted with that of the elastic pool of the database.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 FreeDbAlreadyExists - Only one free database can exist for a subscription per region.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 SkuAssignmentInProgress - The current assignment request cannot be processed because a previous request has not completed.\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 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 * 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 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\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." + "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 InvalidDatabaseCreateMode - Invalid request to create a database.\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 InvalidBackupStorageAccountType - User passed zrs/lrs during create/update of a database but it failed either because the customer is not whitelisted or because zrs is not available in the specified region.\n\n * 400 CannotUpdateToFreeDatabase - Updating a database to the free sku is not supported.\n\n * 400 DatabaseInvalidSkuPropertyCombination - The properties of the requested sku are inconsistent. Please check that a valid combination is specified. See https://docs.microsoft.com/en-us/rest/api/sql/capabilities/listbylocation#serviceobjectivecapability for more details.\n\n * 400 DatabaseNamedReplicaPerDatabaseLimitExceeded - User tried create a named replica that would exceed the allowed number per primary database\n\n * 400 DatabaseIsCurrentlyPinned - Microsoft has pinned your database SQL Server engine version. To ensure your database does not hit production issues, any future scale operations on your database will be blocked until it has been un-pinned. Please contact Microsoft support for assistance with scaling.\n\n * 400 RestoreTargetEditionSizeInsufficient - User attempted to restore a database to an edition that is a smaller size than the current allocated size of the source.\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 DatabaseCreationBlockedForNonActivatedCMKServer - SQL Pool creations are blocked for CMK enabled workspaces until the workspace is activated. First, enable purge protection and grant the workspace Managed Identity the required permissions (Get, Wrap Key, Unwrap Key) on the Azure Key Vault of the workspace key. Next, activate your workspace after you have granted access.\n\n * 400 PartnerServerNotCompatible - 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 TargetElasticPoolDoesNotExist - The elastic pool does not exist on a 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 ElasticPoolNameRequired - User tried to create or update database to elastic pool service objective without specifying the name of the elastic pool.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\n\n * 400 TierChangeUnsupportedDueToCDCEnabledDatabase - The database cannot update its sku because it is enabled for CDC.\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 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\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 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 InvalidReadScaleEdition - User attempted to enable read scale on a database type that does not support it.\n\n * 400 InvalidReadScaleUnits - User attempted to provide a read scale value that is not supported.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\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 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\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 RequestedDatabaseSizeRequiresShrink - User attempted to ALTER DATABASE MODIFY MAXSIZE to modify the MAXSIZE for a database to a smaller size then the current size.\n\n * 400 CurrentDatabaseSizeExceedsDbMaxSize - User attempted to reduce the max size for a database to a size smaller than the current usage.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 SourceDatabaseEditionCouldNotBeUpgraded - The source database cannot have higher edition than the target database.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 TargetDatabaseEditionCouldNotBeDowngraded - The target database cannot have lower edition than the source database.\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currently in progress.\n\n * 400 InvalidCollation - Collation is not recognized by the server.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 PartnerDBNotCompatibleForSGXEnclave - Attempt to set GeoDR link or update SLO for enclave enabled database is only supported when both database are running on DC-series hardware.\n\n * 400 UpdateNotAllowedInCurrentReplicationState - The operation is disallowed on the database in its current replication state.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 GeoReplicaLimitReached - The per-replica replication limit was reached.\n\n * 400 UnsupportedCapacity - User tried to create or update database with capacity which is not supported.\n\n * 400 ReplicationSourceAndTargetMustHaveSameName - The replication source and target databases must have the same name.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\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 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 400 RestoreToFreeEditionNotSupported - Restore and GeoRestore target cannot be free database.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 400 RestoreNotSupportedForFreeEdition - Restore and GeoRestore are not supported for free database.\n\n * 400 JobAgentDatabaseEditionUnsupported - The specified database's service level objective is not supported for use as a job agent database.\n\n * 400 InvalidDroppedDatabase - Source database dropped does not exist on server within the supported recovery period.\n\n * 400 InvalidLiveDatabase - Source database does not exist on server within the supported recovery period. If restoring a dropped database, please specify its deletion date.\n\n * 400 InvalidVldbRecoverySlo - The Hyperscale edition recovery requires both source and target databases to use Hyperscale service level objective.\n\n * 400 SourceDatabaseNotFound - The source database does not exist.\n\n * 400 InvalidVldbRestoreSlo - The Hyperscale edition Point-In-Time restore requires both source and target databases to use Hyperscale service level objective.\n\n * 400 CannotSpecifyPoolOrSlo - Specifying an elastic pool and/or changing the service level objective or edition is not supported for edition.\n\n * 400 InvalidPublicMaintenanceConfiguration - User tried to specify public maintenance configuration which cannot be converted to internal id (malformed or wrong region).\n\n * 400 ChangeUnsupportedOnEntity - User attempted an unsupported create/update/delete operation on a given entity.\n\n * 400 UpgradeOnlyAllowedOnDataWarehouseInstances - User attempted to upgrade non-datawarehouse instance.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\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 * 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 FreeDbAlreadyExists - Only one free database can exist for a subscription per region.\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 ConflictRequestToUpdateBackupRedundancy - A conflict request to change backup storage redundancy is still in progress.\n\n * 409 SkuAssignmentInProgress - The current assignment request cannot be processed because a previous request has not completed.\n\n * 409 DatabaseElasticPoolMaintenanceConflict - User tried to create or update a database with a specified maintenance configuration that conflicted with that of the elastic pool of the database.\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 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 ServerDisabled - Server is disabled.\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 TargetElasticPoolBeingUpdated - The update of elastic pool cannot be started because there is copy operation in progress for one of the databases in this elastic pool\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 DatabaseCopyLimitPerReplicaReached - User reached the limit of concurrent database copies.\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 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." }, "202": { "description": "Upgrading the data warehouse is in progress." @@ -631,7 +631,7 @@ "description": "Successfully renamed the database." }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidResourceMoveRequest - The resource move request is invalid.\n\n * 400 InvalidMoveTargetResourceId - The target resource identifier in move request is invalid.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 UnsupportedServiceName - The specified name is an invalid name because it contains one or more unsupported unicode characters.\n\n * 400 DatabaseNameInUse - Database already exists. Choose a different database name.\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 * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 409 InvalidOperationForDatabaseInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship." + "description": "*** Error Responses: ***\n\n * 400 InvalidResourceMoveRequest - The resource move request is invalid.\n\n * 400 InvalidMoveTargetResourceId - The target resource identifier in move request is invalid.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 DatabaseNameInUse - Database already exists. Choose a different database name.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 CannotMoveOrDropSyncMetadataDatabase - Cannot drop database used as sync metadata database.\n\n * 400 UnsupportedServiceName - The specified name is an invalid name because it contains one or more unsupported unicode characters.\n\n * 400 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 409 InvalidOperationForDatabaseInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship." } }, "x-ms-examples": { diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ElasticPools.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ElasticPools.json index e966e70abb0a..78e50d73fb3d 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ElasticPools.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ElasticPools.json @@ -52,7 +52,7 @@ } }, "default": { - "description": "*** Error Responses: ***\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 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidTierSkuCombination - The specified tier does not support the specified sku.\n\n * 400 ServerQuotaExceeded - The server reached its limit for allowed Database Throughput Unit.\n\n * 400 ElasticPoolAlreadyExists - The server already contains an elastic pool with the specified name.\n\n * 400 InvalidInputValueForEdition - Specified edition is not supported for elastic pool provisioning.\n\n * 400 ElasticPoolDtuBelowLimit - The requested DTU value is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDtuAboveLimit - The requested DTU value is too high for the requested elastic pool service tier.\n\n * 400 InvalidMaxSize - Invalid max size.\n\n * 400 ElasticPoolDbDtuMaxBelowLimit - The requested per database DTU max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbDtuMaxAboveLimit - The requested per database DTU max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMax - Attempting to set the DTU max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbDtuMinAboveLimit - The requested DTU min per database is too high for the requested service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMin - Attempting to set the DTU min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\n\n * 400 ElasticPoolDtuUnsupported - User tried to create or update an elastic pool with a DTU capacity that is not supported.\n\n * 400 ElasticPoolStorageAboveLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolsNotEnabled - Elastic pools have not been enabled in this region.\n\n * 400 ElasticPoolNotEmpty - Request to delete an elastic pool that is not empty.\n\n * 400 ElasticPoolStorageBelowLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedGB - Attempting to set the elastic pool storage limit in gb which doesn't match the allowed values.\n\n * 400 ElasticPoolDatabaseLimit - The elastic pool has reached its limit for number of databases.\n\n * 400 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 400 ElasticPoolBusy - A management operation was attempted on an elastic pool which is busy.\n\n * 400 InvalidInputValueDatabaseDtuMinLargerThanMax - Attempting to set the DTU min per database higher than the DTU max per database.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\n\n * 400 ElasticPoolStorageBelowLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolCapacityStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolStorageAboveLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\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 ElasticPoolUpdateHkNotAllowed - The elastic pool cannot lower its service tier from Premium to Standard or Basic since one or more of its databases use memory-optimized objects.\n\n * 400 RegionDoesNotAllowProvisioning - The selected location is not accepting new Windows Azure SQL Database servers. This may change at a later time.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 ElasticPoolDbDtuMinBelowLimit - The requested per database DTU min is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxBelowLimit - The requested per database VCore max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxAboveLimit - The requested per database VCore max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMax - Attempting to set the VCore max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbVcoreMinBelowLimit - The requested per database VCore min is too low for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMin - Attempting to set the VCore min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 InvalidInputValueDatabaseVcoreMinLargerThanMax - Attempting to set the VCore min per database higher than the VCore max per database.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 InvalidPublicMaintenanceConfiguration - User tried to specify public maintenance configuration which cannot be converted to internal id (malformed or wrong region).\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ElasticPoolNotFound - The specified elastic pool does not exist for the specified server.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 405 NotSupported - This functionality is not supported.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 ElasticPoolUpdateLinksNotInCatchup - Cannot update elastic pool while one of its databases is performing a copy or geo-replication failover operation.\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.\n\n * 503 ServiceTemporarilyUnavailable - Feature temporarily unavailable." + "description": "*** Error Responses: ***\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 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidTierSkuCombination - The specified tier does not support the specified sku.\n\n * 400 ServerQuotaExceeded - The server reached its limit for allowed Database Throughput Unit.\n\n * 400 ElasticPoolAlreadyExists - The server already contains an elastic pool with the specified name.\n\n * 400 InvalidInputValueForEdition - Specified edition is not supported for elastic pool provisioning.\n\n * 400 ElasticPoolDtuBelowLimit - The requested DTU value is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDtuAboveLimit - The requested DTU value is too high for the requested elastic pool service tier.\n\n * 400 InvalidMaxSize - Invalid max size.\n\n * 400 ElasticPoolDbDtuMaxBelowLimit - The requested per database DTU max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbDtuMaxAboveLimit - The requested per database DTU max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMax - Attempting to set the DTU max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbDtuMinAboveLimit - The requested DTU min per database is too high for the requested service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMin - Attempting to set the DTU min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\n\n * 400 ElasticPoolDtuUnsupported - User tried to create or update an elastic pool with a DTU capacity that is not supported.\n\n * 400 ElasticPoolStorageAboveLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolsNotEnabled - Elastic pools have not been enabled in this region.\n\n * 400 ElasticPoolNotEmpty - Request to delete an elastic pool that is not empty.\n\n * 400 ElasticPoolStorageBelowLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedGB - Attempting to set the elastic pool storage limit in gb which doesn't match the allowed values.\n\n * 400 ElasticPoolDatabaseLimit - The elastic pool has reached its limit for number of databases.\n\n * 400 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 400 ElasticPoolBusy - A management operation was attempted on an elastic pool which is busy.\n\n * 400 InvalidInputValueDatabaseDtuMinLargerThanMax - Attempting to set the DTU min per database higher than the DTU max per database.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\n\n * 400 ElasticPoolStorageBelowLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolCapacityStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolStorageAboveLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\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 SourceDatabaseEditionCouldNotBeUpgraded - The source database cannot have higher edition than the target database.\n\n * 400 TargetDatabaseEditionCouldNotBeDowngraded - The target database cannot have lower edition than the source database.\n\n * 400 ElasticPoolUpdateHkNotAllowed - The elastic pool cannot lower its service tier from Premium to Standard or Basic since one or more of its databases use memory-optimized objects.\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currently in progress.\n\n * 400 RegionDoesNotAllowProvisioning - The selected location is not accepting new Windows Azure SQL Database servers. This may change at a later time.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 ElasticPoolDbDtuMinBelowLimit - The requested per database DTU min is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxBelowLimit - The requested per database VCore max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxAboveLimit - The requested per database VCore max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMax - Attempting to set the VCore max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbVcoreMinBelowLimit - The requested per database VCore min is too low for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMin - Attempting to set the VCore min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 PartnerDBNotCompatibleForSGXEnclave - Attempt to set GeoDR link or update SLO for enclave enabled database is only supported when both database are running on DC-series hardware.\n\n * 400 InvalidInputValueDatabaseVcoreMinLargerThanMax - Attempting to set the VCore min per database higher than the VCore max per database.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 InvalidPublicMaintenanceConfiguration - User tried to specify public maintenance configuration which cannot be converted to internal id (malformed or wrong region).\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ElasticPoolNotFound - The specified elastic pool does not exist for the specified server.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 405 NotSupported - This functionality is not supported.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 SimultaneousSkuChangeNotAllowed - Service objective change operations cannot run on both databases of a replication relationship at the same time.\n\n * 409 ElasticPoolUpdateLinksNotInCatchup - Cannot update elastic pool while one of its databases is performing a copy or geo-replication failover operation.\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.\n\n * 503 ServiceTemporarilyUnavailable - Feature temporarily unavailable." } }, "x-ms-pageable": { @@ -101,7 +101,7 @@ } }, "default": { - "description": "*** Error Responses: ***\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 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidTierSkuCombination - The specified tier does not support the specified sku.\n\n * 400 ServerQuotaExceeded - The server reached its limit for allowed Database Throughput Unit.\n\n * 400 ElasticPoolAlreadyExists - The server already contains an elastic pool with the specified name.\n\n * 400 InvalidInputValueForEdition - Specified edition is not supported for elastic pool provisioning.\n\n * 400 ElasticPoolDtuBelowLimit - The requested DTU value is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDtuAboveLimit - The requested DTU value is too high for the requested elastic pool service tier.\n\n * 400 InvalidMaxSize - Invalid max size.\n\n * 400 ElasticPoolDbDtuMaxBelowLimit - The requested per database DTU max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbDtuMaxAboveLimit - The requested per database DTU max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMax - Attempting to set the DTU max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbDtuMinAboveLimit - The requested DTU min per database is too high for the requested service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMin - Attempting to set the DTU min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\n\n * 400 ElasticPoolDtuUnsupported - User tried to create or update an elastic pool with a DTU capacity that is not supported.\n\n * 400 ElasticPoolStorageAboveLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolsNotEnabled - Elastic pools have not been enabled in this region.\n\n * 400 ElasticPoolNotEmpty - Request to delete an elastic pool that is not empty.\n\n * 400 ElasticPoolStorageBelowLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedGB - Attempting to set the elastic pool storage limit in gb which doesn't match the allowed values.\n\n * 400 ElasticPoolDatabaseLimit - The elastic pool has reached its limit for number of databases.\n\n * 400 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 400 ElasticPoolBusy - A management operation was attempted on an elastic pool which is busy.\n\n * 400 InvalidInputValueDatabaseDtuMinLargerThanMax - Attempting to set the DTU min per database higher than the DTU max per database.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\n\n * 400 ElasticPoolStorageBelowLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolCapacityStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolStorageAboveLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\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 ElasticPoolUpdateHkNotAllowed - The elastic pool cannot lower its service tier from Premium to Standard or Basic since one or more of its databases use memory-optimized objects.\n\n * 400 RegionDoesNotAllowProvisioning - The selected location is not accepting new Windows Azure SQL Database servers. This may change at a later time.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 ElasticPoolDbDtuMinBelowLimit - The requested per database DTU min is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxBelowLimit - The requested per database VCore max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxAboveLimit - The requested per database VCore max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMax - Attempting to set the VCore max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbVcoreMinBelowLimit - The requested per database VCore min is too low for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMin - Attempting to set the VCore min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 InvalidInputValueDatabaseVcoreMinLargerThanMax - Attempting to set the VCore min per database higher than the VCore max per database.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 InvalidPublicMaintenanceConfiguration - User tried to specify public maintenance configuration which cannot be converted to internal id (malformed or wrong region).\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ElasticPoolNotFound - The specified elastic pool does not exist for the specified server.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 405 NotSupported - This functionality is not supported.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 ElasticPoolUpdateLinksNotInCatchup - Cannot update elastic pool while one of its databases is performing a copy or geo-replication failover operation.\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.\n\n * 503 ServiceTemporarilyUnavailable - Feature temporarily unavailable." + "description": "*** Error Responses: ***\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 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidTierSkuCombination - The specified tier does not support the specified sku.\n\n * 400 ServerQuotaExceeded - The server reached its limit for allowed Database Throughput Unit.\n\n * 400 ElasticPoolAlreadyExists - The server already contains an elastic pool with the specified name.\n\n * 400 InvalidInputValueForEdition - Specified edition is not supported for elastic pool provisioning.\n\n * 400 ElasticPoolDtuBelowLimit - The requested DTU value is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDtuAboveLimit - The requested DTU value is too high for the requested elastic pool service tier.\n\n * 400 InvalidMaxSize - Invalid max size.\n\n * 400 ElasticPoolDbDtuMaxBelowLimit - The requested per database DTU max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbDtuMaxAboveLimit - The requested per database DTU max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMax - Attempting to set the DTU max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbDtuMinAboveLimit - The requested DTU min per database is too high for the requested service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMin - Attempting to set the DTU min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\n\n * 400 ElasticPoolDtuUnsupported - User tried to create or update an elastic pool with a DTU capacity that is not supported.\n\n * 400 ElasticPoolStorageAboveLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolsNotEnabled - Elastic pools have not been enabled in this region.\n\n * 400 ElasticPoolNotEmpty - Request to delete an elastic pool that is not empty.\n\n * 400 ElasticPoolStorageBelowLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedGB - Attempting to set the elastic pool storage limit in gb which doesn't match the allowed values.\n\n * 400 ElasticPoolDatabaseLimit - The elastic pool has reached its limit for number of databases.\n\n * 400 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 400 ElasticPoolBusy - A management operation was attempted on an elastic pool which is busy.\n\n * 400 InvalidInputValueDatabaseDtuMinLargerThanMax - Attempting to set the DTU min per database higher than the DTU max per database.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\n\n * 400 ElasticPoolStorageBelowLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolCapacityStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolStorageAboveLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\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 SourceDatabaseEditionCouldNotBeUpgraded - The source database cannot have higher edition than the target database.\n\n * 400 TargetDatabaseEditionCouldNotBeDowngraded - The target database cannot have lower edition than the source database.\n\n * 400 ElasticPoolUpdateHkNotAllowed - The elastic pool cannot lower its service tier from Premium to Standard or Basic since one or more of its databases use memory-optimized objects.\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currently in progress.\n\n * 400 RegionDoesNotAllowProvisioning - The selected location is not accepting new Windows Azure SQL Database servers. This may change at a later time.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 ElasticPoolDbDtuMinBelowLimit - The requested per database DTU min is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxBelowLimit - The requested per database VCore max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxAboveLimit - The requested per database VCore max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMax - Attempting to set the VCore max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbVcoreMinBelowLimit - The requested per database VCore min is too low for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMin - Attempting to set the VCore min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 PartnerDBNotCompatibleForSGXEnclave - Attempt to set GeoDR link or update SLO for enclave enabled database is only supported when both database are running on DC-series hardware.\n\n * 400 InvalidInputValueDatabaseVcoreMinLargerThanMax - Attempting to set the VCore min per database higher than the VCore max per database.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 InvalidPublicMaintenanceConfiguration - User tried to specify public maintenance configuration which cannot be converted to internal id (malformed or wrong region).\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ElasticPoolNotFound - The specified elastic pool does not exist for the specified server.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 405 NotSupported - This functionality is not supported.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 SimultaneousSkuChangeNotAllowed - Service objective change operations cannot run on both databases of a replication relationship at the same time.\n\n * 409 ElasticPoolUpdateLinksNotInCatchup - Cannot update elastic pool while one of its databases is performing a copy or geo-replication failover operation.\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.\n\n * 503 ServiceTemporarilyUnavailable - Feature temporarily unavailable." } }, "x-ms-examples": { @@ -154,7 +154,7 @@ } }, "default": { - "description": "*** Error Responses: ***\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 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidTierSkuCombination - The specified tier does not support the specified sku.\n\n * 400 ServerQuotaExceeded - The server reached its limit for allowed Database Throughput Unit.\n\n * 400 ElasticPoolAlreadyExists - The server already contains an elastic pool with the specified name.\n\n * 400 InvalidInputValueForEdition - Specified edition is not supported for elastic pool provisioning.\n\n * 400 ElasticPoolDtuBelowLimit - The requested DTU value is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDtuAboveLimit - The requested DTU value is too high for the requested elastic pool service tier.\n\n * 400 InvalidMaxSize - Invalid max size.\n\n * 400 ElasticPoolDbDtuMaxBelowLimit - The requested per database DTU max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbDtuMaxAboveLimit - The requested per database DTU max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMax - Attempting to set the DTU max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbDtuMinAboveLimit - The requested DTU min per database is too high for the requested service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMin - Attempting to set the DTU min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\n\n * 400 ElasticPoolDtuUnsupported - User tried to create or update an elastic pool with a DTU capacity that is not supported.\n\n * 400 ElasticPoolStorageAboveLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolsNotEnabled - Elastic pools have not been enabled in this region.\n\n * 400 ElasticPoolNotEmpty - Request to delete an elastic pool that is not empty.\n\n * 400 ElasticPoolStorageBelowLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedGB - Attempting to set the elastic pool storage limit in gb which doesn't match the allowed values.\n\n * 400 ElasticPoolDatabaseLimit - The elastic pool has reached its limit for number of databases.\n\n * 400 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 400 ElasticPoolBusy - A management operation was attempted on an elastic pool which is busy.\n\n * 400 InvalidInputValueDatabaseDtuMinLargerThanMax - Attempting to set the DTU min per database higher than the DTU max per database.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\n\n * 400 ElasticPoolStorageBelowLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolCapacityStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolStorageAboveLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\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 ElasticPoolUpdateHkNotAllowed - The elastic pool cannot lower its service tier from Premium to Standard or Basic since one or more of its databases use memory-optimized objects.\n\n * 400 RegionDoesNotAllowProvisioning - The selected location is not accepting new Windows Azure SQL Database servers. This may change at a later time.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 ElasticPoolDbDtuMinBelowLimit - The requested per database DTU min is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxBelowLimit - The requested per database VCore max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxAboveLimit - The requested per database VCore max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMax - Attempting to set the VCore max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbVcoreMinBelowLimit - The requested per database VCore min is too low for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMin - Attempting to set the VCore min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 InvalidInputValueDatabaseVcoreMinLargerThanMax - Attempting to set the VCore min per database higher than the VCore max per database.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 InvalidPublicMaintenanceConfiguration - User tried to specify public maintenance configuration which cannot be converted to internal id (malformed or wrong region).\n\n * 400 InvalidResourceRequestBody - The resource or resource properties in the request body is empty or invalid.\n\n * 400 InvalidResourceId - Invalid resource identifier.\n\n * 400 InvalidSkuName - Invalid SKU name.\n\n * 400 MismatchedSkuNameAndCapacity - Mismatch between SKU name and capacity.\n\n * 400 MismatchedSkuNameAndTier - Mismatch between SKU name and tier.\n\n * 400 MismatchedSkuNameAndFamily - Mismatch between SKU name and family.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\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 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidTierSkuCombination - The specified tier does not support the specified sku.\n\n * 400 ServerQuotaExceeded - The server reached its limit for allowed Database Throughput Unit.\n\n * 400 ElasticPoolAlreadyExists - The server already contains an elastic pool with the specified name.\n\n * 400 InvalidInputValueForEdition - Specified edition is not supported for elastic pool provisioning.\n\n * 400 ElasticPoolDtuBelowLimit - The requested DTU value is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDtuAboveLimit - The requested DTU value is too high for the requested elastic pool service tier.\n\n * 400 InvalidMaxSize - Invalid max size.\n\n * 400 ElasticPoolDbDtuMaxBelowLimit - The requested per database DTU max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbDtuMaxAboveLimit - The requested per database DTU max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMax - Attempting to set the DTU max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbDtuMinAboveLimit - The requested DTU min per database is too high for the requested service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMin - Attempting to set the DTU min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\n\n * 400 ElasticPoolDtuUnsupported - User tried to create or update an elastic pool with a DTU capacity that is not supported.\n\n * 400 ElasticPoolStorageAboveLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolsNotEnabled - Elastic pools have not been enabled in this region.\n\n * 400 ElasticPoolNotEmpty - Request to delete an elastic pool that is not empty.\n\n * 400 ElasticPoolStorageBelowLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedGB - Attempting to set the elastic pool storage limit in gb which doesn't match the allowed values.\n\n * 400 ElasticPoolDatabaseLimit - The elastic pool has reached its limit for number of databases.\n\n * 400 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 400 ElasticPoolBusy - A management operation was attempted on an elastic pool which is busy.\n\n * 400 InvalidInputValueDatabaseDtuMinLargerThanMax - Attempting to set the DTU min per database higher than the DTU max per database.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\n\n * 400 ElasticPoolStorageBelowLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolCapacityStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolStorageAboveLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\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 ElasticPoolUpdateHkNotAllowed - The elastic pool cannot lower its service tier from Premium to Standard or Basic since one or more of its databases use memory-optimized objects.\n\n * 400 RegionDoesNotAllowProvisioning - The selected location is not accepting new Windows Azure SQL Database servers. This may change at a later time.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 ElasticPoolDbDtuMinBelowLimit - The requested per database DTU min is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxBelowLimit - The requested per database VCore max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxAboveLimit - The requested per database VCore max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMax - Attempting to set the VCore max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbVcoreMinBelowLimit - The requested per database VCore min is too low for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMin - Attempting to set the VCore min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 InvalidInputValueDatabaseVcoreMinLargerThanMax - Attempting to set the VCore min per database higher than the VCore max per database.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 InvalidPublicMaintenanceConfiguration - User tried to specify public maintenance configuration which cannot be converted to internal id (malformed or wrong region).\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ElasticPoolNotFound - The specified elastic pool does not exist for the specified server.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ElasticPoolNotFound - The specified elastic pool does not exist for the specified server.\n\n * 405 NotSupported - This functionality is not supported.\n\n * 405 NotSupported - This functionality is not supported.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 ElasticPoolUpdateLinksNotInCatchup - Cannot update elastic pool while one of its databases is performing a copy or geo-replication failover operation.\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 ServerDisabled - Server is disabled.\n\n * 409 ElasticPoolUpdateLinksNotInCatchup - Cannot update elastic pool while one of its databases is performing a copy or geo-replication failover operation.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 503 ServiceTemporarilyUnavailable - Feature temporarily unavailable.\n\n * 503 ServiceTemporarilyUnavailable - Feature temporarily unavailable." + "description": "*** Error Responses: ***\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 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidTierSkuCombination - The specified tier does not support the specified sku.\n\n * 400 ServerQuotaExceeded - The server reached its limit for allowed Database Throughput Unit.\n\n * 400 ElasticPoolAlreadyExists - The server already contains an elastic pool with the specified name.\n\n * 400 InvalidInputValueForEdition - Specified edition is not supported for elastic pool provisioning.\n\n * 400 ElasticPoolDtuBelowLimit - The requested DTU value is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDtuAboveLimit - The requested DTU value is too high for the requested elastic pool service tier.\n\n * 400 InvalidMaxSize - Invalid max size.\n\n * 400 ElasticPoolDbDtuMaxBelowLimit - The requested per database DTU max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbDtuMaxAboveLimit - The requested per database DTU max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMax - Attempting to set the DTU max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbDtuMinAboveLimit - The requested DTU min per database is too high for the requested service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMin - Attempting to set the DTU min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\n\n * 400 ElasticPoolDtuUnsupported - User tried to create or update an elastic pool with a DTU capacity that is not supported.\n\n * 400 ElasticPoolStorageAboveLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolsNotEnabled - Elastic pools have not been enabled in this region.\n\n * 400 ElasticPoolNotEmpty - Request to delete an elastic pool that is not empty.\n\n * 400 ElasticPoolStorageBelowLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedGB - Attempting to set the elastic pool storage limit in gb which doesn't match the allowed values.\n\n * 400 ElasticPoolDatabaseLimit - The elastic pool has reached its limit for number of databases.\n\n * 400 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 400 ElasticPoolBusy - A management operation was attempted on an elastic pool which is busy.\n\n * 400 InvalidInputValueDatabaseDtuMinLargerThanMax - Attempting to set the DTU min per database higher than the DTU max per database.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\n\n * 400 ElasticPoolStorageBelowLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolCapacityStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolStorageAboveLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\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 SourceDatabaseEditionCouldNotBeUpgraded - The source database cannot have higher edition than the target database.\n\n * 400 TargetDatabaseEditionCouldNotBeDowngraded - The target database cannot have lower edition than the source database.\n\n * 400 ElasticPoolUpdateHkNotAllowed - The elastic pool cannot lower its service tier from Premium to Standard or Basic since one or more of its databases use memory-optimized objects.\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currently in progress.\n\n * 400 RegionDoesNotAllowProvisioning - The selected location is not accepting new Windows Azure SQL Database servers. This may change at a later time.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 ElasticPoolDbDtuMinBelowLimit - The requested per database DTU min is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxBelowLimit - The requested per database VCore max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxAboveLimit - The requested per database VCore max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMax - Attempting to set the VCore max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbVcoreMinBelowLimit - The requested per database VCore min is too low for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMin - Attempting to set the VCore min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 PartnerDBNotCompatibleForSGXEnclave - Attempt to set GeoDR link or update SLO for enclave enabled database is only supported when both database are running on DC-series hardware.\n\n * 400 InvalidInputValueDatabaseVcoreMinLargerThanMax - Attempting to set the VCore min per database higher than the VCore max per database.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 InvalidPublicMaintenanceConfiguration - User tried to specify public maintenance configuration which cannot be converted to internal id (malformed or wrong region).\n\n * 400 InvalidResourceRequestBody - The resource or resource properties in the request body is empty or invalid.\n\n * 400 InvalidResourceId - Invalid resource identifier.\n\n * 400 InvalidSkuName - Invalid SKU name.\n\n * 400 MismatchedSkuNameAndCapacity - Mismatch between SKU name and capacity.\n\n * 400 MismatchedSkuNameAndTier - Mismatch between SKU name and tier.\n\n * 400 MismatchedSkuNameAndFamily - Mismatch between SKU name and family.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\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 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidTierSkuCombination - The specified tier does not support the specified sku.\n\n * 400 ServerQuotaExceeded - The server reached its limit for allowed Database Throughput Unit.\n\n * 400 ElasticPoolAlreadyExists - The server already contains an elastic pool with the specified name.\n\n * 400 InvalidInputValueForEdition - Specified edition is not supported for elastic pool provisioning.\n\n * 400 ElasticPoolDtuBelowLimit - The requested DTU value is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDtuAboveLimit - The requested DTU value is too high for the requested elastic pool service tier.\n\n * 400 InvalidMaxSize - Invalid max size.\n\n * 400 ElasticPoolDbDtuMaxBelowLimit - The requested per database DTU max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbDtuMaxAboveLimit - The requested per database DTU max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMax - Attempting to set the DTU max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbDtuMinAboveLimit - The requested DTU min per database is too high for the requested service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMin - Attempting to set the DTU min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\n\n * 400 ElasticPoolDtuUnsupported - User tried to create or update an elastic pool with a DTU capacity that is not supported.\n\n * 400 ElasticPoolStorageAboveLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolsNotEnabled - Elastic pools have not been enabled in this region.\n\n * 400 ElasticPoolNotEmpty - Request to delete an elastic pool that is not empty.\n\n * 400 ElasticPoolStorageBelowLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedGB - Attempting to set the elastic pool storage limit in gb which doesn't match the allowed values.\n\n * 400 ElasticPoolDatabaseLimit - The elastic pool has reached its limit for number of databases.\n\n * 400 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 400 ElasticPoolBusy - A management operation was attempted on an elastic pool which is busy.\n\n * 400 InvalidInputValueDatabaseDtuMinLargerThanMax - Attempting to set the DTU min per database higher than the DTU max per database.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\n\n * 400 ElasticPoolStorageBelowLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolCapacityStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolStorageAboveLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\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 SourceDatabaseEditionCouldNotBeUpgraded - The source database cannot have higher edition than the target database.\n\n * 400 TargetDatabaseEditionCouldNotBeDowngraded - The target database cannot have lower edition than the source database.\n\n * 400 ElasticPoolUpdateHkNotAllowed - The elastic pool cannot lower its service tier from Premium to Standard or Basic since one or more of its databases use memory-optimized objects.\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currently in progress.\n\n * 400 RegionDoesNotAllowProvisioning - The selected location is not accepting new Windows Azure SQL Database servers. This may change at a later time.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 ElasticPoolDbDtuMinBelowLimit - The requested per database DTU min is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxBelowLimit - The requested per database VCore max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxAboveLimit - The requested per database VCore max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMax - Attempting to set the VCore max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbVcoreMinBelowLimit - The requested per database VCore min is too low for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMin - Attempting to set the VCore min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 PartnerDBNotCompatibleForSGXEnclave - Attempt to set GeoDR link or update SLO for enclave enabled database is only supported when both database are running on DC-series hardware.\n\n * 400 InvalidInputValueDatabaseVcoreMinLargerThanMax - Attempting to set the VCore min per database higher than the VCore max per database.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 InvalidPublicMaintenanceConfiguration - User tried to specify public maintenance configuration which cannot be converted to internal id (malformed or wrong region).\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ElasticPoolNotFound - The specified elastic pool does not exist for the specified server.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ElasticPoolNotFound - The specified elastic pool does not exist for the specified server.\n\n * 405 NotSupported - This functionality is not supported.\n\n * 405 NotSupported - This functionality is not supported.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 SimultaneousSkuChangeNotAllowed - Service objective change operations cannot run on both databases of a replication relationship at the same time.\n\n * 409 ElasticPoolUpdateLinksNotInCatchup - Cannot update elastic pool while one of its databases is performing a copy or geo-replication failover operation.\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 ServerDisabled - Server is disabled.\n\n * 409 SimultaneousSkuChangeNotAllowed - Service objective change operations cannot run on both databases of a replication relationship at the same time.\n\n * 409 ElasticPoolUpdateLinksNotInCatchup - Cannot update elastic pool while one of its databases is performing a copy or geo-replication failover operation.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 503 ServiceTemporarilyUnavailable - Feature temporarily unavailable.\n\n * 503 ServiceTemporarilyUnavailable - Feature temporarily unavailable." }, "202": { "description": "Accepted" @@ -211,7 +211,7 @@ "description": "Deleted the elastic pool" }, "default": { - "description": "*** Error Responses: ***\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 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidTierSkuCombination - The specified tier does not support the specified sku.\n\n * 400 ServerQuotaExceeded - The server reached its limit for allowed Database Throughput Unit.\n\n * 400 ElasticPoolAlreadyExists - The server already contains an elastic pool with the specified name.\n\n * 400 InvalidInputValueForEdition - Specified edition is not supported for elastic pool provisioning.\n\n * 400 ElasticPoolDtuBelowLimit - The requested DTU value is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDtuAboveLimit - The requested DTU value is too high for the requested elastic pool service tier.\n\n * 400 InvalidMaxSize - Invalid max size.\n\n * 400 ElasticPoolDbDtuMaxBelowLimit - The requested per database DTU max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbDtuMaxAboveLimit - The requested per database DTU max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMax - Attempting to set the DTU max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbDtuMinAboveLimit - The requested DTU min per database is too high for the requested service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMin - Attempting to set the DTU min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\n\n * 400 ElasticPoolDtuUnsupported - User tried to create or update an elastic pool with a DTU capacity that is not supported.\n\n * 400 ElasticPoolStorageAboveLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolsNotEnabled - Elastic pools have not been enabled in this region.\n\n * 400 ElasticPoolNotEmpty - Request to delete an elastic pool that is not empty.\n\n * 400 ElasticPoolStorageBelowLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedGB - Attempting to set the elastic pool storage limit in gb which doesn't match the allowed values.\n\n * 400 ElasticPoolDatabaseLimit - The elastic pool has reached its limit for number of databases.\n\n * 400 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 400 ElasticPoolBusy - A management operation was attempted on an elastic pool which is busy.\n\n * 400 InvalidInputValueDatabaseDtuMinLargerThanMax - Attempting to set the DTU min per database higher than the DTU max per database.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\n\n * 400 ElasticPoolStorageBelowLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolCapacityStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolStorageAboveLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\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 ElasticPoolUpdateHkNotAllowed - The elastic pool cannot lower its service tier from Premium to Standard or Basic since one or more of its databases use memory-optimized objects.\n\n * 400 RegionDoesNotAllowProvisioning - The selected location is not accepting new Windows Azure SQL Database servers. This may change at a later time.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 ElasticPoolDbDtuMinBelowLimit - The requested per database DTU min is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxBelowLimit - The requested per database VCore max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxAboveLimit - The requested per database VCore max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMax - Attempting to set the VCore max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbVcoreMinBelowLimit - The requested per database VCore min is too low for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMin - Attempting to set the VCore min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 InvalidInputValueDatabaseVcoreMinLargerThanMax - Attempting to set the VCore min per database higher than the VCore max per database.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 InvalidPublicMaintenanceConfiguration - User tried to specify public maintenance configuration which cannot be converted to internal id (malformed or wrong region).\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ElasticPoolNotFound - The specified elastic pool does not exist for the specified server.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 405 NotSupported - This functionality is not supported.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 ElasticPoolUpdateLinksNotInCatchup - Cannot update elastic pool while one of its databases is performing a copy or geo-replication failover operation.\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.\n\n * 503 ServiceTemporarilyUnavailable - Feature temporarily unavailable." + "description": "*** Error Responses: ***\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 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidTierSkuCombination - The specified tier does not support the specified sku.\n\n * 400 ServerQuotaExceeded - The server reached its limit for allowed Database Throughput Unit.\n\n * 400 ElasticPoolAlreadyExists - The server already contains an elastic pool with the specified name.\n\n * 400 InvalidInputValueForEdition - Specified edition is not supported for elastic pool provisioning.\n\n * 400 ElasticPoolDtuBelowLimit - The requested DTU value is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDtuAboveLimit - The requested DTU value is too high for the requested elastic pool service tier.\n\n * 400 InvalidMaxSize - Invalid max size.\n\n * 400 ElasticPoolDbDtuMaxBelowLimit - The requested per database DTU max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbDtuMaxAboveLimit - The requested per database DTU max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMax - Attempting to set the DTU max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbDtuMinAboveLimit - The requested DTU min per database is too high for the requested service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMin - Attempting to set the DTU min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\n\n * 400 ElasticPoolDtuUnsupported - User tried to create or update an elastic pool with a DTU capacity that is not supported.\n\n * 400 ElasticPoolStorageAboveLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolsNotEnabled - Elastic pools have not been enabled in this region.\n\n * 400 ElasticPoolNotEmpty - Request to delete an elastic pool that is not empty.\n\n * 400 ElasticPoolStorageBelowLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedGB - Attempting to set the elastic pool storage limit in gb which doesn't match the allowed values.\n\n * 400 ElasticPoolDatabaseLimit - The elastic pool has reached its limit for number of databases.\n\n * 400 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 400 ElasticPoolBusy - A management operation was attempted on an elastic pool which is busy.\n\n * 400 InvalidInputValueDatabaseDtuMinLargerThanMax - Attempting to set the DTU min per database higher than the DTU max per database.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\n\n * 400 ElasticPoolStorageBelowLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolCapacityStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolStorageAboveLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\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 SourceDatabaseEditionCouldNotBeUpgraded - The source database cannot have higher edition than the target database.\n\n * 400 TargetDatabaseEditionCouldNotBeDowngraded - The target database cannot have lower edition than the source database.\n\n * 400 ElasticPoolUpdateHkNotAllowed - The elastic pool cannot lower its service tier from Premium to Standard or Basic since one or more of its databases use memory-optimized objects.\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currently in progress.\n\n * 400 RegionDoesNotAllowProvisioning - The selected location is not accepting new Windows Azure SQL Database servers. This may change at a later time.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 ElasticPoolDbDtuMinBelowLimit - The requested per database DTU min is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxBelowLimit - The requested per database VCore max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxAboveLimit - The requested per database VCore max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMax - Attempting to set the VCore max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbVcoreMinBelowLimit - The requested per database VCore min is too low for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMin - Attempting to set the VCore min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 PartnerDBNotCompatibleForSGXEnclave - Attempt to set GeoDR link or update SLO for enclave enabled database is only supported when both database are running on DC-series hardware.\n\n * 400 InvalidInputValueDatabaseVcoreMinLargerThanMax - Attempting to set the VCore min per database higher than the VCore max per database.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 InvalidPublicMaintenanceConfiguration - User tried to specify public maintenance configuration which cannot be converted to internal id (malformed or wrong region).\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ElasticPoolNotFound - The specified elastic pool does not exist for the specified server.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 405 NotSupported - This functionality is not supported.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 SimultaneousSkuChangeNotAllowed - Service objective change operations cannot run on both databases of a replication relationship at the same time.\n\n * 409 ElasticPoolUpdateLinksNotInCatchup - Cannot update elastic pool while one of its databases is performing a copy or geo-replication failover operation.\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.\n\n * 503 ServiceTemporarilyUnavailable - Feature temporarily unavailable." }, "202": { "description": "Deleting the elastic pool is in progress." @@ -271,7 +271,7 @@ } }, "default": { - "description": "*** Error Responses: ***\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 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidTierSkuCombination - The specified tier does not support the specified sku.\n\n * 400 ServerQuotaExceeded - The server reached its limit for allowed Database Throughput Unit.\n\n * 400 ElasticPoolAlreadyExists - The server already contains an elastic pool with the specified name.\n\n * 400 InvalidInputValueForEdition - Specified edition is not supported for elastic pool provisioning.\n\n * 400 ElasticPoolDtuBelowLimit - The requested DTU value is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDtuAboveLimit - The requested DTU value is too high for the requested elastic pool service tier.\n\n * 400 InvalidMaxSize - Invalid max size.\n\n * 400 ElasticPoolDbDtuMaxBelowLimit - The requested per database DTU max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbDtuMaxAboveLimit - The requested per database DTU max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMax - Attempting to set the DTU max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbDtuMinAboveLimit - The requested DTU min per database is too high for the requested service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMin - Attempting to set the DTU min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\n\n * 400 ElasticPoolDtuUnsupported - User tried to create or update an elastic pool with a DTU capacity that is not supported.\n\n * 400 ElasticPoolStorageAboveLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolsNotEnabled - Elastic pools have not been enabled in this region.\n\n * 400 ElasticPoolNotEmpty - Request to delete an elastic pool that is not empty.\n\n * 400 ElasticPoolStorageBelowLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedGB - Attempting to set the elastic pool storage limit in gb which doesn't match the allowed values.\n\n * 400 ElasticPoolDatabaseLimit - The elastic pool has reached its limit for number of databases.\n\n * 400 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 400 ElasticPoolBusy - A management operation was attempted on an elastic pool which is busy.\n\n * 400 InvalidInputValueDatabaseDtuMinLargerThanMax - Attempting to set the DTU min per database higher than the DTU max per database.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\n\n * 400 ElasticPoolStorageBelowLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolCapacityStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolStorageAboveLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\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 ElasticPoolUpdateHkNotAllowed - The elastic pool cannot lower its service tier from Premium to Standard or Basic since one or more of its databases use memory-optimized objects.\n\n * 400 RegionDoesNotAllowProvisioning - The selected location is not accepting new Windows Azure SQL Database servers. This may change at a later time.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 ElasticPoolDbDtuMinBelowLimit - The requested per database DTU min is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxBelowLimit - The requested per database VCore max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxAboveLimit - The requested per database VCore max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMax - Attempting to set the VCore max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbVcoreMinBelowLimit - The requested per database VCore min is too low for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMin - Attempting to set the VCore min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 InvalidInputValueDatabaseVcoreMinLargerThanMax - Attempting to set the VCore min per database higher than the VCore max per database.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 InvalidPublicMaintenanceConfiguration - User tried to specify public maintenance configuration which cannot be converted to internal id (malformed or wrong region).\n\n * 400 InvalidResourceRequestBody - The resource or resource properties in the request body is empty or invalid.\n\n * 400 InvalidResourceId - Invalid resource identifier.\n\n * 400 InvalidSkuName - Invalid SKU name.\n\n * 400 MismatchedSkuNameAndCapacity - Mismatch between SKU name and capacity.\n\n * 400 MismatchedSkuNameAndTier - Mismatch between SKU name and tier.\n\n * 400 MismatchedSkuNameAndFamily - Mismatch between SKU name and family.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\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 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidTierSkuCombination - The specified tier does not support the specified sku.\n\n * 400 ServerQuotaExceeded - The server reached its limit for allowed Database Throughput Unit.\n\n * 400 ElasticPoolAlreadyExists - The server already contains an elastic pool with the specified name.\n\n * 400 InvalidInputValueForEdition - Specified edition is not supported for elastic pool provisioning.\n\n * 400 ElasticPoolDtuBelowLimit - The requested DTU value is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDtuAboveLimit - The requested DTU value is too high for the requested elastic pool service tier.\n\n * 400 InvalidMaxSize - Invalid max size.\n\n * 400 ElasticPoolDbDtuMaxBelowLimit - The requested per database DTU max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbDtuMaxAboveLimit - The requested per database DTU max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMax - Attempting to set the DTU max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbDtuMinAboveLimit - The requested DTU min per database is too high for the requested service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMin - Attempting to set the DTU min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\n\n * 400 ElasticPoolDtuUnsupported - User tried to create or update an elastic pool with a DTU capacity that is not supported.\n\n * 400 ElasticPoolStorageAboveLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolsNotEnabled - Elastic pools have not been enabled in this region.\n\n * 400 ElasticPoolNotEmpty - Request to delete an elastic pool that is not empty.\n\n * 400 ElasticPoolStorageBelowLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedGB - Attempting to set the elastic pool storage limit in gb which doesn't match the allowed values.\n\n * 400 ElasticPoolDatabaseLimit - The elastic pool has reached its limit for number of databases.\n\n * 400 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 400 ElasticPoolBusy - A management operation was attempted on an elastic pool which is busy.\n\n * 400 InvalidInputValueDatabaseDtuMinLargerThanMax - Attempting to set the DTU min per database higher than the DTU max per database.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\n\n * 400 ElasticPoolStorageBelowLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolCapacityStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolStorageAboveLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\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 ElasticPoolUpdateHkNotAllowed - The elastic pool cannot lower its service tier from Premium to Standard or Basic since one or more of its databases use memory-optimized objects.\n\n * 400 RegionDoesNotAllowProvisioning - The selected location is not accepting new Windows Azure SQL Database servers. This may change at a later time.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 ElasticPoolDbDtuMinBelowLimit - The requested per database DTU min is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxBelowLimit - The requested per database VCore max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxAboveLimit - The requested per database VCore max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMax - Attempting to set the VCore max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbVcoreMinBelowLimit - The requested per database VCore min is too low for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMin - Attempting to set the VCore min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 InvalidInputValueDatabaseVcoreMinLargerThanMax - Attempting to set the VCore min per database higher than the VCore max per database.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 InvalidPublicMaintenanceConfiguration - User tried to specify public maintenance configuration which cannot be converted to internal id (malformed or wrong region).\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ElasticPoolNotFound - The specified elastic pool does not exist for the specified server.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ElasticPoolNotFound - The specified elastic pool does not exist for the specified server.\n\n * 405 NotSupported - This functionality is not supported.\n\n * 405 NotSupported - This functionality is not supported.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 ElasticPoolUpdateLinksNotInCatchup - Cannot update elastic pool while one of its databases is performing a copy or geo-replication failover operation.\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 ServerDisabled - Server is disabled.\n\n * 409 ElasticPoolUpdateLinksNotInCatchup - Cannot update elastic pool while one of its databases is performing a copy or geo-replication failover operation.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 503 ServiceTemporarilyUnavailable - Feature temporarily unavailable.\n\n * 503 ServiceTemporarilyUnavailable - Feature temporarily unavailable." + "description": "*** Error Responses: ***\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 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidTierSkuCombination - The specified tier does not support the specified sku.\n\n * 400 ServerQuotaExceeded - The server reached its limit for allowed Database Throughput Unit.\n\n * 400 ElasticPoolAlreadyExists - The server already contains an elastic pool with the specified name.\n\n * 400 InvalidInputValueForEdition - Specified edition is not supported for elastic pool provisioning.\n\n * 400 ElasticPoolDtuBelowLimit - The requested DTU value is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDtuAboveLimit - The requested DTU value is too high for the requested elastic pool service tier.\n\n * 400 InvalidMaxSize - Invalid max size.\n\n * 400 ElasticPoolDbDtuMaxBelowLimit - The requested per database DTU max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbDtuMaxAboveLimit - The requested per database DTU max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMax - Attempting to set the DTU max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbDtuMinAboveLimit - The requested DTU min per database is too high for the requested service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMin - Attempting to set the DTU min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\n\n * 400 ElasticPoolDtuUnsupported - User tried to create or update an elastic pool with a DTU capacity that is not supported.\n\n * 400 ElasticPoolStorageAboveLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolsNotEnabled - Elastic pools have not been enabled in this region.\n\n * 400 ElasticPoolNotEmpty - Request to delete an elastic pool that is not empty.\n\n * 400 ElasticPoolStorageBelowLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedGB - Attempting to set the elastic pool storage limit in gb which doesn't match the allowed values.\n\n * 400 ElasticPoolDatabaseLimit - The elastic pool has reached its limit for number of databases.\n\n * 400 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 400 ElasticPoolBusy - A management operation was attempted on an elastic pool which is busy.\n\n * 400 InvalidInputValueDatabaseDtuMinLargerThanMax - Attempting to set the DTU min per database higher than the DTU max per database.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\n\n * 400 ElasticPoolStorageBelowLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolCapacityStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolStorageAboveLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\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 SourceDatabaseEditionCouldNotBeUpgraded - The source database cannot have higher edition than the target database.\n\n * 400 TargetDatabaseEditionCouldNotBeDowngraded - The target database cannot have lower edition than the source database.\n\n * 400 ElasticPoolUpdateHkNotAllowed - The elastic pool cannot lower its service tier from Premium to Standard or Basic since one or more of its databases use memory-optimized objects.\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currently in progress.\n\n * 400 RegionDoesNotAllowProvisioning - The selected location is not accepting new Windows Azure SQL Database servers. This may change at a later time.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 ElasticPoolDbDtuMinBelowLimit - The requested per database DTU min is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxBelowLimit - The requested per database VCore max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxAboveLimit - The requested per database VCore max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMax - Attempting to set the VCore max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbVcoreMinBelowLimit - The requested per database VCore min is too low for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMin - Attempting to set the VCore min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 PartnerDBNotCompatibleForSGXEnclave - Attempt to set GeoDR link or update SLO for enclave enabled database is only supported when both database are running on DC-series hardware.\n\n * 400 InvalidInputValueDatabaseVcoreMinLargerThanMax - Attempting to set the VCore min per database higher than the VCore max per database.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 InvalidPublicMaintenanceConfiguration - User tried to specify public maintenance configuration which cannot be converted to internal id (malformed or wrong region).\n\n * 400 InvalidResourceRequestBody - The resource or resource properties in the request body is empty or invalid.\n\n * 400 InvalidResourceId - Invalid resource identifier.\n\n * 400 InvalidSkuName - Invalid SKU name.\n\n * 400 MismatchedSkuNameAndCapacity - Mismatch between SKU name and capacity.\n\n * 400 MismatchedSkuNameAndTier - Mismatch between SKU name and tier.\n\n * 400 MismatchedSkuNameAndFamily - Mismatch between SKU name and family.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\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 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidTierSkuCombination - The specified tier does not support the specified sku.\n\n * 400 ServerQuotaExceeded - The server reached its limit for allowed Database Throughput Unit.\n\n * 400 ElasticPoolAlreadyExists - The server already contains an elastic pool with the specified name.\n\n * 400 InvalidInputValueForEdition - Specified edition is not supported for elastic pool provisioning.\n\n * 400 ElasticPoolDtuBelowLimit - The requested DTU value is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDtuAboveLimit - The requested DTU value is too high for the requested elastic pool service tier.\n\n * 400 InvalidMaxSize - Invalid max size.\n\n * 400 ElasticPoolDbDtuMaxBelowLimit - The requested per database DTU max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbDtuMaxAboveLimit - The requested per database DTU max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMax - Attempting to set the DTU max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbDtuMinAboveLimit - The requested DTU min per database is too high for the requested service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMin - Attempting to set the DTU min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\n\n * 400 ElasticPoolDtuUnsupported - User tried to create or update an elastic pool with a DTU capacity that is not supported.\n\n * 400 ElasticPoolStorageAboveLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolsNotEnabled - Elastic pools have not been enabled in this region.\n\n * 400 ElasticPoolNotEmpty - Request to delete an elastic pool that is not empty.\n\n * 400 ElasticPoolStorageBelowLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedGB - Attempting to set the elastic pool storage limit in gb which doesn't match the allowed values.\n\n * 400 ElasticPoolDatabaseLimit - The elastic pool has reached its limit for number of databases.\n\n * 400 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 400 ElasticPoolBusy - A management operation was attempted on an elastic pool which is busy.\n\n * 400 InvalidInputValueDatabaseDtuMinLargerThanMax - Attempting to set the DTU min per database higher than the DTU max per database.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\n\n * 400 ElasticPoolStorageBelowLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolCapacityStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolStorageAboveLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\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 SourceDatabaseEditionCouldNotBeUpgraded - The source database cannot have higher edition than the target database.\n\n * 400 TargetDatabaseEditionCouldNotBeDowngraded - The target database cannot have lower edition than the source database.\n\n * 400 ElasticPoolUpdateHkNotAllowed - The elastic pool cannot lower its service tier from Premium to Standard or Basic since one or more of its databases use memory-optimized objects.\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currently in progress.\n\n * 400 RegionDoesNotAllowProvisioning - The selected location is not accepting new Windows Azure SQL Database servers. This may change at a later time.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 ElasticPoolDbDtuMinBelowLimit - The requested per database DTU min is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxBelowLimit - The requested per database VCore max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxAboveLimit - The requested per database VCore max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMax - Attempting to set the VCore max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbVcoreMinBelowLimit - The requested per database VCore min is too low for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMin - Attempting to set the VCore min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 PartnerDBNotCompatibleForSGXEnclave - Attempt to set GeoDR link or update SLO for enclave enabled database is only supported when both database are running on DC-series hardware.\n\n * 400 InvalidInputValueDatabaseVcoreMinLargerThanMax - Attempting to set the VCore min per database higher than the VCore max per database.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 InvalidPublicMaintenanceConfiguration - User tried to specify public maintenance configuration which cannot be converted to internal id (malformed or wrong region).\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ElasticPoolNotFound - The specified elastic pool does not exist for the specified server.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ElasticPoolNotFound - The specified elastic pool does not exist for the specified server.\n\n * 405 NotSupported - This functionality is not supported.\n\n * 405 NotSupported - This functionality is not supported.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 SimultaneousSkuChangeNotAllowed - Service objective change operations cannot run on both databases of a replication relationship at the same time.\n\n * 409 ElasticPoolUpdateLinksNotInCatchup - Cannot update elastic pool while one of its databases is performing a copy or geo-replication failover operation.\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 ServerDisabled - Server is disabled.\n\n * 409 SimultaneousSkuChangeNotAllowed - Service objective change operations cannot run on both databases of a replication relationship at the same time.\n\n * 409 ElasticPoolUpdateLinksNotInCatchup - Cannot update elastic pool while one of its databases is performing a copy or geo-replication failover operation.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 503 ServiceTemporarilyUnavailable - Feature temporarily unavailable.\n\n * 503 ServiceTemporarilyUnavailable - Feature temporarily unavailable." }, "202": { "description": "Accepted" diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/InstanceFailoverGroups.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/InstanceFailoverGroups.json index 80f7f6bfb508..cf5522e14ebb 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/InstanceFailoverGroups.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/InstanceFailoverGroups.json @@ -56,7 +56,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidPartner - The given partners field in create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestDuplicatePartner - One or more of the provided partner servers are already part of the instance failover group. Please make sure the primary server and all of the given partner servers are unique.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidManagedInstanceRegion - The provided partner managed instance region in the instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPartnerCount - Only one partner region is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPairCount - Only one managed instance pair is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpoint - The readWriteEndpoint field is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalid - The create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupUpdateOrDeleteRequestOnSecondary - Modifications to the instance failover group are not allowed on a secondary server. Execute the request on the primary server.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestNegativeGracePeriodValues - Grace period value for the read-write endpoint must be non-negative.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFields - The property failoverWithDataLossGracePeriodMinutes must be provided when failover policy Automatic is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteFailoverPolicy - The failoverPolicy field for the read-write endpoint is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFieldsForManualPolicy - Grace period value should not be provided when failover policy Manual is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestReadOnlyPropertyModified - The create or update instance failover group request body should not modify the read-only property '{0}'.\n\n * 400 InstanceFailoverGroupFailoverRequestOnPrimary - The failover request should be initiated on the secondary server of instance failover group.\n\n * 400 InstanceFailoverGroupPartnerManagedInstanceFromDifferentSubscription - Primary server and the partner server of failover group are from different subscriptions. Cross subscription for servers of failover group is not allowed.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 GeoDrInstanceSizeMismatch - Primary managed instance and partner managed instance do not have the same storage size.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 GeoDrSecondaryInstanceNotEmpty - Secondary managed instance has user databases. To create an instance failover group the secondary managed instance needs to be empty.\n\n * 400 InstanceFailoverGroupIncorrectNetworkingConfiguration - Networking configuration is incorrect. Primary server's replication traffic cannot reach secondary server.\n\n * 400 IncorrectReplicationLinkState - The operation expects the database to be in an expected state on the replication link.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\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 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 InvalidFailoverGroupRegion - Servers specified in an Instance Failover Group need to reside in different regions to provide isolation.\n\n * 400 InstanceFailoverGroupDoesNotExist - Failover group does not exist on a server.\n\n * 400 InstanceFailoverGroupNotSecondary - Failover cannot be initiated from the primary server in a instance failover group.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 PlannedFailoverTimedOutForDatabase - User invoked planned failover, it timed out, and a specific database appears to be to blame.\n\n * 400 PlannedFailoverTimedOut - User invoked planned failover, and it timed out while trying to contact the partner management service.\n\n * 400 GeoReplicationDatabaseNotSecondary - The operation expects the database to be a replication target.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\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 * 405 UnsupportedReplicationOperation - An unsupported replication operation was initiated on the database.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 InstanceFailoverGroupAlreadyExists - Failover group already exists on a given server.\n\n * 409 InstanceFailoverGroupBusy - Instance failover group is busy with another operation.\n\n * 409 GeoReplicationCannotBecomePrimaryDuringUndo - User attempted to failover or force-terminate a geo-link while the secondary is in a state where it may not be physically consistent and so cannot enter the primary role.\n\n * 409 InstanceFailoverGroupDnsRecordInUse - A duplicate DNS record exists for the requested endpoint.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 InvalidFailoverGroupName - Invalid Instance Failover Group name was supplied.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\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 InvalidOperationForDatabaseNotInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 InvalidDatabaseStateForOperation - The operation is not allowed on the database in its current replication state.\n\n * 409 DuplicateGeoDrRelation - The databases are already in a replication relation. This is a duplicate request.\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + "description": "*** Error Responses: ***\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidPartner - The given partners field in create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestDuplicatePartner - One or more of the provided partner servers are already part of the instance failover group. Please make sure the primary server and all of the given partner servers are unique.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidManagedInstanceRegion - The provided partner managed instance region in the instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPartnerCount - Only one partner region is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPairCount - Only one managed instance pair is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpoint - The readWriteEndpoint field is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalid - The create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupUpdateOrDeleteRequestOnSecondary - Modifications to the instance failover group are not allowed on a secondary server. Execute the request on the primary server.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestNegativeGracePeriodValues - Grace period value for the read-write endpoint must be non-negative.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFields - The property failoverWithDataLossGracePeriodMinutes must be provided when failover policy Automatic is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteFailoverPolicy - The failoverPolicy field for the read-write endpoint is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFieldsForManualPolicy - Grace period value should not be provided when failover policy Manual is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestReadOnlyPropertyModified - The create or update instance failover group request body should not modify the read-only property '{0}'.\n\n * 400 InstanceFailoverGroupFailoverRequestOnPrimary - The failover request should be initiated on the secondary server of instance failover group.\n\n * 400 InstanceFailoverGroupPartnerManagedInstanceFromDifferentSubscription - Primary server and the partner server of failover group are from different subscriptions. Cross subscription for servers of failover group is not allowed.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 GeoDrInstanceSizeMismatch - Primary managed instance and partner managed instance do not have the same storage size.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 GeoDrSecondaryInstanceNotEmpty - Secondary managed instance has user databases. To create an instance failover group the secondary managed instance needs to be empty.\n\n * 400 InstanceFailoverGroupIncorrectNetworkingConfiguration - Networking configuration is incorrect. Primary server's replication traffic cannot reach secondary server.\n\n * 400 IncorrectReplicationLinkState - The operation expects the database to be in an expected state on the replication link.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\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 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 InvalidFailoverGroupRegion - Servers specified in an Instance Failover Group need to reside in different regions to provide isolation.\n\n * 400 InstanceFailoverGroupDoesNotExist - Failover group does not exist on a server.\n\n * 400 InstanceFailoverGroupNotSecondary - Failover cannot be initiated from the primary server in a instance failover group.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 PlannedFailoverTimedOutForDatabase - User invoked planned failover, it timed out, and a specific database appears to be to blame.\n\n * 400 PlannedFailoverTimedOut - User invoked planned failover, and it timed out while trying to contact the partner management service.\n\n * 400 GeoReplicationDatabaseNotSecondary - The operation expects the database to be a replication target.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\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 * 405 UnsupportedReplicationOperation - An unsupported replication operation was initiated on the database.\n\n * 409 ManagedInstanceHasHybridLink - User tried to initiate operation that is not supported when managed instance has a hybrid link configured.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 InstanceFailoverGroupAlreadyExists - Failover group already exists on a given server.\n\n * 409 InstanceFailoverGroupBusy - Instance failover group is busy with another operation.\n\n * 409 GeoReplicationCannotBecomePrimaryDuringUndo - User attempted to failover or force-terminate a geo-link while the secondary is in a state where it may not be physically consistent and so cannot enter the primary role.\n\n * 409 InstanceFailoverGroupDnsRecordInUse - A duplicate DNS record exists for the requested endpoint.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 InvalidFailoverGroupName - Invalid Instance Failover Group name was supplied.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\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 InvalidOperationForDatabaseNotInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 InvalidDatabaseStateForOperation - The operation is not allowed on the database in its current replication state.\n\n * 409 DuplicateGeoDrRelation - The databases are already in a replication relation. This is a duplicate request.\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." } }, "x-ms-examples": { @@ -113,7 +113,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidPartner - The given partners field in create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestDuplicatePartner - One or more of the provided partner servers are already part of the instance failover group. Please make sure the primary server and all of the given partner servers are unique.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidManagedInstanceRegion - The provided partner managed instance region in the instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPartnerCount - Only one partner region is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPairCount - Only one managed instance pair is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpoint - The readWriteEndpoint field is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalid - The create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupUpdateOrDeleteRequestOnSecondary - Modifications to the instance failover group are not allowed on a secondary server. Execute the request on the primary server.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestNegativeGracePeriodValues - Grace period value for the read-write endpoint must be non-negative.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFields - The property failoverWithDataLossGracePeriodMinutes must be provided when failover policy Automatic is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteFailoverPolicy - The failoverPolicy field for the read-write endpoint is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFieldsForManualPolicy - Grace period value should not be provided when failover policy Manual is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestReadOnlyPropertyModified - The create or update instance failover group request body should not modify the read-only property '{0}'.\n\n * 400 InstanceFailoverGroupFailoverRequestOnPrimary - The failover request should be initiated on the secondary server of instance failover group.\n\n * 400 InstanceFailoverGroupPartnerManagedInstanceFromDifferentSubscription - Primary server and the partner server of failover group are from different subscriptions. Cross subscription for servers of failover group is not allowed.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 GeoDrInstanceSizeMismatch - Primary managed instance and partner managed instance do not have the same storage size.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 GeoDrSecondaryInstanceNotEmpty - Secondary managed instance has user databases. To create an instance failover group the secondary managed instance needs to be empty.\n\n * 400 InstanceFailoverGroupIncorrectNetworkingConfiguration - Networking configuration is incorrect. Primary server's replication traffic cannot reach secondary server.\n\n * 400 IncorrectReplicationLinkState - The operation expects the database to be in an expected state on the replication link.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\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 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 InvalidFailoverGroupRegion - Servers specified in an Instance Failover Group need to reside in different regions to provide isolation.\n\n * 400 InstanceFailoverGroupDoesNotExist - Failover group does not exist on a server.\n\n * 400 InstanceFailoverGroupNotSecondary - Failover cannot be initiated from the primary server in a instance failover group.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 PlannedFailoverTimedOutForDatabase - User invoked planned failover, it timed out, and a specific database appears to be to blame.\n\n * 400 PlannedFailoverTimedOut - User invoked planned failover, and it timed out while trying to contact the partner management service.\n\n * 400 GeoReplicationDatabaseNotSecondary - The operation expects the database to be a replication target.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\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 * 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 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 InstanceFailoverGroupAlreadyExists - Failover group already exists on a given server.\n\n * 409 InstanceFailoverGroupBusy - Instance failover group is busy with another operation.\n\n * 409 GeoReplicationCannotBecomePrimaryDuringUndo - User attempted to failover or force-terminate a geo-link while the secondary is in a state where it may not be physically consistent and so cannot enter the primary role.\n\n * 409 InstanceFailoverGroupDnsRecordInUse - A duplicate DNS record exists for the requested endpoint.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 InvalidFailoverGroupName - Invalid Instance Failover Group name was supplied.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\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 InvalidOperationForDatabaseNotInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 InvalidDatabaseStateForOperation - The operation is not allowed on the database in its current replication state.\n\n * 409 DuplicateGeoDrRelation - The databases are already in a replication relation. This is a duplicate request.\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + "description": "*** Error Responses: ***\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidPartner - The given partners field in create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestDuplicatePartner - One or more of the provided partner servers are already part of the instance failover group. Please make sure the primary server and all of the given partner servers are unique.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidManagedInstanceRegion - The provided partner managed instance region in the instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPartnerCount - Only one partner region is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPairCount - Only one managed instance pair is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpoint - The readWriteEndpoint field is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalid - The create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupUpdateOrDeleteRequestOnSecondary - Modifications to the instance failover group are not allowed on a secondary server. Execute the request on the primary server.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestNegativeGracePeriodValues - Grace period value for the read-write endpoint must be non-negative.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFields - The property failoverWithDataLossGracePeriodMinutes must be provided when failover policy Automatic is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteFailoverPolicy - The failoverPolicy field for the read-write endpoint is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFieldsForManualPolicy - Grace period value should not be provided when failover policy Manual is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestReadOnlyPropertyModified - The create or update instance failover group request body should not modify the read-only property '{0}'.\n\n * 400 InstanceFailoverGroupFailoverRequestOnPrimary - The failover request should be initiated on the secondary server of instance failover group.\n\n * 400 InstanceFailoverGroupPartnerManagedInstanceFromDifferentSubscription - Primary server and the partner server of failover group are from different subscriptions. Cross subscription for servers of failover group is not allowed.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 GeoDrInstanceSizeMismatch - Primary managed instance and partner managed instance do not have the same storage size.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 GeoDrSecondaryInstanceNotEmpty - Secondary managed instance has user databases. To create an instance failover group the secondary managed instance needs to be empty.\n\n * 400 InstanceFailoverGroupIncorrectNetworkingConfiguration - Networking configuration is incorrect. Primary server's replication traffic cannot reach secondary server.\n\n * 400 IncorrectReplicationLinkState - The operation expects the database to be in an expected state on the replication link.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\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 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 InvalidFailoverGroupRegion - Servers specified in an Instance Failover Group need to reside in different regions to provide isolation.\n\n * 400 InstanceFailoverGroupDoesNotExist - Failover group does not exist on a server.\n\n * 400 InstanceFailoverGroupNotSecondary - Failover cannot be initiated from the primary server in a instance failover group.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 PlannedFailoverTimedOutForDatabase - User invoked planned failover, it timed out, and a specific database appears to be to blame.\n\n * 400 PlannedFailoverTimedOut - User invoked planned failover, and it timed out while trying to contact the partner management service.\n\n * 400 GeoReplicationDatabaseNotSecondary - The operation expects the database to be a replication target.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\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 * 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 ManagedInstanceHasHybridLink - User tried to initiate operation that is not supported when managed instance has a hybrid link configured.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 InstanceFailoverGroupAlreadyExists - Failover group already exists on a given server.\n\n * 409 InstanceFailoverGroupBusy - Instance failover group is busy with another operation.\n\n * 409 GeoReplicationCannotBecomePrimaryDuringUndo - User attempted to failover or force-terminate a geo-link while the secondary is in a state where it may not be physically consistent and so cannot enter the primary role.\n\n * 409 InstanceFailoverGroupDnsRecordInUse - A duplicate DNS record exists for the requested endpoint.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 InvalidFailoverGroupName - Invalid Instance Failover Group name was supplied.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\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 InvalidOperationForDatabaseNotInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 InvalidDatabaseStateForOperation - The operation is not allowed on the database in its current replication state.\n\n * 409 DuplicateGeoDrRelation - The databases are already in a replication relation. This is a duplicate request.\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." }, "202": { "description": "Accepted" @@ -168,7 +168,7 @@ "description": "Successfully deleted the failover group." }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidPartner - The given partners field in create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestDuplicatePartner - One or more of the provided partner servers are already part of the instance failover group. Please make sure the primary server and all of the given partner servers are unique.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidManagedInstanceRegion - The provided partner managed instance region in the instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPartnerCount - Only one partner region is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPairCount - Only one managed instance pair is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpoint - The readWriteEndpoint field is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalid - The create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupUpdateOrDeleteRequestOnSecondary - Modifications to the instance failover group are not allowed on a secondary server. Execute the request on the primary server.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestNegativeGracePeriodValues - Grace period value for the read-write endpoint must be non-negative.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFields - The property failoverWithDataLossGracePeriodMinutes must be provided when failover policy Automatic is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteFailoverPolicy - The failoverPolicy field for the read-write endpoint is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFieldsForManualPolicy - Grace period value should not be provided when failover policy Manual is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestReadOnlyPropertyModified - The create or update instance failover group request body should not modify the read-only property '{0}'.\n\n * 400 InstanceFailoverGroupFailoverRequestOnPrimary - The failover request should be initiated on the secondary server of instance failover group.\n\n * 400 InstanceFailoverGroupPartnerManagedInstanceFromDifferentSubscription - Primary server and the partner server of failover group are from different subscriptions. Cross subscription for servers of failover group is not allowed.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 GeoDrInstanceSizeMismatch - Primary managed instance and partner managed instance do not have the same storage size.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 GeoDrSecondaryInstanceNotEmpty - Secondary managed instance has user databases. To create an instance failover group the secondary managed instance needs to be empty.\n\n * 400 InstanceFailoverGroupIncorrectNetworkingConfiguration - Networking configuration is incorrect. Primary server's replication traffic cannot reach secondary server.\n\n * 400 IncorrectReplicationLinkState - The operation expects the database to be in an expected state on the replication link.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\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 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 InvalidFailoverGroupRegion - Servers specified in an Instance Failover Group need to reside in different regions to provide isolation.\n\n * 400 InstanceFailoverGroupDoesNotExist - Failover group does not exist on a server.\n\n * 400 InstanceFailoverGroupNotSecondary - Failover cannot be initiated from the primary server in a instance failover group.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 PlannedFailoverTimedOutForDatabase - User invoked planned failover, it timed out, and a specific database appears to be to blame.\n\n * 400 PlannedFailoverTimedOut - User invoked planned failover, and it timed out while trying to contact the partner management service.\n\n * 400 GeoReplicationDatabaseNotSecondary - The operation expects the database to be a replication target.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\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 * 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 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 InstanceFailoverGroupAlreadyExists - Failover group already exists on a given server.\n\n * 409 InstanceFailoverGroupBusy - Instance failover group is busy with another operation.\n\n * 409 GeoReplicationCannotBecomePrimaryDuringUndo - User attempted to failover or force-terminate a geo-link while the secondary is in a state where it may not be physically consistent and so cannot enter the primary role.\n\n * 409 InstanceFailoverGroupDnsRecordInUse - A duplicate DNS record exists for the requested endpoint.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 InvalidFailoverGroupName - Invalid Instance Failover Group name was supplied.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\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 InvalidOperationForDatabaseNotInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 InvalidDatabaseStateForOperation - The operation is not allowed on the database in its current replication state.\n\n * 409 DuplicateGeoDrRelation - The databases are already in a replication relation. This is a duplicate request.\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + "description": "*** Error Responses: ***\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidPartner - The given partners field in create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestDuplicatePartner - One or more of the provided partner servers are already part of the instance failover group. Please make sure the primary server and all of the given partner servers are unique.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidManagedInstanceRegion - The provided partner managed instance region in the instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPartnerCount - Only one partner region is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPairCount - Only one managed instance pair is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpoint - The readWriteEndpoint field is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalid - The create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupUpdateOrDeleteRequestOnSecondary - Modifications to the instance failover group are not allowed on a secondary server. Execute the request on the primary server.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestNegativeGracePeriodValues - Grace period value for the read-write endpoint must be non-negative.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFields - The property failoverWithDataLossGracePeriodMinutes must be provided when failover policy Automatic is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteFailoverPolicy - The failoverPolicy field for the read-write endpoint is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFieldsForManualPolicy - Grace period value should not be provided when failover policy Manual is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestReadOnlyPropertyModified - The create or update instance failover group request body should not modify the read-only property '{0}'.\n\n * 400 InstanceFailoverGroupFailoverRequestOnPrimary - The failover request should be initiated on the secondary server of instance failover group.\n\n * 400 InstanceFailoverGroupPartnerManagedInstanceFromDifferentSubscription - Primary server and the partner server of failover group are from different subscriptions. Cross subscription for servers of failover group is not allowed.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 GeoDrInstanceSizeMismatch - Primary managed instance and partner managed instance do not have the same storage size.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 GeoDrSecondaryInstanceNotEmpty - Secondary managed instance has user databases. To create an instance failover group the secondary managed instance needs to be empty.\n\n * 400 InstanceFailoverGroupIncorrectNetworkingConfiguration - Networking configuration is incorrect. Primary server's replication traffic cannot reach secondary server.\n\n * 400 IncorrectReplicationLinkState - The operation expects the database to be in an expected state on the replication link.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\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 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 InvalidFailoverGroupRegion - Servers specified in an Instance Failover Group need to reside in different regions to provide isolation.\n\n * 400 InstanceFailoverGroupDoesNotExist - Failover group does not exist on a server.\n\n * 400 InstanceFailoverGroupNotSecondary - Failover cannot be initiated from the primary server in a instance failover group.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 PlannedFailoverTimedOutForDatabase - User invoked planned failover, it timed out, and a specific database appears to be to blame.\n\n * 400 PlannedFailoverTimedOut - User invoked planned failover, and it timed out while trying to contact the partner management service.\n\n * 400 GeoReplicationDatabaseNotSecondary - The operation expects the database to be a replication target.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\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 * 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 ManagedInstanceHasHybridLink - User tried to initiate operation that is not supported when managed instance has a hybrid link configured.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 InstanceFailoverGroupAlreadyExists - Failover group already exists on a given server.\n\n * 409 InstanceFailoverGroupBusy - Instance failover group is busy with another operation.\n\n * 409 GeoReplicationCannotBecomePrimaryDuringUndo - User attempted to failover or force-terminate a geo-link while the secondary is in a state where it may not be physically consistent and so cannot enter the primary role.\n\n * 409 InstanceFailoverGroupDnsRecordInUse - A duplicate DNS record exists for the requested endpoint.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 InvalidFailoverGroupName - Invalid Instance Failover Group name was supplied.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\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 InvalidOperationForDatabaseNotInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 InvalidDatabaseStateForOperation - The operation is not allowed on the database in its current replication state.\n\n * 409 DuplicateGeoDrRelation - The databases are already in a replication relation. This is a duplicate request.\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." }, "202": { "description": "Accepted" @@ -218,7 +218,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidPartner - The given partners field in create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestDuplicatePartner - One or more of the provided partner servers are already part of the instance failover group. Please make sure the primary server and all of the given partner servers are unique.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidManagedInstanceRegion - The provided partner managed instance region in the instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPartnerCount - Only one partner region is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPairCount - Only one managed instance pair is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpoint - The readWriteEndpoint field is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalid - The create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupUpdateOrDeleteRequestOnSecondary - Modifications to the instance failover group are not allowed on a secondary server. Execute the request on the primary server.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestNegativeGracePeriodValues - Grace period value for the read-write endpoint must be non-negative.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFields - The property failoverWithDataLossGracePeriodMinutes must be provided when failover policy Automatic is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteFailoverPolicy - The failoverPolicy field for the read-write endpoint is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFieldsForManualPolicy - Grace period value should not be provided when failover policy Manual is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestReadOnlyPropertyModified - The create or update instance failover group request body should not modify the read-only property '{0}'.\n\n * 400 InstanceFailoverGroupFailoverRequestOnPrimary - The failover request should be initiated on the secondary server of instance failover group.\n\n * 400 InstanceFailoverGroupPartnerManagedInstanceFromDifferentSubscription - Primary server and the partner server of failover group are from different subscriptions. Cross subscription for servers of failover group is not allowed.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 GeoDrInstanceSizeMismatch - Primary managed instance and partner managed instance do not have the same storage size.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 GeoDrSecondaryInstanceNotEmpty - Secondary managed instance has user databases. To create an instance failover group the secondary managed instance needs to be empty.\n\n * 400 InstanceFailoverGroupIncorrectNetworkingConfiguration - Networking configuration is incorrect. Primary server's replication traffic cannot reach secondary server.\n\n * 400 IncorrectReplicationLinkState - The operation expects the database to be in an expected state on the replication link.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\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 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 InvalidFailoverGroupRegion - Servers specified in an Instance Failover Group need to reside in different regions to provide isolation.\n\n * 400 InstanceFailoverGroupDoesNotExist - Failover group does not exist on a server.\n\n * 400 InstanceFailoverGroupNotSecondary - Failover cannot be initiated from the primary server in a instance failover group.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 PlannedFailoverTimedOutForDatabase - User invoked planned failover, it timed out, and a specific database appears to be to blame.\n\n * 400 PlannedFailoverTimedOut - User invoked planned failover, and it timed out while trying to contact the partner management service.\n\n * 400 GeoReplicationDatabaseNotSecondary - The operation expects the database to be a replication target.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\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 * 405 UnsupportedReplicationOperation - An unsupported replication operation was initiated on the database.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 InstanceFailoverGroupAlreadyExists - Failover group already exists on a given server.\n\n * 409 InstanceFailoverGroupBusy - Instance failover group is busy with another operation.\n\n * 409 GeoReplicationCannotBecomePrimaryDuringUndo - User attempted to failover or force-terminate a geo-link while the secondary is in a state where it may not be physically consistent and so cannot enter the primary role.\n\n * 409 InstanceFailoverGroupDnsRecordInUse - A duplicate DNS record exists for the requested endpoint.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 InvalidFailoverGroupName - Invalid Instance Failover Group name was supplied.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\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 InvalidOperationForDatabaseNotInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 InvalidDatabaseStateForOperation - The operation is not allowed on the database in its current replication state.\n\n * 409 DuplicateGeoDrRelation - The databases are already in a replication relation. This is a duplicate request.\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + "description": "*** Error Responses: ***\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidPartner - The given partners field in create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestDuplicatePartner - One or more of the provided partner servers are already part of the instance failover group. Please make sure the primary server and all of the given partner servers are unique.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidManagedInstanceRegion - The provided partner managed instance region in the instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPartnerCount - Only one partner region is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPairCount - Only one managed instance pair is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpoint - The readWriteEndpoint field is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalid - The create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupUpdateOrDeleteRequestOnSecondary - Modifications to the instance failover group are not allowed on a secondary server. Execute the request on the primary server.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestNegativeGracePeriodValues - Grace period value for the read-write endpoint must be non-negative.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFields - The property failoverWithDataLossGracePeriodMinutes must be provided when failover policy Automatic is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteFailoverPolicy - The failoverPolicy field for the read-write endpoint is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFieldsForManualPolicy - Grace period value should not be provided when failover policy Manual is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestReadOnlyPropertyModified - The create or update instance failover group request body should not modify the read-only property '{0}'.\n\n * 400 InstanceFailoverGroupFailoverRequestOnPrimary - The failover request should be initiated on the secondary server of instance failover group.\n\n * 400 InstanceFailoverGroupPartnerManagedInstanceFromDifferentSubscription - Primary server and the partner server of failover group are from different subscriptions. Cross subscription for servers of failover group is not allowed.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 GeoDrInstanceSizeMismatch - Primary managed instance and partner managed instance do not have the same storage size.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 GeoDrSecondaryInstanceNotEmpty - Secondary managed instance has user databases. To create an instance failover group the secondary managed instance needs to be empty.\n\n * 400 InstanceFailoverGroupIncorrectNetworkingConfiguration - Networking configuration is incorrect. Primary server's replication traffic cannot reach secondary server.\n\n * 400 IncorrectReplicationLinkState - The operation expects the database to be in an expected state on the replication link.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\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 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 InvalidFailoverGroupRegion - Servers specified in an Instance Failover Group need to reside in different regions to provide isolation.\n\n * 400 InstanceFailoverGroupDoesNotExist - Failover group does not exist on a server.\n\n * 400 InstanceFailoverGroupNotSecondary - Failover cannot be initiated from the primary server in a instance failover group.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 PlannedFailoverTimedOutForDatabase - User invoked planned failover, it timed out, and a specific database appears to be to blame.\n\n * 400 PlannedFailoverTimedOut - User invoked planned failover, and it timed out while trying to contact the partner management service.\n\n * 400 GeoReplicationDatabaseNotSecondary - The operation expects the database to be a replication target.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\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 * 405 UnsupportedReplicationOperation - An unsupported replication operation was initiated on the database.\n\n * 409 ManagedInstanceHasHybridLink - User tried to initiate operation that is not supported when managed instance has a hybrid link configured.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 InstanceFailoverGroupAlreadyExists - Failover group already exists on a given server.\n\n * 409 InstanceFailoverGroupBusy - Instance failover group is busy with another operation.\n\n * 409 GeoReplicationCannotBecomePrimaryDuringUndo - User attempted to failover or force-terminate a geo-link while the secondary is in a state where it may not be physically consistent and so cannot enter the primary role.\n\n * 409 InstanceFailoverGroupDnsRecordInUse - A duplicate DNS record exists for the requested endpoint.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 InvalidFailoverGroupName - Invalid Instance Failover Group name was supplied.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\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 InvalidOperationForDatabaseNotInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 InvalidDatabaseStateForOperation - The operation is not allowed on the database in its current replication state.\n\n * 409 DuplicateGeoDrRelation - The databases are already in a replication relation. This is a duplicate request.\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." } }, "x-ms-pageable": { @@ -271,7 +271,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidPartner - The given partners field in create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestDuplicatePartner - One or more of the provided partner servers are already part of the instance failover group. Please make sure the primary server and all of the given partner servers are unique.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidManagedInstanceRegion - The provided partner managed instance region in the instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPartnerCount - Only one partner region is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPairCount - Only one managed instance pair is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpoint - The readWriteEndpoint field is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalid - The create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupUpdateOrDeleteRequestOnSecondary - Modifications to the instance failover group are not allowed on a secondary server. Execute the request on the primary server.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestNegativeGracePeriodValues - Grace period value for the read-write endpoint must be non-negative.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFields - The property failoverWithDataLossGracePeriodMinutes must be provided when failover policy Automatic is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteFailoverPolicy - The failoverPolicy field for the read-write endpoint is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFieldsForManualPolicy - Grace period value should not be provided when failover policy Manual is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestReadOnlyPropertyModified - The create or update instance failover group request body should not modify the read-only property '{0}'.\n\n * 400 InstanceFailoverGroupFailoverRequestOnPrimary - The failover request should be initiated on the secondary server of instance failover group.\n\n * 400 InstanceFailoverGroupPartnerManagedInstanceFromDifferentSubscription - Primary server and the partner server of failover group are from different subscriptions. Cross subscription for servers of failover group is not allowed.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 GeoDrInstanceSizeMismatch - Primary managed instance and partner managed instance do not have the same storage size.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 GeoDrSecondaryInstanceNotEmpty - Secondary managed instance has user databases. To create an instance failover group the secondary managed instance needs to be empty.\n\n * 400 InstanceFailoverGroupIncorrectNetworkingConfiguration - Networking configuration is incorrect. Primary server's replication traffic cannot reach secondary server.\n\n * 400 IncorrectReplicationLinkState - The operation expects the database to be in an expected state on the replication link.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\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 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 InvalidFailoverGroupRegion - Servers specified in an Instance Failover Group need to reside in different regions to provide isolation.\n\n * 400 InstanceFailoverGroupDoesNotExist - Failover group does not exist on a server.\n\n * 400 InstanceFailoverGroupNotSecondary - Failover cannot be initiated from the primary server in a instance failover group.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 PlannedFailoverTimedOutForDatabase - User invoked planned failover, it timed out, and a specific database appears to be to blame.\n\n * 400 PlannedFailoverTimedOut - User invoked planned failover, and it timed out while trying to contact the partner management service.\n\n * 400 GeoReplicationDatabaseNotSecondary - The operation expects the database to be a replication target.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\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 * 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 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 InstanceFailoverGroupAlreadyExists - Failover group already exists on a given server.\n\n * 409 InstanceFailoverGroupBusy - Instance failover group is busy with another operation.\n\n * 409 GeoReplicationCannotBecomePrimaryDuringUndo - User attempted to failover or force-terminate a geo-link while the secondary is in a state where it may not be physically consistent and so cannot enter the primary role.\n\n * 409 InstanceFailoverGroupDnsRecordInUse - A duplicate DNS record exists for the requested endpoint.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 InvalidFailoverGroupName - Invalid Instance Failover Group name was supplied.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\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 InvalidOperationForDatabaseNotInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 InvalidDatabaseStateForOperation - The operation is not allowed on the database in its current replication state.\n\n * 409 DuplicateGeoDrRelation - The databases are already in a replication relation. This is a duplicate request.\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + "description": "*** Error Responses: ***\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidPartner - The given partners field in create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestDuplicatePartner - One or more of the provided partner servers are already part of the instance failover group. Please make sure the primary server and all of the given partner servers are unique.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidManagedInstanceRegion - The provided partner managed instance region in the instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPartnerCount - Only one partner region is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPairCount - Only one managed instance pair is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpoint - The readWriteEndpoint field is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalid - The create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupUpdateOrDeleteRequestOnSecondary - Modifications to the instance failover group are not allowed on a secondary server. Execute the request on the primary server.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestNegativeGracePeriodValues - Grace period value for the read-write endpoint must be non-negative.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFields - The property failoverWithDataLossGracePeriodMinutes must be provided when failover policy Automatic is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteFailoverPolicy - The failoverPolicy field for the read-write endpoint is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFieldsForManualPolicy - Grace period value should not be provided when failover policy Manual is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestReadOnlyPropertyModified - The create or update instance failover group request body should not modify the read-only property '{0}'.\n\n * 400 InstanceFailoverGroupFailoverRequestOnPrimary - The failover request should be initiated on the secondary server of instance failover group.\n\n * 400 InstanceFailoverGroupPartnerManagedInstanceFromDifferentSubscription - Primary server and the partner server of failover group are from different subscriptions. Cross subscription for servers of failover group is not allowed.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 GeoDrInstanceSizeMismatch - Primary managed instance and partner managed instance do not have the same storage size.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 GeoDrSecondaryInstanceNotEmpty - Secondary managed instance has user databases. To create an instance failover group the secondary managed instance needs to be empty.\n\n * 400 InstanceFailoverGroupIncorrectNetworkingConfiguration - Networking configuration is incorrect. Primary server's replication traffic cannot reach secondary server.\n\n * 400 IncorrectReplicationLinkState - The operation expects the database to be in an expected state on the replication link.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\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 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 InvalidFailoverGroupRegion - Servers specified in an Instance Failover Group need to reside in different regions to provide isolation.\n\n * 400 InstanceFailoverGroupDoesNotExist - Failover group does not exist on a server.\n\n * 400 InstanceFailoverGroupNotSecondary - Failover cannot be initiated from the primary server in a instance failover group.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 PlannedFailoverTimedOutForDatabase - User invoked planned failover, it timed out, and a specific database appears to be to blame.\n\n * 400 PlannedFailoverTimedOut - User invoked planned failover, and it timed out while trying to contact the partner management service.\n\n * 400 GeoReplicationDatabaseNotSecondary - The operation expects the database to be a replication target.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\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 * 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 ManagedInstanceHasHybridLink - User tried to initiate operation that is not supported when managed instance has a hybrid link configured.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 InstanceFailoverGroupAlreadyExists - Failover group already exists on a given server.\n\n * 409 InstanceFailoverGroupBusy - Instance failover group is busy with another operation.\n\n * 409 GeoReplicationCannotBecomePrimaryDuringUndo - User attempted to failover or force-terminate a geo-link while the secondary is in a state where it may not be physically consistent and so cannot enter the primary role.\n\n * 409 InstanceFailoverGroupDnsRecordInUse - A duplicate DNS record exists for the requested endpoint.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 InvalidFailoverGroupName - Invalid Instance Failover Group name was supplied.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\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 InvalidOperationForDatabaseNotInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 InvalidDatabaseStateForOperation - The operation is not allowed on the database in its current replication state.\n\n * 409 DuplicateGeoDrRelation - The databases are already in a replication relation. This is a duplicate request.\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." }, "202": { "description": "Accepted" @@ -325,7 +325,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidPartner - The given partners field in create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestDuplicatePartner - One or more of the provided partner servers are already part of the instance failover group. Please make sure the primary server and all of the given partner servers are unique.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidManagedInstanceRegion - The provided partner managed instance region in the instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPartnerCount - Only one partner region is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPairCount - Only one managed instance pair is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpoint - The readWriteEndpoint field is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalid - The create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupUpdateOrDeleteRequestOnSecondary - Modifications to the instance failover group are not allowed on a secondary server. Execute the request on the primary server.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestNegativeGracePeriodValues - Grace period value for the read-write endpoint must be non-negative.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFields - The property failoverWithDataLossGracePeriodMinutes must be provided when failover policy Automatic is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteFailoverPolicy - The failoverPolicy field for the read-write endpoint is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFieldsForManualPolicy - Grace period value should not be provided when failover policy Manual is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestReadOnlyPropertyModified - The create or update instance failover group request body should not modify the read-only property '{0}'.\n\n * 400 InstanceFailoverGroupFailoverRequestOnPrimary - The failover request should be initiated on the secondary server of instance failover group.\n\n * 400 InstanceFailoverGroupPartnerManagedInstanceFromDifferentSubscription - Primary server and the partner server of failover group are from different subscriptions. Cross subscription for servers of failover group is not allowed.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 GeoDrInstanceSizeMismatch - Primary managed instance and partner managed instance do not have the same storage size.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 GeoDrSecondaryInstanceNotEmpty - Secondary managed instance has user databases. To create an instance failover group the secondary managed instance needs to be empty.\n\n * 400 InstanceFailoverGroupIncorrectNetworkingConfiguration - Networking configuration is incorrect. Primary server's replication traffic cannot reach secondary server.\n\n * 400 IncorrectReplicationLinkState - The operation expects the database to be in an expected state on the replication link.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\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 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 InvalidFailoverGroupRegion - Servers specified in an Instance Failover Group need to reside in different regions to provide isolation.\n\n * 400 InstanceFailoverGroupDoesNotExist - Failover group does not exist on a server.\n\n * 400 InstanceFailoverGroupNotSecondary - Failover cannot be initiated from the primary server in a instance failover group.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 PlannedFailoverTimedOutForDatabase - User invoked planned failover, it timed out, and a specific database appears to be to blame.\n\n * 400 PlannedFailoverTimedOut - User invoked planned failover, and it timed out while trying to contact the partner management service.\n\n * 400 GeoReplicationDatabaseNotSecondary - The operation expects the database to be a replication target.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\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 * 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 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 InstanceFailoverGroupAlreadyExists - Failover group already exists on a given server.\n\n * 409 InstanceFailoverGroupBusy - Instance failover group is busy with another operation.\n\n * 409 GeoReplicationCannotBecomePrimaryDuringUndo - User attempted to failover or force-terminate a geo-link while the secondary is in a state where it may not be physically consistent and so cannot enter the primary role.\n\n * 409 InstanceFailoverGroupDnsRecordInUse - A duplicate DNS record exists for the requested endpoint.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 InvalidFailoverGroupName - Invalid Instance Failover Group name was supplied.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\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 InvalidOperationForDatabaseNotInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 InvalidDatabaseStateForOperation - The operation is not allowed on the database in its current replication state.\n\n * 409 DuplicateGeoDrRelation - The databases are already in a replication relation. This is a duplicate request.\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + "description": "*** Error Responses: ***\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidPartner - The given partners field in create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestDuplicatePartner - One or more of the provided partner servers are already part of the instance failover group. Please make sure the primary server and all of the given partner servers are unique.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidManagedInstanceRegion - The provided partner managed instance region in the instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPartnerCount - Only one partner region is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPairCount - Only one managed instance pair is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpoint - The readWriteEndpoint field is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalid - The create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupUpdateOrDeleteRequestOnSecondary - Modifications to the instance failover group are not allowed on a secondary server. Execute the request on the primary server.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestNegativeGracePeriodValues - Grace period value for the read-write endpoint must be non-negative.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFields - The property failoverWithDataLossGracePeriodMinutes must be provided when failover policy Automatic is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteFailoverPolicy - The failoverPolicy field for the read-write endpoint is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFieldsForManualPolicy - Grace period value should not be provided when failover policy Manual is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestReadOnlyPropertyModified - The create or update instance failover group request body should not modify the read-only property '{0}'.\n\n * 400 InstanceFailoverGroupFailoverRequestOnPrimary - The failover request should be initiated on the secondary server of instance failover group.\n\n * 400 InstanceFailoverGroupPartnerManagedInstanceFromDifferentSubscription - Primary server and the partner server of failover group are from different subscriptions. Cross subscription for servers of failover group is not allowed.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 GeoDrInstanceSizeMismatch - Primary managed instance and partner managed instance do not have the same storage size.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 GeoDrSecondaryInstanceNotEmpty - Secondary managed instance has user databases. To create an instance failover group the secondary managed instance needs to be empty.\n\n * 400 InstanceFailoverGroupIncorrectNetworkingConfiguration - Networking configuration is incorrect. Primary server's replication traffic cannot reach secondary server.\n\n * 400 IncorrectReplicationLinkState - The operation expects the database to be in an expected state on the replication link.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\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 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 InvalidFailoverGroupRegion - Servers specified in an Instance Failover Group need to reside in different regions to provide isolation.\n\n * 400 InstanceFailoverGroupDoesNotExist - Failover group does not exist on a server.\n\n * 400 InstanceFailoverGroupNotSecondary - Failover cannot be initiated from the primary server in a instance failover group.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 PlannedFailoverTimedOutForDatabase - User invoked planned failover, it timed out, and a specific database appears to be to blame.\n\n * 400 PlannedFailoverTimedOut - User invoked planned failover, and it timed out while trying to contact the partner management service.\n\n * 400 GeoReplicationDatabaseNotSecondary - The operation expects the database to be a replication target.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\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 * 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 ManagedInstanceHasHybridLink - User tried to initiate operation that is not supported when managed instance has a hybrid link configured.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 InstanceFailoverGroupAlreadyExists - Failover group already exists on a given server.\n\n * 409 InstanceFailoverGroupBusy - Instance failover group is busy with another operation.\n\n * 409 GeoReplicationCannotBecomePrimaryDuringUndo - User attempted to failover or force-terminate a geo-link while the secondary is in a state where it may not be physically consistent and so cannot enter the primary role.\n\n * 409 InstanceFailoverGroupDnsRecordInUse - A duplicate DNS record exists for the requested endpoint.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 InvalidFailoverGroupName - Invalid Instance Failover Group name was supplied.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\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 InvalidOperationForDatabaseNotInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 InvalidDatabaseStateForOperation - The operation is not allowed on the database in its current replication state.\n\n * 409 DuplicateGeoDrRelation - The databases are already in a replication relation. This is a duplicate request.\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." }, "202": { "description": "Accepted" diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/LongTermRetentionBackups.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/LongTermRetentionBackups.json index 8425f46ae7a1..ec2ebf07aa1b 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/LongTermRetentionBackups.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/LongTermRetentionBackups.json @@ -76,7 +76,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidLongTermRetentionBackupId - Invalid long term retention backup identifier for SQL DBs.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 LongTermRetentionMismatchingSubscriptionId - The provided subscription id did not match the id in the other input\n\n * 400 LongTermRetentionMismatchingResourceGroupName - The provided resource group name did not match the name in the other input\n\n * 400 LongTermRetentionMismatchingServerName - The provided server name did not match the name in the other input\n\n * 400 LongTermRetentionMigrationParameterMissing - Required parameter missing for the operation.\n\n * 400 LongTermRetentionMigrationSameServerNotSupported - LTR Copy feature is not supported to copy LTR backups within same server.\n\n * 400 LongTermRetentionMigrationTargetServerNotFound - Target server does not exists or is not ready for LTR backup copy operation.\n\n * 400 LongTermRetentionMigrationTargetDatabaseNotFound - Target Database does not exists on the server.\n\n * 400 LongTermRetentionMigrationStorageTypeNotSupported - Specified Backup Storage Redundancy is not supported in target region.\n\n * 400 LongTermRetentionMigrationStorageMismatch - Active backup redundancy of database does not match backup redundancy requested by customer.\n\n * 400 LongTermRetentionMigrationDatabaseTypeNotSupported - LTR migration is only supported for managed instance and Azure SQL DB LTR backups.\n\n * 400 LongTermRetentionMigrationRequestNotSupported - Subscription is not allowed LTR backup Migration feature.\n\n * 400 LongTermRetentionMigrationCrossClusterRequestNotSupported - Source and target subscriptions are not allowed to communicate for LTR backup copy feature.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 LongTermRetentionMigrationBackupNotFound - LTR backup specified does not exists.\n\n * 409 LongTermRetentionMigrationBackupConflict - Another LTR backup with same backup time for target database exists.\n\n * 409 LongTermRetentionMigrationRequestConflict - A conflict operation on this LTR backup is still in progress.\n\n * 500 LongTermRetentionMigrationRequestFailedToStartOnTarget - Failed to start LTR backup copy request in target region.\n\n * 500 LongTermRetentionMigrationRequestCopyFailed - Copy operation failed for LTR backup blobs.\n\n * 500 LongTermRetentionMigrationRestoreVerExceeded - Restore verification failed after max attempts were reached.\n\n * 500 LongTermRetentionMigrationRestoreVerFailed - Restore verification failed." + "description": "*** Error Responses: ***\n\n * 400 InvalidLongTermRetentionBackupId - Invalid long term retention backup identifier for SQL DBs.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 LongTermRetentionMismatchingSubscriptionId - The provided subscription id did not match the id in the other input\n\n * 400 LongTermRetentionMismatchingResourceGroupName - The provided resource group name did not match the name in the other input\n\n * 400 LongTermRetentionMismatchingServerName - The provided server name did not match the name in the other input\n\n * 400 LongTermRetentionMigrationRequestNotSupported - Subscription is not allowed LTR backup Migration feature.\n\n * 400 LongTermRetentionMigrationCrossClusterRequestNotSupported - Source and target subscriptions are not allowed to communicate for LTR backup copy feature.\n\n * 400 LongTermRetentionMigrationParameterMissing - Required parameter missing for the operation.\n\n * 400 LongTermRetentionMigrationSameServerNotSupported - LTR Copy feature is not supported to copy LTR backups within same server.\n\n * 400 LongTermRetentionMigrationTargetServerNotFound - Target server does not exists or is not ready for LTR backup copy operation.\n\n * 400 LongTermRetentionMigrationTargetDatabaseNotFound - Target Database does not exists on the server.\n\n * 400 LongTermRetentionMigrationStorageTypeNotSupported - Specified Backup Storage Redundancy is not supported in target region.\n\n * 400 LongTermRetentionMigrationStorageMismatch - Active backup redundancy of database does not match backup redundancy requested by customer.\n\n * 400 LongTermRetentionMigrationDatabaseTypeNotSupported - LTR migration is only supported for managed instance and Azure SQL DB LTR backups.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 LongTermRetentionMigrationBackupNotFound - LTR backup specified does not exists.\n\n * 409 LongTermRetentionMigrationRequestConflict - A conflict operation on this LTR backup is still in progress.\n\n * 409 LongTermRetentionMigrationBackupConflict - Another LTR backup with same backup time for target database exists.\n\n * 500 LongTermRetentionMigrationRequestFailedToStartOnTarget - Failed to start LTR backup copy request in target region.\n\n * 500 LongTermRetentionMigrationRequestCopyFailed - Copy operation failed for LTR backup blobs.\n\n * 500 LongTermRetentionMigrationRestoreVerExceeded - Restore verification failed after max attempts were reached.\n\n * 500 LongTermRetentionMigrationRestoreVerFailed - Restore verification failed." }, "202": { "description": "Copying the backup is in progress." @@ -150,7 +150,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidLongTermRetentionBackupId - Invalid long term retention backup identifier for SQL DBs.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 LongTermRetentionMismatchingSubscriptionId - The provided subscription id did not match the id in the other input\n\n * 400 LongTermRetentionMismatchingResourceGroupName - The provided resource group name did not match the name in the other input\n\n * 400 LongTermRetentionMismatchingServerName - The provided server name did not match the name in the other input\n\n * 400 LongTermRetentionMigrationParameterMissing - Required parameter missing for the operation.\n\n * 400 LongTermRetentionMigrationSameServerNotSupported - LTR Copy feature is not supported to copy LTR backups within same server.\n\n * 400 LongTermRetentionMigrationTargetServerNotFound - Target server does not exists or is not ready for LTR backup copy operation.\n\n * 400 LongTermRetentionMigrationTargetDatabaseNotFound - Target Database does not exists on the server.\n\n * 400 LongTermRetentionMigrationStorageTypeNotSupported - Specified Backup Storage Redundancy is not supported in target region.\n\n * 400 LongTermRetentionMigrationStorageMismatch - Active backup redundancy of database does not match backup redundancy requested by customer.\n\n * 400 LongTermRetentionMigrationDatabaseTypeNotSupported - LTR migration is only supported for managed instance and Azure SQL DB LTR backups.\n\n * 400 LongTermRetentionMigrationRequestNotSupported - Subscription is not allowed LTR backup Migration feature.\n\n * 400 LongTermRetentionMigrationCrossClusterRequestNotSupported - Source and target subscriptions are not allowed to communicate for LTR backup copy feature.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 LongTermRetentionMigrationBackupNotFound - LTR backup specified does not exists.\n\n * 409 LongTermRetentionMigrationBackupConflict - Another LTR backup with same backup time for target database exists.\n\n * 409 LongTermRetentionMigrationRequestConflict - A conflict operation on this LTR backup is still in progress.\n\n * 500 LongTermRetentionMigrationRequestFailedToStartOnTarget - Failed to start LTR backup copy request in target region.\n\n * 500 LongTermRetentionMigrationRequestCopyFailed - Copy operation failed for LTR backup blobs.\n\n * 500 LongTermRetentionMigrationRestoreVerExceeded - Restore verification failed after max attempts were reached.\n\n * 500 LongTermRetentionMigrationRestoreVerFailed - Restore verification failed." + "description": "*** Error Responses: ***\n\n * 400 InvalidLongTermRetentionBackupId - Invalid long term retention backup identifier for SQL DBs.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 LongTermRetentionMismatchingSubscriptionId - The provided subscription id did not match the id in the other input\n\n * 400 LongTermRetentionMismatchingResourceGroupName - The provided resource group name did not match the name in the other input\n\n * 400 LongTermRetentionMismatchingServerName - The provided server name did not match the name in the other input\n\n * 400 LongTermRetentionMigrationRequestNotSupported - Subscription is not allowed LTR backup Migration feature.\n\n * 400 LongTermRetentionMigrationCrossClusterRequestNotSupported - Source and target subscriptions are not allowed to communicate for LTR backup copy feature.\n\n * 400 LongTermRetentionMigrationParameterMissing - Required parameter missing for the operation.\n\n * 400 LongTermRetentionMigrationSameServerNotSupported - LTR Copy feature is not supported to copy LTR backups within same server.\n\n * 400 LongTermRetentionMigrationTargetServerNotFound - Target server does not exists or is not ready for LTR backup copy operation.\n\n * 400 LongTermRetentionMigrationTargetDatabaseNotFound - Target Database does not exists on the server.\n\n * 400 LongTermRetentionMigrationStorageTypeNotSupported - Specified Backup Storage Redundancy is not supported in target region.\n\n * 400 LongTermRetentionMigrationStorageMismatch - Active backup redundancy of database does not match backup redundancy requested by customer.\n\n * 400 LongTermRetentionMigrationDatabaseTypeNotSupported - LTR migration is only supported for managed instance and Azure SQL DB LTR backups.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 LongTermRetentionMigrationBackupNotFound - LTR backup specified does not exists.\n\n * 409 LongTermRetentionMigrationRequestConflict - A conflict operation on this LTR backup is still in progress.\n\n * 409 LongTermRetentionMigrationBackupConflict - Another LTR backup with same backup time for target database exists.\n\n * 500 LongTermRetentionMigrationRequestFailedToStartOnTarget - Failed to start LTR backup copy request in target region.\n\n * 500 LongTermRetentionMigrationRequestCopyFailed - Copy operation failed for LTR backup blobs.\n\n * 500 LongTermRetentionMigrationRestoreVerExceeded - Restore verification failed after max attempts were reached.\n\n * 500 LongTermRetentionMigrationRestoreVerFailed - Restore verification failed." }, "202": { "description": "Updating the backup is in progress." @@ -215,7 +215,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidLongTermRetentionBackupId - Invalid long term retention backup identifier for SQL DBs.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 LongTermRetentionMismatchingSubscriptionId - The provided subscription id did not match the id in the other input\n\n * 400 LongTermRetentionMismatchingResourceGroupName - The provided resource group name did not match the name in the other input\n\n * 400 LongTermRetentionMismatchingServerName - The provided server name did not match the name in the other input\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ResourceNotFound - The requested resource was not found." + "description": "*** Error Responses: ***\n\n * 400 InvalidLongTermRetentionBackupId - Invalid long term retention backup identifier for SQL DBs.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 LongTermRetentionMismatchingSubscriptionId - The provided subscription id did not match the id in the other input\n\n * 400 LongTermRetentionMismatchingResourceGroupName - The provided resource group name did not match the name in the other input\n\n * 400 LongTermRetentionMismatchingServerName - The provided server name did not match the name in the other input\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." } }, "x-ms-examples": { @@ -271,7 +271,7 @@ "description": "Successfully deleted the backup." }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidLongTermRetentionBackupId - Invalid long term retention backup identifier for SQL DBs.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 LongTermRetentionMismatchingSubscriptionId - The provided subscription id did not match the id in the other input\n\n * 400 LongTermRetentionMismatchingResourceGroupName - The provided resource group name did not match the name in the other input\n\n * 400 LongTermRetentionMismatchingServerName - The provided server name did not match the name in the other input\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found" + "description": "*** Error Responses: ***\n\n * 400 InvalidLongTermRetentionBackupId - Invalid long term retention backup identifier for SQL DBs.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 LongTermRetentionMismatchingSubscriptionId - The provided subscription id did not match the id in the other input\n\n * 400 LongTermRetentionMismatchingResourceGroupName - The provided resource group name did not match the name in the other input\n\n * 400 LongTermRetentionMismatchingServerName - The provided server name did not match the name in the other input\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." }, "202": { "description": "Accepted" @@ -352,7 +352,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found" + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." } }, "x-ms-pageable": { @@ -418,7 +418,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found" + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." } }, "x-ms-pageable": { @@ -491,7 +491,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found" + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." } }, "x-ms-pageable": { @@ -567,7 +567,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidLongTermRetentionBackupId - Invalid long term retention backup identifier for SQL DBs.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 LongTermRetentionMismatchingSubscriptionId - The provided subscription id did not match the id in the other input\n\n * 400 LongTermRetentionMismatchingResourceGroupName - The provided resource group name did not match the name in the other input\n\n * 400 LongTermRetentionMismatchingServerName - The provided server name did not match the name in the other input\n\n * 400 LongTermRetentionMigrationParameterMissing - Required parameter missing for the operation.\n\n * 400 LongTermRetentionMigrationSameServerNotSupported - LTR Copy feature is not supported to copy LTR backups within same server.\n\n * 400 LongTermRetentionMigrationTargetServerNotFound - Target server does not exists or is not ready for LTR backup copy operation.\n\n * 400 LongTermRetentionMigrationTargetDatabaseNotFound - Target Database does not exists on the server.\n\n * 400 LongTermRetentionMigrationStorageTypeNotSupported - Specified Backup Storage Redundancy is not supported in target region.\n\n * 400 LongTermRetentionMigrationStorageMismatch - Active backup redundancy of database does not match backup redundancy requested by customer.\n\n * 400 LongTermRetentionMigrationDatabaseTypeNotSupported - LTR migration is only supported for managed instance and Azure SQL DB LTR backups.\n\n * 400 LongTermRetentionMigrationRequestNotSupported - Subscription is not allowed LTR backup Migration feature.\n\n * 400 LongTermRetentionMigrationCrossClusterRequestNotSupported - Source and target subscriptions are not allowed to communicate for LTR backup copy feature.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 LongTermRetentionMigrationBackupNotFound - LTR backup specified does not exists.\n\n * 409 LongTermRetentionMigrationBackupConflict - Another LTR backup with same backup time for target database exists.\n\n * 409 LongTermRetentionMigrationRequestConflict - A conflict operation on this LTR backup is still in progress.\n\n * 500 LongTermRetentionMigrationRequestFailedToStartOnTarget - Failed to start LTR backup copy request in target region.\n\n * 500 LongTermRetentionMigrationRequestCopyFailed - Copy operation failed for LTR backup blobs.\n\n * 500 LongTermRetentionMigrationRestoreVerExceeded - Restore verification failed after max attempts were reached.\n\n * 500 LongTermRetentionMigrationRestoreVerFailed - Restore verification failed." + "description": "*** Error Responses: ***\n\n * 400 InvalidLongTermRetentionBackupId - Invalid long term retention backup identifier for SQL DBs.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 LongTermRetentionMismatchingSubscriptionId - The provided subscription id did not match the id in the other input\n\n * 400 LongTermRetentionMismatchingResourceGroupName - The provided resource group name did not match the name in the other input\n\n * 400 LongTermRetentionMismatchingServerName - The provided server name did not match the name in the other input\n\n * 400 LongTermRetentionMigrationRequestNotSupported - Subscription is not allowed LTR backup Migration feature.\n\n * 400 LongTermRetentionMigrationCrossClusterRequestNotSupported - Source and target subscriptions are not allowed to communicate for LTR backup copy feature.\n\n * 400 LongTermRetentionMigrationParameterMissing - Required parameter missing for the operation.\n\n * 400 LongTermRetentionMigrationSameServerNotSupported - LTR Copy feature is not supported to copy LTR backups within same server.\n\n * 400 LongTermRetentionMigrationTargetServerNotFound - Target server does not exists or is not ready for LTR backup copy operation.\n\n * 400 LongTermRetentionMigrationTargetDatabaseNotFound - Target Database does not exists on the server.\n\n * 400 LongTermRetentionMigrationStorageTypeNotSupported - Specified Backup Storage Redundancy is not supported in target region.\n\n * 400 LongTermRetentionMigrationStorageMismatch - Active backup redundancy of database does not match backup redundancy requested by customer.\n\n * 400 LongTermRetentionMigrationDatabaseTypeNotSupported - LTR migration is only supported for managed instance and Azure SQL DB LTR backups.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 LongTermRetentionMigrationBackupNotFound - LTR backup specified does not exists.\n\n * 409 LongTermRetentionMigrationRequestConflict - A conflict operation on this LTR backup is still in progress.\n\n * 409 LongTermRetentionMigrationBackupConflict - Another LTR backup with same backup time for target database exists.\n\n * 500 LongTermRetentionMigrationRequestFailedToStartOnTarget - Failed to start LTR backup copy request in target region.\n\n * 500 LongTermRetentionMigrationRequestCopyFailed - Copy operation failed for LTR backup blobs.\n\n * 500 LongTermRetentionMigrationRestoreVerExceeded - Restore verification failed after max attempts were reached.\n\n * 500 LongTermRetentionMigrationRestoreVerFailed - Restore verification failed." }, "202": { "description": "Copying the backup is in progress." @@ -644,7 +644,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidLongTermRetentionBackupId - Invalid long term retention backup identifier for SQL DBs.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 LongTermRetentionMismatchingSubscriptionId - The provided subscription id did not match the id in the other input\n\n * 400 LongTermRetentionMismatchingResourceGroupName - The provided resource group name did not match the name in the other input\n\n * 400 LongTermRetentionMismatchingServerName - The provided server name did not match the name in the other input\n\n * 400 LongTermRetentionMigrationParameterMissing - Required parameter missing for the operation.\n\n * 400 LongTermRetentionMigrationSameServerNotSupported - LTR Copy feature is not supported to copy LTR backups within same server.\n\n * 400 LongTermRetentionMigrationTargetServerNotFound - Target server does not exists or is not ready for LTR backup copy operation.\n\n * 400 LongTermRetentionMigrationTargetDatabaseNotFound - Target Database does not exists on the server.\n\n * 400 LongTermRetentionMigrationStorageTypeNotSupported - Specified Backup Storage Redundancy is not supported in target region.\n\n * 400 LongTermRetentionMigrationStorageMismatch - Active backup redundancy of database does not match backup redundancy requested by customer.\n\n * 400 LongTermRetentionMigrationDatabaseTypeNotSupported - LTR migration is only supported for managed instance and Azure SQL DB LTR backups.\n\n * 400 LongTermRetentionMigrationRequestNotSupported - Subscription is not allowed LTR backup Migration feature.\n\n * 400 LongTermRetentionMigrationCrossClusterRequestNotSupported - Source and target subscriptions are not allowed to communicate for LTR backup copy feature.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 LongTermRetentionMigrationBackupNotFound - LTR backup specified does not exists.\n\n * 409 LongTermRetentionMigrationBackupConflict - Another LTR backup with same backup time for target database exists.\n\n * 409 LongTermRetentionMigrationRequestConflict - A conflict operation on this LTR backup is still in progress.\n\n * 500 LongTermRetentionMigrationRequestFailedToStartOnTarget - Failed to start LTR backup copy request in target region.\n\n * 500 LongTermRetentionMigrationRequestCopyFailed - Copy operation failed for LTR backup blobs.\n\n * 500 LongTermRetentionMigrationRestoreVerExceeded - Restore verification failed after max attempts were reached.\n\n * 500 LongTermRetentionMigrationRestoreVerFailed - Restore verification failed." + "description": "*** Error Responses: ***\n\n * 400 InvalidLongTermRetentionBackupId - Invalid long term retention backup identifier for SQL DBs.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 LongTermRetentionMismatchingSubscriptionId - The provided subscription id did not match the id in the other input\n\n * 400 LongTermRetentionMismatchingResourceGroupName - The provided resource group name did not match the name in the other input\n\n * 400 LongTermRetentionMismatchingServerName - The provided server name did not match the name in the other input\n\n * 400 LongTermRetentionMigrationRequestNotSupported - Subscription is not allowed LTR backup Migration feature.\n\n * 400 LongTermRetentionMigrationCrossClusterRequestNotSupported - Source and target subscriptions are not allowed to communicate for LTR backup copy feature.\n\n * 400 LongTermRetentionMigrationParameterMissing - Required parameter missing for the operation.\n\n * 400 LongTermRetentionMigrationSameServerNotSupported - LTR Copy feature is not supported to copy LTR backups within same server.\n\n * 400 LongTermRetentionMigrationTargetServerNotFound - Target server does not exists or is not ready for LTR backup copy operation.\n\n * 400 LongTermRetentionMigrationTargetDatabaseNotFound - Target Database does not exists on the server.\n\n * 400 LongTermRetentionMigrationStorageTypeNotSupported - Specified Backup Storage Redundancy is not supported in target region.\n\n * 400 LongTermRetentionMigrationStorageMismatch - Active backup redundancy of database does not match backup redundancy requested by customer.\n\n * 400 LongTermRetentionMigrationDatabaseTypeNotSupported - LTR migration is only supported for managed instance and Azure SQL DB LTR backups.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 LongTermRetentionMigrationBackupNotFound - LTR backup specified does not exists.\n\n * 409 LongTermRetentionMigrationRequestConflict - A conflict operation on this LTR backup is still in progress.\n\n * 409 LongTermRetentionMigrationBackupConflict - Another LTR backup with same backup time for target database exists.\n\n * 500 LongTermRetentionMigrationRequestFailedToStartOnTarget - Failed to start LTR backup copy request in target region.\n\n * 500 LongTermRetentionMigrationRequestCopyFailed - Copy operation failed for LTR backup blobs.\n\n * 500 LongTermRetentionMigrationRestoreVerExceeded - Restore verification failed after max attempts were reached.\n\n * 500 LongTermRetentionMigrationRestoreVerFailed - Restore verification failed." }, "202": { "description": "Updating the backup is in progress." @@ -712,7 +712,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidLongTermRetentionBackupId - Invalid long term retention backup identifier for SQL DBs.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 LongTermRetentionMismatchingSubscriptionId - The provided subscription id did not match the id in the other input\n\n * 400 LongTermRetentionMismatchingResourceGroupName - The provided resource group name did not match the name in the other input\n\n * 400 LongTermRetentionMismatchingServerName - The provided server name did not match the name in the other input\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ResourceNotFound - The requested resource was not found." + "description": "*** Error Responses: ***\n\n * 400 InvalidLongTermRetentionBackupId - Invalid long term retention backup identifier for SQL DBs.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 LongTermRetentionMismatchingSubscriptionId - The provided subscription id did not match the id in the other input\n\n * 400 LongTermRetentionMismatchingResourceGroupName - The provided resource group name did not match the name in the other input\n\n * 400 LongTermRetentionMismatchingServerName - The provided server name did not match the name in the other input\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." } }, "x-ms-examples": { @@ -771,7 +771,7 @@ "description": "Successfully deleted the backup." }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidLongTermRetentionBackupId - Invalid long term retention backup identifier for SQL DBs.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 LongTermRetentionMismatchingSubscriptionId - The provided subscription id did not match the id in the other input\n\n * 400 LongTermRetentionMismatchingResourceGroupName - The provided resource group name did not match the name in the other input\n\n * 400 LongTermRetentionMismatchingServerName - The provided server name did not match the name in the other input\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found" + "description": "*** Error Responses: ***\n\n * 400 InvalidLongTermRetentionBackupId - Invalid long term retention backup identifier for SQL DBs.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 LongTermRetentionMismatchingSubscriptionId - The provided subscription id did not match the id in the other input\n\n * 400 LongTermRetentionMismatchingResourceGroupName - The provided resource group name did not match the name in the other input\n\n * 400 LongTermRetentionMismatchingServerName - The provided server name did not match the name in the other input\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." }, "202": { "description": "Accepted" @@ -855,7 +855,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found" + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." } }, "x-ms-pageable": { @@ -924,7 +924,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found" + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." } }, "x-ms-pageable": { @@ -1000,7 +1000,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found" + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." } }, "x-ms-pageable": { diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/LongTermRetentionPolicies.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/LongTermRetentionPolicies.json index 1b90eb8e2799..23f7f135ebdb 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/LongTermRetentionPolicies.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/LongTermRetentionPolicies.json @@ -62,7 +62,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 LongTermRetentionPolicyNotSupported - Long Term Retention is not supported on this database.\n\n * 400 LongTermRetentionPolicyInvalid - Long Term Retention policy is invalid.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ResourceNotFound - The requested resource was not found." + "description": "*** Error Responses: ***\n\n * 400 LongTermRetentionPolicyNotSupported - Long Term Retention is not supported on this database.\n\n * 400 LongTermRetentionPolicyInvalid - Long Term Retention policy is invalid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." } }, "x-ms-examples": { @@ -125,7 +125,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidResourceRequestBody - The resource or resource properties in the request body is empty or invalid.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 LongTermRetentionMissingWeekOfYear - WeekOfYear is required to be set between 1 and 52 in order to set yearly retention.\n\n * 400 LongTermRetentionPolicyNotSupported - Long Term Retention is not supported on this database.\n\n * 400 LongTermRetentionPolicyInvalid - Long Term Retention policy is invalid.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ResourceNotFound - The requested resource was not found." + "description": "*** Error Responses: ***\n\n * 400 InvalidResourceRequestBody - The resource or resource properties in the request body is empty or invalid.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 LongTermRetentionMissingWeekOfYear - WeekOfYear is required to be set between 1 and 52 in order to set yearly retention.\n\n * 400 LongTermRetentionPolicyNotSupported - Long Term Retention is not supported on this database.\n\n * 400 LongTermRetentionPolicyInvalid - Long Term Retention policy is invalid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." }, "202": { "description": "Accepted" @@ -171,7 +171,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 LongTermRetentionPolicyNotSupported - Long Term Retention is not supported on this database.\n\n * 400 LongTermRetentionPolicyInvalid - Long Term Retention policy is invalid.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ResourceNotFound - The requested resource was not found." + "description": "*** Error Responses: ***\n\n * 400 LongTermRetentionPolicyNotSupported - Long Term Retention is not supported on this database.\n\n * 400 LongTermRetentionPolicyInvalid - Long Term Retention policy is invalid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." } }, "x-ms-pageable": { diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ManagedDatabaseVulnerabilityAssessmentRuleBaselines.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ManagedDatabaseVulnerabilityAssessmentRuleBaselines.json index 80a7fccc28c0..e6836a32bb12 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ManagedDatabaseVulnerabilityAssessmentRuleBaselines.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ManagedDatabaseVulnerabilityAssessmentRuleBaselines.json @@ -92,7 +92,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 VulnerabilityAssessmentStorageAuthenticationFailed - Could not authenticate to storage account '{0}' .\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 VulnerabilityAssessmentInvalidStorageAccount - The storage account '{0}' that was defined in the policy is invalid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 VulnerabilityAssessmentRuleDoesNotExists - Rule '{0}' does not exist.\n\n * 404 VulnerabilityAssessmentBaselineDoesNotExists - Baseline does not exist for rule '{0}'\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + "description": "*** Error Responses: ***\n\n * 400 VulnerabilityAssessmentStorageAuthenticationFailed - Could not authenticate to storage account '{0}' .\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 VulnerabilityAssessmentInvalidStorageAccount - The storage account '{0}' that was defined in the policy is invalid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 VulnerabilityAssessmentRuleDoesNotExists - Rule '{0}' does not exist.\n\n * 404 VulnerabilityAssessmentBaselineDoesNotExists - Baseline does not exist for rule '{0}'\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." } }, "x-ms-examples": { @@ -185,7 +185,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 VulnerabilityAssessmentStorageAuthenticationFailed - Could not authenticate to storage account '{0}' .\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 VulnerabilityAssessmentInvalidStorageAccount - The storage account '{0}' that was defined in the policy is invalid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 VulnerabilityAssessmentRuleDoesNotExists - Rule '{0}' does not exist.\n\n * 404 VulnerabilityAssessmentBaselineDoesNotExists - Baseline does not exist for rule '{0}'\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + "description": "*** Error Responses: ***\n\n * 400 VulnerabilityAssessmentStorageAuthenticationFailed - Could not authenticate to storage account '{0}' .\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 VulnerabilityAssessmentInvalidStorageAccount - The storage account '{0}' that was defined in the policy is invalid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 VulnerabilityAssessmentRuleDoesNotExists - Rule '{0}' does not exist.\n\n * 404 VulnerabilityAssessmentBaselineDoesNotExists - Baseline does not exist for rule '{0}'\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." } }, "x-ms-examples": { @@ -266,7 +266,7 @@ "description": "Successfully removed the database vulnerability assessment rule baseline." }, "default": { - "description": "*** Error Responses: ***\n\n * 400 VulnerabilityAssessmentStorageAuthenticationFailed - Could not authenticate to storage account '{0}' .\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 VulnerabilityAssessmentInvalidStorageAccount - The storage account '{0}' that was defined in the policy is invalid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 VulnerabilityAssessmentRuleDoesNotExists - Rule '{0}' does not exist.\n\n * 404 VulnerabilityAssessmentBaselineDoesNotExists - Baseline does not exist for rule '{0}'\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + "description": "*** Error Responses: ***\n\n * 400 VulnerabilityAssessmentStorageAuthenticationFailed - Could not authenticate to storage account '{0}' .\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 VulnerabilityAssessmentInvalidStorageAccount - The storage account '{0}' that was defined in the policy is invalid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 VulnerabilityAssessmentRuleDoesNotExists - Rule '{0}' does not exist.\n\n * 404 VulnerabilityAssessmentBaselineDoesNotExists - Baseline does not exist for rule '{0}'\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." } }, "x-ms-examples": { diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ManagedDatabaseVulnerabilityAssessmentScans.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ManagedDatabaseVulnerabilityAssessmentScans.json index 3b40c6136fe1..9bade6b88c67 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ManagedDatabaseVulnerabilityAssessmentScans.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ManagedDatabaseVulnerabilityAssessmentScans.json @@ -70,7 +70,7 @@ "description": "Successfully executed a Vulnerability Assessment database scan." }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 InvalidVulnerabilityAssessmentScanIdLength - The vulnerability assessment scan ID length must be below {0} characters.\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 409 DatabaseVulnerabilityAssessmentScanIsAlreadyInProgress - Vulnerability Assessment scan is already in progress.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + "description": "*** Error Responses: ***\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 InvalidVulnerabilityAssessmentScanIdLength - The vulnerability assessment scan ID length must be below {0} characters.\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 409 DatabaseVulnerabilityAssessmentScanIsAlreadyInProgress - Vulnerability Assessment scan is already in progress.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." }, "202": { "description": "Successfully started a Vulnerability Assessment database scan." @@ -145,7 +145,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 409 DatabaseVulnerabilityAssessmentScanIsAlreadyInProgress - Vulnerability Assessment scan is already in progress.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 409 DatabaseVulnerabilityAssessmentScanIsAlreadyInProgress - Vulnerability Assessment scan is already in progress.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." }, "201": { "description": "Scan result was converted successfully.", @@ -211,7 +211,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 409 DatabaseVulnerabilityAssessmentScanIsAlreadyInProgress - Vulnerability Assessment scan is already in progress.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 409 DatabaseVulnerabilityAssessmentScanIsAlreadyInProgress - Vulnerability Assessment scan is already in progress.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." } }, "x-ms-pageable": { @@ -281,7 +281,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 409 DatabaseVulnerabilityAssessmentScanIsAlreadyInProgress - Vulnerability Assessment scan is already in progress.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 409 DatabaseVulnerabilityAssessmentScanIsAlreadyInProgress - Vulnerability Assessment scan is already in progress.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." } }, "x-ms-examples": { diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ManagedDatabaseVulnerabilityAssessments.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ManagedDatabaseVulnerabilityAssessments.json index 40111596c285..8e970102312f 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ManagedDatabaseVulnerabilityAssessments.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ManagedDatabaseVulnerabilityAssessments.json @@ -70,7 +70,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentUnsupportedStorageAccount - The provided storage account is unsupported.\n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 400 VulnerabilityAssessmentInsufficientStorageAccountPermissions - Insufficient permissions on the provided storage account.\n\n * 400 VulnerabilityAssessmentStorageAccountIsDisabled - The provided storage account is disabled.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." } }, "x-ms-examples": { @@ -141,7 +141,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentUnsupportedStorageAccount - The provided storage account is unsupported.\n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 400 VulnerabilityAssessmentInsufficientStorageAccountPermissions - Insufficient permissions on the provided storage account.\n\n * 400 VulnerabilityAssessmentStorageAccountIsDisabled - The provided storage account is disabled.\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." }, "201": { "description": "Successfully created the vulnerability assessment.", @@ -209,7 +209,7 @@ "description": "Successfully removed the database vulnerability assessment." }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentUnsupportedStorageAccount - The provided storage account is unsupported.\n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 400 VulnerabilityAssessmentInsufficientStorageAccountPermissions - Insufficient permissions on the provided storage account.\n\n * 400 VulnerabilityAssessmentStorageAccountIsDisabled - The provided storage account is disabled.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." } }, "x-ms-examples": { @@ -259,7 +259,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentUnsupportedStorageAccount - The provided storage account is unsupported.\n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 400 VulnerabilityAssessmentInsufficientStorageAccountPermissions - Insufficient permissions on the provided storage account.\n\n * 400 VulnerabilityAssessmentStorageAccountIsDisabled - The provided storage account is disabled.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." } }, "x-ms-pageable": { diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ManagedInstanceAzureADOnlyAuthentications.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ManagedInstanceAzureADOnlyAuthentications.json index 6ce3eb372b6b..67c9f5ce5e8b 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ManagedInstanceAzureADOnlyAuthentications.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ManagedInstanceAzureADOnlyAuthentications.json @@ -59,7 +59,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidServerAzureADOnlyAuthenticationParameter - User tried to set AzureADOnlyAuthentication parameter to false which is not allowed, please use azureADOnlyAuthentications API instead.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 ManagedInstanceNotInSubscriptionResourceGroup - Specified managed instance does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found.\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + "description": "*** Error Responses: ***\n\n * 400 InvalidServerAzureADOnlyAuthenticationParameter - User tried to set AzureADOnlyAuthentication parameter to false which is not allowed, please use azureADOnlyAuthentications API instead.\n\n * 400 InvalidManagedServerAADOnlyAuthTypePropertyName - Managed Server Azure Active Directory only authentication type should be Default\n\n * 400 InvalidManagedServerAADOnlyAuthNoAADAdminPropertyName - AAD Admin is not configured, AAD Admin must be set before enabling/disabling AAD Only Authentication.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 ManagedInstanceNotInSubscriptionResourceGroup - Specified managed instance does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found.\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 * 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": { @@ -119,7 +119,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidServerAzureADOnlyAuthenticationParameter - User tried to set AzureADOnlyAuthentication parameter to false which is not allowed, please use azureADOnlyAuthentications API instead.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 ManagedInstanceNotInSubscriptionResourceGroup - Specified managed instance does not exist in the specified resource group and subscription.\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 * 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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + "description": "*** Error Responses: ***\n\n * 400 InvalidServerAzureADOnlyAuthenticationParameter - User tried to set AzureADOnlyAuthentication parameter to false which is not allowed, please use azureADOnlyAuthentications API instead.\n\n * 400 InvalidManagedServerAADOnlyAuthTypePropertyName - Managed Server Azure Active Directory only authentication type should be Default\n\n * 400 InvalidManagedServerAADOnlyAuthNoAADAdminPropertyName - AAD Admin is not configured, AAD Admin must be set before enabling/disabling AAD Only Authentication.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 ManagedInstanceNotInSubscriptionResourceGroup - Specified managed instance does not exist in the specified resource group and subscription.\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 * 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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." }, "202": { "description": "Accepted" @@ -177,7 +177,7 @@ "description": "Successfully deleted the Azure Active Directory only property." }, "default": { - "description": "*** Error Responses: ***\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 ManagedInstanceNotInSubscriptionResourceGroup - Specified managed instance does not exist in the specified resource group and subscription.\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 * 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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + "description": "*** Error Responses: ***\n\n * 400 InvalidServerAzureADOnlyAuthenticationParameter - User tried to set AzureADOnlyAuthentication parameter to false which is not allowed, please use azureADOnlyAuthentications API instead.\n\n * 400 InvalidManagedServerAADOnlyAuthTypePropertyName - Managed Server Azure Active Directory only authentication type should be Default\n\n * 400 InvalidManagedServerAADOnlyAuthNoAADAdminPropertyName - AAD Admin is not configured, AAD Admin must be set before enabling/disabling AAD Only Authentication.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 ManagedInstanceNotInSubscriptionResourceGroup - Specified managed instance does not exist in the specified resource group and subscription.\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 * 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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." }, "202": { "description": "Accepted" diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ManagedInstanceKeys.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ManagedInstanceKeys.json index e0d0b7eeed40..ffa656d19e36 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ManagedInstanceKeys.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ManagedInstanceKeys.json @@ -282,6 +282,11 @@ "description": "The key creation date.", "type": "string", "readOnly": true + }, + "autoRotationEnabled": { + "description": "Key auto rotation opt-in flag. Either true or false.", + "type": "boolean", + "readOnly": true } } }, diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ManagedInstanceVulnerabilityAssessments.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ManagedInstanceVulnerabilityAssessments.json index 7ddd0b3bfe6a..9307739fd88a 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ManagedInstanceVulnerabilityAssessments.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ManagedInstanceVulnerabilityAssessments.json @@ -63,7 +63,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found" + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 400 VulnerabilityAssessmentInsufficientStorageAccountPermissions - Insufficient permissions on the provided storage account.\n\n * 400 VulnerabilityAssessmentStorageAccountIsDisabled - The provided storage account is disabled.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found" } }, "x-ms-examples": { @@ -76,7 +76,7 @@ "tags": [ "ManagedInstanceVulnerabilityAssessments" ], - "description": "Creates or updates the managed instance's vulnerability assessment.", + "description": "Creates or updates the managed instance's vulnerability assessment. Learn more about setting SQL vulnerability assessment with managed identity - https://docs.microsoft.com/azure/azure-sql/database/sql-database-vulnerability-assessment-storage", "operationId": "ManagedInstanceVulnerabilityAssessments_CreateOrUpdate", "parameters": [ { @@ -127,7 +127,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found" + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 400 VulnerabilityAssessmentInsufficientStorageAccountPermissions - Insufficient permissions on the provided storage account.\n\n * 400 VulnerabilityAssessmentStorageAccountIsDisabled - The provided storage account is disabled.\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found" }, "201": { "description": "Successfully created the vulnerability assessment.", @@ -191,7 +191,7 @@ "description": "Successfully removed the managed instance vulnerability assessment." }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found" + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 400 VulnerabilityAssessmentInsufficientStorageAccountPermissions - Insufficient permissions on the provided storage account.\n\n * 400 VulnerabilityAssessmentStorageAccountIsDisabled - The provided storage account is disabled.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found" } }, "x-ms-examples": { @@ -234,7 +234,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found" + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 400 VulnerabilityAssessmentInsufficientStorageAccountPermissions - Insufficient permissions on the provided storage account.\n\n * 400 VulnerabilityAssessmentStorageAccountIsDisabled - The provided storage account is disabled.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found" } }, "x-ms-pageable": { @@ -265,7 +265,7 @@ ] }, "storageContainerSasKey": { - "description": "A shared access signature (SAS Key) that has write access to the blob container specified in 'storageContainerPath' parameter. If 'storageAccountAccessKey' isn't specified, StorageContainerSasKey is required.", + "description": "A shared access signature (SAS Key) that has write access to the blob container specified in 'storageContainerPath' parameter. If 'storageAccountAccessKey' isn't specified, StorageContainerSasKey is required. Applies only if the storage account is not behind a Vnet or a firewall", "type": "string", "x-ms-mutability": [ "create", @@ -273,7 +273,7 @@ ] }, "storageAccountAccessKey": { - "description": "Specifies the identifier key of the storage account for vulnerability assessment scan results. If 'StorageContainerSasKey' isn't specified, storageAccountAccessKey is required.", + "description": "Specifies the identifier key of the storage account for vulnerability assessment scan results. If 'StorageContainerSasKey' isn't specified, storageAccountAccessKey is required. Applies only if the storage account is not behind a Vnet or a firewall", "type": "string", "x-ms-mutability": [ "create", diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ManagedInstances.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ManagedInstances.json index 42478916844f..84c7e9cb35ab 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ManagedInstances.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ManagedInstances.json @@ -34,6 +34,13 @@ "required": true, "type": "string" }, + { + "name": "$expand", + "in": "query", + "description": "The child resources to include in the response.", + "required": false, + "type": "string" + }, { "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" }, @@ -58,6 +65,55 @@ "x-ms-examples": { "List managed instances by instance pool": { "$ref": "./examples/ManagedInstanceListByInstancePool.json" + }, + "List managed instances by instance pool with expand equals administrators": { + "$ref": "./examples/ManagedInstanceListByInstancePoolWithExpandEqualsAdministrators.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Sql/managedInstances": { + "get": { + "tags": [ + "ManagedInstances" + ], + "description": "Gets a list of all managed instances in the subscription.", + "operationId": "ManagedInstances_List", + "parameters": [ + { + "name": "$expand", + "in": "query", + "description": "The child resources to include in the response.", + "required": false, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of managed instances.", + "schema": { + "$ref": "#/definitions/ManagedInstanceListResult" + } + }, + "default": { + "description": "*** Error Responses: ***" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List managed instances": { + "$ref": "./examples/ManagedInstanceList.json" + }, + "List managed instances with expand equals administrators": { + "$ref": "./examples/ManagedInstanceListWithExpandEqualsAdministrators.json" } } } @@ -73,6 +129,13 @@ { "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" }, + { + "name": "$expand", + "in": "query", + "description": "The child resources to include in the response.", + "required": false, + "type": "string" + }, { "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" }, @@ -97,6 +160,9 @@ "x-ms-examples": { "List managed instances by resource group": { "$ref": "./examples/ManagedInstanceListByResourceGroup.json" + }, + "List managed instances by resource group with $expand=administrators": { + "$ref": "./examples/ManagedInstanceListByResourceGroupWithExpandEqualsAdministrators.json" } } } @@ -115,6 +181,13 @@ { "$ref": "#/parameters/ManagedInstanceNameParameter" }, + { + "name": "$expand", + "in": "query", + "description": "The child resources to include in the response.", + "required": false, + "type": "string" + }, { "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" }, @@ -136,6 +209,9 @@ "x-ms-examples": { "Get managed instance": { "$ref": "./examples/ManagedInstanceGet.json" + }, + "Get managed instance with $expand=administrators": { + "$ref": "./examples/ManagedInstanceGetWithExpandEqualsAdministrators.json" } } }, @@ -176,7 +252,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 HkCannotSwitchToInactive - The database cannot proceed with pricing-tier update as it has memory-optimized objects. Please drop such objects and try again.\n\n * 400 ManagedInstanceInvalidStorageSizeLessThenCurrentSizeUsed - Invalid storage size: Storage size limit ({0} GB) is less that current storage used ({1} GB). Please specify higher storage size limit.\n\n * 400 InstanceTimezoneUpdateNotSupported - Instance timezone update not supported.\n\n * 400 CreateManagedInstanceWithNonDefaultTimezoneNotSupported - Create Managed Instance with non-default timezone not supported.\n\n * 400 ManagedInstanceIpAddressRangeLimit - Cannot perform creation/scaling of the managed instance as there are not enough available IP addresses in the subnet for performing the operation.\n\n * 400 VnetDelegationNotAllowed - User tried to inject Managed Server to subnet which is delegated.\n\n * 400 SubnetHasResourcesOfDifferentType - User tried to create MI in subnet that has resources of different type.\n\n * 400 UpdateManagedServerWithMaintenanceWindowNotAllowed - Update of Managed Instance with maintenance window settings is not allowed.\n\n * 400 VnetPrepareNIPFailed - User tried to prepare subnet that has a conflict with NetworkIntentPolicy.\n\n * 400 InvalidUsername - Supplied user name contains invalid characters.\n\n * 400 ManagedInstanceDeprecatedHardwareFamily - Changing the hardware generation to deprecated {0} generation is not possible.\n\n * 400 ManagedInstanceBackupStorageTypeNotSupported - Backup storage type parameter is not allowed in the instance update operation.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 InstancePoolNotEnoughCapacity - An instance pool does not have enough capacity\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 ManagedInstanceZoneRedudantFeatureNotSupported - ZoneRedundant feature is not supported for the selected service tier. For more details visit aka.ms/sqlmi-service-tier-characteristics.\n\n * 400 ManagedInstanceZoneRedudantFeatureCantBeEnabled - Enabling zoneRedundant feature is not possible once managed instance is created. For more details visit aka.ms/sqlmi-high-availability.\n\n * 400 ManagedInstanceZoneRedudantFeatureCantBeDisabled - Disabling zoneRedundant feature is not possible once managed instance is created. For more details visit aka.ms/sqlmi-high-availability.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 ManagedInstanceSloUpdateFailed - SLO '{0}' operation cannot succeed as the memory usage of '{1}' exceeds the quota.\n\n * 400 ManagedInstanceLocalStorageUpdateSloDisabled - Update SLO for managed instances with local storage is not supported yet.\n\n * 400 InvalidLoginName - The provided login name is invalid.\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 PasswordTooShort - The provided password is too short\n\n * 400 PasswordTooLong - The provided password is too long.\n\n * 400 PasswordNotComplex - The provided password is not complex enough.\n\n * 400 GatewayInvalidEdition - '{0}' is not a valid database edition in this version of SQL Server.\n\n * 400 InvalidSubnetResourceId - The provided subnet resource ID for the managed instance create or update is invalid.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 InvalidLocation - An invalid location was specified.\n\n * 400 VnetInWrongRegion - Virtual network is in wrong region.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 VnetAddressRangeError - Virtual network address range is invalid.\n\n * 400 VnetConfigIsNotAllowed - Virtual network configuration is not allowed.\n\n * 400 InvalidCollation - Invalid collation.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 ManagedInstanceClassicVnetNotSupported - Managed Instance cannot be joined to a classic virtual network.\n\n * 400 AlterDbDeactivatedNotSupported - Database Operation failed for Server '{0}', Database '{1}' due to unexpected delay. Please try again.\n\n * 400 RegionDoesNotAllowProvisioning - The selected location is not accepting new Windows Azure SQL Database servers. This may change at a later time.\n\n * 400 VnetConfigHasNsg - User tried to inject Managed Server subnet with Network Security Groups.\n\n * 400 VnetConfigHasNoUdr - User tried to inject Managed Server subnet without default User Defined Route Table.\n\n * 400 VnetConfigHasInvalidUdr - User tried to inject Managed Server subnet with invalid User Defined Route Table.\n\n * 400 VnetConfigHasInvalidDns - User tried to inject Managed Server subnet with invalid custom DNS.\n\n * 400 VnetConfigHasServiceEndpoints - User tried to inject Managed Server subnet with service endpoints.\n\n * 400 VnetSubnetIsInUse - User tried to inject Managed Server subnet that is not empty.\n\n * 400 VnetSubnetIsLocked - User tried to inject Managed Server subnet that is in locked scope.\n\n * 400 VnetSubnetIsGateway - User tried to inject Managed Server subnet that is Gateway subnet.\n\n * 400 VnetSubnetIsUnknown - User tried to inject Managed Server subnet that does not exist.\n\n * 400 VnetSubnetConflictWithIntendedPolicy - User tried to inject Managed Server subnet that has a conflict with IntendedPolicy.\n\n * 400 NameAlreadyExists - The provided name already exists.\n\n * 400 ManagedInstanceInvalidEditionForSku - The specified edition {0} is not consistent with the specified SKU {1}.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 ManagedInstanceInvalidLicenseType - The specified license type {0} is not valid.\n\n * 400 ManagedInstanceUpdateSloInProgress - \"The operation could not be completed because a service tier change is in progress for managed instance '{0}.' Please wait for the operation in progress to complete and try again.\"\n\n * 400 VnetResourceNotFound - Resource not found: '{0}'.\n\n * 400 InvalidTimezone - Invalid timezone.\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 InstanceCollationUpdateNotSupported - User cannot change instance collation on Managed Instance.\n\n * 400 CreateManagedInstanceWithNonDefaultCollationNotSupported - User can create a Managed Instance only with collation 'SQL_Latin1_General_CP1_CI_AS'.\n\n * 400 ManagedInstanceOperationInProgress - The operation could not be completed because {0} operation is in progress. Please wait for the operation in progress to complete and try again.\n\n * 400 ManagedInstanceExceedMaxAzureStorage - The operation could not be completed because total allocated storage size for General Purpose instance would exceed {0}. Please reduce the number of database files and retry operation.\n\n * 400 ManagedInstanceHasGeoReplica - The operation could not be completed because instance has configured geo replicated secondary instance.\n\n * 400 InvalidManagedServerDnsZonePartner - The resource URI of the geo-primary managed instance specified in the create request is invalid. Please ensure that the property is of the format /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/managedInstances/{managedInstanceName}\n\n * 400 MiGeoRestoreWithWrongBackupStorageRedundancy - Geo-Restore is not allowed for managed instances with LRS/ZRS backup storage redundancy.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 AadOnlyAuthenticationIsEnabled - Azure Active Directory Only Authentication is enabled. Please contact your system administrator.\n\n * 400 ManagementServiceFeatureDisabled - User attempted to use a feature which is disabled.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 InvalidMinimalTlsVersion - Invalid minimal TLS version.\n\n * 400 InvalidResourceId - Invalid resource identifier.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 InvalidMaintenanceWindowSettings - Invalid maintenance window settings.\n\n * 400 InvalidMaintenanceWindowProperty - Invalid maintenance window property was specified.\n\n * 400 InvalidMaintenanceWindowPropertyNull - Invalid maintenance window with required properties null.\n\n * 400 InvalidMaintenanceWindowTypeWithPropertySpecified - Maintenance window type must not have certain properties specified.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 ManagedInstanceNotInSubscriptionResourceGroup - Specified managed instance does not exist in the specified resource group and subscription.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ResourceDoesNotExist - Resource with the name '{0}' does not exist. To continue, specify a valid resource name.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 405 InvalidVcoreValue - vCore value {0} is not valid. Please specify a valid vCore value.\n\n * 405 InvalidHardwareGenerationValue - HardwareGeneration {0} is not valid. Please specify a valid HardwareGeneration value.\n\n * 405 InvalidStorageSizeValue - \"Invalid storage size: {0} GB. Storage size must be specified between {1} and {2} gigabytes, in increments of {3} GB.\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 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ServerAlreadyExists - Duplicate server name.\n\n * 409 ServerOverridePreconditionFailed - Failed to apply server override on category '{0}', because physical db or instance '{1}' in server '{2}' is currently not in 'Ready' or 'Deactivated' state.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 ManagedInstanceIsBusy - The server '{0}' is currently busy. Please wait a few minutes before trying again.\n\n * 409 ServerQuotaExceeded - Server cannot be added to a subscription because it will exceed quota.\n\n * 409 ConflictingManagedInstanceOperation - An operation is currently in progress for the managed instance.\n\n * 409 MiDropFailedOnAuthLocks - User tried to drop last Managed Instance in subnet that has Lock applied on resource(s).\n\n * 409 MiCreateFailedNonDelegatedSubnet - User tried to deploy Managed Instance or Managed Instance pool in subnet that is not delegated to Microsoft.Sql/managedInstances.\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 * 429 ConflictingSubscriptionOperation - An operation is currently in progress for the subscription.\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 * 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 * 429 ConflictingSubscriptionOperation - An operation is currently in progress for the subscription.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 500 GatewayInternalServerError - The server encountered an unexpected exception.\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + "description": "*** Error Responses: ***\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 HkCannotSwitchToInactive - The database cannot proceed with pricing-tier update as it has memory-optimized objects. Please drop such objects and try again.\n\n * 400 ManagedInstanceInvalidStorageSizeLessThenCurrentSizeUsed - Invalid storage size: Storage size limit ({0} GB) is less that current storage used ({1} GB). Please specify higher storage size limit.\n\n * 400 InstanceTimezoneUpdateNotSupported - Instance timezone update not supported.\n\n * 400 CreateManagedInstanceWithNonDefaultTimezoneNotSupported - Create Managed Instance with non-default timezone not supported.\n\n * 400 ManagedInstanceIpAddressRangeLimit - Cannot perform creation/scaling of the managed instance as there are not enough available IP addresses in the subnet for performing the operation.\n\n * 400 VnetDelegationNotAllowed - User tried to inject Managed Server to subnet which is delegated.\n\n * 400 SubnetHasResourcesOfDifferentType - User tried to create MI in subnet that has resources of different type.\n\n * 400 UpdateManagedServerWithMaintenanceWindowNotAllowed - Update of Managed Instance with maintenance window settings is not allowed.\n\n * 400 VnetPrepareNIPFailed - User tried to prepare subnet that has a conflict with NetworkIntentPolicy.\n\n * 400 InvalidUsername - Supplied user name contains invalid characters.\n\n * 400 ManagedInstanceDeprecatedHardwareFamily - Changing the hardware generation to deprecated {0} generation is not possible.\n\n * 400 ManagedInstanceBackupStorageTypeNotSupported - Backup storage type parameter is not allowed in the instance update operation.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 InstancePoolNotEnoughCapacity - An instance pool does not have enough capacity\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 ManagedInstanceZoneRedudantFeatureNotSupported - ZoneRedundant feature is not supported for the selected service tier. For more details visit aka.ms/sqlmi-service-tier-characteristics.\n\n * 400 ManagedInstanceZoneRedudantFeatureCantBeEnabled - Enabling zoneRedundant feature is not possible once managed instance is created. For more details visit aka.ms/sqlmi-high-availability.\n\n * 400 ManagedInstanceZoneRedudantFeatureCantBeDisabled - Disabling zoneRedundant feature is not possible once managed instance is created. For more details visit aka.ms/sqlmi-high-availability.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 ManagedInstanceSloUpdateFailed - SLO '{0}' operation cannot succeed as the memory usage of '{1}' exceeds the quota.\n\n * 400 ManagedInstanceLocalStorageUpdateSloDisabled - Update SLO for managed instances with local storage is not supported yet.\n\n * 400 InvalidLoginName - The provided login name is invalid.\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 PasswordTooShort - The provided password is too short\n\n * 400 PasswordTooLong - The provided password is too long.\n\n * 400 PasswordNotComplex - The provided password is not complex enough.\n\n * 400 GatewayInvalidEdition - '{0}' is not a valid database edition in this version of SQL Server.\n\n * 400 InvalidSubnetResourceId - The provided subnet resource ID for the managed instance create or update is invalid.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 InvalidLocation - An invalid location was specified.\n\n * 400 VnetInWrongRegion - Virtual network is in wrong region.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 VnetAddressRangeError - Virtual network address range is invalid.\n\n * 400 VnetConfigIsNotAllowed - Virtual network configuration is not allowed.\n\n * 400 InvalidCollation - Invalid collation.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 ManagedInstanceClassicVnetNotSupported - Managed Instance cannot be joined to a classic virtual network.\n\n * 400 AlterDbDeactivatedNotSupported - Database Operation failed for Server '{0}', Database '{1}' due to unexpected delay. Please try again.\n\n * 400 RegionDoesNotAllowProvisioning - The selected location is not accepting new Windows Azure SQL Database servers. This may change at a later time.\n\n * 400 VnetConfigHasNsg - User tried to inject Managed Server subnet with Network Security Groups.\n\n * 400 VnetConfigHasNoUdr - User tried to inject Managed Server subnet without default User Defined Route Table.\n\n * 400 VnetConfigHasInvalidUdr - User tried to inject Managed Server subnet with invalid User Defined Route Table.\n\n * 400 VnetConfigHasInvalidDns - User tried to inject Managed Server subnet with invalid custom DNS.\n\n * 400 VnetConfigHasServiceEndpoints - User tried to inject Managed Server subnet with service endpoints.\n\n * 400 VnetSubnetIsInUse - User tried to inject Managed Server subnet that is not empty.\n\n * 400 VnetSubnetIsLocked - User tried to inject Managed Server subnet that is in locked scope.\n\n * 400 VnetSubnetIsGateway - User tried to inject Managed Server subnet that is Gateway subnet.\n\n * 400 VnetSubnetIsUnknown - User tried to inject Managed Server subnet that does not exist.\n\n * 400 VnetSubnetConflictWithIntendedPolicy - User tried to inject Managed Server subnet that has a conflict with IntendedPolicy.\n\n * 400 NameAlreadyExists - The provided name already exists.\n\n * 400 ManagedInstanceInvalidEditionForSku - The specified edition {0} is not consistent with the specified SKU {1}.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 ManagedInstanceInvalidLicenseType - The specified license type {0} is not valid.\n\n * 400 ManagedInstanceUpdateSloInProgress - \"The operation could not be completed because a service tier change is in progress for managed instance '{0}.' Please wait for the operation in progress to complete and try again.\"\n\n * 400 VnetResourceNotFound - Resource not found: '{0}'.\n\n * 400 InvalidTimezone - Invalid timezone.\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 InstanceCollationUpdateNotSupported - User cannot change instance collation on Managed Instance.\n\n * 400 CreateManagedInstanceWithNonDefaultCollationNotSupported - User can create a Managed Instance only with collation 'SQL_Latin1_General_CP1_CI_AS'.\n\n * 400 ManagedInstanceOperationInProgress - The operation could not be completed because {0} operation is in progress. Please wait for the operation in progress to complete and try again.\n\n * 400 ManagedInstanceExceedMaxAzureStorage - The operation could not be completed because total allocated storage size for General Purpose instance would exceed {0}. Please reduce the number of database files and retry operation.\n\n * 400 ManagedInstanceHasGeoReplica - The operation could not be completed because instance has configured geo replicated secondary instance.\n\n * 400 InvalidManagedServerDnsZonePartner - The resource URI of the geo-primary managed instance specified in the create request is invalid. Please ensure that the property is of the format /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/managedInstances/{managedInstanceName}\n\n * 400 MiGeoRestoreWithWrongBackupStorageRedundancy - Geo-Restore is not allowed for managed instances with LRS/ZRS backup storage redundancy.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 AadOnlyAuthenticationIsEnabled - Azure Active Directory Only Authentication is enabled. Please contact your system administrator.\n\n * 400 ManagementServiceFeatureDisabled - User attempted to use a feature which is disabled.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 InvalidMinimalTlsVersion - Invalid minimal TLS version.\n\n * 400 InvalidResourceId - Invalid resource identifier.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 InvalidMaintenanceWindowSettings - Invalid maintenance window settings.\n\n * 400 InvalidMaintenanceWindowProperty - Invalid maintenance window property was specified.\n\n * 400 InvalidMaintenanceWindowPropertyNull - Invalid maintenance window with required properties null.\n\n * 400 InvalidMaintenanceWindowTypeWithPropertySpecified - Maintenance window type must not have certain properties specified.\n\n * 400 AadOnlyAuthenticationIsEnabled - Azure Active Directory Only Authentication is enabled. Please contact your system administrator.\n\n * 400 InvalidExternalAdministratorLogin - Invalid or missing external administrator login name.\n\n * 400 InvalidExternalAdministratorSid - Invalid or missing external administrator object id.\n\n * 400 InvalidExternalAdministratorTenantId - Invalid or missing external administrator tenant id.\n\n * 400 ExternalAdministratorPrincipalType - Invalid or missing external administrator principal type. Please select from User, Application or Group.\n\n * 400 MissingExternalAdministratorWithAadOnlyAuth - In order to use Azure AD Only Authentication, please provide details of an external administrator.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 ManagedInstanceNotInSubscriptionResourceGroup - Specified managed instance does not exist in the specified resource group and subscription.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ResourceDoesNotExist - Resource with the name '{0}' does not exist. To continue, specify a valid resource name.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 405 InvalidVcoreValue - vCore value {0} is not valid. Please specify a valid vCore value.\n\n * 405 InvalidHardwareGenerationValue - HardwareGeneration {0} is not valid. Please specify a valid HardwareGeneration value.\n\n * 405 InvalidStorageSizeValue - \"Invalid storage size: {0} GB. Storage size must be specified between {1} and {2} gigabytes, in increments of {3} GB.\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 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ServerAlreadyExists - Duplicate server name.\n\n * 409 ServerOverridePreconditionFailed - Failed to apply server override on category '{0}', because physical db or instance '{1}' in server '{2}' is currently not in 'Ready' or 'Deactivated' state.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 ManagedInstanceIsBusy - The server '{0}' is currently busy. Please wait a few minutes before trying again.\n\n * 409 ServerQuotaExceeded - Server cannot be added to a subscription because it will exceed quota.\n\n * 409 ConflictingManagedInstanceOperation - An operation is currently in progress for the managed instance.\n\n * 409 MiDropFailedOnAuthLocks - User tried to drop last Managed Instance in subnet that has Lock applied on resource(s).\n\n * 409 MiCreateFailedNonDelegatedSubnet - User tried to deploy Managed Instance or Managed Instance pool in subnet that is not delegated to Microsoft.Sql/managedInstances.\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 * 429 ConflictingSubscriptionOperation - An operation is currently in progress for the subscription.\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 * 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 * 429 ConflictingSubscriptionOperation - An operation is currently in progress for the subscription.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 500 GatewayInternalServerError - The server encountered an unexpected exception.\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." }, "202": { "description": "Accepted" @@ -276,7 +352,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 HkCannotSwitchToInactive - The database cannot proceed with pricing-tier update as it has memory-optimized objects. Please drop such objects and try again.\n\n * 400 ManagedInstanceInvalidStorageSizeLessThenCurrentSizeUsed - Invalid storage size: Storage size limit ({0} GB) is less that current storage used ({1} GB). Please specify higher storage size limit.\n\n * 400 InstanceTimezoneUpdateNotSupported - Instance timezone update not supported.\n\n * 400 CreateManagedInstanceWithNonDefaultTimezoneNotSupported - Create Managed Instance with non-default timezone not supported.\n\n * 400 ManagedInstanceIpAddressRangeLimit - Cannot perform creation/scaling of the managed instance as there are not enough available IP addresses in the subnet for performing the operation.\n\n * 400 VnetDelegationNotAllowed - User tried to inject Managed Server to subnet which is delegated.\n\n * 400 SubnetHasResourcesOfDifferentType - User tried to create MI in subnet that has resources of different type.\n\n * 400 UpdateManagedServerWithMaintenanceWindowNotAllowed - Update of Managed Instance with maintenance window settings is not allowed.\n\n * 400 VnetPrepareNIPFailed - User tried to prepare subnet that has a conflict with NetworkIntentPolicy.\n\n * 400 InvalidUsername - Supplied user name contains invalid characters.\n\n * 400 ManagedInstanceDeprecatedHardwareFamily - Changing the hardware generation to deprecated {0} generation is not possible.\n\n * 400 ManagedInstanceBackupStorageTypeNotSupported - Backup storage type parameter is not allowed in the instance update operation.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 InstancePoolNotEnoughCapacity - An instance pool does not have enough capacity\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 ManagedInstanceZoneRedudantFeatureNotSupported - ZoneRedundant feature is not supported for the selected service tier. For more details visit aka.ms/sqlmi-service-tier-characteristics.\n\n * 400 ManagedInstanceZoneRedudantFeatureCantBeEnabled - Enabling zoneRedundant feature is not possible once managed instance is created. For more details visit aka.ms/sqlmi-high-availability.\n\n * 400 ManagedInstanceZoneRedudantFeatureCantBeDisabled - Disabling zoneRedundant feature is not possible once managed instance is created. For more details visit aka.ms/sqlmi-high-availability.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 ManagedInstanceSloUpdateFailed - SLO '{0}' operation cannot succeed as the memory usage of '{1}' exceeds the quota.\n\n * 400 ManagedInstanceLocalStorageUpdateSloDisabled - Update SLO for managed instances with local storage is not supported yet.\n\n * 400 InvalidLoginName - The provided login name is invalid.\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 PasswordTooShort - The provided password is too short\n\n * 400 PasswordTooLong - The provided password is too long.\n\n * 400 PasswordNotComplex - The provided password is not complex enough.\n\n * 400 GatewayInvalidEdition - '{0}' is not a valid database edition in this version of SQL Server.\n\n * 400 InvalidSubnetResourceId - The provided subnet resource ID for the managed instance create or update is invalid.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 InvalidLocation - An invalid location was specified.\n\n * 400 VnetInWrongRegion - Virtual network is in wrong region.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 VnetAddressRangeError - Virtual network address range is invalid.\n\n * 400 VnetConfigIsNotAllowed - Virtual network configuration is not allowed.\n\n * 400 InvalidCollation - Invalid collation.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 ManagedInstanceClassicVnetNotSupported - Managed Instance cannot be joined to a classic virtual network.\n\n * 400 AlterDbDeactivatedNotSupported - Database Operation failed for Server '{0}', Database '{1}' due to unexpected delay. Please try again.\n\n * 400 RegionDoesNotAllowProvisioning - The selected location is not accepting new Windows Azure SQL Database servers. This may change at a later time.\n\n * 400 VnetConfigHasNsg - User tried to inject Managed Server subnet with Network Security Groups.\n\n * 400 VnetConfigHasNoUdr - User tried to inject Managed Server subnet without default User Defined Route Table.\n\n * 400 VnetConfigHasInvalidUdr - User tried to inject Managed Server subnet with invalid User Defined Route Table.\n\n * 400 VnetConfigHasInvalidDns - User tried to inject Managed Server subnet with invalid custom DNS.\n\n * 400 VnetConfigHasServiceEndpoints - User tried to inject Managed Server subnet with service endpoints.\n\n * 400 VnetSubnetIsInUse - User tried to inject Managed Server subnet that is not empty.\n\n * 400 VnetSubnetIsLocked - User tried to inject Managed Server subnet that is in locked scope.\n\n * 400 VnetSubnetIsGateway - User tried to inject Managed Server subnet that is Gateway subnet.\n\n * 400 VnetSubnetIsUnknown - User tried to inject Managed Server subnet that does not exist.\n\n * 400 VnetSubnetConflictWithIntendedPolicy - User tried to inject Managed Server subnet that has a conflict with IntendedPolicy.\n\n * 400 NameAlreadyExists - The provided name already exists.\n\n * 400 ManagedInstanceInvalidEditionForSku - The specified edition {0} is not consistent with the specified SKU {1}.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 ManagedInstanceInvalidLicenseType - The specified license type {0} is not valid.\n\n * 400 ManagedInstanceUpdateSloInProgress - \"The operation could not be completed because a service tier change is in progress for managed instance '{0}.' Please wait for the operation in progress to complete and try again.\"\n\n * 400 VnetResourceNotFound - Resource not found: '{0}'.\n\n * 400 InvalidTimezone - Invalid timezone.\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 InstanceCollationUpdateNotSupported - User cannot change instance collation on Managed Instance.\n\n * 400 CreateManagedInstanceWithNonDefaultCollationNotSupported - User can create a Managed Instance only with collation 'SQL_Latin1_General_CP1_CI_AS'.\n\n * 400 ManagedInstanceOperationInProgress - The operation could not be completed because {0} operation is in progress. Please wait for the operation in progress to complete and try again.\n\n * 400 ManagedInstanceExceedMaxAzureStorage - The operation could not be completed because total allocated storage size for General Purpose instance would exceed {0}. Please reduce the number of database files and retry operation.\n\n * 400 ManagedInstanceHasGeoReplica - The operation could not be completed because instance has configured geo replicated secondary instance.\n\n * 400 MiGeoRestoreWithWrongBackupStorageRedundancy - Geo-Restore is not allowed for managed instances with LRS/ZRS backup storage redundancy.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 AadOnlyAuthenticationIsEnabled - Azure Active Directory Only Authentication is enabled. Please contact your system administrator.\n\n * 400 ManagementServiceFeatureDisabled - User attempted to use a feature which is disabled.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 InvalidMinimalTlsVersion - Invalid minimal TLS version.\n\n * 400 InvalidResourceId - Invalid resource identifier.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 InvalidMaintenanceWindowSettings - Invalid maintenance window settings.\n\n * 400 InvalidMaintenanceWindowProperty - Invalid maintenance window property was specified.\n\n * 400 InvalidMaintenanceWindowPropertyNull - Invalid maintenance window with required properties null.\n\n * 400 InvalidMaintenanceWindowTypeWithPropertySpecified - Maintenance window type must not have certain properties specified.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 ManagedInstanceNotInSubscriptionResourceGroup - Specified managed instance does not exist in the specified resource group and subscription.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ResourceDoesNotExist - Resource with the name '{0}' does not exist. To continue, specify a valid resource name.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 405 InvalidVcoreValue - vCore value {0} is not valid. Please specify a valid vCore value.\n\n * 405 InvalidHardwareGenerationValue - HardwareGeneration {0} is not valid. Please specify a valid HardwareGeneration value.\n\n * 405 InvalidStorageSizeValue - \"Invalid storage size: {0} GB. Storage size must be specified between {1} and {2} gigabytes, in increments of {3} GB.\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 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ServerAlreadyExists - Duplicate server name.\n\n * 409 ServerOverridePreconditionFailed - Failed to apply server override on category '{0}', because physical db or instance '{1}' in server '{2}' is currently not in 'Ready' or 'Deactivated' state.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 ManagedInstanceIsBusy - The server '{0}' is currently busy. Please wait a few minutes before trying again.\n\n * 409 ServerQuotaExceeded - Server cannot be added to a subscription because it will exceed quota.\n\n * 409 ConflictingManagedInstanceOperation - An operation is currently in progress for the managed instance.\n\n * 409 MiDropFailedOnAuthLocks - User tried to drop last Managed Instance in subnet that has Lock applied on resource(s).\n\n * 409 MiCreateFailedNonDelegatedSubnet - User tried to deploy Managed Instance or Managed Instance pool in subnet that is not delegated to Microsoft.Sql/managedInstances.\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 * 429 ConflictingSubscriptionOperation - An operation is currently in progress for the subscription.\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 * 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 * 429 ConflictingSubscriptionOperation - An operation is currently in progress for the subscription.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 500 GatewayInternalServerError - The server encountered an unexpected exception.\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + "description": "*** Error Responses: ***\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 HkCannotSwitchToInactive - The database cannot proceed with pricing-tier update as it has memory-optimized objects. Please drop such objects and try again.\n\n * 400 ManagedInstanceInvalidStorageSizeLessThenCurrentSizeUsed - Invalid storage size: Storage size limit ({0} GB) is less that current storage used ({1} GB). Please specify higher storage size limit.\n\n * 400 InstanceTimezoneUpdateNotSupported - Instance timezone update not supported.\n\n * 400 CreateManagedInstanceWithNonDefaultTimezoneNotSupported - Create Managed Instance with non-default timezone not supported.\n\n * 400 ManagedInstanceIpAddressRangeLimit - Cannot perform creation/scaling of the managed instance as there are not enough available IP addresses in the subnet for performing the operation.\n\n * 400 VnetDelegationNotAllowed - User tried to inject Managed Server to subnet which is delegated.\n\n * 400 SubnetHasResourcesOfDifferentType - User tried to create MI in subnet that has resources of different type.\n\n * 400 UpdateManagedServerWithMaintenanceWindowNotAllowed - Update of Managed Instance with maintenance window settings is not allowed.\n\n * 400 VnetPrepareNIPFailed - User tried to prepare subnet that has a conflict with NetworkIntentPolicy.\n\n * 400 InvalidUsername - Supplied user name contains invalid characters.\n\n * 400 ManagedInstanceDeprecatedHardwareFamily - Changing the hardware generation to deprecated {0} generation is not possible.\n\n * 400 ManagedInstanceBackupStorageTypeNotSupported - Backup storage type parameter is not allowed in the instance update operation.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 InstancePoolNotEnoughCapacity - An instance pool does not have enough capacity\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 ManagedInstanceZoneRedudantFeatureNotSupported - ZoneRedundant feature is not supported for the selected service tier. For more details visit aka.ms/sqlmi-service-tier-characteristics.\n\n * 400 ManagedInstanceZoneRedudantFeatureCantBeEnabled - Enabling zoneRedundant feature is not possible once managed instance is created. For more details visit aka.ms/sqlmi-high-availability.\n\n * 400 ManagedInstanceZoneRedudantFeatureCantBeDisabled - Disabling zoneRedundant feature is not possible once managed instance is created. For more details visit aka.ms/sqlmi-high-availability.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 ManagedInstanceSloUpdateFailed - SLO '{0}' operation cannot succeed as the memory usage of '{1}' exceeds the quota.\n\n * 400 ManagedInstanceLocalStorageUpdateSloDisabled - Update SLO for managed instances with local storage is not supported yet.\n\n * 400 InvalidLoginName - The provided login name is invalid.\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 PasswordTooShort - The provided password is too short\n\n * 400 PasswordTooLong - The provided password is too long.\n\n * 400 PasswordNotComplex - The provided password is not complex enough.\n\n * 400 GatewayInvalidEdition - '{0}' is not a valid database edition in this version of SQL Server.\n\n * 400 InvalidSubnetResourceId - The provided subnet resource ID for the managed instance create or update is invalid.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 InvalidLocation - An invalid location was specified.\n\n * 400 VnetInWrongRegion - Virtual network is in wrong region.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 VnetAddressRangeError - Virtual network address range is invalid.\n\n * 400 VnetConfigIsNotAllowed - Virtual network configuration is not allowed.\n\n * 400 InvalidCollation - Invalid collation.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 ManagedInstanceClassicVnetNotSupported - Managed Instance cannot be joined to a classic virtual network.\n\n * 400 AlterDbDeactivatedNotSupported - Database Operation failed for Server '{0}', Database '{1}' due to unexpected delay. Please try again.\n\n * 400 RegionDoesNotAllowProvisioning - The selected location is not accepting new Windows Azure SQL Database servers. This may change at a later time.\n\n * 400 VnetConfigHasNsg - User tried to inject Managed Server subnet with Network Security Groups.\n\n * 400 VnetConfigHasNoUdr - User tried to inject Managed Server subnet without default User Defined Route Table.\n\n * 400 VnetConfigHasInvalidUdr - User tried to inject Managed Server subnet with invalid User Defined Route Table.\n\n * 400 VnetConfigHasInvalidDns - User tried to inject Managed Server subnet with invalid custom DNS.\n\n * 400 VnetConfigHasServiceEndpoints - User tried to inject Managed Server subnet with service endpoints.\n\n * 400 VnetSubnetIsInUse - User tried to inject Managed Server subnet that is not empty.\n\n * 400 VnetSubnetIsLocked - User tried to inject Managed Server subnet that is in locked scope.\n\n * 400 VnetSubnetIsGateway - User tried to inject Managed Server subnet that is Gateway subnet.\n\n * 400 VnetSubnetIsUnknown - User tried to inject Managed Server subnet that does not exist.\n\n * 400 VnetSubnetConflictWithIntendedPolicy - User tried to inject Managed Server subnet that has a conflict with IntendedPolicy.\n\n * 400 NameAlreadyExists - The provided name already exists.\n\n * 400 ManagedInstanceInvalidEditionForSku - The specified edition {0} is not consistent with the specified SKU {1}.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 ManagedInstanceInvalidLicenseType - The specified license type {0} is not valid.\n\n * 400 ManagedInstanceUpdateSloInProgress - \"The operation could not be completed because a service tier change is in progress for managed instance '{0}.' Please wait for the operation in progress to complete and try again.\"\n\n * 400 VnetResourceNotFound - Resource not found: '{0}'.\n\n * 400 InvalidTimezone - Invalid timezone.\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 InstanceCollationUpdateNotSupported - User cannot change instance collation on Managed Instance.\n\n * 400 CreateManagedInstanceWithNonDefaultCollationNotSupported - User can create a Managed Instance only with collation 'SQL_Latin1_General_CP1_CI_AS'.\n\n * 400 ManagedInstanceOperationInProgress - The operation could not be completed because {0} operation is in progress. Please wait for the operation in progress to complete and try again.\n\n * 400 ManagedInstanceExceedMaxAzureStorage - The operation could not be completed because total allocated storage size for General Purpose instance would exceed {0}. Please reduce the number of database files and retry operation.\n\n * 400 ManagedInstanceHasGeoReplica - The operation could not be completed because instance has configured geo replicated secondary instance.\n\n * 400 MiGeoRestoreWithWrongBackupStorageRedundancy - Geo-Restore is not allowed for managed instances with LRS/ZRS backup storage redundancy.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 AadOnlyAuthenticationIsEnabled - Azure Active Directory Only Authentication is enabled. Please contact your system administrator.\n\n * 400 ManagementServiceFeatureDisabled - User attempted to use a feature which is disabled.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 InvalidMinimalTlsVersion - Invalid minimal TLS version.\n\n * 400 InvalidResourceId - Invalid resource identifier.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 AadOnlyAuthenticationIsEnabled - Azure Active Directory Only Authentication is enabled. Please contact your system administrator.\n\n * 400 InvalidExternalAdministratorLogin - Invalid or missing external administrator login name.\n\n * 400 InvalidExternalAdministratorSid - Invalid or missing external administrator object id.\n\n * 400 InvalidExternalAdministratorTenantId - Invalid or missing external administrator tenant id.\n\n * 400 ExternalAdministratorPrincipalType - Invalid or missing external administrator principal type. Please select from User, Application or Group.\n\n * 400 MissingExternalAdministratorWithAadOnlyAuth - In order to use Azure AD Only Authentication, please provide details of an external administrator.\n\n * 400 InvalidMaintenanceWindowSettings - Invalid maintenance window settings.\n\n * 400 InvalidMaintenanceWindowProperty - Invalid maintenance window property was specified.\n\n * 400 InvalidMaintenanceWindowPropertyNull - Invalid maintenance window with required properties null.\n\n * 400 InvalidMaintenanceWindowTypeWithPropertySpecified - Maintenance window type must not have certain properties specified.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 ManagedInstanceNotInSubscriptionResourceGroup - Specified managed instance does not exist in the specified resource group and subscription.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ResourceDoesNotExist - Resource with the name '{0}' does not exist. To continue, specify a valid resource name.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 405 InvalidVcoreValue - vCore value {0} is not valid. Please specify a valid vCore value.\n\n * 405 InvalidHardwareGenerationValue - HardwareGeneration {0} is not valid. Please specify a valid HardwareGeneration value.\n\n * 405 InvalidStorageSizeValue - \"Invalid storage size: {0} GB. Storage size must be specified between {1} and {2} gigabytes, in increments of {3} GB.\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 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ServerAlreadyExists - Duplicate server name.\n\n * 409 ServerOverridePreconditionFailed - Failed to apply server override on category '{0}', because physical db or instance '{1}' in server '{2}' is currently not in 'Ready' or 'Deactivated' state.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 ManagedInstanceIsBusy - The server '{0}' is currently busy. Please wait a few minutes before trying again.\n\n * 409 ServerQuotaExceeded - Server cannot be added to a subscription because it will exceed quota.\n\n * 409 ConflictingManagedInstanceOperation - An operation is currently in progress for the managed instance.\n\n * 409 MiDropFailedOnAuthLocks - User tried to drop last Managed Instance in subnet that has Lock applied on resource(s).\n\n * 409 MiCreateFailedNonDelegatedSubnet - User tried to deploy Managed Instance or Managed Instance pool in subnet that is not delegated to Microsoft.Sql/managedInstances.\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 * 429 ConflictingSubscriptionOperation - An operation is currently in progress for the subscription.\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 * 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 * 429 ConflictingSubscriptionOperation - An operation is currently in progress for the subscription.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 500 GatewayInternalServerError - The server encountered an unexpected exception.\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." }, "202": { "description": "Accepted" @@ -289,6 +365,9 @@ }, "Update managed instance with all properties": { "$ref": "./examples/ManagedInstanceUpdateMax.json" + }, + "Remove maintenance policy from managed instance (select default maintenance policy)": { + "$ref": "./examples/ManagedInstanceRemoveMaintenanceConfiguration.json" } } } @@ -466,7 +545,7 @@ "description": "Successfully completed managed instance failover." }, "default": { - "description": "*** Error Responses: ***\n\n * 400 ManagedInstanceFailoverThrottled - There was a recent failover on the managed instance.\n\n * 400 ManagedInstanceFailoverNotSupportedOnSKU - This type of customer initiated failover is not supported on the given SKU.\n\n * 403 ManagedInstanceFailoverFullBackupMissing - Automated backup needs to complete the first full backup for a new database.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 409 ManagedInstanceNotInStateToFailover - The managed instance is currently in a state such that failover cannot be issued." + "description": "*** Error Responses: ***\n\n * 400 ManagedInstanceFailoverThrottled - There was a recent failover on the managed instance.\n\n * 400 ManagedInstanceFailoverNotSupportedOnSKU - This type of customer initiated failover is not supported on the given SKU.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 409 ManagedInstanceFailoverFullBackupMissing - Automated backup needs to complete the first full backup for a new database.\n\n * 409 ManagedInstanceNotInStateToFailover - The managed instance is currently in a state such that failover cannot be issued." }, "202": { "description": "Managed instance failover is in progress." @@ -479,42 +558,6 @@ } } } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Sql/managedInstances": { - "get": { - "tags": [ - "ManagedInstances" - ], - "description": "Gets a list of all managed instances in the subscription.", - "operationId": "ManagedInstances_List", - "parameters": [ - { - "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Successfully retrieved the list of managed instances.", - "schema": { - "$ref": "#/definitions/ManagedInstanceListResult" - } - }, - "default": { - "description": "*** Error Responses: ***" - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-examples": { - "List managed instances": { - "$ref": "./examples/ManagedInstanceList.json" - } - } - } } }, "definitions": { @@ -537,6 +580,44 @@ } } }, + "ResourceIdentityWithUserAssignedIdentities": { + "description": "Azure Active Directory identity configuration for a resource.", + "type": "object", + "properties": { + "userAssignedIdentities": { + "description": "The resource ids of the user assigned identities to use", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/UserIdentity" + } + }, + "principalId": { + "format": "uuid", + "description": "The Azure Active Directory principal id.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The identity type. Set this to 'SystemAssigned' in order to automatically create and assign an Azure Active Directory principal for the resource.", + "enum": [ + "None", + "SystemAssigned", + "UserAssigned" + ], + "type": "string", + "x-ms-enum": { + "name": "IdentityType", + "modelAsString": true + } + }, + "tenantId": { + "format": "uuid", + "description": "The Azure Active Directory tenant id.", + "type": "string", + "readOnly": true + } + } + }, "ManagedInstanceProperties": { "description": "The properties of a managed instance.", "type": "object", @@ -720,6 +801,44 @@ "zoneRedundant": { "description": "Whether or not the multi-az is enabled.", "type": "boolean" + }, + "primaryUserAssignedIdentityId": { + "description": "The resource id of a user assigned identity to be used by default.", + "type": "string" + }, + "keyId": { + "description": "A CMK URI of the key to use for encryption.", + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "administrators": { + "$ref": "#/definitions/ManagedInstanceExternalAdministrator", + "description": "The Azure Active Directory administrator of the server.", + "x-ms-mutability": [ + "read", + "create" + ] + } + } + }, + "UserIdentity": { + "description": "Azure Active Directory identity configuration for a resource.", + "type": "object", + "properties": { + "principalId": { + "format": "uuid", + "description": "The Azure Active Directory principal id.", + "type": "string", + "readOnly": true + }, + "clientId": { + "format": "uuid", + "description": "The Azure Active Directory client id.", + "type": "string", + "readOnly": true } } }, @@ -739,6 +858,54 @@ } } }, + "ManagedInstanceExternalAdministrator": { + "description": "Properties of a active directory administrator.", + "type": "object", + "properties": { + "administratorType": { + "description": "Type of the sever administrator.", + "enum": [ + "ActiveDirectory" + ], + "type": "string", + "x-ms-enum": { + "name": "AdministratorType", + "modelAsString": true + } + }, + "principalType": { + "description": "Principal Type of the sever administrator.", + "enum": [ + "User", + "Group", + "Application" + ], + "type": "string", + "x-ms-enum": { + "name": "PrincipalType", + "modelAsString": true + } + }, + "login": { + "description": "Login name of the server administrator.", + "type": "string" + }, + "sid": { + "format": "uuid", + "description": "SID (object ID) of the server administrator.", + "type": "string" + }, + "tenantId": { + "format": "uuid", + "description": "Tenant ID of the administrator.", + "type": "string" + }, + "azureADOnlyAuthentication": { + "description": "Azure Active Directory only Authentication enabled.", + "type": "boolean" + } + } + }, "ManagedInstancePrivateEndpointConnectionProperties": { "description": "Properties of a private endpoint connection.", "type": "object", @@ -802,7 +969,7 @@ ], "properties": { "identity": { - "$ref": "../../../common/v1/types.json#/definitions/ResourceIdentity", + "$ref": "../../../common/v2/types.json#/definitions/ResourceIdentity", "description": "The Azure Active Directory identity of the managed instance.", "x-ms-mutability": [ "read", @@ -829,7 +996,7 @@ "description": "Managed instance sku" }, "identity": { - "$ref": "../../../common/v1/types.json#/definitions/ResourceIdentity", + "$ref": "../../../common/v2/types.json#/definitions/ResourceIdentity", "description": "Managed instance identity" }, "properties": { diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ManagedServerSecurityAlertPolicies.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ManagedServerSecurityAlertPolicies.json index b291a537eb95..aa768504d55f 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ManagedServerSecurityAlertPolicies.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ManagedServerSecurityAlertPolicies.json @@ -127,10 +127,10 @@ }, "x-ms-long-running-operation": true, "x-ms-examples": { - "Update a server's threat detection policy with minimal parameters": { + "Update a managed server's threat detection policy with minimal parameters": { "$ref": "./examples/ManagedServerSecurityAlertCreateMin.json" }, - "Update a server's threat detection policy with all parameters": { + "Update a managed server's threat detection policy with all parameters": { "$ref": "./examples/ManagedServerSecurityAlertCreateMax.json" } } @@ -200,7 +200,7 @@ } }, "disabledAlerts": { - "description": "Specifies an array of alerts that are disabled. Allowed values are: Sql_Injection, Sql_Injection_Vulnerability, Access_Anomaly, Data_Exfiltration, Unsafe_Action", + "description": "Specifies an array of alerts that are disabled. Allowed values are: Sql_Injection, Sql_Injection_Vulnerability, Access_Anomaly, Data_Exfiltration, Unsafe_Action, Brute_Force", "type": "array", "items": { "type": "string" @@ -248,8 +248,9 @@ ], "properties": { "systemData": { - "readOnly": true, - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/systemData" + "$ref": "../../../common/v1/types.json#/definitions/systemData", + "description": "SystemData of SecurityAlertPolicyResource.", + "readOnly": true }, "properties": { "$ref": "#/definitions/SecurityAlertsPolicyProperties", diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/PrivateEndpointConnections.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/PrivateEndpointConnections.json index 030cdccb1101..99c826e4b7f2 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/PrivateEndpointConnections.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/PrivateEndpointConnections.json @@ -103,7 +103,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 PrivateEndpointConnectionDoesNotExist - Private Endpoint Connection does not exist\n\n * 400 PrivateEndpointConnectionStatusNotPending - Private Endpoint Connection Status is not Pending\n\n * 400 NullRemotePrivateLinkServiceConnectionState - Remote Private Link Service Connection State is Null\n\n * 400 NullPrivateEndpointConnectionProperties - Private Endpoint Connection Properties is Null\n\n * 400 NullRemotePrivateLinkServiceConnectionStateStatus - Remote Private Link Service Connection State Status is Null\n\n * 400 IncorrectPrivateLinkServiceConnectionStateStatus - Private Link Service Connection State Status must be \"Approved\" or \"Rejected\"\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 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." + "description": "*** Error Responses: ***\n\n * 400 PrivateEndpointConnectionDoesNotExist - Private Endpoint Connection does not exist\n\n * 400 PrivateEndpointConnectionStatusNotPending - Private Endpoint Connection Status is not Pending\n\n * 400 NullRemotePrivateLinkServiceConnectionState - Remote Private Link Service Connection State is Null\n\n * 400 NullPrivateEndpointConnectionProperties - Private Endpoint Connection Properties is Null\n\n * 400 NullRemotePrivateLinkServiceConnectionStateStatus - Remote Private Link Service Connection State Status is Null\n\n * 400 IncorrectPrivateLinkServiceConnectionStateStatus - Private Link Service Connection State Status must be \"Approved\" or \"Rejected\"\n\n * 400 NetworkingSubscriptionNotRegisteredWithSqlRp - Subscription used for network-side Private Endpoint is not registered with SQL resource provider\n\n * 404 PrivateEndpointConnectionDroppedByOtherWorkflow - {0}\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 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." }, "202": { "description": "Accepted" @@ -147,7 +147,7 @@ "description": "Successfully deleted private endpoint connection." }, "default": { - "description": "*** Error Responses: ***\n\n * 400 PrivateEndpointConnectionDoesNotExist - Private Endpoint Connection does not exist\n\n * 400 PrivateEndpointConnectionStatusNotPending - Private Endpoint Connection Status is not Pending\n\n * 400 NullRemotePrivateLinkServiceConnectionState - Remote Private Link Service Connection State is Null\n\n * 400 NullPrivateEndpointConnectionProperties - Private Endpoint Connection Properties is Null\n\n * 400 NullRemotePrivateLinkServiceConnectionStateStatus - Remote Private Link Service Connection State Status is Null\n\n * 400 IncorrectPrivateLinkServiceConnectionStateStatus - Private Link Service Connection State Status must be \"Approved\" or \"Rejected\"\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 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." + "description": "*** Error Responses: ***\n\n * 400 NetworkingSubscriptionNotRegisteredWithSqlRp - Subscription used for network-side Private Endpoint is not registered with SQL resource provider\n\n * 400 PrivateEndpointConnectionDoesNotExist - Private Endpoint Connection does not exist\n\n * 400 PrivateEndpointConnectionStatusNotPending - Private Endpoint Connection Status is not Pending\n\n * 400 NullRemotePrivateLinkServiceConnectionState - Remote Private Link Service Connection State is Null\n\n * 400 NullPrivateEndpointConnectionProperties - Private Endpoint Connection Properties is Null\n\n * 400 NullRemotePrivateLinkServiceConnectionStateStatus - Remote Private Link Service Connection State Status is Null\n\n * 400 IncorrectPrivateLinkServiceConnectionStateStatus - Private Link Service Connection State Status must be \"Approved\" or \"Rejected\"\n\n * 404 PrivateEndpointConnectionDroppedByOtherWorkflow - {0}\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 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." }, "202": { "description": "Accepted" diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ServerAzureADOnlyAuthentications.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ServerAzureADOnlyAuthentications.json index 91721f937278..3680eb9e906f 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ServerAzureADOnlyAuthentications.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ServerAzureADOnlyAuthentications.json @@ -59,7 +59,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidServerAzureADOnlyAuthenticationParameter - User tried to set AzureADOnlyAuthentication parameter to false which is not allowed, please use azureADOnlyAuthentications API instead.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." + "description": "*** Error Responses: ***\n\n * 400 InvalidServerAzureADOnlyAuthenticationParameter - User tried to set AzureADOnlyAuthentication parameter to false which is not allowed, please use azureADOnlyAuthentications API instead.\n\n * 400 InvalidServerAADOnlyAuthTypePropertyName - Server Azure Active Directory only authentication type should be Default\n\n * 400 InvalidServerAADOnlyAuthNoAADAdminPropertyName - AAD Admin is not configured, AAD Admin must be set before enabling/disabling AAD Only Authentication.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." } }, "x-ms-examples": { @@ -119,7 +119,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidServerAzureADOnlyAuthenticationParameter - User tried to set AzureADOnlyAuthentication parameter to false which is not allowed, please use azureADOnlyAuthentications API instead.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 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." + "description": "*** Error Responses: ***\n\n * 400 InvalidServerAzureADOnlyAuthenticationParameter - User tried to set AzureADOnlyAuthentication parameter to false which is not allowed, please use azureADOnlyAuthentications API instead.\n\n * 400 InvalidServerAADOnlyAuthTypePropertyName - Server Azure Active Directory only authentication type should be Default\n\n * 400 InvalidServerAADOnlyAuthNoAADAdminPropertyName - AAD Admin is not configured, AAD Admin must be set before enabling/disabling AAD Only Authentication.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 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." }, "202": { "description": "Accepted" @@ -177,7 +177,7 @@ "description": "Successfully deleted the Azure Active Directory only property." }, "default": { - "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\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." + "description": "*** Error Responses: ***\n\n * 400 InvalidServerAzureADOnlyAuthenticationParameter - User tried to set AzureADOnlyAuthentication parameter to false which is not allowed, please use azureADOnlyAuthentications API instead.\n\n * 400 InvalidServerAADOnlyAuthTypePropertyName - Server Azure Active Directory only authentication type should be Default\n\n * 400 InvalidServerAADOnlyAuthNoAADAdminPropertyName - AAD Admin is not configured, AAD Admin must be set before enabling/disabling AAD Only Authentication.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 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." }, "202": { "description": "Accepted" diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ServerDevOpsAudit.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ServerDevOpsAudit.json index b95f94fc283d..1ff7833776ca 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ServerDevOpsAudit.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ServerDevOpsAudit.json @@ -105,7 +105,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidServerDevOpsAuditSettingsCreateRequest - The create server DevOps audit policy request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 DevOpsAuditInvalidStorageAccountCredentials - The provided storage account or access key is not valid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 409 ServerDevOpsAuditSettingsInProgress - Set server DevOps audit is already in progress." + "description": "*** Error Responses: ***\n\n * 400 InvalidServerDevOpsAuditSettingsCreateRequest - The create server DevOps audit policy request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 InvalidServerDevOpsAuditSettingsName - Invalid server DevOps policy name.\n\n * 400 DevOpsAuditInvalidStorageAccountCredentials - The provided storage account or access key is not valid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 409 ServerDevOpsAuditSettingsInProgress - Set server DevOps audit is already in progress." }, "202": { "description": "Updating the audit DevOps settings is in progress." @@ -222,7 +222,7 @@ ], "properties": { "systemData": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/systemData", + "$ref": "../../../common/v1/types.json#/definitions/systemData", "description": "SystemData of ServerDevOpsAuditSettingsResource.", "readOnly": true }, diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ServerKeys.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ServerKeys.json index a8d7498c822b..08819b98b065 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ServerKeys.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ServerKeys.json @@ -280,6 +280,11 @@ "description": "The server key creation date.", "type": "string", "readOnly": true + }, + "autoRotationEnabled": { + "description": "Key auto rotation opt-in flag. Either true or false.", + "type": "boolean", + "readOnly": true } } }, diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ServerSecurityAlertPolicies.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ServerSecurityAlertPolicies.json index c27d4bd89653..f1a669c3c67d 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ServerSecurityAlertPolicies.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ServerSecurityAlertPolicies.json @@ -127,11 +127,11 @@ }, "x-ms-long-running-operation": true, "x-ms-examples": { - "Update a server's threat detection policy with all parameters": { - "$ref": "./examples/ServerSecurityAlertsCreateMax.json" - }, "Update a server's threat detection policy with minimal parameters": { "$ref": "./examples/ServerSecurityAlertsCreateMin.json" + }, + "Update a server's threat detection policy with all parameters": { + "$ref": "./examples/ServerSecurityAlertsCreateMax.json" } } } @@ -200,7 +200,7 @@ } }, "disabledAlerts": { - "description": "Specifies an array of alerts that are disabled. Allowed values are: Sql_Injection, Sql_Injection_Vulnerability, Access_Anomaly, Data_Exfiltration, Unsafe_Action", + "description": "Specifies an array of alerts that are disabled. Allowed values are: Sql_Injection, Sql_Injection_Vulnerability, Access_Anomaly, Data_Exfiltration, Unsafe_Action, Brute_Force", "type": "array", "items": { "type": "string" @@ -248,8 +248,9 @@ ], "properties": { "systemData": { - "readOnly": true, - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/systemData" + "$ref": "../../../common/v1/types.json#/definitions/systemData", + "description": "SystemData of SecurityAlertPolicyResource.", + "readOnly": true }, "properties": { "$ref": "#/definitions/SecurityAlertsPolicyProperties", diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ServerTrustGroups.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ServerTrustGroups.json index eaee7f6c7e27..a5faee283cab 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ServerTrustGroups.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ServerTrustGroups.json @@ -295,7 +295,8 @@ "type": "array", "items": { "enum": [ - "GlobalTransactions" + "GlobalTransactions", + "ServiceBroker" ], "type": "string" } diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ServerVulnerabilityAssessments.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ServerVulnerabilityAssessments.json index e1259507a756..f448d544eaa8 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ServerVulnerabilityAssessments.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/ServerVulnerabilityAssessments.json @@ -63,7 +63,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found" + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentUnsupportedStorageAccount - The provided storage account is unsupported.\n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 400 VulnerabilityAssessmentInsufficientStorageAccountPermissions - Insufficient permissions on the provided storage account.\n\n * 400 VulnerabilityAssessmentStorageAccountIsDisabled - The provided storage account is disabled.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found" } }, "x-ms-examples": { @@ -76,7 +76,7 @@ "tags": [ "ServerVulnerabilityAssessments" ], - "description": "Creates or updates the server's vulnerability assessment.", + "description": "Creates or updates the server's vulnerability assessment. Learn more about setting SQL vulnerability assessment with managed identity - https://docs.microsoft.com/azure/azure-sql/database/sql-database-vulnerability-assessment-storage", "operationId": "ServerVulnerabilityAssessments_CreateOrUpdate", "parameters": [ { @@ -127,7 +127,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found" + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentUnsupportedStorageAccount - The provided storage account is unsupported.\n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 400 VulnerabilityAssessmentInsufficientStorageAccountPermissions - Insufficient permissions on the provided storage account.\n\n * 400 VulnerabilityAssessmentStorageAccountIsDisabled - The provided storage account is disabled.\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found" }, "201": { "description": "Successfully created the vulnerability assessment.", @@ -191,7 +191,7 @@ "description": "Successfully removed the server vulnerability assessment." }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found" + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentUnsupportedStorageAccount - The provided storage account is unsupported.\n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 400 VulnerabilityAssessmentInsufficientStorageAccountPermissions - Insufficient permissions on the provided storage account.\n\n * 400 VulnerabilityAssessmentStorageAccountIsDisabled - The provided storage account is disabled.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found" } }, "x-ms-examples": { @@ -230,7 +230,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found" + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentUnsupportedStorageAccount - The provided storage account is unsupported.\n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 400 VulnerabilityAssessmentInsufficientStorageAccountPermissions - Insufficient permissions on the provided storage account.\n\n * 400 VulnerabilityAssessmentStorageAccountIsDisabled - The provided storage account is disabled.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found" } }, "x-ms-pageable": { @@ -261,7 +261,7 @@ ] }, "storageContainerSasKey": { - "description": "A shared access signature (SAS Key) that has write access to the blob container specified in 'storageContainerPath' parameter. If 'storageAccountAccessKey' isn't specified, StorageContainerSasKey is required.", + "description": "A shared access signature (SAS Key) that has write access to the blob container specified in 'storageContainerPath' parameter. If 'storageAccountAccessKey' isn't specified, StorageContainerSasKey is required. Applies only if the storage account is not behind a Vnet or a firewall", "type": "string", "x-ms-mutability": [ "create", @@ -269,7 +269,7 @@ ] }, "storageAccountAccessKey": { - "description": "Specifies the identifier key of the storage account for vulnerability assessment scan results. If 'StorageContainerSasKey' isn't specified, storageAccountAccessKey is required.", + "description": "Specifies the identifier key of the storage account for vulnerability assessment scan results. If 'StorageContainerSasKey' isn't specified, storageAccountAccessKey is required. Applies only if the storage account is not behind a Vnet or a firewall", "type": "string", "x-ms-mutability": [ "create", diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/Servers.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/Servers.json index c7165c10234f..b99f6785495b 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/Servers.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/Servers.json @@ -150,7 +150,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 PECsNotExistingToDenyPublicNetworkAccess - Unable to set Deny Public Network Access to Yes since there is no private endpoint enabled to access the server. Please set up private endpoints and retry the operation (https://docs.microsoft.com/azure/sql-database/sql-database-private-endpoint-overview#how-to-set-up-private-link-for-azure-sql-database).\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 NameAlreadyExists - The provided name already exists.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 AadOnlyAuthenticationIsEnabled - Azure Active Directory Only Authentication is enabled. Please contact your system administrator.\n\n * 400 RegionDoesNotAllowProvisioning - The selected location is not accepting new Windows Azure SQL Database servers. This may change at a later time.\n\n * 400 InvalidUsername - Supplied user name contains invalid characters.\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 InvalidLoginName - The provided login name is invalid.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 PasswordTooShort - The provided password is too short\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 PasswordTooLong - The provided password is too long.\n\n * 400 PasswordNotComplex - The provided password is not complex enough.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 InvalidLocation - An invalid location was specified.\n\n * 400 InvalidMinimalTlsVersion - Invalid minimal TLS version.\n\n * 400 InvalidExternalAdministratorLogin - Invalid or missing external administrator login name.\n\n * 400 InvalidExternalAdministratorSid - Invalid or missing external administrator object id.\n\n * 400 InvalidExternalAdministratorTenantId - Invalid or missing external administrator tenant id.\n\n * 400 ExternalAdministratorPrincipalType - Invalid or missing external administrator principal type. Please select from User, Application or Group.\n\n * 400 MissingExternalAdministratorWithAadOnlyAuth - In order to use Azure AD Only Authentication, please provide details of an external administrator.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\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 ServerQuotaExceeded - Server cannot be added to a subscription because it will exceed quota.\n\n * 409 UpsertLogicalServerRequestAlreadyInProgress - An ongoing logical server request is already in progress, please try your request again later.\n\n * 409 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 ServerAlreadyExists - Duplicate server name.\n\n * 429 ConflictingSubscriptionOperation - An operation is currently in progress for the subscription.\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources." + "description": "*** Error Responses: ***\n\n * 400 PECsNotExistingToDenyPublicNetworkAccess - Unable to set Deny Public Network Access to Yes since there is no private endpoint enabled to access the server. Please set up private endpoints and retry the operation (https://docs.microsoft.com/azure/sql-database/sql-database-private-endpoint-overview#how-to-set-up-private-link-for-azure-sql-database).\n\n * 400 NameAlreadyExists - The provided name already exists.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 InvalidLoginName - The provided login name is invalid.\n\n * 400 InvalidUsername - Supplied user name contains invalid characters.\n\n * 400 PasswordTooShort - The provided password is too short\n\n * 400 AadOnlyAuthenticationIsEnabled - Azure Active Directory Only Authentication is enabled. Please contact your system administrator.\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 PasswordTooLong - The provided password is too long.\n\n * 400 PasswordNotComplex - The provided password is not complex enough.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 InvalidLocation - An invalid location was specified.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 RegionDoesNotAllowProvisioning - The selected location is not accepting new Windows Azure SQL Database servers. This may change at a later time.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 InvalidMinimalTlsVersion - Invalid minimal TLS version.\n\n * 400 InvalidExternalAdministratorLogin - Invalid or missing external administrator login name.\n\n * 400 InvalidExternalAdministratorSid - Invalid or missing external administrator object id.\n\n * 400 InvalidExternalAdministratorTenantId - Invalid or missing external administrator tenant id.\n\n * 400 ExternalAdministratorPrincipalType - Invalid or missing external administrator principal type. Please select from User, Application or Group.\n\n * 400 MissingExternalAdministratorWithAadOnlyAuth - In order to use Azure AD Only Authentication, please provide details of an external administrator.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 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 UpsertLogicalServerRequestAlreadyInProgress - An ongoing logical server request is already in progress, please try your request again later.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ServerQuotaExceeded - Server cannot be added to a subscription because it will exceed quota.\n\n * 409 ServerAlreadyExists - Duplicate server name.\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 * 429 ConflictingSubscriptionOperation - An operation is currently in progress for the subscription.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources." }, "202": { "description": "Accepted" @@ -194,7 +194,7 @@ "description": "Successfully deleted the server." }, "default": { - "description": "*** Error Responses: ***\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\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 DropLogicalServerAlreadyInProgress - Server is already being dropped.\n\n * 409 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 429 SubscriptionTooManyRequests - 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 * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources." + "description": "*** Error Responses: ***\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 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 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 DropLogicalServerAlreadyInProgress - Server is already being dropped.\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources." }, "202": { "description": "Accepted" @@ -247,7 +247,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 PECsNotExistingToDenyPublicNetworkAccess - Unable to set Deny Public Network Access to Yes since there is no private endpoint enabled to access the server. Please set up private endpoints and retry the operation (https://docs.microsoft.com/azure/sql-database/sql-database-private-endpoint-overview#how-to-set-up-private-link-for-azure-sql-database).\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 NameAlreadyExists - The provided name already exists.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 AadOnlyAuthenticationIsEnabled - Azure Active Directory Only Authentication is enabled. Please contact your system administrator.\n\n * 400 RegionDoesNotAllowProvisioning - The selected location is not accepting new Windows Azure SQL Database servers. This may change at a later time.\n\n * 400 InvalidUsername - Supplied user name contains invalid characters.\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 InvalidLoginName - The provided login name is invalid.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 PasswordTooShort - The provided password is too short\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 PasswordTooLong - The provided password is too long.\n\n * 400 PasswordNotComplex - The provided password is not complex enough.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 InvalidLocation - An invalid location was specified.\n\n * 400 InvalidMinimalTlsVersion - Invalid minimal TLS version.\n\n * 400 InvalidExternalAdministratorLogin - Invalid or missing external administrator login name.\n\n * 400 InvalidExternalAdministratorSid - Invalid or missing external administrator object id.\n\n * 400 InvalidExternalAdministratorTenantId - Invalid or missing external administrator tenant id.\n\n * 400 ExternalAdministratorPrincipalType - Invalid or missing external administrator principal type. Please select from User, Application or Group.\n\n * 400 MissingExternalAdministratorWithAadOnlyAuth - In order to use Azure AD Only Authentication, please provide details of an external administrator.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\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 ServerQuotaExceeded - Server cannot be added to a subscription because it will exceed quota.\n\n * 409 UpsertLogicalServerRequestAlreadyInProgress - An ongoing logical server request is already in progress, please try your request again later.\n\n * 409 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 ServerAlreadyExists - Duplicate server name.\n\n * 429 ConflictingSubscriptionOperation - An operation is currently in progress for the subscription.\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources." + "description": "*** Error Responses: ***\n\n * 400 PECsNotExistingToDenyPublicNetworkAccess - Unable to set Deny Public Network Access to Yes since there is no private endpoint enabled to access the server. Please set up private endpoints and retry the operation (https://docs.microsoft.com/azure/sql-database/sql-database-private-endpoint-overview#how-to-set-up-private-link-for-azure-sql-database).\n\n * 400 NameAlreadyExists - The provided name already exists.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 InvalidLoginName - The provided login name is invalid.\n\n * 400 InvalidUsername - Supplied user name contains invalid characters.\n\n * 400 PasswordTooShort - The provided password is too short\n\n * 400 AadOnlyAuthenticationIsEnabled - Azure Active Directory Only Authentication is enabled. Please contact your system administrator.\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 PasswordTooLong - The provided password is too long.\n\n * 400 PasswordNotComplex - The provided password is not complex enough.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 InvalidLocation - An invalid location was specified.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 RegionDoesNotAllowProvisioning - The selected location is not accepting new Windows Azure SQL Database servers. This may change at a later time.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 InvalidMinimalTlsVersion - Invalid minimal TLS version.\n\n * 400 InvalidExternalAdministratorLogin - Invalid or missing external administrator login name.\n\n * 400 InvalidExternalAdministratorSid - Invalid or missing external administrator object id.\n\n * 400 InvalidExternalAdministratorTenantId - Invalid or missing external administrator tenant id.\n\n * 400 ExternalAdministratorPrincipalType - Invalid or missing external administrator principal type. Please select from User, Application or Group.\n\n * 400 MissingExternalAdministratorWithAadOnlyAuth - In order to use Azure AD Only Authentication, please provide details of an external administrator.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 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 UpsertLogicalServerRequestAlreadyInProgress - An ongoing logical server request is already in progress, please try your request again later.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ServerQuotaExceeded - Server cannot be added to a subscription because it will exceed quota.\n\n * 409 ServerAlreadyExists - Duplicate server name.\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 * 429 ConflictingSubscriptionOperation - An operation is currently in progress for the subscription.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources." }, "202": { "description": "Accepted" @@ -345,7 +345,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 MissingImportExportInputParameters - Missing ImportExport input parameters.\n\n * 400 PolybaseImportAuthenticationTypeNotSupported - Authentication type parameter is not support for PolybaseImport operation.\n\n * 400 DatabaseExtensionsMissingOperationMode - Missing operationMode parameter for database extension.\n\n * 400 ImportExportJobError - The ImportExport operation has failed.\n\n * 400 InvalidOperationType - Provide a valid operation type.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - Invalid request specifying a non-existent resource.\n\n * 404 ImportExportOperationIdNotFound - The operation Id for import or export cannot be found.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 409 ImportExportOperationInProgress - There is an import or export operation in progress on the database." + "description": "*** Error Responses: ***\n\n * 400 MissingImportExportInputParameters - Missing ImportExport input parameters.\n\n * 400 PolybaseImportAuthenticationTypeNotSupported - Authentication type parameter is not support for PolybaseImport operation.\n\n * 400 DatabaseExtensionsInvalidOperationMode - Invalid operationMode parameter for database extension.\n\n * 400 DatabaseExtensionsInvalidStorageKeyType - The storage key type must by 'StorageAccessKey'.\n\n * 400 DatabaseExtensionsMissingStorageUri - Storage URI cannot be empty.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 InvalidOperationType - Provide a valid operation type.\n\n * 400 ImportExportJobError - The ImportExport operation has failed.\n\n * 400 BlockedByOutboundFirewall - The outbound firewall rules blocked the request.\n\n * 404 ResourceNotFound - Invalid request specifying a non-existent resource.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ImportExportOperationIdNotFound - The operation Id for import or export cannot be found.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 409 ImportExportOperationInProgress - There is an import or export operation in progress on the database." }, "202": { "description": "Importing the database is in progress." @@ -431,6 +431,44 @@ } } }, + "ResourceIdentityWithUserAssignedIdentities": { + "description": "Azure Active Directory identity configuration for a resource.", + "type": "object", + "properties": { + "userAssignedIdentities": { + "description": "The resource ids of the user assigned identities to use", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/UserIdentity" + } + }, + "principalId": { + "format": "uuid", + "description": "The Azure Active Directory principal id.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The identity type. Set this to 'SystemAssigned' in order to automatically create and assign an Azure Active Directory principal for the resource.", + "enum": [ + "None", + "SystemAssigned", + "UserAssigned" + ], + "type": "string", + "x-ms-enum": { + "name": "IdentityType", + "modelAsString": true + } + }, + "tenantId": { + "format": "uuid", + "description": "The Azure Active Directory tenant id.", + "type": "string", + "readOnly": true + } + } + }, "ServerProperties": { "description": "The properties of a server.", "type": "object", @@ -502,13 +540,17 @@ "modelAsString": true } }, - "encryptionIdentityId": { - "description": "The resource id of a user assigned identity to be used to access the customer managed keyvault.", + "primaryUserAssignedIdentityId": { + "description": "The resource id of a user assigned identity to be used by default.", "type": "string" }, "keyId": { "description": "A CMK URI of the key to use for encryption.", - "type": "string" + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ] }, "administrators": { "$ref": "#/definitions/ServerExternalAdministrator", @@ -694,7 +736,7 @@ ], "properties": { "identity": { - "$ref": "../../../common/v1/types.json#/definitions/ResourceIdentity", + "$ref": "../../../common/v2/types.json#/definitions/ResourceIdentity", "description": "The Azure Active Directory identity of the server.", "x-ms-mutability": [ "read", @@ -718,7 +760,7 @@ "type": "object", "properties": { "identity": { - "$ref": "../../../common/v1/types.json#/definitions/ResourceIdentity", + "$ref": "../../../common/v2/types.json#/definitions/ResourceIdentity", "description": "Server identity" }, "properties": { diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/CreateDatabaseCopyMode.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/CreateDatabaseCopyMode.json index 88efc9cee697..ca4d14b4a98c 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/CreateDatabaseCopyMode.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/CreateDatabaseCopyMode.json @@ -48,7 +48,7 @@ "zoneRedundant": false }, "location": "southeastasia", - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/dbcopy", "name": "dbcopy", "type": "Microsoft.Sql/servers/databases" } @@ -83,7 +83,7 @@ "zoneRedundant": false }, "location": "southeastasia", - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/dbcopy", "name": "dbcopy", "type": "Microsoft.Sql/servers/databases" } diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/CreateDatabaseMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/CreateDatabaseMin.json index 765d0c151342..5faf7ba0bcc6 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/CreateDatabaseMin.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/CreateDatabaseMin.json @@ -29,8 +29,8 @@ "capacity": 10 }, "creationDate": "2017-06-07T04:41:33.937Z", - "currentBackupStorageRedundancy": "Geo", "currentServiceObjectiveName": "S0", + "currentBackupStorageRedundancy": "Geo", "defaultSecondaryLocation": "North Europe", "earliestRestoreDate": "2017-06-07T04:51:33.937Z", "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/CreateOrUpdateDatabaseExtensions.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/CreateOrUpdateDatabaseExtensions.json index c6ccf97ac64d..029460b39841 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/CreateOrUpdateDatabaseExtensions.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/CreateOrUpdateDatabaseExtensions.json @@ -7,10 +7,12 @@ "extensionName": "polybaseimport", "api-version": "2020-11-01-preview", "parameters": { - "operationMode": "PolybaseImport", - "storageKeyType": "StorageAccessKey", - "storageKey": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx", - "storageUri": "https://teststorage.blob.core.windows.net/testcontainer/Manifest.xml" + "properties": { + "operationMode": "PolybaseImport", + "storageKeyType": "StorageAccessKey", + "storageKey": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx", + "storageUri": "https://teststorage.blob.core.windows.net/testcontainer/Manifest.xml" + } } }, "responses": { diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/CreateVCoreDatabaseByServiceObjective.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/CreateVCoreDatabaseByServiceObjective.json index 06ac247c1878..560310f0ffb0 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/CreateVCoreDatabaseByServiceObjective.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/CreateVCoreDatabaseByServiceObjective.json @@ -31,13 +31,13 @@ "status": "Online", "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", "creationDate": "2017-06-07T04:41:33.937Z", - "currentBackupStorageRedundancy": "Geo", "currentServiceObjectiveName": "BC_Gen4_2", "defaultSecondaryLocation": "North Europe", "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", "licenseType": "LicenseIncluded", "maxLogSizeBytes": 104857600, "readScale": "Enabled", + "currentBackupStorageRedundancy": "Geo", "requestedBackupStorageRedundancy": "Geo", "zoneRedundant": false, "currentSku": { @@ -68,13 +68,13 @@ "status": "Online", "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", "creationDate": "2017-06-07T04:41:33.937Z", - "currentBackupStorageRedundancy": "Geo", "currentServiceObjectiveName": "BC_Gen4_2", "defaultSecondaryLocation": "North Europe", "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", "licenseType": "LicenseIncluded", "maxLogSizeBytes": 104857600, "readScale": "Enabled", + "currentBackupStorageRedundancy": "Geo", "requestedBackupStorageRedundancy": "Geo", "zoneRedundant": false, "currentSku": { diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/CreateVCoreDatabaseBySkuNameCapacity.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/CreateVCoreDatabaseBySkuNameCapacity.json index 9e803a862f87..3e6852daee7a 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/CreateVCoreDatabaseBySkuNameCapacity.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/CreateVCoreDatabaseBySkuNameCapacity.json @@ -30,13 +30,13 @@ "status": "Online", "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", "creationDate": "2017-06-07T04:41:33.937Z", - "currentBackupStorageRedundancy": "Geo", "currentServiceObjectiveName": "BC_Gen4_2", "defaultSecondaryLocation": "North Europe", "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", "licenseType": "LicenseIncluded", "maxLogSizeBytes": 104857600, "readScale": "Enabled", + "currentBackupStorageRedundancy": "Geo", "requestedBackupStorageRedundancy": "Geo", "zoneRedundant": false, "currentSku": { @@ -67,13 +67,13 @@ "status": "Online", "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", "creationDate": "2017-06-07T04:41:33.937Z", - "currentBackupStorageRedundancy": "Geo", "currentServiceObjectiveName": "BC_Gen4_2", "defaultSecondaryLocation": "North Europe", "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", "licenseType": "LicenseIncluded", "maxLogSizeBytes": 104857600, "readScale": "Enabled", + "currentBackupStorageRedundancy": "Geo", "requestedBackupStorageRedundancy": "Geo", "zoneRedundant": false, "currentSku": { diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/DatabaseSecurityAlertGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/DatabaseSecurityAlertGet.json index 469dc7a9288a..4ba29ec01e22 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/DatabaseSecurityAlertGet.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/DatabaseSecurityAlertGet.json @@ -25,8 +25,8 @@ "state": "Enabled", "emailAccountAdmins": true, "emailAddresses": [ - "test@microsoft.com", - "user@microsoft.com" + "test@consoto.com", + "user@consoto.com" ], "disabledAlerts": [ "Usage_Anomaly" diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/DatabaseSecurityAlertListByDatabase.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/DatabaseSecurityAlertListByDatabase.json index 3244393bf857..7cf155488fef 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/DatabaseSecurityAlertListByDatabase.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/DatabaseSecurityAlertListByDatabase.json @@ -26,8 +26,8 @@ "state": "Enabled", "emailAccountAdmins": true, "emailAddresses": [ - "test@microsoft.com", - "user@microsoft.com" + "test@consoto.com", + "user@consoto.com" ], "disabledAlerts": [ "Usage_Anomaly" diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceCreateMax.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceCreateMax.json index fb003b71febe..19955c28d20b 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceCreateMax.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceCreateMax.json @@ -15,7 +15,7 @@ }, "properties": { "administratorLogin": "dummylogin", - "administratorLoginPassword": "", + "administratorLoginPassword": "PLACEHOLDER", "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", "vCores": 8, "storageSizeInGB": 1024, @@ -24,10 +24,18 @@ "dnsZonePartner": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Sql/managedInstances/testinstance", "publicDataEndpointEnabled": false, "proxyOverride": "Redirect", + "minimalTlsVersion": "1.2", "timezoneId": "UTC", "instancePoolId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Sql/instancePools/pool1", "maintenanceConfigurationId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_JapanEast_MI_1", - "storageAccountType": "GRS" + "storageAccountType": "GRS", + "administrators": { + "principalType": "User", + "login": "bob@contoso.com", + "sid": "00000011-1111-2222-2222-123456789111", + "tenantId": "00000011-1111-2222-2222-123456789111", + "azureADOnlyAuthentication": true + } } } }, @@ -45,23 +53,32 @@ "administratorLogin": "dummylogin", "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", "state": "Ready", + "provisioningState": "Creating", "vCores": 8, "storageSizeInGB": 1024, "licenseType": "LicenseIncluded", "collation": "SQL_Latin1_General_CP1_CI_AS", "publicDataEndpointEnabled": false, "proxyOverride": "Redirect", + "minimalTlsVersion": "1.2", "dnsZone": "1b4e2caff2530", "timezoneId": "UTC", - "instancePoolId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Sql/instancePools/pool1", + "instancePoolId": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/testrg/providers/Microsoft.Sql/instancePools/pool1", "maintenanceConfigurationId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_JapanEast_MI_1", - "storageAccountType": "GRS" + "storageAccountType": "GRS", + "administrators": { + "principalType": "User", + "login": "bob@contoso.com", + "sid": "00000011-1111-2222-2222-123456789111", + "tenantId": "00000011-1111-2222-2222-123456789111", + "azureADOnlyAuthentication": true + } }, "location": "japaneast", "tags": { "tagKey1": "TagValue1" }, - "id": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Sql/managedInstances/testinstance", + "id": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/testrg/providers/Microsoft.Sql/managedInstances/testinstance", "name": "testinstance", "type": "Microsoft.Sql/managedInstances" } @@ -79,17 +96,26 @@ "administratorLogin": "dummylogin", "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", "state": "Ready", + "provisioningState": "Creating", "vCores": 8, "storageSizeInGB": 1024, "licenseType": "LicenseIncluded", "collation": "SQL_Latin1_General_CP1_CI_AS", "publicDataEndpointEnabled": false, "proxyOverride": "Redirect", + "minimalTlsVersion": "1.2", "dnsZone": "1b4e2caff2530", "timezoneId": "UTC", "instancePoolId": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/testrg/providers/Microsoft.Sql/instancePools/pool1", "maintenanceConfigurationId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_JapanEast_MI_1", - "storageAccountType": "GRS" + "storageAccountType": "GRS", + "administrators": { + "principalType": "User", + "login": "bob@contoso.com", + "sid": "00000011-1111-2222-2222-123456789111", + "tenantId": "00000011-1111-2222-2222-123456789111", + "azureADOnlyAuthentication": true + } }, "location": "japaneast", "tags": { diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceCreateMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceCreateMin.json index e45e52ebad86..14641ae1b6a0 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceCreateMin.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceCreateMin.json @@ -11,7 +11,7 @@ }, "properties": { "administratorLogin": "dummylogin", - "administratorLoginPassword": "", + "administratorLoginPassword": "PLACEHOLDER", "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", "vCores": 8, "storageSizeInGB": 1024, @@ -34,12 +34,13 @@ "administratorLogin": "dummylogin", "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", "state": "Ready", + "provisioningState": "Creating", "vCores": 8, "storageSizeInGB": 1024, "licenseType": "LicenseIncluded", "collation": "SQL_Latin1_General_CP1_CI_AS", "publicDataEndpointEnabled": false, - "proxyOverride": "Default", + "proxyOverride": "Redirect", "dnsZone": "1b4e2caff2530" }, "location": "japaneast", @@ -62,6 +63,7 @@ "administratorLogin": "dummylogin", "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", "state": "Ready", + "provisioningState": "Creating", "vCores": 8, "storageSizeInGB": 1024, "licenseType": "LicenseIncluded", diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceGet.json index 1c65217784eb..883c9569318f 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceGet.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceGet.json @@ -19,12 +19,14 @@ "administratorLogin": "dummylogin", "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", "state": "Ready", + "provisioningState": "Succeeded", "vCores": 8, "storageSizeInGB": 1024, "licenseType": "LicenseIncluded", "collation": "SQL_Latin1_General_CP1_CI_AS", "publicDataEndpointEnabled": false, "proxyOverride": "Default", + "minimalTlsVersion": "1.2", "dnsZone": "1b4e2caff2530", "instancePoolId": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/testrg/providers/Microsoft.Sql/instancePools/instancePool1", "maintenanceConfigurationId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_JapanEast_MI_1", diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceGetWithExpandEqualsAdministrators.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceGetWithExpandEqualsAdministrators.json new file mode 100644 index 000000000000..a90ef1f6b5cf --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceGetWithExpandEqualsAdministrators.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "subscriptionId": "20d7082a-0fc7-4468-82bd-542694d5042b", + "resourceGroupName": "testrg", + "managedInstanceName": "testinstance", + "api-version": "2020-11-01-preview" + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "GP_Gen4", + "tier": "GeneralPurpose", + "capacity": 8, + "family": "Gen4" + }, + "properties": { + "fullyQualifiedDomainName": "testinstance.1b4e2caff2530.database.windows.net", + "administratorLogin": "dummylogin", + "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "state": "Ready", + "provisioningState": "Succeeded", + "vCores": 8, + "storageSizeInGB": 1024, + "licenseType": "LicenseIncluded", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "publicDataEndpointEnabled": false, + "proxyOverride": "Default", + "minimalTlsVersion": "1.2", + "dnsZone": "1b4e2caff2530", + "instancePoolId": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/testrg/providers/Microsoft.Sql/instancePools/instancePool1", + "maintenanceConfigurationId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_JapanEast_MI_1", + "storageAccountType": "GRS", + "administrators": { + "principalType": "User", + "login": "bob@contoso.com", + "sid": "00000011-1111-2222-2222-123456789111", + "tenantId": "00000011-1111-2222-2222-123456789111", + "azureADOnlyAuthentication": true + } + }, + "location": "japaneast", + "tags": { + "key": "value" + }, + "id": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/testrg/providers/Microsoft.Sql/managedInstances/testinstance", + "name": "testinstance", + "type": "Microsoft.Sql/managedInstances" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceKeyCreateOrUpdate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceKeyCreateOrUpdate.json index 8ac441f818a3..5964f4fd0415 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceKeyCreateOrUpdate.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceKeyCreateOrUpdate.json @@ -21,7 +21,8 @@ "kind": "azurekeyvault", "properties": { "thumbprint": "00112233445566778899AABBCCDDEEFFAABBCCDD", - "creationDate": "2017-05-01T00:00:00Z" + "creationDate": "2020-11-01T00:00:00Z", + "autoRotationEnabled": false } } }, @@ -33,7 +34,8 @@ "kind": "azurekeyvault", "properties": { "thumbprint": "00112233445566778899AABBCCDDEEFFAABBCCDD", - "creationDate": "2017-05-01T00:00:00Z" + "creationDate": "2020-11-01T00:00:00Z", + "autoRotationEnabled": false } } }, diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceKeyGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceKeyGet.json index 83630ed28650..9cf4d1069bd1 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceKeyGet.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceKeyGet.json @@ -15,7 +15,8 @@ "kind": "azurekeyvault", "properties": { "thumbprint": "00112233445566778899AABBCCDDEEFFAABBCCDD", - "creationDate": "2017-05-01T00:00:00Z" + "creationDate": "2020-11-01T00:00:00Z", + "autoRotationEnabled": false } } } diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceKeyList.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceKeyList.json index b8c507b6ff4d..eade1396e302 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceKeyList.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceKeyList.json @@ -16,7 +16,8 @@ "kind": "azurekeyvault", "properties": { "thumbprint": "00112233445566778899AABBCCDDEEFFAABBCCDD", - "creationDate": "2017-05-01T00:00:00Z" + "creationDate": "2020-11-15T00:00:00Z", + "autoRotationEnabled": false } }, { @@ -26,7 +27,8 @@ "kind": "azurekeyvault", "properties": { "thumbprint": "AAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBB", - "creationDate": "2017-05-01T00:00:00Z" + "creationDate": "2020-11-15T00:00:00Z", + "autoRotationEnabled": false } }, { diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceList.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceList.json index aaee6fbc0361..ed34fb5750b4 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceList.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceList.json @@ -23,12 +23,14 @@ "administratorLogin": "dummylogin", "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", "state": "Ready", + "provisioningState": "Succeeded", "vCores": 8, "storageSizeInGB": 1024, "licenseType": "LicenseIncluded", "collation": "SQL_Latin1_General_CP1_CI_AS", "publicDataEndpointEnabled": false, "proxyOverride": "Default", + "minimalTlsVersion": "1.2", "dnsZone": "1b4e2caff2530", "maintenanceConfigurationId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_JapanEast_MI_1", "storageAccountType": "GRS" @@ -50,14 +52,16 @@ "administratorLogin": "dummylogin", "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/subnet2", "state": "Ready", + "provisioningState": "Succeeded", "vCores": 16, "storageSizeInGB": 1024, "licenseType": "Full", "collation": "SQL_Latin1_General_CP1_CI_AS", "publicDataEndpointEnabled": false, "proxyOverride": "Default", + "minimalTlsVersion": "1.2", "dnsZone": "2c3d1bdae3412", - "maintenanceConfigurationId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_JapanEast_MI_2", + "maintenanceConfigurationId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_JapanEast_MI_1", "storageAccountType": "GRS" } } diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceListByInstancePool.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceListByInstancePool.json index fc09a05be46b..e780fe9fcdf3 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceListByInstancePool.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceListByInstancePool.json @@ -25,6 +25,7 @@ "administratorLogin": "dummylogin", "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/Test1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", "state": "Ready", + "provisioningState": "Succeeded", "vCores": 8, "storageSizeInGB": 1024, "licenseType": "LicenseIncluded", @@ -32,6 +33,7 @@ "publicDataEndpointEnabled": false, "dnsZone": "1b4e2caff2530", "proxyOverride": "Redirect", + "minimalTlsVersion": "1.2", "instancePoolId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/Test1/providers/Microsoft.Sql/instancePools/pool1", "maintenanceConfigurationId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_CanadaCentral_MI_1", "storageAccountType": "GRS" @@ -53,6 +55,7 @@ "administratorLogin": "dummylogin", "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/Test1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", "state": "Ready", + "provisioningState": "Succeeded", "vCores": 16, "storageSizeInGB": 1024, "licenseType": "Full", @@ -60,6 +63,7 @@ "publicDataEndpointEnabled": false, "dnsZone": "2c3d1bdae3412", "proxyOverride": "Redirect", + "minimalTlsVersion": "1.2", "instancePoolId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/Test1/providers/Microsoft.Sql/instancePools/pool1", "maintenanceConfigurationId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_CanadaCentral_MI_1", "storageAccountType": "GRS" diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceListByInstancePoolWithExpandEqualsAdministrators.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceListByInstancePoolWithExpandEqualsAdministrators.json new file mode 100644 index 000000000000..5c90d3f58406 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceListByInstancePoolWithExpandEqualsAdministrators.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "subscriptionId": "20D7082A-0FC7-4468-82BD-542694D5042B", + "resourceGroupName": "Test1", + "instancePoolName": "pool1", + "api-version": "2020-11-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "location": "canadacentral", + "id": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/Test1/providers/Microsoft.Sql/managedInstances/testinstance1", + "name": "testinstance1", + "type": "Microsoft.Sql/managedInstances", + "sku": { + "name": "GP_Gen5", + "tier": "GeneralPurpose", + "capacity": 8, + "family": "Gen5" + }, + "properties": { + "fullyQualifiedDomainName": "testinstance1.1b4e2caff2530.database.windows.net", + "administratorLogin": "dummylogin", + "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/Test1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "state": "Ready", + "provisioningState": "Succeeded", + "vCores": 8, + "storageSizeInGB": 1024, + "licenseType": "LicenseIncluded", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "publicDataEndpointEnabled": false, + "dnsZone": "1b4e2caff2530", + "proxyOverride": "Redirect", + "minimalTlsVersion": "1.2", + "instancePoolId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/Test1/providers/Microsoft.Sql/instancePools/pool1", + "maintenanceConfigurationId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_CanadaCentral_MI_1", + "storageAccountType": "GRS", + "administrators": { + "principalType": "User", + "login": "bob@contoso.com", + "sid": "00000011-1111-2222-2222-123456789111", + "tenantId": "00000011-1111-2222-2222-123456789111", + "azureADOnlyAuthentication": true + } + } + }, + { + "location": "canadacentral", + "id": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/Test1/providers/Microsoft.Sql/managedInstances/testinstance2", + "name": "testinstance2", + "type": "Microsoft.Sql/managedInstances", + "sku": { + "name": "GP_Gen5", + "tier": "GeneralPurpose", + "capacity": 16, + "family": "Gen5" + }, + "properties": { + "fullyQualifiedDomainName": "testinstance2.2c3d1bdae3412.database.windows.net", + "administratorLogin": "dummylogin", + "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/Test1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "state": "Ready", + "provisioningState": "Succeeded", + "vCores": 16, + "storageSizeInGB": 1024, + "licenseType": "Full", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "publicDataEndpointEnabled": false, + "dnsZone": "2c3d1bdae3412", + "proxyOverride": "Redirect", + "minimalTlsVersion": "1.2", + "instancePoolId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/Test1/providers/Microsoft.Sql/instancePools/pool1", + "maintenanceConfigurationId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_CanadaCentral_MI_2", + "storageAccountType": "GRS", + "administrators": { + "principalType": "User", + "login": "bob@contoso.com", + "sid": "00000011-1111-2222-2222-123456789111", + "tenantId": "00000011-1111-2222-2222-123456789111", + "azureADOnlyAuthentication": true + } + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceListByResourceGroup.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceListByResourceGroup.json index 0fa9a97a2071..1faff09df2c7 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceListByResourceGroup.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceListByResourceGroup.json @@ -24,14 +24,16 @@ "administratorLogin": "dummylogin", "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", "state": "Ready", + "provisioningState": "Succeeded", "vCores": 8, "storageSizeInGB": 1024, "licenseType": "LicenseIncluded", "collation": "SQL_Latin1_General_CP1_CI_AS", "publicDataEndpointEnabled": false, "proxyOverride": "Default", + "minimalTlsVersion": "1.2", "dnsZone": "1b4e2caff2530", - "maintenanceConfigurationId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_JapanEast_MI_1", + "maintenanceConfigurationId": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_JapanEast_MI_1", "storageAccountType": "GRS" } }, @@ -51,14 +53,16 @@ "administratorLogin": "dummylogin", "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/subnet2", "state": "Ready", + "provisioningState": "Succeeded", "vCores": 16, "storageSizeInGB": 1024, "licenseType": "Full", "collation": "SQL_Latin1_General_CP1_CI_AS", "publicDataEndpointEnabled": false, "proxyOverride": "Default", + "minimalTlsVersion": "1.2", "dnsZone": "2c3d1bdae3412", - "maintenanceConfigurationId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_JapanEast_MI_1", + "maintenanceConfigurationId": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_JapanEast_MI_1", "storageAccountType": "GRS" } } diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceListByResourceGroupWithExpandEqualsAdministrators.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceListByResourceGroupWithExpandEqualsAdministrators.json new file mode 100644 index 000000000000..bb91f96f20ce --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceListByResourceGroupWithExpandEqualsAdministrators.json @@ -0,0 +1,87 @@ +{ + "parameters": { + "subscriptionId": "20D7082A-0FC7-4468-82BD-542694D5042B", + "resourceGroupName": "Test1", + "api-version": "2020-11-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "location": "japaneast", + "id": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/Test1/providers/Microsoft.Sql/managedInstances/testinstance1", + "name": "testinstance1", + "type": "Microsoft.Sql/managedInstances", + "sku": { + "name": "GP_Gen4", + "tier": "GeneralPurpose", + "capacity": 8, + "family": "Gen4" + }, + "properties": { + "fullyQualifiedDomainName": "testinstance1.1b4e2caff2530.database.windows.net", + "administratorLogin": "dummylogin", + "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "state": "Ready", + "provisioningState": "Succeeded", + "vCores": 8, + "storageSizeInGB": 1024, + "licenseType": "LicenseIncluded", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "publicDataEndpointEnabled": false, + "proxyOverride": "Default", + "minimalTlsVersion": "1.2", + "dnsZone": "1b4e2caff2530", + "maintenanceConfigurationId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_JapanEast_MI_1", + "storageAccountType": "GRS", + "administrators": { + "principalType": "User", + "login": "bob@contoso.com", + "sid": "00000011-1111-2222-2222-123456789111", + "tenantId": "00000011-1111-2222-2222-123456789111", + "azureADOnlyAuthentication": true + } + } + }, + { + "location": "japaneast", + "id": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/Test1/providers/Microsoft.Sql/managedInstances/testinstance2", + "name": "testinstance2", + "type": "Microsoft.Sql/managedInstances", + "sku": { + "name": "BC_Gen5", + "tier": "BusinessCritical", + "capacity": 16, + "family": "Gen4" + }, + "properties": { + "fullyQualifiedDomainName": "testinstance2.2c3d1bdae3412.database.windows.net", + "administratorLogin": "dummylogin", + "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/subnet2", + "state": "Ready", + "provisioningState": "Succeeded", + "vCores": 16, + "storageSizeInGB": 1024, + "licenseType": "Full", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "publicDataEndpointEnabled": false, + "proxyOverride": "Default", + "minimalTlsVersion": "1.2", + "dnsZone": "2c3d1bdae3412", + "maintenanceConfigurationId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_JapanEast_MI_2", + "storageAccountType": "GRS", + "administrators": { + "principalType": "User", + "login": "bob@contoso.com", + "sid": "00000011-1111-2222-2222-123456789111", + "tenantId": "00000011-1111-2222-2222-123456789111", + "azureADOnlyAuthentication": true + } + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceListWithExpandEqualsAdministrators.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceListWithExpandEqualsAdministrators.json new file mode 100644 index 000000000000..46fb2fef0027 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceListWithExpandEqualsAdministrators.json @@ -0,0 +1,86 @@ +{ + "parameters": { + "subscriptionId": "20D7082A-0FC7-4468-82BD-542694D5042B", + "api-version": "2020-11-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "location": "japaneast", + "id": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/Test1/providers/Microsoft.Sql/managedInstances/testinstance1", + "name": "testinstance1", + "type": "Microsoft.Sql/managedInstances", + "sku": { + "name": "GP_Gen4", + "tier": "GeneralPurpose", + "capacity": 8, + "family": "Gen4" + }, + "properties": { + "fullyQualifiedDomainName": "testinstance1.1b4e2caff2530.database.windows.net", + "administratorLogin": "dummylogin", + "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "state": "Ready", + "provisioningState": "Succeeded", + "vCores": 8, + "storageSizeInGB": 1024, + "licenseType": "LicenseIncluded", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "publicDataEndpointEnabled": false, + "proxyOverride": "Default", + "minimalTlsVersion": "1.2", + "dnsZone": "1b4e2caff2530", + "maintenanceConfigurationId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_JapanEast_MI_1", + "storageAccountType": "GRS", + "administrators": { + "principalType": "User", + "login": "bob@contoso.com", + "sid": "00000011-1111-2222-2222-123456789111", + "tenantId": "00000011-1111-2222-2222-123456789111", + "azureADOnlyAuthentication": true + } + } + }, + { + "location": "japaneast", + "id": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/Test1/providers/Microsoft.Sql/managedInstances/testinstance2", + "name": "testinstance2", + "type": "Microsoft.Sql/managedInstances", + "sku": { + "name": "BC_Gen5", + "tier": "BusinessCritical", + "capacity": 16, + "family": "Gen4" + }, + "properties": { + "fullyQualifiedDomainName": "testinstance2.2c3d1bdae3412.database.windows.net", + "administratorLogin": "dummylogin", + "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/subnet2", + "state": "Ready", + "provisioningState": "Succeeded", + "vCores": 16, + "storageSizeInGB": 1024, + "licenseType": "Full", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "publicDataEndpointEnabled": false, + "proxyOverride": "Default", + "minimalTlsVersion": "1.2", + "dnsZone": "2c3d1bdae3412", + "maintenanceConfigurationId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_JapanEast_MI_2", + "storageAccountType": "GRS", + "administrators": { + "principalType": "User", + "login": "bob@contoso.com", + "sid": "00000011-1111-2222-2222-123456789111", + "tenantId": "00000011-1111-2222-2222-123456789111", + "azureADOnlyAuthentication": true + } + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceRemoveMaintenanceConfiguration.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceRemoveMaintenanceConfiguration.json new file mode 100644 index 000000000000..871593806f4d --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceRemoveMaintenanceConfiguration.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "20D7082A-0FC7-4468-82BD-542694D5042B", + "resourceGroupName": "testrg", + "managedInstanceName": "testinstance", + "api-version": "2020-11-01-preview", + "location": "japaneast", + "parameters": { + "properties": { + "maintenanceConfigurationId": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_Default" + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "GP_Gen4", + "tier": "GeneralPurpose", + "capacity": 8, + "family": "Gen4" + }, + "properties": { + "fullyQualifiedDomainName": "testinstance.1b4e2caff2530.database.windows.net", + "administratorLogin": "dummylogin", + "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "state": "Ready", + "vCores": 8, + "storageSizeInGB": 1024, + "licenseType": "LicenseIncluded", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "publicDataEndpointEnabled": false, + "proxyOverride": "Default", + "dnsZone": "1b4e2caff2530", + "instancePoolId": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/testrg/providers/Microsoft.Sql/instancePools/instancePool1", + "maintenanceConfigurationId": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_Default" + }, + "location": "japaneast", + "id": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/testrg/providers/Microsoft.Sql/managedInstances/testinstance", + "name": "testinstance", + "type": "Microsoft.Sql/managedInstances" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceUpdateMax.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceUpdateMax.json index 0bacbf774062..c452249ccc3f 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceUpdateMax.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceUpdateMax.json @@ -15,9 +15,10 @@ }, "properties": { "administratorLogin": "dummylogin", - "administratorLoginPassword": "", + "administratorLoginPassword": "PLACEHOLDER", "proxyOverride": "Redirect", "publicDataEndpointEnabled": false, + "minimalTlsVersion": "1.2", "licenseType": "BasePrice", "vCores": 8, "storageSizeInGB": 448, @@ -53,6 +54,7 @@ "collation": "SQL_Latin1_General_CP1_CI_AS", "publicDataEndpointEnabled": false, "proxyOverride": "Redirect", + "minimalTlsVersion": "1.2", "dnsZone": "1b4e2caff2530", "instancePoolId": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/testrg/providers/Microsoft.Sql/instancePools/instancePool1", "maintenanceConfigurationId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_JapanEast_MI_1" diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceUpdateMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceUpdateMin.json index e84f2072e1ba..a1af8dea0dd9 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceUpdateMin.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedInstanceUpdateMin.json @@ -21,7 +21,7 @@ }, "properties": { "fullyQualifiedDomainName": "testinstance.1b4e2caff2530.database.windows.net", - "administratorLogin": "dummylogin", + "administratorLogin": "PLACEHOLDER", "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", "state": "Ready", "vCores": 8, diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedServerSecurityAlertGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedServerSecurityAlertGet.json index da6835eced19..de0f8717a8b6 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedServerSecurityAlertGet.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedServerSecurityAlertGet.json @@ -24,7 +24,7 @@ "state": "Disabled", "emailAccountAdmins": true, "emailAddresses": [ - "test@microsoft.com;user@microsoft.com" + "test@consoto.com;user@consoto.com" ], "disabledAlerts": [ "Access_Anomaly" diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedServerSecurityAlertListByInstance.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedServerSecurityAlertListByInstance.json index 12c4b92191d0..81ac761e59a0 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedServerSecurityAlertListByInstance.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ManagedServerSecurityAlertListByInstance.json @@ -25,7 +25,7 @@ "state": "Disabled", "emailAccountAdmins": true, "emailAddresses": [ - "test@microsoft.com;user@microsoft.com" + "test@consoto.com;user@consoto.com" ], "disabledAlerts": [ "Access_Anomaly" diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/PatchVCoreDatabase.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/PatchVCoreDatabase.json index aedb2b27a10f..553f29c87e66 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/PatchVCoreDatabase.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/PatchVCoreDatabase.json @@ -45,7 +45,7 @@ "capacity": 4 }, "currentBackupStorageRedundancy": "Geo", - "requestedBackupStorageRedundancy": "Geo" + "requestedBackupStorageRedundancy": "Local" }, "location": "southeastasia", "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ServerCreate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ServerCreate.json index d60302c01818..523b899545b0 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ServerCreate.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ServerCreate.json @@ -7,7 +7,14 @@ "parameters": { "properties": { "administratorLogin": "dummylogin", - "administratorLoginPassword": "" + "administratorLoginPassword": "PLACEHOLDER", + "administrators": { + "principalType": "User", + "login": "bob@contoso.com", + "sid": "00000011-1111-2222-2222-123456789111", + "tenantId": "00000011-1111-2222-2222-123456789111", + "azureADOnlyAuthentication": true + } }, "location": "Japan East" } @@ -25,6 +32,13 @@ "administratorLogin": "dummylogin", "version": "12.0", "state": "Ready", + "administrators": { + "principalType": "User", + "login": "bob@contoso.com", + "sid": "00000011-1111-2222-2222-123456789111", + "tenantId": "00000011-1111-2222-2222-123456789111", + "azureADOnlyAuthentication": true + }, "privateEndpointConnections": [ { "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/privateEndpointConnections/private-endpoint-name-00000000-1111-2222-3333-444444444444", @@ -56,6 +70,13 @@ "administratorLogin": "dummylogin", "version": "12.0", "state": "Ready", + "administrators": { + "principalType": "User", + "login": "bob@contoso.com", + "sid": "00000011-1111-2222-2222-123456789111", + "tenantId": "00000011-1111-2222-2222-123456789111", + "azureADOnlyAuthentication": true + }, "privateEndpointConnections": [ { "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/privateEndpointConnections/private-endpoint-name-00000000-1111-2222-3333-444444444444", diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ServerKeyCreateOrUpdate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ServerKeyCreateOrUpdate.json index 83ac77f9902a..e584a38782ca 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ServerKeyCreateOrUpdate.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ServerKeyCreateOrUpdate.json @@ -22,7 +22,8 @@ "kind": "azurekeyvault", "properties": { "thumbprint": "00112233445566778899AABBCCDDEEFFAABBCCDD", - "creationDate": "2017-05-01T00:00:00Z" + "creationDate": "2020-11-15T00:00:00Z", + "autoRotationEnabled": false } } }, @@ -35,7 +36,8 @@ "kind": "azurekeyvault", "properties": { "thumbprint": "00112233445566778899AABBCCDDEEFFAABBCCDD", - "creationDate": "2017-05-01T00:00:00Z" + "creationDate": "2020-11-15T00:00:00Z", + "autoRotationEnabled": false } } }, diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ServerKeyGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ServerKeyGet.json index 4d0096f7241d..a28da51be92a 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ServerKeyGet.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ServerKeyGet.json @@ -16,7 +16,8 @@ "kind": "azurekeyvault", "properties": { "thumbprint": "00112233445566778899AABBCCDDEEFFAABBCCDD", - "creationDate": "2017-05-01T00:00:00Z" + "creationDate": "2020-11-15T00:00:00Z", + "autoRotationEnabled": false } } } diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ServerKeyList.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ServerKeyList.json index 15e3042daebf..4d6e12d9c5c8 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ServerKeyList.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ServerKeyList.json @@ -17,7 +17,8 @@ "kind": "azurekeyvault", "properties": { "thumbprint": "00112233445566778899AABBCCDDEEFFAABBCCDD", - "creationDate": "2017-05-01T00:00:00Z" + "creationDate": "2020-11-15T00:00:00Z", + "autoRotationEnabled": false } }, { @@ -28,7 +29,8 @@ "kind": "azurekeyvault", "properties": { "thumbprint": "AAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBB", - "creationDate": "2017-05-01T00:00:00Z" + "creationDate": "2020-11-15T00:00:00Z", + "autoRotationEnabled": false } }, { diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ServerSecurityAlertsGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ServerSecurityAlertsGet.json index b02948620cce..837baefd0b1d 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ServerSecurityAlertsGet.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ServerSecurityAlertsGet.json @@ -25,7 +25,7 @@ "creationTime": "2020-04-03T04:41:33.937Z", "emailAccountAdmins": true, "emailAddresses": [ - "test@microsoft.com;user@microsoft.com" + "test@consoto.com;user@consoto.com" ], "disabledAlerts": [ "Access_Anomaly" diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ServerSecurityAlertsListByServer.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ServerSecurityAlertsListByServer.json index 11e922f9e698..6d9386edd0fb 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ServerSecurityAlertsListByServer.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ServerSecurityAlertsListByServer.json @@ -26,7 +26,7 @@ "creationTime": "2020-04-03T04:41:33.937Z", "emailAccountAdmins": true, "emailAddresses": [ - "test@microsoft.com;user@microsoft.com" + "test@consoto.com;user@consoto.com" ], "disabledAlerts": [ "Access_Anomaly" diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ServerTrustGroupCreate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ServerTrustGroupCreate.json index 2e0af51acfd1..47b21dea03ad 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ServerTrustGroupCreate.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ServerTrustGroupCreate.json @@ -16,7 +16,8 @@ } ], "trustScopes": [ - "GlobalTransactions" + "GlobalTransactions", + "ServiceBroker" ] } } @@ -36,7 +37,8 @@ } ], "trustScopes": [ - "GlobalTransactions" + "GlobalTransactions", + "ServiceBroker" ] }, "type": "Microsoft.Sql/locations/serverTrustGroups" @@ -56,7 +58,8 @@ } ], "trustScopes": [ - "GlobalTransactions" + "GlobalTransactions", + "ServiceBroker" ] }, "type": "Microsoft.Sql/locations/serverTrustGroups" diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ServerTrustGroupGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ServerTrustGroupGet.json index 927e19117e35..5f2163da30a4 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ServerTrustGroupGet.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ServerTrustGroupGet.json @@ -21,7 +21,8 @@ } ], "trustScopes": [ - "GlobalTransactions" + "GlobalTransactions", + "ServiceBroker" ] }, "type": "Microsoft.Sql/locations/serverTrustGroups" diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ServerTrustGroupList.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ServerTrustGroupList.json index d441d496da1e..53e9fdebbd74 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ServerTrustGroupList.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ServerTrustGroupList.json @@ -22,7 +22,8 @@ } ], "trustScopes": [ - "GlobalTransactions" + "GlobalTransactions", + "ServiceBroker" ] }, "type": "Microsoft.Sql/locations/serverTrustGroups" @@ -40,7 +41,8 @@ } ], "trustScopes": [ - "GlobalTransactions" + "GlobalTransactions", + "ServiceBroker" ] }, "type": "Microsoft.Sql/locations/serverTrustGroups" diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ServerTrustGroupListByManagedInstance.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ServerTrustGroupListByManagedInstance.json index 8efbbbd28d90..e7c5fa6cea6c 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ServerTrustGroupListByManagedInstance.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ServerTrustGroupListByManagedInstance.json @@ -22,7 +22,8 @@ } ], "trustScopes": [ - "GlobalTransactions" + "GlobalTransactions", + "ServiceBroker" ] }, "type": "Microsoft.Sql/locations/serverTrustGroups" @@ -40,7 +41,8 @@ } ], "trustScopes": [ - "GlobalTransactions" + "GlobalTransactions", + "ServiceBroker" ] }, "type": "Microsoft.Sql/locations/serverTrustGroups" diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ServerUpdate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ServerUpdate.json index 80327edf5acd..bec96d3ae5ea 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ServerUpdate.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-11-01-preview/examples/ServerUpdate.json @@ -7,7 +7,7 @@ "parameters": { "properties": { "administratorLogin": "dummylogin", - "administratorLoginPassword": "" + "administratorLoginPassword": "PLACEHOLDER" } } }, diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/BackupShortTermRetentionPolicies.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/BackupShortTermRetentionPolicies.json new file mode 100644 index 000000000000..5e6a3238e7a2 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/BackupShortTermRetentionPolicies.json @@ -0,0 +1,332 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/backupShortTermRetentionPolicies/{policyName}": { + "get": { + "tags": [ + "BackupShortTermRetentionPolicies" + ], + "description": "Gets a database's short term retention policy.", + "operationId": "BackupShortTermRetentionPolicies_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/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": "ShortTermRetentionPolicyName", + "modelAsString": true + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the policy.", + "schema": { + "$ref": "#/definitions/BackupShortTermRetentionPolicy" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-examples": { + "Get the short term retention policy for the database.": { + "$ref": "./examples/GetShortTermRetentionPolicy.json" + } + } + }, + "put": { + "tags": [ + "BackupShortTermRetentionPolicies" + ], + "description": "Updates a database's short term retention policy.", + "operationId": "BackupShortTermRetentionPolicies_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/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": "ShortTermRetentionPolicyName", + "modelAsString": true + } + }, + { + "name": "parameters", + "in": "body", + "description": "The short term retention policy info.", + "required": true, + "schema": { + "$ref": "#/definitions/BackupShortTermRetentionPolicy" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the policy.", + "schema": { + "$ref": "#/definitions/BackupShortTermRetentionPolicy" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 InvalidBackupRetentionPeriod - The retention days of {0} is not a valid configuration. Valid backup retention in days must be between {1} and {2}\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 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 CannotFindObject - Cannot find the object because it does not exist or you do not have permissions\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 ConflictingSystemOperationInProgress - A system maintenance operation is in progress on the database and further operations need to wait until it is completed.\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update the short term retention policy for the database.": { + "$ref": "./examples/UpdateShortTermRetentionPolicy.json" + } + } + }, + "patch": { + "tags": [ + "BackupShortTermRetentionPolicies" + ], + "description": "Updates a database's short term retention policy.", + "operationId": "BackupShortTermRetentionPolicies_Update", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/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": "ShortTermRetentionPolicyName", + "modelAsString": true + } + }, + { + "name": "parameters", + "in": "body", + "description": "The short term retention policy info.", + "required": true, + "schema": { + "$ref": "#/definitions/BackupShortTermRetentionPolicy" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the policy.", + "schema": { + "$ref": "#/definitions/BackupShortTermRetentionPolicy" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 InvalidBackupRetentionPeriod - The retention days of {0} is not a valid configuration. Valid backup retention in days must be between {1} and {2}\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 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 CannotFindObject - Cannot find the object because it does not exist or you do not have permissions\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 ConflictingSystemOperationInProgress - A system maintenance operation is in progress on the database and further operations need to wait until it is completed.\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update the short term retention policy for the database.": { + "$ref": "./examples/UpdateShortTermRetentionPolicy.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/backupShortTermRetentionPolicies": { + "get": { + "tags": [ + "BackupShortTermRetentionPolicies" + ], + "description": "Gets a database's short term retention policy.", + "operationId": "BackupShortTermRetentionPolicies_ListByDatabase", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the policy.", + "schema": { + "$ref": "#/definitions/BackupShortTermRetentionPolicyListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get the short term retention policy for the database.": { + "$ref": "./examples/ListShortTermRetentionPoliciesByDatabase.json" + } + } + } + } + }, + "definitions": { + "BackupShortTermRetentionPolicyProperties": { + "description": "Properties of a short term retention policy", + "type": "object", + "properties": { + "retentionDays": { + "format": "int32", + "description": "The backup retention period in days. This is how many days Point-in-Time Restore will be supported.", + "type": "integer" + } + } + }, + "BackupShortTermRetentionPolicy": { + "description": "A short term retention policy.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/BackupShortTermRetentionPolicyProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "BackupShortTermRetentionPolicyListResult": { + "description": "A list of short term retention policies.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/BackupShortTermRetentionPolicy" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/BlobAuditing.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/BlobAuditing.json new file mode 100644 index 000000000000..d9a6885c1311 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/BlobAuditing.json @@ -0,0 +1,1067 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/extendedAuditingSettings/{blobAuditingPolicyName}": { + "get": { + "tags": [ + "BlobAuditing" + ], + "description": "Gets an extended database's blob auditing policy.", + "operationId": "ExtendedDatabaseBlobAuditingPolicies_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/BlobAuditingPolicyNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the extended database blob auditing policy.", + "schema": { + "$ref": "#/definitions/ExtendedDatabaseBlobAuditingPolicy" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 BlobAuditingIsNotSupportedOnResourceType - Blob Auditing is currently not supported for this resource type.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + } + }, + "x-ms-examples": { + "Get an extended database's blob auditing policy": { + "$ref": "./examples/ExtendedDatabaseBlobAuditingGet.json" + } + } + }, + "put": { + "tags": [ + "BlobAuditing" + ], + "description": "Creates or updates an extended database's blob auditing policy.", + "operationId": "ExtendedDatabaseBlobAuditingPolicies_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/BlobAuditingPolicyNameParameter" + }, + { + "name": "parameters", + "in": "body", + "description": "The extended database blob auditing policy.", + "required": true, + "schema": { + "$ref": "#/definitions/ExtendedDatabaseBlobAuditingPolicy" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully set the extended database blob auditing policy.", + "schema": { + "$ref": "#/definitions/ExtendedDatabaseBlobAuditingPolicy" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 BlobAuditingIsNotSupportedOnResourceType - Blob Auditing is currently not supported for this resource type.\n\n * 400 BlobAuditingPredicateExpressionSyntaxError - Invalid value of parameter 'predicateExpression'.\n\n * 400 InvalidDatabaseBlobAuditingPolicyCreateRequest - The create database blob auditing policy request does not exist or has no properties object.\n\n * 400 InvalidBlobAuditActionsAndGroups - Invalid audit actions or action groups.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 BlobAuditingPredicateExpressionEmpty - Invalid parameter 'predicateExpression', value can not be empty.\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 400 BlobAuditingInsufficientStorageAccountPermissions - Insufficient read or write permissions on the provided storage account.\n\n * 400 BlobAuditingStorageAccountIsDisabled - The provided storage account is disabled.\n\n * 400 BlobAuditingNoServerIdentity - The server identity is not correctly configured.\n\n * 400 BlobAuditingStorageOutboundFirewallNotAllowed - Storage account is not in the list of allowed FQDNs, and, therefore, the outbound firewall rules will block the request.\n\n * 400 InvalidBlobAuditActionsAndGroupsForDW - Unsupported audit actions or action groups for DW.\n\n * 400 BlobAuditingAdalTokenError - The operation could not get access token for the storage account because an Azure Active Directory error was encountered.\n\n * 400 BlobAuditingInvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 BlobAuditingInvalidStorageAccountCredentials - The provided storage account or access key is not valid.\n\n * 400 BlobAuditingIsNotSupportedOnGeoDr - Blob auditing can be configured on primary databases only.\n\n * 400 InsufficientDiskSpaceForAuditing - Insufficient disk space to save auditing metadata in the database\n\n * 400 InvalidBlobAuditActions - Invalid audit action\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + }, + "201": { + "description": "Successfully created the extended database blob auditing policy.", + "schema": { + "$ref": "#/definitions/ExtendedDatabaseBlobAuditingPolicy" + } + } + }, + "x-ms-examples": { + "Create or update an extended database's blob auditing policy with minimal parameters": { + "$ref": "./examples/ExtendedDatabaseBlobAuditingCreateMin.json" + }, + "Create or update an extended database's blob auditing policy with all parameters": { + "$ref": "./examples/ExtendedDatabaseBlobAuditingCreateMax.json" + }, + "Create or update an extended database's azure monitor auditing policy with minimal parameters": { + "$ref": "./examples/ExtendedDatabaseAzureMonitorAuditingCreateMin.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/extendedAuditingSettings": { + "get": { + "tags": [ + "BlobAuditing" + ], + "description": "Lists extended auditing settings of a database.", + "operationId": "ExtendedDatabaseBlobAuditingPolicies_ListByDatabase", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the database extended auditing settings.", + "schema": { + "$ref": "#/definitions/ExtendedDatabaseBlobAuditingPolicyListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 BlobAuditingIsNotSupportedOnResourceType - Blob Auditing is currently not supported for this resource type.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List extended auditing settings of a database": { + "$ref": "./examples/DatabaseExtendedAuditingSettingsList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/extendedAuditingSettings/{blobAuditingPolicyName}": { + "get": { + "tags": [ + "BlobAuditing" + ], + "description": "Gets an extended server's blob auditing policy.", + "operationId": "ExtendedServerBlobAuditingPolicies_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/BlobAuditingPolicyNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the extended server blob auditing policy.", + "schema": { + "$ref": "#/definitions/ExtendedServerBlobAuditingPolicy" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + } + }, + "x-ms-examples": { + "Get a server's blob extended auditing policy": { + "$ref": "./examples/ExtendedServerBlobAuditingGet.json" + } + } + }, + "put": { + "tags": [ + "BlobAuditing" + ], + "description": "Creates or updates an extended server's blob auditing policy.", + "operationId": "ExtendedServerBlobAuditingPolicies_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/BlobAuditingPolicyNameParameter" + }, + { + "name": "parameters", + "in": "body", + "description": "Properties of extended blob auditing policy", + "required": true, + "schema": { + "$ref": "#/definitions/ExtendedServerBlobAuditingPolicy" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the extended auditing settings.", + "schema": { + "$ref": "#/definitions/ExtendedServerBlobAuditingPolicy" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidServerBlobAuditingPolicyCreateRequest - The create server blob auditing policy request does not exist or has no properties object.\n\n * 400 InvalidBlobAuditActionsAndGroups - Invalid audit actions or action groups.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 BlobAuditingPredicateExpressionEmpty - Invalid parameter 'predicateExpression', value can not be empty.\n\n * 400 BlobAuditingInvalidStorageAccountCredentials - The provided storage account or access key is not valid.\n\n * 400 InvalidBlobAuditActionsAndGroups - Invalid audit actions or action groups.\n\n * 400 InsufficientDiskSpaceForAuditing - Insufficient disk space to save auditing metadata in the database\n\n * 400 InvalidBlobAuditActions - Invalid audit action\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 409 ServerBlobAuditingPolicyInProgress - Set server blob auditing is already in progress." + }, + "202": { + "description": "Updating the extended auditing settings is in progress." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update a server's extended blob auditing policy with minimal parameters": { + "$ref": "./examples/ExtendedServerBlobAuditingCreateMin.json" + }, + "Update a server's extended blob auditing policy with all parameters": { + "$ref": "./examples/ExtendedServerBlobAuditingCreateMax.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/extendedAuditingSettings": { + "get": { + "tags": [ + "BlobAuditing" + ], + "description": "Lists extended auditing settings of a server.", + "operationId": "ExtendedServerBlobAuditingPolicies_ListByServer", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved extended server auditing settings.", + "schema": { + "$ref": "#/definitions/ExtendedServerBlobAuditingPolicyListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List extended auditing settings of a server": { + "$ref": "./examples/ServerExtendedAuditingSettingsList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/auditingSettings/{blobAuditingPolicyName}": { + "get": { + "tags": [ + "BlobAuditing" + ], + "description": "Gets a server's blob auditing policy.", + "operationId": "ServerBlobAuditingPolicies_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/BlobAuditingPolicyNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the server blob auditing policy.", + "schema": { + "$ref": "#/definitions/ServerBlobAuditingPolicy" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + } + }, + "x-ms-examples": { + "Get a server's blob auditing policy": { + "$ref": "./examples/ServerBlobAuditingGet.json" + } + } + }, + "put": { + "tags": [ + "BlobAuditing" + ], + "description": "Creates or updates a server's blob auditing policy.", + "operationId": "ServerBlobAuditingPolicies_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/BlobAuditingPolicyNameParameter" + }, + { + "name": "parameters", + "in": "body", + "description": "Properties of blob auditing policy", + "required": true, + "schema": { + "$ref": "#/definitions/ServerBlobAuditingPolicy" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the auditing settings.", + "schema": { + "$ref": "#/definitions/ServerBlobAuditingPolicy" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidServerBlobAuditingPolicyCreateRequest - The create server blob auditing policy request does not exist or has no properties object.\n\n * 400 InvalidBlobAuditActionsAndGroups - Invalid audit actions or action groups.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 BlobAuditingInvalidStorageAccountCredentials - The provided storage account or access key is not valid.\n\n * 400 InvalidBlobAuditActionsAndGroups - Invalid audit actions or action groups.\n\n * 400 InsufficientDiskSpaceForAuditing - Insufficient disk space to save auditing metadata in the database\n\n * 400 InvalidBlobAuditActions - Invalid audit action\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 409 ServerBlobAuditingPolicyInProgress - Set server blob auditing is already in progress." + }, + "202": { + "description": "Updating the auditing settings is in progress." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update a server's blob auditing policy with minimal parameters": { + "$ref": "./examples/ServerBlobAuditingCreateMin.json" + }, + "Update a server's blob auditing policy with all parameters": { + "$ref": "./examples/ServerBlobAuditingCreateMax.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/auditingSettings": { + "get": { + "tags": [ + "BlobAuditing" + ], + "description": "Lists auditing settings of a server.", + "operationId": "ServerBlobAuditingPolicies_ListByServer", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved server auditing settings.", + "schema": { + "$ref": "#/definitions/ServerBlobAuditingPolicyListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List auditing settings of a server": { + "$ref": "./examples/ServerAuditingSettingsList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/auditingSettings/{blobAuditingPolicyName}": { + "get": { + "tags": [ + "BlobAuditing" + ], + "description": "Gets a database's blob auditing policy.", + "operationId": "DatabaseBlobAuditingPolicies_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/BlobAuditingPolicyNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the database blob auditing policy.", + "schema": { + "$ref": "#/definitions/DatabaseBlobAuditingPolicy" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 BlobAuditingIsNotSupportedOnResourceType - Blob Auditing is currently not supported for this resource type.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + } + }, + "x-ms-examples": { + "Get a database's blob auditing policy": { + "$ref": "./examples/DatabaseBlobAuditingGet.json" + } + } + }, + "put": { + "tags": [ + "BlobAuditing" + ], + "description": "Creates or updates a database's blob auditing policy.", + "operationId": "DatabaseBlobAuditingPolicies_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/BlobAuditingPolicyNameParameter" + }, + { + "name": "parameters", + "in": "body", + "description": "The database blob auditing policy.", + "required": true, + "schema": { + "$ref": "#/definitions/DatabaseBlobAuditingPolicy" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully set the database blob auditing policy.", + "schema": { + "$ref": "#/definitions/DatabaseBlobAuditingPolicy" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 BlobAuditingIsNotSupportedOnResourceType - Blob Auditing is currently not supported for this resource type.\n\n * 400 InvalidDatabaseBlobAuditingPolicyCreateRequest - The create database blob auditing policy request does not exist or has no properties object.\n\n * 400 InvalidBlobAuditActionsAndGroups - Invalid audit actions or action groups.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 400 BlobAuditingInsufficientStorageAccountPermissions - Insufficient read or write permissions on the provided storage account.\n\n * 400 BlobAuditingStorageAccountIsDisabled - The provided storage account is disabled.\n\n * 400 BlobAuditingNoServerIdentity - The server identity is not correctly configured.\n\n * 400 BlobAuditingStorageOutboundFirewallNotAllowed - Storage account is not in the list of allowed FQDNs, and, therefore, the outbound firewall rules will block the request.\n\n * 400 InvalidBlobAuditActionsAndGroupsForDW - Unsupported audit actions or action groups for DW.\n\n * 400 BlobAuditingAdalTokenError - The operation could not get access token for the storage account because an Azure Active Directory error was encountered.\n\n * 400 BlobAuditingInvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 BlobAuditingInvalidStorageAccountCredentials - The provided storage account or access key is not valid.\n\n * 400 BlobAuditingIsNotSupportedOnGeoDr - Blob auditing can be configured on primary databases only.\n\n * 400 InsufficientDiskSpaceForAuditing - Insufficient disk space to save auditing metadata in the database\n\n * 400 InvalidBlobAuditActions - Invalid audit action\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + }, + "201": { + "description": "Successfully created the database blob auditing policy.", + "schema": { + "$ref": "#/definitions/DatabaseBlobAuditingPolicy" + } + } + }, + "x-ms-examples": { + "Create or update a database's blob auditing policy with minimal parameters": { + "$ref": "./examples/DatabaseBlobAuditingCreateMin.json" + }, + "Create or update a database's blob auditing policy with all parameters": { + "$ref": "./examples/DatabaseBlobAuditingCreateMax.json" + }, + "Create or update a database's azure monitor auditing policy with minimal parameters": { + "$ref": "./examples/DatabaseAzureMonitorAuditingCreateMin.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/auditingSettings": { + "get": { + "tags": [ + "BlobAuditing" + ], + "description": "Lists auditing settings of a database.", + "operationId": "DatabaseBlobAuditingPolicies_ListByDatabase", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved database auditing settings.", + "schema": { + "$ref": "#/definitions/DatabaseBlobAuditingPolicyListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 BlobAuditingIsNotSupportedOnResourceType - Blob Auditing is currently not supported for this resource type.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List audit settings of a database": { + "$ref": "./examples/DatabaseAuditingSettingsList.json" + } + } + } + } + }, + "definitions": { + "ExtendedDatabaseBlobAuditingPolicyProperties": { + "description": "Properties of an extended database blob auditing policy.", + "required": [ + "state" + ], + "type": "object", + "properties": { + "predicateExpression": { + "description": "Specifies condition of where clause when creating an audit.", + "type": "string" + }, + "retentionDays": { + "format": "int32", + "description": "Specifies the number of days to keep in the audit logs in the storage account.", + "type": "integer" + }, + "auditActionsAndGroups": { + "description": "Specifies the Actions-Groups and Actions to audit.\r\n\r\nThe recommended set of action groups to use is the following combination - this will audit all the queries and stored procedures executed against the database, as well as successful and failed logins:\r\n\r\nBATCH_COMPLETED_GROUP,\r\nSUCCESSFUL_DATABASE_AUTHENTICATION_GROUP,\r\nFAILED_DATABASE_AUTHENTICATION_GROUP.\r\n\r\nThis above combination is also the set that is configured by default when enabling auditing from the Azure portal.\r\n\r\nThe supported action groups to audit are (note: choose only specific groups that cover your auditing needs. Using unnecessary groups could lead to very large quantities of audit records):\r\n\r\nAPPLICATION_ROLE_CHANGE_PASSWORD_GROUP\r\nBACKUP_RESTORE_GROUP\r\nDATABASE_LOGOUT_GROUP\r\nDATABASE_OBJECT_CHANGE_GROUP\r\nDATABASE_OBJECT_OWNERSHIP_CHANGE_GROUP\r\nDATABASE_OBJECT_PERMISSION_CHANGE_GROUP\r\nDATABASE_OPERATION_GROUP\r\nDATABASE_PERMISSION_CHANGE_GROUP\r\nDATABASE_PRINCIPAL_CHANGE_GROUP\r\nDATABASE_PRINCIPAL_IMPERSONATION_GROUP\r\nDATABASE_ROLE_MEMBER_CHANGE_GROUP\r\nFAILED_DATABASE_AUTHENTICATION_GROUP\r\nSCHEMA_OBJECT_ACCESS_GROUP\r\nSCHEMA_OBJECT_CHANGE_GROUP\r\nSCHEMA_OBJECT_OWNERSHIP_CHANGE_GROUP\r\nSCHEMA_OBJECT_PERMISSION_CHANGE_GROUP\r\nSUCCESSFUL_DATABASE_AUTHENTICATION_GROUP\r\nUSER_CHANGE_PASSWORD_GROUP\r\nBATCH_STARTED_GROUP\r\nBATCH_COMPLETED_GROUP\r\nDBCC_GROUP\r\nDATABASE_OWNERSHIP_CHANGE_GROUP\r\nDATABASE_CHANGE_GROUP\r\nLEDGER_OPERATION_GROUP\r\n\r\nThese are groups that cover all sql statements and stored procedures executed against the database, and should not be used in combination with other groups as this will result in duplicate audit logs.\r\n\r\nFor more information, see [Database-Level Audit Action Groups](https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-action-groups).\r\n\r\nFor Database auditing policy, specific Actions can also be specified (note that Actions cannot be specified for Server auditing policy). The supported actions to audit are:\r\nSELECT\r\nUPDATE\r\nINSERT\r\nDELETE\r\nEXECUTE\r\nRECEIVE\r\nREFERENCES\r\n\r\nThe general form for defining an action to be audited is:\r\n{action} ON {object} BY {principal}\r\n\r\nNote that in the above format can refer to an object like a table, view, or stored procedure, or an entire database or schema. For the latter cases, the forms DATABASE::{db_name} and SCHEMA::{schema_name} are used, respectively.\r\n\r\nFor example:\r\nSELECT on dbo.myTable by public\r\nSELECT on DATABASE::myDatabase by public\r\nSELECT on SCHEMA::mySchema by public\r\n\r\nFor more information, see [Database-Level Audit Actions](https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-actions)", + "type": "array", + "items": { + "type": "string" + } + }, + "isStorageSecondaryKeyInUse": { + "description": "Specifies whether storageAccountAccessKey value is the storage's secondary key.", + "type": "boolean" + }, + "isAzureMonitorTargetEnabled": { + "description": "Specifies whether audit events are sent to Azure Monitor. \r\nIn order to send the events to Azure Monitor, specify 'State' as 'Enabled' and 'IsAzureMonitorTargetEnabled' as true.\r\n\r\nWhen using REST API to configure auditing, Diagnostic Settings with 'SQLSecurityAuditEvents' diagnostic logs category on the database should be also created.\r\nNote that for server level audit you should use the 'master' database as {databaseName}.\r\n\r\nDiagnostic Settings URI format:\r\nPUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/providers/microsoft.insights/diagnosticSettings/{settingsName}?api-version=2017-05-01-preview\r\n\r\nFor more information, see [Diagnostic Settings REST API](https://go.microsoft.com/fwlink/?linkid=2033207)\r\nor [Diagnostic Settings PowerShell](https://go.microsoft.com/fwlink/?linkid=2033043)\r\n", + "type": "boolean" + }, + "queueDelayMs": { + "format": "int32", + "description": "Specifies the amount of time in milliseconds that can elapse before audit actions are forced to be processed.\r\nThe default minimum value is 1000 (1 second). The maximum is 2,147,483,647.", + "type": "integer" + }, + "state": { + "description": "Specifies the state of the audit. If state is Enabled, storageEndpoint or isAzureMonitorTargetEnabled are required.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "BlobAuditingPolicyState", + "modelAsString": false + } + }, + "storageEndpoint": { + "description": "Specifies the blob storage endpoint (e.g. https://MyAccount.blob.core.windows.net). If state is Enabled, storageEndpoint or isAzureMonitorTargetEnabled is required.", + "type": "string" + }, + "storageAccountAccessKey": { + "description": "Specifies the identifier key of the auditing storage account. \r\nIf state is Enabled and storageEndpoint is specified, not specifying the storageAccountAccessKey will use SQL server system-assigned managed identity to access the storage.\r\nPrerequisites for using managed identity authentication:\r\n1. Assign SQL Server a system-assigned managed identity in Azure Active Directory (AAD).\r\n2. Grant SQL Server identity access to the storage account by adding 'Storage Blob Data Contributor' RBAC role to the server identity.\r\nFor more information, see [Auditing to storage using Managed Identity authentication](https://go.microsoft.com/fwlink/?linkid=2114355)", + "type": "string", + "x-ms-secret": true, + "x-ms-mutability": [ + "create", + "update" + ] + }, + "storageAccountSubscriptionId": { + "format": "uuid", + "description": "Specifies the blob storage subscription Id.", + "type": "string" + } + } + }, + "ExtendedDatabaseBlobAuditingPolicy": { + "description": "An extended database blob auditing policy.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ExtendedDatabaseBlobAuditingPolicyProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "ExtendedDatabaseBlobAuditingPolicyListResult": { + "description": "A list of database extended auditing settings.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/ExtendedDatabaseBlobAuditingPolicy" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "ExtendedServerBlobAuditingPolicyProperties": { + "description": "Properties of an extended server blob auditing policy.", + "required": [ + "state" + ], + "type": "object", + "properties": { + "isDevopsAuditEnabled": { + "description": "Specifies the state of devops audit. If state is Enabled, devops logs will be sent to Azure Monitor.\r\nIn order to send the events to Azure Monitor, specify 'State' as 'Enabled', 'IsAzureMonitorTargetEnabled' as true and 'IsDevopsAuditEnabled' as true\r\n\r\nWhen using REST API to configure auditing, Diagnostic Settings with 'DevOpsOperationsAudit' diagnostic logs category on the master database should also be created.\r\n\r\nDiagnostic Settings URI format:\r\nPUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Sql/servers/{serverName}/databases/master/providers/microsoft.insights/diagnosticSettings/{settingsName}?api-version=2017-05-01-preview\r\n\r\nFor more information, see [Diagnostic Settings REST API](https://go.microsoft.com/fwlink/?linkid=2033207)\r\nor [Diagnostic Settings PowerShell](https://go.microsoft.com/fwlink/?linkid=2033043)\r\n", + "type": "boolean" + }, + "predicateExpression": { + "description": "Specifies condition of where clause when creating an audit.", + "type": "string" + }, + "retentionDays": { + "format": "int32", + "description": "Specifies the number of days to keep in the audit logs in the storage account.", + "type": "integer" + }, + "auditActionsAndGroups": { + "description": "Specifies the Actions-Groups and Actions to audit.\r\n\r\nThe recommended set of action groups to use is the following combination - this will audit all the queries and stored procedures executed against the database, as well as successful and failed logins:\r\n\r\nBATCH_COMPLETED_GROUP,\r\nSUCCESSFUL_DATABASE_AUTHENTICATION_GROUP,\r\nFAILED_DATABASE_AUTHENTICATION_GROUP.\r\n\r\nThis above combination is also the set that is configured by default when enabling auditing from the Azure portal.\r\n\r\nThe supported action groups to audit are (note: choose only specific groups that cover your auditing needs. Using unnecessary groups could lead to very large quantities of audit records):\r\n\r\nAPPLICATION_ROLE_CHANGE_PASSWORD_GROUP\r\nBACKUP_RESTORE_GROUP\r\nDATABASE_LOGOUT_GROUP\r\nDATABASE_OBJECT_CHANGE_GROUP\r\nDATABASE_OBJECT_OWNERSHIP_CHANGE_GROUP\r\nDATABASE_OBJECT_PERMISSION_CHANGE_GROUP\r\nDATABASE_OPERATION_GROUP\r\nDATABASE_PERMISSION_CHANGE_GROUP\r\nDATABASE_PRINCIPAL_CHANGE_GROUP\r\nDATABASE_PRINCIPAL_IMPERSONATION_GROUP\r\nDATABASE_ROLE_MEMBER_CHANGE_GROUP\r\nFAILED_DATABASE_AUTHENTICATION_GROUP\r\nSCHEMA_OBJECT_ACCESS_GROUP\r\nSCHEMA_OBJECT_CHANGE_GROUP\r\nSCHEMA_OBJECT_OWNERSHIP_CHANGE_GROUP\r\nSCHEMA_OBJECT_PERMISSION_CHANGE_GROUP\r\nSUCCESSFUL_DATABASE_AUTHENTICATION_GROUP\r\nUSER_CHANGE_PASSWORD_GROUP\r\nBATCH_STARTED_GROUP\r\nBATCH_COMPLETED_GROUP\r\nDBCC_GROUP\r\nDATABASE_OWNERSHIP_CHANGE_GROUP\r\nDATABASE_CHANGE_GROUP\r\nLEDGER_OPERATION_GROUP\r\n\r\nThese are groups that cover all sql statements and stored procedures executed against the database, and should not be used in combination with other groups as this will result in duplicate audit logs.\r\n\r\nFor more information, see [Database-Level Audit Action Groups](https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-action-groups).\r\n\r\nFor Database auditing policy, specific Actions can also be specified (note that Actions cannot be specified for Server auditing policy). The supported actions to audit are:\r\nSELECT\r\nUPDATE\r\nINSERT\r\nDELETE\r\nEXECUTE\r\nRECEIVE\r\nREFERENCES\r\n\r\nThe general form for defining an action to be audited is:\r\n{action} ON {object} BY {principal}\r\n\r\nNote that in the above format can refer to an object like a table, view, or stored procedure, or an entire database or schema. For the latter cases, the forms DATABASE::{db_name} and SCHEMA::{schema_name} are used, respectively.\r\n\r\nFor example:\r\nSELECT on dbo.myTable by public\r\nSELECT on DATABASE::myDatabase by public\r\nSELECT on SCHEMA::mySchema by public\r\n\r\nFor more information, see [Database-Level Audit Actions](https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-actions)", + "type": "array", + "items": { + "type": "string" + } + }, + "isStorageSecondaryKeyInUse": { + "description": "Specifies whether storageAccountAccessKey value is the storage's secondary key.", + "type": "boolean" + }, + "isAzureMonitorTargetEnabled": { + "description": "Specifies whether audit events are sent to Azure Monitor. \r\nIn order to send the events to Azure Monitor, specify 'State' as 'Enabled' and 'IsAzureMonitorTargetEnabled' as true.\r\n\r\nWhen using REST API to configure auditing, Diagnostic Settings with 'SQLSecurityAuditEvents' diagnostic logs category on the database should be also created.\r\nNote that for server level audit you should use the 'master' database as {databaseName}.\r\n\r\nDiagnostic Settings URI format:\r\nPUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/providers/microsoft.insights/diagnosticSettings/{settingsName}?api-version=2017-05-01-preview\r\n\r\nFor more information, see [Diagnostic Settings REST API](https://go.microsoft.com/fwlink/?linkid=2033207)\r\nor [Diagnostic Settings PowerShell](https://go.microsoft.com/fwlink/?linkid=2033043)\r\n", + "type": "boolean" + }, + "queueDelayMs": { + "format": "int32", + "description": "Specifies the amount of time in milliseconds that can elapse before audit actions are forced to be processed.\r\nThe default minimum value is 1000 (1 second). The maximum is 2,147,483,647.", + "type": "integer" + }, + "state": { + "description": "Specifies the state of the audit. If state is Enabled, storageEndpoint or isAzureMonitorTargetEnabled are required.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "BlobAuditingPolicyState", + "modelAsString": false + } + }, + "storageEndpoint": { + "description": "Specifies the blob storage endpoint (e.g. https://MyAccount.blob.core.windows.net). If state is Enabled, storageEndpoint or isAzureMonitorTargetEnabled is required.", + "type": "string" + }, + "storageAccountAccessKey": { + "description": "Specifies the identifier key of the auditing storage account. \r\nIf state is Enabled and storageEndpoint is specified, not specifying the storageAccountAccessKey will use SQL server system-assigned managed identity to access the storage.\r\nPrerequisites for using managed identity authentication:\r\n1. Assign SQL Server a system-assigned managed identity in Azure Active Directory (AAD).\r\n2. Grant SQL Server identity access to the storage account by adding 'Storage Blob Data Contributor' RBAC role to the server identity.\r\nFor more information, see [Auditing to storage using Managed Identity authentication](https://go.microsoft.com/fwlink/?linkid=2114355)", + "type": "string", + "x-ms-secret": true, + "x-ms-mutability": [ + "create", + "update" + ] + }, + "storageAccountSubscriptionId": { + "format": "uuid", + "description": "Specifies the blob storage subscription Id.", + "type": "string" + } + } + }, + "ExtendedServerBlobAuditingPolicy": { + "description": "An extended server blob auditing policy.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ExtendedServerBlobAuditingPolicyProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "ExtendedServerBlobAuditingPolicyListResult": { + "description": "A list of server extended auditing settings.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/ExtendedServerBlobAuditingPolicy" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "ServerBlobAuditingPolicyProperties": { + "description": "Properties of a server blob auditing policy.", + "required": [ + "state" + ], + "type": "object", + "properties": { + "isDevopsAuditEnabled": { + "description": "Specifies the state of devops audit. If state is Enabled, devops logs will be sent to Azure Monitor.\r\nIn order to send the events to Azure Monitor, specify 'State' as 'Enabled', 'IsAzureMonitorTargetEnabled' as true and 'IsDevopsAuditEnabled' as true\r\n\r\nWhen using REST API to configure auditing, Diagnostic Settings with 'DevOpsOperationsAudit' diagnostic logs category on the master database should also be created.\r\n\r\nDiagnostic Settings URI format:\r\nPUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Sql/servers/{serverName}/databases/master/providers/microsoft.insights/diagnosticSettings/{settingsName}?api-version=2017-05-01-preview\r\n\r\nFor more information, see [Diagnostic Settings REST API](https://go.microsoft.com/fwlink/?linkid=2033207)\r\nor [Diagnostic Settings PowerShell](https://go.microsoft.com/fwlink/?linkid=2033043)\r\n", + "type": "boolean" + }, + "retentionDays": { + "format": "int32", + "description": "Specifies the number of days to keep in the audit logs in the storage account.", + "type": "integer" + }, + "auditActionsAndGroups": { + "description": "Specifies the Actions-Groups and Actions to audit.\r\n\r\nThe recommended set of action groups to use is the following combination - this will audit all the queries and stored procedures executed against the database, as well as successful and failed logins:\r\n\r\nBATCH_COMPLETED_GROUP,\r\nSUCCESSFUL_DATABASE_AUTHENTICATION_GROUP,\r\nFAILED_DATABASE_AUTHENTICATION_GROUP.\r\n\r\nThis above combination is also the set that is configured by default when enabling auditing from the Azure portal.\r\n\r\nThe supported action groups to audit are (note: choose only specific groups that cover your auditing needs. Using unnecessary groups could lead to very large quantities of audit records):\r\n\r\nAPPLICATION_ROLE_CHANGE_PASSWORD_GROUP\r\nBACKUP_RESTORE_GROUP\r\nDATABASE_LOGOUT_GROUP\r\nDATABASE_OBJECT_CHANGE_GROUP\r\nDATABASE_OBJECT_OWNERSHIP_CHANGE_GROUP\r\nDATABASE_OBJECT_PERMISSION_CHANGE_GROUP\r\nDATABASE_OPERATION_GROUP\r\nDATABASE_PERMISSION_CHANGE_GROUP\r\nDATABASE_PRINCIPAL_CHANGE_GROUP\r\nDATABASE_PRINCIPAL_IMPERSONATION_GROUP\r\nDATABASE_ROLE_MEMBER_CHANGE_GROUP\r\nFAILED_DATABASE_AUTHENTICATION_GROUP\r\nSCHEMA_OBJECT_ACCESS_GROUP\r\nSCHEMA_OBJECT_CHANGE_GROUP\r\nSCHEMA_OBJECT_OWNERSHIP_CHANGE_GROUP\r\nSCHEMA_OBJECT_PERMISSION_CHANGE_GROUP\r\nSUCCESSFUL_DATABASE_AUTHENTICATION_GROUP\r\nUSER_CHANGE_PASSWORD_GROUP\r\nBATCH_STARTED_GROUP\r\nBATCH_COMPLETED_GROUP\r\nDBCC_GROUP\r\nDATABASE_OWNERSHIP_CHANGE_GROUP\r\nDATABASE_CHANGE_GROUP\r\nLEDGER_OPERATION_GROUP\r\n\r\nThese are groups that cover all sql statements and stored procedures executed against the database, and should not be used in combination with other groups as this will result in duplicate audit logs.\r\n\r\nFor more information, see [Database-Level Audit Action Groups](https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-action-groups).\r\n\r\nFor Database auditing policy, specific Actions can also be specified (note that Actions cannot be specified for Server auditing policy). The supported actions to audit are:\r\nSELECT\r\nUPDATE\r\nINSERT\r\nDELETE\r\nEXECUTE\r\nRECEIVE\r\nREFERENCES\r\n\r\nThe general form for defining an action to be audited is:\r\n{action} ON {object} BY {principal}\r\n\r\nNote that in the above format can refer to an object like a table, view, or stored procedure, or an entire database or schema. For the latter cases, the forms DATABASE::{db_name} and SCHEMA::{schema_name} are used, respectively.\r\n\r\nFor example:\r\nSELECT on dbo.myTable by public\r\nSELECT on DATABASE::myDatabase by public\r\nSELECT on SCHEMA::mySchema by public\r\n\r\nFor more information, see [Database-Level Audit Actions](https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-actions)", + "type": "array", + "items": { + "type": "string" + } + }, + "isStorageSecondaryKeyInUse": { + "description": "Specifies whether storageAccountAccessKey value is the storage's secondary key.", + "type": "boolean" + }, + "isAzureMonitorTargetEnabled": { + "description": "Specifies whether audit events are sent to Azure Monitor. \r\nIn order to send the events to Azure Monitor, specify 'State' as 'Enabled' and 'IsAzureMonitorTargetEnabled' as true.\r\n\r\nWhen using REST API to configure auditing, Diagnostic Settings with 'SQLSecurityAuditEvents' diagnostic logs category on the database should be also created.\r\nNote that for server level audit you should use the 'master' database as {databaseName}.\r\n\r\nDiagnostic Settings URI format:\r\nPUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/providers/microsoft.insights/diagnosticSettings/{settingsName}?api-version=2017-05-01-preview\r\n\r\nFor more information, see [Diagnostic Settings REST API](https://go.microsoft.com/fwlink/?linkid=2033207)\r\nor [Diagnostic Settings PowerShell](https://go.microsoft.com/fwlink/?linkid=2033043)\r\n", + "type": "boolean" + }, + "queueDelayMs": { + "format": "int32", + "description": "Specifies the amount of time in milliseconds that can elapse before audit actions are forced to be processed.\r\nThe default minimum value is 1000 (1 second). The maximum is 2,147,483,647.", + "type": "integer" + }, + "state": { + "description": "Specifies the state of the audit. If state is Enabled, storageEndpoint or isAzureMonitorTargetEnabled are required.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "BlobAuditingPolicyState", + "modelAsString": false + } + }, + "storageEndpoint": { + "description": "Specifies the blob storage endpoint (e.g. https://MyAccount.blob.core.windows.net). If state is Enabled, storageEndpoint or isAzureMonitorTargetEnabled is required.", + "type": "string" + }, + "storageAccountAccessKey": { + "description": "Specifies the identifier key of the auditing storage account. \r\nIf state is Enabled and storageEndpoint is specified, not specifying the storageAccountAccessKey will use SQL server system-assigned managed identity to access the storage.\r\nPrerequisites for using managed identity authentication:\r\n1. Assign SQL Server a system-assigned managed identity in Azure Active Directory (AAD).\r\n2. Grant SQL Server identity access to the storage account by adding 'Storage Blob Data Contributor' RBAC role to the server identity.\r\nFor more information, see [Auditing to storage using Managed Identity authentication](https://go.microsoft.com/fwlink/?linkid=2114355)", + "type": "string", + "x-ms-secret": true, + "x-ms-mutability": [ + "create", + "update" + ] + }, + "storageAccountSubscriptionId": { + "format": "uuid", + "description": "Specifies the blob storage subscription Id.", + "type": "string" + } + } + }, + "ServerBlobAuditingPolicy": { + "description": "A server blob auditing policy.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ServerBlobAuditingPolicyProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "ServerBlobAuditingPolicyListResult": { + "description": "A list of server auditing settings.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/ServerBlobAuditingPolicy" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "DatabaseBlobAuditingPolicyProperties": { + "description": "Properties of a database blob auditing policy.", + "required": [ + "state" + ], + "type": "object", + "properties": { + "retentionDays": { + "format": "int32", + "description": "Specifies the number of days to keep in the audit logs in the storage account.", + "type": "integer" + }, + "auditActionsAndGroups": { + "description": "Specifies the Actions-Groups and Actions to audit.\r\n\r\nThe recommended set of action groups to use is the following combination - this will audit all the queries and stored procedures executed against the database, as well as successful and failed logins:\r\n\r\nBATCH_COMPLETED_GROUP,\r\nSUCCESSFUL_DATABASE_AUTHENTICATION_GROUP,\r\nFAILED_DATABASE_AUTHENTICATION_GROUP.\r\n\r\nThis above combination is also the set that is configured by default when enabling auditing from the Azure portal.\r\n\r\nThe supported action groups to audit are (note: choose only specific groups that cover your auditing needs. Using unnecessary groups could lead to very large quantities of audit records):\r\n\r\nAPPLICATION_ROLE_CHANGE_PASSWORD_GROUP\r\nBACKUP_RESTORE_GROUP\r\nDATABASE_LOGOUT_GROUP\r\nDATABASE_OBJECT_CHANGE_GROUP\r\nDATABASE_OBJECT_OWNERSHIP_CHANGE_GROUP\r\nDATABASE_OBJECT_PERMISSION_CHANGE_GROUP\r\nDATABASE_OPERATION_GROUP\r\nDATABASE_PERMISSION_CHANGE_GROUP\r\nDATABASE_PRINCIPAL_CHANGE_GROUP\r\nDATABASE_PRINCIPAL_IMPERSONATION_GROUP\r\nDATABASE_ROLE_MEMBER_CHANGE_GROUP\r\nFAILED_DATABASE_AUTHENTICATION_GROUP\r\nSCHEMA_OBJECT_ACCESS_GROUP\r\nSCHEMA_OBJECT_CHANGE_GROUP\r\nSCHEMA_OBJECT_OWNERSHIP_CHANGE_GROUP\r\nSCHEMA_OBJECT_PERMISSION_CHANGE_GROUP\r\nSUCCESSFUL_DATABASE_AUTHENTICATION_GROUP\r\nUSER_CHANGE_PASSWORD_GROUP\r\nBATCH_STARTED_GROUP\r\nBATCH_COMPLETED_GROUP\r\nDBCC_GROUP\r\nDATABASE_OWNERSHIP_CHANGE_GROUP\r\nDATABASE_CHANGE_GROUP\r\nLEDGER_OPERATION_GROUP\r\n\r\nThese are groups that cover all sql statements and stored procedures executed against the database, and should not be used in combination with other groups as this will result in duplicate audit logs.\r\n\r\nFor more information, see [Database-Level Audit Action Groups](https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-action-groups).\r\n\r\nFor Database auditing policy, specific Actions can also be specified (note that Actions cannot be specified for Server auditing policy). The supported actions to audit are:\r\nSELECT\r\nUPDATE\r\nINSERT\r\nDELETE\r\nEXECUTE\r\nRECEIVE\r\nREFERENCES\r\n\r\nThe general form for defining an action to be audited is:\r\n{action} ON {object} BY {principal}\r\n\r\nNote that in the above format can refer to an object like a table, view, or stored procedure, or an entire database or schema. For the latter cases, the forms DATABASE::{db_name} and SCHEMA::{schema_name} are used, respectively.\r\n\r\nFor example:\r\nSELECT on dbo.myTable by public\r\nSELECT on DATABASE::myDatabase by public\r\nSELECT on SCHEMA::mySchema by public\r\n\r\nFor more information, see [Database-Level Audit Actions](https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-actions)", + "type": "array", + "items": { + "type": "string" + } + }, + "isStorageSecondaryKeyInUse": { + "description": "Specifies whether storageAccountAccessKey value is the storage's secondary key.", + "type": "boolean" + }, + "isAzureMonitorTargetEnabled": { + "description": "Specifies whether audit events are sent to Azure Monitor. \r\nIn order to send the events to Azure Monitor, specify 'State' as 'Enabled' and 'IsAzureMonitorTargetEnabled' as true.\r\n\r\nWhen using REST API to configure auditing, Diagnostic Settings with 'SQLSecurityAuditEvents' diagnostic logs category on the database should be also created.\r\nNote that for server level audit you should use the 'master' database as {databaseName}.\r\n\r\nDiagnostic Settings URI format:\r\nPUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/providers/microsoft.insights/diagnosticSettings/{settingsName}?api-version=2017-05-01-preview\r\n\r\nFor more information, see [Diagnostic Settings REST API](https://go.microsoft.com/fwlink/?linkid=2033207)\r\nor [Diagnostic Settings PowerShell](https://go.microsoft.com/fwlink/?linkid=2033043)\r\n", + "type": "boolean" + }, + "queueDelayMs": { + "format": "int32", + "description": "Specifies the amount of time in milliseconds that can elapse before audit actions are forced to be processed.\r\nThe default minimum value is 1000 (1 second). The maximum is 2,147,483,647.", + "type": "integer" + }, + "state": { + "description": "Specifies the state of the audit. If state is Enabled, storageEndpoint or isAzureMonitorTargetEnabled are required.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "BlobAuditingPolicyState", + "modelAsString": false + } + }, + "storageEndpoint": { + "description": "Specifies the blob storage endpoint (e.g. https://MyAccount.blob.core.windows.net). If state is Enabled, storageEndpoint or isAzureMonitorTargetEnabled is required.", + "type": "string" + }, + "storageAccountAccessKey": { + "description": "Specifies the identifier key of the auditing storage account. \r\nIf state is Enabled and storageEndpoint is specified, not specifying the storageAccountAccessKey will use SQL server system-assigned managed identity to access the storage.\r\nPrerequisites for using managed identity authentication:\r\n1. Assign SQL Server a system-assigned managed identity in Azure Active Directory (AAD).\r\n2. Grant SQL Server identity access to the storage account by adding 'Storage Blob Data Contributor' RBAC role to the server identity.\r\nFor more information, see [Auditing to storage using Managed Identity authentication](https://go.microsoft.com/fwlink/?linkid=2114355)", + "type": "string", + "x-ms-secret": true, + "x-ms-mutability": [ + "create", + "update" + ] + }, + "storageAccountSubscriptionId": { + "format": "uuid", + "description": "Specifies the blob storage subscription Id.", + "type": "string" + } + } + }, + "DatabaseBlobAuditingPolicy": { + "description": "A database blob auditing policy.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "kind": { + "description": "Resource kind.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/DatabaseBlobAuditingPolicyProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "DatabaseBlobAuditingPolicyListResult": { + "description": "A list of database auditing settings.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/DatabaseBlobAuditingPolicy" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/DataWarehouseUserActivities.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/DataWarehouseUserActivities.json new file mode 100644 index 000000000000..7a75bde80df3 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/DataWarehouseUserActivities.json @@ -0,0 +1,199 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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": "../../../common/v1/types.json#/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": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/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 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\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" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/dataWarehouseUserActivities": { + "get": { + "tags": [ + "DataWarehouseUserActivities" + ], + "description": "List the user activities of a data warehouse which includes running and suspended queries", + "operationId": "DataWarehouseUserActivities_ListByDatabase", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully list the data warehouse user activities.", + "schema": { + "$ref": "#/definitions/DataWarehouseUserActivitiesListResult" + } + }, + "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 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\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-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List of the user activities of a data warehouse": { + "$ref": "./examples/ListDataWarehouseUserActivities.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 + } + } + }, + "DataWarehouseUserActivities": { + "description": "User activities of a data warehouse", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/DataWarehouseUserActivitiesProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "DataWarehouseUserActivitiesListResult": { + "description": "User activities of a data warehouse", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/DataWarehouseUserActivities" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/DatabaseAdvisors.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/DatabaseAdvisors.json new file mode 100644 index 000000000000..1a131e334215 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/DatabaseAdvisors.json @@ -0,0 +1,663 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/advisors": { + "get": { + "tags": [ + "DatabaseAdvisors" + ], + "description": "Gets a list of database advisors.", + "operationId": "DatabaseAdvisors_ListByDatabase", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "$expand", + "in": "query", + "description": "The child resources to include in the response.", + "required": false, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of database advisors.", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/Advisor" + } + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 DataWarehouseNotSupported - Automatic tuning is not supported for SQL Data Warehouse.\n\n * 404 DatabaseDoesNotExist - The requested database was not found\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SubscriptionDoesNotHaveElasticPool - The requested elastic pool was not found\n\n * 404 AdvisorNotFound - The requested advisor was not found.\n\n * 405 NotSupported - This functionality is not supported.\n\n * 409 Conflict - Request could not be processed because of conflict in the request.\n\n * 503 ServiceTemporarilyUnavailable - Feature temporarily unavailable." + } + }, + "x-ms-examples": { + "List of database advisors": { + "$ref": "./examples/DatabaseAdvisorList.json" + }, + "List of database recommended actions for all advisors": { + "$ref": "./examples/DatabaseRecommendedActionListExpand.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/advisors/{advisorName}": { + "get": { + "tags": [ + "DatabaseAdvisors" + ], + "description": "Gets a database advisor.", + "operationId": "DatabaseAdvisors_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "advisorName", + "in": "path", + "description": "The name of the Database Advisor.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved details of specified database advisor.", + "schema": { + "$ref": "#/definitions/Advisor" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 DataWarehouseNotSupported - Automatic tuning is not supported for SQL Data Warehouse.\n\n * 404 DatabaseDoesNotExist - The requested database was not found\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SubscriptionDoesNotHaveElasticPool - The requested elastic pool was not found\n\n * 404 AdvisorNotFound - The requested advisor was not found.\n\n * 405 NotSupported - This functionality is not supported.\n\n * 409 Conflict - Request could not be processed because of conflict in the request.\n\n * 503 ServiceTemporarilyUnavailable - Feature temporarily unavailable." + } + }, + "x-ms-examples": { + "Get database advisor": { + "$ref": "./examples/DatabaseAdvisorGet.json" + } + } + }, + "patch": { + "tags": [ + "DatabaseAdvisors" + ], + "description": "Updates a database advisor.", + "operationId": "DatabaseAdvisors_Update", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "advisorName", + "in": "path", + "description": "The name of the Database Advisor.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The requested advisor resource state.", + "required": true, + "schema": { + "$ref": "#/definitions/Advisor" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the specified database advisor.", + "schema": { + "$ref": "#/definitions/Advisor" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 DataWarehouseNotSupported - Automatic tuning is not supported for SQL Data Warehouse.\n\n * 400 InvalidAdvisorUpsertRequest - The update advisor request body does not exist or has no properties object.\n\n * 400 InvalidAdvisorAutoExecuteStatus - Specified auto-execute status for the advisor is not allowed.\n\n * 404 DatabaseDoesNotExist - The requested database was not found\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SubscriptionDoesNotHaveElasticPool - The requested elastic pool was not found\n\n * 404 AdvisorNotFound - The requested advisor was not found.\n\n * 404 AutomaticTuningOptionNotFound - The requested automatic tuning option was not found.\n\n * 405 NotSupported - This functionality is not supported.\n\n * 409 Conflict - Request could not be processed because of conflict in the request.\n\n * 409 DisabledBySystem - This option is disabled by system\n\n * 409 DefaultAdvisorStateNotAllowedInCustomDbMode - DEFAULT advisor state is not allowed in CUSTOM mode\n\n * 503 ServiceTemporarilyUnavailable - Feature temporarily unavailable." + } + }, + "x-ms-examples": { + "Update database advisor": { + "$ref": "./examples/DatabaseAdvisorUpdate.json" + } + } + } + } + }, + "definitions": { + "AdvisorProperties": { + "description": "Properties for a Database, Server or Elastic Pool Advisor.", + "required": [ + "autoExecuteStatus" + ], + "type": "object", + "properties": { + "advisorStatus": { + "description": "Gets the status of availability of this advisor to customers. Possible values are 'GA', 'PublicPreview', 'LimitedPublicPreview' and 'PrivatePreview'.", + "enum": [ + "GA", + "PublicPreview", + "LimitedPublicPreview", + "PrivatePreview" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "AdvisorStatus", + "modelAsString": false + } + }, + "autoExecuteStatus": { + "description": "Gets the auto-execute status (whether to let the system execute the recommendations) of this advisor. Possible values are 'Enabled' and 'Disabled'", + "enum": [ + "Enabled", + "Disabled", + "Default" + ], + "type": "string", + "x-ms-enum": { + "name": "AutoExecuteStatus", + "modelAsString": false + } + }, + "autoExecuteStatusInheritedFrom": { + "description": "Gets the resource from which current value of auto-execute status is inherited. Auto-execute status can be set on (and inherited from) different levels in the resource hierarchy. Possible values are 'Subscription', 'Server', 'ElasticPool', 'Database' and 'Default' (when status is not explicitly set on any level).", + "enum": [ + "Default", + "Subscription", + "Server", + "ElasticPool", + "Database" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "AutoExecuteStatusInheritedFrom", + "modelAsString": false + } + }, + "recommendationsStatus": { + "description": "Gets that status of recommendations for this advisor and reason for not having any recommendations. Possible values include, but are not limited to, 'Ok' (Recommendations available),LowActivity (not enough workload to analyze), 'DbSeemsTuned' (Database is doing well), etc.", + "type": "string", + "readOnly": true + }, + "lastChecked": { + "format": "date-time", + "description": "Gets the time when the current resource was analyzed for recommendations by this advisor.", + "type": "string", + "readOnly": true + }, + "recommendedActions": { + "description": "Gets the recommended actions for this advisor.", + "type": "array", + "items": { + "$ref": "#/definitions/RecommendedAction" + }, + "readOnly": true + } + } + }, + "RecommendedActionProperties": { + "description": "Properties for a Database, Server or Elastic Pool Recommended Action.", + "required": [ + "state" + ], + "type": "object", + "properties": { + "recommendationReason": { + "description": "Gets the reason for recommending this action. e.g., DuplicateIndex", + "type": "string", + "readOnly": true + }, + "validSince": { + "format": "date-time", + "description": "Gets the time since when this recommended action is valid.", + "type": "string", + "readOnly": true + }, + "lastRefresh": { + "format": "date-time", + "description": "Gets time when this recommended action was last refreshed.", + "type": "string", + "readOnly": true + }, + "state": { + "$ref": "#/definitions/RecommendedActionStateInfo", + "description": "Gets the info of the current state the recommended action is in." + }, + "isExecutableAction": { + "description": "Gets if this recommended action is actionable by user", + "type": "boolean", + "readOnly": true + }, + "isRevertableAction": { + "description": "Gets if changes applied by this recommended action can be reverted by user", + "type": "boolean", + "readOnly": true + }, + "isArchivedAction": { + "description": "Gets if this recommended action was suggested some time ago but user chose to ignore this and system added a new recommended action again.", + "type": "boolean", + "readOnly": true + }, + "executeActionStartTime": { + "format": "date-time", + "description": "Gets the time when system started applying this recommended action on the user resource. e.g., index creation start time", + "type": "string", + "readOnly": true + }, + "executeActionDuration": { + "description": "Gets the time taken for applying this recommended action on user resource. e.g., time taken for index creation", + "type": "string", + "readOnly": true + }, + "revertActionStartTime": { + "format": "date-time", + "description": "Gets the time when system started reverting changes of this recommended action on user resource. e.g., time when index drop is executed.", + "type": "string", + "readOnly": true + }, + "revertActionDuration": { + "description": "Gets the time taken for reverting changes of this recommended action on user resource. e.g., time taken for dropping the created index.", + "type": "string", + "readOnly": true + }, + "executeActionInitiatedBy": { + "description": "Gets if approval for applying this recommended action was given by user/system.", + "enum": [ + "User", + "System" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "RecommendedActionInitiatedBy", + "modelAsString": false + } + }, + "executeActionInitiatedTime": { + "format": "date-time", + "description": "Gets the time when this recommended action was approved for execution.", + "type": "string", + "readOnly": true + }, + "revertActionInitiatedBy": { + "description": "Gets if approval for reverting this recommended action was given by user/system.", + "enum": [ + "User", + "System" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "RecommendedActionInitiatedBy", + "modelAsString": false + } + }, + "revertActionInitiatedTime": { + "format": "date-time", + "description": "Gets the time when this recommended action was approved for revert.", + "type": "string", + "readOnly": true + }, + "score": { + "format": "int32", + "description": "Gets the impact of this recommended action. Possible values are 1 - Low impact, 2 - Medium Impact and 3 - High Impact", + "type": "integer", + "readOnly": true + }, + "implementationDetails": { + "$ref": "#/definitions/RecommendedActionImplementationInfo", + "description": "Gets the implementation details of this recommended action for user to apply it manually.", + "readOnly": true + }, + "errorDetails": { + "$ref": "#/definitions/RecommendedActionErrorInfo", + "description": "Gets the error details if and why this recommended action is put to error state.", + "readOnly": true + }, + "estimatedImpact": { + "description": "Gets the estimated impact info for this recommended action e.g., Estimated CPU gain, Estimated Disk Space change", + "type": "array", + "items": { + "$ref": "#/definitions/RecommendedActionImpactRecord" + }, + "readOnly": true + }, + "observedImpact": { + "description": "Gets the observed/actual impact info for this recommended action e.g., Actual CPU gain, Actual Disk Space change", + "type": "array", + "items": { + "$ref": "#/definitions/RecommendedActionImpactRecord" + }, + "readOnly": true + }, + "timeSeries": { + "description": "Gets the time series info of metrics for this recommended action e.g., CPU consumption time series", + "type": "array", + "items": { + "$ref": "#/definitions/RecommendedActionMetricInfo" + }, + "readOnly": true + }, + "linkedObjects": { + "description": "Gets the linked objects, if any.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "details": { + "description": "Gets additional details specific to this recommended action.", + "type": "object", + "additionalProperties": { + "type": "object" + }, + "readOnly": true + } + } + }, + "RecommendedActionStateInfo": { + "description": "Contains information of current state for an Azure SQL Database, Server or Elastic Pool Recommended Action.", + "required": [ + "currentValue" + ], + "type": "object", + "properties": { + "currentValue": { + "description": "Current state the recommended action is in. Some commonly used states are: Active -> recommended action is active and no action has been taken yet. Pending -> recommended action is approved for and is awaiting execution. Executing -> recommended action is being applied on the user database. Verifying -> recommended action was applied and is being verified of its usefulness by the system. Success -> recommended action was applied and improvement found during verification. Pending Revert -> verification found little or no improvement so recommended action is queued for revert or user has manually reverted. Reverting -> changes made while applying recommended action are being reverted on the user database. Reverted -> successfully reverted the changes made by recommended action on user database. Ignored -> user explicitly ignored/discarded the recommended action. ", + "enum": [ + "Active", + "Pending", + "Executing", + "Verifying", + "PendingRevert", + "RevertCancelled", + "Reverting", + "Reverted", + "Ignored", + "Expired", + "Monitoring", + "Resolved", + "Success", + "Error" + ], + "type": "string", + "x-ms-enum": { + "name": "RecommendedActionCurrentState", + "modelAsString": true + } + }, + "actionInitiatedBy": { + "description": "Gets who initiated the execution of this recommended action. Possible Value are: User -> When user explicity notified system to apply the recommended action. System -> When auto-execute status of this advisor was set to 'Enabled', in which case the system applied it.", + "enum": [ + "User", + "System" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "RecommendedActionInitiatedBy", + "modelAsString": false + } + }, + "lastModified": { + "format": "date-time", + "description": "Gets the time when the state was last modified", + "type": "string", + "readOnly": true + } + } + }, + "RecommendedActionImplementationInfo": { + "description": "Contains information for manual implementation for an Azure SQL Database, Server or Elastic Pool Recommended Action.", + "type": "object", + "properties": { + "method": { + "description": "Gets the method in which this recommended action can be manually implemented. e.g., TSql, AzurePowerShell.", + "enum": [ + "TSql", + "AzurePowerShell" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ImplementationMethod", + "modelAsString": false + } + }, + "script": { + "description": "Gets the manual implementation script. e.g., T-SQL script that could be executed on the database.", + "type": "string", + "readOnly": true + } + } + }, + "RecommendedActionErrorInfo": { + "description": "Contains error information for an Azure SQL Database, Server or Elastic Pool Recommended Action.", + "type": "object", + "properties": { + "errorCode": { + "description": "Gets the reason why the recommended action was put to error state. e.g., DatabaseHasQdsOff, IndexAlreadyExists", + "type": "string", + "readOnly": true + }, + "isRetryable": { + "description": "Gets whether the error could be ignored and recommended action could be retried. Possible values are: Yes/No", + "enum": [ + "Yes", + "No" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "IsRetryable", + "modelAsString": false + } + } + } + }, + "RecommendedActionImpactRecord": { + "description": "Contains information of estimated or observed impact on various metrics for an Azure SQL Database, Server or Elastic Pool Recommended Action.", + "type": "object", + "properties": { + "dimensionName": { + "description": "Gets the name of the impact dimension. e.g., CPUChange, DiskSpaceChange, NumberOfQueriesAffected.", + "type": "string", + "readOnly": true + }, + "unit": { + "description": "Gets the name of the impact dimension. e.g., CPUChange, DiskSpaceChange, NumberOfQueriesAffected.", + "type": "string", + "readOnly": true + }, + "absoluteValue": { + "format": "double", + "description": "Gets the absolute value of this dimension if applicable. e.g., Number of Queries affected", + "type": "number", + "readOnly": true + }, + "changeValueAbsolute": { + "format": "double", + "description": "Gets the absolute change in the value of this dimension. e.g., Absolute Disk space change in Megabytes", + "type": "number", + "readOnly": true + }, + "changeValueRelative": { + "format": "double", + "description": "Gets the relative change in the value of this dimension. e.g., Relative Disk space change in Percentage", + "type": "number", + "readOnly": true + } + } + }, + "RecommendedActionMetricInfo": { + "description": "Contains time series of various impacted metrics for an Azure SQL Database, Server or Elastic Pool Recommended Action.", + "type": "object", + "properties": { + "metricName": { + "description": "Gets the name of the metric. e.g., CPU, Number of Queries.", + "type": "string", + "readOnly": true + }, + "unit": { + "description": "Gets the unit in which metric is measured. e.g., DTU, Frequency", + "type": "string", + "readOnly": true + }, + "timeGrain": { + "description": "Gets the duration of time interval for the value given by this MetricInfo. e.g., PT1H (1 hour)", + "type": "string", + "readOnly": true + }, + "startTime": { + "format": "date-time", + "description": "Gets the start time of time interval given by this MetricInfo.", + "type": "string", + "readOnly": true + }, + "value": { + "format": "double", + "description": "Gets the value of the metric in the time interval given by this MetricInfo.", + "type": "number", + "readOnly": true + } + } + }, + "RecommendedAction": { + "description": "Database, Server or Elastic Pool Recommended Action.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "kind": { + "description": "Resource kind.", + "type": "string", + "readOnly": true + }, + "location": { + "description": "Resource location.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/RecommendedActionProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "Advisor": { + "description": "Database, Server or Elastic Pool Advisor.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "kind": { + "description": "Resource kind.", + "type": "string", + "readOnly": true + }, + "location": { + "description": "Resource location.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/AdvisorProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/DatabaseAutomaticTuning.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/DatabaseAutomaticTuning.json new file mode 100644 index 000000000000..6bdb4524d017 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/DatabaseAutomaticTuning.json @@ -0,0 +1,259 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/automaticTuning/current": { + "get": { + "tags": [ + "DatabaseAutomaticTuning" + ], + "description": "Gets a database's automatic tuning.", + "operationId": "DatabaseAutomaticTuning_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved database automatic tuning properties.", + "schema": { + "$ref": "#/definitions/DatabaseAutomaticTuning" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 SystemDatabasesNotSupported - User tried to get automatic tuning information on system databases.\n\n * 400 DataWarehouseNotSupported - Automatic tuning is not supported for SQL Data Warehouse.\n\n * 404 DatabaseDoesNotExist - The requested database was not found\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SubscriptionDoesNotHaveElasticPool - The requested elastic pool was not found\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 405 NotSupported - This functionality is not supported.\n\n * 409 Conflict - Request could not be processed because of conflict in the request.\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.\n\n * 503 ServiceTemporarilyUnavailable - Feature temporarily unavailable." + } + }, + "x-ms-examples": { + "Get a database's automatic tuning settings": { + "$ref": "./examples/DatabaseAutomaticTuningGet.json" + } + } + }, + "patch": { + "tags": [ + "DatabaseAutomaticTuning" + ], + "description": "Update automatic tuning properties for target database.", + "operationId": "DatabaseAutomaticTuning_Update", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "parameters", + "in": "body", + "description": "The requested automatic tuning resource state.", + "required": true, + "schema": { + "$ref": "#/definitions/DatabaseAutomaticTuning" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the specified database automatic tuning settings.", + "schema": { + "$ref": "#/definitions/DatabaseAutomaticTuning" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 SystemDatabasesNotSupported - User tried to get automatic tuning information on system databases.\n\n * 400 DataWarehouseNotSupported - Automatic tuning is not supported for SQL Data Warehouse.\n\n * 400 InvalidAutomaticTuningUpsertRequest - The update automatic tuning request body does not exist or has no properties object.\n\n * 400 InvalidAdvisorAutoExecuteStatus - Specified auto-execute status for the advisor is not allowed.\n\n * 404 DatabaseDoesNotExist - The requested database was not found\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SubscriptionDoesNotHaveElasticPool - The requested elastic pool was not found\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 AutomaticTuningOptionNotFound - The requested automatic tuning option was not found.\n\n * 405 NotSupported - This functionality is not supported.\n\n * 409 Conflict - Request could not be processed because of conflict in the request.\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 DisabledBySystem - This option is disabled by system\n\n * 409 DefaultAdvisorStateNotAllowedInCustomDbMode - DEFAULT advisor state is not allowed in CUSTOM mode\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 503 ServiceTemporarilyUnavailable - Feature temporarily unavailable." + } + }, + "x-ms-examples": { + "Updates database automatic tuning settings with minimal properties": { + "$ref": "./examples/DatabaseAutomaticTuningUpdateMin.json" + }, + "Updates database automatic tuning settings with all properties": { + "$ref": "./examples/DatabaseAutomaticTuningUpdateMax.json" + } + } + } + } + }, + "definitions": { + "DatabaseAutomaticTuningProperties": { + "description": "Database-level Automatic Tuning properties.", + "type": "object", + "properties": { + "desiredState": { + "description": "Automatic tuning desired state.", + "enum": [ + "Inherit", + "Custom", + "Auto", + "Unspecified" + ], + "type": "string", + "x-ms-enum": { + "name": "AutomaticTuningMode", + "modelAsString": false + } + }, + "actualState": { + "description": "Automatic tuning actual state.", + "enum": [ + "Inherit", + "Custom", + "Auto", + "Unspecified" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "AutomaticTuningMode", + "modelAsString": false + } + }, + "options": { + "description": "Automatic tuning options definition.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/AutomaticTuningOptions" + } + } + } + }, + "AutomaticTuningOptions": { + "description": "Automatic tuning properties for individual advisors.", + "type": "object", + "properties": { + "desiredState": { + "description": "Automatic tuning option desired state.", + "enum": [ + "Off", + "On", + "Default" + ], + "type": "string", + "x-ms-enum": { + "name": "AutomaticTuningOptionModeDesired", + "modelAsString": false + } + }, + "actualState": { + "description": "Automatic tuning option actual state.", + "enum": [ + "Off", + "On" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "AutomaticTuningOptionModeActual", + "modelAsString": false + } + }, + "reasonCode": { + "format": "int32", + "description": "Reason code if desired and actual state are different.", + "type": "integer", + "readOnly": true + }, + "reasonDesc": { + "description": "Reason description if desired and actual state are different.", + "enum": [ + "Default", + "Disabled", + "AutoConfigured", + "InheritedFromServer", + "QueryStoreOff", + "QueryStoreReadOnly", + "NotSupported" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "AutomaticTuningDisabledReason", + "modelAsString": false + } + } + } + }, + "DatabaseAutomaticTuning": { + "description": "Database-level Automatic Tuning.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/DatabaseAutomaticTuningProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/DatabaseColumns.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/DatabaseColumns.json new file mode 100644 index 000000000000..aacf9059d90f --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/DatabaseColumns.json @@ -0,0 +1,382 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/columns": { + "get": { + "tags": [ + "DatabaseColumns" + ], + "description": "List database columns", + "operationId": "DatabaseColumns_ListByDatabase", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "schema", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "table", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "column", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "orderBy", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "$skiptoken", + "in": "query", + "description": "An opaque token that identifies a starting point in the collection.", + "required": false, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved database columns.", + "schema": { + "$ref": "#/definitions/DatabaseColumnListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 UnsupportedColumnOrderByProperty - The order-by property '{0}' is not supported. Allowed properties are: {1}.\n\n * 400 UnsupportedColumnSortDirection - The column sort direction '{0}' is not supported. Allowed values are: {1}.\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 ResourceDoesNotExist - Resource with the name '{0}' does not exist. To continue, specify a valid resource name.\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List database columns": { + "$ref": "./examples/ColumnsListByDatabaseMin.json" + }, + "Filter database columns": { + "$ref": "./examples/ColumnsListByDatabaseMax.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/schemas/{schemaName}/tables/{tableName}/columns": { + "get": { + "tags": [ + "DatabaseColumns" + ], + "description": "List database columns", + "operationId": "DatabaseColumns_ListByTable", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "schemaName", + "in": "path", + "description": "The name of the schema.", + "required": true, + "type": "string" + }, + { + "name": "tableName", + "in": "path", + "description": "The name of the table.", + "required": true, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "An OData filter expression that filters elements in the collection.", + "required": false, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved database columns.", + "schema": { + "$ref": "#/definitions/DatabaseColumnListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 ResourceDoesNotExist - Resource with the name '{0}' does not exist. To continue, specify a valid resource name.\n\n * 404 InvalidDatabaseSchema - Schema is missing in database.\n\n * 404 InvalidDatabaseTable - Table is missing in database.\n\n * 404 InvalidDatabaseColumn - Column is missing in table.\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable." + } + }, + "x-ms-odata": "#/definitions/DatabaseColumn", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List database columns": { + "$ref": "./examples/DatabaseColumnListByTable.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/schemas/{schemaName}/tables/{tableName}/columns/{columnName}": { + "get": { + "tags": [ + "DatabaseColumns" + ], + "description": "Get database column", + "operationId": "DatabaseColumns_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "schemaName", + "in": "path", + "description": "The name of the schema.", + "required": true, + "type": "string" + }, + { + "name": "tableName", + "in": "path", + "description": "The name of the table.", + "required": true, + "type": "string" + }, + { + "name": "columnName", + "in": "path", + "description": "The name of the column.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved database column.", + "schema": { + "$ref": "#/definitions/DatabaseColumn" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 ResourceDoesNotExist - Resource with the name '{0}' does not exist. To continue, specify a valid resource name.\n\n * 404 InvalidDatabaseSchema - Schema is missing in database.\n\n * 404 InvalidDatabaseTable - Table is missing in database.\n\n * 404 InvalidDatabaseColumn - Column is missing in table.\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable." + } + }, + "x-ms-examples": { + "Get database column": { + "$ref": "./examples/DatabaseColumnGet.json" + } + } + } + } + }, + "definitions": { + "DatabaseColumnListResult": { + "description": "A list of database columns.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/DatabaseColumn" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "DatabaseColumnProperties": { + "description": "Database column properties.", + "type": "object", + "properties": { + "columnType": { + "description": "The column data type.", + "enum": [ + "image", + "text", + "uniqueidentifier", + "date", + "time", + "datetime2", + "datetimeoffset", + "tinyint", + "smallint", + "int", + "smalldatetime", + "real", + "money", + "datetime", + "float", + "sql_variant", + "ntext", + "bit", + "decimal", + "numeric", + "smallmoney", + "bigint", + "hierarchyid", + "geometry", + "geography", + "varbinary", + "varchar", + "binary", + "char", + "timestamp", + "nvarchar", + "nchar", + "xml", + "sysname" + ], + "type": "string", + "x-ms-enum": { + "name": "ColumnDataType", + "modelAsString": true + } + }, + "temporalType": { + "description": "The table temporal type.", + "enum": [ + "NonTemporalTable", + "HistoryTable", + "SystemVersionedTemporalTable" + ], + "type": "string", + "x-ms-enum": { + "name": "TableTemporalType", + "modelAsString": true + } + }, + "memoryOptimized": { + "description": "Whether or not the column belongs to a memory optimized table.", + "type": "boolean" + }, + "isComputed": { + "description": "Whether or not the column is computed.", + "type": "boolean" + } + } + }, + "DatabaseColumn": { + "description": "A database column resource.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/DatabaseColumnProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/DatabaseExtensions.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/DatabaseExtensions.json new file mode 100644 index 000000000000..33f1c9e70796 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/DatabaseExtensions.json @@ -0,0 +1,348 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/extensions/{extensionName}": { + "get": { + "tags": [ + "DatabaseExtensions" + ], + "description": "Gets a database extension. This will return resource not found as it is not supported.", + "operationId": "DatabaseExtensions_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "extensionName", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Get extensions import/export operation. This will return resource not found as it is not supported." + }, + "default": { + "description": "*** Error Responses: ***" + } + }, + "x-ms-examples": { + "Get database extensions.": { + "$ref": "./examples/GetDatabaseExtensions.json" + } + } + }, + "put": { + "tags": [ + "DatabaseExtensions" + ], + "description": "Perform a database extension operation, like polybase import", + "operationId": "DatabaseExtensions_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "extensionName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The database import request parameters.", + "required": true, + "schema": { + "$ref": "#/definitions/DatabaseExtensions" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully completed import/export operation.", + "schema": { + "$ref": "#/definitions/ImportExportExtensionsOperationResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 MissingImportExportInputParameters - Missing ImportExport input parameters.\n\n * 400 PolybaseImportAuthenticationTypeNotSupported - Authentication type parameter is not support for PolybaseImport operation.\n\n * 400 DatabaseExtensionsInvalidOperationMode - Invalid operationMode parameter for database extension.\n\n * 400 DatabaseExtensionsInvalidStorageKeyType - The storage key type must by 'StorageAccessKey'.\n\n * 400 DatabaseExtensionsMissingStorageUri - Storage URI cannot be empty.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 InvalidOperationType - Provide a valid operation type.\n\n * 400 ImportExportJobError - The ImportExport operation has failed.\n\n * 400 BlockedByOutboundFirewall - The outbound firewall rules blocked the request.\n\n * 404 ResourceNotFound - Invalid request specifying a non-existent resource.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ImportExportOperationIdNotFound - The operation Id for import or export cannot be found.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 409 ImportExportOperationInProgress - There is an import or export operation in progress on the database." + }, + "202": { + "description": "Import/Export operation is in progress." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create or Update database extensions.": { + "$ref": "./examples/CreateOrUpdateDatabaseExtensions.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/extensions": { + "get": { + "tags": [ + "DatabaseExtensions" + ], + "description": "List database extension. This will return an empty list as it is not supported.", + "operationId": "DatabaseExtensions_ListByDatabase", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "List extensions import/export operations. This will return an empty list as it is not supported.", + "schema": { + "$ref": "#/definitions/ImportExportExtensionsOperationListResult" + } + }, + "default": { + "description": "*** Error Responses: ***" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List database extensions.": { + "$ref": "./examples/ListDatabaseExtensions.json" + } + } + } + } + }, + "definitions": { + "DatabaseExtensionsProperties": { + "description": "Contains the database information after successful export.", + "required": [ + "operationMode", + "storageKeyType", + "storageKey", + "storageUri" + ], + "type": "object", + "properties": { + "operationMode": { + "description": "Operation Mode.", + "enum": [ + "PolybaseImport" + ], + "type": "string", + "x-ms-enum": { + "name": "OperationMode", + "modelAsString": true + }, + "x-ms-mutability": [ + "create" + ] + }, + "storageKeyType": { + "description": "Storage key type.", + "enum": [ + "SharedAccessKey", + "StorageAccessKey" + ], + "type": "string", + "x-ms-enum": { + "name": "StorageKeyType", + "modelAsString": true + }, + "x-ms-mutability": [ + "create" + ] + }, + "storageKey": { + "description": "Storage key.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "storageUri": { + "description": "Storage Uri.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + } + } + }, + "DatabaseExtensions": { + "description": "An export managed database operation result resource.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/DatabaseExtensionsProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "ImportExportExtensionsOperationResultProperties": { + "description": "Contains the operation result properties for import/export operation.", + "type": "object", + "properties": { + "requestId": { + "format": "uuid", + "description": "Request Id.", + "type": "string", + "readOnly": true + }, + "requestType": { + "description": "Request type.", + "type": "string", + "readOnly": true + }, + "lastModifiedTime": { + "description": "Last modified time.", + "type": "string", + "readOnly": true + }, + "serverName": { + "description": "Server name.", + "type": "string", + "readOnly": true + }, + "databaseName": { + "description": "Database name.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "Operation status.", + "type": "string", + "readOnly": true + }, + "errorMessage": { + "description": "Error message.", + "type": "string", + "readOnly": true + } + } + }, + "ImportExportExtensionsOperationResult": { + "description": "An Extension operation result resource.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ImportExportExtensionsOperationResultProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "ImportExportExtensionsOperationListResult": { + "description": "Import export operation extensions list.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/ImportExportExtensionsOperationResult" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/DatabaseOperations.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/DatabaseOperations.json new file mode 100644 index 000000000000..bd3eaf85e8f9 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/DatabaseOperations.json @@ -0,0 +1,271 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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": [ + "DatabaseOperations" + ], + "description": "Cancels the asynchronous operation on the database.", + "operationId": "DatabaseOperations_Cancel", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "operationId", + "in": "path", + "description": "The operation identifier.", + "required": true, + "type": "string", + "format": "uuid" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/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 InvalidDatabaseCreateMode - Invalid request to create a database.\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 InvalidBackupStorageAccountType - User passed zrs/lrs during create/update of a database but it failed either because the customer is not whitelisted or because zrs is not available in the specified region.\n\n * 400 CannotUpdateToFreeDatabase - Updating a database to the free sku is not supported.\n\n * 400 DatabaseInvalidSkuPropertyCombination - The properties of the requested sku are inconsistent. Please check that a valid combination is specified. See https://docs.microsoft.com/en-us/rest/api/sql/capabilities/listbylocation#serviceobjectivecapability for more details.\n\n * 400 DatabaseNamedReplicaPerDatabaseLimitExceeded - User tried create a named replica that would exceed the allowed number per primary database\n\n * 400 DatabaseIsCurrentlyPinned - Microsoft has pinned your database SQL Server engine version. To ensure your database does not hit production issues, any future scale operations on your database will be blocked until it has been un-pinned. Please contact Microsoft support for assistance with scaling.\n\n * 400 RestoreTargetEditionSizeInsufficient - User attempted to restore a database to an edition that is a smaller size than the current allocated size of the source.\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 DatabaseCreationBlockedForNonActivatedCMKServer - SQL Pool creations are blocked for CMK enabled workspaces until the workspace is activated. First, enable purge protection and grant the workspace Managed Identity the required permissions (Get, Wrap Key, Unwrap Key) on the Azure Key Vault of the workspace key. Next, activate your workspace after you have granted access.\n\n * 400 PartnerServerNotCompatible - 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 TargetElasticPoolDoesNotExist - The elastic pool does not exist on a 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 ElasticPoolNameRequired - User tried to create or update database to elastic pool service objective without specifying the name of the elastic pool.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\n\n * 400 TierChangeUnsupportedDueToCDCEnabledDatabase - The database cannot update its sku because it is enabled for CDC.\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 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 400 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 400 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 400 InvalidMaxSizeTierCombination - The specified tier does not support the specified database max size.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 400 InvalidReadScaleEdition - User attempted to enable read scale on a database type that does not support it.\n\n * 400 InvalidReadScaleUnits - User attempted to provide a read scale value that is not supported.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\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 GeoSecondaryMaxSizeUpdateFailed - The geo-secondary database is of a SLO that does not support the requested maxsize value or the geo-secondary is in an unsupported region or an update operation is already in progress on the geo-secondary database.\n\n * 400 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 400 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 400 InvalidTier - The user specified an invalid tier.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\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 RequestedDatabaseSizeRequiresShrink - User attempted to ALTER DATABASE MODIFY MAXSIZE to modify the MAXSIZE for a database to a smaller size then the current size.\n\n * 400 CurrentDatabaseSizeExceedsDbMaxSize - User attempted to reduce the max size for a database to a size smaller than the current usage.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 SourceDatabaseEditionCouldNotBeUpgraded - The source database cannot have higher edition than the target database.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 TargetDatabaseEditionCouldNotBeDowngraded - The target database cannot have lower edition than the source database.\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currently in progress.\n\n * 400 InvalidCollation - Collation is not recognized by the server.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 PartnerDBNotCompatibleForSGXEnclave - Attempt to set GeoDR link or update SLO for enclave enabled database is only supported when both database are running on DC-series hardware.\n\n * 400 UpdateNotAllowedInCurrentReplicationState - The operation is disallowed on the database in its current replication state.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 GeoReplicaLimitReached - The per-replica replication limit was reached.\n\n * 400 UnsupportedCapacity - User tried to create or update database with capacity which is not supported.\n\n * 400 ReplicationSourceAndTargetMustHaveSameName - The replication source and target databases must have the same name.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 ReplicationSourceAndTargetMustBeInDifferentServers - The replication source and target databases must be in different logical servers.\n\n * 400 CannotUpdateIsLedgerDatabase - The ledger property of an existing database cannot be updated.\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 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 400 RestoreToFreeEditionNotSupported - Restore and GeoRestore target cannot be free database.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 400 RestoreNotSupportedForFreeEdition - Restore and GeoRestore are not supported for free database.\n\n * 400 JobAgentDatabaseEditionUnsupported - The specified database's service level objective is not supported for use as a job agent database.\n\n * 400 InvalidDroppedDatabase - Source database dropped does not exist on server within the supported recovery period.\n\n * 400 InvalidLiveDatabase - Source database does not exist on server within the supported recovery period. If restoring a dropped database, please specify its deletion date.\n\n * 400 InvalidVldbRecoverySlo - The Hyperscale edition recovery requires both source and target databases to use Hyperscale service level objective.\n\n * 400 SourceDatabaseNotFound - The source database does not exist.\n\n * 400 InvalidVldbRestoreSlo - The Hyperscale edition Point-In-Time restore requires both source and target databases to use Hyperscale service level objective.\n\n * 400 CannotSpecifyPoolOrSlo - Specifying an elastic pool and/or changing the service level objective or edition is not supported for edition.\n\n * 400 InvalidPublicMaintenanceConfiguration - User tried to specify public maintenance configuration which cannot be converted to internal id (malformed or wrong region).\n\n * 400 ChangeUnsupportedOnEntity - User attempted an unsupported create/update/delete operation on a given entity.\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 * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 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 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 * 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 FreeDbAlreadyExists - Only one free database can exist for a subscription per region.\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 ConflictRequestToUpdateBackupRedundancy - A conflict request to change backup storage redundancy is still in progress.\n\n * 409 SkuAssignmentInProgress - The current assignment request cannot be processed because a previous request has not completed.\n\n * 409 DatabaseElasticPoolMaintenanceConflict - User tried to create or update a database with a specified maintenance configuration that conflicted with that of the elastic pool of the database.\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 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 UpdateSloFailedDatabaseTooBusy - Update SLO operation could not complete because database was too busy.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 ServerDisabled - Server is disabled.\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 TargetElasticPoolBeingUpdated - The update of elastic pool cannot be started because there is copy operation in progress for one of the databases in this elastic pool\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 DatabaseCopyLimitPerReplicaReached - User reached the limit of concurrent database copies.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 ServerDisabled - Server is disabled.\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 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\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": [ + "DatabaseOperations" + ], + "description": "Gets a list of operations performed on the database.", + "operationId": "DatabaseOperations_ListByDatabase", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/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 InvalidDatabaseCreateMode - Invalid request to create a database.\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 InvalidBackupStorageAccountType - User passed zrs/lrs during create/update of a database but it failed either because the customer is not whitelisted or because zrs is not available in the specified region.\n\n * 400 CannotUpdateToFreeDatabase - Updating a database to the free sku is not supported.\n\n * 400 DatabaseInvalidSkuPropertyCombination - The properties of the requested sku are inconsistent. Please check that a valid combination is specified. See https://docs.microsoft.com/en-us/rest/api/sql/capabilities/listbylocation#serviceobjectivecapability for more details.\n\n * 400 DatabaseNamedReplicaPerDatabaseLimitExceeded - User tried create a named replica that would exceed the allowed number per primary database\n\n * 400 DatabaseIsCurrentlyPinned - Microsoft has pinned your database SQL Server engine version. To ensure your database does not hit production issues, any future scale operations on your database will be blocked until it has been un-pinned. Please contact Microsoft support for assistance with scaling.\n\n * 400 RestoreTargetEditionSizeInsufficient - User attempted to restore a database to an edition that is a smaller size than the current allocated size of the source.\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 DatabaseCreationBlockedForNonActivatedCMKServer - SQL Pool creations are blocked for CMK enabled workspaces until the workspace is activated. First, enable purge protection and grant the workspace Managed Identity the required permissions (Get, Wrap Key, Unwrap Key) on the Azure Key Vault of the workspace key. Next, activate your workspace after you have granted access.\n\n * 400 PartnerServerNotCompatible - 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 TargetElasticPoolDoesNotExist - The elastic pool does not exist on a 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 ElasticPoolNameRequired - User tried to create or update database to elastic pool service objective without specifying the name of the elastic pool.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\n\n * 400 TierChangeUnsupportedDueToCDCEnabledDatabase - The database cannot update its sku because it is enabled for CDC.\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 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 400 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 400 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 400 InvalidMaxSizeTierCombination - The specified tier does not support the specified database max size.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 400 InvalidReadScaleEdition - User attempted to enable read scale on a database type that does not support it.\n\n * 400 InvalidReadScaleUnits - User attempted to provide a read scale value that is not supported.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\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 GeoSecondaryMaxSizeUpdateFailed - The geo-secondary database is of a SLO that does not support the requested maxsize value or the geo-secondary is in an unsupported region or an update operation is already in progress on the geo-secondary database.\n\n * 400 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 400 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 400 InvalidTier - The user specified an invalid tier.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\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 RequestedDatabaseSizeRequiresShrink - User attempted to ALTER DATABASE MODIFY MAXSIZE to modify the MAXSIZE for a database to a smaller size then the current size.\n\n * 400 CurrentDatabaseSizeExceedsDbMaxSize - User attempted to reduce the max size for a database to a size smaller than the current usage.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 SourceDatabaseEditionCouldNotBeUpgraded - The source database cannot have higher edition than the target database.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 TargetDatabaseEditionCouldNotBeDowngraded - The target database cannot have lower edition than the source database.\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currently in progress.\n\n * 400 InvalidCollation - Collation is not recognized by the server.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 PartnerDBNotCompatibleForSGXEnclave - Attempt to set GeoDR link or update SLO for enclave enabled database is only supported when both database are running on DC-series hardware.\n\n * 400 UpdateNotAllowedInCurrentReplicationState - The operation is disallowed on the database in its current replication state.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 GeoReplicaLimitReached - The per-replica replication limit was reached.\n\n * 400 UnsupportedCapacity - User tried to create or update database with capacity which is not supported.\n\n * 400 ReplicationSourceAndTargetMustHaveSameName - The replication source and target databases must have the same name.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 ReplicationSourceAndTargetMustBeInDifferentServers - The replication source and target databases must be in different logical servers.\n\n * 400 CannotUpdateIsLedgerDatabase - The ledger property of an existing database cannot be updated.\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 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 400 RestoreToFreeEditionNotSupported - Restore and GeoRestore target cannot be free database.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 400 RestoreNotSupportedForFreeEdition - Restore and GeoRestore are not supported for free database.\n\n * 400 JobAgentDatabaseEditionUnsupported - The specified database's service level objective is not supported for use as a job agent database.\n\n * 400 InvalidDroppedDatabase - Source database dropped does not exist on server within the supported recovery period.\n\n * 400 InvalidLiveDatabase - Source database does not exist on server within the supported recovery period. If restoring a dropped database, please specify its deletion date.\n\n * 400 InvalidVldbRecoverySlo - The Hyperscale edition recovery requires both source and target databases to use Hyperscale service level objective.\n\n * 400 SourceDatabaseNotFound - The source database does not exist.\n\n * 400 InvalidVldbRestoreSlo - The Hyperscale edition Point-In-Time restore requires both source and target databases to use Hyperscale service level objective.\n\n * 400 CannotSpecifyPoolOrSlo - Specifying an elastic pool and/or changing the service level objective or edition is not supported for edition.\n\n * 400 InvalidPublicMaintenanceConfiguration - User tried to specify public maintenance configuration which cannot be converted to internal id (malformed or wrong region).\n\n * 400 ChangeUnsupportedOnEntity - User attempted an unsupported create/update/delete operation on a given entity.\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 * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 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 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 * 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 FreeDbAlreadyExists - Only one free database can exist for a subscription per region.\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 ConflictRequestToUpdateBackupRedundancy - A conflict request to change backup storage redundancy is still in progress.\n\n * 409 SkuAssignmentInProgress - The current assignment request cannot be processed because a previous request has not completed.\n\n * 409 DatabaseElasticPoolMaintenanceConflict - User tried to create or update a database with a specified maintenance configuration that conflicted with that of the elastic pool of the database.\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 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 UpdateSloFailedDatabaseTooBusy - Update SLO operation could not complete because database was too busy.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 ServerDisabled - Server is disabled.\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 TargetElasticPoolBeingUpdated - The update of elastic pool cannot be started because there is copy operation in progress for one of the databases in this elastic pool\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 DatabaseCopyLimitPerReplicaReached - User reached the limit of concurrent database copies.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 ServerDisabled - Server is disabled.\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 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\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 + } + } + }, + "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 + } + } + }, + "DatabaseOperation": { + "description": "A database operation.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/DatabaseOperationProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/DatabaseRecommendedActions.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/DatabaseRecommendedActions.json new file mode 100644 index 000000000000..9cb383a351c6 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/DatabaseRecommendedActions.json @@ -0,0 +1,576 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/advisors/{advisorName}/recommendedActions": { + "get": { + "tags": [ + "DatabaseRecommendedActions" + ], + "description": "Gets list of Database Recommended Actions.", + "operationId": "DatabaseRecommendedActions_ListByDatabaseAdvisor", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "advisorName", + "in": "path", + "description": "The name of the Database Advisor.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of database recommended actions.", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/RecommendedAction" + } + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 404 DatabaseDoesNotExist - The requested database was not found\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SubscriptionDoesNotHaveElasticPool - The requested elastic pool was not found\n\n * 404 AdvisorNotFound - The requested advisor was not found.\n\n * 404 RecommendedActionNotFound - The requested recommended action was not found.\n\n * 404 AdvisorNotFound - The requested advisor was not found.\n\n * 404 RecommendedActionNotFound - The requested recommended action was not found.\n\n * 405 NotSupported - This functionality is not supported.\n\n * 409 Conflict - Request could not be processed because of conflict in the request.\n\n * 503 ServiceTemporarilyUnavailable - Feature temporarily unavailable." + } + }, + "x-ms-examples": { + "List of database recommended actions": { + "$ref": "./examples/DatabaseRecommendedActionList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/advisors/{advisorName}/recommendedActions/{recommendedActionName}": { + "get": { + "tags": [ + "DatabaseRecommendedActions" + ], + "description": "Gets a database recommended action.", + "operationId": "DatabaseRecommendedActions_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "advisorName", + "in": "path", + "description": "The name of the Database Advisor.", + "required": true, + "type": "string" + }, + { + "name": "recommendedActionName", + "in": "path", + "description": "The name of Database Recommended Action.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved details of specified database recommended action.", + "schema": { + "$ref": "#/definitions/RecommendedAction" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 404 DatabaseDoesNotExist - The requested database was not found\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SubscriptionDoesNotHaveElasticPool - The requested elastic pool was not found\n\n * 404 AdvisorNotFound - The requested advisor was not found.\n\n * 404 RecommendedActionNotFound - The requested recommended action was not found.\n\n * 404 AdvisorNotFound - The requested advisor was not found.\n\n * 404 RecommendedActionNotFound - The requested recommended action was not found.\n\n * 405 NotSupported - This functionality is not supported.\n\n * 409 Conflict - Request could not be processed because of conflict in the request.\n\n * 503 ServiceTemporarilyUnavailable - Feature temporarily unavailable." + } + }, + "x-ms-examples": { + "Get database recommended action": { + "$ref": "./examples/DatabaseRecommendedActionGet.json" + } + } + }, + "patch": { + "tags": [ + "DatabaseRecommendedActions" + ], + "description": "Updates a database recommended action.", + "operationId": "DatabaseRecommendedActions_Update", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "advisorName", + "in": "path", + "description": "The name of the Database Advisor.", + "required": true, + "type": "string" + }, + { + "name": "recommendedActionName", + "in": "path", + "description": "The name of Database Recommended Action.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The requested recommended action resource state.", + "required": true, + "schema": { + "$ref": "#/definitions/RecommendedAction" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the specified database recommended action.", + "schema": { + "$ref": "#/definitions/RecommendedAction" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 InvalidRecommendedActionUpsertRequest - The update recommended action request body does not exist or has no properties or state object.\n\n * 400 InvalidRecommendedActionState - The specified state for recommended action is invalid\n\n * 404 DatabaseDoesNotExist - The requested database was not found\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SubscriptionDoesNotHaveElasticPool - The requested elastic pool was not found\n\n * 404 AdvisorNotFound - The requested advisor was not found.\n\n * 404 RecommendedActionNotFound - The requested recommended action was not found.\n\n * 404 AdvisorNotFound - The requested advisor was not found.\n\n * 404 RecommendedActionNotFound - The requested recommended action was not found.\n\n * 405 NotSupported - This functionality is not supported.\n\n * 409 Conflict - Request could not be processed because of conflict in the request.\n\n * 503 ServiceTemporarilyUnavailable - Feature temporarily unavailable." + } + }, + "x-ms-examples": { + "Update database recommended action": { + "$ref": "./examples/DatabaseRecommendedActionUpdate.json" + } + } + } + } + }, + "definitions": { + "RecommendedActionProperties": { + "description": "Properties for a Database, Server or Elastic Pool Recommended Action.", + "required": [ + "state" + ], + "type": "object", + "properties": { + "recommendationReason": { + "description": "Gets the reason for recommending this action. e.g., DuplicateIndex", + "type": "string", + "readOnly": true + }, + "validSince": { + "format": "date-time", + "description": "Gets the time since when this recommended action is valid.", + "type": "string", + "readOnly": true + }, + "lastRefresh": { + "format": "date-time", + "description": "Gets time when this recommended action was last refreshed.", + "type": "string", + "readOnly": true + }, + "state": { + "$ref": "#/definitions/RecommendedActionStateInfo", + "description": "Gets the info of the current state the recommended action is in." + }, + "isExecutableAction": { + "description": "Gets if this recommended action is actionable by user", + "type": "boolean", + "readOnly": true + }, + "isRevertableAction": { + "description": "Gets if changes applied by this recommended action can be reverted by user", + "type": "boolean", + "readOnly": true + }, + "isArchivedAction": { + "description": "Gets if this recommended action was suggested some time ago but user chose to ignore this and system added a new recommended action again.", + "type": "boolean", + "readOnly": true + }, + "executeActionStartTime": { + "format": "date-time", + "description": "Gets the time when system started applying this recommended action on the user resource. e.g., index creation start time", + "type": "string", + "readOnly": true + }, + "executeActionDuration": { + "description": "Gets the time taken for applying this recommended action on user resource. e.g., time taken for index creation", + "type": "string", + "readOnly": true + }, + "revertActionStartTime": { + "format": "date-time", + "description": "Gets the time when system started reverting changes of this recommended action on user resource. e.g., time when index drop is executed.", + "type": "string", + "readOnly": true + }, + "revertActionDuration": { + "description": "Gets the time taken for reverting changes of this recommended action on user resource. e.g., time taken for dropping the created index.", + "type": "string", + "readOnly": true + }, + "executeActionInitiatedBy": { + "description": "Gets if approval for applying this recommended action was given by user/system.", + "enum": [ + "User", + "System" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "RecommendedActionInitiatedBy", + "modelAsString": false + } + }, + "executeActionInitiatedTime": { + "format": "date-time", + "description": "Gets the time when this recommended action was approved for execution.", + "type": "string", + "readOnly": true + }, + "revertActionInitiatedBy": { + "description": "Gets if approval for reverting this recommended action was given by user/system.", + "enum": [ + "User", + "System" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "RecommendedActionInitiatedBy", + "modelAsString": false + } + }, + "revertActionInitiatedTime": { + "format": "date-time", + "description": "Gets the time when this recommended action was approved for revert.", + "type": "string", + "readOnly": true + }, + "score": { + "format": "int32", + "description": "Gets the impact of this recommended action. Possible values are 1 - Low impact, 2 - Medium Impact and 3 - High Impact", + "type": "integer", + "readOnly": true + }, + "implementationDetails": { + "$ref": "#/definitions/RecommendedActionImplementationInfo", + "description": "Gets the implementation details of this recommended action for user to apply it manually.", + "readOnly": true + }, + "errorDetails": { + "$ref": "#/definitions/RecommendedActionErrorInfo", + "description": "Gets the error details if and why this recommended action is put to error state.", + "readOnly": true + }, + "estimatedImpact": { + "description": "Gets the estimated impact info for this recommended action e.g., Estimated CPU gain, Estimated Disk Space change", + "type": "array", + "items": { + "$ref": "#/definitions/RecommendedActionImpactRecord" + }, + "readOnly": true + }, + "observedImpact": { + "description": "Gets the observed/actual impact info for this recommended action e.g., Actual CPU gain, Actual Disk Space change", + "type": "array", + "items": { + "$ref": "#/definitions/RecommendedActionImpactRecord" + }, + "readOnly": true + }, + "timeSeries": { + "description": "Gets the time series info of metrics for this recommended action e.g., CPU consumption time series", + "type": "array", + "items": { + "$ref": "#/definitions/RecommendedActionMetricInfo" + }, + "readOnly": true + }, + "linkedObjects": { + "description": "Gets the linked objects, if any.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "details": { + "description": "Gets additional details specific to this recommended action.", + "type": "object", + "additionalProperties": { + "type": "object" + }, + "readOnly": true + } + } + }, + "RecommendedActionStateInfo": { + "description": "Contains information of current state for an Azure SQL Database, Server or Elastic Pool Recommended Action.", + "required": [ + "currentValue" + ], + "type": "object", + "properties": { + "currentValue": { + "description": "Current state the recommended action is in. Some commonly used states are: Active -> recommended action is active and no action has been taken yet. Pending -> recommended action is approved for and is awaiting execution. Executing -> recommended action is being applied on the user database. Verifying -> recommended action was applied and is being verified of its usefulness by the system. Success -> recommended action was applied and improvement found during verification. Pending Revert -> verification found little or no improvement so recommended action is queued for revert or user has manually reverted. Reverting -> changes made while applying recommended action are being reverted on the user database. Reverted -> successfully reverted the changes made by recommended action on user database. Ignored -> user explicitly ignored/discarded the recommended action. ", + "enum": [ + "Active", + "Pending", + "Executing", + "Verifying", + "PendingRevert", + "RevertCancelled", + "Reverting", + "Reverted", + "Ignored", + "Expired", + "Monitoring", + "Resolved", + "Success", + "Error" + ], + "type": "string", + "x-ms-enum": { + "name": "RecommendedActionCurrentState", + "modelAsString": true + } + }, + "actionInitiatedBy": { + "description": "Gets who initiated the execution of this recommended action. Possible Value are: User -> When user explicity notified system to apply the recommended action. System -> When auto-execute status of this advisor was set to 'Enabled', in which case the system applied it.", + "enum": [ + "User", + "System" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "RecommendedActionInitiatedBy", + "modelAsString": false + } + }, + "lastModified": { + "format": "date-time", + "description": "Gets the time when the state was last modified", + "type": "string", + "readOnly": true + } + } + }, + "RecommendedActionImplementationInfo": { + "description": "Contains information for manual implementation for an Azure SQL Database, Server or Elastic Pool Recommended Action.", + "type": "object", + "properties": { + "method": { + "description": "Gets the method in which this recommended action can be manually implemented. e.g., TSql, AzurePowerShell.", + "enum": [ + "TSql", + "AzurePowerShell" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ImplementationMethod", + "modelAsString": false + } + }, + "script": { + "description": "Gets the manual implementation script. e.g., T-SQL script that could be executed on the database.", + "type": "string", + "readOnly": true + } + } + }, + "RecommendedActionErrorInfo": { + "description": "Contains error information for an Azure SQL Database, Server or Elastic Pool Recommended Action.", + "type": "object", + "properties": { + "errorCode": { + "description": "Gets the reason why the recommended action was put to error state. e.g., DatabaseHasQdsOff, IndexAlreadyExists", + "type": "string", + "readOnly": true + }, + "isRetryable": { + "description": "Gets whether the error could be ignored and recommended action could be retried. Possible values are: Yes/No", + "enum": [ + "Yes", + "No" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "IsRetryable", + "modelAsString": false + } + } + } + }, + "RecommendedActionImpactRecord": { + "description": "Contains information of estimated or observed impact on various metrics for an Azure SQL Database, Server or Elastic Pool Recommended Action.", + "type": "object", + "properties": { + "dimensionName": { + "description": "Gets the name of the impact dimension. e.g., CPUChange, DiskSpaceChange, NumberOfQueriesAffected.", + "type": "string", + "readOnly": true + }, + "unit": { + "description": "Gets the name of the impact dimension. e.g., CPUChange, DiskSpaceChange, NumberOfQueriesAffected.", + "type": "string", + "readOnly": true + }, + "absoluteValue": { + "format": "double", + "description": "Gets the absolute value of this dimension if applicable. e.g., Number of Queries affected", + "type": "number", + "readOnly": true + }, + "changeValueAbsolute": { + "format": "double", + "description": "Gets the absolute change in the value of this dimension. e.g., Absolute Disk space change in Megabytes", + "type": "number", + "readOnly": true + }, + "changeValueRelative": { + "format": "double", + "description": "Gets the relative change in the value of this dimension. e.g., Relative Disk space change in Percentage", + "type": "number", + "readOnly": true + } + } + }, + "RecommendedActionMetricInfo": { + "description": "Contains time series of various impacted metrics for an Azure SQL Database, Server or Elastic Pool Recommended Action.", + "type": "object", + "properties": { + "metricName": { + "description": "Gets the name of the metric. e.g., CPU, Number of Queries.", + "type": "string", + "readOnly": true + }, + "unit": { + "description": "Gets the unit in which metric is measured. e.g., DTU, Frequency", + "type": "string", + "readOnly": true + }, + "timeGrain": { + "description": "Gets the duration of time interval for the value given by this MetricInfo. e.g., PT1H (1 hour)", + "type": "string", + "readOnly": true + }, + "startTime": { + "format": "date-time", + "description": "Gets the start time of time interval given by this MetricInfo.", + "type": "string", + "readOnly": true + }, + "value": { + "format": "double", + "description": "Gets the value of the metric in the time interval given by this MetricInfo.", + "type": "number", + "readOnly": true + } + } + }, + "RecommendedAction": { + "description": "Database, Server or Elastic Pool Recommended Action.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "kind": { + "description": "Resource kind.", + "type": "string", + "readOnly": true + }, + "location": { + "description": "Resource location.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/RecommendedActionProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/DatabaseSchemas.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/DatabaseSchemas.json new file mode 100644 index 000000000000..069826456881 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/DatabaseSchemas.json @@ -0,0 +1,182 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/schemas": { + "get": { + "tags": [ + "DatabaseSchemas" + ], + "description": "List database schemas", + "operationId": "DatabaseSchemas_ListByDatabase", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "$filter", + "in": "query", + "description": "An OData filter expression that filters elements in the collection.", + "required": false, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved database schemas.", + "schema": { + "$ref": "#/definitions/DatabaseSchemaListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 ResourceDoesNotExist - Resource with the name '{0}' does not exist. To continue, specify a valid resource name.\n\n * 404 InvalidDatabaseSchema - Schema is missing in database.\n\n * 404 InvalidDatabaseTable - Table is missing in database.\n\n * 404 InvalidDatabaseColumn - Column is missing in table.\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable." + } + }, + "x-ms-odata": "#/definitions/DatabaseSchema", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List database schemas": { + "$ref": "./examples/DatabaseSchemaListByDatabase.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/schemas/{schemaName}": { + "get": { + "tags": [ + "DatabaseSchemas" + ], + "description": "Get database schema", + "operationId": "DatabaseSchemas_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "schemaName", + "in": "path", + "description": "The name of the schema.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved database schema.", + "schema": { + "$ref": "#/definitions/DatabaseSchema" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 ResourceDoesNotExist - Resource with the name '{0}' does not exist. To continue, specify a valid resource name.\n\n * 404 InvalidDatabaseSchema - Schema is missing in database.\n\n * 404 InvalidDatabaseTable - Table is missing in database.\n\n * 404 InvalidDatabaseColumn - Column is missing in table.\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable." + } + }, + "x-ms-examples": { + "Get database schema": { + "$ref": "./examples/DatabaseSchemaGet.json" + } + } + } + } + }, + "definitions": { + "DatabaseSchema": { + "description": "A database schema resource.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": {} + }, + "DatabaseSchemaListResult": { + "description": "A list of database schemas.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/DatabaseSchema" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/DatabaseSecurityAlertPolicies.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/DatabaseSecurityAlertPolicies.json new file mode 100644 index 000000000000..08e598bc76ff --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/DatabaseSecurityAlertPolicies.json @@ -0,0 +1,329 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/securityAlertPolicies/{securityAlertPolicyName}": { + "get": { + "tags": [ + "DatabaseSecurityAlertPolicies" + ], + "description": "Gets a database's security alert policy.", + "operationId": "DatabaseSecurityAlertPolicies_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "required": true, + "type": "string" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the database for which the security alert policy is defined.", + "required": true, + "type": "string" + }, + { + "name": "securityAlertPolicyName", + "in": "path", + "description": "The name of the security alert policy.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "SecurityAlertPolicyName", + "modelAsString": true + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the database security alert policy.", + "schema": { + "$ref": "#/definitions/DatabaseSecurityAlertPolicy" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 400 SecurityAlertPoliciesInsufficientStorageAccountPermissions - Insufficient read or write permissions on the provided storage account.\n\n * 400 SecurityAlertPoliciesStorageAccountIsDisabled - The storage account provided in the threat detection policy is disabled.\n\n * 400 SecurityAlertPoliciesInsufficientDiskSpace - Insufficient disk space to save security alert policy metadata in the database\n\n * 400 SecurityAlertPoliciesInvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 SecurityAlertPoliciesInvalidStorageAccountCredentials - The provided storage account access key is not valid.\n\n * 400 InvalidDatabaseSecurityAlertPolicyCreateRequest - The create database Threat Detection security alert policy request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 UpsertDatabaseSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 400 UpsertDatabaseSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 UpsertDatabaseSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 409 DatabaseSecurityAlertPolicyInProgress - Set database security alert policy is already in progress\n\n * 409 UpsertDatabaseSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later.\n\n * 500 UpsertDatabaseSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 500 GetDatabaseSecurityAlertPolicyFailed - Failed to get Threat Detection settings" + } + }, + "x-ms-examples": { + "Get a database's threat detection policy": { + "$ref": "./examples/DatabaseSecurityAlertGet.json" + } + } + }, + "put": { + "tags": [ + "DatabaseSecurityAlertPolicies" + ], + "description": "Creates or updates a database's security alert policy.", + "operationId": "DatabaseSecurityAlertPolicies_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "required": true, + "type": "string" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the database for which the security alert policy is defined.", + "required": true, + "type": "string" + }, + { + "name": "securityAlertPolicyName", + "in": "path", + "description": "The name of the security alert policy.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "SecurityAlertPolicyName", + "modelAsString": true + } + }, + { + "name": "parameters", + "in": "body", + "description": "The database security alert policy.", + "required": true, + "schema": { + "$ref": "#/definitions/DatabaseSecurityAlertPolicy" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully set the database security alert policy.", + "schema": { + "$ref": "#/definitions/DatabaseSecurityAlertPolicy" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 400 SecurityAlertPoliciesInsufficientStorageAccountPermissions - Insufficient read or write permissions on the provided storage account.\n\n * 400 SecurityAlertPoliciesStorageAccountIsDisabled - The storage account provided in the threat detection policy is disabled.\n\n * 400 SecurityAlertPoliciesInsufficientDiskSpace - Insufficient disk space to save security alert policy metadata in the database\n\n * 400 SecurityAlertPoliciesInvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 SecurityAlertPoliciesInvalidStorageAccountCredentials - The provided storage account access key is not valid.\n\n * 400 InvalidDatabaseSecurityAlertPolicyCreateRequest - The create database Threat Detection security alert policy request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 UpsertDatabaseSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 400 UpsertDatabaseSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 UpsertDatabaseSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 409 DatabaseSecurityAlertPolicyInProgress - Set database security alert policy is already in progress\n\n * 409 UpsertDatabaseSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later.\n\n * 500 UpsertDatabaseSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 500 GetDatabaseSecurityAlertPolicyFailed - Failed to get Threat Detection settings" + }, + "201": { + "description": "Successfully created the database security alert policy.", + "schema": { + "$ref": "#/definitions/DatabaseSecurityAlertPolicy" + } + } + }, + "x-ms-examples": { + "Update a database's threat detection policy with minimal parameters": { + "$ref": "./examples/DatabaseSecurityAlertCreateMin.json" + }, + "Update a database's threat detection policy with all parameters": { + "$ref": "./examples/DatabaseSecurityAlertCreateMax.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/securityAlertPolicies": { + "get": { + "tags": [ + "DatabaseSecurityAlertPolicies" + ], + "description": "Gets a list of database's security alert policies.", + "operationId": "DatabaseSecurityAlertPolicies_ListByDatabase", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "required": true, + "type": "string" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the database for which the security alert policy is defined.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the database security alert policy.", + "schema": { + "$ref": "#/definitions/DatabaseSecurityAlertListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 400 SecurityAlertPoliciesInsufficientStorageAccountPermissions - Insufficient read or write permissions on the provided storage account.\n\n * 400 SecurityAlertPoliciesStorageAccountIsDisabled - The storage account provided in the threat detection policy is disabled.\n\n * 400 SecurityAlertPoliciesInsufficientDiskSpace - Insufficient disk space to save security alert policy metadata in the database\n\n * 400 SecurityAlertPoliciesInvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 SecurityAlertPoliciesInvalidStorageAccountCredentials - The provided storage account access key is not valid.\n\n * 400 InvalidDatabaseSecurityAlertPolicyCreateRequest - The create database Threat Detection security alert policy request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 UpsertDatabaseSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 400 UpsertDatabaseSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 UpsertDatabaseSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 409 DatabaseSecurityAlertPolicyInProgress - Set database security alert policy is already in progress\n\n * 409 UpsertDatabaseSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later.\n\n * 500 UpsertDatabaseSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 500 GetDatabaseSecurityAlertPolicyFailed - Failed to get Threat Detection settings" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get the database's threat detection policies": { + "$ref": "./examples/DatabaseSecurityAlertListByDatabase.json" + } + } + } + } + }, + "definitions": { + "SecurityAlertsPolicyProperties": { + "description": "Properties of a security alert policy.", + "required": [ + "state" + ], + "type": "object", + "properties": { + "state": { + "description": "Specifies the state of the policy, whether it is enabled or disabled or a policy has not been applied yet on the specific database.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "SecurityAlertsPolicyState", + "modelAsString": false + } + }, + "disabledAlerts": { + "description": "Specifies an array of alerts that are disabled. Allowed values are: Sql_Injection, Sql_Injection_Vulnerability, Access_Anomaly, Data_Exfiltration, Unsafe_Action, Brute_Force", + "type": "array", + "items": { + "type": "string" + } + }, + "emailAddresses": { + "description": "Specifies an array of e-mail addresses to which the alert is sent.", + "type": "array", + "items": { + "type": "string" + } + }, + "emailAccountAdmins": { + "description": "Specifies that the alert is sent to the account administrators.", + "type": "boolean" + }, + "storageEndpoint": { + "description": "Specifies the blob storage endpoint (e.g. https://MyAccount.blob.core.windows.net). This blob storage will hold all Threat Detection audit logs.", + "type": "string" + }, + "storageAccountAccessKey": { + "description": "Specifies the identifier key of the Threat Detection audit storage account.", + "type": "string" + }, + "retentionDays": { + "format": "int32", + "description": "Specifies the number of days to keep in the Threat Detection audit logs.", + "type": "integer" + }, + "creationTime": { + "format": "date-time", + "description": "Specifies the UTC creation time of the policy.", + "type": "string", + "readOnly": true + } + } + }, + "DatabaseSecurityAlertPolicy": { + "description": "A database security alert policy.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "systemData": { + "$ref": "../../../common/v1/types.json#/definitions/systemData", + "description": "SystemData of SecurityAlertPolicyResource.", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/SecurityAlertsPolicyProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "DatabaseSecurityAlertListResult": { + "description": "A list of the database's security alert policies.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/DatabaseSecurityAlertPolicy" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": {}, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/DatabaseTables.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/DatabaseTables.json new file mode 100644 index 000000000000..7e6f02df3614 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/DatabaseTables.json @@ -0,0 +1,225 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/schemas/{schemaName}/tables": { + "get": { + "tags": [ + "DatabaseTables" + ], + "description": "List database tables", + "operationId": "DatabaseTables_ListBySchema", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "schemaName", + "in": "path", + "description": "The name of the schema.", + "required": true, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "An OData filter expression that filters elements in the collection.", + "required": false, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved database tables.", + "schema": { + "$ref": "#/definitions/DatabaseTableListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 ResourceDoesNotExist - Resource with the name '{0}' does not exist. To continue, specify a valid resource name.\n\n * 404 InvalidDatabaseSchema - Schema is missing in database.\n\n * 404 InvalidDatabaseTable - Table is missing in database.\n\n * 404 InvalidDatabaseColumn - Column is missing in table.\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable." + } + }, + "x-ms-odata": "#/definitions/DatabaseTable", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List database tables": { + "$ref": "./examples/DatabaseTableListBySchema.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/schemas/{schemaName}/tables/{tableName}": { + "get": { + "tags": [ + "DatabaseTables" + ], + "description": "Get database table", + "operationId": "DatabaseTables_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "schemaName", + "in": "path", + "description": "The name of the schema.", + "required": true, + "type": "string" + }, + { + "name": "tableName", + "in": "path", + "description": "The name of the table.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved database table.", + "schema": { + "$ref": "#/definitions/DatabaseTable" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 ResourceDoesNotExist - Resource with the name '{0}' does not exist. To continue, specify a valid resource name.\n\n * 404 InvalidDatabaseSchema - Schema is missing in database.\n\n * 404 InvalidDatabaseTable - Table is missing in database.\n\n * 404 InvalidDatabaseColumn - Column is missing in table.\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable." + } + }, + "x-ms-examples": { + "Get database table": { + "$ref": "./examples/DatabaseTableGet.json" + } + } + } + } + }, + "definitions": { + "DatabaseTableProperties": { + "description": "Database table properties.", + "type": "object", + "properties": { + "temporalType": { + "description": "The table temporal type.", + "enum": [ + "NonTemporalTable", + "HistoryTable", + "SystemVersionedTemporalTable" + ], + "type": "string", + "x-ms-enum": { + "name": "TableTemporalType", + "modelAsString": true + } + }, + "memoryOptimized": { + "description": "Whether or not the table is memory optimized.", + "type": "boolean" + } + } + }, + "DatabaseTable": { + "description": "A database table resource.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/DatabaseTableProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "DatabaseTableListResult": { + "description": "A list of database tables.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/DatabaseTable" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/DatabaseUsages.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/DatabaseUsages.json new file mode 100644 index 000000000000..dee0a720138c --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/DatabaseUsages.json @@ -0,0 +1,159 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/usages": { + "get": { + "tags": [ + "DatabaseUsages" + ], + "description": "Gets database usages.", + "operationId": "DatabaseUsages_ListByDatabase", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the database usages.", + "schema": { + "$ref": "#/definitions/DatabaseUsageListResult" + } + }, + "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 InvalidDatabaseCreateMode - Invalid request to create a database.\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 InvalidBackupStorageAccountType - User passed zrs/lrs during create/update of a database but it failed either because the customer is not whitelisted or because zrs is not available in the specified region.\n\n * 400 CannotUpdateToFreeDatabase - Updating a database to the free sku is not supported.\n\n * 400 DatabaseInvalidSkuPropertyCombination - The properties of the requested sku are inconsistent. Please check that a valid combination is specified. See https://docs.microsoft.com/en-us/rest/api/sql/capabilities/listbylocation#serviceobjectivecapability for more details.\n\n * 400 DatabaseNamedReplicaPerDatabaseLimitExceeded - User tried create a named replica that would exceed the allowed number per primary database\n\n * 400 DatabaseIsCurrentlyPinned - Microsoft has pinned your database SQL Server engine version. To ensure your database does not hit production issues, any future scale operations on your database will be blocked until it has been un-pinned. Please contact Microsoft support for assistance with scaling.\n\n * 400 RestoreTargetEditionSizeInsufficient - User attempted to restore a database to an edition that is a smaller size than the current allocated size of the source.\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 DatabaseCreationBlockedForNonActivatedCMKServer - SQL Pool creations are blocked for CMK enabled workspaces until the workspace is activated. First, enable purge protection and grant the workspace Managed Identity the required permissions (Get, Wrap Key, Unwrap Key) on the Azure Key Vault of the workspace key. Next, activate your workspace after you have granted access.\n\n * 400 PartnerServerNotCompatible - 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 TargetElasticPoolDoesNotExist - The elastic pool does not exist on a 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 ElasticPoolNameRequired - User tried to create or update database to elastic pool service objective without specifying the name of the elastic pool.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\n\n * 400 TierChangeUnsupportedDueToCDCEnabledDatabase - The database cannot update its sku because it is enabled for CDC.\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 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 400 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 400 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 400 InvalidMaxSizeTierCombination - The specified tier does not support the specified database max size.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 400 InvalidReadScaleEdition - User attempted to enable read scale on a database type that does not support it.\n\n * 400 InvalidReadScaleUnits - User attempted to provide a read scale value that is not supported.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\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 GeoSecondaryMaxSizeUpdateFailed - The geo-secondary database is of a SLO that does not support the requested maxsize value or the geo-secondary is in an unsupported region or an update operation is already in progress on the geo-secondary database.\n\n * 400 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 400 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 400 InvalidTier - The user specified an invalid tier.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\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 RequestedDatabaseSizeRequiresShrink - User attempted to ALTER DATABASE MODIFY MAXSIZE to modify the MAXSIZE for a database to a smaller size then the current size.\n\n * 400 CurrentDatabaseSizeExceedsDbMaxSize - User attempted to reduce the max size for a database to a size smaller than the current usage.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 SourceDatabaseEditionCouldNotBeUpgraded - The source database cannot have higher edition than the target database.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 TargetDatabaseEditionCouldNotBeDowngraded - The target database cannot have lower edition than the source database.\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currently in progress.\n\n * 400 InvalidCollation - Collation is not recognized by the server.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 PartnerDBNotCompatibleForSGXEnclave - Attempt to set GeoDR link or update SLO for enclave enabled database is only supported when both database are running on DC-series hardware.\n\n * 400 UpdateNotAllowedInCurrentReplicationState - The operation is disallowed on the database in its current replication state.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 GeoReplicaLimitReached - The per-replica replication limit was reached.\n\n * 400 UnsupportedCapacity - User tried to create or update database with capacity which is not supported.\n\n * 400 ReplicationSourceAndTargetMustHaveSameName - The replication source and target databases must have the same name.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 ReplicationSourceAndTargetMustBeInDifferentServers - The replication source and target databases must be in different logical servers.\n\n * 400 CannotUpdateIsLedgerDatabase - The ledger property of an existing database cannot be updated.\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 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 400 RestoreToFreeEditionNotSupported - Restore and GeoRestore target cannot be free database.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 400 RestoreNotSupportedForFreeEdition - Restore and GeoRestore are not supported for free database.\n\n * 400 JobAgentDatabaseEditionUnsupported - The specified database's service level objective is not supported for use as a job agent database.\n\n * 400 InvalidDroppedDatabase - Source database dropped does not exist on server within the supported recovery period.\n\n * 400 InvalidLiveDatabase - Source database does not exist on server within the supported recovery period. If restoring a dropped database, please specify its deletion date.\n\n * 400 InvalidVldbRecoverySlo - The Hyperscale edition recovery requires both source and target databases to use Hyperscale service level objective.\n\n * 400 SourceDatabaseNotFound - The source database does not exist.\n\n * 400 InvalidVldbRestoreSlo - The Hyperscale edition Point-In-Time restore requires both source and target databases to use Hyperscale service level objective.\n\n * 400 CannotSpecifyPoolOrSlo - Specifying an elastic pool and/or changing the service level objective or edition is not supported for edition.\n\n * 400 InvalidPublicMaintenanceConfiguration - User tried to specify public maintenance configuration which cannot be converted to internal id (malformed or wrong region).\n\n * 400 ChangeUnsupportedOnEntity - User attempted an unsupported create/update/delete operation on a given entity.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 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 * 405 UnsupportedReplicationOperation - An unsupported replication operation was initiated on the database.\n\n * 409 FreeDbAlreadyExists - Only one free database can exist for a subscription per region.\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 ConflictRequestToUpdateBackupRedundancy - A conflict request to change backup storage redundancy is still in progress.\n\n * 409 SkuAssignmentInProgress - The current assignment request cannot be processed because a previous request has not completed.\n\n * 409 DatabaseElasticPoolMaintenanceConflict - User tried to create or update a database with a specified maintenance configuration that conflicted with that of the elastic pool of the database.\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 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 UpdateSloFailedDatabaseTooBusy - Update SLO operation could not complete because database was too busy.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 ServerDisabled - Server is disabled.\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 TargetElasticPoolBeingUpdated - The update of elastic pool cannot be started because there is copy operation in progress for one of the databases in this elastic pool\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 DatabaseCopyLimitPerReplicaReached - User reached the limit of concurrent database copies.\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 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 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets database usages.": { + "$ref": "./examples/GetDatabaseUsages.json" + } + } + } + } + }, + "definitions": { + "DatabaseUsageListResult": { + "description": "A list of database usage metrics.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/DatabaseUsage" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "DatabaseUsageProperties": { + "description": "Properties of a database usage.", + "type": "object", + "properties": { + "displayName": { + "description": "User-readable name of the metric.", + "type": "string", + "readOnly": true + }, + "currentValue": { + "format": "double", + "description": "Current value of the metric.", + "type": "number", + "readOnly": true + }, + "limit": { + "format": "double", + "description": "Boundary value of the metric.", + "type": "number", + "readOnly": true + }, + "unit": { + "description": "Unit of the metric.", + "type": "string", + "readOnly": true + } + } + }, + "DatabaseUsage": { + "description": "Usage metric of a database.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/DatabaseUsageProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/DatabaseVulnerabilityAssessmentRuleBaselines.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/DatabaseVulnerabilityAssessmentRuleBaselines.json new file mode 100644 index 000000000000..2f87d61f7657 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/DatabaseVulnerabilityAssessmentRuleBaselines.json @@ -0,0 +1,339 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/vulnerabilityAssessments/{vulnerabilityAssessmentName}/rules/{ruleId}/baselines/{baselineName}": { + "get": { + "tags": [ + "DatabaseVulnerabilityAssessmentRuleBaselines" + ], + "description": "Gets a database's vulnerability assessment rule baseline.", + "operationId": "DatabaseVulnerabilityAssessmentRuleBaselines_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the database for which the vulnerability assessment rule baseline is defined.", + "required": true, + "type": "string" + }, + { + "name": "vulnerabilityAssessmentName", + "in": "path", + "description": "The name of the vulnerability assessment.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentName", + "modelAsString": true + } + }, + { + "name": "ruleId", + "in": "path", + "description": "The vulnerability assessment rule ID.", + "required": true, + "type": "string" + }, + { + "name": "baselineName", + "in": "path", + "description": "The name of the vulnerability assessment rule baseline (default implies a baseline on a database level rule and master for server level rule).", + "required": true, + "type": "string", + "enum": [ + "master", + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentPolicyBaselineName", + "modelAsString": false + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully got the vulnerability assessment rule baseline.", + "schema": { + "$ref": "#/definitions/DatabaseVulnerabilityAssessmentRuleBaseline" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 VulnerabilityAssessmentStorageAuthenticationFailed - Could not authenticate to storage account '{0}' .\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 VulnerabilityAssessmentInvalidStorageAccount - The storage account '{0}' that was defined in the policy is invalid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 VulnerabilityAssessmentRuleDoesNotExists - Rule '{0}' does not exist.\n\n * 404 VulnerabilityAssessmentBaselineDoesNotExists - Baseline does not exist for rule '{0}'\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + } + }, + "x-ms-examples": { + "Gets a database's vulnerability assessment rule baseline.": { + "$ref": "./examples/DatabaseVulnerabilityAssessmentRuleBaselineGet.json" + } + } + }, + "put": { + "tags": [ + "DatabaseVulnerabilityAssessmentRuleBaselines" + ], + "description": "Creates or updates a database's vulnerability assessment rule baseline.", + "operationId": "DatabaseVulnerabilityAssessmentRuleBaselines_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the database for which the vulnerability assessment rule baseline is defined.", + "required": true, + "type": "string" + }, + { + "name": "vulnerabilityAssessmentName", + "in": "path", + "description": "The name of the vulnerability assessment.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentName", + "modelAsString": true + } + }, + { + "name": "ruleId", + "in": "path", + "description": "The vulnerability assessment rule ID.", + "required": true, + "type": "string" + }, + { + "name": "baselineName", + "in": "path", + "description": "The name of the vulnerability assessment rule baseline (default implies a baseline on a database level rule and master for server level rule).", + "required": true, + "type": "string", + "enum": [ + "master", + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentPolicyBaselineName", + "modelAsString": false + } + }, + { + "name": "parameters", + "in": "body", + "description": "The requested rule baseline resource.", + "required": true, + "schema": { + "$ref": "#/definitions/DatabaseVulnerabilityAssessmentRuleBaseline" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully set the vulnerability assessment rule baseline.", + "schema": { + "$ref": "#/definitions/DatabaseVulnerabilityAssessmentRuleBaseline" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 VulnerabilityAssessmentStorageAuthenticationFailed - Could not authenticate to storage account '{0}' .\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 VulnerabilityAssessmentInvalidStorageAccount - The storage account '{0}' that was defined in the policy is invalid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 VulnerabilityAssessmentRuleDoesNotExists - Rule '{0}' does not exist.\n\n * 404 VulnerabilityAssessmentBaselineDoesNotExists - Baseline does not exist for rule '{0}'\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + } + }, + "x-ms-examples": { + "Creates or updates a database's vulnerability assessment rule baseline.": { + "$ref": "./examples/DatabaseVulnerabilityAssessmentRuleBaselineCreate.json" + } + } + }, + "delete": { + "tags": [ + "DatabaseVulnerabilityAssessmentRuleBaselines" + ], + "description": "Removes the database's vulnerability assessment rule baseline.", + "operationId": "DatabaseVulnerabilityAssessmentRuleBaselines_Delete", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the database for which the vulnerability assessment rule baseline is defined.", + "required": true, + "type": "string" + }, + { + "name": "vulnerabilityAssessmentName", + "in": "path", + "description": "The name of the vulnerability assessment.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentName", + "modelAsString": true + } + }, + { + "name": "ruleId", + "in": "path", + "description": "The vulnerability assessment rule ID.", + "required": true, + "type": "string" + }, + { + "name": "baselineName", + "in": "path", + "description": "The name of the vulnerability assessment rule baseline (default implies a baseline on a database level rule and master for server level rule).", + "required": true, + "type": "string", + "enum": [ + "master", + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentPolicyBaselineName", + "modelAsString": false + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully removed the database vulnerability assessment rule baseline." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 VulnerabilityAssessmentStorageAuthenticationFailed - Could not authenticate to storage account '{0}' .\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 VulnerabilityAssessmentInvalidStorageAccount - The storage account '{0}' that was defined in the policy is invalid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 VulnerabilityAssessmentRuleDoesNotExists - Rule '{0}' does not exist.\n\n * 404 VulnerabilityAssessmentBaselineDoesNotExists - Baseline does not exist for rule '{0}'\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + } + }, + "x-ms-examples": { + "Removes a database's vulnerability assessment rule baseline.": { + "$ref": "./examples/DatabaseVulnerabilityAssessmentRuleBaselineDelete.json" + } + } + } + } + }, + "definitions": { + "DatabaseVulnerabilityAssessmentRuleBaselineProperties": { + "description": "Properties of a database Vulnerability Assessment rule baseline.", + "required": [ + "baselineResults" + ], + "type": "object", + "properties": { + "baselineResults": { + "description": "The rule baseline result", + "type": "array", + "items": { + "$ref": "#/definitions/DatabaseVulnerabilityAssessmentRuleBaselineItem" + } + } + } + }, + "DatabaseVulnerabilityAssessmentRuleBaselineItem": { + "description": "Properties for an Azure SQL Database Vulnerability Assessment rule baseline's result.", + "required": [ + "result" + ], + "type": "object", + "properties": { + "result": { + "description": "The rule baseline result", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "DatabaseVulnerabilityAssessmentRuleBaseline": { + "description": "A database vulnerability assessment rule baseline.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/DatabaseVulnerabilityAssessmentRuleBaselineProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/DatabaseVulnerabilityAssessmentScans.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/DatabaseVulnerabilityAssessmentScans.json new file mode 100644 index 000000000000..20b3cc6bba80 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/DatabaseVulnerabilityAssessmentScans.json @@ -0,0 +1,458 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/vulnerabilityAssessments/{vulnerabilityAssessmentName}/scans/{scanId}/initiateScan": { + "post": { + "tags": [ + "DatabaseVulnerabilityAssessmentScans" + ], + "description": "Executes a Vulnerability Assessment database scan.", + "operationId": "DatabaseVulnerabilityAssessmentScans_InitiateScan", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "vulnerabilityAssessmentName", + "in": "path", + "description": "The name of the vulnerability assessment.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentName", + "modelAsString": true + } + }, + { + "name": "scanId", + "in": "path", + "description": "The vulnerability assessment scan Id of the scan to retrieve.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully executed a Vulnerability Assessment database scan." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 InvalidVulnerabilityAssessmentScanIdLength - The vulnerability assessment scan ID length must be below {0} characters.\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 409 DatabaseVulnerabilityAssessmentScanIsAlreadyInProgress - Vulnerability Assessment scan is already in progress.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + }, + "202": { + "description": "Successfully started a Vulnerability Assessment database scan." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Executes a database's vulnerability assessment scan.": { + "$ref": "./examples/DatabaseVulnerabilityAssessmentScansExecute.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/vulnerabilityAssessments/{vulnerabilityAssessmentName}/scans": { + "get": { + "tags": [ + "DatabaseVulnerabilityAssessmentScans" + ], + "description": "Lists the vulnerability assessment scans of a database.", + "operationId": "DatabaseVulnerabilityAssessmentScans_ListByDatabase", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "vulnerabilityAssessmentName", + "in": "path", + "description": "The name of the vulnerability assessment.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentName", + "modelAsString": true + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the database vulnerability assessment scan records.", + "schema": { + "$ref": "#/definitions/VulnerabilityAssessmentScanRecordListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 409 DatabaseVulnerabilityAssessmentScanIsAlreadyInProgress - Vulnerability Assessment scan is already in progress.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the list of a database vulnerability assessment scan records": { + "$ref": "./examples/DatabaseVulnerabilityAssessmentScanRecordsListByDatabase.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/vulnerabilityAssessments/{vulnerabilityAssessmentName}/scans/{scanId}": { + "get": { + "tags": [ + "DatabaseVulnerabilityAssessmentScans" + ], + "description": "Gets a vulnerability assessment scan record of a database.", + "operationId": "DatabaseVulnerabilityAssessmentScans_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "vulnerabilityAssessmentName", + "in": "path", + "description": "The name of the vulnerability assessment.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentName", + "modelAsString": true + } + }, + { + "name": "scanId", + "in": "path", + "description": "The vulnerability assessment scan Id of the scan to retrieve.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the database vulnerability assessment scan record.", + "schema": { + "$ref": "#/definitions/VulnerabilityAssessmentScanRecord" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 409 DatabaseVulnerabilityAssessmentScanIsAlreadyInProgress - Vulnerability Assessment scan is already in progress.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + } + }, + "x-ms-examples": { + "Gets a database vulnerability assessment scan record by scan ID": { + "$ref": "./examples/DatabaseVulnerabilityAssessmentScanRecordsGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/vulnerabilityAssessments/{vulnerabilityAssessmentName}/scans/{scanId}/export": { + "post": { + "tags": [ + "DatabaseVulnerabilityAssessmentScans" + ], + "description": "Convert an existing scan result to a human readable format. If already exists nothing happens", + "operationId": "DatabaseVulnerabilityAssessmentScans_Export", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the scanned database.", + "required": true, + "type": "string" + }, + { + "name": "vulnerabilityAssessmentName", + "in": "path", + "description": "The name of the vulnerability assessment.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentName", + "modelAsString": true + } + }, + { + "name": "scanId", + "in": "path", + "description": "The vulnerability assessment scan Id.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Scan result was converted successfully.", + "schema": { + "$ref": "#/definitions/DatabaseVulnerabilityAssessmentScansExport" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 409 DatabaseVulnerabilityAssessmentScanIsAlreadyInProgress - Vulnerability Assessment scan is already in progress.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + }, + "201": { + "description": "Scan result was converted successfully.", + "schema": { + "$ref": "#/definitions/DatabaseVulnerabilityAssessmentScansExport" + } + } + }, + "x-ms-examples": { + "Export a database's vulnerability assessment scan results.": { + "$ref": "./examples/DatabaseVulnerabilityAssessmentScanExport.json" + } + } + } + } + }, + "definitions": { + "VulnerabilityAssessmentScanRecordListResult": { + "description": "A list of vulnerability assessment scan records.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/VulnerabilityAssessmentScanRecord" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "VulnerabilityAssessmentScanRecordProperties": { + "description": "Properties of a vulnerability assessment scan record.", + "type": "object", + "properties": { + "scanId": { + "description": "The scan ID.", + "type": "string", + "readOnly": true + }, + "triggerType": { + "description": "The scan trigger type.", + "enum": [ + "OnDemand", + "Recurring" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "VulnerabilityAssessmentScanTriggerType", + "modelAsString": true + } + }, + "state": { + "description": "The scan status.", + "enum": [ + "Passed", + "Failed", + "FailedToRun", + "InProgress" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "VulnerabilityAssessmentScanState", + "modelAsString": true + } + }, + "startTime": { + "format": "date-time", + "description": "The scan start time (UTC).", + "type": "string", + "readOnly": true + }, + "endTime": { + "format": "date-time", + "description": "The scan end time (UTC).", + "type": "string", + "readOnly": true + }, + "errors": { + "description": "The scan errors.", + "type": "array", + "items": { + "$ref": "#/definitions/VulnerabilityAssessmentScanError" + }, + "readOnly": true + }, + "storageContainerPath": { + "description": "The scan results storage container path.", + "type": "string", + "readOnly": true + }, + "numberOfFailedSecurityChecks": { + "format": "int32", + "description": "The number of failed security checks.", + "type": "integer", + "readOnly": true + } + } + }, + "VulnerabilityAssessmentScanError": { + "description": "Properties of a vulnerability assessment scan error.", + "type": "object", + "properties": { + "code": { + "description": "The error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "The error message.", + "type": "string", + "readOnly": true + } + } + }, + "VulnerabilityAssessmentScanRecord": { + "description": "A vulnerability assessment scan record.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/VulnerabilityAssessmentScanRecordProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "DatabaseVulnerabilityAssessmentScanExportProperties": { + "description": "Properties of the export operation's result.", + "type": "object", + "properties": { + "exportedReportLocation": { + "description": "Location of the exported report (e.g. https://myStorage.blob.core.windows.net/VaScans/scans/serverName/databaseName/scan_scanId.xlsx).", + "type": "string", + "readOnly": true + } + } + }, + "DatabaseVulnerabilityAssessmentScansExport": { + "description": "A database Vulnerability Assessment scan export resource.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/DatabaseVulnerabilityAssessmentScanExportProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/DatabaseVulnerabilityAssessments.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/DatabaseVulnerabilityAssessments.json new file mode 100644 index 000000000000..e582015d7b01 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/DatabaseVulnerabilityAssessments.json @@ -0,0 +1,377 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/vulnerabilityAssessments/{vulnerabilityAssessmentName}": { + "get": { + "tags": [ + "DatabaseVulnerabilityAssessments" + ], + "description": "Gets the database's vulnerability assessment.", + "operationId": "DatabaseVulnerabilityAssessments_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the database for which the vulnerability assessment is defined.", + "required": true, + "type": "string" + }, + { + "name": "vulnerabilityAssessmentName", + "in": "path", + "description": "The name of the vulnerability assessment.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentName", + "modelAsString": true + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the database vulnerability assessment.", + "schema": { + "$ref": "#/definitions/DatabaseVulnerabilityAssessment" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentUnsupportedStorageAccount - The provided storage account is unsupported.\n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 400 VulnerabilityAssessmentInsufficientStorageAccountPermissions - Insufficient permissions on the provided storage account.\n\n * 400 VulnerabilityAssessmentStorageAccountIsDisabled - The provided storage account is disabled.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + } + }, + "x-ms-examples": { + "Get a database's vulnerability assessment": { + "$ref": "./examples/DatabaseVulnerabilityAssessmentGet.json" + } + } + }, + "put": { + "tags": [ + "DatabaseVulnerabilityAssessments" + ], + "description": "Creates or updates the database's vulnerability assessment.", + "operationId": "DatabaseVulnerabilityAssessments_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the database for which the vulnerability assessment is defined.", + "required": true, + "type": "string" + }, + { + "name": "vulnerabilityAssessmentName", + "in": "path", + "description": "The name of the vulnerability assessment.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentName", + "modelAsString": true + } + }, + { + "name": "parameters", + "in": "body", + "description": "The requested resource.", + "required": true, + "schema": { + "$ref": "#/definitions/DatabaseVulnerabilityAssessment" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully set the vulnerability assessment.", + "schema": { + "$ref": "#/definitions/DatabaseVulnerabilityAssessment" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentUnsupportedStorageAccount - The provided storage account is unsupported.\n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 400 VulnerabilityAssessmentInsufficientStorageAccountPermissions - Insufficient permissions on the provided storage account.\n\n * 400 VulnerabilityAssessmentStorageAccountIsDisabled - The provided storage account is disabled.\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + }, + "201": { + "description": "Successfully created the vulnerability assessment.", + "schema": { + "$ref": "#/definitions/DatabaseVulnerabilityAssessment" + } + } + }, + "x-ms-examples": { + "Create a database's vulnerability assessment with minimal parameters, when storageContainerSasKey is specified": { + "$ref": "./examples/DatabaseVulnerabilityAssessmentCreateContainerSasKeyMin.json" + }, + "Create a database's vulnerability assessment with minimal parameters, when storageAccountAccessKey is specified": { + "$ref": "./examples/DatabaseVulnerabilityAssessmentCreateStorageAccessKeyMin.json" + }, + "Create a database's vulnerability assessment with all parameters": { + "$ref": "./examples/DatabaseVulnerabilityAssessmentCreateMax.json" + } + } + }, + "delete": { + "tags": [ + "DatabaseVulnerabilityAssessments" + ], + "description": "Removes the database's vulnerability assessment.", + "operationId": "DatabaseVulnerabilityAssessments_Delete", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the database for which the vulnerability assessment is defined.", + "required": true, + "type": "string" + }, + { + "name": "vulnerabilityAssessmentName", + "in": "path", + "description": "The name of the vulnerability assessment.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentName", + "modelAsString": true + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully removed the database vulnerability assessment." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentUnsupportedStorageAccount - The provided storage account is unsupported.\n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 400 VulnerabilityAssessmentInsufficientStorageAccountPermissions - Insufficient permissions on the provided storage account.\n\n * 400 VulnerabilityAssessmentStorageAccountIsDisabled - The provided storage account is disabled.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + } + }, + "x-ms-examples": { + "Remove a database's vulnerability assessment": { + "$ref": "./examples/DatabaseVulnerabilityAssessmentDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/vulnerabilityAssessments": { + "get": { + "tags": [ + "DatabaseVulnerabilityAssessments" + ], + "description": "Lists the vulnerability assessment policies associated with a database.", + "operationId": "DatabaseVulnerabilityAssessments_ListByDatabase", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the database for which the vulnerability assessment policies are defined.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the database vulnerability assessment policies.", + "schema": { + "$ref": "#/definitions/DatabaseVulnerabilityAssessmentListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 409 DatabaseVulnerabilityAssessmentScanIsAlreadyInProgress - Vulnerability Assessment scan is already in progress.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get the database's vulnerability assessment policies": { + "$ref": "./examples/DatabaseVulnerabilityAssessmentListByDatabase.json" + } + } + } + } + }, + "definitions": { + "DatabaseVulnerabilityAssessmentProperties": { + "description": "Properties of a database Vulnerability Assessment.", + "type": "object", + "properties": { + "storageContainerPath": { + "description": "A blob storage container path to hold the scan results (e.g. https://myStorage.blob.core.windows.net/VaScans/). It is required if server level vulnerability assessment policy doesn't set", + "type": "string", + "x-ms-mutability": [ + "create", + "update" + ] + }, + "storageContainerSasKey": { + "description": "A shared access signature (SAS Key) that has write access to the blob container specified in 'storageContainerPath' parameter. If 'storageAccountAccessKey' isn't specified, StorageContainerSasKey is required.", + "type": "string", + "x-ms-mutability": [ + "create", + "update" + ] + }, + "storageAccountAccessKey": { + "description": "Specifies the identifier key of the storage account for vulnerability assessment scan results. If 'StorageContainerSasKey' isn't specified, storageAccountAccessKey is required.", + "type": "string", + "x-ms-mutability": [ + "create", + "update" + ] + }, + "recurringScans": { + "$ref": "#/definitions/VulnerabilityAssessmentRecurringScansProperties", + "description": "The recurring scans settings" + } + } + }, + "VulnerabilityAssessmentRecurringScansProperties": { + "description": "Properties of a Vulnerability Assessment recurring scans.", + "type": "object", + "properties": { + "isEnabled": { + "description": "Recurring scans state.", + "type": "boolean" + }, + "emailSubscriptionAdmins": { + "description": "Specifies that the schedule scan notification will be is sent to the subscription administrators.", + "default": true, + "type": "boolean" + }, + "emails": { + "description": "Specifies an array of e-mail addresses to which the scan notification is sent.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "DatabaseVulnerabilityAssessment": { + "description": "A database vulnerability assessment.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/DatabaseVulnerabilityAssessmentProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "DatabaseVulnerabilityAssessmentListResult": { + "description": "A list of the database's vulnerability assessments.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/DatabaseVulnerabilityAssessment" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/Databases.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/Databases.json new file mode 100644 index 000000000000..c2f90589d73d --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/Databases.json @@ -0,0 +1,1466 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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": { + "get": { + "tags": [ + "Databases" + ], + "description": "Gets a list of databases.", + "operationId": "Databases_ListByServer", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "$skipToken", + "in": "query", + "required": false, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of databases.", + "schema": { + "$ref": "#/definitions/DatabaseListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets a list of databases.": { + "$ref": "./examples/ListVCoreDatabasesByServer.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}": { + "get": { + "tags": [ + "Databases" + ], + "description": "Gets a database.", + "operationId": "Databases_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the specified database.", + "schema": { + "$ref": "#/definitions/Database" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-examples": { + "Gets a database.": { + "$ref": "./examples/GetVCoreDatabase.json" + } + } + }, + "put": { + "tags": [ + "Databases" + ], + "description": "Creates a new database or updates an existing database.", + "operationId": "Databases_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "parameters", + "in": "body", + "description": "The requested database resource state.", + "required": true, + "schema": { + "$ref": "#/definitions/Database" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the database.", + "schema": { + "$ref": "#/definitions/Database" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidDatabaseCreateOrUpdateRequest - The request body for the create or update database operation is invalid.\n\n * 400 InvalidResourceId - Invalid resource identifier.\n\n * 400 InvalidSourceDatabaseId - Invalid source database identifier.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 MissingCollation - Collation is required.\n\n * 400 MissingMaxSizeBytes - MaxSizeBytes is required.\n\n * 400 MissingSkuName - Sku name is required.\n\n * 400 MissingSourceDatabaseId - Missing source database identifier.\n\n * 400 InvalidLicenseType - The specified license type is invalid.\n\n * 400 InvalidSkuName - Invalid SKU name.\n\n * 400 MismatchedSkuNameAndCapacity - Mismatch between SKU name and capacity.\n\n * 400 MismatchedSkuNameAndTier - Mismatch between SKU name and tier.\n\n * 400 MismatchedSkuNameAndFamily - Mismatch between SKU name and family.\n\n * 400 LedgerNotAllowedWithSpecifiedCreateMode - IsLedgerOn is not allowed with the specified create mode.\n\n * 400 DatabaseNameDoesNotMatchSourceDatabaseId - The database name specified doesn’t match the database name in sourceDatabaseId.\n\n * 400 ElasticPoolNotSupportedForExternalBackupRestore - Elastic pool is not supported for external backup restore\n\n * 400 InvalidRecoverableDatabaseId - Invalid recoverable database identifier.\n\n * 400 InvalidRecoveryServicesRecoveryPointId - Invalid recovery services recovery point identifier.\n\n * 400 InvalidRestorableDroppedDatabaseDeletionDate - The restorable dropped database deletion date given is invalid\n\n * 400 InvalidRestorableDroppedDatabaseId - Invalid restorable dropped database identifier\n\n * 400 MissingRecoverableDatabaseId - Missing recoverable database identifier.\n\n * 400 MissingRecoveryServicesRecoveryPointId - Missing recovery services recovery point Id.\n\n * 400 MissingRestorableDroppedDatabaseId - Missing restorableDroppedDatabaseId\n\n * 400 MissingRestorePointInTime - Missing restore point in time\n\n * 400 MissingSourceDatabaseDeletionDate - Missing source database deletion date\n\n * 400 MissingStorageContainerSasToken - Missing storage container SAS token\n\n * 400 MissingStorageContainerUri - Missing storage container URI\n\n * 400 RestorableDroppedDatabaseIdGivenForRestoreWithSourceDatabaseId - Cannot specify restorableDroppedDatabaseId when sourceDatabaseId is already given in restore create mode\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 InvalidDatabaseCreateMode - Invalid request to create a database.\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 InvalidBackupStorageAccountType - User passed zrs/lrs during create/update of a database but it failed either because the customer is not whitelisted or because zrs is not available in the specified region.\n\n * 400 CannotUpdateToFreeDatabase - Updating a database to the free sku is not supported.\n\n * 400 DatabaseInvalidSkuPropertyCombination - The properties of the requested sku are inconsistent. Please check that a valid combination is specified. See https://docs.microsoft.com/en-us/rest/api/sql/capabilities/listbylocation#serviceobjectivecapability for more details.\n\n * 400 DatabaseNamedReplicaPerDatabaseLimitExceeded - User tried create a named replica that would exceed the allowed number per primary database\n\n * 400 DatabaseIsCurrentlyPinned - Microsoft has pinned your database SQL Server engine version. To ensure your database does not hit production issues, any future scale operations on your database will be blocked until it has been un-pinned. Please contact Microsoft support for assistance with scaling.\n\n * 400 RestoreTargetEditionSizeInsufficient - User attempted to restore a database to an edition that is a smaller size than the current allocated size of the source.\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 DatabaseCreationBlockedForNonActivatedCMKServer - SQL Pool creations are blocked for CMK enabled workspaces until the workspace is activated. First, enable purge protection and grant the workspace Managed Identity the required permissions (Get, Wrap Key, Unwrap Key) on the Azure Key Vault of the workspace key. Next, activate your workspace after you have granted access.\n\n * 400 PartnerServerNotCompatible - 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 TargetElasticPoolDoesNotExist - The elastic pool does not exist on a 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 ElasticPoolNameRequired - User tried to create or update database to elastic pool service objective without specifying the name of the elastic pool.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\n\n * 400 TierChangeUnsupportedDueToCDCEnabledDatabase - The database cannot update its sku because it is enabled for CDC.\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 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 400 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 400 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 400 InvalidMaxSizeTierCombination - The specified tier does not support the specified database max size.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 400 InvalidReadScaleEdition - User attempted to enable read scale on a database type that does not support it.\n\n * 400 InvalidReadScaleUnits - User attempted to provide a read scale value that is not supported.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\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 GeoSecondaryMaxSizeUpdateFailed - The geo-secondary database is of a SLO that does not support the requested maxsize value or the geo-secondary is in an unsupported region or an update operation is already in progress on the geo-secondary database.\n\n * 400 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 400 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 400 InvalidTier - The user specified an invalid tier.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\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 RequestedDatabaseSizeRequiresShrink - User attempted to ALTER DATABASE MODIFY MAXSIZE to modify the MAXSIZE for a database to a smaller size then the current size.\n\n * 400 CurrentDatabaseSizeExceedsDbMaxSize - User attempted to reduce the max size for a database to a size smaller than the current usage.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 SourceDatabaseEditionCouldNotBeUpgraded - The source database cannot have higher edition than the target database.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 TargetDatabaseEditionCouldNotBeDowngraded - The target database cannot have lower edition than the source database.\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currently in progress.\n\n * 400 InvalidCollation - Collation is not recognized by the server.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 PartnerDBNotCompatibleForSGXEnclave - Attempt to set GeoDR link or update SLO for enclave enabled database is only supported when both database are running on DC-series hardware.\n\n * 400 UpdateNotAllowedInCurrentReplicationState - The operation is disallowed on the database in its current replication state.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 GeoReplicaLimitReached - The per-replica replication limit was reached.\n\n * 400 UnsupportedCapacity - User tried to create or update database with capacity which is not supported.\n\n * 400 ReplicationSourceAndTargetMustHaveSameName - The replication source and target databases must have the same name.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 ReplicationSourceAndTargetMustBeInDifferentServers - The replication source and target databases must be in different logical servers.\n\n * 400 CannotUpdateIsLedgerDatabase - The ledger property of an existing database cannot be updated.\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 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 400 RestoreToFreeEditionNotSupported - Restore and GeoRestore target cannot be free database.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 400 RestoreNotSupportedForFreeEdition - Restore and GeoRestore are not supported for free database.\n\n * 400 JobAgentDatabaseEditionUnsupported - The specified database's service level objective is not supported for use as a job agent database.\n\n * 400 InvalidDroppedDatabase - Source database dropped does not exist on server within the supported recovery period.\n\n * 400 InvalidLiveDatabase - Source database does not exist on server within the supported recovery period. If restoring a dropped database, please specify its deletion date.\n\n * 400 InvalidVldbRecoverySlo - The Hyperscale edition recovery requires both source and target databases to use Hyperscale service level objective.\n\n * 400 SourceDatabaseNotFound - The source database does not exist.\n\n * 400 InvalidVldbRestoreSlo - The Hyperscale edition Point-In-Time restore requires both source and target databases to use Hyperscale service level objective.\n\n * 400 CannotSpecifyPoolOrSlo - Specifying an elastic pool and/or changing the service level objective or edition is not supported for edition.\n\n * 400 InvalidPublicMaintenanceConfiguration - User tried to specify public maintenance configuration which cannot be converted to internal id (malformed or wrong region).\n\n * 400 ChangeUnsupportedOnEntity - User attempted an unsupported create/update/delete operation on a given entity.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 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 * 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 FreeDbAlreadyExists - Only one free database can exist for a subscription per region.\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 ConflictRequestToUpdateBackupRedundancy - A conflict request to change backup storage redundancy is still in progress.\n\n * 409 SkuAssignmentInProgress - The current assignment request cannot be processed because a previous request has not completed.\n\n * 409 DatabaseElasticPoolMaintenanceConflict - User tried to create or update a database with a specified maintenance configuration that conflicted with that of the elastic pool of the database.\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 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 UpdateSloFailedDatabaseTooBusy - Update SLO operation could not complete because database was too busy.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 ServerDisabled - Server is disabled.\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 TargetElasticPoolBeingUpdated - The update of elastic pool cannot be started because there is copy operation in progress for one of the databases in this elastic pool\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 DatabaseCopyLimitPerReplicaReached - User reached the limit of concurrent database copies.\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 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + }, + "202": { + "description": "Creating or updating the database is in progress." + }, + "201": { + "description": "Successfully created the database.", + "schema": { + "$ref": "#/definitions/Database" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Creates a database with default mode.": { + "$ref": "./examples/CreateDatabaseDefaultMode.json" + }, + "Creates a VCore database by specifying service objective name.": { + "$ref": "./examples/CreateVCoreDatabaseByServiceObjective.json" + }, + "Creates a VCore database by specifying sku name and capacity.": { + "$ref": "./examples/CreateVCoreDatabaseBySkuNameCapacity.json" + }, + "Creates a database with minimum number of parameters.": { + "$ref": "./examples/CreateDatabaseMin.json" + }, + "Creates a database as a copy.": { + "$ref": "./examples/CreateDatabaseCopyMode.json" + }, + "Creates a database as an on-line secondary.": { + "$ref": "./examples/CreateDatabaseSecondaryMode.json" + }, + "Creates a database as named replica secondary.": { + "$ref": "./examples/CreateDatabaseNamedReplica.json" + }, + "Creates a database from PointInTimeRestore.": { + "$ref": "./examples/CreateDatabasePITRMode.json" + }, + "Creates a database with preferred maintenance window.": { + "$ref": "./examples/CreateDatabaseMaintenanceConfiguration.json" + }, + "Creates a database with specified backup storage redundancy.": { + "$ref": "./examples/CreateDatabaseConfiguredBackupStorageRedundancy.json" + }, + "Creates a database with ledger on.": { + "$ref": "./examples/CreateDatabaseLedger.json" + } + } + }, + "delete": { + "tags": [ + "Databases" + ], + "description": "Deletes the database.", + "operationId": "Databases_Delete", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the database." + }, + "default": { + "description": "*** Error Responses: ***\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 * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\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 * 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 ServerDisabled - Server is disabled.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources." + }, + "202": { + "description": "Deleting the database is in progress." + }, + "204": { + "description": "The specified database does not exist." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Deletes a database.": { + "$ref": "./examples/DeleteDatabase.json" + } + } + }, + "patch": { + "tags": [ + "Databases" + ], + "description": "Updates an existing database.", + "operationId": "Databases_Update", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "parameters", + "in": "body", + "description": "The requested database resource state.", + "required": true, + "schema": { + "$ref": "#/definitions/DatabaseUpdate" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the database.", + "schema": { + "$ref": "#/definitions/Database" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidDatabaseCreateOrUpdateRequest - The request body for the create or update database operation is invalid.\n\n * 400 InvalidResourceId - Invalid resource identifier.\n\n * 400 InvalidSourceDatabaseId - Invalid source database identifier.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 MissingCollation - Collation is required.\n\n * 400 MissingMaxSizeBytes - MaxSizeBytes is required.\n\n * 400 MissingSkuName - Sku name is required.\n\n * 400 MissingSourceDatabaseId - Missing source database identifier.\n\n * 400 InvalidLicenseType - The specified license type is invalid.\n\n * 400 InvalidSkuName - Invalid SKU name.\n\n * 400 MismatchedSkuNameAndCapacity - Mismatch between SKU name and capacity.\n\n * 400 MismatchedSkuNameAndTier - Mismatch between SKU name and tier.\n\n * 400 MismatchedSkuNameAndFamily - Mismatch between SKU name and family.\n\n * 400 LedgerNotAllowedWithSpecifiedCreateMode - IsLedgerOn is not allowed with the specified create mode.\n\n * 400 DatabaseNameDoesNotMatchSourceDatabaseId - The database name specified doesn’t match the database name in sourceDatabaseId.\n\n * 400 ElasticPoolNotSupportedForExternalBackupRestore - Elastic pool is not supported for external backup restore\n\n * 400 InvalidRecoverableDatabaseId - Invalid recoverable database identifier.\n\n * 400 InvalidRecoveryServicesRecoveryPointId - Invalid recovery services recovery point identifier.\n\n * 400 InvalidRestorableDroppedDatabaseDeletionDate - The restorable dropped database deletion date given is invalid\n\n * 400 InvalidRestorableDroppedDatabaseId - Invalid restorable dropped database identifier\n\n * 400 MissingRecoverableDatabaseId - Missing recoverable database identifier.\n\n * 400 MissingRecoveryServicesRecoveryPointId - Missing recovery services recovery point Id.\n\n * 400 MissingRestorableDroppedDatabaseId - Missing restorableDroppedDatabaseId\n\n * 400 MissingRestorePointInTime - Missing restore point in time\n\n * 400 MissingSourceDatabaseDeletionDate - Missing source database deletion date\n\n * 400 MissingStorageContainerSasToken - Missing storage container SAS token\n\n * 400 MissingStorageContainerUri - Missing storage container URI\n\n * 400 RestorableDroppedDatabaseIdGivenForRestoreWithSourceDatabaseId - Cannot specify restorableDroppedDatabaseId when sourceDatabaseId is already given in restore create mode\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 InvalidDatabaseCreateMode - Invalid request to create a database.\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 InvalidBackupStorageAccountType - User passed zrs/lrs during create/update of a database but it failed either because the customer is not whitelisted or because zrs is not available in the specified region.\n\n * 400 CannotUpdateToFreeDatabase - Updating a database to the free sku is not supported.\n\n * 400 DatabaseInvalidSkuPropertyCombination - The properties of the requested sku are inconsistent. Please check that a valid combination is specified. See https://docs.microsoft.com/en-us/rest/api/sql/capabilities/listbylocation#serviceobjectivecapability for more details.\n\n * 400 DatabaseNamedReplicaPerDatabaseLimitExceeded - User tried create a named replica that would exceed the allowed number per primary database\n\n * 400 DatabaseIsCurrentlyPinned - Microsoft has pinned your database SQL Server engine version. To ensure your database does not hit production issues, any future scale operations on your database will be blocked until it has been un-pinned. Please contact Microsoft support for assistance with scaling.\n\n * 400 RestoreTargetEditionSizeInsufficient - User attempted to restore a database to an edition that is a smaller size than the current allocated size of the source.\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 DatabaseCreationBlockedForNonActivatedCMKServer - SQL Pool creations are blocked for CMK enabled workspaces until the workspace is activated. First, enable purge protection and grant the workspace Managed Identity the required permissions (Get, Wrap Key, Unwrap Key) on the Azure Key Vault of the workspace key. Next, activate your workspace after you have granted access.\n\n * 400 PartnerServerNotCompatible - 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 TargetElasticPoolDoesNotExist - The elastic pool does not exist on a 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 ElasticPoolNameRequired - User tried to create or update database to elastic pool service objective without specifying the name of the elastic pool.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\n\n * 400 TierChangeUnsupportedDueToCDCEnabledDatabase - The database cannot update its sku because it is enabled for CDC.\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 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 400 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 400 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 400 InvalidMaxSizeTierCombination - The specified tier does not support the specified database max size.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 400 InvalidReadScaleEdition - User attempted to enable read scale on a database type that does not support it.\n\n * 400 InvalidReadScaleUnits - User attempted to provide a read scale value that is not supported.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\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 GeoSecondaryMaxSizeUpdateFailed - The geo-secondary database is of a SLO that does not support the requested maxsize value or the geo-secondary is in an unsupported region or an update operation is already in progress on the geo-secondary database.\n\n * 400 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 400 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 400 InvalidTier - The user specified an invalid tier.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\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 RequestedDatabaseSizeRequiresShrink - User attempted to ALTER DATABASE MODIFY MAXSIZE to modify the MAXSIZE for a database to a smaller size then the current size.\n\n * 400 CurrentDatabaseSizeExceedsDbMaxSize - User attempted to reduce the max size for a database to a size smaller than the current usage.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 SourceDatabaseEditionCouldNotBeUpgraded - The source database cannot have higher edition than the target database.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 TargetDatabaseEditionCouldNotBeDowngraded - The target database cannot have lower edition than the source database.\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currently in progress.\n\n * 400 InvalidCollation - Collation is not recognized by the server.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 PartnerDBNotCompatibleForSGXEnclave - Attempt to set GeoDR link or update SLO for enclave enabled database is only supported when both database are running on DC-series hardware.\n\n * 400 UpdateNotAllowedInCurrentReplicationState - The operation is disallowed on the database in its current replication state.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 GeoReplicaLimitReached - The per-replica replication limit was reached.\n\n * 400 UnsupportedCapacity - User tried to create or update database with capacity which is not supported.\n\n * 400 ReplicationSourceAndTargetMustHaveSameName - The replication source and target databases must have the same name.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 ReplicationSourceAndTargetMustBeInDifferentServers - The replication source and target databases must be in different logical servers.\n\n * 400 CannotUpdateIsLedgerDatabase - The ledger property of an existing database cannot be updated.\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 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 400 RestoreToFreeEditionNotSupported - Restore and GeoRestore target cannot be free database.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 400 RestoreNotSupportedForFreeEdition - Restore and GeoRestore are not supported for free database.\n\n * 400 JobAgentDatabaseEditionUnsupported - The specified database's service level objective is not supported for use as a job agent database.\n\n * 400 InvalidDroppedDatabase - Source database dropped does not exist on server within the supported recovery period.\n\n * 400 InvalidLiveDatabase - Source database does not exist on server within the supported recovery period. If restoring a dropped database, please specify its deletion date.\n\n * 400 InvalidVldbRecoverySlo - The Hyperscale edition recovery requires both source and target databases to use Hyperscale service level objective.\n\n * 400 SourceDatabaseNotFound - The source database does not exist.\n\n * 400 InvalidVldbRestoreSlo - The Hyperscale edition Point-In-Time restore requires both source and target databases to use Hyperscale service level objective.\n\n * 400 CannotSpecifyPoolOrSlo - Specifying an elastic pool and/or changing the service level objective or edition is not supported for edition.\n\n * 400 InvalidPublicMaintenanceConfiguration - User tried to specify public maintenance configuration which cannot be converted to internal id (malformed or wrong region).\n\n * 400 ChangeUnsupportedOnEntity - User attempted an unsupported create/update/delete operation on a given entity.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 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 * 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 FreeDbAlreadyExists - Only one free database can exist for a subscription per region.\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 ConflictRequestToUpdateBackupRedundancy - A conflict request to change backup storage redundancy is still in progress.\n\n * 409 SkuAssignmentInProgress - The current assignment request cannot be processed because a previous request has not completed.\n\n * 409 DatabaseElasticPoolMaintenanceConflict - User tried to create or update a database with a specified maintenance configuration that conflicted with that of the elastic pool of the database.\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 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 UpdateSloFailedDatabaseTooBusy - Update SLO operation could not complete because database was too busy.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 ServerDisabled - Server is disabled.\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 TargetElasticPoolBeingUpdated - The update of elastic pool cannot be started because there is copy operation in progress for one of the databases in this elastic pool\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 DatabaseCopyLimitPerReplicaReached - User reached the limit of concurrent database copies.\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 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + }, + "202": { + "description": "Updating the database is in progress." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Updates a database.": { + "$ref": "./examples/PatchVCoreDatabase.json" + }, + "Assigns maintenance window to a database.": { + "$ref": "./examples/PatchVCoreDatabaseAssignMaintenanceConfiguration.json" + }, + "Resets maintenance window of a database to default.": { + "$ref": "./examples/PatchVCoreDatabaseResetMaintenanceConfiguration.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/elasticPools/{elasticPoolName}/databases": { + "get": { + "tags": [ + "Databases" + ], + "description": "Gets a list of databases in an elastic pool.", + "operationId": "Databases_ListByElasticPool", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "elasticPoolName", + "in": "path", + "description": "The name of the elastic pool.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved a list of databases in an elastic pool.", + "schema": { + "$ref": "#/definitions/DatabaseListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\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 * 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 * 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": { + "Gets a list of databases in an elastic pool.": { + "$ref": "./examples/ListDatabasesByElasticPool.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/failover": { + "post": { + "tags": [ + "Databases" + ], + "description": "Failovers a database.", + "operationId": "Databases_Failover", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the database to failover.", + "required": true, + "type": "string" + }, + { + "name": "replicaType", + "in": "query", + "description": "The type of replica to be failed over.", + "required": false, + "type": "string", + "enum": [ + "Primary", + "ReadableSecondary" + ], + "x-ms-enum": { + "name": "ReplicaType", + "modelAsString": true + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully completed database failover." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 ManagementServiceFeatureDisabled - User attempted to use a feature which is disabled.\n\n * 400 DatabaseFailoverThrottled - There was a recent failover on the database or pool if database belongs in an elastic pool.\n\n * 400 DatabaseFailoverNotSupportedOnSKU - This type of customer initiated failover is not supported on the given SKU.\n\n * 409 ManagementServiceDatabaseBusy - Database '{0}' is busy with another operation. Please try your operation later.\n\n * 409 DatabaseNotInStateToFailover - The database is currently in a state such that failover cannot be issued." + }, + "202": { + "description": "Database failover is in progress." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Failover an database": { + "$ref": "./examples/FailoverDatabase.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/inaccessibleDatabases": { + "get": { + "tags": [ + "Databases" + ], + "description": "Gets a list of inaccessible databases in a logical server", + "operationId": "Databases_ListInaccessibleByServer", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of inaccessible databases in a logical server", + "schema": { + "$ref": "#/definitions/DatabaseListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets a list of inaccessible databases in a logical server": { + "$ref": "./examples/ListVCoreInaccessibleDatabasesByServer.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/pause": { + "post": { + "tags": [ + "Databases" + ], + "description": "Pauses a database.", + "operationId": "Databases_Pause", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the database to be paused.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully paused the database.", + "schema": { + "$ref": "#/definitions/Database" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 CannotDeactivateWhenDeactivatingInProgress - Deactivation workflow failed because there is a deactivate workflow already running.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 500 ActivateOrDeactivateWorkflowThrottling - Activation or deactivation workflow failed because there are too many concurrent workflows" + }, + "202": { + "description": "Pausing the database is in progress." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Pauses a database.": { + "$ref": "./examples/PauseDatabase.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/resume": { + "post": { + "tags": [ + "Databases" + ], + "description": "Resumes a database.", + "operationId": "Databases_Resume", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the database to be resumed.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully resumed the database.", + "schema": { + "$ref": "#/definitions/Database" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 500 ActivateOrDeactivateWorkflowThrottling - Activation or deactivation workflow failed because there are too many concurrent workflows" + }, + "202": { + "description": "Resuming the database is in progress." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Resumes a database.": { + "$ref": "./examples/ResumeDatabase.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/upgradeDataWarehouse": { + "post": { + "tags": [ + "Databases" + ], + "description": "Upgrades a data warehouse.", + "operationId": "Databases_UpgradeDataWarehouse", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the database to be upgraded.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully upgraded the data warehouse." + }, + "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 InvalidDatabaseCreateMode - Invalid request to create a database.\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 InvalidBackupStorageAccountType - User passed zrs/lrs during create/update of a database but it failed either because the customer is not whitelisted or because zrs is not available in the specified region.\n\n * 400 CannotUpdateToFreeDatabase - Updating a database to the free sku is not supported.\n\n * 400 DatabaseInvalidSkuPropertyCombination - The properties of the requested sku are inconsistent. Please check that a valid combination is specified. See https://docs.microsoft.com/en-us/rest/api/sql/capabilities/listbylocation#serviceobjectivecapability for more details.\n\n * 400 DatabaseNamedReplicaPerDatabaseLimitExceeded - User tried create a named replica that would exceed the allowed number per primary database\n\n * 400 DatabaseIsCurrentlyPinned - Microsoft has pinned your database SQL Server engine version. To ensure your database does not hit production issues, any future scale operations on your database will be blocked until it has been un-pinned. Please contact Microsoft support for assistance with scaling.\n\n * 400 RestoreTargetEditionSizeInsufficient - User attempted to restore a database to an edition that is a smaller size than the current allocated size of the source.\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 DatabaseCreationBlockedForNonActivatedCMKServer - SQL Pool creations are blocked for CMK enabled workspaces until the workspace is activated. First, enable purge protection and grant the workspace Managed Identity the required permissions (Get, Wrap Key, Unwrap Key) on the Azure Key Vault of the workspace key. Next, activate your workspace after you have granted access.\n\n * 400 PartnerServerNotCompatible - 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 TargetElasticPoolDoesNotExist - The elastic pool does not exist on a 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 ElasticPoolNameRequired - User tried to create or update database to elastic pool service objective without specifying the name of the elastic pool.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\n\n * 400 TierChangeUnsupportedDueToCDCEnabledDatabase - The database cannot update its sku because it is enabled for CDC.\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 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 400 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 400 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 400 InvalidMaxSizeTierCombination - The specified tier does not support the specified database max size.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 400 InvalidReadScaleEdition - User attempted to enable read scale on a database type that does not support it.\n\n * 400 InvalidReadScaleUnits - User attempted to provide a read scale value that is not supported.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\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 GeoSecondaryMaxSizeUpdateFailed - The geo-secondary database is of a SLO that does not support the requested maxsize value or the geo-secondary is in an unsupported region or an update operation is already in progress on the geo-secondary database.\n\n * 400 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 400 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 400 InvalidTier - The user specified an invalid tier.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\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 RequestedDatabaseSizeRequiresShrink - User attempted to ALTER DATABASE MODIFY MAXSIZE to modify the MAXSIZE for a database to a smaller size then the current size.\n\n * 400 CurrentDatabaseSizeExceedsDbMaxSize - User attempted to reduce the max size for a database to a size smaller than the current usage.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 SourceDatabaseEditionCouldNotBeUpgraded - The source database cannot have higher edition than the target database.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 TargetDatabaseEditionCouldNotBeDowngraded - The target database cannot have lower edition than the source database.\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currently in progress.\n\n * 400 InvalidCollation - Collation is not recognized by the server.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 PartnerDBNotCompatibleForSGXEnclave - Attempt to set GeoDR link or update SLO for enclave enabled database is only supported when both database are running on DC-series hardware.\n\n * 400 UpdateNotAllowedInCurrentReplicationState - The operation is disallowed on the database in its current replication state.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 GeoReplicaLimitReached - The per-replica replication limit was reached.\n\n * 400 UnsupportedCapacity - User tried to create or update database with capacity which is not supported.\n\n * 400 ReplicationSourceAndTargetMustHaveSameName - The replication source and target databases must have the same name.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 ReplicationSourceAndTargetMustBeInDifferentServers - The replication source and target databases must be in different logical servers.\n\n * 400 CannotUpdateIsLedgerDatabase - The ledger property of an existing database cannot be updated.\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 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 400 RestoreToFreeEditionNotSupported - Restore and GeoRestore target cannot be free database.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 400 RestoreNotSupportedForFreeEdition - Restore and GeoRestore are not supported for free database.\n\n * 400 JobAgentDatabaseEditionUnsupported - The specified database's service level objective is not supported for use as a job agent database.\n\n * 400 InvalidDroppedDatabase - Source database dropped does not exist on server within the supported recovery period.\n\n * 400 InvalidLiveDatabase - Source database does not exist on server within the supported recovery period. If restoring a dropped database, please specify its deletion date.\n\n * 400 InvalidVldbRecoverySlo - The Hyperscale edition recovery requires both source and target databases to use Hyperscale service level objective.\n\n * 400 SourceDatabaseNotFound - The source database does not exist.\n\n * 400 InvalidVldbRestoreSlo - The Hyperscale edition Point-In-Time restore requires both source and target databases to use Hyperscale service level objective.\n\n * 400 CannotSpecifyPoolOrSlo - Specifying an elastic pool and/or changing the service level objective or edition is not supported for edition.\n\n * 400 InvalidPublicMaintenanceConfiguration - User tried to specify public maintenance configuration which cannot be converted to internal id (malformed or wrong region).\n\n * 400 ChangeUnsupportedOnEntity - User attempted an unsupported create/update/delete operation on a given entity.\n\n * 400 UpgradeOnlyAllowedOnDataWarehouseInstances - User attempted to upgrade non-datawarehouse instance.\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 * 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 FreeDbAlreadyExists - Only one free database can exist for a subscription per region.\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 ConflictRequestToUpdateBackupRedundancy - A conflict request to change backup storage redundancy is still in progress.\n\n * 409 SkuAssignmentInProgress - The current assignment request cannot be processed because a previous request has not completed.\n\n * 409 DatabaseElasticPoolMaintenanceConflict - User tried to create or update a database with a specified maintenance configuration that conflicted with that of the elastic pool of the database.\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 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 UpdateSloFailedDatabaseTooBusy - Update SLO operation could not complete because database was too busy.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 ServerDisabled - Server is disabled.\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 TargetElasticPoolBeingUpdated - The update of elastic pool cannot be started because there is copy operation in progress for one of the databases in this elastic pool\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 DatabaseCopyLimitPerReplicaReached - User reached the limit of concurrent database copies.\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 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + }, + "202": { + "description": "Upgrading the data warehouse is in progress." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Upgrades a data warehouse.": { + "$ref": "./examples/UpgradeDataWarehouse.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/move": { + "post": { + "tags": [ + "Databases" + ], + "description": "Renames a database.", + "operationId": "Databases_Rename", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the database to rename.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The resource move definition for renaming this database.", + "required": true, + "schema": { + "$ref": "#/definitions/ResourceMoveDefinition" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully renamed the database." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidResourceMoveRequest - The resource move request is invalid.\n\n * 400 InvalidMoveTargetResourceId - The target resource identifier in move request is invalid.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 DatabaseNameInUse - Database already exists. Choose a different database name.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 CannotMoveOrDropSyncMetadataDatabase - Cannot drop database used as sync metadata database.\n\n * 400 UnsupportedServiceName - The specified name is an invalid name because it contains one or more unsupported unicode characters.\n\n * 400 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 409 InvalidOperationForDatabaseInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship." + } + }, + "x-ms-examples": { + "Renames a database.": { + "$ref": "./examples/RenameDatabase.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/import": { + "post": { + "tags": [ + "Databases" + ], + "description": "Imports a bacpac into a new database.", + "operationId": "Databases_Import", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "parameters", + "in": "body", + "description": "The database import request parameters.", + "required": true, + "schema": { + "$ref": "#/definitions/ImportExistingDatabaseDefinition" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully imported the database.", + "schema": { + "$ref": "#/definitions/ImportExportOperationResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 MissingImportExportInputParameters - Missing ImportExport input parameters.\n\n * 400 PolybaseImportAuthenticationTypeNotSupported - Authentication type parameter is not support for PolybaseImport operation.\n\n * 400 DatabaseExtensionsInvalidOperationMode - Invalid operationMode parameter for database extension.\n\n * 400 DatabaseExtensionsInvalidStorageKeyType - The storage key type must by 'StorageAccessKey'.\n\n * 400 DatabaseExtensionsMissingStorageUri - Storage URI cannot be empty.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 InvalidOperationType - Provide a valid operation type.\n\n * 400 ImportExportJobError - The ImportExport operation has failed.\n\n * 400 BlockedByOutboundFirewall - The outbound firewall rules blocked the request.\n\n * 404 ResourceNotFound - Invalid request specifying a non-existent resource.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ImportExportOperationIdNotFound - The operation Id for import or export cannot be found.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 409 ImportExportOperationInProgress - There is an import or export operation in progress on the database." + }, + "202": { + "description": "Importing the database is in progress." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Imports to an existing empty database.": { + "$ref": "./examples/ImportDatabase.json" + }, + "Imports to an existing empty database, using private link to communicate with SQL server and storage account.": { + "$ref": "./examples/ImportDatabaseWithNetworkIsolation.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/export": { + "post": { + "tags": [ + "Databases" + ], + "description": "Exports a database.", + "operationId": "Databases_Export", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "parameters", + "in": "body", + "description": "The database export request parameters.", + "required": true, + "schema": { + "$ref": "#/definitions/ExportDatabaseDefinition" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully exported the database.", + "schema": { + "$ref": "#/definitions/ImportExportOperationResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 MissingImportExportInputParameters - Missing ImportExport input parameters.\n\n * 400 PolybaseImportAuthenticationTypeNotSupported - Authentication type parameter is not support for PolybaseImport operation.\n\n * 400 DatabaseExtensionsInvalidOperationMode - Invalid operationMode parameter for database extension.\n\n * 400 DatabaseExtensionsInvalidStorageKeyType - The storage key type must by 'StorageAccessKey'.\n\n * 400 DatabaseExtensionsMissingStorageUri - Storage URI cannot be empty.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 InvalidOperationType - Provide a valid operation type.\n\n * 400 ImportExportJobError - The ImportExport operation has failed.\n\n * 400 BlockedByOutboundFirewall - The outbound firewall rules blocked the request.\n\n * 404 ResourceNotFound - Invalid request specifying a non-existent resource.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ImportExportOperationIdNotFound - The operation Id for import or export cannot be found.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 409 ImportExportOperationInProgress - There is an import or export operation in progress on the database." + }, + "202": { + "description": "Exporting the database is in progress." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Exports a database.": { + "$ref": "./examples/ExportDatabase.json" + }, + "Exports a database, using private link to communicate with SQL server and storage account.": { + "$ref": "./examples/ExportDatabaseWithNetworkIsolation.json" + } + } + } + } + }, + "definitions": { + "DatabaseListResult": { + "description": "A list of databases.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/Database" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "DatabaseProperties": { + "description": "The database's properties.", + "type": "object", + "properties": { + "createMode": { + "description": "Specifies the mode of database creation.\r\n\r\nDefault: regular database creation.\r\n\r\nCopy: creates a database as a copy of an existing database. sourceDatabaseId must be specified as the resource ID of the source database.\r\n\r\nSecondary: creates a database as a secondary replica of an existing database. sourceDatabaseId must be specified as the resource ID of the existing primary database.\r\n\r\nPointInTimeRestore: Creates a database by restoring a point in time backup of an existing database. sourceDatabaseId must be specified as the resource ID of the existing database, and restorePointInTime must be specified.\r\n\r\nRecovery: Creates a database by restoring a geo-replicated backup. sourceDatabaseId must be specified as the recoverable database resource ID to restore.\r\n\r\nRestore: Creates a database by restoring a backup of a deleted database. sourceDatabaseId must be specified. If sourceDatabaseId is the database's original resource ID, then sourceDatabaseDeletionDate must be specified. Otherwise sourceDatabaseId must be the restorable dropped database resource ID and sourceDatabaseDeletionDate is ignored. restorePointInTime may also be specified to restore from an earlier point in time.\r\n\r\nRestoreLongTermRetentionBackup: Creates a database by restoring from a long term retention vault. recoveryServicesRecoveryPointResourceId must be specified as the recovery point resource ID.\r\n\r\nCopy, Secondary, and RestoreLongTermRetentionBackup are not supported for DataWarehouse edition.", + "enum": [ + "Default", + "Copy", + "Secondary", + "PointInTimeRestore", + "Restore", + "Recovery", + "RestoreExternalBackup", + "RestoreExternalBackupSecondary", + "RestoreLongTermRetentionBackup", + "OnlineSecondary" + ], + "type": "string", + "x-ms-enum": { + "name": "CreateMode", + "modelAsString": true + }, + "x-ms-mutability": [ + "create" + ] + }, + "collation": { + "description": "The collation of the database.", + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "maxSizeBytes": { + "format": "int64", + "description": "The max size of the database expressed in bytes.", + "type": "integer" + }, + "sampleName": { + "description": "The name of the sample schema to apply when creating this database.", + "enum": [ + "AdventureWorksLT", + "WideWorldImportersStd", + "WideWorldImportersFull" + ], + "type": "string", + "x-ms-enum": { + "name": "SampleName", + "modelAsString": true + }, + "x-ms-mutability": [ + "create" + ] + }, + "elasticPoolId": { + "description": "The resource identifier of the elastic pool containing this database.", + "type": "string" + }, + "sourceDatabaseId": { + "description": "The resource identifier of the source database associated with create operation of this database.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "status": { + "description": "The status of the database.", + "enum": [ + "Online", + "Restoring", + "RecoveryPending", + "Recovering", + "Suspect", + "Offline", + "Standby", + "Shutdown", + "EmergencyMode", + "AutoClosed", + "Copying", + "Creating", + "Inaccessible", + "OfflineSecondary", + "Pausing", + "Paused", + "Resuming", + "Scaling", + "OfflineChangingDwPerformanceTiers", + "OnlineChangingDwPerformanceTiers", + "Disabled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "DatabaseStatus", + "modelAsString": true + } + }, + "databaseId": { + "format": "uuid", + "description": "The ID of the database.", + "type": "string", + "readOnly": true + }, + "creationDate": { + "format": "date-time", + "description": "The creation date of the database (ISO8601 format).", + "type": "string", + "readOnly": true + }, + "currentServiceObjectiveName": { + "description": "The current service level objective name of the database.", + "type": "string", + "readOnly": true + }, + "requestedServiceObjectiveName": { + "description": "The requested service level objective name of the database.", + "type": "string", + "readOnly": true + }, + "defaultSecondaryLocation": { + "description": "The default secondary region for this database.", + "type": "string", + "readOnly": true + }, + "failoverGroupId": { + "description": "Failover Group resource identifier that this database belongs to.", + "type": "string", + "readOnly": true + }, + "restorePointInTime": { + "format": "date-time", + "description": "Specifies the point in time (ISO8601 format) of the source database that will be restored to create the new database.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "sourceDatabaseDeletionDate": { + "format": "date-time", + "description": "Specifies the time that the database was deleted.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "recoveryServicesRecoveryPointId": { + "description": "The resource identifier of the recovery point associated with create operation of this database.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "longTermRetentionBackupResourceId": { + "description": "The resource identifier of the long term retention backup associated with create operation of this database.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "recoverableDatabaseId": { + "description": "The resource identifier of the recoverable database associated with create operation of this database.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "restorableDroppedDatabaseId": { + "description": "The resource identifier of the restorable dropped database associated with create operation of this database.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "catalogCollation": { + "description": "Collation of the metadata catalog.", + "enum": [ + "DATABASE_DEFAULT", + "SQL_Latin1_General_CP1_CI_AS" + ], + "type": "string", + "x-ms-enum": { + "name": "CatalogCollationType", + "modelAsString": true + }, + "x-ms-mutability": [ + "read", + "create" + ] + }, + "zoneRedundant": { + "description": "Whether or not this database is zone redundant, which means the replicas of this database will be spread across multiple availability zones.", + "type": "boolean" + }, + "licenseType": { + "description": "The license type to apply for this database. `LicenseIncluded` if you need a license, or `BasePrice` if you have a license and are eligible for the Azure Hybrid Benefit.", + "enum": [ + "LicenseIncluded", + "BasePrice" + ], + "type": "string", + "x-ms-enum": { + "name": "DatabaseLicenseType", + "modelAsString": true + } + }, + "maxLogSizeBytes": { + "format": "int64", + "description": "The max log size for this database.", + "type": "integer", + "readOnly": true + }, + "earliestRestoreDate": { + "format": "date-time", + "description": "This records the earliest start date and time that restore is available for this database (ISO8601 format).", + "type": "string", + "readOnly": true + }, + "readScale": { + "description": "The state of read-only routing. If enabled, connections that have application intent set to readonly in their connection string may be routed to a readonly secondary replica in the same region.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "DatabaseReadScale", + "modelAsString": true + }, + "x-ms-mutability": [ + "read", + "update" + ] + }, + "highAvailabilityReplicaCount": { + "format": "int32", + "description": "The number of secondary replicas associated with the database that are used to provide high availability.", + "type": "integer" + }, + "secondaryType": { + "description": "The secondary type of the database if it is a secondary. Valid values are Geo and Named.", + "enum": [ + "Geo", + "Named" + ], + "type": "string", + "x-ms-enum": { + "name": "SecondaryType", + "modelAsString": true + } + }, + "currentSku": { + "$ref": "../../../common/v1/types.json#/definitions/Sku", + "description": "The name and tier of the SKU.", + "readOnly": true + }, + "autoPauseDelay": { + "format": "int32", + "description": "Time in minutes after which database is automatically paused. A value of -1 means that automatic pause is disabled", + "type": "integer" + }, + "currentBackupStorageRedundancy": { + "description": "The storage account type used to store backups for this database.", + "enum": [ + "Geo", + "Local", + "Zone" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "CurrentBackupStorageRedundancy", + "modelAsString": true + } + }, + "requestedBackupStorageRedundancy": { + "description": "The storage account type to be used to store backups for this database.", + "enum": [ + "Geo", + "Local", + "Zone" + ], + "type": "string", + "x-ms-enum": { + "name": "RequestedBackupStorageRedundancy", + "modelAsString": true + } + }, + "minCapacity": { + "format": "double", + "description": "Minimal capacity that database will always have allocated, if not paused", + "type": "number" + }, + "pausedDate": { + "format": "date-time", + "description": "The date when database was paused by user configuration or action(ISO8601 format). Null if the database is ready.", + "type": "string", + "readOnly": true + }, + "resumedDate": { + "format": "date-time", + "description": "The date when database was resumed by user action or database login (ISO8601 format). Null if the database is paused.", + "type": "string", + "readOnly": true + }, + "maintenanceConfigurationId": { + "description": "Maintenance configuration id assigned to the database. This configuration defines the period when the maintenance updates will occur.", + "type": "string" + }, + "isLedgerOn": { + "description": "Whether or not this database is a ledger database, which means all tables in the database are ledger tables. Note: the value of this property cannot be changed after the database has been created.", + "type": "boolean" + }, + "isInfraEncryptionEnabled": { + "description": "Infra encryption is enabled for this database.", + "type": "boolean", + "readOnly": true + } + } + }, + "Database": { + "description": "A database resource.", + "required": [ + "location" + ], + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/TrackedResource" + } + ], + "properties": { + "sku": { + "$ref": "../../../common/v1/types.json#/definitions/Sku", + "description": "The database SKU.\r\n\r\nThe list of SKUs may vary by region and support offer. To determine the SKUs (including the SKU name, tier/edition, family, and capacity) that are available to your subscription in an Azure region, use the `Capabilities_ListByLocation` REST API or one of the following commands:\r\n\r\n```azurecli\r\naz sql db list-editions -l -o table\r\n````\r\n\r\n```powershell\r\nGet-AzSqlServerServiceObjective -Location \r\n````\r\n" + }, + "kind": { + "description": "Kind of database. This is metadata used for the Azure portal experience.", + "type": "string", + "readOnly": true + }, + "managedBy": { + "description": "Resource that manages the database.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/DatabaseProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "DatabaseUpdate": { + "description": "A database resource.", + "type": "object", + "properties": { + "sku": { + "$ref": "../../../common/v1/types.json#/definitions/Sku", + "description": "The name and tier of the SKU." + }, + "properties": { + "$ref": "#/definitions/DatabaseProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + }, + "tags": { + "description": "Resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "ResourceMoveDefinition": { + "description": "Contains the information necessary to perform a resource move (rename).", + "required": [ + "id" + ], + "type": "object", + "properties": { + "id": { + "description": "The target ID for the resource", + "type": "string" + } + } + }, + "ImportExistingDatabaseDefinition": { + "description": "Contains the information necessary to perform import operation for existing database.", + "required": [ + "storageKeyType", + "storageKey", + "storageUri", + "administratorLogin", + "administratorLoginPassword" + ], + "type": "object", + "properties": { + "storageKeyType": { + "description": "Storage key type.", + "enum": [ + "SharedAccessKey", + "StorageAccessKey" + ], + "type": "string", + "x-ms-enum": { + "name": "StorageKeyType", + "modelAsString": true + }, + "x-ms-mutability": [ + "create" + ] + }, + "storageKey": { + "description": "Storage key.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "storageUri": { + "description": "Storage Uri.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "administratorLogin": { + "description": "Administrator login name.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "administratorLoginPassword": { + "description": "Administrator login password.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "authenticationType": { + "description": "Authentication type.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "networkIsolation": { + "$ref": "#/definitions/NetworkIsolationSettings", + "description": "Optional resource information to enable network isolation for request.", + "x-ms-mutability": [ + "create" + ] + } + } + }, + "NetworkIsolationSettings": { + "description": "Contains the ARM resources for which to create private endpoint connection.", + "type": "object", + "properties": { + "storageAccountResourceId": { + "description": "The resource id for the storage account used to store BACPAC file. If set, private endpoint connection will be created for the storage account. Must match storage account used for StorageUri parameter.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "sqlServerResourceId": { + "description": "The resource id for the SQL server which is the target of this request. If set, private endpoint connection will be created for the SQL server. Must match server which is target of the operation.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + } + } + }, + "ImportExportOperationResultProperties": { + "description": "Contains the operation result properties for import/export operation.", + "type": "object", + "properties": { + "requestId": { + "format": "uuid", + "description": "Request Id.", + "type": "string", + "readOnly": true + }, + "requestType": { + "description": "Request type.", + "type": "string", + "readOnly": true + }, + "queuedTime": { + "description": "Queued time.", + "type": "string", + "readOnly": true + }, + "lastModifiedTime": { + "description": "Last modified time.", + "type": "string", + "readOnly": true + }, + "blobUri": { + "description": "Blob Uri.", + "type": "string", + "readOnly": true + }, + "serverName": { + "description": "Server name.", + "type": "string", + "readOnly": true + }, + "databaseName": { + "description": "Database name.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "Operation status.", + "type": "string", + "readOnly": true + }, + "errorMessage": { + "description": "Error message.", + "type": "string", + "readOnly": true + }, + "privateEndpointConnections": { + "description": "Gets the status of private endpoints associated with this request.", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnectionRequestStatus" + }, + "readOnly": true + } + } + }, + "PrivateEndpointConnectionRequestStatus": { + "description": "Contains the private endpoint connection requests status.", + "type": "object", + "properties": { + "privateLinkServiceId": { + "description": "Resource id for which the private endpoint is created.", + "type": "string", + "readOnly": true + }, + "privateEndpointConnectionName": { + "description": "The connection name for the private endpoint.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "Status of this private endpoint connection.", + "type": "string", + "readOnly": true + } + } + }, + "ImportExportOperationResult": { + "description": "An ImportExport operation result resource.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ImportExportOperationResultProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "ExportDatabaseDefinition": { + "description": "Contains the information necessary to perform export database operation.", + "required": [ + "storageKeyType", + "storageKey", + "storageUri", + "administratorLogin", + "administratorLoginPassword" + ], + "type": "object", + "properties": { + "storageKeyType": { + "description": "Storage key type.", + "enum": [ + "SharedAccessKey", + "StorageAccessKey" + ], + "type": "string", + "x-ms-enum": { + "name": "StorageKeyType", + "modelAsString": true + }, + "x-ms-mutability": [ + "create" + ] + }, + "storageKey": { + "description": "Storage key.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "storageUri": { + "description": "Storage Uri.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "administratorLogin": { + "description": "Administrator login name.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "administratorLoginPassword": { + "description": "Administrator login password.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "authenticationType": { + "description": "Authentication type.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "networkIsolation": { + "$ref": "#/definitions/NetworkIsolationSettings", + "description": "Optional resource information to enable network isolation for request.", + "x-ms-mutability": [ + "create" + ] + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/DeletedServers.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/DeletedServers.json new file mode 100644 index 000000000000..67645c0e7405 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/DeletedServers.json @@ -0,0 +1,273 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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/deletedServers": { + "get": { + "tags": [ + "DeletedServers" + ], + "description": "Gets a list of all deleted servers in a subscription.", + "operationId": "DeletedServers_List", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of deleted servers.", + "schema": { + "$ref": "#/definitions/DeletedServerListResult" + } + }, + "default": { + "description": "*** Error Responses: ***" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List deleted servers in a subscription": { + "$ref": "./examples/DeletedServerListBySubscription.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Sql/locations/{locationName}/deletedServers/{deletedServerName}": { + "get": { + "tags": [ + "DeletedServers" + ], + "description": "Gets a deleted server.", + "operationId": "DeletedServers_Get", + "parameters": [ + { + "name": "locationName", + "in": "path", + "description": "The name of the region where the resource is located.", + "required": true, + "type": "string" + }, + { + "name": "deletedServerName", + "in": "path", + "description": "The name of the deleted server.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the specified deleted server.", + "schema": { + "$ref": "#/definitions/DeletedServer" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidLocation - An invalid location was specified.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-examples": { + "Get deleted server": { + "$ref": "./examples/DeletedServerGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Sql/locations/{locationName}/deletedServers": { + "get": { + "tags": [ + "DeletedServers" + ], + "description": "Gets a list of deleted servers for a location.", + "operationId": "DeletedServers_ListByLocation", + "parameters": [ + { + "name": "locationName", + "in": "path", + "description": "The name of the region where the resource is located.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of deleted servers.", + "schema": { + "$ref": "#/definitions/DeletedServerListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidLocation - An invalid location was specified.\n\n * 400 SubscriptionNotFound - The requested subscription was not found." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List deleted servers": { + "$ref": "./examples/DeletedServerList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Sql/locations/{locationName}/deletedServers/{deletedServerName}/recover": { + "post": { + "tags": [ + "DeletedServers" + ], + "description": "Recovers a deleted server.", + "operationId": "DeletedServers_Recover", + "parameters": [ + { + "name": "locationName", + "in": "path", + "description": "The name of the region where the resource is located.", + "required": true, + "type": "string" + }, + { + "name": "deletedServerName", + "in": "path", + "description": "The name of the deleted server.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully recover the deleted server.", + "schema": { + "$ref": "#/definitions/DeletedServer" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidLocation - An invalid location was specified.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 404 ResourceNotFound - The requested resource 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." + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Recover deleted server.": { + "$ref": "./examples/DeletedServerRecover.json" + } + } + } + } + }, + "definitions": { + "DeletedServerListResult": { + "description": "A list of deleted servers.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/DeletedServer" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "DeletedServerProperties": { + "description": "The properties of a deleted server.", + "type": "object", + "properties": { + "version": { + "description": "The version of the deleted server.", + "type": "string", + "readOnly": true + }, + "deletionTime": { + "format": "date-time", + "description": "The deletion time of the deleted server.", + "type": "string", + "readOnly": true + }, + "originalId": { + "description": "The original ID of the server before deletion.", + "type": "string", + "readOnly": true + }, + "fullyQualifiedDomainName": { + "description": "The fully qualified domain name of the server.", + "type": "string", + "readOnly": true + } + } + }, + "DeletedServer": { + "description": "A deleted server.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/DeletedServerProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + } + }, + "parameters": {}, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ElasticPoolOperations.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ElasticPoolOperations.json new file mode 100644 index 000000000000..74db1fd75fc5 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ElasticPoolOperations.json @@ -0,0 +1,257 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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": [ + "ElasticPoolOperations" + ], + "description": "Cancels the asynchronous operation on the elastic pool.", + "operationId": "ElasticPoolOperations_Cancel", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/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": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/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 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\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": [ + "ElasticPoolOperations" + ], + "description": "Gets a list of operations performed on the elastic pool.", + "operationId": "ElasticPoolOperations_ListByElasticPool", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "elasticPoolName", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/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 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\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 + } + } + }, + "ElasticPoolOperation": { + "description": "A elastic pool operation.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ElasticPoolOperationProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ElasticPools.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ElasticPools.json new file mode 100644 index 000000000000..b4ac983cc6c4 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ElasticPools.json @@ -0,0 +1,543 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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": { + "get": { + "tags": [ + "ElasticPools" + ], + "description": "Gets all elastic pools in a server.", + "operationId": "ElasticPools_ListByServer", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "$skip", + "in": "query", + "description": "The number of elements in the collection to skip.", + "required": false, + "type": "integer", + "format": "int64" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Succeeded", + "schema": { + "$ref": "#/definitions/ElasticPoolListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\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 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidTierSkuCombination - The specified tier does not support the specified sku.\n\n * 400 ServerQuotaExceeded - The server reached its limit for allowed Database Throughput Unit.\n\n * 400 ElasticPoolAlreadyExists - The server already contains an elastic pool with the specified name.\n\n * 400 InvalidInputValueForEdition - Specified edition is not supported for elastic pool provisioning.\n\n * 400 ElasticPoolDtuBelowLimit - The requested DTU value is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDtuAboveLimit - The requested DTU value is too high for the requested elastic pool service tier.\n\n * 400 InvalidMaxSize - Invalid max size.\n\n * 400 ElasticPoolDbDtuMaxBelowLimit - The requested per database DTU max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbDtuMaxAboveLimit - The requested per database DTU max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMax - Attempting to set the DTU max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbDtuMinAboveLimit - The requested DTU min per database is too high for the requested service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMin - Attempting to set the DTU min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\n\n * 400 ElasticPoolDtuUnsupported - User tried to create or update an elastic pool with a DTU capacity that is not supported.\n\n * 400 ElasticPoolStorageAboveLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolsNotEnabled - Elastic pools have not been enabled in this region.\n\n * 400 ElasticPoolNotEmpty - Request to delete an elastic pool that is not empty.\n\n * 400 ElasticPoolStorageBelowLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedGB - Attempting to set the elastic pool storage limit in gb which doesn't match the allowed values.\n\n * 400 ElasticPoolDatabaseLimit - The elastic pool has reached its limit for number of databases.\n\n * 400 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 400 ElasticPoolBusy - A management operation was attempted on an elastic pool which is busy.\n\n * 400 InvalidInputValueDatabaseDtuMinLargerThanMax - Attempting to set the DTU min per database higher than the DTU max per database.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\n\n * 400 ElasticPoolStorageBelowLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolCapacityStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolStorageAboveLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\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 SourceDatabaseEditionCouldNotBeUpgraded - The source database cannot have higher edition than the target database.\n\n * 400 TargetDatabaseEditionCouldNotBeDowngraded - The target database cannot have lower edition than the source database.\n\n * 400 ElasticPoolUpdateHkNotAllowed - The elastic pool cannot lower its service tier from Premium to Standard or Basic since one or more of its databases use memory-optimized objects.\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currently in progress.\n\n * 400 RegionDoesNotAllowProvisioning - The selected location is not accepting new Windows Azure SQL Database servers. This may change at a later time.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 ElasticPoolDbDtuMinBelowLimit - The requested per database DTU min is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxBelowLimit - The requested per database VCore max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxAboveLimit - The requested per database VCore max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMax - Attempting to set the VCore max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbVcoreMinBelowLimit - The requested per database VCore min is too low for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMin - Attempting to set the VCore min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 PartnerDBNotCompatibleForSGXEnclave - Attempt to set GeoDR link or update SLO for enclave enabled database is only supported when both database are running on DC-series hardware.\n\n * 400 InvalidInputValueDatabaseVcoreMinLargerThanMax - Attempting to set the VCore min per database higher than the VCore max per database.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 InvalidPublicMaintenanceConfiguration - User tried to specify public maintenance configuration which cannot be converted to internal id (malformed or wrong region).\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ElasticPoolNotFound - The specified elastic pool does not exist for the specified server.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 405 NotSupported - This functionality is not supported.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 SimultaneousSkuChangeNotAllowed - Service objective change operations cannot run on both databases of a replication relationship at the same time.\n\n * 409 ElasticPoolUpdateLinksNotInCatchup - Cannot update elastic pool while one of its databases is performing a copy or geo-replication failover operation.\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.\n\n * 503 ServiceTemporarilyUnavailable - Feature temporarily unavailable." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get all elastic pools in a server": { + "$ref": "./examples/ElasticPoolListByServer.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/elasticPools/{elasticPoolName}": { + "get": { + "tags": [ + "ElasticPools" + ], + "description": "Gets an elastic pool.", + "operationId": "ElasticPools_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "elasticPoolName", + "in": "path", + "description": "The name of the elastic pool.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Succeeded", + "schema": { + "$ref": "#/definitions/ElasticPool" + } + }, + "default": { + "description": "*** Error Responses: ***\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 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidTierSkuCombination - The specified tier does not support the specified sku.\n\n * 400 ServerQuotaExceeded - The server reached its limit for allowed Database Throughput Unit.\n\n * 400 ElasticPoolAlreadyExists - The server already contains an elastic pool with the specified name.\n\n * 400 InvalidInputValueForEdition - Specified edition is not supported for elastic pool provisioning.\n\n * 400 ElasticPoolDtuBelowLimit - The requested DTU value is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDtuAboveLimit - The requested DTU value is too high for the requested elastic pool service tier.\n\n * 400 InvalidMaxSize - Invalid max size.\n\n * 400 ElasticPoolDbDtuMaxBelowLimit - The requested per database DTU max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbDtuMaxAboveLimit - The requested per database DTU max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMax - Attempting to set the DTU max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbDtuMinAboveLimit - The requested DTU min per database is too high for the requested service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMin - Attempting to set the DTU min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\n\n * 400 ElasticPoolDtuUnsupported - User tried to create or update an elastic pool with a DTU capacity that is not supported.\n\n * 400 ElasticPoolStorageAboveLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolsNotEnabled - Elastic pools have not been enabled in this region.\n\n * 400 ElasticPoolNotEmpty - Request to delete an elastic pool that is not empty.\n\n * 400 ElasticPoolStorageBelowLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedGB - Attempting to set the elastic pool storage limit in gb which doesn't match the allowed values.\n\n * 400 ElasticPoolDatabaseLimit - The elastic pool has reached its limit for number of databases.\n\n * 400 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 400 ElasticPoolBusy - A management operation was attempted on an elastic pool which is busy.\n\n * 400 InvalidInputValueDatabaseDtuMinLargerThanMax - Attempting to set the DTU min per database higher than the DTU max per database.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\n\n * 400 ElasticPoolStorageBelowLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolCapacityStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolStorageAboveLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\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 SourceDatabaseEditionCouldNotBeUpgraded - The source database cannot have higher edition than the target database.\n\n * 400 TargetDatabaseEditionCouldNotBeDowngraded - The target database cannot have lower edition than the source database.\n\n * 400 ElasticPoolUpdateHkNotAllowed - The elastic pool cannot lower its service tier from Premium to Standard or Basic since one or more of its databases use memory-optimized objects.\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currently in progress.\n\n * 400 RegionDoesNotAllowProvisioning - The selected location is not accepting new Windows Azure SQL Database servers. This may change at a later time.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 ElasticPoolDbDtuMinBelowLimit - The requested per database DTU min is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxBelowLimit - The requested per database VCore max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxAboveLimit - The requested per database VCore max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMax - Attempting to set the VCore max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbVcoreMinBelowLimit - The requested per database VCore min is too low for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMin - Attempting to set the VCore min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 PartnerDBNotCompatibleForSGXEnclave - Attempt to set GeoDR link or update SLO for enclave enabled database is only supported when both database are running on DC-series hardware.\n\n * 400 InvalidInputValueDatabaseVcoreMinLargerThanMax - Attempting to set the VCore min per database higher than the VCore max per database.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 InvalidPublicMaintenanceConfiguration - User tried to specify public maintenance configuration which cannot be converted to internal id (malformed or wrong region).\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ElasticPoolNotFound - The specified elastic pool does not exist for the specified server.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 405 NotSupported - This functionality is not supported.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 SimultaneousSkuChangeNotAllowed - Service objective change operations cannot run on both databases of a replication relationship at the same time.\n\n * 409 ElasticPoolUpdateLinksNotInCatchup - Cannot update elastic pool while one of its databases is performing a copy or geo-replication failover operation.\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.\n\n * 503 ServiceTemporarilyUnavailable - Feature temporarily unavailable." + } + }, + "x-ms-examples": { + "Get an elastic pool": { + "$ref": "./examples/ElasticPoolGet.json" + } + } + }, + "put": { + "tags": [ + "ElasticPools" + ], + "description": "Creates or updates an elastic pool.", + "operationId": "ElasticPools_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "elasticPoolName", + "in": "path", + "description": "The name of the elastic pool.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The elastic pool parameters.", + "required": true, + "schema": { + "$ref": "#/definitions/ElasticPool" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Updated the elastic pool", + "schema": { + "$ref": "#/definitions/ElasticPool" + } + }, + "default": { + "description": "*** Error Responses: ***\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 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidTierSkuCombination - The specified tier does not support the specified sku.\n\n * 400 ServerQuotaExceeded - The server reached its limit for allowed Database Throughput Unit.\n\n * 400 ElasticPoolAlreadyExists - The server already contains an elastic pool with the specified name.\n\n * 400 InvalidInputValueForEdition - Specified edition is not supported for elastic pool provisioning.\n\n * 400 ElasticPoolDtuBelowLimit - The requested DTU value is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDtuAboveLimit - The requested DTU value is too high for the requested elastic pool service tier.\n\n * 400 InvalidMaxSize - Invalid max size.\n\n * 400 ElasticPoolDbDtuMaxBelowLimit - The requested per database DTU max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbDtuMaxAboveLimit - The requested per database DTU max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMax - Attempting to set the DTU max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbDtuMinAboveLimit - The requested DTU min per database is too high for the requested service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMin - Attempting to set the DTU min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\n\n * 400 ElasticPoolDtuUnsupported - User tried to create or update an elastic pool with a DTU capacity that is not supported.\n\n * 400 ElasticPoolStorageAboveLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolsNotEnabled - Elastic pools have not been enabled in this region.\n\n * 400 ElasticPoolNotEmpty - Request to delete an elastic pool that is not empty.\n\n * 400 ElasticPoolStorageBelowLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedGB - Attempting to set the elastic pool storage limit in gb which doesn't match the allowed values.\n\n * 400 ElasticPoolDatabaseLimit - The elastic pool has reached its limit for number of databases.\n\n * 400 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 400 ElasticPoolBusy - A management operation was attempted on an elastic pool which is busy.\n\n * 400 InvalidInputValueDatabaseDtuMinLargerThanMax - Attempting to set the DTU min per database higher than the DTU max per database.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\n\n * 400 ElasticPoolStorageBelowLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolCapacityStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolStorageAboveLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\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 SourceDatabaseEditionCouldNotBeUpgraded - The source database cannot have higher edition than the target database.\n\n * 400 TargetDatabaseEditionCouldNotBeDowngraded - The target database cannot have lower edition than the source database.\n\n * 400 ElasticPoolUpdateHkNotAllowed - The elastic pool cannot lower its service tier from Premium to Standard or Basic since one or more of its databases use memory-optimized objects.\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currently in progress.\n\n * 400 RegionDoesNotAllowProvisioning - The selected location is not accepting new Windows Azure SQL Database servers. This may change at a later time.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 ElasticPoolDbDtuMinBelowLimit - The requested per database DTU min is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxBelowLimit - The requested per database VCore max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxAboveLimit - The requested per database VCore max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMax - Attempting to set the VCore max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbVcoreMinBelowLimit - The requested per database VCore min is too low for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMin - Attempting to set the VCore min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 PartnerDBNotCompatibleForSGXEnclave - Attempt to set GeoDR link or update SLO for enclave enabled database is only supported when both database are running on DC-series hardware.\n\n * 400 InvalidInputValueDatabaseVcoreMinLargerThanMax - Attempting to set the VCore min per database higher than the VCore max per database.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 InvalidPublicMaintenanceConfiguration - User tried to specify public maintenance configuration which cannot be converted to internal id (malformed or wrong region).\n\n * 400 InvalidResourceRequestBody - The resource or resource properties in the request body is empty or invalid.\n\n * 400 InvalidResourceId - Invalid resource identifier.\n\n * 400 InvalidSkuName - Invalid SKU name.\n\n * 400 MismatchedSkuNameAndCapacity - Mismatch between SKU name and capacity.\n\n * 400 MismatchedSkuNameAndTier - Mismatch between SKU name and tier.\n\n * 400 MismatchedSkuNameAndFamily - Mismatch between SKU name and family.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\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 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidTierSkuCombination - The specified tier does not support the specified sku.\n\n * 400 ServerQuotaExceeded - The server reached its limit for allowed Database Throughput Unit.\n\n * 400 ElasticPoolAlreadyExists - The server already contains an elastic pool with the specified name.\n\n * 400 InvalidInputValueForEdition - Specified edition is not supported for elastic pool provisioning.\n\n * 400 ElasticPoolDtuBelowLimit - The requested DTU value is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDtuAboveLimit - The requested DTU value is too high for the requested elastic pool service tier.\n\n * 400 InvalidMaxSize - Invalid max size.\n\n * 400 ElasticPoolDbDtuMaxBelowLimit - The requested per database DTU max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbDtuMaxAboveLimit - The requested per database DTU max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMax - Attempting to set the DTU max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbDtuMinAboveLimit - The requested DTU min per database is too high for the requested service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMin - Attempting to set the DTU min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\n\n * 400 ElasticPoolDtuUnsupported - User tried to create or update an elastic pool with a DTU capacity that is not supported.\n\n * 400 ElasticPoolStorageAboveLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolsNotEnabled - Elastic pools have not been enabled in this region.\n\n * 400 ElasticPoolNotEmpty - Request to delete an elastic pool that is not empty.\n\n * 400 ElasticPoolStorageBelowLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedGB - Attempting to set the elastic pool storage limit in gb which doesn't match the allowed values.\n\n * 400 ElasticPoolDatabaseLimit - The elastic pool has reached its limit for number of databases.\n\n * 400 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 400 ElasticPoolBusy - A management operation was attempted on an elastic pool which is busy.\n\n * 400 InvalidInputValueDatabaseDtuMinLargerThanMax - Attempting to set the DTU min per database higher than the DTU max per database.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\n\n * 400 ElasticPoolStorageBelowLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolCapacityStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolStorageAboveLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\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 SourceDatabaseEditionCouldNotBeUpgraded - The source database cannot have higher edition than the target database.\n\n * 400 TargetDatabaseEditionCouldNotBeDowngraded - The target database cannot have lower edition than the source database.\n\n * 400 ElasticPoolUpdateHkNotAllowed - The elastic pool cannot lower its service tier from Premium to Standard or Basic since one or more of its databases use memory-optimized objects.\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currently in progress.\n\n * 400 RegionDoesNotAllowProvisioning - The selected location is not accepting new Windows Azure SQL Database servers. This may change at a later time.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 ElasticPoolDbDtuMinBelowLimit - The requested per database DTU min is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxBelowLimit - The requested per database VCore max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxAboveLimit - The requested per database VCore max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMax - Attempting to set the VCore max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbVcoreMinBelowLimit - The requested per database VCore min is too low for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMin - Attempting to set the VCore min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 PartnerDBNotCompatibleForSGXEnclave - Attempt to set GeoDR link or update SLO for enclave enabled database is only supported when both database are running on DC-series hardware.\n\n * 400 InvalidInputValueDatabaseVcoreMinLargerThanMax - Attempting to set the VCore min per database higher than the VCore max per database.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 InvalidPublicMaintenanceConfiguration - User tried to specify public maintenance configuration which cannot be converted to internal id (malformed or wrong region).\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ElasticPoolNotFound - The specified elastic pool does not exist for the specified server.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ElasticPoolNotFound - The specified elastic pool does not exist for the specified server.\n\n * 405 NotSupported - This functionality is not supported.\n\n * 405 NotSupported - This functionality is not supported.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 SimultaneousSkuChangeNotAllowed - Service objective change operations cannot run on both databases of a replication relationship at the same time.\n\n * 409 ElasticPoolUpdateLinksNotInCatchup - Cannot update elastic pool while one of its databases is performing a copy or geo-replication failover operation.\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 ServerDisabled - Server is disabled.\n\n * 409 SimultaneousSkuChangeNotAllowed - Service objective change operations cannot run on both databases of a replication relationship at the same time.\n\n * 409 ElasticPoolUpdateLinksNotInCatchup - Cannot update elastic pool while one of its databases is performing a copy or geo-replication failover operation.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 503 ServiceTemporarilyUnavailable - Feature temporarily unavailable.\n\n * 503 ServiceTemporarilyUnavailable - Feature temporarily unavailable." + }, + "202": { + "description": "Accepted" + }, + "201": { + "description": "Created the elastic pool", + "schema": { + "$ref": "#/definitions/ElasticPool" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create or update elastic pool with minimum parameters": { + "$ref": "./examples/ElasticPoolCreateOrUpdateMin.json" + }, + "Create or update elastic pool with all parameter": { + "$ref": "./examples/ElasticPoolCreateOrUpdateMax.json" + }, + "Create or update elastic pool with maintenance configuration parameter": { + "$ref": "./examples/ElasticPoolCreateOrUpdateSetMaintenanceConfiguration.json" + } + } + }, + "delete": { + "tags": [ + "ElasticPools" + ], + "description": "Deletes an elastic pool.", + "operationId": "ElasticPools_Delete", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "elasticPoolName", + "in": "path", + "description": "The name of the elastic pool.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Deleted the elastic pool" + }, + "default": { + "description": "*** Error Responses: ***\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 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidTierSkuCombination - The specified tier does not support the specified sku.\n\n * 400 ServerQuotaExceeded - The server reached its limit for allowed Database Throughput Unit.\n\n * 400 ElasticPoolAlreadyExists - The server already contains an elastic pool with the specified name.\n\n * 400 InvalidInputValueForEdition - Specified edition is not supported for elastic pool provisioning.\n\n * 400 ElasticPoolDtuBelowLimit - The requested DTU value is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDtuAboveLimit - The requested DTU value is too high for the requested elastic pool service tier.\n\n * 400 InvalidMaxSize - Invalid max size.\n\n * 400 ElasticPoolDbDtuMaxBelowLimit - The requested per database DTU max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbDtuMaxAboveLimit - The requested per database DTU max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMax - Attempting to set the DTU max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbDtuMinAboveLimit - The requested DTU min per database is too high for the requested service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMin - Attempting to set the DTU min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\n\n * 400 ElasticPoolDtuUnsupported - User tried to create or update an elastic pool with a DTU capacity that is not supported.\n\n * 400 ElasticPoolStorageAboveLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolsNotEnabled - Elastic pools have not been enabled in this region.\n\n * 400 ElasticPoolNotEmpty - Request to delete an elastic pool that is not empty.\n\n * 400 ElasticPoolStorageBelowLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedGB - Attempting to set the elastic pool storage limit in gb which doesn't match the allowed values.\n\n * 400 ElasticPoolDatabaseLimit - The elastic pool has reached its limit for number of databases.\n\n * 400 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 400 ElasticPoolBusy - A management operation was attempted on an elastic pool which is busy.\n\n * 400 InvalidInputValueDatabaseDtuMinLargerThanMax - Attempting to set the DTU min per database higher than the DTU max per database.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\n\n * 400 ElasticPoolStorageBelowLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolCapacityStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolStorageAboveLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\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 SourceDatabaseEditionCouldNotBeUpgraded - The source database cannot have higher edition than the target database.\n\n * 400 TargetDatabaseEditionCouldNotBeDowngraded - The target database cannot have lower edition than the source database.\n\n * 400 ElasticPoolUpdateHkNotAllowed - The elastic pool cannot lower its service tier from Premium to Standard or Basic since one or more of its databases use memory-optimized objects.\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currently in progress.\n\n * 400 RegionDoesNotAllowProvisioning - The selected location is not accepting new Windows Azure SQL Database servers. This may change at a later time.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 ElasticPoolDbDtuMinBelowLimit - The requested per database DTU min is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxBelowLimit - The requested per database VCore max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxAboveLimit - The requested per database VCore max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMax - Attempting to set the VCore max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbVcoreMinBelowLimit - The requested per database VCore min is too low for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMin - Attempting to set the VCore min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 PartnerDBNotCompatibleForSGXEnclave - Attempt to set GeoDR link or update SLO for enclave enabled database is only supported when both database are running on DC-series hardware.\n\n * 400 InvalidInputValueDatabaseVcoreMinLargerThanMax - Attempting to set the VCore min per database higher than the VCore max per database.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 InvalidPublicMaintenanceConfiguration - User tried to specify public maintenance configuration which cannot be converted to internal id (malformed or wrong region).\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ElasticPoolNotFound - The specified elastic pool does not exist for the specified server.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 405 NotSupported - This functionality is not supported.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 SimultaneousSkuChangeNotAllowed - Service objective change operations cannot run on both databases of a replication relationship at the same time.\n\n * 409 ElasticPoolUpdateLinksNotInCatchup - Cannot update elastic pool while one of its databases is performing a copy or geo-replication failover operation.\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.\n\n * 503 ServiceTemporarilyUnavailable - Feature temporarily unavailable." + }, + "202": { + "description": "Deleting the elastic pool is in progress." + }, + "204": { + "description": "Elastic pool did not exist" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete an elastic pool": { + "$ref": "./examples/ElasticPoolDelete.json" + } + } + }, + "patch": { + "tags": [ + "ElasticPools" + ], + "description": "Updates an elastic pool.", + "operationId": "ElasticPools_Update", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "elasticPoolName", + "in": "path", + "description": "The name of the elastic pool.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The elastic pool update parameters.", + "required": true, + "schema": { + "$ref": "#/definitions/ElasticPoolUpdate" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Updated the elastic pool", + "schema": { + "$ref": "#/definitions/ElasticPool" + } + }, + "default": { + "description": "*** Error Responses: ***\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 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidTierSkuCombination - The specified tier does not support the specified sku.\n\n * 400 ServerQuotaExceeded - The server reached its limit for allowed Database Throughput Unit.\n\n * 400 ElasticPoolAlreadyExists - The server already contains an elastic pool with the specified name.\n\n * 400 InvalidInputValueForEdition - Specified edition is not supported for elastic pool provisioning.\n\n * 400 ElasticPoolDtuBelowLimit - The requested DTU value is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDtuAboveLimit - The requested DTU value is too high for the requested elastic pool service tier.\n\n * 400 InvalidMaxSize - Invalid max size.\n\n * 400 ElasticPoolDbDtuMaxBelowLimit - The requested per database DTU max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbDtuMaxAboveLimit - The requested per database DTU max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMax - Attempting to set the DTU max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbDtuMinAboveLimit - The requested DTU min per database is too high for the requested service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMin - Attempting to set the DTU min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\n\n * 400 ElasticPoolDtuUnsupported - User tried to create or update an elastic pool with a DTU capacity that is not supported.\n\n * 400 ElasticPoolStorageAboveLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolsNotEnabled - Elastic pools have not been enabled in this region.\n\n * 400 ElasticPoolNotEmpty - Request to delete an elastic pool that is not empty.\n\n * 400 ElasticPoolStorageBelowLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedGB - Attempting to set the elastic pool storage limit in gb which doesn't match the allowed values.\n\n * 400 ElasticPoolDatabaseLimit - The elastic pool has reached its limit for number of databases.\n\n * 400 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 400 ElasticPoolBusy - A management operation was attempted on an elastic pool which is busy.\n\n * 400 InvalidInputValueDatabaseDtuMinLargerThanMax - Attempting to set the DTU min per database higher than the DTU max per database.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\n\n * 400 ElasticPoolStorageBelowLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolCapacityStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolStorageAboveLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\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 SourceDatabaseEditionCouldNotBeUpgraded - The source database cannot have higher edition than the target database.\n\n * 400 TargetDatabaseEditionCouldNotBeDowngraded - The target database cannot have lower edition than the source database.\n\n * 400 ElasticPoolUpdateHkNotAllowed - The elastic pool cannot lower its service tier from Premium to Standard or Basic since one or more of its databases use memory-optimized objects.\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currently in progress.\n\n * 400 RegionDoesNotAllowProvisioning - The selected location is not accepting new Windows Azure SQL Database servers. This may change at a later time.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 ElasticPoolDbDtuMinBelowLimit - The requested per database DTU min is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxBelowLimit - The requested per database VCore max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxAboveLimit - The requested per database VCore max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMax - Attempting to set the VCore max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbVcoreMinBelowLimit - The requested per database VCore min is too low for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMin - Attempting to set the VCore min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 PartnerDBNotCompatibleForSGXEnclave - Attempt to set GeoDR link or update SLO for enclave enabled database is only supported when both database are running on DC-series hardware.\n\n * 400 InvalidInputValueDatabaseVcoreMinLargerThanMax - Attempting to set the VCore min per database higher than the VCore max per database.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 InvalidPublicMaintenanceConfiguration - User tried to specify public maintenance configuration which cannot be converted to internal id (malformed or wrong region).\n\n * 400 InvalidResourceRequestBody - The resource or resource properties in the request body is empty or invalid.\n\n * 400 InvalidResourceId - Invalid resource identifier.\n\n * 400 InvalidSkuName - Invalid SKU name.\n\n * 400 MismatchedSkuNameAndCapacity - Mismatch between SKU name and capacity.\n\n * 400 MismatchedSkuNameAndTier - Mismatch between SKU name and tier.\n\n * 400 MismatchedSkuNameAndFamily - Mismatch between SKU name and family.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\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 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidTierSkuCombination - The specified tier does not support the specified sku.\n\n * 400 ServerQuotaExceeded - The server reached its limit for allowed Database Throughput Unit.\n\n * 400 ElasticPoolAlreadyExists - The server already contains an elastic pool with the specified name.\n\n * 400 InvalidInputValueForEdition - Specified edition is not supported for elastic pool provisioning.\n\n * 400 ElasticPoolDtuBelowLimit - The requested DTU value is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDtuAboveLimit - The requested DTU value is too high for the requested elastic pool service tier.\n\n * 400 InvalidMaxSize - Invalid max size.\n\n * 400 ElasticPoolDbDtuMaxBelowLimit - The requested per database DTU max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbDtuMaxAboveLimit - The requested per database DTU max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMax - Attempting to set the DTU max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbDtuMinAboveLimit - The requested DTU min per database is too high for the requested service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMin - Attempting to set the DTU min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\n\n * 400 ElasticPoolDtuUnsupported - User tried to create or update an elastic pool with a DTU capacity that is not supported.\n\n * 400 ElasticPoolStorageAboveLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolsNotEnabled - Elastic pools have not been enabled in this region.\n\n * 400 ElasticPoolNotEmpty - Request to delete an elastic pool that is not empty.\n\n * 400 ElasticPoolStorageBelowLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedGB - Attempting to set the elastic pool storage limit in gb which doesn't match the allowed values.\n\n * 400 ElasticPoolDatabaseLimit - The elastic pool has reached its limit for number of databases.\n\n * 400 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 400 ElasticPoolBusy - A management operation was attempted on an elastic pool which is busy.\n\n * 400 InvalidInputValueDatabaseDtuMinLargerThanMax - Attempting to set the DTU min per database higher than the DTU max per database.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\n\n * 400 ElasticPoolStorageBelowLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolCapacityStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolStorageAboveLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\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 SourceDatabaseEditionCouldNotBeUpgraded - The source database cannot have higher edition than the target database.\n\n * 400 TargetDatabaseEditionCouldNotBeDowngraded - The target database cannot have lower edition than the source database.\n\n * 400 ElasticPoolUpdateHkNotAllowed - The elastic pool cannot lower its service tier from Premium to Standard or Basic since one or more of its databases use memory-optimized objects.\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currently in progress.\n\n * 400 RegionDoesNotAllowProvisioning - The selected location is not accepting new Windows Azure SQL Database servers. This may change at a later time.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 ElasticPoolDbDtuMinBelowLimit - The requested per database DTU min is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxBelowLimit - The requested per database VCore max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxAboveLimit - The requested per database VCore max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMax - Attempting to set the VCore max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbVcoreMinBelowLimit - The requested per database VCore min is too low for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMin - Attempting to set the VCore min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 PartnerDBNotCompatibleForSGXEnclave - Attempt to set GeoDR link or update SLO for enclave enabled database is only supported when both database are running on DC-series hardware.\n\n * 400 InvalidInputValueDatabaseVcoreMinLargerThanMax - Attempting to set the VCore min per database higher than the VCore max per database.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 InvalidPublicMaintenanceConfiguration - User tried to specify public maintenance configuration which cannot be converted to internal id (malformed or wrong region).\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ElasticPoolNotFound - The specified elastic pool does not exist for the specified server.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ElasticPoolNotFound - The specified elastic pool does not exist for the specified server.\n\n * 405 NotSupported - This functionality is not supported.\n\n * 405 NotSupported - This functionality is not supported.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 SimultaneousSkuChangeNotAllowed - Service objective change operations cannot run on both databases of a replication relationship at the same time.\n\n * 409 ElasticPoolUpdateLinksNotInCatchup - Cannot update elastic pool while one of its databases is performing a copy or geo-replication failover operation.\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 ServerDisabled - Server is disabled.\n\n * 409 SimultaneousSkuChangeNotAllowed - Service objective change operations cannot run on both databases of a replication relationship at the same time.\n\n * 409 ElasticPoolUpdateLinksNotInCatchup - Cannot update elastic pool while one of its databases is performing a copy or geo-replication failover operation.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 503 ServiceTemporarilyUnavailable - Feature temporarily unavailable.\n\n * 503 ServiceTemporarilyUnavailable - Feature temporarily unavailable." + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update an elastic pool with minimum parameters": { + "$ref": "./examples/ElasticPoolUpdateMin.json" + }, + "Update an elastic pool with all parameter": { + "$ref": "./examples/ElasticPoolUpdateMax.json" + }, + "Assigns maintenance configuration to an elastic pool.": { + "$ref": "./examples/ElasticPoolUpdateAssignMaintenanceConfiguration.json" + }, + "Resets maintenance configuration of an elastic pool to default.": { + "$ref": "./examples/ElasticPoolUpdateResetMaintenanceConfiguration.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/elasticPools/{elasticPoolName}/failover": { + "post": { + "tags": [ + "ElasticPools" + ], + "description": "Failovers an elastic pool.", + "operationId": "ElasticPools_Failover", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "elasticPoolName", + "in": "path", + "description": "The name of the elastic pool to failover.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully completed elastic pool failover." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 ManagementServiceFeatureDisabled - User attempted to use a feature which is disabled.\n\n * 400 ElasticPoolFailoverThrottled - There was a recent failover on the elastic pool.\n\n * 400 ElasticPoolFailoverNotSupportedOnSKU - This type of customer initiated failover is not supported on the given SKU.\n\n * 409 ManagementServiceDatabaseBusy - Database '{0}' is busy with another operation. Please try your operation later.\n\n * 409 ElasticPoolNotInStateToFailover - The elastic pool or a database within the elastic pool is currently in a state such that failover cannot be issued." + }, + "202": { + "description": "Elastic pool failover is in progress." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Failover an elastic pool": { + "$ref": "./examples/FailoverElasticPool.json" + } + } + } + } + }, + "definitions": { + "ElasticPoolListResult": { + "description": "The result of an elastic pool list request.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/ElasticPool" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "ElasticPoolProperties": { + "description": "Properties of an elastic pool", + "type": "object", + "properties": { + "state": { + "description": "The state of the elastic pool.", + "enum": [ + "Creating", + "Ready", + "Disabled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ElasticPoolState", + "modelAsString": true + } + }, + "creationDate": { + "format": "date-time", + "description": "The creation date of the elastic pool (ISO8601 format).", + "type": "string", + "readOnly": true + }, + "maxSizeBytes": { + "format": "int64", + "description": "The storage limit for the database elastic pool in bytes.", + "type": "integer" + }, + "perDatabaseSettings": { + "$ref": "#/definitions/ElasticPoolPerDatabaseSettings", + "description": "The per database settings for the elastic pool." + }, + "zoneRedundant": { + "description": "Whether or not this elastic pool is zone redundant, which means the replicas of this elastic pool will be spread across multiple availability zones.", + "type": "boolean" + }, + "licenseType": { + "description": "The license type to apply for this elastic pool.", + "enum": [ + "LicenseIncluded", + "BasePrice" + ], + "type": "string", + "x-ms-enum": { + "name": "ElasticPoolLicenseType", + "modelAsString": true + } + }, + "maintenanceConfigurationId": { + "description": "Maintenance configuration id assigned to the elastic pool. This configuration defines the period when the maintenance updates will will occur.", + "type": "string" + } + } + }, + "ElasticPoolPerDatabaseSettings": { + "description": "Per database settings of an elastic pool.", + "type": "object", + "properties": { + "minCapacity": { + "format": "double", + "description": "The minimum capacity all databases are guaranteed.", + "type": "number" + }, + "maxCapacity": { + "format": "double", + "description": "The maximum capacity any one database can consume.", + "type": "number" + } + } + }, + "ElasticPool": { + "description": "An elastic pool.", + "required": [ + "location" + ], + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/TrackedResource" + } + ], + "properties": { + "sku": { + "$ref": "../../../common/v1/types.json#/definitions/Sku", + "description": "The elastic pool SKU.\r\n\r\nThe list of SKUs may vary by region and support offer. To determine the SKUs (including the SKU name, tier/edition, family, and capacity) that are available to your subscription in an Azure region, use the `Capabilities_ListByLocation` REST API or the following command:\r\n\r\n```azurecli\r\naz sql elastic-pool list-editions -l -o table\r\n````\r\n" + }, + "kind": { + "description": "Kind of elastic pool. This is metadata used for the Azure portal experience.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/ElasticPoolProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "ElasticPoolUpdate": { + "description": "An elastic pool update.", + "type": "object", + "properties": { + "sku": { + "$ref": "../../../common/v1/types.json#/definitions/Sku" + }, + "properties": { + "$ref": "#/definitions/ElasticPoolUpdateProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + }, + "tags": { + "description": "Resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "ElasticPoolUpdateProperties": { + "description": "Properties of an elastic pool", + "type": "object", + "properties": { + "maxSizeBytes": { + "format": "int64", + "description": "The storage limit for the database elastic pool in bytes.", + "type": "integer" + }, + "perDatabaseSettings": { + "$ref": "#/definitions/ElasticPoolPerDatabaseSettings", + "description": "The per database settings for the elastic pool." + }, + "zoneRedundant": { + "description": "Whether or not this elastic pool is zone redundant, which means the replicas of this elastic pool will be spread across multiple availability zones.", + "type": "boolean" + }, + "licenseType": { + "description": "The license type to apply for this elastic pool.", + "enum": [ + "LicenseIncluded", + "BasePrice" + ], + "type": "string", + "x-ms-enum": { + "name": "ElasticPoolLicenseType", + "modelAsString": true + } + }, + "maintenanceConfigurationId": { + "description": "Maintenance configuration id assigned to the elastic pool. This configuration defines the period when the maintenance updates will will occur.", + "type": "string" + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/EncryptionProtectors.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/EncryptionProtectors.json new file mode 100644 index 000000000000..813accde9524 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/EncryptionProtectors.json @@ -0,0 +1,348 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/encryptionProtector": { + "get": { + "tags": [ + "EncryptionProtectors" + ], + "description": "Gets a list of server encryption protectors", + "operationId": "EncryptionProtectors_ListByServer", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of server encryption protector.", + "schema": { + "$ref": "#/definitions/EncryptionProtectorListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidKeyName - An invalid value was given for the server key name.\n\n * 400 InvalidKeyType - The create server key type is not supported.\n\n * 400 InvalidUpsertKeyType - Service-managed TDE keys are managed by the service. Service-managed TDE keys don't support Create or Update by the user.\n\n * 400 InvalidKeyUpsertRequest - The create server key request does not exist or has no properties object.\n\n * 400 InvalidEncryptionProtectorName - The encryption protector key name is not supported.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List encryption protectors by server": { + "$ref": "./examples/EncryptionProtectorList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/encryptionProtector/{encryptionProtectorName}": { + "get": { + "tags": [ + "EncryptionProtectors" + ], + "description": "Gets a server encryption protector.", + "operationId": "EncryptionProtectors_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "encryptionProtectorName", + "in": "path", + "description": "The name of the encryption protector to be retrieved.", + "required": true, + "type": "string", + "enum": [ + "current" + ], + "x-ms-enum": { + "name": "EncryptionProtectorName", + "modelAsString": true + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the specified server encryption protector.", + "schema": { + "$ref": "#/definitions/EncryptionProtector" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidKeyName - An invalid value was given for the server key name.\n\n * 400 InvalidKeyType - The create server key type is not supported.\n\n * 400 InvalidUpsertKeyType - Service-managed TDE keys are managed by the service. Service-managed TDE keys don't support Create or Update by the user.\n\n * 400 InvalidKeyUpsertRequest - The create server key request does not exist or has no properties object.\n\n * 400 InvalidEncryptionProtectorName - The encryption protector key name is not supported.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-examples": { + "Get the encryption protector": { + "$ref": "./examples/EncryptionProtectorGet.json" + } + } + }, + "put": { + "tags": [ + "EncryptionProtectors" + ], + "description": "Updates an existing encryption protector.", + "operationId": "EncryptionProtectors_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "encryptionProtectorName", + "in": "path", + "description": "The name of the encryption protector to be updated.", + "required": true, + "type": "string", + "enum": [ + "current" + ], + "x-ms-enum": { + "name": "EncryptionProtectorName", + "modelAsString": true + } + }, + { + "name": "parameters", + "in": "body", + "description": "The requested encryption protector resource state.", + "required": true, + "schema": { + "$ref": "#/definitions/EncryptionProtector" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the encryption protector.", + "schema": { + "$ref": "#/definitions/EncryptionProtector" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidKeyName - An invalid value was given for the server key name.\n\n * 400 InvalidKeyType - The create server key type is not supported.\n\n * 400 InvalidUpsertKeyType - Service-managed TDE keys are managed by the service. Service-managed TDE keys don't support Create or Update by the user.\n\n * 400 InvalidKeyUpsertRequest - The create server key request does not exist or has no properties object.\n\n * 400 InvalidEncryptionProtectorName - The encryption protector key name is not supported.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\n\n * 400 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 400 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 ServerKeyNotFound - The requested server key was not found on the current subscription.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information ." + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update the encryption protector to key vault": { + "$ref": "./examples/EncryptionProtectorCreateOrUpdateKeyVault.json" + }, + "Update the encryption protector to service managed": { + "$ref": "./examples/EncryptionProtectorCreateOrUpdateServiceManaged.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/encryptionProtector/{encryptionProtectorName}/revalidate": { + "post": { + "tags": [ + "EncryptionProtectors" + ], + "description": "Revalidates an existing encryption protector.", + "operationId": "EncryptionProtectors_Revalidate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "encryptionProtectorName", + "in": "path", + "description": "The name of the encryption protector to be updated.", + "required": true, + "type": "string", + "enum": [ + "current" + ], + "x-ms-enum": { + "name": "EncryptionProtectorName", + "modelAsString": true + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully revalidated the encryption protector." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidKeyName - An invalid value was given for the server key name.\n\n * 400 InvalidKeyType - The create server key type is not supported.\n\n * 400 InvalidUpsertKeyType - Service-managed TDE keys are managed by the service. Service-managed TDE keys don't support Create or Update by the user.\n\n * 400 InvalidKeyUpsertRequest - The create server key request does not exist or has no properties object.\n\n * 400 InvalidEncryptionProtectorName - The encryption protector key name is not supported.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\n\n * 400 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 400 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 ServerKeyNotFound - The requested server key was not found on the current subscription.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information ." + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Revalidates the encryption protector": { + "$ref": "./examples/EncryptionProtectorRevalidate.json" + } + } + } + } + }, + "definitions": { + "EncryptionProtectorListResult": { + "description": "A list of server encryption protectors.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/EncryptionProtector" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "EncryptionProtectorProperties": { + "description": "Properties for an encryption protector execution.", + "required": [ + "serverKeyType" + ], + "type": "object", + "properties": { + "subregion": { + "description": "Subregion of the encryption protector.", + "type": "string", + "readOnly": true + }, + "serverKeyName": { + "description": "The name of the server key.", + "type": "string" + }, + "serverKeyType": { + "description": "The encryption protector type like 'ServiceManaged', 'AzureKeyVault'.", + "enum": [ + "ServiceManaged", + "AzureKeyVault" + ], + "type": "string", + "x-ms-enum": { + "name": "ServerKeyType", + "modelAsString": true + } + }, + "uri": { + "description": "The URI of the server key.", + "type": "string", + "readOnly": true + }, + "thumbprint": { + "description": "Thumbprint of the server key.", + "type": "string", + "readOnly": true + }, + "autoRotationEnabled": { + "description": "Key auto rotation opt-in flag. Either true or false.", + "type": "boolean" + } + } + }, + "EncryptionProtector": { + "description": "The server encryption protector.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "kind": { + "description": "Kind of encryption protector. This is metadata used for the Azure portal experience.", + "type": "string", + "readOnly": true + }, + "location": { + "description": "Resource location.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/EncryptionProtectorProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/FailoverGroups.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/FailoverGroups.json new file mode 100644 index 000000000000..c3a8b5b6d6f8 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/FailoverGroups.json @@ -0,0 +1,633 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/failoverGroups/{failoverGroupName}": { + "get": { + "tags": [ + "FailoverGroups" + ], + "description": "Gets a failover group.", + "operationId": "FailoverGroups_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "serverName", + "in": "path", + "description": "The name of the server containing the failover group.", + "required": true, + "type": "string" + }, + { + "name": "failoverGroupName", + "in": "path", + "description": "The name of the failover group.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the specified failover group.", + "schema": { + "$ref": "#/definitions/FailoverGroup" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 FailoverGroupCreateOrUpdateRequestInvalidDatabases - The provided databases IDs are not properly constructed database resource IDs. For the example of proper formatting see https://docs.microsoft.com/en-us/rest/api/sql/failovergroups/createorupdate \n\n * 400 FailoverGroupCreateOrUpdateRequestInvalidPartner - The given partners field in create or update failover group request body is empty or invalid. Please provide a valid value of this field. For examples of properly formatted requests see \r\nhttps://docs.microsoft.com/en-us/rest/api/sql/failovergroups/createorupdate \n\n * 400 FailoverGroupCreateOrUpdateRequestDuplicatePartner - One or more of the provided partner servers are already part of the failover group. Please make sure the primary server and all of the given partner servers are unique.\n\n * 400 FailoverGroupCreateOrUpdateRequestInvalidDatabaseServer - One or more of the provided databases do not exist on the primary server of the failover group. Please make sure that all the databases exist on the primary server.\n\n * 400 FailoverGroupCreateOrUpdateRequestUnsupportedPartnerCount - Only one partner server for Failover Group is supported. Please modify your request accordingly. For examples of valid requests see https://docs.microsoft.com/en-us/rest/api/sql/failovergroups/createorupdate \n\n * 400 FailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpoint - The readWriteEndpoint field is required for create or update requests.\n\n * 400 FailoverGroupCreateOrUpdateRequestInvalid - The create or update failover group request body is empty or invalid.\n\n * 400 FailoverGroupUpdateOrDeleteRequestOnSecondary - Modifications to the failover group are not allowed on a secondary server. Execute the request on the primary server.\n\n * 400 FailoverGroupCreateOrUpdateRequestNegativeGracePeriodValues - Grace period value for the read-write endpoint must be non-negative.\n\n * 400 FailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFields - The property failoverWithDataLossGracePeriodMinutes must be provided when failover policy Automatic is selected for the read-write endpoint.\n\n * 400 FailoverGroupCreateOrUpdateRequestInvalidReadWriteFailoverPolicy - The failoverPolicy field for the read-write endpoint is required for create or update requests.\n\n * 400 FailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFieldsForManualPolicy - Grace period value should not be provided when failover policy Manual is selected for the read-write endpoint. Please remove it from request.\n\n * 400 FailoverGroupCreateOrUpdateRequestReadOnlyPropertyModified - The create or update failover group request body should not modify the read-only property '{0}'.\n\n * 400 FailoverGroupFailoverRequestOnPrimary - The failover request should be initiated on the secondary server of failover group.\n\n * 400 FailoverGroupPartnerServerFromDifferentSubscription - Primary server and the partner servers of failover group are from different subscriptions. Cross subscription for servers of failover group is not allowed.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 PartnerServerNotCompatible - 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 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 PlannedFailoverTimedOutForDatabase - User invoked planned failover, it timed out, and a specific database appears to be to blame.\n\n * 400 PlannedFailoverTimedOut - User invoked planned failover, and it timed out while trying to contact the partner management service.\n\n * 400 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 400 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 InvalidFailoverGroupRegion - Servers specified in a Failover Group need to reside in different regions to provide isolation.\n\n * 400 FailoverGroupDoesNotExist - Failover group does not exist on a server.\n\n * 400 FailoverGroupNotSecondary - Failover cannot be initiated from the primary server in a Failover Group.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 DatabaseInFailoverGroupNotPrimary - GeoDR link for the database already exists, but its role is not 'Primary' or it is not continuous copy link.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 UnableToCreateFailoverGroupDueToTableAuditing - Failover Group cannot be created for server that has table auditing turned on.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 UnableToAddDbWithTableAuditingToFailoverGroup - Database with Table Auditing enabled will not be accessible through Failover Group endpoint.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 LimitOfFailoverGroupsPerServerExceeded - Creating new Failover Group will exceed the allowed number of Failover Groups per server.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\n\n * 400 GeoReplicationDatabaseNotSecondary - The operation expects the database to be a replication target.\n\n * 400 GeoReplicaLimitReached - The per-replica replication limit was reached.\n\n * 400 FailoverGroupWithVirtualNetworkRulesNotSupported - Failover Groups configured with an automatic failover policy are currently not supported on servers configured with virtual network firewall rules. Please configure the failover group with manual failover policy.\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 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 404 ResourceNotFound - The requested resource was not found.\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 SourceDatabaseNotFound - The source database does not exist.\n\n * 405 UnsupportedReplicationOperation - An unsupported replication operation was initiated on the database.\n\n * 409 ConflictingServerOperation - An operation is currently in progress for the 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 GeoReplicationCannotBecomePrimaryDuringUndo - User attempted to failover or force-terminate a geo-link while the secondary is in a state where it may not be physically consistent and so cannot enter the primary role.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 FailoverGroupAlreadyExists - Failover group already exists on a given server. Please use different Failover Group name.\n\n * 409 FailoverGroupBusy - Failover Group is busy with another operation.\n\n * 409 DatabaseBelongsToOtherFailoverGroup - Database belongs to other Failover Group and cannot be consider a part of this one.\n\n * 409 DatabaseBeingAddedToFailoverGroup - The database is currently being added to Failover Group, customer needs to wait for this operation to finish to issue remove.\n\n * 409 DatabaseBeingRemovedFromFailoverGroup - The database is currently being removed from failover group, customer needs to wait for this operation to finish to issue add.\n\n * 409 FailoverGroupDnsRecordInUse - A duplicate DNS record exists for the requested endpoint.\n\n * 409 InvalidFailoverGroupName - Invalid Failover Group name was supplied.\n\n * 409 InvalidOperationForDatabaseNotInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 InvalidDatabaseStateForOperation - The operation is not allowed on the database in its current replication state.\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + } + }, + "x-ms-examples": { + "Get failover group": { + "$ref": "./examples/FailoverGroupGet.json" + } + } + }, + "put": { + "tags": [ + "FailoverGroups" + ], + "description": "Creates or updates a failover group.", + "operationId": "FailoverGroups_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "serverName", + "in": "path", + "description": "The name of the server containing the failover group.", + "required": true, + "type": "string" + }, + { + "name": "failoverGroupName", + "in": "path", + "description": "The name of the failover group.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The failover group parameters.", + "required": true, + "schema": { + "$ref": "#/definitions/FailoverGroup" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the failover group.", + "schema": { + "$ref": "#/definitions/FailoverGroup" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 FailoverGroupCreateOrUpdateRequestInvalidDatabases - The provided databases IDs are not properly constructed database resource IDs. For the example of proper formatting see https://docs.microsoft.com/en-us/rest/api/sql/failovergroups/createorupdate \n\n * 400 FailoverGroupCreateOrUpdateRequestInvalidPartner - The given partners field in create or update failover group request body is empty or invalid. Please provide a valid value of this field. For examples of properly formatted requests see \r\nhttps://docs.microsoft.com/en-us/rest/api/sql/failovergroups/createorupdate \n\n * 400 FailoverGroupCreateOrUpdateRequestDuplicatePartner - One or more of the provided partner servers are already part of the failover group. Please make sure the primary server and all of the given partner servers are unique.\n\n * 400 FailoverGroupCreateOrUpdateRequestInvalidDatabaseServer - One or more of the provided databases do not exist on the primary server of the failover group. Please make sure that all the databases exist on the primary server.\n\n * 400 FailoverGroupCreateOrUpdateRequestUnsupportedPartnerCount - Only one partner server for Failover Group is supported. Please modify your request accordingly. For examples of valid requests see https://docs.microsoft.com/en-us/rest/api/sql/failovergroups/createorupdate \n\n * 400 FailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpoint - The readWriteEndpoint field is required for create or update requests.\n\n * 400 FailoverGroupCreateOrUpdateRequestInvalid - The create or update failover group request body is empty or invalid.\n\n * 400 FailoverGroupUpdateOrDeleteRequestOnSecondary - Modifications to the failover group are not allowed on a secondary server. Execute the request on the primary server.\n\n * 400 FailoverGroupCreateOrUpdateRequestNegativeGracePeriodValues - Grace period value for the read-write endpoint must be non-negative.\n\n * 400 FailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFields - The property failoverWithDataLossGracePeriodMinutes must be provided when failover policy Automatic is selected for the read-write endpoint.\n\n * 400 FailoverGroupCreateOrUpdateRequestInvalidReadWriteFailoverPolicy - The failoverPolicy field for the read-write endpoint is required for create or update requests.\n\n * 400 FailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFieldsForManualPolicy - Grace period value should not be provided when failover policy Manual is selected for the read-write endpoint. Please remove it from request.\n\n * 400 FailoverGroupCreateOrUpdateRequestReadOnlyPropertyModified - The create or update failover group request body should not modify the read-only property '{0}'.\n\n * 400 FailoverGroupFailoverRequestOnPrimary - The failover request should be initiated on the secondary server of failover group.\n\n * 400 FailoverGroupPartnerServerFromDifferentSubscription - Primary server and the partner servers of failover group are from different subscriptions. Cross subscription for servers of failover group is not allowed.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 PartnerServerNotCompatible - 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 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 PlannedFailoverTimedOutForDatabase - User invoked planned failover, it timed out, and a specific database appears to be to blame.\n\n * 400 PlannedFailoverTimedOut - User invoked planned failover, and it timed out while trying to contact the partner management service.\n\n * 400 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 400 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 InvalidFailoverGroupRegion - Servers specified in a Failover Group need to reside in different regions to provide isolation.\n\n * 400 FailoverGroupDoesNotExist - Failover group does not exist on a server.\n\n * 400 FailoverGroupNotSecondary - Failover cannot be initiated from the primary server in a Failover Group.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 DatabaseInFailoverGroupNotPrimary - GeoDR link for the database already exists, but its role is not 'Primary' or it is not continuous copy link.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 UnableToCreateFailoverGroupDueToTableAuditing - Failover Group cannot be created for server that has table auditing turned on.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 UnableToAddDbWithTableAuditingToFailoverGroup - Database with Table Auditing enabled will not be accessible through Failover Group endpoint.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 LimitOfFailoverGroupsPerServerExceeded - Creating new Failover Group will exceed the allowed number of Failover Groups per server.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\n\n * 400 GeoReplicationDatabaseNotSecondary - The operation expects the database to be a replication target.\n\n * 400 GeoReplicaLimitReached - The per-replica replication limit was reached.\n\n * 400 FailoverGroupWithVirtualNetworkRulesNotSupported - Failover Groups configured with an automatic failover policy are currently not supported on servers configured with virtual network firewall rules. Please configure the failover group with manual failover policy.\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 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 400 FailoverGroupCreateOrUpdatePartiallySucceeded - Some databases could not be added or removed.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ResourceNotFound - The requested resource was not found.\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 SourceDatabaseNotFound - The source database does not exist.\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 ConflictingServerOperation - An operation is currently in progress for the 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 GeoReplicationCannotBecomePrimaryDuringUndo - User attempted to failover or force-terminate a geo-link while the secondary is in a state where it may not be physically consistent and so cannot enter the primary role.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 FailoverGroupAlreadyExists - Failover group already exists on a given server. Please use different Failover Group name.\n\n * 409 FailoverGroupBusy - Failover Group is busy with another operation.\n\n * 409 DatabaseBelongsToOtherFailoverGroup - Database belongs to other Failover Group and cannot be consider a part of this one.\n\n * 409 DatabaseBeingAddedToFailoverGroup - The database is currently being added to Failover Group, customer needs to wait for this operation to finish to issue remove.\n\n * 409 DatabaseBeingRemovedFromFailoverGroup - The database is currently being removed from failover group, customer needs to wait for this operation to finish to issue add.\n\n * 409 FailoverGroupDnsRecordInUse - A duplicate DNS record exists for the requested endpoint.\n\n * 409 InvalidFailoverGroupName - Invalid Failover Group name was supplied.\n\n * 409 InvalidOperationForDatabaseNotInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 InvalidDatabaseStateForOperation - The operation is not allowed on the database in its current replication state.\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 FailoverGroupUnableToPerformGroupOperationOnDatabases - The list of databases to add/remove to/from Failover Group contains errors that are preventing operation to complete.\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + }, + "202": { + "description": "Accepted" + }, + "201": { + "description": "Successfully created the failover group.", + "schema": { + "$ref": "#/definitions/FailoverGroup" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create failover group": { + "$ref": "./examples/FailoverGroupCreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "FailoverGroups" + ], + "description": "Deletes a failover group.", + "operationId": "FailoverGroups_Delete", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "serverName", + "in": "path", + "description": "The name of the server containing the failover group.", + "required": true, + "type": "string" + }, + { + "name": "failoverGroupName", + "in": "path", + "description": "The name of the failover group.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the failover group." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 FailoverGroupCreateOrUpdateRequestInvalidDatabases - The provided databases IDs are not properly constructed database resource IDs. For the example of proper formatting see https://docs.microsoft.com/en-us/rest/api/sql/failovergroups/createorupdate \n\n * 400 FailoverGroupCreateOrUpdateRequestInvalidPartner - The given partners field in create or update failover group request body is empty or invalid. Please provide a valid value of this field. For examples of properly formatted requests see \r\nhttps://docs.microsoft.com/en-us/rest/api/sql/failovergroups/createorupdate \n\n * 400 FailoverGroupCreateOrUpdateRequestDuplicatePartner - One or more of the provided partner servers are already part of the failover group. Please make sure the primary server and all of the given partner servers are unique.\n\n * 400 FailoverGroupCreateOrUpdateRequestInvalidDatabaseServer - One or more of the provided databases do not exist on the primary server of the failover group. Please make sure that all the databases exist on the primary server.\n\n * 400 FailoverGroupCreateOrUpdateRequestUnsupportedPartnerCount - Only one partner server for Failover Group is supported. Please modify your request accordingly. For examples of valid requests see https://docs.microsoft.com/en-us/rest/api/sql/failovergroups/createorupdate \n\n * 400 FailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpoint - The readWriteEndpoint field is required for create or update requests.\n\n * 400 FailoverGroupCreateOrUpdateRequestInvalid - The create or update failover group request body is empty or invalid.\n\n * 400 FailoverGroupUpdateOrDeleteRequestOnSecondary - Modifications to the failover group are not allowed on a secondary server. Execute the request on the primary server.\n\n * 400 FailoverGroupCreateOrUpdateRequestNegativeGracePeriodValues - Grace period value for the read-write endpoint must be non-negative.\n\n * 400 FailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFields - The property failoverWithDataLossGracePeriodMinutes must be provided when failover policy Automatic is selected for the read-write endpoint.\n\n * 400 FailoverGroupCreateOrUpdateRequestInvalidReadWriteFailoverPolicy - The failoverPolicy field for the read-write endpoint is required for create or update requests.\n\n * 400 FailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFieldsForManualPolicy - Grace period value should not be provided when failover policy Manual is selected for the read-write endpoint. Please remove it from request.\n\n * 400 FailoverGroupCreateOrUpdateRequestReadOnlyPropertyModified - The create or update failover group request body should not modify the read-only property '{0}'.\n\n * 400 FailoverGroupFailoverRequestOnPrimary - The failover request should be initiated on the secondary server of failover group.\n\n * 400 FailoverGroupPartnerServerFromDifferentSubscription - Primary server and the partner servers of failover group are from different subscriptions. Cross subscription for servers of failover group is not allowed.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 PartnerServerNotCompatible - 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 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 PlannedFailoverTimedOutForDatabase - User invoked planned failover, it timed out, and a specific database appears to be to blame.\n\n * 400 PlannedFailoverTimedOut - User invoked planned failover, and it timed out while trying to contact the partner management service.\n\n * 400 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 400 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 InvalidFailoverGroupRegion - Servers specified in a Failover Group need to reside in different regions to provide isolation.\n\n * 400 FailoverGroupDoesNotExist - Failover group does not exist on a server.\n\n * 400 FailoverGroupNotSecondary - Failover cannot be initiated from the primary server in a Failover Group.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 DatabaseInFailoverGroupNotPrimary - GeoDR link for the database already exists, but its role is not 'Primary' or it is not continuous copy link.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 UnableToCreateFailoverGroupDueToTableAuditing - Failover Group cannot be created for server that has table auditing turned on.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 UnableToAddDbWithTableAuditingToFailoverGroup - Database with Table Auditing enabled will not be accessible through Failover Group endpoint.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 LimitOfFailoverGroupsPerServerExceeded - Creating new Failover Group will exceed the allowed number of Failover Groups per server.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\n\n * 400 GeoReplicationDatabaseNotSecondary - The operation expects the database to be a replication target.\n\n * 400 GeoReplicaLimitReached - The per-replica replication limit was reached.\n\n * 400 FailoverGroupWithVirtualNetworkRulesNotSupported - Failover Groups configured with an automatic failover policy are currently not supported on servers configured with virtual network firewall rules. Please configure the failover group with manual failover policy.\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 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ResourceNotFound - The requested resource was not found.\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 SourceDatabaseNotFound - The source database does not exist.\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 ConflictingServerOperation - An operation is currently in progress for the 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 GeoReplicationCannotBecomePrimaryDuringUndo - User attempted to failover or force-terminate a geo-link while the secondary is in a state where it may not be physically consistent and so cannot enter the primary role.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 FailoverGroupAlreadyExists - Failover group already exists on a given server. Please use different Failover Group name.\n\n * 409 FailoverGroupBusy - Failover Group is busy with another operation.\n\n * 409 DatabaseBelongsToOtherFailoverGroup - Database belongs to other Failover Group and cannot be consider a part of this one.\n\n * 409 DatabaseBeingAddedToFailoverGroup - The database is currently being added to Failover Group, customer needs to wait for this operation to finish to issue remove.\n\n * 409 DatabaseBeingRemovedFromFailoverGroup - The database is currently being removed from failover group, customer needs to wait for this operation to finish to issue add.\n\n * 409 FailoverGroupDnsRecordInUse - A duplicate DNS record exists for the requested endpoint.\n\n * 409 InvalidFailoverGroupName - Invalid Failover Group name was supplied.\n\n * 409 InvalidOperationForDatabaseNotInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 InvalidDatabaseStateForOperation - The operation is not allowed on the database in its current replication state.\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "The specified failover group does not exist." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete failover group": { + "$ref": "./examples/FailoverGroupDelete.json" + } + } + }, + "patch": { + "tags": [ + "FailoverGroups" + ], + "description": "Updates a failover group.", + "operationId": "FailoverGroups_Update", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "serverName", + "in": "path", + "description": "The name of the server containing the failover group.", + "required": true, + "type": "string" + }, + { + "name": "failoverGroupName", + "in": "path", + "description": "The name of the failover group.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The failover group parameters.", + "required": true, + "schema": { + "$ref": "#/definitions/FailoverGroupUpdate" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the failover group.", + "schema": { + "$ref": "#/definitions/FailoverGroup" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 FailoverGroupCreateOrUpdateRequestInvalidDatabases - The provided databases IDs are not properly constructed database resource IDs. For the example of proper formatting see https://docs.microsoft.com/en-us/rest/api/sql/failovergroups/createorupdate \n\n * 400 FailoverGroupCreateOrUpdateRequestInvalidPartner - The given partners field in create or update failover group request body is empty or invalid. Please provide a valid value of this field. For examples of properly formatted requests see \r\nhttps://docs.microsoft.com/en-us/rest/api/sql/failovergroups/createorupdate \n\n * 400 FailoverGroupCreateOrUpdateRequestDuplicatePartner - One or more of the provided partner servers are already part of the failover group. Please make sure the primary server and all of the given partner servers are unique.\n\n * 400 FailoverGroupCreateOrUpdateRequestInvalidDatabaseServer - One or more of the provided databases do not exist on the primary server of the failover group. Please make sure that all the databases exist on the primary server.\n\n * 400 FailoverGroupCreateOrUpdateRequestUnsupportedPartnerCount - Only one partner server for Failover Group is supported. Please modify your request accordingly. For examples of valid requests see https://docs.microsoft.com/en-us/rest/api/sql/failovergroups/createorupdate \n\n * 400 FailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpoint - The readWriteEndpoint field is required for create or update requests.\n\n * 400 FailoverGroupCreateOrUpdateRequestInvalid - The create or update failover group request body is empty or invalid.\n\n * 400 FailoverGroupUpdateOrDeleteRequestOnSecondary - Modifications to the failover group are not allowed on a secondary server. Execute the request on the primary server.\n\n * 400 FailoverGroupCreateOrUpdateRequestNegativeGracePeriodValues - Grace period value for the read-write endpoint must be non-negative.\n\n * 400 FailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFields - The property failoverWithDataLossGracePeriodMinutes must be provided when failover policy Automatic is selected for the read-write endpoint.\n\n * 400 FailoverGroupCreateOrUpdateRequestInvalidReadWriteFailoverPolicy - The failoverPolicy field for the read-write endpoint is required for create or update requests.\n\n * 400 FailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFieldsForManualPolicy - Grace period value should not be provided when failover policy Manual is selected for the read-write endpoint. Please remove it from request.\n\n * 400 FailoverGroupCreateOrUpdateRequestReadOnlyPropertyModified - The create or update failover group request body should not modify the read-only property '{0}'.\n\n * 400 FailoverGroupFailoverRequestOnPrimary - The failover request should be initiated on the secondary server of failover group.\n\n * 400 FailoverGroupPartnerServerFromDifferentSubscription - Primary server and the partner servers of failover group are from different subscriptions. Cross subscription for servers of failover group is not allowed.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 PartnerServerNotCompatible - 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 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 PlannedFailoverTimedOutForDatabase - User invoked planned failover, it timed out, and a specific database appears to be to blame.\n\n * 400 PlannedFailoverTimedOut - User invoked planned failover, and it timed out while trying to contact the partner management service.\n\n * 400 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 400 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 InvalidFailoverGroupRegion - Servers specified in a Failover Group need to reside in different regions to provide isolation.\n\n * 400 FailoverGroupDoesNotExist - Failover group does not exist on a server.\n\n * 400 FailoverGroupNotSecondary - Failover cannot be initiated from the primary server in a Failover Group.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 DatabaseInFailoverGroupNotPrimary - GeoDR link for the database already exists, but its role is not 'Primary' or it is not continuous copy link.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 UnableToCreateFailoverGroupDueToTableAuditing - Failover Group cannot be created for server that has table auditing turned on.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 UnableToAddDbWithTableAuditingToFailoverGroup - Database with Table Auditing enabled will not be accessible through Failover Group endpoint.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 LimitOfFailoverGroupsPerServerExceeded - Creating new Failover Group will exceed the allowed number of Failover Groups per server.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\n\n * 400 GeoReplicationDatabaseNotSecondary - The operation expects the database to be a replication target.\n\n * 400 GeoReplicaLimitReached - The per-replica replication limit was reached.\n\n * 400 FailoverGroupWithVirtualNetworkRulesNotSupported - Failover Groups configured with an automatic failover policy are currently not supported on servers configured with virtual network firewall rules. Please configure the failover group with manual failover policy.\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 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 400 FailoverGroupCreateOrUpdatePartiallySucceeded - Some databases could not be added or removed.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ResourceNotFound - The requested resource was not found.\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 SourceDatabaseNotFound - The source database does not exist.\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 ConflictingServerOperation - An operation is currently in progress for the 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 GeoReplicationCannotBecomePrimaryDuringUndo - User attempted to failover or force-terminate a geo-link while the secondary is in a state where it may not be physically consistent and so cannot enter the primary role.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 FailoverGroupAlreadyExists - Failover group already exists on a given server. Please use different Failover Group name.\n\n * 409 FailoverGroupBusy - Failover Group is busy with another operation.\n\n * 409 DatabaseBelongsToOtherFailoverGroup - Database belongs to other Failover Group and cannot be consider a part of this one.\n\n * 409 DatabaseBeingAddedToFailoverGroup - The database is currently being added to Failover Group, customer needs to wait for this operation to finish to issue remove.\n\n * 409 DatabaseBeingRemovedFromFailoverGroup - The database is currently being removed from failover group, customer needs to wait for this operation to finish to issue add.\n\n * 409 FailoverGroupDnsRecordInUse - A duplicate DNS record exists for the requested endpoint.\n\n * 409 InvalidFailoverGroupName - Invalid Failover Group name was supplied.\n\n * 409 InvalidOperationForDatabaseNotInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 InvalidDatabaseStateForOperation - The operation is not allowed on the database in its current replication state.\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 FailoverGroupUnableToPerformGroupOperationOnDatabases - The list of databases to add/remove to/from Failover Group contains errors that are preventing operation to complete.\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update failover group": { + "$ref": "./examples/FailoverGroupUpdate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/failoverGroups": { + "get": { + "tags": [ + "FailoverGroups" + ], + "description": "Lists the failover groups in a server.", + "operationId": "FailoverGroups_ListByServer", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "serverName", + "in": "path", + "description": "The name of the server containing the failover group.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the failover groups.", + "schema": { + "$ref": "#/definitions/FailoverGroupListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 FailoverGroupCreateOrUpdateRequestInvalidDatabases - The provided databases IDs are not properly constructed database resource IDs. For the example of proper formatting see https://docs.microsoft.com/en-us/rest/api/sql/failovergroups/createorupdate \n\n * 400 FailoverGroupCreateOrUpdateRequestInvalidPartner - The given partners field in create or update failover group request body is empty or invalid. Please provide a valid value of this field. For examples of properly formatted requests see \r\nhttps://docs.microsoft.com/en-us/rest/api/sql/failovergroups/createorupdate \n\n * 400 FailoverGroupCreateOrUpdateRequestDuplicatePartner - One or more of the provided partner servers are already part of the failover group. Please make sure the primary server and all of the given partner servers are unique.\n\n * 400 FailoverGroupCreateOrUpdateRequestInvalidDatabaseServer - One or more of the provided databases do not exist on the primary server of the failover group. Please make sure that all the databases exist on the primary server.\n\n * 400 FailoverGroupCreateOrUpdateRequestUnsupportedPartnerCount - Only one partner server for Failover Group is supported. Please modify your request accordingly. For examples of valid requests see https://docs.microsoft.com/en-us/rest/api/sql/failovergroups/createorupdate \n\n * 400 FailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpoint - The readWriteEndpoint field is required for create or update requests.\n\n * 400 FailoverGroupCreateOrUpdateRequestInvalid - The create or update failover group request body is empty or invalid.\n\n * 400 FailoverGroupUpdateOrDeleteRequestOnSecondary - Modifications to the failover group are not allowed on a secondary server. Execute the request on the primary server.\n\n * 400 FailoverGroupCreateOrUpdateRequestNegativeGracePeriodValues - Grace period value for the read-write endpoint must be non-negative.\n\n * 400 FailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFields - The property failoverWithDataLossGracePeriodMinutes must be provided when failover policy Automatic is selected for the read-write endpoint.\n\n * 400 FailoverGroupCreateOrUpdateRequestInvalidReadWriteFailoverPolicy - The failoverPolicy field for the read-write endpoint is required for create or update requests.\n\n * 400 FailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFieldsForManualPolicy - Grace period value should not be provided when failover policy Manual is selected for the read-write endpoint. Please remove it from request.\n\n * 400 FailoverGroupCreateOrUpdateRequestReadOnlyPropertyModified - The create or update failover group request body should not modify the read-only property '{0}'.\n\n * 400 FailoverGroupFailoverRequestOnPrimary - The failover request should be initiated on the secondary server of failover group.\n\n * 400 FailoverGroupPartnerServerFromDifferentSubscription - Primary server and the partner servers of failover group are from different subscriptions. Cross subscription for servers of failover group is not allowed.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 PartnerServerNotCompatible - 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 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 PlannedFailoverTimedOutForDatabase - User invoked planned failover, it timed out, and a specific database appears to be to blame.\n\n * 400 PlannedFailoverTimedOut - User invoked planned failover, and it timed out while trying to contact the partner management service.\n\n * 400 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 400 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 InvalidFailoverGroupRegion - Servers specified in a Failover Group need to reside in different regions to provide isolation.\n\n * 400 FailoverGroupDoesNotExist - Failover group does not exist on a server.\n\n * 400 FailoverGroupNotSecondary - Failover cannot be initiated from the primary server in a Failover Group.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 DatabaseInFailoverGroupNotPrimary - GeoDR link for the database already exists, but its role is not 'Primary' or it is not continuous copy link.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 UnableToCreateFailoverGroupDueToTableAuditing - Failover Group cannot be created for server that has table auditing turned on.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 UnableToAddDbWithTableAuditingToFailoverGroup - Database with Table Auditing enabled will not be accessible through Failover Group endpoint.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 LimitOfFailoverGroupsPerServerExceeded - Creating new Failover Group will exceed the allowed number of Failover Groups per server.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\n\n * 400 GeoReplicationDatabaseNotSecondary - The operation expects the database to be a replication target.\n\n * 400 GeoReplicaLimitReached - The per-replica replication limit was reached.\n\n * 400 FailoverGroupWithVirtualNetworkRulesNotSupported - Failover Groups configured with an automatic failover policy are currently not supported on servers configured with virtual network firewall rules. Please configure the failover group with manual failover policy.\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 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 404 ResourceNotFound - The requested resource was not found.\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 SourceDatabaseNotFound - The source database does not exist.\n\n * 405 UnsupportedReplicationOperation - An unsupported replication operation was initiated on the database.\n\n * 409 ConflictingServerOperation - An operation is currently in progress for the 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 GeoReplicationCannotBecomePrimaryDuringUndo - User attempted to failover or force-terminate a geo-link while the secondary is in a state where it may not be physically consistent and so cannot enter the primary role.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 FailoverGroupAlreadyExists - Failover group already exists on a given server. Please use different Failover Group name.\n\n * 409 FailoverGroupBusy - Failover Group is busy with another operation.\n\n * 409 DatabaseBelongsToOtherFailoverGroup - Database belongs to other Failover Group and cannot be consider a part of this one.\n\n * 409 DatabaseBeingAddedToFailoverGroup - The database is currently being added to Failover Group, customer needs to wait for this operation to finish to issue remove.\n\n * 409 DatabaseBeingRemovedFromFailoverGroup - The database is currently being removed from failover group, customer needs to wait for this operation to finish to issue add.\n\n * 409 FailoverGroupDnsRecordInUse - A duplicate DNS record exists for the requested endpoint.\n\n * 409 InvalidFailoverGroupName - Invalid Failover Group name was supplied.\n\n * 409 InvalidOperationForDatabaseNotInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 InvalidDatabaseStateForOperation - The operation is not allowed on the database in its current replication state.\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List failover group": { + "$ref": "./examples/FailoverGroupList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/failoverGroups/{failoverGroupName}/failover": { + "post": { + "tags": [ + "FailoverGroups" + ], + "description": "Fails over from the current primary server to this server.", + "operationId": "FailoverGroups_Failover", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "serverName", + "in": "path", + "description": "The name of the server containing the failover group.", + "required": true, + "type": "string" + }, + { + "name": "failoverGroupName", + "in": "path", + "description": "The name of the failover group.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully failed over.", + "schema": { + "$ref": "#/definitions/FailoverGroup" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 FailoverGroupCreateOrUpdateRequestInvalidDatabases - The provided databases IDs are not properly constructed database resource IDs. For the example of proper formatting see https://docs.microsoft.com/en-us/rest/api/sql/failovergroups/createorupdate \n\n * 400 FailoverGroupCreateOrUpdateRequestInvalidPartner - The given partners field in create or update failover group request body is empty or invalid. Please provide a valid value of this field. For examples of properly formatted requests see \r\nhttps://docs.microsoft.com/en-us/rest/api/sql/failovergroups/createorupdate \n\n * 400 FailoverGroupCreateOrUpdateRequestDuplicatePartner - One or more of the provided partner servers are already part of the failover group. Please make sure the primary server and all of the given partner servers are unique.\n\n * 400 FailoverGroupCreateOrUpdateRequestInvalidDatabaseServer - One or more of the provided databases do not exist on the primary server of the failover group. Please make sure that all the databases exist on the primary server.\n\n * 400 FailoverGroupCreateOrUpdateRequestUnsupportedPartnerCount - Only one partner server for Failover Group is supported. Please modify your request accordingly. For examples of valid requests see https://docs.microsoft.com/en-us/rest/api/sql/failovergroups/createorupdate \n\n * 400 FailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpoint - The readWriteEndpoint field is required for create or update requests.\n\n * 400 FailoverGroupCreateOrUpdateRequestInvalid - The create or update failover group request body is empty or invalid.\n\n * 400 FailoverGroupUpdateOrDeleteRequestOnSecondary - Modifications to the failover group are not allowed on a secondary server. Execute the request on the primary server.\n\n * 400 FailoverGroupCreateOrUpdateRequestNegativeGracePeriodValues - Grace period value for the read-write endpoint must be non-negative.\n\n * 400 FailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFields - The property failoverWithDataLossGracePeriodMinutes must be provided when failover policy Automatic is selected for the read-write endpoint.\n\n * 400 FailoverGroupCreateOrUpdateRequestInvalidReadWriteFailoverPolicy - The failoverPolicy field for the read-write endpoint is required for create or update requests.\n\n * 400 FailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFieldsForManualPolicy - Grace period value should not be provided when failover policy Manual is selected for the read-write endpoint. Please remove it from request.\n\n * 400 FailoverGroupCreateOrUpdateRequestReadOnlyPropertyModified - The create or update failover group request body should not modify the read-only property '{0}'.\n\n * 400 FailoverGroupFailoverRequestOnPrimary - The failover request should be initiated on the secondary server of failover group.\n\n * 400 FailoverGroupPartnerServerFromDifferentSubscription - Primary server and the partner servers of failover group are from different subscriptions. Cross subscription for servers of failover group is not allowed.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 PartnerServerNotCompatible - 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 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 PlannedFailoverTimedOutForDatabase - User invoked planned failover, it timed out, and a specific database appears to be to blame.\n\n * 400 PlannedFailoverTimedOut - User invoked planned failover, and it timed out while trying to contact the partner management service.\n\n * 400 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 400 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 InvalidFailoverGroupRegion - Servers specified in a Failover Group need to reside in different regions to provide isolation.\n\n * 400 FailoverGroupDoesNotExist - Failover group does not exist on a server.\n\n * 400 FailoverGroupNotSecondary - Failover cannot be initiated from the primary server in a Failover Group.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 DatabaseInFailoverGroupNotPrimary - GeoDR link for the database already exists, but its role is not 'Primary' or it is not continuous copy link.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 UnableToCreateFailoverGroupDueToTableAuditing - Failover Group cannot be created for server that has table auditing turned on.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 UnableToAddDbWithTableAuditingToFailoverGroup - Database with Table Auditing enabled will not be accessible through Failover Group endpoint.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 LimitOfFailoverGroupsPerServerExceeded - Creating new Failover Group will exceed the allowed number of Failover Groups per server.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\n\n * 400 GeoReplicationDatabaseNotSecondary - The operation expects the database to be a replication target.\n\n * 400 GeoReplicaLimitReached - The per-replica replication limit was reached.\n\n * 400 FailoverGroupWithVirtualNetworkRulesNotSupported - Failover Groups configured with an automatic failover policy are currently not supported on servers configured with virtual network firewall rules. Please configure the failover group with manual failover policy.\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 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ResourceNotFound - The requested resource was not found.\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 SourceDatabaseNotFound - The source database does not exist.\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 ConflictingServerOperation - An operation is currently in progress for the 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 GeoReplicationCannotBecomePrimaryDuringUndo - User attempted to failover or force-terminate a geo-link while the secondary is in a state where it may not be physically consistent and so cannot enter the primary role.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 FailoverGroupAlreadyExists - Failover group already exists on a given server. Please use different Failover Group name.\n\n * 409 FailoverGroupBusy - Failover Group is busy with another operation.\n\n * 409 DatabaseBelongsToOtherFailoverGroup - Database belongs to other Failover Group and cannot be consider a part of this one.\n\n * 409 DatabaseBeingAddedToFailoverGroup - The database is currently being added to Failover Group, customer needs to wait for this operation to finish to issue remove.\n\n * 409 DatabaseBeingRemovedFromFailoverGroup - The database is currently being removed from failover group, customer needs to wait for this operation to finish to issue add.\n\n * 409 FailoverGroupDnsRecordInUse - A duplicate DNS record exists for the requested endpoint.\n\n * 409 InvalidFailoverGroupName - Invalid Failover Group name was supplied.\n\n * 409 InvalidOperationForDatabaseNotInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 InvalidDatabaseStateForOperation - The operation is not allowed on the database in its current replication state.\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Planned failover of a failover group": { + "$ref": "./examples/FailoverGroupFailover.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/failoverGroups/{failoverGroupName}/forceFailoverAllowDataLoss": { + "post": { + "tags": [ + "FailoverGroups" + ], + "description": "Fails over from the current primary server to this server. This operation might result in data loss.", + "operationId": "FailoverGroups_ForceFailoverAllowDataLoss", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "serverName", + "in": "path", + "description": "The name of the server containing the failover group.", + "required": true, + "type": "string" + }, + { + "name": "failoverGroupName", + "in": "path", + "description": "The name of the failover group.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully failed over.", + "schema": { + "$ref": "#/definitions/FailoverGroup" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 FailoverGroupCreateOrUpdateRequestInvalidDatabases - The provided databases IDs are not properly constructed database resource IDs. For the example of proper formatting see https://docs.microsoft.com/en-us/rest/api/sql/failovergroups/createorupdate \n\n * 400 FailoverGroupCreateOrUpdateRequestInvalidPartner - The given partners field in create or update failover group request body is empty or invalid. Please provide a valid value of this field. For examples of properly formatted requests see \r\nhttps://docs.microsoft.com/en-us/rest/api/sql/failovergroups/createorupdate \n\n * 400 FailoverGroupCreateOrUpdateRequestDuplicatePartner - One or more of the provided partner servers are already part of the failover group. Please make sure the primary server and all of the given partner servers are unique.\n\n * 400 FailoverGroupCreateOrUpdateRequestInvalidDatabaseServer - One or more of the provided databases do not exist on the primary server of the failover group. Please make sure that all the databases exist on the primary server.\n\n * 400 FailoverGroupCreateOrUpdateRequestUnsupportedPartnerCount - Only one partner server for Failover Group is supported. Please modify your request accordingly. For examples of valid requests see https://docs.microsoft.com/en-us/rest/api/sql/failovergroups/createorupdate \n\n * 400 FailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpoint - The readWriteEndpoint field is required for create or update requests.\n\n * 400 FailoverGroupCreateOrUpdateRequestInvalid - The create or update failover group request body is empty or invalid.\n\n * 400 FailoverGroupUpdateOrDeleteRequestOnSecondary - Modifications to the failover group are not allowed on a secondary server. Execute the request on the primary server.\n\n * 400 FailoverGroupCreateOrUpdateRequestNegativeGracePeriodValues - Grace period value for the read-write endpoint must be non-negative.\n\n * 400 FailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFields - The property failoverWithDataLossGracePeriodMinutes must be provided when failover policy Automatic is selected for the read-write endpoint.\n\n * 400 FailoverGroupCreateOrUpdateRequestInvalidReadWriteFailoverPolicy - The failoverPolicy field for the read-write endpoint is required for create or update requests.\n\n * 400 FailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFieldsForManualPolicy - Grace period value should not be provided when failover policy Manual is selected for the read-write endpoint. Please remove it from request.\n\n * 400 FailoverGroupCreateOrUpdateRequestReadOnlyPropertyModified - The create or update failover group request body should not modify the read-only property '{0}'.\n\n * 400 FailoverGroupFailoverRequestOnPrimary - The failover request should be initiated on the secondary server of failover group.\n\n * 400 FailoverGroupPartnerServerFromDifferentSubscription - Primary server and the partner servers of failover group are from different subscriptions. Cross subscription for servers of failover group is not allowed.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 PartnerServerNotCompatible - 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 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 PlannedFailoverTimedOutForDatabase - User invoked planned failover, it timed out, and a specific database appears to be to blame.\n\n * 400 PlannedFailoverTimedOut - User invoked planned failover, and it timed out while trying to contact the partner management service.\n\n * 400 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 400 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 InvalidFailoverGroupRegion - Servers specified in a Failover Group need to reside in different regions to provide isolation.\n\n * 400 FailoverGroupDoesNotExist - Failover group does not exist on a server.\n\n * 400 FailoverGroupNotSecondary - Failover cannot be initiated from the primary server in a Failover Group.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 DatabaseInFailoverGroupNotPrimary - GeoDR link for the database already exists, but its role is not 'Primary' or it is not continuous copy link.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 UnableToCreateFailoverGroupDueToTableAuditing - Failover Group cannot be created for server that has table auditing turned on.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 UnableToAddDbWithTableAuditingToFailoverGroup - Database with Table Auditing enabled will not be accessible through Failover Group endpoint.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 LimitOfFailoverGroupsPerServerExceeded - Creating new Failover Group will exceed the allowed number of Failover Groups per server.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\n\n * 400 GeoReplicationDatabaseNotSecondary - The operation expects the database to be a replication target.\n\n * 400 GeoReplicaLimitReached - The per-replica replication limit was reached.\n\n * 400 FailoverGroupWithVirtualNetworkRulesNotSupported - Failover Groups configured with an automatic failover policy are currently not supported on servers configured with virtual network firewall rules. Please configure the failover group with manual failover policy.\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 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ResourceNotFound - The requested resource was not found.\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 SourceDatabaseNotFound - The source database does not exist.\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 ConflictingServerOperation - An operation is currently in progress for the 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 GeoReplicationCannotBecomePrimaryDuringUndo - User attempted to failover or force-terminate a geo-link while the secondary is in a state where it may not be physically consistent and so cannot enter the primary role.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 FailoverGroupAlreadyExists - Failover group already exists on a given server. Please use different Failover Group name.\n\n * 409 FailoverGroupBusy - Failover Group is busy with another operation.\n\n * 409 DatabaseBelongsToOtherFailoverGroup - Database belongs to other Failover Group and cannot be consider a part of this one.\n\n * 409 DatabaseBeingAddedToFailoverGroup - The database is currently being added to Failover Group, customer needs to wait for this operation to finish to issue remove.\n\n * 409 DatabaseBeingRemovedFromFailoverGroup - The database is currently being removed from failover group, customer needs to wait for this operation to finish to issue add.\n\n * 409 FailoverGroupDnsRecordInUse - A duplicate DNS record exists for the requested endpoint.\n\n * 409 InvalidFailoverGroupName - Invalid Failover Group name was supplied.\n\n * 409 InvalidOperationForDatabaseNotInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 InvalidDatabaseStateForOperation - The operation is not allowed on the database in its current replication state.\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Forced failover of a failover group allowing data loss": { + "$ref": "./examples/FailoverGroupForceFailoverAllowDataLoss.json" + } + } + } + } + }, + "definitions": { + "FailoverGroupProperties": { + "description": "Properties of a failover group.", + "required": [ + "readWriteEndpoint", + "partnerServers" + ], + "type": "object", + "properties": { + "readWriteEndpoint": { + "$ref": "#/definitions/FailoverGroupReadWriteEndpoint", + "description": "Read-write endpoint of the failover group instance." + }, + "readOnlyEndpoint": { + "$ref": "#/definitions/FailoverGroupReadOnlyEndpoint", + "description": "Read-only endpoint of the failover group instance." + }, + "replicationRole": { + "description": "Local replication role of the failover group instance.", + "enum": [ + "Primary", + "Secondary" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "FailoverGroupReplicationRole", + "modelAsString": true + } + }, + "replicationState": { + "description": "Replication state of the failover group instance.", + "type": "string", + "readOnly": true + }, + "partnerServers": { + "description": "List of partner server information for the failover group.", + "type": "array", + "items": { + "$ref": "#/definitions/PartnerInfo" + }, + "x-ms-mutability": [ + "read", + "create" + ] + }, + "databases": { + "description": "List of databases in the failover group.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "FailoverGroupReadWriteEndpoint": { + "description": "Read-write endpoint of the failover group instance.", + "required": [ + "failoverPolicy" + ], + "type": "object", + "properties": { + "failoverPolicy": { + "description": "Failover policy of the read-write endpoint for the failover group. If failoverPolicy is Automatic then failoverWithDataLossGracePeriodMinutes is required.", + "enum": [ + "Manual", + "Automatic" + ], + "type": "string", + "x-ms-enum": { + "name": "ReadWriteEndpointFailoverPolicy", + "modelAsString": true + } + }, + "failoverWithDataLossGracePeriodMinutes": { + "format": "int32", + "description": "Grace period before failover with data loss is attempted for the read-write endpoint. If failoverPolicy is Automatic then failoverWithDataLossGracePeriodMinutes is required.", + "type": "integer" + } + } + }, + "FailoverGroupReadOnlyEndpoint": { + "description": "Read-only endpoint of the failover group instance.", + "type": "object", + "properties": { + "failoverPolicy": { + "description": "Failover policy of the read-only endpoint for the failover group.", + "enum": [ + "Disabled", + "Enabled" + ], + "type": "string", + "x-ms-enum": { + "name": "ReadOnlyEndpointFailoverPolicy", + "modelAsString": true + } + } + } + }, + "PartnerInfo": { + "description": "Partner server information for the failover group.", + "required": [ + "id" + ], + "type": "object", + "properties": { + "id": { + "description": "Resource identifier of the partner server.", + "type": "string" + }, + "location": { + "description": "Geo location of the partner server.", + "type": "string", + "readOnly": true + }, + "replicationRole": { + "description": "Replication role of the partner server.", + "enum": [ + "Primary", + "Secondary" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "FailoverGroupReplicationRole", + "modelAsString": true + } + } + } + }, + "FailoverGroup": { + "description": "A failover group.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "location": { + "description": "Resource location.", + "type": "string", + "readOnly": true + }, + "tags": { + "description": "Resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "properties": { + "$ref": "#/definitions/FailoverGroupProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "FailoverGroupUpdate": { + "description": "A failover group update request.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/FailoverGroupUpdateProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + }, + "tags": { + "description": "Resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "FailoverGroupUpdateProperties": { + "description": "Properties of a failover group update.", + "type": "object", + "properties": { + "readWriteEndpoint": { + "$ref": "#/definitions/FailoverGroupReadWriteEndpoint", + "description": "Read-write endpoint of the failover group instance." + }, + "readOnlyEndpoint": { + "$ref": "#/definitions/FailoverGroupReadOnlyEndpoint", + "description": "Read-only endpoint of the failover group instance." + }, + "databases": { + "description": "List of databases in the failover group.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "FailoverGroupListResult": { + "description": "A list of failover groups.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/FailoverGroup" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": {}, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/FirewallRules.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/FirewallRules.json new file mode 100644 index 000000000000..eb507341f0e0 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/FirewallRules.json @@ -0,0 +1,377 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/firewallRules/{firewallRuleName}": { + "get": { + "tags": [ + "FirewallRules" + ], + "description": "Gets a firewall rule.", + "operationId": "FirewallRules_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "firewallRuleName", + "in": "path", + "description": "The name of the firewall rule.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the specified firewall rule.", + "schema": { + "$ref": "#/definitions/FirewallRule" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-examples": { + "Get Firewall Rule": { + "$ref": "./examples/FirewallRuleGet.json" + } + } + }, + "put": { + "tags": [ + "FirewallRules" + ], + "description": "Creates or updates a firewall rule.", + "operationId": "FirewallRules_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "firewallRuleName", + "in": "path", + "description": "The name of the firewall rule.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The required parameters for creating or updating a firewall rule.", + "required": true, + "schema": { + "$ref": "#/definitions/FirewallRule" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the firewall rule.", + "schema": { + "$ref": "#/definitions/FirewallRule" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidResourceId - Invalid resource identifier.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 InvalidServerFirewallRuleResourceRequest - The server firewall rule resource request is invalid.\n\n * 400 InvalidServerFirewallRuleResourceParameters - The server firewall rule resource parameter is invalid.\n\n * 400 TooManyFirewallRules - The provided firewall rules are over the limit.\n\n * 400 DenyPublicEndpointEnabled - Unable to create or modify firewall rules when public network interface for the server is disabled. To manage server or database level firewall rules, please enable the public network interface.\n\n * 400 FirewallRuleInvalidRange - The specified firewall rule range is invalid.\n\n * 400 FirewallRuleNameTooLong - The provided firewall rule name is too long\n\n * 400 FirewallRuleNameEmpty - The provided firewall rule name is empty\n\n * 400 FirewallRuleNotIPv4Address - The provided firewall rule address is not IPv4\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + }, + "201": { + "description": "Successfully created the firewall rule.", + "schema": { + "$ref": "#/definitions/FirewallRule" + } + } + }, + "x-ms-examples": { + "Create a firewall rule max/min": { + "$ref": "./examples/FirewallRuleCreate.json" + }, + "Update a firewall rule max/min": { + "$ref": "./examples/FirewallRuleUpdate.json" + } + } + }, + "delete": { + "tags": [ + "FirewallRules" + ], + "description": "Deletes a firewall rule.", + "operationId": "FirewallRules_Delete", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "firewallRuleName", + "in": "path", + "description": "The name of the firewall rule.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the firewall rule." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidResourceId - Invalid resource identifier.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 InvalidServerFirewallRuleResourceRequest - The server firewall rule resource request is invalid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 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." + }, + "204": { + "description": "The specified firewall rule does not exist." + } + }, + "x-ms-examples": { + "Delete a firewall rule": { + "$ref": "./examples/FirewallRuleDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/firewallRules": { + "get": { + "tags": [ + "FirewallRules" + ], + "description": "Gets a list of firewall rules.", + "operationId": "FirewallRules_ListByServer", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of firewall rules.", + "schema": { + "$ref": "#/definitions/FirewallRuleListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Firewall Rules": { + "$ref": "./examples/FirewallRuleList.json" + } + } + }, + "put": { + "tags": [ + "FirewallRules" + ], + "description": "Replaces all firewall rules on the server.", + "operationId": "FirewallRules_Replace", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FirewallRuleList" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the firewall rules.", + "schema": { + "$ref": "#/definitions/FirewallRule" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidResourceId - Invalid resource identifier.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 InvalidServerFirewallRuleResourceRequest - The server firewall rule resource request is invalid.\n\n * 400 InvalidServerFirewallRuleResourceParameters - The server firewall rule resource parameter is invalid.\n\n * 400 TooManyFirewallRules - The provided firewall rules are over the limit.\n\n * 400 DenyPublicEndpointEnabled - Unable to create or modify firewall rules when public network interface for the server is disabled. To manage server or database level firewall rules, please enable the public network interface.\n\n * 400 FirewallRuleInvalidRange - The specified firewall rule range is invalid.\n\n * 400 FirewallRuleNameTooLong - The provided firewall rule name is too long\n\n * 400 FirewallRuleNameEmpty - The provided firewall rule name is empty\n\n * 400 FirewallRuleNotIPv4Address - The provided firewall rule address is not IPv4\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 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." + }, + "202": { + "description": "Creating or updating the Server Firewall Rules is in progress." + } + }, + "x-ms-examples": { + "Replace firewall rules": { + "$ref": "./examples/FirewallRuleReplace.json" + } + } + } + } + }, + "definitions": { + "ServerFirewallRuleProperties": { + "description": "The properties of a server firewall rule.", + "type": "object", + "properties": { + "startIpAddress": { + "description": "The start IP address of the firewall rule. Must be IPv4 format. Use value '0.0.0.0' for all Azure-internal IP addresses.", + "type": "string" + }, + "endIpAddress": { + "description": "The end IP address of the firewall rule. Must be IPv4 format. Must be greater than or equal to startIpAddress. Use value '0.0.0.0' for all Azure-internal IP addresses.", + "type": "string" + } + } + }, + "ResourceWithWritableName": { + "description": "ARM resource.", + "type": "object", + "properties": { + "id": { + "description": "Resource ID.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Resource name.", + "type": "string" + }, + "type": { + "description": "Resource type.", + "type": "string", + "readOnly": true + } + }, + "x-ms-azure-resource": true + }, + "ProxyResourceWithWritableName": { + "description": "ARM proxy resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ResourceWithWritableName" + } + ], + "properties": {} + }, + "FirewallRule": { + "description": "A server firewall rule.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResourceWithWritableName" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ServerFirewallRuleProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "FirewallRuleListResult": { + "description": "The response to a list firewall rules request", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/FirewallRule" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "FirewallRuleList": { + "description": "A list of server firewall rules.", + "type": "object", + "properties": { + "values": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallRule" + } + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/InstanceFailoverGroups.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/InstanceFailoverGroups.json new file mode 100644 index 000000000000..ae7f6345191d --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/InstanceFailoverGroups.json @@ -0,0 +1,528 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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/locations/{locationName}/instanceFailoverGroups/{failoverGroupName}": { + "get": { + "tags": [ + "InstanceFailoverGroups" + ], + "description": "Gets a failover group.", + "operationId": "InstanceFailoverGroups_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "locationName", + "in": "path", + "description": "The name of the region where the resource is located.", + "required": true, + "type": "string" + }, + { + "name": "failoverGroupName", + "in": "path", + "description": "The name of the failover group.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the specified failover group.", + "schema": { + "$ref": "#/definitions/InstanceFailoverGroup" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidPartner - The given partners field in create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestDuplicatePartner - One or more of the provided partner servers are already part of the instance failover group. Please make sure the primary server and all of the given partner servers are unique.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidManagedInstanceRegion - The provided partner managed instance region in the instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPartnerCount - Only one partner region is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPairCount - Only one managed instance pair is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpoint - The readWriteEndpoint field is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalid - The create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupUpdateOrDeleteRequestOnSecondary - Modifications to the instance failover group are not allowed on a secondary server. Execute the request on the primary server.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestNegativeGracePeriodValues - Grace period value for the read-write endpoint must be non-negative.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFields - The property failoverWithDataLossGracePeriodMinutes must be provided when failover policy Automatic is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteFailoverPolicy - The failoverPolicy field for the read-write endpoint is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFieldsForManualPolicy - Grace period value should not be provided when failover policy Manual is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestReadOnlyPropertyModified - The create or update instance failover group request body should not modify the read-only property '{0}'.\n\n * 400 InstanceFailoverGroupFailoverRequestOnPrimary - The failover request should be initiated on the secondary server of instance failover group.\n\n * 400 InstanceFailoverGroupPartnerManagedInstanceFromDifferentSubscription - Primary server and the partner server of failover group are from different subscriptions. Cross subscription for servers of failover group is not allowed.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 GeoDrInstanceSizeMismatch - Primary managed instance and partner managed instance do not have the same storage size.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 GeoDrSecondaryInstanceNotEmpty - Secondary managed instance has user databases. To create an instance failover group the secondary managed instance needs to be empty.\n\n * 400 InstanceFailoverGroupIncorrectNetworkingConfiguration - Networking configuration is incorrect. Primary server's replication traffic cannot reach secondary server.\n\n * 400 IncorrectReplicationLinkState - The operation expects the database to be in an expected state on the replication link.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\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 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 InvalidFailoverGroupRegion - Servers specified in an Instance Failover Group need to reside in different regions to provide isolation.\n\n * 400 InstanceFailoverGroupDoesNotExist - Failover group does not exist on a server.\n\n * 400 InstanceFailoverGroupNotSecondary - Failover cannot be initiated from the primary server in a instance failover group.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 PlannedFailoverTimedOutForDatabase - User invoked planned failover, it timed out, and a specific database appears to be to blame.\n\n * 400 PlannedFailoverTimedOut - User invoked planned failover, and it timed out while trying to contact the partner management service.\n\n * 400 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 400 GeoReplicationDatabaseNotSecondary - The operation expects the database to be a replication target.\n\n * 400 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\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 * 405 UnsupportedReplicationOperation - An unsupported replication operation was initiated on the database.\n\n * 409 ManagedInstanceHasHybridLink - User tried to initiate operation that is not supported when managed instance has a hybrid link configured.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 InstanceFailoverGroupAlreadyExists - Failover group already exists on a given server.\n\n * 409 InstanceFailoverGroupBusy - Instance failover group is busy with another operation.\n\n * 409 GeoReplicationCannotBecomePrimaryDuringUndo - User attempted to failover or force-terminate a geo-link while the secondary is in a state where it may not be physically consistent and so cannot enter the primary role.\n\n * 409 InstanceFailoverGroupDnsRecordInUse - A duplicate DNS record exists for the requested endpoint.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 InvalidFailoverGroupName - Invalid Instance Failover Group name was supplied.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\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 InvalidOperationForDatabaseNotInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 InvalidDatabaseStateForOperation - The operation is not allowed on the database in its current replication state.\n\n * 409 DuplicateGeoDrRelation - The databases are already in a replication relation. This is a duplicate request.\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + } + }, + "x-ms-examples": { + "Get failover group": { + "$ref": "./examples/InstanceFailoverGroupGet.json" + } + } + }, + "put": { + "tags": [ + "InstanceFailoverGroups" + ], + "description": "Creates or updates a failover group.", + "operationId": "InstanceFailoverGroups_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "locationName", + "in": "path", + "description": "The name of the region where the resource is located.", + "required": true, + "type": "string" + }, + { + "name": "failoverGroupName", + "in": "path", + "description": "The name of the failover group.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The failover group parameters.", + "required": true, + "schema": { + "$ref": "#/definitions/InstanceFailoverGroup" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the failover group.", + "schema": { + "$ref": "#/definitions/InstanceFailoverGroup" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidPartner - The given partners field in create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestDuplicatePartner - One or more of the provided partner servers are already part of the instance failover group. Please make sure the primary server and all of the given partner servers are unique.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidManagedInstanceRegion - The provided partner managed instance region in the instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPartnerCount - Only one partner region is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPairCount - Only one managed instance pair is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpoint - The readWriteEndpoint field is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalid - The create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupUpdateOrDeleteRequestOnSecondary - Modifications to the instance failover group are not allowed on a secondary server. Execute the request on the primary server.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestNegativeGracePeriodValues - Grace period value for the read-write endpoint must be non-negative.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFields - The property failoverWithDataLossGracePeriodMinutes must be provided when failover policy Automatic is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteFailoverPolicy - The failoverPolicy field for the read-write endpoint is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFieldsForManualPolicy - Grace period value should not be provided when failover policy Manual is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestReadOnlyPropertyModified - The create or update instance failover group request body should not modify the read-only property '{0}'.\n\n * 400 InstanceFailoverGroupFailoverRequestOnPrimary - The failover request should be initiated on the secondary server of instance failover group.\n\n * 400 InstanceFailoverGroupPartnerManagedInstanceFromDifferentSubscription - Primary server and the partner server of failover group are from different subscriptions. Cross subscription for servers of failover group is not allowed.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 GeoDrInstanceSizeMismatch - Primary managed instance and partner managed instance do not have the same storage size.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 GeoDrSecondaryInstanceNotEmpty - Secondary managed instance has user databases. To create an instance failover group the secondary managed instance needs to be empty.\n\n * 400 InstanceFailoverGroupIncorrectNetworkingConfiguration - Networking configuration is incorrect. Primary server's replication traffic cannot reach secondary server.\n\n * 400 IncorrectReplicationLinkState - The operation expects the database to be in an expected state on the replication link.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\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 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 InvalidFailoverGroupRegion - Servers specified in an Instance Failover Group need to reside in different regions to provide isolation.\n\n * 400 InstanceFailoverGroupDoesNotExist - Failover group does not exist on a server.\n\n * 400 InstanceFailoverGroupNotSecondary - Failover cannot be initiated from the primary server in a instance failover group.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 PlannedFailoverTimedOutForDatabase - User invoked planned failover, it timed out, and a specific database appears to be to blame.\n\n * 400 PlannedFailoverTimedOut - User invoked planned failover, and it timed out while trying to contact the partner management service.\n\n * 400 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 400 GeoReplicationDatabaseNotSecondary - The operation expects the database to be a replication target.\n\n * 400 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\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 * 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 ManagedInstanceHasHybridLink - User tried to initiate operation that is not supported when managed instance has a hybrid link configured.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 InstanceFailoverGroupAlreadyExists - Failover group already exists on a given server.\n\n * 409 InstanceFailoverGroupBusy - Instance failover group is busy with another operation.\n\n * 409 GeoReplicationCannotBecomePrimaryDuringUndo - User attempted to failover or force-terminate a geo-link while the secondary is in a state where it may not be physically consistent and so cannot enter the primary role.\n\n * 409 InstanceFailoverGroupDnsRecordInUse - A duplicate DNS record exists for the requested endpoint.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 InvalidFailoverGroupName - Invalid Instance Failover Group name was supplied.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\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 InvalidOperationForDatabaseNotInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 InvalidDatabaseStateForOperation - The operation is not allowed on the database in its current replication state.\n\n * 409 DuplicateGeoDrRelation - The databases are already in a replication relation. This is a duplicate request.\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + }, + "202": { + "description": "Accepted" + }, + "201": { + "description": "Successfully created the failover group.", + "schema": { + "$ref": "#/definitions/InstanceFailoverGroup" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create failover group": { + "$ref": "./examples/InstanceFailoverGroupCreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "InstanceFailoverGroups" + ], + "description": "Deletes a failover group.", + "operationId": "InstanceFailoverGroups_Delete", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "locationName", + "in": "path", + "description": "The name of the region where the resource is located.", + "required": true, + "type": "string" + }, + { + "name": "failoverGroupName", + "in": "path", + "description": "The name of the failover group.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the failover group." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidPartner - The given partners field in create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestDuplicatePartner - One or more of the provided partner servers are already part of the instance failover group. Please make sure the primary server and all of the given partner servers are unique.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidManagedInstanceRegion - The provided partner managed instance region in the instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPartnerCount - Only one partner region is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPairCount - Only one managed instance pair is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpoint - The readWriteEndpoint field is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalid - The create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupUpdateOrDeleteRequestOnSecondary - Modifications to the instance failover group are not allowed on a secondary server. Execute the request on the primary server.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestNegativeGracePeriodValues - Grace period value for the read-write endpoint must be non-negative.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFields - The property failoverWithDataLossGracePeriodMinutes must be provided when failover policy Automatic is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteFailoverPolicy - The failoverPolicy field for the read-write endpoint is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFieldsForManualPolicy - Grace period value should not be provided when failover policy Manual is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestReadOnlyPropertyModified - The create or update instance failover group request body should not modify the read-only property '{0}'.\n\n * 400 InstanceFailoverGroupFailoverRequestOnPrimary - The failover request should be initiated on the secondary server of instance failover group.\n\n * 400 InstanceFailoverGroupPartnerManagedInstanceFromDifferentSubscription - Primary server and the partner server of failover group are from different subscriptions. Cross subscription for servers of failover group is not allowed.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 GeoDrInstanceSizeMismatch - Primary managed instance and partner managed instance do not have the same storage size.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 GeoDrSecondaryInstanceNotEmpty - Secondary managed instance has user databases. To create an instance failover group the secondary managed instance needs to be empty.\n\n * 400 InstanceFailoverGroupIncorrectNetworkingConfiguration - Networking configuration is incorrect. Primary server's replication traffic cannot reach secondary server.\n\n * 400 IncorrectReplicationLinkState - The operation expects the database to be in an expected state on the replication link.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\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 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 InvalidFailoverGroupRegion - Servers specified in an Instance Failover Group need to reside in different regions to provide isolation.\n\n * 400 InstanceFailoverGroupDoesNotExist - Failover group does not exist on a server.\n\n * 400 InstanceFailoverGroupNotSecondary - Failover cannot be initiated from the primary server in a instance failover group.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 PlannedFailoverTimedOutForDatabase - User invoked planned failover, it timed out, and a specific database appears to be to blame.\n\n * 400 PlannedFailoverTimedOut - User invoked planned failover, and it timed out while trying to contact the partner management service.\n\n * 400 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 400 GeoReplicationDatabaseNotSecondary - The operation expects the database to be a replication target.\n\n * 400 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\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 * 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 ManagedInstanceHasHybridLink - User tried to initiate operation that is not supported when managed instance has a hybrid link configured.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 InstanceFailoverGroupAlreadyExists - Failover group already exists on a given server.\n\n * 409 InstanceFailoverGroupBusy - Instance failover group is busy with another operation.\n\n * 409 GeoReplicationCannotBecomePrimaryDuringUndo - User attempted to failover or force-terminate a geo-link while the secondary is in a state where it may not be physically consistent and so cannot enter the primary role.\n\n * 409 InstanceFailoverGroupDnsRecordInUse - A duplicate DNS record exists for the requested endpoint.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 InvalidFailoverGroupName - Invalid Instance Failover Group name was supplied.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\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 InvalidOperationForDatabaseNotInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 InvalidDatabaseStateForOperation - The operation is not allowed on the database in its current replication state.\n\n * 409 DuplicateGeoDrRelation - The databases are already in a replication relation. This is a duplicate request.\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "The specified failover group does not exist." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete failover group": { + "$ref": "./examples/InstanceFailoverGroupDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/locations/{locationName}/instanceFailoverGroups": { + "get": { + "tags": [ + "InstanceFailoverGroups" + ], + "description": "Lists the failover groups in a location.", + "operationId": "InstanceFailoverGroups_ListByLocation", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "locationName", + "in": "path", + "description": "The name of the region where the resource is located.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the failover groups.", + "schema": { + "$ref": "#/definitions/InstanceFailoverGroupListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidPartner - The given partners field in create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestDuplicatePartner - One or more of the provided partner servers are already part of the instance failover group. Please make sure the primary server and all of the given partner servers are unique.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidManagedInstanceRegion - The provided partner managed instance region in the instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPartnerCount - Only one partner region is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPairCount - Only one managed instance pair is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpoint - The readWriteEndpoint field is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalid - The create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupUpdateOrDeleteRequestOnSecondary - Modifications to the instance failover group are not allowed on a secondary server. Execute the request on the primary server.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestNegativeGracePeriodValues - Grace period value for the read-write endpoint must be non-negative.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFields - The property failoverWithDataLossGracePeriodMinutes must be provided when failover policy Automatic is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteFailoverPolicy - The failoverPolicy field for the read-write endpoint is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFieldsForManualPolicy - Grace period value should not be provided when failover policy Manual is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestReadOnlyPropertyModified - The create or update instance failover group request body should not modify the read-only property '{0}'.\n\n * 400 InstanceFailoverGroupFailoverRequestOnPrimary - The failover request should be initiated on the secondary server of instance failover group.\n\n * 400 InstanceFailoverGroupPartnerManagedInstanceFromDifferentSubscription - Primary server and the partner server of failover group are from different subscriptions. Cross subscription for servers of failover group is not allowed.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 GeoDrInstanceSizeMismatch - Primary managed instance and partner managed instance do not have the same storage size.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 GeoDrSecondaryInstanceNotEmpty - Secondary managed instance has user databases. To create an instance failover group the secondary managed instance needs to be empty.\n\n * 400 InstanceFailoverGroupIncorrectNetworkingConfiguration - Networking configuration is incorrect. Primary server's replication traffic cannot reach secondary server.\n\n * 400 IncorrectReplicationLinkState - The operation expects the database to be in an expected state on the replication link.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\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 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 InvalidFailoverGroupRegion - Servers specified in an Instance Failover Group need to reside in different regions to provide isolation.\n\n * 400 InstanceFailoverGroupDoesNotExist - Failover group does not exist on a server.\n\n * 400 InstanceFailoverGroupNotSecondary - Failover cannot be initiated from the primary server in a instance failover group.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 PlannedFailoverTimedOutForDatabase - User invoked planned failover, it timed out, and a specific database appears to be to blame.\n\n * 400 PlannedFailoverTimedOut - User invoked planned failover, and it timed out while trying to contact the partner management service.\n\n * 400 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 400 GeoReplicationDatabaseNotSecondary - The operation expects the database to be a replication target.\n\n * 400 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\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 * 405 UnsupportedReplicationOperation - An unsupported replication operation was initiated on the database.\n\n * 409 ManagedInstanceHasHybridLink - User tried to initiate operation that is not supported when managed instance has a hybrid link configured.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 InstanceFailoverGroupAlreadyExists - Failover group already exists on a given server.\n\n * 409 InstanceFailoverGroupBusy - Instance failover group is busy with another operation.\n\n * 409 GeoReplicationCannotBecomePrimaryDuringUndo - User attempted to failover or force-terminate a geo-link while the secondary is in a state where it may not be physically consistent and so cannot enter the primary role.\n\n * 409 InstanceFailoverGroupDnsRecordInUse - A duplicate DNS record exists for the requested endpoint.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 InvalidFailoverGroupName - Invalid Instance Failover Group name was supplied.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\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 InvalidOperationForDatabaseNotInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 InvalidDatabaseStateForOperation - The operation is not allowed on the database in its current replication state.\n\n * 409 DuplicateGeoDrRelation - The databases are already in a replication relation. This is a duplicate request.\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List failover group": { + "$ref": "./examples/InstanceFailoverGroupList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/locations/{locationName}/instanceFailoverGroups/{failoverGroupName}/failover": { + "post": { + "tags": [ + "InstanceFailoverGroups" + ], + "description": "Fails over from the current primary managed instance to this managed instance.", + "operationId": "InstanceFailoverGroups_Failover", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "locationName", + "in": "path", + "description": "The name of the region where the resource is located.", + "required": true, + "type": "string" + }, + { + "name": "failoverGroupName", + "in": "path", + "description": "The name of the failover group.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully failed over.", + "schema": { + "$ref": "#/definitions/InstanceFailoverGroup" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidPartner - The given partners field in create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestDuplicatePartner - One or more of the provided partner servers are already part of the instance failover group. Please make sure the primary server and all of the given partner servers are unique.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidManagedInstanceRegion - The provided partner managed instance region in the instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPartnerCount - Only one partner region is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPairCount - Only one managed instance pair is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpoint - The readWriteEndpoint field is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalid - The create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupUpdateOrDeleteRequestOnSecondary - Modifications to the instance failover group are not allowed on a secondary server. Execute the request on the primary server.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestNegativeGracePeriodValues - Grace period value for the read-write endpoint must be non-negative.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFields - The property failoverWithDataLossGracePeriodMinutes must be provided when failover policy Automatic is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteFailoverPolicy - The failoverPolicy field for the read-write endpoint is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFieldsForManualPolicy - Grace period value should not be provided when failover policy Manual is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestReadOnlyPropertyModified - The create or update instance failover group request body should not modify the read-only property '{0}'.\n\n * 400 InstanceFailoverGroupFailoverRequestOnPrimary - The failover request should be initiated on the secondary server of instance failover group.\n\n * 400 InstanceFailoverGroupPartnerManagedInstanceFromDifferentSubscription - Primary server and the partner server of failover group are from different subscriptions. Cross subscription for servers of failover group is not allowed.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 GeoDrInstanceSizeMismatch - Primary managed instance and partner managed instance do not have the same storage size.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 GeoDrSecondaryInstanceNotEmpty - Secondary managed instance has user databases. To create an instance failover group the secondary managed instance needs to be empty.\n\n * 400 InstanceFailoverGroupIncorrectNetworkingConfiguration - Networking configuration is incorrect. Primary server's replication traffic cannot reach secondary server.\n\n * 400 IncorrectReplicationLinkState - The operation expects the database to be in an expected state on the replication link.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\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 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 InvalidFailoverGroupRegion - Servers specified in an Instance Failover Group need to reside in different regions to provide isolation.\n\n * 400 InstanceFailoverGroupDoesNotExist - Failover group does not exist on a server.\n\n * 400 InstanceFailoverGroupNotSecondary - Failover cannot be initiated from the primary server in a instance failover group.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 PlannedFailoverTimedOutForDatabase - User invoked planned failover, it timed out, and a specific database appears to be to blame.\n\n * 400 PlannedFailoverTimedOut - User invoked planned failover, and it timed out while trying to contact the partner management service.\n\n * 400 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 400 GeoReplicationDatabaseNotSecondary - The operation expects the database to be a replication target.\n\n * 400 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\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 * 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 ManagedInstanceHasHybridLink - User tried to initiate operation that is not supported when managed instance has a hybrid link configured.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 InstanceFailoverGroupAlreadyExists - Failover group already exists on a given server.\n\n * 409 InstanceFailoverGroupBusy - Instance failover group is busy with another operation.\n\n * 409 GeoReplicationCannotBecomePrimaryDuringUndo - User attempted to failover or force-terminate a geo-link while the secondary is in a state where it may not be physically consistent and so cannot enter the primary role.\n\n * 409 InstanceFailoverGroupDnsRecordInUse - A duplicate DNS record exists for the requested endpoint.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 InvalidFailoverGroupName - Invalid Instance Failover Group name was supplied.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\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 InvalidOperationForDatabaseNotInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 InvalidDatabaseStateForOperation - The operation is not allowed on the database in its current replication state.\n\n * 409 DuplicateGeoDrRelation - The databases are already in a replication relation. This is a duplicate request.\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Planned failover of a failover group": { + "$ref": "./examples/InstanceFailoverGroupFailover.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/locations/{locationName}/instanceFailoverGroups/{failoverGroupName}/forceFailoverAllowDataLoss": { + "post": { + "tags": [ + "InstanceFailoverGroups" + ], + "description": "Fails over from the current primary managed instance to this managed instance. This operation might result in data loss.", + "operationId": "InstanceFailoverGroups_ForceFailoverAllowDataLoss", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "locationName", + "in": "path", + "description": "The name of the region where the resource is located.", + "required": true, + "type": "string" + }, + { + "name": "failoverGroupName", + "in": "path", + "description": "The name of the failover group.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully failed over.", + "schema": { + "$ref": "#/definitions/InstanceFailoverGroup" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidPartner - The given partners field in create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestDuplicatePartner - One or more of the provided partner servers are already part of the instance failover group. Please make sure the primary server and all of the given partner servers are unique.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidManagedInstanceRegion - The provided partner managed instance region in the instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPartnerCount - Only one partner region is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestUnsupportedPairCount - Only one managed instance pair is supported.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpoint - The readWriteEndpoint field is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalid - The create or update instance failover group request body is empty or invalid.\n\n * 400 InstanceFailoverGroupUpdateOrDeleteRequestOnSecondary - Modifications to the instance failover group are not allowed on a secondary server. Execute the request on the primary server.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestNegativeGracePeriodValues - Grace period value for the read-write endpoint must be non-negative.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFields - The property failoverWithDataLossGracePeriodMinutes must be provided when failover policy Automatic is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteFailoverPolicy - The failoverPolicy field for the read-write endpoint is required for create or update requests.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFieldsForManualPolicy - Grace period value should not be provided when failover policy Manual is selected for the read-write endpoint.\n\n * 400 InstanceFailoverGroupCreateOrUpdateRequestReadOnlyPropertyModified - The create or update instance failover group request body should not modify the read-only property '{0}'.\n\n * 400 InstanceFailoverGroupFailoverRequestOnPrimary - The failover request should be initiated on the secondary server of instance failover group.\n\n * 400 InstanceFailoverGroupPartnerManagedInstanceFromDifferentSubscription - Primary server and the partner server of failover group are from different subscriptions. Cross subscription for servers of failover group is not allowed.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 GeoDrInstanceSizeMismatch - Primary managed instance and partner managed instance do not have the same storage size.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 GeoDrSecondaryInstanceNotEmpty - Secondary managed instance has user databases. To create an instance failover group the secondary managed instance needs to be empty.\n\n * 400 InstanceFailoverGroupIncorrectNetworkingConfiguration - Networking configuration is incorrect. Primary server's replication traffic cannot reach secondary server.\n\n * 400 IncorrectReplicationLinkState - The operation expects the database to be in an expected state on the replication link.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\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 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 InvalidFailoverGroupRegion - Servers specified in an Instance Failover Group need to reside in different regions to provide isolation.\n\n * 400 InstanceFailoverGroupDoesNotExist - Failover group does not exist on a server.\n\n * 400 InstanceFailoverGroupNotSecondary - Failover cannot be initiated from the primary server in a instance failover group.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 PlannedFailoverTimedOutForDatabase - User invoked planned failover, it timed out, and a specific database appears to be to blame.\n\n * 400 PlannedFailoverTimedOut - User invoked planned failover, and it timed out while trying to contact the partner management service.\n\n * 400 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 400 GeoReplicationDatabaseNotSecondary - The operation expects the database to be a replication target.\n\n * 400 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\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 * 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 ManagedInstanceHasHybridLink - User tried to initiate operation that is not supported when managed instance has a hybrid link configured.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 InstanceFailoverGroupAlreadyExists - Failover group already exists on a given server.\n\n * 409 InstanceFailoverGroupBusy - Instance failover group is busy with another operation.\n\n * 409 GeoReplicationCannotBecomePrimaryDuringUndo - User attempted to failover or force-terminate a geo-link while the secondary is in a state where it may not be physically consistent and so cannot enter the primary role.\n\n * 409 InstanceFailoverGroupDnsRecordInUse - A duplicate DNS record exists for the requested endpoint.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 InvalidFailoverGroupName - Invalid Instance Failover Group name was supplied.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\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 InvalidOperationForDatabaseNotInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 InvalidDatabaseStateForOperation - The operation is not allowed on the database in its current replication state.\n\n * 409 DuplicateGeoDrRelation - The databases are already in a replication relation. This is a duplicate request.\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Forced failover of a failover group allowing data loss": { + "$ref": "./examples/InstanceFailoverGroupForceFailoverAllowDataLoss.json" + } + } + } + } + }, + "definitions": { + "InstanceFailoverGroupProperties": { + "description": "Properties of a instance failover group.", + "required": [ + "readWriteEndpoint", + "partnerRegions", + "managedInstancePairs" + ], + "type": "object", + "properties": { + "readWriteEndpoint": { + "$ref": "#/definitions/InstanceFailoverGroupReadWriteEndpoint", + "description": "Read-write endpoint of the failover group instance." + }, + "readOnlyEndpoint": { + "$ref": "#/definitions/InstanceFailoverGroupReadOnlyEndpoint", + "description": "Read-only endpoint of the failover group instance." + }, + "replicationRole": { + "description": "Local replication role of the failover group instance.", + "enum": [ + "Primary", + "Secondary" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "InstanceFailoverGroupReplicationRole", + "modelAsString": true + } + }, + "replicationState": { + "description": "Replication state of the failover group instance.", + "type": "string", + "readOnly": true + }, + "partnerRegions": { + "description": "Partner region information for the failover group.", + "type": "array", + "items": { + "$ref": "#/definitions/PartnerRegionInfo" + }, + "x-ms-mutability": [ + "read", + "create" + ] + }, + "managedInstancePairs": { + "description": "List of managed instance pairs in the failover group.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedInstancePairInfo" + } + } + } + }, + "InstanceFailoverGroupReadWriteEndpoint": { + "description": "Read-write endpoint of the failover group instance.", + "required": [ + "failoverPolicy" + ], + "type": "object", + "properties": { + "failoverPolicy": { + "description": "Failover policy of the read-write endpoint for the failover group. If failoverPolicy is Automatic then failoverWithDataLossGracePeriodMinutes is required.", + "enum": [ + "Manual", + "Automatic" + ], + "type": "string", + "x-ms-enum": { + "name": "ReadWriteEndpointFailoverPolicy", + "modelAsString": true + } + }, + "failoverWithDataLossGracePeriodMinutes": { + "format": "int32", + "description": "Grace period before failover with data loss is attempted for the read-write endpoint. If failoverPolicy is Automatic then failoverWithDataLossGracePeriodMinutes is required.", + "type": "integer" + } + } + }, + "InstanceFailoverGroupReadOnlyEndpoint": { + "description": "Read-only endpoint of the failover group instance.", + "type": "object", + "properties": { + "failoverPolicy": { + "description": "Failover policy of the read-only endpoint for the failover group.", + "enum": [ + "Disabled", + "Enabled" + ], + "type": "string", + "x-ms-enum": { + "name": "ReadOnlyEndpointFailoverPolicy", + "modelAsString": true + } + } + } + }, + "PartnerRegionInfo": { + "description": "Partner region information for the failover group.", + "type": "object", + "properties": { + "location": { + "description": "Geo location of the partner managed instances.", + "type": "string" + }, + "replicationRole": { + "description": "Replication role of the partner managed instances.", + "enum": [ + "Primary", + "Secondary" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "InstanceFailoverGroupReplicationRole", + "modelAsString": true + } + } + } + }, + "ManagedInstancePairInfo": { + "description": "Pairs of Managed Instances in the failover group.", + "type": "object", + "properties": { + "primaryManagedInstanceId": { + "description": "Id of Primary Managed Instance in pair.", + "type": "string" + }, + "partnerManagedInstanceId": { + "description": "Id of Partner Managed Instance in pair.", + "type": "string" + } + } + }, + "InstanceFailoverGroup": { + "description": "An instance failover group.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/InstanceFailoverGroupProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "InstanceFailoverGroupListResult": { + "description": "A list of instance failover groups.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/InstanceFailoverGroup" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": {}, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/InstancePools.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/InstancePools.json new file mode 100644 index 000000000000..9f45b90fb91a --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/InstancePools.json @@ -0,0 +1,413 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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/instancePools/{instancePoolName}": { + "get": { + "tags": [ + "InstancePools" + ], + "description": "Gets an instance pool.", + "operationId": "InstancePools_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "instancePoolName", + "in": "path", + "description": "The name of the instance pool to be retrieved.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the specified instance pool.", + "schema": { + "$ref": "#/definitions/InstancePool" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 InstancePoolNotFound - An instance pool cannot be found" + } + }, + "x-ms-examples": { + "Get an instance pool": { + "$ref": "./examples/GetInstancePool.json" + } + } + }, + "put": { + "tags": [ + "InstancePools" + ], + "description": "Creates or updates an instance pool.", + "operationId": "InstancePools_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "instancePoolName", + "in": "path", + "description": "The name of the instance pool to be created or updated.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The requested instance pool resource state.", + "required": true, + "schema": { + "$ref": "#/definitions/InstancePool" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the instance pool.", + "schema": { + "$ref": "#/definitions/InstancePool" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidResourceRequestBody - The resource or resource properties in the request body is empty or invalid.\n\n * 400 MissingSkuName - Sku name is required.\n\n * 400 InstancePoolRequestedVcoreCountIsInvalid - Requested vcore count for instance pool is invalid\n\n * 400 InstancePoolRequestMissingSku - Instance pool request is missing sku\n\n * 400 InstancePoolRequestMissingSkuTier - Instance pool request is missing sku tier\n\n * 400 InstancePoolRequestMissingSkuFamily - Instance pool request is missing sku family\n\n * 400 InstancePoolRequestedSubnetResourceIdIsInvalid - Subnet id for instance pool is null or empty\n\n * 409 InstancePoolBusy - An instance pool is busy with another ongoing operation" + }, + "202": { + "description": "Accepted" + }, + "201": { + "description": "Successfully created the instance pool.", + "schema": { + "$ref": "#/definitions/InstancePool" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create an instance pool with all properties.": { + "$ref": "./examples/CreateOrUpdateInstancePoolMax.json" + }, + "Create an instance pool with min properties.": { + "$ref": "./examples/CreateOrUpdateInstancePoolMin.json" + } + } + }, + "delete": { + "tags": [ + "InstancePools" + ], + "description": "Deletes an instance pool", + "operationId": "InstancePools_Delete", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "instancePoolName", + "in": "path", + "description": "The name of the instance pool to be deleted", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the instance pool." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InstancePoolNotEmpty - An instance pool is not empty\n\n * 404 InstancePoolNotFound - An instance pool cannot be found\n\n * 404 InstancePoolNotFound - An instance pool cannot be found\n\n * 409 InstancePoolBusy - An instance pool is busy with another ongoing operation" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "The specified instance pool does not exist." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete an instance pool": { + "$ref": "./examples/DeleteInstancePool.json" + } + } + }, + "patch": { + "tags": [ + "InstancePools" + ], + "description": "Updates an instance pool.", + "operationId": "InstancePools_Update", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "instancePoolName", + "in": "path", + "description": "The name of the instance pool to be updated.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The requested instance pool resource state.", + "required": true, + "schema": { + "$ref": "#/definitions/InstancePoolUpdate" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the instance pool.", + "schema": { + "$ref": "#/definitions/InstancePool" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidResourceRequestBody - The resource or resource properties in the request body is empty or invalid." + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Patch an instance pool": { + "$ref": "./examples/PatchInstancePool.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/instancePools": { + "get": { + "tags": [ + "InstancePools" + ], + "description": "Gets a list of instance pools in the resource group", + "operationId": "InstancePools_ListByResourceGroup", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of instance pools.", + "schema": { + "$ref": "#/definitions/InstancePoolListResult" + } + }, + "default": { + "description": "*** Error Responses: ***" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List instance pools by resource group": { + "$ref": "./examples/ListInstancePoolsByResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Sql/instancePools": { + "get": { + "tags": [ + "InstancePools" + ], + "description": "Gets a list of all instance pools in the subscription.", + "operationId": "InstancePools_List", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of instance pools in a subscription.", + "schema": { + "$ref": "#/definitions/InstancePoolListResult" + } + }, + "default": { + "description": "*** Error Responses: ***" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List instance pools in the subscription": { + "$ref": "./examples/ListInstancePoolsBySubscriptionId.json" + } + } + } + } + }, + "definitions": { + "InstancePoolProperties": { + "description": "Properties of an instance pool.", + "required": [ + "subnetId", + "vCores", + "licenseType" + ], + "type": "object", + "properties": { + "subnetId": { + "description": "Resource ID of the subnet to place this instance pool in.", + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "vCores": { + "format": "int32", + "description": "Count of vCores belonging to this instance pool.", + "type": "integer", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "licenseType": { + "description": "The license type. Possible values are 'LicenseIncluded' (price for SQL license is included) and 'BasePrice' (without SQL license price).", + "enum": [ + "LicenseIncluded", + "BasePrice" + ], + "type": "string", + "x-ms-enum": { + "name": "InstancePoolLicenseType", + "modelAsString": true + }, + "x-ms-mutability": [ + "read", + "create" + ] + } + } + }, + "InstancePool": { + "description": "An Azure SQL instance pool.", + "required": [ + "location" + ], + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/TrackedResource" + } + ], + "properties": { + "sku": { + "$ref": "../../../common/v1/types.json#/definitions/Sku", + "description": "The name and tier of the SKU." + }, + "properties": { + "$ref": "#/definitions/InstancePoolProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "InstancePoolUpdate": { + "description": "An update to an Instance pool.", + "type": "object", + "properties": { + "tags": { + "description": "Resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "InstancePoolListResult": { + "description": "A list of Azure SQL instance pools.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/InstancePool" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": {}, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/JobAgents.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/JobAgents.json new file mode 100644 index 000000000000..8205cd4d6fa9 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/JobAgents.json @@ -0,0 +1,387 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/jobAgents": { + "get": { + "tags": [ + "JobAgents" + ], + "description": "Gets a list of job agents in a server.", + "operationId": "JobAgents_ListByServer", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of job agents.", + "schema": { + "$ref": "#/definitions/JobAgentListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 409 ServerDisabled - Server is disabled." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List job agents in a server": { + "$ref": "./examples/ListJobAgentsByServer.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/jobAgents/{jobAgentName}": { + "get": { + "tags": [ + "JobAgents" + ], + "description": "Gets a job agent.", + "operationId": "JobAgents_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "jobAgentName", + "in": "path", + "description": "The name of the job agent to be retrieved.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the specified job agent.", + "schema": { + "$ref": "#/definitions/JobAgent" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 JobAgentNotFound - Specified job agent does not exist in the specified logical server.\n\n * 409 ServerDisabled - Server is disabled." + } + }, + "x-ms-examples": { + "Get a job agent": { + "$ref": "./examples/GetJobAgent.json" + } + } + }, + "put": { + "tags": [ + "JobAgents" + ], + "description": "Creates or updates a job agent.", + "operationId": "JobAgents_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "jobAgentName", + "in": "path", + "description": "The name of the job agent to be created or updated.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The requested job agent resource state.", + "required": true, + "schema": { + "$ref": "#/definitions/JobAgent" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the job agent.", + "schema": { + "$ref": "#/definitions/JobAgent" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidResourceRequestBody - The resource or resource properties in the request body is empty or invalid.\n\n * 400 MissingSkuName - Sku name is required.\n\n * 400 InvalidDatabaseResourceId - Invalid database resource identifier.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 JobAgentDatabaseEditionUnsupported - The specified database's service level objective is not supported for use as a job agent database.\n\n * 400 JobAgentDatabaseSecondary - A job agent cannot be linked to a geo-secondary database.\n\n * 400 JobAgentDatabaseAlreadyLinked - The specified database is already linked to another job agent.\n\n * 400 DatabaseDoesNotExist - The requested database was not found\n\n * 400 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 JobAgentExceededQuota - Could not create job agent because it would exceed the quota.\n\n * 400 JobAgentAlreadyExists - The job agent already exists on the server.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 PropertyChangeUnsupported - Property cannot be modified.\n\n * 404 SubscriptionNotFound - The requested subscription was not found.\n\n * 409 ServerDisabled - Server is disabled." + }, + "202": { + "description": "Accepted" + }, + "201": { + "description": "Successfully created the job agent.", + "schema": { + "$ref": "#/definitions/JobAgent" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create or update a job agent": { + "$ref": "./examples/CreateOrUpdateJobAgent.json" + } + } + }, + "delete": { + "tags": [ + "JobAgents" + ], + "description": "Deletes a job agent.", + "operationId": "JobAgents_Delete", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "jobAgentName", + "in": "path", + "description": "The name of the job agent to be deleted.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the job agent." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 JobAgentNotFound - Specified job agent does not exist in the specified logical server.\n\n * 409 ServerDisabled - Server is disabled." + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "The specified job agent does not exist." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete a job agent": { + "$ref": "./examples/DeleteJobAgent.json" + } + } + }, + "patch": { + "tags": [ + "JobAgents" + ], + "description": "Updates a job agent.", + "operationId": "JobAgents_Update", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "jobAgentName", + "in": "path", + "description": "The name of the job agent to be updated.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The update to the job agent.", + "required": true, + "schema": { + "$ref": "#/definitions/JobAgentUpdate" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the job agent.", + "schema": { + "$ref": "#/definitions/JobAgent" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidResourceRequestBody - The resource or resource properties in the request body is empty or invalid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 PropertyChangeUnsupported - Property cannot be modified.\n\n * 404 JobAgentNotFound - Specified job agent does not exist in the specified logical server.\n\n * 409 ServerDisabled - Server is disabled." + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update a job agent's tags.": { + "$ref": "./examples/UpdateJobAgent.json" + } + } + } + } + }, + "definitions": { + "JobAgentListResult": { + "description": "A list of Azure SQL job agents.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/JobAgent" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "JobAgentProperties": { + "description": "Properties of a job agent.", + "required": [ + "databaseId" + ], + "type": "object", + "properties": { + "databaseId": { + "description": "Resource ID of the database to store job metadata in.", + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "state": { + "description": "The state of the job agent.", + "enum": [ + "Creating", + "Ready", + "Updating", + "Deleting", + "Disabled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "JobAgentState", + "modelAsString": true + } + } + } + }, + "JobAgent": { + "description": "An Azure SQL job agent.", + "required": [ + "location" + ], + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/TrackedResource" + } + ], + "properties": { + "sku": { + "$ref": "../../../common/v1/types.json#/definitions/Sku", + "description": "The name and tier of the SKU." + }, + "properties": { + "$ref": "#/definitions/JobAgentProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "JobAgentUpdate": { + "description": "An update to an Azure SQL job agent.", + "type": "object", + "properties": { + "tags": { + "description": "Resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/JobCredentials.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/JobCredentials.json new file mode 100644 index 000000000000..429ea7ee799f --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/JobCredentials.json @@ -0,0 +1,319 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/jobAgents/{jobAgentName}/credentials": { + "get": { + "tags": [ + "JobCredentials" + ], + "description": "Gets a list of jobs credentials.", + "operationId": "JobCredentials_ListByAgent", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "jobAgentName", + "in": "path", + "description": "The name of the job agent.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of job credentials.", + "schema": { + "$ref": "#/definitions/JobCredentialListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 JobAgentNotFound - Specified job agent does not exist in the specified logical server.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List credentials in a job agent": { + "$ref": "./examples/ListJobCredentialsByAgent.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/jobAgents/{jobAgentName}/credentials/{credentialName}": { + "get": { + "tags": [ + "JobCredentials" + ], + "description": "Gets a jobs credential.", + "operationId": "JobCredentials_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "jobAgentName", + "in": "path", + "description": "The name of the job agent.", + "required": true, + "type": "string" + }, + { + "name": "credentialName", + "in": "path", + "description": "The name of the credential.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the job credential.", + "schema": { + "$ref": "#/definitions/JobCredential" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 JobAgentNotFound - Specified job agent does not exist in the specified logical server.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-examples": { + "Get a credential": { + "$ref": "./examples/GetJobCredential.json" + } + } + }, + "put": { + "tags": [ + "JobCredentials" + ], + "description": "Creates or updates a job credential.", + "operationId": "JobCredentials_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "jobAgentName", + "in": "path", + "description": "The name of the job agent.", + "required": true, + "type": "string" + }, + { + "name": "credentialName", + "in": "path", + "description": "The name of the credential.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The requested job credential state.", + "required": true, + "schema": { + "$ref": "#/definitions/JobCredential" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the credential.", + "schema": { + "$ref": "#/definitions/JobCredential" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidResourceRequestBody - The resource or resource properties in the request body is empty or invalid.\n\n * 400 InvalidJobCredentialUsername - Invalid credential username.\n\n * 403 JobCredentialPermissionError - Azure Resource Manager does not have permission to use or manage the credential.\n\n * 404 JobAgentNotFound - Specified job agent does not exist in the specified logical server.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + }, + "201": { + "description": "Successfully created the credential.", + "schema": { + "$ref": "#/definitions/JobCredential" + } + } + }, + "x-ms-examples": { + "Create or update a credential": { + "$ref": "./examples/CreateOrUpdateJobCredential.json" + } + } + }, + "delete": { + "tags": [ + "JobCredentials" + ], + "description": "Deletes a job credential.", + "operationId": "JobCredentials_Delete", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "jobAgentName", + "in": "path", + "description": "The name of the job agent.", + "required": true, + "type": "string" + }, + { + "name": "credentialName", + "in": "path", + "description": "The name of the credential.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the credential." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 403 JobCredentialPermissionError - Azure Resource Manager does not have permission to use or manage the credential.\n\n * 404 JobAgentNotFound - Specified job agent does not exist in the specified logical server.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." + }, + "204": { + "description": "A credential with the specified name does not exist." + } + }, + "x-ms-examples": { + "Delete a credential": { + "$ref": "./examples/DeleteJobCredential.json" + } + } + } + } + }, + "definitions": { + "JobCredentialListResult": { + "description": "A list of job credentials.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/JobCredential" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "JobCredentialProperties": { + "description": "Properties of a job credential.", + "required": [ + "username", + "password" + ], + "type": "object", + "properties": { + "username": { + "description": "The credential user name.", + "type": "string" + }, + "password": { + "description": "The credential password.", + "type": "string", + "x-ms-mutability": [ + "create", + "update" + ] + } + } + }, + "JobCredential": { + "description": "A stored credential that can be used by a job to connect to target databases.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/JobCredentialProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/JobExecutions.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/JobExecutions.json new file mode 100644 index 000000000000..a346cb706576 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/JobExecutions.json @@ -0,0 +1,678 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/jobAgents/{jobAgentName}/executions": { + "get": { + "tags": [ + "JobExecutions" + ], + "description": "Lists all executions in a job agent.", + "operationId": "JobExecutions_ListByAgent", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "jobAgentName", + "in": "path", + "description": "The name of the job agent.", + "required": true, + "type": "string" + }, + { + "name": "createTimeMin", + "in": "query", + "description": "If specified, only job executions created at or after the specified time are included.", + "required": false, + "type": "string", + "format": "date-time" + }, + { + "name": "createTimeMax", + "in": "query", + "description": "If specified, only job executions created before the specified time are included.", + "required": false, + "type": "string", + "format": "date-time" + }, + { + "name": "endTimeMin", + "in": "query", + "description": "If specified, only job executions completed at or after the specified time are included.", + "required": false, + "type": "string", + "format": "date-time" + }, + { + "name": "endTimeMax", + "in": "query", + "description": "If specified, only job executions completed before the specified time are included.", + "required": false, + "type": "string", + "format": "date-time" + }, + { + "name": "isActive", + "in": "query", + "description": "If specified, only active or only completed job executions are included.", + "required": false, + "type": "boolean" + }, + { + "name": "$skip", + "in": "query", + "description": "The number of elements in the collection to skip.", + "required": false, + "type": "integer", + "format": "int64" + }, + { + "name": "$top", + "in": "query", + "description": "The number of elements to return from the collection.", + "required": false, + "type": "integer", + "format": "int64" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved job executions.", + "schema": { + "$ref": "#/definitions/JobExecutionListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 JobAgentNotFound - Specified job agent does not exist in the specified logical server.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List all job executions in a job agent.": { + "$ref": "./examples/ListJobExecutionsByAgent.json" + }, + "List all job executions in a job agent with filtering.": { + "$ref": "./examples/ListJobExecutionsByAgentWithFilter.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/jobAgents/{jobAgentName}/jobs/{jobName}/executions/{jobExecutionId}/cancel": { + "post": { + "tags": [ + "JobExecutions" + ], + "description": "Requests cancellation of a job execution.", + "operationId": "JobExecutions_Cancel", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "jobAgentName", + "in": "path", + "description": "The name of the job agent.", + "required": true, + "type": "string" + }, + { + "name": "jobName", + "in": "path", + "description": "The name of the job.", + "required": true, + "type": "string" + }, + { + "name": "jobExecutionId", + "in": "path", + "description": "The id of the job execution to cancel.", + "required": true, + "type": "string", + "format": "uuid" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully requested cancellation of the job execution." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 ElasticJobsOperationFailed - Elastic jobs management operation failed.\n\n * 400 ElasticJobsOperationFailed - Elastic jobs management operation failed.\n\n * 404 JobAgentNotFound - Specified job agent does not exist in the specified logical server.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-examples": { + "Cancel a job execution.": { + "$ref": "./examples/CancelJobExecution.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/jobAgents/{jobAgentName}/jobs/{jobName}/start": { + "post": { + "tags": [ + "JobExecutions" + ], + "description": "Starts an elastic job execution.", + "operationId": "JobExecutions_Create", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "jobAgentName", + "in": "path", + "description": "The name of the job agent.", + "required": true, + "type": "string" + }, + { + "name": "jobName", + "in": "path", + "description": "The name of the job to get.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully started an execution for the job.", + "schema": { + "$ref": "#/definitions/JobExecution" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 ElasticJobsOperationFailed - Elastic jobs management operation failed.\n\n * 400 ElasticJobsOperationFailed - Elastic jobs management operation failed.\n\n * 404 JobAgentNotFound - Specified job agent does not exist in the specified logical server.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Start a job execution.": { + "$ref": "./examples/CreateJobExecution.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/jobAgents/{jobAgentName}/jobs/{jobName}/executions": { + "get": { + "tags": [ + "JobExecutions" + ], + "description": "Lists a job's executions.", + "operationId": "JobExecutions_ListByJob", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "jobAgentName", + "in": "path", + "description": "The name of the job agent.", + "required": true, + "type": "string" + }, + { + "name": "jobName", + "in": "path", + "description": "The name of the job to get.", + "required": true, + "type": "string" + }, + { + "name": "createTimeMin", + "in": "query", + "description": "If specified, only job executions created at or after the specified time are included.", + "required": false, + "type": "string", + "format": "date-time" + }, + { + "name": "createTimeMax", + "in": "query", + "description": "If specified, only job executions created before the specified time are included.", + "required": false, + "type": "string", + "format": "date-time" + }, + { + "name": "endTimeMin", + "in": "query", + "description": "If specified, only job executions completed at or after the specified time are included.", + "required": false, + "type": "string", + "format": "date-time" + }, + { + "name": "endTimeMax", + "in": "query", + "description": "If specified, only job executions completed before the specified time are included.", + "required": false, + "type": "string", + "format": "date-time" + }, + { + "name": "isActive", + "in": "query", + "description": "If specified, only active or only completed job executions are included.", + "required": false, + "type": "boolean" + }, + { + "name": "$skip", + "in": "query", + "description": "The number of elements in the collection to skip.", + "required": false, + "type": "integer", + "format": "int64" + }, + { + "name": "$top", + "in": "query", + "description": "The number of elements to return from the collection.", + "required": false, + "type": "integer", + "format": "int64" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved job executions.", + "schema": { + "$ref": "#/definitions/JobExecutionListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 JobAgentNotFound - Specified job agent does not exist in the specified logical server.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List a job's executions.": { + "$ref": "./examples/ListJobExecutionsByJob.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/jobAgents/{jobAgentName}/jobs/{jobName}/executions/{jobExecutionId}": { + "get": { + "tags": [ + "JobExecutions" + ], + "description": "Gets a job execution.", + "operationId": "JobExecutions_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "jobAgentName", + "in": "path", + "description": "The name of the job agent.", + "required": true, + "type": "string" + }, + { + "name": "jobName", + "in": "path", + "description": "The name of the job.", + "required": true, + "type": "string" + }, + { + "name": "jobExecutionId", + "in": "path", + "description": "The id of the job execution", + "required": true, + "type": "string", + "format": "uuid" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the job.", + "schema": { + "$ref": "#/definitions/JobExecution" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 JobAgentNotFound - Specified job agent does not exist in the specified logical server.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + } + }, + "x-ms-examples": { + "Get a job execution.": { + "$ref": "./examples/GetJobExecution.json" + } + } + }, + "put": { + "tags": [ + "JobExecutions" + ], + "description": "Creates or updates a job execution.", + "operationId": "JobExecutions_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "jobAgentName", + "in": "path", + "description": "The name of the job agent.", + "required": true, + "type": "string" + }, + { + "name": "jobName", + "in": "path", + "description": "The name of the job to get.", + "required": true, + "type": "string" + }, + { + "name": "jobExecutionId", + "in": "path", + "description": "The job execution id to create the job execution under.", + "required": true, + "type": "string", + "format": "uuid" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A job execution for the job with the given id already existed.", + "schema": { + "$ref": "#/definitions/JobExecution" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 ElasticJobsOperationFailed - Elastic jobs management operation failed.\n\n * 400 ElasticJobsOperationFailed - Elastic jobs management operation failed.\n\n * 404 JobAgentNotFound - Specified job agent does not exist in the specified logical server.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + }, + "202": { + "description": "Accepted" + }, + "201": { + "description": "Successfully started an execution for the job.", + "schema": { + "$ref": "#/definitions/JobExecution" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create job execution.": { + "$ref": "./examples/CreateOrUpdateJobExecution.json" + } + } + } + } + }, + "definitions": { + "JobExecutionListResult": { + "description": "A list of job executions.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/JobExecution" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "JobExecutionProperties": { + "description": "Properties for an Azure SQL Database Elastic job execution.", + "type": "object", + "properties": { + "jobVersion": { + "format": "int32", + "description": "The job version number.", + "type": "integer", + "readOnly": true + }, + "stepName": { + "description": "The job step name.", + "type": "string", + "readOnly": true + }, + "stepId": { + "format": "int32", + "description": "The job step id.", + "type": "integer", + "readOnly": true + }, + "jobExecutionId": { + "format": "uuid", + "description": "The unique identifier of the job execution.", + "type": "string", + "readOnly": true + }, + "lifecycle": { + "description": "The detailed state of the job execution.", + "enum": [ + "Created", + "InProgress", + "WaitingForChildJobExecutions", + "WaitingForRetry", + "Succeeded", + "SucceededWithSkipped", + "Failed", + "TimedOut", + "Canceled", + "Skipped" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "JobExecutionLifecycle", + "modelAsString": true + } + }, + "provisioningState": { + "description": "The ARM provisioning state of the job execution.", + "enum": [ + "Created", + "InProgress", + "Succeeded", + "Failed", + "Canceled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "createTime": { + "format": "date-time", + "description": "The time that the job execution was created.", + "type": "string", + "readOnly": true + }, + "startTime": { + "format": "date-time", + "description": "The time that the job execution started.", + "type": "string", + "readOnly": true + }, + "endTime": { + "format": "date-time", + "description": "The time that the job execution completed.", + "type": "string", + "readOnly": true + }, + "currentAttempts": { + "format": "int32", + "description": "Number of times the job execution has been attempted.", + "type": "integer" + }, + "currentAttemptStartTime": { + "format": "date-time", + "description": "Start time of the current attempt.", + "type": "string", + "readOnly": true + }, + "lastMessage": { + "description": "The last status or error message.", + "type": "string", + "readOnly": true + }, + "target": { + "$ref": "#/definitions/JobExecutionTarget", + "description": "The target that this execution is executed on.", + "readOnly": true + } + } + }, + "JobExecutionTarget": { + "description": "The target that a job execution is executed on.", + "type": "object", + "properties": { + "type": { + "description": "The type of the target.", + "enum": [ + "TargetGroup", + "SqlDatabase", + "SqlElasticPool", + "SqlShardMap", + "SqlServer" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "JobTargetType", + "modelAsString": true + } + }, + "serverName": { + "description": "The server name.", + "type": "string", + "readOnly": true + }, + "databaseName": { + "description": "The database name.", + "type": "string", + "readOnly": true + } + } + }, + "JobExecution": { + "description": "An execution of a job", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/JobExecutionProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/JobStepExecutions.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/JobStepExecutions.json new file mode 100644 index 000000000000..8e3c3f062689 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/JobStepExecutions.json @@ -0,0 +1,402 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/jobAgents/{jobAgentName}/jobs/{jobName}/executions/{jobExecutionId}/steps": { + "get": { + "tags": [ + "JobStepExecutions" + ], + "description": "Lists the step executions of a job execution.", + "operationId": "JobStepExecutions_ListByJobExecution", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "jobAgentName", + "in": "path", + "description": "The name of the job agent.", + "required": true, + "type": "string" + }, + { + "name": "jobName", + "in": "path", + "description": "The name of the job to get.", + "required": true, + "type": "string" + }, + { + "name": "jobExecutionId", + "in": "path", + "description": "The id of the job execution", + "required": true, + "type": "string", + "format": "uuid" + }, + { + "name": "createTimeMin", + "in": "query", + "description": "If specified, only job executions created at or after the specified time are included.", + "required": false, + "type": "string", + "format": "date-time" + }, + { + "name": "createTimeMax", + "in": "query", + "description": "If specified, only job executions created before the specified time are included.", + "required": false, + "type": "string", + "format": "date-time" + }, + { + "name": "endTimeMin", + "in": "query", + "description": "If specified, only job executions completed at or after the specified time are included.", + "required": false, + "type": "string", + "format": "date-time" + }, + { + "name": "endTimeMax", + "in": "query", + "description": "If specified, only job executions completed before the specified time are included.", + "required": false, + "type": "string", + "format": "date-time" + }, + { + "name": "isActive", + "in": "query", + "description": "If specified, only active or only completed job executions are included.", + "required": false, + "type": "boolean" + }, + { + "name": "$skip", + "in": "query", + "description": "The number of elements in the collection to skip.", + "required": false, + "type": "integer", + "format": "int64" + }, + { + "name": "$top", + "in": "query", + "description": "The number of elements to return from the collection.", + "required": false, + "type": "integer", + "format": "int64" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the step executions.", + "schema": { + "$ref": "#/definitions/JobExecutionListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 JobAgentNotFound - Specified job agent does not exist in the specified logical server.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List job step executions": { + "$ref": "./examples/ListJobExecutionSteps.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/jobAgents/{jobAgentName}/jobs/{jobName}/executions/{jobExecutionId}/steps/{stepName}": { + "get": { + "tags": [ + "JobStepExecutions" + ], + "description": "Gets a step execution of a job execution.", + "operationId": "JobStepExecutions_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "jobAgentName", + "in": "path", + "description": "The name of the job agent.", + "required": true, + "type": "string" + }, + { + "name": "jobName", + "in": "path", + "description": "The name of the job to get.", + "required": true, + "type": "string" + }, + { + "name": "jobExecutionId", + "in": "path", + "description": "The unique id of the job execution", + "required": true, + "type": "string", + "format": "uuid" + }, + { + "name": "stepName", + "in": "path", + "description": "The name of the step.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the step execution.", + "schema": { + "$ref": "#/definitions/JobExecution" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 JobAgentNotFound - Specified job agent does not exist in the specified logical server.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-examples": { + "Get a job step execution": { + "$ref": "./examples/GetJobExecutionStep.json" + } + } + } + } + }, + "definitions": { + "JobExecutionListResult": { + "description": "A list of job executions.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/JobExecution" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "JobExecutionProperties": { + "description": "Properties for an Azure SQL Database Elastic job execution.", + "type": "object", + "properties": { + "jobVersion": { + "format": "int32", + "description": "The job version number.", + "type": "integer", + "readOnly": true + }, + "stepName": { + "description": "The job step name.", + "type": "string", + "readOnly": true + }, + "stepId": { + "format": "int32", + "description": "The job step id.", + "type": "integer", + "readOnly": true + }, + "jobExecutionId": { + "format": "uuid", + "description": "The unique identifier of the job execution.", + "type": "string", + "readOnly": true + }, + "lifecycle": { + "description": "The detailed state of the job execution.", + "enum": [ + "Created", + "InProgress", + "WaitingForChildJobExecutions", + "WaitingForRetry", + "Succeeded", + "SucceededWithSkipped", + "Failed", + "TimedOut", + "Canceled", + "Skipped" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "JobExecutionLifecycle", + "modelAsString": true + } + }, + "provisioningState": { + "description": "The ARM provisioning state of the job execution.", + "enum": [ + "Created", + "InProgress", + "Succeeded", + "Failed", + "Canceled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "createTime": { + "format": "date-time", + "description": "The time that the job execution was created.", + "type": "string", + "readOnly": true + }, + "startTime": { + "format": "date-time", + "description": "The time that the job execution started.", + "type": "string", + "readOnly": true + }, + "endTime": { + "format": "date-time", + "description": "The time that the job execution completed.", + "type": "string", + "readOnly": true + }, + "currentAttempts": { + "format": "int32", + "description": "Number of times the job execution has been attempted.", + "type": "integer" + }, + "currentAttemptStartTime": { + "format": "date-time", + "description": "Start time of the current attempt.", + "type": "string", + "readOnly": true + }, + "lastMessage": { + "description": "The last status or error message.", + "type": "string", + "readOnly": true + }, + "target": { + "$ref": "#/definitions/JobExecutionTarget", + "description": "The target that this execution is executed on.", + "readOnly": true + } + } + }, + "JobExecutionTarget": { + "description": "The target that a job execution is executed on.", + "type": "object", + "properties": { + "type": { + "description": "The type of the target.", + "enum": [ + "TargetGroup", + "SqlDatabase", + "SqlElasticPool", + "SqlShardMap", + "SqlServer" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "JobTargetType", + "modelAsString": true + } + }, + "serverName": { + "description": "The server name.", + "type": "string", + "readOnly": true + }, + "databaseName": { + "description": "The database name.", + "type": "string", + "readOnly": true + } + } + }, + "JobExecution": { + "description": "An execution of a job", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/JobExecutionProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/JobSteps.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/JobSteps.json new file mode 100644 index 000000000000..522cfade1e03 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/JobSteps.json @@ -0,0 +1,623 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/jobAgents/{jobAgentName}/jobs/{jobName}/versions/{jobVersion}/steps": { + "get": { + "tags": [ + "JobSteps" + ], + "description": "Gets all job steps in the specified job version.", + "operationId": "JobSteps_ListByVersion", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "jobAgentName", + "in": "path", + "description": "The name of the job agent.", + "required": true, + "type": "string" + }, + { + "name": "jobName", + "in": "path", + "description": "The name of the job to get.", + "required": true, + "type": "string" + }, + { + "name": "jobVersion", + "in": "path", + "description": "The version of the job to get.", + "required": true, + "type": "integer", + "format": "int32" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of job steps.", + "schema": { + "$ref": "#/definitions/JobStepListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 JobAgentNotFound - Specified job agent does not exist in the specified logical server.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List job steps for the specified version of a job.": { + "$ref": "./examples/ListJobStepsByVersion.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/jobAgents/{jobAgentName}/jobs/{jobName}/versions/{jobVersion}/steps/{stepName}": { + "get": { + "tags": [ + "JobSteps" + ], + "description": "Gets the specified version of a job step.", + "operationId": "JobSteps_GetByVersion", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "jobAgentName", + "in": "path", + "description": "The name of the job agent.", + "required": true, + "type": "string" + }, + { + "name": "jobName", + "in": "path", + "description": "The name of the job.", + "required": true, + "type": "string" + }, + { + "name": "jobVersion", + "in": "path", + "description": "The version of the job to get.", + "required": true, + "type": "integer", + "format": "int32" + }, + { + "name": "stepName", + "in": "path", + "description": "The name of the job step.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the job step.", + "schema": { + "$ref": "#/definitions/JobStep" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 JobAgentNotFound - Specified job agent does not exist in the specified logical server.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + } + }, + "x-ms-examples": { + "Get the specified version of a job step.": { + "$ref": "./examples/GetJobStepByVersion.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/jobAgents/{jobAgentName}/jobs/{jobName}/steps": { + "get": { + "tags": [ + "JobSteps" + ], + "description": "Gets all job steps for a job's current version.", + "operationId": "JobSteps_ListByJob", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "jobAgentName", + "in": "path", + "description": "The name of the job agent.", + "required": true, + "type": "string" + }, + { + "name": "jobName", + "in": "path", + "description": "The name of the job to get.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of job steps.", + "schema": { + "$ref": "#/definitions/JobStepListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 JobAgentNotFound - Specified job agent does not exist in the specified logical server.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List job steps for the latest version of a job.": { + "$ref": "./examples/ListJobStepsByJob.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/jobAgents/{jobAgentName}/jobs/{jobName}/steps/{stepName}": { + "get": { + "tags": [ + "JobSteps" + ], + "description": "Gets a job step in a job's current version.", + "operationId": "JobSteps_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "jobAgentName", + "in": "path", + "description": "The name of the job agent.", + "required": true, + "type": "string" + }, + { + "name": "jobName", + "in": "path", + "description": "The name of the job.", + "required": true, + "type": "string" + }, + { + "name": "stepName", + "in": "path", + "description": "The name of the job step.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the job step.", + "schema": { + "$ref": "#/definitions/JobStep" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 JobAgentNotFound - Specified job agent does not exist in the specified logical server.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + } + }, + "x-ms-examples": { + "Get the latest version of a job step.": { + "$ref": "./examples/GetJobStepByJob.json" + } + } + }, + "put": { + "tags": [ + "JobSteps" + ], + "description": "Creates or updates a job step. This will implicitly create a new job version.", + "operationId": "JobSteps_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "jobAgentName", + "in": "path", + "description": "The name of the job agent.", + "required": true, + "type": "string" + }, + { + "name": "jobName", + "in": "path", + "description": "The name of the job.", + "required": true, + "type": "string" + }, + { + "name": "stepName", + "in": "path", + "description": "The name of the job step.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The requested state of the job step.", + "required": true, + "schema": { + "$ref": "#/definitions/JobStep" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the job step.", + "schema": { + "$ref": "#/definitions/JobStep" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 JobStepIdMismatch - Step Id in the specified Job Step URI does not match step id in provided Job Step Resource.\n\n * 400 InvalidResourceRequestBody - The resource or resource properties in the request body is empty or invalid.\n\n * 400 InvalidResourceId - Invalid resource identifier.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 MismatchingJobAccountNameWithUrl - The provided job account name did not match the name in the Url.\n\n * 400 ElasticJobsOperationFailed - Elastic jobs management operation failed.\n\n * 400 ElasticJobsOperationFailed - Elastic jobs management operation failed.\n\n * 404 JobAgentNotFound - Specified job agent does not exist in the specified logical server.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + }, + "201": { + "description": "Successfully added the job step.", + "schema": { + "$ref": "#/definitions/JobStep" + } + } + }, + "x-ms-examples": { + "Create or update a job step with minimal properties specified.": { + "$ref": "./examples/CreateOrUpdateJobStepMin.json" + }, + "Create or update a job step with all properties specified.": { + "$ref": "./examples/CreateOrUpdateJobStepMax.json" + } + } + }, + "delete": { + "tags": [ + "JobSteps" + ], + "description": "Deletes a job step. This will implicitly create a new job version.", + "operationId": "JobSteps_Delete", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "jobAgentName", + "in": "path", + "description": "The name of the job agent.", + "required": true, + "type": "string" + }, + { + "name": "jobName", + "in": "path", + "description": "The name of the job.", + "required": true, + "type": "string" + }, + { + "name": "stepName", + "in": "path", + "description": "The name of the job step to delete.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the job step." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 ElasticJobsOperationFailed - Elastic jobs management operation failed.\n\n * 400 ElasticJobsOperationFailed - Elastic jobs management operation failed.\n\n * 404 JobAgentNotFound - Specified job agent does not exist in the specified logical server.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." + }, + "204": { + "description": "The specified job step does not exist." + } + }, + "x-ms-examples": { + "Delete a job step.": { + "$ref": "./examples/DeleteJobStep.json" + } + } + } + } + }, + "definitions": { + "JobStepListResult": { + "description": "A list of job steps.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/JobStep" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "JobStepProperties": { + "description": "Properties of a job step.", + "required": [ + "targetGroup", + "credential", + "action" + ], + "type": "object", + "properties": { + "stepId": { + "format": "int32", + "description": "The job step's index within the job. If not specified when creating the job step, it will be created as the last step. If not specified when updating the job step, the step id is not modified.", + "type": "integer" + }, + "targetGroup": { + "description": "The resource ID of the target group that the job step will be executed on.", + "type": "string" + }, + "credential": { + "description": "The resource ID of the job credential that will be used to connect to the targets.", + "type": "string" + }, + "action": { + "$ref": "#/definitions/JobStepAction", + "description": "The action payload of the job step." + }, + "output": { + "$ref": "#/definitions/JobStepOutput", + "description": "Output destination properties of the job step." + }, + "executionOptions": { + "$ref": "#/definitions/JobStepExecutionOptions", + "description": "Execution options for the job step." + } + } + }, + "JobStepAction": { + "description": "The action to be executed by a job step.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "type": { + "description": "Type of action being executed by the job step.", + "default": "TSql", + "enum": [ + "TSql" + ], + "type": "string", + "x-ms-enum": { + "name": "JobStepActionType", + "modelAsString": true + } + }, + "source": { + "description": "The source of the action to execute.", + "default": "Inline", + "enum": [ + "Inline" + ], + "type": "string", + "x-ms-enum": { + "name": "JobStepActionSource", + "modelAsString": true + } + }, + "value": { + "description": "The action value, for example the text of the T-SQL script to execute.", + "type": "string" + } + } + }, + "JobStepOutput": { + "description": "The output configuration of a job step.", + "required": [ + "serverName", + "databaseName", + "tableName", + "credential" + ], + "type": "object", + "properties": { + "type": { + "description": "The output destination type.", + "default": "SqlDatabase", + "enum": [ + "SqlDatabase" + ], + "type": "string", + "x-ms-enum": { + "name": "JobStepOutputType", + "modelAsString": true + } + }, + "subscriptionId": { + "format": "uuid", + "description": "The output destination subscription id.", + "type": "string" + }, + "resourceGroupName": { + "description": "The output destination resource group.", + "type": "string" + }, + "serverName": { + "description": "The output destination server name.", + "type": "string" + }, + "databaseName": { + "description": "The output destination database.", + "type": "string" + }, + "schemaName": { + "description": "The output destination schema.", + "default": "dbo", + "type": "string" + }, + "tableName": { + "description": "The output destination table.", + "type": "string" + }, + "credential": { + "description": "The resource ID of the credential to use to connect to the output destination.", + "type": "string" + } + } + }, + "JobStepExecutionOptions": { + "description": "The execution options of a job step.", + "type": "object", + "properties": { + "timeoutSeconds": { + "format": "int32", + "description": "Execution timeout for the job step.", + "default": 43200, + "type": "integer" + }, + "retryAttempts": { + "format": "int32", + "description": "Maximum number of times the job step will be reattempted if the first attempt fails.", + "default": 10, + "type": "integer" + }, + "initialRetryIntervalSeconds": { + "format": "int32", + "description": "Initial delay between retries for job step execution.", + "default": 1, + "type": "integer" + }, + "maximumRetryIntervalSeconds": { + "format": "int32", + "description": "The maximum amount of time to wait between retries for job step execution.", + "default": 120, + "type": "integer" + }, + "retryIntervalBackoffMultiplier": { + "format": "float", + "description": "The backoff multiplier for the time between retries.", + "default": 2.0, + "type": "number" + } + } + }, + "JobStep": { + "description": "A job step.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/JobStepProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/JobTargetExecutions.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/JobTargetExecutions.json new file mode 100644 index 000000000000..014eb62adbdf --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/JobTargetExecutions.json @@ -0,0 +1,536 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/jobAgents/{jobAgentName}/jobs/{jobName}/executions/{jobExecutionId}/targets": { + "get": { + "tags": [ + "JobTargetExecutions" + ], + "description": "Lists target executions for all steps of a job execution.", + "operationId": "JobTargetExecutions_ListByJobExecution", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "jobAgentName", + "in": "path", + "description": "The name of the job agent.", + "required": true, + "type": "string" + }, + { + "name": "jobName", + "in": "path", + "description": "The name of the job to get.", + "required": true, + "type": "string" + }, + { + "name": "jobExecutionId", + "in": "path", + "description": "The id of the job execution", + "required": true, + "type": "string", + "format": "uuid" + }, + { + "name": "createTimeMin", + "in": "query", + "description": "If specified, only job executions created at or after the specified time are included.", + "required": false, + "type": "string", + "format": "date-time" + }, + { + "name": "createTimeMax", + "in": "query", + "description": "If specified, only job executions created before the specified time are included.", + "required": false, + "type": "string", + "format": "date-time" + }, + { + "name": "endTimeMin", + "in": "query", + "description": "If specified, only job executions completed at or after the specified time are included.", + "required": false, + "type": "string", + "format": "date-time" + }, + { + "name": "endTimeMax", + "in": "query", + "description": "If specified, only job executions completed before the specified time are included.", + "required": false, + "type": "string", + "format": "date-time" + }, + { + "name": "isActive", + "in": "query", + "description": "If specified, only active or only completed job executions are included.", + "required": false, + "type": "boolean" + }, + { + "name": "$skip", + "in": "query", + "description": "The number of elements in the collection to skip.", + "required": false, + "type": "integer", + "format": "int64" + }, + { + "name": "$top", + "in": "query", + "description": "The number of elements to return from the collection.", + "required": false, + "type": "integer", + "format": "int64" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the target executions.", + "schema": { + "$ref": "#/definitions/JobExecutionListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 JobAgentNotFound - Specified job agent does not exist in the specified logical server.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List job step target executions": { + "$ref": "./examples/ListJobExecutionTargetsByExecution.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/jobAgents/{jobAgentName}/jobs/{jobName}/executions/{jobExecutionId}/steps/{stepName}/targets": { + "get": { + "tags": [ + "JobTargetExecutions" + ], + "description": "Lists the target executions of a job step execution.", + "operationId": "JobTargetExecutions_ListByStep", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "jobAgentName", + "in": "path", + "description": "The name of the job agent.", + "required": true, + "type": "string" + }, + { + "name": "jobName", + "in": "path", + "description": "The name of the job to get.", + "required": true, + "type": "string" + }, + { + "name": "jobExecutionId", + "in": "path", + "description": "The id of the job execution", + "required": true, + "type": "string", + "format": "uuid" + }, + { + "name": "stepName", + "in": "path", + "description": "The name of the step.", + "required": true, + "type": "string" + }, + { + "name": "createTimeMin", + "in": "query", + "description": "If specified, only job executions created at or after the specified time are included.", + "required": false, + "type": "string", + "format": "date-time" + }, + { + "name": "createTimeMax", + "in": "query", + "description": "If specified, only job executions created before the specified time are included.", + "required": false, + "type": "string", + "format": "date-time" + }, + { + "name": "endTimeMin", + "in": "query", + "description": "If specified, only job executions completed at or after the specified time are included.", + "required": false, + "type": "string", + "format": "date-time" + }, + { + "name": "endTimeMax", + "in": "query", + "description": "If specified, only job executions completed before the specified time are included.", + "required": false, + "type": "string", + "format": "date-time" + }, + { + "name": "isActive", + "in": "query", + "description": "If specified, only active or only completed job executions are included.", + "required": false, + "type": "boolean" + }, + { + "name": "$skip", + "in": "query", + "description": "The number of elements in the collection to skip.", + "required": false, + "type": "integer", + "format": "int64" + }, + { + "name": "$top", + "in": "query", + "description": "The number of elements to return from the collection.", + "required": false, + "type": "integer", + "format": "int64" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the target executions.", + "schema": { + "$ref": "#/definitions/JobExecutionListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 JobAgentNotFound - Specified job agent does not exist in the specified logical server.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List job step target executions": { + "$ref": "./examples/ListJobExecutionTargetsByStep.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/jobAgents/{jobAgentName}/jobs/{jobName}/executions/{jobExecutionId}/steps/{stepName}/targets/{targetId}": { + "get": { + "tags": [ + "JobTargetExecutions" + ], + "description": "Gets a target execution.", + "operationId": "JobTargetExecutions_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "jobAgentName", + "in": "path", + "description": "The name of the job agent.", + "required": true, + "type": "string" + }, + { + "name": "jobName", + "in": "path", + "description": "The name of the job to get.", + "required": true, + "type": "string" + }, + { + "name": "jobExecutionId", + "in": "path", + "description": "The unique id of the job execution", + "required": true, + "type": "string", + "format": "uuid" + }, + { + "name": "stepName", + "in": "path", + "description": "The name of the step.", + "required": true, + "type": "string" + }, + { + "name": "targetId", + "in": "path", + "description": "The target id.", + "required": true, + "type": "string", + "format": "uuid" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the target execution.", + "schema": { + "$ref": "#/definitions/JobExecution" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 JobAgentNotFound - Specified job agent does not exist in the specified logical server.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-examples": { + "Get a job step target execution": { + "$ref": "./examples/GetJobExecutionTarget.json" + } + } + } + } + }, + "definitions": { + "JobExecutionListResult": { + "description": "A list of job executions.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/JobExecution" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "JobExecutionProperties": { + "description": "Properties for an Azure SQL Database Elastic job execution.", + "type": "object", + "properties": { + "jobVersion": { + "format": "int32", + "description": "The job version number.", + "type": "integer", + "readOnly": true + }, + "stepName": { + "description": "The job step name.", + "type": "string", + "readOnly": true + }, + "stepId": { + "format": "int32", + "description": "The job step id.", + "type": "integer", + "readOnly": true + }, + "jobExecutionId": { + "format": "uuid", + "description": "The unique identifier of the job execution.", + "type": "string", + "readOnly": true + }, + "lifecycle": { + "description": "The detailed state of the job execution.", + "enum": [ + "Created", + "InProgress", + "WaitingForChildJobExecutions", + "WaitingForRetry", + "Succeeded", + "SucceededWithSkipped", + "Failed", + "TimedOut", + "Canceled", + "Skipped" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "JobExecutionLifecycle", + "modelAsString": true + } + }, + "provisioningState": { + "description": "The ARM provisioning state of the job execution.", + "enum": [ + "Created", + "InProgress", + "Succeeded", + "Failed", + "Canceled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "createTime": { + "format": "date-time", + "description": "The time that the job execution was created.", + "type": "string", + "readOnly": true + }, + "startTime": { + "format": "date-time", + "description": "The time that the job execution started.", + "type": "string", + "readOnly": true + }, + "endTime": { + "format": "date-time", + "description": "The time that the job execution completed.", + "type": "string", + "readOnly": true + }, + "currentAttempts": { + "format": "int32", + "description": "Number of times the job execution has been attempted.", + "type": "integer" + }, + "currentAttemptStartTime": { + "format": "date-time", + "description": "Start time of the current attempt.", + "type": "string", + "readOnly": true + }, + "lastMessage": { + "description": "The last status or error message.", + "type": "string", + "readOnly": true + }, + "target": { + "$ref": "#/definitions/JobExecutionTarget", + "description": "The target that this execution is executed on.", + "readOnly": true + } + } + }, + "JobExecutionTarget": { + "description": "The target that a job execution is executed on.", + "type": "object", + "properties": { + "type": { + "description": "The type of the target.", + "enum": [ + "TargetGroup", + "SqlDatabase", + "SqlElasticPool", + "SqlShardMap", + "SqlServer" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "JobTargetType", + "modelAsString": true + } + }, + "serverName": { + "description": "The server name.", + "type": "string", + "readOnly": true + }, + "databaseName": { + "description": "The database name.", + "type": "string", + "readOnly": true + } + } + }, + "JobExecution": { + "description": "An execution of a job", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/JobExecutionProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/JobTargetGroups.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/JobTargetGroups.json new file mode 100644 index 000000000000..8a94b3668352 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/JobTargetGroups.json @@ -0,0 +1,373 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/jobAgents/{jobAgentName}/targetGroups": { + "get": { + "tags": [ + "JobTargetGroups" + ], + "description": "Gets all target groups in an agent.", + "operationId": "JobTargetGroups_ListByAgent", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "jobAgentName", + "in": "path", + "description": "The name of the job agent.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of target groups.", + "schema": { + "$ref": "#/definitions/JobTargetGroupListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 JobAgentNotFound - Specified job agent does not exist in the specified logical server.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get all target groups in an agent.": { + "$ref": "./examples/ListJobTargetGroups.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/jobAgents/{jobAgentName}/targetGroups/{targetGroupName}": { + "get": { + "tags": [ + "JobTargetGroups" + ], + "description": "Gets a target group.", + "operationId": "JobTargetGroups_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "jobAgentName", + "in": "path", + "description": "The name of the job agent.", + "required": true, + "type": "string" + }, + { + "name": "targetGroupName", + "in": "path", + "description": "The name of the target group.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the target group.", + "schema": { + "$ref": "#/definitions/JobTargetGroup" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 JobAgentNotFound - Specified job agent does not exist in the specified logical server.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-examples": { + "Get a target group.": { + "$ref": "./examples/GetJobTargetGroup.json" + } + } + }, + "put": { + "tags": [ + "JobTargetGroups" + ], + "description": "Creates or updates a target group.", + "operationId": "JobTargetGroups_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "jobAgentName", + "in": "path", + "description": "The name of the job agent.", + "required": true, + "type": "string" + }, + { + "name": "targetGroupName", + "in": "path", + "description": "The name of the target group.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The requested state of the target group.", + "required": true, + "schema": { + "$ref": "#/definitions/JobTargetGroup" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the target group.", + "schema": { + "$ref": "#/definitions/JobTargetGroup" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidResourceRequestBody - The resource or resource properties in the request body is empty or invalid.\n\n * 400 InvalidResourceId - Invalid resource identifier.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 MismatchingJobAccountNameWithUrl - The provided job account name did not match the name in the Url.\n\n * 400 ElasticJobsOperationFailed - Elastic jobs management operation failed.\n\n * 400 ElasticJobsOperationFailed - Elastic jobs management operation failed.\n\n * 404 JobAgentNotFound - Specified job agent does not exist in the specified logical server.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + }, + "201": { + "description": "Successfully created the target group.", + "schema": { + "$ref": "#/definitions/JobTargetGroup" + } + } + }, + "x-ms-examples": { + "Create or update a target group with minimal properties.": { + "$ref": "./examples/CreateOrUpdateJobTargetGroupMin.json" + }, + "Create or update a target group with all properties.": { + "$ref": "./examples/CreateOrUpdateJobTargetGroupMax.json" + } + } + }, + "delete": { + "tags": [ + "JobTargetGroups" + ], + "description": "Deletes a target group.", + "operationId": "JobTargetGroups_Delete", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "jobAgentName", + "in": "path", + "description": "The name of the job agent.", + "required": true, + "type": "string" + }, + { + "name": "targetGroupName", + "in": "path", + "description": "The name of the target group.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the target group." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 ElasticJobsOperationFailed - Elastic jobs management operation failed.\n\n * 400 ElasticJobsOperationFailed - Elastic jobs management operation failed.\n\n * 404 JobAgentNotFound - Specified job agent does not exist in the specified logical server.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." + }, + "204": { + "description": "A target group with the specified name does not exist." + } + }, + "x-ms-examples": { + "Delete a target group.": { + "$ref": "./examples/DeleteJobTargetGroup.json" + } + } + } + } + }, + "definitions": { + "JobTargetGroupListResult": { + "description": "A list of target groups.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/JobTargetGroup" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "JobTargetGroupProperties": { + "description": "Properties of job target group.", + "required": [ + "members" + ], + "type": "object", + "properties": { + "members": { + "description": "Members of the target group.", + "type": "array", + "items": { + "$ref": "#/definitions/JobTarget" + } + } + } + }, + "JobTarget": { + "description": "A job target, for example a specific database or a container of databases that is evaluated during job execution.", + "required": [ + "type" + ], + "type": "object", + "properties": { + "membershipType": { + "description": "Whether the target is included or excluded from the group.", + "default": "Include", + "enum": [ + "Include", + "Exclude" + ], + "type": "string", + "x-ms-enum": { + "name": "JobTargetGroupMembershipType", + "modelAsString": false + } + }, + "type": { + "description": "The target type.", + "enum": [ + "TargetGroup", + "SqlDatabase", + "SqlElasticPool", + "SqlShardMap", + "SqlServer" + ], + "type": "string", + "x-ms-enum": { + "name": "JobTargetType", + "modelAsString": true + } + }, + "serverName": { + "description": "The target server name.", + "type": "string" + }, + "databaseName": { + "description": "The target database name.", + "type": "string" + }, + "elasticPoolName": { + "description": "The target elastic pool name.", + "type": "string" + }, + "shardMapName": { + "description": "The target shard map.", + "type": "string" + }, + "refreshCredential": { + "description": "The resource ID of the credential that is used during job execution to connect to the target and determine the list of databases inside the target.", + "type": "string" + } + } + }, + "JobTargetGroup": { + "description": "A group of job targets.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/JobTargetGroupProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/JobVersions.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/JobVersions.json new file mode 100644 index 000000000000..a948ced1a7ce --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/JobVersions.json @@ -0,0 +1,189 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/jobAgents/{jobAgentName}/jobs/{jobName}/versions": { + "get": { + "tags": [ + "JobVersions" + ], + "description": "Gets all versions of a job.", + "operationId": "JobVersions_ListByJob", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "jobAgentName", + "in": "path", + "description": "The name of the job agent.", + "required": true, + "type": "string" + }, + { + "name": "jobName", + "in": "path", + "description": "The name of the job to get.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of versions.", + "schema": { + "$ref": "#/definitions/JobVersionListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 JobAgentNotFound - Specified job agent does not exist in the specified logical server.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get all versions of a job.": { + "$ref": "./examples/ListJobVersions.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/jobAgents/{jobAgentName}/jobs/{jobName}/versions/{jobVersion}": { + "get": { + "tags": [ + "JobVersions" + ], + "description": "Gets a job version.", + "operationId": "JobVersions_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "jobAgentName", + "in": "path", + "description": "The name of the job agent.", + "required": true, + "type": "string" + }, + { + "name": "jobName", + "in": "path", + "description": "The name of the job.", + "required": true, + "type": "string" + }, + { + "name": "jobVersion", + "in": "path", + "description": "The version of the job to get.", + "required": true, + "type": "integer", + "format": "int32" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the job version.", + "schema": { + "$ref": "#/definitions/JobVersion" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 JobAgentNotFound - Specified job agent does not exist in the specified logical server.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + } + }, + "x-ms-examples": { + "Get a version of a job.": { + "$ref": "./examples/GetJobVersion.json" + } + } + } + } + }, + "definitions": { + "JobVersionListResult": { + "description": "A list of job versions.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/JobVersion" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "JobVersion": { + "description": "A job version.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": {} + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/Jobs.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/Jobs.json new file mode 100644 index 000000000000..e488ac13b57d --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/Jobs.json @@ -0,0 +1,360 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/jobAgents/{jobAgentName}/jobs": { + "get": { + "tags": [ + "Jobs" + ], + "description": "Gets a list of jobs.", + "operationId": "Jobs_ListByAgent", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "jobAgentName", + "in": "path", + "description": "The name of the job agent.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of jobs.", + "schema": { + "$ref": "#/definitions/JobListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 JobAgentNotFound - Specified job agent does not exist in the specified logical server.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List jobs in a job agent": { + "$ref": "./examples/ListJobsByAgent.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/jobAgents/{jobAgentName}/jobs/{jobName}": { + "get": { + "tags": [ + "Jobs" + ], + "description": "Gets a job.", + "operationId": "Jobs_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "jobAgentName", + "in": "path", + "description": "The name of the job agent.", + "required": true, + "type": "string" + }, + { + "name": "jobName", + "in": "path", + "description": "The name of the job to get.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the job.", + "schema": { + "$ref": "#/definitions/Job" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 JobAgentNotFound - Specified job agent does not exist in the specified logical server.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-examples": { + "Get a job": { + "$ref": "./examples/GetJob.json" + } + } + }, + "put": { + "tags": [ + "Jobs" + ], + "description": "Creates or updates a job.", + "operationId": "Jobs_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "jobAgentName", + "in": "path", + "description": "The name of the job agent.", + "required": true, + "type": "string" + }, + { + "name": "jobName", + "in": "path", + "description": "The name of the job to get.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The requested job state.", + "required": true, + "schema": { + "$ref": "#/definitions/Job" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the job.", + "schema": { + "$ref": "#/definitions/Job" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 ElasticJobsOperationFailed - Elastic jobs management operation failed.\n\n * 400 ElasticJobsOperationFailed - Elastic jobs management operation failed.\n\n * 400 InvalidResourceRequestBody - The resource or resource properties in the request body is empty or invalid.\n\n * 400 InvalidDuration - Invalid duration.\n\n * 404 JobAgentNotFound - Specified job agent does not exist in the specified logical server.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + }, + "201": { + "description": "Successfully created the job.", + "schema": { + "$ref": "#/definitions/Job" + } + } + }, + "x-ms-examples": { + "Create a job with default properties": { + "$ref": "./examples/CreateOrUpdateJobMin.json" + }, + "Create a job with all properties specified": { + "$ref": "./examples/CreateOrUpdateJobMax.json" + } + } + }, + "delete": { + "tags": [ + "Jobs" + ], + "description": "Deletes a job.", + "operationId": "Jobs_Delete", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "jobAgentName", + "in": "path", + "description": "The name of the job agent.", + "required": true, + "type": "string" + }, + { + "name": "jobName", + "in": "path", + "description": "The name of the job to delete.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the job." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 ElasticJobsOperationFailed - Elastic jobs management operation failed.\n\n * 400 ElasticJobsOperationFailed - Elastic jobs management operation failed.\n\n * 404 JobAgentNotFound - Specified job agent does not exist in the specified logical server.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." + }, + "204": { + "description": "The specified job does not exist." + } + }, + "x-ms-examples": { + "Delete a job": { + "$ref": "./examples/DeleteJob.json" + } + } + } + } + }, + "definitions": { + "JobListResult": { + "description": "A list of jobs.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/Job" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "JobProperties": { + "description": "Properties of a job.", + "type": "object", + "properties": { + "description": { + "description": "User-defined description of the job.", + "default": "", + "type": "string" + }, + "version": { + "format": "int32", + "description": "The job version number.", + "type": "integer", + "readOnly": true + }, + "schedule": { + "$ref": "#/definitions/JobSchedule", + "description": "Schedule properties of the job." + } + } + }, + "JobSchedule": { + "description": "Scheduling properties of a job.", + "type": "object", + "properties": { + "startTime": { + "format": "date-time", + "description": "Schedule start time.", + "default": "0001-01-01T00:00:00+00:00", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "Schedule end time.", + "default": "9999-12-31T11:59:59+00:00", + "type": "string" + }, + "type": { + "description": "Schedule interval type", + "default": "Once", + "enum": [ + "Once", + "Recurring" + ], + "type": "string", + "x-ms-enum": { + "name": "JobScheduleType", + "modelAsString": false + } + }, + "enabled": { + "description": "Whether or not the schedule is enabled.", + "type": "boolean" + }, + "interval": { + "description": "Value of the schedule's recurring interval, if the ScheduleType is recurring. ISO8601 duration format.", + "type": "string" + } + } + }, + "Job": { + "description": "A job.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/JobProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/LedgerDigestUploads.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/LedgerDigestUploads.json new file mode 100644 index 000000000000..5a1e1d03fe00 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/LedgerDigestUploads.json @@ -0,0 +1,331 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/ledgerDigestUploads/{ledgerDigestUploads}": { + "get": { + "tags": [ + "LedgerDigestUploads" + ], + "description": "Gets the current ledger digest upload configuration for a database.", + "operationId": "LedgerDigestUploads_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "ledgerDigestUploads", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "current" + ], + "x-ms-enum": { + "name": "LedgerDigestUploadsName", + "modelAsString": true + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the ledger digest configuration.", + "schema": { + "$ref": "#/definitions/LedgerDigestUploads" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 LedgerInvalidDigestStorageTargetUpdateRequest - The database ledger digest storage upload request does not exist or has no properties object.\n\n * 400 InvalidDigestStorageEndpoint - The specified digestStorageEndpoint is invalid. It must be an Azure blob storage endpoint.\n\n * 400 MalformedDigestStorageEndpoint - The specified digest storage endpoint is a malformed URI.\n\n * 400 InvalidLedgerDigestUploadsName - The ledger digest upload name is not supported. Please use the key name “current”.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + } + }, + "x-ms-examples": { + "Gets the current ledger digest upload configuration for a database.": { + "$ref": "./examples/LedgerDigestUploadsGet.json" + } + } + }, + "put": { + "tags": [ + "LedgerDigestUploads" + ], + "description": "Enables upload ledger digests to an Azure Storage account or an Azure Confidential Ledger instance.", + "operationId": "LedgerDigestUploads_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "ledgerDigestUploads", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "current" + ], + "x-ms-enum": { + "name": "LedgerDigestUploadsName", + "modelAsString": true + } + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/LedgerDigestUploads" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the ledger digest upload configuration", + "schema": { + "$ref": "#/definitions/LedgerDigestUploads" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 LedgerInvalidDigestStorageTargetUpdateRequest - The database ledger digest storage upload request does not exist or has no properties object.\n\n * 400 InvalidDigestStorageEndpoint - The specified digestStorageEndpoint is invalid. It must be an Azure blob storage endpoint.\n\n * 400 MalformedDigestStorageEndpoint - The specified digest storage endpoint is a malformed URI.\n\n * 400 InvalidLedgerDigestUploadsName - The ledger digest upload name is not supported. Please use the key name “current”.\n\n * 400 InvalidStorageAccountName - The specified storage account is not valid or does not exist.\n\n * 400 NoServerIdentity - No identity is configured for specified server. For information on how to configure an identity for the server see https://go.microsoft.com/fwlink/?linkid=2156804\n\n * 400 SubscriptionDoesNotHaveServer - Subscription {0} does not contain server {1}.\n\n * 400 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered. The error message from Active Directory Authentication library (ADAL) is {0}.\n\n * 400 InsufficientStorageAccountPermissions - Read or write operations are not allowed on the storage account {0}.\n\n * 400 StorageAccountIsDisabled - The storage account {0} is disabled.\n\n * 404 SourceDatabaseNotFound - Specified database does not exist.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + }, + "202": { + "description": "Updating the ledger digest upload configuration is in progress." + } + }, + "x-ms-examples": { + "Enables ledger digest upload configuration for a database": { + "$ref": "./examples/LedgerDigestUploadsEnable.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/ledgerDigestUploads": { + "get": { + "tags": [ + "LedgerDigestUploads" + ], + "description": "Gets all ledger digest upload settings on a database.", + "operationId": "LedgerDigestUploads_ListByDatabase", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved ledger upload settings.", + "schema": { + "$ref": "#/definitions/LedgerDigestUploadsListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 LedgerInvalidDigestStorageTargetUpdateRequest - The database ledger digest storage upload request does not exist or has no properties object.\n\n * 400 InvalidDigestStorageEndpoint - The specified digestStorageEndpoint is invalid. It must be an Azure blob storage endpoint.\n\n * 400 MalformedDigestStorageEndpoint - The specified digest storage endpoint is a malformed URI.\n\n * 400 InvalidLedgerDigestUploadsName - The ledger digest upload name is not supported. Please use the key name “current”.\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets list of ledger digest upload settings on a database.": { + "$ref": "./examples/LedgerDigestUploadsList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/ledgerDigestUploads/{ledgerDigestUploads}/disable": { + "post": { + "tags": [ + "LedgerDigestUploads" + ], + "description": "Disables uploading ledger digests to an Azure Storage account or an Azure Confidential Ledger instance.", + "operationId": "LedgerDigestUploads_Disable", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "ledgerDigestUploads", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "current" + ], + "x-ms-enum": { + "name": "LedgerDigestUploadsName", + "modelAsString": true + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully disabled uploading ledger digests", + "schema": { + "$ref": "#/definitions/LedgerDigestUploads" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 LedgerInvalidDigestStorageTargetUpdateRequest - The database ledger digest storage upload request does not exist or has no properties object.\n\n * 400 InvalidDigestStorageEndpoint - The specified digestStorageEndpoint is invalid. It must be an Azure blob storage endpoint.\n\n * 400 MalformedDigestStorageEndpoint - The specified digest storage endpoint is a malformed URI.\n\n * 400 InvalidLedgerDigestUploadsName - The ledger digest upload name is not supported. Please use the key name “current”.\n\n * 400 InvalidStorageAccountName - The specified storage account is not valid or does not exist.\n\n * 400 NoServerIdentity - No identity is configured for specified server. For information on how to configure an identity for the server see https://go.microsoft.com/fwlink/?linkid=2156804\n\n * 400 SubscriptionDoesNotHaveServer - Subscription {0} does not contain server {1}.\n\n * 400 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered. The error message from Active Directory Authentication library (ADAL) is {0}.\n\n * 400 InsufficientStorageAccountPermissions - Read or write operations are not allowed on the storage account {0}.\n\n * 400 StorageAccountIsDisabled - The storage account {0} is disabled.\n\n * 404 SourceDatabaseNotFound - Specified database does not exist.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + }, + "202": { + "description": "Disabling the ledger digest upload is in progress." + } + }, + "x-ms-examples": { + "Disables uploading ledger digests for a database": { + "$ref": "./examples/LedgerDigestUploadsDisable.json" + } + } + } + } + }, + "definitions": { + "LedgerDigestUploadsProperties": { + "description": "The properties of a database ledger digest upload settings.", + "type": "object", + "properties": { + "digestStorageEndpoint": { + "description": "The digest storage endpoint, which must be either an Azure blob storage endpoint or an URI for Azure Confidential Ledger.", + "type": "string" + }, + "state": { + "description": "Specifies the state of ledger digest upload.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "LedgerDigestUploadsState", + "modelAsString": false + } + } + } + }, + "LedgerDigestUploads": { + "description": "Azure SQL Database ledger digest upload settings.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/LedgerDigestUploadsProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "LedgerDigestUploadsListResult": { + "description": "A list of ledger digest upload settings.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/LedgerDigestUploads" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/LocationCapabilities.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/LocationCapabilities.json new file mode 100644 index 000000000000..13b19d0c923b --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/LocationCapabilities.json @@ -0,0 +1,1273 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/capabilities": { + "get": { + "tags": [ + "LocationCapabilities" + ], + "description": "Gets the subscription capabilities available for the specified location.", + "operationId": "Capabilities_ListByLocation", + "parameters": [ + { + "name": "locationName", + "in": "path", + "description": "The location name whose capabilities are retrieved.", + "required": true, + "type": "string" + }, + { + "name": "include", + "in": "query", + "description": "If specified, restricts the response to only include the selected item.", + "required": false, + "type": "string", + "enum": [ + "supportedEditions", + "supportedElasticPoolEditions", + "supportedManagedInstanceVersions", + "supportedInstancePoolEditions", + "supportedManagedInstanceEditions" + ], + "x-ms-enum": { + "name": "CapabilityGroup", + "modelAsString": true + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the subscription location capabilities.", + "schema": { + "$ref": "#/definitions/LocationCapabilities" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidLocation - An invalid location was specified.\n\n * 400 SubscriptionNotFound - The requested subscription was not found." + } + }, + "x-ms-examples": { + "List subscription capabilities in the given location.": { + "$ref": "./examples/LocationCapabilityListByLocation.json" + } + } + } + } + }, + "definitions": { + "LocationCapabilities": { + "description": "The location capability.", + "type": "object", + "properties": { + "name": { + "description": "The location name.", + "type": "string", + "readOnly": true + }, + "supportedServerVersions": { + "description": "The list of supported server versions.", + "type": "array", + "items": { + "$ref": "#/definitions/ServerVersionCapability" + }, + "readOnly": true + }, + "supportedManagedInstanceVersions": { + "description": "The list of supported managed instance versions.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedInstanceVersionCapability" + }, + "readOnly": true + }, + "status": { + "description": "The status of the capability.", + "enum": [ + "Visible", + "Available", + "Default", + "Disabled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "CapabilityStatus", + "modelAsString": false + } + }, + "reason": { + "description": "The reason for the capability not being available.", + "type": "string" + } + } + }, + "ServerVersionCapability": { + "description": "The server capability", + "type": "object", + "properties": { + "name": { + "description": "The server version name.", + "type": "string", + "readOnly": true + }, + "supportedEditions": { + "description": "The list of supported database editions.", + "type": "array", + "items": { + "$ref": "#/definitions/EditionCapability" + }, + "readOnly": true + }, + "supportedElasticPoolEditions": { + "description": "The list of supported elastic pool editions.", + "type": "array", + "items": { + "$ref": "#/definitions/ElasticPoolEditionCapability" + }, + "readOnly": true + }, + "status": { + "description": "The status of the capability.", + "enum": [ + "Visible", + "Available", + "Default", + "Disabled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "CapabilityStatus", + "modelAsString": false + } + }, + "reason": { + "description": "The reason for the capability not being available.", + "type": "string" + } + } + }, + "ManagedInstanceVersionCapability": { + "description": "The managed instance capability", + "type": "object", + "properties": { + "name": { + "description": "The server version name.", + "type": "string", + "readOnly": true + }, + "supportedEditions": { + "description": "The list of supported managed instance editions.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedInstanceEditionCapability" + }, + "readOnly": true + }, + "supportedInstancePoolEditions": { + "description": "The list of supported instance pool editions.", + "type": "array", + "items": { + "$ref": "#/definitions/InstancePoolEditionCapability" + }, + "readOnly": true + }, + "status": { + "description": "The status of the capability.", + "enum": [ + "Visible", + "Available", + "Default", + "Disabled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "CapabilityStatus", + "modelAsString": false + } + }, + "reason": { + "description": "The reason for the capability not being available.", + "type": "string" + } + } + }, + "EditionCapability": { + "description": "The edition capability.", + "type": "object", + "properties": { + "name": { + "description": "The database edition name.", + "type": "string", + "readOnly": true + }, + "supportedServiceLevelObjectives": { + "description": "The list of supported service objectives for the edition.", + "type": "array", + "items": { + "$ref": "#/definitions/ServiceObjectiveCapability" + }, + "readOnly": true + }, + "zoneRedundant": { + "description": "Whether or not zone redundancy is supported for the edition.", + "type": "boolean", + "readOnly": true + }, + "readScale": { + "$ref": "#/definitions/ReadScaleCapability", + "description": "The read scale capability for the edition.", + "readOnly": true + }, + "supportedStorageCapabilities": { + "description": "The list of supported storage capabilities for this edition", + "type": "array", + "items": { + "$ref": "#/definitions/StorageCapability" + }, + "readOnly": true + }, + "status": { + "description": "The status of the capability.", + "enum": [ + "Visible", + "Available", + "Default", + "Disabled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "CapabilityStatus", + "modelAsString": false + } + }, + "reason": { + "description": "The reason for the capability not being available.", + "type": "string" + } + } + }, + "ElasticPoolEditionCapability": { + "description": "The elastic pool edition capability.", + "type": "object", + "properties": { + "name": { + "description": "The elastic pool edition name.", + "type": "string", + "readOnly": true + }, + "supportedElasticPoolPerformanceLevels": { + "description": "The list of supported elastic pool DTU levels for the edition.", + "type": "array", + "items": { + "$ref": "#/definitions/ElasticPoolPerformanceLevelCapability" + }, + "readOnly": true + }, + "zoneRedundant": { + "description": "Whether or not zone redundancy is supported for the edition.", + "type": "boolean", + "readOnly": true + }, + "status": { + "description": "The status of the capability.", + "enum": [ + "Visible", + "Available", + "Default", + "Disabled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "CapabilityStatus", + "modelAsString": false + } + }, + "reason": { + "description": "The reason for the capability not being available.", + "type": "string" + } + } + }, + "ManagedInstanceEditionCapability": { + "description": "The managed server capability", + "type": "object", + "properties": { + "name": { + "description": "The managed server version name.", + "type": "string", + "readOnly": true + }, + "supportedFamilies": { + "description": "The supported families.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedInstanceFamilyCapability" + }, + "readOnly": true + }, + "supportedStorageCapabilities": { + "description": "The list of supported storage capabilities for this edition", + "type": "array", + "items": { + "$ref": "#/definitions/StorageCapability" + }, + "readOnly": true + }, + "zoneRedundant": { + "description": "Whether or not zone redundancy is supported for the edition.", + "type": "boolean", + "readOnly": true + }, + "status": { + "description": "The status of the capability.", + "enum": [ + "Visible", + "Available", + "Default", + "Disabled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "CapabilityStatus", + "modelAsString": false + } + }, + "reason": { + "description": "The reason for the capability not being available.", + "type": "string" + } + } + }, + "InstancePoolEditionCapability": { + "description": "The instance pool capability", + "type": "object", + "properties": { + "name": { + "description": "The instance pool version name.", + "type": "string", + "readOnly": true + }, + "supportedFamilies": { + "description": "The supported families.", + "type": "array", + "items": { + "$ref": "#/definitions/InstancePoolFamilyCapability" + }, + "readOnly": true + }, + "status": { + "description": "The status of the capability.", + "enum": [ + "Visible", + "Available", + "Default", + "Disabled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "CapabilityStatus", + "modelAsString": false + } + }, + "reason": { + "description": "The reason for the capability not being available.", + "type": "string" + } + } + }, + "ServiceObjectiveCapability": { + "description": "The service objectives capability.", + "type": "object", + "properties": { + "id": { + "format": "uuid", + "description": "The unique ID of the service objective.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The service objective name.", + "type": "string", + "readOnly": true + }, + "supportedMaxSizes": { + "description": "The list of supported maximum database sizes.", + "type": "array", + "items": { + "$ref": "#/definitions/MaxSizeRangeCapability" + }, + "readOnly": true + }, + "performanceLevel": { + "$ref": "#/definitions/PerformanceLevelCapability", + "description": "The performance level.", + "readOnly": true + }, + "sku": { + "$ref": "../../../common/v1/types.json#/definitions/Sku", + "description": "The sku.", + "readOnly": true + }, + "supportedLicenseTypes": { + "description": "List of supported license types.", + "type": "array", + "items": { + "$ref": "#/definitions/LicenseTypeCapability" + }, + "readOnly": true + }, + "includedMaxSize": { + "$ref": "#/definitions/MaxSizeCapability", + "description": "The included (free) max size.", + "readOnly": true + }, + "zoneRedundant": { + "description": "Whether or not zone redundancy is supported for the service objective.", + "type": "boolean", + "readOnly": true + }, + "supportedAutoPauseDelay": { + "$ref": "#/definitions/AutoPauseDelayTimeRange", + "description": "Supported time range for auto pause delay", + "readOnly": true + }, + "supportedMinCapacities": { + "description": "List of supported min capacities", + "type": "array", + "items": { + "$ref": "#/definitions/MinCapacityCapability" + }, + "readOnly": true + }, + "computeModel": { + "description": "The compute model", + "type": "string", + "readOnly": true + }, + "supportedMaintenanceConfigurations": { + "description": "List of supported maintenance configurations", + "type": "array", + "items": { + "$ref": "#/definitions/MaintenanceConfigurationCapability" + }, + "readOnly": true + }, + "status": { + "description": "The status of the capability.", + "enum": [ + "Visible", + "Available", + "Default", + "Disabled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "CapabilityStatus", + "modelAsString": false + } + }, + "reason": { + "description": "The reason for the capability not being available.", + "type": "string" + } + } + }, + "ReadScaleCapability": { + "description": "The read scale capability.", + "type": "object", + "properties": { + "maxNumberOfReplicas": { + "format": "int32", + "description": "The maximum number of read scale replicas.", + "type": "integer", + "readOnly": true + }, + "status": { + "description": "The status of the capability.", + "enum": [ + "Visible", + "Available", + "Default", + "Disabled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "CapabilityStatus", + "modelAsString": false + } + }, + "reason": { + "description": "The reason for the capability not being available.", + "type": "string" + } + } + }, + "StorageCapability": { + "description": "The storage account type capability.", + "type": "object", + "properties": { + "storageAccountType": { + "description": "The storage account type for the database's backups.", + "enum": [ + "GRS", + "LRS", + "ZRS" + ], + "type": "string", + "readOnly": true + }, + "status": { + "description": "The status of the capability.", + "enum": [ + "Visible", + "Available", + "Default", + "Disabled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "CapabilityStatus", + "modelAsString": false + } + }, + "reason": { + "description": "The reason for the capability not being available.", + "type": "string" + } + } + }, + "ElasticPoolPerformanceLevelCapability": { + "description": "The Elastic Pool performance level capability.", + "type": "object", + "properties": { + "performanceLevel": { + "$ref": "#/definitions/PerformanceLevelCapability", + "description": "The performance level for the pool.", + "readOnly": true + }, + "sku": { + "$ref": "../../../common/v1/types.json#/definitions/Sku", + "description": "The sku.", + "readOnly": true + }, + "supportedLicenseTypes": { + "description": "List of supported license types.", + "type": "array", + "items": { + "$ref": "#/definitions/LicenseTypeCapability" + }, + "readOnly": true + }, + "maxDatabaseCount": { + "format": "int32", + "description": "The maximum number of databases supported.", + "type": "integer", + "readOnly": true + }, + "includedMaxSize": { + "$ref": "#/definitions/MaxSizeCapability", + "description": "The included (free) max size for this performance level.", + "readOnly": true + }, + "supportedMaxSizes": { + "description": "The list of supported max sizes.", + "type": "array", + "items": { + "$ref": "#/definitions/MaxSizeRangeCapability" + }, + "readOnly": true + }, + "supportedPerDatabaseMaxSizes": { + "description": "The list of supported per database max sizes.", + "type": "array", + "items": { + "$ref": "#/definitions/MaxSizeRangeCapability" + }, + "readOnly": true + }, + "supportedPerDatabaseMaxPerformanceLevels": { + "description": "The list of supported per database max performance levels.", + "type": "array", + "items": { + "$ref": "#/definitions/ElasticPoolPerDatabaseMaxPerformanceLevelCapability" + }, + "readOnly": true + }, + "zoneRedundant": { + "description": "Whether or not zone redundancy is supported for the performance level.", + "type": "boolean", + "readOnly": true + }, + "supportedMaintenanceConfigurations": { + "description": "List of supported maintenance configurations", + "type": "array", + "items": { + "$ref": "#/definitions/MaintenanceConfigurationCapability" + }, + "readOnly": true + }, + "status": { + "description": "The status of the capability.", + "enum": [ + "Visible", + "Available", + "Default", + "Disabled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "CapabilityStatus", + "modelAsString": false + } + }, + "reason": { + "description": "The reason for the capability not being available.", + "type": "string" + } + } + }, + "ManagedInstanceFamilyCapability": { + "description": "The managed server family capability.", + "type": "object", + "properties": { + "name": { + "description": "Family name.", + "type": "string", + "readOnly": true + }, + "sku": { + "description": "SKU name.", + "type": "string", + "readOnly": true + }, + "supportedLicenseTypes": { + "description": "List of supported license types.", + "type": "array", + "items": { + "$ref": "#/definitions/LicenseTypeCapability" + }, + "readOnly": true + }, + "supportedVcoresValues": { + "description": "List of supported virtual cores values.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedInstanceVcoresCapability" + }, + "readOnly": true + }, + "status": { + "description": "The status of the capability.", + "enum": [ + "Visible", + "Available", + "Default", + "Disabled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "CapabilityStatus", + "modelAsString": false + } + }, + "reason": { + "description": "The reason for the capability not being available.", + "type": "string" + } + } + }, + "InstancePoolFamilyCapability": { + "description": "The instance pool family capability.", + "type": "object", + "properties": { + "name": { + "description": "Family name.", + "type": "string", + "readOnly": true + }, + "supportedLicenseTypes": { + "description": "List of supported license types.", + "type": "array", + "items": { + "$ref": "#/definitions/LicenseTypeCapability" + }, + "readOnly": true + }, + "supportedVcoresValues": { + "description": "List of supported virtual cores values.", + "type": "array", + "items": { + "$ref": "#/definitions/InstancePoolVcoresCapability" + }, + "readOnly": true + }, + "status": { + "description": "The status of the capability.", + "enum": [ + "Visible", + "Available", + "Default", + "Disabled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "CapabilityStatus", + "modelAsString": false + } + }, + "reason": { + "description": "The reason for the capability not being available.", + "type": "string" + } + } + }, + "MaxSizeRangeCapability": { + "description": "The maximum size range capability.", + "type": "object", + "properties": { + "minValue": { + "$ref": "#/definitions/MaxSizeCapability", + "description": "Minimum value.", + "readOnly": true + }, + "maxValue": { + "$ref": "#/definitions/MaxSizeCapability", + "description": "Maximum value.", + "readOnly": true + }, + "scaleSize": { + "$ref": "#/definitions/MaxSizeCapability", + "description": "Scale/step size for discrete values between the minimum value and the maximum value.", + "readOnly": true + }, + "logSize": { + "$ref": "#/definitions/LogSizeCapability", + "description": "Size of transaction log.", + "readOnly": true + }, + "status": { + "description": "The status of the capability.", + "enum": [ + "Visible", + "Available", + "Default", + "Disabled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "CapabilityStatus", + "modelAsString": false + } + }, + "reason": { + "description": "The reason for the capability not being available.", + "type": "string" + } + } + }, + "PerformanceLevelCapability": { + "description": "The performance level capability.", + "type": "object", + "properties": { + "value": { + "format": "double", + "description": "Performance level value.", + "type": "number", + "readOnly": true + }, + "unit": { + "description": "Unit type used to measure performance level.", + "enum": [ + "DTU", + "VCores" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "PerformanceLevelUnit", + "modelAsString": true + } + } + } + }, + "LicenseTypeCapability": { + "description": "The license type capability", + "type": "object", + "properties": { + "name": { + "description": "License type identifier.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "The status of the capability.", + "enum": [ + "Visible", + "Available", + "Default", + "Disabled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "CapabilityStatus", + "modelAsString": false + } + }, + "reason": { + "description": "The reason for the capability not being available.", + "type": "string" + } + } + }, + "MaxSizeCapability": { + "description": "The maximum size capability.", + "type": "object", + "properties": { + "limit": { + "format": "int32", + "description": "The maximum size limit (see 'unit' for the units).", + "type": "integer", + "readOnly": true + }, + "unit": { + "description": "The units that the limit is expressed in.", + "enum": [ + "Megabytes", + "Gigabytes", + "Terabytes", + "Petabytes" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "MaxSizeUnit", + "modelAsString": true + } + } + } + }, + "AutoPauseDelayTimeRange": { + "description": "Supported auto pause delay time range", + "type": "object", + "properties": { + "minValue": { + "format": "int32", + "description": "Minimum value", + "type": "integer", + "readOnly": true + }, + "maxValue": { + "format": "int32", + "description": "Maximum value", + "type": "integer", + "readOnly": true + }, + "stepSize": { + "format": "int32", + "description": "Step value for discrete values between the minimum value and the maximum value.", + "type": "integer", + "readOnly": true + }, + "default": { + "format": "int32", + "description": "Default value is no value is provided", + "type": "integer", + "readOnly": true + }, + "unit": { + "description": "Unit of time that delay is expressed in", + "enum": [ + "Minutes" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "PauseDelayTimeUnit", + "modelAsString": true + } + }, + "doNotPauseValue": { + "format": "int32", + "description": "Value that is used to not pause (infinite delay before pause)", + "type": "integer", + "readOnly": true + } + } + }, + "MinCapacityCapability": { + "description": "The min capacity capability", + "type": "object", + "properties": { + "value": { + "format": "double", + "description": "Min capacity value", + "type": "number", + "readOnly": true + }, + "status": { + "description": "The status of the capability.", + "enum": [ + "Visible", + "Available", + "Default", + "Disabled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "CapabilityStatus", + "modelAsString": false + } + }, + "reason": { + "description": "The reason for the capability not being available.", + "type": "string" + } + } + }, + "MaintenanceConfigurationCapability": { + "description": "The maintenance configuration capability", + "type": "object", + "properties": { + "name": { + "description": "Maintenance configuration name", + "type": "string", + "readOnly": true + }, + "zoneRedundant": { + "description": "Whether or not zone redundancy is supported for the maintenance configuration.", + "type": "boolean", + "readOnly": true + }, + "status": { + "description": "The status of the capability.", + "enum": [ + "Visible", + "Available", + "Default", + "Disabled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "CapabilityStatus", + "modelAsString": false + } + }, + "reason": { + "description": "The reason for the capability not being available.", + "type": "string" + } + } + }, + "ElasticPoolPerDatabaseMaxPerformanceLevelCapability": { + "description": "The max per-database performance level capability.", + "type": "object", + "properties": { + "limit": { + "format": "double", + "description": "The maximum performance level per database.", + "type": "number", + "readOnly": true + }, + "unit": { + "description": "Unit type used to measure performance level.", + "enum": [ + "DTU", + "VCores" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "PerformanceLevelUnit", + "modelAsString": true + } + }, + "supportedPerDatabaseMinPerformanceLevels": { + "description": "The list of supported min database performance levels.", + "type": "array", + "items": { + "$ref": "#/definitions/ElasticPoolPerDatabaseMinPerformanceLevelCapability" + }, + "readOnly": true + }, + "status": { + "description": "The status of the capability.", + "enum": [ + "Visible", + "Available", + "Default", + "Disabled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "CapabilityStatus", + "modelAsString": false + } + }, + "reason": { + "description": "The reason for the capability not being available.", + "type": "string" + } + } + }, + "ManagedInstanceVcoresCapability": { + "description": "The managed instance virtual cores capability.", + "type": "object", + "properties": { + "name": { + "description": "The virtual cores identifier.", + "type": "string", + "readOnly": true + }, + "value": { + "format": "int32", + "description": "The virtual cores value.", + "type": "integer", + "readOnly": true + }, + "includedMaxSize": { + "$ref": "#/definitions/MaxSizeCapability", + "description": "Included size.", + "readOnly": true + }, + "supportedStorageSizes": { + "description": "Storage size ranges.", + "type": "array", + "items": { + "$ref": "#/definitions/MaxSizeRangeCapability" + }, + "readOnly": true + }, + "instancePoolSupported": { + "description": "True if this service objective is supported for managed instances in an instance pool.", + "type": "boolean", + "readOnly": true + }, + "standaloneSupported": { + "description": "True if this service objective is supported for standalone managed instances.", + "type": "boolean", + "readOnly": true + }, + "supportedMaintenanceConfigurations": { + "description": "List of supported maintenance configurations", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedInstanceMaintenanceConfigurationCapability" + }, + "readOnly": true + }, + "status": { + "description": "The status of the capability.", + "enum": [ + "Visible", + "Available", + "Default", + "Disabled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "CapabilityStatus", + "modelAsString": false + } + }, + "reason": { + "description": "The reason for the capability not being available.", + "type": "string" + } + } + }, + "InstancePoolVcoresCapability": { + "description": "The managed instance virtual cores capability.", + "type": "object", + "properties": { + "name": { + "description": "The virtual cores identifier.", + "type": "string", + "readOnly": true + }, + "value": { + "format": "int32", + "description": "The virtual cores value.", + "type": "integer", + "readOnly": true + }, + "storageLimit": { + "$ref": "#/definitions/MaxSizeCapability", + "description": "Storage limit.", + "readOnly": true + }, + "status": { + "description": "The status of the capability.", + "enum": [ + "Visible", + "Available", + "Default", + "Disabled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "CapabilityStatus", + "modelAsString": false + } + }, + "reason": { + "description": "The reason for the capability not being available.", + "type": "string" + } + } + }, + "LogSizeCapability": { + "description": "The log size capability.", + "type": "object", + "properties": { + "limit": { + "format": "int32", + "description": "The log size limit (see 'unit' for the units).", + "type": "integer", + "readOnly": true + }, + "unit": { + "description": "The units that the limit is expressed in.", + "enum": [ + "Megabytes", + "Gigabytes", + "Terabytes", + "Petabytes", + "Percent" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "LogSizeUnit", + "modelAsString": true + } + } + } + }, + "ElasticPoolPerDatabaseMinPerformanceLevelCapability": { + "description": "The minimum per-database performance level capability.", + "type": "object", + "properties": { + "limit": { + "format": "double", + "description": "The minimum performance level per database.", + "type": "number", + "readOnly": true + }, + "unit": { + "description": "Unit type used to measure performance level.", + "enum": [ + "DTU", + "VCores" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "PerformanceLevelUnit", + "modelAsString": true + } + }, + "status": { + "description": "The status of the capability.", + "enum": [ + "Visible", + "Available", + "Default", + "Disabled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "CapabilityStatus", + "modelAsString": false + } + }, + "reason": { + "description": "The reason for the capability not being available.", + "type": "string" + } + } + }, + "ManagedInstanceMaintenanceConfigurationCapability": { + "description": "The maintenance configuration capability", + "type": "object", + "properties": { + "name": { + "description": "Maintenance configuration name", + "type": "string", + "readOnly": true + }, + "status": { + "description": "The status of the capability.", + "enum": [ + "Visible", + "Available", + "Default", + "Disabled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "CapabilityStatus", + "modelAsString": false + } + }, + "reason": { + "description": "The reason for the capability not being available.", + "type": "string" + } + } + } + }, + "parameters": {}, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/LongTermRetentionBackups.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/LongTermRetentionBackups.json new file mode 100644 index 000000000000..2fa4d975890d --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/LongTermRetentionBackups.json @@ -0,0 +1,1305 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/copy": { + "post": { + "tags": [ + "LongTermRetentionBackups" + ], + "description": "Copy an existing long term retention backup.", + "operationId": "LongTermRetentionBackups_Copy", + "parameters": [ + { + "name": "locationName", + "in": "path", + "description": "The location of the database.", + "required": true, + "type": "string" + }, + { + "name": "longTermRetentionServerName", + "in": "path", + "description": "The name of the server", + "required": true, + "type": "string" + }, + { + "name": "longTermRetentionDatabaseName", + "in": "path", + "description": "The name of the database", + "required": true, + "type": "string" + }, + { + "name": "backupName", + "in": "path", + "description": "The backup name.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The parameters needed for long term retention copy request", + "required": true, + "schema": { + "$ref": "#/definitions/CopyLongTermRetentionBackupParameters" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully copied the backup.", + "schema": { + "$ref": "#/definitions/LongTermRetentionBackupOperationResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidLongTermRetentionBackupId - Invalid long term retention backup identifier for SQL DBs.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 LongTermRetentionMismatchingSubscriptionId - The provided subscription id did not match the id in the other input\n\n * 400 LongTermRetentionMismatchingResourceGroupName - The provided resource group name did not match the name in the other input\n\n * 400 LongTermRetentionMismatchingServerName - The provided server name did not match the name in the other input\n\n * 400 LongTermRetentionMigrationRequestNotSupported - Subscription is not allowed LTR backup Migration feature.\n\n * 400 LongTermRetentionMigrationCrossClusterRequestNotSupported - Source and target subscriptions are not allowed to communicate for LTR backup copy feature.\n\n * 400 LongTermRetentionMigrationParameterMissing - Required parameter missing for the operation.\n\n * 400 LongTermRetentionMigrationSameServerNotSupported - LTR Copy feature is not supported to copy LTR backups within same server.\n\n * 400 LongTermRetentionMigrationTargetServerNotFound - Target server does not exists or is not ready for LTR backup copy operation.\n\n * 400 LongTermRetentionMigrationTargetDatabaseNotFound - Target Database does not exists on the server.\n\n * 400 LongTermRetentionMigrationStorageTypeNotSupported - Specified Backup Storage Redundancy is not supported in target region.\n\n * 400 LongTermRetentionMigrationStorageMismatch - Active backup redundancy of database does not match backup redundancy requested by customer.\n\n * 400 LongTermRetentionMigrationDatabaseTypeNotSupported - LTR migration is only supported for managed instance and Azure SQL DB LTR backups.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 LongTermRetentionMigrationBackupNotFound - LTR backup specified does not exists.\n\n * 409 LongTermRetentionMigrationRequestConflict - A conflict operation on this LTR backup is still in progress.\n\n * 409 LongTermRetentionMigrationBackupConflict - Another LTR backup with same backup time for target database exists.\n\n * 500 LongTermRetentionMigrationRequestFailedToStartOnTarget - Failed to start LTR backup copy request in target region.\n\n * 500 LongTermRetentionMigrationRequestCopyFailed - Copy operation failed for LTR backup blobs.\n\n * 500 LongTermRetentionMigrationRestoreVerExceeded - Restore verification failed after max attempts were reached.\n\n * 500 LongTermRetentionMigrationRestoreVerFailed - Restore verification failed." + }, + "202": { + "description": "Copying the backup is in progress." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Copy the long term retention backup.": { + "$ref": "./examples/LongTermRetentionBackupCopy.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Sql/locations/{locationName}/longTermRetentionServers/{longTermRetentionServerName}/longTermRetentionDatabases/{longTermRetentionDatabaseName}/longTermRetentionBackups/{backupName}/update": { + "post": { + "tags": [ + "LongTermRetentionBackups" + ], + "description": "Updates an existing long term retention backup.", + "operationId": "LongTermRetentionBackups_Update", + "parameters": [ + { + "name": "locationName", + "in": "path", + "description": "The location of the database.", + "required": true, + "type": "string" + }, + { + "name": "longTermRetentionServerName", + "in": "path", + "description": "The name of the server", + "required": true, + "type": "string" + }, + { + "name": "longTermRetentionDatabaseName", + "in": "path", + "description": "The name of the database", + "required": true, + "type": "string" + }, + { + "name": "backupName", + "in": "path", + "description": "The backup name.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The requested backup resource state", + "required": true, + "schema": { + "$ref": "#/definitions/UpdateLongTermRetentionBackupParameters" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the backup.", + "schema": { + "$ref": "#/definitions/LongTermRetentionBackupOperationResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidLongTermRetentionBackupId - Invalid long term retention backup identifier for SQL DBs.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 LongTermRetentionMismatchingSubscriptionId - The provided subscription id did not match the id in the other input\n\n * 400 LongTermRetentionMismatchingResourceGroupName - The provided resource group name did not match the name in the other input\n\n * 400 LongTermRetentionMismatchingServerName - The provided server name did not match the name in the other input\n\n * 400 LongTermRetentionMigrationRequestNotSupported - Subscription is not allowed LTR backup Migration feature.\n\n * 400 LongTermRetentionMigrationCrossClusterRequestNotSupported - Source and target subscriptions are not allowed to communicate for LTR backup copy feature.\n\n * 400 LongTermRetentionMigrationParameterMissing - Required parameter missing for the operation.\n\n * 400 LongTermRetentionMigrationSameServerNotSupported - LTR Copy feature is not supported to copy LTR backups within same server.\n\n * 400 LongTermRetentionMigrationTargetServerNotFound - Target server does not exists or is not ready for LTR backup copy operation.\n\n * 400 LongTermRetentionMigrationTargetDatabaseNotFound - Target Database does not exists on the server.\n\n * 400 LongTermRetentionMigrationStorageTypeNotSupported - Specified Backup Storage Redundancy is not supported in target region.\n\n * 400 LongTermRetentionMigrationStorageMismatch - Active backup redundancy of database does not match backup redundancy requested by customer.\n\n * 400 LongTermRetentionMigrationDatabaseTypeNotSupported - LTR migration is only supported for managed instance and Azure SQL DB LTR backups.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 LongTermRetentionMigrationBackupNotFound - LTR backup specified does not exists.\n\n * 409 LongTermRetentionMigrationRequestConflict - A conflict operation on this LTR backup is still in progress.\n\n * 409 LongTermRetentionMigrationBackupConflict - Another LTR backup with same backup time for target database exists.\n\n * 500 LongTermRetentionMigrationRequestFailedToStartOnTarget - Failed to start LTR backup copy request in target region.\n\n * 500 LongTermRetentionMigrationRequestCopyFailed - Copy operation failed for LTR backup blobs.\n\n * 500 LongTermRetentionMigrationRestoreVerExceeded - Restore verification failed after max attempts were reached.\n\n * 500 LongTermRetentionMigrationRestoreVerFailed - Restore verification failed." + }, + "202": { + "description": "Updating the backup is in progress." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update the long term retention backup.": { + "$ref": "./examples/LongTermRetentionBackupUpdate.json" + } + } + } + }, + "/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", + "description": "The name of the server", + "required": true, + "type": "string" + }, + { + "name": "longTermRetentionDatabaseName", + "in": "path", + "description": "The name of the database", + "required": true, + "type": "string" + }, + { + "name": "backupName", + "in": "path", + "description": "The backup name.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the backup.", + "schema": { + "$ref": "#/definitions/LongTermRetentionBackup" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidLongTermRetentionBackupId - Invalid long term retention backup identifier for SQL DBs.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 LongTermRetentionMismatchingSubscriptionId - The provided subscription id did not match the id in the other input\n\n * 400 LongTermRetentionMismatchingResourceGroupName - The provided resource group name did not match the name in the other input\n\n * 400 LongTermRetentionMismatchingServerName - The provided server name did not match the name in the other input\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 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", + "description": "The name of the server", + "required": true, + "type": "string" + }, + { + "name": "longTermRetentionDatabaseName", + "in": "path", + "description": "The name of the database", + "required": true, + "type": "string" + }, + { + "name": "backupName", + "in": "path", + "description": "The backup name.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the backup." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidLongTermRetentionBackupId - Invalid long term retention backup identifier for SQL DBs.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 LongTermRetentionMismatchingSubscriptionId - The provided subscription id did not match the id in the other input\n\n * 400 LongTermRetentionMismatchingResourceGroupName - The provided resource group name did not match the name in the other input\n\n * 400 LongTermRetentionMismatchingServerName - The provided server name did not match the name in the other input\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + }, + "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", + "description": "The name of the server", + "required": true, + "type": "string" + }, + { + "name": "longTermRetentionDatabaseName", + "in": "path", + "description": "The name 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": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/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\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + } + }, + "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": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/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\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + } + }, + "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", + "description": "The name of the server", + "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": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/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\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + } + }, + "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/locations/{locationName}/longTermRetentionServers/{longTermRetentionServerName}/longTermRetentionDatabases/{longTermRetentionDatabaseName}/longTermRetentionBackups/{backupName}/copy": { + "post": { + "tags": [ + "LongTermRetentionBackups" + ], + "description": "Copy an existing long term retention backup to a different server.", + "operationId": "LongTermRetentionBackups_CopyByResourceGroup", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "locationName", + "in": "path", + "description": "The location of the database.", + "required": true, + "type": "string" + }, + { + "name": "longTermRetentionServerName", + "in": "path", + "description": "The name of the server", + "required": true, + "type": "string" + }, + { + "name": "longTermRetentionDatabaseName", + "in": "path", + "description": "The name of the database", + "required": true, + "type": "string" + }, + { + "name": "backupName", + "in": "path", + "description": "The backup name.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The parameters needed for long term retention copy request", + "required": true, + "schema": { + "$ref": "#/definitions/CopyLongTermRetentionBackupParameters" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully Copied the backup.", + "schema": { + "$ref": "#/definitions/LongTermRetentionBackupOperationResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidLongTermRetentionBackupId - Invalid long term retention backup identifier for SQL DBs.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 LongTermRetentionMismatchingSubscriptionId - The provided subscription id did not match the id in the other input\n\n * 400 LongTermRetentionMismatchingResourceGroupName - The provided resource group name did not match the name in the other input\n\n * 400 LongTermRetentionMismatchingServerName - The provided server name did not match the name in the other input\n\n * 400 LongTermRetentionMigrationRequestNotSupported - Subscription is not allowed LTR backup Migration feature.\n\n * 400 LongTermRetentionMigrationCrossClusterRequestNotSupported - Source and target subscriptions are not allowed to communicate for LTR backup copy feature.\n\n * 400 LongTermRetentionMigrationParameterMissing - Required parameter missing for the operation.\n\n * 400 LongTermRetentionMigrationSameServerNotSupported - LTR Copy feature is not supported to copy LTR backups within same server.\n\n * 400 LongTermRetentionMigrationTargetServerNotFound - Target server does not exists or is not ready for LTR backup copy operation.\n\n * 400 LongTermRetentionMigrationTargetDatabaseNotFound - Target Database does not exists on the server.\n\n * 400 LongTermRetentionMigrationStorageTypeNotSupported - Specified Backup Storage Redundancy is not supported in target region.\n\n * 400 LongTermRetentionMigrationStorageMismatch - Active backup redundancy of database does not match backup redundancy requested by customer.\n\n * 400 LongTermRetentionMigrationDatabaseTypeNotSupported - LTR migration is only supported for managed instance and Azure SQL DB LTR backups.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 LongTermRetentionMigrationBackupNotFound - LTR backup specified does not exists.\n\n * 409 LongTermRetentionMigrationRequestConflict - A conflict operation on this LTR backup is still in progress.\n\n * 409 LongTermRetentionMigrationBackupConflict - Another LTR backup with same backup time for target database exists.\n\n * 500 LongTermRetentionMigrationRequestFailedToStartOnTarget - Failed to start LTR backup copy request in target region.\n\n * 500 LongTermRetentionMigrationRequestCopyFailed - Copy operation failed for LTR backup blobs.\n\n * 500 LongTermRetentionMigrationRestoreVerExceeded - Restore verification failed after max attempts were reached.\n\n * 500 LongTermRetentionMigrationRestoreVerFailed - Restore verification failed." + }, + "202": { + "description": "Copying the backup is in progress." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Copy the long term retention backup.": { + "$ref": "./examples/ResourceGroupBasedLongTermRetentionBackupCopy.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/locations/{locationName}/longTermRetentionServers/{longTermRetentionServerName}/longTermRetentionDatabases/{longTermRetentionDatabaseName}/longTermRetentionBackups/{backupName}/update": { + "post": { + "tags": [ + "LongTermRetentionBackups" + ], + "description": "Updates an existing long term retention backup.", + "operationId": "LongTermRetentionBackups_UpdateByResourceGroup", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "locationName", + "in": "path", + "description": "The location of the database.", + "required": true, + "type": "string" + }, + { + "name": "longTermRetentionServerName", + "in": "path", + "description": "The name of the server", + "required": true, + "type": "string" + }, + { + "name": "longTermRetentionDatabaseName", + "in": "path", + "description": "The name of the database", + "required": true, + "type": "string" + }, + { + "name": "backupName", + "in": "path", + "description": "The backup name.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The requested backup resource state", + "required": true, + "schema": { + "$ref": "#/definitions/UpdateLongTermRetentionBackupParameters" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the backup.", + "schema": { + "$ref": "#/definitions/LongTermRetentionBackupOperationResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidLongTermRetentionBackupId - Invalid long term retention backup identifier for SQL DBs.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 LongTermRetentionMismatchingSubscriptionId - The provided subscription id did not match the id in the other input\n\n * 400 LongTermRetentionMismatchingResourceGroupName - The provided resource group name did not match the name in the other input\n\n * 400 LongTermRetentionMismatchingServerName - The provided server name did not match the name in the other input\n\n * 400 LongTermRetentionMigrationRequestNotSupported - Subscription is not allowed LTR backup Migration feature.\n\n * 400 LongTermRetentionMigrationCrossClusterRequestNotSupported - Source and target subscriptions are not allowed to communicate for LTR backup copy feature.\n\n * 400 LongTermRetentionMigrationParameterMissing - Required parameter missing for the operation.\n\n * 400 LongTermRetentionMigrationSameServerNotSupported - LTR Copy feature is not supported to copy LTR backups within same server.\n\n * 400 LongTermRetentionMigrationTargetServerNotFound - Target server does not exists or is not ready for LTR backup copy operation.\n\n * 400 LongTermRetentionMigrationTargetDatabaseNotFound - Target Database does not exists on the server.\n\n * 400 LongTermRetentionMigrationStorageTypeNotSupported - Specified Backup Storage Redundancy is not supported in target region.\n\n * 400 LongTermRetentionMigrationStorageMismatch - Active backup redundancy of database does not match backup redundancy requested by customer.\n\n * 400 LongTermRetentionMigrationDatabaseTypeNotSupported - LTR migration is only supported for managed instance and Azure SQL DB LTR backups.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 LongTermRetentionMigrationBackupNotFound - LTR backup specified does not exists.\n\n * 409 LongTermRetentionMigrationRequestConflict - A conflict operation on this LTR backup is still in progress.\n\n * 409 LongTermRetentionMigrationBackupConflict - Another LTR backup with same backup time for target database exists.\n\n * 500 LongTermRetentionMigrationRequestFailedToStartOnTarget - Failed to start LTR backup copy request in target region.\n\n * 500 LongTermRetentionMigrationRequestCopyFailed - Copy operation failed for LTR backup blobs.\n\n * 500 LongTermRetentionMigrationRestoreVerExceeded - Restore verification failed after max attempts were reached.\n\n * 500 LongTermRetentionMigrationRestoreVerFailed - Restore verification failed." + }, + "202": { + "description": "Updating the backup is in progress." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update the long term retention backup.": { + "$ref": "./examples/ResourceGroupBasedLongTermRetentionBackupUpdate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/locations/{locationName}/longTermRetentionServers/{longTermRetentionServerName}/longTermRetentionDatabases/{longTermRetentionDatabaseName}/longTermRetentionBackups/{backupName}": { + "get": { + "tags": [ + "LongTermRetentionBackups" + ], + "description": "Gets a long term retention backup.", + "operationId": "LongTermRetentionBackups_GetByResourceGroup", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "locationName", + "in": "path", + "description": "The location of the database.", + "required": true, + "type": "string" + }, + { + "name": "longTermRetentionServerName", + "in": "path", + "description": "The name of the server", + "required": true, + "type": "string" + }, + { + "name": "longTermRetentionDatabaseName", + "in": "path", + "description": "The name of the database", + "required": true, + "type": "string" + }, + { + "name": "backupName", + "in": "path", + "description": "The backup name.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the backup.", + "schema": { + "$ref": "#/definitions/LongTermRetentionBackup" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidLongTermRetentionBackupId - Invalid long term retention backup identifier for SQL DBs.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 LongTermRetentionMismatchingSubscriptionId - The provided subscription id did not match the id in the other input\n\n * 400 LongTermRetentionMismatchingResourceGroupName - The provided resource group name did not match the name in the other input\n\n * 400 LongTermRetentionMismatchingServerName - The provided server name did not match the name in the other input\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-examples": { + "Get the long term retention backup.": { + "$ref": "./examples/ResourceGroupBasedLongTermRetentionBackupGet.json" + } + } + }, + "delete": { + "tags": [ + "LongTermRetentionBackups" + ], + "description": "Deletes a long term retention backup.", + "operationId": "LongTermRetentionBackups_DeleteByResourceGroup", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "locationName", + "in": "path", + "description": "The location of the database", + "required": true, + "type": "string" + }, + { + "name": "longTermRetentionServerName", + "in": "path", + "description": "The name of the server", + "required": true, + "type": "string" + }, + { + "name": "longTermRetentionDatabaseName", + "in": "path", + "description": "The name of the database", + "required": true, + "type": "string" + }, + { + "name": "backupName", + "in": "path", + "description": "The backup name.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the backup." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidLongTermRetentionBackupId - Invalid long term retention backup identifier for SQL DBs.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 LongTermRetentionMismatchingSubscriptionId - The provided subscription id did not match the id in the other input\n\n * 400 LongTermRetentionMismatchingResourceGroupName - The provided resource group name did not match the name in the other input\n\n * 400 LongTermRetentionMismatchingServerName - The provided server name did not match the name in the other input\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete the long term retention backup.": { + "$ref": "./examples/ResourceGroupBasedLongTermRetentionBackupDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/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_ListByResourceGroupDatabase", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "locationName", + "in": "path", + "description": "The location of the database", + "required": true, + "type": "string" + }, + { + "name": "longTermRetentionServerName", + "in": "path", + "description": "The name of the server", + "required": true, + "type": "string" + }, + { + "name": "longTermRetentionDatabaseName", + "in": "path", + "description": "The name 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": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/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\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get all long term retention backups under the database.": { + "$ref": "./examples/ResourceGroupBasedLongTermRetentionBackupListByDatabase.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/locations/{locationName}/longTermRetentionBackups": { + "get": { + "tags": [ + "LongTermRetentionBackups" + ], + "description": "Lists the long term retention backups for a given location.", + "operationId": "LongTermRetentionBackups_ListByResourceGroupLocation", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "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": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/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\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get all long term retention backups under the location.": { + "$ref": "./examples/ResourceGroupBasedLongTermRetentionBackupListByLocation.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/locations/{locationName}/longTermRetentionServers/{longTermRetentionServerName}/longTermRetentionBackups": { + "get": { + "tags": [ + "LongTermRetentionBackups" + ], + "description": "Lists the long term retention backups for a given server.", + "operationId": "LongTermRetentionBackups_ListByResourceGroupServer", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "locationName", + "in": "path", + "description": "The location of the database", + "required": true, + "type": "string" + }, + { + "name": "longTermRetentionServerName", + "in": "path", + "description": "The name of the server", + "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": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/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\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get all long term retention backups under the server.": { + "$ref": "./examples/ResourceGroupBasedLongTermRetentionBackupListByServer.json" + } + } + } + } + }, + "definitions": { + "CopyLongTermRetentionBackupParameters": { + "description": "Contains the information necessary to perform long term retention backup copy operation.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/CopyLongTermRetentionBackupParametersProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "CopyLongTermRetentionBackupParametersProperties": { + "description": "Contains the properties to perform long term retention backup copy operation.", + "type": "object", + "properties": { + "targetSubscriptionId": { + "description": "The subscription that owns the target server", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "targetResourceGroup": { + "description": "The resource group that owns the target server", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "targetServerResourceId": { + "description": "The resource Id of the target server that owns the database", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "targetServerFullyQualifiedDomainName": { + "description": "The fully qualified domain name of the target server", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "targetDatabaseName": { + "description": "The name of the database owns the copied backup.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "targetBackupStorageRedundancy": { + "description": "The storage redundancy type of the copied backup", + "enum": [ + "Geo", + "Local", + "Zone" + ], + "type": "string", + "x-ms-enum": { + "name": "TargetBackupStorageRedundancy", + "modelAsString": true + }, + "x-ms-mutability": [ + "create" + ] + } + } + }, + "LongTermRetentionOperationResultProperties": { + "description": "Contains the operation result properties for long term retention backup operation.", + "type": "object", + "properties": { + "requestId": { + "format": "uuid", + "description": "Request Id.", + "type": "string", + "readOnly": true + }, + "operationType": { + "description": "Operation type.", + "type": "string", + "readOnly": true + }, + "fromBackupResourceId": { + "description": "Source backup resource id", + "type": "string", + "readOnly": true + }, + "toBackupResourceId": { + "description": "Target backup resource id", + "type": "string", + "readOnly": true + }, + "targetBackupStorageRedundancy": { + "description": "The storage redundancy type of the copied backup", + "enum": [ + "Geo", + "Local", + "Zone" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "BackupStorageRedundancy", + "modelAsString": true + } + }, + "status": { + "description": "Operation status", + "type": "string", + "readOnly": true + }, + "message": { + "description": "Progress message", + "type": "string", + "readOnly": true + } + } + }, + "LongTermRetentionBackupOperationResult": { + "description": "A LongTermRetentionBackup operation result resource.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/LongTermRetentionOperationResultProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "UpdateLongTermRetentionBackupParameters": { + "description": "Contains the information necessary to perform long term retention backup update operation.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/UpdateLongTermRetentionBackupParametersProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "UpdateLongTermRetentionBackupParametersProperties": { + "description": "Contains the properties to perform long term retention backup copy operation.", + "type": "object", + "properties": { + "requestedBackupStorageRedundancy": { + "description": "The storage redundancy type of the copied backup", + "enum": [ + "Geo", + "Local", + "Zone" + ], + "type": "string", + "x-ms-enum": { + "name": "RequestedBackupStorageRedundancy", + "modelAsString": true + }, + "x-ms-mutability": [ + "create" + ] + } + } + }, + "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 + }, + "backupStorageRedundancy": { + "description": "The storage redundancy type of the backup", + "enum": [ + "Geo", + "Local", + "Zone" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "BackupStorageRedundancy", + "modelAsString": true + } + }, + "requestedBackupStorageRedundancy": { + "description": "The storage redundancy type of the backup", + "enum": [ + "Geo", + "Local", + "Zone" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupStorageRedundancy", + "modelAsString": true + }, + "x-ms-mutability": [ + "create", + "update" + ] + } + } + }, + "LongTermRetentionBackup": { + "description": "A long term retention backup.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/LongTermRetentionBackupProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "LongTermRetentionBackupListResult": { + "description": "A list of long term retention backups.", + "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 + } + } + } + }, + "parameters": {}, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/LongTermRetentionManagedInstanceBackups.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/LongTermRetentionManagedInstanceBackups.json new file mode 100644 index 000000000000..cbc9f9c87542 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/LongTermRetentionManagedInstanceBackups.json @@ -0,0 +1,818 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/longTermRetentionManagedInstances/{managedInstanceName}/longTermRetentionDatabases/{databaseName}/longTermRetentionManagedInstanceBackups/{backupName}": { + "get": { + "tags": [ + "LongTermRetentionManagedInstanceBackups" + ], + "description": "Gets a long term retention backup for a managed database.", + "operationId": "LongTermRetentionManagedInstanceBackups_Get", + "parameters": [ + { + "name": "locationName", + "in": "path", + "description": "The location of the database.", + "required": true, + "type": "string" + }, + { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the managed database.", + "required": true, + "type": "string" + }, + { + "name": "backupName", + "in": "path", + "description": "The backup name.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the backup.", + "schema": { + "$ref": "#/definitions/ManagedInstanceLongTermRetentionBackup" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidLongTermRetentionManagedInstanceBackupId - Invalid long term retention backup identifier for Managed Instances.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-examples": { + "Get the long term retention backup of a managed database.": { + "$ref": "./examples/ManagedInstanceLongTermRetentionBackupGet.json" + } + } + }, + "delete": { + "tags": [ + "LongTermRetentionManagedInstanceBackups" + ], + "description": "Deletes a long term retention backup.", + "operationId": "LongTermRetentionManagedInstanceBackups_Delete", + "parameters": [ + { + "name": "locationName", + "in": "path", + "description": "The location of the database.", + "required": true, + "type": "string" + }, + { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the managed database.", + "required": true, + "type": "string" + }, + { + "name": "backupName", + "in": "path", + "description": "The backup name.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the backup." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidLongTermRetentionManagedInstanceBackupId - Invalid long term retention backup identifier for Managed Instances.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete the long term retention backup.": { + "$ref": "./examples/ManagedInstanceLongTermRetentionBackupDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Sql/locations/{locationName}/longTermRetentionManagedInstances/{managedInstanceName}/longTermRetentionDatabases/{databaseName}/longTermRetentionManagedInstanceBackups": { + "get": { + "tags": [ + "LongTermRetentionManagedInstanceBackups" + ], + "description": "Lists all long term retention backups for a managed database.", + "operationId": "LongTermRetentionManagedInstanceBackups_ListByDatabase", + "parameters": [ + { + "name": "locationName", + "in": "path", + "description": "The location of the database.", + "required": true, + "type": "string" + }, + { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the managed 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": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of backups.", + "schema": { + "$ref": "#/definitions/ManagedInstanceLongTermRetentionBackupListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get all long term retention backups under the database.": { + "$ref": "./examples/ManagedInstanceLongTermRetentionBackupListByDatabase.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Sql/locations/{locationName}/longTermRetentionManagedInstances/{managedInstanceName}/longTermRetentionManagedInstanceBackups": { + "get": { + "tags": [ + "LongTermRetentionManagedInstanceBackups" + ], + "description": "Lists the long term retention backups for a given managed instance.", + "operationId": "LongTermRetentionManagedInstanceBackups_ListByInstance", + "parameters": [ + { + "name": "locationName", + "in": "path", + "description": "The location of the database", + "required": true, + "type": "string" + }, + { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "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": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of backups.", + "schema": { + "$ref": "#/definitions/ManagedInstanceLongTermRetentionBackupListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get all long term retention backups under the managed instance.": { + "$ref": "./examples/ManagedInstanceLongTermRetentionBackupListByInstance.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Sql/locations/{locationName}/longTermRetentionManagedInstanceBackups": { + "get": { + "tags": [ + "LongTermRetentionManagedInstanceBackups" + ], + "description": "Lists the long term retention backups for managed databases in a given location.", + "operationId": "LongTermRetentionManagedInstanceBackups_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": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of backups.", + "schema": { + "$ref": "#/definitions/ManagedInstanceLongTermRetentionBackupListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get all long term retention backups under the location.": { + "$ref": "./examples/ManagedInstanceLongTermRetentionBackupListByLocation.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/locations/{locationName}/longTermRetentionManagedInstances/{managedInstanceName}/longTermRetentionDatabases/{databaseName}/longTermRetentionManagedInstanceBackups/{backupName}": { + "get": { + "tags": [ + "LongTermRetentionManagedInstanceBackups" + ], + "description": "Gets a long term retention backup for a managed database.", + "operationId": "LongTermRetentionManagedInstanceBackups_GetByResourceGroup", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "locationName", + "in": "path", + "description": "The location of the database.", + "required": true, + "type": "string" + }, + { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the managed database.", + "required": true, + "type": "string" + }, + { + "name": "backupName", + "in": "path", + "description": "The backup name.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the backup.", + "schema": { + "$ref": "#/definitions/ManagedInstanceLongTermRetentionBackup" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidLongTermRetentionManagedInstanceBackupId - Invalid long term retention backup identifier for Managed Instances.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-examples": { + "Get the long term retention backup.": { + "$ref": "./examples/ResourceGroupBasedManagedInstanceLongTermRetentionBackupGet.json" + } + } + }, + "delete": { + "tags": [ + "LongTermRetentionManagedInstanceBackups" + ], + "description": "Deletes a long term retention backup.", + "operationId": "LongTermRetentionManagedInstanceBackups_DeleteByResourceGroup", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "locationName", + "in": "path", + "description": "The location of the database", + "required": true, + "type": "string" + }, + { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the managed database.", + "required": true, + "type": "string" + }, + { + "name": "backupName", + "in": "path", + "description": "The backup name.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the backup." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidLongTermRetentionManagedInstanceBackupId - Invalid long term retention backup identifier for Managed Instances.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete the long term retention backup.": { + "$ref": "./examples/ResourceGroupBasedManagedInstanceLongTermRetentionBackupDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/locations/{locationName}/longTermRetentionManagedInstances/{managedInstanceName}/longTermRetentionDatabases/{databaseName}/longTermRetentionManagedInstanceBackups": { + "get": { + "tags": [ + "LongTermRetentionManagedInstanceBackups" + ], + "description": "Lists all long term retention backups for a managed database.", + "operationId": "LongTermRetentionManagedInstanceBackups_ListByResourceGroupDatabase", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "locationName", + "in": "path", + "description": "The location of the database", + "required": true, + "type": "string" + }, + { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the managed 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": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of backups.", + "schema": { + "$ref": "#/definitions/ManagedInstanceLongTermRetentionBackupListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get all long term retention backups under the database.": { + "$ref": "./examples/ResourceGroupBasedManagedInstanceLongTermRetentionBackupListByDatabase.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/locations/{locationName}/longTermRetentionManagedInstances/{managedInstanceName}/longTermRetentionManagedInstanceBackups": { + "get": { + "tags": [ + "LongTermRetentionManagedInstanceBackups" + ], + "description": "Lists the long term retention backups for a given managed instance.", + "operationId": "LongTermRetentionManagedInstanceBackups_ListByResourceGroupInstance", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "locationName", + "in": "path", + "description": "The location of the database.", + "required": true, + "type": "string" + }, + { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "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": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of backups.", + "schema": { + "$ref": "#/definitions/ManagedInstanceLongTermRetentionBackupListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get all long term retention backups under the managed instance.": { + "$ref": "./examples/ResourceGroupBasedManagedInstanceLongTermRetentionBackupListByInstance.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/locations/{locationName}/longTermRetentionManagedInstanceBackups": { + "get": { + "tags": [ + "LongTermRetentionManagedInstanceBackups" + ], + "description": "Lists the long term retention backups for managed databases in a given location.", + "operationId": "LongTermRetentionManagedInstanceBackups_ListByResourceGroupLocation", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "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": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of backups.", + "schema": { + "$ref": "#/definitions/ManagedInstanceLongTermRetentionBackupListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get all long term retention backups under the location.": { + "$ref": "./examples/ResourceGroupBasedManagedInstanceLongTermRetentionBackupListByLocation.json" + } + } + } + } + }, + "definitions": { + "ManagedInstanceLongTermRetentionBackupProperties": { + "description": "Properties of a long term retention backup", + "type": "object", + "properties": { + "managedInstanceName": { + "description": "The managed instance that the backup database belongs to.", + "type": "string", + "readOnly": true + }, + "managedInstanceCreateTime": { + "format": "date-time", + "description": "The create time of the instance.", + "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 + }, + "backupStorageRedundancy": { + "description": "The storage redundancy type of the backup", + "enum": [ + "Geo", + "Local", + "Zone" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "BackupStorageRedundancy", + "modelAsString": true + } + } + } + }, + "ManagedInstanceLongTermRetentionBackup": { + "description": "A long term retention backup for a managed database.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ManagedInstanceLongTermRetentionBackupProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "ManagedInstanceLongTermRetentionBackupListResult": { + "description": "A list of long term retention backups for managed database(s).", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedInstanceLongTermRetentionBackup" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": {}, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/LongTermRetentionPolicies.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/LongTermRetentionPolicies.json new file mode 100644 index 000000000000..3a04140b5eab --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/LongTermRetentionPolicies.json @@ -0,0 +1,277 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/backupLongTermRetentionPolicies/{policyName}": { + "get": { + "tags": [ + "LongTermRetentionPolicies" + ], + "description": "Gets a database's long term retention policy.", + "operationId": "LongTermRetentionPolicies_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/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": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully get the policy.", + "schema": { + "$ref": "#/definitions/LongTermRetentionPolicy" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 LongTermRetentionPolicyNotSupported - Long Term Retention is not supported on this database.\n\n * 400 LongTermRetentionPolicyInvalid - Long Term Retention policy is invalid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 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": [ + "LongTermRetentionPolicies" + ], + "description": "Sets a database's long term retention policy.", + "operationId": "LongTermRetentionPolicies_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/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/LongTermRetentionPolicy" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully set the policy.", + "schema": { + "$ref": "#/definitions/LongTermRetentionPolicy" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidResourceRequestBody - The resource or resource properties in the request body is empty or invalid.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 LongTermRetentionMissingWeekOfYear - WeekOfYear is required to be set between 1 and 52 in order to set yearly retention.\n\n * 400 LongTermRetentionPolicyNotSupported - Long Term Retention is not supported on this database.\n\n * 400 LongTermRetentionPolicyInvalid - Long Term Retention policy is invalid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 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": [ + "LongTermRetentionPolicies" + ], + "description": "Gets a database's long term retention policy.", + "operationId": "LongTermRetentionPolicies_ListByDatabase", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully get the policy.", + "schema": { + "$ref": "#/definitions/LongTermRetentionPolicyListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 LongTermRetentionPolicyNotSupported - Long Term Retention is not supported on this database.\n\n * 400 LongTermRetentionPolicyInvalid - Long Term Retention policy is invalid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get the long term retention policy for the database.": { + "$ref": "./examples/LongTermRetentionPolicyListByDatabase.json" + } + } + } + } + }, + "definitions": { + "BaseLongTermRetentionPolicyProperties": { + "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 monthly 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" + } + } + }, + "LongTermRetentionPolicy": { + "description": "A long term retention policy.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/BaseLongTermRetentionPolicyProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "LongTermRetentionPolicyListResult": { + "description": "A list of long term retention policies.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/LongTermRetentionPolicy" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/MaintenanceWindowOptions.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/MaintenanceWindowOptions.json new file mode 100644 index 000000000000..ce148699b18f --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/MaintenanceWindowOptions.json @@ -0,0 +1,184 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/maintenanceWindowOptions/current": { + "get": { + "tags": [ + "MaintenanceWindowOptions" + ], + "description": "Gets a list of available maintenance windows.", + "operationId": "MaintenanceWindowOptions_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the database to get maintenance windows options for.", + "required": true, + "type": "string" + }, + { + "name": "maintenanceWindowOptionsName", + "in": "query", + "description": "Maintenance window options name.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of maintenance windows options.", + "schema": { + "$ref": "#/definitions/MaintenanceWindowOptions" + } + }, + "default": { + "description": "*** Error Responses: ***" + } + }, + "x-ms-examples": { + "Gets a list of available maintenance windows for a selected database.": { + "$ref": "./examples/GetMaintenanceWindowOptions.json" + } + } + } + } + }, + "definitions": { + "MaintenanceWindowOptionsProperties": { + "description": "Maintenance window options properties.", + "type": "object", + "properties": { + "isEnabled": { + "description": "Whether maintenance windows are enabled for the database.", + "type": "boolean" + }, + "maintenanceWindowCycles": { + "description": "Available maintenance cycles e.g. {Saturday, 0, 48*60}, {Wednesday, 0, 24*60}.", + "type": "array", + "items": { + "$ref": "#/definitions/MaintenanceWindowTimeRange" + } + }, + "minDurationInMinutes": { + "format": "int32", + "description": "Minimum duration of maintenance window.", + "type": "integer" + }, + "defaultDurationInMinutes": { + "format": "int32", + "description": "Default duration for maintenance window.", + "type": "integer" + }, + "minCycles": { + "format": "int32", + "description": "Minimum number of maintenance windows cycles to be set on the database.", + "type": "integer" + }, + "timeGranularityInMinutes": { + "format": "int32", + "description": "Time granularity in minutes for maintenance windows.", + "type": "integer" + }, + "allowMultipleMaintenanceWindowsPerCycle": { + "description": "Whether we allow multiple maintenance windows per cycle.", + "type": "boolean" + } + } + }, + "MaintenanceWindowTimeRange": { + "description": "Maintenance window time range.", + "type": "object", + "properties": { + "dayOfWeek": { + "description": "Day of maintenance window.", + "enum": [ + "Sunday", + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday" + ], + "type": "string", + "x-ms-enum": { + "name": "DayOfWeek", + "modelAsString": true + } + }, + "startTime": { + "description": "Start time minutes offset from 12am.", + "type": "string" + }, + "duration": { + "description": "Duration of maintenance window in minutes.", + "type": "string" + } + } + }, + "MaintenanceWindowOptions": { + "description": "Maintenance window options.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/MaintenanceWindowOptionsProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/MaintenanceWindows.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/MaintenanceWindows.json new file mode 100644 index 000000000000..ed66dc4d01f4 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/MaintenanceWindows.json @@ -0,0 +1,211 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/maintenanceWindows/current": { + "get": { + "tags": [ + "MaintenanceWindows" + ], + "description": "Gets maintenance windows settings for a database.", + "operationId": "MaintenanceWindows_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the database to get maintenance windows for.", + "required": true, + "type": "string" + }, + { + "name": "maintenanceWindowName", + "in": "query", + "description": "Maintenance window name.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved maintenance windows settings.", + "schema": { + "$ref": "#/definitions/MaintenanceWindows" + } + }, + "default": { + "description": "*** Error Responses: ***" + } + }, + "x-ms-examples": { + "Gets maintenance window settings for a selected database.": { + "$ref": "./examples/GetMaintenanceWindows.json" + } + } + }, + "put": { + "tags": [ + "MaintenanceWindows" + ], + "description": "Sets maintenance windows settings for a database.", + "operationId": "MaintenanceWindows_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the database to set maintenance windows for.", + "required": true, + "type": "string" + }, + { + "name": "maintenanceWindowName", + "in": "query", + "description": "Maintenance window name.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/MaintenanceWindows" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully set maintenance windows settings." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidMaintenanceWindowSelection - Invalid maintenance window selection." + } + }, + "x-ms-examples": { + "Sets maintenance window settings for a selected database.": { + "$ref": "./examples/CreateOrUpdateMaintenanceWindows.json" + } + } + } + } + }, + "definitions": { + "MaintenanceWindowsProperties": { + "description": "Maintenance windows resource properties.", + "type": "object", + "properties": { + "timeRanges": { + "type": "array", + "items": { + "$ref": "#/definitions/MaintenanceWindowTimeRange" + } + } + } + }, + "MaintenanceWindowTimeRange": { + "description": "Maintenance window time range.", + "type": "object", + "properties": { + "dayOfWeek": { + "description": "Day of maintenance window.", + "enum": [ + "Sunday", + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday" + ], + "type": "string", + "x-ms-enum": { + "name": "DayOfWeek", + "modelAsString": true + } + }, + "startTime": { + "description": "Start time minutes offset from 12am.", + "type": "string" + }, + "duration": { + "description": "Duration of maintenance window in minutes.", + "type": "string" + } + } + }, + "MaintenanceWindows": { + "description": "Maintenance windows.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/MaintenanceWindowsProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedBackupShortTermRetentionPolicies.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedBackupShortTermRetentionPolicies.json new file mode 100644 index 000000000000..884acdf61047 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedBackupShortTermRetentionPolicies.json @@ -0,0 +1,332 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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/managedInstances/{managedInstanceName}/databases/{databaseName}/backupShortTermRetentionPolicies/{policyName}": { + "get": { + "tags": [ + "ManagedBackupShortTermRetentionPolicies" + ], + "description": "Gets a managed database's short term retention policy.", + "operationId": "ManagedBackupShortTermRetentionPolicies_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "policyName", + "in": "path", + "description": "The policy name.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "ManagedShortTermRetentionPolicyName", + "modelAsString": true + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the policy.", + "schema": { + "$ref": "#/definitions/ManagedBackupShortTermRetentionPolicy" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidBackupRetentionDays - The retention days of {0} is not a valid configuration. Valid backup retention must be in 7-day increments (7, 14, 21, etc.)\n\n * 400 InvalidRestorableDroppedDatabaseDeletionDate - The restorable dropped database deletion date given is invalid\n\n * 400 InvalidRestorableDroppedDatabaseId - Invalid restorable dropped database identifier\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-examples": { + "Get the short term retention policy for the database.": { + "$ref": "./examples/GetManagedShortTermRetentionPolicy.json" + } + } + }, + "put": { + "tags": [ + "ManagedBackupShortTermRetentionPolicies" + ], + "description": "Updates a managed database's short term retention policy.", + "operationId": "ManagedBackupShortTermRetentionPolicies_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "$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": "ManagedShortTermRetentionPolicyName", + "modelAsString": true + } + }, + { + "name": "parameters", + "in": "body", + "description": "The short term retention policy info.", + "required": true, + "schema": { + "$ref": "#/definitions/ManagedBackupShortTermRetentionPolicy" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the policy.", + "schema": { + "$ref": "#/definitions/ManagedBackupShortTermRetentionPolicy" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidBackupRetentionDays - The retention days of {0} is not a valid configuration. Valid backup retention must be in 7-day increments (7, 14, 21, etc.)\n\n * 400 InvalidRestorableDroppedDatabaseDeletionDate - The restorable dropped database deletion date given is invalid\n\n * 400 InvalidRestorableDroppedDatabaseId - Invalid restorable dropped database identifier\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 InvalidBackupRetentionPeriod - The retention days of {0} is not a valid configuration. Valid backup retention in days must be between {1} and {2}\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 CannotFindObject - Cannot find the object because it does not exist or you do not have permissions\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update the short term retention policy for the database.": { + "$ref": "./examples/UpdateManagedShortTermRetentionPolicy.json" + } + } + }, + "patch": { + "tags": [ + "ManagedBackupShortTermRetentionPolicies" + ], + "description": "Updates a managed database's short term retention policy.", + "operationId": "ManagedBackupShortTermRetentionPolicies_Update", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "$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": "ManagedShortTermRetentionPolicyName", + "modelAsString": true + } + }, + { + "name": "parameters", + "in": "body", + "description": "The short term retention policy info.", + "required": true, + "schema": { + "$ref": "#/definitions/ManagedBackupShortTermRetentionPolicy" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the policy.", + "schema": { + "$ref": "#/definitions/ManagedBackupShortTermRetentionPolicy" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidBackupRetentionDays - The retention days of {0} is not a valid configuration. Valid backup retention must be in 7-day increments (7, 14, 21, etc.)\n\n * 400 InvalidRestorableDroppedDatabaseDeletionDate - The restorable dropped database deletion date given is invalid\n\n * 400 InvalidRestorableDroppedDatabaseId - Invalid restorable dropped database identifier\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 InvalidBackupRetentionPeriod - The retention days of {0} is not a valid configuration. Valid backup retention in days must be between {1} and {2}\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 CannotFindObject - Cannot find the object because it does not exist or you do not have permissions\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update the short term retention policy for the database.": { + "$ref": "./examples/UpdateManagedShortTermRetentionPolicy.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/databases/{databaseName}/backupShortTermRetentionPolicies": { + "get": { + "tags": [ + "ManagedBackupShortTermRetentionPolicies" + ], + "description": "Gets a managed database's short term retention policy list.", + "operationId": "ManagedBackupShortTermRetentionPolicies_ListByDatabase", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the policy.", + "schema": { + "$ref": "#/definitions/ManagedBackupShortTermRetentionPolicyListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidBackupRetentionDays - The retention days of {0} is not a valid configuration. Valid backup retention must be in 7-day increments (7, 14, 21, etc.)\n\n * 400 InvalidRestorableDroppedDatabaseDeletionDate - The restorable dropped database deletion date given is invalid\n\n * 400 InvalidRestorableDroppedDatabaseId - Invalid restorable dropped database identifier\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get the short term retention policy list for the database.": { + "$ref": "./examples/GetListManagedShortTermRetentionPolicy.json" + } + } + } + } + }, + "definitions": { + "ManagedBackupShortTermRetentionPolicyProperties": { + "description": "Properties of a short term retention policy", + "type": "object", + "properties": { + "retentionDays": { + "format": "int32", + "description": "The backup retention period in days. This is how many days Point-in-Time Restore will be supported.", + "type": "integer" + } + } + }, + "ManagedBackupShortTermRetentionPolicy": { + "description": "A short term retention policy.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ManagedBackupShortTermRetentionPolicyProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "ManagedBackupShortTermRetentionPolicyListResult": { + "description": "A list of short term retention policies.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedBackupShortTermRetentionPolicy" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "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" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedDatabaseColumns.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedDatabaseColumns.json new file mode 100644 index 000000000000..1bf8008d3a8f --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedDatabaseColumns.json @@ -0,0 +1,390 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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/managedInstances/{managedInstanceName}/databases/{databaseName}/columns": { + "get": { + "tags": [ + "ManagedDatabaseColumns" + ], + "description": "List managed database columns", + "operationId": "ManagedDatabaseColumns_ListByDatabase", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "schema", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "table", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "column", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "orderBy", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "$skiptoken", + "in": "query", + "description": "An opaque token that identifies a starting point in the collection.", + "required": false, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved database columns.", + "schema": { + "$ref": "#/definitions/DatabaseColumnListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 UnsupportedColumnOrderByProperty - The order-by property '{0}' is not supported. Allowed properties are: {1}.\n\n * 400 UnsupportedColumnSortDirection - The column sort direction '{0}' is not supported. Allowed values are: {1}.\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 ResourceDoesNotExist - Resource with the name '{0}' does not exist. To continue, specify a valid resource name.\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List managed database columns": { + "$ref": "./examples/ManagedColumnsListByDatabaseMin.json" + }, + "Filter managed database columns": { + "$ref": "./examples/ManagedColumnsListByDatabaseMax.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/databases/{databaseName}/schemas/{schemaName}/tables/{tableName}/columns": { + "get": { + "tags": [ + "ManagedDatabaseColumns" + ], + "description": "List managed database columns", + "operationId": "ManagedDatabaseColumns_ListByTable", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "schemaName", + "in": "path", + "description": "The name of the schema.", + "required": true, + "type": "string" + }, + { + "name": "tableName", + "in": "path", + "description": "The name of the table.", + "required": true, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "An OData filter expression that filters elements in the collection.", + "required": false, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved managed database columns.", + "schema": { + "$ref": "#/definitions/DatabaseColumnListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 ResourceDoesNotExist - Resource with the name '{0}' does not exist. To continue, specify a valid resource name.\n\n * 404 InvalidDatabaseSchema - Schema is missing in database.\n\n * 404 InvalidDatabaseTable - Table is missing in database.\n\n * 404 InvalidDatabaseColumn - Column is missing in table.\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable." + } + }, + "x-ms-odata": "#/definitions/DatabaseColumn", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List managed database columns": { + "$ref": "./examples/ManagedDatabaseColumnListByTable.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/databases/{databaseName}/schemas/{schemaName}/tables/{tableName}/columns/{columnName}": { + "get": { + "tags": [ + "ManagedDatabaseColumns" + ], + "description": "Get managed database column", + "operationId": "ManagedDatabaseColumns_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "schemaName", + "in": "path", + "description": "The name of the schema.", + "required": true, + "type": "string" + }, + { + "name": "tableName", + "in": "path", + "description": "The name of the table.", + "required": true, + "type": "string" + }, + { + "name": "columnName", + "in": "path", + "description": "The name of the column.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved managed database column.", + "schema": { + "$ref": "#/definitions/DatabaseColumn" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 ResourceDoesNotExist - Resource with the name '{0}' does not exist. To continue, specify a valid resource name.\n\n * 404 InvalidDatabaseSchema - Schema is missing in database.\n\n * 404 InvalidDatabaseTable - Table is missing in database.\n\n * 404 InvalidDatabaseColumn - Column is missing in table.\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable." + } + }, + "x-ms-examples": { + "Get managed database column": { + "$ref": "./examples/ManagedDatabaseColumnGet.json" + } + } + } + } + }, + "definitions": { + "DatabaseColumnListResult": { + "description": "A list of database columns.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/DatabaseColumn" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "DatabaseColumnProperties": { + "description": "Database column properties.", + "type": "object", + "properties": { + "columnType": { + "description": "The column data type.", + "enum": [ + "image", + "text", + "uniqueidentifier", + "date", + "time", + "datetime2", + "datetimeoffset", + "tinyint", + "smallint", + "int", + "smalldatetime", + "real", + "money", + "datetime", + "float", + "sql_variant", + "ntext", + "bit", + "decimal", + "numeric", + "smallmoney", + "bigint", + "hierarchyid", + "geometry", + "geography", + "varbinary", + "varchar", + "binary", + "char", + "timestamp", + "nvarchar", + "nchar", + "xml", + "sysname" + ], + "type": "string", + "x-ms-enum": { + "name": "ColumnDataType", + "modelAsString": true + } + }, + "temporalType": { + "description": "The table temporal type.", + "enum": [ + "NonTemporalTable", + "HistoryTable", + "SystemVersionedTemporalTable" + ], + "type": "string", + "x-ms-enum": { + "name": "TableTemporalType", + "modelAsString": true + } + }, + "memoryOptimized": { + "description": "Whether or not the column belongs to a memory optimized table.", + "type": "boolean" + }, + "isComputed": { + "description": "Whether or not the column is computed.", + "type": "boolean" + } + } + }, + "DatabaseColumn": { + "description": "A database column resource.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/DatabaseColumnProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + } + }, + "parameters": { + "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" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedDatabaseQueries.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedDatabaseQueries.json new file mode 100644 index 000000000000..dfbde51d7623 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedDatabaseQueries.json @@ -0,0 +1,382 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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/managedInstances/{managedInstanceName}/databases/{databaseName}/queries/{queryId}": { + "get": { + "tags": [ + "ManagedDatabaseQueries" + ], + "description": "Get query by query id.", + "operationId": "ManagedDatabaseQueries_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "queryId", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved query text.", + "schema": { + "$ref": "#/definitions/ManagedInstanceQuery" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-examples": { + "Obtain query properties": { + "$ref": "./examples/ManagedInstanceQueryGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/databases/{databaseName}/queries/{queryId}/statistics": { + "get": { + "tags": [ + "ManagedDatabaseQueries" + ], + "description": "Get query execution statistics by query id.", + "operationId": "ManagedDatabaseQueries_ListByQuery", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "queryId", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "startTime", + "in": "query", + "description": "Start time for observed period.", + "required": false, + "type": "string" + }, + { + "name": "endTime", + "in": "query", + "description": "End time for observed period.", + "required": false, + "type": "string" + }, + { + "name": "interval", + "in": "query", + "description": "The time step to be used to summarize the metric values.", + "required": false, + "type": "string", + "enum": [ + "PT1H", + "P1D" + ], + "x-ms-enum": { + "name": "QueryTimeGrainType", + "modelAsString": true + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved query text.", + "schema": { + "$ref": "#/definitions/ManagedInstanceQueryStatistics" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Obtain query execution statistics. Minimal example with only mandatory request parameters.": { + "$ref": "./examples/ManagedInstanceQueryStatisticsListMin.json" + }, + "Obtain query execution statistics": { + "$ref": "./examples/ManagedInstanceQueryStatisticsList.json" + }, + "Obtain query execution statistics. Example with all request parameters.": { + "$ref": "./examples/ManagedInstanceQueryStatisticsListMax.json" + } + } + } + } + }, + "definitions": { + "QueryProperties": { + "description": "Properties of a database query.", + "type": "object", + "properties": { + "queryText": { + "description": "Query text.", + "type": "string" + } + } + }, + "ManagedInstanceQuery": { + "description": "Database query.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/QueryProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "ManagedInstanceQueryStatistics": { + "description": "Execution statistics for one particular query", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/QueryStatistics" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "QueryStatisticsProperties": { + "description": "Properties of a query execution statistics.", + "type": "object", + "properties": { + "databaseName": { + "description": "Database name of the database in which this query was executed.", + "type": "string", + "readOnly": true + }, + "queryId": { + "description": "Unique query id (unique within one database).", + "type": "string", + "readOnly": true + }, + "startTime": { + "description": "The start time for the metric (ISO-8601 format).", + "type": "string", + "readOnly": true + }, + "endTime": { + "description": "The end time for the metric (ISO-8601 format).", + "type": "string", + "readOnly": true + }, + "intervals": { + "description": "List of intervals with appropriate metric data", + "type": "array", + "items": { + "$ref": "#/definitions/QueryMetricInterval" + } + } + } + }, + "QueryMetricInterval": { + "description": "Properties of a query metrics interval.", + "type": "object", + "properties": { + "intervalStartTime": { + "description": "The start time for the metric interval (ISO-8601 format).", + "type": "string", + "readOnly": true + }, + "intervalType": { + "description": "Interval type (length).", + "enum": [ + "PT1H", + "P1D" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "QueryTimeGrainType", + "modelAsString": true + } + }, + "executionCount": { + "format": "int64", + "description": "Execution count of a query in this interval.", + "type": "integer", + "readOnly": true + }, + "metrics": { + "description": "List of metric objects for this interval", + "type": "array", + "items": { + "$ref": "#/definitions/QueryMetricProperties" + } + } + } + }, + "QueryMetricProperties": { + "description": "Properties of a topquery metric in one interval.", + "type": "object", + "properties": { + "name": { + "description": "The name information for the metric.", + "type": "string", + "readOnly": true + }, + "displayName": { + "description": "The UI appropriate name for the metric.", + "type": "string", + "readOnly": true + }, + "unit": { + "description": "The unit of the metric.", + "enum": [ + "percentage", + "KB", + "microseconds", + "count" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "QueryMetricUnitType", + "modelAsString": true + } + }, + "value": { + "format": "double", + "description": "The value of the metric.", + "type": "number", + "readOnly": true + }, + "min": { + "format": "double", + "description": "Metric value when min() aggregate function is used over the interval.", + "type": "number", + "readOnly": true + }, + "max": { + "format": "double", + "description": "Metric value when max() aggregate function is used over the interval.", + "type": "number", + "readOnly": true + }, + "avg": { + "format": "double", + "description": "Metric value when avg() aggregate function is used over the interval.", + "type": "number", + "readOnly": true + }, + "sum": { + "format": "double", + "description": "Metric value when sum() aggregate function is used over the interval.", + "type": "number", + "readOnly": true + }, + "stdev": { + "format": "double", + "description": "Metric value when stdev aggregate function is used over the interval.", + "type": "number", + "readOnly": true + } + } + }, + "QueryStatistics": { + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/QueryStatisticsProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + } + }, + "parameters": { + "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" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedDatabaseRestoreDetails.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedDatabaseRestoreDetails.json new file mode 100644 index 000000000000..4986cff92fbf --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedDatabaseRestoreDetails.json @@ -0,0 +1,186 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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/managedInstances/{managedInstanceName}/databases/{databaseName}/restoreDetails/{restoreDetailsName}": { + "get": { + "tags": [ + "ManagedDatabaseRestoreDetails" + ], + "description": "Gets managed database restore details.", + "operationId": "ManagedDatabaseRestoreDetails_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "restoreDetailsName", + "in": "path", + "description": "The name of the restore details to retrieve.", + "required": true, + "type": "string", + "enum": [ + "Default" + ], + "x-ms-enum": { + "name": "RestoreDetailsName", + "modelAsString": true + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved restore details.", + "schema": { + "$ref": "#/definitions/ManagedDatabaseRestoreDetailsResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 AutoCompleteMissingLastBackupName - Auto complete restore request must have lastBackupName parameter provided.\n\n * 400 MissingThumbprint - Can not find server certificate.\n\n * 400 BlobStorageServerFailure - Blob storage server failure has occurred.\n\n * 400 BackupSetNotFound - No backups were found to restore the database. Please contact support to restore the database.\n\n * 400 FullBackupNotFound - Full backup can not be found.\n\n * 400 RestoreFromStripedBackupsNotEnabled - Restoring from striped backups is not supported.\n\n * 400 BrokenRestorePlanNoFullBackup - The restore plan is broken because there is no full backup.\n\n * 400 BrokenRestorePlanWrongLogBackupLSN - The restore plan is broken because firstLsn of current log backup is not <= lastLsn of next log backup.\n\n * 400 BrokenRestorePlanWrongDiffBackupLSN - The restore plan is broken because firstLsn of diff backup is not >= firstLsn of full backup.\n\n * 400 BrokenRestorePlanGapInLogBackups - The restore plan is broken because firstLsn of current log backup is not equal to lastLsn of prev log backup.\n\n * 400 XtpInitializedDuringRestore - Memory-optimized filegroup must be empty in order to be restored on General Purpose tier of SQL Database Managed Instance.\n\n * 400 FullBackupMissingChecksum - Provided full backup is missing checksum.\n\n * 400 FullBackupDamaged - Provided full backup is damaged.\n\n * 400 PartiallyContainedDatabaseUnsupported - \"Backup for a partially contained database is not supported.\"\n\n * 400 RequiredBackupIsNotLastRestored - Migration cannot be completed because provided backup file name is not the name of the last backup file that is restored.\n\n * 400 ManagedInstanceStorageLimitHit - The managed instance has reached its storage limit.\n\n * 400 IncompatiblePhysicalLayoutTooFewDataFiles - Database backup contains incompatible physical layout. No data files are found in the backup.\n\n * 400 IncompatiblePhysicalLayoutNonOnlineDataFilesExist - Database backup contains incompatible physical layout. Non-online data files exist.\n\n * 400 IncompatiblePhysicalLayoutWrongNumberOfLogFiles - Database backup contains incompatible physical layout. Multiple log files are not supported.\n\n * 400 IncompatiblePhysicalLayoutNonOnlineLogFilesExist - Database backup contains incompatible physical layout. Non-online log files exist.\n\n * 400 IncompatiblePhysicalLayoutTooManyNonDataLogFiles - Database backup contains incompatible physical layout. Too many non-data/log files.\n\n * 400 ExternalBackupAlreadySignaledToComplete - The restore request has already been signaled to complete.\n\n * 400 ExternalBackupRestoreHasNotBeenStarted - The restore request can only be completed once the restore has started.\n\n * 400 ExternalBackupUpgradeInProgress - The restore request cannot be completed, since upgrade is in progress.\n\n * 400 IncompatiblePhysicalLayoutTooManyXTPFiles - Database backup contains incompatible physical layout. Multiple files found in the filegroup that contains MEMORY_OPTIMIZED_DATA.\n\n * 400 BlobStorageFailure - Blob storage failure has occurred.\n\n * 400 ManagedDatabaseNotInRestoringState - Managed database is not in Restoring state." + } + }, + "x-ms-examples": { + "Managed database restore details.": { + "$ref": "./examples/ManagedDatabaseRestoreDetails.json" + } + } + } + } + }, + "definitions": { + "ManagedDatabaseRestoreDetailsProperties": { + "description": "The managed database's restore details properties.", + "type": "object", + "properties": { + "status": { + "description": "Restore status.", + "type": "string", + "readOnly": true + }, + "currentRestoringFileName": { + "description": "Current restoring file name.", + "type": "string", + "readOnly": true + }, + "lastRestoredFileName": { + "description": "Last restored file name.", + "type": "string", + "readOnly": true + }, + "lastRestoredFileTime": { + "format": "date-time", + "description": "Last restored file time.", + "type": "string", + "readOnly": true + }, + "percentCompleted": { + "format": "double", + "description": "Percent completed.", + "type": "number", + "readOnly": true + }, + "unrestorableFiles": { + "description": "List of unrestorable files.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "numberOfFilesDetected": { + "format": "int64", + "description": "Number of files detected.", + "type": "integer", + "readOnly": true + }, + "lastUploadedFileName": { + "description": "Last uploaded file name.", + "type": "string", + "readOnly": true + }, + "lastUploadedFileTime": { + "format": "date-time", + "description": "Last uploaded file time.", + "type": "string", + "readOnly": true + }, + "blockReason": { + "description": "The reason why restore is in Blocked state.", + "type": "string", + "readOnly": true + } + } + }, + "ManagedDatabaseRestoreDetailsResult": { + "description": "A managed database restore details.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ManagedDatabaseRestoreDetailsProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + } + }, + "parameters": { + "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" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedDatabaseSchemas.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedDatabaseSchemas.json new file mode 100644 index 000000000000..b71b757f14ec --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedDatabaseSchemas.json @@ -0,0 +1,182 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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/managedInstances/{managedInstanceName}/databases/{databaseName}/schemas": { + "get": { + "tags": [ + "ManagedDatabaseSchemas" + ], + "description": "List managed database schemas", + "operationId": "ManagedDatabaseSchemas_ListByDatabase", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "$filter", + "in": "query", + "description": "An OData filter expression that filters elements in the collection.", + "required": false, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved managed database schemas.", + "schema": { + "$ref": "#/definitions/DatabaseSchemaListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 ResourceDoesNotExist - Resource with the name '{0}' does not exist. To continue, specify a valid resource name.\n\n * 404 InvalidDatabaseSchema - Schema is missing in database.\n\n * 404 InvalidDatabaseTable - Table is missing in database.\n\n * 404 InvalidDatabaseColumn - Column is missing in table.\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable." + } + }, + "x-ms-odata": "#/definitions/DatabaseSchema", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List managed database schemas": { + "$ref": "./examples/ManagedDatabaseSchemaListByDatabase.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/databases/{databaseName}/schemas/{schemaName}": { + "get": { + "tags": [ + "ManagedDatabaseSchemas" + ], + "description": "Get managed database schema", + "operationId": "ManagedDatabaseSchemas_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "schemaName", + "in": "path", + "description": "The name of the schema.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved managed database schema.", + "schema": { + "$ref": "#/definitions/DatabaseSchema" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 ResourceDoesNotExist - Resource with the name '{0}' does not exist. To continue, specify a valid resource name.\n\n * 404 InvalidDatabaseSchema - Schema is missing in database.\n\n * 404 InvalidDatabaseTable - Table is missing in database.\n\n * 404 InvalidDatabaseColumn - Column is missing in table.\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable." + } + }, + "x-ms-examples": { + "Get managed database schema": { + "$ref": "./examples/ManagedDatabaseSchemaGet.json" + } + } + } + } + }, + "definitions": { + "DatabaseSchema": { + "description": "A database schema resource.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": {} + }, + "DatabaseSchemaListResult": { + "description": "A list of database schemas.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/DatabaseSchema" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "DatabaseNameParameter": { + "name": "databaseName", + "in": "path", + "description": "The name of the database.", + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedDatabaseSecurityAlertPolicies.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedDatabaseSecurityAlertPolicies.json new file mode 100644 index 000000000000..f06c3f63b75a --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedDatabaseSecurityAlertPolicies.json @@ -0,0 +1,325 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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/managedInstances/{managedInstanceName}/databases/{databaseName}/securityAlertPolicies/{securityAlertPolicyName}": { + "get": { + "tags": [ + "ManagedDatabaseSecurityAlertPolicies" + ], + "description": "Gets a managed database's security alert policy.", + "operationId": "ManagedDatabaseSecurityAlertPolicies_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the managed database for which the security alert policy is defined.", + "required": true, + "type": "string" + }, + { + "name": "securityAlertPolicyName", + "in": "path", + "description": "The name of the security alert policy.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "SecurityAlertPolicyName", + "modelAsString": true + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the managed database security alert policy.", + "schema": { + "$ref": "#/definitions/ManagedDatabaseSecurityAlertPolicy" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 SecurityAlertPoliciesInvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 SecurityAlertPoliciesInvalidStorageAccountCredentials - The provided storage account access key is not valid.\n\n * 400 UpdateNotAllowedOnServerContainingPausedDWDatabase - Setting server Threat Detection settings is not allowed on a server with a paused Data Warehouse database\n\n * 400 SecurityAlertPoliciesInsufficientDiskSpace - Insufficient disk space to save security alert policy metadata in the database\n\n * 400 SecurityAlertPoliciesInsufficientStorageAccountPermissions - Insufficient read or write permissions on the provided storage account.\n\n * 400 SecurityAlertPoliciesStorageAccountIsDisabled - The storage account provided in the threat detection policy is disabled.\n\n * 400 InvalidServerSecurityAlertPolicyCreateRequest - The create server Threat Detection security alert policy request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 400 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 409 ServerSecurityAlertPolicyInProgress - Set server security alert policy is already in progress\n\n * 409 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later.\n\n * 500 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 500 GetServerSecurityAlertPolicyFailed - Failed to get Threat Detection settings" + } + }, + "x-ms-examples": { + "Get a database's threat detection policy": { + "$ref": "./examples/ManagedDatabaseSecurityAlertGet.json" + } + } + }, + "put": { + "tags": [ + "ManagedDatabaseSecurityAlertPolicies" + ], + "description": "Creates or updates a database's security alert policy.", + "operationId": "ManagedDatabaseSecurityAlertPolicies_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the managed database for which the security alert policy is defined.", + "required": true, + "type": "string" + }, + { + "name": "securityAlertPolicyName", + "in": "path", + "description": "The name of the security alert policy.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "SecurityAlertPolicyName", + "modelAsString": true + } + }, + { + "name": "parameters", + "in": "body", + "description": "The database security alert policy.", + "required": true, + "schema": { + "$ref": "#/definitions/ManagedDatabaseSecurityAlertPolicy" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully set the managed database security alert policy.", + "schema": { + "$ref": "#/definitions/ManagedDatabaseSecurityAlertPolicy" + } + }, + "default": { + "description": "*** Error Responses: ***" + }, + "201": { + "description": "Successfully created the managed database security alert policy.", + "schema": { + "$ref": "#/definitions/ManagedDatabaseSecurityAlertPolicy" + } + } + }, + "x-ms-examples": { + "Update a database's threat detection policy with minimal parameters": { + "$ref": "./examples/ManagedDatabaseSecurityAlertCreateMin.json" + }, + "Update a database's threat detection policy with all parameters": { + "$ref": "./examples/ManagedDatabaseSecurityAlertCreateMax.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/databases/{databaseName}/securityAlertPolicies": { + "get": { + "tags": [ + "ManagedDatabaseSecurityAlertPolicies" + ], + "description": "Gets a list of managed database's security alert policies.", + "operationId": "ManagedDatabaseSecurityAlertPolicies_ListByDatabase", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the managed database for which the security alert policies are defined.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the managed database security alert policies.", + "schema": { + "$ref": "#/definitions/ManagedDatabaseSecurityAlertPolicyListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 SecurityAlertPoliciesInvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 SecurityAlertPoliciesInvalidStorageAccountCredentials - The provided storage account access key is not valid.\n\n * 400 UpdateNotAllowedOnServerContainingPausedDWDatabase - Setting server Threat Detection settings is not allowed on a server with a paused Data Warehouse database\n\n * 400 SecurityAlertPoliciesInsufficientDiskSpace - Insufficient disk space to save security alert policy metadata in the database\n\n * 400 SecurityAlertPoliciesInsufficientStorageAccountPermissions - Insufficient read or write permissions on the provided storage account.\n\n * 400 SecurityAlertPoliciesStorageAccountIsDisabled - The storage account provided in the threat detection policy is disabled.\n\n * 400 InvalidServerSecurityAlertPolicyCreateRequest - The create server Threat Detection security alert policy request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 400 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 409 ServerSecurityAlertPolicyInProgress - Set server security alert policy is already in progress\n\n * 409 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later.\n\n * 500 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 500 GetServerSecurityAlertPolicyFailed - Failed to get Threat Detection settings" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get a list of the database's threat detection policies.": { + "$ref": "./examples/ManagedDatabaseSecurityAlertListByDatabase.json" + } + } + } + } + }, + "definitions": { + "SecurityAlertPolicyProperties": { + "description": "Properties of a security alert policy.", + "required": [ + "state" + ], + "type": "object", + "properties": { + "state": { + "description": "Specifies the state of the policy, whether it is enabled or disabled or a policy has not been applied yet on the specific database.", + "enum": [ + "New", + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "SecurityAlertPolicyState", + "modelAsString": false + } + }, + "disabledAlerts": { + "description": "Specifies an array of alerts that are disabled. Allowed values are: Sql_Injection, Sql_Injection_Vulnerability, Access_Anomaly, Data_Exfiltration, Unsafe_Action, Brute_Force", + "type": "array", + "items": { + "type": "string" + } + }, + "emailAddresses": { + "description": "Specifies an array of e-mail addresses to which the alert is sent.", + "type": "array", + "items": { + "type": "string" + } + }, + "emailAccountAdmins": { + "description": "Specifies that the alert is sent to the account administrators.", + "type": "boolean" + }, + "storageEndpoint": { + "description": "Specifies the blob storage endpoint (e.g. https://MyAccount.blob.core.windows.net). This blob storage will hold all Threat Detection audit logs.", + "type": "string" + }, + "storageAccountAccessKey": { + "description": "Specifies the identifier key of the Threat Detection audit storage account.", + "type": "string" + }, + "retentionDays": { + "format": "int32", + "description": "Specifies the number of days to keep in the Threat Detection audit logs.", + "type": "integer" + }, + "creationTime": { + "format": "date-time", + "description": "Specifies the UTC creation time of the policy.", + "type": "string", + "readOnly": true + } + } + }, + "ManagedDatabaseSecurityAlertPolicy": { + "description": "A managed database security alert policy.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/SecurityAlertPolicyProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "ManagedDatabaseSecurityAlertPolicyListResult": { + "description": "A list of the managed database's security alert policies.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedDatabaseSecurityAlertPolicy" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": {}, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedDatabaseSecurityEvents.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedDatabaseSecurityEvents.json new file mode 100644 index 000000000000..250a958d90ac --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedDatabaseSecurityEvents.json @@ -0,0 +1,282 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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/managedInstances/{managedInstanceName}/databases/{databaseName}/securityEvents": { + "get": { + "tags": [ + "ManagedDatabaseSecurityEvents" + ], + "description": "Gets a list of security events.", + "operationId": "ManagedDatabaseSecurityEvents_ListByDatabase", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the managed database for which the security events are retrieved.", + "required": true, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "An OData filter expression that filters elements in the collection.", + "required": false, + "type": "string" + }, + { + "name": "$skip", + "in": "query", + "description": "The number of elements in the collection to skip.", + "required": false, + "type": "integer", + "format": "int64" + }, + { + "name": "$top", + "in": "query", + "description": "The number of elements to return from the collection.", + "required": false, + "type": "integer", + "format": "int64" + }, + { + "name": "$skiptoken", + "in": "query", + "description": "An opaque token that identifies a starting point in the collection.", + "required": false, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of security events.", + "schema": { + "$ref": "#/definitions/SecurityEventCollection" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + } + }, + "x-ms-odata": "#/definitions/SecurityEventsFilterParameters", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get the managed database's security events with minimal parameters": { + "$ref": "./examples/ManagedDatabaseSecurityEventsGetMin.json" + }, + "Get the managed database's security events with maximal parameters": { + "$ref": "./examples/ManagedDatabaseSecurityEventsGetMax.json" + } + } + } + } + }, + "definitions": { + "SecurityEventsFilterParameters": { + "description": "The properties that are supported in the $filter operation.", + "type": "object", + "properties": { + "eventTime": { + "format": "date-time", + "description": "Filter on the event time.", + "type": "string" + }, + "showServerRecords": { + "description": "Whether to show server records or not.", + "type": "boolean" + } + } + }, + "SecurityEventCollection": { + "description": "A list of security events.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/SecurityEvent" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "SecurityEventProperties": { + "description": "The properties of a security event.", + "type": "object", + "properties": { + "eventTime": { + "format": "date-time", + "description": "The time when the security event occurred.", + "type": "string", + "readOnly": true + }, + "securityEventType": { + "description": "The type of the security event.", + "enum": [ + "Undefined", + "SqlInjectionVulnerability", + "SqlInjectionExploit" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "SecurityEventType", + "modelAsString": false + } + }, + "subscription": { + "description": "The subscription name", + "type": "string", + "readOnly": true + }, + "server": { + "description": "The server name", + "type": "string", + "readOnly": true + }, + "database": { + "description": "The database name", + "type": "string", + "readOnly": true + }, + "clientIp": { + "description": "The IP address of the client who executed the statement.", + "type": "string", + "readOnly": true + }, + "applicationName": { + "description": "The application used to execute the statement.", + "type": "string", + "readOnly": true + }, + "principalName": { + "description": "The principal user who executed the statement", + "type": "string", + "readOnly": true + }, + "securityEventSqlInjectionAdditionalProperties": { + "$ref": "#/definitions/SecurityEventSqlInjectionAdditionalProperties", + "description": "The sql injection additional properties, populated only if the type of the security event is sql injection.", + "readOnly": true + } + } + }, + "SecurityEventSqlInjectionAdditionalProperties": { + "description": "The properties of a security event sql injection additional properties.", + "type": "object", + "properties": { + "threatId": { + "description": "The threat ID.", + "type": "string", + "readOnly": true + }, + "statement": { + "description": "The statement", + "type": "string", + "readOnly": true + }, + "statementHighlightOffset": { + "format": "int32", + "description": "The statement highlight offset", + "type": "integer", + "readOnly": true + }, + "statementHighlightLength": { + "format": "int32", + "description": "The statement highlight length", + "type": "integer", + "readOnly": true + }, + "errorCode": { + "format": "int32", + "description": "The sql error code", + "type": "integer", + "readOnly": true + }, + "errorSeverity": { + "format": "int32", + "description": "The sql error severity", + "type": "integer", + "readOnly": true + }, + "errorMessage": { + "description": "The sql error message", + "type": "string", + "readOnly": true + } + } + }, + "SecurityEvent": { + "description": "A security event.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/SecurityEventProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + } + }, + "parameters": { + "ManagedInstanceNameParameter": { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedDatabaseSensitivityLabels.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedDatabaseSensitivityLabels.json new file mode 100644 index 000000000000..ac0f350792bc --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedDatabaseSensitivityLabels.json @@ -0,0 +1,904 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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/managedInstances/{managedInstanceName}/databases/{databaseName}/schemas/{schemaName}/tables/{tableName}/columns/{columnName}/sensitivityLabels/{sensitivityLabelSource}": { + "get": { + "tags": [ + "ManagedDatabaseSensitivityLabels" + ], + "description": "Gets the sensitivity label of a given column", + "operationId": "ManagedDatabaseSensitivityLabels_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "schemaName", + "in": "path", + "description": "The name of the schema.", + "required": true, + "type": "string" + }, + { + "name": "tableName", + "in": "path", + "description": "The name of the table.", + "required": true, + "type": "string" + }, + { + "name": "columnName", + "in": "path", + "description": "The name of the column.", + "required": true, + "type": "string" + }, + { + "name": "sensitivityLabelSource", + "in": "path", + "description": "The source of the sensitivity label.", + "required": true, + "type": "string", + "enum": [ + "current", + "recommended" + ], + "x-ms-enum": { + "name": "SensitivityLabelSource", + "modelAsString": false + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the sensitivity label.", + "schema": { + "$ref": "#/definitions/SensitivityLabel" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 DatawarehouseDatabaseIsDeactivated - Could not execute Data Classification operation because the database is paused. Please resume it.\n\n * 400 SensitivityLabelSourceNameNotSupported - The specified sensitivity label source is not valid\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 SensitivityLabelsLabelNotFound - The specified sensitivity label could not be found\n\n * 404 SensitivityLabelsSchemaNotFound - The schema {0} could not be found\n\n * 404 SensitivityLabelsTableNotFound - The table {0} could not be found in schema {1}\n\n * 404 SensitivityLabelsColumnNotFound - The column {0} could not be found in table {2}.{1}\n\n * 501 SensitivityLabelRecommendedSourceNameNotSupported - 'Recommended' sensitivity label source is not supported yet\n\n * 501 SensitivityLabelRecommendedSourceNameNotSupported - 'Recommended' sensitivity label source is not supported yet" + } + }, + "x-ms-examples": { + "Gets the sensitivity label of a given column in a managed database": { + "$ref": "./examples/ManagedDatabaseColumnSensitivityLabelGet.json" + } + } + }, + "put": { + "tags": [ + "ManagedDatabaseSensitivityLabels" + ], + "description": "Creates or updates the sensitivity label of a given column", + "operationId": "ManagedDatabaseSensitivityLabels_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "schemaName", + "in": "path", + "description": "The name of the schema.", + "required": true, + "type": "string" + }, + { + "name": "tableName", + "in": "path", + "description": "The name of the table.", + "required": true, + "type": "string" + }, + { + "name": "columnName", + "in": "path", + "description": "The name of the column.", + "required": true, + "type": "string" + }, + { + "name": "sensitivityLabelSource", + "in": "path", + "description": "The source of the sensitivity label.", + "required": true, + "type": "string", + "enum": [ + "current" + ], + "x-ms-enum": { + "name": "WritableSensitivityLabelSource", + "modelAsString": false + } + }, + { + "name": "parameters", + "in": "body", + "description": "The column sensitivity label resource.", + "required": true, + "schema": { + "$ref": "#/definitions/SensitivityLabel" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the sensitivity label.", + "schema": { + "$ref": "#/definitions/SensitivityLabel" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 DatawarehouseDatabaseIsDeactivated - Could not execute Data Classification operation because the database is paused. Please resume it.\n\n * 400 SensitivityLabelSourceNameNotSupported - The specified sensitivity label source is not valid\n\n * 400 InvalidSensitivityLabelResource - The specified sensitivity label resource is not valid\n\n * 400 SensitivityLabelLabelNameAndInfoTypeNotProvided - At least one of LabelName and InformationType must be specified\n\n * 400 LabelNameTooLong - Label name cannot exceed {0} characters\n\n * 400 InformationTypeTooLong - Information type cannot exceed {0} characters\n\n * 400 LabelIdMustBeGuid - The provided ‘labelId’ is invalid. Value must be a GUID\n\n * 400 InformationTypeIdMustBeGuid - The provided ‘informationTypeId’ is invalid. Value must be a GUID\n\n * 400 LabelMissing - Label is required. At least one of ‘labelName’ or ‘labelId’ must be provided\n\n * 400 InformationTypeMissing - Information type is required. At least one of ‘informationType’ or ‘informationTypeId’ must be provided\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 SensitivityLabelsLabelNotFound - The specified sensitivity label could not be found\n\n * 404 SensitivityLabelsSchemaNotFound - The schema {0} could not be found\n\n * 404 SensitivityLabelsTableNotFound - The table {0} could not be found in schema {1}\n\n * 404 SensitivityLabelsColumnNotFound - The column {0} could not be found in table {2}.{1}\n\n * 501 SensitivityLabelRecommendedSourceNameNotSupported - 'Recommended' sensitivity label source is not supported yet\n\n * 501 SensitivityLabelRecommendedSourceNameNotSupported - 'Recommended' sensitivity label source is not supported yet" + }, + "201": { + "description": "Successfully created the sensitivity label.", + "schema": { + "$ref": "#/definitions/SensitivityLabel" + } + } + }, + "x-ms-examples": { + "Updates or creates a sensitivity label of a given column with all parameters in a managed database": { + "$ref": "./examples/ManagedDatabaseColumnSensitivityLabelCreate.json" + } + } + }, + "delete": { + "tags": [ + "ManagedDatabaseSensitivityLabels" + ], + "description": "Deletes the sensitivity label of a given column", + "operationId": "ManagedDatabaseSensitivityLabels_Delete", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "schemaName", + "in": "path", + "description": "The name of the schema.", + "required": true, + "type": "string" + }, + { + "name": "tableName", + "in": "path", + "description": "The name of the table.", + "required": true, + "type": "string" + }, + { + "name": "columnName", + "in": "path", + "description": "The name of the column.", + "required": true, + "type": "string" + }, + { + "name": "sensitivityLabelSource", + "in": "path", + "description": "The source of the sensitivity label.", + "required": true, + "type": "string", + "enum": [ + "current" + ], + "x-ms-enum": { + "name": "WritableSensitivityLabelSource", + "modelAsString": false + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the sensitivity label." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 DatawarehouseDatabaseIsDeactivated - Could not execute Data Classification operation because the database is paused. Please resume it.\n\n * 400 SensitivityLabelSourceNameNotSupported - The specified sensitivity label source is not valid\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 SensitivityLabelsLabelNotFound - The specified sensitivity label could not be found\n\n * 404 SensitivityLabelsSchemaNotFound - The schema {0} could not be found\n\n * 404 SensitivityLabelsTableNotFound - The table {0} could not be found in schema {1}\n\n * 404 SensitivityLabelsColumnNotFound - The column {0} could not be found in table {2}.{1}\n\n * 501 SensitivityLabelRecommendedSourceNameNotSupported - 'Recommended' sensitivity label source is not supported yet\n\n * 501 SensitivityLabelRecommendedSourceNameNotSupported - 'Recommended' sensitivity label source is not supported yet" + } + }, + "x-ms-examples": { + "Deletes the sensitivity label of a given column in a managed database": { + "$ref": "./examples/ManagedDatabaseColumnSensitivityLabelDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/databases/{databaseName}/schemas/{schemaName}/tables/{tableName}/columns/{columnName}/sensitivityLabels/{sensitivityLabelSource}/disable": { + "post": { + "tags": [ + "ManagedDatabaseSensitivityLabels" + ], + "description": "Disables sensitivity recommendations on a given column", + "operationId": "ManagedDatabaseSensitivityLabels_DisableRecommendation", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "schemaName", + "in": "path", + "description": "The name of the schema.", + "required": true, + "type": "string" + }, + { + "name": "tableName", + "in": "path", + "description": "The name of the table.", + "required": true, + "type": "string" + }, + { + "name": "columnName", + "in": "path", + "description": "The name of the column.", + "required": true, + "type": "string" + }, + { + "name": "sensitivityLabelSource", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "recommended" + ], + "x-ms-enum": { + "name": "SensitivityLabelSource", + "modelAsString": false + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully disabled the sensitivity recommendations on the given column." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SensitivityLabelsColumnNotFound - The column {0} could not be found in table {2}.{1}\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." + } + }, + "x-ms-examples": { + "Disables the sensitivity recommendations on a given column": { + "$ref": "./examples/ManagedDatabaseRecommendedColumnSensitivityLabelDisable.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/databases/{databaseName}/schemas/{schemaName}/tables/{tableName}/columns/{columnName}/sensitivityLabels/{sensitivityLabelSource}/enable": { + "post": { + "tags": [ + "ManagedDatabaseSensitivityLabels" + ], + "description": "Enables sensitivity recommendations on a given column (recommendations are enabled by default on all columns)", + "operationId": "ManagedDatabaseSensitivityLabels_EnableRecommendation", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "schemaName", + "in": "path", + "description": "The name of the schema.", + "required": true, + "type": "string" + }, + { + "name": "tableName", + "in": "path", + "description": "The name of the table.", + "required": true, + "type": "string" + }, + { + "name": "columnName", + "in": "path", + "description": "The name of the column.", + "required": true, + "type": "string" + }, + { + "name": "sensitivityLabelSource", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "recommended" + ], + "x-ms-enum": { + "name": "SensitivityLabelSource", + "modelAsString": false + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully enabled the sensitivity recommendations on the given column." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SensitivityLabelsColumnNotFound - The column {0} could not be found in table {2}.{1}\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." + } + }, + "x-ms-examples": { + "Enables the sensitivity recommendations on a given column": { + "$ref": "./examples/ManagedDatabaseRecommendedColumnSensitivityLabelEnable.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/databases/{databaseName}/currentSensitivityLabels": { + "get": { + "tags": [ + "ManagedDatabaseSensitivityLabels" + ], + "description": "Gets the sensitivity labels of a given database", + "operationId": "ManagedDatabaseSensitivityLabels_ListCurrentByDatabase", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "$skipToken", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "$count", + "in": "query", + "required": false, + "type": "boolean" + }, + { + "name": "$filter", + "in": "query", + "description": "An OData filter expression that filters elements in the collection.", + "required": false, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the sensitivity labels.", + "schema": { + "$ref": "#/definitions/SensitivityLabelListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 DatawarehouseDatabaseIsDeactivated - Could not execute Data Classification operation because the database is paused. Please resume it.\n\n * 400 SensitivityLabelsInvalidODataQuery - The specified OData query is either not valid or not supported\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 * 503 DatabaseUnavailable - The operation failed because the database is unavailable." + } + }, + "x-ms-odata": "#/definitions/SensitivityLabel", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the current sensitivity labels of a given database in a managed database": { + "$ref": "./examples/ManagedDatabaseSensitivityLabelsListByDatabaseCurrent.json" + } + } + }, + "patch": { + "tags": [ + "ManagedDatabaseSensitivityLabels" + ], + "description": "Update sensitivity labels of a given database using an operations batch.", + "operationId": "ManagedDatabaseSensitivityLabels_Update", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SensitivityLabelUpdateList" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated sensitivity labels." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 DatawarehouseDatabaseIsDeactivated - Could not execute Data Classification operation because the database is paused. Please resume it.\n\n * 400 DatawarehouseDatabaseIsDeactivated - Could not execute Data Classification operation because the database is paused. Please resume it.\n\n * 400 SensitivityLabelSourceNameNotSupported - The specified sensitivity label source is not valid\n\n * 400 InvalidSensitivityLabelsBatch - The specified sensitivity labels batch is not valid. Please provide batch operations\n\n * 400 SensitivityLabelsMissingSchema - Operation[{0}]: Missing schema information\n\n * 400 SensitivityLabelsMissingTable - Operation[{0}]: Missing table information\n\n * 400 SensitivityLabelsMissingColumn - Operation[{0}]: Missing column information\n\n * 400 SensitivityLabelsUpdateSameColumnMoreThanOnce - The column {0} can not be updated more than once in a single command\n\n * 400 InvalidSensitivityLabelResource - The specified sensitivity label resource is not valid\n\n * 400 SensitivityLabelLabelNameAndInfoTypeNotProvided - At least one of LabelName and InformationType must be specified\n\n * 400 LabelNameTooLong - Label name cannot exceed {0} characters\n\n * 400 InformationTypeTooLong - Information type cannot exceed {0} characters\n\n * 400 LabelIdMustBeGuid - The provided ‘labelId’ is invalid. Value must be a GUID\n\n * 400 InformationTypeIdMustBeGuid - The provided ‘informationTypeId’ is invalid. Value must be a GUID\n\n * 400 LabelMissing - Label is required. At least one of ‘labelName’ or ‘labelId’ must be provided\n\n * 400 InformationTypeMissing - Information type is required. At least one of ‘informationType’ or ‘informationTypeId’ must be provided\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 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 SensitivityLabelsLabelNotFound - The specified sensitivity label could not be found\n\n * 404 SensitivityLabelsSchemaNotFound - The schema {0} could not be found\n\n * 404 SensitivityLabelsTableNotFound - The table {0} could not be found in schema {1}\n\n * 404 SensitivityLabelsColumnNotFound - The column {0} could not be found in table {2}.{1}\n\n * 501 SensitivityLabelRecommendedSourceNameNotSupported - 'Recommended' sensitivity label source is not supported yet\n\n * 501 SensitivityLabelRecommendedSourceNameNotSupported - 'Recommended' sensitivity label source is not supported yet\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable." + } + }, + "x-ms-examples": { + "Update sensitivity labels of a given database using an operations batch.": { + "$ref": "./examples/ManagedDatabaseSensitivityLabelsCurrentUpdate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/databases/{databaseName}/recommendedSensitivityLabels": { + "get": { + "tags": [ + "ManagedDatabaseSensitivityLabels" + ], + "description": "Gets the sensitivity labels of a given database", + "operationId": "ManagedDatabaseSensitivityLabels_ListRecommendedByDatabase", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "$skipToken", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "includeDisabledRecommendations", + "in": "query", + "description": "Specifies whether to include disabled recommendations or not.", + "required": false, + "type": "boolean" + }, + { + "name": "$filter", + "in": "query", + "description": "An OData filter expression that filters elements in the collection.", + "required": false, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the sensitivity labels.", + "schema": { + "$ref": "#/definitions/SensitivityLabelListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 DatawarehouseDatabaseIsDeactivated - Could not execute Data Classification operation because the database is paused. Please resume it.\n\n * 400 SensitivityLabelsInvalidODataQuery - The specified OData query is either not valid or not supported\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 * 503 DatabaseUnavailable - The operation failed because the database is unavailable." + } + }, + "x-ms-odata": "#/definitions/SensitivityLabel", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the recommended sensitivity labels of a given database in a managed database": { + "$ref": "./examples/ManagedDatabaseSensitivityLabelsListByDatabaseRecommended.json" + } + } + }, + "patch": { + "tags": [ + "ManagedDatabaseSensitivityLabels" + ], + "description": "Update recommended sensitivity labels states of a given database using an operations batch.", + "operationId": "ManagedDatabaseRecommendedSensitivityLabels_Update", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RecommendedSensitivityLabelUpdateList" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated recommended sensitivity labels." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 DatawarehouseDatabaseIsDeactivated - Could not execute Data Classification operation because the database is paused. Please resume it.\n\n * 400 DatawarehouseDatabaseIsDeactivated - Could not execute Data Classification operation because the database is paused. Please resume it.\n\n * 400 SensitivityLabelSourceNameNotSupported - The specified sensitivity label source is not valid\n\n * 400 InvalidRecommendedSensitivityLabelsBatch - The specified recommended sensitivity labels operations are not valid\n\n * 400 SensitivityLabelsMissingSchema - Operation[{0}]: Missing schema information\n\n * 400 SensitivityLabelsMissingTable - Operation[{0}]: Missing table information\n\n * 400 SensitivityLabelsMissingColumn - Operation[{0}]: Missing column information\n\n * 400 SensitivityLabelsUpdateSameColumnMoreThanOnce - The column {0} can not be updated more than once in a single command\n\n * 400 InvalidSensitivityLabelResource - The specified sensitivity label resource is not valid\n\n * 400 SensitivityLabelLabelNameAndInfoTypeNotProvided - At least one of LabelName and InformationType must be specified\n\n * 400 LabelNameTooLong - Label name cannot exceed {0} characters\n\n * 400 InformationTypeTooLong - Information type cannot exceed {0} characters\n\n * 400 LabelIdMustBeGuid - The provided ‘labelId’ is invalid. Value must be a GUID\n\n * 400 InformationTypeIdMustBeGuid - The provided ‘informationTypeId’ is invalid. Value must be a GUID\n\n * 400 LabelMissing - Label is required. At least one of ‘labelName’ or ‘labelId’ must be provided\n\n * 400 InformationTypeMissing - Information type is required. At least one of ‘informationType’ or ‘informationTypeId’ must be provided\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 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 SensitivityLabelsLabelNotFound - The specified sensitivity label could not be found\n\n * 404 SensitivityLabelsSchemaNotFound - The schema {0} could not be found\n\n * 404 SensitivityLabelsTableNotFound - The table {0} could not be found in schema {1}\n\n * 404 SensitivityLabelsColumnNotFound - The column {0} could not be found in table {2}.{1}\n\n * 501 SensitivityLabelRecommendedSourceNameNotSupported - 'Recommended' sensitivity label source is not supported yet\n\n * 501 SensitivityLabelRecommendedSourceNameNotSupported - 'Recommended' sensitivity label source is not supported yet\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable." + } + }, + "x-ms-examples": { + "Update recommended sensitivity labels of a given database using an operations batch.": { + "$ref": "./examples/ManagedDatabaseSensitivityLabelsRecommendedUpdate.json" + } + } + } + } + }, + "definitions": { + "SensitivityLabelProperties": { + "description": "Properties of a sensitivity label.", + "type": "object", + "properties": { + "schemaName": { + "description": "The schema name.", + "type": "string", + "readOnly": true + }, + "tableName": { + "description": "The table name.", + "type": "string", + "readOnly": true + }, + "columnName": { + "description": "The column name.", + "type": "string", + "readOnly": true + }, + "labelName": { + "description": "The label name.", + "type": "string" + }, + "labelId": { + "description": "The label ID.", + "type": "string" + }, + "informationType": { + "description": "The information type.", + "type": "string" + }, + "informationTypeId": { + "description": "The information type ID.", + "type": "string" + }, + "isDisabled": { + "description": "Is sensitivity recommendation disabled. Applicable for recommended sensitivity label only. Specifies whether the sensitivity recommendation on this column is disabled (dismissed) or not.", + "type": "boolean", + "readOnly": true + }, + "rank": { + "enum": [ + "None", + "Low", + "Medium", + "High", + "Critical" + ], + "type": "string", + "x-ms-enum": { + "name": "SensitivityLabelRank", + "modelAsString": false + } + } + } + }, + "SensitivityLabel": { + "description": "A sensitivity label.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "managedBy": { + "description": "Resource that manages the sensitivity label.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/SensitivityLabelProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "SensitivityLabelListResult": { + "description": "A list of sensitivity labels.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/SensitivityLabel" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "SensitivityLabelUpdateList": { + "description": "A list of sensitivity label update operations.", + "type": "object", + "properties": { + "operations": { + "type": "array", + "items": { + "$ref": "#/definitions/SensitivityLabelUpdate" + } + } + } + }, + "SensitivityLabelUpdateProperties": { + "description": "Properties of an operation executed on a sensitivity label.", + "required": [ + "op", + "schema", + "table", + "column" + ], + "type": "object", + "properties": { + "op": { + "enum": [ + "set", + "remove" + ], + "type": "string", + "x-ms-enum": { + "name": "SensitivityLabelUpdateKind", + "modelAsString": false + } + }, + "schema": { + "description": "Schema name of the column to update.", + "type": "string" + }, + "table": { + "description": "Table name of the column to update.", + "type": "string" + }, + "column": { + "description": "Column name to update.", + "type": "string" + }, + "sensitivityLabel": { + "$ref": "#/definitions/SensitivityLabel", + "description": "The sensitivity label information to apply on a column." + } + } + }, + "SensitivityLabelUpdate": { + "description": "A sensitivity label update operation.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/SensitivityLabelUpdateProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "RecommendedSensitivityLabelUpdateList": { + "description": "A list of recommended sensitivity label update operations.", + "type": "object", + "properties": { + "operations": { + "type": "array", + "items": { + "$ref": "#/definitions/RecommendedSensitivityLabelUpdate" + } + } + } + }, + "RecommendedSensitivityLabelUpdateProperties": { + "description": "Properties of an operation executed on a recommended sensitivity label.", + "required": [ + "op", + "schema", + "table", + "column" + ], + "type": "object", + "properties": { + "op": { + "enum": [ + "enable", + "disable" + ], + "type": "string", + "x-ms-enum": { + "name": "RecommendedSensitivityLabelUpdateKind", + "modelAsString": false + } + }, + "schema": { + "description": "Schema name of the column to update.", + "type": "string" + }, + "table": { + "description": "Table name of the column to update.", + "type": "string" + }, + "column": { + "description": "Column name to update.", + "type": "string" + } + } + }, + "RecommendedSensitivityLabelUpdate": { + "description": "A recommended sensitivity label update operation.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/RecommendedSensitivityLabelUpdateProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + } + }, + "parameters": { + "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" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedDatabaseTables.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedDatabaseTables.json new file mode 100644 index 000000000000..90b4f739fb0e --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedDatabaseTables.json @@ -0,0 +1,225 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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/managedInstances/{managedInstanceName}/databases/{databaseName}/schemas/{schemaName}/tables": { + "get": { + "tags": [ + "ManagedDatabaseTables" + ], + "description": "List managed database tables", + "operationId": "ManagedDatabaseTables_ListBySchema", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "schemaName", + "in": "path", + "description": "The name of the schema.", + "required": true, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "An OData filter expression that filters elements in the collection.", + "required": false, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved managed database tables.", + "schema": { + "$ref": "#/definitions/DatabaseTableListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 ResourceDoesNotExist - Resource with the name '{0}' does not exist. To continue, specify a valid resource name.\n\n * 404 InvalidDatabaseSchema - Schema is missing in database.\n\n * 404 InvalidDatabaseTable - Table is missing in database.\n\n * 404 InvalidDatabaseColumn - Column is missing in table.\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable." + } + }, + "x-ms-odata": "#/definitions/DatabaseTable", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List managed database tables": { + "$ref": "./examples/ManagedDatabaseTableListBySchema.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/databases/{databaseName}/schemas/{schemaName}/tables/{tableName}": { + "get": { + "tags": [ + "ManagedDatabaseTables" + ], + "description": "Get managed database table", + "operationId": "ManagedDatabaseTables_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "schemaName", + "in": "path", + "description": "The name of the schema.", + "required": true, + "type": "string" + }, + { + "name": "tableName", + "in": "path", + "description": "The name of the table.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved managed database table.", + "schema": { + "$ref": "#/definitions/DatabaseTable" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 ResourceDoesNotExist - Resource with the name '{0}' does not exist. To continue, specify a valid resource name.\n\n * 404 InvalidDatabaseSchema - Schema is missing in database.\n\n * 404 InvalidDatabaseTable - Table is missing in database.\n\n * 404 InvalidDatabaseColumn - Column is missing in table.\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable." + } + }, + "x-ms-examples": { + "Get managed database table": { + "$ref": "./examples/ManagedDatabaseTableGet.json" + } + } + } + } + }, + "definitions": { + "DatabaseTableProperties": { + "description": "Database table properties.", + "type": "object", + "properties": { + "temporalType": { + "description": "The table temporal type.", + "enum": [ + "NonTemporalTable", + "HistoryTable", + "SystemVersionedTemporalTable" + ], + "type": "string", + "x-ms-enum": { + "name": "TableTemporalType", + "modelAsString": true + } + }, + "memoryOptimized": { + "description": "Whether or not the table is memory optimized.", + "type": "boolean" + } + } + }, + "DatabaseTable": { + "description": "A database table resource.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/DatabaseTableProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "DatabaseTableListResult": { + "description": "A list of database tables.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/DatabaseTable" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "DatabaseNameParameter": { + "name": "databaseName", + "in": "path", + "description": "The name of the database.", + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedDatabaseTransparentDataEncryption.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedDatabaseTransparentDataEncryption.json new file mode 100644 index 000000000000..777fcfd76f2d --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedDatabaseTransparentDataEncryption.json @@ -0,0 +1,284 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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/managedInstances/{managedInstanceName}/databases/{databaseName}/transparentDataEncryption/{tdeName}": { + "get": { + "tags": [ + "ManagedDatabaseTransparentDataEncryption" + ], + "description": "Gets a managed database's transparent data encryption.", + "operationId": "ManagedDatabaseTransparentDataEncryption_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the managed database for which the transparent data encryption is defined.", + "required": true, + "type": "string" + }, + { + "name": "tdeName", + "in": "path", + "description": "The name of the transparent data encryption configuration.", + "required": true, + "type": "string", + "enum": [ + "current" + ], + "x-ms-enum": { + "name": "TransparentDataEncryptionName", + "modelAsString": true + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the managed database transparent data encryption.", + "schema": { + "$ref": "#/definitions/ManagedTransparentDataEncryption" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\n\n * 400 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 400 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 400 ReadOnly - Cannot enable or modify database encryption on a database that is read-only, has read-only files or is not recovered.\n\n * 400 CanNotDropAlterOnMirror - Please modify Transparent Data Encryption on the primary databases.\n\n * 401 CanNotChangeReadOnlyDuringTdeScan - Cannot modify filegroup read-only/read-write state while an encryption transition is in progress.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 NeedsLogBackup - Please wait several minutes for a log backup to occur. \n\n * 409 EncryptionInProgress - Cannot modify encryption while an encryption scan in progress.\n\n * 409 KeyChangeInProgress - Cannot change database encryption key while an encryption, decryption, or key change scan is in progress.\n\n * 409 NoBulkOperationLock - CREATE/ALTER/DROP DATABASE ENCRYPTION KEY failed because a lock could not be placed on database. Try again later.\n\n * 409 AltStateConflict - The operation cannot be performed on database because it is involved in a database mirroring session or an availability group. Some operations are not allowed on a database that is participating in a database mirroring session or in an availability group.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 503 NoDekLock - CREATE/ALTER/DROP DATABASE ENCRYPTION KEY failed because a lock could not be placed on the database. Try again later." + } + }, + "x-ms-examples": { + "Get a database's transparent data encryption": { + "$ref": "./examples/ManagedTransparentDataEncryptionGet.json" + } + } + }, + "put": { + "tags": [ + "ManagedDatabaseTransparentDataEncryption" + ], + "description": "Updates a database's transparent data encryption configuration.", + "operationId": "ManagedDatabaseTransparentDataEncryption_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the managed database for which the security alert policy is defined.", + "required": true, + "type": "string" + }, + { + "name": "tdeName", + "in": "path", + "description": "The name of the transparent data encryption configuration.", + "required": true, + "type": "string", + "enum": [ + "current" + ], + "x-ms-enum": { + "name": "TransparentDataEncryptionName", + "modelAsString": true + } + }, + { + "name": "parameters", + "in": "body", + "description": "The database transparent data encryption.", + "required": true, + "schema": { + "$ref": "#/definitions/ManagedTransparentDataEncryption" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the database Transparent Data Encryption state.", + "schema": { + "$ref": "#/definitions/ManagedTransparentDataEncryption" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\n\n * 400 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 400 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 400 ReadOnly - Cannot enable or modify database encryption on a database that is read-only, has read-only files or is not recovered.\n\n * 400 CanNotDropAlterOnMirror - Please modify Transparent Data Encryption on the primary databases.\n\n * 400 InvalidTransparentDataEncryptionUpdateRequest - Please enter a valid state. Please use \"Enabled\" or \"Disabled\".\n\n * 400 InvalidTransparentDataEncryptionName - The transparent data encryption key name is not supported.\n\n * 401 CanNotChangeReadOnlyDuringTdeScan - Cannot modify filegroup read-only/read-write state while an encryption transition is in progress.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 NeedsLogBackup - Please wait several minutes for a log backup to occur. \n\n * 409 EncryptionInProgress - Cannot modify encryption while an encryption scan in progress.\n\n * 409 KeyChangeInProgress - Cannot change database encryption key while an encryption, decryption, or key change scan is in progress.\n\n * 409 NoBulkOperationLock - CREATE/ALTER/DROP DATABASE ENCRYPTION KEY failed because a lock could not be placed on database. Try again later.\n\n * 409 AltStateConflict - The operation cannot be performed on database because it is involved in a database mirroring session or an availability group. Some operations are not allowed on a database that is participating in a database mirroring session or in an availability group.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 503 NoDekLock - CREATE/ALTER/DROP DATABASE ENCRYPTION KEY failed because a lock could not be placed on the database. Try again later." + }, + "201": { + "description": "Successfully created the database transparent data encryption state.", + "schema": { + "$ref": "#/definitions/ManagedTransparentDataEncryption" + } + } + }, + "x-ms-examples": { + "Update a database's Transparent Data Encryption state with minimal parameters": { + "$ref": "./examples/ManagedTransparentDataEncryptionUpdate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/databases/{databaseName}/transparentDataEncryption": { + "get": { + "tags": [ + "ManagedDatabaseTransparentDataEncryption" + ], + "description": "Gets a list of managed database's transparent data encryptions.", + "operationId": "ManagedDatabaseTransparentDataEncryption_ListByDatabase", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the managed database for which the transparent data encryption is defined.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of managed database transparent data encryptions.", + "schema": { + "$ref": "#/definitions/ManagedTransparentDataEncryptionListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\n\n * 400 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 400 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 400 ReadOnly - Cannot enable or modify database encryption on a database that is read-only, has read-only files or is not recovered.\n\n * 400 CanNotDropAlterOnMirror - Please modify Transparent Data Encryption on the primary databases.\n\n * 401 CanNotChangeReadOnlyDuringTdeScan - Cannot modify filegroup read-only/read-write state while an encryption transition is in progress.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 NeedsLogBackup - Please wait several minutes for a log backup to occur. \n\n * 409 EncryptionInProgress - Cannot modify encryption while an encryption scan in progress.\n\n * 409 KeyChangeInProgress - Cannot change database encryption key while an encryption, decryption, or key change scan is in progress.\n\n * 409 NoBulkOperationLock - CREATE/ALTER/DROP DATABASE ENCRYPTION KEY failed because a lock could not be placed on database. Try again later.\n\n * 409 AltStateConflict - The operation cannot be performed on database because it is involved in a database mirroring session or an availability group. Some operations are not allowed on a database that is participating in a database mirroring session or in an availability group.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 503 NoDekLock - CREATE/ALTER/DROP DATABASE ENCRYPTION KEY failed because a lock could not be placed on the database. Try again later." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get a list of the database's transparent data encryptions": { + "$ref": "./examples/ManagedTransparentDataEncryptionList.json" + } + } + } + } + }, + "definitions": { + "ManagedTransparentDataEncryptionProperties": { + "description": "Properties of a transparent data encryption.", + "required": [ + "state" + ], + "type": "object", + "properties": { + "state": { + "description": "Specifies the state of the transparent data encryption.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "TransparentDataEncryptionState", + "modelAsString": false + } + } + } + }, + "ManagedTransparentDataEncryption": { + "description": "A managed database transparent data encryption state.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ManagedTransparentDataEncryptionProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "ManagedTransparentDataEncryptionListResult": { + "description": "A list of managed transparent data encryptions", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedTransparentDataEncryption" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": {}, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedDatabaseVulnerabilityAssessmentRuleBaselines.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedDatabaseVulnerabilityAssessmentRuleBaselines.json new file mode 100644 index 000000000000..6936dafe3154 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedDatabaseVulnerabilityAssessmentRuleBaselines.json @@ -0,0 +1,342 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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/managedInstances/{managedInstanceName}/databases/{databaseName}/vulnerabilityAssessments/{vulnerabilityAssessmentName}/rules/{ruleId}/baselines/{baselineName}": { + "get": { + "tags": [ + "ManagedDatabaseVulnerabilityAssessmentRuleBaselines" + ], + "description": "Gets a database's vulnerability assessment rule baseline.", + "operationId": "ManagedDatabaseVulnerabilityAssessmentRuleBaselines_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the database for which the vulnerability assessment rule baseline is defined.", + "required": true, + "type": "string" + }, + { + "name": "vulnerabilityAssessmentName", + "in": "path", + "description": "The name of the vulnerability assessment.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentName", + "modelAsString": true + } + }, + { + "name": "ruleId", + "in": "path", + "description": "The vulnerability assessment rule ID.", + "required": true, + "type": "string" + }, + { + "name": "baselineName", + "in": "path", + "description": "The name of the vulnerability assessment rule baseline (default implies a baseline on a database level rule and master for server level rule).", + "required": true, + "type": "string", + "enum": [ + "master", + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentPolicyBaselineName", + "modelAsString": false + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully got the vulnerability assessment rule baseline.", + "schema": { + "$ref": "#/definitions/DatabaseVulnerabilityAssessmentRuleBaseline" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 VulnerabilityAssessmentStorageAuthenticationFailed - Could not authenticate to storage account '{0}' .\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 VulnerabilityAssessmentInvalidStorageAccount - The storage account '{0}' that was defined in the policy is invalid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 VulnerabilityAssessmentRuleDoesNotExists - Rule '{0}' does not exist.\n\n * 404 VulnerabilityAssessmentBaselineDoesNotExists - Baseline does not exist for rule '{0}'\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + } + }, + "x-ms-examples": { + "Gets a database's vulnerability assessment rule baseline.": { + "$ref": "./examples/ManagedDatabaseVulnerabilityAssessmentRuleBaselineGet.json" + } + } + }, + "put": { + "tags": [ + "ManagedDatabaseVulnerabilityAssessmentRuleBaselines" + ], + "description": "Creates or updates a database's vulnerability assessment rule baseline.", + "operationId": "ManagedDatabaseVulnerabilityAssessmentRuleBaselines_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the database for which the vulnerability assessment rule baseline is defined.", + "required": true, + "type": "string" + }, + { + "name": "vulnerabilityAssessmentName", + "in": "path", + "description": "The name of the vulnerability assessment.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentName", + "modelAsString": true + } + }, + { + "name": "ruleId", + "in": "path", + "description": "The vulnerability assessment rule ID.", + "required": true, + "type": "string" + }, + { + "name": "baselineName", + "in": "path", + "description": "The name of the vulnerability assessment rule baseline (default implies a baseline on a database level rule and master for server level rule).", + "required": true, + "type": "string", + "enum": [ + "master", + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentPolicyBaselineName", + "modelAsString": false + } + }, + { + "name": "parameters", + "in": "body", + "description": "The requested rule baseline resource.", + "required": true, + "schema": { + "$ref": "#/definitions/DatabaseVulnerabilityAssessmentRuleBaseline" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully set the vulnerability assessment rule baseline.", + "schema": { + "$ref": "#/definitions/DatabaseVulnerabilityAssessmentRuleBaseline" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 VulnerabilityAssessmentStorageAuthenticationFailed - Could not authenticate to storage account '{0}' .\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 VulnerabilityAssessmentInvalidStorageAccount - The storage account '{0}' that was defined in the policy is invalid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 VulnerabilityAssessmentRuleDoesNotExists - Rule '{0}' does not exist.\n\n * 404 VulnerabilityAssessmentBaselineDoesNotExists - Baseline does not exist for rule '{0}'\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + } + }, + "x-ms-examples": { + "Creates or updates a database's vulnerability assessment rule baseline.": { + "$ref": "./examples/ManagedDatabaseVulnerabilityAssessmentRuleBaselineCreate.json" + } + } + }, + "delete": { + "tags": [ + "ManagedDatabaseVulnerabilityAssessmentRuleBaselines" + ], + "description": "Removes the database's vulnerability assessment rule baseline.", + "operationId": "ManagedDatabaseVulnerabilityAssessmentRuleBaselines_Delete", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the database for which the vulnerability assessment rule baseline is defined.", + "required": true, + "type": "string" + }, + { + "name": "vulnerabilityAssessmentName", + "in": "path", + "description": "The name of the vulnerability assessment.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentName", + "modelAsString": true + } + }, + { + "name": "ruleId", + "in": "path", + "description": "The vulnerability assessment rule ID.", + "required": true, + "type": "string" + }, + { + "name": "baselineName", + "in": "path", + "description": "The name of the vulnerability assessment rule baseline (default implies a baseline on a database level rule and master for server level rule).", + "required": true, + "type": "string", + "enum": [ + "master", + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentPolicyBaselineName", + "modelAsString": false + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully removed the database vulnerability assessment rule baseline." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 VulnerabilityAssessmentStorageAuthenticationFailed - Could not authenticate to storage account '{0}' .\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 VulnerabilityAssessmentInvalidStorageAccount - The storage account '{0}' that was defined in the policy is invalid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 VulnerabilityAssessmentRuleDoesNotExists - Rule '{0}' does not exist.\n\n * 404 VulnerabilityAssessmentBaselineDoesNotExists - Baseline does not exist for rule '{0}'\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + } + }, + "x-ms-examples": { + "Removes a database's vulnerability assessment rule baseline.": { + "$ref": "./examples/ManagedDatabaseVulnerabilityAssessmentRuleBaselineDelete.json" + } + } + } + } + }, + "definitions": { + "DatabaseVulnerabilityAssessmentRuleBaselineProperties": { + "description": "Properties of a database Vulnerability Assessment rule baseline.", + "required": [ + "baselineResults" + ], + "type": "object", + "properties": { + "baselineResults": { + "description": "The rule baseline result", + "type": "array", + "items": { + "$ref": "#/definitions/DatabaseVulnerabilityAssessmentRuleBaselineItem" + } + } + } + }, + "DatabaseVulnerabilityAssessmentRuleBaselineItem": { + "description": "Properties for an Azure SQL Database Vulnerability Assessment rule baseline's result.", + "required": [ + "result" + ], + "type": "object", + "properties": { + "result": { + "description": "The rule baseline result", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "DatabaseVulnerabilityAssessmentRuleBaseline": { + "description": "A database vulnerability assessment rule baseline.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/DatabaseVulnerabilityAssessmentRuleBaselineProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + } + }, + "parameters": {}, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedDatabaseVulnerabilityAssessmentScans.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedDatabaseVulnerabilityAssessmentScans.json new file mode 100644 index 000000000000..309596a47414 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedDatabaseVulnerabilityAssessmentScans.json @@ -0,0 +1,466 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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/managedInstances/{managedInstanceName}/databases/{databaseName}/vulnerabilityAssessments/{vulnerabilityAssessmentName}/scans/{scanId}/initiateScan": { + "post": { + "tags": [ + "ManagedDatabaseVulnerabilityAssessmentScans" + ], + "description": "Executes a Vulnerability Assessment database scan.", + "operationId": "ManagedDatabaseVulnerabilityAssessmentScans_InitiateScan", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "vulnerabilityAssessmentName", + "in": "path", + "description": "The name of the vulnerability assessment.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentName", + "modelAsString": true + } + }, + { + "name": "scanId", + "in": "path", + "description": "The vulnerability assessment scan Id of the scan to retrieve.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully executed a Vulnerability Assessment database scan." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 InvalidVulnerabilityAssessmentScanIdLength - The vulnerability assessment scan ID length must be below {0} characters.\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 409 DatabaseVulnerabilityAssessmentScanIsAlreadyInProgress - Vulnerability Assessment scan is already in progress.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + }, + "202": { + "description": "Successfully started a Vulnerability Assessment database scan." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Executes a database's vulnerability assessment scan.": { + "$ref": "./examples/ManagedDatabaseVulnerabilityAssessmentScansExecute.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/databases/{databaseName}/vulnerabilityAssessments/{vulnerabilityAssessmentName}/scans/{scanId}/export": { + "post": { + "tags": [ + "ManagedDatabaseVulnerabilityAssessmentScans" + ], + "description": "Convert an existing scan result to a human readable format. If already exists nothing happens", + "operationId": "ManagedDatabaseVulnerabilityAssessmentScans_Export", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the scanned database.", + "required": true, + "type": "string" + }, + { + "name": "vulnerabilityAssessmentName", + "in": "path", + "description": "The name of the vulnerability assessment.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentName", + "modelAsString": true + } + }, + { + "name": "scanId", + "in": "path", + "description": "The vulnerability assessment scan Id.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Scan result was converted successfully.", + "schema": { + "$ref": "#/definitions/DatabaseVulnerabilityAssessmentScansExport" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 409 DatabaseVulnerabilityAssessmentScanIsAlreadyInProgress - Vulnerability Assessment scan is already in progress.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + }, + "201": { + "description": "Scan result was converted successfully.", + "schema": { + "$ref": "#/definitions/DatabaseVulnerabilityAssessmentScansExport" + } + } + }, + "x-ms-examples": { + "Export a database's vulnerability assessment scan results.": { + "$ref": "./examples/ManagedDatabaseVulnerabilityAssessmentScanExport.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/databases/{databaseName}/vulnerabilityAssessments/{vulnerabilityAssessmentName}/scans": { + "get": { + "tags": [ + "ManagedDatabaseVulnerabilityAssessmentScans" + ], + "description": "Lists the vulnerability assessment scans of a database.", + "operationId": "ManagedDatabaseVulnerabilityAssessmentScans_ListByDatabase", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "vulnerabilityAssessmentName", + "in": "path", + "description": "The name of the vulnerability assessment.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentName", + "modelAsString": true + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the database vulnerability assessment scan records.", + "schema": { + "$ref": "#/definitions/VulnerabilityAssessmentScanRecordListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 409 DatabaseVulnerabilityAssessmentScanIsAlreadyInProgress - Vulnerability Assessment scan is already in progress.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the list of a database vulnerability assessment scan records": { + "$ref": "./examples/ManagedDatabaseVulnerabilityAssessmentScanRecordsListByDatabase.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/databases/{databaseName}/vulnerabilityAssessments/{vulnerabilityAssessmentName}/scans/{scanId}": { + "get": { + "tags": [ + "ManagedDatabaseVulnerabilityAssessmentScans" + ], + "description": "Gets a vulnerability assessment scan record of a database.", + "operationId": "ManagedDatabaseVulnerabilityAssessmentScans_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "vulnerabilityAssessmentName", + "in": "path", + "description": "The name of the vulnerability assessment.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentName", + "modelAsString": true + } + }, + { + "name": "scanId", + "in": "path", + "description": "The vulnerability assessment scan Id of the scan to retrieve.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the database vulnerability assessment scan record.", + "schema": { + "$ref": "#/definitions/VulnerabilityAssessmentScanRecord" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 409 DatabaseVulnerabilityAssessmentScanIsAlreadyInProgress - Vulnerability Assessment scan is already in progress.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + } + }, + "x-ms-examples": { + "Gets a database vulnerability assessment scan record by scan ID": { + "$ref": "./examples/ManagedDatabaseVulnerabilityAssessmentScanRecordsGet.json" + } + } + } + } + }, + "definitions": { + "DatabaseVulnerabilityAssessmentScanExportProperties": { + "description": "Properties of the export operation's result.", + "type": "object", + "properties": { + "exportedReportLocation": { + "description": "Location of the exported report (e.g. https://myStorage.blob.core.windows.net/VaScans/scans/serverName/databaseName/scan_scanId.xlsx).", + "type": "string", + "readOnly": true + } + } + }, + "DatabaseVulnerabilityAssessmentScansExport": { + "description": "A database Vulnerability Assessment scan export resource.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/DatabaseVulnerabilityAssessmentScanExportProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "VulnerabilityAssessmentScanRecordListResult": { + "description": "A list of vulnerability assessment scan records.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/VulnerabilityAssessmentScanRecord" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "VulnerabilityAssessmentScanRecordProperties": { + "description": "Properties of a vulnerability assessment scan record.", + "type": "object", + "properties": { + "scanId": { + "description": "The scan ID.", + "type": "string", + "readOnly": true + }, + "triggerType": { + "description": "The scan trigger type.", + "enum": [ + "OnDemand", + "Recurring" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "VulnerabilityAssessmentScanTriggerType", + "modelAsString": true + } + }, + "state": { + "description": "The scan status.", + "enum": [ + "Passed", + "Failed", + "FailedToRun", + "InProgress" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "VulnerabilityAssessmentScanState", + "modelAsString": true + } + }, + "startTime": { + "format": "date-time", + "description": "The scan start time (UTC).", + "type": "string", + "readOnly": true + }, + "endTime": { + "format": "date-time", + "description": "The scan end time (UTC).", + "type": "string", + "readOnly": true + }, + "errors": { + "description": "The scan errors.", + "type": "array", + "items": { + "$ref": "#/definitions/VulnerabilityAssessmentScanError" + }, + "readOnly": true + }, + "storageContainerPath": { + "description": "The scan results storage container path.", + "type": "string", + "readOnly": true + }, + "numberOfFailedSecurityChecks": { + "format": "int32", + "description": "The number of failed security checks.", + "type": "integer", + "readOnly": true + } + } + }, + "VulnerabilityAssessmentScanError": { + "description": "Properties of a vulnerability assessment scan error.", + "type": "object", + "properties": { + "code": { + "description": "The error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "The error message.", + "type": "string", + "readOnly": true + } + } + }, + "VulnerabilityAssessmentScanRecord": { + "description": "A vulnerability assessment scan record.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/VulnerabilityAssessmentScanRecordProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + } + }, + "parameters": { + "DatabaseNameParameter": { + "name": "databaseName", + "in": "path", + "description": "The name of the database.", + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedDatabaseVulnerabilityAssessments.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedDatabaseVulnerabilityAssessments.json new file mode 100644 index 000000000000..161f2c15d4e6 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedDatabaseVulnerabilityAssessments.json @@ -0,0 +1,381 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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/managedInstances/{managedInstanceName}/databases/{databaseName}/vulnerabilityAssessments/{vulnerabilityAssessmentName}": { + "get": { + "tags": [ + "ManagedDatabaseVulnerabilityAssessments" + ], + "description": "Gets the database's vulnerability assessment.", + "operationId": "ManagedDatabaseVulnerabilityAssessments_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the database for which the vulnerability assessment is defined.", + "required": true, + "type": "string" + }, + { + "name": "vulnerabilityAssessmentName", + "in": "path", + "description": "The name of the vulnerability assessment.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentName", + "modelAsString": true + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the database vulnerability assessment.", + "schema": { + "$ref": "#/definitions/DatabaseVulnerabilityAssessment" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentUnsupportedStorageAccount - The provided storage account is unsupported.\n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 400 VulnerabilityAssessmentInsufficientStorageAccountPermissions - Insufficient permissions on the provided storage account.\n\n * 400 VulnerabilityAssessmentStorageAccountIsDisabled - The provided storage account is disabled.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + } + }, + "x-ms-examples": { + "Get a database's vulnerability assessment": { + "$ref": "./examples/ManagedDatabaseVulnerabilityAssessmentGet.json" + } + } + }, + "put": { + "tags": [ + "ManagedDatabaseVulnerabilityAssessments" + ], + "description": "Creates or updates the database's vulnerability assessment.", + "operationId": "ManagedDatabaseVulnerabilityAssessments_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the database for which the vulnerability assessment is defined.", + "required": true, + "type": "string" + }, + { + "name": "vulnerabilityAssessmentName", + "in": "path", + "description": "The name of the vulnerability assessment.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentName", + "modelAsString": true + } + }, + { + "name": "parameters", + "in": "body", + "description": "The requested resource.", + "required": true, + "schema": { + "$ref": "#/definitions/DatabaseVulnerabilityAssessment" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully set the vulnerability assessment.", + "schema": { + "$ref": "#/definitions/DatabaseVulnerabilityAssessment" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentUnsupportedStorageAccount - The provided storage account is unsupported.\n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 400 VulnerabilityAssessmentInsufficientStorageAccountPermissions - Insufficient permissions on the provided storage account.\n\n * 400 VulnerabilityAssessmentStorageAccountIsDisabled - The provided storage account is disabled.\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + }, + "201": { + "description": "Successfully created the vulnerability assessment.", + "schema": { + "$ref": "#/definitions/DatabaseVulnerabilityAssessment" + } + } + }, + "x-ms-examples": { + "Create a database's vulnerability assessment with minimal parameters": { + "$ref": "./examples/ManagedDatabaseVulnerabilityAssessmentCreateMin.json" + }, + "Create a database's vulnerability assessment with all parameters": { + "$ref": "./examples/ManagedDatabaseVulnerabilityAssessmentCreateMax.json" + } + } + }, + "delete": { + "tags": [ + "ManagedDatabaseVulnerabilityAssessments" + ], + "description": "Removes the database's vulnerability assessment.", + "operationId": "ManagedDatabaseVulnerabilityAssessments_Delete", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the database for which the vulnerability assessment is defined.", + "required": true, + "type": "string" + }, + { + "name": "vulnerabilityAssessmentName", + "in": "path", + "description": "The name of the vulnerability assessment.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentName", + "modelAsString": true + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully removed the database vulnerability assessment." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentUnsupportedStorageAccount - The provided storage account is unsupported.\n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 400 VulnerabilityAssessmentInsufficientStorageAccountPermissions - Insufficient permissions on the provided storage account.\n\n * 400 VulnerabilityAssessmentStorageAccountIsDisabled - The provided storage account is disabled.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + } + }, + "x-ms-examples": { + "Remove a database's vulnerability assessment": { + "$ref": "./examples/ManagedDatabaseVulnerabilityAssessmentDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/databases/{databaseName}/vulnerabilityAssessments": { + "get": { + "tags": [ + "ManagedDatabaseVulnerabilityAssessments" + ], + "description": "Lists the vulnerability assessments of a managed database.", + "operationId": "ManagedDatabaseVulnerabilityAssessments_ListByDatabase", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the database for which the vulnerability assessment is defined.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the database vulnerability assessments.", + "schema": { + "$ref": "#/definitions/DatabaseVulnerabilityAssessmentListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentUnsupportedStorageAccount - The provided storage account is unsupported.\n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 400 VulnerabilityAssessmentInsufficientStorageAccountPermissions - Insufficient permissions on the provided storage account.\n\n * 400 VulnerabilityAssessmentStorageAccountIsDisabled - The provided storage account is disabled.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get a database's vulnerability assessments list": { + "$ref": "./examples/ManagedDatabaseVulnerabilityAssessmentListByDatabase.json" + } + } + } + } + }, + "definitions": { + "DatabaseVulnerabilityAssessmentProperties": { + "description": "Properties of a database Vulnerability Assessment.", + "type": "object", + "properties": { + "storageContainerPath": { + "description": "A blob storage container path to hold the scan results (e.g. https://myStorage.blob.core.windows.net/VaScans/). It is required if server level vulnerability assessment policy doesn't set", + "type": "string", + "x-ms-mutability": [ + "create", + "update" + ] + }, + "storageContainerSasKey": { + "description": "A shared access signature (SAS Key) that has write access to the blob container specified in 'storageContainerPath' parameter. If 'storageAccountAccessKey' isn't specified, StorageContainerSasKey is required.", + "type": "string", + "x-ms-mutability": [ + "create", + "update" + ] + }, + "storageAccountAccessKey": { + "description": "Specifies the identifier key of the storage account for vulnerability assessment scan results. If 'StorageContainerSasKey' isn't specified, storageAccountAccessKey is required.", + "type": "string", + "x-ms-mutability": [ + "create", + "update" + ] + }, + "recurringScans": { + "$ref": "#/definitions/VulnerabilityAssessmentRecurringScansProperties", + "description": "The recurring scans settings" + } + } + }, + "VulnerabilityAssessmentRecurringScansProperties": { + "description": "Properties of a Vulnerability Assessment recurring scans.", + "type": "object", + "properties": { + "isEnabled": { + "description": "Recurring scans state.", + "type": "boolean" + }, + "emailSubscriptionAdmins": { + "description": "Specifies that the schedule scan notification will be is sent to the subscription administrators.", + "default": true, + "type": "boolean" + }, + "emails": { + "description": "Specifies an array of e-mail addresses to which the scan notification is sent.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "DatabaseVulnerabilityAssessment": { + "description": "A database vulnerability assessment.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/DatabaseVulnerabilityAssessmentProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "DatabaseVulnerabilityAssessmentListResult": { + "description": "A list of the database's vulnerability assessments.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/DatabaseVulnerabilityAssessment" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": {}, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedDatabases.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedDatabases.json new file mode 100644 index 000000000000..3583f2589127 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedDatabases.json @@ -0,0 +1,624 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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/managedInstances/{managedInstanceName}/databases": { + "get": { + "tags": [ + "ManagedDatabases" + ], + "description": "Gets a list of managed databases.", + "operationId": "ManagedDatabases_ListByInstance", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of databases.", + "schema": { + "$ref": "#/definitions/ManagedDatabaseListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List databases by managed instances": { + "$ref": "./examples/ManagedDatabaseListByManagedInstance.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/databases/{databaseName}": { + "get": { + "tags": [ + "ManagedDatabases" + ], + "description": "Gets a managed database.", + "operationId": "ManagedDatabases_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the specified managed database.", + "schema": { + "$ref": "#/definitions/ManagedDatabase" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-examples": { + "Gets a managed database": { + "$ref": "./examples/ManagedDatabaseGet.json" + } + } + }, + "put": { + "tags": [ + "ManagedDatabases" + ], + "description": "Creates a new database or updates an existing database.", + "operationId": "ManagedDatabases_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "parameters", + "in": "body", + "description": "The requested database resource state.", + "required": true, + "schema": { + "$ref": "#/definitions/ManagedDatabase" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the database.", + "schema": { + "$ref": "#/definitions/ManagedDatabase" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 PitrPointInTimeInvalid - The point in time {0} is not valid. Valid point in time range from {1} days early to now and not before source server creation time.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 InvalidBackupRetentionPeriod - The retention days of {0} is not a valid configuration. Valid backup retention in days must be between {1} and {2}\n\n * 400 ManagedDatabaseNameInUse - Database '{0}' already exists. Choose a different database name.\n\n * 400 NoMoreSpaceInManagedInstance - The managed instance has reached its storage limit. The storage usage for the managed instance cannot exceed (%d) MBs.\n\n * 400 ManagedInstanceUpdateSloInProgress - \"The operation could not be completed because a service tier change is in progress for managed instance '{0}.' Please wait for the operation in progress to complete and try again.\"\n\n * 400 SourceDatabaseNotFound - The source database does not exist.\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 PasswordNotComplex - The provided password is not complex enough.\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 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 TokenTooLong - The provided token is too long.\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 InvalidCollation - Collation is not recognized by the server.\n\n * 400 ServerNotFound - The requested server was not found.\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 DatabaseNumberLimitReached - Maximum number of databases for SQL Database Managed Instance reached.\n\n * 400 InvalidDatabaseCreateOrUpdateRequest - The request body for the create or update database operation is invalid.\n\n * 400 InvalidResourceId - Invalid resource identifier.\n\n * 400 InvalidSourceDatabaseId - Invalid source database identifier.\n\n * 400 InvalidRestorableDroppedDatabaseId - Invalid restorable dropped database identifier\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 MissingCollation - Collation is required.\n\n * 400 MissingSourceDatabaseId - Missing source database identifier.\n\n * 400 MissingRestorePointInTime - Missing restore point in time\n\n * 400 MissingStorageContainerSasToken - Missing storage container SAS token\n\n * 400 MissingStorageContainerUri - Missing storage container URI\n\n * 400 RestorableDroppedDatabaseIdGivenForRestoreWithSourceDatabaseId - Cannot specify restorableDroppedDatabaseId when sourceDatabaseId is already given in restore create mode\n\n * 400 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 InvalidLongTermRetentionManagedInstanceBackupId - Invalid long term retention backup identifier for Managed Instances.\n\n * 400 MiGeoRestoreWithWrongBackupStorageRedundancy - Geo-Restore is not allowed for managed instances with LRS/ZRS backup storage redundancy.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 AadOnlyAuthenticationIsEnabled - Azure Active Directory Only Authentication is enabled. Please contact your system administrator.\n\n * 400 ManagementServiceFeatureDisabled - User attempted to use a feature which is disabled.\n\n * 400 AutoCompleteMissingLastBackupName - Auto complete restore request must have lastBackupName parameter provided.\n\n * 400 MissingThumbprint - Can not find server certificate.\n\n * 400 BlobStorageServerFailure - Blob storage server failure has occurred.\n\n * 400 BackupSetNotFound - No backups were found to restore the database. Please contact support to restore the database.\n\n * 400 FullBackupNotFound - Full backup can not be found.\n\n * 400 RestoreFromStripedBackupsNotEnabled - Restoring from striped backups is not supported.\n\n * 400 BrokenRestorePlanNoFullBackup - The restore plan is broken because there is no full backup.\n\n * 400 BrokenRestorePlanWrongLogBackupLSN - The restore plan is broken because firstLsn of current log backup is not <= lastLsn of next log backup.\n\n * 400 BrokenRestorePlanWrongDiffBackupLSN - The restore plan is broken because firstLsn of diff backup is not >= firstLsn of full backup.\n\n * 400 BrokenRestorePlanGapInLogBackups - The restore plan is broken because firstLsn of current log backup is not equal to lastLsn of prev log backup.\n\n * 400 XtpInitializedDuringRestore - Memory-optimized filegroup must be empty in order to be restored on General Purpose tier of SQL Database Managed Instance.\n\n * 400 FullBackupMissingChecksum - Provided full backup is missing checksum.\n\n * 400 FullBackupDamaged - Provided full backup is damaged.\n\n * 400 PartiallyContainedDatabaseUnsupported - \"Backup for a partially contained database is not supported.\"\n\n * 400 RequiredBackupIsNotLastRestored - Migration cannot be completed because provided backup file name is not the name of the last backup file that is restored.\n\n * 400 ManagedInstanceStorageLimitHit - The managed instance has reached its storage limit.\n\n * 400 IncompatiblePhysicalLayoutTooFewDataFiles - Database backup contains incompatible physical layout. No data files are found in the backup.\n\n * 400 IncompatiblePhysicalLayoutNonOnlineDataFilesExist - Database backup contains incompatible physical layout. Non-online data files exist.\n\n * 400 IncompatiblePhysicalLayoutWrongNumberOfLogFiles - Database backup contains incompatible physical layout. Multiple log files are not supported.\n\n * 400 IncompatiblePhysicalLayoutNonOnlineLogFilesExist - Database backup contains incompatible physical layout. Non-online log files exist.\n\n * 400 IncompatiblePhysicalLayoutTooManyNonDataLogFiles - Database backup contains incompatible physical layout. Too many non-data/log files.\n\n * 400 ExternalBackupAlreadySignaledToComplete - The restore request has already been signaled to complete.\n\n * 400 ExternalBackupRestoreHasNotBeenStarted - The restore request can only be completed once the restore has started.\n\n * 400 ExternalBackupUpgradeInProgress - The restore request cannot be completed, since upgrade is in progress.\n\n * 400 IncompatiblePhysicalLayoutTooManyXTPFiles - Database backup contains incompatible physical layout. Multiple files found in the filegroup that contains MEMORY_OPTIMIZED_DATA.\n\n * 400 BlobStorageFailure - Blob storage failure has occurred.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 CannotFindServerCertificateWithThumbprint - Cannot find server certificate with thumbprint '{0}'. Please use PowerShell Cmdlet 'Add-AzureRmSqlManagedInstanceTransparentDataEncryptionCertificate' to create the certificate.\n\n * 404 CannotFindObject - Cannot find the object because it does not exist or you do not have permissions\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 RestoreSourceDatabaseNotFound - Could not find database '{0}' at time '{1}' that can be restored.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\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 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ManagementServiceDatabaseBusy - Database '{0}' is busy with another operation. Please try your operation later.\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 ConflictingManagedInstanceOperation - An operation is currently in progress for the managed instance.\n\n * 409 MiDropFailedOnAuthLocks - User tried to drop last Managed Instance in subnet that has Lock applied on resource(s).\n\n * 409 MiCreateFailedNonDelegatedSubnet - User tried to deploy Managed Instance or Managed Instance pool in subnet that is not delegated to Microsoft.Sql/managedInstances.\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 * 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 * 429 ConflictingSubscriptionOperation - An operation is currently in progress for the subscription.\n\n * 500 ActivateOrDeactivateWorkflowThrottling - Activation or deactivation workflow failed because there are too many concurrent workflows\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\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.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + }, + "202": { + "description": "Accepted" + }, + "201": { + "description": "Successfully created the database.", + "schema": { + "$ref": "#/definitions/ManagedDatabase" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Creates a new managed database with minimal properties": { + "$ref": "./examples/ManagedDatabaseCreateMin.json" + }, + "Creates a new managed database with maximal properties": { + "$ref": "./examples/ManagedDatabaseCreateMax.json" + }, + "Creates a new managed database using point in time restore": { + "$ref": "./examples/ManagedDatabaseCreatePointInTimeRestore.json" + }, + "Creates a new managed database from restoring a geo-replicated backup": { + "$ref": "./examples/ManagedDatabaseCreateRecovery.json" + }, + "Creates a new managed database by restoring from an external backup": { + "$ref": "./examples/ManagedDatabaseCreateRestoreExternalBackup.json" + }, + "Creates a new managed database from restoring a long term retention backup": { + "$ref": "./examples/ManagedDatabaseCreateRestoreLtrBackup.json" + } + } + }, + "delete": { + "tags": [ + "ManagedDatabases" + ], + "description": "Deletes a managed database.", + "operationId": "ManagedDatabases_Delete", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the managed database." + }, + "default": { + "description": "*** Error Responses: ***\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 * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 400 GeoReplicationDatabaseNotPrimary - The operation cannot be performed since the database '{0}' is a replication target.\n\n * 400 GeoReplicationDatabaseNotSecondary - The operation expects the database to be a replication target.\n\n * 400 ManagedInstanceUpdateSloInProgress - \"The operation could not be completed because a service tier change is in progress for managed instance '{0}.' Please wait for the operation in progress to complete and try again.\"\n\n * 400 DropDisallowedDuringFailover - Can not drop database because a failover operation is in progress on the failover group.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\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 * 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 ServerDisabled - Server is disabled.\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 * 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." + }, + "202": { + "description": "Deleting the managed database is in progress." + }, + "204": { + "description": "The specified managed database does not exist." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete managed database": { + "$ref": "./examples/ManagedDatabaseDelete.json" + } + } + }, + "patch": { + "tags": [ + "ManagedDatabases" + ], + "description": "Updates an existing database.", + "operationId": "ManagedDatabases_Update", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "parameters", + "in": "body", + "description": "The requested database resource state.", + "required": true, + "schema": { + "$ref": "#/definitions/ManagedDatabaseUpdate" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the database.", + "schema": { + "$ref": "#/definitions/ManagedDatabase" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 PitrPointInTimeInvalid - The point in time {0} is not valid. Valid point in time range from {1} days early to now and not before source server creation time.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 InvalidBackupRetentionPeriod - The retention days of {0} is not a valid configuration. Valid backup retention in days must be between {1} and {2}\n\n * 400 ManagedDatabaseNameInUse - Database '{0}' already exists. Choose a different database name.\n\n * 400 NoMoreSpaceInManagedInstance - The managed instance has reached its storage limit. The storage usage for the managed instance cannot exceed (%d) MBs.\n\n * 400 ManagedInstanceUpdateSloInProgress - \"The operation could not be completed because a service tier change is in progress for managed instance '{0}.' Please wait for the operation in progress to complete and try again.\"\n\n * 400 SourceDatabaseNotFound - The source database does not exist.\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 PasswordNotComplex - The provided password is not complex enough.\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 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 TokenTooLong - The provided token is too long.\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 InvalidCollation - Collation is not recognized by the server.\n\n * 400 ServerNotFound - The requested server was not found.\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 DatabaseNumberLimitReached - Maximum number of databases for SQL Database Managed Instance reached.\n\n * 400 InvalidDatabaseCreateOrUpdateRequest - The request body for the create or update database operation is invalid.\n\n * 400 InvalidResourceId - Invalid resource identifier.\n\n * 400 InvalidSourceDatabaseId - Invalid source database identifier.\n\n * 400 InvalidRestorableDroppedDatabaseId - Invalid restorable dropped database identifier\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 MissingCollation - Collation is required.\n\n * 400 MissingSourceDatabaseId - Missing source database identifier.\n\n * 400 MissingRestorePointInTime - Missing restore point in time\n\n * 400 MissingStorageContainerSasToken - Missing storage container SAS token\n\n * 400 MissingStorageContainerUri - Missing storage container URI\n\n * 400 RestorableDroppedDatabaseIdGivenForRestoreWithSourceDatabaseId - Cannot specify restorableDroppedDatabaseId when sourceDatabaseId is already given in restore create mode\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 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 CannotFindServerCertificateWithThumbprint - Cannot find server certificate with thumbprint '{0}'. Please use PowerShell Cmdlet 'Add-AzureRmSqlManagedInstanceTransparentDataEncryptionCertificate' to create the certificate.\n\n * 404 CannotFindObject - Cannot find the object because it does not exist or you do not have permissions\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 RestoreSourceDatabaseNotFound - Could not find database '{0}' at time '{1}' that can be restored.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\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 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ManagementServiceDatabaseBusy - Database '{0}' is busy with another operation. Please try your operation later.\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 * 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 ActivateOrDeactivateWorkflowThrottling - Activation or deactivation workflow failed because there are too many concurrent workflows\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\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." + }, + "202": { + "description": "Updating the managed database is in progress." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Updates a managed database with minimal properties": { + "$ref": "./examples/ManagedDatabaseUpdateMin.json" + }, + "Updates a managed database with maximal properties": { + "$ref": "./examples/ManagedDatabaseUpdateMax.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/databases/{databaseName}/completeRestore": { + "post": { + "tags": [ + "ManagedDatabases" + ], + "description": "Completes the restore operation on a managed database.", + "operationId": "ManagedDatabases_CompleteRestore", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "parameters", + "in": "body", + "description": "The definition for completing the restore of this managed database.", + "required": true, + "schema": { + "$ref": "#/definitions/CompleteDatabaseRestoreDefinition" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully completed restore request." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidDatabaseCompleteRestoreRequest - The complete database restore request is invalid\n\n * 400 InvalidDatabaseCompleteRestoreRequestLastBackupName - The last backup name is invalid\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 SourceDatabaseNotFound - The source database does not exist.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 UnsupportedServiceName - The specified name is an invalid name because it contains one or more unsupported unicode characters.\n\n * 400 AutoCompleteMissingLastBackupName - Auto complete restore request must have lastBackupName parameter provided.\n\n * 400 MissingThumbprint - Can not find server certificate.\n\n * 400 BlobStorageServerFailure - Blob storage server failure has occurred.\n\n * 400 BackupSetNotFound - No backups were found to restore the database. Please contact support to restore the database.\n\n * 400 FullBackupNotFound - Full backup can not be found.\n\n * 400 RestoreFromStripedBackupsNotEnabled - Restoring from striped backups is not supported.\n\n * 400 BrokenRestorePlanNoFullBackup - The restore plan is broken because there is no full backup.\n\n * 400 BrokenRestorePlanWrongLogBackupLSN - The restore plan is broken because firstLsn of current log backup is not <= lastLsn of next log backup.\n\n * 400 BrokenRestorePlanWrongDiffBackupLSN - The restore plan is broken because firstLsn of diff backup is not >= firstLsn of full backup.\n\n * 400 BrokenRestorePlanGapInLogBackups - The restore plan is broken because firstLsn of current log backup is not equal to lastLsn of prev log backup.\n\n * 400 XtpInitializedDuringRestore - Memory-optimized filegroup must be empty in order to be restored on General Purpose tier of SQL Database Managed Instance.\n\n * 400 FullBackupMissingChecksum - Provided full backup is missing checksum.\n\n * 400 FullBackupDamaged - Provided full backup is damaged.\n\n * 400 PartiallyContainedDatabaseUnsupported - \"Backup for a partially contained database is not supported.\"\n\n * 400 RequiredBackupIsNotLastRestored - Migration cannot be completed because provided backup file name is not the name of the last backup file that is restored.\n\n * 400 ManagedInstanceStorageLimitHit - The managed instance has reached its storage limit.\n\n * 400 IncompatiblePhysicalLayoutTooFewDataFiles - Database backup contains incompatible physical layout. No data files are found in the backup.\n\n * 400 IncompatiblePhysicalLayoutNonOnlineDataFilesExist - Database backup contains incompatible physical layout. Non-online data files exist.\n\n * 400 IncompatiblePhysicalLayoutWrongNumberOfLogFiles - Database backup contains incompatible physical layout. Multiple log files are not supported.\n\n * 400 IncompatiblePhysicalLayoutNonOnlineLogFilesExist - Database backup contains incompatible physical layout. Non-online log files exist.\n\n * 400 IncompatiblePhysicalLayoutTooManyNonDataLogFiles - Database backup contains incompatible physical layout. Too many non-data/log files.\n\n * 400 ExternalBackupAlreadySignaledToComplete - The restore request has already been signaled to complete.\n\n * 400 ExternalBackupRestoreHasNotBeenStarted - The restore request can only be completed once the restore has started.\n\n * 400 ExternalBackupUpgradeInProgress - The restore request cannot be completed, since upgrade is in progress.\n\n * 400 IncompatiblePhysicalLayoutTooManyXTPFiles - Database backup contains incompatible physical layout. Multiple files found in the filegroup that contains MEMORY_OPTIMIZED_DATA.\n\n * 400 BlobStorageFailure - Blob storage failure has occurred.\n\n * 404 ResourceDoesNotExist - Resource with the name '{0}' does not exist. To continue, specify a valid resource name.\n\n * 429 SubscriptionTooManyRequests - Requests beyond max requests that can be processed by available resources." + }, + "202": { + "description": "Completing restore request is in progress." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Completes a managed database external backup restore.": { + "$ref": "./examples/ManagedDatabaseCompleteExternalRestore.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/inaccessibleManagedDatabases": { + "get": { + "tags": [ + "ManagedDatabases" + ], + "description": "Gets a list of inaccessible managed databases in a managed instance", + "operationId": "ManagedDatabases_ListInaccessibleByInstance", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of inaccessible managed databases in a managed instance.", + "schema": { + "$ref": "#/definitions/ManagedDatabaseListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List inaccessible managed databases by managed instances": { + "$ref": "./examples/InaccessibleManagedDatabaseListByManagedInstance.json" + } + } + } + } + }, + "definitions": { + "ManagedDatabaseListResult": { + "description": "A list of managed databases.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedDatabase" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "ManagedDatabaseProperties": { + "description": "The managed database's properties.", + "type": "object", + "properties": { + "collation": { + "description": "Collation of the managed database.", + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "status": { + "description": "Status of the database.", + "enum": [ + "Online", + "Offline", + "Shutdown", + "Creating", + "Inaccessible", + "Restoring", + "Updating" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ManagedDatabaseStatus", + "modelAsString": true + } + }, + "creationDate": { + "format": "date-time", + "description": "Creation date of the database.", + "type": "string", + "readOnly": true + }, + "earliestRestorePoint": { + "format": "date-time", + "description": "Earliest restore point in time for point in time restore.", + "type": "string", + "readOnly": true + }, + "restorePointInTime": { + "format": "date-time", + "description": "Conditional. If createMode is PointInTimeRestore, this value is required. Specifies the point in time (ISO8601 format) of the source database that will be restored to create the new database.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "defaultSecondaryLocation": { + "description": "Geo paired region.", + "type": "string", + "readOnly": true + }, + "catalogCollation": { + "description": "Collation of the metadata catalog.", + "enum": [ + "DATABASE_DEFAULT", + "SQL_Latin1_General_CP1_CI_AS" + ], + "type": "string", + "x-ms-enum": { + "name": "CatalogCollationType", + "modelAsString": true + }, + "x-ms-mutability": [ + "read", + "create" + ] + }, + "createMode": { + "description": "Managed database create mode. PointInTimeRestore: Create a database by restoring a point in time backup of an existing database. SourceDatabaseName, SourceManagedInstanceName and PointInTime must be specified. RestoreExternalBackup: Create a database by restoring from external backup files. Collation, StorageContainerUri and StorageContainerSasToken must be specified. Recovery: Creates a database by restoring a geo-replicated backup. RecoverableDatabaseId must be specified as the recoverable database resource ID to restore. RestoreLongTermRetentionBackup: Create a database by restoring from a long term retention backup (longTermRetentionBackupResourceId required).", + "enum": [ + "Default", + "RestoreExternalBackup", + "PointInTimeRestore", + "Recovery", + "RestoreLongTermRetentionBackup" + ], + "type": "string", + "x-ms-enum": { + "name": "ManagedDatabaseCreateMode", + "modelAsString": true + }, + "x-ms-mutability": [ + "create" + ] + }, + "storageContainerUri": { + "description": "Conditional. If createMode is RestoreExternalBackup, this value is required. Specifies the uri of the storage container where backups for this restore are stored.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "sourceDatabaseId": { + "description": "The resource identifier of the source database associated with create operation of this database.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "restorableDroppedDatabaseId": { + "description": "The restorable dropped database resource id to restore when creating this database.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "storageContainerSasToken": { + "description": "Conditional. If createMode is RestoreExternalBackup, this value is required. Specifies the storage container sas token.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "failoverGroupId": { + "description": "Instance Failover Group resource identifier that this managed database belongs to.", + "type": "string", + "readOnly": true + }, + "recoverableDatabaseId": { + "description": "The resource identifier of the recoverable database associated with create operation of this database.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "longTermRetentionBackupResourceId": { + "description": "The name of the Long Term Retention backup to be used for restore of this managed database.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "autoCompleteRestore": { + "description": "Whether to auto complete restore of this managed database.", + "type": "boolean", + "x-ms-mutability": [ + "create" + ] + }, + "lastBackupName": { + "description": "Last backup file name for restore of this managed database.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + } + } + }, + "ManagedDatabase": { + "description": "A managed database resource.", + "required": [ + "location" + ], + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/TrackedResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ManagedDatabaseProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "ManagedDatabaseUpdate": { + "description": "An managed database update.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/ManagedDatabaseProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + }, + "tags": { + "description": "Resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "CompleteDatabaseRestoreDefinition": { + "description": "Contains the information necessary to perform a complete database restore operation.", + "required": [ + "lastBackupName" + ], + "type": "object", + "properties": { + "lastBackupName": { + "description": "The last backup name to apply", + "type": "string" + } + } + } + }, + "parameters": { + "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" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedInstanceAdministrators.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedInstanceAdministrators.json new file mode 100644 index 000000000000..b091be25132f --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedInstanceAdministrators.json @@ -0,0 +1,331 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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/managedInstances/{managedInstanceName}/administrators": { + "get": { + "tags": [ + "ManagedInstanceAdministrators" + ], + "description": "Gets a list of managed instance administrators.", + "operationId": "ManagedInstanceAdministrators_ListByInstance", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of managed instance administrators.", + "schema": { + "$ref": "#/definitions/ManagedInstanceAdministratorListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 ManagedInstanceNotInSubscriptionResourceGroup - Specified managed instance does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found.\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 * 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 administrators of managed instance": { + "$ref": "./examples/ManagedInstanceAdministratorListByInstance.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/administrators/{administratorName}": { + "get": { + "tags": [ + "ManagedInstanceAdministrators" + ], + "description": "Gets a managed instance administrator.", + "operationId": "ManagedInstanceAdministrators_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "name": "administratorName", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "ActiveDirectory" + ], + "x-ms-enum": { + "name": "AdministratorName", + "modelAsString": true + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the the specified managed instance administrator.", + "schema": { + "$ref": "#/definitions/ManagedInstanceAdministrator" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 InvalidManagedServerAdministratorType - Invalid administrator type specified in properties.\n\n * 400 InvalidResourceRequestBody - The resource or resource properties in the request body is empty or invalid.\n\n * 400 InvalidManagedServerAzureADAdminDeleteOperation - User tried to delete managed server Azure Active Azure admin when AzureADOnlyAuthentication is set, please use azureADOnlyAuthentications API first.\n\n * 400 InvalidManagedServerAADOnlyAuthTypePropertyName - Managed Server Azure Active Directory only authentication type should be Default\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 ManagedInstanceNotInSubscriptionResourceGroup - Specified managed instance does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found.\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 * 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": { + "Get administrator of managed instance": { + "$ref": "./examples/ManagedInstanceAdministratorGet.json" + } + } + }, + "put": { + "tags": [ + "ManagedInstanceAdministrators" + ], + "description": "Creates or updates a managed instance administrator.", + "operationId": "ManagedInstanceAdministrators_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "name": "administratorName", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "ActiveDirectory" + ], + "x-ms-enum": { + "name": "AdministratorName", + "modelAsString": true + } + }, + { + "name": "parameters", + "in": "body", + "description": "The requested administrator parameters.", + "required": true, + "schema": { + "$ref": "#/definitions/ManagedInstanceAdministrator" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the managed instance administrator.", + "schema": { + "$ref": "#/definitions/ManagedInstanceAdministrator" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 InvalidManagedServerAdministratorType - Invalid administrator type specified in properties.\n\n * 400 InvalidResourceRequestBody - The resource or resource properties in the request body is empty or invalid.\n\n * 400 InvalidManagedServerAzureADAdminDeleteOperation - User tried to delete managed server Azure Active Azure admin when AzureADOnlyAuthentication is set, please use azureADOnlyAuthentications API first.\n\n * 400 InvalidManagedServerAADOnlyAuthTypePropertyName - Managed Server Azure Active Directory only authentication type should be Default\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 InvalidLoginName - The provided login name is invalid.\n\n * 400 PrincipalNotFoundInTenant - AzureAD Lookup returned no results for this name.\n\n * 400 ServerPrincipalHasDuplicateDisplayNameInAad - AzureAD Lookup returned multiple results for this name.\n\n * 400 ManagedInstanceIsBusy - Managed Instance is busy with another request.\n\n * 400 InvalidPrincipalType - This principal type is not supported in Windows Azure SQL Database.\n\n * 400 ServicePrincipalLookupInAadFailed - AzureAD Lookup failed due to service infrastructure errors.\n\n * 400 TenantNotFoundInActiveDirectory - Tenant is not available in active directory.\n\n * 400 InvalidUsername - Supplied user name contains invalid characters.\n\n * 400 ManagedInstanceHasNoPermissionsToAccessAad - Attempt to perform operation, which involves a non-existing login or login on which executing principal has no permissions.\n\n * 403 ServicePrincipalLookupInAadFailedIdentityForbidden - AzureAD Lookup failed because MSI was not granted read permissions on AAD.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 ManagedInstanceNotInSubscriptionResourceGroup - Specified managed instance does not exist in the specified resource group and subscription.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ResourceNotFound - The requested resource was not found.\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 ServerPrincipalAlreadyExists - Attempt to create server principal with non-unique name.\n\n * 409 ServerPrincipalCurrentlyLoggedIn - Self-explanatory.\n\n * 409 ServerPrincipalOwnsJobs - Attempt to remove a login when it has active jobs.\n\n * 409 ServerPrincipalIsGrantorOfPermissions - Attempt to drop a server principal, which is a grantor of permissions.\n\n * 409 ServerPrincipalOwnsDatabase - Change the owner of the database(s) before dropping the login.\n\n * 409 ServerPrincipalUsedInTriggerOrEventNotification - Attempt to drop login, which is used as an execution context of a trigger or event notification.\n\n * 409 ServerPrincipalOwnsObjects - Attempt to drop a login, which owns objects.\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 ActiveDirectoryLookupTimedOut - The operation could not be completed at this time. Please try again later.\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." + }, + "202": { + "description": "Accepted" + }, + "201": { + "description": "Successfully created the managed instance administrator.", + "schema": { + "$ref": "#/definitions/ManagedInstanceAdministrator" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create administrator of managed instance": { + "$ref": "./examples/ManagedInstanceAdministratorCreate.json" + }, + "Update administrator of managed instance": { + "$ref": "./examples/ManagedInstanceAdministratorUpdate.json" + } + } + }, + "delete": { + "tags": [ + "ManagedInstanceAdministrators" + ], + "description": "Deletes a managed instance administrator.", + "operationId": "ManagedInstanceAdministrators_Delete", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "name": "administratorName", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "ActiveDirectory" + ], + "x-ms-enum": { + "name": "AdministratorName", + "modelAsString": true + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the managed instance administrator." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 InvalidManagedServerAdministratorType - Invalid administrator type specified in properties.\n\n * 400 InvalidResourceRequestBody - The resource or resource properties in the request body is empty or invalid.\n\n * 400 InvalidManagedServerAzureADAdminDeleteOperation - User tried to delete managed server Azure Active Azure admin when AzureADOnlyAuthentication is set, please use azureADOnlyAuthentications API first.\n\n * 400 InvalidManagedServerAADOnlyAuthTypePropertyName - Managed Server Azure Active Directory only authentication type should be Default\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 InvalidLoginName - The provided login name is invalid.\n\n * 400 PrincipalNotFoundInTenant - AzureAD Lookup returned no results for this name.\n\n * 400 ServerPrincipalHasDuplicateDisplayNameInAad - AzureAD Lookup returned multiple results for this name.\n\n * 400 ManagedInstanceIsBusy - Managed Instance is busy with another request.\n\n * 400 InvalidPrincipalType - This principal type is not supported in Windows Azure SQL Database.\n\n * 400 ServicePrincipalLookupInAadFailed - AzureAD Lookup failed due to service infrastructure errors.\n\n * 400 TenantNotFoundInActiveDirectory - Tenant is not available in active directory.\n\n * 400 InvalidUsername - Supplied user name contains invalid characters.\n\n * 400 ManagedInstanceHasNoPermissionsToAccessAad - Attempt to perform operation, which involves a non-existing login or login on which executing principal has no permissions.\n\n * 403 ServicePrincipalLookupInAadFailedIdentityForbidden - AzureAD Lookup failed because MSI was not granted read permissions on AAD.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 ManagedInstanceNotInSubscriptionResourceGroup - Specified managed instance does not exist in the specified resource group and subscription.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ResourceNotFound - The requested resource was not found.\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 ServerPrincipalAlreadyExists - Attempt to create server principal with non-unique name.\n\n * 409 ServerPrincipalCurrentlyLoggedIn - Self-explanatory.\n\n * 409 ServerPrincipalOwnsJobs - Attempt to remove a login when it has active jobs.\n\n * 409 ServerPrincipalIsGrantorOfPermissions - Attempt to drop a server principal, which is a grantor of permissions.\n\n * 409 ServerPrincipalOwnsDatabase - Change the owner of the database(s) before dropping the login.\n\n * 409 ServerPrincipalUsedInTriggerOrEventNotification - Attempt to drop login, which is used as an execution context of a trigger or event notification.\n\n * 409 ServerPrincipalOwnsObjects - Attempt to drop a login, which owns objects.\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 ActiveDirectoryLookupTimedOut - The operation could not be completed at this time. Please try again later.\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." + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete administrator of managed instance": { + "$ref": "./examples/ManagedInstanceAdministratorDelete.json" + } + } + } + } + }, + "definitions": { + "ManagedInstanceAdministratorListResult": { + "description": "A list of managed instance administrators.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedInstanceAdministrator" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "ManagedInstanceAdministratorProperties": { + "description": "The properties of a managed instance administrator.", + "required": [ + "administratorType", + "login", + "sid" + ], + "type": "object", + "properties": { + "administratorType": { + "description": "Type of the managed instance administrator.", + "enum": [ + "ActiveDirectory" + ], + "type": "string", + "x-ms-enum": { + "name": "ManagedInstanceAdministratorType", + "modelAsString": true + } + }, + "login": { + "description": "Login name of the managed instance administrator.", + "type": "string" + }, + "sid": { + "format": "uuid", + "description": "SID (object ID) of the managed instance administrator.", + "type": "string" + }, + "tenantId": { + "format": "uuid", + "description": "Tenant ID of the managed instance administrator.", + "type": "string" + } + } + }, + "ManagedInstanceAdministrator": { + "description": "An Azure SQL managed instance administrator.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ManagedInstanceAdministratorProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + } + }, + "parameters": { + "ManagedInstanceNameParameter": { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedInstanceAzureADOnlyAuthentications.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedInstanceAzureADOnlyAuthentications.json new file mode 100644 index 000000000000..3472fb50a849 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedInstanceAzureADOnlyAuthentications.json @@ -0,0 +1,311 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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/managedInstances/{managedInstanceName}/azureADOnlyAuthentications/{authenticationName}": { + "get": { + "tags": [ + "ManagedInstanceAzureADOnlyAuthentications" + ], + "description": "Gets a specific Azure Active Directory only authentication property.", + "operationId": "ManagedInstanceAzureADOnlyAuthentications_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "name": "authenticationName", + "in": "path", + "description": "The name of server azure active directory only authentication.", + "required": true, + "type": "string", + "enum": [ + "Default" + ], + "x-ms-enum": { + "name": "AuthenticationName", + "modelAsString": true + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved a specified Azure Active Directory only authentication properties.", + "schema": { + "$ref": "#/definitions/ManagedInstanceAzureADOnlyAuthentication" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidServerAzureADOnlyAuthenticationParameter - User tried to set AzureADOnlyAuthentication parameter to false which is not allowed, please use azureADOnlyAuthentications API instead.\n\n * 400 InvalidManagedServerAADOnlyAuthTypePropertyName - Managed Server Azure Active Directory only authentication type should be Default\n\n * 400 InvalidManagedServerAADOnlyAuthNoAADAdminPropertyName - AAD Admin is not configured, AAD Admin must be set before enabling/disabling AAD Only Authentication.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 ManagedInstanceNotInSubscriptionResourceGroup - Specified managed instance does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found.\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 * 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": { + "Gets a Azure Active Directory only authentication property.": { + "$ref": "./examples/ManagedInstanceAzureADOnlyAuthGet.json" + } + } + }, + "put": { + "tags": [ + "ManagedInstanceAzureADOnlyAuthentications" + ], + "description": "Sets Server Active Directory only authentication property or updates an existing server Active Directory only authentication property.", + "operationId": "ManagedInstanceAzureADOnlyAuthentications_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "name": "authenticationName", + "in": "path", + "description": "The name of server azure active directory only authentication.", + "required": true, + "type": "string", + "enum": [ + "Default" + ], + "x-ms-enum": { + "name": "AuthenticationName", + "modelAsString": true + } + }, + { + "name": "parameters", + "in": "body", + "description": "The required parameters for creating or updating an Active Directory only authentication property.", + "required": true, + "schema": { + "$ref": "#/definitions/ManagedInstanceAzureADOnlyAuthentication" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated a Azure Active Directory only authentication property.", + "schema": { + "$ref": "#/definitions/ManagedInstanceAzureADOnlyAuthentication" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidServerAzureADOnlyAuthenticationParameter - User tried to set AzureADOnlyAuthentication parameter to false which is not allowed, please use azureADOnlyAuthentications API instead.\n\n * 400 InvalidManagedServerAADOnlyAuthTypePropertyName - Managed Server Azure Active Directory only authentication type should be Default\n\n * 400 InvalidManagedServerAADOnlyAuthNoAADAdminPropertyName - AAD Admin is not configured, AAD Admin must be set before enabling/disabling AAD Only Authentication.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 ManagedInstanceNotInSubscriptionResourceGroup - Specified managed instance does not exist in the specified resource group and subscription.\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 * 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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + }, + "202": { + "description": "Accepted" + }, + "201": { + "description": "Successfully updated Azure Active Directory only authentication property.", + "schema": { + "$ref": "#/definitions/ManagedInstanceAzureADOnlyAuthentication" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Creates or updates Azure Active Directory only authentication object.": { + "$ref": "./examples/ManagedInstanceAzureADOnlyAuthCreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "ManagedInstanceAzureADOnlyAuthentications" + ], + "description": "Deletes an existing server Active Directory only authentication property.", + "operationId": "ManagedInstanceAzureADOnlyAuthentications_Delete", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "name": "authenticationName", + "in": "path", + "description": "The name of server azure active directory only authentication.", + "required": true, + "type": "string", + "enum": [ + "Default" + ], + "x-ms-enum": { + "name": "AuthenticationName", + "modelAsString": true + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the Azure Active Directory only property." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidServerAzureADOnlyAuthenticationParameter - User tried to set AzureADOnlyAuthentication parameter to false which is not allowed, please use azureADOnlyAuthentications API instead.\n\n * 400 InvalidManagedServerAADOnlyAuthTypePropertyName - Managed Server Azure Active Directory only authentication type should be Default\n\n * 400 InvalidManagedServerAADOnlyAuthNoAADAdminPropertyName - AAD Admin is not configured, AAD Admin must be set before enabling/disabling AAD Only Authentication.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 ManagedInstanceNotInSubscriptionResourceGroup - Specified managed instance does not exist in the specified resource group and subscription.\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 * 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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "The specified Azure Active Directory only property does not exist." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Deletes Azure Active Directory only authentication object.": { + "$ref": "./examples/ManagedInstanceAzureADOnlyAuthDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/azureADOnlyAuthentications": { + "get": { + "tags": [ + "ManagedInstanceAzureADOnlyAuthentications" + ], + "description": "Gets a list of server Azure Active Directory only authentications.", + "operationId": "ManagedInstanceAzureADOnlyAuthentications_ListByInstance", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of Azure Active Directory only authentication objects.", + "schema": { + "$ref": "#/definitions/ManagedInstanceAzureADOnlyAuthListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 ManagedInstanceNotInSubscriptionResourceGroup - Specified managed instance does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found.\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 * 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": { + "Gets a list of Azure Active Directory only authentication object.": { + "$ref": "./examples/ManagedInstanceAzureADOnlyAuthListByInstance.json" + } + } + } + } + }, + "definitions": { + "ManagedInstanceAzureADOnlyAuthProperties": { + "description": "Properties of a active directory only authentication for Managed Instance.", + "required": [ + "azureADOnlyAuthentication" + ], + "type": "object", + "properties": { + "azureADOnlyAuthentication": { + "description": "Azure Active Directory only Authentication enabled.", + "type": "boolean" + } + } + }, + "ManagedInstanceAzureADOnlyAuthentication": { + "description": "Azure Active Directory only authentication.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ManagedInstanceAzureADOnlyAuthProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "ManagedInstanceAzureADOnlyAuthListResult": { + "description": "A list of active directory only authentications.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedInstanceAzureADOnlyAuthentication" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "ManagedInstanceNameParameter": { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedInstanceEncryptionProtectors.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedInstanceEncryptionProtectors.json new file mode 100644 index 000000000000..f12b8081098b --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedInstanceEncryptionProtectors.json @@ -0,0 +1,338 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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/managedInstances/{managedInstanceName}/encryptionProtector/{encryptionProtectorName}/revalidate": { + "post": { + "tags": [ + "ManagedInstanceEncryptionProtectors" + ], + "description": "Revalidates an existing encryption protector.", + "operationId": "ManagedInstanceEncryptionProtectors_Revalidate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "name": "encryptionProtectorName", + "in": "path", + "description": "The name of the encryption protector to be updated.", + "required": true, + "type": "string", + "enum": [ + "current" + ], + "x-ms-enum": { + "name": "EncryptionProtectorName", + "modelAsString": true + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully revalidated the encryption protector." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidKeyName - An invalid value was given for the server key name.\n\n * 400 InvalidKeyType - The create server key type is not supported.\n\n * 400 InvalidUpsertKeyType - Service-managed TDE keys are managed by the service. Service-managed TDE keys don't support Create or Update by the user.\n\n * 400 InvalidKeyUpsertRequest - The create server key request does not exist or has no properties object.\n\n * 400 InvalidEncryptionProtectorName - The encryption protector key name is not supported.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\n\n * 400 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 400 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 ServerKeyNotFound - The requested server key was not found on the current subscription.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information ." + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Revalidates the encryption protector": { + "$ref": "./examples/ManagedInstanceEncryptionProtectorRevalidate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/encryptionProtector": { + "get": { + "tags": [ + "ManagedInstanceEncryptionProtectors" + ], + "description": "Gets a list of managed instance encryption protectors", + "operationId": "ManagedInstanceEncryptionProtectors_ListByInstance", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of managed instance encryption protector.", + "schema": { + "$ref": "#/definitions/ManagedInstanceEncryptionProtectorListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidKeyName - An invalid value was given for the server key name.\n\n * 400 InvalidKeyType - The create server key type is not supported.\n\n * 400 InvalidUpsertKeyType - Service-managed TDE keys are managed by the service. Service-managed TDE keys don't support Create or Update by the user.\n\n * 400 InvalidKeyUpsertRequest - The create server key request does not exist or has no properties object.\n\n * 400 InvalidEncryptionProtectorName - The encryption protector key name is not supported.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List encryption protectors by managed instance": { + "$ref": "./examples/ManagedInstanceEncryptionProtectorList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/encryptionProtector/{encryptionProtectorName}": { + "get": { + "tags": [ + "ManagedInstanceEncryptionProtectors" + ], + "description": "Gets a managed instance encryption protector.", + "operationId": "ManagedInstanceEncryptionProtectors_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "name": "encryptionProtectorName", + "in": "path", + "description": "The name of the encryption protector to be retrieved.", + "required": true, + "type": "string", + "enum": [ + "current" + ], + "x-ms-enum": { + "name": "EncryptionProtectorName", + "modelAsString": true + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the specified managed instance encryption protector.", + "schema": { + "$ref": "#/definitions/ManagedInstanceEncryptionProtector" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidKeyName - An invalid value was given for the server key name.\n\n * 400 InvalidKeyType - The create server key type is not supported.\n\n * 400 InvalidUpsertKeyType - Service-managed TDE keys are managed by the service. Service-managed TDE keys don't support Create or Update by the user.\n\n * 400 InvalidKeyUpsertRequest - The create server key request does not exist or has no properties object.\n\n * 400 InvalidEncryptionProtectorName - The encryption protector key name is not supported.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-examples": { + "Get the encryption protector": { + "$ref": "./examples/ManagedInstanceEncryptionProtectorGet.json" + } + } + }, + "put": { + "tags": [ + "ManagedInstanceEncryptionProtectors" + ], + "description": "Updates an existing encryption protector.", + "operationId": "ManagedInstanceEncryptionProtectors_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "name": "encryptionProtectorName", + "in": "path", + "description": "The name of the encryption protector to be updated.", + "required": true, + "type": "string", + "enum": [ + "current" + ], + "x-ms-enum": { + "name": "EncryptionProtectorName", + "modelAsString": true + } + }, + { + "name": "parameters", + "in": "body", + "description": "The requested encryption protector resource state.", + "required": true, + "schema": { + "$ref": "#/definitions/ManagedInstanceEncryptionProtector" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the encryption protector.", + "schema": { + "$ref": "#/definitions/ManagedInstanceEncryptionProtector" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidKeyName - An invalid value was given for the server key name.\n\n * 400 InvalidKeyType - The create server key type is not supported.\n\n * 400 InvalidUpsertKeyType - Service-managed TDE keys are managed by the service. Service-managed TDE keys don't support Create or Update by the user.\n\n * 400 InvalidKeyUpsertRequest - The create server key request does not exist or has no properties object.\n\n * 400 InvalidEncryptionProtectorName - The encryption protector key name is not supported.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\n\n * 400 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 400 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 ServerKeyNotFound - The requested server key was not found on the current subscription.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information ." + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update the encryption protector to key vault": { + "$ref": "./examples/ManagedInstanceEncryptionProtectorCreateOrUpdateKeyVault.json" + }, + "Update the encryption protector to service managed": { + "$ref": "./examples/ManagedInstanceEncryptionProtectorCreateOrUpdateServiceManaged.json" + } + } + } + } + }, + "definitions": { + "ManagedInstanceEncryptionProtectorListResult": { + "description": "A list of managed instance encryption protectors.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedInstanceEncryptionProtector" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "ManagedInstanceEncryptionProtectorProperties": { + "description": "Properties for an encryption protector execution.", + "required": [ + "serverKeyType" + ], + "type": "object", + "properties": { + "serverKeyName": { + "description": "The name of the managed instance key.", + "type": "string" + }, + "serverKeyType": { + "description": "The encryption protector type like 'ServiceManaged', 'AzureKeyVault'.", + "enum": [ + "ServiceManaged", + "AzureKeyVault" + ], + "type": "string", + "x-ms-enum": { + "name": "ServerKeyType", + "modelAsString": true + } + }, + "uri": { + "description": "The URI of the server key.", + "type": "string", + "readOnly": true + }, + "thumbprint": { + "description": "Thumbprint of the server key.", + "type": "string", + "readOnly": true + }, + "autoRotationEnabled": { + "description": "Key auto rotation opt-in flag. Either true or false.", + "type": "boolean" + } + } + }, + "ManagedInstanceEncryptionProtector": { + "description": "The managed instance encryption protector.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "kind": { + "description": "Kind of encryption protector. This is metadata used for the Azure portal experience.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/ManagedInstanceEncryptionProtectorProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + } + }, + "parameters": { + "ManagedInstanceNameParameter": { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedInstanceKeys.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedInstanceKeys.json new file mode 100644 index 000000000000..650ffe168a84 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedInstanceKeys.json @@ -0,0 +1,336 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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/managedInstances/{managedInstanceName}/keys": { + "get": { + "tags": [ + "ManagedInstanceKeys" + ], + "description": "Gets a list of managed instance keys.", + "operationId": "ManagedInstanceKeys_ListByInstance", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "description": "An OData filter expression that filters elements in the collection.", + "required": false, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of managed instance keys.", + "schema": { + "$ref": "#/definitions/ManagedInstanceKeyListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidKeyName - An invalid value was given for the server key name.\n\n * 400 InvalidKeyType - The create server key type is not supported.\n\n * 400 InvalidUpsertKeyType - Service-managed TDE keys are managed by the service. Service-managed TDE keys don't support Create or Update by the user.\n\n * 400 InvalidKeyUpsertRequest - The create server key request does not exist or has no properties object.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List the keys for a managed instance.": { + "$ref": "./examples/ManagedInstanceKeyList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/keys/{keyName}": { + "get": { + "tags": [ + "ManagedInstanceKeys" + ], + "description": "Gets a managed instance key.", + "operationId": "ManagedInstanceKeys_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "name": "keyName", + "in": "path", + "description": "The name of the managed instance key to be retrieved.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the specified managed instance key.", + "schema": { + "$ref": "#/definitions/ManagedInstanceKey" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidKeyName - An invalid value was given for the server key name.\n\n * 400 InvalidKeyType - The create server key type is not supported.\n\n * 400 InvalidUpsertKeyType - Service-managed TDE keys are managed by the service. Service-managed TDE keys don't support Create or Update by the user.\n\n * 400 InvalidKeyUpsertRequest - The create server key request does not exist or has no properties object.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-examples": { + "Get the managed instance key": { + "$ref": "./examples/ManagedInstanceKeyGet.json" + } + } + }, + "put": { + "tags": [ + "ManagedInstanceKeys" + ], + "description": "Creates or updates a managed instance key.", + "operationId": "ManagedInstanceKeys_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "name": "keyName", + "in": "path", + "description": "The name of the managed instance key to be operated on (updated or created).", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The requested managed instance key resource state.", + "required": true, + "schema": { + "$ref": "#/definitions/ManagedInstanceKey" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the managed instance key.", + "schema": { + "$ref": "#/definitions/ManagedInstanceKey" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidKeyName - An invalid value was given for the server key name.\n\n * 400 InvalidKeyType - The create server key type is not supported.\n\n * 400 InvalidUpsertKeyType - Service-managed TDE keys are managed by the service. Service-managed TDE keys don't support Create or Update by the user.\n\n * 400 InvalidKeyUpsertRequest - The create server key request does not exist or has no properties object.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\n\n * 400 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 400 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information ." + }, + "202": { + "description": "Accepted" + }, + "201": { + "description": "Successfully created the managed instance key.", + "schema": { + "$ref": "#/definitions/ManagedInstanceKey" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Creates or updates a managed instance key": { + "$ref": "./examples/ManagedInstanceKeyCreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "ManagedInstanceKeys" + ], + "description": "Deletes the managed instance key with the given name.", + "operationId": "ManagedInstanceKeys_Delete", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "name": "keyName", + "in": "path", + "description": "The name of the managed instance key to be deleted.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the managed instance key." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidKeyName - An invalid value was given for the server key name.\n\n * 400 InvalidKeyType - The create server key type is not supported.\n\n * 400 InvalidUpsertKeyType - Service-managed TDE keys are managed by the service. Service-managed TDE keys don't support Create or Update by the user.\n\n * 400 InvalidKeyUpsertRequest - The create server key request does not exist or has no properties object.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\n\n * 400 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 400 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information ." + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "The specified managed instance key does not exist." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete the managed instance key": { + "$ref": "./examples/ManagedInstanceKeyDelete.json" + } + } + } + } + }, + "definitions": { + "ManagedInstanceKeyListResult": { + "description": "A list of managed instance keys.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedInstanceKey" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "ManagedInstanceKeyProperties": { + "description": "Properties for a key execution.", + "required": [ + "serverKeyType" + ], + "type": "object", + "properties": { + "serverKeyType": { + "description": "The key type like 'ServiceManaged', 'AzureKeyVault'.", + "enum": [ + "ServiceManaged", + "AzureKeyVault" + ], + "type": "string", + "x-ms-enum": { + "name": "ServerKeyType", + "modelAsString": true + }, + "x-ms-mutability": [ + "create" + ] + }, + "uri": { + "description": "The URI of the key. If the ServerKeyType is AzureKeyVault, then the URI is required.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "thumbprint": { + "description": "Thumbprint of the key.", + "type": "string", + "readOnly": true + }, + "creationDate": { + "format": "date-time", + "description": "The key creation date.", + "type": "string", + "readOnly": true + }, + "autoRotationEnabled": { + "description": "Key auto rotation opt-in flag. Either true or false.", + "type": "boolean", + "readOnly": true + } + } + }, + "ManagedInstanceKey": { + "description": "A managed instance key.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "kind": { + "description": "Kind of encryption protector. This is metadata used for the Azure portal experience.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/ManagedInstanceKeyProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + } + }, + "parameters": { + "ManagedInstanceNameParameter": { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedInstanceLongTermRetentionPolicies.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedInstanceLongTermRetentionPolicies.json new file mode 100644 index 000000000000..f4eae1925d92 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedInstanceLongTermRetentionPolicies.json @@ -0,0 +1,277 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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/managedInstances/{managedInstanceName}/databases/{databaseName}/backupLongTermRetentionPolicies/{policyName}": { + "get": { + "tags": [ + "ManagedInstanceLongTermRetentionPolicies" + ], + "description": "Gets a managed database's long term retention policy.", + "operationId": "ManagedInstanceLongTermRetentionPolicies_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "$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": "ManagedInstanceLongTermRetentionPolicyName", + "modelAsString": true + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully got LTR policy for managed database.", + "schema": { + "$ref": "#/definitions/ManagedInstanceLongTermRetentionPolicy" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 LongTermRetentionPolicyNotSupported - Long Term Retention is not supported on this database.\n\n * 400 LongTermRetentionPolicyInvalid - Long Term Retention policy is invalid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-examples": { + "Get the long term retention policy for the managed database.": { + "$ref": "./examples/ManagedInstanceLongTermRetentionPolicyGet.json" + } + } + }, + "put": { + "tags": [ + "ManagedInstanceLongTermRetentionPolicies" + ], + "description": "Sets a managed database's long term retention policy.", + "operationId": "ManagedInstanceLongTermRetentionPolicies_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "$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": "ManagedInstanceLongTermRetentionPolicyName", + "modelAsString": true + } + }, + { + "name": "parameters", + "in": "body", + "description": "The long term retention policy info.", + "required": true, + "schema": { + "$ref": "#/definitions/ManagedInstanceLongTermRetentionPolicy" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully set LTR policy for managed database.", + "schema": { + "$ref": "#/definitions/ManagedInstanceLongTermRetentionPolicy" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidResourceRequestBody - The resource or resource properties in the request body is empty or invalid.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 LongTermRetentionMissingWeekOfYear - WeekOfYear is required to be set between 1 and 52 in order to set yearly retention.\n\n * 400 LongTermRetentionPolicyNotSupported - Long Term Retention is not supported on this database.\n\n * 400 LongTermRetentionPolicyInvalid - Long Term Retention policy is invalid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create or update the LTR policy for the managed database.": { + "$ref": "./examples/ManagedInstanceLongTermRetentionPolicyCreateOrUpdate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/databases/{databaseName}/backupLongTermRetentionPolicies": { + "get": { + "tags": [ + "ManagedInstanceLongTermRetentionPolicies" + ], + "description": "Gets a database's long term retention policy.", + "operationId": "ManagedInstanceLongTermRetentionPolicies_ListByDatabase", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully got LTR policy for managed database.", + "schema": { + "$ref": "#/definitions/ManagedInstanceLongTermRetentionPolicyListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 LongTermRetentionPolicyNotSupported - Long Term Retention is not supported on this database.\n\n * 400 LongTermRetentionPolicyInvalid - Long Term Retention policy is invalid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get the long term retention policies for the managed database.": { + "$ref": "./examples/ManagedInstanceLongTermRetentionPolicyListByDatabase.json" + } + } + } + } + }, + "definitions": { + "BaseLongTermRetentionPolicyProperties": { + "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 monthly 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" + } + } + }, + "ManagedInstanceLongTermRetentionPolicy": { + "description": "A long term retention policy.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/BaseLongTermRetentionPolicyProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "ManagedInstanceLongTermRetentionPolicyListResult": { + "description": "A list of long term retention policies.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedInstanceLongTermRetentionPolicy" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "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" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedInstanceOperations.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedInstanceOperations.json new file mode 100644 index 000000000000..79bd3d7c3702 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedInstanceOperations.json @@ -0,0 +1,390 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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/managedInstances/{managedInstanceName}/operations": { + "get": { + "tags": [ + "ManagedInstanceOperations" + ], + "description": "Gets a list of operations performed on the managed instance.", + "operationId": "ManagedInstanceOperations_ListByManagedInstance", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The request for getting managed instance operations has been executed successfully.", + "schema": { + "$ref": "#/definitions/ManagedInstanceOperationListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List the managed instance management operations": { + "$ref": "./examples/ListManagedInstanceOperations.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/operations/{operationId}": { + "get": { + "tags": [ + "ManagedInstanceOperations" + ], + "description": "Gets a management operation on a managed instance.", + "operationId": "ManagedInstanceOperations_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "format": "uuid" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the specified managed instance operation.", + "schema": { + "$ref": "#/definitions/ManagedInstanceOperation" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-examples": { + "Gets the managed instance management operation": { + "$ref": "./examples/GetManagedInstanceOperation.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/operations/{operationId}/cancel": { + "post": { + "tags": [ + "ManagedInstanceOperations" + ], + "description": "Cancels the asynchronous operation on the managed instance.", + "operationId": "ManagedInstanceOperations_Cancel", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "format": "uuid" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/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 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 405 CannotCancelOperation - The management operation is in a state that cannot be cancelled.\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-examples": { + "Cancel the managed instance management operation": { + "$ref": "./examples/CancelManagedInstanceOperation.json" + } + } + } + } + }, + "definitions": { + "ManagedInstanceOperationListResult": { + "description": "The response to a list managed instance operations request", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedInstanceOperation" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "ManagedInstanceOperationProperties": { + "description": "The properties of a managed instance operation.", + "type": "object", + "properties": { + "managedInstanceName": { + "description": "The name of the managed instance 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 + }, + "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 + }, + "operationParameters": { + "$ref": "#/definitions/ManagedInstanceOperationParametersPair", + "description": "The operation parameters.", + "readOnly": true + }, + "operationSteps": { + "$ref": "#/definitions/ManagedInstanceOperationSteps", + "description": "The operation steps.", + "readOnly": true + } + } + }, + "ManagedInstanceOperationParametersPair": { + "description": "The parameters of a managed instance operation.", + "type": "object", + "properties": { + "currentParameters": { + "$ref": "#/definitions/UpsertManagedServerOperationParameters", + "description": "The current parameters.", + "readOnly": true + }, + "requestedParameters": { + "$ref": "#/definitions/UpsertManagedServerOperationParameters", + "description": "The requested parameters.", + "readOnly": true + } + } + }, + "ManagedInstanceOperationSteps": { + "description": "The steps of a managed instance operation.", + "type": "object", + "properties": { + "totalSteps": { + "description": "The total number of operation steps.", + "type": "string", + "readOnly": true + }, + "currentStep": { + "format": "int32", + "description": "The number of current operation steps.", + "type": "integer", + "readOnly": true + }, + "stepsList": { + "description": "The operation steps list.", + "type": "array", + "items": { + "$ref": "#/definitions/UpsertManagedServerOperationStep" + }, + "readOnly": true + } + } + }, + "UpsertManagedServerOperationParameters": { + "type": "object", + "properties": { + "family": { + "type": "string" + }, + "tier": { + "type": "string" + }, + "vCores": { + "format": "int32", + "type": "integer" + }, + "storageSizeInGB": { + "format": "int32", + "type": "integer" + } + } + }, + "UpsertManagedServerOperationStep": { + "type": "object", + "properties": { + "order": { + "format": "int32", + "type": "integer" + }, + "name": { + "type": "string" + }, + "status": { + "enum": [ + "NotStarted", + "InProgress", + "SlowedDown", + "Completed", + "Failed", + "Canceled" + ], + "type": "string" + } + } + }, + "ManagedInstanceOperation": { + "description": "A managed instance operation.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ManagedInstanceOperationProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + } + }, + "parameters": { + "ManagedInstanceNameParameter": { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedInstancePrivateEndpointConnections.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedInstancePrivateEndpointConnections.json new file mode 100644 index 000000000000..161f8db8c66d --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedInstancePrivateEndpointConnections.json @@ -0,0 +1,318 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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/managedInstances/{managedInstanceName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "ManagedInstancePrivateEndpointConnections" + ], + "description": "Gets a private endpoint connection.", + "operationId": "ManagedInstancePrivateEndpointConnections_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved a specified private endpoint connection.", + "schema": { + "$ref": "#/definitions/ManagedInstancePrivateEndpointConnection" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 PrivateEndpointConnectionDoesNotExist - Private Endpoint Connection does not exist\n\n * 400 PrivateEndpointConnectionStatusNotPending - Private Endpoint Connection Status is not Pending\n\n * 400 NullRemotePrivateLinkServiceConnectionState - Remote Private Link Service Connection State is Null\n\n * 400 NullPrivateEndpointConnectionProperties - Private Endpoint Connection Properties is Null\n\n * 400 NullRemotePrivateLinkServiceConnectionStateStatus - Remote Private Link Service Connection State Status is Null\n\n * 400 IncorrectPrivateLinkServiceConnectionStateStatus - Private Link Service Connection State Status must be \"Approved\" or \"Rejected\"\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-examples": { + "Gets private endpoint connection.": { + "$ref": "./examples/ManagedInstancePrivateEndpointConnectionGet.json" + } + } + }, + "put": { + "tags": [ + "ManagedInstancePrivateEndpointConnections" + ], + "description": "Approve or reject a private endpoint connection with a given name.", + "operationId": "ManagedInstancePrivateEndpointConnections_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ManagedInstancePrivateEndpointConnection" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully approved or rejected private endpoint connection.", + "schema": { + "$ref": "#/definitions/ManagedInstancePrivateEndpointConnection" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 PrivateEndpointConnectionDoesNotExist - Private Endpoint Connection does not exist\n\n * 400 PrivateEndpointConnectionStatusNotPending - Private Endpoint Connection Status is not Pending\n\n * 400 NullRemotePrivateLinkServiceConnectionState - Remote Private Link Service Connection State is Null\n\n * 400 NullPrivateEndpointConnectionProperties - Private Endpoint Connection Properties is Null\n\n * 400 NullRemotePrivateLinkServiceConnectionStateStatus - Remote Private Link Service Connection State Status is Null\n\n * 400 IncorrectPrivateLinkServiceConnectionStateStatus - Private Link Service Connection State Status must be \"Approved\" or \"Rejected\"\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 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." + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Approve or reject a private endpoint connection with a given name.": { + "$ref": "./examples/ManagedInstancePrivateEndpointConnectionUpdate.json" + } + } + }, + "delete": { + "tags": [ + "ManagedInstancePrivateEndpointConnections" + ], + "description": "Deletes a private endpoint connection with a given name.", + "operationId": "ManagedInstancePrivateEndpointConnections_Delete", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted private endpoint connection." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 PrivateEndpointConnectionDoesNotExist - Private Endpoint Connection does not exist\n\n * 400 PrivateEndpointConnectionStatusNotPending - Private Endpoint Connection Status is not Pending\n\n * 400 NullRemotePrivateLinkServiceConnectionState - Remote Private Link Service Connection State is Null\n\n * 400 NullPrivateEndpointConnectionProperties - Private Endpoint Connection Properties is Null\n\n * 400 NullRemotePrivateLinkServiceConnectionStateStatus - Remote Private Link Service Connection State Status is Null\n\n * 400 IncorrectPrivateLinkServiceConnectionStateStatus - Private Link Service Connection State Status must be \"Approved\" or \"Rejected\"\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 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." + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "Private endpoint connection does not exist." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Deletes a private endpoint connection with a given name.": { + "$ref": "./examples/ManagedInstancePrivateEndpointConnectionDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/privateEndpointConnections": { + "get": { + "tags": [ + "ManagedInstancePrivateEndpointConnections" + ], + "description": "Gets all private endpoint connections on a server.", + "operationId": "ManagedInstancePrivateEndpointConnections_ListByManagedInstance", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private endpoint connections.", + "schema": { + "$ref": "#/definitions/ManagedInstancePrivateEndpointConnectionListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 PrivateEndpointConnectionDoesNotExist - Private Endpoint Connection does not exist\n\n * 400 PrivateEndpointConnectionStatusNotPending - Private Endpoint Connection Status is not Pending\n\n * 400 NullRemotePrivateLinkServiceConnectionState - Remote Private Link Service Connection State is Null\n\n * 400 NullPrivateEndpointConnectionProperties - Private Endpoint Connection Properties is Null\n\n * 400 NullRemotePrivateLinkServiceConnectionStateStatus - Remote Private Link Service Connection State Status is Null\n\n * 400 IncorrectPrivateLinkServiceConnectionStateStatus - Private Link Service Connection State Status must be \"Approved\" or \"Rejected\"\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets list of private endpoint connections on a server.": { + "$ref": "./examples/ManagedInstancePrivateEndpointConnectionList.json" + } + } + } + } + }, + "definitions": { + "ManagedInstancePrivateEndpointConnectionProperties": { + "description": "Properties of a private endpoint connection.", + "type": "object", + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/ManagedInstancePrivateEndpointProperty", + "description": "Private endpoint which the connection belongs to." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/ManagedInstancePrivateLinkServiceConnectionStateProperty", + "description": "Connection State of the Private Endpoint Connection." + }, + "provisioningState": { + "description": "State of the Private Endpoint Connection.", + "type": "string", + "readOnly": true + } + } + }, + "ManagedInstancePrivateEndpointProperty": { + "type": "object", + "properties": { + "id": { + "description": "Resource id of the private endpoint.", + "type": "string" + } + } + }, + "ManagedInstancePrivateLinkServiceConnectionStateProperty": { + "required": [ + "status", + "description" + ], + "type": "object", + "properties": { + "status": { + "description": "The private link service connection status.", + "type": "string" + }, + "description": { + "description": "The private link service connection description.", + "type": "string" + }, + "actionsRequired": { + "description": "The private link service connection description.", + "type": "string", + "readOnly": true + } + } + }, + "ManagedInstancePrivateEndpointConnection": { + "description": "A private endpoint connection", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ManagedInstancePrivateEndpointConnectionProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "ManagedInstancePrivateEndpointConnectionListResult": { + "description": "A list of private endpoint connections.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedInstancePrivateEndpointConnection" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "ManagedInstanceNameParameter": { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedInstancePrivateLinkResources.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedInstancePrivateLinkResources.json new file mode 100644 index 000000000000..7a8a33272ef0 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedInstancePrivateLinkResources.json @@ -0,0 +1,185 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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/managedInstances/{managedInstanceName}/privateLinkResources": { + "get": { + "tags": [ + "ManagedInstancePrivateLinkResources" + ], + "description": "Gets the private link resources for SQL server.", + "operationId": "ManagedInstancePrivateLinkResources_ListByManagedInstance", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private link resources.", + "schema": { + "$ref": "#/definitions/ManagedInstancePrivateLinkListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\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": { + "Gets private link resources for SQL.": { + "$ref": "./examples/ManagedInstancePrivateLinkResourcesList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/privateLinkResources/{groupName}": { + "get": { + "tags": [ + "ManagedInstancePrivateLinkResources" + ], + "description": "Gets a private link resource for SQL server.", + "operationId": "ManagedInstancePrivateLinkResources_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "name": "groupName", + "in": "path", + "description": "The name of the private link resource.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private link resources.", + "schema": { + "$ref": "#/definitions/ManagedInstancePrivateLink" + } + }, + "default": { + "description": "*** Error Responses: ***\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-examples": { + "Gets a private link resource for SQL.": { + "$ref": "./examples/ManagedInstancePrivateLinkResourcesGet.json" + } + } + } + } + }, + "definitions": { + "ManagedInstancePrivateLinkListResult": { + "description": "A list of private link resources", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedInstancePrivateLink" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "ManagedInstancePrivateLinkProperties": { + "description": "Properties of a private link resource.", + "type": "object", + "properties": { + "groupId": { + "description": "The private link resource group id.", + "type": "string", + "readOnly": true + }, + "requiredMembers": { + "description": "The private link resource required member names.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + } + } + }, + "ManagedInstancePrivateLink": { + "description": "A private link resource", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ManagedInstancePrivateLinkProperties", + "description": "The private link resource group id.", + "readOnly": true + } + } + } + }, + "parameters": { + "ManagedInstanceNameParameter": { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedInstanceTdeCertificates.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedInstanceTdeCertificates.json new file mode 100644 index 000000000000..84a01b17dc55 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedInstanceTdeCertificates.json @@ -0,0 +1,133 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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/managedInstances/{managedInstanceName}/tdeCertificates": { + "post": { + "tags": [ + "ManagedInstanceTdeCertificates" + ], + "description": "Creates a TDE certificate for a given server.", + "operationId": "ManagedInstanceTdeCertificates_Create", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "description": "The requested TDE certificate to be created or updated.", + "required": true, + "schema": { + "$ref": "#/definitions/TdeCertificate" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully created the TDE certificate." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 MissingPrivateBlob - The private blob is missing.\n\n * 400 InvalidPrivateBlobOrPassword - Invalid private blob or password specified.\n\n * 400 PrivateBlobWithoutPrivateKey - The provided blob does not contain private key.\n\n * 400 InvalidResourceRequestBody - The resource or resource properties in the request body is empty or invalid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Upload a TDE certificate": { + "$ref": "./examples/ManagedInstanceTdeCertificate.json" + } + } + } + } + }, + "definitions": { + "TdeCertificateProperties": { + "description": "Properties of a TDE certificate.", + "required": [ + "privateBlob" + ], + "type": "object", + "properties": { + "privateBlob": { + "description": "The base64 encoded certificate private blob.", + "type": "string", + "x-ms-mutability": [ + "create", + "update" + ] + }, + "certPassword": { + "description": "The certificate password.", + "type": "string", + "x-ms-mutability": [ + "create", + "update" + ] + } + } + }, + "TdeCertificate": { + "description": "A TDE certificate that can be uploaded into a server.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/TdeCertificateProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + } + }, + "parameters": { + "ManagedInstanceNameParameter": { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedInstanceVulnerabilityAssessments.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedInstanceVulnerabilityAssessments.json new file mode 100644 index 000000000000..09e3acffad9b --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedInstanceVulnerabilityAssessments.json @@ -0,0 +1,359 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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/managedInstances/{managedInstanceName}/vulnerabilityAssessments/{vulnerabilityAssessmentName}": { + "get": { + "tags": [ + "ManagedInstanceVulnerabilityAssessments" + ], + "description": "Gets the managed instance's vulnerability assessment.", + "operationId": "ManagedInstanceVulnerabilityAssessments_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance for which the vulnerability assessment is defined.", + "required": true, + "type": "string" + }, + { + "name": "vulnerabilityAssessmentName", + "in": "path", + "description": "The name of the vulnerability assessment.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentName", + "modelAsString": true + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the managed instance vulnerability assessment.", + "schema": { + "$ref": "#/definitions/ManagedInstanceVulnerabilityAssessment" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 400 VulnerabilityAssessmentInsufficientStorageAccountPermissions - Insufficient permissions on the provided storage account.\n\n * 400 VulnerabilityAssessmentStorageAccountIsDisabled - The provided storage account is disabled.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found" + } + }, + "x-ms-examples": { + "Get a managed instance's vulnerability assessment": { + "$ref": "./examples/ManagedInstanceVulnerabilityAssessmentGet.json" + } + } + }, + "put": { + "tags": [ + "ManagedInstanceVulnerabilityAssessments" + ], + "description": "Creates or updates the managed instance's vulnerability assessment.", + "operationId": "ManagedInstanceVulnerabilityAssessments_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance for which the vulnerability assessment is defined.", + "required": true, + "type": "string" + }, + { + "name": "vulnerabilityAssessmentName", + "in": "path", + "description": "The name of the vulnerability assessment.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentName", + "modelAsString": true + } + }, + { + "name": "parameters", + "in": "body", + "description": "The requested resource.", + "required": true, + "schema": { + "$ref": "#/definitions/ManagedInstanceVulnerabilityAssessment" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully set the vulnerability assessment.", + "schema": { + "$ref": "#/definitions/ManagedInstanceVulnerabilityAssessment" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 400 VulnerabilityAssessmentInsufficientStorageAccountPermissions - Insufficient permissions on the provided storage account.\n\n * 400 VulnerabilityAssessmentStorageAccountIsDisabled - The provided storage account is disabled.\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found" + }, + "201": { + "description": "Successfully created the vulnerability assessment.", + "schema": { + "$ref": "#/definitions/ManagedInstanceVulnerabilityAssessment" + } + } + }, + "x-ms-examples": { + "Create a managed instance's vulnerability assessment with minimal parameters, when storageContainerSasKey is specified": { + "$ref": "./examples/ManagedInstanceVulnerabilityAssessmentCreateContainerSasKeyMin.json" + }, + "Create a managed instance's vulnerability assessment with minimal parameters, when storageAccountAccessKey is specified": { + "$ref": "./examples/ManagedInstanceVulnerabilityAssessmentCreateStorageAccessKeyMin.json" + }, + "Create a managed instance's vulnerability assessment with all parameters": { + "$ref": "./examples/ManagedInstanceVulnerabilityAssessmentCreateMax.json" + } + } + }, + "delete": { + "tags": [ + "ManagedInstanceVulnerabilityAssessments" + ], + "description": "Removes the managed instance's vulnerability assessment.", + "operationId": "ManagedInstanceVulnerabilityAssessments_Delete", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance for which the vulnerability assessment is defined.", + "required": true, + "type": "string" + }, + { + "name": "vulnerabilityAssessmentName", + "in": "path", + "description": "The name of the vulnerability assessment.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentName", + "modelAsString": true + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully removed the managed instance vulnerability assessment." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 400 VulnerabilityAssessmentInsufficientStorageAccountPermissions - Insufficient permissions on the provided storage account.\n\n * 400 VulnerabilityAssessmentStorageAccountIsDisabled - The provided storage account is disabled.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found" + } + }, + "x-ms-examples": { + "Remove a managed instance's vulnerability assessment": { + "$ref": "./examples/ManagedInstanceVulnerabilityAssessmentDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/vulnerabilityAssessments": { + "get": { + "tags": [ + "ManagedInstanceVulnerabilityAssessments" + ], + "description": "Gets the managed instance's vulnerability assessment policies.", + "operationId": "ManagedInstanceVulnerabilityAssessments_ListByInstance", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance for which the vulnerability assessments is defined.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the managed instance vulnerability assessment policies.", + "schema": { + "$ref": "#/definitions/ManagedInstanceVulnerabilityAssessmentListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 400 VulnerabilityAssessmentInsufficientStorageAccountPermissions - Insufficient permissions on the provided storage account.\n\n * 400 VulnerabilityAssessmentStorageAccountIsDisabled - The provided storage account is disabled.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get a managed instance's vulnerability assessment policies": { + "$ref": "./examples/ManagedInstanceVulnerabilityAssessmentListByInstance.json" + } + } + } + } + }, + "definitions": { + "ManagedInstanceVulnerabilityAssessmentProperties": { + "description": "Properties of a managed instance vulnerability assessment.", + "required": [ + "storageContainerPath" + ], + "type": "object", + "properties": { + "storageContainerPath": { + "description": "A blob storage container path to hold the scan results (e.g. https://myStorage.blob.core.windows.net/VaScans/).", + "type": "string", + "x-ms-mutability": [ + "create", + "update" + ] + }, + "storageContainerSasKey": { + "description": "A shared access signature (SAS Key) that has write access to the blob container specified in 'storageContainerPath' parameter. If 'storageAccountAccessKey' isn't specified, StorageContainerSasKey is required.", + "type": "string", + "x-ms-mutability": [ + "create", + "update" + ] + }, + "storageAccountAccessKey": { + "description": "Specifies the identifier key of the storage account for vulnerability assessment scan results. If 'StorageContainerSasKey' isn't specified, storageAccountAccessKey is required.", + "type": "string", + "x-ms-mutability": [ + "create", + "update" + ] + }, + "recurringScans": { + "$ref": "#/definitions/VulnerabilityAssessmentRecurringScansProperties", + "description": "The recurring scans settings" + } + } + }, + "VulnerabilityAssessmentRecurringScansProperties": { + "description": "Properties of a Vulnerability Assessment recurring scans.", + "type": "object", + "properties": { + "isEnabled": { + "description": "Recurring scans state.", + "type": "boolean" + }, + "emailSubscriptionAdmins": { + "description": "Specifies that the schedule scan notification will be is sent to the subscription administrators.", + "default": true, + "type": "boolean" + }, + "emails": { + "description": "Specifies an array of e-mail addresses to which the scan notification is sent.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "ManagedInstanceVulnerabilityAssessment": { + "description": "A managed instance vulnerability assessment.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ManagedInstanceVulnerabilityAssessmentProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "ManagedInstanceVulnerabilityAssessmentListResult": { + "description": "A list of the ManagedInstance's vulnerability assessments.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedInstanceVulnerabilityAssessment" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": {}, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedInstances.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedInstances.json new file mode 100644 index 000000000000..1321783eb9dc --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedInstances.json @@ -0,0 +1,1254 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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/instancePools/{instancePoolName}/managedInstances": { + "get": { + "tags": [ + "ManagedInstances" + ], + "description": "Gets a list of all managed instances in an instance pool.", + "operationId": "ManagedInstances_ListByInstancePool", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "instancePoolName", + "in": "path", + "description": "The instance pool name.", + "required": true, + "type": "string" + }, + { + "name": "$expand", + "in": "query", + "description": "The child resources to include in the response.", + "required": false, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of managed instances.", + "schema": { + "$ref": "#/definitions/ManagedInstanceListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 InstancePoolNotFound - An instance pool cannot be found" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List managed instances by instance pool": { + "$ref": "./examples/ManagedInstanceListByInstancePool.json" + }, + "List managed instances by instance pool with expand equals administrators": { + "$ref": "./examples/ManagedInstanceListByInstancePoolWithExpandEqualsAdministrators.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Sql/managedInstances": { + "get": { + "tags": [ + "ManagedInstances" + ], + "description": "Gets a list of all managed instances in the subscription.", + "operationId": "ManagedInstances_List", + "parameters": [ + { + "name": "$expand", + "in": "query", + "description": "The child resources to include in the response.", + "required": false, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of managed instances.", + "schema": { + "$ref": "#/definitions/ManagedInstanceListResult" + } + }, + "default": { + "description": "*** Error Responses: ***" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List managed instances": { + "$ref": "./examples/ManagedInstanceList.json" + }, + "List managed instances with expand equals administrators": { + "$ref": "./examples/ManagedInstanceListWithExpandEqualsAdministrators.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances": { + "get": { + "tags": [ + "ManagedInstances" + ], + "description": "Gets a list of managed instances in a resource group.", + "operationId": "ManagedInstances_ListByResourceGroup", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "$expand", + "in": "query", + "description": "The child resources to include in the response.", + "required": false, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of managed instances.", + "schema": { + "$ref": "#/definitions/ManagedInstanceListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 MiGeoRestoreWithWrongBackupStorageRedundancy - Geo-Restore is not allowed for managed instances with LRS/ZRS backup storage redundancy.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 AadOnlyAuthenticationIsEnabled - Azure Active Directory Only Authentication is enabled. Please contact your system administrator.\n\n * 400 ManagementServiceFeatureDisabled - User attempted to use a feature which is disabled.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 ManagedInstanceNotInSubscriptionResourceGroup - Specified managed instance does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 409 ConflictingManagedInstanceOperation - An operation is currently in progress for the managed instance.\n\n * 409 MiDropFailedOnAuthLocks - User tried to drop last Managed Instance in subnet that has Lock applied on resource(s).\n\n * 409 MiCreateFailedNonDelegatedSubnet - User tried to deploy Managed Instance or Managed Instance pool in subnet that is not delegated to Microsoft.Sql/managedInstances.\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 * 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 * 429 ConflictingSubscriptionOperation - An operation is currently in progress for the subscription.\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.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List managed instances by resource group": { + "$ref": "./examples/ManagedInstanceListByResourceGroup.json" + }, + "List managed instances by resource group with $expand=administrators": { + "$ref": "./examples/ManagedInstanceListByResourceGroupWithExpandEqualsAdministrators.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}": { + "get": { + "tags": [ + "ManagedInstances" + ], + "description": "Gets a managed instance.", + "operationId": "ManagedInstances_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "name": "$expand", + "in": "query", + "description": "The child resources to include in the response.", + "required": false, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the specified managed instance.", + "schema": { + "$ref": "#/definitions/ManagedInstance" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 MiGeoRestoreWithWrongBackupStorageRedundancy - Geo-Restore is not allowed for managed instances with LRS/ZRS backup storage redundancy.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 AadOnlyAuthenticationIsEnabled - Azure Active Directory Only Authentication is enabled. Please contact your system administrator.\n\n * 400 ManagementServiceFeatureDisabled - User attempted to use a feature which is disabled.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 ManagedInstanceNotInSubscriptionResourceGroup - Specified managed instance does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 409 ConflictingManagedInstanceOperation - An operation is currently in progress for the managed instance.\n\n * 409 MiDropFailedOnAuthLocks - User tried to drop last Managed Instance in subnet that has Lock applied on resource(s).\n\n * 409 MiCreateFailedNonDelegatedSubnet - User tried to deploy Managed Instance or Managed Instance pool in subnet that is not delegated to Microsoft.Sql/managedInstances.\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 * 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 * 429 ConflictingSubscriptionOperation - An operation is currently in progress for the subscription.\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.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + } + }, + "x-ms-examples": { + "Get managed instance": { + "$ref": "./examples/ManagedInstanceGet.json" + }, + "Get managed instance with $expand=administrators": { + "$ref": "./examples/ManagedInstanceGetWithExpandEqualsAdministrators.json" + } + } + }, + "put": { + "tags": [ + "ManagedInstances" + ], + "description": "Creates or updates a managed instance.", + "operationId": "ManagedInstances_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "description": "The requested managed instance resource state.", + "required": true, + "schema": { + "$ref": "#/definitions/ManagedInstance" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the managed instance.", + "schema": { + "$ref": "#/definitions/ManagedInstance" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 HkCannotSwitchToInactive - The database cannot proceed with pricing-tier update as it has memory-optimized objects. Please drop such objects and try again.\n\n * 400 ManagedInstanceInvalidStorageSizeLessThenCurrentSizeUsed - Invalid storage size: Storage size limit ({0} GB) is less that current storage used ({1} GB). Please specify higher storage size limit.\n\n * 400 InstanceTimezoneUpdateNotSupported - Instance timezone update not supported.\n\n * 400 CreateManagedInstanceWithNonDefaultTimezoneNotSupported - Create Managed Instance with non-default timezone not supported.\n\n * 400 ManagedInstanceIpAddressRangeLimit - Cannot perform creation/scaling of the managed instance as there are not enough available IP addresses in the subnet for performing the operation.\n\n * 400 VnetDelegationNotAllowed - User tried to inject Managed Server to subnet which is delegated.\n\n * 400 SubnetHasResourcesOfDifferentType - User tried to create MI in subnet that has resources of different type.\n\n * 400 UpdateManagedServerWithMaintenanceWindowNotAllowed - Update of Managed Instance with maintenance window settings is not allowed.\n\n * 400 VnetPrepareNIPFailed - User tried to prepare subnet that has a conflict with NetworkIntentPolicy.\n\n * 400 InvalidUsername - Supplied user name contains invalid characters.\n\n * 400 ManagedInstanceDeprecatedHardwareFamily - Changing the hardware generation to deprecated {0} generation is not possible.\n\n * 400 ManagedInstanceBackupStorageTypeNotSupported - Backup storage type parameter is not allowed in the instance update operation.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 InstancePoolNotEnoughCapacity - An instance pool does not have enough capacity\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 ManagedInstanceZoneRedudantFeatureNotSupported - ZoneRedundant feature is not supported for the selected service tier. For more details visit aka.ms/sqlmi-service-tier-characteristics.\n\n * 400 ManagedInstanceZoneRedudantFeatureCantBeEnabled - Enabling zoneRedundant feature is not possible once managed instance is created. For more details visit aka.ms/sqlmi-high-availability.\n\n * 400 ManagedInstanceZoneRedudantFeatureCantBeDisabled - Disabling zoneRedundant feature is not possible once managed instance is created. For more details visit aka.ms/sqlmi-high-availability.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 ManagedInstanceSloUpdateFailed - SLO '{0}' operation cannot succeed as the memory usage of '{1}' exceeds the quota.\n\n * 400 ManagedInstanceLocalStorageUpdateSloDisabled - Update SLO for managed instances with local storage is not supported yet.\n\n * 400 InvalidLoginName - The provided login name is invalid.\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 PasswordTooShort - The provided password is too short\n\n * 400 PasswordTooLong - The provided password is too long.\n\n * 400 PasswordNotComplex - The provided password is not complex enough.\n\n * 400 GatewayInvalidEdition - '{0}' is not a valid database edition in this version of SQL Server.\n\n * 400 InvalidSubnetResourceId - The provided subnet resource ID for the managed instance create or update is invalid.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 InvalidLocation - An invalid location was specified.\n\n * 400 VnetInWrongRegion - Virtual network is in wrong region.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 VnetAddressRangeError - Virtual network address range is invalid.\n\n * 400 VnetConfigIsNotAllowed - Virtual network configuration is not allowed.\n\n * 400 InvalidCollation - Invalid collation.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 ManagedInstanceClassicVnetNotSupported - Managed Instance cannot be joined to a classic virtual network.\n\n * 400 AlterDbDeactivatedNotSupported - Database Operation failed for Server '{0}', Database '{1}' due to unexpected delay. Please try again.\n\n * 400 RegionDoesNotAllowProvisioning - The selected location is not accepting new Windows Azure SQL Database servers. This may change at a later time.\n\n * 400 VnetConfigHasNsg - User tried to inject Managed Server subnet with Network Security Groups.\n\n * 400 VnetConfigHasNoUdr - User tried to inject Managed Server subnet without default User Defined Route Table.\n\n * 400 VnetConfigHasInvalidUdr - User tried to inject Managed Server subnet with invalid User Defined Route Table.\n\n * 400 VnetConfigHasInvalidDns - User tried to inject Managed Server subnet with invalid custom DNS.\n\n * 400 VnetConfigHasServiceEndpoints - User tried to inject Managed Server subnet with service endpoints.\n\n * 400 VnetSubnetIsInUse - User tried to inject Managed Server subnet that is not empty.\n\n * 400 VnetSubnetIsLocked - User tried to inject Managed Server subnet that is in locked scope.\n\n * 400 VnetSubnetIsGateway - User tried to inject Managed Server subnet that is Gateway subnet.\n\n * 400 VnetSubnetIsUnknown - User tried to inject Managed Server subnet that does not exist.\n\n * 400 VnetSubnetConflictWithIntendedPolicy - User tried to inject Managed Server subnet that has a conflict with IntendedPolicy.\n\n * 400 NameAlreadyExists - The provided name already exists.\n\n * 400 ManagedInstanceInvalidEditionForSku - The specified edition {0} is not consistent with the specified SKU {1}.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 ManagedInstanceInvalidLicenseType - The specified license type {0} is not valid.\n\n * 400 ManagedInstanceUpdateSloInProgress - \"The operation could not be completed because a service tier change is in progress for managed instance '{0}.' Please wait for the operation in progress to complete and try again.\"\n\n * 400 VnetResourceNotFound - Resource not found: '{0}'.\n\n * 400 InvalidTimezone - Invalid timezone.\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 InstanceCollationUpdateNotSupported - User cannot change instance collation on Managed Instance.\n\n * 400 CreateManagedInstanceWithNonDefaultCollationNotSupported - User can create a Managed Instance only with collation 'SQL_Latin1_General_CP1_CI_AS'.\n\n * 400 ManagedInstanceOperationInProgress - The operation could not be completed because {0} operation is in progress. Please wait for the operation in progress to complete and try again.\n\n * 400 ManagedInstanceExceedMaxAzureStorage - The operation could not be completed because total allocated storage size for General Purpose instance would exceed {0}. Please reduce the number of database files and retry operation.\n\n * 400 ManagedInstanceHasGeoReplica - The operation could not be completed because instance has configured geo replicated secondary instance.\n\n * 400 InvalidManagedServerDnsZonePartner - The resource URI of the geo-primary managed instance specified in the create request is invalid. Please ensure that the property is of the format /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/managedInstances/{managedInstanceName}\n\n * 400 MiGeoRestoreWithWrongBackupStorageRedundancy - Geo-Restore is not allowed for managed instances with LRS/ZRS backup storage redundancy.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 AadOnlyAuthenticationIsEnabled - Azure Active Directory Only Authentication is enabled. Please contact your system administrator.\n\n * 400 ManagementServiceFeatureDisabled - User attempted to use a feature which is disabled.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 InvalidMinimalTlsVersion - Invalid minimal TLS version.\n\n * 400 InvalidResourceId - Invalid resource identifier.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 InvalidMaintenanceWindowSettings - Invalid maintenance window settings.\n\n * 400 InvalidMaintenanceWindowProperty - Invalid maintenance window property was specified.\n\n * 400 InvalidMaintenanceWindowPropertyNull - Invalid maintenance window with required properties null.\n\n * 400 InvalidMaintenanceWindowTypeWithPropertySpecified - Maintenance window type must not have certain properties specified.\n\n * 400 AadOnlyAuthenticationIsEnabled - Azure Active Directory Only Authentication is enabled. Please contact your system administrator.\n\n * 400 InvalidExternalAdministratorLogin - Invalid or missing external administrator login name.\n\n * 400 InvalidExternalAdministratorSid - Invalid or missing external administrator object id.\n\n * 400 InvalidExternalAdministratorTenantId - Invalid or missing external administrator tenant id.\n\n * 400 ExternalAdministratorPrincipalType - Invalid or missing external administrator principal type. Please select from User, Application or Group.\n\n * 400 MissingExternalAdministratorWithAadOnlyAuth - In order to use Azure AD Only Authentication, please provide details of an external administrator.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 ManagedInstanceNotInSubscriptionResourceGroup - Specified managed instance does not exist in the specified resource group and subscription.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ResourceDoesNotExist - Resource with the name '{0}' does not exist. To continue, specify a valid resource name.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 405 InvalidVcoreValue - vCore value {0} is not valid. Please specify a valid vCore value.\n\n * 405 InvalidHardwareGenerationValue - HardwareGeneration {0} is not valid. Please specify a valid HardwareGeneration value.\n\n * 405 InvalidStorageSizeValue - \"Invalid storage size: {0} GB. Storage size must be specified between {1} and {2} gigabytes, in increments of {3} GB.\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 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ServerAlreadyExists - Duplicate server name.\n\n * 409 ServerOverridePreconditionFailed - Failed to apply server override on category '{0}', because physical db or instance '{1}' in server '{2}' is currently not in 'Ready' or 'Deactivated' state.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 ManagedInstanceIsBusy - The server '{0}' is currently busy. Please wait a few minutes before trying again.\n\n * 409 ServerQuotaExceeded - Server cannot be added to a subscription because it will exceed quota.\n\n * 409 ConflictingManagedInstanceOperation - An operation is currently in progress for the managed instance.\n\n * 409 MiDropFailedOnAuthLocks - User tried to drop last Managed Instance in subnet that has Lock applied on resource(s).\n\n * 409 MiCreateFailedNonDelegatedSubnet - User tried to deploy Managed Instance or Managed Instance pool in subnet that is not delegated to Microsoft.Sql/managedInstances.\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 * 429 ConflictingSubscriptionOperation - An operation is currently in progress for the subscription.\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 * 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 * 429 ConflictingSubscriptionOperation - An operation is currently in progress for the subscription.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 500 GatewayInternalServerError - The server encountered an unexpected exception.\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + }, + "202": { + "description": "Accepted" + }, + "201": { + "description": "Successfully created the managed instance.", + "schema": { + "$ref": "#/definitions/ManagedInstance" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create managed instance with minimal properties": { + "$ref": "./examples/ManagedInstanceCreateMin.json" + }, + "Create managed instance with all properties": { + "$ref": "./examples/ManagedInstanceCreateMax.json" + } + } + }, + "delete": { + "tags": [ + "ManagedInstances" + ], + "description": "Deletes a managed instance.", + "operationId": "ManagedInstances_Delete", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the managed instance." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 MiGeoRestoreWithWrongBackupStorageRedundancy - Geo-Restore is not allowed for managed instances with LRS/ZRS backup storage redundancy.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 AadOnlyAuthenticationIsEnabled - Azure Active Directory Only Authentication is enabled. Please contact your system administrator.\n\n * 400 ManagementServiceFeatureDisabled - User attempted to use a feature which is disabled.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 ManagedInstanceNotInSubscriptionResourceGroup - Specified managed instance does not exist in the specified resource group and subscription.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 409 ConflictingManagedInstanceOperation - An operation is currently in progress for the managed instance.\n\n * 409 MiDropFailedOnAuthLocks - User tried to drop last Managed Instance in subnet that has Lock applied on resource(s).\n\n * 409 MiCreateFailedNonDelegatedSubnet - User tried to deploy Managed Instance or Managed Instance pool in subnet that is not delegated to Microsoft.Sql/managedInstances.\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 * 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 * 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 * 429 ConflictingSubscriptionOperation - An operation is currently in progress for the subscription.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\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.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + }, + "202": { + "description": "Successfully initiated deletion of the managed instance." + }, + "204": { + "description": "The specified managed instance does not exist." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete managed instance": { + "$ref": "./examples/ManagedInstanceDelete.json" + } + } + }, + "patch": { + "tags": [ + "ManagedInstances" + ], + "description": "Updates a managed instance.", + "operationId": "ManagedInstances_Update", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "description": "The requested managed instance resource state.", + "required": true, + "schema": { + "$ref": "#/definitions/ManagedInstanceUpdate" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the managed instance.", + "schema": { + "$ref": "#/definitions/ManagedInstance" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 HkCannotSwitchToInactive - The database cannot proceed with pricing-tier update as it has memory-optimized objects. Please drop such objects and try again.\n\n * 400 ManagedInstanceInvalidStorageSizeLessThenCurrentSizeUsed - Invalid storage size: Storage size limit ({0} GB) is less that current storage used ({1} GB). Please specify higher storage size limit.\n\n * 400 InstanceTimezoneUpdateNotSupported - Instance timezone update not supported.\n\n * 400 CreateManagedInstanceWithNonDefaultTimezoneNotSupported - Create Managed Instance with non-default timezone not supported.\n\n * 400 ManagedInstanceIpAddressRangeLimit - Cannot perform creation/scaling of the managed instance as there are not enough available IP addresses in the subnet for performing the operation.\n\n * 400 VnetDelegationNotAllowed - User tried to inject Managed Server to subnet which is delegated.\n\n * 400 SubnetHasResourcesOfDifferentType - User tried to create MI in subnet that has resources of different type.\n\n * 400 UpdateManagedServerWithMaintenanceWindowNotAllowed - Update of Managed Instance with maintenance window settings is not allowed.\n\n * 400 VnetPrepareNIPFailed - User tried to prepare subnet that has a conflict with NetworkIntentPolicy.\n\n * 400 InvalidUsername - Supplied user name contains invalid characters.\n\n * 400 ManagedInstanceDeprecatedHardwareFamily - Changing the hardware generation to deprecated {0} generation is not possible.\n\n * 400 ManagedInstanceBackupStorageTypeNotSupported - Backup storage type parameter is not allowed in the instance update operation.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 InstancePoolNotEnoughCapacity - An instance pool does not have enough capacity\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 ManagedInstanceZoneRedudantFeatureNotSupported - ZoneRedundant feature is not supported for the selected service tier. For more details visit aka.ms/sqlmi-service-tier-characteristics.\n\n * 400 ManagedInstanceZoneRedudantFeatureCantBeEnabled - Enabling zoneRedundant feature is not possible once managed instance is created. For more details visit aka.ms/sqlmi-high-availability.\n\n * 400 ManagedInstanceZoneRedudantFeatureCantBeDisabled - Disabling zoneRedundant feature is not possible once managed instance is created. For more details visit aka.ms/sqlmi-high-availability.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 ManagedInstanceSloUpdateFailed - SLO '{0}' operation cannot succeed as the memory usage of '{1}' exceeds the quota.\n\n * 400 ManagedInstanceLocalStorageUpdateSloDisabled - Update SLO for managed instances with local storage is not supported yet.\n\n * 400 InvalidLoginName - The provided login name is invalid.\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 PasswordTooShort - The provided password is too short\n\n * 400 PasswordTooLong - The provided password is too long.\n\n * 400 PasswordNotComplex - The provided password is not complex enough.\n\n * 400 GatewayInvalidEdition - '{0}' is not a valid database edition in this version of SQL Server.\n\n * 400 InvalidSubnetResourceId - The provided subnet resource ID for the managed instance create or update is invalid.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 InvalidLocation - An invalid location was specified.\n\n * 400 VnetInWrongRegion - Virtual network is in wrong region.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 VnetAddressRangeError - Virtual network address range is invalid.\n\n * 400 VnetConfigIsNotAllowed - Virtual network configuration is not allowed.\n\n * 400 InvalidCollation - Invalid collation.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 ManagedInstanceClassicVnetNotSupported - Managed Instance cannot be joined to a classic virtual network.\n\n * 400 AlterDbDeactivatedNotSupported - Database Operation failed for Server '{0}', Database '{1}' due to unexpected delay. Please try again.\n\n * 400 RegionDoesNotAllowProvisioning - The selected location is not accepting new Windows Azure SQL Database servers. This may change at a later time.\n\n * 400 VnetConfigHasNsg - User tried to inject Managed Server subnet with Network Security Groups.\n\n * 400 VnetConfigHasNoUdr - User tried to inject Managed Server subnet without default User Defined Route Table.\n\n * 400 VnetConfigHasInvalidUdr - User tried to inject Managed Server subnet with invalid User Defined Route Table.\n\n * 400 VnetConfigHasInvalidDns - User tried to inject Managed Server subnet with invalid custom DNS.\n\n * 400 VnetConfigHasServiceEndpoints - User tried to inject Managed Server subnet with service endpoints.\n\n * 400 VnetSubnetIsInUse - User tried to inject Managed Server subnet that is not empty.\n\n * 400 VnetSubnetIsLocked - User tried to inject Managed Server subnet that is in locked scope.\n\n * 400 VnetSubnetIsGateway - User tried to inject Managed Server subnet that is Gateway subnet.\n\n * 400 VnetSubnetIsUnknown - User tried to inject Managed Server subnet that does not exist.\n\n * 400 VnetSubnetConflictWithIntendedPolicy - User tried to inject Managed Server subnet that has a conflict with IntendedPolicy.\n\n * 400 NameAlreadyExists - The provided name already exists.\n\n * 400 ManagedInstanceInvalidEditionForSku - The specified edition {0} is not consistent with the specified SKU {1}.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 ManagedInstanceInvalidLicenseType - The specified license type {0} is not valid.\n\n * 400 ManagedInstanceUpdateSloInProgress - \"The operation could not be completed because a service tier change is in progress for managed instance '{0}.' Please wait for the operation in progress to complete and try again.\"\n\n * 400 VnetResourceNotFound - Resource not found: '{0}'.\n\n * 400 InvalidTimezone - Invalid timezone.\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 InstanceCollationUpdateNotSupported - User cannot change instance collation on Managed Instance.\n\n * 400 CreateManagedInstanceWithNonDefaultCollationNotSupported - User can create a Managed Instance only with collation 'SQL_Latin1_General_CP1_CI_AS'.\n\n * 400 ManagedInstanceOperationInProgress - The operation could not be completed because {0} operation is in progress. Please wait for the operation in progress to complete and try again.\n\n * 400 ManagedInstanceExceedMaxAzureStorage - The operation could not be completed because total allocated storage size for General Purpose instance would exceed {0}. Please reduce the number of database files and retry operation.\n\n * 400 ManagedInstanceHasGeoReplica - The operation could not be completed because instance has configured geo replicated secondary instance.\n\n * 400 MiGeoRestoreWithWrongBackupStorageRedundancy - Geo-Restore is not allowed for managed instances with LRS/ZRS backup storage redundancy.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 AadOnlyAuthenticationIsEnabled - Azure Active Directory Only Authentication is enabled. Please contact your system administrator.\n\n * 400 ManagementServiceFeatureDisabled - User attempted to use a feature which is disabled.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 InvalidMinimalTlsVersion - Invalid minimal TLS version.\n\n * 400 InvalidResourceId - Invalid resource identifier.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 AadOnlyAuthenticationIsEnabled - Azure Active Directory Only Authentication is enabled. Please contact your system administrator.\n\n * 400 InvalidExternalAdministratorLogin - Invalid or missing external administrator login name.\n\n * 400 InvalidExternalAdministratorSid - Invalid or missing external administrator object id.\n\n * 400 InvalidExternalAdministratorTenantId - Invalid or missing external administrator tenant id.\n\n * 400 ExternalAdministratorPrincipalType - Invalid or missing external administrator principal type. Please select from User, Application or Group.\n\n * 400 MissingExternalAdministratorWithAadOnlyAuth - In order to use Azure AD Only Authentication, please provide details of an external administrator.\n\n * 400 InvalidMaintenanceWindowSettings - Invalid maintenance window settings.\n\n * 400 InvalidMaintenanceWindowProperty - Invalid maintenance window property was specified.\n\n * 400 InvalidMaintenanceWindowPropertyNull - Invalid maintenance window with required properties null.\n\n * 400 InvalidMaintenanceWindowTypeWithPropertySpecified - Maintenance window type must not have certain properties specified.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 ManagedInstanceNotInSubscriptionResourceGroup - Specified managed instance does not exist in the specified resource group and subscription.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ResourceDoesNotExist - Resource with the name '{0}' does not exist. To continue, specify a valid resource name.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 405 InvalidVcoreValue - vCore value {0} is not valid. Please specify a valid vCore value.\n\n * 405 InvalidHardwareGenerationValue - HardwareGeneration {0} is not valid. Please specify a valid HardwareGeneration value.\n\n * 405 InvalidStorageSizeValue - \"Invalid storage size: {0} GB. Storage size must be specified between {1} and {2} gigabytes, in increments of {3} GB.\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 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ServerAlreadyExists - Duplicate server name.\n\n * 409 ServerOverridePreconditionFailed - Failed to apply server override on category '{0}', because physical db or instance '{1}' in server '{2}' is currently not in 'Ready' or 'Deactivated' state.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 ManagedInstanceIsBusy - The server '{0}' is currently busy. Please wait a few minutes before trying again.\n\n * 409 ServerQuotaExceeded - Server cannot be added to a subscription because it will exceed quota.\n\n * 409 ConflictingManagedInstanceOperation - An operation is currently in progress for the managed instance.\n\n * 409 MiDropFailedOnAuthLocks - User tried to drop last Managed Instance in subnet that has Lock applied on resource(s).\n\n * 409 MiCreateFailedNonDelegatedSubnet - User tried to deploy Managed Instance or Managed Instance pool in subnet that is not delegated to Microsoft.Sql/managedInstances.\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 * 429 ConflictingSubscriptionOperation - An operation is currently in progress for the subscription.\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 * 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 * 429 ConflictingSubscriptionOperation - An operation is currently in progress for the subscription.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 500 GatewayInternalServerError - The server encountered an unexpected exception.\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update managed instance with minimal properties": { + "$ref": "./examples/ManagedInstanceUpdateMin.json" + }, + "Update managed instance with all properties": { + "$ref": "./examples/ManagedInstanceUpdateMax.json" + }, + "Remove maintenance policy from managed instance (select default maintenance policy)": { + "$ref": "./examples/ManagedInstanceRemoveMaintenanceConfiguration.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/topqueries": { + "get": { + "tags": [ + "ManagedInstances" + ], + "description": "Get top resource consuming queries of a managed instance.", + "operationId": "ManagedInstances_ListByManagedInstance", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "name": "numberOfQueries", + "in": "query", + "description": "How many 'top queries' to return. Default is 5.", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "name": "databases", + "in": "query", + "description": "Comma separated list of databases to be included into search. All DB's are included if this parameter is not specified.", + "required": false, + "type": "string" + }, + { + "name": "startTime", + "in": "query", + "description": "Start time for observed period.", + "required": false, + "type": "string" + }, + { + "name": "endTime", + "in": "query", + "description": "End time for observed period.", + "required": false, + "type": "string" + }, + { + "name": "interval", + "in": "query", + "description": "The time step to be used to summarize the metric values. Default value is PT1H", + "required": false, + "type": "string", + "enum": [ + "PT1H", + "P1D" + ], + "x-ms-enum": { + "name": "QueryTimeGrainType", + "modelAsString": true + } + }, + { + "name": "aggregationFunction", + "in": "query", + "description": "Aggregation function to be used, default value is 'sum'", + "required": false, + "type": "string", + "enum": [ + "avg", + "min", + "max", + "stdev", + "sum" + ], + "x-ms-enum": { + "name": "AggregationFunctionType", + "modelAsString": true + } + }, + { + "name": "observationMetric", + "in": "query", + "description": "Metric to be used for ranking top queries. Default is 'cpu'", + "required": false, + "type": "string", + "enum": [ + "cpu", + "io", + "logIo", + "duration", + "dtu" + ], + "x-ms-enum": { + "name": "MetricType", + "modelAsString": true + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved top queries for managed instance.", + "schema": { + "$ref": "#/definitions/TopQueriesListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Obtain list of instance's top resource consuming queries. Minimal request and response.": { + "$ref": "./examples/ManagedInstanceTopQueriesListMin.json" + }, + "Obtain list of instance's top resource consuming queries.": { + "$ref": "./examples/ManagedInstanceTopQueriesList.json" + }, + "Obtain list of instance's top resource consuming queries. Full-blown request and response.": { + "$ref": "./examples/ManagedInstanceTopQueriesListMax.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/failover": { + "post": { + "tags": [ + "ManagedInstances" + ], + "description": "Failovers a managed instance.", + "operationId": "ManagedInstances_Failover", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance to failover.", + "required": true, + "type": "string" + }, + { + "name": "replicaType", + "in": "query", + "description": "The type of replica to be failed over.", + "required": false, + "type": "string", + "enum": [ + "Primary", + "ReadableSecondary" + ], + "x-ms-enum": { + "name": "ReplicaType", + "modelAsString": true + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully completed managed instance failover." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 ManagedInstanceFailoverThrottled - There was a recent failover on the managed instance.\n\n * 400 ManagedInstanceFailoverNotSupportedOnSKU - This type of customer initiated failover is not supported on the given SKU.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 409 ManagedInstanceFailoverFullBackupMissing - Automated backup needs to complete the first full backup for a new database.\n\n * 409 ManagedInstanceNotInStateToFailover - The managed instance is currently in a state such that failover cannot be issued." + }, + "202": { + "description": "Managed instance failover is in progress." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Failover a managed instance.": { + "$ref": "./examples/FailoverManagedInstance.json" + } + } + } + } + }, + "definitions": { + "ManagedInstanceListResult": { + "description": "A list of managed instances.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedInstance" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "ResourceIdentityWithUserAssignedIdentities": { + "description": "Azure Active Directory identity configuration for a resource.", + "type": "object", + "properties": { + "userAssignedIdentities": { + "description": "The resource ids of the user assigned identities to use", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/UserIdentity" + } + }, + "principalId": { + "format": "uuid", + "description": "The Azure Active Directory principal id.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The identity type. Set this to 'SystemAssigned' in order to automatically create and assign an Azure Active Directory principal for the resource.", + "enum": [ + "None", + "SystemAssigned", + "UserAssigned" + ], + "type": "string", + "x-ms-enum": { + "name": "IdentityType", + "modelAsString": true + } + }, + "tenantId": { + "format": "uuid", + "description": "The Azure Active Directory tenant id.", + "type": "string", + "readOnly": true + } + } + }, + "ManagedInstanceProperties": { + "description": "The properties of a managed instance.", + "type": "object", + "properties": { + "provisioningState": { + "enum": [ + "Creating", + "Deleting", + "Updating", + "Unknown", + "Succeeded", + "Failed", + "Accepted", + "Created", + "Deleted", + "Unrecognized", + "Running", + "Canceled", + "NotSpecified", + "Registering", + "TimedOut" + ], + "type": "string", + "readOnly": true + }, + "managedInstanceCreateMode": { + "description": "Specifies the mode of database creation.\r\n\r\nDefault: Regular instance creation.\r\n\r\nRestore: Creates an instance by restoring a set of backups to specific point in time. RestorePointInTime and SourceManagedInstanceId must be specified.", + "enum": [ + "Default", + "PointInTimeRestore" + ], + "type": "string", + "x-ms-enum": { + "name": "ManagedServerCreateMode", + "modelAsString": true + }, + "x-ms-mutability": [ + "create" + ] + }, + "fullyQualifiedDomainName": { + "description": "The fully qualified domain name of the managed instance.", + "type": "string", + "readOnly": true + }, + "administratorLogin": { + "description": "Administrator username for the managed instance. Can only be specified when the managed instance is being created (and is required for creation).", + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "administratorLoginPassword": { + "description": "The administrator login password (required for managed instance creation).", + "type": "string", + "x-ms-mutability": [ + "create", + "update" + ] + }, + "subnetId": { + "description": "Subnet resource ID for the managed instance.", + "type": "string" + }, + "state": { + "description": "The state of the managed instance.", + "type": "string", + "readOnly": true + }, + "licenseType": { + "description": "The license type. Possible values are 'LicenseIncluded' (regular price inclusive of a new SQL license) and 'BasePrice' (discounted AHB price for bringing your own SQL licenses).", + "enum": [ + "LicenseIncluded", + "BasePrice" + ], + "type": "string", + "x-ms-enum": { + "name": "ManagedInstanceLicenseType", + "modelAsString": true + } + }, + "vCores": { + "format": "int32", + "description": "The number of vCores. Allowed values: 8, 16, 24, 32, 40, 64, 80.", + "type": "integer" + }, + "storageSizeInGB": { + "format": "int32", + "description": "Storage size in GB. Minimum value: 32. Maximum value: 8192. Increments of 32 GB allowed only.", + "type": "integer" + }, + "collation": { + "description": "Collation of the managed instance.", + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "dnsZone": { + "description": "The Dns Zone that the managed instance is in.", + "type": "string", + "readOnly": true + }, + "dnsZonePartner": { + "description": "The resource id of another managed instance whose DNS zone this managed instance will share after creation.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "publicDataEndpointEnabled": { + "description": "Whether or not the public data endpoint is enabled.", + "type": "boolean" + }, + "sourceManagedInstanceId": { + "description": "The resource identifier of the source managed instance associated with create operation of this instance.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "restorePointInTime": { + "format": "date-time", + "description": "Specifies the point in time (ISO8601 format) of the source database that will be restored to create the new database.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "proxyOverride": { + "description": "Connection type used for connecting to the instance.", + "enum": [ + "Proxy", + "Redirect", + "Default" + ], + "type": "string", + "x-ms-enum": { + "name": "ManagedInstanceProxyOverride", + "modelAsString": true + } + }, + "timezoneId": { + "description": "Id of the timezone. Allowed values are timezones supported by Windows.\r\nWindows keeps details on supported timezones, including the id, in registry under\r\nKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\Time Zones.\r\nYou can get those registry values via SQL Server by querying SELECT name AS timezone_id FROM sys.time_zone_info.\r\nList of Ids can also be obtained by executing [System.TimeZoneInfo]::GetSystemTimeZones() in PowerShell.\r\nAn example of valid timezone id is \"Pacific Standard Time\" or \"W. Europe Standard Time\".", + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "instancePoolId": { + "description": "The Id of the instance pool this managed server belongs to.", + "type": "string" + }, + "maintenanceConfigurationId": { + "description": "Specifies maintenance configuration id to apply to this managed instance.", + "type": "string" + }, + "privateEndpointConnections": { + "description": "List of private endpoint connections on a managed instance.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedInstancePecProperty" + }, + "readOnly": true + }, + "minimalTlsVersion": { + "description": "Minimal TLS version. Allowed values: 'None', '1.0', '1.1', '1.2'", + "type": "string" + }, + "storageAccountType": { + "description": "The storage account type used to store backups for this instance. The options are LRS (LocallyRedundantStorage), ZRS (ZoneRedundantStorage) and GRS (GeoRedundantStorage)", + "enum": [ + "GRS", + "LRS", + "ZRS" + ], + "type": "string", + "x-ms-enum": { + "name": "StorageAccountType", + "modelAsString": true + }, + "x-ms-mutability": [ + "read", + "create" + ] + }, + "zoneRedundant": { + "description": "Whether or not the multi-az is enabled.", + "type": "boolean" + }, + "primaryUserAssignedIdentityId": { + "description": "The resource id of a user assigned identity to be used by default.", + "type": "string" + }, + "keyId": { + "description": "A CMK URI of the key to use for encryption.", + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "administrators": { + "$ref": "#/definitions/ManagedInstanceExternalAdministrator", + "description": "The Azure Active Directory administrator of the server.", + "x-ms-mutability": [ + "read", + "create" + ] + } + } + }, + "UserIdentity": { + "description": "Azure Active Directory identity configuration for a resource.", + "type": "object", + "properties": { + "principalId": { + "format": "uuid", + "description": "The Azure Active Directory principal id.", + "type": "string", + "readOnly": true + }, + "clientId": { + "format": "uuid", + "description": "The Azure Active Directory client id.", + "type": "string", + "readOnly": true + } + } + }, + "ManagedInstancePecProperty": { + "description": "A private endpoint connection under a managed instance", + "type": "object", + "properties": { + "id": { + "description": "Resource ID.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/ManagedInstancePrivateEndpointConnectionProperties", + "description": "Private endpoint connection properties", + "readOnly": true + } + } + }, + "ManagedInstanceExternalAdministrator": { + "description": "Properties of a active directory administrator.", + "type": "object", + "properties": { + "administratorType": { + "description": "Type of the sever administrator.", + "enum": [ + "ActiveDirectory" + ], + "type": "string", + "x-ms-enum": { + "name": "AdministratorType", + "modelAsString": true + } + }, + "principalType": { + "description": "Principal Type of the sever administrator.", + "enum": [ + "User", + "Group", + "Application" + ], + "type": "string", + "x-ms-enum": { + "name": "PrincipalType", + "modelAsString": true + } + }, + "login": { + "description": "Login name of the server administrator.", + "type": "string" + }, + "sid": { + "format": "uuid", + "description": "SID (object ID) of the server administrator.", + "type": "string" + }, + "tenantId": { + "format": "uuid", + "description": "Tenant ID of the administrator.", + "type": "string" + }, + "azureADOnlyAuthentication": { + "description": "Azure Active Directory only Authentication enabled.", + "type": "boolean" + } + } + }, + "ManagedInstancePrivateEndpointConnectionProperties": { + "description": "Properties of a private endpoint connection.", + "type": "object", + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/ManagedInstancePrivateEndpointProperty", + "description": "Private endpoint which the connection belongs to." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/ManagedInstancePrivateLinkServiceConnectionStateProperty", + "description": "Connection State of the Private Endpoint Connection." + }, + "provisioningState": { + "description": "State of the Private Endpoint Connection.", + "type": "string", + "readOnly": true + } + } + }, + "ManagedInstancePrivateEndpointProperty": { + "type": "object", + "properties": { + "id": { + "description": "Resource id of the private endpoint.", + "type": "string" + } + } + }, + "ManagedInstancePrivateLinkServiceConnectionStateProperty": { + "required": [ + "status", + "description" + ], + "type": "object", + "properties": { + "status": { + "description": "The private link service connection status.", + "type": "string" + }, + "description": { + "description": "The private link service connection description.", + "type": "string" + }, + "actionsRequired": { + "description": "The private link service connection description.", + "type": "string", + "readOnly": true + } + } + }, + "ManagedInstance": { + "description": "An Azure SQL managed instance.", + "required": [ + "location" + ], + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/TrackedResource" + } + ], + "properties": { + "identity": { + "$ref": "../../../common/v2/types.json#/definitions/ResourceIdentity", + "description": "The Azure Active Directory identity of the managed instance.", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "sku": { + "$ref": "../../../common/v1/types.json#/definitions/Sku", + "description": "Managed instance SKU. Allowed values for sku.name: GP_Gen4, GP_Gen5, BC_Gen4, BC_Gen5" + }, + "properties": { + "$ref": "#/definitions/ManagedInstanceProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "ManagedInstanceUpdate": { + "description": "An update request for an Azure SQL Database managed instance.", + "type": "object", + "properties": { + "sku": { + "$ref": "../../../common/v1/types.json#/definitions/Sku", + "description": "Managed instance sku" + }, + "identity": { + "$ref": "../../../common/v2/types.json#/definitions/ResourceIdentity", + "description": "Managed instance identity" + }, + "properties": { + "$ref": "#/definitions/ManagedInstanceProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + }, + "tags": { + "description": "Resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "TopQueriesListResult": { + "description": "A list of top resource consuming queries on managed instance", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/TopQueries" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "TopQueries": { + "type": "object", + "properties": { + "numberOfQueries": { + "format": "int32", + "description": "Requested number of top queries.", + "type": "integer", + "readOnly": true + }, + "aggregationFunction": { + "description": "Aggregation function used to calculate query metrics.", + "type": "string", + "readOnly": true + }, + "observationMetric": { + "description": "Metric used to rank queries.", + "type": "string", + "readOnly": true + }, + "intervalType": { + "description": "Interval type (length).", + "enum": [ + "PT1H", + "P1D" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "QueryTimeGrainType", + "modelAsString": true + } + }, + "startTime": { + "description": "The start time for the metric (ISO-8601 format).", + "type": "string", + "readOnly": true + }, + "endTime": { + "description": "The end time for the metric (ISO-8601 format).", + "type": "string", + "readOnly": true + }, + "queries": { + "description": "List of top resource consuming queries with appropriate metric data", + "type": "array", + "items": { + "$ref": "#/definitions/QueryStatisticsProperties" + } + } + } + }, + "QueryStatisticsProperties": { + "description": "Properties of a query execution statistics.", + "type": "object", + "properties": { + "databaseName": { + "description": "Database name of the database in which this query was executed.", + "type": "string", + "readOnly": true + }, + "queryId": { + "description": "Unique query id (unique within one database).", + "type": "string", + "readOnly": true + }, + "startTime": { + "description": "The start time for the metric (ISO-8601 format).", + "type": "string", + "readOnly": true + }, + "endTime": { + "description": "The end time for the metric (ISO-8601 format).", + "type": "string", + "readOnly": true + }, + "intervals": { + "description": "List of intervals with appropriate metric data", + "type": "array", + "items": { + "$ref": "#/definitions/QueryMetricInterval" + } + } + } + }, + "QueryMetricInterval": { + "description": "Properties of a query metrics interval.", + "type": "object", + "properties": { + "intervalStartTime": { + "description": "The start time for the metric interval (ISO-8601 format).", + "type": "string", + "readOnly": true + }, + "intervalType": { + "description": "Interval type (length).", + "enum": [ + "PT1H", + "P1D" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "QueryTimeGrainType", + "modelAsString": true + } + }, + "executionCount": { + "format": "int64", + "description": "Execution count of a query in this interval.", + "type": "integer", + "readOnly": true + }, + "metrics": { + "description": "List of metric objects for this interval", + "type": "array", + "items": { + "$ref": "#/definitions/QueryMetricProperties" + } + } + } + }, + "QueryMetricProperties": { + "description": "Properties of a topquery metric in one interval.", + "type": "object", + "properties": { + "name": { + "description": "The name information for the metric.", + "type": "string", + "readOnly": true + }, + "displayName": { + "description": "The UI appropriate name for the metric.", + "type": "string", + "readOnly": true + }, + "unit": { + "description": "The unit of the metric.", + "enum": [ + "percentage", + "KB", + "microseconds", + "count" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "QueryMetricUnitType", + "modelAsString": true + } + }, + "value": { + "format": "double", + "description": "The value of the metric.", + "type": "number", + "readOnly": true + }, + "min": { + "format": "double", + "description": "Metric value when min() aggregate function is used over the interval.", + "type": "number", + "readOnly": true + }, + "max": { + "format": "double", + "description": "Metric value when max() aggregate function is used over the interval.", + "type": "number", + "readOnly": true + }, + "avg": { + "format": "double", + "description": "Metric value when avg() aggregate function is used over the interval.", + "type": "number", + "readOnly": true + }, + "sum": { + "format": "double", + "description": "Metric value when sum() aggregate function is used over the interval.", + "type": "number", + "readOnly": true + }, + "stdev": { + "format": "double", + "description": "Metric value when stdev aggregate function is used over the interval.", + "type": "number", + "readOnly": true + } + } + } + }, + "parameters": { + "ManagedInstanceNameParameter": { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedRestorableDroppedDatabaseBackupShortTermRetentionPolicies.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedRestorableDroppedDatabaseBackupShortTermRetentionPolicies.json new file mode 100644 index 000000000000..2287b2e12f0b --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedRestorableDroppedDatabaseBackupShortTermRetentionPolicies.json @@ -0,0 +1,336 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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/managedInstances/{managedInstanceName}/restorableDroppedDatabases/{restorableDroppedDatabaseId}/backupShortTermRetentionPolicies/{policyName}": { + "get": { + "tags": [ + "ManagedRestorableDroppedDatabaseBackupShortTermRetentionPolicies" + ], + "description": "Gets a dropped database's short term retention policy.", + "operationId": "ManagedRestorableDroppedDatabaseBackupShortTermRetentionPolicies_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "name": "restorableDroppedDatabaseId", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "policyName", + "in": "path", + "description": "The policy name.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "ManagedShortTermRetentionPolicyName", + "modelAsString": true + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the policies.", + "schema": { + "$ref": "#/definitions/ManagedBackupShortTermRetentionPolicy" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidRestorableDroppedDatabaseDeletionDate - The restorable dropped database deletion date given is invalid\n\n * 400 InvalidRestorableDroppedDatabaseId - Invalid restorable dropped database identifier\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-examples": { + "Get the short term retention policy for the database.": { + "$ref": "./examples/GetManagedShortTermRetentionPolicyRestorableDropped.json" + } + } + }, + "put": { + "tags": [ + "ManagedRestorableDroppedDatabaseBackupShortTermRetentionPolicies" + ], + "description": "Sets a database's short term retention policy.", + "operationId": "ManagedRestorableDroppedDatabaseBackupShortTermRetentionPolicies_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "name": "restorableDroppedDatabaseId", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "policyName", + "in": "path", + "description": "The policy name. Should always be \"default\".", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "ManagedShortTermRetentionPolicyName", + "modelAsString": true + } + }, + { + "name": "parameters", + "in": "body", + "description": "The short term retention policy info.", + "required": true, + "schema": { + "$ref": "#/definitions/ManagedBackupShortTermRetentionPolicy" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the policy.", + "schema": { + "$ref": "#/definitions/ManagedBackupShortTermRetentionPolicy" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidRestorableDroppedDatabaseDeletionDate - The restorable dropped database deletion date given is invalid\n\n * 400 InvalidRestorableDroppedDatabaseId - Invalid restorable dropped database identifier\n\n * 400 InvalidBackupRetentionPeriod - The retention days of {0} is not a valid configuration. Valid backup retention in days must be between {1} and {2}\n\n * 400 InvalidBackupRetentionDays - The retention days of {0} is not a valid configuration. Valid backup retention must be in 7-day increments (7, 14, 21, etc.)\n\n * 400 InvalidRestorableDroppedDatabaseDeletionDate - The restorable dropped database deletion date given is invalid\n\n * 400 InvalidRestorableDroppedDatabaseId - Invalid restorable dropped database identifier\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 CannotFindObject - Cannot find the object because it does not exist or you do not have permissions\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update the short term retention policy for the restorable dropped database.": { + "$ref": "./examples/UpdateManagedShortTermRetentionPolicyRestorableDropped.json" + } + } + }, + "patch": { + "tags": [ + "ManagedRestorableDroppedDatabaseBackupShortTermRetentionPolicies" + ], + "description": "Sets a database's short term retention policy.", + "operationId": "ManagedRestorableDroppedDatabaseBackupShortTermRetentionPolicies_Update", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "name": "restorableDroppedDatabaseId", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "policyName", + "in": "path", + "description": "The policy name. Should always be \"default\".", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "ManagedShortTermRetentionPolicyName", + "modelAsString": true + } + }, + { + "name": "parameters", + "in": "body", + "description": "The short term retention policy info.", + "required": true, + "schema": { + "$ref": "#/definitions/ManagedBackupShortTermRetentionPolicy" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the policy.", + "schema": { + "$ref": "#/definitions/ManagedBackupShortTermRetentionPolicy" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidRestorableDroppedDatabaseDeletionDate - The restorable dropped database deletion date given is invalid\n\n * 400 InvalidRestorableDroppedDatabaseId - Invalid restorable dropped database identifier\n\n * 400 InvalidBackupRetentionPeriod - The retention days of {0} is not a valid configuration. Valid backup retention in days must be between {1} and {2}\n\n * 400 InvalidBackupRetentionDays - The retention days of {0} is not a valid configuration. Valid backup retention must be in 7-day increments (7, 14, 21, etc.)\n\n * 400 InvalidRestorableDroppedDatabaseDeletionDate - The restorable dropped database deletion date given is invalid\n\n * 400 InvalidRestorableDroppedDatabaseId - Invalid restorable dropped database identifier\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 CannotFindObject - Cannot find the object because it does not exist or you do not have permissions\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update the short term retention policy for the restorable dropped database.": { + "$ref": "./examples/UpdateManagedShortTermRetentionPolicyRestorableDropped.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/restorableDroppedDatabases/{restorableDroppedDatabaseId}/backupShortTermRetentionPolicies": { + "get": { + "tags": [ + "ManagedRestorableDroppedDatabaseBackupShortTermRetentionPolicies" + ], + "description": "Gets a dropped database's short term retention policy list.", + "operationId": "ManagedRestorableDroppedDatabaseBackupShortTermRetentionPolicies_ListByRestorableDroppedDatabase", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "name": "restorableDroppedDatabaseId", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the policies.", + "schema": { + "$ref": "#/definitions/ManagedBackupShortTermRetentionPolicyListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidRestorableDroppedDatabaseDeletionDate - The restorable dropped database deletion date given is invalid\n\n * 400 InvalidRestorableDroppedDatabaseId - Invalid restorable dropped database identifier\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get the short term retention policy list for the database.": { + "$ref": "./examples/GetListManagedShortTermRetentionPolicyRestorableDropped.json" + } + } + } + } + }, + "definitions": { + "ManagedBackupShortTermRetentionPolicyProperties": { + "description": "Properties of a short term retention policy", + "type": "object", + "properties": { + "retentionDays": { + "format": "int32", + "description": "The backup retention period in days. This is how many days Point-in-Time Restore will be supported.", + "type": "integer" + } + } + }, + "ManagedBackupShortTermRetentionPolicy": { + "description": "A short term retention policy.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ManagedBackupShortTermRetentionPolicyProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "ManagedBackupShortTermRetentionPolicyListResult": { + "description": "A list of short term retention policies.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedBackupShortTermRetentionPolicy" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "ManagedInstanceNameParameter": { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedServerSecurityAlertPolicies.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedServerSecurityAlertPolicies.json new file mode 100644 index 000000000000..83a6fddccfec --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ManagedServerSecurityAlertPolicies.json @@ -0,0 +1,303 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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/managedInstances/{managedInstanceName}/securityAlertPolicies/{securityAlertPolicyName}": { + "get": { + "tags": [ + "ManagedServerSecurityAlertPolicies" + ], + "description": "Get a managed server's threat detection policy.", + "operationId": "ManagedServerSecurityAlertPolicies_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "name": "securityAlertPolicyName", + "in": "path", + "description": "The name of the security alert policy.", + "required": true, + "type": "string", + "enum": [ + "Default" + ], + "x-ms-enum": { + "name": "SecurityAlertPolicyName", + "modelAsString": true + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the managed server threat detection policy.", + "schema": { + "$ref": "#/definitions/ManagedServerSecurityAlertPolicy" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 SecurityAlertPoliciesInvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 SecurityAlertPoliciesInvalidStorageAccountCredentials - The provided storage account access key is not valid.\n\n * 400 UpdateNotAllowedOnServerContainingPausedDWDatabase - Setting server Threat Detection settings is not allowed on a server with a paused Data Warehouse database\n\n * 400 SecurityAlertPoliciesInsufficientDiskSpace - Insufficient disk space to save security alert policy metadata in the database\n\n * 400 SecurityAlertPoliciesInsufficientStorageAccountPermissions - Insufficient read or write permissions on the provided storage account.\n\n * 400 SecurityAlertPoliciesStorageAccountIsDisabled - The storage account provided in the threat detection policy is disabled.\n\n * 400 InvalidServerSecurityAlertPolicyCreateRequest - The create server Threat Detection security alert policy request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 400 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 409 ServerSecurityAlertPolicyInProgress - Set server security alert policy is already in progress\n\n * 409 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later.\n\n * 500 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 500 GetServerSecurityAlertPolicyFailed - Failed to get Threat Detection settings" + } + }, + "x-ms-examples": { + "Get a managed server's threat detection policy": { + "$ref": "./examples/ManagedServerSecurityAlertGet.json" + } + } + }, + "put": { + "tags": [ + "ManagedServerSecurityAlertPolicies" + ], + "description": "Creates or updates a threat detection policy.", + "operationId": "ManagedServerSecurityAlertPolicies_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "name": "securityAlertPolicyName", + "in": "path", + "description": "The name of the security alert policy.", + "required": true, + "type": "string", + "enum": [ + "Default" + ], + "x-ms-enum": { + "name": "SecurityAlertPolicyName", + "modelAsString": true + } + }, + { + "name": "parameters", + "in": "body", + "description": "The managed server security alert policy.", + "required": true, + "schema": { + "$ref": "#/definitions/ManagedServerSecurityAlertPolicy" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the threat detection policy.", + "schema": { + "$ref": "#/definitions/ManagedServerSecurityAlertPolicy" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 SecurityAlertPoliciesInvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 SecurityAlertPoliciesInvalidStorageAccountCredentials - The provided storage account access key is not valid.\n\n * 400 UpdateNotAllowedOnServerContainingPausedDWDatabase - Setting server Threat Detection settings is not allowed on a server with a paused Data Warehouse database\n\n * 400 SecurityAlertPoliciesInsufficientDiskSpace - Insufficient disk space to save security alert policy metadata in the database\n\n * 400 SecurityAlertPoliciesInsufficientStorageAccountPermissions - Insufficient read or write permissions on the provided storage account.\n\n * 400 SecurityAlertPoliciesStorageAccountIsDisabled - The storage account provided in the threat detection policy is disabled.\n\n * 400 InvalidServerSecurityAlertPolicyCreateRequest - The create server Threat Detection security alert policy request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 400 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 409 ServerSecurityAlertPolicyInProgress - Set server security alert policy is already in progress\n\n * 409 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later.\n\n * 500 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 500 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later" + }, + "202": { + "description": "Created request to set the server threat detection policy." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update a managed server's threat detection policy with minimal parameters": { + "$ref": "./examples/ManagedServerSecurityAlertCreateMin.json" + }, + "Update a managed server's threat detection policy with all parameters": { + "$ref": "./examples/ManagedServerSecurityAlertCreateMax.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/securityAlertPolicies": { + "get": { + "tags": [ + "ManagedServerSecurityAlertPolicies" + ], + "description": "Get the managed server's threat detection policies.", + "operationId": "ManagedServerSecurityAlertPolicies_ListByInstance", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the managed server threat detection policies.", + "schema": { + "$ref": "#/definitions/ManagedServerSecurityAlertPolicyListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 SecurityAlertPoliciesInvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 SecurityAlertPoliciesInvalidStorageAccountCredentials - The provided storage account access key is not valid.\n\n * 400 UpdateNotAllowedOnServerContainingPausedDWDatabase - Setting server Threat Detection settings is not allowed on a server with a paused Data Warehouse database\n\n * 400 SecurityAlertPoliciesInsufficientDiskSpace - Insufficient disk space to save security alert policy metadata in the database\n\n * 400 SecurityAlertPoliciesInsufficientStorageAccountPermissions - Insufficient read or write permissions on the provided storage account.\n\n * 400 SecurityAlertPoliciesStorageAccountIsDisabled - The storage account provided in the threat detection policy is disabled.\n\n * 400 InvalidServerSecurityAlertPolicyCreateRequest - The create server Threat Detection security alert policy request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 400 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 409 ServerSecurityAlertPolicyInProgress - Set server security alert policy is already in progress\n\n * 409 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later.\n\n * 500 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 500 GetServerSecurityAlertPolicyFailed - Failed to get Threat Detection settings" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get the managed server's threat detection policies": { + "$ref": "./examples/ManagedServerSecurityAlertListByInstance.json" + } + } + } + } + }, + "definitions": { + "SecurityAlertsPolicyProperties": { + "description": "Properties of a security alert policy.", + "required": [ + "state" + ], + "type": "object", + "properties": { + "state": { + "description": "Specifies the state of the policy, whether it is enabled or disabled or a policy has not been applied yet on the specific database.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "SecurityAlertsPolicyState", + "modelAsString": false + } + }, + "disabledAlerts": { + "description": "Specifies an array of alerts that are disabled. Allowed values are: Sql_Injection, Sql_Injection_Vulnerability, Access_Anomaly, Data_Exfiltration, Unsafe_Action, Brute_Force", + "type": "array", + "items": { + "type": "string" + } + }, + "emailAddresses": { + "description": "Specifies an array of e-mail addresses to which the alert is sent.", + "type": "array", + "items": { + "type": "string" + } + }, + "emailAccountAdmins": { + "description": "Specifies that the alert is sent to the account administrators.", + "type": "boolean" + }, + "storageEndpoint": { + "description": "Specifies the blob storage endpoint (e.g. https://MyAccount.blob.core.windows.net). This blob storage will hold all Threat Detection audit logs.", + "type": "string" + }, + "storageAccountAccessKey": { + "description": "Specifies the identifier key of the Threat Detection audit storage account.", + "type": "string" + }, + "retentionDays": { + "format": "int32", + "description": "Specifies the number of days to keep in the Threat Detection audit logs.", + "type": "integer" + }, + "creationTime": { + "format": "date-time", + "description": "Specifies the UTC creation time of the policy.", + "type": "string", + "readOnly": true + } + } + }, + "ManagedServerSecurityAlertPolicy": { + "description": "A managed server security alert policy.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "systemData": { + "$ref": "../../../common/v1/types.json#/definitions/systemData", + "description": "SystemData of SecurityAlertPolicyResource.", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/SecurityAlertsPolicyProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "ManagedServerSecurityAlertPolicyListResult": { + "description": "A list of the managed Server's security alert policies.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedServerSecurityAlertPolicy" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "ManagedInstanceNameParameter": { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/Operations.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/Operations.json new file mode 100644 index 000000000000..048d8868e93b --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/Operations.json @@ -0,0 +1,145 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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": { + "/providers/Microsoft.Sql/operations": { + "get": { + "tags": [ + "Operations" + ], + "description": "Lists all of the available SQL Rest API operations.", + "operationId": "Operations_List", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved operations.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "*** Error Responses: ***" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "OperationListResult": { + "description": "Result of the request to list SQL operations.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "Operation": { + "description": "SQL REST API operation definition.", + "type": "object", + "properties": { + "name": { + "description": "The name of the operation being performed on this particular object.", + "type": "string", + "readOnly": true + }, + "display": { + "$ref": "#/definitions/OperationDisplay", + "description": "The localized display information for this particular operation / action.", + "readOnly": true + }, + "origin": { + "description": "The intended executor of the operation.", + "enum": [ + "user", + "system" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "OperationOrigin", + "modelAsString": true + } + }, + "properties": { + "description": "Additional descriptions for the operation.", + "type": "object", + "additionalProperties": { + "type": "object" + }, + "readOnly": true, + "x-ms-client-flatten": false + } + } + }, + "OperationDisplay": { + "description": "Display metadata associated with the operation.", + "type": "object", + "properties": { + "provider": { + "description": "The localized friendly form of the resource provider name.", + "type": "string", + "readOnly": true + }, + "resource": { + "description": "The localized friendly form of the resource type related to this action/operation.", + "type": "string", + "readOnly": true + }, + "operation": { + "description": "The localized friendly name for the operation.", + "type": "string", + "readOnly": true + }, + "description": { + "description": "The localized friendly description for the operation.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": {}, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/OperationsHealth.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/OperationsHealth.json new file mode 100644 index 000000000000..344d746aaf31 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/OperationsHealth.json @@ -0,0 +1,133 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/operationsHealth": { + "get": { + "tags": [ + "OperationsHealth" + ], + "description": "Gets a service operation health status.", + "operationId": "OperationsHealth_ListByLocation", + "parameters": [ + { + "name": "locationName", + "in": "path", + "description": "The name of the region where the resource is located.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved operations health for a location.", + "schema": { + "$ref": "#/definitions/OperationsHealthListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidLocation - An invalid location was specified.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get management operations health in the given location.": { + "$ref": "./examples/OperationsHealthListByLocation.json" + } + } + } + } + }, + "definitions": { + "OperationsHealthListResult": { + "description": "A list of service health statuses in a location.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/OperationsHealth" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "OperationsHealthProperties": { + "description": "Properties of an operation health.", + "type": "object", + "properties": { + "name": { + "description": "Operation name for the service", + "type": "string", + "readOnly": true + }, + "health": { + "description": "Operation health status of the service.", + "type": "string", + "readOnly": true + }, + "description": { + "description": "Health status description.", + "type": "string", + "readOnly": true + } + } + }, + "OperationsHealth": { + "description": "Operations health status in a location.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/OperationsHealthProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + } + }, + "parameters": {}, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/OutboundFirewallRules.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/OutboundFirewallRules.json new file mode 100644 index 000000000000..422a4d707957 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/OutboundFirewallRules.json @@ -0,0 +1,284 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/outboundFirewallRules/{outboundRuleFqdn}": { + "get": { + "tags": [ + "OutboundFirewallRules" + ], + "description": "Gets an outbound firewall rule.", + "operationId": "OutboundFirewallRules_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "outboundRuleFqdn", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved a specified outbound firewall rule.", + "schema": { + "$ref": "#/definitions/OutboundFirewallRule" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 OutboundFirewallRulesNotAllowedOnSynapse - Outbound Firewall Rules are not allowed on SQL DB servers connected to Synapse\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-examples": { + "Gets outbound firewall rule.": { + "$ref": "./examples/OutboundFirewallRuleGet.json" + } + } + }, + "put": { + "tags": [ + "OutboundFirewallRules" + ], + "description": "Create a outbound firewall rule with a given name.", + "operationId": "OutboundFirewallRules_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "outboundRuleFqdn", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/OutboundFirewallRule" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully created outbound firewall rule.", + "schema": { + "$ref": "#/definitions/OutboundFirewallRule" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 OutboundFirewallRulesNotAllowedOnSynapse - Outbound Firewall Rules are not allowed on SQL DB servers connected to Synapse\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 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." + }, + "202": { + "description": "Accepted" + }, + "201": { + "description": "Successfully created outbound firewall rule.", + "schema": { + "$ref": "#/definitions/OutboundFirewallRule" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Approve or reject a outbound firewall rule with a given name.": { + "$ref": "./examples/OutboundFirewallRuleCreate.json" + } + } + }, + "delete": { + "tags": [ + "OutboundFirewallRules" + ], + "description": "Deletes a outbound firewall rule with a given name.", + "operationId": "OutboundFirewallRules_Delete", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "outboundRuleFqdn", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted outbound firewall rule." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 OutboundFirewallRulesNotAllowedOnSynapse - Outbound Firewall Rules are not allowed on SQL DB servers connected to Synapse\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 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." + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "Outbound firewall rule does not exist." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Deletes a outbound firewall rule with a given name.": { + "$ref": "./examples/OutboundFirewallRuleDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/outboundFirewallRules": { + "get": { + "tags": [ + "OutboundFirewallRules" + ], + "description": "Gets all outbound firewall rules on a server.", + "operationId": "OutboundFirewallRules_ListByServer", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved outbound firewall rules.", + "schema": { + "$ref": "#/definitions/OutboundFirewallRuleListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 OutboundFirewallRulesNotAllowedOnSynapse - Outbound Firewall Rules are not allowed on SQL DB servers connected to Synapse\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets list of outbound firewall rules on a server.": { + "$ref": "./examples/OutboundFirewallRuleList.json" + } + } + } + } + }, + "definitions": { + "OutboundFirewallRuleProperties": { + "description": "The properties of an outbound firewall rule.", + "type": "object", + "properties": { + "provisioningState": { + "description": "The state of the outbound rule.", + "type": "string", + "readOnly": true + } + } + }, + "OutboundFirewallRule": { + "description": "An Azure SQL DB Server Outbound Firewall Rule.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/OutboundFirewallRuleProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "OutboundFirewallRuleListResult": { + "description": "A list of outbound rules.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/OutboundFirewallRule" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/PrivateEndpointConnections.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/PrivateEndpointConnections.json new file mode 100644 index 000000000000..2fef1d1201e4 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/PrivateEndpointConnections.json @@ -0,0 +1,347 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Gets a private endpoint connection.", + "operationId": "PrivateEndpointConnections_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved a specified private endpoint connection.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 PrivateEndpointConnectionDoesNotExist - Private Endpoint Connection does not exist\n\n * 400 PrivateEndpointConnectionStatusNotPending - Private Endpoint Connection Status is not Pending\n\n * 400 NullRemotePrivateLinkServiceConnectionState - Remote Private Link Service Connection State is Null\n\n * 400 NullPrivateEndpointConnectionProperties - Private Endpoint Connection Properties is Null\n\n * 400 NullRemotePrivateLinkServiceConnectionStateStatus - Remote Private Link Service Connection State Status is Null\n\n * 400 IncorrectPrivateLinkServiceConnectionStateStatus - Private Link Service Connection State Status must be \"Approved\" or \"Rejected\"\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-examples": { + "Gets private endpoint connection.": { + "$ref": "./examples/PrivateEndpointConnectionGet.json" + } + } + }, + "put": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Approve or reject a private endpoint connection with a given name.", + "operationId": "PrivateEndpointConnections_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully approved or rejected private endpoint connection.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 PrivateEndpointConnectionDoesNotExist - Private Endpoint Connection does not exist\n\n * 400 PrivateEndpointConnectionStatusNotPending - Private Endpoint Connection Status is not Pending\n\n * 400 NullRemotePrivateLinkServiceConnectionState - Remote Private Link Service Connection State is Null\n\n * 400 NullPrivateEndpointConnectionProperties - Private Endpoint Connection Properties is Null\n\n * 400 NullRemotePrivateLinkServiceConnectionStateStatus - Remote Private Link Service Connection State Status is Null\n\n * 400 IncorrectPrivateLinkServiceConnectionStateStatus - Private Link Service Connection State Status must be \"Approved\" or \"Rejected\"\n\n * 400 NetworkingSubscriptionNotRegisteredWithSqlRp - Subscription used for network-side Private Endpoint is not registered with SQL resource provider\n\n * 404 PrivateEndpointConnectionDroppedByOtherWorkflow - {0}\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 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." + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Approve or reject a private endpoint connection with a given name.": { + "$ref": "./examples/PrivateEndpointConnectionUpdate.json" + } + } + }, + "delete": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Deletes a private endpoint connection with a given name.", + "operationId": "PrivateEndpointConnections_Delete", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted private endpoint connection." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 NetworkingSubscriptionNotRegisteredWithSqlRp - Subscription used for network-side Private Endpoint is not registered with SQL resource provider\n\n * 400 PrivateEndpointConnectionDoesNotExist - Private Endpoint Connection does not exist\n\n * 400 PrivateEndpointConnectionStatusNotPending - Private Endpoint Connection Status is not Pending\n\n * 400 NullRemotePrivateLinkServiceConnectionState - Remote Private Link Service Connection State is Null\n\n * 400 NullPrivateEndpointConnectionProperties - Private Endpoint Connection Properties is Null\n\n * 400 NullRemotePrivateLinkServiceConnectionStateStatus - Remote Private Link Service Connection State Status is Null\n\n * 400 IncorrectPrivateLinkServiceConnectionStateStatus - Private Link Service Connection State Status must be \"Approved\" or \"Rejected\"\n\n * 404 PrivateEndpointConnectionDroppedByOtherWorkflow - {0}\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 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." + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "Private endpoint connection does not exist." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Deletes a private endpoint connection with a given name.": { + "$ref": "./examples/PrivateEndpointConnectionDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/privateEndpointConnections": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Gets all private endpoint connections on a server.", + "operationId": "PrivateEndpointConnections_ListByServer", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private endpoint connections.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 PrivateEndpointConnectionDoesNotExist - Private Endpoint Connection does not exist\n\n * 400 PrivateEndpointConnectionStatusNotPending - Private Endpoint Connection Status is not Pending\n\n * 400 NullRemotePrivateLinkServiceConnectionState - Remote Private Link Service Connection State is Null\n\n * 400 NullPrivateEndpointConnectionProperties - Private Endpoint Connection Properties is Null\n\n * 400 NullRemotePrivateLinkServiceConnectionStateStatus - Remote Private Link Service Connection State Status is Null\n\n * 400 IncorrectPrivateLinkServiceConnectionStateStatus - Private Link Service Connection State Status must be \"Approved\" or \"Rejected\"\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets list of private endpoint connections on a server.": { + "$ref": "./examples/PrivateEndpointConnectionList.json" + } + } + } + } + }, + "definitions": { + "PrivateEndpointConnectionProperties": { + "description": "Properties of a private endpoint connection.", + "type": "object", + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpointProperty", + "description": "Private endpoint which the connection belongs to." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionStateProperty", + "description": "Connection state of the private endpoint connection." + }, + "provisioningState": { + "description": "State of the private endpoint connection.", + "enum": [ + "Approving", + "Ready", + "Dropping", + "Failed", + "Rejecting" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "PrivateEndpointProvisioningState", + "modelAsString": true + } + } + } + }, + "PrivateEndpointProperty": { + "type": "object", + "properties": { + "id": { + "description": "Resource id of the private endpoint.", + "type": "string" + } + }, + "x-ms-azure-resource": true + }, + "PrivateLinkServiceConnectionStateProperty": { + "required": [ + "status", + "description" + ], + "type": "object", + "properties": { + "status": { + "description": "The private link service connection status.", + "enum": [ + "Approved", + "Pending", + "Rejected", + "Disconnected" + ], + "type": "string", + "x-ms-enum": { + "name": "PrivateLinkServiceConnectionStateStatus", + "modelAsString": true + } + }, + "description": { + "description": "The private link service connection description.", + "type": "string" + }, + "actionsRequired": { + "description": "The actions required for private link service connection.", + "enum": [ + "None" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "PrivateLinkServiceConnectionStateActionsRequire", + "modelAsString": true + } + } + } + }, + "PrivateEndpointConnection": { + "description": "A private endpoint connection", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "PrivateEndpointConnectionListResult": { + "description": "A list of private endpoint connections.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/PrivateLinkResources.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/PrivateLinkResources.json new file mode 100644 index 000000000000..372247bc5456 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/PrivateLinkResources.json @@ -0,0 +1,193 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/privateLinkResources": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "description": "Gets the private link resources for SQL server.", + "operationId": "PrivateLinkResources_ListByServer", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private link resources.", + "schema": { + "$ref": "#/definitions/PrivateLinkResourceListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\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": { + "Gets private link resources for SQL.": { + "$ref": "./examples/PrivateLinkResourcesList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/privateLinkResources/{groupName}": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "description": "Gets a private link resource for SQL server.", + "operationId": "PrivateLinkResources_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "groupName", + "in": "path", + "description": "The name of the private link resource.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private link resources.", + "schema": { + "$ref": "#/definitions/PrivateLinkResource" + } + }, + "default": { + "description": "*** Error Responses: ***\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-examples": { + "Gets a private link resource for SQL.": { + "$ref": "./examples/PrivateLinkResourcesGet.json" + } + } + } + } + }, + "definitions": { + "PrivateLinkResourceListResult": { + "description": "A list of private link resources", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "PrivateLinkResourceProperties": { + "description": "Properties of a private link resource.", + "type": "object", + "properties": { + "groupId": { + "description": "The private link resource group id.", + "type": "string", + "readOnly": true + }, + "requiredMembers": { + "description": "The private link resource required member names.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "requiredZoneNames": { + "description": "The private link resource required zone names.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + } + } + }, + "PrivateLinkResource": { + "description": "A private link resource", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "The private link resource group id.", + "readOnly": true + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/RecoverableManagedDatabases.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/RecoverableManagedDatabases.json new file mode 100644 index 000000000000..199077d43d9a --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/RecoverableManagedDatabases.json @@ -0,0 +1,176 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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/managedInstances/{managedInstanceName}/recoverableDatabases": { + "get": { + "tags": [ + "RecoverableManagedDatabases" + ], + "description": "Gets a list of recoverable managed databases.", + "operationId": "RecoverableManagedDatabases_ListByInstance", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of recoverable managed databases.", + "schema": { + "$ref": "#/definitions/RecoverableManagedDatabaseListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 MiGeoRestoreWithWrongBackupStorageRedundancy - Geo-Restore is not allowed for managed instances with LRS/ZRS backup storage redundancy.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 AadOnlyAuthenticationIsEnabled - Azure Active Directory Only Authentication is enabled. Please contact your system administrator.\n\n * 400 ManagementServiceFeatureDisabled - User attempted to use a feature which is disabled.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 409 ConflictingManagedInstanceOperation - An operation is currently in progress for the managed instance.\n\n * 409 MiDropFailedOnAuthLocks - User tried to drop last Managed Instance in subnet that has Lock applied on resource(s).\n\n * 409 MiCreateFailedNonDelegatedSubnet - User tried to deploy Managed Instance or Managed Instance pool in subnet that is not delegated to Microsoft.Sql/managedInstances.\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 * 429 ConflictingSubscriptionOperation - An operation is currently in progress for the subscription.\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 recoverable databases by managed instances": { + "$ref": "./examples/ListRecoverableManagedDatabasesByServer.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/recoverableDatabases/{recoverableDatabaseName}": { + "get": { + "tags": [ + "RecoverableManagedDatabases" + ], + "description": "Gets a recoverable managed database.", + "operationId": "RecoverableManagedDatabases_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "name": "recoverableDatabaseName", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the specified recoverable managed database.", + "schema": { + "$ref": "#/definitions/RecoverableManagedDatabase" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidRecoverableDatabaseId - Invalid recoverable database identifier.\n\n * 400 MiGeoRestoreWithWrongBackupStorageRedundancy - Geo-Restore is not allowed for managed instances with LRS/ZRS backup storage redundancy.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 AadOnlyAuthenticationIsEnabled - Azure Active Directory Only Authentication is enabled. Please contact your system administrator.\n\n * 400 ManagementServiceFeatureDisabled - User attempted to use a feature which is disabled.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 409 ConflictingManagedInstanceOperation - An operation is currently in progress for the managed instance.\n\n * 409 MiDropFailedOnAuthLocks - User tried to drop last Managed Instance in subnet that has Lock applied on resource(s).\n\n * 409 MiCreateFailedNonDelegatedSubnet - User tried to deploy Managed Instance or Managed Instance pool in subnet that is not delegated to Microsoft.Sql/managedInstances.\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 * 429 ConflictingSubscriptionOperation - An operation is currently in progress for the subscription.\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": { + "Gets a recoverable databases by managed instances": { + "$ref": "./examples/GetRecoverableManagedDatabase.json" + } + } + } + } + }, + "definitions": { + "RecoverableManagedDatabaseListResult": { + "description": "A list of recoverable managed databases.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/RecoverableManagedDatabase" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "RecoverableManagedDatabaseProperties": { + "description": "The recoverable managed database's properties.", + "type": "object", + "properties": { + "lastAvailableBackupDate": { + "description": "The last available backup date.", + "type": "string", + "readOnly": true + } + } + }, + "RecoverableManagedDatabase": { + "description": "A recoverable managed database resource.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/RecoverableManagedDatabaseProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + } + }, + "parameters": { + "ManagedInstanceNameParameter": { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ReplicationLinks.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ReplicationLinks.json new file mode 100644 index 000000000000..fb5d96911be7 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ReplicationLinks.json @@ -0,0 +1,288 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/replicationLinks": { + "get": { + "tags": [ + "ReplicationLinks" + ], + "description": "Gets a list of replication links on database.", + "operationId": "ReplicationLinks_ListByDatabase", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "serverName", + "in": "path", + "description": "The name of the server containing the replication link.", + "required": true, + "type": "string" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the database containing the replication link.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of replication links.", + "schema": { + "$ref": "#/definitions/ReplicationLinksListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 ReplicationLinksReplicationLinkNameIsInvalid - Replication link name should be a valid guid.\n\n * 400 ReplicationLinksDeleteIsNotSupported - This action is not yet available, please use 2014-04-01 for this action.\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List replication links on server on database.": { + "$ref": "./examples/ReplicationLinkListByDatabase.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/replicationLinks/{replicationLinkName}": { + "get": { + "tags": [ + "ReplicationLinks" + ], + "description": "Gets a replication link.", + "operationId": "ReplicationLinks_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "serverName", + "in": "path", + "description": "The name of the server containing the replication link.", + "required": true, + "type": "string" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the database containing the replication link.", + "required": true, + "type": "string" + }, + { + "name": "replicationLinkName", + "in": "path", + "description": "The name of the replication link.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the specified replication link.", + "schema": { + "$ref": "#/definitions/ReplicationLink" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 ReplicationLinksReplicationLinkNameIsInvalid - Replication link name should be a valid guid.\n\n * 400 ReplicationLinksDeleteIsNotSupported - This action is not yet available, please use 2014-04-01 for this action.\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-examples": { + "Gets the replication link.": { + "$ref": "./examples/ReplicationLinkGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/replicationLinks": { + "get": { + "tags": [ + "ReplicationLinks" + ], + "description": "Gets a list of replication links.", + "operationId": "ReplicationLinks_ListByServer", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "serverName", + "in": "path", + "description": "The name of the server containing the replication link.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of replication links.", + "schema": { + "$ref": "#/definitions/ReplicationLinksListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 ReplicationLinksReplicationLinkNameIsInvalid - Replication link name should be a valid guid.\n\n * 400 ReplicationLinksDeleteIsNotSupported - This action is not yet available, please use 2014-04-01 for this action.\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List replication links on server": { + "$ref": "./examples/ReplicationLinkListByServer.json" + } + } + } + } + }, + "definitions": { + "ReplicationLinksListResult": { + "description": "A list of replication links.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/ReplicationLink" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "ReplicationLinkProperties": { + "description": "Properties of a replication link.", + "type": "object", + "properties": { + "partnerServer": { + "description": "Resource partner server.", + "type": "string", + "readOnly": true + }, + "partnerDatabase": { + "description": "Resource partner database.", + "type": "string", + "readOnly": true + }, + "partnerLocation": { + "description": "Resource partner location.", + "type": "string", + "readOnly": true + }, + "role": { + "description": "Local replication role.", + "type": "string", + "readOnly": true + }, + "partnerRole": { + "description": "Partner replication role.", + "type": "string", + "readOnly": true + }, + "replicationMode": { + "description": "Replication mode.", + "type": "string", + "readOnly": true + }, + "startTime": { + "format": "date-time", + "description": "Time at which the link was created.", + "type": "string", + "readOnly": true + }, + "percentComplete": { + "format": "int32", + "description": "Seeding completion percentage for the link.", + "type": "integer", + "readOnly": true + }, + "replicationState": { + "description": "Replication state (PENDING, SEEDING, CATCHUP, SUSPENDED).", + "type": "string", + "readOnly": true + }, + "isTerminationAllowed": { + "description": "Whether the user is currently allowed to terminate the link.", + "type": "boolean", + "readOnly": true + }, + "linkType": { + "description": "Link type (GEO, NAMED).", + "type": "string", + "readOnly": true + } + } + }, + "ReplicationLink": { + "description": "A replication link.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ReplicationLinkProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + } + }, + "parameters": {}, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/RestorableDroppedDatabases.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/RestorableDroppedDatabases.json new file mode 100644 index 000000000000..cb1c28527d9a --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/RestorableDroppedDatabases.json @@ -0,0 +1,234 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/restorableDroppedDatabases": { + "get": { + "tags": [ + "RestorableDroppedDatabases" + ], + "description": "Gets a list of restorable dropped databases.", + "operationId": "RestorableDroppedDatabases_ListByServer", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of restorable dropped databases.", + "schema": { + "$ref": "#/definitions/RestorableDroppedDatabaseListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets a list of restorable dropped databases.": { + "$ref": "./examples/ListRestorableDroppedDatabasesByServer.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/restorableDroppedDatabases/{restorableDroppedDatabaseId}": { + "get": { + "tags": [ + "RestorableDroppedDatabases" + ], + "description": "Gets a restorable dropped database.", + "operationId": "RestorableDroppedDatabases_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "restorableDroppedDatabaseId", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the specified restorable dropped database.", + "schema": { + "$ref": "#/definitions/RestorableDroppedDatabase" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidRestorableDroppedDatabaseDeletionDate - The restorable dropped database deletion date given is invalid\n\n * 400 InvalidRestorableDroppedDatabaseId - Invalid restorable dropped database identifier\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-examples": { + "Gets a restorable dropped database.": { + "$ref": "./examples/GetRestorableDroppedDatabase.json" + } + } + } + } + }, + "definitions": { + "RestorableDroppedDatabaseListResult": { + "description": "A list of restorable dropped databases.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/RestorableDroppedDatabase" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "RestorableDroppedDatabaseProperties": { + "description": "The restorable dropped database's properties.", + "type": "object", + "properties": { + "databaseName": { + "description": "The name of the database.", + "type": "string", + "readOnly": true + }, + "maxSizeBytes": { + "format": "int64", + "description": "The max size of the database expressed in bytes.", + "type": "integer", + "readOnly": true + }, + "elasticPoolId": { + "description": "DEPRECATED: The resource name of the elastic pool containing this database. This property is deprecated and the value will always be null.", + "type": "string", + "readOnly": true + }, + "creationDate": { + "format": "date-time", + "description": "The creation date of the database (ISO8601 format).", + "type": "string", + "readOnly": true + }, + "deletionDate": { + "format": "date-time", + "description": "The deletion date of the database (ISO8601 format).", + "type": "string", + "readOnly": true + }, + "earliestRestoreDate": { + "format": "date-time", + "description": "The earliest restore date of the database (ISO8601 format).", + "type": "string", + "readOnly": true + }, + "backupStorageRedundancy": { + "description": "The storage account type used to store backups for this database.", + "enum": [ + "Geo", + "Local", + "Zone" + ], + "type": "string", + "readOnly": true + } + } + }, + "RestorableDroppedDatabase": { + "description": "A restorable dropped database resource.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "sku": { + "$ref": "../../../common/v1/types.json#/definitions/Sku", + "description": "The name and tier of the SKU." + }, + "location": { + "description": "Resource location.", + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "tags": { + "description": "Resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "properties": { + "$ref": "#/definitions/RestorableDroppedDatabaseProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/RestorableDroppedManagedDatabases.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/RestorableDroppedManagedDatabases.json new file mode 100644 index 000000000000..3d912f8b274c --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/RestorableDroppedManagedDatabases.json @@ -0,0 +1,197 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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/managedInstances/{managedInstanceName}/restorableDroppedDatabases": { + "get": { + "tags": [ + "RestorableDroppedManagedDatabases" + ], + "description": "Gets a list of restorable dropped managed databases.", + "operationId": "RestorableDroppedManagedDatabases_ListByInstance", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of restorable dropped databases.", + "schema": { + "$ref": "#/definitions/RestorableDroppedManagedDatabaseListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List restorable dropped databases by managed instances": { + "$ref": "./examples/RestorableDroppedManagedDatabaseListByManagedInstance.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/restorableDroppedDatabases/{restorableDroppedDatabaseId}": { + "get": { + "tags": [ + "RestorableDroppedManagedDatabases" + ], + "description": "Gets a restorable dropped managed database.", + "operationId": "RestorableDroppedManagedDatabases_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "name": "restorableDroppedDatabaseId", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the specified restorable dropped database.", + "schema": { + "$ref": "#/definitions/RestorableDroppedManagedDatabase" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidRestorableDroppedDatabaseDeletionDate - The restorable dropped database deletion date given is invalid\n\n * 400 InvalidRestorableDroppedDatabaseId - Invalid restorable dropped database identifier\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-examples": { + "Gets a restorable dropped managed database.": { + "$ref": "./examples/GetRestorableDroppedManagedDatabase.json" + } + } + } + } + }, + "definitions": { + "RestorableDroppedManagedDatabaseListResult": { + "description": "A list of restorable dropped managed databases.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/RestorableDroppedManagedDatabase" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "RestorableDroppedManagedDatabaseProperties": { + "description": "The restorable dropped managed database's properties.", + "type": "object", + "properties": { + "databaseName": { + "description": "The name of the database.", + "type": "string", + "readOnly": true + }, + "creationDate": { + "format": "date-time", + "description": "The creation date of the database (ISO8601 format).", + "type": "string", + "readOnly": true + }, + "deletionDate": { + "format": "date-time", + "description": "The deletion date of the database (ISO8601 format).", + "type": "string", + "readOnly": true + }, + "earliestRestoreDate": { + "format": "date-time", + "description": "The earliest restore date of the database (ISO8601 format).", + "type": "string", + "readOnly": true + } + } + }, + "RestorableDroppedManagedDatabase": { + "description": "A restorable dropped managed database resource.", + "required": [ + "location" + ], + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/TrackedResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/RestorableDroppedManagedDatabaseProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + } + }, + "parameters": { + "ManagedInstanceNameParameter": { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/RestorePoints.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/RestorePoints.json new file mode 100644 index 000000000000..d86124091056 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/RestorePoints.json @@ -0,0 +1,343 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/restorePoints": { + "get": { + "tags": [ + "RestorePoints" + ], + "description": "Gets a list of database restore points.", + "operationId": "RestorePoints_ListByDatabase", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully returned restore points.", + "schema": { + "$ref": "#/definitions/RestorePointListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 BackupNotAllowedOnDeactivatedDatabase - Cannot create restore point on a deactivated database.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\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": "nextLink" + }, + "x-ms-examples": { + "List database restore points.": { + "$ref": "./examples/DatabaseRestorePointsListByDatabase.json" + }, + "List datawarehouse database restore points.": { + "$ref": "./examples/DataWarehouseRestorePointsListByDatabase.json" + } + } + }, + "post": { + "tags": [ + "RestorePoints" + ], + "description": "Creates a restore point for a data warehouse.", + "operationId": "RestorePoints_Create", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "parameters", + "in": "body", + "description": "The definition for creating the restore point of this database.", + "required": true, + "schema": { + "$ref": "#/definitions/CreateDatabaseRestorePointDefinition" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully created the restore point request.", + "schema": { + "$ref": "#/definitions/RestorePoint" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 BackupNotAllowedOnDeactivatedDatabase - Cannot create restore point on a deactivated database.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\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" + }, + "201": { + "description": "Successfully created the restore point request.", + "schema": { + "$ref": "#/definitions/RestorePoint" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Creates datawarehouse database restore point.": { + "$ref": "./examples/DatabaseRestorePointsPost.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/restorePoints/{restorePointName}": { + "get": { + "tags": [ + "RestorePoints" + ], + "description": "Gets a restore point.", + "operationId": "RestorePoints_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "restorePointName", + "in": "path", + "description": "The name of the restore point.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully returned the restore point.", + "schema": { + "$ref": "#/definitions/RestorePoint" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 BackupNotAllowedOnDeactivatedDatabase - Cannot create restore point on a deactivated database.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\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": { + "Gets a database restore point.": { + "$ref": "./examples/DatabaseRestorePointsGet.json" + }, + "Gets a datawarehouse database restore point.": { + "$ref": "./examples/DataWarehouseRestorePointsGet.json" + } + } + }, + "delete": { + "tags": [ + "RestorePoints" + ], + "description": "Deletes a restore point.", + "operationId": "RestorePoints_Delete", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "restorePointName", + "in": "path", + "description": "The name of the restore point.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the restore point." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 BackupNotAllowedOnDeactivatedDatabase - Cannot create restore point on a deactivated database.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\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" + } + } + } + } + }, + "definitions": { + "RestorePointListResult": { + "description": "A list of long term retention backups.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/RestorePoint" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "RestorePointProperties": { + "description": "Properties of a database restore point", + "type": "object", + "properties": { + "restorePointType": { + "description": "The type of restore point", + "enum": [ + "CONTINUOUS", + "DISCRETE" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "RestorePointType", + "modelAsString": false + } + }, + "earliestRestoreDate": { + "format": "date-time", + "description": "The earliest time to which this database can be restored", + "type": "string", + "readOnly": true + }, + "restorePointCreationDate": { + "format": "date-time", + "description": "The time the backup was taken", + "type": "string", + "readOnly": true + }, + "restorePointLabel": { + "description": "The label of restore point for backup request by user", + "type": "string", + "readOnly": true + } + } + }, + "RestorePoint": { + "description": "Database restore points.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "location": { + "description": "Resource location.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/RestorePointProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "CreateDatabaseRestorePointDefinition": { + "description": "Contains the information necessary to perform a create database restore point operation.", + "required": [ + "restorePointLabel" + ], + "type": "object", + "properties": { + "restorePointLabel": { + "description": "The restore point label to apply", + "type": "string" + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/SensitivityLabels.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/SensitivityLabels.json new file mode 100644 index 000000000000..140529203fb7 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/SensitivityLabels.json @@ -0,0 +1,884 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/currentSensitivityLabels": { + "get": { + "tags": [ + "SensitivityLabels" + ], + "description": "Gets the sensitivity labels of a given database", + "operationId": "SensitivityLabels_ListCurrentByDatabase", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "$skipToken", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "$count", + "in": "query", + "required": false, + "type": "boolean" + }, + { + "name": "$filter", + "in": "query", + "description": "An OData filter expression that filters elements in the collection.", + "required": false, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the sensitivity labels.", + "schema": { + "$ref": "#/definitions/SensitivityLabelListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 DatawarehouseDatabaseIsDeactivated - Could not execute Data Classification operation because the database is paused. Please resume it.\n\n * 400 SensitivityLabelsInvalidODataQuery - The specified OData query is either not valid or not supported\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 * 503 DatabaseUnavailable - The operation failed because the database is unavailable." + } + }, + "x-ms-odata": "#/definitions/SensitivityLabel", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the current sensitivity labels of a given database": { + "$ref": "./examples/SensitivityLabelsListByDatabaseWithSourceCurrent.json" + } + } + }, + "patch": { + "tags": [ + "SensitivityLabels" + ], + "description": "Update sensitivity labels of a given database using an operations batch.", + "operationId": "SensitivityLabels_Update", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SensitivityLabelUpdateList" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated sensitivity labels." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 DatawarehouseDatabaseIsDeactivated - Could not execute Data Classification operation because the database is paused. Please resume it.\n\n * 400 DatawarehouseDatabaseIsDeactivated - Could not execute Data Classification operation because the database is paused. Please resume it.\n\n * 400 SensitivityLabelSourceNameNotSupported - The specified sensitivity label source is not valid\n\n * 400 InvalidSensitivityLabelsBatch - The specified sensitivity labels batch is not valid. Please provide batch operations\n\n * 400 SensitivityLabelsMissingSchema - Operation[{0}]: Missing schema information\n\n * 400 SensitivityLabelsMissingTable - Operation[{0}]: Missing table information\n\n * 400 SensitivityLabelsMissingColumn - Operation[{0}]: Missing column information\n\n * 400 SensitivityLabelsUpdateSameColumnMoreThanOnce - The column {0} can not be updated more than once in a single command\n\n * 400 InvalidSensitivityLabelResource - The specified sensitivity label resource is not valid\n\n * 400 SensitivityLabelLabelNameAndInfoTypeNotProvided - At least one of LabelName and InformationType must be specified\n\n * 400 LabelNameTooLong - Label name cannot exceed {0} characters\n\n * 400 InformationTypeTooLong - Information type cannot exceed {0} characters\n\n * 400 LabelIdMustBeGuid - The provided ‘labelId’ is invalid. Value must be a GUID\n\n * 400 InformationTypeIdMustBeGuid - The provided ‘informationTypeId’ is invalid. Value must be a GUID\n\n * 400 LabelMissing - Label is required. At least one of ‘labelName’ or ‘labelId’ must be provided\n\n * 400 InformationTypeMissing - Information type is required. At least one of ‘informationType’ or ‘informationTypeId’ must be provided\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 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 SensitivityLabelsLabelNotFound - The specified sensitivity label could not be found\n\n * 404 SensitivityLabelsSchemaNotFound - The schema {0} could not be found\n\n * 404 SensitivityLabelsTableNotFound - The table {0} could not be found in schema {1}\n\n * 404 SensitivityLabelsColumnNotFound - The column {0} could not be found in table {2}.{1}\n\n * 501 SensitivityLabelRecommendedSourceNameNotSupported - 'Recommended' sensitivity label source is not supported yet\n\n * 501 SensitivityLabelRecommendedSourceNameNotSupported - 'Recommended' sensitivity label source is not supported yet\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable." + } + }, + "x-ms-examples": { + "Update sensitivity labels of a given database using an operations batch.": { + "$ref": "./examples/SensitivityLabelsCurrentUpdate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/recommendedSensitivityLabels": { + "get": { + "tags": [ + "SensitivityLabels" + ], + "description": "Gets the sensitivity labels of a given database", + "operationId": "SensitivityLabels_ListRecommendedByDatabase", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "$skipToken", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "includeDisabledRecommendations", + "in": "query", + "description": "Specifies whether to include disabled recommendations or not.", + "required": false, + "type": "boolean" + }, + { + "name": "$filter", + "in": "query", + "description": "An OData filter expression that filters elements in the collection.", + "required": false, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the sensitivity labels.", + "schema": { + "$ref": "#/definitions/SensitivityLabelListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 DatawarehouseDatabaseIsDeactivated - Could not execute Data Classification operation because the database is paused. Please resume it.\n\n * 400 SensitivityLabelsInvalidODataQuery - The specified OData query is either not valid or not supported\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 * 503 DatabaseUnavailable - The operation failed because the database is unavailable." + } + }, + "x-ms-odata": "#/definitions/SensitivityLabel", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the recommended sensitivity labels of a given database": { + "$ref": "./examples/SensitivityLabelsListByDatabaseWithSourceRecommended.json" + } + } + }, + "patch": { + "tags": [ + "SensitivityLabels" + ], + "description": "Update recommended sensitivity labels states of a given database using an operations batch.", + "operationId": "RecommendedSensitivityLabels_Update", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RecommendedSensitivityLabelUpdateList" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated recommended sensitivity labels." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 DatawarehouseDatabaseIsDeactivated - Could not execute Data Classification operation because the database is paused. Please resume it.\n\n * 400 DatawarehouseDatabaseIsDeactivated - Could not execute Data Classification operation because the database is paused. Please resume it.\n\n * 400 SensitivityLabelSourceNameNotSupported - The specified sensitivity label source is not valid\n\n * 400 InvalidRecommendedSensitivityLabelsBatch - The specified recommended sensitivity labels operations are not valid\n\n * 400 SensitivityLabelsMissingSchema - Operation[{0}]: Missing schema information\n\n * 400 SensitivityLabelsMissingTable - Operation[{0}]: Missing table information\n\n * 400 SensitivityLabelsMissingColumn - Operation[{0}]: Missing column information\n\n * 400 SensitivityLabelsUpdateSameColumnMoreThanOnce - The column {0} can not be updated more than once in a single command\n\n * 400 InvalidSensitivityLabelResource - The specified sensitivity label resource is not valid\n\n * 400 SensitivityLabelLabelNameAndInfoTypeNotProvided - At least one of LabelName and InformationType must be specified\n\n * 400 LabelNameTooLong - Label name cannot exceed {0} characters\n\n * 400 InformationTypeTooLong - Information type cannot exceed {0} characters\n\n * 400 LabelIdMustBeGuid - The provided ‘labelId’ is invalid. Value must be a GUID\n\n * 400 InformationTypeIdMustBeGuid - The provided ‘informationTypeId’ is invalid. Value must be a GUID\n\n * 400 LabelMissing - Label is required. At least one of ‘labelName’ or ‘labelId’ must be provided\n\n * 400 InformationTypeMissing - Information type is required. At least one of ‘informationType’ or ‘informationTypeId’ must be provided\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 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 SensitivityLabelsLabelNotFound - The specified sensitivity label could not be found\n\n * 404 SensitivityLabelsSchemaNotFound - The schema {0} could not be found\n\n * 404 SensitivityLabelsTableNotFound - The table {0} could not be found in schema {1}\n\n * 404 SensitivityLabelsColumnNotFound - The column {0} could not be found in table {2}.{1}\n\n * 501 SensitivityLabelRecommendedSourceNameNotSupported - 'Recommended' sensitivity label source is not supported yet\n\n * 501 SensitivityLabelRecommendedSourceNameNotSupported - 'Recommended' sensitivity label source is not supported yet\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable." + } + }, + "x-ms-examples": { + "Update recommended sensitivity labels of a given database using an operations batch.": { + "$ref": "./examples/SensitivityLabelsRecommendedUpdate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/schemas/{schemaName}/tables/{tableName}/columns/{columnName}/sensitivityLabels/{sensitivityLabelSource}/enable": { + "post": { + "tags": [ + "SensitivityLabels" + ], + "description": "Enables sensitivity recommendations on a given column (recommendations are enabled by default on all columns)", + "operationId": "SensitivityLabels_EnableRecommendation", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "schemaName", + "in": "path", + "description": "The name of the schema.", + "required": true, + "type": "string" + }, + { + "name": "tableName", + "in": "path", + "description": "The name of the table.", + "required": true, + "type": "string" + }, + { + "name": "columnName", + "in": "path", + "description": "The name of the column.", + "required": true, + "type": "string" + }, + { + "name": "sensitivityLabelSource", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "recommended" + ], + "x-ms-enum": { + "name": "SensitivityLabelSource", + "modelAsString": false + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully enabled the sensitivity recommendations on the given column." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 DatawarehouseDatabaseIsDeactivated - Could not execute Data Classification operation because the database is paused. Please resume it.\n\n * 404 SensitivityLabelsColumnNotFound - The column {0} could not be found in table {2}.{1}\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." + } + }, + "x-ms-examples": { + "Enables sensitivity recommendations on a given column": { + "$ref": "./examples/RecommendedColumnSensitivityLabelEnable.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/schemas/{schemaName}/tables/{tableName}/columns/{columnName}/sensitivityLabels/{sensitivityLabelSource}/disable": { + "post": { + "tags": [ + "SensitivityLabels" + ], + "description": "Disables sensitivity recommendations on a given column", + "operationId": "SensitivityLabels_DisableRecommendation", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "schemaName", + "in": "path", + "description": "The name of the schema.", + "required": true, + "type": "string" + }, + { + "name": "tableName", + "in": "path", + "description": "The name of the table.", + "required": true, + "type": "string" + }, + { + "name": "columnName", + "in": "path", + "description": "The name of the column.", + "required": true, + "type": "string" + }, + { + "name": "sensitivityLabelSource", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "recommended" + ], + "x-ms-enum": { + "name": "SensitivityLabelSource", + "modelAsString": false + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully disabled the sensitivity recommendation on the given column." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 DatawarehouseDatabaseIsDeactivated - Could not execute Data Classification operation because the database is paused. Please resume it.\n\n * 404 SensitivityLabelsColumnNotFound - The column {0} could not be found in table {2}.{1}\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." + } + }, + "x-ms-examples": { + "Disables sensitivity recommendations on a given column": { + "$ref": "./examples/RecommendedColumnSensitivityLabelDisable.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/schemas/{schemaName}/tables/{tableName}/columns/{columnName}/sensitivityLabels/{sensitivityLabelSource}": { + "get": { + "tags": [ + "SensitivityLabels" + ], + "description": "Gets the sensitivity label of a given column", + "operationId": "SensitivityLabels_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "schemaName", + "in": "path", + "description": "The name of the schema.", + "required": true, + "type": "string" + }, + { + "name": "tableName", + "in": "path", + "description": "The name of the table.", + "required": true, + "type": "string" + }, + { + "name": "columnName", + "in": "path", + "description": "The name of the column.", + "required": true, + "type": "string" + }, + { + "name": "sensitivityLabelSource", + "in": "path", + "description": "The source of the sensitivity label.", + "required": true, + "type": "string", + "enum": [ + "current", + "recommended" + ], + "x-ms-enum": { + "name": "SensitivityLabelSource", + "modelAsString": false + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the sensitivity label.", + "schema": { + "$ref": "#/definitions/SensitivityLabel" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 DatawarehouseDatabaseIsDeactivated - Could not execute Data Classification operation because the database is paused. Please resume it.\n\n * 400 SensitivityLabelSourceNameNotSupported - The specified sensitivity label source is not valid\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 SensitivityLabelsLabelNotFound - The specified sensitivity label could not be found\n\n * 404 SensitivityLabelsSchemaNotFound - The schema {0} could not be found\n\n * 404 SensitivityLabelsTableNotFound - The table {0} could not be found in schema {1}\n\n * 404 SensitivityLabelsColumnNotFound - The column {0} could not be found in table {2}.{1}\n\n * 501 SensitivityLabelRecommendedSourceNameNotSupported - 'Recommended' sensitivity label source is not supported yet\n\n * 501 SensitivityLabelRecommendedSourceNameNotSupported - 'Recommended' sensitivity label source is not supported yet" + } + }, + "x-ms-examples": { + "Gets the sensitivity label of a given column": { + "$ref": "./examples/ColumnSensitivityLabelGet.json" + } + } + }, + "put": { + "tags": [ + "SensitivityLabels" + ], + "description": "Creates or updates the sensitivity label of a given column", + "operationId": "SensitivityLabels_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "schemaName", + "in": "path", + "description": "The name of the schema.", + "required": true, + "type": "string" + }, + { + "name": "tableName", + "in": "path", + "description": "The name of the table.", + "required": true, + "type": "string" + }, + { + "name": "columnName", + "in": "path", + "description": "The name of the column.", + "required": true, + "type": "string" + }, + { + "name": "sensitivityLabelSource", + "in": "path", + "description": "The source of the sensitivity label.", + "required": true, + "type": "string", + "enum": [ + "current" + ], + "x-ms-enum": { + "name": "WritableSensitivityLabelSource", + "modelAsString": false + } + }, + { + "name": "parameters", + "in": "body", + "description": "The column sensitivity label resource.", + "required": true, + "schema": { + "$ref": "#/definitions/SensitivityLabel" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the sensitivity label.", + "schema": { + "$ref": "#/definitions/SensitivityLabel" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 DatawarehouseDatabaseIsDeactivated - Could not execute Data Classification operation because the database is paused. Please resume it.\n\n * 400 SensitivityLabelSourceNameNotSupported - The specified sensitivity label source is not valid\n\n * 400 InvalidSensitivityLabelResource - The specified sensitivity label resource is not valid\n\n * 400 SensitivityLabelLabelNameAndInfoTypeNotProvided - At least one of LabelName and InformationType must be specified\n\n * 400 LabelNameTooLong - Label name cannot exceed {0} characters\n\n * 400 InformationTypeTooLong - Information type cannot exceed {0} characters\n\n * 400 LabelIdMustBeGuid - The provided ‘labelId’ is invalid. Value must be a GUID\n\n * 400 InformationTypeIdMustBeGuid - The provided ‘informationTypeId’ is invalid. Value must be a GUID\n\n * 400 LabelMissing - Label is required. At least one of ‘labelName’ or ‘labelId’ must be provided\n\n * 400 InformationTypeMissing - Information type is required. At least one of ‘informationType’ or ‘informationTypeId’ must be provided\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 SensitivityLabelsLabelNotFound - The specified sensitivity label could not be found\n\n * 404 SensitivityLabelsSchemaNotFound - The schema {0} could not be found\n\n * 404 SensitivityLabelsTableNotFound - The table {0} could not be found in schema {1}\n\n * 404 SensitivityLabelsColumnNotFound - The column {0} could not be found in table {2}.{1}\n\n * 501 SensitivityLabelRecommendedSourceNameNotSupported - 'Recommended' sensitivity label source is not supported yet\n\n * 501 SensitivityLabelRecommendedSourceNameNotSupported - 'Recommended' sensitivity label source is not supported yet" + }, + "201": { + "description": "Successfully created the sensitivity label.", + "schema": { + "$ref": "#/definitions/SensitivityLabel" + } + } + }, + "x-ms-examples": { + "Updates the sensitivity label of a given column with all parameters": { + "$ref": "./examples/ColumnSensitivityLabelCreateMax.json" + } + } + }, + "delete": { + "tags": [ + "SensitivityLabels" + ], + "description": "Deletes the sensitivity label of a given column", + "operationId": "SensitivityLabels_Delete", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "schemaName", + "in": "path", + "description": "The name of the schema.", + "required": true, + "type": "string" + }, + { + "name": "tableName", + "in": "path", + "description": "The name of the table.", + "required": true, + "type": "string" + }, + { + "name": "columnName", + "in": "path", + "description": "The name of the column.", + "required": true, + "type": "string" + }, + { + "name": "sensitivityLabelSource", + "in": "path", + "description": "The source of the sensitivity label.", + "required": true, + "type": "string", + "enum": [ + "current" + ], + "x-ms-enum": { + "name": "WritableSensitivityLabelSource", + "modelAsString": false + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the sensitivity label." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 DatawarehouseDatabaseIsDeactivated - Could not execute Data Classification operation because the database is paused. Please resume it.\n\n * 400 SensitivityLabelSourceNameNotSupported - The specified sensitivity label source is not valid\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 SensitivityLabelsLabelNotFound - The specified sensitivity label could not be found\n\n * 404 SensitivityLabelsSchemaNotFound - The schema {0} could not be found\n\n * 404 SensitivityLabelsTableNotFound - The table {0} could not be found in schema {1}\n\n * 404 SensitivityLabelsColumnNotFound - The column {0} could not be found in table {2}.{1}\n\n * 501 SensitivityLabelRecommendedSourceNameNotSupported - 'Recommended' sensitivity label source is not supported yet\n\n * 501 SensitivityLabelRecommendedSourceNameNotSupported - 'Recommended' sensitivity label source is not supported yet" + } + }, + "x-ms-examples": { + "Deletes the sensitivity label of a given column": { + "$ref": "./examples/ColumnSensitivityLabelDelete.json" + } + } + } + } + }, + "definitions": { + "SensitivityLabelProperties": { + "description": "Properties of a sensitivity label.", + "type": "object", + "properties": { + "schemaName": { + "description": "The schema name.", + "type": "string", + "readOnly": true + }, + "tableName": { + "description": "The table name.", + "type": "string", + "readOnly": true + }, + "columnName": { + "description": "The column name.", + "type": "string", + "readOnly": true + }, + "labelName": { + "description": "The label name.", + "type": "string" + }, + "labelId": { + "description": "The label ID.", + "type": "string" + }, + "informationType": { + "description": "The information type.", + "type": "string" + }, + "informationTypeId": { + "description": "The information type ID.", + "type": "string" + }, + "isDisabled": { + "description": "Is sensitivity recommendation disabled. Applicable for recommended sensitivity label only. Specifies whether the sensitivity recommendation on this column is disabled (dismissed) or not.", + "type": "boolean", + "readOnly": true + }, + "rank": { + "enum": [ + "None", + "Low", + "Medium", + "High", + "Critical" + ], + "type": "string", + "x-ms-enum": { + "name": "SensitivityLabelRank", + "modelAsString": false + } + } + } + }, + "SensitivityLabel": { + "description": "A sensitivity label.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "managedBy": { + "description": "Resource that manages the sensitivity label.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/SensitivityLabelProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "SensitivityLabelListResult": { + "description": "A list of sensitivity labels.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/SensitivityLabel" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "SensitivityLabelUpdateList": { + "description": "A list of sensitivity label update operations.", + "type": "object", + "properties": { + "operations": { + "type": "array", + "items": { + "$ref": "#/definitions/SensitivityLabelUpdate" + } + } + } + }, + "SensitivityLabelUpdateProperties": { + "description": "Properties of an operation executed on a sensitivity label.", + "required": [ + "op", + "schema", + "table", + "column" + ], + "type": "object", + "properties": { + "op": { + "enum": [ + "set", + "remove" + ], + "type": "string", + "x-ms-enum": { + "name": "SensitivityLabelUpdateKind", + "modelAsString": false + } + }, + "schema": { + "description": "Schema name of the column to update.", + "type": "string" + }, + "table": { + "description": "Table name of the column to update.", + "type": "string" + }, + "column": { + "description": "Column name to update.", + "type": "string" + }, + "sensitivityLabel": { + "$ref": "#/definitions/SensitivityLabel", + "description": "The sensitivity label information to apply on a column." + } + } + }, + "SensitivityLabelUpdate": { + "description": "A sensitivity label update operation.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/SensitivityLabelUpdateProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "RecommendedSensitivityLabelUpdateList": { + "description": "A list of recommended sensitivity label update operations.", + "type": "object", + "properties": { + "operations": { + "type": "array", + "items": { + "$ref": "#/definitions/RecommendedSensitivityLabelUpdate" + } + } + } + }, + "RecommendedSensitivityLabelUpdateProperties": { + "description": "Properties of an operation executed on a recommended sensitivity label.", + "required": [ + "op", + "schema", + "table", + "column" + ], + "type": "object", + "properties": { + "op": { + "enum": [ + "enable", + "disable" + ], + "type": "string", + "x-ms-enum": { + "name": "RecommendedSensitivityLabelUpdateKind", + "modelAsString": false + } + }, + "schema": { + "description": "Schema name of the column to update.", + "type": "string" + }, + "table": { + "description": "Table name of the column to update.", + "type": "string" + }, + "column": { + "description": "Column name to update.", + "type": "string" + } + } + }, + "RecommendedSensitivityLabelUpdate": { + "description": "A recommended sensitivity label update operation.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/RecommendedSensitivityLabelUpdateProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ServerAdvisors.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ServerAdvisors.json new file mode 100644 index 000000000000..5ae2156cc64b --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ServerAdvisors.json @@ -0,0 +1,646 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/advisors": { + "get": { + "tags": [ + "ServerAdvisors" + ], + "description": "Gets a list of server advisors.", + "operationId": "ServerAdvisors_ListByServer", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "$expand", + "in": "query", + "description": "The child resources to include in the response.", + "required": false, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of server advisors.", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/Advisor" + } + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 DataWarehouseNotSupported - Automatic tuning is not supported for SQL Data Warehouse.\n\n * 404 DatabaseDoesNotExist - The requested database was not found\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SubscriptionDoesNotHaveElasticPool - The requested elastic pool was not found\n\n * 404 AdvisorNotFound - The requested advisor was not found.\n\n * 405 NotSupported - This functionality is not supported.\n\n * 409 Conflict - Request could not be processed because of conflict in the request.\n\n * 503 ServiceTemporarilyUnavailable - Feature temporarily unavailable." + } + }, + "x-ms-examples": { + "List of server advisors": { + "$ref": "./examples/ServerAdvisorList.json" + }, + "List of server recommended actions for all advisors": { + "$ref": "./examples/ServerRecommendedActionListExpand.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/advisors/{advisorName}": { + "get": { + "tags": [ + "ServerAdvisors" + ], + "description": "Gets a server advisor.", + "operationId": "ServerAdvisors_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "advisorName", + "in": "path", + "description": "The name of the Server Advisor.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved details of specified server advisor.", + "schema": { + "$ref": "#/definitions/Advisor" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 DataWarehouseNotSupported - Automatic tuning is not supported for SQL Data Warehouse.\n\n * 404 DatabaseDoesNotExist - The requested database was not found\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SubscriptionDoesNotHaveElasticPool - The requested elastic pool was not found\n\n * 404 AdvisorNotFound - The requested advisor was not found.\n\n * 405 NotSupported - This functionality is not supported.\n\n * 409 Conflict - Request could not be processed because of conflict in the request.\n\n * 503 ServiceTemporarilyUnavailable - Feature temporarily unavailable." + } + }, + "x-ms-examples": { + "Get server advisor": { + "$ref": "./examples/ServerAdvisorGet.json" + } + } + }, + "patch": { + "tags": [ + "ServerAdvisors" + ], + "description": "Updates a server advisor.", + "operationId": "ServerAdvisors_Update", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "advisorName", + "in": "path", + "description": "The name of the Server Advisor.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The requested advisor resource state.", + "required": true, + "schema": { + "$ref": "#/definitions/Advisor" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the specified server advisor.", + "schema": { + "$ref": "#/definitions/Advisor" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 DataWarehouseNotSupported - Automatic tuning is not supported for SQL Data Warehouse.\n\n * 400 InvalidAdvisorUpsertRequest - The update advisor request body does not exist or has no properties object.\n\n * 400 InvalidAdvisorAutoExecuteStatus - Specified auto-execute status for the advisor is not allowed.\n\n * 404 DatabaseDoesNotExist - The requested database was not found\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SubscriptionDoesNotHaveElasticPool - The requested elastic pool was not found\n\n * 404 AdvisorNotFound - The requested advisor was not found.\n\n * 404 AutomaticTuningOptionNotFound - The requested automatic tuning option was not found.\n\n * 405 NotSupported - This functionality is not supported.\n\n * 409 Conflict - Request could not be processed because of conflict in the request.\n\n * 409 DefaultAdvisorStateNotAllowedInCustomServerMode - DEFAULT advisor state not allowed in CUSTOM mode\n\n * 409 UpdateNotAllowedIfServerAutotuningUpdateOperationInProgress - Automatic tuning settings from previous request have not propagated to all user databases.\n\n * 503 ServiceTemporarilyUnavailable - Feature temporarily unavailable." + } + }, + "x-ms-examples": { + "Update server advisor": { + "$ref": "./examples/ServerAdvisorUpdate.json" + } + } + } + } + }, + "definitions": { + "AdvisorProperties": { + "description": "Properties for a Database, Server or Elastic Pool Advisor.", + "required": [ + "autoExecuteStatus" + ], + "type": "object", + "properties": { + "advisorStatus": { + "description": "Gets the status of availability of this advisor to customers. Possible values are 'GA', 'PublicPreview', 'LimitedPublicPreview' and 'PrivatePreview'.", + "enum": [ + "GA", + "PublicPreview", + "LimitedPublicPreview", + "PrivatePreview" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "AdvisorStatus", + "modelAsString": false + } + }, + "autoExecuteStatus": { + "description": "Gets the auto-execute status (whether to let the system execute the recommendations) of this advisor. Possible values are 'Enabled' and 'Disabled'", + "enum": [ + "Enabled", + "Disabled", + "Default" + ], + "type": "string", + "x-ms-enum": { + "name": "AutoExecuteStatus", + "modelAsString": false + } + }, + "autoExecuteStatusInheritedFrom": { + "description": "Gets the resource from which current value of auto-execute status is inherited. Auto-execute status can be set on (and inherited from) different levels in the resource hierarchy. Possible values are 'Subscription', 'Server', 'ElasticPool', 'Database' and 'Default' (when status is not explicitly set on any level).", + "enum": [ + "Default", + "Subscription", + "Server", + "ElasticPool", + "Database" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "AutoExecuteStatusInheritedFrom", + "modelAsString": false + } + }, + "recommendationsStatus": { + "description": "Gets that status of recommendations for this advisor and reason for not having any recommendations. Possible values include, but are not limited to, 'Ok' (Recommendations available),LowActivity (not enough workload to analyze), 'DbSeemsTuned' (Database is doing well), etc.", + "type": "string", + "readOnly": true + }, + "lastChecked": { + "format": "date-time", + "description": "Gets the time when the current resource was analyzed for recommendations by this advisor.", + "type": "string", + "readOnly": true + }, + "recommendedActions": { + "description": "Gets the recommended actions for this advisor.", + "type": "array", + "items": { + "$ref": "#/definitions/RecommendedAction" + }, + "readOnly": true + } + } + }, + "RecommendedActionProperties": { + "description": "Properties for a Database, Server or Elastic Pool Recommended Action.", + "required": [ + "state" + ], + "type": "object", + "properties": { + "recommendationReason": { + "description": "Gets the reason for recommending this action. e.g., DuplicateIndex", + "type": "string", + "readOnly": true + }, + "validSince": { + "format": "date-time", + "description": "Gets the time since when this recommended action is valid.", + "type": "string", + "readOnly": true + }, + "lastRefresh": { + "format": "date-time", + "description": "Gets time when this recommended action was last refreshed.", + "type": "string", + "readOnly": true + }, + "state": { + "$ref": "#/definitions/RecommendedActionStateInfo", + "description": "Gets the info of the current state the recommended action is in." + }, + "isExecutableAction": { + "description": "Gets if this recommended action is actionable by user", + "type": "boolean", + "readOnly": true + }, + "isRevertableAction": { + "description": "Gets if changes applied by this recommended action can be reverted by user", + "type": "boolean", + "readOnly": true + }, + "isArchivedAction": { + "description": "Gets if this recommended action was suggested some time ago but user chose to ignore this and system added a new recommended action again.", + "type": "boolean", + "readOnly": true + }, + "executeActionStartTime": { + "format": "date-time", + "description": "Gets the time when system started applying this recommended action on the user resource. e.g., index creation start time", + "type": "string", + "readOnly": true + }, + "executeActionDuration": { + "description": "Gets the time taken for applying this recommended action on user resource. e.g., time taken for index creation", + "type": "string", + "readOnly": true + }, + "revertActionStartTime": { + "format": "date-time", + "description": "Gets the time when system started reverting changes of this recommended action on user resource. e.g., time when index drop is executed.", + "type": "string", + "readOnly": true + }, + "revertActionDuration": { + "description": "Gets the time taken for reverting changes of this recommended action on user resource. e.g., time taken for dropping the created index.", + "type": "string", + "readOnly": true + }, + "executeActionInitiatedBy": { + "description": "Gets if approval for applying this recommended action was given by user/system.", + "enum": [ + "User", + "System" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "RecommendedActionInitiatedBy", + "modelAsString": false + } + }, + "executeActionInitiatedTime": { + "format": "date-time", + "description": "Gets the time when this recommended action was approved for execution.", + "type": "string", + "readOnly": true + }, + "revertActionInitiatedBy": { + "description": "Gets if approval for reverting this recommended action was given by user/system.", + "enum": [ + "User", + "System" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "RecommendedActionInitiatedBy", + "modelAsString": false + } + }, + "revertActionInitiatedTime": { + "format": "date-time", + "description": "Gets the time when this recommended action was approved for revert.", + "type": "string", + "readOnly": true + }, + "score": { + "format": "int32", + "description": "Gets the impact of this recommended action. Possible values are 1 - Low impact, 2 - Medium Impact and 3 - High Impact", + "type": "integer", + "readOnly": true + }, + "implementationDetails": { + "$ref": "#/definitions/RecommendedActionImplementationInfo", + "description": "Gets the implementation details of this recommended action for user to apply it manually.", + "readOnly": true + }, + "errorDetails": { + "$ref": "#/definitions/RecommendedActionErrorInfo", + "description": "Gets the error details if and why this recommended action is put to error state.", + "readOnly": true + }, + "estimatedImpact": { + "description": "Gets the estimated impact info for this recommended action e.g., Estimated CPU gain, Estimated Disk Space change", + "type": "array", + "items": { + "$ref": "#/definitions/RecommendedActionImpactRecord" + }, + "readOnly": true + }, + "observedImpact": { + "description": "Gets the observed/actual impact info for this recommended action e.g., Actual CPU gain, Actual Disk Space change", + "type": "array", + "items": { + "$ref": "#/definitions/RecommendedActionImpactRecord" + }, + "readOnly": true + }, + "timeSeries": { + "description": "Gets the time series info of metrics for this recommended action e.g., CPU consumption time series", + "type": "array", + "items": { + "$ref": "#/definitions/RecommendedActionMetricInfo" + }, + "readOnly": true + }, + "linkedObjects": { + "description": "Gets the linked objects, if any.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "details": { + "description": "Gets additional details specific to this recommended action.", + "type": "object", + "additionalProperties": { + "type": "object" + }, + "readOnly": true + } + } + }, + "RecommendedActionStateInfo": { + "description": "Contains information of current state for an Azure SQL Database, Server or Elastic Pool Recommended Action.", + "required": [ + "currentValue" + ], + "type": "object", + "properties": { + "currentValue": { + "description": "Current state the recommended action is in. Some commonly used states are: Active -> recommended action is active and no action has been taken yet. Pending -> recommended action is approved for and is awaiting execution. Executing -> recommended action is being applied on the user database. Verifying -> recommended action was applied and is being verified of its usefulness by the system. Success -> recommended action was applied and improvement found during verification. Pending Revert -> verification found little or no improvement so recommended action is queued for revert or user has manually reverted. Reverting -> changes made while applying recommended action are being reverted on the user database. Reverted -> successfully reverted the changes made by recommended action on user database. Ignored -> user explicitly ignored/discarded the recommended action. ", + "enum": [ + "Active", + "Pending", + "Executing", + "Verifying", + "PendingRevert", + "RevertCancelled", + "Reverting", + "Reverted", + "Ignored", + "Expired", + "Monitoring", + "Resolved", + "Success", + "Error" + ], + "type": "string", + "x-ms-enum": { + "name": "RecommendedActionCurrentState", + "modelAsString": true + } + }, + "actionInitiatedBy": { + "description": "Gets who initiated the execution of this recommended action. Possible Value are: User -> When user explicity notified system to apply the recommended action. System -> When auto-execute status of this advisor was set to 'Enabled', in which case the system applied it.", + "enum": [ + "User", + "System" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "RecommendedActionInitiatedBy", + "modelAsString": false + } + }, + "lastModified": { + "format": "date-time", + "description": "Gets the time when the state was last modified", + "type": "string", + "readOnly": true + } + } + }, + "RecommendedActionImplementationInfo": { + "description": "Contains information for manual implementation for an Azure SQL Database, Server or Elastic Pool Recommended Action.", + "type": "object", + "properties": { + "method": { + "description": "Gets the method in which this recommended action can be manually implemented. e.g., TSql, AzurePowerShell.", + "enum": [ + "TSql", + "AzurePowerShell" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ImplementationMethod", + "modelAsString": false + } + }, + "script": { + "description": "Gets the manual implementation script. e.g., T-SQL script that could be executed on the database.", + "type": "string", + "readOnly": true + } + } + }, + "RecommendedActionErrorInfo": { + "description": "Contains error information for an Azure SQL Database, Server or Elastic Pool Recommended Action.", + "type": "object", + "properties": { + "errorCode": { + "description": "Gets the reason why the recommended action was put to error state. e.g., DatabaseHasQdsOff, IndexAlreadyExists", + "type": "string", + "readOnly": true + }, + "isRetryable": { + "description": "Gets whether the error could be ignored and recommended action could be retried. Possible values are: Yes/No", + "enum": [ + "Yes", + "No" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "IsRetryable", + "modelAsString": false + } + } + } + }, + "RecommendedActionImpactRecord": { + "description": "Contains information of estimated or observed impact on various metrics for an Azure SQL Database, Server or Elastic Pool Recommended Action.", + "type": "object", + "properties": { + "dimensionName": { + "description": "Gets the name of the impact dimension. e.g., CPUChange, DiskSpaceChange, NumberOfQueriesAffected.", + "type": "string", + "readOnly": true + }, + "unit": { + "description": "Gets the name of the impact dimension. e.g., CPUChange, DiskSpaceChange, NumberOfQueriesAffected.", + "type": "string", + "readOnly": true + }, + "absoluteValue": { + "format": "double", + "description": "Gets the absolute value of this dimension if applicable. e.g., Number of Queries affected", + "type": "number", + "readOnly": true + }, + "changeValueAbsolute": { + "format": "double", + "description": "Gets the absolute change in the value of this dimension. e.g., Absolute Disk space change in Megabytes", + "type": "number", + "readOnly": true + }, + "changeValueRelative": { + "format": "double", + "description": "Gets the relative change in the value of this dimension. e.g., Relative Disk space change in Percentage", + "type": "number", + "readOnly": true + } + } + }, + "RecommendedActionMetricInfo": { + "description": "Contains time series of various impacted metrics for an Azure SQL Database, Server or Elastic Pool Recommended Action.", + "type": "object", + "properties": { + "metricName": { + "description": "Gets the name of the metric. e.g., CPU, Number of Queries.", + "type": "string", + "readOnly": true + }, + "unit": { + "description": "Gets the unit in which metric is measured. e.g., DTU, Frequency", + "type": "string", + "readOnly": true + }, + "timeGrain": { + "description": "Gets the duration of time interval for the value given by this MetricInfo. e.g., PT1H (1 hour)", + "type": "string", + "readOnly": true + }, + "startTime": { + "format": "date-time", + "description": "Gets the start time of time interval given by this MetricInfo.", + "type": "string", + "readOnly": true + }, + "value": { + "format": "double", + "description": "Gets the value of the metric in the time interval given by this MetricInfo.", + "type": "number", + "readOnly": true + } + } + }, + "RecommendedAction": { + "description": "Database, Server or Elastic Pool Recommended Action.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "kind": { + "description": "Resource kind.", + "type": "string", + "readOnly": true + }, + "location": { + "description": "Resource location.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/RecommendedActionProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "Advisor": { + "description": "Database, Server or Elastic Pool Advisor.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "kind": { + "description": "Resource kind.", + "type": "string", + "readOnly": true + }, + "location": { + "description": "Resource location.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/AdvisorProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ServerAutomaticTuning.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ServerAutomaticTuning.json new file mode 100644 index 000000000000..dadf5df2d6be --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ServerAutomaticTuning.json @@ -0,0 +1,239 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/automaticTuning/current": { + "get": { + "tags": [ + "ServerAutomaticTuning" + ], + "description": "Retrieves server automatic tuning options.", + "operationId": "ServerAutomaticTuning_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved server automatic tuning properties.", + "schema": { + "$ref": "#/definitions/ServerAutomaticTuning" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 404 DatabaseDoesNotExist - The requested database was not found\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SubscriptionDoesNotHaveElasticPool - The requested elastic pool was not found\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 405 NotSupported - This functionality is not supported.\n\n * 409 Conflict - Request could not be processed because of conflict in the request.\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.\n\n * 503 ServiceTemporarilyUnavailable - Feature temporarily unavailable." + } + }, + "x-ms-examples": { + "Get a server's automatic tuning settings": { + "$ref": "./examples/ServerAutomaticTuningGet.json" + } + } + }, + "patch": { + "tags": [ + "ServerAutomaticTuning" + ], + "description": "Update automatic tuning options on server.", + "operationId": "ServerAutomaticTuning_Update", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "parameters", + "in": "body", + "description": "The requested automatic tuning resource state.", + "required": true, + "schema": { + "$ref": "#/definitions/ServerAutomaticTuning" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the server-level automatic tuning options.", + "schema": { + "$ref": "#/definitions/ServerAutomaticTuning" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 InvalidAutomaticTuningUpsertRequest - The update automatic tuning request body does not exist or has no properties object.\n\n * 400 InvalidAdvisorAutoExecuteStatus - Specified auto-execute status for the advisor is not allowed.\n\n * 404 DatabaseDoesNotExist - The requested database was not found\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SubscriptionDoesNotHaveElasticPool - The requested elastic pool was not found\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 AutomaticTuningOptionNotFound - The requested automatic tuning option was not found.\n\n * 405 NotSupported - This functionality is not supported.\n\n * 409 Conflict - Request could not be processed because of conflict in the request.\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 DefaultAdvisorStateNotAllowedInCustomServerMode - DEFAULT advisor state not allowed in CUSTOM mode\n\n * 409 UpdateNotAllowedIfServerAutotuningUpdateOperationInProgress - Automatic tuning settings from previous request have not propagated to all user databases.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 503 ServiceTemporarilyUnavailable - Feature temporarily unavailable." + } + }, + "x-ms-examples": { + "Updates server automatic tuning settings with minimal properties": { + "$ref": "./examples/ServerAutomaticTuningUpdateMin.json" + }, + "Updates server automatic tuning settings with all properties": { + "$ref": "./examples/ServerAutomaticTuningUpdateMax.json" + } + } + } + } + }, + "definitions": { + "AutomaticTuningServerProperties": { + "description": "Server-level Automatic Tuning properties.", + "type": "object", + "properties": { + "desiredState": { + "description": "Automatic tuning desired state.", + "enum": [ + "Custom", + "Auto", + "Unspecified" + ], + "type": "string", + "x-ms-enum": { + "name": "AutomaticTuningServerMode", + "modelAsString": false + } + }, + "actualState": { + "description": "Automatic tuning actual state.", + "enum": [ + "Custom", + "Auto", + "Unspecified" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "AutomaticTuningServerMode", + "modelAsString": false + } + }, + "options": { + "description": "Automatic tuning options definition.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/AutomaticTuningServerOptions" + } + } + } + }, + "AutomaticTuningServerOptions": { + "description": "Automatic tuning properties for individual advisors.", + "type": "object", + "properties": { + "desiredState": { + "description": "Automatic tuning option desired state.", + "enum": [ + "Off", + "On", + "Default" + ], + "type": "string", + "x-ms-enum": { + "name": "AutomaticTuningOptionModeDesired", + "modelAsString": false + } + }, + "actualState": { + "description": "Automatic tuning option actual state.", + "enum": [ + "Off", + "On" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "AutomaticTuningOptionModeActual", + "modelAsString": false + } + }, + "reasonCode": { + "format": "int32", + "description": "Reason code if desired and actual state are different.", + "type": "integer", + "readOnly": true + }, + "reasonDesc": { + "description": "Reason description if desired and actual state are different.", + "enum": [ + "Default", + "Disabled", + "AutoConfigured" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "AutomaticTuningServerReason", + "modelAsString": false + } + } + } + }, + "ServerAutomaticTuning": { + "description": "Server-level Automatic Tuning.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/AutomaticTuningServerProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ServerAzureADAdministrators.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ServerAzureADAdministrators.json new file mode 100644 index 000000000000..fbb5fcdeedd2 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ServerAzureADAdministrators.json @@ -0,0 +1,339 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/administrators/{administratorName}": { + "get": { + "tags": [ + "ServerAzureADAdministrators" + ], + "description": "Gets a Azure Active Directory administrator.", + "operationId": "ServerAzureADAdministrators_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "administratorName", + "in": "path", + "description": "The name of server active directory administrator.", + "required": true, + "type": "string", + "enum": [ + "ActiveDirectory" + ], + "x-ms-enum": { + "name": "AdministratorName", + "modelAsString": true + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved a specified Azure Active Directory administrator.", + "schema": { + "$ref": "#/definitions/ServerAzureADAdministrator" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidServerAdministratorTypePropertyName - Server active directory administrator type should be ActiveDirectory\n\n * 400 InvalidResourceRequestBody - The resource or resource properties in the request body is empty or invalid.\n\n * 400 InvalidServerAzureADOnlyAuthenticationParameter - User tried to set AzureADOnlyAuthentication parameter to false which is not allowed, please use azureADOnlyAuthentications API instead.\n\n * 400 InvalidServerAzureADAdminDeleteOperation - User tried to delete server Azure Active Azure admin when AzureADOnlyAuthentication is set, please use azureADOnlyAuthentications API first.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-examples": { + "Gets a Azure Active Directory administrator.": { + "$ref": "./examples/AdministratorGet.json" + } + } + }, + "put": { + "tags": [ + "ServerAzureADAdministrators" + ], + "description": "Creates or updates an existing Azure Active Directory administrator.", + "operationId": "ServerAzureADAdministrators_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "administratorName", + "in": "path", + "description": "The name of server active directory administrator.", + "required": true, + "type": "string", + "enum": [ + "ActiveDirectory" + ], + "x-ms-enum": { + "name": "AdministratorName", + "modelAsString": true + } + }, + { + "name": "parameters", + "in": "body", + "description": "The requested Azure Active Directory administrator Resource state.", + "required": true, + "schema": { + "$ref": "#/definitions/ServerAzureADAdministrator" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated a Azure Active Directory administrator.", + "schema": { + "$ref": "#/definitions/ServerAzureADAdministrator" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidServerAdministratorTypePropertyName - Server active directory administrator type should be ActiveDirectory\n\n * 400 InvalidResourceRequestBody - The resource or resource properties in the request body is empty or invalid.\n\n * 400 InvalidServerAzureADOnlyAuthenticationParameter - User tried to set AzureADOnlyAuthentication parameter to false which is not allowed, please use azureADOnlyAuthentications API instead.\n\n * 400 InvalidServerAzureADAdminDeleteOperation - User tried to delete server Azure Active Azure admin when AzureADOnlyAuthentication is set, please use azureADOnlyAuthentications API first.\n\n * 400 ServerAdministratorNameAlreadyExists - User tried to set the external admin and the principal name already exists in the 'master' database.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 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." + }, + "202": { + "description": "Accepted" + }, + "201": { + "description": "Successfully created a Azure Active Directory administrator.", + "schema": { + "$ref": "#/definitions/ServerAzureADAdministrator" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Creates or updates an existing Azure Active Directory administrator.": { + "$ref": "./examples/AdministratorCreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "ServerAzureADAdministrators" + ], + "description": "Deletes the Azure Active Directory administrator with the given name.", + "operationId": "ServerAzureADAdministrators_Delete", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "administratorName", + "in": "path", + "description": "The name of server active directory administrator.", + "required": true, + "type": "string", + "enum": [ + "ActiveDirectory" + ], + "x-ms-enum": { + "name": "AdministratorName", + "modelAsString": true + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the Azure Active Directory administrator." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidServerAdministratorTypePropertyName - Server active directory administrator type should be ActiveDirectory\n\n * 400 InvalidResourceRequestBody - The resource or resource properties in the request body is empty or invalid.\n\n * 400 InvalidServerAzureADOnlyAuthenticationParameter - User tried to set AzureADOnlyAuthentication parameter to false which is not allowed, please use azureADOnlyAuthentications API instead.\n\n * 400 InvalidServerAzureADAdminDeleteOperation - User tried to delete server Azure Active Azure admin when AzureADOnlyAuthentication is set, please use azureADOnlyAuthentications API first.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 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." + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "The specified Azure Active Directory administrator does not exist." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete Azure Active Directory administrator.": { + "$ref": "./examples/AdministratorDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/administrators": { + "get": { + "tags": [ + "ServerAzureADAdministrators" + ], + "description": "Gets a list of Azure Active Directory administrators in a server.", + "operationId": "ServerAzureADAdministrators_ListByServer", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of Azure Active Directory administrators.", + "schema": { + "$ref": "#/definitions/AdministratorListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidServerAdministratorTypePropertyName - Server active directory administrator type should be ActiveDirectory\n\n * 400 InvalidResourceRequestBody - The resource or resource properties in the request body is empty or invalid.\n\n * 400 InvalidServerAzureADOnlyAuthenticationParameter - User tried to set AzureADOnlyAuthentication parameter to false which is not allowed, please use azureADOnlyAuthentications API instead.\n\n * 400 InvalidServerAzureADAdminDeleteOperation - User tried to delete server Azure Active Azure admin when AzureADOnlyAuthentication is set, please use azureADOnlyAuthentications API first.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets a list of Azure Active Directory administrator.": { + "$ref": "./examples/AdministratorList.json" + } + } + } + } + }, + "definitions": { + "AdministratorProperties": { + "description": "Properties of a active directory administrator.", + "required": [ + "administratorType", + "login", + "sid" + ], + "type": "object", + "properties": { + "administratorType": { + "description": "Type of the sever administrator.", + "enum": [ + "ActiveDirectory" + ], + "type": "string", + "x-ms-enum": { + "name": "AdministratorType", + "modelAsString": true + } + }, + "login": { + "description": "Login name of the server administrator.", + "type": "string" + }, + "sid": { + "format": "uuid", + "description": "SID (object ID) of the server administrator.", + "type": "string" + }, + "tenantId": { + "format": "uuid", + "description": "Tenant ID of the administrator.", + "type": "string" + }, + "azureADOnlyAuthentication": { + "description": "Azure Active Directory only Authentication enabled.", + "type": "boolean", + "readOnly": true + } + } + }, + "ServerAzureADAdministrator": { + "description": "Azure Active Directory administrator.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/AdministratorProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "AdministratorListResult": { + "description": "A list of active directory administrators.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/ServerAzureADAdministrator" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ServerAzureADOnlyAuthentications.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ServerAzureADOnlyAuthentications.json new file mode 100644 index 000000000000..ee79321fd8d8 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ServerAzureADOnlyAuthentications.json @@ -0,0 +1,311 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/azureADOnlyAuthentications/{authenticationName}": { + "get": { + "tags": [ + "ServerAzureADOnlyAuthentications" + ], + "description": "Gets a specific Azure Active Directory only authentication property.", + "operationId": "ServerAzureADOnlyAuthentications_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "authenticationName", + "in": "path", + "description": "The name of server azure active directory only authentication.", + "required": true, + "type": "string", + "enum": [ + "Default" + ], + "x-ms-enum": { + "name": "AuthenticationName", + "modelAsString": true + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved a specified Azure Active Directory only authentication properties.", + "schema": { + "$ref": "#/definitions/ServerAzureADOnlyAuthentication" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidServerAzureADOnlyAuthenticationParameter - User tried to set AzureADOnlyAuthentication parameter to false which is not allowed, please use azureADOnlyAuthentications API instead.\n\n * 400 InvalidServerAADOnlyAuthTypePropertyName - Server Azure Active Directory only authentication type should be Default\n\n * 400 InvalidServerAADOnlyAuthNoAADAdminPropertyName - AAD Admin is not configured, AAD Admin must be set before enabling/disabling AAD Only Authentication.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-examples": { + "Gets a Azure Active Directory only authentication property.": { + "$ref": "./examples/AzureADOnlyAuthGet.json" + } + } + }, + "put": { + "tags": [ + "ServerAzureADOnlyAuthentications" + ], + "description": "Sets Server Active Directory only authentication property or updates an existing server Active Directory only authentication property.", + "operationId": "ServerAzureADOnlyAuthentications_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "authenticationName", + "in": "path", + "description": "The name of server azure active directory only authentication.", + "required": true, + "type": "string", + "enum": [ + "Default" + ], + "x-ms-enum": { + "name": "AuthenticationName", + "modelAsString": true + } + }, + { + "name": "parameters", + "in": "body", + "description": "The required parameters for creating or updating an Active Directory only authentication property.", + "required": true, + "schema": { + "$ref": "#/definitions/ServerAzureADOnlyAuthentication" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated a Azure Active Directory only authentication property.", + "schema": { + "$ref": "#/definitions/ServerAzureADOnlyAuthentication" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidServerAzureADOnlyAuthenticationParameter - User tried to set AzureADOnlyAuthentication parameter to false which is not allowed, please use azureADOnlyAuthentications API instead.\n\n * 400 InvalidServerAADOnlyAuthTypePropertyName - Server Azure Active Directory only authentication type should be Default\n\n * 400 InvalidServerAADOnlyAuthNoAADAdminPropertyName - AAD Admin is not configured, AAD Admin must be set before enabling/disabling AAD Only Authentication.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 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." + }, + "202": { + "description": "Accepted" + }, + "201": { + "description": "Successfully updated Azure Active Directory only authentication property.", + "schema": { + "$ref": "#/definitions/ServerAzureADOnlyAuthentication" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Creates or updates Azure Active Directory only authentication object.": { + "$ref": "./examples/AzureADOnlyAuthCreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "ServerAzureADOnlyAuthentications" + ], + "description": "Deletes an existing server Active Directory only authentication property.", + "operationId": "ServerAzureADOnlyAuthentications_Delete", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "authenticationName", + "in": "path", + "description": "The name of server azure active directory only authentication.", + "required": true, + "type": "string", + "enum": [ + "Default" + ], + "x-ms-enum": { + "name": "AuthenticationName", + "modelAsString": true + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the Azure Active Directory only property." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidServerAzureADOnlyAuthenticationParameter - User tried to set AzureADOnlyAuthentication parameter to false which is not allowed, please use azureADOnlyAuthentications API instead.\n\n * 400 InvalidServerAADOnlyAuthTypePropertyName - Server Azure Active Directory only authentication type should be Default\n\n * 400 InvalidServerAADOnlyAuthNoAADAdminPropertyName - AAD Admin is not configured, AAD Admin must be set before enabling/disabling AAD Only Authentication.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 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." + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "The specified Azure Active Directory only property does not exist." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Deletes Azure Active Directory only authentication object.": { + "$ref": "./examples/AzureADOnlyAuthDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/azureADOnlyAuthentications": { + "get": { + "tags": [ + "ServerAzureADOnlyAuthentications" + ], + "description": "Gets a list of server Azure Active Directory only authentications.", + "operationId": "ServerAzureADOnlyAuthentications_ListByServer", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of Azure Active Directory only authentication objects.", + "schema": { + "$ref": "#/definitions/AzureADOnlyAuthListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets a list of Azure Active Directory only authentication object.": { + "$ref": "./examples/AzureADOnlyAuthList.json" + } + } + } + } + }, + "definitions": { + "AzureADOnlyAuthProperties": { + "description": "Properties of a active directory only authentication.", + "required": [ + "azureADOnlyAuthentication" + ], + "type": "object", + "properties": { + "azureADOnlyAuthentication": { + "description": "Azure Active Directory only Authentication enabled.", + "type": "boolean" + } + } + }, + "ServerAzureADOnlyAuthentication": { + "description": "Azure Active Directory only authentication.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/AzureADOnlyAuthProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "AzureADOnlyAuthListResult": { + "description": "A list of active directory only authentications.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/ServerAzureADOnlyAuthentication" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ServerDevOpsAudit.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ServerDevOpsAudit.json new file mode 100644 index 000000000000..98f5516437e5 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ServerDevOpsAudit.json @@ -0,0 +1,277 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/devOpsAuditingSettings/{devOpsAuditingSettingsName}": { + "get": { + "tags": [ + "ServerDevOpsAudit" + ], + "description": "Gets a server's DevOps audit settings.", + "operationId": "ServerDevOpsAuditSettings_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "devOpsAuditingSettingsName", + "in": "path", + "description": "The name of the devops audit settings. This should always be 'default'.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the server DevOps audit settings.", + "schema": { + "$ref": "#/definitions/ServerDevOpsAuditingSettings" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + } + }, + "x-ms-examples": { + "Get a server's DevOps audit settings": { + "$ref": "./examples/ServerDevOpsAuditGet.json" + } + } + }, + "put": { + "tags": [ + "ServerDevOpsAudit" + ], + "description": "Creates or updates a server's DevOps audit settings.", + "operationId": "ServerDevOpsAuditSettings_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "devOpsAuditingSettingsName", + "in": "path", + "description": "The name of the devops audit settings. This should always be 'default'.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "Properties of DevOps audit settings", + "required": true, + "schema": { + "$ref": "#/definitions/ServerDevOpsAuditingSettings" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the DevOps audit settings.", + "schema": { + "$ref": "#/definitions/ServerDevOpsAuditingSettings" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidServerDevOpsAuditSettingsCreateRequest - The create server DevOps audit policy request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 InvalidServerDevOpsAuditSettingsName - Invalid server DevOps policy name.\n\n * 400 DevOpsAuditInvalidStorageAccountCredentials - The provided storage account or access key is not valid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 409 ServerDevOpsAuditSettingsInProgress - Set server DevOps audit is already in progress." + }, + "202": { + "description": "Updating the audit DevOps settings is in progress." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Update a server's DevOps audit settings with minimal input": { + "$ref": "./examples/ServerDevOpsAuditCreateMin.json" + }, + "Update a server's DevOps audit settings with all params": { + "$ref": "./examples/ServerDevOpsAuditCreateMax.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/devOpsAuditingSettings": { + "get": { + "tags": [ + "ServerDevOpsAudit" + ], + "description": "Lists DevOps audit settings of a server.", + "operationId": "ServerDevOpsAuditSettings_ListByServer", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved server DevOps audit settings.", + "schema": { + "$ref": "#/definitions/ServerDevOpsAuditSettingsListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List DevOps audit settings of a server": { + "$ref": "./examples/ServerDevOpsAuditSettingsList.json" + } + } + } + } + }, + "definitions": { + "ServerDevOpsAuditSettingsProperties": { + "description": "Properties of a server DevOps audit settings.", + "required": [ + "state" + ], + "type": "object", + "properties": { + "isAzureMonitorTargetEnabled": { + "description": "Specifies whether DevOps audit events are sent to Azure Monitor. \r\nIn order to send the events to Azure Monitor, specify 'State' as 'Enabled' and 'IsAzureMonitorTargetEnabled' as true.\r\n\r\nWhen using REST API to configure DevOps audit, Diagnostic Settings with 'DevOpsOperationsAudit' diagnostic logs category on the master database should be also created.\r\n\r\nDiagnostic Settings URI format:\r\nPUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Sql/servers/{serverName}/databases/master/providers/microsoft.insights/diagnosticSettings/{settingsName}?api-version=2017-05-01-preview\r\n\r\nFor more information, see [Diagnostic Settings REST API](https://go.microsoft.com/fwlink/?linkid=2033207)\r\nor [Diagnostic Settings PowerShell](https://go.microsoft.com/fwlink/?linkid=2033043)\r\n", + "type": "boolean" + }, + "state": { + "description": "Specifies the state of the audit. If state is Enabled, storageEndpoint or isAzureMonitorTargetEnabled are required.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "BlobAuditingPolicyState", + "modelAsString": false + } + }, + "storageEndpoint": { + "description": "Specifies the blob storage endpoint (e.g. https://MyAccount.blob.core.windows.net). If state is Enabled, storageEndpoint or isAzureMonitorTargetEnabled is required.", + "type": "string" + }, + "storageAccountAccessKey": { + "description": "Specifies the identifier key of the auditing storage account. \r\nIf state is Enabled and storageEndpoint is specified, not specifying the storageAccountAccessKey will use SQL server system-assigned managed identity to access the storage.\r\nPrerequisites for using managed identity authentication:\r\n1. Assign SQL Server a system-assigned managed identity in Azure Active Directory (AAD).\r\n2. Grant SQL Server identity access to the storage account by adding 'Storage Blob Data Contributor' RBAC role to the server identity.\r\nFor more information, see [Auditing to storage using Managed Identity authentication](https://go.microsoft.com/fwlink/?linkid=2114355)", + "type": "string", + "x-ms-secret": true, + "x-ms-mutability": [ + "create", + "update" + ] + }, + "storageAccountSubscriptionId": { + "format": "uuid", + "description": "Specifies the blob storage subscription Id.", + "type": "string" + } + } + }, + "ServerDevOpsAuditingSettings": { + "description": "A server DevOps auditing settings.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "systemData": { + "$ref": "../../../common/v1/types.json#/definitions/systemData", + "description": "SystemData of ServerDevOpsAuditSettingsResource.", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/ServerDevOpsAuditSettingsProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "ServerDevOpsAuditSettingsListResult": { + "description": "A list of server DevOps audit settings.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/ServerDevOpsAuditingSettings" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ServerDnsAliases.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ServerDnsAliases.json new file mode 100644 index 000000000000..9509a07f76c2 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ServerDnsAliases.json @@ -0,0 +1,361 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/dnsAliases/{dnsAliasName}": { + "get": { + "tags": [ + "ServerDnsAliases" + ], + "description": "Gets a server DNS alias.", + "operationId": "ServerDnsAliases_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "serverName", + "in": "path", + "description": "The name of the server that the alias is pointing to.", + "required": true, + "type": "string" + }, + { + "name": "dnsAliasName", + "in": "path", + "description": "The name of the server dns alias.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the specified server DNS alias.", + "schema": { + "$ref": "#/definitions/ServerDnsAlias" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidServerDnsAliasAcquireRequest - The acquire server DNS alias request body is empty or invalid (it should contain the old server alias id, for example: /subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/dns-alias-old-server/dnsAliases/dns-alias-name-1).\n\n * 400 ServerDnsAliasAcquireRequestInvalidOldServerDnsAliasId - The old server DNS alias id in request body is empty or invalid (it should have the form: /subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/dns-alias-old-server/dnsAliases/dns-alias-name-1).\n\n * 400 ServerDnsAliasDoesNotExist - Server DNS Alias does not exist on a server.\n\n * 400 UnableToTurnOnTableAuditingForDbOnServerWithServerDnsAlias - Server Dns Aliases are not working correctly for database that has Table Auditing turned on\n\n * 400 UnableToCreateServerDnsAliasDueToTableAuditing - The Server DNS Alias cannot be created for server that has table auditing turned on.\n\n * 400 UnableToCreateServerDnsAliasDueToTableAuditingForDb - Server DNS Alias cannot be created for server '{0}' because database '{1}' has Table Auditing or Security Enabled Access feature enabled.\n\n * 400 LimitOfServerDnsAliasesPerServerExceeded - Creating new Server Dns Alias will exceed the allowed number of Server DNS Aliases per server.\n\n * 400 UnableToTurnOnTableAuditingForServerWithServerDnsAlias - Server Dns Aliases are not working correctly for server that has Table Auditing turned on\n\n * 400 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 TokenTooLong - The provided token is too long.\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 InvalidServerName - Invalid server name specified.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 InvalidServerDnsAliasName - Invalid Server DNS Alias name was supplied.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found.\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 * 409 ServerDnsAliasBusy - Server DNS Alias is busy with another operation.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ServerDnsAliasDnsRecordInUse - A duplicate DNS record exists for the requested endpoint.\n\n * 409 ServerDnsAliasAlreadyExists - Server DNS Alias already exists on a given server.\n\n * 409 ConflictingServerOperation - An operation is currently in progress for the 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 * 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": { + "Get server DNS alias": { + "$ref": "./examples/ServerDnsAliasGet.json" + } + } + }, + "put": { + "tags": [ + "ServerDnsAliases" + ], + "description": "Creates a server DNS alias.", + "operationId": "ServerDnsAliases_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "serverName", + "in": "path", + "description": "The name of the server that the alias is pointing to.", + "required": true, + "type": "string" + }, + { + "name": "dnsAliasName", + "in": "path", + "description": "The name of the server dns alias.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The server DNS alias already exists.", + "schema": { + "$ref": "#/definitions/ServerDnsAlias" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidServerDnsAliasAcquireRequest - The acquire server DNS alias request body is empty or invalid (it should contain the old server alias id, for example: /subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/dns-alias-old-server/dnsAliases/dns-alias-name-1).\n\n * 400 ServerDnsAliasAcquireRequestInvalidOldServerDnsAliasId - The old server DNS alias id in request body is empty or invalid (it should have the form: /subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/dns-alias-old-server/dnsAliases/dns-alias-name-1).\n\n * 400 ServerDnsAliasDoesNotExist - Server DNS Alias does not exist on a server.\n\n * 400 UnableToTurnOnTableAuditingForDbOnServerWithServerDnsAlias - Server Dns Aliases are not working correctly for database that has Table Auditing turned on\n\n * 400 UnableToCreateServerDnsAliasDueToTableAuditing - The Server DNS Alias cannot be created for server that has table auditing turned on.\n\n * 400 UnableToCreateServerDnsAliasDueToTableAuditingForDb - Server DNS Alias cannot be created for server '{0}' because database '{1}' has Table Auditing or Security Enabled Access feature enabled.\n\n * 400 LimitOfServerDnsAliasesPerServerExceeded - Creating new Server Dns Alias will exceed the allowed number of Server DNS Aliases per server.\n\n * 400 UnableToTurnOnTableAuditingForServerWithServerDnsAlias - Server Dns Aliases are not working correctly for server that has Table Auditing turned on\n\n * 400 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 TokenTooLong - The provided token is too long.\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 InvalidServerName - Invalid server name specified.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 InvalidServerDnsAliasName - Invalid Server DNS Alias name was supplied.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found.\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 * 409 ServerDnsAliasBusy - Server DNS Alias is busy with another operation.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ServerDnsAliasDnsRecordInUse - A duplicate DNS record exists for the requested endpoint.\n\n * 409 ServerDnsAliasAlreadyExists - Server DNS Alias already exists on a given server.\n\n * 409 ConflictingServerOperation - An operation is currently in progress for the 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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + }, + "202": { + "description": "Accepted" + }, + "201": { + "description": "Successfully created a server DNS alias.", + "schema": { + "$ref": "#/definitions/ServerDnsAlias" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create server DNS alias": { + "$ref": "./examples/ServerDnsAliasCreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "ServerDnsAliases" + ], + "description": "Deletes the server DNS alias with the given name.", + "operationId": "ServerDnsAliases_Delete", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "serverName", + "in": "path", + "description": "The name of the server that the alias is pointing to.", + "required": true, + "type": "string" + }, + { + "name": "dnsAliasName", + "in": "path", + "description": "The name of the server dns alias.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the server DNS alias." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidServerDnsAliasAcquireRequest - The acquire server DNS alias request body is empty or invalid (it should contain the old server alias id, for example: /subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/dns-alias-old-server/dnsAliases/dns-alias-name-1).\n\n * 400 ServerDnsAliasAcquireRequestInvalidOldServerDnsAliasId - The old server DNS alias id in request body is empty or invalid (it should have the form: /subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/dns-alias-old-server/dnsAliases/dns-alias-name-1).\n\n * 400 ServerDnsAliasDoesNotExist - Server DNS Alias does not exist on a server.\n\n * 400 UnableToTurnOnTableAuditingForDbOnServerWithServerDnsAlias - Server Dns Aliases are not working correctly for database that has Table Auditing turned on\n\n * 400 UnableToCreateServerDnsAliasDueToTableAuditing - The Server DNS Alias cannot be created for server that has table auditing turned on.\n\n * 400 UnableToCreateServerDnsAliasDueToTableAuditingForDb - Server DNS Alias cannot be created for server '{0}' because database '{1}' has Table Auditing or Security Enabled Access feature enabled.\n\n * 400 LimitOfServerDnsAliasesPerServerExceeded - Creating new Server Dns Alias will exceed the allowed number of Server DNS Aliases per server.\n\n * 400 UnableToTurnOnTableAuditingForServerWithServerDnsAlias - Server Dns Aliases are not working correctly for server that has Table Auditing turned on\n\n * 400 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 TokenTooLong - The provided token is too long.\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 InvalidServerName - Invalid server name specified.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 InvalidServerDnsAliasName - Invalid Server DNS Alias name was supplied.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found.\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 * 409 ServerDnsAliasBusy - Server DNS Alias is busy with another operation.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ServerDnsAliasDnsRecordInUse - A duplicate DNS record exists for the requested endpoint.\n\n * 409 ServerDnsAliasAlreadyExists - Server DNS Alias already exists on a given server.\n\n * 409 ConflictingServerOperation - An operation is currently in progress for the 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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "The specified server DNS alias does not exist." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete server DNS alias": { + "$ref": "./examples/ServerDnsAliasDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/dnsAliases": { + "get": { + "tags": [ + "ServerDnsAliases" + ], + "description": "Gets a list of server DNS aliases for a server.", + "operationId": "ServerDnsAliases_ListByServer", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "serverName", + "in": "path", + "description": "The name of the server that the alias is pointing to.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of server DNS aliases.", + "schema": { + "$ref": "#/definitions/ServerDnsAliasListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidServerDnsAliasAcquireRequest - The acquire server DNS alias request body is empty or invalid (it should contain the old server alias id, for example: /subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/dns-alias-old-server/dnsAliases/dns-alias-name-1).\n\n * 400 ServerDnsAliasAcquireRequestInvalidOldServerDnsAliasId - The old server DNS alias id in request body is empty or invalid (it should have the form: /subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/dns-alias-old-server/dnsAliases/dns-alias-name-1).\n\n * 400 ServerDnsAliasDoesNotExist - Server DNS Alias does not exist on a server.\n\n * 400 UnableToTurnOnTableAuditingForDbOnServerWithServerDnsAlias - Server Dns Aliases are not working correctly for database that has Table Auditing turned on\n\n * 400 UnableToCreateServerDnsAliasDueToTableAuditing - The Server DNS Alias cannot be created for server that has table auditing turned on.\n\n * 400 UnableToCreateServerDnsAliasDueToTableAuditingForDb - Server DNS Alias cannot be created for server '{0}' because database '{1}' has Table Auditing or Security Enabled Access feature enabled.\n\n * 400 LimitOfServerDnsAliasesPerServerExceeded - Creating new Server Dns Alias will exceed the allowed number of Server DNS Aliases per server.\n\n * 400 UnableToTurnOnTableAuditingForServerWithServerDnsAlias - Server Dns Aliases are not working correctly for server that has Table Auditing turned on\n\n * 400 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 TokenTooLong - The provided token is too long.\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 InvalidServerName - Invalid server name specified.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 InvalidServerDnsAliasName - Invalid Server DNS Alias name was supplied.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found.\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 * 409 ServerDnsAliasBusy - Server DNS Alias is busy with another operation.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ServerDnsAliasDnsRecordInUse - A duplicate DNS record exists for the requested endpoint.\n\n * 409 ServerDnsAliasAlreadyExists - Server DNS Alias already exists on a given server.\n\n * 409 ConflictingServerOperation - An operation is currently in progress for the 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 * 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 server DNS aliases": { + "$ref": "./examples/ServerDnsAliasList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/dnsAliases/{dnsAliasName}/acquire": { + "post": { + "tags": [ + "ServerDnsAliases" + ], + "description": "Acquires server DNS alias from another server.", + "operationId": "ServerDnsAliases_Acquire", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "serverName", + "in": "path", + "description": "The name of the server that the alias is pointing to.", + "required": true, + "type": "string" + }, + { + "name": "dnsAliasName", + "in": "path", + "description": "The name of the server dns alias.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ServerDnsAliasAcquisition" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully acquired server DNS alias.", + "schema": { + "$ref": "#/definitions/ServerDnsAlias" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidServerDnsAliasAcquireRequest - The acquire server DNS alias request body is empty or invalid (it should contain the old server alias id, for example: /subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/dns-alias-old-server/dnsAliases/dns-alias-name-1).\n\n * 400 ServerDnsAliasAcquireRequestInvalidOldServerDnsAliasId - The old server DNS alias id in request body is empty or invalid (it should have the form: /subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/dns-alias-old-server/dnsAliases/dns-alias-name-1).\n\n * 400 ServerDnsAliasDoesNotExist - Server DNS Alias does not exist on a server.\n\n * 400 UnableToTurnOnTableAuditingForDbOnServerWithServerDnsAlias - Server Dns Aliases are not working correctly for database that has Table Auditing turned on\n\n * 400 UnableToCreateServerDnsAliasDueToTableAuditing - The Server DNS Alias cannot be created for server that has table auditing turned on.\n\n * 400 UnableToCreateServerDnsAliasDueToTableAuditingForDb - Server DNS Alias cannot be created for server '{0}' because database '{1}' has Table Auditing or Security Enabled Access feature enabled.\n\n * 400 LimitOfServerDnsAliasesPerServerExceeded - Creating new Server Dns Alias will exceed the allowed number of Server DNS Aliases per server.\n\n * 400 UnableToTurnOnTableAuditingForServerWithServerDnsAlias - Server Dns Aliases are not working correctly for server that has Table Auditing turned on\n\n * 400 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 TokenTooLong - The provided token is too long.\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 InvalidServerName - Invalid server name specified.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 InvalidServerDnsAliasName - Invalid Server DNS Alias name was supplied.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ResourceNotFound - The requested resource was not found.\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 * 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 ServerDnsAliasBusy - Server DNS Alias is busy with another operation.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ServerDnsAliasDnsRecordInUse - A duplicate DNS record exists for the requested endpoint.\n\n * 409 ServerDnsAliasAlreadyExists - Server DNS Alias already exists on a given server.\n\n * 409 ConflictingServerOperation - An operation is currently in progress for the 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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Acquire server DNS alias": { + "$ref": "./examples/ServerDnsAliasAcquire.json" + } + } + } + } + }, + "definitions": { + "ServerDnsAliasProperties": { + "description": "Properties of a server DNS alias.", + "type": "object", + "properties": { + "azureDnsRecord": { + "description": "The fully qualified DNS record for alias", + "type": "string", + "readOnly": true + } + } + }, + "ServerDnsAlias": { + "description": "A server DNS alias.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ServerDnsAliasProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "ServerDnsAliasListResult": { + "description": "A list of server DNS aliases.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/ServerDnsAlias" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "ServerDnsAliasAcquisition": { + "description": "A server dns alias acquisition request.", + "required": [ + "oldServerDnsAliasId" + ], + "type": "object", + "properties": { + "oldServerDnsAliasId": { + "description": "The id of the server alias that will be acquired to point to this server instead.", + "type": "string" + } + } + } + }, + "parameters": {}, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ServerKeys.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ServerKeys.json new file mode 100644 index 000000000000..5caad3fb5ba3 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ServerKeys.json @@ -0,0 +1,339 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/keys": { + "get": { + "tags": [ + "ServerKeys" + ], + "description": "Gets a list of server keys.", + "operationId": "ServerKeys_ListByServer", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of server keys.", + "schema": { + "$ref": "#/definitions/ServerKeyListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidKeyName - An invalid value was given for the server key name.\n\n * 400 InvalidKeyType - The create server key type is not supported.\n\n * 400 InvalidUpsertKeyType - Service-managed TDE keys are managed by the service. Service-managed TDE keys don't support Create or Update by the user.\n\n * 400 InvalidKeyUpsertRequest - The create server key request does not exist or has no properties object.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List the server keys by server": { + "$ref": "./examples/ServerKeyList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/keys/{keyName}": { + "get": { + "tags": [ + "ServerKeys" + ], + "description": "Gets a server key.", + "operationId": "ServerKeys_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "keyName", + "in": "path", + "description": "The name of the server key to be retrieved.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the specified server key.", + "schema": { + "$ref": "#/definitions/ServerKey" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidKeyName - An invalid value was given for the server key name.\n\n * 400 InvalidKeyType - The create server key type is not supported.\n\n * 400 InvalidUpsertKeyType - Service-managed TDE keys are managed by the service. Service-managed TDE keys don't support Create or Update by the user.\n\n * 400 InvalidKeyUpsertRequest - The create server key request does not exist or has no properties object.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-examples": { + "Get the server key": { + "$ref": "./examples/ServerKeyGet.json" + } + } + }, + "put": { + "tags": [ + "ServerKeys" + ], + "description": "Creates or updates a server key.", + "operationId": "ServerKeys_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "keyName", + "in": "path", + "description": "The name of the server key to be operated on (updated or created). The key name is required to be in the format of 'vault_key_version'. For example, if the keyId is https://YourVaultName.vault.azure.net/keys/YourKeyName/YourKeyVersion, then the server key name should be formatted as: YourVaultName_YourKeyName_YourKeyVersion", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The requested server key resource state.", + "required": true, + "schema": { + "$ref": "#/definitions/ServerKey" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the server key.", + "schema": { + "$ref": "#/definitions/ServerKey" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidKeyName - An invalid value was given for the server key name.\n\n * 400 InvalidKeyType - The create server key type is not supported.\n\n * 400 InvalidUpsertKeyType - Service-managed TDE keys are managed by the service. Service-managed TDE keys don't support Create or Update by the user.\n\n * 400 InvalidKeyUpsertRequest - The create server key request does not exist or has no properties object.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\n\n * 400 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 400 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\n\n * 400 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 400 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information ." + }, + "202": { + "description": "Accepted" + }, + "201": { + "description": "Successfully created the server key.", + "schema": { + "$ref": "#/definitions/ServerKey" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Creates or updates a server key": { + "$ref": "./examples/ServerKeyCreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "ServerKeys" + ], + "description": "Deletes the server key with the given name.", + "operationId": "ServerKeys_Delete", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "keyName", + "in": "path", + "description": "The name of the server key to be deleted.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the server key." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidKeyName - An invalid value was given for the server key name.\n\n * 400 InvalidKeyType - The create server key type is not supported.\n\n * 400 InvalidUpsertKeyType - Service-managed TDE keys are managed by the service. Service-managed TDE keys don't support Create or Update by the user.\n\n * 400 InvalidKeyUpsertRequest - The create server key request does not exist or has no properties object.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\n\n * 400 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 400 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information ." + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "The specified server key does not exist." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete the server key": { + "$ref": "./examples/ServerKeyDelete.json" + } + } + } + } + }, + "definitions": { + "ServerKeyListResult": { + "description": "A list of server keys.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/ServerKey" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "ServerKeyProperties": { + "description": "Properties for a server key execution.", + "required": [ + "serverKeyType" + ], + "type": "object", + "properties": { + "subregion": { + "description": "Subregion of the server key.", + "type": "string", + "readOnly": true + }, + "serverKeyType": { + "description": "The server key type like 'ServiceManaged', 'AzureKeyVault'.", + "enum": [ + "ServiceManaged", + "AzureKeyVault" + ], + "type": "string", + "x-ms-enum": { + "name": "ServerKeyType", + "modelAsString": true + }, + "x-ms-mutability": [ + "create" + ] + }, + "uri": { + "description": "The URI of the server key. If the ServerKeyType is AzureKeyVault, then the URI is required.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "thumbprint": { + "description": "Thumbprint of the server key.", + "type": "string", + "readOnly": true + }, + "creationDate": { + "format": "date-time", + "description": "The server key creation date.", + "type": "string", + "readOnly": true + }, + "autoRotationEnabled": { + "description": "Key auto rotation opt-in flag. Either true or false.", + "type": "boolean", + "readOnly": true + } + } + }, + "ServerKey": { + "description": "A server key.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "kind": { + "description": "Kind of encryption protector. This is metadata used for the Azure portal experience.", + "type": "string", + "readOnly": true + }, + "location": { + "description": "Resource location.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/ServerKeyProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ServerOperations.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ServerOperations.json new file mode 100644 index 000000000000..ee22b61ef1e2 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ServerOperations.json @@ -0,0 +1,208 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/operations": { + "get": { + "tags": [ + "ServerOperations" + ], + "description": "Gets a list of operations performed on the server.", + "operationId": "ServerOperations_ListByServer", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The request for getting server operations has been executed successfully.", + "schema": { + "$ref": "#/definitions/ServerOperationListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 PECsNotExistingToDenyPublicNetworkAccess - Unable to set Deny Public Network Access to Yes since there is no private endpoint enabled to access the server. Please set up private endpoints and retry the operation (https://docs.microsoft.com/azure/sql-database/sql-database-private-endpoint-overview#how-to-set-up-private-link-for-azure-sql-database).\n\n * 400 NameAlreadyExists - The provided name already exists.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 InvalidLoginName - The provided login name is invalid.\n\n * 400 InvalidUsername - Supplied user name contains invalid characters.\n\n * 400 PasswordTooShort - The provided password is too short\n\n * 400 AadOnlyAuthenticationIsEnabled - Azure Active Directory Only Authentication is enabled. Please contact your system administrator.\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 PasswordTooLong - The provided password is too long.\n\n * 400 PasswordNotComplex - The provided password is not complex enough.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 InvalidLocation - An invalid location was specified.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 RegionDoesNotAllowProvisioning - The selected location is not accepting new Windows Azure SQL Database servers. This may change at a later time.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 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 UpsertLogicalServerRequestAlreadyInProgress - An ongoing logical server request is already in progress, please try your request again later.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ServerQuotaExceeded - Server cannot be added to a subscription because it will exceed quota.\n\n * 409 ServerAlreadyExists - Duplicate server name.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 DropLogicalServerAlreadyInProgress - Server is already being dropped.\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 * 429 ConflictingSubscriptionOperation - An operation is currently in progress for the subscription.\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 * 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." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List the server management operations": { + "$ref": "./examples/ListServerOperations.json" + } + } + } + } + }, + "definitions": { + "ServerOperationListResult": { + "description": "The response to a list server operations request", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/ServerOperation" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "ServerOperationProperties": { + "description": "The properties of a server operation.", + "type": "object", + "properties": { + "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 + } + } + }, + "ServerOperation": { + "description": "A server operation.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ServerOperationProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ServerSecurityAlertPolicies.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ServerSecurityAlertPolicies.json new file mode 100644 index 000000000000..9c3a7455c0a3 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ServerSecurityAlertPolicies.json @@ -0,0 +1,303 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/securityAlertPolicies/{securityAlertPolicyName}": { + "get": { + "tags": [ + "ServerSecurityAlertPolicies" + ], + "description": "Get a server's security alert policy.", + "operationId": "ServerSecurityAlertPolicies_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "securityAlertPolicyName", + "in": "path", + "description": "The name of the security alert policy.", + "required": true, + "type": "string", + "enum": [ + "Default" + ], + "x-ms-enum": { + "name": "SecurityAlertPolicyName", + "modelAsString": true + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the server threat detection policy.", + "schema": { + "$ref": "#/definitions/ServerSecurityAlertPolicy" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 SecurityAlertPoliciesInvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 SecurityAlertPoliciesInvalidStorageAccountCredentials - The provided storage account access key is not valid.\n\n * 400 UpdateNotAllowedOnServerContainingPausedDWDatabase - Setting server Threat Detection settings is not allowed on a server with a paused Data Warehouse database\n\n * 400 SecurityAlertPoliciesInsufficientDiskSpace - Insufficient disk space to save security alert policy metadata in the database\n\n * 400 SecurityAlertPoliciesInsufficientStorageAccountPermissions - Insufficient read or write permissions on the provided storage account.\n\n * 400 SecurityAlertPoliciesStorageAccountIsDisabled - The storage account provided in the threat detection policy is disabled.\n\n * 400 InvalidServerSecurityAlertPolicyCreateRequest - The create server Threat Detection security alert policy request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 400 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 409 ServerSecurityAlertPolicyInProgress - Set server security alert policy is already in progress\n\n * 409 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later.\n\n * 500 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 500 GetServerSecurityAlertPolicyFailed - Failed to get Threat Detection settings" + } + }, + "x-ms-examples": { + "Get a server's threat detection policy": { + "$ref": "./examples/ServerSecurityAlertsGet.json" + } + } + }, + "put": { + "tags": [ + "ServerSecurityAlertPolicies" + ], + "description": "Creates or updates a threat detection policy.", + "operationId": "ServerSecurityAlertPolicies_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "securityAlertPolicyName", + "in": "path", + "description": "The name of the threat detection policy.", + "required": true, + "type": "string", + "enum": [ + "Default" + ], + "x-ms-enum": { + "name": "SecurityAlertPolicyName", + "modelAsString": true + } + }, + { + "name": "parameters", + "in": "body", + "description": "The server security alert policy.", + "required": true, + "schema": { + "$ref": "#/definitions/ServerSecurityAlertPolicy" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the threat detection policy.", + "schema": { + "$ref": "#/definitions/ServerSecurityAlertPolicy" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 SecurityAlertPoliciesInvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 SecurityAlertPoliciesInvalidStorageAccountCredentials - The provided storage account access key is not valid.\n\n * 400 UpdateNotAllowedOnServerContainingPausedDWDatabase - Setting server Threat Detection settings is not allowed on a server with a paused Data Warehouse database\n\n * 400 SecurityAlertPoliciesInsufficientDiskSpace - Insufficient disk space to save security alert policy metadata in the database\n\n * 400 SecurityAlertPoliciesInsufficientStorageAccountPermissions - Insufficient read or write permissions on the provided storage account.\n\n * 400 SecurityAlertPoliciesStorageAccountIsDisabled - The storage account provided in the threat detection policy is disabled.\n\n * 400 InvalidServerSecurityAlertPolicyCreateRequest - The create server Threat Detection security alert policy request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 400 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 409 ServerSecurityAlertPolicyInProgress - Set server security alert policy is already in progress\n\n * 409 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later.\n\n * 500 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 500 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later" + }, + "202": { + "description": "Created request to set the server threat detection policy." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update a server's threat detection policy with minimal parameters": { + "$ref": "./examples/ServerSecurityAlertsCreateMin.json" + }, + "Update a server's threat detection policy with all parameters": { + "$ref": "./examples/ServerSecurityAlertsCreateMax.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/securityAlertPolicies": { + "get": { + "tags": [ + "ServerSecurityAlertPolicies" + ], + "description": "Get the server's threat detection policies.", + "operationId": "ServerSecurityAlertPolicies_ListByServer", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the server threat detection policies.", + "schema": { + "$ref": "#/definitions/LogicalServerSecurityAlertPolicyListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 SecurityAlertPoliciesInvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 SecurityAlertPoliciesInvalidStorageAccountCredentials - The provided storage account access key is not valid.\n\n * 400 UpdateNotAllowedOnServerContainingPausedDWDatabase - Setting server Threat Detection settings is not allowed on a server with a paused Data Warehouse database\n\n * 400 SecurityAlertPoliciesInsufficientDiskSpace - Insufficient disk space to save security alert policy metadata in the database\n\n * 400 SecurityAlertPoliciesInsufficientStorageAccountPermissions - Insufficient read or write permissions on the provided storage account.\n\n * 400 SecurityAlertPoliciesStorageAccountIsDisabled - The storage account provided in the threat detection policy is disabled.\n\n * 400 InvalidServerSecurityAlertPolicyCreateRequest - The create server Threat Detection security alert policy request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 400 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 409 ServerSecurityAlertPolicyInProgress - Set server security alert policy is already in progress\n\n * 409 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later.\n\n * 500 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 500 GetServerSecurityAlertPolicyFailed - Failed to get Threat Detection settings" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List the server's threat detection policies": { + "$ref": "./examples/ServerSecurityAlertsListByServer.json" + } + } + } + } + }, + "definitions": { + "SecurityAlertsPolicyProperties": { + "description": "Properties of a security alert policy.", + "required": [ + "state" + ], + "type": "object", + "properties": { + "state": { + "description": "Specifies the state of the policy, whether it is enabled or disabled or a policy has not been applied yet on the specific database.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "SecurityAlertsPolicyState", + "modelAsString": false + } + }, + "disabledAlerts": { + "description": "Specifies an array of alerts that are disabled. Allowed values are: Sql_Injection, Sql_Injection_Vulnerability, Access_Anomaly, Data_Exfiltration, Unsafe_Action, Brute_Force", + "type": "array", + "items": { + "type": "string" + } + }, + "emailAddresses": { + "description": "Specifies an array of e-mail addresses to which the alert is sent.", + "type": "array", + "items": { + "type": "string" + } + }, + "emailAccountAdmins": { + "description": "Specifies that the alert is sent to the account administrators.", + "type": "boolean" + }, + "storageEndpoint": { + "description": "Specifies the blob storage endpoint (e.g. https://MyAccount.blob.core.windows.net). This blob storage will hold all Threat Detection audit logs.", + "type": "string" + }, + "storageAccountAccessKey": { + "description": "Specifies the identifier key of the Threat Detection audit storage account.", + "type": "string" + }, + "retentionDays": { + "format": "int32", + "description": "Specifies the number of days to keep in the Threat Detection audit logs.", + "type": "integer" + }, + "creationTime": { + "format": "date-time", + "description": "Specifies the UTC creation time of the policy.", + "type": "string", + "readOnly": true + } + } + }, + "ServerSecurityAlertPolicy": { + "description": "A server security alert policy.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "systemData": { + "$ref": "../../../common/v1/types.json#/definitions/systemData", + "description": "SystemData of SecurityAlertPolicyResource.", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/SecurityAlertsPolicyProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "LogicalServerSecurityAlertPolicyListResult": { + "description": "A list of the server's security alert policies.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/ServerSecurityAlertPolicy" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ServerTrustGroups.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ServerTrustGroups.json new file mode 100644 index 000000000000..76e32f63e18b --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ServerTrustGroups.json @@ -0,0 +1,376 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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/locations/{locationName}/serverTrustGroups/{serverTrustGroupName}": { + "get": { + "tags": [ + "ServerTrustGroups" + ], + "description": "Gets a server trust group.", + "operationId": "ServerTrustGroups_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "locationName", + "in": "path", + "description": "The name of the region where the resource is located.", + "required": true, + "type": "string" + }, + { + "name": "serverTrustGroupName", + "in": "path", + "description": "The name of the server trust group.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the the specified server trust group.", + "schema": { + "$ref": "#/definitions/ServerTrustGroup" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-examples": { + "Get server trust group": { + "$ref": "./examples/ServerTrustGroupGet.json" + } + } + }, + "put": { + "tags": [ + "ServerTrustGroups" + ], + "description": "Creates or updates a server trust group.", + "operationId": "ServerTrustGroups_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "locationName", + "in": "path", + "description": "The name of the region where the resource is located.", + "required": true, + "type": "string" + }, + { + "name": "serverTrustGroupName", + "in": "path", + "description": "The name of the server trust group.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The server trust group parameters.", + "required": true, + "schema": { + "$ref": "#/definitions/ServerTrustGroup" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the server trust group.", + "schema": { + "$ref": "#/definitions/ServerTrustGroup" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 ServerTrustGroupCreateRequestInvalid - The resource or resource properties in the request body is empty or invalid\n\n * 400 ServerTrustGroupCreateRequestInvalidGroupMembers - The group members property in the request body is empty or invalid\n\n * 400 ServerTrustGroupCreateRequestInvalidGroupMembersCount - The group members property has an invalid number of servers\n\n * 400 ServerTrustGroupCreateRequestInvalidServer - The given serverId field in create server trust group request body is empty or invalid\n\n * 400 ServerTrustGroupCreateRequestDuplicateServer - One or more of the provided servers are duplicates.\n\n * 400 ServerTrustGroupCreateRequestInvalidTrustScopes - The trust scope property in the request body is empty or invalid.\n\n * 400 ServerTrustGroupCreateRequestInvalidTrustScopesValue - The trust scope property in the request body has an invalid value.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ResourceNotFound - The requested resource was not found.\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." + }, + "202": { + "description": "Accepted" + }, + "201": { + "description": "Successfully created the server trust group.", + "schema": { + "$ref": "#/definitions/ServerTrustGroup" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create server trust group": { + "$ref": "./examples/ServerTrustGroupCreate.json" + } + } + }, + "delete": { + "tags": [ + "ServerTrustGroups" + ], + "description": "Deletes a server trust group.", + "operationId": "ServerTrustGroups_Delete", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "locationName", + "in": "path", + "description": "The name of the region where the resource is located.", + "required": true, + "type": "string" + }, + { + "name": "serverTrustGroupName", + "in": "path", + "description": "The name of the server trust group.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the server trust group." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 ServerTrustGroupCreateRequestInvalid - The resource or resource properties in the request body is empty or invalid\n\n * 400 ServerTrustGroupCreateRequestInvalidGroupMembers - The group members property in the request body is empty or invalid\n\n * 400 ServerTrustGroupCreateRequestInvalidGroupMembersCount - The group members property has an invalid number of servers\n\n * 400 ServerTrustGroupCreateRequestInvalidServer - The given serverId field in create server trust group request body is empty or invalid\n\n * 400 ServerTrustGroupCreateRequestDuplicateServer - One or more of the provided servers are duplicates.\n\n * 400 ServerTrustGroupCreateRequestInvalidTrustScopes - The trust scope property in the request body is empty or invalid.\n\n * 400 ServerTrustGroupCreateRequestInvalidTrustScopesValue - The trust scope property in the request body has an invalid value.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ResourceNotFound - The requested resource was not found.\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." + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "The specified server trust group does not exist." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Drop server trust group": { + "$ref": "./examples/ServerTrustGroupDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/locations/{locationName}/serverTrustGroups": { + "get": { + "tags": [ + "ServerTrustGroups" + ], + "description": "Lists a server trust group.", + "operationId": "ServerTrustGroups_ListByLocation", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "locationName", + "in": "path", + "description": "The name of the region where the resource is located.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the server trust groups.", + "schema": { + "$ref": "#/definitions/ServerTrustGroupListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List server trust groups": { + "$ref": "./examples/ServerTrustGroupList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/serverTrustGroups": { + "get": { + "tags": [ + "ServerTrustGroups" + ], + "description": "Gets a server trust groups by instance name.", + "operationId": "ServerTrustGroups_ListByInstance", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the server trust groups.", + "schema": { + "$ref": "#/definitions/ServerTrustGroupListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List server trust groups by managed instance": { + "$ref": "./examples/ServerTrustGroupListByManagedInstance.json" + } + } + } + } + }, + "definitions": { + "ServerTrustGroupProperties": { + "description": "Properties of a server trust group.", + "required": [ + "groupMembers", + "trustScopes" + ], + "type": "object", + "properties": { + "groupMembers": { + "description": "Group members information for the server trust group.", + "type": "array", + "items": { + "$ref": "#/definitions/ServerInfo" + } + }, + "trustScopes": { + "description": "Trust scope of the server trust group.", + "type": "array", + "items": { + "enum": [ + "GlobalTransactions", + "ServiceBroker" + ], + "type": "string" + } + } + } + }, + "ServerInfo": { + "description": "Server info for the server trust group.", + "required": [ + "serverId" + ], + "type": "object", + "properties": { + "serverId": { + "description": "Server Id.", + "type": "string" + } + } + }, + "ServerTrustGroup": { + "description": "A server trust group.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ServerTrustGroupProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "ServerTrustGroupListResult": { + "description": "A list of server trust groups.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/ServerTrustGroup" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "ManagedInstanceNameParameter": { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ServerVulnerabilityAssessments.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ServerVulnerabilityAssessments.json new file mode 100644 index 000000000000..16791f54359c --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/ServerVulnerabilityAssessments.json @@ -0,0 +1,364 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/vulnerabilityAssessments/{vulnerabilityAssessmentName}": { + "get": { + "tags": [ + "ServerVulnerabilityAssessments" + ], + "description": "Gets the server's vulnerability assessment.", + "operationId": "ServerVulnerabilityAssessments_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "serverName", + "in": "path", + "description": "The name of the server for which the vulnerability assessment is defined.", + "required": true, + "type": "string" + }, + { + "name": "vulnerabilityAssessmentName", + "in": "path", + "description": "The name of the vulnerability assessment.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentName", + "modelAsString": true + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the server vulnerability assessment.", + "schema": { + "$ref": "#/definitions/ServerVulnerabilityAssessment" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentUnsupportedStorageAccount - The provided storage account is unsupported.\n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 400 VulnerabilityAssessmentInsufficientStorageAccountPermissions - Insufficient permissions on the provided storage account.\n\n * 400 VulnerabilityAssessmentStorageAccountIsDisabled - The provided storage account is disabled.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found" + } + }, + "x-ms-examples": { + "Get a server's vulnerability assessment": { + "$ref": "./examples/ServerVulnerabilityAssessmentGet.json" + } + } + }, + "put": { + "tags": [ + "ServerVulnerabilityAssessments" + ], + "description": "Creates or updates the server's vulnerability assessment.", + "operationId": "ServerVulnerabilityAssessments_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "serverName", + "in": "path", + "description": "The name of the server for which the vulnerability assessment is defined.", + "required": true, + "type": "string" + }, + { + "name": "vulnerabilityAssessmentName", + "in": "path", + "description": "The name of the vulnerability assessment.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentName", + "modelAsString": true + } + }, + { + "name": "parameters", + "in": "body", + "description": "The requested resource.", + "required": true, + "schema": { + "$ref": "#/definitions/ServerVulnerabilityAssessment" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully set the vulnerability assessment.", + "schema": { + "$ref": "#/definitions/ServerVulnerabilityAssessment" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentUnsupportedStorageAccount - The provided storage account is unsupported.\n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 400 VulnerabilityAssessmentInsufficientStorageAccountPermissions - Insufficient permissions on the provided storage account.\n\n * 400 VulnerabilityAssessmentStorageAccountIsDisabled - The provided storage account is disabled.\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found" + }, + "201": { + "description": "Successfully created the vulnerability assessment.", + "schema": { + "$ref": "#/definitions/ServerVulnerabilityAssessment" + } + } + }, + "x-ms-examples": { + "Create a server's vulnerability assessment with minimal parameters, when storageContainerSasKey is specified": { + "$ref": "./examples/ServerVulnerabilityAssessmentCreateContainerSasKeyMin.json" + }, + "Create a server's vulnerability assessment with minimal parameters, when storageAccountAccessKey is specified": { + "$ref": "./examples/ServerVulnerabilityAssessmentCreateStorageAccessKeyMin.json" + }, + "Create a server's vulnerability assessment with all parameters": { + "$ref": "./examples/ServerVulnerabilityAssessmentCreateMax.json" + } + } + }, + "delete": { + "tags": [ + "ServerVulnerabilityAssessments" + ], + "description": "Removes the server's vulnerability assessment.", + "operationId": "ServerVulnerabilityAssessments_Delete", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "serverName", + "in": "path", + "description": "The name of the server for which the vulnerability assessment is defined.", + "required": true, + "type": "string" + }, + { + "name": "vulnerabilityAssessmentName", + "in": "path", + "description": "The name of the vulnerability assessment.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentName", + "modelAsString": true + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully removed the server vulnerability assessment." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentUnsupportedStorageAccount - The provided storage account is unsupported.\n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 400 VulnerabilityAssessmentInsufficientStorageAccountPermissions - Insufficient permissions on the provided storage account.\n\n * 400 VulnerabilityAssessmentStorageAccountIsDisabled - The provided storage account is disabled.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found" + } + }, + "x-ms-examples": { + "Remove a server's vulnerability assessment": { + "$ref": "./examples/ServerVulnerabilityAssessmentDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/vulnerabilityAssessments": { + "get": { + "tags": [ + "ServerVulnerabilityAssessments" + ], + "description": "Lists the vulnerability assessment policies associated with a server.", + "operationId": "ServerVulnerabilityAssessments_ListByServer", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the server vulnerability assessment policies.", + "schema": { + "$ref": "#/definitions/ServerVulnerabilityAssessmentListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentUnsupportedStorageAccount - The provided storage account is unsupported.\n\n * 400 VulnerabilityAssessmentADSIsDisabled - Advanced Data Security should be enabled in order to use Vulnerability Assessment.\n\n * 400 VulnerabilityAssessmentStorageOutboundFirewallNotAllowed - The storage account is not in the list of allowed FQDNs. The outbound firewall rules will block the request.\n\n * 400 VulnerabilityAssessmentInsufficientStorageAccountPermissions - Insufficient permissions on the provided storage account.\n\n * 400 VulnerabilityAssessmentStorageAccountIsDisabled - The provided storage account is disabled.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get a server's vulnerability assessment policies": { + "$ref": "./examples/ServerVulnerabilityAssessmentListByServer.json" + } + } + } + } + }, + "definitions": { + "ServerVulnerabilityAssessmentProperties": { + "description": "Properties of a server Vulnerability Assessment.", + "required": [ + "storageContainerPath" + ], + "type": "object", + "properties": { + "storageContainerPath": { + "description": "A blob storage container path to hold the scan results (e.g. https://myStorage.blob.core.windows.net/VaScans/).", + "type": "string", + "x-ms-mutability": [ + "create", + "update" + ] + }, + "storageContainerSasKey": { + "description": "A shared access signature (SAS Key) that has write access to the blob container specified in 'storageContainerPath' parameter. If 'storageAccountAccessKey' isn't specified, StorageContainerSasKey is required.", + "type": "string", + "x-ms-mutability": [ + "create", + "update" + ] + }, + "storageAccountAccessKey": { + "description": "Specifies the identifier key of the storage account for vulnerability assessment scan results. If 'StorageContainerSasKey' isn't specified, storageAccountAccessKey is required.", + "type": "string", + "x-ms-mutability": [ + "create", + "update" + ] + }, + "recurringScans": { + "$ref": "#/definitions/VulnerabilityAssessmentRecurringScansProperties", + "description": "The recurring scans settings" + } + } + }, + "VulnerabilityAssessmentRecurringScansProperties": { + "description": "Properties of a Vulnerability Assessment recurring scans.", + "type": "object", + "properties": { + "isEnabled": { + "description": "Recurring scans state.", + "type": "boolean" + }, + "emailSubscriptionAdmins": { + "description": "Specifies that the schedule scan notification will be is sent to the subscription administrators.", + "default": true, + "type": "boolean" + }, + "emails": { + "description": "Specifies an array of e-mail addresses to which the scan notification is sent.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "ServerVulnerabilityAssessment": { + "description": "A server vulnerability assessment.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ServerVulnerabilityAssessmentProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "ServerVulnerabilityAssessmentListResult": { + "description": "A list of the server's vulnerability assessments.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/ServerVulnerabilityAssessment" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/Servers.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/Servers.json new file mode 100644 index 000000000000..4e8657f0cdc8 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/Servers.json @@ -0,0 +1,1087 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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": { + "get": { + "tags": [ + "Servers" + ], + "description": "Gets a list of servers in a resource groups.", + "operationId": "Servers_ListByResourceGroup", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "$expand", + "in": "query", + "description": "The child resources to include in the response.", + "required": false, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of servers.", + "schema": { + "$ref": "#/definitions/ServerListResult" + } + }, + "default": { + "description": "*** Error Responses: ***" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List servers by resource group": { + "$ref": "./examples/ServerListByResourceGroup.json" + }, + "List servers by resource group with $expand=administrators": { + "$ref": "./examples/ServerListByResourceGroupWithExpandEqualsAdministrators.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}": { + "get": { + "tags": [ + "Servers" + ], + "description": "Gets a server.", + "operationId": "Servers_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "$expand", + "in": "query", + "description": "The child resources to include in the response.", + "required": false, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the specified server.", + "schema": { + "$ref": "#/definitions/Server" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-examples": { + "Get server": { + "$ref": "./examples/ServerGet.json" + }, + "Get server with $expand=administrators": { + "$ref": "./examples/ServerGetWithExpandEqualsAdministrators.json" + } + } + }, + "put": { + "tags": [ + "Servers" + ], + "description": "Creates or updates a server.", + "operationId": "Servers_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "parameters", + "in": "body", + "description": "The requested server resource state.", + "required": true, + "schema": { + "$ref": "#/definitions/Server" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the server.", + "schema": { + "$ref": "#/definitions/Server" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 PECsNotExistingToDenyPublicNetworkAccess - Unable to set Deny Public Network Access to Yes since there is no private endpoint enabled to access the server. Please set up private endpoints and retry the operation (https://docs.microsoft.com/azure/sql-database/sql-database-private-endpoint-overview#how-to-set-up-private-link-for-azure-sql-database).\n\n * 400 NameAlreadyExists - The provided name already exists.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 InvalidLoginName - The provided login name is invalid.\n\n * 400 InvalidUsername - Supplied user name contains invalid characters.\n\n * 400 PasswordTooShort - The provided password is too short\n\n * 400 AadOnlyAuthenticationIsEnabled - Azure Active Directory Only Authentication is enabled. Please contact your system administrator.\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 PasswordTooLong - The provided password is too long.\n\n * 400 PasswordNotComplex - The provided password is not complex enough.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 InvalidLocation - An invalid location was specified.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 RegionDoesNotAllowProvisioning - The selected location is not accepting new Windows Azure SQL Database servers. This may change at a later time.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 InvalidMinimalTlsVersion - Invalid minimal TLS version.\n\n * 400 InvalidExternalAdministratorLogin - Invalid or missing external administrator login name.\n\n * 400 InvalidExternalAdministratorSid - Invalid or missing external administrator object id.\n\n * 400 InvalidExternalAdministratorTenantId - Invalid or missing external administrator tenant id.\n\n * 400 ExternalAdministratorPrincipalType - Invalid or missing external administrator principal type. Please select from User, Application or Group.\n\n * 400 MissingExternalAdministratorWithAadOnlyAuth - In order to use Azure AD Only Authentication, please provide details of an external administrator.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 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 UpsertLogicalServerRequestAlreadyInProgress - An ongoing logical server request is already in progress, please try your request again later.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ServerQuotaExceeded - Server cannot be added to a subscription because it will exceed quota.\n\n * 409 ServerAlreadyExists - Duplicate server name.\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 * 429 ConflictingSubscriptionOperation - An operation is currently in progress for the subscription.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources." + }, + "202": { + "description": "Accepted" + }, + "201": { + "description": "Successfully created the server.", + "schema": { + "$ref": "#/definitions/Server" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create server": { + "$ref": "./examples/ServerCreate.json" + } + } + }, + "delete": { + "tags": [ + "Servers" + ], + "description": "Deletes a server.", + "operationId": "Servers_Delete", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the server." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 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 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 DropLogicalServerAlreadyInProgress - Server is already being dropped.\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources." + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "The specified server does not exist." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete server": { + "$ref": "./examples/ServerDelete.json" + } + } + }, + "patch": { + "tags": [ + "Servers" + ], + "description": "Updates a server.", + "operationId": "Servers_Update", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "parameters", + "in": "body", + "description": "The requested server resource state.", + "required": true, + "schema": { + "$ref": "#/definitions/ServerUpdate" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the server.", + "schema": { + "$ref": "#/definitions/Server" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 PECsNotExistingToDenyPublicNetworkAccess - Unable to set Deny Public Network Access to Yes since there is no private endpoint enabled to access the server. Please set up private endpoints and retry the operation (https://docs.microsoft.com/azure/sql-database/sql-database-private-endpoint-overview#how-to-set-up-private-link-for-azure-sql-database).\n\n * 400 NameAlreadyExists - The provided name already exists.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 InvalidLoginName - The provided login name is invalid.\n\n * 400 InvalidUsername - Supplied user name contains invalid characters.\n\n * 400 PasswordTooShort - The provided password is too short\n\n * 400 AadOnlyAuthenticationIsEnabled - Azure Active Directory Only Authentication is enabled. Please contact your system administrator.\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 PasswordTooLong - The provided password is too long.\n\n * 400 PasswordNotComplex - The provided password is not complex enough.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 InvalidLocation - An invalid location was specified.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 RegionDoesNotAllowProvisioning - The selected location is not accepting new Windows Azure SQL Database servers. This may change at a later time.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 InvalidMinimalTlsVersion - Invalid minimal TLS version.\n\n * 400 InvalidExternalAdministratorLogin - Invalid or missing external administrator login name.\n\n * 400 InvalidExternalAdministratorSid - Invalid or missing external administrator object id.\n\n * 400 InvalidExternalAdministratorTenantId - Invalid or missing external administrator tenant id.\n\n * 400 ExternalAdministratorPrincipalType - Invalid or missing external administrator principal type. Please select from User, Application or Group.\n\n * 400 MissingExternalAdministratorWithAadOnlyAuth - In order to use Azure AD Only Authentication, please provide details of an external administrator.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 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 UpsertLogicalServerRequestAlreadyInProgress - An ongoing logical server request is already in progress, please try your request again later.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ServerQuotaExceeded - Server cannot be added to a subscription because it will exceed quota.\n\n * 409 ServerAlreadyExists - Duplicate server name.\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 * 429 ConflictingSubscriptionOperation - An operation is currently in progress for the subscription.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources." + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update a server": { + "$ref": "./examples/ServerUpdate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Sql/servers": { + "get": { + "tags": [ + "Servers" + ], + "description": "Gets a list of all servers in the subscription.", + "operationId": "Servers_List", + "parameters": [ + { + "name": "$expand", + "in": "query", + "description": "The child resources to include in the response.", + "required": false, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of servers.", + "schema": { + "$ref": "#/definitions/ServerListResult" + } + }, + "default": { + "description": "*** Error Responses: ***" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List servers": { + "$ref": "./examples/ServerList.json" + }, + "List servers with expand equals administrators": { + "$ref": "./examples/ServerListWithExpandEqualsAdministrators.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/import": { + "post": { + "tags": [ + "Servers" + ], + "description": "Imports a bacpac into a new database.", + "operationId": "Servers_ImportDatabase", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "parameters", + "in": "body", + "description": "The database import request parameters.", + "required": true, + "schema": { + "$ref": "#/definitions/ImportNewDatabaseDefinition" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully imported the database.", + "schema": { + "$ref": "#/definitions/ImportExportOperationResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 MissingImportExportInputParameters - Missing ImportExport input parameters.\n\n * 400 PolybaseImportAuthenticationTypeNotSupported - Authentication type parameter is not support for PolybaseImport operation.\n\n * 400 DatabaseExtensionsInvalidOperationMode - Invalid operationMode parameter for database extension.\n\n * 400 DatabaseExtensionsInvalidStorageKeyType - The storage key type must by 'StorageAccessKey'.\n\n * 400 DatabaseExtensionsMissingStorageUri - Storage URI cannot be empty.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 InvalidOperationType - Provide a valid operation type.\n\n * 400 ImportExportJobError - The ImportExport operation has failed.\n\n * 400 BlockedByOutboundFirewall - The outbound firewall rules blocked the request.\n\n * 404 ResourceNotFound - Invalid request specifying a non-existent resource.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ImportExportOperationIdNotFound - The operation Id for import or export cannot be found.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 409 ImportExportOperationInProgress - There is an import or export operation in progress on the database." + }, + "202": { + "description": "Importing the database is in progress." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Imports to a new database.": { + "$ref": "./examples/ImportNewDatabase.json" + }, + "Imports to a new database, using private link for the SQL server and storage account.": { + "$ref": "./examples/ImportNewDatabaseWithNetworkIsolation.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Sql/checkNameAvailability": { + "post": { + "tags": [ + "Servers" + ], + "description": "Determines whether a resource can be created with the specified name.", + "operationId": "Servers_CheckNameAvailability", + "parameters": [ + { + "name": "parameters", + "in": "body", + "description": "The name availability request parameters.", + "required": true, + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityRequest" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully completed the availability check.", + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityResponse" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidNameAvailabilityRequest - The check name availability request is invalid.\n\n * 400 UnknownNameType - Unknown resource type specified for a subscription level name availability check." + } + }, + "x-ms-examples": { + "Check for a server name that already exists": { + "$ref": "./examples/CheckNameAvailabilityServerAlreadyExists.json" + }, + "Check for a server name that is available": { + "$ref": "./examples/CheckNameAvailabilityServerAvailable.json" + }, + "Check for a server name that is invalid": { + "$ref": "./examples/CheckNameAvailabilityServerInvalid.json" + } + } + } + } + }, + "definitions": { + "ServerListResult": { + "description": "A list of servers.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/Server" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "ResourceIdentityWithUserAssignedIdentities": { + "description": "Azure Active Directory identity configuration for a resource.", + "type": "object", + "properties": { + "userAssignedIdentities": { + "description": "The resource ids of the user assigned identities to use", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/UserIdentity" + } + }, + "principalId": { + "format": "uuid", + "description": "The Azure Active Directory principal id.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The identity type. Set this to 'SystemAssigned' in order to automatically create and assign an Azure Active Directory principal for the resource.", + "enum": [ + "None", + "SystemAssigned", + "UserAssigned" + ], + "type": "string", + "x-ms-enum": { + "name": "IdentityType", + "modelAsString": true + } + }, + "tenantId": { + "format": "uuid", + "description": "The Azure Active Directory tenant id.", + "type": "string", + "readOnly": true + } + } + }, + "ServerProperties": { + "description": "The properties of a server.", + "type": "object", + "properties": { + "administratorLogin": { + "description": "Administrator username for the server. Once created it cannot be changed.", + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "administratorLoginPassword": { + "description": "The administrator login password (required for server creation).", + "type": "string", + "x-ms-mutability": [ + "create", + "update" + ] + }, + "version": { + "description": "The version of the server.", + "type": "string" + }, + "state": { + "description": "The state of the server.", + "type": "string", + "readOnly": true + }, + "fullyQualifiedDomainName": { + "description": "The fully qualified domain name of the server.", + "type": "string", + "readOnly": true + }, + "privateEndpointConnections": { + "description": "List of private endpoint connections on a server", + "type": "array", + "items": { + "$ref": "#/definitions/ServerPrivateEndpointConnection" + }, + "readOnly": true + }, + "minimalTlsVersion": { + "description": "Minimal TLS version. Allowed values: '1.0', '1.1', '1.2'", + "type": "string" + }, + "publicNetworkAccess": { + "description": "Whether or not public endpoint access is allowed for this server. Value is optional but if passed in, must be 'Enabled' or 'Disabled'", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "ServerNetworkAccessFlag", + "modelAsString": true + } + }, + "workspaceFeature": { + "description": "Whether or not existing server has a workspace created and if it allows connection from workspace", + "enum": [ + "Connected", + "Disconnected" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ServerWorkspaceFeature", + "modelAsString": true + } + }, + "primaryUserAssignedIdentityId": { + "description": "The resource id of a user assigned identity to be used by default.", + "type": "string" + }, + "federatedClientId": { + "format": "uuid", + "description": "The Client id used for cross tenant CMK scenario", + "type": "string" + }, + "keyId": { + "description": "A CMK URI of the key to use for encryption.", + "type": "string" + }, + "administrators": { + "$ref": "#/definitions/ServerExternalAdministrator", + "description": "The Azure Active Directory identity of the server.", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "restrictOutboundNetworkAccess": { + "description": "Whether or not to restrict outbound network access for this server. Value is optional but if passed in, must be 'Enabled' or 'Disabled'", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "ServerNetworkAccessFlag", + "modelAsString": true + } + } + } + }, + "UserIdentity": { + "description": "Azure Active Directory identity configuration for a resource.", + "type": "object", + "properties": { + "principalId": { + "format": "uuid", + "description": "The Azure Active Directory principal id.", + "type": "string", + "readOnly": true + }, + "clientId": { + "format": "uuid", + "description": "The Azure Active Directory client id.", + "type": "string", + "readOnly": true + } + } + }, + "ServerPrivateEndpointConnection": { + "description": "A private endpoint connection under a server", + "type": "object", + "properties": { + "id": { + "description": "Resource ID.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "description": "Private endpoint connection properties", + "readOnly": true + } + } + }, + "ServerExternalAdministrator": { + "description": "Properties of a active directory administrator.", + "type": "object", + "properties": { + "administratorType": { + "description": "Type of the sever administrator.", + "enum": [ + "ActiveDirectory" + ], + "type": "string", + "x-ms-enum": { + "name": "AdministratorType", + "modelAsString": true + } + }, + "principalType": { + "description": "Principal Type of the sever administrator.", + "enum": [ + "User", + "Group", + "Application" + ], + "type": "string", + "x-ms-enum": { + "name": "PrincipalType", + "modelAsString": true + } + }, + "login": { + "description": "Login name of the server administrator.", + "type": "string" + }, + "sid": { + "format": "uuid", + "description": "SID (object ID) of the server administrator.", + "type": "string" + }, + "tenantId": { + "format": "uuid", + "description": "Tenant ID of the administrator.", + "type": "string" + }, + "azureADOnlyAuthentication": { + "description": "Azure Active Directory only Authentication enabled.", + "type": "boolean" + } + } + }, + "PrivateEndpointConnectionProperties": { + "description": "Properties of a private endpoint connection.", + "type": "object", + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpointProperty", + "description": "Private endpoint which the connection belongs to." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionStateProperty", + "description": "Connection state of the private endpoint connection." + }, + "provisioningState": { + "description": "State of the private endpoint connection.", + "enum": [ + "Approving", + "Ready", + "Dropping", + "Failed", + "Rejecting" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "PrivateEndpointProvisioningState", + "modelAsString": true + } + } + } + }, + "PrivateEndpointProperty": { + "type": "object", + "properties": { + "id": { + "description": "Resource id of the private endpoint.", + "type": "string" + } + }, + "x-ms-azure-resource": true + }, + "PrivateLinkServiceConnectionStateProperty": { + "required": [ + "status", + "description" + ], + "type": "object", + "properties": { + "status": { + "description": "The private link service connection status.", + "enum": [ + "Approved", + "Pending", + "Rejected", + "Disconnected" + ], + "type": "string", + "x-ms-enum": { + "name": "PrivateLinkServiceConnectionStateStatus", + "modelAsString": true + } + }, + "description": { + "description": "The private link service connection description.", + "type": "string" + }, + "actionsRequired": { + "description": "The actions required for private link service connection.", + "enum": [ + "None" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "PrivateLinkServiceConnectionStateActionsRequire", + "modelAsString": true + } + } + } + }, + "Server": { + "description": "An Azure SQL Database server.", + "required": [ + "location" + ], + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/TrackedResource" + } + ], + "properties": { + "identity": { + "$ref": "../../../common/v2/types.json#/definitions/ResourceIdentity", + "description": "The Azure Active Directory identity of the server.", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "kind": { + "description": "Kind of sql server. This is metadata used for the Azure portal experience.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/ServerProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "ServerUpdate": { + "description": "An update request for an Azure SQL Database server.", + "type": "object", + "properties": { + "identity": { + "$ref": "../../../common/v2/types.json#/definitions/ResourceIdentity", + "description": "Server identity" + }, + "properties": { + "$ref": "#/definitions/ServerProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + }, + "tags": { + "description": "Resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "ImportNewDatabaseDefinition": { + "description": "Contains the information necessary to perform import operation for new database.", + "required": [ + "storageKeyType", + "storageKey", + "storageUri", + "administratorLogin", + "administratorLoginPassword" + ], + "type": "object", + "properties": { + "databaseName": { + "description": "Name of the import database.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "edition": { + "description": "Edition of the import database.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "serviceObjectiveName": { + "description": "Service level objective name of the import database.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "maxSizeBytes": { + "description": "Max size in bytes for the import database.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "storageKeyType": { + "description": "Storage key type.", + "enum": [ + "SharedAccessKey", + "StorageAccessKey" + ], + "type": "string", + "x-ms-enum": { + "name": "StorageKeyType", + "modelAsString": true + }, + "x-ms-mutability": [ + "create" + ] + }, + "storageKey": { + "description": "Storage key.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "storageUri": { + "description": "Storage Uri.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "administratorLogin": { + "description": "Administrator login name.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "administratorLoginPassword": { + "description": "Administrator login password.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "authenticationType": { + "description": "Authentication type.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "networkIsolation": { + "$ref": "#/definitions/NetworkIsolationSettings", + "description": "Optional resource information to enable network isolation for request.", + "x-ms-mutability": [ + "create" + ] + } + } + }, + "NetworkIsolationSettings": { + "description": "Contains the ARM resources for which to create private endpoint connection.", + "type": "object", + "properties": { + "storageAccountResourceId": { + "description": "The resource id for the storage account used to store BACPAC file. If set, private endpoint connection will be created for the storage account. Must match storage account used for StorageUri parameter.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "sqlServerResourceId": { + "description": "The resource id for the SQL server which is the target of this request. If set, private endpoint connection will be created for the SQL server. Must match server which is target of the operation.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + } + } + }, + "ImportExportOperationResultProperties": { + "description": "Contains the operation result properties for import/export operation.", + "type": "object", + "properties": { + "requestId": { + "format": "uuid", + "description": "Request Id.", + "type": "string", + "readOnly": true + }, + "requestType": { + "description": "Request type.", + "type": "string", + "readOnly": true + }, + "queuedTime": { + "description": "Queued time.", + "type": "string", + "readOnly": true + }, + "lastModifiedTime": { + "description": "Last modified time.", + "type": "string", + "readOnly": true + }, + "blobUri": { + "description": "Blob Uri.", + "type": "string", + "readOnly": true + }, + "serverName": { + "description": "Server name.", + "type": "string", + "readOnly": true + }, + "databaseName": { + "description": "Database name.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "Operation status.", + "type": "string", + "readOnly": true + }, + "errorMessage": { + "description": "Error message.", + "type": "string", + "readOnly": true + }, + "privateEndpointConnections": { + "description": "Gets the status of private endpoints associated with this request.", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnectionRequestStatus" + }, + "readOnly": true + } + } + }, + "PrivateEndpointConnectionRequestStatus": { + "description": "Contains the private endpoint connection requests status.", + "type": "object", + "properties": { + "privateLinkServiceId": { + "description": "Resource id for which the private endpoint is created.", + "type": "string", + "readOnly": true + }, + "privateEndpointConnectionName": { + "description": "The connection name for the private endpoint.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "Status of this private endpoint connection.", + "type": "string", + "readOnly": true + } + } + }, + "ImportExportOperationResult": { + "description": "An ImportExport operation result resource.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ImportExportOperationResultProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "CheckNameAvailabilityRequest": { + "description": "A request to check whether the specified name for a resource is available.", + "required": [ + "name", + "type" + ], + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "type": { + "enum": [ + "Microsoft.Sql/servers" + ], + "type": "string", + "x-ms-enum": { + "name": "CheckNameAvailabilityResourceType", + "modelAsString": false + } + } + } + }, + "CheckNameAvailabilityResponse": { + "description": "The result of a name availability check.", + "type": "object", + "properties": { + "name": { + "description": "The name whose availability was checked.", + "type": "string", + "readOnly": true + }, + "available": { + "description": "True if the name is available, otherwise false.", + "type": "boolean", + "readOnly": true + }, + "reason": { + "description": "The reason code explaining why the name is unavailable. Will be undefined if the name is available.", + "enum": [ + "Invalid", + "AlreadyExists" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "CheckNameAvailabilityReason", + "modelAsString": false + } + }, + "message": { + "description": "A message explaining why the name is unavailable. Will be undefined if the name is available.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/SqlAgent.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/SqlAgent.json new file mode 100644 index 000000000000..d7a1882f1018 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/SqlAgent.json @@ -0,0 +1,157 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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/managedInstances/{managedInstanceName}/sqlAgent/current": { + "get": { + "tags": [ + "SqlAgent" + ], + "description": "Gets current instance sql agent configuration.", + "operationId": "SqlAgent_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved current sql agent configuration.", + "schema": { + "$ref": "#/definitions/SqlAgentConfiguration" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 SqlAgentManagedServerNotFound - User tried to configure sql agent of unknown managed instance." + } + }, + "x-ms-examples": { + "Gets current instance sql agent configuration.": { + "$ref": "./examples/SqlAgentConfigurationGet.json" + } + } + }, + "put": { + "tags": [ + "SqlAgent" + ], + "description": "Puts new sql agent configuration to instance.", + "operationId": "SqlAgent_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SqlAgentConfiguration" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully put sql agent configuration", + "schema": { + "$ref": "#/definitions/SqlAgentConfiguration" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 SqlAgentManagedServerNotFound - User tried to configure sql agent of unknown managed instance." + } + }, + "x-ms-examples": { + "Puts new sql agent configuration to instance.": { + "$ref": "./examples/SqlAgentConfigurationPut.json" + } + } + } + } + }, + "definitions": { + "SqlAgentConfigurationProperties": { + "description": "Sql agent configuration properties.", + "type": "object", + "properties": { + "state": { + "description": "The state of Sql Agent.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string" + } + } + }, + "SqlAgentConfiguration": { + "description": "A recoverable managed database resource.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/SqlAgentConfigurationProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + } + }, + "parameters": { + "ManagedInstanceNameParameter": { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/SubscriptionUsages.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/SubscriptionUsages.json new file mode 100644 index 000000000000..ee88b26650e0 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/SubscriptionUsages.json @@ -0,0 +1,187 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/usages": { + "get": { + "tags": [ + "SubscriptionUsages" + ], + "description": "Gets all subscription usage metrics in a given location.", + "operationId": "SubscriptionUsages_ListByLocation", + "parameters": [ + { + "name": "locationName", + "in": "path", + "description": "The name of the region where the resource is located.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the subscription location usages.", + "schema": { + "$ref": "#/definitions/SubscriptionUsageListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidLocation - An invalid location was specified.\n\n * 400 SubscriptionNotFound - The requested subscription was not found." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List subscription usages in the given location.": { + "$ref": "./examples/SubscriptionUsageListByLocation.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Sql/locations/{locationName}/usages/{usageName}": { + "get": { + "tags": [ + "SubscriptionUsages" + ], + "description": "Gets a subscription usage metric.", + "operationId": "SubscriptionUsages_Get", + "parameters": [ + { + "name": "locationName", + "in": "path", + "description": "The name of the region where the resource is located.", + "required": true, + "type": "string" + }, + { + "name": "usageName", + "in": "path", + "description": "Name of usage metric to return.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved particular subscription location usage.", + "schema": { + "$ref": "#/definitions/SubscriptionUsage" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidLocation - An invalid location was specified.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-examples": { + "Get specific subscription usage in the given location.": { + "$ref": "./examples/SubscriptionUsageGet.json" + } + } + } + } + }, + "definitions": { + "SubscriptionUsageListResult": { + "description": "A list of subscription usage metrics in a location.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/SubscriptionUsage" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "SubscriptionUsageProperties": { + "description": "Properties of a subscription usage.", + "type": "object", + "properties": { + "displayName": { + "description": "User-readable name of the metric.", + "type": "string", + "readOnly": true + }, + "currentValue": { + "format": "double", + "description": "Current value of the metric.", + "type": "number", + "readOnly": true + }, + "limit": { + "format": "double", + "description": "Boundary value of the metric.", + "type": "number", + "readOnly": true + }, + "unit": { + "description": "Unit of the metric.", + "type": "string", + "readOnly": true + } + } + }, + "SubscriptionUsage": { + "description": "Usage Metric of a Subscription in a Location.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/SubscriptionUsageProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + } + }, + "parameters": {}, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/SyncAgents.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/SyncAgents.json new file mode 100644 index 000000000000..8ffd4165f4f0 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/SyncAgents.json @@ -0,0 +1,531 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/syncAgents/{syncAgentName}": { + "get": { + "tags": [ + "SyncAgents" + ], + "description": "Gets a sync agent.", + "operationId": "SyncAgents_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "serverName", + "in": "path", + "description": "The name of the server on which the sync agent is hosted.", + "required": true, + "type": "string" + }, + { + "name": "syncAgentName", + "in": "path", + "description": "The name of the sync agent.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the specified sync agent.", + "schema": { + "$ref": "#/definitions/SyncAgent" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidSyncGroupCreateOrUpdateRequest - The create or update sync group request body is empty.\n\n * 400 InvalidSyncMemberCreateOrUpdateRequest - The create or update sync member request body is empty.\n\n * 400 InvalidSyncAgentCreateOrUpdateRequest - The create or update sync agent request body is empty.\n\n * 400 InvalidDatabaseResourceId - Invalid database resource identifier.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 InvalidSyncAgentResourceId - Invalid sync agent resource identifier.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 SyncOperation_GenericFailure - Failed to perform data sync operation.\n\n * 400 SyncOperation_WrongSyncDatabase - The sync database specified does not match the existing one.\n\n * 400 SyncOperation_DwInSyncGroup - Cannot use datawarehouse edition in data sync.\n\n * 400 SyncOperation_MasterDbInSyncGroup - Cannot use logical master in data sync.\n\n * 400 CannotDeleteInUseSyncAgent - Cannot delete sync agent because it is used by sync member.\n\n * 400 InvalidSyncAgent - Sync agent is invalid.\n\n * 400 InvalidSyncMetadataDatabase - Sync metadata database is invalid.\n\n * 404 ResourceNotFound - The requested resource was not found.\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 * 409 SyncOperation_AgentAlreadyExists - The sync agent with the same name already exists.\n\n * 409 SyncOperation_AgentIdAlreadyExists - The sync agent with the same id already exists." + } + }, + "x-ms-examples": { + "Get a sync agent": { + "$ref": "./examples/SyncAgentGet.json" + } + } + }, + "put": { + "tags": [ + "SyncAgents" + ], + "description": "Creates or updates a sync agent.", + "operationId": "SyncAgents_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "serverName", + "in": "path", + "description": "The name of the server on which the sync agent is hosted.", + "required": true, + "type": "string" + }, + { + "name": "syncAgentName", + "in": "path", + "description": "The name of the sync agent.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The requested sync agent resource state.", + "required": true, + "schema": { + "$ref": "#/definitions/SyncAgent" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the sync agent.", + "schema": { + "$ref": "#/definitions/SyncAgent" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidSyncGroupCreateOrUpdateRequest - The create or update sync group request body is empty.\n\n * 400 InvalidSyncMemberCreateOrUpdateRequest - The create or update sync member request body is empty.\n\n * 400 InvalidSyncAgentCreateOrUpdateRequest - The create or update sync agent request body is empty.\n\n * 400 InvalidDatabaseResourceId - Invalid database resource identifier.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 InvalidSyncAgentResourceId - Invalid sync agent resource identifier.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 SyncOperation_GenericFailure - Failed to perform data sync operation.\n\n * 400 SyncOperation_WrongSyncDatabase - The sync database specified does not match the existing one.\n\n * 400 SyncOperation_DwInSyncGroup - Cannot use datawarehouse edition in data sync.\n\n * 400 SyncOperation_MasterDbInSyncGroup - Cannot use logical master in data sync.\n\n * 400 CannotDeleteInUseSyncAgent - Cannot delete sync agent because it is used by sync member.\n\n * 400 InvalidSyncAgent - Sync agent is invalid.\n\n * 400 InvalidSyncMetadataDatabase - Sync metadata database is invalid.\n\n * 404 ResourceNotFound - The requested resource was not found.\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 * 409 SyncOperation_AgentAlreadyExists - The sync agent with the same name already exists.\n\n * 409 SyncOperation_AgentIdAlreadyExists - The sync agent with the same id already exists." + }, + "202": { + "description": "Creating or updating the sync agent is in progress." + }, + "201": { + "description": "Successfully created the sync agent.", + "schema": { + "$ref": "#/definitions/SyncAgent" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create a new sync agent": { + "$ref": "./examples/SyncAgentCreate.json" + }, + "Update a sync agent": { + "$ref": "./examples/SyncAgentUpdate.json" + } + } + }, + "delete": { + "tags": [ + "SyncAgents" + ], + "description": "Deletes a sync agent.", + "operationId": "SyncAgents_Delete", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "serverName", + "in": "path", + "description": "The name of the server on which the sync agent is hosted.", + "required": true, + "type": "string" + }, + { + "name": "syncAgentName", + "in": "path", + "description": "The name of the sync agent.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the sync agent." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidSyncGroupCreateOrUpdateRequest - The create or update sync group request body is empty.\n\n * 400 InvalidSyncMemberCreateOrUpdateRequest - The create or update sync member request body is empty.\n\n * 400 InvalidSyncAgentCreateOrUpdateRequest - The create or update sync agent request body is empty.\n\n * 400 InvalidDatabaseResourceId - Invalid database resource identifier.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 InvalidSyncAgentResourceId - Invalid sync agent resource identifier.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 SyncOperation_GenericFailure - Failed to perform data sync operation.\n\n * 400 SyncOperation_WrongSyncDatabase - The sync database specified does not match the existing one.\n\n * 400 SyncOperation_DwInSyncGroup - Cannot use datawarehouse edition in data sync.\n\n * 400 SyncOperation_MasterDbInSyncGroup - Cannot use logical master in data sync.\n\n * 400 CannotDeleteInUseSyncAgent - Cannot delete sync agent because it is used by sync member.\n\n * 400 InvalidSyncAgent - Sync agent is invalid.\n\n * 400 InvalidSyncMetadataDatabase - Sync metadata database is invalid.\n\n * 404 ResourceNotFound - The requested resource was not found.\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 * 409 SyncOperation_AgentAlreadyExists - The sync agent with the same name already exists.\n\n * 409 SyncOperation_AgentIdAlreadyExists - The sync agent with the same id already exists." + }, + "202": { + "description": "Deleting the sync agent is in progress." + }, + "204": { + "description": "The specified sync agent does not exist." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete a sync agent": { + "$ref": "./examples/SyncAgentDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/syncAgents": { + "get": { + "tags": [ + "SyncAgents" + ], + "description": "Lists sync agents in a server.", + "operationId": "SyncAgents_ListByServer", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "serverName", + "in": "path", + "description": "The name of the server on which the sync agent is hosted.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of sync agents.", + "schema": { + "$ref": "#/definitions/SyncAgentListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidSyncGroupCreateOrUpdateRequest - The create or update sync group request body is empty.\n\n * 400 InvalidSyncMemberCreateOrUpdateRequest - The create or update sync member request body is empty.\n\n * 400 InvalidSyncAgentCreateOrUpdateRequest - The create or update sync agent request body is empty.\n\n * 400 InvalidDatabaseResourceId - Invalid database resource identifier.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 InvalidSyncAgentResourceId - Invalid sync agent resource identifier.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 SyncOperation_GenericFailure - Failed to perform data sync operation.\n\n * 400 SyncOperation_WrongSyncDatabase - The sync database specified does not match the existing one.\n\n * 400 SyncOperation_DwInSyncGroup - Cannot use datawarehouse edition in data sync.\n\n * 400 SyncOperation_MasterDbInSyncGroup - Cannot use logical master in data sync.\n\n * 400 CannotDeleteInUseSyncAgent - Cannot delete sync agent because it is used by sync member.\n\n * 400 InvalidSyncAgent - Sync agent is invalid.\n\n * 400 InvalidSyncMetadataDatabase - Sync metadata database is invalid.\n\n * 404 ResourceNotFound - The requested resource was not found.\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 * 409 SyncOperation_AgentAlreadyExists - The sync agent with the same name already exists.\n\n * 409 SyncOperation_AgentIdAlreadyExists - The sync agent with the same id already exists." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get sync agents under a server": { + "$ref": "./examples/SyncAgentListByServer.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/syncAgents/{syncAgentName}/generateKey": { + "post": { + "tags": [ + "SyncAgents" + ], + "description": "Generates a sync agent key.", + "operationId": "SyncAgents_GenerateKey", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "serverName", + "in": "path", + "description": "The name of the server on which the sync agent is hosted.", + "required": true, + "type": "string" + }, + { + "name": "syncAgentName", + "in": "path", + "description": "The name of the sync agent.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully generate a sync agent key.", + "schema": { + "$ref": "#/definitions/SyncAgentKeyProperties" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidSyncGroupCreateOrUpdateRequest - The create or update sync group request body is empty.\n\n * 400 InvalidSyncMemberCreateOrUpdateRequest - The create or update sync member request body is empty.\n\n * 400 InvalidSyncAgentCreateOrUpdateRequest - The create or update sync agent request body is empty.\n\n * 400 InvalidDatabaseResourceId - Invalid database resource identifier.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 InvalidSyncAgentResourceId - Invalid sync agent resource identifier.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 SyncOperation_GenericFailure - Failed to perform data sync operation.\n\n * 400 SyncOperation_WrongSyncDatabase - The sync database specified does not match the existing one.\n\n * 400 SyncOperation_DwInSyncGroup - Cannot use datawarehouse edition in data sync.\n\n * 400 SyncOperation_MasterDbInSyncGroup - Cannot use logical master in data sync.\n\n * 400 CannotDeleteInUseSyncAgent - Cannot delete sync agent because it is used by sync member.\n\n * 400 InvalidSyncAgent - Sync agent is invalid.\n\n * 400 InvalidSyncMetadataDatabase - Sync metadata database is invalid.\n\n * 404 ResourceNotFound - The requested resource was not found.\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 * 409 SyncOperation_AgentAlreadyExists - The sync agent with the same name already exists.\n\n * 409 SyncOperation_AgentIdAlreadyExists - The sync agent with the same id already exists." + } + }, + "x-ms-examples": { + "Generate a sync agent key": { + "$ref": "./examples/SyncAgentGenerateKey.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/syncAgents/{syncAgentName}/linkedDatabases": { + "get": { + "tags": [ + "SyncAgents" + ], + "description": "Lists databases linked to a sync agent.", + "operationId": "SyncAgents_ListLinkedDatabases", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "serverName", + "in": "path", + "description": "The name of the server on which the sync agent is hosted.", + "required": true, + "type": "string" + }, + { + "name": "syncAgentName", + "in": "path", + "description": "The name of the sync agent.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved sync agent linked SQL server databases.", + "schema": { + "$ref": "#/definitions/SyncAgentLinkedDatabaseListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidSyncGroupCreateOrUpdateRequest - The create or update sync group request body is empty.\n\n * 400 InvalidSyncMemberCreateOrUpdateRequest - The create or update sync member request body is empty.\n\n * 400 InvalidSyncAgentCreateOrUpdateRequest - The create or update sync agent request body is empty.\n\n * 400 InvalidDatabaseResourceId - Invalid database resource identifier.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 InvalidSyncAgentResourceId - Invalid sync agent resource identifier.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 SyncOperation_GenericFailure - Failed to perform data sync operation.\n\n * 400 SyncOperation_WrongSyncDatabase - The sync database specified does not match the existing one.\n\n * 400 SyncOperation_DwInSyncGroup - Cannot use datawarehouse edition in data sync.\n\n * 400 SyncOperation_MasterDbInSyncGroup - Cannot use logical master in data sync.\n\n * 400 CannotDeleteInUseSyncAgent - Cannot delete sync agent because it is used by sync member.\n\n * 400 InvalidSyncAgent - Sync agent is invalid.\n\n * 400 InvalidSyncMetadataDatabase - Sync metadata database is invalid.\n\n * 404 ResourceNotFound - The requested resource was not found.\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 * 409 SyncOperation_AgentAlreadyExists - The sync agent with the same name already exists.\n\n * 409 SyncOperation_AgentIdAlreadyExists - The sync agent with the same id already exists." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get sync agent linked databases": { + "$ref": "./examples/SyncAgentGetLinkedDatabases.json" + } + } + } + } + }, + "definitions": { + "SyncAgentProperties": { + "description": "Properties of an Azure SQL Database sync agent.", + "type": "object", + "properties": { + "name": { + "description": "Name of the sync agent.", + "type": "string", + "readOnly": true + }, + "syncDatabaseId": { + "description": "ARM resource id of the sync database in the sync agent.", + "type": "string" + }, + "lastAliveTime": { + "format": "date-time", + "description": "Last alive time of the sync agent.", + "type": "string", + "readOnly": true + }, + "state": { + "description": "State of the sync agent.", + "enum": [ + "Online", + "Offline", + "NeverConnected" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "SyncAgentState", + "modelAsString": true + } + }, + "isUpToDate": { + "description": "If the sync agent version is up to date.", + "type": "boolean", + "readOnly": true + }, + "expiryTime": { + "format": "date-time", + "description": "Expiration time of the sync agent version.", + "type": "string", + "readOnly": true + }, + "version": { + "description": "Version of the sync agent.", + "type": "string", + "readOnly": true + } + } + }, + "SyncAgent": { + "description": "An Azure SQL Database sync agent.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/SyncAgentProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "SyncAgentListResult": { + "description": "A list of sync agents.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/SyncAgent" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "SyncAgentKeyProperties": { + "description": "Properties of an Azure SQL Database sync agent key.", + "type": "object", + "properties": { + "syncAgentKey": { + "description": "Key of sync agent.", + "type": "string", + "readOnly": true + } + } + }, + "SyncAgentLinkedDatabaseListResult": { + "description": "A list of sync agent linked databases.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/SyncAgentLinkedDatabase" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "SyncAgentLinkedDatabaseProperties": { + "description": "Properties of an Azure SQL Database sync agent linked database.", + "type": "object", + "properties": { + "databaseType": { + "description": "Type of the sync agent linked database.", + "enum": [ + "AzureSqlDatabase", + "SqlServerDatabase" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "SyncMemberDbType", + "modelAsString": true + } + }, + "databaseId": { + "description": "Id of the sync agent linked database.", + "type": "string", + "readOnly": true + }, + "description": { + "description": "Description of the sync agent linked database.", + "type": "string", + "readOnly": true + }, + "serverName": { + "description": "Server name of the sync agent linked database.", + "type": "string", + "readOnly": true + }, + "databaseName": { + "description": "Database name of the sync agent linked database.", + "type": "string", + "readOnly": true + }, + "userName": { + "description": "User name of the sync agent linked database.", + "type": "string", + "readOnly": true + } + } + }, + "SyncAgentLinkedDatabase": { + "description": "An Azure SQL Database sync agent linked database.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/SyncAgentLinkedDatabaseProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + } + }, + "parameters": {}, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/SyncGroups.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/SyncGroups.json new file mode 100644 index 000000000000..6ac2186bdb66 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/SyncGroups.json @@ -0,0 +1,1065 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/syncDatabaseIds": { + "get": { + "tags": [ + "SyncGroups" + ], + "description": "Gets a collection of sync database ids.", + "operationId": "SyncGroups_ListSyncDatabaseIds", + "parameters": [ + { + "name": "locationName", + "in": "path", + "description": "The name of the region where the resource is located.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved collection of sync database ids.", + "schema": { + "$ref": "#/definitions/SyncDatabaseIdListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidSyncGroupCreateOrUpdateRequest - The create or update sync group request body is empty.\n\n * 400 InvalidSyncMemberCreateOrUpdateRequest - The create or update sync member request body is empty.\n\n * 400 InvalidSyncAgentCreateOrUpdateRequest - The create or update sync agent request body is empty.\n\n * 400 InvalidDatabaseResourceId - Invalid database resource identifier.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 InvalidSyncAgentResourceId - Invalid sync agent resource identifier.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 SyncOperation_GenericFailure - Failed to perform data sync operation.\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." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get a sync database ID": { + "$ref": "./examples/SyncGroupGetSyncDatabaseId.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/syncGroups/{syncGroupName}/refreshHubSchema": { + "post": { + "tags": [ + "SyncGroups" + ], + "description": "Refreshes a hub database schema.", + "operationId": "SyncGroups_RefreshHubSchema", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the database on which the sync group is hosted.", + "required": true, + "type": "string" + }, + { + "name": "syncGroupName", + "in": "path", + "description": "The name of the sync group.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully refreshed a sync hub schema." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidSyncGroupCreateOrUpdateRequest - The create or update sync group request body is empty.\n\n * 400 InvalidSyncMemberCreateOrUpdateRequest - The create or update sync member request body is empty.\n\n * 400 InvalidSyncAgentCreateOrUpdateRequest - The create or update sync agent request body is empty.\n\n * 400 InvalidDatabaseResourceId - Invalid database resource identifier.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 InvalidSyncAgentResourceId - Invalid sync agent resource identifier.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 SyncOperation_GenericFailure - Failed to perform data sync operation.\n\n * 400 InvalidSyncGroup - Sync group is invalid.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 CannotCreateSyncGroupDueToQuotaExceeded - Cannot create sync group due to quota exceeded.\n\n * 400 SyncOperation_DuplicateSyncGroupDrop - The sync group is already being dropped.\n\n * 400 SyncOperation_WrongSyncDatabase - The sync database specified does not match the existing one.\n\n * 400 SyncOperation_UpdateSyncGroupWhenDropping - Cannot update the sync group because it is currently being dropped.\n\n * 400 SyncOperation_DwInSyncGroup - Cannot use datawarehouse edition in data sync.\n\n * 400 SyncOperation_MasterDbInSyncGroup - Cannot use logical master in data sync.\n\n * 400 SyncOperation_InvalidCredential - Credential of database is invalid.\n\n * 400 InvalidSyncMetadataDatabase - Sync metadata database is invalid.\n\n * 400 SyncOperation_InvalidSyncInterval - Cannot create or update sync group because the sync interval is invalid.\n\n * 404 ResourceNotFound - The requested resource 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 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 SyncOperation_HubServerNotFound - Hub logical server does not exist.\n\n * 404 SyncOperation_InvalidHubDatabase - Hub database is invalid.\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 SyncOperation_DuplicateSyncGroupName - Cannot create sync group because the sync group with the same name already exists.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation." + }, + "202": { + "description": "The sync hub schema refresh operation is on going." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Refresh a hub database schema.": { + "$ref": "./examples/SyncGroupRefreshHubSchema.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/syncGroups/{syncGroupName}/hubSchemas": { + "get": { + "tags": [ + "SyncGroups" + ], + "description": "Gets a collection of hub database schemas.", + "operationId": "SyncGroups_ListHubSchemas", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the database on which the sync group is hosted.", + "required": true, + "type": "string" + }, + { + "name": "syncGroupName", + "in": "path", + "description": "The name of the sync group.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully get a sync group hub database schema.", + "schema": { + "$ref": "#/definitions/SyncFullSchemaPropertiesListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidSyncGroupCreateOrUpdateRequest - The create or update sync group request body is empty.\n\n * 400 InvalidSyncMemberCreateOrUpdateRequest - The create or update sync member request body is empty.\n\n * 400 InvalidSyncAgentCreateOrUpdateRequest - The create or update sync agent request body is empty.\n\n * 400 InvalidDatabaseResourceId - Invalid database resource identifier.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 InvalidSyncAgentResourceId - Invalid sync agent resource identifier.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 SyncOperation_GenericFailure - Failed to perform data sync operation.\n\n * 400 InvalidSyncGroup - Sync group is invalid.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 CannotCreateSyncGroupDueToQuotaExceeded - Cannot create sync group due to quota exceeded.\n\n * 400 SyncOperation_DuplicateSyncGroupDrop - The sync group is already being dropped.\n\n * 400 SyncOperation_WrongSyncDatabase - The sync database specified does not match the existing one.\n\n * 400 SyncOperation_UpdateSyncGroupWhenDropping - Cannot update the sync group because it is currently being dropped.\n\n * 400 SyncOperation_DwInSyncGroup - Cannot use datawarehouse edition in data sync.\n\n * 400 SyncOperation_MasterDbInSyncGroup - Cannot use logical master in data sync.\n\n * 400 SyncOperation_InvalidCredential - Credential of database is invalid.\n\n * 400 InvalidSyncMetadataDatabase - Sync metadata database is invalid.\n\n * 400 SyncOperation_InvalidSyncInterval - Cannot create or update sync group because the sync interval is invalid.\n\n * 404 ResourceNotFound - The requested resource was not found.\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 SyncOperation_HubServerNotFound - Hub logical server does not exist.\n\n * 404 SyncOperation_InvalidHubDatabase - Hub database is invalid.\n\n * 409 SyncOperation_DuplicateSyncGroupName - Cannot create sync group because the sync group with the same name already exists." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get a hub database schema.": { + "$ref": "./examples/SyncGroupGetHubSchema.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/syncGroups/{syncGroupName}/logs": { + "get": { + "tags": [ + "SyncGroups" + ], + "description": "Gets a collection of sync group logs.", + "operationId": "SyncGroups_ListLogs", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the database on which the sync group is hosted.", + "required": true, + "type": "string" + }, + { + "name": "syncGroupName", + "in": "path", + "description": "The name of the sync group.", + "required": true, + "type": "string" + }, + { + "name": "startTime", + "in": "query", + "description": "Get logs generated after this time.", + "required": true, + "type": "string" + }, + { + "name": "endTime", + "in": "query", + "description": "Get logs generated before this time.", + "required": true, + "type": "string" + }, + { + "name": "type", + "in": "query", + "description": "The types of logs to retrieve.", + "required": true, + "type": "string", + "enum": [ + "All", + "Error", + "Warning", + "Success" + ] + }, + { + "name": "continuationToken", + "in": "query", + "description": "The continuation token for this operation.", + "required": false, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved sync group logs.", + "schema": { + "$ref": "#/definitions/SyncGroupLogListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidSyncGroupCreateOrUpdateRequest - The create or update sync group request body is empty.\n\n * 400 InvalidSyncMemberCreateOrUpdateRequest - The create or update sync member request body is empty.\n\n * 400 InvalidSyncAgentCreateOrUpdateRequest - The create or update sync agent request body is empty.\n\n * 400 InvalidDatabaseResourceId - Invalid database resource identifier.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 InvalidSyncAgentResourceId - Invalid sync agent resource identifier.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 SyncOperation_GenericFailure - Failed to perform data sync operation.\n\n * 400 InvalidSyncGroup - Sync group is invalid.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 CannotCreateSyncGroupDueToQuotaExceeded - Cannot create sync group due to quota exceeded.\n\n * 400 SyncOperation_DuplicateSyncGroupDrop - The sync group is already being dropped.\n\n * 400 SyncOperation_WrongSyncDatabase - The sync database specified does not match the existing one.\n\n * 400 SyncOperation_UpdateSyncGroupWhenDropping - Cannot update the sync group because it is currently being dropped.\n\n * 400 SyncOperation_DwInSyncGroup - Cannot use datawarehouse edition in data sync.\n\n * 400 SyncOperation_MasterDbInSyncGroup - Cannot use logical master in data sync.\n\n * 400 SyncOperation_InvalidCredential - Credential of database is invalid.\n\n * 400 InvalidSyncMetadataDatabase - Sync metadata database is invalid.\n\n * 400 SyncOperation_InvalidSyncInterval - Cannot create or update sync group because the sync interval is invalid.\n\n * 404 ResourceNotFound - The requested resource was not found.\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 SyncOperation_HubServerNotFound - Hub logical server does not exist.\n\n * 404 SyncOperation_InvalidHubDatabase - Hub database is invalid.\n\n * 409 SyncOperation_DuplicateSyncGroupName - Cannot create sync group because the sync group with the same name already exists." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get sync group logs": { + "$ref": "./examples/SyncGroupGetLog.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/syncGroups/{syncGroupName}/cancelSync": { + "post": { + "tags": [ + "SyncGroups" + ], + "description": "Cancels a sync group synchronization.", + "operationId": "SyncGroups_CancelSync", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the database on which the sync group is hosted.", + "required": true, + "type": "string" + }, + { + "name": "syncGroupName", + "in": "path", + "description": "The name of the sync group.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully cancel a sync group synchronization." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidSyncGroupCreateOrUpdateRequest - The create or update sync group request body is empty.\n\n * 400 InvalidSyncMemberCreateOrUpdateRequest - The create or update sync member request body is empty.\n\n * 400 InvalidSyncAgentCreateOrUpdateRequest - The create or update sync agent request body is empty.\n\n * 400 InvalidDatabaseResourceId - Invalid database resource identifier.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 InvalidSyncAgentResourceId - Invalid sync agent resource identifier.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 SyncOperation_GenericFailure - Failed to perform data sync operation.\n\n * 400 InvalidSyncGroup - Sync group is invalid.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 CannotCreateSyncGroupDueToQuotaExceeded - Cannot create sync group due to quota exceeded.\n\n * 400 SyncOperation_DuplicateSyncGroupDrop - The sync group is already being dropped.\n\n * 400 SyncOperation_WrongSyncDatabase - The sync database specified does not match the existing one.\n\n * 400 SyncOperation_UpdateSyncGroupWhenDropping - Cannot update the sync group because it is currently being dropped.\n\n * 400 SyncOperation_DwInSyncGroup - Cannot use datawarehouse edition in data sync.\n\n * 400 SyncOperation_MasterDbInSyncGroup - Cannot use logical master in data sync.\n\n * 400 SyncOperation_InvalidCredential - Credential of database is invalid.\n\n * 400 InvalidSyncMetadataDatabase - Sync metadata database is invalid.\n\n * 400 SyncOperation_InvalidSyncInterval - Cannot create or update sync group because the sync interval is invalid.\n\n * 404 ResourceNotFound - The requested resource was not found.\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 SyncOperation_HubServerNotFound - Hub logical server does not exist.\n\n * 404 SyncOperation_InvalidHubDatabase - Hub database is invalid.\n\n * 409 SyncOperation_DuplicateSyncGroupName - Cannot create sync group because the sync group with the same name already exists." + } + }, + "x-ms-examples": { + "Cancel a sync group synchronization": { + "$ref": "./examples/SyncGroupCancelSync.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/syncGroups/{syncGroupName}/triggerSync": { + "post": { + "tags": [ + "SyncGroups" + ], + "description": "Triggers a sync group synchronization.", + "operationId": "SyncGroups_TriggerSync", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the database on which the sync group is hosted.", + "required": true, + "type": "string" + }, + { + "name": "syncGroupName", + "in": "path", + "description": "The name of the sync group.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully triggered a sync group synchronization." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidSyncGroupCreateOrUpdateRequest - The create or update sync group request body is empty.\n\n * 400 InvalidSyncMemberCreateOrUpdateRequest - The create or update sync member request body is empty.\n\n * 400 InvalidSyncAgentCreateOrUpdateRequest - The create or update sync agent request body is empty.\n\n * 400 InvalidDatabaseResourceId - Invalid database resource identifier.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 InvalidSyncAgentResourceId - Invalid sync agent resource identifier.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 SyncOperation_GenericFailure - Failed to perform data sync operation.\n\n * 400 InvalidSyncGroup - Sync group is invalid.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 CannotCreateSyncGroupDueToQuotaExceeded - Cannot create sync group due to quota exceeded.\n\n * 400 SyncOperation_DuplicateSyncGroupDrop - The sync group is already being dropped.\n\n * 400 SyncOperation_WrongSyncDatabase - The sync database specified does not match the existing one.\n\n * 400 SyncOperation_UpdateSyncGroupWhenDropping - Cannot update the sync group because it is currently being dropped.\n\n * 400 SyncOperation_DwInSyncGroup - Cannot use datawarehouse edition in data sync.\n\n * 400 SyncOperation_MasterDbInSyncGroup - Cannot use logical master in data sync.\n\n * 400 SyncOperation_InvalidCredential - Credential of database is invalid.\n\n * 400 InvalidSyncMetadataDatabase - Sync metadata database is invalid.\n\n * 400 SyncOperation_InvalidSyncInterval - Cannot create or update sync group because the sync interval is invalid.\n\n * 404 ResourceNotFound - The requested resource was not found.\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 SyncOperation_HubServerNotFound - Hub logical server does not exist.\n\n * 404 SyncOperation_InvalidHubDatabase - Hub database is invalid.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 409 SyncOperation_DuplicateSyncGroupName - Cannot create sync group because the sync group with the same name already exists.\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-examples": { + "Trigger a sync group synchronization.": { + "$ref": "./examples/SyncGroupTriggerSync.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/syncGroups/{syncGroupName}": { + "get": { + "tags": [ + "SyncGroups" + ], + "description": "Gets a sync group.", + "operationId": "SyncGroups_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the database on which the sync group is hosted.", + "required": true, + "type": "string" + }, + { + "name": "syncGroupName", + "in": "path", + "description": "The name of the sync group.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the specified sync group.", + "schema": { + "$ref": "#/definitions/SyncGroup" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidSyncGroupCreateOrUpdateRequest - The create or update sync group request body is empty.\n\n * 400 InvalidSyncMemberCreateOrUpdateRequest - The create or update sync member request body is empty.\n\n * 400 InvalidSyncAgentCreateOrUpdateRequest - The create or update sync agent request body is empty.\n\n * 400 InvalidDatabaseResourceId - Invalid database resource identifier.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 InvalidSyncAgentResourceId - Invalid sync agent resource identifier.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 SyncOperation_GenericFailure - Failed to perform data sync operation.\n\n * 400 InvalidSyncGroup - Sync group is invalid.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 CannotCreateSyncGroupDueToQuotaExceeded - Cannot create sync group due to quota exceeded.\n\n * 400 SyncOperation_DuplicateSyncGroupDrop - The sync group is already being dropped.\n\n * 400 SyncOperation_WrongSyncDatabase - The sync database specified does not match the existing one.\n\n * 400 SyncOperation_UpdateSyncGroupWhenDropping - Cannot update the sync group because it is currently being dropped.\n\n * 400 SyncOperation_DwInSyncGroup - Cannot use datawarehouse edition in data sync.\n\n * 400 SyncOperation_MasterDbInSyncGroup - Cannot use logical master in data sync.\n\n * 400 SyncOperation_InvalidCredential - Credential of database is invalid.\n\n * 400 InvalidSyncMetadataDatabase - Sync metadata database is invalid.\n\n * 400 SyncOperation_InvalidSyncInterval - Cannot create or update sync group because the sync interval is invalid.\n\n * 404 ResourceNotFound - The requested resource was not found.\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 SyncOperation_HubServerNotFound - Hub logical server does not exist.\n\n * 404 SyncOperation_InvalidHubDatabase - Hub database is invalid.\n\n * 409 SyncOperation_DuplicateSyncGroupName - Cannot create sync group because the sync group with the same name already exists." + } + }, + "x-ms-examples": { + "Get a sync group": { + "$ref": "./examples/SyncGroupGet.json" + } + } + }, + "put": { + "tags": [ + "SyncGroups" + ], + "description": "Creates or updates a sync group.", + "operationId": "SyncGroups_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the database on which the sync group is hosted.", + "required": true, + "type": "string" + }, + { + "name": "syncGroupName", + "in": "path", + "description": "The name of the sync group.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The requested sync group resource state.", + "required": true, + "schema": { + "$ref": "#/definitions/SyncGroup" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the sync group.", + "schema": { + "$ref": "#/definitions/SyncGroup" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidSyncGroupCreateOrUpdateRequest - The create or update sync group request body is empty.\n\n * 400 InvalidSyncMemberCreateOrUpdateRequest - The create or update sync member request body is empty.\n\n * 400 InvalidSyncAgentCreateOrUpdateRequest - The create or update sync agent request body is empty.\n\n * 400 InvalidDatabaseResourceId - Invalid database resource identifier.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 InvalidSyncAgentResourceId - Invalid sync agent resource identifier.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 SyncOperation_GenericFailure - Failed to perform data sync operation.\n\n * 400 InvalidSyncGroup - Sync group is invalid.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 CannotCreateSyncGroupDueToQuotaExceeded - Cannot create sync group due to quota exceeded.\n\n * 400 SyncOperation_DuplicateSyncGroupDrop - The sync group is already being dropped.\n\n * 400 SyncOperation_WrongSyncDatabase - The sync database specified does not match the existing one.\n\n * 400 SyncOperation_UpdateSyncGroupWhenDropping - Cannot update the sync group because it is currently being dropped.\n\n * 400 SyncOperation_DwInSyncGroup - Cannot use datawarehouse edition in data sync.\n\n * 400 SyncOperation_MasterDbInSyncGroup - Cannot use logical master in data sync.\n\n * 400 SyncOperation_InvalidCredential - Credential of database is invalid.\n\n * 400 InvalidSyncMetadataDatabase - Sync metadata database is invalid.\n\n * 400 SyncOperation_InvalidSyncInterval - Cannot create or update sync group because the sync interval is invalid.\n\n * 404 ResourceNotFound - The requested resource was not found.\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 SyncOperation_HubServerNotFound - Hub logical server does not exist.\n\n * 404 SyncOperation_InvalidHubDatabase - Hub database is invalid.\n\n * 409 SyncOperation_DuplicateSyncGroupName - Cannot create sync group because the sync group with the same name already exists." + }, + "202": { + "description": "Creating or updating the sync group is in progress." + }, + "201": { + "description": "Successfully created the sync group.", + "schema": { + "$ref": "#/definitions/SyncGroup" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create a sync group": { + "$ref": "./examples/SyncGroupCreate.json" + }, + "Update a sync group": { + "$ref": "./examples/SyncGroupUpdate.json" + } + } + }, + "delete": { + "tags": [ + "SyncGroups" + ], + "description": "Deletes a sync group.", + "operationId": "SyncGroups_Delete", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the database on which the sync group is hosted.", + "required": true, + "type": "string" + }, + { + "name": "syncGroupName", + "in": "path", + "description": "The name of the sync group.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the sync group." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidSyncGroupCreateOrUpdateRequest - The create or update sync group request body is empty.\n\n * 400 InvalidSyncMemberCreateOrUpdateRequest - The create or update sync member request body is empty.\n\n * 400 InvalidSyncAgentCreateOrUpdateRequest - The create or update sync agent request body is empty.\n\n * 400 InvalidDatabaseResourceId - Invalid database resource identifier.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 InvalidSyncAgentResourceId - Invalid sync agent resource identifier.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 SyncOperation_GenericFailure - Failed to perform data sync operation.\n\n * 400 InvalidSyncGroup - Sync group is invalid.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 CannotCreateSyncGroupDueToQuotaExceeded - Cannot create sync group due to quota exceeded.\n\n * 400 SyncOperation_DuplicateSyncGroupDrop - The sync group is already being dropped.\n\n * 400 SyncOperation_WrongSyncDatabase - The sync database specified does not match the existing one.\n\n * 400 SyncOperation_UpdateSyncGroupWhenDropping - Cannot update the sync group because it is currently being dropped.\n\n * 400 SyncOperation_DwInSyncGroup - Cannot use datawarehouse edition in data sync.\n\n * 400 SyncOperation_MasterDbInSyncGroup - Cannot use logical master in data sync.\n\n * 400 SyncOperation_InvalidCredential - Credential of database is invalid.\n\n * 400 InvalidSyncMetadataDatabase - Sync metadata database is invalid.\n\n * 400 SyncOperation_InvalidSyncInterval - Cannot create or update sync group because the sync interval is invalid.\n\n * 404 ResourceNotFound - The requested resource was not found.\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 SyncOperation_HubServerNotFound - Hub logical server does not exist.\n\n * 404 SyncOperation_InvalidHubDatabase - Hub database is invalid.\n\n * 409 SyncOperation_DuplicateSyncGroupName - Cannot create sync group because the sync group with the same name already exists." + }, + "202": { + "description": "Deleting the sync group is in progress." + }, + "204": { + "description": "The specified sync group does not exist." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete a sync group": { + "$ref": "./examples/SyncGroupDelete.json" + } + } + }, + "patch": { + "tags": [ + "SyncGroups" + ], + "description": "Updates a sync group.", + "operationId": "SyncGroups_Update", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the database on which the sync group is hosted.", + "required": true, + "type": "string" + }, + { + "name": "syncGroupName", + "in": "path", + "description": "The name of the sync group.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The requested sync group resource state.", + "required": true, + "schema": { + "$ref": "#/definitions/SyncGroup" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the sync group.", + "schema": { + "$ref": "#/definitions/SyncGroup" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidSyncGroupCreateOrUpdateRequest - The create or update sync group request body is empty.\n\n * 400 InvalidSyncMemberCreateOrUpdateRequest - The create or update sync member request body is empty.\n\n * 400 InvalidSyncAgentCreateOrUpdateRequest - The create or update sync agent request body is empty.\n\n * 400 InvalidDatabaseResourceId - Invalid database resource identifier.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 InvalidSyncAgentResourceId - Invalid sync agent resource identifier.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 SyncOperation_GenericFailure - Failed to perform data sync operation.\n\n * 400 InvalidSyncGroup - Sync group is invalid.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 CannotCreateSyncGroupDueToQuotaExceeded - Cannot create sync group due to quota exceeded.\n\n * 400 SyncOperation_DuplicateSyncGroupDrop - The sync group is already being dropped.\n\n * 400 SyncOperation_WrongSyncDatabase - The sync database specified does not match the existing one.\n\n * 400 SyncOperation_UpdateSyncGroupWhenDropping - Cannot update the sync group because it is currently being dropped.\n\n * 400 SyncOperation_DwInSyncGroup - Cannot use datawarehouse edition in data sync.\n\n * 400 SyncOperation_MasterDbInSyncGroup - Cannot use logical master in data sync.\n\n * 400 SyncOperation_InvalidCredential - Credential of database is invalid.\n\n * 400 InvalidSyncMetadataDatabase - Sync metadata database is invalid.\n\n * 400 SyncOperation_InvalidSyncInterval - Cannot create or update sync group because the sync interval is invalid.\n\n * 404 ResourceNotFound - The requested resource was not found.\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 SyncOperation_HubServerNotFound - Hub logical server does not exist.\n\n * 404 SyncOperation_InvalidHubDatabase - Hub database is invalid.\n\n * 409 SyncOperation_DuplicateSyncGroupName - Cannot create sync group because the sync group with the same name already exists." + }, + "202": { + "description": "Updating the sync group is in progress." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update a sync group": { + "$ref": "./examples/SyncGroupPatch.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/syncGroups": { + "get": { + "tags": [ + "SyncGroups" + ], + "description": "Lists sync groups under a hub database.", + "operationId": "SyncGroups_ListByDatabase", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the database on which the sync group is hosted.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of sync groups.", + "schema": { + "$ref": "#/definitions/SyncGroupListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidSyncGroupCreateOrUpdateRequest - The create or update sync group request body is empty.\n\n * 400 InvalidSyncMemberCreateOrUpdateRequest - The create or update sync member request body is empty.\n\n * 400 InvalidSyncAgentCreateOrUpdateRequest - The create or update sync agent request body is empty.\n\n * 400 InvalidDatabaseResourceId - Invalid database resource identifier.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 InvalidSyncAgentResourceId - Invalid sync agent resource identifier.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 SyncOperation_GenericFailure - Failed to perform data sync operation.\n\n * 400 InvalidSyncGroup - Sync group is invalid.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 CannotCreateSyncGroupDueToQuotaExceeded - Cannot create sync group due to quota exceeded.\n\n * 400 SyncOperation_DuplicateSyncGroupDrop - The sync group is already being dropped.\n\n * 400 SyncOperation_WrongSyncDatabase - The sync database specified does not match the existing one.\n\n * 400 SyncOperation_UpdateSyncGroupWhenDropping - Cannot update the sync group because it is currently being dropped.\n\n * 400 SyncOperation_DwInSyncGroup - Cannot use datawarehouse edition in data sync.\n\n * 400 SyncOperation_MasterDbInSyncGroup - Cannot use logical master in data sync.\n\n * 400 SyncOperation_InvalidCredential - Credential of database is invalid.\n\n * 400 InvalidSyncMetadataDatabase - Sync metadata database is invalid.\n\n * 400 SyncOperation_InvalidSyncInterval - Cannot create or update sync group because the sync interval is invalid.\n\n * 404 ResourceNotFound - The requested resource was not found.\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 SyncOperation_HubServerNotFound - Hub logical server does not exist.\n\n * 404 SyncOperation_InvalidHubDatabase - Hub database is invalid.\n\n * 409 SyncOperation_DuplicateSyncGroupName - Cannot create sync group because the sync group with the same name already exists." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List sync groups under a given database": { + "$ref": "./examples/SyncGroupListByDatabase.json" + } + } + } + } + }, + "definitions": { + "SyncDatabaseIdListResult": { + "description": "A list of sync database ID properties.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/SyncDatabaseIdProperties" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "SyncDatabaseIdProperties": { + "description": "Properties of the sync database id.", + "type": "object", + "properties": { + "id": { + "description": "ARM resource id of sync database.", + "type": "string", + "readOnly": true + } + } + }, + "SyncFullSchemaPropertiesListResult": { + "description": "A list of sync schema properties.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/SyncFullSchemaProperties" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "SyncFullSchemaProperties": { + "description": "Properties of the database full schema.", + "type": "object", + "properties": { + "tables": { + "description": "List of tables in the database full schema.", + "type": "array", + "items": { + "$ref": "#/definitions/SyncFullSchemaTable" + }, + "readOnly": true + }, + "lastUpdateTime": { + "format": "date-time", + "description": "Last update time of the database schema.", + "type": "string", + "readOnly": true + } + } + }, + "SyncFullSchemaTable": { + "description": "Properties of the table in the database full schema.", + "type": "object", + "properties": { + "columns": { + "description": "List of columns in the table of database full schema.", + "type": "array", + "items": { + "$ref": "#/definitions/SyncFullSchemaTableColumn" + }, + "readOnly": true + }, + "errorId": { + "description": "Error id of the table.", + "type": "string", + "readOnly": true + }, + "hasError": { + "description": "If there is error in the table.", + "type": "boolean", + "readOnly": true + }, + "name": { + "description": "Name of the table.", + "type": "string", + "readOnly": true + }, + "quotedName": { + "description": "Quoted name of the table.", + "type": "string", + "readOnly": true + } + } + }, + "SyncFullSchemaTableColumn": { + "description": "Properties of the column in the table of database full schema.", + "type": "object", + "properties": { + "dataSize": { + "description": "Data size of the column.", + "type": "string", + "readOnly": true + }, + "dataType": { + "description": "Data type of the column.", + "type": "string", + "readOnly": true + }, + "errorId": { + "description": "Error id of the column.", + "type": "string", + "readOnly": true + }, + "hasError": { + "description": "If there is error in the table.", + "type": "boolean", + "readOnly": true + }, + "isPrimaryKey": { + "description": "If it is the primary key of the table.", + "type": "boolean", + "readOnly": true + }, + "name": { + "description": "Name of the column.", + "type": "string", + "readOnly": true + }, + "quotedName": { + "description": "Quoted name of the column.", + "type": "string", + "readOnly": true + } + } + }, + "SyncGroupLogListResult": { + "description": "A list of sync group log properties.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/SyncGroupLogProperties" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "SyncGroupLogProperties": { + "description": "Properties of an Azure SQL Database sync group log.", + "type": "object", + "properties": { + "timestamp": { + "format": "date-time", + "description": "Timestamp of the sync group log.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Type of the sync group log.", + "enum": [ + "All", + "Error", + "Warning", + "Success" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "SyncGroupLogType", + "modelAsString": true + } + }, + "source": { + "description": "Source of the sync group log.", + "type": "string", + "readOnly": true + }, + "details": { + "description": "Details of the sync group log.", + "type": "string", + "readOnly": true + }, + "tracingId": { + "format": "uuid", + "description": "TracingId of the sync group log.", + "type": "string", + "readOnly": true + }, + "operationStatus": { + "description": "OperationStatus of the sync group log.", + "type": "string", + "readOnly": true + } + } + }, + "SyncGroupProperties": { + "description": "Properties of a sync group.", + "type": "object", + "properties": { + "interval": { + "format": "int32", + "description": "Sync interval of the sync group.", + "type": "integer" + }, + "lastSyncTime": { + "format": "date-time", + "description": "Last sync time of the sync group.", + "type": "string", + "readOnly": true + }, + "conflictResolutionPolicy": { + "description": "Conflict resolution policy of the sync group.", + "enum": [ + "HubWin", + "MemberWin" + ], + "type": "string", + "x-ms-enum": { + "name": "SyncConflictResolutionPolicy", + "modelAsString": true + } + }, + "syncDatabaseId": { + "description": "ARM resource id of the sync database in the sync group.", + "type": "string" + }, + "hubDatabaseUserName": { + "description": "User name for the sync group hub database credential.", + "type": "string" + }, + "hubDatabasePassword": { + "description": "Password for the sync group hub database credential.", + "type": "string", + "x-ms-mutability": [ + "create", + "update" + ] + }, + "syncState": { + "description": "Sync state of the sync group.", + "enum": [ + "NotReady", + "Error", + "Warning", + "Progressing", + "Good" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "SyncGroupState", + "modelAsString": true + } + }, + "schema": { + "$ref": "#/definitions/SyncGroupSchema", + "description": "Sync schema of the sync group." + }, + "enableConflictLogging": { + "description": "If conflict logging is enabled.", + "type": "boolean" + }, + "conflictLoggingRetentionInDays": { + "format": "int32", + "description": "Conflict logging retention period.", + "type": "integer" + }, + "usePrivateLinkConnection": { + "description": "If use private link connection is enabled.", + "type": "boolean" + }, + "privateEndpointName": { + "description": "Private endpoint name of the sync group if use private link connection is enabled.", + "type": "string", + "readOnly": true + } + } + }, + "SyncGroupSchema": { + "description": "Properties of sync group schema.", + "type": "object", + "properties": { + "tables": { + "description": "List of tables in sync group schema.", + "type": "array", + "items": { + "$ref": "#/definitions/SyncGroupSchemaTable" + } + }, + "masterSyncMemberName": { + "description": "Name of master sync member where the schema is from.", + "type": "string" + } + } + }, + "SyncGroupSchemaTable": { + "description": "Properties of table in sync group schema.", + "type": "object", + "properties": { + "columns": { + "description": "List of columns in sync group schema.", + "type": "array", + "items": { + "$ref": "#/definitions/SyncGroupSchemaTableColumn" + } + }, + "quotedName": { + "description": "Quoted name of sync group schema table.", + "type": "string" + } + } + }, + "SyncGroupSchemaTableColumn": { + "description": "Properties of column in sync group table.", + "type": "object", + "properties": { + "quotedName": { + "description": "Quoted name of sync group table column.", + "type": "string" + }, + "dataSize": { + "description": "Data size of the column.", + "type": "string" + }, + "dataType": { + "description": "Data type of the column.", + "type": "string" + } + } + }, + "SyncGroup": { + "description": "An Azure SQL Database sync group.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "sku": { + "$ref": "../../../common/v1/types.json#/definitions/Sku", + "description": "The name and capacity of the SKU." + }, + "properties": { + "$ref": "#/definitions/SyncGroupProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "SyncGroupListResult": { + "description": "A list of sync groups.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/SyncGroup" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/SyncMembers.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/SyncMembers.json new file mode 100644 index 000000000000..c30dadfd6950 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/SyncMembers.json @@ -0,0 +1,747 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/syncGroups/{syncGroupName}/syncMembers/{syncMemberName}": { + "get": { + "tags": [ + "SyncMembers" + ], + "description": "Gets a sync member.", + "operationId": "SyncMembers_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the database on which the sync group is hosted.", + "required": true, + "type": "string" + }, + { + "name": "syncGroupName", + "in": "path", + "description": "The name of the sync group on which the sync member is hosted.", + "required": true, + "type": "string" + }, + { + "name": "syncMemberName", + "in": "path", + "description": "The name of the sync member.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the specified sync member.", + "schema": { + "$ref": "#/definitions/SyncMember" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidSyncGroupCreateOrUpdateRequest - The create or update sync group request body is empty.\n\n * 400 InvalidSyncMemberCreateOrUpdateRequest - The create or update sync member request body is empty.\n\n * 400 InvalidSyncAgentCreateOrUpdateRequest - The create or update sync agent request body is empty.\n\n * 400 InvalidDatabaseResourceId - Invalid database resource identifier.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 InvalidSyncAgentResourceId - Invalid sync agent resource identifier.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 SyncOperation_GenericFailure - Failed to perform data sync operation.\n\n * 400 InvalidSyncGroup - Sync group is invalid.\n\n * 400 InvalidSyncMember - Sync member is invalid.\n\n * 400 InvalidSyncAgent - Sync agent is invalid.\n\n * 400 CannotCreateSyncMemberDueToQuotaExceeded - Cannot create sync member due to quota exceeded.\n\n * 400 SyncOperation_DuplicateSyncMemberDrop - The sync member is already being dropped.\n\n * 400 SyncOperation_WrongSyncDatabase - The sync database specified does not match the existing one.\n\n * 400 SyncOperation_DwInSyncGroup - Cannot use datawarehouse edition in data sync.\n\n * 400 SyncOperation_MasterDbInSyncGroup - Cannot use logical master in data sync.\n\n * 400 SyncOperation_InvalidCredential - Credential of database is invalid.\n\n * 400 InvalidSyncMetadataDatabase - Sync metadata database is invalid.\n\n * 404 ResourceNotFound - The requested resource was not found.\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 SyncOperation_HubServerNotFound - Hub logical server does not exist.\n\n * 404 SyncOperation_InvalidHubDatabase - Hub database is invalid.\n\n * 409 SyncOperation_DuplicateSyncMemberName - Cannot create sync member because the sync member with the same name already exists." + } + }, + "x-ms-examples": { + "Get a sync member": { + "$ref": "./examples/SyncMemberGet.json" + } + } + }, + "put": { + "tags": [ + "SyncMembers" + ], + "description": "Creates or updates a sync member.", + "operationId": "SyncMembers_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the database on which the sync group is hosted.", + "required": true, + "type": "string" + }, + { + "name": "syncGroupName", + "in": "path", + "description": "The name of the sync group on which the sync member is hosted.", + "required": true, + "type": "string" + }, + { + "name": "syncMemberName", + "in": "path", + "description": "The name of the sync member.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The requested sync member resource state.", + "required": true, + "schema": { + "$ref": "#/definitions/SyncMember" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the sync member.", + "schema": { + "$ref": "#/definitions/SyncMember" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidSyncGroupCreateOrUpdateRequest - The create or update sync group request body is empty.\n\n * 400 InvalidSyncMemberCreateOrUpdateRequest - The create or update sync member request body is empty.\n\n * 400 InvalidSyncAgentCreateOrUpdateRequest - The create or update sync agent request body is empty.\n\n * 400 InvalidDatabaseResourceId - Invalid database resource identifier.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 InvalidSyncAgentResourceId - Invalid sync agent resource identifier.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 SyncOperation_GenericFailure - Failed to perform data sync operation.\n\n * 400 InvalidSyncGroup - Sync group is invalid.\n\n * 400 InvalidSyncMember - Sync member is invalid.\n\n * 400 InvalidSyncAgent - Sync agent is invalid.\n\n * 400 CannotCreateSyncMemberDueToQuotaExceeded - Cannot create sync member due to quota exceeded.\n\n * 400 SyncOperation_DuplicateSyncMemberDrop - The sync member is already being dropped.\n\n * 400 SyncOperation_WrongSyncDatabase - The sync database specified does not match the existing one.\n\n * 400 SyncOperation_DwInSyncGroup - Cannot use datawarehouse edition in data sync.\n\n * 400 SyncOperation_MasterDbInSyncGroup - Cannot use logical master in data sync.\n\n * 400 SyncOperation_InvalidCredential - Credential of database is invalid.\n\n * 400 InvalidSyncMetadataDatabase - Sync metadata database is invalid.\n\n * 404 ResourceNotFound - The requested resource was not found.\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 SyncOperation_HubServerNotFound - Hub logical server does not exist.\n\n * 404 SyncOperation_InvalidHubDatabase - Hub database is invalid.\n\n * 409 SyncOperation_DuplicateSyncMemberName - Cannot create sync member because the sync member with the same name already exists." + }, + "202": { + "description": "Creating or updating the sync member is in progress." + }, + "201": { + "description": "Successfully created the sync member.", + "schema": { + "$ref": "#/definitions/SyncMember" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create a new sync member": { + "$ref": "./examples/SyncMemberCreate.json" + }, + "Update a sync member": { + "$ref": "./examples/SyncMemberUpdate.json" + } + } + }, + "delete": { + "tags": [ + "SyncMembers" + ], + "description": "Deletes a sync member.", + "operationId": "SyncMembers_Delete", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the database on which the sync group is hosted.", + "required": true, + "type": "string" + }, + { + "name": "syncGroupName", + "in": "path", + "description": "The name of the sync group on which the sync member is hosted.", + "required": true, + "type": "string" + }, + { + "name": "syncMemberName", + "in": "path", + "description": "The name of the sync member.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the sync member." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidSyncGroupCreateOrUpdateRequest - The create or update sync group request body is empty.\n\n * 400 InvalidSyncMemberCreateOrUpdateRequest - The create or update sync member request body is empty.\n\n * 400 InvalidSyncAgentCreateOrUpdateRequest - The create or update sync agent request body is empty.\n\n * 400 InvalidDatabaseResourceId - Invalid database resource identifier.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 InvalidSyncAgentResourceId - Invalid sync agent resource identifier.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 SyncOperation_GenericFailure - Failed to perform data sync operation.\n\n * 400 InvalidSyncGroup - Sync group is invalid.\n\n * 400 InvalidSyncMember - Sync member is invalid.\n\n * 400 InvalidSyncAgent - Sync agent is invalid.\n\n * 400 CannotCreateSyncMemberDueToQuotaExceeded - Cannot create sync member due to quota exceeded.\n\n * 400 SyncOperation_DuplicateSyncMemberDrop - The sync member is already being dropped.\n\n * 400 SyncOperation_WrongSyncDatabase - The sync database specified does not match the existing one.\n\n * 400 SyncOperation_DwInSyncGroup - Cannot use datawarehouse edition in data sync.\n\n * 400 SyncOperation_MasterDbInSyncGroup - Cannot use logical master in data sync.\n\n * 400 SyncOperation_InvalidCredential - Credential of database is invalid.\n\n * 400 InvalidSyncMetadataDatabase - Sync metadata database is invalid.\n\n * 404 ResourceNotFound - The requested resource was not found.\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 SyncOperation_HubServerNotFound - Hub logical server does not exist.\n\n * 404 SyncOperation_InvalidHubDatabase - Hub database is invalid.\n\n * 409 SyncOperation_DuplicateSyncMemberName - Cannot create sync member because the sync member with the same name already exists." + }, + "202": { + "description": "Deleting the sync member is in progress." + }, + "204": { + "description": "The specified sync member does not exist." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete a sync member": { + "$ref": "./examples/SyncMemberDelete.json" + } + } + }, + "patch": { + "tags": [ + "SyncMembers" + ], + "description": "Updates an existing sync member.", + "operationId": "SyncMembers_Update", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the database on which the sync group is hosted.", + "required": true, + "type": "string" + }, + { + "name": "syncGroupName", + "in": "path", + "description": "The name of the sync group on which the sync member is hosted.", + "required": true, + "type": "string" + }, + { + "name": "syncMemberName", + "in": "path", + "description": "The name of the sync member.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The requested sync member resource state.", + "required": true, + "schema": { + "$ref": "#/definitions/SyncMember" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the sync member.", + "schema": { + "$ref": "#/definitions/SyncMember" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidSyncGroupCreateOrUpdateRequest - The create or update sync group request body is empty.\n\n * 400 InvalidSyncMemberCreateOrUpdateRequest - The create or update sync member request body is empty.\n\n * 400 InvalidSyncAgentCreateOrUpdateRequest - The create or update sync agent request body is empty.\n\n * 400 InvalidDatabaseResourceId - Invalid database resource identifier.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 InvalidSyncAgentResourceId - Invalid sync agent resource identifier.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 SyncOperation_GenericFailure - Failed to perform data sync operation.\n\n * 400 InvalidSyncGroup - Sync group is invalid.\n\n * 400 InvalidSyncMember - Sync member is invalid.\n\n * 400 InvalidSyncAgent - Sync agent is invalid.\n\n * 400 CannotCreateSyncMemberDueToQuotaExceeded - Cannot create sync member due to quota exceeded.\n\n * 400 SyncOperation_DuplicateSyncMemberDrop - The sync member is already being dropped.\n\n * 400 SyncOperation_WrongSyncDatabase - The sync database specified does not match the existing one.\n\n * 400 SyncOperation_DwInSyncGroup - Cannot use datawarehouse edition in data sync.\n\n * 400 SyncOperation_MasterDbInSyncGroup - Cannot use logical master in data sync.\n\n * 400 SyncOperation_InvalidCredential - Credential of database is invalid.\n\n * 400 InvalidSyncMetadataDatabase - Sync metadata database is invalid.\n\n * 404 ResourceNotFound - The requested resource was not found.\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 SyncOperation_HubServerNotFound - Hub logical server does not exist.\n\n * 404 SyncOperation_InvalidHubDatabase - Hub database is invalid.\n\n * 409 SyncOperation_DuplicateSyncMemberName - Cannot create sync member because the sync member with the same name already exists." + }, + "202": { + "description": "Updating the sync member is in progress." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update an existing sync member": { + "$ref": "./examples/SyncMemberPatch.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/syncGroups/{syncGroupName}/syncMembers": { + "get": { + "tags": [ + "SyncMembers" + ], + "description": "Lists sync members in the given sync group.", + "operationId": "SyncMembers_ListBySyncGroup", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the database on which the sync group is hosted.", + "required": true, + "type": "string" + }, + { + "name": "syncGroupName", + "in": "path", + "description": "The name of the sync group.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of sync members.", + "schema": { + "$ref": "#/definitions/SyncMemberListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidSyncGroupCreateOrUpdateRequest - The create or update sync group request body is empty.\n\n * 400 InvalidSyncMemberCreateOrUpdateRequest - The create or update sync member request body is empty.\n\n * 400 InvalidSyncAgentCreateOrUpdateRequest - The create or update sync agent request body is empty.\n\n * 400 InvalidDatabaseResourceId - Invalid database resource identifier.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 InvalidSyncAgentResourceId - Invalid sync agent resource identifier.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 SyncOperation_GenericFailure - Failed to perform data sync operation.\n\n * 400 InvalidSyncGroup - Sync group is invalid.\n\n * 400 InvalidSyncMember - Sync member is invalid.\n\n * 400 InvalidSyncAgent - Sync agent is invalid.\n\n * 400 CannotCreateSyncMemberDueToQuotaExceeded - Cannot create sync member due to quota exceeded.\n\n * 400 SyncOperation_DuplicateSyncMemberDrop - The sync member is already being dropped.\n\n * 400 SyncOperation_WrongSyncDatabase - The sync database specified does not match the existing one.\n\n * 400 SyncOperation_DwInSyncGroup - Cannot use datawarehouse edition in data sync.\n\n * 400 SyncOperation_MasterDbInSyncGroup - Cannot use logical master in data sync.\n\n * 400 SyncOperation_InvalidCredential - Credential of database is invalid.\n\n * 400 InvalidSyncMetadataDatabase - Sync metadata database is invalid.\n\n * 404 ResourceNotFound - The requested resource was not found.\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 SyncOperation_HubServerNotFound - Hub logical server does not exist.\n\n * 404 SyncOperation_InvalidHubDatabase - Hub database is invalid.\n\n * 409 SyncOperation_DuplicateSyncMemberName - Cannot create sync member because the sync member with the same name already exists." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List sync members under a sync group": { + "$ref": "./examples/SyncMemberListBySyncGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/syncGroups/{syncGroupName}/syncMembers/{syncMemberName}/schemas": { + "get": { + "tags": [ + "SyncMembers" + ], + "description": "Gets a sync member database schema.", + "operationId": "SyncMembers_ListMemberSchemas", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the database on which the sync group is hosted.", + "required": true, + "type": "string" + }, + { + "name": "syncGroupName", + "in": "path", + "description": "The name of the sync group on which the sync member is hosted.", + "required": true, + "type": "string" + }, + { + "name": "syncMemberName", + "in": "path", + "description": "The name of the sync member.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully get a sync member schema.", + "schema": { + "$ref": "#/definitions/SyncFullSchemaPropertiesListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidSyncGroupCreateOrUpdateRequest - The create or update sync group request body is empty.\n\n * 400 InvalidSyncMemberCreateOrUpdateRequest - The create or update sync member request body is empty.\n\n * 400 InvalidSyncAgentCreateOrUpdateRequest - The create or update sync agent request body is empty.\n\n * 400 InvalidDatabaseResourceId - Invalid database resource identifier.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 InvalidSyncAgentResourceId - Invalid sync agent resource identifier.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 SyncOperation_GenericFailure - Failed to perform data sync operation.\n\n * 400 InvalidSyncGroup - Sync group is invalid.\n\n * 400 InvalidSyncMember - Sync member is invalid.\n\n * 400 InvalidSyncAgent - Sync agent is invalid.\n\n * 400 CannotCreateSyncMemberDueToQuotaExceeded - Cannot create sync member due to quota exceeded.\n\n * 400 SyncOperation_DuplicateSyncMemberDrop - The sync member is already being dropped.\n\n * 400 SyncOperation_WrongSyncDatabase - The sync database specified does not match the existing one.\n\n * 400 SyncOperation_DwInSyncGroup - Cannot use datawarehouse edition in data sync.\n\n * 400 SyncOperation_MasterDbInSyncGroup - Cannot use logical master in data sync.\n\n * 400 SyncOperation_InvalidCredential - Credential of database is invalid.\n\n * 400 InvalidSyncMetadataDatabase - Sync metadata database is invalid.\n\n * 404 ResourceNotFound - The requested resource was not found.\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 SyncOperation_HubServerNotFound - Hub logical server does not exist.\n\n * 404 SyncOperation_InvalidHubDatabase - Hub database is invalid.\n\n * 409 SyncOperation_DuplicateSyncMemberName - Cannot create sync member because the sync member with the same name already exists." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get a sync member schema": { + "$ref": "./examples/SyncMemberGetSchema.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/syncGroups/{syncGroupName}/syncMembers/{syncMemberName}/refreshSchema": { + "post": { + "tags": [ + "SyncMembers" + ], + "description": "Refreshes a sync member database schema.", + "operationId": "SyncMembers_RefreshMemberSchema", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the database on which the sync group is hosted.", + "required": true, + "type": "string" + }, + { + "name": "syncGroupName", + "in": "path", + "description": "The name of the sync group on which the sync member is hosted.", + "required": true, + "type": "string" + }, + { + "name": "syncMemberName", + "in": "path", + "description": "The name of the sync member.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully refreshed a sync member schema." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidSyncGroupCreateOrUpdateRequest - The create or update sync group request body is empty.\n\n * 400 InvalidSyncMemberCreateOrUpdateRequest - The create or update sync member request body is empty.\n\n * 400 InvalidSyncAgentCreateOrUpdateRequest - The create or update sync agent request body is empty.\n\n * 400 InvalidDatabaseResourceId - Invalid database resource identifier.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 InvalidSyncAgentResourceId - Invalid sync agent resource identifier.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 SyncOperation_GenericFailure - Failed to perform data sync operation.\n\n * 400 InvalidSyncGroup - Sync group is invalid.\n\n * 400 InvalidSyncMember - Sync member is invalid.\n\n * 400 InvalidSyncAgent - Sync agent is invalid.\n\n * 400 CannotCreateSyncMemberDueToQuotaExceeded - Cannot create sync member due to quota exceeded.\n\n * 400 SyncOperation_DuplicateSyncMemberDrop - The sync member is already being dropped.\n\n * 400 SyncOperation_WrongSyncDatabase - The sync database specified does not match the existing one.\n\n * 400 SyncOperation_DwInSyncGroup - Cannot use datawarehouse edition in data sync.\n\n * 400 SyncOperation_MasterDbInSyncGroup - Cannot use logical master in data sync.\n\n * 400 SyncOperation_InvalidCredential - Credential of database is invalid.\n\n * 400 InvalidSyncMetadataDatabase - Sync metadata database is invalid.\n\n * 404 ResourceNotFound - The requested resource 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 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 SyncOperation_HubServerNotFound - Hub logical server does not exist.\n\n * 404 SyncOperation_InvalidHubDatabase - Hub database is invalid.\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 SyncOperation_DuplicateSyncMemberName - Cannot create sync member because the sync member with the same name already exists.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation." + }, + "202": { + "description": "The sync member schema refresh operation is on going." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Refresh a sync member database schema": { + "$ref": "./examples/SyncMemberRefreshSchema.json" + } + } + } + } + }, + "definitions": { + "SyncMemberProperties": { + "description": "Properties of a sync member.", + "type": "object", + "properties": { + "databaseType": { + "description": "Database type of the sync member.", + "enum": [ + "AzureSqlDatabase", + "SqlServerDatabase" + ], + "type": "string", + "x-ms-enum": { + "name": "SyncMemberDbType", + "modelAsString": true + } + }, + "syncAgentId": { + "description": "ARM resource id of the sync agent in the sync member.", + "type": "string" + }, + "sqlServerDatabaseId": { + "format": "uuid", + "description": "SQL Server database id of the sync member.", + "type": "string" + }, + "syncMemberAzureDatabaseResourceId": { + "description": "ARM resource id of the sync member logical database, for sync members in Azure.", + "type": "string" + }, + "usePrivateLinkConnection": { + "description": "Whether to use private link connection.", + "type": "boolean" + }, + "privateEndpointName": { + "description": "Private endpoint name of the sync member if use private link connection is enabled, for sync members in Azure.", + "type": "string", + "readOnly": true + }, + "serverName": { + "description": "Server name of the member database in the sync member", + "type": "string" + }, + "databaseName": { + "description": "Database name of the member database in the sync member.", + "type": "string" + }, + "userName": { + "description": "User name of the member database in the sync member.", + "type": "string" + }, + "password": { + "description": "Password of the member database in the sync member.", + "type": "string", + "x-ms-mutability": [ + "create", + "update" + ] + }, + "syncDirection": { + "description": "Sync direction of the sync member.", + "enum": [ + "Bidirectional", + "OneWayMemberToHub", + "OneWayHubToMember" + ], + "type": "string", + "x-ms-enum": { + "name": "SyncDirection", + "modelAsString": true + } + }, + "syncState": { + "description": "Sync state of the sync member.", + "enum": [ + "SyncInProgress", + "SyncSucceeded", + "SyncFailed", + "DisabledTombstoneCleanup", + "DisabledBackupRestore", + "SyncSucceededWithWarnings", + "SyncCancelling", + "SyncCancelled", + "UnProvisioned", + "Provisioning", + "Provisioned", + "ProvisionFailed", + "DeProvisioning", + "DeProvisioned", + "DeProvisionFailed", + "Reprovisioning", + "ReprovisionFailed", + "UnReprovisioned" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "SyncMemberState", + "modelAsString": true + } + } + } + }, + "SyncMember": { + "description": "An Azure SQL Database sync member.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/SyncMemberProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "SyncMemberListResult": { + "description": "A list of Azure SQL Database sync members.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/SyncMember" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "SyncFullSchemaPropertiesListResult": { + "description": "A list of sync schema properties.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/SyncFullSchemaProperties" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "SyncFullSchemaProperties": { + "description": "Properties of the database full schema.", + "type": "object", + "properties": { + "tables": { + "description": "List of tables in the database full schema.", + "type": "array", + "items": { + "$ref": "#/definitions/SyncFullSchemaTable" + }, + "readOnly": true + }, + "lastUpdateTime": { + "format": "date-time", + "description": "Last update time of the database schema.", + "type": "string", + "readOnly": true + } + } + }, + "SyncFullSchemaTable": { + "description": "Properties of the table in the database full schema.", + "type": "object", + "properties": { + "columns": { + "description": "List of columns in the table of database full schema.", + "type": "array", + "items": { + "$ref": "#/definitions/SyncFullSchemaTableColumn" + }, + "readOnly": true + }, + "errorId": { + "description": "Error id of the table.", + "type": "string", + "readOnly": true + }, + "hasError": { + "description": "If there is error in the table.", + "type": "boolean", + "readOnly": true + }, + "name": { + "description": "Name of the table.", + "type": "string", + "readOnly": true + }, + "quotedName": { + "description": "Quoted name of the table.", + "type": "string", + "readOnly": true + } + } + }, + "SyncFullSchemaTableColumn": { + "description": "Properties of the column in the table of database full schema.", + "type": "object", + "properties": { + "dataSize": { + "description": "Data size of the column.", + "type": "string", + "readOnly": true + }, + "dataType": { + "description": "Data type of the column.", + "type": "string", + "readOnly": true + }, + "errorId": { + "description": "Error id of the column.", + "type": "string", + "readOnly": true + }, + "hasError": { + "description": "If there is error in the table.", + "type": "boolean", + "readOnly": true + }, + "isPrimaryKey": { + "description": "If it is the primary key of the table.", + "type": "boolean", + "readOnly": true + }, + "name": { + "description": "Name of the column.", + "type": "string", + "readOnly": true + }, + "quotedName": { + "description": "Quoted name of the column.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/TdeCertificates.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/TdeCertificates.json new file mode 100644 index 000000000000..1956f9f42e74 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/TdeCertificates.json @@ -0,0 +1,133 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/tdeCertificates": { + "post": { + "tags": [ + "TdeCertificates" + ], + "description": "Creates a TDE certificate for a given server.", + "operationId": "TdeCertificates_Create", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "parameters", + "in": "body", + "description": "The requested TDE certificate to be created or updated.", + "required": true, + "schema": { + "$ref": "#/definitions/TdeCertificate" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully created the TDE certificate." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 MissingPrivateBlob - The private blob is missing.\n\n * 400 InvalidPrivateBlobOrPassword - Invalid private blob or password specified.\n\n * 400 PrivateBlobWithoutPrivateKey - The provided blob does not contain private key.\n\n * 400 InvalidResourceRequestBody - The resource or resource properties in the request body is empty or invalid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Upload a TDE certificate": { + "$ref": "./examples/SqlTdeCertificateCreate.json" + } + } + } + } + }, + "definitions": { + "TdeCertificateProperties": { + "description": "Properties of a TDE certificate.", + "required": [ + "privateBlob" + ], + "type": "object", + "properties": { + "privateBlob": { + "description": "The base64 encoded certificate private blob.", + "type": "string", + "x-ms-mutability": [ + "create", + "update" + ] + }, + "certPassword": { + "description": "The certificate password.", + "type": "string", + "x-ms-mutability": [ + "create", + "update" + ] + } + } + }, + "TdeCertificate": { + "description": "A TDE certificate that can be uploaded into a server.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/TdeCertificateProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/TimeZones.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/TimeZones.json new file mode 100644 index 000000000000..19036f58641a --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/TimeZones.json @@ -0,0 +1,172 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/timeZones": { + "get": { + "tags": [ + "TimeZones" + ], + "description": "Gets a list of managed instance time zones by location.", + "operationId": "TimeZones_ListByLocation", + "parameters": [ + { + "name": "locationName", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of time zones.", + "schema": { + "$ref": "#/definitions/TimeZoneListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 HkCannotSwitchToInactive - The database cannot proceed with pricing-tier update as it has memory-optimized objects. Please drop such objects and try again.\n\n * 400 ManagedInstanceInvalidStorageSizeLessThenCurrentSizeUsed - Invalid storage size: Storage size limit ({0} GB) is less that current storage used ({1} GB). Please specify higher storage size limit.\n\n * 400 InstanceTimezoneUpdateNotSupported - Instance timezone update not supported.\n\n * 400 CreateManagedInstanceWithNonDefaultTimezoneNotSupported - Create Managed Instance with non-default timezone not supported.\n\n * 400 ManagedInstanceIpAddressRangeLimit - Cannot perform creation/scaling of the managed instance as there are not enough available IP addresses in the subnet for performing the operation.\n\n * 400 VnetDelegationNotAllowed - User tried to inject Managed Server to subnet which is delegated.\n\n * 400 SubnetHasResourcesOfDifferentType - User tried to create MI in subnet that has resources of different type.\n\n * 400 UpdateManagedServerWithMaintenanceWindowNotAllowed - Update of Managed Instance with maintenance window settings is not allowed.\n\n * 400 VnetPrepareNIPFailed - User tried to prepare subnet that has a conflict with NetworkIntentPolicy.\n\n * 400 InvalidUsername - Supplied user name contains invalid characters.\n\n * 400 ManagedInstanceDeprecatedHardwareFamily - Changing the hardware generation to deprecated {0} generation is not possible.\n\n * 400 ManagedInstanceBackupStorageTypeNotSupported - Backup storage type parameter is not allowed in the instance update operation.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 InstancePoolNotEnoughCapacity - An instance pool does not have enough capacity\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 ManagedInstanceZoneRedudantFeatureNotSupported - ZoneRedundant feature is not supported for the selected service tier. For more details visit aka.ms/sqlmi-service-tier-characteristics.\n\n * 400 ManagedInstanceZoneRedudantFeatureCantBeEnabled - Enabling zoneRedundant feature is not possible once managed instance is created. For more details visit aka.ms/sqlmi-high-availability.\n\n * 400 ManagedInstanceZoneRedudantFeatureCantBeDisabled - Disabling zoneRedundant feature is not possible once managed instance is created. For more details visit aka.ms/sqlmi-high-availability.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 ManagedInstanceSloUpdateFailed - SLO '{0}' operation cannot succeed as the memory usage of '{1}' exceeds the quota.\n\n * 400 ManagedInstanceLocalStorageUpdateSloDisabled - Update SLO for managed instances with local storage is not supported yet.\n\n * 400 InvalidLoginName - The provided login name is invalid.\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 PasswordTooShort - The provided password is too short\n\n * 400 PasswordTooLong - The provided password is too long.\n\n * 400 PasswordNotComplex - The provided password is not complex enough.\n\n * 400 GatewayInvalidEdition - '{0}' is not a valid database edition in this version of SQL Server.\n\n * 400 InvalidSubnetResourceId - The provided subnet resource ID for the managed instance create or update is invalid.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 InvalidLocation - An invalid location was specified.\n\n * 400 VnetInWrongRegion - Virtual network is in wrong region.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 VnetAddressRangeError - Virtual network address range is invalid.\n\n * 400 VnetConfigIsNotAllowed - Virtual network configuration is not allowed.\n\n * 400 InvalidCollation - Invalid collation.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 ManagedInstanceClassicVnetNotSupported - Managed Instance cannot be joined to a classic virtual network.\n\n * 400 AlterDbDeactivatedNotSupported - Database Operation failed for Server '{0}', Database '{1}' due to unexpected delay. Please try again.\n\n * 400 RegionDoesNotAllowProvisioning - The selected location is not accepting new Windows Azure SQL Database servers. This may change at a later time.\n\n * 400 VnetConfigHasNsg - User tried to inject Managed Server subnet with Network Security Groups.\n\n * 400 VnetConfigHasNoUdr - User tried to inject Managed Server subnet without default User Defined Route Table.\n\n * 400 VnetConfigHasInvalidUdr - User tried to inject Managed Server subnet with invalid User Defined Route Table.\n\n * 400 VnetConfigHasInvalidDns - User tried to inject Managed Server subnet with invalid custom DNS.\n\n * 400 VnetConfigHasServiceEndpoints - User tried to inject Managed Server subnet with service endpoints.\n\n * 400 VnetSubnetIsInUse - User tried to inject Managed Server subnet that is not empty.\n\n * 400 VnetSubnetIsLocked - User tried to inject Managed Server subnet that is in locked scope.\n\n * 400 VnetSubnetIsGateway - User tried to inject Managed Server subnet that is Gateway subnet.\n\n * 400 VnetSubnetIsUnknown - User tried to inject Managed Server subnet that does not exist.\n\n * 400 VnetSubnetConflictWithIntendedPolicy - User tried to inject Managed Server subnet that has a conflict with IntendedPolicy.\n\n * 400 NameAlreadyExists - The provided name already exists.\n\n * 400 ManagedInstanceInvalidEditionForSku - The specified edition {0} is not consistent with the specified SKU {1}.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 ManagedInstanceInvalidLicenseType - The specified license type {0} is not valid.\n\n * 400 ManagedInstanceUpdateSloInProgress - \"The operation could not be completed because a service tier change is in progress for managed instance '{0}.' Please wait for the operation in progress to complete and try again.\"\n\n * 400 VnetResourceNotFound - Resource not found: '{0}'.\n\n * 400 InvalidTimezone - Invalid timezone.\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 InstanceCollationUpdateNotSupported - User cannot change instance collation on Managed Instance.\n\n * 400 CreateManagedInstanceWithNonDefaultCollationNotSupported - User can create a Managed Instance only with collation 'SQL_Latin1_General_CP1_CI_AS'.\n\n * 400 ManagedInstanceOperationInProgress - The operation could not be completed because {0} operation is in progress. Please wait for the operation in progress to complete and try again.\n\n * 400 ManagedInstanceExceedMaxAzureStorage - The operation could not be completed because total allocated storage size for General Purpose instance would exceed {0}. Please reduce the number of database files and retry operation.\n\n * 400 ManagedInstanceHasGeoReplica - The operation could not be completed because instance has configured geo replicated secondary instance.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 ResourceDoesNotExist - Resource with the name '{0}' does not exist. To continue, specify a valid resource name.\n\n * 405 InvalidVcoreValue - vCore value {0} is not valid. Please specify a valid vCore value.\n\n * 405 InvalidHardwareGenerationValue - HardwareGeneration {0} is not valid. Please specify a valid HardwareGeneration value.\n\n * 405 InvalidStorageSizeValue - \"Invalid storage size: {0} GB. Storage size must be specified between {1} and {2} gigabytes, in increments of {3} GB.\n\n * 409 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ServerAlreadyExists - Duplicate server name.\n\n * 409 ServerOverridePreconditionFailed - Failed to apply server override on category '{0}', because physical db or instance '{1}' in server '{2}' is currently not in 'Ready' or 'Deactivated' state.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 ManagedInstanceIsBusy - The server '{0}' is currently busy. Please wait a few minutes before trying again.\n\n * 409 ServerQuotaExceeded - Server cannot be added to a subscription because it will exceed quota.\n\n * 429 ConflictingSubscriptionOperation - An operation is currently in progress for the subscription.\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 GatewayInternalServerError - The server encountered an unexpected exception.\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 managed instance time zones by location": { + "$ref": "./examples/ManagedInstanceTimeZoneListByLocation.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Sql/locations/{locationName}/timeZones/{timeZoneId}": { + "get": { + "tags": [ + "TimeZones" + ], + "description": "Gets a managed instance time zone.", + "operationId": "TimeZones_Get", + "parameters": [ + { + "name": "locationName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "timeZoneId", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the specified time zone.", + "schema": { + "$ref": "#/definitions/TimeZone" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 HkCannotSwitchToInactive - The database cannot proceed with pricing-tier update as it has memory-optimized objects. Please drop such objects and try again.\n\n * 400 ManagedInstanceInvalidStorageSizeLessThenCurrentSizeUsed - Invalid storage size: Storage size limit ({0} GB) is less that current storage used ({1} GB). Please specify higher storage size limit.\n\n * 400 InstanceTimezoneUpdateNotSupported - Instance timezone update not supported.\n\n * 400 CreateManagedInstanceWithNonDefaultTimezoneNotSupported - Create Managed Instance with non-default timezone not supported.\n\n * 400 ManagedInstanceIpAddressRangeLimit - Cannot perform creation/scaling of the managed instance as there are not enough available IP addresses in the subnet for performing the operation.\n\n * 400 VnetDelegationNotAllowed - User tried to inject Managed Server to subnet which is delegated.\n\n * 400 SubnetHasResourcesOfDifferentType - User tried to create MI in subnet that has resources of different type.\n\n * 400 UpdateManagedServerWithMaintenanceWindowNotAllowed - Update of Managed Instance with maintenance window settings is not allowed.\n\n * 400 VnetPrepareNIPFailed - User tried to prepare subnet that has a conflict with NetworkIntentPolicy.\n\n * 400 InvalidUsername - Supplied user name contains invalid characters.\n\n * 400 ManagedInstanceDeprecatedHardwareFamily - Changing the hardware generation to deprecated {0} generation is not possible.\n\n * 400 ManagedInstanceBackupStorageTypeNotSupported - Backup storage type parameter is not allowed in the instance update operation.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 InstancePoolNotEnoughCapacity - An instance pool does not have enough capacity\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 ManagedInstanceZoneRedudantFeatureNotSupported - ZoneRedundant feature is not supported for the selected service tier. For more details visit aka.ms/sqlmi-service-tier-characteristics.\n\n * 400 ManagedInstanceZoneRedudantFeatureCantBeEnabled - Enabling zoneRedundant feature is not possible once managed instance is created. For more details visit aka.ms/sqlmi-high-availability.\n\n * 400 ManagedInstanceZoneRedudantFeatureCantBeDisabled - Disabling zoneRedundant feature is not possible once managed instance is created. For more details visit aka.ms/sqlmi-high-availability.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 ManagedInstanceSloUpdateFailed - SLO '{0}' operation cannot succeed as the memory usage of '{1}' exceeds the quota.\n\n * 400 ManagedInstanceLocalStorageUpdateSloDisabled - Update SLO for managed instances with local storage is not supported yet.\n\n * 400 InvalidLoginName - The provided login name is invalid.\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 PasswordTooShort - The provided password is too short\n\n * 400 PasswordTooLong - The provided password is too long.\n\n * 400 PasswordNotComplex - The provided password is not complex enough.\n\n * 400 GatewayInvalidEdition - '{0}' is not a valid database edition in this version of SQL Server.\n\n * 400 InvalidSubnetResourceId - The provided subnet resource ID for the managed instance create or update is invalid.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 InvalidLocation - An invalid location was specified.\n\n * 400 VnetInWrongRegion - Virtual network is in wrong region.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 VnetAddressRangeError - Virtual network address range is invalid.\n\n * 400 VnetConfigIsNotAllowed - Virtual network configuration is not allowed.\n\n * 400 InvalidCollation - Invalid collation.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 ManagedInstanceClassicVnetNotSupported - Managed Instance cannot be joined to a classic virtual network.\n\n * 400 AlterDbDeactivatedNotSupported - Database Operation failed for Server '{0}', Database '{1}' due to unexpected delay. Please try again.\n\n * 400 RegionDoesNotAllowProvisioning - The selected location is not accepting new Windows Azure SQL Database servers. This may change at a later time.\n\n * 400 VnetConfigHasNsg - User tried to inject Managed Server subnet with Network Security Groups.\n\n * 400 VnetConfigHasNoUdr - User tried to inject Managed Server subnet without default User Defined Route Table.\n\n * 400 VnetConfigHasInvalidUdr - User tried to inject Managed Server subnet with invalid User Defined Route Table.\n\n * 400 VnetConfigHasInvalidDns - User tried to inject Managed Server subnet with invalid custom DNS.\n\n * 400 VnetConfigHasServiceEndpoints - User tried to inject Managed Server subnet with service endpoints.\n\n * 400 VnetSubnetIsInUse - User tried to inject Managed Server subnet that is not empty.\n\n * 400 VnetSubnetIsLocked - User tried to inject Managed Server subnet that is in locked scope.\n\n * 400 VnetSubnetIsGateway - User tried to inject Managed Server subnet that is Gateway subnet.\n\n * 400 VnetSubnetIsUnknown - User tried to inject Managed Server subnet that does not exist.\n\n * 400 VnetSubnetConflictWithIntendedPolicy - User tried to inject Managed Server subnet that has a conflict with IntendedPolicy.\n\n * 400 NameAlreadyExists - The provided name already exists.\n\n * 400 ManagedInstanceInvalidEditionForSku - The specified edition {0} is not consistent with the specified SKU {1}.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 ManagedInstanceInvalidLicenseType - The specified license type {0} is not valid.\n\n * 400 ManagedInstanceUpdateSloInProgress - \"The operation could not be completed because a service tier change is in progress for managed instance '{0}.' Please wait for the operation in progress to complete and try again.\"\n\n * 400 VnetResourceNotFound - Resource not found: '{0}'.\n\n * 400 InvalidTimezone - Invalid timezone.\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 InstanceCollationUpdateNotSupported - User cannot change instance collation on Managed Instance.\n\n * 400 CreateManagedInstanceWithNonDefaultCollationNotSupported - User can create a Managed Instance only with collation 'SQL_Latin1_General_CP1_CI_AS'.\n\n * 400 ManagedInstanceOperationInProgress - The operation could not be completed because {0} operation is in progress. Please wait for the operation in progress to complete and try again.\n\n * 400 ManagedInstanceExceedMaxAzureStorage - The operation could not be completed because total allocated storage size for General Purpose instance would exceed {0}. Please reduce the number of database files and retry operation.\n\n * 400 ManagedInstanceHasGeoReplica - The operation could not be completed because instance has configured geo replicated secondary instance.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 ResourceDoesNotExist - Resource with the name '{0}' does not exist. To continue, specify a valid resource name.\n\n * 405 InvalidVcoreValue - vCore value {0} is not valid. Please specify a valid vCore value.\n\n * 405 InvalidHardwareGenerationValue - HardwareGeneration {0} is not valid. Please specify a valid HardwareGeneration value.\n\n * 405 InvalidStorageSizeValue - \"Invalid storage size: {0} GB. Storage size must be specified between {1} and {2} gigabytes, in increments of {3} GB.\n\n * 409 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ServerAlreadyExists - Duplicate server name.\n\n * 409 ServerOverridePreconditionFailed - Failed to apply server override on category '{0}', because physical db or instance '{1}' in server '{2}' is currently not in 'Ready' or 'Deactivated' state.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 ManagedInstanceIsBusy - The server '{0}' is currently busy. Please wait a few minutes before trying again.\n\n * 409 ServerQuotaExceeded - Server cannot be added to a subscription because it will exceed quota.\n\n * 429 ConflictingSubscriptionOperation - An operation is currently in progress for the subscription.\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 GatewayInternalServerError - The server encountered an unexpected exception.\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": { + "Get managed instance time zone": { + "$ref": "./examples/ManagedInstanceTimeZoneGet.json" + } + } + } + } + }, + "definitions": { + "TimeZoneListResult": { + "description": "A list of time zones.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/TimeZone" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "TimeZoneProperties": { + "description": "The properties of a time zone.", + "type": "object", + "properties": { + "timeZoneId": { + "description": "The time zone id", + "type": "string", + "readOnly": true + }, + "displayName": { + "description": "The time zone display name", + "type": "string", + "readOnly": true + } + } + }, + "TimeZone": { + "description": "Time Zone.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/TimeZoneProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + } + }, + "parameters": {}, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/TransparentDataEncryptions.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/TransparentDataEncryptions.json new file mode 100644 index 000000000000..7b857543ed5b --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/TransparentDataEncryptions.json @@ -0,0 +1,287 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/transparentDataEncryption/{tdeName}": { + "get": { + "tags": [ + "TransparentDataEncryptions" + ], + "description": "Gets a logical database's transparent data encryption.", + "operationId": "TransparentDataEncryptions_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "required": true, + "type": "string" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the logical database for which the transparent data encryption is defined.", + "required": true, + "type": "string" + }, + { + "name": "tdeName", + "in": "path", + "description": "The name of the transparent data encryption configuration.", + "required": true, + "type": "string", + "enum": [ + "current" + ], + "x-ms-enum": { + "name": "TransparentDataEncryptionName", + "modelAsString": true + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the Logical database transparent data encryption.", + "schema": { + "$ref": "#/definitions/LogicalDatabaseTransparentDataEncryption" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\n\n * 400 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 400 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 400 ReadOnly - Cannot enable or modify database encryption on a database that is read-only, has read-only files or is not recovered.\n\n * 400 CanNotDropAlterOnMirror - Please modify Transparent Data Encryption on the primary databases.\n\n * 401 CanNotChangeReadOnlyDuringTdeScan - Cannot modify filegroup read-only/read-write state while an encryption transition is in progress.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 NeedsLogBackup - Please wait several minutes for a log backup to occur. \n\n * 409 EncryptionInProgress - Cannot modify encryption while an encryption scan in progress.\n\n * 409 KeyChangeInProgress - Cannot change database encryption key while an encryption, decryption, or key change scan is in progress.\n\n * 409 NoBulkOperationLock - CREATE/ALTER/DROP DATABASE ENCRYPTION KEY failed because a lock could not be placed on database. Try again later.\n\n * 409 AltStateConflict - The operation cannot be performed on database because it is involved in a database mirroring session or an availability group. Some operations are not allowed on a database that is participating in a database mirroring session or in an availability group.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 503 NoDekLock - CREATE/ALTER/DROP DATABASE ENCRYPTION KEY failed because a lock could not be placed on the database. Try again later." + } + }, + "x-ms-examples": { + "Get a database's transparent data encryption": { + "$ref": "./examples/TransparentDataEncryptionGet.json" + } + } + }, + "put": { + "tags": [ + "TransparentDataEncryptions" + ], + "description": "Updates a logical database's transparent data encryption configuration.", + "operationId": "TransparentDataEncryptions_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "required": true, + "type": "string" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the logical database for which the security alert policy is defined.", + "required": true, + "type": "string" + }, + { + "name": "tdeName", + "in": "path", + "description": "The name of the transparent data encryption configuration.", + "required": true, + "type": "string", + "enum": [ + "current" + ], + "x-ms-enum": { + "name": "TransparentDataEncryptionName", + "modelAsString": true + } + }, + { + "name": "parameters", + "in": "body", + "description": "The database transparent data encryption.", + "required": true, + "schema": { + "$ref": "#/definitions/LogicalDatabaseTransparentDataEncryption" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the database Transparent Data Encryption state.", + "schema": { + "$ref": "#/definitions/LogicalDatabaseTransparentDataEncryption" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\n\n * 400 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 400 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 400 ReadOnly - Cannot enable or modify database encryption on a database that is read-only, has read-only files or is not recovered.\n\n * 400 CanNotDropAlterOnMirror - Please modify Transparent Data Encryption on the primary databases.\n\n * 400 InvalidTransparentDataEncryptionUpdateRequest - Please enter a valid state. Please use \"Enabled\" or \"Disabled\".\n\n * 400 InvalidTransparentDataEncryptionName - The transparent data encryption key name is not supported.\n\n * 401 CanNotChangeReadOnlyDuringTdeScan - Cannot modify filegroup read-only/read-write state while an encryption transition is in progress.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 NeedsLogBackup - Please wait several minutes for a log backup to occur. \n\n * 409 EncryptionInProgress - Cannot modify encryption while an encryption scan in progress.\n\n * 409 KeyChangeInProgress - Cannot change database encryption key while an encryption, decryption, or key change scan is in progress.\n\n * 409 NoBulkOperationLock - CREATE/ALTER/DROP DATABASE ENCRYPTION KEY failed because a lock could not be placed on database. Try again later.\n\n * 409 AltStateConflict - The operation cannot be performed on database because it is involved in a database mirroring session or an availability group. Some operations are not allowed on a database that is participating in a database mirroring session or in an availability group.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 503 NoDekLock - CREATE/ALTER/DROP DATABASE ENCRYPTION KEY failed because a lock could not be placed on the database. Try again later." + }, + "201": { + "description": "Successfully created the database transparent data encryption state.", + "schema": { + "$ref": "#/definitions/LogicalDatabaseTransparentDataEncryption" + } + }, + "202": { + "description": "Creating or updating the database transparent data encryption configuration is in progress." + } + }, + "x-ms-examples": { + "Update a database's Transparent Data Encryption state with minimal parameters": { + "$ref": "./examples/TransparentDataEncryptionUpdate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/transparentDataEncryption": { + "get": { + "tags": [ + "TransparentDataEncryptions" + ], + "description": "Gets a list of the logical database's transparent data encryption.", + "operationId": "TransparentDataEncryptions_ListByDatabase", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "required": true, + "type": "string" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the logical database for which the transparent data encryption is defined.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of Logical database transparent data encryption.", + "schema": { + "$ref": "#/definitions/LogicalDatabaseTransparentDataEncryptionListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\n\n * 400 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 400 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 400 ReadOnly - Cannot enable or modify database encryption on a database that is read-only, has read-only files or is not recovered.\n\n * 400 CanNotDropAlterOnMirror - Please modify Transparent Data Encryption on the primary databases.\n\n * 401 CanNotChangeReadOnlyDuringTdeScan - Cannot modify filegroup read-only/read-write state while an encryption transition is in progress.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 NeedsLogBackup - Please wait several minutes for a log backup to occur. \n\n * 409 EncryptionInProgress - Cannot modify encryption while an encryption scan in progress.\n\n * 409 KeyChangeInProgress - Cannot change database encryption key while an encryption, decryption, or key change scan is in progress.\n\n * 409 NoBulkOperationLock - CREATE/ALTER/DROP DATABASE ENCRYPTION KEY failed because a lock could not be placed on database. Try again later.\n\n * 409 AltStateConflict - The operation cannot be performed on database because it is involved in a database mirroring session or an availability group. Some operations are not allowed on a database that is participating in a database mirroring session or in an availability group.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 503 NoDekLock - CREATE/ALTER/DROP DATABASE ENCRYPTION KEY failed because a lock could not be placed on the database. Try again later." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get a list of the database's transparent data encryption": { + "$ref": "./examples/TransparentDataEncryptionList.json" + } + } + } + } + }, + "definitions": { + "TransparentDataEncryptionProperties": { + "description": "Properties of a transparent data encryption.", + "required": [ + "state" + ], + "type": "object", + "properties": { + "state": { + "description": "Specifies the state of the transparent data encryption.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "TransparentDataEncryptionState", + "modelAsString": false + } + } + } + }, + "LogicalDatabaseTransparentDataEncryption": { + "description": "A logical database transparent data encryption state.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/TransparentDataEncryptionProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "LogicalDatabaseTransparentDataEncryptionListResult": { + "description": "A list of transparent data encryptions", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/LogicalDatabaseTransparentDataEncryption" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": {}, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/Usages.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/Usages.json new file mode 100644 index 000000000000..996818f0f03b --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/Usages.json @@ -0,0 +1,167 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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/instancePools/{instancePoolName}/usages": { + "get": { + "tags": [ + "Usages" + ], + "description": "Gets all instance pool usage metrics", + "operationId": "Usages_ListByInstancePool", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "name": "instancePoolName", + "in": "path", + "description": "The name of the instance pool to be retrieved.", + "required": true, + "type": "string" + }, + { + "name": "expandChildren", + "in": "query", + "description": "Optional request parameter to include managed instance usages within the instance pool.", + "required": false, + "type": "boolean" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the instance pool usages.", + "schema": { + "$ref": "#/definitions/UsageListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InstancePoolWrongUsageName - Request for an instance pool's usage has an unsupported usage name\n\n * 400 InstancePoolManagedInstanceInfoUnavailable - Information for managed instances inside this instance pool is not available\n\n * 404 InstancePoolNotFound - An instance pool cannot be found" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List instance pool usages.": { + "$ref": "./examples/ListInstancePoolUsage.json" + }, + "List instance pool usages expanded with children.": { + "$ref": "./examples/ListInstancePoolUsageExpanded.json" + } + } + } + } + }, + "definitions": { + "UsageListResult": { + "description": "A list of usages.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/Usage" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "Usage": { + "description": "ARM usage.", + "type": "object", + "properties": { + "id": { + "description": "Resource ID.", + "type": "string", + "readOnly": true + }, + "name": { + "$ref": "#/definitions/Name", + "description": "Resource name.", + "readOnly": true + }, + "type": { + "description": "Resource type.", + "type": "string", + "readOnly": true + }, + "unit": { + "description": "Usage unit.", + "type": "string", + "readOnly": true + }, + "currentValue": { + "format": "int32", + "description": "Usage current value.", + "type": "integer", + "readOnly": true + }, + "limit": { + "format": "int32", + "description": "Usage limit.", + "type": "integer", + "readOnly": true + }, + "requestedLimit": { + "format": "int32", + "description": "Usage requested limit.", + "type": "integer", + "readOnly": true + } + } + }, + "Name": { + "description": "ARM Usage Name", + "type": "object", + "properties": { + "value": { + "description": "Usage name value", + "type": "string" + }, + "localizedValue": { + "description": "Usage name localized value.", + "type": "string" + } + } + } + }, + "parameters": {}, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/VirtualClusters.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/VirtualClusters.json new file mode 100644 index 000000000000..b70efcfc3217 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/VirtualClusters.json @@ -0,0 +1,405 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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/virtualClusters/{virtualClusterName}/updateManagedInstanceDnsServers": { + "post": { + "tags": [ + "VirtualClusters" + ], + "description": "Synchronizes the DNS server settings used by the managed instances inside the given virtual cluster.", + "operationId": "VirtualClusters_UpdateDnsServers", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/VirtualClusterNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully synchronized the DNS server settings.", + "schema": { + "$ref": "#/definitions/UpdateManagedInstanceDnsServersOperation" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 VnetConfigHasInvalidDns - User tried to inject Managed Server subnet with invalid custom DNS.\n\n * 400 ManagementServiceFeatureDisabled - User attempted to use a feature which is disabled.\n\n * 404 ResourceDoesNotExist - Resource with the name '{0}' does not exist. To continue, specify a valid resource name." + } + }, + "x-ms-examples": { + "Synchronizes the DNS server settings used by the managed instances inside the given virtual cluster.": { + "$ref": "./examples/UpdateManagedInstanceDnsServers.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Sql/virtualClusters": { + "get": { + "tags": [ + "VirtualClusters" + ], + "description": "Gets a list of all virtualClusters in the subscription.", + "operationId": "VirtualClusters_List", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of virtual clusters.", + "schema": { + "$ref": "#/definitions/VirtualClusterListResult" + } + }, + "default": { + "description": "*** Error Responses: ***" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List virtualClusters": { + "$ref": "./examples/VirtualClusterList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/virtualClusters": { + "get": { + "tags": [ + "VirtualClusters" + ], + "description": "Gets a list of virtual clusters in a resource group.", + "operationId": "VirtualClusters_ListByResourceGroup", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of virtual clusters.", + "schema": { + "$ref": "#/definitions/VirtualClusterListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 SubscriptionNotEnabledForFeature - User subscription not enabled for feature user attempted to use.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 ManagementServiceFeatureDisabled - User attempted to use a feature which is disabled.\n\n * 404 VirtualClusterDoesNotExist - The virtual cluster does not exist.\n\n * 404 ResourceDoesNotExist - Resource with the name '{0}' does not exist. To continue, specify a valid resource name.\n\n * 404 VirtualClusterNotInSubscriptionResourceGroup - Specified virtual cluster does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveVirtualCluster - The requested virtual cluster was not found\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 409 VirtualClusterRemovalAlreadyInProgress - Removal of virtual cluster is already in progress with request\n\n * 409 VirtualClusterRemovalFailed - Request to drop virtual cluster failed. Check if there are active dependent resources.\n\n * 409 ConflictingVirtualClusterOperation - An operation is currently in progress for the virtual cluster.\n\n * 429 ConflictingSubscriptionOperation - An operation is currently in progress for the subscription." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List virtual clusters by resource group": { + "$ref": "./examples/VirtualClusterListByResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/virtualClusters/{virtualClusterName}": { + "get": { + "tags": [ + "VirtualClusters" + ], + "description": "Gets a virtual cluster.", + "operationId": "VirtualClusters_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/VirtualClusterNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the specified virtual cluster.", + "schema": { + "$ref": "#/definitions/VirtualCluster" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 SubscriptionNotEnabledForFeature - User subscription not enabled for feature user attempted to use.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 ManagementServiceFeatureDisabled - User attempted to use a feature which is disabled.\n\n * 404 VirtualClusterDoesNotExist - The virtual cluster does not exist.\n\n * 404 ResourceDoesNotExist - Resource with the name '{0}' does not exist. To continue, specify a valid resource name.\n\n * 404 VirtualClusterNotInSubscriptionResourceGroup - Specified virtual cluster does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveVirtualCluster - The requested virtual cluster was not found\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 409 VirtualClusterRemovalAlreadyInProgress - Removal of virtual cluster is already in progress with request\n\n * 409 VirtualClusterRemovalFailed - Request to drop virtual cluster failed. Check if there are active dependent resources.\n\n * 409 ConflictingVirtualClusterOperation - An operation is currently in progress for the virtual cluster.\n\n * 429 ConflictingSubscriptionOperation - An operation is currently in progress for the subscription." + } + }, + "x-ms-examples": { + "Get virtual cluster": { + "$ref": "./examples/VirtualClusterGet.json" + } + } + }, + "delete": { + "tags": [ + "VirtualClusters" + ], + "description": "Deletes a virtual cluster.", + "operationId": "VirtualClusters_Delete", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/VirtualClusterNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the virtual cluster." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 SubscriptionNotEnabledForFeature - User subscription not enabled for feature user attempted to use.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 ManagementServiceFeatureDisabled - User attempted to use a feature which is disabled.\n\n * 404 VirtualClusterDoesNotExist - The virtual cluster does not exist.\n\n * 404 ResourceDoesNotExist - Resource with the name '{0}' does not exist. To continue, specify a valid resource name.\n\n * 404 VirtualClusterNotInSubscriptionResourceGroup - Specified virtual cluster does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveVirtualCluster - The requested virtual cluster was not found\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 409 VirtualClusterRemovalAlreadyInProgress - Removal of virtual cluster is already in progress with request\n\n * 409 VirtualClusterRemovalFailed - Request to drop virtual cluster failed. Check if there are active dependent resources.\n\n * 409 ConflictingVirtualClusterOperation - An operation is currently in progress for the virtual cluster.\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 * 429 ConflictingSubscriptionOperation - An operation is currently in progress for the subscription.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation." + }, + "202": { + "description": "Deleting the virtual cluster is in progress." + }, + "204": { + "description": "The specified virtual cluster does not exist." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete virtual cluster": { + "$ref": "./examples/VirtualClusterDelete.json" + } + } + }, + "patch": { + "tags": [ + "VirtualClusters" + ], + "description": "Updates a virtual cluster.", + "operationId": "VirtualClusters_Update", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/VirtualClusterNameParameter" + }, + { + "name": "parameters", + "in": "body", + "description": "The requested virtual cluster resource state.", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualClusterUpdate" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the virtual cluster.", + "schema": { + "$ref": "#/definitions/VirtualCluster" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 SubscriptionNotEnabledForFeature - User subscription not enabled for feature user attempted to use.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 ManagementServiceFeatureDisabled - User attempted to use a feature which is disabled.\n\n * 400 InvalidMaintenanceWindowSettings - Invalid maintenance window settings.\n\n * 400 InvalidMaintenanceWindowProperty - Invalid maintenance window property was specified.\n\n * 400 InvalidMaintenanceWindowPropertyNull - Invalid maintenance window with required properties null.\n\n * 400 InvalidMaintenanceWindowTypeWithPropertySpecified - Maintenance window type must not have certain properties specified.\n\n * 404 VirtualClusterDoesNotExist - The virtual cluster does not exist.\n\n * 404 ResourceDoesNotExist - Resource with the name '{0}' does not exist. To continue, specify a valid resource name.\n\n * 404 VirtualClusterNotInSubscriptionResourceGroup - Specified virtual cluster does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveVirtualCluster - The requested virtual cluster was not found\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 409 VirtualClusterRemovalAlreadyInProgress - Removal of virtual cluster is already in progress with request\n\n * 409 VirtualClusterRemovalFailed - Request to drop virtual cluster failed. Check if there are active dependent resources.\n\n * 409 ConflictingVirtualClusterOperation - An operation is currently in progress for the virtual cluster.\n\n * 429 ConflictingSubscriptionOperation - An operation is currently in progress for the subscription." + }, + "202": { + "description": "Updating virtual cluster is in progress." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update virtual cluster with tags": { + "$ref": "./examples/VirtualClusterUpdate.json" + } + } + } + } + }, + "definitions": { + "DnsRefreshConfigurationProperties": { + "description": "DNS refresh configuration properties.", + "type": "object", + "properties": { + "status": { + "description": "The status of the DNS refresh operation.", + "enum": [ + "Succeeded", + "Failed" + ], + "type": "string", + "readOnly": true + } + } + }, + "UpdateManagedInstanceDnsServersOperation": { + "description": "A recoverable managed database resource.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/DnsRefreshConfigurationProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "VirtualClusterListResult": { + "description": "A list of virtual clusters.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/VirtualCluster" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "VirtualClusterProperties": { + "description": "The properties of a virtual cluster.", + "type": "object", + "properties": { + "subnetId": { + "description": "Subnet resource ID for the virtual cluster.", + "type": "string", + "readOnly": true + }, + "family": { + "description": "If the service has different generations of hardware, for the same SKU, then that can be captured here.", + "type": "string" + }, + "childResources": { + "description": "List of resources in this virtual cluster.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "maintenanceConfigurationId": { + "description": "Specifies maintenance configuration id to apply to this virtual cluster.", + "type": "string", + "x-ms-mutability": [ + "read", + "update" + ] + } + } + }, + "VirtualCluster": { + "description": "An Azure SQL virtual cluster.", + "required": [ + "location" + ], + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/TrackedResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/VirtualClusterProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "VirtualClusterUpdate": { + "description": "An update request for an Azure SQL Database virtual cluster.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/VirtualClusterProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + }, + "tags": { + "description": "Resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + } + }, + "parameters": { + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/VirtualNetworkRules.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/VirtualNetworkRules.json new file mode 100644 index 000000000000..5787c70ac943 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/VirtualNetworkRules.json @@ -0,0 +1,311 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/virtualNetworkRules/{virtualNetworkRuleName}": { + "get": { + "tags": [ + "VirtualNetworkRules" + ], + "description": "Gets a virtual network rule.", + "operationId": "VirtualNetworkRules_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "virtualNetworkRuleName", + "in": "path", + "description": "The name of the virtual network rule.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved a specified virtual network rule.", + "schema": { + "$ref": "#/definitions/VirtualNetworkRule" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-examples": { + "Gets a virtual network rule": { + "$ref": "./examples/VirtualNetworkRulesGet.json" + } + } + }, + "put": { + "tags": [ + "VirtualNetworkRules" + ], + "description": "Creates or updates an existing virtual network rule.", + "operationId": "VirtualNetworkRules_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "virtualNetworkRuleName", + "in": "path", + "description": "The name of the virtual network rule.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The requested virtual Network Rule Resource state.", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualNetworkRule" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated a virtual network rule.", + "schema": { + "$ref": "#/definitions/VirtualNetworkRule" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidResourceId - Invalid resource identifier.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 NullVirtualNetworkRequest - Virtual Network Request is Null\n\n * 400 NullVirtualNetworkRequestParameters - Virtual Network Request Parameters are Null\n\n * 400 FirewallChangesDeniedBecausePublicEndpointDisabled - Unable to create or modify firewall rules when public network access for the server is disabled. (https://docs.microsoft.com/en-us/azure/azure-sql/database/connectivity-settings#deny-public-network-access)\n\n * 400 VirtualNetworkRuleBadRequest - Azure SQL Server Virtual Network Rule encountered an user error\n\n * 400 VirtualNetworkRuleWithFailoverGroupsNotSupported - Virtual network firewall rules are not currently supported on servers with failover groups configured with automatic failover policy. Please configure the failover groups on the server with manual failover policy.\n\n * 400 NullVirtualNetworkSubnetId - The Virtual Network Subnet Id is null\n\n * 403 VirtualNetworkRuleAccessDenied - Azure SQL Server Virtual Network Rule encountered permissions error\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 VirtualNetworkRuleNotEnabled - Azure SQL Server Virtual Network Rule feature is not enabled\n\n * 404 VirtualNetworkRuleResourceNotFound - Azure SQL Server Virtual Network Rule encountered a resource not found error\n\n * 404 VirtualNetworkRuleSubscriptionNotFound - Azure SQL Server Virtual Network Subscription id not found or is in disabled state \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.\n\n * 504 VirtualNetworkRuleTimedOut - Azure SQL Server Virtual Network Rule encountered a timeout" + }, + "202": { + "description": "Accepted" + }, + "201": { + "description": "Successfully created a virtual network rule.", + "schema": { + "$ref": "#/definitions/VirtualNetworkRule" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create or update a virtual network rule": { + "$ref": "./examples/VirtualNetworkRulesCreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "VirtualNetworkRules" + ], + "description": "Deletes the virtual network rule with the given name.", + "operationId": "VirtualNetworkRules_Delete", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "virtualNetworkRuleName", + "in": "path", + "description": "The name of the virtual network rule.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the virtual network rule." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidResourceId - Invalid resource identifier.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 NullVirtualNetworkRequest - Virtual Network Request is Null\n\n * 400 NullVirtualNetworkRequestParameters - Virtual Network Request Parameters are Null\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 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." + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "The specified virtual network rule does not exist." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete a virtual network rule": { + "$ref": "./examples/VirtualNetworkRulesDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/virtualNetworkRules": { + "get": { + "tags": [ + "VirtualNetworkRules" + ], + "description": "Gets a list of virtual network rules in a server.", + "operationId": "VirtualNetworkRules_ListByServer", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of virtual network rules.", + "schema": { + "$ref": "#/definitions/VirtualNetworkRuleListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List virtual network rules": { + "$ref": "./examples/VirtualNetworkRulesList.json" + } + } + } + } + }, + "definitions": { + "VirtualNetworkRuleProperties": { + "description": "Properties of a virtual network rule.", + "required": [ + "virtualNetworkSubnetId" + ], + "type": "object", + "properties": { + "virtualNetworkSubnetId": { + "description": "The ARM resource id of the virtual network subnet.", + "type": "string" + }, + "ignoreMissingVnetServiceEndpoint": { + "description": "Create firewall rule before the virtual network has vnet service endpoint enabled.", + "type": "boolean" + }, + "state": { + "description": "Virtual Network Rule State", + "enum": [ + "Initializing", + "InProgress", + "Ready", + "Failed", + "Deleting", + "Unknown" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "VirtualNetworkRuleState", + "modelAsString": true + } + } + } + }, + "VirtualNetworkRule": { + "description": "A virtual network rule.", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/VirtualNetworkRuleProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "VirtualNetworkRuleListResult": { + "description": "A list of virtual network rules.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkRule" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/WorkloadClassifiers.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/WorkloadClassifiers.json new file mode 100644 index 000000000000..3c7b2c0de4fc --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/WorkloadClassifiers.json @@ -0,0 +1,361 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/workloadGroups/{workloadGroupName}/workloadClassifiers/{workloadClassifierName}": { + "get": { + "tags": [ + "WorkloadClassifiers" + ], + "description": "Gets a workload classifier", + "operationId": "WorkloadClassifiers_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "workloadGroupName", + "in": "path", + "description": "The name of the workload group from which to receive the classifier from.", + "required": true, + "type": "string" + }, + { + "name": "workloadClassifierName", + "in": "path", + "description": "The name of the workload classifier.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the specifies workload classifier.", + "schema": { + "$ref": "#/definitions/WorkloadClassifier" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 OperationNotAllowedOnPausedDatabase - Operation is not allowed 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 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 ResourceNotFound - The requested resource was not found.\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 ConflictingSystemOperationInProgress - A system maintenance operation is in progress on the database and further operations need to wait until it is completed.\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + } + }, + "x-ms-examples": { + "Gets a workload classifier for a data warehouse": { + "$ref": "./examples/GetWorkloadClassifier.json" + } + } + }, + "put": { + "tags": [ + "WorkloadClassifiers" + ], + "description": "Creates or updates a workload classifier.", + "operationId": "WorkloadClassifiers_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "workloadGroupName", + "in": "path", + "description": "The name of the workload group from which to receive the classifier from.", + "required": true, + "type": "string" + }, + { + "name": "workloadClassifierName", + "in": "path", + "description": "The name of the workload classifier to create/update.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The properties of the workload classifier.", + "required": true, + "schema": { + "$ref": "#/definitions/WorkloadClassifier" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the workload classifier.", + "schema": { + "$ref": "#/definitions/WorkloadClassifier" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 OperationNotAllowedOnPausedDatabase - Operation is not allowed on a paused database.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 InvalidMemberNameParameter - Invalid member name parameter for this workload classifier.\n\n * 400 InvalidStartTimeAndEndTimeParameters - Invalid start time and end time parameters for the workload classifier.\n\n * 400 InvalidImportanceParameter - Importance must be one of the following strings: Low, Below_Normal, Normal, Above_Normal, High.\n\n * 400 InvalidResourceRequestBody - The resource or resource properties in the request body is empty or invalid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\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 ConflictingSystemOperationInProgress - A system maintenance operation is in progress on the database and further operations need to wait until it is completed.\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.\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + }, + "202": { + "description": "Create or update for the workload classifier is in progress." + }, + "201": { + "description": "Successfully created the workload classifier.", + "schema": { + "$ref": "#/definitions/WorkloadClassifier" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create a workload group with the required properties specified.": { + "$ref": "./examples/CreateOrUpdateWorkloadClassifierMin.json" + }, + "Create a workload group with all properties specified.": { + "$ref": "./examples/CreateOrUpdateWorkloadClassifierMax.json" + } + } + }, + "delete": { + "tags": [ + "WorkloadClassifiers" + ], + "description": "Deletes a workload classifier.", + "operationId": "WorkloadClassifiers_Delete", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "workloadGroupName", + "in": "path", + "description": "The name of the workload group from which to receive the classifier from.", + "required": true, + "type": "string" + }, + { + "name": "workloadClassifierName", + "in": "path", + "description": "The name of the workload classifier to delete.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the workload classifier." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 OperationNotAllowedOnPausedDatabase - Operation is not allowed 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 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\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 ConflictingSystemOperationInProgress - A system maintenance operation is in progress on the database and further operations need to wait until it is completed.\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.\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + }, + "202": { + "description": "Deleting the workload classifier is in progress." + }, + "204": { + "description": "The specified workload classifier does not exist." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete a workload classifier": { + "$ref": "./examples/DeleteWorkloadClassifier.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/workloadGroups/{workloadGroupName}/workloadClassifiers": { + "get": { + "tags": [ + "WorkloadClassifiers" + ], + "description": "Gets the list of workload classifiers for a workload group", + "operationId": "WorkloadClassifiers_ListByWorkloadGroup", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "workloadGroupName", + "in": "path", + "description": "The name of the workload group from which to receive the classifiers from.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of workload groups.", + "schema": { + "$ref": "#/definitions/WorkloadClassifierListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 OperationNotAllowedOnPausedDatabase - Operation is not allowed 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 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 ResourceNotFound - The requested resource was not found.\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 ConflictingSystemOperationInProgress - A system maintenance operation is in progress on the database and further operations need to wait until it is completed.\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get the list of workload classifiers for a workload group": { + "$ref": "./examples/GetWorkloadClassifierList.json" + } + } + } + } + }, + "definitions": { + "WorkloadClassifierProperties": { + "description": "Workload classifier definition. For more information look at sys.workload_management_workload_classifiers (DMV).", + "required": [ + "memberName" + ], + "type": "object", + "properties": { + "memberName": { + "description": "The workload classifier member name.", + "type": "string" + }, + "label": { + "description": "The workload classifier label.", + "type": "string" + }, + "context": { + "description": "The workload classifier context.", + "type": "string" + }, + "startTime": { + "description": "The workload classifier start time for classification.", + "type": "string" + }, + "endTime": { + "description": "The workload classifier end time for classification.", + "type": "string" + }, + "importance": { + "description": "The workload classifier importance.", + "type": "string" + } + } + }, + "WorkloadClassifier": { + "description": "Workload classifier operations for a data warehouse", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/WorkloadClassifierProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "WorkloadClassifierListResult": { + "description": "A list of workload classifiers for a workload group.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/WorkloadClassifier" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/WorkloadGroups.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/WorkloadGroups.json new file mode 100644 index 000000000000..96de35c2c31c --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/WorkloadGroups.json @@ -0,0 +1,340 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-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}/workloadGroups/{workloadGroupName}": { + "get": { + "tags": [ + "WorkloadGroups" + ], + "description": "Gets a workload group", + "operationId": "WorkloadGroups_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "workloadGroupName", + "in": "path", + "description": "The name of the workload group.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the specifies workload group.", + "schema": { + "$ref": "#/definitions/WorkloadGroup" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 OperationNotAllowedOnPausedDatabase - Operation is not allowed 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 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 ResourceNotFound - The requested resource was not found.\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 ConflictingSystemOperationInProgress - A system maintenance operation is in progress on the database and further operations need to wait until it is completed.\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + } + }, + "x-ms-examples": { + "Gets a workload group for a data warehouse": { + "$ref": "./examples/GetWorkloadGroup.json" + } + } + }, + "put": { + "tags": [ + "WorkloadGroups" + ], + "description": "Creates or updates a workload group.", + "operationId": "WorkloadGroups_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "workloadGroupName", + "in": "path", + "description": "The name of the workload group.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The requested workload group state.", + "required": true, + "schema": { + "$ref": "#/definitions/WorkloadGroup" + } + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the workload group.", + "schema": { + "$ref": "#/definitions/WorkloadGroup" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 OperationNotAllowedOnPausedDatabase - Operation is not allowed on a paused database.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 InvalidWorkloadGroupNameParameter - Invalid workload group name\n\n * 400 InvalidMinResourcePercentParameter - Invalid min resource percent for this workload group.\n\n * 400 InvalidMinResourcePercentPerRequestParameter - Invalid min resource percent per query for this workload group.\n\n * 400 InvalidMaxResourcePercentParameter - Invalid max resource percent to allocate for this workload group.\n\n * 400 InvalidMaxResourcePercentPerRequestParameter - Invalid max resource percent per query for this workload group.\n\n * 400 InvalidImportanceParameter - Importance must be one of the following strings: Low, Below_Normal, Normal, Above_Normal, High.\n\n * 400 InvalidQueryExecutionTimeoutParameter - Invalid query execution timeout value for this workload group.\n\n * 400 InvalidResourceRequestBody - The resource or resource properties in the request body is empty or invalid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\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 ConflictingSystemOperationInProgress - A system maintenance operation is in progress on the database and further operations need to wait until it is completed.\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.\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + }, + "202": { + "description": "Create or update for the workload group accepted." + }, + "201": { + "description": "Successfully created the workload group.", + "schema": { + "$ref": "#/definitions/WorkloadGroup" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create a workload group with the required properties specified.": { + "$ref": "./examples/CreateOrUpdateWorkloadGroupMin.json" + }, + "Create a workload group with all properties specified.": { + "$ref": "./examples/CreateOrUpdateWorkloadGroupMax.json" + } + } + }, + "delete": { + "tags": [ + "WorkloadGroups" + ], + "description": "Deletes a workload group.", + "operationId": "WorkloadGroups_Delete", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "workloadGroupName", + "in": "path", + "description": "The name of the workload group to delete.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the workload group." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 OperationNotAllowedOnPausedDatabase - Operation is not allowed 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 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\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 ConflictingSystemOperationInProgress - A system maintenance operation is in progress on the database and further operations need to wait until it is completed.\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.\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + }, + "202": { + "description": "Deleting the workload group is in progress." + }, + "204": { + "description": "The specified workload group does not exist." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete a workload group": { + "$ref": "./examples/DeleteWorkloadGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/workloadGroups": { + "get": { + "tags": [ + "WorkloadGroups" + ], + "description": "Gets the list of workload groups", + "operationId": "WorkloadGroups_ListByDatabase", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of workload groups.", + "schema": { + "$ref": "#/definitions/WorkloadGroupListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 OperationNotAllowedOnPausedDatabase - Operation is not allowed 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 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 ResourceNotFound - The requested resource was not found.\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 ConflictingSystemOperationInProgress - A system maintenance operation is in progress on the database and further operations need to wait until it is completed.\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get the list of workload groups for a data warehouse": { + "$ref": "./examples/GetWorkloadGroupList.json" + } + } + } + } + }, + "definitions": { + "WorkloadGroupProperties": { + "description": "Workload group definition. For more information look at sys.workload_management_workload_groups (DMV).", + "required": [ + "minResourcePercent", + "maxResourcePercent", + "minResourcePercentPerRequest" + ], + "type": "object", + "properties": { + "minResourcePercent": { + "format": "int32", + "description": "The workload group minimum percentage resource.", + "type": "integer" + }, + "maxResourcePercent": { + "format": "int32", + "description": "The workload group cap percentage resource.", + "type": "integer" + }, + "minResourcePercentPerRequest": { + "format": "double", + "description": "The workload group request minimum grant percentage.", + "type": "number" + }, + "maxResourcePercentPerRequest": { + "format": "double", + "description": "The workload group request maximum grant percentage.", + "type": "number" + }, + "importance": { + "description": "The workload group importance level.", + "type": "string" + }, + "queryExecutionTimeout": { + "format": "int32", + "description": "The workload group query execution timeout.", + "type": "integer" + } + } + }, + "WorkloadGroup": { + "description": "Workload group operations for a data warehouse", + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/WorkloadGroupProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "WorkloadGroupListResult": { + "description": "A list of workload groups.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/WorkloadGroup" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "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" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/AdministratorCreateOrUpdate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/AdministratorCreateOrUpdate.json new file mode 100644 index 000000000000..6f79300d9026 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/AdministratorCreateOrUpdate.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-4799", + "serverName": "sqlcrudtest-6440", + "administratorName": "ActiveDirectory", + "api-version": "2021-02-01-preview", + "name": "ActiveDirectory", + "parameters": { + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "tenantId": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-4799/providers/Microsoft.Sql/servers/sqlcrudtest-6440/administrators/ActiveDirectory", + "name": "ActiveDirectory", + "type": "Microsoft.Sql/servers/administrators", + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "tenantId": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "azureADOnlyAuthentication": true + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-4799/providers/Microsoft.Sql/servers/sqlcrudtest-6440/administrators/ActiveDirectory", + "name": "activeDirectory", + "type": "Microsoft.Sql/servers/administrators", + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "tenantId": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "azureADOnlyAuthentication": true + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/AdministratorDelete.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/AdministratorDelete.json new file mode 100644 index 000000000000..c05fc526ab60 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/AdministratorDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-4799", + "serverName": "sqlcrudtest-6440", + "administratorName": "ActiveDirectory", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/AdministratorGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/AdministratorGet.json new file mode 100644 index 000000000000..9ed596a339ce --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/AdministratorGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-4799", + "serverName": "sqlcrudtest-6440", + "administratorName": "ActiveDirectory", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-4799/providers/Microsoft.Sql/servers/sqlcrudtest-6440/administrators/ActiveDirectory", + "name": "ActiveDirectory", + "type": "Microsoft.Sql/servers/administrators", + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "tenantId": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "azureADOnlyAuthentication": true + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/AdministratorList.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/AdministratorList.json new file mode 100644 index 000000000000..c40f9459dfd1 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/AdministratorList.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-4799", + "serverName": "sqlcrudtest-6440", + "administratorName": "ActiveDirectory", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-4799/providers/Microsoft.Sql/servers/sqlcrudtest-6440/administrators/ActiveDirectory", + "name": "ActiveDirectory", + "type": "Microsoft.Sql/servers/administrators", + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "tenantId": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "azureADOnlyAuthentication": true + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/AzureADOnlyAuthCreateOrUpdate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/AzureADOnlyAuthCreateOrUpdate.json new file mode 100644 index 000000000000..ab9db87e6493 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/AzureADOnlyAuthCreateOrUpdate.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-4799", + "serverName": "sqlcrudtest-6440", + "authenticationName": "Default", + "api-version": "2021-02-01-preview", + "name": "Default", + "parameters": { + "properties": { + "azureADOnlyAuthentication": false + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-4799/providers/Microsoft.Sql/servers/sqlcrudtest-6440/azureadonlyauthentications/default", + "name": "Default", + "type": "Microsoft.Sql/servers/azureadonlyauthentications", + "properties": { + "azureADOnlyAuthentication": false + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-4799/providers/Microsoft.Sql/servers/sqlcrudtest-6440/azureadonlyauthentications/default", + "name": "Default", + "type": "Microsoft.Sql/servers/azureadonlyauthentications", + "properties": { + "azureADOnlyAuthentication": false + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/AzureADOnlyAuthDelete.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/AzureADOnlyAuthDelete.json new file mode 100644 index 000000000000..7cde9df674c2 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/AzureADOnlyAuthDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-4799", + "serverName": "sqlcrudtest-6440", + "authenticationName": "Default", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/AzureADOnlyAuthGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/AzureADOnlyAuthGet.json new file mode 100644 index 000000000000..adc1dc52a769 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/AzureADOnlyAuthGet.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-4799", + "serverName": "sqlcrudtest-6440", + "authenticationName": "Default", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-4799/providers/Microsoft.Sql/servers/sqlcrudtest-6440/azureadonlyauthentications/default", + "name": "Default", + "type": "Microsoft.Sql/servers/azureadonlyauthentications", + "properties": { + "azureADOnlyAuthentication": true + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/AzureADOnlyAuthList.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/AzureADOnlyAuthList.json new file mode 100644 index 000000000000..166feafe53b6 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/AzureADOnlyAuthList.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-4799", + "serverName": "sqlcrudtest-6440", + "authenticationName": "Default", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-4799/providers/Microsoft.Sql/servers/sqlcrudtest-6440/azureadonlyauthentications/default", + "name": "Default", + "type": "Microsoft.Sql/servers/azureadonlyauthentications", + "properties": { + "azureADOnlyAuthentication": true + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CancelDatabaseOperation.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CancelDatabaseOperation.json new file mode 100644 index 000000000000..1aa179a22610 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CancelDatabaseOperation.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "serverName": "sqlcrudtest-6661", + "databaseName": "testdb", + "operationId": "f779414b-e748-4925-8cfe-c8598f7660ae", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CancelElasticPoolOperation.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CancelElasticPoolOperation.json new file mode 100644 index 000000000000..b93cf94b835b --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CancelElasticPoolOperation.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "serverName": "sqlcrudtest-6661", + "elasticPoolName": "testpool", + "operationId": "f779414b-e748-4925-8cfe-c8598f7660ae", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CancelJobExecution.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CancelJobExecution.json new file mode 100644 index 000000000000..f12a29440f57 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CancelJobExecution.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "group1", + "serverName": "server1", + "jobAgentName": "agent1", + "jobName": "job1", + "jobExecutionId": "5555-6666-7777-8888-999999999999", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CancelManagedInstanceOperation.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CancelManagedInstanceOperation.json new file mode 100644 index 000000000000..72c253f6287e --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CancelManagedInstanceOperation.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "managedInstanceName": "sqlcrudtest-4645", + "operationId": "11111111-1111-1111-1111-111111111111", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CheckNameAvailabilityServerAlreadyExists.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CheckNameAvailabilityServerAlreadyExists.json new file mode 100644 index 000000000000..2e87ec83a8d3 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CheckNameAvailabilityServerAlreadyExists.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "api-version": "2021-02-01-preview", + "parameters": { + "name": "server1", + "type": "Microsoft.Sql/servers" + } + }, + "responses": { + "200": { + "body": { + "name": "server1", + "available": false, + "reason": "AlreadyExists", + "message": "Specified server name is already used" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CheckNameAvailabilityServerAvailable.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CheckNameAvailabilityServerAvailable.json new file mode 100644 index 000000000000..701da5dee6bc --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CheckNameAvailabilityServerAvailable.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "api-version": "2021-02-01-preview", + "parameters": { + "name": "server1", + "type": "Microsoft.Sql/servers" + } + }, + "responses": { + "200": { + "body": { + "name": "server1", + "available": true + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CheckNameAvailabilityServerInvalid.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CheckNameAvailabilityServerInvalid.json new file mode 100644 index 000000000000..f604ffe3b5bf --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CheckNameAvailabilityServerInvalid.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "api-version": "2021-02-01-preview", + "parameters": { + "name": "SERVER1", + "type": "Microsoft.Sql/servers" + } + }, + "responses": { + "200": { + "body": { + "name": "SERVER1", + "available": false, + "reason": "Invalid", + "message": "Specified server name contains unsupported characters or is too long. Server name must be no longer than 63 characters long, contain only lower-case characters or digits, cannot contain '.' or '_' characters and can't start or end with '-' character." + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ColumnSensitivityLabelCreateMax.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ColumnSensitivityLabelCreateMax.json new file mode 100644 index 000000000000..4ee735311f45 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ColumnSensitivityLabelCreateMax.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "serverName": "myServer", + "databaseName": "myDatabase", + "schemaName": "dbo", + "tableName": "myTable", + "columnName": "myColumn", + "sensitivityLabelSource": "current", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "informationType": "PhoneNumber", + "informationTypeId": "d22fa6e9-5ee4-3bde-4c2b-a409604c4646", + "labelId": "bf91e08c-f4f0-478a-b016-25164b2a65ff", + "labelName": "PII", + "rank": "Low" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Sql/servers/myServer/databases/myDatabase/schemas/dbo/tables/myTable/columns/myColumn/sensitivityLabels/current", + "name": "current", + "type": "Microsoft.Sql/servers/databases/schemas/tables/columns/sensitivityLabels", + "properties": { + "schemaName": "dbo", + "tableName": "myTable", + "columnName": "myColumn", + "informationType": "PhoneNumber", + "informationTypeId": "d22fa6e9-5ee4-3bde-4c2b-a409604c4646", + "labelId": "bf91e08c-f4f0-478a-b016-25164b2a65ff", + "labelName": "PII", + "rank": "Medium" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Sql/servers/myServer/databases/myDatabase/schemas/dbo/tables/myTable/columns/myColumn/sensitivityLabels/current", + "name": "current", + "type": "Microsoft.Sql/servers/databases/schemas/tables/columns/sensitivityLabels", + "properties": { + "informationType": "PhoneNumber", + "informationTypeId": "d22fa6e9-5ee4-3bde-4c2b-a409604c4646", + "labelId": "bf91e08c-f4f0-478a-b016-25164b2a65ff", + "labelName": "PII", + "rank": "High" + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ColumnSensitivityLabelDelete.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ColumnSensitivityLabelDelete.json new file mode 100644 index 000000000000..cd3c412e1c9a --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ColumnSensitivityLabelDelete.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "serverName": "myServer", + "databaseName": "myDatabase", + "schemaName": "dbo", + "tableName": "myTable", + "columnName": "myColumn", + "sensitivityLabelSource": "current", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ColumnSensitivityLabelGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ColumnSensitivityLabelGet.json new file mode 100644 index 000000000000..61d69d4b4d35 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ColumnSensitivityLabelGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "serverName": "myServer", + "databaseName": "myDatabase", + "schemaName": "dbo", + "tableName": "myTable", + "columnName": "myColumn", + "sensitivityLabelSource": "current", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Sql/servers/myServer/databases/myDatabase/schemas/dbo/tables/myTable/columns/myColumn/sensitivityLabels/current", + "name": "current", + "type": "Microsoft.Sql/servers/databases/schemas/tables/columns/sensitivityLabels", + "properties": { + "schemaName": "dbo", + "tableName": "myTable", + "columnName": "myColumn", + "informationType": "PhoneNumber", + "informationTypeId": "d22fa6e9-5ee4-3bde-4c2b-a409604c4646", + "labelId": "bf91e08c-f4f0-478a-b016-25164b2a65ff", + "labelName": "PII", + "rank": "High" + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ColumnsListByDatabaseMax.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ColumnsListByDatabaseMax.json new file mode 100644 index 000000000000..c055dc9a71fc --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ColumnsListByDatabaseMax.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "serverName": "serverName", + "databaseName": "myDatabase", + "api-version": "2021-02-01-preview", + "schema": [ + "dbo" + ], + "table": [ + "customer", + "address" + ], + "column": [ + "username" + ], + "orderBy": [ + "schema asc", + "table", + "column desc" + ], + "$skip": "5", + "$top": "50" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "columnType": "nvarchar", + "temporalType": "NonTemporalTable", + "memoryOptimized": false, + "isComputed": false + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Sql/servers/serverName/databases/myDatabase/schemas/dbo/tables/customer/columns/username", + "name": "username", + "type": "Microsoft.Sql/servers/databases/schemas/tables/columns" + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ColumnsListByDatabaseMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ColumnsListByDatabaseMin.json new file mode 100644 index 000000000000..97aabd5977fe --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ColumnsListByDatabaseMin.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "serverName": "serverName", + "databaseName": "myDatabase", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "columnType": "int", + "temporalType": "NonTemporalTable", + "memoryOptimized": false, + "isComputed": false + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Sql/servers/serverName/databases/myDatabase/schemas/dbo/tables/table1/columns/col1", + "name": "col1", + "type": "Microsoft.Sql/servers/databases/schemas/tables/columns" + }, + { + "properties": { + "columnType": "bit", + "temporalType": "SystemVersionedTemporalTable", + "memoryOptimized": false, + "isComputed": false + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Sql/servers/serverName/databases/myDatabase/schemas/dbo/tables/table1/columns/col2", + "name": "col2", + "type": "Microsoft.Sql/servers/databases/schemas/tables/columns" + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateDatabaseConfiguredBackupStorageRedundancy.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateDatabaseConfiguredBackupStorageRedundancy.json new file mode 100644 index 000000000000..73ef632f3b0a --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateDatabaseConfiguredBackupStorageRedundancy.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdb", + "api-version": "2021-02-01-preview", + "parameters": { + "location": "southeastasia", + "properties": { + "requestedBackupStorageRedundancy": "Zone" + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "Standard", + "tier": "Standard", + "capacity": 10 + }, + "kind": "v12.0,user", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 268435456000, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "currentSku": { + "name": "Standard", + "tier": "Standard", + "capacity": 10 + }, + "creationDate": "2017-06-07T04:41:33.937Z", + "currentBackupStorageRedundancy": "Zone", + "currentServiceObjectiveName": "S0", + "defaultSecondaryLocation": "North Europe", + "earliestRestoreDate": "2017-06-07T04:51:33.937Z", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "readScale": "Disabled", + "requestedBackupStorageRedundancy": "Zone", + "requestedServiceObjectiveName": "S0", + "isLedgerOn": false, + "isInfraEncryptionEnabled": false, + "zoneRedundant": false + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "name": "testdb", + "type": "Microsoft.Sql/servers/databases" + } + }, + "201": { + "body": { + "sku": { + "name": "Standard", + "tier": "Standard", + "capacity": 10 + }, + "kind": "v12.0,user", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 268435456000, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "currentSku": { + "name": "Standard", + "tier": "Standard", + "capacity": 10 + }, + "creationDate": "2017-06-07T04:41:33.937Z", + "currentBackupStorageRedundancy": "Zone", + "currentServiceObjectiveName": "S0", + "defaultSecondaryLocation": "North Europe", + "earliestRestoreDate": "2017-06-07T04:51:33.937Z", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "readScale": "Disabled", + "requestedBackupStorageRedundancy": "Zone", + "requestedServiceObjectiveName": "S0", + "zoneRedundant": false, + "isLedgerOn": false, + "isInfraEncryptionEnabled": false + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "name": "testdb", + "type": "Microsoft.Sql/servers/databases" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateDatabaseCopyMode.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateDatabaseCopyMode.json new file mode 100644 index 000000000000..16fb33de6f35 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateDatabaseCopyMode.json @@ -0,0 +1,97 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "dbcopy", + "api-version": "2021-02-01-preview", + "parameters": { + "location": "southeastasia", + "sku": { + "name": "S0", + "tier": "Standard" + }, + "properties": { + "createMode": "Copy", + "sourceDatabaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb" + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "Standard", + "tier": "Standard", + "capacity": 10 + }, + "kind": "v12.0,user", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 268435456000, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "currentSku": { + "name": "Standard", + "tier": "Standard", + "capacity": 10 + }, + "creationDate": "2017-06-07T04:41:33.937Z", + "currentBackupStorageRedundancy": "Geo", + "currentServiceObjectiveName": "S0", + "defaultSecondaryLocation": "North Europe", + "earliestRestoreDate": "2017-06-07T04:51:33.937Z", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "readScale": "Disabled", + "requestedBackupStorageRedundancy": "Geo", + "requestedServiceObjectiveName": "S0", + "isLedgerOn": false, + "isInfraEncryptionEnabled": false, + "zoneRedundant": false + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/dbcopy", + "name": "dbcopy", + "type": "Microsoft.Sql/servers/databases" + } + }, + "201": { + "body": { + "sku": { + "name": "Standard", + "tier": "Standard", + "capacity": 10 + }, + "kind": "v12.0,user", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 268435456000, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "currentSku": { + "name": "Standard", + "tier": "Standard", + "capacity": 10 + }, + "creationDate": "2017-06-07T04:41:33.937Z", + "currentBackupStorageRedundancy": "Geo", + "currentServiceObjectiveName": "S0", + "defaultSecondaryLocation": "North Europe", + "earliestRestoreDate": "2017-06-07T04:51:33.937Z", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "readScale": "Disabled", + "requestedBackupStorageRedundancy": "Geo", + "requestedServiceObjectiveName": "S0", + "isLedgerOn": false, + "isInfraEncryptionEnabled": false, + "zoneRedundant": false + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/dbcopy", + "name": "dbcopy", + "type": "Microsoft.Sql/servers/databases" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateDatabaseDefaultMode.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateDatabaseDefaultMode.json new file mode 100644 index 000000000000..4155a4bdfabf --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateDatabaseDefaultMode.json @@ -0,0 +1,98 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdb", + "api-version": "2021-02-01-preview", + "parameters": { + "location": "southeastasia", + "sku": { + "name": "S0", + "tier": "Standard" + }, + "properties": { + "createMode": "Default", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 1073741824 + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "S0", + "tier": "Standard", + "capacity": 10 + }, + "kind": "v12.0,user", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 1073741824, + "status": "Online", + "currentSku": { + "name": "Standard", + "tier": "Standard", + "capacity": 10 + }, + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "creationDate": "2017-06-07T04:41:33.937Z", + "currentBackupStorageRedundancy": "Geo", + "currentServiceObjectiveName": "S0", + "defaultSecondaryLocation": "North Europe", + "earliestRestoreDate": "2017-06-07T04:51:33.937Z", + "readScale": "Disabled", + "requestedBackupStorageRedundancy": "Geo", + "requestedServiceObjectiveName": "S0", + "isInfraEncryptionEnabled": false, + "zoneRedundant": false, + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "isLedgerOn": false + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "name": "testdb", + "type": "Microsoft.Sql/servers/databases" + } + }, + "201": { + "body": { + "sku": { + "name": "S0", + "tier": "Standard", + "capacity": 10 + }, + "kind": "v12.0,user", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 1073741824, + "status": "Online", + "currentSku": { + "name": "Standard", + "tier": "Standard", + "capacity": 10 + }, + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "creationDate": "2017-06-07T04:41:33.937Z", + "currentBackupStorageRedundancy": "Geo", + "currentServiceObjectiveName": "S0", + "defaultSecondaryLocation": "North Europe", + "earliestRestoreDate": "2017-06-07T04:51:33.937Z", + "readScale": "Disabled", + "requestedBackupStorageRedundancy": "Geo", + "requestedServiceObjectiveName": "S0", + "isInfraEncryptionEnabled": false, + "zoneRedundant": false, + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "isLedgerOn": false + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "name": "testdb", + "type": "Microsoft.Sql/servers/databases" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateDatabaseLedger.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateDatabaseLedger.json new file mode 100644 index 000000000000..a8f371f55075 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateDatabaseLedger.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdb", + "api-version": "2021-02-01-preview", + "parameters": { + "location": "southeastasia", + "properties": { + "isLedgerOn": true + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "Standard", + "tier": "Standard", + "capacity": 10 + }, + "kind": "v12.0,user", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 268435456000, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "currentSku": { + "name": "Standard", + "tier": "Standard", + "capacity": 10 + }, + "creationDate": "2017-06-07T04:41:33.937Z", + "currentServiceObjectiveName": "S0", + "currentBackupStorageRedundancy": "Geo", + "defaultSecondaryLocation": "North Europe", + "earliestRestoreDate": "2017-06-07T04:51:33.937Z", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "readScale": "Disabled", + "requestedBackupStorageRedundancy": "Geo", + "requestedServiceObjectiveName": "S0", + "zoneRedundant": false, + "isLedgerOn": true + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "name": "testdb", + "type": "Microsoft.Sql/servers/databases" + } + }, + "201": { + "body": { + "sku": { + "name": "Standard", + "tier": "Standard", + "capacity": 10 + }, + "kind": "v12.0,user", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 268435456000, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "currentSku": { + "name": "Standard", + "tier": "Standard", + "capacity": 10 + }, + "creationDate": "2017-06-07T04:41:33.937Z", + "currentBackupStorageRedundancy": "Zone", + "currentServiceObjectiveName": "S0", + "defaultSecondaryLocation": "North Europe", + "earliestRestoreDate": "2017-06-07T04:51:33.937Z", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "readScale": "Disabled", + "requestedBackupStorageRedundancy": "Zone", + "requestedServiceObjectiveName": "S0", + "zoneRedundant": false, + "isLedgerOn": false + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "name": "testdb", + "type": "Microsoft.Sql/servers/databases" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateDatabaseMaintenanceConfiguration.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateDatabaseMaintenanceConfiguration.json new file mode 100644 index 000000000000..09c6192c9963 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateDatabaseMaintenanceConfiguration.json @@ -0,0 +1,97 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdb", + "api-version": "2021-02-01-preview", + "parameters": { + "location": "southeastasia", + "sku": { + "name": "S2", + "tier": "Standard" + }, + "properties": { + "createMode": "Default", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 1073741824, + "maintenanceConfigurationId": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_SouthEastAsia_1" + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "S2", + "tier": "Standard" + }, + "kind": "v12.0,user", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 1073741824, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "creationDate": "2017-06-07T04:41:33.937Z", + "currentServiceObjectiveName": "S2", + "defaultSecondaryLocation": "North Europe", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "isInfraEncryptionEnabled": false, + "zoneRedundant": false, + "earliestRestoreDate": "2020-08-29T06:41:18.283Z", + "readScale": "Disabled", + "currentSku": { + "name": "Standard", + "tier": "Standard", + "capacity": 50 + }, + "currentBackupStorageRedundancy": "Geo", + "requestedBackupStorageRedundancy": "Geo", + "maintenanceConfigurationId": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_SouthEastAsia_1", + "isLedgerOn": false + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "name": "testdb", + "type": "Microsoft.Sql/servers/databases" + } + }, + "201": { + "body": { + "sku": { + "name": "S2", + "tier": "Standard" + }, + "kind": "v12.0,user", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 1073741824, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "creationDate": "2017-06-07T04:41:33.937Z", + "currentServiceObjectiveName": "S2", + "defaultSecondaryLocation": "North Europe", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "isInfraEncryptionEnabled": false, + "zoneRedundant": false, + "earliestRestoreDate": "2020-08-29T06:41:18.283Z", + "readScale": "Disabled", + "currentSku": { + "name": "Standard", + "tier": "Standard", + "capacity": 50 + }, + "currentBackupStorageRedundancy": "Geo", + "requestedBackupStorageRedundancy": "Geo", + "maintenanceConfigurationId": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_SouthEastAsia_1", + "isLedgerOn": false + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "name": "testdb", + "type": "Microsoft.Sql/servers/databases" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateDatabaseMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateDatabaseMin.json new file mode 100644 index 000000000000..41e57ead93a3 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateDatabaseMin.json @@ -0,0 +1,89 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdb", + "api-version": "2021-02-01-preview", + "parameters": { + "location": "southeastasia" + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "Standard", + "tier": "Standard", + "capacity": 10 + }, + "kind": "v12.0,user", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 268435456000, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "currentSku": { + "name": "Standard", + "tier": "Standard", + "capacity": 10 + }, + "creationDate": "2017-06-07T04:41:33.937Z", + "currentServiceObjectiveName": "S0", + "currentBackupStorageRedundancy": "Geo", + "defaultSecondaryLocation": "North Europe", + "earliestRestoreDate": "2017-06-07T04:51:33.937Z", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "readScale": "Disabled", + "requestedBackupStorageRedundancy": "Geo", + "requestedServiceObjectiveName": "S0", + "isLedgerOn": false, + "isInfraEncryptionEnabled": false, + "zoneRedundant": false + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "name": "testdb", + "type": "Microsoft.Sql/servers/databases" + } + }, + "201": { + "body": { + "sku": { + "name": "Standard", + "tier": "Standard", + "capacity": 10 + }, + "kind": "v12.0,user", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 268435456000, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "currentSku": { + "name": "Standard", + "tier": "Standard", + "capacity": 10 + }, + "creationDate": "2017-06-07T04:41:33.937Z", + "currentBackupStorageRedundancy": "Geo", + "currentServiceObjectiveName": "S0", + "defaultSecondaryLocation": "North Europe", + "earliestRestoreDate": "2017-06-07T04:51:33.937Z", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "readScale": "Disabled", + "requestedBackupStorageRedundancy": "Geo", + "requestedServiceObjectiveName": "S0", + "isLedgerOn": false, + "isInfraEncryptionEnabled": false, + "zoneRedundant": false + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "name": "testdb", + "type": "Microsoft.Sql/servers/databases" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateDatabaseNamedReplica.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateDatabaseNamedReplica.json new file mode 100644 index 000000000000..af77a9b0febe --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateDatabaseNamedReplica.json @@ -0,0 +1,109 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdb", + "api-version": "2021-02-01-preview", + "parameters": { + "location": "southeastasia", + "sku": { + "name": "HS_Gen4", + "tier": "Hyperscale", + "capacity": 2 + }, + "properties": { + "createMode": "Secondary", + "secondaryType": "Named", + "sourceDatabaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-NorthEurope/providers/Microsoft.Sql/servers/testsvr1/databases/primarydb" + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "HS_Gen4", + "tier": "Hyperscale", + "family": "Gen4", + "capacity": 2 + }, + "kind": "v12.0,user,vcore,hyperscale", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": -1, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "currentSku": { + "name": "HS_Gen4", + "tier": "Hyperscale", + "family": "Gen4", + "capacity": 2 + }, + "creationDate": "2017-06-07T04:41:33.937Z", + "currentBackupStorageRedundancy": "Geo", + "currentServiceObjectiveName": "HS_Gen4_2", + "defaultSecondaryLocation": "North Europe", + "earliestRestoreDate": "2017-06-07T04:51:33.937Z", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "readScale": "Disabled", + "requestedBackupStorageRedundancy": "Geo", + "requestedServiceObjectiveName": "HS_Gen4_2", + "highAvailabilityReplicaCount": 0, + "licenseType": "LicenseIncluded", + "secondaryType": "Named", + "isLedgerOn": false, + "isInfraEncryptionEnabled": false, + "zoneRedundant": false + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "name": "testdb", + "type": "Microsoft.Sql/servers/databases" + } + }, + "201": { + "body": { + "sku": { + "name": "HS_Gen4", + "tier": "Hyperscale", + "family": "Gen4", + "capacity": 2 + }, + "kind": "v12.0,user,vcore,hyperscale", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": -1, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "currentSku": { + "name": "HS_Gen4", + "tier": "Hyperscale", + "family": "Gen4", + "capacity": 2 + }, + "creationDate": "2017-06-07T04:41:33.937Z", + "currentBackupStorageRedundancy": "Geo", + "currentServiceObjectiveName": "HS_Gen4_2", + "defaultSecondaryLocation": "North Europe", + "earliestRestoreDate": "2017-06-07T04:51:33.937Z", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "readScale": "Disabled", + "requestedBackupStorageRedundancy": "Geo", + "requestedServiceObjectiveName": "HS_Gen4_2", + "highAvailabilityReplicaCount": 0, + "licenseType": "LicenseIncluded", + "secondaryType": "Named", + "isLedgerOn": false, + "isInfraEncryptionEnabled": false, + "zoneRedundant": false + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "name": "testdb", + "type": "Microsoft.Sql/servers/databases" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateDatabasePITRMode.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateDatabasePITRMode.json new file mode 100644 index 000000000000..1ed49a9f4119 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateDatabasePITRMode.json @@ -0,0 +1,94 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "dbpitr", + "api-version": "2021-02-01-preview", + "parameters": { + "location": "southeastasia", + "properties": { + "createMode": "PointInTimeRestore", + "sourceDatabaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SoutheastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "restorePointInTime": "2020-10-22T05:35:31.503Z" + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "Standard", + "tier": "Standard", + "capacity": 10 + }, + "kind": "v12.0,user", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 268435456000, + "status": "Online", + "databaseId": "2463ef48-53e2-4c26-9781-2d7138080bfd", + "creationDate": "2020-10-23T20:31:35.807Z", + "currentServiceObjectiveName": "S0", + "requestedServiceObjectiveName": "S0", + "defaultSecondaryLocation": "SoutheastAsia", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "isInfraEncryptionEnabled": false, + "zoneRedundant": false, + "earliestRestoreDate": "2020-10-23T20:47:37Z", + "readScale": "Disabled", + "currentSku": { + "name": "Standard", + "tier": "Standard", + "capacity": 10 + }, + "currentBackupStorageRedundancy": "Geo", + "requestedBackupStorageRedundancy": "Geo", + "isLedgerOn": false + }, + "location": "SoutheastAsia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SoutheastAsia/providers/Microsoft.Sql/servers/testsvr/databases/dbpitr", + "name": "dbpitr", + "type": "Microsoft.Sql/servers/databases" + } + }, + "201": { + "body": { + "sku": { + "name": "Standard", + "tier": "Standard", + "capacity": 10 + }, + "kind": "v12.0,user", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 268435456000, + "status": "Online", + "databaseId": "2463ef48-53e2-4c26-9781-2d7138080bfd", + "creationDate": "2020-10-23T20:31:35.807Z", + "currentServiceObjectiveName": "S0", + "requestedServiceObjectiveName": "S0", + "defaultSecondaryLocation": "SoutheastAsia", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "isInfraEncryptionEnabled": false, + "zoneRedundant": false, + "earliestRestoreDate": "2020-10-23T20:47:37Z", + "readScale": "Disabled", + "currentSku": { + "name": "Standard", + "tier": "Standard", + "capacity": 10 + }, + "currentBackupStorageRedundancy": "Geo", + "requestedBackupStorageRedundancy": "Geo", + "isLedgerOn": false + }, + "location": "SoutheastAsia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SoutheastAsia/providers/Microsoft.Sql/servers/testsvr/databases/dbpitr", + "name": "dbpitr", + "type": "Microsoft.Sql/servers/databases" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateDatabaseSecondaryMode.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateDatabaseSecondaryMode.json new file mode 100644 index 000000000000..b129a3fcb932 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateDatabaseSecondaryMode.json @@ -0,0 +1,100 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdb", + "api-version": "2021-02-01-preview", + "parameters": { + "location": "southeastasia", + "sku": { + "name": "S0", + "tier": "Standard" + }, + "properties": { + "createMode": "Secondary", + "secondaryType": "Geo", + "sourceDatabaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-NorthEurope/providers/Microsoft.Sql/servers/testsvr1/databases/testdb" + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "Standard", + "tier": "Standard", + "capacity": 10 + }, + "kind": "v12.0,user", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 268435456000, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "currentSku": { + "name": "Standard", + "tier": "Standard", + "capacity": 10 + }, + "creationDate": "2017-06-07T04:41:33.937Z", + "currentBackupStorageRedundancy": "Geo", + "currentServiceObjectiveName": "S0", + "defaultSecondaryLocation": "North Europe", + "earliestRestoreDate": "2017-06-07T04:51:33.937Z", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "readScale": "Disabled", + "requestedBackupStorageRedundancy": "Geo", + "requestedServiceObjectiveName": "S0", + "secondaryType": "Geo", + "isLedgerOn": false, + "isInfraEncryptionEnabled": false, + "zoneRedundant": false + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "name": "testdb", + "type": "Microsoft.Sql/servers/databases" + } + }, + "201": { + "body": { + "sku": { + "name": "Standard", + "tier": "Standard", + "capacity": 10 + }, + "kind": "v12.0,user", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 268435456000, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "currentSku": { + "name": "Standard", + "tier": "Standard", + "capacity": 10 + }, + "creationDate": "2017-06-07T04:41:33.937Z", + "currentBackupStorageRedundancy": "Geo", + "currentServiceObjectiveName": "S0", + "defaultSecondaryLocation": "North Europe", + "earliestRestoreDate": "2017-06-07T04:51:33.937Z", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "readScale": "Disabled", + "requestedBackupStorageRedundancy": "Geo", + "requestedServiceObjectiveName": "S0", + "secondaryType": "Geo", + "isLedgerOn": false, + "isInfraEncryptionEnabled": false, + "zoneRedundant": false + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "name": "testdb", + "type": "Microsoft.Sql/servers/databases" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateJobExecution.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateJobExecution.json new file mode 100644 index 000000000000..f9729e8d86bb --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateJobExecution.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "group1", + "serverName": "server1", + "jobAgentName": "agent1", + "jobName": "job1", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "jobVersion": 1, + "jobExecutionId": "5555-6666-7777-8888-999999999999", + "lifecycle": "Created", + "provisioningState": "Created", + "createTime": "2016-09-23T01:00:00Z", + "currentAttempts": 0, + "lastMessage": "Job execution created." + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/jobs/job1/executions/5555-6666-7777-8888-999999999999", + "name": "5555-6666-7777-8888-999999999999", + "type": "Microsoft.Sql/servers/jobAgents/executions" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateOrUpdateDatabaseExtensions.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateOrUpdateDatabaseExtensions.json new file mode 100644 index 000000000000..e289ca1e3b3d --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateOrUpdateDatabaseExtensions.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "a1c0814d-3c18-4e1e-a247-c128c12b1677", + "resourceGroupName": "rg_20cbe0f0-c2d9-4522-9177-5469aad53029", + "serverName": "srv_1ffd1cf8-9951-47fb-807d-a9c384763849", + "databaseName": "878e303f-1ea0-4f17-aa3d-a22ac5e9da08", + "extensionName": "polybaseimport", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "operationMode": "PolybaseImport", + "storageKeyType": "StorageAccessKey", + "storageKey": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx", + "storageUri": "https://teststorage.blob.core.windows.net/testcontainer/Manifest.xml" + } + } + }, + "responses": { + "202": {}, + "200": { + "body": { + "properties": { + "requestId": "10000000-0000-0000-0000-000000000002", + "requestType": "PolybaseImport", + "lastModifiedTime": "lastModifiedTime", + "serverName": "srv_1ffd1cf8-9951-47fb-807d-a9c384763849", + "databaseName": "878e303f-1ea0-4f17-aa3d-a22ac5e9da08", + "status": "succeeded" + }, + "id": "10000000-0000-0000-0000-000000000002", + "name": "10000000-0000-0000-0000-000000000002", + "type": "Microsoft.Sql/servers/databases/extensions" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateOrUpdateInstancePoolMax.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateOrUpdateInstancePoolMax.json new file mode 100644 index 000000000000..2f58fd7632f8 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateOrUpdateInstancePoolMax.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "group1", + "instancePoolName": "testIP", + "api-version": "2021-02-01-preview", + "parameters": { + "sku": { + "name": "GP_Gen5", + "tier": "GeneralPurpose", + "family": "Gen5" + }, + "location": "japaneast", + "tags": { + "a": "b" + }, + "properties": { + "subnetId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Network/virtualNetworks/myvnet/subnets/mysubnet1", + "vCores": 8, + "licenseType": "LicenseIncluded" + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "GP_Gen5", + "tier": "GeneralPurpose", + "family": "Gen5" + }, + "properties": { + "subnetId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Network/virtualNetworks/myvnet/subnets/mysubnet1", + "vCores": 8, + "licenseType": "LicenseIncluded" + }, + "location": "japaneast", + "tags": { + "a": "b" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/instancePools/testIP", + "name": "testIP", + "type": "Microsoft.Sql/instancePools" + } + }, + "201": { + "body": { + "sku": { + "name": "GP_Gen5", + "tier": "GeneralPurpose", + "family": "Gen5" + }, + "properties": { + "subnetId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Network/virtualNetworks/myvnet/subnets/mysubnet1", + "vCores": 8, + "licenseType": "LicenseIncluded" + }, + "location": "japaneast", + "tags": { + "a": "b" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/instancePools/testIP", + "name": "testIP", + "type": "Microsoft.Sql/instancePools" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateOrUpdateInstancePoolMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateOrUpdateInstancePoolMin.json new file mode 100644 index 000000000000..27cc43f0083c --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateOrUpdateInstancePoolMin.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "group1", + "instancePoolName": "testIP", + "api-version": "2021-02-01-preview", + "parameters": { + "sku": { + "name": "GP_Gen5", + "tier": "GeneralPurpose", + "family": "Gen5" + }, + "location": "japaneast", + "properties": { + "subnetId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Network/virtualNetworks/myvnet/subnets/mysubnet1", + "vCores": 8, + "licenseType": "LicenseIncluded" + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "GP_Gen5", + "tier": "GeneralPurpose", + "family": "Gen5" + }, + "properties": { + "subnetId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Network/virtualNetworks/myvnet/subnets/mysubnet1", + "vCores": 8, + "licenseType": "LicenseIncluded" + }, + "location": "japaneast", + "tags": {}, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/instancePools/testIP", + "name": "testIP", + "type": "Microsoft.Sql/instancePools" + } + }, + "201": { + "body": { + "sku": { + "name": "GP_Gen5", + "tier": "GeneralPurpose", + "family": "Gen5" + }, + "properties": { + "subnetId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Network/virtualNetworks/myvnet/subnets/mysubnet1", + "vCores": 8, + "licenseType": "LicenseIncluded" + }, + "location": "japaneast", + "tags": {}, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/instancePools/testIP", + "name": "testIP", + "type": "Microsoft.Sql/instancePools" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateOrUpdateJobAgent.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateOrUpdateJobAgent.json new file mode 100644 index 000000000000..faf9a255a283 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateOrUpdateJobAgent.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "group1", + "serverName": "server1", + "jobAgentName": "agent1", + "api-version": "2021-02-01-preview", + "parameters": { + "location": "southeastasia", + "properties": { + "databaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/databases/db1" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1", + "name": "agent1", + "type": "Microsoft.Sql/servers/jobAgents", + "location": "southeastasia", + "sku": { + "name": "Agent", + "capacity": 100 + }, + "properties": { + "databaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/databases/db1" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1", + "name": "agent1", + "type": "Microsoft.Sql/servers/jobAgents", + "location": "southeastasia", + "sku": { + "name": "Agent", + "capacity": 100 + }, + "properties": { + "databaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/databases/db1" + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateOrUpdateJobCredential.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateOrUpdateJobCredential.json new file mode 100644 index 000000000000..009425cf38b3 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateOrUpdateJobCredential.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "group1", + "serverName": "server1", + "jobAgentName": "agent1", + "credentialName": "cred1", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "username": "myuser", + "password": "" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/credentials/cred1", + "name": "cred1", + "type": "Microsoft.Sql/servers/jobAccounts/credentials", + "properties": { + "username": "myuser" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/credentials/cred1", + "name": "cred1", + "type": "Microsoft.Sql/servers/jobAccounts/credentials", + "properties": { + "username": "myuser" + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateOrUpdateJobExecution.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateOrUpdateJobExecution.json new file mode 100644 index 000000000000..e8715791991a --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateOrUpdateJobExecution.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "group1", + "serverName": "server1", + "jobAgentName": "agent1", + "jobName": "job1", + "jobExecutionId": "5555-6666-7777-8888-999999999999", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "jobVersion": 1, + "jobExecutionId": "5555-6666-7777-8888-999999999999", + "lifecycle": "Created", + "provisioningState": "Created", + "createTime": "2017-12-18T19:02:00.8707045Z", + "currentAttempts": 0, + "lastMessage": "Job execution created." + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/jobs/job1/executions/5555-6666-7777-8888-999999999999", + "name": "5555-6666-7777-8888-999999999999", + "type": "Microsoft.Sql/servers/jobAgents/executions" + } + }, + "201": { + "body": { + "properties": { + "jobVersion": 1, + "jobExecutionId": "5555-6666-7777-8888-999999999999", + "lifecycle": "Created", + "provisioningState": "Created", + "createTime": "2017-05-04T19:02:00.8707045Z", + "currentAttempts": 0, + "lastMessage": "Job execution created." + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/jobs/job1/executions/5555-6666-7777-8888-999999999999", + "name": "5555-6666-7777-8888-999999999999", + "type": "Microsoft.Sql/servers/jobAgents/executions" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateOrUpdateJobMax.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateOrUpdateJobMax.json new file mode 100644 index 000000000000..8ecc4cd126b5 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateOrUpdateJobMax.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "group1", + "serverName": "server1", + "jobAgentName": "agent1", + "jobName": "job1", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "description": "my favourite job", + "schedule": { + "startTime": "2015-09-24T18:30:01Z", + "endTime": "2015-09-24T23:59:59Z", + "type": "Recurring", + "interval": "PT5M", + "enabled": true + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/jobs/job1", + "name": "job1", + "type": "Microsoft.Sql/servers/jobAccounts/jobs", + "properties": { + "description": "my favourite job", + "version": 0, + "schedule": { + "startTime": "2015-09-24T18:30:01Z", + "endTime": "2015-09-24T23:59:59Z", + "type": "Recurring", + "interval": "PT5M", + "enabled": true + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/jobs/job1", + "name": "job1", + "type": "Microsoft.Sql/servers/jobAccounts/jobs", + "properties": { + "description": "my favourite job", + "version": 0, + "schedule": { + "startTime": "2015-09-24T18:30:01Z", + "endTime": "2015-09-24T23:59:59Z", + "type": "Recurring", + "interval": "PT5M", + "enabled": true + } + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateOrUpdateJobMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateOrUpdateJobMin.json new file mode 100644 index 000000000000..78a6461aecda --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateOrUpdateJobMin.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "group1", + "serverName": "server1", + "jobAgentName": "agent1", + "jobName": "job1", + "api-version": "2021-02-01-preview", + "parameters": {} + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/jobs/job1", + "name": "job1", + "type": "Microsoft.Sql/servers/jobAccounts/jobs", + "properties": { + "description": "", + "version": 0, + "schedule": { + "startTime": "0001-01-01T00:00:00Z", + "endTime": "9999-12-31T11:59:59Z", + "type": "Once", + "enabled": false + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/jobs/job1", + "name": "job1", + "type": "Microsoft.Sql/servers/jobAccounts/jobs", + "properties": { + "description": "", + "version": 0, + "schedule": { + "startTime": "0001-01-01T00:00:00Z", + "endTime": "9999-12-31T11:59:59Z", + "type": "Once", + "enabled": false + } + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateOrUpdateJobStepMax.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateOrUpdateJobStepMax.json new file mode 100644 index 000000000000..be6ad7b26b81 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateOrUpdateJobStepMax.json @@ -0,0 +1,110 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "group1", + "serverName": "server1", + "jobAgentName": "agent1", + "jobName": "job1", + "stepName": "step1", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "stepId": 1, + "targetGroup": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/targetGroups/targetGroup1", + "credential": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/credentials/cred1", + "action": { + "type": "TSql", + "source": "Inline", + "value": "select 2" + }, + "output": { + "type": "SqlDatabase", + "subscriptionId": "3501b905-a848-4b5d-96e8-b253f62d735a", + "resourceGroupName": "group3", + "serverName": "server3", + "databaseName": "database3", + "schemaName": "myschema1234", + "tableName": "mytable5678", + "credential": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/credentials/cred0" + }, + "executionOptions": { + "timeoutSeconds": 1234, + "retryAttempts": 42, + "initialRetryIntervalSeconds": 11, + "maximumRetryIntervalSeconds": 222, + "retryIntervalBackoffMultiplier": 3.0 + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "stepId": 1, + "targetGroup": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/targetGroups/targetGroup1", + "credential": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/credentials/cred1", + "action": { + "type": "TSql", + "source": "Inline", + "value": "select 2" + }, + "output": { + "type": "SqlDatabase", + "subscriptionId": "3501b905-a848-4b5d-96e8-b253f62d735a", + "resourceGroupName": "group3", + "serverName": "server3", + "databaseName": "database3", + "schemaName": "myschema1234", + "tableName": "mytable5678", + "credential": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/credentials/cred0" + }, + "executionOptions": { + "timeoutSeconds": 1234, + "retryAttempts": 42, + "initialRetryIntervalSeconds": 11, + "maximumRetryIntervalSeconds": 222, + "retryIntervalBackoffMultiplier": 3.0 + } + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/jobs/job1/steps/step1", + "name": "step1", + "type": "Microsoft.Sql/servers/jobAgents/jobs/steps" + } + }, + "201": { + "body": { + "properties": { + "stepId": 1, + "targetGroup": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/targetGroups/targetGroup1", + "credential": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/credentials/cred1", + "action": { + "type": "TSql", + "source": "Inline", + "value": "select 2" + }, + "output": { + "type": "SqlDatabase", + "subscriptionId": "3501b905-a848-4b5d-96e8-b253f62d735a", + "resourceGroupName": "group3", + "serverName": "server3", + "databaseName": "database3", + "schemaName": "myschema1234", + "tableName": "mytable5678", + "credential": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/credentials/cred0" + }, + "executionOptions": { + "timeoutSeconds": 1234, + "retryAttempts": 42, + "initialRetryIntervalSeconds": 11, + "maximumRetryIntervalSeconds": 222, + "retryIntervalBackoffMultiplier": 3.0 + } + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/jobs/job1/steps/step1", + "name": "step1", + "type": "Microsoft.Sql/servers/jobAgents/jobs/steps" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateOrUpdateJobStepMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateOrUpdateJobStepMin.json new file mode 100644 index 000000000000..f9d8d8c73735 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateOrUpdateJobStepMin.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "group1", + "serverName": "server1", + "jobAgentName": "agent1", + "jobName": "job1", + "stepName": "step1", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "targetGroup": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/targetGroups/targetGroup0", + "credential": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/credentials/cred0", + "action": { + "value": "select 1" + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "stepId": 1, + "targetGroup": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/targetGroups/targetGroup0", + "credential": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/credentials/cred0", + "action": { + "type": "TSql", + "source": "Inline", + "value": "select 1" + }, + "executionOptions": { + "timeoutSeconds": 43200, + "retryAttempts": 10, + "initialRetryIntervalSeconds": 1, + "maximumRetryIntervalSeconds": 120, + "retryIntervalBackoffMultiplier": 2.0 + } + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/jobs/job1/steps/step1", + "name": "step1", + "type": "Microsoft.Sql/servers/jobAgents/jobs/steps" + } + }, + "201": { + "body": { + "properties": { + "stepId": 1, + "targetGroup": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/targetGroups/targetGroup0", + "credential": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/credentials/cred0", + "action": { + "type": "TSql", + "source": "Inline", + "value": "select 1" + }, + "executionOptions": { + "timeoutSeconds": 43200, + "retryAttempts": 10, + "initialRetryIntervalSeconds": 1, + "maximumRetryIntervalSeconds": 120, + "retryIntervalBackoffMultiplier": 2.0 + } + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/jobs/job1/steps/step1", + "name": "step1", + "type": "Microsoft.Sql/servers/jobAgents/jobs/steps" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateOrUpdateJobTargetGroupMax.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateOrUpdateJobTargetGroupMax.json new file mode 100644 index 000000000000..4f182ed89586 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateOrUpdateJobTargetGroupMax.json @@ -0,0 +1,118 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "group1", + "serverName": "server1", + "jobAgentName": "agent1", + "targetGroupName": "targetGroup1", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "members": [ + { + "membershipType": "Exclude", + "type": "SqlDatabase", + "serverName": "server1", + "databaseName": "database1" + }, + { + "membershipType": "Include", + "type": "SqlServer", + "serverName": "server1", + "refreshCredential": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/credentials/testCredential" + }, + { + "membershipType": "Include", + "type": "SqlElasticPool", + "serverName": "server2", + "elasticPoolName": "pool1", + "refreshCredential": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/credentials/testCredential" + }, + { + "membershipType": "Include", + "type": "SqlShardMap", + "serverName": "server3", + "shardMapName": "shardMap1", + "refreshCredential": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/credentials/testCredential" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "members": [ + { + "membershipType": "Exclude", + "type": "SqlDatabase", + "serverName": "server1", + "databaseName": "database1" + }, + { + "membershipType": "Include", + "type": "SqlServer", + "serverName": "server1", + "refreshCredential": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/credentials/testCredential" + }, + { + "membershipType": "Include", + "type": "SqlElasticPool", + "serverName": "server2", + "elasticPoolName": "pool1", + "refreshCredential": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/credentials/testCredential" + }, + { + "membershipType": "Include", + "type": "SqlShardMap", + "serverName": "server3", + "shardMapName": "shardMap1", + "refreshCredential": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/credentials/testCredential" + } + ] + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/targetGroups/targetGroup1", + "name": "targetGroup1", + "type": "Microsoft.Sql/servers/jobAgents/targetGroups" + } + }, + "201": { + "body": { + "properties": { + "members": [ + { + "membershipType": "Exclude", + "type": "SqlDatabase", + "serverName": "server1", + "databaseName": "database1" + }, + { + "membershipType": "Include", + "type": "SqlServer", + "serverName": "server1", + "refreshCredential": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/credentials/testCredential" + }, + { + "membershipType": "Include", + "type": "SqlElasticPool", + "serverName": "server2", + "elasticPoolName": "pool1", + "refreshCredential": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/credentials/testCredential" + }, + { + "membershipType": "Include", + "type": "SqlShardMap", + "serverName": "server3", + "shardMapName": "shardMap1", + "refreshCredential": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/credentials/testCredential" + } + ] + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/targetGroups/targetGroup1", + "name": "targetGroup1", + "type": "Microsoft.Sql/servers/jobAgents/targetGroups" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateOrUpdateJobTargetGroupMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateOrUpdateJobTargetGroupMin.json new file mode 100644 index 000000000000..d94319ff8a16 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateOrUpdateJobTargetGroupMin.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "group1", + "serverName": "server1", + "jobAgentName": "agent1", + "targetGroupName": "targetGroup1", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "members": [] + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "members": [] + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/targetGroups/targetGroup1", + "name": "targetGroup1", + "type": "Microsoft.Sql/servers/jobAgents/targetGroups" + } + }, + "201": { + "body": { + "properties": { + "members": [] + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/targetGroups/targetGroup1", + "name": "targetGroup1", + "type": "Microsoft.Sql/servers/jobAgents/targetGroups" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateOrUpdateMaintenanceWindows.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateOrUpdateMaintenanceWindows.json new file mode 100644 index 000000000000..05fe0cb1ff91 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateOrUpdateMaintenanceWindows.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdwdb", + "maintenanceWindowName": "current", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "timeRanges": [ + { + "dayOfWeek": "Saturday", + "startTime": "00:00:00", + "duration": "PT60M" + } + ] + } + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateOrUpdateWorkloadClassifierMax.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateOrUpdateWorkloadClassifierMax.json new file mode 100644 index 000000000000..305f702cf97c --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateOrUpdateWorkloadClassifierMax.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdb", + "workloadGroupName": "wlm_workloadgroup", + "workloadClassifierName": "wlm_workloadclassifier", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "memberName": "dbo", + "label": "test_label", + "context": "test_context", + "startTime": "12:00", + "endTime": "14:00", + "importance": "high" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "memberName": "dbo", + "label": "test_label", + "context": "test_context", + "startTime": "12:00", + "endTime": "14:00", + "importance": "high" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb/workloadGroups/wlm_workloadgroup/workloadClassifiers/wlm_workloadclassifier", + "name": "wlm_workloadclassifier", + "type": "Microsoft.Sql/servers/databases/workloadGroups/workloadClassifiers" + } + }, + "201": { + "body": { + "properties": { + "memberName": "dbo", + "label": "test_label", + "context": "test_context", + "startTime": "12:00", + "endTime": "14:00", + "importance": "high" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb/workloadGroups/wlm_workloadgroup/workloadClassifiers/wlm_workloadclassifier", + "name": "wlm_workloadclassifier", + "type": "Microsoft.Sql/servers/databases/workloadGroups/workloadClassifiers" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateOrUpdateWorkloadClassifierMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateOrUpdateWorkloadClassifierMin.json new file mode 100644 index 000000000000..5650c8b46089 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateOrUpdateWorkloadClassifierMin.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdb", + "workloadGroupName": "wlm_workloadgroup", + "workloadClassifierName": "wlm_workloadclassifier", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "memberName": "dbo" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "memberName": "dbo", + "label": "", + "context": "", + "startTime": "", + "endTime": "", + "importance": "" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb/workloadGroups/wlm_workloadgroup/workloadClassifiers/wlm_workloadclassifier", + "name": "wlm_workloadclassifier", + "type": "Microsoft.Sql/servers/databases/workloadGroups/workloadClassifiers" + } + }, + "201": { + "body": { + "properties": { + "memberName": "dbo", + "label": "", + "context": "", + "startTime": "", + "endTime": "", + "importance": "" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb/workloadGroups/wlm_workloadgroup/workloadClassifiers/wlm_workloadclassifier", + "name": "wlm_workloadclassifier", + "type": "Microsoft.Sql/servers/databases/workloadGroups/workloadClassifiers" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateOrUpdateWorkloadGroupMax.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateOrUpdateWorkloadGroupMax.json new file mode 100644 index 000000000000..674f8df8803a --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateOrUpdateWorkloadGroupMax.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdb", + "workloadGroupName": "smallrc", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "minResourcePercent": 0, + "maxResourcePercent": 100, + "minResourcePercentPerRequest": 3.0, + "maxResourcePercentPerRequest": 3.0, + "importance": "normal", + "queryExecutionTimeout": 0 + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "minResourcePercent": 0, + "maxResourcePercent": 100, + "minResourcePercentPerRequest": 3.0, + "maxResourcePercentPerRequest": 3.0, + "importance": "normal", + "queryExecutionTimeout": 0 + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb/workloadGroups/smallrc", + "name": "smallrc", + "type": "Microsoft.Sql/servers/databases/workloadGroups" + } + }, + "201": { + "body": { + "properties": { + "minResourcePercent": 0, + "maxResourcePercent": 100, + "minResourcePercentPerRequest": 3.0, + "maxResourcePercentPerRequest": 3.0, + "importance": "normal", + "queryExecutionTimeout": 0 + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb/workloadGroups/smallrc", + "name": "smallrc", + "type": "Microsoft.Sql/servers/databases/workloadGroups" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateOrUpdateWorkloadGroupMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateOrUpdateWorkloadGroupMin.json new file mode 100644 index 000000000000..ce33c86267f9 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateOrUpdateWorkloadGroupMin.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdb", + "workloadGroupName": "smallrc", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "minResourcePercent": 0, + "maxResourcePercent": 100, + "minResourcePercentPerRequest": 3.0 + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "minResourcePercent": 0, + "maxResourcePercent": 100, + "minResourcePercentPerRequest": 3.0, + "maxResourcePercentPerRequest": 3.0, + "importance": "normal", + "queryExecutionTimeout": 0 + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb/workloadGroups/smallrc", + "name": "smallrc", + "type": "Microsoft.Sql/servers/databases/workloadGroups" + } + }, + "201": { + "body": { + "properties": { + "minResourcePercent": 0, + "maxResourcePercent": 100, + "minResourcePercentPerRequest": 3.0, + "maxResourcePercentPerRequest": 3.0, + "importance": "normal", + "queryExecutionTimeout": 0 + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb/workloadGroups/smallrc", + "name": "smallrc", + "type": "Microsoft.Sql/servers/databases/workloadGroups" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateVCoreDatabaseByServiceObjective.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateVCoreDatabaseByServiceObjective.json new file mode 100644 index 000000000000..9dac00d7d9e2 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateVCoreDatabaseByServiceObjective.json @@ -0,0 +1,98 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdb", + "api-version": "2021-02-01-preview", + "parameters": { + "location": "southeastasia", + "sku": { + "name": "BC", + "family": "Gen4", + "capacity": 2 + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "BC_Gen4", + "tier": "BusinessCritical", + "family": "Gen4", + "capacity": 2 + }, + "kind": "v12.0,user", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "earliestRestoreDate": "2017-06-07T04:51:33.937Z", + "maxSizeBytes": 1073741824, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "creationDate": "2017-06-07T04:41:33.937Z", + "currentServiceObjectiveName": "BC_Gen4_2", + "defaultSecondaryLocation": "North Europe", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "licenseType": "LicenseIncluded", + "maxLogSizeBytes": 104857600, + "readScale": "Enabled", + "currentBackupStorageRedundancy": "Geo", + "requestedBackupStorageRedundancy": "Geo", + "isLedgerOn": false, + "isInfraEncryptionEnabled": false, + "zoneRedundant": false, + "currentSku": { + "name": "BC_Gen4", + "tier": "BusinessCritical", + "capacity": 2 + } + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "name": "testdb", + "type": "Microsoft.Sql/servers/databases" + } + }, + "201": { + "body": { + "sku": { + "name": "BC_Gen4", + "tier": "BusinessCritical", + "family": "Gen4", + "capacity": 2 + }, + "kind": "v12.0,user", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "earliestRestoreDate": "2017-06-07T04:51:33.937Z", + "maxSizeBytes": 1073741824, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "creationDate": "2017-06-07T04:41:33.937Z", + "currentServiceObjectiveName": "BC_Gen4_2", + "defaultSecondaryLocation": "North Europe", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "licenseType": "LicenseIncluded", + "maxLogSizeBytes": 104857600, + "readScale": "Enabled", + "currentBackupStorageRedundancy": "Geo", + "requestedBackupStorageRedundancy": "Geo", + "isInfraEncryptionEnabled": false, + "zoneRedundant": false, + "isLedgerOn": false, + "currentSku": { + "name": "BC_Gen4", + "tier": "BusinessCritical", + "capacity": 2 + } + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "name": "testdb", + "type": "Microsoft.Sql/servers/databases" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateVCoreDatabaseBySkuNameCapacity.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateVCoreDatabaseBySkuNameCapacity.json new file mode 100644 index 000000000000..143666a1c507 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/CreateVCoreDatabaseBySkuNameCapacity.json @@ -0,0 +1,97 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdb", + "api-version": "2021-02-01-preview", + "parameters": { + "location": "southeastasia", + "sku": { + "name": "BC_Gen4", + "capacity": 2 + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "BC_Gen4", + "tier": "BusinessCritical", + "family": "Gen4", + "capacity": 2 + }, + "kind": "v12.0,user", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "earliestRestoreDate": "2017-06-07T04:51:33.937Z", + "maxSizeBytes": 1073741824, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "creationDate": "2017-06-07T04:41:33.937Z", + "currentServiceObjectiveName": "BC_Gen4_2", + "defaultSecondaryLocation": "North Europe", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "licenseType": "LicenseIncluded", + "maxLogSizeBytes": 104857600, + "readScale": "Enabled", + "currentBackupStorageRedundancy": "Geo", + "requestedBackupStorageRedundancy": "Geo", + "isLedgerOn": false, + "isInfraEncryptionEnabled": false, + "zoneRedundant": false, + "currentSku": { + "name": "BC_Gen4", + "tier": "BusinessCritical", + "capacity": 2 + } + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "name": "testdb", + "type": "Microsoft.Sql/servers/databases" + } + }, + "201": { + "body": { + "sku": { + "name": "BC_Gen4", + "tier": "BusinessCritical", + "family": "Gen4", + "capacity": 2 + }, + "kind": "v12.0,user", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "earliestRestoreDate": "2017-06-07T04:51:33.937Z", + "maxSizeBytes": 1073741824, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "creationDate": "2017-06-07T04:41:33.937Z", + "currentServiceObjectiveName": "BC_Gen4_2", + "defaultSecondaryLocation": "North Europe", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "licenseType": "LicenseIncluded", + "maxLogSizeBytes": 104857600, + "readScale": "Enabled", + "currentBackupStorageRedundancy": "Geo", + "requestedBackupStorageRedundancy": "Geo", + "isLedgerOn": false, + "isInfraEncryptionEnabled": false, + "zoneRedundant": false, + "currentSku": { + "name": "BC_Gen4", + "tier": "BusinessCritical", + "capacity": 2 + } + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "name": "testdb", + "type": "Microsoft.Sql/servers/databases" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DataWarehouseRestorePointsGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DataWarehouseRestorePointsGet.json new file mode 100644 index 000000000000..634df7c1828a --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DataWarehouseRestorePointsGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "restorePointName": "131546477590000000", + "location": "japaneast", + "serverName": "testserver", + "databaseName": "testDatabase", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/servers/testserver/databases/testDatabase/restorePoints/131546477590000000", + "name": "131546477590000000", + "type": "Microsoft.Sql/servers/databases/restorePoints", + "location": "japaneast", + "properties": { + "restorePointType": "DISCRETE", + "restorePointCreationDate": "2017-03-10T08:00:00Z", + "restorePointLabel": "mylabel" + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DataWarehouseRestorePointsListByDatabase.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DataWarehouseRestorePointsListByDatabase.json new file mode 100644 index 000000000000..16e791b5cf51 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DataWarehouseRestorePointsListByDatabase.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "location": "japaneast", + "serverName": "testserver", + "databaseName": "testDatabase", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/servers/testserver/databases/testDatabase/restorePoints/131546477590000000", + "name": "131546477590000000", + "type": "Microsoft.Sql/servers/databases/restorePoints", + "location": "japaneast", + "properties": { + "restorePointType": "DISCRETE", + "restorePointCreationDate": "2017-03-10T08:00:00Z", + "restorePointLabel": "mylabel1" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/servers/testserver/databases/testDatabase/restorePoints/131553636140000000", + "name": "131553636140000000", + "type": "Microsoft.Sql/servers/databases/restorePoints", + "location": "japaneast", + "properties": { + "restorePointType": "DISCRETE", + "restorePointCreationDate": "2017-11-17T03:40:14Z", + "restorePointLabel": "mylabel2" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/servers/testserver/databases/testDatabase/restorePoints/131553619750000000", + "name": "131553619750000000", + "type": "Microsoft.Sql/servers/databases/restorePoints", + "location": "japaneast", + "properties": { + "restorePointType": "DISCRETE", + "restorePointCreationDate": "2017-11-17T03:12:55Z" + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseAdvisorGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseAdvisorGet.json new file mode 100644 index 000000000000..9a82ad8d945d --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseAdvisorGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workloadinsight-demos", + "serverName": "misosisvr", + "databaseName": "IndexAdvisor_test_3", + "advisorName": "CreateIndex", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workloadinsight-demos/providers/Microsoft.Sql/servers/misosisvr/databases/IndexAdvisor_test_3/advisors/CreateIndex", + "name": "CreateIndex", + "type": "Microsoft.Sql/servers/databases/advisors", + "properties": { + "advisorStatus": "GA", + "autoExecuteStatus": "Disabled", + "recommendationsStatus": "Ok", + "lastChecked": "2017-06-20T00:24:39Z" + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseAdvisorList.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseAdvisorList.json new file mode 100644 index 000000000000..626dc786c189 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseAdvisorList.json @@ -0,0 +1,83 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workloadinsight-demos", + "serverName": "misosisvr", + "databaseName": "IndexAdvisor_test_3", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workloadinsight-demos/providers/Microsoft.Sql/servers/misosisvr/databases/IndexAdvisor_test_3/advisors/CreateIndex", + "name": "CreateIndex", + "type": "Microsoft.Sql/servers/databases/advisors", + "location": "East Asia", + "kind": "", + "properties": { + "advisorStatus": "GA", + "autoExecuteStatus": "Disabled", + "autoExecuteStatusInheritedFrom": "Database", + "recommendationsStatus": "Ok", + "lastChecked": "2017-06-20T00:24:39Z" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workloadinsight-demos/providers/Microsoft.Sql/servers/misosisvr/databases/IndexAdvisor_test_3/advisors/DropIndex", + "name": "DropIndex", + "type": "Microsoft.Sql/servers/databases/advisors", + "location": "East Asia", + "kind": "", + "properties": { + "advisorStatus": "GA", + "autoExecuteStatus": "Disabled", + "autoExecuteStatusInheritedFrom": "Database", + "recommendationsStatus": "DbSeemsTuned", + "lastChecked": "2017-06-19T20:42:43Z" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workloadinsight-demos/providers/Microsoft.Sql/servers/misosisvr/databases/IndexAdvisor_test_3/advisors/DbParameterization", + "name": "DbParameterization", + "type": "Microsoft.Sql/servers/databases/advisors", + "location": "East Asia", + "kind": "", + "properties": { + "advisorStatus": "GA", + "autoExecuteStatus": "Enabled", + "autoExecuteStatusInheritedFrom": "Database", + "recommendationsStatus": "DbParameterizationIssue", + "lastChecked": "2017-06-19T19:13:03Z" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workloadinsight-demos/providers/Microsoft.Sql/servers/misosisvr/databases/IndexAdvisor_test_3/advisors/SchemaIssue", + "name": "SchemaIssue", + "type": "Microsoft.Sql/servers/databases/advisors", + "location": "East Asia", + "kind": "", + "properties": { + "advisorStatus": "PublicPreview", + "autoExecuteStatus": "Disabled", + "autoExecuteStatusInheritedFrom": "Default", + "recommendationsStatus": "SchemaIsNotConsistent", + "lastChecked": "2017-06-20T14:00:32Z" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workloadinsight-demos/providers/Microsoft.Sql/servers/misosisvr/databases/IndexAdvisor_test_3/advisors/ForceLastGoodPlan", + "name": "ForceLastGoodPlan", + "type": "Microsoft.Sql/servers/databases/advisors", + "location": "East Asia", + "kind": "", + "properties": { + "advisorStatus": "PrivatePreview", + "autoExecuteStatus": "Disabled", + "autoExecuteStatusInheritedFrom": "Default" + } + } + ] + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseAdvisorUpdate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseAdvisorUpdate.json new file mode 100644 index 000000000000..69a7bb765be6 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseAdvisorUpdate.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workloadinsight-demos", + "serverName": "misosisvr", + "databaseName": "IndexAdvisor_test_3", + "advisorName": "CreateIndex", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "autoExecuteStatus": "Disabled" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workloadinsight-demos/providers/Microsoft.Sql/servers/misosisvr/databases/IndexAdvisor_test_3/advisors/CreateIndex", + "name": "CreateIndex", + "type": "Microsoft.Sql/servers/databases/advisors", + "properties": { + "advisorStatus": "GA", + "autoExecuteStatus": "Disabled", + "recommendationsStatus": "Ok", + "lastChecked": "2017-06-20T00:24:39Z" + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseAuditingSettingsList.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseAuditingSettingsList.json new file mode 100644 index 000000000000..bd0d1a02317b --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseAuditingSettingsList.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "blobauditingtest-6852", + "serverName": "blobauditingtest-2080", + "databaseName": "testdb", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-6852/providers/Microsoft.Sql/servers/blobauditingtest-2080/databases/testdb/auditingSettings/default", + "name": "default", + "type": "Microsoft.Sql/servers/databases/auditingSettings", + "kind": "V12", + "properties": { + "state": "Disabled", + "storageEndpoint": "", + "retentionDays": 0, + "auditActionsAndGroups": [], + "storageAccountSubscriptionId": "00000000-0000-0000-0000-000000000000", + "isStorageSecondaryKeyInUse": false, + "isAzureMonitorTargetEnabled": false + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseAutomaticTuningGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseAutomaticTuningGet.json new file mode 100644 index 000000000000..c003091ed672 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseAutomaticTuningGet.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "c3aa9078-0000-0000-0000-e36f151182d7", + "resourceGroupName": "default-sql-onebox", + "serverName": "testsvr11", + "databaseName": "db1", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/c3aa9078-0000-0000-0000-e36f151182d7/resourceGroups/default-sql-onebox/providers/Microsoft.Sql/servers/testsvr11/databases/db1/automaticTuning/current", + "name": "current", + "type": "Microsoft.Sql/servers/databases/automaticTuning", + "properties": { + "desiredState": "Auto", + "actualState": "Auto", + "options": { + "forceLastGoodPlan": { + "desiredState": "Default", + "actualState": "On", + "reasonCode": 2, + "reasonDesc": "AutoConfigured" + }, + "createIndex": { + "desiredState": "Default", + "actualState": "On", + "reasonCode": 2, + "reasonDesc": "AutoConfigured" + }, + "dropIndex": { + "desiredState": "Default", + "actualState": "Off", + "reasonCode": 2, + "reasonDesc": "AutoConfigured" + }, + "maintainIndex": { + "desiredState": "Default", + "actualState": "Off", + "reasonCode": 2, + "reasonDesc": "AutoConfigured" + } + } + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseAutomaticTuningUpdateMax.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseAutomaticTuningUpdateMax.json new file mode 100644 index 000000000000..f86018e95678 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseAutomaticTuningUpdateMax.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "c3aa9078-0000-0000-0000-e36f151182d7", + "resourceGroupName": "default-sql-onebox", + "serverName": "testsvr11", + "databaseName": "db1", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "desiredState": "Auto", + "options": { + "createIndex": { + "desiredState": "Off" + }, + "dropIndex": { + "desiredState": "On" + }, + "forceLastGoodPlan": { + "desiredState": "Default" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/c3aa9078-0000-0000-0000-e36f151182d7/resourceGroups/default-sql-onebox/providers/Microsoft.Sql/servers/testsvr11/databases/db1/automaticTuning/current", + "name": "current", + "type": "Microsoft.Sql/servers/databases/automaticTuning", + "properties": { + "desiredState": "Auto", + "actualState": "Auto", + "options": { + "forceLastGoodPlan": { + "desiredState": "Default", + "actualState": "On", + "reasonCode": 2, + "reasonDesc": "AutoConfigured" + }, + "createIndex": { + "desiredState": "Off", + "actualState": "Off" + }, + "dropIndex": { + "desiredState": "On", + "actualState": "On" + }, + "maintainIndex": { + "desiredState": "Default", + "actualState": "Off", + "reasonCode": 2, + "reasonDesc": "AutoConfigured" + } + } + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseAutomaticTuningUpdateMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseAutomaticTuningUpdateMin.json new file mode 100644 index 000000000000..3d7c7c077759 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseAutomaticTuningUpdateMin.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "subscriptionId": "c3aa9078-0000-0000-0000-e36f151182d7", + "resourceGroupName": "default-sql-onebox", + "serverName": "testsvr11", + "databaseName": "db1", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "desiredState": "Auto" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/c3aa9078-0000-0000-0000-e36f151182d7/resourceGroups/default-sql-onebox/providers/Microsoft.Sql/servers/testsvr11/databases/db1/automaticTuning/current", + "name": "current", + "type": "Microsoft.Sql/servers/databases/automaticTuning", + "properties": { + "desiredState": "Auto", + "actualState": "Auto", + "options": { + "forceLastGoodPlan": { + "desiredState": "Default", + "actualState": "On", + "reasonCode": 2, + "reasonDesc": "AutoConfigured" + }, + "createIndex": { + "desiredState": "Default", + "actualState": "On", + "reasonCode": 2, + "reasonDesc": "AutoConfigured" + }, + "dropIndex": { + "desiredState": "Default", + "actualState": "Off", + "reasonCode": 2, + "reasonDesc": "AutoConfigured" + }, + "maintainIndex": { + "desiredState": "Default", + "actualState": "Off", + "reasonCode": 2, + "reasonDesc": "AutoConfigured" + } + } + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseAzureMonitorAuditingCreateMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseAzureMonitorAuditingCreateMin.json new file mode 100644 index 000000000000..13d7600ee8b3 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseAzureMonitorAuditingCreateMin.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "blobauditingtest-4799", + "serverName": "blobauditingtest-6440", + "databaseName": "testdb", + "blobAuditingPolicyName": "default", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "state": "Enabled", + "isAzureMonitorTargetEnabled": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Sql/servers/blobauditingtest-6440/databases/testdb", + "name": "default", + "type": "Microsoft.Sql/servers/databases/auditingSettings", + "kind": "V12", + "properties": { + "state": "Enabled", + "isAzureMonitorTargetEnabled": true, + "retentionDays": 0, + "storageAccountSubscriptionId": "00000000-0000-0000-0000-000000000000", + "auditActionsAndGroups": [ + "SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP", + "FAILED_DATABASE_AUTHENTICATION_GROUP", + "BATCH_COMPLETED_GROUP" + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Sql/servers/blobauditingtest-6440/databases/testdb", + "name": "default", + "type": "Microsoft.Sql/servers/databases/auditingSettings", + "kind": "V12", + "properties": { + "state": "Enabled", + "isAzureMonitorTargetEnabled": true, + "retentionDays": 0, + "storageAccountSubscriptionId": "00000000-0000-0000-0000-000000000000", + "auditActionsAndGroups": [ + "SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP", + "FAILED_DATABASE_AUTHENTICATION_GROUP", + "BATCH_COMPLETED_GROUP" + ] + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseBlobAuditingCreateMax.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseBlobAuditingCreateMax.json new file mode 100644 index 000000000000..1d1e1ef3d459 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseBlobAuditingCreateMax.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "blobauditingtest-4799", + "serverName": "blobauditingtest-6440", + "databaseName": "testdb", + "blobAuditingPolicyName": "default", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "state": "Enabled", + "storageAccountAccessKey": "sdlfkjabc+sdlfkjsdlkfsjdfLDKFTERLKFDFKLjsdfksjdflsdkfD2342309432849328476458/3RSD==", + "storageEndpoint": "https://mystorage.blob.core.windows.net", + "retentionDays": 6, + "storageAccountSubscriptionId": "00000000-1234-0000-5678-000000000000", + "isStorageSecondaryKeyInUse": false, + "queueDelayMs": 4000, + "auditActionsAndGroups": [ + "DATABASE_LOGOUT_GROUP", + "DATABASE_ROLE_MEMBER_CHANGE_GROUP", + "UPDATE on database::TestDatabaseName by public" + ], + "isAzureMonitorTargetEnabled": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Sql/servers/blobauditingtest-6440/databases/testdb", + "name": "default", + "type": "Microsoft.Sql/servers/databases/auditingSettings", + "kind": "V12", + "properties": { + "state": "Enabled", + "storageEndpoint": "https://mystorage.blob.core.windows.net", + "retentionDays": 0, + "storageAccountSubscriptionId": "00000000-1234-0000-5678-000000000000", + "isStorageSecondaryKeyInUse": false, + "queueDelayMs": 4000, + "auditActionsAndGroups": [ + "DATABASE_LOGOUT_GROUP", + "DATABASE_ROLE_MEMBER_CHANGE_GROUP", + "UPDATE on database::TestDatabaseName by public" + ], + "isAzureMonitorTargetEnabled": true + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Sql/servers/blobauditingtest-6440/databases/testdb", + "name": "default", + "type": "Microsoft.Sql/servers/databases/auditingSettings", + "kind": "V12", + "properties": { + "state": "Enabled", + "storageEndpoint": "https://mystorage.blob.core.windows.net", + "retentionDays": 0, + "storageAccountSubscriptionId": "00000000-1234-0000-5678-000000000000", + "isStorageSecondaryKeyInUse": false, + "queueDelayMs": 4000, + "auditActionsAndGroups": [ + "DATABASE_LOGOUT_GROUP", + "DATABASE_ROLE_MEMBER_CHANGE_GROUP", + "UPDATE on database::TestDatabaseName by public" + ], + "isAzureMonitorTargetEnabled": true + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseBlobAuditingCreateMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseBlobAuditingCreateMin.json new file mode 100644 index 000000000000..e323dbaa4ac2 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseBlobAuditingCreateMin.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "blobauditingtest-4799", + "serverName": "blobauditingtest-6440", + "databaseName": "testdb", + "blobAuditingPolicyName": "default", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "state": "Enabled", + "storageAccountAccessKey": "sdlfkjabc+sdlfkjsdlkfsjdfLDKFTERLKFDFKLjsdfksjdflsdkfD2342309432849328476458/3RSD==", + "storageEndpoint": "https://mystorage.blob.core.windows.net" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Sql/servers/blobauditingtest-6440/databases/testdb", + "name": "default", + "type": "Microsoft.Sql/servers/databases/auditingSettings", + "kind": "V12", + "properties": { + "state": "Enabled", + "storageEndpoint": "https://mystorage.blob.core.windows.net", + "retentionDays": 0, + "storageAccountSubscriptionId": "00000000-0000-0000-0000-000000000000", + "isStorageSecondaryKeyInUse": false, + "auditActionsAndGroups": [ + "SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP", + "FAILED_DATABASE_AUTHENTICATION_GROUP", + "BATCH_COMPLETED_GROUP" + ], + "isAzureMonitorTargetEnabled": false + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Sql/servers/blobauditingtest-6440/databases/testdb", + "name": "default", + "type": "Microsoft.Sql/servers/databases/auditingSettings", + "kind": "V12", + "properties": { + "state": "Enabled", + "storageEndpoint": "https://mystorage.blob.core.windows.net", + "retentionDays": 0, + "storageAccountSubscriptionId": "00000000-0000-0000-0000-000000000000", + "isStorageSecondaryKeyInUse": false, + "auditActionsAndGroups": [ + "SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP", + "FAILED_DATABASE_AUTHENTICATION_GROUP", + "BATCH_COMPLETED_GROUP" + ], + "isAzureMonitorTargetEnabled": false + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseBlobAuditingGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseBlobAuditingGet.json new file mode 100644 index 000000000000..5f08762ed57d --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseBlobAuditingGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "blobauditingtest-6852", + "serverName": "blobauditingtest-2080", + "databaseName": "testdb", + "blobAuditingPolicyName": "default", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-6852/providers/Microsoft.Sql/servers/blobauditingtest-2080/databases/testdb", + "name": "default", + "type": "Microsoft.Sql/servers/databases/auditingSettings", + "kind": "V12", + "properties": { + "state": "Disabled", + "storageEndpoint": "", + "retentionDays": 0, + "auditActionsAndGroups": [], + "storageAccountSubscriptionId": "00000000-0000-0000-0000-000000000000", + "isStorageSecondaryKeyInUse": false, + "isAzureMonitorTargetEnabled": false + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseColumnGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseColumnGet.json new file mode 100644 index 000000000000..4b6d715be98e --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseColumnGet.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "serverName": "serverName", + "databaseName": "myDatabase", + "schemaName": "dbo", + "tableName": "table1", + "columnName": "column1", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Sql/servers/serverName/databases/myDatabase/schemas/dbo/tables/table1/columns/column1", + "name": "column1", + "type": "Microsoft.Sql/servers/databases/schemas/tables/columns", + "properties": { + "columnType": "bit", + "temporalType": "SystemVersionedTemporalTable", + "memoryOptimized": false, + "isComputed": false + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseColumnListByTable.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseColumnListByTable.json new file mode 100644 index 000000000000..649e3de894e5 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseColumnListByTable.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "serverName": "serverName", + "databaseName": "myDatabase", + "schemaName": "dbo", + "tableName": "table1", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Sql/servers/serverName/databases/myDatabase/schemas/dbo/tables/table1/columns/col1", + "name": "col1", + "type": "Microsoft.Sql/servers/databases/schemas/tables/columns", + "properties": { + "columnType": "nvarchar", + "temporalType": "NonTemporalTable", + "memoryOptimized": false, + "isComputed": false + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Sql/servers/serverName/databases/myDatabase/schemas/dbo/tables/table1/columns/col2", + "name": "col2", + "type": "Microsoft.Sql/servers/databases/schemas/tables/columns", + "properties": { + "columnType": "bit", + "temporalType": "NonTemporalTable", + "memoryOptimized": false, + "isComputed": false + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseExtendedAuditingSettingsList.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseExtendedAuditingSettingsList.json new file mode 100644 index 000000000000..3701b5afb40a --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseExtendedAuditingSettingsList.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "blobauditingtest-6852", + "serverName": "blobauditingtest-2080", + "databaseName": "testdb", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-6852/providers/Microsoft.Sql/servers/blobauditingtest-2080/databases/testdb/extendedAuditingSettings/default", + "name": "default", + "type": "Microsoft.Sql/servers/databases/extendedAuditingSettings", + "properties": { + "state": "Disabled", + "storageEndpoint": "", + "retentionDays": 0, + "auditActionsAndGroups": [], + "storageAccountSubscriptionId": "00000000-0000-0000-0000-000000000000", + "isStorageSecondaryKeyInUse": false, + "predicateExpression": "statement = 'select 1'", + "isAzureMonitorTargetEnabled": false + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseRecommendedActionGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseRecommendedActionGet.json new file mode 100644 index 000000000000..33128ee7c761 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseRecommendedActionGet.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workloadinsight-demos", + "serverName": "misosisvr", + "databaseName": "IndexAdvisor_test_3", + "advisorName": "CreateIndex", + "recommendedActionName": "IR_[CRM]_[DataPoints]_4821CD2F9510D98184BB", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workloadinsight-demos/providers/Microsoft.Sql/servers/misosisvr/databases/IndexAdvisor_test_3/advisors/CreateIndex/recommendedActions/IR_[CRM]_[DataPoints]_4821CD2F9510D98184BB", + "name": "IR_[CRM]_[DataPoints]_4821CD2F9510D98184BB", + "type": "Microsoft.Sql/servers/databases/advisors/recommendedActions", + "location": "East Asia", + "kind": "", + "properties": { + "recommendationReason": "", + "validSince": "2017-03-01T14:38:04Z", + "lastRefresh": "2017-03-01T14:38:04Z", + "state": { + "currentValue": "Active", + "lastModified": "2017-03-01T14:38:05Z" + }, + "isExecutableAction": true, + "isRevertableAction": true, + "isArchivedAction": false, + "score": 1, + "implementationDetails": { + "method": "TSql", + "script": "CREATE NONCLUSTERED INDEX [nci_wi_DataPoints_B892614093BAC56295EF6018BD4CB51B] ON [CRM].[DataPoints] ([Name],[Money],[Power]) INCLUDE ([Hour], [System], [LastChanged]) WITH (ONLINE = ON)" + }, + "errorDetails": {}, + "estimatedImpact": [ + { + "dimensionName": "ActionDuration", + "unit": "Seconds", + "absoluteValue": 1440.0 + }, + { + "dimensionName": "SpaceChange", + "unit": "Megabytes", + "absoluteValue": 209.3125 + } + ], + "observedImpact": [], + "timeSeries": [], + "details": { + "indexName": "nci_wi_DataPoints_B892614093BAC56295EF6018BD4CB51B", + "indexType": "NONCLUSTERED", + "schema": "[CRM]", + "table": "[DataPoints]", + "indexColumns": "[Name],[Money],[Power]", + "includedColumns": "[Hour], [System], [LastChanged]" + } + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseRecommendedActionList.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseRecommendedActionList.json new file mode 100644 index 000000000000..346ba3fbfe92 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseRecommendedActionList.json @@ -0,0 +1,197 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workloadinsight-demos", + "serverName": "misosisvr", + "databaseName": "IndexAdvisor_test_3", + "advisorName": "CreateIndex", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workloadinsight-demos/providers/Microsoft.Sql/servers/misosisvr/databases/IndexAdvisor_test_3/advisors/CreateIndex/recommendedActions/IR_[CRM]_[DataPoints]_4821CD2F9510D98184BB", + "name": "IR_[CRM]_[DataPoints]_4821CD2F9510D98184BB", + "type": "Microsoft.Sql/servers/databases/advisors/recommendedActions", + "location": "East Asia", + "kind": "", + "properties": { + "recommendationReason": "", + "validSince": "2017-03-01T14:38:04Z", + "lastRefresh": "2017-03-01T14:38:04Z", + "state": { + "currentValue": "Active", + "lastModified": "2017-03-01T14:38:05Z" + }, + "isExecutableAction": true, + "isRevertableAction": true, + "isArchivedAction": false, + "score": 1, + "implementationDetails": { + "method": "TSql", + "script": "CREATE NONCLUSTERED INDEX [nci_wi_DataPoints_B892614093BAC56295EF6018BD4CB51B] ON [CRM].[DataPoints] ([Name],[Money],[Power]) INCLUDE ([Hour], [System], [LastChanged]) WITH (ONLINE = ON)" + }, + "errorDetails": {}, + "estimatedImpact": [ + { + "dimensionName": "ActionDuration", + "unit": "Seconds", + "absoluteValue": 1440.0 + }, + { + "dimensionName": "SpaceChange", + "unit": "Megabytes", + "absoluteValue": 209.3125 + } + ], + "observedImpact": [], + "timeSeries": [], + "details": { + "indexName": "nci_wi_DataPoints_B892614093BAC56295EF6018BD4CB51B", + "indexType": "NONCLUSTERED", + "schema": "[CRM]", + "table": "[DataPoints]", + "indexColumns": "[Name],[Money],[Power]", + "includedColumns": "[Hour], [System], [LastChanged]" + } + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workloadinsight-demos/providers/Microsoft.Sql/servers/misosisvr/databases/IndexAdvisor_test_3/advisors/CreateIndex/recommendedActions/IR_[dbo]_[DataPoints]_F5D2F347AA22DB46E4CC", + "name": "IR_[dbo]_[DataPoints]_F5D2F347AA22DB46E4CC", + "type": "Microsoft.Sql/servers/databases/advisors/recommendedActions", + "location": "East Asia", + "kind": "", + "properties": { + "recommendationReason": "", + "validSince": "2017-03-01T14:38:05Z", + "lastRefresh": "2017-03-01T14:38:05Z", + "state": { + "currentValue": "Success", + "actionInitiatedBy": "User", + "lastModified": "2017-03-01T14:38:05Z" + }, + "isExecutableAction": true, + "isRevertableAction": true, + "isArchivedAction": false, + "executeActionStartTime": "2017-03-01T14:38:05Z", + "executeActionDuration": "PT1M", + "executeActionInitiatedBy": "User", + "executeActionInitiatedTime": "2017-03-01T14:38:05Z", + "score": 3, + "implementationDetails": { + "method": "TSql", + "script": "DROP INDEX [nci_wi_DataPoints_609E4B7D6A3813990ED44B28B340C8FC] ON [dbo].[DataPoints]" + }, + "errorDetails": {}, + "estimatedImpact": [ + { + "dimensionName": "ActionDuration", + "unit": "Seconds", + "absoluteValue": 5040.0 + }, + { + "dimensionName": "SpaceChange", + "unit": "Megabytes", + "absoluteValue": 120.0 + } + ], + "observedImpact": [ + { + "dimensionName": "AffectedQueriesCpuUtilization", + "unit": "CpuCores", + "changeValueAbsolute": -12.7, + "changeValueRelative": -0.9 + }, + { + "dimensionName": "CpuUtilization", + "unit": "CpuCores", + "changeValueAbsolute": -12.7, + "changeValueRelative": -0.3175 + }, + { + "dimensionName": "QueriesWithImprovedPerformance", + "unit": "Count", + "absoluteValue": 12.0 + }, + { + "dimensionName": "QueriesWithRegressedPerformance", + "unit": "Count", + "absoluteValue": 1.0 + }, + { + "dimensionName": "SpaceChange", + "unit": "Megabytes", + "absoluteValue": 130.742187 + }, + { + "dimensionName": "VerificationProgress", + "unit": "Percent", + "absoluteValue": 0.0 + } + ], + "timeSeries": [], + "details": { + "indexName": "nci_wi_DataPoints_609E4B7D6A3813990ED44B28B340C8FC", + "indexType": "NONCLUSTERED", + "schema": "[dbo]", + "table": "[DataPoints]", + "indexColumns": "[Name],[Money]", + "includedColumns": "[Power],[Pineapple]", + "indexActionStartTime": "2017-03-01T14:38:05.337", + "indexActionDuration": "00:01:00" + } + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workloadinsight-demos/providers/Microsoft.Sql/servers/misosisvr/databases/IndexAdvisor_test_3/advisors/CreateIndex/recommendedActions/IR_[dbo]_[Employees]_560E15A98D14CA09BDFB", + "name": "IR_[dbo]_[Employees]_560E15A98D14CA09BDFB", + "type": "Microsoft.Sql/servers/databases/advisors/recommendedActions", + "location": "East Asia", + "kind": "", + "properties": { + "recommendationReason": "", + "validSince": "2017-03-01T14:38:05Z", + "lastRefresh": "2017-03-01T14:38:05Z", + "state": { + "currentValue": "Active", + "lastModified": "2017-03-01T14:38:05Z" + }, + "isExecutableAction": true, + "isRevertableAction": true, + "isArchivedAction": false, + "score": 3, + "implementationDetails": { + "method": "TSql", + "script": "CREATE NONCLUSTERED INDEX [nci_wi_Employees_8C18C2AF4267DC77793040782641CCDE] ON [dbo].[Employees] ([City], [State]) INCLUDE ([Postal]) WITH (ONLINE = ON)" + }, + "errorDetails": {}, + "estimatedImpact": [ + { + "dimensionName": "ActionDuration", + "unit": "Seconds", + "absoluteValue": 17.0 + }, + { + "dimensionName": "SpaceChange", + "unit": "Megabytes", + "absoluteValue": 128.0 + } + ], + "observedImpact": [], + "timeSeries": [], + "details": { + "indexName": "nci_wi_Employees_8C18C2AF4267DC77793040782641CCDE", + "indexType": "NONCLUSTERED", + "schema": "[dbo]", + "table": "[Employees]", + "indexColumns": "[City], [State]", + "includedColumns": "[Postal]" + } + } + } + ] + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseRecommendedActionListExpand.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseRecommendedActionListExpand.json new file mode 100644 index 000000000000..936f82454044 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseRecommendedActionListExpand.json @@ -0,0 +1,625 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workloadinsight-demos", + "serverName": "misosisvr", + "databaseName": "IndexAdvisor_test_3", + "advisorName": "CreateIndex", + "api-version": "2021-02-01-preview", + "$expand": "recommendedActions" + }, + "responses": { + "200": { + "body": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workloadinsight-demos/providers/Microsoft.Sql/servers/misosisvr/databases/IndexAdvisor_test_3/advisors/CreateIndex", + "name": "CreateIndex", + "type": "Microsoft.Sql/servers/databases/advisors", + "location": "East Asia", + "kind": "", + "properties": { + "advisorStatus": "GA", + "autoExecuteStatus": "Disabled", + "autoExecuteStatusInheritedFrom": "Database", + "recommendationsStatus": "Ok", + "lastChecked": "2017-06-20T16:39:16Z", + "recommendedActions": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workloadinsight-demos/providers/Microsoft.Sql/servers/misosisvr/databases/IndexAdvisor_test_3/advisors/CreateIndex/recommendedActions/IR_[CRM]_[DataPoints]_4821CD2F9510D98184BB", + "name": "IR_[CRM]_[DataPoints]_4821CD2F9510D98184BB", + "type": "Microsoft.Sql/servers/databases/advisors/recommendedActions", + "location": "East Asia", + "kind": "", + "properties": { + "recommendationReason": "", + "validSince": "2017-03-01T14:38:04Z", + "lastRefresh": "2017-03-01T14:38:04Z", + "state": { + "currentValue": "Active", + "lastModified": "2017-06-20T15:15:40Z" + }, + "isExecutableAction": true, + "isRevertableAction": true, + "isArchivedAction": false, + "score": 1, + "implementationDetails": { + "method": "TSql", + "script": "CREATE NONCLUSTERED INDEX [nci_wi_DataPoints_B892614093BAC56295EF6018BD4CB51B] ON [CRM].[DataPoints] ([Name],[Money],[Power]) INCLUDE ([Hour], [System], [LastChanged]) WITH (ONLINE = ON)" + }, + "errorDetails": {}, + "estimatedImpact": [ + { + "dimensionName": "ActionDuration", + "unit": "Seconds", + "absoluteValue": 1440.0 + }, + { + "dimensionName": "SpaceChange", + "unit": "Megabytes", + "absoluteValue": 209.3125 + } + ], + "observedImpact": [], + "timeSeries": [], + "details": { + "indexName": "nci_wi_DataPoints_B892614093BAC56295EF6018BD4CB51B", + "indexType": "NONCLUSTERED", + "schema": "[CRM]", + "table": "[DataPoints]", + "indexColumns": "[Name],[Money],[Power]", + "includedColumns": "[Hour], [System], [LastChanged]" + } + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workloadinsight-demos/providers/Microsoft.Sql/servers/misosisvr/databases/IndexAdvisor_test_3/advisors/CreateIndex/recommendedActions/IR_[dbo]_[DataPoints]_F5D2F347AA22DB46E4CC", + "name": "IR_[dbo]_[DataPoints]_F5D2F347AA22DB46E4CC", + "type": "Microsoft.Sql/servers/databases/advisors/recommendedActions", + "location": "East Asia", + "kind": "", + "properties": { + "recommendationReason": "", + "validSince": "2017-03-01T14:38:05Z", + "lastRefresh": "2017-03-01T14:38:05Z", + "state": { + "currentValue": "Success", + "actionInitiatedBy": "User", + "lastModified": "2017-03-01T14:38:05Z" + }, + "isExecutableAction": true, + "isRevertableAction": true, + "isArchivedAction": false, + "executeActionStartTime": "2017-03-01T14:38:05Z", + "executeActionDuration": "PT1M", + "executeActionInitiatedBy": "User", + "executeActionInitiatedTime": "2017-03-01T14:38:05Z", + "score": 3, + "implementationDetails": { + "method": "TSql", + "script": "DROP INDEX [nci_wi_DataPoints_609E4B7D6A3813990ED44B28B340C8FC] ON [dbo].[DataPoints]" + }, + "errorDetails": {}, + "estimatedImpact": [ + { + "dimensionName": "ActionDuration", + "unit": "Seconds", + "absoluteValue": 5040.0 + }, + { + "dimensionName": "SpaceChange", + "unit": "Megabytes", + "absoluteValue": 120.0 + } + ], + "observedImpact": [ + { + "dimensionName": "AffectedQueriesCpuUtilization", + "unit": "CpuCores", + "changeValueAbsolute": -12.7, + "changeValueRelative": -0.9 + }, + { + "dimensionName": "CpuUtilization", + "unit": "CpuCores", + "changeValueAbsolute": -12.7, + "changeValueRelative": -0.3175 + }, + { + "dimensionName": "QueriesWithImprovedPerformance", + "unit": "Count", + "absoluteValue": 12.0 + }, + { + "dimensionName": "QueriesWithRegressedPerformance", + "unit": "Count", + "absoluteValue": 1.0 + }, + { + "dimensionName": "SpaceChange", + "unit": "Megabytes", + "absoluteValue": 130.742187 + }, + { + "dimensionName": "VerificationProgress", + "unit": "Percent", + "absoluteValue": 0.0 + } + ], + "timeSeries": [], + "details": { + "indexName": "nci_wi_DataPoints_609E4B7D6A3813990ED44B28B340C8FC", + "indexType": "NONCLUSTERED", + "schema": "[dbo]", + "table": "[DataPoints]", + "indexColumns": "[Name],[Money]", + "includedColumns": "[Power],[Pineapple]", + "indexActionStartTime": "2017-03-01T14:38:05.337", + "indexActionDuration": "00:01:00" + } + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workloadinsight-demos/providers/Microsoft.Sql/servers/misosisvr/databases/IndexAdvisor_test_3/advisors/CreateIndex/recommendedActions/IR_[dbo]_[Employees]_560E15A98D14CA09BDFB", + "name": "IR_[dbo]_[Employees]_560E15A98D14CA09BDFB", + "type": "Microsoft.Sql/servers/databases/advisors/recommendedActions", + "location": "East Asia", + "kind": "", + "properties": { + "recommendationReason": "", + "validSince": "2017-03-01T14:38:05Z", + "lastRefresh": "2017-03-01T14:38:05Z", + "state": { + "currentValue": "Active", + "lastModified": "2017-03-01T14:38:05Z" + }, + "isExecutableAction": true, + "isRevertableAction": true, + "isArchivedAction": false, + "score": 3, + "implementationDetails": { + "method": "TSql", + "script": "CREATE NONCLUSTERED INDEX [nci_wi_Employees_8C18C2AF4267DC77793040782641CCDE] ON [dbo].[Employees] ([City], [State]) INCLUDE ([Postal]) WITH (ONLINE = ON)" + }, + "errorDetails": {}, + "estimatedImpact": [ + { + "dimensionName": "ActionDuration", + "unit": "Seconds", + "absoluteValue": 17.0 + }, + { + "dimensionName": "SpaceChange", + "unit": "Megabytes", + "absoluteValue": 128.0 + } + ], + "observedImpact": [], + "timeSeries": [], + "details": { + "indexName": "nci_wi_Employees_8C18C2AF4267DC77793040782641CCDE", + "indexType": "NONCLUSTERED", + "schema": "[dbo]", + "table": "[Employees]", + "indexColumns": "[City], [State]", + "includedColumns": "[Postal]" + } + } + } + ] + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workloadinsight-demos/providers/Microsoft.Sql/servers/misosisvr/databases/IndexAdvisor_test_3/advisors/DropIndex", + "name": "DropIndex", + "type": "Microsoft.Sql/servers/databases/advisors", + "location": "East Asia", + "kind": "", + "properties": { + "advisorStatus": "GA", + "autoExecuteStatus": "Disabled", + "autoExecuteStatusInheritedFrom": "Database", + "recommendationsStatus": "DbSeemsTuned", + "lastChecked": "2017-06-19T20:42:43Z", + "recommendedActions": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workloadinsight-demos/providers/Microsoft.Sql/servers/misosisvr/databases/IndexAdvisor_test_3/advisors/DropIndex/recommendedActions/IR_[CRM]_[DataPoints1]_13ADA5F354E9E14A983B", + "name": "IR_[CRM]_[DataPoints1]_13ADA5F354E9E14A983B", + "type": "Microsoft.Sql/servers/databases/advisors/recommendedActions", + "location": "East Asia", + "kind": "", + "properties": { + "recommendationReason": "Unused", + "validSince": "2017-03-01T14:38:05Z", + "lastRefresh": "2017-03-01T14:38:05Z", + "state": { + "currentValue": "Pending", + "actionInitiatedBy": "System", + "lastModified": "2017-03-23T14:14:35Z" + }, + "isExecutableAction": true, + "isRevertableAction": true, + "isArchivedAction": false, + "executeActionInitiatedBy": "System", + "executeActionInitiatedTime": "2017-03-23T14:14:35Z", + "score": 1, + "implementationDetails": { + "method": "TSql", + "script": "DROP INDEX [IX_FF] ON [CRM].[DataPoints1]" + }, + "errorDetails": {}, + "estimatedImpact": [ + { + "dimensionName": "ActionDuration", + "unit": "Seconds", + "absoluteValue": 645.0 + }, + { + "dimensionName": "SpaceChange", + "unit": "Megabytes", + "absoluteValue": 342.0 + } + ], + "observedImpact": [], + "timeSeries": [], + "details": { + "indexName": "IX_FF", + "originalIndexName": "IX_COM_SKU_SKUDepartmentID", + "indexType": "NONCLUSTERED", + "schema": "[CRM]", + "table": "[DataPoints1]", + "indexColumns": "[Protocol],[SessionId]", + "includedColumns": "[Apple]" + } + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workloadinsight-demos/providers/Microsoft.Sql/servers/misosisvr/databases/IndexAdvisor_test_3/advisors/DropIndex/recommendedActions/IR_[CRM]_[DataPoints1]_29AEA82685D24704DE1A", + "name": "IR_[CRM]_[DataPoints1]_29AEA82685D24704DE1A", + "type": "Microsoft.Sql/servers/databases/advisors/recommendedActions", + "location": "East Asia", + "kind": "", + "properties": { + "recommendationReason": "Duplicate", + "validSince": "2017-03-01T14:38:05Z", + "lastRefresh": "2017-03-01T14:38:05Z", + "state": { + "currentValue": "Pending", + "actionInitiatedBy": "System", + "lastModified": "2017-03-01T14:38:05Z" + }, + "isExecutableAction": true, + "isRevertableAction": true, + "isArchivedAction": false, + "executeActionInitiatedBy": "System", + "executeActionInitiatedTime": "2017-03-01T14:38:05Z", + "score": 1, + "implementationDetails": { + "method": "TSql", + "script": "DROP INDEX [MyIndex123] ON [CRM].[DataPoints1]" + }, + "errorDetails": {}, + "estimatedImpact": [ + { + "dimensionName": "ActionDuration", + "unit": "Seconds", + "absoluteValue": 803.0 + }, + { + "dimensionName": "SpaceChange", + "unit": "Megabytes", + "absoluteValue": 144.6875 + } + ], + "observedImpact": [], + "timeSeries": [], + "details": { + "indexName": "MyIndex123", + "originalIndexName": "IX_COM_SKU_SKUDepartmentID", + "indexType": "NONCLUSTERED", + "schema": "[CRM]", + "table": "[DataPoints1]", + "indexColumns": "[Cookies],[SessionId]", + "includedColumns": "[Apple]" + } + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workloadinsight-demos/providers/Microsoft.Sql/servers/misosisvr/databases/IndexAdvisor_test_3/advisors/DropIndex/recommendedActions/IR_[CRM]_[DataPoints2]_E4B21F229379807E531A", + "name": "IR_[CRM]_[DataPoints2]_E4B21F229379807E531A", + "type": "Microsoft.Sql/servers/databases/advisors/recommendedActions", + "location": "East Asia", + "kind": "", + "properties": { + "recommendationReason": "Duplicate", + "validSince": "2017-03-01T14:38:05Z", + "lastRefresh": "2017-03-01T14:38:05Z", + "state": { + "currentValue": "Success", + "actionInitiatedBy": "User", + "lastModified": "2017-03-01T14:38:05Z" + }, + "isExecutableAction": true, + "isRevertableAction": true, + "isArchivedAction": false, + "executeActionStartTime": "2017-03-01T14:38:05Z", + "executeActionDuration": "PT1M", + "executeActionInitiatedBy": "User", + "executeActionInitiatedTime": "2017-03-01T14:38:05Z", + "score": 1, + "implementationDetails": { + "method": "TSql", + "script": "CREATE NONCLUSTERED INDEX [MyIndex321] ON [CRM].[DataPoints2] ([Cookies],[SessionId],[Protocol]) INCLUDE ([Apple]) WITH (ONLINE = ON)" + }, + "errorDetails": {}, + "estimatedImpact": [ + { + "dimensionName": "ActionDuration", + "unit": "Seconds", + "absoluteValue": 705.0 + }, + { + "dimensionName": "SpaceChange", + "unit": "Megabytes", + "absoluteValue": 342.0 + } + ], + "observedImpact": [ + { + "dimensionName": "AffectedQueriesCpuUtilization", + "unit": "CpuCores", + "changeValueAbsolute": 0.0, + "changeValueRelative": 0.0 + }, + { + "dimensionName": "CpuUtilization", + "unit": "CpuCores", + "changeValueAbsolute": 0.0, + "changeValueRelative": 0.0 + }, + { + "dimensionName": "QueriesWithImprovedPerformance", + "unit": "Count", + "absoluteValue": 0.0 + }, + { + "dimensionName": "QueriesWithRegressedPerformance", + "unit": "Count", + "absoluteValue": 0.0 + }, + { + "dimensionName": "SpaceChange", + "unit": "Megabytes", + "absoluteValue": -342.0 + }, + { + "dimensionName": "VerificationProgress", + "unit": "Percent", + "absoluteValue": 0.0 + } + ], + "timeSeries": [], + "details": { + "indexName": "MyIndex321", + "originalIndexName": "IX_COM_SKU_SKUDepartmentID", + "indexType": "NONCLUSTERED", + "schema": "[CRM]", + "table": "[DataPoints2]", + "indexColumns": "[Cookies],[SessionId],[Protocol]", + "includedColumns": "[Apple]", + "indexActionStartTime": "2017-03-01T14:38:05.697", + "indexActionDuration": "00:01:00" + } + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workloadinsight-demos/providers/Microsoft.Sql/servers/misosisvr/databases/IndexAdvisor_test_3/advisors/DropIndex/recommendedActions/IR_[dbo]_[FactFinance]_13ADA5F354E9E14A983B", + "name": "IR_[dbo]_[FactFinance]_13ADA5F354E9E14A983B", + "type": "Microsoft.Sql/servers/databases/advisors/recommendedActions", + "location": "East Asia", + "kind": "", + "properties": { + "recommendationReason": "Duplicate", + "validSince": "2017-03-01T14:38:05Z", + "lastRefresh": "2017-03-01T14:38:05Z", + "state": { + "currentValue": "Success", + "actionInitiatedBy": "System", + "lastModified": "2017-02-28T14:38:05Z" + }, + "isExecutableAction": true, + "isRevertableAction": true, + "isArchivedAction": false, + "executeActionStartTime": "2017-03-01T14:38:05Z", + "executeActionDuration": "PT1M", + "executeActionInitiatedBy": "System", + "executeActionInitiatedTime": "2017-03-01T14:38:05Z", + "score": 1, + "implementationDetails": { + "method": "TSql", + "script": "CREATE NONCLUSTERED INDEX [IX_FF] ON [dbo].[FactFinance] ([FinanceKey],[DateKey]) INCLUDE ([OrganizationKey]) WITH (ONLINE = ON)" + }, + "errorDetails": {}, + "estimatedImpact": [ + { + "dimensionName": "ActionDuration", + "unit": "Seconds", + "absoluteValue": 705.0 + }, + { + "dimensionName": "SpaceChange", + "unit": "Megabytes", + "absoluteValue": 342.0 + } + ], + "observedImpact": [ + { + "dimensionName": "AffectedQueriesCpuUtilization", + "unit": "CpuCores", + "changeValueAbsolute": 0.0, + "changeValueRelative": 0.0 + }, + { + "dimensionName": "CpuUtilization", + "unit": "CpuCores", + "changeValueAbsolute": 0.0, + "changeValueRelative": 0.0 + }, + { + "dimensionName": "QueriesWithImprovedPerformance", + "unit": "Count", + "absoluteValue": 0.0 + }, + { + "dimensionName": "QueriesWithRegressedPerformance", + "unit": "Count", + "absoluteValue": 0.0 + }, + { + "dimensionName": "SpaceChange", + "unit": "Megabytes", + "absoluteValue": -342.0 + }, + { + "dimensionName": "VerificationProgress", + "unit": "Percent", + "absoluteValue": 0.0 + } + ], + "timeSeries": [], + "details": { + "indexName": "IX_FF", + "originalIndexName": "IX_COM_SKU_SKUDepartmentID", + "indexType": "NONCLUSTERED", + "schema": "[dbo]", + "table": "[FactFinance]", + "indexColumns": "[FinanceKey],[DateKey]", + "includedColumns": "[OrganizationKey]", + "indexActionStartTime": "2017-03-01T14:38:05.837", + "indexActionDuration": "00:01:00" + } + } + } + ] + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workloadinsight-demos/providers/Microsoft.Sql/servers/misosisvr/databases/IndexAdvisor_test_3/advisors/DbParameterization", + "name": "DbParameterization", + "type": "Microsoft.Sql/servers/databases/advisors", + "location": "East Asia", + "kind": "", + "properties": { + "advisorStatus": "GA", + "autoExecuteStatus": "Enabled", + "autoExecuteStatusInheritedFrom": "Database", + "recommendationsStatus": "DbParameterizationIssue", + "lastChecked": "2017-06-19T19:13:03Z", + "recommendedActions": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workloadinsight-demos/providers/Microsoft.Sql/servers/misosisvr/databases/IndexAdvisor_test_3/advisors/DbParameterization/recommendedActions/ForceDbParameterization", + "name": "ForceDbParameterization", + "type": "Microsoft.Sql/servers/databases/advisors/recommendedActions", + "location": "East Asia", + "kind": "", + "properties": { + "recommendationReason": "", + "validSince": "2017-03-01T14:37:44Z", + "lastRefresh": "2017-03-01T14:37:44Z", + "state": { + "currentValue": "Pending", + "actionInitiatedBy": "System", + "lastModified": "2017-05-11T15:08:31Z" + }, + "isExecutableAction": true, + "isRevertableAction": true, + "isArchivedAction": false, + "executeActionInitiatedBy": "System", + "executeActionInitiatedTime": "2017-05-11T15:08:31Z", + "score": 3, + "implementationDetails": { + "method": "TSql", + "script": "ALTER DATABASE [IndexAdvisor_test_3] SET PARAMETERIZATION FORCED" + }, + "errorDetails": {}, + "estimatedImpact": [ + { + "dimensionName": "CpuSavings", + "unit": "Percent", + "changeValueAbsolute": 22.5613696939135 + }, + { + "dimensionName": "QueryDurationDecrease", + "unit": "secs", + "changeValueAbsolute": 0.701823681806341 + } + ], + "observedImpact": [], + "timeSeries": [] + } + } + ] + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workloadinsight-demos/providers/Microsoft.Sql/servers/misosisvr/databases/IndexAdvisor_test_3/advisors/SchemaIssue", + "name": "SchemaIssue", + "type": "Microsoft.Sql/servers/databases/advisors", + "location": "East Asia", + "kind": "", + "properties": { + "advisorStatus": "PublicPreview", + "autoExecuteStatus": "Disabled", + "autoExecuteStatusInheritedFrom": "Default", + "recommendationsStatus": "SchemaIsNotConsistent", + "lastChecked": "2017-06-20T18:50:21Z", + "recommendedActions": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workloadinsight-demos/providers/Microsoft.Sql/servers/misosisvr/databases/IndexAdvisor_test_3/advisors/SchemaIssue/recommendedActions/SchemaProblem_1A258C5714A7410C9D23", + "name": "SchemaProblem_1A258C5714A7410C9D23", + "type": "Microsoft.Sql/servers/databases/advisors/recommendedActions", + "location": "East Asia", + "kind": "", + "properties": { + "recommendationReason": "SchemaProblem", + "validSince": "2017-03-01T14:37:48Z", + "lastRefresh": "2017-06-07T22:19:53Z", + "state": { + "currentValue": "Active", + "lastModified": "2017-03-01T14:37:48Z" + }, + "isExecutableAction": false, + "isRevertableAction": false, + "isArchivedAction": false, + "score": 3, + "implementationDetails": {}, + "errorDetails": {}, + "estimatedImpact": [], + "observedImpact": [], + "timeSeries": [], + "details": { + "sqlErrorNumber": 208, + "sqlErrorMessage": "Invalid object name 'dbo.Companies'.", + "sqlErrorCount": 342482 + } + } + } + ] + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workloadinsight-demos/providers/Microsoft.Sql/servers/misosisvr/databases/IndexAdvisor_test_3/advisors/ForceLastGoodPlan", + "name": "ForceLastGoodPlan", + "type": "Microsoft.Sql/servers/databases/advisors", + "location": "East Asia", + "kind": "", + "properties": { + "advisorStatus": "PrivatePreview", + "autoExecuteStatus": "Disabled", + "autoExecuteStatusInheritedFrom": "Default", + "recommendedActions": [] + } + } + ] + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseRecommendedActionUpdate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseRecommendedActionUpdate.json new file mode 100644 index 000000000000..43f4a93c14a3 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseRecommendedActionUpdate.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workloadinsight-demos", + "serverName": "misosisvr", + "databaseName": "IndexAdvisor_test_3", + "advisorName": "CreateIndex", + "recommendedActionName": "IR_[CRM]_[DataPoints]_4821CD2F9510D98184BB", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "state": { + "currentValue": "Pending" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workloadinsight-demos/providers/Microsoft.Sql/servers/misosisvr/databases/IndexAdvisor_test_3/advisors/CreateIndex/recommendedActions/IR_[CRM]_[DataPoints]_4821CD2F9510D98184BB", + "name": "IR_[CRM]_[DataPoints]_4821CD2F9510D98184BB", + "type": "Microsoft.Sql/servers/databases/advisors/recommendedActions", + "location": "East Asia", + "kind": "", + "properties": { + "recommendationReason": "", + "validSince": "2017-03-01T14:38:04Z", + "lastRefresh": "2017-03-01T14:38:04Z", + "state": { + "currentValue": "Pending", + "actionInitiatedBy": "User", + "lastModified": "2017-06-20T15:11:15Z" + }, + "isExecutableAction": true, + "isRevertableAction": true, + "isArchivedAction": false, + "executeActionInitiatedBy": "User", + "executeActionInitiatedTime": "2017-06-20T15:11:15Z", + "score": 1, + "implementationDetails": { + "method": "TSql", + "script": "CREATE NONCLUSTERED INDEX [nci_wi_DataPoints_B892614093BAC56295EF6018BD4CB51B] ON [CRM].[DataPoints] ([Name],[Money],[Power]) INCLUDE ([Hour], [System], [LastChanged]) WITH (ONLINE = ON)" + }, + "errorDetails": {}, + "estimatedImpact": [ + { + "dimensionName": "ActionDuration", + "unit": "Seconds", + "absoluteValue": 1440.0 + }, + { + "dimensionName": "SpaceChange", + "unit": "Megabytes", + "absoluteValue": 209.3125 + } + ], + "observedImpact": [], + "timeSeries": [], + "details": { + "indexName": "nci_wi_DataPoints_B892614093BAC56295EF6018BD4CB51B", + "indexType": "NONCLUSTERED", + "schema": "[CRM]", + "table": "[DataPoints]", + "indexColumns": "[Name],[Money],[Power]", + "includedColumns": "[Hour], [System], [LastChanged]" + } + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseRestorePointsDelete.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseRestorePointsDelete.json new file mode 100644 index 000000000000..1df305126008 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-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": "2021-02-01-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseRestorePointsGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseRestorePointsGet.json new file mode 100644 index 000000000000..e5284c72cbf7 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseRestorePointsGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "restorePointName": "131546477590000000", + "location": "japaneast", + "serverName": "testserver", + "databaseName": "testDatabase", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/servers/testserver/databases/testDatabase/restorePoints/ContinuousRestorePoint", + "name": "ContinuousRestorePoint", + "type": "Microsoft.Sql/servers/databases/restorePoints", + "location": "japaneast", + "properties": { + "restorePointType": "CONTINUOUS", + "earliestRestoreDate": "2017-03-10T08:00:00Z" + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseRestorePointsListByDatabase.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseRestorePointsListByDatabase.json new file mode 100644 index 000000000000..50fb29862a4d --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseRestorePointsListByDatabase.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-6730", + "serverName": "sqlcrudtest-9007", + "databaseName": "3481", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6730/providers/Microsoft.Sql/servers/sqlcrudtest-9007/databases/3481/restorepoints/ContinuousRestorePoint", + "name": "ContinuousRestorePoint", + "location": "West US", + "type": "Microsoft.Sql/servers/databases/restorePoints", + "properties": { + "restorePointType": "CONTINUOUS", + "earliestRestoreDate": "2017-06-12T00:00:00Z" + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseRestorePointsPost.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseRestorePointsPost.json new file mode 100644 index 000000000000..792573a0c818 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseRestorePointsPost.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "location": "japaneast", + "serverName": "testserver", + "databaseName": "testDatabase", + "api-version": "2021-02-01-preview", + "parameters": { + "restorePointLabel": "mylabel" + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/servers/testserver/databases/testDatabase/restorePoints/131546477590000000", + "name": "131546477590000000", + "type": "Microsoft.Sql/servers/databases/restorePoints", + "location": "japaneast", + "properties": { + "restorePointType": "DISCRETE", + "restorePointCreationDate": "2017-03-10T08:00:00Z", + "restorePointLabel": "mylabel" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/servers/testserver/databases/testDatabase/restorePoints/131546477590000000", + "name": "131546477590000000", + "type": "Microsoft.Sql/servers/databases/restorePoints", + "location": "southeastasia", + "properties": { + "restorePointType": "DISCRETE", + "restorePointCreationDate": "2017-03-10T08:00:00Z", + "restorePointLabel": "mylabel" + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseSchemaGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseSchemaGet.json new file mode 100644 index 000000000000..4aa52977ef95 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseSchemaGet.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "serverName": "serverName", + "databaseName": "myDatabase", + "schemaName": "dbo", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Sql/servers/serverName/databases/myDatabase/schemas/dbo", + "name": "dbo", + "type": "Microsoft.Sql/servers/databases/schemas" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseSchemaListByDatabase.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseSchemaListByDatabase.json new file mode 100644 index 000000000000..925363f0ea0f --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseSchemaListByDatabase.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "serverName": "serverName", + "databaseName": "myDatabase", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Sql/servers/serverName/databases/myDatabase/schemas/dbo", + "name": "dbo", + "type": "Microsoft.Sql/servers/databases/schemas" + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Sql/servers/serverName/databases/myDatabase/schemas/schema2", + "name": "schema2", + "type": "Microsoft.Sql/servers/databases/schemas" + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseSecurityAlertCreateMax.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseSecurityAlertCreateMax.json new file mode 100644 index 000000000000..ccc2ccd2814e --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseSecurityAlertCreateMax.json @@ -0,0 +1,89 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "securityalert-4799", + "serverName": "securityalert-6440", + "databaseName": "testdb", + "securityAlertPolicyName": "default", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "state": "Enabled", + "emailAccountAdmins": true, + "emailAddresses": [ + "test@microsoft.com", + "user@microsoft.com" + ], + "disabledAlerts": [ + "Sql_Injection", + "Usage_Anomaly" + ], + "retentionDays": 6, + "storageAccountAccessKey": "sdlfkjabc+sdlfkjsdlkfsjdfLDKFTERLKFDFKLjsdfksjdflsdkfD2342309432849328476458/3RSD==", + "storageEndpoint": "https://mystorage.blob.core.windows.net" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/securityalert-4799/providers/Microsoft.Sql/servers/securityalert-6440/databases/testdb", + "name": "default", + "type": "Microsoft.Sql/servers/databases/securityAlertPolicies", + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2020-04-03T04:41:33.937Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-04-03T04:41:33.937Z" + }, + "properties": { + "state": "Enabled", + "emailAccountAdmins": true, + "emailAddresses": [ + "test@microsoft.com", + "user@microsoft.com" + ], + "disabledAlerts": [ + "Sql_Injection", + "Usage_Anomaly" + ], + "retentionDays": 6, + "storageAccountAccessKey": "", + "storageEndpoint": "https://mystorage.blob.core.windows.net" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/securityalert-4799/providers/Microsoft.Sql/servers/securityalert-6440/databases/testdb", + "name": "default", + "type": "Microsoft.Sql/servers/databases/securityAlertPolicies", + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2020-04-03T04:41:33.937Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-04-03T04:41:33.937Z" + }, + "properties": { + "state": "Enabled", + "emailAccountAdmins": true, + "emailAddresses": [ + "test@microsoft.com", + "user@microsoft.com" + ], + "disabledAlerts": [ + "Access_Anomaly", + "Usage_Anomaly" + ], + "retentionDays": 6, + "storageAccountAccessKey": "sdlfkjabc+sdlfkjsdlkfsjdfLDKFTERLKFDFKLjsdfksjdflsdkfD2342309432849328476458/3RSD==", + "storageEndpoint": "https://mystorage.blob.core.windows.net" + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseSecurityAlertCreateMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseSecurityAlertCreateMin.json new file mode 100644 index 000000000000..0d387452e468 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseSecurityAlertCreateMin.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "securityalert-4799", + "serverName": "securityalert-6440", + "databaseName": "testdb", + "securityAlertPolicyName": "default", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "state": "Enabled" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/securityalert-4799/providers/Microsoft.Sql/servers/securityalert-6440/databases/testdb", + "name": "default", + "type": "Microsoft.Sql/servers/databases/securityAlertPolicies", + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2020-04-03T04:41:33.937Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-04-03T04:41:33.937Z" + }, + "properties": { + "state": "Enabled", + "emailAccountAdmins": true, + "emailAddresses": [], + "disabledAlerts": [], + "retentionDays": 0, + "storageAccountAccessKey": "", + "storageEndpoint": "" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/securityalert-4799/providers/Microsoft.Sql/servers/securityalert-6440/databases/testdb", + "name": "default", + "type": "Microsoft.Sql/servers/databases/securityAlertPolicies", + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2020-04-03T04:41:33.937Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-04-03T04:41:33.937Z" + }, + "properties": { + "state": "Enabled", + "emailAccountAdmins": true, + "emailAddresses": [], + "disabledAlerts": [], + "retentionDays": 0, + "storageAccountAccessKey": "", + "storageEndpoint": "" + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseSecurityAlertGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseSecurityAlertGet.json new file mode 100644 index 000000000000..87aef7f2d7a2 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseSecurityAlertGet.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "securityalert-6852", + "serverName": "securityalert-2080", + "databaseName": "testdb", + "securityAlertPolicyName": "default", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/securityalert-6852/providers/Microsoft.Sql/servers/securityalert-2080/databases/testdb", + "name": "default", + "type": "Microsoft.Sql/servers/databases/securityAlertPolicies", + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2020-04-03T04:41:33.937Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-04-03T04:41:33.937Z" + }, + "properties": { + "state": "Enabled", + "emailAccountAdmins": true, + "emailAddresses": [ + "test@consoto.com", + "user@consoto.com" + ], + "disabledAlerts": [ + "Usage_Anomaly" + ], + "retentionDays": 0, + "storageAccountAccessKey": "", + "creationTime": "2020-04-03T04:41:33.937Z" + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseSecurityAlertListByDatabase.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseSecurityAlertListByDatabase.json new file mode 100644 index 000000000000..3f5b5b2124ab --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseSecurityAlertListByDatabase.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "securityalert-6852", + "serverName": "securityalert-2080", + "databaseName": "testdb", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/securityalert-6852/providers/Microsoft.Sql/servers/securityalert-2080/databases/testdb", + "name": "default", + "type": "Microsoft.Sql/servers/databases/securityAlertPolicies", + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2020-04-03T04:41:33.937Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-04-03T04:41:33.937Z" + }, + "properties": { + "state": "Enabled", + "emailAccountAdmins": true, + "emailAddresses": [ + "test@consoto.com", + "user@consoto.com" + ], + "disabledAlerts": [ + "Usage_Anomaly" + ], + "retentionDays": 0, + "storageAccountAccessKey": "", + "storageEndpoint": "", + "creationTime": "2020-04-03T04:41:33.937Z" + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseTableGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseTableGet.json new file mode 100644 index 000000000000..a1704e596bca --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseTableGet.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "serverName": "serverName", + "databaseName": "myDatabase", + "schemaName": "dbo", + "tableName": "table1", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Sql/servers/serverName/databases/myDatabase/schemas/dbo/tables/table1", + "name": "table1", + "type": "Microsoft.Sql/servers/databases/schemas/tables" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseTableListBySchema.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseTableListBySchema.json new file mode 100644 index 000000000000..725073fa94c2 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseTableListBySchema.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "serverName": "serverName", + "databaseName": "myDatabase", + "schemaName": "dbo", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Sql/servers/serverName/databases/myDatabase/schemas/dbo/tables/table1", + "name": "table1", + "type": "Microsoft.Sql/servers/databases/schemas/tables" + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Sql/servers/serverName/databases/myDatabase/schemas/dbo/tables/table2", + "name": "table2", + "type": "Microsoft.Sql/servers/databases/schemas/tables" + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseVulnerabilityAssessmentCreateContainerSasKeyMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseVulnerabilityAssessmentCreateContainerSasKeyMin.json new file mode 100644 index 000000000000..b38a3aa9a4cd --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseVulnerabilityAssessmentCreateContainerSasKeyMin.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityaseessmenttest-4799", + "serverName": "vulnerabilityaseessmenttest-6440", + "databaseName": "testdb", + "vulnerabilityAssessmentName": "default", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "storageContainerPath": "https://myStorage.blob.core.windows.net/vulnerability-assessment/", + "storageContainerSasKey": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/servers/vulnerabilityaseessmenttest-6440/databases/testdb/vulnerabilityAssessments/default", + "name": "default", + "type": "Microsoft.Sql/servers/databases/vulnerabilityAssessments", + "properties": { + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": false, + "emails": [] + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/servers/vulnerabilityaseessmenttest-6440/databases/testdb/vulnerabilityAssessments/default", + "name": "default", + "type": "Microsoft.Sql/servers/databases/vulnerabilityAssessments", + "properties": { + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": false, + "emails": [] + } + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseVulnerabilityAssessmentCreateMax.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseVulnerabilityAssessmentCreateMax.json new file mode 100644 index 000000000000..d4f9bc8a7fc4 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseVulnerabilityAssessmentCreateMax.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityaseessmenttest-4799", + "serverName": "vulnerabilityaseessmenttest-6440", + "databaseName": "testdb", + "vulnerabilityAssessmentName": "default", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "storageContainerPath": "https://myStorage.blob.core.windows.net/vulnerability-assessment/", + "storageContainerSasKey": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX", + "storageAccountAccessKey": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX", + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": true, + "emails": [ + "email1@mail.com", + "email2@mail.com" + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/servers/vulnerabilityaseessmenttest-6440/databases/testdb/vulnerabilityAssessments/default", + "name": "default", + "type": "Microsoft.Sql/servers/databases/vulnerabilityAssessments", + "properties": { + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": true, + "emails": [ + "email1@mail.com", + "email2@mail.com" + ] + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/servers/vulnerabilityaseessmenttest-6440/databases/testdb/vulnerabilityAssessments/default", + "name": "default", + "type": "Microsoft.Sql/servers/databases/vulnerabilityAssessments", + "properties": { + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": true, + "emails": [ + "email1@mail.com", + "email2@mail.com" + ] + } + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseVulnerabilityAssessmentCreateStorageAccessKeyMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseVulnerabilityAssessmentCreateStorageAccessKeyMin.json new file mode 100644 index 000000000000..e8333783e78e --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseVulnerabilityAssessmentCreateStorageAccessKeyMin.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityaseessmenttest-4799", + "serverName": "vulnerabilityaseessmenttest-6440", + "databaseName": "testdb", + "vulnerabilityAssessmentName": "default", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "storageContainerPath": "https://myStorage.blob.core.windows.net/vulnerability-assessment/", + "storageAccountAccessKey": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/servers/vulnerabilityaseessmenttest-6440/databases/testdb/vulnerabilityAssessments/default", + "name": "default", + "type": "Microsoft.Sql/servers/databases/vulnerabilityAssessments", + "properties": { + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": false, + "emails": [] + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/servers/vulnerabilityaseessmenttest-6440/databases/testdb/vulnerabilityAssessments/default", + "name": "default", + "type": "Microsoft.Sql/servers/databases/vulnerabilityAssessments", + "properties": { + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": false, + "emails": [] + } + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseVulnerabilityAssessmentDelete.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseVulnerabilityAssessmentDelete.json new file mode 100644 index 000000000000..8589330936d0 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseVulnerabilityAssessmentDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityaseessmenttest-4799", + "serverName": "vulnerabilityaseessmenttest-6440", + "databaseName": "testdb", + "vulnerabilityAssessmentName": "default", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseVulnerabilityAssessmentGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseVulnerabilityAssessmentGet.json new file mode 100644 index 000000000000..c751694ff75a --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseVulnerabilityAssessmentGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityaseessmenttest-4799", + "serverName": "vulnerabilityaseessmenttest-6440", + "databaseName": "testdb", + "vulnerabilityAssessmentName": "default", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/servers/vulnerabilityaseessmenttest-6440/databases/testdb/vulnerabilityAssessments/default", + "name": "default", + "type": "Microsoft.Sql/servers/databases/vulnerabilityAssessments", + "properties": { + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": true, + "emails": [ + "email1@mail.com", + "email2@mail.com" + ] + } + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseVulnerabilityAssessmentListByDatabase.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseVulnerabilityAssessmentListByDatabase.json new file mode 100644 index 000000000000..ca770f8bf0dd --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseVulnerabilityAssessmentListByDatabase.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityaseessmenttest-4799", + "serverName": "vulnerabilityaseessmenttest-6440", + "databaseName": "testdb", + "vulnerabilityAssessmentName": "default", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/servers/vulnerabilityaseessmenttest-6440/databases/testdb/vulnerabilityAssessments/default", + "name": "default", + "type": "Microsoft.Sql/servers/databases/vulnerabilityAssessments", + "properties": { + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": true, + "emails": [ + "email1@mail.com", + "email2@mail.com" + ] + } + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseVulnerabilityAssessmentRuleBaselineCreate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseVulnerabilityAssessmentRuleBaselineCreate.json new file mode 100644 index 000000000000..b7a7edfc90d5 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseVulnerabilityAssessmentRuleBaselineCreate.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityaseessmenttest-4799", + "serverName": "vulnerabilityaseessmenttest-6440", + "databaseName": "testdb", + "vulnerabilityAssessmentName": "default", + "ruleId": "VA1001", + "baselineName": "default", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "baselineResults": [ + { + "result": [ + "userA", + "SELECT" + ] + }, + { + "result": [ + "userB", + "SELECT" + ] + }, + { + "result": [ + "userC", + "SELECT", + "tableId_4" + ] + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/servers/vulnerabilityaseessmenttest-6440/databases/testdb/vulnerabilityAssessments/default/rules/VA1001/baselines/default", + "name": "default", + "type": "Microsoft.Sql/servers/databases/vulnerabilityAssessments/rules/baselines", + "properties": { + "baselineResults": [ + { + "result": [ + "userA", + "SELECT" + ] + }, + { + "result": [ + "userB", + "SELECT" + ] + }, + { + "result": [ + "userC", + "SELECT", + "tableId_4" + ] + } + ] + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseVulnerabilityAssessmentRuleBaselineDelete.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseVulnerabilityAssessmentRuleBaselineDelete.json new file mode 100644 index 000000000000..b17bb6cbe630 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseVulnerabilityAssessmentRuleBaselineDelete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityaseessmenttest-4799", + "serverName": "vulnerabilityaseessmenttest-6440", + "databaseName": "testdb", + "baselineName": "default", + "ruleId": "VA1001", + "vulnerabilityAssessmentName": "default", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseVulnerabilityAssessmentRuleBaselineGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseVulnerabilityAssessmentRuleBaselineGet.json new file mode 100644 index 000000000000..29346a8fc9d0 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseVulnerabilityAssessmentRuleBaselineGet.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityaseessmenttest-4711", + "serverName": "vulnerabilityaseessmenttest-6411", + "databaseName": "testdb", + "vulnerabilityAssessmentName": "default", + "ruleId": "VA1001", + "baselineName": "master", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/servers/vulnerabilityaseessmenttest-6440/databases/testdb/vulnerabilityAssessments/default/rules/VA1001/baselines/default", + "name": "default", + "type": "Microsoft.Sql/servers/databases/vulnerabilityAssessments/rules/baselines", + "properties": { + "baselineResults": [ + { + "result": [ + "userA", + "SELECT" + ] + }, + { + "result": [ + "userB", + "SELECT" + ] + }, + { + "result": [ + "userC", + "SELECT", + "tableId_4" + ] + } + ] + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseVulnerabilityAssessmentScanExport.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseVulnerabilityAssessmentScanExport.json new file mode 100644 index 000000000000..386d826abdf2 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseVulnerabilityAssessmentScanExport.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityassessmenttest-4799", + "serverName": "vulnerabilityassessmenttest-6440", + "databaseName": "testdb", + "vulnerabilityAssessmentName": "default", + "scanId": "scan001", + "api-version": "2021-02-01-preview", + "parameters": {} + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityassessmenttest-4799/providers/Microsoft.Sql/servers/vulnerabilityassessmenttest-6440/databases/testdb/vulnerabilityAssessments/default/scans/scan001/export", + "name": "scan001", + "type": "Microsoft.Sql/servers/databases/vulnerabilityAssessments/scans/export", + "properties": { + "exportedReportLocation": "https://myaccount.blob.core.windows.net/vulnerabilityAssessment/vulnerabilityassessmenttest-6440/testdb/scan001.xlsx" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityassessmenttest-4799/providers/Microsoft.Sql/servers/vulnerabilityassessmenttest-6440/databases/testdb/vulnerabilityAssessments/default/scans/scan001/export", + "name": "scan001", + "type": "Microsoft.Sql/servers/databases/vulnerabilityAssessments/scans/export", + "properties": { + "exportedReportLocation": "https://myaccount.blob.core.windows.net/vulnerabilityAssessment/vulnerabilityassessmenttest-6440/testdb/scan001.xlsx" + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseVulnerabilityAssessmentScanRecordsGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseVulnerabilityAssessmentScanRecordsGet.json new file mode 100644 index 000000000000..1e112268dc9a --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseVulnerabilityAssessmentScanRecordsGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityassessmenttest-4711", + "serverName": "vulnerabilityassessmenttest-6411", + "databaseName": "testdb", + "vulnerabilityAssessmentName": "default", + "scanId": "scan001", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityassessmenttest-4799/providers/Microsoft.Sql/servers/vulnerabilityassessmenttest-6440/databases/testdb/vulnerabilityAssessments/default/scans/scan001", + "name": "scan001", + "type": "Microsoft.Sql/servers/databases/vulnerabilityAssessments/scans", + "properties": { + "scanId": "scan001", + "triggerType": "OnDemand", + "state": "Passed", + "startTime": "2017-12-12T17:45:06Z", + "endTime": "2017-12-12T17:47:06Z", + "errors": [], + "storageContainerPath": "https://myaccount.blob.core.windows.net/vulnerability-assessment", + "numberOfFailedSecurityChecks": 9 + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseVulnerabilityAssessmentScanRecordsListByDatabase.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseVulnerabilityAssessmentScanRecordsListByDatabase.json new file mode 100644 index 000000000000..3eae09546ac4 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseVulnerabilityAssessmentScanRecordsListByDatabase.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityassessmenttest-4711", + "serverName": "vulnerabilityassessmenttest-6411", + "databaseName": "testdb", + "vulnerabilityAssessmentName": "default", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityassessmenttest-4799/providers/Microsoft.Sql/servers/vulnerabilityassessmenttest-6440/databases/testdb/vulnerabilityAssessments/default/scans/scan001", + "name": "scan001", + "type": "Microsoft.Sql/servers/databases/vulnerabilityAssessments/scans", + "properties": { + "scanId": "scan001", + "triggerType": "OnDemand", + "state": "Passed", + "startTime": "2017-12-12T17:45:06Z", + "endTime": "2017-12-12T17:47:06Z", + "errors": [], + "storageContainerPath": "https://myaccount.blob.core.windows.net/vulnerability-assessment", + "numberOfFailedSecurityChecks": 9 + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityassessmenttest-4799/providers/Microsoft.Sql/servers/vulnerabilityassessmenttest-6440/databases/testdb/vulnerabilityAssessments/default/scans/scan002", + "name": "scan002", + "type": "Microsoft.Sql/servers/databases/vulnerabilityAssessments/scans", + "properties": { + "scanId": "scan002", + "triggerType": "Recurring", + "state": "Failed", + "startTime": "2017-12-12T17:45:06Z", + "endTime": "2017-12-12T17:47:06Z", + "errors": [], + "storageContainerPath": "https://myaccount.blob.core.windows.net/vulnerability-assessment", + "numberOfFailedSecurityChecks": 9 + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityassessmenttest-4799/providers/Microsoft.Sql/servers/vulnerabilityassessmenttest-6440/databases/testdb/vulnerabilityAssessments/default/scans/scan003", + "name": "scan003", + "type": "Microsoft.Sql/servers/databases/vulnerabilityAssessments/scans", + "properties": { + "scanId": "scan003", + "triggerType": "Recurring", + "state": "FailedToRun", + "startTime": "2017-12-12T17:45:06Z", + "endTime": "2017-12-12T17:47:06Z", + "errors": [ + { + "code": "StorageNotFound", + "message": "Storage not found" + } + ], + "storageContainerPath": "https://myaccount.blob.core.windows.net/vulnerability-assessment", + "numberOfFailedSecurityChecks": 0 + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseVulnerabilityAssessmentScansExecute.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseVulnerabilityAssessmentScansExecute.json new file mode 100644 index 000000000000..ca7fd0d09c3c --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DatabaseVulnerabilityAssessmentScansExecute.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityassessmenttest-4711", + "serverName": "vulnerabilityassessmenttest-6411", + "databaseName": "testdb", + "vulnerabilityAssessmentName": "default", + "scanId": "scan01", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DeleteDatabase.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DeleteDatabase.json new file mode 100644 index 000000000000..1b80f863f31d --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DeleteDatabase.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdb", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {}, + "204": {}, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DeleteInstancePool.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DeleteInstancePool.json new file mode 100644 index 000000000000..0a0b9a4f35f3 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DeleteInstancePool.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "group1", + "instancePoolName": "testIP", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DeleteJob.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DeleteJob.json new file mode 100644 index 000000000000..49b1056a5c04 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DeleteJob.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "group1", + "serverName": "server1", + "jobAgentName": "agent1", + "jobName": "job1", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DeleteJobAgent.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DeleteJobAgent.json new file mode 100644 index 000000000000..bf8f0d03b3f7 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DeleteJobAgent.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "group1", + "serverName": "server1", + "jobAgentName": "agent1", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DeleteJobCredential.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DeleteJobCredential.json new file mode 100644 index 000000000000..ae121813660f --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DeleteJobCredential.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "group1", + "serverName": "server1", + "jobAgentName": "agent1", + "credentialName": "cred1", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DeleteJobStep.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DeleteJobStep.json new file mode 100644 index 000000000000..fb539d1e7e80 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DeleteJobStep.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "group1", + "serverName": "server1", + "jobAgentName": "agent1", + "jobName": "job1", + "stepName": "step1", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DeleteJobTargetGroup.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DeleteJobTargetGroup.json new file mode 100644 index 000000000000..8e91baea3b22 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DeleteJobTargetGroup.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "group1", + "serverName": "server1", + "jobAgentName": "agent1", + "targetGroupName": "targetGroup1", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DeleteWorkloadClassifier.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DeleteWorkloadClassifier.json new file mode 100644 index 000000000000..81db98f5a1ea --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DeleteWorkloadClassifier.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdb", + "workloadGroupName": "wlm_workloadgroup", + "workloadClassifierName": "wlm_workloadclassifier", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DeleteWorkloadGroup.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DeleteWorkloadGroup.json new file mode 100644 index 000000000000..3113e932347d --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DeleteWorkloadGroup.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdb", + "workloadGroupName": "wlm_workloadgroup", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DeletedServerGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DeletedServerGet.json new file mode 100644 index 000000000000..9c36d01d74e5 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DeletedServerGet.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "locationName": "japaneast", + "deletedServerName": "sqlcrudtest-d-1414", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/locations/japaneast/deletedServers/sqlcrudtest-d-1414", + "name": "sqlcrudtest-d-1414", + "type": "Microsoft.Sql/deletedServers", + "properties": { + "fullyQualifiedDomainName": "sqlcrudtest-d-1414.database.windows.net", + "version": "12.0", + "deletionTime": "2017-06-15T11:20:00.345Z", + "originalId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/sqlcrudtest-d-1414" + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DeletedServerList.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DeletedServerList.json new file mode 100644 index 000000000000..b1adbf04b232 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DeletedServerList.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "locationName": "japaneast", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/locations/japaneast/deletedServers/sqlcrudtest-d-1414", + "name": "sqlcrudtest-d-1414", + "type": "Microsoft.Sql/deletedServers", + "properties": { + "fullyQualifiedDomainName": "sqlcrudtest-d-1414.database.windows.net", + "version": "12.0", + "deletionTime": "2017-06-15T20:20:00.345Z", + "originalId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/sqlcrudtest-d-1414" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/locations/japaneast/deletedServers/sqlcrudtest-d-2424", + "name": "sqlcrudtest-d-2424", + "type": "Microsoft.Sql/deletedServers", + "properties": { + "fullyQualifiedDomainName": "sqlcrudtest-d-2424.database.windows.net", + "version": "12.0", + "deletionTime": "2017-06-13T10:10:00.678Z", + "originalId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/sqlcrudtest-d-2424" + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DeletedServerListBySubscription.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DeletedServerListBySubscription.json new file mode 100644 index 000000000000..87f88c7c6fb9 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DeletedServerListBySubscription.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/locations/japaneast/deletedServers/sqlcrudtest-d-1414", + "name": "sqlcrudtest-d-1414", + "type": "Microsoft.Sql/deletedServers", + "properties": { + "fullyQualifiedDomainName": "sqlcrudtest-d-1414.database.windows.net", + "version": "12.0", + "deletionTime": "2017-06-15T20:20:00.345Z", + "originalId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/sqlcrudtest-d-1414" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/locations/japaneast/deletedServers/sqlcrudtest-d-2424", + "name": "sqlcrudtest-d-2424", + "type": "Microsoft.Sql/deletedServers", + "properties": { + "fullyQualifiedDomainName": "sqlcrudtest-d-2424.database.windows.net", + "version": "12.0", + "deletionTime": "2017-06-13T10:10:00.678Z", + "originalId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/sqlcrudtest-d-2424" + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DeletedServerRecover.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DeletedServerRecover.json new file mode 100644 index 000000000000..785ffd02aac6 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/DeletedServerRecover.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "locationName": "japaneast", + "deletedServerName": "sqlcrudtest-d-1414", + "api-version": "2021-02-01-preview", + "parameters": {} + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/locations/japaneast/deletedServers/sqlcrudtest-d-1414", + "name": "sqlcrudtest-d-1414", + "type": "Microsoft.Sql/deletedServers", + "properties": { + "fullyQualifiedDomainName": "sqlcrudtest-d-1414.database.windows.net", + "version": "12.0", + "deletionTime": "2017-06-15T11:20:00.345Z", + "originalId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/sqlcrudtest-d-1414" + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ElasticPoolCreateOrUpdateMax.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ElasticPoolCreateOrUpdateMax.json new file mode 100644 index 000000000000..59381f631458 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ElasticPoolCreateOrUpdateMax.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-2369", + "serverName": "sqlcrudtest-8069", + "elasticPoolName": "sqlcrudtest-8102", + "api-version": "2021-02-01-preview", + "parameters": { + "location": "Japan East", + "sku": { + "name": "GP_Gen4_2", + "tier": "GeneralPurpose", + "capacity": 2 + }, + "properties": { + "perDatabaseSettings": { + "minCapacity": 0.25, + "maxCapacity": 2.0 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-2369/providers/Microsoft.Sql/servers/sqlcrudtest-8069/elasticPools/sqlcrudtest-8102", + "name": "sqlcrudtest-8102", + "type": "Microsoft.Sql/servers/elasticPools", + "location": "Japan East", + "kind": null, + "sku": { + "name": "GP_Gen4_2", + "tier": "GeneralPurpose", + "capacity": 2 + }, + "properties": { + "creationDate": "2017-02-10T01:25:25.033Z", + "state": "Ready", + "maxSizeBytes": 5242880000, + "perDatabaseSettings": { + "minCapacity": 0.25, + "maxCapacity": 2.0 + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-2369/providers/Microsoft.Sql/servers/sqlcrudtest-8069/elasticPools/sqlcrudtest-8102", + "name": "sqlcrudtest-8102", + "type": "Microsoft.Sql/servers/elasticPools", + "location": "Japan East", + "kind": null, + "sku": { + "name": "GP_Gen4_2", + "tier": "GeneralPurpose", + "capacity": 2 + }, + "properties": { + "creationDate": "2017-02-10T01:25:25.033Z", + "state": "Ready", + "maxSizeBytes": 5242880000, + "perDatabaseSettings": { + "minCapacity": 0.25, + "maxCapacity": 2.0 + } + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ElasticPoolCreateOrUpdateMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ElasticPoolCreateOrUpdateMin.json new file mode 100644 index 000000000000..f4e1ba6b7b97 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ElasticPoolCreateOrUpdateMin.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-2369", + "serverName": "sqlcrudtest-8069", + "elasticPoolName": "sqlcrudtest-8102", + "api-version": "2021-02-01-preview", + "parameters": { + "location": "Japan East" + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-2369/providers/Microsoft.Sql/servers/sqlcrudtest-8069/elasticPools/sqlcrudtest-8102", + "name": "sqlcrudtest-8102", + "type": "Microsoft.Sql/servers/elasticPools", + "location": "Japan East", + "kind": null, + "sku": { + "name": "StandardPool", + "tier": "Standard", + "capacity": 100 + }, + "properties": { + "creationDate": "2017-02-10T01:25:25.033Z", + "state": "Ready", + "maxSizeBytes": 102400, + "perDatabaseSettings": { + "minCapacity": 0, + "maxCapacity": 100 + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-2369/providers/Microsoft.Sql/servers/sqlcrudtest-8069/elasticPools/sqlcrudtest-8102", + "name": "sqlcrudtest-8102", + "type": "Microsoft.Sql/servers/elasticPools", + "location": "Japan East", + "kind": null, + "sku": { + "name": "StandardPool", + "tier": "Standard", + "capacity": 100 + }, + "properties": { + "creationDate": "2017-02-10T01:25:25.033Z", + "state": "Ready", + "maxSizeBytes": 102400, + "perDatabaseSettings": { + "minCapacity": 0, + "maxCapacity": 100 + } + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ElasticPoolCreateOrUpdateSetMaintenanceConfiguration.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ElasticPoolCreateOrUpdateSetMaintenanceConfiguration.json new file mode 100644 index 000000000000..d62fe4afac7c --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ElasticPoolCreateOrUpdateSetMaintenanceConfiguration.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-2369", + "serverName": "sqlcrudtest-8069", + "elasticPoolName": "sqlcrudtest-8102", + "api-version": "2021-02-01-preview", + "parameters": { + "location": "Japan East", + "properties": { + "maintenanceConfigurationId": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_JapanEast_1" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-2369/providers/Microsoft.Sql/servers/sqlcrudtest-8069/elasticPools/sqlcrudtest-8102", + "name": "sqlcrudtest-8102", + "type": "Microsoft.Sql/servers/elasticPools", + "location": "Japan East", + "kind": null, + "sku": { + "name": "StandardPool", + "tier": "Standard", + "capacity": 100 + }, + "properties": { + "creationDate": "2017-02-10T01:25:25.033Z", + "state": "Ready", + "maxSizeBytes": 102400, + "perDatabaseSettings": { + "minCapacity": 0, + "maxCapacity": 100 + }, + "maintenanceConfigurationId": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_JapanEast_1" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-2369/providers/Microsoft.Sql/servers/sqlcrudtest-8069/elasticPools/sqlcrudtest-8102", + "name": "sqlcrudtest-8102", + "type": "Microsoft.Sql/servers/elasticPools", + "location": "Japan East", + "kind": null, + "sku": { + "name": "StandardPool", + "tier": "Standard", + "capacity": 100 + }, + "properties": { + "creationDate": "2017-02-10T01:25:25.033Z", + "state": "Ready", + "maxSizeBytes": 102400, + "perDatabaseSettings": { + "minCapacity": 0, + "maxCapacity": 100 + }, + "maintenanceConfigurationId": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_JapanEast_1" + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ElasticPoolDelete.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ElasticPoolDelete.json new file mode 100644 index 000000000000..84253374c4eb --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ElasticPoolDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-3129", + "serverName": "sqlcrudtest-228", + "elasticPoolName": "sqlcrudtest-3851", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {}, + "204": {}, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ElasticPoolGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ElasticPoolGet.json new file mode 100644 index 000000000000..6948dca90d4c --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ElasticPoolGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-2369", + "serverName": "sqlcrudtest-8069", + "elasticPoolName": "sqlcrudtest-8102", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-2369/providers/Microsoft.Sql/servers/sqlcrudtest-8069/elasticPools/sqlcrudtest-8102", + "name": "sqlcrudtest-8102", + "type": "Microsoft.Sql/servers/elasticPools", + "location": "Japan East", + "kind": null, + "sku": { + "name": "GP_Gen5_2", + "tier": "GeneralPurpose", + "capacity": 2 + }, + "properties": { + "creationDate": "2017-10-10T01:25:25.033Z", + "state": "Ready", + "maxSizeBytes": 5242880000, + "perDatabaseSettings": { + "minCapacity": 0.25, + "maxCapacity": 1.0 + }, + "zoneRedundant": true, + "licenseType": "LicenseIncluded", + "maintenanceConfigurationId": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_JapanEast_1" + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ElasticPoolListByServer.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ElasticPoolListByServer.json new file mode 100644 index 000000000000..7c3fe4d37209 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ElasticPoolListByServer.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-2369", + "serverName": "sqlcrudtest-8069", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-2369/providers/Microsoft.Sql/servers/sqlcrudtest-8069/elasticPools/sqlcrudtest-2729", + "name": "sqlcrudtest-2729", + "type": "Microsoft.Sql/servers/elasticPools", + "location": "Japan East", + "kind": null, + "sku": { + "name": "GP_Gen4_2", + "tier": "GeneralPurpose", + "capacity": 2 + }, + "properties": { + "creationDate": "2017-02-10T01:27:21.32Z", + "state": "Ready", + "maxSizeBytes": 5242880000, + "perDatabaseSettings": { + "minCapacity": 0.25, + "maxCapacity": 1.0 + }, + "zoneRedundant": true, + "licenseType": "LicenseIncluded" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-2369/providers/Microsoft.Sql/servers/sqlcrudtest-8069/elasticPools/sqlcrudtest-3191", + "name": "sqlcrudtest-3191", + "type": "Microsoft.Sql/servers/elasticPools", + "location": "Japan East", + "kind": null, + "sku": { + "name": "BasicPool", + "tier": "Basic", + "capacity": 50 + }, + "properties": { + "creationDate": "2017-02-10T01:26:26.45Z", + "state": "Ready", + "maxSizeBytes": 5242880000, + "perDatabaseSettings": { + "minCapacity": 0, + "maxCapacity": 5 + } + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-2369/providers/Microsoft.Sql/servers/sqlcrudtest-8069/elasticPools/sqlcrudtest-8102", + "name": "sqlcrudtest-8102", + "type": "Microsoft.Sql/servers/elasticPools", + "location": "Japan East", + "kind": null, + "sku": { + "name": "BasicPool", + "tier": "Basic", + "capacity": 50 + }, + "properties": { + "creationDate": "2017-02-10T01:25:25.033Z", + "state": "Ready", + "maxSizeBytes": 5242880000, + "perDatabaseSettings": { + "minCapacity": 0, + "maxCapacity": 5 + } + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ElasticPoolUpdateAssignMaintenanceConfiguration.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ElasticPoolUpdateAssignMaintenanceConfiguration.json new file mode 100644 index 000000000000..bcfad9fe8153 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ElasticPoolUpdateAssignMaintenanceConfiguration.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-2369", + "serverName": "sqlcrudtest-8069", + "elasticPoolName": "sqlcrudtest-8102", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "maintenanceConfigurationId": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_JapanEast_1" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-2369/providers/Microsoft.Sql/servers/sqlcrudtest-8069/elasticPools/sqlcrudtest-8102", + "name": "sqlcrudtest-8102", + "type": "Microsoft.Sql/servers/elasticPools", + "location": "Japan East", + "kind": null, + "sku": { + "name": "BasicPool", + "tier": "Basic", + "capacity": 50 + }, + "properties": { + "creationDate": "2017-02-10T01:25:25.033Z", + "state": "Ready", + "maxSizeBytes": 5242880000, + "perDatabaseSettings": { + "minCapacity": 0, + "maxCapacity": 5 + }, + "maintenanceConfigurationId": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_JapanEast_1" + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ElasticPoolUpdateMax.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ElasticPoolUpdateMax.json new file mode 100644 index 000000000000..0afc2948819b --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ElasticPoolUpdateMax.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-2369", + "serverName": "sqlcrudtest-8069", + "elasticPoolName": "sqlcrudtest-8102", + "api-version": "2021-02-01-preview", + "parameters": { + "sku": { + "name": "BC_Gen4", + "tier": "BusinessCritical", + "capacity": 2 + }, + "properties": { + "perDatabaseSettings": { + "minCapacity": 0.25, + "maxCapacity": 1.0 + }, + "zoneRedundant": true, + "licenseType": "LicenseIncluded" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-2369/providers/Microsoft.Sql/servers/sqlcrudtest-8069/elasticPools/sqlcrudtest-8102", + "name": "sqlcrudtest-8102", + "type": "Microsoft.Sql/servers/elasticPools", + "location": "Japan East", + "kind": null, + "sku": { + "name": "BC_Gen4", + "tier": "BusinessCritical", + "capacity": 2 + }, + "properties": { + "creationDate": "2017-02-10T01:27:21.32Z", + "state": "Ready", + "maxSizeBytes": 5242880000, + "perDatabaseSettings": { + "minCapacity": 0.25, + "maxCapacity": 1.0 + }, + "zoneRedundant": true, + "licenseType": "LicenseIncluded" + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ElasticPoolUpdateMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ElasticPoolUpdateMin.json new file mode 100644 index 000000000000..0ae9c8e332f9 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ElasticPoolUpdateMin.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-2369", + "serverName": "sqlcrudtest-8069", + "elasticPoolName": "sqlcrudtest-8102", + "api-version": "2021-02-01-preview", + "parameters": {} + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-2369/providers/Microsoft.Sql/servers/sqlcrudtest-8069/elasticPools/sqlcrudtest-8102", + "name": "sqlcrudtest-8102", + "type": "Microsoft.Sql/servers/elasticPools", + "location": "Japan East", + "kind": null, + "sku": { + "name": "BasicPool", + "tier": "Basic", + "capacity": 50 + }, + "properties": { + "creationDate": "2017-02-10T01:25:25.033Z", + "state": "Ready", + "maxSizeBytes": 5242880000, + "perDatabaseSettings": { + "minCapacity": 0, + "maxCapacity": 5 + } + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ElasticPoolUpdateResetMaintenanceConfiguration.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ElasticPoolUpdateResetMaintenanceConfiguration.json new file mode 100644 index 000000000000..8942ce38cc94 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ElasticPoolUpdateResetMaintenanceConfiguration.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-2369", + "serverName": "sqlcrudtest-8069", + "elasticPoolName": "sqlcrudtest-8102", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "maintenanceConfigurationId": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_Default" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-2369/providers/Microsoft.Sql/servers/sqlcrudtest-8069/elasticPools/sqlcrudtest-8102", + "name": "sqlcrudtest-8102", + "type": "Microsoft.Sql/servers/elasticPools", + "location": "Japan East", + "kind": null, + "sku": { + "name": "BasicPool", + "tier": "Basic", + "capacity": 50 + }, + "properties": { + "creationDate": "2017-02-10T01:25:25.033Z", + "state": "Ready", + "maxSizeBytes": 5242880000, + "perDatabaseSettings": { + "minCapacity": 0, + "maxCapacity": 5 + } + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/EncryptionProtectorCreateOrUpdateKeyVault.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/EncryptionProtectorCreateOrUpdateKeyVault.json new file mode 100644 index 000000000000..b5b4977d4589 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/EncryptionProtectorCreateOrUpdateKeyVault.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "serverName": "sqlcrudtest-4645", + "encryptionProtectorName": "current", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "serverKeyType": "AzureKeyVault", + "serverKeyName": "someVault_someKey_01234567890123456789012345678901", + "autoRotationEnabled": false + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/encryptionProtector/current", + "name": "current", + "type": "Microsoft.Sql/servers/encryptionProtector", + "location": "West US", + "kind": "azurekeyvault", + "properties": { + "serverKeyName": "someVault_someKey_01234567890123456789012345678901", + "serverKeyType": "AzureKeyVault", + "autoRotationEnabled": false + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/EncryptionProtectorCreateOrUpdateServiceManaged.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/EncryptionProtectorCreateOrUpdateServiceManaged.json new file mode 100644 index 000000000000..7c51e068c866 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/EncryptionProtectorCreateOrUpdateServiceManaged.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "serverName": "sqlcrudtest-4645", + "encryptionProtectorName": "current", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "serverKeyType": "ServiceManaged", + "serverKeyName": "ServiceManaged" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/encryptionProtector/current", + "name": "current", + "type": "Microsoft.Sql/servers/encryptionProtector", + "location": "West US", + "kind": "servicemanaged", + "properties": { + "serverKeyName": "ServiceManaged", + "serverKeyType": "ServiceManaged" + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/EncryptionProtectorGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/EncryptionProtectorGet.json new file mode 100644 index 000000000000..de120620c00a --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/EncryptionProtectorGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "serverName": "sqlcrudtest-4645", + "encryptionProtectorName": "current", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/encryptionProtector/current", + "name": "current", + "type": "Microsoft.Sql/servers/encryptionProtector", + "location": "Japan East", + "kind": "azurekeyvault", + "properties": { + "serverKeyName": "someVault_someKey_01234567890123456789012345678901", + "serverKeyType": "AzureKeyVault", + "uri": "https://someVault.vault.azure.net/keys/someKey/01234567890123456789012345678901", + "autoRotationEnabled": false + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/EncryptionProtectorList.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/EncryptionProtectorList.json new file mode 100644 index 000000000000..361e43820188 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/EncryptionProtectorList.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "serverName": "sqlcrudtest-4645", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/encryptionProtector/current", + "name": "current", + "type": "Microsoft.Sql/servers/encryptionProtector", + "location": "Japan East", + "kind": "azurekeyvault", + "properties": { + "serverKeyName": "someVault_someKey_01234567890123456789012345678901", + "serverKeyType": "AzureKeyVault", + "uri": "https://someVault.vault.azure.net/keys/someKey/01234567890123456789012345678901" + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/EncryptionProtectorRevalidate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/EncryptionProtectorRevalidate.json new file mode 100644 index 000000000000..e3bd6cd4305c --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/EncryptionProtectorRevalidate.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "serverName": "sqlcrudtest-4645", + "encryptionProtectorName": "current", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ExportDatabase.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ExportDatabase.json new file mode 100644 index 000000000000..9267aadee25c --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ExportDatabase.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdb", + "api-version": "2021-02-01-preview", + "parameters": { + "storageKeyType": "StorageAccessKey", + "storageKey": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx==", + "storageUri": "https://test.blob.core.windows.net/test.bacpac", + "administratorLogin": "login", + "administratorLoginPassword": "password", + "authenticationType": "Sql" + } + }, + "responses": { + "200": { + "body": { + "properties": { + "requestId": "9d9a794a-5cec-4f23-af70-d29511b522a4", + "requestType": "Export", + "queuedTime": "2/2/2020 8:33:27 PM", + "lastModifiedTime": "2/2/2020 8:34:47 PM", + "blobUri": "https://test.blob.core.windows.net/test.bacpac", + "serverName": "testsvr.database.windows.net", + "databaseName": "testdb", + "status": "Completed" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb/importExportOperationResults/9d9a794a-5cec-4f23-af70-d29511b522a4", + "name": "9d9a794a-5cec-4f23-af70-d29511b522a4", + "type": "Microsoft.Sql/servers/databases/importExportOperationResults" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ExportDatabaseWithNetworkIsolation.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ExportDatabaseWithNetworkIsolation.json new file mode 100644 index 000000000000..35165c40aa93 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ExportDatabaseWithNetworkIsolation.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdb", + "api-version": "2021-02-01-preview", + "parameters": { + "storageKeyType": "StorageAccessKey", + "storageKey": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx==", + "storageUri": "https://test.blob.core.windows.net/test.bacpac", + "administratorLogin": "login", + "administratorLoginPassword": "password", + "authenticationType": "Sql", + "networkIsolation": { + "sqlServerResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr", + "storageAccountResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Storage/storageAccounts/test-privatelink" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "requestId": "9d9a794a-5cec-4f23-af70-d29511b522a4", + "requestType": "Export", + "queuedTime": "2/2/2020 8:33:27 PM", + "lastModifiedTime": "2/2/2020 8:34:47 PM", + "blobUri": "https://test.blob.core.windows.net/test.bacpac", + "serverName": "testsvr.database.windows.net", + "databaseName": "testdb", + "status": "Completed" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb/importExportOperationResults/9d9a794a-5cec-4f23-af70-d29511b522a4", + "name": "9d9a794a-5cec-4f23-af70-d29511b522a4", + "type": "Microsoft.Sql/servers/databases/importExportOperationResults" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ExtendedDatabaseAzureMonitorAuditingCreateMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ExtendedDatabaseAzureMonitorAuditingCreateMin.json new file mode 100644 index 000000000000..01ba2a51e052 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ExtendedDatabaseAzureMonitorAuditingCreateMin.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "blobauditingtest-4799", + "serverName": "blobauditingtest-6440", + "databaseName": "testdb", + "blobAuditingPolicyName": "default", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "state": "Enabled", + "isAzureMonitorTargetEnabled": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Sql/servers/blobauditingtest-6440/databases/testdb", + "name": "default", + "type": "Microsoft.Sql/servers/databases/extendedAuditingSettings", + "properties": { + "state": "Enabled", + "isAzureMonitorTargetEnabled": true, + "retentionDays": 0, + "storageAccountSubscriptionId": "00000000-0000-0000-0000-000000000000", + "auditActionsAndGroups": [ + "SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP", + "FAILED_DATABASE_AUTHENTICATION_GROUP", + "BATCH_COMPLETED_GROUP" + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Sql/servers/blobauditingtest-6440/databases/testdb", + "name": "default", + "type": "Microsoft.Sql/servers/databases/extendedAuditingSettings", + "properties": { + "state": "Enabled", + "isAzureMonitorTargetEnabled": true, + "retentionDays": 0, + "storageAccountSubscriptionId": "00000000-0000-0000-0000-000000000000", + "auditActionsAndGroups": [ + "SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP", + "FAILED_DATABASE_AUTHENTICATION_GROUP", + "BATCH_COMPLETED_GROUP" + ] + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ExtendedDatabaseBlobAuditingCreateMax.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ExtendedDatabaseBlobAuditingCreateMax.json new file mode 100644 index 000000000000..7b6e81beee43 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ExtendedDatabaseBlobAuditingCreateMax.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "blobauditingtest-4799", + "serverName": "blobauditingtest-6440", + "databaseName": "testdb", + "blobAuditingPolicyName": "default", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "state": "Enabled", + "storageAccountAccessKey": "sdlfkjabc+sdlfkjsdlkfsjdfLDKFTERLKFDFKLjsdfksjdflsdkfD2342309432849328476458/3RSD==", + "storageEndpoint": "https://mystorage.blob.core.windows.net", + "retentionDays": 6, + "storageAccountSubscriptionId": "00000000-1234-0000-5678-000000000000", + "isStorageSecondaryKeyInUse": false, + "queueDelayMs": 4000, + "auditActionsAndGroups": [ + "DATABASE_LOGOUT_GROUP", + "DATABASE_ROLE_MEMBER_CHANGE_GROUP", + "UPDATE on database::TestDatabaseName by public" + ], + "predicateExpression": "statement = 'select 1'", + "isAzureMonitorTargetEnabled": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Sql/servers/blobauditingtest-6440/databases/testdb", + "name": "default", + "type": "Microsoft.Sql/servers/databases/extendedAuditingSettings", + "properties": { + "state": "Enabled", + "storageEndpoint": "https://mystorage.blob.core.windows.net", + "retentionDays": 0, + "storageAccountSubscriptionId": "00000000-1234-0000-5678-000000000000", + "isStorageSecondaryKeyInUse": false, + "queueDelayMs": 4000, + "auditActionsAndGroups": [ + "DATABASE_LOGOUT_GROUP", + "DATABASE_ROLE_MEMBER_CHANGE_GROUP", + "UPDATE on database::TestDatabaseName by public" + ], + "predicateExpression": "statement = 'select 1'", + "isAzureMonitorTargetEnabled": true + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Sql/servers/blobauditingtest-6440/databases/testdb", + "name": "default", + "type": "Microsoft.Sql/servers/databases/extendedAuditingSettings", + "properties": { + "state": "Enabled", + "storageEndpoint": "https://mystorage.blob.core.windows.net", + "retentionDays": 0, + "storageAccountSubscriptionId": "00000000-1234-0000-5678-000000000000", + "isStorageSecondaryKeyInUse": false, + "queueDelayMs": 4000, + "auditActionsAndGroups": [ + "DATABASE_LOGOUT_GROUP", + "DATABASE_ROLE_MEMBER_CHANGE_GROUP", + "UPDATE on database::TestDatabaseName by public" + ], + "predicateExpression": "statement = 'select 1'", + "isAzureMonitorTargetEnabled": true + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ExtendedDatabaseBlobAuditingCreateMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ExtendedDatabaseBlobAuditingCreateMin.json new file mode 100644 index 000000000000..577596c943dc --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ExtendedDatabaseBlobAuditingCreateMin.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "blobauditingtest-4799", + "serverName": "blobauditingtest-6440", + "databaseName": "testdb", + "blobAuditingPolicyName": "default", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "state": "Enabled", + "storageAccountAccessKey": "sdlfkjabc+sdlfkjsdlkfsjdfLDKFTERLKFDFKLjsdfksjdflsdkfD2342309432849328476458/3RSD==", + "storageEndpoint": "https://mystorage.blob.core.windows.net" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Sql/servers/blobauditingtest-6440/databases/testdb", + "name": "default", + "type": "Microsoft.Sql/servers/databases/extendedAuditingSettings", + "properties": { + "state": "Enabled", + "storageEndpoint": "https://mystorage.blob.core.windows.net", + "retentionDays": 0, + "storageAccountSubscriptionId": "00000000-0000-0000-0000-000000000000", + "isStorageSecondaryKeyInUse": false, + "auditActionsAndGroups": [ + "SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP", + "FAILED_DATABASE_AUTHENTICATION_GROUP", + "BATCH_COMPLETED_GROUP" + ], + "isAzureMonitorTargetEnabled": false + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Sql/servers/blobauditingtest-6440/databases/testdb", + "name": "default", + "type": "Microsoft.Sql/servers/databases/extendedAuditingSettings", + "properties": { + "state": "Enabled", + "storageEndpoint": "https://mystorage.blob.core.windows.net", + "retentionDays": 0, + "storageAccountSubscriptionId": "00000000-0000-0000-0000-000000000000", + "isStorageSecondaryKeyInUse": false, + "auditActionsAndGroups": [ + "SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP", + "FAILED_DATABASE_AUTHENTICATION_GROUP", + "BATCH_COMPLETED_GROUP" + ], + "isAzureMonitorTargetEnabled": false + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ExtendedDatabaseBlobAuditingGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ExtendedDatabaseBlobAuditingGet.json new file mode 100644 index 000000000000..5cd2b10a62ff --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ExtendedDatabaseBlobAuditingGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "blobauditingtest-6852", + "serverName": "blobauditingtest-2080", + "databaseName": "testdb", + "blobAuditingPolicyName": "default", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-6852/providers/Microsoft.Sql/servers/blobauditingtest-2080/databases/testdb", + "name": "default", + "type": "Microsoft.Sql/servers/databases/extendedAuditingSettings", + "properties": { + "state": "Disabled", + "storageEndpoint": "", + "retentionDays": 0, + "auditActionsAndGroups": [], + "storageAccountSubscriptionId": "00000000-0000-0000-0000-000000000000", + "isStorageSecondaryKeyInUse": false, + "predicateExpression": "statement = 'select 1'", + "isAzureMonitorTargetEnabled": false + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ExtendedServerBlobAuditingCreateMax.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ExtendedServerBlobAuditingCreateMax.json new file mode 100644 index 000000000000..6183288bef63 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ExtendedServerBlobAuditingCreateMax.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "blobauditingtest-4799", + "serverName": "blobauditingtest-6440", + "blobAuditingPolicyName": "default", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "state": "Enabled", + "storageAccountAccessKey": "sdlfkjabc+sdlfkjsdlkfsjdfLDKFTERLKFDFKLjsdfksjdflsdkfD2342309432849328476458/3RSD==", + "storageEndpoint": "https://mystorage.blob.core.windows.net", + "retentionDays": 6, + "storageAccountSubscriptionId": "00000000-1234-0000-5678-000000000000", + "isStorageSecondaryKeyInUse": false, + "queueDelayMs": 4000, + "auditActionsAndGroups": [ + "SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP", + "FAILED_DATABASE_AUTHENTICATION_GROUP", + "BATCH_COMPLETED_GROUP" + ], + "predicateExpression": "object_name = 'SensitiveData'", + "isAzureMonitorTargetEnabled": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Sql/servers/blobauditingtest-6440/extendedAuditingSettings/default", + "name": "default", + "type": "Microsoft.Sql/servers/extendedAuditingSettings", + "properties": { + "state": "Enabled", + "storageEndpoint": "https://mystorage.blob.core.windows.net", + "retentionDays": 6, + "storageAccountSubscriptionId": "00000000-1234-0000-5678-000000000000", + "isStorageSecondaryKeyInUse": false, + "queueDelayMs": 4000, + "auditActionsAndGroups": [ + "SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP", + "FAILED_DATABASE_AUTHENTICATION_GROUP", + "BATCH_COMPLETED_GROUP" + ], + "predicateExpression": "object_name = 'SensitiveData'", + "isAzureMonitorTargetEnabled": true + } + } + }, + "202": { + "startTime": "2017-11-22T09:34:54.72Z", + "operation": "UpsertServerEngineAuditingPolicy" + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ExtendedServerBlobAuditingCreateMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ExtendedServerBlobAuditingCreateMin.json new file mode 100644 index 000000000000..eb33dd069c99 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ExtendedServerBlobAuditingCreateMin.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "blobauditingtest-4799", + "serverName": "blobauditingtest-6440", + "blobAuditingPolicyName": "default", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "state": "Enabled", + "storageAccountAccessKey": "sdlfkjabc+sdlfkjsdlkfsjdfLDKFTERLKFDFKLjsdfksjdflsdkfD2342309432849328476458/3RSD==", + "storageEndpoint": "https://mystorage.blob.core.windows.net" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Sql/servers/blobauditingtest-6440/extendedAuditingSettings/default", + "name": "default", + "type": "Microsoft.Sql/servers/extendedAuditingSettings", + "properties": { + "state": "Enabled", + "storageEndpoint": "https://mystorage.blob.core.windows.net", + "retentionDays": 6, + "storageAccountSubscriptionId": "00000000-1234-0000-5678-000000000000", + "isStorageSecondaryKeyInUse": false, + "auditActionsAndGroups": [ + "SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP", + "FAILED_DATABASE_AUTHENTICATION_GROUP", + "BATCH_COMPLETED_GROUP" + ], + "isAzureMonitorTargetEnabled": false + } + } + }, + "202": { + "startTime": "2017-11-22T09:34:54.72Z", + "operation": "UpsertServerEngineAuditingPolicy" + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ExtendedServerBlobAuditingGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ExtendedServerBlobAuditingGet.json new file mode 100644 index 000000000000..b5501752c2f5 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ExtendedServerBlobAuditingGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "blobauditingtest-4799", + "serverName": "blobauditingtest-6440", + "blobAuditingPolicyName": "default", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-6852/providers/Microsoft.Sql/servers/blobauditingtest-2080/extendedAuditingSettings/default", + "name": "default", + "type": "Microsoft.Sql/servers/extendedAuditingSettings", + "properties": { + "state": "Disabled", + "storageEndpoint": "", + "retentionDays": 0, + "auditActionsAndGroups": [], + "storageAccountSubscriptionId": "00000000-0000-0000-0000-000000000000", + "isStorageSecondaryKeyInUse": false, + "predicateExpression": "object_name = 'SensitiveData'", + "isAzureMonitorTargetEnabled": false + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/FailoverDatabase.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/FailoverDatabase.json new file mode 100644 index 000000000000..ea730748fbe2 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/FailoverDatabase.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "group1", + "serverName": "testServer", + "databaseName": "testDatabase", + "replicaType": "Primary", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/FailoverElasticPool.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/FailoverElasticPool.json new file mode 100644 index 000000000000..14cdc2aa4011 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/FailoverElasticPool.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "group1", + "serverName": "testServer", + "elasticPoolName": "testElasticPool", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/FailoverGroupCreateOrUpdate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/FailoverGroupCreateOrUpdate.json new file mode 100644 index 000000000000..af7d7c6618fd --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/FailoverGroupCreateOrUpdate.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "failover-group-primary-server", + "failoverGroupName": "failover-group-test-3", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "readWriteEndpoint": { + "failoverPolicy": "Automatic", + "failoverWithDataLossGracePeriodMinutes": 480 + }, + "readOnlyEndpoint": { + "failoverPolicy": "Disabled" + }, + "partnerServers": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-secondary-server" + } + ], + "databases": [ + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-primary-server/databases/testdb-1", + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-primary-server/databases/testdb-2" + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-primary-server/failoverGroups/failover-group-test-3", + "name": "failover-group-test-3", + "type": "Microsoft.Sql/servers/failoverGroups", + "location": "Japan East", + "properties": { + "readWriteEndpoint": { + "failoverPolicy": "Automatic", + "failoverWithDataLossGracePeriodMinutes": 480 + }, + "readOnlyEndpoint": { + "failoverPolicy": "Disabled" + }, + "replicationRole": "Primary", + "replicationState": "CATCH_UP", + "partnerServers": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-secondary-server", + "location": "Japan West", + "replicationRole": "Secondary" + } + ], + "databases": [ + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-primary-server/databases/testdb-1", + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-primary-server/databases/testdb-2" + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-primary-server/failoverGroups/failover-group-test-3", + "name": "failover-group-test-3", + "type": "Microsoft.Sql/servers/failoverGroups", + "location": "Japan East", + "properties": { + "readWriteEndpoint": { + "failoverPolicy": "Automatic", + "failoverWithDataLossGracePeriodMinutes": 480 + }, + "readOnlyEndpoint": { + "failoverPolicy": "Disabled" + }, + "replicationRole": "Primary", + "replicationState": "CATCH_UP", + "partnerServers": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-secondary-server", + "location": "Japan West", + "replicationRole": "Secondary" + } + ], + "databases": [ + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-primary-server/databases/testdb-1", + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-primary-server/databases/testdb-2" + ] + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/FailoverGroupDelete.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/FailoverGroupDelete.json new file mode 100644 index 000000000000..90819030d5df --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/FailoverGroupDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "failover-group-primary-server", + "failoverGroupName": "failover-group-test-1", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/FailoverGroupFailover.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/FailoverGroupFailover.json new file mode 100644 index 000000000000..c38951952ab3 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/FailoverGroupFailover.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "failover-group-secondary-server", + "failoverGroupName": "failover-group-test-3", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-secondary-server/failoverGroups/failover-group-test-3", + "name": "failover-group-test-3", + "type": "Microsoft.Sql/servers/failoverGroups", + "location": "Japan West", + "properties": { + "readWriteEndpoint": { + "failoverPolicy": "Automatic", + "failoverWithDataLossGracePeriodMinutes": 120 + }, + "readOnlyEndpoint": { + "failoverPolicy": "Disabled" + }, + "replicationRole": "Primary", + "replicationState": "CATCH_UP", + "partnerServers": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-primary-server", + "location": "Japan East", + "replicationRole": "Secondary" + } + ], + "databases": [ + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-secondary-server/databases/testdb-1", + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-secondary-server/databases/testdb-2" + ] + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/FailoverGroupForceFailoverAllowDataLoss.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/FailoverGroupForceFailoverAllowDataLoss.json new file mode 100644 index 000000000000..c38951952ab3 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/FailoverGroupForceFailoverAllowDataLoss.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "failover-group-secondary-server", + "failoverGroupName": "failover-group-test-3", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-secondary-server/failoverGroups/failover-group-test-3", + "name": "failover-group-test-3", + "type": "Microsoft.Sql/servers/failoverGroups", + "location": "Japan West", + "properties": { + "readWriteEndpoint": { + "failoverPolicy": "Automatic", + "failoverWithDataLossGracePeriodMinutes": 120 + }, + "readOnlyEndpoint": { + "failoverPolicy": "Disabled" + }, + "replicationRole": "Primary", + "replicationState": "CATCH_UP", + "partnerServers": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-primary-server", + "location": "Japan East", + "replicationRole": "Secondary" + } + ], + "databases": [ + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-secondary-server/databases/testdb-1", + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-secondary-server/databases/testdb-2" + ] + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/FailoverGroupGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/FailoverGroupGet.json new file mode 100644 index 000000000000..1a583ddc9000 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/FailoverGroupGet.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "failover-group-primary-server", + "failoverGroupName": "failover-group-test", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-primary-server/failoverGroups/failover-group-test", + "name": "failover-group-test", + "type": "Microsoft.Sql/servers/failoverGroups", + "location": "Japan East", + "properties": { + "readWriteEndpoint": { + "failoverPolicy": "Automatic", + "failoverWithDataLossGracePeriodMinutes": 480 + }, + "readOnlyEndpoint": { + "failoverPolicy": "Disabled" + }, + "replicationRole": "Primary", + "replicationState": "CATCH_UP", + "partnerServers": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-secondary-server", + "location": "Japan West", + "replicationRole": "Secondary" + } + ], + "databases": [] + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/FailoverGroupList.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/FailoverGroupList.json new file mode 100644 index 000000000000..967c18b9c95c --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/FailoverGroupList.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "failover-group-primary-server", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-primary-server/failoverGroups/failover-group-test", + "name": "failover-group-test", + "type": "Microsoft.Sql/servers/failoverGroups", + "location": "Japan East", + "properties": { + "readWriteEndpoint": { + "failoverPolicy": "Automatic", + "failoverWithDataLossGracePeriodMinutes": 480 + }, + "readOnlyEndpoint": { + "failoverPolicy": "Disabled" + }, + "replicationRole": "Primary", + "replicationState": "CATCH_UP", + "partnerServers": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-secondary-server", + "location": "Japan West", + "replicationRole": "Secondary" + } + ], + "databases": [] + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-primary-server/failoverGroups/failover-group-test-2", + "name": "failover-group-test-2", + "type": "Microsoft.Sql/servers/failoverGroups", + "location": "Japan East", + "properties": { + "readWriteEndpoint": { + "failoverPolicy": "Automatic", + "failoverWithDataLossGracePeriodMinutes": 480 + }, + "readOnlyEndpoint": { + "failoverPolicy": "Disabled" + }, + "replicationRole": "Primary", + "replicationState": "CATCH_UP", + "partnerServers": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-secondary-server", + "location": "Japan West", + "replicationRole": "Secondary" + } + ], + "databases": [] + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/FailoverGroupUpdate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/FailoverGroupUpdate.json new file mode 100644 index 000000000000..a2331f4f2338 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/FailoverGroupUpdate.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "failover-group-primary-server", + "failoverGroupName": "failover-group-test-1", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "readWriteEndpoint": { + "failoverPolicy": "Automatic", + "failoverWithDataLossGracePeriodMinutes": 120 + }, + "databases": [ + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-primary-server/databases/testdb-1" + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-primary-server/failoverGroups/failover-group-test-3", + "name": "failover-group-test-3", + "type": "Microsoft.Sql/servers/failoverGroups", + "location": "Japan East", + "properties": { + "readWriteEndpoint": { + "failoverPolicy": "Automatic", + "failoverWithDataLossGracePeriodMinutes": 120 + }, + "readOnlyEndpoint": { + "failoverPolicy": "Disabled" + }, + "replicationRole": "Primary", + "replicationState": "CATCH_UP", + "partnerServers": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-secondary-server", + "location": "Japan West", + "replicationRole": "Secondary" + } + ], + "databases": [ + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-primary-server/databases/testdb-1" + ] + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/FailoverManagedInstance.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/FailoverManagedInstance.json new file mode 100644 index 000000000000..d490392542ba --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/FailoverManagedInstance.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "group1", + "managedInstanceName": "instanceName", + "replicaType": "Primary", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/FirewallRuleCreate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/FirewallRuleCreate.json new file mode 100644 index 000000000000..2c73797bef3f --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/FirewallRuleCreate.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "firewallrulecrudtest-12", + "serverName": "firewallrulecrudtest-6285", + "firewallRuleName": "firewallrulecrudtest-5370", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "startIpAddress": "0.0.0.3", + "endIpAddress": "0.0.0.3" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/firewallrulecrudtest-12/providers/Microsoft.Sql/servers/firewallrulecrudtest-6285/firewallRules/firewallrulecrudtest-5370", + "name": "firewallrulecrudtest-5370", + "type": "Microsoft.Sql/servers/firewallRules", + "properties": { + "startIpAddress": "0.0.0.3", + "endIpAddress": "0.0.0.3" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/firewallrulecrudtest-12/providers/Microsoft.Sql/servers/firewallrulecrudtest-6285/firewallRules/firewallrulecrudtest-5370", + "name": "firewallrulecrudtest-5370", + "properties": { + "startIpAddress": "0.0.0.3", + "endIpAddress": "0.0.0.3" + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/FirewallRuleDelete.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/FirewallRuleDelete.json new file mode 100644 index 000000000000..6ca54e4ea143 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/FirewallRuleDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "firewallrulecrudtest-9886", + "serverName": "firewallrulecrudtest-2368", + "firewallRuleName": "firewallrulecrudtest-7011", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/FirewallRuleGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/FirewallRuleGet.json new file mode 100644 index 000000000000..0859db112f7c --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/FirewallRuleGet.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "firewallrulecrudtest-12", + "serverName": "firewallrulecrudtest-6285", + "firewallRuleName": "firewallrulecrudtest-2304", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/firewallrulecrudtest-12/providers/Microsoft.Sql/servers/firewallrulecrudtest-6285/firewallRules/firewallrulecrudtest-2304", + "name": "firewallrulecrudtest-2304", + "type": "Microsoft.Sql/servers/firewallRules", + "properties": { + "startIpAddress": "0.0.0.0", + "endIpAddress": "0.0.0.0" + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/FirewallRuleList.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/FirewallRuleList.json new file mode 100644 index 000000000000..60d52621f2eb --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/FirewallRuleList.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "firewallrulecrudtest-12", + "serverName": "firewallrulecrudtest-6285", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/firewallrulecrudtest-12/providers/Microsoft.Sql/servers/firewallrulecrudtest-6285/firewallRules/firewallrulecrudtest-2304", + "name": "firewallrulecrudtest-2304", + "type": "Microsoft.Sql/servers/firewallRules", + "properties": { + "startIpAddress": "0.0.0.0", + "endIpAddress": "0.0.0.0" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/firewallrulecrudtest-12/providers/Microsoft.Sql/servers/firewallrulecrudtest-6285/firewallRules/firewallrulecrudtest-3927", + "name": "firewallrulecrudtest-3927", + "type": "Microsoft.Sql/servers/firewallRules", + "properties": { + "startIpAddress": "0.0.0.1", + "endIpAddress": "0.0.0.1" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/firewallrulecrudtest-12/providers/Microsoft.Sql/servers/firewallrulecrudtest-6285/firewallRules/firewallrulecrudtest-5370", + "name": "firewallrulecrudtest-5370", + "type": "Microsoft.Sql/servers/firewallRules", + "properties": { + "startIpAddress": "0.0.0.3", + "endIpAddress": "0.0.0.3" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/firewallrulecrudtest-12/providers/Microsoft.Sql/servers/firewallrulecrudtest-6285/firewallRules/firewallrulecrudtest-5767", + "name": "firewallrulecrudtest-5767", + "type": "Microsoft.Sql/servers/firewallRules", + "properties": { + "startIpAddress": "0.0.0.2", + "endIpAddress": "0.0.0.2" + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/FirewallRuleReplace.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/FirewallRuleReplace.json new file mode 100644 index 000000000000..de46c55ee165 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/FirewallRuleReplace.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "firewallrulecrudtest-12", + "serverName": "firewallrulecrudtest-6285", + "api-version": "2021-02-01-preview", + "parameters": { + "values": [ + { + "name": "firewallrulecrudtest-5370 ", + "properties": { + "startIpAddress": "0.0.0.0", + "endIpAddress": "100.0.0.0" + } + } + ] + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/firewallrulecrudtest-12/providers/Microsoft.Sql/servers/firewallrulecrudtest-6285/firewallRules/firewallrulecrudtest-5370", + "name": "firewallrulecrudtest-5370", + "type": "Microsoft.Sql/servers/firewallRules", + "properties": { + "startIpAddress": "0.0.0.3", + "endIpAddress": "0.0.0.3" + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/FirewallRuleUpdate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/FirewallRuleUpdate.json new file mode 100644 index 000000000000..8e79f37f9693 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/FirewallRuleUpdate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "firewallrulecrudtest-12", + "serverName": "firewallrulecrudtest-6285", + "firewallRuleName": "firewallrulecrudtest-3927", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "startIpAddress": "0.0.0.1", + "endIpAddress": "0.0.0.1" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/firewallrulecrudtest-12/providers/Microsoft.Sql/servers/firewallrulecrudtest-6285/firewallRules/firewallrulecrudtest-3927", + "name": "firewallrulecrudtest-3927", + "type": "Microsoft.Sql/servers/firewallRules", + "properties": { + "startIpAddress": "0.0.0.1", + "endIpAddress": "0.0.0.1" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/firewallrulecrudtest-12/providers/Microsoft.Sql/servers/firewallrulecrudtest-6285/firewallRules/firewallrulecrudtest-3927", + "name": "firewallrulecrudtest-3927", + "type": "Microsoft.Sql/servers/firewallRules", + "properties": { + "startIpAddress": "0.0.0.1", + "endIpAddress": "0.0.0.1" + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetDataWarehouseUserActivities.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetDataWarehouseUserActivities.json new file mode 100644 index 000000000000..efbcfaa29dcc --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetDataWarehouseUserActivities.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdb", + "dataWarehouseUserActivityName": "current", + "api-version": "2021-02-01-preview" + }, + "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/2021-02-01-preview/examples/GetDatabaseExtensions.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetDatabaseExtensions.json new file mode 100644 index 000000000000..348bd3b10ccd --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetDatabaseExtensions.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "a3473687-7581-41e1-ac24-6bcca5843f07", + "resourceGroupName": "rg_a1f9d6f8-30d5-4228-9504-8a364361bca3", + "serverName": "srv_65858e0f-b1d1-4bdc-8351-a7da86ca4939", + "databaseName": "11aa6c5e-58ed-4693-b303-3b8e3131deaa", + "extensionName": "polybaseimport", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetDatabaseUsages.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetDatabaseUsages.json new file mode 100644 index 000000000000..883389656779 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetDatabaseUsages.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdb", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "displayName": "Database Size", + "currentValue": 4194304.0, + "limit": 268435456000.0, + "unit": "Bytes" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb/usages/database_size", + "name": "database_size", + "type": "Microsoft.Sql/servers/databases/usages" + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetInstancePool.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetInstancePool.json new file mode 100644 index 000000000000..0fe0467c09b1 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetInstancePool.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "group1", + "instancePoolName": "testIP", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "GP_Gen5", + "tier": "GeneralPurpose", + "family": "Gen5" + }, + "properties": { + "subnetId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Network/virtualNetwork/myvnet/subnets/mysubnet1", + "vCores": 8, + "licenseType": "LicenseIncluded" + }, + "location": "japaneast", + "tags": { + "a": "b" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/instancePools/testIP", + "name": "testIP", + "type": "Microsoft.Sql/instancePools" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetJob.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetJob.json new file mode 100644 index 000000000000..8114ac744aff --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetJob.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "group1", + "serverName": "server1", + "jobAgentName": "agent1", + "jobName": "job1", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/jobs/job1", + "name": "job1", + "type": "Microsoft.Sql/servers/jobAccounts/jobs", + "properties": { + "description": "my favourite job", + "version": 0, + "schedule": { + "startTime": "2015-09-24T18:30:01Z", + "endTime": "2015-09-24T23:59:59Z", + "type": "Once", + "enabled": true + } + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetJobAgent.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetJobAgent.json new file mode 100644 index 000000000000..010f70be2c8f --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetJobAgent.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "group1", + "serverName": "server1", + "jobAgentName": "agent1", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1", + "name": "agent1", + "type": "Microsoft.Sql/servers/jobAgents", + "location": "southeastasia", + "sku": { + "name": "Agent", + "capacity": 400 + }, + "properties": { + "databaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/databases/db1" + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetJobCredential.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetJobCredential.json new file mode 100644 index 000000000000..9d1ed0acdeda --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetJobCredential.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "group1", + "serverName": "server1", + "jobAgentName": "agent1", + "credentialName": "cred1", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/credentials/cred1", + "name": "cred1", + "type": "Microsoft.Sql/servers/jobAccounts/credentials", + "properties": { + "username": "myuser" + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetJobExecution.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetJobExecution.json new file mode 100644 index 000000000000..a3f18be358d3 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetJobExecution.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "group1", + "serverName": "server1", + "jobAgentName": "agent1", + "jobName": "job1", + "jobExecutionId": "5555-6666-7777-8888-999999999999", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "jobVersion": 1, + "jobExecutionId": "5555-6666-7777-8888-999999999999", + "lifecycle": "Created", + "provisioningState": "Created", + "createTime": "2017-12-21T19:02:00.8707045Z", + "startTime": "2017-12-21T19:12:00.8707045Z", + "endTime": "2017-12-21T19:22:00.8707045Z", + "currentAttempts": 0, + "currentAttemptStartTime": "2017-11-13T19:12:00.8707045Z", + "lastMessage": "Job execution created." + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/jobs/job1/executions/5555-6666-7777-8888-999999999999", + "name": "5555-6666-7777-8888-999999999999", + "type": "Microsoft.Sql/servers/jobAgents/executions" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetJobExecutionStep.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetJobExecutionStep.json new file mode 100644 index 000000000000..fae004276d78 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetJobExecutionStep.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "group1", + "serverName": "server1", + "jobAgentName": "agent1", + "jobName": "job1", + "jobExecutionId": "5555-6666-7777-8888-999999999999", + "stepName": "step1", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "jobVersion": 1, + "stepName": "step1", + "stepId": 1, + "jobExecutionId": "5555-6666-7777-8888-999999999999", + "lifecycle": "Succeeded", + "provisioningState": "Succeeded", + "createTime": "2017-12-27T04:33:15.7189151Z", + "startTime": "2017-12-27T04:33:16.176937Z", + "endTime": "2017-12-27T04:33:19.0600862Z", + "currentAttempts": 1, + "currentAttemptStartTime": "2017-12-27T04:33:17.4840068Z", + "lastMessage": "Step 1 succeeded." + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/jobs/job1/executions/5555-6666-7777-8888-999999999999/steps/step1", + "name": "step1", + "type": "Microsoft.Sql/servers/jobAgents/jobs/executions/steps" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetJobExecutionTarget.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetJobExecutionTarget.json new file mode 100644 index 000000000000..8a563f33226f --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetJobExecutionTarget.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "group1", + "serverName": "server1", + "jobAgentName": "agent1", + "jobName": "job1", + "jobExecutionId": "5555-6666-7777-8888-999999999999", + "stepName": "step1", + "targetId": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "jobVersion": 1, + "stepName": "step1", + "stepId": 1, + "jobExecutionId": "5555-6666-7777-8888-999999999999", + "lifecycle": "Succeeded", + "provisioningState": "Succeeded", + "createTime": "2017-11-05T04:33:17.5133333Z", + "startTime": "2017-11-05T04:33:18.1230403Z", + "endTime": "2017-11-05T04:33:18.7031029Z", + "currentAttempts": 1, + "currentAttemptStartTime": "2017-11-05T04:33:18.2391013Z", + "lastMessage": "Step 1 succeeded execution on target (server 'server1', database 'database1').", + "target": { + "type": "SqlDatabase", + "serverName": "server1", + "databaseName": "database1" + } + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/jobs/job1/executions/5555-6666-7777-8888-999999999999/steps/step1/targets/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "name": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "type": "Microsoft.Sql/servers/jobAgents/jobs/executions/steps/targets" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetJobStepByJob.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetJobStepByJob.json new file mode 100644 index 000000000000..2e8a1422b4bf --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetJobStepByJob.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "group1", + "serverName": "server1", + "jobAgentName": "agent1", + "jobName": "job1", + "stepName": "step1", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "stepId": 1, + "targetGroup": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/targetGroups/targetGroup1", + "credential": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/credentials/cred1", + "action": { + "type": "TSql", + "source": "Inline", + "value": "select 2" + }, + "output": { + "type": "SqlDatabase", + "subscriptionId": "3501b905-a848-4b5d-96e8-b253f62d735a", + "resourceGroupName": "group3", + "serverName": "server3", + "databaseName": "database3", + "schemaName": "myschema1234", + "tableName": "mytable5678", + "credential": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/credentials/cred0" + }, + "executionOptions": { + "timeoutSeconds": 1234, + "retryAttempts": 42, + "initialRetryIntervalSeconds": 11, + "maximumRetryIntervalSeconds": 222, + "retryIntervalBackoffMultiplier": 3.0 + } + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/jobs/job1/steps/step1", + "name": "step1", + "type": "Microsoft.Sql/servers/jobAgents/jobs/steps" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetJobStepByVersion.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetJobStepByVersion.json new file mode 100644 index 000000000000..8326106ca67d --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetJobStepByVersion.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "group1", + "serverName": "server1", + "jobAgentName": "agent1", + "jobName": "job1", + "jobVersion": "1", + "stepName": "step1", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "stepId": 1, + "targetGroup": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/targetGroups/targetGroup1", + "credential": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/credentials/cred1", + "action": { + "type": "TSql", + "source": "Inline", + "value": "select 2" + }, + "output": { + "type": "SqlDatabase", + "subscriptionId": "3501b905-a848-4b5d-96e8-b253f62d735a", + "resourceGroupName": "group3", + "serverName": "server3", + "databaseName": "database3", + "schemaName": "myschema1234", + "tableName": "mytable5678", + "credential": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/credentials/cred0" + }, + "executionOptions": { + "timeoutSeconds": 1234, + "retryAttempts": 42, + "initialRetryIntervalSeconds": 11, + "maximumRetryIntervalSeconds": 222, + "retryIntervalBackoffMultiplier": 3.0 + } + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/jobs/job1/versions/1/steps/step1", + "name": "step1", + "type": "Microsoft.Sql/servers/jobAgents/jobs/versions/steps" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetJobTargetGroup.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetJobTargetGroup.json new file mode 100644 index 000000000000..6f145b0fbd25 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetJobTargetGroup.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "group1", + "serverName": "server1", + "jobAgentName": "agent1", + "targetGroupName": "targetGroup1", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "members": [ + { + "membershipType": "Exclude", + "type": "SqlDatabase", + "serverName": "server1", + "databaseName": "database1" + }, + { + "membershipType": "Include", + "type": "SqlServer", + "serverName": "server1", + "refreshCredential": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/credentials/testCredential" + }, + { + "membershipType": "Include", + "type": "SqlElasticPool", + "serverName": "server2", + "elasticPoolName": "pool1", + "refreshCredential": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/credentials/testCredential" + }, + { + "membershipType": "Include", + "type": "SqlShardMap", + "serverName": "server3", + "shardMapName": "shardMap1", + "refreshCredential": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/credentials/testCredential" + } + ] + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/targetGroups/targetGroup1", + "name": "targetGroup1", + "type": "Microsoft.Sql/servers/jobAgents/targetGroups" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetJobVersion.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetJobVersion.json new file mode 100644 index 000000000000..091bcf8749b8 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetJobVersion.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "group1", + "serverName": "server1", + "jobAgentName": "agent1", + "jobName": "job1", + "jobVersion": "1", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/jobs/job1/versions/1", + "name": "1", + "type": "Microsoft.Sql/servers/jobAgents/jobs/versions" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetListManagedShortTermRetentionPolicy.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetListManagedShortTermRetentionPolicy.json new file mode 100644 index 000000000000..1592542e2e2d --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetListManagedShortTermRetentionPolicy.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "managedInstanceName": "testsvr", + "databaseName": "testdb", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/managedInstances/testsvr/databases/testdb,131403269876900000/backupShortTermRetentionPolicies/default", + "name": "default", + "type": "Microsoft.Sql/managedInstances/restorableDroppedDatabases/backupShortTermRetentionPolicies", + "properties": { + "retentionDays": 14 + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetListManagedShortTermRetentionPolicyRestorableDropped.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetListManagedShortTermRetentionPolicyRestorableDropped.json new file mode 100644 index 000000000000..512acf0ca1a1 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetListManagedShortTermRetentionPolicyRestorableDropped.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "managedInstanceName": "testsvr", + "restorableDroppedDatabaseId": "testdb,131403269876900000", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/managedInstances/testsvr/restorableDroppedDatabases/testdb,131403269876900000/backupShortTermRetentionPolicies/default", + "name": "default", + "type": "Microsoft.Sql/managedInstances/restorableDroppedDatabases/backupShortTermRetentionPolicies", + "properties": { + "retentionDays": 14 + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/managedInstances/testsvr/restorableDroppedDatabases/testdb,131403269876900000/backupShortTermRetentionPolicies/default", + "name": "default", + "type": "Microsoft.Sql/managedInstances/restorableDroppedDatabases/backupShortTermRetentionPolicies", + "properties": { + "retentionDays": 14 + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetMaintenanceWindowOptions.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetMaintenanceWindowOptions.json new file mode 100644 index 000000000000..b93a188bca9c --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetMaintenanceWindowOptions.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdb", + "maintenanceWindowOptionsName": "current", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "isEnabled": true, + "maintenanceWindowCycles": [ + { + "dayOfWeek": "Saturday", + "startTime": "00:00:00", + "duration": "PT60M" + } + ], + "minDurationInMinutes": 60, + "defaultDurationInMinutes": 120, + "minCycles": 2, + "timeGranularityInMinutes": 5, + "allowMultipleMaintenanceWindowsPerCycle": true + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb/maintenancewindowoptions/current", + "name": "current", + "type": "Microsoft.Sql/servers/databases/maintenancewindows" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetMaintenanceWindows.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetMaintenanceWindows.json new file mode 100644 index 000000000000..5c0bda7c16f9 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetMaintenanceWindows.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdb", + "maintenanceWindowName": "current", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "timeRanges": [ + { + "dayOfWeek": "Saturday", + "startTime": "00:00:00", + "duration": "PT60M" + } + ] + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb/maintenancewindows/current", + "name": "current", + "type": "Microsoft.Sql/servers/databases/maintenancewindows" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetManagedInstanceOperation.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetManagedInstanceOperation.json new file mode 100644 index 000000000000..2f33c122c3da --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetManagedInstanceOperation.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "managedInstanceName": "sqlcrudtest-4645", + "operationId": "00000000-1111-2222-3333-444444444444", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "managedInstanceName": "sqlcrudtest-4645", + "operation": "UpsertManagedServer", + "operationFriendlyName": "UPDATE MANAGED SERVER", + "percentComplete": 100, + "startTime": "2019-12-06T11:08:44.49Z", + "state": "Cancelled", + "isCancellable": false, + "operationSteps": { + "totalSteps": "5", + "currentStep": 2, + "stepsList": [ + { + "order": 1, + "name": "Request validation", + "status": "Completed" + }, + { + "order": 2, + "name": "New SQL Instance Startup", + "status": "Canceled" + }, + { + "order": 3, + "name": "Seeding database files", + "status": "NotStarted" + }, + { + "order": 4, + "name": "Preparing Failover and Failover", + "status": "NotStarted" + }, + { + "order": 5, + "name": "Old SQL Instance cleanup", + "status": "NotStarted" + } + ] + } + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/managedInstances/sqlcrudtest-4645/operations/11111111-1111-1111-1111-111111111111", + "name": "11111111-1111-1111-1111-111111111111", + "type": "Microsoft.Sql/managedInstances/operations" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetManagedShortTermRetentionPolicy.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetManagedShortTermRetentionPolicy.json new file mode 100644 index 000000000000..b6db70c60b67 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetManagedShortTermRetentionPolicy.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "managedInstanceName": "testsvr", + "databaseName": "testdb", + "policyName": "default", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/managedInstances/testsvr/databases/testdb/backupShortTermRetentionPolicies/default", + "name": "default", + "type": "Microsoft.Sql/managedInstances/databases/backupShortTermRetentionPolicies", + "properties": { + "retentionDays": 14 + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetManagedShortTermRetentionPolicyRestorableDropped.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetManagedShortTermRetentionPolicyRestorableDropped.json new file mode 100644 index 000000000000..0899a3b0beaf --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetManagedShortTermRetentionPolicyRestorableDropped.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "managedInstanceName": "testsvr", + "restorableDroppedDatabaseId": "testdb,131403269876900000", + "policyName": "default", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/managedInstance/testsvr/restorableDroppedDatabases/testdb,131403269876900000/backupShortTermRetentionPolicies/default", + "name": "default", + "type": "Microsoft.Sql/managedInstances/restorableDroppedDatabases/backupShortTermRetentionPolicies", + "properties": { + "retentionDays": 14 + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetRecoverableManagedDatabase.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetRecoverableManagedDatabase.json new file mode 100644 index 000000000000..e3e6c740ccdc --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetRecoverableManagedDatabase.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Test1", + "managedInstanceName": "managedInstance", + "recoverableDatabaseName": "testdb", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "lastAvailableBackupDate": "2017-05-26T01:06:29.78Z" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/managedInstances/testsvr/recoverableDatabases/testdb", + "name": "testdb", + "type": "Microsoft.Sql/managedInstances/recoverableDatabases" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetRestorableDroppedDatabase.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetRestorableDroppedDatabase.json new file mode 100644 index 000000000000..0b7244f99bec --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetRestorableDroppedDatabase.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "restorableDroppedDatabaseId": "testdb,131403269876900000", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "BC_Gen4_2", + "tier": "BusinessCritical" + }, + "properties": { + "databaseName": "testdb", + "maxSizeBytes": 268435456000, + "creationDate": "2017-05-07T04:41:33.937Z", + "deletionDate": "2017-05-27T02:49:47.69Z", + "backupStorageRedundancy": "Geo" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/restorableDroppedDatabases/testdb", + "name": "testdb,131403269876900000", + "type": "Microsoft.Sql/servers/restorableDroppedDatabases" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetRestorableDroppedManagedDatabase.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetRestorableDroppedManagedDatabase.json new file mode 100644 index 000000000000..831ada3a883f --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetRestorableDroppedManagedDatabase.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Test1", + "managedInstanceName": "managedInstance", + "restorableDroppedDatabaseId": "testdb,131403269876900000", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "databaseName": "testdb", + "creationDate": "2017-05-07T04:41:33.937Z", + "deletionDate": "2017-05-27T02:49:47.69Z" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/managedInstances/testsvr/restorableDroppedDatabases/testdb,131403269876900000", + "name": "testdb,131403269876900000", + "type": "Microsoft.Sql/managedInstances/restorableDroppedDatabases" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetShortTermRetentionPolicy.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetShortTermRetentionPolicy.json new file mode 100644 index 000000000000..8941ad3194e1 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetShortTermRetentionPolicy.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdb", + "policyName": "default", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb/backupShortTermRetentionPolicies/default", + "name": "default", + "type": "Microsoft.Sql/servers/databases/backupShortTermRetentionPolicies", + "properties": { + "retentionDays": 14 + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetVCoreDatabase.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetVCoreDatabase.json new file mode 100644 index 000000000000..1f134c6aef88 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetVCoreDatabase.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdb", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "BC_Gen5", + "tier": "BusinessCritical", + "capacity": 2 + }, + "kind": "v12.0,user,vcore", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 268435456000, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "creationDate": "2017-06-07T04:41:33.937Z", + "currentServiceObjectiveName": "BC_Gen5_2", + "requestedServiceObjectiveName": "BC_Gen5_2", + "defaultSecondaryLocation": "North Europe", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "licenseType": "LicenseIncluded", + "maxLogSizeBytes": 104857600, + "isInfraEncryptionEnabled": false, + "zoneRedundant": false, + "readScale": "Enabled", + "earliestRestoreDate": "2017-06-07T04:51:33.937Z", + "maintenanceConfigurationId": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_SouthEastAsia_1", + "currentSku": { + "name": "BC_Gen5", + "tier": "BusinessCritical", + "capacity": 2 + }, + "currentBackupStorageRedundancy": "Geo", + "requestedBackupStorageRedundancy": "Geo", + "isLedgerOn": false + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "name": "testdb", + "type": "Microsoft.Sql/servers/databases" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetWorkloadClassifier.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetWorkloadClassifier.json new file mode 100644 index 000000000000..461c78d6eafd --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetWorkloadClassifier.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdb", + "workloadGroupName": "wlm_workloadgroup", + "workloadClassifierName": "wlm_classifier", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "memberName": "dbo", + "label": "test_label", + "context": "test_context", + "startTime": "12:00", + "endTime": "14:00", + "importance": "high" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb/workloadGroups/wlm_workloadgroup/workloadClassifiers/wlm_classifier", + "name": "wlm_classifier", + "type": "Microsoft.Sql/servers/databases/workloadGroups/workloadClassifiers" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetWorkloadClassifierList.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetWorkloadClassifierList.json new file mode 100644 index 000000000000..e4eea809c730 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetWorkloadClassifierList.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdb", + "workloadGroupName": "wlm_workloadgroup", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "memberName": "dbo", + "label": "", + "context": "", + "startTime": "", + "endTime": "", + "importance": "high" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb/workloadGroups/wlm_workloadgroup/workloadClassifiers/classifier3", + "name": "classifier3", + "type": "Microsoft.Sql/servers/databases/workloadGroups/workloadClassifiers" + }, + { + "properties": { + "memberName": "dbo", + "label": "test_label", + "context": "test_context", + "startTime": "12:00", + "endTime": "14:00", + "importance": "high" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb/workloadGroups/wlm_workloadgroup/workloadClassifiers/classifier1", + "name": "classifier1", + "type": "Microsoft.Sql/servers/databases/workloadGroups/workloadClassifiers" + }, + { + "properties": { + "memberName": "dbo", + "label": "", + "context": "", + "startTime": "11:00", + "endTime": "17:00", + "importance": "high" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb/workloadGroups/wlm_workloadgroup/workloadClassifiers/classifier2", + "name": "classifier2", + "type": "Microsoft.Sql/servers/databases/workloadGroups/workloadClassifiers" + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetWorkloadGroup.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetWorkloadGroup.json new file mode 100644 index 000000000000..9683c4eb4979 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetWorkloadGroup.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdb", + "workloadGroupName": "smallrc", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "minResourcePercent": 0, + "maxResourcePercent": 100, + "minResourcePercentPerRequest": 3.0, + "maxResourcePercentPerRequest": 3.0, + "importance": "normal", + "queryExecutionTimeout": 0 + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb/workloadGroups/smallrc", + "name": "smallrc", + "type": "Microsoft.Sql/servers/databases/workloadGroups" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetWorkloadGroupList.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetWorkloadGroupList.json new file mode 100644 index 000000000000..075068c82752 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/GetWorkloadGroupList.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdb", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "minResourcePercent": 0, + "maxResourcePercent": 100, + "minResourcePercentPerRequest": 5, + "maxResourcePercentPerRequest": 5, + "importance": "normal", + "queryExecutionTimeout": 0 + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb/workloadGroups/smallrc", + "name": "smallrc", + "type": "Microsoft.Sql/servers/databases/workloadGroups" + }, + { + "properties": { + "minResourcePercent": 0, + "maxResourcePercent": 100, + "minResourcePercentPerRequest": 10, + "maxResourcePercentPerRequest": 10, + "importance": "normal", + "queryExecutionTimeout": 0 + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb/workloadGroups/mediumrc", + "name": "mediumrc", + "type": "Microsoft.Sql/servers/databases/workloadGroups" + }, + { + "properties": { + "minResourcePercent": 0, + "maxResourcePercent": 100, + "minResourcePercentPerRequest": 20, + "maxResourcePercentPerRequest": 20, + "importance": "high", + "queryExecutionTimeout": 0 + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb/workloadGroups/largerc", + "name": "largerc", + "type": "Microsoft.Sql/servers/databases/workloadGroups" + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ImportDatabase.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ImportDatabase.json new file mode 100644 index 000000000000..f9f68ff1cd72 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ImportDatabase.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdb", + "api-version": "2021-02-01-preview", + "parameters": { + "storageKeyType": "StorageAccessKey", + "storageKey": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx==", + "storageUri": "https://test.blob.core.windows.net/test.bacpac", + "administratorLogin": "login", + "administratorLoginPassword": "password", + "authenticationType": "Sql" + } + }, + "responses": { + "200": { + "body": { + "properties": { + "requestId": "9d9a794a-5cec-4f23-af70-d29511b522a4", + "requestType": "Import", + "queuedTime": "2/2/2020 8:33:27 PM", + "lastModifiedTime": "2/2/2020 8:34:47 PM", + "blobUri": "https://test.blob.core.windows.net/test.bacpac", + "serverName": "testsvr.database.windows.net", + "databaseName": "testdb", + "status": "Completed" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb/importExportOperationResults/9d9a794a-5cec-4f23-af70-d29511b522a4", + "name": "9d9a794a-5cec-4f23-af70-d29511b522a4", + "type": "Microsoft.Sql/servers/databases/importExportOperationResults" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ImportDatabaseWithNetworkIsolation.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ImportDatabaseWithNetworkIsolation.json new file mode 100644 index 000000000000..3df1041a29c2 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ImportDatabaseWithNetworkIsolation.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdb", + "api-version": "2021-02-01-preview", + "parameters": { + "storageKeyType": "StorageAccessKey", + "storageKey": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx==", + "storageUri": "https://test.blob.core.windows.net/test.bacpac", + "administratorLogin": "login", + "administratorLoginPassword": "password", + "authenticationType": "Sql", + "networkIsolation": { + "sqlServerResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr", + "storageAccountResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Storage/storageAccounts/test-privatelink" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "requestId": "9d9a794a-5cec-4f23-af70-d29511b522a4", + "requestType": "Import", + "queuedTime": "2/2/2020 8:33:27 PM", + "lastModifiedTime": "2/2/2020 8:34:47 PM", + "blobUri": "https://test.blob.core.windows.net/test.bacpac", + "serverName": "testsvr.database.windows.net", + "databaseName": "testdb", + "status": "Completed" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb/importExportOperationResults/9d9a794a-5cec-4f23-af70-d29511b522a4", + "name": "9d9a794a-5cec-4f23-af70-d29511b522a4", + "type": "Microsoft.Sql/servers/databases/importExportOperationResults" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ImportNewDatabase.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ImportNewDatabase.json new file mode 100644 index 000000000000..17f9648ee5bb --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ImportNewDatabase.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "api-version": "2021-02-01-preview", + "parameters": { + "databaseName": "testdb", + "storageKeyType": "StorageAccessKey", + "storageKey": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx==", + "storageUri": "https://test.blob.core.windows.net/test.bacpac", + "administratorLogin": "login", + "administratorLoginPassword": "password", + "authenticationType": "Sql" + } + }, + "responses": { + "200": { + "body": { + "properties": { + "requestId": "9d9a794a-5cec-4f23-af70-d29511b522a4", + "requestType": "Import", + "queuedTime": "2/2/2020 8:33:27 PM", + "lastModifiedTime": "2/2/2020 8:34:47 PM", + "blobUri": "https://test.blob.core.windows.net/test.bacpac", + "serverName": "testsvr.database.windows.net", + "databaseName": "testdb", + "status": "Completed" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb/importExportOperationResults/9d9a794a-5cec-4f23-af70-d29511b522a4", + "name": "9d9a794a-5cec-4f23-af70-d29511b522a4", + "type": "Microsoft.Sql/servers/databases/importExportOperationResults" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ImportNewDatabaseWithNetworkIsolation.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ImportNewDatabaseWithNetworkIsolation.json new file mode 100644 index 000000000000..3e9a5ebbb241 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ImportNewDatabaseWithNetworkIsolation.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "api-version": "2021-02-01-preview", + "parameters": { + "databaseName": "testdb", + "storageKeyType": "StorageAccessKey", + "storageKey": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx==", + "storageUri": "https://test.blob.core.windows.net/test.bacpac", + "administratorLogin": "login", + "administratorLoginPassword": "password", + "authenticationType": "Sql", + "networkIsolation": { + "sqlServerResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr", + "storageAccountResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Storage/storageAccounts/test-privatelink" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "requestId": "9d9a794a-5cec-4f23-af70-d29511b522a4", + "requestType": "Import", + "queuedTime": "2/2/2020 8:33:27 PM", + "lastModifiedTime": "2/2/2020 8:34:47 PM", + "blobUri": "https://test.blob.core.windows.net/test.bacpac", + "serverName": "testsvr.database.windows.net", + "databaseName": "testdb", + "status": "Completed" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb/importExportOperationResults/9d9a794a-5cec-4f23-af70-d29511b522a4", + "name": "9d9a794a-5cec-4f23-af70-d29511b522a4", + "type": "Microsoft.Sql/servers/databases/importExportOperationResults" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/InaccessibleManagedDatabaseListByManagedInstance.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/InaccessibleManagedDatabaseListByManagedInstance.json new file mode 100644 index 000000000000..d087bbe1f827 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/InaccessibleManagedDatabaseListByManagedInstance.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg", + "managedInstanceName": "testcl", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Sql/managedInstances/testcl/databases/testdb1", + "location": "southeastasia", + "name": "testdb1", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "creationDate": "2017-08-04T15:00:17.73Z", + "defaultSecondaryLocation": "North Europe", + "status": "Inaccessible" + }, + "type": "Microsoft.Sql/managedInstances/databases" + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Sql/managedInstances/testcl/databases/testdb2", + "location": "southeastasia", + "name": "testdb2", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "creationDate": "2017-08-04T15:00:17.73Z", + "defaultSecondaryLocation": "North Europe", + "status": "Inaccessible" + }, + "type": "Microsoft.Sql/managedInstances/databases" + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/InstanceFailoverGroupCreateOrUpdate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/InstanceFailoverGroupCreateOrUpdate.json new file mode 100644 index 000000000000..11078a65b798 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/InstanceFailoverGroupCreateOrUpdate.json @@ -0,0 +1,94 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "locationName": "Japan East", + "failoverGroupName": "failover-group-test-3", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "readWriteEndpoint": { + "failoverPolicy": "Automatic", + "failoverWithDataLossGracePeriodMinutes": 480 + }, + "readOnlyEndpoint": { + "failoverPolicy": "Disabled" + }, + "partnerRegions": [ + { + "location": "Japan West" + } + ], + "managedInstancePairs": [ + { + "primaryManagedInstanceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/managedInstances/failover-group-primary-mngdInstance", + "partnerManagedInstanceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/managedInstances/failover-group-secondary-mngdInstance" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/locations/JapanEast/instanceFailoverGroups/failover-group-test-3", + "name": "failover-group-test-3", + "type": "Microsoft.Sql/locations/failoverGroups", + "properties": { + "readWriteEndpoint": { + "failoverPolicy": "Automatic", + "failoverWithDataLossGracePeriodMinutes": 480 + }, + "readOnlyEndpoint": { + "failoverPolicy": "Disabled" + }, + "replicationRole": "Primary", + "replicationState": "CATCH_UP", + "partnerRegions": [ + { + "location": "Japan West", + "replicationRole": "Secondary" + } + ], + "managedInstancePairs": [ + { + "primaryManagedInstanceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/managedInstances/failover-group-primary-mngdInstance", + "partnerManagedInstanceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/managedInstances/failover-group-secondary-mngdInstance" + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/locations/JapanEast/instanceFailoverGroups/failover-group-test-3", + "name": "failover-group-test-3", + "type": "Microsoft.Sql/locations/failoverGroups", + "properties": { + "readWriteEndpoint": { + "failoverPolicy": "Automatic", + "failoverWithDataLossGracePeriodMinutes": 480 + }, + "readOnlyEndpoint": { + "failoverPolicy": "Disabled" + }, + "replicationRole": "Primary", + "replicationState": "CATCH_UP", + "partnerRegions": [ + { + "location": "Japan West", + "replicationRole": "Secondary" + } + ], + "managedInstancePairs": [ + { + "primaryManagedInstanceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/managedInstances/failover-group-primary-mngdInstance", + "partnerManagedInstanceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/managedInstances/failover-group-secondary-mngdInstance" + } + ] + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/InstanceFailoverGroupDelete.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/InstanceFailoverGroupDelete.json new file mode 100644 index 000000000000..5d80bbe73d77 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/InstanceFailoverGroupDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "locationName": "Japan East", + "failoverGroupName": "failover-group-test-1", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/InstanceFailoverGroupFailover.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/InstanceFailoverGroupFailover.json new file mode 100644 index 000000000000..b884de705a2b --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/InstanceFailoverGroupFailover.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "locationName": "Japan West", + "failoverGroupName": "failover-group-test-3", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/locations/JapanWest/instanceFailoverGroups/failover-group-test-3", + "name": "failover-group-test-3", + "type": "Microsoft.Sql/locations/failoverGroups", + "properties": { + "readWriteEndpoint": { + "failoverPolicy": "Automatic", + "failoverWithDataLossGracePeriodMinutes": 480 + }, + "readOnlyEndpoint": { + "failoverPolicy": "Disabled" + }, + "replicationRole": "Primary", + "replicationState": "CATCH_UP", + "partnerRegions": [ + { + "location": "Japan East", + "replicationRole": "Secondary" + } + ], + "managedInstancePairs": [ + { + "primaryManagedInstanceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/managedInstances/failover-group-secondary-mngdInstance", + "partnerManagedInstanceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/managedInstances/failover-group-primary-mngdInstance" + } + ] + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/InstanceFailoverGroupForceFailoverAllowDataLoss.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/InstanceFailoverGroupForceFailoverAllowDataLoss.json new file mode 100644 index 000000000000..b884de705a2b --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/InstanceFailoverGroupForceFailoverAllowDataLoss.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "locationName": "Japan West", + "failoverGroupName": "failover-group-test-3", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/locations/JapanWest/instanceFailoverGroups/failover-group-test-3", + "name": "failover-group-test-3", + "type": "Microsoft.Sql/locations/failoverGroups", + "properties": { + "readWriteEndpoint": { + "failoverPolicy": "Automatic", + "failoverWithDataLossGracePeriodMinutes": 480 + }, + "readOnlyEndpoint": { + "failoverPolicy": "Disabled" + }, + "replicationRole": "Primary", + "replicationState": "CATCH_UP", + "partnerRegions": [ + { + "location": "Japan East", + "replicationRole": "Secondary" + } + ], + "managedInstancePairs": [ + { + "primaryManagedInstanceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/managedInstances/failover-group-secondary-mngdInstance", + "partnerManagedInstanceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/managedInstances/failover-group-primary-mngdInstance" + } + ] + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/InstanceFailoverGroupGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/InstanceFailoverGroupGet.json new file mode 100644 index 000000000000..b6c3f93bd033 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/InstanceFailoverGroupGet.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "locationName": "Japan East", + "failoverGroupName": "failover-group-test", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/locations/JapanEast/instanceFailoverGroups/failover-group-test-3", + "name": "failover-group-test-3", + "type": "Microsoft.Sql/locations/failoverGroups", + "properties": { + "readWriteEndpoint": { + "failoverPolicy": "Automatic", + "failoverWithDataLossGracePeriodMinutes": 480 + }, + "readOnlyEndpoint": { + "failoverPolicy": "Disabled" + }, + "replicationRole": "Primary", + "replicationState": "CATCH_UP", + "partnerRegions": [ + { + "location": "Japan West", + "replicationRole": "Secondary" + } + ], + "managedInstancePairs": [ + { + "primaryManagedInstanceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/managedInstances/failover-group-primary-mngdInstance", + "partnerManagedInstanceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/managedInstances/failover-group-secondary-mngdInstance" + } + ] + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/InstanceFailoverGroupList.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/InstanceFailoverGroupList.json new file mode 100644 index 000000000000..f4789261fa6e --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/InstanceFailoverGroupList.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "locationName": "Japan East", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/locations/JapanEast/instanceFailoverGroups/failover-group-test", + "name": "failover-group-test", + "type": "Microsoft.Sql/locations/failoverGroups", + "properties": { + "readWriteEndpoint": { + "failoverPolicy": "Automatic", + "failoverWithDataLossGracePeriodMinutes": 480 + }, + "readOnlyEndpoint": { + "failoverPolicy": "Disabled" + }, + "replicationRole": "Primary", + "replicationState": "CATCH_UP", + "partnerRegions": [ + { + "location": "Japan West", + "replicationRole": "Secondary" + } + ], + "managedInstancePairs": [ + { + "primaryManagedInstanceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/managedInstances/failover-group-primary-mngdInstance", + "partnerManagedInstanceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/managedInstances/failover-group-secondary-mngdInstance" + } + ] + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/locations/JapanEast/instanceFailoverGroups/failover-group-test-1", + "name": "failover-group-test-1", + "type": "Microsoft.Sql/locations/failoverGroups", + "properties": { + "readWriteEndpoint": { + "failoverPolicy": "Automatic", + "failoverWithDataLossGracePeriodMinutes": 480 + }, + "readOnlyEndpoint": { + "failoverPolicy": "Disabled" + }, + "replicationRole": "Primary", + "replicationState": "CATCH_UP", + "partnerRegions": [ + { + "location": "Japan West", + "replicationRole": "Secondary" + } + ], + "managedInstancePairs": [ + { + "primaryManagedInstanceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/managedInstances/failover-group-primary-mngdInstance-1", + "partnerManagedInstanceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/managedInstances/failover-group-secondary-mngdInstance-1" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/LedgerDigestUploadsDisable.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/LedgerDigestUploadsDisable.json new file mode 100644 index 000000000000..6c24e9073a3c --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/LedgerDigestUploadsDisable.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "ledgertestrg", + "serverName": "ledgertestserver", + "databaseName": "testdb", + "ledgerDigestUploads": "current", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/ledgertestrg/providers/Microsoft.Sql/servers/ledgertestserver/databases/testdb/ledgerDigestUpload/current/disable", + "name": "current", + "type": "Microsoft.Sql/servers/databases/ledgerDigestUploads", + "properties": { + "state": "Disabled" + } + } + }, + "202": { + "headers": { + "Location": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/ledgertestrg/providers/Microsoft.Sql/locations/eastus/ledgerDigestUploadOperationResults/11111111-1111-1111-1111-111111111111" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/LedgerDigestUploadsEnable.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/LedgerDigestUploadsEnable.json new file mode 100644 index 000000000000..05ba92526a3f --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/LedgerDigestUploadsEnable.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "ledgertestrg", + "serverName": "ledgertestserver", + "databaseName": "testdb", + "ledgerDigestUploads": "current", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "digestStorageEndpoint": "https://MyAccount.blob.core.windows.net" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/ledgertestrg/providers/Microsoft.Sql/servers/ledgertestserver/databases/testdb/ledgerDigestUpload/current", + "name": "current", + "type": "Microsoft.Sql/servers/databases/ledgerDigestUploads", + "properties": { + "digestStorageEndpoint": "https://mystorage.blob.core.windows.net", + "state": "Enabled" + } + } + }, + "202": { + "headers": { + "Location": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/ledgertestrg/providers/Microsoft.Sql/locations/eastus/ledgerDigestUploadOperationResults/11111111-1111-1111-1111-111111111111" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/LedgerDigestUploadsGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/LedgerDigestUploadsGet.json new file mode 100644 index 000000000000..fd715ce420ff --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/LedgerDigestUploadsGet.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "ledgertestrg", + "serverName": "ledgertestserver", + "databaseName": "testdb", + "ledgerDigestUploads": "current", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/ledgertestrg/providers/Microsoft.Sql/servers/ledgertestserver/databases/testdb/current", + "name": "current", + "type": "Microsoft.Sql/servers/databases/ledgerDigestUploads", + "properties": { + "digestStorageEndpoint": "https://mystorage.blob.core.windows.net", + "state": "Enabled" + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/LedgerDigestUploadsList.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/LedgerDigestUploadsList.json new file mode 100644 index 000000000000..c1ff1196e74d --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/LedgerDigestUploadsList.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "ledgertestrg", + "serverName": "ledgertestserver", + "databaseName": "testdb", + "ledgerDigestUploads": "current", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/ledgertestrg/providers/Microsoft.Sql/servers/ledgertestserver/databases/testdb/current", + "name": "current", + "type": "Microsoft.Sql/servers/databases/ledgerDigestUploads", + "properties": { + "digestStorageEndpoint": "https://mystorage.blob.core.windows.net", + "state": "Enabled" + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListDataWarehouseUserActivities.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListDataWarehouseUserActivities.json new file mode 100644 index 000000000000..382466e030aa --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListDataWarehouseUserActivities.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdb", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "subscriptions/326affc3-21f4-4471-a545-e37430b70113/resourceGroups/Default-SQL-Onebox/providers/Microsoft.Sql/servers/testsvr/databases/dwdb01/dataWarehouseUserActivities/current", + "type": "Microsoft.Sql/servers/databases/dataWarehouseUserActivities", + "properties": { + "activeQueriesCount": 0 + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListDatabaseExtensions.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListDatabaseExtensions.json new file mode 100644 index 000000000000..cf1f65cc8cc9 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListDatabaseExtensions.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "7b2515fe-f230-4017-8cf0-695163acab85", + "resourceGroupName": "rg_4007c5a9-b3b0-41e1-bd46-9eef38768a4a", + "serverName": "srv_3b67ec2a-519b-43a7-8533-fb62dce3431e", + "databaseName": "719d8fa4-bf0f-48fc-8cd3-ef40fe6ba1fe", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListDatabaseOperations.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListDatabaseOperations.json new file mode 100644 index 000000000000..cb80f6ff6f8a --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListDatabaseOperations.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "serverName": "sqlcrudtest-4645", + "databaseName": "testdb", + "api-version": "2021-02-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.1Z", + "state": "Succeeded" + } + }, + { + "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.1Z", + "state": "InProgress" + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListDatabasesByElasticPool.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListDatabasesByElasticPool.json new file mode 100644 index 000000000000..84a73698e178 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListDatabasesByElasticPool.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "elasticPoolName": "pool1", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "sku": { + "name": "ElasticPool", + "tier": "Standard" + }, + "kind": "v12.0,user", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 268435456000, + "elasticPoolId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/elasticPools/Pool1", + "status": "Online", + "databaseId": "bfe0735f-bc87-447f-b2c2-481f4b100614", + "creationDate": "2017-07-12T22:08:39.163Z", + "currentServiceObjectiveName": "ElasticPool", + "defaultSecondaryLocation": "North Europe", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/DB001", + "name": "DB001", + "type": "Microsoft.Sql/servers/databases" + }, + { + "sku": { + "name": "ElasticPool", + "tier": "Standard" + }, + "kind": "v12.0,user", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 268435456000, + "elasticPoolId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/elasticPools/Pool1", + "status": "Online", + "databaseId": "82246152-3177-4357-b81c-a16d87ce3593", + "creationDate": "2017-07-12T22:10:10.773Z", + "currentServiceObjectiveName": "ElasticPool", + "defaultSecondaryLocation": "North Europe", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/DB002", + "name": "DB002", + "type": "Microsoft.Sql/servers/databases" + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListElasticPoolOperations.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListElasticPoolOperations.json new file mode 100644 index 000000000000..5ed4e9a55bed --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListElasticPoolOperations.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtestgroup", + "serverName": "sqlcrudtestserver", + "elasticPoolName": "testpool", + "api-version": "2021-02-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.1Z", + "state": "COMPLETED" + } + }, + { + "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.1Z", + "state": "IN_PROGRESS" + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListInstancePoolUsage.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListInstancePoolUsage.json new file mode 100644 index 000000000000..ab0ed5d4d7a7 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListInstancePoolUsage.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "group1", + "instancePoolName": "testIP", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/instancePools/testIP/usages/vcore_utilization", + "name": { + "value": "VCore utilization", + "localizedValue": "VCore utilization" + }, + "type": "Microsoft.Sql/instancePools/usages", + "unit": "VCores", + "currentValue": 12, + "limit": 16, + "requestedLimit": 40 + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/instancePools/testIP/usages/storage_utilization", + "name": { + "value": "Storage utilization", + "localizedValue": "Storage utilization" + }, + "type": "Microsoft.Sql/instancePools/usages", + "unit": "VCores", + "currentValue": 384, + "limit": 8196, + "requestedLimit": null + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/instancePools/testIP/usages/database_utilization", + "name": { + "value": "Database utilization", + "localizedValue": "Database utilization" + }, + "type": "Microsoft.Sql/instancePools/usages", + "unit": "Number Of Databases", + "currentValue": 5, + "limit": 100, + "requestedLimit": null + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListInstancePoolUsageExpanded.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListInstancePoolUsageExpanded.json new file mode 100644 index 000000000000..eaaee697c51d --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListInstancePoolUsageExpanded.json @@ -0,0 +1,125 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "group1", + "instancePoolName": "testIP", + "expandChildren": true, + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/instancePools/testIP/usages/vcore_utilization", + "name": { + "value": "VCore utilization", + "localizedValue": "VCore utilization" + }, + "type": "Microsoft.Sql/instancePools/usages", + "unit": "VCores", + "currentValue": 12, + "limit": 16, + "requestedLimit": 40 + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/instancePools/testIP/usages/storage_utilization", + "name": { + "value": "Storage utilization", + "localizedValue": "Storage utilization" + }, + "type": "Microsoft.Sql/instancePools/usages", + "unit": "VCores", + "currentValue": 384, + "limit": 8196, + "requestedLimit": null + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/instancePools/testIP/usages/database_utilization", + "name": { + "value": "Database utilization", + "localizedValue": "Database utilization" + }, + "type": "Microsoft.Sql/instancePools/usages", + "unit": "Number Of Databases", + "currentValue": 5, + "limit": 100, + "requestedLimit": null + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/instancePools/testIP/managedInstances/managedInstance1/usages/vcore_utilization", + "name": { + "value": "VCore utilization", + "localizedValue": "VCore utilization" + }, + "type": "Microsoft.Sql/instancePools/managedInstances/usages", + "unit": "VCores", + "currentValue": null, + "limit": 4, + "requestedLimit": null + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/instancePools/testIP/managedInstances/managedInstance2/usages/vcore_utilization", + "name": { + "value": "VCore utilization", + "localizedValue": "VCore utilization" + }, + "type": "Microsoft.Sql/instancePools/managedInstances/usages", + "unit": "VCores", + "currentValue": null, + "limit": 4, + "requestedLimit": 8 + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/instancePools/testIP/managedInstances/managedInstance1/usages/storage_utilization", + "name": { + "value": "Storage utilization", + "localizedValue": "Storage utilization" + }, + "type": "Microsoft.Sql/instancePools/managedInstances/usages", + "unit": "Gigabytes", + "currentValue": null, + "limit": 128, + "requestedLimit": null + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/instancePools/testIP/managedInstances/managedInstance2/usages/storage_utilization", + "name": { + "value": "VCore utilization", + "localizedValue": "VCore utilization" + }, + "type": "Microsoft.Sql/instancePools/managedInstances/usages", + "unit": "Gigabytes", + "currentValue": null, + "limit": 128, + "requestedLimit": 256 + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/instancePools/testIP/managedInstances/managedInstance1/usages/database_utilization", + "name": { + "value": "Database utilization", + "localizedValue": "Database utilization" + }, + "type": "Microsoft.Sql/instancePools/managedInstances/usages", + "unit": "Number Of Databases", + "currentValue": 2, + "limit": 100, + "requestedLimit": null + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/instancePools/testIP/managedInstances/managedInstance2/usages/database_utilization", + "name": { + "value": "Database utilization", + "localizedValue": "Database utilization" + }, + "type": "Microsoft.Sql/instancePools/managedInstances/usages", + "unit": "Number Of Databases", + "currentValue": 3, + "limit": 100, + "requestedLimit": null + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListInstancePoolsByResourceGroup.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListInstancePoolsByResourceGroup.json new file mode 100644 index 000000000000..c0420c04364d --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListInstancePoolsByResourceGroup.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "group1", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "sku": { + "name": "GP_Gen5", + "tier": "GeneralPurpose", + "family": "Gen5" + }, + "properties": { + "subnetId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Network/virtualNetwork/myvnet/subnets/mysubnet1", + "vCores": 8, + "licenseType": "LicenseIncluded" + }, + "location": "japaneast", + "tags": { + "a": "b" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/instancePools/testIP", + "name": "testIP", + "type": "Microsoft.Sql/instancePools" + }, + { + "sku": { + "name": "GP_Gen5", + "tier": "GeneralPurpose", + "family": "Gen5" + }, + "properties": { + "subnetId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Network/virtualNetwork/myvnet/subnets/mysubnet1", + "vCores": 8, + "licenseType": "LicenseIncluded" + }, + "location": "japaneast", + "tags": { + "a": "b" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/instancePools/testIP2", + "name": "testIP2", + "type": "Microsoft.Sql/instancePools" + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListInstancePoolsBySubscriptionId.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListInstancePoolsBySubscriptionId.json new file mode 100644 index 000000000000..feebebc5b5fa --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListInstancePoolsBySubscriptionId.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "sku": { + "name": "GP_Gen5", + "tier": "GeneralPurpose", + "family": "Gen5" + }, + "properties": { + "subnetId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Network/virtualNetwork/myvnet/subnets/mysubnet1", + "vCores": 8, + "licenseType": "LicenseIncluded" + }, + "location": "japaneast", + "tags": { + "a": "b" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/instancePools/testIP", + "name": "testIP", + "type": "Microsoft.Sql/instancePools" + }, + { + "sku": { + "name": "GP_Gen5", + "tier": "GeneralPurpose", + "family": "Gen5" + }, + "properties": { + "subnetId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group2/providers/Microsoft.Network/virtualNetwork/myvnet/subnets/mysubnet1", + "vCores": 8, + "licenseType": "LicenseIncluded" + }, + "location": "japaneast", + "tags": { + "a": "b" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group2/providers/Microsoft.Sql/instancePools/testIP2", + "name": "testIP2", + "type": "Microsoft.Sql/instancePools" + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListJobAgentsByServer.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListJobAgentsByServer.json new file mode 100644 index 000000000000..b4fc51d10772 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListJobAgentsByServer.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "group1", + "serverName": "server1", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1", + "name": "agent1", + "type": "Microsoft.Sql/servers/jobAgents", + "location": "southeastasia", + "sku": { + "name": "Agent", + "capacity": 200 + }, + "properties": { + "databaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/databases/db1" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/jobAgent2", + "name": "jobAgent2", + "type": "Microsoft.Sql/servers/jobAgents", + "location": "southeastasia", + "sku": { + "name": "Agent", + "capacity": 400 + }, + "properties": { + "databaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/databases/db12" + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListJobCredentialsByAgent.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListJobCredentialsByAgent.json new file mode 100644 index 000000000000..3e7610b29c8d --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListJobCredentialsByAgent.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "group1", + "serverName": "server1", + "jobAgentName": "agent1", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/credentials/cred1", + "name": "cred1", + "type": "Microsoft.Sql/servers/jobAccounts/credentials", + "properties": { + "username": "myuser" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/credentials/cred2", + "name": "cred2", + "type": "Microsoft.Sql/servers/jobAccounts/credentials", + "properties": { + "username": "anotherUser" + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListJobExecutionSteps.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListJobExecutionSteps.json new file mode 100644 index 000000000000..d920e0499906 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListJobExecutionSteps.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "group1", + "serverName": "server1", + "jobAgentName": "agent1", + "jobName": "job1", + "jobExecutionId": "5555-6666-7777-8888-999999999999", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "jobVersion": 1, + "stepName": "step1", + "stepId": 1, + "jobExecutionId": "5555-6666-7777-8888-999999999999", + "lifecycle": "Succeeded", + "provisioningState": "Succeeded", + "createTime": "2017-12-03T04:33:15.7189151Z", + "startTime": "2017-12-03T04:33:16.176937Z", + "endTime": "2017-12-03T04:33:19.0600862Z", + "currentAttempts": 1, + "currentAttemptStartTime": "2017-12-03T04:33:17.4840068Z", + "lastMessage": "Step 1 succeeded." + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/jobs/job1/executions/5555-6666-7777-8888-999999999999/steps/step1", + "name": "step1", + "type": "Microsoft.Sql/servers/jobAgents/jobs/executions/steps" + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListJobExecutionTargetsByExecution.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListJobExecutionTargetsByExecution.json new file mode 100644 index 000000000000..f60caa080197 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListJobExecutionTargetsByExecution.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "group1", + "serverName": "server1", + "jobAgentName": "agent1", + "jobName": "job1", + "jobExecutionId": "5555-6666-7777-8888-999999999999", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "jobVersion": 1, + "stepName": "step1", + "stepId": 1, + "jobExecutionId": "5555-6666-7777-8888-999999999999", + "lifecycle": "Succeeded", + "provisioningState": "Succeeded", + "createTime": "2017-07-01T04:33:17.5133333Z", + "startTime": "2017-07-01T04:33:18.1230403Z", + "endTime": "2017-07-01T04:33:18.7031029Z", + "currentAttempts": 1, + "currentAttemptStartTime": "2017-07-01T04:33:18.2391013Z", + "lastMessage": "Step 1 succeeded execution on target (server 'server1', database 'database1').", + "target": { + "type": "SqlDatabase", + "serverName": "server1", + "databaseName": "database1" + } + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/jobs/job1/executions/5555-6666-7777-8888-999999999999/steps/step1/targets/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "name": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "type": "Microsoft.Sql/servers/jobAgents/jobs/executions/steps/targets" + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListJobExecutionTargetsByStep.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListJobExecutionTargetsByStep.json new file mode 100644 index 000000000000..330a60d82338 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListJobExecutionTargetsByStep.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "group1", + "serverName": "server1", + "jobAgentName": "agent1", + "jobName": "job1", + "jobExecutionId": "5555-6666-7777-8888-999999999999", + "stepName": "step1", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "jobVersion": 1, + "stepName": "step1", + "stepId": 1, + "jobExecutionId": "5555-6666-7777-8888-999999999999", + "lifecycle": "Succeeded", + "provisioningState": "Succeeded", + "createTime": "2017-07-01T04:33:17.5133333Z", + "startTime": "2017-07-01T04:33:18.1230403Z", + "endTime": "2017-07-01T04:33:18.7031029Z", + "currentAttempts": 1, + "currentAttemptStartTime": "2017-07-01T04:33:18.2391013Z", + "lastMessage": "Step 1 succeeded execution on target (server 'server1', database 'database1').", + "target": { + "type": "SqlDatabase", + "serverName": "server1", + "databaseName": "database1" + } + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/jobs/job1/executions/5555-6666-7777-8888-999999999999/steps/step1/targets/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "name": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "type": "Microsoft.Sql/servers/jobAgents/jobs/executions/steps/targets" + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListJobExecutionsByAgent.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListJobExecutionsByAgent.json new file mode 100644 index 000000000000..abe9352bb356 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListJobExecutionsByAgent.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "group1", + "serverName": "server1", + "jobAgentName": "agent1", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "jobVersion": 1, + "jobExecutionId": "5555-6666-7777-8888-999999999999", + "lifecycle": "Created", + "provisioningState": "Created", + "createTime": "2017-03-21T19:02:00.8707045Z", + "startTime": "2017-03-21T19:12:00.8707045Z", + "endTime": "2017-03-21T19:22:00.8707045Z", + "currentAttempts": 0, + "currentAttemptStartTime": "2017-03-21T19:12:00.8707045Z", + "lastMessage": "Job execution created." + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/jobs/job1/executions/5555-6666-7777-8888-999999999999", + "name": "5555-6666-7777-8888-999999999999", + "type": "Microsoft.Sql/servers/jobAgents/jobs/executions" + }, + { + "properties": { + "jobVersion": 1, + "jobExecutionId": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "lifecycle": "Succeeded", + "provisioningState": "Succeeded", + "createTime": "2017-12-15T19:02:00.8707045Z", + "startTime": "2017-12-15T19:12:00.8707045Z", + "endTime": "2017-12-15T19:22:00.8707045Z", + "currentAttempts": 1, + "lastMessage": "Job execution succeeded." + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/jobs/job2/executions/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "name": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "type": "Microsoft.Sql/servers/jobAgents/jobs/executions" + } + ], + "nextLink": "https://management.azure.com/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1//executions?api-version=2017-03-01-preview&%24skip=2" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListJobExecutionsByAgentWithFilter.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListJobExecutionsByAgentWithFilter.json new file mode 100644 index 000000000000..f8e2b165b01c --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListJobExecutionsByAgentWithFilter.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "group1", + "serverName": "server1", + "jobAgentName": "agent1", + "api-version": "2021-02-01-preview", + "createTimeMin": "2017-03-21T19:00:00Z", + "createTimeMax": "2017-03-21T19:05:00Z", + "endTimeMin": "2017-03-21T19:20:00Z", + "endTimeMax": "2017-03-21T19:25:00Z", + "isActive": false + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "jobVersion": 1, + "jobExecutionId": "5555-6666-7777-8888-999999999999", + "lifecycle": "Created", + "provisioningState": "Created", + "createTime": "2017-03-21T19:02:00.8707045Z", + "startTime": "2017-03-21T19:12:00.8707045Z", + "endTime": "2017-03-21T19:22:00.8707045Z", + "currentAttempts": 0, + "currentAttemptStartTime": "2017-03-21T19:12:00.8707045Z", + "lastMessage": "Job execution created." + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/jobs/job1/executions/5555-6666-7777-8888-999999999999", + "name": "5555-6666-7777-8888-999999999999", + "type": "Microsoft.Sql/servers/jobAgents/jobs/executions" + }, + { + "properties": { + "jobVersion": 1, + "jobExecutionId": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "lifecycle": "Succeeded", + "provisioningState": "Succeeded", + "createTime": "2017-12-15T19:02:00.8707045Z", + "startTime": "2017-12-15T19:12:00.8707045Z", + "endTime": "2017-12-15T19:22:00.8707045Z", + "currentAttempts": 1, + "lastMessage": "Job execution succeeded." + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/jobs/job2/executions/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "name": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "type": "Microsoft.Sql/servers/jobAgents/jobs/executions" + } + ], + "nextLink": "https://management.azure.com/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1//executions?api-version=2017-03-01-preview&%24skip=2" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListJobExecutionsByJob.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListJobExecutionsByJob.json new file mode 100644 index 000000000000..0a3f230f6652 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListJobExecutionsByJob.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "group1", + "serverName": "server1", + "jobAgentName": "agent1", + "jobName": "job1", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "jobVersion": 1, + "jobExecutionId": "5555-6666-7777-8888-999999999999", + "lifecycle": "Created", + "provisioningState": "Created", + "createTime": "2017-03-21T19:02:00.8707045Z", + "startTime": "2017-03-21T19:12:00.8707045Z", + "endTime": "2017-03-21T19:22:00.8707045Z", + "currentAttempts": 0, + "currentAttemptStartTime": "2017-03-21T19:12:00.8707045Z", + "lastMessage": "Job execution created." + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/jobs/job1/executions/5555-6666-7777-8888-999999999999", + "name": "5555-6666-7777-8888-999999999999", + "type": "Microsoft.Sql/servers/jobAgents/jobs/executions" + }, + { + "properties": { + "jobVersion": 1, + "jobExecutionId": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "lifecycle": "Succeeded", + "provisioningState": "Succeeded", + "createTime": "2017-12-15T19:02:00.8707045Z", + "startTime": "2017-12-15T19:12:00.8707045Z", + "endTime": "2017-12-15T19:22:00.8707045Z", + "currentAttempts": 1, + "lastMessage": "Job execution succeeded." + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/jobs/job1/executions/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "name": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "type": "Microsoft.Sql/servers/jobAgents/jobs/executions" + } + ], + "nextLink": "https://management.azure.com/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/jobs/job1/executions?api-version=2017-03-01-preview&%24skip=2" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListJobStepsByJob.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListJobStepsByJob.json new file mode 100644 index 000000000000..c4052cb1a6be --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListJobStepsByJob.json @@ -0,0 +1,82 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "group1", + "serverName": "server1", + "jobAgentName": "agent1", + "jobName": "job1", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "stepId": 1, + "targetGroup": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/targetGroups/targetGroup1", + "credential": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/credentials/cred1", + "action": { + "type": "TSql", + "source": "Inline", + "value": "select 2" + }, + "output": { + "type": "SqlDatabase", + "subscriptionId": "3501b905-a848-4b5d-96e8-b253f62d735a", + "resourceGroupName": "group3", + "serverName": "server3", + "databaseName": "database3", + "schemaName": "myschema1234", + "tableName": "mytable5678", + "credential": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/credentials/cred0" + }, + "executionOptions": { + "timeoutSeconds": 1234, + "retryAttempts": 42, + "initialRetryIntervalSeconds": 11, + "maximumRetryIntervalSeconds": 222, + "retryIntervalBackoffMultiplier": 3.0 + } + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/jobs/job1/steps/step1", + "name": "step1", + "type": "Microsoft.Sql/servers/jobAgents/jobs/steps" + }, + { + "properties": { + "stepId": 2, + "targetGroup": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/targetGroups/targetGroup1", + "credential": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/credentials/cred1", + "action": { + "type": "TSql", + "source": "Inline", + "value": "select 2" + }, + "output": { + "type": "SqlDatabase", + "subscriptionId": "3501b905-a848-4b5d-96e8-b253f62d735a", + "resourceGroupName": "group3", + "serverName": "server3", + "databaseName": "database3", + "schemaName": "myschema1234", + "tableName": "mytable5678", + "credential": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/credentials/cred0" + }, + "executionOptions": { + "timeoutSeconds": 1234, + "retryAttempts": 42, + "initialRetryIntervalSeconds": 11, + "maximumRetryIntervalSeconds": 222, + "retryIntervalBackoffMultiplier": 3.0 + } + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/jobs/job1/steps/step2", + "name": "step2", + "type": "Microsoft.Sql/servers/jobAgents/jobs/steps" + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListJobStepsByVersion.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListJobStepsByVersion.json new file mode 100644 index 000000000000..9abe1d3d8e8c --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListJobStepsByVersion.json @@ -0,0 +1,83 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "group1", + "serverName": "server1", + "jobAgentName": "agent1", + "jobName": "job1", + "jobVersion": "1", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "stepId": 1, + "targetGroup": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/targetGroups/targetGroup1", + "credential": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/credentials/cred1", + "action": { + "type": "TSql", + "source": "Inline", + "value": "select 2" + }, + "output": { + "type": "SqlDatabase", + "subscriptionId": "3501b905-a848-4b5d-96e8-b253f62d735a", + "resourceGroupName": "group3", + "serverName": "server3", + "databaseName": "database3", + "schemaName": "myschema1234", + "tableName": "mytable5678", + "credential": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/credentials/cred0" + }, + "executionOptions": { + "timeoutSeconds": 1234, + "retryAttempts": 42, + "initialRetryIntervalSeconds": 11, + "maximumRetryIntervalSeconds": 222, + "retryIntervalBackoffMultiplier": 3.0 + } + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/jobs/job1/versions/1/steps/step1", + "name": "step1", + "type": "Microsoft.Sql/servers/jobAgents/jobs/versions/steps" + }, + { + "properties": { + "stepId": 2, + "targetGroup": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/targetGroups/targetGroup1", + "credential": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/credentials/cred1", + "action": { + "type": "TSql", + "source": "Inline", + "value": "select 2" + }, + "output": { + "type": "SqlDatabase", + "subscriptionId": "3501b905-a848-4b5d-96e8-b253f62d735a", + "resourceGroupName": "group3", + "serverName": "server3", + "databaseName": "database3", + "schemaName": "myschema1234", + "tableName": "mytable5678", + "credential": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/credentials/cred0" + }, + "executionOptions": { + "timeoutSeconds": 1234, + "retryAttempts": 42, + "initialRetryIntervalSeconds": 11, + "maximumRetryIntervalSeconds": 222, + "retryIntervalBackoffMultiplier": 3.0 + } + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/jobs/job1/versions/1/steps/step2", + "name": "step2", + "type": "Microsoft.Sql/servers/jobAgents/jobs/versions/steps" + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListJobTargetGroups.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListJobTargetGroups.json new file mode 100644 index 000000000000..20f60aa785ea --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListJobTargetGroups.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "group1", + "serverName": "server1", + "jobAgentName": "agent1", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "members": [ + { + "membershipType": "Exclude", + "type": "SqlDatabase", + "serverName": "server1", + "databaseName": "database1" + }, + { + "membershipType": "Include", + "type": "SqlServer", + "serverName": "server1", + "refreshCredential": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/credentials/testCredential" + }, + { + "membershipType": "Include", + "type": "SqlElasticPool", + "serverName": "server2", + "elasticPoolName": "pool1", + "refreshCredential": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/credentials/testCredential" + }, + { + "membershipType": "Include", + "type": "SqlShardMap", + "serverName": "server3", + "shardMapName": "shardMap1", + "refreshCredential": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/credentials/testCredential" + } + ] + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/targetGroups/targetGroup1", + "name": "targetGroup1", + "type": "Microsoft.Sql/servers/jobAgents/targetGroups" + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListJobVersions.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListJobVersions.json new file mode 100644 index 000000000000..6a206ec460c8 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListJobVersions.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "group1", + "serverName": "server1", + "jobAgentName": "agent1", + "jobName": "job1", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/jobs/job1/versions/1", + "name": "1", + "type": "Microsoft.Sql/servers/jobAgents/jobs/versions" + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/jobs/job1/versions/2", + "name": "2", + "type": "Microsoft.Sql/servers/jobAgents/jobs/versions" + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListJobsByAgent.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListJobsByAgent.json new file mode 100644 index 000000000000..c64efd7fb500 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListJobsByAgent.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "group1", + "serverName": "server1", + "jobAgentName": "agent1", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/jobs/job1", + "name": "job1", + "type": "Microsoft.Sql/servers/jobAccounts/jobs", + "properties": { + "description": "my favourite job", + "version": 0, + "schedule": { + "startTime": "2015-09-24T18:30:01Z", + "endTime": "2015-09-24T23:59:59Z", + "type": "Recurring", + "interval": "PT5M", + "enabled": true + } + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/jobs/job3", + "name": "job3", + "type": "Microsoft.Sql/servers/jobAccounts/jobs", + "properties": { + "description": "this job will be scheduled once", + "version": 1, + "schedule": { + "startTime": "2017-07-01T03:45:00Z", + "endTime": "2017-12-27T06:00:00Z", + "type": "Once", + "enabled": true + } + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1/jobs/job2", + "name": "job2", + "type": "Microsoft.Sql/servers/jobAccounts/jobs", + "properties": { + "description": "this job will never be automatically scheduled", + "version": 1, + "schedule": { + "startTime": "2017-07-01T03:45:00Z", + "endTime": "2017-12-27T06:00:00Z", + "type": "Once", + "enabled": false + } + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListManagedInstanceOperations.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListManagedInstanceOperations.json new file mode 100644 index 000000000000..437d42749c2f --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListManagedInstanceOperations.json @@ -0,0 +1,121 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "managedInstanceName": "sqlcrudtest-4645", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "managedInstanceName": "sqlcrudtest-4645", + "operation": "UpsertManagedServer", + "operationFriendlyName": "UPDATE MANAGED SERVER", + "percentComplete": 100, + "startTime": "2019-12-06T11:08:44.49Z", + "state": "Cancelled", + "isCancellable": false + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/managedInstances/sqlcrudtest-4645/operations/11111111-1111-1111-1111-111111111111", + "name": "11111111-1111-1111-1111-111111111111", + "type": "Microsoft.Sql/managedInstances/operations" + }, + { + "properties": { + "managedInstanceName": "sqlcrudtest-4645", + "operation": "UpsertManagedServer", + "operationFriendlyName": "UPDATE MANAGED SERVER", + "percentComplete": 50, + "startTime": "2019-12-06T11:08:44.49Z", + "state": "InProgress", + "isCancellable": true, + "operationParameters": { + "currentParameters": { + "family": "Gen4", + "tier": "GeneralPurpose", + "vCores": 8, + "storageSizeInGB": 32 + }, + "requestedParameters": { + "family": "Gen4", + "tier": "BusinessCritical", + "vCores": 8, + "storageSizeInGB": 128 + } + }, + "operationSteps": { + "totalSteps": "3", + "currentStep": 3, + "stepsList": [ + { + "order": 1, + "name": "Request validation", + "status": "Completed" + }, + { + "order": 2, + "name": "Virtual Cluster resize/creation", + "status": "Completed" + }, + { + "order": 3, + "name": "New SQL Instance Startup", + "status": "InProgress" + } + ] + } + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/managedInstances/sqlcrudtest-4645/operations/22222222-2222-2222-2222-222222222222", + "name": "22222222-2222-2222-2222-222222222222", + "type": "Microsoft.Sql/managedInstances/operations" + }, + { + "properties": { + "managedInstanceName": "sqlcrudtest-4645", + "operation": "UpsertManagedServer", + "operationFriendlyName": "UPDATE MANAGED SERVER", + "percentComplete": 100, + "startTime": "2019-12-06T14:48:34.583Z", + "state": "Failed", + "errorCode": 45157, + "errorDescription": "Server 'sqlcrudtest-4645' is busy with another operation. Please try your operation later.", + "errorSeverity": 16, + "isUserError": true, + "isCancellable": false + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/managedInstances/sqlcrudtest-4645/operations/33333333-3333-3333-3333-333333333333", + "name": "33333333-3333-3333-3333-333333333333", + "type": "Microsoft.Sql/managedInstances/operations" + }, + { + "properties": { + "managedInstanceName": "sqlcrudtest-4645", + "operation": "MakeAllManagedDatabasesAccessible", + "operationFriendlyName": "MAKE ALL MANAGED DBS ACCESSIBLE", + "percentComplete": 100, + "startTime": "2017-06-01T09:00:08.1Z", + "state": "Succeeded", + "operationSteps": { + "totalSteps": "1", + "currentStep": 1, + "stepsList": [ + { + "order": 1, + "name": "Request validation", + "status": "Failed" + } + ] + } + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/managedInstances/sqlcrudtest-4645/operations/44444444-4444-4444-4444-444444444444", + "name": "44444444-4444-4444-4444-444444444444", + "type": "Microsoft.Sql/managedInstances/operations" + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListRecoverableManagedDatabasesByServer.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListRecoverableManagedDatabasesByServer.json new file mode 100644 index 000000000000..e572ae95beae --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListRecoverableManagedDatabasesByServer.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Test1", + "managedInstanceName": "managedInstance", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "lastAvailableBackupDate": "2017-05-26T01:06:29.78Z" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/managedInstances/testsvr/recoverableDaatabases/testdb", + "name": "testdb", + "type": "Microsoft.Sql/managedInstances/recoverableDaatabases" + }, + { + "properties": { + "lastAvailableBackupDate": "2018-04-26T02:17:23.44Z" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/managedInstances/testsvr/recoverableDaatabases/testdb2", + "name": "testdb2", + "type": "Microsoft.Sql/managedInstances/recoverableDaatabases" + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListRestorableDroppedDatabasesByServer.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListRestorableDroppedDatabasesByServer.json new file mode 100644 index 000000000000..ce69b6fb285f --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListRestorableDroppedDatabasesByServer.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "sku": { + "name": "BC_Gen4_2", + "tier": "BusinessCritical" + }, + "properties": { + "databaseName": "testdb", + "maxSizeBytes": 268435456000, + "creationDate": "2017-06-07T04:41:33.937Z", + "deletionDate": "2017-05-27T02:49:47.69Z", + "backupStorageRedundancy": "Geo" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/restorableDroppedDatabases/testdb", + "name": "testdb,131403269876900000", + "type": "Microsoft.Sql/servers/restorableDroppedDatabases" + }, + { + "sku": { + "name": "GP_Gen4_2", + "tier": "GeneralPurpose" + }, + "properties": { + "databaseName": "testdb2", + "maxSizeBytes": 268435456000, + "creationDate": "2017-06-07T04:41:33.937Z", + "deletionDate": "2017-05-27T02:49:47.69Z", + "backupStorageRedundancy": "Geo" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/restorableDroppedDatabases/testdb2", + "name": "testdb2,131403269876900000", + "type": "Microsoft.Sql/servers/restorableDroppedDatabases" + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListServerOperations.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListServerOperations.json new file mode 100644 index 000000000000..1f791e52a1ff --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListServerOperations.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "serverName": "sqlcrudtest-4645", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/operations/11111111-1111-1111-1111-111111111111", + "name": "11111111-1111-1111-1111-111111111111", + "type": "Microsoft.Sql/servers/operations", + "properties": { + "operation": "MakeAllLogicalDatabasesAccessible", + "operationFriendlyName": "MAKE ALL DBS ACCESSIBLE", + "percentComplete": 0, + "serverName": "sqlcrudtest-4645", + "startTime": "2017-06-01T09:10:08.1Z", + "state": "InProgress" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/operations/22222222-2222-2222-2222-222222222222", + "name": "22222222-2222-2222-2222-222222222222", + "type": "Microsoft.Sql/servers/operations", + "properties": { + "operation": "MakeAllLogicalDatabasesAccessible", + "operationFriendlyName": "MAKE ALL DBS ACCESSIBLE", + "percentComplete": 100, + "serverName": "sqlcrudtest-4645", + "startTime": "2017-06-01T09:00:08.1Z", + "state": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListShortTermRetentionPoliciesByDatabase.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListShortTermRetentionPoliciesByDatabase.json new file mode 100644 index 000000000000..258eff2aef48 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListShortTermRetentionPoliciesByDatabase.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdb", + "policyName": "default", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb/backupShortTermRetentionPolicies/default", + "name": "default", + "type": "Microsoft.Sql/servers/databases/backupShortTermRetentionPolicies", + "properties": { + "retentionDays": 14 + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListVCoreDatabasesByServer.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListVCoreDatabasesByServer.json new file mode 100644 index 000000000000..f95b30077179 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListVCoreDatabasesByServer.json @@ -0,0 +1,87 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "sku": { + "name": "BC_Gen4", + "tier": "BusinessCritical", + "capacity": 2 + }, + "kind": "v12.0,user,vcore", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 268435456000, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "creationDate": "2017-06-07T04:41:33.937Z", + "currentServiceObjectiveName": "BC_Gen4_2", + "requestedServiceObjectiveName": "BC_Gen4_2", + "defaultSecondaryLocation": "North Europe", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "licenseType": "LicenseIncluded", + "maxLogSizeBytes": 104857600, + "isInfraEncryptionEnabled": false, + "zoneRedundant": false, + "readScale": "Enabled", + "earliestRestoreDate": "2017-06-07T04:51:33.937Z", + "currentSku": { + "name": "BC_Gen4", + "tier": "BusinessCritical", + "capacity": 2 + }, + "currentBackupStorageRedundancy": "Zone", + "requestedBackupStorageRedundancy": "Zone", + "isLedgerOn": false + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "name": "testdb", + "type": "Microsoft.Sql/servers/databases" + }, + { + "sku": { + "name": "System0", + "tier": "System", + "capacity": 0 + }, + "kind": "v12.0,system", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 32212254720, + "status": "Online", + "databaseId": "e6be351f-2cc9-4604-9e52-b0b28b2710b0", + "creationDate": "2017-06-07T04:23:42.537Z", + "currentServiceObjectiveName": "System0", + "requestedServiceObjectiveName": "System0", + "defaultSecondaryLocation": "North Europe", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "isInfraEncryptionEnabled": false, + "zoneRedundant": false, + "readScale": "Disabled", + "currentSku": { + "name": "System0", + "tier": "System", + "capacity": 0 + }, + "currentBackupStorageRedundancy": "Local", + "requestedBackupStorageRedundancy": "Local", + "isLedgerOn": false + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/master", + "name": "master", + "type": "Microsoft.Sql/servers/databases" + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListVCoreInaccessibleDatabasesByServer.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListVCoreInaccessibleDatabasesByServer.json new file mode 100644 index 000000000000..b85abb5f959e --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ListVCoreInaccessibleDatabasesByServer.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "sku": { + "name": "BC_Gen4", + "tier": "BusinessCritical", + "capacity": 2 + }, + "kind": "v12.0,user,vcore", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 268435456000, + "status": "Inaccessible", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "creationDate": "2017-06-07T04:41:33.937Z", + "currentServiceObjectiveName": "BC_Gen4_2", + "defaultSecondaryLocation": "North Europe", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "licenseType": "LicenseIncluded", + "maxLogSizeBytes": 104857600, + "readScale": "Enabled" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "name": "testdb", + "type": "Microsoft.Sql/servers/databases" + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/LocationCapabilityListByLocation.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/LocationCapabilityListByLocation.json new file mode 100644 index 000000000000..f137e48913f6 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/LocationCapabilityListByLocation.json @@ -0,0 +1,3164 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "locationName": "eastus", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "name": "East US", + "supportedServerVersions": [ + { + "name": "12.0", + "supportedEditions": [ + { + "name": "Hyperscale", + "supportedServiceLevelObjectives": [ + { + "id": "9380cd0e-b025-4e9d-829c-c1918c1614bb", + "name": "HS_Gen4_1", + "performanceLevel": { + "value": 1, + "unit": "VCores" + }, + "sku": { + "name": "HS_Gen4", + "tier": "Hyperscale", + "family": "Gen4", + "capacity": 1 + }, + "supportedLicenseTypes": [ + { + "name": "LicenseIncluded", + "status": "Default" + }, + { + "name": "BasePrice", + "status": "Available" + } + ], + "zoneRedundant": false, + "computeModel": "Provisioned", + "supportedMaintenanceConfigurations": [ + { + "name": "SQL_Default", + "status": "Default", + "zoneRedundant": false + } + ], + "status": "Available" + }, + { + "id": "34497c3f-24b9-4cee-968d-6e5e854670fe", + "name": "HS_Gen4_2", + "performanceLevel": { + "value": 2, + "unit": "VCores" + }, + "sku": { + "name": "HS_Gen4", + "tier": "Hyperscale", + "family": "Gen4", + "capacity": 2 + }, + "supportedLicenseTypes": [ + { + "name": "LicenseIncluded", + "status": "Default" + }, + { + "name": "BasePrice", + "status": "Available" + } + ], + "zoneRedundant": false, + "computeModel": "Provisioned", + "supportedMaintenanceConfigurations": [ + { + "name": "SQL_Default", + "status": "Default", + "zoneRedundant": false + } + ], + "status": "Available" + }, + { + "id": "a420d2b2-ca32-4152-b1c6-dd8d4d9fd734", + "name": "HS_Gen5_2", + "performanceLevel": { + "value": 2, + "unit": "VCores" + }, + "sku": { + "name": "HS_Gen5", + "tier": "Hyperscale", + "family": "Gen5", + "capacity": 2 + }, + "supportedLicenseTypes": [ + { + "name": "LicenseIncluded", + "status": "Default" + }, + { + "name": "BasePrice", + "status": "Available" + } + ], + "zoneRedundant": false, + "computeModel": "Provisioned", + "supportedMaintenanceConfigurations": [ + { + "name": "SQL_Default", + "status": "Default", + "zoneRedundant": false + } + ], + "status": "Default" + }, + { + "id": "5de845d2-2055-428c-b507-94131358cdd7", + "name": "HS_Gen4_3", + "performanceLevel": { + "value": 3, + "unit": "VCores" + }, + "sku": { + "name": "HS_Gen4", + "tier": "Hyperscale", + "family": "Gen4", + "capacity": 3 + }, + "supportedLicenseTypes": [ + { + "name": "LicenseIncluded", + "status": "Default" + }, + { + "name": "BasePrice", + "status": "Available" + } + ], + "zoneRedundant": false, + "computeModel": "Provisioned", + "supportedMaintenanceConfigurations": [ + { + "name": "SQL_Default", + "status": "Default", + "zoneRedundant": false + } + ], + "status": "Available" + }, + { + "id": "d060b874-21f3-47b0-a9bd-a1a737cfcc6e", + "name": "HS_Gen4_4", + "performanceLevel": { + "value": 4, + "unit": "VCores" + }, + "sku": { + "name": "HS_Gen4", + "tier": "Hyperscale", + "family": "Gen4", + "capacity": 4 + }, + "supportedLicenseTypes": [ + { + "name": "LicenseIncluded", + "status": "Default" + }, + { + "name": "BasePrice", + "status": "Available" + } + ], + "zoneRedundant": false, + "computeModel": "Provisioned", + "supportedMaintenanceConfigurations": [ + { + "name": "SQL_Default", + "status": "Default", + "zoneRedundant": false + } + ], + "status": "Available" + }, + { + "id": "60dba88b-2dfa-4123-be57-bd0dbfd92a72", + "name": "HS_Gen5_4", + "performanceLevel": { + "value": 4, + "unit": "VCores" + }, + "sku": { + "name": "HS_Gen5", + "tier": "Hyperscale", + "family": "Gen5", + "capacity": 4 + }, + "supportedLicenseTypes": [ + { + "name": "LicenseIncluded", + "status": "Default" + }, + { + "name": "BasePrice", + "status": "Available" + } + ], + "zoneRedundant": false, + "computeModel": "Provisioned", + "supportedMaintenanceConfigurations": [ + { + "name": "SQL_Default", + "status": "Default", + "zoneRedundant": false + } + ], + "status": "Available" + }, + { + "id": "925a0916-15fb-4764-aa76-533d97f2d782", + "name": "HS_Gen4_5", + "performanceLevel": { + "value": 5, + "unit": "VCores" + }, + "sku": { + "name": "HS_Gen4", + "tier": "Hyperscale", + "family": "Gen4", + "capacity": 5 + }, + "supportedLicenseTypes": [ + { + "name": "LicenseIncluded", + "status": "Default" + }, + { + "name": "BasePrice", + "status": "Available" + } + ], + "zoneRedundant": false, + "computeModel": "Provisioned", + "supportedMaintenanceConfigurations": [ + { + "name": "SQL_Default", + "status": "Default", + "zoneRedundant": false + } + ], + "status": "Available" + }, + { + "id": "d7aa11c2-e4c7-442a-962e-308b371f5ec1", + "name": "HS_Gen4_6", + "performanceLevel": { + "value": 6, + "unit": "VCores" + }, + "sku": { + "name": "HS_Gen4", + "tier": "Hyperscale", + "family": "Gen4", + "capacity": 6 + }, + "supportedLicenseTypes": [ + { + "name": "LicenseIncluded", + "status": "Default" + }, + { + "name": "BasePrice", + "status": "Available" + } + ], + "zoneRedundant": false, + "computeModel": "Provisioned", + "supportedMaintenanceConfigurations": [ + { + "name": "SQL_Default", + "status": "Default", + "zoneRedundant": false + } + ], + "status": "Available" + }, + { + "id": "b9c594ec-a3fe-4bfe-808d-a595410d0a07", + "name": "HS_Gen5_6", + "performanceLevel": { + "value": 6, + "unit": "VCores" + }, + "sku": { + "name": "HS_Gen5", + "tier": "Hyperscale", + "family": "Gen5", + "capacity": 6 + }, + "supportedLicenseTypes": [ + { + "name": "LicenseIncluded", + "status": "Default" + }, + { + "name": "BasePrice", + "status": "Available" + } + ], + "zoneRedundant": false, + "computeModel": "Provisioned", + "supportedMaintenanceConfigurations": [ + { + "name": "SQL_Default", + "status": "Default", + "zoneRedundant": false + } + ], + "status": "Available" + }, + { + "id": "d77eef57-6c00-4003-b140-822509b8736a", + "name": "HS_Gen4_7", + "performanceLevel": { + "value": 7, + "unit": "VCores" + }, + "sku": { + "name": "HS_Gen4", + "tier": "Hyperscale", + "family": "Gen4", + "capacity": 7 + }, + "supportedLicenseTypes": [ + { + "name": "LicenseIncluded", + "status": "Default" + }, + { + "name": "BasePrice", + "status": "Available" + } + ], + "zoneRedundant": false, + "computeModel": "Provisioned", + "supportedMaintenanceConfigurations": [ + { + "name": "SQL_Default", + "status": "Default", + "zoneRedundant": false + } + ], + "status": "Available" + }, + { + "id": "694bf389-7cb2-4461-8fa2-0b06d8438315", + "name": "HS_Gen4_8", + "performanceLevel": { + "value": 8, + "unit": "VCores" + }, + "sku": { + "name": "HS_Gen4", + "tier": "Hyperscale", + "family": "Gen4", + "capacity": 8 + }, + "supportedLicenseTypes": [ + { + "name": "LicenseIncluded", + "status": "Default" + }, + { + "name": "BasePrice", + "status": "Available" + } + ], + "zoneRedundant": false, + "computeModel": "Provisioned", + "supportedMaintenanceConfigurations": [ + { + "name": "SQL_Default", + "status": "Default", + "zoneRedundant": false + } + ], + "status": "Available" + }, + { + "id": "efdfac5f-3f8e-4500-95b1-684c07349860", + "name": "HS_Gen5_8", + "performanceLevel": { + "value": 8, + "unit": "VCores" + }, + "sku": { + "name": "HS_Gen5", + "tier": "Hyperscale", + "family": "Gen5", + "capacity": 8 + }, + "supportedLicenseTypes": [ + { + "name": "LicenseIncluded", + "status": "Default" + }, + { + "name": "BasePrice", + "status": "Available" + } + ], + "zoneRedundant": false, + "computeModel": "Provisioned", + "supportedMaintenanceConfigurations": [ + { + "name": "SQL_Default", + "status": "Default", + "zoneRedundant": false + } + ], + "status": "Available" + }, + { + "id": "554ea52a-9ecc-4d87-bbc7-1e257705da3f", + "name": "HS_Gen4_9", + "performanceLevel": { + "value": 9, + "unit": "VCores" + }, + "sku": { + "name": "HS_Gen4", + "tier": "Hyperscale", + "family": "Gen4", + "capacity": 9 + }, + "supportedLicenseTypes": [ + { + "name": "LicenseIncluded", + "status": "Default" + }, + { + "name": "BasePrice", + "status": "Available" + } + ], + "zoneRedundant": false, + "computeModel": "Provisioned", + "supportedMaintenanceConfigurations": [ + { + "name": "SQL_Default", + "status": "Default", + "zoneRedundant": false + } + ], + "status": "Available" + }, + { + "id": "576f3f38-b950-4eaa-b74e-33d831193441", + "name": "HS_Gen4_10", + "performanceLevel": { + "value": 10, + "unit": "VCores" + }, + "sku": { + "name": "HS_Gen4", + "tier": "Hyperscale", + "family": "Gen4", + "capacity": 10 + }, + "supportedLicenseTypes": [ + { + "name": "LicenseIncluded", + "status": "Default" + }, + { + "name": "BasePrice", + "status": "Available" + } + ], + "zoneRedundant": false, + "computeModel": "Provisioned", + "supportedMaintenanceConfigurations": [ + { + "name": "SQL_Default", + "status": "Default", + "zoneRedundant": false + } + ], + "status": "Available" + }, + { + "id": "69697c3a-1946-4eb8-a5a4-a269168dde27", + "name": "HS_Gen5_10", + "performanceLevel": { + "value": 10, + "unit": "VCores" + }, + "sku": { + "name": "HS_Gen5", + "tier": "Hyperscale", + "family": "Gen5", + "capacity": 10 + }, + "supportedLicenseTypes": [ + { + "name": "LicenseIncluded", + "status": "Default" + }, + { + "name": "BasePrice", + "status": "Available" + } + ], + "zoneRedundant": false, + "computeModel": "Provisioned", + "supportedMaintenanceConfigurations": [ + { + "name": "SQL_Default", + "status": "Default", + "zoneRedundant": false + } + ], + "status": "Available" + }, + { + "id": "1bee9dc8-68b4-44df-b870-8ab0e4d71e94", + "name": "HS_Gen5_12", + "performanceLevel": { + "value": 12, + "unit": "VCores" + }, + "sku": { + "name": "HS_Gen5", + "tier": "Hyperscale", + "family": "Gen5", + "capacity": 12 + }, + "supportedLicenseTypes": [ + { + "name": "LicenseIncluded", + "status": "Default" + }, + { + "name": "BasePrice", + "status": "Available" + } + ], + "zoneRedundant": false, + "computeModel": "Provisioned", + "supportedMaintenanceConfigurations": [ + { + "name": "SQL_Default", + "status": "Default", + "zoneRedundant": false + } + ], + "status": "Available" + }, + { + "id": "07a8341d-c0b2-4000-bc7a-5b4dae2ad210", + "name": "HS_Gen5_14", + "performanceLevel": { + "value": 14, + "unit": "VCores" + }, + "sku": { + "name": "HS_Gen5", + "tier": "Hyperscale", + "family": "Gen5", + "capacity": 14 + }, + "supportedLicenseTypes": [ + { + "name": "LicenseIncluded", + "status": "Default" + }, + { + "name": "BasePrice", + "status": "Available" + } + ], + "zoneRedundant": false, + "computeModel": "Provisioned", + "supportedMaintenanceConfigurations": [ + { + "name": "SQL_Default", + "status": "Default", + "zoneRedundant": false + } + ], + "status": "Available" + }, + { + "id": "7fc1f700-a45d-499e-901f-2a00645c54db", + "name": "HS_Gen4_16", + "performanceLevel": { + "value": 16, + "unit": "VCores" + }, + "sku": { + "name": "HS_Gen4", + "tier": "Hyperscale", + "family": "Gen4", + "capacity": 16 + }, + "supportedLicenseTypes": [ + { + "name": "LicenseIncluded", + "status": "Default" + }, + { + "name": "BasePrice", + "status": "Available" + } + ], + "zoneRedundant": false, + "computeModel": "Provisioned", + "supportedMaintenanceConfigurations": [ + { + "name": "SQL_Default", + "status": "Default", + "zoneRedundant": false + } + ], + "status": "Available" + }, + { + "id": "6b56f70b-52e5-44ba-8cd5-4f63d224b206", + "name": "HS_Gen5_16", + "performanceLevel": { + "value": 16, + "unit": "VCores" + }, + "sku": { + "name": "HS_Gen5", + "tier": "Hyperscale", + "family": "Gen5", + "capacity": 16 + }, + "supportedLicenseTypes": [ + { + "name": "LicenseIncluded", + "status": "Default" + }, + { + "name": "BasePrice", + "status": "Available" + } + ], + "zoneRedundant": false, + "computeModel": "Provisioned", + "supportedMaintenanceConfigurations": [ + { + "name": "SQL_Default", + "status": "Default", + "zoneRedundant": false + } + ], + "status": "Available" + }, + { + "id": "ba0029f2-3ff4-4ef6-9e65-e8f77b5dd1e2", + "name": "HS_Gen5_18", + "performanceLevel": { + "value": 18, + "unit": "VCores" + }, + "sku": { + "name": "HS_Gen5", + "tier": "Hyperscale", + "family": "Gen5", + "capacity": 18 + }, + "supportedLicenseTypes": [ + { + "name": "LicenseIncluded", + "status": "Default" + }, + { + "name": "BasePrice", + "status": "Available" + } + ], + "zoneRedundant": false, + "computeModel": "Provisioned", + "supportedMaintenanceConfigurations": [ + { + "name": "SQL_Default", + "status": "Default", + "zoneRedundant": false + } + ], + "status": "Available" + }, + { + "id": "f1b2a082-f622-4fb8-bbef-e74deac3ec89", + "name": "HS_Gen5_20", + "performanceLevel": { + "value": 20, + "unit": "VCores" + }, + "sku": { + "name": "HS_Gen5", + "tier": "Hyperscale", + "family": "Gen5", + "capacity": 20 + }, + "supportedLicenseTypes": [ + { + "name": "LicenseIncluded", + "status": "Default" + }, + { + "name": "BasePrice", + "status": "Available" + } + ], + "zoneRedundant": false, + "computeModel": "Provisioned", + "supportedMaintenanceConfigurations": [ + { + "name": "SQL_Default", + "status": "Default", + "zoneRedundant": false + } + ], + "status": "Available" + }, + { + "id": "f016d419-a031-4b93-ab62-7f3d2a789376", + "name": "HS_Gen4_24", + "performanceLevel": { + "value": 24, + "unit": "VCores" + }, + "sku": { + "name": "HS_Gen4", + "tier": "Hyperscale", + "family": "Gen4", + "capacity": 24 + }, + "supportedLicenseTypes": [ + { + "name": "LicenseIncluded", + "status": "Default" + }, + { + "name": "BasePrice", + "status": "Available" + } + ], + "zoneRedundant": false, + "computeModel": "Provisioned", + "supportedMaintenanceConfigurations": [ + { + "name": "SQL_Default", + "status": "Default", + "zoneRedundant": false + } + ], + "status": "Available" + }, + { + "id": "222bc0ee-e195-4bbc-be05-3b849c3a8195", + "name": "HS_Gen5_24", + "performanceLevel": { + "value": 24, + "unit": "VCores" + }, + "sku": { + "name": "HS_Gen5", + "tier": "Hyperscale", + "family": "Gen5", + "capacity": 24 + }, + "supportedLicenseTypes": [ + { + "name": "LicenseIncluded", + "status": "Default" + }, + { + "name": "BasePrice", + "status": "Available" + } + ], + "zoneRedundant": false, + "computeModel": "Provisioned", + "supportedMaintenanceConfigurations": [ + { + "name": "SQL_Default", + "status": "Default", + "zoneRedundant": false + } + ], + "status": "Available" + }, + { + "id": "05366cca-cc70-486e-a697-bb3fab877f75", + "name": "HS_Gen5_32", + "performanceLevel": { + "value": 32, + "unit": "VCores" + }, + "sku": { + "name": "HS_Gen5", + "tier": "Hyperscale", + "family": "Gen5", + "capacity": 32 + }, + "supportedLicenseTypes": [ + { + "name": "LicenseIncluded", + "status": "Default" + }, + { + "name": "BasePrice", + "status": "Available" + } + ], + "zoneRedundant": false, + "computeModel": "Provisioned", + "supportedMaintenanceConfigurations": [ + { + "name": "SQL_Default", + "status": "Default", + "zoneRedundant": false + } + ], + "status": "Available" + }, + { + "id": "32542ef7-124d-4e66-8b41-9c6c0ab963c2", + "name": "HS_Gen5_40", + "performanceLevel": { + "value": 40, + "unit": "VCores" + }, + "sku": { + "name": "HS_Gen5", + "tier": "Hyperscale", + "family": "Gen5", + "capacity": 40 + }, + "supportedLicenseTypes": [ + { + "name": "LicenseIncluded", + "status": "Default" + }, + { + "name": "BasePrice", + "status": "Available" + } + ], + "zoneRedundant": false, + "computeModel": "Provisioned", + "supportedMaintenanceConfigurations": [ + { + "name": "SQL_Default", + "status": "Default", + "zoneRedundant": false + } + ], + "status": "Available" + }, + { + "id": "6509db45-febe-44dd-a079-35f11d477984", + "name": "HS_Gen5_80", + "performanceLevel": { + "value": 80, + "unit": "VCores" + }, + "sku": { + "name": "HS_Gen5", + "tier": "Hyperscale", + "family": "Gen5", + "capacity": 80 + }, + "supportedLicenseTypes": [ + { + "name": "LicenseIncluded", + "status": "Default" + }, + { + "name": "BasePrice", + "status": "Available" + } + ], + "zoneRedundant": false, + "computeModel": "Provisioned", + "supportedMaintenanceConfigurations": [ + { + "name": "SQL_Default", + "status": "Default", + "zoneRedundant": false + } + ], + "status": "Available" + } + ], + "zoneRedundant": false, + "readScale": { + "maxNumberOfReplicas": 4 + }, + "supportedStorageCapabilities": [ + { + "storageAccountType": "GRS", + "status": "Default" + }, + { + "storageAccountType": "LRS", + "status": "Available" + }, + { + "storageAccountType": "ZRS", + "status": "Available", + "reason": "ZRS is available in multi-az regions" + } + ], + "status": "Available" + } + ], + "supportedElasticPoolEditions": [ + { + "name": "BusinessCritical", + "supportedElasticPoolPerformanceLevels": [ + { + "performanceLevel": { + "value": 3, + "unit": "VCores" + }, + "sku": { + "name": "BC_Gen4", + "tier": "BusinessCritical", + "family": "Gen4", + "capacity": 3 + }, + "supportedLicenseTypes": [ + { + "name": "LicenseIncluded", + "status": "Default" + }, + { + "name": "BasePrice", + "status": "Available" + } + ], + "maxDatabaseCount": 100, + "supportedMaxSizes": [ + { + "minValue": { + "limit": 1024, + "unit": "Megabytes" + }, + "maxValue": { + "limit": 31744, + "unit": "Megabytes" + }, + "scaleSize": { + "limit": 1024, + "unit": "Megabytes" + }, + "logSize": { + "limit": 30, + "unit": "Percent" + }, + "status": "Available" + }, + { + "minValue": { + "limit": 32768, + "unit": "Megabytes" + }, + "maxValue": { + "limit": 32768, + "unit": "Megabytes" + }, + "scaleSize": { + "limit": 0, + "unit": "Megabytes" + }, + "logSize": { + "limit": 30, + "unit": "Percent" + }, + "status": "Default" + }, + { + "minValue": { + "limit": 33792, + "unit": "Megabytes" + }, + "maxValue": { + "limit": 1048576, + "unit": "Megabytes" + }, + "scaleSize": { + "limit": 1024, + "unit": "Megabytes" + }, + "logSize": { + "limit": 30, + "unit": "Percent" + }, + "status": "Available" + } + ], + "supportedPerDatabaseMaxSizes": [ + { + "minValue": { + "limit": 1024, + "unit": "Megabytes" + }, + "maxValue": { + "limit": 31744, + "unit": "Megabytes" + }, + "scaleSize": { + "limit": 1024, + "unit": "Megabytes" + }, + "status": "Available" + }, + { + "minValue": { + "limit": 32768, + "unit": "Megabytes" + }, + "maxValue": { + "limit": 32768, + "unit": "Megabytes" + }, + "scaleSize": { + "limit": 0, + "unit": "Megabytes" + }, + "status": "Default" + }, + { + "minValue": { + "limit": 33792, + "unit": "Megabytes" + }, + "maxValue": { + "limit": 1048576, + "unit": "Megabytes" + }, + "scaleSize": { + "limit": 1024, + "unit": "Megabytes" + }, + "status": "Available" + } + ], + "supportedPerDatabaseMaxPerformanceLevels": [ + { + "limit": 0.25, + "unit": "VCores", + "supportedPerDatabaseMinPerformanceLevels": [ + { + "limit": 0, + "unit": "VCores", + "status": "Default" + }, + { + "limit": 0.25, + "unit": "VCores", + "status": "Available" + } + ], + "status": "Available" + }, + { + "limit": 0.5, + "unit": "VCores", + "supportedPerDatabaseMinPerformanceLevels": [ + { + "limit": 0, + "unit": "VCores", + "status": "Default" + }, + { + "limit": 0.25, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 0.5, + "unit": "VCores", + "status": "Available" + } + ], + "status": "Available" + }, + { + "limit": 1, + "unit": "VCores", + "supportedPerDatabaseMinPerformanceLevels": [ + { + "limit": 0, + "unit": "VCores", + "status": "Default" + }, + { + "limit": 0.25, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 0.5, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 1, + "unit": "VCores", + "status": "Available" + } + ], + "status": "Available" + }, + { + "limit": 2, + "unit": "VCores", + "supportedPerDatabaseMinPerformanceLevels": [ + { + "limit": 0, + "unit": "VCores", + "status": "Default" + }, + { + "limit": 0.25, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 0.5, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 1, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 2, + "unit": "VCores", + "status": "Available" + } + ], + "status": "Available" + }, + { + "limit": 3, + "unit": "VCores", + "supportedPerDatabaseMinPerformanceLevels": [ + { + "limit": 0, + "unit": "VCores", + "status": "Default" + }, + { + "limit": 0.25, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 0.5, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 1, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 2, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 3, + "unit": "VCores", + "status": "Available" + } + ], + "status": "Default" + } + ], + "zoneRedundant": false, + "supportedMaintenanceConfigurations": [ + { + "name": "SQL_Default", + "status": "Default", + "zoneRedundant": false + }, + { + "name": "SQL_EastUS_DB_1", + "status": "Available", + "zoneRedundant": false + }, + { + "name": "SQL_EastUS_DB_2", + "status": "Available", + "zoneRedundant": false + } + ], + "status": "Available" + }, + { + "performanceLevel": { + "value": 12, + "unit": "VCores" + }, + "sku": { + "name": "BC_Gen5", + "tier": "BusinessCritical", + "family": "Gen5", + "capacity": 12 + }, + "supportedLicenseTypes": [ + { + "name": "LicenseIncluded", + "status": "Default" + }, + { + "name": "BasePrice", + "status": "Available" + } + ], + "maxDatabaseCount": 100, + "supportedMaxSizes": [ + { + "minValue": { + "limit": 1024, + "unit": "Megabytes" + }, + "maxValue": { + "limit": 31744, + "unit": "Megabytes" + }, + "scaleSize": { + "limit": 1024, + "unit": "Megabytes" + }, + "logSize": { + "limit": 30, + "unit": "Percent" + }, + "status": "Available" + }, + { + "minValue": { + "limit": 32768, + "unit": "Megabytes" + }, + "maxValue": { + "limit": 32768, + "unit": "Megabytes" + }, + "scaleSize": { + "limit": 0, + "unit": "Megabytes" + }, + "logSize": { + "limit": 30, + "unit": "Percent" + }, + "status": "Default" + }, + { + "minValue": { + "limit": 33792, + "unit": "Megabytes" + }, + "maxValue": { + "limit": 3144704, + "unit": "Megabytes" + }, + "scaleSize": { + "limit": 1024, + "unit": "Megabytes" + }, + "logSize": { + "limit": 30, + "unit": "Percent" + }, + "status": "Available" + }, + { + "minValue": { + "limit": 3145728, + "unit": "Megabytes" + }, + "maxValue": { + "limit": 3145728, + "unit": "Megabytes" + }, + "scaleSize": { + "limit": 0, + "unit": "Megabytes" + }, + "logSize": { + "limit": 1048576, + "unit": "Megabytes" + }, + "status": "Available" + } + ], + "supportedPerDatabaseMaxSizes": [ + { + "minValue": { + "limit": 1024, + "unit": "Megabytes" + }, + "maxValue": { + "limit": 31744, + "unit": "Megabytes" + }, + "scaleSize": { + "limit": 1024, + "unit": "Megabytes" + }, + "status": "Available" + }, + { + "minValue": { + "limit": 32768, + "unit": "Megabytes" + }, + "maxValue": { + "limit": 32768, + "unit": "Megabytes" + }, + "scaleSize": { + "limit": 0, + "unit": "Megabytes" + }, + "status": "Default" + }, + { + "minValue": { + "limit": 33792, + "unit": "Megabytes" + }, + "maxValue": { + "limit": 3144704, + "unit": "Megabytes" + }, + "scaleSize": { + "limit": 1024, + "unit": "Megabytes" + }, + "status": "Available" + }, + { + "minValue": { + "limit": 3145728, + "unit": "Megabytes" + }, + "maxValue": { + "limit": 3145728, + "unit": "Megabytes" + }, + "scaleSize": { + "limit": 0, + "unit": "Megabytes" + }, + "status": "Available" + } + ], + "supportedPerDatabaseMaxPerformanceLevels": [ + { + "limit": 0.25, + "unit": "VCores", + "supportedPerDatabaseMinPerformanceLevels": [ + { + "limit": 0, + "unit": "VCores", + "status": "Default" + }, + { + "limit": 0.25, + "unit": "VCores", + "status": "Available" + } + ], + "status": "Available" + }, + { + "limit": 0.5, + "unit": "VCores", + "supportedPerDatabaseMinPerformanceLevels": [ + { + "limit": 0, + "unit": "VCores", + "status": "Default" + }, + { + "limit": 0.25, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 0.5, + "unit": "VCores", + "status": "Available" + } + ], + "status": "Available" + }, + { + "limit": 1, + "unit": "VCores", + "supportedPerDatabaseMinPerformanceLevels": [ + { + "limit": 0, + "unit": "VCores", + "status": "Default" + }, + { + "limit": 0.25, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 0.5, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 1, + "unit": "VCores", + "status": "Available" + } + ], + "status": "Available" + }, + { + "limit": 2, + "unit": "VCores", + "supportedPerDatabaseMinPerformanceLevels": [ + { + "limit": 0, + "unit": "VCores", + "status": "Default" + }, + { + "limit": 0.25, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 0.5, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 1, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 2, + "unit": "VCores", + "status": "Available" + } + ], + "status": "Available" + }, + { + "limit": 4, + "unit": "VCores", + "supportedPerDatabaseMinPerformanceLevels": [ + { + "limit": 0, + "unit": "VCores", + "status": "Default" + }, + { + "limit": 0.25, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 0.5, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 1, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 2, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 4, + "unit": "VCores", + "status": "Available" + } + ], + "status": "Available" + }, + { + "limit": 6, + "unit": "VCores", + "supportedPerDatabaseMinPerformanceLevels": [ + { + "limit": 0, + "unit": "VCores", + "status": "Default" + }, + { + "limit": 0.25, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 0.5, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 1, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 2, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 4, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 6, + "unit": "VCores", + "status": "Available" + } + ], + "status": "Available" + }, + { + "limit": 8, + "unit": "VCores", + "supportedPerDatabaseMinPerformanceLevels": [ + { + "limit": 0, + "unit": "VCores", + "status": "Default" + }, + { + "limit": 0.25, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 0.5, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 1, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 2, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 4, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 6, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 8, + "unit": "VCores", + "status": "Available" + } + ], + "status": "Available" + }, + { + "limit": 10, + "unit": "VCores", + "supportedPerDatabaseMinPerformanceLevels": [ + { + "limit": 0, + "unit": "VCores", + "status": "Default" + }, + { + "limit": 0.25, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 0.5, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 1, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 2, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 4, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 6, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 8, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 10, + "unit": "VCores", + "status": "Available" + } + ], + "status": "Available" + }, + { + "limit": 12, + "unit": "VCores", + "supportedPerDatabaseMinPerformanceLevels": [ + { + "limit": 0, + "unit": "VCores", + "status": "Default" + }, + { + "limit": 0.25, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 0.5, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 1, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 2, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 4, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 6, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 8, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 10, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 12, + "unit": "VCores", + "status": "Available" + } + ], + "status": "Default" + } + ], + "zoneRedundant": true, + "supportedMaintenanceConfigurations": [ + { + "name": "SQL_Default", + "status": "Default", + "zoneRedundant": false + }, + { + "name": "SQL_EastUS_DB_1", + "status": "Available", + "zoneRedundant": false + }, + { + "name": "SQL_EastUS_DB_2", + "status": "Available", + "zoneRedundant": false + } + ], + "status": "Available" + }, + { + "performanceLevel": { + "value": 128, + "unit": "VCores" + }, + "sku": { + "name": "BC_M", + "tier": "BusinessCritical", + "family": "M", + "capacity": 128 + }, + "supportedLicenseTypes": [ + { + "name": "LicenseIncluded", + "status": "Default" + }, + { + "name": "BasePrice", + "status": "Available" + } + ], + "maxDatabaseCount": 100, + "supportedMaxSizes": [ + { + "minValue": { + "limit": 1024, + "unit": "Megabytes" + }, + "maxValue": { + "limit": 31744, + "unit": "Megabytes" + }, + "scaleSize": { + "limit": 1024, + "unit": "Megabytes" + }, + "logSize": { + "limit": 30, + "unit": "Percent" + }, + "status": "Available" + }, + { + "minValue": { + "limit": 32768, + "unit": "Megabytes" + }, + "maxValue": { + "limit": 32768, + "unit": "Megabytes" + }, + "scaleSize": { + "limit": 0, + "unit": "Megabytes" + }, + "logSize": { + "limit": 30, + "unit": "Percent" + }, + "status": "Default" + }, + { + "minValue": { + "limit": 33792, + "unit": "Megabytes" + }, + "maxValue": { + "limit": 3144704, + "unit": "Megabytes" + }, + "scaleSize": { + "limit": 1024, + "unit": "Megabytes" + }, + "logSize": { + "limit": 30, + "unit": "Percent" + }, + "status": "Available" + }, + { + "minValue": { + "limit": 3145728, + "unit": "Megabytes" + }, + "maxValue": { + "limit": 4194304, + "unit": "Megabytes" + }, + "scaleSize": { + "limit": 1024, + "unit": "Megabytes" + }, + "logSize": { + "limit": 1048576, + "unit": "Megabytes" + }, + "status": "Available" + } + ], + "supportedPerDatabaseMaxSizes": [ + { + "minValue": { + "limit": 1024, + "unit": "Megabytes" + }, + "maxValue": { + "limit": 31744, + "unit": "Megabytes" + }, + "scaleSize": { + "limit": 1024, + "unit": "Megabytes" + }, + "status": "Available" + }, + { + "minValue": { + "limit": 32768, + "unit": "Megabytes" + }, + "maxValue": { + "limit": 32768, + "unit": "Megabytes" + }, + "scaleSize": { + "limit": 0, + "unit": "Megabytes" + }, + "status": "Default" + }, + { + "minValue": { + "limit": 33792, + "unit": "Megabytes" + }, + "maxValue": { + "limit": 3144704, + "unit": "Megabytes" + }, + "scaleSize": { + "limit": 1024, + "unit": "Megabytes" + }, + "status": "Available" + }, + { + "minValue": { + "limit": 3145728, + "unit": "Megabytes" + }, + "maxValue": { + "limit": 4194304, + "unit": "Megabytes" + }, + "scaleSize": { + "limit": 1024, + "unit": "Megabytes" + }, + "status": "Available" + } + ], + "supportedPerDatabaseMaxPerformanceLevels": [ + { + "limit": 8, + "unit": "VCores", + "supportedPerDatabaseMinPerformanceLevels": [ + { + "limit": 0, + "unit": "VCores", + "status": "Default" + }, + { + "limit": 8, + "unit": "VCores", + "status": "Available" + } + ], + "status": "Available" + }, + { + "limit": 10, + "unit": "VCores", + "supportedPerDatabaseMinPerformanceLevels": [ + { + "limit": 0, + "unit": "VCores", + "status": "Default" + }, + { + "limit": 8, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 10, + "unit": "VCores", + "status": "Available" + } + ], + "status": "Available" + }, + { + "limit": 12, + "unit": "VCores", + "supportedPerDatabaseMinPerformanceLevels": [ + { + "limit": 0, + "unit": "VCores", + "status": "Default" + }, + { + "limit": 8, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 10, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 12, + "unit": "VCores", + "status": "Available" + } + ], + "status": "Available" + }, + { + "limit": 14, + "unit": "VCores", + "supportedPerDatabaseMinPerformanceLevels": [ + { + "limit": 0, + "unit": "VCores", + "status": "Default" + }, + { + "limit": 8, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 10, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 12, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 14, + "unit": "VCores", + "status": "Available" + } + ], + "status": "Available" + }, + { + "limit": 16, + "unit": "VCores", + "supportedPerDatabaseMinPerformanceLevels": [ + { + "limit": 0, + "unit": "VCores", + "status": "Default" + }, + { + "limit": 8, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 10, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 12, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 14, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 16, + "unit": "VCores", + "status": "Available" + } + ], + "status": "Available" + }, + { + "limit": 18, + "unit": "VCores", + "supportedPerDatabaseMinPerformanceLevels": [ + { + "limit": 0, + "unit": "VCores", + "status": "Default" + }, + { + "limit": 8, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 10, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 12, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 14, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 16, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 18, + "unit": "VCores", + "status": "Available" + } + ], + "status": "Available" + }, + { + "limit": 20, + "unit": "VCores", + "supportedPerDatabaseMinPerformanceLevels": [ + { + "limit": 0, + "unit": "VCores", + "status": "Default" + }, + { + "limit": 8, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 10, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 12, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 14, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 16, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 18, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 20, + "unit": "VCores", + "status": "Available" + } + ], + "status": "Available" + }, + { + "limit": 24, + "unit": "VCores", + "supportedPerDatabaseMinPerformanceLevels": [ + { + "limit": 0, + "unit": "VCores", + "status": "Default" + }, + { + "limit": 8, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 10, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 12, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 14, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 16, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 18, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 20, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 24, + "unit": "VCores", + "status": "Available" + } + ], + "status": "Available" + }, + { + "limit": 32, + "unit": "VCores", + "supportedPerDatabaseMinPerformanceLevels": [ + { + "limit": 0, + "unit": "VCores", + "status": "Default" + }, + { + "limit": 8, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 10, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 12, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 14, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 16, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 18, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 20, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 24, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 32, + "unit": "VCores", + "status": "Available" + } + ], + "status": "Available" + }, + { + "limit": 40, + "unit": "VCores", + "supportedPerDatabaseMinPerformanceLevels": [ + { + "limit": 0, + "unit": "VCores", + "status": "Default" + }, + { + "limit": 8, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 10, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 12, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 14, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 16, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 18, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 20, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 24, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 32, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 40, + "unit": "VCores", + "status": "Available" + } + ], + "status": "Available" + }, + { + "limit": 64, + "unit": "VCores", + "supportedPerDatabaseMinPerformanceLevels": [ + { + "limit": 0, + "unit": "VCores", + "status": "Default" + }, + { + "limit": 8, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 10, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 12, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 14, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 16, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 18, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 20, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 24, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 32, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 40, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 64, + "unit": "VCores", + "status": "Available" + } + ], + "status": "Available" + }, + { + "limit": 80, + "unit": "VCores", + "supportedPerDatabaseMinPerformanceLevels": [ + { + "limit": 0, + "unit": "VCores", + "status": "Default" + }, + { + "limit": 8, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 10, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 12, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 14, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 16, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 18, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 20, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 24, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 32, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 40, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 64, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 80, + "unit": "VCores", + "status": "Available" + } + ], + "status": "Available" + }, + { + "limit": 128, + "unit": "VCores", + "supportedPerDatabaseMinPerformanceLevels": [ + { + "limit": 0, + "unit": "VCores", + "status": "Default" + }, + { + "limit": 8, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 10, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 12, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 14, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 16, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 18, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 20, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 24, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 32, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 40, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 64, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 80, + "unit": "VCores", + "status": "Available" + }, + { + "limit": 128, + "unit": "VCores", + "status": "Available" + } + ], + "status": "Default" + } + ], + "zoneRedundant": false, + "supportedMaintenanceConfigurations": [ + { + "name": "SQL_Default", + "status": "Default", + "zoneRedundant": false + }, + { + "name": "SQL_EastUS_DB_1", + "status": "Available", + "zoneRedundant": false + }, + { + "name": "SQL_EastUS_DB_2", + "status": "Available", + "zoneRedundant": false + } + ], + "status": "Available" + } + ], + "zoneRedundant": false, + "status": "Available" + } + ], + "status": "Default" + } + ], + "supportedManagedInstanceVersions": [ + { + "name": "12.0", + "supportedEditions": [ + { + "name": "GeneralPurpose", + "supportedFamilies": [ + { + "name": "Gen4", + "sku": "GP_Gen4", + "supportedLicenseTypes": [ + { + "name": "LicenseIncluded", + "status": "Default" + }, + { + "name": "BasePrice", + "status": "Available" + } + ], + "supportedVcoresValues": [ + { + "name": "8", + "value": 8, + "includedMaxSize": { + "limit": 262144, + "unit": "Megabytes" + }, + "supportedStorageSizes": [ + { + "minValue": { + "limit": 32, + "unit": "Gigabytes" + }, + "maxValue": { + "limit": 8, + "unit": "Terabytes" + }, + "scaleSize": { + "limit": 32, + "unit": "Gigabytes" + }, + "status": "Available" + } + ], + "instancePoolSupported": true, + "standaloneSupported": true, + "supportedMaintenanceConfigurations": [ + { + "name": "SQL_Default", + "status": "Default" + }, + { + "name": "SQL_EastUS_MI_1", + "status": "Available" + }, + { + "name": "SQL_EastUS_MI_2", + "status": "Available" + } + ], + "status": "Default" + }, + { + "name": "16", + "value": 16, + "includedMaxSize": { + "limit": 262144, + "unit": "Megabytes" + }, + "supportedStorageSizes": [ + { + "minValue": { + "limit": 32, + "unit": "Gigabytes" + }, + "maxValue": { + "limit": 8, + "unit": "Terabytes" + }, + "scaleSize": { + "limit": 32, + "unit": "Gigabytes" + }, + "status": "Available" + } + ], + "instancePoolSupported": true, + "standaloneSupported": true, + "supportedMaintenanceConfigurations": [ + { + "name": "SQL_Default", + "status": "Default" + }, + { + "name": "SQL_EastUS_MI_1", + "status": "Available" + }, + { + "name": "SQL_EastUS_MI_2", + "status": "Available" + } + ], + "status": "Available" + }, + { + "name": "24", + "value": 24, + "includedMaxSize": { + "limit": 262144, + "unit": "Megabytes" + }, + "supportedStorageSizes": [ + { + "minValue": { + "limit": 32, + "unit": "Gigabytes" + }, + "maxValue": { + "limit": 8, + "unit": "Terabytes" + }, + "scaleSize": { + "limit": 32, + "unit": "Gigabytes" + }, + "status": "Available" + } + ], + "instancePoolSupported": true, + "standaloneSupported": true, + "supportedMaintenanceConfigurations": [ + { + "name": "SQL_Default", + "status": "Default" + }, + { + "name": "SQL_EastUS_MI_1", + "status": "Available" + }, + { + "name": "SQL_EastUS_MI_2", + "status": "Available" + } + ], + "status": "Available" + } + ], + "status": "Available" + }, + { + "name": "Gen5", + "sku": "GP_Gen5", + "supportedLicenseTypes": [ + { + "name": "LicenseIncluded", + "status": "Default" + }, + { + "name": "BasePrice", + "status": "Available" + } + ], + "supportedVcoresValues": [ + { + "name": "8", + "value": 8, + "includedMaxSize": { + "limit": 262144, + "unit": "Megabytes" + }, + "supportedStorageSizes": [ + { + "minValue": { + "limit": 32, + "unit": "Gigabytes" + }, + "maxValue": { + "limit": 8, + "unit": "Terabytes" + }, + "scaleSize": { + "limit": 32, + "unit": "Gigabytes" + }, + "status": "Available" + } + ], + "instancePoolSupported": true, + "standaloneSupported": true, + "supportedMaintenanceConfigurations": [ + { + "name": "SQL_Default", + "status": "Default" + }, + { + "name": "SQL_EastUS_MI_1", + "status": "Available" + }, + { + "name": "SQL_EastUS_MI_2", + "status": "Available" + } + ], + "status": "Default" + }, + { + "name": "16", + "value": 16, + "includedMaxSize": { + "limit": 262144, + "unit": "Megabytes" + }, + "supportedStorageSizes": [ + { + "minValue": { + "limit": 32, + "unit": "Gigabytes" + }, + "maxValue": { + "limit": 8, + "unit": "Terabytes" + }, + "scaleSize": { + "limit": 32, + "unit": "Gigabytes" + }, + "status": "Available" + } + ], + "instancePoolSupported": true, + "standaloneSupported": true, + "supportedMaintenanceConfigurations": [ + { + "name": "SQL_Default", + "status": "Default" + }, + { + "name": "SQL_EastUS_MI_1", + "status": "Available" + }, + { + "name": "SQL_EastUS_MI_2", + "status": "Available" + } + ], + "status": "Available" + }, + { + "name": "24", + "value": 24, + "includedMaxSize": { + "limit": 262144, + "unit": "Megabytes" + }, + "supportedStorageSizes": [ + { + "minValue": { + "limit": 32, + "unit": "Gigabytes" + }, + "maxValue": { + "limit": 8, + "unit": "Terabytes" + }, + "scaleSize": { + "limit": 32, + "unit": "Gigabytes" + }, + "status": "Available" + } + ], + "instancePoolSupported": true, + "standaloneSupported": true, + "supportedMaintenanceConfigurations": [ + { + "name": "SQL_Default", + "status": "Default" + }, + { + "name": "SQL_EastUS_MI_1", + "status": "Available" + }, + { + "name": "SQL_EastUS_MI_2", + "status": "Available" + } + ], + "status": "Available" + } + ], + "status": "Default" + } + ], + "supportedStorageCapabilities": [ + { + "storageAccountType": "GRS", + "status": "Default" + }, + { + "storageAccountType": "LRS", + "status": "Available" + }, + { + "storageAccountType": "ZRS", + "status": "Visible", + "reason": "ZRS is available in multi-az regions" + } + ], + "status": "Default" + }, + { + "name": "Hyperscale", + "supportedFamilies": [ + { + "name": "Gen4", + "sku": "HS_Gen4", + "supportedLicenseTypes": [ + { + "name": "LicenseIncluded", + "status": "Default" + }, + { + "name": "BasePrice", + "status": "Available" + } + ], + "supportedVcoresValues": [ + { + "name": "4", + "value": 4, + "instancePoolSupported": true, + "standaloneSupported": true, + "supportedMaintenanceConfigurations": [ + { + "name": "SQL_Default", + "status": "Default" + } + ], + "status": "Available" + }, + { + "name": "8", + "value": 8, + "instancePoolSupported": true, + "standaloneSupported": true, + "supportedMaintenanceConfigurations": [ + { + "name": "SQL_Default", + "status": "Default" + } + ], + "status": "Default" + }, + { + "name": "16", + "value": 16, + "instancePoolSupported": true, + "standaloneSupported": true, + "supportedMaintenanceConfigurations": [ + { + "name": "SQL_Default", + "status": "Default" + } + ], + "status": "Available" + }, + { + "name": "24", + "value": 24, + "instancePoolSupported": true, + "standaloneSupported": true, + "supportedMaintenanceConfigurations": [ + { + "name": "SQL_Default", + "status": "Default" + } + ], + "status": "Available" + } + ], + "status": "Default" + }, + { + "name": "Gen5", + "sku": "HS_Gen5", + "supportedLicenseTypes": [ + { + "name": "LicenseIncluded", + "status": "Default" + }, + { + "name": "BasePrice", + "status": "Available" + } + ], + "supportedVcoresValues": [ + { + "name": "4", + "value": 4, + "instancePoolSupported": true, + "standaloneSupported": true, + "supportedMaintenanceConfigurations": [ + { + "name": "SQL_Default", + "status": "Default" + } + ], + "status": "Available" + }, + { + "name": "8", + "value": 8, + "instancePoolSupported": true, + "standaloneSupported": true, + "supportedMaintenanceConfigurations": [ + { + "name": "SQL_Default", + "status": "Default" + } + ], + "status": "Default" + }, + { + "name": "16", + "value": 16, + "instancePoolSupported": true, + "standaloneSupported": true, + "supportedMaintenanceConfigurations": [ + { + "name": "SQL_Default", + "status": "Default" + } + ], + "status": "Available" + }, + { + "name": "24", + "value": 24, + "instancePoolSupported": true, + "standaloneSupported": true, + "supportedMaintenanceConfigurations": [ + { + "name": "SQL_Default", + "status": "Default" + } + ], + "status": "Available" + }, + { + "name": "32", + "value": 32, + "instancePoolSupported": true, + "standaloneSupported": true, + "supportedMaintenanceConfigurations": [ + { + "name": "SQL_Default", + "status": "Default" + } + ], + "status": "Available" + }, + { + "name": "40", + "value": 40, + "instancePoolSupported": true, + "standaloneSupported": true, + "supportedMaintenanceConfigurations": [ + { + "name": "SQL_Default", + "status": "Default" + } + ], + "status": "Available" + }, + { + "name": "48", + "value": 48, + "instancePoolSupported": true, + "standaloneSupported": true, + "supportedMaintenanceConfigurations": [ + { + "name": "SQL_Default", + "status": "Default" + } + ], + "status": "Available" + }, + { + "name": "64", + "value": 64, + "instancePoolSupported": true, + "standaloneSupported": true, + "supportedMaintenanceConfigurations": [ + { + "name": "SQL_Default", + "status": "Default" + } + ], + "status": "Available" + }, + { + "name": "80", + "value": 80, + "instancePoolSupported": true, + "standaloneSupported": true, + "supportedMaintenanceConfigurations": [ + { + "name": "SQL_Default", + "status": "Default" + } + ], + "status": "Available" + } + ], + "status": "Available" + } + ], + "supportedStorageCapabilities": [ + { + "storageAccountType": "GRS", + "status": "Default" + }, + { + "storageAccountType": "LRS", + "status": "Available" + }, + { + "storageAccountType": "ZRS", + "status": "Available", + "reason": "ZRS is available in multi-az regions" + } + ], + "status": "Available" + } + ], + "supportedInstancePoolEditions": [ + { + "name": "GeneralPurpose", + "supportedFamilies": [ + { + "name": "Gen5", + "supportedLicenseTypes": [ + { + "name": "LicenseIncluded", + "status": "Default" + }, + { + "name": "BasePrice", + "status": "Available" + } + ], + "supportedVcoresValues": [ + { + "name": "GP_Gen5_8", + "value": 8, + "storageLimit": { + "limit": 8388608, + "unit": "Megabytes" + }, + "status": "Default" + }, + { + "name": "GP_Gen5_16", + "value": 16, + "storageLimit": { + "limit": 8388608, + "unit": "Megabytes" + }, + "status": "Available" + }, + { + "name": "GP_Gen5_24", + "value": 24, + "storageLimit": { + "limit": 8388608, + "unit": "Megabytes" + }, + "status": "Available" + }, + { + "name": "GP_Gen5_32", + "value": 32, + "storageLimit": { + "limit": 8388608, + "unit": "Megabytes" + }, + "status": "Available" + }, + { + "name": "GP_Gen5_40", + "value": 40, + "storageLimit": { + "limit": 8388608, + "unit": "Megabytes" + }, + "status": "Available" + }, + { + "name": "GP_Gen5_64", + "value": 64, + "storageLimit": { + "limit": 8388608, + "unit": "Megabytes" + }, + "status": "Available" + }, + { + "name": "GP_Gen5_80", + "value": 80, + "storageLimit": { + "limit": 8388608, + "unit": "Megabytes" + }, + "status": "Available" + } + ], + "status": "Default" + } + ], + "status": "Default" + } + ], + "status": "Default" + } + ], + "status": "Available" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/LongTermRetentionBackupCopy.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/LongTermRetentionBackupCopy.json new file mode 100644 index 000000000000..6cb1edeb52a6 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/LongTermRetentionBackupCopy.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "locationName": "japaneast", + "longTermRetentionServerName": "testserver", + "longTermRetentionDatabaseName": "testDatabase", + "backupName": "55555555-6666-7777-8888-999999999999;131637960820000000", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "targetServerResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/resourceGroups/resourceGroup/servers/testserver2", + "targetDatabaseName": "testDatabase2", + "targetBackupStorageRedundancy": "Geo" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/locations/japanEast/longTermRetentionBackupOperationResults/a1aa7c77-961b-4fbb-bcd6-aa9acfcd1706", + "name": "a1aa7c77-961b-4fbb-bcd6-aa9acfcd1706", + "type": "Microsoft.Sql/locations/longTermRetentionBackupOperationResults", + "properties": { + "requestId": "a1aa7c77-961b-4fbb-bcd6-aa9acfcd1706", + "fromBackupResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/locations/japanEast/longTermRetentionServers/testserver/longterRetentionDatabases/testDatabase/longTermRetentionBackups/55555555-6666-7777-8888-999999999999;131637960820000000", + "operationType": "CopyBackup", + "status": "Succeeded", + "toBackupResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup/providers/Microsoft.Sql/locations/japanEast/longTermRetentionServers/testserver2/longterRetentionDatabases/testDatabase2/longTermRetentionBackups/55555555-6666-7777-8888-111111111111;131637960820000000", + "targetBackupStorageRedundancy": "Geo" + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/LongTermRetentionBackupDelete.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/LongTermRetentionBackupDelete.json new file mode 100644 index 000000000000..d27a76a01887 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/LongTermRetentionBackupDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "locationName": "japaneast", + "longTermRetentionServerName": "testserver", + "longTermRetentionDatabaseName": "testDatabase", + "backupName": "55555555-6666-7777-8888-999999999999;131637960820000000", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/LongTermRetentionBackupGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/LongTermRetentionBackupGet.json new file mode 100644 index 000000000000..ab179ab49967 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/LongTermRetentionBackupGet.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "locationName": "japaneast", + "longTermRetentionServerName": "testserver", + "longTermRetentionDatabaseName": "testDatabase", + "backupName": "55555555-6666-7777-8888-999999999999;131637960820000000", + "api-version": "2021-02-01-preview" + }, + "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:00Z", + "databaseName": "testDatabase", + "databaseDeletionTime": null, + "backupTime": "2017-09-06T08:00:00Z", + "backupStorageRedundancy": "Geo" + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/LongTermRetentionBackupListByDatabase.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/LongTermRetentionBackupListByDatabase.json new file mode 100644 index 000000000000..b9e3dcb099a0 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/LongTermRetentionBackupListByDatabase.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "locationName": "japaneast", + "longTermRetentionServerName": "testserver", + "longTermRetentionDatabaseName": "testDatabase", + "api-version": "2021-02-01-preview" + }, + "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:00Z", + "databaseName": "testDatabase", + "databaseDeletionTime": null, + "backupTime": "2017-08-23T08:00:00Z", + "backupStorageRedundancy": "Geo" + } + }, + { + "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:00Z", + "databaseName": "testDatabase", + "databaseDeletionTime": null, + "backupTime": "2017-08-30T08:00:00Z", + "backupStorageRedundancy": "Geo" + } + }, + { + "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:00Z", + "databaseName": "testDatabase", + "databaseDeletionTime": "2017-09-07T08:00:00Z", + "backupTime": "2017-09-06T08:00:00Z", + "backupStorageRedundancy": "Geo" + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/LongTermRetentionBackupListByLocation.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/LongTermRetentionBackupListByLocation.json new file mode 100644 index 000000000000..858db5e36755 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/LongTermRetentionBackupListByLocation.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "locationName": "japaneast", + "api-version": "2021-02-01-preview" + }, + "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:00Z", + "databaseName": "testDatabase1", + "databaseDeletionTime": null, + "backupTime": "2017-08-23T08:00:00Z", + "backupStorageRedundancy": "Geo" + } + }, + { + "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:00Z", + "databaseName": "testDatabase2", + "databaseDeletionTime": null, + "backupTime": "2017-08-30T08:00:00Z", + "backupStorageRedundancy": "Geo" + } + }, + { + "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:00Z", + "databaseName": "testDatabase3", + "databaseDeletionTime": null, + "backupTime": "2017-09-06T08:00:00Z", + "backupStorageRedundancy": "Geo" + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/LongTermRetentionBackupListByServer.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/LongTermRetentionBackupListByServer.json new file mode 100644 index 000000000000..480a220e7e69 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/LongTermRetentionBackupListByServer.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "locationName": "japaneast", + "longTermRetentionServerName": "testserver", + "api-version": "2021-02-01-preview" + }, + "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:00Z", + "databaseName": "testDatabase1", + "databaseDeletionTime": null, + "backupTime": "2017-08-23T08:00:00Z", + "backupStorageRedundancy": "Geo" + } + }, + { + "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:00Z", + "databaseName": "testDatabase2", + "databaseDeletionTime": null, + "backupTime": "2017-08-30T08:00:00Z", + "backupStorageRedundancy": "Geo" + } + }, + { + "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:00Z", + "databaseName": "testDatabase3", + "databaseDeletionTime": null, + "backupTime": "2017-09-06T08:00:00Z", + "backupStorageRedundancy": "Geo" + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/LongTermRetentionBackupUpdate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/LongTermRetentionBackupUpdate.json new file mode 100644 index 000000000000..ef329a81d992 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/LongTermRetentionBackupUpdate.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "locationName": "japaneast", + "longTermRetentionServerName": "testserver", + "longTermRetentionDatabaseName": "testDatabase", + "backupName": "55555555-6666-7777-8888-999999999999;131637960820000000", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "requestedBackupStorageRedundancy": "Geo" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/locations/japanEast/longTermRetentionBackupOperationResults/a1aa7c77-961b-4fbb-bcd6-aa9acfcd1706", + "name": "a1aa7c77-961b-4fbb-bcd6-aa9acfcd1706", + "type": "Microsoft.Sql/locations/longTermRetentionBackupOperationResults", + "properties": { + "requestId": "a1aa7c77-961b-4fbb-bcd6-aa9acfcd1706", + "fromBackupResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/locations/japanEast/longTermRetentionServers/testserver/longterRetentionDatabases/testDatabase/longTermRetentionBackups/55555555-6666-7777-8888-999999999999;131637960820000000", + "operationType": "UpdateBackup", + "status": "Succeeded", + "targetBackupStorageRedundancy": "Geo" + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/LongTermRetentionPolicyCreateOrUpdate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/LongTermRetentionPolicyCreateOrUpdate.json new file mode 100644 index 000000000000..a318e296b0a2 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/LongTermRetentionPolicyCreateOrUpdate.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup", + "serverName": "testserver", + "databaseName": "testDatabase", + "policyName": "default", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "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": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/LongTermRetentionPolicyGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/LongTermRetentionPolicyGet.json new file mode 100644 index 000000000000..9d696b2d395e --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-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": "2021-02-01-preview" + }, + "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 + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/LongTermRetentionPolicyListByDatabase.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/LongTermRetentionPolicyListByDatabase.json new file mode 100644 index 000000000000..c9ec210c2c06 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/LongTermRetentionPolicyListByDatabase.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup", + "serverName": "testserver", + "databaseName": "testDatabase", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "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 + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedColumnsListByDatabaseMax.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedColumnsListByDatabaseMax.json new file mode 100644 index 000000000000..4f231ce304ca --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedColumnsListByDatabaseMax.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "managedInstanceName": "serverName", + "databaseName": "myDatabase", + "api-version": "2021-02-01-preview", + "schema": [ + "dbo" + ], + "table": [ + "customer", + "address" + ], + "column": [ + "username" + ], + "orderBy": [ + "schema asc", + "table", + "column desc" + ], + "$skip": "5", + "$top": "50" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "columnType": "nvarchar", + "temporalType": "NonTemporalTable", + "memoryOptimized": false, + "isComputed": false + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Sql/managedInstances/serverName/databases/myDatabase/schemas/dbo/tables/customer/columns/username", + "name": "username", + "type": "Microsoft.Sql/managedInstances/databases/schemas/tables/columns" + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedColumnsListByDatabaseMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedColumnsListByDatabaseMin.json new file mode 100644 index 000000000000..d67584cb7ea1 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedColumnsListByDatabaseMin.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "managedInstanceName": "serverName", + "databaseName": "myDatabase", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "columnType": "int", + "temporalType": "NonTemporalTable", + "memoryOptimized": false, + "isComputed": false + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Sql/managedInstances/serverName/databases/myDatabase/schemas/dbo/tables/table1/columns/col1", + "name": "col1", + "type": "Microsoft.Sql/managedInstances/databases/schemas/tables/columns" + }, + { + "properties": { + "columnType": "bit", + "temporalType": "SystemVersionedTemporalTable", + "memoryOptimized": false, + "isComputed": false + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Sql/managedInstances/serverName/databases/myDatabase/schemas/dbo/tables/table1/columns/col2", + "name": "col2", + "type": "Microsoft.Sql/managedInstances/databases/schemas/tables/columns" + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseColumnGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseColumnGet.json new file mode 100644 index 000000000000..4ca56aa3164b --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseColumnGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "managedInstanceName": "myManagedInstanceName", + "databaseName": "myDatabase", + "schemaName": "dbo", + "tableName": "table1", + "columnName": "column1", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Sql/managedInstances/myManagedInstanceName/databases/myDatabase/schemas/dbo/tables/table1/columns/column1", + "name": "column1", + "type": "Microsoft.Sql/managedInstances/databases/schemas/tables/columns", + "properties": { + "columnType": "bit" + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseColumnListByTable.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseColumnListByTable.json new file mode 100644 index 000000000000..408a16a35665 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseColumnListByTable.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "managedInstanceName": "myManagedInstanceName", + "databaseName": "myDatabase", + "schemaName": "dbo", + "tableName": "table1", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Sql/managedInstances/myManagedInstanceName/databases/myDatabase/schemas/dbo/tables/table1/columns/col1", + "name": "col1", + "type": "Microsoft.Sql/managedInstances/databases/schemas/tables/columns", + "properties": { + "columnType": "nvarchar" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Sql/managedInstances/myManagedInstanceName/databases/myDatabase/schemas/dbo/tables/table1/columns/col2", + "name": "col2", + "type": "Microsoft.Sql/managedInstances/databases/schemas/tables/columns", + "properties": { + "columnType": "bit" + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseColumnSensitivityLabelCreate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseColumnSensitivityLabelCreate.json new file mode 100644 index 000000000000..84fdaeeb6da5 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseColumnSensitivityLabelCreate.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "managedInstanceName": "myManagedInstanceName", + "databaseName": "myDatabase", + "schemaName": "dbo", + "tableName": "myTable", + "columnName": "myColumn", + "sensitivityLabelSource": "current", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "informationType": "PhoneNumber", + "informationTypeId": "d22fa6e9-5ee4-3bde-4c2b-a409604c4646", + "labelId": "bf91e08c-f4f0-478a-b016-25164b2a65ff", + "labelName": "PII", + "rank": "High" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Sql/managedInstances/myManagedInstanceName/databases/myDatabase/schemas/dbo/tables/myTable/columns/myColumn/sensitivityLabels/current", + "name": "current", + "type": "Microsoft.Sql/managedInstances/databases/schemas/tables/columns/sensitivityLabels", + "properties": { + "schemaName": "dbo", + "tableName": "myTable", + "columnName": "myColumn", + "informationType": "PhoneNumber", + "informationTypeId": "d22fa6e9-5ee4-3bde-4c2b-a409604c4646", + "labelId": "bf91e08c-f4f0-478a-b016-25164b2a65ff", + "labelName": "PII", + "rank": "High" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Sql/managedInstances/myManagedInstanceName/databases/myDatabase/schemas/dbo/tables/myTable/columns/myColumn/sensitivityLabels/current", + "name": "current", + "type": "Microsoft.Sql/managedInstances/databases/schemas/tables/columns/sensitivityLabels", + "properties": { + "schemaName": "dbo", + "tableName": "myTable", + "columnName": "myColumn", + "informationType": "PhoneNumber", + "informationTypeId": "d22fa6e9-5ee4-3bde-4c2b-a409604c4646", + "labelId": "bf91e08c-f4f0-478a-b016-25164b2a65ff", + "labelName": "PII", + "rank": "High" + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseColumnSensitivityLabelDelete.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseColumnSensitivityLabelDelete.json new file mode 100644 index 000000000000..73c1b7173397 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseColumnSensitivityLabelDelete.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "managedInstanceName": "myManagedInstanceName", + "databaseName": "myDatabase", + "schemaName": "dbo", + "tableName": "myTable", + "columnName": "myColumn", + "sensitivityLabelSource": "current", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseColumnSensitivityLabelGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseColumnSensitivityLabelGet.json new file mode 100644 index 000000000000..1ddad9f6e0e4 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseColumnSensitivityLabelGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "managedInstanceName": "myManagedInstanceName", + "databaseName": "myDatabase", + "schemaName": "dbo", + "tableName": "myTable", + "columnName": "myColumn", + "sensitivityLabelSource": "current", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Sql/managedInstances/myManagedInstanceName/databases/myDatabase/schemas/dbo/tables/myTable/columns/myColumn/sensitivityLabels/current", + "name": "current", + "type": "Microsoft.Sql/managedInstances/databases/schemas/tables/columns/sensitivityLabels", + "properties": { + "schemaName": "dbo", + "tableName": "myTable", + "columnName": "myColumn", + "informationType": "PhoneNumber", + "informationTypeId": "d22fa6e9-5ee4-3bde-4c2b-a409604c4646", + "labelId": "bf91e08c-f4f0-478a-b016-25164b2a65ff", + "labelName": "PII", + "rank": "Low" + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseCompleteExternalRestore.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseCompleteExternalRestore.json new file mode 100644 index 000000000000..4a5ea355a00a --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseCompleteExternalRestore.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "managedInstanceName": "myManagedInstanceName", + "databaseName": "myDatabase", + "api-version": "2021-02-01-preview", + "parameters": { + "lastBackupName": "testdb1_log4" + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseCreateMax.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseCreateMax.json new file mode 100644 index 000000000000..900158ea3714 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseCreateMax.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "managedInstanceName": "managedInstance", + "databaseName": "managedDatabase", + "api-version": "2021-02-01-preview", + "parameters": { + "tags": { + "tagKey1": "TagValue1" + }, + "location": "southeastasia" + } + }, + "responses": { + "200": { + "body": { + "tags": { + "tagKey1": "TagValue1" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/managedInstances/testsvr/databases/testdb1", + "name": "testdb1", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "status": "Online", + "creationDate": "2017-06-07T04:41:33.937Z", + "defaultSecondaryLocation": "North Europe" + }, + "type": "Microsoft.Sql/managedInstances/databases" + } + }, + "201": { + "body": { + "tags": { + "tagKey1": "TagValue1" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/managedInstances/testsvr/databases/testdb2", + "name": "testdb2", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "status": "Online", + "creationDate": "2017-06-07T04:41:33.937Z", + "defaultSecondaryLocation": "North Europe" + }, + "type": "Microsoft.Sql/managedInstances/databases" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseCreateMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseCreateMin.json new file mode 100644 index 000000000000..74781bd5a074 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseCreateMin.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "managedInstanceName": "managedInstance", + "databaseName": "managedDatabase", + "api-version": "2021-02-01-preview", + "parameters": { + "location": "southeastasia" + } + }, + "responses": { + "200": { + "body": { + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/managedInstances/testsvr/databases/testdb1", + "name": "testdb1", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "status": "Online", + "creationDate": "2017-06-07T04:41:33.937Z", + "defaultSecondaryLocation": "North Europe" + }, + "type": "Microsoft.Sql/managedInstances/databases" + } + }, + "201": { + "body": { + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/managedInstances/testsvr/databases/testdb2", + "name": "testdb2", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "status": "Online", + "creationDate": "2017-06-07T04:41:33.937Z", + "defaultSecondaryLocation": "North Europe" + }, + "type": "Microsoft.Sql/managedInstances/databases" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseCreatePointInTimeRestore.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseCreatePointInTimeRestore.json new file mode 100644 index 000000000000..02ce166e5145 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseCreatePointInTimeRestore.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "managedInstanceName": "managedInstance", + "databaseName": "managedDatabase", + "api-version": "2021-02-01-preview", + "parameters": { + "location": "southeastasia", + "properties": { + "createMode": "PointInTimeRestore", + "sourceDatabaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/managedInstances/testsvr/databases/testdb", + "restorePointInTime": "2017-07-14T05:35:31.503Z" + } + } + }, + "responses": { + "200": { + "body": { + "tags": { + "tagKey1": "TagValue1" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/managedInstances/testsvr/databases/testdb1", + "name": "testdb1", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "status": "Online", + "creationDate": "2017-06-07T04:41:33.937Z", + "defaultSecondaryLocation": "North Europe" + }, + "type": "Microsoft.Sql/managedInstances/databases" + } + }, + "201": { + "body": { + "tags": { + "tagKey1": "TagValue1" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/managedInstances/testsvr/databases/testdb2", + "name": "testdb2", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "status": "Online", + "creationDate": "2017-06-07T04:41:33.937Z", + "defaultSecondaryLocation": "North Europe" + }, + "type": "Microsoft.Sql/managedInstances/databases" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseCreateRecovery.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseCreateRecovery.json new file mode 100644 index 000000000000..1125b72977da --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseCreateRecovery.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "managedInstanceName": "server1", + "databaseName": "testdb_recovered", + "api-version": "2021-02-01-preview", + "parameters": { + "location": "southeastasia", + "properties": { + "createMode": "Recovery", + "recoverableDatabaseId": "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/Default-SQL-WestEurope/providers/Microsoft.Sql/managedInstances/testsvr/recoverableDatabases/testdb" + } + } + }, + "responses": { + "200": { + "body": { + "tags": { + "tagKey1": "TagValue1" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/managedInstances/server1/recoverableDatabases/testdb_recovered", + "name": "testdb_recovered", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "status": "Online", + "creationDate": "2018-11-07T04:41:33.937Z" + }, + "type": "Microsoft.Sql/managedInstances/databases" + } + }, + "201": { + "body": { + "tags": { + "tagKey1": "TagValue1" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/managedInstances/testsvr/recoverableDatabases/testdb_recovered", + "name": "testdb_recovered", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "status": "Online", + "creationDate": "2018-11-07T04:41:33.937Z" + }, + "type": "Microsoft.Sql/managedInstances/databases" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseCreateRestoreExternalBackup.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseCreateRestoreExternalBackup.json new file mode 100644 index 000000000000..9a69ca4c49aa --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseCreateRestoreExternalBackup.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "managedInstanceName": "managedInstance", + "databaseName": "managedDatabase", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "createMode": "RestoreExternalBackup", + "storageContainerUri": "https://myaccountname.blob.core.windows.net/backups", + "storageContainerSasToken": "sv=2015-12-11&sr=c&sp=rl&sig=1234", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "autoCompleteRestore": true, + "lastBackupName": "last_backup_name" + }, + "location": "southeastasia" + } + }, + "responses": { + "200": { + "body": { + "tags": { + "tagKey1": "TagValue1" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/managedInstances/testsvr/databases/testdb1", + "name": "testdb1", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "status": "Online", + "creationDate": "2017-06-07T04:41:33.937Z", + "defaultSecondaryLocation": "North Europe" + }, + "type": "Microsoft.Sql/managedInstances/databases" + } + }, + "201": { + "body": { + "tags": { + "tagKey1": "TagValue1" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/managedInstances/testsvr/databases/testdb2", + "name": "testdb2", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "status": "Online", + "creationDate": "2017-06-07T04:41:33.937Z", + "defaultSecondaryLocation": "North Europe" + }, + "type": "Microsoft.Sql/managedInstances/databases" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseCreateRestoreLtrBackup.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseCreateRestoreLtrBackup.json new file mode 100644 index 000000000000..d2d3b5f39cd2 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseCreateRestoreLtrBackup.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "managedInstanceName": "managedInstance", + "databaseName": "managedDatabase", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "createMode": "RestoreExternalBackup", + "storageContainerUri": "https://myaccountname.blob.core.windows.net/backups", + "storageContainerSasToken": "sv=2015-12-11&sr=c&sp=rl&sig=1234", + "collation": "SQL_Latin1_General_CP1_CI_AS" + }, + "location": "southeastasia" + } + }, + "responses": { + "200": { + "body": { + "tags": { + "tagKey1": "TagValue1" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/managedInstances/testsvr/databases/testdb1", + "name": "testdb1", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "status": "Online", + "creationDate": "2017-06-07T04:41:33.937Z", + "defaultSecondaryLocation": "North Europe" + }, + "type": "Microsoft.Sql/managedInstances/databases" + } + }, + "201": { + "body": { + "tags": { + "tagKey1": "TagValue1" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/managedInstances/testsvr/databases/testdb2", + "name": "testdb2", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "status": "Online", + "creationDate": "2017-06-07T04:41:33.937Z", + "defaultSecondaryLocation": "North Europe" + }, + "type": "Microsoft.Sql/managedInstances/databases" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseDelete.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseDelete.json new file mode 100644 index 000000000000..0ae07e737026 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "managedInstanceName": "managedInstance", + "databaseName": "testdb", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseGet.json new file mode 100644 index 000000000000..765163f3cc48 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Test1", + "managedInstanceName": "managedInstance", + "databaseName": "managedDatabase", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Sql/managedInstances/testcl/databases/testdb1", + "location": "southeastasia", + "name": "testdb1", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "creationDate": "2017-08-04T15:00:17.73Z", + "defaultSecondaryLocation": "North Europe", + "status": "Online" + }, + "type": "Microsoft.Sql/managedInstances/databases" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseListByManagedInstance.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseListByManagedInstance.json new file mode 100644 index 000000000000..55d3dfce1fd2 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseListByManagedInstance.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Test1", + "managedInstanceName": "managedInstance", + "databaseName": "managedDatabase", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Sql/managedInstances/testcl/databases/testdb1", + "location": "southeastasia", + "name": "testdb1", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "creationDate": "2017-08-04T15:00:17.73Z", + "defaultSecondaryLocation": "North Europe", + "status": "Online" + }, + "type": "Microsoft.Sql/managedInstances/databases" + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Sql/managedInstances/testcl/databases/testdb2", + "location": "southeastasia", + "name": "testdb2", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "creationDate": "2017-08-04T15:00:17.73Z", + "defaultSecondaryLocation": "North Europe", + "status": "Online" + }, + "type": "Microsoft.Sql/managedInstances/databases" + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseRecommendedColumnSensitivityLabelDisable.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseRecommendedColumnSensitivityLabelDisable.json new file mode 100644 index 000000000000..db16052625ff --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseRecommendedColumnSensitivityLabelDisable.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "managedInstanceName": "myManagedInstanceName", + "databaseName": "myDatabase", + "schemaName": "dbo", + "tableName": "myTable", + "columnName": "myColumn", + "sensitivityLabelSource": "recommended", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseRecommendedColumnSensitivityLabelEnable.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseRecommendedColumnSensitivityLabelEnable.json new file mode 100644 index 000000000000..db16052625ff --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseRecommendedColumnSensitivityLabelEnable.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "managedInstanceName": "myManagedInstanceName", + "databaseName": "myDatabase", + "schemaName": "dbo", + "tableName": "myTable", + "columnName": "myColumn", + "sensitivityLabelSource": "recommended", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseRestoreDetails.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseRestoreDetails.json new file mode 100644 index 000000000000..caafabf5f8e4 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseRestoreDetails.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "managedInstanceName": "managedInstance", + "databaseName": "testdb", + "restoreDetailsName": "Default", + "api-version": "2021-02-01-preview", + "parameters": { + "tags": { + "tagKey1": "TagValue1" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "status": "Restoring", + "currentRestoringFileName": "full_0", + "percentCompleted": 0.0, + "unrestorableFiles": [], + "numberOfFilesDetected": 26, + "lastUploadedFileName": "log2_3", + "lastUploadedFileTime": "2018-06-15T11:38:33Z" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/managedInstances/managedInstance/databases/testdb/restoreDetails/current", + "name": "current", + "type": "Microsoft.Sql/managedInstances/databases/restoreDetails" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseSchemaGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseSchemaGet.json new file mode 100644 index 000000000000..4fafef740484 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseSchemaGet.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "managedInstanceName": "myManagedInstanceName", + "databaseName": "myDatabase", + "schemaName": "dbo", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Sql/managedInstances/myManagedInstanceName/databases/myDatabase/schemas/dbo", + "name": "dbo", + "type": "Microsoft.Sql/managedInstances/databases/schemas" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseSchemaListByDatabase.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseSchemaListByDatabase.json new file mode 100644 index 000000000000..da2223809d51 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseSchemaListByDatabase.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "managedInstanceName": "myManagedInstanceName", + "databaseName": "myDatabase", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Sql/managedInstances/myManagedInstanceName/databases/myDatabase/schemas/dbo", + "name": "dbo", + "type": "Microsoft.Sql/managedInstances/databases/schemas" + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Sql/managedInstances/myManagedInstanceName/databases/myDatabase/schemas/schema2", + "name": "schema2", + "type": "Microsoft.Sql/managedInstances/databases/schemas" + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseSecurityAlertCreateMax.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseSecurityAlertCreateMax.json new file mode 100644 index 000000000000..a52b36293063 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseSecurityAlertCreateMax.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "securityalert-4799", + "managedInstanceName": "securityalert-6440", + "databaseName": "testdb", + "securityAlertPolicyName": "default", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "state": "Enabled", + "emailAccountAdmins": true, + "emailAddresses": [ + "test@contoso.com", + "user@contoso.com" + ], + "disabledAlerts": [ + "Sql_Injection", + "Usage_Anomaly" + ], + "retentionDays": 6, + "storageAccountAccessKey": "sdlfkjabc+sdlfkjsdlkfsjdfLDKFTERLKFDFKLjsdfksjdflsdkfD2342309432849328476458/3RSD==", + "storageEndpoint": "https://mystorage.blob.core.windows.net" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/securityalert-4799/providers/Microsoft.Sql/managedInstances/securityalert-6440/databases/testdb", + "name": "default", + "type": "Microsoft.Sql/managedInstances/databases/securityAlertPolicies", + "properties": { + "state": "Enabled", + "emailAccountAdmins": true, + "emailAddresses": [ + "test@contoso.com", + "user@contoso.com" + ], + "disabledAlerts": [ + "Sql_Injection", + "Usage_Anomaly" + ], + "retentionDays": 6, + "storageAccountAccessKey": "", + "storageEndpoint": "https://mystorage.blob.core.windows.net" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/securityalert-4799/providers/Microsoft.Sql/managedInstances/securityalert-6440/databases/testdb", + "name": "default", + "type": "Microsoft.Sql/managedInstances/databases/securityAlertPolicies", + "properties": { + "state": "Enabled", + "emailAccountAdmins": true, + "emailAddresses": [ + "test@contoso.com", + "user@contoso.com" + ], + "disabledAlerts": [ + "Access_Anomaly", + "Usage_Anomaly" + ], + "retentionDays": 6, + "storageAccountAccessKey": "sdlfkjabc+sdlfkjsdlkfsjdfLDKFTERLKFDFKLjsdfksjdflsdkfD2342309432849328476458/3RSD==", + "storageEndpoint": "https://mystorage.blob.core.windows.net" + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseSecurityAlertCreateMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseSecurityAlertCreateMin.json new file mode 100644 index 000000000000..63d7767a8855 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseSecurityAlertCreateMin.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "securityalert-4799", + "managedInstanceName": "securityalert-6440", + "databaseName": "testdb", + "securityAlertPolicyName": "default", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "state": "Enabled" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/securityalert-4799/providers/Microsoft.Sql/managedInstances/securityalert-6440/databases/testdb", + "name": "default", + "type": "Microsoft.Sql/managedInstance/databases/securityAlertPolicies", + "properties": { + "state": "Enabled", + "emailAccountAdmins": true, + "emailAddresses": [], + "disabledAlerts": [], + "retentionDays": 0, + "storageAccountAccessKey": "", + "storageEndpoint": "" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/securityalert-4799/providers/Microsoft.Sql/managedInstances/securityalert-6440/databases/testdb", + "name": "default", + "type": "Microsoft.Sql/managedInstance/databases/securityAlertPolicies", + "properties": { + "state": "Enabled", + "emailAccountAdmins": true, + "emailAddresses": [], + "disabledAlerts": [], + "retentionDays": 0, + "storageAccountAccessKey": "", + "storageEndpoint": "" + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseSecurityAlertGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseSecurityAlertGet.json new file mode 100644 index 000000000000..c0ecec4871e8 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseSecurityAlertGet.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "securityalert-6852", + "managedInstanceName": "securityalert-2080", + "databaseName": "testdb", + "securityAlertPolicyName": "default", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/securityalert-6852/providers/Microsoft.Sql/managedInstances/securityalert-2080/databases/testdb", + "name": "default", + "type": "Microsoft.Sql/managedInstances/databases/securityAlertPolicies", + "properties": { + "state": "Enabled", + "emailAccountAdmins": true, + "emailAddresses": [ + "test@contoso.com", + "user@contoso.com" + ], + "disabledAlerts": [ + "Usage_Anomaly" + ], + "retentionDays": 0, + "storageAccountAccessKey": "", + "storageEndpoint": "" + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseSecurityAlertListByDatabase.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseSecurityAlertListByDatabase.json new file mode 100644 index 000000000000..ce05cccae0c7 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseSecurityAlertListByDatabase.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "securityalert-6852", + "managedInstanceName": "securityalert-2080", + "databaseName": "testdb", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/securityalert-6852/providers/Microsoft.Sql/managedInstances/securityalert-2080/databases/testdb", + "name": "default", + "type": "Microsoft.Sql/managedInstances/databases/securityAlertPolicies", + "properties": { + "state": "Enabled", + "emailAccountAdmins": true, + "emailAddresses": [ + "test@contoso.com", + "user@contoso.com" + ], + "disabledAlerts": [ + "Usage_Anomaly" + ], + "retentionDays": 0, + "storageAccountAccessKey": "", + "storageEndpoint": "" + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseSecurityEventsGetMax.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseSecurityEventsGetMax.json new file mode 100644 index 000000000000..ab40b52cbb9e --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseSecurityEventsGetMax.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg", + "managedInstanceName": "testcl", + "databaseName": "database1", + "api-version": "2021-02-01-preview", + "$filter": "ShowServerRecords eq true", + "$skip": "0", + "$top": "1", + "$skiptoken": "eyJCbG9iTmFtZURhdGVUaW1lIjoiXC9EYXRlKDE1MTIyODg4MTIwMTArMDIwMClcLyIsIkJsb2JOYW1lUm9sbG92ZXJJbmRleCI6IjAiLCJFbmREYXRlIjoiXC9EYXRlKDE1MTI0NjYyMDA1MjkpXC8iLCJJc1NraXBUb2tlblNldCI6ZmFsc2UsIklzVjJCbG9iVGltZUZvcm1hdCI6dHJ1ZSwiU2hvd1NlcnZlclJlY29yZHMiOmZhbHNlLCJTa2lwVmFsdWUiOjAsIlRha2VWYWx1ZSI6MTB9" + }, + "responses": { + "200": { + "body": { + "nextLink": "https://management.azure.com/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Sql/managedInstances/testcl/databases/database1/securityEvents?$skipToken=C9EYXRlKDE1MTIyODg4MTIwMTArMDIwMClcLyIsIkJsb2JOYW1lUm9sbC9EYXRlKDE1MTIyODg4MTIwMTArMDIwMClcLyIsIkJsb2JOYW1lUm9sbC9EYXRlKDE1MTIyODg4MTIwMTArMDIwMClcLyIsIkJsb2JOYW1lUm9sbC9EYXRlKDE1MTIyODg4MTIwMTArMDIwMClcLyIsIkJsb2JOYW1lUm9sb&api-version=2017-10-01-preview", + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Sql/managedInstances/testcl/databases/database1/securityEvents/06364798761800000000000000001", + "name": "06364798761800000000000000001", + "type": "Microsoft.Sql/servers/databases/securityEvents", + "properties": { + "eventTime": "2017-12-24T10:13:24.729Z", + "securityEventType": "SqlInjectionExploit", + "subscription": "00000000-1111-2222-3333-444444444444", + "server": "testcl", + "database": "database1", + "clientIp": "10.166.113.220", + "applicationName": "myApp", + "principalName": "maliciousUser", + "securityEventSqlInjectionAdditionalProperties": { + "threatId": "1", + "statement": "select * from sys.databases where database_id like '' or 1 = 1 --' and family = 'test11'", + "statementHighlightOffset": 52, + "statementHighlightLength": 13, + "errorCode": 0, + "errorSeverity": 0, + "errorMessage": "" + } + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseSecurityEventsGetMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseSecurityEventsGetMin.json new file mode 100644 index 000000000000..d3f804fbbadb --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseSecurityEventsGetMin.json @@ -0,0 +1,89 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg", + "managedInstanceName": "testcl", + "databaseName": "database1", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Sql/managedInstances/testcl/databases/database1/securityEvents/06364798761800000000000000001", + "name": "06364798761800000000000000001", + "type": "Microsoft.Sql/servers/databases/securityEvents", + "properties": { + "eventTime": "2017-12-24T10:13:24.729Z", + "securityEventType": "SqlInjectionExploit", + "subscription": "00000000-1111-2222-3333-444444444444", + "server": "testcl", + "database": "database1", + "clientIp": "10.166.113.220", + "applicationName": "myApp", + "principalName": "maliciousUser", + "securityEventSqlInjectionAdditionalProperties": { + "threatId": "1", + "statement": "select * from sys.databases where database_id like '' or 1 = 1 --' and family = 'test11'", + "statementHighlightOffset": 52, + "statementHighlightLength": 13, + "errorCode": 0, + "errorSeverity": 0, + "errorMessage": "" + } + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Sql/managedInstances/testcl/databases/database1/securityEvents/06364798761800000000000000002", + "name": "06364798761800000000000000002", + "type": "Microsoft.Sql/servers/databases/securityEvents", + "properties": { + "eventTime": "2017-12-24T10:11:14.121Z", + "securityEventType": "SqlInjectionExploit", + "subscription": "00000000-1111-2222-3333-444444444444", + "server": "testcl", + "database": "database1", + "clientIp": "10.166.113.220", + "applicationName": "myApp", + "principalName": "maliciousUser", + "securityEventSqlInjectionAdditionalProperties": { + "threatId": "1", + "statement": "select * from sys.databases where database_id like '' or 1 = 1 --' and family = 'test10'", + "statementHighlightOffset": 52, + "statementHighlightLength": 13, + "errorCode": 0, + "errorSeverity": 0, + "errorMessage": "" + } + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Sql/managedInstances/testcl/databases/database1/securityEvents/06364798761800000000000000003", + "name": "06364798761800000000000000003", + "type": "Microsoft.Sql/servers/databases/securityEvents", + "properties": { + "eventTime": "2017-12-24T10:03:17.066Z", + "securityEventType": "SqlInjectionExploit", + "subscription": "00000000-1111-2222-3333-444444444444", + "server": "testcl", + "database": "database1", + "clientIp": "10.166.113.220", + "applicationName": "myApp", + "principalName": "maliciousUser", + "securityEventSqlInjectionAdditionalProperties": { + "threatId": "1", + "statement": "select * from sys.databases where database_id like '' or 1 = 1 --' and family = 'test9'", + "statementHighlightOffset": 52, + "statementHighlightLength": 13, + "errorCode": 0, + "errorSeverity": 0, + "errorMessage": "" + } + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseSensitivityLabelsCurrentUpdate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseSensitivityLabelsCurrentUpdate.json new file mode 100644 index 000000000000..d0d93c3a60c9 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseSensitivityLabelsCurrentUpdate.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "managedInstanceName": "myManagedInstanceName", + "databaseName": "myDatabase", + "api-version": "2021-02-01-preview", + "parameters": { + "operations": [ + { + "properties": { + "op": "set", + "schema": "dbo", + "table": "table1", + "column": "column1", + "sensitivityLabel": { + "properties": { + "labelName": "Highly Confidential", + "labelId": "3A477B16-9423-432B-AA97-6069B481CEC3", + "informationType": "Financial", + "informationTypeId": "1D3652D6-422C-4115-82F1-65DAEBC665C8" + } + } + } + }, + { + "properties": { + "op": "set", + "schema": "dbo", + "table": "table2", + "column": "column2", + "sensitivityLabel": { + "properties": { + "informationType": "PhoneNumber", + "informationTypeId": "d22fa6e9-5ee4-3bde-4c2b-a409604c4646", + "labelId": "bf91e08c-f4f0-478a-b016-25164b2a65ff", + "labelName": "PII" + } + } + } + }, + { + "properties": { + "op": "remove", + "schema": "dbo", + "table": "Table1", + "column": "Column3" + } + } + ] + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseSensitivityLabelsListByDatabaseCurrent.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseSensitivityLabelsListByDatabaseCurrent.json new file mode 100644 index 000000000000..a3d481b60e00 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseSensitivityLabelsListByDatabaseCurrent.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "managedInstanceName": "myManagedInstanceName", + "databaseName": "myDatabase", + "sensitivityLabelSource": "current", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Sql/managedInstances/myManagedInstanceName/databases/myDatabase/schemas/dbo/tables/myTable/columns/myColumn/sensitivityLabels/current", + "name": "current", + "type": "Microsoft.Sql/managedInstances/databases/schemas/tables/columns/sensitivityLabels", + "properties": { + "schemaName": "dbo", + "tableName": "myTable", + "columnName": "myColumn", + "informationType": "Financial", + "informationTypeId": "d22fa6e9-5ee4-3bde-4c2b-a409604c4646", + "labelId": "05e6eaa1-075a-4fb4-a732-a92215a2444a", + "labelName": "Sensitive", + "rank": "Critical" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Sql/managedInstances/myManagedInstanceName/databases/myDatabase/schemas/dbo/tables/myTable/columns/myColumn3/sensitivityLabels/current", + "name": "current", + "type": "Microsoft.Sql/managedInstances/databases/schemas/tables/columns/sensitivityLabels", + "properties": { + "schemaName": "dbo", + "tableName": "myTable", + "columnName": "myColumn3", + "informationType": "Email", + "informationTypeId": "d22fa6e9-5ee4-3bde-4c2b-a409604c4646", + "labelId": "bf91e08c-f4f0-478a-b016-25164b2a65ff", + "labelName": "PII", + "rank": "High" + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseSensitivityLabelsListByDatabaseRecommended.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseSensitivityLabelsListByDatabaseRecommended.json new file mode 100644 index 000000000000..c615c03def12 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseSensitivityLabelsListByDatabaseRecommended.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "managedInstanceName": "myManagedInstanceName", + "databaseName": "myDatabase", + "sensitivityLabelSource": "recommended", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Sql/managedInstances/myManagedInstanceName/databases/myDatabase/schemas/dbo/tables/myTable/columns/myColumn2/sensitivityLabels/recommended", + "name": "recommended", + "type": "Microsoft.Sql/managedInstances/databases/schemas/tables/columns/sensitivityLabels", + "properties": { + "schemaName": "dbo", + "tableName": "myTable", + "columnName": "myColumn2", + "informationType": "Financial", + "informationTypeId": "d22fa6e9-5ee4-3bde-4c2b-a409604c4646", + "labelId": "05e6eaa1-075a-4fb4-a732-a92215a2444a", + "labelName": "Sensitive" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Sql/managedInstances/myManagedInstanceName/databases/myDatabase/schemas/dbo/tables/myTable/columns/myColumn4/sensitivityLabels/recommended", + "name": "recommended", + "type": "Microsoft.Sql/managedInstances/databases/schemas/tables/columns/sensitivityLabels", + "properties": { + "schemaName": "dbo", + "tableName": "myTable", + "columnName": "myColumn4", + "informationType": "Email", + "informationTypeId": "d22fa6e9-5ee4-3bde-4c2b-a409604c4646", + "labelId": "bf91e08c-f4f0-478a-b016-25164b2a65ff", + "labelName": "PII" + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseSensitivityLabelsRecommendedUpdate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseSensitivityLabelsRecommendedUpdate.json new file mode 100644 index 000000000000..3f8756cdef5e --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseSensitivityLabelsRecommendedUpdate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "managedInstanceName": "myManagedInstanceName", + "databaseName": "myDatabase", + "api-version": "2021-02-01-preview", + "parameters": { + "operations": [ + { + "properties": { + "op": "enable", + "schema": "dbo", + "table": "table1", + "column": "column1" + } + }, + { + "properties": { + "op": "disable", + "schema": "dbo", + "table": "table2", + "column": "column2" + } + }, + { + "properties": { + "op": "disable", + "schema": "dbo", + "table": "Table1", + "column": "Column3" + } + } + ] + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseTableGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseTableGet.json new file mode 100644 index 000000000000..0e317f2c5313 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseTableGet.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "managedInstanceName": "myManagedInstanceName", + "databaseName": "myDatabase", + "schemaName": "dbo", + "tableName": "table1", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Sql/managedInstances/myManagedInstanceName/databases/myDatabase/schemas/dbo/tables/table1", + "name": "table1", + "type": "Microsoft.Sql/managedInstances/databases/schemas/tables" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseTableListBySchema.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseTableListBySchema.json new file mode 100644 index 000000000000..fd14e8782762 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseTableListBySchema.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "managedInstanceName": "myManagedInstanceName", + "databaseName": "myDatabase", + "schemaName": "dbo", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Sql/managedInstances/myManagedInstanceName/databases/myDatabase/schemas/dbo/tables/table1", + "name": "table1", + "type": "Microsoft.Sql/managedInstances/databases/schemas/tables" + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Sql/managedInstances/myManagedInstanceName/databases/myDatabase/schemas/dbo/tables/table2", + "name": "table2", + "type": "Microsoft.Sql/managedInstances/databases/schemas/tables" + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseUpdateMax.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseUpdateMax.json new file mode 100644 index 000000000000..3273ccfe0679 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseUpdateMax.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "managedInstanceName": "managedInstance", + "databaseName": "testdb", + "api-version": "2021-02-01-preview", + "parameters": { + "tags": { + "tagKey1": "TagValue1" + } + } + }, + "responses": { + "200": { + "body": { + "tags": { + "tagKey1": "TagValue1" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "name": "testdb" + }, + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "status": "Online", + "creationDate": "2017-06-07T04:41:33.937Z", + "defaultSecondaryLocation": "North Europe", + "type": "Microsoft.Sql/servers/databases" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseUpdateMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseUpdateMin.json new file mode 100644 index 000000000000..3273ccfe0679 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseUpdateMin.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "managedInstanceName": "managedInstance", + "databaseName": "testdb", + "api-version": "2021-02-01-preview", + "parameters": { + "tags": { + "tagKey1": "TagValue1" + } + } + }, + "responses": { + "200": { + "body": { + "tags": { + "tagKey1": "TagValue1" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "name": "testdb" + }, + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "status": "Online", + "creationDate": "2017-06-07T04:41:33.937Z", + "defaultSecondaryLocation": "North Europe", + "type": "Microsoft.Sql/servers/databases" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseVulnerabilityAssessmentCreateMax.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseVulnerabilityAssessmentCreateMax.json new file mode 100644 index 000000000000..bedd3ed0411e --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseVulnerabilityAssessmentCreateMax.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityaseessmenttest-4799", + "managedInstanceName": "vulnerabilityaseessmenttest-6440", + "databaseName": "testdb", + "vulnerabilityAssessmentName": "default", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "storageContainerPath": "https://myStorage.blob.core.windows.net/vulnerability-assessment/", + "storageContainerSasKey": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX", + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": true, + "emails": [ + "email1@mail.com", + "email2@mail.com" + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/managedInstances/vulnerabilityaseessmenttest-6440/databases/testdb/vulnerabilityAssessments/default", + "name": "default", + "type": "Microsoft.Sql/servers/databases/vulnerabilityAssessments", + "properties": { + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": true, + "emails": [ + "email1@mail.com", + "email2@mail.com" + ] + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/managedInstances/vulnerabilityaseessmenttest-6440/databases/testdb/vulnerabilityAssessments/default", + "name": "default", + "type": "Microsoft.Sql/servers/databases/vulnerabilityAssessments", + "properties": { + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": true, + "emails": [ + "email1@mail.com", + "email2@mail.com" + ] + } + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseVulnerabilityAssessmentCreateMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseVulnerabilityAssessmentCreateMin.json new file mode 100644 index 000000000000..1c8c0849113e --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseVulnerabilityAssessmentCreateMin.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityaseessmenttest-4799", + "managedInstanceName": "vulnerabilityaseessmenttest-6440", + "databaseName": "testdb", + "vulnerabilityAssessmentName": "default", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "storageContainerPath": "https://myStorage.blob.core.windows.net/vulnerability-assessment/", + "storageContainerSasKey": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/managedInstances/vulnerabilityaseessmenttest-6440/databases/testdb/vulnerabilityAssessments/default", + "name": "default", + "type": "Microsoft.Sql/servers/databases/vulnerabilityAssessments", + "properties": { + "recurringScans": { + "isEnabled": false, + "emailSubscriptionAdmins": false, + "emails": [] + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/managedInstances/vulnerabilityaseessmenttest-6440/databases/testdb/vulnerabilityAssessments/default", + "name": "default", + "type": "Microsoft.Sql/servers/databases/vulnerabilityAssessments", + "properties": { + "recurringScans": { + "isEnabled": false, + "emailSubscriptionAdmins": false, + "emails": [] + } + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseVulnerabilityAssessmentDelete.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseVulnerabilityAssessmentDelete.json new file mode 100644 index 000000000000..2aa25b934e47 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseVulnerabilityAssessmentDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityaseessmenttest-4799", + "managedInstanceName": "vulnerabilityaseessmenttest-6440", + "databaseName": "testdb", + "vulnerabilityAssessmentName": "default", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseVulnerabilityAssessmentGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseVulnerabilityAssessmentGet.json new file mode 100644 index 000000000000..fd5385177254 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseVulnerabilityAssessmentGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityaseessmenttest-4799", + "managedInstanceName": "vulnerabilityaseessmenttest-6440", + "databaseName": "testdb", + "vulnerabilityAssessmentName": "default", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/managedInstances/vulnerabilityaseessmenttest-6440/databases/testdb/vulnerabilityAssessments/default", + "name": "default", + "type": "Microsoft.Sql/servers/databases/vulnerabilityAssessments", + "properties": { + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": true, + "emails": [ + "email1@mail.com", + "email2@mail.com" + ] + } + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseVulnerabilityAssessmentListByDatabase.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseVulnerabilityAssessmentListByDatabase.json new file mode 100644 index 000000000000..af31fde013c9 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseVulnerabilityAssessmentListByDatabase.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityaseessmenttest-4799", + "managedInstanceName": "vulnerabilityaseessmenttest-6440", + "databaseName": "testdb", + "vulnerabilityAssessmentName": "default", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/managedInstances/vulnerabilityaseessmenttest-6440/databases/testdb/vulnerabilityAssessments/default", + "name": "default", + "type": "Microsoft.Sql/servers/databases/vulnerabilityAssessments", + "properties": { + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": true, + "emails": [ + "email1@mail.com", + "email2@mail.com" + ] + } + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseVulnerabilityAssessmentRuleBaselineCreate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseVulnerabilityAssessmentRuleBaselineCreate.json new file mode 100644 index 000000000000..676f2108f023 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseVulnerabilityAssessmentRuleBaselineCreate.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityaseessmenttest-4799", + "managedInstanceName": "vulnerabilityaseessmenttest-6440", + "databaseName": "testdb", + "vulnerabilityAssessmentName": "default", + "ruleId": "VA1001", + "baselineName": "default", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "baselineResults": [ + { + "result": [ + "userA", + "SELECT" + ] + }, + { + "result": [ + "userB", + "SELECT" + ] + }, + { + "result": [ + "userC", + "SELECT", + "tableId_4" + ] + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/managedInstances/vulnerabilityaseessmenttest-6440/databases/testdb/vulnerabilityAssessments/default/rules/VA1001/baselines/default", + "name": "default", + "type": "Microsoft.Sql/servers/databases/vulnerabilityAssessments/rules/baselines", + "properties": { + "baselineResults": [ + { + "result": [ + "userA", + "SELECT" + ] + }, + { + "result": [ + "userB", + "SELECT" + ] + }, + { + "result": [ + "userC", + "SELECT", + "tableId_4" + ] + } + ] + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseVulnerabilityAssessmentRuleBaselineDelete.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseVulnerabilityAssessmentRuleBaselineDelete.json new file mode 100644 index 000000000000..46f1b144f288 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseVulnerabilityAssessmentRuleBaselineDelete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityaseessmenttest-4799", + "managedInstanceName": "vulnerabilityaseessmenttest-6440", + "databaseName": "testdb", + "baselineName": "default", + "ruleId": "VA1001", + "vulnerabilityAssessmentName": "default", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseVulnerabilityAssessmentRuleBaselineGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseVulnerabilityAssessmentRuleBaselineGet.json new file mode 100644 index 000000000000..759700411677 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseVulnerabilityAssessmentRuleBaselineGet.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityaseessmenttest-4711", + "managedInstanceName": "vulnerabilityaseessmenttest-6411", + "databaseName": "testdb", + "vulnerabilityAssessmentName": "default", + "ruleId": "VA1001", + "baselineName": "master", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/managedInstances/vulnerabilityaseessmenttest-6440/databases/testdb/vulnerabilityAssessments/default/rules/VA1001/baselines/default", + "name": "default", + "type": "Microsoft.Sql/servers/databases/vulnerabilityAssessments/rules/baselines", + "properties": { + "baselineResults": [ + { + "result": [ + "userA", + "SELECT" + ] + }, + { + "result": [ + "userB", + "SELECT" + ] + }, + { + "result": [ + "userC", + "SELECT", + "tableId_4" + ] + } + ] + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseVulnerabilityAssessmentScanExport.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseVulnerabilityAssessmentScanExport.json new file mode 100644 index 000000000000..00b138fd8efa --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseVulnerabilityAssessmentScanExport.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityassessmenttest-4799", + "managedInstanceName": "vulnerabilityassessmenttest-6440", + "databaseName": "testdb", + "vulnerabilityAssessmentName": "default", + "scanId": "scan001", + "api-version": "2021-02-01-preview", + "parameters": {} + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityassessmenttest-4799/providers/Microsoft.Sql/managedInstances/vulnerabilityassessmenttest-6440/databases/testdb/vulnerabilityAssessments/default/scans/scan001/export", + "name": "scan001", + "type": "Microsoft.Sql/servers/databases/vulnerabilityAssessments/scans/export", + "properties": { + "exportedReportLocation": "https://myaccount.blob.core.windows.net/vulnerabilityAssessment/vulnerabilityassessmenttest-6440/testdb/scan001.xlsx" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityassessmenttest-4799/providers/Microsoft.Sql/managedInstances/vulnerabilityassessmenttest-6440/databases/testdb/vulnerabilityAssessments/default/scans/scan001/export", + "name": "scan001", + "type": "Microsoft.Sql/servers/databases/vulnerabilityAssessments/scans/export", + "properties": { + "exportedReportLocation": "https://myaccount.blob.core.windows.net/vulnerabilityAssessment/vulnerabilityassessmenttest-6440/testdb/scan001.xlsx" + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseVulnerabilityAssessmentScanRecordsGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseVulnerabilityAssessmentScanRecordsGet.json new file mode 100644 index 000000000000..d35a4b71ae32 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseVulnerabilityAssessmentScanRecordsGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityassessmenttest-4711", + "managedInstanceName": "vulnerabilityassessmenttest-6411", + "databaseName": "testdb", + "vulnerabilityAssessmentName": "default", + "scanId": "scan001", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityassessmenttest-4799/providers/Microsoft.Sql/managedInstances/vulnerabilityassessmenttest-6440/databases/testdb/vulnerabilityAssessments/default/scans/scan001", + "name": "scan001", + "type": "Microsoft.Sql/servers/databases/vulnerabilityAssessments/scans", + "properties": { + "scanId": "scan001", + "triggerType": "OnDemand", + "state": "Passed", + "startTime": "2017-12-12T17:45:06Z", + "endTime": "2017-12-12T17:47:06Z", + "errors": [], + "storageContainerPath": "https://myaccount.blob.core.windows.net/vulnerability-assessment", + "numberOfFailedSecurityChecks": 9 + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseVulnerabilityAssessmentScanRecordsListByDatabase.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseVulnerabilityAssessmentScanRecordsListByDatabase.json new file mode 100644 index 000000000000..aea31bf37027 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseVulnerabilityAssessmentScanRecordsListByDatabase.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityassessmenttest-4711", + "managedInstanceName": "vulnerabilityassessmenttest-6411", + "databaseName": "testdb", + "vulnerabilityAssessmentName": "default", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityassessmenttest-4799/providers/Microsoft.Sql/managedInstances/vulnerabilityassessmenttest-6440/databases/testdb/vulnerabilityAssessments/default/scans/scan001", + "name": "scan001", + "type": "Microsoft.Sql/servers/databases/vulnerabilityAssessments/scans", + "properties": { + "scanId": "scan001", + "triggerType": "OnDemand", + "state": "Passed", + "startTime": "2017-12-12T17:45:06Z", + "endTime": "2017-12-12T17:47:06Z", + "errors": [], + "storageContainerPath": "https://myaccount.blob.core.windows.net/vulnerability-assessment", + "numberOfFailedSecurityChecks": 9 + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityassessmenttest-4799/providers/Microsoft.Sql/managedInstances/vulnerabilityassessmenttest-6440/databases/testdb/vulnerabilityAssessments/default/scans/scan002", + "name": "scan002", + "type": "Microsoft.Sql/servers/databases/vulnerabilityAssessments/scans", + "properties": { + "scanId": "scan002", + "triggerType": "Recurring", + "state": "Failed", + "startTime": "2017-12-12T17:45:06Z", + "endTime": "2017-12-12T17:47:06Z", + "errors": [], + "storageContainerPath": "https://myaccount.blob.core.windows.net/vulnerability-assessment", + "numberOfFailedSecurityChecks": 9 + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityassessmenttest-4799/providers/Microsoft.Sql/managedInstances/vulnerabilityassessmenttest-6440/databases/testdb/vulnerabilityAssessments/default/scans/scan003", + "name": "scan003", + "type": "Microsoft.Sql/servers/databases/vulnerabilityAssessments/scans", + "properties": { + "scanId": "scan003", + "triggerType": "Recurring", + "state": "FailedToRun", + "startTime": "2017-12-12T17:45:06Z", + "endTime": "2017-12-12T17:47:06Z", + "errors": [ + { + "code": "StorageNotFound", + "message": "Storage not found" + } + ], + "storageContainerPath": "https://myaccount.blob.core.windows.net/vulnerability-assessment", + "numberOfFailedSecurityChecks": 0 + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseVulnerabilityAssessmentScansExecute.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseVulnerabilityAssessmentScansExecute.json new file mode 100644 index 000000000000..f18de05645f0 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedDatabaseVulnerabilityAssessmentScansExecute.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityassessmenttest-4711", + "managedInstanceName": "vulnerabilityassessmenttest-6411", + "databaseName": "testdb", + "vulnerabilityAssessmentName": "default", + "scanId": "scan01", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceAdministratorCreate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceAdministratorCreate.json new file mode 100644 index 000000000000..0831d0d28c71 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceAdministratorCreate.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "managedInstanceName": "managedInstance", + "administratorName": "ActiveDirectory", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "44444444-3333-2222-1111-000000000000", + "tenantId": "55555555-4444-3333-2222-111111111111" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/managedInstances/managedInstance/administrators/ActiveDirectory", + "name": "ActiveDirectory", + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "44444444-3333-2222-1111-000000000000", + "tenantId": "55555555-4444-3333-2222-111111111111" + }, + "type": "Microsoft.Sql/managedInstances/administrators" + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/managedInstances/managedInstance/administrators/ActiveDirectory", + "name": "ActiveDirectory", + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "44444444-3333-2222-1111-000000000000", + "tenantId": "55555555-4444-3333-2222-111111111111" + }, + "type": "Microsoft.Sql/managedInstances/administrators" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceAdministratorDelete.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceAdministratorDelete.json new file mode 100644 index 000000000000..ea38c1037091 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceAdministratorDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "managedInstanceName": "managedInstance", + "administratorName": "ActiveDirectory", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceAdministratorGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceAdministratorGet.json new file mode 100644 index 000000000000..78ad9ee461c7 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceAdministratorGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "managedInstanceName": "managedInstance", + "administratorName": "ActiveDirectory", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/managedInstances/managedInstance/administrators/ActiveDirectory", + "name": "ActiveDirectory", + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "44444444-3333-2222-1111-000000000000", + "tenantId": "55555555-4444-3333-2222-111111111111" + }, + "type": "Microsoft.Sql/managedInstances/administrators" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceAdministratorListByInstance.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceAdministratorListByInstance.json new file mode 100644 index 000000000000..8c651fbc7844 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceAdministratorListByInstance.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "managedInstanceName": "managedInstance", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/managedInstances/managedInstance/administrators/ActiveDirectory", + "name": "ActiveDirectory", + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "44444444-3333-2222-1111-000000000000", + "tenantId": "55555555-4444-3333-2222-111111111111" + }, + "type": "Microsoft.Sql/managedInstances/administrators" + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceAdministratorUpdate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceAdministratorUpdate.json new file mode 100644 index 000000000000..0831d0d28c71 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceAdministratorUpdate.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "managedInstanceName": "managedInstance", + "administratorName": "ActiveDirectory", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "44444444-3333-2222-1111-000000000000", + "tenantId": "55555555-4444-3333-2222-111111111111" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/managedInstances/managedInstance/administrators/ActiveDirectory", + "name": "ActiveDirectory", + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "44444444-3333-2222-1111-000000000000", + "tenantId": "55555555-4444-3333-2222-111111111111" + }, + "type": "Microsoft.Sql/managedInstances/administrators" + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/managedInstances/managedInstance/administrators/ActiveDirectory", + "name": "ActiveDirectory", + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "44444444-3333-2222-1111-000000000000", + "tenantId": "55555555-4444-3333-2222-111111111111" + }, + "type": "Microsoft.Sql/managedInstances/administrators" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceAzureADOnlyAuthCreateOrUpdate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceAzureADOnlyAuthCreateOrUpdate.json new file mode 100644 index 000000000000..3ce44bc3abb7 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceAzureADOnlyAuthCreateOrUpdate.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "managedInstanceName": "managedInstance", + "authenticationName": "Default", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "azureADOnlyAuthentication": false + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/azureADOnlyAuthentications/providers/Microsoft.Sql/managedInstances/managedInstance/azureadonlyauthentications/default", + "name": "Default", + "type": "Microsoft.Sql/managedInstances/azureadonlyauthentications", + "properties": { + "azureADOnlyAuthentication": false + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/azureADOnlyAuthentications/providers/Microsoft.Sql/managedInstances/managedInstance/azureadonlyauthentications/default", + "name": "Default", + "type": "Microsoft.Sql/managedInstances/azureadonlyauthentications", + "properties": { + "azureADOnlyAuthentication": false + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceAzureADOnlyAuthDelete.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceAzureADOnlyAuthDelete.json new file mode 100644 index 000000000000..26a69c070cfd --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceAzureADOnlyAuthDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "managedInstanceName": "managedInstance", + "authenticationName": "Default", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceAzureADOnlyAuthGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceAzureADOnlyAuthGet.json new file mode 100644 index 000000000000..9f47d79e95c4 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceAzureADOnlyAuthGet.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "managedInstanceName": "managedInstance", + "authenticationName": "Default", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/azureADOnlyAuthentications/providers/Microsoft.Sql/managedInstances/managedInstance/azureadonlyauthentications/default", + "name": "Default", + "type": "Microsoft.Sql/managedInstances/azureadonlyauthentications", + "properties": { + "azureADOnlyAuthentication": true + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceAzureADOnlyAuthListByInstance.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceAzureADOnlyAuthListByInstance.json new file mode 100644 index 000000000000..859d425e6cfb --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceAzureADOnlyAuthListByInstance.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "managedInstanceName": "managedInstance", + "authenticationName": "Default", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/azureADOnlyAuthentications/providers/Microsoft.Sql/managedInstances/managedInstance/azureadonlyauthentications/default", + "name": "Default", + "type": "Microsoft.Sql/managedInstances/azureadonlyauthentications", + "properties": { + "azureADOnlyAuthentication": true + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceCreateMax.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceCreateMax.json new file mode 100644 index 000000000000..78eca0f2a6b3 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceCreateMax.json @@ -0,0 +1,131 @@ +{ + "parameters": { + "subscriptionId": "20D7082A-0FC7-4468-82BD-542694D5042B", + "resourceGroupName": "testrg", + "managedInstanceName": "testinstance", + "api-version": "2021-02-01-preview", + "parameters": { + "tags": { + "tagKey1": "TagValue1" + }, + "location": "Japan East", + "sku": { + "name": "GP_Gen5", + "tier": "GeneralPurpose" + }, + "properties": { + "administratorLogin": "dummylogin", + "administratorLoginPassword": "PLACEHOLDER", + "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "vCores": 8, + "storageSizeInGB": 1024, + "licenseType": "LicenseIncluded", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "dnsZonePartner": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Sql/managedInstances/testinstance", + "publicDataEndpointEnabled": false, + "proxyOverride": "Redirect", + "minimalTlsVersion": "1.2", + "timezoneId": "UTC", + "instancePoolId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Sql/instancePools/pool1", + "maintenanceConfigurationId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_JapanEast_MI_1", + "storageAccountType": "GRS", + "administrators": { + "principalType": "User", + "login": "bob@contoso.com", + "sid": "00000011-1111-2222-2222-123456789111", + "tenantId": "00000011-1111-2222-2222-123456789111", + "azureADOnlyAuthentication": true + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "GP_Gen5", + "tier": "GeneralPurpose", + "capacity": 8, + "family": "Gen5" + }, + "properties": { + "fullyQualifiedDomainName": "testinstance.1b4e2caff2530.database.windows.net", + "administratorLogin": "dummylogin", + "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "state": "Ready", + "provisioningState": "Creating", + "vCores": 8, + "storageSizeInGB": 1024, + "licenseType": "LicenseIncluded", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "publicDataEndpointEnabled": false, + "proxyOverride": "Redirect", + "minimalTlsVersion": "1.2", + "dnsZone": "1b4e2caff2530", + "timezoneId": "UTC", + "instancePoolId": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/testrg/providers/Microsoft.Sql/instancePools/pool1", + "maintenanceConfigurationId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_JapanEast_MI_1", + "storageAccountType": "GRS", + "administrators": { + "principalType": "User", + "login": "bob@contoso.com", + "sid": "00000011-1111-2222-2222-123456789111", + "tenantId": "00000011-1111-2222-2222-123456789111", + "azureADOnlyAuthentication": true + } + }, + "location": "japaneast", + "tags": { + "tagKey1": "TagValue1" + }, + "id": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/testrg/providers/Microsoft.Sql/managedInstances/testinstance", + "name": "testinstance", + "type": "Microsoft.Sql/managedInstances" + } + }, + "201": { + "body": { + "sku": { + "name": "GP_Gen5", + "tier": "GeneralPurpose", + "capacity": 8, + "family": "Gen5" + }, + "properties": { + "fullyQualifiedDomainName": "testinstance.1b4e2caff2530.database.windows.net", + "administratorLogin": "dummylogin", + "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "state": "Ready", + "provisioningState": "Creating", + "vCores": 8, + "storageSizeInGB": 1024, + "licenseType": "LicenseIncluded", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "publicDataEndpointEnabled": false, + "proxyOverride": "Redirect", + "minimalTlsVersion": "1.2", + "dnsZone": "1b4e2caff2530", + "timezoneId": "UTC", + "instancePoolId": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/testrg/providers/Microsoft.Sql/instancePools/pool1", + "maintenanceConfigurationId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_JapanEast_MI_1", + "storageAccountType": "GRS", + "administrators": { + "principalType": "User", + "login": "bob@contoso.com", + "sid": "00000011-1111-2222-2222-123456789111", + "tenantId": "00000011-1111-2222-2222-123456789111", + "azureADOnlyAuthentication": true + } + }, + "location": "japaneast", + "tags": { + "tagKey1": "TagValue1" + }, + "id": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/testrg/providers/Microsoft.Sql/managedInstances/testinstance", + "name": "testinstance", + "type": "Microsoft.Sql/managedInstances" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceCreateMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceCreateMin.json new file mode 100644 index 000000000000..e50898176be7 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceCreateMin.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "subscriptionId": "20D7082A-0FC7-4468-82BD-542694D5042B", + "resourceGroupName": "testrg", + "managedInstanceName": "testinstance", + "api-version": "2021-02-01-preview", + "parameters": { + "sku": { + "name": "GP_Gen4", + "tier": "GeneralPurpose" + }, + "properties": { + "administratorLogin": "dummylogin", + "administratorLoginPassword": "PLACEHOLDER", + "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "vCores": 8, + "storageSizeInGB": 1024, + "licenseType": "LicenseIncluded" + }, + "location": "Japan East" + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "GP_Gen4", + "tier": "GeneralPurpose", + "capacity": 8, + "family": "Gen4" + }, + "properties": { + "fullyQualifiedDomainName": "testinstance.1b4e2caff2530.database.windows.net", + "administratorLogin": "dummylogin", + "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "state": "Ready", + "provisioningState": "Creating", + "vCores": 8, + "storageSizeInGB": 1024, + "licenseType": "LicenseIncluded", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "publicDataEndpointEnabled": false, + "proxyOverride": "Redirect", + "dnsZone": "1b4e2caff2530" + }, + "location": "japaneast", + "tags": {}, + "id": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/testrg/providers/Microsoft.Sql/managedInstances/testinstance", + "name": "testinstance", + "type": "Microsoft.Sql/managedInstances" + } + }, + "201": { + "body": { + "sku": { + "name": "GP_Gen4", + "tier": "GeneralPurpose", + "capacity": 8, + "family": "Gen4" + }, + "properties": { + "fullyQualifiedDomainName": "testinstance.1b4e2caff2530.database.windows.net", + "administratorLogin": "dummylogin", + "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "state": "Ready", + "provisioningState": "Creating", + "vCores": 8, + "storageSizeInGB": 1024, + "licenseType": "LicenseIncluded", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "publicDataEndpointEnabled": false, + "proxyOverride": "Redirect", + "dnsZone": "1b4e2caff2530" + }, + "location": "japaneast", + "tags": {}, + "id": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/testrg/providers/Microsoft.Sql/managedInstances/testinstance", + "name": "testinstance", + "type": "Microsoft.Sql/managedInstances" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceDelete.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceDelete.json new file mode 100644 index 000000000000..8ca4933d8cf8 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "20D7082A-0FC7-4468-82BD-542694D5042B", + "resourceGroupName": "testrg", + "managedInstanceName": "testinstance", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceEncryptionProtectorCreateOrUpdateKeyVault.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceEncryptionProtectorCreateOrUpdateKeyVault.json new file mode 100644 index 000000000000..0a255765ed98 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceEncryptionProtectorCreateOrUpdateKeyVault.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "managedInstanceName": "sqlcrudtest-4645", + "encryptionProtectorName": "current", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "serverKeyType": "AzureKeyVault", + "serverKeyName": "someVault_someKey_01234567890123456789012345678901", + "autoRotationEnabled": false + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/managedInstances/sqlcrudtest-4645/encryptionProtector/current", + "name": "current", + "type": "Microsoft.Sql/managedInstances/encryptionProtector", + "kind": "azurekeyvault", + "properties": { + "serverKeyName": "someVault_someKey_01234567890123456789012345678901", + "serverKeyType": "AzureKeyVault", + "autoRotationEnabled": false + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceEncryptionProtectorCreateOrUpdateServiceManaged.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceEncryptionProtectorCreateOrUpdateServiceManaged.json new file mode 100644 index 000000000000..04a516c2c005 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceEncryptionProtectorCreateOrUpdateServiceManaged.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "managedInstanceName": "sqlcrudtest-4645", + "encryptionProtectorName": "current", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "serverKeyType": "ServiceManaged", + "serverKeyName": "ServiceManaged" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/managedInstances/sqlcrudtest-4645/encryptionProtector/current", + "name": "current", + "type": "Microsoft.Sql/managedInstances/encryptionProtector", + "kind": "servicemanaged", + "properties": { + "serverKeyName": "ServiceManaged", + "serverKeyType": "ServiceManaged" + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceEncryptionProtectorGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceEncryptionProtectorGet.json new file mode 100644 index 000000000000..ee11433e9c7b --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceEncryptionProtectorGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "managedInstanceName": "sqlcrudtest-4645", + "encryptionProtectorName": "current", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/managedInstances/sqlcrudtest-4645/encryptionProtector/current", + "name": "current", + "type": "Microsoft.Sql/managedInstances/encryptionProtector", + "kind": "azurekeyvault", + "properties": { + "serverKeyName": "someVault_someKey_01234567890123456789012345678901", + "serverKeyType": "AzureKeyVault", + "uri": "https://someVault.vault.azure.net/keys/someKey/01234567890123456789012345678901" + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceEncryptionProtectorList.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceEncryptionProtectorList.json new file mode 100644 index 000000000000..520818ca5540 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceEncryptionProtectorList.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "managedInstanceName": "sqlcrudtest-4645", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/managedInstances/sqlcrudtest-4645/encryptionProtector/current", + "name": "current", + "type": "Microsoft.Sql/managedInstances/encryptionProtector", + "kind": "azurekeyvault", + "properties": { + "serverKeyName": "someVault_someKey_01234567890123456789012345678901", + "serverKeyType": "AzureKeyVault", + "uri": "https://someVault.vault.azure.net/keys/someKey/01234567890123456789012345678901" + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceEncryptionProtectorRevalidate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceEncryptionProtectorRevalidate.json new file mode 100644 index 000000000000..01ac0dba2a8f --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceEncryptionProtectorRevalidate.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "managedInstanceName": "sqlcrudtest-4645", + "encryptionProtectorName": "current", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceGet.json new file mode 100644 index 000000000000..b7a7624c07a3 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceGet.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "20d7082a-0fc7-4468-82bd-542694d5042b", + "resourceGroupName": "testrg", + "managedInstanceName": "testinstance", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "GP_Gen4", + "tier": "GeneralPurpose", + "capacity": 8, + "family": "Gen4" + }, + "properties": { + "fullyQualifiedDomainName": "testinstance.1b4e2caff2530.database.windows.net", + "administratorLogin": "dummylogin", + "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "state": "Ready", + "provisioningState": "Succeeded", + "vCores": 8, + "storageSizeInGB": 1024, + "licenseType": "LicenseIncluded", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "publicDataEndpointEnabled": false, + "proxyOverride": "Default", + "minimalTlsVersion": "1.2", + "dnsZone": "1b4e2caff2530", + "instancePoolId": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/testrg/providers/Microsoft.Sql/instancePools/instancePool1", + "maintenanceConfigurationId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_JapanEast_MI_1", + "storageAccountType": "GRS" + }, + "location": "japaneast", + "tags": { + "key": "value" + }, + "id": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/testrg/providers/Microsoft.Sql/managedInstances/testinstance", + "name": "testinstance", + "type": "Microsoft.Sql/managedInstances" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceGetWithExpandEqualsAdministrators.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceGetWithExpandEqualsAdministrators.json new file mode 100644 index 000000000000..0f7aa662855c --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceGetWithExpandEqualsAdministrators.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "subscriptionId": "20d7082a-0fc7-4468-82bd-542694d5042b", + "resourceGroupName": "testrg", + "managedInstanceName": "testinstance", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "GP_Gen4", + "tier": "GeneralPurpose", + "capacity": 8, + "family": "Gen4" + }, + "properties": { + "fullyQualifiedDomainName": "testinstance.1b4e2caff2530.database.windows.net", + "administratorLogin": "dummylogin", + "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "state": "Ready", + "provisioningState": "Succeeded", + "vCores": 8, + "storageSizeInGB": 1024, + "licenseType": "LicenseIncluded", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "publicDataEndpointEnabled": false, + "proxyOverride": "Default", + "minimalTlsVersion": "1.2", + "dnsZone": "1b4e2caff2530", + "instancePoolId": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/testrg/providers/Microsoft.Sql/instancePools/instancePool1", + "maintenanceConfigurationId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_JapanEast_MI_1", + "storageAccountType": "GRS", + "administrators": { + "principalType": "User", + "login": "bob@contoso.com", + "sid": "00000011-1111-2222-2222-123456789111", + "tenantId": "00000011-1111-2222-2222-123456789111", + "azureADOnlyAuthentication": true + } + }, + "location": "japaneast", + "tags": { + "key": "value" + }, + "id": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/testrg/providers/Microsoft.Sql/managedInstances/testinstance", + "name": "testinstance", + "type": "Microsoft.Sql/managedInstances" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceKeyCreateOrUpdate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceKeyCreateOrUpdate.json new file mode 100644 index 000000000000..e64f949e53a2 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceKeyCreateOrUpdate.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "managedInstanceName": "sqlcrudtest-4645", + "keyName": "someVault_someKey_01234567890123456789012345678901", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "serverKeyType": "AzureKeyVault", + "uri": "https://someVault.vault.azure.net/keys/someKey/01234567890123456789012345678901" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/managedInstances/sqlcrudtest-4645/keys/someVault_someKey_01234567890123456789012345678901", + "name": "sqlcrudtest-4645", + "type": "Microsoft.Sql/managedInstances/keys", + "kind": "azurekeyvault", + "properties": { + "thumbprint": "00112233445566778899AABBCCDDEEFFAABBCCDD", + "creationDate": "2020-11-01T00:00:00Z", + "autoRotationEnabled": false + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/managedInstances/sqlcrudtest-4645/keys/someVault_someKey_01234567890123456789012345678901", + "name": "sqlcrudtest-4645", + "type": "Microsoft.Sql/managedInstances/keys", + "kind": "azurekeyvault", + "properties": { + "thumbprint": "00112233445566778899AABBCCDDEEFFAABBCCDD", + "creationDate": "2020-11-01T00:00:00Z", + "autoRotationEnabled": false + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceKeyDelete.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceKeyDelete.json new file mode 100644 index 000000000000..c1f68d2bdb4b --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceKeyDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "managedInstanceName": "sqlcrudtest-4645", + "keyName": "someVault_someKey_01234567890123456789012345678901", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceKeyGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceKeyGet.json new file mode 100644 index 000000000000..5675b94741c1 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceKeyGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "managedInstanceName": "sqlcrudtest-4645", + "keyName": "someVault_someKey_01234567890123456789012345678901", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/managedInstances/sqlcrudtest-4645/keys/someVault_someKey_01234567890123456789012345678901", + "name": "sqlcrudtest-4645", + "type": "Microsoft.Sql/managedInstances/keys", + "kind": "azurekeyvault", + "properties": { + "thumbprint": "00112233445566778899AABBCCDDEEFFAABBCCDD", + "creationDate": "2020-11-01T00:00:00Z", + "autoRotationEnabled": false + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceKeyList.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceKeyList.json new file mode 100644 index 000000000000..98b1648c29b3 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceKeyList.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "managedInstanceName": "sqlcrudtest-4645", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/managedInstances/sqlcrudtest-4645/keys/someVault_someKey_01234567890123456789012345678901", + "name": "someVault_someKey_01234567890123456789012345678901", + "type": "Microsoft.Sql/managedInstances/keys", + "kind": "azurekeyvault", + "properties": { + "thumbprint": "00112233445566778899AABBCCDDEEFFAABBCCDD", + "creationDate": "2020-11-15T00:00:00Z", + "autoRotationEnabled": false + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/managedInstances/sqlcrudtest-4645/keys/myVault_myKey_11111111111111111111111111111111", + "name": "myVault_myKey_11111111111111111111111111111111", + "type": "Microsoft.Sql/managedInstances/keys", + "kind": "azurekeyvault", + "properties": { + "thumbprint": "AAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBB", + "creationDate": "2020-11-15T00:00:00Z", + "autoRotationEnabled": false + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/managedInstances/sqlcrudtest-4645/keys/ServiceManaged", + "name": "ServiceManaged", + "type": "Microsoft.Sql/managedInstances/keys", + "kind": "servicemanaged", + "properties": {} + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceList.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceList.json new file mode 100644 index 000000000000..944e0bf9fd11 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceList.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "subscriptionId": "20D7082A-0FC7-4468-82BD-542694D5042B", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "location": "japaneast", + "id": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/Test1/providers/Microsoft.Sql/managedInstances/testinstance1", + "name": "testinstance1", + "type": "Microsoft.Sql/managedInstances", + "sku": { + "name": "GP_Gen4", + "tier": "GeneralPurpose", + "capacity": 8, + "family": "Gen4" + }, + "properties": { + "fullyQualifiedDomainName": "testinstance1.1b4e2caff2530.database.windows.net", + "administratorLogin": "dummylogin", + "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "state": "Ready", + "provisioningState": "Succeeded", + "vCores": 8, + "storageSizeInGB": 1024, + "licenseType": "LicenseIncluded", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "publicDataEndpointEnabled": false, + "proxyOverride": "Default", + "minimalTlsVersion": "1.2", + "dnsZone": "1b4e2caff2530", + "maintenanceConfigurationId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_JapanEast_MI_1", + "storageAccountType": "GRS" + } + }, + { + "location": "japaneast", + "id": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/Test1/providers/Microsoft.Sql/managedInstances/testinstance2", + "name": "testinstance2", + "type": "Microsoft.Sql/managedInstances", + "sku": { + "name": "BC_Gen5", + "tier": "BusinessCritical", + "capacity": 16, + "family": "Gen4" + }, + "properties": { + "fullyQualifiedDomainName": "testinstance2.2c3d1bdae3412.database.windows.net", + "administratorLogin": "dummylogin", + "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/subnet2", + "state": "Ready", + "provisioningState": "Succeeded", + "vCores": 16, + "storageSizeInGB": 1024, + "licenseType": "Full", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "publicDataEndpointEnabled": false, + "proxyOverride": "Default", + "minimalTlsVersion": "1.2", + "dnsZone": "2c3d1bdae3412", + "maintenanceConfigurationId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_JapanEast_MI_1", + "storageAccountType": "GRS" + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceListByInstancePool.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceListByInstancePool.json new file mode 100644 index 000000000000..66d0154258a2 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceListByInstancePool.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "subscriptionId": "20D7082A-0FC7-4468-82BD-542694D5042B", + "resourceGroupName": "Test1", + "instancePoolName": "pool1", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "location": "canadacentral", + "id": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/Test1/providers/Microsoft.Sql/managedInstances/testinstance1", + "name": "testinstance1", + "type": "Microsoft.Sql/managedInstances", + "sku": { + "name": "GP_Gen5", + "tier": "GeneralPurpose", + "capacity": 8, + "family": "Gen5" + }, + "properties": { + "fullyQualifiedDomainName": "testinstance1.1b4e2caff2530.database.windows.net", + "administratorLogin": "dummylogin", + "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/Test1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "state": "Ready", + "provisioningState": "Succeeded", + "vCores": 8, + "storageSizeInGB": 1024, + "licenseType": "LicenseIncluded", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "publicDataEndpointEnabled": false, + "dnsZone": "1b4e2caff2530", + "proxyOverride": "Redirect", + "minimalTlsVersion": "1.2", + "instancePoolId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/Test1/providers/Microsoft.Sql/instancePools/pool1", + "maintenanceConfigurationId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_CanadaCentral_MI_1", + "storageAccountType": "GRS" + } + }, + { + "location": "canadacentral", + "id": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/Test1/providers/Microsoft.Sql/managedInstances/testinstance2", + "name": "testinstance2", + "type": "Microsoft.Sql/managedInstances", + "sku": { + "name": "GP_Gen5", + "tier": "GeneralPurpose", + "capacity": 16, + "family": "Gen5" + }, + "properties": { + "fullyQualifiedDomainName": "testinstance2.2c3d1bdae3412.database.windows.net", + "administratorLogin": "dummylogin", + "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/Test1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "state": "Ready", + "provisioningState": "Succeeded", + "vCores": 16, + "storageSizeInGB": 1024, + "licenseType": "Full", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "publicDataEndpointEnabled": false, + "dnsZone": "2c3d1bdae3412", + "proxyOverride": "Redirect", + "minimalTlsVersion": "1.2", + "instancePoolId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/Test1/providers/Microsoft.Sql/instancePools/pool1", + "maintenanceConfigurationId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_CanadaCentral_MI_1", + "storageAccountType": "GRS" + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceListByInstancePoolWithExpandEqualsAdministrators.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceListByInstancePoolWithExpandEqualsAdministrators.json new file mode 100644 index 000000000000..bbacb5b1fcab --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceListByInstancePoolWithExpandEqualsAdministrators.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "subscriptionId": "20D7082A-0FC7-4468-82BD-542694D5042B", + "resourceGroupName": "Test1", + "instancePoolName": "pool1", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "location": "canadacentral", + "id": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/Test1/providers/Microsoft.Sql/managedInstances/testinstance1", + "name": "testinstance1", + "type": "Microsoft.Sql/managedInstances", + "sku": { + "name": "GP_Gen5", + "tier": "GeneralPurpose", + "capacity": 8, + "family": "Gen5" + }, + "properties": { + "fullyQualifiedDomainName": "testinstance1.1b4e2caff2530.database.windows.net", + "administratorLogin": "dummylogin", + "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/Test1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "state": "Ready", + "provisioningState": "Succeeded", + "vCores": 8, + "storageSizeInGB": 1024, + "licenseType": "LicenseIncluded", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "publicDataEndpointEnabled": false, + "dnsZone": "1b4e2caff2530", + "proxyOverride": "Redirect", + "minimalTlsVersion": "1.2", + "instancePoolId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/Test1/providers/Microsoft.Sql/instancePools/pool1", + "maintenanceConfigurationId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_CanadaCentral_MI_1", + "storageAccountType": "GRS", + "administrators": { + "principalType": "User", + "login": "bob@contoso.com", + "sid": "00000011-1111-2222-2222-123456789111", + "tenantId": "00000011-1111-2222-2222-123456789111", + "azureADOnlyAuthentication": true + } + } + }, + { + "location": "canadacentral", + "id": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/Test1/providers/Microsoft.Sql/managedInstances/testinstance2", + "name": "testinstance2", + "type": "Microsoft.Sql/managedInstances", + "sku": { + "name": "GP_Gen5", + "tier": "GeneralPurpose", + "capacity": 16, + "family": "Gen5" + }, + "properties": { + "fullyQualifiedDomainName": "testinstance2.2c3d1bdae3412.database.windows.net", + "administratorLogin": "dummylogin", + "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/Test1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "state": "Ready", + "provisioningState": "Succeeded", + "vCores": 16, + "storageSizeInGB": 1024, + "licenseType": "Full", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "publicDataEndpointEnabled": false, + "dnsZone": "2c3d1bdae3412", + "proxyOverride": "Redirect", + "minimalTlsVersion": "1.2", + "instancePoolId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/Test1/providers/Microsoft.Sql/instancePools/pool1", + "maintenanceConfigurationId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_CanadaCentral_MI_2", + "storageAccountType": "GRS", + "administrators": { + "principalType": "User", + "login": "bob@contoso.com", + "sid": "00000011-1111-2222-2222-123456789111", + "tenantId": "00000011-1111-2222-2222-123456789111", + "azureADOnlyAuthentication": true + } + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceListByResourceGroup.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceListByResourceGroup.json new file mode 100644 index 000000000000..4046e16dd77c --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceListByResourceGroup.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "subscriptionId": "20D7082A-0FC7-4468-82BD-542694D5042B", + "resourceGroupName": "Test1", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "location": "japaneast", + "id": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/Test1/providers/Microsoft.Sql/managedInstances/testinstance1", + "name": "testinstance1", + "type": "Microsoft.Sql/managedInstances", + "sku": { + "name": "GP_Gen4", + "tier": "GeneralPurpose", + "capacity": 8, + "family": "Gen4" + }, + "properties": { + "fullyQualifiedDomainName": "testinstance1.1b4e2caff2530.database.windows.net", + "administratorLogin": "dummylogin", + "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "state": "Ready", + "provisioningState": "Succeeded", + "vCores": 8, + "storageSizeInGB": 1024, + "licenseType": "LicenseIncluded", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "publicDataEndpointEnabled": false, + "proxyOverride": "Default", + "minimalTlsVersion": "1.2", + "dnsZone": "1b4e2caff2530", + "maintenanceConfigurationId": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_JapanEast_MI_1", + "storageAccountType": "GRS" + } + }, + { + "location": "japaneast", + "id": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/Test1/providers/Microsoft.Sql/managedInstances/testinstance2", + "name": "testinstance2", + "type": "Microsoft.Sql/managedInstances", + "sku": { + "name": "BC_Gen5", + "tier": "BusinessCritical", + "capacity": 16, + "family": "Gen4" + }, + "properties": { + "fullyQualifiedDomainName": "testinstance2.2c3d1bdae3412.database.windows.net", + "administratorLogin": "dummylogin", + "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/subnet2", + "state": "Ready", + "provisioningState": "Succeeded", + "vCores": 16, + "storageSizeInGB": 1024, + "licenseType": "Full", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "publicDataEndpointEnabled": false, + "proxyOverride": "Default", + "minimalTlsVersion": "1.2", + "dnsZone": "2c3d1bdae3412", + "maintenanceConfigurationId": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_JapanEast_MI_1", + "storageAccountType": "GRS" + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceListByResourceGroupWithExpandEqualsAdministrators.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceListByResourceGroupWithExpandEqualsAdministrators.json new file mode 100644 index 000000000000..9c6f149018ae --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceListByResourceGroupWithExpandEqualsAdministrators.json @@ -0,0 +1,87 @@ +{ + "parameters": { + "subscriptionId": "20D7082A-0FC7-4468-82BD-542694D5042B", + "resourceGroupName": "Test1", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "location": "japaneast", + "id": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/Test1/providers/Microsoft.Sql/managedInstances/testinstance1", + "name": "testinstance1", + "type": "Microsoft.Sql/managedInstances", + "sku": { + "name": "GP_Gen4", + "tier": "GeneralPurpose", + "capacity": 8, + "family": "Gen4" + }, + "properties": { + "fullyQualifiedDomainName": "testinstance1.1b4e2caff2530.database.windows.net", + "administratorLogin": "dummylogin", + "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "state": "Ready", + "provisioningState": "Succeeded", + "vCores": 8, + "storageSizeInGB": 1024, + "licenseType": "LicenseIncluded", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "publicDataEndpointEnabled": false, + "proxyOverride": "Default", + "minimalTlsVersion": "1.2", + "dnsZone": "1b4e2caff2530", + "maintenanceConfigurationId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_JapanEast_MI_1", + "storageAccountType": "GRS", + "administrators": { + "principalType": "User", + "login": "bob@contoso.com", + "sid": "00000011-1111-2222-2222-123456789111", + "tenantId": "00000011-1111-2222-2222-123456789111", + "azureADOnlyAuthentication": true + } + } + }, + { + "location": "japaneast", + "id": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/Test1/providers/Microsoft.Sql/managedInstances/testinstance2", + "name": "testinstance2", + "type": "Microsoft.Sql/managedInstances", + "sku": { + "name": "BC_Gen5", + "tier": "BusinessCritical", + "capacity": 16, + "family": "Gen4" + }, + "properties": { + "fullyQualifiedDomainName": "testinstance2.2c3d1bdae3412.database.windows.net", + "administratorLogin": "dummylogin", + "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/subnet2", + "state": "Ready", + "provisioningState": "Succeeded", + "vCores": 16, + "storageSizeInGB": 1024, + "licenseType": "Full", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "publicDataEndpointEnabled": false, + "proxyOverride": "Default", + "minimalTlsVersion": "1.2", + "dnsZone": "2c3d1bdae3412", + "maintenanceConfigurationId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_JapanEast_MI_2", + "storageAccountType": "GRS", + "administrators": { + "principalType": "User", + "login": "bob@contoso.com", + "sid": "00000011-1111-2222-2222-123456789111", + "tenantId": "00000011-1111-2222-2222-123456789111", + "azureADOnlyAuthentication": true + } + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceListWithExpandEqualsAdministrators.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceListWithExpandEqualsAdministrators.json new file mode 100644 index 000000000000..6216c987afd8 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceListWithExpandEqualsAdministrators.json @@ -0,0 +1,86 @@ +{ + "parameters": { + "subscriptionId": "20D7082A-0FC7-4468-82BD-542694D5042B", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "location": "japaneast", + "id": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/Test1/providers/Microsoft.Sql/managedInstances/testinstance1", + "name": "testinstance1", + "type": "Microsoft.Sql/managedInstances", + "sku": { + "name": "GP_Gen4", + "tier": "GeneralPurpose", + "capacity": 8, + "family": "Gen4" + }, + "properties": { + "fullyQualifiedDomainName": "testinstance1.1b4e2caff2530.database.windows.net", + "administratorLogin": "dummylogin", + "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "state": "Ready", + "provisioningState": "Succeeded", + "vCores": 8, + "storageSizeInGB": 1024, + "licenseType": "LicenseIncluded", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "publicDataEndpointEnabled": false, + "proxyOverride": "Default", + "minimalTlsVersion": "1.2", + "dnsZone": "1b4e2caff2530", + "maintenanceConfigurationId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_JapanEast_MI_1", + "storageAccountType": "GRS", + "administrators": { + "principalType": "User", + "login": "bob@contoso.com", + "sid": "00000011-1111-2222-2222-123456789111", + "tenantId": "00000011-1111-2222-2222-123456789111", + "azureADOnlyAuthentication": true + } + } + }, + { + "location": "japaneast", + "id": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/Test1/providers/Microsoft.Sql/managedInstances/testinstance2", + "name": "testinstance2", + "type": "Microsoft.Sql/managedInstances", + "sku": { + "name": "BC_Gen5", + "tier": "BusinessCritical", + "capacity": 16, + "family": "Gen4" + }, + "properties": { + "fullyQualifiedDomainName": "testinstance2.2c3d1bdae3412.database.windows.net", + "administratorLogin": "dummylogin", + "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/subnet2", + "state": "Ready", + "provisioningState": "Succeeded", + "vCores": 16, + "storageSizeInGB": 1024, + "licenseType": "Full", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "publicDataEndpointEnabled": false, + "proxyOverride": "Default", + "minimalTlsVersion": "1.2", + "dnsZone": "2c3d1bdae3412", + "maintenanceConfigurationId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_JapanEast_MI_2", + "storageAccountType": "GRS", + "administrators": { + "principalType": "User", + "login": "bob@contoso.com", + "sid": "00000011-1111-2222-2222-123456789111", + "tenantId": "00000011-1111-2222-2222-123456789111", + "azureADOnlyAuthentication": true + } + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceLongTermRetentionBackupDelete.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceLongTermRetentionBackupDelete.json new file mode 100644 index 000000000000..f0082f4df1da --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceLongTermRetentionBackupDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "locationName": "japaneast", + "managedInstanceName": "testInstance", + "databaseName": "testDatabase", + "backupName": "55555555-6666-7777-8888-999999999999;131637960820000000", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceLongTermRetentionBackupGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceLongTermRetentionBackupGet.json new file mode 100644 index 000000000000..40d2fa42f35e --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceLongTermRetentionBackupGet.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "locationName": "japaneast", + "managedInstanceName": "testInstance", + "databaseName": "testDatabase", + "backupName": "55555555-6666-7777-8888-999999999999;131637960820000000", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/Locations/japaneast/longTermRetentionManagedInstances/testInstance/longTermRetentionDatabases/testDatabase/longTermRetentionManagedInstanceBackups/55555555-6666-7777-8888-999999999999;131637960820000000", + "name": "55555555-6666-7777-8888-999999999999;131637960820000000", + "type": "Microsoft.Sql/locations/longTermRetentionManagedInstances/longTermRetentionDatabases/longTermRetentionManagedInstanceBackups", + "properties": { + "managedInstanceName": "testInstance", + "managedInstanceCreateTime": "2017-09-01T08:00:00Z", + "databaseName": "testDatabase", + "databaseDeletionTime": null, + "backupTime": "2018-08-23T08:00:00Z", + "backupStorageRedundancy": "Geo" + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceLongTermRetentionBackupListByDatabase.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceLongTermRetentionBackupListByDatabase.json new file mode 100644 index 000000000000..5aca355b4e12 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceLongTermRetentionBackupListByDatabase.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "locationName": "japaneast", + "managedInstanceName": "testInstance", + "databaseName": "testDatabase", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/Locations/japaneast/longTermRetentionManagedInstances/testInstance/longTermRetentionDatabases/testDatabase/longTermRetentionManagedInstanceBackups/2018-06-01T08:00:00.000Z;55555555-6666-7777-8888-999999999999;2018-08-23T08:00:00.000Z", + "name": "2018-06-01T08:00:00.000Z;55555555-6666-7777-8888-999999999999;2018-08-23T08:00:00.000Z", + "type": "Microsoft.Sql/locations/longTermRetentionManagedInstances/longTermRetentionDatabases/longTermRetentionManagedInstanceBackups", + "properties": { + "managedInstanceName": "testInstance", + "managedInstanceCreateTime": "2017-03-10T08:00:00Z", + "databaseName": "testDatabase", + "databaseDeletionTime": null, + "backupTime": "2018-08-23T08:00:00Z", + "backupStorageRedundancy": "Geo" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/Locations/japaneast/longTermRetentionManagedInstances/testInstance/longTermRetentionDatabases/testDatabase/longTermRetentionManagedInstanceBackups/2018-06-01T08:00:00.000Z;55555555-6666-7777-8888-999999999999;2018-08-30T08:00:00.000Z", + "name": "2018-06-01T08:00:00.000Z;55555555-6666-7777-8888-999999999999;2018-08-30T08:00:00.000Z", + "type": "Microsoft.Sql/locations/longTermRetentionManagedInstances/longTermRetentionDatabases/longTermRetentionManagedInstanceBackups", + "properties": { + "managedInstanceName": "testInstance", + "managedInstanceCreateTime": "2017-03-10T08:00:00Z", + "databaseName": "testDatabase", + "databaseDeletionTime": null, + "backupTime": "2018-08-30T08:00:00Z", + "backupStorageRedundancy": "Geo" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/Locations/japaneast/longTermRetentionManagedInstances/testInstance/longTermRetentionDatabases/testDatabase/longTermRetentionManagedInstanceBackups/2018-06-01T08:00:00.000Z;55555555-6666-7777-8888-999999999999;2018-09-06T08:00:00.000Z", + "name": "2018-06-01T08:00:00.000Z;55555555-6666-7777-8888-999999999999;2018-09-06T08:00:00.000Z", + "type": "Microsoft.Sql/locations/longTermRetentionManagedInstances/longTermRetentionDatabases/longTermRetentionManagedInstanceBackups", + "properties": { + "managedInstanceName": "testInstance", + "managedInstanceCreateTime": "2017-03-10T08:00:00Z", + "databaseName": "testDatabase", + "databaseDeletionTime": "2018-09-07T08:00:00Z", + "backupTime": "2018-09-06T08:00:00Z", + "backupStorageRedundancy": "Geo" + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceLongTermRetentionBackupListByInstance.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceLongTermRetentionBackupListByInstance.json new file mode 100644 index 000000000000..54071664b0f2 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceLongTermRetentionBackupListByInstance.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "locationName": "japaneast", + "managedInstanceName": "testInstance", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/locations/japaneast/longTermRetentionManagedInstances/testInstance/longTermRetentionDatabases/testDatabase1/longTermRetentionManagedInstanceBackups/55555555-6666-7777-8888-999999999999;131637960820000000", + "name": "55555555-6666-7777-8888-999999999999;131637960820000000", + "type": "Microsoft.Sql/locations/longTermRetentionManagedInstances/longTermRetentionDatabases/longTermRetentionManagedInstanceBackups", + "properties": { + "managedInstanceName": "testInstance", + "managedInstanceCreateTime": "2017-03-10T08:00:00Z", + "databaseName": "testDatabase1", + "databaseDeletionTime": null, + "backupTime": "2017-08-23T08:00:00Z", + "backupStorageRedundancy": "Geo" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/locations/japaneast/longTermRetentionManagedInstances/testInstance/longTermRetentionDatabases/testDatabase2/longTermRetentionManagedInstanceBackups/12341234-1234-1234-1234-123123123123;131657960820000000", + "name": "12341234-1234-1234-1234-123123123123;131657960820000000", + "type": "Microsoft.Sql/locations/longTermRetentionManagedInstances/longTermRetentionDatabases/longTermRetentionManagedInstanceBackups", + "properties": { + "managedInstanceName": "testInstance", + "managedInstanceCreateTime": "2017-03-10T08:00:00Z", + "databaseName": "testDatabase2", + "databaseDeletionTime": null, + "backupTime": "2017-08-30T08:00:00Z", + "backupStorageRedundancy": "Geo" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/locations/japaneast/longTermRetentionManagedInstances/testInstance/longTermRetentionDatabases/testDatabase3/longTermRetentionManagedInstanceBackups/43214321-4321-4321-4321-321321321321;131677960820000000", + "name": "43214321-4321-4321-4321-321321321321;131667960820000000", + "type": "Microsoft.Sql/locations/longTermRetentionManagedInstances/longTermRetentionDatabases/longTermRetentionManagedInstanceBackups", + "properties": { + "managedInstanceName": "testInstance", + "managedInstanceCreateTime": "2017-03-10T08:00:00Z", + "databaseName": "testDatabase3", + "databaseDeletionTime": null, + "backupTime": "2017-09-06T08:00:00Z", + "backupStorageRedundancy": "Geo" + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceLongTermRetentionBackupListByLocation.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceLongTermRetentionBackupListByLocation.json new file mode 100644 index 000000000000..0d6c5427be6f --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceLongTermRetentionBackupListByLocation.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "locationName": "japaneast", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/locations/japaneast/longTermRetentionManagedInstances/testserver1/longTermRetentionDatabases/testDatabase1/longTermRetentionManagedInstanceBackups/55555555-6666-7777-8888-999999999999;131637960820000000", + "name": "55555555-6666-7777-8888-999999999999;2017-08-23T08:00:00.000Z", + "type": "Microsoft.Sql/locations/longTermRetentionManagedInstances/longTermRetentionDatabases/longTermRetentionBackups", + "properties": { + "managedInstanceName": "testInstance1", + "managedInstanceCreateTime": "2017-03-10T08:00:00Z", + "databaseName": "testDatabase1", + "databaseDeletionTime": null, + "backupTime": "2017-08-23T08:00:00Z", + "backupStorageRedundancy": "Geo" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/locations/japaneast/longTermRetentionManagedInstances/testserver2/longTermRetentionDatabases/testDatabase2/longTermRetentionManagedInstanceBackups/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": { + "managedInstanceName": "testInstance2", + "managedInstanceCreateTime": "2017-04-10T08:00:00Z", + "databaseName": "testDatabase2", + "databaseDeletionTime": null, + "backupTime": "2017-08-30T08:00:00Z", + "backupStorageRedundancy": "Geo" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/locations/japaneast/longTermRetentionManagedInstances/testserver3/longTermRetentionDatabases/testDatabase3/longTermRetentionManagedInstanceBackups/43214321-4321-4321-4321-321321321321;131677960820000000", + "name": "43214321-4321-4321-4321-321321321321;2017-09-06T08:00:00.000Z", + "type": "Microsoft.Sql/locations/longTermRetentionManagedInstances/longTermRetentionDatabases/longTermRetentionManagedInstanceBackups", + "properties": { + "managedInstanceName": "testInstance3", + "managedInstanceCreateTime": "2017-05-10T08:00:00Z", + "databaseName": "testDatabase3", + "databaseDeletionTime": null, + "backupTime": "2017-09-06T08:00:00Z", + "backupStorageRedundancy": "Geo" + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceLongTermRetentionPolicyCreateOrUpdate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceLongTermRetentionPolicyCreateOrUpdate.json new file mode 100644 index 000000000000..9d944356047c --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceLongTermRetentionPolicyCreateOrUpdate.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testResourceGroup", + "managedInstanceName": "testInstance", + "databaseName": "testDatabase", + "policyName": "default", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "weeklyRetention": "P1M", + "monthlyRetention": "P1Y", + "yearlyRetention": "P5Y", + "weekOfYear": 5 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testResourceGroup/providers/Microsoft.Sql/managedInstances/testInstance/databases/testDatabase/backupLongTermRetentionPolicies/default", + "name": "default", + "type": "Microsoft.Sql/resourceGroups/managedInstances/databases/backupLongTermRetentionPolicies", + "properties": { + "weeklyRetention": "P1M", + "monthlyRetention": "P1Y", + "yearlyRetention": "P5Y", + "weekOfYear": 5 + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceLongTermRetentionPolicyGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceLongTermRetentionPolicyGet.json new file mode 100644 index 000000000000..4bc09e45c319 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceLongTermRetentionPolicyGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testResourceGroup", + "managedInstanceName": "testInstance", + "databaseName": "testDatabase", + "policyName": "default", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/resourceGroups/testResourceGroup/managedInstances/testInstance/databases/testDatabase/backupLongTermRetentionPolicies/default", + "name": "default", + "type": "Microsoft.Sql/resourceGroups/managedInstances/databases/backupLongTermRetentionPolicies", + "properties": { + "weeklyRetention": "P1M", + "monthlyRetention": "P1Y", + "yearlyRetention": "P5Y", + "weekOfYear": 5 + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceLongTermRetentionPolicyListByDatabase.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceLongTermRetentionPolicyListByDatabase.json new file mode 100644 index 000000000000..b9d537cbae4c --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceLongTermRetentionPolicyListByDatabase.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testResourceGroup", + "managedInstanceName": "testInstance", + "databaseName": "testDatabase", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testResourceGroup/providers/Microsoft.Sql/managedInstances/testInstance/databases/testDatabase/backupLongTermRetentionPolicies/default", + "name": "default", + "type": "Microsoft.Sql/resourceGroups/managedInstances/databases/backupLongTermRetentionPolicies", + "properties": { + "weeklyRetention": "P1M", + "monthlyRetention": "P1Y", + "yearlyRetention": "P5Y", + "weekOfYear": 5 + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstancePrivateEndpointConnectionDelete.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstancePrivateEndpointConnectionDelete.json new file mode 100644 index 000000000000..6f061d9f0a2f --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstancePrivateEndpointConnectionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "managedInstanceName": "test-cl", + "privateEndpointConnectionName": "private-endpoint-connection-name", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstancePrivateEndpointConnectionGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstancePrivateEndpointConnectionGet.json new file mode 100644 index 000000000000..1f163b3da423 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstancePrivateEndpointConnectionGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "managedInstanceName": "test-cl", + "privateEndpointConnectionName": "private-endpoint-connection-name", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/managedInstances/test-cl/privateEndpointConnections/private-endpoint-connection-name", + "name": "private-endpoint-connection-name", + "type": "Microsoft.Sql/managedInstances/privateEndpointConnections", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstancePrivateEndpointConnectionList.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstancePrivateEndpointConnectionList.json new file mode 100644 index 000000000000..7c1721cfb8f4 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstancePrivateEndpointConnectionList.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "managedInstanceName": "test-cl", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/managedInstances/test-cl/privateEndpointConnections/private-endpoint-connection-name", + "name": "private-endpoint-connection-name", + "type": "Microsoft.Sql/managedInstances/privateEndpointConnections", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/managedInstances/test-cl/privateEndpointConnections/private-endpoint-connection-name-2", + "name": "private-endpoint-connection-name-2", + "type": "Microsoft.Sql/managedInstances/privateEndpointConnections", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name-2" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstancePrivateEndpointConnectionUpdate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstancePrivateEndpointConnectionUpdate.json new file mode 100644 index 000000000000..72d85ed37281 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstancePrivateEndpointConnectionUpdate.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "managedInstanceName": "test-cl", + "privateEndpointConnectionName": "private-endpoint-connection-name", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@contoso.com" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/managedInstances/test-cl/privateEndpointConnections/private-endpoint-connection-name", + "name": "private-endpoint-connection-name", + "type": "Microsoft.Sql/managedInstances/privateEndpointConnections", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@contoso.com", + "actionsRequired": "None" + } + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstancePrivateLinkResourcesGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstancePrivateLinkResourcesGet.json new file mode 100644 index 000000000000..728c77927e3d --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstancePrivateLinkResourcesGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "managedInstanceName": "test-cl", + "groupName": "plr", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/managedInstances/test-cl/privateLinkResources/plr", + "name": "plr", + "type": "Microsoft.Sql/managedInstances/privateLinkResources", + "properties": { + "groupId": "managedInstance", + "requiredMembers": [ + "managedInstance" + ] + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstancePrivateLinkResourcesList.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstancePrivateLinkResourcesList.json new file mode 100644 index 000000000000..1d1ccc94284d --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstancePrivateLinkResourcesList.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "managedInstanceName": "test-cl", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/managedInstances/test-cl/privateLinkResources/plr", + "name": "plr", + "type": "Microsoft.Sql/managedInstances/privateLinkResources", + "properties": { + "groupId": "managedInstance", + "requiredMembers": [ + "managedInstance" + ] + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceQueryGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceQueryGet.json new file mode 100644 index 000000000000..545ae70c2b82 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceQueryGet.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "managedInstanceName": "sqlcrudtest-4645", + "databaseName": "database_1", + "queryId": "42", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "42", + "type": "Microsoft.Sql/managedInstances/databases/queries", + "properties": { + "queryText": "select * from DUMMY_TABLE" + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceQueryStatisticsList.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceQueryStatisticsList.json new file mode 100644 index 000000000000..61e947700052 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceQueryStatisticsList.json @@ -0,0 +1,278 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "managedInstanceName": "sqlcrudtest-4645", + "databaseName": "database_1", + "queryId": "42", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "databaseName": "db1", + "queryId": "35", + "startTime": "03/01/2020 18:34:58", + "endTime": "03/02/2020 18:34:58", + "intervals": [ + { + "intervalStartTime": "03/02/2020 08:00:00", + "intervalType": "PT1H", + "executionCount": 160, + "metrics": [ + { + "name": "cpu", + "displayName": "Cpu", + "unit": "percentage", + "value": 0.0, + "min": 1.507638888888889E-05, + "max": 2.5243055555555557E-05, + "avg": 1.665347222222222E-05, + "sum": 0.0026645555555555554, + "stdev": 1.4894345929850385E-06 + }, + { + "name": "io", + "displayName": "Physical Io Reads", + "unit": "percentage", + "value": 0.0, + "min": 0.0, + "max": 0.0, + "avg": 0.0, + "sum": 0.0, + "stdev": 0.0 + }, + { + "name": "logIo", + "displayName": "Log Writes", + "unit": "percentage", + "value": 0.0, + "min": 0.0, + "max": 0.0, + "avg": 0.0, + "sum": 0.0, + "stdev": 0.0 + }, + { + "name": "memory", + "displayName": "Memory consumption", + "unit": "KB", + "value": 0.0, + "min": 0.0, + "max": 0.0, + "avg": 0.0, + "sum": 0.0, + "stdev": 0.0 + }, + { + "name": "duration", + "displayName": "Query duration", + "unit": "microseconds", + "value": 0.0, + "min": 4373.0, + "max": 18490.0, + "avg": 5026.625, + "sum": 804260.0, + "stdev": 1487.3520882343225 + } + ] + }, + { + "intervalStartTime": "03/02/2020 09:00:00", + "intervalType": "PT1H", + "executionCount": 20, + "metrics": [ + { + "name": "cpu", + "displayName": "Cpu", + "unit": "percentage", + "value": 0.0, + "min": 2.3430555555555557E-05, + "max": 0.00014645833333333332, + "avg": 4.4797743055555553E-05, + "sum": 0.00089595486111111115, + "stdev": 3.8301183442043949E-05 + }, + { + "name": "io", + "displayName": "Physical Io Reads", + "unit": "percentage", + "value": 0.0, + "min": 0.0, + "max": 0.0, + "avg": 0.0, + "sum": 0.0, + "stdev": 0.0 + }, + { + "name": "logIo", + "displayName": "Log Writes", + "unit": "percentage", + "value": 0.0, + "min": 0.0, + "max": 0.0, + "avg": 0.0, + "sum": 0.0, + "stdev": 0.0 + }, + { + "name": "memory", + "displayName": "Memory consumption", + "unit": "KB", + "value": 0.0, + "min": 0.0, + "max": 0.0, + "avg": 0.0, + "sum": 0.0, + "stdev": 0.0 + }, + { + "name": "duration", + "displayName": "Query duration", + "unit": "microseconds", + "value": 0.0, + "min": 6813.0, + "max": 42289.0, + "avg": 12963.2, + "sum": 259264.0, + "stdev": 11040.140794392071 + } + ] + }, + { + "intervalStartTime": "03/02/2020 15:00:00", + "intervalType": "PT1H", + "executionCount": 80, + "metrics": [ + { + "name": "cpu", + "displayName": "Cpu", + "unit": "percentage", + "value": 0.0, + "min": 1.8215277777777777E-05, + "max": 2.764236111111111E-05, + "avg": 1.9315538194444445E-05, + "sum": 0.0015452430555555556, + "stdev": 1.0716305801875179E-06 + }, + { + "name": "io", + "displayName": "Physical Io Reads", + "unit": "percentage", + "value": 0.0, + "min": 0.0, + "max": 0.0, + "avg": 0.0, + "sum": 0.0, + "stdev": 0.0 + }, + { + "name": "logIo", + "displayName": "Log Writes", + "unit": "percentage", + "value": 0.0, + "min": 0.0, + "max": 0.0, + "avg": 0.0, + "sum": 0.0, + "stdev": 0.0 + }, + { + "name": "memory", + "displayName": "Memory consumption", + "unit": "KB", + "value": 0.0, + "min": 0.0, + "max": 0.0, + "avg": 0.0, + "sum": 0.0, + "stdev": 0.0 + }, + { + "name": "duration", + "displayName": "Query duration", + "unit": "microseconds", + "value": 0.0, + "min": 5264.0, + "max": 7982.0, + "avg": 5586.2625, + "sum": 446901.0, + "stdev": 310.49157572107271 + } + ] + }, + { + "intervalStartTime": "03/02/2020 17:00:00", + "intervalType": "PT1H", + "executionCount": 80, + "metrics": [ + { + "name": "cpu", + "displayName": "Cpu", + "unit": "percentage", + "value": 0.0, + "min": 1.7819444444444443E-05, + "max": 2.782638888888889E-05, + "avg": 1.9085373263888888E-05, + "sum": 0.0015268298611111112, + "stdev": 1.2309244108727927E-06 + }, + { + "name": "io", + "displayName": "Physical Io Reads", + "unit": "percentage", + "value": 0.0, + "min": 0.0, + "max": 0.0, + "avg": 0.0, + "sum": 0.0, + "stdev": 0.0 + }, + { + "name": "logIo", + "displayName": "Log Writes", + "unit": "percentage", + "value": 0.0, + "min": 0.0, + "max": 0.0, + "avg": 0.0, + "sum": 0.0, + "stdev": 0.0 + }, + { + "name": "memory", + "displayName": "Memory consumption", + "unit": "KB", + "value": 0.0, + "min": 0.0, + "max": 0.0, + "avg": 0.0, + "sum": 0.0, + "stdev": 0.0 + }, + { + "name": "duration", + "displayName": "Query duration", + "unit": "microseconds", + "value": 0.0, + "min": 5147.0, + "max": 8052.0, + "avg": 5517.2, + "sum": 441376.0, + "stdev": 356.87635814102259 + } + ] + } + ] + }, + "id": "35", + "type": "Microsoft.Sql/managedInstances/databases/queries/statistics" + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceQueryStatisticsListMax.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceQueryStatisticsListMax.json new file mode 100644 index 000000000000..f76e4b713e69 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceQueryStatisticsListMax.json @@ -0,0 +1,95 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "managedInstanceName": "sqlcrudtest-4645", + "databaseName": "database_1", + "queryId": "42", + "api-version": "2021-02-01-preview", + "interval": "P1D", + "startTime": "03/01/2020 16:23:09", + "endTime": "03/11/2020 14:00:00" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "databaseName": "db1", + "queryId": "28", + "startTime": "03/01/2020 16:23:09", + "endTime": "03/11/2020 14:00:00", + "intervals": [ + { + "intervalStartTime": "03/11/2020 00:00:00", + "intervalType": "P1D", + "executionCount": 1, + "metrics": [ + { + "name": "cpu", + "displayName": "Cpu", + "unit": "percentage", + "value": 0.0, + "min": 0.0015934667245370371, + "max": 0.0015934667245370371, + "avg": 0.0015934667245370371, + "sum": 0.0015934667245370371, + "stdev": 0.0 + }, + { + "name": "io", + "displayName": "Physical Io Reads", + "unit": "percentage", + "value": 0.0, + "min": 4.2245370370370369E-06, + "max": 4.2245370370370369E-06, + "avg": 4.2245370370370369E-06, + "sum": 4.2245370370370369E-06, + "stdev": 0.0 + }, + { + "name": "logIo", + "displayName": "Log Writes", + "unit": "percentage", + "value": 0.0, + "min": 0.0, + "max": 0.0, + "avg": 0.0, + "sum": 0.0, + "stdev": 0.0 + }, + { + "name": "memory", + "displayName": "Memory consumption", + "unit": "KB", + "value": 0.0, + "min": 8336.0, + "max": 8336.0, + "avg": 8336.0, + "sum": 8336.0, + "stdev": 0.0 + }, + { + "name": "duration", + "displayName": "Query duration", + "unit": "microseconds", + "value": 0.0, + "min": 11091296.0, + "max": 11091296.0, + "avg": 11091296.0, + "sum": 11091296.0, + "stdev": 0.0 + } + ] + } + ] + }, + "id": "28", + "type": "Microsoft.Sql/managedInstances/databases/queries/statistics" + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceQueryStatisticsListMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceQueryStatisticsListMin.json new file mode 100644 index 000000000000..99b9bdcaf6ad --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceQueryStatisticsListMin.json @@ -0,0 +1,93 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "managedInstanceName": "sqlcrudtest-4645", + "databaseName": "database_1", + "queryId": "42", + "api-version": "2021-02-01-preview", + "interval": "PT1H" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "databaseName": "db1", + "queryId": "28", + "startTime": "03/10/2020 14:00:30", + "endTime": "03/11/2020 14:00:30", + "intervals": [ + { + "intervalStartTime": "03/11/2020 11:00:00", + "intervalType": "PT1H", + "executionCount": 1, + "metrics": [ + { + "name": "cpu", + "displayName": "Cpu", + "unit": "percentage", + "value": 0.0, + "min": 0.038243201388888891, + "max": 0.038243201388888891, + "avg": 0.038243201388888891, + "sum": 0.038243201388888891, + "stdev": 0.0 + }, + { + "name": "io", + "displayName": "Physical Io Reads", + "unit": "percentage", + "value": 0.0, + "min": 0.0001013888888888889, + "max": 0.0001013888888888889, + "avg": 0.0001013888888888889, + "sum": 0.0001013888888888889, + "stdev": 0.0 + }, + { + "name": "logIo", + "displayName": "Log Writes", + "unit": "percentage", + "value": 0.0, + "min": 0.0, + "max": 0.0, + "avg": 0.0, + "sum": 0.0, + "stdev": 0.0 + }, + { + "name": "memory", + "displayName": "Memory consumption", + "unit": "KB", + "value": 0.0, + "min": 8336.0, + "max": 8336.0, + "avg": 8336.0, + "sum": 8336.0, + "stdev": 0.0 + }, + { + "name": "duration", + "displayName": "Query duration", + "unit": "microseconds", + "value": 0.0, + "min": 11091296.0, + "max": 11091296.0, + "avg": 11091296.0, + "sum": 11091296.0, + "stdev": 0.0 + } + ] + } + ] + }, + "id": "28", + "type": "Microsoft.Sql/managedInstances/databases/queries/statistics" + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceRemoveMaintenanceConfiguration.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceRemoveMaintenanceConfiguration.json new file mode 100644 index 000000000000..26a63f67e07c --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceRemoveMaintenanceConfiguration.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "20D7082A-0FC7-4468-82BD-542694D5042B", + "resourceGroupName": "testrg", + "managedInstanceName": "testinstance", + "api-version": "2021-02-01-preview", + "location": "japaneast", + "parameters": { + "properties": { + "maintenanceConfigurationId": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_Default" + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "GP_Gen4", + "tier": "GeneralPurpose", + "capacity": 8, + "family": "Gen4" + }, + "properties": { + "fullyQualifiedDomainName": "testinstance.1b4e2caff2530.database.windows.net", + "administratorLogin": "dummylogin", + "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "state": "Ready", + "vCores": 8, + "storageSizeInGB": 1024, + "licenseType": "LicenseIncluded", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "publicDataEndpointEnabled": false, + "proxyOverride": "Default", + "dnsZone": "1b4e2caff2530", + "instancePoolId": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/testrg/providers/Microsoft.Sql/instancePools/instancePool1", + "maintenanceConfigurationId": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_Default" + }, + "location": "japaneast", + "id": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/testrg/providers/Microsoft.Sql/managedInstances/testinstance", + "name": "testinstance", + "type": "Microsoft.Sql/managedInstances" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceTdeCertificate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceTdeCertificate.json new file mode 100644 index 000000000000..0cb19c1c3fa7 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceTdeCertificate.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000001", + "resourceGroupName": "testtdecert", + "managedInstanceName": "testtdecert", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "privateBlob": "MIIXXXXXXXX" + } + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceTimeZoneGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceTimeZoneGet.json new file mode 100644 index 000000000000..94128d2929af --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceTimeZoneGet.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "37d5e605-6142-4d79-b564-28b6dbfeec0f", + "locationName": "canadaeast", + "timeZoneId": "Haiti Standard Time", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "timeZoneId": "Haiti Standard Time", + "displayName": "(UTC-05:00) Haiti" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Haiti Standard Time", + "name": "Haiti Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceTimeZoneListByLocation.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceTimeZoneListByLocation.json new file mode 100644 index 000000000000..8993000db5c7 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceTimeZoneListByLocation.json @@ -0,0 +1,1266 @@ +{ + "parameters": { + "subscriptionId": "37d5e605-6142-4d79-b564-28b6dbfeec0f", + "locationName": "canadaeast", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "timeZoneId": "Afghanistan Standard Time", + "displayName": "(UTC+04:30) Kabul" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Afghanistan Standard Time", + "name": "Afghanistan Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Alaskan Standard Time", + "displayName": "(UTC-09:00) Alaska" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Alaskan Standard Time", + "name": "Alaskan Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Aleutian Standard Time", + "displayName": "(UTC-10:00) Aleutian Islands" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Aleutian Standard Time", + "name": "Aleutian Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Altai Standard Time", + "displayName": "(UTC+07:00) Barnaul, Gorno-Altaysk" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Altai Standard Time", + "name": "Altai Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Arab Standard Time", + "displayName": "(UTC+03:00) Kuwait, Riyadh" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Arab Standard Time", + "name": "Arab Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Arabian Standard Time", + "displayName": "(UTC+04:00) Abu Dhabi, Muscat" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Arabian Standard Time", + "name": "Arabian Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Arabic Standard Time", + "displayName": "(UTC+03:00) Baghdad" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Arabic Standard Time", + "name": "Arabic Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Argentina Standard Time", + "displayName": "(UTC-03:00) City of Buenos Aires" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Argentina Standard Time", + "name": "Argentina Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Astrakhan Standard Time", + "displayName": "(UTC+04:00) Astrakhan, Ulyanovsk" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Astrakhan Standard Time", + "name": "Astrakhan Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Atlantic Standard Time", + "displayName": "(UTC-04:00) Atlantic Time (Canada)" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Atlantic Standard Time", + "name": "Atlantic Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "AUS Central Standard Time", + "displayName": "(UTC+09:30) Darwin" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/AUS Central Standard Time", + "name": "AUS Central Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Aus Central W. Standard Time", + "displayName": "(UTC+08:45) Eucla" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Aus Central W. Standard Time", + "name": "Aus Central W. Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "AUS Eastern Standard Time", + "displayName": "(UTC+10:00) Canberra, Melbourne, Sydney" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/AUS Eastern Standard Time", + "name": "AUS Eastern Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Azerbaijan Standard Time", + "displayName": "(UTC+04:00) Baku" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Azerbaijan Standard Time", + "name": "Azerbaijan Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Azores Standard Time", + "displayName": "(UTC-01:00) Azores" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Azores Standard Time", + "name": "Azores Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Bahia Standard Time", + "displayName": "(UTC-03:00) Salvador" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Bahia Standard Time", + "name": "Bahia Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Bangladesh Standard Time", + "displayName": "(UTC+06:00) Dhaka" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Bangladesh Standard Time", + "name": "Bangladesh Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Belarus Standard Time", + "displayName": "(UTC+03:00) Minsk" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Belarus Standard Time", + "name": "Belarus Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Bougainville Standard Time", + "displayName": "(UTC+11:00) Bougainville Island" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Bougainville Standard Time", + "name": "Bougainville Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Canada Central Standard Time", + "displayName": "(UTC-06:00) Saskatchewan" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Canada Central Standard Time", + "name": "Canada Central Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Cape Verde Standard Time", + "displayName": "(UTC-01:00) Cabo Verde Is." + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Cape Verde Standard Time", + "name": "Cape Verde Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Caucasus Standard Time", + "displayName": "(UTC+04:00) Yerevan" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Caucasus Standard Time", + "name": "Caucasus Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Cen. Australia Standard Time", + "displayName": "(UTC+09:30) Adelaide" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Cen. Australia Standard Time", + "name": "Cen. Australia Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Central America Standard Time", + "displayName": "(UTC-06:00) Central America" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Central America Standard Time", + "name": "Central America Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Central Asia Standard Time", + "displayName": "(UTC+06:00) Astana" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Central Asia Standard Time", + "name": "Central Asia Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Central Brazilian Standard Time", + "displayName": "(UTC-04:00) Cuiaba" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Central Brazilian Standard Time", + "name": "Central Brazilian Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Central Europe Standard Time", + "displayName": "(UTC+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Central Europe Standard Time", + "name": "Central Europe Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Central European Standard Time", + "displayName": "(UTC+01:00) Sarajevo, Skopje, Warsaw, Zagreb" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Central European Standard Time", + "name": "Central European Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Central Pacific Standard Time", + "displayName": "(UTC+11:00) Solomon Is., New Caledonia" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Central Pacific Standard Time", + "name": "Central Pacific Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Central Standard Time", + "displayName": "(UTC-06:00) Central Time (US & Canada)" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Central Standard Time", + "name": "Central Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Central Standard Time (Mexico)", + "displayName": "(UTC-06:00) Guadalajara, Mexico City, Monterrey" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Central Standard Time (Mexico)", + "name": "Central Standard Time (Mexico)", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Chatham Islands Standard Time", + "displayName": "(UTC+12:45) Chatham Islands" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Chatham Islands Standard Time", + "name": "Chatham Islands Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "China Standard Time", + "displayName": "(UTC+08:00) Beijing, Chongqing, Hong Kong, Urumqi" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/China Standard Time", + "name": "China Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Cuba Standard Time", + "displayName": "(UTC-05:00) Havana" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Cuba Standard Time", + "name": "Cuba Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Dateline Standard Time", + "displayName": "(UTC-12:00) International Date Line West" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Dateline Standard Time", + "name": "Dateline Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "E. Africa Standard Time", + "displayName": "(UTC+03:00) Nairobi" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/E. Africa Standard Time", + "name": "E. Africa Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "E. Australia Standard Time", + "displayName": "(UTC+10:00) Brisbane" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/E. Australia Standard Time", + "name": "E. Australia Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "E. Europe Standard Time", + "displayName": "(UTC+02:00) Chisinau" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/E. Europe Standard Time", + "name": "E. Europe Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "E. South America Standard Time", + "displayName": "(UTC-03:00) Brasilia" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/E. South America Standard Time", + "name": "E. South America Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Easter Island Standard Time", + "displayName": "(UTC-06:00) Easter Island" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Easter Island Standard Time", + "name": "Easter Island Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Eastern Standard Time", + "displayName": "(UTC-05:00) Eastern Time (US & Canada)" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Eastern Standard Time", + "name": "Eastern Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Eastern Standard Time (Mexico)", + "displayName": "(UTC-05:00) Chetumal" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Eastern Standard Time (Mexico)", + "name": "Eastern Standard Time (Mexico)", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Egypt Standard Time", + "displayName": "(UTC+02:00) Cairo" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Egypt Standard Time", + "name": "Egypt Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Ekaterinburg Standard Time", + "displayName": "(UTC+05:00) Ekaterinburg" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Ekaterinburg Standard Time", + "name": "Ekaterinburg Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Fiji Standard Time", + "displayName": "(UTC+12:00) Fiji" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Fiji Standard Time", + "name": "Fiji Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "FLE Standard Time", + "displayName": "(UTC+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/FLE Standard Time", + "name": "FLE Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Georgian Standard Time", + "displayName": "(UTC+04:00) Tbilisi" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Georgian Standard Time", + "name": "Georgian Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "GMT Standard Time", + "displayName": "(UTC+00:00) Dublin, Edinburgh, Lisbon, London" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/GMT Standard Time", + "name": "GMT Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Greenland Standard Time", + "displayName": "(UTC-03:00) Greenland" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Greenland Standard Time", + "name": "Greenland Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Greenwich Standard Time", + "displayName": "(UTC+00:00) Monrovia, Reykjavik" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Greenwich Standard Time", + "name": "Greenwich Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "GTB Standard Time", + "displayName": "(UTC+02:00) Athens, Bucharest" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/GTB Standard Time", + "name": "GTB Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Haiti Standard Time", + "displayName": "(UTC-05:00) Haiti" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Haiti Standard Time", + "name": "Haiti Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Hawaiian Standard Time", + "displayName": "(UTC-10:00) Hawaii" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Hawaiian Standard Time", + "name": "Hawaiian Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "India Standard Time", + "displayName": "(UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/India Standard Time", + "name": "India Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Iran Standard Time", + "displayName": "(UTC+03:30) Tehran" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Iran Standard Time", + "name": "Iran Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Israel Standard Time", + "displayName": "(UTC+02:00) Jerusalem" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Israel Standard Time", + "name": "Israel Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Jordan Standard Time", + "displayName": "(UTC+02:00) Amman" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Jordan Standard Time", + "name": "Jordan Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Kaliningrad Standard Time", + "displayName": "(UTC+02:00) Kaliningrad" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Kaliningrad Standard Time", + "name": "Kaliningrad Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Kamchatka Standard Time", + "displayName": "(UTC+12:00) Petropavlovsk-Kamchatsky - Old" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Kamchatka Standard Time", + "name": "Kamchatka Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Korea Standard Time", + "displayName": "(UTC+09:00) Seoul" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Korea Standard Time", + "name": "Korea Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Libya Standard Time", + "displayName": "(UTC+02:00) Tripoli" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Libya Standard Time", + "name": "Libya Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Line Islands Standard Time", + "displayName": "(UTC+14:00) Kiritimati Island" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Line Islands Standard Time", + "name": "Line Islands Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Lord Howe Standard Time", + "displayName": "(UTC+10:30) Lord Howe Island" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Lord Howe Standard Time", + "name": "Lord Howe Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Magadan Standard Time", + "displayName": "(UTC+11:00) Magadan" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Magadan Standard Time", + "name": "Magadan Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Magallanes Standard Time", + "displayName": "(UTC-03:00) Punta Arenas" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Magallanes Standard Time", + "name": "Magallanes Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Marquesas Standard Time", + "displayName": "(UTC-09:30) Marquesas Islands" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Marquesas Standard Time", + "name": "Marquesas Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Mauritius Standard Time", + "displayName": "(UTC+04:00) Port Louis" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Mauritius Standard Time", + "name": "Mauritius Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Mid-Atlantic Standard Time", + "displayName": "(UTC-02:00) Mid-Atlantic - Old" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Mid-Atlantic Standard Time", + "name": "Mid-Atlantic Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Middle East Standard Time", + "displayName": "(UTC+02:00) Beirut" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Middle East Standard Time", + "name": "Middle East Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Montevideo Standard Time", + "displayName": "(UTC-03:00) Montevideo" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Montevideo Standard Time", + "name": "Montevideo Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Morocco Standard Time", + "displayName": "(UTC+01:00) Casablanca" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Morocco Standard Time", + "name": "Morocco Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Mountain Standard Time", + "displayName": "(UTC-07:00) Mountain Time (US & Canada)" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Mountain Standard Time", + "name": "Mountain Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Mountain Standard Time (Mexico)", + "displayName": "(UTC-07:00) Chihuahua, La Paz, Mazatlan" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Mountain Standard Time (Mexico)", + "name": "Mountain Standard Time (Mexico)", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Myanmar Standard Time", + "displayName": "(UTC+06:30) Yangon (Rangoon)" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Myanmar Standard Time", + "name": "Myanmar Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "N. Central Asia Standard Time", + "displayName": "(UTC+07:00) Novosibirsk" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/N. Central Asia Standard Time", + "name": "N. Central Asia Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Namibia Standard Time", + "displayName": "(UTC+02:00) Windhoek" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Namibia Standard Time", + "name": "Namibia Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Nepal Standard Time", + "displayName": "(UTC+05:45) Kathmandu" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Nepal Standard Time", + "name": "Nepal Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "New Zealand Standard Time", + "displayName": "(UTC+12:00) Auckland, Wellington" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/New Zealand Standard Time", + "name": "New Zealand Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Newfoundland Standard Time", + "displayName": "(UTC-03:30) Newfoundland" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Newfoundland Standard Time", + "name": "Newfoundland Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Norfolk Standard Time", + "displayName": "(UTC+11:00) Norfolk Island" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Norfolk Standard Time", + "name": "Norfolk Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "North Asia East Standard Time", + "displayName": "(UTC+08:00) Irkutsk" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/North Asia East Standard Time", + "name": "North Asia East Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "North Asia Standard Time", + "displayName": "(UTC+07:00) Krasnoyarsk" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/North Asia Standard Time", + "name": "North Asia Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "North Korea Standard Time", + "displayName": "(UTC+09:00) Pyongyang" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/North Korea Standard Time", + "name": "North Korea Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Omsk Standard Time", + "displayName": "(UTC+06:00) Omsk" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Omsk Standard Time", + "name": "Omsk Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Pacific SA Standard Time", + "displayName": "(UTC-04:00) Santiago" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Pacific SA Standard Time", + "name": "Pacific SA Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Pacific Standard Time", + "displayName": "(UTC-08:00) Pacific Time (US & Canada)" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Pacific Standard Time", + "name": "Pacific Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Pacific Standard Time (Mexico)", + "displayName": "(UTC-08:00) Baja California" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Pacific Standard Time (Mexico)", + "name": "Pacific Standard Time (Mexico)", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Pakistan Standard Time", + "displayName": "(UTC+05:00) Islamabad, Karachi" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Pakistan Standard Time", + "name": "Pakistan Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Paraguay Standard Time", + "displayName": "(UTC-04:00) Asuncion" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Paraguay Standard Time", + "name": "Paraguay Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Qyzylorda Standard Time", + "displayName": "(UTC+05:00) Qyzylorda" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Qyzylorda Standard Time", + "name": "Qyzylorda Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Romance Standard Time", + "displayName": "(UTC+01:00) Brussels, Copenhagen, Madrid, Paris" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Romance Standard Time", + "name": "Romance Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Russia Time Zone 10", + "displayName": "(UTC+11:00) Chokurdakh" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Russia Time Zone 10", + "name": "Russia Time Zone 10", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Russia Time Zone 11", + "displayName": "(UTC+12:00) Anadyr, Petropavlovsk-Kamchatsky" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Russia Time Zone 11", + "name": "Russia Time Zone 11", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Russia Time Zone 3", + "displayName": "(UTC+04:00) Izhevsk, Samara" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Russia Time Zone 3", + "name": "Russia Time Zone 3", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Russian Standard Time", + "displayName": "(UTC+03:00) Moscow, St. Petersburg" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Russian Standard Time", + "name": "Russian Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "SA Eastern Standard Time", + "displayName": "(UTC-03:00) Cayenne, Fortaleza" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/SA Eastern Standard Time", + "name": "SA Eastern Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "SA Pacific Standard Time", + "displayName": "(UTC-05:00) Bogota, Lima, Quito, Rio Branco" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/SA Pacific Standard Time", + "name": "SA Pacific Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "SA Western Standard Time", + "displayName": "(UTC-04:00) Georgetown, La Paz, Manaus, San Juan" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/SA Western Standard Time", + "name": "SA Western Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Saint Pierre Standard Time", + "displayName": "(UTC-03:00) Saint Pierre and Miquelon" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Saint Pierre Standard Time", + "name": "Saint Pierre Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Sakhalin Standard Time", + "displayName": "(UTC+11:00) Sakhalin" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Sakhalin Standard Time", + "name": "Sakhalin Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Samoa Standard Time", + "displayName": "(UTC+13:00) Samoa" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Samoa Standard Time", + "name": "Samoa Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Sao Tome Standard Time", + "displayName": "(UTC+00:00) Sao Tome" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Sao Tome Standard Time", + "name": "Sao Tome Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Saratov Standard Time", + "displayName": "(UTC+04:00) Saratov" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Saratov Standard Time", + "name": "Saratov Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "SE Asia Standard Time", + "displayName": "(UTC+07:00) Bangkok, Hanoi, Jakarta" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/SE Asia Standard Time", + "name": "SE Asia Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Singapore Standard Time", + "displayName": "(UTC+08:00) Kuala Lumpur, Singapore" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Singapore Standard Time", + "name": "Singapore Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "South Africa Standard Time", + "displayName": "(UTC+02:00) Harare, Pretoria" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/South Africa Standard Time", + "name": "South Africa Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Sri Lanka Standard Time", + "displayName": "(UTC+05:30) Sri Jayawardenepura" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Sri Lanka Standard Time", + "name": "Sri Lanka Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Sudan Standard Time", + "displayName": "(UTC+02:00) Khartoum" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Sudan Standard Time", + "name": "Sudan Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Syria Standard Time", + "displayName": "(UTC+02:00) Damascus" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Syria Standard Time", + "name": "Syria Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Taipei Standard Time", + "displayName": "(UTC+08:00) Taipei" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Taipei Standard Time", + "name": "Taipei Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Tasmania Standard Time", + "displayName": "(UTC+10:00) Hobart" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Tasmania Standard Time", + "name": "Tasmania Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Tocantins Standard Time", + "displayName": "(UTC-03:00) Araguaina" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Tocantins Standard Time", + "name": "Tocantins Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Tokyo Standard Time", + "displayName": "(UTC+09:00) Osaka, Sapporo, Tokyo" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Tokyo Standard Time", + "name": "Tokyo Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Tomsk Standard Time", + "displayName": "(UTC+07:00) Tomsk" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Tomsk Standard Time", + "name": "Tomsk Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Tonga Standard Time", + "displayName": "(UTC+13:00) Nuku'alofa" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Tonga Standard Time", + "name": "Tonga Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Transbaikal Standard Time", + "displayName": "(UTC+09:00) Chita" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Transbaikal Standard Time", + "name": "Transbaikal Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Turkey Standard Time", + "displayName": "(UTC+03:00) Istanbul" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Turkey Standard Time", + "name": "Turkey Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Turks And Caicos Standard Time", + "displayName": "(UTC-05:00) Turks and Caicos" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Turks And Caicos Standard Time", + "name": "Turks And Caicos Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Ulaanbaatar Standard Time", + "displayName": "(UTC+08:00) Ulaanbaatar" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Ulaanbaatar Standard Time", + "name": "Ulaanbaatar Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "US Eastern Standard Time", + "displayName": "(UTC-05:00) Indiana (East)" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/US Eastern Standard Time", + "name": "US Eastern Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "US Mountain Standard Time", + "displayName": "(UTC-07:00) Arizona" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/US Mountain Standard Time", + "name": "US Mountain Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "UTC", + "displayName": "(UTC) Coordinated Universal Time" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/UTC", + "name": "UTC", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "UTC+12", + "displayName": "(UTC+12:00) Coordinated Universal Time+12" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/UTC+12", + "name": "UTC+12", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "UTC+13", + "displayName": "(UTC+13:00) Coordinated Universal Time+13" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/UTC+13", + "name": "UTC+13", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "UTC-02", + "displayName": "(UTC-02:00) Coordinated Universal Time-02" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/UTC-02", + "name": "UTC-02", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "UTC-08", + "displayName": "(UTC-08:00) Coordinated Universal Time-08" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/UTC-08", + "name": "UTC-08", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "UTC-09", + "displayName": "(UTC-09:00) Coordinated Universal Time-09" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/UTC-09", + "name": "UTC-09", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "UTC-11", + "displayName": "(UTC-11:00) Coordinated Universal Time-11" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/UTC-11", + "name": "UTC-11", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Venezuela Standard Time", + "displayName": "(UTC-04:00) Caracas" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Venezuela Standard Time", + "name": "Venezuela Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Vladivostok Standard Time", + "displayName": "(UTC+10:00) Vladivostok" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Vladivostok Standard Time", + "name": "Vladivostok Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Volgograd Standard Time", + "displayName": "(UTC+04:00) Volgograd" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Volgograd Standard Time", + "name": "Volgograd Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "W. Australia Standard Time", + "displayName": "(UTC+08:00) Perth" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/W. Australia Standard Time", + "name": "W. Australia Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "W. Central Africa Standard Time", + "displayName": "(UTC+01:00) West Central Africa" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/W. Central Africa Standard Time", + "name": "W. Central Africa Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "W. Europe Standard Time", + "displayName": "(UTC+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/W. Europe Standard Time", + "name": "W. Europe Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "W. Mongolia Standard Time", + "displayName": "(UTC+07:00) Hovd" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/W. Mongolia Standard Time", + "name": "W. Mongolia Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "West Asia Standard Time", + "displayName": "(UTC+05:00) Ashgabat, Tashkent" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/West Asia Standard Time", + "name": "West Asia Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "West Bank Standard Time", + "displayName": "(UTC+02:00) Gaza, Hebron" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/West Bank Standard Time", + "name": "West Bank Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "West Pacific Standard Time", + "displayName": "(UTC+10:00) Guam, Port Moresby" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/West Pacific Standard Time", + "name": "West Pacific Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + }, + { + "properties": { + "timeZoneId": "Yakutsk Standard Time", + "displayName": "(UTC+09:00) Yakutsk" + }, + "id": "/subscriptions/37d5e605-6142-4d79-b564-28b6dbfeec0f/providers/Microsoft.Sql/locations/onebox/timeZones/Yakutsk Standard Time", + "name": "Yakutsk Standard Time", + "type": "Microsoft.Sql/locations/timeZones" + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceTopQueriesList.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceTopQueriesList.json new file mode 100644 index 000000000000..d6e1dd734578 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceTopQueriesList.json @@ -0,0 +1,238 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "managedInstanceName": "sqlcrudtest-4645", + "api-version": "2021-02-01-preview", + "observationMetric": "duration", + "interval": "PT1H" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "numberOfQueries": 5, + "aggregationFunction": "sum", + "observationMetric": "cpu", + "intervalType": "P1D", + "startTime": "03/01/2020 00:00:00", + "endTime": "03/05/2020 13:00:00", + "queries": [ + { + "databaseName": "db1", + "queryId": "25", + "intervals": [ + { + "intervalStartTime": "03/03/2020 00:00:00", + "executionCount": 1, + "metrics": [ + { + "name": "cpu", + "displayName": "Cpu", + "unit": "percentage", + "value": 0.0015841714409722222 + }, + { + "name": "io", + "displayName": "Physical Io Reads", + "unit": "percentage", + "value": 4.3402777777777778E-06 + }, + { + "name": "logIo", + "displayName": "Log Writes", + "unit": "percentage", + "value": 0.0 + }, + { + "name": "memory", + "displayName": "Memory consumption", + "unit": "KB", + "value": 8336.0 + }, + { + "name": "duration", + "displayName": "Query duration", + "unit": "microseconds", + "value": 11306905.0 + } + ] + } + ] + }, + { + "databaseName": "db1", + "queryId": "21", + "intervals": [ + { + "intervalStartTime": "03/03/2020 00:00:00", + "executionCount": 1, + "metrics": [ + { + "name": "cpu", + "displayName": "Cpu", + "unit": "percentage", + "value": 0.00095214322916666668 + }, + { + "name": "io", + "displayName": "Physical Io Reads", + "unit": "percentage", + "value": 2.3148148148148148E-07 + }, + { + "name": "logIo", + "displayName": "Log Writes", + "unit": "percentage", + "value": 0.0 + }, + { + "name": "memory", + "displayName": "Memory consumption", + "unit": "KB", + "value": 1024.0 + }, + { + "name": "duration", + "displayName": "Query duration", + "unit": "microseconds", + "value": 6620020.0 + } + ] + } + ] + }, + { + "databaseName": "db3", + "queryId": "3", + "intervals": [ + { + "intervalStartTime": "03/04/2020 00:00:00", + "executionCount": 104, + "metrics": [ + { + "name": "cpu", + "displayName": "Cpu", + "unit": "percentage", + "value": 0.00080066116898148151 + }, + { + "name": "io", + "displayName": "Physical Io Reads", + "unit": "percentage", + "value": 0.0 + }, + { + "name": "logIo", + "displayName": "Log Writes", + "unit": "percentage", + "value": 0.0 + }, + { + "name": "memory", + "displayName": "Memory consumption", + "unit": "KB", + "value": 0.0 + }, + { + "name": "duration", + "displayName": "Query duration", + "unit": "microseconds", + "value": 5543088.0 + } + ] + } + ] + }, + { + "databaseName": "db2", + "queryId": "3", + "intervals": [ + { + "intervalStartTime": "03/03/2020 00:00:00", + "executionCount": 89, + "metrics": [ + { + "name": "cpu", + "displayName": "Cpu", + "unit": "percentage", + "value": 0.00068825434027777776 + }, + { + "name": "io", + "displayName": "Physical Io Reads", + "unit": "percentage", + "value": 0.0 + }, + { + "name": "logIo", + "displayName": "Log Writes", + "unit": "percentage", + "value": 0.0 + }, + { + "name": "memory", + "displayName": "Memory consumption", + "unit": "KB", + "value": 0.0 + }, + { + "name": "duration", + "displayName": "Query duration", + "unit": "microseconds", + "value": 4761877.0 + } + ] + } + ] + }, + { + "databaseName": "db3", + "queryId": "22", + "intervals": [ + { + "intervalStartTime": "03/04/2020 00:00:00", + "executionCount": 1, + "metrics": [ + { + "name": "cpu", + "displayName": "Cpu", + "unit": "percentage", + "value": 0.00062206611689814817 + }, + { + "name": "io", + "displayName": "Physical Io Reads", + "unit": "percentage", + "value": 0.0 + }, + { + "name": "logIo", + "displayName": "Log Writes", + "unit": "percentage", + "value": 0.0 + }, + { + "name": "memory", + "displayName": "Memory consumption", + "unit": "KB", + "value": 1024.0 + }, + { + "name": "duration", + "displayName": "Query duration", + "unit": "microseconds", + "value": 4454161.0 + } + ] + } + ] + } + ] + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceTopQueriesListMax.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceTopQueriesListMax.json new file mode 100644 index 000000000000..3ecfe2cf61eb --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceTopQueriesListMax.json @@ -0,0 +1,241 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "managedInstanceName": "sqlcrudtest-4645", + "api-version": "2021-02-01-preview", + "interval": "P1D", + "startTime": "2020-03-10T12:00:00Z", + "endTime": "2020-03-12T12:00:00Z", + "observationMetric": "cpu", + "databases": "db1,db2" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "numberOfQueries": 5, + "aggregationFunction": "sum", + "observationMetric": "cpu", + "intervalType": "P1D", + "startTime": "03/10/2020 00:00:00", + "endTime": "03/12/2020 13:00:00", + "queries": [ + { + "databaseName": "db1", + "queryId": "28", + "intervals": [ + { + "intervalStartTime": "03/11/2020 00:00:00", + "executionCount": 1, + "metrics": [ + { + "name": "cpu", + "displayName": "Cpu", + "unit": "percentage", + "value": 0.0015934667245370371 + }, + { + "name": "io", + "displayName": "Physical Io Reads", + "unit": "percentage", + "value": 4.2245370370370369E-06 + }, + { + "name": "logIo", + "displayName": "Log Writes", + "unit": "percentage", + "value": 0.0 + }, + { + "name": "memory", + "displayName": "Memory consumption", + "unit": "KB", + "value": 8336.0 + }, + { + "name": "duration", + "displayName": "Query duration", + "unit": "microseconds", + "value": 11091296.0 + } + ] + } + ] + }, + { + "databaseName": "db1", + "queryId": "24", + "intervals": [ + { + "intervalStartTime": "03/11/2020 00:00:00", + "executionCount": 1, + "metrics": [ + { + "name": "cpu", + "displayName": "Cpu", + "unit": "percentage", + "value": 0.00095227835648148147 + }, + { + "name": "io", + "displayName": "Physical Io Reads", + "unit": "percentage", + "value": 1.7361111111111112E-07 + }, + { + "name": "logIo", + "displayName": "Log Writes", + "unit": "percentage", + "value": 0.0 + }, + { + "name": "memory", + "displayName": "Memory consumption", + "unit": "KB", + "value": 1024.0 + }, + { + "name": "duration", + "displayName": "Query duration", + "unit": "microseconds", + "value": 6625562.0 + } + ] + } + ] + }, + { + "databaseName": "db1", + "queryId": "3", + "intervals": [ + { + "intervalStartTime": "03/11/2020 00:00:00", + "executionCount": 82, + "metrics": [ + { + "name": "cpu", + "displayName": "Cpu", + "unit": "percentage", + "value": 0.00071831394675925925 + }, + { + "name": "io", + "displayName": "Physical Io Reads", + "unit": "percentage", + "value": 0.0 + }, + { + "name": "logIo", + "displayName": "Log Writes", + "unit": "percentage", + "value": 0.0 + }, + { + "name": "memory", + "displayName": "Memory consumption", + "unit": "KB", + "value": 0.0 + }, + { + "name": "duration", + "displayName": "Query duration", + "unit": "microseconds", + "value": 4970199.0 + } + ] + } + ] + }, + { + "databaseName": "db1", + "queryId": "29", + "intervals": [ + { + "intervalStartTime": "03/11/2020 00:00:00", + "executionCount": 1, + "metrics": [ + { + "name": "cpu", + "displayName": "Cpu", + "unit": "percentage", + "value": 0.00064944545717592593 + }, + { + "name": "io", + "displayName": "Physical Io Reads", + "unit": "percentage", + "value": 5.0347222222222223E-06 + }, + { + "name": "logIo", + "displayName": "Log Writes", + "unit": "percentage", + "value": 0.0 + }, + { + "name": "memory", + "displayName": "Memory consumption", + "unit": "KB", + "value": 1024.0 + }, + { + "name": "duration", + "displayName": "Query duration", + "unit": "microseconds", + "value": 4530668.0 + } + ] + } + ] + }, + { + "databaseName": "db2", + "queryId": "25", + "intervals": [ + { + "intervalStartTime": "03/11/2020 00:00:00", + "executionCount": 1, + "metrics": [ + { + "name": "cpu", + "displayName": "Cpu", + "unit": "percentage", + "value": 0.00062753689236111116 + }, + { + "name": "io", + "displayName": "Physical Io Reads", + "unit": "percentage", + "value": 0.0 + }, + { + "name": "logIo", + "displayName": "Log Writes", + "unit": "percentage", + "value": 0.0 + }, + { + "name": "memory", + "displayName": "Memory consumption", + "unit": "KB", + "value": 1024.0 + }, + { + "name": "duration", + "displayName": "Query duration", + "unit": "microseconds", + "value": 4349943.0 + } + ] + } + ] + } + ] + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceTopQueriesListMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceTopQueriesListMin.json new file mode 100644 index 000000000000..b880137389b7 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceTopQueriesListMin.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "managedInstanceName": "sqlcrudtest-4645", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "numberOfQueries": 5, + "aggregationFunction": "sum", + "observationMetric": "cpu", + "intervalType": "PT1H", + "startTime": "03/10/2020 12:00:00", + "endTime": "03/11/2020 12:24:07", + "queries": [] + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceUpdateMax.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceUpdateMax.json new file mode 100644 index 000000000000..f04ec988c94d --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceUpdateMax.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "subscriptionId": "20D7082A-0FC7-4468-82BD-542694D5042B", + "resourceGroupName": "testrg", + "managedInstanceName": "testinstance", + "api-version": "2021-02-01-preview", + "parameters": { + "tags": { + "tagKey1": "TagValue1" + }, + "sku": { + "name": "GP_Gen4", + "tier": "GeneralPurpose", + "capacity": 8 + }, + "properties": { + "administratorLogin": "dummylogin", + "administratorLoginPassword": "PLACEHOLDER", + "proxyOverride": "Redirect", + "publicDataEndpointEnabled": false, + "minimalTlsVersion": "1.2", + "licenseType": "BasePrice", + "vCores": 8, + "storageSizeInGB": 448, + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maintenanceConfigurationId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_JapanEast_MI_1" + } + } + }, + "responses": { + "200": { + "body": { + "tags": { + "tagKey1": "TagValue1" + }, + "id": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Sql/managedInstances/testinstance", + "name": "testinstance", + "type": "Microsoft.Sql/managedInstances", + "location": "japaneast", + "sku": { + "name": "GP_Gen4", + "tier": "GeneralPurpose", + "capacity": 8, + "family": "Gen4" + }, + "properties": { + "fullyQualifiedDomainName": "testinstance.1b4e2caff2530.database.windows.net", + "administratorLogin": "dummylogin", + "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "state": "Ready", + "vCores": 8, + "storageSizeInGB": 448, + "licenseType": "BasePrice", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "publicDataEndpointEnabled": false, + "proxyOverride": "Redirect", + "minimalTlsVersion": "1.2", + "dnsZone": "1b4e2caff2530", + "instancePoolId": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/testrg/providers/Microsoft.Sql/instancePools/instancePool1", + "maintenanceConfigurationId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_JapanEast_MI_1" + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceUpdateMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceUpdateMin.json new file mode 100644 index 000000000000..80a0ed989fb6 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceUpdateMin.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "20D7082A-0FC7-4468-82BD-542694D5042B", + "resourceGroupName": "testrg", + "managedInstanceName": "testinstance", + "api-version": "2021-02-01-preview", + "parameters": { + "tags": { + "tagKey1": "TagValue1" + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "GP_Gen4", + "tier": "GeneralPurpose", + "capacity": 8, + "family": "Gen4" + }, + "properties": { + "fullyQualifiedDomainName": "testinstance.1b4e2caff2530.database.windows.net", + "administratorLogin": "PLACEHOLDER", + "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "state": "Ready", + "vCores": 8, + "storageSizeInGB": 1024, + "licenseType": "LicenseIncluded", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "publicDataEndpointEnabled": false, + "proxyOverride": "Default", + "dnsZone": "1b4e2caff2530", + "instancePoolId": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/testrg/providers/Microsoft.Sql/instancePools/instancePool1", + "maintenanceConfigurationId": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_Default" + }, + "location": "japaneast", + "tags": { + "tagKey1": "TagValue1" + }, + "id": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/testrg/providers/Microsoft.Sql/managedInstances/testinstance", + "name": "testinstance", + "type": "Microsoft.Sql/managedInstances" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceVulnerabilityAssessmentCreateContainerSasKeyMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceVulnerabilityAssessmentCreateContainerSasKeyMin.json new file mode 100644 index 000000000000..fb367829ff97 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceVulnerabilityAssessmentCreateContainerSasKeyMin.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityaseessmenttest-4799", + "managedInstanceName": "vulnerabilityaseessmenttest-6440", + "vulnerabilityAssessmentName": "default", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "storageContainerPath": "https://myStorage.blob.core.windows.net/vulnerability-assessment/", + "storageContainerSasKey": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/managedInstances/vulnerabilityaseessmenttest-6440/vulnerabilityAssessments/default", + "name": "default", + "type": "Microsoft.Sql/managedInstances/vulnerabilityAssessments", + "properties": { + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": false, + "emails": [] + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/managedInstances/vulnerabilityaseessmenttest-6440/vulnerabilityAssessments/default", + "name": "default", + "type": "Microsoft.Sql/managedInstances/vulnerabilityAssessments", + "properties": { + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": false, + "emails": [] + } + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceVulnerabilityAssessmentCreateMax.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceVulnerabilityAssessmentCreateMax.json new file mode 100644 index 000000000000..2962e0bc3d96 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceVulnerabilityAssessmentCreateMax.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityaseessmenttest-4799", + "managedInstanceName": "vulnerabilityaseessmenttest-6440", + "vulnerabilityAssessmentName": "default", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "storageContainerPath": "https://myStorage.blob.core.windows.net/vulnerability-assessment/", + "storageContainerSasKey": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX", + "storageAccountAccessKey": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX", + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": true, + "emails": [ + "email1@mail.com", + "email2@mail.com" + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/managedInstances/vulnerabilityaseessmenttest-6440/vulnerabilityAssessments/default", + "name": "default", + "type": "Microsoft.Sql/managedInstances/vulnerabilityAssessments", + "properties": { + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": true, + "emails": [ + "email1@mail.com", + "email2@mail.com" + ] + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/managedInstances/vulnerabilityaseessmenttest-6440/vulnerabilityAssessments/default", + "name": "default", + "type": "Microsoft.Sql/managedInstances/vulnerabilityAssessments", + "properties": { + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": true, + "emails": [ + "email1@mail.com", + "email2@mail.com" + ] + } + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceVulnerabilityAssessmentCreateStorageAccessKeyMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceVulnerabilityAssessmentCreateStorageAccessKeyMin.json new file mode 100644 index 000000000000..23a42264757b --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceVulnerabilityAssessmentCreateStorageAccessKeyMin.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityaseessmenttest-4799", + "managedInstanceName": "vulnerabilityaseessmenttest-6440", + "vulnerabilityAssessmentName": "default", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "storageContainerPath": "https://myStorage.blob.core.windows.net/vulnerability-assessment/", + "storageAccountAccessKey": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/managedInstances/vulnerabilityaseessmenttest-6440/vulnerabilityAssessments/default", + "name": "default", + "type": "Microsoft.Sql/managedInstances/vulnerabilityAssessments", + "properties": { + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": false, + "emails": [] + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/managedInstances/vulnerabilityaseessmenttest-6440/vulnerabilityAssessments/default", + "name": "default", + "type": "Microsoft.Sql/managedInstances/vulnerabilityAssessments", + "properties": { + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": false, + "emails": [] + } + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceVulnerabilityAssessmentDelete.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceVulnerabilityAssessmentDelete.json new file mode 100644 index 000000000000..1f6517caeb03 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceVulnerabilityAssessmentDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityaseessmenttest-4799", + "managedInstanceName": "vulnerabilityaseessmenttest-6440", + "vulnerabilityAssessmentName": "default", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceVulnerabilityAssessmentGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceVulnerabilityAssessmentGet.json new file mode 100644 index 000000000000..941a792df2ab --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceVulnerabilityAssessmentGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityaseessmenttest-4799", + "managedInstanceName": "vulnerabilityaseessmenttest-6440", + "vulnerabilityAssessmentName": "default", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/managedInstances/vulnerabilityaseessmenttest-6440/vulnerabilityAssessments/default", + "name": "default", + "type": "Microsoft.Sql/managedInstances/vulnerabilityAssessments", + "properties": { + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": true, + "emails": [ + "email1@mail.com", + "email2@mail.com" + ] + } + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceVulnerabilityAssessmentListByInstance.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceVulnerabilityAssessmentListByInstance.json new file mode 100644 index 000000000000..086589e6dcdf --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedInstanceVulnerabilityAssessmentListByInstance.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityaseessmenttest-4799", + "managedInstanceName": "vulnerabilityaseessmenttest-6440", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/managedInstances/vulnerabilityaseessmenttest-6440/vulnerabilityAssessments/default", + "name": "default", + "type": "Microsoft.Sql/managedInstances/vulnerabilityAssessments", + "properties": { + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": true, + "emails": [ + "email1@mail.com", + "email2@mail.com" + ] + } + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedServerSecurityAlertCreateMax.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedServerSecurityAlertCreateMax.json new file mode 100644 index 000000000000..e28c5388cd64 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedServerSecurityAlertCreateMax.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "securityalert-4799", + "managedInstanceName": "securityalert-6440", + "securityAlertPolicyName": "Default", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "state": "Enabled", + "emailAccountAdmins": true, + "emailAddresses": [ + "testSecurityAlert@microsoft.com" + ], + "disabledAlerts": [ + "Access_Anomaly", + "Usage_Anomaly" + ], + "retentionDays": 5, + "storageAccountAccessKey": "sdlfkjabc+sdlfkjsdlkfsjdfLDKFTERLKFDFKLjsdfksjdflsdkfD2342309432849328476458/3RSD==", + "storageEndpoint": "https://mystorage.blob.core.windows.net" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/securityalert-4799/providers/Microsoft.Sql/managedInstances/securityalert-6440", + "name": "Default", + "type": "Microsoft.Sql/managedInstances/securityAlertPolicies", + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2020-04-03T04:41:33.937Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-04-03T04:41:33.937Z" + }, + "properties": { + "state": "Enabled", + "emailAccountAdmins": true, + "emailAddresses": [ + "testSecurityAlert@microsoft.com" + ], + "disabledAlerts": [ + "Access_Anomaly", + "Usage_Anomaly" + ], + "retentionDays": 5, + "storageAccountAccessKey": "", + "storageEndpoint": "https://mystorage.blob.core.windows.net" + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedServerSecurityAlertCreateMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedServerSecurityAlertCreateMin.json new file mode 100644 index 000000000000..5b037822428e --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedServerSecurityAlertCreateMin.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "securityalert-4799", + "managedInstanceName": "securityalert-6440", + "securityAlertPolicyName": "Default", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "state": "Enabled" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/securityalert-4799/providers/Microsoft.Sql/managedInstances/securityalert-6440", + "name": "Default", + "type": "Microsoft.Sql/managedInstances/securityAlertPolicies", + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2020-04-03T04:41:33.937Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-04-03T04:41:33.937Z" + }, + "properties": { + "state": "Enabled", + "emailAccountAdmins": true, + "emailAddresses": [], + "disabledAlerts": [], + "retentionDays": 0, + "storageAccountAccessKey": "", + "storageEndpoint": "" + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedServerSecurityAlertGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedServerSecurityAlertGet.json new file mode 100644 index 000000000000..0bcccacb7236 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedServerSecurityAlertGet.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "securityalert-4799", + "managedInstanceName": "securityalert-6440", + "securityAlertPolicyName": "Default", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/securityalert-4799/providers/Microsoft.Sql/managedInstances/securityalert-6440", + "name": "Default", + "type": "Microsoft.Sql/managedInstances/securityAlertPolicies", + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2020-04-03T04:41:33.937Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-04-03T04:41:33.937Z" + }, + "properties": { + "state": "Disabled", + "emailAccountAdmins": true, + "emailAddresses": [ + "test@consoto.com;user@consoto.com" + ], + "disabledAlerts": [ + "Access_Anomaly" + ], + "retentionDays": 0, + "storageAccountAccessKey": "", + "storageEndpoint": "", + "creationTime": "2020-04-03T04:41:33.937Z" + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedServerSecurityAlertListByInstance.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedServerSecurityAlertListByInstance.json new file mode 100644 index 000000000000..5f51571e3364 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedServerSecurityAlertListByInstance.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "securityalert-4799", + "managedInstanceName": "securityalert-6440", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/securityalert-4799/providers/Microsoft.Sql/managedInstances/securityalert-6440", + "name": "Default", + "type": "Microsoft.Sql/managedInstances/securityAlertPolicies", + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2020-04-03T04:41:33.937Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-04-03T04:41:33.937Z" + }, + "properties": { + "state": "Disabled", + "emailAccountAdmins": true, + "emailAddresses": [ + "test@consoto.com;user@consoto.com" + ], + "disabledAlerts": [ + "Access_Anomaly" + ], + "retentionDays": 0, + "storageAccountAccessKey": "", + "storageEndpoint": "", + "creationTime": "2020-04-03T04:41:33.937Z" + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedTransparentDataEncryptionGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedTransparentDataEncryptionGet.json new file mode 100644 index 000000000000..4ae767e944ac --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedTransparentDataEncryptionGet.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "security-tde-resourcegroup", + "managedInstanceName": "securitytde", + "databaseName": "testdb", + "tdeName": "current", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/security-tde-resourcegroup/providers/Microsoft.Sql/managedInstances/securitytde/databases/testdb", + "name": "default", + "type": "Microsoft.Sql/managedInstances/databases/transparentDataEncryption", + "properties": { + "state": "Enabled" + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedTransparentDataEncryptionList.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedTransparentDataEncryptionList.json new file mode 100644 index 000000000000..3b41f9848d31 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedTransparentDataEncryptionList.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "security-tde-resourcegroup", + "managedInstanceName": "securitytde", + "databaseName": "testdb", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/security-tde-resourcegroup/providers/Microsoft.Sql/managedInstances/securitytde/databases/testdb", + "name": "current", + "type": "Microsoft.Sql/managedInstances/databases/transparentDataEncryption", + "properties": { + "state": "Enabled" + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedTransparentDataEncryptionUpdate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedTransparentDataEncryptionUpdate.json new file mode 100644 index 000000000000..3a2325bea241 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ManagedTransparentDataEncryptionUpdate.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "securitytde-42-rg", + "managedInstanceName": "securitytde-42", + "databaseName": "testdb", + "tdeName": "current", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "state": "Enabled" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/securitytde-42-rg/providers/Microsoft.Sql/managedInstances/securitytde-42/databases/testdb/transparentDataEncryption", + "name": "current", + "type": "Microsoft.Sql/managedInstance/databases/transparentDataEncryption", + "properties": { + "state": "Enabled" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/securitytde-42-rg/providers/Microsoft.Sql/managedInstances/securitytde-42/databases/testdb/transparentDataEncryption", + "name": "current", + "type": "Microsoft.Sql/managedInstance/databases/transparentDataEncryption", + "properties": { + "state": "Enabled" + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/OperationsHealthListByLocation.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/OperationsHealthListByLocation.json new file mode 100644 index 000000000000..f7e77dba6b6c --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/OperationsHealthListByLocation.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "locationName": "WestUS", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "name": "Microsoft.Sql/managedServers/write", + "health": "Healthy", + "description": "Everything's good." + }, + "id": "/subscriptions/6c04259d-9b66-46b0-b07f-8939deb762e4/providers/Microsoft.Sql/locations/InProcess/operationsHealth", + "name": "OperationsHealth", + "type": "Microsoft.Sql/locations/listByOperationsHealth" + }, + { + "properties": { + "name": "Microsoft.Sql/servers/write", + "health": "Degraded", + "description": "Prolonged deployment times expected." + }, + "id": "/subscriptions/6c04259d-9b66-46b0-b07f-8939deb762e4/providers/Microsoft.Sql/locations/InProcess/operationsHealth", + "name": "OperationsHealth", + "type": "Microsoft.Sql/locations/listByOperationsHealth" + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/OutboundFirewallRuleCreate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/OutboundFirewallRuleCreate.json new file mode 100644 index 000000000000..5e4c0640c67a --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/OutboundFirewallRuleCreate.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "serverName": "sqlcrudtest-4645", + "outboundRuleFqdn": "server.database.windows.net", + "api-version": "2021-02-01-preview", + "parameters": {} + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/outboundFirewallRules/server.datbase.windows.net", + "name": "server.database.windows.net", + "type": "Microsoft.Sql/servers/outboundFirewallRules", + "properties": { + "provisioningState": "Creating" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/outboundFirewallRules/server.datbase.windows.net", + "name": "server.database.windows.net", + "type": "Microsoft.Sql/servers/outboundFirewallRules", + "properties": { + "provisioningState": "Creating" + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/OutboundFirewallRuleDelete.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/OutboundFirewallRuleDelete.json new file mode 100644 index 000000000000..35c19bbb28b7 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/OutboundFirewallRuleDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "serverName": "sqlcrudtest-6661", + "outboundRuleFqdn": "server.database.windows.net", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/OutboundFirewallRuleGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/OutboundFirewallRuleGet.json new file mode 100644 index 000000000000..a5c9798a2e36 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/OutboundFirewallRuleGet.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "serverName": "sqlcrudtest-4645", + "outboundRuleFqdn": "server.database.windows.net", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/outboundFirewallRules/server.datbase.windows.net", + "name": "server.database.windows.net", + "type": "Microsoft.Sql/servers/outboundFirewallRules", + "properties": { + "provisioningState": "Ready" + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/OutboundFirewallRuleList.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/OutboundFirewallRuleList.json new file mode 100644 index 000000000000..258e6856ed87 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/OutboundFirewallRuleList.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "serverName": "sqlcrudtest-4645", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/outboundFirewallRules/server.datbase.windows.net", + "name": "server.database.windows.net", + "type": "Microsoft.Sql/servers/outboundFirewallRules", + "properties": { + "provisioningState": "Ready" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/outboundFirewallRules/storage.blob.windows.net", + "name": "storage.blob.windows.net", + "type": "Microsoft.Sql/servers/outboundFirewallRules", + "properties": { + "provisioningState": "Creating" + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/PatchInstancePool.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/PatchInstancePool.json new file mode 100644 index 000000000000..79dbdf2c7970 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/PatchInstancePool.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "group1", + "instancePoolName": "testIP", + "api-version": "2021-02-01-preview", + "parameters": { + "tags": { + "x": "y" + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "GP_Gen5", + "tier": "GeneralPurpose", + "family": "Gen5" + }, + "properties": { + "subnetId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Network/virtualNetwork/myvnet/subnets/mysubnet1", + "vCores": 8, + "licenseType": "LicenseIncluded" + }, + "location": "japaneast", + "tags": { + "x": "y" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/instancePools/testIP", + "name": "testIP", + "type": "Microsoft.Sql/instancePools" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/PatchVCoreDatabase.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/PatchVCoreDatabase.json new file mode 100644 index 000000000000..c72f2b6f1b24 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/PatchVCoreDatabase.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdb", + "api-version": "2021-02-01-preview", + "parameters": { + "sku": { + "name": "BC_Gen4_4" + }, + "properties": { + "maxSizeBytes": 1073741824, + "licenseType": "LicenseIncluded" + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "BC_Gen4", + "tier": "BusinessCritical", + "capacity": 4 + }, + "kind": "v12.0,user,vcore", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 1073741824, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "creationDate": "2017-06-07T04:41:33.937Z", + "currentServiceObjectiveName": "BC_Gen4_2", + "requestedServiceObjectiveName": "BC_Gen4_2", + "defaultSecondaryLocation": "North Europe", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "licenseType": "LicenseIncluded", + "maxLogSizeBytes": 104857600, + "isInfraEncryptionEnabled": false, + "zoneRedundant": false, + "readScale": "Enabled", + "earliestRestoreDate": "2017-06-07T04:51:33.937Z", + "currentSku": { + "name": "BC_Gen4", + "tier": "BusinessCritical", + "capacity": 4 + }, + "currentBackupStorageRedundancy": "Geo", + "requestedBackupStorageRedundancy": "Local", + "isLedgerOn": false + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "name": "testdb", + "type": "Microsoft.Sql/servers/databases" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/PatchVCoreDatabaseAssignMaintenanceConfiguration.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/PatchVCoreDatabaseAssignMaintenanceConfiguration.json new file mode 100644 index 000000000000..b3c630d2ab36 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/PatchVCoreDatabaseAssignMaintenanceConfiguration.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdb", + "api-version": "2021-02-01-preview", + "parameters": { + "sku": { + "name": "BC_Gen5_4" + }, + "properties": { + "maintenanceConfigurationId": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_SouthEastAsia_1" + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "BC_Gen5", + "tier": "BusinessCritical", + "capacity": 4 + }, + "kind": "v12.0,user,vcore", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 1073741824, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "creationDate": "2017-06-07T04:41:33.937Z", + "currentServiceObjectiveName": "BC_Gen5_2", + "requestedServiceObjectiveName": "BC_Gen5_2", + "defaultSecondaryLocation": "North Europe", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "licenseType": "LicenseIncluded", + "maxLogSizeBytes": 104857600, + "currentBackupStorageRedundancy": "Geo", + "requestedBackupStorageRedundancy": "Geo", + "isLedgerOn": false, + "isInfraEncryptionEnabled": false, + "zoneRedundant": false, + "readScale": "Enabled", + "earliestRestoreDate": "2017-06-07T04:51:33.937Z", + "currentSku": { + "name": "BC_Gen5", + "tier": "BusinessCritical", + "capacity": 4 + }, + "maintenanceConfigurationId": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_SouthEastAsia_1" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "name": "testdb", + "type": "Microsoft.Sql/servers/databases" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/PatchVCoreDatabaseResetMaintenanceConfiguration.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/PatchVCoreDatabaseResetMaintenanceConfiguration.json new file mode 100644 index 000000000000..ffe7170204be --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/PatchVCoreDatabaseResetMaintenanceConfiguration.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdb", + "api-version": "2021-02-01-preview", + "parameters": { + "sku": { + "name": "BC_Gen5_4" + }, + "properties": { + "maintenanceConfigurationId": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_Default" + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "BC_Gen5", + "tier": "BusinessCritical", + "capacity": 4 + }, + "kind": "v12.0,user,vcore", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 1073741824, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "creationDate": "2017-06-07T04:41:33.937Z", + "currentServiceObjectiveName": "BC_Gen5_4", + "requestedServiceObjectiveName": "BC_Gen5_4", + "defaultSecondaryLocation": "North Europe", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "licenseType": "LicenseIncluded", + "maxLogSizeBytes": 104857600, + "currentBackupStorageRedundancy": "Geo", + "requestedBackupStorageRedundancy": "Geo", + "isLedgerOn": false, + "isInfraEncryptionEnabled": false, + "zoneRedundant": false, + "readScale": "Enabled", + "earliestRestoreDate": "2017-06-07T04:51:33.937Z", + "currentSku": { + "name": "BC_Gen5", + "tier": "BusinessCritical", + "capacity": 4 + } + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "name": "testdb", + "type": "Microsoft.Sql/servers/databases" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/PauseDatabase.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/PauseDatabase.json new file mode 100644 index 000000000000..b98d769ca218 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/PauseDatabase.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdwdb", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "DataWarehouse" + }, + "kind": "v12.0,user,datawarehouse", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 10995116277760, + "status": "Paused", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "creationDate": "2017-07-13T02:04:26.187Z", + "currentServiceObjectiveName": "D1", + "defaultSecondaryLocation": "North Europe", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdwdb", + "name": "testdwdb", + "type": "Microsoft.Sql/servers/databases" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/PrivateEndpointConnectionDelete.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/PrivateEndpointConnectionDelete.json new file mode 100644 index 000000000000..173e499d29bc --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/PrivateEndpointConnectionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "test-svr", + "privateEndpointConnectionName": "private-endpoint-connection-name", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/PrivateEndpointConnectionGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/PrivateEndpointConnectionGet.json new file mode 100644 index 000000000000..66723a406c41 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/PrivateEndpointConnectionGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "test-svr", + "privateEndpointConnectionName": "private-endpoint-connection-name", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/test-svr/privateEndpointConnections/private-endpoint-connection-name", + "name": "private-endpoint-connection-name", + "type": "Microsoft.Sql/servers/privateEndpointConnections", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/PrivateEndpointConnectionList.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/PrivateEndpointConnectionList.json new file mode 100644 index 000000000000..fcf1cedc484f --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/PrivateEndpointConnectionList.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "test-svr", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/test-svr/privateEndpointConnections/private-endpoint-connection-name-2", + "name": "private-endpoint-connection-name", + "type": "Microsoft.Sql/servers/privateEndpointConnections", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/test-svr/privateEndpointConnections/private-endpoint-connection-name-2", + "name": "private-endpoint-connection-name-2", + "type": "Microsoft.Sql/servers/privateEndpointConnections", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name-2" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/PrivateEndpointConnectionUpdate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/PrivateEndpointConnectionUpdate.json new file mode 100644 index 000000000000..33da2231de3b --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/PrivateEndpointConnectionUpdate.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "test-svr", + "privateEndpointConnectionName": "private-endpoint-connection-name", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@contoso.com" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/test-svr/privateEndpointConnections/private-endpoint-connection-name", + "name": "private-endpoint-connection-name", + "type": "Microsoft.Sql/servers/privateEndpointConnections", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@contoso.com", + "actionsRequired": "None" + } + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/PrivateLinkResourcesGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/PrivateLinkResourcesGet.json new file mode 100644 index 000000000000..c5b2f779573f --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/PrivateLinkResourcesGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "test-svr", + "groupName": "plr", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/test-svr/privateLinkResources/plr", + "name": "plr", + "type": "Microsoft.Sql/servers/privateLinkResources", + "properties": { + "groupId": "sqlServer", + "requiredMembers": [ + "sqlServer" + ] + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/PrivateLinkResourcesList.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/PrivateLinkResourcesList.json new file mode 100644 index 000000000000..36eca61aff9f --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/PrivateLinkResourcesList.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "test-svr", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/test-svr/privateLinkResources/plr", + "name": "plr", + "type": "Microsoft.Sql/servers/privateLinkResources", + "properties": { + "groupId": "sqlServer", + "requiredMembers": [ + "sqlServer" + ] + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/RecommendedColumnSensitivityLabelDisable.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/RecommendedColumnSensitivityLabelDisable.json new file mode 100644 index 000000000000..de223408005a --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/RecommendedColumnSensitivityLabelDisable.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "serverName": "myServer", + "databaseName": "myDatabase", + "schemaName": "dbo", + "tableName": "myTable", + "columnName": "myColumn", + "sensitivityLabelSource": "recommended", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/RecommendedColumnSensitivityLabelEnable.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/RecommendedColumnSensitivityLabelEnable.json new file mode 100644 index 000000000000..de223408005a --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/RecommendedColumnSensitivityLabelEnable.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "serverName": "myServer", + "databaseName": "myDatabase", + "schemaName": "dbo", + "tableName": "myTable", + "columnName": "myColumn", + "sensitivityLabelSource": "recommended", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/RenameDatabase.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/RenameDatabase.json new file mode 100644 index 000000000000..97783ba7d216 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/RenameDatabase.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdb", + "api-version": "2021-02-01-preview", + "parameters": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/newtestdb" + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ReplicationLinkGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ReplicationLinkGet.json new file mode 100644 index 000000000000..dd33bc425033 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ReplicationLinkGet.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "sourcesvr", + "databaseName": "gamma-db", + "replicationLinkName": "4891ca10-ebd0-47d7-9182-c722651780fb", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "partnerServer": "testsvr", + "partnerDatabase": "gamma-db", + "partnerLocation": "Japan East", + "role": "Primary", + "partnerRole": "Secondary", + "replicationMode": "ASYNC", + "startTime": "2018-06-21T08:12:43.783Z", + "percentComplete": 100, + "replicationState": "CATCH_UP", + "isTerminationAllowed": true, + "linkType": "GEO" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/sourcesvr/databases/gamma-db/replicationLinks/4891ca10-ebd0-47d7-9182-c722651780fb", + "name": "4891ca10-ebd0-47d7-9182-c722651780fb" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ReplicationLinkListByDatabase.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ReplicationLinkListByDatabase.json new file mode 100644 index 000000000000..bcab49dbba19 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ReplicationLinkListByDatabase.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "sourcesvr", + "databaseName": "tetha-db", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "partnerServer": "testsvr", + "partnerDatabase": "tetha-db", + "partnerLocation": "Japan East", + "role": "Primary", + "partnerRole": "Secondary", + "replicationMode": "ASYNC", + "startTime": "2018-06-21T08:11:46.907Z", + "percentComplete": 100, + "replicationState": "CATCH_UP", + "isTerminationAllowed": true, + "linkType": "GEO" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/sourcesvr/databases/tetha-db/replicationLinks/fb92de60-eb87-4a58-b250-3362d0cfdf26", + "name": "fb92de60-eb87-4a58-b250-3362d0cfdf26" + }, + { + "properties": { + "partnerServer": "targetsvr", + "partnerDatabase": "tetha-db", + "partnerLocation": "Japan East", + "role": "Primary", + "partnerRole": "Secondary", + "replicationMode": "ASYNC", + "startTime": "2018-06-21T08:11:34.423Z", + "percentComplete": 100, + "replicationState": "CATCH_UP", + "isTerminationAllowed": true, + "linkType": "GEO" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/sourcesvr/databases/tetha-db/replicationLinks/6ad1eefc-18a2-4fcb-94f3-4b654ba788d7", + "name": "6ad1eefc-18a2-4fcb-94f3-4b654ba788d7" + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ReplicationLinkListByServer.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ReplicationLinkListByServer.json new file mode 100644 index 000000000000..37bc929c2bdc --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ReplicationLinkListByServer.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "sourcesvr", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "partnerServer": "testsvr", + "partnerDatabase": "tetha-db", + "partnerLocation": "Japan East", + "role": "Primary", + "partnerRole": "Secondary", + "replicationMode": "ASYNC", + "startTime": "2018-06-21T08:11:46.907Z", + "percentComplete": 100, + "replicationState": "CATCH_UP", + "isTerminationAllowed": true, + "linkType": "GEO" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-Onebox/providers/Microsoft.Sql/servers/sourcesvr/databases/tetha-db/replicationLinks/fb92de60-eb87-4a58-b250-3362d0cfdf26", + "name": "fb92de60-eb87-4a58-b250-3362d0cfdf26" + }, + { + "properties": { + "partnerServer": "targetsvr", + "partnerDatabase": "tetha-db", + "partnerLocation": "Japan East", + "role": "Primary", + "partnerRole": "Secondary", + "replicationMode": "ASYNC", + "startTime": "2018-06-21T08:11:34.423Z", + "percentComplete": 100, + "replicationState": "CATCH_UP", + "isTerminationAllowed": true, + "linkType": "GEO" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-Onebox/providers/Microsoft.Sql/servers/sourcesvr/databases/tetha-db/replicationLinks/6ad1eefc-18a2-4fcb-94f3-4b654ba788d7", + "name": "6ad1eefc-18a2-4fcb-94f3-4b654ba788d7" + }, + { + "properties": { + "partnerServer": "testsvr", + "partnerDatabase": "gamma-db", + "partnerLocation": "Japan East", + "role": "Primary", + "partnerRole": "Secondary", + "replicationMode": "ASYNC", + "startTime": "2018-06-21T08:12:43.783Z", + "percentComplete": 100, + "replicationState": "CATCH_UP", + "isTerminationAllowed": true, + "linkType": "GEO" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-Onebox/providers/Microsoft.Sql/servers/sourcesvr/databases/gamma-db/replicationLinks/4891ca10-ebd0-47d7-9182-c722651780fb", + "name": "4891ca10-ebd0-47d7-9182-c722651780fb" + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ResourceGroupBasedLongTermRetentionBackupCopy.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ResourceGroupBasedLongTermRetentionBackupCopy.json new file mode 100644 index 000000000000..8bd86c07298f --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ResourceGroupBasedLongTermRetentionBackupCopy.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testResourceGroup", + "locationName": "japaneast", + "longTermRetentionServerName": "testserver", + "longTermRetentionDatabaseName": "testDatabase", + "backupName": "55555555-6666-7777-8888-999999999999;131637960820000000", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "targetServerResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/resourceGroups/resourceGroup/servers/testserver2", + "targetDatabaseName": "testDatabase2", + "targetBackupStorageRedundancy": "Geo" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testResourceGroup/providers/Microsoft.Sql/locations/japanEast/longTermRetentionBackupOperationResults/a1aa7c77-961b-4fbb-bcd6-aa9acfcd1706", + "name": "a1aa7c77-961b-4fbb-bcd6-aa9acfcd1706", + "type": "Microsoft.Sql/locations/longTermRetentionBackupOperationResults", + "properties": { + "requestId": "a1aa7c77-961b-4fbb-bcd6-aa9acfcd1706", + "fromBackupResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testResourceGroup/providers/Microsoft.Sql/locations/japanEast/longTermRetentionServers/testserver/longterRetentionDatabases/testDatabase/longTermRetentionBackups/55555555-6666-7777-8888-999999999999;131637960820000000", + "operationType": "CopyBackup", + "status": "Succeeded", + "toBackupResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup/providers/Microsoft.Sql/locations/japanEast/longTermRetentionServers/testserver2/longterRetentionDatabases/testDatabase2/longTermRetentionBackups/55555555-6666-7777-8888-111111111111;131637960820000000", + "targetBackupStorageRedundancy": "Geo" + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ResourceGroupBasedLongTermRetentionBackupDelete.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ResourceGroupBasedLongTermRetentionBackupDelete.json new file mode 100644 index 000000000000..5c623bfaab28 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ResourceGroupBasedLongTermRetentionBackupDelete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testResourceGroup", + "locationName": "japaneast", + "longTermRetentionServerName": "testserver", + "longTermRetentionDatabaseName": "testDatabase", + "backupName": "55555555-6666-7777-8888-999999999999;131637960820000000", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ResourceGroupBasedLongTermRetentionBackupGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ResourceGroupBasedLongTermRetentionBackupGet.json new file mode 100644 index 000000000000..a4659ada648a --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ResourceGroupBasedLongTermRetentionBackupGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testResourceGroup", + "locationName": "japaneast", + "longTermRetentionServerName": "testserver", + "longTermRetentionDatabaseName": "testDatabase", + "backupName": "55555555-6666-7777-8888-999999999999;131637960820000000", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testResourceGroup/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:00Z", + "databaseName": "testDatabase", + "databaseDeletionTime": null, + "backupTime": "2017-09-06T08:00:00Z", + "backupStorageRedundancy": "Geo" + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ResourceGroupBasedLongTermRetentionBackupListByDatabase.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ResourceGroupBasedLongTermRetentionBackupListByDatabase.json new file mode 100644 index 000000000000..5f2ac5ebcc3c --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ResourceGroupBasedLongTermRetentionBackupListByDatabase.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testResourceGroup", + "locationName": "japaneast", + "longTermRetentionServerName": "testserver", + "longTermRetentionDatabaseName": "testDatabase", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testResourceGroup/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:00Z", + "databaseName": "testDatabase", + "databaseDeletionTime": null, + "backupTime": "2017-08-23T08:00:00Z", + "backupStorageRedundancy": "Geo" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testResourceGroup/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:00Z", + "databaseName": "testDatabase", + "databaseDeletionTime": null, + "backupTime": "2017-08-30T08:00:00Z", + "backupStorageRedundancy": "Geo" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testResourceGroup/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:00Z", + "databaseName": "testDatabase", + "databaseDeletionTime": "2017-09-07T08:00:00Z", + "backupTime": "2017-09-06T08:00:00Z", + "backupStorageRedundancy": "Geo" + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ResourceGroupBasedLongTermRetentionBackupListByLocation.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ResourceGroupBasedLongTermRetentionBackupListByLocation.json new file mode 100644 index 000000000000..f85370a2feec --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ResourceGroupBasedLongTermRetentionBackupListByLocation.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testResourceGroup", + "locationName": "japaneast", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testResourceGroup/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:00Z", + "databaseName": "testDatabase1", + "databaseDeletionTime": null, + "backupTime": "2017-08-23T08:00:00Z", + "backupStorageRedundancy": "Geo" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testResourceGroup/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:00Z", + "databaseName": "testDatabase2", + "databaseDeletionTime": null, + "backupTime": "2017-08-30T08:00:00Z", + "backupStorageRedundancy": "Geo" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testResourceGroup/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:00Z", + "databaseName": "testDatabase3", + "databaseDeletionTime": null, + "backupTime": "2017-09-06T08:00:00Z", + "backupStorageRedundancy": "Geo" + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ResourceGroupBasedLongTermRetentionBackupListByServer.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ResourceGroupBasedLongTermRetentionBackupListByServer.json new file mode 100644 index 000000000000..542141149562 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ResourceGroupBasedLongTermRetentionBackupListByServer.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testResourceGroup", + "locationName": "japaneast", + "longTermRetentionServerName": "testserver", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testResourceGroup/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:00Z", + "databaseName": "testDatabase1", + "databaseDeletionTime": null, + "backupTime": "2017-08-23T08:00:00Z", + "backupStorageRedundancy": "Geo" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testResourceGroup/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:00Z", + "databaseName": "testDatabase2", + "databaseDeletionTime": null, + "backupTime": "2017-08-30T08:00:00Z", + "backupStorageRedundancy": "Geo" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testResourceGroup/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:00Z", + "databaseName": "testDatabase3", + "databaseDeletionTime": null, + "backupTime": "2017-09-06T08:00:00Z", + "backupStorageRedundancy": "Geo" + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ResourceGroupBasedLongTermRetentionBackupUpdate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ResourceGroupBasedLongTermRetentionBackupUpdate.json new file mode 100644 index 000000000000..8ae4c63016e2 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ResourceGroupBasedLongTermRetentionBackupUpdate.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testResourceGroup", + "locationName": "japaneast", + "longTermRetentionServerName": "testserver", + "longTermRetentionDatabaseName": "testDatabase", + "backupName": "55555555-6666-7777-8888-999999999999;131637960820000000", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "requestedBackupStorageRedundancy": "Geo" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testResourceGroup/providers/Microsoft.Sql/locations/japanEast/longTermRetentionBackupOperationResults/a1aa7c77-961b-4fbb-bcd6-aa9acfcd1706", + "name": "a1aa7c77-961b-4fbb-bcd6-aa9acfcd1706", + "type": "Microsoft.Sql/locations/longTermRetentionBackupOperationResults", + "properties": { + "requestId": "a1aa7c77-961b-4fbb-bcd6-aa9acfcd1706", + "fromBackupResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testResourceGroup/providers/Microsoft.Sql/locations/japanEast/longTermRetentionServers/testserver/longterRetentionDatabases/testDatabase/longTermRetentionBackups/55555555-6666-7777-8888-999999999999;131637960820000000", + "operationType": "UpdateBackup", + "status": "Succeeded", + "targetBackupStorageRedundancy": "Geo" + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ResourceGroupBasedManagedInstanceLongTermRetentionBackupDelete.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ResourceGroupBasedManagedInstanceLongTermRetentionBackupDelete.json new file mode 100644 index 000000000000..e047865aac0f --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ResourceGroupBasedManagedInstanceLongTermRetentionBackupDelete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testResourceGroup", + "locationName": "japaneast", + "managedInstanceName": "testInstance", + "databaseName": "testDatabase", + "backupName": "55555555-6666-7777-8888-999999999999;131637960820000000", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ResourceGroupBasedManagedInstanceLongTermRetentionBackupGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ResourceGroupBasedManagedInstanceLongTermRetentionBackupGet.json new file mode 100644 index 000000000000..7c35e7c6dac6 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ResourceGroupBasedManagedInstanceLongTermRetentionBackupGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testResourceGroup", + "locationName": "japaneast", + "managedInstanceName": "testInstance", + "databaseName": "testDatabase", + "backupName": "55555555-6666-7777-8888-999999999999;131637960820000000", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testResourceGroup/providers/Microsoft.Sql/Locations/japaneast/longTermRetentionManagedInstances/testInstance/longTermRetentionDatabases/testDatabase/longTermRetentionManagedInstanceBackups/55555555-6666-7777-8888-999999999999;131637960820000000", + "name": "55555555-6666-7777-8888-999999999999;131637960820000000", + "type": "Microsoft.Sql/locations/longTermRetentionManagedInstances/longTermRetentionDatabases/longTermRetentionManagedInstanceBackups", + "properties": { + "managedInstanceName": "testInstance", + "managedInstanceCreateTime": "2017-03-10T08:00:00Z", + "databaseName": "testDatabase", + "databaseDeletionTime": null, + "backupTime": "2017-09-06T08:00:00Z", + "backupStorageRedundancy": "Geo" + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ResourceGroupBasedManagedInstanceLongTermRetentionBackupListByDatabase.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ResourceGroupBasedManagedInstanceLongTermRetentionBackupListByDatabase.json new file mode 100644 index 000000000000..baba23522f48 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ResourceGroupBasedManagedInstanceLongTermRetentionBackupListByDatabase.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testResourceGroup", + "locationName": "japaneast", + "managedInstanceName": "testInstance", + "databaseName": "testDatabase", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testResourceGroup/providers/Microsoft.Sql/Locations/japaneast/longTermRetentionManagedInstances/testInstance/longTermRetentionDatabases/testDatabase/longTermRetentionManagedInstanceBackups/2018-06-01T08:00:00.000Z;55555555-6666-7777-8888-999999999999;2018-08-23T08:00:00.000Z", + "name": "2018-06-01T08:00:00.000Z;55555555-6666-7777-8888-999999999999;2018-08-23T08:00:00.000Z", + "type": "Microsoft.Sql/locations/longTermRetentionManagedInstances/longTermRetentionDatabases/longTermRetentionManagedInstanceBackups", + "properties": { + "managedInstanceName": "testInstance", + "managedInstanceCreateTime": "2017-03-10T08:00:00Z", + "databaseName": "testDatabase", + "databaseDeletionTime": null, + "backupTime": "2018-08-23T08:00:00Z", + "backupStorageRedundancy": "Geo" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testResourceGroup/providers/Microsoft.Sql/Locations/japaneast/longTermRetentionManagedInstances/testInstance/longTermRetentionDatabases/testDatabase/longTermRetentionManagedInstanceBackups/2018-06-01T08:00:00.000Z;55555555-6666-7777-8888-999999999999;2018-08-30T08:00:00.000Z", + "name": "2018-06-01T08:00:00.000Z;55555555-6666-7777-8888-999999999999;2018-08-30T08:00:00.000Z", + "type": "Microsoft.Sql/locations/longTermRetentionManagedInstances/longTermRetentionDatabases/longTermRetentionManagedInstanceBackups", + "properties": { + "managedInstanceName": "testInstance", + "managedInstanceCreateTime": "2017-03-10T08:00:00Z", + "databaseName": "testDatabase", + "databaseDeletionTime": null, + "backupTime": "2018-08-30T08:00:00Z", + "backupStorageRedundancy": "Geo" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testResourceGroup/providers/Microsoft.Sql/Locations/japaneast/longTermRetentionManagedInstances/testInstance/longTermRetentionDatabases/testDatabase/longTermRetentionManagedInstanceBackups/2018-06-01T08:00:00.000Z;55555555-6666-7777-8888-999999999999;2018-09-06T08:00:00.000Z", + "name": "2018-06-01T08:00:00.000Z;55555555-6666-7777-8888-999999999999;2018-09-06T08:00:00.000Z", + "type": "Microsoft.Sql/locations/longTermRetentionManagedInstances/longTermRetentionDatabases/longTermRetentionManagedInstanceBackups", + "properties": { + "managedInstanceName": "testInstance", + "managedInstanceCreateTime": "2018-03-10T08:00:00Z", + "databaseName": "testDatabase", + "databaseDeletionTime": "2018-09-07T08:00:00Z", + "backupTime": "2018-09-06T08:00:00Z", + "backupStorageRedundancy": "Geo" + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ResourceGroupBasedManagedInstanceLongTermRetentionBackupListByInstance.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ResourceGroupBasedManagedInstanceLongTermRetentionBackupListByInstance.json new file mode 100644 index 000000000000..4ee3a385a95a --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ResourceGroupBasedManagedInstanceLongTermRetentionBackupListByInstance.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testResourceGroup", + "locationName": "japaneast", + "managedInstanceName": "testInstance", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testResourceGroup/providers/Microsoft.Sql/locations/japaneast/longTermRetentionManagedInstances/testInstance/longTermRetentionDatabases/testDatabase1/longTermRetentionManagedInstanceBackups/55555555-6666-7777-8888-999999999999;131637960820000000", + "name": "55555555-6666-7777-8888-999999999999;131637960820000000", + "type": "Microsoft.Sql/locations/longTermRetentionManagedInstances/longTermRetentionDatabases/longTermRetentionManagedInstanceBackups", + "properties": { + "managedInstanceName": "testInstance", + "managedInstanceCreateTime": "2017-03-10T08:00:00Z", + "databaseName": "testDatabase1", + "databaseDeletionTime": null, + "backupTime": "2017-08-23T08:00:00Z", + "backupStorageRedundancy": "Geo" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testResourceGroup/providers/Microsoft.Sql/locations/japaneast/longTermRetentionManagedInstances/testInstance/longTermRetentionDatabases/testDatabase2/longTermRetentionManagedInstanceBackups/12341234-1234-1234-1234-123123123123;131657960820000000", + "name": "12341234-1234-1234-1234-123123123123;131657960820000000", + "type": "Microsoft.Sql/locations/longTermRetentionManagedInstances/longTermRetentionDatabases/longTermRetentionManagedInstanceBackups", + "properties": { + "managedInstanceName": "testInstance", + "managedInstanceCreateTime": "2017-03-10T08:00:00Z", + "databaseName": "testDatabase2", + "databaseDeletionTime": null, + "backupTime": "2017-08-30T08:00:00Z", + "backupStorageRedundancy": "Geo" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testResourceGroup/providers/Microsoft.Sql/locations/japaneast/longTermRetentionManagedInstances/testInstance/longTermRetentionDatabases/testDatabase3/longTermRetentionManagedInstanceBackups/43214321-4321-4321-4321-321321321321;131677960820000000", + "name": "43214321-4321-4321-4321-321321321321;131667960820000000", + "type": "Microsoft.Sql/locations/longTermRetentionManagedInstances/longTermRetentionDatabases/longTermRetentionManagedInstanceBackups", + "properties": { + "managedInstanceName": "testInstance", + "managedInstanceCreateTime": "2017-03-10T08:00:00Z", + "databaseName": "testDatabase3", + "databaseDeletionTime": null, + "backupTime": "2017-09-06T08:00:00Z", + "backupStorageRedundancy": "Geo" + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ResourceGroupBasedManagedInstanceLongTermRetentionBackupListByLocation.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ResourceGroupBasedManagedInstanceLongTermRetentionBackupListByLocation.json new file mode 100644 index 000000000000..0052d41f6960 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ResourceGroupBasedManagedInstanceLongTermRetentionBackupListByLocation.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testResourceGroup", + "locationName": "japaneast", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testResourceGroup/providers/Microsoft.Sql/locations/japaneast/longTermRetentionManagedInstances/testInstance1/longTermRetentionDatabases/testDatabase1/longTermRetentionManagedInstanceBackups/55555555-6666-7777-8888-999999999999;131637960820000000", + "name": "55555555-6666-7777-8888-999999999999;2017-08-23T08:00:00.000Z", + "type": "Microsoft.Sql/locations/longTermRetentionManagedInstances/longTermRetentionDatabases/longTermRetentionManagedInstanceBackups", + "properties": { + "managedInstanceName": "testInstance1", + "managedInstanceCreateTime": "2017-03-10T08:00:00Z", + "databaseName": "testDatabase1", + "databaseDeletionTime": null, + "backupTime": "2017-08-23T08:00:00Z", + "backupStorageRedundancy": "Geo" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testResourceGroup/providers/Microsoft.Sql/locations/japaneast/longTermRetentionManagedInstances/testInstance2/longTermRetentionDatabases/testDatabase2/longTermRetentionManagedInstanceBackups/12341234-1234-1234-1234-123123123123;131657960820000000", + "name": "12341234-1234-1234-1234-123123123123;2017-08-30T08:00:00.000Z", + "type": "Microsoft.Sql/locations/longTermRetentionManagedInstances/longTermRetentionDatabases/longTermRetentionManagedInstanceBackups", + "properties": { + "managedInstanceName": "testInstance2", + "managedInstanceCreateTime": "2017-04-10T08:00:00Z", + "databaseName": "testDatabase2", + "databaseDeletionTime": null, + "backupTime": "2017-08-30T08:00:00Z", + "backupStorageRedundancy": "Geo" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testResourceGroup/providers/Microsoft.Sql/locations/japaneast/longTermRetentionManagedInstances/testInstance3/longTermRetentionDatabases/testDatabase3/longTermRetentionManagedInstanceBackups/43214321-4321-4321-4321-321321321321;131677960820000000", + "name": "43214321-4321-4321-4321-321321321321;2017-09-06T08:00:00.000Z", + "type": "Microsoft.Sql/locations/longTermRetentionManagedInstances/longTermRetentionDatabases/longTermRetentionManagedInstanceBackups", + "properties": { + "managedInstanceName": "testInstance3", + "managedInstanceCreateTime": "2017-05-10T08:00:00Z", + "databaseName": "testDatabase3", + "databaseDeletionTime": null, + "backupTime": "2017-09-06T08:00:00Z", + "backupStorageRedundancy": "Geo" + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/RestorableDroppedManagedDatabaseListByManagedInstance.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/RestorableDroppedManagedDatabaseListByManagedInstance.json new file mode 100644 index 000000000000..e31440b7fc24 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/RestorableDroppedManagedDatabaseListByManagedInstance.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Test1", + "managedInstanceName": "managedInstance", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "databaseName": "testdb", + "creationDate": "2017-05-07T04:41:33.937Z", + "deletionDate": "2017-05-27T02:49:47.69Z" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/managedInstances/testsvr/restorableDroppedDatabases/testdb,131403269876900000", + "name": "testdb,131403269876900000", + "type": "Microsoft.Sql/managedInstances/restorableDroppedDatabases" + }, + { + "properties": { + "databaseName": "testdb2", + "creationDate": "2017-05-07T04:41:33.937Z", + "deletionDate": "2017-05-27T02:49:47.69Z" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/managedInstances/testsvr/restorableDroppedDatabases/testdb2,131403269876900000", + "name": "testdb2,131403269876900000", + "type": "Microsoft.Sql/managedInstances/restorableDroppedDatabases" + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ResumeDatabase.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ResumeDatabase.json new file mode 100644 index 000000000000..bb2f4eaa4b84 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ResumeDatabase.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdwdb", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "DataWarehouse" + }, + "kind": "v12.0,user,datawarehouse", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 10995116277760, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "creationDate": "2017-07-13T02:04:26.187Z", + "currentServiceObjectiveName": "D1", + "defaultSecondaryLocation": "North Europe", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdwdb", + "name": "testdwdb", + "type": "Microsoft.Sql/servers/databases" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SensitivityLabelsCurrentUpdate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SensitivityLabelsCurrentUpdate.json new file mode 100644 index 000000000000..f85847c4ebf1 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SensitivityLabelsCurrentUpdate.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "serverName": "myServer", + "databaseName": "myDatabase", + "api-version": "2021-02-01-preview", + "parameters": { + "operations": [ + { + "properties": { + "op": "set", + "schema": "dbo", + "table": "table1", + "column": "column1", + "sensitivityLabel": { + "properties": { + "labelName": "Highly Confidential", + "labelId": "3A477B16-9423-432B-AA97-6069B481CEC3", + "informationType": "Financial", + "informationTypeId": "1D3652D6-422C-4115-82F1-65DAEBC665C8", + "rank": "Low" + } + } + } + }, + { + "properties": { + "op": "set", + "schema": "dbo", + "table": "table2", + "column": "column2", + "sensitivityLabel": { + "properties": { + "informationType": "PhoneNumber", + "informationTypeId": "d22fa6e9-5ee4-3bde-4c2b-a409604c4646", + "labelId": "bf91e08c-f4f0-478a-b016-25164b2a65ff", + "labelName": "PII", + "rank": "Critical" + } + } + } + }, + { + "properties": { + "op": "remove", + "schema": "dbo", + "table": "Table1", + "column": "Column3" + } + } + ] + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SensitivityLabelsListByDatabaseWithSourceCurrent.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SensitivityLabelsListByDatabaseWithSourceCurrent.json new file mode 100644 index 000000000000..2b661dc364b7 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SensitivityLabelsListByDatabaseWithSourceCurrent.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "serverName": "myServer", + "databaseName": "myDatabase", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Sql/servers/myServer/databases/myDatabase/schemas/dbo/tables/myTable/columns/myColumn3/sensitivityLabels/current", + "name": "current", + "type": "Microsoft.Sql/servers/databases/schemas/tables/columns/sensitivityLabels", + "properties": { + "schemaName": "dbo", + "tableName": "myTable", + "columnName": "myColumn3", + "informationType": "Financial", + "informationTypeId": "d22fa6e9-5ee4-3bde-4c2b-a409604c4646", + "labelId": "05e6eaa1-075a-4fb4-a732-a92215a2444a", + "labelName": "Sensitive", + "rank": "Low" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Sql/servers/myServer/databases/myDatabase/schemas/dbo/tables/myTable/columns/myColumn4/sensitivityLabels/current", + "name": "current", + "type": "Microsoft.Sql/servers/databases/schemas/tables/columns/sensitivityLabels", + "properties": { + "schemaName": "dbo", + "tableName": "myTable", + "columnName": "myColumn4", + "informationType": "Email", + "informationTypeId": "d22fa6e9-5ee4-3bde-4c2b-a409604c4646", + "labelId": "bf91e08c-f4f0-478a-b016-25164b2a65ff", + "labelName": "PII", + "rank": "None" + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SensitivityLabelsListByDatabaseWithSourceRecommended.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SensitivityLabelsListByDatabaseWithSourceRecommended.json new file mode 100644 index 000000000000..37d5b7112199 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SensitivityLabelsListByDatabaseWithSourceRecommended.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "serverName": "myServer", + "databaseName": "myDatabase", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Sql/servers/myServer/databases/myDatabase/schemas/dbo/tables/myTable/columns/myColumn/sensitivityLabels/recommended", + "name": "recommended", + "type": "Microsoft.Sql/servers/databases/schemas/tables/columns/sensitivityLabels", + "properties": { + "schemaName": "dbo", + "tableName": "myTable", + "columnName": "myColumn", + "informationType": "Financial", + "informationTypeId": "d22fa6e9-5ee4-3bde-4c2b-a409604c4646", + "labelId": "05e6eaa1-075a-4fb4-a732-a92215a2444a", + "labelName": "Sensitive" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Sql/servers/myServer/databases/myDatabase/schemas/dbo/tables/myTable/columns/myColumn2/sensitivityLabels/recommended", + "name": "recommended", + "type": "Microsoft.Sql/servers/databases/schemas/tables/columns/sensitivityLabels", + "properties": { + "schemaName": "dbo", + "tableName": "myTable", + "columnName": "myColumn2", + "informationType": "Email", + "informationTypeId": "d22fa6e9-5ee4-3bde-4c2b-a409604c4646", + "labelId": "bf91e08c-f4f0-478a-b016-25164b2a65ff", + "labelName": "PII" + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SensitivityLabelsRecommendedUpdate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SensitivityLabelsRecommendedUpdate.json new file mode 100644 index 000000000000..97a6beccbf8c --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SensitivityLabelsRecommendedUpdate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "serverName": "myServer", + "databaseName": "myDatabase", + "api-version": "2021-02-01-preview", + "parameters": { + "operations": [ + { + "properties": { + "op": "enable", + "schema": "dbo", + "table": "table1", + "column": "column1" + } + }, + { + "properties": { + "op": "enable", + "schema": "dbo", + "table": "table2", + "column": "column2" + } + }, + { + "properties": { + "op": "disable", + "schema": "dbo", + "table": "table1", + "column": "column3" + } + } + ] + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerAdvisorGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerAdvisorGet.json new file mode 100644 index 000000000000..bde4e548f76e --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerAdvisorGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workloadinsight-demos", + "serverName": "misosisvr", + "advisorName": "CreateIndex", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workloadinsight-demos/providers/Microsoft.Sql/servers/misosisvr/advisors/CreateIndex", + "name": "CreateIndex", + "type": "Microsoft.Sql/servers/advisors", + "location": "East Asia", + "kind": "", + "properties": { + "advisorStatus": "GA", + "autoExecuteStatus": "Disabled", + "autoExecuteStatusInheritedFrom": "Default" + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerAdvisorList.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerAdvisorList.json new file mode 100644 index 000000000000..9fa25bd18ebd --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerAdvisorList.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workloadinsight-demos", + "serverName": "misosisvr", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workloadinsight-demos/providers/Microsoft.Sql/servers/misosisvr/advisors/CreateIndex", + "name": "CreateIndex", + "type": "Microsoft.Sql/servers/advisors", + "location": "East Asia", + "kind": "", + "properties": { + "advisorStatus": "GA", + "autoExecuteStatus": "Disabled", + "autoExecuteStatusInheritedFrom": "Default" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workloadinsight-demos/providers/Microsoft.Sql/servers/misosisvr/advisors/DropIndex", + "name": "DropIndex", + "type": "Microsoft.Sql/servers/advisors", + "location": "East Asia", + "kind": "", + "properties": { + "advisorStatus": "GA", + "autoExecuteStatus": "Disabled", + "autoExecuteStatusInheritedFrom": "Default" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workloadinsight-demos/providers/Microsoft.Sql/servers/misosisvr/advisors/DbParameterization", + "name": "DbParameterization", + "type": "Microsoft.Sql/servers/advisors", + "location": "East Asia", + "kind": "", + "properties": { + "advisorStatus": "GA", + "autoExecuteStatus": "Disabled", + "autoExecuteStatusInheritedFrom": "Default" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workloadinsight-demos/providers/Microsoft.Sql/servers/misosisvr/advisors/SchemaIssue", + "name": "SchemaIssue", + "type": "Microsoft.Sql/servers/advisors", + "location": "East Asia", + "kind": "", + "properties": { + "advisorStatus": "PublicPreview", + "autoExecuteStatus": "Disabled", + "autoExecuteStatusInheritedFrom": "Default" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workloadinsight-demos/providers/Microsoft.Sql/servers/misosisvr/advisors/ForceLastGoodPlan", + "name": "ForceLastGoodPlan", + "type": "Microsoft.Sql/servers/advisors", + "location": "East Asia", + "kind": "", + "properties": { + "advisorStatus": "PrivatePreview", + "autoExecuteStatus": "Disabled", + "autoExecuteStatusInheritedFrom": "Default" + } + } + ] + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerAdvisorUpdate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerAdvisorUpdate.json new file mode 100644 index 000000000000..3b75397099b5 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerAdvisorUpdate.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workloadinsight-demos", + "serverName": "misosisvr", + "advisorName": "CreateIndex", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "autoExecuteStatus": "Disabled" + } + } + }, + "responses": { + "200": { + "body": { + "kind": "", + "properties": { + "advisorStatus": "GA", + "autoExecuteStatus": "Disabled", + "autoExecuteStatusInheritedFrom": "Server" + }, + "location": "East Asia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workloadinsight-demos/providers/Microsoft.Sql/servers/misosisvr/advisors/CreateIndex", + "name": "CreateIndex", + "type": "Microsoft.Sql/servers/advisors" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerAuditingSettingsList.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerAuditingSettingsList.json new file mode 100644 index 000000000000..5a8d465cfbd3 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerAuditingSettingsList.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "blobauditingtest-4799", + "serverName": "blobauditingtest-6440", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-6852/providers/Microsoft.Sql/servers/blobauditingtest-2080/auditingSettings/default", + "name": "default", + "type": "Microsoft.Sql/servers/auditingSettings", + "properties": { + "state": "Disabled", + "storageEndpoint": "", + "retentionDays": 0, + "auditActionsAndGroups": [], + "storageAccountSubscriptionId": "00000000-0000-0000-0000-000000000000", + "isStorageSecondaryKeyInUse": false, + "isAzureMonitorTargetEnabled": false + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerAutomaticTuningGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerAutomaticTuningGet.json new file mode 100644 index 000000000000..3bc6673b7f34 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerAutomaticTuningGet.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "c3aa9078-0000-0000-0000-e36f151182d7", + "resourceGroupName": "default-sql-onebox", + "serverName": "testsvr11", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/c3aa9078-0000-0000-0000-e36f151182d7/resourceGroups/default-sql-onebox/providers/Microsoft.Sql/servers/testsvr11/automaticTuning/current", + "name": "current", + "type": "Microsoft.Sql/servers/automaticTuning", + "properties": { + "desiredState": "Auto", + "actualState": "Auto", + "options": { + "createIndex": { + "desiredState": "Default", + "actualState": "On", + "reasonCode": 2, + "reasonDesc": "AutoConfigured" + }, + "dropIndex": { + "desiredState": "Default", + "actualState": "Off", + "reasonCode": 2, + "reasonDesc": "AutoConfigured" + }, + "forceLastGoodPlan": { + "desiredState": "Default", + "actualState": "On", + "reasonCode": 2, + "reasonDesc": "AutoConfigured" + }, + "maintainIndex": { + "desiredState": "Default", + "actualState": "Off", + "reasonCode": 2, + "reasonDesc": "AutoConfigured" + } + } + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerAutomaticTuningUpdateMax.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerAutomaticTuningUpdateMax.json new file mode 100644 index 000000000000..2edf49bfa1d8 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerAutomaticTuningUpdateMax.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "c3aa9078-0000-0000-0000-e36f151182d7", + "resourceGroupName": "default-sql-onebox", + "serverName": "testsvr11", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "desiredState": "Auto", + "options": { + "createIndex": { + "desiredState": "Off" + }, + "dropIndex": { + "desiredState": "On" + }, + "forceLastGoodPlan": { + "desiredState": "Default" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/c3aa9078-0000-0000-0000-e36f151182d7/resourceGroups/default-sql-onebox/providers/Microsoft.Sql/servers/testsvr11/automaticTuning/current", + "name": "current", + "type": "Microsoft.Sql/servers/automaticTuning", + "properties": { + "desiredState": "Auto", + "actualState": "Auto", + "options": { + "createIndex": { + "desiredState": "Off", + "actualState": "Off" + }, + "dropIndex": { + "desiredState": "On", + "actualState": "On" + }, + "forceLastGoodPlan": { + "desiredState": "Default", + "actualState": "On", + "reasonCode": 2, + "reasonDesc": "AutoConfigured" + }, + "maintainIndex": { + "desiredState": "Default", + "actualState": "Off", + "reasonCode": 2, + "reasonDesc": "AutoConfigured" + } + } + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerAutomaticTuningUpdateMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerAutomaticTuningUpdateMin.json new file mode 100644 index 000000000000..24cb24211ede --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerAutomaticTuningUpdateMin.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "subscriptionId": "c3aa9078-0000-0000-0000-e36f151182d7", + "resourceGroupName": "default-sql-onebox", + "serverName": "testsvr11", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "desiredState": "Auto" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/c3aa9078-0000-0000-0000-e36f151182d7/resourceGroups/default-sql-onebox/providers/Microsoft.Sql/servers/testsvr11/automaticTuning/current", + "name": "current", + "type": "Microsoft.Sql/servers/automaticTuning", + "properties": { + "desiredState": "Auto", + "actualState": "Auto", + "options": { + "createIndex": { + "desiredState": "Default", + "actualState": "On", + "reasonCode": 2, + "reasonDesc": "AutoConfigured" + }, + "dropIndex": { + "desiredState": "Default", + "actualState": "Off", + "reasonCode": 2, + "reasonDesc": "AutoConfigured" + }, + "forceLastGoodPlan": { + "desiredState": "Default", + "actualState": "On", + "reasonCode": 2, + "reasonDesc": "AutoConfigured" + }, + "maintainIndex": { + "desiredState": "Default", + "actualState": "Off", + "reasonCode": 2, + "reasonDesc": "AutoConfigured" + } + } + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerBlobAuditingCreateMax.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerBlobAuditingCreateMax.json new file mode 100644 index 000000000000..cd7676a9a4da --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerBlobAuditingCreateMax.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "blobauditingtest-4799", + "serverName": "blobauditingtest-6440", + "blobAuditingPolicyName": "default", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "state": "Enabled", + "storageAccountAccessKey": "sdlfkjabc+sdlfkjsdlkfsjdfLDKFTERLKFDFKLjsdfksjdflsdkfD2342309432849328476458/3RSD==", + "storageEndpoint": "https://mystorage.blob.core.windows.net", + "retentionDays": 6, + "storageAccountSubscriptionId": "00000000-1234-0000-5678-000000000000", + "isStorageSecondaryKeyInUse": false, + "queueDelayMs": 4000, + "auditActionsAndGroups": [ + "SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP", + "FAILED_DATABASE_AUTHENTICATION_GROUP", + "BATCH_COMPLETED_GROUP" + ], + "isAzureMonitorTargetEnabled": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Sql/servers/blobauditingtest-6440/auditingSettings/default", + "name": "default", + "type": "Microsoft.Sql/servers/auditingSettings", + "properties": { + "state": "Enabled", + "storageEndpoint": "https://mystorage.blob.core.windows.net", + "retentionDays": 6, + "storageAccountSubscriptionId": "00000000-1234-0000-5678-000000000000", + "isStorageSecondaryKeyInUse": false, + "queueDelayMs": 4000, + "auditActionsAndGroups": [ + "SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP", + "FAILED_DATABASE_AUTHENTICATION_GROUP", + "BATCH_COMPLETED_GROUP" + ], + "isAzureMonitorTargetEnabled": true + } + } + }, + "202": { + "startTime": "2017-11-22T09:34:54.72Z", + "operation": "UpsertServerEngineAuditingPolicy" + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerBlobAuditingCreateMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerBlobAuditingCreateMin.json new file mode 100644 index 000000000000..690d18ea6e06 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerBlobAuditingCreateMin.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "blobauditingtest-4799", + "serverName": "blobauditingtest-6440", + "blobAuditingPolicyName": "default", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "state": "Enabled", + "storageAccountAccessKey": "sdlfkjabc+sdlfkjsdlkfsjdfLDKFTERLKFDFKLjsdfksjdflsdkfD2342309432849328476458/3RSD==", + "storageEndpoint": "https://mystorage.blob.core.windows.net" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Sql/servers/blobauditingtest-6440/auditingSettings/default", + "name": "default", + "type": "Microsoft.Sql/servers/auditingSettings", + "properties": { + "state": "Enabled", + "storageEndpoint": "https://mystorage.blob.core.windows.net", + "retentionDays": 6, + "storageAccountSubscriptionId": "00000000-1234-0000-5678-000000000000", + "isStorageSecondaryKeyInUse": false, + "auditActionsAndGroups": [ + "SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP", + "FAILED_DATABASE_AUTHENTICATION_GROUP", + "BATCH_COMPLETED_GROUP" + ] + } + } + }, + "202": { + "startTime": "2017-11-22T09:34:54.72Z", + "operation": "UpsertServerEngineAuditingPolicy" + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerBlobAuditingGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerBlobAuditingGet.json new file mode 100644 index 000000000000..60341dd6603c --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerBlobAuditingGet.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "blobauditingtest-4799", + "serverName": "blobauditingtest-6440", + "blobAuditingPolicyName": "default", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-6852/providers/Microsoft.Sql/servers/blobauditingtest-2080/auditingSettings/default", + "name": "default", + "type": "Microsoft.Sql/servers/auditingSettings", + "properties": { + "state": "Disabled", + "storageEndpoint": "", + "retentionDays": 0, + "auditActionsAndGroups": [], + "storageAccountSubscriptionId": "00000000-0000-0000-0000-000000000000", + "isStorageSecondaryKeyInUse": false, + "isAzureMonitorTargetEnabled": false + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerCreate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerCreate.json new file mode 100644 index 000000000000..003d4de4e406 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerCreate.json @@ -0,0 +1,107 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "serverName": "sqlcrudtest-4645", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "administratorLogin": "dummylogin", + "administratorLoginPassword": "PLACEHOLDER", + "administrators": { + "principalType": "User", + "login": "bob@contoso.com", + "sid": "00000011-1111-2222-2222-123456789111", + "tenantId": "00000011-1111-2222-2222-123456789111", + "azureADOnlyAuthentication": true + }, + "publicNetworkAccess": "Enabled", + "restrictOutboundNetworkAccess": "Enabled" + }, + "location": "Japan East" + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645", + "name": "sqlcrudtest-4645", + "type": "Microsoft.Sql/servers", + "location": "japaneast", + "kind": "v12.0", + "properties": { + "fullyQualifiedDomainName": "sqlcrudtest-4645.database.windows.net", + "administratorLogin": "dummylogin", + "version": "12.0", + "state": "Ready", + "publicNetworkAccess": "Enabled", + "restrictOutboundNetworkAccess": "Enabled", + "administrators": { + "principalType": "User", + "login": "bob@contoso.com", + "sid": "00000011-1111-2222-2222-123456789111", + "tenantId": "00000011-1111-2222-2222-123456789111", + "azureADOnlyAuthentication": true + }, + "privateEndpointConnections": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/privateEndpointConnections/private-endpoint-name-00000000-1111-2222-3333-444444444444", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645", + "name": "sqlcrudtest-4645", + "type": "Microsoft.Sql/servers", + "location": "japaneast", + "kind": "v12.0", + "properties": { + "fullyQualifiedDomainName": "sqlcrudtest-4645.database.windows.net", + "administratorLogin": "dummylogin", + "publicNetworkAccess": "Enabled", + "restrictOutboundNetworkAccess": "Enabled", + "version": "12.0", + "state": "Ready", + "administrators": { + "principalType": "User", + "login": "bob@contoso.com", + "sid": "00000011-1111-2222-2222-123456789111", + "tenantId": "00000011-1111-2222-2222-123456789111", + "azureADOnlyAuthentication": true + }, + "privateEndpointConnections": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/privateEndpointConnections/private-endpoint-name-00000000-1111-2222-3333-444444444444", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerDelete.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerDelete.json new file mode 100644 index 000000000000..997eb974ccdf --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "serverName": "sqlcrudtest-6661", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerDevOpsAuditCreateMax.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerDevOpsAuditCreateMax.json new file mode 100644 index 000000000000..ffdbab787c11 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerDevOpsAuditCreateMax.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "devAuditTestRG", + "serverName": "devOpsAuditTestSvr", + "devOpsAuditingSettingsName": "default", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "state": "Enabled", + "storageAccountAccessKey": "sdlfkjabc+sdlfkjsdlkfsjdfLDKFTERLKFDFKLjsdfksjdflsdkfD2342309432849328476458/3RSD==", + "storageEndpoint": "https://mystorage.blob.core.windows.net", + "storageAccountSubscriptionId": "00000000-1234-0000-5678-000000000000", + "isAzureMonitorTargetEnabled": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/devAuditTestRG/providers/Microsoft.Sql/servers/devOpsAuditTestSvr/devOpsAuditingSettings/default", + "name": "default", + "type": "Microsoft.Sql/servers/devOpsAuditingSettings", + "properties": { + "state": "Enabled", + "storageEndpoint": "https://mystorage.blob.core.windows.net", + "storageAccountSubscriptionId": "00000000-1234-0000-5678-000000000000", + "isAzureMonitorTargetEnabled": true + } + } + }, + "202": { + "startTime": "2020-09-22T09:34:54.72Z", + "operation": "UpsertServerDevOpsAuditingSettings" + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerDevOpsAuditCreateMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerDevOpsAuditCreateMin.json new file mode 100644 index 000000000000..5e02c3f3ed15 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerDevOpsAuditCreateMin.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "devAuditTestRG", + "serverName": "devOpsAuditTestSvr", + "devOpsAuditingSettingsName": "default", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "state": "Enabled", + "storageAccountAccessKey": "sdlfkjabc+sdlfkjsdlkfsjdfLDKFTERLKFDFKLjsdfksjdflsdkfD2342309432849328476458/3RSD==", + "storageEndpoint": "https://mystorage.blob.core.windows.net" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/devAuditTestRG/providers/Microsoft.Sql/servers/devOpsAuditTestSvr/devOpsAuditingSettings/default", + "name": "default", + "type": "Microsoft.Sql/servers/devOpsAuditingSettings", + "properties": { + "state": "Enabled", + "storageEndpoint": "https://mystorage.blob.core.windows.net", + "storageAccountSubscriptionId": "00000000-1234-0000-5678-000000000000" + } + } + }, + "202": { + "startTime": "2020-09-09T09:34:54.72Z", + "operation": "UpsertServerDevOpsAuditingSettings" + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerDevOpsAuditGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerDevOpsAuditGet.json new file mode 100644 index 000000000000..596c89eb4b7b --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerDevOpsAuditGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "devAuditTestRG", + "serverName": "devOpsAuditTestSvr", + "devOpsAuditingSettingsName": "default", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/devAuditTestRG/providers/Microsoft.Sql/servers/devOpsAuditTestSvr/devOpsAuditingSettings/default", + "name": "default", + "type": "Microsoft.Sql/servers/devOpsAuditingSettings", + "properties": { + "state": "Disabled", + "storageEndpoint": "", + "storageAccountSubscriptionId": "00000000-0000-0000-0000-000000000000", + "isAzureMonitorTargetEnabled": false + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerDevOpsAuditSettingsList.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerDevOpsAuditSettingsList.json new file mode 100644 index 000000000000..5c984908785d --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerDevOpsAuditSettingsList.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "devAuditTestRG", + "serverName": "devOpsAuditTestSvr", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/devAuditTestRG/providers/Microsoft.Sql/servers/devOpsAuditTestSvr/devOpsAuditingSettings/default", + "name": "default", + "type": "Microsoft.Sql/servers/devOpsAuditingSettings", + "properties": { + "state": "Disabled", + "storageEndpoint": "", + "storageAccountSubscriptionId": "00000000-0000-0000-0000-000000000000", + "isAzureMonitorTargetEnabled": false + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerDnsAliasAcquire.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerDnsAliasAcquire.json new file mode 100644 index 000000000000..cdcbb74b1a27 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerDnsAliasAcquire.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "dns-alias-new-server", + "dnsAliasName": "dns-alias-name-1", + "api-version": "2021-02-01-preview", + "parameters": { + "oldServerDnsAliasId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/dns-alias-old-server/dnsAliases/dns-alias-name-1" + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/dns-alias-new-server/dnsAliases/dns-alias-name-1", + "name": "server-dns-alias-name-1", + "type": "Microsoft.Sql/servers/dnsAliases", + "properties": { + "azureDnsRecord": "dns-alias-name-1.database.windows.net" + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerDnsAliasCreateOrUpdate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerDnsAliasCreateOrUpdate.json new file mode 100644 index 000000000000..3179464f0027 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerDnsAliasCreateOrUpdate.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "dns-alias-server", + "dnsAliasName": "dns-alias-name-1", + "api-version": "2021-02-01-preview", + "parameters": {} + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/dns-alias-server/dnsAliases/dns-alias-name-1", + "name": "dns-alias-name-1", + "type": "Microsoft.Sql/servers/dnsAliases", + "properties": { + "azureDnsRecord": "dns-alias-name-1.database.windows.net" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/dns-alias-server/dnsAliases/dns-alias-name-1", + "name": "dns-alias-name-1", + "type": "Microsoft.Sql/servers/dnsAliases", + "properties": { + "azureDnsRecord": "dns-alias-name-1.database.windows.net" + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerDnsAliasDelete.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerDnsAliasDelete.json new file mode 100644 index 000000000000..595073e14f86 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerDnsAliasDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "dns-alias-server", + "dnsAliasName": "dns-alias-name-1", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerDnsAliasGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerDnsAliasGet.json new file mode 100644 index 000000000000..e544a1cb4ba3 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerDnsAliasGet.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "dns-alias-server", + "dnsAliasName": "dns-alias-name-1", + "api-version": "2021-02-01-preview", + "parameters": {} + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/dns-alias-server/dnsAliases/dns-alias-name-1", + "name": "dns-alias-name-1", + "type": "Microsoft.Sql/servers/dnsAliases", + "properties": { + "azureDnsRecord": "dns-alias-name-1.database.windows.net" + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerDnsAliasList.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerDnsAliasList.json new file mode 100644 index 000000000000..dbf0c4e87a05 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerDnsAliasList.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "dns-alias-server", + "api-version": "2021-02-01-preview", + "parameters": {} + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/dns-alias-server/dnsAliases/dns-alias-1", + "name": "server-dns-alias-1", + "type": "Microsoft.Sql/servers/dnsAliases", + "properties": { + "azureDnsRecord": "dns-alias-1.database.windows.net" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/dns-alias-server/dnsAliases/dns-alias-2", + "name": "server-dns-alias-2", + "type": "Microsoft.Sql/servers/dnsAliases", + "properties": { + "azureDnsRecord": "dns-alias-2.database.windows.net" + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerExtendedAuditingSettingsList.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerExtendedAuditingSettingsList.json new file mode 100644 index 000000000000..a5cb467a6f9f --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerExtendedAuditingSettingsList.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "blobauditingtest-4799", + "serverName": "blobauditingtest-6440", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-6852/providers/Microsoft.Sql/servers/blobauditingtest-2080/extendedAuditingSettings/default", + "name": "default", + "type": "Microsoft.Sql/servers/extendedAuditingSettings", + "properties": { + "state": "Disabled", + "storageEndpoint": "", + "retentionDays": 0, + "auditActionsAndGroups": [], + "storageAccountSubscriptionId": "00000000-0000-0000-0000-000000000000", + "isStorageSecondaryKeyInUse": false, + "predicateExpression": "object_name = 'SensitiveData'", + "isAzureMonitorTargetEnabled": false + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerGet.json new file mode 100644 index 000000000000..8fb715e570bc --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerGet.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "serverName": "sqlcrudtest-4645", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "tags": { + "tagKey1": "TagValue1" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645", + "name": "sqlcrudtest-4645", + "type": "Microsoft.Sql/servers", + "location": "japaneast", + "kind": "v12.0", + "properties": { + "fullyQualifiedDomainName": "sqlcrudtest-4645.database.windows.net", + "administratorLogin": "dummylogin", + "version": "12.0", + "state": "Ready", + "workspaceFeature": "Connected", + "publicNetworkAccess": "Enabled", + "restrictOutboundNetworkAccess": "Enabled", + "privateEndpointConnections": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/privateEndpointConnections/private-endpoint-name-00000000-1111-2222-3333-444444444444", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerGetWithExpandEqualsAdministrators.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerGetWithExpandEqualsAdministrators.json new file mode 100644 index 000000000000..d610ccd0d65d --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerGetWithExpandEqualsAdministrators.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "serverName": "sqlcrudtest-4645", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "tags": { + "tagKey1": "TagValue1" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645", + "name": "sqlcrudtest-4645", + "type": "Microsoft.Sql/servers", + "location": "japaneast", + "kind": "v12.0", + "properties": { + "fullyQualifiedDomainName": "sqlcrudtest-4645.database.windows.net", + "administratorLogin": "dummylogin", + "version": "12.0", + "state": "Ready", + "workspaceFeature": "Connected", + "publicNetworkAccess": "Enabled", + "restrictOutboundNetworkAccess": "Enabled", + "administrators": { + "principalType": "User", + "login": "bob@contoso.com", + "sid": "00000011-1111-2222-2222-123456789111", + "tenantId": "00000011-1111-2222-2222-123456789111", + "azureADOnlyAuthentication": true + }, + "privateEndpointConnections": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/privateEndpointConnections/private-endpoint-name-00000000-1111-2222-3333-444444444444", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerKeyCreateOrUpdate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerKeyCreateOrUpdate.json new file mode 100644 index 000000000000..9739c217feae --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerKeyCreateOrUpdate.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "serverName": "sqlcrudtest-4645", + "keyName": "someVault_someKey_01234567890123456789012345678901", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "serverKeyType": "AzureKeyVault", + "uri": "https://someVault.vault.azure.net/keys/someKey/01234567890123456789012345678901" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/keys/someVault_someKey_01234567890123456789012345678901", + "name": "sqlcrudtest-4645", + "type": "Microsoft.Sql/servers/keys", + "location": "Japan East", + "kind": "azurekeyvault", + "properties": { + "thumbprint": "00112233445566778899AABBCCDDEEFFAABBCCDD", + "creationDate": "2020-11-15T00:00:00Z", + "autoRotationEnabled": false + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/keys/someVault_someKey_01234567890123456789012345678901", + "name": "sqlcrudtest-4645", + "type": "Microsoft.Sql/servers/keys", + "location": "Japan East", + "kind": "azurekeyvault", + "properties": { + "thumbprint": "00112233445566778899AABBCCDDEEFFAABBCCDD", + "creationDate": "2020-11-15T00:00:00Z", + "autoRotationEnabled": false + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerKeyDelete.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerKeyDelete.json new file mode 100644 index 000000000000..d3bc95a3cb26 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerKeyDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "serverName": "sqlcrudtest-4645", + "keyName": "someVault_someKey_01234567890123456789012345678901", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerKeyGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerKeyGet.json new file mode 100644 index 000000000000..ec2afabb40ba --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerKeyGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "serverName": "sqlcrudtest-4645", + "keyName": "someVault_someKey_01234567890123456789012345678901", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/keys/someVault_someKey_01234567890123456789012345678901", + "name": "sqlcrudtest-4645", + "type": "Microsoft.Sql/servers/keys", + "location": "Japan East", + "kind": "azurekeyvault", + "properties": { + "thumbprint": "00112233445566778899AABBCCDDEEFFAABBCCDD", + "creationDate": "2020-11-15T00:00:00Z", + "autoRotationEnabled": false + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerKeyList.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerKeyList.json new file mode 100644 index 000000000000..c6ad45c503f8 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerKeyList.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "serverName": "sqlcrudtest-4645", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/keys/someVault_someKey_01234567890123456789012345678901", + "name": "someVault_someKey_01234567890123456789012345678901", + "type": "Microsoft.Sql/servers/keys", + "location": "Japan East", + "kind": "azurekeyvault", + "properties": { + "thumbprint": "00112233445566778899AABBCCDDEEFFAABBCCDD", + "creationDate": "2020-11-15T00:00:00Z", + "autoRotationEnabled": false + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/keys/myVault_myKey_11111111111111111111111111111111", + "name": "myVault_myKey_11111111111111111111111111111111", + "type": "Microsoft.Sql/servers/keys", + "location": "Japan East", + "kind": "azurekeyvault", + "properties": { + "thumbprint": "AAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBB", + "creationDate": "2020-11-15T00:00:00Z", + "autoRotationEnabled": false + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/keys/ServiceManaged", + "name": "ServiceManaged", + "type": "Microsoft.Sql/servers/keys", + "location": "Japan East", + "kind": "servicemanaged", + "properties": {} + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerList.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerList.json new file mode 100644 index 000000000000..8801c39e5de4 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerList.json @@ -0,0 +1,78 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645", + "name": "sqlcrudtest-4645", + "type": "Microsoft.Sql/servers", + "location": "japaneast", + "kind": "v12.0", + "properties": { + "fullyQualifiedDomainName": "sqlcrudtest-4645.database.windows.net", + "administratorLogin": "dummylogin", + "version": "12.0", + "state": "Ready", + "workspaceFeature": "Connected", + "publicNetworkAccess": "Enabled", + "restrictOutboundNetworkAccess": "Enabled", + "privateEndpointConnections": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/privateEndpointConnections/private-endpoint-name-00000000-1111-2222-3333-444444444444", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-6661", + "name": "sqlcrudtest-6661", + "type": "Microsoft.Sql/servers", + "location": "japaneast", + "kind": "v12.0", + "properties": { + "fullyQualifiedDomainName": "sqlcrudtest-6661.database.windows.net", + "administratorLogin": "dummylogin", + "version": "12.0", + "state": "Ready", + "workspaceFeature": "Connected", + "publicNetworkAccess": "Enabled", + "restrictOutboundNetworkAccess": "Enabled", + "privateEndpointConnections": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/privateEndpointConnections/private-endpoint-name-00000000-1111-2222-3333-444444444444", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerListByResourceGroup.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerListByResourceGroup.json new file mode 100644 index 000000000000..e7a97fe66eb2 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerListByResourceGroup.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645", + "name": "sqlcrudtest-4645", + "type": "Microsoft.Sql/servers", + "location": "japaneast", + "kind": "v12.0", + "properties": { + "fullyQualifiedDomainName": "sqlcrudtest-4645.database.windows.net", + "administratorLogin": "dummylogin", + "version": "12.0", + "state": "Ready", + "workspaceFeature": "Connected", + "publicNetworkAccess": "Enabled", + "restrictOutboundNetworkAccess": "Enabled", + "privateEndpointConnections": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/privateEndpointConnections/private-endpoint-name-00000000-1111-2222-3333-444444444444", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-6661", + "name": "sqlcrudtest-6661", + "type": "Microsoft.Sql/servers", + "location": "japaneast", + "kind": "v12.0", + "properties": { + "fullyQualifiedDomainName": "sqlcrudtest-6661.database.windows.net", + "administratorLogin": "dummylogin", + "version": "12.0", + "state": "Ready", + "workspaceFeature": "Connected", + "publicNetworkAccess": "Enabled", + "restrictOutboundNetworkAccess": "Enabled", + "privateEndpointConnections": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/privateEndpointConnections/private-endpoint-name-00000000-1111-2222-3333-444444444444", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerListByResourceGroupWithExpandEqualsAdministrators.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerListByResourceGroupWithExpandEqualsAdministrators.json new file mode 100644 index 000000000000..c22ad234ce12 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerListByResourceGroupWithExpandEqualsAdministrators.json @@ -0,0 +1,93 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645", + "name": "sqlcrudtest-4645", + "type": "Microsoft.Sql/servers", + "location": "japaneast", + "kind": "v12.0", + "properties": { + "fullyQualifiedDomainName": "sqlcrudtest-4645.database.windows.net", + "administratorLogin": "dummylogin", + "version": "12.0", + "state": "Ready", + "workspaceFeature": "Connected", + "publicNetworkAccess": "Enabled", + "restrictOutboundNetworkAccess": "Enabled", + "administrators": { + "principalType": "User", + "login": "bob@contoso.com", + "sid": "00000011-1111-2222-2222-123456789111", + "tenantId": "00000011-1111-2222-2222-123456789111", + "azureADOnlyAuthentication": true + }, + "privateEndpointConnections": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/privateEndpointConnections/private-endpoint-name-00000000-1111-2222-3333-444444444444", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-6661", + "name": "sqlcrudtest-6661", + "type": "Microsoft.Sql/servers", + "location": "japaneast", + "kind": "v12.0", + "properties": { + "fullyQualifiedDomainName": "sqlcrudtest-6661.database.windows.net", + "administratorLogin": "dummylogin", + "version": "12.0", + "state": "Ready", + "workspaceFeature": "Connected", + "publicNetworkAccess": "Enabled", + "restrictOutboundNetworkAccess": "Enabled", + "administrators": { + "principalType": "User", + "login": "bob@contoso.com", + "sid": "00000011-1111-2222-2222-123456789111", + "tenantId": "00000011-1111-2222-2222-123456789111", + "azureADOnlyAuthentication": true + }, + "privateEndpointConnections": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/privateEndpointConnections/private-endpoint-name-00000000-1111-2222-3333-444444444444", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerListWithExpandEqualsAdministrators.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerListWithExpandEqualsAdministrators.json new file mode 100644 index 000000000000..c4321b35767d --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerListWithExpandEqualsAdministrators.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645", + "name": "sqlcrudtest-4645", + "type": "Microsoft.Sql/servers", + "location": "japaneast", + "kind": "v12.0", + "properties": { + "fullyQualifiedDomainName": "sqlcrudtest-4645.database.windows.net", + "administratorLogin": "dummylogin", + "version": "12.0", + "state": "Ready", + "workspaceFeature": "Connected", + "publicNetworkAccess": "Enabled", + "restrictOutboundNetworkAccess": "Enabled", + "administrators": { + "principalType": "User", + "login": "bob@contoso.com", + "sid": "00000011-1111-2222-2222-123456789111", + "tenantId": "00000011-1111-2222-2222-123456789111", + "azureADOnlyAuthentication": true + }, + "privateEndpointConnections": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/privateEndpointConnections/private-endpoint-name-00000000-1111-2222-3333-444444444444", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-6661", + "name": "sqlcrudtest-6661", + "type": "Microsoft.Sql/servers", + "location": "japaneast", + "kind": "v12.0", + "properties": { + "fullyQualifiedDomainName": "sqlcrudtest-6661.database.windows.net", + "administratorLogin": "dummylogin", + "version": "12.0", + "state": "Ready", + "workspaceFeature": "Connected", + "publicNetworkAccess": "Enabled", + "restrictOutboundNetworkAccess": "Enabled", + "administrators": { + "principalType": "User", + "login": "bob@contoso.com", + "sid": "00000011-1111-2222-2222-123456789111", + "tenantId": "00000011-1111-2222-2222-123456789111", + "azureADOnlyAuthentication": true + }, + "privateEndpointConnections": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/privateEndpointConnections/private-endpoint-name-00000000-1111-2222-3333-444444444444", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerRecommendedActionListExpand.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerRecommendedActionListExpand.json new file mode 100644 index 000000000000..be623b1bcba6 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerRecommendedActionListExpand.json @@ -0,0 +1,626 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workloadinsight-demos", + "serverName": "misosisvr", + "api-version": "2021-02-01-preview", + "$expand": "recommendedActions" + }, + "responses": { + "200": { + "body": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workloadinsight-demos/providers/Microsoft.Sql/servers/misosisvr/advisors/CreateIndex", + "name": "CreateIndex", + "type": "Microsoft.Sql/servers/advisors", + "location": "East Asia", + "kind": "", + "properties": { + "advisorStatus": "GA", + "autoExecuteStatus": "Disabled", + "autoExecuteStatusInheritedFrom": "Server", + "recommendedActions": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workloadinsight-demos/providers/Microsoft.Sql/servers/misosisvr/advisors/CreateIndex/recommendedActions/IR_[CRM]_[DataPoints]_4821CD2F9510D98184BB", + "name": "IR_[CRM]_[DataPoints]_4821CD2F9510D98184BB", + "type": "Microsoft.Sql/servers/advisors/recommendedActions", + "location": "East Asia", + "kind": "", + "properties": { + "recommendationReason": "", + "validSince": "2017-03-01T14:38:04Z", + "lastRefresh": "2017-03-01T14:38:04Z", + "state": { + "currentValue": "Active", + "lastModified": "2017-06-20T15:15:40Z" + }, + "isExecutableAction": true, + "isRevertableAction": true, + "isArchivedAction": false, + "score": 1, + "implementationDetails": { + "method": "TSql", + "script": "CREATE NONCLUSTERED INDEX [nci_wi_DataPoints_B892614093BAC56295EF6018BD4CB51B] ON [CRM].[DataPoints] ([Name],[Money],[Power]) INCLUDE ([Hour], [System], [LastChanged]) WITH (ONLINE = ON)" + }, + "errorDetails": {}, + "estimatedImpact": [ + { + "dimensionName": "ActionDuration", + "unit": "Seconds", + "absoluteValue": 1440.0 + }, + { + "dimensionName": "SpaceChange", + "unit": "Megabytes", + "absoluteValue": 209.3125 + } + ], + "observedImpact": [], + "timeSeries": [], + "details": { + "indexName": "nci_wi_DataPoints_B892614093BAC56295EF6018BD4CB51B", + "indexType": "NONCLUSTERED", + "schema": "[CRM]", + "table": "[DataPoints]", + "indexColumns": "[Name],[Money],[Power]", + "includedColumns": "[Hour], [System], [LastChanged]", + "databaseName": "IndexAdvisor_test_3" + } + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workloadinsight-demos/providers/Microsoft.Sql/servers/misosisvr/advisors/CreateIndex/recommendedActions/IR_[dbo]_[Employees]_560E15A98D14CA09BDFB", + "name": "IR_[dbo]_[Employees]_560E15A98D14CA09BDFB", + "type": "Microsoft.Sql/servers/advisors/recommendedActions", + "location": "East Asia", + "kind": "", + "properties": { + "recommendationReason": "", + "validSince": "2017-03-01T14:38:05Z", + "lastRefresh": "2017-03-01T14:38:05Z", + "state": { + "currentValue": "Active", + "lastModified": "2017-03-01T14:38:05Z" + }, + "isExecutableAction": true, + "isRevertableAction": true, + "isArchivedAction": false, + "score": 3, + "implementationDetails": { + "method": "TSql", + "script": "CREATE NONCLUSTERED INDEX [nci_wi_Employees_8C18C2AF4267DC77793040782641CCDE] ON [dbo].[Employees] ([City], [State]) INCLUDE ([Postal]) WITH (ONLINE = ON)" + }, + "errorDetails": {}, + "estimatedImpact": [ + { + "dimensionName": "ActionDuration", + "unit": "Seconds", + "absoluteValue": 17.0 + }, + { + "dimensionName": "SpaceChange", + "unit": "Megabytes", + "absoluteValue": 128.0 + } + ], + "observedImpact": [], + "timeSeries": [], + "details": { + "indexName": "nci_wi_Employees_8C18C2AF4267DC77793040782641CCDE", + "indexType": "NONCLUSTERED", + "schema": "[dbo]", + "table": "[Employees]", + "indexColumns": "[City], [State]", + "includedColumns": "[Postal]", + "databaseName": "IndexAdvisor_test_3" + } + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workloadinsight-demos/providers/Microsoft.Sql/servers/misosisvr/advisors/CreateIndex/recommendedActions/IR_[dbo]_[DataPoints]_F5D2F347AA22DB46E4CC", + "name": "IR_[dbo]_[DataPoints]_F5D2F347AA22DB46E4CC", + "type": "Microsoft.Sql/servers/advisors/recommendedActions", + "location": "East Asia", + "kind": "", + "properties": { + "recommendationReason": "", + "validSince": "2017-03-01T14:38:05Z", + "lastRefresh": "2017-03-01T14:38:05Z", + "state": { + "currentValue": "Success", + "actionInitiatedBy": "User", + "lastModified": "2017-03-01T14:38:05Z" + }, + "isExecutableAction": true, + "isRevertableAction": true, + "isArchivedAction": false, + "executeActionStartTime": "2017-03-01T14:38:05Z", + "executeActionDuration": "PT1M", + "executeActionInitiatedBy": "User", + "executeActionInitiatedTime": "2017-03-01T14:38:05Z", + "score": 3, + "implementationDetails": { + "method": "TSql", + "script": "DROP INDEX [nci_wi_DataPoints_609E4B7D6A3813990ED44B28B340C8FC] ON [dbo].[DataPoints]" + }, + "errorDetails": {}, + "estimatedImpact": [ + { + "dimensionName": "ActionDuration", + "unit": "Seconds", + "absoluteValue": 5040.0 + }, + { + "dimensionName": "SpaceChange", + "unit": "Megabytes", + "absoluteValue": 120.0 + } + ], + "observedImpact": [ + { + "dimensionName": "AffectedQueriesCpuUtilization", + "unit": "CpuCores", + "changeValueAbsolute": -12.7, + "changeValueRelative": -0.9 + }, + { + "dimensionName": "CpuUtilization", + "unit": "CpuCores", + "changeValueAbsolute": -12.7, + "changeValueRelative": -0.3175 + }, + { + "dimensionName": "QueriesWithImprovedPerformance", + "unit": "Count", + "absoluteValue": 12.0 + }, + { + "dimensionName": "QueriesWithRegressedPerformance", + "unit": "Count", + "absoluteValue": 1.0 + }, + { + "dimensionName": "SpaceChange", + "unit": "Megabytes", + "absoluteValue": 130.742187 + }, + { + "dimensionName": "VerificationProgress", + "unit": "Percent", + "absoluteValue": 0.0 + } + ], + "timeSeries": [], + "details": { + "indexName": "nci_wi_DataPoints_609E4B7D6A3813990ED44B28B340C8FC", + "indexType": "NONCLUSTERED", + "schema": "[dbo]", + "table": "[DataPoints]", + "indexColumns": "[Name],[Money]", + "includedColumns": "[Power],[Pineapple]", + "indexActionStartTime": "2017-03-01T14:38:05.337", + "indexActionDuration": "00:01:00", + "databaseName": "IndexAdvisor_test_3" + } + } + } + ] + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workloadinsight-demos/providers/Microsoft.Sql/servers/misosisvr/advisors/DropIndex", + "name": "DropIndex", + "type": "Microsoft.Sql/servers/advisors", + "location": "East Asia", + "kind": "", + "properties": { + "advisorStatus": "GA", + "autoExecuteStatus": "Disabled", + "autoExecuteStatusInheritedFrom": "Default", + "recommendedActions": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workloadinsight-demos/providers/Microsoft.Sql/servers/misosisvr/advisors/DropIndex/recommendedActions/IR_[CRM]_[DataPoints1]_29AEA82685D24704DE1A", + "name": "IR_[CRM]_[DataPoints1]_29AEA82685D24704DE1A", + "type": "Microsoft.Sql/servers/advisors/recommendedActions", + "location": "East Asia", + "kind": "", + "properties": { + "recommendationReason": "Duplicate", + "validSince": "2017-03-01T14:38:05Z", + "lastRefresh": "2017-03-01T14:38:05Z", + "state": { + "currentValue": "Pending", + "actionInitiatedBy": "System", + "lastModified": "2017-03-01T14:38:05Z" + }, + "isExecutableAction": true, + "isRevertableAction": true, + "isArchivedAction": false, + "executeActionInitiatedBy": "System", + "executeActionInitiatedTime": "2017-03-01T14:38:05Z", + "score": 1, + "implementationDetails": { + "method": "TSql", + "script": "DROP INDEX [MyIndex123] ON [CRM].[DataPoints1]" + }, + "errorDetails": {}, + "estimatedImpact": [ + { + "dimensionName": "ActionDuration", + "unit": "Seconds", + "absoluteValue": 803.0 + }, + { + "dimensionName": "SpaceChange", + "unit": "Megabytes", + "absoluteValue": 144.6875 + } + ], + "observedImpact": [], + "timeSeries": [], + "details": { + "indexName": "MyIndex123", + "originalIndexName": "IX_COM_SKU_SKUDepartmentID", + "indexType": "NONCLUSTERED", + "schema": "[CRM]", + "table": "[DataPoints1]", + "indexColumns": "[Cookies],[SessionId]", + "includedColumns": "[Apple]", + "databaseName": "IndexAdvisor_test_3" + } + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workloadinsight-demos/providers/Microsoft.Sql/servers/misosisvr/advisors/DropIndex/recommendedActions/IR_[CRM]_[DataPoints2]_E4B21F229379807E531A", + "name": "IR_[CRM]_[DataPoints2]_E4B21F229379807E531A", + "type": "Microsoft.Sql/servers/advisors/recommendedActions", + "location": "East Asia", + "kind": "", + "properties": { + "recommendationReason": "Duplicate", + "validSince": "2017-03-01T14:38:05Z", + "lastRefresh": "2017-03-01T14:38:05Z", + "state": { + "currentValue": "Success", + "actionInitiatedBy": "User", + "lastModified": "2017-03-01T14:38:05Z" + }, + "isExecutableAction": true, + "isRevertableAction": true, + "isArchivedAction": false, + "executeActionStartTime": "2017-03-01T14:38:05Z", + "executeActionDuration": "PT1M", + "executeActionInitiatedBy": "User", + "executeActionInitiatedTime": "2017-03-01T14:38:05Z", + "score": 1, + "implementationDetails": { + "method": "TSql", + "script": "CREATE NONCLUSTERED INDEX [MyIndex321] ON [CRM].[DataPoints2] ([Cookies],[SessionId],[Protocol]) INCLUDE ([Apple]) WITH (ONLINE = ON)" + }, + "errorDetails": {}, + "estimatedImpact": [ + { + "dimensionName": "ActionDuration", + "unit": "Seconds", + "absoluteValue": 705.0 + }, + { + "dimensionName": "SpaceChange", + "unit": "Megabytes", + "absoluteValue": 342.0 + } + ], + "observedImpact": [ + { + "dimensionName": "AffectedQueriesCpuUtilization", + "unit": "CpuCores", + "changeValueAbsolute": 0.0, + "changeValueRelative": 0.0 + }, + { + "dimensionName": "CpuUtilization", + "unit": "CpuCores", + "changeValueAbsolute": 0.0, + "changeValueRelative": 0.0 + }, + { + "dimensionName": "QueriesWithImprovedPerformance", + "unit": "Count", + "absoluteValue": 0.0 + }, + { + "dimensionName": "QueriesWithRegressedPerformance", + "unit": "Count", + "absoluteValue": 0.0 + }, + { + "dimensionName": "SpaceChange", + "unit": "Megabytes", + "absoluteValue": -342.0 + }, + { + "dimensionName": "VerificationProgress", + "unit": "Percent", + "absoluteValue": 0.0 + } + ], + "timeSeries": [], + "details": { + "indexName": "MyIndex321", + "originalIndexName": "IX_COM_SKU_SKUDepartmentID", + "indexType": "NONCLUSTERED", + "schema": "[CRM]", + "table": "[DataPoints2]", + "indexColumns": "[Cookies],[SessionId],[Protocol]", + "includedColumns": "[Apple]", + "indexActionStartTime": "2017-03-01T14:38:05.697", + "indexActionDuration": "00:01:00", + "databaseName": "IndexAdvisor_test_3" + } + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workloadinsight-demos/providers/Microsoft.Sql/servers/misosisvr/advisors/DropIndex/recommendedActions/IR_[dbo]_[FactFinance]_13ADA5F354E9E14A983B", + "name": "IR_[dbo]_[FactFinance]_13ADA5F354E9E14A983B", + "type": "Microsoft.Sql/servers/advisors/recommendedActions", + "location": "East Asia", + "kind": "", + "properties": { + "recommendationReason": "Duplicate", + "validSince": "2017-03-01T14:38:05Z", + "lastRefresh": "2017-03-01T14:38:05Z", + "state": { + "currentValue": "Success", + "actionInitiatedBy": "System", + "lastModified": "2017-02-28T14:38:05Z" + }, + "isExecutableAction": true, + "isRevertableAction": true, + "isArchivedAction": false, + "executeActionStartTime": "2017-03-01T14:38:05Z", + "executeActionDuration": "PT1M", + "executeActionInitiatedBy": "System", + "executeActionInitiatedTime": "2017-03-01T14:38:05Z", + "score": 1, + "implementationDetails": { + "method": "TSql", + "script": "CREATE NONCLUSTERED INDEX [IX_FF] ON [dbo].[FactFinance] ([FinanceKey],[DateKey]) INCLUDE ([OrganizationKey]) WITH (ONLINE = ON)" + }, + "errorDetails": {}, + "estimatedImpact": [ + { + "dimensionName": "ActionDuration", + "unit": "Seconds", + "absoluteValue": 705.0 + }, + { + "dimensionName": "SpaceChange", + "unit": "Megabytes", + "absoluteValue": 342.0 + } + ], + "observedImpact": [ + { + "dimensionName": "AffectedQueriesCpuUtilization", + "unit": "CpuCores", + "changeValueAbsolute": 0.0, + "changeValueRelative": 0.0 + }, + { + "dimensionName": "CpuUtilization", + "unit": "CpuCores", + "changeValueAbsolute": 0.0, + "changeValueRelative": 0.0 + }, + { + "dimensionName": "QueriesWithImprovedPerformance", + "unit": "Count", + "absoluteValue": 0.0 + }, + { + "dimensionName": "QueriesWithRegressedPerformance", + "unit": "Count", + "absoluteValue": 0.0 + }, + { + "dimensionName": "SpaceChange", + "unit": "Megabytes", + "absoluteValue": -342.0 + }, + { + "dimensionName": "VerificationProgress", + "unit": "Percent", + "absoluteValue": 0.0 + } + ], + "timeSeries": [], + "details": { + "indexName": "IX_FF", + "originalIndexName": "IX_COM_SKU_SKUDepartmentID", + "indexType": "NONCLUSTERED", + "schema": "[dbo]", + "table": "[FactFinance]", + "indexColumns": "[FinanceKey],[DateKey]", + "includedColumns": "[OrganizationKey]", + "indexActionStartTime": "2017-03-01T14:38:05.837", + "indexActionDuration": "00:01:00", + "databaseName": "IndexAdvisor_test_3" + } + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workloadinsight-demos/providers/Microsoft.Sql/servers/misosisvr/advisors/DropIndex/recommendedActions/IR_[CRM]_[DataPoints1]_13ADA5F354E9E14A983B", + "name": "IR_[CRM]_[DataPoints1]_13ADA5F354E9E14A983B", + "type": "Microsoft.Sql/servers/advisors/recommendedActions", + "location": "East Asia", + "kind": "", + "properties": { + "recommendationReason": "Unused", + "validSince": "2017-03-01T14:38:05Z", + "lastRefresh": "2017-03-01T14:38:05Z", + "state": { + "currentValue": "Pending", + "actionInitiatedBy": "System", + "lastModified": "2017-03-23T14:14:35Z" + }, + "isExecutableAction": true, + "isRevertableAction": true, + "isArchivedAction": false, + "executeActionInitiatedBy": "System", + "executeActionInitiatedTime": "2017-03-23T14:14:35Z", + "score": 1, + "implementationDetails": { + "method": "TSql", + "script": "DROP INDEX [IX_FF] ON [CRM].[DataPoints1]" + }, + "errorDetails": {}, + "estimatedImpact": [ + { + "dimensionName": "ActionDuration", + "unit": "Seconds", + "absoluteValue": 645.0 + }, + { + "dimensionName": "SpaceChange", + "unit": "Megabytes", + "absoluteValue": 342.0 + } + ], + "observedImpact": [], + "timeSeries": [], + "details": { + "indexName": "IX_FF", + "originalIndexName": "IX_COM_SKU_SKUDepartmentID", + "indexType": "NONCLUSTERED", + "schema": "[CRM]", + "table": "[DataPoints1]", + "indexColumns": "[Protocol],[SessionId]", + "includedColumns": "[Apple]", + "databaseName": "IndexAdvisor_test_3" + } + } + } + ] + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workloadinsight-demos/providers/Microsoft.Sql/servers/misosisvr/advisors/DbParameterization", + "name": "DbParameterization", + "type": "Microsoft.Sql/servers/advisors", + "location": "East Asia", + "kind": "", + "properties": { + "advisorStatus": "GA", + "autoExecuteStatus": "Disabled", + "autoExecuteStatusInheritedFrom": "Default", + "recommendedActions": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workloadinsight-demos/providers/Microsoft.Sql/servers/misosisvr/advisors/DbParameterization/recommendedActions/ForceDbParameterization", + "name": "ForceDbParameterization", + "type": "Microsoft.Sql/servers/advisors/recommendedActions", + "location": "East Asia", + "kind": "", + "properties": { + "recommendationReason": "", + "validSince": "2017-03-01T14:37:44Z", + "lastRefresh": "2017-03-01T14:37:44Z", + "state": { + "currentValue": "Pending", + "actionInitiatedBy": "System", + "lastModified": "2017-05-11T15:08:31Z" + }, + "isExecutableAction": true, + "isRevertableAction": true, + "isArchivedAction": false, + "executeActionInitiatedBy": "System", + "executeActionInitiatedTime": "2017-05-11T15:08:31Z", + "score": 3, + "implementationDetails": { + "method": "TSql", + "script": "ALTER DATABASE [IndexAdvisor_test_3] SET PARAMETERIZATION FORCED" + }, + "errorDetails": {}, + "estimatedImpact": [ + { + "dimensionName": "CpuSavings", + "unit": "Percent", + "changeValueAbsolute": 22.5613696939135 + }, + { + "dimensionName": "QueryDurationDecrease", + "unit": "secs", + "changeValueAbsolute": 0.701823681806341 + } + ], + "observedImpact": [], + "timeSeries": [], + "details": { + "databaseName": "IndexAdvisor_test_3" + } + } + } + ] + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workloadinsight-demos/providers/Microsoft.Sql/servers/misosisvr/advisors/SchemaIssue", + "name": "SchemaIssue", + "type": "Microsoft.Sql/servers/advisors", + "location": "East Asia", + "kind": "", + "properties": { + "advisorStatus": "PublicPreview", + "autoExecuteStatus": "Disabled", + "autoExecuteStatusInheritedFrom": "Default", + "recommendedActions": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workloadinsight-demos/providers/Microsoft.Sql/servers/misosisvr/advisors/SchemaIssue/recommendedActions/SchemaProblem_1A258C5714A7410C9D23", + "name": "SchemaProblem_1A258C5714A7410C9D23", + "type": "Microsoft.Sql/servers/advisors/recommendedActions", + "location": "East Asia", + "kind": "", + "properties": { + "recommendationReason": "SchemaProblem", + "validSince": "2017-03-01T14:37:48Z", + "lastRefresh": "2017-06-07T22:19:53Z", + "state": { + "currentValue": "Active", + "lastModified": "2017-03-01T14:37:48Z" + }, + "isExecutableAction": false, + "isRevertableAction": false, + "isArchivedAction": false, + "score": 3, + "implementationDetails": {}, + "errorDetails": {}, + "estimatedImpact": [], + "observedImpact": [], + "timeSeries": [], + "details": { + "sqlErrorNumber": 208, + "sqlErrorMessage": "Invalid object name 'dbo.Companies'.", + "sqlErrorCount": 342482, + "databaseName": "IndexAdvisor_test_3" + } + } + } + ] + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workloadinsight-demos/providers/Microsoft.Sql/servers/misosisvr/advisors/ForceLastGoodPlan", + "name": "ForceLastGoodPlan", + "type": "Microsoft.Sql/servers/advisors", + "location": "East Asia", + "kind": "", + "properties": { + "advisorStatus": "PrivatePreview", + "autoExecuteStatus": "Disabled", + "autoExecuteStatusInheritedFrom": "Default", + "recommendedActions": [] + } + } + ] + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerSecurityAlertsCreateMax.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerSecurityAlertsCreateMax.json new file mode 100644 index 000000000000..f6409dc9edaf --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerSecurityAlertsCreateMax.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "securityalert-4799", + "serverName": "securityalert-6440", + "securityAlertPolicyName": "Default", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "state": "Enabled", + "emailAccountAdmins": true, + "emailAddresses": [ + "testSecurityAlert@microsoft.com" + ], + "disabledAlerts": [ + "Access_Anomaly", + "Usage_Anomaly" + ], + "retentionDays": 5, + "storageAccountAccessKey": "sdlfkjabc+sdlfkjsdlkfsjdfLDKFTERLKFDFKLjsdfksjdflsdkfD2342309432849328476458/3RSD==", + "storageEndpoint": "https://mystorage.blob.core.windows.net" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/securityalert-4799/providers/Microsoft.Sql/servers/securityalert-6440/securityAlertPolicies/default", + "name": "Default", + "type": "Microsoft.Sql/servers/securityAlertPolicies", + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2020-04-03T04:41:33.937Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-04-03T04:41:33.937Z" + }, + "properties": { + "state": "Enabled", + "emailAccountAdmins": true, + "emailAddresses": [ + "testSecurityAlert@microsoft.com" + ], + "disabledAlerts": [ + "Access_Anomaly", + "Usage_Anomaly" + ], + "retentionDays": 5, + "storageAccountAccessKey": "", + "storageEndpoint": "https://mystorage.blob.core.windows.net" + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerSecurityAlertsCreateMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerSecurityAlertsCreateMin.json new file mode 100644 index 000000000000..eea95e485496 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerSecurityAlertsCreateMin.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "securityalert-4799", + "serverName": "securityalert-6440", + "securityAlertPolicyName": "Default", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "state": "Enabled" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/securityalert-4799/providers/Microsoft.Sql/servers/securityalert-6440/securityAlertPolicies/default", + "name": "Default", + "type": "Microsoft.Sql/servers/securityAlertPolicies", + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2020-04-03T04:41:33.937Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-04-03T04:41:33.937Z" + }, + "properties": { + "state": "Enabled", + "emailAccountAdmins": false, + "emailAddresses": [ + "" + ], + "disabledAlerts": [ + "" + ], + "retentionDays": 0, + "storageAccountAccessKey": "", + "storageEndpoint": "https://mystorage.blob.core.windows.net" + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerSecurityAlertsGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerSecurityAlertsGet.json new file mode 100644 index 000000000000..c5f2773d42f7 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerSecurityAlertsGet.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "securityalert-4799", + "serverName": "securityalert-6440", + "securityAlertPolicyName": "Default", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/securityalert-4799/providers/Microsoft.Sql/servers/securityalert-6440/securityAlertPolicies/default", + "name": "Default", + "type": "Microsoft.Sql/servers/securityAlertPolicies", + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2020-04-03T04:41:33.937Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-04-03T04:41:33.937Z" + }, + "properties": { + "state": "Enabled", + "creationTime": "2020-04-03T04:41:33.937Z", + "emailAccountAdmins": true, + "emailAddresses": [ + "test@consoto.com;user@consoto.com" + ], + "disabledAlerts": [ + "Access_Anomaly" + ], + "retentionDays": 0, + "storageAccountAccessKey": "", + "storageEndpoint": "https://mystorage.blob.core.windows.net" + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerSecurityAlertsListByServer.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerSecurityAlertsListByServer.json new file mode 100644 index 000000000000..30ad8f902cdc --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerSecurityAlertsListByServer.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "securityalert-4799", + "serverName": "securityalert-6440", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/securityalert-4799/providers/Microsoft.Sql/servers/securityalert-6440/securityAlertPolicies", + "name": "Default", + "type": "Microsoft.Sql/servers/securityAlertPolicies", + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2020-04-03T04:41:33.937Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-04-03T04:41:33.937Z" + }, + "properties": { + "state": "Enabled", + "creationTime": "2020-04-03T04:41:33.937Z", + "emailAccountAdmins": true, + "emailAddresses": [ + "test@consoto.com;user@consoto.com" + ], + "disabledAlerts": [ + "Access_Anomaly" + ], + "retentionDays": 0, + "storageAccountAccessKey": "", + "storageEndpoint": "https://mystorage.blob.core.windows.net" + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerTrustGroupCreate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerTrustGroupCreate.json new file mode 100644 index 000000000000..31002004321a --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerTrustGroupCreate.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "locationName": "Japan East", + "serverTrustGroupName": "server-trust-group-test", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "groupMembers": [ + { + "serverId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/managedInstances/managedInstance-1" + }, + { + "serverId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/managedInstances/managedInstance-2" + } + ], + "trustScopes": [ + "GlobalTransactions", + "ServiceBroker" + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/locations/Japan East/serverTrustGroups/server-trust-group-test", + "name": "server-trust-group-test", + "properties": { + "groupMembers": [ + { + "serverId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/managedInstances/managedInstance-1" + }, + { + "serverId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/managedInstances/managedInstance-2" + } + ], + "trustScopes": [ + "GlobalTransactions", + "ServiceBroker" + ] + }, + "type": "Microsoft.Sql/locations/serverTrustGroups" + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/locations/Japan East/serverTrustGroups/server-trust-group-test", + "name": "server-trust-group-test", + "properties": { + "groupMembers": [ + { + "serverId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/managedInstances/managedInstance-1" + }, + { + "serverId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/managedInstances/managedInstance-2" + } + ], + "trustScopes": [ + "GlobalTransactions", + "ServiceBroker" + ] + }, + "type": "Microsoft.Sql/locations/serverTrustGroups" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerTrustGroupDelete.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerTrustGroupDelete.json new file mode 100644 index 000000000000..8fb1ea8c9ac6 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerTrustGroupDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "locationName": "Japan East", + "serverTrustGroupName": "server-trust-group-test", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerTrustGroupGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerTrustGroupGet.json new file mode 100644 index 000000000000..97f0261db9e9 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerTrustGroupGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "locationName": "Japan East", + "serverTrustGroupName": "server-trust-group-test", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/locations/Japan East/serverTrustGroups/server-trust-group-test", + "name": "server-trust-group-test", + "properties": { + "groupMembers": [ + { + "serverId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/managedInstances/managedInstance-1" + }, + { + "serverId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/managedInstances/managedInstance-2" + } + ], + "trustScopes": [ + "GlobalTransactions", + "ServiceBroker" + ] + }, + "type": "Microsoft.Sql/locations/serverTrustGroups" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerTrustGroupList.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerTrustGroupList.json new file mode 100644 index 000000000000..323c7fc6148d --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerTrustGroupList.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "locationName": "Japan East", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/locations/Japan East/serverTrustGroups/server-trust-group-test", + "name": "server-trust-group-test", + "properties": { + "groupMembers": [ + { + "serverId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/managedInstances/managedInstance-1" + }, + { + "serverId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/managedInstances/managedInstance-2" + } + ], + "trustScopes": [ + "GlobalTransactions", + "ServiceBroker" + ] + }, + "type": "Microsoft.Sql/locations/serverTrustGroups" + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/locations/Japan East/serverTrustGroups/server-trust-group-test-2", + "name": "server-trust-group-test-2", + "properties": { + "groupMembers": [ + { + "serverId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/managedInstances/managedInstance-1" + }, + { + "serverId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/managedInstances/managedInstance-3" + } + ], + "trustScopes": [ + "GlobalTransactions", + "ServiceBroker" + ] + }, + "type": "Microsoft.Sql/locations/serverTrustGroups" + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerTrustGroupListByManagedInstance.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerTrustGroupListByManagedInstance.json new file mode 100644 index 000000000000..6a40a8f14d2e --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerTrustGroupListByManagedInstance.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "managedInstanceName": "managedInstance-1", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/locations/Japan East/serverTrustGroups/server-trust-group-test", + "name": "server-trust-group-test", + "properties": { + "groupMembers": [ + { + "serverId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/managedInstances/managedInstance-1" + }, + { + "serverId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/managedInstances/managedInstance-2" + } + ], + "trustScopes": [ + "GlobalTransactions", + "ServiceBroker" + ] + }, + "type": "Microsoft.Sql/locations/serverTrustGroups" + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/locations/Japan East/serverTrustGroups/server-trust-group-test-2", + "name": "server-trust-group-test-2", + "properties": { + "groupMembers": [ + { + "serverId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/managedInstances/managedInstance-1" + }, + { + "serverId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/managedInstances/managedInstance-3" + } + ], + "trustScopes": [ + "GlobalTransactions", + "ServiceBroker" + ] + }, + "type": "Microsoft.Sql/locations/serverTrustGroups" + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerUpdate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerUpdate.json new file mode 100644 index 000000000000..ee1e37eeaa73 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerUpdate.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "serverName": "sqlcrudtest-4645", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "administratorLogin": "dummylogin", + "administratorLoginPassword": "placeholder", + "publicNetworkAccess": "Disabled", + "restrictOutboundNetworkAccess": "Enabled" + } + } + }, + "responses": { + "200": { + "body": { + "tags": { + "tagKey1": "TagValue1" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645", + "name": "sqlcrudtest-4645", + "type": "Microsoft.Sql/servers", + "location": "japaneast", + "kind": "v12.0", + "properties": { + "fullyQualifiedDomainName": "sqlcrudtest-4645.database.windows.net", + "administratorLogin": "dummylogin", + "version": "12.0", + "state": "Ready", + "publicNetworkAccess": "Disabled", + "restrictOutboundNetworkAccess": "Enabled", + "privateEndpointConnections": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/privateEndpointConnections/private-endpoint-name-00000000-1111-2222-3333-444444444444", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerVulnerabilityAssessmentCreateContainerSasKeyMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerVulnerabilityAssessmentCreateContainerSasKeyMin.json new file mode 100644 index 000000000000..886e1578fdfe --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerVulnerabilityAssessmentCreateContainerSasKeyMin.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityaseessmenttest-4799", + "serverName": "vulnerabilityaseessmenttest-6440", + "vulnerabilityAssessmentName": "default", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "storageContainerPath": "https://myStorage.blob.core.windows.net/vulnerability-assessment/", + "storageContainerSasKey": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/servers/vulnerabilityaseessmenttest-6440/vulnerabilityAssessments/default", + "name": "default", + "type": "Microsoft.Sql/servers/vulnerabilityAssessments", + "properties": { + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": false, + "emails": [] + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/servers/vulnerabilityaseessmenttest-6440/vulnerabilityAssessments/default", + "name": "default", + "type": "Microsoft.Sql/servers/vulnerabilityAssessments", + "properties": { + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": false, + "emails": [] + } + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerVulnerabilityAssessmentCreateMax.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerVulnerabilityAssessmentCreateMax.json new file mode 100644 index 000000000000..ebed6259ab1e --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerVulnerabilityAssessmentCreateMax.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityaseessmenttest-4799", + "serverName": "vulnerabilityaseessmenttest-6440", + "vulnerabilityAssessmentName": "default", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "storageContainerPath": "https://myStorage.blob.core.windows.net/vulnerability-assessment/", + "storageContainerSasKey": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX", + "storageAccountAccessKey": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX", + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": true, + "emails": [ + "email1@mail.com", + "email2@mail.com" + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/servers/vulnerabilityaseessmenttest-6440/vulnerabilityAssessments/default", + "name": "default", + "type": "Microsoft.Sql/servers/vulnerabilityAssessments", + "properties": { + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": true, + "emails": [ + "email1@mail.com", + "email2@mail.com" + ] + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/servers/vulnerabilityaseessmenttest-6440/vulnerabilityAssessments/default", + "name": "default", + "type": "Microsoft.Sql/servers/vulnerabilityAssessments", + "properties": { + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": true, + "emails": [ + "email1@mail.com", + "email2@mail.com" + ] + } + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerVulnerabilityAssessmentCreateStorageAccessKeyMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerVulnerabilityAssessmentCreateStorageAccessKeyMin.json new file mode 100644 index 000000000000..5aabdb1153c9 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerVulnerabilityAssessmentCreateStorageAccessKeyMin.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityaseessmenttest-4799", + "serverName": "vulnerabilityaseessmenttest-6440", + "vulnerabilityAssessmentName": "default", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "storageContainerPath": "https://myStorage.blob.core.windows.net/vulnerability-assessment/", + "storageAccountAccessKey": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/servers/vulnerabilityaseessmenttest-6440/vulnerabilityAssessments/default", + "name": "default", + "type": "Microsoft.Sql/servers/vulnerabilityAssessments", + "properties": { + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": false, + "emails": [] + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/servers/vulnerabilityaseessmenttest-6440/vulnerabilityAssessments/default", + "name": "default", + "type": "Microsoft.Sql/servers/vulnerabilityAssessments", + "properties": { + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": false, + "emails": [] + } + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerVulnerabilityAssessmentDelete.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerVulnerabilityAssessmentDelete.json new file mode 100644 index 000000000000..0c5a8662e2eb --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerVulnerabilityAssessmentDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityaseessmenttest-4799", + "serverName": "vulnerabilityaseessmenttest-6440", + "vulnerabilityAssessmentName": "default", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerVulnerabilityAssessmentGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerVulnerabilityAssessmentGet.json new file mode 100644 index 000000000000..c405a02f41c7 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerVulnerabilityAssessmentGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityaseessmenttest-4799", + "serverName": "vulnerabilityaseessmenttest-6440", + "vulnerabilityAssessmentName": "default", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/servers/vulnerabilityaseessmenttest-6440/vulnerabilityAssessments/default", + "name": "default", + "type": "Microsoft.Sql/servers/vulnerabilityAssessments", + "properties": { + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": true, + "emails": [ + "email1@mail.com", + "email2@mail.com" + ] + } + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerVulnerabilityAssessmentListByServer.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerVulnerabilityAssessmentListByServer.json new file mode 100644 index 000000000000..76cf6e6ce3a0 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/ServerVulnerabilityAssessmentListByServer.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityaseessmenttest-4799", + "serverName": "vulnerabilityaseessmenttest-6440", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/servers/vulnerabilityaseessmenttest-6440/vulnerabilityAssessments/", + "name": "default", + "type": "Microsoft.Sql/servers/vulnerabilityAssessments", + "properties": { + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": true, + "emails": [ + "email1@mail.com", + "email2@mail.com" + ] + } + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SqlAgentConfigurationGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SqlAgentConfigurationGet.json new file mode 100644 index 000000000000..6e161b7d9498 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SqlAgentConfigurationGet.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "managedInstanceName": "sqlcrudtest-4645", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/managedInstances/sqlcrudtest-4645/sqlAgent/current", + "name": "current", + "type": "Microsoft.Sql/managedInstances/sqlAgent", + "properties": { + "state": "Enabled" + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SqlAgentConfigurationPut.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SqlAgentConfigurationPut.json new file mode 100644 index 000000000000..fd71c4b1b967 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SqlAgentConfigurationPut.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "managedInstanceName": "sqlcrudtest-4645", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "state": "Enabled" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/managedInstances/sqlcrudtest-4645/sqlAgent/current", + "name": "current", + "type": "Microsoft.Sql/managedInstances/sqlAgent", + "properties": { + "state": "Enabled" + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SqlTdeCertificateCreate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SqlTdeCertificateCreate.json new file mode 100644 index 000000000000..4802a5642c32 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SqlTdeCertificateCreate.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000001", + "resourceGroupName": "testtdecert", + "serverName": "testtdecert", + "tdeCertName": "current", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "privateBlob": "MIIXXXXXXXX" + } + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SubscriptionUsageGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SubscriptionUsageGet.json new file mode 100644 index 000000000000..fef19ba6e824 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SubscriptionUsageGet.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "locationName": "WestUS", + "usageName": "ServerQuota", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "displayName": "Regional Server Quota for West US", + "currentValue": 1.0, + "limit": 20.0, + "unit": "Count" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/locations/Onebox/usages/ServerQuota", + "name": "ServerQuota", + "type": "Microsoft.Sql/locations/usages" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SubscriptionUsageListByLocation.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SubscriptionUsageListByLocation.json new file mode 100644 index 000000000000..74ee126c4676 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SubscriptionUsageListByLocation.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "locationName": "WestUS", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "displayName": "Regional Server Quota for West US", + "currentValue": 1.0, + "limit": 20.0, + "unit": "Count" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/locations/Onebox/usages/ServerQuota", + "name": "ServerQuota", + "type": "Microsoft.Sql/locations/usages" + }, + { + "properties": { + "displayName": "Free Database Count per Subscription for West US", + "currentValue": 0.0, + "limit": 1.0, + "unit": "Count" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/locations/Onebox/usages/SubscriptionFreeDatabaseCount", + "name": "SubscriptionFreeDatabaseCount", + "type": "Microsoft.Sql/locations/usages" + }, + { + "properties": { + "displayName": "Free to Basic Database Upgrade count-down in West US", + "currentValue": 365.0, + "limit": 365.0, + "unit": "Count" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/locations/Onebox/usages/SubscriptionFreeDatabaseDaysLeft", + "name": "SubscriptionFreeDatabaseDaysLeft", + "type": "Microsoft.Sql/locations/usages" + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncAgentCreate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncAgentCreate.json new file mode 100644 index 000000000000..63ec7a48fe4d --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncAgentCreate.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "syncagentcrud-65440", + "serverName": "syncagentcrud-8475", + "syncAgentName": "syncagentcrud-3187", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "syncDatabaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-Onebox/providers/Microsoft.Sql/servers/syncagentcrud-8475/databases/sync" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "syncDatabaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-Onebox/providers/Microsoft.Sql/servers/syncagentcrud-8475/databases/sync", + "state": "NeverConnected", + "isUpToDate": true, + "expiryTime": "9999-12-31T23:59:59.9999999Z", + "version": "4.2.0.0" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-Onebox/providers/Microsoft.Sql/servers/syncagentcrud-8475/syncAgents/syncagentcrud-3187", + "name": "syncagent", + "type": "Microsoft.Sql/servers/syncAgents" + } + }, + "201": { + "body": { + "properties": { + "syncDatabaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-Onebox/providers/Microsoft.Sql/servers/syncagentcrud-8475/databases/sync", + "state": "NeverConnected", + "isUpToDate": true, + "expiryTime": "9999-12-31T23:59:59.9999999Z", + "version": "4.2.0.0" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-Onebox/providers/Microsoft.Sql/servers/syncagentcrud-8475/syncAgents/syncagentcrud-3187", + "name": "syncagent", + "type": "Microsoft.Sql/servers/syncAgents" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncAgentDelete.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncAgentDelete.json new file mode 100644 index 000000000000..6049dcf1aca2 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncAgentDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "syncagentcrud-65440", + "serverName": "syncagentcrud-8475", + "syncAgentName": "syncagentcrud-3187", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncAgentGenerateKey.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncAgentGenerateKey.json new file mode 100644 index 000000000000..1956c6b2a561 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncAgentGenerateKey.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "syncagentcrud-65440", + "serverName": "syncagentcrud-8475", + "syncAgentName": "syncagentcrud-3187", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "syncAgentKey": "865f9998-6dae-4214-bbb1-4796b7c76ca0:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX=:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX=" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncAgentGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncAgentGet.json new file mode 100644 index 000000000000..6104e1652f81 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncAgentGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "syncagentcrud-65440", + "serverName": "syncagentcrud-8475", + "syncAgentName": "syncagentcrud-3187", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "syncDatabaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-Onebox/providers/Microsoft.Sql/servers/syncagentcrud-8475/databases/sync", + "state": "NeverConnected", + "isUpToDate": true, + "expiryTime": "9999-12-31T23:59:59.9999999Z", + "version": "4.2.0.0" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-Onebox/providers/Microsoft.Sql/servers/syncagentcrud-8475/syncAgents/syncagentcrud-3187", + "name": "syncagent", + "type": "Microsoft.Sql/servers/syncAgents" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncAgentGetLinkedDatabases.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncAgentGetLinkedDatabases.json new file mode 100644 index 000000000000..0fbfb3ce180e --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncAgentGetLinkedDatabases.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "syncagentcrud-65440", + "serverName": "syncagentcrud-8475", + "syncAgentName": "syncagentcrud-3187", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "databaseType": "SqlServerDatabase", + "databaseId": "55555555-6666-7777-8888-999999999999", + "description": "", + "serverName": "DummySqlServer", + "databaseName": "DummySqlServerDb", + "userName": "DummyUser" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-Onebox/providers/Microsoft.Sql/servers/syncagentcrud-8475/syncAgents/syncagentcrud-3187/linkedDatabases/55555555-6666-7777-8888-999999999999" + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncAgentListByServer.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncAgentListByServer.json new file mode 100644 index 000000000000..662d29bb27b8 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncAgentListByServer.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "syncagentcrud-65440", + "serverName": "syncagentcrud-8475", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "syncDatabaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-Onebox/providers/Microsoft.Sql/servers/syncagentcrud-8475/databases/sync", + "state": "NeverConnected", + "isUpToDate": true, + "expiryTime": "9999-12-31T23:59:59.9999999Z", + "version": "4.2.0.0" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-Onebox/providers/Microsoft.Sql/servers/syncagentcrud-8475/syncAgents/syncagentcrud-3187", + "name": "syncagent", + "type": "Microsoft.Sql/servers/syncAgents" + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncAgentUpdate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncAgentUpdate.json new file mode 100644 index 000000000000..63ec7a48fe4d --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncAgentUpdate.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "syncagentcrud-65440", + "serverName": "syncagentcrud-8475", + "syncAgentName": "syncagentcrud-3187", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "syncDatabaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-Onebox/providers/Microsoft.Sql/servers/syncagentcrud-8475/databases/sync" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "syncDatabaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-Onebox/providers/Microsoft.Sql/servers/syncagentcrud-8475/databases/sync", + "state": "NeverConnected", + "isUpToDate": true, + "expiryTime": "9999-12-31T23:59:59.9999999Z", + "version": "4.2.0.0" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-Onebox/providers/Microsoft.Sql/servers/syncagentcrud-8475/syncAgents/syncagentcrud-3187", + "name": "syncagent", + "type": "Microsoft.Sql/servers/syncAgents" + } + }, + "201": { + "body": { + "properties": { + "syncDatabaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-Onebox/providers/Microsoft.Sql/servers/syncagentcrud-8475/databases/sync", + "state": "NeverConnected", + "isUpToDate": true, + "expiryTime": "9999-12-31T23:59:59.9999999Z", + "version": "4.2.0.0" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-Onebox/providers/Microsoft.Sql/servers/syncagentcrud-8475/syncAgents/syncagentcrud-3187", + "name": "syncagent", + "type": "Microsoft.Sql/servers/syncAgents" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncGroupCancelSync.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncGroupCancelSync.json new file mode 100644 index 000000000000..f383468e82e0 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncGroupCancelSync.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "syncgroupcrud-65440", + "serverName": "syncgroupcrud-8475", + "databaseName": "syncgroupcrud-4328", + "syncGroupName": "syncgroupcrud-3187", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncGroupCreate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncGroupCreate.json new file mode 100644 index 000000000000..9e81d1a69cee --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncGroupCreate.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "syncgroupcrud-65440", + "serverName": "syncgroupcrud-8475", + "databaseName": "syncgroupcrud-4328", + "syncGroupName": "syncgroupcrud-3187", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "interval": -1, + "conflictResolutionPolicy": "HubWin", + "syncDatabaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-3521/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328", + "hubDatabaseUserName": "hubUser", + "usePrivateLinkConnection": true + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "interval": -1, + "lastSyncTime": "0001-01-01T08:00:00Z", + "conflictResolutionPolicy": "HubWin", + "syncDatabaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-3521/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328", + "hubDatabaseUserName": "hubUser", + "syncState": "NotReady", + "usePrivateLinkConnection": true, + "privateEndpointName": "PE_67FDBBD6-B2D8-4014-9CC6-C68ABBCFD481_syncgroupcrud-8475" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-3521/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328/syncGroups/syncgroupcrud-3187", + "name": "syncgroupcrud-3187", + "type": "Microsoft.Sql/servers/databases/syncGroups" + } + }, + "201": { + "body": { + "properties": { + "interval": -1, + "lastSyncTime": "0001-01-01T08:00:00Z", + "conflictResolutionPolicy": "HubWin", + "syncDatabaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-3521/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328", + "hubDatabaseUserName": "hubUser", + "syncState": "NotReady", + "usePrivateLinkConnection": true, + "privateEndpointName": "PE_67FDBBD6-B2D8-4014-9CC6-C68ABBCFD481_syncgroupcrud-8475" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-3521/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328/syncGroups/syncgroupcrud-3187", + "name": "syncgroupcrud-3187", + "type": "Microsoft.Sql/servers/databases/syncGroups" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncGroupDelete.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncGroupDelete.json new file mode 100644 index 000000000000..4326cd6d29fa --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncGroupDelete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "syncgroupcrud-65440", + "serverName": "syncgroupcrud-8475", + "databaseName": "syncgroupcrud-4328", + "syncGroupName": "syncgroupcrud-3187", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncGroupGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncGroupGet.json new file mode 100644 index 000000000000..9fefe0a7760f --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncGroupGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "syncgroupcrud-65440", + "serverName": "syncgroupcrud-8475", + "databaseName": "syncgroupcrud-4328", + "syncGroupName": "syncgroupcrud-3187", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "interval": -1, + "lastSyncTime": "0001-01-01T08:00:00Z", + "conflictResolutionPolicy": "HubWin", + "syncDatabaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-3521/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328", + "hubDatabaseUserName": "hubUser", + "syncState": "NotReady", + "usePrivateLinkConnection": true, + "privateEndpointName": "PE_67FDBBD6-B2D8-4014-9CC6-C68ABBCFD481_syncgroupcrud-3187" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-3521/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328/syncGroups/syncgroupcrud-3187", + "name": "syncgroupcrud-3187", + "type": "Microsoft.Sql/servers/databases/syncGroups" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncGroupGetHubSchema.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncGroupGetHubSchema.json new file mode 100644 index 000000000000..f351b16d6e08 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncGroupGetHubSchema.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "syncgroupcrud-65440", + "serverName": "syncgroupcrud-8475", + "databaseName": "syncgroupcrud-4328", + "syncGroupName": "syncgroupcrud-3187", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "tables": [ + { + "columns": [ + { + "dataSize": "4", + "dataType": "int", + "hasError": false, + "isPrimaryKey": false, + "name": "intField", + "quotedName": "[intField]" + }, + { + "dataSize": "100", + "dataType": "nvarchar", + "hasError": false, + "isPrimaryKey": false, + "name": "charField", + "quotedName": "[charField]" + } + ], + "errorId": "Schema_TableHasNoPrimaryKey", + "hasError": true, + "name": "dbo.myTable", + "quotedName": "[dbo].[myTable]" + } + ], + "lastUpdateTime": "2017-05-30T07:16:08.21Z" + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncGroupGetLog.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncGroupGetLog.json new file mode 100644 index 000000000000..40ca87bf0cb0 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncGroupGetLog.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "syncgroupcrud-65440", + "serverName": "syncgroupcrud-8475", + "databaseName": "syncgroupcrud-4328", + "syncGroupName": "syncgroupcrud-3187", + "startTime": "2017-01-01T00:00:00", + "endTime": "2017-12-31T00:00:00", + "type": "All", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timestamp": "2017-05-30T07:16:08.25Z", + "type": "Success", + "source": "syncgroupcrud-8475.database.windows.net/hub", + "details": "Schema information obtained successfully.", + "tracingId": "c0480c8e-6269-424e-9404-b00efce0ebae", + "operationStatus": "SchemaRefreshSuccess" + }, + { + "timestamp": "2017-05-30T07:03:37.5733333Z", + "type": "Error", + "source": "syncgroupcrud-8475.database.windows.net/member", + "details": "Getting schema information for the database failed with the exception \"Failed to connect to server .\nInner exception: SqlException Error Code: -2146232060 - SqlError Number:53, Message: A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: Named Pipes Provider, error: 40 - Could not open a connection to SQL Server) \nInner exception: The network path was not found\n For more information, provide tracing ID ‘cd3aa28c-0c31-471f-8a77-f1b21c908cbd’ to customer support.\"", + "tracingId": "cd3aa28c-0c31-471f-8a77-f1b21c908cbd", + "operationStatus": "SchemaRefreshFailure" + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncGroupGetSyncDatabaseId.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncGroupGetSyncDatabaseId.json new file mode 100644 index 000000000000..71b61e5686a7 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncGroupGetSyncDatabaseId.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "locationName": "westus", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-3521/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328" + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncGroupListByDatabase.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncGroupListByDatabase.json new file mode 100644 index 000000000000..d6f1ed2d1fac --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncGroupListByDatabase.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "syncgroupcrud-65440", + "serverName": "syncgroupcrud-8475", + "databaseName": "syncgroupcrud-4328", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "interval": -1, + "lastSyncTime": "0001-01-01T08:00:00Z", + "conflictResolutionPolicy": "HubWin", + "syncDatabaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-3521/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328", + "hubDatabaseUserName": "hubUser", + "syncState": "NotReady", + "usePrivateLinkConnection": true, + "privateEndpointName": "PE_67FDBBD6-B2D8-4014-9CC6-C68ABBCFD481_syncgroupcrud-3187" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-3521/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328/syncGroups/syncgroupcrud-3187", + "name": "syncgroupcrud-3187", + "type": "Microsoft.Sql/servers/databases/syncGroups" + }, + { + "properties": { + "interval": -1, + "lastSyncTime": "0001-01-01T08:00:00Z", + "conflictResolutionPolicy": "HubWin", + "syncDatabaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-3521/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328", + "hubDatabaseUserName": "hubUser", + "syncState": "NotReady", + "usePrivateLinkConnection": true, + "privateEndpointName": "PE_67FDBBD6-B2D8-4014-9CC6-C68ABBCFD481_syncgroupcrud-5374" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-3521/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328/syncGroups/syncgroupcrud-5374", + "name": "syncgroupcrud-5374", + "type": "Microsoft.Sql/servers/databases/syncGroups" + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncGroupPatch.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncGroupPatch.json new file mode 100644 index 000000000000..339b91ba8a02 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncGroupPatch.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "syncgroupcrud-65440", + "serverName": "syncgroupcrud-8475", + "databaseName": "syncgroupcrud-4328", + "syncGroupName": "syncgroupcrud-3187", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "interval": -1, + "conflictResolutionPolicy": "HubWin", + "syncDatabaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-3521/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328", + "hubDatabaseUserName": "hubUser", + "hubDatabasePassword": "hubPassword", + "usePrivateLinkConnection": true + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "interval": -1, + "lastSyncTime": "0001-01-01T08:00:00Z", + "conflictResolutionPolicy": "HubWin", + "syncDatabaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-3521/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328", + "hubDatabaseUserName": "hubUser", + "syncState": "NotReady", + "usePrivateLinkConnection": true, + "privateEndpointName": "PE_67FDBBD6-B2D8-4014-9CC6-C68ABBCFD481_syncgroupcrud-3187" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-3521/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328/syncGroups/syncgroupcrud-3187", + "name": "syncgroup", + "type": "Microsoft.Sql/servers/databases/syncGroups" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncGroupRefreshHubSchema.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncGroupRefreshHubSchema.json new file mode 100644 index 000000000000..c859908fd3f2 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncGroupRefreshHubSchema.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "syncgroupcrud-65440", + "serverName": "syncgroupcrud-8475", + "databaseName": "syncgroupcrud-4328", + "syncGroupName": "syncgroupcrud-3187", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncGroupTriggerSync.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncGroupTriggerSync.json new file mode 100644 index 000000000000..f383468e82e0 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncGroupTriggerSync.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "syncgroupcrud-65440", + "serverName": "syncgroupcrud-8475", + "databaseName": "syncgroupcrud-4328", + "syncGroupName": "syncgroupcrud-3187", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncGroupUpdate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncGroupUpdate.json new file mode 100644 index 000000000000..ddcae6cfe885 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncGroupUpdate.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "syncgroupcrud-65440", + "serverName": "syncgroupcrud-8475", + "databaseName": "syncgroupcrud-4328", + "syncGroupName": "syncgroupcrud-3187", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "interval": -1, + "conflictResolutionPolicy": "HubWin", + "syncDatabaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-3521/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328", + "hubDatabaseUserName": "hubUser", + "usePrivateLinkConnection": true + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "interval": -1, + "lastSyncTime": "0001-01-01T08:00:00Z", + "conflictResolutionPolicy": "HubWin", + "syncDatabaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-3521/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328", + "hubDatabaseUserName": "hubUser", + "syncState": "NotReady", + "usePrivateLinkConnection": true, + "privateEndpointName": "PE_67FDBBD6-B2D8-4014-9CC6-C68ABBCFD481_syncgroupcrud-3187" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-3521/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328/syncGroups/syncgroupcrud-3187", + "name": "syncgroupcrud-3187", + "type": "Microsoft.Sql/servers/databases/syncGroups" + } + }, + "201": { + "body": { + "properties": { + "interval": -1, + "lastSyncTime": "0001-01-01T08:00:00Z", + "conflictResolutionPolicy": "HubWin", + "syncDatabaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-3521/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328", + "hubDatabaseUserName": "hubUser", + "syncState": "NotReady", + "usePrivateLinkConnection": true, + "privateEndpointName": "PE_67FDBBD6-B2D8-4014-9CC6-C68ABBCFD481_syncgroupcrud-3187" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-3521/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328/syncGroups/syncgroupcrud-3187", + "name": "syncgroupcrud-3187", + "type": "Microsoft.Sql/servers/databases/syncGroups" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncMemberCreate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncMemberCreate.json new file mode 100644 index 000000000000..7b80c6ccd8f9 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncMemberCreate.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "syncgroupcrud-65440", + "serverName": "syncgroupcrud-8475", + "databaseName": "syncgroupcrud-4328", + "syncGroupName": "syncgroupcrud-3187", + "syncMemberName": "syncmembercrud-4879", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "databaseType": "AzureSqlDatabase", + "serverName": "syncgroupcrud-3379.database.windows.net", + "databaseName": "syncgroupcrud-7421", + "userName": "myUser", + "syncDirection": "Bidirectional", + "usePrivateLinkConnection": true, + "syncMemberAzureDatabaseResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-65440/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "databaseType": "AzureSqlDatabase", + "serverName": "syncgroupcrud-3379.database.windows.net", + "databaseName": "syncgroupcrud-7421", + "userName": "myUser", + "syncDirection": "Bidirectional", + "syncState": "UnProvisioned", + "usePrivateLinkConnection": true, + "privateEndpointName": "PE_67FDBBD6-B2D8-4014-9CC6-C68ABBCFD481_syncmembercrud-4879", + "syncMemberAzureDatabaseResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-65440/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-65440/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328/syncGroups/syncgroupcrud-3187/syncMembers/syncmembercrud-4879", + "name": "syncmembercrud-4879", + "type": "Microsoft.Sql/servers/databases/syncGroups/syncMembers" + } + }, + "201": { + "body": { + "properties": { + "databaseType": "AzureSqlDatabase", + "serverName": "syncgroupcrud-3379.database.windows.net", + "databaseName": "syncgroupcrud-7421", + "userName": "myUser", + "syncDirection": "Bidirectional", + "syncState": "UnProvisioned", + "usePrivateLinkConnection": true, + "privateEndpointName": "PE_67FDBBD6-B2D8-4014-9CC6-C68ABBCFD481_syncmembercrud-4879", + "syncMemberAzureDatabaseResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-65440/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-65440/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328/syncGroups/syncgroupcrud-3187/syncMembers/syncmembercrud-4879", + "name": "syncmembercrud-4879", + "type": "Microsoft.Sql/servers/databases/syncGroups/syncMembers" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncMemberDelete.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncMemberDelete.json new file mode 100644 index 000000000000..bd57893b81a7 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncMemberDelete.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "syncgroupcrud-65440", + "serverName": "syncgroupcrud-8475", + "databaseName": "syncgroupcrud-4328", + "syncGroupName": "syncgroupcrud-3187", + "syncMemberName": "syncgroupcrud-4879", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncMemberGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncMemberGet.json new file mode 100644 index 000000000000..f76c16736db9 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncMemberGet.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "syncgroupcrud-65440", + "serverName": "syncgroupcrud-8475", + "databaseName": "syncgroupcrud-4328", + "syncGroupName": "syncgroupcrud-3187", + "syncMemberName": "syncmembercrud-4879", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "databaseType": "AzureSqlDatabase", + "serverName": "syncgroupcrud-3379.database.windows.net", + "databaseName": "syncgroupcrud-7421", + "userName": "myUser", + "syncDirection": "Bidirectional", + "syncState": "UnProvisioned", + "usePrivateLinkConnection": true, + "privateEndpointName": "PE_67FDBBD6-B2D8-4014-9CC6-C68ABBCFD481_syncmembercrud-4879", + "syncMemberAzureDatabaseResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-65440/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-65440/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328/syncGroups/syncgroupcrud-3187/syncMembers/syncmembercrud-4879", + "name": "syncmembercrud-4879", + "type": "Microsoft.Sql/servers/databases/syncGroups/syncMembers" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncMemberGetSchema.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncMemberGetSchema.json new file mode 100644 index 000000000000..65c0407d27d8 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncMemberGetSchema.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "syncgroupcrud-65440", + "serverName": "syncgroupcrud-8475", + "databaseName": "syncgroupcrud-4328", + "syncGroupName": "syncgroupcrud-3187", + "syncMemberName": "syncgroupcrud-4879", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "tables": [ + { + "columns": [ + { + "dataSize": "4", + "dataType": "int", + "hasError": false, + "isPrimaryKey": false, + "name": "intField", + "quotedName": "[intField]" + }, + { + "dataSize": "100", + "dataType": "nvarchar", + "hasError": false, + "isPrimaryKey": false, + "name": "charField", + "quotedName": "[charField]" + } + ], + "errorId": "Schema_TableHasNoPrimaryKey", + "hasError": true, + "name": "dbo.myTable", + "quotedName": "[dbo].[myTable]" + } + ], + "lastUpdateTime": "2017-05-30T07:16:08.21Z" + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncMemberListBySyncGroup.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncMemberListBySyncGroup.json new file mode 100644 index 000000000000..9c286b1f1a50 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncMemberListBySyncGroup.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "syncgroupcrud-65440", + "serverName": "syncgroupcrud-8475", + "databaseName": "syncgroupcrud-4328", + "syncGroupName": "syncgroupcrud-3187", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "databaseType": "AzureSqlDatabase", + "serverName": "syncgroupcrud-3379.database.windows.net", + "databaseName": "syncgroupcrud-7421", + "userName": "myUser", + "syncDirection": "Bidirectional", + "syncState": "UnProvisioned", + "usePrivateLinkConnection": true, + "privateEndpointName": "PE_67FDBBD6-B2D8-4014-9CC6-C68ABBCFD481_syncmembercrud-4879", + "syncMemberAzureDatabaseResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-65440/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-65440/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328/syncGroups/syncgroupcrud-3187/syncMembers/syncmembercrud-4879", + "name": "syncmembercrud-4879", + "type": "Microsoft.Sql/servers/databases/syncGroups/syncMembers" + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncMemberPatch.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncMemberPatch.json new file mode 100644 index 000000000000..b7769860a581 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncMemberPatch.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "syncgroupcrud-65440", + "serverName": "syncgroupcrud-8475", + "databaseName": "syncgroupcrud-4328", + "syncGroupName": "syncgroupcrud-3187", + "syncMemberName": "syncmembercrud-4879", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "databaseType": "AzureSqlDatabase", + "serverName": "syncgroupcrud-3379.database.windows.net", + "databaseName": "syncgroupcrud-7421", + "userName": "myUser", + "syncDirection": "Bidirectional", + "usePrivateLinkConnection": true, + "syncMemberAzureDatabaseResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-65440/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "databaseType": "AzureSqlDatabase", + "serverName": "syncgroupcrud-3379.database.windows.net", + "databaseName": "syncgroupcrud-7421", + "userName": "myUser", + "syncDirection": "Bidirectional", + "syncState": "UnProvisioned", + "usePrivateLinkConnection": true, + "privateEndpointName": "PE_67FDBBD6-B2D8-4014-9CC6-C68ABBCFD481_syncmembercrud-4879", + "syncMemberAzureDatabaseResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-65440/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-65440/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328/syncGroups/syncgroupcrud-3187/syncMembers/syncmembercrud-4879", + "name": "syncmembercrud-4879", + "type": "Microsoft.Sql/servers/databases/syncGroups/syncMembers" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncMemberRefreshSchema.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncMemberRefreshSchema.json new file mode 100644 index 000000000000..0a04c389dc19 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncMemberRefreshSchema.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "syncgroupcrud-65440", + "serverName": "syncgroupcrud-8475", + "databaseName": "syncgroupcrud-4328", + "syncGroupName": "syncgroupcrud-3187", + "syncMemberName": "syncgroupcrud-4879", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncMemberUpdate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncMemberUpdate.json new file mode 100644 index 000000000000..7b80c6ccd8f9 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/SyncMemberUpdate.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "syncgroupcrud-65440", + "serverName": "syncgroupcrud-8475", + "databaseName": "syncgroupcrud-4328", + "syncGroupName": "syncgroupcrud-3187", + "syncMemberName": "syncmembercrud-4879", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "databaseType": "AzureSqlDatabase", + "serverName": "syncgroupcrud-3379.database.windows.net", + "databaseName": "syncgroupcrud-7421", + "userName": "myUser", + "syncDirection": "Bidirectional", + "usePrivateLinkConnection": true, + "syncMemberAzureDatabaseResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-65440/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "databaseType": "AzureSqlDatabase", + "serverName": "syncgroupcrud-3379.database.windows.net", + "databaseName": "syncgroupcrud-7421", + "userName": "myUser", + "syncDirection": "Bidirectional", + "syncState": "UnProvisioned", + "usePrivateLinkConnection": true, + "privateEndpointName": "PE_67FDBBD6-B2D8-4014-9CC6-C68ABBCFD481_syncmembercrud-4879", + "syncMemberAzureDatabaseResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-65440/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-65440/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328/syncGroups/syncgroupcrud-3187/syncMembers/syncmembercrud-4879", + "name": "syncmembercrud-4879", + "type": "Microsoft.Sql/servers/databases/syncGroups/syncMembers" + } + }, + "201": { + "body": { + "properties": { + "databaseType": "AzureSqlDatabase", + "serverName": "syncgroupcrud-3379.database.windows.net", + "databaseName": "syncgroupcrud-7421", + "userName": "myUser", + "syncDirection": "Bidirectional", + "syncState": "UnProvisioned", + "usePrivateLinkConnection": true, + "privateEndpointName": "PE_67FDBBD6-B2D8-4014-9CC6-C68ABBCFD481_syncmembercrud-4879", + "syncMemberAzureDatabaseResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-65440/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-65440/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328/syncGroups/syncgroupcrud-3187/syncMembers/syncmembercrud-4879", + "name": "syncmembercrud-4879", + "type": "Microsoft.Sql/servers/databases/syncGroups/syncMembers" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/TransparentDataEncryptionGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/TransparentDataEncryptionGet.json new file mode 100644 index 000000000000..fcd6ab3b1755 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/TransparentDataEncryptionGet.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "security-tde-resourcegroup", + "serverName": "securitytde", + "databaseName": "testdb", + "tdeName": "current", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/security-tde-resourcegroup/providers/Microsoft.Sql/servers/securitytde/databases/testdb", + "name": "current", + "type": "Microsoft.Sql/servers/databases/transparentDataEncryption", + "properties": { + "state": "Enabled" + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/TransparentDataEncryptionList.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/TransparentDataEncryptionList.json new file mode 100644 index 000000000000..af2e6cd5dad7 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/TransparentDataEncryptionList.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "security-tde-resourcegroup", + "serverName": "securitytde", + "databaseName": "testdb", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/security-tde-resourcegroup/providers/Microsoft.Sql/servers/securitytde/databases/testdb", + "name": "current", + "type": "Microsoft.Sql/servers/databases/transparentDataEncryption", + "properties": { + "state": "Enabled" + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/TransparentDataEncryptionUpdate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/TransparentDataEncryptionUpdate.json new file mode 100644 index 000000000000..495b79302be4 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/TransparentDataEncryptionUpdate.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "securitytde-42-rg", + "serverName": "securitytde-42", + "databaseName": "testdb", + "tdeName": "current", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "state": "Enabled" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/securitytde-42-rg/providers/Microsoft.Sql/servers/securitytde-42/databases/testdb/transparentDataEncryption", + "name": "current", + "type": "Microsoft.Sql/servers/databases/transparentDataEncryption", + "properties": { + "state": "Enabled" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/securitytde-42-rg/providers/Microsoft.Sql/servers/securitytde-42/databases/testdb/transparentDataEncryption", + "name": "current", + "type": "Microsoft.Sql/servers/databases/transparentDataEncryption", + "properties": { + "state": "Enabled" + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/UpdateJobAgent.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/UpdateJobAgent.json new file mode 100644 index 000000000000..7ee8d11dfb8a --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/UpdateJobAgent.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "group1", + "serverName": "server1", + "jobAgentName": "agent1", + "api-version": "2021-02-01-preview", + "parameters": { + "tags": { + "mytag1": "myvalue1" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1", + "name": "agent1", + "type": "Microsoft.Sql/servers/jobAgents", + "location": "southeastasia", + "properties": { + "databaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/databases/db1" + }, + "tags": { + "mytag1": "myvalue1" + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/UpdateManagedInstanceDnsServers.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/UpdateManagedInstanceDnsServers.json new file mode 100644 index 000000000000..b3ea0d2bdf11 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/UpdateManagedInstanceDnsServers.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "virtualClusterName": "sqlcrudtest-4645", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/test-rg/providers/Microsoft.Sql/virtualClusters/test-virtualcluster/updateManagedInstanceDnsServers", + "properties": { + "status": "Succeeded" + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/UpdateManagedShortTermRetentionPolicy.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/UpdateManagedShortTermRetentionPolicy.json new file mode 100644 index 000000000000..ef77ebe227b1 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/UpdateManagedShortTermRetentionPolicy.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup", + "managedInstanceName": "testsvr", + "databaseName": "testdb", + "policyName": "default", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "retentionDays": 14 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup/providers/Microsoft.Sql/managedInstances/testsvr/databases/testdb/backupShortTermRetentionPolicies/default", + "name": "default", + "type": "Microsoft.Sql/managedInstances/databases/backupShortTermRetentionPolicies", + "properties": { + "retentionDays": 14 + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/UpdateManagedShortTermRetentionPolicyRestorableDropped.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/UpdateManagedShortTermRetentionPolicyRestorableDropped.json new file mode 100644 index 000000000000..75c248f3ab47 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/UpdateManagedShortTermRetentionPolicyRestorableDropped.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup", + "managedInstanceName": "testsvr", + "restorableDroppedDatabaseId": "testdb,131403269876900000", + "policyName": "default", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "retentionDays": 14 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup/providers/Microsoft.Sql/managedInstances/testsvr/restorableDroppedDatabases/testdb,131403269876900000/backupShortTermRetentionPolicies/default", + "name": "default", + "type": "Microsoft.Sql/managedInstances/restorableDroppedDatabases/backupShortTermRetentionPolicies", + "properties": { + "retentionDays": 14 + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/UpdateShortTermRetentionPolicy.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/UpdateShortTermRetentionPolicy.json new file mode 100644 index 000000000000..af12547f3bd0 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/UpdateShortTermRetentionPolicy.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup", + "serverName": "testsvr", + "databaseName": "testdb", + "policyName": "default", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "retentionDays": 14 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/resourceGroups/resourceGroup/servers/testsvr/databases/testdb/backupShortTermRetentionPolicies/default", + "name": "default", + "type": "Microsoft.Sql/servers/databases/backupShortTermRetentionPolicies", + "properties": { + "retentionDays": 14 + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/UpgradeDataWarehouse.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/UpgradeDataWarehouse.json new file mode 100644 index 000000000000..794f41bddc1a --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/UpgradeDataWarehouse.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdwdb", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/VirtualClusterDelete.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/VirtualClusterDelete.json new file mode 100644 index 000000000000..614b7df308eb --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/VirtualClusterDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "20d7082a-0fc7-4468-82bd-542694d5042b", + "resourceGroupName": "testrg", + "virtualClusterName": "vc-subnet1-f769ed71-b3ad-491a-a9d5-26eeceaa6be2", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/VirtualClusterGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/VirtualClusterGet.json new file mode 100644 index 000000000000..4ae4b2e89c31 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/VirtualClusterGet.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "20d7082a-0fc7-4468-82bd-542694d5042b", + "resourceGroupName": "testrg", + "virtualClusterName": "vc-subnet1-f769ed71-b3ad-491a-a9d5-26eeceaa6be2", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "family": "Gen4", + "childResources": [ + "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Sql/managedInstances/testinstance1", + "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Sql/managedInstances/testinstance2" + ], + "maintenanceConfigurationId": "/subscriptions/ab0e51c0-83c0-4380-8ae9-025516df392f/resourceGroups/Federation/providers/Microsoft.Maintenance/maintenanceConfigurations/MiPolicy1" + }, + "location": "onebox", + "id": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/testrg/providers/Microsoft.Sql/virtualClusters/vc-subnet1-f769ed71-b3ad-491a-a9d5-26eeceaa6be2", + "name": "vc-subnet1-f769ed71-b3ad-491a-a9d5-26eeceaa6be2", + "type": "Microsoft.Sql/virtualClusters" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/VirtualClusterList.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/VirtualClusterList.json new file mode 100644 index 000000000000..9beaf91b6bd6 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/VirtualClusterList.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "20d7082a-0fc7-4468-82bd-542694d5042b", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "family": "Gen4", + "childResources": [ + "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Sql/managedInstances/testinstance1", + "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Sql/managedInstances/testinstance2" + ], + "maintenanceConfigurationId": "/subscriptions/ab0e51c0-83c0-4380-8ae9-025516df392f/resourceGroups/Federation/providers/Microsoft.Maintenance/maintenanceConfigurations/MiPolicy1" + }, + "location": "onebox", + "id": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/testrg/providers/Microsoft.Sql/virtualClusters/vc-subnet1-f769ed71-b3ad-491a-a9d5-26eeceaa6be2", + "name": "vc-subnet1-f769ed71-b3ad-491a-a9d5-26eeceaa6be2", + "type": "Microsoft.Sql/virtualClusters" + }, + { + "properties": { + "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/subnet2", + "family": "Gen5", + "childResources": [ + "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Sql/managedInstances/testinstance3", + "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Sql/managedInstances/testinstance4" + ], + "maintenanceConfigurationId": "/subscriptions/ab0e51c0-83c0-4380-8ae9-025516df392f/resourceGroups/Federation/providers/Microsoft.Maintenance/maintenanceConfigurations/MiPolicy1" + }, + "location": "onebox", + "id": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/testrg/providers/Microsoft.Sql/virtualClusters/vc-subnet2-14b795bd-9c8f-46ec-adb8-2b8eff56ac16", + "name": "vc-subnet1-14b795bd-9c8f-46ec-adb8-2b8eff56ac16", + "type": "Microsoft.Sql/virtualClusters" + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/VirtualClusterListByResourceGroup.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/VirtualClusterListByResourceGroup.json new file mode 100644 index 000000000000..417d01ac8799 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/VirtualClusterListByResourceGroup.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "20d7082a-0fc7-4468-82bd-542694d5042b", + "resourceGroupName": "testrg", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "family": "Gen4", + "childResources": [ + "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Sql/managedInstances/testinstance1", + "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Sql/managedInstances/testinstance2" + ], + "maintenanceConfigurationId": "/subscriptions/ab0e51c0-83c0-4380-8ae9-025516df392f/resourceGroups/Federation/providers/Microsoft.Maintenance/maintenanceConfigurations/MiPolicy1" + }, + "location": "onebox", + "id": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/testrg/providers/Microsoft.Sql/virtualClusters/vc-subnet1-f769ed71-b3ad-491a-a9d5-26eeceaa6be2", + "name": "vc-subnet1-f769ed71-b3ad-491a-a9d5-26eeceaa6be2", + "type": "Microsoft.Sql/virtualClusters" + }, + { + "properties": { + "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/subnet2", + "family": "Gen4", + "childResources": [ + "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Sql/managedInstances/testinstance3", + "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Sql/managedInstances/testinstance4" + ], + "maintenanceConfigurationId": "/subscriptions/ab0e51c0-83c0-4380-8ae9-025516df392f/resourceGroups/Federation/providers/Microsoft.Maintenance/maintenanceConfigurations/MiPolicy1" + }, + "location": "onebox", + "id": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/testrg/providers/Microsoft.Sql/virtualClusters/vc-subnet2-14b795bd-9c8f-46ec-adb8-2b8eff56ac16", + "name": "vc-subnet1-14b795bd-9c8f-46ec-adb8-2b8eff56ac16", + "type": "Microsoft.Sql/virtualClusters" + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/VirtualClusterUpdate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/VirtualClusterUpdate.json new file mode 100644 index 000000000000..7d2c70050bab --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/VirtualClusterUpdate.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "20d7082a-0fc7-4468-82bd-542694d5042b", + "resourceGroupName": "testrg", + "virtualClusterName": "vc-subnet1-f769ed71-b3ad-491a-a9d5-26eeceaa6be2", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "maintenanceConfigurationId": "/subscriptions/ab0e51c0-83c0-4380-8ae9-025516df392f/resourceGroups/Federation/providers/Microsoft.Maintenance/maintenanceConfigurations/MiPolicy1" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "subnetId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "childResources": [ + "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Sql/managedInstances/testinstance1", + "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Sql/managedInstances/testinstance2" + ], + "maintenanceConfigurationId": "/subscriptions/ab0e51c0-83c0-4380-8ae9-025516df392f/resourceGroups/Federation/providers/Microsoft.Maintenance/maintenanceConfigurations/MiPolicy1" + }, + "location": "onebox", + "id": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/testrg/providers/Microsoft.Sql/virtualClusters/vc-subnet1-f769ed71-b3ad-491a-a9d5-26eeceaa6be2", + "name": "vc-subnet1-f769ed71-b3ad-491a-a9d5-26eeceaa6be2", + "type": "Microsoft.Sql/virtualClusters" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/VirtualNetworkRulesCreateOrUpdate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/VirtualNetworkRulesCreateOrUpdate.json new file mode 100644 index 000000000000..548a8e6724a6 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/VirtualNetworkRulesCreateOrUpdate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "vnet-test-svr", + "virtualNetworkRuleName": "vnet-firewall-rule", + "api-version": "2021-02-01-preview", + "parameters": { + "properties": { + "ignoreMissingVnetServiceEndpoint": false, + "virtualNetworkSubnetId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Network/virtualNetworks/testvnet/subnets/testsubnet" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/vnet-test-svr/virtualNetworkRules/vnet-firewall-rule", + "name": "vnet-firewall-rule", + "type": "Microsoft.Sql/servers/virtualNetworkRules", + "properties": { + "ignoreMissingVnetServiceEndpoint": false, + "virtualNetworkSubnetId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Network/virtualNetworks/testvnet/subnets/testsubnet" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/vnet-test-svr/virtualNetworkRules/vnet-firewall-rule", + "name": "vnet-firewall-rule", + "type": "Microsoft.Sql/servers/virtualNetworkRules", + "properties": { + "ignoreMissingVnetServiceEndpoint": false, + "virtualNetworkSubnetId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Network/virtualNetworks/testvnet/subnets/testsubnet" + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/VirtualNetworkRulesDelete.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/VirtualNetworkRulesDelete.json new file mode 100644 index 000000000000..274131c9e1a2 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/VirtualNetworkRulesDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "vnet-test-svr", + "virtualNetworkRuleName": "vnet-firewall-rule", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/VirtualNetworkRulesGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/VirtualNetworkRulesGet.json new file mode 100644 index 000000000000..d8ea6c73984d --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/VirtualNetworkRulesGet.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "vnet-test-svr", + "virtualNetworkRuleName": "vnet-firewall-rule", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/vnet-test-svr/virtualNetworkRules/vnet-firewall-rule", + "name": "vnet-firewall-rule", + "type": "Microsoft.Sql/servers/virtualNetworkRules", + "properties": { + "ignoreMissingVnetServiceEndpoint": false, + "state": "Ready", + "virtualNetworkSubnetId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Network/virtualNetworks/testvnet/subnets/testsubnet" + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/VirtualNetworkRulesList.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/VirtualNetworkRulesList.json new file mode 100644 index 000000000000..7308fa56e084 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2021-02-01-preview/examples/VirtualNetworkRulesList.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "vnet-test-svr", + "virtualNetworkRuleName": "vnet-firewall-rule", + "api-version": "2021-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/vnet-test-svr/virtualNetworkRules/vnet-firewall-rule", + "name": "vnet-firewall-rule", + "type": "Microsoft.Sql/servers/virtualNetworkRules", + "properties": { + "ignoreMissingVnetServiceEndpoint": false, + "state": "Ready", + "virtualNetworkSubnetId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Network/virtualNetworks/testvnet/subnets/testsubnet" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/vnet-test-svr/virtualNetworkRules/vnet-firewall-rule", + "name": "vnet-firewall-rule", + "type": "Microsoft.Sql/servers/virtualNetworkRules", + "properties": { + "ignoreMissingVnetServiceEndpoint": false, + "state": "Ready", + "virtualNetworkSubnetId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Network/virtualNetworks/testvnet/subnets/testsubnet" + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/stable/2014-04-01/backups_legacy.json b/specification/sql/resource-manager/Microsoft.Sql/stable/2014-04-01/backups_legacy.json new file mode 100644 index 000000000000..de8c9fbc093b --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/stable/2014-04-01/backups_legacy.json @@ -0,0 +1,189 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure SQL Database Backup", + "description": "Provides read functionality for Azure SQL Database Backups", + "version": "2014-04-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/recoverableDatabases/{databaseName}": { + "get": { + "tags": [ + "RecoverableDatabases" + ], + "operationId": "RecoverableDatabases_Get", + "description": "Gets a recoverable database, which is a resource representing a database's geo backup", + "x-ms-examples": { + "Get a recoverable database": { + "$ref": "./examples/RecoverableDatabaseGet.json" + } + }, + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "databaseName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the database" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoverableDatabase" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/recoverableDatabases": { + "get": { + "tags": [ + "RecoverableDatabases" + ], + "operationId": "RecoverableDatabases_ListByServer", + "description": "Gets a list of recoverable databases", + "x-ms-examples": { + "Get list of restorable dropped databases": { + "$ref": "./examples/RecoverableDatabaseList.json" + } + }, + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoverableDatabaseListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + } + }, + "definitions": { + "RecoverableDatabaseProperties": { + "properties": { + "edition": { + "readOnly": true, + "type": "string", + "description": "The edition of the database" + }, + "serviceLevelObjective": { + "readOnly": true, + "type": "string", + "description": "The service level objective name of the database" + }, + "elasticPoolName": { + "readOnly": true, + "type": "string", + "description": "The elastic pool name of the database" + }, + "lastAvailableBackupDate": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The last available backup date of the database (ISO8601 format)" + } + }, + "description": "The properties of a recoverable database" + }, + "RecoverableDatabase": { + "properties": { + "properties": { + "$ref": "#/definitions/RecoverableDatabaseProperties", + "description": "The properties of a recoverable database", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "A recoverable database" + }, + "RecoverableDatabaseListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RecoverableDatabase" + }, + "description": "A list of recoverable databases" + } + }, + "required": [ + "value" + ], + "description": "The response to a list recoverable databases request" + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the server.", + "x-ms-parameter-location": "method" + }, + "DatabaseExpandParameter": { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "A comma separated list of child objects to expand in the response. Possible properties: serviceTierAdvisors, transparentDataEncryption.", + "x-ms-parameter-location": "method" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/stable/2014-04-01/examples/ElasticPoolDatabaseActivityList.json b/specification/sql/resource-manager/Microsoft.Sql/stable/2014-04-01/examples/ElasticPoolDatabaseActivityList.json index 15abc8d9de56..9b3cbffecb52 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/stable/2014-04-01/examples/ElasticPoolDatabaseActivityList.json +++ b/specification/sql/resource-manager/Microsoft.Sql/stable/2014-04-01/examples/ElasticPoolDatabaseActivityList.json @@ -24,8 +24,8 @@ "errorCode": null, "errorMessage": null, "errorSeverity": null, - "startTime": "2016-10-23T03:07:12.577", - "endTime": "2016-10-23T03:08:02.95", + "startTime": "2016-10-23T03:07:12.57Z", + "endTime": "2016-10-23T03:08:02.95Z", "percentComplete": 100, "currentServiceObjective": "ElasticPool", "requestedServiceObjective": null, @@ -47,8 +47,8 @@ "errorCode": null, "errorMessage": null, "errorSeverity": null, - "startTime": "2016-10-23T03:06:11.19", - "endTime": "2016-10-23T03:06:49.197", + "startTime": "2016-10-23T03:06:11.19Z", + "endTime": "2016-10-23T03:06:49.19Z", "percentComplete": 100, "currentServiceObjective": "ElasticPool", "requestedServiceObjective": null, diff --git a/specification/sql/resource-manager/Microsoft.Sql/stable/2014-04-01/replicationLinks_legacy.json b/specification/sql/resource-manager/Microsoft.Sql/stable/2014-04-01/replicationLinks_legacy.json new file mode 100644 index 000000000000..92d38a3738dd --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/stable/2014-04-01/replicationLinks_legacy.json @@ -0,0 +1,264 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure SQL Database replication links", + "description": "Provides read, delete, and failover functionality for Azure SQL Database replication links.", + "version": "2014-04-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/replicationLinks/{linkId}": { + "delete": { + "tags": [ + "DatabaseReplicationLinks" + ], + "operationId": "ReplicationLinks_Delete", + "description": "Deletes a database replication link. Cannot be done during failover.", + "x-ms-examples": { + "Delete a replication link": { + "$ref": "./examples/ReplicationLinkDelete.json" + } + }, + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "databaseName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the database that has the replication link to be dropped." + }, + { + "name": "linkId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the replication link to be deleted." + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "NoContent" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/replicationLinks/{linkId}/failover": { + "post": { + "tags": [ + "DatabaseReplicationLinks" + ], + "operationId": "ReplicationLinks_Failover", + "description": "Sets which replica database is primary by failing over from the current primary replica database.", + "x-ms-examples": { + "Failover a replication link": { + "$ref": "./examples/ReplicationLinkFailover.json" + } + }, + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "databaseName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the database that has the replication link to be failed over." + }, + { + "name": "linkId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the replication link to be failed over." + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/replicationLinks/{linkId}/forceFailoverAllowDataLoss": { + "post": { + "tags": [ + "DatabaseReplicationLinks" + ], + "operationId": "ReplicationLinks_FailoverAllowDataLoss", + "description": "Sets which replica database is primary by failing over from the current primary replica database. This operation might result in data loss.", + "x-ms-examples": { + "Failover a replication link": { + "$ref": "./examples/ReplicationLinkFailover.json" + } + }, + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "databaseName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the database that has the replication link to be failed over." + }, + { + "name": "linkId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the replication link to be failed over." + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/replicationLinks/{linkId}/unlink": { + "post": { + "tags": [ + "DatabaseReplicationLinks" + ], + "operationId": "ReplicationLinks_Unlink", + "description": "Deletes a database replication link in forced or friendly way.", + "x-ms-examples": { + "Delete replication link": { + "$ref": "./examples/ReplicationLinkUnlink.json" + } + }, + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "databaseName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the database that has the replication link to be failed over." + }, + { + "name": "linkId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the replication link to be failed over." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/UnlinkParameters" + }, + "description": "The required parameters for unlinking replication link." + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + } + }, + "definitions": { + "UnlinkParameters": { + "properties": { + "forcedTermination": { + "type": "boolean", + "description": "Determines whether link will be terminated in a forced or a friendly way." + } + }, + "description": "Represents the parameters for Unlink Replication Link request." + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the server.", + "x-ms-parameter-location": "method" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/stable/2014-04-01/sql.core_legacy.json b/specification/sql/resource-manager/Microsoft.Sql/stable/2014-04-01/sql.core_legacy.json new file mode 100644 index 000000000000..6badae492b8b --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/stable/2014-04-01/sql.core_legacy.json @@ -0,0 +1,812 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure SQL Database", + "description": "Provides create, read, update and delete functionality for Azure SQL Database resources including recommendations and operations.", + "version": "2014-04-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/elasticPools/{elasticPoolName}/elasticPoolActivity": { + "get": { + "tags": [ + "ElasticPools" + ], + "operationId": "ElasticPoolActivities_ListByElasticPool", + "description": "Returns elastic pool activities.", + "x-ms-examples": { + "List Elastic pool activity": { + "$ref": "./examples/ElasticPoolActivityList.json" + } + }, + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "elasticPoolName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the elastic pool for which to get the current activity." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ElasticPoolActivityListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/elasticPools/{elasticPoolName}/elasticPoolDatabaseActivity": { + "get": { + "tags": [ + "ElasticPools" + ], + "operationId": "ElasticPoolDatabaseActivities_ListByElasticPool", + "description": "Returns activity on databases inside of an elastic pool.", + "x-ms-examples": { + "List elastic pool database activity": { + "$ref": "./examples/ElasticPoolDatabaseActivityList.json" + } + }, + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "elasticPoolName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the elastic pool." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ElasticPoolDatabaseActivityListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/transparentDataEncryption/{transparentDataEncryptionName}": { + "put": { + "tags": [ + "TransparentDataEncryption" + ], + "operationId": "TransparentDataEncryptions_CreateOrUpdate", + "description": "Creates or updates a database's transparent data encryption configuration.", + "x-ms-examples": { + "Create or update a database's transparent data encryption configuration": { + "$ref": "./examples/DatabaseTransparentDataEncryptionCreateOrUpdate.json" + } + }, + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "databaseName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the database for which setting the transparent data encryption applies." + }, + { + "$ref": "#/parameters/TransparentDataEncryptionNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TransparentDataEncryption" + }, + "description": "The required parameters for creating or updating transparent data encryption." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TransparentDataEncryption" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/TransparentDataEncryption" + } + } + } + }, + "get": { + "tags": [ + "TransparentDataEncryption" + ], + "operationId": "TransparentDataEncryptions_Get", + "description": "Gets a database's transparent data encryption configuration.", + "x-ms-examples": { + "Get a database's transparent data encryption configuration": { + "$ref": "./examples/DatabaseTransparentDataEncryptionGet.json" + } + }, + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "databaseName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the database for which the transparent data encryption applies." + }, + { + "$ref": "#/parameters/TransparentDataEncryptionNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TransparentDataEncryption" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/transparentDataEncryption/{transparentDataEncryptionName}/operationResults": { + "get": { + "tags": [ + "TransparentDataEncryption" + ], + "operationId": "TransparentDataEncryptionActivities_ListByConfiguration", + "description": "Returns a database's transparent data encryption operation result.", + "x-ms-examples": { + "List a database's transparent data encryption activities": { + "$ref": "./examples/DatabaseTransparentDataEncryptionActivityList.json" + } + }, + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "databaseName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the database for which the transparent data encryption applies." + }, + { + "$ref": "#/parameters/TransparentDataEncryptionNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TransparentDataEncryptionActivityListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + } + }, + "definitions": { + "ElasticPoolActivityProperties": { + "properties": { + "endTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The time the operation finished (ISO8601 format)." + }, + "errorCode": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The error code if available." + }, + "errorMessage": { + "readOnly": true, + "type": "string", + "description": "The error message if available." + }, + "errorSeverity": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The error severity if available." + }, + "operation": { + "readOnly": true, + "type": "string", + "description": "The operation name." + }, + "operationId": { + "readOnly": true, + "type": "string", + "format": "uuid", + "description": "The unique operation ID.", + "x-nullable": false + }, + "percentComplete": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The percentage complete if available." + }, + "requestedDatabaseDtuMax": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The requested max DTU per database if available." + }, + "requestedDatabaseDtuMin": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The requested min DTU per database if available." + }, + "requestedDtu": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The requested DTU for the pool if available." + }, + "requestedElasticPoolName": { + "readOnly": true, + "type": "string", + "description": "The requested name for the elastic pool if available." + }, + "requestedStorageLimitInGB": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The requested storage limit for the pool in GB if available." + }, + "elasticPoolName": { + "readOnly": true, + "type": "string", + "description": "The name of the elastic pool." + }, + "serverName": { + "readOnly": true, + "type": "string", + "description": "The name of the server the elastic pool is in." + }, + "startTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The time the operation started (ISO8601 format)." + }, + "state": { + "readOnly": true, + "type": "string", + "description": "The current state of the operation." + }, + "requestedStorageLimitInMB": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The requested storage limit in MB." + }, + "requestedDatabaseDtuGuarantee": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The requested per database DTU guarantee." + }, + "requestedDatabaseDtuCap": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The requested per database DTU cap." + }, + "requestedDtuGuarantee": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The requested DTU guarantee." + } + }, + "description": "Represents the properties of an elastic pool." + }, + "ElasticPoolActivity": { + "properties": { + "location": { + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ], + "description": "The geo-location where the resource lives" + }, + "properties": { + "$ref": "#/definitions/ElasticPoolActivityProperties", + "description": "The properties representing the resource.", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "Represents the activity on an elastic pool." + }, + "ElasticPoolActivityListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ElasticPoolActivity" + }, + "description": "The list of elastic pool activities." + } + }, + "required": [ + "value" + ], + "description": "Represents the response to a list elastic pool activity request." + }, + "ElasticPoolDatabaseActivityProperties": { + "properties": { + "databaseName": { + "readOnly": true, + "type": "string", + "description": "The database name." + }, + "endTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The time the operation finished (ISO8601 format)." + }, + "errorCode": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The error code if available." + }, + "errorMessage": { + "readOnly": true, + "type": "string", + "description": "The error message if available." + }, + "errorSeverity": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The error severity if available." + }, + "operation": { + "readOnly": true, + "type": "string", + "description": "The operation name." + }, + "operationId": { + "readOnly": true, + "type": "string", + "format": "uuid", + "description": "The unique operation ID.", + "x-nullable": false + }, + "percentComplete": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The percentage complete if available." + }, + "requestedElasticPoolName": { + "readOnly": true, + "type": "string", + "description": "The name for the elastic pool the database is moving into if available." + }, + "currentElasticPoolName": { + "readOnly": true, + "type": "string", + "description": "The name of the current elastic pool the database is in if available." + }, + "currentServiceObjective": { + "readOnly": true, + "type": "string", + "description": "The name of the current service objective if available." + }, + "requestedServiceObjective": { + "readOnly": true, + "type": "string", + "description": "The name of the requested service objective if available." + }, + "serverName": { + "readOnly": true, + "type": "string", + "description": "The name of the server the elastic pool is in." + }, + "startTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The time the operation started (ISO8601 format)." + }, + "state": { + "readOnly": true, + "type": "string", + "description": "The current state of the operation." + } + }, + "description": "Represents the properties of an elastic pool database activity." + }, + "ElasticPoolDatabaseActivity": { + "properties": { + "location": { + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ], + "description": "The geo-location where the resource lives" + }, + "properties": { + "$ref": "#/definitions/ElasticPoolDatabaseActivityProperties", + "description": "The properties representing the resource.", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "Represents the activity on an elastic pool." + }, + "ElasticPoolDatabaseActivityListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ElasticPoolDatabaseActivity" + }, + "description": "The list of elastic pool database activities." + } + }, + "required": [ + "value" + ], + "description": "Represents the response to a list elastic pool database activity request." + }, + "TransparentDataEncryptionProperties": { + "properties": { + "status": { + "type": "string", + "description": "The status of the database transparent data encryption.", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "TransparentDataEncryptionStatus" + } + } + }, + "description": "Represents the properties of a database transparent data encryption." + }, + "TransparentDataEncryption": { + "properties": { + "location": { + "type": "string", + "readOnly": true, + "description": "Resource location." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/TransparentDataEncryptionProperties", + "description": "Represents the properties of the resource." + } + }, + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "Represents a database transparent data encryption configuration." + }, + "SloUsageMetric": { + "properties": { + "serviceLevelObjective": { + "type": "string", + "description": "The serviceLevelObjective for SLO usage metric.", + "enum": [ + "System", + "System0", + "System1", + "System2", + "System3", + "System4", + "System2L", + "System3L", + "System4L", + "Free", + "Basic", + "S0", + "S1", + "S2", + "S3", + "S4", + "S6", + "S7", + "S9", + "S12", + "P1", + "P2", + "P3", + "P4", + "P6", + "P11", + "P15", + "PRS1", + "PRS2", + "PRS4", + "PRS6", + "DW100", + "DW200", + "DW300", + "DW400", + "DW500", + "DW600", + "DW1000", + "DW1200", + "DW1000c", + "DW1500", + "DW1500c", + "DW2000", + "DW2000c", + "DW3000", + "DW2500c", + "DW3000c", + "DW6000", + "DW5000c", + "DW6000c", + "DW7500c", + "DW10000c", + "DW15000c", + "DW30000c", + "DS100", + "DS200", + "DS300", + "DS400", + "DS500", + "DS600", + "DS1000", + "DS1200", + "DS1500", + "DS2000", + "ElasticPool" + ], + "x-ms-enum": { + "modelAsString": true, + "name": "ServiceObjectiveName" + }, + "readOnly": true + }, + "serviceLevelObjectiveId": { + "type": "string", + "format": "uuid", + "description": "The serviceLevelObjectiveId for SLO usage metric.", + "readOnly": true, + "x-nullable": false + }, + "inRangeTimeRatio": { + "type": "number", + "format": "double", + "description": "Gets or sets inRangeTimeRatio for SLO usage metric.", + "readOnly": true, + "x-nullable": false + } + }, + "description": "A Slo Usage Metric." + }, + "OperationImpact": { + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the impact dimension." + }, + "unit": { + "readOnly": true, + "type": "string", + "description": "The unit in which estimated impact to dimension is measured." + }, + "changeValueAbsolute": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The absolute impact to dimension." + }, + "changeValueRelative": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The relative impact to dimension (null if not applicable)" + } + }, + "description": "The impact of an operation, both in absolute and relative terms." + }, + "TransparentDataEncryptionActivityProperties": { + "properties": { + "status": { + "readOnly": true, + "type": "string", + "description": "The status of the database.", + "enum": [ + "Encrypting", + "Decrypting" + ], + "x-ms-enum": { + "name": "TransparentDataEncryptionActivityStatus", + "modelAsString": true + } + }, + "percentComplete": { + "readOnly": true, + "type": "number", + "format": "float", + "description": "The percent complete of the transparent data encryption scan for a database." + } + }, + "description": "Represents the properties of a database transparent data encryption Scan." + }, + "TransparentDataEncryptionActivity": { + "properties": { + "location": { + "type": "string", + "readOnly": true, + "description": "Resource location." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/TransparentDataEncryptionActivityProperties", + "description": "Represents the properties of the resource." + } + }, + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "Represents a database transparent data encryption Scan." + }, + "TransparentDataEncryptionActivityListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/TransparentDataEncryptionActivity" + }, + "description": "The list of database transparent data encryption activities." + } + }, + "required": [ + "value" + ], + "description": "Represents the response to a list database transparent data encryption activity request." + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the server.", + "x-ms-parameter-location": "method" + }, + "DatabaseExpandParameter": { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "A comma separated list of child objects to expand in the response. Possible properties: serviceTierAdvisors, transparentDataEncryption.", + "x-ms-parameter-location": "method" + }, + "TransparentDataEncryptionNameParameter": { + "name": "transparentDataEncryptionName", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "current" + ], + "description": "The name of the transparent data encryption configuration.", + "x-ms-enum": { + "modelAsString": true, + "name": "TransparentDataEncryptionName" + }, + "x-ms-parameter-location": "method" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/stable/2014-04-01/usages_legacy.json b/specification/sql/resource-manager/Microsoft.Sql/stable/2014-04-01/usages_legacy.json new file mode 100644 index 000000000000..566fa5a341c3 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/stable/2014-04-01/usages_legacy.json @@ -0,0 +1,140 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure SQL Database", + "description": "Provides create, read, update and delete functionality for Azure SQL Database resources including servers, databases, elastic pools, recommendations, operations, and usage metrics.", + "version": "2014-04-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/usages": { + "get": { + "tags": [ + "Servers" + ], + "operationId": "ServerUsages_ListByServer", + "description": "Returns server usages.", + "x-ms-examples": { + "List servers usages": { + "$ref": "./examples/ServerUsageMetricsList.json" + } + }, + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ServerUsageListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + } + }, + "definitions": { + "ServerUsage": { + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "Name of the server usage metric." + }, + "resourceName": { + "readOnly": true, + "type": "string", + "description": "The name of the resource." + }, + "displayName": { + "readOnly": true, + "type": "string", + "description": "The metric display name." + }, + "currentValue": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The current value of the metric." + }, + "limit": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The current limit of the metric." + }, + "unit": { + "readOnly": true, + "type": "string", + "description": "The units of the metric." + }, + "nextResetTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The next reset time for the metric (ISO8601 format)." + } + }, + "description": "Represents server metrics." + }, + "ServerUsageListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ServerUsage" + }, + "description": "The list of server metrics for the server." + } + }, + "required": [ + "value" + ], + "description": "Represents the response to a list server metrics request." + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the server.", + "x-ms-parameter-location": "method" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/common/v1/types.json b/specification/sql/resource-manager/common/v1/types.json index 76517772a1e4..e6dd454ebd39 100644 --- a/specification/sql/resource-manager/common/v1/types.json +++ b/specification/sql/resource-manager/common/v1/types.json @@ -100,58 +100,53 @@ "systemData": { "description": "Metadata pertaining to creation and last modification of the resource.", "type": "object", + "readOnly": true, "properties": { "createdBy": { - "description": "A string identifier for the identity that created the resource.", "type": "string", - "readOnly": true + "description": "The identity that created the resource." }, "createdByType": { - "description": "The type of identity that created the resource: ", + "type": "string", + "description": "The type of identity that created the resource.", "enum": [ "User", "Application", "ManagedIdentity", "Key" ], - "type": "string", - "readOnly": true, "x-ms-enum": { "name": "createdByType", "modelAsString": true } }, "createdAt": { - "format": "date-time", - "description": "The timestamp of resource creation (UTC).", "type": "string", - "readOnly": true + "format": "date-time", + "description": "The timestamp of resource creation (UTC)." }, "lastModifiedBy": { - "description": "A string identifier for the identity that last modified the resource.", "type": "string", - "readOnly": true + "description": "The identity that last modified the resource." }, "lastModifiedByType": { - "description": "The type of identity that last modified the resource: ", + "type": "string", + "description": "The type of identity that last modified the resource.", "enum": [ "User", "Application", "ManagedIdentity", "Key" ], - "type": "string", - "readOnly": true, "x-ms-enum": { "name": "createdByType", "modelAsString": true } }, "lastModifiedAt": { - "format": "date-time", - "description": "The timestamp of last modification (UTC).", "type": "string", - "readOnly": true + "format": "date-time", + "description": "The timestamp of resource last modification (UTC)" } } }, diff --git a/specification/sql/resource-manager/common/v2/types.json b/specification/sql/resource-manager/common/v2/types.json new file mode 100644 index 000000000000..9cd1182902d7 --- /dev/null +++ b/specification/sql/resource-manager/common/v2/types.json @@ -0,0 +1,66 @@ +{ + "swagger": "2.0", + "info": { + "version": "v2", + "title": "Common types" + }, + "paths": {}, + "definitions": { + "UserIdentity": { + "description": "Azure Active Directory identity configuration for a resource.", + "type": "object", + "properties": { + "principalId": { + "format": "uuid", + "description": "The Azure Active Directory principal id.", + "type": "string", + "readOnly": true + }, + "clientId": { + "format": "uuid", + "description": "The Azure Active Directory client id.", + "type": "string", + "readOnly": true + } + } + }, + "ResourceIdentity": { + "description": "Azure Active Directory identity configuration for a resource.", + "type": "object", + "properties": { + "userAssignedIdentities": { + "description": "The resource ids of the user assigned identities to use", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/UserIdentity" + } + }, + "principalId": { + "format": "uuid", + "description": "The Azure Active Directory principal id.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The identity type. Set this to 'SystemAssigned' in order to automatically create and assign an Azure Active Directory principal for the resource.", + "enum": [ + "None", + "SystemAssigned", + "UserAssigned" + ], + "type": "string", + "x-ms-enum": { + "name": "IdentityType", + "modelAsString": true + } + }, + "tenantId": { + "format": "uuid", + "description": "The Azure Active Directory tenant id.", + "type": "string", + "readOnly": true + } + } + } + } +} diff --git a/specification/sql/resource-manager/readme.azureresourceschema.md b/specification/sql/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index f9bad379bec2..000000000000 --- a/specification/sql/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,521 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-sql-2020-08-01-preview - - tag: schema-sql-2020-02-02-preview - - tag: schema-sql-2019-06-01-preview - - tag: schema-sql-2018-06-01-preview - - tag: schema-sql-2017-10-01-preview - - tag: schema-sql-2017-03-01-preview - - tag: schema-sql-2015-05-01-preview - - tag: schema-sql-2015-05-01 - - tag: schema-sql-2014-04-01 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-sql-2020-08-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-sql-2020-08-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Sql/preview/2020-08-01-preview/LocationCapabilities.json - - Microsoft.Sql/preview/2020-08-01-preview/Databases_legacy.json - - Microsoft.Sql/preview/2020-08-01-preview/ElasticPools.json - - Microsoft.Sql/preview/2020-08-01-preview/ServerDevOpsAudit.json - - ./Microsoft.Sql/preview/2020-08-01-preview/BackupShortTermRetentionPolicies.json - - ./Microsoft.Sql/preview/2020-08-01-preview/BlobAuditing.json - - ./Microsoft.Sql/preview/2020-08-01-preview/DatabaseAdvisors.json - - ./Microsoft.Sql/preview/2020-08-01-preview/DatabaseAutomaticTuning.json - - ./Microsoft.Sql/preview/2020-08-01-preview/DatabaseColumns.json - - ./Microsoft.Sql/preview/2020-08-01-preview/DatabaseExtensions.json - - ./Microsoft.Sql/preview/2020-08-01-preview/DatabaseOperations.json - - ./Microsoft.Sql/preview/2020-08-01-preview/DatabaseRecommendedActions.json - - ./Microsoft.Sql/preview/2020-08-01-preview/Databases.json - - ./Microsoft.Sql/preview/2020-08-01-preview/Databases_legacy.json - - ./Microsoft.Sql/preview/2020-08-01-preview/DatabaseSchemas.json - - ./Microsoft.Sql/preview/2020-08-01-preview/DatabaseSecurityAlertPolicies.json - - ./Microsoft.Sql/preview/2020-08-01-preview/DatabaseTables.json - - ./Microsoft.Sql/preview/2020-08-01-preview/DatabaseUsages.json - - ./Microsoft.Sql/preview/2020-08-01-preview/DatabaseVulnerabilityAssesmentRuleBaselines.json - - ./Microsoft.Sql/preview/2020-08-01-preview/DatabaseVulnerabilityAssessments.json - - ./Microsoft.Sql/preview/2020-08-01-preview/DatabaseVulnerabilityAssessmentScans.json - - ./Microsoft.Sql/preview/2020-08-01-preview/DataWarehouseUserActivities.json - - ./Microsoft.Sql/preview/2020-08-01-preview/DeletedServers.json - - ./Microsoft.Sql/preview/2020-08-01-preview/ElasticPoolOperations.json - - ./Microsoft.Sql/preview/2020-08-01-preview/ElasticPools.json - - ./Microsoft.Sql/preview/2020-08-01-preview/EncryptionProtectors.json - - ./Microsoft.Sql/preview/2020-08-01-preview/FailoverGroups.json - - ./Microsoft.Sql/preview/2020-08-01-preview/FirewallRules.json - - ./Microsoft.Sql/preview/2020-08-01-preview/InstanceFailoverGroups.json - - ./Microsoft.Sql/preview/2020-08-01-preview/InstancePools.json - - ./Microsoft.Sql/preview/2020-08-01-preview/JobAgents.json - - ./Microsoft.Sql/preview/2020-08-01-preview/JobCredentials.json - - ./Microsoft.Sql/preview/2020-08-01-preview/JobExecutions.json - - ./Microsoft.Sql/preview/2020-08-01-preview/Jobs.json - - ./Microsoft.Sql/preview/2020-08-01-preview/JobStepExecutions.json - - ./Microsoft.Sql/preview/2020-08-01-preview/JobSteps.json - - ./Microsoft.Sql/preview/2020-08-01-preview/JobTargetExecutions.json - - ./Microsoft.Sql/preview/2020-08-01-preview/JobTargetGroups.json - - ./Microsoft.Sql/preview/2020-08-01-preview/JobVersions.json - - ./Microsoft.Sql/preview/2020-08-01-preview/LocationCapabilities.json - - ./Microsoft.Sql/preview/2020-08-01-preview/LongTermRetentionBackups.json - - ./Microsoft.Sql/preview/2020-08-01-preview/LongTermRetentionManagedInstanceBackups.json - - ./Microsoft.Sql/preview/2020-08-01-preview/LongTermRetentionPolicies.json - - ./Microsoft.Sql/preview/2020-08-01-preview/MaintenanceWindowOptions.json - - ./Microsoft.Sql/preview/2020-08-01-preview/MaintenanceWindows.json - - ./Microsoft.Sql/preview/2020-08-01-preview/ManagedBackupShortTermRetentionPolicies.json - - ./Microsoft.Sql/preview/2020-08-01-preview/ManagedDatabaseColumns.json - - ./Microsoft.Sql/preview/2020-08-01-preview/ManagedDatabaseQueries.json - - ./Microsoft.Sql/preview/2020-08-01-preview/ManagedDatabaseRestoreDetails.json - - ./Microsoft.Sql/preview/2020-08-01-preview/ManagedDatabases.json - - ./Microsoft.Sql/preview/2020-08-01-preview/ManagedDatabaseSchemas.json - - ./Microsoft.Sql/preview/2020-08-01-preview/ManagedDatabaseSecurityAlertPolicies.json - - ./Microsoft.Sql/preview/2020-08-01-preview/ManagedDatabaseSecurityEvents.json - - ./Microsoft.Sql/preview/2020-08-01-preview/ManagedDatabaseSensitivityLabels.json - - ./Microsoft.Sql/preview/2020-08-01-preview/ManagedDatabaseTables.json - - ./Microsoft.Sql/preview/2020-08-01-preview/ManagedDatabaseTransparentDataEncryption.json - - ./Microsoft.Sql/preview/2020-08-01-preview/ManagedDatabaseVulnerabilityAssessmentRuleBaselines.json - - ./Microsoft.Sql/preview/2020-08-01-preview/ManagedDatabaseVulnerabilityAssessments.json - - ./Microsoft.Sql/preview/2020-08-01-preview/ManagedDatabaseVulnerabilityAssessmentScans.json - - ./Microsoft.Sql/preview/2020-08-01-preview/ManagedInstanceAdministrators.json - - ./Microsoft.Sql/preview/2020-08-01-preview/ManagedInstanceAzureADOnlyAuthentications.json - - ./Microsoft.Sql/preview/2020-08-01-preview/ManagedInstanceEncryptionProtectors.json - - ./Microsoft.Sql/preview/2020-08-01-preview/ManagedInstanceKeys.json - - ./Microsoft.Sql/preview/2020-08-01-preview/ManagedInstanceLongTermRetentionPolicies.json - - ./Microsoft.Sql/preview/2020-08-01-preview/ManagedInstanceOperations.json - - ./Microsoft.Sql/preview/2020-08-01-preview/ManagedInstancePrivateEndpointConnections.json - - ./Microsoft.Sql/preview/2020-08-01-preview/ManagedInstancePrivateLinkResources.json - - ./Microsoft.Sql/preview/2020-08-01-preview/ManagedInstances.json - - ./Microsoft.Sql/preview/2020-08-01-preview/ManagedInstanceTdeCertificates.json - - ./Microsoft.Sql/preview/2020-08-01-preview/ManagedInstanceVulnerabilityAssessments.json - - ./Microsoft.Sql/preview/2020-08-01-preview/ManagedRestorableDroppedDatabaseBackupShortTermRetentionPolicies.json - - ./Microsoft.Sql/preview/2020-08-01-preview/ManagedServerSecurityAlertPolicies.json - - ./Microsoft.Sql/preview/2020-08-01-preview/Operations.json - - ./Microsoft.Sql/preview/2020-08-01-preview/OperationsHealth.json - - ./Microsoft.Sql/preview/2020-08-01-preview/PrivateEndpointConnections.json - - ./Microsoft.Sql/preview/2020-08-01-preview/PrivateLinkResources.json - - ./Microsoft.Sql/preview/2020-08-01-preview/RecoverableManagedDatabases.json - - ./Microsoft.Sql/preview/2020-08-01-preview/ReplicationLinks.json - - ./Microsoft.Sql/preview/2020-08-01-preview/RestorableDroppedDatabases.json - - ./Microsoft.Sql/preview/2020-08-01-preview/RestorableDroppedManagedDatabases.json - - ./Microsoft.Sql/preview/2020-08-01-preview/RestorePoints.json - - ./Microsoft.Sql/preview/2020-08-01-preview/SensitivityLabels.json - - ./Microsoft.Sql/preview/2020-08-01-preview/ServerAdvisors.json - - ./Microsoft.Sql/preview/2020-08-01-preview/ServerAutomaticTuning.json - - ./Microsoft.Sql/preview/2020-08-01-preview/ServerAzureADAdministrators.json - - ./Microsoft.Sql/preview/2020-08-01-preview/ServerAzureADOnlyAuthentications.json - - ./Microsoft.Sql/preview/2020-08-01-preview/ServerDevOpsAudit.json - - ./Microsoft.Sql/preview/2020-08-01-preview/ServerDnsAliases.json - - ./Microsoft.Sql/preview/2020-08-01-preview/ServerKeys.json - - ./Microsoft.Sql/preview/2020-08-01-preview/ServerOperations.json - - ./Microsoft.Sql/preview/2020-08-01-preview/Servers.json - - ./Microsoft.Sql/preview/2020-08-01-preview/ServerSecurityAlertPolicies.json - - ./Microsoft.Sql/preview/2020-08-01-preview/ServerTrustGroups.json - - ./Microsoft.Sql/preview/2020-08-01-preview/ServerVulnerabilityAssessments.json - - ./Microsoft.Sql/preview/2020-08-01-preview/SqlAgent.json - - ./Microsoft.Sql/preview/2020-08-01-preview/SubscriptionUsages.json - - ./Microsoft.Sql/preview/2020-08-01-preview/SyncAgents.json - - ./Microsoft.Sql/preview/2020-08-01-preview/SyncGroups.json - - ./Microsoft.Sql/preview/2020-08-01-preview/SyncMembers.json - - ./Microsoft.Sql/preview/2020-08-01-preview/TdeCertificates.json - - ./Microsoft.Sql/preview/2020-08-01-preview/TimeZones.json - - ./Microsoft.Sql/preview/2020-08-01-preview/TransparentDataEncryptions.json - - ./Microsoft.Sql/preview/2020-08-01-preview/VirtualClusters.json - - ./Microsoft.Sql/preview/2020-08-01-preview/VirtualNetworkRules.json - - ./Microsoft.Sql/preview/2020-08-01-preview/WorkloadClassifiers.json - - ./Microsoft.Sql/preview/2020-08-01-preview/WorkloadGroups.json - -``` - -### Tag: schema-sql-2020-02-02-preview and azureresourceschema - -``` yaml $(tag) == 'schema-sql-2020-02-02-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Sql/preview/2020-02-02-preview/ImportExport.json - - Microsoft.Sql/preview/2020-02-02-preview/ManagedDatabases.json - - Microsoft.Sql/preview/2020-02-02-preview/ManagedDatabaseRestoreDetails.json - - Microsoft.Sql/preview/2020-02-02-preview/ServerAzureADOnlyAuthentications.json - - Microsoft.Sql/preview/2020-02-02-preview/ManagedInstances.json - - Microsoft.Sql/preview/2020-02-02-preview/ManagedInstanceAzureADOnlyAuthentications.json - - Microsoft.Sql/preview/2020-02-02-preview/ServerTrustGroups.json - - ./Microsoft.Sql/preview/2020-02-02-preview/BackupShortTermRetentionPolicies.json - - ./Microsoft.Sql/preview/2020-02-02-preview/BlobAuditing.json - - ./Microsoft.Sql/preview/2020-02-02-preview/DatabaseAdvisors.json - - ./Microsoft.Sql/preview/2020-02-02-preview/DatabaseAutomaticTuning.json - - ./Microsoft.Sql/preview/2020-02-02-preview/DatabaseColumns.json - - ./Microsoft.Sql/preview/2020-02-02-preview/DatabaseOperations.json - - ./Microsoft.Sql/preview/2020-02-02-preview/DatabaseRecommendedActions.json - - ./Microsoft.Sql/preview/2020-02-02-preview/Databases.json - - ./Microsoft.Sql/preview/2020-02-02-preview/DatabaseSchemas.json - - ./Microsoft.Sql/preview/2020-02-02-preview/DatabaseSecurityAlertPolicies.json - - ./Microsoft.Sql/preview/2020-02-02-preview/DatabaseTables.json - - ./Microsoft.Sql/preview/2020-02-02-preview/DatabaseUsages.json - - ./Microsoft.Sql/preview/2020-02-02-preview/DatabaseVulnerabilityAssesmentRuleBaselines.json - - ./Microsoft.Sql/preview/2020-02-02-preview/DatabaseVulnerabilityAssessments.json - - ./Microsoft.Sql/preview/2020-02-02-preview/DatabaseVulnerabilityAssessmentScans.json - - ./Microsoft.Sql/preview/2020-02-02-preview/DataWarehouseUserActivities.json - - ./Microsoft.Sql/preview/2020-02-02-preview/DeletedServers.json - - ./Microsoft.Sql/preview/2020-02-02-preview/ElasticPoolOperations.json - - ./Microsoft.Sql/preview/2020-02-02-preview/ElasticPools.json - - ./Microsoft.Sql/preview/2020-02-02-preview/EncryptionProtectors.json - - ./Microsoft.Sql/preview/2020-02-02-preview/FailoverGroups.json - - ./Microsoft.Sql/preview/2020-02-02-preview/FirewallRules.json - - ./Microsoft.Sql/preview/2020-02-02-preview/ImportExport.json - - ./Microsoft.Sql/preview/2020-02-02-preview/InstanceFailoverGroups.json - - ./Microsoft.Sql/preview/2020-02-02-preview/InstancePools.json - - ./Microsoft.Sql/preview/2020-02-02-preview/JobAgents.json - - ./Microsoft.Sql/preview/2020-02-02-preview/JobCredentials.json - - ./Microsoft.Sql/preview/2020-02-02-preview/JobExecutions.json - - ./Microsoft.Sql/preview/2020-02-02-preview/Jobs.json - - ./Microsoft.Sql/preview/2020-02-02-preview/JobStepExecutions.json - - ./Microsoft.Sql/preview/2020-02-02-preview/JobSteps.json - - ./Microsoft.Sql/preview/2020-02-02-preview/JobTargetExecutions.json - - ./Microsoft.Sql/preview/2020-02-02-preview/JobTargetGroups.json - - ./Microsoft.Sql/preview/2020-02-02-preview/JobVersions.json - - ./Microsoft.Sql/preview/2020-02-02-preview/LocationCapabilities.json - - ./Microsoft.Sql/preview/2020-02-02-preview/LongTermRetentionBackups.json - - ./Microsoft.Sql/preview/2020-02-02-preview/LongTermRetentionManagedInstanceBackups.json - - ./Microsoft.Sql/preview/2020-02-02-preview/LongTermRetentionPolicies.json - - ./Microsoft.Sql/preview/2020-02-02-preview/MaintenanceWindowOptions.json - - ./Microsoft.Sql/preview/2020-02-02-preview/MaintenanceWindows.json - - ./Microsoft.Sql/preview/2020-02-02-preview/ManagedBackupShortTermRetentionPolicies.json - - ./Microsoft.Sql/preview/2020-02-02-preview/ManagedDatabaseColumns.json - - ./Microsoft.Sql/preview/2020-02-02-preview/ManagedDatabaseQueries.json - - ./Microsoft.Sql/preview/2020-02-02-preview/ManagedDatabaseRestoreDetails.json - - ./Microsoft.Sql/preview/2020-02-02-preview/ManagedDatabases.json - - ./Microsoft.Sql/preview/2020-02-02-preview/ManagedDatabaseSchemas.json - - ./Microsoft.Sql/preview/2020-02-02-preview/ManagedDatabaseSecurityAlertPolicies.json - - ./Microsoft.Sql/preview/2020-02-02-preview/ManagedDatabaseSecurityEvents.json - - ./Microsoft.Sql/preview/2020-02-02-preview/ManagedDatabaseSensitivityLabels.json - - ./Microsoft.Sql/preview/2020-02-02-preview/ManagedDatabaseTables.json - - ./Microsoft.Sql/preview/2020-02-02-preview/ManagedDatabaseTransparentDataEncryption.json - - ./Microsoft.Sql/preview/2020-02-02-preview/ManagedDatabaseVulnerabilityAssessmentRuleBaselines.json - - ./Microsoft.Sql/preview/2020-02-02-preview/ManagedDatabaseVulnerabilityAssessments.json - - ./Microsoft.Sql/preview/2020-02-02-preview/ManagedDatabaseVulnerabilityAssessmentScans.json - - ./Microsoft.Sql/preview/2020-02-02-preview/ManagedInstanceAdministrators.json - - ./Microsoft.Sql/preview/2020-02-02-preview/ManagedInstanceAzureADOnlyAuthentications.json - - ./Microsoft.Sql/preview/2020-02-02-preview/ManagedInstanceEncryptionProtectors.json - - ./Microsoft.Sql/preview/2020-02-02-preview/ManagedInstanceKeys.json - - ./Microsoft.Sql/preview/2020-02-02-preview/ManagedInstanceLongTermRetentionPolicies.json - - ./Microsoft.Sql/preview/2020-02-02-preview/ManagedInstanceOperations.json - - ./Microsoft.Sql/preview/2020-02-02-preview/ManagedInstancePrivateEndpointConnections.json - - ./Microsoft.Sql/preview/2020-02-02-preview/ManagedInstancePrivateLinkResources.json - - ./Microsoft.Sql/preview/2020-02-02-preview/ManagedInstances.json - - ./Microsoft.Sql/preview/2020-02-02-preview/ManagedInstanceTdeCertificates.json - - ./Microsoft.Sql/preview/2020-02-02-preview/ManagedInstanceVulnerabilityAssessments.json - - ./Microsoft.Sql/preview/2020-02-02-preview/ManagedRestorableDroppedDatabaseBackupShortTermRetentionPolicies.json - - ./Microsoft.Sql/preview/2020-02-02-preview/ManagedServerSecurityAlertPolicies.json - - ./Microsoft.Sql/preview/2020-02-02-preview/Operations.json - - ./Microsoft.Sql/preview/2020-02-02-preview/OperationsHealth.json - - ./Microsoft.Sql/preview/2020-02-02-preview/PrivateEndpointConnections.json - - ./Microsoft.Sql/preview/2020-02-02-preview/PrivateLinkResources.json - - ./Microsoft.Sql/preview/2020-02-02-preview/RecoverableManagedDatabases.json - - ./Microsoft.Sql/preview/2020-02-02-preview/ReplicationLinks.json - - ./Microsoft.Sql/preview/2020-02-02-preview/RestorableDroppedDatabases.json - - ./Microsoft.Sql/preview/2020-02-02-preview/RestorableDroppedManagedDatabases.json - - ./Microsoft.Sql/preview/2020-02-02-preview/RestorePoints.json - - ./Microsoft.Sql/preview/2020-02-02-preview/SensitivityLabels.json - - ./Microsoft.Sql/preview/2020-02-02-preview/ServerAdvisors.json - - ./Microsoft.Sql/preview/2020-02-02-preview/ServerAutomaticTuning.json - - ./Microsoft.Sql/preview/2020-02-02-preview/ServerAzureADAdministrators.json - - ./Microsoft.Sql/preview/2020-02-02-preview/ServerAzureADOnlyAuthentications.json - - ./Microsoft.Sql/preview/2020-02-02-preview/ServerDevOpsAudit.json - - ./Microsoft.Sql/preview/2020-02-02-preview/ServerDnsAliases.json - - ./Microsoft.Sql/preview/2020-02-02-preview/ServerKeys.json - - ./Microsoft.Sql/preview/2020-02-02-preview/ServerOperations.json - - ./Microsoft.Sql/preview/2020-02-02-preview/Servers.json - - ./Microsoft.Sql/preview/2020-02-02-preview/ServerSecurityAlertPolicies.json - - ./Microsoft.Sql/preview/2020-02-02-preview/ServerTrustGroups.json - - ./Microsoft.Sql/preview/2020-02-02-preview/ServerVulnerabilityAssessments.json - - ./Microsoft.Sql/preview/2020-02-02-preview/SqlAgent.json - - ./Microsoft.Sql/preview/2020-02-02-preview/SubscriptionUsages.json - - ./Microsoft.Sql/preview/2020-02-02-preview/SyncAgents.json - - ./Microsoft.Sql/preview/2020-02-02-preview/SyncGroups.json - - ./Microsoft.Sql/preview/2020-02-02-preview/SyncMembers.json - - ./Microsoft.Sql/preview/2020-02-02-preview/TdeCertificates.json - - ./Microsoft.Sql/preview/2020-02-02-preview/TimeZones.json - - ./Microsoft.Sql/preview/2020-02-02-preview/TransparentDataEncryptions.json - - ./Microsoft.Sql/preview/2020-02-02-preview/VirtualClusters.json - - ./Microsoft.Sql/preview/2020-02-02-preview/VirtualNetworkRules.json - - ./Microsoft.Sql/preview/2020-02-02-preview/WorkloadClassifiers.json - - ./Microsoft.Sql/preview/2020-02-02-preview/WorkloadGroups.json - -``` - -### Tag: schema-sql-2019-06-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-sql-2019-06-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Sql/preview/2019-06-01-preview/servers.json - - Microsoft.Sql/preview/2019-06-01-preview/WorkloadGroups.json - - Microsoft.Sql/preview/2019-06-01-preview/WorkloadClassifiers.json - - Microsoft.Sql/preview/2019-06-01-preview/managedInstanceOperations.json - - Microsoft.Sql/preview/2019-06-01-preview/ServerAzureADAdministrators.json - - Microsoft.Sql/preview/2019-06-01-preview/syncGroups.json - - Microsoft.Sql/preview/2019-06-01-preview/syncMembers.json - - Microsoft.Sql/preview/2019-06-01-preview/databases.json - - ./Microsoft.Sql/preview/2019-06-01-preview/databases.json - - ./Microsoft.Sql/preview/2019-06-01-preview/managedDatabases.json - - ./Microsoft.Sql/preview/2019-06-01-preview/serverOperations.json - - ./Microsoft.Sql/preview/2019-06-01-preview/servers.json - - ./Microsoft.Sql/preview/2019-06-01-preview/WorkloadGroups.json - - ./Microsoft.Sql/preview/2019-06-01-preview/WorkloadClassifiers.json - - ./Microsoft.Sql/preview/2019-06-01-preview/managedInstanceOperations.json - - ./Microsoft.Sql/preview/2019-06-01-preview/ServerAzureADAdministrators.json - - ./Microsoft.Sql/preview/2019-06-01-preview/syncGroups.json - - ./Microsoft.Sql/preview/2019-06-01-preview/syncMembers.json - - ./Microsoft.Sql/preview/2019-06-01-preview/FailoverManagedInstance.json - -``` - -### Tag: schema-sql-2018-06-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-sql-2018-06-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Sql/preview/2018-06-01-preview/ManagedInstanceVulnerabilityAssessments.json - - Microsoft.Sql/preview/2018-06-01-preview/ServerVulnerabilityAssessments.json - - Microsoft.Sql/preview/2018-06-01-preview/managedDatabaseSensitivityLabels.json - - Microsoft.Sql/preview/2018-06-01-preview/instancePools.json - - Microsoft.Sql/preview/2018-06-01-preview/usages.json - - Microsoft.Sql/preview/2018-06-01-preview/PrivateEndpointConnections.json - - Microsoft.Sql/preview/2018-06-01-preview/PrivateLinkResources.json - - Microsoft.Sql/preview/2018-06-01-preview/LongTermRetentionManagedInstanceBackups.json - - Microsoft.Sql/preview/2018-06-01-preview/ManagedInstanceLongTermRetentionPolicies.json - - Microsoft.Sql/preview/2018-06-01-preview/FailoverElasticPools.json - - Microsoft.Sql/preview/2018-06-01-preview/capabilities.json - - Microsoft.Sql/preview/2018-06-01-preview/FailoverDatabases.json - - ./Microsoft.Sql/preview/2018-06-01-preview/DatabaseSecurityAlertPolicies.json - - ./Microsoft.Sql/preview/2018-06-01-preview/managedDatabaseSensitivityLabels.json - - ./Microsoft.Sql/preview/2018-06-01-preview/ManagedInstanceVulnerabilityAssessments.json - - ./Microsoft.Sql/preview/2018-06-01-preview/managedInstanceOperations.json - - ./Microsoft.Sql/preview/2018-06-01-preview/ServerVulnerabilityAssessments.json - - ./Microsoft.Sql/preview/2018-06-01-preview/instancePools.json - - ./Microsoft.Sql/preview/2018-06-01-preview/usages.json - - ./Microsoft.Sql/preview/2018-06-01-preview/managedInstances.json - - ./Microsoft.Sql/preview/2018-06-01-preview/managedDatabases.json - - ./Microsoft.Sql/preview/2018-06-01-preview/FailoverDatabases.json - - ./Microsoft.Sql/preview/2018-06-01-preview/FailoverElasticPools.json - - ./Microsoft.Sql/preview/2018-06-01-preview/PrivateEndpointConnections.json - - ./Microsoft.Sql/preview/2018-06-01-preview/ServerAzureADAdministrators.json - - ./Microsoft.Sql/preview/2018-06-01-preview/ManagedInstanceLongTermRetentionPolicies.json - - ./Microsoft.Sql/preview/2018-06-01-preview/LongTermRetentionManagedInstanceBackups.json - -``` - -### Tag: schema-sql-2017-10-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-sql-2017-10-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Sql/preview/2017-10-01-preview/cancelOperations.json - - Microsoft.Sql/preview/2017-10-01-preview/cancelPoolOperations.json - - Microsoft.Sql/preview/2017-10-01-preview/databaseVulnerabilityAssessmentScans.json - - Microsoft.Sql/preview/2017-10-01-preview/managedDatabaseVulnerabilityAssesmentRuleBaselines.json - - Microsoft.Sql/preview/2017-10-01-preview/managedDatabaseVulnerabilityAssessmentScans.json - - Microsoft.Sql/preview/2017-10-01-preview/managedDatabaseVulnerabilityAssessments.json - - Microsoft.Sql/preview/2017-10-01-preview/instanceFailoverGroups.json - - Microsoft.Sql/preview/2017-10-01-preview/TdeCertificates.json - - Microsoft.Sql/preview/2017-10-01-preview/ManagedInstanceTdeCertificates.json - - Microsoft.Sql/preview/2017-10-01-preview/ManagedInstanceKeys.json - - Microsoft.Sql/preview/2017-10-01-preview/ManagedInstanceEncryptionProtectors.json - - Microsoft.Sql/preview/2017-10-01-preview/recoverableManagedDatabases.json - - Microsoft.Sql/preview/2017-10-01-preview/shortTermRetentionPolicies.json - - Microsoft.Sql/preview/2017-10-01-preview/elasticPools.json - - ./Microsoft.Sql/preview/2017-10-01-preview/cancelOperations.json - - ./Microsoft.Sql/preview/2017-10-01-preview/cancelPoolOperations.json - - ./Microsoft.Sql/preview/2017-10-01-preview/databaseVulnerabilityAssessmentScans.json - - ./Microsoft.Sql/preview/2017-10-01-preview/managedDatabaseVulnerabilityAssesmentRuleBaselines.json - - ./Microsoft.Sql/preview/2017-10-01-preview/managedDatabaseVulnerabilityAssessmentScans.json - - ./Microsoft.Sql/preview/2017-10-01-preview/managedDatabaseVulnerabilityAssessments.json - - ./Microsoft.Sql/preview/2017-10-01-preview/capabilities.json - - ./Microsoft.Sql/preview/2017-10-01-preview/databases.json - - ./Microsoft.Sql/preview/2017-10-01-preview/elasticPools.json - - ./Microsoft.Sql/preview/2017-10-01-preview/instanceFailoverGroups.json - - ./Microsoft.Sql/preview/2017-10-01-preview/shortTermRetentionPolicies.json - - ./Microsoft.Sql/preview/2017-10-01-preview/TdeCertificates.json - - ./Microsoft.Sql/preview/2017-10-01-preview/ManagedInstanceTdeCertificates.json - - ./Microsoft.Sql/preview/2017-10-01-preview/ManagedInstanceKeys.json - - ./Microsoft.Sql/preview/2017-10-01-preview/ManagedInstanceEncryptionProtectors.json - - ./Microsoft.Sql/preview/2017-10-01-preview/recoverableManagedDatabases.json - -``` - -### Tag: schema-sql-2017-03-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-sql-2017-03-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Sql/preview/2017-03-01-preview/blobAuditing.json - - Microsoft.Sql/preview/2017-03-01-preview/databaseVulnerabilityAssessmentBaselines.json - - Microsoft.Sql/preview/2017-03-01-preview/databaseVulnerabilityAssessments.json - - Microsoft.Sql/preview/2017-03-01-preview/jobs.json - - Microsoft.Sql/preview/2017-03-01-preview/longTermRetention.json - - Microsoft.Sql/preview/2017-03-01-preview/ManagedBackupShortTermRetention.json - - Microsoft.Sql/preview/2017-03-01-preview/ManagedRestorableDroppedDatabaseBackupShortTermRetenion.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/serverSecurityAlertPolicies.json - - Microsoft.Sql/preview/2017-03-01-preview/restorableDroppedManagedDatabases.json - - Microsoft.Sql/preview/2017-03-01-preview/restorePoints.json - - Microsoft.Sql/preview/2017-03-01-preview/ManagedDatabaseSecurityAlertPolicies.json - - Microsoft.Sql/preview/2017-03-01-preview/ManagedServerSecurityAlertPolicy.json - - Microsoft.Sql/preview/2017-03-01-preview/SensitivityLabels.json - - Microsoft.Sql/preview/2017-03-01-preview/managedInstanceAdministrators.json - - Microsoft.Sql/preview/2017-03-01-preview/renameDatabase.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/managedDatabases.json - - ./Microsoft.Sql/preview/2017-03-01-preview/blobAuditing.json - - ./Microsoft.Sql/preview/2017-03-01-preview/cancelOperations.json - - ./Microsoft.Sql/preview/2017-03-01-preview/databases.json - - ./Microsoft.Sql/preview/2017-03-01-preview/databaseVulnerabilityAssessmentBaselines.json - - ./Microsoft.Sql/preview/2017-03-01-preview/databaseVulnerabilityAssessments.json - - ./Microsoft.Sql/preview/2017-03-01-preview/dataWarehouseUserActivities.json - - ./Microsoft.Sql/preview/2017-03-01-preview/jobs.json - - ./Microsoft.Sql/preview/2017-03-01-preview/longTermRetention.json - - ./Microsoft.Sql/preview/2017-03-01-preview/ManagedBackupShortTermRetention.json - - ./Microsoft.Sql/preview/2017-03-01-preview/managedDatabases.json - - ./Microsoft.Sql/preview/2017-03-01-preview/ManagedRestorableDroppedDatabaseBackupShortTermRetenion.json - - ./Microsoft.Sql/preview/2017-03-01-preview/renameDatabase.json - - ./Microsoft.Sql/preview/2017-03-01-preview/restorableDroppedManagedDatabases.json - - ./Microsoft.Sql/preview/2017-03-01-preview/restorePoints.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/serverSecurityAlertPolicies.json - - ./Microsoft.Sql/preview/2017-03-01-preview/ManagedDatabaseSecurityAlertPolicies.json - - ./Microsoft.Sql/preview/2017-03-01-preview/ManagedServerSecurityAlertPolicy.json - - ./Microsoft.Sql/preview/2017-03-01-preview/SensitivityLabels.json - - ./Microsoft.Sql/preview/2017-03-01-preview/managedInstanceAdministrators.json - -``` - -### Tag: schema-sql-2015-05-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-sql-2015-05-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - 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/syncAgents.json - - Microsoft.Sql/preview/2015-05-01-preview/usages.json - - Microsoft.Sql/preview/2015-05-01-preview/virtualclusters.json - - Microsoft.Sql/preview/2015-05-01-preview/virtualNetworkRules.json - - Microsoft.Sql/preview/2015-05-01-preview/managedInstances.json - - Microsoft.Sql/preview/2015-05-01-preview/servers.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/blobAuditing.json - - ./Microsoft.Sql/preview/2015-05-01-preview/advisors.json - - ./Microsoft.Sql/preview/2015-05-01-preview/blobAuditing.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/firewallRules.json - - ./Microsoft.Sql/preview/2015-05-01-preview/managedInstances.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/virtualclusters.json - - ./Microsoft.Sql/preview/2015-05-01-preview/virtualNetworkRules.json - -``` - -### Tag: schema-sql-2015-05-01 and azureresourceschema - -``` yaml $(tag) == 'schema-sql-2015-05-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Sql/stable/2015-05-01/capabilities.json - -``` - -### Tag: schema-sql-2014-04-01 and azureresourceschema - -``` yaml $(tag) == 'schema-sql-2014-04-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Sql/stable/2014-04-01/backups.json - - Microsoft.Sql/stable/2014-04-01/connectionPolicies.json - - Microsoft.Sql/stable/2014-04-01/databaseSecurityAlertPolicies.json - - Microsoft.Sql/stable/2014-04-01/dataMasking.json - - Microsoft.Sql/stable/2014-04-01/firewallRules.json - - Microsoft.Sql/stable/2014-04-01/geoBackupPolicies.json - - Microsoft.Sql/stable/2014-04-01/metrics.json - - Microsoft.Sql/stable/2014-04-01/recommendedElasticPoolsDecoupled.json - - Microsoft.Sql/stable/2014-04-01/replicationLinks.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/stable/2014-04-01/capabilities.json - - Microsoft.Sql/stable/2014-04-01/databases.json - - Microsoft.Sql/stable/2014-04-01/elasticPools.json - - Microsoft.Sql/stable/2014-04-01/importExport.json - - Microsoft.Sql/stable/2014-04-01/recommendedElasticPools.json - - Microsoft.Sql/stable/2014-04-01/checkNameAvailability.json - - Microsoft.Sql/stable/2014-04-01/serverAzureADAdministrators.json - - Microsoft.Sql/stable/2014-04-01/restorePoints.json - - ./Microsoft.Sql/stable/2014-04-01/advisors.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/deprecated.json - - ./Microsoft.Sql/stable/2014-04-01/disasterRecoveryConfigurations.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/operations.json - - ./Microsoft.Sql/stable/2014-04-01/queries.json - - ./Microsoft.Sql/stable/2014-04-01/recommendedElasticPools.json - - ./Microsoft.Sql/stable/2014-04-01/replicationLinks.json - - ./Microsoft.Sql/stable/2014-04-01/restorePoints.json - - ./Microsoft.Sql/stable/2014-04-01/serverAzureADAdministrators.json - - ./Microsoft.Sql/stable/2014-04-01/serverCommunicationLinks.json - - ./Microsoft.Sql/stable/2014-04-01/servers.json - - ./Microsoft.Sql/stable/2014-04-01/serviceObjectives.json - - ./Microsoft.Sql/stable/2014-04-01/sql.core.json - - ./Microsoft.Sql/stable/2014-04-01/tableAuditing.json - - ./Microsoft.Sql/stable/2014-04-01/usages.json - -``` diff --git a/specification/sql/resource-manager/readme.go.md b/specification/sql/resource-manager/readme.go.md index 8aa27cf5a2c4..ccb2f1970385 100644 --- a/specification/sql/resource-manager/readme.go.md +++ b/specification/sql/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: sql clear-output-folder: true ``` diff --git a/specification/sql/resource-manager/readme.md b/specification/sql/resource-manager/readme.md index e5f2ccae5061..2e836179d4f8 100644 --- a/specification/sql/resource-manager/readme.md +++ b/specification/sql/resource-manager/readme.md @@ -24,13 +24,143 @@ These are the global settings for the Sql API. 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-composite-v4 +tag: package-composite-v5 ``` ### Composite packages The following packages may be composed from multiple api-versions. +### Tag: package-composite-v5 + +These settings apply only when `--tag=package-composite-v5` is specified on the command line. + +This section contains the "composite-v5" set of APIs, which is composed from a selection of api-versions that will remain backwards compatible with "v5" clients such as .NET SDK Microsoft.Azure.Management.Sql version 1.44.3.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-v5' +input-file: +- Microsoft.Sql/stable/2014-04-01/backups_legacy.json +- Microsoft.Sql/stable/2014-04-01/connectionPolicies.json +- Microsoft.Sql/stable/2014-04-01/dataMasking.json +- Microsoft.Sql/stable/2014-04-01/geoBackupPolicies.json +- Microsoft.Sql/stable/2014-04-01/metrics.json +- Microsoft.Sql/stable/2014-04-01/replicationLinks_legacy.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_legacy.json +- Microsoft.Sql/stable/2014-04-01/usages_legacy.json +- ./Microsoft.Sql/preview/2020-11-01-preview/BackupShortTermRetentionPolicies.json +- ./Microsoft.Sql/preview/2020-11-01-preview/BlobAuditing.json +- ./Microsoft.Sql/preview/2020-11-01-preview/DatabaseAdvisors.json +- ./Microsoft.Sql/preview/2020-11-01-preview/DatabaseAutomaticTuning.json +- ./Microsoft.Sql/preview/2020-11-01-preview/DatabaseColumns.json +- ./Microsoft.Sql/preview/2020-11-01-preview/DatabaseRecommendedActions.json +- ./Microsoft.Sql/preview/2020-11-01-preview/DatabaseSchemas.json +- ./Microsoft.Sql/preview/2020-11-01-preview/DatabaseSecurityAlertPolicies.json +- ./Microsoft.Sql/preview/2020-11-01-preview/DatabaseTables.json +- ./Microsoft.Sql/preview/2020-11-01-preview/DatabaseVulnerabilityAssesmentRuleBaselines.json +- ./Microsoft.Sql/preview/2020-11-01-preview/DatabaseVulnerabilityAssessments.json +- ./Microsoft.Sql/preview/2020-11-01-preview/DatabaseVulnerabilityAssessmentScans.json +- ./Microsoft.Sql/preview/2020-11-01-preview/DataWarehouseUserActivities.json +- ./Microsoft.Sql/preview/2020-11-01-preview/DeletedServers.json +- ./Microsoft.Sql/preview/2020-11-01-preview/ElasticPoolOperations.json +- ./Microsoft.Sql/preview/2020-11-01-preview/ElasticPools.json +- ./Microsoft.Sql/preview/2020-11-01-preview/EncryptionProtectors.json +- ./Microsoft.Sql/preview/2020-11-01-preview/FailoverGroups.json +- ./Microsoft.Sql/preview/2020-11-01-preview/FirewallRules.json +- ./Microsoft.Sql/preview/2020-11-01-preview/InstanceFailoverGroups.json +- ./Microsoft.Sql/preview/2020-11-01-preview/InstancePools.json +- ./Microsoft.Sql/preview/2020-11-01-preview/JobAgents.json +- ./Microsoft.Sql/preview/2020-11-01-preview/JobCredentials.json +- ./Microsoft.Sql/preview/2020-11-01-preview/JobExecutions.json +- ./Microsoft.Sql/preview/2020-11-01-preview/Jobs.json +- ./Microsoft.Sql/preview/2020-11-01-preview/JobStepExecutions.json +- ./Microsoft.Sql/preview/2020-11-01-preview/JobSteps.json +- ./Microsoft.Sql/preview/2020-11-01-preview/JobTargetExecutions.json +- ./Microsoft.Sql/preview/2020-11-01-preview/JobTargetGroups.json +- ./Microsoft.Sql/preview/2020-11-01-preview/JobVersions.json +- ./Microsoft.Sql/preview/2020-11-01-preview/LocationCapabilities.json +- ./Microsoft.Sql/preview/2020-11-01-preview/LongTermRetentionBackups.json +- ./Microsoft.Sql/preview/2020-11-01-preview/LongTermRetentionManagedInstanceBackups.json +- ./Microsoft.Sql/preview/2020-11-01-preview/LongTermRetentionPolicies.json +- ./Microsoft.Sql/preview/2020-11-01-preview/MaintenanceWindowOptions.json +- ./Microsoft.Sql/preview/2020-11-01-preview/MaintenanceWindows.json +- ./Microsoft.Sql/preview/2020-11-01-preview/ManagedBackupShortTermRetentionPolicies.json +- ./Microsoft.Sql/preview/2020-11-01-preview/ManagedDatabaseColumns.json +- ./Microsoft.Sql/preview/2020-11-01-preview/ManagedDatabaseQueries.json +- ./Microsoft.Sql/preview/2020-11-01-preview/ManagedDatabaseRestoreDetails.json +- ./Microsoft.Sql/preview/2020-11-01-preview/ManagedDatabases.json +- ./Microsoft.Sql/preview/2020-11-01-preview/ManagedDatabaseSchemas.json +- ./Microsoft.Sql/preview/2020-11-01-preview/ManagedDatabaseSecurityAlertPolicies.json +- ./Microsoft.Sql/preview/2020-11-01-preview/ManagedDatabaseSecurityEvents.json +- ./Microsoft.Sql/preview/2020-11-01-preview/ManagedDatabaseSensitivityLabels.json +- ./Microsoft.Sql/preview/2020-11-01-preview/ManagedDatabaseTables.json +- ./Microsoft.Sql/preview/2020-11-01-preview/ManagedDatabaseTransparentDataEncryption.json +- ./Microsoft.Sql/preview/2020-11-01-preview/ManagedDatabaseVulnerabilityAssessmentRuleBaselines.json +- ./Microsoft.Sql/preview/2020-11-01-preview/ManagedDatabaseVulnerabilityAssessments.json +- ./Microsoft.Sql/preview/2020-11-01-preview/ManagedDatabaseVulnerabilityAssessmentScans.json +- ./Microsoft.Sql/preview/2020-11-01-preview/ManagedInstanceAdministrators.json +- ./Microsoft.Sql/preview/2020-11-01-preview/ManagedInstanceAzureADOnlyAuthentications.json +- ./Microsoft.Sql/preview/2020-11-01-preview/ManagedInstanceEncryptionProtectors.json +- ./Microsoft.Sql/preview/2020-11-01-preview/ManagedInstanceKeys.json +- ./Microsoft.Sql/preview/2020-11-01-preview/ManagedInstanceLongTermRetentionPolicies.json +- ./Microsoft.Sql/preview/2020-11-01-preview/ManagedInstanceOperations.json +- ./Microsoft.Sql/preview/2020-11-01-preview/ManagedInstancePrivateEndpointConnections.json +- ./Microsoft.Sql/preview/2020-11-01-preview/ManagedInstancePrivateLinkResources.json +- ./Microsoft.Sql/preview/2020-11-01-preview/ManagedInstances.json +- ./Microsoft.Sql/preview/2020-11-01-preview/ManagedInstanceTdeCertificates.json +- ./Microsoft.Sql/preview/2020-11-01-preview/ManagedInstanceVulnerabilityAssessments.json +- ./Microsoft.Sql/preview/2020-11-01-preview/ManagedRestorableDroppedDatabaseBackupShortTermRetentionPolicies.json +- ./Microsoft.Sql/preview/2020-11-01-preview/ManagedServerSecurityAlertPolicies.json +- ./Microsoft.Sql/preview/2020-11-01-preview/Operations.json +- ./Microsoft.Sql/preview/2020-11-01-preview/OperationsHealth.json +- ./Microsoft.Sql/preview/2020-11-01-preview/PrivateEndpointConnections.json +- ./Microsoft.Sql/preview/2020-11-01-preview/PrivateLinkResources.json +- ./Microsoft.Sql/preview/2020-11-01-preview/RecoverableManagedDatabases.json +- ./Microsoft.Sql/preview/2020-11-01-preview/ReplicationLinks.json +- ./Microsoft.Sql/preview/2020-11-01-preview/RestorePoints.json +- ./Microsoft.Sql/preview/2020-11-01-preview/SensitivityLabels.json +- ./Microsoft.Sql/preview/2020-11-01-preview/ServerAdvisors.json +- ./Microsoft.Sql/preview/2020-11-01-preview/ServerAutomaticTuning.json +- ./Microsoft.Sql/preview/2020-11-01-preview/ServerAzureADAdministrators.json +- ./Microsoft.Sql/preview/2020-11-01-preview/ServerAzureADOnlyAuthentications.json +- ./Microsoft.Sql/preview/2020-11-01-preview/ServerDevOpsAudit.json +- ./Microsoft.Sql/preview/2020-11-01-preview/ServerDnsAliases.json +- ./Microsoft.Sql/preview/2020-11-01-preview/ServerKeys.json +- ./Microsoft.Sql/preview/2020-11-01-preview/ServerOperations.json +- ./Microsoft.Sql/preview/2020-11-01-preview/ServerSecurityAlertPolicies.json +- ./Microsoft.Sql/preview/2020-11-01-preview/ServerTrustGroups.json +- ./Microsoft.Sql/preview/2020-11-01-preview/ServerVulnerabilityAssessments.json +- ./Microsoft.Sql/preview/2020-11-01-preview/SqlAgent.json +- ./Microsoft.Sql/preview/2020-11-01-preview/SubscriptionUsages.json +- ./Microsoft.Sql/preview/2020-11-01-preview/SyncAgents.json +- ./Microsoft.Sql/preview/2020-11-01-preview/SyncGroups.json +- ./Microsoft.Sql/preview/2020-11-01-preview/SyncMembers.json +- ./Microsoft.Sql/preview/2020-11-01-preview/TdeCertificates.json +- ./Microsoft.Sql/preview/2020-11-01-preview/TimeZones.json +- ./Microsoft.Sql/preview/2020-11-01-preview/VirtualClusters.json +- ./Microsoft.Sql/preview/2020-11-01-preview/VirtualNetworkRules.json +- ./Microsoft.Sql/preview/2020-11-01-preview/WorkloadClassifiers.json +- ./Microsoft.Sql/preview/2020-11-01-preview/WorkloadGroups.json +- ./Microsoft.Sql/preview/2021-02-01-preview/Databases.json +- ./Microsoft.Sql/preview/2021-02-01-preview/DatabaseExtensions.json +- ./Microsoft.Sql/preview/2021-02-01-preview/DatabaseOperations.json +- ./Microsoft.Sql/preview/2021-02-01-preview/DatabaseUsages.json +- ./Microsoft.Sql/preview/2021-02-01-preview/LedgerDigestUploads.json +- ./Microsoft.Sql/preview/2021-02-01-preview/OutboundFirewallRules.json +- ./Microsoft.Sql/preview/2021-02-01-preview/RestorableDroppedDatabases.json +- ./Microsoft.Sql/preview/2021-02-01-preview/RestorableDroppedManagedDatabases.json +- ./Microsoft.Sql/preview/2021-02-01-preview/Servers.json +- ./Microsoft.Sql/preview/2021-02-01-preview/Usages.json + + +# Needed when there is more than one input file +override-info: + title: SqlManagementClient +``` ### Tag: package-composite-v4 @@ -123,7 +253,7 @@ input-file: - Microsoft.Sql/preview/2020-02-02-preview/ServerTrustGroups.json - Microsoft.Sql/preview/2020-08-01-preview/ElasticPools.json - Microsoft.Sql/preview/2020-08-01-preview/ServerDevOpsAudit.json -- Microsoft.Sql/preview/2020-11-01-preview/Databases_legacy.json +- Microsoft.Sql/preview/2020-11-01-preview/Databases_legacy.json - Microsoft.Sql/preview/2020-11-01-preview/LongTermRetentionBackups.json - Microsoft.Sql/preview/2020-11-01-preview/LongTermRetentionPolicies.json - Microsoft.Sql/preview/2020-11-01-preview/PrivateEndpointConnections.json @@ -224,7 +354,6 @@ input-file: - Microsoft.Sql/preview/2018-06-01-preview/instancePools.json - Microsoft.Sql/preview/2018-06-01-preview/usages.json - Microsoft.Sql/preview/2018-06-01-preview/FailoverElasticPools.json -- Microsoft.Sql/preview/2018-06-01-preview/PrivateEndpointConnections.json - Microsoft.Sql/preview/2018-06-01-preview/PrivateLinkResources.json - Microsoft.Sql/preview/2019-06-01-preview/databases.json - Microsoft.Sql/preview/2019-06-01-preview/servers.json @@ -243,6 +372,7 @@ input-file: - Microsoft.Sql/preview/2020-02-02-preview/ManagedInstances.json - Microsoft.Sql/preview/2020-02-02-preview/ManagedInstanceAzureADOnlyAuthentications.json - Microsoft.Sql/preview/2020-02-02-preview/ServerTrustGroups.json +- Microsoft.Sql/preview/2020-11-01-preview/PrivateEndpointConnections.json # Needed when there is more than one input file @@ -333,7 +463,6 @@ input-file: - Microsoft.Sql/preview/2018-06-01-preview/usages.json - Microsoft.Sql/preview/2018-06-01-preview/FailoverDatabases.json - Microsoft.Sql/preview/2018-06-01-preview/FailoverElasticPools.json -- Microsoft.Sql/preview/2018-06-01-preview/PrivateEndpointConnections.json - Microsoft.Sql/preview/2018-06-01-preview/PrivateLinkResources.json - Microsoft.Sql/preview/2019-06-01-preview/servers.json - Microsoft.Sql/preview/2018-06-01-preview/LongTermRetentionManagedInstanceBackups.json @@ -348,6 +477,7 @@ input-file: - Microsoft.Sql/preview/2020-02-02-preview/ManagedInstances.json - Microsoft.Sql/preview/2020-02-02-preview/ManagedInstanceAzureADOnlyAuthentications.json - Microsoft.Sql/preview/2020-02-02-preview/ServerTrustGroups.json +- Microsoft.Sql/preview/2020-11-01-preview/PrivateEndpointConnections.json # Needed when there is more than one input file override-info: @@ -426,7 +556,6 @@ input-file: - Microsoft.Sql/preview/2018-06-01-preview/usages.json - Microsoft.Sql/preview/2018-06-01-preview/FailoverDatabases.json - Microsoft.Sql/preview/2018-06-01-preview/FailoverElasticPools.json -- Microsoft.Sql/preview/2018-06-01-preview/PrivateEndpointConnections.json - Microsoft.Sql/preview/2018-06-01-preview/PrivateLinkResources.json - Microsoft.Sql/preview/2019-06-01-preview/servers.json - Microsoft.Sql/preview/2018-06-01-preview/LongTermRetentionManagedInstanceBackups.json @@ -441,6 +570,7 @@ input-file: - Microsoft.Sql/preview/2020-02-02-preview/ManagedInstances.json - Microsoft.Sql/preview/2020-02-02-preview/ManagedInstanceAzureADOnlyAuthentications.json - Microsoft.Sql/preview/2020-02-02-preview/ServerTrustGroups.json +- Microsoft.Sql/preview/2020-11-01-preview/PrivateEndpointConnections.json # Needed when there is more than one input file override-info: @@ -585,6 +715,122 @@ override-info: The following packages are each composed of all apis from only one api-version. +### Tag: package-preview-2021-02 + +These settings apply only when `--tag=package-preview-2021-02` is specified on the command line. + +```yaml $(tag) == 'package-preview-2021-02' +input-file: + - ./Microsoft.Sql/preview/2021-02-01-preview/BackupShortTermRetentionPolicies.json + - ./Microsoft.Sql/preview/2021-02-01-preview/BlobAuditing.json + - ./Microsoft.Sql/preview/2021-02-01-preview/DatabaseAdvisors.json + - ./Microsoft.Sql/preview/2021-02-01-preview/DatabaseAutomaticTuning.json + - ./Microsoft.Sql/preview/2021-02-01-preview/DatabaseColumns.json + - ./Microsoft.Sql/preview/2021-02-01-preview/DatabaseExtensions.json + - ./Microsoft.Sql/preview/2021-02-01-preview/DatabaseOperations.json + - ./Microsoft.Sql/preview/2021-02-01-preview/DatabaseRecommendedActions.json + - ./Microsoft.Sql/preview/2021-02-01-preview/Databases.json + - ./Microsoft.Sql/preview/2021-02-01-preview/DatabaseSchemas.json + - ./Microsoft.Sql/preview/2021-02-01-preview/DatabaseSecurityAlertPolicies.json + - ./Microsoft.Sql/preview/2021-02-01-preview/DatabaseTables.json + - ./Microsoft.Sql/preview/2021-02-01-preview/DatabaseUsages.json + - ./Microsoft.Sql/preview/2021-02-01-preview/DatabaseVulnerabilityAssessmentRuleBaselines.json + - ./Microsoft.Sql/preview/2021-02-01-preview/DatabaseVulnerabilityAssessments.json + - ./Microsoft.Sql/preview/2021-02-01-preview/DatabaseVulnerabilityAssessmentScans.json + - ./Microsoft.Sql/preview/2021-02-01-preview/DataWarehouseUserActivities.json + - ./Microsoft.Sql/preview/2021-02-01-preview/DeletedServers.json + - ./Microsoft.Sql/preview/2021-02-01-preview/ElasticPoolOperations.json + - ./Microsoft.Sql/preview/2021-02-01-preview/ElasticPools.json + - ./Microsoft.Sql/preview/2021-02-01-preview/EncryptionProtectors.json + - ./Microsoft.Sql/preview/2021-02-01-preview/FailoverGroups.json + - ./Microsoft.Sql/preview/2021-02-01-preview/FirewallRules.json + - ./Microsoft.Sql/preview/2021-02-01-preview/InstanceFailoverGroups.json + - ./Microsoft.Sql/preview/2021-02-01-preview/InstancePools.json + - ./Microsoft.Sql/preview/2021-02-01-preview/JobAgents.json + - ./Microsoft.Sql/preview/2021-02-01-preview/JobCredentials.json + - ./Microsoft.Sql/preview/2021-02-01-preview/JobExecutions.json + - ./Microsoft.Sql/preview/2021-02-01-preview/Jobs.json + - ./Microsoft.Sql/preview/2021-02-01-preview/JobStepExecutions.json + - ./Microsoft.Sql/preview/2021-02-01-preview/JobSteps.json + - ./Microsoft.Sql/preview/2021-02-01-preview/JobTargetExecutions.json + - ./Microsoft.Sql/preview/2021-02-01-preview/JobTargetGroups.json + - ./Microsoft.Sql/preview/2021-02-01-preview/JobVersions.json + - ./Microsoft.Sql/preview/2021-02-01-preview/LedgerDigestUploads.json + - ./Microsoft.Sql/preview/2021-02-01-preview/LocationCapabilities.json + - ./Microsoft.Sql/preview/2021-02-01-preview/LongTermRetentionBackups.json + - ./Microsoft.Sql/preview/2021-02-01-preview/LongTermRetentionManagedInstanceBackups.json + - ./Microsoft.Sql/preview/2021-02-01-preview/LongTermRetentionPolicies.json + - ./Microsoft.Sql/preview/2021-02-01-preview/MaintenanceWindowOptions.json + - ./Microsoft.Sql/preview/2021-02-01-preview/MaintenanceWindows.json + - ./Microsoft.Sql/preview/2021-02-01-preview/ManagedBackupShortTermRetentionPolicies.json + - ./Microsoft.Sql/preview/2021-02-01-preview/ManagedDatabaseColumns.json + - ./Microsoft.Sql/preview/2021-02-01-preview/ManagedDatabaseQueries.json + - ./Microsoft.Sql/preview/2021-02-01-preview/ManagedDatabaseRestoreDetails.json + - ./Microsoft.Sql/preview/2021-02-01-preview/ManagedDatabases.json + - ./Microsoft.Sql/preview/2021-02-01-preview/ManagedDatabaseSchemas.json + - ./Microsoft.Sql/preview/2021-02-01-preview/ManagedDatabaseSecurityAlertPolicies.json + - ./Microsoft.Sql/preview/2021-02-01-preview/ManagedDatabaseSecurityEvents.json + - ./Microsoft.Sql/preview/2021-02-01-preview/ManagedDatabaseSensitivityLabels.json + - ./Microsoft.Sql/preview/2021-02-01-preview/ManagedDatabaseTables.json + - ./Microsoft.Sql/preview/2021-02-01-preview/ManagedDatabaseTransparentDataEncryption.json + - ./Microsoft.Sql/preview/2021-02-01-preview/ManagedDatabaseVulnerabilityAssessmentRuleBaselines.json + - ./Microsoft.Sql/preview/2021-02-01-preview/ManagedDatabaseVulnerabilityAssessments.json + - ./Microsoft.Sql/preview/2021-02-01-preview/ManagedDatabaseVulnerabilityAssessmentScans.json + - ./Microsoft.Sql/preview/2021-02-01-preview/ManagedInstanceAdministrators.json + - ./Microsoft.Sql/preview/2021-02-01-preview/ManagedInstanceAzureADOnlyAuthentications.json + - ./Microsoft.Sql/preview/2021-02-01-preview/ManagedInstanceEncryptionProtectors.json + - ./Microsoft.Sql/preview/2021-02-01-preview/ManagedInstanceKeys.json + - ./Microsoft.Sql/preview/2021-02-01-preview/ManagedInstanceLongTermRetentionPolicies.json + - ./Microsoft.Sql/preview/2021-02-01-preview/ManagedInstanceOperations.json + - ./Microsoft.Sql/preview/2021-02-01-preview/ManagedInstancePrivateEndpointConnections.json + - ./Microsoft.Sql/preview/2021-02-01-preview/ManagedInstancePrivateLinkResources.json + - ./Microsoft.Sql/preview/2021-02-01-preview/ManagedInstances.json + - ./Microsoft.Sql/preview/2021-02-01-preview/ManagedInstanceTdeCertificates.json + - ./Microsoft.Sql/preview/2021-02-01-preview/ManagedInstanceVulnerabilityAssessments.json + - ./Microsoft.Sql/preview/2021-02-01-preview/ManagedRestorableDroppedDatabaseBackupShortTermRetentionPolicies.json + - ./Microsoft.Sql/preview/2021-02-01-preview/ManagedServerSecurityAlertPolicies.json + - ./Microsoft.Sql/preview/2021-02-01-preview/Operations.json + - ./Microsoft.Sql/preview/2021-02-01-preview/OperationsHealth.json + - ./Microsoft.Sql/preview/2021-02-01-preview/OutboundFirewallRules.json + - ./Microsoft.Sql/preview/2021-02-01-preview/PrivateEndpointConnections.json + - ./Microsoft.Sql/preview/2021-02-01-preview/PrivateLinkResources.json + - ./Microsoft.Sql/preview/2021-02-01-preview/RecoverableManagedDatabases.json + - ./Microsoft.Sql/preview/2021-02-01-preview/ReplicationLinks.json + - ./Microsoft.Sql/preview/2021-02-01-preview/RestorableDroppedDatabases.json + - ./Microsoft.Sql/preview/2021-02-01-preview/RestorableDroppedManagedDatabases.json + - ./Microsoft.Sql/preview/2021-02-01-preview/RestorePoints.json + - ./Microsoft.Sql/preview/2021-02-01-preview/SensitivityLabels.json + - ./Microsoft.Sql/preview/2021-02-01-preview/ServerAdvisors.json + - ./Microsoft.Sql/preview/2021-02-01-preview/ServerAutomaticTuning.json + - ./Microsoft.Sql/preview/2021-02-01-preview/ServerAzureADAdministrators.json + - ./Microsoft.Sql/preview/2021-02-01-preview/ServerAzureADOnlyAuthentications.json + - ./Microsoft.Sql/preview/2021-02-01-preview/ServerDevOpsAudit.json + - ./Microsoft.Sql/preview/2021-02-01-preview/ServerDnsAliases.json + - ./Microsoft.Sql/preview/2021-02-01-preview/ServerKeys.json + - ./Microsoft.Sql/preview/2021-02-01-preview/ServerOperations.json + - ./Microsoft.Sql/preview/2021-02-01-preview/Servers.json + - ./Microsoft.Sql/preview/2021-02-01-preview/ServerSecurityAlertPolicies.json + - ./Microsoft.Sql/preview/2021-02-01-preview/ServerTrustGroups.json + - ./Microsoft.Sql/preview/2021-02-01-preview/ServerVulnerabilityAssessments.json + - ./Microsoft.Sql/preview/2021-02-01-preview/SqlAgent.json + - ./Microsoft.Sql/preview/2021-02-01-preview/SubscriptionUsages.json + - ./Microsoft.Sql/preview/2021-02-01-preview/SyncAgents.json + - ./Microsoft.Sql/preview/2021-02-01-preview/SyncGroups.json + - ./Microsoft.Sql/preview/2021-02-01-preview/SyncMembers.json + - ./Microsoft.Sql/preview/2021-02-01-preview/TdeCertificates.json + - ./Microsoft.Sql/preview/2021-02-01-preview/TimeZones.json + - ./Microsoft.Sql/preview/2021-02-01-preview/TransparentDataEncryptions.json + - ./Microsoft.Sql/preview/2021-02-01-preview/Usages.json + - ./Microsoft.Sql/preview/2021-02-01-preview/VirtualClusters.json + - ./Microsoft.Sql/preview/2021-02-01-preview/VirtualNetworkRules.json + - ./Microsoft.Sql/preview/2021-02-01-preview/WorkloadClassifiers.json + - ./Microsoft.Sql/preview/2021-02-01-preview/WorkloadGroups.json + +# Needed when there is more than one input file +override-info: + title: SqlManagementClient +``` + ### Tag: package-preview-2020-11 These settings apply only when `--tag=package-preview-2020-11` is specified on the command line. @@ -595,7 +841,7 @@ APIs must only be added to this section when the API is publicly available in at These can be regenerated by running the following PowerShell script from this readme file's folder: `dir .\Microsoft.Sql\preview\2020-11-01-preview\ -File | Resolve-Path -Relative | % { " - $_".Replace("\", "/") }` -```yaml $(tag) == 'package-preview-2020-11' +``` yaml $(tag) == 'package-preview-2020-11' input-file: - Microsoft.Sql/preview/2020-11-01-preview/BackupShortTermRetentionPolicies.json - Microsoft.Sql/preview/2020-11-01-preview/BlobAuditing.json @@ -699,7 +945,7 @@ input-file: - Microsoft.Sql/preview/2020-11-01-preview/VirtualNetworkRules.json - Microsoft.Sql/preview/2020-11-01-preview/WorkloadClassifiers.json - Microsoft.Sql/preview/2020-11-01-preview/WorkloadGroups.json - + # Needed when there is more than one input file override-info: title: SqlManagementClient @@ -1180,6 +1426,7 @@ This is not used by Autorest itself. swagger-to-sdk: - repo: azure-sdk-for-net - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-java - repo: azure-sdk-for-go - repo: azure-sdk-for-node @@ -1188,8 +1435,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_sql'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js sql/resource-manager ``` ### C# @@ -1208,33 +1453,7 @@ 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 - license-header: MICROSOFT_MIT_NO_VERSION - payload-flattening-threshold: 2 - namespace: azure.mgmt.sql - package-name: azure-mgmt-sql - package-version: 0.9.0 - clear-output-folder: true -``` - -``` yaml $(python) && $(python-mode) == 'update' -python: - no-namespace-folders: true - output-folder: $(python-sdks-folder)/sql/azure-mgmt-sql/azure/mgmt/sql -``` - -``` yaml $(python) && $(python-mode) == 'create' -python: - basic-setup-py: true - output-folder: $(python-sdks-folder)/sql/azure-mgmt-sql -``` +See configuration in [readme.python.md](./readme.python.md) ### Go @@ -1255,7 +1474,3 @@ directive: - suppress: EnumInsteadOfBoolean reason: This warning gives many positives for existing APIs that cannot be changed. ``` - -## AzureResourceSchema - -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/sql/resource-manager/readme.python.md b/specification/sql/resource-manager/readme.python.md new file mode 100644 index 000000000000..ec2988c8da73 --- /dev/null +++ b/specification/sql/resource-manager/readme.python.md @@ -0,0 +1,51 @@ +### 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) && !$(track2) +python-mode: create +python: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 2 + namespace: azure.mgmt.sql + package-name: azure-mgmt-sql + package-version: 0.9.0 + clear-output-folder: true +``` + +``` yaml $(python) && $(track2) +python-mode: create +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +namespace: azure.mgmt.sql +package-name: azure-mgmt-sql +package-version: 0.9.0 +clear-output-folder: true +modelerfour: + lenient-model-deduplication: true +``` + +``` yaml $(python) && $(python-mode) == 'update' && !$(track2) +python: + no-namespace-folders: true + output-folder: $(python-sdks-folder)/sql/azure-mgmt-sql/azure/mgmt/sql +``` + +``` yaml $(python) && $(python-mode) == 'create' && !$(track2) +python: + basic-setup-py: true + output-folder: $(python-sdks-folder)/sql/azure-mgmt-sql +``` + +``` yaml $(python) && $(python-mode) == 'update' && $(track2) +no-namespace-folders: true +output-folder: $(python-sdks-folder)/sql/azure-mgmt-sql/azure/mgmt/sql +``` + +``` yaml $(python) && $(python-mode) == 'create' && $(track2) +basic-setup-py: true +output-folder: $(python-sdks-folder)/sql/azure-mgmt-sql +``` diff --git a/specification/sqlvirtualmachine/resource-manager/readme.azureresourceschema.md b/specification/sqlvirtualmachine/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 0d9c79d76850..000000000000 --- a/specification/sqlvirtualmachine/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,24 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-sqlvirtualmachine-2017-03-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-sqlvirtualmachine-2017-03-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-sqlvirtualmachine-2017-03-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/sqlvm.json - -``` diff --git a/specification/sqlvirtualmachine/resource-manager/readme.go.md b/specification/sqlvirtualmachine/resource-manager/readme.go.md index 852c633218e8..b1e8e4fae4a4 100644 --- a/specification/sqlvirtualmachine/resource-manager/readme.go.md +++ b/specification/sqlvirtualmachine/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: sqlvirtualmachine clear-output-folder: true ``` diff --git a/specification/sqlvirtualmachine/resource-manager/readme.md b/specification/sqlvirtualmachine/resource-manager/readme.md index 2f795d6ed01d..85bb4be4390f 100644 --- a/specification/sqlvirtualmachine/resource-manager/readme.md +++ b/specification/sqlvirtualmachine/resource-manager/readme.md @@ -54,11 +54,10 @@ This is not used by Autorest itself. swagger-to-sdk: - repo: azure-sdk-for-net - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-go - repo: azure-sdk-for-java - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js sqlvirtualmachine/resource-manager ``` @@ -77,34 +76,9 @@ csharp: ``` -### Python +## Python -These settings apply only when `--python` is specified on the command line. -Please also specify `--python-sdks-folder=`. -Use `--python-mode=update` if you already have a setup.py and just want to update the code itself. - -``` yaml $(python) -python-mode: create -python: - azure-arm: true - license-header: MICROSOFT_MIT_NO_VERSION - payload-flattening-threshold: 2 - namespace: azure.mgmt.sqlvirtualmachine - package-name: azure-mgmt-sqlvirtualmachine - clear-output-folder: true -``` - -``` yaml $(python) && $(python-mode) == 'update' -python: - no-namespace-folders: true - output-folder: $(python-sdks-folder)/sql/azure-mgmt-sqlvirtualmachine/azure/mgmt/sqlvirtualmachine -``` - -``` yaml $(python) && $(python-mode) == 'create' -python: - basic-setup-py: true - output-folder: $(python-sdks-folder)/sql/azure-mgmt-sqlvirtualmachine -``` +See configuration in [readme.python.md](./readme.python.md) ### Go @@ -114,7 +88,5 @@ See configuration in [readme.go.md](./readme.go.md) See configuration in [readme.java.md](./readme.java.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/sqlvirtualmachine/resource-manager/readme.python.md b/specification/sqlvirtualmachine/resource-manager/readme.python.md new file mode 100644 index 000000000000..6cfc742b4a47 --- /dev/null +++ b/specification/sqlvirtualmachine/resource-manager/readme.python.md @@ -0,0 +1,49 @@ +## 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) && !$(track2) +python-mode: create +python: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 2 + namespace: azure.mgmt.sqlvirtualmachine + package-name: azure-mgmt-sqlvirtualmachine + package-version: 1.0.0b1 + clear-output-folder: true +``` +``` yaml $(python) && $(track2) +python-mode: create +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +namespace: azure.mgmt.sqlvirtualmachine +package-name: azure-mgmt-sqlvirtualmachine +package-version: 1.0.0b1 +clear-output-folder: true +``` + + +``` yaml $(python) && $(python-mode) == 'update' && !$(track2) +python: + no-namespace-folders: true + output-folder: $(python-sdks-folder)/sql/azure-mgmt-sqlvirtualmachine/azure/mgmt/sqlvirtualmachine +``` + +``` yaml $(python) && $(python-mode) == 'create' && !$(track2) +python: + basic-setup-py: true + output-folder: $(python-sdks-folder)/sql/azure-mgmt-sqlvirtualmachine +``` + +``` yaml $(python) && $(python-mode) == 'update' && $(track2) +no-namespace-folders: true +output-folder: $(python-sdks-folder)/sql/azure-mgmt-sqlvirtualmachine/azure/mgmt/sqlvirtualmachine +``` + +``` yaml $(python) && $(python-mode) == 'create' && $(track2) +basic-setup-py: true +output-folder: $(python-sdks-folder)/sql/azure-mgmt-sqlvirtualmachine +``` \ No newline at end of file diff --git a/specification/storSimple1200Series/resource-manager/readme.azureresourceschema.md b/specification/storSimple1200Series/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index bb72935f7dd8..000000000000 --- a/specification/storSimple1200Series/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,24 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-storsimple-2016-10-01 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-storsimple-2016-10-01 and azureresourceschema - -``` yaml $(tag) == 'schema-storsimple-2016-10-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.StorSimple/stable/2016-10-01/StorSimple.json - -``` diff --git a/specification/storSimple1200Series/resource-manager/readme.go.md b/specification/storSimple1200Series/resource-manager/readme.go.md index 775a37d34d21..bdf091bd44f0 100644 --- a/specification/storSimple1200Series/resource-manager/readme.go.md +++ b/specification/storSimple1200Series/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ```yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: storsimple clear-output-folder: true ``` diff --git a/specification/storSimple1200Series/resource-manager/readme.md b/specification/storSimple1200Series/resource-manager/readme.md index be1de214a05b..9318799af178 100644 --- a/specification/storSimple1200Series/resource-manager/readme.md +++ b/specification/storSimple1200Series/resource-manager/readme.md @@ -62,8 +62,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_stor_simple1200_series'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js storSimple1200Series/resource-manager ``` @@ -100,7 +98,5 @@ java: output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-storsimple1200series ``` -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/storage/data-plane/readme.go.md b/specification/storage/data-plane/readme.go.md index 6a981e124531..9cd90449cfed 100644 --- a/specification/storage/data-plane/readme.go.md +++ b/specification/storage/data-plane/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: storagedatalake clear-output-folder: true ``` diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/blob.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/blob.json new file mode 100644 index 000000000000..ba2f059e716c --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/blob.json @@ -0,0 +1,1427 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-01", + "title": "StorageManagementClient", + "description": "The Azure Storage Management API." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices": { + "get": { + "tags": [ + "BlobService" + ], + "operationId": "BlobServices_List", + "x-ms-examples": { + "ListBlobServices": { + "$ref": "./examples/BlobServicesList.json" + } + }, + "description": "List blob services of storage account. It returns a collection of one object named default.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- List blob services operation completed successfully.", + "schema": { + "$ref": "#/definitions/BlobServiceItems" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/{BlobServicesName}": { + "put": { + "tags": [ + "BlobService" + ], + "operationId": "BlobServices_SetServiceProperties", + "x-ms-examples": { + "PutBlobServices": { + "$ref": "./examples/BlobServicesPut.json" + }, + "BlobServicesPutLastAccessTimeBasedTracking": { + "$ref": "./examples/BlobServicesPutLastAccessTimeBasedTracking.json" + } + }, + "description": "Sets the properties of a storage account’s Blob service, including properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) rules. ", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/BlobServicesName" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/BlobServiceProperties" + }, + "description": "The properties of a storage account’s Blob service, including properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) rules." + } + ], + "responses": { + "200": { + "description": "OK -- Sets The properties of a storage account’s Blob service successfully.", + "schema": { + "$ref": "#/definitions/BlobServiceProperties" + } + } + } + }, + "get": { + "tags": [ + "BlobService" + ], + "operationId": "BlobServices_GetServiceProperties", + "x-ms-examples": { + "GetBlobServices": { + "$ref": "./examples/BlobServicesGet.json" + } + }, + "description": "Gets the properties of a storage account’s Blob service, including properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) rules.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/BlobServicesName" + } + ], + "responses": { + "200": { + "description": "OK -- returned the properties of a storage account’s Blob service.", + "schema": { + "$ref": "#/definitions/BlobServiceProperties" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers": { + "get": { + "tags": [ + "BlobContainers" + ], + "operationId": "BlobContainers_List", + "x-ms-examples": { + "ListContainers": { + "$ref": "./examples/BlobContainersList.json" + }, + "ListDeletedContainers": { + "$ref": "./examples/DeletedBlobContainersList.json" + } + }, + "description": "Lists all containers and does not support a prefix like data plane. Also SRP today does not return continuation token.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$maxpagesize", + "in": "query", + "type": "string", + "description": "Optional. Specified maximum number of containers that can be included in the list." + }, + { + "name": "$filter", + "in": "query", + "type": "string", + "description": "Optional. When specified, only container names starting with the filter will be listed." + }, + { + "name": "$include", + "in": "query", + "required": false, + "type": "string", + "enum": [ + "deleted" + ], + "x-ms-enum": { + "name": "ListContainersInclude", + "modelAsString": true + }, + "description": "Optional, used to include the properties for soft deleted blob containers." + } + ], + "responses": { + "200": { + "description": "OK -- List Container operation completed successfully.", + "schema": { + "$ref": "#/definitions/ListContainerItems" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}": { + "put": { + "tags": [ + "BlobContainers" + ], + "operationId": "BlobContainers_Create", + "x-ms-examples": { + "PutContainers": { + "$ref": "./examples/BlobContainersPut.json" + }, + "PutContainerWithDefaultEncryptionScope": { + "$ref": "./examples/BlobContainersPutDefaultEncryptionScope.json" + } + }, + "description": "Creates a new container under the specified account as described by request body. The container resource includes metadata and properties for that container. It does not include a list of the blobs contained by the container. ", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "#/parameters/ContainerName" + }, + { + "name": "blobContainer", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/BlobContainer" + }, + "description": "Properties of the blob container to create." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Created -- Create Container operation completed successfully.", + "schema": { + "$ref": "#/definitions/BlobContainer" + } + }, + "200": { + "description": "OK -- The Container is already created.", + "schema": { + "$ref": "#/definitions/BlobContainer" + } + } + } + }, + "patch": { + "tags": [ + "BlobContainers" + ], + "operationId": "BlobContainers_Update", + "x-ms-examples": { + "UpdateContainers": { + "$ref": "./examples/BlobContainersPatch.json" + } + }, + "description": "Updates container properties as specified in request body. Properties not mentioned in the request will be unchanged. Update fails if the specified container doesn't already exist. ", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "#/parameters/ContainerName" + }, + { + "name": "blobContainer", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/BlobContainer" + }, + "description": "Properties to update for the blob container." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Update Container operation completed successfully.", + "schema": { + "$ref": "#/definitions/BlobContainer", + "description": "Properties of the updated blob container." + } + } + } + }, + "get": { + "tags": [ + "BlobContainers" + ], + "operationId": "BlobContainers_Get", + "x-ms-examples": { + "GetContainers": { + "$ref": "./examples/BlobContainersGet.json" + } + }, + "description": "Gets properties of a specified container. ", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "#/parameters/ContainerName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Get Container operation completed successfully.", + "schema": { + "$ref": "#/definitions/BlobContainer" + } + } + } + }, + "delete": { + "tags": [ + "BlobContainers" + ], + "operationId": "BlobContainers_Delete", + "x-ms-examples": { + "DeleteContainers": { + "$ref": "./examples/BlobContainersDelete.json" + } + }, + "description": "Deletes specified container under its account.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "#/parameters/ContainerName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Delete Container operation completed successfully." + }, + "204": { + "description": "No Content -- The Container not exist." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/setLegalHold": { + "post": { + "tags": [ + "BlobContainers" + ], + "operationId": "BlobContainers_SetLegalHold", + "x-ms-examples": { + "SetLegalHoldContainers": { + "$ref": "./examples/BlobContainersSetLegalHold.json" + } + }, + "description": "Sets legal hold tags. Setting the same tag results in an idempotent operation. SetLegalHold follows an append pattern and does not clear out the existing tags that are not specified in the request.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "#/parameters/ContainerName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "LegalHold", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/LegalHold" + }, + "description": "The LegalHold property that will be set to a blob container." + } + ], + "responses": { + "200": { + "description": "OK -- Set legal hold tags for Container completed successfully.", + "schema": { + "$ref": "#/definitions/LegalHold" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/clearLegalHold": { + "post": { + "tags": [ + "BlobContainers" + ], + "operationId": "BlobContainers_ClearLegalHold", + "x-ms-examples": { + "ClearLegalHoldContainers": { + "$ref": "./examples/BlobContainersClearLegalHold.json" + } + }, + "description": "Clears legal hold tags. Clearing the same or non-existent tag results in an idempotent operation. ClearLegalHold clears out only the specified tags in the request.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "#/parameters/ContainerName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "LegalHold", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/LegalHold" + }, + "description": "The LegalHold property that will be clear from a blob container." + } + ], + "responses": { + "200": { + "description": "OK -- Clear legal hold tags for Container completed successfully.", + "schema": { + "$ref": "#/definitions/LegalHold" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/immutabilityPolicies/{immutabilityPolicyName}": { + "put": { + "tags": [ + "BlobContainers" + ], + "operationId": "BlobContainers_CreateOrUpdateImmutabilityPolicy", + "x-ms-examples": { + "CreateOrUpdateImmutabilityPolicy": { + "$ref": "./examples/BlobContainersPutImmutabilityPolicy.json" + } + }, + "description": "Creates or updates an unlocked immutability policy. ETag in If-Match is honored if given but not required for this operation.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "#/parameters/ContainerName" + }, + { + "$ref": "#/parameters/ImmutabilityPolicyName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "parameters", + "in": "body", + "schema": { + "$ref": "#/definitions/ImmutabilityPolicy" + }, + "description": "The ImmutabilityPolicy Properties that will be created or updated to a blob container." + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "The entity state (ETag) version of the immutability policy to update. A value of \"*\" can be used to apply the operation only if the immutability policy already exists. If omitted, this operation will always be applied." + } + ], + "responses": { + "200": { + "description": "OK -- Creates or updates container ImmutabilityPolicy operation completed successfully.", + "schema": { + "$ref": "#/definitions/ImmutabilityPolicy" + }, + "headers": { + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Match or If-None-Match headers.", + "type": "string" + } + } + } + } + }, + "get": { + "tags": [ + "BlobContainers" + ], + "operationId": "BlobContainers_GetImmutabilityPolicy", + "x-ms-examples": { + "GetImmutabilityPolicy": { + "$ref": "./examples/BlobContainersGetImmutabilityPolicy.json" + } + }, + "description": "Gets the existing immutability policy along with the corresponding ETag in response headers and body.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "#/parameters/ContainerName" + }, + { + "$ref": "#/parameters/ImmutabilityPolicyName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "The entity state (ETag) version of the immutability policy to update. A value of \"*\" can be used to apply the operation only if the immutability policy already exists. If omitted, this operation will always be applied." + } + ], + "responses": { + "200": { + "description": "OK -- Gets container ImmutabilityPolicy operation completed successfully.", + "schema": { + "$ref": "#/definitions/ImmutabilityPolicy" + }, + "headers": { + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Match or If-None-Match headers.", + "type": "string" + } + } + } + } + }, + "delete": { + "tags": [ + "BlobContainers" + ], + "operationId": "BlobContainers_DeleteImmutabilityPolicy", + "x-ms-examples": { + "DeleteImmutabilityPolicy": { + "$ref": "./examples/BlobContainersDeleteImmutabilityPolicy.json" + } + }, + "description": "Aborts an unlocked immutability policy. The response of delete has immutabilityPeriodSinceCreationInDays set to 0. ETag in If-Match is required for this operation. Deleting a locked immutability policy is not allowed, the only way is to delete the container after deleting all expired blobs inside the policy locked container.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "#/parameters/ContainerName" + }, + { + "$ref": "#/parameters/ImmutabilityPolicyName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "If-Match", + "in": "header", + "required": true, + "type": "string", + "description": "The entity state (ETag) version of the immutability policy to update. A value of \"*\" can be used to apply the operation only if the immutability policy already exists. If omitted, this operation will always be applied." + } + ], + "responses": { + "200": { + "description": "OK -- Deletes container ImmutabilityPolicy operation completed successfully.", + "schema": { + "$ref": "#/definitions/ImmutabilityPolicy" + }, + "headers": { + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Match or If-None-Match headers.", + "type": "string" + } + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/immutabilityPolicies/default/lock": { + "post": { + "tags": [ + "BlobContainers" + ], + "operationId": "BlobContainers_LockImmutabilityPolicy", + "x-ms-examples": { + "LockImmutabilityPolicy": { + "$ref": "./examples/BlobContainersLockImmutabilityPolicy.json" + } + }, + "description": "Sets the ImmutabilityPolicy to Locked state. The only action allowed on a Locked policy is ExtendImmutabilityPolicy action. ETag in If-Match is required for this operation.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "#/parameters/ContainerName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "If-Match", + "in": "header", + "required": true, + "type": "string", + "description": "The entity state (ETag) version of the immutability policy to update. A value of \"*\" can be used to apply the operation only if the immutability policy already exists. If omitted, this operation will always be applied." + } + ], + "responses": { + "200": { + "description": "OK -- Locks container ImmutabilityPolicy operation completed successfully.", + "schema": { + "$ref": "#/definitions/ImmutabilityPolicy" + }, + "headers": { + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Match or If-None-Match headers.", + "type": "string" + } + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/immutabilityPolicies/default/extend": { + "post": { + "tags": [ + "BlobContainers" + ], + "operationId": "BlobContainers_ExtendImmutabilityPolicy", + "x-ms-examples": { + "ExtendImmutabilityPolicy": { + "$ref": "./examples/BlobContainersExtendImmutabilityPolicy.json" + } + }, + "description": "Extends the immutabilityPeriodSinceCreationInDays of a locked immutabilityPolicy. The only action allowed on a Locked policy will be this action. ETag in If-Match is required for this operation.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "#/parameters/ContainerName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "parameters", + "in": "body", + "schema": { + "$ref": "#/definitions/ImmutabilityPolicy" + }, + "description": "The ImmutabilityPolicy Properties that will be extended for a blob container." + }, + { + "name": "If-Match", + "in": "header", + "required": true, + "type": "string", + "description": "The entity state (ETag) version of the immutability policy to update. A value of \"*\" can be used to apply the operation only if the immutability policy already exists. If omitted, this operation will always be applied." + } + ], + "responses": { + "200": { + "description": "OK -- Extends container ImmutabilityPolicy operation completed successfully..", + "schema": { + "$ref": "#/definitions/ImmutabilityPolicy" + }, + "headers": { + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Match or If-None-Match headers.", + "type": "string" + } + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/lease": { + "post": { + "tags": [ + "BlobContainers" + ], + "operationId": "BlobContainers_Lease", + "x-ms-examples": { + "Acquire a lease on a container": { + "$ref": "./examples/BlobContainersLease_Acquire.json" + }, + "Break a lease on a container": { + "$ref": "./examples/BlobContainersLease_Break.json" + } + }, + "description": "The Lease Container operation establishes and manages a lock on a container for delete operations. The lock duration can be 15 to 60 seconds, or can be infinite.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "#/parameters/ContainerName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "parameters", + "in": "body", + "schema": { + "$ref": "#/definitions/LeaseContainerRequest" + }, + "description": "Lease Container request body." + } + ], + "responses": { + "200": { + "description": "OK -- Lease Container operation completed successfully.", + "schema": { + "$ref": "#/definitions/LeaseContainerResponse" + } + } + } + } + } + }, + "definitions": { + "ContainerProperties": { + "properties": { + "version": { + "type": "string", + "readOnly": true, + "description": "The version of the deleted blob container." + }, + "deleted": { + "type": "boolean", + "readOnly": true, + "description": "Indicates whether the blob container was deleted." + }, + "deletedTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "Blob container deletion time." + }, + "remainingRetentionDays": { + "type": "integer", + "readOnly": true, + "description": "Remaining retention days for soft deleted blob container." + }, + "defaultEncryptionScope": { + "type": "string", + "description": "Default the container to use specified encryption scope for all writes." + }, + "denyEncryptionScopeOverride": { + "type": "boolean", + "description": "Block override of encryption scope from the container default." + }, + "publicAccess": { + "type": "string", + "enum": [ + "Container", + "Blob", + "None" + ], + "x-ms-enum": { + "name": "PublicAccess", + "modelAsString": false + }, + "description": "Specifies whether data in the container may be accessed publicly and the level of access." + }, + "lastModifiedTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "Returns the date and time the container was last modified." + }, + "leaseStatus": { + "type": "string", + "readOnly": true, + "enum": [ + "Locked", + "Unlocked" + ], + "x-ms-enum": { + "name": "LeaseStatus", + "modelAsString": true + }, + "description": "The lease status of the container." + }, + "leaseState": { + "type": "string", + "readOnly": true, + "enum": [ + "Available", + "Leased", + "Expired", + "Breaking", + "Broken" + ], + "x-ms-enum": { + "name": "LeaseState", + "modelAsString": true + }, + "description": "Lease state of the container." + }, + "leaseDuration": { + "type": "string", + "readOnly": true, + "enum": [ + "Infinite", + "Fixed" + ], + "x-ms-enum": { + "name": "LeaseDuration", + "modelAsString": true + }, + "description": "Specifies whether the lease on a container is of infinite or fixed duration, only when the container is leased." + }, + "metadata": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "A name-value pair to associate with the container as metadata." + }, + "immutabilityPolicy": { + "readOnly": true, + "$ref": "#/definitions/ImmutabilityPolicyProperties", + "x-ms-client-name": "ImmutabilityPolicy", + "description": "The ImmutabilityPolicy property of the container." + }, + "legalHold": { + "readOnly": true, + "$ref": "#/definitions/LegalHoldProperties", + "description": "The LegalHold property of the container." + }, + "hasLegalHold": { + "type": "boolean", + "readOnly": true, + "description": "The hasLegalHold public property is set to true by SRP if there are at least one existing tag. The hasLegalHold public property is set to false by SRP if all existing legal hold tags are cleared out. There can be a maximum of 1000 blob containers with hasLegalHold=true for a given account." + }, + "hasImmutabilityPolicy": { + "type": "boolean", + "readOnly": true, + "description": "The hasImmutabilityPolicy public property is set to true by SRP if ImmutabilityPolicy has been created for this container. The hasImmutabilityPolicy public property is set to false by SRP if ImmutabilityPolicy has not been created for this container." + } + }, + "description": "The properties of a container." + }, + "BlobContainer": { + "properties": { + "properties": { + "$ref": "#/definitions/ContainerProperties", + "x-ms-client-flatten": true, + "x-ms-client-name": "ContainerProperties", + "description": "Properties of the blob container." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/AzureEntityResource" + } + ], + "description": "Properties of the blob container, including Id, resource name, resource type, Etag." + }, + "ImmutabilityPolicyProperty": { + "properties": { + "immutabilityPeriodSinceCreationInDays": { + "type": "integer", + "description": "The immutability period for the blobs in the container since the policy creation, in days." + }, + "state": { + "type": "string", + "readOnly": true, + "enum": [ + "Locked", + "Unlocked" + ], + "x-ms-enum": { + "name": "ImmutabilityPolicyState", + "modelAsString": true + }, + "description": "The ImmutabilityPolicy state of a blob container, possible values include: Locked and Unlocked." + }, + "allowProtectedAppendWrites": { + "type": "boolean", + "description": "This property can only be changed for unlocked time-based retention policies. When enabled, new blocks can be written to an append blob while maintaining immutability protection and compliance. Only new blocks can be added and any existing blocks cannot be modified or deleted. This property cannot be changed with ExtendImmutabilityPolicy API" + } + }, + "description": "The properties of an ImmutabilityPolicy of a blob container." + }, + "ImmutabilityPolicyProperties": { + "properties": { + "properties": { + "$ref": "#/definitions/ImmutabilityPolicyProperty", + "x-ms-client-flatten": true, + "description": "The properties of an ImmutabilityPolicy of a blob container." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "ImmutabilityPolicy Etag." + }, + "updateHistory": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/UpdateHistoryProperty" + }, + "description": "The ImmutabilityPolicy update history of the blob container." + } + }, + "description": "The properties of an ImmutabilityPolicy of a blob container." + }, + "ImmutabilityPolicy": { + "properties": { + "properties": { + "$ref": "#/definitions/ImmutabilityPolicyProperty", + "x-ms-client-flatten": true, + "description": "The properties of an ImmutabilityPolicy of a blob container." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/AzureEntityResource" + } + ], + "required": [ + "properties" + ], + "description": "The ImmutabilityPolicy property of a blob container, including Id, resource name, resource type, Etag." + }, + "UpdateHistoryProperty": { + "properties": { + "update": { + "type": "string", + "readOnly": true, + "enum": [ + "put", + "lock", + "extend" + ], + "x-ms-enum": { + "name": "ImmutabilityPolicyUpdateType", + "modelAsString": true + }, + "description": "The ImmutabilityPolicy update type of a blob container, possible values include: put, lock and extend." + }, + "immutabilityPeriodSinceCreationInDays": { + "type": "integer", + "readOnly": true, + "description": "The immutability period for the blobs in the container since the policy creation, in days." + }, + "timestamp": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "Returns the date and time the ImmutabilityPolicy was updated." + }, + "objectIdentifier": { + "type": "string", + "readOnly": true, + "description": "Returns the Object ID of the user who updated the ImmutabilityPolicy." + }, + "tenantId": { + "type": "string", + "readOnly": true, + "description": "Returns the Tenant ID that issued the token for the user who updated the ImmutabilityPolicy." + }, + "upn": { + "type": "string", + "readOnly": true, + "description": "Returns the User Principal Name of the user who updated the ImmutabilityPolicy." + } + }, + "description": "An update history of the ImmutabilityPolicy of a blob container." + }, + "LegalHoldProperties": { + "properties": { + "hasLegalHold": { + "type": "boolean", + "readOnly": true, + "description": "The hasLegalHold public property is set to true by SRP if there are at least one existing tag. The hasLegalHold public property is set to false by SRP if all existing legal hold tags are cleared out. There can be a maximum of 1000 blob containers with hasLegalHold=true for a given account." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/definitions/TagProperty" + }, + "description": "The list of LegalHold tags of a blob container." + } + }, + "description": "The LegalHold property of a blob container." + }, + "TagProperty": { + "properties": { + "tag": { + "type": "string", + "readOnly": true, + "description": "The tag value." + }, + "timestamp": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "Returns the date and time the tag was added." + }, + "objectIdentifier": { + "type": "string", + "readOnly": true, + "description": "Returns the Object ID of the user who added the tag." + }, + "tenantId": { + "type": "string", + "readOnly": true, + "description": "Returns the Tenant ID that issued the token for the user who added the tag." + }, + "upn": { + "type": "string", + "readOnly": true, + "description": "Returns the User Principal Name of the user who added the tag." + } + }, + "description": "A tag of the LegalHold of a blob container." + }, + "LegalHold": { + "properties": { + "hasLegalHold": { + "type": "boolean", + "readOnly": true, + "description": "The hasLegalHold public property is set to true by SRP if there are at least one existing tag. The hasLegalHold public property is set to false by SRP if all existing legal hold tags are cleared out. There can be a maximum of 1000 blob containers with hasLegalHold=true for a given account." + }, + "tags": { + "type": "array", + "items": { + "type": "string", + "maxLength": 23, + "minLength": 3 + }, + "description": "Each tag should be 3 to 23 alphanumeric characters and is normalized to lower case at SRP." + } + }, + "required": [ + "tags" + ], + "description": "The LegalHold property of a blob container." + }, + "ListContainerItem": { + "properties": { + "properties": { + "$ref": "#/definitions/ContainerProperties", + "x-ms-client-flatten": true, + "description": "The blob container properties be listed out." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/AzureEntityResource" + } + ], + "description": "The blob container properties be listed out." + }, + "ListContainerItems": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ListContainerItem" + }, + "description": "List of blobs containers returned.", + "readOnly": true + }, + "nextLink": { + "type": "string", + "description": "Request URL that can be used to query next page of containers. Returned when total number of requested containers exceed maximum page size.", + "readOnly": true + } + }, + "description": "Response schema. Contains list of blobs returned, and if paging is requested or required, a URL to next page of containers." + }, + "BlobServiceProperties": { + "properties": { + "properties": { + "properties": { + "cors": { + "$ref": "./common.json#/definitions/CorsRules", + "description": "Specifies CORS rules for the Blob service. You can include up to five CorsRule elements in the request. If no CorsRule elements are included in the request body, all CORS rules will be deleted, and CORS will be disabled for the Blob service." + }, + "defaultServiceVersion": { + "type": "string", + "description": "DefaultServiceVersion indicates the default version to use for requests to the Blob service if an incoming request’s version is not specified. Possible values include version 2008-10-27 and all more recent versions." + }, + "deleteRetentionPolicy": { + "$ref": "./common.json#/definitions/DeleteRetentionPolicy", + "description": "The blob service properties for blob soft delete." + }, + "isVersioningEnabled": { + "type": "boolean", + "description": "Versioning is enabled if set to true." + }, + "automaticSnapshotPolicyEnabled": { + "type": "boolean", + "description": "Deprecated in favor of isVersioningEnabled property." + }, + "changeFeed": { + "$ref": "#/definitions/ChangeFeed", + "description": "The blob service properties for change feed events." + }, + "restorePolicy": { + "$ref": "#/definitions/RestorePolicyProperties", + "description": "The blob service properties for blob restore policy." + }, + "containerDeleteRetentionPolicy": { + "$ref": "./common.json#/definitions/DeleteRetentionPolicy", + "description": "The blob service properties for container soft delete." + }, + "lastAccessTimeTrackingPolicy": { + "$ref": "#/definitions/LastAccessTimeTrackingPolicy", + "description": "The blob service property to configure last access time based tracking policy." + } + }, + "x-ms-client-flatten": true, + "x-ms-client-name": "BlobServiceProperties", + "description": "The properties of a storage account’s Blob service." + }, + "sku": { + "$ref": "./common.json#/definitions/Sku", + "readOnly": true, + "description": "Sku name and tier." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "description": "The properties of a storage account’s Blob service." + }, + "BlobServiceItems": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BlobServiceProperties" + }, + "description": "List of blob services returned.", + "readOnly": true + } + } + }, + "ChangeFeed": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Indicates whether change feed event logging is enabled for the Blob service." + }, + "retentionInDays": { + "type": "integer", + "minimum": 1, + "maximum": 146000, + "format": "int32", + "description": "Indicates the duration of changeFeed retention in days. Minimum value is 1 day and maximum value is 146000 days (400 years). A null value indicates an infinite retention of the change feed." + } + }, + "description": "The blob service properties for change feed events." + }, + "RestorePolicyProperties": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Blob restore is enabled if set to true." + }, + "days": { + "type": "integer", + "minimum": 1, + "maximum": 365, + "description": "how long this blob can be restored. It should be great than zero and less than DeleteRetentionPolicy.days." + }, + "lastEnabledTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "Deprecated in favor of minRestoreTime property." + }, + "minRestoreTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "Returns the minimum date and time that the restore can be started." + } + }, + "required": [ + "enabled" + ], + "description": "The blob service properties for blob restore policy" + }, + "LastAccessTimeTrackingPolicy": { + "properties": { + "enable": { + "type": "boolean", + "description": "When set to true last access time based tracking is enabled." + }, + "name": { + "type": "string", + "description": "Name of the policy. The valid value is AccessTimeTracking. This field is currently read only", + "enum": [ + "AccessTimeTracking" + ], + "x-ms-enum": { + "name": "name", + "modelAsString": true + } + }, + "trackingGranularityInDays": { + "type": "integer", + "format": "int32", + "description": "The field specifies blob object tracking granularity in days, typically how often the blob object should be tracked.This field is currently read only with value as 1" + }, + "blobType": { + "type": "array", + "items": { + "type": "string" + }, + "description": "An array of predefined supported blob types. Only blockBlob is the supported value. This field is currently read only" + } + }, + "required": [ + "enable" + ], + "description": "The blob service properties for Last access time based tracking policy." + }, + "LeaseContainerRequest": { + "properties": { + "action": { + "type": "string", + "enum": [ + "Acquire", + "Renew", + "Change", + "Release", + "Break" + ], + "description": "Specifies the lease action. Can be one of the available actions." + }, + "leaseId": { + "type": "string", + "description": "Identifies the lease. Can be specified in any valid GUID string format." + }, + "breakPeriod": { + "type": "integer", + "description": "Optional. For a break action, proposed duration the lease should continue before it is broken, in seconds, between 0 and 60." + }, + "leaseDuration": { + "type": "integer", + "description": "Required for acquire. Specifies the duration of the lease, in seconds, or negative one (-1) for a lease that never expires." + }, + "proposedLeaseId": { + "type": "string", + "description": "Optional for acquire, required for change. Proposed lease ID, in a GUID string format." + } + }, + "required": [ + "action" + ], + "description": "Lease Container request schema." + }, + "LeaseContainerResponse": { + "properties": { + "leaseId": { + "type": "string", + "description": "Returned unique lease ID that must be included with any request to delete the container, or to renew, change, or release the lease." + }, + "leaseTimeSeconds": { + "type": "string", + "description": "Approximate time remaining in the lease period, in seconds." + } + }, + "description": "Lease Container response schema." + } + }, + "parameters": { + "ContainerName": { + "name": "containerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the blob container within the specified storage account. Blob container names must be between 3 and 63 characters in length and use numbers, lower-case letters and dash (-) only. Every dash (-) character must be immediately preceded and followed by a letter or number.", + "maxLength": 63, + "minLength": 3, + "x-ms-parameter-location": "method" + }, + "ImmutabilityPolicyName": { + "name": "immutabilityPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the blob container immutabilityPolicy within the specified storage account. ImmutabilityPolicy Name must be 'default'", + "enum": [ + "default" + ], + "x-ms-parameter-location": "method" + }, + "BlobServicesName": { + "name": "BlobServicesName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the blob Service within the specified storage account. Blob Service Name must be 'default'", + "enum": [ + "default" + ], + "x-ms-parameter-location": "method" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/common.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/common.json new file mode 100644 index 000000000000..40f40db3d661 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/common.json @@ -0,0 +1,137 @@ +{ + "swagger": "2.0", + "info": { + "title": "Storage", + "description": "Storage Resource Provider API Common Types", + "version": "2021-02-01" + }, + "paths": {}, + "definitions": { + "CorsRules": { + "properties": { + "corsRules": { + "type": "array", + "items": { + "description": "Specifies a CORS rule for the Blob service. ", + "$ref": "#/definitions/CorsRule" + }, + "description": "The List of CORS rules. You can include up to five CorsRule elements in the request. " + } + }, + "description": "Sets the CORS rules. You can include up to five CorsRule elements in the request. " + }, + "CorsRule": { + "properties": { + "allowedOrigins": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Required if CorsRule element is present. A list of origin domains that will be allowed via CORS, or \"*\" to allow all domains" + }, + "allowedMethods": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "DELETE", + "GET", + "HEAD", + "MERGE", + "POST", + "OPTIONS", + "PUT" + ] + }, + "description": "Required if CorsRule element is present. A list of HTTP methods that are allowed to be executed by the origin." + }, + "maxAgeInSeconds": { + "type": "integer", + "description": "Required if CorsRule element is present. The number of seconds that the client/browser should cache a preflight response." + }, + "exposedHeaders": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Required if CorsRule element is present. A list of response headers to expose to CORS clients." + }, + "allowedHeaders": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Required if CorsRule element is present. A list of headers allowed to be part of the cross-origin request." + } + }, + "required": [ + "allowedOrigins", + "allowedMethods", + "maxAgeInSeconds", + "exposedHeaders", + "allowedHeaders" + ], + "description": "Specifies a CORS rule for the Blob service." + }, + "DeleteRetentionPolicy": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Indicates whether DeleteRetentionPolicy is enabled." + }, + "days": { + "type": "integer", + "minimum": 1, + "maximum": 365, + "description": "Indicates the number of days that the deleted item should be retained. The minimum specified value can be 1 and the maximum value can be 365." + } + }, + "description": "The service properties for soft delete." + }, + "Sku": { + "properties": { + "name": { + "$ref": "#/definitions/SkuName" + }, + "tier": { + "$ref": "#/definitions/Tier" + } + }, + "required": [ + "name" + ], + "description": "The SKU of the storage account." + }, + "SkuName": { + "type": "string", + "description": "The SKU name. Required for account creation; optional for update. Note that in older versions, SKU name was called accountType.", + "enum": [ + "Standard_LRS", + "Standard_GRS", + "Standard_RAGRS", + "Standard_ZRS", + "Premium_LRS", + "Premium_ZRS", + "Standard_GZRS", + "Standard_RAGZRS" + ], + "x-ms-enum": { + "name": "SkuName", + "modelAsString": true + } + }, + "Tier": { + "readOnly": true, + "type": "string", + "description": "The SKU tier. This is based on the SKU name.", + "enum": [ + "Standard", + "Premium" + ], + "x-ms-enum": { + "name": "SkuTier", + "modelAsString": false + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobContainersClearLegalHold.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobContainersClearLegalHold.json new file mode 100644 index 000000000000..10cb1f973985 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobContainersClearLegalHold.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4303", + "accountName": "sto7280", + "containerName": "container8723", + "api-version": "2020-08-01-preview", + "monitor": "true", + "LegalHold": { + "tags": [ + "tag1", + "tag2", + "tag3" + ] + } + }, + "responses": { + "200": { + "body": { + "hasLegalHold": false, + "tags": [] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobContainersDelete.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobContainersDelete.json new file mode 100644 index 000000000000..1b458fc42fbf --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobContainersDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4079", + "accountName": "sto4506", + "containerName": "container9689", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobContainersDeleteImmutabilityPolicy.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobContainersDeleteImmutabilityPolicy.json new file mode 100644 index 000000000000..8e3c544f52ce --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobContainersDeleteImmutabilityPolicy.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res1581", + "accountName": "sto9621", + "containerName": "container4910", + "immutabilityPolicyName": "default", + "If-Match": "\"8d59f81a7fa7be0\"", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res1581/providers/Microsoft.Storage/storageAccounts/sto9621/blobServices/default/containers/container4910/immutabilityPolicies/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/blobServices/containers/immutabilityPolicies", + "etag": "\"8d59f81a87b40c0\"", + "properties": { + "immutabilityPeriodSinceCreationInDays": 0, + "state": "Unlocked" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobContainersExtendImmutabilityPolicy.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobContainersExtendImmutabilityPolicy.json new file mode 100644 index 000000000000..012711dc8900 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobContainersExtendImmutabilityPolicy.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res6238", + "accountName": "sto232", + "containerName": "container5023", + "If-Match": "\"8d59f830d0c3bf9\"", + "api-version": "2020-08-01-preview", + "monitor": "true", + "parameters": { + "properties": { + "immutabilityPeriodSinceCreationInDays": 100 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res6238/providers/Microsoft.Storage/storageAccounts/sto232/blobServices/default/containers/container5023/immutabilityPolicies/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/blobServices/containers/immutabilityPolicies", + "etag": "\"8d57a8b2ff50332\"", + "properties": { + "immutabilityPeriodSinceCreationInDays": 100, + "state": "Locked" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobContainersGet.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobContainersGet.json new file mode 100644 index 000000000000..fcd31bb5b494 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobContainersGet.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9871", + "accountName": "sto6217", + "containerName": "container1634", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9871/providers/Microsoft.Storage/storageAccounts/sto6217/blobServices/default/containers/container1634", + "name": "container1634", + "type": "Microsoft.Storage/storageAccounts/blobServices/containers", + "etag": "\"0x8D592D74CC20EBA\"", + "properties": { + "publicAccess": "None", + "leaseStatus": "Unlocked", + "leaseState": "Available", + "lastModifiedTime": "2018-03-26T05:06:14Z", + "immutabilityPolicy": { + "etag": "\"8d592d74cb3011a\"", + "properties": { + "immutabilityPeriodSinceCreationInDays": 100, + "state": "Locked" + }, + "updateHistory": [ + { + "update": "put", + "immutabilityPeriodSinceCreationInDays": 3, + "timestamp": "2018-03-26T05:06:11.431403Z", + "objectIdentifier": "ce7cd28a-fc25-4bf1-8fb9-e1b9833ffd4b", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47" + }, + { + "update": "lock", + "immutabilityPeriodSinceCreationInDays": 3, + "timestamp": "2018-03-26T05:06:13.0907641Z", + "objectIdentifier": "ce7cd28a-fc25-4bf1-8fb9-e1b9833ffd4b", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47" + }, + { + "update": "extend", + "immutabilityPeriodSinceCreationInDays": 100, + "timestamp": "2018-03-26T05:06:14.7097716Z", + "objectIdentifier": "ce7cd28a-fc25-4bf1-8fb9-e1b9833ffd4b", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47" + } + ] + }, + "legalHold": { + "hasLegalHold": true, + "tags": [ + { + "tag": "tag1", + "timestamp": "2018-03-26T05:06:09.6964643Z", + "objectIdentifier": "ce7cd28a-fc25-4bf1-8fb9-e1b9833ffd4b", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47" + }, + { + "tag": "tag2", + "timestamp": "2018-03-26T05:06:09.6964643Z", + "objectIdentifier": "ce7cd28a-fc25-4bf1-8fb9-e1b9833ffd4b", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47" + }, + { + "tag": "tag3", + "timestamp": "2018-03-26T05:06:09.6964643Z", + "objectIdentifier": "ce7cd28a-fc25-4bf1-8fb9-e1b9833ffd4b", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47" + } + ] + }, + "hasImmutabilityPolicy": true, + "hasLegalHold": true + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobContainersGetImmutabilityPolicy.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobContainersGetImmutabilityPolicy.json new file mode 100644 index 000000000000..a252a1fab23b --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobContainersGetImmutabilityPolicy.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res5221", + "accountName": "sto9177", + "containerName": "container3489", + "immutabilityPolicyName": "default", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res5221/providers/Microsoft.Storage/storageAccounts/sto9177/blobServices/default/containers/container3489/immutabilityPolicies/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/blobServices/containers/immutabilityPolicies", + "etag": "\"8d59f828e64b75c\"", + "properties": { + "immutabilityPeriodSinceCreationInDays": 5, + "allowProtectedAppendWrites": true, + "state": "Unlocked" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobContainersLease_Acquire.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobContainersLease_Acquire.json new file mode 100644 index 000000000000..06e750eed70a --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobContainersLease_Acquire.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "containerName": "container6185", + "api-version": "2020-08-01-preview", + "monitor": "true", + "parameters": { + "action": "Acquire", + "leaseId": null, + "breakPeriod": null, + "leaseDuration": -1, + "proposedLeaseId": null + } + }, + "responses": { + "200": { + "body": { + "leaseId": "8698f513-fa75-44a1-b8eb-30ba336af27d" + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobContainersLease_Break.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobContainersLease_Break.json new file mode 100644 index 000000000000..5478c1ddb953 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobContainersLease_Break.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "containerName": "container6185", + "api-version": "2020-08-01-preview", + "monitor": "true", + "parameters": { + "action": "Break", + "leaseId": "8698f513-fa75-44a1-b8eb-30ba336af27d", + "breakPeriod": null, + "leaseDuration": null, + "proposedLeaseId": null + } + }, + "responses": { + "200": { + "body": { + "leaseTimeSeconds": "0" + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobContainersList.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobContainersList.json new file mode 100644 index 000000000000..f36181499495 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobContainersList.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9290", + "accountName": "sto1590", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9290/providers/Microsoft.Storage/storageAccounts/sto1590/blobServices/default/containers/container1644", + "name": "container1644", + "type": "Microsoft.Storage/storageAccounts/blobServices/containers", + "etag": "\"0x8D589847D51C7DE\"", + "properties": { + "publicAccess": "Container", + "leaseStatus": "Unlocked", + "leaseState": "Available", + "lastModifiedTime": "2018-03-14T08:20:47Z", + "hasImmutabilityPolicy": false, + "hasLegalHold": false + } + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9290/providers/Microsoft.Storage/storageAccounts/sto1590/blobServices/default/containers/container4052", + "name": "container4052", + "type": "Microsoft.Storage/storageAccounts/blobServices/containers", + "etag": "\"0x8D589847DAB5AF9\"", + "properties": { + "publicAccess": "None", + "leaseStatus": "Unlocked", + "leaseState": "Available", + "lastModifiedTime": "2018-03-14T08:20:47Z", + "hasImmutabilityPolicy": false, + "hasLegalHold": false + } + } + ], + "nextLink": "https://sto1590endpoint/subscriptions/{subscription-id}/resourceGroups/res9290/providers/Microsoft.Storage/storageAccounts/sto1590/blobServices/default/containers?api-version=2020-08-01-preview&$maxpagesize=2&$skipToken=/sto1590/container5103" + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobContainersLockImmutabilityPolicy.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobContainersLockImmutabilityPolicy.json new file mode 100644 index 000000000000..df3fe04ade92 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobContainersLockImmutabilityPolicy.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res2702", + "accountName": "sto5009", + "containerName": "container1631", + "If-Match": "\"8d59f825b721dd3\"", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res2702/providers/Microsoft.Storage/storageAccounts/sto5009/blobServices/default/containers/container1631/immutabilityPolicies/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/blobServices/containers/immutabilityPolicies", + "etag": "\"8d57a8a5edb084a\"", + "properties": { + "immutabilityPeriodSinceCreationInDays": 3, + "state": "Locked" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobContainersPatch.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobContainersPatch.json new file mode 100644 index 000000000000..c72b4b1035f9 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobContainersPatch.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "containerName": "container6185", + "api-version": "2020-08-01-preview", + "monitor": "true", + "blobContainer": { + "properties": { + "publicAccess": "Container", + "metadata": { + "metadata": "true" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/blobServices/default/containers/container6185", + "name": "container6185", + "type": "Microsoft.Storage/storageAccounts/blobServices/containers", + "properties": { + "metadata": { + "metadata": "true" + }, + "publicAccess": "Container", + "hasImmutabilityPolicy": false, + "hasLegalHold": false + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobContainersPut.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobContainersPut.json new file mode 100644 index 000000000000..f5b3a3d5794b --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobContainersPut.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "containerName": "container6185", + "api-version": "2020-08-01-preview", + "monitor": "true", + "blobContainer": {} + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/blobServices/default/containers/container6185", + "name": "container6185", + "type": "Microsoft.Storage/storageAccounts/blobServices/containers" + } + }, + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/blobServices/default/containers/container6185", + "name": "container6185", + "type": "Microsoft.Storage/storageAccounts/blobServices/containers" + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobContainersPutDefaultEncryptionScope.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobContainersPutDefaultEncryptionScope.json new file mode 100644 index 000000000000..a59517407b49 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobContainersPutDefaultEncryptionScope.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "containerName": "container6185", + "api-version": "2020-08-01-preview", + "monitor": "true", + "blobContainer": { + "properties": { + "defaultEncryptionScope": "encryptionscope185", + "denyEncryptionScopeOverride": true + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/blobServices/default/containers/container6185", + "name": "container6185", + "type": "Microsoft.Storage/storageAccounts/blobServices/containers", + "properties": { + "defaultEncryptionScope": "encryptionscope185", + "denyEncryptionScopeOverride": true + } + } + }, + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/blobServices/default/containers/container6185", + "name": "container6185", + "type": "Microsoft.Storage/storageAccounts/blobServices/containers", + "properties": { + "defaultEncryptionScope": "encryptionscope185", + "denyEncryptionScopeOverride": true + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobContainersPutImmutabilityPolicy.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobContainersPutImmutabilityPolicy.json new file mode 100644 index 000000000000..27551892b1b6 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobContainersPutImmutabilityPolicy.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res1782", + "accountName": "sto7069", + "containerName": "container6397", + "immutabilityPolicyName": "default", + "api-version": "2020-08-01-preview", + "monitor": "true", + "parameters": { + "properties": { + "immutabilityPeriodSinceCreationInDays": 3, + "allowProtectedAppendWrites": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res1782/providers/Microsoft.Storage/storageAccounts/sto7069/blobServices/default/containers/container6397/immutabilityPolicies/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/blobServices/containers/immutabilityPolicies", + "etag": "\"8d59f830cb130e5\"", + "properties": { + "immutabilityPeriodSinceCreationInDays": 3, + "allowProtectedAppendWrites": true, + "state": "Unlocked" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobContainersSetLegalHold.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobContainersSetLegalHold.json new file mode 100644 index 000000000000..6b1ab8d4b261 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobContainersSetLegalHold.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4303", + "accountName": "sto7280", + "containerName": "container8723", + "api-version": "2020-08-01-preview", + "monitor": "true", + "LegalHold": { + "tags": [ + "tag1", + "tag2", + "tag3" + ] + } + }, + "responses": { + "200": { + "body": { + "hasLegalHold": true, + "tags": [ + "tag1", + "tag2", + "tag3" + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobRangesRestore.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobRangesRestore.json new file mode 100644 index 000000000000..f0734ba8bffe --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobRangesRestore.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9101", + "accountName": "sto4445", + "api-version": "2020-08-01-preview", + "parameters": { + "timeToRestore": "2019-04-20T15:30:00.0000000Z", + "blobRanges": [ + { + "startRange": "container/blobpath1", + "endRange": "container/blobpath2" + }, + { + "startRange": "container2/blobpath3", + "endRange": "" + } + ] + } + }, + "responses": { + "200": { + "body": { + "status": "Complete", + "restoreId": "{restore_id}", + "parameters": { + "timeToRestore": "2019-04-20T15:30:00.0000000Z", + "blobRanges": [ + { + "startRange": "container/blobpath1", + "endRange": "container/blobpath2" + }, + { + "startRange": "container2/blobpath3", + "endRange": "" + } + ] + } + } + }, + "202": { + "body": { + "status": "InProgress", + "restoreId": "{restore_id}", + "parameters": { + "timeToRestore": "2019-04-20T15:30:00.0000000Z", + "blobRanges": [ + { + "startRange": "container/blobpath1", + "endRange": "container/blobpath2" + }, + { + "startRange": "container2/blobpath3", + "endRange": "" + } + ] + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobServicesGet.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobServicesGet.json new file mode 100644 index 000000000000..a87c766bde14 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobServicesGet.json @@ -0,0 +1,96 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4410", + "accountName": "sto8607", + "BlobServicesName": "default", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res4410/providers/Microsoft.Storage/storageAccounts/sto8607/blobServices/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/blobServices", + "properties": { + "cors": { + "corsRules": [ + { + "allowedOrigins": [ + "http://www.contoso.com", + "http://www.fabrikam.com" + ], + "allowedMethods": [ + "GET", + "HEAD", + "POST", + "OPTIONS", + "MERGE", + "PUT" + ], + "maxAgeInSeconds": 100, + "exposedHeaders": [ + "x-ms-meta-*" + ], + "allowedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ] + }, + { + "allowedOrigins": [ + "*" + ], + "allowedMethods": [ + "GET" + ], + "maxAgeInSeconds": 2, + "exposedHeaders": [ + "*" + ], + "allowedHeaders": [ + "*" + ] + }, + { + "allowedOrigins": [ + "http://www.abc23.com", + "https://www.fabrikam.com/*" + ], + "allowedMethods": [ + "GET", + "PUT" + ], + "maxAgeInSeconds": 2000, + "exposedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x -ms-meta-target*" + ], + "allowedHeaders": [ + "x-ms-meta-12345675754564*" + ] + } + ] + }, + "defaultServiceVersion": "2017-07-29", + "deleteRetentionPolicy": { + "enabled": true, + "days": 300 + }, + "isVersioningEnabled": true, + "changeFeed": { + "enabled": true, + "retentionInDays": 7 + } + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobServicesList.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobServicesList.json new file mode 100644 index 000000000000..b352a419bae4 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobServicesList.json @@ -0,0 +1,99 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4410", + "accountName": "sto8607", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res4410/providers/Microsoft.Storage/storageAccounts/sto8607/blobServices/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/blobServices", + "properties": { + "cors": { + "corsRules": [ + { + "allowedOrigins": [ + "http://www.contoso.com", + "http://www.fabrikam.com" + ], + "allowedMethods": [ + "GET", + "HEAD", + "POST", + "OPTIONS", + "MERGE", + "PUT" + ], + "maxAgeInSeconds": 100, + "exposedHeaders": [ + "x-ms-meta-*" + ], + "allowedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ] + }, + { + "allowedOrigins": [ + "*" + ], + "allowedMethods": [ + "GET" + ], + "maxAgeInSeconds": 2, + "exposedHeaders": [ + "*" + ], + "allowedHeaders": [ + "*" + ] + }, + { + "allowedOrigins": [ + "http://www.abc23.com", + "https://www.fabrikam.com/*" + ], + "allowedMethods": [ + "GET", + "PUT" + ], + "maxAgeInSeconds": 2000, + "exposedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x -ms-meta-target*" + ], + "allowedHeaders": [ + "x-ms-meta-12345675754564*" + ] + } + ] + }, + "defaultServiceVersion": "2017-07-29", + "deleteRetentionPolicy": { + "enabled": true, + "days": 300 + }, + "isVersioningEnabled": true, + "changeFeed": { + "enabled": true, + "retentionInDays": 7 + } + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + } + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobServicesPut.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobServicesPut.json new file mode 100644 index 000000000000..49d658e88e5e --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobServicesPut.json @@ -0,0 +1,171 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4410", + "accountName": "sto8607", + "BlobServicesName": "default", + "api-version": "2020-08-01-preview", + "monitor": "true", + "parameters": { + "properties": { + "cors": { + "corsRules": [ + { + "allowedOrigins": [ + "http://www.contoso.com", + "http://www.fabrikam.com" + ], + "allowedMethods": [ + "GET", + "HEAD", + "POST", + "OPTIONS", + "MERGE", + "PUT" + ], + "maxAgeInSeconds": 100, + "exposedHeaders": [ + "x-ms-meta-*" + ], + "allowedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ] + }, + { + "allowedOrigins": [ + "*" + ], + "allowedMethods": [ + "GET" + ], + "maxAgeInSeconds": 2, + "exposedHeaders": [ + "*" + ], + "allowedHeaders": [ + "*" + ] + }, + { + "allowedOrigins": [ + "http://www.abc23.com", + "https://www.fabrikam.com/*" + ], + "allowedMethods": [ + "GET", + "PUT" + ], + "maxAgeInSeconds": 2000, + "exposedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x -ms-meta-target*" + ], + "allowedHeaders": [ + "x-ms-meta-12345675754564*" + ] + } + ] + }, + "defaultServiceVersion": "2017-07-29", + "deleteRetentionPolicy": { + "enabled": true, + "days": 300 + }, + "isVersioningEnabled": true, + "changeFeed": { + "enabled": true, + "retentionInDays": 7 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res4410/providers/Microsoft.Storage/storageAccounts/sto8607/blobServices/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/blobServices", + "properties": { + "cors": { + "corsRules": [ + { + "allowedOrigins": [ + "http://www.contoso.com", + "http://www.fabrikam.com" + ], + "allowedMethods": [ + "GET", + "HEAD", + "POST", + "OPTIONS", + "MERGE", + "PUT" + ], + "maxAgeInSeconds": 100, + "exposedHeaders": [ + "x-ms-meta-*" + ], + "allowedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ] + }, + { + "allowedOrigins": [ + "*" + ], + "allowedMethods": [ + "GET" + ], + "maxAgeInSeconds": 2, + "exposedHeaders": [ + "*" + ], + "allowedHeaders": [ + "*" + ] + }, + { + "allowedOrigins": [ + "http://www.abc23.com", + "https://www.fabrikam.com/*" + ], + "allowedMethods": [ + "GET", + "PUT" + ], + "maxAgeInSeconds": 2000, + "exposedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x -ms-meta-target*" + ], + "allowedHeaders": [ + "x-ms-meta-12345675754564*" + ] + } + ] + }, + "defaultServiceVersion": "2017-07-29", + "deleteRetentionPolicy": { + "enabled": true, + "days": 300 + }, + "isVersioningEnabled": true, + "changeFeed": { + "enabled": true, + "retentionInDays": 7 + } + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobServicesPutLastAccessTimeBasedTracking.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobServicesPutLastAccessTimeBasedTracking.json new file mode 100644 index 000000000000..a412fc28b489 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/BlobServicesPutLastAccessTimeBasedTracking.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4410", + "accountName": "sto8607", + "BlobServicesName": "default", + "api-version": "2020-08-01-preview", + "monitor": "true", + "parameters": { + "properties": { + "lastAccessTimeTrackingPolicy": { + "enable": true, + "name": "AccessTimeTracking", + "trackingGranularityInDays": 1, + "blobType": [ + "blockBlob" + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res4410/providers/Microsoft.Storage/storageAccounts/sto8607/blobServices/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/blobServices", + "properties": { + "lastAccessTimeTrackingPolicy": { + "enable": true, + "name": "AccessTimeTracking", + "trackingGranularityInDays": 1, + "blobType": [ + "blockBlob" + ] + } + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/DeletedAccountGet.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/DeletedAccountGet.json new file mode 100644 index 000000000000..ba101108e6a1 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/DeletedAccountGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "deletedAccountName": "sto1125", + "location": "eastus", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/providers/Microsoft.Storage/locations/eastus/deletedAccounts/sto1125", + "name": "sto1125", + "type": "Microsoft.Storage/deletedAccounts", + "properties": { + "storageAccountResourceId": "/subscriptions/{subscription-id}/resourceGroups/sto/providers/Microsoft.Storage/storageAccounts/sto1125", + "location": "eastus", + "restoreReference": "sto1125|2020-08-17T03:35:37.4588848Z", + "creationTime": "2020-08-17T03:35:37.4588848Z", + "deletionTime": "2020-08-17T04:41:37.3442475Z" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/DeletedAccountList.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/DeletedAccountList.json new file mode 100644 index 000000000000..349a61b71f5f --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/DeletedAccountList.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/providers/Microsoft.Storage/locations/eastus/deletedAccounts/sto1125", + "name": "sto1125", + "type": "Microsoft.Storage/deletedAccounts", + "properties": { + "storageAccountResourceId": "/subscriptions/{subscription-id}/resourceGroups/sto/providers/Microsoft.Storage/storageAccounts/sto1125", + "location": "eastus", + "restoreReference": "sto1125|2020-08-17T03:35:37.4588848Z", + "creationTime": "2020-08-17T03:35:37.4588848Z", + "deletionTime": "2020-08-17T04:41:37.3442475Z" + } + }, + { + "id": "/subscriptions/{subscription-id}/providers/Microsoft.Storage/locations/eastus/deletedAccounts/sto1126", + "name": "sto1126", + "type": "Microsoft.Storage/deletedAccounts", + "properties": { + "storageAccountResourceId": "/subscriptions/{subscription-id}/resourceGroups/sto/providers/Microsoft.Storage/storageAccounts/sto1126", + "location": "eastus", + "restoreReference": "sto1126|2020-08-17T03:35:37.4588848Z", + "creationTime": "2020-08-19T15:10:21.5902165Z", + "deletionTime": "2020-08-20T06:11:55.1957302Z" + } + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/DeletedBlobContainersList.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/DeletedBlobContainersList.json new file mode 100644 index 000000000000..07187362cf95 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/DeletedBlobContainersList.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9290", + "accountName": "sto1590", + "$include": "deleted", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9290/providers/Microsoft.Storage/storageAccounts/sto1590/blobServices/default/containers/container1644", + "name": "container1644", + "type": "Microsoft.Storage/storageAccounts/blobServices/containers", + "etag": "\"0x8D589847D51C7DE\"", + "properties": { + "publicAccess": "Container", + "leaseStatus": "Unlocked", + "leaseState": "Available", + "lastModifiedTime": "2018-03-14T08:20:47Z", + "hasImmutabilityPolicy": false, + "hasLegalHold": false + } + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9290/providers/Microsoft.Storage/storageAccounts/sto1590/blobServices/default/containers/container4052", + "name": "container4052", + "type": "Microsoft.Storage/storageAccounts/blobServices/containers", + "etag": "\"0x8D589847DAB5AF9\"", + "properties": { + "publicAccess": "None", + "leaseStatus": "Unlocked", + "leaseState": "Expired", + "lastModifiedTime": "2018-03-14T08:20:47Z", + "hasImmutabilityPolicy": false, + "hasLegalHold": false, + "version": "1234567890", + "deleted": true, + "deletedTime": "2019-12-14T08:20:47Z", + "remainingRetentionDays": 30 + } + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/DeletedFileSharesList.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/DeletedFileSharesList.json new file mode 100644 index 000000000000..367bdc496aef --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/DeletedFileSharesList.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9290", + "accountName": "sto1590", + "$expand": "deleted", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9290/providers/Microsoft.Storage/storageAccounts/sto1590/fileServices/default/shares/share1644_1234567890", + "name": "share1644", + "type": "Microsoft.Storage/storageAccounts/fileServices/shares", + "etag": "\"0x8D589847D51C7DE\"", + "properties": { + "lastModifiedTime": "2019-05-14T08:20:47Z", + "shareQuota": 1024, + "version": "1234567890", + "deleted": true, + "deletedTime": "2019-12-14T08:20:47Z", + "remainingRetentionDays": 30 + } + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9290/providers/Microsoft.Storage/storageAccounts/sto1590/fileServices/default/shares/share4052", + "name": "share4052", + "type": "Microsoft.Storage/storageAccounts/fileServices/shares", + "etag": "\"0x8D589847DAB5AF9\"", + "properties": { + "lastModifiedTime": "2019-05-14T08:20:47Z", + "shareQuota": 1024 + } + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/FileServicesGet.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/FileServicesGet.json new file mode 100644 index 000000000000..8eb74767f742 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/FileServicesGet.json @@ -0,0 +1,86 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4410", + "accountName": "sto8607", + "FileServicesName": "default", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res4410/providers/Microsoft.Storage/storageAccounts/sto8607/fileServices/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/fileServices", + "properties": { + "cors": { + "corsRules": [ + { + "allowedOrigins": [ + "http://www.contoso.com", + "http://www.fabrikam.com" + ], + "allowedMethods": [ + "GET", + "HEAD", + "POST", + "OPTIONS", + "MERGE", + "PUT" + ], + "maxAgeInSeconds": 100, + "exposedHeaders": [ + "x-ms-meta-*" + ], + "allowedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ] + }, + { + "allowedOrigins": [ + "*" + ], + "allowedMethods": [ + "GET" + ], + "maxAgeInSeconds": 2, + "exposedHeaders": [ + "*" + ], + "allowedHeaders": [ + "*" + ] + }, + { + "allowedOrigins": [ + "http://www.abc23.com", + "https://www.fabrikam.com/*" + ], + "allowedMethods": [ + "GET", + "PUT" + ], + "maxAgeInSeconds": 2000, + "exposedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ], + "allowedHeaders": [ + "x-ms-meta-12345675754564*" + ] + } + ] + } + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/FileServicesList.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/FileServicesList.json new file mode 100644 index 000000000000..35748bd6bbd9 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/FileServicesList.json @@ -0,0 +1,89 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9290", + "accountName": "sto1590", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res4410/providers/Microsoft.Storage/storageAccounts/sto8607/fileServices/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/fileServices", + "properties": { + "cors": { + "corsRules": [ + { + "allowedOrigins": [ + "http://www.contoso.com", + "http://www.fabrikam.com" + ], + "allowedMethods": [ + "GET", + "HEAD", + "POST", + "OPTIONS", + "MERGE", + "PUT" + ], + "maxAgeInSeconds": 100, + "exposedHeaders": [ + "x-ms-meta-*" + ], + "allowedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ] + }, + { + "allowedOrigins": [ + "*" + ], + "allowedMethods": [ + "GET" + ], + "maxAgeInSeconds": 2, + "exposedHeaders": [ + "*" + ], + "allowedHeaders": [ + "*" + ] + }, + { + "allowedOrigins": [ + "http://www.abc23.com", + "https://www.fabrikam.com/*" + ], + "allowedMethods": [ + "GET", + "PUT" + ], + "maxAgeInSeconds": 2000, + "exposedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ], + "allowedHeaders": [ + "x-ms-meta-12345675754564*" + ] + } + ] + } + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + } + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/FileServicesPut.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/FileServicesPut.json new file mode 100644 index 000000000000..4ec0318cbdb9 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/FileServicesPut.json @@ -0,0 +1,151 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4410", + "accountName": "sto8607", + "FileServicesName": "default", + "api-version": "2020-08-01-preview", + "monitor": "true", + "parameters": { + "properties": { + "cors": { + "corsRules": [ + { + "allowedOrigins": [ + "http://www.contoso.com", + "http://www.fabrikam.com" + ], + "allowedMethods": [ + "GET", + "HEAD", + "POST", + "OPTIONS", + "MERGE", + "PUT" + ], + "maxAgeInSeconds": 100, + "exposedHeaders": [ + "x-ms-meta-*" + ], + "allowedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ] + }, + { + "allowedOrigins": [ + "*" + ], + "allowedMethods": [ + "GET" + ], + "maxAgeInSeconds": 2, + "exposedHeaders": [ + "*" + ], + "allowedHeaders": [ + "*" + ] + }, + { + "allowedOrigins": [ + "http://www.abc23.com", + "https://www.fabrikam.com/*" + ], + "allowedMethods": [ + "GET", + "PUT" + ], + "maxAgeInSeconds": 2000, + "exposedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ], + "allowedHeaders": [ + "x-ms-meta-12345675754564*" + ] + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res4410/providers/Microsoft.Storage/storageAccounts/sto8607/fileServices/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/fileServices", + "properties": { + "cors": { + "corsRules": [ + { + "allowedOrigins": [ + "http://www.contoso.com", + "http://www.fabrikam.com" + ], + "allowedMethods": [ + "GET", + "HEAD", + "POST", + "OPTIONS", + "MERGE", + "PUT" + ], + "maxAgeInSeconds": 100, + "exposedHeaders": [ + "x-ms-meta-*" + ], + "allowedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ] + }, + { + "allowedOrigins": [ + "*" + ], + "allowedMethods": [ + "GET" + ], + "maxAgeInSeconds": 2, + "exposedHeaders": [ + "*" + ], + "allowedHeaders": [ + "*" + ] + }, + { + "allowedOrigins": [ + "http://www.abc23.com", + "https://www.fabrikam.com/*" + ], + "allowedMethods": [ + "GET", + "PUT" + ], + "maxAgeInSeconds": 2000, + "exposedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ], + "allowedHeaders": [ + "x-ms-meta-12345675754564*" + ] + } + ] + } + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/FileServicesPut_EnableSMBMultichannel.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/FileServicesPut_EnableSMBMultichannel.json new file mode 100644 index 000000000000..4368652b23e3 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/FileServicesPut_EnableSMBMultichannel.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4410", + "accountName": "sto8607", + "FileServicesName": "default", + "api-version": "2020-08-01-preview", + "monitor": "true", + "parameters": { + "properties": { + "protocolSettings": { + "smb": { + "multichannel": { + "enabled": true + } + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res4410/providers/Microsoft.Storage/storageAccounts/sto8607/fileServices/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/fileServices", + "properties": { + "protocolSettings": { + "smb": { + "multichannel": { + "enabled": true + } + } + } + }, + "sku": { + "name": "Premium_LRS", + "tier": "Premium" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/FileServicesPut_EnableSecureSmbFeatures.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/FileServicesPut_EnableSecureSmbFeatures.json new file mode 100644 index 000000000000..a7a3ae4eba80 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/FileServicesPut_EnableSecureSmbFeatures.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4410", + "accountName": "sto8607", + "FileServicesName": "default", + "api-version": "2021-02-01", + "monitor": "true", + "parameters": { + "properties": { + "protocolSettings": { + "smb": { + "versions": "SMB2.1;SMB3.0;SMB3.1.1", + "authenticationMethods": "NTLMv2;Kerberos", + "kerberosTicketEncryption": "RC4-HMAC;AES-256", + "channelEncryption": "AES-128-CCM;AES-128-GCM;AES-256-GCM" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res4410/providers/Microsoft.Storage/storageAccounts/sto8607/fileServices/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/fileServices", + "properties": { + "protocolSettings": { + "smb": { + "versions": "SMB2.1;SMB3.0;SMB3.1.1", + "authenticationMethods": "NTLMv2;Kerberos", + "kerberosTicketEncryption": "RC4-HMAC;AES-256", + "channelEncryption": "AES-128-CCM;AES-128-GCM;AES-256-GCM" + } + } + }, + "sku": { + "name": "Premium_LRS", + "tier": "Premium" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/FileShareSnapshotsList.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/FileShareSnapshotsList.json new file mode 100644 index 000000000000..9410c953b651 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/FileShareSnapshotsList.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9290", + "accountName": "sto1590", + "$expand": "snapshots", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9290/providers/Microsoft.Storage/storageAccounts/sto1590/fileServices/default/shares/share4052", + "name": "share4052", + "type": "Microsoft.Storage/storageAccounts/fileServices/shares", + "etag": "\"0x8D589847DAB5AF9\"", + "properties": { + "lastModifiedTime": "2020-10-26T05:47:05.0000000Z", + "shareQuota": 1024 + } + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9290/providers/Microsoft.Storage/storageAccounts/sto1590/fileServices/default/shares/share4052", + "name": "share4052", + "type": "Microsoft.Storage/storageAccounts/fileServices/shares", + "etag": "\"0x8D589847DAB5AF9\"", + "properties": { + "lastModifiedTime": "2020-10-26T05:47:05.0000000Z", + "shareQuota": 1024, + "snapshotTime": "2020-10-26T05:48:07.0000000Z" + } + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/FileSharesDelete.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/FileSharesDelete.json new file mode 100644 index 000000000000..5c9c087b70bc --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/FileSharesDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4079", + "accountName": "sto4506", + "shareName": "share9689", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/FileSharesGet.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/FileSharesGet.json new file mode 100644 index 000000000000..40249307aaa9 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/FileSharesGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9871", + "accountName": "sto6217", + "shareName": "share1634", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9871/providers/Microsoft.Storage/storageAccounts/sto6217/fileServices/default/shares/share1634", + "name": "share1634", + "type": "Microsoft.Storage/storageAccounts/fileServices/shares", + "etag": "\"0x8D592D74CC20EBA\"", + "properties": { + "lastModifiedTime": "2019-05-26T05:06:14Z", + "shareQuota": 1024 + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/FileSharesGet_Stats.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/FileSharesGet_Stats.json new file mode 100644 index 000000000000..1e1bcb64860f --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/FileSharesGet_Stats.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9871", + "accountName": "sto6217", + "shareName": "share1634", + "$expand": "stats", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9871/providers/Microsoft.Storage/storageAccounts/sto6217/fileServices/default/shares/share1634", + "name": "share1634", + "type": "Microsoft.Storage/storageAccounts/fileServices/shares", + "etag": "\"0x8D592D74CC20EBA\"", + "properties": { + "lastModifiedTime": "2019-05-26T05:06:14Z", + "shareQuota": 1024, + "shareUsageBytes": 652945 + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/FileSharesList.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/FileSharesList.json new file mode 100644 index 000000000000..c14b8688d0af --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/FileSharesList.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9290", + "accountName": "sto1590", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9290/providers/Microsoft.Storage/storageAccounts/sto1590/fileServices/default/shares/share1644", + "name": "share1644", + "type": "Microsoft.Storage/storageAccounts/fileServices/shares", + "etag": "\"0x8D589847D51C7DE\"", + "properties": { + "lastModifiedTime": "2019-05-14T08:20:47Z", + "shareQuota": 1024 + } + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9290/providers/Microsoft.Storage/storageAccounts/sto1590/fileServices/default/shares/share4052", + "name": "share4052", + "type": "Microsoft.Storage/storageAccounts/fileServices/shares", + "etag": "\"0x8D589847DAB5AF9\"", + "properties": { + "lastModifiedTime": "2019-05-14T08:20:47Z", + "shareQuota": 1024 + } + } + ], + "nextLink": "https://sto1590endpoint/subscriptions/{subscription-id}/resourceGroups/res9290/providers/Microsoft.Storage/storageAccounts/sto1590/fileServices/default/shares?api-version=2020-08-01-preview&$maxpagesize=2&$skipToken=/sto1590/share5103" + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/FileSharesPatch.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/FileSharesPatch.json new file mode 100644 index 000000000000..874b847a9066 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/FileSharesPatch.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "shareName": "share6185", + "api-version": "2020-08-01-preview", + "monitor": "true", + "fileShare": { + "properties": { + "metadata": { + "type": "image" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/fileServices/default/shares/share6185", + "name": "share6185", + "type": "Microsoft.Storage/storageAccounts/fileServices/shares", + "properties": { + "metadata": { + "type": "image" + } + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/FileSharesPut.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/FileSharesPut.json new file mode 100644 index 000000000000..7e5874fbd6ec --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/FileSharesPut.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "shareName": "share6185", + "api-version": "2020-08-01-preview", + "monitor": "true", + "fileShare": {} + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/fileServices/default/shares/share6185", + "name": "share6185", + "type": "Microsoft.Storage/storageAccounts/fileServices/shares" + } + }, + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/fileServices/default/shares/share6185", + "name": "share6185", + "type": "Microsoft.Storage/storageAccounts/fileServices/shares" + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/FileSharesPut_AccessTier.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/FileSharesPut_AccessTier.json new file mode 100644 index 000000000000..60f4fcddcdbd --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/FileSharesPut_AccessTier.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res346", + "accountName": "sto666", + "shareName": "share1235", + "api-version": "2020-08-01-preview", + "monitor": "true", + "fileShare": { + "properties": { + "accessTier": "Hot" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res346/providers/Microsoft.Storage/storageAccounts/sto666/fileServices/default/shares/share1235", + "name": "share1235", + "type": "Microsoft.Storage/storageAccounts/fileServices/shares", + "properties": { + "accessTier": "Hot" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res346/providers/Microsoft.Storage/storageAccounts/sto666/fileServices/default/shares/share1235", + "name": "share1235", + "type": "Microsoft.Storage/storageAccounts/fileServices/shares", + "properties": { + "accessTier": "Hot" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/FileSharesPut_NFS.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/FileSharesPut_NFS.json new file mode 100644 index 000000000000..911098c05a16 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/FileSharesPut_NFS.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res346", + "accountName": "sto666", + "shareName": "share1235", + "api-version": "2020-08-01-preview", + "monitor": "true", + "fileShare": { + "properties": { + "enabledProtocols": "NFS" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res346/providers/Microsoft.Storage/storageAccounts/sto666/fileServices/default/shares/share1235", + "name": "share1235", + "type": "Microsoft.Storage/storageAccounts/fileServices/shares", + "properties": { + "enabledProtocols": "NFS" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res346/providers/Microsoft.Storage/storageAccounts/sto666/fileServices/default/shares/share1235", + "name": "share1235", + "type": "Microsoft.Storage/storageAccounts/fileServices/shares", + "properties": { + "enabledProtocols": "NFS" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/FileSharesRestore.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/FileSharesRestore.json new file mode 100644 index 000000000000..e7f3e769af29 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/FileSharesRestore.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "shareName": "share1249", + "deletedShare": { + "deletedShareName": "share1249", + "deletedShareVersion": "1234567890" + }, + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": {} + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/NfsV3AccountCreate.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/NfsV3AccountCreate.json new file mode 100644 index 000000000000..c7cdc49c5b26 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/NfsV3AccountCreate.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9101", + "accountName": "sto4445", + "api-version": "2021-02-01", + "parameters": { + "sku": { + "name": "Premium_LRS" + }, + "kind": "BlockBlobStorage", + "location": "eastus", + "properties": { + "isHnsEnabled": true, + "isNfsV3Enabled": true, + "supportsHttpsTrafficOnly": false, + "networkAcls": { + "bypass": "AzureServices", + "defaultAction": "Allow", + "ipRules": [], + "virtualNetworkRules": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9101/providers/Microsoft.Network/virtualNetworks/net123/subnets/subnet12" + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9101/providers/Microsoft.Storage/storageAccounts/sto4445", + "kind": "BlockBlobStorage", + "location": "eastus", + "name": "sto4445", + "properties": { + "isHnsEnabled": true, + "isNfsV3Enabled": true, + "supportsHttpsTrafficOnly": false, + "networkAcls": { + "bypass": "AzureServices", + "defaultAction": "Allow", + "ipRules": [], + "virtualNetworkRules": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9101/providers/Microsoft.Network/virtualNetworks/net123/subnets/subnet12" + } + ] + } + }, + "sku": { + "name": "Premium_LRS", + "tier": "Premium" + }, + "type": "Microsoft.Storage/storageAccounts" + } + }, + "202": {} + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/OperationsList.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/OperationsList.json new file mode 100644 index 000000000000..0cae850d4c35 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/OperationsList.json @@ -0,0 +1,473 @@ +{ + "parameters": { + "api-version": "2020-08-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Storage/storageAccounts/write", + "display": { + "provider": "Microsoft Storage", + "resource": "Storage Accounts", + "operation": "Create/Update Storage Account", + "description": "Creates a storage account with the specified parameters or update the properties or tags or adds custom domain for the specified storage account." + } + }, + { + "name": "Microsoft.Storage/storageAccounts/delete", + "display": { + "provider": "Microsoft Storage", + "resource": "Storage Accounts", + "operation": "Delete Storage Account", + "description": "Deletes an existing storage account." + } + }, + { + "name": "Microsoft.Storage/storageAccounts/listkeys/action", + "display": { + "provider": "Microsoft Storage", + "resource": "Storage Accounts", + "operation": "List Storage Account Keys", + "description": "Returns the access keys for the specified storage account." + } + }, + { + "name": "Microsoft.Storage/storageAccounts/regeneratekey/action", + "display": { + "provider": "Microsoft Storage", + "resource": "Storage Accounts", + "operation": "Regenerate Storage Account Keys", + "description": "Regenerates the access keys for the specified storage account." + } + }, + { + "name": "Microsoft.Storage/checknameavailability/read", + "display": { + "provider": "Microsoft Storage", + "resource": "Name Availability", + "operation": "Check Name Availability", + "description": "Checks that account name is valid and is not in use." + } + }, + { + "name": "Microsoft.Storage/storageAccounts/read", + "display": { + "provider": "Microsoft Storage", + "resource": "Storage Accounts", + "operation": "List/Get Storage Account(s)", + "description": "Returns the list of storage accounts or gets the properties for the specified storage account." + } + }, + { + "name": "Microsoft.Storage/usages/read", + "display": { + "provider": "Microsoft Storage", + "resource": "Usage Metrics", + "operation": "Get Subscription Usages", + "description": "Returns the limit and the current usage count for resources in the specified subscription" + } + }, + { + "name": "Microsoft.Storage/storageAccounts/listAccountSas/action", + "display": { + "provider": "Microsoft Storage", + "resource": "Storage Account SAS Token", + "operation": "Returns Storage Account SAS Token", + "description": "Returns the Account SAS token for the specified storage account." + } + }, + { + "name": "Microsoft.Storage/storageAccounts/listServiceSas/action", + "display": { + "provider": "Microsoft Storage", + "resource": "Returns the Service SAS token for the specified storage account.", + "operation": "Returns Storage Service SAS Token", + "description": "Storage Service SAS Token" + } + }, + { + "name": "Microsoft.Storage/locations/deleteVirtualNetworkOrSubnets/action", + "display": { + "provider": "Microsoft Storage", + "resource": "Location", + "operation": "Delete virtual network or subnets notifications", + "description": "Notifies Microsoft.Storage that virtual network or subnet is being deleted" + } + }, + { + "name": "Microsoft.Storage/operations/read", + "display": { + "provider": "Microsoft Storage", + "resource": "Operations", + "operation": "Poll Asynchronous Operation", + "description": "Polls the status of an asynchronous operation." + } + }, + { + "name": "Microsoft.Storage/register/action", + "display": { + "provider": "Microsoft Storage", + "resource": "Storage Resource Provider", + "operation": "Registers the Storage Resource Provider", + "description": "Registers the subscription for the storage resource provider and enables the creation of storage accounts." + } + }, + { + "name": "Microsoft.Storage/skus/read", + "display": { + "provider": "Microsoft Storage", + "resource": "Skus", + "operation": "List Skus", + "description": "Lists the Skus supported by Microsoft.Storage." + } + }, + { + "name": "Microsoft.Storage/storageAccounts/services/diagnosticSettings/write", + "display": { + "provider": "Microsoft Storage", + "resource": "Storage Accounts", + "operation": "Create/Update Diagnostic Settings", + "description": "Create/Update storage account diagnostic settings." + } + }, + { + "name": "Microsoft.Storage/storageAccounts/providers/Microsoft.Insights/metricDefinitions/read", + "display": { + "provider": "Microsoft Storage", + "resource": "Storage Accounts", + "operation": "Get list of Microsoft Storage Metrics definitions", + "description": "Get list of Microsoft Storage Metrics definitions." + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "metricSpecifications": [ + { + "name": "UsedCapacity", + "displayName": "Used capacity", + "displayDescription": "Account used capacity", + "unit": "Bytes", + "aggregationType": "Average", + "fillGapWithZero": false, + "category": "Capacity", + "resourceIdDimensionNameOverride": "AccountResourceId" + } + ] + } + } + }, + { + "name": "Microsoft.Storage/storageAccounts/providers/Microsoft.Insights/diagnosticSettings/read", + "display": { + "provider": "Microsoft Storage", + "resource": "Storage Accounts", + "operation": "Read diagnostic setting", + "description": "Gets the diagnostic setting for the resource." + }, + "origin": "system" + }, + { + "name": "Microsoft.Storage/storageAccounts/providers/Microsoft.Insights/diagnosticSettings/write", + "display": { + "provider": "Microsoft Storage", + "resource": "Storage Accounts", + "operation": "Write diagnostic setting", + "description": "Creates or updates the diagnostic setting for the resource." + }, + "origin": "system" + }, + { + "name": "Microsoft.Storage/storageAccounts/blobServices/providers/Microsoft.Insights/metricDefinitions/read", + "display": { + "provider": "Microsoft Storage", + "resource": "Blob service", + "operation": "Get list of Microsoft Storage Metrics definitions", + "description": "Get list of Microsoft Storage Metrics definitions." + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "metricSpecifications": [ + { + "name": "BlobCapacity", + "displayName": "Blob Capacity", + "displayDescription": "The amount of storage used by the storage account’s Blob service in bytes.", + "unit": "Bytes", + "aggregationType": "Average", + "dimensions": [ + { + "name": "BlobType", + "displayName": "Blob type" + } + ], + "fillGapWithZero": false, + "category": "Capacity" + }, + { + "name": "BlobCount", + "displayName": "Blob Count", + "displayDescription": "The number of Blob in the storage account’s Blob service.", + "unit": "Count", + "aggregationType": "Average", + "dimensions": [ + { + "name": "BlobType", + "displayName": "Blob type" + } + ], + "fillGapWithZero": false, + "category": "Capacity" + }, + { + "name": "ContainerCount", + "displayName": "Blob Container Count", + "displayDescription": "The number of containers in the storage account’s Blob service.", + "unit": "Count", + "aggregationType": "Average", + "fillGapWithZero": false, + "category": "Capacity" + }, + { + "name": "BlobProvisionedSize", + "displayName": "Blob Provisioned Size", + "displayDescription": "The amount of storage provisioned in the storage account’s Blob service in bytes.", + "unit": "Bytes", + "aggregationType": "Average", + "dimensions": [ + { + "name": "BlobType", + "displayName": "Blob type" + } + ], + "fillGapWithZero": false, + "category": "Capacity" + } + ] + } + } + }, + { + "name": "Microsoft.Storage/storageAccounts/blobServices/providers/Microsoft.Insights/diagnosticSettings/read", + "display": { + "provider": "Microsoft Storage", + "resource": "Blob service", + "operation": "Read diagnostic setting", + "description": "Gets the diagnostic setting for the resource." + }, + "origin": "system" + }, + { + "name": "Microsoft.Storage/storageAccounts/blobServices/providers/Microsoft.Insights/diagnosticSettings/write", + "display": { + "provider": "Microsoft Storage", + "resource": "Blob service", + "operation": "Write diagnostic setting", + "description": "Creates or updates the diagnostic setting for the resource." + }, + "origin": "system" + }, + { + "name": "Microsoft.Storage/storageAccounts/tableServices/providers/Microsoft.Insights/metricDefinitions/read", + "display": { + "provider": "Microsoft Storage", + "resource": "Table service", + "operation": "Get list of Microsoft Storage Metrics definitions", + "description": "Get list of Microsoft Storage Metrics definitions." + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "metricSpecifications": [ + { + "name": "TableCapacity", + "displayName": "Table Capacity", + "displayDescription": "The amount of storage used by the storage account’s Table service in bytes.", + "unit": "Bytes", + "aggregationType": "Average", + "fillGapWithZero": false, + "category": "Capacity" + }, + { + "name": "TableCount", + "displayName": "Table Count", + "displayDescription": "The number of table in the storage account’s Table service.", + "unit": "Count", + "aggregationType": "Average", + "fillGapWithZero": false, + "category": "Capacity" + }, + { + "name": "TableEntityCount", + "displayName": "Table Entity Count", + "displayDescription": "The number of table entities in the storage account’s Table service.", + "unit": "Count", + "aggregationType": "Average", + "fillGapWithZero": false, + "category": "Capacity" + } + ] + } + } + }, + { + "name": "Microsoft.Storage/storageAccounts/tableServices/providers/Microsoft.Insights/diagnosticSettings/read", + "display": { + "provider": "Microsoft Storage", + "resource": "Table service", + "operation": "Read diagnostic setting", + "description": "Gets the diagnostic setting for the resource." + }, + "origin": "system" + }, + { + "name": "Microsoft.Storage/storageAccounts/tableServices/providers/Microsoft.Insights/diagnosticSettings/write", + "display": { + "provider": "Microsoft Storage", + "resource": "Table service", + "operation": "Write diagnostic setting", + "description": "Creates or updates the diagnostic setting for the resource." + }, + "origin": "system" + }, + { + "name": "Microsoft.Storage/storageAccounts/queueServices/providers/Microsoft.Insights/metricDefinitions/read", + "display": { + "provider": "Microsoft Storage", + "resource": "Queue service", + "operation": "Get list of Microsoft Storage Metrics definitions", + "description": "Get list of Microsoft Storage Metrics definitions." + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "metricSpecifications": [ + { + "name": "QueueCapacity", + "displayName": "Queue Capacity", + "displayDescription": "The amount of storage used by the storage account’s Queue service in bytes.", + "unit": "Bytes", + "aggregationType": "Average", + "fillGapWithZero": false, + "category": "Capacity" + }, + { + "name": "QueueCount", + "displayName": "Queue Count", + "displayDescription": "The number of queue in the storage account’s Queue service.", + "unit": "Count", + "aggregationType": "Average", + "fillGapWithZero": false, + "category": "Capacity" + }, + { + "name": "QueueMessageCount", + "displayName": "Queue Message Count", + "displayDescription": "The approximate number of queue messages in the storage account’s Queue service.", + "unit": "Count", + "aggregationType": "Average", + "fillGapWithZero": false, + "category": "Capacity" + } + ] + } + } + }, + { + "name": "Microsoft.Storage/storageAccounts/queueServices/providers/Microsoft.Insights/diagnosticSettings/read", + "display": { + "provider": "Microsoft Storage", + "resource": "Queue service", + "operation": "Read diagnostic setting", + "description": "Gets the diagnostic setting for the resource." + }, + "origin": "system" + }, + { + "name": "Microsoft.Storage/storageAccounts/queueServices/providers/Microsoft.Insights/diagnosticSettings/write", + "display": { + "provider": "Microsoft Storage", + "resource": "Queue service", + "operation": "Write diagnostic setting", + "description": "Creates or updates the diagnostic setting for the resource." + }, + "origin": "system" + }, + { + "name": "Microsoft.Storage/storageAccounts/fileServices/providers/Microsoft.Insights/metricDefinitions/read", + "display": { + "provider": "Microsoft Storage", + "resource": "File service", + "operation": "Get list of Microsoft Storage Metrics definitions", + "description": "Get list of Microsoft Storage Metrics definitions." + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "metricSpecifications": [ + { + "name": "FileCapacity", + "displayName": "File Capacity", + "displayDescription": "The amount of storage used by the storage account’s File service in bytes.", + "unit": "Bytes", + "aggregationType": "Average", + "fillGapWithZero": false, + "category": "Capacity" + }, + { + "name": "FileProvisionedSize", + "displayName": "File Provisioned Size", + "displayDescription": "The amount of storage provisioned in the storage account’s File service in bytes.", + "unit": "Bytes", + "aggregationType": "Average", + "fillGapWithZero": false, + "category": "Capacity" + }, + { + "name": "FileCount", + "displayName": "File Count", + "displayDescription": "The number of file in the storage account’s File service.", + "unit": "Count", + "aggregationType": "Average", + "fillGapWithZero": false, + "category": "Capacity" + }, + { + "name": "FileShareCount", + "displayName": "File Share Count", + "displayDescription": "The number of file shares in the storage account’s File service.", + "unit": "Count", + "aggregationType": "Average", + "fillGapWithZero": false, + "category": "Capacity" + } + ] + } + } + }, + { + "name": "Microsoft.Storage/storageAccounts/fileServices/providers/Microsoft.Insights/diagnosticSettings/read", + "display": { + "provider": "Microsoft Storage", + "resource": "File service", + "operation": "Read diagnostic setting", + "description": "Gets the diagnostic setting for the resource." + }, + "origin": "system" + }, + { + "name": "Microsoft.Storage/storageAccounts/fileServices/providers/Microsoft.Insights/diagnosticSettings/write", + "display": { + "provider": "Microsoft Storage", + "resource": "File service", + "operation": "Write diagnostic setting", + "description": "Creates or updates the diagnostic setting for the resource." + }, + "origin": "system" + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/QueueOperationDelete.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/QueueOperationDelete.json new file mode 100644 index 000000000000..a5bdc3c353a4 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/QueueOperationDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "queueName": "queue6185", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "204": {} + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/QueueOperationGet.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/QueueOperationGet.json new file mode 100644 index 000000000000..9bdc029019f2 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/QueueOperationGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "queueName": "queue6185", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/queueServices/default/queues/queue6185", + "name": "queue6185", + "type": "Microsoft.Storage/storageAccounts/queueServices/queues", + "properties": { + "metadata": { + "sample1": "meta1", + "sample2": "meta2" + } + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/QueueOperationList.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/QueueOperationList.json new file mode 100644 index 000000000000..a4d26ef075b0 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/QueueOperationList.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9290", + "accountName": "sto328", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/queueServices/default/queues/queue6185", + "name": "queue6185", + "type": "Microsoft.Storage/storageAccounts/queueServices/queues", + "properties": { + "metadata": { + "sample1": "meta1", + "sample2": "meta2" + } + } + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/queueServices/default/queues/queue6186", + "name": "queue6186", + "type": "Microsoft.Storage/storageAccounts/queueServices/queues", + "properties": { + "metadata": { + "sample1": "meta1", + "sample2": "meta2" + } + } + } + ], + "nextLink": "https://sto1590endpoint/subscriptions/{subscription-id}/resourceGroups/res9290/providers/Microsoft.Storage/storageAccounts/sto328/queueServices/default/queues?api-version=2020-08-01-preview&$maxpagesize=2&$skipToken=/sto328/queue6187" + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/QueueOperationPatch.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/QueueOperationPatch.json new file mode 100644 index 000000000000..b662a6e6fc0b --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/QueueOperationPatch.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "queueName": "queue6185", + "api-version": "2020-08-01-preview", + "monitor": "true", + "queue": {} + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/queueServices/default/queues/queue6185", + "name": "queue6185", + "type": "Microsoft.Storage/storageAccounts/queueServices/queues" + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/QueueOperationPut.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/QueueOperationPut.json new file mode 100644 index 000000000000..b662a6e6fc0b --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/QueueOperationPut.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "queueName": "queue6185", + "api-version": "2020-08-01-preview", + "monitor": "true", + "queue": {} + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/queueServices/default/queues/queue6185", + "name": "queue6185", + "type": "Microsoft.Storage/storageAccounts/queueServices/queues" + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/QueueOperationPutWithMetadata.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/QueueOperationPutWithMetadata.json new file mode 100644 index 000000000000..715f0a90e034 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/QueueOperationPutWithMetadata.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "queueName": "queue6185", + "api-version": "2020-08-01-preview", + "monitor": "true", + "queue": { + "properties": { + "metadata": { + "sample1": "meta1", + "sample2": "meta2" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/queueServices/default/queues/queue6185", + "name": "queue6185", + "type": "Microsoft.Storage/storageAccounts/queueServices/queues", + "properties": { + "metadata": { + "sample1": "meta1", + "sample2": "meta2" + } + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/QueueServicesGet.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/QueueServicesGet.json new file mode 100644 index 000000000000..57674fe2aa55 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/QueueServicesGet.json @@ -0,0 +1,82 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4410", + "accountName": "sto8607", + "queueServiceName": "default", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res4410/providers/Microsoft.Storage/storageAccounts/sto8607/queueServices/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/queueServices", + "properties": { + "cors": { + "corsRules": [ + { + "allowedOrigins": [ + "http://www.contoso.com", + "http://www.fabrikam.com" + ], + "allowedMethods": [ + "GET", + "HEAD", + "POST", + "OPTIONS", + "MERGE", + "PUT" + ], + "maxAgeInSeconds": 100, + "exposedHeaders": [ + "x-ms-meta-*" + ], + "allowedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ] + }, + { + "allowedOrigins": [ + "*" + ], + "allowedMethods": [ + "GET" + ], + "maxAgeInSeconds": 2, + "exposedHeaders": [ + "*" + ], + "allowedHeaders": [ + "*" + ] + }, + { + "allowedOrigins": [ + "http://www.abc23.com", + "https://www.fabrikam.com/*" + ], + "allowedMethods": [ + "GET", + "PUT" + ], + "maxAgeInSeconds": 2000, + "exposedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ], + "allowedHeaders": [ + "x-ms-meta-12345675754564*" + ] + } + ] + } + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/QueueServicesList.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/QueueServicesList.json new file mode 100644 index 000000000000..9856b332de60 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/QueueServicesList.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9290", + "accountName": "sto1590", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res4410/providers/Microsoft.Storage/storageAccounts/sto8607/queueServices/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/queueServices", + "properties": { + "cors": { + "corsRules": [ + { + "allowedOrigins": [ + "http://www.contoso.com", + "http://www.fabrikam.com" + ], + "allowedMethods": [ + "GET", + "HEAD", + "POST", + "OPTIONS", + "MERGE", + "PUT" + ], + "maxAgeInSeconds": 100, + "exposedHeaders": [ + "x-ms-meta-*" + ], + "allowedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ] + }, + { + "allowedOrigins": [ + "*" + ], + "allowedMethods": [ + "GET" + ], + "maxAgeInSeconds": 2, + "exposedHeaders": [ + "*" + ], + "allowedHeaders": [ + "*" + ] + }, + { + "allowedOrigins": [ + "http://www.abc23.com", + "https://www.fabrikam.com/*" + ], + "allowedMethods": [ + "GET", + "PUT" + ], + "maxAgeInSeconds": 2000, + "exposedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ], + "allowedHeaders": [ + "x-ms-meta-12345675754564*" + ] + } + ] + } + } + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/QueueServicesPut.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/QueueServicesPut.json new file mode 100644 index 000000000000..19b5de24e288 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/QueueServicesPut.json @@ -0,0 +1,147 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4410", + "accountName": "sto8607", + "queueServiceName": "default", + "api-version": "2020-08-01-preview", + "monitor": "true", + "parameters": { + "properties": { + "cors": { + "corsRules": [ + { + "allowedOrigins": [ + "http://www.contoso.com", + "http://www.fabrikam.com" + ], + "allowedMethods": [ + "GET", + "HEAD", + "POST", + "OPTIONS", + "MERGE", + "PUT" + ], + "maxAgeInSeconds": 100, + "exposedHeaders": [ + "x-ms-meta-*" + ], + "allowedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ] + }, + { + "allowedOrigins": [ + "*" + ], + "allowedMethods": [ + "GET" + ], + "maxAgeInSeconds": 2, + "exposedHeaders": [ + "*" + ], + "allowedHeaders": [ + "*" + ] + }, + { + "allowedOrigins": [ + "http://www.abc23.com", + "https://www.fabrikam.com/*" + ], + "allowedMethods": [ + "GET", + "PUT" + ], + "maxAgeInSeconds": 2000, + "exposedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ], + "allowedHeaders": [ + "x-ms-meta-12345675754564*" + ] + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res4410/providers/Microsoft.Storage/storageAccounts/sto8607/queueServices/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/queueServices", + "properties": { + "cors": { + "corsRules": [ + { + "allowedOrigins": [ + "http://www.contoso.com", + "http://www.fabrikam.com" + ], + "allowedMethods": [ + "GET", + "HEAD", + "POST", + "OPTIONS", + "MERGE", + "PUT" + ], + "maxAgeInSeconds": 100, + "exposedHeaders": [ + "x-ms-meta-*" + ], + "allowedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ] + }, + { + "allowedOrigins": [ + "*" + ], + "allowedMethods": [ + "GET" + ], + "maxAgeInSeconds": 2, + "exposedHeaders": [ + "*" + ], + "allowedHeaders": [ + "*" + ] + }, + { + "allowedOrigins": [ + "http://www.abc23.com", + "https://www.fabrikam.com/*" + ], + "allowedMethods": [ + "GET", + "PUT" + ], + "maxAgeInSeconds": 2000, + "exposedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ], + "allowedHeaders": [ + "x-ms-meta-12345675754564*" + ] + } + ] + } + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/SKUList.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/SKUList.json new file mode 100644 index 000000000000..47724c855202 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/SKUList.json @@ -0,0 +1,6454 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2020-08-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "eastus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "eastus" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "eastus" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "eastus" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastus2" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastus2" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastus2" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastus2" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "eastus2" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "eastus2" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "true" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "eastus2" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "eastus2" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastus2(stage)" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastus2(stage)" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastus2(stage)" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastus2(stage)" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "eastus2(stage)" + ], + "capabilities": [ + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "eastus2(stage)" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "true" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "eastus2(stage)" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "true" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "eastus2(stage)" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "true" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "westus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "westus" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "westus" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "westus" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westeurope" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westeurope" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westeurope" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westeurope" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "westeurope" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "westeurope" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "westeurope" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "westeurope" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastasia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastasia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastasia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastasia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "eastasia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "eastasia" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "eastasia" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "eastasia" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "southeastasia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "southeastasia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "southeastasia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "southeastasia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "southeastasia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "southeastasia" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "southeastasia" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "southeastasia" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "japaneast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "japaneast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "japaneast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "japaneast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "japaneast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "japaneast" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "japaneast" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "japaneast" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "japanwest" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "japanwest" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "japanwest" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "japanwest" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "japanwest" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "japanwest" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "japanwest" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "japanwest" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "northcentralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "northcentralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "northcentralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "northcentralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "northcentralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "northcentralus" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "northcentralus" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "northcentralus" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "southcentralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "southcentralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "southcentralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "southcentralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "southcentralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "southcentralus" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "southcentralus" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "southcentralus" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "centralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "centralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "centralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "centralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "centralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "centralus" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "centralus" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "centralus" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "northeurope" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "northeurope" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "northeurope" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "northeurope" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "northeurope" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "northeurope" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "northeurope" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "northeurope" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "brazilsouth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "brazilsouth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "brazilsouth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "brazilsouth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "brazilsouth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "brazilsouth" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "brazilsouth" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "brazilsouth" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "australiaeast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "australiaeast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "australiaeast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "australiaeast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "australiaeast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "australiaeast" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "australiaeast" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "australiaeast" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "australiasoutheast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "australiasoutheast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "australiasoutheast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "australiasoutheast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "australiasoutheast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "australiasoutheast" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "australiasoutheast" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "australiasoutheast" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "southindia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "southindia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "southindia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "southindia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "southindia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "southindia" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "southindia" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "southindia" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "centralindia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "centralindia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "centralindia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "centralindia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "centralindia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "centralindia" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "centralindia" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "centralindia" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westindia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westindia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westindia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westindia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "westindia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "westindia" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "westindia" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "westindia" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "canadaeast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "canadaeast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "canadaeast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "canadaeast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "canadaeast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "canadaeast" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "canadaeast" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "canadaeast" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "canadacentral" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "canadacentral" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "canadacentral" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "canadacentral" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "canadacentral" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "canadacentral" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "canadacentral" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "canadacentral" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westus2" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westus2" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westus2" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westus2" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "westus2" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "westus2" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "westus2" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "westus2" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westcentralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westcentralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westcentralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westcentralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "westcentralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "westcentralus" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "westcentralus" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "westcentralus" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "uksouth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "uksouth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "uksouth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "uksouth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "uksouth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "uksouth" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "uksouth" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "uksouth" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "ukwest" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "ukwest" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "ukwest" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "ukwest" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "ukwest" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "ukwest" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "ukwest" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "ukwest" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "koreacentral" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "koreacentral" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "koreacentral" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "koreacentral" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "koreacentral" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "koreacentral" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "koreacentral" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "koreacentral" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "koreasouth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "koreasouth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "koreasouth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "koreasouth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "koreasouth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "koreasouth" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "koreasouth" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "koreasouth" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "uknorth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "uknorth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "uknorth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "uknorth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "uknorth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "uknorth" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "uknorth" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "uknorth" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "uksouth2" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "uksouth2" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "uksouth2" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "uksouth2" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "uksouth2" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "uksouth2" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "uksouth2" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "uksouth2" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastus2euap" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastus2euap" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastus2euap" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastus2euap" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "eastus2euap" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "eastus2euap" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "true" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "eastus2euap" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "true" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "eastus2euap" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "true" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "centraluseuap" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "centraluseuap" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "centraluseuap" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "centraluseuap" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "centraluseuap" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "centraluseuap" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "true" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "centraluseuap" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "true" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "centraluseuap" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "true" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountCheckNameAvailability.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountCheckNameAvailability.json new file mode 100644 index 000000000000..14dea4e1e9f8 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountCheckNameAvailability.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2020-08-01-preview", + "accountName": { + "name": "sto3363", + "type": "Microsoft.Storage/storageAccounts" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": true + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountCreate.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountCreate.json new file mode 100644 index 000000000000..34b27e81dcb0 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountCreate.json @@ -0,0 +1,146 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9101", + "accountName": "sto4445", + "api-version": "2021-02-01", + "parameters": { + "sku": { + "name": "Standard_GRS" + }, + "kind": "Storage", + "location": "eastus", + "extendedLocation": { + "type": "EdgeZone", + "name": "losangeles001" + }, + "properties": { + "keyPolicy": { + "keyExpirationPeriodInDays": 20 + }, + "sasPolicy": { + "sasExpirationPeriod": "1.15:59:59", + "expirationAction": "Log" + }, + "isHnsEnabled": true, + "allowBlobPublicAccess": false, + "minimumTlsVersion": "TLS1_2", + "allowSharedKeyAccess": true, + "routingPreference": { + "routingChoice": "MicrosoftRouting", + "publishMicrosoftEndpoints": true, + "publishInternetEndpoints": true + }, + "encryption": { + "services": { + "file": { + "keyType": "Account", + "enabled": true + }, + "blob": { + "keyType": "Account", + "enabled": true + } + }, + "requireInfrastructureEncryption": false, + "keySource": "Microsoft.Storage" + } + }, + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9101/providers/Microsoft.Storage/storageAccounts/sto4445", + "kind": "Storage", + "location": "eastus", + "name": "sto4445", + "extendedLocation": { + "type": "EdgeZone", + "name": "losangeles001" + }, + "properties": { + "keyPolicy": { + "keyExpirationPeriodInDays": 20 + }, + "sasPolicy": { + "sasExpirationPeriod": "1.15:59:59", + "expirationAction": "Log" + }, + "keyCreationTime": { + "key1": "2021-03-18T04:42:22.4322836Z", + "key2": "2021-03-18T04:42:22.4322836Z" + }, + "isHnsEnabled": true, + "allowBlobPublicAccess": false, + "minimumTlsVersion": "TLS1_2", + "allowSharedKeyAccess": true, + "creationTime": "2017-05-24T13:25:33.4863236Z", + "primaryEndpoints": { + "web": "https://sto4445.web.core.windows.net/", + "dfs": "https://sto4445.dfs.core.windows.net/", + "blob": "https://sto4445.blob.core.windows.net/", + "file": "https://sto4445.file.core.windows.net/", + "queue": "https://sto4445.queue.core.windows.net/", + "table": "https://sto4445.table.core.windows.net/", + "microsoftEndpoints": { + "web": "https://sto4445-microsoftrouting.web.core.windows.net/", + "dfs": "https://sto4445-microsoftrouting.dfs.core.windows.net/", + "blob": "https://sto4445-microsoftrouting.blob.core.windows.net/", + "file": "https://sto4445-microsoftrouting.file.core.windows.net/", + "queue": "https://sto4445-microsoftrouting.queue.core.windows.net/", + "table": "https://sto4445-microsoftrouting.table.core.windows.net/" + }, + "internetEndpoints": { + "web": "https://sto4445-internetrouting.web.core.windows.net/", + "dfs": "https://sto4445-internetrouting.dfs.core.windows.net/", + "blob": "https://sto4445-internetrouting.blob.core.windows.net/", + "file": "https://sto4445-internetrouting.file.core.windows.net/" + } + }, + "primaryLocation": "eastus2euap", + "provisioningState": "Succeeded", + "routingPreference": { + "routingChoice": "MicrosoftRouting", + "publishMicrosoftEndpoints": true, + "publishInternetEndpoints": true + }, + "encryption": { + "services": { + "file": { + "keyType": "Account", + "enabled": true, + "lastEnabledTime": "2019-12-11T20:49:31.7036140Z" + }, + "blob": { + "keyType": "Account", + "enabled": true, + "lastEnabledTime": "2019-12-11T20:49:31.7036140Z" + } + }, + "requireInfrastructureEncryption": false, + "keySource": "Microsoft.Storage" + }, + "secondaryLocation": "centraluseuap", + "statusOfPrimary": "available", + "statusOfSecondary": "available", + "supportsHttpsTrafficOnly": true + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "type": "Microsoft.Storage/storageAccounts" + } + }, + "202": {} + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountCreateObjectReplicationPolicyOnDestination.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountCreateObjectReplicationPolicyOnDestination.json new file mode 100644 index 000000000000..921811358da9 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountCreateObjectReplicationPolicyOnDestination.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res7687", + "accountName": "dst112", + "objectReplicationPolicyId": "default", + "api-version": "2020-08-01-preview", + "monitor": "true", + "properties": { + "properties": { + "sourceAccount": "src1122", + "destinationAccount": "dst112", + "rules": [ + { + "sourceContainer": "scont139", + "destinationContainer": "dcont139", + "filters": { + "prefixMatch": [ + "blobA", + "blobB" + ] + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7687/providers/Microsoft.Storage/storageAccounts/dst112/objectReplicationPolicies/2a20bb73-5717-4635-985a-5d4cf777438f", + "name": "2a20bb73-5717-4635-985a-5d4cf777438f", + "type": "Microsoft.Storage/storageAccounts/objectReplicationPolicies", + "properties": { + "policyId": "2a20bb73-5717-4635-985a-5d4cf777438f", + "sourceAccount": "src1122", + "destinationAccount": "dst112", + "rules": [ + { + "ruleId": "d5d18a48-8801-4554-aeaa-74faf65f5ef9", + "sourceContainer": "sourceContainer1", + "destinationContainer": "destContainer1", + "filters": { + "prefixMatch": [ + "blobA", + "blobB" + ] + } + } + ] + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountCreateObjectReplicationPolicyOnSource.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountCreateObjectReplicationPolicyOnSource.json new file mode 100644 index 000000000000..c651efb45d70 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountCreateObjectReplicationPolicyOnSource.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res7687", + "accountName": "src1122", + "objectReplicationPolicyId": "2a20bb73-5717-4635-985a-5d4cf777438f", + "api-version": "2020-08-01-preview", + "monitor": "true", + "properties": { + "properties": { + "sourceAccount": "src1122", + "destinationAccount": "dst112", + "rules": [ + { + "ruleId": "d5d18a48-8801-4554-aeaa-74faf65f5ef9", + "sourceContainer": "scont139", + "destinationContainer": "dcont139", + "filters": { + "prefixMatch": [ + "blobA", + "blobB" + ], + "minCreationTime": "2020-02-19T16:05:00Z" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7687/providers/Microsoft.Storage/storageAccounts/src1122/objectReplicationPolicies/2a20bb73-5717-4635-985a-5d4cf777438f", + "name": "2a20bb73-5717-4635-985a-5d4cf777438f", + "type": "Microsoft.Storage/storageAccounts/objectReplicationPolicies", + "properties": { + "policyId": "2a20bb73-5717-4635-985a-5d4cf777438f", + "enabledTime": "2019-06-08T03:01:55.7168089Z", + "sourceAccount": "src1122", + "destinationAccount": "dst112", + "rules": [ + { + "ruleId": "d5d18a48-8801-4554-aeaa-74faf65f5ef9", + "sourceContainer": "sourceContainer1", + "destinationContainer": "destContainer1", + "filters": { + "prefixMatch": [ + "blobA", + "blobB" + ], + "minCreationTime": "2020-02-19T16:05:00Z" + } + } + ] + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountCreateUserAssignedEncryptionIdentityWithCMK.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountCreateUserAssignedEncryptionIdentityWithCMK.json new file mode 100644 index 000000000000..77cb4e398ad5 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountCreateUserAssignedEncryptionIdentityWithCMK.json @@ -0,0 +1,118 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9101", + "accountName": "sto4445", + "api-version": "2021-02-01", + "parameters": { + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/{subscription-id}/resourceGroups/res9101/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{managed-identity-name}": {} + } + }, + "sku": { + "name": "Standard_LRS" + }, + "kind": "Storage", + "location": "eastus", + "properties": { + "encryption": { + "services": { + "file": { + "keyType": "Account", + "enabled": true + }, + "blob": { + "keyType": "Account", + "enabled": true + } + }, + "keyvaultproperties": { + "keyvaulturi": "https://myvault8569.vault.azure.net", + "keyname": "wrappingKey", + "keyversion": "" + }, + "keySource": "Microsoft.Keyvault", + "identity": { + "userAssignedIdentity": "/subscriptions/{subscription-id}/resourceGroups/res9101/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{managed-identity-name}" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "identity": { + "userAssignedIdentities": { + "/subscriptions/{subscription-id}/resourceGroups/res9101/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{managed-identity-name}": { + "principalId": "8d823284-1060-42a5-9ec4-ed3d831e24d7", + "clientId": "fbaa6278-1ecc-415c-819f-6e2058d3acb5" + } + }, + "type": "UserAssigned" + }, + "sku": { + "name": "Standard_LRS", + "tier": "Standard" + }, + "kind": "StorageV2", + "id": "/subscriptions/{subscription-id}/resourceGroups/res9101/providers/Microsoft.Storage/storageAccounts/sto4445", + "name": "sto4445", + "type": "Microsoft.Storage/storageAccounts", + "location": "eastus", + "tags": {}, + "properties": { + "privateEndpointConnections": [], + "networkAcls": { + "bypass": "AzureServices", + "virtualNetworkRules": [], + "ipRules": [], + "defaultAction": "Allow" + }, + "supportsHttpsTrafficOnly": true, + "encryption": { + "identity": { + "userAssignedIdentity": "/subscriptions/{subscription-id}/resourcegroups/res9101/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{managed-identity-name}" + }, + "keyvaultproperties": { + "keyvaulturi": "https://myvault8569.vault.azure.net", + "keyname": "wrappingKey", + "keyversion": "", + "currentVersionedKeyIdentifier": "https://myvault8569.vault.azure.net/keys/wrappingKey/0682afdd9c104f4285df20107e956cad", + "lastKeyRotationTimestamp": "2019-12-13T20:36:23.7023290Z" + }, + "services": { + "file": { + "keyType": "Account", + "enabled": true, + "lastEnabledTime": "2020-12-15T00:43:14.1739587Z" + }, + "blob": { + "keyType": "Account", + "enabled": true, + "lastEnabledTime": "2020-12-15T00:43:14.1739587Z" + } + }, + "keySource": "Microsoft.Keyvault" + }, + "accessTier": "Hot", + "provisioningState": "Succeeded", + "creationTime": "2020-12-15T00:43:14.0839093Z", + "primaryEndpoints": { + "web": "https://sto4445.web.core.windows.net/", + "dfs": "https://sto4445.dfs.core.windows.net/", + "blob": "https://sto4445.blob.core.windows.net/", + "file": "https://sto4445.file.core.windows.net/", + "queue": "https://sto4445.queue.core.windows.net/", + "table": "https://sto4445.table.core.windows.net/" + }, + "primaryLocation": "eastus", + "statusOfPrimary": "available" + } + } + }, + "202": {} + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountDelete.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountDelete.json new file mode 100644 index 000000000000..0231254b70e7 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4228", + "accountName": "sto2434", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountDeleteBlobInventoryPolicy.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountDeleteBlobInventoryPolicy.json new file mode 100644 index 000000000000..257bd12d0eb4 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountDeleteBlobInventoryPolicy.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res6977", + "accountName": "sto2527", + "blobInventoryPolicyName": "default", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountDeleteManagementPolicy.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountDeleteManagementPolicy.json new file mode 100644 index 000000000000..bc6a3dbaee8b --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountDeleteManagementPolicy.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res6977", + "accountName": "sto2527", + "managementPolicyName": "default", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountDeleteObjectReplicationPolicy.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountDeleteObjectReplicationPolicy.json new file mode 100644 index 000000000000..db976a80fec2 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountDeleteObjectReplicationPolicy.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res6977", + "accountName": "sto2527", + "objectReplicationPolicyId": "{objectReplicationPolicy-Id}", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountDeletePrivateEndpointConnection.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountDeletePrivateEndpointConnection.json new file mode 100644 index 000000000000..2cb4619cc9f1 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountDeletePrivateEndpointConnection.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res6977", + "accountName": "sto2527", + "privateEndpointConnectionName": "{privateEndpointConnectionName}", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountEnableAD.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountEnableAD.json new file mode 100644 index 000000000000..609ddf8a2eaa --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountEnableAD.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9407", + "accountName": "sto8596", + "api-version": "2020-08-01-preview", + "monitor": "true", + "parameters": { + "properties": { + "azureFilesIdentityBasedAuthentication": { + "directoryServiceOptions": "AD", + "activeDirectoryProperties": { + "domainName": "adtest.com", + "netBiosDomainName": "adtest.com", + "forestName": "adtest.com", + "domainGuid": "aebfc118-9fa9-4732-a21f-d98e41a77ae1", + "domainSid": "S-1-5-21-2400535526-2334094090-2402026252", + "azureStorageSid": "S-1-5-21-2400535526-2334094090-2402026252-0012" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9407/providers/Microsoft.Storage/storageAccounts/sto8596", + "kind": "Storage", + "location": "eastus2(stage)", + "name": "sto8596", + "properties": { + "creationTime": "2017-06-01T02:42:41.7633306Z", + "azureFilesIdentityBasedAuthentication": { + "directoryServiceOptions": "AD", + "activeDirectoryProperties": { + "domainName": "adtest.com", + "netBiosDomainName": "adtest.com", + "forestName": "adtest.com", + "domainGuid": "aebfc118-9fa9-4732-a21f-d98e41a77ae1", + "domainSid": "S-1-5-21-2400535526-2334094090-2402026252", + "azureStorageSid": "S-1-5-21-2400535526-2334094090-2402026252-0012" + } + }, + "primaryEndpoints": { + "web": "https://sto8596.web.core.windows.net/", + "dfs": "https://sto8596.dfs.core.windows.net/", + "blob": "https://sto8596.blob.core.windows.net/", + "file": "https://sto8596.file.core.windows.net/", + "queue": "https://sto8596.queue.core.windows.net/", + "table": "https://sto8596.table.core.windows.net/" + }, + "primaryLocation": "eastus2(stage)", + "provisioningState": "Succeeded", + "secondaryLocation": "northcentralus(stage)", + "statusOfPrimary": "available", + "statusOfSecondary": "available", + "supportsHttpsTrafficOnly": false + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "type": "Microsoft.Storage/storageAccounts" + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountEnableCMK.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountEnableCMK.json new file mode 100644 index 000000000000..cbc8b711edca --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountEnableCMK.json @@ -0,0 +1,94 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9407", + "accountName": "sto8596", + "api-version": "2020-08-01-preview", + "monitor": "true", + "parameters": { + "properties": { + "encryption": { + "services": { + "file": { + "keyType": "Account", + "enabled": true + }, + "blob": { + "keyType": "Account", + "enabled": true + } + }, + "keySource": "Microsoft.Keyvault", + "keyvaultproperties": { + "keyvaulturi": "https://myvault8569.vault.azure.net", + "keyname": "wrappingKey", + "keyversion": "" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9407/providers/Microsoft.Storage/storageAccounts/sto8596", + "identity": { + "principalId": "911871cc-ffd1-4fc4-ac11-7a316433ea66", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "kind": "Storage", + "location": "eastus2(stage)", + "name": "sto8596", + "properties": { + "creationTime": "2017-06-01T02:42:41.7633306Z", + "encryption": { + "services": { + "file": { + "keyType": "Account", + "enabled": true, + "lastEnabledTime": "2019-12-11T20:49:31.7036140Z" + }, + "blob": { + "keyType": "Account", + "enabled": true, + "lastEnabledTime": "2019-12-11T20:49:31.7036140Z" + } + }, + "keySource": "Microsoft.Keyvault", + "keyvaultproperties": { + "keyvaulturi": "https://myvault8569.vault.azure.net", + "keyname": "wrappingKey", + "keyversion": "", + "currentVersionedKeyIdentifier": "https://myvault8569.vault.azure.net/keys/wrappingKey/0682afdd9c104f4285df20107e956cad", + "lastKeyRotationTimestamp": "2019-12-13T20:36:23.7023290Z" + } + }, + "primaryEndpoints": { + "web": "https://sto8596.web.core.windows.net/", + "dfs": "https://sto8596.dfs.core.windows.net/", + "blob": "https://sto8596.blob.core.windows.net/", + "file": "https://sto8596.file.core.windows.net/", + "queue": "https://sto8596.queue.core.windows.net/", + "table": "https://sto8596.table.core.windows.net/" + }, + "primaryLocation": "eastus2(stage)", + "provisioningState": "Succeeded", + "secondaryLocation": "northcentralus(stage)", + "statusOfPrimary": "available", + "statusOfSecondary": "available", + "supportsHttpsTrafficOnly": false + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "type": "Microsoft.Storage/storageAccounts" + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountEncryptionScopeList.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountEncryptionScopeList.json new file mode 100644 index 000000000000..6a71efff520e --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountEncryptionScopeList.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "resource-group-name", + "accountName": "{storage-account-name}", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/resource-group-name/providers/Microsoft.Storage/storageAccounts/{storage-account-name}/encryptionScopes/scope-1", + "name": "scope-1", + "type": "Microsoft.Storage/storageAccounts/encryptionScopes", + "properties": { + "source": "Microsoft.Storage", + "state": "Enabled", + "creationTime": "2018-10-16T02:42:41.7633306Z", + "lastModifiedTime": "2018-10-16T02:42:41.7633306Z" + } + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/resource-group-name/providers/Microsoft.Storage/storageAccounts/{storage-account-name}/encryptionScopes/scope-2", + "name": "scope-2", + "type": "Microsoft.Storage/storageAccounts/encryptionScopes", + "properties": { + "source": "Microsoft.KeyVault", + "state": "Enabled", + "keyVaultProperties": { + "keyUri": "https://testvault.vault.core.windows.net/keys/key1/863425f1358359c" + }, + "creationTime": "2018-10-16T04:32:14.3355306Z", + "lastModifiedTime": "2018-10-17T06:23:14.4513306Z" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountFailover.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountFailover.json new file mode 100644 index 000000000000..d5633f6c53a5 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountFailover.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4228", + "accountName": "sto2434", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountGetBlobInventoryPolicy.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountGetBlobInventoryPolicy.json new file mode 100644 index 000000000000..24e85d9cbabe --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountGetBlobInventoryPolicy.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res7687", + "accountName": "sto9699", + "blobInventoryPolicyName": "default", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7687/providers/Microsoft.Storage/storageAccounts/sto9699/inventoryPolicies/default", + "name": "DefaultInventoryPolicy", + "type": "Microsoft.Storage/storageAccounts/inventoryPolicies", + "properties": { + "policy": { + "enabled": true, + "type": "Inventory", + "destination": "containerName", + "rules": [ + { + "enabled": true, + "name": "inventoryPolicyRule1", + "definition": { + "filters": { + "blobTypes": [ + "blockBlob", + "appendBlob", + "pageBlob" + ], + "prefixMatch": [ + "inventoryprefix1", + "inventoryprefix2" + ], + "includeSnapshots": true, + "includeBlobVersions": true + } + } + } + ] + }, + "lastModifiedTime": "2020-10-05T02:53:39.0932539Z" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountGetEncryptionScope.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountGetEncryptionScope.json new file mode 100644 index 000000000000..6ca8edf6f712 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountGetEncryptionScope.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "resource-group-name", + "accountName": "{storage-account-name}", + "encryptionScopeName": "{encryption-scope-name}", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/resource-group-name/providers/Microsoft.Storage/storageAccounts/{storage-account-name}/encryptionScopes/{encryption-scope-name}", + "name": "{encyrption-scope-name}", + "type": "Microsoft.Storage/storageAccounts/encryptionScopes", + "properties": { + "source": "Microsoft.Storage", + "state": "Enabled", + "creationTime": "2018-10-16T02:42:41.7633306Z", + "lastModifiedTime": "2018-10-16T02:42:41.7633306Z" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountGetManagementPolicy.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountGetManagementPolicy.json new file mode 100644 index 000000000000..59968b755c34 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountGetManagementPolicy.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res6977", + "accountName": "sto2527", + "managementPolicyName": "default", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.Storage/storageAccounts/sto288/managementPolicies/default", + "name": "DefaultManagementPolicy", + "type": "Microsoft.Storage/storageAccounts/managementPolicies", + "properties": { + "policy": { + "rules": [ + { + "enabled": true, + "name": "olcmtest", + "type": "Lifecycle", + "definition": { + "filters": { + "blobTypes": [ + "blockBlob" + ], + "prefixMatch": [ + "olcmtestcontainer" + ] + }, + "actions": { + "baseBlob": { + "tierToCool": { + "daysAfterModificationGreaterThan": 30 + }, + "tierToArchive": { + "daysAfterModificationGreaterThan": 90 + }, + "delete": { + "daysAfterModificationGreaterThan": 1000 + } + }, + "snapshot": { + "delete": { + "daysAfterCreationGreaterThan": 30 + } + } + } + } + } + ] + }, + "lastModifiedTime": "2018-06-08T03:01:55.7168089Z" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountGetObjectReplicationPolicy.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountGetObjectReplicationPolicy.json new file mode 100644 index 000000000000..4418839a88e8 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountGetObjectReplicationPolicy.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res6977", + "accountName": "sto2527", + "objectReplicationPolicyId": "{objectReplicationPolicy-Id}", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res6977/providers/Microsoft.Storage/storageAccounts/sto2527/objectReplicationPolicies/{objectReplicationPolicy-Id}", + "name": "{objectReplicationPolicy-Id}", + "type": "Microsoft.Storage/storageAccounts/objectReplicationPolicies", + "properties": { + "policyId": "{objectReplicationPolicy-Id}", + "enabledTime": "2019-06-08T03:01:55.7168089Z", + "sourceAccount": "sto2527", + "destinationAccount": "destAccount1", + "rules": [ + { + "sourceContainer": "sourceContainer1", + "destinationContainer": "destContainer1", + "filters": { + "prefixMatch": [ + "blobA", + "blobB" + ] + } + }, + { + "sourceContainer": "sourceContainer1", + "destinationContainer": "destContainer1", + "filters": { + "prefixMatch": [ + "blobC", + "blobD" + ] + } + } + ] + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountGetPrivateEndpointConnection.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountGetPrivateEndpointConnection.json new file mode 100644 index 000000000000..a75298ddc6a7 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountGetPrivateEndpointConnection.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res6977", + "accountName": "sto2527", + "privateEndpointConnectionName": "{privateEndpointConnectionName}", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.Storage/storageAccounts/sto288/privateEndpointConnections/{privateEndpointConnectionName}", + "name": "{privateEndpointConnectionName}", + "type": "Microsoft.Storage/storageAccounts/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.Network/privateEndpoints/petest01" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionRequired": "None" + } + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountGetProperties.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountGetProperties.json new file mode 100644 index 000000000000..dab942526d74 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountGetProperties.json @@ -0,0 +1,101 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9407", + "accountName": "sto8596", + "api-version": "2021-02-01", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9407/providers/Microsoft.Storage/storageAccounts/sto8596", + "kind": "Storage", + "location": "eastus2(stage)", + "name": "sto8596", + "properties": { + "keyCreationTime": { + "key1": "2021-03-18T04:42:22.4322836Z", + "key2": "2021-03-18T04:42:22.4322836Z" + }, + "geoReplicationStats": { + "status": "Live", + "lastSyncTime": "2018-10-30T00:25:34Z", + "canFailover": true + }, + "isHnsEnabled": true, + "creationTime": "2017-06-01T02:42:41.7633306Z", + "networkAcls": { + "bypass": "AzureServices", + "defaultAction": "Allow", + "ipRules": [], + "virtualNetworkRules": [], + "resourceAccessRules": [ + { + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "resourceId": "/subscriptions/a7e99807-abbf-4642-bdec-2c809a96a8bc/resourceGroups/res9407/providers/Microsoft.Synapse/workspaces/testworkspace" + } + ] + }, + "primaryEndpoints": { + "web": "https://sto8596.web.core.windows.net/", + "dfs": "https://sto8596.dfs.core.windows.net/", + "blob": "https://sto8596.blob.core.windows.net/", + "file": "https://sto8596.file.core.windows.net/", + "queue": "https://sto8596.queue.core.windows.net/", + "table": "https://sto8596.table.core.windows.net/", + "microsoftEndpoints": { + "web": "https://sto8596-microsoftrouting.web.core.windows.net/", + "dfs": "https://sto8596-microsoftrouting.dfs.core.windows.net/", + "blob": "https://sto8596-microsoftrouting.blob.core.windows.net/", + "file": "https://sto8596-microsoftrouting.file.core.windows.net/", + "queue": "https://sto8596-microsoftrouting.queue.core.windows.net/", + "table": "https://sto8596-microsoftrouting.table.core.windows.net/" + }, + "internetEndpoints": { + "web": "https://sto8596-internetrouting.web.core.windows.net/", + "dfs": "https://sto8596-internetrouting.dfs.core.windows.net/", + "blob": "https://sto8596-internetrouting.blob.core.windows.net/", + "file": "https://sto8596-internetrouting.file.core.windows.net/" + } + }, + "primaryLocation": "eastus2(stage)", + "provisioningState": "Succeeded", + "routingPreference": { + "routingChoice": "MicrosoftRouting", + "publishMicrosoftEndpoints": true, + "publishInternetEndpoints": true + }, + "encryption": { + "services": { + "file": { + "keyType": "Account", + "enabled": true, + "lastEnabledTime": "2019-12-11T20:49:31.7036140Z" + }, + "blob": { + "keyType": "Account", + "enabled": true, + "lastEnabledTime": "2019-12-11T20:49:31.7036140Z" + } + }, + "keySource": "Microsoft.Storage" + }, + "secondaryLocation": "northcentralus(stage)", + "statusOfPrimary": "available", + "statusOfSecondary": "available", + "supportsHttpsTrafficOnly": false + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "type": "Microsoft.Storage/storageAccounts" + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountGetPropertiesCMKEnabled.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountGetPropertiesCMKEnabled.json new file mode 100644 index 000000000000..8b8626bd2f10 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountGetPropertiesCMKEnabled.json @@ -0,0 +1,104 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9407", + "accountName": "sto8596", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9407/providers/Microsoft.Storage/storageAccounts/sto8596", + "identity": { + "principalId": "911871cc-ffd1-4fc4-ac11-7a316433ea66", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "kind": "Storage", + "location": "eastus2(stage)", + "name": "sto8596", + "properties": { + "geoReplicationStats": { + "status": "Live", + "lastSyncTime": "2018-10-30T00:25:34Z", + "canFailover": true + }, + "isHnsEnabled": true, + "creationTime": "2017-06-01T02:42:41.7633306Z", + "networkAcls": { + "bypass": "AzureServices", + "defaultAction": "Allow", + "ipRules": [], + "virtualNetworkRules": [], + "resourceAccessRules": [] + }, + "primaryEndpoints": { + "web": "https://sto8596.web.core.windows.net/", + "dfs": "https://sto8596.dfs.core.windows.net/", + "blob": "https://sto8596.blob.core.windows.net/", + "file": "https://sto8596.file.core.windows.net/", + "queue": "https://sto8596.queue.core.windows.net/", + "table": "https://sto8596.table.core.windows.net/", + "microsoftEndpoints": { + "web": "https://sto8596-microsoftrouting.web.core.windows.net/", + "dfs": "https://sto8596-microsoftrouting.dfs.core.windows.net/", + "blob": "https://sto8596-microsoftrouting.blob.core.windows.net/", + "file": "https://sto8596-microsoftrouting.file.core.windows.net/", + "queue": "https://sto8596-microsoftrouting.queue.core.windows.net/", + "table": "https://sto8596-microsoftrouting.table.core.windows.net/" + }, + "internetEndpoints": { + "web": "https://sto8596-internetrouting.web.core.windows.net/", + "dfs": "https://sto8596-internetrouting.dfs.core.windows.net/", + "blob": "https://sto8596-internetrouting.blob.core.windows.net/", + "file": "https://sto8596-internetrouting.file.core.windows.net/" + } + }, + "primaryLocation": "eastus2(stage)", + "provisioningState": "Succeeded", + "routingPreference": { + "routingChoice": "MicrosoftRouting", + "publishMicrosoftEndpoints": true, + "publishInternetEndpoints": true + }, + "encryption": { + "services": { + "file": { + "keyType": "Account", + "enabled": true, + "lastEnabledTime": "2019-12-11T20:49:31.7036140Z" + }, + "blob": { + "keyType": "Account", + "enabled": true, + "lastEnabledTime": "2019-12-11T20:49:31.7036140Z" + } + }, + "keySource": "Microsoft.Keyvault", + "keyvaultproperties": { + "keyvaulturi": "https://myvault8569.vault.azure.net", + "keyname": "wrappingKey", + "keyversion": "", + "currentVersionedKeyIdentifier": "https://myvault8569.vault.azure.net/keys/wrappingKey/0682afdd9c104f4285df20107e956cad", + "lastKeyRotationTimestamp": "2019-12-13T20:36:23.7023290Z" + } + }, + "secondaryLocation": "northcentralus(stage)", + "statusOfPrimary": "available", + "statusOfSecondary": "available", + "supportsHttpsTrafficOnly": false + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "type": "Microsoft.Storage/storageAccounts" + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountList.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountList.json new file mode 100644 index 000000000000..c0617cc2028f --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountList.json @@ -0,0 +1,313 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res2627/providers/Microsoft.Storage/storageAccounts/sto1125", + "kind": "Storage", + "location": "eastus", + "name": "sto1125", + "properties": { + "isHnsEnabled": true, + "creationTime": "2017-05-24T13:28:53.4540398Z", + "primaryEndpoints": { + "web": "https://sto1125.web.core.windows.net/", + "dfs": "https://sto1125.dfs.core.windows.net/", + "blob": "https://sto1125.blob.core.windows.net/", + "file": "https://sto1125.file.core.windows.net/", + "queue": "https://sto1125.queue.core.windows.net/", + "table": "https://sto1125.table.core.windows.net/", + "microsoftEndpoints": { + "web": "https://sto1125-microsoftrouting.web.core.windows.net/", + "dfs": "https://sto1125-microsoftrouting.dfs.core.windows.net/", + "blob": "https://sto1125-microsoftrouting.blob.core.windows.net/", + "file": "https://sto1125-microsoftrouting.file.core.windows.net/", + "queue": "https://sto1125-microsoftrouting.queue.core.windows.net/", + "table": "https://sto1125-microsoftrouting.table.core.windows.net/" + }, + "internetEndpoints": { + "web": "https://sto1125-internetrouting.web.core.windows.net/", + "dfs": "https://sto1125-internetrouting.dfs.core.windows.net/", + "blob": "https://sto1125-internetrouting.blob.core.windows.net/", + "file": "https://sto1125-internetrouting.file.core.windows.net/" + } + }, + "primaryLocation": "eastus", + "provisioningState": "Succeeded", + "routingPreference": { + "routingChoice": "MicrosoftRouting", + "publishMicrosoftEndpoints": true, + "publishInternetEndpoints": true + }, + "encryption": { + "services": { + "file": { + "keyType": "Account", + "enabled": true, + "lastEnabledTime": "2019-12-11T20:49:31.7036140Z" + }, + "blob": { + "keyType": "Account", + "enabled": true, + "lastEnabledTime": "2019-12-11T20:49:31.7036140Z" + } + }, + "keySource": "Microsoft.Storage" + }, + "secondaryLocation": "centraluseuap", + "statusOfPrimary": "available", + "statusOfSecondary": "available", + "supportsHttpsTrafficOnly": false + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "type": "Microsoft.Storage/storageAccounts" + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/testcmk3/providers/Microsoft.Storage/storageAccounts/sto3699", + "identity": { + "principalId": "356d057d-cba5-44dd-8a30-b2e547bc416b", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "kind": "Storage", + "location": "eastus", + "name": "sto3699", + "properties": { + "creationTime": "2017-05-24T10:06:30.6093014Z", + "primaryEndpoints": { + "blob": "https://sto3699.blob.core.windows.net/", + "file": "https://sto3699.file.core.windows.net/", + "queue": "https://sto3699.queue.core.windows.net/", + "table": "https://sto3699.table.core.windows.net/" + }, + "primaryLocation": "eastus", + "provisioningState": "Succeeded", + "secondaryLocation": "centraluseuap", + "statusOfPrimary": "available", + "statusOfSecondary": "available", + "supportsHttpsTrafficOnly": false + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "type": "Microsoft.Storage/storageAccounts" + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9407/providers/Microsoft.Storage/storageAccounts/sto8596", + "identity": { + "principalId": "911871cc-ffd1-4fc4-ac11-7a316433ea66", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "kind": "Storage", + "location": "eastus2(stage)", + "name": "sto8596", + "properties": { + "geoReplicationStats": { + "status": "Live", + "lastSyncTime": "2018-10-30T00:25:34Z", + "canFailover": true + }, + "isHnsEnabled": true, + "creationTime": "2017-06-01T02:42:41.7633306Z", + "networkAcls": { + "resourceAccessRules": [ + { + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "resourceId": "/subscriptions/a7e99807-abbf-4642-bdec-2c809a96a8bc/resourceGroups/res9407/providers/Microsoft.Synapse/workspaces/testworkspace" + } + ], + "bypass": "AzureServices", + "defaultAction": "Allow", + "ipRules": [], + "virtualNetworkRules": [] + }, + "primaryEndpoints": { + "web": "https://sto8596.web.core.windows.net/", + "dfs": "https://sto8596.dfs.core.windows.net/", + "blob": "https://sto8596.blob.core.windows.net/", + "file": "https://sto8596.file.core.windows.net/", + "queue": "https://sto8596.queue.core.windows.net/", + "table": "https://sto8596.table.core.windows.net/", + "microsoftEndpoints": { + "web": "https://sto8596-microsoftrouting.web.core.windows.net/", + "dfs": "https://sto8596-microsoftrouting.dfs.core.windows.net/", + "blob": "https://sto8596-microsoftrouting.blob.core.windows.net/", + "file": "https://sto8596-microsoftrouting.file.core.windows.net/", + "queue": "https://sto8596-microsoftrouting.queue.core.windows.net/", + "table": "https://sto8596-microsoftrouting.table.core.windows.net/" + }, + "internetEndpoints": { + "web": "https://sto8596-internetrouting.web.core.windows.net/", + "dfs": "https://sto8596-internetrouting.dfs.core.windows.net/", + "blob": "https://sto8596-internetrouting.blob.core.windows.net/", + "file": "https://sto8596-internetrouting.file.core.windows.net/" + } + }, + "primaryLocation": "eastus2(stage)", + "provisioningState": "Succeeded", + "routingPreference": { + "routingChoice": "MicrosoftRouting", + "publishMicrosoftEndpoints": true, + "publishInternetEndpoints": true + }, + "encryption": { + "services": { + "file": { + "keyType": "Account", + "enabled": true, + "lastEnabledTime": "2019-12-11T20:49:31.7036140Z" + }, + "blob": { + "keyType": "Account", + "enabled": true, + "lastEnabledTime": "2019-12-11T20:49:31.7036140Z" + } + }, + "keySource": "Microsoft.Keyvault", + "keyvaultproperties": { + "keyvaulturi": "https://myvault8569.vault.azure.net", + "keyname": "wrappingKey", + "keyversion": "", + "currentVersionedKeyIdentifier": "https://myvault8569.vault.azure.net/keys/wrappingKey/0682afdd9c104f4285df20107e956cad", + "lastKeyRotationTimestamp": "2019-12-13T20:36:23.7023290Z" + } + }, + "secondaryLocation": "northcentralus(stage)", + "statusOfPrimary": "available", + "statusOfSecondary": "available", + "supportsHttpsTrafficOnly": false + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "type": "Microsoft.Storage/storageAccounts" + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/testcmk3/providers/Microsoft.Storage/storageAccounts/sto6637", + "identity": { + "principalId": "911871cc-ffd1-4fc4-ac11-7a316433ea66", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "kind": "Storage", + "location": "eastus", + "name": "sto6637", + "properties": { + "creationTime": "2017-05-24T10:09:39.5625175Z", + "primaryEndpoints": { + "blob": "https://sto6637.blob.core.windows.net/", + "file": "https://sto6637.file.core.windows.net/", + "queue": "https://sto6637.queue.core.windows.net/", + "table": "https://sto6637.table.core.windows.net/" + }, + "primaryLocation": "eastus", + "provisioningState": "Succeeded", + "secondaryLocation": "centraluseuap", + "statusOfPrimary": "available", + "statusOfSecondary": "available", + "supportsHttpsTrafficOnly": false + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "type": "Microsoft.Storage/storageAccounts" + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res8186/providers/Microsoft.Storage/storageAccounts/sto834", + "kind": "Storage", + "location": "eastus", + "name": "sto834", + "properties": { + "creationTime": "2017-05-24T13:28:20.8686541Z", + "primaryEndpoints": { + "blob": "https://sto834.blob.core.windows.net/", + "file": "https://sto834.file.core.windows.net/", + "queue": "https://sto834.queue.core.windows.net/", + "table": "https://sto834.table.core.windows.net/" + }, + "primaryLocation": "eastus", + "provisioningState": "Succeeded", + "secondaryLocation": "centraluseuap", + "statusOfPrimary": "available", + "statusOfSecondary": "available", + "supportsHttpsTrafficOnly": false + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "type": "Microsoft.Storage/storageAccounts" + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/testcmk3/providers/Microsoft.Storage/storageAccounts/sto9174", + "identity": { + "principalId": "933e3ddf-1802-4a51-9469-18a33b576f88", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "kind": "Storage", + "location": "eastus", + "name": "sto9174", + "properties": { + "creationTime": "2017-05-24T09:46:19.6556989Z", + "primaryEndpoints": { + "blob": "https://sto9174.blob.core.windows.net/", + "file": "https://sto9174.file.core.windows.net/", + "queue": "https://sto9174.queue.core.windows.net/", + "table": "https://sto9174.table.core.windows.net/" + }, + "primaryLocation": "eastus", + "provisioningState": "Succeeded", + "secondaryLocation": "centraluseuap", + "statusOfPrimary": "available", + "statusOfSecondary": "available", + "supportsHttpsTrafficOnly": false + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "type": "Microsoft.Storage/storageAccounts" + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountListAccountSAS.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountListAccountSAS.json new file mode 100644 index 000000000000..eaa3cc5ab9de --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountListAccountSAS.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res7985", + "accountName": "sto8588", + "api-version": "2020-08-01-preview", + "monitor": "true", + "parameters": { + "signedServices": "b", + "signedResourceTypes": "s", + "signedPermission": "r", + "signedProtocol": "https,http", + "signedStart": "2017-05-24T10:42:03.1567373Z", + "signedExpiry": "2017-05-24T11:42:03.1567373Z", + "keyToSign": "key1" + } + }, + "responses": { + "200": { + "body": { + "accountSasToken": "sv=2015-04-05&ss=b&srt=s&sp=r&st=2017-05-24T10%3A42%3A03Z&se=2017-05-24T11%3A42%3A03Z&spr=https,http&sig=Z0I%2BEpM%2BPPlTC8ApfUf%2BcffO2aahMgZim3U0iArqsS0%3D" + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountListBlobInventoryPolicy.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountListBlobInventoryPolicy.json new file mode 100644 index 000000000000..657a525b6b8a --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountListBlobInventoryPolicy.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res7687", + "accountName": "sto9699", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7687/providers/Microsoft.Storage/storageAccounts/sto9699/inventoryPolicies/default", + "name": "DefaultInventoryPolicy", + "type": "Microsoft.Storage/storageAccounts/inventoryPolicies", + "properties": { + "policy": { + "enabled": true, + "type": "Inventory", + "destination": "containerName", + "rules": [ + { + "enabled": true, + "name": "inventoryPolicyRule1", + "definition": { + "filters": { + "blobTypes": [ + "blockBlob", + "appendBlob", + "pageBlob" + ], + "prefixMatch": [ + "inventoryprefix1", + "inventoryprefix2" + ], + "includeSnapshots": true, + "includeBlobVersions": true + } + } + } + ] + }, + "lastModifiedTime": "2020-10-05T02:53:39.0932539Z" + } + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountListByResourceGroup.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountListByResourceGroup.json new file mode 100644 index 000000000000..0bda98930297 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountListByResourceGroup.json @@ -0,0 +1,78 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res6117", + "api-version": "2020-08-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res6117/providers/Microsoft.Storage/storageAccounts/sto4036", + "kind": "Storage", + "location": "eastus", + "name": "sto4036", + "properties": { + "isHnsEnabled": true, + "creationTime": "2017-05-24T13:24:47.818801Z", + "primaryEndpoints": { + "web": "https://sto4036.web.core.windows.net/", + "dfs": "https://sto4036.dfs.core.windows.net/", + "blob": "https://sto4036.blob.core.windows.net/", + "file": "https://sto4036.file.core.windows.net/", + "queue": "https://sto4036.queue.core.windows.net/", + "table": "https://sto4036.table.core.windows.net/" + }, + "primaryLocation": "eastus", + "provisioningState": "Succeeded", + "secondaryLocation": "centraluseuap", + "statusOfPrimary": "available", + "statusOfSecondary": "available", + "supportsHttpsTrafficOnly": false + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "type": "Microsoft.Storage/storageAccounts" + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res6117/providers/Microsoft.Storage/storageAccounts/sto4452", + "kind": "Storage", + "location": "eastus", + "name": "sto4452", + "properties": { + "creationTime": "2017-05-24T13:24:15.7068366Z", + "primaryEndpoints": { + "blob": "https://sto4452.blob.core.windows.net/", + "file": "https://sto4452.file.core.windows.net/", + "queue": "https://sto4452.queue.core.windows.net/", + "table": "https://sto4452.table.core.windows.net/" + }, + "primaryLocation": "eastus", + "provisioningState": "Succeeded", + "secondaryLocation": "centraluseuap", + "statusOfPrimary": "available", + "statusOfSecondary": "available", + "supportsHttpsTrafficOnly": false + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "type": "Microsoft.Storage/storageAccounts" + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountListKeys.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountListKeys.json new file mode 100644 index 000000000000..84ed6bf696cc --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountListKeys.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res418", + "accountName": "sto2220", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "keys": [ + { + "keyName": "key1", + "permissions": "Full", + "value": "" + }, + { + "keyName": "key2", + "permissions": "Full", + "value": "" + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountListLocationUsage.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountListLocationUsage.json new file mode 100644 index 000000000000..9504459e58f4 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountListLocationUsage.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "location": "eastus2(stage)", + "api-version": "2020-08-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "unit": "Count", + "currentValue": 55, + "limit": 250, + "name": { + "value": "StorageAccounts", + "localizedValue": "Storage Accounts" + } + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountListObjectReplicationPolicies.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountListObjectReplicationPolicies.json new file mode 100644 index 000000000000..8941162c69e2 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountListObjectReplicationPolicies.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res6977", + "accountName": "sto2527", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res6977/providers/Microsoft.Storage/storageAccounts/sto2527/objectReplicationPolicies/c6c23999-fd4e-433a-bcf9-1db69d27cd8a", + "name": "c6c23999-fd4e-433a-bcf9-1db69d27cd8a", + "type": "Microsoft.Storage/storageAccounts/objectReplicationPolicies", + "properties": { + "sourceAccount": "sto2527", + "destinationAccount": "destAccount1" + } + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9290/providers/Microsoft.Storage/storageAccounts/sto1590/objectReplicationPolicies/141d23dc-8958-4b48-b6e6-5a40bf1af116", + "name": "141d23dc-8958-4b48-b6e6-5a40bf1af116", + "type": "Microsoft.Storage/storageAccounts/objectReplicationPolicies", + "properties": { + "sourceAccount": "sto2527", + "destinationAccount": "destAccount2" + } + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountListPrivateEndpointConnections.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountListPrivateEndpointConnections.json new file mode 100644 index 000000000000..053af0095007 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountListPrivateEndpointConnections.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res6977", + "accountName": "sto2527", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.Storage/storageAccounts/sto288/privateEndpointConnections/{privateEndpointConnectionName}", + "name": "{privateEndpointConnectionName}", + "type": "Microsoft.Storage/storageAccounts/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.Network/privateEndpoints/petest01" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionRequired": "None" + } + } + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.Storage/storageAccounts/sto288/privateEndpointConnections/{privateEndpointConnectionName}", + "name": "{privateEndpointConnectionName}", + "type": "Microsoft.Storage/storageAccounts/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.Network/privateEndpoints/petest02" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionRequired": "None" + } + } + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountListPrivateLinkResources.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountListPrivateLinkResources.json new file mode 100644 index 000000000000..a44e440a5776 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountListPrivateLinkResources.json @@ -0,0 +1,101 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res6977", + "accountName": "sto2527", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res6977/providers/Microsoft.Storage/storageAccounts/sto2527/privateLinkResources/blob", + "name": "blob", + "type": "Microsoft.Storage/storageAccounts/privateLinkResources", + "properties": { + "groupId": "blob", + "requiredMembers": [ + "blob" + ], + "requiredZoneNames": [ + "privatelink.blob.core.windows.net" + ] + } + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res6977/providers/Microsoft.Storage/storageAccounts/sto2527/privateLinkResources/blob_secondary", + "name": "blob_secondary", + "type": "Microsoft.Storage/storageAccounts/privateLinkResources", + "properties": { + "groupId": "blob_secondary", + "requiredMembers": [ + "blob_secondary" + ], + "requiredZoneNames": [ + "privatelink.blob.core.windows.net" + ] + } + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res6977/providers/Microsoft.Storage/storageAccounts/sto2527/privateLinkResources/table", + "name": "table", + "type": "Microsoft.Storage/storageAccounts/privateLinkResources", + "properties": { + "groupId": "table", + "requiredMembers": [ + "table" + ], + "requiredZoneNames": [ + "privatelink.table.core.windows.net" + ] + } + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res6977/providers/Microsoft.Storage/storageAccounts/sto2527/privateLinkResources/table_secondary", + "name": "table_secondary", + "type": "Microsoft.Storage/storageAccounts/privateLinkResources", + "properties": { + "groupId": "table_secondary", + "requiredMembers": [ + "table_secondary" + ], + "requiredZoneNames": [ + "privatelink.table.core.windows.net" + ] + } + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res6977/providers/Microsoft.Storage/storageAccounts/sto2527/privateLinkResources/dfs", + "name": "dfs", + "type": "Microsoft.Storage/storageAccounts/privateLinkResources", + "properties": { + "groupId": "dfs", + "requiredMembers": [ + "dfs" + ], + "requiredZoneNames": [ + "privatelink.dfs.core.windows.net" + ] + } + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res6977/providers/Microsoft.Storage/storageAccounts/sto2527/privateLinkResources/dfs_secondary", + "name": "dfs_secondary", + "type": "Microsoft.Storage/storageAccounts/privateLinkResources", + "properties": { + "groupId": "dfs_secondary", + "requiredMembers": [ + "dfs_secondary" + ], + "requiredZoneNames": [ + "privatelink.dfs.core.windows.net" + ] + } + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountListServiceSAS.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountListServiceSAS.json new file mode 100644 index 000000000000..d850c4c45187 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountListServiceSAS.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res7439", + "accountName": "sto1299", + "api-version": "2020-08-01-preview", + "monitor": "true", + "parameters": { + "canonicalizedResource": "/blob/sto1299/music", + "signedResource": "c", + "signedPermission": "l", + "signedExpiry": "2017-05-24T11:32:48.8457197Z" + } + }, + "responses": { + "200": { + "body": { + "serviceSasToken": "sv=2015-04-05&sr=c&se=2017-05-24T11%3A32%3A48Z&sp=l&sig=PoF8yBUGixsjzwroLmw7vG3VbGz4KB2woZC2D4C2oio%3D" + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountPatchEncryptionScope.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountPatchEncryptionScope.json new file mode 100644 index 000000000000..6afa10cded92 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountPatchEncryptionScope.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "resource-group-name", + "accountName": "{storage-account-name}", + "encryptionScopeName": "{encryption-scope-name}", + "api-version": "2020-08-01-preview", + "monitor": "true", + "encryptionScope": { + "properties": { + "source": "Microsoft.KeyVault", + "keyVaultProperties": { + "keyUri": "https://testvault.vault.core.windows.net/keys/key1/863425f1358359c" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/resource-group-name/providers/Microsoft.Storage/storageAccounts/{storage-account-name}/encryptionScopes/{encryption-scope-name}", + "name": "{encryption-scope-name}", + "type": "Microsoft.Storage/storageAccounts/encryptionScopes", + "properties": { + "source": "Microsoft.KeyVault", + "state": "Enabled", + "keyVaultProperties": { + "keyUri": "https://testvault.vault.core.windows.net/keys/key1/863425f1358359c", + "currentVersionedKeyIdentifier": "https://testvault.vault.core.windows.net/keys/key1/863425f1358359c", + "lastKeyRotationTimestamp": "2019-12-13T20:36:23.7023290Z" + }, + "creationTime": "2018-10-16T02:42:41.7633306Z", + "lastModifiedTime": "2018-10-17T06:23:14.4513306Z" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountPutEncryptionScope.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountPutEncryptionScope.json new file mode 100644 index 000000000000..1dacabc55490 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountPutEncryptionScope.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "resource-group-name", + "accountName": "{storage-account-name}", + "encryptionScopeName": "{encryption-scope-name}", + "api-version": "2020-08-01-preview", + "monitor": "true", + "encryptionScope": {} + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/resource-group-name/providers/Microsoft.Storage/storageAccounts/{storage-account-name}/encryptionScopes/{encryption-scope-name}", + "name": "{encryption-scope-name}", + "type": "Microsoft.Storage/storageAccounts/encryptionScopes", + "properties": { + "source": "Microsoft.Storage", + "state": "Enabled", + "creationTime": "2018-10-16T02:42:41.7633306Z", + "lastModifiedTime": "2018-10-16T02:42:41.7633306Z" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/resource-group-name/providers/Microsoft.Storage/storageAccounts/{storage-account-name}/encryptionScopes/{encryption-scope-name}", + "name": "{encryption-scope-name}", + "type": "Microsoft.Storage/storageAccounts/encryptionScopes", + "properties": { + "source": "Microsoft.Storage", + "state": "Enabled", + "creationTime": "2018-10-16T02:42:41.7633306Z", + "lastModifiedTime": "2018-10-16T02:42:41.7633306Z" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountPutEncryptionScopeWithInfrastructureEncryption.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountPutEncryptionScopeWithInfrastructureEncryption.json new file mode 100644 index 000000000000..7c51087c0d76 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountPutEncryptionScopeWithInfrastructureEncryption.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "resource-group-name", + "accountName": "{storage-account-name}", + "encryptionScopeName": "{encryption-scope-name}", + "api-version": "2021-01-01", + "monitor": "true", + "encryptionScope": { + "properties": { + "requireInfrastructureEncryption": true + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/resource-group-name/providers/Microsoft.Storage/storageAccounts/{storage-account-name}/encryptionScopes/{encryption-scope-name}", + "name": "{encryption-scope-name}", + "type": "Microsoft.Storage/storageAccounts/encryptionScopes", + "properties": { + "requireInfrastructureEncryption": true, + "source": "Microsoft.Storage", + "state": "Enabled", + "creationTime": "2018-10-16T02:42:41.7633306Z", + "lastModifiedTime": "2018-10-16T02:42:41.7633306Z" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/resource-group-name/providers/Microsoft.Storage/storageAccounts/{storage-account-name}/encryptionScopes/{encryption-scope-name}", + "name": "{encryption-scope-name}", + "type": "Microsoft.Storage/storageAccounts/encryptionScopes", + "properties": { + "requireInfrastructureEncryption": true, + "source": "Microsoft.Storage", + "state": "Enabled", + "creationTime": "2018-10-16T02:42:41.7633306Z", + "lastModifiedTime": "2018-10-16T02:42:41.7633306Z" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountPutPrivateEndpointConnection.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountPutPrivateEndpointConnection.json new file mode 100644 index 000000000000..92a5d349a020 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountPutPrivateEndpointConnection.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res7687", + "accountName": "sto9699", + "privateEndpointConnectionName": "{privateEndpointConnectionName}", + "api-version": "2020-08-01-preview", + "monitor": "true", + "properties": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.Storage/storageAccounts/sto288/privateEndpointConnections/{privateEndpointConnectionName}", + "name": "{privateEndpointConnectionName}", + "type": "Microsoft.Storage/storageAccounts/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.Network/privateEndpoints/petest01" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionRequired": "None" + } + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountRegenerateKerbKey.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountRegenerateKerbKey.json new file mode 100644 index 000000000000..7286ba5fa8c1 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountRegenerateKerbKey.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4167", + "accountName": "sto3539", + "api-version": "2020-08-01-preview", + "monitor": "true", + "regenerateKey": { + "keyName": "kerb1" + } + }, + "responses": { + "200": { + "body": { + "keys": [ + { + "keyName": "key1", + "permissions": "Full", + "value": "" + }, + { + "keyName": "key2", + "permissions": "Full", + "value": "" + }, + { + "keyName": "kerb1", + "permissions": "Full", + "value": "" + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountRegenerateKey.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountRegenerateKey.json new file mode 100644 index 000000000000..fe15cf2ab9c4 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountRegenerateKey.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4167", + "accountName": "sto3539", + "api-version": "2020-08-01-preview", + "monitor": "true", + "regenerateKey": { + "keyName": "key2" + } + }, + "responses": { + "200": { + "body": { + "keys": [ + { + "keyName": "key1", + "permissions": "Full", + "value": "" + }, + { + "keyName": "key2", + "permissions": "Full", + "value": "" + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountRevokeUserDelegationKeys.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountRevokeUserDelegationKeys.json new file mode 100644 index 000000000000..0e5d655a4e97 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountRevokeUserDelegationKeys.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4167", + "accountName": "sto3539", + "api-version": "2020-08-01-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountSetBlobInventoryPolicy.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountSetBlobInventoryPolicy.json new file mode 100644 index 000000000000..e97814f1b784 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountSetBlobInventoryPolicy.json @@ -0,0 +1,78 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res7687", + "accountName": "sto9699", + "blobInventoryPolicyName": "default", + "api-version": "2020-08-01-preview", + "monitor": "true", + "properties": { + "properties": { + "policy": { + "enabled": true, + "type": "Inventory", + "destination": "containerName", + "rules": [ + { + "enabled": true, + "name": "inventoryPolicyRule1", + "definition": { + "filters": { + "blobTypes": [ + "blockBlob", + "appendBlob", + "pageBlob" + ], + "prefixMatch": [ + "inventoryprefix1", + "inventoryprefix2" + ], + "includeSnapshots": true, + "includeBlobVersions": true + } + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7687/providers/Microsoft.Storage/storageAccounts/sto9699/inventoryPolicies/default", + "name": "DefaultInventoryPolicy", + "type": "Microsoft.Storage/storageAccounts/inventoryPolicies", + "properties": { + "policy": { + "enabled": true, + "type": "Inventory", + "destination": "containerName", + "rules": [ + { + "enabled": true, + "name": "inventoryPolicyRule1", + "definition": { + "filters": { + "blobTypes": [ + "blockBlob", + "appendBlob", + "pageBlob" + ], + "prefixMatch": [ + "inventoryprefix1", + "inventoryprefix2" + ], + "includeSnapshots": true, + "includeBlobVersions": true + } + } + } + ] + }, + "lastModifiedTime": "2020-10-05T02:53:39.0932539Z" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountSetManagementPolicy.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountSetManagementPolicy.json new file mode 100644 index 000000000000..485abbb70d31 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountSetManagementPolicy.json @@ -0,0 +1,180 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res7687", + "accountName": "sto9699", + "managementPolicyName": "default", + "api-version": "2020-08-01-preview", + "monitor": "true", + "properties": { + "properties": { + "policy": { + "rules": [ + { + "enabled": true, + "name": "olcmtest1", + "type": "Lifecycle", + "definition": { + "filters": { + "blobTypes": [ + "blockBlob" + ], + "prefixMatch": [ + "olcmtestcontainer1" + ] + }, + "actions": { + "baseBlob": { + "tierToCool": { + "daysAfterModificationGreaterThan": 30 + }, + "tierToArchive": { + "daysAfterModificationGreaterThan": 90 + }, + "delete": { + "daysAfterModificationGreaterThan": 1000 + } + }, + "snapshot": { + "delete": { + "daysAfterCreationGreaterThan": 30 + } + } + } + } + }, + { + "enabled": true, + "name": "olcmtest2", + "type": "Lifecycle", + "definition": { + "filters": { + "blobTypes": [ + "blockBlob" + ], + "prefixMatch": [ + "olcmtestcontainer2" + ], + "blobIndexMatch": [ + { + "name": "tag1", + "op": "==", + "value": "val1" + }, + { + "name": "tag2", + "op": "==", + "value": "val2" + } + ] + }, + "actions": { + "baseBlob": { + "tierToCool": { + "daysAfterModificationGreaterThan": 30 + }, + "tierToArchive": { + "daysAfterModificationGreaterThan": 90 + }, + "delete": { + "daysAfterModificationGreaterThan": 1000 + } + } + } + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.Storage/storageAccounts/sto288/managementPolicies/default", + "name": "DefaultManagementPolicy", + "type": "Microsoft.Storage/storageAccounts/managementPolicies", + "properties": { + "policy": { + "rules": [ + { + "enabled": true, + "name": "olcmtest1", + "type": "Lifecycle", + "definition": { + "filters": { + "blobTypes": [ + "blockBlob" + ], + "prefixMatch": [ + "olcmtestcontainer1" + ] + }, + "actions": { + "baseBlob": { + "tierToCool": { + "daysAfterModificationGreaterThan": 30 + }, + "tierToArchive": { + "daysAfterModificationGreaterThan": 90 + }, + "delete": { + "daysAfterModificationGreaterThan": 1000 + } + }, + "snapshot": { + "delete": { + "daysAfterCreationGreaterThan": 30 + } + } + } + } + }, + { + "enabled": true, + "name": "olcmtest2", + "type": "Lifecycle", + "definition": { + "filters": { + "blobTypes": [ + "blockBlob" + ], + "prefixMatch": [ + "olcmtestcontainer2" + ], + "blobIndexMatch": [ + { + "name": "tag1", + "op": "==", + "value": "val1" + }, + { + "name": "tag2", + "op": "==", + "value": "val2" + } + ] + }, + "actions": { + "baseBlob": { + "tierToCool": { + "daysAfterModificationGreaterThan": 30 + }, + "tierToArchive": { + "daysAfterModificationGreaterThan": 90 + }, + "delete": { + "daysAfterModificationGreaterThan": 1000 + } + } + } + } + } + ] + }, + "lastModifiedTime": "2018-06-08T02:53:39.0932539Z" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountSetManagementPolicyForBlockAndAppendBlobs.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountSetManagementPolicyForBlockAndAppendBlobs.json new file mode 100644 index 000000000000..6d52b949083c --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountSetManagementPolicyForBlockAndAppendBlobs.json @@ -0,0 +1,100 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res7687", + "accountName": "sto9699", + "managementPolicyName": "default", + "api-version": "2020-08-01-preview", + "monitor": "true", + "properties": { + "properties": { + "policy": { + "rules": [ + { + "enabled": true, + "name": "olcmtest1", + "type": "Lifecycle", + "definition": { + "filters": { + "blobTypes": [ + "blockBlob", + "appendBlob" + ], + "prefixMatch": [ + "olcmtestcontainer1" + ] + }, + "actions": { + "baseBlob": { + "delete": { + "daysAfterModificationGreaterThan": 90 + } + }, + "snapshot": { + "delete": { + "daysAfterCreationGreaterThan": 90 + } + }, + "version": { + "delete": { + "daysAfterCreationGreaterThan": 90 + } + } + } + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.Storage/storageAccounts/sto288/managementPolicies/default", + "name": "DefaultManagementPolicy", + "type": "Microsoft.Storage/storageAccounts/managementPolicies", + "properties": { + "policy": { + "rules": [ + { + "enabled": true, + "name": "olcmtest1", + "type": "Lifecycle", + "definition": { + "filters": { + "blobTypes": [ + "blockBlob", + "appendBlob" + ], + "prefixMatch": [ + "olcmtestcontainer1" + ] + }, + "actions": { + "baseBlob": { + "delete": { + "daysAfterModificationGreaterThan": 90 + } + }, + "snapshot": { + "delete": { + "daysAfterCreationGreaterThan": 90 + } + }, + "version": { + "delete": { + "daysAfterCreationGreaterThan": 90 + } + } + } + } + } + ] + }, + "lastModifiedTime": "2018-06-08T02:53:39.0932539Z" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountSetManagementPolicyWithSnapshotAndVersion.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountSetManagementPolicyWithSnapshotAndVersion.json new file mode 100644 index 000000000000..e9f98b33ca1d --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountSetManagementPolicyWithSnapshotAndVersion.json @@ -0,0 +1,134 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res7687", + "accountName": "sto9699", + "managementPolicyName": "default", + "api-version": "2020-08-01-preview", + "monitor": "true", + "properties": { + "properties": { + "policy": { + "rules": [ + { + "enabled": true, + "name": "olcmtest1", + "type": "Lifecycle", + "definition": { + "filters": { + "blobTypes": [ + "blockBlob" + ], + "prefixMatch": [ + "olcmtestcontainer1" + ] + }, + "actions": { + "baseBlob": { + "tierToCool": { + "daysAfterModificationGreaterThan": 30 + }, + "tierToArchive": { + "daysAfterModificationGreaterThan": 90 + }, + "delete": { + "daysAfterModificationGreaterThan": 1000 + } + }, + "snapshot": { + "tierToCool": { + "daysAfterCreationGreaterThan": 30 + }, + "tierToArchive": { + "daysAfterCreationGreaterThan": 90 + }, + "delete": { + "daysAfterCreationGreaterThan": 1000 + } + }, + "version": { + "tierToCool": { + "daysAfterCreationGreaterThan": 30 + }, + "tierToArchive": { + "daysAfterCreationGreaterThan": 90 + }, + "delete": { + "daysAfterCreationGreaterThan": 1000 + } + } + } + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.Storage/storageAccounts/sto288/managementPolicies/default", + "name": "DefaultManagementPolicy", + "type": "Microsoft.Storage/storageAccounts/managementPolicies", + "properties": { + "policy": { + "rules": [ + { + "enabled": true, + "name": "olcmtest1", + "type": "Lifecycle", + "definition": { + "filters": { + "blobTypes": [ + "blockBlob" + ], + "prefixMatch": [ + "olcmtestcontainer1" + ] + }, + "actions": { + "baseBlob": { + "tierToCool": { + "daysAfterModificationGreaterThan": 30 + }, + "tierToArchive": { + "daysAfterModificationGreaterThan": 90 + }, + "delete": { + "daysAfterModificationGreaterThan": 1000 + } + }, + "snapshot": { + "tierToCool": { + "daysAfterCreationGreaterThan": 30 + }, + "tierToArchive": { + "daysAfterCreationGreaterThan": 90 + }, + "delete": { + "daysAfterCreationGreaterThan": 1000 + } + }, + "version": { + "tierToCool": { + "daysAfterCreationGreaterThan": 30 + }, + "tierToArchive": { + "daysAfterCreationGreaterThan": 90 + }, + "delete": { + "daysAfterCreationGreaterThan": 1000 + } + } + } + } + } + ] + }, + "lastModifiedTime": "2018-06-08T02:53:39.0932539Z" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountSetManagementPolicy_LastAccessTimeBasedBlobActions.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountSetManagementPolicy_LastAccessTimeBasedBlobActions.json new file mode 100644 index 000000000000..52c40ceacc81 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountSetManagementPolicy_LastAccessTimeBasedBlobActions.json @@ -0,0 +1,102 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res7687", + "accountName": "sto9699", + "managementPolicyName": "default", + "api-version": "2020-08-01-preview", + "monitor": "true", + "properties": { + "properties": { + "policy": { + "rules": [ + { + "enabled": true, + "name": "olcmtest", + "type": "Lifecycle", + "definition": { + "filters": { + "blobTypes": [ + "blockBlob" + ], + "prefixMatch": [ + "olcmtestcontainer" + ] + }, + "actions": { + "baseBlob": { + "tierToCool": { + "daysAfterLastAccessTimeGreaterThan": 30 + }, + "tierToArchive": { + "daysAfterLastAccessTimeGreaterThan": 90 + }, + "delete": { + "daysAfterLastAccessTimeGreaterThan": 1000 + }, + "enableAutoTierToHotFromCool": true + }, + "snapshot": { + "delete": { + "daysAfterCreationGreaterThan": 30 + } + } + } + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.Storage/storageAccounts/sto288/managementPolicies/default", + "name": "DefaultManagementPolicy", + "type": "Microsoft.Storage/storageAccounts/managementPolicies", + "properties": { + "policy": { + "rules": [ + { + "enabled": true, + "name": "olcmtest", + "type": "Lifecycle", + "definition": { + "filters": { + "blobTypes": [ + "blockBlob" + ], + "prefixMatch": [ + "olcmtestcontainer" + ] + }, + "actions": { + "baseBlob": { + "tierToCool": { + "daysAfterLastAccessTimeGreaterThan": 30 + }, + "tierToArchive": { + "daysAfterLastAccessTimeGreaterThan": 90 + }, + "delete": { + "daysAfterLastAccessTimeGreaterThan": 1000 + }, + "enableAutoTierToHotFromCool": true + }, + "snapshot": { + "delete": { + "daysAfterCreationGreaterThan": 30 + } + } + } + } + } + ] + }, + "lastModifiedTime": "2018-06-08T02:53:39.0932539Z" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountUpdate.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountUpdate.json new file mode 100644 index 000000000000..15d0c651fc66 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountUpdate.json @@ -0,0 +1,147 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9407", + "accountName": "sto8596", + "api-version": "2021-02-01", + "monitor": "true", + "parameters": { + "properties": { + "keyPolicy": { + "keyExpirationPeriodInDays": 20 + }, + "sasPolicy": { + "sasExpirationPeriod": "1.15:59:59", + "expirationAction": "Log" + }, + "allowBlobPublicAccess": false, + "minimumTlsVersion": "TLS1_2", + "allowSharedKeyAccess": true, + "networkAcls": { + "resourceAccessRules": [ + { + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "resourceId": "/subscriptions/a7e99807-abbf-4642-bdec-2c809a96a8bc/resourceGroups/res9407/providers/Microsoft.Synapse/workspaces/testworkspace" + } + ], + "defaultAction": "Allow" + }, + "routingPreference": { + "routingChoice": "MicrosoftRouting", + "publishMicrosoftEndpoints": true, + "publishInternetEndpoints": true + }, + "encryption": { + "services": { + "file": { + "keyType": "Account", + "enabled": true + }, + "blob": { + "keyType": "Account", + "enabled": true + } + }, + "keySource": "Microsoft.Storage" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9407/providers/Microsoft.Storage/storageAccounts/sto8596", + "kind": "Storage", + "location": "eastus2(stage)", + "name": "sto8596", + "properties": { + "keyPolicy": { + "keyExpirationPeriodInDays": 20 + }, + "sasPolicy": { + "sasExpirationPeriod": "1.15:59:59", + "expirationAction": "Log" + }, + "keyCreationTime": { + "key1": "2021-03-18T04:42:22.4322836Z", + "key2": "2021-03-18T04:42:22.4322836Z" + }, + "isHnsEnabled": true, + "allowBlobPublicAccess": false, + "minimumTlsVersion": "TLS1_2", + "allowSharedKeyAccess": true, + "creationTime": "2017-06-01T02:42:41.7633306Z", + "networkAcls": { + "resourceAccessRules": [ + { + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "resourceId": "/subscriptions/a7e99807-abbf-4642-bdec-2c809a96a8bc/resourceGroups/res9407/providers/Microsoft.Synapse/workspaces/testworkspace" + } + ], + "bypass": "AzureServices", + "defaultAction": "Allow", + "ipRules": [], + "virtualNetworkRules": [] + }, + "primaryEndpoints": { + "web": "https://sto8596.web.core.windows.net/", + "dfs": "https://sto8596.dfs.core.windows.net/", + "blob": "https://sto8596.blob.core.windows.net/", + "file": "https://sto8596.file.core.windows.net/", + "queue": "https://sto8596.queue.core.windows.net/", + "table": "https://sto8596.table.core.windows.net/", + "microsoftEndpoints": { + "web": "https://sto8596-microsoftrouting.web.core.windows.net/", + "dfs": "https://sto8596-microsoftrouting.dfs.core.windows.net/", + "blob": "https://sto8596-microsoftrouting.blob.core.windows.net/", + "file": "https://sto8596-microsoftrouting.file.core.windows.net/", + "queue": "https://sto8596-microsoftrouting.queue.core.windows.net/", + "table": "https://sto8596-microsoftrouting.table.core.windows.net/" + }, + "internetEndpoints": { + "web": "https://sto8596-internetrouting.web.core.windows.net/", + "dfs": "https://sto8596-internetrouting.dfs.core.windows.net/", + "blob": "https://sto8596-internetrouting.blob.core.windows.net/", + "file": "https://sto8596-internetrouting.file.core.windows.net/" + } + }, + "primaryLocation": "eastus2(stage)", + "provisioningState": "Succeeded", + "routingPreference": { + "routingChoice": "MicrosoftRouting", + "publishMicrosoftEndpoints": true, + "publishInternetEndpoints": true + }, + "encryption": { + "services": { + "file": { + "keyType": "Account", + "enabled": true, + "lastEnabledTime": "2019-12-11T20:49:31.7036140Z" + }, + "blob": { + "keyType": "Account", + "enabled": true, + "lastEnabledTime": "2019-12-11T20:49:31.7036140Z" + } + }, + "keySource": "Microsoft.Storage" + }, + "secondaryLocation": "northcentralus(stage)", + "statusOfPrimary": "available", + "statusOfSecondary": "available", + "supportsHttpsTrafficOnly": false + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "type": "Microsoft.Storage/storageAccounts" + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountUpdateObjectReplicationPolicyOnDestination.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountUpdateObjectReplicationPolicyOnDestination.json new file mode 100644 index 000000000000..f900fa375fe1 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountUpdateObjectReplicationPolicyOnDestination.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res7687", + "accountName": "dst112", + "objectReplicationPolicyId": "2a20bb73-5717-4635-985a-5d4cf777438f", + "api-version": "2020-08-01-preview", + "monitor": "true", + "properties": { + "properties": { + "sourceAccount": "src1122", + "destinationAccount": "dst112", + "rules": [ + { + "ruleId": "d5d18a48-8801-4554-aeaa-74faf65f5ef9", + "sourceContainer": "scont139", + "destinationContainer": "dcont139", + "filters": { + "prefixMatch": [ + "blobA", + "blobB" + ] + } + }, + { + "sourceContainer": "scont179", + "destinationContainer": "dcont179" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7687/providers/Microsoft.Storage/storageAccounts/dst112/objectReplicationPolicies/2a20bb73-5717-4635-985a-5d4cf777438f", + "name": "2a20bb73-5717-4635-985a-5d4cf777438f", + "type": "Microsoft.Storage/storageAccounts/objectReplicationPolicies", + "properties": { + "policyId": "2a20bb73-5717-4635-985a-5d4cf777438f", + "sourceAccount": "src1122", + "destinationAccount": "dst112", + "rules": [ + { + "ruleId": "d5d18a48-8801-4554-aeaa-74faf65f5ef9", + "sourceContainer": "sourceContainer1", + "destinationContainer": "destContainer1", + "filters": { + "prefixMatch": [ + "blobA", + "blobB" + ] + } + }, + { + "ruleId": "cfbb4bc2-8b60-429f-b05a-d1e0942b33b2", + "sourceContainer": "scont179", + "destinationContainer": "dcont179" + } + ] + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountUpdateObjectReplicationPolicyOnSource.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountUpdateObjectReplicationPolicyOnSource.json new file mode 100644 index 000000000000..6ab1f1a9d4d1 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountUpdateObjectReplicationPolicyOnSource.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res7687", + "accountName": "src1122", + "objectReplicationPolicyId": "2a20bb73-5717-4635-985a-5d4cf777438f", + "api-version": "2020-08-01-preview", + "monitor": "true", + "properties": { + "properties": { + "sourceAccount": "src1122", + "destinationAccount": "dst112", + "rules": [ + { + "ruleId": "d5d18a48-8801-4554-aeaa-74faf65f5ef9", + "sourceContainer": "scont139", + "destinationContainer": "dcont139", + "filters": { + "prefixMatch": [ + "blobA", + "blobB" + ] + } + }, + { + "ruleId": "cfbb4bc2-8b60-429f-b05a-d1e0942b33b2", + "sourceContainer": "scont179", + "destinationContainer": "dcont179" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7687/providers/Microsoft.Storage/storageAccounts/src1122/objectReplicationPolicies/2a20bb73-5717-4635-985a-5d4cf777438f", + "name": "2a20bb73-5717-4635-985a-5d4cf777438f", + "type": "Microsoft.Storage/storageAccounts/objectReplicationPolicies", + "properties": { + "policyId": "2a20bb73-5717-4635-985a-5d4cf777438f", + "enabledTime": "2019-06-08T03:01:55.7168089Z", + "sourceAccount": "src1122", + "destinationAccount": "dst112", + "rules": [ + { + "ruleId": "d5d18a48-8801-4554-aeaa-74faf65f5ef9", + "sourceContainer": "sourceContainer1", + "destinationContainer": "destContainer1", + "filters": { + "prefixMatch": [ + "blobA", + "blobB" + ] + } + }, + { + "ruleId": "cfbb4bc2-8b60-429f-b05a-d1e0942b33b2", + "sourceContainer": "scont179", + "destinationContainer": "dcont179" + } + ] + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountUpdateUserAssignedEncryptionIdentityWithCMK.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountUpdateUserAssignedEncryptionIdentityWithCMK.json new file mode 100644 index 000000000000..1c35ea50b47b --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/StorageAccountUpdateUserAssignedEncryptionIdentityWithCMK.json @@ -0,0 +1,116 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9101", + "accountName": "sto4445", + "api-version": "2021-02-01", + "parameters": { + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/{subscription-id}/resourceGroups/res9101/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{managed-identity-name}": {} + } + }, + "sku": { + "name": "Standard_LRS" + }, + "kind": "Storage", + "properties": { + "encryption": { + "services": { + "file": { + "keyType": "Account", + "enabled": true + }, + "blob": { + "keyType": "Account", + "enabled": true + } + }, + "keyvaultproperties": { + "keyvaulturi": "https://myvault8569.vault.azure.net", + "keyname": "wrappingKey", + "keyversion": "" + }, + "keySource": "Microsoft.Keyvault", + "identity": { + "userAssignedIdentity": "/subscriptions/{subscription-id}/resourceGroups/res9101/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{managed-identity-name}" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "identity": { + "userAssignedIdentities": { + "/subscriptions/{subscription-id}/resourceGroups/res9101/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{managed-identity-name}": { + "principalId": "8d823284-1060-42a5-9ec4-ed3d831e24d7", + "clientId": "fbaa6278-1ecc-415c-819f-6e2058d3acb5" + } + }, + "type": "UserAssigned" + }, + "sku": { + "name": "Standard_LRS", + "tier": "Standard" + }, + "kind": "StorageV2", + "id": "/subscriptions/{subscription-id}/resourceGroups/res9101/providers/Microsoft.Storage/storageAccounts/sto4445", + "name": "sto4445", + "type": "Microsoft.Storage/storageAccounts", + "location": "eastus", + "tags": {}, + "properties": { + "privateEndpointConnections": [], + "networkAcls": { + "bypass": "AzureServices", + "virtualNetworkRules": [], + "ipRules": [], + "defaultAction": "Allow" + }, + "supportsHttpsTrafficOnly": true, + "encryption": { + "identity": { + "userAssignedIdentity": "/subscriptions/{subscription-id}/resourcegroups/res9101/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{managed-identity-name}" + }, + "keyvaultproperties": { + "keyvaulturi": "https://myvault8569.vault.azure.net", + "keyname": "wrappingKey", + "keyversion": "", + "currentVersionedKeyIdentifier": "https://myvault8569.vault.azure.net/keys/wrappingKey/0682afdd9c104f4285df20107e956cad", + "lastKeyRotationTimestamp": "2019-12-13T20:36:23.7023290Z" + }, + "services": { + "file": { + "keyType": "Account", + "enabled": true, + "lastEnabledTime": "2020-12-15T00:43:14.1739587Z" + }, + "blob": { + "keyType": "Account", + "enabled": true, + "lastEnabledTime": "2020-12-15T00:43:14.1739587Z" + } + }, + "keySource": "Microsoft.Keyvault" + }, + "accessTier": "Hot", + "provisioningState": "Succeeded", + "creationTime": "2020-12-15T00:43:14.0839093Z", + "primaryEndpoints": { + "web": "https://sto4445.web.core.windows.net/", + "dfs": "https://sto4445.dfs.core.windows.net/", + "blob": "https://sto4445.blob.core.windows.net/", + "file": "https://sto4445.file.core.windows.net/", + "queue": "https://sto4445.queue.core.windows.net/", + "table": "https://sto4445.table.core.windows.net/" + }, + "primaryLocation": "eastus", + "statusOfPrimary": "available" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/TableOperationDelete.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/TableOperationDelete.json new file mode 100644 index 000000000000..3349b784dd1c --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/TableOperationDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "tableName": "table6185", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "204": {} + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/TableOperationGet.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/TableOperationGet.json new file mode 100644 index 000000000000..438403979f30 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/TableOperationGet.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "tableName": "table6185", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/tableServices/default/tables/table6185", + "name": "table6185", + "type": "Microsoft.Storage/storageAccounts/tableServices/tables", + "properties": { + "tableName": "table6185" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/TableOperationList.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/TableOperationList.json new file mode 100644 index 000000000000..4e41c26c5639 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/TableOperationList.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9290", + "accountName": "sto328", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/tableServices/default/tables/table6185", + "name": "table6185", + "type": "Microsoft.Storage/storageAccounts/tableServices/tables", + "properties": { + "tableName": "table6185" + } + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/tableServices/default/tables/table6186", + "name": "table6186", + "type": "Microsoft.Storage/storageAccounts/tableServices/tables", + "properties": { + "tableName": "table6186" + } + } + ], + "nextLink": "https://sto1590endpoint/subscriptions/{subscription-id}/resourceGroups/res9290/providers/Microsoft.Storage/storageAccounts/sto328/tableServices/default/tables?api-version=2020-08-01-preview&NextTableName=1!40!bXl0YWJsZXNoYzU0OAEwMWQ2MTI5ZTJmYjVmODFh" + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/TableOperationPatch.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/TableOperationPatch.json new file mode 100644 index 000000000000..438403979f30 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/TableOperationPatch.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "tableName": "table6185", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/tableServices/default/tables/table6185", + "name": "table6185", + "type": "Microsoft.Storage/storageAccounts/tableServices/tables", + "properties": { + "tableName": "table6185" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/TableOperationPut.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/TableOperationPut.json new file mode 100644 index 000000000000..438403979f30 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/TableOperationPut.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "tableName": "table6185", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/tableServices/default/tables/table6185", + "name": "table6185", + "type": "Microsoft.Storage/storageAccounts/tableServices/tables", + "properties": { + "tableName": "table6185" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/TableServicesGet.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/TableServicesGet.json new file mode 100644 index 000000000000..1d3fd0c6657f --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/TableServicesGet.json @@ -0,0 +1,82 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4410", + "accountName": "sto8607", + "tableServiceName": "default", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res4410/providers/Microsoft.Storage/storageAccounts/sto8607/tableServices/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/tableServices", + "properties": { + "cors": { + "corsRules": [ + { + "allowedOrigins": [ + "http://www.contoso.com", + "http://www.fabrikam.com" + ], + "allowedMethods": [ + "GET", + "HEAD", + "POST", + "OPTIONS", + "MERGE", + "PUT" + ], + "maxAgeInSeconds": 100, + "exposedHeaders": [ + "x-ms-meta-*" + ], + "allowedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ] + }, + { + "allowedOrigins": [ + "*" + ], + "allowedMethods": [ + "GET" + ], + "maxAgeInSeconds": 2, + "exposedHeaders": [ + "*" + ], + "allowedHeaders": [ + "*" + ] + }, + { + "allowedOrigins": [ + "http://www.abc23.com", + "https://www.fabrikam.com/*" + ], + "allowedMethods": [ + "GET", + "PUT" + ], + "maxAgeInSeconds": 2000, + "exposedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ], + "allowedHeaders": [ + "x-ms-meta-12345675754564*" + ] + } + ] + } + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/TableServicesList.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/TableServicesList.json new file mode 100644 index 000000000000..16ea1333e941 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/TableServicesList.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9290", + "accountName": "sto1590", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res4410/providers/Microsoft.Storage/storageAccounts/sto8607/tableServices/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/tableServices", + "properties": { + "cors": { + "corsRules": [ + { + "allowedOrigins": [ + "http://www.contoso.com", + "http://www.fabrikam.com" + ], + "allowedMethods": [ + "GET", + "HEAD", + "POST", + "OPTIONS", + "MERGE", + "PUT" + ], + "maxAgeInSeconds": 100, + "exposedHeaders": [ + "x-ms-meta-*" + ], + "allowedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ] + }, + { + "allowedOrigins": [ + "*" + ], + "allowedMethods": [ + "GET" + ], + "maxAgeInSeconds": 2, + "exposedHeaders": [ + "*" + ], + "allowedHeaders": [ + "*" + ] + }, + { + "allowedOrigins": [ + "http://www.abc23.com", + "https://www.fabrikam.com/*" + ], + "allowedMethods": [ + "GET", + "PUT" + ], + "maxAgeInSeconds": 2000, + "exposedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ], + "allowedHeaders": [ + "x-ms-meta-12345675754564*" + ] + } + ] + } + } + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/TableServicesPut.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/TableServicesPut.json new file mode 100644 index 000000000000..4a1f0d2c93a3 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/examples/TableServicesPut.json @@ -0,0 +1,147 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4410", + "accountName": "sto8607", + "tableServiceName": "default", + "api-version": "2020-08-01-preview", + "monitor": "true", + "parameters": { + "properties": { + "cors": { + "corsRules": [ + { + "allowedOrigins": [ + "http://www.contoso.com", + "http://www.fabrikam.com" + ], + "allowedMethods": [ + "GET", + "HEAD", + "POST", + "OPTIONS", + "MERGE", + "PUT" + ], + "maxAgeInSeconds": 100, + "exposedHeaders": [ + "x-ms-meta-*" + ], + "allowedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ] + }, + { + "allowedOrigins": [ + "*" + ], + "allowedMethods": [ + "GET" + ], + "maxAgeInSeconds": 2, + "exposedHeaders": [ + "*" + ], + "allowedHeaders": [ + "*" + ] + }, + { + "allowedOrigins": [ + "http://www.abc23.com", + "https://www.fabrikam.com/*" + ], + "allowedMethods": [ + "GET", + "PUT" + ], + "maxAgeInSeconds": 2000, + "exposedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ], + "allowedHeaders": [ + "x-ms-meta-12345675754564*" + ] + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res4410/providers/Microsoft.Storage/storageAccounts/sto8607/tableServices/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/tableServices", + "properties": { + "cors": { + "corsRules": [ + { + "allowedOrigins": [ + "http://www.contoso.com", + "http://www.fabrikam.com" + ], + "allowedMethods": [ + "GET", + "HEAD", + "POST", + "OPTIONS", + "MERGE", + "PUT" + ], + "maxAgeInSeconds": 100, + "exposedHeaders": [ + "x-ms-meta-*" + ], + "allowedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ] + }, + { + "allowedOrigins": [ + "*" + ], + "allowedMethods": [ + "GET" + ], + "maxAgeInSeconds": 2, + "exposedHeaders": [ + "*" + ], + "allowedHeaders": [ + "*" + ] + }, + { + "allowedOrigins": [ + "http://www.abc23.com", + "https://www.fabrikam.com/*" + ], + "allowedMethods": [ + "GET", + "PUT" + ], + "maxAgeInSeconds": 2000, + "exposedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ], + "allowedHeaders": [ + "x-ms-meta-12345675754564*" + ] + } + ] + } + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/file.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/file.json new file mode 100644 index 000000000000..dd4e065f6de3 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/file.json @@ -0,0 +1,886 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-01", + "title": "StorageManagementClient", + "description": "The Azure Storage Management API." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/fileServices": { + "get": { + "tags": [ + "FileService" + ], + "operationId": "FileServices_List", + "x-ms-examples": { + "ListFileServices": { + "$ref": "./examples/FileServicesList.json" + } + }, + "description": "List all file services in storage accounts", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- List file services operation completed successfully.", + "schema": { + "$ref": "#/definitions/FileServiceItems" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/fileServices/{FileServicesName}": { + "put": { + "tags": [ + "FileService" + ], + "operationId": "FileServices_SetServiceProperties", + "x-ms-examples": { + "PutFileServices": { + "$ref": "./examples/FileServicesPut.json" + }, + "PutFileServices_EnableSMBMultichannel": { + "$ref": "./examples/FileServicesPut_EnableSMBMultichannel.json" + }, + "PutFileServices_EnableSecureSmbFeatures": { + "$ref": "./examples/FileServicesPut_EnableSecureSmbFeatures.json" + } + }, + "description": "Sets the properties of file services in storage accounts, including CORS (Cross-Origin Resource Sharing) rules. ", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/FileServicesName" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FileServiceProperties" + }, + "description": "The properties of file services in storage accounts, including CORS (Cross-Origin Resource Sharing) rules." + } + ], + "responses": { + "200": { + "description": "OK -- Sets The properties of a storage account’s File service successfully.", + "schema": { + "$ref": "#/definitions/FileServiceProperties" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "get": { + "tags": [ + "FileService" + ], + "operationId": "FileServices_GetServiceProperties", + "x-ms-examples": { + "GetFileServices": { + "$ref": "./examples/FileServicesGet.json" + } + }, + "description": "Gets the properties of file services in storage accounts, including CORS (Cross-Origin Resource Sharing) rules.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/FileServicesName" + } + ], + "responses": { + "200": { + "description": "OK -- returned the properties of a storage account’s File service.", + "schema": { + "$ref": "#/definitions/FileServiceProperties" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/fileServices/default/shares": { + "get": { + "tags": [ + "FileShares" + ], + "operationId": "FileShares_List", + "x-ms-examples": { + "ListShares": { + "$ref": "./examples/FileSharesList.json" + }, + "ListDeletedShares": { + "$ref": "./examples/DeletedFileSharesList.json" + }, + "ListShareSnapshots": { + "$ref": "./examples/FileShareSnapshotsList.json" + } + }, + "description": "Lists all shares.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$maxpagesize", + "in": "query", + "type": "string", + "description": "Optional. Specified maximum number of shares that can be included in the list." + }, + { + "name": "$filter", + "in": "query", + "type": "string", + "description": "Optional. When specified, only share names starting with the filter will be listed." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "enum": [ + "deleted", + "snapshots" + ], + "x-ms-enum": { + "name": "ListSharesExpand", + "modelAsString": true + }, + "description": "Optional, used to expand the properties within share's properties." + } + ], + "responses": { + "200": { + "description": "OK -- List Shares operation completed successfully.", + "schema": { + "$ref": "#/definitions/FileShareItems" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/fileServices/default/shares/{shareName}": { + "put": { + "tags": [ + "FileShares" + ], + "operationId": "FileShares_Create", + "x-ms-examples": { + "PutShares": { + "$ref": "./examples/FileSharesPut.json" + }, + "Create NFS Shares": { + "$ref": "./examples/FileSharesPut_NFS.json" + }, + "PutShares with Access Tier": { + "$ref": "./examples/FileSharesPut_AccessTier.json" + } + }, + "description": "Creates a new share under the specified account as described by request body. The share resource includes metadata and properties for that share. It does not include a list of the files contained by the share. ", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "#/parameters/ShareName" + }, + { + "name": "fileShare", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FileShare" + }, + "description": "Properties of the file share to create." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "enum": [ + "snapshots" + ], + "x-ms-enum": { + "name": "PutSharesExpand", + "modelAsString": true + }, + "description": "Optional, used to create a snapshot." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Created -- Create Share operation completed successfully.", + "schema": { + "$ref": "#/definitions/FileShare" + } + }, + "200": { + "description": "OK -- The Share is already created.", + "schema": { + "$ref": "#/definitions/FileShare" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "patch": { + "tags": [ + "FileShares" + ], + "operationId": "FileShares_Update", + "x-ms-examples": { + "UpdateShares": { + "$ref": "./examples/FileSharesPatch.json" + } + }, + "description": "Updates share properties as specified in request body. Properties not mentioned in the request will not be changed. Update fails if the specified share does not already exist. ", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "#/parameters/ShareName" + }, + { + "name": "fileShare", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FileShare" + }, + "description": "Properties to update for the file share." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Update Share operation completed successfully.", + "schema": { + "$ref": "#/definitions/FileShare", + "description": "Properties of the updated file share." + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "get": { + "tags": [ + "FileShares" + ], + "operationId": "FileShares_Get", + "x-ms-examples": { + "GetShares": { + "$ref": "./examples/FileSharesGet.json" + }, + "GetShareStats": { + "$ref": "./examples/FileSharesGet_Stats.json" + } + }, + "description": "Gets properties of a specified share.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "#/parameters/ShareName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "enum": [ + "stats" + ], + "x-ms-enum": { + "name": "GetShareExpand", + "modelAsString": false + }, + "description": "Optional, used to expand the properties within share's properties." + }, + { + "name": "x-ms-snapshot", + "in": "header", + "required": false, + "type": "string", + "description": "Optional, used to retrieve properties of a snapshot." + } + ], + "responses": { + "200": { + "description": "OK -- Get Share operation completed successfully.", + "schema": { + "$ref": "#/definitions/FileShare" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "FileShares" + ], + "operationId": "FileShares_Delete", + "x-ms-examples": { + "DeleteShares": { + "$ref": "./examples/FileSharesDelete.json" + } + }, + "description": "Deletes specified share under its account.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "#/parameters/ShareName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "x-ms-snapshot", + "in": "header", + "required": false, + "type": "string", + "description": "Optional, used to delete a snapshot." + } + ], + "responses": { + "200": { + "description": "OK -- Delete Share operation completed successfully." + }, + "204": { + "description": "No Content -- The Share not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/fileServices/default/shares/{shareName}/restore": { + "post": { + "tags": [ + "FileShares" + ], + "operationId": "FileShares_Restore", + "x-ms-examples": { + "RestoreShares": { + "$ref": "./examples/FileSharesRestore.json" + } + }, + "description": "Restore a file share within a valid retention days if share soft delete is enabled", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "#/parameters/ShareName" + }, + { + "name": "deletedShare", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DeletedShare" + } + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- The Share is successfully restored." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "FileServiceItems": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/FileServiceProperties" + }, + "description": "List of file services returned.", + "readOnly": true + } + } + }, + "FileServiceProperties": { + "properties": { + "properties": { + "properties": { + "cors": { + "$ref": "./common.json#/definitions/CorsRules", + "description": "Specifies CORS rules for the File service. You can include up to five CorsRule elements in the request. If no CorsRule elements are included in the request body, all CORS rules will be deleted, and CORS will be disabled for the File service." + }, + "shareDeleteRetentionPolicy": { + "$ref": "./common.json#/definitions/DeleteRetentionPolicy", + "description": "The file service properties for share soft delete." + }, + "protocolSettings": { + "$ref": "#/definitions/ProtocolSettings", + "description": "Protocol settings for file service" + } + }, + "x-ms-client-flatten": true, + "x-ms-client-name": "FileServiceProperties", + "description": "The properties of File services in storage account." + }, + "sku": { + "$ref": "./common.json#/definitions/Sku", + "readOnly": true, + "description": "Sku name and tier." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "description": "The properties of File services in storage account." + }, + "ProtocolSettings": { + "properties": { + "smb": { + "$ref": "#/definitions/SmbSetting", + "description": "Setting for SMB protocol" + } + }, + "description": "Protocol settings for file service" + }, + "SmbSetting": { + "properties": { + "multichannel": { + "$ref": "#/definitions/Multichannel", + "description": "Multichannel setting. Applies to Premium FileStorage only." + }, + "versions": { + "type": "string", + "description": "SMB protocol versions supported by server. Valid values are SMB2.1, SMB3.0, SMB3.1.1. Should be passed as a string with delimiter ';'." + }, + "authenticationMethods": { + "type": "string", + "description": "SMB authentication methods supported by server. Valid values are NTLMv2, Kerberos. Should be passed as a string with delimiter ';'." + }, + "kerberosTicketEncryption": { + "type": "string", + "description": "Kerberos ticket encryption supported by server. Valid values are RC4-HMAC, AES-256. Should be passed as a string with delimiter ';'" + }, + "channelEncryption": { + "type": "string", + "description": "SMB channel encryption supported by server. Valid values are AES-128-CCM, AES-128-GCM, AES-256-GCM. Should be passed as a string with delimiter ';'." + } + }, + "description": "Setting for SMB protocol" + }, + "Multichannel": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Indicates whether multichannel is enabled" + } + }, + "description": "Multichannel setting. Applies to Premium FileStorage only." + }, + "FileShare": { + "properties": { + "properties": { + "$ref": "#/definitions/FileShareProperties", + "x-ms-client-flatten": true, + "x-ms-client-name": "FileShareProperties", + "description": "Properties of the file share." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/AzureEntityResource" + } + ], + "description": "Properties of the file share, including Id, resource name, resource type, Etag." + }, + "DeletedShare": { + "properties": { + "deletedShareName": { + "type": "string", + "description": "Required. Identify the name of the deleted share that will be restored." + }, + "deletedShareVersion": { + "type": "string", + "description": "Required. Identify the version of the deleted share that will be restored." + } + }, + "required": [ + "deletedShareName", + "deletedShareVersion" + ], + "description": "The deleted share to be restored." + }, + "FileShareItem": { + "properties": { + "properties": { + "$ref": "#/definitions/FileShareProperties", + "x-ms-client-flatten": true, + "description": "The file share properties be listed out." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/AzureEntityResource" + } + ], + "description": "The file share properties be listed out." + }, + "FileShareItems": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/FileShareItem" + }, + "description": "List of file shares returned.", + "readOnly": true + }, + "nextLink": { + "type": "string", + "description": "Request URL that can be used to query next page of shares. Returned when total number of requested shares exceed maximum page size.", + "readOnly": true + } + }, + "description": "Response schema. Contains list of shares returned, and if paging is requested or required, a URL to next page of shares." + }, + "FileShareProperties": { + "properties": { + "lastModifiedTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "Returns the date and time the share was last modified." + }, + "metadata": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "A name-value pair to associate with the share as metadata." + }, + "shareQuota": { + "type": "integer", + "minimum": 1, + "maximum": 102400, + "description": "The maximum size of the share, in gigabytes. Must be greater than 0, and less than or equal to 5TB (5120). For Large File Shares, the maximum size is 102400." + }, + "enabledProtocols": { + "type": "string", + "enum": [ + "SMB", + "NFS" + ], + "x-ms-enum": { + "name": "EnabledProtocols", + "modelAsString": true + }, + "description": "The authentication protocol that is used for the file share. Can only be specified when creating a share.", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "rootSquash": { + "type": "string", + "enum": [ + "NoRootSquash", + "RootSquash", + "AllSquash" + ], + "x-ms-enum": { + "name": "RootSquashType", + "modelAsString": true + }, + "description": "The property is for NFS share only. The default is NoRootSquash." + }, + "version": { + "type": "string", + "readOnly": true, + "description": "The version of the share." + }, + "deleted": { + "type": "boolean", + "readOnly": true, + "description": "Indicates whether the share was deleted." + }, + "deletedTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "The deleted time if the share was deleted." + }, + "remainingRetentionDays": { + "type": "integer", + "readOnly": true, + "description": "Remaining retention days for share that was soft deleted." + }, + "accessTier": { + "type": "string", + "enum": [ + "TransactionOptimized", + "Hot", + "Cool", + "Premium" + ], + "x-ms-enum": { + "name": "ShareAccessTier", + "modelAsString": true + }, + "description": "Access tier for specific share. GpV2 account can choose between TransactionOptimized (default), Hot, and Cool. FileStorage account can choose Premium." + }, + "accessTierChangeTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "Indicates the last modification time for share access tier." + }, + "accessTierStatus": { + "type": "string", + "readOnly": true, + "description": "Indicates if there is a pending transition for access tier." + }, + "shareUsageBytes": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The approximate size of the data stored on the share. Note that this value may not include all recently created or recently resized files." + }, + "snapshotTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "Creation time of share snapshot returned in the response of list shares with expand param \"snapshots\"." + } + }, + "description": "The properties of the file share." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorBody" + } + }, + "description": "An error response from the Storage service." + }, + "CloudErrorBody": { + "x-ms-external": true, + "properties": { + "code": { + "type": "string", + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "type": "string", + "description": "A message describing the error, intended to be suitable for display in a user interface." + }, + "target": { + "type": "string", + "description": "The target of the particular error. For example, the name of the property in error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/CloudErrorBody" + }, + "description": "A list of additional details about the error." + } + }, + "description": "An error response from the Storage service." + } + }, + "parameters": { + "FileServicesName": { + "name": "FileServicesName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the file Service within the specified storage account. File Service Name must be \"default\"", + "enum": [ + "default" + ], + "x-ms-parameter-location": "method" + }, + "ShareName": { + "name": "shareName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the file share within the specified storage account. File share names must be between 3 and 63 characters in length and use numbers, lower-case letters and dash (-) only. Every dash (-) character must be immediately preceded and followed by a letter or number.", + "maxLength": 63, + "minLength": 3, + "x-ms-parameter-location": "method" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/privatelinks.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/privatelinks.json new file mode 100644 index 000000000000..ac403a69b3c0 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/privatelinks.json @@ -0,0 +1,174 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-01", + "title": "Common types" + }, + "paths": {}, + "definitions": { + "PrivateEndpoint": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ARM identifier for Private Endpoint" + } + }, + "description": "The Private Endpoint resource." + }, + "PrivateEndpointConnection": { + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "x-ms-client-flatten": true, + "description": "Resource properties." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "description": "The Private Endpoint Connection resource." + }, + "PrivateEndpointConnectionProperties": { + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpoint", + "description": "The resource of private end point." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionState", + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "provisioningState": { + "$ref": "#/definitions/PrivateEndpointConnectionProvisioningState", + "description": "The provisioning state of the private endpoint connection resource." + } + }, + "required": [ + "privateLinkServiceConnectionState" + ], + "description": "Properties of the PrivateEndpointConnectProperties." + }, + "PrivateLinkServiceConnectionState": { + "properties": { + "status": { + "$ref": "#/definitions/PrivateEndpointServiceConnectionStatus", + "description": "Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service." + }, + "description": { + "type": "string", + "description": "The reason for approval/rejection of the connection." + }, + "actionRequired": { + "type": "string", + "description": "A message indicating if changes on the service provider require any updates on the consumer." + } + }, + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "PrivateEndpointServiceConnectionStatus": { + "type": "string", + "description": "The private endpoint connection status.", + "enum": [ + "Pending", + "Approved", + "Rejected" + ], + "x-ms-enum": { + "name": "PrivateEndpointServiceConnectionStatus", + "modelAsString": true + } + }, + "PrivateEndpointConnectionProvisioningState": { + "type": "string", + "readOnly": true, + "description": "The current provisioning state.", + "enum": [ + "Succeeded", + "Creating", + "Deleting", + "Failed" + ], + "x-ms-enum": { + "name": "PrivateEndpointConnectionProvisioningState", + "modelAsString": true + } + }, + "PrivateLinkResource": { + "properties": { + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "description": "A private link resource" + }, + "PrivateLinkResourceProperties": { + "properties": { + "groupId": { + "description": "The private link resource group id.", + "type": "string", + "readOnly": true + }, + "requiredMembers": { + "description": "The private link resource required member names.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "requiredZoneNames": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The private link resource Private link DNS zone name." + } + }, + "description": "Properties of a private link resource." + }, + "PrivateEndpointConnectionListResult": { + "properties": { + "value": { + "type": "array", + "description": "Array of private endpoint connections", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + } + }, + "description": "List of private endpoint connection associated with the specified storage account" + }, + "PrivateLinkResourceListResult": { + "properties": { + "value": { + "type": "array", + "description": "Array of private link resources", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + } + } + }, + "description": "A list of private link resources" + } + }, + "parameters": { + "PrivateEndpointConnectionName": { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint connection associated with the Azure resource", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/queue.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/queue.json new file mode 100644 index 000000000000..52d38af139d0 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/queue.json @@ -0,0 +1,560 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-01", + "title": "StorageManagementClient", + "description": "The Azure Storage Management API." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/queueServices": { + "get": { + "tags": [ + "QueueServiceProperties" + ], + "operationId": "QueueServices_List", + "x-ms-examples": { + "QueueServicesList": { + "$ref": "./examples/QueueServicesList.json" + } + }, + "description": "List all queue services for the storage account", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- returned the properties of a storage account’s Queue service.", + "schema": { + "$ref": "#/definitions/ListQueueServices" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./file.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/queueServices/{queueServiceName}": { + "put": { + "tags": [ + "QueueServiceProperties" + ], + "operationId": "QueueServices_SetServiceProperties", + "x-ms-examples": { + "QueueServicesPut": { + "$ref": "./examples/QueueServicesPut.json" + } + }, + "description": "Sets the properties of a storage account’s Queue service, including properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) rules. ", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/QueueServiceName" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/QueueServiceProperties" + }, + "description": "The properties of a storage account’s Queue service, only properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) rules can be specified." + } + ], + "responses": { + "200": { + "description": "OK -- Sets The properties of a storage account’s Queue service successfully.", + "schema": { + "$ref": "#/definitions/QueueServiceProperties" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./file.json#/definitions/CloudError" + } + } + } + }, + "get": { + "tags": [ + "QueueServiceProperties" + ], + "operationId": "QueueServices_GetServiceProperties", + "x-ms-examples": { + "QueueServicesGet": { + "$ref": "./examples/QueueServicesGet.json" + } + }, + "description": "Gets the properties of a storage account’s Queue service, including properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) rules.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/QueueServiceName" + } + ], + "responses": { + "200": { + "description": "OK -- returned the properties of a storage account’s Queue service.", + "schema": { + "$ref": "#/definitions/QueueServiceProperties" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./file.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/queueServices/default/queues/{queueName}": { + "put": { + "tags": [ + "QueueService" + ], + "operationId": "Queue_Create", + "x-ms-examples": { + "QueueOperationPut": { + "$ref": "./examples/QueueOperationPut.json" + }, + "QueueOperationPutWithMetadata": { + "$ref": "./examples/QueueOperationPutWithMetadata.json" + } + }, + "description": "Creates a new queue with the specified queue name, under the specified account.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/QueueName" + }, + { + "name": "queue", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/StorageQueue" + }, + "description": "Queue properties and metadata to be created with" + } + ], + "responses": { + "200": { + "description": "OK -- Creates a queue with the given queue name successfully.", + "schema": { + "$ref": "#/definitions/StorageQueue" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./file.json#/definitions/CloudError" + } + } + } + }, + "patch": { + "tags": [ + "QueueService" + ], + "operationId": "Queue_Update", + "x-ms-examples": { + "QueueOperationPatch": { + "$ref": "./examples/QueueOperationPatch.json" + } + }, + "description": "Creates a new queue with the specified queue name, under the specified account.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/QueueName" + }, + { + "name": "queue", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/StorageQueue" + }, + "description": "Queue properties and metadata to be created with" + } + ], + "responses": { + "200": { + "description": "OK -- Creates a queue with the given queue name successfully.", + "schema": { + "$ref": "#/definitions/StorageQueue" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./file.json#/definitions/CloudError" + } + } + } + }, + "get": { + "tags": [ + "QueueService" + ], + "operationId": "Queue_Get", + "x-ms-examples": { + "QueueOperationGet": { + "$ref": "./examples/QueueOperationGet.json" + } + }, + "description": "Gets the queue with the specified queue name, under the specified account if it exists.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/QueueName" + } + ], + "responses": { + "200": { + "description": "OK -- returned table with the specified table name successfully.", + "schema": { + "$ref": "#/definitions/StorageQueue" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./file.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "QueueService" + ], + "operationId": "Queue_Delete", + "x-ms-examples": { + "QueueOperationDelete": { + "$ref": "./examples/QueueOperationDelete.json" + } + }, + "description": "Deletes the queue with the specified queue name, under the specified account if it exists.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/QueueName" + } + ], + "responses": { + "204": { + "description": "No Content - Successfully deleted the queue with the specified queue name" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./file.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/queueServices/default/queues": { + "get": { + "tags": [ + "QueueService" + ], + "operationId": "Queue_List", + "x-ms-examples": { + "QueueOperationList": { + "$ref": "./examples/QueueOperationList.json" + } + }, + "description": "Gets a list of all the queues under the specified storage account", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$maxpagesize", + "in": "query", + "type": "string", + "description": "Optional, a maximum number of queues that should be included in a list queue response" + }, + { + "name": "$filter", + "in": "query", + "type": "string", + "description": "Optional, When specified, only the queues with a name starting with the given filter will be listed." + } + ], + "responses": { + "200": { + "description": "OK -- returned a list of queues successfully.", + "schema": { + "$ref": "#/definitions/ListQueueResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./file.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "ListQueueServices": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/QueueServiceProperties" + }, + "description": "List of queue services returned.", + "readOnly": true + } + } + }, + "QueueServiceProperties": { + "properties": { + "properties": { + "properties": { + "cors": { + "$ref": "./common.json#/definitions/CorsRules", + "description": "Specifies CORS rules for the Queue service. You can include up to five CorsRule elements in the request. If no CorsRule elements are included in the request body, all CORS rules will be deleted, and CORS will be disabled for the Queue service." + } + }, + "x-ms-client-flatten": true, + "x-ms-client-name": "QueueServiceProperties", + "description": "The properties of a storage account’s Queue service." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "description": "The properties of a storage account’s Queue service." + }, + "StorageQueue": { + "properties": { + "properties": { + "$ref": "#/definitions/QueueProperties", + "x-ms-client-flatten": true, + "x-ms-client-name": "QueueProperties", + "description": "Queue resource properties." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ] + }, + "QueueProperties": { + "properties": { + "metadata": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "A name-value pair that represents queue metadata." + }, + "approximateMessageCount": { + "type": "integer", + "readOnly": true, + "description": "Integer indicating an approximate number of messages in the queue. This number is not lower than the actual number of messages in the queue, but could be higher." + } + } + }, + "ListQueue": { + "properties": { + "properties": { + "$ref": "#/definitions/ListQueueProperties", + "x-ms-client-flatten": true, + "x-ms-client-name": "QueueProperties", + "description": "List Queue resource properties." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ] + }, + "ListQueueProperties": { + "properties": { + "metadata": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "A name-value pair that represents queue metadata." + } + } + }, + "ListQueueResource": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ListQueue" + }, + "description": "List of queues returned.", + "readOnly": true + }, + "nextLink": { + "type": "string", + "description": "Request URL that can be used to list next page of queues", + "readOnly": true + } + }, + "description": "Response schema. Contains list of queues returned" + } + }, + "parameters": { + "QueueServiceName": { + "name": "queueServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Queue Service within the specified storage account. Queue Service Name must be 'default'", + "enum": [ + "default" + ], + "x-ms-parameter-location": "method" + }, + "QueueName": { + "name": "queueName", + "in": "path", + "required": true, + "type": "string", + "description": "A queue name must be unique within a storage account and must be between 3 and 63 characters.The name must comprise of lowercase alphanumeric and dash(-) characters only, it should begin and end with an alphanumeric character and it cannot have two consecutive dash(-) characters.", + "maxLength": 63, + "minLength": 3, + "pattern": "^[a-z0-9]([a-z0-9]|(-(?!-))){1,61}[a-z0-9]$", + "x-ms-parameter-location": "method" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/storage.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/storage.json new file mode 100644 index 000000000000..6f6c077fdd8e --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/storage.json @@ -0,0 +1,4476 @@ +{ + "swagger": "2.0", + "info": { + "title": "StorageManagementClient", + "description": "The Azure Storage Management API.", + "version": "2021-02-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/providers/Microsoft.Storage/operations": { + "get": { + "tags": [ + "Operations" + ], + "description": "Lists all of the available Storage Rest API operations.", + "operationId": "Operations_List", + "x-ms-examples": { + "OperationsList": { + "$ref": "./examples/OperationsList.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Storage/skus": { + "get": { + "tags": [ + "Skus" + ], + "operationId": "Skus_List", + "description": "Lists the available SKUs supported by Microsoft.Storage for given subscription.", + "x-ms-examples": { + "SkuList": { + "$ref": "./examples/SKUList.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- List of storage SKUs in the given subscription retrieved and returned successfully.", + "schema": { + "$ref": "#/definitions/StorageSkuListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Storage/checkNameAvailability": { + "post": { + "tags": [ + "StorageAccounts" + ], + "operationId": "StorageAccounts_CheckNameAvailability", + "description": "Checks that the storage account name is valid and is not already in use.", + "x-ms-examples": { + "StorageAccountCheckNameAvailability": { + "$ref": "./examples/StorageAccountCheckNameAvailability.json" + } + }, + "parameters": [ + { + "name": "accountName", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/StorageAccountCheckNameAvailabilityParameters" + }, + "description": "The name of the storage account within the specified resource group. Storage account names must be between 3 and 24 characters in length and use numbers and lower-case letters only." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Operation to check the storage account name availability was successful.", + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}": { + "put": { + "tags": [ + "StorageAccounts" + ], + "operationId": "StorageAccounts_Create", + "description": "Asynchronously creates a new storage account with the specified parameters. If an account is already created and a subsequent create request is issued with different properties, the account properties will be updated. If an account is already created and a subsequent create or update request is issued with the exact same set of properties, the request will succeed.", + "x-ms-examples": { + "StorageAccountCreate": { + "$ref": "./examples/StorageAccountCreate.json" + }, + "NfsV3AccountCreate": { + "$ref": "./examples/NfsV3AccountCreate.json" + }, + "StorageAccountCreateUserAssignedEncryptionIdentityWithCMK": { + "$ref": "./examples/StorageAccountCreateUserAssignedEncryptionIdentityWithCMK.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/StorageAccountCreateParameters" + }, + "description": "The parameters to provide for the created account." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- returned when the storage account was already created from a previous request with the same properties specified in the request body.", + "schema": { + "$ref": "#/definitions/StorageAccount" + } + }, + "202": { + "description": "Accepted -- Create or update request accepted; operation will complete asynchronously." + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "StorageAccounts" + ], + "operationId": "StorageAccounts_Delete", + "description": "Deletes a storage account in Microsoft Azure.", + "x-ms-examples": { + "StorageAccountDelete": { + "$ref": "./examples/StorageAccountDelete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- storage account deleted successfully." + }, + "204": { + "description": "NoContent -- account does not exist in the subscription." + } + } + }, + "get": { + "tags": [ + "StorageAccounts" + ], + "operationId": "StorageAccounts_GetProperties", + "description": "Returns the properties for the specified storage account including but not limited to name, SKU name, location, and account status. The ListKeys operation should be used to retrieve storage keys.", + "x-ms-examples": { + "StorageAccountGetProperties": { + "$ref": "./examples/StorageAccountGetProperties.json" + }, + "StorageAccountGetPropertiesCMKEnabled": { + "$ref": "./examples/StorageAccountGetPropertiesCMKEnabled.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "description": "May be used to expand the properties within account's properties. By default, data is not included when fetching properties. Currently we only support geoReplicationStats and blobRestoreStatus.", + "in": "query", + "required": false, + "type": "string", + "enum": [ + "geoReplicationStats", + "blobRestoreStatus" + ], + "x-ms-enum": { + "name": "StorageAccountExpand", + "modelAsString": false + } + } + ], + "responses": { + "200": { + "description": "OK -- properties retrieved successfully for the storage account.", + "schema": { + "$ref": "#/definitions/StorageAccount" + } + } + } + }, + "patch": { + "tags": [ + "StorageAccounts" + ], + "operationId": "StorageAccounts_Update", + "description": "The update operation can be used to update the SKU, encryption, access tier, or tags for a storage account. It can also be used to map the account to a custom domain. Only one custom domain is supported per storage account; the replacement/change of custom domain is not supported. In order to replace an old custom domain, the old value must be cleared/unregistered before a new value can be set. The update of multiple properties is supported. This call does not change the storage keys for the account. If you want to change the storage account keys, use the regenerate keys operation. The location and name of the storage account cannot be changed after creation.", + "x-ms-examples": { + "StorageAccountUpdate": { + "$ref": "./examples/StorageAccountUpdate.json" + }, + "StorageAccountEnableAD": { + "$ref": "./examples/StorageAccountEnableAD.json" + }, + "StorageAccountEnableCMK": { + "$ref": "./examples/StorageAccountEnableCMK.json" + }, + "StorageAccountUpdateUserAssignedEncryptionIdentityWithCMK": { + "$ref": "./examples/StorageAccountUpdateUserAssignedEncryptionIdentityWithCMK.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/StorageAccountUpdateParameters" + }, + "description": "The parameters to provide for the updated account." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- storage account properties updated successfully.", + "schema": { + "$ref": "#/definitions/StorageAccount" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Storage/deletedAccounts": { + "get": { + "tags": [ + "DeletedAccounts" + ], + "operationId": "DeletedAccounts_List", + "description": "Lists deleted accounts under the subscription.", + "x-ms-examples": { + "DeletedAccountList": { + "$ref": "./examples/DeletedAccountList.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- List of deleted accounts was retrieved and returned successfully.", + "schema": { + "$ref": "#/definitions/DeletedAccountListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Storage/locations/{location}/deletedAccounts/{deletedAccountName}": { + "get": { + "tags": [ + "DeletedAccounts" + ], + "operationId": "DeletedAccounts_Get", + "description": "Get properties of specified deleted account resource.", + "x-ms-examples": { + "DeletedAccountGet": { + "$ref": "./examples/DeletedAccountGet.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/DeletedAccountName" + }, + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the deleted storage account." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- properties retrieved and returned successfully for the deleted account.", + "schema": { + "$ref": "#/definitions/DeletedAccount" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Storage/storageAccounts": { + "get": { + "tags": [ + "StorageAccounts" + ], + "operationId": "StorageAccounts_List", + "description": "Lists all the storage accounts available under the subscription. Note that storage keys are not returned; use the ListKeys operation for this.", + "x-ms-examples": { + "StorageAccountList": { + "$ref": "./examples/StorageAccountList.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- List of storage accounts was retrieved and returned successfully.", + "schema": { + "$ref": "#/definitions/StorageAccountListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts": { + "get": { + "tags": [ + "StorageAccounts" + ], + "operationId": "StorageAccounts_ListByResourceGroup", + "description": "Lists all the storage accounts available under the given resource group. Note that storage keys are not returned; use the ListKeys operation for this.", + "x-ms-examples": { + "StorageAccountListByResourceGroup": { + "$ref": "./examples/StorageAccountListByResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- List of storage accounts in the given resource group retrieved and returned successfully.", + "schema": { + "$ref": "#/definitions/StorageAccountListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/listKeys": { + "post": { + "tags": [ + "StorageAccounts" + ], + "operationId": "StorageAccounts_ListKeys", + "description": "Lists the access keys or Kerberos keys (if active directory enabled) for the specified storage account.", + "x-ms-examples": { + "StorageAccountListKeys": { + "$ref": "./examples/StorageAccountListKeys.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "enum": [ + "kerb" + ], + "x-ms-enum": { + "name": "ListKeyExpand" + }, + "description": "Specifies type of the key to be listed. Possible value is kerb." + } + ], + "responses": { + "200": { + "description": "OK -- list of keys retrieved and returned successfully.", + "schema": { + "$ref": "#/definitions/StorageAccountListKeysResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/regenerateKey": { + "post": { + "tags": [ + "StorageAccounts" + ], + "operationId": "StorageAccounts_RegenerateKey", + "description": "Regenerates one of the access keys or Kerberos keys for the specified storage account.", + "x-ms-examples": { + "StorageAccountRegenerateKey": { + "$ref": "./examples/StorageAccountRegenerateKey.json" + }, + "StorageAccountRegenerateKerbKey": { + "$ref": "./examples/StorageAccountRegenerateKerbKey.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "name": "regenerateKey", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/StorageAccountRegenerateKeyParameters" + }, + "description": "Specifies name of the key which should be regenerated -- key1, key2, kerb1, kerb2." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- specified key regenerated successfully.", + "schema": { + "$ref": "#/definitions/StorageAccountListKeysResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Storage/locations/{location}/usages": { + "get": { + "tags": [ + "LocationUsage" + ], + "operationId": "Usages_ListByLocation", + "description": "Gets the current usage count and the limit for the resources of the location under the subscription.", + "x-ms-examples": { + "UsageList": { + "$ref": "./examples/StorageAccountListLocationUsage.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the Azure Storage resource." + } + ], + "responses": { + "200": { + "description": "OK -- current usage count and limit retrieved and returned successfully.", + "schema": { + "$ref": "#/definitions/UsageListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/ListAccountSas": { + "post": { + "tags": [ + "StorageAccounts" + ], + "operationId": "StorageAccounts_ListAccountSAS", + "description": "List SAS credentials of a storage account.", + "x-ms-examples": { + "StorageAccountListAccountSAS": { + "$ref": "./examples/StorageAccountListAccountSAS.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AccountSasParameters" + }, + "description": "The parameters to provide to list SAS credentials for the storage account." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- returned the account SAS created for the storage account requested.", + "schema": { + "$ref": "#/definitions/ListAccountSasResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/ListServiceSas": { + "post": { + "tags": [ + "StorageAccounts" + ], + "operationId": "StorageAccounts_ListServiceSAS", + "description": "List service SAS credentials of a specific resource.", + "x-ms-examples": { + "StorageAccountListServiceSAS": { + "$ref": "./examples/StorageAccountListServiceSAS.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ServiceSasParameters" + }, + "description": "The parameters to provide to list service SAS credentials." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- returned the service SAS created for the storage service requested.", + "schema": { + "$ref": "#/definitions/ListServiceSasResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/failover": { + "post": { + "tags": [ + "StorageAccounts" + ], + "operationId": "StorageAccounts_Failover", + "description": "Failover request can be triggered for a storage account in case of availability issues. The failover occurs from the storage account's primary cluster to secondary cluster for RA-GRS accounts. The secondary cluster will become primary after failover.", + "x-ms-examples": { + "StorageAccountFailover": { + "$ref": "./examples/StorageAccountFailover.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Returned when the storage account failover is completed, and the secondary cluster has become primary." + }, + "202": { + "description": "Accepted -- Failover request accepted; operation will complete asynchronously." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/restoreBlobRanges": { + "post": { + "tags": [ + "StorageAccounts" + ], + "operationId": "StorageAccounts_RestoreBlobRanges", + "description": "Restore blobs in the specified blob ranges", + "x-ms-examples": { + "BlobRangesRestore": { + "$ref": "./examples/BlobRangesRestore.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/BlobRestoreParameters" + }, + "description": "The parameters to provide for restore blob ranges." + } + ], + "responses": { + "200": { + "description": "OK -- returned when blob ranges are restored completely with the same properties specified in the request body.", + "schema": { + "$ref": "#/definitions/BlobRestoreStatus" + } + }, + "202": { + "description": "Accepted -- Blob restore request accepted; operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/BlobRestoreStatus" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/managementPolicies/{managementPolicyName}": { + "get": { + "tags": [ + "ManagementPolicies" + ], + "operationId": "ManagementPolicies_Get", + "description": "Gets the managementpolicy associated with the specified storage account.", + "x-ms-examples": { + "StorageAccountGetManagementPolicies": { + "$ref": "./examples/StorageAccountGetManagementPolicy.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ManagementPolicyName" + } + ], + "responses": { + "200": { + "description": "OK -- Get the managementpolicy successfully.", + "schema": { + "$ref": "#/definitions/ManagementPolicy" + } + } + } + }, + "put": { + "tags": [ + "ManagementPolicies" + ], + "operationId": "ManagementPolicies_CreateOrUpdate", + "description": "Sets the managementpolicy to the specified storage account.", + "x-ms-examples": { + "StorageAccountSetManagementPolicies": { + "$ref": "./examples/StorageAccountSetManagementPolicy.json" + }, + "StorageAccountSetManagementPolicy_LastAccessTimeBasedBlobActions": { + "$ref": "./examples/StorageAccountSetManagementPolicy_LastAccessTimeBasedBlobActions.json" + }, + "StorageAccountSetManagementPolicyWithSnapshotAndVersion": { + "$ref": "./examples/StorageAccountSetManagementPolicyWithSnapshotAndVersion.json" + }, + "StorageAccountSetManagementPolicyForBlockAndAppendBlobs": { + "$ref": "./examples/StorageAccountSetManagementPolicyForBlockAndAppendBlobs.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ManagementPolicyName" + }, + { + "name": "properties", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ManagementPolicy" + }, + "description": "The ManagementPolicy set to a storage account." + } + ], + "responses": { + "200": { + "description": "OK -- Put managementpolicy successfully.", + "schema": { + "$ref": "#/definitions/ManagementPolicy" + } + } + } + }, + "delete": { + "tags": [ + "ManagementPolicies" + ], + "operationId": "ManagementPolicies_Delete", + "description": "Deletes the managementpolicy associated with the specified storage account.", + "x-ms-examples": { + "StorageAccountDeleteManagementPolicies": { + "$ref": "./examples/StorageAccountDeleteManagementPolicy.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ManagementPolicyName" + } + ], + "responses": { + "200": { + "description": "OK -- Delete the managementpolicy successfully." + }, + "204": { + "description": "No Content -- The managementpolicy does not exist." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/inventoryPolicies/{blobInventoryPolicyName}": { + "get": { + "tags": [ + "BlobInventoryPolicies" + ], + "operationId": "BlobInventoryPolicies_Get", + "description": "Gets the blob inventory policy associated with the specified storage account.", + "x-ms-examples": { + "StorageAccountGetBlobInventoryPolicy": { + "$ref": "./examples/StorageAccountGetBlobInventoryPolicy.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/BlobInventoryPolicyName" + } + ], + "responses": { + "200": { + "description": "OK -- Get the blob inventory policy successfully.", + "schema": { + "$ref": "#/definitions/BlobInventoryPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "BlobInventoryPolicies" + ], + "operationId": "BlobInventoryPolicies_CreateOrUpdate", + "description": "Sets the blob inventory policy to the specified storage account.", + "x-ms-examples": { + "StorageAccountSetBlobInventoryPolicy": { + "$ref": "./examples/StorageAccountSetBlobInventoryPolicy.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/BlobInventoryPolicyName" + }, + { + "name": "properties", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/BlobInventoryPolicy" + }, + "description": "The blob inventory policy set to a storage account." + } + ], + "responses": { + "200": { + "description": "OK -- Put blob inventory policy successfully.", + "schema": { + "$ref": "#/definitions/BlobInventoryPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "BlobInventoryPolicies" + ], + "operationId": "BlobInventoryPolicies_Delete", + "description": "Deletes the blob inventory policy associated with the specified storage account.", + "x-ms-examples": { + "StorageAccountDeleteBlobInventoryPolicy": { + "$ref": "./examples/StorageAccountDeleteBlobInventoryPolicy.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/BlobInventoryPolicyName" + } + ], + "responses": { + "200": { + "description": "OK -- Delete the blob inventory policy successfully." + }, + "204": { + "description": "No Content -- The blob inventory policy does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/inventoryPolicies": { + "get": { + "tags": [ + "BlobInventoryPolicies" + ], + "operationId": "BlobInventoryPolicies_List", + "description": "Gets the blob inventory policy associated with the specified storage account.", + "x-ms-examples": { + "StorageAccountGetBlobInventoryPolicy": { + "$ref": "./examples/StorageAccountListBlobInventoryPolicy.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Get the blob inventory policies successfully.", + "schema": { + "$ref": "#/definitions/ListBlobInventoryPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/privateEndpointConnections": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_List", + "description": "List all the private endpoint connections associated with the storage account.", + "x-ms-examples": { + "StorageAccountListPrivateEndpointConnections": { + "$ref": "./examples/StorageAccountListPrivateEndpointConnections.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Successfully retrieved private endpoint connections.", + "schema": { + "$ref": "./privatelinks.json#/definitions/PrivateEndpointConnectionListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Get", + "description": "Gets the specified private endpoint connection associated with the storage account.", + "x-ms-examples": { + "StorageAccountGetPrivateEndpointConnection": { + "$ref": "./examples/StorageAccountGetPrivateEndpointConnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/privatelinks.json#/parameters/PrivateEndpointConnectionName" + } + ], + "responses": { + "200": { + "description": "OK -- Get the private endpoint connection properties successfully.", + "schema": { + "$ref": "./privatelinks.json#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Put", + "description": "Update the state of specified private endpoint connection associated with the storage account.", + "x-ms-examples": { + "StorageAccountPutPrivateEndpointConnection": { + "$ref": "./examples/StorageAccountPutPrivateEndpointConnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/privatelinks.json#/parameters/PrivateEndpointConnectionName" + }, + { + "name": "properties", + "in": "body", + "required": true, + "schema": { + "$ref": "./privatelinks.json#/definitions/PrivateEndpointConnection" + }, + "description": "The private endpoint connection properties." + } + ], + "responses": { + "200": { + "description": "OK -- Update the private endpoint connection properties successfully.", + "schema": { + "$ref": "./privatelinks.json#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Delete", + "description": "Deletes the specified private endpoint connection associated with the storage account.", + "x-ms-examples": { + "StorageAccountDeletePrivateEndpointConnection": { + "$ref": "./examples/StorageAccountDeletePrivateEndpointConnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/privatelinks.json#/parameters/PrivateEndpointConnectionName" + } + ], + "responses": { + "200": { + "description": "OK -- Delete the private endpoint connection successfully." + }, + "204": { + "description": "No Content -- The private endpoint connection does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/privateLinkResources": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "operationId": "PrivateLinkResources_ListByStorageAccount", + "description": "Gets the private link resources that need to be created for a storage account.", + "x-ms-examples": { + "StorageAccountListPrivateLinkResources": { + "$ref": "./examples/StorageAccountListPrivateLinkResources.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private link resources.", + "schema": { + "$ref": "./privatelinks.json#/definitions/PrivateLinkResourceListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/objectReplicationPolicies": { + "get": { + "tags": [ + "ObjectReplicationPolicies" + ], + "operationId": "ObjectReplicationPolicies_List", + "description": "List the object replication policies associated with the storage account.", + "x-ms-examples": { + "StorageAccountListObjectReplicationPolicies": { + "$ref": "./examples/StorageAccountListObjectReplicationPolicies.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- List object replication policies successfully.", + "schema": { + "$ref": "#/definitions/ObjectReplicationPolicies" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/objectReplicationPolicies/{objectReplicationPolicyId}": { + "get": { + "tags": [ + "ObjectReplicationPolicies" + ], + "operationId": "ObjectReplicationPolicies_Get", + "description": "Get the object replication policy of the storage account by policy ID.", + "x-ms-examples": { + "StorageAccountGetObjectReplicationPolicies": { + "$ref": "./examples/StorageAccountGetObjectReplicationPolicy.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ObjectReplicationPolicyId" + } + ], + "responses": { + "200": { + "description": "OK -- Get the object replication policy successfully.", + "schema": { + "$ref": "#/definitions/ObjectReplicationPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ObjectReplicationPolicies" + ], + "operationId": "ObjectReplicationPolicies_CreateOrUpdate", + "description": "Create or update the object replication policy of the storage account.", + "x-ms-examples": { + "StorageAccountCreateObjectReplicationPolicyOnDestination": { + "$ref": "./examples/StorageAccountCreateObjectReplicationPolicyOnDestination.json" + }, + "StorageAccountCreateObjectReplicationPolicyOnSource": { + "$ref": "./examples/StorageAccountCreateObjectReplicationPolicyOnSource.json" + }, + "StorageAccountUpdateObjectReplicationPolicyOnDestination": { + "$ref": "./examples/StorageAccountUpdateObjectReplicationPolicyOnDestination.json" + }, + "StorageAccountUpdateObjectReplicationPolicyOnSource": { + "$ref": "./examples/StorageAccountUpdateObjectReplicationPolicyOnSource.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ObjectReplicationPolicyId" + }, + { + "name": "properties", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ObjectReplicationPolicy" + }, + "description": "The object replication policy set to a storage account. A unique policy ID will be created if absent." + } + ], + "responses": { + "200": { + "description": "OK -- Put object replication policy successfully.", + "schema": { + "$ref": "#/definitions/ObjectReplicationPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ObjectReplicationPolicies" + ], + "operationId": "ObjectReplicationPolicies_Delete", + "description": "Deletes the object replication policy associated with the specified storage account.", + "x-ms-examples": { + "StorageAccountDeleteObjectReplicationPolicies": { + "$ref": "./examples/StorageAccountDeleteObjectReplicationPolicy.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ObjectReplicationPolicyId" + } + ], + "responses": { + "200": { + "description": "OK -- Delete the object replication policy successfully." + }, + "204": { + "description": "No Content -- The object replication policy does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/revokeUserDelegationKeys": { + "post": { + "tags": [ + "StorageAccounts" + ], + "operationId": "StorageAccounts_RevokeUserDelegationKeys", + "description": "Revoke user delegation keys.", + "x-ms-examples": { + "StorageAccountRevokeUserDelegationKeys": { + "$ref": "./examples/StorageAccountRevokeUserDelegationKeys.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the storage account within the specified resource group. Storage account names must be between 3 and 24 characters in length and use numbers and lower-case letters only.", + "maxLength": 24, + "minLength": 3 + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- revoke user delegation keys succeeded." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/encryptionScopes/{encryptionScopeName}": { + "put": { + "tags": [ + "EncryptionScopes" + ], + "operationId": "EncryptionScopes_Put", + "description": "Synchronously creates or updates an encryption scope under the specified storage account. If an encryption scope is already created and a subsequent request is issued with different properties, the encryption scope properties will be updated per the specified request.", + "x-ms-examples": { + "StorageAccountPutEncryptionScope": { + "$ref": "./examples/StorageAccountPutEncryptionScope.json" + }, + "StorageAccountPutEncryptionScopeWithInfrastructureEncryption": { + "$ref": "./examples/StorageAccountPutEncryptionScopeWithInfrastructureEncryption.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/EncryptionScopeName" + }, + { + "name": "encryptionScope", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/EncryptionScope" + }, + "description": "Encryption scope properties to be used for the create or update." + } + ], + "responses": { + "201": { + "description": "Created -- Create encryption scope operation completed successfully.", + "schema": { + "$ref": "#/definitions/EncryptionScope" + } + }, + "200": { + "description": "OK -- Update encryption scope operation completed successfully.", + "schema": { + "$ref": "#/definitions/EncryptionScope" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "EncryptionScopes" + ], + "operationId": "EncryptionScopes_Patch", + "description": "Update encryption scope properties as specified in the request body. Update fails if the specified encryption scope does not already exist.", + "x-ms-examples": { + "StorageAccountPatchEncryptionScope": { + "$ref": "./examples/StorageAccountPatchEncryptionScope.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/EncryptionScopeName" + }, + { + "name": "encryptionScope", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/EncryptionScope" + }, + "description": "Encryption scope properties to be used for the update." + } + ], + "responses": { + "200": { + "description": "OK -- Update encryption scope operation completed successfully.", + "schema": { + "$ref": "#/definitions/EncryptionScope" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "EncryptionScopes" + ], + "operationId": "EncryptionScopes_Get", + "description": "Returns the properties for the specified encryption scope.", + "x-ms-examples": { + "StorageAccountGetEncryptionScope": { + "$ref": "./examples/StorageAccountGetEncryptionScope.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/EncryptionScopeName" + } + ], + "responses": { + "200": { + "description": "OK -- Get encryption scope operation completed successfully.", + "schema": { + "$ref": "#/definitions/EncryptionScope" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/encryptionScopes": { + "get": { + "tags": [ + "EncryptionScopes" + ], + "operationId": "EncryptionScopes_List", + "description": "Lists all the encryption scopes available under the specified storage account.", + "x-ms-examples": { + "StorageAccountEncryptionScopeList": { + "$ref": "./examples/StorageAccountEncryptionScopeList.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- List encryption scopes operation completed successfully.", + "schema": { + "$ref": "#/definitions/EncryptionScopeListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "OperationListResult": { + "description": "Result of the request to list Storage operations. It contains a list of operations and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "description": "List of Storage operations supported by the Storage resource provider." + } + } + }, + "Operation": { + "description": "Storage REST API operation definition.", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}", + "type": "string" + }, + "display": { + "description": "Display metadata associated with the operation.", + "properties": { + "provider": { + "description": "Service provider: Microsoft Storage.", + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed etc.", + "type": "string" + }, + "operation": { + "description": "Type of operation: get, read, delete, etc.", + "type": "string" + }, + "description": { + "description": "Description of the operation.", + "type": "string" + } + } + }, + "origin": { + "type": "string", + "description": "The origin of operations." + }, + "properties": { + "description": "Properties of operation, include metric specifications.", + "x-ms-client-flatten": true, + "x-ms-client-name": "OperationProperties", + "$ref": "#/definitions/OperationProperties" + } + } + }, + "OperationProperties": { + "description": "Properties of operation, include metric specifications.", + "properties": { + "serviceSpecification": { + "$ref": "#/definitions/ServiceSpecification", + "description": "One property of operation, include metric specifications." + } + } + }, + "ServiceSpecification": { + "description": "One property of operation, include metric specifications.", + "properties": { + "metricSpecifications": { + "description": "Metric specifications of operation.", + "type": "array", + "items": { + "$ref": "#/definitions/MetricSpecification" + } + } + } + }, + "MetricSpecification": { + "description": "Metric specification of operation.", + "properties": { + "name": { + "type": "string", + "description": "Name of metric specification." + }, + "displayName": { + "type": "string", + "description": "Display name of metric specification." + }, + "displayDescription": { + "type": "string", + "description": "Display description of metric specification." + }, + "unit": { + "type": "string", + "description": "Unit could be Bytes or Count." + }, + "dimensions": { + "description": "Dimensions of blobs, including blob type and access tier.", + "type": "array", + "items": { + "$ref": "#/definitions/Dimension" + } + }, + "aggregationType": { + "type": "string", + "description": "Aggregation type could be Average." + }, + "fillGapWithZero": { + "type": "boolean", + "description": "The property to decide fill gap with zero or not." + }, + "category": { + "type": "string", + "description": "The category this metric specification belong to, could be Capacity." + }, + "resourceIdDimensionNameOverride": { + "type": "string", + "description": "Account Resource Id." + } + } + }, + "Dimension": { + "description": "Dimension of blobs, possibly be blob type or access tier.", + "properties": { + "name": { + "type": "string", + "description": "Display name of dimension." + }, + "displayName": { + "type": "string", + "description": "Display name of dimension." + } + } + }, + "StorageAccountCheckNameAvailabilityParameters": { + "properties": { + "name": { + "type": "string", + "description": "The storage account name." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Storage/storageAccounts" + ], + "x-ms-enum": { + "name": "Type", + "modelAsString": false + }, + "description": "The type of resource, Microsoft.Storage/storageAccounts" + } + }, + "required": [ + "name", + "type" + ], + "description": "The parameters used to check the availability of the storage account name." + }, + "SKUCapability": { + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "The name of capability, The capability information in the specified SKU, including file encryption, network ACLs, change notification, etc." + }, + "value": { + "readOnly": true, + "type": "string", + "description": "A string value to indicate states of given capability. Possibly 'true' or 'false'." + } + }, + "description": "The capability information in the specified SKU, including file encryption, network ACLs, change notification, etc." + }, + "Restriction": { + "properties": { + "type": { + "readOnly": true, + "type": "string", + "description": "The type of restrictions. As of now only possible value for this is location." + }, + "values": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The value of restrictions. If the restriction type is set to location. This would be different locations where the SKU is restricted." + }, + "reasonCode": { + "type": "string", + "enum": [ + "QuotaId", + "NotAvailableForSubscription" + ], + "x-ms-enum": { + "name": "ReasonCode", + "modelAsString": true + }, + "description": "The reason for the restriction. As of now this can be \"QuotaId\" or \"NotAvailableForSubscription\". Quota Id is set when the SKU has requiredQuotas parameter as the subscription does not belong to that quota. The \"NotAvailableForSubscription\" is related to capacity at DC." + } + }, + "description": "The restriction because of which SKU cannot be used." + }, + "StorageSkuListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SkuInformation" + }, + "description": "Get the list result of storage SKUs and their properties." + } + }, + "description": "The response from the List Storage SKUs operation." + }, + "CheckNameAvailabilityResult": { + "properties": { + "nameAvailable": { + "readOnly": true, + "type": "boolean", + "description": "Gets a boolean value that indicates whether the name is available for you to use. If true, the name is available. If false, the name has already been taken or is invalid and cannot be used." + }, + "reason": { + "readOnly": true, + "type": "string", + "description": "Gets the reason that a storage account name could not be used. The Reason element is only returned if NameAvailable is false.", + "enum": [ + "AccountNameInvalid", + "AlreadyExists" + ], + "x-ms-enum": { + "name": "Reason", + "modelAsString": false + } + }, + "message": { + "readOnly": true, + "type": "string", + "description": "Gets an error message explaining the Reason value in more detail." + } + }, + "description": "The CheckNameAvailability operation response." + }, + "SkuInformation": { + "properties": { + "name": { + "$ref": "./common.json#/definitions/SkuName" + }, + "tier": { + "$ref": "./common.json#/definitions/Tier" + }, + "resourceType": { + "readOnly": true, + "type": "string", + "description": "The type of the resource, usually it is 'storageAccounts'." + }, + "kind": { + "readOnly": true, + "type": "string", + "description": "Indicates the type of storage account.", + "enum": [ + "Storage", + "StorageV2", + "BlobStorage", + "FileStorage", + "BlockBlobStorage" + ], + "x-ms-enum": { + "name": "Kind", + "modelAsString": true + } + }, + "locations": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The set of locations that the SKU is available. This will be supported and registered Azure Geo Regions (e.g. West US, East US, Southeast Asia, etc.)." + }, + "capabilities": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SKUCapability" + }, + "description": "The capability information in the specified SKU, including file encryption, network ACLs, change notification, etc." + }, + "restrictions": { + "type": "array", + "items": { + "$ref": "#/definitions/Restriction" + }, + "description": "The restrictions because of which SKU cannot be used. This is empty if there are no restrictions." + } + }, + "required": [ + "name" + ], + "description": "Storage SKU and its properties" + }, + "CustomDomain": { + "properties": { + "name": { + "type": "string", + "description": "Gets or sets the custom domain name assigned to the storage account. Name is the CNAME source." + }, + "useSubDomainName": { + "type": "boolean", + "description": "Indicates whether indirect CName validation is enabled. Default value is false. This should only be set on updates." + } + }, + "required": [ + "name" + ], + "description": "The custom domain assigned to this storage account. This can be set via Update." + }, + "SasPolicy": { + "properties": { + "sasExpirationPeriod": { + "type": "string", + "example": "1.15:59:59", + "description": "The SAS expiration period, DD.HH:MM:SS." + }, + "expirationAction": { + "type": "string", + "enum": [ + "Log" + ], + "x-ms-enum": { + "name": "ExpirationAction", + "modelAsString": true + }, + "default": "Log", + "description": "The SAS expiration action. Can only be Log." + } + }, + "required": [ + "sasExpirationPeriod", + "expirationAction" + ], + "description": "SasPolicy assigned to the storage account." + }, + "KeyPolicy": { + "properties": { + "keyExpirationPeriodInDays": { + "type": "integer", + "description": "The key expiration period in days.", + "format": "int32" + } + }, + "required": [ + "keyExpirationPeriodInDays" + ], + "description": "KeyPolicy assigned to the storage account." + }, + "KeyCreationTime": { + "properties": { + "key1": { + "type": "string", + "format": "date-time", + "example": "2021-02-03T05:57:30.917Z" + }, + "key2": { + "type": "string", + "format": "date-time", + "example": "2021-02-03T05:57:30.917Z" + } + }, + "description": "Storage account keys creation time." + }, + "EncryptionService": { + "properties": { + "enabled": { + "type": "boolean", + "description": "A boolean indicating whether or not the service encrypts the data as it is stored." + }, + "lastEnabledTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "Gets a rough estimate of the date/time when the encryption was last enabled by the user. Only returned when encryption is enabled. There might be some unencrypted blobs which were written after this time, as it is just a rough estimate." + }, + "keyType": { + "type": "string", + "description": "Encryption key type to be used for the encryption service. 'Account' key type implies that an account-scoped encryption key will be used. 'Service' key type implies that a default service key is used.", + "enum": [ + "Service", + "Account" + ], + "x-ms-enum": { + "name": "KeyType", + "modelAsString": true + }, + "x-ms-mutability": [ + "create", + "read" + ] + } + }, + "description": "A service that allows server-side encryption to be used." + }, + "EncryptionServices": { + "properties": { + "blob": { + "$ref": "#/definitions/EncryptionService", + "description": "The encryption function of the blob storage service." + }, + "file": { + "$ref": "#/definitions/EncryptionService", + "description": "The encryption function of the file storage service." + }, + "table": { + "$ref": "#/definitions/EncryptionService", + "description": "The encryption function of the table storage service." + }, + "queue": { + "$ref": "#/definitions/EncryptionService", + "description": "The encryption function of the queue storage service." + } + }, + "description": "A list of services that support encryption." + }, + "KeyVaultProperties": { + "description": "Properties of key vault.", + "properties": { + "keyname": { + "type": "string", + "description": "The name of KeyVault key.", + "x-ms-client-name": "KeyName" + }, + "keyversion": { + "type": "string", + "description": "The version of KeyVault key.", + "x-ms-client-name": "KeyVersion" + }, + "keyvaulturi": { + "type": "string", + "description": "The Uri of KeyVault.", + "x-ms-client-name": "KeyVaultUri" + }, + "currentVersionedKeyIdentifier": { + "type": "string", + "readOnly": true, + "description": "The object identifier of the current versioned Key Vault Key in use.", + "x-ms-client-name": "CurrentVersionedKeyIdentifier" + }, + "lastKeyRotationTimestamp": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "Timestamp of last rotation of the Key Vault Key.", + "x-ms-client-name": "LastKeyRotationTimestamp" + } + } + }, + "Encryption": { + "properties": { + "services": { + "$ref": "#/definitions/EncryptionServices", + "description": "List of services which support encryption." + }, + "keySource": { + "type": "string", + "description": "The encryption keySource (provider). Possible values (case-insensitive): Microsoft.Storage, Microsoft.Keyvault", + "enum": [ + "Microsoft.Storage", + "Microsoft.Keyvault" + ], + "x-ms-enum": { + "name": "KeySource", + "modelAsString": true + }, + "default": "Microsoft.Storage" + }, + "requireInfrastructureEncryption": { + "type": "boolean", + "x-ms-client-name": "RequireInfrastructureEncryption", + "description": "A boolean indicating whether or not the service applies a secondary layer of encryption with platform managed keys for data at rest." + }, + "keyvaultproperties": { + "$ref": "#/definitions/KeyVaultProperties", + "x-ms-client-name": "KeyVaultProperties", + "description": "Properties provided by key vault." + }, + "identity": { + "$ref": "#/definitions/EncryptionIdentity", + "x-ms-client-name": "EncryptionIdentity", + "description": "The identity to be used with service-side encryption at rest." + } + }, + "required": [ + "keySource" + ], + "description": "The encryption settings on the storage account." + }, + "EncryptionIdentity": { + "properties": { + "userAssignedIdentity": { + "type": "string", + "description": "Resource identifier of the UserAssigned identity to be associated with server-side encryption on the storage account.", + "x-ms-client-name": "EncryptionUserAssignedIdentity" + } + }, + "description": "Encryption identity for the storage account." + }, + "UserAssignedIdentity": { + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal ID of the identity." + }, + "clientId": { + "readOnly": true, + "type": "string", + "description": "The client ID of the identity." + } + }, + "description": "UserAssignedIdentity for the resource." + }, + "ResourceAccessRule": { + "properties": { + "tenantId": { + "type": "string", + "description": "Tenant Id" + }, + "resourceId": { + "type": "string", + "description": "Resource Id" + } + }, + "description": "Resource Access Rule." + }, + "VirtualNetworkRule": { + "properties": { + "id": { + "type": "string", + "x-ms-client-name": "VirtualNetworkResourceId", + "description": "Resource ID of a subnet, for example: /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.Network/virtualNetworks/{vnetName}/subnets/{subnetName}." + }, + "action": { + "type": "string", + "enum": [ + "Allow" + ], + "x-ms-enum": { + "name": "Action", + "modelAsString": false + }, + "default": "Allow", + "description": "The action of virtual network rule." + }, + "state": { + "type": "string", + "enum": [ + "provisioning", + "deprovisioning", + "succeeded", + "failed", + "networkSourceDeleted" + ], + "x-ms-enum": { + "name": "State", + "modelAsString": true + }, + "description": "Gets the state of virtual network rule." + } + }, + "required": [ + "id" + ], + "description": "Virtual Network rule." + }, + "IPRule": { + "properties": { + "value": { + "type": "string", + "x-ms-client-name": "IPAddressOrRange", + "description": "Specifies the IP or IP range in CIDR format. Only IPV4 address is allowed." + }, + "action": { + "type": "string", + "enum": [ + "Allow" + ], + "x-ms-enum": { + "name": "Action", + "modelAsString": false + }, + "default": "Allow", + "description": "The action of IP ACL rule." + } + }, + "required": [ + "value" + ], + "description": "IP rule with specific IP or IP range in CIDR format." + }, + "NetworkRuleSet": { + "properties": { + "bypass": { + "type": "string", + "enum": [ + "None", + "Logging", + "Metrics", + "AzureServices" + ], + "x-ms-enum": { + "name": "Bypass", + "modelAsString": true + }, + "x-ms-client-name": "Bypass", + "default": "AzureServices", + "description": "Specifies whether traffic is bypassed for Logging/Metrics/AzureServices. Possible values are any combination of Logging|Metrics|AzureServices (For example, \"Logging, Metrics\"), or None to bypass none of those traffics." + }, + "resourceAccessRules": { + "type": "array", + "items": { + "description": "Resource Access Rules.", + "$ref": "#/definitions/ResourceAccessRule" + }, + "description": "Sets the resource access rules" + }, + "virtualNetworkRules": { + "type": "array", + "items": { + "description": "Virtual Network rule.", + "$ref": "#/definitions/VirtualNetworkRule" + }, + "description": "Sets the virtual network rules" + }, + "ipRules": { + "type": "array", + "items": { + "description": "IP rule with specific IP or IP range in CIDR format.", + "$ref": "#/definitions/IPRule" + }, + "description": "Sets the IP ACL rules" + }, + "defaultAction": { + "type": "string", + "enum": [ + "Allow", + "Deny" + ], + "x-ms-enum": { + "name": "DefaultAction", + "modelAsString": false + }, + "default": "Allow", + "description": "Specifies the default action of allow or deny when no other rules match." + } + }, + "required": [ + "defaultAction" + ], + "description": "Network rule set" + }, + "AzureFilesIdentityBasedAuthentication": { + "properties": { + "directoryServiceOptions": { + "type": "string", + "description": "Indicates the directory service used.", + "enum": [ + "None", + "AADDS", + "AD" + ], + "x-ms-enum": { + "name": "DirectoryServiceOptions", + "modelAsString": true + } + }, + "activeDirectoryProperties": { + "$ref": "#/definitions/ActiveDirectoryProperties", + "description": "Required if choose AD." + } + }, + "required": [ + "directoryServiceOptions" + ], + "description": "Settings for Azure Files identity based authentication." + }, + "ActiveDirectoryProperties": { + "properties": { + "domainName": { + "type": "string", + "description": "Specifies the primary domain that the AD DNS server is authoritative for." + }, + "netBiosDomainName": { + "type": "string", + "description": "Specifies the NetBIOS domain name." + }, + "forestName": { + "type": "string", + "description": "Specifies the Active Directory forest to get." + }, + "domainGuid": { + "type": "string", + "description": "Specifies the domain GUID." + }, + "domainSid": { + "type": "string", + "description": "Specifies the security identifier (SID)." + }, + "azureStorageSid": { + "type": "string", + "description": "Specifies the security identifier (SID) for Azure Storage." + } + }, + "required": [ + "domainName", + "netBiosDomainName", + "forestName", + "domainGuid", + "domainSid", + "azureStorageSid" + ], + "description": "Settings properties for Active Directory (AD)." + }, + "StorageAccountPropertiesCreateParameters": { + "properties": { + "sasPolicy": { + "$ref": "#/definitions/SasPolicy", + "description": "SasPolicy assigned to the storage account." + }, + "keyPolicy": { + "$ref": "#/definitions/KeyPolicy", + "description": "KeyPolicy assigned to the storage account." + }, + "customDomain": { + "$ref": "#/definitions/CustomDomain", + "description": "User domain assigned to the storage account. Name is the CNAME source. Only one custom domain is supported per storage account at this time. To clear the existing custom domain, use an empty string for the custom domain name property." + }, + "encryption": { + "$ref": "#/definitions/Encryption", + "description": "Not applicable. Azure Storage encryption is enabled for all storage accounts and cannot be disabled." + }, + "networkAcls": { + "$ref": "#/definitions/NetworkRuleSet", + "x-ms-client-name": "NetworkRuleSet", + "description": "Network rule set" + }, + "accessTier": { + "type": "string", + "description": "Required for storage accounts where kind = BlobStorage. The access tier used for billing.", + "enum": [ + "Hot", + "Cool" + ], + "x-ms-enum": { + "name": "AccessTier", + "modelAsString": false + } + }, + "azureFilesIdentityBasedAuthentication": { + "$ref": "#/definitions/AzureFilesIdentityBasedAuthentication", + "description": "Provides the identity based authentication settings for Azure Files." + }, + "supportsHttpsTrafficOnly": { + "type": "boolean", + "x-ms-client-name": "EnableHttpsTrafficOnly", + "description": "Allows https traffic only to storage service if sets to true. The default value is true since API version 2019-04-01." + }, + "isHnsEnabled": { + "type": "boolean", + "x-ms-client-name": "IsHnsEnabled", + "description": "Account HierarchicalNamespace enabled if sets to true." + }, + "largeFileSharesState": { + "type": "string", + "enum": [ + "Disabled", + "Enabled" + ], + "x-ms-enum": { + "name": "LargeFileSharesState", + "modelAsString": true + }, + "description": "Allow large file shares if sets to Enabled. It cannot be disabled once it is enabled." + }, + "routingPreference": { + "$ref": "#/definitions/RoutingPreference", + "x-ms-client-name": "RoutingPreference", + "description": "Maintains information about the network routing choice opted by the user for data transfer" + }, + "allowBlobPublicAccess": { + "type": "boolean", + "x-ms-client-name": "AllowBlobPublicAccess", + "description": "Allow or disallow public access to all blobs or containers in the storage account. The default interpretation is true for this property." + }, + "minimumTlsVersion": { + "type": "string", + "enum": [ + "TLS1_0", + "TLS1_1", + "TLS1_2" + ], + "x-ms-enum": { + "name": "MinimumTlsVersion", + "modelAsString": true + }, + "description": "Set the minimum TLS version to be permitted on requests to storage. The default interpretation is TLS 1.0 for this property." + }, + "allowSharedKeyAccess": { + "type": "boolean", + "description": "Indicates whether the storage account permits requests to be authorized with the account access key via Shared Key. If false, then all requests, including shared access signatures, must be authorized with Azure Active Directory (Azure AD). The default value is null, which is equivalent to true." + }, + "isNfsV3Enabled": { + "type": "boolean", + "x-ms-client-name": "EnableNfsV3", + "description": "NFS 3.0 protocol support enabled if set to true." + } + }, + "description": "The parameters used to create the storage account." + }, + "Identity": { + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal ID of resource identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant ID of resource." + }, + "type": { + "type": "string", + "description": "The identity type.", + "enum": [ + "None", + "SystemAssigned", + "UserAssigned", + "SystemAssigned,UserAssigned" + ], + "x-ms-enum": { + "name": "IdentityType", + "modelAsString": true + } + }, + "userAssignedIdentities": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/UserAssignedIdentity" + }, + "description": "Gets or sets a list of key value pairs that describe the set of User Assigned identities that will be used with this storage account. The key is the ARM resource identifier of the identity. Only 1 User Assigned identity is permitted here." + } + }, + "required": [ + "type" + ], + "description": "Identity for the resource." + }, + "ExtendedLocationType": { + "type": "string", + "description": "The type of extendedLocation.", + "enum": [ + "EdgeZone" + ], + "x-ms-enum": { + "name": "ExtendedLocationTypes", + "modelAsString": true + } + }, + "ExtendedLocation": { + "description": "The complex type of the extended location.", + "properties": { + "name": { + "type": "string", + "description": "The name of the extended location." + }, + "type": { + "$ref": "#/definitions/ExtendedLocationType", + "description": "The type of the extended location." + } + } + }, + "StorageAccountCreateParameters": { + "properties": { + "sku": { + "$ref": "./common.json#/definitions/Sku", + "description": "Required. Gets or sets the SKU name." + }, + "kind": { + "type": "string", + "description": "Required. Indicates the type of storage account.", + "enum": [ + "Storage", + "StorageV2", + "BlobStorage", + "FileStorage", + "BlockBlobStorage" + ], + "x-ms-enum": { + "name": "Kind", + "modelAsString": true + } + }, + "location": { + "type": "string", + "description": "Required. Gets or sets the location of the resource. This will be one of the supported and registered Azure Geo Regions (e.g. West US, East US, Southeast Asia, etc.). The geo region of a resource cannot be changed once it is created, but if an identical geo region is specified on update, the request will succeed." + }, + "extendedLocation": { + "$ref": "#/definitions/ExtendedLocation", + "description": "Optional. Set the extended location of the resource. If not set, the storage account will be created in Azure main region. Otherwise it will be created in the specified extended location" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Gets or sets a list of key value pairs that describe the resource. These tags can be used for viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key with a length no greater than 128 characters and a value with a length no greater than 256 characters." + }, + "identity": { + "$ref": "#/definitions/Identity", + "description": "The identity of the resource." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/StorageAccountPropertiesCreateParameters", + "description": "The parameters used to create the storage account." + } + }, + "required": [ + "sku", + "kind", + "location" + ], + "description": "The parameters used when creating a storage account." + }, + "Endpoints": { + "properties": { + "blob": { + "readOnly": true, + "type": "string", + "description": "Gets the blob endpoint." + }, + "queue": { + "readOnly": true, + "type": "string", + "description": "Gets the queue endpoint." + }, + "table": { + "readOnly": true, + "type": "string", + "description": "Gets the table endpoint." + }, + "file": { + "readOnly": true, + "type": "string", + "description": "Gets the file endpoint." + }, + "web": { + "readOnly": true, + "type": "string", + "description": "Gets the web endpoint." + }, + "dfs": { + "readOnly": true, + "type": "string", + "description": "Gets the dfs endpoint." + }, + "microsoftEndpoints": { + "x-ms-client-flatten": false, + "$ref": "#/definitions/StorageAccountMicrosoftEndpoints", + "description": "Gets the microsoft routing storage endpoints." + }, + "internetEndpoints": { + "x-ms-client-flatten": false, + "$ref": "#/definitions/StorageAccountInternetEndpoints", + "description": "Gets the internet routing storage endpoints" + } + }, + "description": "The URIs that are used to perform a retrieval of a public blob, queue, table, web or dfs object." + }, + "StorageAccountMicrosoftEndpoints": { + "properties": { + "blob": { + "readOnly": true, + "type": "string", + "description": "Gets the blob endpoint." + }, + "queue": { + "readOnly": true, + "type": "string", + "description": "Gets the queue endpoint." + }, + "table": { + "readOnly": true, + "type": "string", + "description": "Gets the table endpoint." + }, + "file": { + "readOnly": true, + "type": "string", + "description": "Gets the file endpoint." + }, + "web": { + "readOnly": true, + "type": "string", + "description": "Gets the web endpoint." + }, + "dfs": { + "readOnly": true, + "type": "string", + "description": "Gets the dfs endpoint." + } + }, + "description": "The URIs that are used to perform a retrieval of a public blob, queue, table, web or dfs object via a microsoft routing endpoint." + }, + "StorageAccountInternetEndpoints": { + "properties": { + "blob": { + "readOnly": true, + "type": "string", + "description": "Gets the blob endpoint." + }, + "file": { + "readOnly": true, + "type": "string", + "description": "Gets the file endpoint." + }, + "web": { + "readOnly": true, + "type": "string", + "description": "Gets the web endpoint." + }, + "dfs": { + "readOnly": true, + "type": "string", + "description": "Gets the dfs endpoint." + } + }, + "description": "The URIs that are used to perform a retrieval of a public blob, file, web or dfs object via a internet routing endpoint." + }, + "GeoReplicationStats": { + "properties": { + "status": { + "readOnly": true, + "type": "string", + "description": "The status of the secondary location. Possible values are: - Live: Indicates that the secondary location is active and operational. - Bootstrap: Indicates initial synchronization from the primary location to the secondary location is in progress.This typically occurs when replication is first enabled. - Unavailable: Indicates that the secondary location is temporarily unavailable.", + "enum": [ + "Live", + "Bootstrap", + "Unavailable" + ], + "x-ms-enum": { + "name": "GeoReplicationStatus", + "modelAsString": true + } + }, + "lastSyncTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "All primary writes preceding this UTC date/time value are guaranteed to be available for read operations. Primary writes following this point in time may or may not be available for reads. Element may be default value if value of LastSyncTime is not available, this can happen if secondary is offline or we are in bootstrap." + }, + "canFailover": { + "readOnly": true, + "type": "boolean", + "description": "A boolean flag which indicates whether or not account failover is supported for the account." + } + }, + "description": "Statistics related to replication for storage account's Blob, Table, Queue and File services. It is only available when geo-redundant replication is enabled for the storage account." + }, + "RoutingPreference": { + "properties": { + "routingChoice": { + "type": "string", + "description": "Routing Choice defines the kind of network routing opted by the user.", + "enum": [ + "MicrosoftRouting", + "InternetRouting" + ], + "x-ms-enum": { + "name": "RoutingChoice", + "modelAsString": true + } + }, + "publishMicrosoftEndpoints": { + "type": "boolean", + "description": "A boolean flag which indicates whether microsoft routing storage endpoints are to be published" + }, + "publishInternetEndpoints": { + "type": "boolean", + "description": "A boolean flag which indicates whether internet routing storage endpoints are to be published" + } + }, + "description": "Routing preference defines the type of network, either microsoft or internet routing to be used to deliver the user data, the default option is microsoft routing" + }, + "BlobRestoreStatus": { + "properties": { + "status": { + "readOnly": true, + "type": "string", + "description": "The status of blob restore progress. Possible values are: - InProgress: Indicates that blob restore is ongoing. - Complete: Indicates that blob restore has been completed successfully. - Failed: Indicates that blob restore is failed.", + "enum": [ + "InProgress", + "Complete", + "Failed" + ], + "x-ms-enum": { + "name": "BlobRestoreProgressStatus", + "modelAsString": true + } + }, + "failureReason": { + "readOnly": true, + "type": "string", + "description": "Failure reason when blob restore is failed." + }, + "restoreId": { + "readOnly": true, + "type": "string", + "description": "Id for tracking blob restore request." + }, + "parameters": { + "readOnly": true, + "$ref": "#/definitions/BlobRestoreParameters", + "description": "Blob restore request parameters." + } + }, + "description": "Blob restore status." + }, + "DeletedAccountProperties": { + "properties": { + "storageAccountResourceId": { + "readOnly": true, + "type": "string", + "description": "Full resource id of the original storage account." + }, + "location": { + "readOnly": true, + "type": "string", + "description": "Location of the deleted account." + }, + "restoreReference": { + "readOnly": true, + "type": "string", + "description": "Can be used to attempt recovering this deleted account via PutStorageAccount API." + }, + "creationTime": { + "readOnly": true, + "type": "string", + "description": "Creation time of the deleted account." + }, + "deletionTime": { + "readOnly": true, + "type": "string", + "description": "Deletion time of the deleted account." + } + }, + "description": "Attributes of a deleted storage account." + }, + "StorageAccountProperties": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "Gets the status of the storage account at the time the operation was called.", + "enum": [ + "Creating", + "ResolvingDNS", + "Succeeded" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": false + } + }, + "primaryEndpoints": { + "$ref": "#/definitions/Endpoints", + "readOnly": true, + "description": "Gets the URLs that are used to perform a retrieval of a public blob, queue, or table object. Note that Standard_ZRS and Premium_LRS accounts only return the blob endpoint." + }, + "primaryLocation": { + "readOnly": true, + "type": "string", + "description": "Gets the location of the primary data center for the storage account." + }, + "statusOfPrimary": { + "readOnly": true, + "type": "string", + "description": "Gets the status indicating whether the primary location of the storage account is available or unavailable.", + "enum": [ + "available", + "unavailable" + ], + "x-ms-enum": { + "name": "AccountStatus", + "modelAsString": false + } + }, + "lastGeoFailoverTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "Gets the timestamp of the most recent instance of a failover to the secondary location. Only the most recent timestamp is retained. This element is not returned if there has never been a failover instance. Only available if the accountType is Standard_GRS or Standard_RAGRS." + }, + "secondaryLocation": { + "readOnly": true, + "type": "string", + "description": "Gets the location of the geo-replicated secondary for the storage account. Only available if the accountType is Standard_GRS or Standard_RAGRS." + }, + "statusOfSecondary": { + "readOnly": true, + "type": "string", + "description": "Gets the status indicating whether the secondary location of the storage account is available or unavailable. Only available if the SKU name is Standard_GRS or Standard_RAGRS.", + "enum": [ + "available", + "unavailable" + ], + "x-ms-enum": { + "name": "AccountStatus", + "modelAsString": false + } + }, + "creationTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "Gets the creation date and time of the storage account in UTC." + }, + "customDomain": { + "$ref": "#/definitions/CustomDomain", + "readOnly": true, + "description": "Gets the custom domain the user assigned to this storage account." + }, + "sasPolicy": { + "$ref": "#/definitions/SasPolicy", + "readOnly": true, + "description": "SasPolicy assigned to the storage account." + }, + "keyPolicy": { + "$ref": "#/definitions/KeyPolicy", + "readOnly": true, + "description": "KeyPolicy assigned to the storage account." + }, + "keyCreationTime": { + "readOnly": true, + "$ref": "#/definitions/KeyCreationTime", + "description": "Storage account keys creation time." + }, + "secondaryEndpoints": { + "$ref": "#/definitions/Endpoints", + "readOnly": true, + "description": "Gets the URLs that are used to perform a retrieval of a public blob, queue, or table object from the secondary location of the storage account. Only available if the SKU name is Standard_RAGRS." + }, + "encryption": { + "$ref": "#/definitions/Encryption", + "readOnly": true, + "description": "Gets the encryption settings on the account. If unspecified, the account is unencrypted." + }, + "accessTier": { + "readOnly": true, + "type": "string", + "description": "Required for storage accounts where kind = BlobStorage. The access tier used for billing.", + "enum": [ + "Hot", + "Cool" + ], + "x-ms-enum": { + "name": "AccessTier", + "modelAsString": false + } + }, + "azureFilesIdentityBasedAuthentication": { + "$ref": "#/definitions/AzureFilesIdentityBasedAuthentication", + "description": "Provides the identity based authentication settings for Azure Files." + }, + "supportsHttpsTrafficOnly": { + "type": "boolean", + "x-ms-client-name": "EnableHttpsTrafficOnly", + "description": "Allows https traffic only to storage service if sets to true." + }, + "networkAcls": { + "$ref": "#/definitions/NetworkRuleSet", + "x-ms-client-name": "NetworkRuleSet", + "description": "Network rule set", + "readOnly": true + }, + "isHnsEnabled": { + "type": "boolean", + "x-ms-client-name": "IsHnsEnabled", + "description": "Account HierarchicalNamespace enabled if sets to true." + }, + "geoReplicationStats": { + "$ref": "#/definitions/GeoReplicationStats", + "x-ms-client-name": "GeoReplicationStats", + "description": "Geo Replication Stats", + "readOnly": true + }, + "failoverInProgress": { + "type": "boolean", + "x-ms-client-name": "FailoverInProgress", + "description": "If the failover is in progress, the value will be true, otherwise, it will be null.", + "readOnly": true + }, + "largeFileSharesState": { + "type": "string", + "enum": [ + "Disabled", + "Enabled" + ], + "x-ms-enum": { + "name": "LargeFileSharesState", + "modelAsString": true + }, + "description": "Allow large file shares if sets to Enabled. It cannot be disabled once it is enabled." + }, + "privateEndpointConnections": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./privatelinks.json#/definitions/PrivateEndpointConnection" + }, + "description": "List of private endpoint connection associated with the specified storage account" + }, + "routingPreference": { + "$ref": "#/definitions/RoutingPreference", + "x-ms-client-name": "RoutingPreference", + "description": "Maintains information about the network routing choice opted by the user for data transfer" + }, + "blobRestoreStatus": { + "$ref": "#/definitions/BlobRestoreStatus", + "x-ms-client-name": "BlobRestoreStatus", + "description": "Blob restore status", + "readOnly": true + }, + "allowBlobPublicAccess": { + "type": "boolean", + "x-ms-client-name": "AllowBlobPublicAccess", + "description": "Allow or disallow public access to all blobs or containers in the storage account. The default interpretation is true for this property." + }, + "minimumTlsVersion": { + "type": "string", + "enum": [ + "TLS1_0", + "TLS1_1", + "TLS1_2" + ], + "x-ms-enum": { + "name": "MinimumTlsVersion", + "modelAsString": true + }, + "description": "Set the minimum TLS version to be permitted on requests to storage. The default interpretation is TLS 1.0 for this property." + }, + "allowSharedKeyAccess": { + "type": "boolean", + "description": "Indicates whether the storage account permits requests to be authorized with the account access key via Shared Key. If false, then all requests, including shared access signatures, must be authorized with Azure Active Directory (Azure AD). The default value is null, which is equivalent to true." + }, + "isNfsV3Enabled": { + "type": "boolean", + "x-ms-client-name": "EnableNfsV3", + "description": "NFS 3.0 protocol support enabled if set to true." + } + }, + "description": "Properties of the storage account." + }, + "DeletedAccount": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DeletedAccountProperties", + "description": "Properties of the deleted account." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "Deleted storage account" + }, + "StorageAccount": { + "properties": { + "sku": { + "$ref": "./common.json#/definitions/Sku", + "readOnly": true, + "description": "Gets the SKU." + }, + "kind": { + "readOnly": true, + "type": "string", + "description": "Gets the Kind.", + "enum": [ + "Storage", + "StorageV2", + "BlobStorage", + "FileStorage", + "BlockBlobStorage" + ], + "x-ms-enum": { + "name": "Kind", + "modelAsString": true + } + }, + "identity": { + "$ref": "#/definitions/Identity", + "description": "The identity of the resource." + }, + "extendedLocation": { + "$ref": "#/definitions/ExtendedLocation", + "description": "The extendedLocation of the resource." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/StorageAccountProperties", + "description": "Properties of the storage account." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/TrackedResource" + } + ], + "description": "The storage account." + }, + "StorageAccountKey": { + "properties": { + "keyName": { + "readOnly": true, + "type": "string", + "description": "Name of the key." + }, + "value": { + "readOnly": true, + "type": "string", + "description": "Base 64-encoded value of the key." + }, + "permissions": { + "readOnly": true, + "type": "string", + "description": "Permissions for the key -- read-only or full permissions.", + "enum": [ + "Read", + "Full" + ], + "x-ms-enum": { + "name": "KeyPermission", + "modelAsString": false + } + }, + "creationTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "Creation time of the key, in round trip date format." + } + }, + "description": "An access key for the storage account." + }, + "StorageAccountListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/StorageAccount" + }, + "description": "Gets the list of storage accounts and their properties." + }, + "nextLink": { + "type": "string", + "description": "Request URL that can be used to query next page of storage accounts. Returned when total number of requested storage accounts exceed maximum page size.", + "readOnly": true + } + }, + "description": "The response from the List Storage Accounts operation." + }, + "DeletedAccountListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/DeletedAccount" + }, + "description": "Gets the list of deleted accounts and their properties." + }, + "nextLink": { + "type": "string", + "description": "Request URL that can be used to query next page of deleted accounts. Returned when total number of requested deleted accounts exceed maximum page size.", + "readOnly": true + } + }, + "description": "The response from the List Deleted Accounts operation." + }, + "StorageAccountListKeysResult": { + "properties": { + "keys": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/StorageAccountKey" + }, + "description": "Gets the list of storage account keys and their properties for the specified storage account." + } + }, + "description": "The response from the ListKeys operation." + }, + "StorageAccountRegenerateKeyParameters": { + "properties": { + "keyName": { + "type": "string", + "description": "The name of storage keys that want to be regenerated, possible values are key1, key2, kerb1, kerb2." + } + }, + "required": [ + "keyName" + ], + "description": "The parameters used to regenerate the storage account key." + }, + "StorageAccountPropertiesUpdateParameters": { + "properties": { + "customDomain": { + "$ref": "#/definitions/CustomDomain", + "description": "Custom domain assigned to the storage account by the user. Name is the CNAME source. Only one custom domain is supported per storage account at this time. To clear the existing custom domain, use an empty string for the custom domain name property." + }, + "encryption": { + "$ref": "#/definitions/Encryption", + "description": "Provides the encryption settings on the account. The default setting is unencrypted." + }, + "sasPolicy": { + "$ref": "#/definitions/SasPolicy", + "description": "SasPolicy assigned to the storage account." + }, + "keyPolicy": { + "$ref": "#/definitions/KeyPolicy", + "description": "KeyPolicy assigned to the storage account." + }, + "accessTier": { + "type": "string", + "description": "Required for storage accounts where kind = BlobStorage. The access tier used for billing.", + "enum": [ + "Hot", + "Cool" + ], + "x-ms-enum": { + "name": "AccessTier", + "modelAsString": false + } + }, + "azureFilesIdentityBasedAuthentication": { + "$ref": "#/definitions/AzureFilesIdentityBasedAuthentication", + "description": "Provides the identity based authentication settings for Azure Files." + }, + "supportsHttpsTrafficOnly": { + "type": "boolean", + "x-ms-client-name": "EnableHttpsTrafficOnly", + "description": "Allows https traffic only to storage service if sets to true." + }, + "networkAcls": { + "description": "Network rule set", + "x-ms-client-name": "NetworkRuleSet", + "$ref": "#/definitions/NetworkRuleSet" + }, + "largeFileSharesState": { + "type": "string", + "enum": [ + "Disabled", + "Enabled" + ], + "x-ms-enum": { + "name": "LargeFileSharesState", + "modelAsString": true + }, + "description": "Allow large file shares if sets to Enabled. It cannot be disabled once it is enabled." + }, + "routingPreference": { + "$ref": "#/definitions/RoutingPreference", + "x-ms-client-name": "RoutingPreference", + "description": "Maintains information about the network routing choice opted by the user for data transfer" + }, + "allowBlobPublicAccess": { + "type": "boolean", + "x-ms-client-name": "AllowBlobPublicAccess", + "description": "Allow or disallow public access to all blobs or containers in the storage account. The default interpretation is true for this property." + }, + "minimumTlsVersion": { + "type": "string", + "enum": [ + "TLS1_0", + "TLS1_1", + "TLS1_2" + ], + "x-ms-enum": { + "name": "MinimumTlsVersion", + "modelAsString": true + }, + "description": "Set the minimum TLS version to be permitted on requests to storage. The default interpretation is TLS 1.0 for this property." + }, + "allowSharedKeyAccess": { + "type": "boolean", + "description": "Indicates whether the storage account permits requests to be authorized with the account access key via Shared Key. If false, then all requests, including shared access signatures, must be authorized with Azure Active Directory (Azure AD). The default value is null, which is equivalent to true." + } + }, + "description": "The parameters used when updating a storage account." + }, + "StorageAccountUpdateParameters": { + "properties": { + "sku": { + "$ref": "./common.json#/definitions/Sku", + "description": "Gets or sets the SKU name. Note that the SKU name cannot be updated to Standard_ZRS, Premium_LRS or Premium_ZRS, nor can accounts of those SKU names be updated to any other value." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Gets or sets a list of key value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater in length than 128 characters and a value no greater in length than 256 characters." + }, + "identity": { + "$ref": "#/definitions/Identity", + "description": "The identity of the resource." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/StorageAccountPropertiesUpdateParameters", + "description": "The parameters used when updating a storage account." + }, + "kind": { + "type": "string", + "description": "Optional. Indicates the type of storage account. Currently only StorageV2 value supported by server.", + "enum": [ + "Storage", + "StorageV2", + "BlobStorage", + "FileStorage", + "BlockBlobStorage" + ], + "x-ms-enum": { + "name": "Kind", + "modelAsString": true + } + } + }, + "description": "The parameters that can be provided when updating the storage account properties." + }, + "BlobRestoreParameters": { + "properties": { + "timeToRestore": { + "type": "string", + "format": "date-time", + "description": "Restore blob to the specified time." + }, + "blobRanges": { + "type": "array", + "items": { + "$ref": "#/definitions/BlobRestoreRange" + }, + "description": "Blob ranges to restore." + } + }, + "required": [ + "timeToRestore", + "blobRanges" + ], + "description": "Blob restore parameters" + }, + "BlobRestoreRange": { + "properties": { + "startRange": { + "type": "string", + "description": "Blob start range. This is inclusive. Empty means account start." + }, + "endRange": { + "type": "string", + "description": "Blob end range. This is exclusive. Empty means account end." + } + }, + "required": [ + "startRange", + "endRange" + ], + "description": "Blob range" + }, + "UsageName": { + "properties": { + "value": { + "readOnly": true, + "type": "string", + "description": "Gets a string describing the resource name." + }, + "localizedValue": { + "readOnly": true, + "type": "string", + "description": "Gets a localized string describing the resource name." + } + }, + "description": "The usage names that can be used; currently limited to StorageAccount." + }, + "Usage": { + "properties": { + "unit": { + "readOnly": true, + "type": "string", + "description": "Gets the unit of measurement.", + "enum": [ + "Count", + "Bytes", + "Seconds", + "Percent", + "CountsPerSecond", + "BytesPerSecond" + ], + "x-ms-enum": { + "name": "UsageUnit", + "modelAsString": false + } + }, + "currentValue": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "Gets the current count of the allocated resources in the subscription." + }, + "limit": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "Gets the maximum count of the resources that can be allocated in the subscription." + }, + "name": { + "$ref": "#/definitions/UsageName", + "readOnly": true, + "description": "Gets the name of the type of usage." + } + }, + "description": "Describes Storage Resource Usage." + }, + "UsageListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Usage" + }, + "description": "Gets or sets the list of Storage Resource Usages." + } + }, + "description": "The response from the List Usages operation." + }, + "AccountSasParameters": { + "properties": { + "signedServices": { + "type": "string", + "enum": [ + "b", + "q", + "t", + "f" + ], + "x-ms-enum": { + "name": "Services", + "modelAsString": true + }, + "x-ms-client-name": "Services", + "description": "The signed services accessible with the account SAS. Possible values include: Blob (b), Queue (q), Table (t), File (f)." + }, + "signedResourceTypes": { + "type": "string", + "enum": [ + "s", + "c", + "o" + ], + "x-ms-enum": { + "name": "SignedResourceTypes", + "modelAsString": true + }, + "x-ms-client-name": "ResourceTypes", + "description": "The signed resource types that are accessible with the account SAS. Service (s): Access to service-level APIs; Container (c): Access to container-level APIs; Object (o): Access to object-level APIs for blobs, queue messages, table entities, and files." + }, + "signedPermission": { + "type": "string", + "enum": [ + "r", + "d", + "w", + "l", + "a", + "c", + "u", + "p" + ], + "x-ms-enum": { + "name": "Permissions", + "modelAsString": true + }, + "x-ms-client-name": "Permissions", + "description": "The signed permissions for the account SAS. Possible values include: Read (r), Write (w), Delete (d), List (l), Add (a), Create (c), Update (u) and Process (p)." + }, + "signedIp": { + "type": "string", + "x-ms-client-name": "IPAddressOrRange", + "description": "An IP address or a range of IP addresses from which to accept requests." + }, + "signedProtocol": { + "type": "string", + "enum": [ + "https,http", + "https" + ], + "x-ms-enum": { + "name": "HttpProtocol", + "modelAsString": false + }, + "x-ms-client-name": "Protocols", + "description": "The protocol permitted for a request made with the account SAS." + }, + "signedStart": { + "type": "string", + "format": "date-time", + "x-ms-client-name": "SharedAccessStartTime", + "description": "The time at which the SAS becomes valid." + }, + "signedExpiry": { + "type": "string", + "format": "date-time", + "x-ms-client-name": "SharedAccessExpiryTime", + "description": "The time at which the shared access signature becomes invalid." + }, + "keyToSign": { + "type": "string", + "description": "The key to sign the account SAS token with." + } + }, + "required": [ + "signedServices", + "signedResourceTypes", + "signedPermission", + "signedExpiry" + ], + "description": "The parameters to list SAS credentials of a storage account." + }, + "ListAccountSasResponse": { + "properties": { + "accountSasToken": { + "readOnly": true, + "type": "string", + "description": "List SAS credentials of storage account." + } + }, + "description": "The List SAS credentials operation response." + }, + "ServiceSasParameters": { + "properties": { + "canonicalizedResource": { + "type": "string", + "description": "The canonical path to the signed resource." + }, + "signedResource": { + "type": "string", + "enum": [ + "b", + "c", + "f", + "s" + ], + "x-ms-enum": { + "name": "signedResource", + "modelAsString": true + }, + "x-ms-client-name": "Resource", + "description": "The signed services accessible with the service SAS. Possible values include: Blob (b), Container (c), File (f), Share (s)." + }, + "signedPermission": { + "type": "string", + "enum": [ + "r", + "d", + "w", + "l", + "a", + "c", + "u", + "p" + ], + "x-ms-enum": { + "name": "Permissions", + "modelAsString": true + }, + "x-ms-client-name": "Permissions", + "description": "The signed permissions for the service SAS. Possible values include: Read (r), Write (w), Delete (d), List (l), Add (a), Create (c), Update (u) and Process (p)." + }, + "signedIp": { + "type": "string", + "x-ms-client-name": "IPAddressOrRange", + "description": "An IP address or a range of IP addresses from which to accept requests." + }, + "signedProtocol": { + "type": "string", + "enum": [ + "https,http", + "https" + ], + "x-ms-enum": { + "name": "HttpProtocol", + "modelAsString": false + }, + "x-ms-client-name": "Protocols", + "description": "The protocol permitted for a request made with the account SAS." + }, + "signedStart": { + "type": "string", + "format": "date-time", + "x-ms-client-name": "SharedAccessStartTime", + "description": "The time at which the SAS becomes valid." + }, + "signedExpiry": { + "type": "string", + "format": "date-time", + "x-ms-client-name": "SharedAccessExpiryTime", + "description": "The time at which the shared access signature becomes invalid." + }, + "signedIdentifier": { + "type": "string", + "maxLength": 64, + "x-ms-client-name": "Identifier", + "description": "A unique value up to 64 characters in length that correlates to an access policy specified for the container, queue, or table." + }, + "startPk": { + "type": "string", + "x-ms-client-name": "PartitionKeyStart", + "description": "The start of partition key." + }, + "endPk": { + "type": "string", + "x-ms-client-name": "PartitionKeyEnd", + "description": "The end of partition key." + }, + "startRk": { + "type": "string", + "x-ms-client-name": "RowKeyStart", + "description": "The start of row key." + }, + "endRk": { + "type": "string", + "x-ms-client-name": "RowKeyEnd", + "description": "The end of row key." + }, + "keyToSign": { + "type": "string", + "description": "The key to sign the account SAS token with." + }, + "rscc": { + "type": "string", + "x-ms-client-name": "CacheControl", + "description": "The response header override for cache control." + }, + "rscd": { + "type": "string", + "x-ms-client-name": "ContentDisposition", + "description": "The response header override for content disposition." + }, + "rsce": { + "type": "string", + "x-ms-client-name": "ContentEncoding", + "description": "The response header override for content encoding." + }, + "rscl": { + "type": "string", + "x-ms-client-name": "ContentLanguage", + "description": "The response header override for content language." + }, + "rsct": { + "type": "string", + "x-ms-client-name": "ContentType", + "description": "The response header override for content type." + } + }, + "required": [ + "canonicalizedResource" + ], + "description": "The parameters to list service SAS credentials of a specific resource." + }, + "ListServiceSasResponse": { + "properties": { + "serviceSasToken": { + "readOnly": true, + "type": "string", + "description": "List service SAS credentials of specific resource." + } + }, + "description": "The List service SAS credentials operation response." + }, + "ManagementPolicy": { + "properties": { + "properties": { + "$ref": "#/definitions/ManagementPolicyProperties", + "x-ms-client-flatten": true, + "description": "Returns the Storage Account Data Policies Rules." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "description": "The Get Storage Account ManagementPolicies operation response." + }, + "ManagementPolicyProperties": { + "properties": { + "lastModifiedTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "Returns the date and time the ManagementPolicies was last modified." + }, + "policy": { + "$ref": "#/definitions/ManagementPolicySchema", + "description": "The Storage Account ManagementPolicy, in JSON format. See more details in: https://docs.microsoft.com/en-us/azure/storage/common/storage-lifecycle-managment-concepts." + } + }, + "required": [ + "policy" + ], + "description": "The Storage Account ManagementPolicy properties." + }, + "ManagementPolicySchema": { + "properties": { + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/ManagementPolicyRule" + }, + "description": "The Storage Account ManagementPolicies Rules. See more details in: https://docs.microsoft.com/en-us/azure/storage/common/storage-lifecycle-managment-concepts." + } + }, + "required": [ + "rules" + ], + "description": "The Storage Account ManagementPolicies Rules. See more details in: https://docs.microsoft.com/en-us/azure/storage/common/storage-lifecycle-managment-concepts." + }, + "ManagementPolicyRule": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Rule is enabled if set to true." + }, + "name": { + "type": "string", + "description": "A rule name can contain any combination of alpha numeric characters. Rule name is case-sensitive. It must be unique within a policy." + }, + "type": { + "type": "string", + "description": "The valid value is Lifecycle", + "enum": [ + "Lifecycle" + ], + "x-ms-enum": { + "name": "RuleType", + "modelAsString": true + } + }, + "definition": { + "$ref": "#/definitions/ManagementPolicyDefinition", + "description": "An object that defines the Lifecycle rule." + } + }, + "required": [ + "name", + "type", + "definition" + ], + "description": "An object that wraps the Lifecycle rule. Each rule is uniquely defined by name." + }, + "ManagementPolicyDefinition": { + "properties": { + "actions": { + "$ref": "#/definitions/ManagementPolicyAction", + "description": "An object that defines the action set." + }, + "filters": { + "$ref": "#/definitions/ManagementPolicyFilter", + "description": "An object that defines the filter set." + } + }, + "required": [ + "actions" + ], + "description": "An object that defines the Lifecycle rule. Each definition is made up with a filters set and an actions set." + }, + "ManagementPolicyFilter": { + "properties": { + "prefixMatch": { + "type": "array", + "items": { + "type": "string" + }, + "description": "An array of strings for prefixes to be match." + }, + "blobTypes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "An array of predefined enum values. Currently blockBlob supports all tiering and delete actions. Only delete actions are supported for appendBlob." + }, + "blobIndexMatch": { + "type": "array", + "items": { + "$ref": "#/definitions/TagFilter" + }, + "description": "An array of blob index tag based filters, there can be at most 10 tag filters" + } + }, + "required": [ + "blobTypes" + ], + "description": "Filters limit rule actions to a subset of blobs within the storage account. If multiple filters are defined, a logical AND is performed on all filters. " + }, + "TagFilter": { + "properties": { + "name": { + "type": "string", + "minLength": 1, + "maxLength": 128, + "description": "This is the filter tag name, it can have 1 - 128 characters" + }, + "op": { + "type": "string", + "description": "This is the comparison operator which is used for object comparison and filtering. Only == (equality operator) is currently supported" + }, + "value": { + "type": "string", + "minLength": 0, + "maxLength": 256, + "description": "This is the filter tag value field used for tag based filtering, it can have 0 - 256 characters" + } + }, + "required": [ + "name", + "op", + "value" + ], + "description": "Blob index tag based filtering for blob objects" + }, + "ManagementPolicyAction": { + "properties": { + "baseBlob": { + "$ref": "#/definitions/ManagementPolicyBaseBlob", + "description": "The management policy action for base blob" + }, + "snapshot": { + "$ref": "#/definitions/ManagementPolicySnapShot", + "description": "The management policy action for snapshot" + }, + "version": { + "$ref": "#/definitions/ManagementPolicyVersion", + "description": "The management policy action for version" + } + }, + "description": "Actions are applied to the filtered blobs when the execution condition is met." + }, + "ManagementPolicyBaseBlob": { + "properties": { + "tierToCool": { + "$ref": "#/definitions/DateAfterModification", + "description": "The function to tier blobs to cool storage. Support blobs currently at Hot tier" + }, + "tierToArchive": { + "$ref": "#/definitions/DateAfterModification", + "description": "The function to tier blobs to archive storage. Support blobs currently at Hot or Cool tier" + }, + "delete": { + "$ref": "#/definitions/DateAfterModification", + "description": "The function to delete the blob" + }, + "enableAutoTierToHotFromCool": { + "type": "boolean", + "description": "This property enables auto tiering of a blob from cool to hot on a blob access. This property requires tierToCool.daysAfterLastAccessTimeGreaterThan." + } + }, + "description": "Management policy action for base blob." + }, + "ManagementPolicySnapShot": { + "properties": { + "tierToCool": { + "$ref": "#/definitions/DateAfterCreation", + "description": "The function to tier blob snapshot to cool storage. Support blob snapshot currently at Hot tier" + }, + "tierToArchive": { + "$ref": "#/definitions/DateAfterCreation", + "description": "The function to tier blob snapshot to archive storage. Support blob snapshot currently at Hot or Cool tier" + }, + "delete": { + "$ref": "#/definitions/DateAfterCreation", + "description": "The function to delete the blob snapshot" + } + }, + "description": "Management policy action for snapshot." + }, + "ManagementPolicyVersion": { + "properties": { + "tierToCool": { + "$ref": "#/definitions/DateAfterCreation", + "description": "The function to tier blob version to cool storage. Support blob version currently at Hot tier" + }, + "tierToArchive": { + "$ref": "#/definitions/DateAfterCreation", + "description": "The function to tier blob version to archive storage. Support blob version currently at Hot or Cool tier" + }, + "delete": { + "$ref": "#/definitions/DateAfterCreation", + "description": "The function to delete the blob version" + } + }, + "description": "Management policy action for blob version." + }, + "DateAfterModification": { + "properties": { + "daysAfterModificationGreaterThan": { + "type": "number", + "multipleOf": 1.0, + "minimum": 0, + "description": "Value indicating the age in days after last modification" + }, + "daysAfterLastAccessTimeGreaterThan": { + "type": "number", + "multipleOf": 1.0, + "minimum": 0, + "description": "Value indicating the age in days after last blob access. This property can only be used in conjunction with last access time tracking policy" + } + }, + "description": "Object to define the number of days after object last modification Or last access. Properties daysAfterModificationGreaterThan and daysAfterLastAccessTimeGreaterThan are mutually exclusive." + }, + "DateAfterCreation": { + "properties": { + "daysAfterCreationGreaterThan": { + "type": "number", + "multipleOf": 1.0, + "minimum": 0, + "description": "Value indicating the age in days after creation" + } + }, + "required": [ + "daysAfterCreationGreaterThan" + ], + "description": "Object to define the number of days after creation." + }, + "EncryptionScope": { + "properties": { + "properties": { + "$ref": "#/definitions/EncryptionScopeProperties", + "x-ms-client-flatten": true, + "x-ms-client-name": "EncryptionScopeProperties", + "description": "Properties of the encryption scope." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "description": "The Encryption Scope resource." + }, + "EncryptionScopeProperties": { + "properties": { + "source": { + "type": "string", + "enum": [ + "Microsoft.Storage", + "Microsoft.KeyVault" + ], + "x-ms-enum": { + "name": "EncryptionScopeSource", + "modelAsString": true + }, + "description": "The provider for the encryption scope. Possible values (case-insensitive): Microsoft.Storage, Microsoft.KeyVault." + }, + "state": { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "EncryptionScopeState", + "modelAsString": true + }, + "description": "The state of the encryption scope. Possible values (case-insensitive): Enabled, Disabled." + }, + "creationTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "Gets the creation date and time of the encryption scope in UTC." + }, + "lastModifiedTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "Gets the last modification date and time of the encryption scope in UTC." + }, + "keyVaultProperties": { + "$ref": "#/definitions/EncryptionScopeKeyVaultProperties", + "description": "The key vault properties for the encryption scope. This is a required field if encryption scope 'source' attribute is set to 'Microsoft.KeyVault'." + }, + "requireInfrastructureEncryption": { + "type": "boolean", + "description": "A boolean indicating whether or not the service applies a secondary layer of encryption with platform managed keys for data at rest." + } + }, + "description": "Properties of the encryption scope." + }, + "EncryptionScopeKeyVaultProperties": { + "properties": { + "keyUri": { + "type": "string", + "description": "The object identifier for a key vault key object. When applied, the encryption scope will use the key referenced by the identifier to enable customer-managed key support on this encryption scope." + }, + "currentVersionedKeyIdentifier": { + "type": "string", + "readOnly": true, + "description": "The object identifier of the current versioned Key Vault Key in use." + }, + "lastKeyRotationTimestamp": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "Timestamp of last rotation of the Key Vault Key." + } + }, + "description": "The key vault properties for the encryption scope. This is a required field if encryption scope 'source' attribute is set to 'Microsoft.KeyVault'." + }, + "EncryptionScopeListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/EncryptionScope" + }, + "description": "List of encryption scopes requested.", + "readOnly": true + }, + "nextLink": { + "type": "string", + "description": "Request URL that can be used to query next page of encryption scopes. Returned when total number of requested encryption scopes exceeds the maximum page size.", + "readOnly": true + } + }, + "description": "List of encryption scopes requested, and if paging is required, a URL to the next page of encryption scopes." + }, + "ObjectReplicationPolicies": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ObjectReplicationPolicy" + }, + "description": "The replication policy between two storage accounts." + } + }, + "description": "List storage account object replication policies." + }, + "ObjectReplicationPolicy": { + "properties": { + "properties": { + "$ref": "#/definitions/ObjectReplicationPolicyProperties", + "x-ms-client-flatten": true, + "description": "Returns the Storage Account Object Replication Policy." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "description": "The replication policy between two storage accounts. Multiple rules can be defined in one policy." + }, + "ObjectReplicationPolicyProperties": { + "properties": { + "policyId": { + "readOnly": true, + "type": "string", + "description": "A unique id for object replication policy." + }, + "enabledTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "Indicates when the policy is enabled on the source account." + }, + "sourceAccount": { + "type": "string", + "description": "Required. Source account name." + }, + "destinationAccount": { + "type": "string", + "description": "Required. Destination account name." + }, + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/ObjectReplicationPolicyRule" + }, + "description": "The storage account object replication rules." + } + }, + "required": [ + "sourceAccount", + "destinationAccount" + ], + "description": "The Storage Account ObjectReplicationPolicy properties." + }, + "ObjectReplicationPolicyRule": { + "properties": { + "ruleId": { + "type": "string", + "description": "Rule Id is auto-generated for each new rule on destination account. It is required for put policy on source account." + }, + "sourceContainer": { + "type": "string", + "description": "Required. Source container name." + }, + "destinationContainer": { + "type": "string", + "description": "Required. Destination container name." + }, + "filters": { + "$ref": "#/definitions/ObjectReplicationPolicyFilter", + "description": "Optional. An object that defines the filter set." + } + }, + "required": [ + "sourceContainer", + "destinationContainer" + ], + "description": "The replication policy rule between two containers." + }, + "ObjectReplicationPolicyFilter": { + "properties": { + "prefixMatch": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Optional. Filters the results to replicate only blobs whose names begin with the specified prefix." + }, + "minCreationTime": { + "type": "string", + "description": "Blobs created after the time will be replicated to the destination. It must be in datetime format 'yyyy-MM-ddTHH:mm:ssZ'. Example: 2020-02-19T16:05:00Z" + } + }, + "description": "Filters limit replication to a subset of blobs within the storage account. A logical OR is performed on values in the filter. If multiple filters are defined, a logical AND is performed on all filters." + }, + "ListBlobInventoryPolicy": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BlobInventoryPolicy" + }, + "description": "List of blob inventory policies.", + "readOnly": true + } + }, + "description": "List of blob inventory policies returned." + }, + "BlobInventoryPolicy": { + "properties": { + "properties": { + "$ref": "#/definitions/BlobInventoryPolicyProperties", + "x-ms-client-flatten": true, + "description": "Returns the storage account blob inventory policy rules." + }, + "systemData": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData" + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "description": "The storage account blob inventory policy." + }, + "BlobInventoryPolicyProperties": { + "properties": { + "lastModifiedTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "Returns the last modified date and time of the blob inventory policy." + }, + "policy": { + "$ref": "#/definitions/BlobInventoryPolicySchema", + "description": "The storage account blob inventory policy object. It is composed of policy rules." + } + }, + "required": [ + "policy" + ], + "description": "The storage account blob inventory policy properties." + }, + "BlobInventoryPolicySchema": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Policy is enabled if set to true." + }, + "destination": { + "type": "string", + "description": "Container name where blob inventory files are stored. Must be pre-created." + }, + "type": { + "type": "string", + "description": "The valid value is Inventory", + "enum": [ + "Inventory" + ], + "x-ms-enum": { + "name": "InventoryRuleType", + "modelAsString": true + } + }, + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/BlobInventoryPolicyRule" + }, + "description": "The storage account blob inventory policy rules. The rule is applied when it is enabled." + } + }, + "required": [ + "enabled", + "destination", + "type", + "rules" + ], + "description": "The storage account blob inventory policy rules." + }, + "BlobInventoryPolicyRule": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Rule is enabled when set to true." + }, + "name": { + "type": "string", + "description": "A rule name can contain any combination of alpha numeric characters. Rule name is case-sensitive. It must be unique within a policy." + }, + "definition": { + "$ref": "#/definitions/BlobInventoryPolicyDefinition", + "description": "An object that defines the blob inventory policy rule." + } + }, + "required": [ + "name", + "enabled", + "definition" + ], + "description": "An object that wraps the blob inventory rule. Each rule is uniquely defined by name." + }, + "BlobInventoryPolicyDefinition": { + "properties": { + "filters": { + "$ref": "#/definitions/BlobInventoryPolicyFilter", + "description": "An object that defines the filter set." + } + }, + "required": [ + "filters" + ], + "description": "An object that defines the blob inventory rule. Each definition consists of a set of filters." + }, + "BlobInventoryPolicyFilter": { + "properties": { + "prefixMatch": { + "type": "array", + "items": { + "type": "string" + }, + "description": "An array of strings for blob prefixes to be matched." + }, + "blobTypes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "An array of predefined enum values. Valid values include blockBlob, appendBlob, pageBlob. Hns accounts does not support pageBlobs." + }, + "includeBlobVersions": { + "type": "boolean", + "description": "Includes blob versions in blob inventory when value set to true." + }, + "includeSnapshots": { + "type": "boolean", + "description": "Includes blob snapshots in blob inventory when value set to true." + } + }, + "required": [ + "blobTypes" + ], + "description": "An object that defines the blob inventory rule filter conditions." + }, + "ErrorResponseBody": { + "properties": { + "code": { + "type": "string", + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "type": "string", + "description": "A message describing the error, intended to be suitable for display in a user interface." + } + }, + "description": "Error response body contract." + }, + "ErrorResponse": { + "properties": { + "error": { + "$ref": "#/definitions/ErrorResponseBody", + "description": "Azure Storage Resource Provider error response body." + } + }, + "description": "An error response from the storage resource provider." + } + }, + "parameters": { + "ResourceGroupName": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group within the user's subscription. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90, + "x-ms-parameter-location": "method" + }, + "StorageAccountName": { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the storage account within the specified resource group. Storage account names must be between 3 and 24 characters in length and use numbers and lower-case letters only.", + "maxLength": 24, + "minLength": 3, + "x-ms-parameter-location": "method" + }, + "DeletedAccountName": { + "name": "deletedAccountName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the deleted storage account.", + "maxLength": 24, + "minLength": 3, + "x-ms-parameter-location": "method" + }, + "ManagementPolicyName": { + "name": "managementPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Storage Account Management Policy. It should always be 'default'", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "ManagementPolicyName", + "modelAsString": true + }, + "x-ms-parameter-location": "method" + }, + "EncryptionScopeName": { + "name": "encryptionScopeName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the encryption scope within the specified storage account. Encryption scope names must be between 3 and 63 characters in length and use numbers, lower-case letters and dash (-) only. Every dash (-) character must be immediately preceded and followed by a letter or number.", + "maxLength": 63, + "minLength": 3, + "x-ms-parameter-location": "method" + }, + "ObjectReplicationPolicyId": { + "name": "objectReplicationPolicyId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of object replication policy or 'default' if the policy ID is unknown.", + "minLength": 1, + "x-ms-parameter-location": "method" + }, + "BlobInventoryPolicyName": { + "name": "blobInventoryPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the storage account blob inventory policy. It should always be 'default'", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "BlobInventoryPolicyName", + "modelAsString": true + }, + "x-ms-parameter-location": "method" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/table.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/table.json new file mode 100644 index 000000000000..494aa7677725 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-02-01/table.json @@ -0,0 +1,495 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-02-01", + "title": "StorageManagementClient", + "description": "The Azure Storage Management API." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/tableServices": { + "get": { + "tags": [ + "TableServiceProperties" + ], + "operationId": "TableServices_List", + "x-ms-examples": { + "TableServicesList": { + "$ref": "./examples/TableServicesList.json" + } + }, + "description": "List all table services for the storage account.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- returned the properties of a storage account’s Table service.", + "schema": { + "$ref": "#/definitions/ListTableServices" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./file.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/tableServices/{tableServiceName}": { + "put": { + "tags": [ + "TableServiceProperties" + ], + "operationId": "TableServices_SetServiceProperties", + "x-ms-examples": { + "TableServicesPut": { + "$ref": "./examples/TableServicesPut.json" + } + }, + "description": "Sets the properties of a storage account’s Table service, including properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) rules. ", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/TableServiceName" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TableServiceProperties" + }, + "description": "The properties of a storage account’s Table service, only properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) rules can be specified." + } + ], + "responses": { + "200": { + "description": "OK -- Sets The properties of a storage account’s Table service successfully.", + "schema": { + "$ref": "#/definitions/TableServiceProperties" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./file.json#/definitions/CloudError" + } + } + } + }, + "get": { + "tags": [ + "TableServiceProperties" + ], + "operationId": "TableServices_GetServiceProperties", + "x-ms-examples": { + "TableServicesGet": { + "$ref": "./examples/TableServicesGet.json" + } + }, + "description": "Gets the properties of a storage account’s Table service, including properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) rules.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/TableServiceName" + } + ], + "responses": { + "200": { + "description": "OK -- returned the properties of a storage account’s Table service.", + "schema": { + "$ref": "#/definitions/TableServiceProperties" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./file.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/tableServices/default/tables/{tableName}": { + "put": { + "tags": [ + "TableService" + ], + "operationId": "Table_Create", + "x-ms-examples": { + "TableOperationPut": { + "$ref": "./examples/TableOperationPut.json" + } + }, + "description": "Creates a new table with the specified table name, under the specified account.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/TableName" + } + ], + "responses": { + "200": { + "description": "OK -- Creates a table with the given table name successfully.", + "schema": { + "$ref": "#/definitions/Table" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./file.json#/definitions/CloudError" + } + } + } + }, + "patch": { + "tags": [ + "TableService" + ], + "operationId": "Table_Update", + "x-ms-examples": { + "TableOperationPatch": { + "$ref": "./examples/TableOperationPatch.json" + } + }, + "description": "Creates a new table with the specified table name, under the specified account.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/TableName" + } + ], + "responses": { + "200": { + "description": "OK -- Creates a table with the given table name successfully.", + "schema": { + "$ref": "#/definitions/Table" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./file.json#/definitions/CloudError" + } + } + } + }, + "get": { + "tags": [ + "TableService" + ], + "operationId": "Table_Get", + "x-ms-examples": { + "TableOperationGet": { + "$ref": "./examples/TableOperationGet.json" + } + }, + "description": "Gets the table with the specified table name, under the specified account if it exists.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/TableName" + } + ], + "responses": { + "200": { + "description": "OK -- returned table with the specified table name successfully.", + "schema": { + "$ref": "#/definitions/Table" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./file.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "TableService" + ], + "operationId": "Table_Delete", + "x-ms-examples": { + "TableOperationDelete": { + "$ref": "./examples/TableOperationDelete.json" + } + }, + "description": "Deletes the table with the specified table name, under the specified account if it exists.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/TableName" + } + ], + "responses": { + "204": { + "description": "No Content - Successfully deleted the table with the specified table name" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./file.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/tableServices/default/tables": { + "get": { + "tags": [ + "TableService" + ], + "operationId": "Table_List", + "x-ms-examples": { + "TableOperationList": { + "$ref": "./examples/TableOperationList.json" + } + }, + "description": "Gets a list of all the tables under the specified storage account", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- returned a list of tables successfully.", + "schema": { + "$ref": "#/definitions/ListTableResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./file.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "ListTableServices": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/TableServiceProperties" + }, + "description": "List of table services returned.", + "readOnly": true + } + } + }, + "TableServiceProperties": { + "properties": { + "properties": { + "properties": { + "cors": { + "$ref": "./common.json#/definitions/CorsRules", + "description": "Specifies CORS rules for the Table service. You can include up to five CorsRule elements in the request. If no CorsRule elements are included in the request body, all CORS rules will be deleted, and CORS will be disabled for the Table service." + } + }, + "x-ms-client-flatten": true, + "x-ms-client-name": "TableServiceProperties", + "description": "The properties of a storage account’s Table service." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "description": "The properties of a storage account’s Table service." + }, + "Table": { + "properties": { + "properties": { + "$ref": "#/definitions/TableProperties", + "x-ms-client-flatten": true, + "x-ms-client-name": "TableProperties", + "description": "Table resource properties." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "description": "Properties of the table, including Id, resource name, resource type." + }, + "TableProperties": { + "properties": { + "tableName": { + "type": "string", + "readOnly": true, + "description": "Table name under the specified account" + } + } + }, + "ListTableResource": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Table" + }, + "description": "List of tables returned.", + "readOnly": true + }, + "nextLink": { + "type": "string", + "description": "Request URL that can be used to query next page of tables", + "readOnly": true + } + }, + "description": "Response schema. Contains list of tables returned" + } + }, + "parameters": { + "TableServiceName": { + "name": "tableServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Table Service within the specified storage account. Table Service Name must be 'default'", + "enum": [ + "default" + ], + "x-ms-parameter-location": "method" + }, + "TableName": { + "name": "tableName", + "in": "path", + "required": true, + "type": "string", + "description": "A table name must be unique within a storage account and must be between 3 and 63 characters.The name must comprise of only alphanumeric characters and it cannot begin with a numeric character.", + "maxLength": 63, + "minLength": 3, + "pattern": "^[A-Za-z][A-Za-z0-9]{2,62}$", + "x-ms-parameter-location": "method" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/blob.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/blob.json new file mode 100644 index 000000000000..6b4e8f6b11e9 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/blob.json @@ -0,0 +1,1545 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-04-01", + "title": "StorageManagementClient", + "description": "The Azure Storage Management API." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices": { + "get": { + "tags": [ + "BlobService" + ], + "operationId": "BlobServices_List", + "x-ms-examples": { + "ListBlobServices": { + "$ref": "./examples/BlobServicesList.json" + } + }, + "description": "List blob services of storage account. It returns a collection of one object named default.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- List blob services operation completed successfully.", + "schema": { + "$ref": "#/definitions/BlobServiceItems" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/{BlobServicesName}": { + "put": { + "tags": [ + "BlobService" + ], + "operationId": "BlobServices_SetServiceProperties", + "x-ms-examples": { + "PutBlobServices": { + "$ref": "./examples/BlobServicesPut.json" + }, + "BlobServicesPutLastAccessTimeBasedTracking": { + "$ref": "./examples/BlobServicesPutLastAccessTimeBasedTracking.json" + } + }, + "description": "Sets the properties of a storage account’s Blob service, including properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) rules. ", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/BlobServicesName" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/BlobServiceProperties" + }, + "description": "The properties of a storage account’s Blob service, including properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) rules." + } + ], + "responses": { + "200": { + "description": "OK -- Sets The properties of a storage account’s Blob service successfully.", + "schema": { + "$ref": "#/definitions/BlobServiceProperties" + } + } + } + }, + "get": { + "tags": [ + "BlobService" + ], + "operationId": "BlobServices_GetServiceProperties", + "x-ms-examples": { + "GetBlobServices": { + "$ref": "./examples/BlobServicesGet.json" + } + }, + "description": "Gets the properties of a storage account’s Blob service, including properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) rules.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/BlobServicesName" + } + ], + "responses": { + "200": { + "description": "OK -- returned the properties of a storage account’s Blob service.", + "schema": { + "$ref": "#/definitions/BlobServiceProperties" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers": { + "get": { + "tags": [ + "BlobContainers" + ], + "operationId": "BlobContainers_List", + "x-ms-examples": { + "ListContainers": { + "$ref": "./examples/BlobContainersList.json" + }, + "ListDeletedContainers": { + "$ref": "./examples/DeletedBlobContainersList.json" + } + }, + "description": "Lists all containers and does not support a prefix like data plane. Also SRP today does not return continuation token.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$maxpagesize", + "in": "query", + "type": "string", + "description": "Optional. Specified maximum number of containers that can be included in the list." + }, + { + "name": "$filter", + "in": "query", + "type": "string", + "description": "Optional. When specified, only container names starting with the filter will be listed." + }, + { + "name": "$include", + "in": "query", + "required": false, + "type": "string", + "enum": [ + "deleted" + ], + "x-ms-enum": { + "name": "ListContainersInclude", + "modelAsString": true + }, + "description": "Optional, used to include the properties for soft deleted blob containers." + } + ], + "responses": { + "200": { + "description": "OK -- List Container operation completed successfully.", + "schema": { + "$ref": "#/definitions/ListContainerItems" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}": { + "put": { + "tags": [ + "BlobContainers" + ], + "operationId": "BlobContainers_Create", + "x-ms-examples": { + "PutContainers": { + "$ref": "./examples/BlobContainersPut.json" + }, + "PutContainerWithDefaultEncryptionScope": { + "$ref": "./examples/BlobContainersPutDefaultEncryptionScope.json" + }, + "PutContainerWithObjectLevelWorm": { + "$ref": "./examples/BlobContainersPutObjectLevelWorm.json" + } + }, + "description": "Creates a new container under the specified account as described by request body. The container resource includes metadata and properties for that container. It does not include a list of the blobs contained by the container. ", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "#/parameters/ContainerName" + }, + { + "name": "blobContainer", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/BlobContainer" + }, + "description": "Properties of the blob container to create." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Created -- Create Container operation completed successfully.", + "schema": { + "$ref": "#/definitions/BlobContainer" + } + }, + "200": { + "description": "OK -- The Container is already created.", + "schema": { + "$ref": "#/definitions/BlobContainer" + } + } + } + }, + "patch": { + "tags": [ + "BlobContainers" + ], + "operationId": "BlobContainers_Update", + "x-ms-examples": { + "UpdateContainers": { + "$ref": "./examples/BlobContainersPatch.json" + } + }, + "description": "Updates container properties as specified in request body. Properties not mentioned in the request will be unchanged. Update fails if the specified container doesn't already exist. ", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "#/parameters/ContainerName" + }, + { + "name": "blobContainer", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/BlobContainer" + }, + "description": "Properties to update for the blob container." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Update Container operation completed successfully.", + "schema": { + "$ref": "#/definitions/BlobContainer", + "description": "Properties of the updated blob container." + } + } + } + }, + "get": { + "tags": [ + "BlobContainers" + ], + "operationId": "BlobContainers_Get", + "x-ms-examples": { + "GetContainers": { + "$ref": "./examples/BlobContainersGet.json" + } + }, + "description": "Gets properties of a specified container. ", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "#/parameters/ContainerName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Get Container operation completed successfully.", + "schema": { + "$ref": "#/definitions/BlobContainer" + } + } + } + }, + "delete": { + "tags": [ + "BlobContainers" + ], + "operationId": "BlobContainers_Delete", + "x-ms-examples": { + "DeleteContainers": { + "$ref": "./examples/BlobContainersDelete.json" + } + }, + "description": "Deletes specified container under its account.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "#/parameters/ContainerName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Delete Container operation completed successfully." + }, + "204": { + "description": "No Content -- The Container not exist." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/setLegalHold": { + "post": { + "tags": [ + "BlobContainers" + ], + "operationId": "BlobContainers_SetLegalHold", + "x-ms-examples": { + "SetLegalHoldContainers": { + "$ref": "./examples/BlobContainersSetLegalHold.json" + } + }, + "description": "Sets legal hold tags. Setting the same tag results in an idempotent operation. SetLegalHold follows an append pattern and does not clear out the existing tags that are not specified in the request.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "#/parameters/ContainerName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "LegalHold", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/LegalHold" + }, + "description": "The LegalHold property that will be set to a blob container." + } + ], + "responses": { + "200": { + "description": "OK -- Set legal hold tags for Container completed successfully.", + "schema": { + "$ref": "#/definitions/LegalHold" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/clearLegalHold": { + "post": { + "tags": [ + "BlobContainers" + ], + "operationId": "BlobContainers_ClearLegalHold", + "x-ms-examples": { + "ClearLegalHoldContainers": { + "$ref": "./examples/BlobContainersClearLegalHold.json" + } + }, + "description": "Clears legal hold tags. Clearing the same or non-existent tag results in an idempotent operation. ClearLegalHold clears out only the specified tags in the request.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "#/parameters/ContainerName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "LegalHold", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/LegalHold" + }, + "description": "The LegalHold property that will be clear from a blob container." + } + ], + "responses": { + "200": { + "description": "OK -- Clear legal hold tags for Container completed successfully.", + "schema": { + "$ref": "#/definitions/LegalHold" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/immutabilityPolicies/{immutabilityPolicyName}": { + "put": { + "tags": [ + "BlobContainers" + ], + "operationId": "BlobContainers_CreateOrUpdateImmutabilityPolicy", + "x-ms-examples": { + "CreateOrUpdateImmutabilityPolicy": { + "$ref": "./examples/BlobContainersPutImmutabilityPolicy.json" + } + }, + "description": "Creates or updates an unlocked immutability policy. ETag in If-Match is honored if given but not required for this operation.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "#/parameters/ContainerName" + }, + { + "$ref": "#/parameters/ImmutabilityPolicyName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "parameters", + "in": "body", + "schema": { + "$ref": "#/definitions/ImmutabilityPolicy" + }, + "description": "The ImmutabilityPolicy Properties that will be created or updated to a blob container." + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "The entity state (ETag) version of the immutability policy to update. A value of \"*\" can be used to apply the operation only if the immutability policy already exists. If omitted, this operation will always be applied." + } + ], + "responses": { + "200": { + "description": "OK -- Creates or updates container ImmutabilityPolicy operation completed successfully.", + "schema": { + "$ref": "#/definitions/ImmutabilityPolicy" + }, + "headers": { + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Match or If-None-Match headers.", + "type": "string" + } + } + } + } + }, + "get": { + "tags": [ + "BlobContainers" + ], + "operationId": "BlobContainers_GetImmutabilityPolicy", + "x-ms-examples": { + "GetImmutabilityPolicy": { + "$ref": "./examples/BlobContainersGetImmutabilityPolicy.json" + } + }, + "description": "Gets the existing immutability policy along with the corresponding ETag in response headers and body.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "#/parameters/ContainerName" + }, + { + "$ref": "#/parameters/ImmutabilityPolicyName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "The entity state (ETag) version of the immutability policy to update. A value of \"*\" can be used to apply the operation only if the immutability policy already exists. If omitted, this operation will always be applied." + } + ], + "responses": { + "200": { + "description": "OK -- Gets container ImmutabilityPolicy operation completed successfully.", + "schema": { + "$ref": "#/definitions/ImmutabilityPolicy" + }, + "headers": { + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Match or If-None-Match headers.", + "type": "string" + } + } + } + } + }, + "delete": { + "tags": [ + "BlobContainers" + ], + "operationId": "BlobContainers_DeleteImmutabilityPolicy", + "x-ms-examples": { + "DeleteImmutabilityPolicy": { + "$ref": "./examples/BlobContainersDeleteImmutabilityPolicy.json" + } + }, + "description": "Aborts an unlocked immutability policy. The response of delete has immutabilityPeriodSinceCreationInDays set to 0. ETag in If-Match is required for this operation. Deleting a locked immutability policy is not allowed, the only way is to delete the container after deleting all expired blobs inside the policy locked container.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "#/parameters/ContainerName" + }, + { + "$ref": "#/parameters/ImmutabilityPolicyName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "If-Match", + "in": "header", + "required": true, + "type": "string", + "description": "The entity state (ETag) version of the immutability policy to update. A value of \"*\" can be used to apply the operation only if the immutability policy already exists. If omitted, this operation will always be applied." + } + ], + "responses": { + "200": { + "description": "OK -- Deletes container ImmutabilityPolicy operation completed successfully.", + "schema": { + "$ref": "#/definitions/ImmutabilityPolicy" + }, + "headers": { + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Match or If-None-Match headers.", + "type": "string" + } + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/immutabilityPolicies/default/lock": { + "post": { + "tags": [ + "BlobContainers" + ], + "operationId": "BlobContainers_LockImmutabilityPolicy", + "x-ms-examples": { + "LockImmutabilityPolicy": { + "$ref": "./examples/BlobContainersLockImmutabilityPolicy.json" + } + }, + "description": "Sets the ImmutabilityPolicy to Locked state. The only action allowed on a Locked policy is ExtendImmutabilityPolicy action. ETag in If-Match is required for this operation.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "#/parameters/ContainerName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "If-Match", + "in": "header", + "required": true, + "type": "string", + "description": "The entity state (ETag) version of the immutability policy to update. A value of \"*\" can be used to apply the operation only if the immutability policy already exists. If omitted, this operation will always be applied." + } + ], + "responses": { + "200": { + "description": "OK -- Locks container ImmutabilityPolicy operation completed successfully.", + "schema": { + "$ref": "#/definitions/ImmutabilityPolicy" + }, + "headers": { + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Match or If-None-Match headers.", + "type": "string" + } + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/immutabilityPolicies/default/extend": { + "post": { + "tags": [ + "BlobContainers" + ], + "operationId": "BlobContainers_ExtendImmutabilityPolicy", + "x-ms-examples": { + "ExtendImmutabilityPolicy": { + "$ref": "./examples/BlobContainersExtendImmutabilityPolicy.json" + } + }, + "description": "Extends the immutabilityPeriodSinceCreationInDays of a locked immutabilityPolicy. The only action allowed on a Locked policy will be this action. ETag in If-Match is required for this operation.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "#/parameters/ContainerName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "parameters", + "in": "body", + "schema": { + "$ref": "#/definitions/ImmutabilityPolicy" + }, + "description": "The ImmutabilityPolicy Properties that will be extended for a blob container." + }, + { + "name": "If-Match", + "in": "header", + "required": true, + "type": "string", + "description": "The entity state (ETag) version of the immutability policy to update. A value of \"*\" can be used to apply the operation only if the immutability policy already exists. If omitted, this operation will always be applied." + } + ], + "responses": { + "200": { + "description": "OK -- Extends container ImmutabilityPolicy operation completed successfully..", + "schema": { + "$ref": "#/definitions/ImmutabilityPolicy" + }, + "headers": { + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Match or If-None-Match headers.", + "type": "string" + } + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/lease": { + "post": { + "tags": [ + "BlobContainers" + ], + "operationId": "BlobContainers_Lease", + "x-ms-examples": { + "Acquire a lease on a container": { + "$ref": "./examples/BlobContainersLease_Acquire.json" + }, + "Break a lease on a container": { + "$ref": "./examples/BlobContainersLease_Break.json" + } + }, + "description": "The Lease Container operation establishes and manages a lock on a container for delete operations. The lock duration can be 15 to 60 seconds, or can be infinite.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "#/parameters/ContainerName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "parameters", + "in": "body", + "schema": { + "$ref": "#/definitions/LeaseContainerRequest" + }, + "description": "Lease Container request body." + } + ], + "responses": { + "200": { + "description": "OK -- Lease Container operation completed successfully.", + "schema": { + "$ref": "#/definitions/LeaseContainerResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/migrate": { + "post": { + "tags": [ + "BlobContainers" + ], + "operationId": "BlobContainers_ObjectLevelWorm", + "x-ms-examples": { + "VersionLevelWormContainerMigration": { + "$ref": "./examples/ObjectLevelWormContainerMigration.json" + } + }, + "description": "This operation migrates a blob container from container level WORM to object level immutability enabled container. Prerequisites require a container level immutability policy either in locked or unlocked state, Account level versioning must be enabled and there should be no Legal hold on the container.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "#/parameters/ContainerName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- returned when the blob container migration to support object level immutability completes." + }, + "202": { + "description": "Accepted -- Blob Container migration to support object level immutability is accepted; operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + } + }, + "definitions": { + "ContainerProperties": { + "properties": { + "version": { + "type": "string", + "readOnly": true, + "description": "The version of the deleted blob container." + }, + "deleted": { + "type": "boolean", + "readOnly": true, + "description": "Indicates whether the blob container was deleted." + }, + "deletedTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "Blob container deletion time." + }, + "remainingRetentionDays": { + "type": "integer", + "readOnly": true, + "description": "Remaining retention days for soft deleted blob container." + }, + "defaultEncryptionScope": { + "type": "string", + "description": "Default the container to use specified encryption scope for all writes." + }, + "denyEncryptionScopeOverride": { + "type": "boolean", + "description": "Block override of encryption scope from the container default." + }, + "publicAccess": { + "type": "string", + "enum": [ + "Container", + "Blob", + "None" + ], + "x-ms-enum": { + "name": "PublicAccess", + "modelAsString": false + }, + "description": "Specifies whether data in the container may be accessed publicly and the level of access." + }, + "lastModifiedTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "Returns the date and time the container was last modified." + }, + "leaseStatus": { + "type": "string", + "readOnly": true, + "enum": [ + "Locked", + "Unlocked" + ], + "x-ms-enum": { + "name": "LeaseStatus", + "modelAsString": true + }, + "description": "The lease status of the container." + }, + "leaseState": { + "type": "string", + "readOnly": true, + "enum": [ + "Available", + "Leased", + "Expired", + "Breaking", + "Broken" + ], + "x-ms-enum": { + "name": "LeaseState", + "modelAsString": true + }, + "description": "Lease state of the container." + }, + "leaseDuration": { + "type": "string", + "readOnly": true, + "enum": [ + "Infinite", + "Fixed" + ], + "x-ms-enum": { + "name": "LeaseDuration", + "modelAsString": true + }, + "description": "Specifies whether the lease on a container is of infinite or fixed duration, only when the container is leased." + }, + "metadata": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "A name-value pair to associate with the container as metadata." + }, + "immutabilityPolicy": { + "readOnly": true, + "$ref": "#/definitions/ImmutabilityPolicyProperties", + "x-ms-client-name": "ImmutabilityPolicy", + "description": "The ImmutabilityPolicy property of the container." + }, + "legalHold": { + "readOnly": true, + "$ref": "#/definitions/LegalHoldProperties", + "description": "The LegalHold property of the container." + }, + "hasLegalHold": { + "type": "boolean", + "readOnly": true, + "description": "The hasLegalHold public property is set to true by SRP if there are at least one existing tag. The hasLegalHold public property is set to false by SRP if all existing legal hold tags are cleared out. There can be a maximum of 1000 blob containers with hasLegalHold=true for a given account." + }, + "hasImmutabilityPolicy": { + "type": "boolean", + "readOnly": true, + "description": "The hasImmutabilityPolicy public property is set to true by SRP if ImmutabilityPolicy has been created for this container. The hasImmutabilityPolicy public property is set to false by SRP if ImmutabilityPolicy has not been created for this container." + }, + "immutableStorageWithVersioning": { + "$ref": "#/definitions/ImmutableStorageWithVersioning", + "description": "The object level immutability property of the container. The property is immutable and can only be set to true at the container creation time. Existing containers must undergo a migration process." + } + }, + "description": "The properties of a container." + }, + "BlobContainer": { + "properties": { + "properties": { + "$ref": "#/definitions/ContainerProperties", + "x-ms-client-flatten": true, + "x-ms-client-name": "ContainerProperties", + "description": "Properties of the blob container." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/AzureEntityResource" + } + ], + "description": "Properties of the blob container, including Id, resource name, resource type, Etag." + }, + "ImmutabilityPolicyProperty": { + "properties": { + "immutabilityPeriodSinceCreationInDays": { + "type": "integer", + "description": "The immutability period for the blobs in the container since the policy creation, in days." + }, + "state": { + "type": "string", + "readOnly": true, + "enum": [ + "Locked", + "Unlocked" + ], + "x-ms-enum": { + "name": "ImmutabilityPolicyState", + "modelAsString": true + }, + "description": "The ImmutabilityPolicy state of a blob container, possible values include: Locked and Unlocked." + }, + "allowProtectedAppendWrites": { + "type": "boolean", + "description": "This property can only be changed for unlocked time-based retention policies. When enabled, new blocks can be written to an append blob while maintaining immutability protection and compliance. Only new blocks can be added and any existing blocks cannot be modified or deleted. This property cannot be changed with ExtendImmutabilityPolicy API" + } + }, + "description": "The properties of an ImmutabilityPolicy of a blob container." + }, + "ImmutabilityPolicyProperties": { + "properties": { + "properties": { + "$ref": "#/definitions/ImmutabilityPolicyProperty", + "x-ms-client-flatten": true, + "description": "The properties of an ImmutabilityPolicy of a blob container." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "ImmutabilityPolicy Etag." + }, + "updateHistory": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/UpdateHistoryProperty" + }, + "description": "The ImmutabilityPolicy update history of the blob container." + } + }, + "description": "The properties of an ImmutabilityPolicy of a blob container." + }, + "ImmutabilityPolicy": { + "properties": { + "properties": { + "$ref": "#/definitions/ImmutabilityPolicyProperty", + "x-ms-client-flatten": true, + "description": "The properties of an ImmutabilityPolicy of a blob container." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/AzureEntityResource" + } + ], + "required": [ + "properties" + ], + "description": "The ImmutabilityPolicy property of a blob container, including Id, resource name, resource type, Etag." + }, + "ImmutableStorageWithVersioning": { + "properties": { + "enabled": { + "type": "boolean", + "description": "This is an immutable property, when set to true it enables object level immutability at the container level." + }, + "timeStamp": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "Returns the date and time the object level immutability was enabled." + }, + "migrationState": { + "type": "string", + "readOnly": true, + "enum": [ + "InProgress", + "Completed" + ], + "x-ms-enum": { + "name": "MigrationState", + "modelAsString": true + }, + "description": "This property denotes the container level immutability to object level immutability migration state." + } + }, + "description": "Object level immutability properties of the container." + }, + "UpdateHistoryProperty": { + "properties": { + "update": { + "type": "string", + "readOnly": true, + "enum": [ + "put", + "lock", + "extend" + ], + "x-ms-enum": { + "name": "ImmutabilityPolicyUpdateType", + "modelAsString": true + }, + "description": "The ImmutabilityPolicy update type of a blob container, possible values include: put, lock and extend." + }, + "immutabilityPeriodSinceCreationInDays": { + "type": "integer", + "readOnly": true, + "description": "The immutability period for the blobs in the container since the policy creation, in days." + }, + "timestamp": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "Returns the date and time the ImmutabilityPolicy was updated." + }, + "objectIdentifier": { + "type": "string", + "readOnly": true, + "description": "Returns the Object ID of the user who updated the ImmutabilityPolicy." + }, + "tenantId": { + "type": "string", + "readOnly": true, + "description": "Returns the Tenant ID that issued the token for the user who updated the ImmutabilityPolicy." + }, + "upn": { + "type": "string", + "readOnly": true, + "description": "Returns the User Principal Name of the user who updated the ImmutabilityPolicy." + } + }, + "description": "An update history of the ImmutabilityPolicy of a blob container." + }, + "LegalHoldProperties": { + "properties": { + "hasLegalHold": { + "type": "boolean", + "readOnly": true, + "description": "The hasLegalHold public property is set to true by SRP if there are at least one existing tag. The hasLegalHold public property is set to false by SRP if all existing legal hold tags are cleared out. There can be a maximum of 1000 blob containers with hasLegalHold=true for a given account." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/definitions/TagProperty" + }, + "description": "The list of LegalHold tags of a blob container." + } + }, + "description": "The LegalHold property of a blob container." + }, + "TagProperty": { + "properties": { + "tag": { + "type": "string", + "readOnly": true, + "description": "The tag value." + }, + "timestamp": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "Returns the date and time the tag was added." + }, + "objectIdentifier": { + "type": "string", + "readOnly": true, + "description": "Returns the Object ID of the user who added the tag." + }, + "tenantId": { + "type": "string", + "readOnly": true, + "description": "Returns the Tenant ID that issued the token for the user who added the tag." + }, + "upn": { + "type": "string", + "readOnly": true, + "description": "Returns the User Principal Name of the user who added the tag." + } + }, + "description": "A tag of the LegalHold of a blob container." + }, + "LegalHold": { + "properties": { + "hasLegalHold": { + "type": "boolean", + "readOnly": true, + "description": "The hasLegalHold public property is set to true by SRP if there are at least one existing tag. The hasLegalHold public property is set to false by SRP if all existing legal hold tags are cleared out. There can be a maximum of 1000 blob containers with hasLegalHold=true for a given account." + }, + "tags": { + "type": "array", + "items": { + "type": "string", + "maxLength": 23, + "minLength": 3 + }, + "description": "Each tag should be 3 to 23 alphanumeric characters and is normalized to lower case at SRP." + } + }, + "required": [ + "tags" + ], + "description": "The LegalHold property of a blob container." + }, + "ListContainerItem": { + "properties": { + "properties": { + "$ref": "#/definitions/ContainerProperties", + "x-ms-client-flatten": true, + "description": "The blob container properties be listed out." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/AzureEntityResource" + } + ], + "description": "The blob container properties be listed out." + }, + "ListContainerItems": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ListContainerItem" + }, + "description": "List of blobs containers returned.", + "readOnly": true + }, + "nextLink": { + "type": "string", + "description": "Request URL that can be used to query next page of containers. Returned when total number of requested containers exceed maximum page size.", + "readOnly": true + } + }, + "description": "Response schema. Contains list of blobs returned, and if paging is requested or required, a URL to next page of containers." + }, + "BlobServiceProperties": { + "properties": { + "properties": { + "properties": { + "cors": { + "$ref": "./common.json#/definitions/CorsRules", + "description": "Specifies CORS rules for the Blob service. You can include up to five CorsRule elements in the request. If no CorsRule elements are included in the request body, all CORS rules will be deleted, and CORS will be disabled for the Blob service." + }, + "defaultServiceVersion": { + "type": "string", + "description": "DefaultServiceVersion indicates the default version to use for requests to the Blob service if an incoming request’s version is not specified. Possible values include version 2008-10-27 and all more recent versions." + }, + "deleteRetentionPolicy": { + "$ref": "./common.json#/definitions/DeleteRetentionPolicy", + "description": "The blob service properties for blob soft delete." + }, + "isVersioningEnabled": { + "type": "boolean", + "description": "Versioning is enabled if set to true." + }, + "automaticSnapshotPolicyEnabled": { + "type": "boolean", + "description": "Deprecated in favor of isVersioningEnabled property." + }, + "changeFeed": { + "$ref": "#/definitions/ChangeFeed", + "description": "The blob service properties for change feed events." + }, + "restorePolicy": { + "$ref": "#/definitions/RestorePolicyProperties", + "description": "The blob service properties for blob restore policy." + }, + "containerDeleteRetentionPolicy": { + "$ref": "./common.json#/definitions/DeleteRetentionPolicy", + "description": "The blob service properties for container soft delete." + }, + "lastAccessTimeTrackingPolicy": { + "$ref": "#/definitions/LastAccessTimeTrackingPolicy", + "description": "The blob service property to configure last access time based tracking policy." + } + }, + "x-ms-client-flatten": true, + "x-ms-client-name": "BlobServiceProperties", + "description": "The properties of a storage account’s Blob service." + }, + "sku": { + "$ref": "./common.json#/definitions/Sku", + "readOnly": true, + "description": "Sku name and tier." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "description": "The properties of a storage account’s Blob service." + }, + "BlobServiceItems": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BlobServiceProperties" + }, + "description": "List of blob services returned.", + "readOnly": true + } + } + }, + "ChangeFeed": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Indicates whether change feed event logging is enabled for the Blob service." + }, + "retentionInDays": { + "type": "integer", + "minimum": 1, + "maximum": 146000, + "format": "int32", + "description": "Indicates the duration of changeFeed retention in days. Minimum value is 1 day and maximum value is 146000 days (400 years). A null value indicates an infinite retention of the change feed." + } + }, + "description": "The blob service properties for change feed events." + }, + "RestorePolicyProperties": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Blob restore is enabled if set to true." + }, + "days": { + "type": "integer", + "minimum": 1, + "maximum": 365, + "description": "how long this blob can be restored. It should be great than zero and less than DeleteRetentionPolicy.days." + }, + "lastEnabledTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "Deprecated in favor of minRestoreTime property." + }, + "minRestoreTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "Returns the minimum date and time that the restore can be started." + } + }, + "required": [ + "enabled" + ], + "description": "The blob service properties for blob restore policy" + }, + "LastAccessTimeTrackingPolicy": { + "properties": { + "enable": { + "type": "boolean", + "description": "When set to true last access time based tracking is enabled." + }, + "name": { + "type": "string", + "description": "Name of the policy. The valid value is AccessTimeTracking. This field is currently read only", + "enum": [ + "AccessTimeTracking" + ], + "x-ms-enum": { + "name": "name", + "modelAsString": true + } + }, + "trackingGranularityInDays": { + "type": "integer", + "format": "int32", + "description": "The field specifies blob object tracking granularity in days, typically how often the blob object should be tracked.This field is currently read only with value as 1" + }, + "blobType": { + "type": "array", + "items": { + "type": "string" + }, + "description": "An array of predefined supported blob types. Only blockBlob is the supported value. This field is currently read only" + } + }, + "required": [ + "enable" + ], + "description": "The blob service properties for Last access time based tracking policy." + }, + "LeaseContainerRequest": { + "properties": { + "action": { + "type": "string", + "enum": [ + "Acquire", + "Renew", + "Change", + "Release", + "Break" + ], + "description": "Specifies the lease action. Can be one of the available actions." + }, + "leaseId": { + "type": "string", + "description": "Identifies the lease. Can be specified in any valid GUID string format." + }, + "breakPeriod": { + "type": "integer", + "description": "Optional. For a break action, proposed duration the lease should continue before it is broken, in seconds, between 0 and 60." + }, + "leaseDuration": { + "type": "integer", + "description": "Required for acquire. Specifies the duration of the lease, in seconds, or negative one (-1) for a lease that never expires." + }, + "proposedLeaseId": { + "type": "string", + "description": "Optional for acquire, required for change. Proposed lease ID, in a GUID string format." + } + }, + "required": [ + "action" + ], + "description": "Lease Container request schema." + }, + "LeaseContainerResponse": { + "properties": { + "leaseId": { + "type": "string", + "description": "Returned unique lease ID that must be included with any request to delete the container, or to renew, change, or release the lease." + }, + "leaseTimeSeconds": { + "type": "string", + "description": "Approximate time remaining in the lease period, in seconds." + } + }, + "description": "Lease Container response schema." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorBody" + } + }, + "description": "An error response from the Storage service." + }, + "CloudErrorBody": { + "x-ms-external": true, + "properties": { + "code": { + "type": "string", + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "type": "string", + "description": "A message describing the error, intended to be suitable for display in a user interface." + }, + "target": { + "type": "string", + "description": "The target of the particular error. For example, the name of the property in error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/CloudErrorBody" + }, + "description": "A list of additional details about the error." + } + }, + "description": "An error response from the Storage service." + } + }, + "parameters": { + "ContainerName": { + "name": "containerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the blob container within the specified storage account. Blob container names must be between 3 and 63 characters in length and use numbers, lower-case letters and dash (-) only. Every dash (-) character must be immediately preceded and followed by a letter or number.", + "maxLength": 63, + "minLength": 3, + "x-ms-parameter-location": "method" + }, + "ImmutabilityPolicyName": { + "name": "immutabilityPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the blob container immutabilityPolicy within the specified storage account. ImmutabilityPolicy Name must be 'default'", + "enum": [ + "default" + ], + "x-ms-parameter-location": "method" + }, + "BlobServicesName": { + "name": "BlobServicesName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the blob Service within the specified storage account. Blob Service Name must be 'default'", + "enum": [ + "default" + ], + "x-ms-parameter-location": "method" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/common.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/common.json new file mode 100644 index 000000000000..231e2be52919 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/common.json @@ -0,0 +1,137 @@ +{ + "swagger": "2.0", + "info": { + "title": "Storage", + "description": "Storage Resource Provider API Common Types", + "version": "2021-04-01" + }, + "paths": {}, + "definitions": { + "CorsRules": { + "properties": { + "corsRules": { + "type": "array", + "items": { + "description": "Specifies a CORS rule for the Blob service. ", + "$ref": "#/definitions/CorsRule" + }, + "description": "The List of CORS rules. You can include up to five CorsRule elements in the request. " + } + }, + "description": "Sets the CORS rules. You can include up to five CorsRule elements in the request. " + }, + "CorsRule": { + "properties": { + "allowedOrigins": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Required if CorsRule element is present. A list of origin domains that will be allowed via CORS, or \"*\" to allow all domains" + }, + "allowedMethods": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "DELETE", + "GET", + "HEAD", + "MERGE", + "POST", + "OPTIONS", + "PUT" + ] + }, + "description": "Required if CorsRule element is present. A list of HTTP methods that are allowed to be executed by the origin." + }, + "maxAgeInSeconds": { + "type": "integer", + "description": "Required if CorsRule element is present. The number of seconds that the client/browser should cache a preflight response." + }, + "exposedHeaders": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Required if CorsRule element is present. A list of response headers to expose to CORS clients." + }, + "allowedHeaders": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Required if CorsRule element is present. A list of headers allowed to be part of the cross-origin request." + } + }, + "required": [ + "allowedOrigins", + "allowedMethods", + "maxAgeInSeconds", + "exposedHeaders", + "allowedHeaders" + ], + "description": "Specifies a CORS rule for the Blob service." + }, + "DeleteRetentionPolicy": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Indicates whether DeleteRetentionPolicy is enabled." + }, + "days": { + "type": "integer", + "minimum": 1, + "maximum": 365, + "description": "Indicates the number of days that the deleted item should be retained. The minimum specified value can be 1 and the maximum value can be 365." + } + }, + "description": "The service properties for soft delete." + }, + "Sku": { + "properties": { + "name": { + "$ref": "#/definitions/SkuName" + }, + "tier": { + "$ref": "#/definitions/Tier" + } + }, + "required": [ + "name" + ], + "description": "The SKU of the storage account." + }, + "SkuName": { + "type": "string", + "description": "The SKU name. Required for account creation; optional for update. Note that in older versions, SKU name was called accountType.", + "enum": [ + "Standard_LRS", + "Standard_GRS", + "Standard_RAGRS", + "Standard_ZRS", + "Premium_LRS", + "Premium_ZRS", + "Standard_GZRS", + "Standard_RAGZRS" + ], + "x-ms-enum": { + "name": "SkuName", + "modelAsString": true + } + }, + "Tier": { + "readOnly": true, + "type": "string", + "description": "The SKU tier. This is based on the SKU name.", + "enum": [ + "Standard", + "Premium" + ], + "x-ms-enum": { + "name": "SkuTier", + "modelAsString": false + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobContainersClearLegalHold.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobContainersClearLegalHold.json new file mode 100644 index 000000000000..10cb1f973985 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobContainersClearLegalHold.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4303", + "accountName": "sto7280", + "containerName": "container8723", + "api-version": "2020-08-01-preview", + "monitor": "true", + "LegalHold": { + "tags": [ + "tag1", + "tag2", + "tag3" + ] + } + }, + "responses": { + "200": { + "body": { + "hasLegalHold": false, + "tags": [] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobContainersDelete.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobContainersDelete.json new file mode 100644 index 000000000000..1b458fc42fbf --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobContainersDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4079", + "accountName": "sto4506", + "containerName": "container9689", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobContainersDeleteImmutabilityPolicy.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobContainersDeleteImmutabilityPolicy.json new file mode 100644 index 000000000000..8e3c544f52ce --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobContainersDeleteImmutabilityPolicy.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res1581", + "accountName": "sto9621", + "containerName": "container4910", + "immutabilityPolicyName": "default", + "If-Match": "\"8d59f81a7fa7be0\"", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res1581/providers/Microsoft.Storage/storageAccounts/sto9621/blobServices/default/containers/container4910/immutabilityPolicies/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/blobServices/containers/immutabilityPolicies", + "etag": "\"8d59f81a87b40c0\"", + "properties": { + "immutabilityPeriodSinceCreationInDays": 0, + "state": "Unlocked" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobContainersExtendImmutabilityPolicy.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobContainersExtendImmutabilityPolicy.json new file mode 100644 index 000000000000..012711dc8900 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobContainersExtendImmutabilityPolicy.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res6238", + "accountName": "sto232", + "containerName": "container5023", + "If-Match": "\"8d59f830d0c3bf9\"", + "api-version": "2020-08-01-preview", + "monitor": "true", + "parameters": { + "properties": { + "immutabilityPeriodSinceCreationInDays": 100 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res6238/providers/Microsoft.Storage/storageAccounts/sto232/blobServices/default/containers/container5023/immutabilityPolicies/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/blobServices/containers/immutabilityPolicies", + "etag": "\"8d57a8b2ff50332\"", + "properties": { + "immutabilityPeriodSinceCreationInDays": 100, + "state": "Locked" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobContainersGet.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobContainersGet.json new file mode 100644 index 000000000000..fcd31bb5b494 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobContainersGet.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9871", + "accountName": "sto6217", + "containerName": "container1634", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9871/providers/Microsoft.Storage/storageAccounts/sto6217/blobServices/default/containers/container1634", + "name": "container1634", + "type": "Microsoft.Storage/storageAccounts/blobServices/containers", + "etag": "\"0x8D592D74CC20EBA\"", + "properties": { + "publicAccess": "None", + "leaseStatus": "Unlocked", + "leaseState": "Available", + "lastModifiedTime": "2018-03-26T05:06:14Z", + "immutabilityPolicy": { + "etag": "\"8d592d74cb3011a\"", + "properties": { + "immutabilityPeriodSinceCreationInDays": 100, + "state": "Locked" + }, + "updateHistory": [ + { + "update": "put", + "immutabilityPeriodSinceCreationInDays": 3, + "timestamp": "2018-03-26T05:06:11.431403Z", + "objectIdentifier": "ce7cd28a-fc25-4bf1-8fb9-e1b9833ffd4b", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47" + }, + { + "update": "lock", + "immutabilityPeriodSinceCreationInDays": 3, + "timestamp": "2018-03-26T05:06:13.0907641Z", + "objectIdentifier": "ce7cd28a-fc25-4bf1-8fb9-e1b9833ffd4b", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47" + }, + { + "update": "extend", + "immutabilityPeriodSinceCreationInDays": 100, + "timestamp": "2018-03-26T05:06:14.7097716Z", + "objectIdentifier": "ce7cd28a-fc25-4bf1-8fb9-e1b9833ffd4b", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47" + } + ] + }, + "legalHold": { + "hasLegalHold": true, + "tags": [ + { + "tag": "tag1", + "timestamp": "2018-03-26T05:06:09.6964643Z", + "objectIdentifier": "ce7cd28a-fc25-4bf1-8fb9-e1b9833ffd4b", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47" + }, + { + "tag": "tag2", + "timestamp": "2018-03-26T05:06:09.6964643Z", + "objectIdentifier": "ce7cd28a-fc25-4bf1-8fb9-e1b9833ffd4b", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47" + }, + { + "tag": "tag3", + "timestamp": "2018-03-26T05:06:09.6964643Z", + "objectIdentifier": "ce7cd28a-fc25-4bf1-8fb9-e1b9833ffd4b", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47" + } + ] + }, + "hasImmutabilityPolicy": true, + "hasLegalHold": true + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobContainersGetImmutabilityPolicy.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobContainersGetImmutabilityPolicy.json new file mode 100644 index 000000000000..a252a1fab23b --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobContainersGetImmutabilityPolicy.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res5221", + "accountName": "sto9177", + "containerName": "container3489", + "immutabilityPolicyName": "default", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res5221/providers/Microsoft.Storage/storageAccounts/sto9177/blobServices/default/containers/container3489/immutabilityPolicies/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/blobServices/containers/immutabilityPolicies", + "etag": "\"8d59f828e64b75c\"", + "properties": { + "immutabilityPeriodSinceCreationInDays": 5, + "allowProtectedAppendWrites": true, + "state": "Unlocked" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobContainersLease_Acquire.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobContainersLease_Acquire.json new file mode 100644 index 000000000000..06e750eed70a --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobContainersLease_Acquire.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "containerName": "container6185", + "api-version": "2020-08-01-preview", + "monitor": "true", + "parameters": { + "action": "Acquire", + "leaseId": null, + "breakPeriod": null, + "leaseDuration": -1, + "proposedLeaseId": null + } + }, + "responses": { + "200": { + "body": { + "leaseId": "8698f513-fa75-44a1-b8eb-30ba336af27d" + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobContainersLease_Break.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobContainersLease_Break.json new file mode 100644 index 000000000000..5478c1ddb953 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobContainersLease_Break.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "containerName": "container6185", + "api-version": "2020-08-01-preview", + "monitor": "true", + "parameters": { + "action": "Break", + "leaseId": "8698f513-fa75-44a1-b8eb-30ba336af27d", + "breakPeriod": null, + "leaseDuration": null, + "proposedLeaseId": null + } + }, + "responses": { + "200": { + "body": { + "leaseTimeSeconds": "0" + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobContainersList.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobContainersList.json new file mode 100644 index 000000000000..f36181499495 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobContainersList.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9290", + "accountName": "sto1590", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9290/providers/Microsoft.Storage/storageAccounts/sto1590/blobServices/default/containers/container1644", + "name": "container1644", + "type": "Microsoft.Storage/storageAccounts/blobServices/containers", + "etag": "\"0x8D589847D51C7DE\"", + "properties": { + "publicAccess": "Container", + "leaseStatus": "Unlocked", + "leaseState": "Available", + "lastModifiedTime": "2018-03-14T08:20:47Z", + "hasImmutabilityPolicy": false, + "hasLegalHold": false + } + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9290/providers/Microsoft.Storage/storageAccounts/sto1590/blobServices/default/containers/container4052", + "name": "container4052", + "type": "Microsoft.Storage/storageAccounts/blobServices/containers", + "etag": "\"0x8D589847DAB5AF9\"", + "properties": { + "publicAccess": "None", + "leaseStatus": "Unlocked", + "leaseState": "Available", + "lastModifiedTime": "2018-03-14T08:20:47Z", + "hasImmutabilityPolicy": false, + "hasLegalHold": false + } + } + ], + "nextLink": "https://sto1590endpoint/subscriptions/{subscription-id}/resourceGroups/res9290/providers/Microsoft.Storage/storageAccounts/sto1590/blobServices/default/containers?api-version=2020-08-01-preview&$maxpagesize=2&$skipToken=/sto1590/container5103" + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobContainersLockImmutabilityPolicy.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobContainersLockImmutabilityPolicy.json new file mode 100644 index 000000000000..df3fe04ade92 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobContainersLockImmutabilityPolicy.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res2702", + "accountName": "sto5009", + "containerName": "container1631", + "If-Match": "\"8d59f825b721dd3\"", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res2702/providers/Microsoft.Storage/storageAccounts/sto5009/blobServices/default/containers/container1631/immutabilityPolicies/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/blobServices/containers/immutabilityPolicies", + "etag": "\"8d57a8a5edb084a\"", + "properties": { + "immutabilityPeriodSinceCreationInDays": 3, + "state": "Locked" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobContainersPatch.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobContainersPatch.json new file mode 100644 index 000000000000..c72b4b1035f9 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobContainersPatch.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "containerName": "container6185", + "api-version": "2020-08-01-preview", + "monitor": "true", + "blobContainer": { + "properties": { + "publicAccess": "Container", + "metadata": { + "metadata": "true" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/blobServices/default/containers/container6185", + "name": "container6185", + "type": "Microsoft.Storage/storageAccounts/blobServices/containers", + "properties": { + "metadata": { + "metadata": "true" + }, + "publicAccess": "Container", + "hasImmutabilityPolicy": false, + "hasLegalHold": false + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobContainersPut.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobContainersPut.json new file mode 100644 index 000000000000..f5b3a3d5794b --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobContainersPut.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "containerName": "container6185", + "api-version": "2020-08-01-preview", + "monitor": "true", + "blobContainer": {} + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/blobServices/default/containers/container6185", + "name": "container6185", + "type": "Microsoft.Storage/storageAccounts/blobServices/containers" + } + }, + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/blobServices/default/containers/container6185", + "name": "container6185", + "type": "Microsoft.Storage/storageAccounts/blobServices/containers" + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobContainersPutDefaultEncryptionScope.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobContainersPutDefaultEncryptionScope.json new file mode 100644 index 000000000000..a59517407b49 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobContainersPutDefaultEncryptionScope.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "containerName": "container6185", + "api-version": "2020-08-01-preview", + "monitor": "true", + "blobContainer": { + "properties": { + "defaultEncryptionScope": "encryptionscope185", + "denyEncryptionScopeOverride": true + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/blobServices/default/containers/container6185", + "name": "container6185", + "type": "Microsoft.Storage/storageAccounts/blobServices/containers", + "properties": { + "defaultEncryptionScope": "encryptionscope185", + "denyEncryptionScopeOverride": true + } + } + }, + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/blobServices/default/containers/container6185", + "name": "container6185", + "type": "Microsoft.Storage/storageAccounts/blobServices/containers", + "properties": { + "defaultEncryptionScope": "encryptionscope185", + "denyEncryptionScopeOverride": true + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobContainersPutImmutabilityPolicy.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobContainersPutImmutabilityPolicy.json new file mode 100644 index 000000000000..27551892b1b6 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobContainersPutImmutabilityPolicy.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res1782", + "accountName": "sto7069", + "containerName": "container6397", + "immutabilityPolicyName": "default", + "api-version": "2020-08-01-preview", + "monitor": "true", + "parameters": { + "properties": { + "immutabilityPeriodSinceCreationInDays": 3, + "allowProtectedAppendWrites": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res1782/providers/Microsoft.Storage/storageAccounts/sto7069/blobServices/default/containers/container6397/immutabilityPolicies/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/blobServices/containers/immutabilityPolicies", + "etag": "\"8d59f830cb130e5\"", + "properties": { + "immutabilityPeriodSinceCreationInDays": 3, + "allowProtectedAppendWrites": true, + "state": "Unlocked" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobContainersPutObjectLevelWorm.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobContainersPutObjectLevelWorm.json new file mode 100644 index 000000000000..f6851b9c491a --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobContainersPutObjectLevelWorm.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "containerName": "container6185", + "api-version": "2021-04-01", + "monitor": "true", + "blobContainer": { + "properties": { + "immutableStorageWithVersioning": { + "enabled": true + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/blobServices/default/containers/container6185", + "name": "container6185", + "type": "Microsoft.Storage/storageAccounts/blobServices/containers", + "properties": { + "immutableStorageWithVersioning": { + "enabled": true + } + } + } + }, + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/blobServices/default/containers/container6185", + "name": "container6185", + "type": "Microsoft.Storage/storageAccounts/blobServices/containers", + "properties": { + "immutableStorageWithVersioning": { + "enabled": true + } + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobContainersSetLegalHold.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobContainersSetLegalHold.json new file mode 100644 index 000000000000..6b1ab8d4b261 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobContainersSetLegalHold.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4303", + "accountName": "sto7280", + "containerName": "container8723", + "api-version": "2020-08-01-preview", + "monitor": "true", + "LegalHold": { + "tags": [ + "tag1", + "tag2", + "tag3" + ] + } + }, + "responses": { + "200": { + "body": { + "hasLegalHold": true, + "tags": [ + "tag1", + "tag2", + "tag3" + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobRangesRestore.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobRangesRestore.json new file mode 100644 index 000000000000..f0734ba8bffe --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobRangesRestore.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9101", + "accountName": "sto4445", + "api-version": "2020-08-01-preview", + "parameters": { + "timeToRestore": "2019-04-20T15:30:00.0000000Z", + "blobRanges": [ + { + "startRange": "container/blobpath1", + "endRange": "container/blobpath2" + }, + { + "startRange": "container2/blobpath3", + "endRange": "" + } + ] + } + }, + "responses": { + "200": { + "body": { + "status": "Complete", + "restoreId": "{restore_id}", + "parameters": { + "timeToRestore": "2019-04-20T15:30:00.0000000Z", + "blobRanges": [ + { + "startRange": "container/blobpath1", + "endRange": "container/blobpath2" + }, + { + "startRange": "container2/blobpath3", + "endRange": "" + } + ] + } + } + }, + "202": { + "body": { + "status": "InProgress", + "restoreId": "{restore_id}", + "parameters": { + "timeToRestore": "2019-04-20T15:30:00.0000000Z", + "blobRanges": [ + { + "startRange": "container/blobpath1", + "endRange": "container/blobpath2" + }, + { + "startRange": "container2/blobpath3", + "endRange": "" + } + ] + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobServicesGet.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobServicesGet.json new file mode 100644 index 000000000000..a87c766bde14 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobServicesGet.json @@ -0,0 +1,96 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4410", + "accountName": "sto8607", + "BlobServicesName": "default", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res4410/providers/Microsoft.Storage/storageAccounts/sto8607/blobServices/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/blobServices", + "properties": { + "cors": { + "corsRules": [ + { + "allowedOrigins": [ + "http://www.contoso.com", + "http://www.fabrikam.com" + ], + "allowedMethods": [ + "GET", + "HEAD", + "POST", + "OPTIONS", + "MERGE", + "PUT" + ], + "maxAgeInSeconds": 100, + "exposedHeaders": [ + "x-ms-meta-*" + ], + "allowedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ] + }, + { + "allowedOrigins": [ + "*" + ], + "allowedMethods": [ + "GET" + ], + "maxAgeInSeconds": 2, + "exposedHeaders": [ + "*" + ], + "allowedHeaders": [ + "*" + ] + }, + { + "allowedOrigins": [ + "http://www.abc23.com", + "https://www.fabrikam.com/*" + ], + "allowedMethods": [ + "GET", + "PUT" + ], + "maxAgeInSeconds": 2000, + "exposedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x -ms-meta-target*" + ], + "allowedHeaders": [ + "x-ms-meta-12345675754564*" + ] + } + ] + }, + "defaultServiceVersion": "2017-07-29", + "deleteRetentionPolicy": { + "enabled": true, + "days": 300 + }, + "isVersioningEnabled": true, + "changeFeed": { + "enabled": true, + "retentionInDays": 7 + } + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobServicesList.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobServicesList.json new file mode 100644 index 000000000000..b352a419bae4 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobServicesList.json @@ -0,0 +1,99 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4410", + "accountName": "sto8607", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res4410/providers/Microsoft.Storage/storageAccounts/sto8607/blobServices/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/blobServices", + "properties": { + "cors": { + "corsRules": [ + { + "allowedOrigins": [ + "http://www.contoso.com", + "http://www.fabrikam.com" + ], + "allowedMethods": [ + "GET", + "HEAD", + "POST", + "OPTIONS", + "MERGE", + "PUT" + ], + "maxAgeInSeconds": 100, + "exposedHeaders": [ + "x-ms-meta-*" + ], + "allowedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ] + }, + { + "allowedOrigins": [ + "*" + ], + "allowedMethods": [ + "GET" + ], + "maxAgeInSeconds": 2, + "exposedHeaders": [ + "*" + ], + "allowedHeaders": [ + "*" + ] + }, + { + "allowedOrigins": [ + "http://www.abc23.com", + "https://www.fabrikam.com/*" + ], + "allowedMethods": [ + "GET", + "PUT" + ], + "maxAgeInSeconds": 2000, + "exposedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x -ms-meta-target*" + ], + "allowedHeaders": [ + "x-ms-meta-12345675754564*" + ] + } + ] + }, + "defaultServiceVersion": "2017-07-29", + "deleteRetentionPolicy": { + "enabled": true, + "days": 300 + }, + "isVersioningEnabled": true, + "changeFeed": { + "enabled": true, + "retentionInDays": 7 + } + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + } + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobServicesPut.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobServicesPut.json new file mode 100644 index 000000000000..49d658e88e5e --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobServicesPut.json @@ -0,0 +1,171 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4410", + "accountName": "sto8607", + "BlobServicesName": "default", + "api-version": "2020-08-01-preview", + "monitor": "true", + "parameters": { + "properties": { + "cors": { + "corsRules": [ + { + "allowedOrigins": [ + "http://www.contoso.com", + "http://www.fabrikam.com" + ], + "allowedMethods": [ + "GET", + "HEAD", + "POST", + "OPTIONS", + "MERGE", + "PUT" + ], + "maxAgeInSeconds": 100, + "exposedHeaders": [ + "x-ms-meta-*" + ], + "allowedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ] + }, + { + "allowedOrigins": [ + "*" + ], + "allowedMethods": [ + "GET" + ], + "maxAgeInSeconds": 2, + "exposedHeaders": [ + "*" + ], + "allowedHeaders": [ + "*" + ] + }, + { + "allowedOrigins": [ + "http://www.abc23.com", + "https://www.fabrikam.com/*" + ], + "allowedMethods": [ + "GET", + "PUT" + ], + "maxAgeInSeconds": 2000, + "exposedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x -ms-meta-target*" + ], + "allowedHeaders": [ + "x-ms-meta-12345675754564*" + ] + } + ] + }, + "defaultServiceVersion": "2017-07-29", + "deleteRetentionPolicy": { + "enabled": true, + "days": 300 + }, + "isVersioningEnabled": true, + "changeFeed": { + "enabled": true, + "retentionInDays": 7 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res4410/providers/Microsoft.Storage/storageAccounts/sto8607/blobServices/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/blobServices", + "properties": { + "cors": { + "corsRules": [ + { + "allowedOrigins": [ + "http://www.contoso.com", + "http://www.fabrikam.com" + ], + "allowedMethods": [ + "GET", + "HEAD", + "POST", + "OPTIONS", + "MERGE", + "PUT" + ], + "maxAgeInSeconds": 100, + "exposedHeaders": [ + "x-ms-meta-*" + ], + "allowedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ] + }, + { + "allowedOrigins": [ + "*" + ], + "allowedMethods": [ + "GET" + ], + "maxAgeInSeconds": 2, + "exposedHeaders": [ + "*" + ], + "allowedHeaders": [ + "*" + ] + }, + { + "allowedOrigins": [ + "http://www.abc23.com", + "https://www.fabrikam.com/*" + ], + "allowedMethods": [ + "GET", + "PUT" + ], + "maxAgeInSeconds": 2000, + "exposedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x -ms-meta-target*" + ], + "allowedHeaders": [ + "x-ms-meta-12345675754564*" + ] + } + ] + }, + "defaultServiceVersion": "2017-07-29", + "deleteRetentionPolicy": { + "enabled": true, + "days": 300 + }, + "isVersioningEnabled": true, + "changeFeed": { + "enabled": true, + "retentionInDays": 7 + } + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobServicesPutLastAccessTimeBasedTracking.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobServicesPutLastAccessTimeBasedTracking.json new file mode 100644 index 000000000000..a412fc28b489 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/BlobServicesPutLastAccessTimeBasedTracking.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4410", + "accountName": "sto8607", + "BlobServicesName": "default", + "api-version": "2020-08-01-preview", + "monitor": "true", + "parameters": { + "properties": { + "lastAccessTimeTrackingPolicy": { + "enable": true, + "name": "AccessTimeTracking", + "trackingGranularityInDays": 1, + "blobType": [ + "blockBlob" + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res4410/providers/Microsoft.Storage/storageAccounts/sto8607/blobServices/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/blobServices", + "properties": { + "lastAccessTimeTrackingPolicy": { + "enable": true, + "name": "AccessTimeTracking", + "trackingGranularityInDays": 1, + "blobType": [ + "blockBlob" + ] + } + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/DeletedAccountGet.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/DeletedAccountGet.json new file mode 100644 index 000000000000..ba101108e6a1 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/DeletedAccountGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "deletedAccountName": "sto1125", + "location": "eastus", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/providers/Microsoft.Storage/locations/eastus/deletedAccounts/sto1125", + "name": "sto1125", + "type": "Microsoft.Storage/deletedAccounts", + "properties": { + "storageAccountResourceId": "/subscriptions/{subscription-id}/resourceGroups/sto/providers/Microsoft.Storage/storageAccounts/sto1125", + "location": "eastus", + "restoreReference": "sto1125|2020-08-17T03:35:37.4588848Z", + "creationTime": "2020-08-17T03:35:37.4588848Z", + "deletionTime": "2020-08-17T04:41:37.3442475Z" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/DeletedAccountList.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/DeletedAccountList.json new file mode 100644 index 000000000000..349a61b71f5f --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/DeletedAccountList.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/providers/Microsoft.Storage/locations/eastus/deletedAccounts/sto1125", + "name": "sto1125", + "type": "Microsoft.Storage/deletedAccounts", + "properties": { + "storageAccountResourceId": "/subscriptions/{subscription-id}/resourceGroups/sto/providers/Microsoft.Storage/storageAccounts/sto1125", + "location": "eastus", + "restoreReference": "sto1125|2020-08-17T03:35:37.4588848Z", + "creationTime": "2020-08-17T03:35:37.4588848Z", + "deletionTime": "2020-08-17T04:41:37.3442475Z" + } + }, + { + "id": "/subscriptions/{subscription-id}/providers/Microsoft.Storage/locations/eastus/deletedAccounts/sto1126", + "name": "sto1126", + "type": "Microsoft.Storage/deletedAccounts", + "properties": { + "storageAccountResourceId": "/subscriptions/{subscription-id}/resourceGroups/sto/providers/Microsoft.Storage/storageAccounts/sto1126", + "location": "eastus", + "restoreReference": "sto1126|2020-08-17T03:35:37.4588848Z", + "creationTime": "2020-08-19T15:10:21.5902165Z", + "deletionTime": "2020-08-20T06:11:55.1957302Z" + } + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/DeletedBlobContainersList.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/DeletedBlobContainersList.json new file mode 100644 index 000000000000..07187362cf95 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/DeletedBlobContainersList.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9290", + "accountName": "sto1590", + "$include": "deleted", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9290/providers/Microsoft.Storage/storageAccounts/sto1590/blobServices/default/containers/container1644", + "name": "container1644", + "type": "Microsoft.Storage/storageAccounts/blobServices/containers", + "etag": "\"0x8D589847D51C7DE\"", + "properties": { + "publicAccess": "Container", + "leaseStatus": "Unlocked", + "leaseState": "Available", + "lastModifiedTime": "2018-03-14T08:20:47Z", + "hasImmutabilityPolicy": false, + "hasLegalHold": false + } + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9290/providers/Microsoft.Storage/storageAccounts/sto1590/blobServices/default/containers/container4052", + "name": "container4052", + "type": "Microsoft.Storage/storageAccounts/blobServices/containers", + "etag": "\"0x8D589847DAB5AF9\"", + "properties": { + "publicAccess": "None", + "leaseStatus": "Unlocked", + "leaseState": "Expired", + "lastModifiedTime": "2018-03-14T08:20:47Z", + "hasImmutabilityPolicy": false, + "hasLegalHold": false, + "version": "1234567890", + "deleted": true, + "deletedTime": "2019-12-14T08:20:47Z", + "remainingRetentionDays": 30 + } + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/DeletedFileSharesList.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/DeletedFileSharesList.json new file mode 100644 index 000000000000..367bdc496aef --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/DeletedFileSharesList.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9290", + "accountName": "sto1590", + "$expand": "deleted", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9290/providers/Microsoft.Storage/storageAccounts/sto1590/fileServices/default/shares/share1644_1234567890", + "name": "share1644", + "type": "Microsoft.Storage/storageAccounts/fileServices/shares", + "etag": "\"0x8D589847D51C7DE\"", + "properties": { + "lastModifiedTime": "2019-05-14T08:20:47Z", + "shareQuota": 1024, + "version": "1234567890", + "deleted": true, + "deletedTime": "2019-12-14T08:20:47Z", + "remainingRetentionDays": 30 + } + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9290/providers/Microsoft.Storage/storageAccounts/sto1590/fileServices/default/shares/share4052", + "name": "share4052", + "type": "Microsoft.Storage/storageAccounts/fileServices/shares", + "etag": "\"0x8D589847DAB5AF9\"", + "properties": { + "lastModifiedTime": "2019-05-14T08:20:47Z", + "shareQuota": 1024 + } + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/FileServicesGet.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/FileServicesGet.json new file mode 100644 index 000000000000..8eb74767f742 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/FileServicesGet.json @@ -0,0 +1,86 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4410", + "accountName": "sto8607", + "FileServicesName": "default", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res4410/providers/Microsoft.Storage/storageAccounts/sto8607/fileServices/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/fileServices", + "properties": { + "cors": { + "corsRules": [ + { + "allowedOrigins": [ + "http://www.contoso.com", + "http://www.fabrikam.com" + ], + "allowedMethods": [ + "GET", + "HEAD", + "POST", + "OPTIONS", + "MERGE", + "PUT" + ], + "maxAgeInSeconds": 100, + "exposedHeaders": [ + "x-ms-meta-*" + ], + "allowedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ] + }, + { + "allowedOrigins": [ + "*" + ], + "allowedMethods": [ + "GET" + ], + "maxAgeInSeconds": 2, + "exposedHeaders": [ + "*" + ], + "allowedHeaders": [ + "*" + ] + }, + { + "allowedOrigins": [ + "http://www.abc23.com", + "https://www.fabrikam.com/*" + ], + "allowedMethods": [ + "GET", + "PUT" + ], + "maxAgeInSeconds": 2000, + "exposedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ], + "allowedHeaders": [ + "x-ms-meta-12345675754564*" + ] + } + ] + } + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/FileServicesList.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/FileServicesList.json new file mode 100644 index 000000000000..35748bd6bbd9 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/FileServicesList.json @@ -0,0 +1,89 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9290", + "accountName": "sto1590", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res4410/providers/Microsoft.Storage/storageAccounts/sto8607/fileServices/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/fileServices", + "properties": { + "cors": { + "corsRules": [ + { + "allowedOrigins": [ + "http://www.contoso.com", + "http://www.fabrikam.com" + ], + "allowedMethods": [ + "GET", + "HEAD", + "POST", + "OPTIONS", + "MERGE", + "PUT" + ], + "maxAgeInSeconds": 100, + "exposedHeaders": [ + "x-ms-meta-*" + ], + "allowedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ] + }, + { + "allowedOrigins": [ + "*" + ], + "allowedMethods": [ + "GET" + ], + "maxAgeInSeconds": 2, + "exposedHeaders": [ + "*" + ], + "allowedHeaders": [ + "*" + ] + }, + { + "allowedOrigins": [ + "http://www.abc23.com", + "https://www.fabrikam.com/*" + ], + "allowedMethods": [ + "GET", + "PUT" + ], + "maxAgeInSeconds": 2000, + "exposedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ], + "allowedHeaders": [ + "x-ms-meta-12345675754564*" + ] + } + ] + } + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + } + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/FileServicesPut.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/FileServicesPut.json new file mode 100644 index 000000000000..4ec0318cbdb9 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/FileServicesPut.json @@ -0,0 +1,151 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4410", + "accountName": "sto8607", + "FileServicesName": "default", + "api-version": "2020-08-01-preview", + "monitor": "true", + "parameters": { + "properties": { + "cors": { + "corsRules": [ + { + "allowedOrigins": [ + "http://www.contoso.com", + "http://www.fabrikam.com" + ], + "allowedMethods": [ + "GET", + "HEAD", + "POST", + "OPTIONS", + "MERGE", + "PUT" + ], + "maxAgeInSeconds": 100, + "exposedHeaders": [ + "x-ms-meta-*" + ], + "allowedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ] + }, + { + "allowedOrigins": [ + "*" + ], + "allowedMethods": [ + "GET" + ], + "maxAgeInSeconds": 2, + "exposedHeaders": [ + "*" + ], + "allowedHeaders": [ + "*" + ] + }, + { + "allowedOrigins": [ + "http://www.abc23.com", + "https://www.fabrikam.com/*" + ], + "allowedMethods": [ + "GET", + "PUT" + ], + "maxAgeInSeconds": 2000, + "exposedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ], + "allowedHeaders": [ + "x-ms-meta-12345675754564*" + ] + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res4410/providers/Microsoft.Storage/storageAccounts/sto8607/fileServices/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/fileServices", + "properties": { + "cors": { + "corsRules": [ + { + "allowedOrigins": [ + "http://www.contoso.com", + "http://www.fabrikam.com" + ], + "allowedMethods": [ + "GET", + "HEAD", + "POST", + "OPTIONS", + "MERGE", + "PUT" + ], + "maxAgeInSeconds": 100, + "exposedHeaders": [ + "x-ms-meta-*" + ], + "allowedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ] + }, + { + "allowedOrigins": [ + "*" + ], + "allowedMethods": [ + "GET" + ], + "maxAgeInSeconds": 2, + "exposedHeaders": [ + "*" + ], + "allowedHeaders": [ + "*" + ] + }, + { + "allowedOrigins": [ + "http://www.abc23.com", + "https://www.fabrikam.com/*" + ], + "allowedMethods": [ + "GET", + "PUT" + ], + "maxAgeInSeconds": 2000, + "exposedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ], + "allowedHeaders": [ + "x-ms-meta-12345675754564*" + ] + } + ] + } + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/FileServicesPut_EnableSMBMultichannel.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/FileServicesPut_EnableSMBMultichannel.json new file mode 100644 index 000000000000..4368652b23e3 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/FileServicesPut_EnableSMBMultichannel.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4410", + "accountName": "sto8607", + "FileServicesName": "default", + "api-version": "2020-08-01-preview", + "monitor": "true", + "parameters": { + "properties": { + "protocolSettings": { + "smb": { + "multichannel": { + "enabled": true + } + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res4410/providers/Microsoft.Storage/storageAccounts/sto8607/fileServices/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/fileServices", + "properties": { + "protocolSettings": { + "smb": { + "multichannel": { + "enabled": true + } + } + } + }, + "sku": { + "name": "Premium_LRS", + "tier": "Premium" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/FileServicesPut_EnableSecureSmbFeatures.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/FileServicesPut_EnableSecureSmbFeatures.json new file mode 100644 index 000000000000..a7a3ae4eba80 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/FileServicesPut_EnableSecureSmbFeatures.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4410", + "accountName": "sto8607", + "FileServicesName": "default", + "api-version": "2021-02-01", + "monitor": "true", + "parameters": { + "properties": { + "protocolSettings": { + "smb": { + "versions": "SMB2.1;SMB3.0;SMB3.1.1", + "authenticationMethods": "NTLMv2;Kerberos", + "kerberosTicketEncryption": "RC4-HMAC;AES-256", + "channelEncryption": "AES-128-CCM;AES-128-GCM;AES-256-GCM" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res4410/providers/Microsoft.Storage/storageAccounts/sto8607/fileServices/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/fileServices", + "properties": { + "protocolSettings": { + "smb": { + "versions": "SMB2.1;SMB3.0;SMB3.1.1", + "authenticationMethods": "NTLMv2;Kerberos", + "kerberosTicketEncryption": "RC4-HMAC;AES-256", + "channelEncryption": "AES-128-CCM;AES-128-GCM;AES-256-GCM" + } + } + }, + "sku": { + "name": "Premium_LRS", + "tier": "Premium" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/FileShareAclsPatch.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/FileShareAclsPatch.json new file mode 100644 index 000000000000..852209e41ab0 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/FileShareAclsPatch.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "shareName": "share6185", + "api-version": "2021-04-01", + "monitor": "true", + "fileShare": { + "properties": { + "signedIdentifiers": [ + { + "id": "MTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTI", + "accessPolicy": { + "startTime": "2021-04-01T08:49:37.0000000Z", + "expiryTime": "2021-05-01T08:49:37.0000000Z", + "permission": "rwd" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/fileServices/default/shares/share6185", + "name": "share6185", + "type": "Microsoft.Storage/storageAccounts/fileServices/shares", + "properties": { + "signedIdentifiers": [ + { + "id": "MTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTI", + "accessPolicy": { + "startTime": "2021-04-01T08:49:37.0000000Z", + "expiryTime": "2021-05-01T08:49:37.0000000Z", + "permission": "rwd" + } + } + ] + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/FileShareSnapshotsList.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/FileShareSnapshotsList.json new file mode 100644 index 000000000000..9410c953b651 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/FileShareSnapshotsList.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9290", + "accountName": "sto1590", + "$expand": "snapshots", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9290/providers/Microsoft.Storage/storageAccounts/sto1590/fileServices/default/shares/share4052", + "name": "share4052", + "type": "Microsoft.Storage/storageAccounts/fileServices/shares", + "etag": "\"0x8D589847DAB5AF9\"", + "properties": { + "lastModifiedTime": "2020-10-26T05:47:05.0000000Z", + "shareQuota": 1024 + } + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9290/providers/Microsoft.Storage/storageAccounts/sto1590/fileServices/default/shares/share4052", + "name": "share4052", + "type": "Microsoft.Storage/storageAccounts/fileServices/shares", + "etag": "\"0x8D589847DAB5AF9\"", + "properties": { + "lastModifiedTime": "2020-10-26T05:47:05.0000000Z", + "shareQuota": 1024, + "snapshotTime": "2020-10-26T05:48:07.0000000Z" + } + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/FileSharesDelete.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/FileSharesDelete.json new file mode 100644 index 000000000000..5c9c087b70bc --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/FileSharesDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4079", + "accountName": "sto4506", + "shareName": "share9689", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/FileSharesGet.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/FileSharesGet.json new file mode 100644 index 000000000000..40249307aaa9 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/FileSharesGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9871", + "accountName": "sto6217", + "shareName": "share1634", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9871/providers/Microsoft.Storage/storageAccounts/sto6217/fileServices/default/shares/share1634", + "name": "share1634", + "type": "Microsoft.Storage/storageAccounts/fileServices/shares", + "etag": "\"0x8D592D74CC20EBA\"", + "properties": { + "lastModifiedTime": "2019-05-26T05:06:14Z", + "shareQuota": 1024 + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/FileSharesGet_Stats.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/FileSharesGet_Stats.json new file mode 100644 index 000000000000..1e1bcb64860f --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/FileSharesGet_Stats.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9871", + "accountName": "sto6217", + "shareName": "share1634", + "$expand": "stats", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9871/providers/Microsoft.Storage/storageAccounts/sto6217/fileServices/default/shares/share1634", + "name": "share1634", + "type": "Microsoft.Storage/storageAccounts/fileServices/shares", + "etag": "\"0x8D592D74CC20EBA\"", + "properties": { + "lastModifiedTime": "2019-05-26T05:06:14Z", + "shareQuota": 1024, + "shareUsageBytes": 652945 + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/FileSharesLease_Acquire.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/FileSharesLease_Acquire.json new file mode 100644 index 000000000000..4b3f8fd4c740 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/FileSharesLease_Acquire.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "shareName": "share124", + "api-version": "2021-04-01", + "monitor": "true", + "parameters": { + "action": "Acquire", + "leaseId": null, + "breakPeriod": null, + "leaseDuration": -1, + "proposedLeaseId": null + } + }, + "responses": { + "200": { + "body": { + "leaseId": "8698f513-fa75-44a1-b8eb-30ba336af27d" + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/FileSharesLease_Break.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/FileSharesLease_Break.json new file mode 100644 index 000000000000..a14e60f37ba6 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/FileSharesLease_Break.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "shareName": "share12", + "api-version": "2021-04-01", + "monitor": "true", + "parameters": { + "action": "Break", + "leaseId": "8698f513-fa75-44a1-b8eb-30ba336af27d", + "breakPeriod": null, + "leaseDuration": null, + "proposedLeaseId": null + } + }, + "responses": { + "200": { + "body": { + "leaseTimeSeconds": "0" + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/FileSharesList.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/FileSharesList.json new file mode 100644 index 000000000000..c14b8688d0af --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/FileSharesList.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9290", + "accountName": "sto1590", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9290/providers/Microsoft.Storage/storageAccounts/sto1590/fileServices/default/shares/share1644", + "name": "share1644", + "type": "Microsoft.Storage/storageAccounts/fileServices/shares", + "etag": "\"0x8D589847D51C7DE\"", + "properties": { + "lastModifiedTime": "2019-05-14T08:20:47Z", + "shareQuota": 1024 + } + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9290/providers/Microsoft.Storage/storageAccounts/sto1590/fileServices/default/shares/share4052", + "name": "share4052", + "type": "Microsoft.Storage/storageAccounts/fileServices/shares", + "etag": "\"0x8D589847DAB5AF9\"", + "properties": { + "lastModifiedTime": "2019-05-14T08:20:47Z", + "shareQuota": 1024 + } + } + ], + "nextLink": "https://sto1590endpoint/subscriptions/{subscription-id}/resourceGroups/res9290/providers/Microsoft.Storage/storageAccounts/sto1590/fileServices/default/shares?api-version=2020-08-01-preview&$maxpagesize=2&$skipToken=/sto1590/share5103" + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/FileSharesPatch.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/FileSharesPatch.json new file mode 100644 index 000000000000..874b847a9066 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/FileSharesPatch.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "shareName": "share6185", + "api-version": "2020-08-01-preview", + "monitor": "true", + "fileShare": { + "properties": { + "metadata": { + "type": "image" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/fileServices/default/shares/share6185", + "name": "share6185", + "type": "Microsoft.Storage/storageAccounts/fileServices/shares", + "properties": { + "metadata": { + "type": "image" + } + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/FileSharesPut.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/FileSharesPut.json new file mode 100644 index 000000000000..7e5874fbd6ec --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/FileSharesPut.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "shareName": "share6185", + "api-version": "2020-08-01-preview", + "monitor": "true", + "fileShare": {} + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/fileServices/default/shares/share6185", + "name": "share6185", + "type": "Microsoft.Storage/storageAccounts/fileServices/shares" + } + }, + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/fileServices/default/shares/share6185", + "name": "share6185", + "type": "Microsoft.Storage/storageAccounts/fileServices/shares" + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/FileSharesPut_AccessTier.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/FileSharesPut_AccessTier.json new file mode 100644 index 000000000000..60f4fcddcdbd --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/FileSharesPut_AccessTier.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res346", + "accountName": "sto666", + "shareName": "share1235", + "api-version": "2020-08-01-preview", + "monitor": "true", + "fileShare": { + "properties": { + "accessTier": "Hot" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res346/providers/Microsoft.Storage/storageAccounts/sto666/fileServices/default/shares/share1235", + "name": "share1235", + "type": "Microsoft.Storage/storageAccounts/fileServices/shares", + "properties": { + "accessTier": "Hot" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res346/providers/Microsoft.Storage/storageAccounts/sto666/fileServices/default/shares/share1235", + "name": "share1235", + "type": "Microsoft.Storage/storageAccounts/fileServices/shares", + "properties": { + "accessTier": "Hot" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/FileSharesPut_NFS.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/FileSharesPut_NFS.json new file mode 100644 index 000000000000..911098c05a16 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/FileSharesPut_NFS.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res346", + "accountName": "sto666", + "shareName": "share1235", + "api-version": "2020-08-01-preview", + "monitor": "true", + "fileShare": { + "properties": { + "enabledProtocols": "NFS" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res346/providers/Microsoft.Storage/storageAccounts/sto666/fileServices/default/shares/share1235", + "name": "share1235", + "type": "Microsoft.Storage/storageAccounts/fileServices/shares", + "properties": { + "enabledProtocols": "NFS" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res346/providers/Microsoft.Storage/storageAccounts/sto666/fileServices/default/shares/share1235", + "name": "share1235", + "type": "Microsoft.Storage/storageAccounts/fileServices/shares", + "properties": { + "enabledProtocols": "NFS" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/FileSharesRestore.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/FileSharesRestore.json new file mode 100644 index 000000000000..e7f3e769af29 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/FileSharesRestore.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "shareName": "share1249", + "deletedShare": { + "deletedShareName": "share1249", + "deletedShareVersion": "1234567890" + }, + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": {} + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/NfsV3AccountCreate.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/NfsV3AccountCreate.json new file mode 100644 index 000000000000..c7cdc49c5b26 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/NfsV3AccountCreate.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9101", + "accountName": "sto4445", + "api-version": "2021-02-01", + "parameters": { + "sku": { + "name": "Premium_LRS" + }, + "kind": "BlockBlobStorage", + "location": "eastus", + "properties": { + "isHnsEnabled": true, + "isNfsV3Enabled": true, + "supportsHttpsTrafficOnly": false, + "networkAcls": { + "bypass": "AzureServices", + "defaultAction": "Allow", + "ipRules": [], + "virtualNetworkRules": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9101/providers/Microsoft.Network/virtualNetworks/net123/subnets/subnet12" + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9101/providers/Microsoft.Storage/storageAccounts/sto4445", + "kind": "BlockBlobStorage", + "location": "eastus", + "name": "sto4445", + "properties": { + "isHnsEnabled": true, + "isNfsV3Enabled": true, + "supportsHttpsTrafficOnly": false, + "networkAcls": { + "bypass": "AzureServices", + "defaultAction": "Allow", + "ipRules": [], + "virtualNetworkRules": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9101/providers/Microsoft.Network/virtualNetworks/net123/subnets/subnet12" + } + ] + } + }, + "sku": { + "name": "Premium_LRS", + "tier": "Premium" + }, + "type": "Microsoft.Storage/storageAccounts" + } + }, + "202": {} + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/ObjectLevelWormContainerMigration.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/ObjectLevelWormContainerMigration.json new file mode 100644 index 000000000000..a22fd265b41d --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/ObjectLevelWormContainerMigration.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res1782", + "accountName": "sto7069", + "containerName": "container6397", + "immutabilityPolicyName": "default", + "api-version": "2021-04-01", + "monitor": "true" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/OperationsList.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/OperationsList.json new file mode 100644 index 000000000000..0cae850d4c35 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/OperationsList.json @@ -0,0 +1,473 @@ +{ + "parameters": { + "api-version": "2020-08-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Storage/storageAccounts/write", + "display": { + "provider": "Microsoft Storage", + "resource": "Storage Accounts", + "operation": "Create/Update Storage Account", + "description": "Creates a storage account with the specified parameters or update the properties or tags or adds custom domain for the specified storage account." + } + }, + { + "name": "Microsoft.Storage/storageAccounts/delete", + "display": { + "provider": "Microsoft Storage", + "resource": "Storage Accounts", + "operation": "Delete Storage Account", + "description": "Deletes an existing storage account." + } + }, + { + "name": "Microsoft.Storage/storageAccounts/listkeys/action", + "display": { + "provider": "Microsoft Storage", + "resource": "Storage Accounts", + "operation": "List Storage Account Keys", + "description": "Returns the access keys for the specified storage account." + } + }, + { + "name": "Microsoft.Storage/storageAccounts/regeneratekey/action", + "display": { + "provider": "Microsoft Storage", + "resource": "Storage Accounts", + "operation": "Regenerate Storage Account Keys", + "description": "Regenerates the access keys for the specified storage account." + } + }, + { + "name": "Microsoft.Storage/checknameavailability/read", + "display": { + "provider": "Microsoft Storage", + "resource": "Name Availability", + "operation": "Check Name Availability", + "description": "Checks that account name is valid and is not in use." + } + }, + { + "name": "Microsoft.Storage/storageAccounts/read", + "display": { + "provider": "Microsoft Storage", + "resource": "Storage Accounts", + "operation": "List/Get Storage Account(s)", + "description": "Returns the list of storage accounts or gets the properties for the specified storage account." + } + }, + { + "name": "Microsoft.Storage/usages/read", + "display": { + "provider": "Microsoft Storage", + "resource": "Usage Metrics", + "operation": "Get Subscription Usages", + "description": "Returns the limit and the current usage count for resources in the specified subscription" + } + }, + { + "name": "Microsoft.Storage/storageAccounts/listAccountSas/action", + "display": { + "provider": "Microsoft Storage", + "resource": "Storage Account SAS Token", + "operation": "Returns Storage Account SAS Token", + "description": "Returns the Account SAS token for the specified storage account." + } + }, + { + "name": "Microsoft.Storage/storageAccounts/listServiceSas/action", + "display": { + "provider": "Microsoft Storage", + "resource": "Returns the Service SAS token for the specified storage account.", + "operation": "Returns Storage Service SAS Token", + "description": "Storage Service SAS Token" + } + }, + { + "name": "Microsoft.Storage/locations/deleteVirtualNetworkOrSubnets/action", + "display": { + "provider": "Microsoft Storage", + "resource": "Location", + "operation": "Delete virtual network or subnets notifications", + "description": "Notifies Microsoft.Storage that virtual network or subnet is being deleted" + } + }, + { + "name": "Microsoft.Storage/operations/read", + "display": { + "provider": "Microsoft Storage", + "resource": "Operations", + "operation": "Poll Asynchronous Operation", + "description": "Polls the status of an asynchronous operation." + } + }, + { + "name": "Microsoft.Storage/register/action", + "display": { + "provider": "Microsoft Storage", + "resource": "Storage Resource Provider", + "operation": "Registers the Storage Resource Provider", + "description": "Registers the subscription for the storage resource provider and enables the creation of storage accounts." + } + }, + { + "name": "Microsoft.Storage/skus/read", + "display": { + "provider": "Microsoft Storage", + "resource": "Skus", + "operation": "List Skus", + "description": "Lists the Skus supported by Microsoft.Storage." + } + }, + { + "name": "Microsoft.Storage/storageAccounts/services/diagnosticSettings/write", + "display": { + "provider": "Microsoft Storage", + "resource": "Storage Accounts", + "operation": "Create/Update Diagnostic Settings", + "description": "Create/Update storage account diagnostic settings." + } + }, + { + "name": "Microsoft.Storage/storageAccounts/providers/Microsoft.Insights/metricDefinitions/read", + "display": { + "provider": "Microsoft Storage", + "resource": "Storage Accounts", + "operation": "Get list of Microsoft Storage Metrics definitions", + "description": "Get list of Microsoft Storage Metrics definitions." + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "metricSpecifications": [ + { + "name": "UsedCapacity", + "displayName": "Used capacity", + "displayDescription": "Account used capacity", + "unit": "Bytes", + "aggregationType": "Average", + "fillGapWithZero": false, + "category": "Capacity", + "resourceIdDimensionNameOverride": "AccountResourceId" + } + ] + } + } + }, + { + "name": "Microsoft.Storage/storageAccounts/providers/Microsoft.Insights/diagnosticSettings/read", + "display": { + "provider": "Microsoft Storage", + "resource": "Storage Accounts", + "operation": "Read diagnostic setting", + "description": "Gets the diagnostic setting for the resource." + }, + "origin": "system" + }, + { + "name": "Microsoft.Storage/storageAccounts/providers/Microsoft.Insights/diagnosticSettings/write", + "display": { + "provider": "Microsoft Storage", + "resource": "Storage Accounts", + "operation": "Write diagnostic setting", + "description": "Creates or updates the diagnostic setting for the resource." + }, + "origin": "system" + }, + { + "name": "Microsoft.Storage/storageAccounts/blobServices/providers/Microsoft.Insights/metricDefinitions/read", + "display": { + "provider": "Microsoft Storage", + "resource": "Blob service", + "operation": "Get list of Microsoft Storage Metrics definitions", + "description": "Get list of Microsoft Storage Metrics definitions." + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "metricSpecifications": [ + { + "name": "BlobCapacity", + "displayName": "Blob Capacity", + "displayDescription": "The amount of storage used by the storage account’s Blob service in bytes.", + "unit": "Bytes", + "aggregationType": "Average", + "dimensions": [ + { + "name": "BlobType", + "displayName": "Blob type" + } + ], + "fillGapWithZero": false, + "category": "Capacity" + }, + { + "name": "BlobCount", + "displayName": "Blob Count", + "displayDescription": "The number of Blob in the storage account’s Blob service.", + "unit": "Count", + "aggregationType": "Average", + "dimensions": [ + { + "name": "BlobType", + "displayName": "Blob type" + } + ], + "fillGapWithZero": false, + "category": "Capacity" + }, + { + "name": "ContainerCount", + "displayName": "Blob Container Count", + "displayDescription": "The number of containers in the storage account’s Blob service.", + "unit": "Count", + "aggregationType": "Average", + "fillGapWithZero": false, + "category": "Capacity" + }, + { + "name": "BlobProvisionedSize", + "displayName": "Blob Provisioned Size", + "displayDescription": "The amount of storage provisioned in the storage account’s Blob service in bytes.", + "unit": "Bytes", + "aggregationType": "Average", + "dimensions": [ + { + "name": "BlobType", + "displayName": "Blob type" + } + ], + "fillGapWithZero": false, + "category": "Capacity" + } + ] + } + } + }, + { + "name": "Microsoft.Storage/storageAccounts/blobServices/providers/Microsoft.Insights/diagnosticSettings/read", + "display": { + "provider": "Microsoft Storage", + "resource": "Blob service", + "operation": "Read diagnostic setting", + "description": "Gets the diagnostic setting for the resource." + }, + "origin": "system" + }, + { + "name": "Microsoft.Storage/storageAccounts/blobServices/providers/Microsoft.Insights/diagnosticSettings/write", + "display": { + "provider": "Microsoft Storage", + "resource": "Blob service", + "operation": "Write diagnostic setting", + "description": "Creates or updates the diagnostic setting for the resource." + }, + "origin": "system" + }, + { + "name": "Microsoft.Storage/storageAccounts/tableServices/providers/Microsoft.Insights/metricDefinitions/read", + "display": { + "provider": "Microsoft Storage", + "resource": "Table service", + "operation": "Get list of Microsoft Storage Metrics definitions", + "description": "Get list of Microsoft Storage Metrics definitions." + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "metricSpecifications": [ + { + "name": "TableCapacity", + "displayName": "Table Capacity", + "displayDescription": "The amount of storage used by the storage account’s Table service in bytes.", + "unit": "Bytes", + "aggregationType": "Average", + "fillGapWithZero": false, + "category": "Capacity" + }, + { + "name": "TableCount", + "displayName": "Table Count", + "displayDescription": "The number of table in the storage account’s Table service.", + "unit": "Count", + "aggregationType": "Average", + "fillGapWithZero": false, + "category": "Capacity" + }, + { + "name": "TableEntityCount", + "displayName": "Table Entity Count", + "displayDescription": "The number of table entities in the storage account’s Table service.", + "unit": "Count", + "aggregationType": "Average", + "fillGapWithZero": false, + "category": "Capacity" + } + ] + } + } + }, + { + "name": "Microsoft.Storage/storageAccounts/tableServices/providers/Microsoft.Insights/diagnosticSettings/read", + "display": { + "provider": "Microsoft Storage", + "resource": "Table service", + "operation": "Read diagnostic setting", + "description": "Gets the diagnostic setting for the resource." + }, + "origin": "system" + }, + { + "name": "Microsoft.Storage/storageAccounts/tableServices/providers/Microsoft.Insights/diagnosticSettings/write", + "display": { + "provider": "Microsoft Storage", + "resource": "Table service", + "operation": "Write diagnostic setting", + "description": "Creates or updates the diagnostic setting for the resource." + }, + "origin": "system" + }, + { + "name": "Microsoft.Storage/storageAccounts/queueServices/providers/Microsoft.Insights/metricDefinitions/read", + "display": { + "provider": "Microsoft Storage", + "resource": "Queue service", + "operation": "Get list of Microsoft Storage Metrics definitions", + "description": "Get list of Microsoft Storage Metrics definitions." + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "metricSpecifications": [ + { + "name": "QueueCapacity", + "displayName": "Queue Capacity", + "displayDescription": "The amount of storage used by the storage account’s Queue service in bytes.", + "unit": "Bytes", + "aggregationType": "Average", + "fillGapWithZero": false, + "category": "Capacity" + }, + { + "name": "QueueCount", + "displayName": "Queue Count", + "displayDescription": "The number of queue in the storage account’s Queue service.", + "unit": "Count", + "aggregationType": "Average", + "fillGapWithZero": false, + "category": "Capacity" + }, + { + "name": "QueueMessageCount", + "displayName": "Queue Message Count", + "displayDescription": "The approximate number of queue messages in the storage account’s Queue service.", + "unit": "Count", + "aggregationType": "Average", + "fillGapWithZero": false, + "category": "Capacity" + } + ] + } + } + }, + { + "name": "Microsoft.Storage/storageAccounts/queueServices/providers/Microsoft.Insights/diagnosticSettings/read", + "display": { + "provider": "Microsoft Storage", + "resource": "Queue service", + "operation": "Read diagnostic setting", + "description": "Gets the diagnostic setting for the resource." + }, + "origin": "system" + }, + { + "name": "Microsoft.Storage/storageAccounts/queueServices/providers/Microsoft.Insights/diagnosticSettings/write", + "display": { + "provider": "Microsoft Storage", + "resource": "Queue service", + "operation": "Write diagnostic setting", + "description": "Creates or updates the diagnostic setting for the resource." + }, + "origin": "system" + }, + { + "name": "Microsoft.Storage/storageAccounts/fileServices/providers/Microsoft.Insights/metricDefinitions/read", + "display": { + "provider": "Microsoft Storage", + "resource": "File service", + "operation": "Get list of Microsoft Storage Metrics definitions", + "description": "Get list of Microsoft Storage Metrics definitions." + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "metricSpecifications": [ + { + "name": "FileCapacity", + "displayName": "File Capacity", + "displayDescription": "The amount of storage used by the storage account’s File service in bytes.", + "unit": "Bytes", + "aggregationType": "Average", + "fillGapWithZero": false, + "category": "Capacity" + }, + { + "name": "FileProvisionedSize", + "displayName": "File Provisioned Size", + "displayDescription": "The amount of storage provisioned in the storage account’s File service in bytes.", + "unit": "Bytes", + "aggregationType": "Average", + "fillGapWithZero": false, + "category": "Capacity" + }, + { + "name": "FileCount", + "displayName": "File Count", + "displayDescription": "The number of file in the storage account’s File service.", + "unit": "Count", + "aggregationType": "Average", + "fillGapWithZero": false, + "category": "Capacity" + }, + { + "name": "FileShareCount", + "displayName": "File Share Count", + "displayDescription": "The number of file shares in the storage account’s File service.", + "unit": "Count", + "aggregationType": "Average", + "fillGapWithZero": false, + "category": "Capacity" + } + ] + } + } + }, + { + "name": "Microsoft.Storage/storageAccounts/fileServices/providers/Microsoft.Insights/diagnosticSettings/read", + "display": { + "provider": "Microsoft Storage", + "resource": "File service", + "operation": "Read diagnostic setting", + "description": "Gets the diagnostic setting for the resource." + }, + "origin": "system" + }, + { + "name": "Microsoft.Storage/storageAccounts/fileServices/providers/Microsoft.Insights/diagnosticSettings/write", + "display": { + "provider": "Microsoft Storage", + "resource": "File service", + "operation": "Write diagnostic setting", + "description": "Creates or updates the diagnostic setting for the resource." + }, + "origin": "system" + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/QueueOperationDelete.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/QueueOperationDelete.json new file mode 100644 index 000000000000..a5bdc3c353a4 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/QueueOperationDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "queueName": "queue6185", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "204": {} + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/QueueOperationGet.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/QueueOperationGet.json new file mode 100644 index 000000000000..9bdc029019f2 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/QueueOperationGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "queueName": "queue6185", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/queueServices/default/queues/queue6185", + "name": "queue6185", + "type": "Microsoft.Storage/storageAccounts/queueServices/queues", + "properties": { + "metadata": { + "sample1": "meta1", + "sample2": "meta2" + } + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/QueueOperationList.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/QueueOperationList.json new file mode 100644 index 000000000000..a4d26ef075b0 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/QueueOperationList.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9290", + "accountName": "sto328", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/queueServices/default/queues/queue6185", + "name": "queue6185", + "type": "Microsoft.Storage/storageAccounts/queueServices/queues", + "properties": { + "metadata": { + "sample1": "meta1", + "sample2": "meta2" + } + } + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/queueServices/default/queues/queue6186", + "name": "queue6186", + "type": "Microsoft.Storage/storageAccounts/queueServices/queues", + "properties": { + "metadata": { + "sample1": "meta1", + "sample2": "meta2" + } + } + } + ], + "nextLink": "https://sto1590endpoint/subscriptions/{subscription-id}/resourceGroups/res9290/providers/Microsoft.Storage/storageAccounts/sto328/queueServices/default/queues?api-version=2020-08-01-preview&$maxpagesize=2&$skipToken=/sto328/queue6187" + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/QueueOperationPatch.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/QueueOperationPatch.json new file mode 100644 index 000000000000..b662a6e6fc0b --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/QueueOperationPatch.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "queueName": "queue6185", + "api-version": "2020-08-01-preview", + "monitor": "true", + "queue": {} + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/queueServices/default/queues/queue6185", + "name": "queue6185", + "type": "Microsoft.Storage/storageAccounts/queueServices/queues" + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/QueueOperationPut.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/QueueOperationPut.json new file mode 100644 index 000000000000..b662a6e6fc0b --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/QueueOperationPut.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "queueName": "queue6185", + "api-version": "2020-08-01-preview", + "monitor": "true", + "queue": {} + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/queueServices/default/queues/queue6185", + "name": "queue6185", + "type": "Microsoft.Storage/storageAccounts/queueServices/queues" + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/QueueOperationPutWithMetadata.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/QueueOperationPutWithMetadata.json new file mode 100644 index 000000000000..715f0a90e034 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/QueueOperationPutWithMetadata.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "queueName": "queue6185", + "api-version": "2020-08-01-preview", + "monitor": "true", + "queue": { + "properties": { + "metadata": { + "sample1": "meta1", + "sample2": "meta2" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/queueServices/default/queues/queue6185", + "name": "queue6185", + "type": "Microsoft.Storage/storageAccounts/queueServices/queues", + "properties": { + "metadata": { + "sample1": "meta1", + "sample2": "meta2" + } + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/QueueServicesGet.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/QueueServicesGet.json new file mode 100644 index 000000000000..57674fe2aa55 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/QueueServicesGet.json @@ -0,0 +1,82 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4410", + "accountName": "sto8607", + "queueServiceName": "default", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res4410/providers/Microsoft.Storage/storageAccounts/sto8607/queueServices/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/queueServices", + "properties": { + "cors": { + "corsRules": [ + { + "allowedOrigins": [ + "http://www.contoso.com", + "http://www.fabrikam.com" + ], + "allowedMethods": [ + "GET", + "HEAD", + "POST", + "OPTIONS", + "MERGE", + "PUT" + ], + "maxAgeInSeconds": 100, + "exposedHeaders": [ + "x-ms-meta-*" + ], + "allowedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ] + }, + { + "allowedOrigins": [ + "*" + ], + "allowedMethods": [ + "GET" + ], + "maxAgeInSeconds": 2, + "exposedHeaders": [ + "*" + ], + "allowedHeaders": [ + "*" + ] + }, + { + "allowedOrigins": [ + "http://www.abc23.com", + "https://www.fabrikam.com/*" + ], + "allowedMethods": [ + "GET", + "PUT" + ], + "maxAgeInSeconds": 2000, + "exposedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ], + "allowedHeaders": [ + "x-ms-meta-12345675754564*" + ] + } + ] + } + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/QueueServicesList.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/QueueServicesList.json new file mode 100644 index 000000000000..9856b332de60 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/QueueServicesList.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9290", + "accountName": "sto1590", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res4410/providers/Microsoft.Storage/storageAccounts/sto8607/queueServices/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/queueServices", + "properties": { + "cors": { + "corsRules": [ + { + "allowedOrigins": [ + "http://www.contoso.com", + "http://www.fabrikam.com" + ], + "allowedMethods": [ + "GET", + "HEAD", + "POST", + "OPTIONS", + "MERGE", + "PUT" + ], + "maxAgeInSeconds": 100, + "exposedHeaders": [ + "x-ms-meta-*" + ], + "allowedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ] + }, + { + "allowedOrigins": [ + "*" + ], + "allowedMethods": [ + "GET" + ], + "maxAgeInSeconds": 2, + "exposedHeaders": [ + "*" + ], + "allowedHeaders": [ + "*" + ] + }, + { + "allowedOrigins": [ + "http://www.abc23.com", + "https://www.fabrikam.com/*" + ], + "allowedMethods": [ + "GET", + "PUT" + ], + "maxAgeInSeconds": 2000, + "exposedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ], + "allowedHeaders": [ + "x-ms-meta-12345675754564*" + ] + } + ] + } + } + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/QueueServicesPut.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/QueueServicesPut.json new file mode 100644 index 000000000000..19b5de24e288 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/QueueServicesPut.json @@ -0,0 +1,147 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4410", + "accountName": "sto8607", + "queueServiceName": "default", + "api-version": "2020-08-01-preview", + "monitor": "true", + "parameters": { + "properties": { + "cors": { + "corsRules": [ + { + "allowedOrigins": [ + "http://www.contoso.com", + "http://www.fabrikam.com" + ], + "allowedMethods": [ + "GET", + "HEAD", + "POST", + "OPTIONS", + "MERGE", + "PUT" + ], + "maxAgeInSeconds": 100, + "exposedHeaders": [ + "x-ms-meta-*" + ], + "allowedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ] + }, + { + "allowedOrigins": [ + "*" + ], + "allowedMethods": [ + "GET" + ], + "maxAgeInSeconds": 2, + "exposedHeaders": [ + "*" + ], + "allowedHeaders": [ + "*" + ] + }, + { + "allowedOrigins": [ + "http://www.abc23.com", + "https://www.fabrikam.com/*" + ], + "allowedMethods": [ + "GET", + "PUT" + ], + "maxAgeInSeconds": 2000, + "exposedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ], + "allowedHeaders": [ + "x-ms-meta-12345675754564*" + ] + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res4410/providers/Microsoft.Storage/storageAccounts/sto8607/queueServices/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/queueServices", + "properties": { + "cors": { + "corsRules": [ + { + "allowedOrigins": [ + "http://www.contoso.com", + "http://www.fabrikam.com" + ], + "allowedMethods": [ + "GET", + "HEAD", + "POST", + "OPTIONS", + "MERGE", + "PUT" + ], + "maxAgeInSeconds": 100, + "exposedHeaders": [ + "x-ms-meta-*" + ], + "allowedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ] + }, + { + "allowedOrigins": [ + "*" + ], + "allowedMethods": [ + "GET" + ], + "maxAgeInSeconds": 2, + "exposedHeaders": [ + "*" + ], + "allowedHeaders": [ + "*" + ] + }, + { + "allowedOrigins": [ + "http://www.abc23.com", + "https://www.fabrikam.com/*" + ], + "allowedMethods": [ + "GET", + "PUT" + ], + "maxAgeInSeconds": 2000, + "exposedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ], + "allowedHeaders": [ + "x-ms-meta-12345675754564*" + ] + } + ] + } + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/SKUList.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/SKUList.json new file mode 100644 index 000000000000..47724c855202 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/SKUList.json @@ -0,0 +1,6454 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2020-08-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "eastus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "eastus" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "eastus" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "eastus" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastus2" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastus2" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastus2" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastus2" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "eastus2" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "eastus2" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "true" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "eastus2" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "eastus2" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastus2(stage)" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastus2(stage)" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastus2(stage)" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastus2(stage)" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "eastus2(stage)" + ], + "capabilities": [ + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "eastus2(stage)" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "true" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "eastus2(stage)" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "true" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "eastus2(stage)" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "true" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "westus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "westus" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "westus" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "westus" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westeurope" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westeurope" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westeurope" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westeurope" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "westeurope" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "westeurope" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "westeurope" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "westeurope" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastasia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastasia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastasia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastasia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "eastasia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "eastasia" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "eastasia" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "eastasia" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "southeastasia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "southeastasia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "southeastasia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "southeastasia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "southeastasia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "southeastasia" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "southeastasia" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "southeastasia" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "japaneast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "japaneast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "japaneast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "japaneast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "japaneast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "japaneast" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "japaneast" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "japaneast" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "japanwest" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "japanwest" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "japanwest" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "japanwest" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "japanwest" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "japanwest" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "japanwest" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "japanwest" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "northcentralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "northcentralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "northcentralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "northcentralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "northcentralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "northcentralus" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "northcentralus" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "northcentralus" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "southcentralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "southcentralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "southcentralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "southcentralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "southcentralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "southcentralus" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "southcentralus" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "southcentralus" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "centralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "centralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "centralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "centralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "centralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "centralus" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "centralus" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "centralus" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "northeurope" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "northeurope" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "northeurope" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "northeurope" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "northeurope" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "northeurope" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "northeurope" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "northeurope" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "brazilsouth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "brazilsouth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "brazilsouth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "brazilsouth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "brazilsouth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "brazilsouth" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "brazilsouth" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "brazilsouth" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "australiaeast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "australiaeast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "australiaeast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "australiaeast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "australiaeast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "australiaeast" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "australiaeast" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "australiaeast" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "australiasoutheast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "australiasoutheast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "australiasoutheast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "australiasoutheast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "australiasoutheast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "australiasoutheast" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "australiasoutheast" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "australiasoutheast" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "southindia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "southindia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "southindia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "southindia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "southindia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "southindia" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "southindia" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "southindia" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "centralindia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "centralindia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "centralindia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "centralindia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "centralindia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "centralindia" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "centralindia" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "centralindia" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westindia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westindia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westindia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westindia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "westindia" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "westindia" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "westindia" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "westindia" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "canadaeast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "canadaeast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "canadaeast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "canadaeast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "canadaeast" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "canadaeast" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "canadaeast" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "canadaeast" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "canadacentral" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "canadacentral" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "canadacentral" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "canadacentral" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "canadacentral" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "canadacentral" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "canadacentral" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "canadacentral" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westus2" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westus2" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westus2" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westus2" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "westus2" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "westus2" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "westus2" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "westus2" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westcentralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westcentralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westcentralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "westcentralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "westcentralus" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "westcentralus" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "westcentralus" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "westcentralus" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "true" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "uksouth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "uksouth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "uksouth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "uksouth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "uksouth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "uksouth" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "uksouth" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "uksouth" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "ukwest" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "ukwest" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "ukwest" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "ukwest" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "ukwest" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "ukwest" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "ukwest" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "ukwest" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "koreacentral" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "koreacentral" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "koreacentral" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "koreacentral" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "koreacentral" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "koreacentral" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "koreacentral" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "koreacentral" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "koreasouth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "koreasouth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "koreasouth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "koreasouth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "koreasouth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "koreasouth" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "koreasouth" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "koreasouth" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "uknorth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "uknorth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "uknorth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "uknorth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "uknorth" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "uknorth" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "uknorth" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "uknorth" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "uksouth2" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "uksouth2" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "uksouth2" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "uksouth2" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "uksouth2" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "uksouth2" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "uksouth2" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "uksouth2" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "false" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastus2euap" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastus2euap" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastus2euap" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "eastus2euap" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "eastus2euap" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "eastus2euap" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "true" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "eastus2euap" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "true" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "eastus2euap" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "true" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "centraluseuap" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_ZRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "centraluseuap" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "centraluseuap" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "Storage", + "locations": [ + "centraluseuap" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "true" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Premium_LRS", + "tier": "Premium", + "kind": "Storage", + "locations": [ + "centraluseuap" + ], + "capabilities": [ + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_LRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "centraluseuap" + ], + "capabilities": [ + { + "name": "supportsarchivepreview", + "value": "false" + }, + { + "name": "supportschangenotification", + "value": "true" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_GRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "centraluseuap" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "true" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "true" + } + ], + "restrictions": [] + }, + { + "resourceType": "storageAccounts", + "name": "Standard_RAGRS", + "tier": "Standard", + "kind": "BlobStorage", + "locations": [ + "centraluseuap" + ], + "capabilities": [ + { + "name": "supportschangenotification", + "value": "true" + }, + { + "name": "supportsfileencryption", + "value": "false" + }, + { + "name": "supportshoeboxcapacitymetrics", + "value": "false" + }, + { + "name": "supportsnetworkacls", + "value": "false" + } + ], + "restrictions": [] + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountCheckNameAvailability.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountCheckNameAvailability.json new file mode 100644 index 000000000000..14dea4e1e9f8 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountCheckNameAvailability.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2020-08-01-preview", + "accountName": { + "name": "sto3363", + "type": "Microsoft.Storage/storageAccounts" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": true + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountCreate.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountCreate.json new file mode 100644 index 000000000000..34b27e81dcb0 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountCreate.json @@ -0,0 +1,146 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9101", + "accountName": "sto4445", + "api-version": "2021-02-01", + "parameters": { + "sku": { + "name": "Standard_GRS" + }, + "kind": "Storage", + "location": "eastus", + "extendedLocation": { + "type": "EdgeZone", + "name": "losangeles001" + }, + "properties": { + "keyPolicy": { + "keyExpirationPeriodInDays": 20 + }, + "sasPolicy": { + "sasExpirationPeriod": "1.15:59:59", + "expirationAction": "Log" + }, + "isHnsEnabled": true, + "allowBlobPublicAccess": false, + "minimumTlsVersion": "TLS1_2", + "allowSharedKeyAccess": true, + "routingPreference": { + "routingChoice": "MicrosoftRouting", + "publishMicrosoftEndpoints": true, + "publishInternetEndpoints": true + }, + "encryption": { + "services": { + "file": { + "keyType": "Account", + "enabled": true + }, + "blob": { + "keyType": "Account", + "enabled": true + } + }, + "requireInfrastructureEncryption": false, + "keySource": "Microsoft.Storage" + } + }, + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9101/providers/Microsoft.Storage/storageAccounts/sto4445", + "kind": "Storage", + "location": "eastus", + "name": "sto4445", + "extendedLocation": { + "type": "EdgeZone", + "name": "losangeles001" + }, + "properties": { + "keyPolicy": { + "keyExpirationPeriodInDays": 20 + }, + "sasPolicy": { + "sasExpirationPeriod": "1.15:59:59", + "expirationAction": "Log" + }, + "keyCreationTime": { + "key1": "2021-03-18T04:42:22.4322836Z", + "key2": "2021-03-18T04:42:22.4322836Z" + }, + "isHnsEnabled": true, + "allowBlobPublicAccess": false, + "minimumTlsVersion": "TLS1_2", + "allowSharedKeyAccess": true, + "creationTime": "2017-05-24T13:25:33.4863236Z", + "primaryEndpoints": { + "web": "https://sto4445.web.core.windows.net/", + "dfs": "https://sto4445.dfs.core.windows.net/", + "blob": "https://sto4445.blob.core.windows.net/", + "file": "https://sto4445.file.core.windows.net/", + "queue": "https://sto4445.queue.core.windows.net/", + "table": "https://sto4445.table.core.windows.net/", + "microsoftEndpoints": { + "web": "https://sto4445-microsoftrouting.web.core.windows.net/", + "dfs": "https://sto4445-microsoftrouting.dfs.core.windows.net/", + "blob": "https://sto4445-microsoftrouting.blob.core.windows.net/", + "file": "https://sto4445-microsoftrouting.file.core.windows.net/", + "queue": "https://sto4445-microsoftrouting.queue.core.windows.net/", + "table": "https://sto4445-microsoftrouting.table.core.windows.net/" + }, + "internetEndpoints": { + "web": "https://sto4445-internetrouting.web.core.windows.net/", + "dfs": "https://sto4445-internetrouting.dfs.core.windows.net/", + "blob": "https://sto4445-internetrouting.blob.core.windows.net/", + "file": "https://sto4445-internetrouting.file.core.windows.net/" + } + }, + "primaryLocation": "eastus2euap", + "provisioningState": "Succeeded", + "routingPreference": { + "routingChoice": "MicrosoftRouting", + "publishMicrosoftEndpoints": true, + "publishInternetEndpoints": true + }, + "encryption": { + "services": { + "file": { + "keyType": "Account", + "enabled": true, + "lastEnabledTime": "2019-12-11T20:49:31.7036140Z" + }, + "blob": { + "keyType": "Account", + "enabled": true, + "lastEnabledTime": "2019-12-11T20:49:31.7036140Z" + } + }, + "requireInfrastructureEncryption": false, + "keySource": "Microsoft.Storage" + }, + "secondaryLocation": "centraluseuap", + "statusOfPrimary": "available", + "statusOfSecondary": "available", + "supportsHttpsTrafficOnly": true + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "type": "Microsoft.Storage/storageAccounts" + } + }, + "202": {} + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountCreateObjectReplicationPolicyOnDestination.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountCreateObjectReplicationPolicyOnDestination.json new file mode 100644 index 000000000000..921811358da9 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountCreateObjectReplicationPolicyOnDestination.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res7687", + "accountName": "dst112", + "objectReplicationPolicyId": "default", + "api-version": "2020-08-01-preview", + "monitor": "true", + "properties": { + "properties": { + "sourceAccount": "src1122", + "destinationAccount": "dst112", + "rules": [ + { + "sourceContainer": "scont139", + "destinationContainer": "dcont139", + "filters": { + "prefixMatch": [ + "blobA", + "blobB" + ] + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7687/providers/Microsoft.Storage/storageAccounts/dst112/objectReplicationPolicies/2a20bb73-5717-4635-985a-5d4cf777438f", + "name": "2a20bb73-5717-4635-985a-5d4cf777438f", + "type": "Microsoft.Storage/storageAccounts/objectReplicationPolicies", + "properties": { + "policyId": "2a20bb73-5717-4635-985a-5d4cf777438f", + "sourceAccount": "src1122", + "destinationAccount": "dst112", + "rules": [ + { + "ruleId": "d5d18a48-8801-4554-aeaa-74faf65f5ef9", + "sourceContainer": "sourceContainer1", + "destinationContainer": "destContainer1", + "filters": { + "prefixMatch": [ + "blobA", + "blobB" + ] + } + } + ] + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountCreateObjectReplicationPolicyOnSource.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountCreateObjectReplicationPolicyOnSource.json new file mode 100644 index 000000000000..c651efb45d70 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountCreateObjectReplicationPolicyOnSource.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res7687", + "accountName": "src1122", + "objectReplicationPolicyId": "2a20bb73-5717-4635-985a-5d4cf777438f", + "api-version": "2020-08-01-preview", + "monitor": "true", + "properties": { + "properties": { + "sourceAccount": "src1122", + "destinationAccount": "dst112", + "rules": [ + { + "ruleId": "d5d18a48-8801-4554-aeaa-74faf65f5ef9", + "sourceContainer": "scont139", + "destinationContainer": "dcont139", + "filters": { + "prefixMatch": [ + "blobA", + "blobB" + ], + "minCreationTime": "2020-02-19T16:05:00Z" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7687/providers/Microsoft.Storage/storageAccounts/src1122/objectReplicationPolicies/2a20bb73-5717-4635-985a-5d4cf777438f", + "name": "2a20bb73-5717-4635-985a-5d4cf777438f", + "type": "Microsoft.Storage/storageAccounts/objectReplicationPolicies", + "properties": { + "policyId": "2a20bb73-5717-4635-985a-5d4cf777438f", + "enabledTime": "2019-06-08T03:01:55.7168089Z", + "sourceAccount": "src1122", + "destinationAccount": "dst112", + "rules": [ + { + "ruleId": "d5d18a48-8801-4554-aeaa-74faf65f5ef9", + "sourceContainer": "sourceContainer1", + "destinationContainer": "destContainer1", + "filters": { + "prefixMatch": [ + "blobA", + "blobB" + ], + "minCreationTime": "2020-02-19T16:05:00Z" + } + } + ] + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountCreateUserAssignedEncryptionIdentityWithCMK.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountCreateUserAssignedEncryptionIdentityWithCMK.json new file mode 100644 index 000000000000..77cb4e398ad5 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountCreateUserAssignedEncryptionIdentityWithCMK.json @@ -0,0 +1,118 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9101", + "accountName": "sto4445", + "api-version": "2021-02-01", + "parameters": { + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/{subscription-id}/resourceGroups/res9101/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{managed-identity-name}": {} + } + }, + "sku": { + "name": "Standard_LRS" + }, + "kind": "Storage", + "location": "eastus", + "properties": { + "encryption": { + "services": { + "file": { + "keyType": "Account", + "enabled": true + }, + "blob": { + "keyType": "Account", + "enabled": true + } + }, + "keyvaultproperties": { + "keyvaulturi": "https://myvault8569.vault.azure.net", + "keyname": "wrappingKey", + "keyversion": "" + }, + "keySource": "Microsoft.Keyvault", + "identity": { + "userAssignedIdentity": "/subscriptions/{subscription-id}/resourceGroups/res9101/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{managed-identity-name}" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "identity": { + "userAssignedIdentities": { + "/subscriptions/{subscription-id}/resourceGroups/res9101/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{managed-identity-name}": { + "principalId": "8d823284-1060-42a5-9ec4-ed3d831e24d7", + "clientId": "fbaa6278-1ecc-415c-819f-6e2058d3acb5" + } + }, + "type": "UserAssigned" + }, + "sku": { + "name": "Standard_LRS", + "tier": "Standard" + }, + "kind": "StorageV2", + "id": "/subscriptions/{subscription-id}/resourceGroups/res9101/providers/Microsoft.Storage/storageAccounts/sto4445", + "name": "sto4445", + "type": "Microsoft.Storage/storageAccounts", + "location": "eastus", + "tags": {}, + "properties": { + "privateEndpointConnections": [], + "networkAcls": { + "bypass": "AzureServices", + "virtualNetworkRules": [], + "ipRules": [], + "defaultAction": "Allow" + }, + "supportsHttpsTrafficOnly": true, + "encryption": { + "identity": { + "userAssignedIdentity": "/subscriptions/{subscription-id}/resourcegroups/res9101/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{managed-identity-name}" + }, + "keyvaultproperties": { + "keyvaulturi": "https://myvault8569.vault.azure.net", + "keyname": "wrappingKey", + "keyversion": "", + "currentVersionedKeyIdentifier": "https://myvault8569.vault.azure.net/keys/wrappingKey/0682afdd9c104f4285df20107e956cad", + "lastKeyRotationTimestamp": "2019-12-13T20:36:23.7023290Z" + }, + "services": { + "file": { + "keyType": "Account", + "enabled": true, + "lastEnabledTime": "2020-12-15T00:43:14.1739587Z" + }, + "blob": { + "keyType": "Account", + "enabled": true, + "lastEnabledTime": "2020-12-15T00:43:14.1739587Z" + } + }, + "keySource": "Microsoft.Keyvault" + }, + "accessTier": "Hot", + "provisioningState": "Succeeded", + "creationTime": "2020-12-15T00:43:14.0839093Z", + "primaryEndpoints": { + "web": "https://sto4445.web.core.windows.net/", + "dfs": "https://sto4445.dfs.core.windows.net/", + "blob": "https://sto4445.blob.core.windows.net/", + "file": "https://sto4445.file.core.windows.net/", + "queue": "https://sto4445.queue.core.windows.net/", + "table": "https://sto4445.table.core.windows.net/" + }, + "primaryLocation": "eastus", + "statusOfPrimary": "available" + } + } + }, + "202": {} + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountDelete.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountDelete.json new file mode 100644 index 000000000000..0231254b70e7 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4228", + "accountName": "sto2434", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountDeleteBlobInventoryPolicy.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountDeleteBlobInventoryPolicy.json new file mode 100644 index 000000000000..257bd12d0eb4 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountDeleteBlobInventoryPolicy.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res6977", + "accountName": "sto2527", + "blobInventoryPolicyName": "default", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountDeleteManagementPolicy.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountDeleteManagementPolicy.json new file mode 100644 index 000000000000..bc6a3dbaee8b --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountDeleteManagementPolicy.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res6977", + "accountName": "sto2527", + "managementPolicyName": "default", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountDeleteObjectReplicationPolicy.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountDeleteObjectReplicationPolicy.json new file mode 100644 index 000000000000..db976a80fec2 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountDeleteObjectReplicationPolicy.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res6977", + "accountName": "sto2527", + "objectReplicationPolicyId": "{objectReplicationPolicy-Id}", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountDeletePrivateEndpointConnection.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountDeletePrivateEndpointConnection.json new file mode 100644 index 000000000000..2cb4619cc9f1 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountDeletePrivateEndpointConnection.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res6977", + "accountName": "sto2527", + "privateEndpointConnectionName": "{privateEndpointConnectionName}", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountEnableAD.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountEnableAD.json new file mode 100644 index 000000000000..609ddf8a2eaa --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountEnableAD.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9407", + "accountName": "sto8596", + "api-version": "2020-08-01-preview", + "monitor": "true", + "parameters": { + "properties": { + "azureFilesIdentityBasedAuthentication": { + "directoryServiceOptions": "AD", + "activeDirectoryProperties": { + "domainName": "adtest.com", + "netBiosDomainName": "adtest.com", + "forestName": "adtest.com", + "domainGuid": "aebfc118-9fa9-4732-a21f-d98e41a77ae1", + "domainSid": "S-1-5-21-2400535526-2334094090-2402026252", + "azureStorageSid": "S-1-5-21-2400535526-2334094090-2402026252-0012" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9407/providers/Microsoft.Storage/storageAccounts/sto8596", + "kind": "Storage", + "location": "eastus2(stage)", + "name": "sto8596", + "properties": { + "creationTime": "2017-06-01T02:42:41.7633306Z", + "azureFilesIdentityBasedAuthentication": { + "directoryServiceOptions": "AD", + "activeDirectoryProperties": { + "domainName": "adtest.com", + "netBiosDomainName": "adtest.com", + "forestName": "adtest.com", + "domainGuid": "aebfc118-9fa9-4732-a21f-d98e41a77ae1", + "domainSid": "S-1-5-21-2400535526-2334094090-2402026252", + "azureStorageSid": "S-1-5-21-2400535526-2334094090-2402026252-0012" + } + }, + "primaryEndpoints": { + "web": "https://sto8596.web.core.windows.net/", + "dfs": "https://sto8596.dfs.core.windows.net/", + "blob": "https://sto8596.blob.core.windows.net/", + "file": "https://sto8596.file.core.windows.net/", + "queue": "https://sto8596.queue.core.windows.net/", + "table": "https://sto8596.table.core.windows.net/" + }, + "primaryLocation": "eastus2(stage)", + "provisioningState": "Succeeded", + "secondaryLocation": "northcentralus(stage)", + "statusOfPrimary": "available", + "statusOfSecondary": "available", + "supportsHttpsTrafficOnly": false + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "type": "Microsoft.Storage/storageAccounts" + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountEnableCMK.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountEnableCMK.json new file mode 100644 index 000000000000..cbc8b711edca --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountEnableCMK.json @@ -0,0 +1,94 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9407", + "accountName": "sto8596", + "api-version": "2020-08-01-preview", + "monitor": "true", + "parameters": { + "properties": { + "encryption": { + "services": { + "file": { + "keyType": "Account", + "enabled": true + }, + "blob": { + "keyType": "Account", + "enabled": true + } + }, + "keySource": "Microsoft.Keyvault", + "keyvaultproperties": { + "keyvaulturi": "https://myvault8569.vault.azure.net", + "keyname": "wrappingKey", + "keyversion": "" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9407/providers/Microsoft.Storage/storageAccounts/sto8596", + "identity": { + "principalId": "911871cc-ffd1-4fc4-ac11-7a316433ea66", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "kind": "Storage", + "location": "eastus2(stage)", + "name": "sto8596", + "properties": { + "creationTime": "2017-06-01T02:42:41.7633306Z", + "encryption": { + "services": { + "file": { + "keyType": "Account", + "enabled": true, + "lastEnabledTime": "2019-12-11T20:49:31.7036140Z" + }, + "blob": { + "keyType": "Account", + "enabled": true, + "lastEnabledTime": "2019-12-11T20:49:31.7036140Z" + } + }, + "keySource": "Microsoft.Keyvault", + "keyvaultproperties": { + "keyvaulturi": "https://myvault8569.vault.azure.net", + "keyname": "wrappingKey", + "keyversion": "", + "currentVersionedKeyIdentifier": "https://myvault8569.vault.azure.net/keys/wrappingKey/0682afdd9c104f4285df20107e956cad", + "lastKeyRotationTimestamp": "2019-12-13T20:36:23.7023290Z" + } + }, + "primaryEndpoints": { + "web": "https://sto8596.web.core.windows.net/", + "dfs": "https://sto8596.dfs.core.windows.net/", + "blob": "https://sto8596.blob.core.windows.net/", + "file": "https://sto8596.file.core.windows.net/", + "queue": "https://sto8596.queue.core.windows.net/", + "table": "https://sto8596.table.core.windows.net/" + }, + "primaryLocation": "eastus2(stage)", + "provisioningState": "Succeeded", + "secondaryLocation": "northcentralus(stage)", + "statusOfPrimary": "available", + "statusOfSecondary": "available", + "supportsHttpsTrafficOnly": false + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "type": "Microsoft.Storage/storageAccounts" + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountEncryptionScopeList.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountEncryptionScopeList.json new file mode 100644 index 000000000000..6a71efff520e --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountEncryptionScopeList.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "resource-group-name", + "accountName": "{storage-account-name}", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/resource-group-name/providers/Microsoft.Storage/storageAccounts/{storage-account-name}/encryptionScopes/scope-1", + "name": "scope-1", + "type": "Microsoft.Storage/storageAccounts/encryptionScopes", + "properties": { + "source": "Microsoft.Storage", + "state": "Enabled", + "creationTime": "2018-10-16T02:42:41.7633306Z", + "lastModifiedTime": "2018-10-16T02:42:41.7633306Z" + } + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/resource-group-name/providers/Microsoft.Storage/storageAccounts/{storage-account-name}/encryptionScopes/scope-2", + "name": "scope-2", + "type": "Microsoft.Storage/storageAccounts/encryptionScopes", + "properties": { + "source": "Microsoft.KeyVault", + "state": "Enabled", + "keyVaultProperties": { + "keyUri": "https://testvault.vault.core.windows.net/keys/key1/863425f1358359c" + }, + "creationTime": "2018-10-16T04:32:14.3355306Z", + "lastModifiedTime": "2018-10-17T06:23:14.4513306Z" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountFailover.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountFailover.json new file mode 100644 index 000000000000..d5633f6c53a5 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountFailover.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4228", + "accountName": "sto2434", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountGetBlobInventoryPolicy.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountGetBlobInventoryPolicy.json new file mode 100644 index 000000000000..15064e789144 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountGetBlobInventoryPolicy.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res7687", + "accountName": "sto9699", + "blobInventoryPolicyName": "default", + "api-version": "2021-04-01", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7687/providers/Microsoft.Storage/storageAccounts/sto9699/inventoryPolicies/default", + "name": "DefaultInventoryPolicy", + "type": "Microsoft.Storage/storageAccounts/inventoryPolicies", + "properties": { + "policy": { + "enabled": true, + "type": "Inventory", + "rules": [ + { + "enabled": true, + "name": "inventoryPolicyRule1", + "destination": "container1", + "definition": { + "filters": { + "blobTypes": [ + "blockBlob", + "appendBlob", + "pageBlob" + ], + "prefixMatch": [ + "inventoryprefix1", + "inventoryprefix2" + ], + "includeSnapshots": true, + "includeBlobVersions": true + }, + "format": "Csv", + "schedule": "Daily", + "objectType": "Blob", + "schemaFields": [ + "Name", + "Creation-Time", + "Last-Modified", + "Content-Length", + "Content-MD5", + "BlobType", + "AccessTier", + "AccessTierChangeTime", + "Snapshot", + "VersionId", + "IsCurrentVersion", + "Metadata" + ] + } + } + ] + }, + "lastModifiedTime": "2020-10-05T02:53:39.0932539Z" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountGetEncryptionScope.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountGetEncryptionScope.json new file mode 100644 index 000000000000..6ca8edf6f712 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountGetEncryptionScope.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "resource-group-name", + "accountName": "{storage-account-name}", + "encryptionScopeName": "{encryption-scope-name}", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/resource-group-name/providers/Microsoft.Storage/storageAccounts/{storage-account-name}/encryptionScopes/{encryption-scope-name}", + "name": "{encyrption-scope-name}", + "type": "Microsoft.Storage/storageAccounts/encryptionScopes", + "properties": { + "source": "Microsoft.Storage", + "state": "Enabled", + "creationTime": "2018-10-16T02:42:41.7633306Z", + "lastModifiedTime": "2018-10-16T02:42:41.7633306Z" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountGetManagementPolicy.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountGetManagementPolicy.json new file mode 100644 index 000000000000..59968b755c34 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountGetManagementPolicy.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res6977", + "accountName": "sto2527", + "managementPolicyName": "default", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.Storage/storageAccounts/sto288/managementPolicies/default", + "name": "DefaultManagementPolicy", + "type": "Microsoft.Storage/storageAccounts/managementPolicies", + "properties": { + "policy": { + "rules": [ + { + "enabled": true, + "name": "olcmtest", + "type": "Lifecycle", + "definition": { + "filters": { + "blobTypes": [ + "blockBlob" + ], + "prefixMatch": [ + "olcmtestcontainer" + ] + }, + "actions": { + "baseBlob": { + "tierToCool": { + "daysAfterModificationGreaterThan": 30 + }, + "tierToArchive": { + "daysAfterModificationGreaterThan": 90 + }, + "delete": { + "daysAfterModificationGreaterThan": 1000 + } + }, + "snapshot": { + "delete": { + "daysAfterCreationGreaterThan": 30 + } + } + } + } + } + ] + }, + "lastModifiedTime": "2018-06-08T03:01:55.7168089Z" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountGetObjectReplicationPolicy.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountGetObjectReplicationPolicy.json new file mode 100644 index 000000000000..4418839a88e8 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountGetObjectReplicationPolicy.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res6977", + "accountName": "sto2527", + "objectReplicationPolicyId": "{objectReplicationPolicy-Id}", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res6977/providers/Microsoft.Storage/storageAccounts/sto2527/objectReplicationPolicies/{objectReplicationPolicy-Id}", + "name": "{objectReplicationPolicy-Id}", + "type": "Microsoft.Storage/storageAccounts/objectReplicationPolicies", + "properties": { + "policyId": "{objectReplicationPolicy-Id}", + "enabledTime": "2019-06-08T03:01:55.7168089Z", + "sourceAccount": "sto2527", + "destinationAccount": "destAccount1", + "rules": [ + { + "sourceContainer": "sourceContainer1", + "destinationContainer": "destContainer1", + "filters": { + "prefixMatch": [ + "blobA", + "blobB" + ] + } + }, + { + "sourceContainer": "sourceContainer1", + "destinationContainer": "destContainer1", + "filters": { + "prefixMatch": [ + "blobC", + "blobD" + ] + } + } + ] + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountGetPrivateEndpointConnection.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountGetPrivateEndpointConnection.json new file mode 100644 index 000000000000..a75298ddc6a7 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountGetPrivateEndpointConnection.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res6977", + "accountName": "sto2527", + "privateEndpointConnectionName": "{privateEndpointConnectionName}", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.Storage/storageAccounts/sto288/privateEndpointConnections/{privateEndpointConnectionName}", + "name": "{privateEndpointConnectionName}", + "type": "Microsoft.Storage/storageAccounts/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.Network/privateEndpoints/petest01" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionRequired": "None" + } + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountGetProperties.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountGetProperties.json new file mode 100644 index 000000000000..dab942526d74 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountGetProperties.json @@ -0,0 +1,101 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9407", + "accountName": "sto8596", + "api-version": "2021-02-01", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9407/providers/Microsoft.Storage/storageAccounts/sto8596", + "kind": "Storage", + "location": "eastus2(stage)", + "name": "sto8596", + "properties": { + "keyCreationTime": { + "key1": "2021-03-18T04:42:22.4322836Z", + "key2": "2021-03-18T04:42:22.4322836Z" + }, + "geoReplicationStats": { + "status": "Live", + "lastSyncTime": "2018-10-30T00:25:34Z", + "canFailover": true + }, + "isHnsEnabled": true, + "creationTime": "2017-06-01T02:42:41.7633306Z", + "networkAcls": { + "bypass": "AzureServices", + "defaultAction": "Allow", + "ipRules": [], + "virtualNetworkRules": [], + "resourceAccessRules": [ + { + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "resourceId": "/subscriptions/a7e99807-abbf-4642-bdec-2c809a96a8bc/resourceGroups/res9407/providers/Microsoft.Synapse/workspaces/testworkspace" + } + ] + }, + "primaryEndpoints": { + "web": "https://sto8596.web.core.windows.net/", + "dfs": "https://sto8596.dfs.core.windows.net/", + "blob": "https://sto8596.blob.core.windows.net/", + "file": "https://sto8596.file.core.windows.net/", + "queue": "https://sto8596.queue.core.windows.net/", + "table": "https://sto8596.table.core.windows.net/", + "microsoftEndpoints": { + "web": "https://sto8596-microsoftrouting.web.core.windows.net/", + "dfs": "https://sto8596-microsoftrouting.dfs.core.windows.net/", + "blob": "https://sto8596-microsoftrouting.blob.core.windows.net/", + "file": "https://sto8596-microsoftrouting.file.core.windows.net/", + "queue": "https://sto8596-microsoftrouting.queue.core.windows.net/", + "table": "https://sto8596-microsoftrouting.table.core.windows.net/" + }, + "internetEndpoints": { + "web": "https://sto8596-internetrouting.web.core.windows.net/", + "dfs": "https://sto8596-internetrouting.dfs.core.windows.net/", + "blob": "https://sto8596-internetrouting.blob.core.windows.net/", + "file": "https://sto8596-internetrouting.file.core.windows.net/" + } + }, + "primaryLocation": "eastus2(stage)", + "provisioningState": "Succeeded", + "routingPreference": { + "routingChoice": "MicrosoftRouting", + "publishMicrosoftEndpoints": true, + "publishInternetEndpoints": true + }, + "encryption": { + "services": { + "file": { + "keyType": "Account", + "enabled": true, + "lastEnabledTime": "2019-12-11T20:49:31.7036140Z" + }, + "blob": { + "keyType": "Account", + "enabled": true, + "lastEnabledTime": "2019-12-11T20:49:31.7036140Z" + } + }, + "keySource": "Microsoft.Storage" + }, + "secondaryLocation": "northcentralus(stage)", + "statusOfPrimary": "available", + "statusOfSecondary": "available", + "supportsHttpsTrafficOnly": false + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "type": "Microsoft.Storage/storageAccounts" + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountGetPropertiesCMKEnabled.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountGetPropertiesCMKEnabled.json new file mode 100644 index 000000000000..8b8626bd2f10 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountGetPropertiesCMKEnabled.json @@ -0,0 +1,104 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9407", + "accountName": "sto8596", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9407/providers/Microsoft.Storage/storageAccounts/sto8596", + "identity": { + "principalId": "911871cc-ffd1-4fc4-ac11-7a316433ea66", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "kind": "Storage", + "location": "eastus2(stage)", + "name": "sto8596", + "properties": { + "geoReplicationStats": { + "status": "Live", + "lastSyncTime": "2018-10-30T00:25:34Z", + "canFailover": true + }, + "isHnsEnabled": true, + "creationTime": "2017-06-01T02:42:41.7633306Z", + "networkAcls": { + "bypass": "AzureServices", + "defaultAction": "Allow", + "ipRules": [], + "virtualNetworkRules": [], + "resourceAccessRules": [] + }, + "primaryEndpoints": { + "web": "https://sto8596.web.core.windows.net/", + "dfs": "https://sto8596.dfs.core.windows.net/", + "blob": "https://sto8596.blob.core.windows.net/", + "file": "https://sto8596.file.core.windows.net/", + "queue": "https://sto8596.queue.core.windows.net/", + "table": "https://sto8596.table.core.windows.net/", + "microsoftEndpoints": { + "web": "https://sto8596-microsoftrouting.web.core.windows.net/", + "dfs": "https://sto8596-microsoftrouting.dfs.core.windows.net/", + "blob": "https://sto8596-microsoftrouting.blob.core.windows.net/", + "file": "https://sto8596-microsoftrouting.file.core.windows.net/", + "queue": "https://sto8596-microsoftrouting.queue.core.windows.net/", + "table": "https://sto8596-microsoftrouting.table.core.windows.net/" + }, + "internetEndpoints": { + "web": "https://sto8596-internetrouting.web.core.windows.net/", + "dfs": "https://sto8596-internetrouting.dfs.core.windows.net/", + "blob": "https://sto8596-internetrouting.blob.core.windows.net/", + "file": "https://sto8596-internetrouting.file.core.windows.net/" + } + }, + "primaryLocation": "eastus2(stage)", + "provisioningState": "Succeeded", + "routingPreference": { + "routingChoice": "MicrosoftRouting", + "publishMicrosoftEndpoints": true, + "publishInternetEndpoints": true + }, + "encryption": { + "services": { + "file": { + "keyType": "Account", + "enabled": true, + "lastEnabledTime": "2019-12-11T20:49:31.7036140Z" + }, + "blob": { + "keyType": "Account", + "enabled": true, + "lastEnabledTime": "2019-12-11T20:49:31.7036140Z" + } + }, + "keySource": "Microsoft.Keyvault", + "keyvaultproperties": { + "keyvaulturi": "https://myvault8569.vault.azure.net", + "keyname": "wrappingKey", + "keyversion": "", + "currentVersionedKeyIdentifier": "https://myvault8569.vault.azure.net/keys/wrappingKey/0682afdd9c104f4285df20107e956cad", + "lastKeyRotationTimestamp": "2019-12-13T20:36:23.7023290Z" + } + }, + "secondaryLocation": "northcentralus(stage)", + "statusOfPrimary": "available", + "statusOfSecondary": "available", + "supportsHttpsTrafficOnly": false + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "type": "Microsoft.Storage/storageAccounts" + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountList.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountList.json new file mode 100644 index 000000000000..c0617cc2028f --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountList.json @@ -0,0 +1,313 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res2627/providers/Microsoft.Storage/storageAccounts/sto1125", + "kind": "Storage", + "location": "eastus", + "name": "sto1125", + "properties": { + "isHnsEnabled": true, + "creationTime": "2017-05-24T13:28:53.4540398Z", + "primaryEndpoints": { + "web": "https://sto1125.web.core.windows.net/", + "dfs": "https://sto1125.dfs.core.windows.net/", + "blob": "https://sto1125.blob.core.windows.net/", + "file": "https://sto1125.file.core.windows.net/", + "queue": "https://sto1125.queue.core.windows.net/", + "table": "https://sto1125.table.core.windows.net/", + "microsoftEndpoints": { + "web": "https://sto1125-microsoftrouting.web.core.windows.net/", + "dfs": "https://sto1125-microsoftrouting.dfs.core.windows.net/", + "blob": "https://sto1125-microsoftrouting.blob.core.windows.net/", + "file": "https://sto1125-microsoftrouting.file.core.windows.net/", + "queue": "https://sto1125-microsoftrouting.queue.core.windows.net/", + "table": "https://sto1125-microsoftrouting.table.core.windows.net/" + }, + "internetEndpoints": { + "web": "https://sto1125-internetrouting.web.core.windows.net/", + "dfs": "https://sto1125-internetrouting.dfs.core.windows.net/", + "blob": "https://sto1125-internetrouting.blob.core.windows.net/", + "file": "https://sto1125-internetrouting.file.core.windows.net/" + } + }, + "primaryLocation": "eastus", + "provisioningState": "Succeeded", + "routingPreference": { + "routingChoice": "MicrosoftRouting", + "publishMicrosoftEndpoints": true, + "publishInternetEndpoints": true + }, + "encryption": { + "services": { + "file": { + "keyType": "Account", + "enabled": true, + "lastEnabledTime": "2019-12-11T20:49:31.7036140Z" + }, + "blob": { + "keyType": "Account", + "enabled": true, + "lastEnabledTime": "2019-12-11T20:49:31.7036140Z" + } + }, + "keySource": "Microsoft.Storage" + }, + "secondaryLocation": "centraluseuap", + "statusOfPrimary": "available", + "statusOfSecondary": "available", + "supportsHttpsTrafficOnly": false + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "type": "Microsoft.Storage/storageAccounts" + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/testcmk3/providers/Microsoft.Storage/storageAccounts/sto3699", + "identity": { + "principalId": "356d057d-cba5-44dd-8a30-b2e547bc416b", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "kind": "Storage", + "location": "eastus", + "name": "sto3699", + "properties": { + "creationTime": "2017-05-24T10:06:30.6093014Z", + "primaryEndpoints": { + "blob": "https://sto3699.blob.core.windows.net/", + "file": "https://sto3699.file.core.windows.net/", + "queue": "https://sto3699.queue.core.windows.net/", + "table": "https://sto3699.table.core.windows.net/" + }, + "primaryLocation": "eastus", + "provisioningState": "Succeeded", + "secondaryLocation": "centraluseuap", + "statusOfPrimary": "available", + "statusOfSecondary": "available", + "supportsHttpsTrafficOnly": false + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "type": "Microsoft.Storage/storageAccounts" + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9407/providers/Microsoft.Storage/storageAccounts/sto8596", + "identity": { + "principalId": "911871cc-ffd1-4fc4-ac11-7a316433ea66", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "kind": "Storage", + "location": "eastus2(stage)", + "name": "sto8596", + "properties": { + "geoReplicationStats": { + "status": "Live", + "lastSyncTime": "2018-10-30T00:25:34Z", + "canFailover": true + }, + "isHnsEnabled": true, + "creationTime": "2017-06-01T02:42:41.7633306Z", + "networkAcls": { + "resourceAccessRules": [ + { + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "resourceId": "/subscriptions/a7e99807-abbf-4642-bdec-2c809a96a8bc/resourceGroups/res9407/providers/Microsoft.Synapse/workspaces/testworkspace" + } + ], + "bypass": "AzureServices", + "defaultAction": "Allow", + "ipRules": [], + "virtualNetworkRules": [] + }, + "primaryEndpoints": { + "web": "https://sto8596.web.core.windows.net/", + "dfs": "https://sto8596.dfs.core.windows.net/", + "blob": "https://sto8596.blob.core.windows.net/", + "file": "https://sto8596.file.core.windows.net/", + "queue": "https://sto8596.queue.core.windows.net/", + "table": "https://sto8596.table.core.windows.net/", + "microsoftEndpoints": { + "web": "https://sto8596-microsoftrouting.web.core.windows.net/", + "dfs": "https://sto8596-microsoftrouting.dfs.core.windows.net/", + "blob": "https://sto8596-microsoftrouting.blob.core.windows.net/", + "file": "https://sto8596-microsoftrouting.file.core.windows.net/", + "queue": "https://sto8596-microsoftrouting.queue.core.windows.net/", + "table": "https://sto8596-microsoftrouting.table.core.windows.net/" + }, + "internetEndpoints": { + "web": "https://sto8596-internetrouting.web.core.windows.net/", + "dfs": "https://sto8596-internetrouting.dfs.core.windows.net/", + "blob": "https://sto8596-internetrouting.blob.core.windows.net/", + "file": "https://sto8596-internetrouting.file.core.windows.net/" + } + }, + "primaryLocation": "eastus2(stage)", + "provisioningState": "Succeeded", + "routingPreference": { + "routingChoice": "MicrosoftRouting", + "publishMicrosoftEndpoints": true, + "publishInternetEndpoints": true + }, + "encryption": { + "services": { + "file": { + "keyType": "Account", + "enabled": true, + "lastEnabledTime": "2019-12-11T20:49:31.7036140Z" + }, + "blob": { + "keyType": "Account", + "enabled": true, + "lastEnabledTime": "2019-12-11T20:49:31.7036140Z" + } + }, + "keySource": "Microsoft.Keyvault", + "keyvaultproperties": { + "keyvaulturi": "https://myvault8569.vault.azure.net", + "keyname": "wrappingKey", + "keyversion": "", + "currentVersionedKeyIdentifier": "https://myvault8569.vault.azure.net/keys/wrappingKey/0682afdd9c104f4285df20107e956cad", + "lastKeyRotationTimestamp": "2019-12-13T20:36:23.7023290Z" + } + }, + "secondaryLocation": "northcentralus(stage)", + "statusOfPrimary": "available", + "statusOfSecondary": "available", + "supportsHttpsTrafficOnly": false + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "type": "Microsoft.Storage/storageAccounts" + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/testcmk3/providers/Microsoft.Storage/storageAccounts/sto6637", + "identity": { + "principalId": "911871cc-ffd1-4fc4-ac11-7a316433ea66", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "kind": "Storage", + "location": "eastus", + "name": "sto6637", + "properties": { + "creationTime": "2017-05-24T10:09:39.5625175Z", + "primaryEndpoints": { + "blob": "https://sto6637.blob.core.windows.net/", + "file": "https://sto6637.file.core.windows.net/", + "queue": "https://sto6637.queue.core.windows.net/", + "table": "https://sto6637.table.core.windows.net/" + }, + "primaryLocation": "eastus", + "provisioningState": "Succeeded", + "secondaryLocation": "centraluseuap", + "statusOfPrimary": "available", + "statusOfSecondary": "available", + "supportsHttpsTrafficOnly": false + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "type": "Microsoft.Storage/storageAccounts" + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res8186/providers/Microsoft.Storage/storageAccounts/sto834", + "kind": "Storage", + "location": "eastus", + "name": "sto834", + "properties": { + "creationTime": "2017-05-24T13:28:20.8686541Z", + "primaryEndpoints": { + "blob": "https://sto834.blob.core.windows.net/", + "file": "https://sto834.file.core.windows.net/", + "queue": "https://sto834.queue.core.windows.net/", + "table": "https://sto834.table.core.windows.net/" + }, + "primaryLocation": "eastus", + "provisioningState": "Succeeded", + "secondaryLocation": "centraluseuap", + "statusOfPrimary": "available", + "statusOfSecondary": "available", + "supportsHttpsTrafficOnly": false + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "type": "Microsoft.Storage/storageAccounts" + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/testcmk3/providers/Microsoft.Storage/storageAccounts/sto9174", + "identity": { + "principalId": "933e3ddf-1802-4a51-9469-18a33b576f88", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "kind": "Storage", + "location": "eastus", + "name": "sto9174", + "properties": { + "creationTime": "2017-05-24T09:46:19.6556989Z", + "primaryEndpoints": { + "blob": "https://sto9174.blob.core.windows.net/", + "file": "https://sto9174.file.core.windows.net/", + "queue": "https://sto9174.queue.core.windows.net/", + "table": "https://sto9174.table.core.windows.net/" + }, + "primaryLocation": "eastus", + "provisioningState": "Succeeded", + "secondaryLocation": "centraluseuap", + "statusOfPrimary": "available", + "statusOfSecondary": "available", + "supportsHttpsTrafficOnly": false + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "type": "Microsoft.Storage/storageAccounts" + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountListAccountSAS.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountListAccountSAS.json new file mode 100644 index 000000000000..eaa3cc5ab9de --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountListAccountSAS.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res7985", + "accountName": "sto8588", + "api-version": "2020-08-01-preview", + "monitor": "true", + "parameters": { + "signedServices": "b", + "signedResourceTypes": "s", + "signedPermission": "r", + "signedProtocol": "https,http", + "signedStart": "2017-05-24T10:42:03.1567373Z", + "signedExpiry": "2017-05-24T11:42:03.1567373Z", + "keyToSign": "key1" + } + }, + "responses": { + "200": { + "body": { + "accountSasToken": "sv=2015-04-05&ss=b&srt=s&sp=r&st=2017-05-24T10%3A42%3A03Z&se=2017-05-24T11%3A42%3A03Z&spr=https,http&sig=Z0I%2BEpM%2BPPlTC8ApfUf%2BcffO2aahMgZim3U0iArqsS0%3D" + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountListBlobInventoryPolicy.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountListBlobInventoryPolicy.json new file mode 100644 index 000000000000..c55eac11b9a4 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountListBlobInventoryPolicy.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res7687", + "accountName": "sto9699", + "api-version": "2020-04-01", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7687/providers/Microsoft.Storage/storageAccounts/sto9699/inventoryPolicies/default", + "name": "DefaultInventoryPolicy", + "type": "Microsoft.Storage/storageAccounts/inventoryPolicies", + "properties": { + "policy": { + "enabled": true, + "type": "Inventory", + "rules": [ + { + "enabled": true, + "name": "inventoryPolicyRule1", + "destination": "container1", + "definition": { + "filters": { + "blobTypes": [ + "blockBlob", + "appendBlob", + "pageBlob" + ], + "prefixMatch": [ + "inventoryprefix1", + "inventoryprefix2" + ], + "includeSnapshots": true, + "includeBlobVersions": true + }, + "format": "Csv", + "schedule": "Daily", + "objectType": "Blob", + "schemaFields": [ + "Name", + "Creation-Time", + "Last-Modified", + "Content-Length", + "Content-MD5", + "BlobType", + "AccessTier", + "AccessTierChangeTime", + "Snapshot", + "VersionId", + "IsCurrentVersion", + "Metadata" + ] + } + } + ] + }, + "lastModifiedTime": "2020-10-05T02:53:39.0932539Z" + } + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountListByResourceGroup.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountListByResourceGroup.json new file mode 100644 index 000000000000..0bda98930297 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountListByResourceGroup.json @@ -0,0 +1,78 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res6117", + "api-version": "2020-08-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res6117/providers/Microsoft.Storage/storageAccounts/sto4036", + "kind": "Storage", + "location": "eastus", + "name": "sto4036", + "properties": { + "isHnsEnabled": true, + "creationTime": "2017-05-24T13:24:47.818801Z", + "primaryEndpoints": { + "web": "https://sto4036.web.core.windows.net/", + "dfs": "https://sto4036.dfs.core.windows.net/", + "blob": "https://sto4036.blob.core.windows.net/", + "file": "https://sto4036.file.core.windows.net/", + "queue": "https://sto4036.queue.core.windows.net/", + "table": "https://sto4036.table.core.windows.net/" + }, + "primaryLocation": "eastus", + "provisioningState": "Succeeded", + "secondaryLocation": "centraluseuap", + "statusOfPrimary": "available", + "statusOfSecondary": "available", + "supportsHttpsTrafficOnly": false + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "type": "Microsoft.Storage/storageAccounts" + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res6117/providers/Microsoft.Storage/storageAccounts/sto4452", + "kind": "Storage", + "location": "eastus", + "name": "sto4452", + "properties": { + "creationTime": "2017-05-24T13:24:15.7068366Z", + "primaryEndpoints": { + "blob": "https://sto4452.blob.core.windows.net/", + "file": "https://sto4452.file.core.windows.net/", + "queue": "https://sto4452.queue.core.windows.net/", + "table": "https://sto4452.table.core.windows.net/" + }, + "primaryLocation": "eastus", + "provisioningState": "Succeeded", + "secondaryLocation": "centraluseuap", + "statusOfPrimary": "available", + "statusOfSecondary": "available", + "supportsHttpsTrafficOnly": false + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "type": "Microsoft.Storage/storageAccounts" + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountListKeys.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountListKeys.json new file mode 100644 index 000000000000..84ed6bf696cc --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountListKeys.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res418", + "accountName": "sto2220", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "keys": [ + { + "keyName": "key1", + "permissions": "Full", + "value": "" + }, + { + "keyName": "key2", + "permissions": "Full", + "value": "" + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountListLocationUsage.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountListLocationUsage.json new file mode 100644 index 000000000000..9504459e58f4 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountListLocationUsage.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "location": "eastus2(stage)", + "api-version": "2020-08-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "unit": "Count", + "currentValue": 55, + "limit": 250, + "name": { + "value": "StorageAccounts", + "localizedValue": "Storage Accounts" + } + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountListObjectReplicationPolicies.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountListObjectReplicationPolicies.json new file mode 100644 index 000000000000..8941162c69e2 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountListObjectReplicationPolicies.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res6977", + "accountName": "sto2527", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res6977/providers/Microsoft.Storage/storageAccounts/sto2527/objectReplicationPolicies/c6c23999-fd4e-433a-bcf9-1db69d27cd8a", + "name": "c6c23999-fd4e-433a-bcf9-1db69d27cd8a", + "type": "Microsoft.Storage/storageAccounts/objectReplicationPolicies", + "properties": { + "sourceAccount": "sto2527", + "destinationAccount": "destAccount1" + } + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9290/providers/Microsoft.Storage/storageAccounts/sto1590/objectReplicationPolicies/141d23dc-8958-4b48-b6e6-5a40bf1af116", + "name": "141d23dc-8958-4b48-b6e6-5a40bf1af116", + "type": "Microsoft.Storage/storageAccounts/objectReplicationPolicies", + "properties": { + "sourceAccount": "sto2527", + "destinationAccount": "destAccount2" + } + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountListPrivateEndpointConnections.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountListPrivateEndpointConnections.json new file mode 100644 index 000000000000..053af0095007 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountListPrivateEndpointConnections.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res6977", + "accountName": "sto2527", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.Storage/storageAccounts/sto288/privateEndpointConnections/{privateEndpointConnectionName}", + "name": "{privateEndpointConnectionName}", + "type": "Microsoft.Storage/storageAccounts/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.Network/privateEndpoints/petest01" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionRequired": "None" + } + } + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.Storage/storageAccounts/sto288/privateEndpointConnections/{privateEndpointConnectionName}", + "name": "{privateEndpointConnectionName}", + "type": "Microsoft.Storage/storageAccounts/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.Network/privateEndpoints/petest02" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionRequired": "None" + } + } + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountListPrivateLinkResources.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountListPrivateLinkResources.json new file mode 100644 index 000000000000..a44e440a5776 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountListPrivateLinkResources.json @@ -0,0 +1,101 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res6977", + "accountName": "sto2527", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res6977/providers/Microsoft.Storage/storageAccounts/sto2527/privateLinkResources/blob", + "name": "blob", + "type": "Microsoft.Storage/storageAccounts/privateLinkResources", + "properties": { + "groupId": "blob", + "requiredMembers": [ + "blob" + ], + "requiredZoneNames": [ + "privatelink.blob.core.windows.net" + ] + } + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res6977/providers/Microsoft.Storage/storageAccounts/sto2527/privateLinkResources/blob_secondary", + "name": "blob_secondary", + "type": "Microsoft.Storage/storageAccounts/privateLinkResources", + "properties": { + "groupId": "blob_secondary", + "requiredMembers": [ + "blob_secondary" + ], + "requiredZoneNames": [ + "privatelink.blob.core.windows.net" + ] + } + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res6977/providers/Microsoft.Storage/storageAccounts/sto2527/privateLinkResources/table", + "name": "table", + "type": "Microsoft.Storage/storageAccounts/privateLinkResources", + "properties": { + "groupId": "table", + "requiredMembers": [ + "table" + ], + "requiredZoneNames": [ + "privatelink.table.core.windows.net" + ] + } + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res6977/providers/Microsoft.Storage/storageAccounts/sto2527/privateLinkResources/table_secondary", + "name": "table_secondary", + "type": "Microsoft.Storage/storageAccounts/privateLinkResources", + "properties": { + "groupId": "table_secondary", + "requiredMembers": [ + "table_secondary" + ], + "requiredZoneNames": [ + "privatelink.table.core.windows.net" + ] + } + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res6977/providers/Microsoft.Storage/storageAccounts/sto2527/privateLinkResources/dfs", + "name": "dfs", + "type": "Microsoft.Storage/storageAccounts/privateLinkResources", + "properties": { + "groupId": "dfs", + "requiredMembers": [ + "dfs" + ], + "requiredZoneNames": [ + "privatelink.dfs.core.windows.net" + ] + } + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res6977/providers/Microsoft.Storage/storageAccounts/sto2527/privateLinkResources/dfs_secondary", + "name": "dfs_secondary", + "type": "Microsoft.Storage/storageAccounts/privateLinkResources", + "properties": { + "groupId": "dfs_secondary", + "requiredMembers": [ + "dfs_secondary" + ], + "requiredZoneNames": [ + "privatelink.dfs.core.windows.net" + ] + } + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountListServiceSAS.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountListServiceSAS.json new file mode 100644 index 000000000000..d850c4c45187 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountListServiceSAS.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res7439", + "accountName": "sto1299", + "api-version": "2020-08-01-preview", + "monitor": "true", + "parameters": { + "canonicalizedResource": "/blob/sto1299/music", + "signedResource": "c", + "signedPermission": "l", + "signedExpiry": "2017-05-24T11:32:48.8457197Z" + } + }, + "responses": { + "200": { + "body": { + "serviceSasToken": "sv=2015-04-05&sr=c&se=2017-05-24T11%3A32%3A48Z&sp=l&sig=PoF8yBUGixsjzwroLmw7vG3VbGz4KB2woZC2D4C2oio%3D" + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountPatchEncryptionScope.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountPatchEncryptionScope.json new file mode 100644 index 000000000000..6afa10cded92 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountPatchEncryptionScope.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "resource-group-name", + "accountName": "{storage-account-name}", + "encryptionScopeName": "{encryption-scope-name}", + "api-version": "2020-08-01-preview", + "monitor": "true", + "encryptionScope": { + "properties": { + "source": "Microsoft.KeyVault", + "keyVaultProperties": { + "keyUri": "https://testvault.vault.core.windows.net/keys/key1/863425f1358359c" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/resource-group-name/providers/Microsoft.Storage/storageAccounts/{storage-account-name}/encryptionScopes/{encryption-scope-name}", + "name": "{encryption-scope-name}", + "type": "Microsoft.Storage/storageAccounts/encryptionScopes", + "properties": { + "source": "Microsoft.KeyVault", + "state": "Enabled", + "keyVaultProperties": { + "keyUri": "https://testvault.vault.core.windows.net/keys/key1/863425f1358359c", + "currentVersionedKeyIdentifier": "https://testvault.vault.core.windows.net/keys/key1/863425f1358359c", + "lastKeyRotationTimestamp": "2019-12-13T20:36:23.7023290Z" + }, + "creationTime": "2018-10-16T02:42:41.7633306Z", + "lastModifiedTime": "2018-10-17T06:23:14.4513306Z" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountPutEncryptionScope.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountPutEncryptionScope.json new file mode 100644 index 000000000000..1dacabc55490 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountPutEncryptionScope.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "resource-group-name", + "accountName": "{storage-account-name}", + "encryptionScopeName": "{encryption-scope-name}", + "api-version": "2020-08-01-preview", + "monitor": "true", + "encryptionScope": {} + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/resource-group-name/providers/Microsoft.Storage/storageAccounts/{storage-account-name}/encryptionScopes/{encryption-scope-name}", + "name": "{encryption-scope-name}", + "type": "Microsoft.Storage/storageAccounts/encryptionScopes", + "properties": { + "source": "Microsoft.Storage", + "state": "Enabled", + "creationTime": "2018-10-16T02:42:41.7633306Z", + "lastModifiedTime": "2018-10-16T02:42:41.7633306Z" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/resource-group-name/providers/Microsoft.Storage/storageAccounts/{storage-account-name}/encryptionScopes/{encryption-scope-name}", + "name": "{encryption-scope-name}", + "type": "Microsoft.Storage/storageAccounts/encryptionScopes", + "properties": { + "source": "Microsoft.Storage", + "state": "Enabled", + "creationTime": "2018-10-16T02:42:41.7633306Z", + "lastModifiedTime": "2018-10-16T02:42:41.7633306Z" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountPutEncryptionScopeWithInfrastructureEncryption.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountPutEncryptionScopeWithInfrastructureEncryption.json new file mode 100644 index 000000000000..7c51087c0d76 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountPutEncryptionScopeWithInfrastructureEncryption.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "resource-group-name", + "accountName": "{storage-account-name}", + "encryptionScopeName": "{encryption-scope-name}", + "api-version": "2021-01-01", + "monitor": "true", + "encryptionScope": { + "properties": { + "requireInfrastructureEncryption": true + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/resource-group-name/providers/Microsoft.Storage/storageAccounts/{storage-account-name}/encryptionScopes/{encryption-scope-name}", + "name": "{encryption-scope-name}", + "type": "Microsoft.Storage/storageAccounts/encryptionScopes", + "properties": { + "requireInfrastructureEncryption": true, + "source": "Microsoft.Storage", + "state": "Enabled", + "creationTime": "2018-10-16T02:42:41.7633306Z", + "lastModifiedTime": "2018-10-16T02:42:41.7633306Z" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/resource-group-name/providers/Microsoft.Storage/storageAccounts/{storage-account-name}/encryptionScopes/{encryption-scope-name}", + "name": "{encryption-scope-name}", + "type": "Microsoft.Storage/storageAccounts/encryptionScopes", + "properties": { + "requireInfrastructureEncryption": true, + "source": "Microsoft.Storage", + "state": "Enabled", + "creationTime": "2018-10-16T02:42:41.7633306Z", + "lastModifiedTime": "2018-10-16T02:42:41.7633306Z" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountPutPrivateEndpointConnection.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountPutPrivateEndpointConnection.json new file mode 100644 index 000000000000..92a5d349a020 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountPutPrivateEndpointConnection.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res7687", + "accountName": "sto9699", + "privateEndpointConnectionName": "{privateEndpointConnectionName}", + "api-version": "2020-08-01-preview", + "monitor": "true", + "properties": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.Storage/storageAccounts/sto288/privateEndpointConnections/{privateEndpointConnectionName}", + "name": "{privateEndpointConnectionName}", + "type": "Microsoft.Storage/storageAccounts/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.Network/privateEndpoints/petest01" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionRequired": "None" + } + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountRegenerateKerbKey.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountRegenerateKerbKey.json new file mode 100644 index 000000000000..7286ba5fa8c1 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountRegenerateKerbKey.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4167", + "accountName": "sto3539", + "api-version": "2020-08-01-preview", + "monitor": "true", + "regenerateKey": { + "keyName": "kerb1" + } + }, + "responses": { + "200": { + "body": { + "keys": [ + { + "keyName": "key1", + "permissions": "Full", + "value": "" + }, + { + "keyName": "key2", + "permissions": "Full", + "value": "" + }, + { + "keyName": "kerb1", + "permissions": "Full", + "value": "" + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountRegenerateKey.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountRegenerateKey.json new file mode 100644 index 000000000000..fe15cf2ab9c4 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountRegenerateKey.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4167", + "accountName": "sto3539", + "api-version": "2020-08-01-preview", + "monitor": "true", + "regenerateKey": { + "keyName": "key2" + } + }, + "responses": { + "200": { + "body": { + "keys": [ + { + "keyName": "key1", + "permissions": "Full", + "value": "" + }, + { + "keyName": "key2", + "permissions": "Full", + "value": "" + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountRevokeUserDelegationKeys.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountRevokeUserDelegationKeys.json new file mode 100644 index 000000000000..0e5d655a4e97 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountRevokeUserDelegationKeys.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4167", + "accountName": "sto3539", + "api-version": "2020-08-01-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountSetBlobInventoryPolicy.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountSetBlobInventoryPolicy.json new file mode 100644 index 000000000000..b2bfbb588c53 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountSetBlobInventoryPolicy.json @@ -0,0 +1,154 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res7687", + "accountName": "sto9699", + "blobInventoryPolicyName": "default", + "api-version": "2021-04-01", + "monitor": "true", + "properties": { + "properties": { + "policy": { + "enabled": true, + "type": "Inventory", + "rules": [ + { + "enabled": true, + "name": "inventoryPolicyRule1", + "destination": "container1", + "definition": { + "filters": { + "blobTypes": [ + "blockBlob", + "appendBlob", + "pageBlob" + ], + "prefixMatch": [ + "inventoryprefix1", + "inventoryprefix2" + ], + "includeSnapshots": true, + "includeBlobVersions": true + }, + "format": "Csv", + "schedule": "Daily", + "objectType": "Blob", + "schemaFields": [ + "Name", + "Creation-Time", + "Last-Modified", + "Content-Length", + "Content-MD5", + "BlobType", + "AccessTier", + "AccessTierChangeTime", + "Snapshot", + "VersionId", + "IsCurrentVersion", + "Metadata" + ] + } + }, + { + "enabled": true, + "name": "inventoryPolicyRule2", + "definition": { + "format": "Parquet", + "schedule": "Weekly", + "objectType": "Container", + "schemaFields": [ + "Name", + "Last-Modified", + "Metadata", + "LeaseStatus", + "LeaseState", + "LeaseDuration", + "PublicAccess", + "HasImmutabilityPolicy", + "HasLegalHold" + ] + }, + "destination": "container2" + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7687/providers/Microsoft.Storage/storageAccounts/sto9699/inventoryPolicies/default", + "name": "DefaultInventoryPolicy", + "type": "Microsoft.Storage/storageAccounts/inventoryPolicies", + "properties": { + "policy": { + "enabled": true, + "type": "Inventory", + "rules": [ + { + "enabled": true, + "name": "inventoryPolicyRule1", + "destination": "container1", + "definition": { + "filters": { + "blobTypes": [ + "blockBlob", + "appendBlob", + "pageBlob" + ], + "prefixMatch": [ + "inventoryprefix1", + "inventoryprefix2" + ], + "includeSnapshots": true, + "includeBlobVersions": true + }, + "format": "Csv", + "schedule": "Daily", + "objectType": "Blob", + "schemaFields": [ + "Name", + "Creation-Time", + "Last-Modified", + "Content-Length", + "Content-MD5", + "BlobType", + "AccessTier", + "AccessTierChangeTime", + "Snapshot", + "VersionId", + "IsCurrentVersion", + "Metadata" + ] + } + }, + { + "enabled": true, + "name": "inventoryPolicyRule2", + "definition": { + "format": "Parquet", + "schedule": "Weekly", + "objectType": "Container", + "schemaFields": [ + "Name", + "Last-Modified", + "Metadata", + "LeaseStatus", + "LeaseState", + "LeaseDuration", + "PublicAccess", + "HasImmutabilityPolicy", + "HasLegalHold" + ] + }, + "destination": "container2" + } + ] + }, + "lastModifiedTime": "2020-10-05T02:53:39.0932539Z" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountSetManagementPolicy.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountSetManagementPolicy.json new file mode 100644 index 000000000000..485abbb70d31 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountSetManagementPolicy.json @@ -0,0 +1,180 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res7687", + "accountName": "sto9699", + "managementPolicyName": "default", + "api-version": "2020-08-01-preview", + "monitor": "true", + "properties": { + "properties": { + "policy": { + "rules": [ + { + "enabled": true, + "name": "olcmtest1", + "type": "Lifecycle", + "definition": { + "filters": { + "blobTypes": [ + "blockBlob" + ], + "prefixMatch": [ + "olcmtestcontainer1" + ] + }, + "actions": { + "baseBlob": { + "tierToCool": { + "daysAfterModificationGreaterThan": 30 + }, + "tierToArchive": { + "daysAfterModificationGreaterThan": 90 + }, + "delete": { + "daysAfterModificationGreaterThan": 1000 + } + }, + "snapshot": { + "delete": { + "daysAfterCreationGreaterThan": 30 + } + } + } + } + }, + { + "enabled": true, + "name": "olcmtest2", + "type": "Lifecycle", + "definition": { + "filters": { + "blobTypes": [ + "blockBlob" + ], + "prefixMatch": [ + "olcmtestcontainer2" + ], + "blobIndexMatch": [ + { + "name": "tag1", + "op": "==", + "value": "val1" + }, + { + "name": "tag2", + "op": "==", + "value": "val2" + } + ] + }, + "actions": { + "baseBlob": { + "tierToCool": { + "daysAfterModificationGreaterThan": 30 + }, + "tierToArchive": { + "daysAfterModificationGreaterThan": 90 + }, + "delete": { + "daysAfterModificationGreaterThan": 1000 + } + } + } + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.Storage/storageAccounts/sto288/managementPolicies/default", + "name": "DefaultManagementPolicy", + "type": "Microsoft.Storage/storageAccounts/managementPolicies", + "properties": { + "policy": { + "rules": [ + { + "enabled": true, + "name": "olcmtest1", + "type": "Lifecycle", + "definition": { + "filters": { + "blobTypes": [ + "blockBlob" + ], + "prefixMatch": [ + "olcmtestcontainer1" + ] + }, + "actions": { + "baseBlob": { + "tierToCool": { + "daysAfterModificationGreaterThan": 30 + }, + "tierToArchive": { + "daysAfterModificationGreaterThan": 90 + }, + "delete": { + "daysAfterModificationGreaterThan": 1000 + } + }, + "snapshot": { + "delete": { + "daysAfterCreationGreaterThan": 30 + } + } + } + } + }, + { + "enabled": true, + "name": "olcmtest2", + "type": "Lifecycle", + "definition": { + "filters": { + "blobTypes": [ + "blockBlob" + ], + "prefixMatch": [ + "olcmtestcontainer2" + ], + "blobIndexMatch": [ + { + "name": "tag1", + "op": "==", + "value": "val1" + }, + { + "name": "tag2", + "op": "==", + "value": "val2" + } + ] + }, + "actions": { + "baseBlob": { + "tierToCool": { + "daysAfterModificationGreaterThan": 30 + }, + "tierToArchive": { + "daysAfterModificationGreaterThan": 90 + }, + "delete": { + "daysAfterModificationGreaterThan": 1000 + } + } + } + } + } + ] + }, + "lastModifiedTime": "2018-06-08T02:53:39.0932539Z" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountSetManagementPolicyForBlockAndAppendBlobs.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountSetManagementPolicyForBlockAndAppendBlobs.json new file mode 100644 index 000000000000..6d52b949083c --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountSetManagementPolicyForBlockAndAppendBlobs.json @@ -0,0 +1,100 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res7687", + "accountName": "sto9699", + "managementPolicyName": "default", + "api-version": "2020-08-01-preview", + "monitor": "true", + "properties": { + "properties": { + "policy": { + "rules": [ + { + "enabled": true, + "name": "olcmtest1", + "type": "Lifecycle", + "definition": { + "filters": { + "blobTypes": [ + "blockBlob", + "appendBlob" + ], + "prefixMatch": [ + "olcmtestcontainer1" + ] + }, + "actions": { + "baseBlob": { + "delete": { + "daysAfterModificationGreaterThan": 90 + } + }, + "snapshot": { + "delete": { + "daysAfterCreationGreaterThan": 90 + } + }, + "version": { + "delete": { + "daysAfterCreationGreaterThan": 90 + } + } + } + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.Storage/storageAccounts/sto288/managementPolicies/default", + "name": "DefaultManagementPolicy", + "type": "Microsoft.Storage/storageAccounts/managementPolicies", + "properties": { + "policy": { + "rules": [ + { + "enabled": true, + "name": "olcmtest1", + "type": "Lifecycle", + "definition": { + "filters": { + "blobTypes": [ + "blockBlob", + "appendBlob" + ], + "prefixMatch": [ + "olcmtestcontainer1" + ] + }, + "actions": { + "baseBlob": { + "delete": { + "daysAfterModificationGreaterThan": 90 + } + }, + "snapshot": { + "delete": { + "daysAfterCreationGreaterThan": 90 + } + }, + "version": { + "delete": { + "daysAfterCreationGreaterThan": 90 + } + } + } + } + } + ] + }, + "lastModifiedTime": "2018-06-08T02:53:39.0932539Z" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountSetManagementPolicyWithSnapshotAndVersion.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountSetManagementPolicyWithSnapshotAndVersion.json new file mode 100644 index 000000000000..e9f98b33ca1d --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountSetManagementPolicyWithSnapshotAndVersion.json @@ -0,0 +1,134 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res7687", + "accountName": "sto9699", + "managementPolicyName": "default", + "api-version": "2020-08-01-preview", + "monitor": "true", + "properties": { + "properties": { + "policy": { + "rules": [ + { + "enabled": true, + "name": "olcmtest1", + "type": "Lifecycle", + "definition": { + "filters": { + "blobTypes": [ + "blockBlob" + ], + "prefixMatch": [ + "olcmtestcontainer1" + ] + }, + "actions": { + "baseBlob": { + "tierToCool": { + "daysAfterModificationGreaterThan": 30 + }, + "tierToArchive": { + "daysAfterModificationGreaterThan": 90 + }, + "delete": { + "daysAfterModificationGreaterThan": 1000 + } + }, + "snapshot": { + "tierToCool": { + "daysAfterCreationGreaterThan": 30 + }, + "tierToArchive": { + "daysAfterCreationGreaterThan": 90 + }, + "delete": { + "daysAfterCreationGreaterThan": 1000 + } + }, + "version": { + "tierToCool": { + "daysAfterCreationGreaterThan": 30 + }, + "tierToArchive": { + "daysAfterCreationGreaterThan": 90 + }, + "delete": { + "daysAfterCreationGreaterThan": 1000 + } + } + } + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.Storage/storageAccounts/sto288/managementPolicies/default", + "name": "DefaultManagementPolicy", + "type": "Microsoft.Storage/storageAccounts/managementPolicies", + "properties": { + "policy": { + "rules": [ + { + "enabled": true, + "name": "olcmtest1", + "type": "Lifecycle", + "definition": { + "filters": { + "blobTypes": [ + "blockBlob" + ], + "prefixMatch": [ + "olcmtestcontainer1" + ] + }, + "actions": { + "baseBlob": { + "tierToCool": { + "daysAfterModificationGreaterThan": 30 + }, + "tierToArchive": { + "daysAfterModificationGreaterThan": 90 + }, + "delete": { + "daysAfterModificationGreaterThan": 1000 + } + }, + "snapshot": { + "tierToCool": { + "daysAfterCreationGreaterThan": 30 + }, + "tierToArchive": { + "daysAfterCreationGreaterThan": 90 + }, + "delete": { + "daysAfterCreationGreaterThan": 1000 + } + }, + "version": { + "tierToCool": { + "daysAfterCreationGreaterThan": 30 + }, + "tierToArchive": { + "daysAfterCreationGreaterThan": 90 + }, + "delete": { + "daysAfterCreationGreaterThan": 1000 + } + } + } + } + } + ] + }, + "lastModifiedTime": "2018-06-08T02:53:39.0932539Z" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountSetManagementPolicy_LastAccessTimeBasedBlobActions.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountSetManagementPolicy_LastAccessTimeBasedBlobActions.json new file mode 100644 index 000000000000..52c40ceacc81 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountSetManagementPolicy_LastAccessTimeBasedBlobActions.json @@ -0,0 +1,102 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res7687", + "accountName": "sto9699", + "managementPolicyName": "default", + "api-version": "2020-08-01-preview", + "monitor": "true", + "properties": { + "properties": { + "policy": { + "rules": [ + { + "enabled": true, + "name": "olcmtest", + "type": "Lifecycle", + "definition": { + "filters": { + "blobTypes": [ + "blockBlob" + ], + "prefixMatch": [ + "olcmtestcontainer" + ] + }, + "actions": { + "baseBlob": { + "tierToCool": { + "daysAfterLastAccessTimeGreaterThan": 30 + }, + "tierToArchive": { + "daysAfterLastAccessTimeGreaterThan": 90 + }, + "delete": { + "daysAfterLastAccessTimeGreaterThan": 1000 + }, + "enableAutoTierToHotFromCool": true + }, + "snapshot": { + "delete": { + "daysAfterCreationGreaterThan": 30 + } + } + } + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.Storage/storageAccounts/sto288/managementPolicies/default", + "name": "DefaultManagementPolicy", + "type": "Microsoft.Storage/storageAccounts/managementPolicies", + "properties": { + "policy": { + "rules": [ + { + "enabled": true, + "name": "olcmtest", + "type": "Lifecycle", + "definition": { + "filters": { + "blobTypes": [ + "blockBlob" + ], + "prefixMatch": [ + "olcmtestcontainer" + ] + }, + "actions": { + "baseBlob": { + "tierToCool": { + "daysAfterLastAccessTimeGreaterThan": 30 + }, + "tierToArchive": { + "daysAfterLastAccessTimeGreaterThan": 90 + }, + "delete": { + "daysAfterLastAccessTimeGreaterThan": 1000 + }, + "enableAutoTierToHotFromCool": true + }, + "snapshot": { + "delete": { + "daysAfterCreationGreaterThan": 30 + } + } + } + } + } + ] + }, + "lastModifiedTime": "2018-06-08T02:53:39.0932539Z" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountUpdate.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountUpdate.json new file mode 100644 index 000000000000..15d0c651fc66 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountUpdate.json @@ -0,0 +1,147 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9407", + "accountName": "sto8596", + "api-version": "2021-02-01", + "monitor": "true", + "parameters": { + "properties": { + "keyPolicy": { + "keyExpirationPeriodInDays": 20 + }, + "sasPolicy": { + "sasExpirationPeriod": "1.15:59:59", + "expirationAction": "Log" + }, + "allowBlobPublicAccess": false, + "minimumTlsVersion": "TLS1_2", + "allowSharedKeyAccess": true, + "networkAcls": { + "resourceAccessRules": [ + { + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "resourceId": "/subscriptions/a7e99807-abbf-4642-bdec-2c809a96a8bc/resourceGroups/res9407/providers/Microsoft.Synapse/workspaces/testworkspace" + } + ], + "defaultAction": "Allow" + }, + "routingPreference": { + "routingChoice": "MicrosoftRouting", + "publishMicrosoftEndpoints": true, + "publishInternetEndpoints": true + }, + "encryption": { + "services": { + "file": { + "keyType": "Account", + "enabled": true + }, + "blob": { + "keyType": "Account", + "enabled": true + } + }, + "keySource": "Microsoft.Storage" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9407/providers/Microsoft.Storage/storageAccounts/sto8596", + "kind": "Storage", + "location": "eastus2(stage)", + "name": "sto8596", + "properties": { + "keyPolicy": { + "keyExpirationPeriodInDays": 20 + }, + "sasPolicy": { + "sasExpirationPeriod": "1.15:59:59", + "expirationAction": "Log" + }, + "keyCreationTime": { + "key1": "2021-03-18T04:42:22.4322836Z", + "key2": "2021-03-18T04:42:22.4322836Z" + }, + "isHnsEnabled": true, + "allowBlobPublicAccess": false, + "minimumTlsVersion": "TLS1_2", + "allowSharedKeyAccess": true, + "creationTime": "2017-06-01T02:42:41.7633306Z", + "networkAcls": { + "resourceAccessRules": [ + { + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "resourceId": "/subscriptions/a7e99807-abbf-4642-bdec-2c809a96a8bc/resourceGroups/res9407/providers/Microsoft.Synapse/workspaces/testworkspace" + } + ], + "bypass": "AzureServices", + "defaultAction": "Allow", + "ipRules": [], + "virtualNetworkRules": [] + }, + "primaryEndpoints": { + "web": "https://sto8596.web.core.windows.net/", + "dfs": "https://sto8596.dfs.core.windows.net/", + "blob": "https://sto8596.blob.core.windows.net/", + "file": "https://sto8596.file.core.windows.net/", + "queue": "https://sto8596.queue.core.windows.net/", + "table": "https://sto8596.table.core.windows.net/", + "microsoftEndpoints": { + "web": "https://sto8596-microsoftrouting.web.core.windows.net/", + "dfs": "https://sto8596-microsoftrouting.dfs.core.windows.net/", + "blob": "https://sto8596-microsoftrouting.blob.core.windows.net/", + "file": "https://sto8596-microsoftrouting.file.core.windows.net/", + "queue": "https://sto8596-microsoftrouting.queue.core.windows.net/", + "table": "https://sto8596-microsoftrouting.table.core.windows.net/" + }, + "internetEndpoints": { + "web": "https://sto8596-internetrouting.web.core.windows.net/", + "dfs": "https://sto8596-internetrouting.dfs.core.windows.net/", + "blob": "https://sto8596-internetrouting.blob.core.windows.net/", + "file": "https://sto8596-internetrouting.file.core.windows.net/" + } + }, + "primaryLocation": "eastus2(stage)", + "provisioningState": "Succeeded", + "routingPreference": { + "routingChoice": "MicrosoftRouting", + "publishMicrosoftEndpoints": true, + "publishInternetEndpoints": true + }, + "encryption": { + "services": { + "file": { + "keyType": "Account", + "enabled": true, + "lastEnabledTime": "2019-12-11T20:49:31.7036140Z" + }, + "blob": { + "keyType": "Account", + "enabled": true, + "lastEnabledTime": "2019-12-11T20:49:31.7036140Z" + } + }, + "keySource": "Microsoft.Storage" + }, + "secondaryLocation": "northcentralus(stage)", + "statusOfPrimary": "available", + "statusOfSecondary": "available", + "supportsHttpsTrafficOnly": false + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "type": "Microsoft.Storage/storageAccounts" + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountUpdateObjectReplicationPolicyOnDestination.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountUpdateObjectReplicationPolicyOnDestination.json new file mode 100644 index 000000000000..f900fa375fe1 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountUpdateObjectReplicationPolicyOnDestination.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res7687", + "accountName": "dst112", + "objectReplicationPolicyId": "2a20bb73-5717-4635-985a-5d4cf777438f", + "api-version": "2020-08-01-preview", + "monitor": "true", + "properties": { + "properties": { + "sourceAccount": "src1122", + "destinationAccount": "dst112", + "rules": [ + { + "ruleId": "d5d18a48-8801-4554-aeaa-74faf65f5ef9", + "sourceContainer": "scont139", + "destinationContainer": "dcont139", + "filters": { + "prefixMatch": [ + "blobA", + "blobB" + ] + } + }, + { + "sourceContainer": "scont179", + "destinationContainer": "dcont179" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7687/providers/Microsoft.Storage/storageAccounts/dst112/objectReplicationPolicies/2a20bb73-5717-4635-985a-5d4cf777438f", + "name": "2a20bb73-5717-4635-985a-5d4cf777438f", + "type": "Microsoft.Storage/storageAccounts/objectReplicationPolicies", + "properties": { + "policyId": "2a20bb73-5717-4635-985a-5d4cf777438f", + "sourceAccount": "src1122", + "destinationAccount": "dst112", + "rules": [ + { + "ruleId": "d5d18a48-8801-4554-aeaa-74faf65f5ef9", + "sourceContainer": "sourceContainer1", + "destinationContainer": "destContainer1", + "filters": { + "prefixMatch": [ + "blobA", + "blobB" + ] + } + }, + { + "ruleId": "cfbb4bc2-8b60-429f-b05a-d1e0942b33b2", + "sourceContainer": "scont179", + "destinationContainer": "dcont179" + } + ] + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountUpdateObjectReplicationPolicyOnSource.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountUpdateObjectReplicationPolicyOnSource.json new file mode 100644 index 000000000000..6ab1f1a9d4d1 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountUpdateObjectReplicationPolicyOnSource.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res7687", + "accountName": "src1122", + "objectReplicationPolicyId": "2a20bb73-5717-4635-985a-5d4cf777438f", + "api-version": "2020-08-01-preview", + "monitor": "true", + "properties": { + "properties": { + "sourceAccount": "src1122", + "destinationAccount": "dst112", + "rules": [ + { + "ruleId": "d5d18a48-8801-4554-aeaa-74faf65f5ef9", + "sourceContainer": "scont139", + "destinationContainer": "dcont139", + "filters": { + "prefixMatch": [ + "blobA", + "blobB" + ] + } + }, + { + "ruleId": "cfbb4bc2-8b60-429f-b05a-d1e0942b33b2", + "sourceContainer": "scont179", + "destinationContainer": "dcont179" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7687/providers/Microsoft.Storage/storageAccounts/src1122/objectReplicationPolicies/2a20bb73-5717-4635-985a-5d4cf777438f", + "name": "2a20bb73-5717-4635-985a-5d4cf777438f", + "type": "Microsoft.Storage/storageAccounts/objectReplicationPolicies", + "properties": { + "policyId": "2a20bb73-5717-4635-985a-5d4cf777438f", + "enabledTime": "2019-06-08T03:01:55.7168089Z", + "sourceAccount": "src1122", + "destinationAccount": "dst112", + "rules": [ + { + "ruleId": "d5d18a48-8801-4554-aeaa-74faf65f5ef9", + "sourceContainer": "sourceContainer1", + "destinationContainer": "destContainer1", + "filters": { + "prefixMatch": [ + "blobA", + "blobB" + ] + } + }, + { + "ruleId": "cfbb4bc2-8b60-429f-b05a-d1e0942b33b2", + "sourceContainer": "scont179", + "destinationContainer": "dcont179" + } + ] + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountUpdateUserAssignedEncryptionIdentityWithCMK.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountUpdateUserAssignedEncryptionIdentityWithCMK.json new file mode 100644 index 000000000000..1c35ea50b47b --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/StorageAccountUpdateUserAssignedEncryptionIdentityWithCMK.json @@ -0,0 +1,116 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9101", + "accountName": "sto4445", + "api-version": "2021-02-01", + "parameters": { + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/{subscription-id}/resourceGroups/res9101/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{managed-identity-name}": {} + } + }, + "sku": { + "name": "Standard_LRS" + }, + "kind": "Storage", + "properties": { + "encryption": { + "services": { + "file": { + "keyType": "Account", + "enabled": true + }, + "blob": { + "keyType": "Account", + "enabled": true + } + }, + "keyvaultproperties": { + "keyvaulturi": "https://myvault8569.vault.azure.net", + "keyname": "wrappingKey", + "keyversion": "" + }, + "keySource": "Microsoft.Keyvault", + "identity": { + "userAssignedIdentity": "/subscriptions/{subscription-id}/resourceGroups/res9101/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{managed-identity-name}" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "identity": { + "userAssignedIdentities": { + "/subscriptions/{subscription-id}/resourceGroups/res9101/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{managed-identity-name}": { + "principalId": "8d823284-1060-42a5-9ec4-ed3d831e24d7", + "clientId": "fbaa6278-1ecc-415c-819f-6e2058d3acb5" + } + }, + "type": "UserAssigned" + }, + "sku": { + "name": "Standard_LRS", + "tier": "Standard" + }, + "kind": "StorageV2", + "id": "/subscriptions/{subscription-id}/resourceGroups/res9101/providers/Microsoft.Storage/storageAccounts/sto4445", + "name": "sto4445", + "type": "Microsoft.Storage/storageAccounts", + "location": "eastus", + "tags": {}, + "properties": { + "privateEndpointConnections": [], + "networkAcls": { + "bypass": "AzureServices", + "virtualNetworkRules": [], + "ipRules": [], + "defaultAction": "Allow" + }, + "supportsHttpsTrafficOnly": true, + "encryption": { + "identity": { + "userAssignedIdentity": "/subscriptions/{subscription-id}/resourcegroups/res9101/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{managed-identity-name}" + }, + "keyvaultproperties": { + "keyvaulturi": "https://myvault8569.vault.azure.net", + "keyname": "wrappingKey", + "keyversion": "", + "currentVersionedKeyIdentifier": "https://myvault8569.vault.azure.net/keys/wrappingKey/0682afdd9c104f4285df20107e956cad", + "lastKeyRotationTimestamp": "2019-12-13T20:36:23.7023290Z" + }, + "services": { + "file": { + "keyType": "Account", + "enabled": true, + "lastEnabledTime": "2020-12-15T00:43:14.1739587Z" + }, + "blob": { + "keyType": "Account", + "enabled": true, + "lastEnabledTime": "2020-12-15T00:43:14.1739587Z" + } + }, + "keySource": "Microsoft.Keyvault" + }, + "accessTier": "Hot", + "provisioningState": "Succeeded", + "creationTime": "2020-12-15T00:43:14.0839093Z", + "primaryEndpoints": { + "web": "https://sto4445.web.core.windows.net/", + "dfs": "https://sto4445.dfs.core.windows.net/", + "blob": "https://sto4445.blob.core.windows.net/", + "file": "https://sto4445.file.core.windows.net/", + "queue": "https://sto4445.queue.core.windows.net/", + "table": "https://sto4445.table.core.windows.net/" + }, + "primaryLocation": "eastus", + "statusOfPrimary": "available" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/TableOperationDelete.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/TableOperationDelete.json new file mode 100644 index 000000000000..3349b784dd1c --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/TableOperationDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "tableName": "table6185", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "204": {} + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/TableOperationGet.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/TableOperationGet.json new file mode 100644 index 000000000000..438403979f30 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/TableOperationGet.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "tableName": "table6185", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/tableServices/default/tables/table6185", + "name": "table6185", + "type": "Microsoft.Storage/storageAccounts/tableServices/tables", + "properties": { + "tableName": "table6185" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/TableOperationList.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/TableOperationList.json new file mode 100644 index 000000000000..4e41c26c5639 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/TableOperationList.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9290", + "accountName": "sto328", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/tableServices/default/tables/table6185", + "name": "table6185", + "type": "Microsoft.Storage/storageAccounts/tableServices/tables", + "properties": { + "tableName": "table6185" + } + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/tableServices/default/tables/table6186", + "name": "table6186", + "type": "Microsoft.Storage/storageAccounts/tableServices/tables", + "properties": { + "tableName": "table6186" + } + } + ], + "nextLink": "https://sto1590endpoint/subscriptions/{subscription-id}/resourceGroups/res9290/providers/Microsoft.Storage/storageAccounts/sto328/tableServices/default/tables?api-version=2020-08-01-preview&NextTableName=1!40!bXl0YWJsZXNoYzU0OAEwMWQ2MTI5ZTJmYjVmODFh" + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/TableOperationPatch.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/TableOperationPatch.json new file mode 100644 index 000000000000..438403979f30 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/TableOperationPatch.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "tableName": "table6185", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/tableServices/default/tables/table6185", + "name": "table6185", + "type": "Microsoft.Storage/storageAccounts/tableServices/tables", + "properties": { + "tableName": "table6185" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/TableOperationPut.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/TableOperationPut.json new file mode 100644 index 000000000000..438403979f30 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/TableOperationPut.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "tableName": "table6185", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/tableServices/default/tables/table6185", + "name": "table6185", + "type": "Microsoft.Storage/storageAccounts/tableServices/tables", + "properties": { + "tableName": "table6185" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/TableServicesGet.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/TableServicesGet.json new file mode 100644 index 000000000000..1d3fd0c6657f --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/TableServicesGet.json @@ -0,0 +1,82 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4410", + "accountName": "sto8607", + "tableServiceName": "default", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res4410/providers/Microsoft.Storage/storageAccounts/sto8607/tableServices/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/tableServices", + "properties": { + "cors": { + "corsRules": [ + { + "allowedOrigins": [ + "http://www.contoso.com", + "http://www.fabrikam.com" + ], + "allowedMethods": [ + "GET", + "HEAD", + "POST", + "OPTIONS", + "MERGE", + "PUT" + ], + "maxAgeInSeconds": 100, + "exposedHeaders": [ + "x-ms-meta-*" + ], + "allowedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ] + }, + { + "allowedOrigins": [ + "*" + ], + "allowedMethods": [ + "GET" + ], + "maxAgeInSeconds": 2, + "exposedHeaders": [ + "*" + ], + "allowedHeaders": [ + "*" + ] + }, + { + "allowedOrigins": [ + "http://www.abc23.com", + "https://www.fabrikam.com/*" + ], + "allowedMethods": [ + "GET", + "PUT" + ], + "maxAgeInSeconds": 2000, + "exposedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ], + "allowedHeaders": [ + "x-ms-meta-12345675754564*" + ] + } + ] + } + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/TableServicesList.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/TableServicesList.json new file mode 100644 index 000000000000..16ea1333e941 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/TableServicesList.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9290", + "accountName": "sto1590", + "api-version": "2020-08-01-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res4410/providers/Microsoft.Storage/storageAccounts/sto8607/tableServices/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/tableServices", + "properties": { + "cors": { + "corsRules": [ + { + "allowedOrigins": [ + "http://www.contoso.com", + "http://www.fabrikam.com" + ], + "allowedMethods": [ + "GET", + "HEAD", + "POST", + "OPTIONS", + "MERGE", + "PUT" + ], + "maxAgeInSeconds": 100, + "exposedHeaders": [ + "x-ms-meta-*" + ], + "allowedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ] + }, + { + "allowedOrigins": [ + "*" + ], + "allowedMethods": [ + "GET" + ], + "maxAgeInSeconds": 2, + "exposedHeaders": [ + "*" + ], + "allowedHeaders": [ + "*" + ] + }, + { + "allowedOrigins": [ + "http://www.abc23.com", + "https://www.fabrikam.com/*" + ], + "allowedMethods": [ + "GET", + "PUT" + ], + "maxAgeInSeconds": 2000, + "exposedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ], + "allowedHeaders": [ + "x-ms-meta-12345675754564*" + ] + } + ] + } + } + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/TableServicesPut.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/TableServicesPut.json new file mode 100644 index 000000000000..4a1f0d2c93a3 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/examples/TableServicesPut.json @@ -0,0 +1,147 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4410", + "accountName": "sto8607", + "tableServiceName": "default", + "api-version": "2020-08-01-preview", + "monitor": "true", + "parameters": { + "properties": { + "cors": { + "corsRules": [ + { + "allowedOrigins": [ + "http://www.contoso.com", + "http://www.fabrikam.com" + ], + "allowedMethods": [ + "GET", + "HEAD", + "POST", + "OPTIONS", + "MERGE", + "PUT" + ], + "maxAgeInSeconds": 100, + "exposedHeaders": [ + "x-ms-meta-*" + ], + "allowedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ] + }, + { + "allowedOrigins": [ + "*" + ], + "allowedMethods": [ + "GET" + ], + "maxAgeInSeconds": 2, + "exposedHeaders": [ + "*" + ], + "allowedHeaders": [ + "*" + ] + }, + { + "allowedOrigins": [ + "http://www.abc23.com", + "https://www.fabrikam.com/*" + ], + "allowedMethods": [ + "GET", + "PUT" + ], + "maxAgeInSeconds": 2000, + "exposedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ], + "allowedHeaders": [ + "x-ms-meta-12345675754564*" + ] + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res4410/providers/Microsoft.Storage/storageAccounts/sto8607/tableServices/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/tableServices", + "properties": { + "cors": { + "corsRules": [ + { + "allowedOrigins": [ + "http://www.contoso.com", + "http://www.fabrikam.com" + ], + "allowedMethods": [ + "GET", + "HEAD", + "POST", + "OPTIONS", + "MERGE", + "PUT" + ], + "maxAgeInSeconds": 100, + "exposedHeaders": [ + "x-ms-meta-*" + ], + "allowedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ] + }, + { + "allowedOrigins": [ + "*" + ], + "allowedMethods": [ + "GET" + ], + "maxAgeInSeconds": 2, + "exposedHeaders": [ + "*" + ], + "allowedHeaders": [ + "*" + ] + }, + { + "allowedOrigins": [ + "http://www.abc23.com", + "https://www.fabrikam.com/*" + ], + "allowedMethods": [ + "GET", + "PUT" + ], + "maxAgeInSeconds": 2000, + "exposedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ], + "allowedHeaders": [ + "x-ms-meta-12345675754564*" + ] + } + ] + } + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/file.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/file.json new file mode 100644 index 000000000000..75131c008bf3 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/file.json @@ -0,0 +1,1076 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-04-01", + "title": "StorageManagementClient", + "description": "The Azure Storage Management API." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/fileServices": { + "get": { + "tags": [ + "FileService" + ], + "operationId": "FileServices_List", + "x-ms-examples": { + "ListFileServices": { + "$ref": "./examples/FileServicesList.json" + } + }, + "description": "List all file services in storage accounts", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- List file services operation completed successfully.", + "schema": { + "$ref": "#/definitions/FileServiceItems" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/fileServices/{FileServicesName}": { + "put": { + "tags": [ + "FileService" + ], + "operationId": "FileServices_SetServiceProperties", + "x-ms-examples": { + "PutFileServices": { + "$ref": "./examples/FileServicesPut.json" + }, + "PutFileServices_EnableSMBMultichannel": { + "$ref": "./examples/FileServicesPut_EnableSMBMultichannel.json" + }, + "PutFileServices_EnableSecureSmbFeatures": { + "$ref": "./examples/FileServicesPut_EnableSecureSmbFeatures.json" + } + }, + "description": "Sets the properties of file services in storage accounts, including CORS (Cross-Origin Resource Sharing) rules. ", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/FileServicesName" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FileServiceProperties" + }, + "description": "The properties of file services in storage accounts, including CORS (Cross-Origin Resource Sharing) rules." + } + ], + "responses": { + "200": { + "description": "OK -- Sets The properties of a storage account’s File service successfully.", + "schema": { + "$ref": "#/definitions/FileServiceProperties" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "get": { + "tags": [ + "FileService" + ], + "operationId": "FileServices_GetServiceProperties", + "x-ms-examples": { + "GetFileServices": { + "$ref": "./examples/FileServicesGet.json" + } + }, + "description": "Gets the properties of file services in storage accounts, including CORS (Cross-Origin Resource Sharing) rules.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/FileServicesName" + } + ], + "responses": { + "200": { + "description": "OK -- returned the properties of a storage account’s File service.", + "schema": { + "$ref": "#/definitions/FileServiceProperties" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/fileServices/default/shares": { + "get": { + "tags": [ + "FileShares" + ], + "operationId": "FileShares_List", + "x-ms-examples": { + "ListShares": { + "$ref": "./examples/FileSharesList.json" + }, + "ListDeletedShares": { + "$ref": "./examples/DeletedFileSharesList.json" + }, + "ListShareSnapshots": { + "$ref": "./examples/FileShareSnapshotsList.json" + } + }, + "description": "Lists all shares.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$maxpagesize", + "in": "query", + "type": "string", + "description": "Optional. Specified maximum number of shares that can be included in the list." + }, + { + "name": "$filter", + "in": "query", + "type": "string", + "description": "Optional. When specified, only share names starting with the filter will be listed." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Optional, used to expand the properties within share's properties. Valid values are: deleted, snapshots. Should be passed as a string with delimiter ','" + } + ], + "responses": { + "200": { + "description": "OK -- List Shares operation completed successfully.", + "schema": { + "$ref": "#/definitions/FileShareItems" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/fileServices/default/shares/{shareName}": { + "put": { + "tags": [ + "FileShares" + ], + "operationId": "FileShares_Create", + "x-ms-examples": { + "PutShares": { + "$ref": "./examples/FileSharesPut.json" + }, + "Create NFS Shares": { + "$ref": "./examples/FileSharesPut_NFS.json" + }, + "PutShares with Access Tier": { + "$ref": "./examples/FileSharesPut_AccessTier.json" + } + }, + "description": "Creates a new share under the specified account as described by request body. The share resource includes metadata and properties for that share. It does not include a list of the files contained by the share. ", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "#/parameters/ShareName" + }, + { + "name": "fileShare", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FileShare" + }, + "description": "Properties of the file share to create." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Optional, used to expand the properties within share's properties. Valid values are: snapshots. Should be passed as a string with delimiter ','" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Created -- Create Share operation completed successfully.", + "schema": { + "$ref": "#/definitions/FileShare" + } + }, + "200": { + "description": "OK -- The Share is already created.", + "schema": { + "$ref": "#/definitions/FileShare" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "patch": { + "tags": [ + "FileShares" + ], + "operationId": "FileShares_Update", + "x-ms-examples": { + "UpdateShares": { + "$ref": "./examples/FileSharesPatch.json" + }, + "UpdateShareAcls": { + "$ref": "./examples/FileShareAclsPatch.json" + } + }, + "description": "Updates share properties as specified in request body. Properties not mentioned in the request will not be changed. Update fails if the specified share does not already exist. ", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "#/parameters/ShareName" + }, + { + "name": "fileShare", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FileShare" + }, + "description": "Properties to update for the file share." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Update Share operation completed successfully.", + "schema": { + "$ref": "#/definitions/FileShare", + "description": "Properties of the updated file share." + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "get": { + "tags": [ + "FileShares" + ], + "operationId": "FileShares_Get", + "x-ms-examples": { + "GetShares": { + "$ref": "./examples/FileSharesGet.json" + }, + "GetShareStats": { + "$ref": "./examples/FileSharesGet_Stats.json" + } + }, + "description": "Gets properties of a specified share.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "#/parameters/ShareName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Optional, used to expand the properties within share's properties. Valid values are: stats. Should be passed as a string with delimiter ','." + }, + { + "name": "x-ms-snapshot", + "in": "header", + "required": false, + "type": "string", + "description": "Optional, used to retrieve properties of a snapshot." + } + ], + "responses": { + "200": { + "description": "OK -- Get Share operation completed successfully.", + "schema": { + "$ref": "#/definitions/FileShare" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "FileShares" + ], + "operationId": "FileShares_Delete", + "x-ms-examples": { + "DeleteShares": { + "$ref": "./examples/FileSharesDelete.json" + } + }, + "description": "Deletes specified share under its account.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "#/parameters/ShareName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "x-ms-snapshot", + "in": "header", + "required": false, + "type": "string", + "description": "Optional, used to delete a snapshot." + }, + { + "name": "$include", + "in": "query", + "required": false, + "type": "string", + "description": "Optional. Valid values are: snapshots, leased-snapshots, none. The default value is snapshots. For 'snapshots', the file share is deleted including all of its file share snapshots. If the file share contains leased-snapshots, the deletion fails. For 'leased-snapshots', the file share is deleted included all of its file share snapshots (leased/unleased). For 'none', the file share is deleted if it has no share snapshots. If the file share contains any snapshots (leased or unleased), the deletion fails." + } + ], + "responses": { + "200": { + "description": "OK -- Delete Share operation completed successfully." + }, + "204": { + "description": "No Content -- The Share not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/fileServices/default/shares/{shareName}/restore": { + "post": { + "tags": [ + "FileShares" + ], + "operationId": "FileShares_Restore", + "x-ms-examples": { + "RestoreShares": { + "$ref": "./examples/FileSharesRestore.json" + } + }, + "description": "Restore a file share within a valid retention days if share soft delete is enabled", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "#/parameters/ShareName" + }, + { + "name": "deletedShare", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DeletedShare" + } + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- The Share is successfully restored." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/fileServices/default/shares/{shareName}/lease": { + "post": { + "tags": [ + "FileShares" + ], + "operationId": "FileShares_Lease", + "x-ms-examples": { + "Acquire a lease on a share": { + "$ref": "./examples/FileSharesLease_Acquire.json" + }, + "Break a lease on a share": { + "$ref": "./examples/FileSharesLease_Break.json" + } + }, + "description": "The Lease Share operation establishes and manages a lock on a share for delete operations. The lock duration can be 15 to 60 seconds, or can be infinite.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "#/parameters/ShareName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "parameters", + "in": "body", + "schema": { + "$ref": "#/definitions/LeaseShareRequest" + }, + "description": "Lease Share request body." + }, + { + "name": "x-ms-snapshot", + "in": "header", + "required": false, + "type": "string", + "description": "Optional. Specify the snapshot time to lease a snapshot." + } + ], + "responses": { + "200": { + "description": "OK -- Lease Share operation completed successfully.", + "schema": { + "$ref": "#/definitions/LeaseShareResponse" + }, + "headers": { + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Match or If-None-Match headers.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "FileServiceItems": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/FileServiceProperties" + }, + "description": "List of file services returned.", + "readOnly": true + } + } + }, + "FileServiceProperties": { + "properties": { + "properties": { + "properties": { + "cors": { + "$ref": "./common.json#/definitions/CorsRules", + "description": "Specifies CORS rules for the File service. You can include up to five CorsRule elements in the request. If no CorsRule elements are included in the request body, all CORS rules will be deleted, and CORS will be disabled for the File service." + }, + "shareDeleteRetentionPolicy": { + "$ref": "./common.json#/definitions/DeleteRetentionPolicy", + "description": "The file service properties for share soft delete." + }, + "protocolSettings": { + "$ref": "#/definitions/ProtocolSettings", + "description": "Protocol settings for file service" + } + }, + "x-ms-client-flatten": true, + "x-ms-client-name": "FileServiceProperties", + "description": "The properties of File services in storage account." + }, + "sku": { + "$ref": "./common.json#/definitions/Sku", + "readOnly": true, + "description": "Sku name and tier." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "description": "The properties of File services in storage account." + }, + "ProtocolSettings": { + "properties": { + "smb": { + "$ref": "#/definitions/SmbSetting", + "description": "Setting for SMB protocol" + } + }, + "description": "Protocol settings for file service" + }, + "SmbSetting": { + "properties": { + "multichannel": { + "$ref": "#/definitions/Multichannel", + "description": "Multichannel setting. Applies to Premium FileStorage only." + }, + "versions": { + "type": "string", + "description": "SMB protocol versions supported by server. Valid values are SMB2.1, SMB3.0, SMB3.1.1. Should be passed as a string with delimiter ';'." + }, + "authenticationMethods": { + "type": "string", + "description": "SMB authentication methods supported by server. Valid values are NTLMv2, Kerberos. Should be passed as a string with delimiter ';'." + }, + "kerberosTicketEncryption": { + "type": "string", + "description": "Kerberos ticket encryption supported by server. Valid values are RC4-HMAC, AES-256. Should be passed as a string with delimiter ';'" + }, + "channelEncryption": { + "type": "string", + "description": "SMB channel encryption supported by server. Valid values are AES-128-CCM, AES-128-GCM, AES-256-GCM. Should be passed as a string with delimiter ';'." + } + }, + "description": "Setting for SMB protocol" + }, + "Multichannel": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Indicates whether multichannel is enabled" + } + }, + "description": "Multichannel setting. Applies to Premium FileStorage only." + }, + "FileShare": { + "properties": { + "properties": { + "$ref": "#/definitions/FileShareProperties", + "x-ms-client-flatten": true, + "x-ms-client-name": "FileShareProperties", + "description": "Properties of the file share." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/AzureEntityResource" + } + ], + "description": "Properties of the file share, including Id, resource name, resource type, Etag." + }, + "DeletedShare": { + "properties": { + "deletedShareName": { + "type": "string", + "description": "Required. Identify the name of the deleted share that will be restored." + }, + "deletedShareVersion": { + "type": "string", + "description": "Required. Identify the version of the deleted share that will be restored." + } + }, + "required": [ + "deletedShareName", + "deletedShareVersion" + ], + "description": "The deleted share to be restored." + }, + "FileShareItem": { + "properties": { + "properties": { + "$ref": "#/definitions/FileShareProperties", + "x-ms-client-flatten": true, + "description": "The file share properties be listed out." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/AzureEntityResource" + } + ], + "description": "The file share properties be listed out." + }, + "FileShareItems": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/FileShareItem" + }, + "description": "List of file shares returned.", + "readOnly": true + }, + "nextLink": { + "type": "string", + "description": "Request URL that can be used to query next page of shares. Returned when total number of requested shares exceed maximum page size.", + "readOnly": true + } + }, + "description": "Response schema. Contains list of shares returned, and if paging is requested or required, a URL to next page of shares." + }, + "FileShareProperties": { + "properties": { + "lastModifiedTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "Returns the date and time the share was last modified." + }, + "metadata": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "A name-value pair to associate with the share as metadata." + }, + "shareQuota": { + "type": "integer", + "minimum": 1, + "maximum": 102400, + "description": "The maximum size of the share, in gigabytes. Must be greater than 0, and less than or equal to 5TB (5120). For Large File Shares, the maximum size is 102400." + }, + "enabledProtocols": { + "type": "string", + "enum": [ + "SMB", + "NFS" + ], + "x-ms-enum": { + "name": "EnabledProtocols", + "modelAsString": true + }, + "description": "The authentication protocol that is used for the file share. Can only be specified when creating a share.", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "rootSquash": { + "type": "string", + "enum": [ + "NoRootSquash", + "RootSquash", + "AllSquash" + ], + "x-ms-enum": { + "name": "RootSquashType", + "modelAsString": true + }, + "description": "The property is for NFS share only. The default is NoRootSquash." + }, + "version": { + "type": "string", + "readOnly": true, + "description": "The version of the share." + }, + "deleted": { + "type": "boolean", + "readOnly": true, + "description": "Indicates whether the share was deleted." + }, + "deletedTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "The deleted time if the share was deleted." + }, + "remainingRetentionDays": { + "type": "integer", + "readOnly": true, + "description": "Remaining retention days for share that was soft deleted." + }, + "accessTier": { + "type": "string", + "enum": [ + "TransactionOptimized", + "Hot", + "Cool", + "Premium" + ], + "x-ms-enum": { + "name": "ShareAccessTier", + "modelAsString": true + }, + "description": "Access tier for specific share. GpV2 account can choose between TransactionOptimized (default), Hot, and Cool. FileStorage account can choose Premium." + }, + "accessTierChangeTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "Indicates the last modification time for share access tier." + }, + "accessTierStatus": { + "type": "string", + "readOnly": true, + "description": "Indicates if there is a pending transition for access tier." + }, + "shareUsageBytes": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The approximate size of the data stored on the share. Note that this value may not include all recently created or recently resized files." + }, + "leaseStatus": { + "type": "string", + "readOnly": true, + "enum": [ + "Locked", + "Unlocked" + ], + "x-ms-enum": { + "name": "LeaseStatus", + "modelAsString": true + }, + "description": "The lease status of the share." + }, + "leaseState": { + "type": "string", + "readOnly": true, + "enum": [ + "Available", + "Leased", + "Expired", + "Breaking", + "Broken" + ], + "x-ms-enum": { + "name": "LeaseState", + "modelAsString": true + }, + "description": "Lease state of the share." + }, + "leaseDuration": { + "type": "string", + "readOnly": true, + "enum": [ + "Infinite", + "Fixed" + ], + "x-ms-enum": { + "name": "LeaseDuration", + "modelAsString": true + }, + "description": "Specifies whether the lease on a share is of infinite or fixed duration, only when the share is leased." + }, + "signedIdentifiers": { + "type": "array", + "items": { + "$ref": "#/definitions/SignedIdentifier" + }, + "description": "List of stored access policies specified on the share." + }, + "snapshotTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "Creation time of share snapshot returned in the response of list shares with expand param \"snapshots\"." + } + }, + "description": "The properties of the file share." + }, + "LeaseShareRequest": { + "properties": { + "action": { + "type": "string", + "enum": [ + "Acquire", + "Renew", + "Change", + "Release", + "Break" + ], + "x-ms-enum": { + "name": "LeaseShareAction", + "modelAsString": true + }, + "description": "Specifies the lease action. Can be one of the available actions." + }, + "leaseId": { + "type": "string", + "description": "Identifies the lease. Can be specified in any valid GUID string format." + }, + "breakPeriod": { + "type": "integer", + "format": "int32", + "description": "Optional. For a break action, proposed duration the lease should continue before it is broken, in seconds, between 0 and 60." + }, + "leaseDuration": { + "type": "integer", + "format": "int32", + "description": "Required for acquire. Specifies the duration of the lease, in seconds, or negative one (-1) for a lease that never expires." + }, + "proposedLeaseId": { + "type": "string", + "description": "Optional for acquire, required for change. Proposed lease ID, in a GUID string format." + } + }, + "required": [ + "action" + ], + "description": "Lease Share request schema." + }, + "LeaseShareResponse": { + "properties": { + "leaseId": { + "type": "string", + "description": "Returned unique lease ID that must be included with any request to delete the share, or to renew, change, or release the lease." + }, + "leaseTimeSeconds": { + "type": "string", + "description": "Approximate time remaining in the lease period, in seconds." + } + }, + "description": "Lease Share response schema." + }, + "SignedIdentifier": { + "properties": { + "id": { + "type": "string", + "description": "An unique identifier of the stored access policy." + }, + "accessPolicy": { + "$ref": "#/definitions/AccessPolicy", + "description": "Access policy" + } + } + }, + "AccessPolicy": { + "properties": { + "startTime": { + "type": "string", + "format": "date-time", + "description": "Start time of the access policy" + }, + "expiryTime": { + "type": "string", + "format": "date-time", + "description": "Expiry time of the access policy" + }, + "permission": { + "type": "string", + "description": "List of abbreviated permissions." + } + } + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorBody" + } + }, + "description": "An error response from the Storage service." + }, + "CloudErrorBody": { + "x-ms-external": true, + "properties": { + "code": { + "type": "string", + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "type": "string", + "description": "A message describing the error, intended to be suitable for display in a user interface." + }, + "target": { + "type": "string", + "description": "The target of the particular error. For example, the name of the property in error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/CloudErrorBody" + }, + "description": "A list of additional details about the error." + } + }, + "description": "An error response from the Storage service." + } + }, + "parameters": { + "FileServicesName": { + "name": "FileServicesName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the file Service within the specified storage account. File Service Name must be \"default\"", + "enum": [ + "default" + ], + "x-ms-parameter-location": "method" + }, + "ShareName": { + "name": "shareName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the file share within the specified storage account. File share names must be between 3 and 63 characters in length and use numbers, lower-case letters and dash (-) only. Every dash (-) character must be immediately preceded and followed by a letter or number.", + "maxLength": 63, + "minLength": 3, + "x-ms-parameter-location": "method" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/privatelinks.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/privatelinks.json new file mode 100644 index 000000000000..69228cc6d982 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/privatelinks.json @@ -0,0 +1,174 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-04-01", + "title": "Common types" + }, + "paths": {}, + "definitions": { + "PrivateEndpoint": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ARM identifier for Private Endpoint" + } + }, + "description": "The Private Endpoint resource." + }, + "PrivateEndpointConnection": { + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "x-ms-client-flatten": true, + "description": "Resource properties." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "description": "The Private Endpoint Connection resource." + }, + "PrivateEndpointConnectionProperties": { + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpoint", + "description": "The resource of private end point." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionState", + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "provisioningState": { + "$ref": "#/definitions/PrivateEndpointConnectionProvisioningState", + "description": "The provisioning state of the private endpoint connection resource." + } + }, + "required": [ + "privateLinkServiceConnectionState" + ], + "description": "Properties of the PrivateEndpointConnectProperties." + }, + "PrivateLinkServiceConnectionState": { + "properties": { + "status": { + "$ref": "#/definitions/PrivateEndpointServiceConnectionStatus", + "description": "Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service." + }, + "description": { + "type": "string", + "description": "The reason for approval/rejection of the connection." + }, + "actionRequired": { + "type": "string", + "description": "A message indicating if changes on the service provider require any updates on the consumer." + } + }, + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "PrivateEndpointServiceConnectionStatus": { + "type": "string", + "description": "The private endpoint connection status.", + "enum": [ + "Pending", + "Approved", + "Rejected" + ], + "x-ms-enum": { + "name": "PrivateEndpointServiceConnectionStatus", + "modelAsString": true + } + }, + "PrivateEndpointConnectionProvisioningState": { + "type": "string", + "readOnly": true, + "description": "The current provisioning state.", + "enum": [ + "Succeeded", + "Creating", + "Deleting", + "Failed" + ], + "x-ms-enum": { + "name": "PrivateEndpointConnectionProvisioningState", + "modelAsString": true + } + }, + "PrivateLinkResource": { + "properties": { + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "description": "A private link resource" + }, + "PrivateLinkResourceProperties": { + "properties": { + "groupId": { + "description": "The private link resource group id.", + "type": "string", + "readOnly": true + }, + "requiredMembers": { + "description": "The private link resource required member names.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "requiredZoneNames": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The private link resource Private link DNS zone name." + } + }, + "description": "Properties of a private link resource." + }, + "PrivateEndpointConnectionListResult": { + "properties": { + "value": { + "type": "array", + "description": "Array of private endpoint connections", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + } + }, + "description": "List of private endpoint connection associated with the specified storage account" + }, + "PrivateLinkResourceListResult": { + "properties": { + "value": { + "type": "array", + "description": "Array of private link resources", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + } + } + }, + "description": "A list of private link resources" + } + }, + "parameters": { + "PrivateEndpointConnectionName": { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint connection associated with the Azure resource", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/queue.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/queue.json new file mode 100644 index 000000000000..0f065ac3a558 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/queue.json @@ -0,0 +1,560 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-04-01", + "title": "StorageManagementClient", + "description": "The Azure Storage Management API." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/queueServices": { + "get": { + "tags": [ + "QueueServiceProperties" + ], + "operationId": "QueueServices_List", + "x-ms-examples": { + "QueueServicesList": { + "$ref": "./examples/QueueServicesList.json" + } + }, + "description": "List all queue services for the storage account", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- returned the properties of a storage account’s Queue service.", + "schema": { + "$ref": "#/definitions/ListQueueServices" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./file.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/queueServices/{queueServiceName}": { + "put": { + "tags": [ + "QueueServiceProperties" + ], + "operationId": "QueueServices_SetServiceProperties", + "x-ms-examples": { + "QueueServicesPut": { + "$ref": "./examples/QueueServicesPut.json" + } + }, + "description": "Sets the properties of a storage account’s Queue service, including properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) rules. ", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/QueueServiceName" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/QueueServiceProperties" + }, + "description": "The properties of a storage account’s Queue service, only properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) rules can be specified." + } + ], + "responses": { + "200": { + "description": "OK -- Sets The properties of a storage account’s Queue service successfully.", + "schema": { + "$ref": "#/definitions/QueueServiceProperties" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./file.json#/definitions/CloudError" + } + } + } + }, + "get": { + "tags": [ + "QueueServiceProperties" + ], + "operationId": "QueueServices_GetServiceProperties", + "x-ms-examples": { + "QueueServicesGet": { + "$ref": "./examples/QueueServicesGet.json" + } + }, + "description": "Gets the properties of a storage account’s Queue service, including properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) rules.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/QueueServiceName" + } + ], + "responses": { + "200": { + "description": "OK -- returned the properties of a storage account’s Queue service.", + "schema": { + "$ref": "#/definitions/QueueServiceProperties" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./file.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/queueServices/default/queues/{queueName}": { + "put": { + "tags": [ + "QueueService" + ], + "operationId": "Queue_Create", + "x-ms-examples": { + "QueueOperationPut": { + "$ref": "./examples/QueueOperationPut.json" + }, + "QueueOperationPutWithMetadata": { + "$ref": "./examples/QueueOperationPutWithMetadata.json" + } + }, + "description": "Creates a new queue with the specified queue name, under the specified account.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/QueueName" + }, + { + "name": "queue", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/StorageQueue" + }, + "description": "Queue properties and metadata to be created with" + } + ], + "responses": { + "200": { + "description": "OK -- Creates a queue with the given queue name successfully.", + "schema": { + "$ref": "#/definitions/StorageQueue" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./file.json#/definitions/CloudError" + } + } + } + }, + "patch": { + "tags": [ + "QueueService" + ], + "operationId": "Queue_Update", + "x-ms-examples": { + "QueueOperationPatch": { + "$ref": "./examples/QueueOperationPatch.json" + } + }, + "description": "Creates a new queue with the specified queue name, under the specified account.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/QueueName" + }, + { + "name": "queue", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/StorageQueue" + }, + "description": "Queue properties and metadata to be created with" + } + ], + "responses": { + "200": { + "description": "OK -- Creates a queue with the given queue name successfully.", + "schema": { + "$ref": "#/definitions/StorageQueue" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./file.json#/definitions/CloudError" + } + } + } + }, + "get": { + "tags": [ + "QueueService" + ], + "operationId": "Queue_Get", + "x-ms-examples": { + "QueueOperationGet": { + "$ref": "./examples/QueueOperationGet.json" + } + }, + "description": "Gets the queue with the specified queue name, under the specified account if it exists.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/QueueName" + } + ], + "responses": { + "200": { + "description": "OK -- returned table with the specified table name successfully.", + "schema": { + "$ref": "#/definitions/StorageQueue" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./file.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "QueueService" + ], + "operationId": "Queue_Delete", + "x-ms-examples": { + "QueueOperationDelete": { + "$ref": "./examples/QueueOperationDelete.json" + } + }, + "description": "Deletes the queue with the specified queue name, under the specified account if it exists.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/QueueName" + } + ], + "responses": { + "204": { + "description": "No Content - Successfully deleted the queue with the specified queue name" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./file.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/queueServices/default/queues": { + "get": { + "tags": [ + "QueueService" + ], + "operationId": "Queue_List", + "x-ms-examples": { + "QueueOperationList": { + "$ref": "./examples/QueueOperationList.json" + } + }, + "description": "Gets a list of all the queues under the specified storage account", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$maxpagesize", + "in": "query", + "type": "string", + "description": "Optional, a maximum number of queues that should be included in a list queue response" + }, + { + "name": "$filter", + "in": "query", + "type": "string", + "description": "Optional, When specified, only the queues with a name starting with the given filter will be listed." + } + ], + "responses": { + "200": { + "description": "OK -- returned a list of queues successfully.", + "schema": { + "$ref": "#/definitions/ListQueueResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./file.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "ListQueueServices": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/QueueServiceProperties" + }, + "description": "List of queue services returned.", + "readOnly": true + } + } + }, + "QueueServiceProperties": { + "properties": { + "properties": { + "properties": { + "cors": { + "$ref": "./common.json#/definitions/CorsRules", + "description": "Specifies CORS rules for the Queue service. You can include up to five CorsRule elements in the request. If no CorsRule elements are included in the request body, all CORS rules will be deleted, and CORS will be disabled for the Queue service." + } + }, + "x-ms-client-flatten": true, + "x-ms-client-name": "QueueServiceProperties", + "description": "The properties of a storage account’s Queue service." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "description": "The properties of a storage account’s Queue service." + }, + "StorageQueue": { + "properties": { + "properties": { + "$ref": "#/definitions/QueueProperties", + "x-ms-client-flatten": true, + "x-ms-client-name": "QueueProperties", + "description": "Queue resource properties." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ] + }, + "QueueProperties": { + "properties": { + "metadata": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "A name-value pair that represents queue metadata." + }, + "approximateMessageCount": { + "type": "integer", + "readOnly": true, + "description": "Integer indicating an approximate number of messages in the queue. This number is not lower than the actual number of messages in the queue, but could be higher." + } + } + }, + "ListQueue": { + "properties": { + "properties": { + "$ref": "#/definitions/ListQueueProperties", + "x-ms-client-flatten": true, + "x-ms-client-name": "QueueProperties", + "description": "List Queue resource properties." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ] + }, + "ListQueueProperties": { + "properties": { + "metadata": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "A name-value pair that represents queue metadata." + } + } + }, + "ListQueueResource": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ListQueue" + }, + "description": "List of queues returned.", + "readOnly": true + }, + "nextLink": { + "type": "string", + "description": "Request URL that can be used to list next page of queues", + "readOnly": true + } + }, + "description": "Response schema. Contains list of queues returned" + } + }, + "parameters": { + "QueueServiceName": { + "name": "queueServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Queue Service within the specified storage account. Queue Service Name must be 'default'", + "enum": [ + "default" + ], + "x-ms-parameter-location": "method" + }, + "QueueName": { + "name": "queueName", + "in": "path", + "required": true, + "type": "string", + "description": "A queue name must be unique within a storage account and must be between 3 and 63 characters.The name must comprise of lowercase alphanumeric and dash(-) characters only, it should begin and end with an alphanumeric character and it cannot have two consecutive dash(-) characters.", + "maxLength": 63, + "minLength": 3, + "pattern": "^[a-z0-9]([a-z0-9]|(-(?!-))){1,61}[a-z0-9]$", + "x-ms-parameter-location": "method" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/storage.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/storage.json new file mode 100644 index 000000000000..d7fff7b22681 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/storage.json @@ -0,0 +1,4546 @@ +{ + "swagger": "2.0", + "info": { + "title": "StorageManagementClient", + "description": "The Azure Storage Management API.", + "version": "2021-04-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/providers/Microsoft.Storage/operations": { + "get": { + "tags": [ + "Operations" + ], + "description": "Lists all of the available Storage Rest API operations.", + "operationId": "Operations_List", + "x-ms-examples": { + "OperationsList": { + "$ref": "./examples/OperationsList.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Storage/skus": { + "get": { + "tags": [ + "Skus" + ], + "operationId": "Skus_List", + "description": "Lists the available SKUs supported by Microsoft.Storage for given subscription.", + "x-ms-examples": { + "SkuList": { + "$ref": "./examples/SKUList.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- List of storage SKUs in the given subscription retrieved and returned successfully.", + "schema": { + "$ref": "#/definitions/StorageSkuListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Storage/checkNameAvailability": { + "post": { + "tags": [ + "StorageAccounts" + ], + "operationId": "StorageAccounts_CheckNameAvailability", + "description": "Checks that the storage account name is valid and is not already in use.", + "x-ms-examples": { + "StorageAccountCheckNameAvailability": { + "$ref": "./examples/StorageAccountCheckNameAvailability.json" + } + }, + "parameters": [ + { + "name": "accountName", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/StorageAccountCheckNameAvailabilityParameters" + }, + "description": "The name of the storage account within the specified resource group. Storage account names must be between 3 and 24 characters in length and use numbers and lower-case letters only." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Operation to check the storage account name availability was successful.", + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}": { + "put": { + "tags": [ + "StorageAccounts" + ], + "operationId": "StorageAccounts_Create", + "description": "Asynchronously creates a new storage account with the specified parameters. If an account is already created and a subsequent create request is issued with different properties, the account properties will be updated. If an account is already created and a subsequent create or update request is issued with the exact same set of properties, the request will succeed.", + "x-ms-examples": { + "StorageAccountCreate": { + "$ref": "./examples/StorageAccountCreate.json" + }, + "NfsV3AccountCreate": { + "$ref": "./examples/NfsV3AccountCreate.json" + }, + "StorageAccountCreateUserAssignedEncryptionIdentityWithCMK": { + "$ref": "./examples/StorageAccountCreateUserAssignedEncryptionIdentityWithCMK.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/StorageAccountCreateParameters" + }, + "description": "The parameters to provide for the created account." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- returned when the storage account was already created from a previous request with the same properties specified in the request body.", + "schema": { + "$ref": "#/definitions/StorageAccount" + } + }, + "202": { + "description": "Accepted -- Create or update request accepted; operation will complete asynchronously." + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "StorageAccounts" + ], + "operationId": "StorageAccounts_Delete", + "description": "Deletes a storage account in Microsoft Azure.", + "x-ms-examples": { + "StorageAccountDelete": { + "$ref": "./examples/StorageAccountDelete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- storage account deleted successfully." + }, + "204": { + "description": "NoContent -- account does not exist in the subscription." + } + } + }, + "get": { + "tags": [ + "StorageAccounts" + ], + "operationId": "StorageAccounts_GetProperties", + "description": "Returns the properties for the specified storage account including but not limited to name, SKU name, location, and account status. The ListKeys operation should be used to retrieve storage keys.", + "x-ms-examples": { + "StorageAccountGetProperties": { + "$ref": "./examples/StorageAccountGetProperties.json" + }, + "StorageAccountGetPropertiesCMKEnabled": { + "$ref": "./examples/StorageAccountGetPropertiesCMKEnabled.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "description": "May be used to expand the properties within account's properties. By default, data is not included when fetching properties. Currently we only support geoReplicationStats and blobRestoreStatus.", + "in": "query", + "required": false, + "type": "string", + "enum": [ + "geoReplicationStats", + "blobRestoreStatus" + ], + "x-ms-enum": { + "name": "StorageAccountExpand", + "modelAsString": false + } + } + ], + "responses": { + "200": { + "description": "OK -- properties retrieved successfully for the storage account.", + "schema": { + "$ref": "#/definitions/StorageAccount" + } + } + } + }, + "patch": { + "tags": [ + "StorageAccounts" + ], + "operationId": "StorageAccounts_Update", + "description": "The update operation can be used to update the SKU, encryption, access tier, or tags for a storage account. It can also be used to map the account to a custom domain. Only one custom domain is supported per storage account; the replacement/change of custom domain is not supported. In order to replace an old custom domain, the old value must be cleared/unregistered before a new value can be set. The update of multiple properties is supported. This call does not change the storage keys for the account. If you want to change the storage account keys, use the regenerate keys operation. The location and name of the storage account cannot be changed after creation.", + "x-ms-examples": { + "StorageAccountUpdate": { + "$ref": "./examples/StorageAccountUpdate.json" + }, + "StorageAccountEnableAD": { + "$ref": "./examples/StorageAccountEnableAD.json" + }, + "StorageAccountEnableCMK": { + "$ref": "./examples/StorageAccountEnableCMK.json" + }, + "StorageAccountUpdateUserAssignedEncryptionIdentityWithCMK": { + "$ref": "./examples/StorageAccountUpdateUserAssignedEncryptionIdentityWithCMK.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/StorageAccountUpdateParameters" + }, + "description": "The parameters to provide for the updated account." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- storage account properties updated successfully.", + "schema": { + "$ref": "#/definitions/StorageAccount" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Storage/deletedAccounts": { + "get": { + "tags": [ + "DeletedAccounts" + ], + "operationId": "DeletedAccounts_List", + "description": "Lists deleted accounts under the subscription.", + "x-ms-examples": { + "DeletedAccountList": { + "$ref": "./examples/DeletedAccountList.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- List of deleted accounts was retrieved and returned successfully.", + "schema": { + "$ref": "#/definitions/DeletedAccountListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Storage/locations/{location}/deletedAccounts/{deletedAccountName}": { + "get": { + "tags": [ + "DeletedAccounts" + ], + "operationId": "DeletedAccounts_Get", + "description": "Get properties of specified deleted account resource.", + "x-ms-examples": { + "DeletedAccountGet": { + "$ref": "./examples/DeletedAccountGet.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/DeletedAccountName" + }, + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the deleted storage account." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- properties retrieved and returned successfully for the deleted account.", + "schema": { + "$ref": "#/definitions/DeletedAccount" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Storage/storageAccounts": { + "get": { + "tags": [ + "StorageAccounts" + ], + "operationId": "StorageAccounts_List", + "description": "Lists all the storage accounts available under the subscription. Note that storage keys are not returned; use the ListKeys operation for this.", + "x-ms-examples": { + "StorageAccountList": { + "$ref": "./examples/StorageAccountList.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- List of storage accounts was retrieved and returned successfully.", + "schema": { + "$ref": "#/definitions/StorageAccountListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts": { + "get": { + "tags": [ + "StorageAccounts" + ], + "operationId": "StorageAccounts_ListByResourceGroup", + "description": "Lists all the storage accounts available under the given resource group. Note that storage keys are not returned; use the ListKeys operation for this.", + "x-ms-examples": { + "StorageAccountListByResourceGroup": { + "$ref": "./examples/StorageAccountListByResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- List of storage accounts in the given resource group retrieved and returned successfully.", + "schema": { + "$ref": "#/definitions/StorageAccountListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/listKeys": { + "post": { + "tags": [ + "StorageAccounts" + ], + "operationId": "StorageAccounts_ListKeys", + "description": "Lists the access keys or Kerberos keys (if active directory enabled) for the specified storage account.", + "x-ms-examples": { + "StorageAccountListKeys": { + "$ref": "./examples/StorageAccountListKeys.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "enum": [ + "kerb" + ], + "x-ms-enum": { + "name": "ListKeyExpand" + }, + "description": "Specifies type of the key to be listed. Possible value is kerb." + } + ], + "responses": { + "200": { + "description": "OK -- list of keys retrieved and returned successfully.", + "schema": { + "$ref": "#/definitions/StorageAccountListKeysResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/regenerateKey": { + "post": { + "tags": [ + "StorageAccounts" + ], + "operationId": "StorageAccounts_RegenerateKey", + "description": "Regenerates one of the access keys or Kerberos keys for the specified storage account.", + "x-ms-examples": { + "StorageAccountRegenerateKey": { + "$ref": "./examples/StorageAccountRegenerateKey.json" + }, + "StorageAccountRegenerateKerbKey": { + "$ref": "./examples/StorageAccountRegenerateKerbKey.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "name": "regenerateKey", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/StorageAccountRegenerateKeyParameters" + }, + "description": "Specifies name of the key which should be regenerated -- key1, key2, kerb1, kerb2." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- specified key regenerated successfully.", + "schema": { + "$ref": "#/definitions/StorageAccountListKeysResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Storage/locations/{location}/usages": { + "get": { + "tags": [ + "LocationUsage" + ], + "operationId": "Usages_ListByLocation", + "description": "Gets the current usage count and the limit for the resources of the location under the subscription.", + "x-ms-examples": { + "UsageList": { + "$ref": "./examples/StorageAccountListLocationUsage.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the Azure Storage resource." + } + ], + "responses": { + "200": { + "description": "OK -- current usage count and limit retrieved and returned successfully.", + "schema": { + "$ref": "#/definitions/UsageListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/ListAccountSas": { + "post": { + "tags": [ + "StorageAccounts" + ], + "operationId": "StorageAccounts_ListAccountSAS", + "description": "List SAS credentials of a storage account.", + "x-ms-examples": { + "StorageAccountListAccountSAS": { + "$ref": "./examples/StorageAccountListAccountSAS.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AccountSasParameters" + }, + "description": "The parameters to provide to list SAS credentials for the storage account." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- returned the account SAS created for the storage account requested.", + "schema": { + "$ref": "#/definitions/ListAccountSasResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/ListServiceSas": { + "post": { + "tags": [ + "StorageAccounts" + ], + "operationId": "StorageAccounts_ListServiceSAS", + "description": "List service SAS credentials of a specific resource.", + "x-ms-examples": { + "StorageAccountListServiceSAS": { + "$ref": "./examples/StorageAccountListServiceSAS.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ServiceSasParameters" + }, + "description": "The parameters to provide to list service SAS credentials." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- returned the service SAS created for the storage service requested.", + "schema": { + "$ref": "#/definitions/ListServiceSasResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/failover": { + "post": { + "tags": [ + "StorageAccounts" + ], + "operationId": "StorageAccounts_Failover", + "description": "Failover request can be triggered for a storage account in case of availability issues. The failover occurs from the storage account's primary cluster to secondary cluster for RA-GRS accounts. The secondary cluster will become primary after failover.", + "x-ms-examples": { + "StorageAccountFailover": { + "$ref": "./examples/StorageAccountFailover.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Returned when the storage account failover is completed, and the secondary cluster has become primary." + }, + "202": { + "description": "Accepted -- Failover request accepted; operation will complete asynchronously." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/restoreBlobRanges": { + "post": { + "tags": [ + "StorageAccounts" + ], + "operationId": "StorageAccounts_RestoreBlobRanges", + "description": "Restore blobs in the specified blob ranges", + "x-ms-examples": { + "BlobRangesRestore": { + "$ref": "./examples/BlobRangesRestore.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/BlobRestoreParameters" + }, + "description": "The parameters to provide for restore blob ranges." + } + ], + "responses": { + "200": { + "description": "OK -- returned when blob ranges are restored completely with the same properties specified in the request body.", + "schema": { + "$ref": "#/definitions/BlobRestoreStatus" + } + }, + "202": { + "description": "Accepted -- Blob restore request accepted; operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/BlobRestoreStatus" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/managementPolicies/{managementPolicyName}": { + "get": { + "tags": [ + "ManagementPolicies" + ], + "operationId": "ManagementPolicies_Get", + "description": "Gets the managementpolicy associated with the specified storage account.", + "x-ms-examples": { + "StorageAccountGetManagementPolicies": { + "$ref": "./examples/StorageAccountGetManagementPolicy.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ManagementPolicyName" + } + ], + "responses": { + "200": { + "description": "OK -- Get the managementpolicy successfully.", + "schema": { + "$ref": "#/definitions/ManagementPolicy" + } + } + } + }, + "put": { + "tags": [ + "ManagementPolicies" + ], + "operationId": "ManagementPolicies_CreateOrUpdate", + "description": "Sets the managementpolicy to the specified storage account.", + "x-ms-examples": { + "StorageAccountSetManagementPolicies": { + "$ref": "./examples/StorageAccountSetManagementPolicy.json" + }, + "StorageAccountSetManagementPolicy_LastAccessTimeBasedBlobActions": { + "$ref": "./examples/StorageAccountSetManagementPolicy_LastAccessTimeBasedBlobActions.json" + }, + "StorageAccountSetManagementPolicyWithSnapshotAndVersion": { + "$ref": "./examples/StorageAccountSetManagementPolicyWithSnapshotAndVersion.json" + }, + "StorageAccountSetManagementPolicyForBlockAndAppendBlobs": { + "$ref": "./examples/StorageAccountSetManagementPolicyForBlockAndAppendBlobs.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ManagementPolicyName" + }, + { + "name": "properties", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ManagementPolicy" + }, + "description": "The ManagementPolicy set to a storage account." + } + ], + "responses": { + "200": { + "description": "OK -- Put managementpolicy successfully.", + "schema": { + "$ref": "#/definitions/ManagementPolicy" + } + } + } + }, + "delete": { + "tags": [ + "ManagementPolicies" + ], + "operationId": "ManagementPolicies_Delete", + "description": "Deletes the managementpolicy associated with the specified storage account.", + "x-ms-examples": { + "StorageAccountDeleteManagementPolicies": { + "$ref": "./examples/StorageAccountDeleteManagementPolicy.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ManagementPolicyName" + } + ], + "responses": { + "200": { + "description": "OK -- Delete the managementpolicy successfully." + }, + "204": { + "description": "No Content -- The managementpolicy does not exist." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/inventoryPolicies/{blobInventoryPolicyName}": { + "get": { + "tags": [ + "BlobInventoryPolicies" + ], + "operationId": "BlobInventoryPolicies_Get", + "description": "Gets the blob inventory policy associated with the specified storage account.", + "x-ms-examples": { + "StorageAccountGetBlobInventoryPolicy": { + "$ref": "./examples/StorageAccountGetBlobInventoryPolicy.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/BlobInventoryPolicyName" + } + ], + "responses": { + "200": { + "description": "OK -- Get the blob inventory policy successfully.", + "schema": { + "$ref": "#/definitions/BlobInventoryPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "BlobInventoryPolicies" + ], + "operationId": "BlobInventoryPolicies_CreateOrUpdate", + "description": "Sets the blob inventory policy to the specified storage account.", + "x-ms-examples": { + "StorageAccountSetBlobInventoryPolicy": { + "$ref": "./examples/StorageAccountSetBlobInventoryPolicy.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/BlobInventoryPolicyName" + }, + { + "name": "properties", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/BlobInventoryPolicy" + }, + "description": "The blob inventory policy set to a storage account." + } + ], + "responses": { + "200": { + "description": "OK -- Put blob inventory policy successfully.", + "schema": { + "$ref": "#/definitions/BlobInventoryPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "BlobInventoryPolicies" + ], + "operationId": "BlobInventoryPolicies_Delete", + "description": "Deletes the blob inventory policy associated with the specified storage account.", + "x-ms-examples": { + "StorageAccountDeleteBlobInventoryPolicy": { + "$ref": "./examples/StorageAccountDeleteBlobInventoryPolicy.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/BlobInventoryPolicyName" + } + ], + "responses": { + "200": { + "description": "OK -- Delete the blob inventory policy successfully." + }, + "204": { + "description": "No Content -- The blob inventory policy does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/inventoryPolicies": { + "get": { + "tags": [ + "BlobInventoryPolicies" + ], + "operationId": "BlobInventoryPolicies_List", + "description": "Gets the blob inventory policy associated with the specified storage account.", + "x-ms-examples": { + "StorageAccountGetBlobInventoryPolicy": { + "$ref": "./examples/StorageAccountListBlobInventoryPolicy.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Get the blob inventory policies successfully.", + "schema": { + "$ref": "#/definitions/ListBlobInventoryPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/privateEndpointConnections": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_List", + "description": "List all the private endpoint connections associated with the storage account.", + "x-ms-examples": { + "StorageAccountListPrivateEndpointConnections": { + "$ref": "./examples/StorageAccountListPrivateEndpointConnections.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Successfully retrieved private endpoint connections.", + "schema": { + "$ref": "./privatelinks.json#/definitions/PrivateEndpointConnectionListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Get", + "description": "Gets the specified private endpoint connection associated with the storage account.", + "x-ms-examples": { + "StorageAccountGetPrivateEndpointConnection": { + "$ref": "./examples/StorageAccountGetPrivateEndpointConnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/privatelinks.json#/parameters/PrivateEndpointConnectionName" + } + ], + "responses": { + "200": { + "description": "OK -- Get the private endpoint connection properties successfully.", + "schema": { + "$ref": "./privatelinks.json#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Put", + "description": "Update the state of specified private endpoint connection associated with the storage account.", + "x-ms-examples": { + "StorageAccountPutPrivateEndpointConnection": { + "$ref": "./examples/StorageAccountPutPrivateEndpointConnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/privatelinks.json#/parameters/PrivateEndpointConnectionName" + }, + { + "name": "properties", + "in": "body", + "required": true, + "schema": { + "$ref": "./privatelinks.json#/definitions/PrivateEndpointConnection" + }, + "description": "The private endpoint connection properties." + } + ], + "responses": { + "200": { + "description": "OK -- Update the private endpoint connection properties successfully.", + "schema": { + "$ref": "./privatelinks.json#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Delete", + "description": "Deletes the specified private endpoint connection associated with the storage account.", + "x-ms-examples": { + "StorageAccountDeletePrivateEndpointConnection": { + "$ref": "./examples/StorageAccountDeletePrivateEndpointConnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/privatelinks.json#/parameters/PrivateEndpointConnectionName" + } + ], + "responses": { + "200": { + "description": "OK -- Delete the private endpoint connection successfully." + }, + "204": { + "description": "No Content -- The private endpoint connection does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/privateLinkResources": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "operationId": "PrivateLinkResources_ListByStorageAccount", + "description": "Gets the private link resources that need to be created for a storage account.", + "x-ms-examples": { + "StorageAccountListPrivateLinkResources": { + "$ref": "./examples/StorageAccountListPrivateLinkResources.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private link resources.", + "schema": { + "$ref": "./privatelinks.json#/definitions/PrivateLinkResourceListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/objectReplicationPolicies": { + "get": { + "tags": [ + "ObjectReplicationPolicies" + ], + "operationId": "ObjectReplicationPolicies_List", + "description": "List the object replication policies associated with the storage account.", + "x-ms-examples": { + "StorageAccountListObjectReplicationPolicies": { + "$ref": "./examples/StorageAccountListObjectReplicationPolicies.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- List object replication policies successfully.", + "schema": { + "$ref": "#/definitions/ObjectReplicationPolicies" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/objectReplicationPolicies/{objectReplicationPolicyId}": { + "get": { + "tags": [ + "ObjectReplicationPolicies" + ], + "operationId": "ObjectReplicationPolicies_Get", + "description": "Get the object replication policy of the storage account by policy ID.", + "x-ms-examples": { + "StorageAccountGetObjectReplicationPolicies": { + "$ref": "./examples/StorageAccountGetObjectReplicationPolicy.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ObjectReplicationPolicyId" + } + ], + "responses": { + "200": { + "description": "OK -- Get the object replication policy successfully.", + "schema": { + "$ref": "#/definitions/ObjectReplicationPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ObjectReplicationPolicies" + ], + "operationId": "ObjectReplicationPolicies_CreateOrUpdate", + "description": "Create or update the object replication policy of the storage account.", + "x-ms-examples": { + "StorageAccountCreateObjectReplicationPolicyOnDestination": { + "$ref": "./examples/StorageAccountCreateObjectReplicationPolicyOnDestination.json" + }, + "StorageAccountCreateObjectReplicationPolicyOnSource": { + "$ref": "./examples/StorageAccountCreateObjectReplicationPolicyOnSource.json" + }, + "StorageAccountUpdateObjectReplicationPolicyOnDestination": { + "$ref": "./examples/StorageAccountUpdateObjectReplicationPolicyOnDestination.json" + }, + "StorageAccountUpdateObjectReplicationPolicyOnSource": { + "$ref": "./examples/StorageAccountUpdateObjectReplicationPolicyOnSource.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ObjectReplicationPolicyId" + }, + { + "name": "properties", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ObjectReplicationPolicy" + }, + "description": "The object replication policy set to a storage account. A unique policy ID will be created if absent." + } + ], + "responses": { + "200": { + "description": "OK -- Put object replication policy successfully.", + "schema": { + "$ref": "#/definitions/ObjectReplicationPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ObjectReplicationPolicies" + ], + "operationId": "ObjectReplicationPolicies_Delete", + "description": "Deletes the object replication policy associated with the specified storage account.", + "x-ms-examples": { + "StorageAccountDeleteObjectReplicationPolicies": { + "$ref": "./examples/StorageAccountDeleteObjectReplicationPolicy.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ObjectReplicationPolicyId" + } + ], + "responses": { + "200": { + "description": "OK -- Delete the object replication policy successfully." + }, + "204": { + "description": "No Content -- The object replication policy does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/revokeUserDelegationKeys": { + "post": { + "tags": [ + "StorageAccounts" + ], + "operationId": "StorageAccounts_RevokeUserDelegationKeys", + "description": "Revoke user delegation keys.", + "x-ms-examples": { + "StorageAccountRevokeUserDelegationKeys": { + "$ref": "./examples/StorageAccountRevokeUserDelegationKeys.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the storage account within the specified resource group. Storage account names must be between 3 and 24 characters in length and use numbers and lower-case letters only.", + "maxLength": 24, + "minLength": 3 + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- revoke user delegation keys succeeded." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/encryptionScopes/{encryptionScopeName}": { + "put": { + "tags": [ + "EncryptionScopes" + ], + "operationId": "EncryptionScopes_Put", + "description": "Synchronously creates or updates an encryption scope under the specified storage account. If an encryption scope is already created and a subsequent request is issued with different properties, the encryption scope properties will be updated per the specified request.", + "x-ms-examples": { + "StorageAccountPutEncryptionScope": { + "$ref": "./examples/StorageAccountPutEncryptionScope.json" + }, + "StorageAccountPutEncryptionScopeWithInfrastructureEncryption": { + "$ref": "./examples/StorageAccountPutEncryptionScopeWithInfrastructureEncryption.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/EncryptionScopeName" + }, + { + "name": "encryptionScope", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/EncryptionScope" + }, + "description": "Encryption scope properties to be used for the create or update." + } + ], + "responses": { + "201": { + "description": "Created -- Create encryption scope operation completed successfully.", + "schema": { + "$ref": "#/definitions/EncryptionScope" + } + }, + "200": { + "description": "OK -- Update encryption scope operation completed successfully.", + "schema": { + "$ref": "#/definitions/EncryptionScope" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "EncryptionScopes" + ], + "operationId": "EncryptionScopes_Patch", + "description": "Update encryption scope properties as specified in the request body. Update fails if the specified encryption scope does not already exist.", + "x-ms-examples": { + "StorageAccountPatchEncryptionScope": { + "$ref": "./examples/StorageAccountPatchEncryptionScope.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/EncryptionScopeName" + }, + { + "name": "encryptionScope", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/EncryptionScope" + }, + "description": "Encryption scope properties to be used for the update." + } + ], + "responses": { + "200": { + "description": "OK -- Update encryption scope operation completed successfully.", + "schema": { + "$ref": "#/definitions/EncryptionScope" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "EncryptionScopes" + ], + "operationId": "EncryptionScopes_Get", + "description": "Returns the properties for the specified encryption scope.", + "x-ms-examples": { + "StorageAccountGetEncryptionScope": { + "$ref": "./examples/StorageAccountGetEncryptionScope.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/EncryptionScopeName" + } + ], + "responses": { + "200": { + "description": "OK -- Get encryption scope operation completed successfully.", + "schema": { + "$ref": "#/definitions/EncryptionScope" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/encryptionScopes": { + "get": { + "tags": [ + "EncryptionScopes" + ], + "operationId": "EncryptionScopes_List", + "description": "Lists all the encryption scopes available under the specified storage account.", + "x-ms-examples": { + "StorageAccountEncryptionScopeList": { + "$ref": "./examples/StorageAccountEncryptionScopeList.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- List encryption scopes operation completed successfully.", + "schema": { + "$ref": "#/definitions/EncryptionScopeListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "OperationListResult": { + "description": "Result of the request to list Storage operations. It contains a list of operations and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "description": "List of Storage operations supported by the Storage resource provider." + } + } + }, + "Operation": { + "description": "Storage REST API operation definition.", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}", + "type": "string" + }, + "display": { + "description": "Display metadata associated with the operation.", + "properties": { + "provider": { + "description": "Service provider: Microsoft Storage.", + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed etc.", + "type": "string" + }, + "operation": { + "description": "Type of operation: get, read, delete, etc.", + "type": "string" + }, + "description": { + "description": "Description of the operation.", + "type": "string" + } + } + }, + "origin": { + "type": "string", + "description": "The origin of operations." + }, + "properties": { + "description": "Properties of operation, include metric specifications.", + "x-ms-client-flatten": true, + "x-ms-client-name": "OperationProperties", + "$ref": "#/definitions/OperationProperties" + } + } + }, + "OperationProperties": { + "description": "Properties of operation, include metric specifications.", + "properties": { + "serviceSpecification": { + "$ref": "#/definitions/ServiceSpecification", + "description": "One property of operation, include metric specifications." + } + } + }, + "ServiceSpecification": { + "description": "One property of operation, include metric specifications.", + "properties": { + "metricSpecifications": { + "description": "Metric specifications of operation.", + "type": "array", + "items": { + "$ref": "#/definitions/MetricSpecification" + } + } + } + }, + "MetricSpecification": { + "description": "Metric specification of operation.", + "properties": { + "name": { + "type": "string", + "description": "Name of metric specification." + }, + "displayName": { + "type": "string", + "description": "Display name of metric specification." + }, + "displayDescription": { + "type": "string", + "description": "Display description of metric specification." + }, + "unit": { + "type": "string", + "description": "Unit could be Bytes or Count." + }, + "dimensions": { + "description": "Dimensions of blobs, including blob type and access tier.", + "type": "array", + "items": { + "$ref": "#/definitions/Dimension" + } + }, + "aggregationType": { + "type": "string", + "description": "Aggregation type could be Average." + }, + "fillGapWithZero": { + "type": "boolean", + "description": "The property to decide fill gap with zero or not." + }, + "category": { + "type": "string", + "description": "The category this metric specification belong to, could be Capacity." + }, + "resourceIdDimensionNameOverride": { + "type": "string", + "description": "Account Resource Id." + } + } + }, + "Dimension": { + "description": "Dimension of blobs, possibly be blob type or access tier.", + "properties": { + "name": { + "type": "string", + "description": "Display name of dimension." + }, + "displayName": { + "type": "string", + "description": "Display name of dimension." + } + } + }, + "StorageAccountCheckNameAvailabilityParameters": { + "properties": { + "name": { + "type": "string", + "description": "The storage account name." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Storage/storageAccounts" + ], + "x-ms-enum": { + "name": "Type", + "modelAsString": false + }, + "description": "The type of resource, Microsoft.Storage/storageAccounts" + } + }, + "required": [ + "name", + "type" + ], + "description": "The parameters used to check the availability of the storage account name." + }, + "SKUCapability": { + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "The name of capability, The capability information in the specified SKU, including file encryption, network ACLs, change notification, etc." + }, + "value": { + "readOnly": true, + "type": "string", + "description": "A string value to indicate states of given capability. Possibly 'true' or 'false'." + } + }, + "description": "The capability information in the specified SKU, including file encryption, network ACLs, change notification, etc." + }, + "Restriction": { + "properties": { + "type": { + "readOnly": true, + "type": "string", + "description": "The type of restrictions. As of now only possible value for this is location." + }, + "values": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The value of restrictions. If the restriction type is set to location. This would be different locations where the SKU is restricted." + }, + "reasonCode": { + "type": "string", + "enum": [ + "QuotaId", + "NotAvailableForSubscription" + ], + "x-ms-enum": { + "name": "ReasonCode", + "modelAsString": true + }, + "description": "The reason for the restriction. As of now this can be \"QuotaId\" or \"NotAvailableForSubscription\". Quota Id is set when the SKU has requiredQuotas parameter as the subscription does not belong to that quota. The \"NotAvailableForSubscription\" is related to capacity at DC." + } + }, + "description": "The restriction because of which SKU cannot be used." + }, + "StorageSkuListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SkuInformation" + }, + "description": "Get the list result of storage SKUs and their properties." + } + }, + "description": "The response from the List Storage SKUs operation." + }, + "CheckNameAvailabilityResult": { + "properties": { + "nameAvailable": { + "readOnly": true, + "type": "boolean", + "description": "Gets a boolean value that indicates whether the name is available for you to use. If true, the name is available. If false, the name has already been taken or is invalid and cannot be used." + }, + "reason": { + "readOnly": true, + "type": "string", + "description": "Gets the reason that a storage account name could not be used. The Reason element is only returned if NameAvailable is false.", + "enum": [ + "AccountNameInvalid", + "AlreadyExists" + ], + "x-ms-enum": { + "name": "Reason", + "modelAsString": false + } + }, + "message": { + "readOnly": true, + "type": "string", + "description": "Gets an error message explaining the Reason value in more detail." + } + }, + "description": "The CheckNameAvailability operation response." + }, + "SkuInformation": { + "properties": { + "name": { + "$ref": "./common.json#/definitions/SkuName" + }, + "tier": { + "$ref": "./common.json#/definitions/Tier" + }, + "resourceType": { + "readOnly": true, + "type": "string", + "description": "The type of the resource, usually it is 'storageAccounts'." + }, + "kind": { + "readOnly": true, + "type": "string", + "description": "Indicates the type of storage account.", + "enum": [ + "Storage", + "StorageV2", + "BlobStorage", + "FileStorage", + "BlockBlobStorage" + ], + "x-ms-enum": { + "name": "Kind", + "modelAsString": true + } + }, + "locations": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The set of locations that the SKU is available. This will be supported and registered Azure Geo Regions (e.g. West US, East US, Southeast Asia, etc.)." + }, + "capabilities": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SKUCapability" + }, + "description": "The capability information in the specified SKU, including file encryption, network ACLs, change notification, etc." + }, + "restrictions": { + "type": "array", + "items": { + "$ref": "#/definitions/Restriction" + }, + "description": "The restrictions because of which SKU cannot be used. This is empty if there are no restrictions." + } + }, + "required": [ + "name" + ], + "description": "Storage SKU and its properties" + }, + "CustomDomain": { + "properties": { + "name": { + "type": "string", + "description": "Gets or sets the custom domain name assigned to the storage account. Name is the CNAME source." + }, + "useSubDomainName": { + "type": "boolean", + "description": "Indicates whether indirect CName validation is enabled. Default value is false. This should only be set on updates." + } + }, + "required": [ + "name" + ], + "description": "The custom domain assigned to this storage account. This can be set via Update." + }, + "SasPolicy": { + "properties": { + "sasExpirationPeriod": { + "type": "string", + "example": "1.15:59:59", + "description": "The SAS expiration period, DD.HH:MM:SS." + }, + "expirationAction": { + "type": "string", + "enum": [ + "Log" + ], + "x-ms-enum": { + "name": "ExpirationAction", + "modelAsString": true + }, + "default": "Log", + "description": "The SAS expiration action. Can only be Log." + } + }, + "required": [ + "sasExpirationPeriod", + "expirationAction" + ], + "description": "SasPolicy assigned to the storage account." + }, + "KeyPolicy": { + "properties": { + "keyExpirationPeriodInDays": { + "type": "integer", + "description": "The key expiration period in days.", + "format": "int32" + } + }, + "required": [ + "keyExpirationPeriodInDays" + ], + "description": "KeyPolicy assigned to the storage account." + }, + "KeyCreationTime": { + "properties": { + "key1": { + "type": "string", + "format": "date-time", + "example": "2021-02-03T05:57:30.917Z" + }, + "key2": { + "type": "string", + "format": "date-time", + "example": "2021-02-03T05:57:30.917Z" + } + }, + "description": "Storage account keys creation time." + }, + "EncryptionService": { + "properties": { + "enabled": { + "type": "boolean", + "description": "A boolean indicating whether or not the service encrypts the data as it is stored." + }, + "lastEnabledTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "Gets a rough estimate of the date/time when the encryption was last enabled by the user. Only returned when encryption is enabled. There might be some unencrypted blobs which were written after this time, as it is just a rough estimate." + }, + "keyType": { + "type": "string", + "description": "Encryption key type to be used for the encryption service. 'Account' key type implies that an account-scoped encryption key will be used. 'Service' key type implies that a default service key is used.", + "enum": [ + "Service", + "Account" + ], + "x-ms-enum": { + "name": "KeyType", + "modelAsString": true + }, + "x-ms-mutability": [ + "create", + "read" + ] + } + }, + "description": "A service that allows server-side encryption to be used." + }, + "EncryptionServices": { + "properties": { + "blob": { + "$ref": "#/definitions/EncryptionService", + "description": "The encryption function of the blob storage service." + }, + "file": { + "$ref": "#/definitions/EncryptionService", + "description": "The encryption function of the file storage service." + }, + "table": { + "$ref": "#/definitions/EncryptionService", + "description": "The encryption function of the table storage service." + }, + "queue": { + "$ref": "#/definitions/EncryptionService", + "description": "The encryption function of the queue storage service." + } + }, + "description": "A list of services that support encryption." + }, + "KeyVaultProperties": { + "description": "Properties of key vault.", + "properties": { + "keyname": { + "type": "string", + "description": "The name of KeyVault key.", + "x-ms-client-name": "KeyName" + }, + "keyversion": { + "type": "string", + "description": "The version of KeyVault key.", + "x-ms-client-name": "KeyVersion" + }, + "keyvaulturi": { + "type": "string", + "description": "The Uri of KeyVault.", + "x-ms-client-name": "KeyVaultUri" + }, + "currentVersionedKeyIdentifier": { + "type": "string", + "readOnly": true, + "description": "The object identifier of the current versioned Key Vault Key in use.", + "x-ms-client-name": "CurrentVersionedKeyIdentifier" + }, + "lastKeyRotationTimestamp": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "Timestamp of last rotation of the Key Vault Key.", + "x-ms-client-name": "LastKeyRotationTimestamp" + } + } + }, + "Encryption": { + "properties": { + "services": { + "$ref": "#/definitions/EncryptionServices", + "description": "List of services which support encryption." + }, + "keySource": { + "type": "string", + "description": "The encryption keySource (provider). Possible values (case-insensitive): Microsoft.Storage, Microsoft.Keyvault", + "enum": [ + "Microsoft.Storage", + "Microsoft.Keyvault" + ], + "x-ms-enum": { + "name": "KeySource", + "modelAsString": true + }, + "default": "Microsoft.Storage" + }, + "requireInfrastructureEncryption": { + "type": "boolean", + "x-ms-client-name": "RequireInfrastructureEncryption", + "description": "A boolean indicating whether or not the service applies a secondary layer of encryption with platform managed keys for data at rest." + }, + "keyvaultproperties": { + "$ref": "#/definitions/KeyVaultProperties", + "x-ms-client-name": "KeyVaultProperties", + "description": "Properties provided by key vault." + }, + "identity": { + "$ref": "#/definitions/EncryptionIdentity", + "x-ms-client-name": "EncryptionIdentity", + "description": "The identity to be used with service-side encryption at rest." + } + }, + "required": [ + "keySource" + ], + "description": "The encryption settings on the storage account." + }, + "EncryptionIdentity": { + "properties": { + "userAssignedIdentity": { + "type": "string", + "description": "Resource identifier of the UserAssigned identity to be associated with server-side encryption on the storage account.", + "x-ms-client-name": "EncryptionUserAssignedIdentity" + } + }, + "description": "Encryption identity for the storage account." + }, + "UserAssignedIdentity": { + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal ID of the identity." + }, + "clientId": { + "readOnly": true, + "type": "string", + "description": "The client ID of the identity." + } + }, + "description": "UserAssignedIdentity for the resource." + }, + "ResourceAccessRule": { + "properties": { + "tenantId": { + "type": "string", + "description": "Tenant Id" + }, + "resourceId": { + "type": "string", + "description": "Resource Id" + } + }, + "description": "Resource Access Rule." + }, + "VirtualNetworkRule": { + "properties": { + "id": { + "type": "string", + "x-ms-client-name": "VirtualNetworkResourceId", + "description": "Resource ID of a subnet, for example: /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.Network/virtualNetworks/{vnetName}/subnets/{subnetName}." + }, + "action": { + "type": "string", + "enum": [ + "Allow" + ], + "x-ms-enum": { + "name": "Action", + "modelAsString": false + }, + "default": "Allow", + "description": "The action of virtual network rule." + }, + "state": { + "type": "string", + "enum": [ + "Provisioning", + "Deprovisioning", + "Succeeded", + "Failed", + "NetworkSourceDeleted" + ], + "x-ms-enum": { + "name": "State", + "modelAsString": true + }, + "description": "Gets the state of virtual network rule." + } + }, + "required": [ + "id" + ], + "description": "Virtual Network rule." + }, + "IPRule": { + "properties": { + "value": { + "type": "string", + "x-ms-client-name": "IPAddressOrRange", + "description": "Specifies the IP or IP range in CIDR format. Only IPV4 address is allowed." + }, + "action": { + "type": "string", + "enum": [ + "Allow" + ], + "x-ms-enum": { + "name": "Action", + "modelAsString": false + }, + "default": "Allow", + "description": "The action of IP ACL rule." + } + }, + "required": [ + "value" + ], + "description": "IP rule with specific IP or IP range in CIDR format." + }, + "NetworkRuleSet": { + "properties": { + "bypass": { + "type": "string", + "enum": [ + "None", + "Logging", + "Metrics", + "AzureServices" + ], + "x-ms-enum": { + "name": "Bypass", + "modelAsString": true + }, + "x-ms-client-name": "Bypass", + "default": "AzureServices", + "description": "Specifies whether traffic is bypassed for Logging/Metrics/AzureServices. Possible values are any combination of Logging|Metrics|AzureServices (For example, \"Logging, Metrics\"), or None to bypass none of those traffics." + }, + "resourceAccessRules": { + "type": "array", + "items": { + "description": "Resource Access Rules.", + "$ref": "#/definitions/ResourceAccessRule" + }, + "description": "Sets the resource access rules" + }, + "virtualNetworkRules": { + "type": "array", + "items": { + "description": "Virtual Network rule.", + "$ref": "#/definitions/VirtualNetworkRule" + }, + "description": "Sets the virtual network rules" + }, + "ipRules": { + "type": "array", + "items": { + "description": "IP rule with specific IP or IP range in CIDR format.", + "$ref": "#/definitions/IPRule" + }, + "description": "Sets the IP ACL rules" + }, + "defaultAction": { + "type": "string", + "enum": [ + "Allow", + "Deny" + ], + "x-ms-enum": { + "name": "DefaultAction", + "modelAsString": false + }, + "default": "Allow", + "description": "Specifies the default action of allow or deny when no other rules match." + } + }, + "required": [ + "defaultAction" + ], + "description": "Network rule set" + }, + "AzureFilesIdentityBasedAuthentication": { + "properties": { + "directoryServiceOptions": { + "type": "string", + "description": "Indicates the directory service used.", + "enum": [ + "None", + "AADDS", + "AD" + ], + "x-ms-enum": { + "name": "DirectoryServiceOptions", + "modelAsString": true + } + }, + "activeDirectoryProperties": { + "$ref": "#/definitions/ActiveDirectoryProperties", + "description": "Required if choose AD." + }, + "defaultSharePermission": { + "type": "string", + "description": "Default share permission for users using Kerberos authentication if RBAC role is not assigned.", + "enum": [ + "None", + "StorageFileDataSmbShareReader", + "StorageFileDataSmbShareContributor", + "StorageFileDataSmbShareElevatedContributor", + "StorageFileDataSmbShareOwner" + ], + "x-ms-enum": { + "name": "DefaultSharePermission", + "modelAsString": true + } + } + }, + "required": [ + "directoryServiceOptions" + ], + "description": "Settings for Azure Files identity based authentication." + }, + "ActiveDirectoryProperties": { + "properties": { + "domainName": { + "type": "string", + "description": "Specifies the primary domain that the AD DNS server is authoritative for." + }, + "netBiosDomainName": { + "type": "string", + "description": "Specifies the NetBIOS domain name." + }, + "forestName": { + "type": "string", + "description": "Specifies the Active Directory forest to get." + }, + "domainGuid": { + "type": "string", + "description": "Specifies the domain GUID." + }, + "domainSid": { + "type": "string", + "description": "Specifies the security identifier (SID)." + }, + "azureStorageSid": { + "type": "string", + "description": "Specifies the security identifier (SID) for Azure Storage." + } + }, + "required": [ + "domainName", + "netBiosDomainName", + "forestName", + "domainGuid", + "domainSid", + "azureStorageSid" + ], + "description": "Settings properties for Active Directory (AD)." + }, + "StorageAccountPropertiesCreateParameters": { + "properties": { + "sasPolicy": { + "$ref": "#/definitions/SasPolicy", + "description": "SasPolicy assigned to the storage account." + }, + "keyPolicy": { + "$ref": "#/definitions/KeyPolicy", + "description": "KeyPolicy assigned to the storage account." + }, + "customDomain": { + "$ref": "#/definitions/CustomDomain", + "description": "User domain assigned to the storage account. Name is the CNAME source. Only one custom domain is supported per storage account at this time. To clear the existing custom domain, use an empty string for the custom domain name property." + }, + "encryption": { + "$ref": "#/definitions/Encryption", + "description": "Not applicable. Azure Storage encryption is enabled for all storage accounts and cannot be disabled." + }, + "networkAcls": { + "$ref": "#/definitions/NetworkRuleSet", + "x-ms-client-name": "NetworkRuleSet", + "description": "Network rule set" + }, + "accessTier": { + "type": "string", + "description": "Required for storage accounts where kind = BlobStorage. The access tier used for billing.", + "enum": [ + "Hot", + "Cool" + ], + "x-ms-enum": { + "name": "AccessTier", + "modelAsString": false + } + }, + "azureFilesIdentityBasedAuthentication": { + "$ref": "#/definitions/AzureFilesIdentityBasedAuthentication", + "description": "Provides the identity based authentication settings for Azure Files." + }, + "supportsHttpsTrafficOnly": { + "type": "boolean", + "x-ms-client-name": "EnableHttpsTrafficOnly", + "description": "Allows https traffic only to storage service if sets to true. The default value is true since API version 2019-04-01." + }, + "isHnsEnabled": { + "type": "boolean", + "x-ms-client-name": "IsHnsEnabled", + "description": "Account HierarchicalNamespace enabled if sets to true." + }, + "largeFileSharesState": { + "type": "string", + "enum": [ + "Disabled", + "Enabled" + ], + "x-ms-enum": { + "name": "LargeFileSharesState", + "modelAsString": true + }, + "description": "Allow large file shares if sets to Enabled. It cannot be disabled once it is enabled." + }, + "routingPreference": { + "$ref": "#/definitions/RoutingPreference", + "x-ms-client-name": "RoutingPreference", + "description": "Maintains information about the network routing choice opted by the user for data transfer" + }, + "allowBlobPublicAccess": { + "type": "boolean", + "x-ms-client-name": "AllowBlobPublicAccess", + "description": "Allow or disallow public access to all blobs or containers in the storage account. The default interpretation is true for this property." + }, + "minimumTlsVersion": { + "type": "string", + "enum": [ + "TLS1_0", + "TLS1_1", + "TLS1_2" + ], + "x-ms-enum": { + "name": "MinimumTlsVersion", + "modelAsString": true + }, + "description": "Set the minimum TLS version to be permitted on requests to storage. The default interpretation is TLS 1.0 for this property." + }, + "allowSharedKeyAccess": { + "type": "boolean", + "description": "Indicates whether the storage account permits requests to be authorized with the account access key via Shared Key. If false, then all requests, including shared access signatures, must be authorized with Azure Active Directory (Azure AD). The default value is null, which is equivalent to true." + }, + "isNfsV3Enabled": { + "type": "boolean", + "x-ms-client-name": "EnableNfsV3", + "description": "NFS 3.0 protocol support enabled if set to true." + }, + "allowCrossTenantReplication": { + "type": "boolean", + "description": "Allow or disallow cross AAD tenant object replication. The default interpretation is true for this property." + } + }, + "description": "The parameters used to create the storage account." + }, + "Identity": { + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal ID of resource identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant ID of resource." + }, + "type": { + "type": "string", + "description": "The identity type.", + "enum": [ + "None", + "SystemAssigned", + "UserAssigned", + "SystemAssigned,UserAssigned" + ], + "x-ms-enum": { + "name": "IdentityType", + "modelAsString": true + } + }, + "userAssignedIdentities": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/UserAssignedIdentity" + }, + "description": "Gets or sets a list of key value pairs that describe the set of User Assigned identities that will be used with this storage account. The key is the ARM resource identifier of the identity. Only 1 User Assigned identity is permitted here." + } + }, + "required": [ + "type" + ], + "description": "Identity for the resource." + }, + "ExtendedLocationType": { + "type": "string", + "description": "The type of extendedLocation.", + "enum": [ + "EdgeZone" + ], + "x-ms-enum": { + "name": "ExtendedLocationTypes", + "modelAsString": true + } + }, + "ExtendedLocation": { + "description": "The complex type of the extended location.", + "properties": { + "name": { + "type": "string", + "description": "The name of the extended location." + }, + "type": { + "$ref": "#/definitions/ExtendedLocationType", + "description": "The type of the extended location." + } + } + }, + "StorageAccountCreateParameters": { + "properties": { + "sku": { + "$ref": "./common.json#/definitions/Sku", + "description": "Required. Gets or sets the SKU name." + }, + "kind": { + "type": "string", + "description": "Required. Indicates the type of storage account.", + "enum": [ + "Storage", + "StorageV2", + "BlobStorage", + "FileStorage", + "BlockBlobStorage" + ], + "x-ms-enum": { + "name": "Kind", + "modelAsString": true + } + }, + "location": { + "type": "string", + "description": "Required. Gets or sets the location of the resource. This will be one of the supported and registered Azure Geo Regions (e.g. West US, East US, Southeast Asia, etc.). The geo region of a resource cannot be changed once it is created, but if an identical geo region is specified on update, the request will succeed." + }, + "extendedLocation": { + "$ref": "#/definitions/ExtendedLocation", + "description": "Optional. Set the extended location of the resource. If not set, the storage account will be created in Azure main region. Otherwise it will be created in the specified extended location" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Gets or sets a list of key value pairs that describe the resource. These tags can be used for viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key with a length no greater than 128 characters and a value with a length no greater than 256 characters." + }, + "identity": { + "$ref": "#/definitions/Identity", + "description": "The identity of the resource." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/StorageAccountPropertiesCreateParameters", + "description": "The parameters used to create the storage account." + } + }, + "required": [ + "sku", + "kind", + "location" + ], + "description": "The parameters used when creating a storage account." + }, + "Endpoints": { + "properties": { + "blob": { + "readOnly": true, + "type": "string", + "description": "Gets the blob endpoint." + }, + "queue": { + "readOnly": true, + "type": "string", + "description": "Gets the queue endpoint." + }, + "table": { + "readOnly": true, + "type": "string", + "description": "Gets the table endpoint." + }, + "file": { + "readOnly": true, + "type": "string", + "description": "Gets the file endpoint." + }, + "web": { + "readOnly": true, + "type": "string", + "description": "Gets the web endpoint." + }, + "dfs": { + "readOnly": true, + "type": "string", + "description": "Gets the dfs endpoint." + }, + "microsoftEndpoints": { + "x-ms-client-flatten": false, + "$ref": "#/definitions/StorageAccountMicrosoftEndpoints", + "description": "Gets the microsoft routing storage endpoints." + }, + "internetEndpoints": { + "x-ms-client-flatten": false, + "$ref": "#/definitions/StorageAccountInternetEndpoints", + "description": "Gets the internet routing storage endpoints" + } + }, + "description": "The URIs that are used to perform a retrieval of a public blob, queue, table, web or dfs object." + }, + "StorageAccountMicrosoftEndpoints": { + "properties": { + "blob": { + "readOnly": true, + "type": "string", + "description": "Gets the blob endpoint." + }, + "queue": { + "readOnly": true, + "type": "string", + "description": "Gets the queue endpoint." + }, + "table": { + "readOnly": true, + "type": "string", + "description": "Gets the table endpoint." + }, + "file": { + "readOnly": true, + "type": "string", + "description": "Gets the file endpoint." + }, + "web": { + "readOnly": true, + "type": "string", + "description": "Gets the web endpoint." + }, + "dfs": { + "readOnly": true, + "type": "string", + "description": "Gets the dfs endpoint." + } + }, + "description": "The URIs that are used to perform a retrieval of a public blob, queue, table, web or dfs object via a microsoft routing endpoint." + }, + "StorageAccountInternetEndpoints": { + "properties": { + "blob": { + "readOnly": true, + "type": "string", + "description": "Gets the blob endpoint." + }, + "file": { + "readOnly": true, + "type": "string", + "description": "Gets the file endpoint." + }, + "web": { + "readOnly": true, + "type": "string", + "description": "Gets the web endpoint." + }, + "dfs": { + "readOnly": true, + "type": "string", + "description": "Gets the dfs endpoint." + } + }, + "description": "The URIs that are used to perform a retrieval of a public blob, file, web or dfs object via a internet routing endpoint." + }, + "GeoReplicationStats": { + "properties": { + "status": { + "readOnly": true, + "type": "string", + "description": "The status of the secondary location. Possible values are: - Live: Indicates that the secondary location is active and operational. - Bootstrap: Indicates initial synchronization from the primary location to the secondary location is in progress.This typically occurs when replication is first enabled. - Unavailable: Indicates that the secondary location is temporarily unavailable.", + "enum": [ + "Live", + "Bootstrap", + "Unavailable" + ], + "x-ms-enum": { + "name": "GeoReplicationStatus", + "modelAsString": true + } + }, + "lastSyncTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "All primary writes preceding this UTC date/time value are guaranteed to be available for read operations. Primary writes following this point in time may or may not be available for reads. Element may be default value if value of LastSyncTime is not available, this can happen if secondary is offline or we are in bootstrap." + }, + "canFailover": { + "readOnly": true, + "type": "boolean", + "description": "A boolean flag which indicates whether or not account failover is supported for the account." + } + }, + "description": "Statistics related to replication for storage account's Blob, Table, Queue and File services. It is only available when geo-redundant replication is enabled for the storage account." + }, + "RoutingPreference": { + "properties": { + "routingChoice": { + "type": "string", + "description": "Routing Choice defines the kind of network routing opted by the user.", + "enum": [ + "MicrosoftRouting", + "InternetRouting" + ], + "x-ms-enum": { + "name": "RoutingChoice", + "modelAsString": true + } + }, + "publishMicrosoftEndpoints": { + "type": "boolean", + "description": "A boolean flag which indicates whether microsoft routing storage endpoints are to be published" + }, + "publishInternetEndpoints": { + "type": "boolean", + "description": "A boolean flag which indicates whether internet routing storage endpoints are to be published" + } + }, + "description": "Routing preference defines the type of network, either microsoft or internet routing to be used to deliver the user data, the default option is microsoft routing" + }, + "BlobRestoreStatus": { + "properties": { + "status": { + "readOnly": true, + "type": "string", + "description": "The status of blob restore progress. Possible values are: - InProgress: Indicates that blob restore is ongoing. - Complete: Indicates that blob restore has been completed successfully. - Failed: Indicates that blob restore is failed.", + "enum": [ + "InProgress", + "Complete", + "Failed" + ], + "x-ms-enum": { + "name": "BlobRestoreProgressStatus", + "modelAsString": true + } + }, + "failureReason": { + "readOnly": true, + "type": "string", + "description": "Failure reason when blob restore is failed." + }, + "restoreId": { + "readOnly": true, + "type": "string", + "description": "Id for tracking blob restore request." + }, + "parameters": { + "readOnly": true, + "$ref": "#/definitions/BlobRestoreParameters", + "description": "Blob restore request parameters." + } + }, + "description": "Blob restore status." + }, + "DeletedAccountProperties": { + "properties": { + "storageAccountResourceId": { + "readOnly": true, + "type": "string", + "description": "Full resource id of the original storage account." + }, + "location": { + "readOnly": true, + "type": "string", + "description": "Location of the deleted account." + }, + "restoreReference": { + "readOnly": true, + "type": "string", + "description": "Can be used to attempt recovering this deleted account via PutStorageAccount API." + }, + "creationTime": { + "readOnly": true, + "type": "string", + "description": "Creation time of the deleted account." + }, + "deletionTime": { + "readOnly": true, + "type": "string", + "description": "Deletion time of the deleted account." + } + }, + "description": "Attributes of a deleted storage account." + }, + "StorageAccountProperties": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "Gets the status of the storage account at the time the operation was called.", + "enum": [ + "Creating", + "ResolvingDNS", + "Succeeded" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": false + } + }, + "primaryEndpoints": { + "$ref": "#/definitions/Endpoints", + "readOnly": true, + "description": "Gets the URLs that are used to perform a retrieval of a public blob, queue, or table object. Note that Standard_ZRS and Premium_LRS accounts only return the blob endpoint." + }, + "primaryLocation": { + "readOnly": true, + "type": "string", + "description": "Gets the location of the primary data center for the storage account." + }, + "statusOfPrimary": { + "readOnly": true, + "type": "string", + "description": "Gets the status indicating whether the primary location of the storage account is available or unavailable.", + "enum": [ + "available", + "unavailable" + ], + "x-ms-enum": { + "name": "AccountStatus", + "modelAsString": false + } + }, + "lastGeoFailoverTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "Gets the timestamp of the most recent instance of a failover to the secondary location. Only the most recent timestamp is retained. This element is not returned if there has never been a failover instance. Only available if the accountType is Standard_GRS or Standard_RAGRS." + }, + "secondaryLocation": { + "readOnly": true, + "type": "string", + "description": "Gets the location of the geo-replicated secondary for the storage account. Only available if the accountType is Standard_GRS or Standard_RAGRS." + }, + "statusOfSecondary": { + "readOnly": true, + "type": "string", + "description": "Gets the status indicating whether the secondary location of the storage account is available or unavailable. Only available if the SKU name is Standard_GRS or Standard_RAGRS.", + "enum": [ + "available", + "unavailable" + ], + "x-ms-enum": { + "name": "AccountStatus", + "modelAsString": false + } + }, + "creationTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "Gets the creation date and time of the storage account in UTC." + }, + "customDomain": { + "$ref": "#/definitions/CustomDomain", + "readOnly": true, + "description": "Gets the custom domain the user assigned to this storage account." + }, + "sasPolicy": { + "$ref": "#/definitions/SasPolicy", + "readOnly": true, + "description": "SasPolicy assigned to the storage account." + }, + "keyPolicy": { + "$ref": "#/definitions/KeyPolicy", + "readOnly": true, + "description": "KeyPolicy assigned to the storage account." + }, + "keyCreationTime": { + "readOnly": true, + "$ref": "#/definitions/KeyCreationTime", + "description": "Storage account keys creation time." + }, + "secondaryEndpoints": { + "$ref": "#/definitions/Endpoints", + "readOnly": true, + "description": "Gets the URLs that are used to perform a retrieval of a public blob, queue, or table object from the secondary location of the storage account. Only available if the SKU name is Standard_RAGRS." + }, + "encryption": { + "$ref": "#/definitions/Encryption", + "readOnly": true, + "description": "Gets the encryption settings on the account. If unspecified, the account is unencrypted." + }, + "accessTier": { + "readOnly": true, + "type": "string", + "description": "Required for storage accounts where kind = BlobStorage. The access tier used for billing.", + "enum": [ + "Hot", + "Cool" + ], + "x-ms-enum": { + "name": "AccessTier", + "modelAsString": false + } + }, + "azureFilesIdentityBasedAuthentication": { + "$ref": "#/definitions/AzureFilesIdentityBasedAuthentication", + "description": "Provides the identity based authentication settings for Azure Files." + }, + "supportsHttpsTrafficOnly": { + "type": "boolean", + "x-ms-client-name": "EnableHttpsTrafficOnly", + "description": "Allows https traffic only to storage service if sets to true." + }, + "networkAcls": { + "$ref": "#/definitions/NetworkRuleSet", + "x-ms-client-name": "NetworkRuleSet", + "description": "Network rule set", + "readOnly": true + }, + "isHnsEnabled": { + "type": "boolean", + "x-ms-client-name": "IsHnsEnabled", + "description": "Account HierarchicalNamespace enabled if sets to true." + }, + "geoReplicationStats": { + "$ref": "#/definitions/GeoReplicationStats", + "x-ms-client-name": "GeoReplicationStats", + "description": "Geo Replication Stats", + "readOnly": true + }, + "failoverInProgress": { + "type": "boolean", + "x-ms-client-name": "FailoverInProgress", + "description": "If the failover is in progress, the value will be true, otherwise, it will be null.", + "readOnly": true + }, + "largeFileSharesState": { + "type": "string", + "enum": [ + "Disabled", + "Enabled" + ], + "x-ms-enum": { + "name": "LargeFileSharesState", + "modelAsString": true + }, + "description": "Allow large file shares if sets to Enabled. It cannot be disabled once it is enabled." + }, + "privateEndpointConnections": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./privatelinks.json#/definitions/PrivateEndpointConnection" + }, + "description": "List of private endpoint connection associated with the specified storage account" + }, + "routingPreference": { + "$ref": "#/definitions/RoutingPreference", + "x-ms-client-name": "RoutingPreference", + "description": "Maintains information about the network routing choice opted by the user for data transfer" + }, + "blobRestoreStatus": { + "$ref": "#/definitions/BlobRestoreStatus", + "x-ms-client-name": "BlobRestoreStatus", + "description": "Blob restore status", + "readOnly": true + }, + "allowBlobPublicAccess": { + "type": "boolean", + "x-ms-client-name": "AllowBlobPublicAccess", + "description": "Allow or disallow public access to all blobs or containers in the storage account. The default interpretation is true for this property." + }, + "minimumTlsVersion": { + "type": "string", + "enum": [ + "TLS1_0", + "TLS1_1", + "TLS1_2" + ], + "x-ms-enum": { + "name": "MinimumTlsVersion", + "modelAsString": true + }, + "description": "Set the minimum TLS version to be permitted on requests to storage. The default interpretation is TLS 1.0 for this property." + }, + "allowSharedKeyAccess": { + "type": "boolean", + "description": "Indicates whether the storage account permits requests to be authorized with the account access key via Shared Key. If false, then all requests, including shared access signatures, must be authorized with Azure Active Directory (Azure AD). The default value is null, which is equivalent to true." + }, + "isNfsV3Enabled": { + "type": "boolean", + "x-ms-client-name": "EnableNfsV3", + "description": "NFS 3.0 protocol support enabled if set to true." + }, + "allowCrossTenantReplication": { + "type": "boolean", + "description": "Allow or disallow cross AAD tenant object replication. The default interpretation is true for this property." + } + }, + "description": "Properties of the storage account." + }, + "DeletedAccount": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DeletedAccountProperties", + "description": "Properties of the deleted account." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "Deleted storage account" + }, + "StorageAccount": { + "properties": { + "sku": { + "$ref": "./common.json#/definitions/Sku", + "readOnly": true, + "description": "Gets the SKU." + }, + "kind": { + "readOnly": true, + "type": "string", + "description": "Gets the Kind.", + "enum": [ + "Storage", + "StorageV2", + "BlobStorage", + "FileStorage", + "BlockBlobStorage" + ], + "x-ms-enum": { + "name": "Kind", + "modelAsString": true + } + }, + "identity": { + "$ref": "#/definitions/Identity", + "description": "The identity of the resource." + }, + "extendedLocation": { + "$ref": "#/definitions/ExtendedLocation", + "description": "The extendedLocation of the resource." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/StorageAccountProperties", + "description": "Properties of the storage account." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/TrackedResource" + } + ], + "description": "The storage account." + }, + "StorageAccountKey": { + "properties": { + "keyName": { + "readOnly": true, + "type": "string", + "description": "Name of the key." + }, + "value": { + "readOnly": true, + "type": "string", + "description": "Base 64-encoded value of the key." + }, + "permissions": { + "readOnly": true, + "type": "string", + "description": "Permissions for the key -- read-only or full permissions.", + "enum": [ + "Read", + "Full" + ], + "x-ms-enum": { + "name": "KeyPermission", + "modelAsString": false + } + }, + "creationTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "Creation time of the key, in round trip date format." + } + }, + "description": "An access key for the storage account." + }, + "StorageAccountListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/StorageAccount" + }, + "description": "Gets the list of storage accounts and their properties." + }, + "nextLink": { + "type": "string", + "description": "Request URL that can be used to query next page of storage accounts. Returned when total number of requested storage accounts exceed maximum page size.", + "readOnly": true + } + }, + "description": "The response from the List Storage Accounts operation." + }, + "DeletedAccountListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/DeletedAccount" + }, + "description": "Gets the list of deleted accounts and their properties." + }, + "nextLink": { + "type": "string", + "description": "Request URL that can be used to query next page of deleted accounts. Returned when total number of requested deleted accounts exceed maximum page size.", + "readOnly": true + } + }, + "description": "The response from the List Deleted Accounts operation." + }, + "StorageAccountListKeysResult": { + "properties": { + "keys": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/StorageAccountKey" + }, + "description": "Gets the list of storage account keys and their properties for the specified storage account." + } + }, + "description": "The response from the ListKeys operation." + }, + "StorageAccountRegenerateKeyParameters": { + "properties": { + "keyName": { + "type": "string", + "description": "The name of storage keys that want to be regenerated, possible values are key1, key2, kerb1, kerb2." + } + }, + "required": [ + "keyName" + ], + "description": "The parameters used to regenerate the storage account key." + }, + "StorageAccountPropertiesUpdateParameters": { + "properties": { + "customDomain": { + "$ref": "#/definitions/CustomDomain", + "description": "Custom domain assigned to the storage account by the user. Name is the CNAME source. Only one custom domain is supported per storage account at this time. To clear the existing custom domain, use an empty string for the custom domain name property." + }, + "encryption": { + "$ref": "#/definitions/Encryption", + "description": "Provides the encryption settings on the account. The default setting is unencrypted." + }, + "sasPolicy": { + "$ref": "#/definitions/SasPolicy", + "description": "SasPolicy assigned to the storage account." + }, + "keyPolicy": { + "$ref": "#/definitions/KeyPolicy", + "description": "KeyPolicy assigned to the storage account." + }, + "accessTier": { + "type": "string", + "description": "Required for storage accounts where kind = BlobStorage. The access tier used for billing.", + "enum": [ + "Hot", + "Cool" + ], + "x-ms-enum": { + "name": "AccessTier", + "modelAsString": false + } + }, + "azureFilesIdentityBasedAuthentication": { + "$ref": "#/definitions/AzureFilesIdentityBasedAuthentication", + "description": "Provides the identity based authentication settings for Azure Files." + }, + "supportsHttpsTrafficOnly": { + "type": "boolean", + "x-ms-client-name": "EnableHttpsTrafficOnly", + "description": "Allows https traffic only to storage service if sets to true." + }, + "networkAcls": { + "description": "Network rule set", + "x-ms-client-name": "NetworkRuleSet", + "$ref": "#/definitions/NetworkRuleSet" + }, + "largeFileSharesState": { + "type": "string", + "enum": [ + "Disabled", + "Enabled" + ], + "x-ms-enum": { + "name": "LargeFileSharesState", + "modelAsString": true + }, + "description": "Allow large file shares if sets to Enabled. It cannot be disabled once it is enabled." + }, + "routingPreference": { + "$ref": "#/definitions/RoutingPreference", + "x-ms-client-name": "RoutingPreference", + "description": "Maintains information about the network routing choice opted by the user for data transfer" + }, + "allowBlobPublicAccess": { + "type": "boolean", + "x-ms-client-name": "AllowBlobPublicAccess", + "description": "Allow or disallow public access to all blobs or containers in the storage account. The default interpretation is true for this property." + }, + "minimumTlsVersion": { + "type": "string", + "enum": [ + "TLS1_0", + "TLS1_1", + "TLS1_2" + ], + "x-ms-enum": { + "name": "MinimumTlsVersion", + "modelAsString": true + }, + "description": "Set the minimum TLS version to be permitted on requests to storage. The default interpretation is TLS 1.0 for this property." + }, + "allowSharedKeyAccess": { + "type": "boolean", + "description": "Indicates whether the storage account permits requests to be authorized with the account access key via Shared Key. If false, then all requests, including shared access signatures, must be authorized with Azure Active Directory (Azure AD). The default value is null, which is equivalent to true." + }, + "allowCrossTenantReplication": { + "type": "boolean", + "description": "Allow or disallow cross AAD tenant object replication. The default interpretation is true for this property." + } + }, + "description": "The parameters used when updating a storage account." + }, + "StorageAccountUpdateParameters": { + "properties": { + "sku": { + "$ref": "./common.json#/definitions/Sku", + "description": "Gets or sets the SKU name. Note that the SKU name cannot be updated to Standard_ZRS, Premium_LRS or Premium_ZRS, nor can accounts of those SKU names be updated to any other value." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Gets or sets a list of key value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater in length than 128 characters and a value no greater in length than 256 characters." + }, + "identity": { + "$ref": "#/definitions/Identity", + "description": "The identity of the resource." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/StorageAccountPropertiesUpdateParameters", + "description": "The parameters used when updating a storage account." + }, + "kind": { + "type": "string", + "description": "Optional. Indicates the type of storage account. Currently only StorageV2 value supported by server.", + "enum": [ + "Storage", + "StorageV2", + "BlobStorage", + "FileStorage", + "BlockBlobStorage" + ], + "x-ms-enum": { + "name": "Kind", + "modelAsString": true + } + } + }, + "description": "The parameters that can be provided when updating the storage account properties." + }, + "BlobRestoreParameters": { + "properties": { + "timeToRestore": { + "type": "string", + "format": "date-time", + "description": "Restore blob to the specified time." + }, + "blobRanges": { + "type": "array", + "items": { + "$ref": "#/definitions/BlobRestoreRange" + }, + "description": "Blob ranges to restore." + } + }, + "required": [ + "timeToRestore", + "blobRanges" + ], + "description": "Blob restore parameters" + }, + "BlobRestoreRange": { + "properties": { + "startRange": { + "type": "string", + "description": "Blob start range. This is inclusive. Empty means account start." + }, + "endRange": { + "type": "string", + "description": "Blob end range. This is exclusive. Empty means account end." + } + }, + "required": [ + "startRange", + "endRange" + ], + "description": "Blob range" + }, + "UsageName": { + "properties": { + "value": { + "readOnly": true, + "type": "string", + "description": "Gets a string describing the resource name." + }, + "localizedValue": { + "readOnly": true, + "type": "string", + "description": "Gets a localized string describing the resource name." + } + }, + "description": "The usage names that can be used; currently limited to StorageAccount." + }, + "Usage": { + "properties": { + "unit": { + "readOnly": true, + "type": "string", + "description": "Gets the unit of measurement.", + "enum": [ + "Count", + "Bytes", + "Seconds", + "Percent", + "CountsPerSecond", + "BytesPerSecond" + ], + "x-ms-enum": { + "name": "UsageUnit", + "modelAsString": false + } + }, + "currentValue": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "Gets the current count of the allocated resources in the subscription." + }, + "limit": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "Gets the maximum count of the resources that can be allocated in the subscription." + }, + "name": { + "$ref": "#/definitions/UsageName", + "readOnly": true, + "description": "Gets the name of the type of usage." + } + }, + "description": "Describes Storage Resource Usage." + }, + "UsageListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Usage" + }, + "description": "Gets or sets the list of Storage Resource Usages." + } + }, + "description": "The response from the List Usages operation." + }, + "AccountSasParameters": { + "properties": { + "signedServices": { + "type": "string", + "enum": [ + "b", + "q", + "t", + "f" + ], + "x-ms-enum": { + "name": "Services", + "modelAsString": true + }, + "x-ms-client-name": "Services", + "description": "The signed services accessible with the account SAS. Possible values include: Blob (b), Queue (q), Table (t), File (f)." + }, + "signedResourceTypes": { + "type": "string", + "enum": [ + "s", + "c", + "o" + ], + "x-ms-enum": { + "name": "SignedResourceTypes", + "modelAsString": true + }, + "x-ms-client-name": "ResourceTypes", + "description": "The signed resource types that are accessible with the account SAS. Service (s): Access to service-level APIs; Container (c): Access to container-level APIs; Object (o): Access to object-level APIs for blobs, queue messages, table entities, and files." + }, + "signedPermission": { + "type": "string", + "enum": [ + "r", + "d", + "w", + "l", + "a", + "c", + "u", + "p" + ], + "x-ms-enum": { + "name": "Permissions", + "modelAsString": true + }, + "x-ms-client-name": "Permissions", + "description": "The signed permissions for the account SAS. Possible values include: Read (r), Write (w), Delete (d), List (l), Add (a), Create (c), Update (u) and Process (p)." + }, + "signedIp": { + "type": "string", + "x-ms-client-name": "IPAddressOrRange", + "description": "An IP address or a range of IP addresses from which to accept requests." + }, + "signedProtocol": { + "type": "string", + "enum": [ + "https,http", + "https" + ], + "x-ms-enum": { + "name": "HttpProtocol", + "modelAsString": false + }, + "x-ms-client-name": "Protocols", + "description": "The protocol permitted for a request made with the account SAS." + }, + "signedStart": { + "type": "string", + "format": "date-time", + "x-ms-client-name": "SharedAccessStartTime", + "description": "The time at which the SAS becomes valid." + }, + "signedExpiry": { + "type": "string", + "format": "date-time", + "x-ms-client-name": "SharedAccessExpiryTime", + "description": "The time at which the shared access signature becomes invalid." + }, + "keyToSign": { + "type": "string", + "description": "The key to sign the account SAS token with." + } + }, + "required": [ + "signedServices", + "signedResourceTypes", + "signedPermission", + "signedExpiry" + ], + "description": "The parameters to list SAS credentials of a storage account." + }, + "ListAccountSasResponse": { + "properties": { + "accountSasToken": { + "readOnly": true, + "type": "string", + "description": "List SAS credentials of storage account." + } + }, + "description": "The List SAS credentials operation response." + }, + "ServiceSasParameters": { + "properties": { + "canonicalizedResource": { + "type": "string", + "description": "The canonical path to the signed resource." + }, + "signedResource": { + "type": "string", + "enum": [ + "b", + "c", + "f", + "s" + ], + "x-ms-enum": { + "name": "signedResource", + "modelAsString": true + }, + "x-ms-client-name": "Resource", + "description": "The signed services accessible with the service SAS. Possible values include: Blob (b), Container (c), File (f), Share (s)." + }, + "signedPermission": { + "type": "string", + "enum": [ + "r", + "d", + "w", + "l", + "a", + "c", + "u", + "p" + ], + "x-ms-enum": { + "name": "Permissions", + "modelAsString": true + }, + "x-ms-client-name": "Permissions", + "description": "The signed permissions for the service SAS. Possible values include: Read (r), Write (w), Delete (d), List (l), Add (a), Create (c), Update (u) and Process (p)." + }, + "signedIp": { + "type": "string", + "x-ms-client-name": "IPAddressOrRange", + "description": "An IP address or a range of IP addresses from which to accept requests." + }, + "signedProtocol": { + "type": "string", + "enum": [ + "https,http", + "https" + ], + "x-ms-enum": { + "name": "HttpProtocol", + "modelAsString": false + }, + "x-ms-client-name": "Protocols", + "description": "The protocol permitted for a request made with the account SAS." + }, + "signedStart": { + "type": "string", + "format": "date-time", + "x-ms-client-name": "SharedAccessStartTime", + "description": "The time at which the SAS becomes valid." + }, + "signedExpiry": { + "type": "string", + "format": "date-time", + "x-ms-client-name": "SharedAccessExpiryTime", + "description": "The time at which the shared access signature becomes invalid." + }, + "signedIdentifier": { + "type": "string", + "maxLength": 64, + "x-ms-client-name": "Identifier", + "description": "A unique value up to 64 characters in length that correlates to an access policy specified for the container, queue, or table." + }, + "startPk": { + "type": "string", + "x-ms-client-name": "PartitionKeyStart", + "description": "The start of partition key." + }, + "endPk": { + "type": "string", + "x-ms-client-name": "PartitionKeyEnd", + "description": "The end of partition key." + }, + "startRk": { + "type": "string", + "x-ms-client-name": "RowKeyStart", + "description": "The start of row key." + }, + "endRk": { + "type": "string", + "x-ms-client-name": "RowKeyEnd", + "description": "The end of row key." + }, + "keyToSign": { + "type": "string", + "description": "The key to sign the account SAS token with." + }, + "rscc": { + "type": "string", + "x-ms-client-name": "CacheControl", + "description": "The response header override for cache control." + }, + "rscd": { + "type": "string", + "x-ms-client-name": "ContentDisposition", + "description": "The response header override for content disposition." + }, + "rsce": { + "type": "string", + "x-ms-client-name": "ContentEncoding", + "description": "The response header override for content encoding." + }, + "rscl": { + "type": "string", + "x-ms-client-name": "ContentLanguage", + "description": "The response header override for content language." + }, + "rsct": { + "type": "string", + "x-ms-client-name": "ContentType", + "description": "The response header override for content type." + } + }, + "required": [ + "canonicalizedResource" + ], + "description": "The parameters to list service SAS credentials of a specific resource." + }, + "ListServiceSasResponse": { + "properties": { + "serviceSasToken": { + "readOnly": true, + "type": "string", + "description": "List service SAS credentials of specific resource." + } + }, + "description": "The List service SAS credentials operation response." + }, + "ManagementPolicy": { + "properties": { + "properties": { + "$ref": "#/definitions/ManagementPolicyProperties", + "x-ms-client-flatten": true, + "description": "Returns the Storage Account Data Policies Rules." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "description": "The Get Storage Account ManagementPolicies operation response." + }, + "ManagementPolicyProperties": { + "properties": { + "lastModifiedTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "Returns the date and time the ManagementPolicies was last modified." + }, + "policy": { + "$ref": "#/definitions/ManagementPolicySchema", + "description": "The Storage Account ManagementPolicy, in JSON format. See more details in: https://docs.microsoft.com/en-us/azure/storage/common/storage-lifecycle-managment-concepts." + } + }, + "required": [ + "policy" + ], + "description": "The Storage Account ManagementPolicy properties." + }, + "ManagementPolicySchema": { + "properties": { + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/ManagementPolicyRule" + }, + "description": "The Storage Account ManagementPolicies Rules. See more details in: https://docs.microsoft.com/en-us/azure/storage/common/storage-lifecycle-managment-concepts." + } + }, + "required": [ + "rules" + ], + "description": "The Storage Account ManagementPolicies Rules. See more details in: https://docs.microsoft.com/en-us/azure/storage/common/storage-lifecycle-managment-concepts." + }, + "ManagementPolicyRule": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Rule is enabled if set to true." + }, + "name": { + "type": "string", + "description": "A rule name can contain any combination of alpha numeric characters. Rule name is case-sensitive. It must be unique within a policy." + }, + "type": { + "type": "string", + "description": "The valid value is Lifecycle", + "enum": [ + "Lifecycle" + ], + "x-ms-enum": { + "name": "RuleType", + "modelAsString": true + } + }, + "definition": { + "$ref": "#/definitions/ManagementPolicyDefinition", + "description": "An object that defines the Lifecycle rule." + } + }, + "required": [ + "name", + "type", + "definition" + ], + "description": "An object that wraps the Lifecycle rule. Each rule is uniquely defined by name." + }, + "ManagementPolicyDefinition": { + "properties": { + "actions": { + "$ref": "#/definitions/ManagementPolicyAction", + "description": "An object that defines the action set." + }, + "filters": { + "$ref": "#/definitions/ManagementPolicyFilter", + "description": "An object that defines the filter set." + } + }, + "required": [ + "actions" + ], + "description": "An object that defines the Lifecycle rule. Each definition is made up with a filters set and an actions set." + }, + "ManagementPolicyFilter": { + "properties": { + "prefixMatch": { + "type": "array", + "items": { + "type": "string" + }, + "description": "An array of strings for prefixes to be match." + }, + "blobTypes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "An array of predefined enum values. Currently blockBlob supports all tiering and delete actions. Only delete actions are supported for appendBlob." + }, + "blobIndexMatch": { + "type": "array", + "items": { + "$ref": "#/definitions/TagFilter" + }, + "description": "An array of blob index tag based filters, there can be at most 10 tag filters" + } + }, + "required": [ + "blobTypes" + ], + "description": "Filters limit rule actions to a subset of blobs within the storage account. If multiple filters are defined, a logical AND is performed on all filters. " + }, + "TagFilter": { + "properties": { + "name": { + "type": "string", + "minLength": 1, + "maxLength": 128, + "description": "This is the filter tag name, it can have 1 - 128 characters" + }, + "op": { + "type": "string", + "description": "This is the comparison operator which is used for object comparison and filtering. Only == (equality operator) is currently supported" + }, + "value": { + "type": "string", + "minLength": 0, + "maxLength": 256, + "description": "This is the filter tag value field used for tag based filtering, it can have 0 - 256 characters" + } + }, + "required": [ + "name", + "op", + "value" + ], + "description": "Blob index tag based filtering for blob objects" + }, + "ManagementPolicyAction": { + "properties": { + "baseBlob": { + "$ref": "#/definitions/ManagementPolicyBaseBlob", + "description": "The management policy action for base blob" + }, + "snapshot": { + "$ref": "#/definitions/ManagementPolicySnapShot", + "description": "The management policy action for snapshot" + }, + "version": { + "$ref": "#/definitions/ManagementPolicyVersion", + "description": "The management policy action for version" + } + }, + "description": "Actions are applied to the filtered blobs when the execution condition is met." + }, + "ManagementPolicyBaseBlob": { + "properties": { + "tierToCool": { + "$ref": "#/definitions/DateAfterModification", + "description": "The function to tier blobs to cool storage. Support blobs currently at Hot tier" + }, + "tierToArchive": { + "$ref": "#/definitions/DateAfterModification", + "description": "The function to tier blobs to archive storage. Support blobs currently at Hot or Cool tier" + }, + "delete": { + "$ref": "#/definitions/DateAfterModification", + "description": "The function to delete the blob" + }, + "enableAutoTierToHotFromCool": { + "type": "boolean", + "description": "This property enables auto tiering of a blob from cool to hot on a blob access. This property requires tierToCool.daysAfterLastAccessTimeGreaterThan." + } + }, + "description": "Management policy action for base blob." + }, + "ManagementPolicySnapShot": { + "properties": { + "tierToCool": { + "$ref": "#/definitions/DateAfterCreation", + "description": "The function to tier blob snapshot to cool storage. Support blob snapshot currently at Hot tier" + }, + "tierToArchive": { + "$ref": "#/definitions/DateAfterCreation", + "description": "The function to tier blob snapshot to archive storage. Support blob snapshot currently at Hot or Cool tier" + }, + "delete": { + "$ref": "#/definitions/DateAfterCreation", + "description": "The function to delete the blob snapshot" + } + }, + "description": "Management policy action for snapshot." + }, + "ManagementPolicyVersion": { + "properties": { + "tierToCool": { + "$ref": "#/definitions/DateAfterCreation", + "description": "The function to tier blob version to cool storage. Support blob version currently at Hot tier" + }, + "tierToArchive": { + "$ref": "#/definitions/DateAfterCreation", + "description": "The function to tier blob version to archive storage. Support blob version currently at Hot or Cool tier" + }, + "delete": { + "$ref": "#/definitions/DateAfterCreation", + "description": "The function to delete the blob version" + } + }, + "description": "Management policy action for blob version." + }, + "DateAfterModification": { + "properties": { + "daysAfterModificationGreaterThan": { + "type": "number", + "multipleOf": 1.0, + "minimum": 0, + "description": "Value indicating the age in days after last modification" + }, + "daysAfterLastAccessTimeGreaterThan": { + "type": "number", + "multipleOf": 1.0, + "minimum": 0, + "description": "Value indicating the age in days after last blob access. This property can only be used in conjunction with last access time tracking policy" + } + }, + "description": "Object to define the number of days after object last modification Or last access. Properties daysAfterModificationGreaterThan and daysAfterLastAccessTimeGreaterThan are mutually exclusive." + }, + "DateAfterCreation": { + "properties": { + "daysAfterCreationGreaterThan": { + "type": "number", + "multipleOf": 1.0, + "minimum": 0, + "description": "Value indicating the age in days after creation" + } + }, + "required": [ + "daysAfterCreationGreaterThan" + ], + "description": "Object to define the number of days after creation." + }, + "EncryptionScope": { + "properties": { + "properties": { + "$ref": "#/definitions/EncryptionScopeProperties", + "x-ms-client-flatten": true, + "x-ms-client-name": "EncryptionScopeProperties", + "description": "Properties of the encryption scope." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "description": "The Encryption Scope resource." + }, + "EncryptionScopeProperties": { + "properties": { + "source": { + "type": "string", + "enum": [ + "Microsoft.Storage", + "Microsoft.KeyVault" + ], + "x-ms-enum": { + "name": "EncryptionScopeSource", + "modelAsString": true + }, + "description": "The provider for the encryption scope. Possible values (case-insensitive): Microsoft.Storage, Microsoft.KeyVault." + }, + "state": { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "EncryptionScopeState", + "modelAsString": true + }, + "description": "The state of the encryption scope. Possible values (case-insensitive): Enabled, Disabled." + }, + "creationTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "Gets the creation date and time of the encryption scope in UTC." + }, + "lastModifiedTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "Gets the last modification date and time of the encryption scope in UTC." + }, + "keyVaultProperties": { + "$ref": "#/definitions/EncryptionScopeKeyVaultProperties", + "description": "The key vault properties for the encryption scope. This is a required field if encryption scope 'source' attribute is set to 'Microsoft.KeyVault'." + }, + "requireInfrastructureEncryption": { + "type": "boolean", + "description": "A boolean indicating whether or not the service applies a secondary layer of encryption with platform managed keys for data at rest." + } + }, + "description": "Properties of the encryption scope." + }, + "EncryptionScopeKeyVaultProperties": { + "properties": { + "keyUri": { + "type": "string", + "description": "The object identifier for a key vault key object. When applied, the encryption scope will use the key referenced by the identifier to enable customer-managed key support on this encryption scope." + }, + "currentVersionedKeyIdentifier": { + "type": "string", + "readOnly": true, + "description": "The object identifier of the current versioned Key Vault Key in use." + }, + "lastKeyRotationTimestamp": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "Timestamp of last rotation of the Key Vault Key." + } + }, + "description": "The key vault properties for the encryption scope. This is a required field if encryption scope 'source' attribute is set to 'Microsoft.KeyVault'." + }, + "EncryptionScopeListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/EncryptionScope" + }, + "description": "List of encryption scopes requested.", + "readOnly": true + }, + "nextLink": { + "type": "string", + "description": "Request URL that can be used to query next page of encryption scopes. Returned when total number of requested encryption scopes exceeds the maximum page size.", + "readOnly": true + } + }, + "description": "List of encryption scopes requested, and if paging is required, a URL to the next page of encryption scopes." + }, + "ObjectReplicationPolicies": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ObjectReplicationPolicy" + }, + "description": "The replication policy between two storage accounts." + } + }, + "description": "List storage account object replication policies." + }, + "ObjectReplicationPolicy": { + "properties": { + "properties": { + "$ref": "#/definitions/ObjectReplicationPolicyProperties", + "x-ms-client-flatten": true, + "description": "Returns the Storage Account Object Replication Policy." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "description": "The replication policy between two storage accounts. Multiple rules can be defined in one policy." + }, + "ObjectReplicationPolicyProperties": { + "properties": { + "policyId": { + "readOnly": true, + "type": "string", + "description": "A unique id for object replication policy." + }, + "enabledTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "Indicates when the policy is enabled on the source account." + }, + "sourceAccount": { + "type": "string", + "description": "Required. Source account name. It should be full resource id if allowCrossTenantReplication set to false." + }, + "destinationAccount": { + "type": "string", + "description": "Required. Destination account name. It should be full resource id if allowCrossTenantReplication set to false." + }, + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/ObjectReplicationPolicyRule" + }, + "description": "The storage account object replication rules." + } + }, + "required": [ + "sourceAccount", + "destinationAccount" + ], + "description": "The Storage Account ObjectReplicationPolicy properties." + }, + "ObjectReplicationPolicyRule": { + "properties": { + "ruleId": { + "type": "string", + "description": "Rule Id is auto-generated for each new rule on destination account. It is required for put policy on source account." + }, + "sourceContainer": { + "type": "string", + "description": "Required. Source container name." + }, + "destinationContainer": { + "type": "string", + "description": "Required. Destination container name." + }, + "filters": { + "$ref": "#/definitions/ObjectReplicationPolicyFilter", + "description": "Optional. An object that defines the filter set." + } + }, + "required": [ + "sourceContainer", + "destinationContainer" + ], + "description": "The replication policy rule between two containers." + }, + "ObjectReplicationPolicyFilter": { + "properties": { + "prefixMatch": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Optional. Filters the results to replicate only blobs whose names begin with the specified prefix." + }, + "minCreationTime": { + "type": "string", + "description": "Blobs created after the time will be replicated to the destination. It must be in datetime format 'yyyy-MM-ddTHH:mm:ssZ'. Example: 2020-02-19T16:05:00Z" + } + }, + "description": "Filters limit replication to a subset of blobs within the storage account. A logical OR is performed on values in the filter. If multiple filters are defined, a logical AND is performed on all filters." + }, + "ListBlobInventoryPolicy": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BlobInventoryPolicy" + }, + "description": "List of blob inventory policies.", + "readOnly": true + } + }, + "description": "List of blob inventory policies returned." + }, + "BlobInventoryPolicy": { + "properties": { + "properties": { + "$ref": "#/definitions/BlobInventoryPolicyProperties", + "x-ms-client-flatten": true, + "description": "Returns the storage account blob inventory policy rules." + }, + "systemData": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData" + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "description": "The storage account blob inventory policy." + }, + "BlobInventoryPolicyProperties": { + "properties": { + "lastModifiedTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "Returns the last modified date and time of the blob inventory policy." + }, + "policy": { + "$ref": "#/definitions/BlobInventoryPolicySchema", + "description": "The storage account blob inventory policy object. It is composed of policy rules." + } + }, + "required": [ + "policy" + ], + "description": "The storage account blob inventory policy properties." + }, + "BlobInventoryPolicySchema": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Policy is enabled if set to true." + }, + "type": { + "type": "string", + "description": "The valid value is Inventory", + "enum": [ + "Inventory" + ], + "x-ms-enum": { + "name": "InventoryRuleType", + "modelAsString": true + } + }, + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/BlobInventoryPolicyRule" + }, + "description": "The storage account blob inventory policy rules. The rule is applied when it is enabled." + } + }, + "required": [ + "enabled", + "type", + "rules" + ], + "description": "The storage account blob inventory policy rules." + }, + "BlobInventoryPolicyRule": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Rule is enabled when set to true." + }, + "name": { + "type": "string", + "description": "A rule name can contain any combination of alpha numeric characters. Rule name is case-sensitive. It must be unique within a policy." + }, + "destination": { + "type": "string", + "description": "Container name where blob inventory files are stored. Must be pre-created." + }, + "definition": { + "$ref": "#/definitions/BlobInventoryPolicyDefinition", + "description": "An object that defines the blob inventory policy rule." + } + }, + "required": [ + "name", + "enabled", + "destination", + "definition" + ], + "description": "An object that wraps the blob inventory rule. Each rule is uniquely defined by name." + }, + "BlobInventoryPolicyDefinition": { + "properties": { + "filters": { + "$ref": "#/definitions/BlobInventoryPolicyFilter", + "description": "An object that defines the filter set." + }, + "format": { + "type": "string", + "description": "This is a required field, it specifies the format for the inventory files.", + "enum": [ + "Csv", + "Parquet" + ], + "x-ms-enum": { + "name": "format", + "modelAsString": true + } + }, + "schedule": { + "type": "string", + "description": "This is a required field. This field is used to schedule an inventory formation.", + "enum": [ + "Daily", + "Weekly" + ], + "x-ms-enum": { + "name": "schedule", + "modelAsString": true + } + }, + "objectType": { + "type": "string", + "description": "This is a required field. This field specifies the scope of the inventory created either at the blob or container level.", + "enum": [ + "Blob", + "Container" + ], + "x-ms-enum": { + "name": "objectType", + "modelAsString": true + } + }, + "schemaFields": { + "type": "array", + "items": { + "type": "string" + }, + "description": "This is a required field. This field specifies the fields and properties of the object to be included in the inventory. The Schema field value 'Name' is always required. The valid values for this field for the 'Blob' definition.objectType include 'Name, Creation-Time, Last-Modified, Content-Length, Content-MD5, BlobType, AccessTier, AccessTierChangeTime, Expiry-Time, hdi_isfolder, Owner, Group, Permissions, Acl, Snapshot, VersionId, IsCurrentVersion, Metadata, LastAccessTime'. The valid values for 'Container' definition.objectType include 'Name, Last-Modified, Metadata, LeaseStatus, LeaseState, LeaseDuration, PublicAccess, HasImmutabilityPolicy, HasLegalHold'. Schema field values 'Expiry-Time, hdi_isfolder, Owner, Group, Permissions, Acl' are valid only for Hns enabled accounts." + } + }, + "required": [ + "format", + "schedule", + "objectType", + "schemaFields" + ], + "description": "An object that defines the blob inventory rule." + }, + "BlobInventoryPolicyFilter": { + "properties": { + "prefixMatch": { + "type": "array", + "items": { + "type": "string" + }, + "description": "An array of strings for blob prefixes to be matched." + }, + "blobTypes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "An array of predefined enum values. Valid values include blockBlob, appendBlob, pageBlob. Hns accounts does not support pageBlobs. This field is required when definition.objectType property is set to 'Blob'." + }, + "includeBlobVersions": { + "type": "boolean", + "description": "Includes blob versions in blob inventory when value is set to true. The definition.schemaFields values 'VersionId and IsCurrentVersion' are required if this property is set to true, else they must be excluded." + }, + "includeSnapshots": { + "type": "boolean", + "description": "Includes blob snapshots in blob inventory when value is set to true. The definition.schemaFields value 'Snapshot' is required if this property is set to true, else it must be excluded." + } + }, + "description": "An object that defines the blob inventory rule filter conditions. For 'Blob' definition.objectType all filter properties are applicable, 'blobTypes' is required and others are optional. For 'Container' definition.objectType only prefixMatch is applicable and is optional." + }, + "ErrorResponseBody": { + "properties": { + "code": { + "type": "string", + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "type": "string", + "description": "A message describing the error, intended to be suitable for display in a user interface." + } + }, + "description": "Error response body contract." + }, + "ErrorResponse": { + "properties": { + "error": { + "$ref": "#/definitions/ErrorResponseBody", + "description": "Azure Storage Resource Provider error response body." + } + }, + "description": "An error response from the storage resource provider." + } + }, + "parameters": { + "ResourceGroupName": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group within the user's subscription. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90, + "x-ms-parameter-location": "method" + }, + "StorageAccountName": { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the storage account within the specified resource group. Storage account names must be between 3 and 24 characters in length and use numbers and lower-case letters only.", + "maxLength": 24, + "minLength": 3, + "x-ms-parameter-location": "method" + }, + "DeletedAccountName": { + "name": "deletedAccountName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the deleted storage account.", + "maxLength": 24, + "minLength": 3, + "x-ms-parameter-location": "method" + }, + "ManagementPolicyName": { + "name": "managementPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Storage Account Management Policy. It should always be 'default'", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "ManagementPolicyName", + "modelAsString": true + }, + "x-ms-parameter-location": "method" + }, + "EncryptionScopeName": { + "name": "encryptionScopeName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the encryption scope within the specified storage account. Encryption scope names must be between 3 and 63 characters in length and use numbers, lower-case letters and dash (-) only. Every dash (-) character must be immediately preceded and followed by a letter or number.", + "maxLength": 63, + "minLength": 3, + "x-ms-parameter-location": "method" + }, + "ObjectReplicationPolicyId": { + "name": "objectReplicationPolicyId", + "in": "path", + "required": true, + "type": "string", + "description": "For the destination account, provide the value 'default'. Configure the policy on the destination account first. For the source account, provide the value of the policy ID that is returned when you download the policy that was defined on the destination account. The policy is downloaded as a JSON file.", + "minLength": 1, + "x-ms-parameter-location": "method" + }, + "BlobInventoryPolicyName": { + "name": "blobInventoryPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the storage account blob inventory policy. It should always be 'default'", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "BlobInventoryPolicyName", + "modelAsString": true + }, + "x-ms-parameter-location": "method" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/table.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/table.json new file mode 100644 index 000000000000..99944500e3c6 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2021-04-01/table.json @@ -0,0 +1,495 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-04-01", + "title": "StorageManagementClient", + "description": "The Azure Storage Management API." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/tableServices": { + "get": { + "tags": [ + "TableServiceProperties" + ], + "operationId": "TableServices_List", + "x-ms-examples": { + "TableServicesList": { + "$ref": "./examples/TableServicesList.json" + } + }, + "description": "List all table services for the storage account.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- returned the properties of a storage account’s Table service.", + "schema": { + "$ref": "#/definitions/ListTableServices" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./file.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/tableServices/{tableServiceName}": { + "put": { + "tags": [ + "TableServiceProperties" + ], + "operationId": "TableServices_SetServiceProperties", + "x-ms-examples": { + "TableServicesPut": { + "$ref": "./examples/TableServicesPut.json" + } + }, + "description": "Sets the properties of a storage account’s Table service, including properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) rules. ", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/TableServiceName" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TableServiceProperties" + }, + "description": "The properties of a storage account’s Table service, only properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) rules can be specified." + } + ], + "responses": { + "200": { + "description": "OK -- Sets The properties of a storage account’s Table service successfully.", + "schema": { + "$ref": "#/definitions/TableServiceProperties" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./file.json#/definitions/CloudError" + } + } + } + }, + "get": { + "tags": [ + "TableServiceProperties" + ], + "operationId": "TableServices_GetServiceProperties", + "x-ms-examples": { + "TableServicesGet": { + "$ref": "./examples/TableServicesGet.json" + } + }, + "description": "Gets the properties of a storage account’s Table service, including properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) rules.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/TableServiceName" + } + ], + "responses": { + "200": { + "description": "OK -- returned the properties of a storage account’s Table service.", + "schema": { + "$ref": "#/definitions/TableServiceProperties" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./file.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/tableServices/default/tables/{tableName}": { + "put": { + "tags": [ + "TableService" + ], + "operationId": "Table_Create", + "x-ms-examples": { + "TableOperationPut": { + "$ref": "./examples/TableOperationPut.json" + } + }, + "description": "Creates a new table with the specified table name, under the specified account.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/TableName" + } + ], + "responses": { + "200": { + "description": "OK -- Creates a table with the given table name successfully.", + "schema": { + "$ref": "#/definitions/Table" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./file.json#/definitions/CloudError" + } + } + } + }, + "patch": { + "tags": [ + "TableService" + ], + "operationId": "Table_Update", + "x-ms-examples": { + "TableOperationPatch": { + "$ref": "./examples/TableOperationPatch.json" + } + }, + "description": "Creates a new table with the specified table name, under the specified account.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/TableName" + } + ], + "responses": { + "200": { + "description": "OK -- Creates a table with the given table name successfully.", + "schema": { + "$ref": "#/definitions/Table" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./file.json#/definitions/CloudError" + } + } + } + }, + "get": { + "tags": [ + "TableService" + ], + "operationId": "Table_Get", + "x-ms-examples": { + "TableOperationGet": { + "$ref": "./examples/TableOperationGet.json" + } + }, + "description": "Gets the table with the specified table name, under the specified account if it exists.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/TableName" + } + ], + "responses": { + "200": { + "description": "OK -- returned table with the specified table name successfully.", + "schema": { + "$ref": "#/definitions/Table" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./file.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "TableService" + ], + "operationId": "Table_Delete", + "x-ms-examples": { + "TableOperationDelete": { + "$ref": "./examples/TableOperationDelete.json" + } + }, + "description": "Deletes the table with the specified table name, under the specified account if it exists.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/TableName" + } + ], + "responses": { + "204": { + "description": "No Content - Successfully deleted the table with the specified table name" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./file.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/tableServices/default/tables": { + "get": { + "tags": [ + "TableService" + ], + "operationId": "Table_List", + "x-ms-examples": { + "TableOperationList": { + "$ref": "./examples/TableOperationList.json" + } + }, + "description": "Gets a list of all the tables under the specified storage account", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- returned a list of tables successfully.", + "schema": { + "$ref": "#/definitions/ListTableResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./file.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "ListTableServices": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/TableServiceProperties" + }, + "description": "List of table services returned.", + "readOnly": true + } + } + }, + "TableServiceProperties": { + "properties": { + "properties": { + "properties": { + "cors": { + "$ref": "./common.json#/definitions/CorsRules", + "description": "Specifies CORS rules for the Table service. You can include up to five CorsRule elements in the request. If no CorsRule elements are included in the request body, all CORS rules will be deleted, and CORS will be disabled for the Table service." + } + }, + "x-ms-client-flatten": true, + "x-ms-client-name": "TableServiceProperties", + "description": "The properties of a storage account’s Table service." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "description": "The properties of a storage account’s Table service." + }, + "Table": { + "properties": { + "properties": { + "$ref": "#/definitions/TableProperties", + "x-ms-client-flatten": true, + "x-ms-client-name": "TableProperties", + "description": "Table resource properties." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "description": "Properties of the table, including Id, resource name, resource type." + }, + "TableProperties": { + "properties": { + "tableName": { + "type": "string", + "readOnly": true, + "description": "Table name under the specified account" + } + } + }, + "ListTableResource": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Table" + }, + "description": "List of tables returned.", + "readOnly": true + }, + "nextLink": { + "type": "string", + "description": "Request URL that can be used to query next page of tables", + "readOnly": true + } + }, + "description": "Response schema. Contains list of tables returned" + } + }, + "parameters": { + "TableServiceName": { + "name": "tableServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Table Service within the specified storage account. Table Service Name must be 'default'", + "enum": [ + "default" + ], + "x-ms-parameter-location": "method" + }, + "TableName": { + "name": "tableName", + "in": "path", + "required": true, + "type": "string", + "description": "A table name must be unique within a storage account and must be between 3 and 63 characters.The name must comprise of only alphanumeric characters and it cannot begin with a numeric character.", + "maxLength": 63, + "minLength": 3, + "pattern": "^[A-Za-z][A-Za-z0-9]{2,62}$", + "x-ms-parameter-location": "method" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/storage/resource-manager/readme.azureresourceschema.md b/specification/storage/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 362b87cc7949..000000000000 --- a/specification/storage/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,211 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-storage-2021-01-01 - - tag: schema-storage-2020-08-01-preview - - tag: schema-storage-2019-06-01 - - tag: schema-storage-2019-04-01 - - tag: schema-storage-2018-11-01 - - tag: schema-storage-2018-07-01 - - tag: schema-storage-2018-03-01-preview - - tag: schema-storage-2018-02-01 - - tag: schema-storage-2017-10-01 - - tag: schema-storage-2017-06-01 - - tag: schema-storage-2016-12-01 - - tag: schema-storage-2016-05-01 - - tag: schema-storage-2016-01-01 - - tag: schema-storage-2015-06-15 - - tag: schema-storage-2015-05-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-storage-2021-01-01 and azureresourceschema - -``` yaml $(tag) == 'schema-storage-2021-01-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Storage/stable/2021-01-01/storage.json - - Microsoft.Storage/stable/2021-01-01/blob.json - - Microsoft.Storage/stable/2021-01-01/file.json - - Microsoft.Storage/stable/2021-01-01/queue.json - - Microsoft.Storage/stable/2021-01-01/table.json - -``` - -### Tag: schema-storage-2020-08-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-storage-2020-08-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Storage/preview/2020-08-01-preview/storage.json - - Microsoft.Storage/preview/2020-08-01-preview/blob.json - - Microsoft.Storage/preview/2020-08-01-preview/file.json - - Microsoft.Storage/preview/2020-08-01-preview/queue.json - - Microsoft.Storage/preview/2020-08-01-preview/table.json - -``` - -### Tag: schema-storage-2019-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-storage-2019-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Storage/stable/2019-06-01/storage.json - - Microsoft.Storage/stable/2019-06-01/blob.json - - Microsoft.Storage/stable/2019-06-01/file.json - - Microsoft.Storage/stable/2019-06-01/queue.json - - Microsoft.Storage/stable/2019-06-01/table.json - -``` - -### Tag: schema-storage-2019-04-01 and azureresourceschema - -``` yaml $(tag) == 'schema-storage-2019-04-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Storage/stable/2019-04-01/storage.json - - Microsoft.Storage/stable/2019-04-01/blob.json - - Microsoft.Storage/stable/2019-04-01/file.json - -``` - -### Tag: schema-storage-2018-11-01 and azureresourceschema - -``` yaml $(tag) == 'schema-storage-2018-11-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Storage/stable/2018-11-01/storage.json - - Microsoft.Storage/stable/2018-11-01/blob.json - -``` - -### Tag: schema-storage-2018-07-01 and azureresourceschema - -``` yaml $(tag) == 'schema-storage-2018-07-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Storage/stable/2018-07-01/storage.json - - Microsoft.Storage/stable/2018-07-01/blob.json - -``` - -### Tag: schema-storage-2018-03-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-storage-2018-03-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Storage/preview/2018-03-01-preview/managementpolicy.json - - Microsoft.Storage/preview/2018-03-01-preview/storage.json - - Microsoft.Storage/preview/2018-03-01-preview/blob.json - -``` - -### Tag: schema-storage-2018-02-01 and azureresourceschema - -``` yaml $(tag) == 'schema-storage-2018-02-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Storage/stable/2018-02-01/storage.json - - Microsoft.Storage/stable/2018-02-01/blob.json - -``` - -### Tag: schema-storage-2017-10-01 and azureresourceschema - -``` yaml $(tag) == 'schema-storage-2017-10-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Storage/stable/2017-10-01/storage.json - -``` - -### Tag: schema-storage-2017-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-storage-2017-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Storage/stable/2017-06-01/storage.json - -``` - -### Tag: schema-storage-2016-12-01 and azureresourceschema - -``` yaml $(tag) == 'schema-storage-2016-12-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Storage/stable/2016-12-01/storage.json - -``` - -### Tag: schema-storage-2016-05-01 and azureresourceschema - -``` yaml $(tag) == 'schema-storage-2016-05-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Storage/stable/2016-05-01/storage.json - -``` - -### Tag: schema-storage-2016-01-01 and azureresourceschema - -``` yaml $(tag) == 'schema-storage-2016-01-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Storage/stable/2016-01-01/storage.json - -``` - -### Tag: schema-storage-2015-06-15 and azureresourceschema - -``` yaml $(tag) == 'schema-storage-2015-06-15' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Storage/stable/2015-06-15/storage.json - -``` - -### Tag: schema-storage-2015-05-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-storage-2015-05-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Storage/preview/2015-05-01-preview/storage.json - -``` diff --git a/specification/storage/resource-manager/readme.csharp.md b/specification/storage/resource-manager/readme.csharp.md index 4e72310df959..11b2164fa4b3 100644 --- a/specification/storage/resource-manager/readme.csharp.md +++ b/specification/storage/resource-manager/readme.csharp.md @@ -81,3 +81,25 @@ output-folder: $(csharp-sdks-folder)/$(csharp-profile)/storage/Microsoft.Azure.M batch: - tag: profile-hybrid-2020-09-01 ``` + +### Profile: hybrid_2021_02_01 + +These settings apply only when `--csharp-profile=hybrid_2021_02_01` is specified on the command line. + +```yaml $(csharp-profile)=='hybrid_2021_02_01' +namespace: Microsoft.Azure.Management.Profiles.$(csharp-profile).Storage +output-folder: $(csharp-sdks-folder)/$(csharp-profile)/storage/Microsoft.Azure.Management.Storage/src/Generated +batch: + - tag: profile-hybrid-2021-02-01 +``` + +### Profile: hybrid_2021_04_01 + +These settings apply only when `--csharp-profile=hybrid_2021_04_01` is specified on the command line. + +```yaml $(csharp-profile)=='hybrid_2021_04_01' +namespace: Microsoft.Azure.Management.Profiles.$(csharp-profile).Storage +output-folder: $(csharp-sdks-folder)/$(csharp-profile)/storage/Microsoft.Azure.Management.Storage/src/Generated +batch: + - tag: profile-hybrid-2021-04-01 +``` \ No newline at end of file diff --git a/specification/storage/resource-manager/readme.go.md b/specification/storage/resource-manager/readme.go.md index a8a54a0781c6..c8bb501ab5fc 100644 --- a/specification/storage/resource-manager/readme.go.md +++ b/specification/storage/resource-manager/readme.go.md @@ -2,17 +2,27 @@ These settings apply only when `--go` is specified on the command line. -``` yaml $(go) +``` yaml $(go) && !$(track2) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: storage clear-output-folder: true ``` +``` yaml $(go) && $(track2) +license-header: MICROSOFT_MIT_NO_VERSION +module-name: sdk/storage/armstorage +module: github.com/Azure/azure-sdk-for-go/$(module-name) +output-folder: $(go-sdk-folder)/$(module-name) +azure-arm: true +``` + ### Go multi-api ``` yaml $(go) && $(multiapi) batch: + - tag: package-2021-04 + - tag: package-2021-02 - tag: package-2021-01 - tag: package-2020-08-preview - tag: package-2019-06 @@ -30,6 +40,24 @@ batch: - tag: package-2015-05-preview ``` +### Tag: package-2021-04 and go + +These settings apply only when `--tag=package-2021-04 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2021-04' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2021-04-01/$(namespace) +``` + +### Tag: package-2021-02 and go + +These settings apply only when `--tag=package-2021-02 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2021-02' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2021-02-01/$(namespace) +``` + ### Tag: package-2021-01 and go These settings apply only when `--tag=package-2021-01 --go` is specified on the command line. diff --git a/specification/storage/resource-manager/readme.java.md b/specification/storage/resource-manager/readme.java.md index 186b449ec8b5..9251d967260f 100644 --- a/specification/storage/resource-manager/readme.java.md +++ b/specification/storage/resource-manager/readme.java.md @@ -16,6 +16,8 @@ output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-storage ``` yaml $(java) && $(multiapi) batch: + - tag: package-2021-04 + - tag: package-2021-02 - tag: package-2020-08-preview - tag: package-2019-06 - tag: package-2019-04 @@ -26,6 +28,32 @@ batch: - tag: package-2016-01 ``` +### Tag: package-2021-04 and java + +These settings apply only when `--tag=package-2021-04 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-2021-04' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.storage.v2021_04_01 + output-folder: $(azure-libraries-for-java-folder)/sdk/storage/mgmt-v2021_04_01 +regenerate-manager: true +generate-interface: true +``` + +### Tag: package-2021-02 and java + +These settings apply only when `--tag=package-2021-02 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-2021-02' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.storage.v2021_02_01 + output-folder: $(azure-libraries-for-java-folder)/sdk/storage/mgmt-v2021_02_01 +regenerate-manager: true +generate-interface: true +``` + ### Tag: package-2020-08-preview and java These settings apply only when `--tag=package-2020-08-preview --java` is specified on the command line. diff --git a/specification/storage/resource-manager/readme.md b/specification/storage/resource-manager/readme.md index f5b55a0b27a2..cec195972c10 100644 --- a/specification/storage/resource-manager/readme.md +++ b/specification/storage/resource-manager/readme.md @@ -26,7 +26,112 @@ These are the global settings for the Storage API. ``` yaml openapi-type: arm -tag: package-2021-01 +tag: package-2021-04 +``` +### Tag: package-2021-04 + +These settings apply only when `--tag=package-2021-04` is specified on the command line. + +``` yaml $(tag) == 'package-2021-04' +input-file: +- Microsoft.Storage/stable/2021-04-01/storage.json +- Microsoft.Storage/stable/2021-04-01/blob.json +- Microsoft.Storage/stable/2021-04-01/file.json +- Microsoft.Storage/stable/2021-04-01/queue.json +- Microsoft.Storage/stable/2021-04-01/table.json + +directive: + - suppress: R3018 + reason: Existing boolean properties + approved-by: "@fearthecowboy" + + - where: + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/setLegalHold"].post.operationId + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/clearLegalHold"].post.operationId + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/regenerateKey"].post.operationId + suppress: R1003 + reason: APIs return array of values, is not actually a 'list' operation + approved-by: "@fearthecowboy" + + - where: + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/encryptionScopes/{encryptionScopeName}"].patch + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/encryptionScopes/{encryptionScopeName}"].put + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/encryptionScopes/{encryptionScopeName}"].get + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}"].put + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}"].patch + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}"].get + - $.paths["/subscriptions/{subscriptionId}/providers/Microsoft.Storage/locations/{location}/deletedAccounts/{deletedAccountName}"].get + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/managementPolicies/{managementPolicyName}"].get + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/managementPolicies/{managementPolicyName}"].put + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/managementPolicies/{managementPolicyName}"].put + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/privateEndpointConnections/{privateEndpointConnectionName}"].get + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/privateEndpointConnections/{privateEndpointConnectionName}"].put + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/objectReplicationPolicies/{objectReplicationPolicyId}"].get + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/objectReplicationPolicies/{objectReplicationPolicyId}"].put + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/encryptionScopes/{encryptionScopeName}"].get + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/{BlobServicesName}"].get + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/{BlobServicesName}"].put + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/fileServices/{FileServicesName}"].get + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/fileServices/{FileServicesName}"].put + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/queueServices/{queueServiceName}"].get + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/queueServices/{queueServiceName}"].put + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/tableServices/{tableServiceName}"].get + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/tableServices/{tableServiceName}"].put + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/queueServices/{queueServiceName}"].put + suppress: R4009 +``` + +### Tag: package-2021-02 + +These settings apply only when `--tag=package-2021-02` is specified on the command line. + +``` yaml $(tag) == 'package-2021-02' +input-file: +- Microsoft.Storage/stable/2021-02-01/storage.json +- Microsoft.Storage/stable/2021-02-01/blob.json +- Microsoft.Storage/stable/2021-02-01/file.json +- Microsoft.Storage/stable/2021-02-01/queue.json +- Microsoft.Storage/stable/2021-02-01/table.json + +directive: + - suppress: R3018 + reason: Existing boolean properties + approved-by: "@fearthecowboy" + + - where: + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/setLegalHold"].post.operationId + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/clearLegalHold"].post.operationId + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/regenerateKey"].post.operationId + suppress: R1003 + reason: APIs return array of values, is not actually a 'list' operation + approved-by: "@fearthecowboy" + + - where: + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/encryptionScopes/{encryptionScopeName}"].patch + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/encryptionScopes/{encryptionScopeName}"].put + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/encryptionScopes/{encryptionScopeName}"].get + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}"].put + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}"].patch + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}"].get + - $.paths["/subscriptions/{subscriptionId}/providers/Microsoft.Storage/locations/{location}/deletedAccounts/{deletedAccountName}"].get + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/managementPolicies/{managementPolicyName}"].get + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/managementPolicies/{managementPolicyName}"].put + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/managementPolicies/{managementPolicyName}"].put + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/privateEndpointConnections/{privateEndpointConnectionName}"].get + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/privateEndpointConnections/{privateEndpointConnectionName}"].put + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/objectReplicationPolicies/{objectReplicationPolicyId}"].get + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/objectReplicationPolicies/{objectReplicationPolicyId}"].put + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/encryptionScopes/{encryptionScopeName}"].get + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/{BlobServicesName}"].get + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/{BlobServicesName}"].put + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/fileServices/{FileServicesName}"].get + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/fileServices/{FileServicesName}"].put + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/queueServices/{queueServiceName}"].get + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/queueServices/{queueServiceName}"].put + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/tableServices/{tableServiceName}"].get + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/tableServices/{tableServiceName}"].put + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/queueServices/{queueServiceName}"].put + suppress: R4009 ``` ### Tag: package-2021-01 @@ -363,15 +468,11 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_storage'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js storage/resource-manager ``` ## Java See configuration in [readme.java.md](./readme.java.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/storage/resource-manager/readme.python.md b/specification/storage/resource-manager/readme.python.md index f5376ceb75d6..1f525f1d0c05 100644 --- a/specification/storage/resource-manager/readme.python.md +++ b/specification/storage/resource-manager/readme.python.md @@ -6,6 +6,7 @@ These settings apply only when `--python` is specified on the command line. azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION package-name: azure-mgmt-storage +package-version: 1.0.0b1 no-namespace-folders: true modelerfour: lenient-model-deduplication: true @@ -18,6 +19,8 @@ Generate all API versions currently shipped for this package ```yaml $(multiapi) clear-output-folder: true batch: + - tag: package-2021-04 + - tag: package-2021-02 - tag: package-2021-01 - tag: package-2020-08-preview - tag: package-2019-06 @@ -39,6 +42,25 @@ output-folder: $(python-sdks-folder)/storage/azure-mgmt-storage/azure/mgmt/stora clear-output-folder: false perform-load: false ``` + +### Tag: package-2021-04 and python + +These settings apply only when `--tag=package-2021-04 --python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-2021-04' +namespace: azure.mgmt.storage.v2021_04_01 +output-folder: $(python-sdks-folder)/storage/azure-mgmt-storage/azure/mgmt/storage/v2021_04_01 +``` +### Tag: package-2021-02 and python + +These settings apply only when `--tag=package-2021-02 --python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-2021-02' +namespace: azure.mgmt.storage.v2021_02_01 +output-folder: $(python-sdks-folder)/storage/azure-mgmt-storage/azure/mgmt/storage/v2021_02_01 +``` ### Tag: package-2021-01 and python These settings apply only when `--tag=package-2021-01 --python` is specified on the command line. diff --git a/specification/storage/resource-manager/readme.ruby.md b/specification/storage/resource-manager/readme.ruby.md index 35da60027442..1e6cbb71c07d 100644 --- a/specification/storage/resource-manager/readme.ruby.md +++ b/specification/storage/resource-manager/readme.ruby.md @@ -12,6 +12,7 @@ azure-arm: true ``` yaml $(ruby) && $(multiapi) batch: + - tag: package-2021-04 - tag: package-2020-08-preview - tag: package-2018-02 - tag: package-2017-10 @@ -22,6 +23,16 @@ batch: - tag: package-2015-05-preview ``` +### Tag: package-2021-04 and ruby + +These settings apply only when `--tag=package-2021-04 --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +``` yaml $(tag) == 'package-2021-04' && $(ruby) +namespace: "Azure::Storage::Mgmt::V2021-04" +output-folder: $(ruby-sdks-folder)/management/azure_mgmt_storage/lib +``` + ### Tag: package-2020-08-preview and ruby These settings apply only when `--tag=package-2020-08-preview --ruby` is specified on the command line. diff --git a/specification/storagecache/resource-manager/readme.azureresourceschema.md b/specification/storagecache/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 54d878b9d61f..000000000000 --- a/specification/storagecache/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,60 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-storagecache-2020-10-01 - - tag: schema-storagecache-2020-03-01 - - tag: schema-storagecache-2019-11-01 - - tag: schema-storagecache-2019-08-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-storagecache-2020-10-01 and azureresourceschema - -``` yaml $(tag) == 'schema-storagecache-2020-10-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.StorageCache/stable/2020-10-01/storagecache.json - -``` - -### Tag: schema-storagecache-2020-03-01 and azureresourceschema - -``` yaml $(tag) == 'schema-storagecache-2020-03-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.StorageCache/stable/2020-03-01/storagecache.json - -``` - -### Tag: schema-storagecache-2019-11-01 and azureresourceschema - -``` yaml $(tag) == 'schema-storagecache-2019-11-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.StorageCache/stable/2019-11-01/storagecache.json - -``` - -### Tag: schema-storagecache-2019-08-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-storagecache-2019-08-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.StorageCache/preview/2019-08-01-preview/storagecache.json - -``` diff --git a/specification/storagecache/resource-manager/readme.go.md b/specification/storagecache/resource-manager/readme.go.md index 0616734defaf..faba5772a66c 100644 --- a/specification/storagecache/resource-manager/readme.go.md +++ b/specification/storagecache/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: storagecache clear-output-folder: true ``` diff --git a/specification/storagecache/resource-manager/readme.md b/specification/storagecache/resource-manager/readme.md index dfca95277996..5f5c3efa60c4 100644 --- a/specification/storagecache/resource-manager/readme.md +++ b/specification/storagecache/resource-manager/readme.md @@ -83,7 +83,7 @@ This is not used by Autorest itself. ``` yaml $(swagger-to-sdk) swagger-to-sdk: - - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-net - repo: azure-sdk-for-java - repo: azure-sdk-for-go @@ -93,8 +93,6 @@ swagger-to-sdk: - bundle install && rake arm:regen_all_profiles['azure_mgmt_storagecache'] - repo: azure-cli-extensions - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js storagecache/resource-manager ``` ## Python @@ -121,6 +119,4 @@ See configuration in [readme.typescript.md](./readme.typescript.md) See configuration in [readme.ruby.md](./readme.ruby.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/storagecache/resource-manager/readme.python.md b/specification/storagecache/resource-manager/readme.python.md index 5e7e96a9a90a..12d59d78664f 100644 --- a/specification/storagecache/resource-manager/readme.python.md +++ b/specification/storagecache/resource-manager/readme.python.md @@ -4,24 +4,19 @@ These settings apply only when `--python` is specified on the command line. Please also specify `--python-sdks-folder=`. Use `--python-mode=update` if you already have a setup.py and just want to update the code itself. -``` yaml $(python) -python-mode: create -python: - azure-arm: true - license-header: MICROSOFT_MIT_NO_VERSION - payload-flattening-threshold: 2 - namespace: azure.mgmt.storagecache - package-name: azure-mgmt-storagecache - package-version: 0.1.0 - clear-output-folder: true +``` yaml $(python) && $(track2) +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +package-name: azure-mgmt-storagecache +no-namespace-folders: true +package-version: 1.0.0b1 +clear-output-folder: true ``` -``` yaml $(python) && $(python-mode) == 'update' -python: - no-namespace-folders: true - output-folder: $(python-sdks-folder)/storage/azure-mgmt-storagecache/azure/mgmt/storagecache +``` yaml $(python) && $(python-mode) == 'update' && $(track2) +no-namespace-folders: true +output-folder: $(python-sdks-folder)/storage/azure-mgmt-storagecache/azure/mgmt/storagecache ``` -``` yaml $(python) && $(python-mode) == 'create' -python: - basic-setup-py: true - output-folder: $(python-sdks-folder)/storage/azure-mgmt-storagecache +``` yaml $(python) && $(python-mode) == 'create' && $(track2) +basic-setup-py: true +output-folder: $(python-sdks-folder)/storage/azure-mgmt-storagecache ``` diff --git a/specification/storageimportexport/resource-manager/Microsoft.ImportExport/preview/2021-01-01/storageimportexport.json b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/preview/2021-01-01/storageimportexport.json index 0bd8f96e9088..2eacf5aaf275 100644 --- a/specification/storageimportexport/resource-manager/Microsoft.ImportExport/preview/2021-01-01/storageimportexport.json +++ b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/preview/2021-01-01/storageimportexport.json @@ -46,9 +46,6 @@ "$ref": "examples/ListLocations.json" } }, - "externalDocs": { - "url": "" - }, "parameters": [ { "$ref": "#/parameters/api-version" @@ -88,9 +85,6 @@ "$ref": "examples/GetLocation.json" } }, - "externalDocs": { - "url": "" - }, "parameters": [ { "name": "locationName", @@ -134,9 +128,6 @@ "$ref": "examples/ListJobsInSubscription.json" } }, - "externalDocs": { - "url": "" - }, "parameters": [ { "name": "$top", @@ -194,9 +185,6 @@ "$ref": "examples/ListJobsInResourceGroup.json" } }, - "externalDocs": { - "url": "" - }, "parameters": [ { "name": "$top", @@ -260,9 +248,6 @@ "$ref": "examples/GetExportJob.json" } }, - "externalDocs": { - "url": "" - }, "parameters": [ { "name": "jobName", @@ -313,9 +298,6 @@ "$ref": "examples/UpdateExportJob.json" } }, - "externalDocs": { - "url": "" - }, "parameters": [ { "name": "jobName", @@ -375,9 +357,6 @@ "$ref": "examples/CreateExportJob.json" } }, - "externalDocs": { - "url": "" - }, "parameters": [ { "name": "jobName", @@ -443,9 +422,6 @@ "$ref": "examples/DeleteJob.json" } }, - "externalDocs": { - "url": "" - }, "parameters": [ { "name": "jobName", @@ -492,9 +468,6 @@ "$ref": "examples/ListBitLockerKeys.json" } }, - "externalDocs": { - "url": "" - }, "parameters": [ { "name": "jobName", @@ -547,9 +520,6 @@ "$ref": "examples/ListOperations.json" } }, - "externalDocs": { - "url": "" - }, "parameters": [ { "$ref": "#/parameters/api-version" diff --git a/specification/storageimportexport/resource-manager/readme.azureresourceschema.md b/specification/storageimportexport/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 6257c9b57ba0..000000000000 --- a/specification/storageimportexport/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,48 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-importexport-2021-01-01 - - tag: schema-importexport-2020-08-01 - - tag: schema-importexport-2016-11-01 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-importexport-2021-01-01 and azureresourceschema - -``` yaml $(tag) == 'schema-importexport-2021-01-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ImportExport/preview/2021-01-01/storageimportexport.json - -``` - -### Tag: schema-importexport-2020-08-01 and azureresourceschema - -``` yaml $(tag) == 'schema-importexport-2020-08-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ImportExport/stable/2020-08-01/storageimportexport.json - -``` - -### Tag: schema-importexport-2016-11-01 and azureresourceschema - -``` yaml $(tag) == 'schema-importexport-2016-11-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.ImportExport/stable/2016-11-01/storageimportexport.json - -``` diff --git a/specification/storageimportexport/resource-manager/readme.go.md b/specification/storageimportexport/resource-manager/readme.go.md index 28ce19ba3744..c0260f48339b 100644 --- a/specification/storageimportexport/resource-manager/readme.go.md +++ b/specification/storageimportexport/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: storageimportexport clear-output-folder: true ``` diff --git a/specification/storageimportexport/resource-manager/readme.md b/specification/storageimportexport/resource-manager/readme.md index e61ebf7a5e9a..b8fd477e1c92 100644 --- a/specification/storageimportexport/resource-manager/readme.md +++ b/specification/storageimportexport/resource-manager/readme.md @@ -76,12 +76,11 @@ This is not used by Autorest itself. swagger-to-sdk: - repo: azure-powershell - repo: azure-sdk-for-go + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-node - repo: azure-sdk-for-js - repo: azure-cli-extensions - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js storageimportexport/resource-manager ``` ## Go @@ -142,6 +141,4 @@ regenerate-manager: true generate-interface: true ``` -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/storageimportexport/resource-manager/readme.python.md b/specification/storageimportexport/resource-manager/readme.python.md index 5cd84499782f..956d40130148 100644 --- a/specification/storageimportexport/resource-manager/readme.python.md +++ b/specification/storageimportexport/resource-manager/readme.python.md @@ -4,24 +4,19 @@ These settings apply only when `--python` is specified on the command line. Please also specify `--python-sdks-folder=`. Use `--python-mode=update` if you already have a setup.py and just want to update the code itself. -``` yaml $(python) -python-mode: create -python: - azure-arm: true - license-header: MICROSOFT_MIT_NO_VERSION - payload-flattening-threshold: 2 - namespace: azure.mgmt.storageimportexport - package-name: azure-mgmt-storageimportexport - clear-output-folder: true - package-version: 0.1.0 +``` yaml $(python) && $(track2) +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +package-name: azure-mgmt-storageimportexport +no-namespace-folders: true +package-version: 1.0.0b1 +clear-output-folder: true ``` -``` yaml $(python) && $(python-mode) == 'update' -python: - no-namespace-folders: true - output-folder: $(python-sdks-folder)/storageimportexport/azure-mgmt-storageimportexport/azure/mgmt/storageimportexport +``` yaml $(python) && $(python-mode) == 'update' && $(track2) +no-namespace-folders: true +output-folder: $(python-sdks-folder)/storage/azure-mgmt-storageimportexport/azure/mgmt/storageimportexport ``` -``` yaml $(python) && $(python-mode) == 'create' -python: - basic-setup-py: true - output-folder: $(python-sdks-folder)/storageimportexport/azure-mgmt-storageimportexport +``` yaml $(python) && $(python-mode) == 'create' && $(track2) +basic-setup-py: true +output-folder: $(python-sdks-folder)/storage/azure-mgmt-storageimportexport ``` diff --git a/specification/storagepool/resource-manager/Microsoft.StoragePool/preview/2021-04-01-preview/examples/DiskPoolZones_List.json b/specification/storagepool/resource-manager/Microsoft.StoragePool/preview/2021-04-01-preview/examples/DiskPoolZones_List.json new file mode 100644 index 000000000000..444da48899e0 --- /dev/null +++ b/specification/storagepool/resource-manager/Microsoft.StoragePool/preview/2021-04-01-preview/examples/DiskPoolZones_List.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "eastus" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "availabilityZones": [ + "1", + "2", + "3" + ], + "sku": { + "tier": "Basic", + "name": "Basic" + }, + "additionalCapabilities": [] + }, + { + "availabilityZones": [ + "1", + "2" + ], + "sku": { + "tier": "Basic", + "name": "Basic" + }, + "additionalCapabilities": [] + } + ] + }, + "nextLink": "null" + } + } +} diff --git a/specification/storagepool/resource-manager/Microsoft.StoragePool/preview/2021-04-01-preview/examples/DiskPools_Deallocate.json b/specification/storagepool/resource-manager/Microsoft.StoragePool/preview/2021-04-01-preview/examples/DiskPools_Deallocate.json new file mode 100644 index 000000000000..2b8f925b849d --- /dev/null +++ b/specification/storagepool/resource-manager/Microsoft.StoragePool/preview/2021-04-01-preview/examples/DiskPools_Deallocate.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "diskPoolName": "myDiskPool" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/storagepool/resource-manager/Microsoft.StoragePool/preview/2021-04-01-preview/examples/DiskPools_Delete.json b/specification/storagepool/resource-manager/Microsoft.StoragePool/preview/2021-04-01-preview/examples/DiskPools_Delete.json new file mode 100644 index 000000000000..c20f71ed44eb --- /dev/null +++ b/specification/storagepool/resource-manager/Microsoft.StoragePool/preview/2021-04-01-preview/examples/DiskPools_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "diskPoolName": "myDiskPool" + }, + "responses": { + "200": {}, + "204": {}, + "202": {} + } +} diff --git a/specification/storagepool/resource-manager/Microsoft.StoragePool/preview/2021-04-01-preview/examples/DiskPools_Get.json b/specification/storagepool/resource-manager/Microsoft.StoragePool/preview/2021-04-01-preview/examples/DiskPools_Get.json new file mode 100644 index 000000000000..7f2abbbc5462 --- /dev/null +++ b/specification/storagepool/resource-manager/Microsoft.StoragePool/preview/2021-04-01-preview/examples/DiskPools_Get.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "diskPoolName": "myDiskPool" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.StoragePool/diskPools/myDiskPool", + "location": "westus2", + "name": "myDiskPool", + "type": "Microsoft.StoragePool/diskPools", + "sku": { + "name": "Basic_0", + "tier": "Basic" + }, + "properties": { + "availabilityZones": [ + "1" + ], + "subnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myvnet/subnets/mysubnet", + "provisioningState": "Succeeded", + "status": "Healthy", + "disks": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDataDisk_0" + } + ] + }, + "systemData": { + "createdAt": "2020-06-24T06:53:57+00:00", + "createdBy": "alias", + "createdByType": "User", + "lastModifiedAt": "2020-06-24T06:53:57+00:00", + "lastModifiedBy": "alias", + "lastModifiedByType": "User" + }, + "tags": { + "env": "int" + } + } + } + } +} diff --git a/specification/storagepool/resource-manager/Microsoft.StoragePool/preview/2021-04-01-preview/examples/DiskPools_GetOutboundNetworkDependencies.json b/specification/storagepool/resource-manager/Microsoft.StoragePool/preview/2021-04-01-preview/examples/DiskPools_GetOutboundNetworkDependencies.json new file mode 100644 index 000000000000..bb455c80c658 --- /dev/null +++ b/specification/storagepool/resource-manager/Microsoft.StoragePool/preview/2021-04-01-preview/examples/DiskPools_GetOutboundNetworkDependencies.json @@ -0,0 +1,802 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "Sample-WestUSResourceGroup", + "diskPoolName": "SampleAse", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "category": "Azure Storage", + "endpoints": [ + { + "domainName": "blob.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "52.183.104.36", + "port": 80, + "latency": 42.0469, + "isAccessible": true + }, + { + "ipAddress": "52.183.104.36", + "port": 443, + "latency": 41.7038, + "isAccessible": true + } + ] + }, + { + "domainName": "queue.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "52.183.104.25", + "port": 80, + "latency": 37.326, + "isAccessible": true + }, + { + "ipAddress": "52.183.104.25", + "port": 443, + "latency": 37.513600000000004, + "isAccessible": true + } + ] + }, + { + "domainName": "table.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "52.183.104.26", + "port": 80, + "latency": 32.789, + "isAccessible": true + }, + { + "ipAddress": "52.183.104.26", + "port": 443, + "latency": 1.8702, + "isAccessible": true + } + ] + }, + { + "domainName": "file.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "52.183.104.28", + "port": 80, + "latency": 36.7378, + "isAccessible": true + }, + { + "ipAddress": "52.183.104.28", + "port": 443, + "latency": 36.7108, + "isAccessible": true + } + ] + }, + { + "domainName": "blob.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.64", + "port": 80, + "latency": 4.0261000000000005, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.64", + "port": 443, + "latency": 3.8264, + "isAccessible": true + } + ] + }, + { + "domainName": "queue.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.73", + "port": 80, + "latency": 40.8523, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.73", + "port": 443, + "latency": 40.7501, + "isAccessible": true + } + ] + }, + { + "domainName": "table.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.74", + "port": 80, + "latency": 1.2071, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.74", + "port": 443, + "latency": 38.2975, + "isAccessible": true + } + ] + }, + { + "domainName": "file.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.76", + "port": 80, + "latency": 59.383700000000005, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.76", + "port": 443, + "latency": 60.0775, + "isAccessible": true + } + ] + }, + { + "domainName": "blob.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.64", + "port": 80, + "latency": 3.5512, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.64", + "port": 443, + "latency": 2.6777, + "isAccessible": true + } + ] + }, + { + "domainName": "queue.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.73", + "port": 80, + "latency": 3.5204, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.73", + "port": 443, + "latency": 2.8193, + "isAccessible": true + } + ] + }, + { + "domainName": "table.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.74", + "port": 80, + "latency": 3.2720000000000002, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.74", + "port": 443, + "latency": 3.0147, + "isAccessible": true + } + ] + }, + { + "domainName": "file.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.76", + "port": 80, + "latency": 3.2387, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.76", + "port": 443, + "latency": 3.2804, + "isAccessible": true + } + ] + }, + { + "domainName": "blob.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.66.176.16", + "port": 80, + "latency": 43.025200000000005, + "isAccessible": true + }, + { + "ipAddress": "13.66.176.16", + "port": 443, + "latency": 43.1683, + "isAccessible": true + } + ] + }, + { + "domainName": "queue.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.66.176.25", + "port": 80, + "latency": 41.8598, + "isAccessible": true + }, + { + "ipAddress": "13.66.176.25", + "port": 443, + "latency": 41.9805, + "isAccessible": true + } + ] + }, + { + "domainName": "table.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.66.176.26", + "port": 80, + "latency": 30.542900000000003, + "isAccessible": true + }, + { + "ipAddress": "13.66.176.26", + "port": 443, + "latency": 0.98320000000000007, + "isAccessible": true + } + ] + }, + { + "domainName": "file.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.66.176.28", + "port": 80, + "latency": 35.9562, + "isAccessible": true + }, + { + "ipAddress": "13.66.176.28", + "port": 443, + "latency": 36.0643, + "isAccessible": true + } + ] + }, + { + "domainName": "blob.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.64", + "port": 80, + "latency": 3.2829, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.64", + "port": 443, + "latency": 2.3393, + "isAccessible": true + } + ] + }, + { + "domainName": "queue.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.73", + "port": 80, + "latency": 3.4103000000000003, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.73", + "port": 443, + "latency": 4.1032, + "isAccessible": true + } + ] + }, + { + "domainName": "table.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.74", + "port": 80, + "latency": 3.1141, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.74", + "port": 443, + "latency": 3.0247, + "isAccessible": true + } + ] + }, + { + "domainName": "file.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.76", + "port": 80, + "latency": 2.834, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.76", + "port": 443, + "latency": 2.8198000000000003, + "isAccessible": true + } + ] + }, + { + "domainName": "blob.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.64", + "port": 80, + "latency": 1.3855000000000002, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.64", + "port": 443, + "latency": 1.0594000000000001, + "isAccessible": true + } + ] + }, + { + "domainName": "queue.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.73", + "port": 80, + "latency": 2.4717000000000002, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.73", + "port": 443, + "latency": 2.4827, + "isAccessible": true + } + ] + }, + { + "domainName": "table.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.74", + "port": 80, + "latency": 3.395, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.74", + "port": 443, + "latency": 3.1701, + "isAccessible": true + } + ] + }, + { + "domainName": "file.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.76", + "port": 80, + "latency": 1.4308, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.76", + "port": 443, + "latency": 22.5866, + "isAccessible": true + } + ] + }, + { + "domainName": "blob.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.64", + "port": 80, + "latency": 2.5372, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.64", + "port": 443, + "latency": 2.4626, + "isAccessible": true + } + ] + }, + { + "domainName": "queue.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.73", + "port": 80, + "latency": 3.7873, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.73", + "port": 443, + "latency": 4.1911000000000005, + "isAccessible": true + } + ] + }, + { + "domainName": "table.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.74", + "port": 80, + "latency": 2.9162000000000003, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.74", + "port": 443, + "latency": 2.7896, + "isAccessible": true + } + ] + }, + { + "domainName": "file.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.76", + "port": 80, + "latency": 26.723100000000002, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.76", + "port": 443, + "latency": 26.735200000000003, + "isAccessible": true + } + ] + } + ] + }, + { + "category": "Azure SQL Database", + "endpoints": [ + { + "domainName": "database.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.66.226.202", + "port": 1433, + "latency": 1.5964, + "isAccessible": true + } + ] + } + ] + }, + { + "category": "Azure Management", + "endpoints": [ + { + "domainName": "management.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "23.102.135.246", + "port": 443, + "latency": 46.5764, + "isAccessible": true + } + ] + }, + { + "domainName": "admin.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "23.102.135.247", + "port": 443, + "latency": 47.408, + "isAccessible": true + } + ] + }, + { + "domainName": "management.azure.com", + "endpointDetails": [ + { + "ipAddress": "52.151.25.45", + "port": 443, + "latency": 3.9529, + "isAccessible": true + } + ] + } + ] + }, + { + "category": "Azure Active Directory", + "endpoints": [ + { + "domainName": "graph.windows.net", + "endpointDetails": [ + { + "ipAddress": "20.190.133.83", + "port": 443, + "latency": 3.2264, + "isAccessible": true + }, + { + "ipAddress": "20.190.133.81", + "port": 443, + "latency": 3.2264, + "isAccessible": true + }, + { + "ipAddress": "20.190.133.67", + "port": 443, + "latency": 3.2264, + "isAccessible": true + }, + { + "ipAddress": "40.126.5.34", + "port": 443, + "latency": 3.2264, + "isAccessible": true + } + ] + } + ] + }, + { + "category": "Regional Service", + "endpoints": [ + { + "domainName": "gr-prod-mwh.cloudapp.net", + "endpointDetails": [ + { + "ipAddress": "13.66.225.188", + "port": 443, + "latency": 3.3826, + "isAccessible": true + } + ] + }, + { + "domainName": "az-prod.metrics.nsatc.net", + "endpointDetails": [ + { + "ipAddress": "40.77.24.27", + "port": 443, + "latency": 38.5647, + "isAccessible": true + } + ] + } + ] + }, + { + "category": "SSL Certificate Verification", + "endpoints": [ + { + "domainName": "ocsp.msocsp.com", + "endpointDetails": [ + { + "ipAddress": "104.18.25.243", + "port": 80, + "latency": 6.0651, + "isAccessible": true + }, + { + "ipAddress": "104.18.25.243", + "port": 443, + "latency": 12.888, + "isAccessible": true + }, + { + "ipAddress": "104.18.24.243", + "port": 80, + "latency": 6.0651, + "isAccessible": true + }, + { + "ipAddress": "104.18.24.243", + "port": 443, + "latency": 12.888, + "isAccessible": true + } + ] + }, + { + "domainName": "mscrl.microsoft.com", + "endpointDetails": [ + { + "ipAddress": "152.199.4.33", + "port": 80, + "latency": 6.7429000000000006, + "isAccessible": true + }, + { + "ipAddress": "152.199.4.33", + "port": 443, + "latency": 7.4361000000000006, + "isAccessible": true + } + ] + }, + { + "domainName": "crl.microsoft.com", + "endpointDetails": [ + { + "ipAddress": "23.215.102.10", + "port": 80, + "latency": 25.136200000000002, + "isAccessible": true + }, + { + "ipAddress": "23.215.102.10", + "port": 443, + "latency": 25.0085, + "isAccessible": true + }, + { + "ipAddress": "23.215.102.42", + "port": 80, + "latency": 25.136200000000002, + "isAccessible": true + }, + { + "ipAddress": "23.215.102.42", + "port": 443, + "latency": 25.0085, + "isAccessible": true + } + ] + }, + { + "domainName": "www.microsoft.com", + "endpointDetails": [ + { + "ipAddress": "23.49.13.56", + "port": 80, + "latency": 7.9229, + "isAccessible": true + }, + { + "ipAddress": "23.49.13.56", + "port": 443, + "latency": 8.4871, + "isAccessible": true + } + ] + }, + { + "domainName": "crl3.digicert.com", + "endpointDetails": [ + { + "ipAddress": "72.21.91.29", + "port": 80, + "latency": 5.4074, + "isAccessible": true + }, + { + "ipAddress": "72.21.91.29", + "port": 443, + "latency": 5.577, + "isAccessible": true + } + ] + }, + { + "domainName": "ocsp.digicert.com", + "endpointDetails": [ + { + "ipAddress": "72.21.91.29", + "port": 80, + "latency": 6.8989, + "isAccessible": true + }, + { + "ipAddress": "72.21.91.29", + "port": 443, + "latency": 5.6674000000000007, + "isAccessible": true + } + ] + }, + { + "domainName": "cacerts.digicert.com", + "endpointDetails": [ + { + "ipAddress": "104.18.11.39", + "port": 80, + "latency": 10.772400000000001, + "isAccessible": true + }, + { + "ipAddress": "104.18.11.39", + "port": 443, + "latency": 10.7705, + "isAccessible": true + }, + { + "ipAddress": "104.18.10.39", + "port": 80, + "latency": 10.772400000000001, + "isAccessible": true + }, + { + "ipAddress": "104.18.10.39", + "port": 443, + "latency": 10.7705, + "isAccessible": true + } + ] + }, + { + "domainName": "www.thawte.com", + "endpointDetails": [ + { + "ipAddress": "54.69.98.161", + "port": 80, + "latency": 47.532900000000005, + "isAccessible": true + }, + { + "ipAddress": "54.69.98.161", + "port": 443, + "latency": 48.5362, + "isAccessible": true + }, + { + "ipAddress": "35.167.62.148", + "port": 80, + "latency": 47.532900000000005, + "isAccessible": true + }, + { + "ipAddress": "35.167.62.148", + "port": 443, + "latency": 48.5362, + "isAccessible": true + } + ] + } + ] + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/storagepool/resource-manager/Microsoft.StoragePool/preview/2021-04-01-preview/examples/DiskPools_ListByResourceGroup.json b/specification/storagepool/resource-manager/Microsoft.StoragePool/preview/2021-04-01-preview/examples/DiskPools_ListByResourceGroup.json new file mode 100644 index 000000000000..3dbc63ec7fa2 --- /dev/null +++ b/specification/storagepool/resource-manager/Microsoft.StoragePool/preview/2021-04-01-preview/examples/DiskPools_ListByResourceGroup.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.StoragePool/diskPools/myDiskPool", + "location": "westus2", + "name": "myDiskPool", + "sku": { + "name": "Basic_0", + "tier": "Basic" + }, + "properties": { + "availabilityZones": [ + "1" + ], + "subnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myvnet/subnets/mysubnet", + "provisioningState": "Pending", + "status": "Unknown", + "disks": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDataDisk_0" + } + ] + }, + "systemData": { + "createdAt": "2020-06-24T06:53:57+00:00", + "createdBy": "alias", + "createdByType": "User", + "lastModifiedAt": "2020-06-24T06:53:57+00:00", + "lastModifiedBy": "alias", + "lastModifiedByType": "User" + }, + "tags": { + "env": "int" + }, + "type": "Microsoft.StoragePool/diskPools" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.StoragePool/diskPools/myDiskPool2", + "location": "westus2", + "name": "myDiskPool2", + "sku": { + "name": "Basic_0", + "tier": "Basic" + }, + "properties": { + "availabilityZones": [ + "1" + ], + "subnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myvnet/subnets/mysubnet", + "provisioningState": "Pending", + "status": "Unknown", + "disks": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDataDisk_0" + } + ] + }, + "systemData": { + "createdAt": "2020-06-24T06:53:57+00:00", + "createdBy": "alias", + "createdByType": "User", + "lastModifiedAt": "2020-06-24T06:53:57+00:00", + "lastModifiedBy": "alias", + "lastModifiedByType": "User" + }, + "tags": { + "env": "int" + }, + "type": "Microsoft.StoragePool/diskPools" + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/storagepool/resource-manager/Microsoft.StoragePool/preview/2021-04-01-preview/examples/DiskPools_ListBySubscription.json b/specification/storagepool/resource-manager/Microsoft.StoragePool/preview/2021-04-01-preview/examples/DiskPools_ListBySubscription.json new file mode 100644 index 000000000000..27bc4e61a27f --- /dev/null +++ b/specification/storagepool/resource-manager/Microsoft.StoragePool/preview/2021-04-01-preview/examples/DiskPools_ListBySubscription.json @@ -0,0 +1,83 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.StoragePool/diskPools/myDiskPool", + "location": "westus2", + "name": "myDiskPool", + "sku": { + "name": "Basic_0", + "tier": "Basic" + }, + "properties": { + "availabilityZones": [ + "1" + ], + "subnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myvnet/subnets/mysubnet", + "provisioningState": "Succeeded", + "status": "Healthy", + "disks": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDataDisk_0" + } + ] + }, + "systemData": { + "createdAt": "2020-06-24T06:53:57+00:00", + "createdBy": "alias", + "createdByType": "User", + "lastModifiedAt": "2020-06-24T06:53:57+00:00", + "lastModifiedBy": "alias", + "lastModifiedByType": "User" + }, + "tags": { + "env": "int" + }, + "type": "Microsoft.StoragePool/diskPools" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.StoragePool/diskPools/myDiskPool2", + "location": "westus2", + "name": "myDiskPool2", + "sku": { + "name": "Basic_0", + "tier": "Basic" + }, + "properties": { + "availabilityZones": [ + "1" + ], + "subnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myvnet/subnets/mysubnet", + "provisioningState": "Succeeded", + "status": "Healthy", + "disks": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDataDisk_0" + } + ] + }, + "systemData": { + "createdAt": "2020-06-24T06:53:57+00:00", + "createdBy": "alias", + "createdByType": "User", + "lastModifiedAt": "2020-06-24T06:53:57+00:00", + "lastModifiedBy": "alias", + "lastModifiedByType": "User" + }, + "tags": { + "env": "int" + }, + "type": "Microsoft.StoragePool/diskPools" + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/storagepool/resource-manager/Microsoft.StoragePool/preview/2021-04-01-preview/examples/DiskPools_Patch.json b/specification/storagepool/resource-manager/Microsoft.StoragePool/preview/2021-04-01-preview/examples/DiskPools_Patch.json new file mode 100644 index 000000000000..db853c25ff14 --- /dev/null +++ b/specification/storagepool/resource-manager/Microsoft.StoragePool/preview/2021-04-01-preview/examples/DiskPools_Patch.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "diskPoolName": "myDiskPool", + "diskPoolUpdatePayload": { + "tags": { + "key": "value" + }, + "properties": { + "disks": [ + { + "id": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vm-name_DataDisk_0" + }, + { + "id": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vm-name_DataDisk_1" + } + ] + } + } + }, + "responses": { + "202": {}, + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.StoragePool/diskPools/myDiskPool", + "name": "myDiskPool", + "type": "Microsoft.StoragePool/diskPools", + "location": "westus2", + "tags": { + "env": "int" + }, + "systemData": { + "createdAt": "2020-06-24T06:53:57+00:00", + "createdBy": "alias", + "createdByType": "User", + "lastModifiedAt": "2020-06-24T06:53:57+00:00", + "lastModifiedBy": "alias", + "lastModifiedByType": "User" + }, + "sku": { + "name": "Basic_0", + "tier": "Basic" + }, + "properties": { + "provisioningState": "Pending", + "subnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myvnet/subnets/mysubnet", + "status": "Unknown", + "disks": [ + { + "id": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vm-name_DataDisk_0" + }, + { + "id": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vm-name_DataDisk_1" + } + ], + "availabilityZones": [ + "1" + ] + } + } + } + } +} diff --git a/specification/storagepool/resource-manager/Microsoft.StoragePool/preview/2021-04-01-preview/examples/DiskPools_Put.json b/specification/storagepool/resource-manager/Microsoft.StoragePool/preview/2021-04-01-preview/examples/DiskPools_Put.json new file mode 100644 index 000000000000..2f7dd5eb6a82 --- /dev/null +++ b/specification/storagepool/resource-manager/Microsoft.StoragePool/preview/2021-04-01-preview/examples/DiskPools_Put.json @@ -0,0 +1,112 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "diskPoolName": "myDiskPool", + "diskPoolCreatePayload": { + "location": "westus", + "tags": { + "key": "value" + }, + "sku": { + "name": "Basic_V0", + "tier": "Basic" + }, + "properties": { + "availabilityZones": [ + "1" + ], + "subnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myvnet/subnets/mysubnet", + "disks": [ + { + "id": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vm-name_DataDisk_0" + }, + { + "id": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vm-name_DataDisk_1" + } + ] + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.StoragePool/diskPools/myDiskPool", + "name": "myDiskPool", + "type": "Microsoft.StoragePool/diskPools", + "location": "westus2", + "tags": { + "env": "int" + }, + "systemData": { + "createdAt": "2020-06-24T06:53:57+00:00", + "createdBy": "alias", + "createdByType": "User", + "lastModifiedAt": "2020-06-24T06:53:57+00:00", + "lastModifiedBy": "alias", + "lastModifiedByType": "User" + }, + "sku": { + "name": "Basic_0", + "tier": "Basic" + }, + "properties": { + "provisioningState": "Pending", + "subnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myvnet/subnets/mysubnet", + "status": "Unknown", + "disks": [ + { + "id": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vm-name_DataDisk_0" + }, + { + "id": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vm-name_DataDisk_1" + } + ], + "availabilityZones": [ + "1" + ] + } + } + }, + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.StoragePool/diskPools/myDiskPool", + "name": "myDiskPool", + "type": "Microsoft.StoragePool/diskPools", + "location": "westus2", + "tags": { + "env": "int" + }, + "systemData": { + "createdAt": "2020-06-24T06:53:57+00:00", + "createdBy": "alias", + "createdByType": "User", + "lastModifiedAt": "2020-06-24T06:53:57+00:00", + "lastModifiedBy": "alias", + "lastModifiedByType": "User" + }, + "sku": { + "name": "Basic_0", + "tier": "Basic" + }, + "properties": { + "provisioningState": "Pending", + "subnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myvnet/subnets/mysubnet", + "status": "Unknown", + "disks": [ + { + "id": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vm-name_DataDisk_0" + }, + { + "id": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vm-name_DataDisk_1" + } + ], + "availabilityZones": [ + "1" + ] + } + } + } + } +} diff --git a/specification/storagepool/resource-manager/Microsoft.StoragePool/preview/2021-04-01-preview/examples/DiskPools_Start.json b/specification/storagepool/resource-manager/Microsoft.StoragePool/preview/2021-04-01-preview/examples/DiskPools_Start.json new file mode 100644 index 000000000000..2b8f925b849d --- /dev/null +++ b/specification/storagepool/resource-manager/Microsoft.StoragePool/preview/2021-04-01-preview/examples/DiskPools_Start.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "diskPoolName": "myDiskPool" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/storagepool/resource-manager/Microsoft.StoragePool/preview/2021-04-01-preview/examples/IscsiTargets_Delete.json b/specification/storagepool/resource-manager/Microsoft.StoragePool/preview/2021-04-01-preview/examples/IscsiTargets_Delete.json new file mode 100644 index 000000000000..86d454a3624f --- /dev/null +++ b/specification/storagepool/resource-manager/Microsoft.StoragePool/preview/2021-04-01-preview/examples/IscsiTargets_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "diskPoolName": "myDiskPool", + "iscsiTargetName": "myIscsiTarget" + }, + "responses": { + "200": {}, + "204": {}, + "202": {} + } +} diff --git a/specification/storagepool/resource-manager/Microsoft.StoragePool/preview/2021-04-01-preview/examples/IscsiTargets_Get.json b/specification/storagepool/resource-manager/Microsoft.StoragePool/preview/2021-04-01-preview/examples/IscsiTargets_Get.json new file mode 100644 index 000000000000..f3aa69dd3522 --- /dev/null +++ b/specification/storagepool/resource-manager/Microsoft.StoragePool/preview/2021-04-01-preview/examples/IscsiTargets_Get.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "diskPoolName": "myDiskPool", + "iscsiTargetName": "myIscsiTarget" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.StoragePool/diskPools/myDiskPool/iscsiTargets/myIscsiTarget", + "name": "myIscsiTarget", + "type": "Microsoft.StoragePool/diskPools/iscsiTargets", + "systemData": { + "createdAt": "2020-06-24T06:53:57+00:00", + "createdBy": "alias", + "createdByType": "User", + "lastModifiedAt": "2020-06-24T06:53:57+00:00", + "lastModifiedBy": "alias", + "lastModifiedByType": "User" + }, + "properties": { + "targetIqn": "iqn.2005-03.org.iscsi:server1", + "aclMode": "Static", + "luns": [ + { + "managedDiskAzureResourceId": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vm-name_DataDisk_1", + "name": "lun0", + "lun": 0 + } + ], + "staticAcls": [ + { + "initiatorIqn": "iqn.2005-03.org.iscsi:client", + "mappedLuns": [ + "lun0" + ] + } + ], + "endpoints": [ + "10.0.0.1:3260" + ], + "port": 3260, + "provisioningState": "Succeeded", + "status": "Healthy" + } + } + } + } +} diff --git a/specification/storagepool/resource-manager/Microsoft.StoragePool/preview/2021-04-01-preview/examples/IscsiTargets_ListByDiskPool.json b/specification/storagepool/resource-manager/Microsoft.StoragePool/preview/2021-04-01-preview/examples/IscsiTargets_ListByDiskPool.json new file mode 100644 index 000000000000..3e9ccd98053b --- /dev/null +++ b/specification/storagepool/resource-manager/Microsoft.StoragePool/preview/2021-04-01-preview/examples/IscsiTargets_ListByDiskPool.json @@ -0,0 +1,86 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "diskPoolName": "myDiskPool" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.StoragePool/diskPools/myDiskPool/iscsiTargets/myIscsiTarget", + "name": "myIscsiTarget", + "type": "Microsoft.StoragePool/diskPools/iscsiTargets", + "systemData": { + "createdAt": "2020-06-24T06:53:57+00:00", + "createdBy": "alias", + "createdByType": "User", + "lastModifiedAt": "2020-06-24T06:53:57+00:00", + "lastModifiedBy": "alias", + "lastModifiedByType": "User" + }, + "properties": { + "targetIqn": "iqn.2005-03.org.iscsi:server1", + "aclMode": "Static", + "port": 3260, + "luns": [ + { + "managedDiskAzureResourceId": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vm-name_DataDisk_1", + "name": "lun0", + "lun": 3 + } + ], + "staticAcls": [ + { + "initiatorIqn": "iqn.2005-03.org.iscsi:client", + "mappedLuns": [ + "lun0" + ] + } + ], + "endpoints": [ + "10.0.0.1:3260" + ], + "provisioningState": "Succeeded", + "status": "Healthy" + } + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.StoragePool/diskPools/myDiskPool/iscsiTargets/myIscsiTarget", + "name": "myIscsiTarget2", + "type": "Microsoft.StoragePool/diskPools/iscsiTargets", + "systemData": { + "createdAt": "2020-06-24T06:53:57+00:00", + "createdBy": "alias", + "createdByType": "User", + "lastModifiedAt": "2020-06-24T06:53:57+00:00", + "lastModifiedBy": "alias", + "lastModifiedByType": "User" + }, + "properties": { + "targetIqn": "iqn.2005-03.org.iscsi:server2", + "aclMode": "Dynamic", + "port": 3261, + "luns": [ + { + "managedDiskAzureResourceId": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vm-name_DataDisk_2", + "name": "lun0", + "lun": 2 + } + ], + "staticAcls": [], + "endpoints": [ + "10.0.0.1:3261" + ], + "provisioningState": "Succeeded", + "status": "Healthy" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/storagepool/resource-manager/Microsoft.StoragePool/preview/2021-04-01-preview/examples/IscsiTargets_Patch.json b/specification/storagepool/resource-manager/Microsoft.StoragePool/preview/2021-04-01-preview/examples/IscsiTargets_Patch.json new file mode 100644 index 000000000000..0d65a1128265 --- /dev/null +++ b/specification/storagepool/resource-manager/Microsoft.StoragePool/preview/2021-04-01-preview/examples/IscsiTargets_Patch.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "diskPoolName": "myDiskPool", + "iscsiTargetName": "myIscsiTarget", + "iscsiTargetUpdatePayload": { + "properties": { + "luns": [ + { + "managedDiskAzureResourceId": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vm-name_DataDisk_1", + "name": "lun0" + } + ], + "staticAcls": [ + { + "initiatorIqn": "iqn.2005-03.org.iscsi:client", + "mappedLuns": [ + "lun0" + ] + } + ] + } + } + }, + "responses": { + "202": {}, + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.StoragePool/diskPools/myDiskPool/iscsiTargets/myIscsiTarget", + "name": "myIscsiTarget", + "type": "Microsoft.StoragePool/diskPools/iscsiTargets", + "systemData": { + "createdAt": "2020-06-24T06:53:57+00:00", + "createdBy": "alias", + "createdByType": "User", + "lastModifiedAt": "2020-06-24T06:53:57+00:00", + "lastModifiedBy": "alias", + "lastModifiedByType": "User" + }, + "properties": { + "targetIqn": "iqn.2005-03.org.iscsi:server1", + "aclMode": "Static", + "luns": [ + { + "managedDiskAzureResourceId": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vm-name_DataDisk_1", + "name": "lun0", + "lun": 3 + } + ], + "staticAcls": [ + { + "initiatorIqn": "iqn.2005-03.org.iscsi:client", + "mappedLuns": [ + "lun0" + ] + } + ], + "endpoints": [ + "10.0.0.1:3260" + ], + "port": 3260, + "provisioningState": "Pending", + "status": "Unknown" + } + } + } + } +} diff --git a/specification/storagepool/resource-manager/Microsoft.StoragePool/preview/2021-04-01-preview/examples/IscsiTargets_Put.json b/specification/storagepool/resource-manager/Microsoft.StoragePool/preview/2021-04-01-preview/examples/IscsiTargets_Put.json new file mode 100644 index 000000000000..2676cbfd300a --- /dev/null +++ b/specification/storagepool/resource-manager/Microsoft.StoragePool/preview/2021-04-01-preview/examples/IscsiTargets_Put.json @@ -0,0 +1,86 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "diskPoolName": "myDiskPool", + "iscsiTargetName": "myIscsiTarget", + "iscsiTargetCreatePayload": { + "properties": { + "targetIqn": "iqn.2005-03.org.iscsi:server1", + "luns": [ + { + "managedDiskAzureResourceId": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vm-name_DataDisk_1", + "name": "lun0" + } + ], + "aclMode": "Dynamic" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.StoragePool/diskPools/myDiskPool/iscsiTargets/myIscsiTarget", + "name": "myIscsiTarget", + "type": "Microsoft.StoragePool/diskPools/iscsiTargets", + "systemData": { + "createdAt": "2020-06-24T06:53:57+00:00", + "createdBy": "alias", + "createdByType": "User", + "lastModifiedAt": "2020-06-24T06:53:57+00:00", + "lastModifiedBy": "alias", + "lastModifiedByType": "User" + }, + "properties": { + "targetIqn": "iqn.2005-03.org.iscsi:server1", + "luns": [ + { + "managedDiskAzureResourceId": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vm-name_DataDisk_1", + "name": "lun0" + } + ], + "endpoints": [ + "10.0.0.1:3260" + ], + "port": 3260, + "aclMode": "Dynamic", + "provisioningState": "Pending", + "status": "Unknown" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.StoragePool/diskPools/myDiskPool/iscsiTargets/myIscsiTarget", + "name": "myIscsiTarget", + "type": "Microsoft.StoragePool/diskPools/iscsiTargets", + "systemData": { + "createdAt": "2020-06-24T06:53:57+00:00", + "createdBy": "alias", + "createdByType": "User", + "lastModifiedAt": "2020-06-24T06:53:57+00:00", + "lastModifiedBy": "alias", + "lastModifiedByType": "User" + }, + "properties": { + "targetIqn": "iqn.2005-03.org.iscsi:server1", + "luns": [ + { + "managedDiskAzureResourceId": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vm-name_DataDisk_1", + "name": "lun0", + "lun": 3 + } + ], + "endpoints": [ + "10.0.0.1:3260" + ], + "port": 3260, + "aclMode": "Dynamic", + "provisioningState": "Pending", + "status": "Unknown" + } + } + } + } +} diff --git a/specification/storagepool/resource-manager/Microsoft.StoragePool/preview/2021-04-01-preview/examples/Operations_List.json b/specification/storagepool/resource-manager/Microsoft.StoragePool/preview/2021-04-01-preview/examples/Operations_List.json new file mode 100644 index 000000000000..8fd38297b8d4 --- /dev/null +++ b/specification/storagepool/resource-manager/Microsoft.StoragePool/preview/2021-04-01-preview/examples/Operations_List.json @@ -0,0 +1,93 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.StoragePool/diskPools/read", + "isDataAction": true, + "display": { + "provider": "Microsoft.StoragePool", + "resource": "Disk Pool", + "operation": "Read Microsoft.StoragePool/diskPools", + "description": "Read Disk Pool" + } + }, + { + "name": "Microsoft.StoragePool/diskPools/write", + "isDataAction": true, + "display": { + "provider": "Microsoft.StoragePool", + "resource": "Disk Pool", + "operation": "Create or Update Microsoft.StoragePool/diskPools", + "description": "Create or Update Disk Pool" + } + }, + { + "name": "Microsoft.StoragePool/diskPools/delete", + "isDataAction": true, + "display": { + "provider": "Microsoft.StoragePool", + "resource": "Microsoft.StoragePool/diskPools", + "operation": "Delete Microsoft.StoragePool/diskPools", + "description": "Delete Disk Pool" + } + }, + { + "name": "Microsoft.StoragePool/diskPools/start/action", + "isDataAction": false, + "display": { + "provider": "Microsoft.StoragePool", + "resource": "Microsoft.StoragePool/diskPools", + "operation": "Start Microsoft.StoragePool/diskPools", + "description": "Start Disk Pool" + } + }, + { + "name": "Microsoft.StoragePool/diskPools/deallocate/action", + "isDataAction": false, + "display": { + "provider": "Microsoft.StoragePool", + "resource": "Microsoft.StoragePool/diskPools", + "operation": "Deallocate Microsoft.StoragePool/diskPools", + "description": "Deallocate Disk Pool" + } + }, + { + "name": "Microsoft.StoragePool/diskPools/iscsiTargets/read", + "isDataAction": true, + "display": { + "provider": "Microsoft.StoragePool", + "resource": "iSCSI targets", + "operation": "Read Microsoft.StoragePool/diskPools/iscsiTargets", + "description": "Read iSCSI targets" + } + }, + { + "name": "Microsoft.StoragePool/diskPools/iscsiTargets/write", + "isDataAction": true, + "display": { + "provider": "Microsoft.StoragePool", + "resource": "iSCSI targets", + "operation": "Create or Update Microsoft.StoragePool/diskPools/iscsiTargets", + "description": "Create or Update iSCSI targets" + } + }, + { + "name": "Microsoft.StoragePool/diskPools/iscsiTargets/delete", + "isDataAction": true, + "display": { + "provider": "Microsoft.StoragePool", + "resource": "iSCSI targets", + "operation": "Delete Microsoft.StoragePool/diskPools/iscsiTargets", + "description": "Delete iSCSI targets" + } + } + ] + } + } + } +} diff --git a/specification/storagepool/resource-manager/Microsoft.StoragePool/preview/2021-04-01-preview/storagepool.json b/specification/storagepool/resource-manager/Microsoft.StoragePool/preview/2021-04-01-preview/storagepool.json new file mode 100644 index 000000000000..baeb887b3b87 --- /dev/null +++ b/specification/storagepool/resource-manager/Microsoft.StoragePool/preview/2021-04-01-preview/storagepool.json @@ -0,0 +1,1847 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-04-01-preview", + "title": "StoragePoolManagement" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "tags": [ + { + "name": "StoragePoolOperations", + "description": "APIs for StoragePool operations." + }, + { + "name": "DiskPools", + "description": "APIs for Disk pool operations." + }, + { + "name": "IscsiTargets", + "description": "APIs for iSCSI target operations." + } + ], + "paths": { + "/providers/Microsoft.StoragePool/operations": { + "get": { + "tags": [ + "StoragePoolOperations" + ], + "operationId": "Operations_List", + "description": "Gets a list of StoragePool operations.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Retrieved RP operations", + "schema": { + "$ref": "#/definitions/StoragePoolOperationListResult" + } + }, + "default": { + "description": "Error from the RP", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "List operations": { + "$ref": "./examples/Operations_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.StoragePool/diskPools": { + "get": { + "tags": [ + "DiskPools" + ], + "operationId": "DiskPools_ListBySubscription", + "description": "Gets a list of Disk Pools in a subscription", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Operation completed successfully; retrieved diskPools by subscription", + "schema": { + "$ref": "#/definitions/DiskPoolListResult" + } + }, + "default": { + "description": "Error from the RP", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Disk Pools by subscription": { + "$ref": "./examples/DiskPools_ListBySubscription.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StoragePool/diskPools": { + "get": { + "tags": [ + "DiskPools" + ], + "operationId": "DiskPools_ListByResourceGroup", + "description": "Gets a list of DiskPools in a resource group.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Operation completed successfully; retrieved diskPools by resource group", + "schema": { + "$ref": "#/definitions/DiskPoolListResult" + } + }, + "default": { + "description": "Error from the RP", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Disk Pools": { + "$ref": "./examples/DiskPools_ListByResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StoragePool/diskPools/{diskPoolName}": { + "put": { + "tags": [ + "DiskPools" + ], + "operationId": "DiskPools_CreateOrUpdate", + "description": "Create or Update Disk pool.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskPoolName" + }, + { + "$ref": "#/parameters/DiskPoolCreate" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Returned when the create or update operation is successfully completed.", + "schema": { + "$ref": "#/definitions/DiskPool" + } + }, + "201": { + "description": "Accepted -- Create or update request accepted; operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/DiskPool" + } + }, + "default": { + "description": "Error from the RP", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create or Update Disk pool": { + "$ref": "./examples/DiskPools_Put.json" + } + } + }, + "patch": { + "tags": [ + "DiskPools" + ], + "operationId": "DiskPools_Update", + "description": "Update a Disk pool.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskPoolName" + }, + { + "$ref": "#/parameters/DiskPoolUpdate" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Returned when the update operation is successfully completed.", + "schema": { + "$ref": "#/definitions/DiskPool" + } + }, + "202": { + "description": "Accepted -- Update request accepted; operation will complete asynchronously." + }, + "default": { + "description": "Error from the RP.", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Update Disk pool": { + "$ref": "./examples/DiskPools_Patch.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "delete": { + "tags": [ + "DiskPools" + ], + "operationId": "DiskPools_Delete", + "description": "Delete a Disk pool.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskPoolName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Delete operation completed successfully." + }, + "204": { + "description": "Resource does not exist in the subscription." + }, + "202": { + "description": "Delete request accepted; operation will complete asynchronously." + }, + "default": { + "description": "Error from the RP", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Delete Disk pool": { + "$ref": "./examples/DiskPools_Delete.json" + } + } + }, + "get": { + "tags": [ + "DiskPools" + ], + "operationId": "DiskPools_Get", + "description": "Get a Disk pool.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskPoolName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Operation completed successfully; retrieved Disk pool.", + "schema": { + "$ref": "#/definitions/DiskPool" + } + }, + "default": { + "description": "Error from the RP.", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Get Disk pool": { + "$ref": "./examples/DiskPools_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.StoragePool/locations/{location}/diskPoolZones": { + "get": { + "tags": [ + "DiskPoolZones" + ], + "operationId": "DiskPoolZones_List", + "description": "Lists available Disk Pool Skus in an Azure location.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/Location" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskPoolZoneListResult" + } + }, + "default": { + "description": "Error from the RP", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Disk Pool Skus": { + "$ref": "./examples/DiskPoolZones_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StoragePool/diskPools/{diskPoolName}/outboundNetworkDependenciesEndpoints": { + "get": { + "tags": [ + "DiskPools" + ], + "operationId": "DiskPools_ListOutboundNetworkDependenciesEndpoints", + "description": "Gets the network endpoints of all outbound dependencies of a Disk Pool", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskPoolName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OutboundEnvironmentEndpointList" + } + }, + "default": { + "description": "Error from the RP", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get Disk Pool outbound network dependencies": { + "$ref": "./examples/DiskPools_GetOutboundNetworkDependencies.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StoragePool/diskPools/{diskPoolName}/start": { + "post": { + "tags": [ + "DiskPools" + ], + "operationId": "DiskPools_Start", + "description": "The operation to start a Disk Pool.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskPoolName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error from the RP", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Start Disk Pool": { + "$ref": "./examples/DiskPools_Start.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StoragePool/diskPools/{diskPoolName}/deallocate": { + "post": { + "tags": [ + "DiskPools" + ], + "operationId": "DiskPools_Deallocate", + "description": "Shuts down the Disk Pool and releases the compute resources. You are not billed for the compute resources that this Disk Pool uses.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskPoolName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error from the RP", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Deallocate Disk Pool": { + "$ref": "./examples/DiskPools_Deallocate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StoragePool/diskPools/{diskPoolName}/iscsiTargets": { + "get": { + "tags": [ + "IscsiTargets" + ], + "description": "Get iSCSI Targets in a Disk pool.", + "operationId": "IscsiTargets_ListByDiskPool", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskPoolName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Operation completed successfully; retrieved iSCSI Targets in a Disk pool.", + "schema": { + "$ref": "#/definitions/IscsiTargetList" + } + }, + "default": { + "description": "Error from the RP", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Disk Pools by Resource Group": { + "$ref": "./examples/IscsiTargets_ListByDiskPool.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StoragePool/diskPools/{diskPoolName}/iscsiTargets/{iscsiTargetName}": { + "put": { + "tags": [ + "IscsiTargets" + ], + "description": "Create or Update an iSCSI Target.", + "operationId": "IscsiTargets_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskPoolName" + }, + { + "$ref": "#/parameters/IscsiTargetName" + }, + { + "$ref": "#/parameters/IscsiTargetCreate" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Returned when the create or update operation is successfully completed.", + "schema": { + "$ref": "#/definitions/IscsiTarget" + } + }, + "201": { + "description": "Accepted -- Create or update request accepted; operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/IscsiTarget" + } + }, + "default": { + "description": "Error from the RP.", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create or Update iSCSI Target": { + "$ref": "./examples/IscsiTargets_Put.json" + } + } + }, + "patch": { + "tags": [ + "IscsiTargets" + ], + "description": "Update an iSCSI Target.", + "operationId": "IscsiTargets_Update", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskPoolName" + }, + { + "$ref": "#/parameters/IscsiTargetName" + }, + { + "$ref": "#/parameters/IscsiTargetUpdate" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Returned when the update operation is successfully completed.", + "schema": { + "$ref": "#/definitions/IscsiTarget" + } + }, + "202": { + "description": "Accepted -- Update request accepted; operation will complete asynchronously." + }, + "default": { + "description": "Error from the RP.", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Update iSCSI Target": { + "$ref": "./examples/IscsiTargets_Patch.json" + } + } + }, + "delete": { + "tags": [ + "IscsiTargets" + ], + "description": "Delete an iSCSI Target.", + "operationId": "IscsiTargets_Delete", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskPoolName" + }, + { + "$ref": "#/parameters/IscsiTargetName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Delete operation completed successfully." + }, + "204": { + "description": "Resource does not exist in the subscription." + }, + "202": { + "description": "Delete request accepted; operation will complete asynchronously." + }, + "default": { + "description": "Error from the RP", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Delete iSCSI Target": { + "$ref": "./examples/IscsiTargets_Delete.json" + } + } + }, + "get": { + "tags": [ + "IscsiTargets" + ], + "description": "Get an iSCSI Target.", + "operationId": "IscsiTargets_Get", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskPoolName" + }, + { + "$ref": "#/parameters/IscsiTargetName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Operation completed successfully; retrieved iSCSI Target.", + "schema": { + "$ref": "#/definitions/IscsiTarget" + } + }, + "default": { + "description": "Error from the RP.", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Get iSCSI Target": { + "$ref": "./examples/IscsiTargets_Get.json" + } + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the target subscription.", + "minLength": 1 + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for this operation.", + "minLength": 1 + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._]*[0-9A-Za-z]$", + "minLength": 1, + "maxLength": 90, + "x-ms-parameter-location": "method" + }, + "DiskPoolName": { + "name": "diskPoolName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Disk Pool.", + "x-ms-parameter-location": "method" + }, + "IscsiTargetName": { + "name": "iscsiTargetName", + "type": "string", + "required": true, + "in": "path", + "description": "The name of the iSCSI Target.", + "x-ms-parameter-location": "method" + }, + "DiskPoolCreate": { + "name": "diskPoolCreatePayload", + "required": true, + "in": "body", + "description": "Request payload for Disk Pool create operation", + "schema": { + "$ref": "#/definitions/DiskPoolCreate" + }, + "x-ms-parameter-location": "method" + }, + "DiskPoolUpdate": { + "name": "diskPoolUpdatePayload", + "required": true, + "in": "body", + "description": "Request payload for Disk Pool update operation.", + "schema": { + "$ref": "#/definitions/DiskPoolUpdate" + }, + "x-ms-parameter-location": "method" + }, + "IscsiTargetCreate": { + "name": "iscsiTargetCreatePayload", + "required": true, + "in": "body", + "description": "Request payload for iSCSI Target create operation.", + "schema": { + "$ref": "#/definitions/IscsiTargetCreate" + }, + "x-ms-parameter-location": "method" + }, + "IscsiTargetUpdate": { + "name": "iscsiTargetUpdatePayload", + "required": true, + "in": "body", + "description": "Request payload for iSCSI Target update operation.", + "schema": { + "$ref": "#/definitions/IscsiTargetUpdate" + }, + "x-ms-parameter-location": "method" + }, + "OperationId": { + "name": "operationId", + "type": "string", + "required": true, + "in": "path", + "description": "The unique uuid of an operation.", + "x-ms-parameter-location": "method" + }, + "Location": { + "name": "location", + "type": "string", + "required": true, + "in": "path", + "description": "The location of the resource.", + "x-ms-parameter-location": "method" + } + }, + "definitions": { + "StoragePoolOperationDisplay": { + "type": "object", + "required": [ + "provider", + "resource", + "operation", + "description" + ], + "description": "Metadata about an operation.", + "additionalProperties": false, + "properties": { + "provider": { + "type": "string", + "description": "Localized friendly form of the resource provider name." + }, + "resource": { + "type": "string", + "description": "Localized friendly form of the resource type related to this action/operation." + }, + "operation": { + "type": "string", + "description": "Localized friendly name for the operation, as it should be shown to the user." + }, + "description": { + "type": "string", + "description": "Localized friendly description for the operation, as it should be shown to the user." + } + } + }, + "StoragePoolRPOperation": { + "type": "object", + "required": [ + "name", + "isDataAction", + "display" + ], + "description": "Description of a StoragePool RP Operation", + "additionalProperties": false, + "properties": { + "name": { + "type": "string", + "description": "The name of the operation being performed on this particular object" + }, + "isDataAction": { + "type": "boolean", + "description": "Indicates whether the operation applies to data-plane." + }, + "actionType": { + "type": "string", + "description": "Indicates the action type." + }, + "display": { + "description": "Additional metadata about RP operation.", + "$ref": "#/definitions/StoragePoolOperationDisplay" + }, + "origin": { + "type": "string", + "description": "The intended executor of the operation; governs the display of the operation in the RBAC UX and the audit logs UX." + } + } + }, + "StoragePoolOperationListResult": { + "type": "object", + "required": [ + "value" + ], + "description": "List of operations supported by the RP.", + "additionalProperties": false, + "properties": { + "value": { + "type": "array", + "description": "An array of operations supported by the StoragePool RP.", + "items": { + "$ref": "#/definitions/StoragePoolRPOperation" + } + }, + "nextLink": { + "description": "URI to fetch the next section of the paginated response.", + "type": "string" + } + } + }, + "OutboundEnvironmentEndpointList": { + "description": "Collection of Outbound Environment Endpoints", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/OutboundEnvironmentEndpoint" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "OutboundEnvironmentEndpoint": { + "description": "Endpoints accessed for a common purpose that the App Service Environment requires outbound network access to.", + "type": "object", + "properties": { + "category": { + "description": "The type of service accessed by the App Service Environment, e.g., Azure Storage, Azure SQL Database, and Azure Active Directory.", + "type": "string" + }, + "endpoints": { + "description": "The endpoints that the App Service Environment reaches the service at.", + "type": "array", + "items": { + "$ref": "#/definitions/EndpointDependency" + } + } + } + }, + "EndpointDependency": { + "description": "A domain name that a service is reached at, including details of the current connection status.", + "type": "object", + "properties": { + "domainName": { + "description": "The domain name of the dependency.", + "type": "string" + }, + "endpointDetails": { + "description": "The IP Addresses and Ports used when connecting to DomainName.", + "type": "array", + "items": { + "$ref": "#/definitions/EndpointDetail" + } + } + } + }, + "EndpointDetail": { + "description": "Current TCP connectivity information from the App Service Environment to a single endpoint.", + "type": "object", + "properties": { + "ipAddress": { + "description": "An IP Address that Domain Name currently resolves to.", + "type": "string" + }, + "port": { + "format": "int32", + "description": "The port an endpoint is connected to.", + "type": "integer" + }, + "latency": { + "format": "double", + "description": "The time in milliseconds it takes for a TCP connection to be created from the App Service Environment to this IpAddress at this Port.", + "type": "number" + }, + "isAccessible": { + "description": "Whether it is possible to create a TCP connection from the App Service Environment to this IpAddress at this Port.", + "type": "boolean" + } + } + }, + "DiskPoolListResult": { + "type": "object", + "required": [ + "value" + ], + "description": "List of Disk Pools", + "additionalProperties": false, + "properties": { + "value": { + "description": "An array of Disk pool objects.", + "type": "array", + "items": { + "$ref": "#/definitions/DiskPool" + } + }, + "nextLink": { + "description": "URI to fetch the next section of the paginated response.", + "type": "string", + "readOnly": true + } + } + }, + "DiskPoolZoneListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DiskPoolZoneInfo" + }, + "description": "The list of Disk Pool Skus." + }, + "nextLink": { + "description": "URI to fetch the next section of the paginated response.", + "type": "string" + } + }, + "description": "List Disk Pool skus operation response." + }, + "DiskPoolZoneInfo": { + "type": "object", + "description": "Disk Pool Sku Details", + "properties": { + "availabilityZones": { + "type": "array", + "description": "Logical zone for Disk Pool resource; example: [\"1\"].", + "items": { + "$ref": "#/definitions/AvailabilityZone" + } + }, + "additionalCapabilities": { + "type": "array", + "description": "List of additional capabilities for Disk Pool.", + "items": { + "$ref": "#/definitions/AdditionalCapability" + } + }, + "sku": { + "description": "Determines the SKU of VM deployed for Disk Pool", + "type": "string", + "$ref": "#/definitions/Sku" + } + } + }, + "DiskPool": { + "type": "object", + "description": "Response for Disk Pool request.", + "required": [ + "properties" + ], + "properties": { + "sku": { + "description": "Determines the SKU of the Disk pool", + "$ref": "#/definitions/Sku", + "x-ms-client-flatten": true + }, + "properties": { + "x-ms-client-flatten": true, + "description": "Properties of Disk Pool.", + "$ref": "#/definitions/DiskPoolProperties" + }, + "systemData": { + "description": "Resource metadata required by ARM RPC", + "readOnly": true, + "$ref": "#/definitions/SystemMetadata" + } + }, + "allOf": [ + { + "$ref": "#/definitions/TrackedResource" + } + ] + }, + "DiskPoolCreate": { + "type": "object", + "description": "Request payload for create or update Disk Pool request.", + "required": [ + "properties", + "location", + "sku" + ], + "properties": { + "sku": { + "description": "Determines the SKU of the Disk Pool", + "type": "object", + "$ref": "#/definitions/Sku" + }, + "properties": { + "x-ms-client-flatten": true, + "description": "Properties for Disk Pool create request.", + "$ref": "#/definitions/DiskPoolCreateProperties" + }, + "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." + }, + "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 + }, + "DiskPoolUpdate": { + "type": "object", + "description": "Request payload for Update Disk Pool request.", + "required": [ + "properties" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties for Disk Pool update request.", + "$ref": "#/definitions/DiskPoolUpdateProperties" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-ms-mutability": [ + "read", + "create", + "update" + ], + "description": "Resource tags." + } + } + }, + "AvailabilityZone": { + "type": "string", + "description": "Availability zone." + }, + "DiskPoolProperties": { + "type": "object", + "description": "Disk Pool response properties.", + "required": [ + "availabilityZones", + "subnetId", + "provisioningState", + "status" + ], + "properties": { + "provisioningState": { + "description": "State of the operation on the resource.", + "type": "string", + "$ref": "#/definitions/ProvisioningState" + }, + "availabilityZones": { + "type": "array", + "description": "Logical zone for Disk Pool resource; example: [\"1\"].", + "items": { + "$ref": "#/definitions/AvailabilityZone" + } + }, + "status": { + "type": "string", + "$ref": "#/definitions/OperationalStatus", + "description": "Operational status of the Disk Pool." + }, + "disks": { + "type": "array", + "description": "List of Azure Managed Disks to attach to a Disk Pool.", + "items": { + "$ref": "#/definitions/Disk" + } + }, + "subnetId": { + "type": "string", + "description": "Azure Resource ID of a Subnet for the Disk Pool.", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "additionalCapabilities": { + "type": "array", + "description": "List of additional capabilities for Disk Pool.", + "items": { + "$ref": "#/definitions/AdditionalCapability" + } + } + } + }, + "DiskPoolCreateProperties": { + "type": "object", + "description": "Properties for Disk Pool create or update request.", + "required": [ + "subnetId" + ], + "properties": { + "availabilityZones": { + "type": "array", + "description": "Logical zone for Disk Pool resource; example: [\"1\"].", + "items": { + "$ref": "#/definitions/AvailabilityZone" + } + }, + "disks": { + "type": "array", + "description": "List of Azure Managed Disks to attach to a Disk Pool.", + "items": { + "$ref": "#/definitions/Disk" + } + }, + "subnetId": { + "type": "string", + "description": "Azure Resource ID of a Subnet for the Disk Pool.", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "additionalCapabilities": { + "type": "array", + "description": "List of additional capabilities for a Disk Pool.", + "items": { + "$ref": "#/definitions/AdditionalCapability" + } + } + } + }, + "DiskPoolUpdateProperties": { + "type": "object", + "description": "Properties for Disk Pool update request.", + "properties": { + "disks": { + "type": "array", + "description": "List of Azure Managed Disks to attach to a Disk Pool.", + "items": { + "$ref": "#/definitions/Disk" + } + } + } + }, + "Disk": { + "type": "object", + "description": "Azure Managed Disk to attach to the Disk Pool.", + "required": [ + "id" + ], + "additionalProperties": false, + "properties": { + "id": { + "type": "string", + "description": "Unique Azure Resource ID of the Managed Disk." + } + } + }, + "AdditionalCapability": { + "type": "string", + "description": "Special capability that can be set on the Disk Pool." + }, + "IscsiTargetList": { + "type": "object", + "required": [ + "value" + ], + "description": "List of iSCSI Targets.", + "additionalProperties": false, + "properties": { + "value": { + "type": "array", + "description": "An array of iSCSI Targets in a Disk Pool.", + "items": { + "$ref": "#/definitions/IscsiTarget" + } + }, + "nextLink": { + "description": "URI to fetch the next section of the paginated response.", + "type": "string", + "readOnly": true + } + } + }, + "IscsiTarget": { + "type": "object", + "description": "Response for iSCSI Target requests.", + "required": [ + "properties" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties for iSCSI Target operations.", + "$ref": "#/definitions/IscsiTargetProperties" + }, + "systemData": { + "description": "Resource metadata required by ARM RPC", + "$ref": "#/definitions/SystemMetadata" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ] + }, + "IscsiTargetCreate": { + "type": "object", + "description": "Payload for iSCSI Target create or update requests.", + "required": [ + "properties" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties for iSCSI Target create request.", + "$ref": "#/definitions/IscsiTargetCreateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ] + }, + "IscsiTargetUpdate": { + "type": "object", + "description": "Payload for iSCSI Target update requests.", + "required": [ + "properties" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties for iSCSI Target update request.", + "$ref": "#/definitions/IscsiTargetUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ] + }, + "IscsiTargetProperties": { + "type": "object", + "description": "Response properties for iSCSI Target operations.", + "required": [ + "targetIqn", + "provisioningState", + "status", + "aclMode" + ], + "properties": { + "aclMode": { + "description": "Mode for Target connectivity.", + "type": "string", + "$ref": "#/definitions/AclMode" + }, + "staticAcls": { + "type": "array", + "description": "Access Control List (ACL) for an iSCSI Target; defines LUN masking policy", + "items": { + "$ref": "#/definitions/Acl" + } + }, + "luns": { + "type": "array", + "description": "List of LUNs to be exposed through iSCSI Target.", + "items": { + "$ref": "#/definitions/IscsiLun" + } + }, + "targetIqn": { + "type": "string", + "description": "iSCSI Target IQN (iSCSI Qualified Name); example: \"iqn.2005-03.org.iscsi:server\"." + }, + "provisioningState": { + "description": "State of the operation on the resource.", + "type": "string", + "$ref": "#/definitions/ProvisioningState" + }, + "status": { + "type": "string", + "$ref": "#/definitions/OperationalStatus", + "description": "Operational status of the iSCSI Target." + }, + "endpoints": { + "description": "List of private IPv4 addresses to connect to the iSCSI Target.", + "type": "array", + "items": { + "type": "string" + } + }, + "port": { + "type": "integer", + "format": "int32", + "description": "The port used by iSCSI Target portal group." + } + } + }, + "IscsiTargetCreateProperties": { + "type": "object", + "description": "Properties for iSCSI Target create or update request.", + "required": [ + "aclMode" + ], + "properties": { + "aclMode": { + "description": "Mode for Target connectivity.", + "type": "string", + "$ref": "#/definitions/AclMode" + }, + "targetIqn": { + "type": "string", + "description": "iSCSI Target IQN (iSCSI Qualified Name); example: \"iqn.2005-03.org.iscsi:server\"." + }, + "staticAcls": { + "type": "array", + "description": "Access Control List (ACL) for an iSCSI Target; defines LUN masking policy", + "items": { + "$ref": "#/definitions/Acl" + } + }, + "luns": { + "type": "array", + "description": "List of LUNs to be exposed through iSCSI Target.", + "items": { + "$ref": "#/definitions/IscsiLun" + } + } + } + }, + "IscsiTargetUpdateProperties": { + "type": "object", + "description": "Properties for iSCSI Target update request.", + "properties": { + "staticAcls": { + "type": "array", + "description": "Access Control List (ACL) for an iSCSI Target; defines LUN masking policy", + "items": { + "$ref": "#/definitions/Acl" + } + }, + "luns": { + "type": "array", + "description": "List of LUNs to be exposed through iSCSI Target.", + "items": { + "$ref": "#/definitions/IscsiLun" + } + } + } + }, + "Acl": { + "type": "object", + "description": "Access Control List (ACL) for an iSCSI Target; defines LUN masking policy", + "required": [ + "initiatorIqn", + "mappedLuns" + ], + "properties": { + "initiatorIqn": { + "type": "string", + "description": "iSCSI initiator IQN (iSCSI Qualified Name); example: \"iqn.2005-03.org.iscsi:client\"." + }, + "mappedLuns": { + "type": "array", + "description": "List of LUN names mapped to the ACL.", + "items": { + "type": "string" + } + } + } + }, + "IscsiLun": { + "type": "object", + "required": [ + "name", + "managedDiskAzureResourceId" + ], + "description": "LUN to expose the Azure Managed Disk.", + "additionalProperties": false, + "properties": { + "name": { + "type": "string", + "minimum": 1, + "maximum": 90, + "description": "User defined name for iSCSI LUN; example: \"lun0\"" + }, + "managedDiskAzureResourceId": { + "type": "string", + "description": "Azure Resource ID of the Managed Disk." + }, + "lun": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "Specifies the Logical Unit Number of the iSCSI LUN." + } + } + }, + "Error": { + "type": "object", + "description": "The resource management error response.", + "properties": { + "error": { + "type": "object", + "description": "RP error response.", + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "ProvisioningState": { + "type": "string", + "enum": [ + "Invalid", + "Succeeded", + "Failed", + "Canceled", + "Pending", + "Creating", + "Updating", + "Deleting" + ], + "x-ms-enum": { + "name": "ProvisioningStates", + "modelAsString": true + }, + "description": "Provisioning state of the iSCSI Target.", + "readOnly": true + }, + "OperationalStatus": { + "type": "string", + "enum": [ + "Invalid", + "Unknown", + "Healthy", + "Unhealthy", + "Updating", + "Running", + "Stopped", + "Stopped (deallocated)" + ], + "x-ms-enum": { + "name": "OperationalStatus", + "modelAsString": true + }, + "description": "Operational status of the resource." + }, + "DiskPoolTier": { + "type": "string", + "enum": [ + "Basic", + "Standard", + "Premium" + ], + "x-ms-enum": { + "name": "DiskPoolTier", + "modelAsString": true + }, + "description": "SKU of the VM host part of the Disk Pool deployment" + }, + "AclMode": { + "type": "string", + "enum": [ + "Dynamic", + "Static" + ], + "x-ms-enum": { + "name": "IscsiTargetAclMode", + "modelAsString": true + }, + "description": "ACL mode for iSCSI Target." + }, + "Sku": { + "type": "object", + "description": "Sku for ARM resource", + "required": [ + "name" + ], + "properties": { + "name": { + "type": "string", + "description": "Sku name" + }, + "tier": { + "type": "string", + "description": "Sku tier" + } + } + }, + "SystemMetadata": { + "description": "Metadata pertaining to creation and last modification of the resource.", + "type": "object", + "readOnly": true, + "properties": { + "createdBy": { + "type": "string", + "description": "The identity that created the resource." + }, + "createdByType": { + "type": "string", + "description": "The type of identity that created the resource.", + "enum": [ + "User", + "Application", + "ManagedIdentity", + "Key" + ], + "x-ms-enum": { + "name": "createdByType", + "modelAsString": true + } + }, + "createdAt": { + "type": "string", + "format": "date-time", + "description": "The timestamp of resource creation (UTC)." + }, + "lastModifiedBy": { + "type": "string", + "description": "The identity that last modified the resource." + }, + "lastModifiedByType": { + "type": "string", + "description": "The type of identity that last modified the resource.", + "enum": [ + "User", + "Application", + "ManagedIdentity", + "Key" + ], + "x-ms-enum": { + "name": "createdByType", + "modelAsString": true + } + }, + "lastModifiedAt": { + "type": "string", + "format": "date-time", + "description": "The type of identity that last modified the resource." + } + } + }, + "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": { + "description": "ARM resource model definition.", + "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 + }, + "ProxyResource": { + "description": "The resource model definition for a ARM proxy resource. It will have everything other than required location and tags", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ] + }, + "ErrorAdditionalInfo": { + "properties": { + "type": { + "readOnly": true, + "type": "string", + "description": "The additional info type." + }, + "info": { + "readOnly": true, + "type": "object", + "description": "The additional info." + } + }, + "description": "The resource management error additional info." + }, + "ErrorResponse": { + "properties": { + "code": { + "readOnly": true, + "type": "string", + "description": "The error code." + }, + "message": { + "readOnly": true, + "type": "string", + "description": "The error message." + }, + "target": { + "readOnly": true, + "type": "string", + "description": "The error target." + }, + "details": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ErrorResponse" + }, + "description": "The error details." + }, + "additionalInfo": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ErrorAdditionalInfo" + }, + "description": "The error additional info." + } + }, + "description": "The resource management error response." + } + } +} diff --git a/specification/storagepool/resource-manager/readme.az.md b/specification/storagepool/resource-manager/readme.az.md new file mode 100644 index 000000000000..d0f6bac0405f --- /dev/null +++ b/specification/storagepool/resource-manager/readme.az.md @@ -0,0 +1,38 @@ +## AZ + +These settings apply only when `--az` is specified on the command line. + +``` yaml $(az) +az: + extensions: diskpool + namespace: azure.mgmt.storagepool + package-name: azure-mgmt-storagepool +az-output-folder: $(azure-cli-extension-folder)/src/diskpool +python-sdk-output-folder: "$(az-output-folder)/azext_diskpool/vendored_sdks/storagepool" +# add additinal configuration here specific for Azure CLI +# refer to the faq.md for more details +``` + +## Az.DiskPool + +``` yaml +cli: + cli-directive: + - where: + param: disks + set: + positional: true + positionalKeys: + - id + - where: + group: DiskPools + op: ListOutboundNetworkDependenciesEndpoints + hidden: true + - where: + group: DiskPools + parameter: additionalCapabilities + alias: + - additional_capabilities + - a + +``` \ No newline at end of file diff --git a/specification/storagepool/resource-manager/readme.azureresourceschema.md b/specification/storagepool/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 07743e1d27f2..000000000000 --- a/specification/storagepool/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,24 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-storagepool-2020-03-15-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-storagepool-2020-03-15-preview and azureresourceschema - -``` yaml $(tag) == 'schema-storagepool-2020-03-15-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.StoragePool/preview/2020-03-15-preview/storagepool.json - -``` diff --git a/specification/storagepool/resource-manager/readme.cli.md b/specification/storagepool/resource-manager/readme.cli.md new file mode 100644 index 000000000000..813847914ab1 --- /dev/null +++ b/specification/storagepool/resource-manager/readme.cli.md @@ -0,0 +1,21 @@ +``` yaml +# add any configuration here for all CLI languages +# refer to the faq.md for more details +directive: + - where: + group: diskpool disk-pool + set: + group: disk-pool + - where: + group: diskpool iscsi-target + set: + group: disk-pool iscsi-target + - where: + command: disk-pool deallocate + set: + command: disk-pool stop + - where: + command: diskpool disk-pool-zone list + set: + command: disk-pool list-skus +``` \ No newline at end of file diff --git a/specification/storagepool/resource-manager/readme.go.md b/specification/storagepool/resource-manager/readme.go.md index e5a8d73b89e3..3a8c5c1660a1 100644 --- a/specification/storagepool/resource-manager/readme.go.md +++ b/specification/storagepool/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ```yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION clear-output-folder: true ``` @@ -12,15 +12,15 @@ go: ``` yaml $(go) && $(multiapi) batch: - - tag: package-2020-03-15-preview + - tag: package-2021-04-01-preview ``` -### Tag: package-2020-03-15-preview and go +### Tag: package-2021-04-01-preview and go -These settings apply only when `--tag=package-2020-03-15-preview --go` is specified on the command line. +These settings apply only when `--tag=package-2021-04-01-preview --go` is specified on the command line. Please also specify `--go-sdks-folder=`. -```yaml $(tag) == 'package-2020-03-15-preview' && $(go) +```yaml $(tag) == 'package-2021-04-01-preview' && $(go) namespace: storagepool -output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2020-03-15-preview/$(namespace) +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2021-04-01-preview/$(namespace) ``` diff --git a/specification/storagepool/resource-manager/readme.md b/specification/storagepool/resource-manager/readme.md index 4ff0e7d73767..daff48adc37f 100644 --- a/specification/storagepool/resource-manager/readme.md +++ b/specification/storagepool/resource-manager/readme.md @@ -26,18 +26,28 @@ These are the global settings for the storagepool. ```yaml openapi-type: arm -tag: package-2020-03-15-preview +tag: package-2021-04-01-preview +``` + +### Tag: package-2021-04-01-preview + +These settings apply only when `--tag=package-2021-04-01-preview` is specified on the command line. + +```yaml $(tag) == 'package-2021-04-01-preview' +input-file: + - Microsoft.StoragePool/preview/2021-04-01-preview/storagepool.json ``` -### Tag: package-2020-03-15-preview -These settings apply only when `--tag=package-2020-03-15-preview` is specified on the command line. +### Tag: package-2020-03-15-preview +These settings apply only when ```yaml $(tag) == 'package-2020-03-15-preview' input-file: - Microsoft.StoragePool/preview/2020-03-15-preview/storagepool.json ``` + --- # Code Generation @@ -49,7 +59,7 @@ This is not used by Autorest itself. ```yaml $(swagger-to-sdk) swagger-to-sdk: - - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-java - repo: azure-sdk-for-go - repo: azure-sdk-for-js diff --git a/specification/storagepool/resource-manager/readme.python.md b/specification/storagepool/resource-manager/readme.python.md index d51e4c72c621..7d7f211f121d 100644 --- a/specification/storagepool/resource-manager/readme.python.md +++ b/specification/storagepool/resource-manager/readme.python.md @@ -3,19 +3,21 @@ These settings apply only when `--python` is specified on the command line. Please also specify `--python-sdks-folder=`. -```yaml $(python) -python: - azure-arm: true - license-header: MICROSOFT_MIT_NO_VERSION - payload-flattening-threshold: 2 - namespace: Microsoft.StoragePool - package-name: storagepool - package-version: 2020-03-15-preview - clear-output-folder: true +``` yaml $(track2) +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +package-name: azure-mgmt-storagepool +no-namespace-folders: true +package-version: 1.0.0b1 +clear-output-folder: true ``` -```yaml $(python) -python: - no-namespace-folders: true - output-folder: $(python-sdks-folder)/storage/azure-mgmt-storage/azure/mgmt/storage/v2020_03_15_preview +``` yaml $(python-mode) == 'update' && $(track2) +no-namespace-folders: true +output-folder: $(python-sdks-folder)/storagepool/azure-mgmt-storagepool/azure/mgmt/storagepool +``` + +``` yaml $(python-mode) == 'create' && $(track2) +basic-setup-py: true +output-folder: $(python-sdks-folder)/storagepool/azure-mgmt-storagepool ``` diff --git a/specification/storagepool/resource-manager/readme.ruby.md b/specification/storagepool/resource-manager/readme.ruby.md index 67579a795894..21fb14d23705 100644 --- a/specification/storagepool/resource-manager/readme.ruby.md +++ b/specification/storagepool/resource-manager/readme.ruby.md @@ -4,16 +4,16 @@ These settings apply only when `--ruby` is specified on the command line. ```yaml package-name: azure_mgmt_storagepool -package-version: 2020-03-15-preview +package-version: 2021-04-01-preview azure-arm: true ``` -### Tag: package-2020-03-15-preview and ruby +### Tag: package-2021-04-01-preview and ruby -These settings apply only when `--tag=package-2020-03-15-preview --ruby` is specified on the command line. +These settings apply only when `--tag=package-2021-04-01-preview --ruby` is specified on the command line. Please also specify `--ruby-sdks-folder=`. -```yaml $(tag) == 'package-2020-03-15-preview' && $(ruby) +```yaml $(tag) == 'package-2021-04-01-preview' && $(ruby) namespace: Microsoft.StoragePool output-folder: $(ruby-sdks-folder)/storagepool ``` diff --git a/specification/storagesync/resource-manager/readme.azureresourceschema.md b/specification/storagesync/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index a3d2e4217bf5..000000000000 --- a/specification/storagesync/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,132 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-storagesync-2020-09-01 - - tag: schema-storagesync-2020-03-01 - - tag: schema-storagesync-2019-10-01 - - tag: schema-storagesync-2019-06-01 - - tag: schema-storagesync-2019-03-01 - - tag: schema-storagesync-2019-02-01 - - tag: schema-storagesync-2018-10-01 - - tag: schema-storagesync-2018-07-01 - - tag: schema-storagesync-2018-04-02 - - tag: schema-storagesync-2017-06-05-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-storagesync-2020-09-01 and azureresourceschema - -``` yaml $(tag) == 'schema-storagesync-2020-09-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.StorageSync/preview/2020-09-01/storagesync.json - -``` - -### Tag: schema-storagesync-2020-03-01 and azureresourceschema - -``` yaml $(tag) == 'schema-storagesync-2020-03-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.StorageSync/stable/2020-03-01/storagesync.json - -``` - -### Tag: schema-storagesync-2019-10-01 and azureresourceschema - -``` yaml $(tag) == 'schema-storagesync-2019-10-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.StorageSync/stable/2019-10-01/storagesync.json - -``` - -### Tag: schema-storagesync-2019-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-storagesync-2019-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.StorageSync/stable/2019-06-01/storagesync.json - -``` - -### Tag: schema-storagesync-2019-03-01 and azureresourceschema - -``` yaml $(tag) == 'schema-storagesync-2019-03-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.StorageSync/stable/2019-03-01/storagesync.json - -``` - -### Tag: schema-storagesync-2019-02-01 and azureresourceschema - -``` yaml $(tag) == 'schema-storagesync-2019-02-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.StorageSync/stable/2019-02-01/storagesync.json - -``` - -### Tag: schema-storagesync-2018-10-01 and azureresourceschema - -``` yaml $(tag) == 'schema-storagesync-2018-10-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.StorageSync/stable/2018-10-01/storagesync.json - -``` - -### Tag: schema-storagesync-2018-07-01 and azureresourceschema - -``` yaml $(tag) == 'schema-storagesync-2018-07-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.StorageSync/stable/2018-07-01/storagesync.json - -``` - -### Tag: schema-storagesync-2018-04-02 and azureresourceschema - -``` yaml $(tag) == 'schema-storagesync-2018-04-02' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.StorageSync/stable/2018-04-02/storagesync.json - -``` - -### Tag: schema-storagesync-2017-06-05-preview and azureresourceschema - -``` yaml $(tag) == 'schema-storagesync-2017-06-05-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.StorageSync/preview/2017-06-05-preview/storagesync.json - -``` diff --git a/specification/storagesync/resource-manager/readme.go.md b/specification/storagesync/resource-manager/readme.go.md index 868013c839dc..b3fdfce2d55b 100644 --- a/specification/storagesync/resource-manager/readme.go.md +++ b/specification/storagesync/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: storagesync clear-output-folder: true ``` diff --git a/specification/storagesync/resource-manager/readme.md b/specification/storagesync/resource-manager/readme.md index c1e76d40a214..abfbbe513a00 100644 --- a/specification/storagesync/resource-manager/readme.md +++ b/specification/storagesync/resource-manager/readme.md @@ -132,14 +132,13 @@ This is not used by Autorest itself. swagger-to-sdk: - repo: azure-sdk-for-net - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-java - repo: azure-sdk-for-go - repo: azure-sdk-for-js - repo: azure-sdk-for-node - repo: azure-cli-extensions - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js storagesync/resource-manager ``` ## C# @@ -159,33 +158,7 @@ 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 - license-header: MICROSOFT_MIT_NO_VERSION - payload-flattening-threshold: 2 - namespace: azure.mgmt.storagesync - package-name: azure-mgmt-storagesync - package-version: 1.0.0 - clear-output-folder: true -``` - -``` yaml $(python) && $(python-mode) == 'update' -python: - no-namespace-folders: true - output-folder: $(python-sdks-folder)/storage/azure-mgmt-storagesync/azure/mgmt/storagesync -``` - -``` yaml $(python) && $(python-mode) == 'create' -python: - basic-setup-py: true - output-folder: $(python-sdks-folder)/storage/azure-mgmt-storagesync -``` +See configuration in [readme.python.md](./readme.python.md) ## Go @@ -195,7 +168,5 @@ See configuration in [readme.go.md](./readme.go.md) See configuration in [readme.java.md](./readme.java.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/storagesync/resource-manager/readme.python.md b/specification/storagesync/resource-manager/readme.python.md index 4e80af41f4de..345560f54a6d 100644 --- a/specification/storagesync/resource-manager/readme.python.md +++ b/specification/storagesync/resource-manager/readme.python.md @@ -2,40 +2,46 @@ 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) && !$(track2) +python-mode: create python: azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 2 namespace: azure.mgmt.storagesync package-name: azure-mgmt-storagesync - package-version: 2019-06-01 + package-version: 1.0.0 clear-output-folder: true ``` ```yaml $(python) && $(track2) +python-mode: create azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION namespace: azure.mgmt.storagesync package-name: azure-mgmt-storagesync -package-version: 2019-06-01 +package-version: 1.0.0 clear-output-folder: true ``` ``` yaml $(python) && $(python-mode) == 'update' && !$(track2) python: no-namespace-folders: true - output-folder: $(python-sdks-folder)/storagesync/azure-mgmt-storagesync/azure/mgmt/storagesync + output-folder: $(python-sdks-folder)/storage/azure-mgmt-storagesync/azure/mgmt/storagesync ``` + ``` yaml $(python) && $(python-mode) == 'create' && !$(track2) python: basic-setup-py: true - output-folder: $(python-sdks-folder)/storagesync/azure-mgmt-storagesync + output-folder: $(python-sdks-folder)/storage/azure-mgmt-storagesync ``` ``` yaml $(python) && $(python-mode) == 'update' && $(track2) no-namespace-folders: true -output-folder: $(python-sdks-folder)/storagesync/azure-mgmt-storagesync/azure/mgmt/storagesync +output-folder: $(python-sdks-folder)/storage/azure-mgmt-storagesync/azure/mgmt/storagesync ``` + ``` yaml $(python) && $(python-mode) == 'create' && $(track2) basic-setup-py: true -output-folder: $(python-sdks-folder)/storagesync/azure-mgmt-storagesync -``` +output-folder: $(python-sdks-folder)/storage/azure-mgmt-storagesync +``` \ No newline at end of file diff --git a/specification/storsimple8000series/resource-manager/readme.azureresourceschema.md b/specification/storsimple8000series/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index c0317855bfca..000000000000 --- a/specification/storsimple8000series/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,24 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-storsimple-2017-06-01 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-storsimple-2017-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-storsimple-2017-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.StorSimple/stable/2017-06-01/storsimple.json - -``` diff --git a/specification/storsimple8000series/resource-manager/readme.go.md b/specification/storsimple8000series/resource-manager/readme.go.md index a91a371cfa20..74127ad16d50 100644 --- a/specification/storsimple8000series/resource-manager/readme.go.md +++ b/specification/storsimple8000series/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ```yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: storsimple clear-output-folder: true ``` diff --git a/specification/storsimple8000series/resource-manager/readme.md b/specification/storsimple8000series/resource-manager/readme.md index f717e6b9e303..18d3ddd5849a 100644 --- a/specification/storsimple8000series/resource-manager/readme.md +++ b/specification/storsimple8000series/resource-manager/readme.md @@ -62,8 +62,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_stor_simple8000_series'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js storsimple8000series/resource-manager ``` @@ -121,7 +119,5 @@ generate-interface: true -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/streamanalytics/resource-manager/readme.azureresourceschema.md b/specification/streamanalytics/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index d144db4a64a1..000000000000 --- a/specification/streamanalytics/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,60 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-streamanalytics-2020-03-01-preview - - tag: schema-streamanalytics-2017-04-01-preview - - tag: schema-streamanalytics-2016-03-01 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-streamanalytics-2020-03-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-streamanalytics-2020-03-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.StreamAnalytics/preview/2020-03-01-preview/clusters.json - - Microsoft.StreamAnalytics/preview/2020-03-01-preview/privateEndpoints.json - -``` - -### Tag: schema-streamanalytics-2017-04-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-streamanalytics-2017-04-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.StreamAnalytics/preview/2017-04-01-preview/functions.json - - Microsoft.StreamAnalytics/preview/2017-04-01-preview/inputs.json - - Microsoft.StreamAnalytics/preview/2017-04-01-preview/outputs.json - - Microsoft.StreamAnalytics/preview/2017-04-01-preview/streamingjobs.json - - Microsoft.StreamAnalytics/preview/2017-04-01-preview/subscriptions.json - - Microsoft.StreamAnalytics/preview/2017-04-01-preview/transformations.json - - Microsoft.StreamAnalytics/preview/2017-04-01-preview/operations.json - -``` - -### Tag: schema-streamanalytics-2016-03-01 and azureresourceschema - -``` yaml $(tag) == 'schema-streamanalytics-2016-03-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.StreamAnalytics/stable/2016-03-01/streamingjobs.json - - Microsoft.StreamAnalytics/stable/2016-03-01/inputs.json - - Microsoft.StreamAnalytics/stable/2016-03-01/outputs.json - - Microsoft.StreamAnalytics/stable/2016-03-01/transformations.json - - Microsoft.StreamAnalytics/stable/2016-03-01/functions.json - - Microsoft.StreamAnalytics/stable/2016-03-01/subscriptions.json - -``` diff --git a/specification/streamanalytics/resource-manager/readme.go.md b/specification/streamanalytics/resource-manager/readme.go.md index 4b098edfa050..c81d5dc82b87 100644 --- a/specification/streamanalytics/resource-manager/readme.go.md +++ b/specification/streamanalytics/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: streamanalytics clear-output-folder: true ``` @@ -32,4 +32,5 @@ These settings apply only when `--tag=package-2020-03-preview --go` is specified Please also specify `--go-sdk-folder=`. ``` yaml $(tag) == 'package-2020-03-preview' && $(go) -output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2020-03-01-preview/$(namespace) \ No newline at end of file +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2020-03-01-preview/$(namespace) +``` diff --git a/specification/streamanalytics/resource-manager/readme.md b/specification/streamanalytics/resource-manager/readme.md index 9770af90a658..27cc64486393 100644 --- a/specification/streamanalytics/resource-manager/readme.md +++ b/specification/streamanalytics/resource-manager/readme.md @@ -114,8 +114,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_stream_analytics'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js streamanalytics/resource-manager ``` ## C# @@ -229,7 +227,5 @@ directive: reason: Operations API under 2017-04-01-preview is the super-set of all RPs operations (across all API-versions). ``` -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/subscription/resource-manager/readme.azureresourceschema.md b/specification/subscription/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index ece3b69a91a2..000000000000 --- a/specification/subscription/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,109 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-subscription-2020-09-01 - - tag: schema-subscription-2020-01-01 - - tag: schema-subscription-2019-10-01-preview - - tag: schema-subscription-2019-03-01-preview - - tag: schema-subscription-2018-11-01-preview - - tag: schema-subscription-2018-03-01-preview - - tag: schema-subscription-2017-11-01-preview - - tag: schema-subscription-2016-06-01 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-subscription-2020-09-01 and azureresourceschema - -``` yaml $(tag) == 'schema-subscription-2020-09-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Subscription/stable/2020-09-01/subscriptions.json - -``` - -### Tag: schema-subscription-2020-01-01 and azureresourceschema - -``` yaml $(tag) == 'schema-subscription-2020-01-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Subscription/stable/2020-01-01/subscriptions.json - -``` - -### Tag: schema-subscription-2019-10-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-subscription-2019-10-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Subscription/preview/2019-10-01-preview/subscriptions.json - -``` - -### Tag: schema-subscription-2019-03-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-subscription-2019-03-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Subscription/preview/2019-03-01-preview/subscriptions.json - -``` - -### Tag: schema-subscription-2018-11-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-subscription-2018-11-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Subscription/preview/2018-11-01-preview/subscriptions.json - -``` - -### Tag: schema-subscription-2018-03-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-subscription-2018-03-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Subscription/preview/2018-03-01-preview/operations.json - - Microsoft.Subscription/preview/2018-03-01-preview/subscriptions.json - -``` - -### Tag: schema-subscription-2017-11-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-subscription-2017-11-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Subscription/preview/2017-11-01-preview/subscriptionDefinitions.json - -``` - -### Tag: schema-subscription-2016-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-subscription-2016-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Subscription/stable/2016-06-01/subscriptions.json - -``` diff --git a/specification/subscription/resource-manager/readme.go.md b/specification/subscription/resource-manager/readme.go.md index 56a77b2375f4..a78ef37800be 100644 --- a/specification/subscription/resource-manager/readme.go.md +++ b/specification/subscription/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION clear-output-folder: true namespace: subscription ``` diff --git a/specification/subscription/resource-manager/readme.md b/specification/subscription/resource-manager/readme.md index 60e9657946a6..806ebfb5b5f6 100644 --- a/specification/subscription/resource-manager/readme.md +++ b/specification/subscription/resource-manager/readme.md @@ -19,7 +19,7 @@ To see additional help and options, run: ## Configuration -## Suppression +### Suppression ``` yaml directive: - suppress: R2059 @@ -134,8 +134,6 @@ swagger-to-sdk: - repo: azure-sdk-for-js - repo: azure-cli-extensions - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js subscription/resource-manager ``` @@ -203,7 +201,5 @@ description: The subscription client ``` -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/support/resource-manager/readme.azureresourceschema.md b/specification/support/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index fe16d38b6201..000000000000 --- a/specification/support/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,36 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-support-2020-04-01 - - tag: schema-support-2019-05-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-support-2020-04-01 and azureresourceschema - -``` yaml $(tag) == 'schema-support-2020-04-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Support/stable/2020-04-01/support.json - -``` - -### Tag: schema-support-2019-05-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-support-2019-05-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Support/preview/2019-05-01-preview/support.json - -``` diff --git a/specification/support/resource-manager/readme.go.md b/specification/support/resource-manager/readme.go.md index c49e32cf649c..caa6135f09d8 100644 --- a/specification/support/resource-manager/readme.go.md +++ b/specification/support/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION clear-output-folder: true namespace: support ``` diff --git a/specification/support/resource-manager/readme.md b/specification/support/resource-manager/readme.md index 9e1fbac31c0f..f77e357adc7f 100644 --- a/specification/support/resource-manager/readme.md +++ b/specification/support/resource-manager/readme.md @@ -57,6 +57,7 @@ This is not used by Autorest itself. ``` yaml $(swagger-to-sdk) swagger-to-sdk: - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-java - repo: azure-sdk-for-js - repo: azure-sdk-for-go @@ -65,8 +66,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_support'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js support/resource-manager ``` ## C# @@ -93,7 +92,5 @@ See configuration in [readme.typescript.md](./readme.typescript.md) See configuration in [readme.ruby.md](./readme.ruby.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/support/resource-manager/readme.python.md b/specification/support/resource-manager/readme.python.md index f419cc3862d8..1dfaa6930a39 100644 --- a/specification/support/resource-manager/readme.python.md +++ b/specification/support/resource-manager/readme.python.md @@ -35,10 +35,10 @@ python: output-folder: $(python-sdks-folder)/support/azure-mgmt-support ``` ``` yaml $(python) && $(python-mode) == 'update' && $(track2) - no-namespace-folders: true - output-folder: $(python-sdks-folder)/support/azure-mgmt-support/azure/mgmt/support +no-namespace-folders: true +output-folder: $(python-sdks-folder)/support/azure-mgmt-support/azure/mgmt/support ``` ``` yaml $(python) && $(python-mode) == 'create' && $(track2) - basic-setup-py: true - output-folder: $(python-sdks-folder)/support/azure-mgmt-support +basic-setup-py: true +output-folder: $(python-sdks-folder)/support/azure-mgmt-support ``` diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-06-01-preview/entityTypes/Pipeline.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-06-01-preview/entityTypes/Pipeline.json index 5fa826b4b7be..e781ade499da 100644 --- a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-06-01-preview/entityTypes/Pipeline.json +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-06-01-preview/entityTypes/Pipeline.json @@ -7006,7 +7006,7 @@ } }, "required": [ - "dataFlow" + "dataflow" ] }, "SharePointOnlineListSource": { @@ -7173,6 +7173,14 @@ "sparkJob": { "description": "Synapse spark job reference.", "$ref": "../artifacts.json#/definitions/SynapseSparkJobReference" + }, + "args": { + "x-ms-client-name": "arguments", + "description": "User specified arguments to SynapseSparkJobDefinitionActivity.", + "type": "array", + "items": { + "description": "Type: string (or Expression with resultType string)." + } } }, "required": [ diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-06-01-preview/entityTypes/Trigger.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-06-01-preview/entityTypes/Trigger.json index 19cce76a5542..5978c9fccf86 100644 --- a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-06-01-preview/entityTypes/Trigger.json +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-06-01-preview/entityTypes/Trigger.json @@ -183,7 +183,7 @@ "Saturday" ], "x-ms-enum": { - "name": "DaysOfWeek", + "name": "DayOfWeek", "modelAsString": false } }, diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-06-01-preview/examples/Library_Append.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-06-01-preview/examples/Library_Append.json index 4226a3127d75..d9a0eb6dc607 100644 --- a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-06-01-preview/examples/Library_Append.json +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-06-01-preview/examples/Library_Append.json @@ -2,6 +2,7 @@ "parameters": { "endpoint": "exampleWorkspace.dev.azuresynapse.net", "libraryName": "exampleLibraryName.jar", + "comp": "appendblock", "api-version": "2019-06-01-preview", "content": "file binary chunk", "x-ms-blob-condition-appendpos": 12324 diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-06-01-preview/library.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-06-01-preview/library.json index d2943c7752a4..0a1acf5e94c2 100644 --- a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-06-01-preview/library.json +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-06-01-preview/library.json @@ -295,6 +295,7 @@ }, { "name": "x-ms-blob-condition-appendpos", + "x-ms-client-name": "blobConditionAppendPosition", "in": "header", "description": "Set this header to a byte offset at which the block is expected to be appended. The request succeeds only if the current offset matches this value. Otherwise, the request fails with the AppendPositionConditionNotMet error (HTTP status code 412 – Precondition Failed)", "required": false, @@ -313,7 +314,18 @@ } } } - } + }, + "parameters": [ + { + "name": "comp", + "in": "query", + "required": true, + "type": "string", + "enum": [ + "appendblock" + ] + } + ] } }, "definitions": { diff --git a/specification/synapse/data-plane/readme.go.md b/specification/synapse/data-plane/readme.go.md index 676c0c4e0734..0e4fc0b59ddb 100644 --- a/specification/synapse/data-plane/readme.go.md +++ b/specification/synapse/data-plane/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION clear-output-folder: true ``` diff --git a/specification/synapse/data-plane/readme.md b/specification/synapse/data-plane/readme.md index 8913f3364eec..f228932b8d75 100644 --- a/specification/synapse/data-plane/readme.md +++ b/specification/synapse/data-plane/readme.md @@ -36,7 +36,7 @@ tag: package-artifacts-2019-06-01-preview ``` ``` yaml $(package-access-control) -tag: package-access-control-2020-02-01-preview +tag: package-access-control-2020-08-01-preview ``` ``` yaml $(package-vnet) diff --git a/specification/synapse/data-plane/readme.python.md b/specification/synapse/data-plane/readme.python.md index 997c58f7ae73..f258b7a3153f 100644 --- a/specification/synapse/data-plane/readme.python.md +++ b/specification/synapse/data-plane/readme.python.md @@ -8,7 +8,6 @@ Use `--python-mode=update` if you already have a setup.py and just want to updat add-credentials: true license-header: MICROSOFT_MIT_NO_VERSION payload-flattening-threshold: 1 -package-name: azure-synapse package-version: 0.1.0 clear-output-folder: true credential-scopes: https://dev.azuresynapse.net/.default @@ -16,14 +15,18 @@ batch: - package-spark: true - package-artifacts: true - package-access-control: true + - package-vnet: true + - package-monitoring: true ``` ``` yaml $(package-spark) no-namespace-folders: true +package-name: azure-synapse-spark namespace: azure.synapse.spark output-folder: $(python-sdks-folder)/synapse/azure-synapse-spark/azure/synapse/spark ``` ``` yaml $(package-artifacts) no-namespace-folders: true +package-name: azure-synapse-artifacts namespace: azure.synapse.artifacts modelerfour: lenient-model-deduplication: true @@ -31,6 +34,21 @@ output-folder: $(python-sdks-folder)/synapse/azure-synapse-artifacts/azure/synap ``` ``` yaml $(package-access-control) no-namespace-folders: true +package-name: azure-synapse-accesscontrol namespace: azure.synapse.accesscontrol output-folder: $(python-sdks-folder)/synapse/azure-synapse-accesscontrol/azure/synapse/accesscontrol ``` + +``` yaml $(package-vnet) +no-namespace-folders: true +package-name: azure-synapse-managedprivateendpoints +namespace: azure.synapse.managedprivateendpoints +output-folder: $(python-sdks-folder)/synapse/azure-synapse-managedprivateendpoints/azure/synapse/managedprivateendpoints +``` + +``` yaml $(package-monitoring) +no-namespace-folders: true +package-name: azure-synapse-monitoring +namespace: azure.synapse.monitoring +output-folder: $(python-sdks-folder)/synapse/azure-synapse-monitoring/azure/synapse/monitoring +``` diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2020-04-01-preview/sqlDatabase.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2020-04-01-preview/sqlDatabase.json index e5d4529274ec..315f00e8f6ac 100644 --- a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2020-04-01-preview/sqlDatabase.json +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2020-04-01-preview/sqlDatabase.json @@ -285,6 +285,24 @@ "create" ] }, + "storageRedundancy": { + "description": "Storage redundancy of the database.", + "enum": [ + "Geo", + "GeoZone", + "Local", + "Zone" + ], + "type": "string", + "x-ms-enum": { + "name": "SqlDatabaseStorageRedundancyType", + "modelAsString": true + }, + "x-ms-mutability": [ + "read", + "create" + ] + }, "maxSizeBytes": { "format": "int64", "description": "The max size of the database expressed in bytes.", diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2020-04-01-preview/sqlPool.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2020-04-01-preview/sqlPool.json index 300ebf52cb3f..7a418faef778 100644 --- a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2020-04-01-preview/sqlPool.json +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2020-04-01-preview/sqlPool.json @@ -315,6 +315,19 @@ "description": "The requested service level objective name of the sql pool.", "type": "string", "readOnly": true + }, + "maxServiceObjectiveName": { + "description": "The max service level objective name of the sql pool.", + "type": "string" + }, + "autoPauseTimer": { + "format": "int32", + "description": "The period of inactivity in minutes before automatically pausing the sql pool.", + "type": "integer" + }, + "autoResume": { + "description": "Indicates whether the sql pool can automatically resume when connection attempts are made.", + "type": "boolean" } } }, diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/bigDataPool.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/bigDataPool.json new file mode 100644 index 000000000000..910244124267 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/bigDataPool.json @@ -0,0 +1,609 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-04-01-preview", + "title": "SynapseManagementClient", + "description": "Azure Synapse Analytics APIs" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "securityDefinitions": { + "azure_auth": { + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "type": "oauth2", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow" + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/bigDataPools/{bigDataPoolName}": { + "get": { + "operationId": "BigDataPools_Get", + "summary": "Get Big Data pool", + "description": "Get a Big Data pool.", + "tags": [ + "BigDataPools" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "bigDataPoolName", + "description": "Big Data pool name", + "required": true + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/BigDataPoolResourceInfo" + }, + "description": "" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get a Big Data pool": { + "$ref": "./examples/GetBigDataPool.json" + } + } + }, + "patch": { + "operationId": "BigDataPools_Update", + "summary": "Update a Big Data pool.", + "description": "Patch a Big Data pool.", + "tags": [ + "BigDataPools" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "bigDataPoolName", + "description": "Big Data pool name", + "required": true + }, + { + "schema": { + "$ref": "#/definitions/BigDataPoolPatchInfo" + }, + "in": "body", + "name": "bigDataPoolPatchInfo", + "description": "The updated Big Data pool properties", + "required": true + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/BigDataPoolResourceInfo" + }, + "description": "" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Update a Big Data pool": { + "$ref": "./examples/UpdateBigDataPool.json" + } + } + }, + "put": { + "operationId": "BigDataPools_CreateOrUpdate", + "summary": "Create a Big Data pool.", + "description": "Create a new Big Data pool.", + "tags": [ + "BigDataPools" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "bigDataPoolName", + "description": "Big Data pool name", + "required": true + }, + { + "name": "force", + "type": "boolean", + "in": "query", + "description": "Whether to stop any running jobs in the Big Data pool", + "required": false, + "default": false + }, + { + "schema": { + "$ref": "#/definitions/BigDataPoolResourceInfo" + }, + "in": "body", + "name": "bigDataPoolInfo", + "description": "The Big Data pool to create.", + "required": true + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/BigDataPoolResourceInfo" + }, + "description": "OK" + }, + "202": { + "schema": { + "$ref": "#/definitions/BigDataPoolResourceInfo" + }, + "description": "" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Create or update a Big Data pool": { + "$ref": "./examples/CreateOrUpdateBigDataPool.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "delete": { + "operationId": "BigDataPools_Delete", + "summary": "Delete a Big Data pool.", + "description": "Delete a Big Data pool from the workspace.", + "tags": [ + "BigDataPools" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "bigDataPoolName", + "description": "Big Data pool name", + "required": true + } + ], + "responses": { + "200": { + "schema": { + "type": "object" + }, + "description": "OK" + }, + "202": { + "schema": { + "type": "object" + }, + "description": "" + }, + "204": { + "description": "" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Delete a Big Data pool": { + "$ref": "./examples/DeleteBigDataPool.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/bigDataPools": { + "get": { + "operationId": "BigDataPools_ListByWorkspace", + "summary": "List the Big Data pools in a workspace.", + "description": "List Big Data pools in a workspace.", + "tags": [ + "BigDataPools" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/BigDataPoolResourceInfoListResult" + }, + "description": "" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "List Big Data pools in a workspace": { + "$ref": "./examples/ListBigDataPoolsInWorkspace.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "BigDataPoolResourceInfoListResult": { + "type": "object", + "description": "Collection of Big Data pool information", + "title": "Collection of Big Data pools", + "properties": { + "nextLink": { + "type": "string", + "description": "Link to the next page of results" + }, + "value": { + "type": "array", + "description": "List of Big Data pools", + "items": { + "$ref": "#/definitions/BigDataPoolResourceInfo" + } + } + } + }, + "BigDataPoolPatchInfo": { + "type": "object", + "description": "Properties patch for a Big Data pool", + "title": "Patch for a Big Data pool", + "properties": { + "tags": { + "additionalProperties": { + "type": "string" + }, + "description": "Updated tags for the Big Data pool", + "type": "object" + } + } + }, + "BigDataPoolResourceInfo": { + "type": "object", + "description": "A Big Data pool", + "title": "Big Data pool", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/TrackedResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/BigDataPoolResourceProperties", + "description": "Big Data pool properties", + "x-ms-client-flatten": true + } + } + }, + "BigDataPoolResourceProperties": { + "type": "object", + "description": "Properties of a Big Data pool powered by Apache Spark", + "title": "Spark pool properties", + "properties": { + "provisioningState": { + "type": "string", + "description": "The state of the Big Data pool." + }, + "autoScale": { + "$ref": "#/definitions/AutoScaleProperties", + "description": "Auto-scaling properties" + }, + "creationDate": { + "type": "string", + "format": "date-time", + "description": "The time when the Big Data pool was created." + }, + "autoPause": { + "$ref": "#/definitions/AutoPauseProperties", + "description": "Auto-pausing properties" + }, + "isComputeIsolationEnabled": { + "type": "boolean", + "description": "Whether compute isolation is required or not." + }, + "sessionLevelPackagesEnabled": { + "type": "boolean", + "description": "Whether session level packages enabled." + }, + "cacheSize": { + "type": "integer", + "format": "int32", + "description": "The cache size" + }, + "dynamicExecutorAllocation": { + "$ref": "#/definitions/DynamicExecutorAllocation", + "description": "Dynamic Executor Allocation" + }, + "sparkEventsFolder": { + "type": "string", + "description": "The Spark events folder" + }, + "nodeCount": { + "type": "integer", + "format": "int32", + "description": "The number of nodes in the Big Data pool." + }, + "libraryRequirements": { + "$ref": "#/definitions/LibraryRequirements", + "description": "Library version requirements" + }, + "customLibraries": { + "description": "List of custom libraries/packages associated with the spark pool.", + "type": "array", + "items": { + "$ref": "#/definitions/LibraryInfo" + } + }, + "sparkConfigProperties": { + "$ref": "#/definitions/LibraryRequirements", + "description": "Spark configuration file to specify additional properties" + }, + "sparkVersion": { + "type": "string", + "description": "The Apache Spark version." + }, + "defaultSparkLogFolder": { + "type": "string", + "description": "The default folder where Spark logs will be written." + }, + "nodeSize": { + "enum": [ + "None", + "Small", + "Medium", + "Large", + "XLarge", + "XXLarge", + "XXXLarge" + ], + "type": "string", + "description": "The level of compute power that each node in the Big Data pool has.", + "x-ms-enum": { + "name": "NodeSize", + "modelAsString": true + } + }, + "nodeSizeFamily": { + "enum": [ + "None", + "MemoryOptimized" + ], + "type": "string", + "description": "The kind of nodes that the Big Data pool provides.", + "x-ms-enum": { + "name": "NodeSizeFamily", + "modelAsString": true + } + }, + "lastSucceededTimestamp": { + "type": "string", + "format": "date-time", + "description": "The time when the Big Data pool was updated successfully.", + "readOnly": true + } + } + }, + "AutoScaleProperties": { + "type": "object", + "description": "Auto-scaling properties of a Big Data pool powered by Apache Spark", + "title": "Spark pool auto-scaling properties", + "properties": { + "minNodeCount": { + "type": "integer", + "format": "int32", + "description": "The minimum number of nodes the Big Data pool can support." + }, + "enabled": { + "type": "boolean", + "description": "Whether automatic scaling is enabled for the Big Data pool." + }, + "maxNodeCount": { + "type": "integer", + "format": "int32", + "description": "The maximum number of nodes the Big Data pool can support." + } + } + }, + "AutoPauseProperties": { + "type": "object", + "description": "Auto-pausing properties of a Big Data pool powered by Apache Spark", + "title": "Spark pool auto-pausing properties", + "properties": { + "delayInMinutes": { + "type": "integer", + "format": "int32", + "description": "Number of minutes of idle time before the Big Data pool is automatically paused." + }, + "enabled": { + "type": "boolean", + "description": "Whether auto-pausing is enabled for the Big Data pool." + } + } + }, + "DynamicExecutorAllocation": { + "type": "object", + "description": "Dynamic Executor Allocation Properties", + "properties": { + "enabled": { + "type": "boolean", + "description": "Indicates whether Dynamic Executor Allocation is enabled or not." + } + } + }, + "LibraryInfo": { + "type": "object", + "description": "Library/package information of a Big Data pool powered by Apache Spark", + "title": "Information about a library/package created at the workspace level.", + "properties": { + "name": { + "type": "string", + "description": "Name of the library." + }, + "path": { + "type": "string", + "description": "Storage blob path of library." + }, + "containerName": { + "type": "string", + "description": "Storage blob container name." + }, + "uploadedTimestamp": { + "type": "string", + "format": "date-time", + "description": "The last update time of the library.", + "readOnly": true + }, + "type": { + "type": "string", + "description": "Type of the library." + }, + "provisioningStatus": { + "readOnly": true, + "type": "string", + "description": "Provisioning status of the library/package." + }, + "creatorId": { + "readOnly": true, + "type": "string", + "description": "Creator Id of the library/package." + } + } + }, + "LibraryRequirements": { + "type": "object", + "description": "Library requirements for a Big Data pool powered by Apache Spark", + "title": "Spark pool library version requirements", + "properties": { + "time": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "The last update time of the library requirements file." + }, + "content": { + "type": "string", + "description": "The library requirements." + }, + "filename": { + "type": "string", + "description": "The filename of the library requirements file." + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/checkNameAvailability.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/checkNameAvailability.json new file mode 100644 index 000000000000..5f9a521d0f61 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/checkNameAvailability.json @@ -0,0 +1,121 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-04-01-preview", + "title": "SynapseManagementClient", + "description": "Azure Synapse Analytics APIs" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "securityDefinitions": { + "azure_auth": { + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "type": "oauth2", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow" + } + }, + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Synapse/checkNameAvailability": { + "post": { + "operationId": "Operations_CheckNameAvailability", + "summary": "Check name availability", + "description": "Check whether a workspace name is available", + "tags": [ + "Operations" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityRequest" + }, + "in": "body", + "name": "request", + "required": true, + "description": "The check request" + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityResponse" + }, + "description": "" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Check for a workspace name that is available": { + "$ref": "./examples/CheckNameAvailabilityWorkspaceAvailable.json" + }, + "Check for a workspace name that already exists": { + "$ref": "./examples/CheckNameAvailabilityWorkspaceAlreadyExists.json" + } + } + } + } + }, + "definitions": { + "CheckNameAvailabilityRequest": { + "type": "object", + "title": "Check name availability request", + "description": "A request about whether a workspace name is available", + "properties": { + "name": { + "type": "string", + "description": "Workspace name" + }, + "type": { + "type": "string", + "description": "Type: workspace" + } + } + }, + "CheckNameAvailabilityResponse": { + "type": "object", + "title": "Check name availability response", + "description": "A response saying whether the workspace name is available", + "properties": { + "message": { + "type": "string", + "description": "Validation message" + }, + "available": { + "type": "boolean", + "description": "Whether the workspace name is available" + }, + "reason": { + "type": "string", + "description": "Reason the workspace name is or is not available" + }, + "name": { + "type": "string", + "description": "Workspace name" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ApprovePrivateEndpointConnection.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ApprovePrivateEndpointConnection.json new file mode 100644 index 000000000000..be381262a7e9 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ApprovePrivateEndpointConnection.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "privateEndpointConnectionName": "ExamplePrivateEndpointConnection", + "api-version": "2021-04-01-preview", + "request": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by abc@example.com" + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/privateEndpointConnections/ExamplePrivateEndpointConnection", + "name": "sql", + "type": "Microsoft.Synapse/workspaces/privateEndpointConnections", + "properties": { + "provisioningState": "Provisioning", + "privateEndpoint": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Network/privateEndpoints/ExamplePrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + }, + "200": { + "body": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/privateEndpointConnections/ExamplePrivateEndpointConnection", + "name": "sql", + "type": "Microsoft.Synapse/workspaces/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Network/privateEndpoints/ExamplePrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + }, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CheckNameAvailabilityWorkspaceAlreadyExists.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CheckNameAvailabilityWorkspaceAlreadyExists.json new file mode 100644 index 000000000000..4b91d4522a38 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CheckNameAvailabilityWorkspaceAlreadyExists.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "api-version": "2021-04-01-preview", + "request": { + "name": "workspace1", + "type": "Microsoft.Synapse/workspaces" + } + }, + "responses": { + "200": { + "body": { + "name": "workspace1", + "available": false, + "reason": "AlreadyExists", + "message": "Specified workspace name is already used" + } + }, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CheckNameAvailabilityWorkspaceAvailable.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CheckNameAvailabilityWorkspaceAvailable.json new file mode 100644 index 000000000000..08f1dc73c336 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CheckNameAvailabilityWorkspaceAvailable.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "api-version": "2021-04-01-preview", + "request": { + "name": "workspace1", + "type": "Microsoft.ProjectArcadia/workspaces" + } + }, + "responses": { + "200": { + "body": { + "name": "workspace1", + "available": true, + "reason": null, + "message": null + } + }, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateIpFirewallRule.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateIpFirewallRule.json new file mode 100644 index 000000000000..04b9d8a84da8 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateIpFirewallRule.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "ruleName": "ExampleIpFirewallRule", + "api-version": "2021-04-01-preview", + "ipFirewallRuleInfo": { + "properties": { + "startIpAddress": "10.0.0.0", + "endIpAddress": "10.0.0.254" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/firewallRules/ExampleIpFirewallRule", + "type": "Microsoft.Synapse/workspaces/firewallRules", + "name": "ExampleIpFirewallRule", + "properties": { + "startIpAddress": "10.0.0.0", + "endIpAddress": "10.0.0.254", + "provisioningState": "Provisioning" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/firewallRules/ExampleIpFirewallRule", + "type": "Microsoft.Synapse/workspaces/firewallRules", + "name": "ExampleIpFirewallRule", + "properties": { + "startIpAddress": "10.0.0.0", + "endIpAddress": "10.0.0.254", + "provisioningState": "Provisioning" + } + } + }, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateBigDataPool.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateBigDataPool.json new file mode 100644 index 000000000000..f358df7aa8b5 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateBigDataPool.json @@ -0,0 +1,117 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "bigDataPoolName": "ExamplePool", + "api-version": "2021-04-01-preview", + "bigDataPoolInfo": { + "tags": { + "key": "value" + }, + "location": "West US 2", + "properties": { + "sparkVersion": "2.4", + "nodeCount": 4, + "nodeSize": "Medium", + "nodeSizeFamily": "MemoryOptimized", + "autoScale": { + "enabled": true, + "minNodeCount": 3, + "maxNodeCount": 50 + }, + "autoPause": { + "enabled": true, + "delayInMinutes": 15 + }, + "sparkEventsFolder": "/events", + "libraryRequirements": { + "content": "", + "filename": "requirements.txt" + }, + "defaultSparkLogFolder": "/logs" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/bigDataPools/ExamplePool", + "type": "Microsoft.Synapse/workspaces/bigDataPools", + "location": "West US 2", + "name": "ExamplePool", + "tags": { + "key": "value" + }, + "properties": { + "provisioningState": "Provisioning", + "sparkVersion": "2.4", + "nodeCount": 4, + "nodeSize": "Medium", + "nodeSizeFamily": "MemoryOptimized", + "autoScale": { + "enabled": true, + "minNodeCount": 3, + "maxNodeCount": 50 + }, + "autoPause": { + "enabled": true, + "delayInMinutes": 15 + }, + "creationDate": "1970-01-01T00:00:00Z", + "sparkEventsFolder": "/events", + "libraryRequirements": { + "time": "1970-01-01T00:00:00Z", + "content": "", + "filename": "requirements.txt" + }, + "defaultSparkLogFolder": "/logs", + "lastSucceededTimestamp": "1970-01-01T10:00:00Z" + } + } + }, + "202": { + "body": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/bigDataPools/ExamplePool", + "type": "Microsoft.Synapse/workspaces/bigDataPools", + "location": "West US 2", + "name": "ExamplePool", + "tags": { + "key": "value" + }, + "properties": { + "provisioningState": "Provisioning", + "sparkVersion": "2.4", + "nodeCount": 4, + "nodeSize": "Medium", + "nodeSizeFamily": "MemoryOptimized", + "autoScale": { + "enabled": true, + "minNodeCount": 3, + "maxNodeCount": 50 + }, + "autoPause": { + "enabled": true, + "delayInMinutes": 15 + }, + "creationDate": "1970-01-01T00:00:00Z", + "sparkEventsFolder": "/events", + "libraryRequirements": { + "time": "1970-01-01T00:00:00Z", + "content": "", + "filename": "requirements.txt" + }, + "defaultSparkLogFolder": "/logs" + } + } + }, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateGeoBackupPolicies.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateGeoBackupPolicies.json new file mode 100644 index 000000000000..531b889c51b2 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateGeoBackupPolicies.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg", + "workspaceName": "testws", + "sqlPoolName": "testdw", + "geoBackupPolicyName": "Default", + "api-version": "2021-04-01-preview", + "parameters": { + "properties": { + "state": "Enabled" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Synapse/workspaces/testws/databases/testdw/geoBackupPolicies/Default", + "name": "Default", + "type": "Microsoft.Synapse/workspaces/sqlpools/geoBackupPolicies", + "location": null, + "kind": null, + "properties": { + "state": "Enabled", + "storageType": null + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Synapse/workspaces/testws/databases/testdw/geoBackupPolicies/Default", + "name": "Default", + "type": "Microsoft.Synapse/workspaces/sqlpools/geoBackupPolicies", + "location": null, + "kind": null, + "properties": { + "state": "Enabled", + "storageType": null + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateKey.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateKey.json new file mode 100644 index 000000000000..5f1c86d8abe1 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateKey.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "keyName": "somekey", + "api-version": "2021-04-01-preview", + "keyProperties": { + "properties": { + "isActiveCMK": true, + "keyVaultUrl": "https://vault.azure.net/keys/somesecret" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/keys/somekey", + "type": "Microsoft.Synapse/workspaces/keys", + "name": "somekey", + "properties": { + "isActiveCMK": true, + "keyVaultUrl": "https://vault.azure.net/keys/somesecret" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateMaintenanceWindows.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateMaintenanceWindows.json new file mode 100644 index 000000000000..13313a702e1d --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateMaintenanceWindows.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "samplerg", + "workspaceName": "testworkspace", + "sqlPoolName": "testsp", + "maintenanceWindowName": "current", + "api-version": "2021-04-01-preview", + "parameters": { + "properties": { + "timeRanges": [ + { + "dayOfWeek": "Saturday", + "startTime": "00:00:00", + "duration": "PT60M" + } + ] + } + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateManagedIdentitySqlControlSettings.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateManagedIdentitySqlControlSettings.json new file mode 100644 index 000000000000..6415456db3ea --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateManagedIdentitySqlControlSettings.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup1", + "workspaceName": "workspace1", + "api-version": "2021-04-01-preview", + "managedIdentitySqlControlSettings": { + "properties": { + "grantSqlControlToManagedIdentity": { + "desiredState": "Enabled" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup1/providers/Microsoft.Synapse/workspaces/workspace1/managedIdentitySqlControlSettings/default", + "name": "default", + "properties": { + "grantSqlControlToManagedIdentity": { + "desiredState": "Enabled", + "actualState": "Enabling" + } + } + } + }, + "201": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdatePrivateLinkHub.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdatePrivateLinkHub.json new file mode 100644 index 000000000000..5b942c169253 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdatePrivateLinkHub.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup1", + "privateLinkHubName": "privateLinkHub1", + "api-version": "2021-04-01-preview", + "privateLinkHubInfo": { + "properties": {}, + "location": "East US", + "tags": { + "key": "value" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup1/providers/Microsoft.Synapse/privateLinkHubs/privateLinkHub1", + "name": "privateLinkHub1", + "type": "Microsoft.Synapse/privateLinkHubs", + "location": "East US", + "properties": { + "provisioningState": "Succeeded" + }, + "tags": { + "key": "value" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup1/providers/Microsoft.Synapse/privateLinkHubs/privateLinkHub1", + "name": "privateLinkHub1", + "type": "Microsoft.Synapse/privateLinkHubs", + "location": "East US", + "properties": { + "provisioningState": "Succeeded" + }, + "tags": { + "key": "value" + } + } + }, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateSqlPoolBlobAuditingWithAllParameters.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateSqlPoolBlobAuditingWithAllParameters.json new file mode 100644 index 000000000000..1286fa064bd5 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateSqlPoolBlobAuditingWithAllParameters.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "blobauditingtest-4799", + "workspaceName": "blobauditingtest-6440", + "sqlPoolName": "testdb", + "blobAuditingPolicyName": "default", + "api-version": "2021-04-01-preview", + "parameters": { + "properties": { + "state": "Enabled", + "storageAccountAccessKey": "sdlfkjabc+sdlfkjsdlkfsjdfLDKFTERLKFDFKLjsdfksjdflsdkfD2342309432849328476458/3RSD==", + "storageEndpoint": "https://mystorage.blob.core.windows.net", + "retentionDays": 6, + "storageAccountSubscriptionId": "00000000-1234-0000-5678-000000000000", + "isStorageSecondaryKeyInUse": false, + "auditActionsAndGroups": [ + "DATABASE_LOGOUT_GROUP", + "DATABASE_ROLE_MEMBER_CHANGE_GROUP", + "UPDATE on database::TestDatabaseName by public" + ], + "isAzureMonitorTargetEnabled": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Synapse/workspaces/blobauditingtest-6440/sqlPools/testdb", + "name": "default", + "type": "Microsoft.Synapse/workspaces/sqlPools/auditingSettings", + "kind": "V12", + "properties": { + "state": "Enabled", + "storageEndpoint": "https://mystorage.blob.core.windows.net", + "retentionDays": 0, + "storageAccountSubscriptionId": "00000000-1234-0000-5678-000000000000", + "isStorageSecondaryKeyInUse": false, + "auditActionsAndGroups": [ + "DATABASE_LOGOUT_GROUP", + "DATABASE_ROLE_MEMBER_CHANGE_GROUP", + "UPDATE on database::TestDatabaseName by public" + ], + "isAzureMonitorTargetEnabled": true + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Synapse/workspaces/blobauditingtest-6440/sqlPools/testdb", + "name": "default", + "type": "Microsoft.Synapse/workspaces/sqlPools/auditingSettings", + "kind": "V12", + "properties": { + "state": "Enabled", + "storageEndpoint": "https://mystorage.blob.core.windows.net", + "retentionDays": 0, + "storageAccountSubscriptionId": "00000000-1234-0000-5678-000000000000", + "isStorageSecondaryKeyInUse": false, + "auditActionsAndGroups": [ + "DATABASE_LOGOUT_GROUP", + "DATABASE_ROLE_MEMBER_CHANGE_GROUP", + "UPDATE on database::TestDatabaseName by public" + ], + "isAzureMonitorTargetEnabled": true + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateSqlPoolBlobAuditingWithMinParameters.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateSqlPoolBlobAuditingWithMinParameters.json new file mode 100644 index 000000000000..5865d07b955b --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateSqlPoolBlobAuditingWithMinParameters.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "blobauditingtest-4799", + "workspaceName": "blobauditingtest-6440", + "sqlPoolName": "testdb", + "blobAuditingPolicyName": "default", + "api-version": "2021-04-01-preview", + "parameters": { + "properties": { + "state": "Enabled", + "storageAccountAccessKey": "sdlfkjabc+sdlfkjsdlkfsjdfLDKFTERLKFDFKLjsdfksjdflsdkfD2342309432849328476458/3RSD==", + "storageEndpoint": "https://mystorage.blob.core.windows.net" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Synapse/workspaces/blobauditingtest-6440/sqlPools/testdb", + "name": "default", + "type": "Microsoft.Synapse/workspaces/sqlPools/auditingSettings", + "kind": "V12", + "properties": { + "state": "Enabled", + "storageEndpoint": "https://mystorage.blob.core.windows.net", + "retentionDays": 0, + "storageAccountSubscriptionId": "00000000-0000-0000-0000-000000000000", + "isStorageSecondaryKeyInUse": false, + "auditActionsAndGroups": [ + "SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP", + "FAILED_DATABASE_AUTHENTICATION_GROUP", + "BATCH_COMPLETED_GROUP" + ], + "isAzureMonitorTargetEnabled": false + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Synapse/workspaces/blobauditingtest-6440/sqlPools/testdb", + "name": "default", + "type": "Microsoft.Synapse/workspaces/sqlPools/auditingSettings", + "kind": "V12", + "properties": { + "state": "Enabled", + "storageEndpoint": "https://mystorage.blob.core.windows.net", + "retentionDays": 0, + "storageAccountSubscriptionId": "00000000-0000-0000-0000-000000000000", + "isStorageSecondaryKeyInUse": false, + "auditActionsAndGroups": [ + "SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP", + "FAILED_DATABASE_AUTHENTICATION_GROUP", + "BATCH_COMPLETED_GROUP" + ], + "isAzureMonitorTargetEnabled": false + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateSqlPoolColumnSensitivityLabelWithAllParameters.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateSqlPoolColumnSensitivityLabelWithAllParameters.json new file mode 100644 index 000000000000..7d8df77d9ae3 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateSqlPoolColumnSensitivityLabelWithAllParameters.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "workspaceName": "myServer", + "sqlPoolName": "myDatabase", + "schemaName": "dbo", + "tableName": "myTable", + "columnName": "myColumn", + "sensitivityLabelSource": "current", + "api-version": "2021-04-01-preview", + "parameters": { + "properties": { + "informationType": "PhoneNumber", + "informationTypeId": "d22fa6e9-5ee4-3bde-4c2b-a409604c4646", + "labelId": "bf91e08c-f4f0-478a-b016-25164b2a65ff", + "labelName": "PII" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Synapse/workspaces/myServer/sqlPools/myDatabase/schemas/dbo/tables/myTable/columns/myColumn/sensitivityLabels/current", + "name": "current", + "type": "Microsoft.Synapse/workspaces/sqlPools/schemas/tables/columns/sensitivityLabels", + "properties": { + "informationType": "PhoneNumber", + "informationTypeId": "d22fa6e9-5ee4-3bde-4c2b-a409604c4646", + "labelId": "bf91e08c-f4f0-478a-b016-25164b2a65ff", + "labelName": "PII" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Synapse/workspaces/myServer/sqlPools/myDatabase/schemas/dbo/tables/myTable/columns/myColumn/sensitivityLabels/current", + "name": "current", + "type": "Microsoft.Synapse/workspaces/sqlPools/schemas/tables/columns/sensitivityLabels", + "properties": { + "informationType": "PhoneNumber", + "informationTypeId": "d22fa6e9-5ee4-3bde-4c2b-a409604c4646", + "labelId": "bf91e08c-f4f0-478a-b016-25164b2a65ff", + "labelName": "PII" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateSqlPoolSecurityAlertWithAllParameters.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateSqlPoolSecurityAlertWithAllParameters.json new file mode 100644 index 000000000000..b25cf85eb1e2 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateSqlPoolSecurityAlertWithAllParameters.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "securityalert-4799", + "workspaceName": "securityalert-6440", + "sqlPoolName": "testdb", + "securityAlertPolicyName": "default", + "api-version": "2021-04-01-preview", + "parameters": { + "properties": { + "state": "Enabled", + "emailAccountAdmins": true, + "emailAddresses": [ + "test@microsoft.com", + "user@microsoft.com" + ], + "disabledAlerts": [ + "Sql_Injection", + "Usage_Anomaly" + ], + "retentionDays": 6, + "storageAccountAccessKey": "sdlfkjabc+sdlfkjsdlkfsjdfLDKFTERLKFDFKLjsdfksjdflsdkfD2342309432849328476458/3RSD==", + "storageEndpoint": "https://mystorage.blob.core.windows.net" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/securityalert-4799/providers/Microsoft.Synapse/workspaces/securityalert-6440/sqlPools/testdb", + "name": "default", + "type": "Microsoft.Synapse/workspaces/sqlPools/securityAlertPolicies", + "properties": { + "state": "Enabled", + "emailAccountAdmins": true, + "emailAddresses": [ + "test@microsoft.com", + "user@microsoft.com" + ], + "disabledAlerts": [ + "Sql_Injection", + "Usage_Anomaly" + ], + "retentionDays": 6, + "storageAccountAccessKey": "", + "storageEndpoint": "https://mystorage.blob.core.windows.net" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/securityalert-4799/providers/Microsoft.Synapse/workspaces/securityalert-6440/sqlPools/testdb", + "name": "default", + "type": "Microsoft.Synapse/workspaces/sqlPools/securityAlertPolicies", + "properties": { + "state": "Enabled", + "emailAccountAdmins": true, + "emailAddresses": [ + "test@microsoft.com", + "user@microsoft.com" + ], + "disabledAlerts": [ + "Access_Anomaly", + "Usage_Anomaly" + ], + "retentionDays": 6, + "storageAccountAccessKey": "sdlfkjabc+sdlfkjsdlkfsjdfLDKFTERLKFDFKLjsdfksjdflsdkfD2342309432849328476458/3RSD==", + "storageEndpoint": "https://mystorage.blob.core.windows.net" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateSqlPoolSecurityAlertWithMinParameters.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateSqlPoolSecurityAlertWithMinParameters.json new file mode 100644 index 000000000000..ec2b7de44018 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateSqlPoolSecurityAlertWithMinParameters.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "securityalert-4799", + "workspaceName": "securityalert-6440", + "sqlPoolName": "testdb", + "securityAlertPolicyName": "default", + "api-version": "2021-04-01-preview", + "parameters": { + "properties": { + "state": "Enabled" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/securityalert-4799/providers/Microsoft.Synapse/workspaces/securityalert-6440/sqlPools/testdb", + "name": "default", + "type": "Microsoft.Synapse/workspaces/sqlPools/securityAlertPolicies", + "properties": { + "state": "Enabled", + "emailAccountAdmins": true, + "emailAddresses": [], + "disabledAlerts": [], + "retentionDays": 0, + "storageAccountAccessKey": "", + "storageEndpoint": "" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/securityalert-4799/providers/Microsoft.Synapse/workspaces/securityalert-6440/sqlPools/testdb", + "name": "default", + "type": "Microsoft.Synapse/workspaces/sqlPools/securityAlertPolicies", + "properties": { + "state": "Enabled", + "emailAccountAdmins": true, + "emailAddresses": [], + "disabledAlerts": [], + "retentionDays": 0, + "storageAccountAccessKey": "", + "storageEndpoint": "" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateSqlPoolTransparentDataEncryption.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateSqlPoolTransparentDataEncryption.json new file mode 100644 index 000000000000..4813fe26a2d1 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateSqlPoolTransparentDataEncryption.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-6852", + "workspaceName": "sqlcrudtest-2080", + "sqlPoolName": "sqlcrudtest-9187", + "transparentDataEncryptionName": "current", + "api-version": "2021-04-01-preview", + "parameters": { + "properties": { + "status": "Enabled" + } + } + }, + "responses": { + "200": { + "body": { + "name": "current", + "location": "North Europe", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Synapse/workspaces/sqlcrudtest-2080/sqlPools/sqlcrudtest-9187/transparentDataEncryption/current", + "type": "Microsoft.Synapse/workspaces/sqlPools/transparentDataEncryption", + "properties": { + "status": "Enabled" + } + } + }, + "201": { + "body": { + "name": "current", + "location": "North Europe", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Synapse/workspaces/sqlcrudtest-2080/sqlPools/sqlcrudtest-9187/transparentDataEncryption/current", + "type": "Microsoft.Synapse/workspaces/sqlPools/transparentDataEncryption", + "properties": { + "status": "Enabled" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateSqlPoolVulnerabilityAssessmentRuleBaseline.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateSqlPoolVulnerabilityAssessmentRuleBaseline.json new file mode 100644 index 000000000000..e17157fa8397 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateSqlPoolVulnerabilityAssessmentRuleBaseline.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityaseessmenttest-4799", + "workspaceName": "vulnerabilityaseessmenttest-6440", + "sqlPoolName": "testdb", + "vulnerabilityAssessmentName": "default", + "ruleId": "VA1001", + "baselineName": "default", + "api-version": "2021-04-01-preview", + "parameters": { + "properties": { + "baselineResults": [ + { + "result": [ + "userA", + "SELECT" + ] + }, + { + "result": [ + "userB", + "SELECT" + ] + }, + { + "result": [ + "userC", + "SELECT", + "tableId_4" + ] + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Synapse/workspaces/vulnerabilityaseessmenttest-6440/sqlPools/testdb/vulnerabilityAssessments/default/rules/VA1001/baselines/default", + "name": "default", + "type": "Microsoft.Synapse/workspaces/sqlPools/vulnerabilityAssessments/rules/baselines", + "properties": { + "baselineResults": [ + { + "result": [ + "userA", + "SELECT" + ] + }, + { + "result": [ + "userB", + "SELECT" + ] + }, + { + "result": [ + "userC", + "SELECT", + "tableId_4" + ] + } + ] + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateSqlPoolVulnerabilityAssessmentWithAllParameters.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateSqlPoolVulnerabilityAssessmentWithAllParameters.json new file mode 100644 index 000000000000..e0fcb6fecf6d --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateSqlPoolVulnerabilityAssessmentWithAllParameters.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityaseessmenttest-4799", + "workspaceName": "vulnerabilityaseessmenttest-6440", + "sqlPoolName": "testdb", + "vulnerabilityAssessmentName": "default", + "api-version": "2021-04-01-preview", + "parameters": { + "properties": { + "storageContainerPath": "https://myStorage.blob.core.windows.net/vulnerability-assessment/", + "storageContainerSasKey": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX", + "storageAccountAccessKey": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX", + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": true, + "emails": [ + "email1@mail.com", + "email2@mail.com" + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Synapse/workspaces/vulnerabilityaseessmenttest-6440/sqlPools/testdb/vulnerabilityAssessments/default", + "name": "default", + "type": "Microsoft.Synapse/workspaces/sqlPools/vulnerabilityAssessments", + "properties": { + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": true, + "emails": [ + "email1@mail.com", + "email2@mail.com" + ] + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Synapse/workspaces/vulnerabilityaseessmenttest-6440/sqlPools/testdb/vulnerabilityAssessments/default", + "name": "default", + "type": "Microsoft.Synapse/workspaces/sqlPools/vulnerabilityAssessments", + "properties": { + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": true, + "emails": [ + "email1@mail.com", + "email2@mail.com" + ] + } + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateSqlPoolVulnerabilityAssessmentWithContainerSasKeyAndMinParameters.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateSqlPoolVulnerabilityAssessmentWithContainerSasKeyAndMinParameters.json new file mode 100644 index 000000000000..ffb05004d73c --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateSqlPoolVulnerabilityAssessmentWithContainerSasKeyAndMinParameters.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityaseessmenttest-4799", + "workspaceName": "vulnerabilityaseessmenttest-6440", + "sqlPoolName": "testdb", + "vulnerabilityAssessmentName": "default", + "api-version": "2021-04-01-preview", + "parameters": { + "properties": { + "storageContainerPath": "https://myStorage.blob.core.windows.net/vulnerability-assessment/", + "storageContainerSasKey": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Synapse/workspaces/vulnerabilityaseessmenttest-6440/sqlPools/testdb/vulnerabilityAssessments/default", + "name": "default", + "type": "Microsoft.Synapse/workspaces/sqlPools/vulnerabilityAssessments", + "properties": { + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": false, + "emails": [] + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Synapse/workspaces/vulnerabilityaseessmenttest-6440/sqlPools/testdb/vulnerabilityAssessments/default", + "name": "default", + "type": "Microsoft.Synapse/workspaces/sqlPools/vulnerabilityAssessments", + "properties": { + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": false, + "emails": [] + } + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateSqlPoolWorkloadClassifierMax.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateSqlPoolWorkloadClassifierMax.json new file mode 100644 index 000000000000..e164e9a35dac --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateSqlPoolWorkloadClassifierMax.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-6852", + "workspaceName": "sqlcrudtest-2080", + "sqlPoolName": "sqlcrudtest-9187", + "workloadGroupName": "wlm_workloadgroup", + "workloadClassifierName": "wlm_workloadclassifier", + "api-version": "2021-04-01-preview", + "parameters": { + "properties": { + "memberName": "dbo", + "label": "test_label", + "context": "test_context", + "startTime": "12:00", + "endTime": "14:00", + "importance": "high" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "memberName": "dbo", + "label": "test_label", + "context": "test_context", + "startTime": "12:00", + "endTime": "14:00", + "importance": "high" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Synapse/workspaces/sqlcrudtest-2080/sqlPools/sqlcrudtest-9187/workloadGroups/wlm_workloadgroup/workloadClassifiers/wlm_workloadclassifier", + "name": "wlm_workloadclassifier", + "type": "Microsoft.Synapse/workspaces/sqlPools/workloadGroups/workloadClassifiers" + } + }, + "201": { + "body": { + "properties": { + "memberName": "dbo", + "label": "test_label", + "context": "test_context", + "startTime": "12:00", + "endTime": "14:00", + "importance": "high" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Synapse/workspaces/sqlcrudtest-2080/sqlPools/sqlcrudtest-9187/workloadGroups/wlm_workloadgroup/workloadClassifiers/wlm_workloadclassifier", + "name": "wlm_workloadclassifier", + "type": "Microsoft.Synapse/workspaces/sqlPools/workloadGroups/workloadClassifiers" + } + }, + "202": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateSqlPoolWorkloadClassifierMin.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateSqlPoolWorkloadClassifierMin.json new file mode 100644 index 000000000000..9152974ee8de --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateSqlPoolWorkloadClassifierMin.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-6852", + "workspaceName": "sqlcrudtest-2080", + "sqlPoolName": "sqlcrudtest-9187", + "workloadGroupName": "wlm_workloadgroup", + "workloadClassifierName": "wlm_workloadclassifier", + "api-version": "2021-04-01-preview", + "parameters": { + "properties": { + "memberName": "dbo" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "memberName": "dbo", + "label": "", + "context": "", + "startTime": "", + "endTime": "", + "importance": "" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Synapse/workspaces/sqlcrudtest-2080/sqlPools/sqlcrudtest-9187/workloadGroups/wlm_workloadgroup/workloadClassifiers/wlm_workloadclassifier", + "name": "wlm_workloadclassifier", + "type": "Microsoft.Synapse/workspaces/sqlPools/workloadGroups/workloadClassifiers" + } + }, + "201": { + "body": { + "properties": { + "memberName": "dbo", + "label": "", + "context": "", + "startTime": "", + "endTime": "", + "importance": "" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Synapse/workspaces/sqlcrudtest-2080/sqlPools/sqlcrudtest-9187/workloadGroups/wlm_workloadgroup/workloadClassifiers/wlm_workloadclassifier", + "name": "wlm_workloadclassifier", + "type": "Microsoft.Synapse/workspaces/sqlPools/workloadGroups/workloadClassifiers" + } + }, + "202": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateSqlPoolWorkloadGroupMax.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateSqlPoolWorkloadGroupMax.json new file mode 100644 index 000000000000..1d430203bf73 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateSqlPoolWorkloadGroupMax.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-6852", + "workspaceName": "sqlcrudtest-2080", + "sqlPoolName": "sqlcrudtest-9187", + "workloadGroupName": "smallrc", + "api-version": "2021-04-01-preview", + "parameters": { + "properties": { + "minResourcePercent": 0, + "maxResourcePercent": 100, + "minResourcePercentPerRequest": 3.0, + "maxResourcePercentPerRequest": 3.0, + "importance": "normal", + "queryExecutionTimeout": 0 + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "minResourcePercent": 0, + "maxResourcePercent": 100, + "minResourcePercentPerRequest": 3.0, + "maxResourcePercentPerRequest": 3.0, + "importance": "normal", + "queryExecutionTimeout": 0 + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Synapse/workspaces/sqlcrudtest-2080/sqlPools/workloadGroups/smallrc", + "name": "smallrc", + "type": "Microsoft.Synapse/workspaces/sqlPools/workloadGroups" + } + }, + "201": { + "body": { + "properties": { + "minResourcePercent": 0, + "maxResourcePercent": 100, + "minResourcePercentPerRequest": 3.0, + "maxResourcePercentPerRequest": 3.0, + "importance": "normal", + "queryExecutionTimeout": 0 + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Synapse/workspaces/sqlcrudtest-2080/sqlPools/workloadGroups/smallrc", + "name": "smallrc", + "type": "Microsoft.Synapse/workspaces/sqlPools/workloadGroups" + } + }, + "202": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateSqlPoolWorkloadGroupMin.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateSqlPoolWorkloadGroupMin.json new file mode 100644 index 000000000000..99ad6c43ad0d --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateSqlPoolWorkloadGroupMin.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-6852", + "workspaceName": "sqlcrudtest-2080", + "sqlPoolName": "sqlcrudtest-9187", + "workloadGroupName": "smallrc", + "api-version": "2021-04-01-preview", + "parameters": { + "properties": { + "minResourcePercent": 0, + "maxResourcePercent": 100, + "minResourcePercentPerRequest": 3.0 + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "minResourcePercent": 0, + "maxResourcePercent": 100, + "minResourcePercentPerRequest": 3.0, + "maxResourcePercentPerRequest": 3.0, + "importance": "normal", + "queryExecutionTimeout": 0 + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Synapse/workspaces/sqlcrudtest-2080/sqlPools/workloadGroups/smallrc", + "name": "smallrc", + "type": "Microsoft.Synapse/workspaces/sqlPools/workloadGroups" + } + }, + "201": { + "body": { + "properties": { + "minResourcePercent": 0, + "maxResourcePercent": 100, + "minResourcePercentPerRequest": 3.0, + "maxResourcePercentPerRequest": 3.0, + "importance": "normal", + "queryExecutionTimeout": 0 + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Synapse/workspaces/sqlcrudtest-2080/sqlPools/workloadGroups/smallrc", + "name": "smallrc", + "type": "Microsoft.Synapse/workspaces/sqlPools/workloadGroups" + } + }, + "202": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateVulnerabilityAssessmentWithStorageAccessKeyAndMinParameters.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateVulnerabilityAssessmentWithStorageAccessKeyAndMinParameters.json new file mode 100644 index 000000000000..91c86f0b3337 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateVulnerabilityAssessmentWithStorageAccessKeyAndMinParameters.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityaseessmenttest-4799", + "workspaceName": "vulnerabilityaseessmenttest-6440", + "sqlPoolName": "testdb", + "vulnerabilityAssessmentName": "default", + "api-version": "2021-04-01-preview", + "parameters": { + "properties": { + "storageContainerPath": "https://myStorage.blob.core.windows.net/vulnerability-assessment/", + "storageAccountAccessKey": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/Microsoft.Synapse/workspaces/vulnerabilityaseessmenttest-6440/sqlPools/testdb/vulnerabilityAssessments/default", + "name": "default", + "type": "Microsoft.Synapse/workspaces/sqlPools/vulnerabilityAssessments", + "properties": { + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": false, + "emails": [] + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Synapse/workspaces/vulnerabilityaseessmenttest-6440/sqlPools/testdb/vulnerabilityAssessments/default", + "name": "default", + "type": "Microsoft.Synapse/workspaces/sqlPools/vulnerabilityAssessments", + "properties": { + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": false, + "emails": [] + } + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateWorkspace.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateWorkspace.json new file mode 100644 index 000000000000..7f995aab372a --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateWorkspace.json @@ -0,0 +1,182 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup1", + "workspaceName": "workspace1", + "api-version": "2021-04-01-preview", + "workspaceInfo": { + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "defaultDataLakeStorage": { + "accountUrl": "https://accountname.dfs.core.windows.net", + "filesystem": "default" + }, + "managedVirtualNetworkSettings": { + "preventDataExfiltration": false, + "linkedAccessCheckOnTargetResource": false, + "allowedAadTenantIdsForLinking": [ + "740239CE-A25B-485B-86A0-262F29F6EBDB" + ] + }, + "purviewConfiguration": { + "purviewResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup1/providers/Microsoft.ProjectPurview/accounts/accountname1" + }, + "sqlAdministratorLogin": "login", + "sqlAdministratorLoginPassword": "password", + "managedVirtualNetwork": "default", + "managedResourceGroupName": "workspaceManagedResourceGroupUnique", + "workspaceRepositoryConfiguration": { + "type": "FactoryGitHubConfiguration", + "hostName": "", + "accountName": "mygithubaccount", + "projectName": "myproject", + "repositoryName": "myrepository", + "collaborationBranch": "master", + "rootFolder": "/" + }, + "encryption": { + "cmk": { + "key": { + "name": "default", + "keyVaultUrl": "https://vault.azure.net/keys/key1" + } + } + }, + "publicNetworkAccess": "Enabled" + }, + "location": "East US", + "tags": { + "key": "value" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup1/providers/Microsoft.Synapse/workspaces/workspace1", + "name": "workspace1", + "type": "Microsoft.Synapse/workspaces", + "location": "East US", + "identity": { + "type": "SystemAssigned", + "principalId": "f4b0f1c2-xxxx-43db-xxxx-ccd99e1afd22", + "tenantId": "72f988bf-xxxx-41af-xxxx-2d7cd011db47" + }, + "properties": { + "defaultDataLakeStorage": { + "accountUrl": "https://accountname.dfs.core.windows.net", + "filesystem": "default" + }, + "connectivityEndpoints": { + "dev": "workspace1.dev.projectarcadia.net", + "sql": "workspace1.sql.projectarcadia.net" + }, + "managedVirtualNetworkSettings": { + "preventDataExfiltration": false, + "linkedAccessCheckOnTargetResource": false, + "allowedAadTenantIdsForLinking": [ + "740239CE-A25B-485B-86A0-262F29F6EBDB" + ] + }, + "purviewConfiguration": { + "purviewResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup1/providers/Microsoft.ProjectPurview/accounts/accountname1" + }, + "sqlAdministratorLogin": "login", + "managedResourceGroupName": "workspaceManagedResourceGroupUnique", + "managedVirtualNetwork": "default", + "provisioningState": "Succeeded", + "privateEndpointConnections": [ + { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/privateEndpointConnections/ExamplePrivateEndpointConnection", + "name": "sql", + "type": "Microsoft.Synapse/workspaces/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Network/privateEndpoints/ExamplePrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ], + "workspaceUID": "999b999q-b888-4b44-bacd-2c222cc2222d", + "encryption": { + "doubleEncryptionEnabled": true, + "cmk": { + "status": "Consistent", + "key": { + "name": "default", + "keyVaultUrl": "https://vault.azure.net/keys/key1" + } + } + }, + "publicNetworkAccess": "Enabled" + }, + "tags": { + "key": "value" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup1/providers/Microsoft.Synapse/workspaces/workspace1", + "name": "workspace1", + "type": "Microsoft.Synapse/workspaces", + "location": "East US", + "properties": { + "defaultDataLakeStorage": { + "accountUrl": "https://accountname.dfs.core.windows.net", + "filesystem": "default" + }, + "managedVirtualNetworkSettings": { + "preventDataExfiltration": false, + "linkedAccessCheckOnTargetResource": false, + "allowedAadTenantIdsForLinking": [ + "740239CE-A25B-485B-86A0-262F29F6EBDB" + ] + }, + "purviewConfiguration": { + "purviewResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup1/providers/Microsoft.ProjectPurview/accounts/accountname1" + }, + "connectivityEndpoints": { + "dev": "workspace1.dev.projectarcadia.net", + "sql": "workspace1.sql.projectarcadia.net" + }, + "sqlAdministratorLogin": "login", + "managedResourceGroupName": "workspaceManagedResourceGroupUnique", + "managedVirtualNetwork": "default", + "provisioningState": "Provisioning", + "workspaceUID": "86984b43-b873-4b91-bacd-2ca083a104c7", + "encryption": { + "doubleEncryptionEnabled": true, + "cmk": { + "status": "Updating", + "key": { + "name": "default", + "keyVaultUrl": "https://vault.azure.net/keys/key1" + } + } + }, + "publicNetworkAccess": "Enabled" + }, + "tags": { + "key": "value" + } + } + }, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateWorkspaceAadAdmin.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateWorkspaceAadAdmin.json new file mode 100644 index 000000000000..48a2d1363f36 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateOrUpdateWorkspaceAadAdmin.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup1", + "workspaceName": "workspace1", + "api-version": "2021-04-01-preview", + "aadAdminInfo": { + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "tenantId": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup1/providers/Microsoft.Synapse/workspaces/workspace1/administrators/activeDirectory", + "name": "activeDirectory", + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "tenantId": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c" + } + } + }, + "202": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup1/providers/Microsoft.Synapse/workspaces/workspace1/administrators/activeDirectory", + "name": "activeDirectory", + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "tenantId": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c" + } + } + }, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateSqlPool.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateSqlPool.json new file mode 100644 index 000000000000..065bb82d8028 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateSqlPool.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "sqlPoolName": "ExampleSqlPool", + "api-version": "2021-04-01-preview", + "sqlPoolInfo": { + "tags": {}, + "sku": { + "tier": "", + "name": "" + }, + "location": "Southeast Asia", + "properties": { + "maxSizeBytes": 0, + "collation": "", + "sourceDatabaseId": "", + "recoverableDatabaseId": "", + "createMode": "", + "storageAccountType": "LRS" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspaces/sqlPools/ExampleSqlPool", + "type": "Microsoft.Synapse/workspaces/sqlPools", + "name": "ExampleSqlPool", + "location": "Southeast Asia", + "tags": {}, + "sku": { + "tier": "", + "name": "" + }, + "properties": { + "maxSizeBytes": 0, + "collation": "", + "sourceDatabaseId": "", + "recoverableDatabaseId": "", + "provisioningState": "Provisioning", + "status": "Paused", + "restorePointInTime": "1970-01-01T00:00:00.000Z", + "createMode": "", + "creationDate": "1970-01-01T00:00:00.000Z", + "storageAccountType": "LRS" + } + } + }, + "202": {}, + "404": {}, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateSqlPoolMetadataSyncConfig.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateSqlPoolMetadataSyncConfig.json new file mode 100644 index 000000000000..ce2d4588897f --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateSqlPoolMetadataSyncConfig.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "sqlPoolName": "ExampleSqlPool", + "api-version": "2021-04-01-preview", + "metadataSyncConfiguration": { + "properties": { + "enabled": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/bigDataPools/ExamplePool/metadataSync/config", + "type": "Microsoft.Synapse/workspaces/bigDataPools/metadataSync/config", + "name": "config", + "properties": { + "enabled": true + } + } + }, + "404": {}, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateSqlPoolRestorePoints.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateSqlPoolRestorePoints.json new file mode 100644 index 000000000000..5bdcd5e72f84 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateSqlPoolRestorePoints.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "location": "japaneast", + "workspaceName": "testserver", + "sqlPoolName": "testDatabase", + "api-version": "2021-04-01-preview", + "parameters": { + "restorePointLabel": "mylabel" + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Synapse/workspaces/testserver/sqlPools/testDatabase/restorePoints/131546477590000000", + "name": "131546477590000000", + "type": "Microsoft.Synapse/workspaces/sqlPools/restorePoints", + "location": "japaneast", + "properties": { + "restorePointType": "DISCRETE", + "restorePointCreationDate": "2017-03-10T08:00:00.000Z", + "restorePointLabel": "mylabel" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Synapse/workspaces/testserver/sqlPools/testDatabase/restorePoints/131546477590000000", + "name": "131546477590000000", + "type": "Microsoft.Synapse/workspaces/sqlPools/restorePoints", + "location": "japaneast", + "properties": { + "restorePointType": "DISCRETE", + "restorePointCreationDate": "2017-03-10T08:00:00.000Z", + "restorePointLabel": "mylabel" + } + } + }, + "202": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateWorkspaceManagedSqlServerBlobAuditingSettingsWithAllParameters.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateWorkspaceManagedSqlServerBlobAuditingSettingsWithAllParameters.json new file mode 100644 index 000000000000..7c6758007aee --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateWorkspaceManagedSqlServerBlobAuditingSettingsWithAllParameters.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "wsg-7398", + "workspaceName": "testWorkspace", + "blobAuditingPolicyName": "default", + "api-version": "2021-04-01-preview", + "parameters": { + "properties": { + "state": "Enabled", + "storageAccountAccessKey": "sdlfkjabc+sdlfkjsdlkfsjdfLDKFTERLKFDFKLjsdfksjdflsdkfD2342309432849328476458/3RSD==", + "storageEndpoint": "https://mystorage.blob.core.windows.net", + "retentionDays": 6, + "storageAccountSubscriptionId": "00000000-1234-0000-5678-000000000000", + "isStorageSecondaryKeyInUse": false, + "queueDelayMs": 4000, + "auditActionsAndGroups": [ + "SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP", + "FAILED_DATABASE_AUTHENTICATION_GROUP", + "BATCH_COMPLETED_GROUP" + ], + "isAzureMonitorTargetEnabled": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/wsg-7398/providers/Microsoft.Synapse/workspaces/testWorkspace/auditingSettings/default", + "name": "default", + "type": "Microsoft.Synapse/workspaces/auditingSettings", + "properties": { + "state": "Enabled", + "storageEndpoint": "https://mystorage.blob.core.windows.net", + "retentionDays": 6, + "storageAccountSubscriptionId": "00000000-1234-0000-5678-000000000000", + "isStorageSecondaryKeyInUse": false, + "queueDelayMs": 4000, + "auditActionsAndGroups": [ + "SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP", + "FAILED_DATABASE_AUTHENTICATION_GROUP", + "BATCH_COMPLETED_GROUP" + ], + "isAzureMonitorTargetEnabled": true + } + } + }, + "202": { + "startTime": "2017-11-22T09:34:54.72Z", + "operation": "UpsertServerEngineAuditingPolicy" + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateWorkspaceManagedSqlServerBlobAuditingSettingsWithMinParameters.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateWorkspaceManagedSqlServerBlobAuditingSettingsWithMinParameters.json new file mode 100644 index 000000000000..7e69993ecbf4 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateWorkspaceManagedSqlServerBlobAuditingSettingsWithMinParameters.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "wsg-7398", + "workspaceName": "testWorkspace", + "blobAuditingPolicyName": "default", + "api-version": "2021-04-01-preview", + "parameters": { + "properties": { + "state": "Enabled", + "storageAccountAccessKey": "sdlfkjabc+sdlfkjsdlkfsjdfLDKFTERLKFDFKLjsdfksjdflsdkfD2342309432849328476458/3RSD==", + "storageEndpoint": "https://mystorage.blob.core.windows.net" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/wsg-7398/providers/Microsoft.Synapse/workspaces/testWorkspace/auditingSettings/default", + "name": "default", + "type": "Microsoft.Synapse/workspaces/auditingSettings", + "properties": { + "state": "Enabled", + "storageEndpoint": "https://mystorage.blob.core.windows.net", + "retentionDays": 6, + "storageAccountSubscriptionId": "00000000-1234-0000-5678-000000000000", + "isStorageSecondaryKeyInUse": false, + "auditActionsAndGroups": [ + "SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP", + "FAILED_DATABASE_AUTHENTICATION_GROUP", + "BATCH_COMPLETED_GROUP" + ] + } + } + }, + "202": { + "startTime": "2017-11-22T09:34:54.72Z", + "operation": "UpsertServerEngineAuditingPolicy" + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateWorkspaceManagedSqlServerExetendedBlobAuditingSettingsWithMinParameters.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateWorkspaceManagedSqlServerExetendedBlobAuditingSettingsWithMinParameters.json new file mode 100644 index 000000000000..70d21bc6be51 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateWorkspaceManagedSqlServerExetendedBlobAuditingSettingsWithMinParameters.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "wsg-7398", + "workspaceName": "testWorkspace", + "blobAuditingPolicyName": "default", + "api-version": "2021-04-01-preview", + "parameters": { + "properties": { + "state": "Enabled", + "storageAccountAccessKey": "sdlfkjabc+sdlfkjsdlkfsjdfLDKFTERLKFDFKLjsdfksjdflsdkfD2342309432849328476458/3RSD==", + "storageEndpoint": "https://mystorage.blob.core.windows.net" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/wsg-7398/providers/Microsoft.Synapse/workspaces/testWorkspace/extendedAuditingSettings/default", + "name": "default", + "type": "Microsoft.Synapse/workspaces/extendedAuditingSettings", + "properties": { + "state": "Enabled", + "storageEndpoint": "https://mystorage.blob.core.windows.net", + "retentionDays": 6, + "storageAccountSubscriptionId": "00000000-1234-0000-5678-000000000000", + "isStorageSecondaryKeyInUse": false, + "auditActionsAndGroups": [ + "SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP", + "FAILED_DATABASE_AUTHENTICATION_GROUP", + "BATCH_COMPLETED_GROUP" + ], + "isAzureMonitorTargetEnabled": false + } + } + }, + "202": { + "startTime": "2017-11-22T09:34:54.72Z", + "operation": "UpsertServerEngineAuditingPolicy" + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateWorkspaceManagedSqlServerExtendedBlobAuditingSettingsWithAllParameters.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateWorkspaceManagedSqlServerExtendedBlobAuditingSettingsWithAllParameters.json new file mode 100644 index 000000000000..3835125a0977 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/CreateWorkspaceManagedSqlServerExtendedBlobAuditingSettingsWithAllParameters.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "wsg-7398", + "workspaceName": "testWorkspace", + "blobAuditingPolicyName": "default", + "api-version": "2021-04-01-preview", + "parameters": { + "properties": { + "state": "Enabled", + "storageAccountAccessKey": "sdlfkjabc+sdlfkjsdlkfsjdfLDKFTERLKFDFKLjsdfksjdflsdkfD2342309432849328476458/3RSD==", + "storageEndpoint": "https://mystorage.blob.core.windows.net", + "retentionDays": 6, + "storageAccountSubscriptionId": "00000000-1234-0000-5678-000000000000", + "isStorageSecondaryKeyInUse": false, + "auditActionsAndGroups": [ + "SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP", + "FAILED_DATABASE_AUTHENTICATION_GROUP", + "BATCH_COMPLETED_GROUP" + ], + "predicateExpression": "object_name = 'SensitiveData'", + "isAzureMonitorTargetEnabled": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/wsg-7398/providers/Microsoft.Synapse/workspaces/testWorkspace/extendedAuditingSettings/default", + "name": "default", + "type": "Microsoft.Synapse/workspaces/extendedAuditingSettings", + "properties": { + "state": "Enabled", + "storageEndpoint": "https://mystorage.blob.core.windows.net", + "retentionDays": 6, + "storageAccountSubscriptionId": "00000000-1234-0000-5678-000000000000", + "isStorageSecondaryKeyInUse": false, + "auditActionsAndGroups": [ + "SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP", + "FAILED_DATABASE_AUTHENTICATION_GROUP", + "BATCH_COMPLETED_GROUP" + ], + "predicateExpression": "object_name = 'SensitiveData'", + "isAzureMonitorTargetEnabled": true + } + } + }, + "202": { + "startTime": "2017-11-22T09:34:54.72Z", + "operation": "UpsertServerEngineAuditingPolicy" + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DataMaskingPolicyCreateOrUpdateMax.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DataMaskingPolicyCreateOrUpdateMax.json new file mode 100644 index 000000000000..8038d80b5c43 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DataMaskingPolicyCreateOrUpdateMax.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-6852", + "workspaceName": "sqlcrudtest-2080", + "sqlPoolName": "sqlcrudtest-331", + "dataMaskingPolicyName": "Default", + "api-version": "2021-04-01-preview", + "parameters": { + "properties": { + "dataMaskingState": "Enabled", + "exemptPrincipals": "testuser;" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Synapse/workspaces/sqlcrudtest-2080/sqlPools/sqlcrudtest-331/dataMaskingPolicies/Default", + "name": "Default", + "type": "Microsoft.Synapse/workspaces/sqlPools/dataMaskingPolicies", + "location": "Central US", + "kind": null, + "properties": { + "dataMaskingState": "Enabled", + "applicationPrincipals": "", + "exemptPrincipals": "testuser;", + "maskingLevel": "" + }, + "managedBy": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Synapse/workspaces/sqlcrudtest-2080/sqlPools/sqlcrudtest-331" + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DataMaskingPolicyCreateOrUpdateMin.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DataMaskingPolicyCreateOrUpdateMin.json new file mode 100644 index 000000000000..ed96dfe4f6fd --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DataMaskingPolicyCreateOrUpdateMin.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-6852", + "workspaceName": "sqlcrudtest-2080", + "sqlPoolName": "sqlcrudtest-331", + "dataMaskingPolicyName": "Default", + "api-version": "2021-04-01-preview", + "parameters": { + "properties": { + "dataMaskingState": "Enabled" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Synapse/workspaces/sqlcrudtest-2080/sqlPools/sqlcrudtest-331/dataMaskingPolicies/Default", + "name": "Default", + "type": "Microsoft.Synapse/workspaces/sqlPools/dataMaskingPolicies", + "location": "Central US", + "kind": null, + "properties": { + "dataMaskingState": "Enabled", + "applicationPrincipals": "", + "exemptPrincipals": "", + "maskingLevel": "" + }, + "managedBy": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Synapse/workspaces/sqlcrudtest-2080/sqlPools/sqlcrudtest-331" + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DataMaskingPolicyGet.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DataMaskingPolicyGet.json new file mode 100644 index 000000000000..de7a3587ce63 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DataMaskingPolicyGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-6852", + "workspaceName": "sqlcrudtest-2080", + "sqlPoolName": "sqlcrudtest-331", + "dataMaskingPolicyName": "Default", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Synapse/workspaces/sqlcrudtest-2080/sqlPools/sqlcrudtest-331/dataMaskingPolicies/Default", + "name": "Default", + "type": "Microsoft.Synapse/workspaces/sqlPools/dataMaskingPolicies", + "location": "Central US", + "kind": null, + "properties": { + "dataMaskingState": "Enabled", + "applicationPrincipals": "", + "exemptPrincipals": "", + "maskingLevel": "" + }, + "managedBy": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Synapse/workspaces/sqlcrudtest-2080/sqlPools/sqlcrudtest-331" + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DataMaskingRuleCreateOrUpdateDefaultMax.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DataMaskingRuleCreateOrUpdateDefaultMax.json new file mode 100644 index 000000000000..68cac1ad542a --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DataMaskingRuleCreateOrUpdateDefaultMax.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-6852", + "workspaceName": "sqlcrudtest-2080", + "sqlPoolName": "sqlcrudtest-331", + "dataMaskingPolicyName": "Default", + "api-version": "2021-04-01-preview", + "dataMaskingRuleName": "rule1", + "parameters": { + "properties": { + "aliasName": "nickname", + "schemaName": "dbo", + "tableName": "Table_1", + "columnName": "test1", + "maskingFunction": "Default", + "ruleState": "Enabled" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Synapse/workspaces/sqlcrudtest-6852/sqlPools/sqlcrudtest-331/dataMaskingPolicies/Default/rules/", + "name": null, + "type": "Microsoft.Synapse/workspaces/sqlPools/dataMaskingPolicies/rules", + "location": "Central US", + "kind": null, + "properties": { + "id": "dbo_Table_1_test1", + "ruleState": "Enabled", + "schemaName": "dbo", + "tableName": "Table_1", + "columnName": "test1", + "aliasName": "nickname", + "maskingFunction": "Default", + "numberFrom": null, + "numberTo": null, + "prefixSize": null, + "suffixSize": null, + "replacementString": null + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Synapse/workspaces/sqlcrudtest-6852/sqlPools/sqlcrudtest-331/dataMaskingPolicies/Default/rules/", + "name": null, + "type": "Microsoft.Synapse/workspaces/sqlPools/dataMaskingPolicies/rules", + "location": "Central US", + "kind": null, + "properties": { + "id": "dbo_Table_1_test1", + "ruleState": "Enabled", + "schemaName": "dbo", + "tableName": "Table_1", + "columnName": "test1", + "aliasName": "nickname", + "maskingFunction": "Default", + "numberFrom": null, + "numberTo": null, + "prefixSize": null, + "suffixSize": null, + "replacementString": null + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DataMaskingRuleCreateOrUpdateDefaultMin.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DataMaskingRuleCreateOrUpdateDefaultMin.json new file mode 100644 index 000000000000..a45298df9e23 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DataMaskingRuleCreateOrUpdateDefaultMin.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-6852", + "workspaceName": "sqlcrudtest-2080", + "sqlPoolName": "sqlcrudtest-331", + "dataMaskingPolicyName": "Default", + "api-version": "2021-04-01-preview", + "dataMaskingRuleName": "rule1", + "parameters": { + "properties": { + "schemaName": "dbo", + "tableName": "Table_1", + "columnName": "test1", + "maskingFunction": "Default" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Synapse/workspaces/sqlcrudtest-6852/sqlPools/sqlcrudtest-331/dataMaskingPolicies/Default/rules/", + "name": null, + "type": "Microsoft.Synapse/workspaces/sqlPools/dataMaskingPolicies/rules", + "location": "Central US", + "kind": null, + "properties": { + "id": "dbo_Table_1_test1", + "ruleState": "Enabled", + "schemaName": "dbo", + "tableName": "Table_1", + "columnName": "test1", + "aliasName": null, + "maskingFunction": "Default", + "numberFrom": null, + "numberTo": null, + "prefixSize": null, + "suffixSize": null, + "replacementString": null + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Synapse/workspaces/sqlcrudtest-6852/sqlPools/sqlcrudtest-331/dataMaskingPolicies/Default/rules/", + "name": null, + "type": "Microsoft.Synapse/workspaces/sqlPools/dataMaskingPolicies/rules", + "location": "Central US", + "kind": null, + "properties": { + "id": "dbo_Table_1_test1", + "ruleState": "Enabled", + "schemaName": "dbo", + "tableName": "Table_1", + "columnName": "test1", + "aliasName": null, + "maskingFunction": "Default", + "numberFrom": null, + "numberTo": null, + "prefixSize": null, + "suffixSize": null, + "replacementString": null + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DataMaskingRuleCreateOrUpdateNumber.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DataMaskingRuleCreateOrUpdateNumber.json new file mode 100644 index 000000000000..d999b3a1783f --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DataMaskingRuleCreateOrUpdateNumber.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-6852", + "workspaceName": "sqlcrudtest-2080", + "sqlPoolName": "sqlcrudtest-331", + "dataMaskingPolicyName": "Default", + "api-version": "2021-04-01-preview", + "dataMaskingRuleName": "rule1", + "parameters": { + "properties": { + "schemaName": "dbo", + "tableName": "Table_1", + "columnName": "test1", + "maskingFunction": "Number", + "numberFrom": "0", + "numberTo": "2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Synapse/workspaces/sqlcrudtest-6852/sqlPools/sqlcrudtest-331/dataMaskingPolicies/Default/rules/", + "name": null, + "type": "Microsoft.Synapse/workspaces/sqlPools/dataMaskingPolicies/rules", + "location": "Central US", + "kind": null, + "properties": { + "id": "dbo_Table_1_test1", + "ruleState": "Enabled", + "schemaName": "dbo", + "tableName": "Table_1", + "columnName": "test1", + "aliasName": null, + "maskingFunction": "Number", + "numberFrom": "0", + "numberTo": "2", + "prefixSize": null, + "suffixSize": null, + "replacementString": null + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Synapse/workspaces/sqlcrudtest-6852/sqlPools/sqlcrudtest-331/dataMaskingPolicies/Default/rules/", + "name": null, + "type": "Microsoft.Synapse/workspaces/sqlPools/dataMaskingPolicies/rules", + "location": "Central US", + "kind": null, + "properties": { + "id": "dbo_Table_1_test1", + "ruleState": "Enabled", + "schemaName": "dbo", + "tableName": "Table_1", + "columnName": "test1", + "aliasName": null, + "maskingFunction": "Number", + "numberFrom": "0", + "numberTo": "2", + "prefixSize": null, + "suffixSize": null, + "replacementString": null + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DataMaskingRuleCreateOrUpdateText.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DataMaskingRuleCreateOrUpdateText.json new file mode 100644 index 000000000000..afa934dff35b --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DataMaskingRuleCreateOrUpdateText.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-6852", + "workspaceName": "sqlcrudtest-2080", + "sqlPoolName": "sqlcrudtest-331", + "dataMaskingPolicyName": "Default", + "api-version": "2021-04-01-preview", + "dataMaskingRuleName": "rule1", + "parameters": { + "properties": { + "schemaName": "dbo", + "tableName": "Table_1", + "columnName": "test1", + "maskingFunction": "Text", + "prefixSize": "1", + "suffixSize": "0", + "replacementString": "asdf" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Synapse/workspaces/sqlcrudtest-6852/sqlPools/sqlcrudtest-331/dataMaskingPolicies/Default/rules/", + "name": null, + "type": "Microsoft.Synapse/workspaces/sqlPools/dataMaskingPolicies/rules", + "location": "Central US", + "kind": null, + "properties": { + "id": "dbo_Table_1_test1", + "ruleState": "Enabled", + "schemaName": "dbo", + "tableName": "Table_1", + "columnName": "test1", + "aliasName": null, + "maskingFunction": "Text", + "numberFrom": null, + "numberTo": null, + "prefixSize": "1", + "suffixSize": "0", + "replacementString": "asdf" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Synapse/workspaces/sqlcrudtest-6852/sqlPools/sqlcrudtest-331/dataMaskingPolicies/Default/rules/", + "name": null, + "type": "Microsoft.Synapse/workspaces/sqlPools/dataMaskingPolicies/rules", + "location": "Central US", + "kind": null, + "properties": { + "id": "dbo_Table_1_test1", + "ruleState": "Enabled", + "schemaName": "dbo", + "tableName": "Table_1", + "columnName": "test1", + "aliasName": null, + "maskingFunction": "Text", + "numberFrom": null, + "numberTo": null, + "prefixSize": "1", + "suffixSize": "0", + "replacementString": "asdf" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DataMaskingRuleGet.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DataMaskingRuleGet.json new file mode 100644 index 000000000000..1b2462ae1289 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DataMaskingRuleGet.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-6852", + "workspaceName": "sqlcrudtest-2080", + "sqlPoolName": "sqlcrudtest-331", + "dataMaskingPolicyName": "Default", + "dataMaskingRuleName": "rule1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Synapse/workspaces/sqlcrudtest-6852/sqlPools/sqlcrudtest-331/dataMaskingPolicies/Default/rules/", + "name": "rule1", + "type": "Microsoft.Synapse/workspaces/sqlPools/dataMaskingPolicies/rules", + "location": "Central US", + "kind": null, + "properties": { + "id": "dbo_Table_1_test1", + "ruleState": "Enabled", + "schemaName": "dbo", + "tableName": "Table_1", + "columnName": "test1", + "aliasName": null, + "maskingFunction": "Text", + "numberFrom": null, + "numberTo": null, + "prefixSize": "1", + "suffixSize": "0", + "replacementString": "asdf" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DataMaskingRuleList.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DataMaskingRuleList.json new file mode 100644 index 000000000000..c2b469c54b14 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DataMaskingRuleList.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-6852", + "workspaceName": "sqlcrudtest-2080", + "sqlPoolName": "sqlcrudtest-331", + "dataMaskingPolicyName": "Default", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Synapse/workspaces/sqlcrudtest-6852/sqlPools/sqlcrudtest-331/dataMaskingPolicies/Default/rules/", + "name": null, + "type": "Microsoft.Synapse/workspaces/sqlPools/dataMaskingPolicies/rules", + "location": "Central US", + "kind": null, + "properties": { + "id": "dbo_Table_1_test1", + "ruleState": "Enabled", + "schemaName": "dbo", + "tableName": "Table_1", + "columnName": "test1", + "aliasName": null, + "maskingFunction": "Text", + "numberFrom": null, + "numberTo": null, + "prefixSize": "1", + "suffixSize": "0", + "replacementString": "asdf" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Synapse/workspaces/sqlcrudtest-6852/sqlPools/sqlcrudtest-331/dataMaskingPolicies/Default/rules/", + "name": null, + "type": "Microsoft.Synapse/workspaces/sqlPools/dataMaskingPolicies/rules", + "location": "Central US", + "kind": null, + "properties": { + "id": "dbo_Table_1_test1", + "ruleState": "Enabled", + "schemaName": "dbo", + "tableName": "Table_1", + "columnName": "test1", + "aliasName": null, + "maskingFunction": "Number", + "numberFrom": "0", + "numberTo": "2", + "prefixSize": null, + "suffixSize": null, + "replacementString": null + } + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DeleteBigDataPool.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DeleteBigDataPool.json new file mode 100644 index 000000000000..165a3bb08d66 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DeleteBigDataPool.json @@ -0,0 +1,86 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "bigDataPoolName": "ExamplePool", + "api-version": "2021-04-01-preview" + }, + "responses": { + "204": {}, + "200": { + "body": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/bigDataPools/ExamplePool", + "type": "Microsoft.Synapse/workspaces/bigDataPools", + "location": "West US 2", + "name": "ExamplePool", + "tags": {}, + "properties": { + "provisioningState": "Deleting", + "sparkVersion": "2.4", + "nodeCount": 4, + "nodeSize": "Medium", + "nodeSizeFamily": "MemoryOptimized", + "autoScale": { + "enabled": true, + "minNodeCount": 3, + "maxNodeCount": 50 + }, + "autoPause": { + "enabled": true, + "delayInMinutes": 15 + }, + "creationDate": "1970-01-01T00:00:00Z", + "sparkEventsFolder": "/events", + "libraryRequirements": { + "time": "1970-01-01T00:00:00Z", + "content": "", + "filename": "requirements.txt" + }, + "defaultSparkLogFolder": "/logs" + } + } + }, + "202": { + "body": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/bigDataPools/ExamplePool", + "type": "Microsoft.Synapse/workspaces/bigDataPools", + "location": "West US 2", + "name": "ExamplePool", + "tags": {}, + "properties": { + "provisioningState": "Deleting", + "sparkVersion": "2.4", + "nodeCount": 4, + "nodeSize": "Medium", + "nodeSizeFamily": "MemoryOptimized", + "autoScale": { + "enabled": true, + "minNodeCount": 3, + "maxNodeCount": 50 + }, + "autoPause": { + "enabled": true, + "delayInMinutes": 15 + }, + "creationDate": "1970-01-01T00:00:00Z", + "sparkEventsFolder": "/events", + "libraryRequirements": { + "time": "1970-01-01T00:00:00Z", + "content": "", + "filename": "requirements.txt" + }, + "defaultSparkLogFolder": "/logs" + } + } + }, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DeleteIpFirewallRule.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DeleteIpFirewallRule.json new file mode 100644 index 000000000000..86afb300f898 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DeleteIpFirewallRule.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "ruleName": "ExampleIpFirewallRule", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/firewallRules/ExampleIpFirewallRule", + "type": "Microsoft.Synapse/workspaces/firewallRules", + "name": "ExampleIpFirewallRule", + "location": "West US 2", + "tags": {}, + "properties": { + "startIpAddress": "10.0.0.0", + "endIpAddress": "10.0.0.254", + "provisioningState": "Deleting" + } + } + }, + "202": {}, + "204": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DeleteKey.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DeleteKey.json new file mode 100644 index 000000000000..f66c475120fb --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DeleteKey.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "keyName": "somekey", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/keys/somekey", + "type": "Microsoft.Synapse/workspaces/keys", + "name": "somekey", + "properties": { + "isActiveCMK": true, + "keyVaultUrl": "https://vault.azure.net/keys/key1" + } + } + }, + "204": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DeletePrivateEndpointConnection.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DeletePrivateEndpointConnection.json new file mode 100644 index 000000000000..9e97d9bb31f9 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DeletePrivateEndpointConnection.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "privateEndpointConnectionName": "ExamplePrivateEndpointConnection", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": {}, + "202": { + "body": { + "status": "InProgress" + } + }, + "204": {}, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DeletePrivateLinkHub.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DeletePrivateLinkHub.json new file mode 100644 index 000000000000..da8cbfb2bca7 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DeletePrivateLinkHub.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup1", + "privateLinkHubName": "privateLinkHub1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {}, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DeleteSqlPool.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DeleteSqlPool.json new file mode 100644 index 000000000000..f2ae830764f8 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DeleteSqlPool.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "sqlPoolName": "ExampleSqlPool", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/sqlPools/ExampleSqlPool", + "name": "ExampleSqlPool", + "type": "Microsoft.Synapse/workspaces/sqlPools", + "location": "West US 2", + "properties": { + "provisioningState": "Deleting", + "status": "Paused" + } + } + }, + "202": { + "body": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/sqlPools/ExampleSqlPool", + "name": "ExampleSqlPool", + "type": "Microsoft.Synapse/workspaces/sqlPools", + "location": "West US 2", + "properties": { + "provisioningState": "Deleting", + "status": "Paused" + } + } + }, + "204": {}, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DeleteSqlPoolColumnSensitivityLabel.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DeleteSqlPoolColumnSensitivityLabel.json new file mode 100644 index 000000000000..f8ed876f476c --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DeleteSqlPoolColumnSensitivityLabel.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "workspaceName": "myServer", + "sqlPoolName": "myDatabase", + "schemaName": "dbo", + "tableName": "myTable", + "columnName": "myColumn", + "sensitivityLabelSource": "current", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DeleteSqlPoolVulnerabilityAssessment.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DeleteSqlPoolVulnerabilityAssessment.json new file mode 100644 index 000000000000..6d7462c52d43 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DeleteSqlPoolVulnerabilityAssessment.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityaseessmenttest-4799", + "workspaceName": "vulnerabilityaseessmenttest-6440", + "sqlPoolName": "testdb", + "vulnerabilityAssessmentName": "default", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DeleteSqlPoolVulnerabilityAssessmentRuleBaseline.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DeleteSqlPoolVulnerabilityAssessmentRuleBaseline.json new file mode 100644 index 000000000000..64423145eb86 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DeleteSqlPoolVulnerabilityAssessmentRuleBaseline.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityaseessmenttest-4799", + "workspaceName": "vulnerabilityaseessmenttest-6440", + "sqlPoolName": "testdb", + "baselineName": "default", + "ruleId": "VA1001", + "vulnerabilityAssessmentName": "default", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DeleteSqlPoolWorkloadGroup.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DeleteSqlPoolWorkloadGroup.json new file mode 100644 index 000000000000..a1d750fce517 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DeleteSqlPoolWorkloadGroup.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-6852", + "workspaceName": "sqlcrudtest-2080", + "sqlPoolName": "sqlcrudtest-9187", + "workloadGroupName": "wlm_workloadgroup", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DeleteSqlPoolWorkloadGroupWorkloadClassifer.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DeleteSqlPoolWorkloadGroupWorkloadClassifer.json new file mode 100644 index 000000000000..924ec95adf0a --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DeleteSqlPoolWorkloadGroupWorkloadClassifer.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-6852", + "workspaceName": "sqlcrudtest-2080", + "sqlPoolName": "sqlcrudtest-9187", + "workloadGroupName": "wlm_workloadgroup", + "workloadClassifierName": "wlm_workloadclassifier", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DeleteWorkspace.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DeleteWorkspace.json new file mode 100644 index 000000000000..3351c691c9ff --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DeleteWorkspace.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup1", + "workspaceName": "workspace1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "202": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup1/providers/Microsoft.Synapse/workspaces/workspace1", + "name": "workspace1", + "type": "Microsoft.Synapse/workspaces", + "location": "East US", + "properties": { + "defaultDataLakeStorage": { + "accountUrl": "https://accountname.dfs.core.windows.net", + "filesystem": "default" + }, + "connectivityEndpoints": { + "dev": "workspace1.dev.projectarcadia.net", + "sql": "workspace1.sql.projectarcadia.net" + }, + "sqlAdministratorLogin": "login", + "managedResourceGroupName": "resourceGroup2", + "provisioningState": "Deleting" + }, + "tags": { + "key": "value" + } + } + }, + "204": {}, + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup1/providers/Microsoft.Synapse/workspaces/workspace1", + "name": "workspace1", + "type": "Microsoft.Synapse/workspaces", + "location": "East US", + "properties": { + "defaultDataLakeStorage": { + "accountUrl": "https://accountname.dfs.core.windows.net", + "filesystem": "default" + }, + "connectivityEndpoints": { + "dev": "workspace1.dev.projectarcadia.net", + "sql": "workspace1.sql.projectarcadia.net" + }, + "sqlAdministratorLogin": "login", + "managedResourceGroupName": "resourceGroup2", + "provisioningState": "Deleting" + }, + "tags": { + "key": "value" + } + } + }, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DeleteWorkspaceAadAdmin.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DeleteWorkspaceAadAdmin.json new file mode 100644 index 000000000000..d5403daa5dec --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DeleteWorkspaceAadAdmin.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup1", + "workspaceName": "workspace1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": {}, + "204": {}, + "202": {}, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DeleteWorkspaceManagedSqlServerVulnerabilityAssessment.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DeleteWorkspaceManagedSqlServerVulnerabilityAssessment.json new file mode 100644 index 000000000000..6b656be9d6b2 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/DeleteWorkspaceManagedSqlServerVulnerabilityAssessment.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "wsg-7398", + "workspaceName": "testWorkspace", + "vulnerabilityAssessmentName": "default", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ExecuteSqlPoolVulnerabilityAssessmentScans.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ExecuteSqlPoolVulnerabilityAssessmentScans.json new file mode 100644 index 000000000000..e733910c1cab --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ExecuteSqlPoolVulnerabilityAssessmentScans.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityassessmenttest-4711", + "workspaceName": "vulnerabilityassessmenttest-6411", + "sqlPoolName": "testdb", + "vulnerabilityAssessmentName": "default", + "scanId": "scan01", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ExportSqlPoolVulnerabilityAssessmentScan.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ExportSqlPoolVulnerabilityAssessmentScan.json new file mode 100644 index 000000000000..d3f81d7e0f22 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ExportSqlPoolVulnerabilityAssessmentScan.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityassessmenttest-4799", + "workspaceName": "vulnerabilityassessmenttest-6440", + "sqlPoolName": "testdb", + "vulnerabilityAssessmentName": "default", + "scanId": "scan001", + "api-version": "2021-04-01-preview", + "parameters": {} + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityassessmenttest-4799/providers/Microsoft.Synapse/workspaces/vulnerabilityassessmenttest-6440/sqlPools/testdb/vulnerabilityAssessments/default/scans/scan001/export", + "name": "scan001", + "type": "Microsoft.Synapse/workspaces/sqlPools/vulnerabilityAssessments/scans/export", + "properties": { + "exportedReportLocation": "https://myaccount.blob.core.windows.net/vulnerabilityAssessment/vulnerabilityassessmenttest-6440/testdb/scan001.xlsx" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityassessmenttest-4799/providers/Microsoft.Synapse/workspaces/vulnerabilityassessmenttest-6440/sqlPools/testdb/vulnerabilityAssessments/default/scans/scan001/export", + "name": "scan001", + "type": "Microsoft.Synapse/workspaces/sqlPools/vulnerabilityAssessments/scans/export", + "properties": { + "exportedReportLocation": "https://myaccount.blob.core.windows.net/vulnerabilityAssessment/vulnerabilityassessmenttest-6440/testdb/scan001.xlsx" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ExtendedSqlPoolAzureMonitorAuditingCreateMin.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ExtendedSqlPoolAzureMonitorAuditingCreateMin.json new file mode 100644 index 000000000000..737f4318ad42 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ExtendedSqlPoolAzureMonitorAuditingCreateMin.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "blobauditingtest-4799", + "workspaceName": "blobauditingtest-6440", + "sqlPoolName": "testdb", + "blobAuditingPolicyName": "default", + "api-version": "2021-04-01-preview", + "parameters": { + "properties": { + "state": "Enabled", + "isAzureMonitorTargetEnabled": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Synapse/workspaces/blobauditingtest-6440/sqlPools/testdb", + "name": "default", + "type": "Microsoft.Synapse/workspaces/sqlPools/extendedAuditingSettings", + "properties": { + "state": "Enabled", + "isAzureMonitorTargetEnabled": true, + "retentionDays": 0, + "storageAccountSubscriptionId": "00000000-0000-0000-0000-000000000000", + "isStorageSecondaryKeyInUse": false, + "auditActionsAndGroups": [ + "SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP", + "FAILED_DATABASE_AUTHENTICATION_GROUP", + "BATCH_COMPLETED_GROUP" + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Synapse/workspaces/blobauditingtest-6440/sqlPools/testdb", + "name": "default", + "type": "Microsoft.Synapse/workspaces/sqlPools/extendedAuditingSettings", + "properties": { + "state": "Enabled", + "isAzureMonitorTargetEnabled": true, + "retentionDays": 0, + "storageAccountSubscriptionId": "00000000-0000-0000-0000-000000000000", + "isStorageSecondaryKeyInUse": false, + "auditActionsAndGroups": [ + "SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP", + "FAILED_DATABASE_AUTHENTICATION_GROUP", + "BATCH_COMPLETED_GROUP" + ] + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ExtendedSqlPoolBlobAuditingCreateMax.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ExtendedSqlPoolBlobAuditingCreateMax.json new file mode 100644 index 000000000000..3e291ffdf292 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ExtendedSqlPoolBlobAuditingCreateMax.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "blobauditingtest-4799", + "workspaceName": "blobauditingtest-6440", + "sqlPoolName": "testdb", + "blobAuditingPolicyName": "default", + "api-version": "2021-04-01-preview", + "parameters": { + "properties": { + "state": "Enabled", + "storageAccountAccessKey": "sdlfkjabc+sdlfkjsdlkfsjdfLDKFTERLKFDFKLjsdfksjdflsdkfD2342309432849328476458/3RSD==", + "storageEndpoint": "https://mystorage.blob.core.windows.net", + "retentionDays": 6, + "storageAccountSubscriptionId": "00000000-1234-0000-5678-000000000000", + "isStorageSecondaryKeyInUse": false, + "auditActionsAndGroups": [ + "DATABASE_LOGOUT_GROUP", + "DATABASE_ROLE_MEMBER_CHANGE_GROUP", + "UPDATE on database::TestDatabaseName by public" + ], + "predicateExpression": "statement = 'select 1'", + "isAzureMonitorTargetEnabled": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Synapse/workspaces/blobauditingtest-6440/sqlPools/testdb", + "name": "default", + "type": "Microsoft.Synapse/workspaces/sqlPools/extendedAuditingSettings", + "properties": { + "state": "Enabled", + "storageEndpoint": "https://mystorage.blob.core.windows.net", + "retentionDays": 0, + "storageAccountSubscriptionId": "00000000-1234-0000-5678-000000000000", + "isStorageSecondaryKeyInUse": false, + "auditActionsAndGroups": [ + "DATABASE_LOGOUT_GROUP", + "DATABASE_ROLE_MEMBER_CHANGE_GROUP", + "UPDATE on database::TestDatabaseName by public" + ], + "predicateExpression": "statement = 'select 1'", + "isAzureMonitorTargetEnabled": true + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Synapse/workspaces/blobauditingtest-6440/sqlPools/testdb", + "name": "default", + "type": "Microsoft.Synapse/workspaces/sqlPools/extendedAuditingSettings", + "properties": { + "state": "Enabled", + "storageEndpoint": "https://mystorage.blob.core.windows.net", + "retentionDays": 0, + "storageAccountSubscriptionId": "00000000-1234-0000-5678-000000000000", + "isStorageSecondaryKeyInUse": false, + "auditActionsAndGroups": [ + "DATABASE_LOGOUT_GROUP", + "DATABASE_ROLE_MEMBER_CHANGE_GROUP", + "UPDATE on database::TestDatabaseName by public" + ], + "predicateExpression": "statement = 'select 1'", + "isAzureMonitorTargetEnabled": true + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ExtendedSqlPoolBlobAuditingCreateMin.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ExtendedSqlPoolBlobAuditingCreateMin.json new file mode 100644 index 000000000000..bdf947587a7a --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ExtendedSqlPoolBlobAuditingCreateMin.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "blobauditingtest-4799", + "workspaceName": "blobauditingtest-6440", + "sqlPoolName": "testdb", + "blobAuditingPolicyName": "default", + "api-version": "2021-04-01-preview", + "parameters": { + "properties": { + "state": "Enabled", + "storageAccountAccessKey": "sdlfkjabc+sdlfkjsdlkfsjdfLDKFTERLKFDFKLjsdfksjdflsdkfD2342309432849328476458/3RSD==", + "storageEndpoint": "https://mystorage.blob.core.windows.net" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Synapse/workspaces/blobauditingtest-6440/sqlPools/testdb", + "name": "default", + "type": "Microsoft.Synapse/workspaces/sqlPools/extendedAuditingSettings", + "properties": { + "state": "Enabled", + "storageEndpoint": "https://mystorage.blob.core.windows.net", + "retentionDays": 0, + "storageAccountSubscriptionId": "00000000-0000-0000-0000-000000000000", + "isStorageSecondaryKeyInUse": false, + "auditActionsAndGroups": [ + "SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP", + "FAILED_DATABASE_AUTHENTICATION_GROUP", + "BATCH_COMPLETED_GROUP" + ], + "isAzureMonitorTargetEnabled": false + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Synapse/workspaces/blobauditingtest-6440/sqlPools/testdb", + "name": "default", + "type": "Microsoft.Synapse/workspaces/sqlPools/extendedAuditingSettings", + "properties": { + "state": "Enabled", + "storageEndpoint": "https://mystorage.blob.core.windows.net", + "retentionDays": 0, + "storageAccountSubscriptionId": "00000000-0000-0000-0000-000000000000", + "isStorageSecondaryKeyInUse": false, + "auditActionsAndGroups": [ + "SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP", + "FAILED_DATABASE_AUTHENTICATION_GROUP", + "BATCH_COMPLETED_GROUP" + ], + "isAzureMonitorTargetEnabled": false + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ExtendedSqlPoolBlobAuditingGet.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ExtendedSqlPoolBlobAuditingGet.json new file mode 100644 index 000000000000..ed8f3903c033 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ExtendedSqlPoolBlobAuditingGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "blobauditingtest-6852", + "workspaceName": "blobauditingtest-2080", + "sqlPoolName": "testdb", + "blobAuditingPolicyName": "default", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-6852/providers/Microsoft.Synapse/workspaces/blobauditingtest-2080/sqlPools/testdb", + "name": "default", + "type": "Microsoft.Synapse/workspaces/sqlPools/extendedAuditingSettings", + "properties": { + "state": "Disabled", + "storageEndpoint": "", + "retentionDays": 0, + "auditActionsAndGroups": [], + "storageAccountSubscriptionId": "00000000-0000-0000-0000-000000000000", + "isStorageSecondaryKeyInUse": false, + "predicateExpression": "statement = 'select 1'", + "isAzureMonitorTargetEnabled": false + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetAvailableOperations.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetAvailableOperations.json new file mode 100644 index 000000000000..6be8ee261ad6 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetAvailableOperations.json @@ -0,0 +1,1480 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": [ + { + "name": "Microsoft.Synapse/workspaces/integrationRuntimes/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Integration Runtimes.", + "operation": "Get Integration Runtime Operation result.", + "description": "Get any Integration Runtime." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/managedIdentitySqlControlSettings/write", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Managed Identity SQL Control Settings", + "operation": "Update Managed Identity SQL Control Settings", + "description": "Update Managed Identity SQL Control Settings on the workspace" + }, + "origin": "user" + }, + { + "name": "Microsoft.Synapse/workspaces/managedIdentitySqlControlSettings/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Managed Identity SQL Control Settings", + "operation": "Get Managed Identity SQL Control Settings", + "description": "Get Managed Identity SQL Control Settings" + }, + "origin": "user" + }, + { + "name": "Microsoft.Synapse/operations/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Available Operations", + "operation": "Read Available Operations.", + "description": "Read Available Operations from the Analytics 365 Resource Provider." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/integrationRuntimes/nodes/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Integration Runtimes.", + "operation": "Get Integration Runtime Node.", + "description": "Get any Integration Runtime Node." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/integrationRuntimes/nodes/delete", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Integration Runtimes.", + "operation": "Delete Integration Runtime Node.", + "description": "Delete any Integration Runtime Node." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/integrationRuntimes/nodes/write", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Integration Runtimes.", + "operation": "Patch Integration Runtime Node.", + "description": "Patch any Integration Runtime Node." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/integrationRuntimes/nodes/ipAddress/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Integration Runtimes.", + "operation": "Get Integration Runtime Ip Address", + "description": "Get Integration Runtime Ip Address" + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/integrationruntimes/write", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Integration Runtimes.", + "operation": "Create or Update Integration Runtimes.", + "description": "Create or Update any Integration Runtimes." + }, + "origin": "user" + }, + { + "name": "Microsoft.Synapse/workspaces/integrationRuntimes/delete", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Integration Runtimes.", + "operation": "Delete Integration Runtimes", + "description": "Delete any Integration Runtime" + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/integrationRuntimes/getStatus/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Integration Runtimes.", + "operation": "Get an Integration Runtime Status", + "description": "Get any Integration Runtime's Status" + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/integrationRuntimes/start/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Integration Runtimes.", + "operation": "Start an Integration Runtime", + "description": "Start any Integration Runtime" + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/integrationRuntimes/stop/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Integration Runtimes.", + "operation": "Stop an Integration Runtime", + "description": "Stop any Integration Runtime" + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/integrationRuntimes/getConnectionInfo/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Integration Runtimes.", + "operation": "Get Connection Info of an Integration Runtime", + "description": "Get Connection Info of any Integration Runtime" + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/integrationRuntimes/regenerateAuthKey/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Integration Runtimes.", + "operation": "Regenerate auth key of an Integration Runtime", + "description": "Regenerate auth key of any Integration Runtime" + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/integrationRuntimes/listAuthKeys/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Integration Runtimes.", + "operation": "List Auth Keys of an Integration Runtime", + "description": "List Auth Keys of any Integration Runtime" + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/integrationRuntimes/removeNode/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Integration Runtimes.", + "operation": "Remove an Integration Runtime node", + "description": "Remove any Integration Runtime node" + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/integrationRuntimes/monitoringData/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Integration Runtimes.", + "operation": "Get an Integration Runtime's monitoring data", + "description": "Get any Integration Runtime's monitoring data" + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/integrationRuntimes/syncCredentials/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Integration Runtimes.", + "operation": "Sync credential on an Integration Runtime", + "description": "Sync credential on any Integration Runtime" + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/integrationRuntimes/upgrade/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Integration Runtimes.", + "operation": "Upgrade an Integration Runtime", + "description": "Upgrade any Integration Runtime" + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/integrationRuntimes/removeLinks/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Integration Runtimes.", + "operation": "Remove an Integration Runtime link", + "description": "Remove any Integration Runtime link" + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/integrationRuntimes/enableInteractiveQuery/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Integration Runtimes.", + "operation": "Enable Interactive query on an Integration Runtime", + "description": "Enable Interactive query on any Integration Runtime" + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/integrationRuntimes/disableInteractiveQuery/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Integration Runtimes.", + "operation": "Disable Interactive query on an Integration Runtime", + "description": "Disable Interactive query on any Integration Runtime" + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/integrationRuntimes/refreshObjectMetadata/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Integration Runtimes.", + "operation": "Refresh Object metadata on an Intergration Runtime", + "description": "Refresh Object metadata on any Intergration Runtime" + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/integrationRuntimes/getObjectMetadata/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Integration Runtimes.", + "operation": "Get Object metadata on an Intergration Runtime", + "description": "Get Object metadata on any Intergration Runtime" + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/firewallRules/write", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "IP Firewall Rule.", + "operation": "Create or update IP Firewall Rule.", + "description": "Create or update any IP Firewall Rule." + }, + "origin": "user" + }, + { + "name": "Microsoft.Synapse/workspaces/firewallRules/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "IP Firewall Rule.", + "operation": "Read IP Firewall Rule", + "description": "Read IP Firewall Rule" + }, + "origin": "user" + }, + { + "name": "Microsoft.Synapse/workspaces/firewallRules/delete", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "IP Firewall Rule.", + "operation": "Delete IP Firewall Rule", + "description": "Delete any IP Firewall Rule." + }, + "origin": "user" + }, + { + "name": "Microsoft.Synapse/workspaces/replaceAllIpFirewallRules/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Workspaces", + "operation": "Replace all Ip Firewall Rules for the Workspace.", + "description": "Replaces all Ip Firewall Rules for the Workspace." + }, + "origin": "user" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/write", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pools", + "operation": "Create or Update SQL Analytics pools.", + "description": "Create or Update any SQL Analytics pools." + }, + "origin": "user" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pools", + "operation": "Read SQL Analytics pools.", + "description": "Read any SQL Analytics pools." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/dataWarehouseQueries/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Queries", + "operation": "Read SQL Analytics pool Queries.", + "description": "Read any SQL Analytics pool Queries." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/geoBackupPolicies/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Geo Backup Policies", + "operation": "Read SQL Analytics pool Geo Backup Policies.", + "description": "Read any SQL Analytics pool Geo Backup Policies." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/dataWarehouseUserActivities/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool User Activities", + "operation": "Read SQL Analytics pool User Activities.", + "description": "Read any SQL Analytics pool User Activities." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/restorePoints/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Restore Points", + "operation": "Read SQL Analytics pool Restore Points.", + "description": "Read any SQL Analytics pool Restore Points." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/dataWarehouseQueries/dataWarehouseQuerySteps/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Query Steps", + "operation": "Read SQL Analytics pool Query Steps.", + "description": "Read any SQL Analytics pool Query Steps." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/maintenanceWindows/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Maintenance Windows", + "operation": "Read SQL Analytics pool Maintenance Windows.", + "description": "Read any SQL Analytics pool Maintenance Windows." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/maintenanceWindowOptions/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Maintenance Window Options", + "operation": "Read SQL Analytics pool Maintenance Window Options.", + "description": "Read any SQL Analytics pool Maintenance Window Options." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/replicationLinks/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Replication Links", + "operation": "Read SQL Analytics pool Replication Links.", + "description": "Read any SQL Analytics pool Replication Links." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/transparentDataEncryption/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Transparent Data Encryption Configuration", + "operation": "Read SQL Analytics pool Transparent Data Encryption Configuration.", + "description": "Read any SQL Analytics pool Transparent Data Encryption Configuration." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/transparentDataEncryption/operationResults/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Transparent Data Encryption Configuration Operation Results", + "operation": "Read SQL Analytics pool Transparent Data Encryption Configuration Operation Results.", + "description": "Read any SQL Analytics pool Transparent Data Encryption Configuration Operation Results." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/auditingSettings/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Auditing Settings", + "operation": "Read SQL Analytics pool Auditing Settings.", + "description": "Read any SQL Analytics pool Auditing Settings." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/operations/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Operations", + "operation": "Read SQL Analytics pool Operations.", + "description": "Read any SQL Analytics pool Operations." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/usages/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Usages", + "operation": "Read SQL Analytics pool Usages.", + "description": "Read any SQL Analytics pool Usages." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/currentSensitivityLabels/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Current Sensitivity Labels", + "operation": "Read SQL Analytics pool Current Sensitivity Labels.", + "description": "Read any SQL Analytics pool Current Sensitivity Labels." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/recommendedSensitivityLabels/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Recommended Sensitivity Labels", + "operation": "Read SQL Analytics pool Recommended Sensitivity Labels.", + "description": "Read any SQL Analytics pool Recommended Sensitivity Labels." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/schemas/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Schemas", + "operation": "Read SQL Analytics pool Schemas.", + "description": "Read any SQL Analytics pool Schemas." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/schemas/tables/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Schema Tables", + "operation": "Read SQL Analytics pool Schema Tables.", + "description": "Read any SQL Analytics pool Schema Tables." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/schemas/tables/columns/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Schema Table Columns", + "operation": "Read SQL Analytics pool Schema Table Columns.", + "description": "Read any SQL Analytics pool Schema Table Columns." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/connectionPolicies/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Connection Policies", + "operation": "Read SQL Analytics pool Connection Policies.", + "description": "Read any SQL Analytics pool Connection Policies." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/vulnerabilityAssessments/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Vulnerability Assessment", + "operation": "Read SQL Analytics pool Vulnerability Assessment.", + "description": "Read any SQL Analytics pool Vulnerability Assessment." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/vulnerabilityAssessments/scans/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Vulnerability Assessment Scan Records", + "operation": "Read SQL Analytics pool Vulnerability Assessment Scan Records.", + "description": "Read any SQL Analytics pool Vulnerability Assessment Scan Records." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/securityAlertPolicies/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Security Alert Policies", + "operation": "Read Sql Analytics pool Threat Detection Policies.", + "description": "Read any Sql Analytics pool Threat Detection Policies." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/delete", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pools", + "operation": "Delete SQL Analytics pools.", + "description": "Delete any SQL Analytics pools." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/pause/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pools", + "operation": "Pause SQL Analytics pools.", + "description": "Pause any SQL Analytics pools." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/resume/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pools", + "operation": "Resume SQL Analytics pools.", + "description": "Resume any SQL Analytics pools." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/restorePoints/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Restore Points", + "operation": "Create SQL Analytics pool Restore Point.", + "description": "Create a SQL Analytics pool Restore Point." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/move/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pools", + "operation": "Rename SQL Analytics pools.", + "description": "Rename any SQL Analytics pools." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/schemas/tables/columns/sensitivityLabels/enable/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Sensitivity Labels", + "operation": "Enable SQL Analytics pool Sensitivity Labels.", + "description": "Enable any SQL Analytics pool Sensitivity Labels." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/schemas/tables/columns/sensitivityLabels/disable/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Sensitivity Labels", + "operation": "Disable SQL Analytics pool Sensitivity Labels.", + "description": "Disable any SQL Analytics pool Sensitivity Labels." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/vulnerabilityAssessments/scans/initiateScan/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Vulnerability Assessment Scan Records", + "operation": "Initiate SQL Analytics pool Vulnerability Assessment Scan Records.", + "description": "Initiate any SQL Analytics pool Vulnerability Assessment Scan Records." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/vulnerabilityAssessments/scans/export/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Vulnerability Assessment Scan Records", + "operation": "Export SQL Analytics pool Vulnerability Assessment Scan Records.", + "description": "Export any SQL Analytics pool Vulnerability Assessment Scan Records." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/maintenanceWindows/write", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Maintenance Windows", + "operation": "Create or Update SQL Analytics pool Maintenance Windows.", + "description": "Read any SQL Analytics pool Maintenance Windows." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/auditingSettings/write", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Auditing Settings", + "operation": "Create or Update SQL Analytics pool Auditing Settings.", + "description": "Create or Update any SQL Analytics pool Auditing Settings." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/schemas/tables/columns/sensitivityLabels/write", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Sensitivity Labels", + "operation": "Create or update SQL Analytics pool Sensitivity Labels.", + "description": "Create or Update any SQL Analytics pool Sensitivity Labels." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/transparentDataEncryption/write", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Transparent Data Encryption Configuration", + "operation": "Create or Update SQL Analytics pool Transparent Data Encryption Configuration.", + "description": "Create or Update any SQL Analytics pool Transparent Data Encryption Configuration." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/securityAlertPolicies/write", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Security Alert Policies", + "operation": "Create or Update SQL Analytics pool Threat Detection Policies.", + "description": "Create or Update any SQL Analytics pool Threat Detection Policies." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/vulnerabilityAssessments/rules/baselines/write", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Vulnerability Assessment Rule Baseline", + "operation": "Create or Update SQL Analytics pool Vulnerability Assessment Rule Baseline.", + "description": "Create or Update any SQL Analytics pool Vulnerability Assessment Rule Baseline." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/schemas/tables/columns/sensitivityLabels/delete", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Sensitivity Labels", + "operation": "Delete SQL Analytics pool Sensitivity Labels.2", + "description": "Delete any SQL Analytics pool Sensitivity Labels." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/vulnerabilityAssessments/delete", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Vulnerability Assessment", + "operation": "Delete SQL Analytics pool Vulnerability Assessment.", + "description": "Delete any SQL Analytics pool Vulnerability Assessment." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/vulnerabilityAssessments/rules/baselines/delete", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Vulnerability Assessment Rule Baseline", + "operation": "Delete SQL Analytics pool Vulnerability Assessment Rule Baseline.", + "description": "Delete any SQL Analytics pool Vulnerability Assessment Rule Baseline." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/operationStatus/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Async Operation Status.", + "operation": "Read Async Operation Status.", + "description": "Read any Async Operation Status." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/operationResults/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Async Operation Result", + "operation": "Read Async Operation Result.", + "description": "Read any Async Operation Result." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/operationResults/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Async Operation Result", + "operation": "Read Async Operation Result.", + "description": "Read any Async Operation Result." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/checkNameAvailability/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Check Name Availability", + "operation": "Checks Workspace name availability.", + "description": "Checks Workspace name availability." + }, + "origin": "user" + }, + { + "name": "Microsoft.Synapse/workspaces/bigDataPools/write", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Spark pools", + "operation": "Create or Update Spark pools.", + "description": "Create or Update any Spark pools." + }, + "origin": "user" + }, + { + "name": "Microsoft.Synapse/workspaces/bigDataPools/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Spark pools", + "operation": "Read Spark pools.", + "description": "Read any Spark pools." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/bigDataPools/delete", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Spark pools", + "operation": "Delete Spark pools.", + "description": "Delete any Spark pools." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/metadataSync/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Metadata Sync Config", + "operation": "Read SQL Analytics pool Metadata Sync Config", + "description": "Read SQL Analytics pool Metadata Sync Config" + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/metadataSync/write", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Metadata Sync Config", + "operation": "Create or Update SQL Analytics pool Metadata Sync Config", + "description": "Create or Update SQL Analytics pool Metadata Sync Config" + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/register/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Analytics 365 Resource Provider.", + "operation": "Registers the Analytics 365 Resource Provider.", + "description": "Registers the Analytics 365 Resource Provider and enables the creation of Workspaces." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/administrators/write", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Administrators", + "operation": "Set Active Directory Administrator", + "description": "Set Active Directory Administrator on the Workspace" + }, + "origin": "user" + }, + { + "name": "Microsoft.Synapse/workspaces/administrators/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Administrators", + "operation": "Get Workspace Active Directory Administrator", + "description": "Get Workspace Active Directory Administrator" + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/administrators/delete", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Administrators", + "operation": "Delete Workspace Active Directory Administrator", + "description": "Delete Workspace Active Directory Administrator" + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/write", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Workspaces", + "operation": "Create or Update Workspaces.", + "description": "Create or Update any Workspaces." + }, + "origin": "user" + }, + { + "name": "Microsoft.Synapse/workspaces/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Workspaces", + "operation": "Read Workspaces.", + "description": "Read any Workspaces." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/delete", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Workspaces", + "operation": "Delete Workspaces.", + "description": "Delete any Workspaces." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/privateEndpointConnectionProxies/validate/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Validate Private Endpoint Connection Proxy", + "operation": "Validates Private Endpoint Connection Proxy", + "description": "Validates Private Endpoint Connection Proxy" + }, + "origin": "system" + }, + { + "name": "Microsoft.Synapse/workspaces/privateEndpointConnectionProxies/write", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Private Endpoint Connection Proxy", + "operation": "Create or Update Private Endpoint Connection Proxy", + "description": "Create or Update Private Endpoint Connection Proxy" + }, + "origin": "system" + }, + { + "name": "Microsoft.Synapse/workspaces/privateEndpointConnectionProxies/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Private Endpoint Connection Proxy", + "operation": "Read Private Endpoint Connection Proxies", + "description": "Read any Private Endpoint Connection Proxy" + }, + "origin": "system" + }, + { + "name": "Microsoft.Synapse/workspaces/privateLinkResources/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Private Link Resources", + "operation": "Get Private Link Resources", + "description": "Get a list of Private Link Resources" + }, + "origin": "user" + }, + { + "name": "Microsoft.Synapse/workspaces/serverKeys/write", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Server Key", + "operation": "Creates or updates a server key", + "description": "Creates or updates a server key" + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/serverKeys/delete", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Server Key", + "operation": "Deletes the server key with the given name.", + "description": "Deletes the server key with the given name." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/extendedAuditingSettings/write", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Server Extended Auditing Settings", + "operation": "Create or Update SQL server extended auditing settings.", + "description": "Create or Update SQL server extended auditing settings." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/extendedAuditingSettings/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Server Extended Auditing Settings", + "operation": "Read SQL server extended auditing settings.", + "description": "Read SQL server extended auditing settings." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/auditingSettings/write", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Server Auditing Settings", + "operation": "Create or Update SQL server auditing settings.", + "description": "Create or Update SQL server auditing settings." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/auditingSettings/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Server Auditing Settings", + "operation": "Read SQL server auditing settings.", + "description": "Read SQL server auditing settings." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/securityAlertPolicies/write", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Server Security Alert Policy", + "operation": "Create or Update SQL server security alert policies.", + "description": "Create or Update SQL server security alert policies." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/securityAlertPolicies/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Server Security Alert Policy", + "operation": "Read SQL server security alert policies.", + "description": "Read SQL server security alert policies." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/vulnerabilityAssessments/write", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Server Vulnerability Assesment", + "operation": "Create or Update SQL server vulnerability assement report.", + "description": "Create or Update SQL server vulnerability assement report." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/vulnerabilityAssessments/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Server Vulnerability Assesment", + "operation": "Read SQL server vulnerability assement report.", + "description": "Read SQL server vulnerability assement report." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/vulnerabilityAssessments/delete", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Server Vulnerability Assesment", + "operation": "Delete SQL server vulnerability assement report.", + "description": "Delete SQL server vulnerability assement report." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/encryptionProtector/write", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Server Encryption Protector", + "operation": "Update the properties for the specified Server Encryption Protector.", + "description": "Update the properties for the specified Server Encryption Protector." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/encryptionProtector/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Server Encryption Protector", + "operation": "Returns a list of server encryption protectors or gets the properties for the specified server encryption protector.", + "description": "Returns a list of server encryption protectors or gets the properties for the specified server encryption protector." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/encryptionProtector/revalidate/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Server Encryption Protector", + "operation": "Revalidates an existing encryption protector.", + "description": "Revalidates an existing encryption protector." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/providers/Microsoft.Insights/metricDefinitions/read", + "isDataAction": null, + "display": { + "provider": "Microsoft Azure Synapse Analytics", + "resource": "Workspace", + "operation": "Read workspace metric definitions", + "description": "Gets the available metrics for workspace" + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "metricSpecifications": [ + { + "name": "PipelineFailedRuns", + "displayName": "Failed pipeline runs", + "displayDescription": null, + "unit": "Count", + "aggregationType": "Total", + "sourceMdmAccount": "MicrosoftDataFactoryProdShoebox", + "sourceMdmNamespace": "ADFMetrics", + "dimensions": [ + { + "name": "FailureType", + "displayName": "Failure Type", + "toBeExportedForShoebox": true + }, + { + "name": "Name", + "displayName": "Pipeline", + "toBeExportedForShoebox": true + } + ] + }, + { + "name": "PipelineSucceededRuns", + "displayName": "Succeeded pipeline runs", + "displayDescription": null, + "unit": "Count", + "aggregationType": "Total", + "sourceMdmAccount": "MicrosoftDataFactoryProdShoebox", + "sourceMdmNamespace": "ADFMetrics", + "dimensions": [ + { + "name": "FailureType", + "displayName": "Failure Type", + "toBeExportedForShoebox": true + }, + { + "name": "Name", + "displayName": "Pipeline", + "toBeExportedForShoebox": true + } + ] + }, + { + "name": "PipelineCancelledRuns", + "displayName": "Cancelled pipeline runs", + "displayDescription": null, + "unit": "Count", + "aggregationType": "Total", + "sourceMdmAccount": "MicrosoftDataFactoryProdShoebox", + "sourceMdmNamespace": "ADFMetrics", + "dimensions": [ + { + "name": "FailureType", + "displayName": "Failure Type", + "toBeExportedForShoebox": true + }, + { + "name": "Name", + "displayName": "Pipeline", + "toBeExportedForShoebox": true + } + ] + }, + { + "name": "ActivityFailedRuns", + "displayName": "Failed activity runs", + "displayDescription": null, + "unit": "Count", + "aggregationType": "Total", + "sourceMdmAccount": "MicrosoftDataFactoryProdShoebox", + "sourceMdmNamespace": "ADFMetrics", + "dimensions": [ + { + "name": "ActivityType", + "displayName": "Activity Type", + "toBeExportedForShoebox": true + }, + { + "name": "PipelineName", + "displayName": "Pipeline", + "toBeExportedForShoebox": true + }, + { + "name": "FailureType", + "displayName": "Failure Type", + "toBeExportedForShoebox": true + }, + { + "name": "Name", + "displayName": "Activity", + "toBeExportedForShoebox": true + } + ] + }, + { + "name": "ActivitySucceededRuns", + "displayName": "Succeeded activity runs", + "displayDescription": null, + "unit": "Count", + "aggregationType": "Total", + "sourceMdmAccount": "MicrosoftDataFactoryProdShoebox", + "sourceMdmNamespace": "ADFMetrics", + "dimensions": [ + { + "name": "ActivityType", + "displayName": "Activity Type", + "toBeExportedForShoebox": true + }, + { + "name": "PipelineName", + "displayName": "Pipeline", + "toBeExportedForShoebox": true + }, + { + "name": "FailureType", + "displayName": "Failure Type", + "toBeExportedForShoebox": true + }, + { + "name": "Name", + "displayName": "Activity", + "toBeExportedForShoebox": true + } + ] + }, + { + "name": "ActivityCancelledRuns", + "displayName": "Cancelled activity runs", + "displayDescription": null, + "unit": "Count", + "aggregationType": "Total", + "sourceMdmAccount": "MicrosoftDataFactoryProdShoebox", + "sourceMdmNamespace": "ADFMetrics", + "dimensions": [ + { + "name": "ActivityType", + "displayName": "Activity Type", + "toBeExportedForShoebox": true + }, + { + "name": "PipelineName", + "displayName": "Pipeline", + "toBeExportedForShoebox": true + }, + { + "name": "FailureType", + "displayName": "Failure Type", + "toBeExportedForShoebox": true + }, + { + "name": "Name", + "displayName": "Activity", + "toBeExportedForShoebox": true + } + ] + }, + { + "name": "TriggerFailedRuns", + "displayName": "Failed trigger runs", + "displayDescription": null, + "unit": "Count", + "aggregationType": "Total", + "sourceMdmAccount": "MicrosoftDataFactoryProdShoebox", + "sourceMdmNamespace": "ADFMetrics", + "dimensions": [ + { + "name": "Name", + "displayName": "Trigger", + "toBeExportedForShoebox": true + }, + { + "name": "FailureType", + "displayName": "Failure Type", + "toBeExportedForShoebox": true + } + ] + }, + { + "name": "TriggerSucceededRuns", + "displayName": "Succeeded trigger runs", + "displayDescription": null, + "unit": "Count", + "aggregationType": "Total", + "sourceMdmAccount": "MicrosoftDataFactoryProdShoebox", + "sourceMdmNamespace": "ADFMetrics", + "dimensions": [ + { + "name": "Name", + "displayName": "Trigger", + "toBeExportedForShoebox": true + }, + { + "name": "FailureType", + "displayName": "Failure Type", + "toBeExportedForShoebox": true + } + ] + }, + { + "name": "TriggerCancelledRuns", + "displayName": "Cancelled trigger runs", + "displayDescription": null, + "unit": "Count", + "aggregationType": "Total", + "sourceMdmAccount": "MicrosoftDataFactoryProdShoebox", + "sourceMdmNamespace": "ADFMetrics", + "dimensions": [ + { + "name": "Name", + "displayName": "Trigger", + "toBeExportedForShoebox": true + }, + { + "name": "FailureType", + "displayName": "Failure Type", + "toBeExportedForShoebox": true + } + ] + } + ] + } + } + }, + { + "name": "Microsoft.Synapse/workspaces/providers/Microsoft.Insights/diagnosticSettings/read", + "isDataAction": null, + "display": { + "provider": "Microsoft Azure Synapse Analytics", + "resource": "Workspace", + "operation": "Read diagnostic setting", + "description": "Gets the diagnostic setting for the resource" + }, + "origin": "system" + }, + { + "name": "Microsoft.Synapse/workspaces/providers/Microsoft.Insights/diagnosticSettings/write", + "isDataAction": null, + "display": { + "provider": "Microsoft Azure Synapse Analytics", + "resource": "Workspace", + "operation": "Write diagnostic setting", + "description": "Creates or updates the diagnostic setting for the resource" + }, + "origin": "system" + }, + { + "name": "Microsoft.Synapse/workspaces/providers/Microsoft.Insights/logDefinitions/read", + "isDataAction": null, + "display": { + "provider": "Microsoft Azure Synapse Analytics", + "resource": "The log definition of workspace", + "operation": "Read workspace log definitions", + "description": "Gets the available logs for workspace" + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "logSpecifications": [ + { + "name": "ActivityRuns", + "displayName": "Activity runs", + "blobDuration": "PT1H" + }, + { + "name": "PipelineRuns", + "displayName": "Pipeline runs", + "blobDuration": "PT1H" + }, + { + "name": "TriggerRuns", + "displayName": "Trigger runs", + "blobDuration": "PT1H" + } + ] + } + } + }, + { + "name": "Microsoft.Synapse/workspaces/recoverableSqlPools/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Recoverable Sql Analytics Pools", + "operation": "Gets recoverable SQL Analytics Pools.", + "description": "Gets recoverable SQL Analytics Pools, which are the resources representing geo backups of SQL Analytics Pools." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlUsages/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Usages", + "operation": "Gets usage limits available for SQL Analytics Pools.", + "description": "Gets usage limits available for SQL Analytics Pools." + }, + "origin": "user, system" + } + ] + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetAzureAsyncOperationHeader.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetAzureAsyncOperationHeader.json new file mode 100644 index 000000000000..bab6f44f30d3 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetAzureAsyncOperationHeader.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup1", + "workspaceName": "workspace1", + "operationId": "01234567-89ab-4def-0123-456789abcdef", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "status": "InProgress" + } + }, + "404": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetBigDataPool.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetBigDataPool.json new file mode 100644 index 000000000000..f73ff094ace5 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetBigDataPool.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "bigDataPoolName": "ExamplePool", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/bigDataPools/ExamplePool", + "type": "Microsoft.Synapse/workspaces/bigDataPools", + "location": "West US 2", + "name": "ExamplePool", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "sparkVersion": "2.4", + "nodeCount": 4, + "nodeSize": "Medium", + "nodeSizeFamily": "MemoryOptimized", + "autoScale": { + "enabled": true, + "minNodeCount": 3, + "maxNodeCount": 50 + }, + "autoPause": { + "enabled": true, + "delayInMinutes": 15 + }, + "creationDate": "1970-01-01T00:00:00Z", + "sparkEventsFolder": "/events", + "libraryRequirements": { + "time": "1970-01-01T00:00:00Z", + "content": "", + "filename": "requirements.txt" + }, + "defaultSparkLogFolder": "/logs" + } + } + }, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetIpFirewallRule.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetIpFirewallRule.json new file mode 100644 index 000000000000..c6825cb54ab4 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetIpFirewallRule.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "ruleName": "ExampleIpFirewallRule", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/firewallRules/ExampleIpFirewallRule", + "type": "Microsoft.Synapse/workspaces/firewallRules", + "name": "ExampleIpFirewallRule", + "properties": { + "startIpAddress": "10.0.0.0", + "endIpAddress": "10.0.0.254", + "provisioningState": "Succeeded" + } + } + }, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetKey.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetKey.json new file mode 100644 index 000000000000..060a25ae3d92 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetKey.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "keyName": "somekey", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/keys/somekey", + "name": "somekey", + "type": "Microsoft.Synapse/workspaces/keys", + "properties": { + "isActiveCMK": true, + "keyVaultUrl": "https://vault.azure.net/keys/key1" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetLocationHeader.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetLocationHeader.json new file mode 100644 index 000000000000..50a4db524a11 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetLocationHeader.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup1", + "workspaceName": "workspace1", + "operationId": "01234567-89ab-4def-0123-456789abcdef", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": {}, + "201": {}, + "202": {}, + "204": {}, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetLocationHeaderResultWithSqlPool.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetLocationHeaderResultWithSqlPool.json new file mode 100644 index 000000000000..9ec906047684 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetLocationHeaderResultWithSqlPool.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "sqlPoolName": "ExampleSqlPool", + "operationId": "fedcba98-7654-4210-fedc-ba9876543210", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": {} + }, + "202": { + "body": {} + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetMaintenanceWindowOptions.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetMaintenanceWindowOptions.json new file mode 100644 index 000000000000..dfdf9149e8cf --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetMaintenanceWindowOptions.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "samplerg", + "workspaceName": "testworkspace", + "sqlPoolName": "testsp", + "maintenanceWindowOptionsName": "current", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "isEnabled": true, + "maintenanceWindowCycles": [ + { + "dayOfWeek": "Saturday", + "startTime": "00:00:00", + "duration": "PT60M" + } + ], + "minDurationInMinutes": 60, + "defaultDurationInMinutes": 120, + "minCycles": 2, + "timeGranularityInMinutes": 5, + "allowMultipleMaintenanceWindowsPerCycle": true + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/samplerg/providers/Microsoft.Synapse/workspaces/testworkspace/sqlPools/testsp/maintenanceWindowOptions/current", + "name": "current", + "type": "Microsoft.Synapse/workspaces/sqlPools/maintenanceWindowOptions" + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetMaintenanceWindows.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetMaintenanceWindows.json new file mode 100644 index 000000000000..e58c9ff21ca2 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetMaintenanceWindows.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "samplerg", + "workspaceName": "testworkspace", + "sqlPoolName": "testsp", + "maintenanceWindowName": "current", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "timeRanges": [ + { + "dayOfWeek": "Saturday", + "startTime": "00:00:00", + "duration": "PT60M" + } + ] + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/samplerg/providers/Microsoft.Synapse/workspaces/testworkspace/sqlPools/testsp/maintenancewindows/current", + "name": "current", + "type": "Microsoft.Synapse/workspaces/sqlPools/maintenancewindows" + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetManagedIdentitySqlControlSettings.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetManagedIdentitySqlControlSettings.json new file mode 100644 index 000000000000..c9124f08b215 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetManagedIdentitySqlControlSettings.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup1", + "workspaceName": "workspace1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup1/providers/Microsoft.Synapse/workspaces/workspace1/managedIdentitySqlControlSettings/default", + "name": "default", + "properties": { + "grantSqlControlToManagedIdentity": { + "desiredState": "Enabled", + "actualState": "Enabled" + } + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetPrivateEndpointConnection.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetPrivateEndpointConnection.json new file mode 100644 index 000000000000..f616d5b010f2 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetPrivateEndpointConnection.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "privateEndpointConnectionName": "ExamplePrivateEndpointConnection", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/privateEndpointConnections/ExamplePrivateEndpointConnection", + "name": "sql", + "type": "Microsoft.Synapse/workspaces/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Network/privateEndpoints/ExamplePrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + }, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetPrivateLinkHub.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetPrivateLinkHub.json new file mode 100644 index 000000000000..de2729df6891 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetPrivateLinkHub.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup1", + "privateLinkHubName": "privateLinkHub1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup1/providers/Microsoft.Synapse/privateLinkHubs/privateLinkHub1", + "name": "privateLinkHub1", + "type": "Microsoft.Synapse/privateLinkHubs", + "location": "East US", + "properties": { + "provisioningState": "Succeeded" + }, + "tags": { + "key": "value" + } + } + }, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetPrivateLinkHubPrivateLinkResource.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetPrivateLinkHubPrivateLinkResource.json new file mode 100644 index 000000000000..880b14879cdb --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetPrivateLinkHubPrivateLinkResource.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "privateLinkHubName": "ExamplePrivateLinkHub", + "privateLinkResourceName": "sql", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/privateLinkHubs/ExamplePrivateLinkHub/privateLinkResources/sql", + "name": "sql", + "type": "Microsoft.Synapse/privateLinkHubs/privateLinkResources", + "properties": { + "groupId": "sql", + "requiredMembers": [ + "sql" + ], + "requiredZoneNames": [ + "privatelink.sql.azuresynapse.net" + ] + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetPrivateLinkResource.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetPrivateLinkResource.json new file mode 100644 index 000000000000..80f061737aaf --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetPrivateLinkResource.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "privateLinkResourceName": "sql", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/privateLinkResources/sql", + "name": "sql", + "type": "Microsoft.Synapse/workspaces/privateLinkResources", + "properties": { + "groupId": "sql", + "requiredMembers": [ + "sql" + ], + "requiredZoneNames": [ + "privatelink.sql.azuresynapse.net" + ] + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetSqlPool.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetSqlPool.json new file mode 100644 index 000000000000..d89afb2c62e2 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetSqlPool.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-6852", + "workspaceName": "sqlcrudtest-2080", + "sqlPoolName": "sqlcrudtest-9187", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "tags": { + "tagKey1": "TagValue1" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Synapse/workspaces/sqlcrudtest-2080/sqlPools/sqlcrudtest-9187", + "name": "sqlcrudtest-9187", + "type": "Microsoft.Synapse/workspaces/sqlPools", + "location": "Japan East", + "properties": { + "status": "Online", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 268435456000, + "creationDate": "2017-02-10T00:56:19.2Z", + "provisioningState": "Succeeded", + "restorePointInTime": "0001-01-01T00:00:00Z", + "storageAccountType": "GRS" + }, + "sku": { + "name": "DW100c" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetSqlPoolBlobAuditing.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetSqlPoolBlobAuditing.json new file mode 100644 index 000000000000..c57dd9f2fc0a --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetSqlPoolBlobAuditing.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "blobauditingtest-6852", + "workspaceName": "blobauditingtest-2080", + "sqlPoolName": "testdb", + "blobAuditingPolicyName": "default", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-6852/providers/Microsoft.Synapse/workspaces/blobauditingtest-2080/sqlPools/testdb", + "name": "default", + "type": "Microsoft.Synapse/workspaces/sqlPools/auditingSettings", + "kind": "V12", + "properties": { + "state": "Disabled", + "storageEndpoint": "", + "retentionDays": 0, + "auditActionsAndGroups": [], + "storageAccountSubscriptionId": "00000000-0000-0000-0000-000000000000", + "isStorageSecondaryKeyInUse": false, + "isAzureMonitorTargetEnabled": false + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetSqlPoolColumnSensitivityLabelGet.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetSqlPoolColumnSensitivityLabelGet.json new file mode 100644 index 000000000000..b42ae6361951 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetSqlPoolColumnSensitivityLabelGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "workspaceName": "myServer", + "sqlPoolName": "myDatabase", + "schemaName": "dbo", + "tableName": "myTable", + "columnName": "myColumn", + "sensitivityLabelSource": "current", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Synapse/workspaces/myServer/sqlPools/myDatabase/schemas/dbo/tables/myTable/columns/myColumn/sensitivityLabels/current", + "name": "current", + "type": "Microsoft.Synapse/workspaces/sqlPools/schemas/tables/columns/sensitivityLabels", + "properties": { + "informationType": "PhoneNumber", + "informationTypeId": "d22fa6e9-5ee4-3bde-4c2b-a409604c4646", + "labelId": "bf91e08c-f4f0-478a-b016-25164b2a65ff", + "labelName": "PII" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetSqlPoolConnectionPolicy.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetSqlPoolConnectionPolicy.json new file mode 100644 index 000000000000..41497c50b24b --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetSqlPoolConnectionPolicy.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "blobauditingtest-6852", + "workspaceName": "blobauditingtest-2080", + "sqlPoolName": "testdb", + "connectionPolicyName": "default", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-6852/providers/Microsoft.Synapse/workspaces/blobauditingtest-2080/sqlPools/testdb/connectionPolicies/default", + "name": "default", + "type": "Microsoft.Synapse/workspaces/sqlPools/connectionPolicies", + "location": "West US", + "kind": null, + "properties": { + "securityEnabledAccess": "Optional", + "proxyDnsName": "blobauditingtest-2080.database.secure.windows.net", + "proxyPort": "1433", + "visibility": "Visible", + "useServerDefault": "Enabled", + "redirectionState": "Disabled", + "state": "New" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetSqlPoolGeoBackupPolicy.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetSqlPoolGeoBackupPolicy.json new file mode 100644 index 000000000000..22f33b1ac50c --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetSqlPoolGeoBackupPolicy.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-4799", + "workspaceName": "sqlcrudtest-5961", + "sqlPoolName": "testdw", + "geoBackupPolicyName": "Default", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-4799/providers/Microsoft.Synapse/workspaces/sqlcrudtest-5961/sqlPools/testdw/geoBackupPolicies/Default", + "name": "Default", + "type": "Microsoft.Synapse/workspaces/sqlPools/geoBackupPolicies", + "location": "Central US", + "kind": null, + "properties": { + "state": "Enabled", + "storageType": "Premium" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetSqlPoolMetadataSyncConfig.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetSqlPoolMetadataSyncConfig.json new file mode 100644 index 000000000000..f0405f7d781b --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetSqlPoolMetadataSyncConfig.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "sqlPoolName": "ExampleSqlPool", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/bigDataPools/ExamplePool/metadataSync/config", + "type": "Microsoft.Synapse/workspaces/bigDataPools/metadataSync/config", + "name": "config", + "properties": { + "enabled": true + } + } + }, + "404": {}, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetSqlPoolSecurityAlert.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetSqlPoolSecurityAlert.json new file mode 100644 index 000000000000..60c0e9f87809 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetSqlPoolSecurityAlert.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "securityalert-6852", + "workspaceName": "securityalert-2080", + "sqlPoolName": "testdb", + "securityAlertPolicyName": "default", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/securityalert-6852/providers/Microsoft.Synapse/workspaces/securityalert-2080/sqlPools/testdb", + "name": "default", + "type": "Microsoft.Synapse/workspaces/sqlPools/securityAlertPolicies", + "properties": { + "state": "Enabled", + "emailAccountAdmins": true, + "emailAddresses": [ + "test@microsoft.com", + "user@microsoft.com" + ], + "disabledAlerts": [ + "Usage_Anomaly" + ], + "retentionDays": 0, + "storageAccountAccessKey": "", + "creationTime": "2018-10-08T00:00:00Z" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetSqlPoolTransparentDataEncryption.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetSqlPoolTransparentDataEncryption.json new file mode 100644 index 000000000000..9559710bcc90 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetSqlPoolTransparentDataEncryption.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-6852", + "workspaceName": "sqlcrudtest-2080", + "sqlPoolName": "sqlcrudtest-9187", + "transparentDataEncryptionName": "current", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "name": "current", + "location": "North Europe", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Synapse/workspaces/sqlcrudtest-2080/sqlPools/sqlcrudtest-9187/transparentDataEncryption/current", + "type": "Microsoft.Synapse/workspaces/sqlPools/transparentDataEncryption", + "properties": { + "status": "Enabled" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetSqlPoolTransparentDataEncryptionList.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetSqlPoolTransparentDataEncryptionList.json new file mode 100644 index 000000000000..a6a019180482 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetSqlPoolTransparentDataEncryptionList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-6852", + "workspaceName": "sqlcrudtest-2080", + "sqlPoolName": "sqlcrudtest-9187", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "current", + "location": "North Europe", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Synapse/workspaces/sqlcrudtest-2080/sqlPools/sqlcrudtest-9187/transparentDataEncryption/current", + "type": "Microsoft.Synapse/workspaces/sqlPools/transparentDataEncryption", + "properties": { + "status": "Enabled" + } + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetSqlPoolUserActivity.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetSqlPoolUserActivity.json new file mode 100644 index 000000000000..c4495ada05ba --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetSqlPoolUserActivity.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "workspaceName": "testsvr", + "sqlPoolName": "testdb", + "api-version": "2021-04-01-preview", + "dataWarehouseUserActivityName": "current" + }, + "responses": { + "200": { + "body": { + "properties": { + "activeQueriesCount": 0 + }, + "id": "subscriptions/326affc3-21f4-4471-a545-e37430b70113/resourceGroups/Default-SQL-Onebox/providers/Microsoft.Synapse/workspaces/testsvr/sqlPools/dwdb01/dataWarehouseUserActivities/current", + "name": "current", + "type": "Microsoft.Synapse/workspaces/sqlPools/dataWarehouseUserActivities" + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetSqlPoolVulnerabilityAssessment.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetSqlPoolVulnerabilityAssessment.json new file mode 100644 index 000000000000..599e23f42f76 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetSqlPoolVulnerabilityAssessment.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityaseessmenttest-4799", + "workspaceName": "vulnerabilityaseessmenttest-6440", + "sqlPoolName": "testdb", + "vulnerabilityAssessmentName": "default", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Synapse/workspaces/vulnerabilityaseessmenttest-6440/sqlPools/testdb/vulnerabilityAssessments/default", + "name": "default", + "type": "Microsoft.Synapse/workspaces/sqlPools/vulnerabilityAssessments", + "properties": { + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": true, + "emails": [ + "email1@mail.com", + "email2@mail.com" + ] + } + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetSqlPoolWorkloadGroup.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetSqlPoolWorkloadGroup.json new file mode 100644 index 000000000000..e6594ece66be --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetSqlPoolWorkloadGroup.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-6852", + "workspaceName": "sqlcrudtest-2080", + "sqlPoolName": "sqlcrudtest-9187", + "workloadGroupName": "smallrc", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "minResourcePercent": 0, + "maxResourcePercent": 100, + "minResourcePercentPerRequest": 3.0, + "maxResourcePercentPerRequest": 3.0, + "importance": "normal", + "queryExecutionTimeout": 0 + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Synapse/workspaces/sqlcrudtest-2080/sqlPools/sqlcrudtest-9187/workloadGroups/smallrc", + "name": "smallrc", + "type": "Microsoft.Synapse/workspaces/sqlPools/workloadGroups" + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetSqlPoolWorkloadGroupList.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetSqlPoolWorkloadGroupList.json new file mode 100644 index 000000000000..f18293c20aca --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetSqlPoolWorkloadGroupList.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-6852", + "workspaceName": "sqlcrudtest-2080", + "sqlPoolName": "sqlcrudtest-9187", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "minResourcePercent": 0, + "maxResourcePercent": 100, + "minResourcePercentPerRequest": 5, + "maxResourcePercentPerRequest": 5, + "importance": "normal", + "queryExecutionTimeout": 0 + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Synapse/workspaces/sqlcrudtest-2080/sqlPools/sqlcrudtest-9187/workloadGroups/smallrc", + "name": "smallrc", + "type": "Microsoft.Synapse/workspaces/sqlPools/workloadGroups" + }, + { + "properties": { + "minResourcePercent": 0, + "maxResourcePercent": 100, + "minResourcePercentPerRequest": 10, + "maxResourcePercentPerRequest": 10, + "importance": "normal", + "queryExecutionTimeout": 0 + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Synapse/workspaces/sqlcrudtest-2080/sqlPools/sqlcrudtest-9187/workloadGroups/mediumrc", + "name": "mediumrc", + "type": "Microsoft.Synapse/workspaces/sqlPools/workloadGroups" + }, + { + "properties": { + "minResourcePercent": 0, + "maxResourcePercent": 100, + "minResourcePercentPerRequest": 20, + "maxResourcePercentPerRequest": 20, + "importance": "high", + "queryExecutionTimeout": 0 + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Synapse/workspaces/sqlcrudtest-2080/sqlPools/sqlcrudtest-9187/workloadGroups/largerc", + "name": "largerc", + "type": "Microsoft.Synapse/workspaces/sqlPools/workloadGroups" + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetSqlPoolWorkloadGroupWorkloadClassifier.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetSqlPoolWorkloadGroupWorkloadClassifier.json new file mode 100644 index 000000000000..28b330792544 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetSqlPoolWorkloadGroupWorkloadClassifier.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-6852", + "workspaceName": "sqlcrudtest-2080", + "sqlPoolName": "sqlcrudtest-9187", + "workloadGroupName": "wlm_workloadgroup", + "workloadClassifierName": "wlm_classifier", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "memberName": "dbo", + "label": "test_label", + "context": "test_context", + "startTime": "12:00", + "endTime": "14:00", + "importance": "high" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Synapse/workspaces/sqlcrudtest-2080/sqlPools/sqlcrudtest-9187/workloadGroups/wlm_workloadgroup/workloadClassifiers/wlm_classifier", + "name": "wlm_classifier", + "type": "Microsoft.Synapse/workspaces/sqlPools/workloadGroups/workloadClassifiers" + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetSqlPoolWorkloadGroupWorkloadClassifierList.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetSqlPoolWorkloadGroupWorkloadClassifierList.json new file mode 100644 index 000000000000..b3c7663b7754 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetSqlPoolWorkloadGroupWorkloadClassifierList.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-6852", + "workspaceName": "sqlcrudtest-2080", + "sqlPoolName": "sqlcrudtest-9187", + "workloadGroupName": "wlm_workloadgroup", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "memberName": "dbo", + "label": "", + "context": "", + "startTime": "", + "endTime": "", + "importance": "high" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Synapse/workspaces/sqlcrudtest-2080/sqlPools/sqlcrudtest-9187/workloadGroups/wlm_workloadgroup/workloadClassifiers/classifier3", + "name": "classifier3", + "type": "Microsoft.Synapse/workspaces/sqlPools/workloadGroups/workloadClassifiers" + }, + { + "properties": { + "memberName": "dbo", + "label": "test_label", + "context": "test_context", + "startTime": "12:00", + "endTime": "14:00", + "importance": "high" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Synapse/workspaces/sqlcrudtest-2080/sqlPools/sqlcrudtest-9187/workloadGroups/wlm_workloadgroup/workloadClassifiers/classifier1", + "name": "classifier1", + "type": "Microsoft.Synapse/workspaces/sqlPools/workloadGroups/workloadClassifiers" + }, + { + "properties": { + "memberName": "dbo", + "label": "", + "context": "", + "startTime": "11:00", + "endTime": "17:00", + "importance": "high" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Synapse/workspaces/sqlcrudtest-2080/sqlPools/sqlcrudtest-9187/workloadGroups/wlm_workloadgroup/workloadClassifiers/classifier2", + "name": "classifier2", + "type": "Microsoft.Synapse/workspaces/sqlPools/workloadGroups/workloadClassifiers" + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetWorkspace.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetWorkspace.json new file mode 100644 index 000000000000..256146261cd1 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetWorkspace.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup1", + "workspaceName": "workspace1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup1/providers/Microsoft.Synapse/workspaces/workspace1", + "name": "workspace1", + "type": "Microsoft.Synapse/workspaces", + "location": "East US", + "properties": { + "defaultDataLakeStorage": { + "accountUrl": "https://accountname.dfs.core.windows.net", + "filesystem": "default" + }, + "connectivityEndpoints": { + "dev": "workspace1.dev.projectarcadia.net", + "sql": "workspace1.sql.projectarcadia.net" + }, + "managedVirtualNetworkSettings": { + "preventDataExfiltration": false, + "linkedAccessCheckOnTargetResource": false, + "allowedAadTenantIdsForLinking": [ + "740239CE-A25B-485B-86A0-262F29F6EBDB" + ] + }, + "purviewConfiguration": { + "purviewResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup1/providers/Microsoft.ProjectPurview/accounts/accountname1" + }, + "sqlAdministratorLogin": "login", + "managedResourceGroupName": "resourceGroup2", + "workspaceRepositoryConfiguration": { + "type": "FactoryGitHubConfiguration", + "hostName": "", + "accountName": "myGithubAccount", + "projectName": "myProject", + "repositoryName": "myRepository", + "collaborationBranch": "master", + "rootFolder": "/" + }, + "provisioningState": "Succeeded", + "privateEndpointConnections": [ + { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/privateEndpointConnections/ExamplePrivateEndpointConnection", + "name": "sql", + "type": "Microsoft.Synapse/workspaces/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Network/privateEndpoints/ExamplePrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ], + "workspaceUID": "999b999q-b888-4b44-bacd-2c222cc2222d", + "extraProperties": { + "IsScopeEnabled": "false", + "WorkspaceType": "Normal" + } + }, + "tags": { + "key": "value" + } + } + }, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetWorkspaceAadAdmin.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetWorkspaceAadAdmin.json new file mode 100644 index 000000000000..f7ee8b1c8903 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetWorkspaceAadAdmin.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup1", + "workspaceName": "workspace1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup1/providers/Microsoft.Synapse/workspaces/workspace1/administrators/activeDirectory", + "name": "activeDirectory", + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "tenantId": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetWorkspaceManagedSqlExtendedServerBlobAuditingSettings.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetWorkspaceManagedSqlExtendedServerBlobAuditingSettings.json new file mode 100644 index 000000000000..32ecd02984ef --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetWorkspaceManagedSqlExtendedServerBlobAuditingSettings.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "wsg-7398", + "workspaceName": "testWorkspace", + "blobAuditingPolicyName": "default", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/wsg-7398/providers/Microsoft.Synapse/workspaces/testWorkspace/extendedAuditingSettings/default", + "name": "default", + "type": "Microsoft.Synapse/workspaces/extendedAuditingSettings", + "properties": { + "state": "Disabled", + "storageEndpoint": "", + "retentionDays": 0, + "auditActionsAndGroups": [], + "storageAccountSubscriptionId": "00000000-0000-0000-0000-000000000000", + "isStorageSecondaryKeyInUse": false, + "predicateExpression": "object_name = 'SensitiveData'", + "isAzureMonitorTargetEnabled": false + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetWorkspaceManagedSqlServerBlobAuditingSettings.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetWorkspaceManagedSqlServerBlobAuditingSettings.json new file mode 100644 index 000000000000..ca9fe886de7b --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetWorkspaceManagedSqlServerBlobAuditingSettings.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "wsg-7398", + "workspaceName": "testWorkspace", + "blobAuditingPolicyName": "default", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/wsg-7398/providers/Microsoft.Synapse/workspaces/testWorkspace/auditingSettings/default", + "name": "default", + "type": "Microsoft.Synapse/workspaces/auditingSettings", + "properties": { + "state": "Disabled", + "storageEndpoint": "", + "retentionDays": 0, + "auditActionsAndGroups": [], + "storageAccountSubscriptionId": "00000000-0000-0000-0000-000000000000", + "isStorageSecondaryKeyInUse": false, + "isAzureMonitorTargetEnabled": false + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetWorkspaceManagedSqlServerEncryptionProtector.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetWorkspaceManagedSqlServerEncryptionProtector.json new file mode 100644 index 000000000000..85a17aa43a5d --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetWorkspaceManagedSqlServerEncryptionProtector.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "wsg-7398", + "workspaceName": "testWorkspace", + "encryptionProtectorName": "current", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/wsg-7398/providers/Microsoft.Synapse/workspaces/testWorkspace/encryptionProtector/current", + "name": "current", + "type": "Microsoft.Synapse/workspaces/encryptionProtector", + "location": "Japan East", + "kind": "azurekeyvault", + "properties": { + "serverKeyName": "someVault_someKey_01234567890123456789012345678901", + "serverKeyType": "AzureKeyVault", + "uri": "https://someVault.vault.azure.net/keys/someKey/01234567890123456789012345678901" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetWorkspaceManagedSqlServerEncryptionProtectorList.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetWorkspaceManagedSqlServerEncryptionProtectorList.json new file mode 100644 index 000000000000..91f49b71cb2d --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetWorkspaceManagedSqlServerEncryptionProtectorList.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "wsg-7398", + "workspaceName": "testWorkspace", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/wsg-7398/providers/Microsoft.Synapse/workspaces/testWorkspace/encryptionProtector/current", + "name": "current", + "type": "Microsoft.Synapse/workspaces/encryptionProtector", + "location": "Japan East", + "kind": "azurekeyvault", + "properties": { + "serverKeyName": "someVault_someKey_01234567890123456789012345678901", + "serverKeyType": "AzureKeyVault", + "uri": "https://someVault.vault.azure.net/keys/someKey/01234567890123456789012345678901" + } + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetWorkspaceManagedSqlServerRecoverableSqlPool.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetWorkspaceManagedSqlServerRecoverableSqlPool.json new file mode 100644 index 000000000000..d5d990397d67 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetWorkspaceManagedSqlServerRecoverableSqlPool.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "wsg-7398", + "workspaceName": "testWorkspace", + "sqlPoolName": "recoverableSqlpools-1235", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/wsg-7398/providers/Microsoft.Synapse/workspaces/testWorkspace/recoverableSqlpools/recoverableSqlpools-1235", + "name": "recoverableSqlpools-1235", + "type": "Microsoft.Synapse/workspaces/recoverableSqlpools", + "properties": { + "edition": "Standard", + "serviceLevelObjective": "S0", + "lastAvailableBackupDate": "2017-05-26T01:06:29.78Z", + "elasticPoolName": null + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetWorkspaceManagedSqlServerSecurityAlertPolicy.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetWorkspaceManagedSqlServerSecurityAlertPolicy.json new file mode 100644 index 000000000000..4f83744d76cd --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetWorkspaceManagedSqlServerSecurityAlertPolicy.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "wsg-7398", + "workspaceName": "testWorkspace", + "securityAlertPolicyName": "Default", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/wsg-7398/providers/Microsoft.Synapse/workspaces/testWorkspace/securityAlertPolicies/Default", + "name": "Default", + "type": "Microsoft.Synapse/workspaces/securityAlertPolicies", + "properties": { + "state": "Disabled", + "emailAccountAdmins": true, + "emailAddresses": [ + "test@microsoft.com;user@microsoft.com" + ], + "disabledAlerts": [ + "Access_Anomaly" + ], + "creationTime": "2020-10-23T04:52:49.52Z", + "retentionDays": 0, + "storageAccountAccessKey": "", + "storageEndpoint": "https://mystorage.blob.core.windows.net" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetWorkspaceManagedSqlServerVulnerabilityAssessment.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetWorkspaceManagedSqlServerVulnerabilityAssessment.json new file mode 100644 index 000000000000..2ad8eba7288b --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/GetWorkspaceManagedSqlServerVulnerabilityAssessment.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "wsg-7398", + "workspaceName": "testWorkspace", + "vulnerabilityAssessmentName": "default", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/wsg-7398/providers/Microsoft.Synapse/workspaces/testWorkspace/vulnerabilityAssessments/default", + "name": "default", + "type": "Microsoft.Synapse/workspaces/vulnerabilityAssessments", + "properties": { + "storageContainerPath": "https://myStorage.blob.core.windows.net/vulnerability-assessment/", + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": true, + "emails": [ + "email1@mail.com", + "email2@mail.com" + ] + } + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimeMonitoringData_List.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimeMonitoringData_List.json new file mode 100644 index 000000000000..a353dae63b3d --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimeMonitoringData_List.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "exampleIntegrationRuntime", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Thu, 14 Jun 2018 15:27:44 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "14999", + "x-ms-request-id": "39277952-edbe-4336-ae94-f6f42b50b5f7", + "x-ms-correlation-request-id": "39277952-edbe-4336-ae94-f6f42b50b5f7" + }, + "body": { + "name": "exampleIntegrationRuntime", + "nodes": [ + { + "nodeName": "Node_1", + "availableMemoryInMB": 16740, + "cpuUtilization": 15, + "concurrentJobsLimit": 28, + "concurrentJobsRunning": 0, + "sentBytes": 2.6474916934967041, + "receivedBytes": 6.7314233779907227 + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimeNodes_Delete.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimeNodes_Delete.json new file mode 100644 index 000000000000..188b55d00d0d --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimeNodes_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "exampleIntegrationRuntime", + "nodeName": "Node_1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimeNodes_Get.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimeNodes_Get.json new file mode 100644 index 000000000000..55ff27553294 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimeNodes_Get.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "exampleIntegrationRuntime", + "nodeName": "Node_1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Fri, 17 Aug 2018 06:31:04 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "14999", + "x-ms-request-id": "1c8b259a-c6e6-48aa-8121-05b3b3b782aa", + "x-ms-correlation-request-id": "1c8b259a-c6e6-48aa-8121-05b3b3b782aa" + }, + "body": { + "nodeName": "Node_1", + "machineName": "YANZHANG-DT", + "hostServiceUri": "https://yanzhang-dt.fareast.corp.microsoft.com:8050/HostServiceRemote.svc/", + "status": "Online", + "capabilities": { + "serviceBusConnected": "True", + "httpsPortEnabled": "True", + "credentialInSync": "True", + "connectedToResourceManager": "True", + "nodeEnabled": "True" + }, + "versionStatus": "UpToDate", + "version": "3.8.6743.6", + "registerTime": "2018-08-17T03:44:55.8012825Z", + "lastConnectTime": "2018-08-17T06:30:46.6262976Z", + "lastStartTime": "2018-08-17T03:45:30.8499851Z", + "lastUpdateResult": "None", + "isActiveDispatcher": true, + "maxConcurrentJobs": 20 + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimeNodes_GetIpAddress.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimeNodes_GetIpAddress.json new file mode 100644 index 000000000000..125a10c35658 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimeNodes_GetIpAddress.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "exampleIntegrationRuntime", + "nodeName": "Node_1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Thu, 14 Jun 2018 15:36:39 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1199", + "x-ms-request-id": "f01265af-9f38-44b8-81a1-b67f567ea728", + "x-ms-correlation-request-id": "f01265af-9f38-44b8-81a1-b67f567ea728" + }, + "body": { + "ipAddress": "**********" + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimeNodes_Update.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimeNodes_Update.json new file mode 100644 index 000000000000..e89290cc31db --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimeNodes_Update.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "exampleIntegrationRuntime", + "nodeName": "Node_1", + "updateIntegrationRuntimeNodeRequest": { + "concurrentJobsLimit": 2 + }, + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Thu, 14 Jun 2018 15:01:00 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1199", + "x-ms-request-id": "cf0d05fa-afbe-4fac-aa10-227885658c83", + "x-ms-correlation-request-id": "cf0d05fa-afbe-4fac-aa10-227885658c83" + }, + "body": { + "nodeName": "Node_1", + "machineName": "YANZHANG-DT", + "hostServiceUri": "https://yanzhang-dt.fareast.corp.microsoft.com:8050/HostServiceRemote.svc/", + "status": "Online", + "capabilities": { + "serviceBusConnected": "True", + "httpsPortEnabled": "True", + "credentialInSync": "True", + "connectedToResourceManager": "True", + "nodeEnabled": "True" + }, + "versionStatus": "UpToDate", + "version": "3.8.6730.2", + "registerTime": "2018-06-14T14:51:44.9237069Z", + "lastConnectTime": "2018-06-14T15:00:35.7544322Z", + "lastStartTime": "2018-06-14T14:52:59.8933313Z", + "lastUpdateResult": "None", + "isActiveDispatcher": true, + "concurrentJobsLimit": 2, + "maxConcurrentJobs": 56 + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimeObjectMetadata_List.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimeObjectMetadata_List.json new file mode 100644 index 000000000000..4263b59d939a --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimeObjectMetadata_List.json @@ -0,0 +1,432 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "testactivityv2", + "getMetadataRequest": { + "metadataPath": "ssisFolders" + }, + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Mon, 03 Dec 2018 06:24:54 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1198", + "x-ms-request-id": "0cbc67c4-60e7-4d49-97d9-e4bc4f9851cd", + "x-ms-correlation-request-id": "0cbc67c4-60e7-4d49-97d9-e4bc4f9851cd" + }, + "body": { + "value": [ + { + "id": 1, + "name": "TestFolder", + "description": "" + }, + { + "id": 2, + "name": "EnvironmentFolder", + "description": "" + }, + { + "id": 3, + "name": "ActivityTest", + "description": "" + }, + { + "id": 4, + "name": "这是文件夹", + "description": "" + }, + { + "id": 5, + "name": "1" + }, + { + "id": 6, + "name": "2" + }, + { + "id": 7, + "name": "3" + }, + { + "id": 8, + "name": "4" + }, + { + "id": 9, + "name": "5" + }, + { + "id": 10, + "name": "6" + }, + { + "id": 11, + "name": "7" + }, + { + "id": 12, + "name": "8" + }, + { + "id": 13, + "name": "9" + }, + { + "id": 14, + "name": "10" + }, + { + "id": 15, + "name": "11" + }, + { + "id": 16, + "name": "12" + }, + { + "id": 17, + "name": "13" + }, + { + "id": 18, + "name": "14" + }, + { + "id": 19, + "name": "15" + }, + { + "id": 20, + "name": "16" + }, + { + "id": 21, + "name": "17" + }, + { + "id": 22, + "name": "18" + }, + { + "id": 23, + "name": "19" + }, + { + "id": 24, + "name": "20" + }, + { + "id": 25, + "name": "21" + }, + { + "id": 26, + "name": "22" + }, + { + "id": 27, + "name": "23" + }, + { + "id": 28, + "name": "24" + }, + { + "id": 29, + "name": "25" + }, + { + "id": 30, + "name": "26" + }, + { + "id": 31, + "name": "27" + }, + { + "id": 32, + "name": "28" + }, + { + "id": 33, + "name": "29" + }, + { + "id": 34, + "name": "30" + }, + { + "id": 35, + "name": "31" + }, + { + "id": 36, + "name": "32" + }, + { + "id": 37, + "name": "33" + }, + { + "id": 38, + "name": "34" + }, + { + "id": 39, + "name": "35" + }, + { + "id": 40, + "name": "36" + }, + { + "id": 41, + "name": "37" + }, + { + "id": 42, + "name": "38" + }, + { + "id": 43, + "name": "39" + }, + { + "id": 44, + "name": "40" + }, + { + "id": 45, + "name": "41" + }, + { + "id": 46, + "name": "42" + }, + { + "id": 47, + "name": "43" + }, + { + "id": 48, + "name": "44" + }, + { + "id": 49, + "name": "45" + }, + { + "id": 50, + "name": "46" + }, + { + "id": 51, + "name": "47" + }, + { + "id": 52, + "name": "48" + }, + { + "id": 53, + "name": "49" + }, + { + "id": 54, + "name": "50" + }, + { + "id": 55, + "name": "51" + }, + { + "id": 56, + "name": "52" + }, + { + "id": 57, + "name": "53" + }, + { + "id": 58, + "name": "54" + }, + { + "id": 59, + "name": "55" + }, + { + "id": 60, + "name": "56" + }, + { + "id": 61, + "name": "57" + }, + { + "id": 62, + "name": "58" + }, + { + "id": 63, + "name": "59" + }, + { + "id": 64, + "name": "60" + }, + { + "id": 65, + "name": "61" + }, + { + "id": 66, + "name": "62" + }, + { + "id": 67, + "name": "63" + }, + { + "id": 68, + "name": "64" + }, + { + "id": 69, + "name": "65" + }, + { + "id": 70, + "name": "66" + }, + { + "id": 71, + "name": "67" + }, + { + "id": 72, + "name": "68" + }, + { + "id": 73, + "name": "69" + }, + { + "id": 74, + "name": "70" + }, + { + "id": 75, + "name": "71" + }, + { + "id": 76, + "name": "72" + }, + { + "id": 77, + "name": "73" + }, + { + "id": 78, + "name": "74" + }, + { + "id": 79, + "name": "75" + }, + { + "id": 80, + "name": "76" + }, + { + "id": 81, + "name": "77" + }, + { + "id": 82, + "name": "78" + }, + { + "id": 83, + "name": "79" + }, + { + "id": 84, + "name": "80" + }, + { + "id": 85, + "name": "81" + }, + { + "id": 86, + "name": "82" + }, + { + "id": 87, + "name": "83" + }, + { + "id": 88, + "name": "84" + }, + { + "id": 89, + "name": "85" + }, + { + "id": 90, + "name": "86" + }, + { + "id": 91, + "name": "87" + }, + { + "id": 92, + "name": "88" + }, + { + "id": 93, + "name": "89" + }, + { + "id": 94, + "name": "90" + }, + { + "id": 95, + "name": "91" + }, + { + "id": 96, + "name": "92" + }, + { + "id": 97, + "name": "93" + }, + { + "id": 98, + "name": "94" + }, + { + "id": 99, + "name": "95" + }, + { + "id": 100, + "name": "96" + } + ], + "nextLink": "https://management.azure.com/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/integrationRuntimes/testactivityv2/getObjectMetadata?api-version=2021-04-01-preview&%24skipToken=https%3a%2f%2fwcu.frontend.clouddatahub.net%2fsubscriptions%2f12345678-1234-1234-1234-12345678abc%2fdatafactories%2f6C8E7C90-FD45-4010-8B7C-B5227D0F0CB7%2fintegrationruntimes%2fTESTACTIVITYV2%2fgetSsisObjectMetadata%3f%24skipToken%3dc3Npc0ZvbGRlcnNAQDIwMTgtMTEtMjlUMDM6NTk6MzIuMDQ1Mzc1MiswMDowMEBAZm9sZGVyQEAwMDAwMDAwMDAwMDAwMDAwMTAx0%26api-version%3d1.0" + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimeObjectMetadata_Refresh.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimeObjectMetadata_Refresh.json new file mode 100644 index 000000000000..7cf2ec4fbf29 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimeObjectMetadata_Refresh.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "testactivityv2", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Mon, 03 Dec 2018 06:24:53 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "11999", + "x-ms-request-id": "20708242-215c-4101-9437-44590b27cdbf", + "x-ms-correlation-request-id": "20708242-215c-4101-9437-44590b27cdbf" + }, + "body": { + "status": "Succeeded", + "name": "ca63c855b72d44959653ffcc6eb0b96c", + "properties": null, + "error": null + } + }, + "202": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimes_Create.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimes_Create.json new file mode 100644 index 000000000000..f2fcd78c5918 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimes_Create.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "exampleIntegrationRuntime", + "ifMatch": null, + "integrationRuntime": { + "properties": { + "type": "SelfHosted", + "description": "A selfhosted integration runtime" + } + }, + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Wed, 13 Jun 2018 22:20:47 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1197", + "x-ms-request-id": "125c07fa-e39a-4541-885f-5019631a5ecd", + "x-ms-correlation-request-id": "125c07fa-e39a-4541-885f-5019631a5ecd" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/integrationruntimes/exampleIntegrationRuntime", + "name": "exampleIntegrationRuntime", + "type": "Microsoft.Synapse/workspaces/integrationruntimes", + "properties": { + "type": "SelfHosted", + "description": "A selfhosted integration runtime" + }, + "etag": "000046c4-0000-0000-0000-5b2198bf0000" + } + }, + "202": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimes_Delete.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimes_Delete.json new file mode 100644 index 000000000000..e7f36ea206aa --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimes_Delete.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "exampleIntegrationRuntime", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {}, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimes_DisableInteractiveQuery.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimes_DisableInteractiveQuery.json new file mode 100644 index 000000000000..e3090083204f --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimes_DisableInteractiveQuery.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "exampleManagedIntegrationRuntime", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimes_EnableInteractiveQuery.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimes_EnableInteractiveQuery.json new file mode 100644 index 000000000000..e3090083204f --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimes_EnableInteractiveQuery.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "exampleManagedIntegrationRuntime", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimes_Get.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimes_Get.json new file mode 100644 index 000000000000..1f6d4ff67741 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimes_Get.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "exampleIntegrationRuntime", + "ifNoneMatch": "15003c4f-0000-0200-0000-5cbe090b0000", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Mon, 22 Apr 2019 18:33:47 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "11997", + "x-ms-request-id": "ad824326-e577-4a47-a092-2e621c4d59d9", + "x-ms-correlation-request-id": "ad824326-e577-4a47-a092-2e621c4d59d9" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/integrationruntimes/exampleIntegrationRuntime", + "name": "exampleIntegrationRuntime", + "type": "Microsoft.Synapse/workspaces/integrationruntimes", + "properties": { + "type": "SelfHosted", + "description": "A selfhosted integration runtime" + }, + "etag": "15003c4f-0000-0200-0000-5cbe090b0000" + } + }, + "304": {}, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimes_GetConnectionInfo.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimes_GetConnectionInfo.json new file mode 100644 index 000000000000..fbd157160535 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimes_GetConnectionInfo.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "exampleIntegrationRuntime", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Thu, 14 Jun 2018 14:53:21 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "14998", + "x-ms-request-id": "05774db5-e79b-4224-9097-46714b92fbd8", + "x-ms-correlation-request-id": "05774db5-e79b-4224-9097-46714b92fbd8" + }, + "body": { + "version": "3.8.6730.2", + "publicKey": "**********", + "serviceToken": "**********", + "identityCertThumbprint": "**********", + "hostServiceUri": "https://yanzhang-dt.fareast.corp.microsoft.com:8050/HostServiceRemote.svc/", + "isIdentityCertExprired": false + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimes_GetStatus.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimes_GetStatus.json new file mode 100644 index 000000000000..c12092713203 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimes_GetStatus.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "exampleIntegrationRuntime", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Thu, 14 Jun 2018 14:53:22 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "14997", + "x-ms-request-id": "19efe790-074f-4241-ae94-0422935d0f46", + "x-ms-correlation-request-id": "19efe790-074f-4241-ae94-0422935d0f46" + }, + "body": { + "name": "exampleIntegrationRuntime", + "properties": { + "state": "Online", + "type": "SelfHosted", + "typeProperties": { + "autoUpdate": "Off", + "taskQueueId": "1a6296ab-423c-4346-9bcc-85a78c2c0582", + "version": "3.8.6730.2", + "nodes": [ + { + "nodeName": "Node_1", + "machineName": "YANZHANG-DT", + "hostServiceUri": "https://yanzhang-dt.fareast.corp.microsoft.com:8050/HostServiceRemote.svc/", + "status": "Online", + "capabilities": { + "serviceBusConnected": "True", + "httpsPortEnabled": "True", + "credentialInSync": "True", + "connectedToResourceManager": "True", + "nodeEnabled": "True" + }, + "versionStatus": "UpToDate", + "version": "3.8.6730.2", + "registerTime": "2018-06-14T14:51:44.9237069Z", + "lastConnectTime": "2018-06-14T14:52:59.8933313Z", + "lastStartTime": "2018-06-14T14:52:59.8933313Z", + "lastUpdateResult": "None", + "isActiveDispatcher": true, + "maxConcurrentJobs": 56 + } + ], + "updateDelayOffset": "PT3H", + "localTimeZoneOffset": "PT8H", + "serviceUrls": [ + "wu.frontend.int.clouddatahub-int.net", + "*.servicebus.windows.net" + ], + "versionStatus": "UpToDate", + "capabilities": { + "serviceBusConnected": "True", + "httpsPortEnabled": "True", + "credentialInSync": "True", + "connectedToResourceManager": "True", + "nodeEnabled": "True" + }, + "latestVersion": "3.7.6711.1", + "createTime": "2018-06-14T09:17:45.1839685Z" + } + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimes_ListAuthKeys.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimes_ListAuthKeys.json new file mode 100644 index 000000000000..2250f5e4b0b1 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimes_ListAuthKeys.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "exampleIntegrationRuntime", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Thu, 14 Jun 2018 14:51:00 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "14999", + "x-ms-request-id": "2ea25426-9d1d-49f3-88b6-fb853eb02cb9", + "x-ms-correlation-request-id": "2ea25426-9d1d-49f3-88b6-fb853eb02cb9" + }, + "body": { + "authKey1": "**********", + "authKey2": "**********" + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimes_ListByWorkspace.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimes_ListByWorkspace.json new file mode 100644 index 000000000000..5aeaad6fb6f7 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimes_ListByWorkspace.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "ifNoneMatch": null, + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Wed, 13 Jun 2018 21:33:05 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "14909", + "x-ms-request-id": "f632df92-1140-4e19-9e19-0b1c8cbe393b", + "x-ms-correlation-request-id": "f632df92-1140-4e19-9e19-0b1c8cbe393b" + }, + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/integrationruntimes/exampleIntegrationRuntime", + "name": "exampleIntegrationRuntime", + "type": "Microsoft.Synapse/workspaces/integrationruntimes", + "properties": { + "type": "SelfHosted", + "description": "A selfhosted integration runtime" + }, + "etag": "0400f1a1-0000-0000-0000-5b2188640000" + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimes_RegenerateAuthKey.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimes_RegenerateAuthKey.json new file mode 100644 index 000000000000..6b32719acef5 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimes_RegenerateAuthKey.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "exampleIntegrationRuntime", + "regenerateKeyParameters": { + "keyName": "authKey2" + }, + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Thu, 14 Jun 2018 14:50:41 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1198", + "x-ms-request-id": "25af6d34-52c6-40a4-a882-16052af85c99", + "x-ms-correlation-request-id": "25af6d34-52c6-40a4-a882-16052af85c99" + }, + "body": { + "authKey2": "**********" + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimes_Start.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimes_Start.json new file mode 100644 index 000000000000..f81729ff63ef --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimes_Start.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "exampleManagedIntegrationRuntime", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Wed, 13 Jun 2018 21:33:00 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "14912", + "x-ms-request-id": "2af47f9f-5625-4b01-a3a5-bccb576a4677", + "x-ms-correlation-request-id": "2af47f9f-5625-4b01-a3a5-bccb576a4677" + }, + "body": { + "name": "exampleManagedIntegrationRuntime", + "properties": { + "dataFactoryName": "exampleWorkspaceName", + "type": "Managed", + "state": "Started", + "typeProperties": { + "nodes": [], + "otherErrors": [], + "createTime": "2018-06-13T21:11:01.8695494Z" + } + } + } + }, + "202": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimes_Stop.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimes_Stop.json new file mode 100644 index 000000000000..e3090083204f --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimes_Stop.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "exampleManagedIntegrationRuntime", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimes_SyncCredentials.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimes_SyncCredentials.json new file mode 100644 index 000000000000..23c07467ad69 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimes_SyncCredentials.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "exampleIntegrationRuntime", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimes_Update.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimes_Update.json new file mode 100644 index 000000000000..7d8546747272 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimes_Update.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "exampleIntegrationRuntime", + "updateIntegrationRuntimeRequest": { + "autoUpdate": "Off", + "updateDelayOffset": "\"PT3H\"" + }, + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Wed, 13 Jun 2018 21:33:04 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1192", + "x-ms-request-id": "eb1c35f8-4b37-4d08-b5dd-d6a0ad8b182d", + "x-ms-correlation-request-id": "eb1c35f8-4b37-4d08-b5dd-d6a0ad8b182d" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/integrationruntimes/exampleIntegrationRuntime", + "name": "exampleIntegrationRuntime", + "type": "Microsoft.Synapse/workspaces/integrationruntimes", + "properties": { + "type": "SelfHosted", + "description": "A selfhosted integration runtime" + }, + "etag": "0400f1a1-0000-0000-0000-5b2188640000" + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimes_Upgrade.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimes_Upgrade.json new file mode 100644 index 000000000000..23c07467ad69 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/IntegrationRuntimes_Upgrade.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "exampleIntegrationRuntime", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoDatabasesListByKustoPool.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoDatabasesListByKustoPool.json new file mode 100644 index 000000000000..f1235878c7d3 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoDatabasesListByKustoPool.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "workspaceName": "synapseWorkspaceName", + "kustoPoolName": "kustoclusterrptest4", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Synapse/workspaces/kustorptest/kustopools/KustoClusterRPTest4/Databases/KustoDatabase8", + "name": "KustoClusterRPTest4/KustoDatabase8", + "type": "Microsoft.Synapse/workspaces/kustopools/Databases", + "location": "westus", + "kind": "ReadWrite", + "properties": { + "softDeletePeriod": "P1D", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Synapse/workspaces/kustorptest/kustopools/KustoClusterRPTest4/Databases/KustoDatabase9", + "name": "KustoClusterRPTest4/KustoDatabase9", + "type": "Microsoft.Synapse/workspaces/kustopools/Databases", + "location": "westus", + "kind": "ReadWrite", + "properties": { + "softDeletePeriod": "P1D", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoOperationsList.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoOperationsList.json new file mode 100644 index 000000000000..b91a9bd73b31 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoOperationsList.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "operationName", + "display": { + "provider": "providerName", + "resource": "resourceName", + "operation": "operationName", + "description": "operation description" + } + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolDataConnectionsCreateOrUpdate.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolDataConnectionsCreateOrUpdate.json new file mode 100644 index 000000000000..504a823278bf --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolDataConnectionsCreateOrUpdate.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "workspaceName": "synapseWorkspaceName", + "kustoPoolName": "kustoclusterrptest4", + "databaseName": "KustoDatabase8", + "api-version": "2021-04-01-preview", + "dataConnectionName": "DataConnections8", + "parameters": { + "location": "westus", + "kind": "EventHub", + "properties": { + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1", + "consumerGroup": "testConsumerGroup1" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Synapse/workspaces/synapseWorkspaceName/kustopools/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8", + "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8", + "type": "Microsoft.Kusto/Clusters/Databases/DataConnections", + "location": "westus", + "kind": "EventHub", + "properties": { + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1", + "consumerGroup": "testConsumerGroup1" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Synapse/workspaces/synapseWorkspaceName/kustopools/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8", + "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8", + "type": "Microsoft.Kusto/Clusters/Databases/DataConnections", + "location": "westus", + "kind": "EventHub", + "properties": { + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1", + "consumerGroup": "testConsumerGroup1" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolDataConnectionsDelete.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolDataConnectionsDelete.json new file mode 100644 index 000000000000..4d08273486ed --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolDataConnectionsDelete.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "workspaceName": "synapseWorkspaceName", + "kustoPoolName": "kustoclusterrptest4", + "databaseName": "KustoDatabase8", + "api-version": "2021-04-01-preview", + "dataConnectionName": "kustoeventhubconnection1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolDataConnectionsGet.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolDataConnectionsGet.json new file mode 100644 index 000000000000..c0e47aea3337 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolDataConnectionsGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "workspaceName": "synapseWorkspaceName", + "kustoPoolName": "kustoclusterrptest4", + "databaseName": "KustoDatabase8", + "api-version": "2021-04-01-preview", + "dataConnectionName": "DataConnections8" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Synapse/workspaces/synapseWorkspaceName/kustopools/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8", + "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8", + "type": "Microsoft.Kusto/Clusters/Databases/DataConnections", + "location": "westus", + "kind": "EventHub", + "properties": { + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1", + "consumerGroup": "testConsumerGroup1" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolDataConnectionsListByDatabase.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolDataConnectionsListByDatabase.json new file mode 100644 index 000000000000..4198bc064e37 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolDataConnectionsListByDatabase.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "workspaceName": "synapseWorkspaceName", + "kustoPoolName": "kustoclusterrptest4", + "databaseName": "KustoDatabase8", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Synapse/workspaces/synapseWorkspaceName/kustopools/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/KustoDataConnection8", + "name": "KustoClusterRPTest4/KustoDatabase8/KustoDataConnection8", + "type": "Microsoft.Kusto/Clusters/Databases/DataConnections", + "location": "westus", + "kind": "EventHub", + "properties": { + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1", + "consumerGroup": "testConsumerGroup1" + } + }, + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Synapse/workspaces/synapseWorkspaceName/kustopools/KustoClusterRPTest4/Databases/KustoDatabase9/DataConnections/KustoDataConnection9", + "name": "KustoClusterRPTest4/KustoDatabase9/KustoDataConnection9", + "type": "Microsoft.Kusto/Clusters/Databases/DataConnections", + "location": "westus", + "kind": "EventHub", + "properties": { + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns2/eventhubs/eventhubTest2", + "consumerGroup": "testConsumerGroup2" + } + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolDataConnectionsUpdate.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolDataConnectionsUpdate.json new file mode 100644 index 000000000000..504a823278bf --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolDataConnectionsUpdate.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "workspaceName": "synapseWorkspaceName", + "kustoPoolName": "kustoclusterrptest4", + "databaseName": "KustoDatabase8", + "api-version": "2021-04-01-preview", + "dataConnectionName": "DataConnections8", + "parameters": { + "location": "westus", + "kind": "EventHub", + "properties": { + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1", + "consumerGroup": "testConsumerGroup1" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Synapse/workspaces/synapseWorkspaceName/kustopools/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8", + "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8", + "type": "Microsoft.Kusto/Clusters/Databases/DataConnections", + "location": "westus", + "kind": "EventHub", + "properties": { + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1", + "consumerGroup": "testConsumerGroup1" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Synapse/workspaces/synapseWorkspaceName/kustopools/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8", + "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8", + "type": "Microsoft.Kusto/Clusters/Databases/DataConnections", + "location": "westus", + "kind": "EventHub", + "properties": { + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1", + "consumerGroup": "testConsumerGroup1" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolDatabasePrincipalAssignmentsCreateOrUpdate.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolDatabasePrincipalAssignmentsCreateOrUpdate.json new file mode 100644 index 000000000000..18bda9c094bf --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolDatabasePrincipalAssignmentsCreateOrUpdate.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "workspaceName": "synapseWorkspaceName", + "kustoPoolName": "kustoclusterrptest4", + "databaseName": "Kustodatabase8", + "principalAssignmentName": "kustoprincipal1", + "api-version": "2021-04-01-preview", + "parameters": { + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Synapse/workspaces/synapseWorkspaceName/kustoPools/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1", + "name": "synapseWorkspaceName/kustoclusterrptest4/Kustodatabase8/kustoprincipal1", + "type": "Microsoft.Synapse/Workspaces/KustoPools/Databases/PrincipalAssignments", + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123", + "tenantName": "tenantName", + "principalName": "TestApp", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Synapse/workspaces/synapseWorkspaceName/kustoPools/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1", + "name": "synapseWorkspaceName/kustoclusterrptest4/Kustodatabase8/kustoprincipal1", + "type": "Microsoft.Synapse/Workspaces/KustoPools/Databases/PrincipalAssignments", + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123", + "tenantName": "tenantName", + "principalName": "TestApp", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolDatabasePrincipalAssignmentsDelete.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolDatabasePrincipalAssignmentsDelete.json new file mode 100644 index 000000000000..57e4f9ff8a96 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolDatabasePrincipalAssignmentsDelete.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "workspaceName": "synapseWorkspaceName", + "kustoPoolName": "kustoclusterrptest4", + "databaseName": "Kustodatabase8", + "principalAssignmentName": "kustoprincipal1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolDatabasePrincipalAssignmentsGet.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolDatabasePrincipalAssignmentsGet.json new file mode 100644 index 000000000000..1ff5d7022865 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolDatabasePrincipalAssignmentsGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "workspaceName": "synapseWorkspaceName", + "kustoPoolName": "kustoclusterrptest4", + "databaseName": "Kustodatabase8", + "principalAssignmentName": "kustoprincipal1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Synapse/workspaces/synapseWorkspaceName/kustoPools/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1", + "name": "synapseWorkspaceName/kustoclusterrptest4/Kustodatabase8/kustoprincipal1", + "type": "Microsoft.Synapse/Workspaces/KustoPools/Databases/PrincipalAssignments", + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123", + "tenantName": "tenantName", + "principalName": "TestApp", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolDatabasePrincipalAssignmentsList.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolDatabasePrincipalAssignmentsList.json new file mode 100644 index 000000000000..d8366c5eaf41 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolDatabasePrincipalAssignmentsList.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "workspaceName": "synapseWorkspaceName", + "kustoPoolName": "kustoclusterrptest4", + "databaseName": "Kustodatabase8", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Synapse/workspaces/synapseWorkspaceName/kustoPools/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1", + "name": "synapseWorkspaceName/kustoclusterrptest4/Kustodatabase8/kustoprincipal1", + "type": "Microsoft.Synapse/Workspaces/KustoPools/Databases/PrincipalAssignments", + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123", + "tenantName": "tenantName", + "principalName": "TestApp", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Synapse/workspaces/synapseWorkspaceName/kustoPools/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal2", + "name": "synapseWorkspaceName/kustoclusterrptest4/Kustodatabase8/kustoprincipal2", + "type": "Microsoft.Synapse/Workspaces/KustoPools/Databases/PrincipalAssignments", + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123", + "tenantName": "tenantName", + "principalName": "TestApp", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolDatabasesCreateOrUpdate.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolDatabasesCreateOrUpdate.json new file mode 100644 index 000000000000..5b47b12706a5 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolDatabasesCreateOrUpdate.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "workspaceName": "synapseWorkspaceName", + "kustoPoolName": "kustoclusterrptest4", + "databaseName": "KustoDatabase8", + "api-version": "2021-04-01-preview", + "parameters": { + "location": "westus", + "kind": "ReadWrite", + "properties": { + "softDeletePeriod": "P1D" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Synapse/workspaces/synapseWorkspaceName/kustopools/KustoClusterRPTest4/Databases/KustoDatabase8", + "name": "KustoClusterRPTest4/KustoDatabase8", + "type": "Microsoft.Synapse/workspaces/kustopools/Databases", + "kind": "ReadWrite", + "location": "westus", + "properties": { + "softDeletePeriod": "P1D", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Synapse/workspaces/synapseWorkspaceName/kustopools/KustoClusterRPTest4/Databases/KustoDatabase8", + "name": "KustoClusterRPTest4/KustoDatabase8", + "type": "Microsoft.Synapse/workspaces/kustopools/Databases", + "location": "westus", + "kind": "ReadWrite", + "properties": { + "softDeletePeriod": "P1D", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolDatabasesDelete.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolDatabasesDelete.json new file mode 100644 index 000000000000..6081453d95b9 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolDatabasesDelete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "workspaceName": "synapseWorkspaceName", + "kustoPoolName": "kustoclusterrptest4", + "databaseName": "KustoDatabase8", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolDatabasesGet.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolDatabasesGet.json new file mode 100644 index 000000000000..0d1a7e2fd275 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolDatabasesGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "workspaceName": "synapseWorkspaceName", + "kustoPoolName": "kustoclusterrptest4", + "databaseName": "KustoDatabase8", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/providers/Microsoft.Synapse/workspaces/synapseWorkspaceName/kustopools/KustoClusterRPTest4/Databases/KustoDatabase8", + "name": "KustoClusterRPTest4/KustoDatabase8", + "type": "Microsoft.Synapse/workspaces/kustopools/Databases", + "kind": "ReadWrite", + "location": "westus", + "properties": { + "softDeletePeriod": "P1D", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolDatabasesUpdate.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolDatabasesUpdate.json new file mode 100644 index 000000000000..f7f1759b3e62 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolDatabasesUpdate.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "workspaceName": "synapseWorkspaceName", + "kustoPoolName": "kustoclusterrptest4", + "databaseName": "KustoDatabase8", + "api-version": "2021-04-01-preview", + "parameters": { + "kind": "ReadWrite", + "properties": { + "softDeletePeriod": "P1D" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Synapse/workspaces/synapseWorkspaceName/kustopools/KustoClusterRPTest4/Databases/KustoDatabase8", + "name": "KustoClusterRPTest4/KustoDatabase8", + "type": "Microsoft.Synapse/workspaces/kustopools/Databases", + "kind": "ReadWrite", + "location": "westus", + "properties": { + "softDeletePeriod": "P1D", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Synapse/workspaces/synapseWorkspaceName/kustopools/KustoClusterRPTest4/Databases/KustoDatabase8", + "name": "KustoClusterRPTest4/KustoDatabase8", + "type": "Microsoft.Synapse/workspaces/kustopools/Databases", + "kind": "ReadWrite", + "location": "westus", + "properties": { + "softDeletePeriod": "P1D", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolPrincipalAssignmentsCreateOrUpdate.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolPrincipalAssignmentsCreateOrUpdate.json new file mode 100644 index 000000000000..c6fc4a462779 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolPrincipalAssignmentsCreateOrUpdate.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "workspaceName": "synapseWorkspaceName", + "kustoPoolName": "kustoclusterrptest4", + "principalAssignmentName": "kustoprincipal1", + "api-version": "2021-04-01-preview", + "parameters": { + "properties": { + "role": "AllDatabasesAdmin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Synapse/workspaces/synapseWorkspaceName/kustoPools/kustoclusterrptest4/PrincipalAssignments/kustoprincipal1", + "name": "synapseWorkspaceName/kustoclusterrptest4/kustoprincipal1", + "type": "Microsoft.Synapse/Workspaces/KustoPools/PrincipalAssignments", + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123", + "tenantName": "tenantName", + "principalName": "TestApp", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Synapse/workspaces/synapseWorkspaceName/kustoPools/kustoclusterrptest4/PrincipalAssignments/kustoprincipal1", + "name": "synapseWorkspaceName/kustoclusterrptest4/kustoprincipal1", + "type": "Microsoft.Synapse/Workspaces/KustoPools/PrincipalAssignments", + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123", + "tenantName": "tenantName", + "principalName": "TestApp", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolPrincipalAssignmentsDelete.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolPrincipalAssignmentsDelete.json new file mode 100644 index 000000000000..cb6ef7a5cb16 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolPrincipalAssignmentsDelete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "workspaceName": "synapseWorkspaceName", + "kustoPoolName": "kustoclusterrptest4", + "principalAssignmentName": "kustoprincipal1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolPrincipalAssignmentsGet.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolPrincipalAssignmentsGet.json new file mode 100644 index 000000000000..ad6eaf936232 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolPrincipalAssignmentsGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "workspaceName": "synapseWorkspaceName", + "kustoPoolName": "kustoclusterrptest4", + "principalAssignmentName": "kustoprincipal1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Synapse/workspaces/synapseWorkspaceName/kustoPools/kustoclusterrptest4/PrincipalAssignments/kustoprincipal1", + "name": "synapseWorkspaceName/kustoclusterrptest4/kustoprincipal1", + "type": "Microsoft.Synapse/Workspaces/KustoPools/PrincipalAssignments", + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123", + "tenantName": "tenantName", + "principalName": "TestApp", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolPrincipalAssignmentsList.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolPrincipalAssignmentsList.json new file mode 100644 index 000000000000..d1cef7b7ff77 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolPrincipalAssignmentsList.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "workspaceName": "synapseWorkspaceName", + "kustoPoolName": "kustoclusterrptest4", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Synapse/workspaces/synapseWorkspaceName/kustoPools/kustoclusterrptest4/PrincipalAssignments/kustoprincipal1", + "name": "synapseWorkspaceName/kustoclusterrptest4/kustoprincipal1", + "type": "Microsoft.Synapse/Workspaces/KustoPools/PrincipalAssignments", + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123", + "tenantName": "tenantName", + "principalName": "TestApp", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Synapse/workspaces/synapseWorkspaceName/kustoPools/kustoclusterrptest4/PrincipalAssignments/kustoprincipal2", + "name": "synapseWorkspaceName/kustoclusterrptest4/kustoprincipal2", + "type": "Microsoft.Synapse/Workspaces/KustoPools/PrincipalAssignments", + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123", + "tenantName": "tenantName", + "principalName": "TestApp", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolsCheckNameAvailability.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolsCheckNameAvailability.json new file mode 100644 index 000000000000..ef30e769f8b0 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolsCheckNameAvailability.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "api-version": "2021-04-01-preview", + "location": "westus", + "kustoPoolName": { + "name": "kustoclusterrptest4", + "type": "Microsoft.Synapse/workspaces/kustoPools" + } + }, + "responses": { + "200": { + "body": { + "name": "kustoclusterrptest4", + "nameAvailable": false, + "message": "Name 'kustoclusterrptest4' is already taken. Please specify a different name" + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolsCreateOrUpdate.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolsCreateOrUpdate.json new file mode 100644 index 000000000000..5f7080271b9e --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolsCreateOrUpdate.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "workspaceName": "synapseWorkspaceName", + "kustoPoolName": "kustoclusterrptest4", + "api-version": "2021-04-01-preview", + "parameters": { + "location": "westus", + "sku": { + "name": "Standard_L8s", + "capacity": 2, + "tier": "Standard" + }, + "properties": { + "workspaceUid": "11111111-2222-3333-444444444444" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Synapse/workspaces/synapseWorkspaceName/kustopools/KustoClusterRPTest4", + "name": "KustoClusterRPTest4", + "type": "Microsoft.Synapse/workspaces/kustopools", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "engineType": "V2" + }, + "sku": { + "name": "Standard_L8s", + "capacity": 2, + "tier": "Standard" + }, + "etag": "abcd" + } + }, + "201": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Synapse/workspaces/synapseWorkspaceName/kustopools/KustoClusterRPTest4", + "name": "KustoClusterRPTest4", + "type": "Microsoft.Synapse/workspaces/kustopools", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "engineType": "V2" + }, + "sku": { + "name": "Standard_L8s", + "capacity": 2, + "tier": "Standard" + }, + "etag": "abcd123" + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolsDelete.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolsDelete.json new file mode 100644 index 000000000000..00b26c1c5fb7 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolsDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "workspaceName": "kustorptest", + "kustoPoolName": "kustoclusterrptest4", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolsGet.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolsGet.json new file mode 100644 index 000000000000..d9b6fea94205 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolsGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "workspaceName": "synapseWorkspaceName", + "kustoPoolName": "kustoclusterrptest4", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Synapse/workspaces/synapseWorkspaceName/kustopools/KustoClusterRPTest5", + "name": "KustoClusterRPTest5", + "type": "Microsoft.Synapse/workspaces/kustopools", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "engineType": "V2" + }, + "sku": { + "name": "Standard_L8s", + "capacity": 2, + "tier": "Standard" + }, + "etag": "abcd123" + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolsListByWorkspace.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolsListByWorkspace.json new file mode 100644 index 000000000000..179f3e62f0e0 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolsListByWorkspace.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "workspaceName": "kustorptest", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Synapse/workspaces/kustorptest/kustopools/KustoClusterRPTest4", + "name": "KustoClusterRPTest4", + "type": "Microsoft.Synapse/workspaces/kustopools", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "engineType": "V2" + }, + "sku": { + "name": "Standard_L8s", + "capacity": 2, + "tier": "Standard" + }, + "etag": "abcd123" + }, + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Synapse/workspaces/kustorptest/kustopools/KustoClusterRPTest3", + "name": "KustoClusterRPTest3", + "type": "Microsoft.Synapse/workspaces/kustopools", + "location": "westus", + "properties": { + "provisioningState": "Succeeded" + }, + "sku": { + "name": "Standard_L8s", + "capacity": 2, + "tier": "Standard" + }, + "etag": "abcd123" + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolsUpdate.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolsUpdate.json new file mode 100644 index 000000000000..7798b7347dd4 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/KustoPoolsUpdate.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "workspaceName": "synapseWorkspaceName", + "kustoPoolName": "kustoclusterrptest4", + "api-version": "2021-04-01-preview", + "parameters": { + "sku": { + "name": "Standard_L8s", + "capacity": 2, + "tier": "Standard" + }, + "properties": { + "workspaceUid": "11111111-2222-3333-444444444444" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Synapse/workspaces/synapseWorkspaceName/kustopools/KustoClusterRPTest4", + "name": "KustoClusterRPTest4", + "type": "Microsoft.Synapse/workspaces/kustopools", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "engineType": "V2" + }, + "sku": { + "name": "Standard_L8s", + "capacity": 2, + "tier": "Standard" + }, + "etag": "abcd" + } + }, + "201": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Synapse/workspaces/synapseWorkspaceName/kustopools/KustoClusterRPTest4", + "name": "KustoClusterRPTest4", + "type": "Microsoft.Synapse/workspaces/kustopools", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "engineType": "V2" + }, + "sku": { + "name": "Standard_L8s", + "capacity": 2, + "tier": "Standard" + }, + "etag": "abcd123" + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/Libraries_ListByWorkspace.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/Libraries_ListByWorkspace.json new file mode 100644 index 000000000000..80e561d16075 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/Libraries_ListByWorkspace.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "ifNoneMatch": null, + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Wed, 23 Oct 2020 21:33:05 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "14909", + "x-ms-request-id": "f632df92-1140-4e19-9e19-0b1c8cbe393b", + "x-ms-correlation-request-id": "f632df92-1140-4e19-9e19-0b1c8cbe393b" + }, + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspace/libraries/exampleLibraryName1.jar", + "name": "exampleLibraryName1.jar", + "type": "Microsoft.Synapse/workspaces/libraries", + "properties": { + "name": "exampleLibraryName1.jar", + "path": "exampleWorkspace/libraries/exampleLibraryName1.jar", + "containerName": "exampleContainer", + "type": "jar", + "uploadedTimestamp": "2020-10-23T07:59:29.1573546+00:00", + "provisioningStatus": "Succeeded", + "creatorId": "2222222e-222d-222f-2222-22a2f222d2f2" + }, + "etag": "1500474f-0000-0200-0000-5cbe090d0000" + }, + { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspace/libraries/exampleLibraryName2.jar", + "name": "exampleLibraryName2.jar", + "type": "Microsoft.Synapse/workspaces/libraries", + "properties": { + "name": "exampleLibraryName2.jar", + "path": "exampleWorkspace/libraries/exampleLibraryName2.jar", + "containerName": "exampleContainer", + "type": "jar", + "uploadedTimestamp": "2020-10-23T07:59:29.1573546+00:00", + "provisioningStatus": "Succeeded", + "creatorId": "2222222e-222d-222f-2222-22a2f222d2f2" + }, + "etag": "1500474f-0000-0200-0000-5cbe090d0000" + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/Library_Get.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/Library_Get.json new file mode 100644 index 000000000000..5dfc4b2d64ec --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/Library_Get.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "ifNoneMatch": null, + "libraryName": "exampleLibraryName.jar", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Wed, 23 Oct 2020 21:33:05 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "14909", + "x-ms-request-id": "f632df92-1140-4e19-9e19-0b1c8cbe393b", + "x-ms-correlation-request-id": "f632df92-1140-4e19-9e19-0b1c8cbe393b" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspace/libraries/exampleLibraryName.jar", + "name": "exampleLibraryName.jar", + "type": "Microsoft.Synapse/workspaces/libraries", + "properties": { + "name": "exampleLibraryName.jar", + "path": "exampleWorkspace/libraries/exampleLibraryName.jar", + "containerName": "exampleContainer", + "type": "jar", + "uploadedTimestamp": "2020-10-23T07:59:29.1573546+00:00", + "provisioningStatus": "Succeeded", + "creatorId": "2222222e-222d-222f-2222-22a2f222d2f2" + }, + "etag": "1500474f-0000-0200-0000-5cbe090d0000" + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListBigDataPoolsInWorkspace.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListBigDataPoolsInWorkspace.json new file mode 100644 index 000000000000..c57e49d5ad92 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListBigDataPoolsInWorkspace.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/bigDataPools/ExamplePool", + "type": "Microsoft.Synapse/workspaces/bigDataPools", + "location": "West US 2", + "name": "ExamplePool", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "sparkVersion": "2.4", + "nodeCount": 4, + "nodeSize": "Medium", + "nodeSizeFamily": "MemoryOptimized", + "autoScale": { + "enabled": true, + "minNodeCount": 3, + "maxNodeCount": 50 + }, + "autoPause": { + "enabled": true, + "delayInMinutes": 15 + }, + "creationDate": "1970-01-01T00:00:00Z", + "sparkEventsFolder": "/events", + "libraryRequirements": { + "time": "1970-01-01T00:00:00Z", + "content": "", + "filename": "requirements.txt" + }, + "defaultSparkLogFolder": "/logs" + } + }, + { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/bigDataPools/ExamplePool2", + "type": "Microsoft.Synapse/workspaces/bigDataPools", + "location": "West US 2", + "name": "ExamplePool2", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "sparkVersion": "2.4", + "nodeCount": 4, + "nodeSize": "Medium", + "nodeSizeFamily": "MemoryOptimized", + "autoScale": { + "enabled": true, + "minNodeCount": 3, + "maxNodeCount": 50 + }, + "autoPause": { + "enabled": true, + "delayInMinutes": 15 + }, + "creationDate": "1970-01-01T00:00:00Z", + "sparkEventsFolder": "/events", + "libraryRequirements": { + "time": "1970-01-01T00:00:00Z", + "content": "", + "filename": "requirements.txt" + }, + "defaultSparkLogFolder": "/logs" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListIpFirewallRules.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListIpFirewallRules.json new file mode 100644 index 000000000000..0e39178e9728 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListIpFirewallRules.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [], + "nextLink": "" + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListKeysInWorkspace.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListKeysInWorkspace.json new file mode 100644 index 000000000000..e3c624f454c2 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListKeysInWorkspace.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/keys/key1", + "name": "key1", + "type": "Microsoft.Synapse/workspaces/keys", + "properties": { + "keyVaultUrl": "https://vault.azure.net/keys/somesecret1", + "isActiveCMK": false + } + }, + { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/keys/key2", + "name": "key2", + "type": "Microsoft.Synapse/workspaces/keys", + "properties": { + "keyVaultUrl": "https://vault.azure.net/keys/somesecret2", + "isActiveCMK": true + } + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListPrivateEndpointConnections.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListPrivateEndpointConnections.json new file mode 100644 index 000000000000..87f7e44bbd02 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListPrivateEndpointConnections.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/privateEndpointConnections/ExamplePrivateEndpointConnection", + "name": "sql", + "type": "Microsoft.Synapse/workspaces/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Network/privateEndpoints/ExamplePrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] + } + }, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListPrivateLinkHubPrivateLinkResources.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListPrivateLinkHubPrivateLinkResources.json new file mode 100644 index 000000000000..552951ec1bdc --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListPrivateLinkHubPrivateLinkResources.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "privateLinkHubName": "ExamplePrivateLinkHub", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/privateLinkHubs/ExamplePrivateLinkHub/privateLinkResources/sql", + "name": "sql", + "type": "Microsoft.Synapse/privateLinkHubs/privateLinkResources", + "properties": { + "groupId": "sql", + "requiredMembers": [ + "sql" + ], + "requiredZoneNames": [ + "privatelink.sql.azuresynapse.net" + ] + } + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListPrivateLinkHubsInResourceGroup.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListPrivateLinkHubsInResourceGroup.json new file mode 100644 index 000000000000..0628a3c6371b --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListPrivateLinkHubsInResourceGroup.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup1/providers/Microsoft.Synapse/privateLinkHubs/privateLinkHub1", + "name": "privateLinkHub1", + "type": "Microsoft.Synapse/privateLinkHubs", + "location": "East US", + "properties": { + "provisioningState": "Succeeded" + }, + "tags": { + "key": "value" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup1/providers/Microsoft.Synapse/privateLinkHubs/privateLinkHub2", + "name": "privateLinkHub2", + "type": "Microsoft.Synapse/privateLinkHubs", + "location": "East US", + "properties": { + "provisioningState": "Succeeded" + }, + "tags": { + "key": "value" + } + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListPrivateLinkHubsInSubscription.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListPrivateLinkHubsInSubscription.json new file mode 100644 index 000000000000..f60ddaa7923a --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListPrivateLinkHubsInSubscription.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup1/providers/Microsoft.Synapse/privateLinkHubs/privateLinkHub1", + "name": "privateLinkHub1", + "type": "Microsoft.Synapse/privateLinkHubs", + "location": "East US", + "properties": { + "provisioningState": "Succeeded" + }, + "tags": { + "key": "value" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup1/providers/Microsoft.Synapse/privateLinkHubs/privateLinkHub2", + "name": "privateLinkHub2", + "type": "Microsoft.Synapse/privateLinkHubs", + "location": "East US", + "properties": { + "provisioningState": "Succeeded" + }, + "tags": { + "key": "value" + } + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListPrivateLinkResources.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListPrivateLinkResources.json new file mode 100644 index 000000000000..ed233b69cec6 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListPrivateLinkResources.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/privateLinkResources/sql", + "name": "sql", + "type": "Microsoft.Synapse/workspaces/privateLinkResources", + "properties": { + "groupId": "sql", + "requiredMembers": [ + "sql" + ], + "requiredZoneNames": [ + "privatelink.sql.azuresynapse.net" + ] + } + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListSqlPoolColumns.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListSqlPoolColumns.json new file mode 100644 index 000000000000..559d7979dbba --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListSqlPoolColumns.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "workspaceName": "serverName", + "sqlPoolName": "myDatabase", + "schemaName": "dbo", + "tableName": "table1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Synapse/workspaces/serverName/sqlPools/myDatabase/schemas/dbo/tables/table1/columns/col1", + "name": "col1", + "type": "Microsoft.Synapse/workspaces/sqlPools/schemas/tables/columns", + "properties": { + "columnType": "nvarchar" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Synapse/workspaces/serverName/sqlPools/myDatabase/schemas/dbo/tables/table1/columns/col2", + "name": "col2", + "type": "Microsoft.Synapse/workspaces/sqlPools/schemas/tables/columns", + "properties": { + "columnType": "bit" + } + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListSqlPoolOperations.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListSqlPoolOperations.json new file mode 100644 index 000000000000..6f43d02dfa9e --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListSqlPoolOperations.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "workspaceName": "sqlcrudtest-4645", + "sqlPoolName": "testdb", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Synapse/workspaces/sqlcrudtest-4645/sqlPools/testdb/operations/11111111-1111-1111-1111-111111111111", + "name": "11111111-1111-1111-1111-111111111111", + "type": "Microsoft.Synapse/workspaces/sqlPools/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.Synapse/workspaces/sqlcrudtest-4645/sqlPools/testdb/operations/55555555-5555-5555-5555-555555555555", + "name": "55555555-5555-5555-5555-555555555555", + "type": "Microsoft.Synapse/workspaces/sqlPools/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 + } + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListSqlPoolReplicationLinks.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListSqlPoolReplicationLinks.json new file mode 100644 index 000000000000..aa577b7ec3ad --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListSqlPoolReplicationLinks.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-4799", + "workspaceName": "sqlcrudtest-6440", + "sqlPoolName": "testdb", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-4799/providers/Microsoft.Synapse/workspaces/sqlcrudtest-6440/sqlPools/testdb/replicationLinks/5b301b68-03f6-4b26-b0f4-73ebb8634238", + "name": "5b301b68-03f6-4b26-b0f4-73ebb8634238", + "type": "Microsoft.Synapse/workspaces/sqlPools/replicationLinks", + "location": "Japan East", + "properties": { + "partnerServer": "sqlcrudtest-5961", + "partnerDatabase": "testdb", + "partnerLocation": "Japan East", + "role": "Secondary", + "partnerRole": "Primary", + "replicationMode": "ASYNC", + "startTime": "2017-02-10T01:44:27.117Z", + "percentComplete": 100, + "replicationState": "CATCH_UP", + "isTerminationAllowed": true + } + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListSqlPoolRestorePoints.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListSqlPoolRestorePoints.json new file mode 100644 index 000000000000..30c981af71ff --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListSqlPoolRestorePoints.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "location": "japaneast", + "workspaceName": "testserver", + "sqlPoolName": "testDatabase", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Synapse/workspaces/testserver/sqlPools/testDatabase/restorePoints/131546477590000000", + "name": "131546477590000000", + "type": "Microsoft.Synapse/workspaces/sqlPools/restorePoints", + "location": "japaneast", + "properties": { + "restorePointType": "DISCRETE", + "restorePointCreationDate": "2017-03-10T08:00:00.000Z", + "restorePointLabel": "mylabel1" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Synapse/workspaces/testserver/sqlPools/testDatabase/restorePoints/131553636140000000", + "name": "131553636140000000", + "type": "Microsoft.Synapse/workspaces/sqlPools/restorePoints", + "location": "japaneast", + "properties": { + "restorePointType": "DISCRETE", + "restorePointCreationDate": "2017-11-17T03:40:14Z", + "restorePointLabel": "mylabel2" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Synapse/workspaces/testserver/sqlPools/testDatabase/restorePoints/131553619750000000", + "name": "131553619750000000", + "type": "Microsoft.Synapse/workspaces/sqlPools/restorePoints", + "location": "japaneast", + "properties": { + "restorePointType": "DISCRETE", + "restorePointCreationDate": "2017-11-17T03:12:55Z" + } + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListSqlPoolSchema.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListSqlPoolSchema.json new file mode 100644 index 000000000000..a611ad81b100 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListSqlPoolSchema.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "workspaceName": "serverName", + "sqlPoolName": "myDatabase", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Synapse/workspaces/serverName/sqlPools/myDatabase/schemas/dbo", + "name": "dbo", + "type": "Microsoft.Synapse/workspaces/sqlPools/schemas" + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Synapse/workspaces/serverName/sqlPools/myDatabase/schemas/schema2", + "name": "schema2", + "type": "Microsoft.Synapse/workspaces/sqlPools/schemas" + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListSqlPoolSensitivityLabelsWithSourceRecommended.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListSqlPoolSensitivityLabelsWithSourceRecommended.json new file mode 100644 index 000000000000..b92385f0cc23 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListSqlPoolSensitivityLabelsWithSourceRecommended.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "workspaceName": "myServer", + "sqlPoolName": "myDatabase", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Synapse/workspaces/myServer/sqlPools/myDatabase/schemas/dbo/tables/myTable/columns/myColumn/sensitivityLabels/recommended", + "name": "recommended", + "type": "Microsoft.Synapse/workspaces/sqlPools/schemas/tables/columns/sensitivityLabels", + "properties": { + "informationType": "Financial", + "informationTypeId": "d22fa6e9-5ee4-3bde-4c2b-a409604c4646", + "labelId": "05e6eaa1-075a-4fb4-a732-a92215a2444a", + "labelName": "Sensitive" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Synapse/workspaces/myServer/sqlPools/myDatabase/schemas/dbo/tables/myTable/columns/myColumn2/sensitivityLabels/recommended", + "name": "recommended", + "type": "Microsoft.Synapse/workspaces/sqlPools/schemas/tables/columns/sensitivityLabels", + "properties": { + "informationType": "Email", + "informationTypeId": "d22fa6e9-5ee4-3bde-4c2b-a409604c4646", + "labelId": "bf91e08c-f4f0-478a-b016-25164b2a65ff", + "labelName": "PII" + } + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListSqlPoolTables.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListSqlPoolTables.json new file mode 100644 index 000000000000..48d8b38c5886 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListSqlPoolTables.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "workspaceName": "serverName", + "sqlPoolName": "myDatabase", + "schemaName": "dbo", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Synapse/workspaces/serverName/sqlPools/myDatabase/schemas/dbo/tables/table1", + "name": "table1", + "type": "Microsoft.Synapse/workspaces/sqlPools/schemas/tables" + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Synapse/workspaces/serverName/sqlPools/myDatabase/schemas/dbo/tables/table2", + "name": "table2", + "type": "Microsoft.Synapse/workspaces/sqlPools/schemas/tables" + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListSqlPoolVulnerabilityAssessmentScanRecords.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListSqlPoolVulnerabilityAssessmentScanRecords.json new file mode 100644 index 000000000000..e8023ec0901a --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListSqlPoolVulnerabilityAssessmentScanRecords.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityassessmenttest-4711", + "workspaceName": "vulnerabilityassessmenttest-6411", + "sqlPoolName": "testdb", + "vulnerabilityAssessmentName": "default", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityassessmenttest-4799/providers/Microsoft.Synapse/workspaces/vulnerabilityassessmenttest-6440/sqlPools/testdb/vulnerabilityAssessments/default/scans/scan001", + "name": "scan001", + "type": "Microsoft.Synapse/workspaces/sqlPools/vulnerabilityAssessments/scans", + "properties": { + "scanId": "scan001", + "triggerType": "OnDemand", + "state": "Passed", + "startTime": "2017-12-12T17:45:06Z", + "endTime": "2017-12-12T17:47:06Z", + "errors": [], + "numberOfFailedSecurityChecks": 9 + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityassessmenttest-4799/providers/Microsoft.Synapse/workspaces/vulnerabilityassessmenttest-6440/sqlPools/testdb/vulnerabilityAssessments/default/scans/scan002", + "name": "scan002", + "type": "Microsoft.Synapse/workspaces/sqlPools/vulnerabilityAssessments/scans", + "properties": { + "scanId": "scan002", + "triggerType": "Recurring", + "state": "Failed", + "startTime": "2017-12-12T17:45:06Z", + "endTime": "2017-12-12T17:47:06Z", + "errors": [], + "numberOfFailedSecurityChecks": 9 + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityassessmenttest-4799/providers/Microsoft.Synapse/workspaces/vulnerabilityassessmenttest-6440/sqlPools/testdb/vulnerabilityAssessments/default/scans/scan003", + "name": "scan003", + "type": "Microsoft.Synapse/workspaces/sqlPools/vulnerabilityAssessments/scans", + "properties": { + "scanId": "scan003", + "triggerType": "Recurring", + "state": "FailedToRun", + "startTime": "2017-12-12T17:45:06Z", + "endTime": "2017-12-12T17:47:06Z", + "errors": [ + { + "code": "StorageNotFound", + "message": "Storage not found" + } + ], + "numberOfFailedSecurityChecks": 0 + } + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListSqlPoolVulnerabilityAssessments.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListSqlPoolVulnerabilityAssessments.json new file mode 100644 index 000000000000..1a410035fb10 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListSqlPoolVulnerabilityAssessments.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityaseessmenttest-4799", + "workspaceName": "vulnerabilityaseessmenttest-6440", + "sqlPoolName": "testdb", + "vulnerabilityAssessmentName": "default", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Synapse/workspaces/vulnerabilityaseessmenttest-6440/sqlPools/testdb/vulnerabilityAssessments/default", + "name": "default", + "type": "Microsoft.Synapse/workspaces/sqlPools/vulnerabilityAssessments", + "properties": { + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": true, + "emails": [ + "email1@mail.com", + "email2@mail.com" + ] + } + } + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListSqlPoolsInWorkspace.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListSqlPoolsInWorkspace.json new file mode 100644 index 000000000000..e16b4536f16e --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListSqlPoolsInWorkspace.json @@ -0,0 +1,106 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-6845", + "workspaceName": "sqlcrudtest-7177", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6845/providers/Microsoft.Synapse/workspaces/sqlcrudtest-7177/sqlPools/master", + "name": "master", + "type": "Microsoft.Synapse/workspaces/sqlPools", + "location": "Japan East", + "properties": { + "status": "Online", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 32212254720, + "creationDate": "2017-02-10T00:59:33.483Z", + "provisioningState": "Succeeded", + "restorePointInTime": "0001-01-01T00:00:00Z", + "storageAccountType": "GRS" + }, + "sku": { + "name": "GP_Gen5_2" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6845/providers/Microsoft.Synapse/workspaces/sqlcrudtest-7177/sqlPools/sqlcrudtest-1142", + "name": "sqlcrudtest-1142", + "type": "Microsoft.Synapse/workspaces/sqlPools", + "location": "Japan East", + "properties": { + "status": "Online", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 268435456000, + "creationDate": "2017-02-10T01:03:34.04Z", + "provisioningState": "Succeeded", + "restorePointInTime": "0001-01-01T00:00:00Z", + "storageAccountType": "GRS" + }, + "sku": { + "name": "DW100c" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6845/providers/Microsoft.Synapse/workspaces/sqlcrudtest-7177/sqlPools/sqlcrudtest-2788", + "name": "sqlcrudtest-2788", + "type": "Microsoft.Synapse/workspaces/sqlPools", + "location": "Japan East", + "properties": { + "status": "Online", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 268435456000, + "creationDate": "2017-02-10T01:00:21.067Z", + "provisioningState": "Succeeded", + "restorePointInTime": "0001-01-01T00:00:00Z", + "storageAccountType": "GRS" + }, + "sku": { + "name": "DW100c" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6845/providers/Microsoft.Synapse/workspaces/sqlcrudtest-7177/sqlPools/sqlcrudtest-6877", + "name": "sqlcrudtest-6877", + "type": "Microsoft.Synapse/workspaces/sqlPools", + "location": "Southeast Asia", + "properties": { + "status": "Online", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 268435456000, + "creationDate": "2017-02-10T01:02:28.853Z", + "provisioningState": "Succeeded", + "restorePointInTime": "0001-01-01T00:00:00Z", + "storageAccountType": "LRS" + }, + "sku": { + "name": "DW100c" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6845/providers/Microsoft.Synapse/workspaces/sqlcrudtest-7177/sqlPools/sqlcrudtest-9888", + "name": "sqlcrudtest-9888", + "type": "Microsoft.Synapse/workspaces/sqlPools", + "location": "Japan East", + "properties": { + "status": "Online", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 268435456000, + "creationDate": "2017-02-10T01:01:25.347Z", + "provisioningState": "Succeeded", + "restorePointInTime": "0001-01-01T00:00:00Z", + "storageAccountType": "GRS" + }, + "sku": { + "name": "DW100c" + } + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListSqlPoolsInWorkspaceWithFilter.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListSqlPoolsInWorkspaceWithFilter.json new file mode 100644 index 000000000000..c0f8cd042073 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListSqlPoolsInWorkspaceWithFilter.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-6845", + "workspaceName": "sqlcrudtest-7177", + "api-version": "2021-04-01-preview", + "$filter": "properties/edition eq 'System'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6845/providers/Microsoft.Synapse/workspaces/sqlcrudtest-7177/sqlPools/master", + "name": "master", + "type": "Microsoft.Synapse/workspaces/sqlPools", + "location": "Japan East", + "properties": { + "status": "Online", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 32212254720, + "creationDate": "2017-02-10T00:59:33.483Z", + "provisioningState": "Succeeded", + "restorePointInTime": "0001-01-01T00:00:00Z", + "storageAccountType": "GRS" + }, + "sku": { + "name": "GP_Gen5_2" + } + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListSqlPoolsSensitivityLabelsWithSourceCurrent.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListSqlPoolsSensitivityLabelsWithSourceCurrent.json new file mode 100644 index 000000000000..67bf049b9160 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListSqlPoolsSensitivityLabelsWithSourceCurrent.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "workspaceName": "myServer", + "sqlPoolName": "myDatabase", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Synapse/workspaces/myServer/sqlPools/myDatabase/schemas/dbo/tables/myTable/columns/myColumn3/sensitivityLabels/current", + "name": "current", + "type": "Microsoft.Synapse/workspaces/sqlPools/schemas/tables/columns/sensitivityLabels", + "properties": { + "informationType": "Financial", + "informationTypeId": "d22fa6e9-5ee4-3bde-4c2b-a409604c4646", + "labelId": "05e6eaa1-075a-4fb4-a732-a92215a2444a", + "labelName": "Sensitive" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Synapse/workspaces/myServer/sqlPools/myDatabase/schemas/dbo/tables/myTable/columns/myColumn4/sensitivityLabels/current", + "name": "current", + "type": "Microsoft.Synapse/workspaces/sqlPools/schemas/tables/columns/sensitivityLabels", + "properties": { + "informationType": "Email", + "informationTypeId": "d22fa6e9-5ee4-3bde-4c2b-a409604c4646", + "labelId": "bf91e08c-f4f0-478a-b016-25164b2a65ff", + "labelName": "PII" + } + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListWorkspaceManagedSqlServerBlobAuditingSettings.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListWorkspaceManagedSqlServerBlobAuditingSettings.json new file mode 100644 index 000000000000..9c12bf554506 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListWorkspaceManagedSqlServerBlobAuditingSettings.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "wsg-7398", + "workspaceName": "testWorkspace", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/wsg-7398/providers/Microsoft.Synapse/workspaces/testWorkspace/auditingSettings/default", + "name": "default", + "type": "Microsoft.Synapse/workspaces/auditingSettings", + "properties": { + "state": "Disabled", + "storageEndpoint": "", + "retentionDays": 0, + "auditActionsAndGroups": [], + "storageAccountSubscriptionId": "00000000-0000-0000-0000-000000000000", + "isStorageSecondaryKeyInUse": false, + "isAzureMonitorTargetEnabled": false + } + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListWorkspaceManagedSqlServerExtendedBlobAuditingSettings.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListWorkspaceManagedSqlServerExtendedBlobAuditingSettings.json new file mode 100644 index 000000000000..e90fd14e2139 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListWorkspaceManagedSqlServerExtendedBlobAuditingSettings.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "wsg-7398", + "workspaceName": "testWorkspace", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/wsg-7398/providers/Microsoft.Synapse/workspaces/testWorkspace/extendedAuditingSettings/default", + "name": "default", + "type": "Microsoft.Synapse/workspaces/extendedAuditingSettings", + "properties": { + "state": "Disabled", + "storageEndpoint": "", + "retentionDays": 0, + "auditActionsAndGroups": [], + "storageAccountSubscriptionId": "00000000-0000-0000-0000-000000000000", + "isStorageSecondaryKeyInUse": false, + "predicateExpression": "object_name = 'SensitiveData'", + "isAzureMonitorTargetEnabled": false + } + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListWorkspaceManagedSqlServerRecoverableSqlPool.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListWorkspaceManagedSqlServerRecoverableSqlPool.json new file mode 100644 index 000000000000..340474645c35 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListWorkspaceManagedSqlServerRecoverableSqlPool.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "wsg-7398", + "workspaceName": "testWorkspace", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/wsg-7398/providers/Microsoft.Synapse/workspaces/testWorkspace/recoverableSqlpools/recoverableSqlpools-1235", + "name": "recoverableSqlpools-1235", + "type": "Microsoft.Synapse/workspaces/recoverableSqlpools", + "properties": { + "edition": "Standard", + "serviceLevelObjective": "S0", + "lastAvailableBackupDate": "2017-05-26T01:06:29.78Z", + "elasticPoolName": null + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/wsg-7398/providers/Microsoft.Synapse/workspaces/testWorkspace/recoverableSqlpools/recoverableSqlpools-9231", + "name": "recoverableSqlpools-9231", + "type": "Microsoft.Synapse/workspaces/recoverableSqlpools", + "properties": { + "edition": "Premium", + "serviceLevelObjective": "P1", + "lastAvailableBackupDate": "2017-05-26T03:20:31.78Z", + "elasticPoolName": null + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/wsg-7398/providers/Microsoft.Synapse/workspaces/testWorkspace/recoverableSqlpools/recoverableSqlpools-0342", + "name": "recoverableSqlpools-0342", + "type": "Microsoft.Synapse/workspaces/recoverableSqlpools", + "properties": { + "edition": "Basic", + "serviceLevelObjective": "Basic", + "lastAvailableBackupDate": "2017-05-24T02:06:18.78Z", + "elasticPoolName": null + } + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListWorkspaceManagedSqlServerSecurityAlertPolicies.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListWorkspaceManagedSqlServerSecurityAlertPolicies.json new file mode 100644 index 000000000000..b16e87437a75 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListWorkspaceManagedSqlServerSecurityAlertPolicies.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "wsg-7398", + "workspaceName": "testWorkspace", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/wsg-7398/providers/Microsoft.Synapse/workspaces/testWorkspace/securityAlertPolicies", + "name": "Default", + "type": "Microsoft.Synapse/workspaces/securityAlertPolicies", + "properties": { + "state": "Disabled", + "emailAccountAdmins": true, + "emailAddresses": [ + "test@microsoft.com;user@microsoft.com" + ], + "disabledAlerts": [ + "Access_Anomaly" + ], + "creationTime": "2020-10-23T04:52:49.52Z", + "retentionDays": 0, + "storageAccountAccessKey": "", + "storageEndpoint": "https://mystorage.blob.core.windows.net" + } + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListWorkspaceManagedSqlServerUsages.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListWorkspaceManagedSqlServerUsages.json new file mode 100644 index 000000000000..4d07f42d85a0 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListWorkspaceManagedSqlServerUsages.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "wsg-7398", + "workspaceName": "testWorkspace", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "server_dtu_quota", + "resourceName": "testWorkspace", + "displayName": "Database Throughput Unit Quota", + "currentValue": 0, + "limit": 45000, + "unit": "DTUs", + "nextResetTime": null + }, + { + "name": "server_dtu_quota_current", + "resourceName": "testWorkspace", + "displayName": "Database Throughput Unit Quota", + "currentValue": 0, + "limit": 45000, + "unit": "DTUs", + "nextResetTime": null + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListWorkspaceManagedSqlServerVulnerabilityAssessmentPolicies.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListWorkspaceManagedSqlServerVulnerabilityAssessmentPolicies.json new file mode 100644 index 000000000000..47b549916cb5 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListWorkspaceManagedSqlServerVulnerabilityAssessmentPolicies.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "wsg-7398", + "workspaceName": "testWorkspace", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/wsg-7398/providers/Microsoft.Synapse/workspaces/testWorkspace/vulnerabilityAssessments/default", + "name": "default", + "type": "Microsoft.Synapse/workspaces/vulnerabilityAssessments", + "properties": { + "storageContainerPath": "https://myStorage.blob.core.windows.net/vulnerability-assessment/", + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": true, + "emails": [ + "email1@mail.com", + "email2@mail.com" + ] + } + } + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListWorkspacesInResourceGroup.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListWorkspacesInResourceGroup.json new file mode 100644 index 000000000000..644024f8fc97 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListWorkspacesInResourceGroup.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup1/providers/Microsoft.Synapse/workspaces/workspace1", + "name": "workspace1", + "type": "Microsoft.Synapse/workspaces", + "location": "East US", + "properties": { + "defaultDataLakeStorage": { + "accountUrl": "https://accountname.dfs.core.windows.net", + "filesystem": "default" + }, + "connectivityEndpoints": { + "dev": "workspace1.dev.projectarcadia.net", + "sql": "workspace1.sql.projectarcadia.net" + }, + "sqlAdministratorLogin": "login", + "sqlAdministratorLoginPassword": "password", + "managedResourceGroupName": "resourceGroup2", + "provisioningState": "Succeeded" + }, + "tags": { + "key": "value" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup1/providers/Microsoft.Synapse/workspaces/workspace2", + "name": "workspace2", + "type": "Microsoft.Synapse/workspaces", + "location": "East US", + "properties": { + "defaultDataLakeStorage": { + "accountUrl": "https://accountname.dfs.core.windows.net", + "filesystem": "default" + }, + "connectivityEndpoints": { + "dev": "workspace2.dev.projectarcadia.net", + "sql": "workspace2.sql.projectarcadia.net" + }, + "sqlAdministratorLogin": "login", + "sqlAdministratorLoginPassword": "password", + "managedResourceGroupName": "resourceGroup2", + "provisioningState": "Succeeded" + }, + "tags": { + "key": "value" + } + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListWorkspacesInSubscription.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListWorkspacesInSubscription.json new file mode 100644 index 000000000000..7af5e650da7e --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ListWorkspacesInSubscription.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup1/providers/Microsoft.Synapse/workspaces/workspace1", + "name": "workspace1", + "type": "Microsoft.Synapse/workspaces", + "location": "East US", + "properties": { + "defaultDataLakeStorage": { + "accountUrl": "https://accountname.dfs.core.windows.net", + "filesystem": "default" + }, + "connectivityEndpoints": { + "dev": "workspace1.dev.projectarcadia.net", + "sql": "workspace1.sql.projectarcadia.net" + }, + "sqlAdministratorLogin": "login", + "managedResourceGroupName": "resourceGroup2", + "provisioningState": "Succeeded", + "workspaceUID": "999b999q-b888-4b44-bacd-2c222cc2222d" + }, + "tags": { + "key": "value" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup1/providers/Microsoft.Synapse/workspaces/workspace2", + "name": "workspace2", + "type": "Microsoft.Synapse/workspaces", + "location": "East US", + "properties": { + "defaultDataLakeStorage": { + "accountUrl": "https://accountname.dfs.core.windows.net", + "filesystem": "default" + }, + "connectivityEndpoints": { + "dev": "workspace2.dev.projectarcadia.net", + "sql": "workspace2.sql.projectarcadia.net" + }, + "sqlAdministratorLogin": "login", + "managedResourceGroupName": "resourceGroup2", + "provisioningState": "Succeeded", + "workspaceUID": "999b999q-b888-4b44-bacd-2c222cc2222d" + }, + "tags": { + "key": "value" + } + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/PauseSqlPool.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/PauseSqlPool.json new file mode 100644 index 000000000000..3a4a397c12ff --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/PauseSqlPool.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "workspaceName": "testsvr", + "sqlPoolName": "testdwdb", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "tags": { + "tagKey1": "TagValue1" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Synapse/workspaces/testsvr/sqlPools/testdwdb", + "name": "testdwdb", + "type": "Microsoft.Synapse/workspaces/sqlPools", + "location": "Japan East", + "properties": { + "status": "Online", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 268435456000, + "creationDate": "2017-02-10T00:56:19.2Z", + "provisioningState": "Succeeded", + "restorePointInTime": "0001-01-01T00:00:00Z" + }, + "sku": { + "name": "DW100c" + } + } + }, + "202": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/PrivateEndpointConnectionsPrivateLinkHub_Get.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/PrivateEndpointConnectionsPrivateLinkHub_Get.json new file mode 100644 index 000000000000..06fa8e6a2b6a --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/PrivateEndpointConnectionsPrivateLinkHub_Get.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "48b08652-d7a1-4d52-b13f-5a2471dce57b", + "resourceGroupName": "gh-res-grp", + "privateLinkHubName": "pe0", + "privateEndpointConnectionName": "pe0-f3ed30f5-338c-4855-a542-24a403694ad2", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "name": "pe0-f3ed30f5-338c-4855-a542-24a403694ad2", + "type": "Microsoft.Synapse/privateLinkHubs/privateEndpointConnections", + "id": "/subscriptions/48b08652-d7a1-4d52-b13f-5a2471dce57b/resourceGroups/gh-res-grp/providers/Microsoft.Synapse/privateLinkHubs/plh900/privateEndpointConnections/pe0-f3ed30f5-338c-4855-a542-24a403694ad2", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/48b08652-d7a1-4d52-b13f-5a2471dce57b/resourceGroups/gh-res-grp/providers/Microsoft.Network/privateEndpoints/pe0" + }, + "privateLinkServiceConnectionState": { + "status": "Approved" + } + } + } + }, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/PrivateEndpointConnectionsPrivateLinkHub_List.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/PrivateEndpointConnectionsPrivateLinkHub_List.json new file mode 100644 index 000000000000..65b19e781834 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/PrivateEndpointConnectionsPrivateLinkHub_List.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "48b08652-d7a1-4d52-b13f-5a2471dce57b", + "resourceGroupName": "gh-res-grp", + "privateLinkHubName": "pe0", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "pe0-f3ed30f5-338c-4855-a542-24a403694ad2", + "type": "Microsoft.Synapse/privateLinkHubs/privateEndpointConnections", + "id": "/subscriptions/48b08652-d7a1-4d52-b13f-5a2471dce57b/resourceGroups/gh-res-grp/providers/Microsoft.Synapse/privateLinkHubs/plh900/privateEndpointConnections/pe0-f3ed30f5-338c-4855-a542-24a403694ad2", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/48b08652-d7a1-4d52-b13f-5a2471dce57b/resourceGroups/gh-res-grp/providers/Microsoft.Network/privateEndpoints/pe0" + }, + "privateLinkServiceConnectionState": { + "status": "Approved" + } + } + }, + { + "name": "pe-xbox-3e425dc3-edd9-434c-9bca-3ac6cecbc7e4", + "type": "Microsoft.Synapse/privateLinkHubs/privateEndpointConnections", + "id": "/subscriptions/48b08652-d7a1-4d52-b13f-5a2471dce57b/resourceGroups/gh-res-grp/providers/Microsoft.Synapse/privateLinkHubs/plh900/privateEndpointConnections/pe-xbox-3e425dc3-edd9-434c-9bca-3ac6cecbc7e4", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/48b08652-d7a1-4d52-b13f-5a2471dce57b/resourceGroups/gh-res-grp/providers/Microsoft.Network/privateEndpoints/pe-xbox" + }, + "privateLinkServiceConnectionState": { + "status": "Approved" + } + } + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/PutWorkspaceManagedSqlServerVulnerabilityAssessmentWithAllParameters.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/PutWorkspaceManagedSqlServerVulnerabilityAssessmentWithAllParameters.json new file mode 100644 index 000000000000..7d9e17b52970 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/PutWorkspaceManagedSqlServerVulnerabilityAssessmentWithAllParameters.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "wsg-7398", + "workspaceName": "testWorkspace", + "vulnerabilityAssessmentName": "default", + "api-version": "2021-04-01-preview", + "parameters": { + "properties": { + "storageContainerPath": "https://myStorage.blob.core.windows.net/vulnerability-assessment/", + "storageContainerSasKey": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX", + "storageAccountAccessKey": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX", + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": true, + "emails": [ + "email1@mail.com", + "email2@mail.com" + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/wsg-7398/providers/Microsoft.Synapse/workspaces/testWorkspace/vulnerabilityAssessments/default", + "name": "default", + "type": "Microsoft.Synapse/workspaces/vulnerabilityAssessments", + "properties": { + "storageContainerPath": "https://myStorage.blob.core.windows.net/vulnerability-assessment/", + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": true, + "emails": [ + "email1@mail.com", + "email2@mail.com" + ] + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/wsg-7398/providers/Microsoft.Synapse/workspaces/testWorkspace/vulnerabilityAssessments/default", + "name": "default", + "type": "Microsoft.Synapse/workspaces/vulnerabilityAssessments", + "properties": { + "storageContainerPath": "https://myStorage.blob.core.windows.net/vulnerability-assessment/", + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": true, + "emails": [ + "email1@mail.com", + "email2@mail.com" + ] + } + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/PutWorkspaceMangedSqlServerVulnerabilityAssessmentCreateContainerSasKeyMin.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/PutWorkspaceMangedSqlServerVulnerabilityAssessmentCreateContainerSasKeyMin.json new file mode 100644 index 000000000000..4f2669200c30 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/PutWorkspaceMangedSqlServerVulnerabilityAssessmentCreateContainerSasKeyMin.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "wsg-7398", + "workspaceName": "testWorkspace", + "vulnerabilityAssessmentName": "default", + "api-version": "2021-04-01-preview", + "parameters": { + "properties": { + "storageContainerPath": "https://myStorage.blob.core.windows.net/vulnerability-assessment/", + "storageContainerSasKey": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/wsg-7398/providers/Microsoft.Synapse/workspaces/testWorkspace/vulnerabilityAssessments/default", + "name": "default", + "type": "Microsoft.Synapse/workspaces/vulnerabilityAssessments", + "properties": { + "storageContainerPath": "https://myStorage.blob.core.windows.net/vulnerability-assessment/", + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": false, + "emails": [] + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/wsg-7398/providers/Microsoft.Synapse/workspaces/testWorkspace/vulnerabilityAssessments/default", + "name": "default", + "type": "Microsoft.Synapse/workspaces/vulnerabilityAssessments", + "properties": { + "storageContainerPath": "https://myStorage.blob.core.windows.net/vulnerability-assessment/", + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": false, + "emails": [] + } + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/PutWorkspaceMangedSqlServerVulnerabilityAssessmentCreateStorageAccessKeyMin.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/PutWorkspaceMangedSqlServerVulnerabilityAssessmentCreateStorageAccessKeyMin.json new file mode 100644 index 000000000000..b9c50d3c6ca0 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/PutWorkspaceMangedSqlServerVulnerabilityAssessmentCreateStorageAccessKeyMin.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "wsg-7398", + "workspaceName": "testWorkspace", + "vulnerabilityAssessmentName": "default", + "api-version": "2021-04-01-preview", + "parameters": { + "properties": { + "storageContainerPath": "https://myStorage.blob.core.windows.net/vulnerability-assessment/", + "storageAccountAccessKey": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/wsg-7398/providers/Microsoft.Synapse/workspaces/testWorkspace/vulnerabilityAssessments/default", + "name": "default", + "type": "Microsoft.Synapse/workspaces/vulnerabilityAssessments", + "properties": { + "storageContainerPath": "https://myStorage.blob.core.windows.net/vulnerability-assessment/", + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": false, + "emails": [] + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/wsg-7398/providers/Microsoft.Synapse/workspaces/testWorkspace/vulnerabilityAssessments/default", + "name": "default", + "type": "Microsoft.Synapse/workspaces/vulnerabilityAssessments", + "properties": { + "storageContainerPath": "https://myStorage.blob.core.windows.net/vulnerability-assessment/", + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": false, + "emails": [] + } + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/RecommendedColumnSensitivityLabelDisable.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/RecommendedColumnSensitivityLabelDisable.json new file mode 100644 index 000000000000..90708e11698a --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/RecommendedColumnSensitivityLabelDisable.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "workspaceName": "myServer", + "sqlPoolName": "myDatabase", + "schemaName": "dbo", + "tableName": "myTable", + "columnName": "myColumn", + "sensitivityLabelSource": "recommended", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/RecommendedColumnSensitivityLabelEnable.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/RecommendedColumnSensitivityLabelEnable.json new file mode 100644 index 000000000000..90708e11698a --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/RecommendedColumnSensitivityLabelEnable.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "workspaceName": "myServer", + "sqlPoolName": "myDatabase", + "schemaName": "dbo", + "tableName": "myTable", + "columnName": "myColumn", + "sensitivityLabelSource": "recommended", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/RenameSqlPool.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/RenameSqlPool.json new file mode 100644 index 000000000000..e1dae41e3ce8 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/RenameSqlPool.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "workspaceName": "testsvr", + "sqlPoolName": "testdb", + "api-version": "2021-04-01-preview", + "parameters": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Synapse/workspaces/testsvr/sqlPools/newtestdb" + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ReplaceAllIpFirewallRules.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ReplaceAllIpFirewallRules.json new file mode 100644 index 000000000000..21bb764f3380 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ReplaceAllIpFirewallRules.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "api-version": "2021-04-01-preview", + "request": { + "ipFirewallRules": { + "ExampleFirewallRule": { + "startIpAddress": "10.0.0.0", + "endIpAddress": "10.0.0.254" + }, + "AnotherExampleFirewallRule": { + "startIpAddress": "10.0.1.0", + "endIpAddress": "10.0.1.254" + } + } + } + }, + "responses": { + "200": { + "body": { + "operationId": "00000000-1111-4444-2222-333333333333" + } + }, + "202": {}, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/RestorableDroppedSqlPoolGet.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/RestorableDroppedSqlPoolGet.json new file mode 100644 index 000000000000..e2d20025efd7 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/RestorableDroppedSqlPoolGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "restorabledroppeddatabasetest-1257", + "workspaceName": "restorabledroppeddatabasetest-2389", + "restorableDroppedSqlPoolId": "restorabledroppeddatabasetest-7654,131403269876900000", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/restorabledroppeddatabasetest-1257/providers/Microsoft.Synapse/workspaces/restorabledroppeddatabasetest-2389/restorableDroppedSqlPools/restorabledroppeddatabasetest-7654,131403269876900000", + "name": "restorabledroppeddatabasetest-7654,131403269876900000", + "type": "Microsoft.Synapse/workspaces/restorableDroppedSqlPools", + "location": "Japan East", + "properties": { + "databaseName": "restorabledroppeddatabasetest-7654", + "edition": "Datawarehouse", + "maxSizeBytes": "2147483648", + "serviceLevelObjective": "DW100c", + "elasticPoolName": null, + "creationDate": "2017-02-10T00:56:19.2Z", + "deletionDate": "2017-05-27T02:49:47.69Z", + "earliestRestoreDate": "2017-05-20T02:49:47.69Z" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/RestorableDroppedSqlpoolList.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/RestorableDroppedSqlpoolList.json new file mode 100644 index 000000000000..57917ee5f28e --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/RestorableDroppedSqlpoolList.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "restorabledroppeddatabasetest-1349", + "workspaceName": "restorabledroppeddatabasetest-1840", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/restorabledroppeddatabasetest-1349/providers/Microsoft.Synapse/workspaces/restorabledroppeddatabasetest-1840/restorableDroppedSqlPools/restorabledroppeddatabasetest-1345,131403269876900000", + "name": "restorabledroppeddatabasetest-1345,131403269876900000", + "type": "Microsoft.Synapse/workspaces/restorableDroppedSqlPools", + "location": "Japan East", + "properties": { + "databaseName": "restorabledroppeddatabasetest-1345", + "edition": "Basic", + "maxSizeBytes": "2147483648", + "serviceLevelObjective": "Basic", + "elasticPoolName": null, + "creationDate": "2017-02-10T00:56:19.2Z", + "deletionDate": "2017-05-27T02:49:47.69Z", + "earliestRestoreDate": "2017-05-20T02:49:47.69Z" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/restorabledroppeddatabasetest-1349/providers/Microsoft.Synapse/workspaces/restorabledroppeddatabasetest-1840/restorableDroppedSqlPools/restorabledroppeddatabasetest-2764,131403249684030000", + "name": "restorabledroppeddatabasetest-2764,131403249684030000", + "type": "Microsoft.Synapse/workspaces/restorableDroppedSqlPools", + "location": "Japan East", + "properties": { + "databaseName": "restorabledroppeddatabasetest-2764", + "edition": "Standard", + "maxSizeBytes": "268435456000", + "serviceLevelObjective": "S0", + "elasticPoolName": null, + "creationDate": "2016-05-10T00:56:19.2Z", + "deletionDate": "2017-05-27T02:16:08.403Z", + "earliestRestoreDate": "2017-04-21T02:49:47.69Z" + } + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ResumeSqlPool.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ResumeSqlPool.json new file mode 100644 index 000000000000..4c6edeb1a02b --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/ResumeSqlPool.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "sqlcrudtest-6852", + "workspaceName": "sqlcrudtest-2080", + "sqlPoolName": "sqlcrudtest-9187", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "tags": { + "tagKey1": "TagValue1" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Synapse/workspaces/sqlcrudtest-2080/sqlPools/sqlcrudtest-9187", + "name": "sqlcrudtest-9187", + "type": "Microsoft.Synapse/workspaces/sqlPools", + "location": "Japan East", + "properties": { + "status": "Online", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 268435456000, + "creationDate": "2017-02-10T00:56:19.2Z", + "provisioningState": "Succeeded", + "restorePointInTime": "0001-01-01T00:00:00Z" + }, + "sku": { + "name": "DW100c" + } + } + }, + "202": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/SensitivityLabelsCurrentUpdate.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/SensitivityLabelsCurrentUpdate.json new file mode 100644 index 000000000000..3b0031d037a6 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/SensitivityLabelsCurrentUpdate.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "workspaceName": "myWorkspace", + "sqlPoolName": "mySqlPool", + "api-version": "2021-04-01-preview", + "parameters": { + "operations": [ + { + "properties": { + "op": "set", + "schema": "dbo", + "table": "table1", + "column": "column1", + "sensitivityLabel": { + "properties": { + "labelName": "Highly Confidential", + "labelId": "3A477B16-9423-432B-AA97-6069B481CEC3", + "informationType": "Financial", + "informationTypeId": "1D3652D6-422C-4115-82F1-65DAEBC665C8", + "rank": "Low" + } + } + } + }, + { + "properties": { + "op": "set", + "schema": "dbo", + "table": "table2", + "column": "column2", + "sensitivityLabel": { + "properties": { + "informationType": "PhoneNumber", + "informationTypeId": "d22fa6e9-5ee4-3bde-4c2b-a409604c4646", + "labelId": "bf91e08c-f4f0-478a-b016-25164b2a65ff", + "labelName": "PII", + "rank": "Critical" + } + } + } + }, + { + "properties": { + "op": "remove", + "schema": "dbo", + "table": "Table1", + "column": "Column3" + } + } + ] + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/SensitivityLabelsRecommendedUpdate.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/SensitivityLabelsRecommendedUpdate.json new file mode 100644 index 000000000000..45136aa7866e --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/SensitivityLabelsRecommendedUpdate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "workspaceName": "myWorkspace", + "sqlPoolName": "mySqlPool", + "api-version": "2021-04-01-preview", + "parameters": { + "operations": [ + { + "properties": { + "op": "enable", + "schema": "dbo", + "table": "table1", + "column": "column1" + } + }, + { + "properties": { + "op": "enable", + "schema": "dbo", + "table": "table2", + "column": "column2" + } + }, + { + "properties": { + "op": "disable", + "schema": "dbo", + "table": "table1", + "column": "column3" + } + } + ] + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/SqlPoolAuditingSettingsList.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/SqlPoolAuditingSettingsList.json new file mode 100644 index 000000000000..86d437811ba7 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/SqlPoolAuditingSettingsList.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "blobauditingtest-6852", + "workspaceName": "blobauditingtest-2080", + "sqlPoolName": "testdb", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-6852/providers/Microsoft.Synapse/workspaces/blobauditingtest-2080/sqlPools/testdb", + "name": "default", + "type": "Microsoft.Synapse/workspaces/sqlPools/auditingSettings", + "kind": "V12", + "properties": { + "state": "Disabled", + "storageEndpoint": "", + "retentionDays": 0, + "auditActionsAndGroups": [], + "storageAccountSubscriptionId": "00000000-0000-0000-0000-000000000000", + "isStorageSecondaryKeyInUse": false, + "isAzureMonitorTargetEnabled": false + } + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/SqlPoolColumnGet.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/SqlPoolColumnGet.json new file mode 100644 index 000000000000..1f59e801333e --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/SqlPoolColumnGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "workspaceName": "serverName", + "sqlPoolName": "myDatabase", + "schemaName": "dbo", + "tableName": "table1", + "columnName": "column1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Synapse/workspaces/serverName/sqlPools/myDatabase/schemas/dbo/tables/table1/columns/column1", + "name": "column1", + "type": "Microsoft.Synapse/workspaces/sqlPools/schemas/tables/columns", + "properties": { + "columnType": "bit" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/SqlPoolExtendedAuditingSettingsList.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/SqlPoolExtendedAuditingSettingsList.json new file mode 100644 index 000000000000..c667921f95cf --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/SqlPoolExtendedAuditingSettingsList.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "blobauditingtest-6852", + "workspaceName": "blobauditingtest-2080", + "sqlPoolName": "testdb", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-6852/providers/Microsoft.Synapse/workspaces/blobauditingtest-2080/sqlPools/testdb/extendedAuditingSettings/default", + "name": "default", + "type": "Microsoft.Synapse/workspaces/sqlPools/extendedAuditingSettings", + "properties": { + "state": "Disabled", + "storageEndpoint": "", + "retentionDays": 0, + "auditActionsAndGroups": [], + "storageAccountSubscriptionId": "00000000-0000-0000-0000-000000000000", + "isStorageSecondaryKeyInUse": false, + "predicateExpression": "statement = 'select 1'", + "isAzureMonitorTargetEnabled": false + } + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/SqlPoolGeoBackupPolicies_List.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/SqlPoolGeoBackupPolicies_List.json new file mode 100644 index 000000000000..1d8da87aaf3b --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/SqlPoolGeoBackupPolicies_List.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-4799", + "workspaceName": "sqlcrudtest-5961", + "sqlPoolName": "testdw", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-4799/providers/Microsoft.Synapse/workspaces/sqlcrudtest-5961/sqlPools/testdw/geoBackupPolicies/Default", + "name": "Default", + "type": "Microsoft.Synapse/workspaces/sqlPools/geoBackupPolicies", + "location": "Central US", + "kind": null, + "properties": { + "state": "Enabled", + "storageType": "Premium" + } + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/SqlPoolReplicationLinks_GetByName.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/SqlPoolReplicationLinks_GetByName.json new file mode 100644 index 000000000000..f4a9659daee1 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/SqlPoolReplicationLinks_GetByName.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-4799", + "workspaceName": "sqlcrudtest-6440", + "sqlPoolName": "testdb", + "linkId": "5b301b68-03f6-4b26-b0f4-73ebb8634238", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-4799/providers/Microsoft.Synapse/workspaces/sqlcrudtest-6440/sqlPools/testdb/replicationLinks/5b301b68-03f6-4b26-b0f4-73ebb8634238", + "name": "5b301b68-03f6-4b26-b0f4-73ebb8634238", + "type": "Microsoft.Synapse/workspaces/sqlPools/replicationLinks", + "location": "Japan East", + "properties": { + "partnerServer": "sqlcrudtest-5961", + "partnerDatabase": "testdb", + "partnerLocation": "Japan East", + "role": "Secondary", + "partnerRole": "Primary", + "replicationMode": "ASYNC", + "startTime": "2017-02-10T01:44:27.117Z", + "percentComplete": 100, + "replicationState": "CATCH_UP", + "isTerminationAllowed": true + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/SqlPoolRestorePointsDelete.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/SqlPoolRestorePointsDelete.json new file mode 100644 index 000000000000..f8906aa45e66 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/SqlPoolRestorePointsDelete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "restorePointName": "131546477590000000", + "location": "japaneast", + "workspaceName": "testws", + "sqlPoolName": "testpool", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/SqlPoolRestorePointsGet.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/SqlPoolRestorePointsGet.json new file mode 100644 index 000000000000..f0c41facf7f1 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/SqlPoolRestorePointsGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "restorePointName": "131546477590000000", + "location": "japaneast", + "workspaceName": "testws", + "sqlPoolName": "testpool", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Synapse/workspaces/testws/sqlPools/testpool/restorePoints/131546477590000000", + "name": "131546477590000000", + "type": "Microsoft.Synapse/workspaces/sqlPools/restorePoints", + "location": "japaneast", + "properties": { + "restorePointType": "DISCRETE", + "restorePointCreationDate": "2017-03-10T08:00:00.000Z", + "restorePointLabel": "mylabel" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/SqlPoolSchemaGet.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/SqlPoolSchemaGet.json new file mode 100644 index 000000000000..c240ee31d0a7 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/SqlPoolSchemaGet.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "workspaceName": "serverName", + "sqlPoolName": "myDatabase", + "schemaName": "dbo", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Synapse/workspaces/serverName/sqlPools/myDatabase/schemas/dbo", + "name": "dbo", + "type": "Microsoft.Synapse/workspaces/sqlPools/schemas" + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/SqlPoolSecurityAlertPolicies_List.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/SqlPoolSecurityAlertPolicies_List.json new file mode 100644 index 000000000000..755d1dfbc6ba --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/SqlPoolSecurityAlertPolicies_List.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "securityalert-6852", + "workspaceName": "securityalert-2080", + "sqlPoolName": "testdb", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/securityalert-6852/providers/Microsoft.Synapse/workspaces/securityalert-2080/sqlPools/testdb", + "name": "default", + "type": "Microsoft.Synapse/workspaces/sqlPools/securityAlertPolicies", + "properties": { + "state": "Enabled", + "emailAccountAdmins": true, + "emailAddresses": [ + "test@microsoft.com", + "user@microsoft.com" + ], + "disabledAlerts": [ + "Usage_Anomaly" + ], + "retentionDays": 0, + "storageAccountAccessKey": "", + "creationTime": "2018-10-08T00:00:00Z" + } + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/SqlPoolTableGet.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/SqlPoolTableGet.json new file mode 100644 index 000000000000..cb4db1cf70bc --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/SqlPoolTableGet.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "workspaceName": "serverName", + "sqlPoolName": "myDatabase", + "schemaName": "dbo", + "tableName": "table1", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Synapse/workspaces/serverName/sqlPools/myDatabase/schemas/dbo/tables/table1", + "name": "table1", + "type": "Microsoft.Synapse/workspaces/sqlPools/schemas/tables" + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/SqlPoolUsageMetricsList.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/SqlPoolUsageMetricsList.json new file mode 100644 index 000000000000..a094350fc2c2 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/SqlPoolUsageMetricsList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-6730", + "workspaceName": "sqlcrudtest-9007", + "sqlPoolName": "3481", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "database_size", + "resourceName": "3481", + "displayName": "Database Size", + "currentValue": 4194304, + "limit": 268435456000, + "unit": "Bytes", + "nextResetTime": null + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/SqlPoolVulnerabilityAssessmentRuleBaselineGet.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/SqlPoolVulnerabilityAssessmentRuleBaselineGet.json new file mode 100644 index 000000000000..b085f12565d7 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/SqlPoolVulnerabilityAssessmentRuleBaselineGet.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityaseessmenttest-4711", + "workspaceName": "vulnerabilityaseessmenttest-6411", + "sqlPoolName": "testdb", + "vulnerabilityAssessmentName": "default", + "ruleId": "VA1001", + "baselineName": "master", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Synapse/workspaces/vulnerabilityaseessmenttest-6440/sqlPools/testdb/vulnerabilityAssessments/default/rules/VA1001/baselines/default", + "name": "default", + "type": "Microsoft.Synapse/workspaces/sqlPools/vulnerabilityAssessments/rules/baselines", + "properties": { + "baselineResults": [ + { + "result": [ + "userA", + "SELECT" + ] + }, + { + "result": [ + "userB", + "SELECT" + ] + }, + { + "result": [ + "userC", + "SELECT", + "tableId_4" + ] + } + ] + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/SqlPoolVulnerabilityAssessmentScanRecordsGet.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/SqlPoolVulnerabilityAssessmentScanRecordsGet.json new file mode 100644 index 000000000000..bd5b695761ce --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/SqlPoolVulnerabilityAssessmentScanRecordsGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityassessmenttest-4711", + "workspaceName": "vulnerabilityassessmenttest-6411", + "sqlPoolName": "testdb", + "vulnerabilityAssessmentName": "default", + "scanId": "scan001", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityassessmenttest-4799/providers/Microsoft.Synapse/workspaces/vulnerabilityassessmenttest-6440/sqlPools/testdb/vulnerabilityAssessments/default/scans/scan001", + "name": "scan001", + "type": "Microsoft.Synapse/workspaces/sqlPools/vulnerabilityAssessments/scans", + "properties": { + "scanId": "scan001", + "triggerType": "OnDemand", + "state": "Passed", + "startTime": "2017-12-12T17:45:06Z", + "endTime": "2017-12-12T17:47:06Z", + "errors": [], + "storageContainerPath": "https://myaccount.blob.core.windows.net/vulnerability-assessment", + "numberOfFailedSecurityChecks": 9 + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/UpdateBigDataPool.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/UpdateBigDataPool.json new file mode 100644 index 000000000000..765a9830a006 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/UpdateBigDataPool.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "bigDataPoolName": "ExamplePool", + "api-version": "2021-04-01-preview", + "bigDataPoolPatchInfo": { + "tags": { + "key": "value" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/bigDataPools/ExamplePool", + "type": "Microsoft.Synapse/workspaces/bigDataPools", + "location": "West US 2", + "name": "ExamplePool", + "tags": { + "key": "value" + }, + "properties": { + "provisioningState": "Succeeded", + "sparkVersion": "2.4", + "nodeCount": 4, + "nodeSize": "Medium", + "nodeSizeFamily": "MemoryOptimized", + "autoScale": { + "enabled": true, + "minNodeCount": 3, + "maxNodeCount": 50 + }, + "autoPause": { + "enabled": true, + "delayInMinutes": 15 + }, + "creationDate": "1970-01-01T00:00:00Z", + "sparkEventsFolder": "/events", + "libraryRequirements": { + "time": "1970-01-01T00:00:00Z", + "content": "", + "filename": "requirements.txt" + }, + "defaultSparkLogFolder": "/logs" + } + } + }, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/UpdatePrivateLinkHub.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/UpdatePrivateLinkHub.json new file mode 100644 index 000000000000..4936c8ba51f6 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/UpdatePrivateLinkHub.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup1", + "privateLinkHubName": "privateLinkHub1", + "api-version": "2021-04-01-preview", + "privateLinkHubPatchInfo": { + "tags": { + "key": "value" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup1/providers/Microsoft.Synapse/privateLinkHubs/privateLinkHub1", + "name": "privateLinkHub1", + "type": "Microsoft.Synapse/privateLinkHubs", + "location": "East US", + "properties": { + "provisioningState": "Succeeded" + }, + "tags": { + "key": "value" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup1/providers/Microsoft.Synapse/privateLinkHubs/privateLinkHub1", + "name": "privateLinkHub1", + "type": "Microsoft.Synapse/privateLinkHubs", + "location": "East US", + "properties": { + "provisioningState": "Succeeded" + }, + "tags": { + "key": "value" + } + } + }, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/UpdateSqlPool.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/UpdateSqlPool.json new file mode 100644 index 000000000000..eb27343294d3 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/UpdateSqlPool.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "sqlPoolName": "ExampleSqlPool", + "path": "example", + "api-version": "2021-04-01-preview", + "sqlPoolInfo": { + "location": "West US 2", + "tags": {}, + "sku": { + "tier": "", + "name": "" + }, + "properties": { + "maxSizeBytes": 0, + "collation": "", + "sourceDatabaseId": "", + "recoverableDatabaseId": "", + "restorePointInTime": "1970-01-01T00:00:00.000Z", + "createMode": "", + "creationDate": "1970-01-01T00:00:00.000Z" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspaces/sqlPools/ExampleSqlPool", + "type": "Microsoft.Synapse/workspaces/sqlPools", + "name": "ExampleSqlPool", + "location": "West US 2", + "tags": {}, + "sku": { + "tier": "", + "name": "" + }, + "properties": { + "maxSizeBytes": 0, + "collation": "", + "sourceDatabaseId": "", + "recoverableDatabaseId": "", + "provisioningState": "Provisioning", + "status": "Paused", + "restorePointInTime": "1970-01-01T00:00:00.000Z", + "createMode": "", + "creationDate": "1970-01-01T00:00:00.000Z", + "storageAccountType": "GRS" + } + } + }, + "202": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/UpdateWorkspace.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/UpdateWorkspace.json new file mode 100644 index 000000000000..861c2bad64aa --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/UpdateWorkspace.json @@ -0,0 +1,149 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup1", + "workspaceName": "workspace1", + "api-version": "2021-04-01-preview", + "workspacePatchInfo": { + "tags": { + "key": "value" + }, + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "sqlAdministratorLoginPassword": "password", + "managedVirtualNetworkSettings": { + "preventDataExfiltration": false, + "linkedAccessCheckOnTargetResource": false, + "allowedAadTenantIdsForLinking": [ + "740239CE-A25B-485B-86A0-262F29F6EBDB" + ] + }, + "workspaceRepositoryConfiguration": { + "type": "FactoryGitHubConfiguration", + "hostName": "", + "accountName": "adifferentacount", + "projectName": "myproject", + "repositoryName": "myrepository", + "collaborationBranch": "master", + "rootFolder": "/" + }, + "purviewConfiguration": { + "purviewResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup1/providers/Microsoft.ProjectPurview/accounts/accountname1" + }, + "encryption": { + "cmk": { + "key": { + "name": "default", + "keyVaultUrl": "https://vault.azure.net/keys/key1" + } + } + }, + "publicNetworkAccess": "Enabled" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup1/providers/Microsoft.Synapse/workspaces/workspace1", + "name": "workspace1", + "type": "Microsoft.Synapse/workspaces", + "location": "East US", + "properties": { + "defaultDataLakeStorage": { + "accountUrl": "https://accountname.dfs.core.windows.net", + "filesystem": "default" + }, + "managedVirtualNetworkSettings": { + "preventDataExfiltration": false, + "linkedAccessCheckOnTargetResource": false, + "allowedAadTenantIdsForLinking": [ + "740239CE-A25B-485B-86A0-262F29F6EBDB" + ] + }, + "purviewConfiguration": { + "purviewResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup1/providers/Microsoft.ProjectPurview/accounts/accountname1" + }, + "connectivityEndpoints": { + "dev": "workspace1.dev.projectarcadia.net", + "sql": "workspace1.sql.projectarcadia.net" + }, + "sqlAdministratorLogin": "login", + "managedResourceGroupName": "resourceGroup2", + "provisioningState": "Succeeded", + "workspaceUID": "999b999q-b888-4b44-bacd-2c222cc2222d", + "encryption": { + "doubleEncryptionEnabled": true, + "cmk": { + "status": "Consistent", + "key": { + "name": "default", + "keyVaultUrl": "https://vault.azure.net/keys/key1" + } + } + }, + "publicNetworkAccess": "Enabled" + }, + "tags": { + "key": "value" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup1/providers/Microsoft.Synapse/workspaces/workspace1", + "name": "workspace1", + "type": "Microsoft.Synapse/workspaces", + "location": "East US", + "properties": { + "defaultDataLakeStorage": { + "accountUrl": "https://accountname.dfs.core.windows.net", + "filesystem": "default" + }, + "managedVirtualNetworkSettings": { + "preventDataExfiltration": false, + "linkedAccessCheckOnTargetResource": false, + "allowedAadTenantIdsForLinking": [ + "740239CE-A25B-485B-86A0-262F29F6EBDB" + ] + }, + "purviewConfiguration": { + "purviewResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup1/providers/Microsoft.ProjectPurview/accounts/accountname1" + }, + "connectivityEndpoints": { + "dev": "workspace1.dev.projectarcadia.net", + "sql": "workspace1.sql.projectarcadia.net" + }, + "sqlAdministratorLogin": "login", + "managedResourceGroupName": "resourceGroup2", + "provisioningState": "Provisioning", + "workspaceUID": "999b999q-b888-4b44-bacd-2c222cc2222d", + "encryption": { + "doubleEncryptionEnabled": true, + "cmk": { + "status": "Updating", + "key": { + "name": "default", + "keyVaultUrl": "https://vault.azure.net/keys/key1" + } + } + }, + "publicNetworkAccess": "Enabled" + }, + "tags": { + "key": "value" + } + } + }, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/WorkspaceManagedSqlServerEncryptionProtectorCreateOrUpdateKeyVault.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/WorkspaceManagedSqlServerEncryptionProtectorCreateOrUpdateKeyVault.json new file mode 100644 index 000000000000..8717c728e92f --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/WorkspaceManagedSqlServerEncryptionProtectorCreateOrUpdateKeyVault.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "wsg-7398", + "workspaceName": "testWorkspace", + "encryptionProtectorName": "current", + "api-version": "2021-04-01-preview", + "parameters": { + "properties": { + "serverKeyType": "AzureKeyVault", + "serverKeyName": "someVault_someKey_01234567890123456789012345678901" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/wsg-7398/providers/Microsoft.Synapse/workspaces/testWorkspace/encryptionProtector/current", + "name": "current", + "type": "Microsoft.Synapse/workspaces/encryptionProtector", + "location": "West US", + "kind": "azurekeyvault", + "properties": { + "serverKeyName": "someVault_someKey_01234567890123456789012345678901", + "serverKeyType": "AzureKeyVault" + } + } + }, + "202": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/WorkspaceManagedSqlServerEncryptionProtectorCreateOrUpdateServiceManaged.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/WorkspaceManagedSqlServerEncryptionProtectorCreateOrUpdateServiceManaged.json new file mode 100644 index 000000000000..afc76b6d6aac --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/WorkspaceManagedSqlServerEncryptionProtectorCreateOrUpdateServiceManaged.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "wsg-7398", + "workspaceName": "testWorkspace", + "encryptionProtectorName": "current", + "api-version": "2021-04-01-preview", + "parameters": { + "properties": { + "serverKeyType": "ServiceManaged", + "serverKeyName": "ServiceManaged" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/wsg-7398/providers/Microsoft.Synapse/workspaces/testWorkspace/encryptionProtector/current", + "name": "current", + "type": "Microsoft.Synapse/workspaces/encryptionProtector", + "location": "West US", + "kind": "servicemanaged", + "properties": { + "serverKeyName": "ServiceManaged", + "serverKeyType": "ServiceManaged" + } + } + }, + "202": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/WorkspaceManagedSqlServerEncryptionProtectorRevalidate.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/WorkspaceManagedSqlServerEncryptionProtectorRevalidate.json new file mode 100644 index 000000000000..5320309c628d --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/WorkspaceManagedSqlServerEncryptionProtectorRevalidate.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "wsg-7398", + "workspaceName": "testWorkspace", + "encryptionProtectorName": "current", + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/WorkspaceManagedSqlServerSecurityAlertCreateWithMinParameters.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/WorkspaceManagedSqlServerSecurityAlertCreateWithMinParameters.json new file mode 100644 index 000000000000..abe98e840fb0 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/WorkspaceManagedSqlServerSecurityAlertCreateWithMinParameters.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "wsg-7398", + "workspaceName": "testWorkspace", + "securityAlertPolicyName": "Default", + "api-version": "2021-04-01-preview", + "parameters": { + "properties": { + "state": "Disabled", + "emailAccountAdmins": true, + "storageAccountAccessKey": "sdlfkjabc+sdlfkjsdlkfsjdfLDKFTERLKFDFKLjsdfksjdflsdkfD2342309432849328476458/3RSD==", + "storageEndpoint": "https://mystorage.blob.core.windows.net" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/wsg-7398/providers/Microsoft.Synapse/workspaces/testWorkspace/securityAlertPolicies/Default", + "name": "Default", + "type": "Microsoft.Synapse/workspaces/securityAlertPolicies", + "properties": { + "state": "Enabled", + "emailAccountAdmins": true, + "emailAddresses": [ + "" + ], + "disabledAlerts": [ + "" + ], + "creationTime": "2020-10-23T04:52:49.52Z", + "retentionDays": 0, + "storageAccountAccessKey": "", + "storageEndpoint": "https://mystorage.blob.core.windows.net" + } + } + }, + "202": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/WorkspaceManagedSqlServerSecurityAlertWithAllParameters.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/WorkspaceManagedSqlServerSecurityAlertWithAllParameters.json new file mode 100644 index 000000000000..0f0ebf124ccd --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/examples/WorkspaceManagedSqlServerSecurityAlertWithAllParameters.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "wsg-7398", + "workspaceName": "testWorkspace", + "securityAlertPolicyName": "Default", + "api-version": "2021-04-01-preview", + "parameters": { + "properties": { + "state": "Enabled", + "emailAccountAdmins": true, + "emailAddresses": [ + "testSecurityAlert@microsoft.com" + ], + "disabledAlerts": [ + "Access_Anomaly", + "Usage_Anomaly" + ], + "retentionDays": 5, + "storageAccountAccessKey": "sdlfkjabc+sdlfkjsdlkfsjdfLDKFTERLKFDFKLjsdfksjdflsdkfD2342309432849328476458/3RSD==", + "storageEndpoint": "https://mystorage.blob.core.windows.net" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/wsg-7398/providers/Microsoft.Synapse/workspaces/testWorkspace/securityAlertPolicies/Default", + "name": "Default", + "type": "Microsoft.Synapse/workspaces/securityAlertPolicies", + "properties": { + "state": "Enabled", + "emailAccountAdmins": true, + "emailAddresses": [ + "testSecurityAlert@microsoft.com" + ], + "disabledAlerts": [ + "Access_Anomaly", + "Usage_Anomaly" + ], + "creationTime": "2020-10-23T04:52:49.52Z", + "retentionDays": 5, + "storageAccountAccessKey": "", + "storageEndpoint": "https://mystorage.blob.core.windows.net" + } + } + }, + "202": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/firewallRule.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/firewallRule.json new file mode 100644 index 000000000000..5889d7962c45 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/firewallRule.json @@ -0,0 +1,425 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-04-01-preview", + "title": "SynapseManagementClient", + "description": "Azure Synapse Analytics APIs" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "securityDefinitions": { + "azure_auth": { + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "type": "oauth2", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow" + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/firewallRules": { + "get": { + "operationId": "IpFirewallRules_ListByWorkspace", + "description": "Returns a list of firewall rules", + "tags": [ + "IpFirewallRules" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/workspaceNameParameter" + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/IpFirewallRuleInfoListResult" + }, + "description": "" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "List IP firewall rules in a workspace": { + "$ref": "./examples/ListIpFirewallRules.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/firewallRules/{ruleName}": { + "put": { + "operationId": "IpFirewallRules_CreateOrUpdate", + "description": "Creates or updates a firewall rule", + "tags": [ + "IpFirewallRules" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/ruleNameParameter" + }, + { + "description": "IP firewall rule properties", + "schema": { + "$ref": "#/definitions/IpFirewallRuleInfo", + "description": "IP firewall rule properties" + }, + "in": "body", + "name": "ipFirewallRuleInfo", + "required": true + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/IpFirewallRuleInfo" + }, + "description": "" + }, + "201": { + "schema": { + "$ref": "#/definitions/IpFirewallRuleInfo" + }, + "description": "" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Create an IP firewall rule": { + "$ref": "./examples/CreateIpFirewallRule.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "delete": { + "operationId": "IpFirewallRules_Delete", + "description": "Deletes a firewall rule", + "tags": [ + "IpFirewallRules" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/ruleNameParameter" + } + ], + "responses": { + "200": { + "schema": { + "type": "object" + }, + "description": "OK" + }, + "204": { + "description": "NoContent" + }, + "202": { + "description": "Accepted" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Delete an IP firewall rule from a workspace": { + "$ref": "./examples/DeleteIpFirewallRule.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "operationId": "IpFirewallRules_Get", + "description": "Get a firewall rule", + "tags": [ + "IpFirewallRules" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/ruleNameParameter" + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/IpFirewallRuleInfo" + }, + "description": "Ip Firewall Rule details" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Create an IP firewall rule": { + "$ref": "./examples/GetIpFirewallRule.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/replaceAllIpFirewallRules": { + "post": { + "operationId": "IpFirewallRules_ReplaceAll", + "description": "Replaces firewall rules", + "tags": [ + "IpFirewallRules" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/workspaceNameParameter" + }, + { + "description": "Replace all IP firewall rules request", + "schema": { + "$ref": "#/definitions/ReplaceAllIpFirewallRulesRequest", + "description": "Replace all IP firewall rules request" + }, + "in": "body", + "name": "request", + "required": true + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/ReplaceAllFirewallRulesOperationResponse" + }, + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Replace all IP firewall rules in a workspace": { + "$ref": "./examples/ReplaceAllIpFirewallRules.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + } + }, + "definitions": { + "IpFirewallRuleInfo": { + "description": "IP firewall rule", + "type": "object", + "x-ms-azure-resource": true, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/IpFirewallRuleProperties", + "description": "IP firewall rule properties", + "x-ms-client-flatten": true + } + } + }, + "ReplaceAllIpFirewallRulesRequest": { + "description": "Replace all IP firewall rules request", + "type": "object", + "properties": { + "ipFirewallRules": { + "description": "IP firewall rule properties", + "additionalProperties": { + "description": "IP firewall rule properties", + "$ref": "#/definitions/IpFirewallRuleProperties" + }, + "type": "object" + } + } + }, + "IpFirewallRuleProperties": { + "description": "IP firewall rule properties", + "type": "object", + "properties": { + "endIpAddress": { + "description": "The end IP address of the firewall rule. Must be IPv4 format. Must be greater than or equal to startIpAddress", + "type": "string" + }, + "provisioningState": { + "description": "Resource provisioning state", + "enum": [ + "Provisioning", + "Succeeded", + "Deleting", + "Failed", + "DeleteError" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "startIpAddress": { + "description": "The start IP address of the firewall rule. Must be IPv4 format", + "type": "string" + } + } + }, + "IpFirewallRuleInfoListResult": { + "type": "object", + "description": "List of IP firewall rules", + "properties": { + "nextLink": { + "description": "Link to next page of results", + "type": "string" + }, + "value": { + "description": "List of IP firewall rules", + "type": "array", + "items": { + "$ref": "#/definitions/IpFirewallRuleInfo" + } + } + } + }, + "ReplaceAllFirewallRulesOperationResponse": { + "type": "object", + "description": "An existing operation for replacing the firewall rules", + "properties": { + "operationId": { + "type": "string", + "description": "The operation ID" + } + } + } + }, + "parameters": { + "workspaceNameParameter": { + "name": "workspaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the workspace", + "x-ms-parameter-location": "method" + }, + "ruleNameParameter": { + "type": "string", + "in": "path", + "name": "ruleName", + "description": "The IP firewall rule name", + "required": true, + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/integrationRuntime.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/integrationRuntime.json new file mode 100644 index 000000000000..0af5231b4920 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/integrationRuntime.json @@ -0,0 +1,2909 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-04-01-preview", + "title": "SynapseManagementClient", + "description": "Azure Synapse Analytics APIs" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "securityDefinitions": { + "azure_auth": { + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "type": "oauth2", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow" + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/integrationRuntimes/{integrationRuntimeName}": { + "patch": { + "operationId": "IntegrationRuntimes_Update", + "summary": "Update integration runtime", + "description": "Update an integration runtime", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + }, + { + "name": "updateIntegrationRuntimeRequest", + "description": "The parameters for updating an integration runtime.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/UpdateIntegrationRuntimeRequest" + } + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/IntegrationRuntimeResource" + } + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Update integration runtime": { + "$ref": "./examples/IntegrationRuntimes_Update.json" + } + } + }, + "get": { + "operationId": "IntegrationRuntimes_Get", + "summary": "Get integration runtime", + "description": "Get an integration runtime", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + }, + { + "name": "If-None-Match", + "in": "header", + "required": false, + "type": "string", + "description": "ETag of the integration runtime entity. Should only be specified for get. If the ETag matches the existing entity tag, or if * was provided, then no content will be returned." + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/IntegrationRuntimeResource" + } + }, + "304": { + "description": "Not modified." + }, + "default": { + "description": "An error response received from GET integration runtime operation.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get integration runtime": { + "$ref": "./examples/IntegrationRuntimes_Get.json" + } + } + }, + "put": { + "operationId": "IntegrationRuntimes_Create", + "x-ms-long-running-operation": true, + "summary": "Create integration runtime", + "description": "Create an integration runtime", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "ETag of the integration runtime entity. Should only be specified for update, for which it should match existing entity or can be * for unconditional update." + }, + { + "name": "integrationRuntime", + "description": "Integration runtime resource definition.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/IntegrationRuntimeResource" + } + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/IntegrationRuntimeResource" + } + }, + "202": { + "description": "Accepted." + }, + "default": { + "description": "An error response received from PUT integration runtime operation.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Create integration runtime": { + "$ref": "./examples/IntegrationRuntimes_Create.json" + } + } + }, + "delete": { + "operationId": "IntegrationRuntimes_Delete", + "x-ms-long-running-operation": true, + "summary": "Delete integration runtime", + "description": "Delete an integration runtime", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "202": { + "description": "Accepted." + }, + "204": { + "description": "No Content." + }, + "default": { + "description": "An error response received from DELETE integration runtime operation.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Delete integration runtime": { + "$ref": "./examples/IntegrationRuntimes_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/integrationRuntimes/{integrationRuntimeName}/nodes/{nodeName}/ipAddress": { + "post": { + "operationId": "IntegrationRuntimeNodeIpAddress_Get", + "summary": "Get integration runtime node IP address", + "description": "Get the IP address of an integration runtime node", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "nodeName", + "description": "Integration runtime node name", + "required": true + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/IntegrationRuntimeNodeIpAddress" + } + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get integration runtime node IP address": { + "$ref": "./examples/IntegrationRuntimeNodes_GetIpAddress.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/integrationRuntimes/{integrationRuntimeName}/upgrade": { + "post": { + "operationId": "IntegrationRuntimes_Upgrade", + "summary": "Upgrade integration runtime", + "description": "Upgrade an integration runtime", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Upgrade integration runtime": { + "$ref": "./examples/IntegrationRuntimes_Upgrade.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/integrationRuntimes/{integrationRuntimeName}/getObjectMetadata": { + "post": { + "operationId": "IntegrationRuntimeObjectMetadata_List", + "summary": "Get integration runtime object metadata", + "description": "Get object metadata from an integration runtime", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + }, + { + "name": "getMetadataRequest", + "description": "The parameters for getting a SSIS object metadata.", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/GetSsisObjectMetadataRequest" + } + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/SsisObjectMetadataListResponse" + } + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get integration runtime object metadata": { + "$ref": "./examples/IntegrationRuntimeObjectMetadata_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/integrationRuntimes/{integrationRuntimeName}/nodes/{nodeName}": { + "get": { + "operationId": "IntegrationRuntimeNodes_Get", + "summary": "Get integration runtime node", + "description": "Get an integration runtime node", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "nodeName", + "description": "Integration runtime node name", + "required": true + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/SelfHostedIntegrationRuntimeNode" + } + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get integration runtime node": { + "$ref": "./examples/IntegrationRuntimeNodes_Get.json" + } + } + }, + "patch": { + "operationId": "IntegrationRuntimeNodes_Update", + "summary": "Create integration runtime node", + "description": "Create an integration runtime node", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "nodeName", + "description": "Integration runtime node name", + "required": true + }, + { + "name": "updateIntegrationRuntimeNodeRequest", + "description": "The parameters for updating an integration runtime node.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/UpdateIntegrationRuntimeNodeRequest" + } + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/SelfHostedIntegrationRuntimeNode" + } + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Update integration runtime node": { + "$ref": "./examples/IntegrationRuntimeNodes_Update.json" + } + } + }, + "delete": { + "operationId": "IntegrationRuntimeNodes_Delete", + "summary": "Delete integration runtime node", + "description": "Delete an integration runtime node", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "nodeName", + "description": "Integration runtime node name", + "required": true + } + ], + "responses": { + "200": { + "description": "OK." + }, + "204": { + "description": "No Content." + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Delete integration runtime node": { + "$ref": "./examples/IntegrationRuntimeNodes_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/integrationRuntimes/{integrationRuntimeName}/syncCredentials": { + "post": { + "operationId": "IntegrationRuntimeCredentials_Sync", + "summary": "Sync integration runtime credentials", + "description": "Force the integration runtime to synchronize credentials across integration runtime nodes, and this will override the credentials across all worker nodes with those available on the dispatcher node. If you already have the latest credential backup file, you should manually import it (preferred) on any self-hosted integration runtime node than using this API directly.", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Sync credentials": { + "$ref": "./examples/IntegrationRuntimes_SyncCredentials.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/integrationRuntimes": { + "get": { + "operationId": "IntegrationRuntimes_ListByWorkspace", + "summary": "List integration runtimes", + "description": "List all integration runtimes", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/IntegrationRuntimeListResponse" + } + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "List integration runtimes": { + "$ref": "./examples/IntegrationRuntimes_ListByWorkspace.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/integrationRuntimes/{integrationRuntimeName}/getConnectionInfo": { + "post": { + "operationId": "IntegrationRuntimeConnectionInfos_Get", + "summary": "Get integration runtime connection info", + "description": "Get connection info for an integration runtime", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/IntegrationRuntimeConnectionInfo" + } + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get connection info": { + "$ref": "./examples/IntegrationRuntimes_GetConnectionInfo.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/integrationRuntimes/{integrationRuntimeName}/start": { + "post": { + "operationId": "IntegrationRuntimes_Start", + "summary": "Start integration runtime", + "description": "Start an integration runtime", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/IntegrationRuntimeStatusResponse" + } + }, + "202": { + "description": "Accepted." + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Start integration runtime": { + "$ref": "./examples/IntegrationRuntimes_Start.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/integrationRuntimes/{integrationRuntimeName}/regenerateAuthKey": { + "post": { + "operationId": "IntegrationRuntimeAuthKeys_Regenerate", + "summary": "Regenerate integration runtime authentication key", + "description": "Regenerate the authentication key for an integration runtime", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + }, + { + "name": "regenerateKeyParameters", + "description": "The parameters for regenerating integration runtime authentication key.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/IntegrationRuntimeRegenerateKeyParameters" + } + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/IntegrationRuntimeAuthKeys" + } + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Regenerate auth key": { + "$ref": "./examples/IntegrationRuntimes_RegenerateAuthKey.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/integrationRuntimes/{integrationRuntimeName}/listAuthKeys": { + "post": { + "operationId": "IntegrationRuntimeAuthKeys_List", + "summary": "List integration runtime authentication keys", + "description": "List authentication keys in an integration runtime", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/IntegrationRuntimeAuthKeys" + } + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "List auth keys": { + "$ref": "./examples/IntegrationRuntimes_ListAuthKeys.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/integrationRuntimes/{integrationRuntimeName}/monitoringData": { + "post": { + "operationId": "IntegrationRuntimeMonitoringData_List", + "summary": "Get integration runtime monitoring data", + "description": "Get monitoring data for an integration runtime", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/IntegrationRuntimeMonitoringData" + } + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get monitoring data": { + "$ref": "./examples/IntegrationRuntimeMonitoringData_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/integrationRuntimes/{integrationRuntimeName}/stop": { + "post": { + "operationId": "IntegrationRuntimes_Stop", + "summary": "Stop integration runtime", + "description": "Stop an integration runtime", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "202": { + "description": "Accepted." + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Stop integration runtime": { + "$ref": "./examples/IntegrationRuntimes_Stop.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/integrationRuntimes/{integrationRuntimeName}/refreshObjectMetadata": { + "post": { + "operationId": "IntegrationRuntimeObjectMetadata_Refresh", + "summary": "Refresh integration runtime object metadata", + "description": "Refresh the object metadata in an integration runtime", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/SsisObjectMetadataStatusResponse" + } + }, + "202": { + "description": "Accepted." + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Refresh object metadata": { + "$ref": "./examples/IntegrationRuntimeObjectMetadata_Refresh.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/integrationRuntimes/{integrationRuntimeName}/getStatus": { + "post": { + "operationId": "IntegrationRuntimeStatus_Get", + "summary": "Get integration runtime status", + "description": "Get the integration runtime status", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/IntegrationRuntimeStatusResponse" + } + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get status": { + "$ref": "./examples/IntegrationRuntimes_GetStatus.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/integrationRuntimes/{integrationRuntimeName}/enableInteractiveQuery": { + "post": { + "operationId": "IntegrationRuntimes_EnableInteractiveQuery", + "description": "Enable interactive query in integration runtime", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Stop integration runtime": { + "$ref": "./examples/IntegrationRuntimes_EnableInteractiveQuery.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/integrationRuntimes/{integrationRuntimeName}/disableInteractiveQuery": { + "post": { + "operationId": "IntegrationRuntimes_DisableInteractiveQuery", + "description": "Disable interactive query in integration runtime", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Stop integration runtime": { + "$ref": "./examples/IntegrationRuntimes_DisableInteractiveQuery.json" + } + } + } + } + }, + "definitions": { + "SubResource": { + "description": "Azure Synapse nested resource, which belongs to a workspace.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/AzureEntityResource" + } + ] + }, + "IntegrationRuntime": { + "description": "Azure Synapse nested object which serves as a compute resource for activities.", + "type": "object", + "discriminator": "type", + "properties": { + "type": { + "description": "Type of integration runtime.", + "$ref": "#/definitions/IntegrationRuntimeType" + }, + "description": { + "description": "Integration runtime description.", + "type": "string" + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "type" + ] + }, + "IntegrationRuntimeType": { + "description": "The type of integration runtime.", + "type": "string", + "enum": [ + "Managed", + "SelfHosted" + ], + "x-ms-enum": { + "name": "IntegrationRuntimeType", + "modelAsString": true + } + }, + "ManagedIntegrationRuntime": { + "x-ms-discriminator-value": "Managed", + "description": "Managed integration runtime, including managed elastic and managed dedicated integration runtimes.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/IntegrationRuntime" + } + ], + "properties": { + "state": { + "description": "Integration runtime state, only valid for managed dedicated integration runtime.", + "$ref": "#/definitions/IntegrationRuntimeState", + "readOnly": true + }, + "typeProperties": { + "description": "Managed integration runtime properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ManagedIntegrationRuntimeTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "ManagedIntegrationRuntimeTypeProperties": { + "description": "Managed integration runtime type properties.", + "type": "object", + "properties": { + "computeProperties": { + "description": "The compute resource for managed integration runtime.", + "$ref": "#/definitions/IntegrationRuntimeComputeProperties" + }, + "ssisProperties": { + "description": "SSIS properties for managed integration runtime.", + "$ref": "#/definitions/IntegrationRuntimeSsisProperties" + } + } + }, + "IntegrationRuntimeComputeProperties": { + "description": "The compute resource properties for managed integration runtime.", + "type": "object", + "properties": { + "location": { + "description": "The location for managed integration runtime. The supported regions could be found on https://docs.microsoft.com/en-us/azure/data-factory/data-factory-data-movement-activities", + "type": "string" + }, + "nodeSize": { + "description": "The node size requirement to managed integration runtime.", + "type": "string" + }, + "numberOfNodes": { + "description": "The required number of nodes for managed integration runtime.", + "type": "integer", + "format": "int32", + "minimum": 1 + }, + "maxParallelExecutionsPerNode": { + "description": "Maximum parallel executions count per node for managed integration runtime.", + "type": "integer", + "format": "int32", + "minimum": 1 + }, + "dataFlowProperties": { + "description": "Data flow properties for managed integration runtime.", + "$ref": "#/definitions/IntegrationRuntimeDataFlowProperties" + }, + "vNetProperties": { + "description": "VNet properties for managed integration runtime.", + "$ref": "#/definitions/IntegrationRuntimeVNetProperties" + } + }, + "additionalProperties": { + "type": "object" + } + }, + "IntegrationRuntimeDataFlowProperties": { + "description": "Data flow properties for managed integration runtime.", + "type": "object", + "properties": { + "computeType": { + "description": "Compute type of the cluster which will execute data flow job.", + "type": "string", + "enum": [ + "General", + "MemoryOptimized", + "ComputeOptimized" + ], + "x-ms-enum": { + "name": "DataFlowComputeType", + "modelAsString": true + } + }, + "coreCount": { + "description": "Core count of the cluster which will execute data flow job. Supported values are: 8, 16, 32, 48, 80, 144 and 272.", + "type": "integer", + "format": "int32" + }, + "timeToLive": { + "description": "Time to live (in minutes) setting of the cluster which will execute data flow job.", + "type": "integer", + "format": "int32", + "minimum": 0 + } + }, + "additionalProperties": { + "type": "object" + } + }, + "IntegrationRuntimeVNetProperties": { + "description": "VNet properties for managed integration runtime.", + "type": "object", + "properties": { + "vNetId": { + "description": "The ID of the VNet that this integration runtime will join.", + "type": "string" + }, + "subnet": { + "description": "The name of the subnet this integration runtime will join.", + "type": "string" + }, + "publicIPs": { + "description": "Resource IDs of the public IP addresses that this integration runtime will use.", + "type": "array", + "items": { + "type": "string", + "description": "The ID of the public IP address." + } + } + }, + "additionalProperties": { + "type": "object" + } + }, + "IntegrationRuntimeSsisProperties": { + "description": "SSIS properties for managed integration runtime.", + "type": "object", + "properties": { + "catalogInfo": { + "description": "Catalog information for managed dedicated integration runtime.", + "$ref": "#/definitions/IntegrationRuntimeSsisCatalogInfo" + }, + "licenseType": { + "description": "License type for bringing your own license scenario.", + "type": "string", + "enum": [ + "BasePrice", + "LicenseIncluded" + ], + "x-ms-enum": { + "name": "IntegrationRuntimeLicenseType", + "modelAsString": true + } + }, + "customSetupScriptProperties": { + "description": "Custom setup script properties for a managed dedicated integration runtime.", + "$ref": "#/definitions/IntegrationRuntimeCustomSetupScriptProperties" + }, + "dataProxyProperties": { + "description": "Data proxy properties for a managed dedicated integration runtime.", + "$ref": "#/definitions/IntegrationRuntimeDataProxyProperties" + }, + "edition": { + "description": "The edition for the SSIS Integration Runtime", + "type": "string", + "enum": [ + "Standard", + "Enterprise" + ], + "x-ms-enum": { + "name": "IntegrationRuntimeEdition", + "modelAsString": true + } + }, + "expressCustomSetupProperties": { + "description": "Custom setup without script properties for a SSIS integration runtime.", + "type": "array", + "items": { + "$ref": "#/definitions/CustomSetupBase" + } + } + }, + "additionalProperties": { + "type": "object" + } + }, + "SecretBase": { + "description": "The base definition of a secret type.", + "discriminator": "type", + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "Type of the secret." + } + }, + "required": [ + "type" + ] + }, + "SecureString": { + "x-ms-discriminator-value": "SecureString", + "description": "Azure Synapse secure string definition. The string value will be masked with asterisks '*' during Get or List API calls.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/SecretBase" + } + ], + "properties": { + "value": { + "type": "string", + "description": "Value of secure string." + } + }, + "required": [ + "value" + ] + }, + "IntegrationRuntimeSsisCatalogInfo": { + "description": "Catalog information for managed dedicated integration runtime.", + "type": "object", + "properties": { + "catalogServerEndpoint": { + "description": "The catalog database server URL.", + "type": "string" + }, + "catalogAdminUserName": { + "description": "The administrator user name of catalog database.", + "type": "string", + "minLength": 1, + "maxLength": 128 + }, + "catalogAdminPassword": { + "description": "The password of the administrator user account of the catalog database.", + "$ref": "#/definitions/SecureString" + }, + "catalogPricingTier": { + "description": "The pricing tier for the catalog database. The valid values could be found in https://azure.microsoft.com/en-us/pricing/details/sql-database/", + "type": "string", + "enum": [ + "Basic", + "Standard", + "Premium", + "PremiumRS" + ], + "x-ms-enum": { + "name": "IntegrationRuntimeSsisCatalogPricingTier", + "modelAsString": true + } + } + }, + "additionalProperties": { + "type": "object" + } + }, + "IntegrationRuntimeCustomSetupScriptProperties": { + "description": "Custom setup script properties for a managed dedicated integration runtime.", + "type": "object", + "properties": { + "blobContainerUri": { + "description": "The URI of the Azure blob container that contains the custom setup script.", + "type": "string" + }, + "sasToken": { + "description": "The SAS token of the Azure blob container.", + "$ref": "#/definitions/SecureString" + } + } + }, + "IntegrationRuntimeDataProxyProperties": { + "description": "Data proxy properties for a managed dedicated integration runtime.", + "type": "object", + "properties": { + "connectVia": { + "description": "The self-hosted integration runtime reference.", + "$ref": "#/definitions/EntityReference" + }, + "stagingLinkedService": { + "description": "The staging linked service reference.", + "$ref": "#/definitions/EntityReference" + }, + "path": { + "description": "The path to contain the staged data in the Blob storage.", + "type": "string" + } + } + }, + "CustomSetupBase": { + "description": "The base definition of the custom setup.", + "type": "object", + "discriminator": "type", + "properties": { + "type": { + "description": "The type of custom setup.", + "type": "string" + } + }, + "required": [ + "type" + ] + }, + "CmdkeySetup": { + "description": "The custom setup of running cmdkey commands.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CustomSetupBase" + } + ], + "properties": { + "typeProperties": { + "description": "Cmdkey command custom setup type properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/CmdkeySetupTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "CmdkeySetupTypeProperties": { + "description": "Cmdkey command custom setup type properties.", + "type": "object", + "properties": { + "targetName": { + "description": "The server name of data source access.", + "type": "object" + }, + "userName": { + "description": "The user name of data source access.", + "type": "object" + }, + "password": { + "description": "The password of data source access.", + "$ref": "#/definitions/SecretBase" + } + }, + "required": [ + "targetName", + "userName", + "password" + ] + }, + "EnvironmentVariableSetup": { + "description": "The custom setup of setting environment variable.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CustomSetupBase" + } + ], + "properties": { + "typeProperties": { + "description": "Add environment variable type properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/EnvironmentVariableSetupTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "EnvironmentVariableSetupTypeProperties": { + "description": "Environment variable custom setup type properties.", + "type": "object", + "properties": { + "variableName": { + "description": "The name of the environment variable.", + "type": "string" + }, + "variableValue": { + "description": "The value of the environment variable.", + "type": "string" + } + }, + "required": [ + "variableName", + "variableValue" + ] + }, + "ComponentSetup": { + "description": "The custom setup of installing 3rd party components.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CustomSetupBase" + } + ], + "properties": { + "typeProperties": { + "description": "Install 3rd party component type properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/LicensedComponentSetupTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "LicensedComponentSetupTypeProperties": { + "description": "Installation of licensed component setup type properties.", + "type": "object", + "properties": { + "componentName": { + "description": "The name of the 3rd party component.", + "type": "string" + }, + "licenseKey": { + "description": "The license key to activate the component.", + "$ref": "#/definitions/SecretBase" + } + }, + "required": [ + "componentName" + ] + }, + "EntityReference": { + "description": "The entity reference.", + "type": "object", + "properties": { + "type": { + "description": "The type of this referenced entity.", + "type": "string", + "enum": [ + "IntegrationRuntimeReference", + "LinkedServiceReference" + ], + "x-ms-enum": { + "name": "IntegrationRuntimeEntityReferenceType", + "modelAsString": true + } + }, + "referenceName": { + "description": "The name of this referenced entity.", + "type": "string" + } + } + }, + "SelfHostedIntegrationRuntime": { + "x-ms-discriminator-value": "SelfHosted", + "description": "Self-hosted integration runtime.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/IntegrationRuntime" + } + ], + "properties": { + "typeProperties": { + "description": "When this property is not null, means this is a linked integration runtime. The property is used to access original integration runtime.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SelfHostedIntegrationRuntimeTypeProperties" + } + } + }, + "SelfHostedIntegrationRuntimeTypeProperties": { + "description": "The self-hosted integration runtime properties.", + "type": "object", + "properties": { + "linkedInfo": { + "$ref": "#/definitions/LinkedIntegrationRuntimeType", + "description": "Linked integration runtime type from data factory" + } + } + }, + "LinkedIntegrationRuntimeType": { + "description": "The base definition of a linked integration runtime.", + "discriminator": "authorizationType", + "type": "object", + "properties": { + "authorizationType": { + "type": "string", + "description": "The authorization type for integration runtime sharing." + } + }, + "required": [ + "authorizationType" + ] + }, + "LinkedIntegrationRuntimeKeyAuthorization": { + "x-ms-discriminator-value": "Key", + "description": "The key authorization type integration runtime.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedIntegrationRuntimeType" + } + ], + "properties": { + "key": { + "description": "The key used for authorization.", + "$ref": "#/definitions/SecureString" + } + }, + "required": [ + "key" + ] + }, + "LinkedIntegrationRuntimeRbacAuthorization": { + "x-ms-discriminator-value": "RBAC", + "description": "The role based access control (RBAC) authorization type integration runtime.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedIntegrationRuntimeType" + } + ], + "properties": { + "resourceId": { + "description": "The resource identifier of the integration runtime to be shared.", + "type": "string" + } + }, + "required": [ + "resourceId" + ] + }, + "IntegrationRuntimeStatus": { + "description": "Integration runtime status.", + "type": "object", + "discriminator": "type", + "properties": { + "type": { + "description": "Type of integration runtime.", + "$ref": "#/definitions/IntegrationRuntimeType" + }, + "dataFactoryName": { + "description": "The workspace name which the integration runtime belong to.", + "type": "string", + "readOnly": true + }, + "state": { + "description": "The state of integration runtime.", + "$ref": "#/definitions/IntegrationRuntimeState", + "readOnly": true + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "type" + ] + }, + "IntegrationRuntimeState": { + "description": "The state of integration runtime.", + "type": "string", + "readOnly": true, + "enum": [ + "Initial", + "Stopped", + "Started", + "Starting", + "Stopping", + "NeedRegistration", + "Online", + "Limited", + "Offline", + "AccessDenied" + ], + "x-ms-enum": { + "name": "IntegrationRuntimeState", + "modelAsString": true + } + }, + "ManagedIntegrationRuntimeStatus": { + "x-ms-discriminator-value": "Managed", + "description": "Managed integration runtime status.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/IntegrationRuntimeStatus" + } + ], + "properties": { + "typeProperties": { + "description": "Managed integration runtime status type properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ManagedIntegrationRuntimeStatusTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "ManagedIntegrationRuntimeStatusTypeProperties": { + "description": "Managed integration runtime status type properties.", + "type": "object", + "properties": { + "createTime": { + "description": "The time at which the integration runtime was created, in ISO8601 format.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "nodes": { + "description": "The list of nodes for managed integration runtime.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedIntegrationRuntimeNode" + }, + "readOnly": true + }, + "otherErrors": { + "description": "The errors that occurred on this integration runtime.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedIntegrationRuntimeError" + }, + "readOnly": true + }, + "lastOperation": { + "description": "The last operation result that occurred on this integration runtime.", + "$ref": "#/definitions/ManagedIntegrationRuntimeOperationResult", + "readOnly": true + } + } + }, + "ManagedIntegrationRuntimeOperationResult": { + "description": "Properties of managed integration runtime operation result.", + "properties": { + "type": { + "description": "The operation type. Could be start or stop.", + "type": "string", + "readOnly": true + }, + "startTime": { + "description": "The start time of the operation.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "result": { + "description": "The operation result.", + "type": "string", + "readOnly": true + }, + "errorCode": { + "description": "The error code.", + "type": "string", + "readOnly": true + }, + "parameters": { + "description": "Managed integration runtime error parameters.", + "type": "array", + "items": { + "type": "string", + "description": "Error message parameters." + }, + "readOnly": true + }, + "activityId": { + "description": "The activity id for the operation request.", + "type": "string", + "readOnly": true + } + }, + "additionalProperties": { + "type": "object" + } + }, + "ManagedIntegrationRuntimeNode": { + "description": "Properties of integration runtime node.", + "properties": { + "nodeId": { + "description": "The managed integration runtime node id.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "The managed integration runtime node status.", + "type": "string", + "readOnly": true, + "enum": [ + "Starting", + "Available", + "Recycling", + "Unavailable" + ], + "x-ms-enum": { + "name": "ManagedIntegrationRuntimeNodeStatus", + "modelAsString": true + } + }, + "errors": { + "description": "The errors that occurred on this integration runtime node.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedIntegrationRuntimeError" + } + } + }, + "additionalProperties": { + "type": "object" + } + }, + "ManagedIntegrationRuntimeError": { + "description": "Error definition for managed integration runtime.", + "properties": { + "time": { + "description": "The time when the error occurred.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "code": { + "description": "Error code.", + "type": "string", + "readOnly": true + }, + "parameters": { + "description": "Managed integration runtime error parameters.", + "type": "array", + "items": { + "type": "string", + "description": "Error message parameters." + }, + "readOnly": true + }, + "message": { + "description": "Error message.", + "type": "string", + "readOnly": true + } + }, + "additionalProperties": { + "type": "object" + } + }, + "SelfHostedIntegrationRuntimeStatus": { + "x-ms-discriminator-value": "SelfHosted", + "description": "Self-hosted integration runtime status.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/IntegrationRuntimeStatus" + } + ], + "properties": { + "typeProperties": { + "description": "Self-hosted integration runtime status type properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SelfHostedIntegrationRuntimeStatusTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "SelfHostedIntegrationRuntimeStatusTypeProperties": { + "description": "Self-hosted integration runtime status type properties.", + "type": "object", + "properties": { + "createTime": { + "description": "The time at which the integration runtime was created, in ISO8601 format.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "taskQueueId": { + "description": "The task queue id of the integration runtime.", + "type": "string", + "readOnly": true + }, + "nodeCommunicationChannelEncryptionMode": { + "description": "The node communication Channel encryption mode", + "type": "string", + "readOnly": true + }, + "internalChannelEncryption": { + "description": "It is used to set the encryption mode for node-node communication channel (when more than 2 self-hosted integration runtime nodes exist).", + "type": "string", + "readOnly": true, + "enum": [ + "NotSet", + "SslEncrypted", + "NotEncrypted" + ], + "x-ms-enum": { + "name": "IntegrationRuntimeInternalChannelEncryptionMode", + "modelAsString": true + } + }, + "version": { + "description": "Version of the integration runtime.", + "type": "string", + "readOnly": true + }, + "nodes": { + "description": "The list of nodes for this integration runtime.", + "type": "array", + "items": { + "$ref": "#/definitions/SelfHostedIntegrationRuntimeNode" + } + }, + "scheduledUpdateDate": { + "description": "The date at which the integration runtime will be scheduled to update, in ISO8601 format.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "updateDelayOffset": { + "description": "The time in the date scheduled by service to update the integration runtime, e.g., PT03H is 3 hours", + "type": "string", + "readOnly": true + }, + "localTimeZoneOffset": { + "description": "The local time zone offset in hours.", + "type": "string", + "readOnly": true + }, + "capabilities": { + "description": "Object with additional information about integration runtime capabilities.", + "type": "object", + "readOnly": true, + "additionalProperties": { + "type": "string" + } + }, + "serviceUrls": { + "description": "The URLs for the services used in integration runtime backend service.", + "type": "array", + "items": { + "description": "The service URL", + "type": "string" + }, + "readOnly": true + }, + "autoUpdate": { + "description": "Whether Self-hosted integration runtime auto update has been turned on.", + "$ref": "#/definitions/IntegrationRuntimeAutoUpdate", + "readOnly": true + }, + "versionStatus": { + "description": "Status of the integration runtime version.", + "type": "string", + "readOnly": true + }, + "links": { + "description": "The list of linked integration runtimes that are created to share with this integration runtime.", + "type": "array", + "items": { + "$ref": "#/definitions/LinkedIntegrationRuntime" + } + }, + "pushedVersion": { + "description": "The version that the integration runtime is going to update to.", + "type": "string", + "readOnly": true + }, + "latestVersion": { + "description": "The latest version on download center.", + "type": "string", + "readOnly": true + }, + "autoUpdateETA": { + "description": "The estimated time when the self-hosted integration runtime will be updated.", + "type": "string", + "format": "date-time", + "readOnly": true + } + } + }, + "IntegrationRuntimeAutoUpdate": { + "description": "The state of integration runtime auto update.", + "type": "string", + "enum": [ + "On", + "Off" + ], + "x-ms-enum": { + "name": "IntegrationRuntimeAutoUpdate", + "modelAsString": true + } + }, + "LinkedIntegrationRuntime": { + "description": "The linked integration runtime information.", + "type": "object", + "properties": { + "name": { + "description": "The name of the linked integration runtime.", + "type": "string", + "readOnly": true + }, + "subscriptionId": { + "description": "The subscription ID for which the linked integration runtime belong to.", + "type": "string", + "readOnly": true + }, + "dataFactoryName": { + "description": "The name of the workspace for which the linked integration runtime belong to.", + "type": "string", + "readOnly": true + }, + "dataFactoryLocation": { + "description": "The location of the workspace for which the linked integration runtime belong to.", + "type": "string", + "readOnly": true + }, + "createTime": { + "description": "The creating time of the linked integration runtime.", + "type": "string", + "format": "date-time", + "readOnly": true + } + } + }, + "SelfHostedIntegrationRuntimeNode": { + "description": "Properties of Self-hosted integration runtime node.", + "properties": { + "nodeName": { + "description": "Name of the integration runtime node.", + "type": "string", + "readOnly": true + }, + "machineName": { + "description": "Machine name of the integration runtime node.", + "type": "string", + "readOnly": true + }, + "hostServiceUri": { + "description": "URI for the host machine of the integration runtime.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "Status of the integration runtime node.", + "type": "string", + "readOnly": true, + "enum": [ + "NeedRegistration", + "Online", + "Limited", + "Offline", + "Upgrading", + "Initializing", + "InitializeFailed" + ], + "x-ms-enum": { + "name": "SelfHostedIntegrationRuntimeNodeStatus", + "modelAsString": true + } + }, + "capabilities": { + "description": "The integration runtime capabilities dictionary", + "type": "object", + "readOnly": true, + "additionalProperties": { + "type": "string" + } + }, + "versionStatus": { + "description": "Status of the integration runtime node version.", + "type": "string", + "readOnly": true + }, + "version": { + "description": "Version of the integration runtime node.", + "type": "string", + "readOnly": true + }, + "registerTime": { + "description": "The time at which the integration runtime node was registered in ISO8601 format.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "lastConnectTime": { + "description": "The most recent time at which the integration runtime was connected in ISO8601 format.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "expiryTime": { + "description": "The time at which the integration runtime will expire in ISO8601 format.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "lastStartTime": { + "description": "The time the node last started up.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "lastStopTime": { + "description": "The integration runtime node last stop time.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "lastUpdateResult": { + "description": "The result of the last integration runtime node update.", + "type": "string", + "enum": [ + "None", + "Succeed", + "Fail" + ], + "x-ms-enum": { + "name": "IntegrationRuntimeUpdateResult", + "modelAsString": true + }, + "readOnly": true + }, + "lastStartUpdateTime": { + "description": "The last time for the integration runtime node update start.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "lastEndUpdateTime": { + "description": "The last time for the integration runtime node update end.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "isActiveDispatcher": { + "description": "Indicates whether this node is the active dispatcher for integration runtime requests.", + "type": "boolean", + "readOnly": true + }, + "concurrentJobsLimit": { + "description": "Maximum concurrent jobs on the integration runtime node.", + "type": "integer", + "format": "int32", + "readOnly": true + }, + "maxConcurrentJobs": { + "description": "The maximum concurrent jobs in this integration runtime.", + "type": "integer", + "format": "int32", + "readOnly": true + } + }, + "additionalProperties": { + "type": "object" + } + }, + "IntegrationRuntimeConnectionInfo": { + "description": "Connection information for encrypting the on-premises data source credentials.", + "type": "object", + "properties": { + "serviceToken": { + "description": "The token generated in service. Callers use this token to authenticate to integration runtime.", + "type": "string", + "readOnly": true + }, + "identityCertThumbprint": { + "description": "The integration runtime SSL certificate thumbprint. Click-Once application uses it to do server validation.", + "type": "string", + "readOnly": true + }, + "hostServiceUri": { + "description": "The on-premises integration runtime host URL.", + "type": "string", + "readOnly": true + }, + "version": { + "description": "The integration runtime version.", + "type": "string", + "readOnly": true + }, + "publicKey": { + "description": "The public key for encrypting a credential when transferring the credential to the integration runtime.", + "type": "string", + "readOnly": true + }, + "isIdentityCertExprired": { + "description": "Whether the identity certificate is expired.", + "type": "boolean", + "readOnly": true + } + }, + "additionalProperties": { + "type": "object" + } + }, + "IntegrationRuntimeRegenerateKeyParameters": { + "description": "Parameters to regenerate the authentication key.", + "type": "object", + "properties": { + "keyName": { + "description": "The name of the authentication key to regenerate.", + "type": "string", + "enum": [ + "authKey1", + "authKey2" + ], + "x-ms-enum": { + "name": "IntegrationRuntimeAuthKeyName", + "modelAsString": true + } + } + } + }, + "IntegrationRuntimeAuthKeys": { + "description": "The integration runtime authentication keys.", + "type": "object", + "properties": { + "authKey1": { + "type": "string", + "description": "The primary integration runtime authentication key." + }, + "authKey2": { + "type": "string", + "description": "The secondary integration runtime authentication key." + } + } + }, + "IntegrationRuntimeMonitoringData": { + "description": "Get monitoring data response.", + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Integration runtime name." + }, + "nodes": { + "type": "array", + "description": "Integration runtime node monitoring data.", + "items": { + "$ref": "#/definitions/IntegrationRuntimeNodeMonitoringData" + } + } + } + }, + "IntegrationRuntimeNodeMonitoringData": { + "description": "Monitoring data for integration runtime node.", + "type": "object", + "properties": { + "nodeName": { + "description": "Name of the integration runtime node.", + "type": "string", + "readOnly": true + }, + "availableMemoryInMB": { + "description": "Available memory (MB) on the integration runtime node.", + "type": "integer", + "format": "int32", + "readOnly": true + }, + "cpuUtilization": { + "description": "CPU percentage on the integration runtime node.", + "type": "integer", + "format": "int32", + "readOnly": true + }, + "concurrentJobsLimit": { + "description": "Maximum concurrent jobs on the integration runtime node.", + "type": "integer", + "format": "int32", + "readOnly": true + }, + "concurrentJobsRunning": { + "description": "The number of jobs currently running on the integration runtime node.", + "type": "integer", + "format": "int32", + "readOnly": true + }, + "maxConcurrentJobs": { + "description": "The maximum concurrent jobs in this integration runtime.", + "type": "integer", + "format": "int32", + "readOnly": true + }, + "sentBytes": { + "description": "Sent bytes on the integration runtime node.", + "type": "number", + "readOnly": true + }, + "receivedBytes": { + "description": "Received bytes on the integration runtime node.", + "type": "number", + "readOnly": true + } + }, + "additionalProperties": { + "type": "object" + } + }, + "IntegrationRuntimeNodeIpAddress": { + "type": "object", + "description": "The IP address of self-hosted integration runtime node.", + "properties": { + "ipAddress": { + "description": "The IP address of self-hosted integration runtime node.", + "type": "string", + "readOnly": true + } + } + }, + "SsisObjectMetadataListResponse": { + "type": "object", + "description": "A list of SSIS object metadata.", + "properties": { + "value": { + "type": "array", + "description": "List of SSIS object metadata.", + "items": { + "$ref": "#/definitions/SsisObjectMetadata" + } + }, + "nextLink": { + "type": "string", + "description": "The link to the next page of results, if any remaining results exist." + } + } + }, + "SsisObjectMetadata": { + "type": "object", + "description": "SSIS object metadata.", + "discriminator": "type", + "properties": { + "type": { + "description": "Type of metadata.", + "$ref": "#/definitions/SsisObjectMetadataType" + }, + "id": { + "type": "integer", + "format": "int64", + "description": "Metadata id." + }, + "name": { + "type": "string", + "description": "Metadata name." + }, + "description": { + "type": "string", + "description": "Metadata description." + } + }, + "required": [ + "type" + ] + }, + "SsisObjectMetadataType": { + "description": "The type of SSIS object metadata.", + "type": "string", + "enum": [ + "Folder", + "Project", + "Package", + "Environment" + ], + "x-ms-enum": { + "name": "SsisObjectMetadataType", + "modelAsString": true + } + }, + "SsisFolder": { + "x-ms-discriminator-value": "Folder", + "type": "object", + "description": "Ssis folder.", + "allOf": [ + { + "$ref": "#/definitions/SsisObjectMetadata" + } + ] + }, + "SsisProject": { + "x-ms-discriminator-value": "Project", + "type": "object", + "description": "Ssis project.", + "allOf": [ + { + "$ref": "#/definitions/SsisObjectMetadata" + } + ], + "properties": { + "folderId": { + "type": "integer", + "format": "int64", + "description": "Folder id which contains project." + }, + "version": { + "type": "integer", + "format": "int64", + "description": "Project version." + }, + "environmentRefs": { + "type": "array", + "description": "Environment reference in project", + "items": { + "$ref": "#/definitions/SsisEnvironmentReference" + } + }, + "parameters": { + "type": "array", + "description": "Parameters in project", + "items": { + "$ref": "#/definitions/SsisParameter" + } + } + } + }, + "SsisPackage": { + "x-ms-discriminator-value": "Package", + "type": "object", + "description": "Ssis Package.", + "allOf": [ + { + "$ref": "#/definitions/SsisObjectMetadata" + } + ], + "properties": { + "folderId": { + "type": "integer", + "format": "int64", + "description": "Folder id which contains package." + }, + "projectVersion": { + "type": "integer", + "format": "int64", + "description": "Project version which contains package." + }, + "projectId": { + "type": "integer", + "format": "int64", + "description": "Project id which contains package." + }, + "parameters": { + "type": "array", + "description": "Parameters in package", + "items": { + "$ref": "#/definitions/SsisParameter" + } + } + } + }, + "SsisEnvironment": { + "x-ms-discriminator-value": "Environment", + "type": "object", + "description": "Ssis environment.", + "allOf": [ + { + "$ref": "#/definitions/SsisObjectMetadata" + } + ], + "properties": { + "folderId": { + "type": "integer", + "format": "int64", + "description": "Folder id which contains environment." + }, + "variables": { + "type": "array", + "description": "Variable in environment", + "items": { + "$ref": "#/definitions/SsisVariable" + } + } + } + }, + "SsisParameter": { + "type": "object", + "description": "Ssis parameter.", + "properties": { + "id": { + "type": "integer", + "format": "int64", + "description": "Parameter id." + }, + "name": { + "type": "string", + "description": "Parameter name." + }, + "description": { + "type": "string", + "description": "Parameter description." + }, + "dataType": { + "type": "string", + "description": "Parameter type." + }, + "required": { + "type": "boolean", + "description": "Whether parameter is required." + }, + "sensitive": { + "type": "boolean", + "description": "Whether parameter is sensitive." + }, + "designDefaultValue": { + "type": "string", + "description": "Design default value of parameter." + }, + "defaultValue": { + "type": "string", + "description": "Default value of parameter." + }, + "sensitiveDefaultValue": { + "type": "string", + "description": "Default sensitive value of parameter." + }, + "valueType": { + "type": "string", + "description": "Parameter value type." + }, + "valueSet": { + "type": "boolean", + "description": "Parameter value set." + }, + "variable": { + "type": "string", + "description": "Parameter reference variable." + } + } + }, + "SsisVariable": { + "type": "object", + "description": "Ssis variable.", + "properties": { + "id": { + "type": "integer", + "format": "int64", + "description": "Variable id." + }, + "name": { + "type": "string", + "description": "Variable name." + }, + "description": { + "type": "string", + "description": "Variable description." + }, + "dataType": { + "type": "string", + "description": "Variable type." + }, + "sensitive": { + "type": "boolean", + "description": "Whether variable is sensitive." + }, + "value": { + "type": "string", + "description": "Variable value." + }, + "sensitiveValue": { + "type": "string", + "description": "Variable sensitive value." + } + } + }, + "SsisEnvironmentReference": { + "type": "object", + "description": "Ssis environment reference.", + "properties": { + "id": { + "type": "integer", + "format": "int64", + "description": "Environment reference id." + }, + "environmentFolderName": { + "type": "string", + "description": "Environment folder name." + }, + "environmentName": { + "type": "string", + "description": "Environment name." + }, + "referenceType": { + "type": "string", + "description": "Reference type" + } + } + }, + "UpdateIntegrationRuntimeRequest": { + "description": "Update integration runtime request.", + "type": "object", + "properties": { + "autoUpdate": { + "description": "Enables or disables the auto-update feature of the self-hosted integration runtime. See https://go.microsoft.com/fwlink/?linkid=854189.", + "$ref": "#/definitions/IntegrationRuntimeAutoUpdate" + }, + "updateDelayOffset": { + "description": "The time offset (in hours) in the day, e.g., PT03H is 3 hours. The integration runtime auto update will happen on that time.", + "type": "string" + } + } + }, + "IntegrationRuntimeResource": { + "description": "Integration runtime resource type.", + "allOf": [ + { + "$ref": "#/definitions/SubResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/IntegrationRuntime", + "description": "Integration runtime properties." + } + }, + "required": [ + "properties" + ] + }, + "GetSsisObjectMetadataRequest": { + "type": "object", + "description": "The request payload of get SSIS object metadata.", + "properties": { + "metadataPath": { + "type": "string", + "description": "Metadata path." + } + } + }, + "UpdateIntegrationRuntimeNodeRequest": { + "description": "Update integration runtime node request.", + "type": "object", + "properties": { + "concurrentJobsLimit": { + "description": "The number of concurrent jobs permitted to run on the integration runtime node. Values between 1 and maxConcurrentJobs(inclusive) are allowed.", + "type": "integer", + "format": "int32", + "minimum": 1 + } + } + }, + "IntegrationRuntimeListResponse": { + "description": "A list of integration runtime resources.", + "type": "object", + "required": [ + "value" + ], + "properties": { + "value": { + "type": "array", + "description": "List of integration runtimes.", + "items": { + "$ref": "#/definitions/IntegrationRuntimeResource" + } + }, + "nextLink": { + "description": "The link to the next page of results, if any remaining results exist.", + "type": "string" + } + } + }, + "IntegrationRuntimeStatusResponse": { + "description": "Integration runtime status response.", + "properties": { + "name": { + "type": "string", + "description": "The integration runtime name.", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/IntegrationRuntimeStatus", + "description": "Integration runtime properties." + } + }, + "required": [ + "properties" + ] + }, + "SsisObjectMetadataStatusResponse": { + "type": "object", + "description": "The status of the operation.", + "properties": { + "status": { + "type": "string", + "description": "The status of the operation." + }, + "name": { + "type": "string", + "description": "The operation name." + }, + "properties": { + "type": "string", + "description": "The operation properties." + }, + "error": { + "type": "string", + "description": "The operation error message." + } + } + } + }, + "parameters": { + "IntegrationRuntimeNameParameter": { + "name": "integrationRuntimeName", + "type": "string", + "required": true, + "in": "path", + "description": "Integration runtime name", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/keys.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/keys.json new file mode 100644 index 000000000000..c35e462f2270 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/keys.json @@ -0,0 +1,294 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-04-01-preview", + "title": "SynapseManagementClient", + "description": "Azure Synapse Analytics APIs" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "securityDefinitions": { + "azure_auth": { + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "type": "oauth2", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow" + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/keys": { + "get": { + "operationId": "Keys_ListByWorkspace", + "description": "Returns a list of keys in a workspace", + "tags": [ + "Keys" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/KeyInfoListResult" + }, + "description": "The list of workspace keys." + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "*** Error Responses: ***\n\n * 400 BadRequest - Invalid request to create a Workspace Key.\n\n * 500 InternalServerError- Some error occurred while creating Workspace Key." + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List keys in workspace": { + "$ref": "./examples/ListKeysInWorkspace.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/keys/{keyName}": { + "get": { + "operationId": "Keys_Get", + "description": "Gets a workspace key", + "tags": [ + "Keys" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/keyNameParameter" + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/Key" + }, + "description": "Workspace Key details" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "*** Error Responses: ***\n\n * 500 InternalServerError- Some error occurred while trying to get details for Workspace Keys." + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get a workspace key": { + "$ref": "./examples/GetKey.json" + } + } + }, + "put": { + "operationId": "Keys_CreateOrUpdate", + "description": "Creates or updates a workspace key", + "tags": [ + "Keys" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/keyNameParameter" + }, + { + "schema": { + "$ref": "#/definitions/Key" + }, + "in": "body", + "name": "keyProperties", + "required": true, + "description": "Key put request properties" + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/Key" + }, + "description": "Workspace Key resource details" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "*** Error Responses: ***\n\n * 400 BadRequest - Invalid request to create a Workspace Key.\n\n * 500 InternalServerError- Some error occurred while creating Workspace Key." + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Create or update a workspace key": { + "$ref": "./examples/CreateOrUpdateKey.json" + } + } + }, + "delete": { + "operationId": "Keys_Delete", + "description": "Deletes a workspace key", + "tags": [ + "Keys" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/keyNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Key" + } + }, + "204": { + "description": "Keys resource not found." + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "*** Error Responses: ***\n\n * 500 InternalServerError- Some error occurred while deleting Workspace Key." + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Delete a workspace key": { + "$ref": "./examples/DeleteKey.json" + } + } + } + } + }, + "definitions": { + "KeyInfoListResult": { + "description": "List of keys", + "type": "object", + "properties": { + "nextLink": { + "description": "Link to the next page of results", + "type": "string" + }, + "value": { + "description": "List of keys", + "type": "array", + "items": { + "$ref": "#/definitions/Key" + } + } + } + }, + "Key": { + "description": "A workspace key", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "description": "Keys resource properties", + "$ref": "#/definitions/KeyProperties", + "x-ms-client-flatten": true + } + } + }, + "KeyProperties": { + "description": "Key properties", + "type": "object", + "properties": { + "isActiveCMK": { + "type": "boolean", + "description": "Used to activate the workspace after a customer managed key is provided." + }, + "keyVaultUrl": { + "type": "string", + "description": "The Key Vault Url of the workspace key." + } + } + } + }, + "parameters": { + "keyNameParameter": { + "name": "keyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the workspace key", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/kustoPool.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/kustoPool.json new file mode 100644 index 000000000000..4e583c82b1c4 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/kustoPool.json @@ -0,0 +1,2371 @@ +{ + "swagger": "2.0", + "info": { + "title": "SynapseManagementClient", + "version": "2021-04-01-preview" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/providers/Microsoft.Synapse/kustooperations": { + "get": { + "tags": [ + "KustoOperations" + ], + "operationId": "KustoOperations_List", + "x-ms-examples": { + "KustoOperationsList": { + "$ref": "./examples/KustoOperationsList.json" + } + }, + "description": "Lists available operations for the Kusto sub-resources inside Microsoft.Synapse provider.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful. The response contains the list of available operations.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/kustoPools": { + "get": { + "operationId": "KustoPools_ListByWorkspace", + "summary": "List Kusto pools", + "description": "List all Kusto pools", + "tags": [ + "KustoPools" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/KustoPoolListResult" + }, + "description": "List of Kusto pools under the Workspace." + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "List Kusto pools in a workspace": { + "$ref": "./examples/KustoPoolsListByWorkspace.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/kustoPools/{kustoPoolName}": { + "get": { + "tags": [ + "KustoPools" + ], + "operationId": "kustoPools_Get", + "x-ms-examples": { + "kustoPoolsGet": { + "$ref": "./examples/KustoPoolsGet.json" + } + }, + "description": "Gets a Kusto pool.", + "parameters": [ + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/kustoPoolNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Kusto pool.", + "schema": { + "$ref": "#/definitions/KustoPool" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "KustoPools" + ], + "operationId": "kustoPools_CreateOrUpdate", + "x-ms-examples": { + "kustoPoolsCreateOrUpdate": { + "$ref": "./examples/KustoPoolsCreateOrUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Create or update a Kusto pool.", + "parameters": [ + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/kustoPoolNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/KustoPool" + }, + "description": "The Kusto pool 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 Kusto Pool. Omit this value to always overwrite the current Kusto Pool. Specify the last-seen ETag value to prevent accidentally overwriting concurrent changes." + }, + { + "name": "If-None-Match", + "in": "header", + "required": false, + "type": "string", + "x-ms-client-name": "IfNoneMatch", + "description": "Set to '*' to allow a new Kusto Pool to be created, but to prevent updating an existing Kusto Pool. Other values will result in a 412 Pre-condition Failed response." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/KustoPool" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/KustoPool" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "KustoPools" + ], + "operationId": "kustoPools_Update", + "x-ms-examples": { + "kustoPoolsUpdate": { + "$ref": "./examples/KustoPoolsUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Update a Kusto Kusto Pool.", + "parameters": [ + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/kustoPoolNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/KustoPoolUpdate" + }, + "description": "The Kusto pool 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 Kusto Pool. Omit this value to always overwrite the current Kusto Pool. Specify the last-seen ETag value to prevent accidentally overwriting concurrent changes." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/KustoPool" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/KustoPool" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "KustoPools" + ], + "operationId": "kustoPools_Delete", + "x-ms-examples": { + "kustoPoolsDelete": { + "$ref": "./examples/KustoPoolsDelete.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Deletes a Kusto pool.", + "parameters": [ + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/kustoPoolNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Kusto Pool deleted successfully." + }, + "202": { + "description": "Accepted Kusto Pool deletion request." + }, + "204": { + "description": "NoContent -- Kusto Pool does not exist in the subscription." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/kustoPools/{kustoPoolName}/databases": { + "get": { + "tags": [ + "Databases" + ], + "description": "Returns the list of databases of the given Kusto pool.", + "operationId": "Databases_ListByKustoPool", + "x-ms-examples": { + "KustoDatabasesListByKustoPool": { + "$ref": "./examples/KustoDatabasesListByKustoPool.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/kustoPoolNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of databases.", + "schema": { + "$ref": "#/definitions/DatabaseListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/kustoPools/{kustoPoolName}/databases/{databaseName}": { + "get": { + "tags": [ + "Databases" + ], + "description": "Returns a database.", + "operationId": "Databases_Get", + "x-ms-examples": { + "KustoPoolDatabasesGet": { + "$ref": "./examples/KustoPoolDatabasesGet.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/kustoPoolNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the specified database.", + "schema": { + "$ref": "#/definitions/Database" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Databases" + ], + "description": "Creates or updates a database.", + "operationId": "Databases_CreateOrUpdate", + "x-ms-examples": { + "KustoPoolDatabasesCreateOrUpdate": { + "$ref": "./examples/KustoPoolDatabasesCreateOrUpdate.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/kustoPoolNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Database" + }, + "description": "The database parameters supplied to the CreateOrUpdate operation." + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/Database" + } + }, + "201": { + "description": "Created.", + "schema": { + "$ref": "#/definitions/Database" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "Databases" + ], + "description": "Updates a database.", + "operationId": "Databases_Update", + "x-ms-examples": { + "KustoPoolDatabasesUpdate": { + "$ref": "./examples/KustoPoolDatabasesUpdate.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/kustoPoolNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Database" + }, + "description": "The database parameters supplied to the Update operation." + } + ], + "responses": { + "200": { + "description": "Successfully updated the database.", + "schema": { + "$ref": "#/definitions/Database" + } + }, + "201": { + "description": "Successfully updated the database.", + "schema": { + "$ref": "#/definitions/Database" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "Databases" + ], + "description": "Deletes the database with the given name.", + "operationId": "Databases_Delete", + "x-ms-examples": { + "KustoPoolDatabasesDelete": { + "$ref": "./examples/KustoPoolDatabasesDelete.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/kustoPoolNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the database." + }, + "202": { + "description": "Accepted database delete request." + }, + "204": { + "description": "The specified database does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/kustoPools/{kustoPoolName}/databases/{databaseName}/dataConnections": { + "get": { + "tags": [ + "DataConnections" + ], + "description": "Returns the list of data connections of the given Kusto pool database.", + "operationId": "DataConnections_ListByDatabase", + "x-ms-examples": { + "KustoPoolDataConnectionsListByDatabase": { + "$ref": "./examples/KustoPoolDataConnectionsListByDatabase.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/kustoPoolNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of data connections.", + "schema": { + "$ref": "#/definitions/DataConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/kustoPools/{kustoPoolName}/databases/{databaseName}/dataConnections/{dataConnectionName}": { + "get": { + "tags": [ + "DataConnections" + ], + "description": "Returns a data connection.", + "operationId": "DataConnections_Get", + "x-ms-examples": { + "KustoPoolDataConnectionsGet": { + "$ref": "./examples/KustoPoolDataConnectionsGet.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/kustoPoolNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/DataConnectionNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the specified data connection.", + "schema": { + "$ref": "#/definitions/DataConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "DataConnections" + ], + "description": "Creates or updates a data connection.", + "operationId": "DataConnections_CreateOrUpdate", + "x-ms-examples": { + "KustoPoolDataConnectionsCreateOrUpdate.json": { + "$ref": "./examples/KustoPoolDataConnectionsCreateOrUpdate.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/kustoPoolNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/DataConnectionNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DataConnection" + }, + "description": "The data connection parameters supplied to the CreateOrUpdate operation." + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/DataConnection" + } + }, + "201": { + "description": "Created.", + "schema": { + "$ref": "#/definitions/DataConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "DataConnections" + ], + "description": "Updates a data connection.", + "operationId": "DataConnections_Update", + "x-ms-examples": { + "KustoPoolDataConnectionsUpdate": { + "$ref": "./examples/KustoPoolDataConnectionsUpdate.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/kustoPoolNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/DataConnectionNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DataConnection" + }, + "description": "The data connection parameters supplied to the Update operation." + } + ], + "responses": { + "200": { + "description": "Successfully updated the data connection.", + "schema": { + "$ref": "#/definitions/DataConnection" + } + }, + "201": { + "description": "Successfully updated the data connection.", + "schema": { + "$ref": "#/definitions/DataConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "DataConnections" + ], + "description": "Deletes the data connection with the given name.", + "operationId": "DataConnections_Delete", + "x-ms-examples": { + "KustoPoolDataConnectionsDelete": { + "$ref": "./examples/KustoPoolDataConnectionsDelete.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/kustoPoolNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/DataConnectionNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the data connection." + }, + "202": { + "description": "Accepted data connection deletion request." + }, + "204": { + "description": "The specified data connection does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/kustoPools/{kustoPoolName}/principalAssignments": { + "get": { + "tags": [ + "KustoPoolPrincipalAssignments" + ], + "operationId": "KustoPoolPrincipalAssignments_List", + "x-ms-examples": { + "KustoPoolPrincipalAssignmentsList": { + "$ref": "./examples/KustoPoolPrincipalAssignmentsList.json" + } + }, + "description": "Lists all Kusto pool principalAssignments.", + "parameters": [ + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/kustoPoolNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/ClusterPrincipalAssignmentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/kustoPools/{kustoPoolName}/principalAssignments/{principalAssignmentName}": { + "get": { + "tags": [ + "KustoPoolPrincipalAssignments" + ], + "operationId": "KustoPoolPrincipalAssignments_Get", + "x-ms-examples": { + "KustoPoolPrincipalAssignmentsGet": { + "$ref": "./examples/KustoPoolPrincipalAssignmentsGet.json" + } + }, + "description": "Gets a Kusto pool principalAssignment.", + "parameters": [ + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/kustoPoolNameParameter" + }, + { + "$ref": "#/parameters/PrincipalAssignmentNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Kusto pool principal assignment object.", + "schema": { + "$ref": "#/definitions/ClusterPrincipalAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "KustoPoolPrincipalAssignments" + ], + "operationId": "KustoPoolPrincipalAssignments_CreateOrUpdate", + "x-ms-examples": { + "KustoPoolPrincipalAssignmentsCreateOrUpdate": { + "$ref": "./examples/KustoPoolPrincipalAssignmentsCreateOrUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Create a Kusto pool principalAssignment.", + "parameters": [ + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/kustoPoolNameParameter" + }, + { + "$ref": "#/parameters/PrincipalAssignmentNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ClusterPrincipalAssignment" + }, + "description": "The Kusto pool principalAssignment's parameters supplied for the operation." + } + ], + "responses": { + "200": { + "description": "Successfully updated the PrincipalAssignment.", + "schema": { + "$ref": "#/definitions/ClusterPrincipalAssignment" + } + }, + "201": { + "description": "Successfully created the principalAssignment.", + "schema": { + "$ref": "#/definitions/ClusterPrincipalAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "KustoPoolPrincipalAssignments" + ], + "operationId": "KustoPoolPrincipalAssignments_Delete", + "x-ms-examples": { + "KustoPoolPrincipalAssignmentsDelete": { + "$ref": "./examples/KustoPoolPrincipalAssignmentsDelete.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Deletes a Kusto pool principalAssignment.", + "parameters": [ + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/kustoPoolNameParameter" + }, + { + "$ref": "#/parameters/PrincipalAssignmentNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK -- principalAssignments deleted successfully." + }, + "202": { + "description": "Accepted the delete principalAssignments request." + }, + "204": { + "description": "NoContent -- principalAssignments does not exist in the subscription." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/kustoPools/{kustoPoolName}/databases/{databaseName}/principalAssignments": { + "get": { + "tags": [ + "DatabasePrincipalAssignments" + ], + "operationId": "DatabasePrincipalAssignments_List", + "x-ms-examples": { + "KustoPoolDatabasePrincipalAssignmentsList": { + "$ref": "./examples/KustoPoolDatabasePrincipalAssignmentsList.json" + } + }, + "description": "Lists all Kusto pool database principalAssignments.", + "parameters": [ + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/kustoPoolNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/DatabasePrincipalAssignmentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/kustoPools/{kustoPoolName}/databases/{databaseName}/principalAssignments/{principalAssignmentName}": { + "get": { + "tags": [ + "DatabasePrincipalAssignments" + ], + "operationId": "DatabasePrincipalAssignments_Get", + "x-ms-examples": { + "KustoPoolDatabasePrincipalAssignmentsGet": { + "$ref": "./examples/KustoPoolDatabasePrincipalAssignmentsGet.json" + } + }, + "description": "Gets a Kusto pool database principalAssignment.", + "parameters": [ + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/kustoPoolNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/PrincipalAssignmentNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Kusto pool database principal assignment object.", + "schema": { + "$ref": "#/definitions/DatabasePrincipalAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "DatabasePrincipalAssignments" + ], + "operationId": "DatabasePrincipalAssignments_CreateOrUpdate", + "x-ms-examples": { + "KustoPoolDatabasePrincipalAssignmentsCreateOrUpdate": { + "$ref": "./examples/KustoPoolDatabasePrincipalAssignmentsCreateOrUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Creates a Kusto pool database principalAssignment.", + "parameters": [ + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/kustoPoolNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/PrincipalAssignmentNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DatabasePrincipalAssignment" + }, + "description": "The Kusto principalAssignments parameters supplied for the operation." + } + ], + "responses": { + "200": { + "description": "Successfully updated the PrincipalAssignments.", + "schema": { + "$ref": "#/definitions/DatabasePrincipalAssignment" + } + }, + "201": { + "description": "Successfully created the principalAssignments.", + "schema": { + "$ref": "#/definitions/DatabasePrincipalAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "DatabasePrincipalAssignments" + ], + "operationId": "DatabasePrincipalAssignments_Delete", + "x-ms-examples": { + "KustoPoolDatabasePrincipalAssignmentsDelete": { + "$ref": "./examples/KustoPoolDatabasePrincipalAssignmentsDelete.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Deletes a Kusto pool principalAssignment.", + "parameters": [ + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/kustoPoolNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/PrincipalAssignmentNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK -- principalAssignments deleted successfully." + }, + "202": { + "description": "Accepted the delete principalAssignments request." + }, + "204": { + "description": "NoContent -- principalAssignments does not exist in the subscription." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Synapse/locations/{location}/kustoPoolCheckNameAvailability": { + "post": { + "tags": [ + "KustoPools" + ], + "operationId": "KustoPools_CheckNameAvailability", + "x-ms-examples": { + "KustoPoolsCheckNameAvailability": { + "$ref": "./examples/KustoPoolsCheckNameAvailability.json" + } + }, + "description": "Checks that the kusto pool name is valid and is not already in use.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/LocationParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "kustoPoolName", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/KustoPoolCheckNameRequest" + }, + "description": "The name of the cluster." + } + ], + "responses": { + "200": { + "description": "OK -- Operation to check the kusto resource name availability was successful.", + "schema": { + "$ref": "#/definitions/CheckNameResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "OperationListResult": { + "title": "Result of the request to list REST API operations. It contains a list of operations and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "title": "The list of operations supported by the resource provider." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "title": "The URL to get the next set of operation list results if there are any." + } + } + }, + "Operation": { + "title": "A REST API operation", + "type": "object", + "properties": { + "name": { + "title": "The operation name.", + "description": "This is of the format {provider}/{resource}/{operation}.", + "type": "string" + }, + "display": { + "title": "The object that describes the operation.", + "properties": { + "provider": { + "title": "Friendly name of the resource provider.", + "type": "string" + }, + "operation": { + "title": "The operation type.", + "description": "For example: read, write, delete.", + "type": "string" + }, + "resource": { + "title": "The resource type on which the operation is performed.", + "type": "string" + }, + "description": { + "title": "The friendly name of the operation.", + "type": "string" + } + } + }, + "origin": { + "title": "The intended executor of the operation.", + "type": "string" + }, + "properties": { + "title": "Properties of the operation.", + "type": "object", + "x-ms-client-flatten": true + } + } + }, + "KustoPoolListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/KustoPool" + }, + "description": "The list of Kusto pools." + } + }, + "description": "The list Kusto pools operation response." + }, + "AzureSku": { + "type": "object", + "required": [ + "name", + "tier" + ], + "properties": { + "name": { + "description": "SKU name.", + "type": "string", + "enum": [ + "Standard_DS13_v2+1TB_PS", + "Standard_DS13_v2+2TB_PS", + "Standard_DS14_v2+3TB_PS", + "Standard_DS14_v2+4TB_PS", + "Standard_D13_v2", + "Standard_D14_v2", + "Standard_L8s", + "Standard_L16s", + "Standard_L8s_v2", + "Standard_L16s_v2", + "Standard_D11_v2", + "Standard_D12_v2", + "Standard_L4s", + "Dev(No SLA)_Standard_D11_v2", + "Standard_E64i_v3", + "Standard_E80ids_v4", + "Standard_E2a_v4", + "Standard_E4a_v4", + "Standard_E8a_v4", + "Standard_E16a_v4", + "Standard_E8as_v4+1TB_PS", + "Standard_E8as_v4+2TB_PS", + "Standard_E16as_v4+3TB_PS", + "Standard_E16as_v4+4TB_PS", + "Dev(No SLA)_Standard_E2a_v4" + ], + "x-ms-enum": { + "name": "AzureSkuName", + "modelAsString": true + } + }, + "capacity": { + "description": "The number of instances of the cluster.", + "type": "integer", + "format": "int32" + }, + "tier": { + "description": "SKU tier.", + "type": "string", + "enum": [ + "Basic", + "Standard" + ], + "x-ms-enum": { + "name": "AzureSkuTier", + "modelAsString": true + } + } + }, + "description": "Azure SKU definition." + }, + "KustoPoolProperties": { + "properties": { + "state": { + "type": "string", + "readOnly": true, + "description": "The state of the resource.", + "enum": [ + "Creating", + "Unavailable", + "Running", + "Deleting", + "Deleted", + "Stopping", + "Stopped", + "Starting", + "Updating" + ], + "x-ms-enum": { + "name": "State", + "modelAsString": true + } + }, + "provisioningState": { + "$ref": "#/definitions/ResourceProvisioningState", + "description": "The provisioned state of the resource." + }, + "uri": { + "type": "string", + "readOnly": true, + "description": "The Kusto Pool URI." + }, + "dataIngestionUri": { + "type": "string", + "readOnly": true, + "description": "The Kusto Pool data ingestion URI." + }, + "stateReason": { + "type": "string", + "readOnly": true, + "description": "The reason for the Kusto Pool's current state." + }, + "engineType": { + "type": "string", + "description": "The engine type", + "enum": [ + "V2", + "V3" + ], + "x-ms-enum": { + "name": "EngineType", + "modelAsString": true + } + }, + "workspaceUid": { + "type": "string", + "description": "The workspace unique identifier." + } + }, + "description": "Class representing the Kusto pool properties." + }, + "KustoPool": { + "required": [ + "sku" + ], + "properties": { + "sku": { + "$ref": "#/definitions/AzureSku", + "description": "The SKU of the kusto pool." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/KustoPoolProperties", + "description": "The kusto pool properties." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "systemData": { + "readOnly": true, + "type": "object", + "description": "Azure Resource Manager metadata containing createdBy and modifiedBy information.", + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/systemData" + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/TrackedResource" + } + ], + "description": "Class representing a Kusto kusto pool." + }, + "KustoPoolUpdate": { + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-ms-mutability": [ + "read", + "create", + "update" + ], + "description": "Resource tags." + }, + "sku": { + "$ref": "#/definitions/AzureSku", + "description": "The SKU of the kusto pool." + }, + "properties": { + "x-ms-client-flatten": true, + "description": "The kusto pool properties.", + "$ref": "#/definitions/KustoPoolProperties" + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "description": "Class representing an update to a Kusto kusto pool." + }, + "DatabaseListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Database" + }, + "description": "The list of Kusto databases." + } + }, + "description": "The list Kusto databases operation response." + }, + "Database": { + "required": [ + "kind" + ], + "properties": { + "location": { + "type": "string", + "description": "Resource location." + }, + "kind": { + "description": "Kind of the database", + "enum": [ + "ReadWrite", + "ReadOnlyFollowing" + ], + "type": "string", + "x-ms-enum": { + "name": "Kind", + "modelAsString": true + } + }, + "systemData": { + "readOnly": true, + "type": "object", + "description": "Azure Resource Manager metadata containing createdBy and modifiedBy information.", + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/systemData" + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "Class representing a Kusto database.", + "discriminator": "kind" + }, + "ReadWriteDatabase": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The database properties.", + "$ref": "#/definitions/ReadWriteDatabaseProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Database" + } + ], + "description": "Class representing a read write database.", + "x-ms-discriminator-value": "ReadWrite" + }, + "ReadWriteDatabaseProperties": { + "properties": { + "provisioningState": { + "$ref": "#/definitions/ResourceProvisioningState", + "description": "The provisioned state of the resource." + }, + "softDeletePeriod": { + "type": "string", + "format": "duration", + "description": "The time the data should be kept before it stops being accessible to queries in TimeSpan." + }, + "hotCachePeriod": { + "type": "string", + "format": "duration", + "description": "The time the data should be kept in cache for fast queries in TimeSpan." + }, + "statistics": { + "$ref": "#/definitions/DatabaseStatistics", + "description": "The statistics of the database." + }, + "isFollowed": { + "type": "boolean", + "readOnly": true, + "description": "Indicates whether the database is followed." + } + }, + "description": "Class representing the Kusto database properties." + }, + "DatabaseStatistics": { + "type": "object", + "readOnly": true, + "properties": { + "size": { + "type": "number", + "description": "The database size - the total size of compressed data and index in bytes." + } + }, + "description": "A class that contains database statistics information." + }, + "DataConnectionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DataConnection" + }, + "description": "The list of Kusto data connections." + } + }, + "description": "The list Kusto data connections operation response." + }, + "DataConnection": { + "required": [ + "kind" + ], + "properties": { + "location": { + "type": "string", + "description": "Resource location." + }, + "kind": { + "description": "Kind of the endpoint for the data connection", + "enum": [ + "EventHub", + "EventGrid", + "IotHub" + ], + "type": "string", + "x-ms-enum": { + "name": "DataConnectionKind", + "modelAsString": true + } + }, + "systemData": { + "readOnly": true, + "type": "object", + "description": "Azure Resource Manager metadata containing createdBy and modifiedBy information.", + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/systemData" + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "Class representing a data connection.", + "discriminator": "kind" + }, + "EventHubDataConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The Event Hub data connection properties to validate.", + "$ref": "#/definitions/EventHubConnectionProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/DataConnection" + } + ], + "description": "Class representing an event hub data connection.", + "x-ms-discriminator-value": "EventHub" + }, + "IotHubDataConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The Iot Hub data connection properties.", + "$ref": "#/definitions/IotHubConnectionProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/DataConnection" + } + ], + "description": "Class representing an iot hub data connection.", + "x-ms-discriminator-value": "IotHub" + }, + "EventGridDataConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of the Event Grid data connection.", + "$ref": "#/definitions/EventGridConnectionProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/DataConnection" + } + ], + "description": "Class representing an Event Grid data connection.", + "x-ms-discriminator-value": "EventGrid" + }, + "EventHubConnectionProperties": { + "properties": { + "eventHubResourceId": { + "type": "string", + "description": "The resource ID of the event hub to be used to create a data connection." + }, + "consumerGroup": { + "type": "string", + "description": "The event hub consumer group." + }, + "tableName": { + "type": "string", + "description": "The table where the data should be ingested. Optionally the table information can be added to each message." + }, + "mappingRuleName": { + "type": "string", + "description": "The mapping rule to be used to ingest the data. Optionally the mapping information can be added to each message." + }, + "dataFormat": { + "$ref": "#/definitions/EventHubDataFormat", + "description": "The data format of the message. Optionally the data format can be added to each message." + }, + "eventSystemProperties": { + "type": "array", + "items": { + "type": "string" + }, + "description": "System properties of the event hub" + }, + "compression": { + "$ref": "#/definitions/Compression", + "description": "The event hub messages compression type" + }, + "provisioningState": { + "$ref": "#/definitions/ResourceProvisioningState", + "description": "The provisioned state of the resource." + } + }, + "required": [ + "eventHubResourceId", + "consumerGroup" + ], + "description": "Class representing the Kusto event hub connection properties." + }, + "IotHubConnectionProperties": { + "properties": { + "iotHubResourceId": { + "type": "string", + "description": "The resource ID of the Iot hub to be used to create a data connection." + }, + "consumerGroup": { + "type": "string", + "description": "The iot hub consumer group." + }, + "tableName": { + "type": "string", + "description": "The table where the data should be ingested. Optionally the table information can be added to each message." + }, + "mappingRuleName": { + "type": "string", + "description": "The mapping rule to be used to ingest the data. Optionally the mapping information can be added to each message." + }, + "dataFormat": { + "$ref": "#/definitions/IotHubDataFormat", + "description": "The data format of the message. Optionally the data format can be added to each message." + }, + "eventSystemProperties": { + "type": "array", + "items": { + "type": "string" + }, + "description": "System properties of the iot hub" + }, + "sharedAccessPolicyName": { + "type": "string", + "description": "The name of the share access policy" + }, + "provisioningState": { + "$ref": "#/definitions/ResourceProvisioningState", + "description": "The provisioned state of the resource." + } + }, + "required": [ + "iotHubResourceId", + "consumerGroup", + "sharedAccessPolicyName" + ], + "description": "Class representing the Kusto Iot hub connection properties." + }, + "EventGridConnectionProperties": { + "properties": { + "storageAccountResourceId": { + "type": "string", + "description": "The resource ID of the storage account where the data resides." + }, + "eventHubResourceId": { + "type": "string", + "description": "The resource ID where the event grid is configured to send events." + }, + "consumerGroup": { + "type": "string", + "description": "The event hub consumer group." + }, + "tableName": { + "type": "string", + "description": "The table where the data should be ingested. Optionally the table information can be added to each message." + }, + "mappingRuleName": { + "type": "string", + "description": "The mapping rule to be used to ingest the data. Optionally the mapping information can be added to each message." + }, + "dataFormat": { + "$ref": "#/definitions/EventGridDataFormat", + "description": "The data format of the message. Optionally the data format can be added to each message." + }, + "ignoreFirstRecord": { + "type": "boolean", + "description": "A Boolean value that, if set to true, indicates that ingestion should ignore the first record of every file" + }, + "blobStorageEventType": { + "$ref": "#/definitions/BlobStorageEventType", + "description": "The name of blob storage event type to process." + }, + "provisioningState": { + "$ref": "#/definitions/ResourceProvisioningState", + "description": "The provisioned state of the resource." + } + }, + "required": [ + "storageAccountResourceId", + "eventHubResourceId", + "consumerGroup" + ], + "description": "Class representing the Kusto event grid connection properties." + }, + "EventHubDataFormat": { + "description": "The data format of the message. Optionally the data format can be added to each message.", + "type": "string", + "enum": [ + "MULTIJSON", + "JSON", + "CSV", + "TSV", + "SCSV", + "SOHSV", + "PSV", + "TXT", + "RAW", + "SINGLEJSON", + "AVRO", + "TSVE", + "PARQUET", + "ORC", + "APACHEAVRO", + "W3CLOGFILE" + ], + "x-ms-enum": { + "name": "eventHubDataFormat", + "modelAsString": true + } + }, + "IotHubDataFormat": { + "description": "The data format of the message. Optionally the data format can be added to each message.", + "type": "string", + "enum": [ + "MULTIJSON", + "JSON", + "CSV", + "TSV", + "SCSV", + "SOHSV", + "PSV", + "TXT", + "RAW", + "SINGLEJSON", + "AVRO", + "TSVE", + "PARQUET", + "ORC", + "APACHEAVRO", + "W3CLOGFILE" + ], + "x-ms-enum": { + "name": "iotHubDataFormat", + "modelAsString": true + } + }, + "EventGridDataFormat": { + "description": "The data format of the message. Optionally the data format can be added to each message.", + "type": "string", + "enum": [ + "MULTIJSON", + "JSON", + "CSV", + "TSV", + "SCSV", + "SOHSV", + "PSV", + "TXT", + "RAW", + "SINGLEJSON", + "AVRO", + "TSVE", + "PARQUET", + "ORC", + "APACHEAVRO", + "W3CLOGFILE" + ], + "x-ms-enum": { + "name": "eventGridDataFormat", + "modelAsString": true + } + }, + "BlobStorageEventType": { + "description": "The name of blob storage event type to process.", + "type": "string", + "enum": [ + "Microsoft.Storage.BlobCreated", + "Microsoft.Storage.BlobRenamed" + ], + "x-ms-enum": { + "name": "blobStorageEventType", + "modelAsString": true + } + }, + "ResourceProvisioningState": { + "type": "string", + "readOnly": true, + "description": "The provisioned state of the resource.", + "enum": [ + "Running", + "Creating", + "Deleting", + "Succeeded", + "Failed", + "Moving", + "Canceled" + ], + "x-ms-enum": { + "name": "ResourceProvisioningState", + "modelAsString": true + } + }, + "Compression": { + "description": "The compression type", + "type": "string", + "enum": [ + "None", + "GZip" + ], + "x-ms-enum": { + "name": "compression", + "modelAsString": true + } + }, + "ClusterPrincipalAssignmentListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ClusterPrincipalAssignment" + }, + "description": "The list of Kusto cluster principal assignments." + } + }, + "description": "The list Kusto cluster principal assignments operation response." + }, + "ClusterPrincipalAssignment": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ClusterPrincipalProperties", + "description": "The cluster principal." + }, + "systemData": { + "readOnly": true, + "type": "object", + "description": "Azure Resource Manager metadata containing createdBy and modifiedBy information.", + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/systemData" + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "Class representing a cluster principal assignment." + }, + "ClusterPrincipalProperties": { + "type": "object", + "required": [ + "principalId", + "role", + "principalType" + ], + "properties": { + "principalId": { + "description": "The principal ID assigned to the cluster principal. It can be a user email, application ID, or security group name.", + "type": "string" + }, + "role": { + "description": "Cluster principal role.", + "type": "string", + "enum": [ + "AllDatabasesAdmin", + "AllDatabasesViewer" + ], + "x-ms-enum": { + "name": "ClusterPrincipalRole", + "modelAsString": true + } + }, + "tenantId": { + "type": "string", + "description": "The tenant id of the principal" + }, + "principalType": { + "description": "Principal type.", + "type": "string", + "enum": [ + "App", + "Group", + "User" + ], + "x-ms-enum": { + "name": "PrincipalType", + "modelAsString": true + } + }, + "tenantName": { + "type": "string", + "readOnly": true, + "description": "The tenant name of the principal" + }, + "principalName": { + "type": "string", + "readOnly": true, + "description": "The principal name" + }, + "provisioningState": { + "$ref": "#/definitions/ResourceProvisioningState", + "description": "The provisioned state of the resource." + } + }, + "description": "A class representing cluster principal property." + }, + "DatabasePrincipalAssignmentListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DatabasePrincipalAssignment" + }, + "description": "The list of Kusto database principal assignments." + } + }, + "description": "The list Kusto database principal assignments operation response." + }, + "DatabasePrincipalAssignment": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DatabasePrincipalProperties", + "description": "The database principal." + }, + "systemData": { + "readOnly": true, + "type": "object", + "description": "Azure Resource Manager metadata containing createdBy and modifiedBy information.", + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/systemData" + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "Class representing a database principal assignment." + }, + "DatabasePrincipalProperties": { + "type": "object", + "required": [ + "principalId", + "role", + "principalType" + ], + "properties": { + "principalId": { + "description": "The principal ID assigned to the database principal. It can be a user email, application ID, or security group name.", + "type": "string" + }, + "role": { + "description": "Database principal role.", + "type": "string", + "enum": [ + "Admin", + "Ingestor", + "Monitor", + "User", + "UnrestrictedViewer", + "Viewer" + ], + "x-ms-enum": { + "name": "DatabasePrincipalRole", + "modelAsString": true + } + }, + "tenantId": { + "type": "string", + "description": "The tenant id of the principal" + }, + "principalType": { + "description": "Principal type.", + "type": "string", + "enum": [ + "App", + "Group", + "User" + ], + "x-ms-enum": { + "name": "PrincipalType", + "modelAsString": true + } + }, + "tenantName": { + "type": "string", + "readOnly": true, + "description": "The tenant name of the principal" + }, + "principalName": { + "type": "string", + "readOnly": true, + "description": "The principal name" + }, + "provisioningState": { + "$ref": "#/definitions/ResourceProvisioningState", + "description": "The provisioned state of the resource." + } + }, + "description": "A class representing database principal property." + }, + "KustoPoolCheckNameRequest": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Kusto Pool name." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Synapse/workspaces/kustoPools" + ], + "x-ms-enum": { + "name": "KustoPoolType", + "modelAsString": false + }, + "description": "The type of resource, Microsoft.Synapse/workspaces/kustoPools." + } + }, + "required": [ + "name", + "type" + ], + "description": "The object sent for a kusto pool check name availability request." + }, + "CheckNameResult": { + "type": "object", + "properties": { + "nameAvailable": { + "type": "boolean", + "description": "Specifies a Boolean value that indicates if the name is available." + }, + "name": { + "type": "string", + "description": "The name that was checked." + }, + "message": { + "type": "string", + "description": "Message indicating an unavailable name due to a conflict, or a description of the naming rules that are violated." + }, + "reason": { + "type": "string", + "enum": [ + "Invalid", + "AlreadyExists" + ], + "x-ms-enum": { + "name": "reason", + "modelAsString": true + }, + "description": "Message providing the reason why the given name is invalid." + } + }, + "description": "The result returned from a check name availability request." + } + }, + "parameters": { + "kustoPoolNameParameter": { + "name": "kustoPoolName", + "in": "path", + "description": "The name of the Kusto pool.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "OperationIdParameter": { + "name": "operationId", + "in": "path", + "description": "The Guid of the operation ID", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "DatabaseNameParameter": { + "name": "databaseName", + "in": "path", + "description": "The name of the database in the Kusto pool.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "DataConnectionNameParameter": { + "name": "dataConnectionName", + "in": "path", + "description": "The name of the data connection.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "PrincipalAssignmentNameParameter": { + "name": "principalAssignmentName", + "in": "path", + "description": "The name of the Kusto principalAssignment.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/library.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/library.json new file mode 100644 index 000000000000..37c2c48f7cad --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/library.json @@ -0,0 +1,185 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-04-01-preview", + "title": "SynapseManagementClient", + "description": "Azure Synapse Analytics APIs" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "securityDefinitions": { + "azure_auth": { + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "type": "oauth2", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow" + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/libraries/{libraryName}": { + "get": { + "operationId": "Library_Get", + "summary": "Get library by name.", + "description": "Get library by name in a workspace.", + "tags": [ + "Libraries" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/LibraryNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/LibraryResource" + } + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get Library by name": { + "$ref": "./examples/Library_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/libraries": { + "get": { + "operationId": "Libraries_ListByWorkspace", + "summary": "List the libraries in a workspace.", + "description": "List libraries in a workspace.", + "tags": [ + "Libraries" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/LibraryListResponse" + } + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "List libraries in a workspace": { + "$ref": "./examples/Libraries_ListByWorkspace.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "parameters": { + "LibraryNameParameter": { + "name": "libraryName", + "in": "path", + "required": true, + "type": "string", + "description": "Library name", + "x-ms-parameter-location": "method" + } + }, + "definitions": { + "LibraryListResponse": { + "description": "A list of Library resources.", + "type": "object", + "required": [ + "value" + ], + "properties": { + "value": { + "type": "array", + "description": "List of Library.", + "items": { + "$ref": "#/definitions/LibraryResource" + } + }, + "nextLink": { + "description": "The link to the next page of results, if any remaining results exist.", + "type": "string" + } + } + }, + "LibraryResource": { + "description": "Library response details", + "allOf": [ + { + "$ref": "#/definitions/SubResource" + } + ], + "properties": { + "properties": { + "$ref": "./bigDataPool.json#/definitions/LibraryInfo", + "description": "Library/package properties.", + "x-ms-client-flatten": true + } + }, + "required": [ + "properties" + ] + }, + "SubResource": { + "description": "Azure Synapse nested resource, which belongs to a workspace.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/AzureEntityResource" + } + ] + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/operations.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/operations.json new file mode 100644 index 000000000000..0308666fd8bc --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/operations.json @@ -0,0 +1,402 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-04-01-preview", + "title": "SynapseManagementClient", + "description": "Azure Synapse Analytics APIs" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "securityDefinitions": { + "azure_auth": { + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "type": "oauth2", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow" + } + }, + "paths": { + "/providers/Microsoft.Synapse/operations": { + "get": { + "operationId": "Operations_List", + "summary": "All operations", + "description": "Get all available operations", + "tags": [ + "Operations" + ], + "deprecated": false, + "consumes": [], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/AvailableRpOperation" + } + }, + "description": "" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "x-ms-examples": { + "Get available operations": { + "$ref": "./examples/GetAvailableOperations.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/operationResults/{operationId}": { + "get": { + "operationId": "Operations_GetLocationHeaderResult", + "summary": "Get operation result", + "description": "Get the result of an operation", + "tags": [ + "Operations" + ], + "deprecated": false, + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "operationId", + "description": "Operation ID", + "required": true + } + ], + "responses": { + "200": { + "description": "" + }, + "201": { + "description": "" + }, + "202": { + "description": "" + }, + "204": { + "description": "" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "x-ms-examples": { + "Get location header result": { + "$ref": "./examples/GetLocationHeader.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/operationStatuses/{operationId}": { + "get": { + "operationId": "Operations_GetAzureAsyncHeaderResult", + "summary": "Get operation status", + "description": "Get the status of an operation", + "tags": [ + "Operations" + ], + "deprecated": false, + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "operationId", + "description": "Operation ID", + "required": true + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/OperationResource" + }, + "description": "" + }, + "404": { + "description": "Not found" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "x-ms-examples": { + "Get azure async operation header result": { + "$ref": "./examples/GetAzureAsyncOperationHeader.json" + } + } + } + } + }, + "definitions": { + "AvailableRpOperation": { + "type": "object", + "description": "An operation that is available in this resource provider", + "properties": { + "display": { + "$ref": "#/definitions/AvailableRpOperationDisplayInfo", + "description": "Display properties of the operation" + }, + "isDataAction": { + "type": "string", + "description": "Whether this operation is a data action" + }, + "name": { + "type": "string", + "description": "Operation name" + }, + "properties": { + "$ref": "#/definitions/OperationMetaPropertyInfo", + "description": "Operation properties", + "x-ms-client-flatten": true + }, + "origin": { + "type": "string", + "description": "Operation origin" + } + } + }, + "OperationResource": { + "type": "object", + "description": "An operation", + "properties": { + "id": { + "type": "string", + "description": "Operation ID" + }, + "name": { + "type": "string", + "description": "Operation name" + }, + "status": { + "enum": [ + "InProgress", + "Succeeded", + "Failed", + "Canceled" + ], + "description": "Operation status", + "type": "string", + "x-ms-enum": { + "name": "OperationStatus", + "modelAsString": true + } + }, + "properties": { + "type": "object", + "description": "Operation properties", + "x-ms-client-flatten": true + }, + "error": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorDetail", + "description": "Errors from the operation" + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "Operation start time" + }, + "endTime": { + "type": "string", + "format": "date-time", + "description": "Operation start time" + }, + "percentComplete": { + "type": "number", + "description": "Completion percentage of the operation" + } + } + }, + "AvailableRpOperationDisplayInfo": { + "type": "object", + "description": "Description of an available operation", + "properties": { + "description": { + "type": "string", + "description": "Operation description" + }, + "resource": { + "type": "string", + "description": "Resource type" + }, + "provider": { + "type": "string", + "description": "Resource provider name" + }, + "operation": { + "type": "string", + "description": "Operation name" + } + } + }, + "OperationMetaPropertyInfo": { + "type": "object", + "description": "What is this?", + "properties": { + "serviceSpecification": { + "$ref": "#/definitions/OperationMetaServiceSpecification", + "description": "Operation service specification" + } + } + }, + "OperationMetaServiceSpecification": { + "type": "object", + "description": "What is this?", + "properties": { + "metricSpecifications": { + "type": "array", + "description": "Service metric specifications", + "items": { + "$ref": "#/definitions/OperationMetaMetricSpecification" + } + }, + "logSpecifications": { + "type": "array", + "description": "Service log specifications", + "items": { + "$ref": "#/definitions/OperationMetaLogSpecification" + } + } + } + }, + "OperationMetaMetricSpecification": { + "type": "object", + "description": "What is this?", + "properties": { + "sourceMdmNamespace": { + "type": "string", + "description": "The source MDM namespace" + }, + "displayName": { + "type": "string", + "description": "Metric display name" + }, + "name": { + "type": "string", + "description": "Metric unique name" + }, + "aggregationType": { + "type": "string", + "description": "Metric aggregation type" + }, + "displayDescription": { + "type": "string", + "description": "Metric description" + }, + "sourceMdmAccount": { + "type": "string", + "description": "The source MDM account" + }, + "enableRegionalMdmAccount": { + "type": "boolean", + "description": "Whether the regional MDM account is enabled" + }, + "unit": { + "type": "string", + "description": "Metric units" + }, + "dimensions": { + "type": "array", + "description": "Metric dimensions", + "items": { + "$ref": "#/definitions/OperationMetaMetricDimensionSpecification" + } + }, + "supportsInstanceLevelAggregation": { + "type": "boolean", + "description": "Whether the metric supports instance-level aggregation" + }, + "metricFilterPattern": { + "type": "string", + "description": "Metric filter" + } + } + }, + "OperationMetaLogSpecification": { + "type": "object", + "description": "What is this?", + "properties": { + "displayName": { + "type": "string", + "description": "Log display name" + }, + "blobDuration": { + "type": "string", + "description": "Time range the log covers" + }, + "name": { + "type": "string", + "description": "Log unique name" + } + } + }, + "OperationMetaMetricDimensionSpecification": { + "type": "object", + "description": "What is this?", + "properties": { + "displayName": { + "type": "string", + "description": "Dimension display name" + }, + "name": { + "type": "string", + "description": "Dimension unique name" + }, + "toBeExportedForShoebox": { + "type": "boolean", + "description": "Whether this metric should be exported for Shoebox" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/privateEndpointConnections.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/privateEndpointConnections.json new file mode 100644 index 000000000000..025e97eb89b6 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/privateEndpointConnections.json @@ -0,0 +1,219 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-04-01-preview", + "title": "SynapseManagementClient", + "description": "Azure Synapse Analytics APIs" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "securityDefinitions": { + "azure_auth": { + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "type": "oauth2", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow" + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection.", + "required": true, + "type": "string" + } + ], + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Gets a private endpoint connection.", + "operationId": "PrivateEndpointConnections_Get", + "consumes": [], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "schema": { + "$ref": "../../../../common/v1/privateEndpointConnection.json#/definitions/PrivateEndpointConnection" + }, + "description": "Private endpoint connection" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "x-ms-examples": { + "Get private endpoint connection": { + "$ref": "./examples/GetPrivateEndpointConnection.json" + } + } + }, + "put": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Approve or reject a private endpoint connection.", + "operationId": "PrivateEndpointConnections_Create", + "parameters": [ + { + "name": "request", + "in": "body", + "description": "Request body of private endpoint connection to create.", + "required": true, + "schema": { + "$ref": "../../../../common/v1/privateEndpointConnection.json#/definitions/PrivateEndpointConnection" + } + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "schema": { + "$ref": "../../../../common/v1/privateEndpointConnection.json#/definitions/PrivateEndpointConnection" + }, + "description": "Private endpoint connection" + }, + "201": { + "schema": { + "$ref": "../../../../common/v1/privateEndpointConnection.json#/definitions/PrivateEndpointConnection" + }, + "description": "Private endpoint connection" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Approve private endpoint connection": { + "$ref": "./examples/ApprovePrivateEndpointConnection.json" + } + } + }, + "delete": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Delete a private endpoint connection.", + "operationId": "PrivateEndpointConnections_Delete", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-long-running-operation": true, + "responses": { + "200": { + "description": "" + }, + "202": { + "schema": { + "$ref": "./operations.json#/definitions/OperationResource" + }, + "description": "Operation details" + }, + "204": { + "description": "Deletion completed" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "x-ms-examples": { + "Delete private endpoint connection": { + "$ref": "./examples/DeletePrivateEndpointConnection.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/privateEndpointConnections": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Lists private endpoint connection in workspace.", + "operationId": "PrivateEndpointConnections_List", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + } + ], + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "responses": { + "200": { + "schema": { + "$ref": "../../../../common/v1/privateEndpointConnection.json#/definitions/PrivateEndpointConnectionList" + }, + "description": "Private endpoint connection" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "x-ms-examples": { + "List private endpoint connections in workspace": { + "$ref": "./examples/ListPrivateEndpointConnections.json" + } + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/privateLinkResources.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/privateLinkResources.json new file mode 100644 index 000000000000..e35f18e38716 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/privateLinkResources.json @@ -0,0 +1,307 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-04-01-preview", + "title": "SynapseManagementClient", + "description": "Azure Synapse Analytics APIs" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "securityDefinitions": { + "azure_auth": { + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "type": "oauth2", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow" + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/privateLinkResources": { + "get": { + "operationId": "PrivateLinkResources_List", + "summary": "Private Link Resources", + "description": "Get all private link resources for a workspaces", + "tags": [ + "PrivateLinkResources" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + } + ], + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/PrivateLinkResourceListResult" + }, + "description": "List of private link resources" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "x-ms-examples": { + "Get private link resources for workspace": { + "$ref": "./examples/ListPrivateLinkResources.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/privateLinkResources/{privateLinkResourceName}": { + "get": { + "operationId": "PrivateLinkResources_Get", + "summary": "Get Private Link Resource", + "description": "Get private link resource in workspace", + "tags": [ + "PrivateLinkResources" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/privateLinkResourceNameParameter" + } + ], + "consumes": [], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/PrivateLinkResource" + }, + "description": "Private link resource details" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "x-ms-examples": { + "Get private link resources for workspace": { + "$ref": "./examples/GetPrivateLinkResource.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/privateLinkHubs/{privateLinkHubName}/privateLinkResources": { + "get": { + "operationId": "PrivateLinkHubPrivateLinkResources_List", + "summary": "Private Link Resources", + "description": "Get all private link resources for a private link hub", + "tags": [ + "PrivateLinkHubPrivateLinkResources" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/privateLinkHubNameParameter" + } + ], + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/PrivateLinkResourceListResult" + }, + "description": "List of private link resources" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "x-ms-examples": { + "Get private link resources for private link hub": { + "$ref": "./examples/ListPrivateLinkHubPrivateLinkResources.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/privateLinkHubs/{privateLinkHubName}/privateLinkResources/{privateLinkResourceName}": { + "get": { + "operationId": "PrivateLinkHubPrivateLinkResources_Get", + "summary": "Get Private Link Hub Private Link Resource", + "description": "Get private link resource in private link hub", + "tags": [ + "PrivateLinkHubPrivateLinkResources" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/privateLinkHubNameParameter" + }, + { + "$ref": "#/parameters/privateLinkResourceNameParameter" + } + ], + "consumes": [], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/PrivateLinkResource" + }, + "description": "Private link resource details" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "x-ms-examples": { + "Get private link resources for private link hub": { + "$ref": "./examples/GetPrivateLinkHubPrivateLinkResource.json" + } + } + } + } + }, + "definitions": { + "PrivateLinkResourceListResult": { + "description": "A list of private link resources", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "PrivateLinkResource": { + "description": "A private link resource", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "The private link resource properties.", + "readOnly": true + } + } + }, + "PrivateLinkResourceProperties": { + "description": "Properties of a private link resource.", + "type": "object", + "properties": { + "groupId": { + "description": "The private link resource group id.", + "type": "string", + "readOnly": true + }, + "requiredMembers": { + "description": "The private link resource required member names.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "requiredZoneNames": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "description": "Required DNS zone names of the the private link resource." + } + } + } + }, + "parameters": { + "privateLinkResourceNameParameter": { + "name": "privateLinkResourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private link resource", + "x-ms-parameter-location": "method" + }, + "privateLinkHubNameParameter": { + "name": "privateLinkHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private link hub", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/privatelinkhub.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/privatelinkhub.json new file mode 100644 index 000000000000..8a1de994b384 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/privatelinkhub.json @@ -0,0 +1,488 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-04-01-preview", + "title": "SynapseManagementClient", + "description": "Azure Synapse Analytics APIs" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "securityDefinitions": { + "azure_auth": { + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "type": "oauth2", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow" + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/privateLinkHubs": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + } + ], + "get": { + "operationId": "PrivateLinkHubs_ListByResourceGroup", + "description": "Returns a list of privateLinkHubs in a resource group", + "tags": [ + "PrivateLinkHubs" + ], + "deprecated": false, + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/PrivateLinkHubInfoListResult" + }, + "description": "" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List privateLinkHubs in resource group": { + "$ref": "./examples/ListPrivateLinkHubsInResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/privateLinkHubs/{privateLinkHubName}": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../common/v1/types.json#/parameters/PrivateLinkHubNameParameter" + } + ], + "get": { + "operationId": "PrivateLinkHubs_Get", + "description": "Gets a privateLinkHub", + "tags": [ + "PrivateLinkHubs" + ], + "deprecated": false, + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/PrivateLinkHub" + }, + "description": "PrivateLinkHub resource details" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "*** Error Responses: ***\n\n * 500 InternalServerError- Some error occurred while trying to get details for PrivateLinkHub." + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get a privateLinkHub": { + "$ref": "./examples/GetPrivateLinkHub.json" + } + } + }, + "patch": { + "operationId": "PrivateLinkHubs_Update", + "description": "Updates a privateLinkHub", + "tags": [ + "PrivateLinkHubs" + ], + "deprecated": false, + "parameters": [ + { + "schema": { + "$ref": "#/definitions/PrivateLinkHubPatchInfo" + }, + "in": "body", + "name": "privateLinkHubPatchInfo", + "required": true, + "description": "PrivateLinkHub patch request properties" + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/PrivateLinkHub" + }, + "description": "PrivateLinkHub resource details" + }, + "201": { + "schema": { + "$ref": "#/definitions/PrivateLinkHub" + }, + "description": "PrivateLinkHub resource details" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "*** Error Responses: ***\n\n * 400 BadRequest - Invalid request to create a PrivateLinkHub.\n\n * 500 InternalServerError- Some error occurred while creating PrivateLinkHub." + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Update a privateLinkHub": { + "$ref": "./examples/UpdatePrivateLinkHub.json" + } + } + }, + "put": { + "operationId": "PrivateLinkHubs_CreateOrUpdate", + "description": "Creates or updates a privateLinkHub", + "tags": [ + "PrivateLinkHubs" + ], + "deprecated": false, + "parameters": [ + { + "description": "PrivateLinkHub create or update request properties", + "schema": { + "$ref": "#/definitions/PrivateLinkHub" + }, + "in": "body", + "name": "privateLinkHubInfo", + "required": true + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/PrivateLinkHub" + }, + "description": "PrivateLinkHub resource details" + }, + "201": { + "schema": { + "$ref": "#/definitions/PrivateLinkHub" + }, + "description": "PrivateLinkHub resource details" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "*** Error Responses: ***\n\n * 400 BadRequest - Invalid request to create a PrivateLinkHub.\n\n * 500 InternalServerError- Some error occurred while creating PrivateLinkHub." + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Create or update a privateLinkHub": { + "$ref": "./examples/CreateOrUpdatePrivateLinkHub.json" + } + } + }, + "delete": { + "operationId": "PrivateLinkHubs_Delete", + "description": "Deletes a privateLinkHub", + "tags": [ + "PrivateLinkHubs" + ], + "deprecated": false, + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "PrivateLinkHub resource not found." + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "*** Error Responses: ***\n\n * 500 InternalServerError- Some error occurred while deleting PrivateLinkHub." + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete a privateLinkHub": { + "$ref": "./examples/DeletePrivateLinkHub.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Synapse/privateLinkHubs": { + "get": { + "operationId": "PrivateLinkHubs_List", + "description": "Returns a list of privateLinkHubs in a subscription", + "tags": [ + "PrivateLinkHubs" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/PrivateLinkHubInfoListResult" + }, + "description": "PrivateLinkHub resource details" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List privateLinkHubs in subscription": { + "$ref": "./examples/ListPrivateLinkHubsInSubscription.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/privateLinkHubs/{privateLinkHubName}/privateEndpointConnections": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../common/v1/types.json#/parameters/PrivateLinkHubNameParameter" + } + ], + "get": { + "operationId": "PrivateEndpointConnectionsPrivateLinkHub_List", + "description": "Get all PrivateEndpointConnections in the PrivateLinkHub", + "tags": [ + "PrivateLinkHubs", + "PrivateEndpointConnections" + ], + "deprecated": false, + "responses": { + "200": { + "schema": { + "$ref": "../../../../common/v1/privateEndpointConnection.json#/definitions/PrivateEndpointConnectionForPrivateLinkHub_ResourceCollectionResponse" + }, + "description": "List of PrivateEndpointConnections in PrivateLinkHub" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get a privateLinkHub": { + "$ref": "./examples/PrivateEndpointConnectionsPrivateLinkHub_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/privateLinkHubs/{privateLinkHubName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../common/v1/types.json#/parameters/PrivateLinkHubNameParameter" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the privateEndpointConnection", + "x-ms-parameter-location": "method" + } + ], + "get": { + "operationId": "PrivateEndpointConnectionsPrivateLinkHub_Get", + "description": "Get all PrivateEndpointConnection in the PrivateLinkHub by name", + "tags": [ + "PrivateLinkHubs", + "PrivateEndpointConnections" + ], + "deprecated": false, + "responses": { + "200": { + "schema": { + "$ref": "../../../../common/v1/privateEndpointConnection.json#/definitions/PrivateEndpointConnectionForPrivateLinkHub" + }, + "description": "PrivateEndpointConnection in PrivateLinkHub" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get a privateLinkHub": { + "$ref": "./examples/PrivateEndpointConnectionsPrivateLinkHub_Get.json" + } + } + } + } + }, + "definitions": { + "PrivateLinkHubInfoListResult": { + "description": "List of privateLinkHubs", + "type": "object", + "properties": { + "nextLink": { + "description": "Link to the next page of results", + "type": "string" + }, + "value": { + "description": "List of privateLinkHubs", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkHub" + } + } + } + }, + "PrivateLinkHub": { + "description": "A privateLinkHub", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/TrackedResource" + } + ], + "properties": { + "properties": { + "description": "PrivateLinkHub resource properties", + "$ref": "#/definitions/PrivateLinkHubProperties", + "x-ms-client-flatten": true + } + } + }, + "PrivateLinkHubPatchInfo": { + "description": "PrivateLinkHub patch details", + "type": "object", + "properties": { + "tags": { + "description": "Resource tags", + "additionalProperties": { + "type": "string" + }, + "type": "object" + } + } + }, + "PrivateLinkHubProperties": { + "description": "PrivateLinkHub properties", + "type": "object", + "properties": { + "provisioningState": { + "description": "PrivateLinkHub provisioning state", + "type": "string" + }, + "privateEndpointConnections": { + "description": "List of private endpoint connections", + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnectionForPrivateLinkHubBasic" + } + } + } + }, + "PrivateEndpointConnectionForPrivateLinkHubBasic": { + "description": "Private Endpoint Connection For Private Link Hub - Basic", + "type": "object", + "properties": { + "id": { + "description": "identifier", + "type": "string", + "readOnly": true + }, + "properties": { + "description": "Properties of private endpoint connection for private link hub", + "type": "object", + "$ref": "../../../../common/v1/privateEndpointConnection.json#/definitions/PrivateEndpointConnectionProperties", + "x-ms-client-flatten": true + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/sqlPool.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/sqlPool.json new file mode 100644 index 000000000000..1298d955c40b --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/sqlPool.json @@ -0,0 +1,7621 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-04-01-preview", + "title": "SynapseManagementClient", + "description": "Azure Synapse Analytics APIs" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "securityDefinitions": { + "azure_auth": { + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "type": "oauth2", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow" + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}": { + "get": { + "operationId": "SqlPools_Get", + "summary": "Get SQL pool", + "description": "Get SQL pool properties", + "tags": [ + "SqlPools" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/SqlPool" + }, + "description": "OK" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get a SQL Analytics pool": { + "$ref": "./examples/GetSqlPool.json" + } + } + }, + "patch": { + "operationId": "SqlPools_Update", + "summary": "Update SQL pool", + "description": "Apply a partial update to a SQL pool", + "tags": [ + "SqlPools" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "schema": { + "$ref": "#/definitions/SqlPoolPatchInfo" + }, + "in": "body", + "name": "sqlPoolInfo", + "description": "The updated SQL pool properties", + "required": true + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/SqlPool" + }, + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Update a SQL Analytics pool": { + "$ref": "./examples/UpdateSqlPool.json" + } + } + }, + "put": { + "operationId": "SqlPools_Create", + "summary": "Create SQL pool", + "description": "Create a SQL pool", + "tags": [ + "SqlPools" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "schema": { + "$ref": "#/definitions/SqlPool" + }, + "in": "body", + "name": "sqlPoolInfo", + "description": "The SQL pool to create", + "required": true + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/SqlPool" + }, + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "404": { + "description": "" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Create a SQL Analytics pool": { + "$ref": "./examples/CreateSqlPool.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "delete": { + "operationId": "SqlPools_Delete", + "summary": "Delete SQL pool", + "description": "Delete a SQL pool", + "tags": [ + "SqlPools" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + } + ], + "responses": { + "200": { + "schema": { + "type": "object" + }, + "description": "OK" + }, + "202": { + "schema": { + "type": "object" + }, + "description": "Accepted" + }, + "204": { + "description": "" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Delete a SQL Analytics pool": { + "$ref": "./examples/DeleteSqlPool.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools": { + "get": { + "operationId": "SqlPools_ListByWorkspace", + "summary": "List SQL pools", + "description": "List all SQL pools", + "tags": [ + "SqlPools" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/SqlPoolInfoListResult" + }, + "description": "" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "List SQL Analytics pools in a workspace": { + "$ref": "./examples/ListSqlPoolsInWorkspace.json" + }, + "List SQL Analytics pools in a workspace with filter": { + "$ref": "./examples/ListSqlPoolsInWorkspaceWithFilter.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/pause": { + "post": { + "operationId": "SqlPools_Pause", + "summary": "Pause SQL pool", + "description": "Pause a SQL pool", + "tags": [ + "SqlPools" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + } + ], + "responses": { + "200": { + "schema": { + "type": "object" + }, + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Pause a SQL Analytics pool": { + "$ref": "./examples/PauseSqlPool.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/resume": { + "post": { + "operationId": "SqlPools_Resume", + "summary": "Resume SQL pool", + "description": "Resume a SQL pool", + "tags": [ + "SqlPools" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + } + ], + "responses": { + "200": { + "schema": { + "type": "object" + }, + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Resume a SQL Analytics pool": { + "$ref": "./examples/ResumeSqlPool.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/move": { + "post": { + "operationId": "SqlPools_Rename", + "summary": "Rename a SQL pool", + "description": "Rename a SQL pool.", + "tags": [ + "SqlPools" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "parameters", + "in": "body", + "description": "The resource move definition for renaming this Sql pool.", + "required": true, + "schema": { + "$ref": "#/definitions/ResourceMoveDefinition" + } + } + ], + "responses": { + "200": { + "description": "Successfully renamed the Sql pool" + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidResourceMoveRequest - The resource move request is invalid.\n\n * 400 InvalidMoveTargetResourceId - The target resource identifier in move request is invalid.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 DatabaseNameInUse - Database already exists. Choose a different database name.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 CannotMoveOrDropSyncMetadataDatabase - Cannot drop database used as sync metadata database.\n\n * 400 UnsupportedServiceName - The specified name is an invalid name because it contains one or more unsupported unicode characters.\n\n * 400 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 409 InvalidOperationForDatabaseInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship." + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Rename a SQL Analytics pool": { + "$ref": "./examples/RenameSqlPool.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/metadataSync/config": { + "get": { + "operationId": "SqlPoolMetadataSyncConfigs_Get", + "summary": "Get SQL pool metadata sync config", + "description": "Get the metadata sync configuration for a SQL pool", + "tags": [ + "SqlPools" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + } + ], + "responses": { + "404": { + "description": "" + }, + "200": { + "schema": { + "$ref": "#/definitions/MetadataSyncConfig" + }, + "description": "" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get metadata sync config for a SQL Analytics pool": { + "$ref": "./examples/GetSqlPoolMetadataSyncConfig.json" + } + } + }, + "put": { + "operationId": "SqlPoolMetadataSyncConfigs_Create", + "summary": "Set SQL pool metadata sync config", + "description": "Set the metadata sync configuration for a SQL pool", + "tags": [ + "SqlPools" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "description": "Metadata sync configuration", + "schema": { + "$ref": "#/definitions/MetadataSyncConfig" + }, + "in": "body", + "name": "metadataSyncConfiguration", + "required": true + } + ], + "responses": { + "404": { + "description": "" + }, + "200": { + "schema": { + "$ref": "#/definitions/MetadataSyncConfig" + }, + "description": "" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Set metadata sync config for a SQL Analytics pool": { + "$ref": "./examples/CreateSqlPoolMetadataSyncConfig.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/operationResults/{operationId}": { + "get": { + "operationId": "SqlPoolOperationResults_GetLocationHeaderResult", + "summary": "Get SQL pool operation status", + "description": "Get the status of a SQL pool operation", + "tags": [ + "Operations" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "type": "string", + "in": "path", + "name": "operationId", + "description": "Operation ID", + "required": true + } + ], + "responses": { + "200": { + "schema": { + "type": "object" + }, + "description": "OK" + }, + "202": { + "schema": { + "type": "object" + }, + "description": "Accepted" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get the result of an operation on a SQL Analytics pool": { + "$ref": "./examples/GetLocationHeaderResultWithSqlPool.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/geoBackupPolicies": { + "get": { + "operationId": "SqlPoolGeoBackupPolicies_List", + "summary": "List SQL pool geo backup policies", + "description": "Get list of SQL pool geo backup policies", + "tags": [ + "SqlPools, GeoBackupPolicies" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/GeoBackupPolicyListResult" + }, + "description": "OK" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get Sql pool geo backup policy": { + "$ref": "./examples/SqlPoolGeoBackupPolicies_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/geoBackupPolicies/{geoBackupPolicyName}": { + "put": { + "tags": [ + "SqlPools, GeoBackupPolicies" + ], + "deprecated": false, + "operationId": "SqlPoolGeoBackupPolicies_CreateOrUpdate", + "description": "Updates a SQL Pool geo backup policy.", + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Create geo backup policy": { + "$ref": "./examples/CreateOrUpdateGeoBackupPolicies.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "geoBackupPolicyName", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "Default" + ], + "description": "The name of the geo backup policy.", + "x-ms-enum": { + "modelAsString": true, + "name": "GeoBackupPolicyName" + }, + "x-ms-parameter-location": "method" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GeoBackupPolicy" + }, + "description": "The required parameters for creating or updating the geo backup policy." + } + ], + "responses": { + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/GeoBackupPolicy" + } + }, + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GeoBackupPolicy" + } + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + } + }, + "get": { + "operationId": "SqlPoolGeoBackupPolicies_Get", + "summary": "Get a SQL pool geo backup policy", + "description": "Get the specified SQL pool geo backup policy", + "tags": [ + "SqlPools, GeoBackupPolicies" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "geoBackupPolicyName", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "Default" + ], + "description": "The name of the geo backup policy.", + "x-ms-enum": { + "modelAsString": true, + "name": "GeoBackupPolicyName" + }, + "x-ms-parameter-location": "method" + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/GeoBackupPolicy" + }, + "description": "OK" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get Sql pool geo backup policy": { + "$ref": "./examples/GetSqlPoolGeoBackupPolicy.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/dataWarehouseUserActivities/{dataWarehouseUserActivityName}": { + "get": { + "operationId": "SqlPoolDataWarehouseUserActivities_Get", + "summary": "Get SQL pool user activities", + "description": "Gets the user activities of a SQL pool which includes running and suspended queries", + "tags": [ + "SqlPools, SqlPoolUserActivities" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "dataWarehouseUserActivityName", + "in": "path", + "description": "The activity name of the Sql pool. ", + "required": true, + "type": "string", + "enum": [ + "current" + ], + "x-ms-enum": { + "name": "DataWarehouseUserActivityName", + "modelAsString": true + } + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/DataWarehouseUserActivities" + }, + "description": "OK" + }, + "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." + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get a SQL Analytics pool user activity": { + "$ref": "./examples/GetSqlPoolUserActivity.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/restorePoints": { + "get": { + "operationId": "SqlPoolRestorePoints_List", + "summary": "Get SQL pool backup", + "description": "Get SQL pool backup information", + "tags": [ + "SqlPools, Backup" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/RestorePointListResult" + }, + "description": "OK" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get a list of restore points of a SQL Analytics pool": { + "$ref": "./examples/ListSqlPoolRestorePoints.json" + } + } + }, + "post": { + "tags": [ + "SqlPools, RestorePoints" + ], + "description": "Creates a restore point for a data warehouse.", + "operationId": "SqlPoolRestorePoints_Create", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "parameters", + "in": "body", + "description": "The definition for creating the restore point of this Sql pool.", + "required": true, + "schema": { + "$ref": "#/definitions/CreateSqlPoolRestorePointDefinition" + } + } + ], + "responses": { + "200": { + "description": "Successfully created the restore point request.", + "schema": { + "$ref": "#/definitions/RestorePoint" + } + }, + "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." + }, + "202": { + "description": "Accepted" + }, + "201": { + "description": "Successfully created the restore point request.", + "schema": { + "$ref": "#/definitions/RestorePoint" + } + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Creates Sql pool restore point.": { + "$ref": "./examples/CreateSqlPoolRestorePoints.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/replicationLinks": { + "get": { + "operationId": "SqlPoolReplicationLinks_List", + "summary": "Get SQL pool replication links", + "description": "Lists a Sql pool's replication links.", + "tags": [ + "SqlPools, ReplicationLinks" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationLinkListResult" + } + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Lists a Sql Analytic pool's replication links": { + "$ref": "./examples/ListSqlPoolReplicationLinks.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/replicationLinks/{linkId}": { + "get": { + "operationId": "SqlPoolReplicationLinks_GetByName", + "summary": "Get SQL pool replication link by name", + "description": "Get SQL pool replication link by name.", + "tags": [ + "SqlPools, ReplicationLinks" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "linkId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the replication link." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationLink" + } + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Lists a Sql Analytic pool's replication links": { + "$ref": "./examples/SqlPoolReplicationLinks_GetByName.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/maintenancewindows/current": { + "get": { + "operationId": "SqlPoolMaintenanceWindows_Get", + "summary": "Get a SQL pool's Maintenance Windows.", + "description": "Get a SQL pool's Maintenance Windows.", + "tags": [ + "SqlPools, MaintenanceWindows" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "maintenanceWindowName", + "in": "query", + "description": "Maintenance window name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MaintenanceWindows" + } + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Gets maintenance window settings for a selected SQL Analytics pool.": { + "$ref": "./examples/GetMaintenanceWindows.json" + } + } + }, + "put": { + "operationId": "SqlPoolMaintenanceWindows_CreateOrUpdate", + "summary": "Creates or updates a Sql pool's maintenance windows settings.", + "description": "Creates or updates a Sql pool's maintenance windows settings.", + "tags": [ + "SqlPools, MaintenanceWindows" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "maintenanceWindowName", + "in": "query", + "description": "Maintenance window name.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/MaintenanceWindows" + }, + "description": "The required parameters for creating or updating Maintenance Windows settings" + } + ], + "responses": { + "200": { + "description": "Successfully set maintenance windows settings." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidMaintenanceWindowSelection - Invalid maintenance window selection." + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Sets maintenance window settings for a selected SQL Analytics Pool.": { + "$ref": "./examples/CreateOrUpdateMaintenanceWindows.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/maintenanceWindowOptions/current": { + "get": { + "operationId": "SqlPoolMaintenanceWindowOptions_Get", + "summary": "SQL pool's available maintenance windows.", + "description": "Get list of SQL pool's available maintenance windows.", + "tags": [ + "SqlPools, MaintenanceWindowOptions" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "maintenanceWindowOptionsName", + "in": "query", + "description": "Maintenance window options name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of maintenance windows options.", + "schema": { + "$ref": "#/definitions/MaintenanceWindowOptions" + } + }, + "default": { + "description": "*** Error Responses: ***" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get list of transparent data encryption configurations of a SQL Analytics pool": { + "$ref": "./examples/GetMaintenanceWindowOptions.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/transparentDataEncryption/{transparentDataEncryptionName}": { + "get": { + "operationId": "SqlPoolTransparentDataEncryptions_Get", + "summary": "Get a SQL pool's transparent data encryption configuration", + "description": "Get a SQL pool's transparent data encryption configuration.", + "tags": [ + "SqlPools, TransparentDataEncryption" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "transparentDataEncryptionName", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "current" + ], + "description": "The name of the transparent data encryption configuration.", + "x-ms-enum": { + "modelAsString": true, + "name": "TransparentDataEncryptionName" + }, + "x-ms-parameter-location": "method" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TransparentDataEncryption" + } + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get transparent data encryption configuration of a SQL Analytics pool": { + "$ref": "./examples/GetSqlPoolTransparentDataEncryption.json" + } + } + }, + "put": { + "operationId": "SqlPoolTransparentDataEncryptions_CreateOrUpdate", + "summary": "Creates or updates a Sql pool's transparent data encryption configuration", + "description": "Creates or updates a Sql pool's transparent data encryption configuration.", + "tags": [ + "SqlPools, TransparentDataEncryption" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "transparentDataEncryptionName", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "current" + ], + "description": "The name of the transparent data encryption configuration.", + "x-ms-enum": { + "modelAsString": true, + "name": "TransparentDataEncryptionName" + }, + "x-ms-parameter-location": "method" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TransparentDataEncryption" + }, + "description": "The required parameters for creating or updating transparent data encryption." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TransparentDataEncryption" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/TransparentDataEncryption" + } + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Create or update a Sql pool's transparent data encryption configuration": { + "$ref": "./examples/CreateOrUpdateSqlPoolTransparentDataEncryption.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/transparentDataEncryption": { + "get": { + "operationId": "SqlPoolTransparentDataEncryptions_List", + "summary": "SQL pool's transparent data encryption configurations", + "description": "Get list of SQL pool's transparent data encryption configurations.", + "tags": [ + "SqlPools, TransparentDataEncryption" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TransparentDataEncryptionListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 409 UnsupportedWorkspaceType - Unsupported operation for the workspace type.\n\n * 500 InternalServerError - Something went wrong." + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get list of transparent data encryption configurations of a SQL Analytics pool": { + "$ref": "./examples/GetSqlPoolTransparentDataEncryptionList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/auditingSettings/{blobAuditingPolicyName}": { + "get": { + "operationId": "SqlPoolBlobAuditingPolicies_Get", + "summary": "Get a SQL pool's blob auditing policy", + "description": "Get a SQL pool's blob auditing policy.", + "tags": [ + "SqlPools, BlobAuditing" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "blobAuditingPolicyName", + "in": "path", + "description": "The name of the blob auditing policy.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-parameter-location": "method" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SqlPoolBlobAuditingPolicy" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 BlobAuditingIsNotSupportedOnResourceType - Blob Auditing is currently not supported for this resource type.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get blob auditing policy of a SQL Analytics pool": { + "$ref": "./examples/GetSqlPoolBlobAuditing.json" + } + } + }, + "put": { + "operationId": "SqlPoolBlobAuditingPolicies_CreateOrUpdate", + "summary": "Creates or updates a SQL pool's blob auditing policy", + "description": "Creates or updates a SQL pool's blob auditing policy.", + "tags": [ + "SqlPools, BlobAuditing" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "blobAuditingPolicyName", + "in": "path", + "description": "The name of the blob auditing policy.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-parameter-location": "method" + }, + { + "name": "parameters", + "in": "body", + "description": "The database blob auditing policy.", + "required": true, + "schema": { + "$ref": "#/definitions/SqlPoolBlobAuditingPolicy" + } + } + ], + "responses": { + "200": { + "description": "Successfully set the Sql pool blob auditing policy", + "schema": { + "$ref": "#/definitions/SqlPoolBlobAuditingPolicy" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 BlobAuditingIsNotSupportedOnResourceType - Blob Auditing is currently not supported for this resource type.\n\n * 400 InvalidDatabaseBlobAuditingPolicyCreateRequest - The create database blob auditing policy request does not exist or has no properties object.\n\n * 400 InvalidBlobAuditActionsAndGroups - Invalid audit actions or action groups.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 BlobAuditingInvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 400 BlobAuditingInvalidStorageAccountCredentials - The provided storage account or access key is not valid.\n\n * 400 BlobAuditingIsNotSupportedOnGeoDr - Blob auditing can be configured on primary databases only.\n\n * 400 InvalidBlobAuditActionsAndGroupsForDW - Unsupported audit actions or action groups for DW.\n\n * 400 BlobAuditingInsufficientStorageAccountPermissions - Insufficient read or write permissions on the provided storage account.\n\n * 400 BlobAuditingStorageAccountIsDisabled - The provided storage account is disabled.\n\n * 400 InvalidBlobAuditActions - Invalid audit action\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + }, + "201": { + "description": "Successfully created the Sql pool blob auditing policy.", + "schema": { + "$ref": "#/definitions/SqlPoolBlobAuditingPolicy" + } + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Create or update a database's blob auditing policy with minimal parameters": { + "$ref": "./examples/CreateOrUpdateSqlPoolBlobAuditingWithMinParameters.json" + }, + "Create or update a database's blob auditing policy with all parameters": { + "$ref": "./examples/CreateOrUpdateSqlPoolBlobAuditingWithAllParameters.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/operations": { + "get": { + "operationId": "SqlPoolOperations_List", + "summary": "Gets a list of operations performed on the SQL pool", + "description": "Gets a list of operations performed on the SQL pool.", + "tags": [ + "SqlPools, Operations" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SqlPoolBlobAuditingPolicySqlPoolOperationListResult" + } + }, + "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 PartnerServerNotCompatible - 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 currently 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." + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List the Sql Analytics pool management operations": { + "$ref": "./examples/ListSqlPoolOperations.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/usages": { + "get": { + "operationId": "SqlPoolUsages_List", + "summary": "Gets SQL pool usages", + "description": "Gets SQL pool usages.", + "tags": [ + "SqlPools, Usages" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SqlPoolUsageListResult" + } + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List the usages of a SQL Analytics pool": { + "$ref": "./examples/SqlPoolUsageMetricsList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/currentSensitivityLabels": { + "get": { + "operationId": "SqlPoolSensitivityLabels_ListCurrent", + "summary": "Gets SQL pool sensitivity labels", + "description": "Gets SQL pool sensitivity labels.", + "tags": [ + "SqlPools, SensitivityLabels" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "$filter", + "in": "query", + "description": "An OData filter expression that filters elements in the collection.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SensitivityLabelListResult" + } + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-odata": "#/definitions/SensitivityLabel", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the current sensitivity labels of a given SQL Analytics pool": { + "$ref": "./examples/ListSqlPoolsSensitivityLabelsWithSourceCurrent.json" + } + } + }, + "patch": { + "tags": [ + "SqlPools, SensitivityLabels" + ], + "description": "Update sensitivity labels of a given SQL Pool using an operations batch.", + "operationId": "SqlPoolSensitivityLabels_Update", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SensitivityLabelUpdateList" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated sensitivity labels." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 DatawarehouseDatabaseIsDeactivated - Could not execute Data Classification operation because the database is paused. Please resume it.\n\n * 400 DatawarehouseDatabaseIsDeactivated - Could not execute Data Classification operation because the database is paused. Please resume it.\n\n * 400 SensitivityLabelSourceNameNotSupported - The specified sensitivity label source is not valid\n\n * 400 InvalidSensitivityLabelsBatch - The specified sensitivity labels batch is not valid. Please provide batch operations\n\n * 400 SensitivityLabelsMissingSchema - Operation[{0}]: Missing schema information\n\n * 400 SensitivityLabelsMissingTable - Operation[{0}]: Missing table information\n\n * 400 SensitivityLabelsMissingColumn - Operation[{0}]: Missing column information\n\n * 400 SensitivityLabelsUpdateSameColumnMoreThanOnce - The column {0} can not be updated more than once in a single command\n\n * 400 InvalidSensitivityLabelResource - The specified sensitivity label resource is not valid\n\n * 400 SensitivityLabelLabelNameAndInfoTypeNotProvided - At least one of LabelName and InformationType must be specified\n\n * 400 LabelNameTooLong - Label name cannot exceed {0} characters\n\n * 400 InformationTypeTooLong - Information type cannot exceed {0} characters\n\n * 400 LabelIdMustBeGuid - The provided �labelId� is invalid. Value must be a GUID\n\n * 400 InformationTypeIdMustBeGuid - The provided �informationTypeId� is invalid. Value must be a GUID\n\n * 400 LabelMissing - Label is required. At least one of �labelName� or �labelId� must be provided\n\n * 400 InformationTypeMissing - Information type is required. At least one of �informationType� or �informationTypeId� must be provided\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 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 SensitivityLabelsLabelNotFound - The specified sensitivity label could not be found\n\n * 404 SensitivityLabelsSchemaNotFound - The schema {0} could not be found\n\n * 404 SensitivityLabelsTableNotFound - The table {0} could not be found in schema {1}\n\n * 404 SensitivityLabelsColumnNotFound - The column {0} could not be found in table {2}.{1}\n\n * 501 SensitivityLabelRecommendedSourceNameNotSupported - 'Recommended' sensitivity label source is not supported yet\n\n * 501 SensitivityLabelRecommendedSourceNameNotSupported - 'Recommended' sensitivity label source is not supported yet\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable." + } + }, + "x-ms-examples": { + "Update sensitivity labels of a given database using an operations batch.": { + "$ref": "./examples/SensitivityLabelsCurrentUpdate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/recommendedSensitivityLabels": { + "get": { + "operationId": "SqlPoolSensitivityLabels_ListRecommended", + "summary": "Gets sensitivity labels of a given SQL pool", + "description": "Gets sensitivity labels of a given SQL pool.", + "tags": [ + "SqlPools, SensitivityLabels" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "includeDisabledRecommendations", + "in": "query", + "description": "Specifies whether to include disabled recommendations or not.", + "required": false, + "type": "boolean" + }, + { + "name": "$skipToken", + "in": "query", + "description": "An OData query option to indicate how many elements to skip in the collection.", + "required": false, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "An OData filter expression that filters elements in the collection.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SensitivityLabelListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 DatawarehouseDatabaseIsDeactivated - Could not execute Data Classification operation because the database is paused. Please resume it.\n\n * 400 SensitivityLabelsInvalidODataQuery - The specified OData query is either not valid or not supported\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." + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-odata": "#/definitions/SensitivityLabel", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the recommended sensitivity labels of a given SQL Analytics pool": { + "$ref": "./examples/ListSqlPoolSensitivityLabelsWithSourceRecommended.json" + } + } + }, + "patch": { + "tags": [ + "SqlPools, SensitivityLabels" + ], + "description": "Update recommended sensitivity labels states of a given SQL Pool using an operations batch.", + "operationId": "SqlPoolRecommendedSensitivityLabels_Update", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RecommendedSensitivityLabelUpdateList" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated recommended sensitivity labels." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 DatawarehouseDatabaseIsDeactivated - Could not execute Data Classification operation because the database is paused. Please resume it.\n\n * 400 DatawarehouseDatabaseIsDeactivated - Could not execute Data Classification operation because the database is paused. Please resume it.\n\n * 400 SensitivityLabelSourceNameNotSupported - The specified sensitivity label source is not valid\n\n * 400 InvalidRecommendedSensitivityLabelsBatch - The specified recommended sensitivity labels operations are not valid\n\n * 400 SensitivityLabelsMissingSchema - Operation[{0}]: Missing schema information\n\n * 400 SensitivityLabelsMissingTable - Operation[{0}]: Missing table information\n\n * 400 SensitivityLabelsMissingColumn - Operation[{0}]: Missing column information\n\n * 400 SensitivityLabelsUpdateSameColumnMoreThanOnce - The column {0} can not be updated more than once in a single command\n\n * 400 InvalidSensitivityLabelResource - The specified sensitivity label resource is not valid\n\n * 400 SensitivityLabelLabelNameAndInfoTypeNotProvided - At least one of LabelName and InformationType must be specified\n\n * 400 LabelNameTooLong - Label name cannot exceed {0} characters\n\n * 400 InformationTypeTooLong - Information type cannot exceed {0} characters\n\n * 400 LabelIdMustBeGuid - The provided �labelId� is invalid. Value must be a GUID\n\n * 400 InformationTypeIdMustBeGuid - The provided �informationTypeId� is invalid. Value must be a GUID\n\n * 400 LabelMissing - Label is required. At least one of �labelName� or �labelId� must be provided\n\n * 400 InformationTypeMissing - Information type is required. At least one of �informationType� or �informationTypeId� must be provided\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 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 SensitivityLabelsLabelNotFound - The specified sensitivity label could not be found\n\n * 404 SensitivityLabelsSchemaNotFound - The schema {0} could not be found\n\n * 404 SensitivityLabelsTableNotFound - The table {0} could not be found in schema {1}\n\n * 404 SensitivityLabelsColumnNotFound - The column {0} could not be found in table {2}.{1}\n\n * 501 SensitivityLabelRecommendedSourceNameNotSupported - 'Recommended' sensitivity label source is not supported yet\n\n * 501 SensitivityLabelRecommendedSourceNameNotSupported - 'Recommended' sensitivity label source is not supported yet\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable." + } + }, + "x-ms-examples": { + "Update recommended sensitivity labels of a given SQL Pool using an operations batch.": { + "$ref": "./examples/SensitivityLabelsRecommendedUpdate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/schemas/{schemaName}/tables/{tableName}/columns/{columnName}/sensitivityLabels/{sensitivityLabelSource}": { + "put": { + "tags": [ + "SqlPools, SensitivityLabels" + ], + "description": "Creates or updates the sensitivity label of a given column in a Sql pool", + "operationId": "SqlPoolSensitivityLabels_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "schemaName", + "in": "path", + "description": "The name of the schema.", + "required": true, + "type": "string" + }, + { + "name": "tableName", + "in": "path", + "description": "The name of the table.", + "required": true, + "type": "string" + }, + { + "name": "columnName", + "in": "path", + "description": "The name of the column.", + "required": true, + "type": "string" + }, + { + "name": "sensitivityLabelSource", + "in": "path", + "description": "The source of the sensitivity label.", + "required": true, + "type": "string", + "enum": [ + "current" + ], + "x-ms-enum": { + "name": "WritableSensitivityLabelSource", + "modelAsString": false + } + }, + { + "name": "parameters", + "in": "body", + "description": "The column sensitivity label resource.", + "required": true, + "schema": { + "$ref": "#/definitions/SensitivityLabel" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated the sensitivity label.", + "schema": { + "$ref": "#/definitions/SensitivityLabel" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 DatawarehouseDatabaseIsDeactivated - Could not execute Data Classification operation because the database is paused. Please resume it.\n\n * 400 SensitivityLabelSourceNameNotSupported - The specified sensitivity label source is not valid\n\n * 400 InvalidSensitivityLabelResource - The specified sensitivity label resource is not valid\n\n * 400 SensitivityLabelLabelNameAndInfoTypeNotProvided - At least one of LabelName and InformationType must be specified\n\n * 400 LabelNameTooLong - Label name cannot exceed {0} characters\n\n * 400 InformationTypeTooLong - Information type cannot exceed {0} characters\n\n * 400 LabelIdMustBeGuid - Label ID must be a GUID\n\n * 400 InformationTypeIdMustBeGuid - Information type ID must be a GUID\n\n * 400 LabelMissing - Label is missing\n\n * 400 InformationTypeMissing - Information Type is missing\n\n * 404 SensitivityLabelsColumnNotFound - The specified schema/table/column could not be found\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 SensitivityLabelsLabelNotFound - The specified sensitivity label could not be found\n\n * 501 SensitivityLabelRecommendedSourceNameNotSupported - 'Recommended' sensitivity label source is not supported yet" + }, + "201": { + "description": "Successfully created the sensitivity label.", + "schema": { + "$ref": "#/definitions/SensitivityLabel" + } + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Updates the sensitivity label of a given column with all parameters": { + "$ref": "./examples/CreateOrUpdateSqlPoolColumnSensitivityLabelWithAllParameters.json" + } + } + }, + "delete": { + "tags": [ + "SqlPools, SensitivityLabels" + ], + "description": "Deletes the sensitivity label of a given column in a Sql pool", + "operationId": "SqlPoolSensitivityLabels_Delete", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "schemaName", + "in": "path", + "description": "The name of the schema.", + "required": true, + "type": "string" + }, + { + "name": "tableName", + "in": "path", + "description": "The name of the table.", + "required": true, + "type": "string" + }, + { + "name": "columnName", + "in": "path", + "description": "The name of the column.", + "required": true, + "type": "string" + }, + { + "name": "sensitivityLabelSource", + "in": "path", + "description": "The source of the sensitivity label.", + "required": true, + "type": "string", + "enum": [ + "current" + ], + "x-ms-enum": { + "name": "WritableSensitivityLabelSource", + "modelAsString": false + } + } + ], + "responses": { + "200": { + "description": "Successfully deleted the sensitivity label." + }, + "204": { + "description": "No content" + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 DatawarehouseDatabaseIsDeactivated - Could not execute Data Classification operation because the database is paused. Please resume it.\n\n * 400 SensitivityLabelSourceNameNotSupported - The specified sensitivity label source is not valid\n\n * 404 SensitivityLabelsColumnNotFound - The specified schema/table/column could not be found\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 SensitivityLabelsLabelNotFound - The specified sensitivity label could not be found\n\n * 501 SensitivityLabelRecommendedSourceNameNotSupported - 'Recommended' sensitivity label source is not supported yet" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Deletes the sensitivity label of a given column": { + "$ref": "./examples/DeleteSqlPoolColumnSensitivityLabel.json" + } + } + }, + "get": { + "tags": [ + "SqlPools, SensitivityLabels" + ], + "description": "Gets the sensitivity label of a given column", + "operationId": "SqlPoolSensitivityLabels_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "schemaName", + "in": "path", + "description": "The name of the schema.", + "required": true, + "type": "string" + }, + { + "name": "tableName", + "in": "path", + "description": "The name of the table.", + "required": true, + "type": "string" + }, + { + "name": "columnName", + "in": "path", + "description": "The name of the column.", + "required": true, + "type": "string" + }, + { + "name": "sensitivityLabelSource", + "in": "path", + "description": "The source of the sensitivity label.", + "required": true, + "type": "string", + "enum": [ + "current", + "recommended" + ], + "x-ms-enum": { + "name": "SensitivityLabelSource", + "modelAsString": false + } + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the sensitivity label.", + "schema": { + "$ref": "#/definitions/SensitivityLabel" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 DatawarehouseDatabaseIsDeactivated - Could not execute Data Classification operation because the database is paused. Please resume it.\n\n * 400 SensitivityLabelSourceNameNotSupported - The specified sensitivity label source is not valid\n\n * 404 SensitivityLabelsColumnNotFound - The specified schema/table/column could not be found\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 SensitivityLabelsLabelNotFound - The specified sensitivity label could not be found\n\n * 501 SensitivityLabelRecommendedSourceNameNotSupported - 'Recommended' sensitivity label source is not supported yet" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Gets the sensitivity label of a given column": { + "$ref": "./examples/GetSqlPoolColumnSensitivityLabelGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/schemas/{schemaName}/tables/{tableName}/columns/{columnName}/sensitivityLabels/{sensitivityLabelSource}/enable": { + "post": { + "tags": [ + "SensitivityLabels" + ], + "description": "Enables sensitivity recommendations on a given column (recommendations are enabled by default on all columns)", + "operationId": "SqlPoolSensitivityLabels_EnableRecommendation", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "schemaName", + "in": "path", + "description": "The name of the schema.", + "required": true, + "type": "string" + }, + { + "name": "tableName", + "in": "path", + "description": "The name of the table.", + "required": true, + "type": "string" + }, + { + "name": "columnName", + "in": "path", + "description": "The name of the column.", + "required": true, + "type": "string" + }, + { + "name": "sensitivityLabelSource", + "in": "path", + "description": "The source of the sensitivity label.", + "required": true, + "type": "string", + "enum": [ + "recommended" + ], + "x-ms-enum": { + "name": "WritableSensitivityLabelSource", + "modelAsString": false + } + } + ], + "responses": { + "200": { + "description": "Successfully enabled the sensitivity recommendations on the given column." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 DatawarehouseDatabaseIsDeactivated - Could not execute Data Classification operation because the database is paused. Please resume it.\n\n * 404 SensitivityLabelsColumnNotFound - The specified column could not be found\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." + } + }, + "x-ms-examples": { + "Enables sensitivity recommendations on a given column": { + "$ref": "./examples/RecommendedColumnSensitivityLabelEnable.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/schemas/{schemaName}/tables/{tableName}/columns/{columnName}/sensitivityLabels/{sensitivityLabelSource}/disable": { + "post": { + "tags": [ + "SensitivityLabels" + ], + "description": "Disables sensitivity recommendations on a given column", + "operationId": "SqlPoolSensitivityLabels_DisableRecommendation", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "schemaName", + "in": "path", + "description": "The name of the schema.", + "required": true, + "type": "string" + }, + { + "name": "tableName", + "in": "path", + "description": "The name of the table.", + "required": true, + "type": "string" + }, + { + "name": "columnName", + "in": "path", + "description": "The name of the column.", + "required": true, + "type": "string" + }, + { + "name": "sensitivityLabelSource", + "in": "path", + "description": "The source of the sensitivity label.", + "required": true, + "type": "string", + "enum": [ + "recommended" + ], + "x-ms-enum": { + "name": "WritableSensitivityLabelSource", + "modelAsString": false + } + } + ], + "responses": { + "200": { + "description": "Successfully disabled the sensitivity recommendation on the given column." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 DatawarehouseDatabaseIsDeactivated - Could not execute Data Classification operation because the database is paused. Please resume it.\n\n * 404 SensitivityLabelsColumnNotFound - The specified column could not be found\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." + } + }, + "x-ms-examples": { + "Disables sensitivity recommendations on a given column": { + "$ref": "./examples/RecommendedColumnSensitivityLabelDisable.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/schemas": { + "get": { + "operationId": "SqlPoolSchemas_List", + "summary": "Gets schemas of a given SQL pool", + "description": "Gets schemas of a given SQL pool.", + "tags": [ + "SqlPools, Schemas" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "$filter", + "in": "query", + "description": "An OData filter expression that filters elements in the collection.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SqlPoolSchemaListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 InvalidDatabaseSchema - Schema is missing in database.\n\n * 404 InvalidDatabaseTable - Table is missing in database.\n\n * 404 InvalidDatabaseColumn - Column is missing in table." + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-odata": "#/definitions/SqlPoolSchema", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List the schema in a SQL Analytics pool": { + "$ref": "./examples/ListSqlPoolSchema.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/schemas/{schemaName}/tables": { + "get": { + "operationId": "SqlPoolTables_ListBySchema", + "summary": "Gets tables of a given schema in a SQL pool", + "description": "Gets tables of a given schema in a SQL pool.", + "tags": [ + "SqlPools, Tables" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "schemaName", + "in": "path", + "description": "The name of the schema.", + "required": true, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "An OData filter expression that filters elements in the collection.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SqlPoolTableListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 InvalidDatabaseSchema - Schema is missing in database.\n\n * 404 InvalidDatabaseTable - Table is missing in database.\n\n * 404 InvalidDatabaseColumn - Column is missing in table." + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-odata": "#/definitions/SqlPoolTable", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List the tables of a given schema in a SQL Analytics pool": { + "$ref": "./examples/ListSqlPoolTables.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/schemas/{schemaName}/tables/{tableName}/columns": { + "get": { + "operationId": "SqlPoolTableColumns_ListByTableName", + "summary": "Gets columns in a given table in a SQL pool", + "description": "Gets columns in a given table in a SQL pool.", + "tags": [ + "SqlPools, Tables" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "schemaName", + "in": "path", + "description": "The name of the schema.", + "required": true, + "type": "string" + }, + { + "name": "tableName", + "in": "path", + "description": "The name of the table.", + "required": true, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "An OData filter expression that filters elements in the collection.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SqlPoolColumnListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 InvalidDatabaseSchema - Schema is missing in database.\n\n * 404 InvalidDatabaseTable - Table is missing in database.\n\n * 404 InvalidDatabaseColumn - Column is missing in table." + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-odata": "#/definitions/SqlPoolColumn", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List the columns in a table of a given schema in a SQL Analytics pool": { + "$ref": "./examples/ListSqlPoolColumns.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/connectionPolicies/{connectionPolicyName}": { + "get": { + "operationId": "SqlPoolConnectionPolicies_Get", + "summary": "Get a Sql pool's connection policy, which is used with table auditing", + "description": "Get a Sql pool's connection policy, which is used with table auditing.", + "tags": [ + "SqlPools, ConnectionPolicies" + ], + "deprecated": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "connectionPolicyName", + "in": "path", + "description": "The name of the connection policy.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "ConnectionPolicyName", + "modelAsString": true + }, + "x-ms-parameter-location": "method" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SqlPoolConnectionPolicy" + } + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get a connection policy of a SQL Analytics pool": { + "$ref": "./examples/GetSqlPoolConnectionPolicy.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/vulnerabilityAssessments": { + "get": { + "operationId": "SqlPoolVulnerabilityAssessments_List", + "summary": "Lists the vulnerability assessment policies associated with a SQL pool", + "description": "Lists the vulnerability assessment policies associated with a SQL pool.", + "tags": [ + "SqlPools, Schemas" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SqlPoolVulnerabilityAssessmentListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 409 DatabaseVulnerabilityAssessmentScanIsAlreadyInProgress - Vulnerability Assessment scan is already in progress.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get a vulnerability assessment of a SQL Analytics pool": { + "$ref": "./examples/ListSqlPoolVulnerabilityAssessments.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/vulnerabilityAssessments/{vulnerabilityAssessmentName}/scans": { + "get": { + "operationId": "SqlPoolVulnerabilityAssessmentScans_List", + "summary": "Lists the vulnerability assessment scans of a SQL pool", + "description": "Lists the vulnerability assessment scans of a SQL pool.", + "tags": [ + "SqlPools, Schemas" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "vulnerabilityAssessmentName", + "in": "path", + "description": "The name of the vulnerability assessment.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentName", + "modelAsString": true + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VulnerabilityAssessmentScanRecordListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 409 DatabaseVulnerabilityAssessmentScanIsAlreadyInProgress - Vulnerability Assessment scan is already in progress.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get a vulnerability scan record of a SQL Analytics pool": { + "$ref": "./examples/ListSqlPoolVulnerabilityAssessmentScanRecords.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/vulnerabilityAssessments/{vulnerabilityAssessmentName}/scans/{scanId}/initiateScan": { + "post": { + "tags": [ + "SqlPools, VulnerabilityAssessmentScansExecute" + ], + "description": "Executes a Vulnerability Assessment database scan.", + "operationId": "SqlPoolVulnerabilityAssessmentScans_InitiateScan", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "vulnerabilityAssessmentName", + "in": "path", + "description": "The name of the vulnerability assessment.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentName", + "modelAsString": true + } + }, + { + "name": "scanId", + "in": "path", + "description": "The vulnerability assessment scan Id of the scan to retrieve.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Successfully executed a Vulnerability Assessment scan." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 InvalidVulnerabilityAssessmentScanIdLength - The vulnerability assessment scan ID length must be below {0} characters.\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 409 DatabaseVulnerabilityAssessmentScanIsAlreadyInProgress - Vulnerability Assessment scan is already in progress.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + }, + "202": { + "description": "Successfully started a Vulnerability Assessment scan." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Executes a Sql pool's vulnerability assessment scan.": { + "$ref": "./examples/ExecuteSqlPoolVulnerabilityAssessmentScans.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/vulnerabilityAssessments/{vulnerabilityAssessmentName}/scans/{scanId}/export": { + "post": { + "tags": [ + "SqlPools, VulnerabilityAssessmentScansExport" + ], + "description": "Convert an existing scan result to a human readable format. If already exists nothing happens", + "operationId": "SqlPoolVulnerabilityAssessmentScans_Export", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "vulnerabilityAssessmentName", + "in": "path", + "description": "The name of the vulnerability assessment.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentName", + "modelAsString": true + } + }, + { + "name": "scanId", + "in": "path", + "description": "The vulnerability assessment scan Id of the scan to retrieve.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Scan result was converted successfully.", + "schema": { + "$ref": "#/definitions/SqlPoolVulnerabilityAssessmentScansExport" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 409 DatabaseVulnerabilityAssessmentScanIsAlreadyInProgress - Vulnerability Assessment scan is already in progress.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + }, + "201": { + "description": "Scan result was converted successfully.", + "schema": { + "$ref": "#/definitions/SqlPoolVulnerabilityAssessmentScansExport" + } + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Export a database's vulnerability assessment scan results.": { + "$ref": "./examples/ExportSqlPoolVulnerabilityAssessmentScan.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/securityAlertPolicies": { + "get": { + "operationId": "SqlPoolSecurityAlertPolicies_List", + "summary": "List Sql pool's security alert policies", + "description": "Get a list of Sql pool's security alert policies.", + "tags": [ + "SqlPools, SecurityAlertPolicies" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ListSqlPoolSecurityAlertPolicies" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 SecurityAlertPoliciesInvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 SecurityAlertPoliciesInvalidStorageAccountCredentials - The provided storage account access key is not valid.\n\n * 400 InvalidServerSecurityAlertPolicyCreateRequest - The create server Threat Detection security alert policy request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 400 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 409 ServerSecurityAlertPolicyInProgress - Set server security alert policy is already in progress\n\n * 409 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later.\n\n * 500 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 500 GetServerSecurityAlertPolicyFailed - Failed to get Threat Detection settings" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get a security alert of a SQL Analytics pool": { + "$ref": "./examples/SqlPoolSecurityAlertPolicies_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/securityAlertPolicies/{securityAlertPolicyName}": { + "get": { + "operationId": "SqlPoolSecurityAlertPolicies_Get", + "summary": "Get a Sql pool's security alert policy", + "description": "Get a Sql pool's security alert policy.", + "tags": [ + "SqlPools, SecurityAlertPolicies" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "securityAlertPolicyName", + "in": "path", + "description": "The name of the security alert policy.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "SecurityAlertPolicyName", + "modelAsString": true + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SqlPoolSecurityAlertPolicy" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 SecurityAlertPoliciesInvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 SecurityAlertPoliciesInvalidStorageAccountCredentials - The provided storage account access key is not valid.\n\n * 400 InvalidDatabaseSecurityAlertPolicyCreateRequest - The create database Threat Detection security alert policy request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 UpsertDatabaseSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 400 UpsertDatabaseSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\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 UpsertDatabaseSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 409 DatabaseSecurityAlertPolicyInProgress - Set database security alert policy is already in progress\n\n * 409 UpsertDatabaseSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later.\n\n * 500 UpsertDatabaseSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 500 GetDatabaseSecurityAlertPolicyFailed - Failed to get Threat Detection settings" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get a security alert of a SQL Analytics pool": { + "$ref": "./examples/GetSqlPoolSecurityAlert.json" + } + } + }, + "put": { + "operationId": "SqlPoolSecurityAlertPolicies_CreateOrUpdate", + "summary": "Create or update a Sql pool's security alert policy", + "description": "Create or update a Sql pool's security alert policy.", + "tags": [ + "SqlPools, SecurityAlertPolicies" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "securityAlertPolicyName", + "in": "path", + "description": "The name of the security alert policy.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "SecurityAlertPolicyName", + "modelAsString": true + } + }, + { + "name": "parameters", + "in": "body", + "description": "The Sql pool security alert policy.", + "required": true, + "schema": { + "$ref": "#/definitions/SqlPoolSecurityAlertPolicy" + } + } + ], + "responses": { + "200": { + "description": "Successfully set the Sql pool security alert policy", + "schema": { + "$ref": "#/definitions/SqlPoolSecurityAlertPolicy" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 SecurityAlertPoliciesInvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 SecurityAlertPoliciesInvalidStorageAccountCredentials - The provided storage account access key is not valid.\n\n * 400 InvalidDatabaseSecurityAlertPolicyCreateRequest - The create database Threat Detection security alert policy request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 UpsertDatabaseSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 400 UpsertDatabaseSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\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 UpsertDatabaseSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 409 DatabaseSecurityAlertPolicyInProgress - Set database security alert policy is already in progress\n\n * 409 UpsertDatabaseSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later.\n\n * 500 UpsertDatabaseSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 500 GetDatabaseSecurityAlertPolicyFailed - Failed to get Threat Detection settings" + }, + "201": { + "description": "Successfully created the Sql pool security alert policy.", + "schema": { + "$ref": "#/definitions/SqlPoolSecurityAlertPolicy" + } + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Update a Sql pool's threat detection policy with minimal parameters": { + "$ref": "./examples/CreateOrUpdateSqlPoolSecurityAlertWithMinParameters.json" + }, + "Update a Sql pool's threat detection policy with all parameters": { + "$ref": "./examples/CreateOrUpdateSqlPoolSecurityAlertWithAllParameters.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/vulnerabilityAssessments/{vulnerabilityAssessmentName}/rules/{ruleId}/baselines/{baselineName}": { + "put": { + "tags": [ + "SqlPools, DatabaseVulnerabilityAssesmentRuleBaselines" + ], + "description": "Creates or updates a Sql pool's vulnerability assessment rule baseline.", + "operationId": "SqlPoolVulnerabilityAssessmentRuleBaselines_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "vulnerabilityAssessmentName", + "in": "path", + "description": "The name of the vulnerability assessment.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentName", + "modelAsString": true + } + }, + { + "name": "ruleId", + "in": "path", + "description": "The vulnerability assessment rule ID.", + "required": true, + "type": "string" + }, + { + "name": "baselineName", + "in": "path", + "description": "The name of the vulnerability assessment rule baseline (default implies a baseline on a Sql pool level rule and master for workspace level rule).", + "required": true, + "type": "string", + "enum": [ + "master", + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentPolicyBaselineName", + "modelAsString": false + } + }, + { + "name": "parameters", + "in": "body", + "description": "The requested rule baseline resource.", + "required": true, + "schema": { + "$ref": "#/definitions/SqlPoolVulnerabilityAssessmentRuleBaseline" + } + } + ], + "responses": { + "200": { + "description": "Successfully set the vulnerability assessment rule baseline.", + "schema": { + "$ref": "#/definitions/SqlPoolVulnerabilityAssessmentRuleBaseline" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 VulnerabilityAssessmentStorageAuthenticationFailed - Could not authenticate to storage account '{0}' .\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 VulnerabilityAssessmentInvalidStorageAccount - The storage account '{0}' that was defined in the policy is invalid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 VulnerabilityAssessmentRuleDoesNotExists - Rule '{0}' does not exist.\n\n * 404 VulnerabilityAssessmentBaselineDoesNotExists - Baseline does not exist for rule '{0}'\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Creates or updates a database's vulnerability assessment rule baseline.": { + "$ref": "./examples/CreateOrUpdateSqlPoolVulnerabilityAssessmentRuleBaseline.json" + } + } + }, + "delete": { + "tags": [ + "DatabaseVulnerabilityAssesmentRuleBaselines" + ], + "description": "Removes the database's vulnerability assessment rule baseline.", + "operationId": "SqlPoolVulnerabilityAssessmentRuleBaselines_Delete", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "vulnerabilityAssessmentName", + "in": "path", + "description": "The name of the vulnerability assessment.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentName", + "modelAsString": true + } + }, + { + "name": "ruleId", + "in": "path", + "description": "The vulnerability assessment rule ID.", + "required": true, + "type": "string" + }, + { + "name": "baselineName", + "in": "path", + "description": "The name of the vulnerability assessment rule baseline (default implies a baseline on a Sql pool level rule and master for workspace level rule).", + "required": true, + "type": "string", + "enum": [ + "master", + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentPolicyBaselineName", + "modelAsString": false + } + } + ], + "responses": { + "200": { + "description": "Successfully removed the database vulnerability assessment rule baseline." + }, + "204": { + "description": "No content" + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 VulnerabilityAssessmentStorageAuthenticationFailed - Could not authenticate to storage account '{0}' .\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 VulnerabilityAssessmentInvalidStorageAccount - The storage account '{0}' that was defined in the policy is invalid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 VulnerabilityAssessmentRuleDoesNotExists - Rule '{0}' does not exist.\n\n * 404 VulnerabilityAssessmentBaselineDoesNotExists - Baseline does not exist for rule '{0}'\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + } + }, + "x-ms-examples": { + "Removes a database's vulnerability assessment rule baseline.": { + "$ref": "./examples/DeleteSqlPoolVulnerabilityAssessmentRuleBaseline.json" + } + } + }, + "get": { + "tags": [ + "SqlPools, SqlPoolVulnerabilityAssesmentRuleBaselines" + ], + "description": "Gets a SqlPool's vulnerability assessment rule baseline.", + "operationId": "SqlPoolVulnerabilityAssessmentRuleBaselines_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "vulnerabilityAssessmentName", + "in": "path", + "description": "The name of the vulnerability assessment.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentName", + "modelAsString": true + } + }, + { + "name": "ruleId", + "in": "path", + "description": "The vulnerability assessment rule ID.", + "required": true, + "type": "string" + }, + { + "name": "baselineName", + "in": "path", + "description": "The name of the vulnerability assessment rule baseline (default implies a baseline on a Sql pool level rule and master for server level rule).", + "required": true, + "type": "string", + "enum": [ + "master", + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentPolicyBaselineName", + "modelAsString": false + } + } + ], + "consumes": [], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "Successfully got the vulnerability assessment rule baseline.", + "schema": { + "$ref": "#/definitions/SqlPoolVulnerabilityAssessmentRuleBaseline" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 VulnerabilityAssessmentStorageAuthenticationFailed - Could not authenticate to storage account '{0}' .\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 VulnerabilityAssessmentInvalidStorageAccount - The storage account '{0}' that was defined in the policy is invalid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 VulnerabilityAssessmentRuleDoesNotExists - Rule '{0}' does not exist.\n\n * 404 VulnerabilityAssessmentBaselineDoesNotExists - Baseline does not exist for rule '{0}'\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + } + }, + "x-ms-examples": { + "Gets a Sql pool's vulnerability assessment rule baseline.": { + "$ref": "./examples/SqlPoolVulnerabilityAssessmentRuleBaselineGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/vulnerabilityAssessments/{vulnerabilityAssessmentName}": { + "get": { + "tags": [ + "SqlPools, VulnerabilityAssessments" + ], + "summary": "Gets the Sql pool's vulnerability assessment", + "description": "Gets the Sql pool's vulnerability assessment.", + "operationId": "SqlPoolVulnerabilityAssessments_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "vulnerabilityAssessmentName", + "in": "path", + "description": "The name of the vulnerability assessment.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentName", + "modelAsString": true + } + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the Sql pool vulnerability assessment.", + "schema": { + "$ref": "#/definitions/SqlPoolVulnerabilityAssessment" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get a Sql pool's vulnerability assessment": { + "$ref": "./examples/GetSqlPoolVulnerabilityAssessment.json" + } + } + }, + "put": { + "tags": [ + "SqlPools, VulnerabilityAssessments" + ], + "summary": "Creates or updates the Sql pool vulnerability assessment", + "description": "Creates or updates the Sql pool vulnerability assessment.", + "operationId": "SqlPoolVulnerabilityAssessments_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "vulnerabilityAssessmentName", + "in": "path", + "description": "The name of the vulnerability assessment.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentName", + "modelAsString": true + } + }, + { + "name": "parameters", + "in": "body", + "description": "The requested resource.", + "required": true, + "schema": { + "$ref": "#/definitions/SqlPoolVulnerabilityAssessment" + } + } + ], + "responses": { + "200": { + "description": "Successfully set the Sql pool vulnerability assessment.", + "schema": { + "$ref": "#/definitions/SqlPoolVulnerabilityAssessment" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + }, + "201": { + "description": "Successfully created the vulnerability assessment.", + "schema": { + "$ref": "#/definitions/SqlPoolVulnerabilityAssessment" + } + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Create a database's vulnerability assessment with minimal parameters, when storageContainerSasKey is specified": { + "$ref": "./examples/CreateOrUpdateSqlPoolVulnerabilityAssessmentWithContainerSasKeyAndMinParameters.json" + }, + "Create a database's vulnerability assessment with minimal parameters, when storageAccountAccessKey is specified": { + "$ref": "./examples/CreateOrUpdateVulnerabilityAssessmentWithStorageAccessKeyAndMinParameters.json" + }, + "Create a database's vulnerability assessment with all parameters": { + "$ref": "./examples/CreateOrUpdateSqlPoolVulnerabilityAssessmentWithAllParameters.json" + } + } + }, + "delete": { + "tags": [ + "SqlPools, VulnerabilityAssessments" + ], + "summary": "Removes the database's vulnerability assessment", + "description": "Removes the database's vulnerability assessment.", + "operationId": "SqlPoolVulnerabilityAssessments_Delete", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "vulnerabilityAssessmentName", + "in": "path", + "description": "The name of the vulnerability assessment.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentName", + "modelAsString": true + } + } + ], + "responses": { + "200": { + "description": "Successfully removed the Sql pool vulnerability assessment." + }, + "204": { + "description": "No content" + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Remove a database's vulnerability assessment": { + "$ref": "./examples/DeleteSqlPoolVulnerabilityAssessment.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/extendedAuditingSettings/{blobAuditingPolicyName}": { + "get": { + "tags": [ + "SqlPools, BlobAuditing" + ], + "description": "Gets an extended Sql pool's blob auditing policy.", + "operationId": "ExtendedSqlPoolBlobAuditingPolicies_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "blobAuditingPolicyName", + "in": "path", + "description": "The name of the blob auditing policy.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-parameter-location": "method" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the extended Sql pool blob auditing policy.", + "schema": { + "$ref": "#/definitions/ExtendedSqlPoolBlobAuditingPolicy" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 BlobAuditingIsNotSupportedOnResourceType - Blob Auditing is currently not supported for this resource type.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get an extended database's blob auditing policy": { + "$ref": "./examples/ExtendedSqlPoolBlobAuditingGet.json" + } + } + }, + "put": { + "tags": [ + "SqlPools, BlobAuditing" + ], + "description": "Creates or updates an extended Sql pool's blob auditing policy.", + "operationId": "ExtendedSqlPoolBlobAuditingPolicies_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "blobAuditingPolicyName", + "in": "path", + "description": "The name of the blob auditing policy.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-parameter-location": "method" + }, + { + "name": "parameters", + "in": "body", + "description": "The extended Sql pool blob auditing policy.", + "required": true, + "schema": { + "$ref": "#/definitions/ExtendedSqlPoolBlobAuditingPolicy" + } + } + ], + "responses": { + "200": { + "description": "Successfully set the extended Sql pool blob auditing policy.", + "schema": { + "$ref": "#/definitions/ExtendedSqlPoolBlobAuditingPolicy" + } + }, + "201": { + "description": "Successfully created the extended database blob auditing policy.", + "schema": { + "$ref": "#/definitions/ExtendedSqlPoolBlobAuditingPolicy" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 BlobAuditingIsNotSupportedOnResourceType - Blob Auditing is currently not supported for this resource type.\n\n * 400 BlobAuditingPredicateExpressionSyntaxError - Invalid value of parameter 'predicateExpression'.\n\n * 400 InvalidDatabaseBlobAuditingPolicyCreateRequest - The create database blob auditing policy request does not exist or has no properties object.\n\n * 400 InvalidBlobAuditActionsAndGroups - Invalid audit actions or action groups.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 BlobAuditingPredicateExpressionEmpty - Invalid parameter 'predicateExpression', value can not be empty.\n\n * 400 BlobAuditingInvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 400 BlobAuditingInvalidStorageAccountCredentials - The provided storage account or access key is not valid.\n\n * 400 BlobAuditingIsNotSupportedOnGeoDr - Blob auditing can be configured on primary databases only.\n\n * 400 BlobAuditingNoServerIdentity - The server identity is not correctly configured.\n\n * 400 InvalidBlobAuditActionsAndGroupsForDW - Unsupported audit actions or action groups for DW.\n\n * 400 BlobAuditingInsufficientStorageAccountPermissions - Insufficient read or write permissions on the provided storage account.\n\n * 400 BlobAuditingStorageAccountIsDisabled - The provided storage account is disabled.\n\n * 400 InsufficientDiskSpaceForAuditing - Insufficient disk space to save auditing metadata in the database\n\n * 400 InvalidBlobAuditActions - Invalid audit action\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Create or update an extended Sql pool's blob auditing policy with minimal parameters": { + "$ref": "./examples/ExtendedSqlPoolBlobAuditingCreateMin.json" + }, + "Create or update an extended Sql pool's blob auditing policy with all parameters": { + "$ref": "./examples/ExtendedSqlPoolBlobAuditingCreateMax.json" + }, + "Create or update an extended SQL pool's azure monitor auditing policy with minimal parameters": { + "$ref": "./examples/ExtendedSqlPoolAzureMonitorAuditingCreateMin.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/extendedAuditingSettings": { + "get": { + "tags": [ + "SqlPools,BlobAuditing" + ], + "description": "Lists extended auditing settings of a Sql pool.", + "operationId": "ExtendedSqlPoolBlobAuditingPolicies_ListBySqlPool", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the database extended auditing settings.", + "schema": { + "$ref": "#/definitions/ExtendedSqlPoolBlobAuditingPolicyListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 BlobAuditingIsNotSupportedOnResourceType - Blob Auditing is currently not supported for this resource type.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List extended auditing settings of a database": { + "$ref": "./examples/SqlPoolExtendedAuditingSettingsList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/dataMaskingPolicies/{dataMaskingPolicyName}": { + "put": { + "tags": [ + "SqlPools, DataMaskingPolicies" + ], + "operationId": "DataMaskingPolicies_CreateOrUpdate", + "description": "Creates or updates a Sql pool data masking policy", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "$ref": "#/parameters/DataMaskingPolicyNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DataMaskingPolicy" + }, + "description": "Parameters for creating or updating a data masking policy." + } + ], + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Create or update data masking policy max": { + "$ref": "./examples/DataMaskingPolicyCreateOrUpdateMax.json" + }, + "Create or update data masking policy min": { + "$ref": "./examples/DataMaskingPolicyCreateOrUpdateMin.json" + } + }, + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DataMaskingPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "SqlPools, DataMaskingPolicies" + ], + "operationId": "DataMaskingPolicies_Get", + "description": "Gets a Sql pool data masking policy.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "$ref": "#/parameters/DataMaskingPolicyNameParameter" + } + ], + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get data masking policy": { + "$ref": "./examples/DataMaskingPolicyGet.json" + } + }, + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DataMaskingPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/dataMaskingPolicies/{dataMaskingPolicyName}/rules/{dataMaskingRuleName}": { + "put": { + "tags": [ + "SqlPools, DataMaskingRules" + ], + "operationId": "DataMaskingRules_CreateOrUpdate", + "description": "Creates or updates a Sql pool data masking rule.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "$ref": "#/parameters/DataMaskingPolicyNameParameter" + }, + { + "name": "dataMaskingRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the data masking rule." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DataMaskingRule" + }, + "description": "The required parameters for creating or updating a data masking rule." + } + ], + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Create/Update data masking rule for text": { + "$ref": "./examples/DataMaskingRuleCreateOrUpdateText.json" + }, + "Create/Update data masking rule for numbers": { + "$ref": "./examples/DataMaskingRuleCreateOrUpdateNumber.json" + }, + "Create/Update data masking rule for default min": { + "$ref": "./examples/DataMaskingRuleCreateOrUpdateDefaultMin.json" + }, + "Create/Update data masking rule for default max": { + "$ref": "./examples/DataMaskingRuleCreateOrUpdateDefaultMax.json" + } + }, + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DataMaskingRule" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/DataMaskingRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "SqlPools, DataMaskingRules" + ], + "operationId": "DataMaskingRules_Get", + "description": "Gets the specific Sql pool data masking rule.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "$ref": "#/parameters/DataMaskingPolicyNameParameter" + }, + { + "name": "dataMaskingRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the data masking rule." + } + ], + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get data masking rule": { + "$ref": "./examples/DataMaskingRuleGet.json" + } + }, + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DataMaskingRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/dataMaskingPolicies/{dataMaskingPolicyName}/rules": { + "get": { + "tags": [ + "SqlPools, DataMaskingRules" + ], + "operationId": "DataMaskingRules_ListBySqlPool", + "description": "Gets a list of Sql pool data masking rules.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "$ref": "#/parameters/DataMaskingPolicyNameParameter" + } + ], + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "List data masking rules": { + "$ref": "./examples/DataMaskingRuleList.json" + } + }, + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DataMaskingRuleListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/auditingSettings": { + "get": { + "tags": [ + "SqlPools, BlobAuditing" + ], + "description": "Lists auditing settings of a Sql pool.", + "operationId": "SqlPoolBlobAuditingPolicies_ListBySqlPool", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + } + ], + "consumes": [], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "Successfully retrieved Sql pool auditing settings.", + "schema": { + "$ref": "#/definitions/SqlPoolBlobAuditingPolicyListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 BlobAuditingIsNotSupportedOnResourceType - Blob Auditing is currently not supported for this resource type.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List audit settings of a database": { + "$ref": "./examples/SqlPoolAuditingSettingsList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/schemas/{schemaName}": { + "get": { + "tags": [ + "SqlPools, SqlPoolSchemas" + ], + "description": "Get Sql Pool schema", + "operationId": "SqlPoolSchemas_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "schemaName", + "in": "path", + "description": "The name of the schema.", + "required": true, + "type": "string" + } + ], + "consumes": [], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "Successfully retrieved Sql Pool schema.", + "schema": { + "$ref": "#/definitions/SqlPoolSchema" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 InvalidDatabaseSchema - Schema is missing in database.\n\n * 404 InvalidDatabaseTable - Table is missing in database.\n\n * 404 InvalidDatabaseColumn - Column is missing in table." + } + }, + "x-ms-examples": { + "Get database schema": { + "$ref": "./examples/SqlPoolSchemaGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/schemas/{schemaName}/tables/{tableName}": { + "get": { + "tags": [ + "SqlPools, SqlPoolTables" + ], + "description": "Get Sql pool table", + "operationId": "SqlPoolTables_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "schemaName", + "in": "path", + "description": "The name of the schema.", + "required": true, + "type": "string" + }, + { + "name": "tableName", + "in": "path", + "description": "The name of the table.", + "required": true, + "type": "string" + } + ], + "consumes": [], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "Successfully retrieved Sql pool's table.", + "schema": { + "$ref": "#/definitions/SqlPoolTable" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 InvalidDatabaseSchema - Schema is missing in database.\n\n * 404 InvalidDatabaseTable - Table is missing in database.\n\n * 404 InvalidDatabaseColumn - Column is missing in table." + } + }, + "x-ms-examples": { + "Get database table": { + "$ref": "./examples/SqlPoolTableGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/schemas/{schemaName}/tables/{tableName}/columns/{columnName}": { + "get": { + "tags": [ + "SqlPools, SqlPoolColumns" + ], + "description": "Get Sql pool column", + "operationId": "SqlPoolColumns_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "schemaName", + "in": "path", + "description": "The name of the schema.", + "required": true, + "type": "string" + }, + { + "name": "tableName", + "in": "path", + "description": "The name of the table.", + "required": true, + "type": "string" + }, + { + "name": "columnName", + "in": "path", + "description": "The name of the column.", + "required": true, + "type": "string" + } + ], + "consumes": [], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "Successfully retrieved Sql pool column.", + "schema": { + "$ref": "#/definitions/SqlPoolColumn" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 InvalidDatabaseSchema - Schema is missing in database.\n\n * 404 InvalidDatabaseTable - Table is missing in database.\n\n * 404 InvalidDatabaseColumn - Column is missing in table." + } + }, + "x-ms-examples": { + "Get database column": { + "$ref": "./examples/SqlPoolColumnGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/vulnerabilityAssessments/{vulnerabilityAssessmentName}/scans/{scanId}": { + "get": { + "tags": [ + "SqlPools,SqlPoolVulnerabilityAssessmentScans" + ], + "description": "Gets a vulnerability assessment scan record of a Sql pool.", + "operationId": "SqlPoolVulnerabilityAssessmentScans_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "vulnerabilityAssessmentName", + "in": "path", + "description": "The name of the vulnerability assessment.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentName", + "modelAsString": true + } + }, + { + "name": "scanId", + "in": "path", + "description": "The vulnerability assessment scan Id of the scan to retrieve.", + "required": true, + "type": "string" + } + ], + "consumes": [], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "Successfully retrieved the Sql pool vulnerability assessment scan record.", + "schema": { + "$ref": "#/definitions/VulnerabilityAssessmentScanRecord" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 409 DatabaseVulnerabilityAssessmentScanIsAlreadyInProgress - Vulnerability Assessment scan is already in progress.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + } + }, + "x-ms-examples": { + "Gets a database vulnerability assessment scan record by scan ID": { + "$ref": "./examples/SqlPoolVulnerabilityAssessmentScanRecordsGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/restorePoints/{restorePointName}": { + "get": { + "tags": [ + "SqlPools, RestorePoints" + ], + "description": "Gets a restore point.", + "operationId": "SqlPoolRestorePoints_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "restorePointName", + "in": "path", + "description": "The name of the restore point.", + "required": true, + "type": "string" + } + ], + "consumes": [], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "Successfully returned the restore point.", + "schema": { + "$ref": "#/definitions/RestorePoint" + } + }, + "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": { + "Gets a Sql pool restore point.": { + "$ref": "./examples/SqlPoolRestorePointsGet.json" + } + } + }, + "delete": { + "tags": [ + "SqlPools, RestorePoints" + ], + "description": "Deletes a restore point.", + "operationId": "SqlPoolRestorePoints_Delete", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "restorePointName", + "in": "path", + "description": "The name of the restore point.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the restore point." + }, + "204": { + "description": "The specified restore point does not exist." + }, + "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." + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Deletes a restore point.": { + "$ref": "./examples/SqlPoolRestorePointsDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/workloadGroups/{workloadGroupName}": { + "get": { + "operationId": "SqlPoolWorkloadGroup_Get", + "summary": "Sql pool's workload group", + "description": "Get a Sql pool's workload group.", + "tags": [ + "SqlPools, WorkloadGroups" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "workloadGroupName", + "in": "path", + "description": "The name of the workload group.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the specifies workload group.", + "schema": { + "$ref": "#/definitions/WorkloadGroup" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 OperationNotAllowedOnPausedDatabase - Operation is not allowed on a paused database.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\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 requested resource was not found.\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 ConflictingDatabaseOperation - There is already some operation on the database and the current operation should wait till it is done.\n\n * 409 UnsupportedWorkspaceType - Unsupported operation for the workspace type.\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\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." + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get a a workload group of a SQL Analytics pool": { + "$ref": "./examples/GetSqlPoolWorkloadGroup.json" + } + } + }, + "put": { + "operationId": "SqlPoolWorkloadGroup_CreateOrUpdate", + "summary": "Create Or Update workload group", + "description": "Create Or Update a Sql pool's workload group.", + "tags": [ + "SqlPools, WorkloadGroups" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "workloadGroupName", + "in": "path", + "description": "The name of the workload group.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The requested workload group state.", + "required": true, + "schema": { + "$ref": "#/definitions/WorkloadGroup" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated the workload group.", + "schema": { + "$ref": "#/definitions/WorkloadGroup" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 OperationNotAllowedOnPausedDatabase - Operation is not allowed on a paused database.\n\n * 400 InvalidWorkloadGroupNameParameter - Invalid workload group name\n\n * 400 InvalidMinResourcePercentParameter - Invalid min resource percent for this workload group.\n\n * 400 InvalidMinResourcePercentPerRequestParameter - Invalid min resource percent per query for this workload group.\n\n * 400 InvalidMaxResourcePercentParameter - Invalid max resource percent to allocate for this workload group.\n\n * 400 InvalidMaxResourcePercentPerRequestParameter - Invalid max resource percent per query for this workload group.\n\n * 400 InvalidImportanceParameter - Importance must be one of the following strings: Low, Below_Normal, Normal, Above_Normal, High.\n\n * 400 InvalidQueryExecutionTimeoutParameter - Invalid query execution timeout value for this workload group.\n\n * 400 InvalidResourceRequestBody - The resource or resource properties in the request body is empty or invalid.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\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 requested resource was not found.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\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 ConflictingDatabaseOperation - There is already some operation on the database and the current operation should wait till it is done.\n\n * 409 UnsupportedWorkspaceType - Unsupported operation for the workspace type.\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.\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\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." + }, + "202": { + "description": "Create or update for the workload group accepted." + }, + "201": { + "description": "Successfully created the workload group.", + "schema": { + "$ref": "#/definitions/WorkloadGroup" + } + } + }, + "x-ms-long-running-operation": true, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Create a workload group with the required properties specified.": { + "$ref": "./examples/CreateOrUpdateSqlPoolWorkloadGroupMin.json" + }, + "Create a workload group with all properties specified.": { + "$ref": "./examples/CreateOrUpdateSqlPoolWorkloadGroupMax.json" + } + } + }, + "delete": { + "operationId": "SqlPoolWorkloadGroup_Delete", + "summary": "Remove workload group", + "description": "Remove Sql pool's workload group.", + "tags": [ + "SqlPools, WorkloadGroups" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "workloadGroupName", + "in": "path", + "description": "The name of the workload group.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the workload group." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 OperationNotAllowedOnPausedDatabase - Operation is not allowed on a paused database.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\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 requested resource was not found.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\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 ConflictingDatabaseOperation - There is already some operation on the database and the current operation should wait till it is done.\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 UnsupportedWorkspaceType - Unsupported operation for the workspace type.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\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." + }, + "202": { + "description": "Deleting the workload group is in progress." + }, + "204": { + "description": "The specified workload group does not exist." + } + }, + "x-ms-long-running-operation": true, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Delete a workload group of a SQL Analytics pool": { + "$ref": "./examples/DeleteSqlPoolWorkloadGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/workloadGroups": { + "get": { + "operationId": "SqlPoolWorkloadGroup_List", + "summary": "Sql pool's workload groups", + "description": "Get list of Sql pool's workload groups.", + "tags": [ + "SqlPools, WorkloadGroups" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of workload groups.", + "schema": { + "$ref": "#/definitions/WorkloadGroupListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 OperationNotAllowedOnPausedDatabase - Operation is not allowed on a paused database.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\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 requested resource was not found.\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 ConflictingDatabaseOperation - There is already some operation on the database and the current operation should wait till it is done.\n\n * 409 UnsupportedWorkspaceType - Unsupported operation for the workspace type.\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\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" + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get the list of workload groups of a SQL Analytics pool": { + "$ref": "./examples/GetSqlPoolWorkloadGroupList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/workloadGroups/{workloadGroupName}/workloadClassifiers/{workloadClassifierName}": { + "get": { + "operationId": "SqlPoolWorkloadClassifier_Get", + "summary": "Get workload classifier", + "description": "Get a workload classifier of Sql pool's workload group.", + "tags": [ + "SqlPools, WorkloadClassifiers" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "workloadGroupName", + "in": "path", + "description": "The name of the workload group.", + "required": true, + "type": "string" + }, + { + "name": "workloadClassifierName", + "in": "path", + "description": "The name of the workload classifier.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the specifies workload classifier.", + "schema": { + "$ref": "#/definitions/WorkloadClassifier" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 OperationNotAllowedOnPausedDatabase - Operation is not allowed on a paused database.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\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 requested resource was not found.\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 ConflictingDatabaseOperation - There is already some operation on the database and the current operation should wait till it is done.\n\n * 409 UnsupportedWorkspaceType - Unsupported operation for the workspace type.\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\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." + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get a workload classifier for SQL Analytics pool's workload group": { + "$ref": "./examples/GetSqlPoolWorkloadGroupWorkloadClassifier.json" + } + } + }, + "put": { + "operationId": "SqlPoolWorkloadClassifier_CreateOrUpdate", + "summary": "Create Or Update workload classifier", + "description": "Create Or Update workload classifier for a Sql pool's workload group.", + "tags": [ + "SqlPools, WorkloadClassifiers" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "workloadGroupName", + "in": "path", + "description": "The name of the workload group.", + "required": true, + "type": "string" + }, + { + "name": "workloadClassifierName", + "in": "path", + "description": "The name of the workload classifier.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The properties of the workload classifier.", + "required": true, + "schema": { + "$ref": "#/definitions/WorkloadClassifier" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated the workload classifier.", + "schema": { + "$ref": "#/definitions/WorkloadClassifier" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 OperationNotAllowedOnPausedDatabase - Operation is not allowed on a paused database.\n\n * 400 InvalidMemberNameParameter - Invalid member name parameter for this workload classifier.\n\n * 400 InvalidStartTimeAndEndTimeParameters - Invalid start time and end time parameters for the workload classifier.\n\n * 400 InvalidImportanceParameter - Importance must be one of the following strings: Low, Below_Normal, Normal, Above_Normal, High.\n\n * 400 InvalidResourceRequestBody - The resource or resource properties in the request body is empty or invalid.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\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 requested resource was not found.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\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 UnsupportedWorkspaceType - Unsupported operation for the workspace type.\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 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.\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\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." + }, + "202": { + "description": "Create or update for the workload classifier is in progress." + }, + "201": { + "description": "Successfully created the workload classifier.", + "schema": { + "$ref": "#/definitions/WorkloadClassifier" + } + } + }, + "x-ms-long-running-operation": true, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Create a workload classifier with the required properties specified.": { + "$ref": "./examples/CreateOrUpdateSqlPoolWorkloadClassifierMin.json" + }, + "Create a workload classifier with all properties specified.": { + "$ref": "./examples/CreateOrUpdateSqlPoolWorkloadClassifierMax.json" + } + } + }, + "delete": { + "operationId": "SqlPoolWorkloadClassifier_Delete", + "summary": "Remove workload classifier", + "description": "Remove workload classifier of a Sql pool's workload group.", + "tags": [ + "SqlPools, WorkloadClassifiers" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "workloadGroupName", + "in": "path", + "description": "The name of the workload group.", + "required": true, + "type": "string" + }, + { + "name": "workloadClassifierName", + "in": "path", + "description": "The name of the workload classifier.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the workload classifier." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 OperationNotAllowedOnPausedDatabase - Operation is not allowed on a paused database.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\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 requested resource was not found.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\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 ConflictingDatabaseOperation - There is already some operation on the database and the current operation should wait till it is done.\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 UnsupportedWorkspaceType - Unsupported operation for the workspace type.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\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." + }, + "202": { + "description": "Deleting the workload classifier is in progress." + }, + "204": { + "description": "The specified workload classifier does not exist." + } + }, + "x-ms-long-running-operation": true, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Delete a workload classifier of a SQL Analytics pool's workload group": { + "$ref": "./examples/DeleteSqlPoolWorkloadGroupWorkloadClassifer.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/workloadGroups/{workloadGroupName}/workloadClassifiers": { + "get": { + "operationId": "SqlPoolWorkloadClassifier_List", + "summary": "Sql pool's workload classifier", + "description": "Get list of Sql pool's workload classifier for workload groups.", + "tags": [ + "SqlPools, WorkloadClassifiers" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "workloadGroupName", + "in": "path", + "description": "The name of the workload group.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of workload groups.", + "schema": { + "$ref": "#/definitions/WorkloadClassifierListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 OperationNotAllowedOnPausedDatabase - Operation is not allowed on a paused database.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\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 requested resource was not found.\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 UnsupportedWorkspaceType - Unsupported operation for the workspace type.\n\n * 409 ConflictingDatabaseOperation - There is already some operation on the database and the current operation should wait till it is done.\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\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" + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get the list of workload classifiers of a SQL Analytics pool's workload group": { + "$ref": "./examples/GetSqlPoolWorkloadGroupWorkloadClassifierList.json" + } + } + } + } + }, + "definitions": { + "SqlPoolInfoListResult": { + "type": "object", + "title": "SQL pool collection", + "description": "List of SQL pools", + "properties": { + "nextLink": { + "type": "string", + "description": "Link to the next page of results" + }, + "value": { + "type": "array", + "description": "List of SQL pools", + "items": { + "$ref": "#/definitions/SqlPool" + } + } + } + }, + "SqlPool": { + "type": "object", + "title": "SQL pool", + "description": "A SQL Analytics pool", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/TrackedResource" + } + ], + "properties": { + "sku": { + "$ref": "#/definitions/Sku", + "description": "SQL pool SKU" + }, + "properties": { + "$ref": "#/definitions/SqlPoolResourceProperties", + "description": "SQL pool properties", + "x-ms-client-flatten": true + } + } + }, + "SqlPoolPatchInfo": { + "type": "object", + "title": "SQL pool patch info", + "description": "A SQL Analytics pool patch info", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "SQL pool SKU" + }, + "properties": { + "$ref": "#/definitions/SqlPoolResourceProperties", + "description": "SQL pool properties", + "x-ms-client-flatten": true + } + } + }, + "Sku": { + "type": "object", + "title": "Sku", + "description": "SQL pool SKU", + "properties": { + "tier": { + "type": "string", + "description": "The service tier" + }, + "name": { + "type": "string", + "description": "The SKU name" + }, + "capacity": { + "type": "integer", + "format": "int32", + "description": "If the SKU supports scale out/in then the capacity integer should be included. If scale out/in is not possible for the resource this may be omitted." + } + } + }, + "SqlPoolResourceProperties": { + "type": "object", + "title": "SQL pool properties", + "description": "Properties of a SQL Analytics pool", + "properties": { + "maxSizeBytes": { + "type": "integer", + "description": "Maximum size in bytes", + "format": "int64" + }, + "collation": { + "type": "string", + "description": "Collation mode" + }, + "sourceDatabaseId": { + "type": "string", + "description": "Source database to create from" + }, + "recoverableDatabaseId": { + "type": "string", + "description": "Backup database to restore from" + }, + "provisioningState": { + "type": "string", + "description": "Resource state" + }, + "status": { + "type": "string", + "description": "Resource status" + }, + "restorePointInTime": { + "type": "string", + "description": "Snapshot time to restore", + "format": "date-time" + }, + "createMode": { + "type": "string", + "description": "What is this?" + }, + "creationDate": { + "type": "string", + "description": "Date the SQL pool was created", + "format": "date-time" + }, + "storageAccountType": { + "description": "The storage account type used to store backups for this sql pool.", + "enum": [ + "GRS", + "LRS", + "ZRS" + ], + "type": "string", + "x-ms-enum": { + "name": "StorageAccountType", + "modelAsString": true + } + } + } + }, + "MetadataSyncConfig": { + "type": "object", + "title": "Metadata sync configuration", + "description": "Configuration for metadata sync", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "title": "Metadata Sync Config properties", + "description": "Metadata Sync Config properties", + "properties": { + "enabled": { + "type": "boolean", + "description": "Indicates whether the metadata sync is enabled or disabled" + }, + "syncIntervalInMinutes": { + "type": "integer", + "format": "int32", + "description": "The Sync Interval in minutes." + } + }, + "x-ms-client-flatten": true + } + }, + "x-ms-azure-resource": true + }, + "GeoBackupPolicyProperties": { + "properties": { + "state": { + "type": "string", + "description": "The state of the geo backup policy.", + "enum": [ + "Disabled", + "Enabled" + ], + "x-ms-enum": { + "modelAsString": false, + "name": "GeoBackupPolicyState" + } + }, + "storageType": { + "type": "string", + "description": "The storage type of the geo backup policy.", + "readOnly": true + } + }, + "required": [ + "state" + ], + "description": "The properties of the geo backup policy." + }, + "GeoBackupPolicy": { + "properties": { + "properties": { + "$ref": "#/definitions/GeoBackupPolicyProperties", + "description": "The properties of the geo backup policy.", + "x-ms-client-flatten": true + }, + "kind": { + "readOnly": true, + "type": "string", + "description": "Kind of geo backup policy. This is metadata used for the Azure portal experience." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "Backup policy location." + } + }, + "required": [ + "properties" + ], + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ], + "description": "A database geo backup policy." + }, + "GeoBackupPolicyListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/GeoBackupPolicy" + }, + "description": "The list of geo backup policies." + } + }, + "description": "The response to a list geo backup policies request." + }, + "TopQueries": { + "properties": { + "aggregationFunction": { + "description": "The function that is used to aggregate each query's metrics.", + "type": "string", + "enum": [ + "min", + "max", + "avg", + "sum" + ], + "x-ms-enum": { + "name": "QueryAggregationFunction", + "modelAsString": false + }, + "readOnly": true + }, + "executionType": { + "description": "The execution type that is used to filter the query instances that are returned.", + "type": "string", + "enum": [ + "any", + "regular", + "irregular", + "aborted", + "exception" + ], + "x-ms-enum": { + "name": "QueryExecutionType", + "modelAsString": false + }, + "readOnly": true + }, + "intervalType": { + "description": "The duration of the interval (ISO8601 duration format).", + "type": "string", + "readOnly": true + }, + "numberOfTopQueries": { + "description": "The number of requested queries.", + "type": "number", + "format": "int32", + "readOnly": true + }, + "observationStartTime": { + "description": "The start time for queries that are returned (ISO8601 format)", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "observationEndTime": { + "description": "The end time for queries that are returned (ISO8601 format)", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "observedMetric": { + "description": "The type of metric to use for ordering the top metrics.", + "type": "string", + "enum": [ + "cpu", + "io", + "logio", + "duration", + "executionCount" + ], + "x-ms-enum": { + "name": "QueryObservedMetricType", + "modelAsString": false + }, + "readOnly": true + }, + "queries": { + "type": "array", + "items": { + "$ref": "#/definitions/QueryStatistic" + }, + "description": "The list of queries.", + "readOnly": true + } + }, + "description": "A database query." + }, + "QueryStatistic": { + "properties": { + "queryId": { + "description": "The id of the query", + "type": "string", + "readOnly": true + }, + "intervals": { + "type": "array", + "items": { + "$ref": "#/definitions/QueryInterval" + }, + "description": "The list of query intervals.", + "readOnly": true + } + }, + "description": "A database query." + }, + "QueryInterval": { + "properties": { + "intervalStartTime": { + "description": "The start time of the measurement interval (ISO8601 format).", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "executionCount": { + "description": "The number of times the query was executed during this interval.", + "type": "number", + "format": "int32", + "readOnly": true + }, + "metrics": { + "type": "array", + "items": { + "$ref": "#/definitions/QueryMetric" + }, + "description": "The list of query metrics during this interval.", + "readOnly": true + } + }, + "description": "A database query." + }, + "QueryMetric": { + "properties": { + "name": { + "description": "The name of the metric", + "type": "string", + "readOnly": true + }, + "displayName": { + "description": "The name of the metric for display in user interface", + "type": "string", + "readOnly": true + }, + "unit": { + "description": "The unit of measurement", + "type": "string", + "enum": [ + "percentage", + "KB", + "microseconds" + ], + "x-ms-enum": { + "name": "QueryMetricUnit", + "modelAsString": false + }, + "readOnly": true + }, + "value": { + "description": "The measured value", + "type": "number", + "format": "double", + "readOnly": true + } + }, + "description": "A database query." + }, + "TopQueriesListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/TopQueries" + }, + "description": "The list of top queries." + } + }, + "required": [ + "value" + ], + "description": "Represents the response to a get top queries request." + }, + "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 + } + } + }, + "DataWarehouseUserActivities": { + "description": "User activities of a data warehouse", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/DataWarehouseUserActivitiesProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "RestorePointListResult": { + "description": "A list of long term retention backups.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/RestorePoint" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "RestorePointProperties": { + "description": "Properties of a database restore point", + "type": "object", + "properties": { + "restorePointType": { + "description": "The type of restore point", + "enum": [ + "CONTINUOUS", + "DISCRETE" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "RestorePointType", + "modelAsString": false + } + }, + "earliestRestoreDate": { + "format": "date-time", + "description": "The earliest time to which this database can be restored", + "type": "string", + "readOnly": true + }, + "restorePointCreationDate": { + "format": "date-time", + "description": "The time the backup was taken", + "type": "string", + "readOnly": true + }, + "restorePointLabel": { + "description": "The label of restore point for backup request by user", + "type": "string", + "readOnly": true + } + } + }, + "RestorePoint": { + "description": "Database restore points.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "location": { + "description": "Resource location.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/RestorePointProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "ReplicationLinkProperties": { + "properties": { + "isTerminationAllowed": { + "readOnly": true, + "type": "boolean", + "description": "Legacy value indicating whether termination is allowed. Currently always returns true." + }, + "replicationMode": { + "readOnly": true, + "type": "string", + "description": "Replication mode of this replication link." + }, + "partnerServer": { + "readOnly": true, + "type": "string", + "description": "The name of the workspace hosting the partner Sql pool." + }, + "partnerDatabase": { + "readOnly": true, + "type": "string", + "description": "The name of the partner Sql pool." + }, + "partnerLocation": { + "readOnly": true, + "type": "string", + "description": "The Azure Region of the partner Sql pool." + }, + "role": { + "readOnly": true, + "type": "string", + "description": "The role of the Sql pool in the replication link.", + "enum": [ + "Primary", + "Secondary", + "NonReadableSecondary", + "Source", + "Copy" + ], + "x-ms-enum": { + "name": "ReplicationRole" + } + }, + "partnerRole": { + "readOnly": true, + "type": "string", + "description": "The role of the partner Sql pool in the replication link.", + "enum": [ + "Primary", + "Secondary", + "NonReadableSecondary", + "Source", + "Copy" + ], + "x-ms-enum": { + "name": "ReplicationRole" + } + }, + "startTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The start time for the replication link." + }, + "percentComplete": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The percentage of seeding complete for the replication link." + }, + "replicationState": { + "readOnly": true, + "type": "string", + "description": "The replication state for the replication link.", + "enum": [ + "PENDING", + "SEEDING", + "CATCH_UP", + "SUSPENDED" + ], + "x-ms-enum": { + "name": "ReplicationState", + "modelAsString": true + } + } + }, + "description": "Represents the properties of a Sql pool replication link." + }, + "ReplicationLink": { + "properties": { + "location": { + "type": "string", + "description": "Location of the workspace that contains this firewall rule.", + "readOnly": true + }, + "type": { + "type": "string", + "description": "Type of resource this is.", + "readOnly": true + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ReplicationLinkProperties", + "description": "The properties representing the resource." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ], + "description": "Represents a Sql pool replication link." + }, + "ReplicationLinkListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ReplicationLink" + }, + "description": "The list of Sql pool replication links housed in the Sql pool." + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + }, + "description": "Represents the response to a List Sql pool replication link request." + }, + "MaintenanceWindowOptionsProperties": { + "description": "Maintenance window options properties.", + "type": "object", + "properties": { + "isEnabled": { + "description": "Whether maintenance windows are enabled for the database.", + "type": "boolean" + }, + "maintenanceWindowCycles": { + "description": "Available maintenance cycles e.g. {Saturday, 0, 48*60}, {Wednesday, 0, 24*60}.", + "type": "array", + "items": { + "$ref": "#/definitions/MaintenanceWindowTimeRange" + } + }, + "minDurationInMinutes": { + "format": "int32", + "description": "Minimum duration of maintenance window.", + "type": "integer" + }, + "defaultDurationInMinutes": { + "format": "int32", + "description": "Default duration for maintenance window.", + "type": "integer" + }, + "minCycles": { + "format": "int32", + "description": "Minimum number of maintenance windows cycles to be set on the database.", + "type": "integer" + }, + "timeGranularityInMinutes": { + "format": "int32", + "description": "Time granularity in minutes for maintenance windows.", + "type": "integer" + }, + "allowMultipleMaintenanceWindowsPerCycle": { + "description": "Whether we allow multiple maintenance windows per cycle.", + "type": "boolean" + } + } + }, + "MaintenanceWindowOptions": { + "description": "Maintenance window options.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/MaintenanceWindowOptionsProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "MaintenanceWindowsProperties": { + "description": "Maintenance windows resource properties.", + "type": "object", + "properties": { + "timeRanges": { + "type": "array", + "items": { + "$ref": "#/definitions/MaintenanceWindowTimeRange" + } + } + } + }, + "MaintenanceWindowTimeRange": { + "description": "Maintenance window time range.", + "type": "object", + "properties": { + "dayOfWeek": { + "description": "Day of maintenance window.", + "enum": [ + "Sunday", + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday" + ], + "type": "string", + "x-ms-enum": { + "name": "DayOfWeek", + "modelAsString": true + } + }, + "startTime": { + "description": "Start time minutes offset from 12am.", + "type": "string" + }, + "duration": { + "description": "Duration of maintenance window in minutes.", + "type": "string" + } + } + }, + "MaintenanceWindows": { + "description": "Maintenance windows.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/MaintenanceWindowsProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "TransparentDataEncryptionProperties": { + "properties": { + "status": { + "type": "string", + "description": "The status of the database transparent data encryption.", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "TransparentDataEncryptionStatus" + } + } + }, + "description": "Represents the properties of a database transparent data encryption." + }, + "TransparentDataEncryption": { + "properties": { + "location": { + "type": "string", + "readOnly": true, + "description": "Resource location." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/TransparentDataEncryptionProperties", + "description": "Represents the properties of the resource." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ], + "description": "Represents a Sql pool transparent data encryption configuration." + }, + "TransparentDataEncryptionListResult": { + "description": "A list of transparent data encryption configurations.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/TransparentDataEncryption" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "SqlPoolBlobAuditingPolicyProperties": { + "description": "Properties of a Sql pool blob auditing policy.", + "required": [ + "state" + ], + "type": "object", + "properties": { + "state": { + "description": "Specifies the state of the policy. If state is Enabled, storageEndpoint or isAzureMonitorTargetEnabled are required.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "BlobAuditingPolicyState", + "modelAsString": false + } + }, + "storageEndpoint": { + "description": "Specifies the blob storage endpoint (e.g. https://MyAccount.blob.core.windows.net). If state is Enabled, storageEndpoint is required.", + "type": "string" + }, + "storageAccountAccessKey": { + "description": "Specifies the identifier key of the auditing storage account. If state is Enabled and storageEndpoint is specified, storageAccountAccessKey is required.", + "type": "string", + "x-ms-mutability": [ + "create", + "update" + ] + }, + "retentionDays": { + "format": "int32", + "description": "Specifies the number of days to keep in the audit logs in the storage account.", + "type": "integer" + }, + "auditActionsAndGroups": { + "description": "Specifies the Actions-Groups and Actions to audit.\r\n\r\nThe recommended set of action groups to use is the following combination - this will audit all the queries and stored procedures executed against the database, as well as successful and failed logins:\r\n\r\nBATCH_COMPLETED_GROUP,\r\nSUCCESSFUL_DATABASE_AUTHENTICATION_GROUP,\r\nFAILED_DATABASE_AUTHENTICATION_GROUP.\r\n\r\nThis above combination is also the set that is configured by default when enabling auditing from the Azure portal.\r\n\r\nThe supported action groups to audit are (note: choose only specific groups that cover your auditing needs. Using unnecessary groups could lead to very large quantities of audit records):\r\n\r\nAPPLICATION_ROLE_CHANGE_PASSWORD_GROUP\r\nBACKUP_RESTORE_GROUP\r\nDATABASE_LOGOUT_GROUP\r\nDATABASE_OBJECT_CHANGE_GROUP\r\nDATABASE_OBJECT_OWNERSHIP_CHANGE_GROUP\r\nDATABASE_OBJECT_PERMISSION_CHANGE_GROUP\r\nDATABASE_OPERATION_GROUP\r\nDATABASE_PERMISSION_CHANGE_GROUP\r\nDATABASE_PRINCIPAL_CHANGE_GROUP\r\nDATABASE_PRINCIPAL_IMPERSONATION_GROUP\r\nDATABASE_ROLE_MEMBER_CHANGE_GROUP\r\nFAILED_DATABASE_AUTHENTICATION_GROUP\r\nSCHEMA_OBJECT_ACCESS_GROUP\r\nSCHEMA_OBJECT_CHANGE_GROUP\r\nSCHEMA_OBJECT_OWNERSHIP_CHANGE_GROUP\r\nSCHEMA_OBJECT_PERMISSION_CHANGE_GROUP\r\nSUCCESSFUL_DATABASE_AUTHENTICATION_GROUP\r\nUSER_CHANGE_PASSWORD_GROUP\r\nBATCH_STARTED_GROUP\r\nBATCH_COMPLETED_GROUP\r\n\r\nThese are groups that cover all sql statements and stored procedures executed against the database, and should not be used in combination with other groups as this will result in duplicate audit logs.\r\n\r\nFor more information, see [Database-Level Audit Action Groups](https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-action-groups).\r\n\r\nFor Database auditing policy, specific Actions can also be specified (note that Actions cannot be specified for Server auditing policy). The supported actions to audit are:\r\nSELECT\r\nUPDATE\r\nINSERT\r\nDELETE\r\nEXECUTE\r\nRECEIVE\r\nREFERENCES\r\n\r\nThe general form for defining an action to be audited is:\r\n{action} ON {object} BY {principal}\r\n\r\nNote that in the above format can refer to an object like a table, view, or stored procedure, or an entire database or schema. For the latter cases, the forms DATABASE::{db_name} and SCHEMA::{schema_name} are used, respectively.\r\n\r\nFor example:\r\nSELECT on dbo.myTable by public\r\nSELECT on DATABASE::myDatabase by public\r\nSELECT on SCHEMA::mySchema by public\r\n\r\nFor more information, see [Database-Level Audit Actions](https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-actions)", + "type": "array", + "items": { + "type": "string" + } + }, + "storageAccountSubscriptionId": { + "format": "uuid", + "description": "Specifies the blob storage subscription Id.", + "type": "string" + }, + "isStorageSecondaryKeyInUse": { + "description": "Specifies whether storageAccountAccessKey value is the storage's secondary key.", + "type": "boolean" + }, + "isAzureMonitorTargetEnabled": { + "description": "Specifies whether audit events are sent to Azure Monitor. \r\nIn order to send the events to Azure Monitor, specify 'state' as 'Enabled' and 'isAzureMonitorTargetEnabled' as true.\r\n\r\nWhen using REST API to configure auditing, Diagnostic Settings with 'SQLSecurityAuditEvents' diagnostic logs category on the database should be also created.\r\nNote that for server level audit you should use the 'master' database as {databaseName}.\r\n\r\nDiagnostic Settings URI format:\r\nPUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/providers/microsoft.insights/diagnosticSettings/{settingsName}?api-version=2017-05-01-preview\r\n\r\nFor more information, see [Diagnostic Settings REST API](https://go.microsoft.com/fwlink/?linkid=2033207)\r\nor [Diagnostic Settings PowerShell](https://go.microsoft.com/fwlink/?linkid=2033043)\r\n", + "type": "boolean" + } + } + }, + "SqlPoolBlobAuditingPolicy": { + "description": "A Sql pool blob auditing policy.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "kind": { + "description": "Resource kind.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/SqlPoolBlobAuditingPolicyProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "SqlPoolBlobAuditingPolicySqlPoolOperationListResult": { + "description": "The response to a list Sql pool operations request", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/SqlPoolOperation" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "SqlPoolOperationProperties": { + "description": "The properties of a Sql pool operation.", + "type": "object", + "properties": { + "databaseName": { + "description": "The name of the Sql 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.", + "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 + } + } + }, + "SqlPoolOperation": { + "description": "A Sql pool operation.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/SqlPoolOperationProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "SqlPoolUsage": { + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the usage metric." + }, + "resourceName": { + "readOnly": true, + "type": "string", + "description": "The name of the resource." + }, + "displayName": { + "readOnly": true, + "type": "string", + "description": "The usage metric display name." + }, + "currentValue": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The current value of the usage metric." + }, + "limit": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The current limit of the usage metric." + }, + "unit": { + "readOnly": true, + "type": "string", + "description": "The units of the usage metric." + }, + "nextResetTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The next reset time for the usage metric (ISO8601 format)." + } + }, + "description": "The Sql pool usages." + }, + "SqlPoolUsageListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SqlPoolUsage" + }, + "description": "The list of usages for the Sql pool." + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + }, + "required": [ + "value" + ], + "description": "The response to a list Sql pool usages request." + }, + "SensitivityLabelProperties": { + "description": "Properties of a sensitivity label.", + "type": "object", + "properties": { + "schemaName": { + "description": "The schema name.", + "type": "string", + "readOnly": true + }, + "tableName": { + "description": "The table name.", + "type": "string", + "readOnly": true + }, + "columnName": { + "description": "The column name.", + "type": "string", + "readOnly": true + }, + "labelName": { + "description": "The label name.", + "type": "string" + }, + "labelId": { + "description": "The label ID.", + "type": "string" + }, + "informationType": { + "description": "The information type.", + "type": "string" + }, + "informationTypeId": { + "description": "The information type ID.", + "type": "string" + }, + "isDisabled": { + "description": "Is sensitivity recommendation disabled. Applicable for recommended sensitivity label only. Specifies whether the sensitivity recommendation on this column is disabled (dismissed) or not.", + "type": "boolean", + "readOnly": true + }, + "rank": { + "enum": [ + "None", + "Low", + "Medium", + "High", + "Critical" + ], + "type": "string", + "x-ms-enum": { + "name": "SensitivityLabelRank", + "modelAsString": false + } + } + } + }, + "SensitivityLabel": { + "description": "A sensitivity label.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/SensitivityLabelProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + }, + "managedBy": { + "type": "string", + "readOnly": true, + "description": "managed by" + } + } + }, + "SensitivityLabelListResult": { + "description": "A list of sensitivity labels.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/SensitivityLabel" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "SqlPoolSchema": { + "description": "A Sql pool schema resource.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ] + }, + "SqlPoolSchemaListResult": { + "description": "A list of Sql pool schemas.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/SqlPoolSchema" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "SqlPoolTable": { + "description": "A Sql pool table resource.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ] + }, + "SqlPoolTableListResult": { + "description": "A list of Sql pool tables.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/SqlPoolTable" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "SqlPoolColumnProperties": { + "description": "Sql pool column properties.", + "type": "object", + "properties": { + "columnType": { + "description": "The column data type.", + "enum": [ + "image", + "text", + "uniqueidentifier", + "date", + "time", + "datetime2", + "datetimeoffset", + "tinyint", + "smallint", + "int", + "smalldatetime", + "real", + "money", + "datetime", + "float", + "sql_variant", + "ntext", + "bit", + "decimal", + "numeric", + "smallmoney", + "bigint", + "hierarchyid", + "geometry", + "geography", + "varbinary", + "varchar", + "binary", + "char", + "timestamp", + "nvarchar", + "nchar", + "xml", + "sysname" + ], + "type": "string", + "x-ms-enum": { + "name": "ColumnDataType", + "modelAsString": true + } + }, + "isComputed": { + "type": "boolean", + "description": "Indicates whether column value is computed or not", + "readOnly": true + } + } + }, + "SqlPoolColumn": { + "description": "A Sql pool column resource.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/SqlPoolColumnProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "SqlPoolColumnListResult": { + "description": "A list of Sql pool columns.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/SqlPoolColumn" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "SqlPoolConnectionPolicyProperties": { + "description": "Properties of a Sql pool connection policy.", + "type": "object", + "properties": { + "securityEnabledAccess": { + "description": "The state of security access.", + "type": "string" + }, + "proxyDnsName": { + "description": "The fully qualified host name of the auditing proxy.", + "type": "string" + }, + "proxyPort": { + "description": "The port number of the auditing proxy.", + "type": "string" + }, + "visibility": { + "description": "The visibility of the auditing proxy.", + "type": "string" + }, + "useServerDefault": { + "description": "Whether server default is enabled or disabled.", + "type": "string" + }, + "redirectionState": { + "description": "The state of proxy redirection.", + "type": "string" + }, + "state": { + "description": "The connection policy state.", + "type": "string" + } + } + }, + "SqlPoolConnectionPolicy": { + "description": "A Sql pool connection policy.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "kind": { + "description": "Resource kind.", + "type": "string", + "readOnly": true + }, + "location": { + "type": "string", + "readOnly": true, + "description": "Resource location." + }, + "properties": { + "$ref": "#/definitions/SqlPoolConnectionPolicyProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "SqlPoolVulnerabilityAssessmentProperties": { + "description": "Properties of a Sql pool Vulnerability Assessment.", + "type": "object", + "properties": { + "storageContainerPath": { + "description": "A blob storage container path to hold the scan results (e.g. https://myStorage.blob.core.windows.net/VaScans/). It is required if server level vulnerability assessment policy doesn't set", + "type": "string", + "x-ms-mutability": [ + "create", + "update" + ] + }, + "storageContainerSasKey": { + "description": "A shared access signature (SAS Key) that has write access to the blob container specified in 'storageContainerPath' parameter. If 'storageAccountAccessKey' isn't specified, StorageContainerSasKey is required.", + "type": "string", + "x-ms-mutability": [ + "create", + "update" + ] + }, + "storageAccountAccessKey": { + "description": "Specifies the identifier key of the storage account for vulnerability assessment scan results. If 'StorageContainerSasKey' isn't specified, storageAccountAccessKey is required.", + "type": "string", + "x-ms-mutability": [ + "create", + "update" + ] + }, + "recurringScans": { + "$ref": "#/definitions/VulnerabilityAssessmentRecurringScansProperties", + "description": "The recurring scans settings" + } + } + }, + "VulnerabilityAssessmentRecurringScansProperties": { + "description": "Properties of a Vulnerability Assessment recurring scans.", + "type": "object", + "properties": { + "isEnabled": { + "description": "Recurring scans state.", + "type": "boolean" + }, + "emailSubscriptionAdmins": { + "description": "Specifies that the schedule scan notification will be is sent to the subscription administrators.", + "default": true, + "type": "boolean" + }, + "emails": { + "description": "Specifies an array of e-mail addresses to which the scan notification is sent.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "SqlPoolVulnerabilityAssessment": { + "description": "A Sql pool vulnerability assessment.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/SqlPoolVulnerabilityAssessmentProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "SqlPoolVulnerabilityAssessmentListResult": { + "description": "A list of the Sql pool's vulnerability assessments.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/SqlPoolVulnerabilityAssessment" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "VulnerabilityAssessmentScanRecordListResult": { + "description": "A list of vulnerability assessment scan records.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/VulnerabilityAssessmentScanRecord" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "VulnerabilityAssessmentScanRecord": { + "description": "A vulnerability assessment scan record.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/VulnerabilityAssessmentScanRecordProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "VulnerabilityAssessmentScanRecordProperties": { + "description": "Properties of a vulnerability assessment scan record.", + "type": "object", + "properties": { + "scanId": { + "description": "The scan ID.", + "type": "string", + "readOnly": true + }, + "triggerType": { + "description": "The scan trigger type.", + "enum": [ + "OnDemand", + "Recurring" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "VulnerabilityAssessmentScanTriggerType", + "modelAsString": true + } + }, + "state": { + "description": "The scan status.", + "enum": [ + "Passed", + "Failed", + "FailedToRun", + "InProgress" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "VulnerabilityAssessmentScanState", + "modelAsString": true + } + }, + "startTime": { + "format": "date-time", + "description": "The scan start time (UTC).", + "type": "string", + "readOnly": true + }, + "endTime": { + "format": "date-time", + "description": "The scan end time (UTC).", + "type": "string", + "readOnly": true + }, + "errors": { + "description": "The scan errors.", + "type": "array", + "items": { + "$ref": "#/definitions/VulnerabilityAssessmentScanError" + }, + "readOnly": true + }, + "storageContainerPath": { + "description": "The scan results storage container path.", + "type": "string", + "readOnly": true + }, + "numberOfFailedSecurityChecks": { + "format": "int32", + "description": "The number of failed security checks.", + "type": "integer", + "readOnly": true + } + } + }, + "VulnerabilityAssessmentScanError": { + "description": "Properties of a vulnerability assessment scan error.", + "type": "object", + "properties": { + "code": { + "description": "The error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "The error message.", + "type": "string", + "readOnly": true + } + } + }, + "SecurityAlertPolicyProperties": { + "description": "Properties of a security alert policy.", + "required": [ + "state" + ], + "type": "object", + "properties": { + "state": { + "description": "Specifies the state of the policy, whether it is enabled or disabled or a policy has not been applied yet on the specific Sql pool.", + "enum": [ + "New", + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "SecurityAlertPolicyState", + "modelAsString": false + } + }, + "disabledAlerts": { + "description": "Specifies an array of alerts that are disabled. Allowed values are: Sql_Injection, Sql_Injection_Vulnerability, Access_Anomaly, Data_Exfiltration, Unsafe_Action", + "type": "array", + "items": { + "type": "string" + } + }, + "emailAddresses": { + "description": "Specifies an array of e-mail addresses to which the alert is sent.", + "type": "array", + "items": { + "type": "string" + } + }, + "emailAccountAdmins": { + "description": "Specifies that the alert is sent to the account administrators.", + "type": "boolean" + }, + "storageEndpoint": { + "description": "Specifies the blob storage endpoint (e.g. https://MyAccount.blob.core.windows.net). This blob storage will hold all Threat Detection audit logs.", + "type": "string" + }, + "storageAccountAccessKey": { + "description": "Specifies the identifier key of the Threat Detection audit storage account.", + "type": "string" + }, + "retentionDays": { + "format": "int32", + "description": "Specifies the number of days to keep in the Threat Detection audit logs.", + "type": "integer" + }, + "creationTime": { + "format": "date-time", + "description": "Specifies the UTC creation time of the policy.", + "type": "string", + "readOnly": true + } + } + }, + "SqlPoolSecurityAlertPolicy": { + "description": "A Sql pool security alert policy.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/SecurityAlertPolicyProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "ListSqlPoolSecurityAlertPolicies": { + "description": "A list of SQL pool security alert policies.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/SqlPoolSecurityAlertPolicy" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "SqlPoolVulnerabilityAssessmentRuleBaselineProperties": { + "description": "Properties of a Sql pool vulnerability assessment rule baseline.", + "required": [ + "baselineResults" + ], + "type": "object", + "properties": { + "baselineResults": { + "description": "The rule baseline result", + "type": "array", + "items": { + "$ref": "#/definitions/SqlPoolVulnerabilityAssessmentRuleBaselineItem" + } + } + } + }, + "SqlPoolVulnerabilityAssessmentRuleBaselineItem": { + "description": "Properties for an Sql pool vulnerability assessment rule baseline's result.", + "required": [ + "result" + ], + "type": "object", + "properties": { + "result": { + "description": "The rule baseline result", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "SqlPoolVulnerabilityAssessmentRuleBaseline": { + "description": "A Sql pool vulnerability assessment rule baseline.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/SqlPoolVulnerabilityAssessmentRuleBaselineProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "SqlPoolVulnerabilityAssessmentScanExportProperties": { + "description": "Properties of the export operation's result.", + "type": "object", + "properties": { + "exportedReportLocation": { + "description": "Location of the exported report (e.g. https://myStorage.blob.core.windows.net/VaScans/scans/serverName/databaseName/scan_scanId.xlsx).", + "type": "string", + "readOnly": true + } + } + }, + "SqlPoolVulnerabilityAssessmentScansExport": { + "description": "A Sql pool Vulnerability Assessment scan export resource.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/SqlPoolVulnerabilityAssessmentScanExportProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "ResourceMoveDefinition": { + "description": "Contains the information necessary to perform a resource move (rename).", + "required": [ + "id" + ], + "type": "object", + "properties": { + "id": { + "description": "The target ID for the resource", + "type": "string" + } + } + }, + "CreateSqlPoolRestorePointDefinition": { + "description": "Contains the information necessary to perform a create Sql pool restore point operation.", + "required": [ + "restorePointLabel" + ], + "type": "object", + "properties": { + "restorePointLabel": { + "description": "The restore point label to apply", + "type": "string" + } + } + }, + "WorkloadGroupProperties": { + "description": "Workload group definition. For more information look at sys.workload_management_workload_groups (DMV).", + "required": [ + "minResourcePercent", + "maxResourcePercent", + "minResourcePercentPerRequest" + ], + "type": "object", + "properties": { + "minResourcePercent": { + "format": "int32", + "description": "The workload group minimum percentage resource.", + "type": "integer" + }, + "maxResourcePercent": { + "format": "int32", + "description": "The workload group cap percentage resource.", + "type": "integer" + }, + "minResourcePercentPerRequest": { + "format": "double", + "description": "The workload group request minimum grant percentage.", + "type": "number" + }, + "maxResourcePercentPerRequest": { + "format": "double", + "description": "The workload group request maximum grant percentage.", + "type": "number" + }, + "importance": { + "description": "The workload group importance level.", + "type": "string" + }, + "queryExecutionTimeout": { + "format": "int32", + "description": "The workload group query execution timeout.", + "type": "integer" + } + } + }, + "WorkloadGroup": { + "description": "Workload group operations for a sql pool", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/WorkloadGroupProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "WorkloadGroupListResult": { + "description": "A list of workload groups.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/WorkloadGroup" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "WorkloadClassifierProperties": { + "description": "Workload classifier definition. For more information look at sys.workload_management_workload_classifiers (DMV).", + "required": [ + "memberName" + ], + "type": "object", + "properties": { + "memberName": { + "description": "The workload classifier member name.", + "type": "string" + }, + "label": { + "description": "The workload classifier label.", + "type": "string" + }, + "context": { + "description": "The workload classifier context.", + "type": "string" + }, + "startTime": { + "description": "The workload classifier start time for classification.", + "type": "string" + }, + "endTime": { + "description": "The workload classifier end time for classification.", + "type": "string" + }, + "importance": { + "description": "The workload classifier importance.", + "type": "string" + } + } + }, + "WorkloadClassifier": { + "description": "Workload classifier operations for a data warehouse", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/WorkloadClassifierProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "WorkloadClassifierListResult": { + "description": "A list of workload classifiers for a workload group.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/WorkloadClassifier" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "DataMaskingPolicyProperties": { + "properties": { + "dataMaskingState": { + "type": "string", + "description": "The state of the data masking policy.", + "enum": [ + "Disabled", + "Enabled" + ], + "x-ms-enum": { + "modelAsString": false, + "name": "DataMaskingState" + } + }, + "exemptPrincipals": { + "type": "string", + "description": "The list of the exempt principals. Specifies the semicolon-separated list of database users for which the data masking policy does not apply. The specified users receive data results without masking for all of the database queries." + }, + "applicationPrincipals": { + "type": "string", + "description": "The list of the application principals. This is a legacy parameter and is no longer used.", + "readOnly": true + }, + "maskingLevel": { + "type": "string", + "description": "The masking level. This is a legacy parameter and is no longer used.", + "readOnly": true + } + }, + "required": [ + "dataMaskingState" + ], + "description": "The properties of a database data masking policy." + }, + "DataMaskingPolicy": { + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DataMaskingPolicyProperties", + "description": "The properties of the data masking policy." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the data masking policy." + }, + "kind": { + "type": "string", + "readOnly": true, + "description": "The kind of data masking policy. Metadata, used for Azure portal." + }, + "managedBy": { + "type": "string", + "readOnly": true, + "description": "Fully qualified resource ID of the sql pool" + } + } + }, + "ExtendedSqlPoolBlobAuditingPolicy": { + "description": "An extended Sql pool blob auditing policy.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ExtendedSqlPoolBlobAuditingPolicyProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "ExtendedSqlPoolBlobAuditingPolicyProperties": { + "description": "Properties of an extended Sql pool blob auditing policy.", + "required": [ + "state" + ], + "type": "object", + "properties": { + "predicateExpression": { + "description": "Specifies condition of where clause when creating an audit.", + "type": "string" + }, + "state": { + "description": "Specifies the state of the policy. If state is Enabled, storageEndpoint or isAzureMonitorTargetEnabled are required.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "BlobAuditingPolicyState", + "modelAsString": false + } + }, + "storageEndpoint": { + "description": "Specifies the blob storage endpoint (e.g. https://MyAccount.blob.core.windows.net). If state is Enabled, storageEndpoint or isAzureMonitorTargetEnabled is required.", + "type": "string" + }, + "storageAccountAccessKey": { + "description": "Specifies the identifier key of the auditing storage account. \r\nIf state is Enabled and storageEndpoint is specified, not specifying the storageAccountAccessKey will use SQL server system-assigned managed identity to access the storage.\r\nPrerequisites for using managed identity authentication:\r\n1. Assign SQL Server a system-assigned managed identity in Azure Active Directory (AAD).\r\n2. Grant SQL Server identity access to the storage account by adding 'Storage Blob Data Contributor' RBAC role to the server identity.\r\nFor more information, see [Auditing to storage using Managed Identity authentication](https://go.microsoft.com/fwlink/?linkid=2114355)", + "type": "string", + "x-ms-mutability": [ + "create", + "update" + ] + }, + "retentionDays": { + "format": "int32", + "description": "Specifies the number of days to keep in the audit logs in the storage account.", + "type": "integer" + }, + "auditActionsAndGroups": { + "description": "Specifies the Actions-Groups and Actions to audit.\r\n\r\nThe recommended set of action groups to use is the following combination - this will audit all the queries and stored procedures executed against the database, as well as successful and failed logins:\r\n\r\nBATCH_COMPLETED_GROUP,\r\nSUCCESSFUL_DATABASE_AUTHENTICATION_GROUP,\r\nFAILED_DATABASE_AUTHENTICATION_GROUP.\r\n\r\nThis above combination is also the set that is configured by default when enabling auditing from the Azure portal.\r\n\r\nThe supported action groups to audit are (note: choose only specific groups that cover your auditing needs. Using unnecessary groups could lead to very large quantities of audit records):\r\n\r\nAPPLICATION_ROLE_CHANGE_PASSWORD_GROUP\r\nBACKUP_RESTORE_GROUP\r\nDATABASE_LOGOUT_GROUP\r\nDATABASE_OBJECT_CHANGE_GROUP\r\nDATABASE_OBJECT_OWNERSHIP_CHANGE_GROUP\r\nDATABASE_OBJECT_PERMISSION_CHANGE_GROUP\r\nDATABASE_OPERATION_GROUP\r\nDATABASE_PERMISSION_CHANGE_GROUP\r\nDATABASE_PRINCIPAL_CHANGE_GROUP\r\nDATABASE_PRINCIPAL_IMPERSONATION_GROUP\r\nDATABASE_ROLE_MEMBER_CHANGE_GROUP\r\nFAILED_DATABASE_AUTHENTICATION_GROUP\r\nSCHEMA_OBJECT_ACCESS_GROUP\r\nSCHEMA_OBJECT_CHANGE_GROUP\r\nSCHEMA_OBJECT_OWNERSHIP_CHANGE_GROUP\r\nSCHEMA_OBJECT_PERMISSION_CHANGE_GROUP\r\nSUCCESSFUL_DATABASE_AUTHENTICATION_GROUP\r\nUSER_CHANGE_PASSWORD_GROUP\r\nBATCH_STARTED_GROUP\r\nBATCH_COMPLETED_GROUP\r\n\r\nThese are groups that cover all sql statements and stored procedures executed against the database, and should not be used in combination with other groups as this will result in duplicate audit logs.\r\n\r\nFor more information, see [Database-Level Audit Action Groups](https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-action-groups).\r\n\r\nFor Database auditing policy, specific Actions can also be specified (note that Actions cannot be specified for Server auditing policy). The supported actions to audit are:\r\nSELECT\r\nUPDATE\r\nINSERT\r\nDELETE\r\nEXECUTE\r\nRECEIVE\r\nREFERENCES\r\n\r\nThe general form for defining an action to be audited is:\r\n{action} ON {object} BY {principal}\r\n\r\nNote that in the above format can refer to an object like a table, view, or stored procedure, or an entire database or schema. For the latter cases, the forms DATABASE::{db_name} and SCHEMA::{schema_name} are used, respectively.\r\n\r\nFor example:\r\nSELECT on dbo.myTable by public\r\nSELECT on DATABASE::myDatabase by public\r\nSELECT on SCHEMA::mySchema by public\r\n\r\nFor more information, see [Database-Level Audit Actions](https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-actions)", + "type": "array", + "items": { + "type": "string" + } + }, + "storageAccountSubscriptionId": { + "format": "uuid", + "description": "Specifies the blob storage subscription Id.", + "type": "string" + }, + "isStorageSecondaryKeyInUse": { + "description": "Specifies whether storageAccountAccessKey value is the storage's secondary key.", + "type": "boolean" + }, + "isAzureMonitorTargetEnabled": { + "description": "Specifies whether audit events are sent to Azure Monitor. \r\nIn order to send the events to Azure Monitor, specify 'state' as 'Enabled' and 'isAzureMonitorTargetEnabled' as true.\r\n\r\nWhen using REST API to configure auditing, Diagnostic Settings with 'SQLSecurityAuditEvents' diagnostic logs category on the database should be also created.\r\nNote that for server level audit you should use the 'master' database as {databaseName}.\r\n\r\nDiagnostic Settings URI format:\r\nPUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/providers/microsoft.insights/diagnosticSettings/{settingsName}?api-version=2017-05-01-preview\r\n\r\nFor more information, see [Diagnostic Settings REST API](https://go.microsoft.com/fwlink/?linkid=2033207)\r\nor [Diagnostic Settings PowerShell](https://go.microsoft.com/fwlink/?linkid=2033043)\r\n", + "type": "boolean" + }, + "queueDelayMs": { + "format": "int32", + "description": "Specifies the amount of time in milliseconds that can elapse before audit actions are forced to be processed.\r\nThe default minimum value is 1000 (1 second). The maximum is 2,147,483,647.", + "type": "integer" + } + } + }, + "ExtendedSqlPoolBlobAuditingPolicyListResult": { + "description": "A list of sql pool extended auditing settings.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/ExtendedSqlPoolBlobAuditingPolicy" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "DataMaskingRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DataMaskingRuleProperties", + "description": "The properties of the resource." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the data masking rule." + }, + "kind": { + "type": "string", + "readOnly": true, + "description": "The kind of Data Masking Rule. Metadata, used for Azure portal." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ], + "description": "Represents a Sql pool data masking rule." + }, + "DataMaskingRuleProperties": { + "properties": { + "id": { + "type": "string", + "description": "The rule Id.", + "readOnly": true + }, + "aliasName": { + "type": "string", + "description": "The alias name. This is a legacy parameter and is no longer used." + }, + "ruleState": { + "type": "string", + "description": "The rule state. Used to delete a rule. To delete an existing rule, specify the schemaName, tableName, columnName, maskingFunction, and specify ruleState as disabled. However, if the rule doesn't already exist, the rule will be created with ruleState set to enabled, regardless of the provided value of ruleState.", + "enum": [ + "Disabled", + "Enabled" + ], + "x-ms-enum": { + "modelAsString": false, + "name": "DataMaskingRuleState" + } + }, + "schemaName": { + "type": "string", + "description": "The schema name on which the data masking rule is applied." + }, + "tableName": { + "type": "string", + "description": "The table name on which the data masking rule is applied." + }, + "columnName": { + "type": "string", + "description": "The column name on which the data masking rule is applied." + }, + "maskingFunction": { + "type": "string", + "description": "The masking function that is used for the data masking rule.", + "enum": [ + "Default", + "CCN", + "Email", + "Number", + "SSN", + "Text" + ], + "x-ms-enum": { + "modelAsString": false, + "name": "DataMaskingFunction" + } + }, + "numberFrom": { + "type": "string", + "description": "The numberFrom property of the masking rule. Required if maskingFunction is set to Number, otherwise this parameter will be ignored." + }, + "numberTo": { + "type": "string", + "description": "The numberTo property of the data masking rule. Required if maskingFunction is set to Number, otherwise this parameter will be ignored." + }, + "prefixSize": { + "type": "string", + "description": "If maskingFunction is set to Text, the number of characters to show unmasked in the beginning of the string. Otherwise, this parameter will be ignored." + }, + "suffixSize": { + "type": "string", + "description": "If maskingFunction is set to Text, the number of characters to show unmasked at the end of the string. Otherwise, this parameter will be ignored." + }, + "replacementString": { + "type": "string", + "description": "If maskingFunction is set to Text, the character to use for masking the unexposed part of the string. Otherwise, this parameter will be ignored." + } + }, + "required": [ + "maskingFunction", + "schemaName", + "tableName", + "columnName" + ], + "description": "The properties of a Sql pool data masking rule." + }, + "DataMaskingRuleListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DataMaskingRule" + }, + "description": "The list of Sql pool data masking rules." + } + }, + "description": "The response to a list data masking rules request." + }, + "SqlPoolBlobAuditingPolicyListResult": { + "description": "A list of Sql pool auditing settings.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/SqlPoolBlobAuditingPolicy" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "SensitivityLabelUpdateProperties": { + "description": "Properties of an operation executed on a sensitivity label.", + "required": [ + "op", + "schema", + "table", + "column" + ], + "type": "object", + "properties": { + "op": { + "enum": [ + "set", + "remove" + ], + "type": "string", + "x-ms-enum": { + "name": "SensitivityLabelUpdateKind", + "modelAsString": false + } + }, + "schema": { + "description": "Schema name of the column to update.", + "type": "string" + }, + "table": { + "description": "Table name of the column to update.", + "type": "string" + }, + "column": { + "description": "Column name to update.", + "type": "string" + }, + "sensitivityLabel": { + "$ref": "#/definitions/SensitivityLabel", + "description": "The sensitivity label information to apply on a column." + } + } + }, + "SensitivityLabelUpdate": { + "description": "A sensitivity label update operation.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/SensitivityLabelUpdateProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "SensitivityLabelUpdateList": { + "description": "A list of sensitivity label update operations.", + "type": "object", + "properties": { + "operations": { + "type": "array", + "items": { + "$ref": "#/definitions/SensitivityLabelUpdate" + } + } + } + }, + "RecommendedSensitivityLabelUpdateProperties": { + "description": "Properties of an operation executed on a recommended sensitivity label.", + "required": [ + "op", + "schema", + "table", + "column" + ], + "type": "object", + "properties": { + "op": { + "enum": [ + "enable", + "disable" + ], + "type": "string", + "x-ms-enum": { + "name": "RecommendedSensitivityLabelUpdateKind", + "modelAsString": false + } + }, + "schema": { + "description": "Schema name of the column to update.", + "type": "string" + }, + "table": { + "description": "Table name of the column to update.", + "type": "string" + }, + "column": { + "description": "Column name to update.", + "type": "string" + } + } + }, + "RecommendedSensitivityLabelUpdate": { + "description": "A recommended sensitivity label update operation.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/RecommendedSensitivityLabelUpdateProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "RecommendedSensitivityLabelUpdateList": { + "description": "A list of recommended sensitivity label update operations.", + "type": "object", + "properties": { + "operations": { + "type": "array", + "items": { + "$ref": "#/definitions/RecommendedSensitivityLabelUpdate" + } + } + } + } + }, + "parameters": { + "DataMaskingPolicyNameParameter": { + "name": "dataMaskingPolicyName", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "Default" + ], + "x-ms-enum": { + "modelAsString": false, + "name": "DataMaskingPolicyName" + }, + "description": "The name of the data masking policy for which the masking rule applies.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/sqlServer.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/sqlServer.json new file mode 100644 index 000000000000..60f229838952 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/sqlServer.json @@ -0,0 +1,1789 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-04-01-preview", + "title": "SynapseManagementClient", + "description": "The Azure Synapse SQL management API provides a RESTful set of web APIs that interact with Azure Synapse SQL services to manage your resources. The API enables users to create, retrieve, update, and delete SqlServers sub resources." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "securityDefinitions": { + "azure_auth": { + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "type": "oauth2", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow" + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/auditingSettings/{blobAuditingPolicyName}": { + "get": { + "operationId": "WorkspaceManagedSqlServerBlobAuditingPolicies_Get", + "summary": "Get server's blob auditing policy.", + "description": "Get a workspace managed sql server's blob auditing policy.", + "tags": [ + "WorkspaceManagedSqlServer, BlobAuditing" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "name": "blobAuditingPolicyName", + "in": "path", + "description": "The name of the blob auditing policy.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "BlobAuditingPolicyName", + "modelAsString": true + } + } + ], + "responses": { + "200": { + "description": "Successfully retrieved workspace managed sql server's blob auditing policy.", + "schema": { + "$ref": "#/definitions/ServerBlobAuditingPolicy" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 409 UnsupportedWorkspaceType - Unsupported operation for the workspace type.\n\n * 500 InternalServerError - Something went wrong." + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get blob auditing setting of workspace managed sql Server": { + "$ref": "./examples/GetWorkspaceManagedSqlServerBlobAuditingSettings.json" + } + } + }, + "put": { + "operationId": "WorkspaceManagedSqlServerBlobAuditingPolicies_CreateOrUpdate", + "summary": "Create or Update server's blob auditing policy.", + "description": "Create or Update a workspace managed sql server's blob auditing policy.", + "tags": [ + "WorkspaceManagedSqlServer, BlobAuditing" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "name": "blobAuditingPolicyName", + "in": "path", + "description": "The name of the blob auditing policy.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "BlobAuditingPolicyName", + "modelAsString": true + } + }, + { + "name": "parameters", + "in": "body", + "description": "Properties of extended blob auditing policy.", + "required": true, + "schema": { + "$ref": "#/definitions/ServerBlobAuditingPolicy" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated the auditing settings.", + "schema": { + "$ref": "#/definitions/ServerBlobAuditingPolicy" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidServerBlobAuditingPolicyCreateRequest - The create server blob auditing policy request does not exist or has no properties object.\n\n * 400 InvalidBlobAuditActionsAndGroups - Invalid audit actions or action groups.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 BlobAuditingInvalidStorageAccountCredentials - The provided storage account or access key is not valid.\n\n * 400 InvalidBlobAuditActionsAndGroups - Invalid audit actions or action groups.\n\n * 400 InsufficientDiskSpaceForAuditing - Insufficient disk space to save auditing metadata in the database\n\n 400 InvalidBlobAuditActions - Invalid audit action.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 409 UnsupportedWorkspaceType - Unsupported operation for the workspace type.\n\n * 500 InternalServerError - Something went wrong." + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create or update blob auditing policy of workspace managed Sql Server with minimal parameters": { + "$ref": "./examples/CreateWorkspaceManagedSqlServerBlobAuditingSettingsWithMinParameters.json" + }, + "Create or update blob auditing policy of workspace SQL Server with all parameters": { + "$ref": "./examples/CreateWorkspaceManagedSqlServerBlobAuditingSettingsWithAllParameters.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/auditingSettings": { + "get": { + "operationId": "WorkspaceManagedSqlServerBlobAuditingPolicies_ListByWorkspace", + "summary": "List workspace server's blob auditing policies.", + "description": "List workspace managed sql server's blob auditing policies.", + "tags": [ + "WorkspaceManagedSqlServer, BlobAuditing" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved auditing settings.", + "schema": { + "$ref": "#/definitions/ServerBlobAuditingPolicyListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 409 UnsupportedWorkspaceType - Unsupported operation for the workspace type.\n\n * 500 InternalServerError - Something went wrong." + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get blob auditing policy of workspace manged sql Server": { + "$ref": "./examples/ListWorkspaceManagedSqlServerBlobAuditingSettings.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/extendedAuditingSettings/{blobAuditingPolicyName}": { + "get": { + "operationId": "WorkspaceManagedSqlServerExtendedBlobAuditingPolicies_Get", + "summary": "Get server's extended blob auditing policy.", + "description": "Get a workspace SQL server's extended blob auditing policy.", + "tags": [ + "WorkspaceManagedSqlServer, BlobAuditing" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "name": "blobAuditingPolicyName", + "in": "path", + "description": "The name of the blob auditing policy.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "BlobAuditingPolicyName", + "modelAsString": true + } + } + ], + "responses": { + "200": { + "description": "Successfully retrieved extended auditing settings.", + "schema": { + "$ref": "#/definitions/ExtendedServerBlobAuditingPolicy" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 409 UnsupportedWorkspaceType - Unsupported operation for the workspace type.\n\n * 500 InternalServerError - Something went wrong." + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get workspace managed sql servers' extended blob auditing settings": { + "$ref": "./examples/GetWorkspaceManagedSqlExtendedServerBlobAuditingSettings.json" + } + } + }, + "put": { + "operationId": "WorkspaceManagedSqlServerExtendedBlobAuditingPolicies_CreateOrUpdate", + "summary": "Create or Update server's extended blob auditing policy.", + "description": "Create or Update a workspace managed sql server's extended blob auditing policy.", + "tags": [ + "WorkspaceManagedSqlServer, BlobAuditing" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "name": "blobAuditingPolicyName", + "in": "path", + "description": "The name of the blob auditing policy.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "BlobAuditingPolicyName", + "modelAsString": true + } + }, + { + "name": "parameters", + "in": "body", + "description": "Properties of extended blob auditing policy.", + "required": true, + "schema": { + "$ref": "#/definitions/ExtendedServerBlobAuditingPolicy" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated the extended auditing settings.", + "schema": { + "$ref": "#/definitions/ExtendedServerBlobAuditingPolicy" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidServerBlobAuditingPolicyCreateRequest - The create server blob auditing policy request does not exist or has no properties object.\n\n * 400 InvalidBlobAuditActionsAndGroups - Invalid audit actions or action groups.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 BlobAuditingPredicateExpressionEmpty - Invalid parameter 'predicateExpression', value can not be empty.\n\n * 400 BlobAuditingInvalidStorageAccountCredentials - The provided storage account or access key is not valid.\n\n * 400 InvalidBlobAuditActionsAndGroups - Invalid audit actions or action groups.\n\n * 400 InsufficientDiskSpaceForAuditing - Insufficient disk space to save auditing metadata in the database\n\n * 400 InvalidBlobAuditActions - Invalid audit action\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 409 ServerBlobAuditingPolicyInProgress - Set server blob auditing is already in progress.\n\n * 409 UnsupportedWorkspaceType - Unsupported operation for the workspace type.\n\n * 500 InternalServerError - Something went wrong." + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create or update workspace managed sql server's extended blob auditing policy of with minimal parameters": { + "$ref": "./examples/CreateWorkspaceManagedSqlServerExetendedBlobAuditingSettingsWithMinParameters.json" + }, + "Create or update workspace managed sql server's extended blob auditing policy of with all parameters": { + "$ref": "./examples/CreateWorkspaceManagedSqlServerExtendedBlobAuditingSettingsWithAllParameters.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/extendedAuditingSettings": { + "get": { + "operationId": "WorkspaceManagedSqlServerExtendedBlobAuditingPolicies_ListByWorkspace", + "summary": "List server's extended blob auditing policies.", + "description": "List workspace managed sql server's extended blob auditing policies.", + "tags": [ + "WorkspaceManagedSqlServer, BlobAuditing" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved extended auditing settings.", + "schema": { + "$ref": "#/definitions/ExtendedServerBlobAuditingPolicyListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 409 UnsupportedWorkspaceType - Unsupported operation for the workspace type.n\n * 500 InternalServerError - Something went wrong." + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get workspace managed sql server's extended blob auditing settings": { + "$ref": "./examples/ListWorkspaceManagedSqlServerExtendedBlobAuditingSettings.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/securityAlertPolicies/{securityAlertPolicyName}": { + "get": { + "operationId": "WorkspaceManagedSqlServerSecurityAlertPolicy_Get", + "summary": "Get server's security alert policy.", + "description": "Get a workspace managed sql server's security alert policy.", + "tags": [ + "WorkspaceManagedSqlServer, SecurityAlertPolicies" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "name": "securityAlertPolicyName", + "in": "path", + "description": "The name of the security alert policy.", + "required": true, + "type": "string", + "enum": [ + "Default" + ], + "x-ms-enum": { + "name": "SecurityAlertPolicyName", + "modelAsString": true + } + } + ], + "responses": { + "200": { + "description": "Successfully retrieved security alert policy.", + "schema": { + "$ref": "#/definitions/ServerSecurityAlertPolicy" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 SecurityAlertPoliciesInvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 SecurityAlertPoliciesInvalidStorageAccountCredentials - The provided storage account access key is not valid.\n\n * 400 InvalidServerSecurityAlertPolicyCreateRequest - The create server Threat Detection security alert policy request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 400 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 409 ServerSecurityAlertPolicyInProgress - Set server security alert policy is already in progress\n\n * 409 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 409 UnsupportedWorkspaceType - Unsupported operation for the workspace type.n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later.\n\n * 500 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 500 GetServerSecurityAlertPolicyFailed - Failed to get Threat Detection settings\n\n * 500 InternalServerError - Something went wrong." + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get workspace managed sql Server's security alert policy": { + "$ref": "./examples/GetWorkspaceManagedSqlServerSecurityAlertPolicy.json" + } + } + }, + "put": { + "operationId": "WorkspaceManagedSqlServerSecurityAlertPolicy_CreateOrUpdate", + "summary": "Create or Update server's threat detection policy.", + "description": "Create or Update a workspace managed sql server's threat detection policy.", + "tags": [ + "WorkspaceManagedSqlServer, SecurityAlertPolicies" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "name": "securityAlertPolicyName", + "in": "path", + "description": "The name of the security alert policy.", + "required": true, + "type": "string", + "enum": [ + "Default" + ], + "x-ms-enum": { + "name": "SecurityAlertPolicyName", + "modelAsString": true + } + }, + { + "name": "parameters", + "in": "body", + "description": "The workspace managed sql server security alert policy.", + "required": true, + "schema": { + "$ref": "#/definitions/ServerSecurityAlertPolicy" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated threat detection policy.", + "schema": { + "$ref": "#/definitions/ServerSecurityAlertPolicy" + } + }, + "202": { + "description": "Accepted." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 SecurityAlertPoliciesInvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 SecurityAlertPoliciesInvalidStorageAccountCredentials - The provided storage account access key is not valid.\n\n * 400 InvalidServerSecurityAlertPolicyCreateRequest - The create server Threat Detection security alert policy request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 400 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 409 ServerSecurityAlertPolicyInProgress - Set server security alert policy is already in progress\n\n * 409 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 409 UnsupportedWorkspaceType - Unsupported operation for the workspace type.n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later.\n\n * 500 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 500 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 500 InternalServerError - Something went wrong." + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update a workspace managed sql server's threat detection policy with minimal parameters": { + "$ref": "./examples/WorkspaceManagedSqlServerSecurityAlertCreateWithMinParameters.json" + }, + "Update a workspace managed sql server's threat detection policy with all parameters": { + "$ref": "./examples/WorkspaceManagedSqlServerSecurityAlertWithAllParameters.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/securityAlertPolicies": { + "get": { + "operationId": "WorkspaceManagedSqlServerSecurityAlertPolicy_List", + "summary": "Get server's threat detection policies.", + "description": "Get workspace managed sql server's threat detection policies.", + "tags": [ + "WorkspaceManagedSqlServer, SecurityAlertPolicies" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved threat detection policies.", + "schema": { + "$ref": "#/definitions/ServerSecurityAlertPolicyListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 SecurityAlertPoliciesInvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 SecurityAlertPoliciesInvalidStorageAccountCredentials - The provided storage account access key is not valid.\n\n * 400 InvalidServerSecurityAlertPolicyCreateRequest - The create server Threat Detection security alert policy request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 400 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 409 ServerSecurityAlertPolicyInProgress - Set server security alert policy is already in progress\n\n * 409 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 409 UnsupportedWorkspaceType - Unsupported operation for the workspace type.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later.\n\n * 500 UpsertServerSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 500 GetServerSecurityAlertPolicyFailed - Failed to get Threat Detection settings\n\n * 500 InternalServerError - Something went wrong." + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get workspace managed sql server's security alert policy": { + "$ref": "./examples/ListWorkspaceManagedSqlServerSecurityAlertPolicies.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/vulnerabilityAssessments/{vulnerabilityAssessmentName}": { + "get": { + "operationId": "WorkspaceManagedSqlServerVulnerabilityAssessments_Get", + "summary": "Get server's vulnerability assessment.", + "description": "Get workspace managed sql server's vulnerability assessment.", + "tags": [ + "WorkspaceManagedSqlServer, ServerVulnerabilityAssessments" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "name": "vulnerabilityAssessmentName", + "in": "path", + "description": "The name of the vulnerability assessment.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentName", + "modelAsString": true + } + } + ], + "responses": { + "200": { + "description": "Successfully retrieved vulnerability assessment.", + "schema": { + "$ref": "#/definitions/ServerVulnerabilityAssessment" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 409 UnsupportedWorkspaceType - Unsupported operation for the workspace type.\n\n * 500 InternalServerError - Something went wrong." + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get workspace managed sql Server's vulnerability assessment": { + "$ref": "./examples/GetWorkspaceManagedSqlServerVulnerabilityAssessment.json" + } + } + }, + "put": { + "operationId": "WorkspaceManagedSqlServerVulnerabilityAssessments_CreateOrUpdate", + "summary": "Create or Update server's vulnerability assessment.", + "description": "Create or Update workspace managed sql server's vulnerability assessment.", + "tags": [ + "WorkspaceManagedSqlServer, ServerVulnerabilityAssessments" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "name": "vulnerabilityAssessmentName", + "in": "path", + "description": "The name of the vulnerability assessment.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentName", + "modelAsString": true + } + }, + { + "name": "parameters", + "in": "body", + "description": "Properties for vulnerability assessment.", + "required": true, + "schema": { + "$ref": "#/definitions/ServerVulnerabilityAssessment" + } + } + ], + "responses": { + "200": { + "description": "Successfully created vulnerability assessment.", + "schema": { + "$ref": "#/definitions/ServerVulnerabilityAssessment" + } + }, + "201": { + "description": "Successfully created the vulnerability assessment.", + "schema": { + "$ref": "#/definitions/ServerVulnerabilityAssessment" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 409 UnsupportedWorkspaceType - Unsupported operation for the workspace type.\n\n * 500 InternalServerError - Something went wrong." + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Create or Update a workspace managed sql server's vulnerability assessment with minimal parameters, when storageContainerSasKey is specified": { + "$ref": "./examples/PutWorkspaceMangedSqlServerVulnerabilityAssessmentCreateContainerSasKeyMin.json" + }, + "Create or Update a workspace managed sql server's vulnerability assessment with minimal parameters, when storageAccountAccessKey is specified": { + "$ref": "./examples/PutWorkspaceMangedSqlServerVulnerabilityAssessmentCreateStorageAccessKeyMin.json" + }, + "Create or Update a workspace managed sql server's vulnerability assessment with all parameters": { + "$ref": "./examples/PutWorkspaceManagedSqlServerVulnerabilityAssessmentWithAllParameters.json" + } + } + }, + "delete": { + "operationId": "WorkspaceManagedSqlServerVulnerabilityAssessments_Delete", + "summary": "Remove server's vulnerability assessment.", + "description": "Remove workspace managed sql server's vulnerability assessment.", + "tags": [ + "WorkspaceManagedSqlServer, ServerVulnerabilityAssessments" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "name": "vulnerabilityAssessmentName", + "in": "path", + "description": "The name of the vulnerability assessment.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentName", + "modelAsString": true + } + } + ], + "responses": { + "200": { + "description": "Successfully removed vulnerability assessment." + }, + "204": { + "description": "Specified vulnerability assessment policy does not exists." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 409 UnsupportedWorkspaceType - Unsupported operation for the workspace type.\n\n * 500 InternalServerError - Something went wrong." + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Remove workspace managed sql Server's vulnerability assessment": { + "$ref": "./examples/DeleteWorkspaceManagedSqlServerVulnerabilityAssessment.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/vulnerabilityAssessments": { + "get": { + "operationId": "WorkspaceManagedSqlServerVulnerabilityAssessments_List", + "summary": "Lists the vulnerability assessment policies associated with a server.", + "description": "Lists the vulnerability assessment policies associated with a workspace managed sql server.", + "tags": [ + "WorkspaceManagedSqlServer, ServerVulnerabilityAssessments" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved vulnerability assessment policies.", + "schema": { + "$ref": "#/definitions/ServerVulnerabilityAssessmentListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 409 UnsupportedWorkspaceType - Unsupported operation for the workspace type.\n\n * 500 InternalServerError - Something went wrong." + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get workspace managed sql Server's vulnerability assessment policies": { + "$ref": "./examples/ListWorkspaceManagedSqlServerVulnerabilityAssessmentPolicies.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/encryptionProtector/{encryptionProtectorName}": { + "get": { + "operationId": "WorkspaceManagedSqlServerEncryptionProtector_Get", + "summary": "Get workspace server's encryption protector.", + "description": "Get workspace managed sql server's encryption protector.", + "tags": [ + "WorkspaceManagedSqlServer, ServerEncryptionProtector" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "name": "encryptionProtectorName", + "in": "path", + "description": "The name of the encryption protector.", + "required": true, + "type": "string", + "enum": [ + "current" + ], + "x-ms-enum": { + "name": "EncryptionProtectorName", + "modelAsString": true + } + } + ], + "responses": { + "200": { + "description": "Successfully retrieved encryption protector.", + "schema": { + "$ref": "#/definitions/EncryptionProtector" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidKeyName - An invalid value was given for the server key name.\n\n * 400 InvalidKeyType - The create server key type is not supported.\n\n * 400 InvalidUpsertKeyType - Service Managed type keys are managed by Azure SQL. This key type does not support create or update by the user.\n\n * 400 InvalidKeyUpsertRequest - The create server key request does not exist or has no properties object.\n\n * 400 InvalidEncryptionProtectorName - The encryption protector key name is not supported.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 409 UnsupportedWorkspaceType - Unsupported operation for the workspace type.\n\n * 500 InternalServerError - Something went wrong.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get workspace managed sql Server's encryption protector": { + "$ref": "./examples/GetWorkspaceManagedSqlServerEncryptionProtector.json" + } + } + }, + "put": { + "operationId": "WorkspaceManagedSqlServerEncryptionProtector_CreateOrUpdate", + "summary": "Updates workspace server's encryption protector.", + "description": "Updates workspace managed sql server's encryption protector.", + "tags": [ + "WorkspaceManagedSqlServer, ServerEncryptionProtector" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "name": "encryptionProtectorName", + "in": "path", + "description": "The name of the encryption protector.", + "required": true, + "type": "string", + "enum": [ + "current" + ], + "x-ms-enum": { + "name": "EncryptionProtectorName", + "modelAsString": true + } + }, + { + "name": "parameters", + "in": "body", + "description": "The requested encryption protector resource state.", + "required": true, + "schema": { + "$ref": "#/definitions/EncryptionProtector" + } + } + ], + "responses": { + "200": { + "description": "Successfully retrieved encryption protector.", + "schema": { + "$ref": "#/definitions/EncryptionProtector" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidKeyName - An invalid value was given for the server key name.\n\n * 400 InvalidKeyType - The create server key type is not supported.\n\n * 400 InvalidUpsertKeyType - Service Managed type keys are managed by Azure SQL. This key type does not support create or update by the user.\n\n * 400 InvalidKeyUpsertRequest - The create server key request does not exist or has no properties object.\n\n * 400 InvalidEncryptionProtectorName - The encryption protector key name is not supported.\n\n * 400 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 and Key Type is RSA.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 ServerKeyNotFound - The requested server key was not found on the current subscription.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 UnsupportedWorkspaceType - Unsupported operation for the workspace type.\n\n * 500 InternalServerError - Something went wrong.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update the encryption protector to key vault": { + "$ref": "./examples/WorkspaceManagedSqlServerEncryptionProtectorCreateOrUpdateKeyVault.json" + }, + "Update the encryption protector to service managed": { + "$ref": "./examples/WorkspaceManagedSqlServerEncryptionProtectorCreateOrUpdateServiceManaged.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/encryptionProtector": { + "get": { + "operationId": "WorkspaceManagedSqlServerEncryptionProtector_List", + "summary": "Get list of encryption protectors for the server.", + "description": "Get list of encryption protectors for workspace managed sql server.", + "tags": [ + "WorkspaceManagedSqlServer, ServerEncryptionProtector" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved encryption protectors.", + "schema": { + "$ref": "#/definitions/EncryptionProtectorListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidKeyName - An invalid value was given for the server key name.\n\n * 400 InvalidKeyType - The create server key type is not supported.\n\n * 400 InvalidUpsertKeyType - Service Managed type keys are managed by Azure SQL. This key type does not support create or update by the user.\n\n * 400 InvalidKeyUpsertRequest - The create server key request does not exist or has no properties object.\n\n * 400 InvalidEncryptionProtectorName - The encryption protector key name is not supported.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found.\n\n * 409 UnsupportedWorkspaceType - Unsupported operation for the workspace type.\n\n * 500 InternalServerError - Something went wrong." + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get workspace managed sql Server's encryption protectors": { + "$ref": "./examples/GetWorkspaceManagedSqlServerEncryptionProtectorList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/encryptionProtector/{encryptionProtectorName}/revalidate": { + "post": { + "operationId": "WorkspaceManagedSqlServerEncryptionProtector_Revalidate", + "summary": "Revalidates server's existing encryption protector.", + "description": "Revalidates workspace managed sql server's existing encryption protector.", + "tags": [ + "WorkspaceManagedSqlServer, ServerEncryptionProtector" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "name": "encryptionProtectorName", + "in": "path", + "description": "The name of the encryption protector.", + "required": true, + "type": "string", + "enum": [ + "current" + ], + "x-ms-enum": { + "name": "EncryptionProtectorName", + "modelAsString": true + } + } + ], + "consumes": [], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "Successfully revalidated the encryption protector." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidKeyName - An invalid value was given for the server key name.\n\n * 400 InvalidKeyType - The create server key type is not supported.\n\n * 400 InvalidUpsertKeyType - Service Managed type keys are managed by Azure SQL. This key type does not support create or update by the user.\n\n * 400 InvalidKeyUpsertRequest - The create server key request does not exist or has no properties object.\n\n * 400 InvalidEncryptionProtectorName - The encryption protector key name is not supported.\n\n * 400 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 and Key Type is RSA.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 ServerKeyNotFound - The requested server key was not found on the current subscription.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 UnsupportedWorkspaceType - Unsupported operation for the workspace type.\n\n * 500 InternalServerError - Something went wrong.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information ." + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Revalidates the encryption protector": { + "$ref": "./examples/WorkspaceManagedSqlServerEncryptionProtectorRevalidate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlUsages": { + "get": { + "tags": [ + "WorkspaceManagedSqlServer, sqlUsages" + ], + "operationId": "WorkspaceManagedSqlServerUsages_List", + "summary": "Get list of usages metric for the server.", + "description": "Get list of server usages metric for workspace managed sql server.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ServerUsageListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 409 UnsupportedWorkspaceType - Unsupported operation for the workspace type.\n\n * 500 InternalServerError - Something went wrong." + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List usages metric for the workspace managed sql server": { + "$ref": "./examples/ListWorkspaceManagedSqlServerUsages.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/recoverableSqlPools": { + "get": { + "tags": [ + "WorkspaceManagedSqlServer", + "recoverableSqlPools" + ], + "operationId": "WorkspaceManagedSqlServerRecoverableSqlPools_List", + "summary": "Get list of recoverable sql pools for the server.", + "description": "Get list of recoverable sql pools for workspace managed sql server.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoverableSqlPoolListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 409 UnsupportedWorkspaceType - Unsupported operation for the workspace type.\n\n * 500 InternalServerError - Something went wrong." + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List recoverable sql pools for the server": { + "$ref": "./examples/ListWorkspaceManagedSqlServerRecoverableSqlPool.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/recoverableSqlPools/{sqlPoolName}": { + "get": { + "tags": [ + "WorkspaceManagedSqlServer", + "recoverableSqlPools" + ], + "operationId": "WorkspaceManagedSqlServerRecoverableSqlPools_Get", + "summary": "Get recoverable sql pools for the server.", + "description": "Get recoverable sql pools for workspace managed sql server.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "name": "sqlPoolName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the sql pool" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoverableSqlPool" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 409 UnsupportedWorkspaceType - Unsupported operation for the workspace type.\n\n * 500 InternalServerError - Something went wrong." + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get recoverable sql pools for the server": { + "$ref": "./examples/GetWorkspaceManagedSqlServerRecoverableSqlPool.json" + } + } + } + } + }, + "definitions": { + "ServerBlobAuditingPolicyProperties": { + "description": "Properties of a server blob auditing policy.", + "required": [ + "state" + ], + "type": "object", + "properties": { + "state": { + "description": "Specifies the state of the policy. If state is Enabled, storageEndpoint or isAzureMonitorTargetEnabled are required.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "BlobAuditingPolicyState", + "modelAsString": false + } + }, + "storageEndpoint": { + "description": "Specifies the blob storage endpoint (e.g. https://MyAccount.blob.core.windows.net). If state is Enabled, storageEndpoint or isAzureMonitorTargetEnabled is required.", + "type": "string" + }, + "storageAccountAccessKey": { + "description": "Specifies the identifier key of the auditing storage account. \r\nIf state is Enabled and storageEndpoint is specified, not specifying the storageAccountAccessKey will use SQL server system-assigned managed identity to access the storage.\r\nPrerequisites for using managed identity authentication:\r\n1. Assign SQL Server a system-assigned managed identity in Azure Active Directory (AAD).\r\n2. Grant SQL Server identity access to the storage account by adding 'Storage Blob Data Contributor' RBAC role to the server identity.\r\nFor more information, see [Auditing to storage using Managed Identity authentication](https://go.microsoft.com/fwlink/?linkid=2114355)", + "type": "string", + "x-ms-mutability": [ + "create", + "update" + ] + }, + "retentionDays": { + "format": "int32", + "description": "Specifies the number of days to keep in the audit logs in the storage account.", + "type": "integer" + }, + "auditActionsAndGroups": { + "description": "Specifies the Actions-Groups and Actions to audit.\r\n\r\nThe recommended set of action groups to use is the following combination - this will audit all the queries and stored procedures executed against the database, as well as successful and failed logins:\r\n\r\nBATCH_COMPLETED_GROUP,\r\nSUCCESSFUL_DATABASE_AUTHENTICATION_GROUP,\r\nFAILED_DATABASE_AUTHENTICATION_GROUP.\r\n\r\nThis above combination is also the set that is configured by default when enabling auditing from the Azure portal.\r\n\r\nThe supported action groups to audit are (note: choose only specific groups that cover your auditing needs. Using unnecessary groups could lead to very large quantities of audit records):\r\n\r\nAPPLICATION_ROLE_CHANGE_PASSWORD_GROUP\r\nBACKUP_RESTORE_GROUP\r\nDATABASE_LOGOUT_GROUP\r\nDATABASE_OBJECT_CHANGE_GROUP\r\nDATABASE_OBJECT_OWNERSHIP_CHANGE_GROUP\r\nDATABASE_OBJECT_PERMISSION_CHANGE_GROUP\r\nDATABASE_OPERATION_GROUP\r\nDATABASE_PERMISSION_CHANGE_GROUP\r\nDATABASE_PRINCIPAL_CHANGE_GROUP\r\nDATABASE_PRINCIPAL_IMPERSONATION_GROUP\r\nDATABASE_ROLE_MEMBER_CHANGE_GROUP\r\nFAILED_DATABASE_AUTHENTICATION_GROUP\r\nSCHEMA_OBJECT_ACCESS_GROUP\r\nSCHEMA_OBJECT_CHANGE_GROUP\r\nSCHEMA_OBJECT_OWNERSHIP_CHANGE_GROUP\r\nSCHEMA_OBJECT_PERMISSION_CHANGE_GROUP\r\nSUCCESSFUL_DATABASE_AUTHENTICATION_GROUP\r\nUSER_CHANGE_PASSWORD_GROUP\r\nBATCH_STARTED_GROUP\r\nBATCH_COMPLETED_GROUP\r\n\r\nThese are groups that cover all sql statements and stored procedures executed against the database, and should not be used in combination with other groups as this will result in duplicate audit logs.\r\n\r\nFor more information, see [Database-Level Audit Action Groups](https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-action-groups).\r\n\r\nFor Database auditing policy, specific Actions can also be specified (note that Actions cannot be specified for Server auditing policy). The supported actions to audit are:\r\nSELECT\r\nUPDATE\r\nINSERT\r\nDELETE\r\nEXECUTE\r\nRECEIVE\r\nREFERENCES\r\n\r\nThe general form for defining an action to be audited is:\r\n{action} ON {object} BY {principal}\r\n\r\nNote that in the above format can refer to an object like a table, view, or stored procedure, or an entire database or schema. For the latter cases, the forms DATABASE::{db_name} and SCHEMA::{schema_name} are used, respectively.\r\n\r\nFor example:\r\nSELECT on dbo.myTable by public\r\nSELECT on DATABASE::myDatabase by public\r\nSELECT on SCHEMA::mySchema by public\r\n\r\nFor more information, see [Database-Level Audit Actions](https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-actions)", + "type": "array", + "items": { + "type": "string" + } + }, + "storageAccountSubscriptionId": { + "format": "uuid", + "description": "Specifies the blob storage subscription Id.", + "type": "string" + }, + "isStorageSecondaryKeyInUse": { + "description": "Specifies whether storageAccountAccessKey value is the storage's secondary key.", + "type": "boolean" + }, + "isAzureMonitorTargetEnabled": { + "description": "Specifies whether audit events are sent to Azure Monitor. \r\nIn order to send the events to Azure Monitor, specify 'state' as 'Enabled' and 'isAzureMonitorTargetEnabled' as true.\r\n\r\nWhen using REST API to configure auditing, Diagnostic Settings with 'SQLSecurityAuditEvents' diagnostic logs category on the database should be also created.\r\nNote that for server level audit you should use the 'master' database as {databaseName}.\r\n\r\nDiagnostic Settings URI format:\r\nPUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/providers/microsoft.insights/diagnosticSettings/{settingsName}?api-version=2017-05-01-preview\r\n\r\nFor more information, see [Diagnostic Settings REST API](https://go.microsoft.com/fwlink/?linkid=2033207)\r\nor [Diagnostic Settings PowerShell](https://go.microsoft.com/fwlink/?linkid=2033043)\r\n", + "type": "boolean" + }, + "queueDelayMs": { + "format": "int32", + "description": "Specifies the amount of time in milliseconds that can elapse before audit actions are forced to be processed.\r\nThe default minimum value is 1000 (1 second). The maximum is 2,147,483,647.", + "type": "integer" + } + } + }, + "ServerBlobAuditingPolicy": { + "description": "A server blob auditing policy.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ServerBlobAuditingPolicyProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "ServerBlobAuditingPolicyListResult": { + "description": "A list of server auditing settings.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/ServerBlobAuditingPolicy" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "ExtendedServerBlobAuditingPolicyProperties": { + "description": "Properties of an extended server blob auditing policy.", + "required": [ + "state" + ], + "type": "object", + "properties": { + "predicateExpression": { + "description": "Specifies condition of where clause when creating an audit.", + "type": "string" + }, + "state": { + "description": "Specifies the state of the policy. If state is Enabled, storageEndpoint or isAzureMonitorTargetEnabled are required.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "BlobAuditingPolicyState", + "modelAsString": false + } + }, + "storageEndpoint": { + "description": "Specifies the blob storage endpoint (e.g. https://MyAccount.blob.core.windows.net). If state is Enabled, storageEndpoint or isAzureMonitorTargetEnabled is required.", + "type": "string" + }, + "storageAccountAccessKey": { + "description": "Specifies the identifier key of the auditing storage account. \r\nIf state is Enabled and storageEndpoint is specified, not specifying the storageAccountAccessKey will use SQL server system-assigned managed identity to access the storage.\r\nPrerequisites for using managed identity authentication:\r\n1. Assign SQL Server a system-assigned managed identity in Azure Active Directory (AAD).\r\n2. Grant SQL Server identity access to the storage account by adding 'Storage Blob Data Contributor' RBAC role to the server identity.\r\nFor more information, see [Auditing to storage using Managed Identity authentication](https://go.microsoft.com/fwlink/?linkid=2114355)", + "type": "string", + "x-ms-mutability": [ + "create", + "update" + ] + }, + "retentionDays": { + "format": "int32", + "description": "Specifies the number of days to keep in the audit logs in the storage account.", + "type": "integer" + }, + "auditActionsAndGroups": { + "description": "Specifies the Actions-Groups and Actions to audit.\r\n\r\nThe recommended set of action groups to use is the following combination - this will audit all the queries and stored procedures executed against the database, as well as successful and failed logins:\r\n\r\nBATCH_COMPLETED_GROUP,\r\nSUCCESSFUL_DATABASE_AUTHENTICATION_GROUP,\r\nFAILED_DATABASE_AUTHENTICATION_GROUP.\r\n\r\nThis above combination is also the set that is configured by default when enabling auditing from the Azure portal.\r\n\r\nThe supported action groups to audit are (note: choose only specific groups that cover your auditing needs. Using unnecessary groups could lead to very large quantities of audit records):\r\n\r\nAPPLICATION_ROLE_CHANGE_PASSWORD_GROUP\r\nBACKUP_RESTORE_GROUP\r\nDATABASE_LOGOUT_GROUP\r\nDATABASE_OBJECT_CHANGE_GROUP\r\nDATABASE_OBJECT_OWNERSHIP_CHANGE_GROUP\r\nDATABASE_OBJECT_PERMISSION_CHANGE_GROUP\r\nDATABASE_OPERATION_GROUP\r\nDATABASE_PERMISSION_CHANGE_GROUP\r\nDATABASE_PRINCIPAL_CHANGE_GROUP\r\nDATABASE_PRINCIPAL_IMPERSONATION_GROUP\r\nDATABASE_ROLE_MEMBER_CHANGE_GROUP\r\nFAILED_DATABASE_AUTHENTICATION_GROUP\r\nSCHEMA_OBJECT_ACCESS_GROUP\r\nSCHEMA_OBJECT_CHANGE_GROUP\r\nSCHEMA_OBJECT_OWNERSHIP_CHANGE_GROUP\r\nSCHEMA_OBJECT_PERMISSION_CHANGE_GROUP\r\nSUCCESSFUL_DATABASE_AUTHENTICATION_GROUP\r\nUSER_CHANGE_PASSWORD_GROUP\r\nBATCH_STARTED_GROUP\r\nBATCH_COMPLETED_GROUP\r\n\r\nThese are groups that cover all sql statements and stored procedures executed against the database, and should not be used in combination with other groups as this will result in duplicate audit logs.\r\n\r\nFor more information, see [Database-Level Audit Action Groups](https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-action-groups).\r\n\r\nFor Database auditing policy, specific Actions can also be specified (note that Actions cannot be specified for Server auditing policy). The supported actions to audit are:\r\nSELECT\r\nUPDATE\r\nINSERT\r\nDELETE\r\nEXECUTE\r\nRECEIVE\r\nREFERENCES\r\n\r\nThe general form for defining an action to be audited is:\r\n{action} ON {object} BY {principal}\r\n\r\nNote that in the above format can refer to an object like a table, view, or stored procedure, or an entire database or schema. For the latter cases, the forms DATABASE::{db_name} and SCHEMA::{schema_name} are used, respectively.\r\n\r\nFor example:\r\nSELECT on dbo.myTable by public\r\nSELECT on DATABASE::myDatabase by public\r\nSELECT on SCHEMA::mySchema by public\r\n\r\nFor more information, see [Database-Level Audit Actions](https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-actions)", + "type": "array", + "items": { + "type": "string" + } + }, + "storageAccountSubscriptionId": { + "format": "uuid", + "description": "Specifies the blob storage subscription Id.", + "type": "string" + }, + "isStorageSecondaryKeyInUse": { + "description": "Specifies whether storageAccountAccessKey value is the storage's secondary key.", + "type": "boolean" + }, + "isAzureMonitorTargetEnabled": { + "description": "Specifies whether audit events are sent to Azure Monitor. \r\nIn order to send the events to Azure Monitor, specify 'state' as 'Enabled' and 'isAzureMonitorTargetEnabled' as true.\r\n\r\nWhen using REST API to configure auditing, Diagnostic Settings with 'SQLSecurityAuditEvents' diagnostic logs category on the database should be also created.\r\nNote that for server level audit you should use the 'master' database as {databaseName}.\r\n\r\nDiagnostic Settings URI format:\r\nPUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/providers/microsoft.insights/diagnosticSettings/{settingsName}?api-version=2017-05-01-preview\r\n\r\nFor more information, see [Diagnostic Settings REST API](https://go.microsoft.com/fwlink/?linkid=2033207)\r\nor [Diagnostic Settings PowerShell](https://go.microsoft.com/fwlink/?linkid=2033043)\r\n", + "type": "boolean" + }, + "queueDelayMs": { + "format": "int32", + "description": "Specifies the amount of time in milliseconds that can elapse before audit actions are forced to be processed.\r\nThe default minimum value is 1000 (1 second). The maximum is 2,147,483,647.", + "type": "integer" + } + } + }, + "ExtendedServerBlobAuditingPolicy": { + "description": "An extended server blob auditing policy.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ExtendedServerBlobAuditingPolicyProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "ExtendedServerBlobAuditingPolicyListResult": { + "description": "A list of server extended auditing settings.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/ExtendedServerBlobAuditingPolicy" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "ServerSecurityAlertPolicyProperties": { + "description": "Properties of a security alert policy.", + "required": [ + "state" + ], + "type": "object", + "properties": { + "state": { + "description": "Specifies the state of the policy, whether it is enabled or disabled or a policy has not been applied yet on the specific server", + "enum": [ + "New", + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "SecurityAlertPolicyState", + "modelAsString": false + } + }, + "disabledAlerts": { + "description": "Specifies an array of alerts that are disabled. Allowed values are: Sql_Injection, Sql_Injection_Vulnerability, Access_Anomaly, Data_Exfiltration, Unsafe_Action", + "type": "array", + "items": { + "type": "string" + } + }, + "emailAddresses": { + "description": "Specifies an array of e-mail addresses to which the alert is sent.", + "type": "array", + "items": { + "type": "string" + } + }, + "emailAccountAdmins": { + "description": "Specifies that the alert is sent to the account administrators.", + "type": "boolean" + }, + "storageEndpoint": { + "description": "Specifies the blob storage endpoint (e.g. https://MyAccount.blob.core.windows.net). This blob storage will hold all Threat Detection audit logs.", + "type": "string" + }, + "storageAccountAccessKey": { + "description": "Specifies the identifier key of the Threat Detection audit storage account.", + "type": "string" + }, + "retentionDays": { + "format": "int32", + "description": "Specifies the number of days to keep in the Threat Detection audit logs.", + "type": "integer" + }, + "creationTime": { + "format": "date-time", + "description": "Specifies the UTC creation time of the policy.", + "type": "string", + "readOnly": true + } + } + }, + "ServerSecurityAlertPolicy": { + "description": "Workspace managed Sql server security alert policy.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ServerSecurityAlertPolicyProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "ServerSecurityAlertPolicyListResult": { + "description": "A list of the workspace managed sql server's security alert policies.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/ServerSecurityAlertPolicy" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "ServerVulnerabilityAssessmentProperties": { + "description": "Properties of a server Vulnerability Assessment.", + "required": [ + "storageContainerPath" + ], + "type": "object", + "properties": { + "storageContainerPath": { + "description": "A blob storage container path to hold the scan results (e.g. https://myStorage.blob.core.windows.net/VaScans/).", + "type": "string" + }, + "storageContainerSasKey": { + "description": "A shared access signature (SAS Key) that has read and write access to the blob container specified in 'storageContainerPath' parameter. If 'storageAccountAccessKey' isn't specified, StorageContainerSasKey is required.", + "type": "string", + "x-ms-mutability": [ + "create", + "update" + ] + }, + "storageAccountAccessKey": { + "description": "Specifies the identifier key of the storage account for vulnerability assessment scan results. If 'StorageContainerSasKey' isn't specified, storageAccountAccessKey is required.", + "type": "string", + "x-ms-mutability": [ + "create", + "update" + ] + }, + "recurringScans": { + "$ref": "#/definitions/VulnerabilityAssessmentRecurringScansProperties", + "description": "The recurring scans settings" + } + } + }, + "VulnerabilityAssessmentRecurringScansProperties": { + "description": "Properties of a Vulnerability Assessment recurring scans.", + "type": "object", + "properties": { + "isEnabled": { + "description": "Recurring scans state.", + "type": "boolean" + }, + "emailSubscriptionAdmins": { + "description": "Specifies that the schedule scan notification will be is sent to the subscription administrators.", + "default": true, + "type": "boolean" + }, + "emails": { + "description": "Specifies an array of e-mail addresses to which the scan notification is sent.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "ServerVulnerabilityAssessment": { + "description": "A server vulnerability assessment.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ServerVulnerabilityAssessmentProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "ServerVulnerabilityAssessmentListResult": { + "description": "A list of the server's vulnerability assessments.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/ServerVulnerabilityAssessment" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "EncryptionProtectorListResult": { + "description": "A list of server encryption protectors.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/EncryptionProtector" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "EncryptionProtectorProperties": { + "description": "Properties for an encryption protector execution.", + "required": [ + "serverKeyType" + ], + "type": "object", + "properties": { + "subregion": { + "description": "Subregion of the encryption protector.", + "type": "string", + "readOnly": true + }, + "serverKeyName": { + "description": "The name of the server key.", + "type": "string" + }, + "serverKeyType": { + "description": "The encryption protector type like 'ServiceManaged', 'AzureKeyVault'.", + "enum": [ + "ServiceManaged", + "AzureKeyVault" + ], + "type": "string", + "x-ms-enum": { + "name": "ServerKeyType", + "modelAsString": true + } + }, + "uri": { + "description": "The URI of the server key.", + "type": "string", + "readOnly": true + }, + "thumbprint": { + "description": "Thumbprint of the server key.", + "type": "string", + "readOnly": true + } + } + }, + "EncryptionProtector": { + "description": "The server encryption protector.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "kind": { + "description": "Kind of encryption protector. This is metadata used for the Azure portal experience.", + "type": "string", + "readOnly": true + }, + "location": { + "description": "Resource location.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/EncryptionProtectorProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "ServerUsage": { + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "Name of the server usage metric." + }, + "resourceName": { + "readOnly": true, + "type": "string", + "description": "The name of the resource." + }, + "displayName": { + "readOnly": true, + "type": "string", + "description": "The metric display name." + }, + "currentValue": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The current value of the metric." + }, + "limit": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The current limit of the metric." + }, + "unit": { + "readOnly": true, + "type": "string", + "description": "The units of the metric." + }, + "nextResetTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The next reset time for the metric (ISO8601 format)." + } + }, + "description": "Represents server metrics." + }, + "ServerUsageListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ServerUsage" + }, + "description": "The list of server metrics for the server." + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + }, + "required": [ + "value" + ], + "description": "Represents the response to a list server metrics request." + }, + "RecoverableSqlPoolProperties": { + "type": "object", + "properties": { + "edition": { + "readOnly": true, + "type": "string", + "description": "The edition of the database" + }, + "serviceLevelObjective": { + "readOnly": true, + "type": "string", + "description": "The service level objective name of the database" + }, + "elasticPoolName": { + "readOnly": true, + "type": "string", + "description": "The elastic pool name of the database" + }, + "lastAvailableBackupDate": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The last available backup date of the database (ISO8601 format)" + } + }, + "description": "The properties of a recoverable sql pool" + }, + "RecoverableSqlPool": { + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/RecoverableSqlPoolProperties", + "description": "The properties of a recoverable sql pool", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ], + "description": "A recoverable sql pool" + }, + "RecoverableSqlPoolListResult": { + "description": "The response to a list recoverable sql pools request", + "type": "object", + "properties": { + "value": { + "description": "A list of recoverable sql pool", + "type": "array", + "items": { + "$ref": "#/definitions/RecoverableSqlPool" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/workspace.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/workspace.json new file mode 100644 index 000000000000..8fc048b8b94e --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-04-01-preview/workspace.json @@ -0,0 +1,1432 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-04-01-preview", + "title": "SynapseManagementClient", + "description": "Azure Synapse Analytics APIs" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "securityDefinitions": { + "azure_auth": { + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "type": "oauth2", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow" + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces": { + "get": { + "operationId": "Workspaces_ListByResourceGroup", + "description": "Returns a list of workspaces in a resource group", + "tags": [ + "Workspaces" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/WorkspaceInfoListResult" + }, + "description": "" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List workspaces in resource group": { + "$ref": "./examples/ListWorkspacesInResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}": { + "get": { + "operationId": "Workspaces_Get", + "description": "Gets a workspace", + "tags": [ + "Workspaces" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/workspaceNameParameter" + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/Workspace" + }, + "description": "" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get a workspace": { + "$ref": "./examples/GetWorkspace.json" + } + } + }, + "patch": { + "operationId": "Workspaces_Update", + "description": "Updates a workspace", + "tags": [ + "Workspaces" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/workspaceNameParameter" + }, + { + "schema": { + "$ref": "#/definitions/WorkspacePatchInfo" + }, + "in": "body", + "name": "workspacePatchInfo", + "required": true, + "description": "Workspace patch request properties" + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/Workspace" + }, + "description": "" + }, + "201": { + "schema": { + "$ref": "#/definitions/Workspace" + }, + "description": "" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Update a workspace": { + "$ref": "./examples/UpdateWorkspace.json" + } + } + }, + "put": { + "operationId": "Workspaces_CreateOrUpdate", + "description": "Creates or updates a workspace", + "tags": [ + "Workspaces" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/workspaceNameParameter" + }, + { + "description": "Workspace create or update request properties", + "schema": { + "$ref": "#/definitions/Workspace" + }, + "in": "body", + "name": "workspaceInfo", + "required": true + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/Workspace" + }, + "description": "" + }, + "201": { + "schema": { + "$ref": "#/definitions/Workspace" + }, + "description": "" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Create or update a workspace": { + "$ref": "./examples/CreateOrUpdateWorkspace.json" + } + } + }, + "delete": { + "operationId": "Workspaces_Delete", + "description": "Deletes a workspace", + "tags": [ + "Workspaces" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/workspaceNameParameter" + } + ], + "responses": { + "200": { + "schema": { + "type": "object" + }, + "description": "OK" + }, + "202": { + "schema": { + "type": "object" + }, + "description": "" + }, + "204": { + "description": "" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete a workspace": { + "$ref": "./examples/DeleteWorkspace.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Synapse/workspaces": { + "get": { + "operationId": "Workspaces_List", + "description": "Returns a list of workspaces in a subscription", + "tags": [ + "Workspaces" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/WorkspaceInfoListResult" + }, + "description": "" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List workspaces in subscription": { + "$ref": "./examples/ListWorkspacesInSubscription.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/administrators/activeDirectory": { + "get": { + "operationId": "WorkspaceAadAdmins_Get", + "description": "Gets a workspace active directory admin", + "tags": [ + "Workspaces" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/workspaceNameParameter" + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/WorkspaceAadAdminInfo" + }, + "description": "OK" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get workspace active directory admin": { + "$ref": "./examples/GetWorkspaceAadAdmin.json" + } + } + }, + "put": { + "operationId": "WorkspaceAadAdmins_CreateOrUpdate", + "description": "Creates or updates a workspace active directory admin", + "tags": [ + "Workspaces" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/workspaceNameParameter" + }, + { + "description": "Workspace active directory administrator properties", + "schema": { + "$ref": "#/definitions/WorkspaceAadAdminInfo" + }, + "in": "body", + "name": "aadAdminInfo", + "required": true + } + ], + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/WorkspaceAadAdminInfo" + } + }, + "202": { + "description": "", + "schema": { + "$ref": "#/definitions/WorkspaceAadAdminInfo" + } + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Create or update workspace active directory admin": { + "$ref": "./examples/CreateOrUpdateWorkspaceAadAdmin.json" + } + } + }, + "delete": { + "operationId": "WorkspaceAadAdmins_Delete", + "description": "Deletes a workspace active directory admin", + "tags": [ + "Workspaces" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/workspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "" + }, + "204": { + "description": "Accepted" + }, + "202": { + "description": "" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete workspace active directory admin": { + "$ref": "./examples/DeleteWorkspaceAadAdmin.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlAdministrators/activeDirectory": { + "get": { + "operationId": "WorkspaceSqlAadAdmins_Get", + "description": "Gets a workspace SQL active directory admin", + "tags": [ + "Workspaces" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/workspaceNameParameter" + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/WorkspaceAadAdminInfo" + }, + "description": "OK" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get workspace active directory admin": { + "$ref": "./examples/GetWorkspaceAadAdmin.json" + } + } + }, + "put": { + "operationId": "WorkspaceSqlAadAdmins_CreateOrUpdate", + "description": "Creates or updates a workspace SQL active directory admin", + "tags": [ + "Workspaces" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/workspaceNameParameter" + }, + { + "description": "Workspace active directory administrator properties", + "schema": { + "$ref": "#/definitions/WorkspaceAadAdminInfo" + }, + "in": "body", + "name": "aadAdminInfo", + "required": true + } + ], + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/WorkspaceAadAdminInfo" + } + }, + "202": { + "description": "", + "schema": { + "$ref": "#/definitions/WorkspaceAadAdminInfo" + } + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Create or update workspace active directory admin": { + "$ref": "./examples/CreateOrUpdateWorkspaceAadAdmin.json" + } + } + }, + "delete": { + "operationId": "WorkspaceSqlAadAdmins_Delete", + "description": "Deletes a workspace SQL active directory admin", + "tags": [ + "Workspaces" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/workspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "" + }, + "204": { + "description": "Accepted" + }, + "202": { + "description": "" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete workspace active directory admin": { + "$ref": "./examples/DeleteWorkspaceAadAdmin.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/managedIdentitySqlControlSettings/default": { + "get": { + "operationId": "WorkspaceManagedIdentitySqlControlSettings_Get", + "summary": "Get Managed Identity Sql Control Settings", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/workspaceNameParameter" + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/ManagedIdentitySqlControlSettingsModel" + }, + "description": "OK" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "Error" + } + }, + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get managed identity sql control settings": { + "$ref": "./examples/GetManagedIdentitySqlControlSettings.json" + } + } + }, + "put": { + "operationId": "WorkspaceManagedIdentitySqlControlSettings_CreateOrUpdate", + "summary": "Create or update Managed Identity Sql Control Settings", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "description": "Managed Identity Sql Control Settings", + "schema": { + "$ref": "#/definitions/ManagedIdentitySqlControlSettingsModel" + }, + "in": "body", + "name": "managedIdentitySqlControlSettings", + "required": true + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/ManagedIdentitySqlControlSettingsModel" + }, + "description": "OK" + }, + "201": { + "description": "Created" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "Error" + } + }, + "produces": [ + "application/json" + ], + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create or update managed identity sql control settings": { + "$ref": "./examples/CreateOrUpdateManagedIdentitySqlControlSettings.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/restorableDroppedSqlPools/{restorableDroppedSqlPoolId}": { + "get": { + "tags": [ + "RestorableDroppedSqlPools" + ], + "operationId": "RestorableDroppedSqlPools_Get", + "description": "Gets a deleted sql pool that can be restored", + "x-ms-examples": { + "Get a restorable dropped Sql pool": { + "$ref": "./examples/RestorableDroppedSqlPoolGet.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/workspaceNameParameter" + }, + { + "name": "restorableDroppedSqlPoolId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the deleted Sql Pool in the form of sqlPoolName,deletionTimeInFileTimeFormat" + } + ], + "consumes": [], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RestorableDroppedSqlPool" + } + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "Error" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/restorableDroppedSqlPools": { + "get": { + "tags": [ + "RestorableDroppedSqlPools" + ], + "operationId": "RestorableDroppedSqlPools_ListByWorkspace", + "description": "Gets a list of deleted Sql pools that can be restored", + "x-ms-examples": { + "Get list of restorable dropped Sql pools": { + "$ref": "./examples/RestorableDroppedSqlpoolList.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/workspaceNameParameter" + } + ], + "consumes": [], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RestorableDroppedSqlPoolListResult" + } + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + }, + "description": "Error" + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + } + }, + "definitions": { + "AadAdminProperties": { + "description": "Workspace active directory administrator properties", + "type": "object", + "properties": { + "tenantId": { + "description": "Tenant ID of the workspace active directory administrator", + "type": "string" + }, + "login": { + "description": "Login of the workspace active directory administrator", + "type": "string" + }, + "administratorType": { + "description": "Workspace active directory administrator type", + "type": "string" + }, + "sid": { + "description": "Object ID of the workspace active directory administrator", + "type": "string" + } + } + }, + "WorkspaceInfoListResult": { + "description": "List of workspaces", + "type": "object", + "properties": { + "nextLink": { + "description": "Link to the next page of results", + "type": "string" + }, + "value": { + "description": "List of workspaces", + "type": "array", + "items": { + "$ref": "#/definitions/Workspace" + } + } + } + }, + "DataLakeStorageAccountDetails": { + "description": "Details of the data lake storage account associated with the workspace", + "type": "object", + "properties": { + "accountUrl": { + "description": "Account URL", + "type": "string" + }, + "filesystem": { + "description": "Filesystem name", + "type": "string" + } + } + }, + "EncryptionDetails": { + "description": "Details of the encryption associated with the workspace", + "type": "object", + "properties": { + "doubleEncryptionEnabled": { + "description": "Double Encryption enabled", + "type": "boolean", + "readOnly": true + }, + "cmk": { + "description": "Customer Managed Key Details", + "$ref": "#/definitions/CustomerManagedKeyDetails" + } + } + }, + "CustomerManagedKeyDetails": { + "description": "Details of the customer managed key associated with the workspace", + "type": "object", + "properties": { + "status": { + "description": "The customer managed key status on the workspace", + "type": "string", + "readOnly": true + }, + "key": { + "description": "The key object of the workspace", + "$ref": "#/definitions/WorkspaceKeyDetails" + } + } + }, + "WorkspaceKeyDetails": { + "description": "Details of the customer managed key associated with the workspace", + "type": "object", + "properties": { + "name": { + "description": "Workspace Key sub-resource name", + "type": "string" + }, + "keyVaultUrl": { + "description": "Workspace Key sub-resource key vault url", + "type": "string" + } + } + }, + "ManagedIdentity": { + "description": "The workspace managed identity", + "type": "object", + "properties": { + "principalId": { + "description": "The principal ID of the workspace managed identity", + "type": "string", + "readOnly": true + }, + "tenantId": { + "description": "The tenant ID of the workspace managed identity", + "type": "string", + "format": "uuid", + "readOnly": true + }, + "type": { + "description": "The type of managed identity for the workspace", + "enum": [ + "None", + "SystemAssigned" + ], + "type": "string", + "x-ms-enum": { + "name": "ResourceIdentityType", + "modelAsString": false + } + } + } + }, + "VirtualNetworkProfile": { + "description": "Virtual Network Profile", + "type": "object", + "properties": { + "computeSubnetId": { + "description": "Subnet ID used for computes in workspace", + "type": "string" + } + } + }, + "ManagedVirtualNetworkSettings": { + "description": "Managed Virtual Network Settings", + "type": "object", + "properties": { + "preventDataExfiltration": { + "description": "Prevent Data Exfiltration", + "type": "boolean" + }, + "linkedAccessCheckOnTargetResource": { + "description": "Linked Access Check On Target Resource", + "type": "boolean" + }, + "allowedAadTenantIdsForLinking": { + "description": "Allowed Aad Tenant Ids For Linking", + "type": "array", + "items": { + "type": "string", + "description": "Tenant Id" + } + } + } + }, + "WorkspaceRepositoryConfiguration": { + "description": "Git integration settings", + "type": "object", + "properties": { + "type": { + "description": "Type of workspace repositoryID configuration. Example WorkspaceVSTSConfiguration, WorkspaceGitHubConfiguration", + "type": "string" + }, + "hostName": { + "description": "GitHub Enterprise host name. For example: https://github.mydomain.com", + "type": "string" + }, + "accountName": { + "description": "Account name", + "type": "string" + }, + "projectName": { + "description": "VSTS project name", + "type": "string" + }, + "repositoryName": { + "description": "Repository name", + "type": "string" + }, + "collaborationBranch": { + "description": "Collaboration branch", + "type": "string" + }, + "rootFolder": { + "description": "Root folder to use in the repository", + "type": "string" + }, + "lastCommitId": { + "description": "The last commit ID", + "type": "string" + }, + "tenantId": { + "description": "The VSTS tenant ID", + "type": "string", + "format": "uuid" + } + } + }, + "PurviewConfiguration": { + "description": "Purview Configuration", + "type": "object", + "properties": { + "purviewResourceId": { + "description": "Purview Resource ID", + "type": "string" + } + } + }, + "WorkspaceAadAdminInfo": { + "description": "Workspace active directory administrator", + "type": "object", + "x-ms-azure-resource": true, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "description": "Workspace active directory administrator properties", + "$ref": "#/definitions/AadAdminProperties", + "x-ms-client-flatten": true + } + } + }, + "Workspace": { + "description": "A workspace", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/TrackedResource" + } + ], + "properties": { + "properties": { + "description": "Workspace resource properties", + "$ref": "#/definitions/WorkspaceProperties", + "x-ms-client-flatten": true + }, + "identity": { + "description": "Identity of the workspace", + "$ref": "#/definitions/ManagedIdentity" + } + } + }, + "WorkspaceProperties": { + "description": "Workspace properties", + "type": "object", + "properties": { + "defaultDataLakeStorage": { + "description": "Workspace default data lake storage account details", + "$ref": "#/definitions/DataLakeStorageAccountDetails" + }, + "sqlAdministratorLoginPassword": { + "description": "SQL administrator login password", + "type": "string" + }, + "managedResourceGroupName": { + "description": "Workspace managed resource group. The resource group name uniquely identifies the resource group within the user subscriptionId. The resource group name must be no longer than 90 characters long, and must be alphanumeric characters (Char.IsLetterOrDigit()) and '-', '_', '(', ')' and'.'. Note that the name cannot end with '.'", + "type": "string" + }, + "provisioningState": { + "description": "Resource provisioning state", + "type": "string", + "readOnly": true + }, + "sqlAdministratorLogin": { + "description": "Login for workspace SQL active directory administrator", + "type": "string" + }, + "virtualNetworkProfile": { + "description": "Virtual Network profile", + "$ref": "#/definitions/VirtualNetworkProfile" + }, + "connectivityEndpoints": { + "description": "Connectivity endpoints", + "additionalProperties": { + "type": "string" + }, + "type": "object" + }, + "managedVirtualNetwork": { + "description": "Setting this to 'default' will ensure that all compute for this workspace is in a virtual network managed on behalf of the user.", + "type": "string" + }, + "privateEndpointConnections": { + "description": "Private endpoint connections to the workspace", + "type": "array", + "items": { + "$ref": "../../../../common/v1/privateEndpointConnection.json#/definitions/PrivateEndpointConnection" + } + }, + "encryption": { + "description": "The encryption details of the workspace", + "$ref": "#/definitions/EncryptionDetails" + }, + "workspaceUID": { + "description": "The workspace unique identifier", + "type": "string", + "readOnly": true, + "format": "uuid" + }, + "extraProperties": { + "description": "Workspace level configs and feature flags", + "additionalProperties": { + "type": "object" + }, + "type": "object", + "readOnly": true + }, + "managedVirtualNetworkSettings": { + "description": "Managed Virtual Network Settings", + "$ref": "#/definitions/ManagedVirtualNetworkSettings" + }, + "workspaceRepositoryConfiguration": { + "description": "Git integration settings", + "$ref": "#/definitions/WorkspaceRepositoryConfiguration" + }, + "purviewConfiguration": { + "description": "Purview Configuration", + "$ref": "#/definitions/PurviewConfiguration" + }, + "adlaResourceId": { + "description": "The ADLA resource ID.", + "type": "string", + "readOnly": true + }, + "publicNetworkAccess": { + "enum": [ + "Enabled", + "Disabled" + ], + "description": "Enable or Disable public network access to workspace", + "type": "string", + "x-ms-enum": { + "name": "WorkspacePublicNetworkAccess", + "modelAsString": true + } + } + } + }, + "WorkspacePatchInfo": { + "description": "Workspace patch details", + "type": "object", + "properties": { + "tags": { + "description": "Resource tags", + "additionalProperties": { + "type": "string" + }, + "type": "object" + }, + "identity": { + "description": "The identity of the workspace", + "$ref": "#/definitions/ManagedIdentity" + }, + "properties": { + "description": "Workspace patch properties", + "$ref": "#/definitions/WorkspacePatchProperties", + "x-ms-client-flatten": true + } + } + }, + "WorkspacePatchProperties": { + "description": "Workspace patch properties", + "type": "object", + "properties": { + "sqlAdministratorLoginPassword": { + "description": "SQL administrator login password", + "type": "string" + }, + "managedVirtualNetworkSettings": { + "description": "Managed Virtual Network Settings", + "$ref": "#/definitions/ManagedVirtualNetworkSettings" + }, + "workspaceRepositoryConfiguration": { + "description": "Git integration settings", + "$ref": "#/definitions/WorkspaceRepositoryConfiguration" + }, + "purviewConfiguration": { + "description": "Purview Configuration", + "$ref": "#/definitions/PurviewConfiguration" + }, + "provisioningState": { + "description": "Resource provisioning state", + "type": "string", + "readOnly": true + }, + "encryption": { + "description": "The encryption details of the workspace", + "$ref": "#/definitions/EncryptionDetails" + }, + "publicNetworkAccess": { + "enum": [ + "Enabled", + "Disabled" + ], + "description": "Enable or Disable public network access to workspace", + "type": "string", + "x-ms-enum": { + "name": "WorkspacePublicNetworkAccess", + "modelAsString": true + } + } + } + }, + "ManagedIdentitySqlControlSettingsModel": { + "type": "object", + "title": "Managed Identity Sql Control Settings", + "description": "Sql Control Settings for workspace managed identity", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "title": "Managed Identity Sql Control Settings", + "description": "Sql Control Settings for workspace managed identity", + "properties": { + "grantSqlControlToManagedIdentity": { + "type": "object", + "description": "Grant sql control to managed identity", + "properties": { + "desiredState": { + "description": "Desired state", + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + "actualState": { + "description": "Actual state", + "type": "string", + "enum": [ + "Enabling", + "Enabled", + "Disabling", + "Disabled", + "Unknown" + ], + "readOnly": true + } + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "RestorableDroppedSqlPoolProperties": { + "properties": { + "databaseName": { + "readOnly": true, + "type": "string", + "description": "The name of the database" + }, + "edition": { + "readOnly": true, + "type": "string", + "description": "The edition of the database" + }, + "maxSizeBytes": { + "readOnly": true, + "type": "string", + "description": "The max size in bytes of the database" + }, + "serviceLevelObjective": { + "readOnly": true, + "type": "string", + "description": "The service level objective name of the database" + }, + "elasticPoolName": { + "readOnly": true, + "type": "string", + "description": "The elastic pool name of the database" + }, + "creationDate": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The creation date of the database (ISO8601 format)" + }, + "deletionDate": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The deletion date of the database (ISO8601 format)" + }, + "earliestRestoreDate": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The earliest restore date of the database (ISO8601 format)" + } + }, + "description": "The properties of a restorable dropped Sql pool" + }, + "RestorableDroppedSqlPool": { + "properties": { + "location": { + "type": "string", + "readOnly": true, + "description": "The geo-location where the resource lives" + }, + "properties": { + "$ref": "#/definitions/RestorableDroppedSqlPoolProperties", + "description": "The properties of a restorable dropped Sql pool", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ], + "description": "A restorable dropped Sql pool" + }, + "RestorableDroppedSqlPoolListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RestorableDroppedSqlPool" + }, + "description": "A list of restorable dropped Sql pools" + } + }, + "required": [ + "value" + ], + "description": "The response to a list restorable dropped Sql pools request" + } + }, + "parameters": { + "workspaceNameParameter": { + "name": "workspaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the workspace", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/stable/2021-03-01/examples/CreateOrUpdateWorkspace.json b/specification/synapse/resource-manager/Microsoft.Synapse/stable/2021-03-01/examples/CreateOrUpdateWorkspace.json index da22edee3763..4e8327c03f1f 100644 --- a/specification/synapse/resource-manager/Microsoft.Synapse/stable/2021-03-01/examples/CreateOrUpdateWorkspace.json +++ b/specification/synapse/resource-manager/Microsoft.Synapse/stable/2021-03-01/examples/CreateOrUpdateWorkspace.json @@ -44,9 +44,7 @@ } } }, - "networkSettings": { - "publicNetworkAccess": "Enabled" - } + "publicNetworkAccess": "Enabled" }, "location": "East US", "tags": { @@ -118,9 +116,7 @@ } } }, - "networkSettings": { - "publicNetworkAccess": "Enabled" - } + "publicNetworkAccess": "Enabled" }, "tags": { "key": "value" @@ -167,9 +163,7 @@ } } }, - "networkSettings": { - "publicNetworkAccess": "Enabled" - } + "publicNetworkAccess": "Enabled" }, "tags": { "key": "value" diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/stable/2021-03-01/examples/UpdateWorkspace.json b/specification/synapse/resource-manager/Microsoft.Synapse/stable/2021-03-01/examples/UpdateWorkspace.json index 68983e89f03d..396c09533033 100644 --- a/specification/synapse/resource-manager/Microsoft.Synapse/stable/2021-03-01/examples/UpdateWorkspace.json +++ b/specification/synapse/resource-manager/Microsoft.Synapse/stable/2021-03-01/examples/UpdateWorkspace.json @@ -39,7 +39,8 @@ "keyVaultUrl": "https://vault.azure.net/keys/key1" } } - } + }, + "publicNetworkAccess": "Enabled" } } }, @@ -82,7 +83,8 @@ "keyVaultUrl": "https://vault.azure.net/keys/key1" } } - } + }, + "publicNetworkAccess": "Enabled" }, "tags": { "key": "value" @@ -127,7 +129,8 @@ "keyVaultUrl": "https://vault.azure.net/keys/key1" } } - } + }, + "publicNetworkAccess": "Enabled" }, "tags": { "key": "value" diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/stable/2021-03-01/firewallRule.json b/specification/synapse/resource-manager/Microsoft.Synapse/stable/2021-03-01/firewallRule.json index 60cbb774c94b..983de3891b0d 100644 --- a/specification/synapse/resource-manager/Microsoft.Synapse/stable/2021-03-01/firewallRule.json +++ b/specification/synapse/resource-manager/Microsoft.Synapse/stable/2021-03-01/firewallRule.json @@ -318,7 +318,6 @@ "IpFirewallRuleInfo": { "description": "IP firewall rule", "type": "object", - "x-ms-azure-resource": true, "allOf": [ { "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/stable/2021-03-01/sqlPool.json b/specification/synapse/resource-manager/Microsoft.Synapse/stable/2021-03-01/sqlPool.json index c42e83cc8e23..d171a782e9dd 100644 --- a/specification/synapse/resource-manager/Microsoft.Synapse/stable/2021-03-01/sqlPool.json +++ b/specification/synapse/resource-manager/Microsoft.Synapse/stable/2021-03-01/sqlPool.json @@ -5399,8 +5399,7 @@ }, "x-ms-client-flatten": true } - }, - "x-ms-azure-resource": true + } }, "GeoBackupPolicyProperties": { "properties": { diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/stable/2021-03-01/workspace.json b/specification/synapse/resource-manager/Microsoft.Synapse/stable/2021-03-01/workspace.json index 8d059b489ae7..9a9efe073df8 100644 --- a/specification/synapse/resource-manager/Microsoft.Synapse/stable/2021-03-01/workspace.json +++ b/specification/synapse/resource-manager/Microsoft.Synapse/stable/2021-03-01/workspace.json @@ -1095,7 +1095,6 @@ "WorkspaceAadAdminInfo": { "description": "Workspace active directory administrator", "type": "object", - "x-ms-azure-resource": true, "allOf": [ { "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" @@ -1211,9 +1210,17 @@ "type": "string", "readOnly": true }, - "networkSettings": { - "description": "Network Settings", - "$ref": "#/definitions/NetworkSettings" + "publicNetworkAccess": { + "enum": [ + "Enabled", + "Disabled" + ], + "description": "Enable or Disable public network access to workspace", + "type": "string", + "x-ms-enum": { + "name": "WorkspacePublicNetworkAccess", + "modelAsString": true + } } } }, @@ -1268,9 +1275,17 @@ "description": "The encryption details of the workspace", "$ref": "#/definitions/EncryptionDetails" }, - "networkSettings": { - "description": "Network Settings", - "$ref": "#/definitions/NetworkSettings" + "publicNetworkAccess": { + "enum": [ + "Enabled", + "Disabled" + ], + "description": "Enable or Disable public network access to workspace", + "type": "string", + "x-ms-enum": { + "name": "WorkspacePublicNetworkAccess", + "modelAsString": true + } } } }, @@ -1401,24 +1416,6 @@ "value" ], "description": "The response to a list restorable dropped Sql pools request" - }, - "NetworkSettings": { - "description": "Network Settings", - "type": "object", - "properties": { - "publicNetworkAccess": { - "enum": [ - "Enabled", - "Disabled" - ], - "description": "Enable or Disable pubic network access to workspace", - "type": "string", - "x-ms-enum": { - "name": "WorkspacePublicNetworkAccess", - "modelAsString": true - } - } - } } }, "parameters": { diff --git a/specification/synapse/resource-manager/readme.azureresourceschema.md b/specification/synapse/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 1e7a4f6b877f..000000000000 --- a/specification/synapse/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,73 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-synapse-2020-12-01 - - tag: schema-synapse-2020-04-01-preview - - tag: schema-synapse-2019-06-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-synapse-2020-12-01 and azureresourceschema - -``` yaml $(tag) == 'schema-synapse-2020-12-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Synapse/stable/2020-12-01/bigDataPool.json - - Microsoft.Synapse/stable/2020-12-01/checkNameAvailability.json - - Microsoft.Synapse/stable/2020-12-01/firewallRule.json - - Microsoft.Synapse/stable/2020-12-01/operations.json - - Microsoft.Synapse/stable/2020-12-01/sqlPool.json - - Microsoft.Synapse/stable/2020-12-01/workspace.json - - Microsoft.Synapse/stable/2020-12-01/integrationRuntime.json - - Microsoft.Synapse/stable/2020-12-01/privateLinkResources.json - - Microsoft.Synapse/stable/2020-12-01/privateEndpointConnections.json - - Microsoft.Synapse/stable/2020-12-01/privatelinkhub.json - - Microsoft.Synapse/stable/2020-12-01/sqlServer.json - - Microsoft.Synapse/stable/2020-12-01/keys.json - - Microsoft.Synapse/stable/2020-12-01/library.json - -``` - -### Tag: schema-synapse-2020-04-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-synapse-2020-04-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Synapse/preview/2020-04-01-preview/operations.json - - Microsoft.Synapse/preview/2020-04-01-preview/sqlPool.json - - Microsoft.Synapse/preview/2020-04-01-preview/sqlDatabase.json - -``` - -### Tag: schema-synapse-2019-06-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-synapse-2019-06-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Synapse/preview/2019-06-01-preview/bigDataPool.json - - Microsoft.Synapse/preview/2019-06-01-preview/checkNameAvailability.json - - Microsoft.Synapse/preview/2019-06-01-preview/firewallRule.json - - Microsoft.Synapse/preview/2019-06-01-preview/operations.json - - Microsoft.Synapse/preview/2019-06-01-preview/sqlPool.json - - Microsoft.Synapse/preview/2019-06-01-preview/workspace.json - - Microsoft.Synapse/preview/2019-06-01-preview/integrationRuntime.json - - Microsoft.Synapse/preview/2019-06-01-preview/privateLinkResources.json - - Microsoft.Synapse/preview/2019-06-01-preview/privateEndpointConnections.json - - Microsoft.Synapse/preview/2019-06-01-preview/privatelinkhub.json - - Microsoft.Synapse/preview/2019-06-01-preview/sqlServer.json - - Microsoft.Synapse/preview/2019-06-01-preview/keys.json - -``` diff --git a/specification/synapse/resource-manager/readme.go.md b/specification/synapse/resource-manager/readme.go.md index 8328ac2f9b66..8451ac53c6f4 100644 --- a/specification/synapse/resource-manager/readme.go.md +++ b/specification/synapse/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: synapse clear-output-folder: true ``` @@ -15,6 +15,7 @@ go: batch: - tag: package-2019-06-01-preview - tag: package-2020-12-01 + - tag: package-2021-03 ``` ### Tag: package-2019-06-01-preview and go @@ -33,4 +34,13 @@ Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2021-03' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2021-03-01/$(namespace) ``` \ No newline at end of file diff --git a/specification/synapse/resource-manager/readme.md b/specification/synapse/resource-manager/readme.md index b5d9ce095851..8083184df830 100644 --- a/specification/synapse/resource-manager/readme.md +++ b/specification/synapse/resource-manager/readme.md @@ -28,16 +28,49 @@ These are the global settings for the Azure Synapse Analytics API. description: Azure Synapse Analytics Management Client openapi-type: arm azure-arm: true -tag: package-2021-03 +tag: package-2021-04-preview generate-empty-classes: true +modelerfour: + lenient-model-deduplication: true ``` +### Tag: package-2021-04-preview + +These settings apply only when `--tag=package-2021-04-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2021-04-preview' +input-file: + - Microsoft.Synapse/preview/2021-04-01-preview/bigDataPool.json + - Microsoft.Synapse/preview/2021-04-01-preview/checkNameAvailability.json + - Microsoft.Synapse/preview/2021-04-01-preview/firewallRule.json + - Microsoft.Synapse/preview/2021-04-01-preview/integrationRuntime.json + - Microsoft.Synapse/preview/2021-04-01-preview/keys.json + - Microsoft.Synapse/preview/2021-04-01-preview/library.json + - Microsoft.Synapse/preview/2021-04-01-preview/operations.json + - Microsoft.Synapse/preview/2021-04-01-preview/privateEndpointConnections.json + - Microsoft.Synapse/preview/2021-04-01-preview/privateLinkResources.json + - Microsoft.Synapse/preview/2021-04-01-preview/privatelinkhub.json + - Microsoft.Synapse/preview/2021-04-01-preview/sqlPool.json + - Microsoft.Synapse/preview/2021-04-01-preview/sqlServer.json + - Microsoft.Synapse/preview/2021-04-01-preview/workspace.json +``` + +### Tag: package-kusto-pool-2021-04-preview + +These settings apply only when `--tag=package-kusto-pool-2021-04-preview` is specified on the command line. + +**ATTENTION**: Please DO NOT generate SDK based on this tag. Kusto pool API set is not ready to be widely used. + +``` yaml $(tag) == 'package-kusto-pool-2021-04-preview' +input-file: + - Microsoft.Synapse/preview/2021-04-01-preview/kustoPool.json +``` ### Tag: package-2021-03 These settings apply only when `--tag=package-2021-03` is specified on the command line. -```yaml $(tag) == 'package-2021-03' +``` yaml $(tag) == 'package-2021-03' input-file: - Microsoft.Synapse/stable/2021-03-01/bigDataPool.json - Microsoft.Synapse/stable/2021-03-01/checkNameAvailability.json @@ -53,6 +86,7 @@ input-file: - Microsoft.Synapse/stable/2021-03-01/sqlServer.json - Microsoft.Synapse/stable/2021-03-01/workspace.json ``` + ### Tag: package-2019-06-01-preview These settings apply only when `--tag=package-2019-06-01-preview` is specified on the command line. @@ -141,7 +175,7 @@ directive: - $.definitions.DataMaskingRule - $.definitions.SqlPoolOperation - suppress: R4015 - reason: Needs implmentation + reason: Needs implementation from: Microsoft.Synapse/preview/2019-06-01-preview/workspace_managedIdentity.json where: - $.definitions.ManagedIdentitySqlControlSettingsInfo @@ -177,7 +211,7 @@ directive: - $.definitions.DataMaskingRule - $.definitions.SqlPoolOperation - suppress: R4015 - reason: Needs implmentation + reason: Needs implementation from: Microsoft.Synapse/stable/2020-12-01/workspace_managedIdentity.json where: - $.definitions.ManagedIdentitySqlControlSettingsInfo @@ -211,10 +245,9 @@ swagger-to-sdk: - repo: azure-sdk-for-js - repo: azure-sdk-for-java - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-go - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js synapse/resource-manager ``` ## Python @@ -236,12 +269,13 @@ csharp: namespace: Microsoft.Azure.Management.Synapse output-folder: $(csharp-sdks-folder)/synapse/Microsoft.Azure.Management.Synapse/src/Generated clear-output-folder: true +batch: + - tag: package-2021-04-preview + - tag: package-sqlGen3-2020-04-01-preview ``` ## Go See configuration in [readme.go.md](./readme.go.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/AvailableOSGet.json b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/AvailableOSGet.json new file mode 100644 index 000000000000..ec1a56b504ad --- /dev/null +++ b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/AvailableOSGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "476f61a4-952c-422a-b4db-568a828f35df", + "resourceGroupName": "contoso-rg", + "testBaseAccountName": "contoso-testBaseAccount", + "availableOSResourceName": "Windows-10-2004", + "api-version": "2020-12-16-preview" + }, + "responses": { + "200": { + "body": { + "name": "Windows-10-2004", + "id": "/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount/availableOSs/Windows-10-2004", + "type": "Microsoft.TestBase/testBaseAccounts/availableOSs", + "properties": { + "osId": "Windows 10 2004", + "osName": "Windows 10 2004", + "osVersion": "Windows 10", + "insiderChannel": "Channel 1", + "osUpdateType": "Feature update", + "osPlatform": "Client" + } + } + } + } +} diff --git a/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/AvailableOSsList.json b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/AvailableOSsList.json new file mode 100644 index 000000000000..1209b1a8007b --- /dev/null +++ b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/AvailableOSsList.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "subscriptionId": "476f61a4-952c-422a-b4db-568a828f35df", + "resourceGroupName": "contoso-rg", + "testBaseAccountName": "contoso-testBaseAccount", + "osUpdateType": "SecurityUpdate", + "api-version": "2020-12-16-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Windows-10-2004", + "id": "/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount/availableOSs/Windows-10-2004", + "type": "Microsoft.TestBase/testBaseAccounts/availableOSs", + "properties": { + "osId": "Windows 10 2004", + "osName": "Windows 10 2004", + "osVersion": "Windows 10", + "insiderChannel": "Channel 1", + "osUpdateType": "Feature update", + "osPlatform": "Client" + } + }, + { + "name": "Windows-10-1909", + "id": "/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount/availableOSs/Windows-10-1909", + "type": "Microsoft.TestBase/testBaseAccounts/availableOSs", + "properties": { + "osId": "Windows 10 1909", + "osName": "Windows 10 1909", + "osVersion": "Windows 10", + "osUpdateType": "Security update", + "osPlatform": "Client" + } + }, + { + "name": "Windows-10-1903", + "id": "/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount/availableOSs/Windows-10-1903", + "type": "Microsoft.TestBase/testBaseAccounts/availableOSs", + "properties": { + "osId": "Windows 10 1903", + "osName": "Windows 10 1903", + "osVersion": "Windows 10", + "osUpdateType": "Security update", + "osPlatform": "Client" + } + }, + { + "name": "Windows-10-1809", + "id": "/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount/availableOSs/Windows-10-1809", + "type": "Microsoft.TestBase/testBaseAccounts/availableOSs", + "properties": { + "osId": "Windows 10 1809", + "osName": "Windows 10 1809", + "osVersion": "Windows 10", + "insiderChannel": "Channel 3", + "osUpdateType": "Feature update", + "osPlatform": "Client" + } + }, + { + "name": "Windows-Server-2016", + "id": "/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount/availableOSs/Windows-Server-2016", + "type": "Microsoft.TestBase/testBaseAccounts/availableOSs", + "properties": { + "osId": "Windows Server 2016", + "osName": "Windows Server 2016", + "osVersion": "Windows Server 2016", + "osUpdateType": "Security update", + "osPlatform": "Server" + } + } + ] + } + } + } +} diff --git a/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/CPURegressionAnalysisResultGet.json b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/CPURegressionAnalysisResultGet.json new file mode 100644 index 000000000000..43280d227ec1 --- /dev/null +++ b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/CPURegressionAnalysisResultGet.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "476f61a4-952c-422a-b4db-568a828f35df", + "resourceGroupName": "contoso-rg1", + "testBaseAccountName": "contoso-testBaseAccount1", + "packageName": "contoso-package2", + "testResultName": "Windows-10-1909-Test-Id", + "analysisResultName": "cpuRegression", + "api-version": "2020-12-16-preview" + }, + "responses": { + "200": { + "body": { + "name": "cpuRegression", + "id": "/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1/packages/contoso-package2/testResults/Windows-10-1909-Test-Id/analysisResults/cpuRegression", + "type": "Microsoft.TestBase/testBaseAccounts/packages/testResults/analysisResults", + "properties": { + "grade": "Pass", + "analysisResultType": "CPURegression", + "cpuRegressionResults": [ + { + "fileName": "testApp.exe", + "grade": "Pass", + "details": "Some details of testApp", + "diff": 0.1, + "isRegressed": false + }, + { + "fileName": "dependencies.exe", + "grade": "Pass", + "details": "Some details of dependencies", + "diff": 0.15, + "isRegressed": false + } + ] + } + } + } + } +} diff --git a/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/CPURegressionAnalysisResultsList.json b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/CPURegressionAnalysisResultsList.json new file mode 100644 index 000000000000..8d0ad17411df --- /dev/null +++ b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/CPURegressionAnalysisResultsList.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "476f61a4-952c-422a-b4db-568a828f35df", + "resourceGroupName": "contoso-rg1", + "testBaseAccountName": "contoso-testBaseAccount1", + "packageName": "contoso-package2", + "testResultName": "Windows-10-1909-Test-Id", + "analysisResultType": "CPURegression", + "api-version": "2020-12-16-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "cpuRegression", + "id": "/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1/packages/contoso-package2/testResults/Windows-10-1909-Test-Id/analysisResults/cpuRegression", + "type": "Microsoft.TestBase/testBaseAccounts/packages/testResults/analysisResults", + "properties": { + "grade": "Pass", + "analysisResultType": "CPURegression", + "cpuRegressionResults": [ + { + "fileName": "testApp.exe", + "grade": "Pass", + "details": "Some details of testApp", + "diff": 0.1, + "isRegressed": false + }, + { + "fileName": "dependencies.exe", + "grade": "Pass", + "details": "Some details of dependencies", + "diff": 0.15, + "isRegressed": false + } + ] + } + } + ] + } + } + } +} diff --git a/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/CPUUtilizationAnalysisResultGet.json b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/CPUUtilizationAnalysisResultGet.json new file mode 100644 index 000000000000..f2f12a85cdf6 --- /dev/null +++ b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/CPUUtilizationAnalysisResultGet.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "subscriptionId": "476f61a4-952c-422a-b4db-568a828f35df", + "resourceGroupName": "contoso-rg1", + "testBaseAccountName": "contoso-testBaseAccount1", + "packageName": "contoso-package2", + "testResultName": "Windows-10-1909-Test-Id", + "analysisResultName": "cpuUtilization", + "api-version": "2020-12-16-preview" + }, + "responses": { + "200": { + "body": { + "name": "cpuUtilization", + "id": "/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1/packages/contoso-package2/testResults/Windows-10-1909-Test-Id/analysisResults/cpuUtilization", + "type": "Microsoft.TestBase/testBaseAccounts/packages/testResults/analysisResults", + "properties": { + "grade": "Pass", + "analysisResultType": "CPUUtilization", + "cpuUtilizationResults": [ + { + "process": "app.exe", + "upperBound": { + "percentile": 90.0, + "value": 60.0 + }, + "lowerBound": { + "percentile": 50.0, + "value": 20.0 + }, + "utilization": [ + { + "timestamp": "2020-12-28T17:30:00Z", + "value": 34.7 + }, + { + "timestamp": "2020-12-28T17:31:00Z", + "value": 35.9 + }, + { + "timestamp": "2020-12-28T17:32:00Z", + "value": 27.1 + }, + { + "timestamp": "2020-12-28T17:33:00Z", + "value": 49.8 + }, + { + "timestamp": "2020-12-28T17:34:00Z", + "value": 45.6 + } + ] + }, + { + "process": "anotherProcess.exe", + "upperBound": { + "percentile": 90.0, + "value": 60.0 + }, + "lowerBound": { + "percentile": 50.0, + "value": 20.0 + }, + "utilization": [ + { + "timestamp": "2020-12-28T17:30:00Z", + "value": 34.7 + }, + { + "timestamp": "2020-12-28T17:31:00Z", + "value": 35.9 + }, + { + "timestamp": "2020-12-28T17:32:00Z", + "value": 27.1 + }, + { + "timestamp": "2020-12-28T17:33:00Z", + "value": 49.8 + }, + { + "timestamp": "2020-12-28T17:34:00Z", + "value": 45.6 + } + ] + } + ] + } + } + } + } +} diff --git a/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/CPUUtilizationAnalysisResultsList.json b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/CPUUtilizationAnalysisResultsList.json new file mode 100644 index 000000000000..80de4df56e12 --- /dev/null +++ b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/CPUUtilizationAnalysisResultsList.json @@ -0,0 +1,96 @@ +{ + "parameters": { + "subscriptionId": "476f61a4-952c-422a-b4db-568a828f35df", + "resourceGroupName": "contoso-rg1", + "testBaseAccountName": "contoso-testBaseAccount1", + "packageName": "contoso-package2", + "testResultName": "Windows-10-1909-Test-Id", + "analysisResultType": "CPUUtilization", + "api-version": "2020-12-16-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "cpuUtilization", + "id": "/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1/packages/contoso-package2/testResults/Windows-10-1909-Test-Id/analysisResults/cpuUtilization", + "type": "Microsoft.TestBase/testBaseAccounts/packages/testResults/analysisResults", + "properties": { + "grade": "Pass", + "analysisResultType": "CPUUtilization", + "cpuUtilizationResults": [ + { + "process": "app.exe", + "upperBound": { + "percentile": 90.0, + "value": 60.0 + }, + "lowerBound": { + "percentile": 50.0, + "value": 20.0 + }, + "utilization": [ + { + "timestamp": "2020-12-28T17:30:00Z", + "value": 34.7 + }, + { + "timestamp": "2020-12-28T17:31:00Z", + "value": 35.9 + }, + { + "timestamp": "2020-12-28T17:32:00Z", + "value": 27.1 + }, + { + "timestamp": "2020-12-28T17:33:00Z", + "value": 49.8 + }, + { + "timestamp": "2020-12-28T17:34:00Z", + "value": 45.6 + } + ] + }, + { + "process": "anotherProcess.exe", + "upperBound": { + "percentile": 90.0, + "value": 60.0 + }, + "lowerBound": { + "percentile": 50.0, + "value": 20.0 + }, + "utilization": [ + { + "timestamp": "2020-12-28T17:30:00Z", + "value": 34.7 + }, + { + "timestamp": "2020-12-28T17:31:00Z", + "value": 35.9 + }, + { + "timestamp": "2020-12-28T17:32:00Z", + "value": 27.1 + }, + { + "timestamp": "2020-12-28T17:33:00Z", + "value": 49.8 + }, + { + "timestamp": "2020-12-28T17:34:00Z", + "value": 45.6 + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/CheckPackageNameAvailability.json b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/CheckPackageNameAvailability.json new file mode 100644 index 000000000000..e79fc4ea363b --- /dev/null +++ b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/CheckPackageNameAvailability.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "476f61a4-952c-422a-b4db-568a828f35df", + "resourceGroupName": "contoso-rg1", + "testBaseAccountName": "contoso-testBaseAccount1", + "api-version": "2020-12-16-preview", + "parameters": { + "name": "testApp", + "applicationName": "testApp", + "version": "1.0.0", + "type": "Microsoft.TestBase/testBaseAccounts/packages" + } + }, + "responses": { + "200": { + "body": {} + } + } +} diff --git a/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/FavoriteProcessCreate.json b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/FavoriteProcessCreate.json new file mode 100644 index 000000000000..9247859bf24b --- /dev/null +++ b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/FavoriteProcessCreate.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "476f61a4-952c-422a-b4db-568a828f35df", + "resourceGroupName": "contoso-rg1", + "testBaseAccountName": "contoso-testBaseAccount1", + "packageName": "contoso-package2", + "favoriteProcessResourceName": "testAppProcess", + "api-version": "2020-12-16-preview", + "parameters": { + "properties": { + "actualProcessName": "testApp&.exe" + } + } + }, + "responses": { + "200": { + "body": { + "name": "testAppProcess", + "id": "/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1/packages/contoso-package2/favoriteProcesses/testAppProcess", + "type": "Microsoft.TestBase/testBaseAccounts/packages/favoriteProcesses", + "properties": { + "actualProcessName": "testApp&.exe" + } + } + } + } +} diff --git a/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/FavoriteProcessDelete.json b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/FavoriteProcessDelete.json new file mode 100644 index 000000000000..ecb77019c633 --- /dev/null +++ b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/FavoriteProcessDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "476f61a4-952c-422a-b4db-568a828f35df", + "resourceGroupName": "contoso-rg1", + "testBaseAccountName": "contoso-testBaseAccount1", + "packageName": "contoso-package2", + "favoriteProcessResourceName": "testAppProcess", + "api-version": "2020-12-16-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/FavoriteProcessGet.json b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/FavoriteProcessGet.json new file mode 100644 index 000000000000..92037d75bc2e --- /dev/null +++ b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/FavoriteProcessGet.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "476f61a4-952c-422a-b4db-568a828f35df", + "resourceGroupName": "contoso-rg1", + "testBaseAccountName": "contoso-testBaseAccount1", + "packageName": "contoso-package2", + "favoriteProcessResourceName": "testAppProcess", + "api-version": "2020-12-16-preview" + }, + "responses": { + "200": { + "body": { + "name": "testAppProcess", + "id": "/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1/packages/contoso-package2/favoriteProcesses/testAppProcess", + "type": "Microsoft.TestBase/testBaseAccounts/packages/favoriteProcesses", + "properties": { + "actualProcessName": "testApp&.exe" + } + } + } + } +} diff --git a/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/FavoriteProcessesList.json b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/FavoriteProcessesList.json new file mode 100644 index 000000000000..e104f2c07846 --- /dev/null +++ b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/FavoriteProcessesList.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "476f61a4-952c-422a-b4db-568a828f35df", + "resourceGroupName": "contoso-rg1", + "testBaseAccountName": "contoso-testBaseAccount1", + "packageName": "contoso-package2", + "api-version": "2020-12-16-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testAppProcess", + "id": "/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1/packages/contoso-package2/favoriteProcesses/testAppProcess", + "type": "Microsoft.TestBase/testBaseAccounts/packages/favoriteProcesses", + "properties": { + "actualProcessName": "testApp&.exe" + } + }, + { + "name": "anotherProcess", + "id": "/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1/packages/contoso-package2/favoriteProcesses/anotherProcess", + "type": "Microsoft.TestBase/testBaseAccounts/packages/favoriteProcesses", + "properties": { + "actualProcessName": "anotherProcess&&.exe" + } + } + ] + } + } + } +} diff --git a/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/FlightingRingGet.json b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/FlightingRingGet.json new file mode 100644 index 000000000000..69722dafe911 --- /dev/null +++ b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/FlightingRingGet.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "476f61a4-952c-422a-b4db-568a828f35df", + "resourceGroupName": "contoso-rg", + "testBaseAccountName": "contoso-testBaseAccount", + "flightingRingResourceName": "Insider-Beta-Channel", + "api-version": "2020-12-16-preview" + }, + "responses": { + "200": { + "body": { + "name": "Insider-Beta-Channel", + "id": "/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount/flightingRings/Insider-Beta-Channel", + "type": "Microsoft.TestBase/testBaseAccounts/flightingRings", + "properties": { + "actualFlightingRingName": "Insider Beta Channel" + } + } + } + } +} diff --git a/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/FlightingRingsList.json b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/FlightingRingsList.json new file mode 100644 index 000000000000..ec5d6ba01d07 --- /dev/null +++ b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/FlightingRingsList.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "476f61a4-952c-422a-b4db-568a828f35df", + "resourceGroupName": "contoso-rg", + "testBaseAccountName": "contoso-testBaseAccount", + "api-version": "2020-12-16-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Insider-Beta-Channel", + "id": "/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount/flightingRings/Insider-Beta-Channel", + "type": "Microsoft.TestBase/testBaseAccounts/flightingRings", + "properties": { + "actualFlightingRingName": "Insider Beta Channel" + } + }, + { + "name": "Another-Channel", + "id": "/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount/flightingRings/Another-Channel", + "type": "Microsoft.TestBase/testBaseAccounts/flightingRings", + "properties": { + "actualFlightingRingName": "Another Channel" + } + } + ] + } + } + } +} diff --git a/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/MemoryRegressionAnalysisResultGet.json b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/MemoryRegressionAnalysisResultGet.json new file mode 100644 index 000000000000..61b81e5822f5 --- /dev/null +++ b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/MemoryRegressionAnalysisResultGet.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "476f61a4-952c-422a-b4db-568a828f35df", + "resourceGroupName": "contoso-rg1", + "testBaseAccountName": "contoso-testBaseAccount1", + "packageName": "contoso-package2", + "testResultName": "Windows-10-1909-Test-Id", + "analysisResultName": "memoryRegression", + "api-version": "2020-12-16-preview" + }, + "responses": { + "200": { + "body": { + "name": "memoryRegression", + "id": "/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1/packages/contoso-package2/testResults/Windows-10-1909-Test-Id/analysisResults/memoryRegression", + "type": "Microsoft.TestBase/testBaseAccounts/packages/testResults/analysisResults", + "properties": { + "grade": "Pass", + "analysisResultType": "MemoryRegression", + "memoryRegressionResults": [ + { + "fileName": "testApp.exe", + "grade": "Pass", + "details": "Some details of testApp", + "diff": 0.1, + "isRegressed": false + }, + { + "fileName": "dependencies.exe", + "grade": "Pass", + "details": "Some details of dependencies", + "diff": 0.15, + "isRegressed": false + } + ] + } + } + } + } +} diff --git a/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/MemoryRegressionAnalysisResultsList.json b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/MemoryRegressionAnalysisResultsList.json new file mode 100644 index 000000000000..1a3755b5f390 --- /dev/null +++ b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/MemoryRegressionAnalysisResultsList.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "476f61a4-952c-422a-b4db-568a828f35df", + "resourceGroupName": "contoso-rg1", + "testBaseAccountName": "contoso-testBaseAccount1", + "packageName": "contoso-package2", + "testResultName": "Windows-10-1909-Test-Id", + "analysisResultType": "MemoryRegression", + "api-version": "2020-12-16-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "memoryRegression", + "id": "/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1/packages/contoso-package2/testResults/Windows-10-1909-Test-Id/analysisResults/memoryRegression", + "type": "Microsoft.TestBase/testBaseAccounts/packages/testResults/analysisResults", + "properties": { + "grade": "Pass", + "analysisResultType": "MemoryRegression", + "memoryRegressionResults": [ + { + "fileName": "testApp.exe", + "grade": "Pass", + "details": "Some details of testApp", + "diff": 0.1, + "isRegressed": false + }, + { + "fileName": "dependencies.exe", + "grade": "Pass", + "details": "Some details of dependencies", + "diff": 0.15, + "isRegressed": false + } + ] + } + } + ] + } + } + } +} diff --git a/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/MemoryUtilizationAnalysisResultGet.json b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/MemoryUtilizationAnalysisResultGet.json new file mode 100644 index 000000000000..c091f91d4700 --- /dev/null +++ b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/MemoryUtilizationAnalysisResultGet.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "subscriptionId": "476f61a4-952c-422a-b4db-568a828f35df", + "resourceGroupName": "contoso-rg1", + "testBaseAccountName": "contoso-testBaseAccount1", + "packageName": "contoso-package2", + "testResultName": "Windows-10-1909-Test-Id", + "analysisResultName": "memoryUtilization", + "api-version": "2020-12-16-preview" + }, + "responses": { + "200": { + "body": { + "name": "memoryUtilization", + "id": "/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1/packages/contoso-package2/testResults/Windows-10-1909-Test-Id/analysisResults/memoryUtilization", + "type": "Microsoft.TestBase/testBaseAccounts/packages/testResults/analysisResults", + "properties": { + "grade": "Pass", + "analysisResultType": "MemoryUtilization", + "memoryUtilizationResults": [ + { + "process": "app.exe", + "upperBound": { + "percentile": 90.0, + "value": 60.0 + }, + "lowerBound": { + "percentile": 50.0, + "value": 20.0 + }, + "utilization": [ + { + "timestamp": "2020-12-28T17:30:00Z", + "value": 34.7 + }, + { + "timestamp": "2020-12-28T17:31:00Z", + "value": 35.9 + }, + { + "timestamp": "2020-12-28T17:32:00Z", + "value": 27.1 + }, + { + "timestamp": "2020-12-28T17:33:00Z", + "value": 49.8 + }, + { + "timestamp": "2020-12-28T17:34:00Z", + "value": 45.6 + } + ] + }, + { + "process": "anotherProcess.exe", + "upperBound": { + "percentile": 90.0, + "value": 60.0 + }, + "lowerBound": { + "percentile": 50.0, + "value": 20.0 + }, + "utilization": [ + { + "timestamp": "2020-12-28T17:30:00Z", + "value": 34.7 + }, + { + "timestamp": "2020-12-28T17:31:00Z", + "value": 35.9 + }, + { + "timestamp": "2020-12-28T17:32:00Z", + "value": 27.1 + }, + { + "timestamp": "2020-12-28T17:33:00Z", + "value": 49.8 + }, + { + "timestamp": "2020-12-28T17:34:00Z", + "value": 45.6 + } + ] + } + ] + } + } + } + } +} diff --git a/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/MemoryUtilizationAnalysisResultsList.json b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/MemoryUtilizationAnalysisResultsList.json new file mode 100644 index 000000000000..72c025fbcf7b --- /dev/null +++ b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/MemoryUtilizationAnalysisResultsList.json @@ -0,0 +1,96 @@ +{ + "parameters": { + "subscriptionId": "476f61a4-952c-422a-b4db-568a828f35df", + "resourceGroupName": "contoso-rg1", + "testBaseAccountName": "contoso-testBaseAccount1", + "packageName": "contoso-package2", + "testResultName": "Windows-10-1909-Test-Id", + "analysisResultType": "MemoryUtilization", + "api-version": "2020-12-16-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "cpuUtilization", + "id": "/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1/packages/contoso-package2/testResults/Windows-10-1909-Test-Id/analysisResults/memoryUtilization", + "type": "Microsoft.TestBase/testBaseAccounts/packages/testResults/analysisResults", + "properties": { + "grade": "Pass", + "analysisResultType": "MemoryUtilization", + "memoryUtilizationResults": [ + { + "process": "app.exe", + "upperBound": { + "percentile": 90.0, + "value": 60.0 + }, + "lowerBound": { + "percentile": 50.0, + "value": 20.0 + }, + "utilization": [ + { + "timestamp": "2020-12-28T17:30:00Z", + "value": 34.7 + }, + { + "timestamp": "2020-12-28T17:31:00Z", + "value": 35.9 + }, + { + "timestamp": "2020-12-28T17:32:00Z", + "value": 27.1 + }, + { + "timestamp": "2020-12-28T17:33:00Z", + "value": 49.8 + }, + { + "timestamp": "2020-12-28T17:34:00Z", + "value": 45.6 + } + ] + }, + { + "process": "anotherProcess.exe", + "upperBound": { + "percentile": 90.0, + "value": 60.0 + }, + "lowerBound": { + "percentile": 50.0, + "value": 20.0 + }, + "utilization": [ + { + "timestamp": "2020-12-28T17:30:00Z", + "value": 34.7 + }, + { + "timestamp": "2020-12-28T17:31:00Z", + "value": 35.9 + }, + { + "timestamp": "2020-12-28T17:32:00Z", + "value": 27.1 + }, + { + "timestamp": "2020-12-28T17:33:00Z", + "value": 49.8 + }, + { + "timestamp": "2020-12-28T17:34:00Z", + "value": 45.6 + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/OSUpdateGet.json b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/OSUpdateGet.json new file mode 100644 index 000000000000..dd58a92726c0 --- /dev/null +++ b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/OSUpdateGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "476f61a4-952c-422a-b4db-568a828f35df", + "resourceGroupName": "contoso-rg1", + "testBaseAccountName": "contoso-testBaseAccount1", + "packageName": "contoso-package2", + "osUpdateResourceName": "Windows-10-2004-2020-12-B-505", + "api-version": "2020-12-16-preview" + }, + "responses": { + "200": { + "body": { + "name": "Windows-10-2004-2020-12-B-505", + "id": "/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1/packages/contoso-package2/osUpdates/Windows-10-2004-2020-12-B-505", + "type": "Microsoft.TestBase/testBaseAccounts/packages/osUpdates", + "properties": { + "osName": "Windows 10 2004", + "release": "2020.12B", + "buildRevision": "505", + "type": "SecurityUpdate" + } + } + } + } +} diff --git a/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/OSUpdatesList.json b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/OSUpdatesList.json new file mode 100644 index 000000000000..0fd5814f795d --- /dev/null +++ b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/OSUpdatesList.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "476f61a4-952c-422a-b4db-568a828f35df", + "resourceGroupName": "contoso-rg1", + "testBaseAccountName": "contoso-testBaseAccount1", + "packageName": "contoso-package2", + "osUpdateType": "SecurityUpdate", + "api-version": "2020-12-16-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Windows-10-2004-2020-12-B-505", + "id": "/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1/packages/contoso-package2/osUpdates/Windows-10-2004-2020-12-B-505", + "type": "Microsoft.TestBase/testBaseAccounts/packages/osUpdates", + "properties": { + "osName": "Windows 10 2004", + "release": "2020.12B", + "buildRevision": "505", + "type": "SecurityUpdate" + } + }, + { + "name": "Windows-10-2004-2020-10-B-413", + "id": "/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1/packages/contoso-package2/osUpdates/Windows-10-2004-2020-10-B-413", + "type": "Microsoft.TestBase/testBaseAccounts/packages/osUpdates", + "properties": { + "osName": "Windows 10 2004", + "release": "2020.10B", + "buildRevision": "413", + "type": "SecurityUpdate" + } + }, + { + "name": "Windows-10-2004-2020-08-B-226", + "id": "/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1/packages/contoso-package2/osUpdates/Windows-10-2004-2020-08-B-226", + "type": "Microsoft.TestBase/testBaseAccounts/packages/osUpdates", + "properties": { + "osName": "Windows 10 2004", + "release": "2020.08B", + "buildRevision": "226", + "type": "SecurityUpdate" + } + } + ] + } + } + } +} diff --git a/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/OperationsList.json b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/OperationsList.json new file mode 100644 index 000000000000..7aea36ad123c --- /dev/null +++ b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/OperationsList.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2020-12-16-preview" + }, + "responses": { + "200": { + "body": { + "nextLink": "https://management.azure.com/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/providers/Microsoft.TestBase/operations?api-version=2020-12-16-preview&$skipToken=dummySkipToken", + "value": [ + { + "name": "Microsoft.TestBase/testBaseAccounts/read", + "display": { + "provider": "Microsoft Test Base", + "resource": "Test Base Account", + "operation": "View Test Base Account", + "description": "View the properties of a Test Base Account." + } + }, + { + "name": "Microsoft.TestBase/testBaseAccounts/write", + "display": { + "provider": "Microsoft Test Base", + "resource": "Test Base Account", + "operation": "Update Test Base Account", + "description": "Create a new Test Base Account or update the properties of an existing Test Base Account." + } + }, + { + "name": "Microsoft.TestBase/testBaseAccounts/delete", + "display": { + "provider": "Microsoft Test Base", + "resource": "Test Base Account", + "operation": "Delete Test Base Account", + "description": "Delete a Test Base Account." + } + } + ] + } + } + } +} diff --git a/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/PackageCreate.json b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/PackageCreate.json new file mode 100644 index 000000000000..2a2c28bd3f8d --- /dev/null +++ b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/PackageCreate.json @@ -0,0 +1,285 @@ +{ + "parameters": { + "subscriptionId": "476f61a4-952c-422a-b4db-568a828f35df", + "resourceGroupName": "contoso-rg1", + "testBaseAccountName": "contoso-testBaseAccount1", + "packageName": "contoso-package2", + "api-version": "2020-12-16-preview", + "parameters": { + "location": "westus", + "tags": {}, + "properties": { + "applicationName": "contoso-package2", + "version": "1.0.0", + "targetOSList": [ + { + "osUpdateType": "Security updates", + "targetOSs": [ + "Windows 10 2004", + "Windows 10 1903" + ] + } + ], + "flightingRing": "Insider Beta Channel", + "blobPath": "storageAccountPath/package.zip", + "tests": [ + { + "testType": "OutOfBoxTest", + "isActive": true, + "commands": [ + { + "name": "Install", + "action": "Install", + "contentType": "Path", + "content": "app/scripts/install/job.ps1", + "runElevated": true, + "restartAfter": true, + "maxRunTime": 1800, + "runAsInteractive": true, + "alwaysRun": true, + "applyUpdateBefore": false + }, + { + "name": "Launch", + "action": "Launch", + "contentType": "Path", + "content": "app/scripts/launch/job.ps1", + "runElevated": true, + "restartAfter": false, + "maxRunTime": 1800, + "runAsInteractive": true, + "alwaysRun": false, + "applyUpdateBefore": true + }, + { + "name": "Close", + "action": "Close", + "contentType": "Path", + "content": "app/scripts/close/job.ps1", + "runElevated": true, + "restartAfter": false, + "maxRunTime": 1800, + "runAsInteractive": true, + "alwaysRun": false, + "applyUpdateBefore": false + }, + { + "name": "Uninstall", + "action": "Uninstall", + "contentType": "Path", + "content": "app/scripts/uninstall/job.ps1", + "runElevated": true, + "restartAfter": false, + "maxRunTime": 1800, + "runAsInteractive": true, + "alwaysRun": true, + "applyUpdateBefore": false + } + ] + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1/packages/contoso-package2", + "name": "contoso-package2", + "type": "Microsoft.TestBase/testBaseAccounts/packages", + "location": "westus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "applicationName": "contoso-package2", + "version": "1.0.0", + "testTypes": [ + "OutOfBoxTest" + ], + "targetOSList": [ + { + "osUpdateType": "Security updates", + "targetOSs": [ + "Windows 10 2004", + "Windows 10 1903" + ] + } + ], + "packageStatus": "Ready", + "lastModifiedTime": "2020-12-28T17:30:00Z", + "flightingRing": "Insider Beta Channel", + "isEnabled": true, + "blobPath": "storageAccountPath/package.zip", + "validationResults": [ + { + "validationName": "Syntax Validation", + "isValid": true + }, + { + "validationName": "Package Run Validation", + "isValid": true + } + ], + "tests": [ + { + "testType": "OutOfBoxTest", + "validationRunStatus": "Passed", + "isActive": true, + "commands": [ + { + "name": "Install", + "action": "Install", + "contentType": "Path", + "content": "app/scripts/install/job.ps1", + "runElevated": true, + "restartAfter": true, + "maxRunTime": 1800, + "runAsInteractive": true, + "alwaysRun": true, + "applyUpdateBefore": false + }, + { + "name": "Launch", + "action": "Launch", + "contentType": "Path", + "content": "app/scripts/launch/job.ps1", + "runElevated": true, + "restartAfter": false, + "maxRunTime": 1800, + "runAsInteractive": true, + "alwaysRun": false, + "applyUpdateBefore": true + }, + { + "name": "Close", + "action": "Close", + "contentType": "Path", + "content": "app/scripts/close/job.ps1", + "runElevated": true, + "restartAfter": false, + "maxRunTime": 1800, + "runAsInteractive": true, + "alwaysRun": false, + "applyUpdateBefore": false + }, + { + "name": "Uninstall", + "action": "Uninstall", + "contentType": "Path", + "content": "app/scripts/uninstall/job.ps1", + "runElevated": true, + "restartAfter": false, + "maxRunTime": 1800, + "runAsInteractive": true, + "alwaysRun": true, + "applyUpdateBefore": false + } + ] + } + ] + } + } + }, + "201": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1/packages/contoso-package2/operationResults/dGVjaGVkX01hbmFnZVJvbGVfNWRiNGI3Ng==?api-version=2020-12-16-preview" + }, + "body": { + "id": "/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1/packages/contoso-package2", + "name": "contoso-package2", + "type": "Microsoft.TestBase/testBaseAccounts/packages", + "location": "westus", + "tags": {}, + "properties": { + "provisioningState": "Creating", + "applicationName": "contoso-package2", + "version": "1.0.0", + "testTypes": [ + "OutOfBoxTest" + ], + "targetOSList": [ + { + "osUpdateType": "Security updates", + "targetOSs": [ + "Windows 10 2004", + "Windows 10 1903" + ] + } + ], + "packageStatus": "Ready", + "lastModifiedTime": "2020-12-28T17:30:00Z", + "flightingRing": "Insider Beta Channel", + "isEnabled": true, + "blobPath": "storageAccountPath/package.zip", + "validationResults": [ + { + "validationName": "Syntax Validation", + "isValid": true + }, + { + "validationName": "Package Run Validation", + "isValid": true + } + ], + "tests": [ + { + "testType": "OutOfBoxTest", + "validationRunStatus": "Passed", + "isActive": true, + "commands": [ + { + "name": "Install", + "action": "Install", + "contentType": "Path", + "content": "app/scripts/install/job.ps1", + "runElevated": true, + "restartAfter": true, + "maxRunTime": 1800, + "runAsInteractive": true, + "alwaysRun": true, + "applyUpdateBefore": false + }, + { + "name": "Launch", + "action": "Launch", + "contentType": "Path", + "content": "app/scripts/launch/job.ps1", + "runElevated": true, + "restartAfter": false, + "maxRunTime": 1800, + "runAsInteractive": true, + "alwaysRun": false, + "applyUpdateBefore": true + }, + { + "name": "Close", + "action": "Close", + "contentType": "Path", + "content": "app/scripts/close/job.ps1", + "runElevated": true, + "restartAfter": false, + "maxRunTime": 1800, + "runAsInteractive": true, + "alwaysRun": false, + "applyUpdateBefore": false + }, + { + "name": "Uninstall", + "action": "Uninstall", + "contentType": "Path", + "content": "app/scripts/uninstall/job.ps1", + "runElevated": true, + "restartAfter": false, + "maxRunTime": 1800, + "runAsInteractive": true, + "alwaysRun": true, + "applyUpdateBefore": false + } + ] + } + ] + } + } + } + } +} diff --git a/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/PackageDelete.json b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/PackageDelete.json new file mode 100644 index 000000000000..3e1e8e761793 --- /dev/null +++ b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/PackageDelete.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "476f61a4-952c-422a-b4db-568a828f35df", + "resourceGroupName": "contoso-rg1", + "testBaseAccountName": "contoso-testBaseAccount1", + "packageName": "contoso-package2", + "api-version": "2020-12-16-preview" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1/packages/contoso-package2/operationResults/dGVjaGVkX01hbmFnZVJvbGVfNWRiNGI3Ng==?api-version=2020-12-16-preview", + "Location": "https://management.azure.com/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1/packages/contoso-package2/operationResults/dGVjaGVkX01hbmFnZVJvbGVfNWRiNGI3Ng==?api-version=2020-12-16-preview" + } + }, + "204": {} + } +} diff --git a/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/PackageGet.json b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/PackageGet.json new file mode 100644 index 000000000000..c1f10d59ef5f --- /dev/null +++ b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/PackageGet.json @@ -0,0 +1,109 @@ +{ + "parameters": { + "subscriptionId": "476f61a4-952c-422a-b4db-568a828f35df", + "resourceGroupName": "contoso-rg1", + "testBaseAccountName": "contoso-testBaseAccount1", + "packageName": "contoso-package2", + "api-version": "2020-12-16-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1/packages/contoso-package2", + "name": "contoso-package2", + "type": "Microsoft.TestBase/testBaseAccounts/packages", + "location": "westus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "applicationName": "contoso-package2", + "version": "1.0.0", + "testTypes": [ + "OutOfBoxTest" + ], + "targetOSList": [ + { + "osUpdateType": "Security updates", + "targetOSs": [ + "Windows 10 2004", + "Windows 10 1903" + ] + } + ], + "packageStatus": "Ready", + "lastModifiedTime": "2020-12-28T17:30:00Z", + "flightingRing": "Insider Beta Channel", + "isEnabled": true, + "blobPath": "storageAccountPath/package.zip", + "validationResults": [ + { + "validationName": "Syntax Validation", + "isValid": true + }, + { + "validationName": "Package Run Validation", + "isValid": true + } + ], + "tests": [ + { + "testType": "OutOfBoxTest", + "validationRunStatus": "Passed", + "isActive": true, + "commands": [ + { + "name": "Install", + "action": "Install", + "contentType": "Path", + "content": "app/scripts/install/job.ps1", + "runElevated": true, + "restartAfter": true, + "maxRunTime": 1800, + "runAsInteractive": true, + "alwaysRun": true, + "applyUpdateBefore": false + }, + { + "name": "Launch", + "action": "Launch", + "contentType": "Path", + "content": "app/scripts/launch/job.ps1", + "runElevated": true, + "restartAfter": false, + "maxRunTime": 1800, + "runAsInteractive": true, + "alwaysRun": false, + "applyUpdateBefore": true + }, + { + "name": "Close", + "action": "Close", + "contentType": "Path", + "content": "app/scripts/close/job.ps1", + "runElevated": true, + "restartAfter": false, + "maxRunTime": 1800, + "runAsInteractive": true, + "alwaysRun": false, + "applyUpdateBefore": false + }, + { + "name": "Uninstall", + "action": "Uninstall", + "contentType": "Path", + "content": "app/scripts/uninstall/job.ps1", + "runElevated": true, + "restartAfter": false, + "maxRunTime": 1800, + "runAsInteractive": true, + "alwaysRun": true, + "applyUpdateBefore": false + } + ] + } + ] + } + } + } + } +} diff --git a/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/PackageGetDownloadURL.json b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/PackageGetDownloadURL.json new file mode 100644 index 000000000000..3e0f8579c0f2 --- /dev/null +++ b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/PackageGetDownloadURL.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "476f61a4-952c-422a-b4db-568a828f35df", + "resourceGroupName": "contoso-rg1", + "testBaseAccountName": "contoso-testBaseAccount1", + "packageName": "contoso-package2", + "api-version": "2020-12-16-preview" + }, + "responses": { + "200": { + "body": { + "downloadUrl": "some URL", + "expirationTime": "2021-01-10T06:00:00Z" + } + } + } +} diff --git a/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/PackageHardDelete.json b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/PackageHardDelete.json new file mode 100644 index 000000000000..3e1e8e761793 --- /dev/null +++ b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/PackageHardDelete.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "476f61a4-952c-422a-b4db-568a828f35df", + "resourceGroupName": "contoso-rg1", + "testBaseAccountName": "contoso-testBaseAccount1", + "packageName": "contoso-package2", + "api-version": "2020-12-16-preview" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1/packages/contoso-package2/operationResults/dGVjaGVkX01hbmFnZVJvbGVfNWRiNGI3Ng==?api-version=2020-12-16-preview", + "Location": "https://management.azure.com/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1/packages/contoso-package2/operationResults/dGVjaGVkX01hbmFnZVJvbGVfNWRiNGI3Ng==?api-version=2020-12-16-preview" + } + }, + "204": {} + } +} diff --git a/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/PackageUpdate.json b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/PackageUpdate.json new file mode 100644 index 000000000000..1f9483c35488 --- /dev/null +++ b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/PackageUpdate.json @@ -0,0 +1,194 @@ +{ + "parameters": { + "subscriptionId": "476f61a4-952c-422a-b4db-568a828f35df", + "resourceGroupName": "contoso-rg1", + "testBaseAccountName": "contoso-testBaseAccount1", + "packageName": "contoso-package2", + "api-version": "2020-12-16-preview", + "parameters": { + "tags": {}, + "properties": { + "targetOSList": [ + { + "osUpdateType": "Security updates", + "targetOSs": [ + "Windows 10 2004", + "Windows 10 1903" + ] + } + ], + "flightingRing": "Insider Beta Channel", + "isEnabled": false, + "blobPath": "storageAccountPath/package.zip", + "tests": [ + { + "testType": "OutOfBoxTest", + "isActive": true, + "commands": [ + { + "name": "Install", + "action": "Install", + "contentType": "Path", + "content": "app/scripts/install/job.ps1", + "runElevated": true, + "restartAfter": true, + "maxRunTime": 1800, + "runAsInteractive": true, + "alwaysRun": true, + "applyUpdateBefore": false + }, + { + "name": "Launch", + "action": "Launch", + "contentType": "Path", + "content": "app/scripts/launch/job.ps1", + "runElevated": true, + "restartAfter": false, + "maxRunTime": 1800, + "runAsInteractive": true, + "alwaysRun": false, + "applyUpdateBefore": true + }, + { + "name": "Close", + "action": "Close", + "contentType": "Path", + "content": "app/scripts/close/job.ps1", + "runElevated": true, + "restartAfter": false, + "maxRunTime": 1800, + "runAsInteractive": true, + "alwaysRun": false, + "applyUpdateBefore": false + }, + { + "name": "Uninstall", + "action": "Uninstall", + "contentType": "Path", + "content": "app/scripts/uninstall/job.ps1", + "runElevated": true, + "restartAfter": false, + "maxRunTime": 1800, + "runAsInteractive": true, + "alwaysRun": true, + "applyUpdateBefore": false + } + ] + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1/packages/contoso-package2", + "name": "contoso-package2", + "type": "Microsoft.TestBase/testBaseAccounts/packages", + "location": "westus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "applicationName": "contoso-package2", + "version": "1.0.0", + "testTypes": [ + "OutOfBoxTest" + ], + "targetOSList": [ + { + "osUpdateType": "Security updates", + "targetOSs": [ + "Windows 10 2004", + "Windows 10 1903" + ] + } + ], + "packageStatus": "Ready", + "lastModifiedTime": "2020-12-28T17:30:00Z", + "flightingRing": "Insider Beta Channel", + "isEnabled": false, + "blobPath": "storageAccountPath/package.zip", + "validationResults": [ + { + "validationName": "Syntax Validation", + "isValid": true + }, + { + "validationName": "Package Run Validation", + "isValid": true + } + ], + "tests": [ + { + "testType": "OutOfBoxTest", + "validationRunStatus": "Passed", + "isActive": true, + "commands": [ + { + "name": "Install", + "action": "Install", + "contentType": "Path", + "content": "app/scripts/install/job.ps1", + "runElevated": true, + "restartAfter": true, + "maxRunTime": 1800, + "runAsInteractive": true, + "alwaysRun": true, + "applyUpdateBefore": false + }, + { + "name": "Launch", + "action": "Launch", + "contentType": "Path", + "content": "app/scripts/launch/job.ps1", + "runElevated": true, + "restartAfter": false, + "maxRunTime": 1800, + "runAsInteractive": true, + "alwaysRun": false, + "applyUpdateBefore": true + }, + { + "name": "Close", + "action": "Close", + "contentType": "Path", + "content": "app/scripts/close/job.ps1", + "runElevated": true, + "restartAfter": false, + "maxRunTime": 1800, + "runAsInteractive": true, + "alwaysRun": false, + "applyUpdateBefore": false + }, + { + "name": "Uninstall", + "action": "Uninstall", + "contentType": "Path", + "content": "app/scripts/uninstall/job.ps1", + "runElevated": true, + "restartAfter": false, + "maxRunTime": 1800, + "runAsInteractive": true, + "alwaysRun": true, + "applyUpdateBefore": false + } + ] + } + ] + } + } + }, + "201": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1/packages/contoso-package2/operationResults/dGVjaGVkX01hbmFnZVJvbGVfNWRiNGI3Ng==?api-version=2020-12-16-preview", + "Location": "https://management.azure.com/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1/packages/contoso-package2/operationResults/dGVjaGVkX01hbmFnZVJvbGVfNWRiNGI3Ng==?api-version=2020-12-16-preview" + } + }, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1/packages/contoso-package2/operationResults/dGVjaGVkX01hbmFnZVJvbGVfNWRiNGI3Ng==?api-version=2020-12-16-preview", + "Location": "https://management.azure.com/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1/packages/contoso-package2/operationResults/dGVjaGVkX01hbmFnZVJvbGVfNWRiNGI3Ng==?api-version=2020-12-16-preview" + } + } + } +} diff --git a/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/PackagesList.json b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/PackagesList.json new file mode 100644 index 000000000000..29c9a54c8583 --- /dev/null +++ b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/PackagesList.json @@ -0,0 +1,248 @@ +{ + "parameters": { + "subscriptionId": "476f61a4-952c-422a-b4db-568a828f35df", + "resourceGroupName": "contoso-rg1", + "testBaseAccountName": "contoso-testBaseAccount1", + "api-version": "2020-12-16-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1/packages/contoso-package1", + "name": "contoso-package1", + "type": "Microsoft.TestBase/testBaseAccounts/packages", + "location": "westus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "applicationName": "contoso-package1", + "version": "1.0.0", + "testTypes": [ + "OutOfBoxTest", + "FunctionalTest" + ], + "targetOSList": [ + { + "osUpdateType": "Security updates", + "targetOSs": [ + "Windows 10 2004", + "Windows 10 1903" + ] + }, + { + "osUpdateType": "Feature updates", + "targetOSs": [ + "Windows 10 2004", + "Windows 10 1903", + "Windows 10 1809" + ] + } + ], + "packageStatus": "Ready", + "lastModifiedTime": "2020-12-28T17:30:00Z", + "flightingRing": "Insider Beta Channel", + "isEnabled": true, + "blobPath": "storageAccountPath/package.zip", + "validationResults": [ + { + "validationName": "Syntax Validation", + "isValid": true + }, + { + "validationName": "Package Run Validation", + "isValid": true + } + ], + "tests": [ + { + "testType": "OutOfBoxTest", + "validationRunStatus": "Passed", + "isActive": true, + "commands": [ + { + "name": "Install", + "action": "Install", + "contentType": "Path", + "content": "app/scripts/install/job.ps1", + "runElevated": true, + "restartAfter": true, + "maxRunTime": 1800, + "runAsInteractive": true, + "alwaysRun": true, + "applyUpdateBefore": false + }, + { + "name": "Launch", + "action": "Launch", + "contentType": "Path", + "content": "app/scripts/launch/job.ps1", + "runElevated": true, + "restartAfter": false, + "maxRunTime": 1800, + "runAsInteractive": true, + "alwaysRun": false, + "applyUpdateBefore": true + }, + { + "name": "Close", + "action": "Close", + "contentType": "Path", + "content": "app/scripts/close/job.ps1", + "runElevated": true, + "restartAfter": false, + "maxRunTime": 1800, + "runAsInteractive": true, + "alwaysRun": false, + "applyUpdateBefore": false + }, + { + "name": "Uninstall", + "action": "Uninstall", + "contentType": "Path", + "content": "app/scripts/uninstall/job.ps1", + "runElevated": true, + "restartAfter": false, + "maxRunTime": 1800, + "runAsInteractive": true, + "alwaysRun": true, + "applyUpdateBefore": false + } + ] + }, + { + "testType": "FunctionalTest", + "validationRunStatus": "Passed", + "isActive": true, + "commands": [ + { + "name": "Custom1", + "action": "Custom", + "contentType": "Path", + "content": "app/scripts/custom/custom1.ps1", + "runElevated": true, + "restartAfter": false, + "maxRunTime": 1800, + "runAsInteractive": true, + "alwaysRun": true, + "applyUpdateBefore": false + }, + { + "name": "Custom2", + "action": "Custom", + "contentType": "Path", + "content": "app/scripts/custom/custom2.ps1", + "runElevated": true, + "restartAfter": false, + "maxRunTime": 1800, + "runAsInteractive": true, + "alwaysRun": true, + "applyUpdateBefore": true + } + ] + } + ] + } + }, + { + "id": "/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1/packages/contoso-package2", + "name": "contoso-package2", + "type": "Microsoft.TestBase/testBaseAccounts/packages", + "location": "westus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "applicationName": "contoso-package2", + "version": "1.0.0", + "testTypes": [ + "OutOfBoxTest" + ], + "targetOSList": [ + { + "osUpdateType": "Security updates", + "targetOSs": [ + "Windows 10 2004", + "Windows 10 1903" + ] + } + ], + "packageStatus": "Ready", + "lastModifiedTime": "2020-12-28T17:30:00Z", + "flightingRing": "Insider Beta Channel", + "isEnabled": true, + "blobPath": "storageAccountPath/package.zip", + "validationResults": [ + { + "validationName": "Syntax Validation", + "isValid": true + }, + { + "validationName": "Package Run Validation", + "isValid": true + } + ], + "tests": [ + { + "testType": "OutOfBoxTest", + "validationRunStatus": "Passed", + "isActive": true, + "commands": [ + { + "name": "Install", + "action": "Install", + "contentType": "Path", + "content": "app/scripts/install/job.ps1", + "runElevated": true, + "restartAfter": true, + "maxRunTime": 1800, + "runAsInteractive": true, + "alwaysRun": true, + "applyUpdateBefore": false + }, + { + "name": "Launch", + "action": "Launch", + "contentType": "Path", + "content": "app/scripts/launch/job.ps1", + "runElevated": true, + "restartAfter": false, + "maxRunTime": 1800, + "runAsInteractive": true, + "alwaysRun": false, + "applyUpdateBefore": true + }, + { + "name": "Close", + "action": "Close", + "contentType": "Path", + "content": "app/scripts/close/job.ps1", + "runElevated": true, + "restartAfter": false, + "maxRunTime": 1800, + "runAsInteractive": true, + "alwaysRun": false, + "applyUpdateBefore": false + }, + { + "name": "Uninstall", + "action": "Uninstall", + "contentType": "Path", + "content": "app/scripts/uninstall/job.ps1", + "runElevated": true, + "restartAfter": false, + "maxRunTime": 1800, + "runAsInteractive": true, + "alwaysRun": true, + "applyUpdateBefore": false + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/TestBaseAccountCreate.json b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/TestBaseAccountCreate.json new file mode 100644 index 000000000000..597968ebebef --- /dev/null +++ b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/TestBaseAccountCreate.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "subscriptionId": "476f61a4-952c-422a-b4db-568a828f35df", + "resourceGroupName": "contoso-rg1", + "testBaseAccountName": "contoso-testBaseAccount1", + "api-version": "2020-12-16-preview", + "parameters": { + "location": "westus", + "properties": { + "sku": { + "name": "B0", + "tier": "Basic" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1", + "name": "contoso-testBaseAccount1", + "type": "Microsoft.TestBase/testBaseAccounts", + "location": "westus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "B0", + "tier": "Basic", + "capabilities": [ + { + "name": "SLA", + "value": "99.9%" + }, + { + "name": "maximumPackageCount", + "value": "5" + }, + { + "name": "packageMaximumRunSeconds", + "value": "3600" + } + ] + }, + "accessLevel": "StandardAccess" + } + } + }, + "201": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1/operationResults/dGVjaGVkX01hbmFnZVJvbGVfNWRiNGI3Ng==?api-version=2020-12-16-preview" + }, + "body": { + "id": "/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1", + "name": "contoso-testBaseAccount1", + "type": "Microsoft.TestBase/testBaseAccounts", + "location": "westus", + "tags": {}, + "properties": { + "provisioningState": "Creating", + "sku": { + "name": "B0", + "tier": "Basic", + "capabilities": [ + { + "name": "SLA", + "value": "99.9%" + }, + { + "name": "maximumPackageCount", + "value": "5" + }, + { + "name": "packageMaximumRunSeconds", + "value": "3600" + } + ] + }, + "accessLevel": "StandardAccess" + } + } + } + } +} diff --git a/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/TestBaseAccountDelete.json b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/TestBaseAccountDelete.json new file mode 100644 index 000000000000..ba011f665c69 --- /dev/null +++ b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/TestBaseAccountDelete.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "476f61a4-952c-422a-b4db-568a828f35df", + "resourceGroupName": "contoso-rg1", + "testBaseAccountName": "contoso-testBaseAccount1", + "api-version": "2020-12-16-preview" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1/operationResults/dGVjaGVkX01hbmFnZVJvbGVfNWRiNGI3Ng==?api-version=2020-12-16-preview", + "Location": "https://management.azure.com/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1/operationResults/dGVjaGVkX01hbmFnZVJvbGVfNWRiNGI3Ng==?api-version=2020-12-16-preview" + } + }, + "204": {} + } +} diff --git a/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/TestBaseAccountGet.json b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/TestBaseAccountGet.json new file mode 100644 index 000000000000..be4c84df7571 --- /dev/null +++ b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/TestBaseAccountGet.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "476f61a4-952c-422a-b4db-568a828f35df", + "resourceGroupName": "contoso-rg1", + "testBaseAccountName": "contoso-testBaseAccount1", + "api-version": "2020-12-16-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1", + "name": "contoso-testBaseAccount1", + "type": "Microsoft.TestBase/testBaseAccounts", + "location": "westus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "B0", + "tier": "Basic", + "capabilities": [ + { + "name": "SLA", + "value": "99.9%" + }, + { + "name": "maximumPackageCount", + "value": "5" + }, + { + "name": "packageMaximumRunSeconds", + "value": "3600" + } + ] + }, + "accessLevel": "EarlyAccess" + } + } + } + } +} diff --git a/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/TestBaseAccountGetFileUploadUrl.json b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/TestBaseAccountGetFileUploadUrl.json new file mode 100644 index 000000000000..b7c1b0f6c27f --- /dev/null +++ b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/TestBaseAccountGetFileUploadUrl.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "476f61a4-952c-422a-b4db-568a828f35df", + "resourceGroupName": "contoso-rg1", + "testBaseAccountName": "contoso-testBaseAccount1", + "api-version": "2020-12-16-preview", + "parameters": { + "blobName": "package.zip" + } + }, + "responses": { + "200": { + "body": { + "uploadUrl": "https://uslwestusdevsa.blob.core.windows.net/usltest/temp/20c0d7e0-1bb6-477f-bc04-57c734453000/token", + "blobPath": "https://uslwestusdevsa.blob.core.windows.net/usltest/temp/20c0d7e0-1bb6-477f-bc04-57c734453000/package.zip" + } + } + } +} diff --git a/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/TestBaseAccountOffboard.json b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/TestBaseAccountOffboard.json new file mode 100644 index 000000000000..ba011f665c69 --- /dev/null +++ b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/TestBaseAccountOffboard.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "476f61a4-952c-422a-b4db-568a828f35df", + "resourceGroupName": "contoso-rg1", + "testBaseAccountName": "contoso-testBaseAccount1", + "api-version": "2020-12-16-preview" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1/operationResults/dGVjaGVkX01hbmFnZVJvbGVfNWRiNGI3Ng==?api-version=2020-12-16-preview", + "Location": "https://management.azure.com/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1/operationResults/dGVjaGVkX01hbmFnZVJvbGVfNWRiNGI3Ng==?api-version=2020-12-16-preview" + } + }, + "204": {} + } +} diff --git a/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/TestBaseAccountSKUsList.json b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/TestBaseAccountSKUsList.json new file mode 100644 index 000000000000..3bded9783410 --- /dev/null +++ b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/TestBaseAccountSKUsList.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "476f61a4-952c-422a-b4db-568a828f35df", + "api-version": "2020-12-16-preview" + }, + "responses": { + "200": { + "body": { + "nextLink": "https://management.azure.com/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/providers/Microsoft.TestBase/skus?api-version=2020-12-16-preview&$skipToken=dummySkipToken", + "value": [ + { + "resourceType": "testBaseAccounts", + "name": "B0", + "tier": "Basic", + "locations": [ + "global" + ], + "capabilities": [] + }, + { + "resourceType": "testBaseAccounts", + "name": "S0", + "tier": "Standard", + "locations": [ + "global" + ], + "capabilities": [] + } + ] + } + } + } +} diff --git a/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/TestBaseAccountUpdate.json b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/TestBaseAccountUpdate.json new file mode 100644 index 000000000000..fd7aed735237 --- /dev/null +++ b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/TestBaseAccountUpdate.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subscriptionId": "476f61a4-952c-422a-b4db-568a828f35df", + "resourceGroupName": "contoso-rg1", + "testBaseAccountName": "contoso-testBaseAccount1", + "api-version": "2020-12-16-preview", + "parameters": { + "properties": { + "sku": { + "name": "B0", + "tier": "Basic" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1", + "name": "contoso-testBaseAccount1", + "type": "Microsoft.TestBase/testBaseAccounts", + "location": "westus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "B0", + "tier": "Basic", + "capabilities": [ + { + "name": "SLA", + "value": "99.9%" + }, + { + "name": "maximumPackageCount", + "value": "5" + }, + { + "name": "packageMaximumRunSeconds", + "value": "3600" + } + ] + }, + "accessLevel": "EarlyAccess" + } + } + }, + "201": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1/operationResults/dGVjaGVkX01hbmFnZVJvbGVfNWRiNGI3Ng==?api-version=2020-12-16-preview", + "Location": "https://management.azure.com/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1/operationResults/dGVjaGVkX01hbmFnZVJvbGVfNWRiNGI3Ng==?api-version=2020-12-16-preview" + } + }, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1/operationResults/dGVjaGVkX01hbmFnZVJvbGVfNWRiNGI3Ng==?api-version=2020-12-16-preview", + "Location": "https://management.azure.com/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1/operationResults/dGVjaGVkX01hbmFnZVJvbGVfNWRiNGI3Ng==?api-version=2020-12-16-preview" + } + } + } +} diff --git a/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/TestBaseAccountUsagesList.json b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/TestBaseAccountUsagesList.json new file mode 100644 index 000000000000..fb869bcde76c --- /dev/null +++ b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/TestBaseAccountUsagesList.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "476f61a4-952c-422a-b4db-568a828f35df", + "resourceGroupName": "contoso-rg1", + "testBaseAccountName": "contoso-testBaseAccount1", + "api-version": "2020-12-16-preview" + }, + "responses": { + "200": { + "body": { + "nextLink": "https://management.azure.com/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/providers/Microsoft.TestBase/contoso-testBaseAccount1/usages?api-version=2020-12-16-preview&$skipToken=dummySkipToken", + "value": [ + { + "id": "/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1/usages/contoso-package1-usage", + "name": { + "value": "contoso-package1-usage", + "localizedValue": "contoso-package1-usage" + }, + "unit": "Seconds", + "limit": -1, + "currentValue": 7531 + }, + { + "id": "/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1/usages/contoso-package2-usage", + "name": { + "value": "contoso-package2-usage", + "localizedValue": "contoso-package2-usage" + }, + "unit": "Seconds", + "limit": -1, + "currentValue": 3157 + } + ] + } + } + } +} diff --git a/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/TestBaseAccountsList.json b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/TestBaseAccountsList.json new file mode 100644 index 000000000000..c2b764d5f20f --- /dev/null +++ b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/TestBaseAccountsList.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "subscriptionId": "476f61a4-952c-422a-b4db-568a828f35df", + "resourceGroupName": "contoso-rg1", + "api-version": "2020-12-16-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1", + "name": "contoso-testBaseAccount1", + "type": "Microsoft.TestBase/testBaseAccounts", + "location": "westus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "B0", + "tier": "Basic", + "capabilities": [ + { + "name": "SLA", + "value": "99.9%" + }, + { + "name": "maximumPackageCount", + "value": "5" + }, + { + "name": "packageMaximumRunSeconds", + "value": "3600" + } + ] + }, + "accessLevel": "EarlyAccess" + } + }, + { + "id": "/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg2/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount2", + "name": "contoso-testBaseAccount2", + "type": "Microsoft.TestBase/testBaseAccounts", + "location": "eastus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "S0", + "tier": "Standard", + "capabilities": [ + { + "name": "SLA", + "value": "99.999%" + }, + { + "name": "maximumPackageCount", + "value": "100" + }, + { + "name": "packageMaximumRunSeconds", + "value": "10800" + } + ] + }, + "accessLevel": "EarlyAccess" + } + } + ] + } + } + } +} diff --git a/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/TestBaseAccountsListBySubscription.json b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/TestBaseAccountsListBySubscription.json new file mode 100644 index 000000000000..b572382fadee --- /dev/null +++ b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/TestBaseAccountsListBySubscription.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "subscriptionId": "476f61a4-952c-422a-b4db-568a828f35df", + "api-version": "2020-12-16-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1", + "name": "contoso-testBaseAccount1", + "type": "Microsoft.TestBase/testBaseAccounts", + "location": "westus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "B0", + "tier": "Basic", + "capabilities": [ + { + "name": "SLA", + "value": "99.9%" + }, + { + "name": "maximumPackageCount", + "value": "5" + }, + { + "name": "packageMaximumRunSeconds", + "value": "3600" + } + ] + }, + "accessLevel": "EarlyAccess" + } + }, + { + "id": "/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg2/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount2", + "name": "contoso-testBaseAccount2", + "type": "Microsoft.TestBase/testBaseAccounts", + "location": "eastus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "S0", + "tier": "Standard", + "capabilities": [ + { + "name": "SLA", + "value": "99.999%" + }, + { + "name": "maximumPackageCount", + "value": "100" + }, + { + "name": "packageMaximumRunSeconds", + "value": "10800" + } + ] + }, + "accessLevel": "EarlyAccess" + } + } + ] + } + } + } +} diff --git a/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/TestResultGet.json b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/TestResultGet.json new file mode 100644 index 000000000000..88f932c94265 --- /dev/null +++ b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/TestResultGet.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "subscriptionId": "476f61a4-952c-422a-b4db-568a828f35df", + "resourceGroupName": "contoso-rg1", + "testBaseAccountName": "contoso-testBaseAccount1", + "packageName": "contoso-package2", + "testResultName": "Windows-10-1909-99b1f80d-03a9-4148-997f-806ba5bac8e0", + "api-version": "2020-12-16-preview" + }, + "responses": { + "200": { + "body": { + "name": "Windows-10-1909-99b1f80d-03a9-4148-997f-806ba5bac8e0", + "id": "/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1/packages/contoso-package2/testResults/Windows-10-1909-99b1f80d-03a9-4148-997f-806ba5bac8e0", + "type": "Microsoft.TestBase/testBaseAccounts/packages/testResults", + "properties": { + "baselineTestResultId": "/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1/packages/contoso-package2/testResults/anotherId", + "packageId": "b5ed1bcc-e74c-40d8-82f2-1773f616f93e", + "applicationName": "contoso-package2", + "applicationVersion": "1.0.0", + "osName": "Windows 10 1909", + "releaseName": "2020.12B", + "releaseVersionDate": "2020-12-28T17:30:00Z", + "buildRevision": "505", + "testType": "Out of box test", + "testRunTime": "00:21:30", + "isDownloadDataAvailable": true, + "executionStatus": "Succeeded", + "grade": "Pass", + "kbNumber": "KB1984839", + "packageVersion": "3.0.1", + "analysisSummaries": [ + { + "name": "Memory Regression Analysis Result", + "analysisStatus": "Succeeded", + "grade": "Pass" + }, + { + "name": "CPU Regression Analysis Result", + "analysisStatus": "Succeeded", + "grade": "Pass" + }, + { + "name": "Memory Utilization Analysis Result", + "analysisStatus": "Succeeded", + "grade": "Pass" + }, + { + "name": "CPU Utilization Analysis Result", + "analysisStatus": "Succeeded", + "grade": "Pass" + } + ] + } + } + } + } +} diff --git a/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/TestResultGetDownloadURL.json b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/TestResultGetDownloadURL.json new file mode 100644 index 000000000000..64381584b16c --- /dev/null +++ b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/TestResultGetDownloadURL.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "476f61a4-952c-422a-b4db-568a828f35df", + "resourceGroupName": "contoso-rg1", + "testBaseAccountName": "contoso-testBaseAccount1", + "packageName": "contoso-package2", + "testResultName": "Windows-10-1909-99b1f80d-03a9-4148-997f-806ba5bac8e0", + "api-version": "2020-12-16-preview" + }, + "responses": { + "200": { + "body": { + "downloadUrl": "test result download URL", + "expirationTime": "2021-01-10T06:00:00Z" + } + } + } +} diff --git a/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/TestResultGetVideoDownloadURL.json b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/TestResultGetVideoDownloadURL.json new file mode 100644 index 000000000000..e61c21fa8571 --- /dev/null +++ b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/TestResultGetVideoDownloadURL.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "476f61a4-952c-422a-b4db-568a828f35df", + "resourceGroupName": "contoso-rg1", + "testBaseAccountName": "contoso-testBaseAccount1", + "packageName": "contoso-package2", + "testResultName": "Windows-10-1909-99b1f80d-03a9-4148-997f-806ba5bac8e0", + "api-version": "2020-12-16-preview" + }, + "responses": { + "200": { + "body": { + "downloadUrl": "test result video download URL", + "expirationTime": "2021-01-10T06:00:00Z" + } + } + } +} diff --git a/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/TestResultsList.json b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/TestResultsList.json new file mode 100644 index 000000000000..1956ff18f2b0 --- /dev/null +++ b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/TestResultsList.json @@ -0,0 +1,107 @@ +{ + "parameters": { + "subscriptionId": "476f61a4-952c-422a-b4db-568a828f35df", + "resourceGroupName": "contoso-rg1", + "testBaseAccountName": "contoso-testBaseAccount1", + "packageName": "contoso-package2", + "osUpdateType": "SecurityUpdate", + "$filter": "osName eq 'Windows 10 2004' and releaseName eq '2020.11B'", + "api-version": "2020-12-16-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Windows-10-2004-8e8e3200-284b-4a99-8c30-cb46c54d4c1e", + "id": "/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1/packages/contoso-package2/testResults/Windows-10-2004-8e8e3200-284b-4a99-8c30-cb46c54d4c1e", + "type": "Microsoft.TestBase/testBaseAccounts/packages/testResults", + "properties": { + "baselineTestResultId": "/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1/packages/contoso-package2/testResults/anotherId", + "packageId": "b5ed1bcc-e74c-40d8-82f2-1773f616f93e", + "applicationName": "contoso-package2", + "applicationVersion": "1.0.0", + "osName": "Windows 10 2004", + "releaseName": "2020.11B", + "releaseVersionDate": "2020-11-28T17:30:00Z", + "buildRevision": "478", + "testType": "Out of box test", + "testRunTime": "00:21:30", + "isDownloadDataAvailable": true, + "executionStatus": "Succeeded", + "grade": "Pass", + "kbNumber": "KB1984839", + "packageVersion": "3.0.1", + "analysisSummaries": [ + { + "name": "Memory Regression Analysis Result", + "analysisStatus": "Succeeded", + "grade": "Pass" + }, + { + "name": "CPU Regression Analysis Result", + "analysisStatus": "Succeeded", + "grade": "Pass" + }, + { + "name": "Memory Utilization Analysis Result", + "analysisStatus": "Succeeded", + "grade": "Pass" + }, + { + "name": "CPU Utilization Analysis Result", + "analysisStatus": "Succeeded", + "grade": "Pass" + } + ] + } + }, + { + "name": "Windows-10-2004-d19baae0-9ab4-432b-a752-878343fa4481", + "id": "/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1/packages/contoso-package2/testResults/Windows-10-2004-d19baae0-9ab4-432b-a752-878343fa4481", + "type": "Microsoft.TestBase/testBaseAccounts/packages/testResults", + "properties": { + "baselineTestResultId": "/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1/packages/contoso-package2/testResults/anotherId", + "packageId": "b5ed1bcc-e74c-40d8-82f2-1773f616f93e", + "applicationName": "contoso-package2", + "applicationVersion": "1.0.0", + "osName": "Windows 10 2004", + "releaseName": "2020.11B", + "releaseVersionDate": "2020-11-28T17:30:00Z", + "buildRevision": "309", + "testType": "Out of box test", + "testRunTime": "01:00:00", + "isDownloadDataAvailable": false, + "executionStatus": "Failed", + "grade": "Fail", + "kbNumber": "KB1784831", + "packageVersion": "3.0.1", + "analysisSummaries": [ + { + "name": "Memory Regression Analysis Result", + "analysisStatus": "NotAvailable", + "grade": "NotAvailable" + }, + { + "name": "CPU Regression Analysis Result", + "analysisStatus": "NotAvailable", + "grade": "NotAvailable" + }, + { + "name": "Memory Utilization Analysis Result", + "analysisStatus": "NotAvailable", + "grade": "NotAvailable" + }, + { + "name": "CPU Utilization Analysis Result", + "analysisStatus": "NotAvailable", + "grade": "NotAvailable" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/TestSummariesList.json b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/TestSummariesList.json new file mode 100644 index 000000000000..7b812af9830e --- /dev/null +++ b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/TestSummariesList.json @@ -0,0 +1,180 @@ +{ + "parameters": { + "subscriptionId": "476f61a4-952c-422a-b4db-568a828f35df", + "resourceGroupName": "contoso-rg1", + "testBaseAccountName": "contoso-testBaseAccount1", + "api-version": "2020-12-16-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "contoso-package1-38960b32-3541-4cf1-8ccc-fd22774395cc", + "id": "/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1/testSummaries/contoso-package1-38960b32-3541-4cf1-8ccc-fd22774395cc", + "type": "Microsoft.TestBase/testBaseAccounts/testSummaries", + "properties": { + "testSummaryId": "38960b32-3541-4cf1-8ccc-fd22774395cc", + "packageId": "57199102-9738-42e0-9fec-db7709d62a71", + "applicationName": "contoso-package1", + "applicationVersion": "1.0.0", + "executionStatus": "Succeeded", + "grade": "Pass", + "testRunTime": "00:43:21", + "featureUpdatesTestSummary": { + "executionStatus": "Succeeded", + "grade": "Pass", + "testRunTime": "00:33:21", + "osUpdateTestSummaries": [ + { + "osName": "Windows 10 1909", + "releaseName": "2020.12.B", + "buildVersion": "513", + "executionStatus": "Succeeded", + "grade": "Pass", + "testRunTime": "00:43:21", + "testType": "OutOfBoxTest" + }, + { + "osName": "Windows 10 1903", + "releaseName": "2020.11.B", + "buildVersion": "765", + "executionStatus": "Succeeded", + "grade": "Pass", + "testRunTime": "00:13:28", + "testType": "OutOfBoxTest" + }, + { + "osName": "Windows 10 1809", + "releaseName": "2020.11.B", + "buildVersion": "313", + "executionStatus": "Succeeded", + "grade": "Pass", + "testRunTime": "00:42:08", + "testType": "OutOfBoxTest" + } + ] + }, + "securityUpdatesTestSummary": { + "executionStatus": "Succeeded", + "grade": "Pass", + "testRunTime": "00:43:21", + "osUpdateTestSummaries": [ + { + "osName": "Windows 10 1909", + "releaseName": "2020.12.B", + "buildVersion": "513", + "executionStatus": "Succeeded", + "grade": "Pass", + "testRunTime": "00:43:21", + "testType": "OutOfBoxTest" + }, + { + "osName": "Windows 10 1903", + "releaseName": "2020.11.B", + "buildVersion": "765", + "executionStatus": "Succeeded", + "grade": "Pass", + "testRunTime": "00:13:28", + "testType": "OutOfBoxTest" + }, + { + "osName": "Windows 10 1809", + "releaseName": "2020.11.B", + "buildVersion": "313", + "executionStatus": "Succeeded", + "grade": "Pass", + "testRunTime": "00:42:08", + "testType": "OutOfBoxTest" + } + ] + } + } + }, + { + "name": "contoso-package2-096bffb5-5d3d-4305-a66a-953372ed6e88", + "id": "/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1/testSummaries/contoso-package2-096bffb5-5d3d-4305-a66a-953372ed6e88", + "type": "Microsoft.TestBase/testBaseAccounts/testSummaries", + "properties": { + "testSummaryId": "096bffb5-5d3d-4305-a66a-953372ed6e88", + "packageId": "b5ed1bcc-e74c-40d8-82f2-1773f616f93e", + "applicationName": "contoso-package2", + "applicationVersion": "1.0.0", + "executionStatus": "Succeeded", + "grade": "Pass", + "testRunTime": "00:43:21", + "featureUpdatesTestSummary": { + "executionStatus": "Succeeded", + "grade": "Pass", + "testRunTime": "00:33:21", + "osUpdateTestSummaries": [ + { + "osName": "Windows 10 1909", + "releaseName": "2020.12.B", + "buildVersion": "513", + "executionStatus": "Succeeded", + "grade": "Pass", + "testRunTime": "00:43:21", + "testType": "FunctionalTest" + }, + { + "osName": "Windows 10 1903", + "releaseName": "2020.11.B", + "buildVersion": "765", + "executionStatus": "Succeeded", + "grade": "Pass", + "testRunTime": "00:13:28", + "testType": "FunctionalTest" + }, + { + "osName": "Windows 10 1809", + "releaseName": "2020.11.B", + "buildVersion": "313", + "executionStatus": "Succeeded", + "grade": "Pass", + "testRunTime": "00:42:08", + "testType": "FunctionalTest" + } + ] + }, + "securityUpdatesTestSummary": { + "executionStatus": "Succeeded", + "grade": "Pass", + "testRunTime": "00:43:21", + "osUpdateTestSummaries": [ + { + "osName": "Windows 10 1909", + "releaseName": "2020.12.B", + "buildVersion": "513", + "executionStatus": "Succeeded", + "grade": "Pass", + "testRunTime": "00:43:21", + "testType": "FunctionalTest" + }, + { + "osName": "Windows 10 1903", + "releaseName": "2020.11.B", + "buildVersion": "765", + "executionStatus": "Succeeded", + "grade": "Pass", + "testRunTime": "00:13:28", + "testType": "FunctionalTest" + }, + { + "osName": "Windows 10 1809", + "releaseName": "2020.11.B", + "buildVersion": "313", + "executionStatus": "Succeeded", + "grade": "Pass", + "testRunTime": "00:42:08", + "testType": "FunctionalTest" + } + ] + } + } + } + ] + } + } + } +} diff --git a/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/TestSummaryGet.json b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/TestSummaryGet.json new file mode 100644 index 000000000000..5da30233e8f3 --- /dev/null +++ b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/TestSummaryGet.json @@ -0,0 +1,95 @@ +{ + "parameters": { + "subscriptionId": "476f61a4-952c-422a-b4db-568a828f35df", + "resourceGroupName": "contoso-rg1", + "testBaseAccountName": "contoso-testBaseAccount1", + "testSummaryName": "contoso-package2-096bffb5-5d3d-4305-a66a-953372ed6e88", + "api-version": "2020-12-16-preview" + }, + "responses": { + "200": { + "body": { + "name": "contoso-package2-096bffb5-5d3d-4305-a66a-953372ed6e88", + "id": "/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg1/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount1/testSummaries/contoso-package2-096bffb5-5d3d-4305-a66a-953372ed6e88", + "type": "Microsoft.TestBase/testBaseAccounts/testSummaries", + "properties": { + "testSummaryId": "096bffb5-5d3d-4305-a66a-953372ed6e88", + "packageId": "b5ed1bcc-e74c-40d8-82f2-1773f616f93e", + "applicationName": "contoso-package2", + "applicationVersion": "1.0.0", + "executionStatus": "Succeeded", + "grade": "Pass", + "testRunTime": "00:43:21", + "featureUpdatesTestSummary": { + "executionStatus": "Succeeded", + "grade": "Pass", + "testRunTime": "00:33:21", + "osUpdateTestSummaries": [ + { + "osName": "Windows 10 1909", + "releaseName": "2020.12.B", + "buildVersion": "513", + "executionStatus": "Succeeded", + "grade": "Pass", + "testRunTime": "00:43:21", + "testType": "OutOfBoxTest" + }, + { + "osName": "Windows 10 1903", + "releaseName": "2020.11.B", + "buildVersion": "765", + "executionStatus": "Succeeded", + "grade": "Pass", + "testRunTime": "00:13:28", + "testType": "OutOfBoxTest" + }, + { + "osName": "Windows 10 1809", + "releaseName": "2020.11.B", + "buildVersion": "313", + "executionStatus": "Succeeded", + "grade": "Pass", + "testRunTime": "00:42:08", + "testType": "OutOfBoxTest" + } + ] + }, + "securityUpdatesTestSummary": { + "executionStatus": "Succeeded", + "grade": "Pass", + "testRunTime": "00:43:21", + "osUpdateTestSummaries": [ + { + "osName": "Windows 10 1909", + "releaseName": "2020.12.B", + "buildVersion": "513", + "executionStatus": "Succeeded", + "grade": "Pass", + "testRunTime": "00:43:21", + "testType": "OutOfBoxTest" + }, + { + "osName": "Windows 10 1903", + "releaseName": "2020.11.B", + "buildVersion": "765", + "executionStatus": "Succeeded", + "grade": "Pass", + "testRunTime": "00:13:28", + "testType": "OutOfBoxTest" + }, + { + "osName": "Windows 10 1809", + "releaseName": "2020.11.B", + "buildVersion": "313", + "executionStatus": "Succeeded", + "grade": "Pass", + "testRunTime": "00:42:08", + "testType": "OutOfBoxTest" + } + ] + } + } + } + } + } +} diff --git a/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/TestTypeGet.json b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/TestTypeGet.json new file mode 100644 index 000000000000..534cb44be8fa --- /dev/null +++ b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/TestTypeGet.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "476f61a4-952c-422a-b4db-568a828f35df", + "resourceGroupName": "contoso-rg", + "testBaseAccountName": "contoso-testBaseAccount", + "testTypeResourceName": "Functional-Test", + "api-version": "2020-12-16-preview" + }, + "responses": { + "200": { + "body": { + "name": "Functional-Test", + "id": "/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount/testTypes/Functional-Test", + "type": "Microsoft.TestBase/testBaseAccounts/testTypes", + "properties": { + "actualTestTypeName": "Functional Test" + } + } + } + } +} diff --git a/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/TestTypesList.json b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/TestTypesList.json new file mode 100644 index 000000000000..676431bc4758 --- /dev/null +++ b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/examples/TestTypesList.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "476f61a4-952c-422a-b4db-568a828f35df", + "resourceGroupName": "contoso-rg", + "testBaseAccountName": "contoso-testBaseAccount", + "api-version": "2020-12-16-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Functional-Test", + "id": "/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount/testTypes/Functional-Test", + "type": "Microsoft.TestBase/testBaseAccounts/testTypes", + "properties": { + "actualTestTypeName": "Functional Test" + } + }, + { + "name": "Out-of-Box-Test", + "id": "/subscriptions/476f61a4-952c-422a-b4db-568a828f35df/resourceGroups/contoso-rg/providers/Microsoft.TestBase/testBaseAccounts/contoso-testBaseAccount/testTypes/Out-of-Box-Test", + "type": "Microsoft.TestBase/testBaseAccounts/testTypes", + "properties": { + "actualTestTypeName": "Out of Box Test" + } + } + ] + } + } + } +} diff --git a/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/testbase.json b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/testbase.json new file mode 100644 index 000000000000..adb9a2370d20 --- /dev/null +++ b/specification/testbase/resource-manager/Microsoft.TestBase/preview/2020-12-16-preview/testbase.json @@ -0,0 +1,4051 @@ +{ + "swagger": "2.0", + "info": { + "title": "REST API for Test Base", + "description": "REST API for Test Base", + "version": "2020-12-16-preview" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.TestBase/skus": { + "get": { + "tags": [ + "Test Base Account" + ], + "operationId": "SKUs_List", + "description": "Lists the available SKUs of Test Base Account in a subscription.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation is completed.", + "schema": { + "$ref": "#/definitions/TestBaseAccountSKUListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "TestBaseAccountSKUsList": { + "$ref": "./examples/TestBaseAccountSKUsList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.TestBase/testBaseAccounts": { + "get": { + "tags": [ + "Test Base Account" + ], + "operationId": "TestBaseAccounts_ListBySubscription", + "description": "Lists all the Test Base Accounts in a subscription. This API is required by ARM guidelines.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/TestBaseAccountIncludeSoftDeletedParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation is completed.", + "schema": { + "$ref": "#/definitions/TestBaseAccountListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "TestBaseAccountsListBySubscription": { + "$ref": "./examples/TestBaseAccountsListBySubscription.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.TestBase/testBaseAccounts": { + "get": { + "tags": [ + "Test Base Account" + ], + "operationId": "TestBaseAccounts_ListByResourceGroup", + "description": "Lists all the Test Base Accounts in a resource group.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/TestBaseAccountIncludeSoftDeletedParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation is completed.", + "schema": { + "$ref": "#/definitions/TestBaseAccountListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "TestBaseAccountsList": { + "$ref": "./examples/TestBaseAccountsList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.TestBase/testBaseAccounts/{testBaseAccountName}": { + "put": { + "tags": [ + "Test Base Account" + ], + "operationId": "TestBaseAccount_Create", + "description": "Create or replace (overwrite/recreate, with potential downtime) a Test Base Account in the specified subscription.", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "parameters": [ + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TestBaseAccountResource" + }, + "description": "Parameters supplied to create a Test Base Account." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/TestBaseAccountNameParameter" + }, + { + "$ref": "#/parameters/TestBaseAccountRestoreSoftDeletedParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Test Base Account was successfully created or updated.", + "schema": { + "$ref": "#/definitions/TestBaseAccountResource" + } + }, + "201": { + "description": "The Test Base Account 'create' or 'update' operation was successfully enqueued. Check provisioningState to see detailed status.", + "headers": { + "Azure-AsyncOperation": { + "description": "URL to query for status of the operation.", + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/TestBaseAccountResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "TestBaseAccountCreate": { + "$ref": "./examples/TestBaseAccountCreate.json" + } + } + }, + "patch": { + "tags": [ + "Test Base Account" + ], + "operationId": "TestBaseAccount_Update", + "description": "Update an existing Test Base Account.", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "parameters": [ + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TestBaseAccountUpdateParameters" + }, + "description": "Parameters supplied to update a Test Base Account." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/TestBaseAccountNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The existing Test Base Account was successfully updated.", + "schema": { + "$ref": "#/definitions/TestBaseAccountResource" + } + }, + "201": { + "description": "The Test Base Account 'update' operation was successfully enqueued. Follow the Location header to poll for final outcome.", + "headers": { + "Azure-AsyncOperation": { + "description": "URL to query for status of the operation.", + "type": "string" + }, + "Location": { + "description": "URL to query for status of the operation.", + "type": "string" + } + } + }, + "202": { + "description": "The Test Base Account 'update' operation was successfully enqueued. Follow the Location header to poll for final outcome.", + "headers": { + "Azure-AsyncOperation": { + "description": "URL to query for status of the operation.", + "type": "string" + }, + "Location": { + "description": "URL to query for status of the operation.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "TestBaseAccountUpdate": { + "$ref": "./examples/TestBaseAccountUpdate.json" + } + } + }, + "delete": { + "tags": [ + "Test Base Account" + ], + "operationId": "TestBaseAccount_Delete", + "description": "Deletes a Test Base Account.", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/TestBaseAccountNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Test Base Account 'delete' operation was completed successfully." + }, + "202": { + "description": "The Test Base Account 'delete' operation was successfully enqueued. Follow the Location header to poll for final outcome.", + "headers": { + "Azure-AsyncOperation": { + "description": "URL to query for status of the operation.", + "type": "string" + }, + "Location": { + "description": "URL to query for status of the operation.", + "type": "string" + } + } + }, + "204": { + "description": "The Test Base Account 'delete' operation was completed successfully." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "TestBaseAccountDelete": { + "$ref": "./examples/TestBaseAccountDelete.json" + } + } + }, + "get": { + "tags": [ + "Test Base Account" + ], + "operationId": "TestBaseAccount_Get", + "description": "Gets a Test Base Account.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/TestBaseAccountNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Test Base Account was successfully found.", + "schema": { + "$ref": "#/definitions/TestBaseAccountResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "TestBaseAccountGet": { + "$ref": "./examples/TestBaseAccountGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.TestBase/testBaseAccounts/{testBaseAccountName}/offboard": { + "post": { + "tags": [ + "Test Base Account" + ], + "operationId": "TestBaseAccount_Offboard", + "description": "Offboard a Test Base Account.", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/TestBaseAccountNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Test Base Account 'offboard' operation was completed successfully." + }, + "202": { + "description": "The Test Base Account 'offboard' operation was successfully enqueued. Follow the Location header to poll for final outcome.", + "headers": { + "Azure-AsyncOperation": { + "description": "URL to query for status of the operation.", + "type": "string" + }, + "Location": { + "description": "URL to query for status of the operation.", + "type": "string" + } + } + }, + "204": { + "description": "The Test Base Account 'offboard' operation was completed successfully." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "TestBaseAccountOffboard": { + "$ref": "./examples/TestBaseAccountOffboard.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.TestBase/testBaseAccounts/{testBaseAccountName}/usages": { + "get": { + "tags": [ + "Test Base Account" + ], + "operationId": "TestBaseAccountUsage_List", + "description": "Lists the usage data of a Test Base Account.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/TestBaseAccountNameParameter" + }, + { + "$ref": "#/parameters/FilterParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The usage of the Test Base Account was returned.", + "schema": { + "$ref": "#/definitions/TestBaseAccountUsageDataList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "TestBaseAccountUsagesList": { + "$ref": "./examples/TestBaseAccountUsagesList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.TestBase/testBaseAccounts/{testBaseAccountName}/getFileUploadUrl": { + "post": { + "tags": [ + "Test Base Package" + ], + "operationId": "TestBaseAccountGetFileUploadUrl", + "description": "Gets the file upload URL of a Test Base Account.", + "parameters": [ + { + "name": "parameters", + "in": "body", + "schema": { + "$ref": "#/definitions/GetFileUploadURLParameters" + }, + "description": "Parameters supplied to the Test Base Account GetFileUploadURL operation." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/TestBaseAccountNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The file upload URL of the Test Base Account was returned.", + "schema": { + "$ref": "#/definitions/FileUploadURLResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "TestBaseAccountGetFileUploadUrl": { + "$ref": "./examples/TestBaseAccountGetFileUploadUrl.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.TestBase/testBaseAccounts/{testBaseAccountName}/availableOSs": { + "get": { + "tags": [ + "Test Base Package" + ], + "operationId": "TestBaseAccountAvailableOSs_List", + "description": "Lists all the available OSs to run a package under a Test Base Account.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/TestBaseAccountNameParameter" + }, + { + "$ref": "#/parameters/OSUpdateTypeParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation is completed.", + "schema": { + "$ref": "#/definitions/AvailableOSListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "AvailableOSsList": { + "$ref": "./examples/AvailableOSsList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.TestBase/testBaseAccounts/{testBaseAccountName}/availableOSs/{availableOSResourceName}": { + "get": { + "tags": [ + "Test Base Package" + ], + "operationId": "TestBaseAccountAvailableOS_Get", + "description": "Gets an available OS to run a package under a Test Base Account.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/TestBaseAccountNameParameter" + }, + { + "name": "availableOSResourceName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "The resource name of an Available OS." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation is completed.", + "schema": { + "$ref": "#/definitions/AvailableOSResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "AvailableOSGet": { + "$ref": "./examples/AvailableOSGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.TestBase/testBaseAccounts/{testBaseAccountName}/flightingRings": { + "get": { + "tags": [ + "Test Base Package" + ], + "operationId": "TestBaseAccountFlightingRings_List", + "description": "Lists all the flighting rings of a Test Base Account.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/TestBaseAccountNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation is completed.", + "schema": { + "$ref": "#/definitions/FlightingRingListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "FlightingRingsList": { + "$ref": "./examples/FlightingRingsList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.TestBase/testBaseAccounts/{testBaseAccountName}/flightingRings/{flightingRingResourceName}": { + "get": { + "tags": [ + "Test Base Package" + ], + "operationId": "TestBaseAccountFlightingRing_Get", + "description": "Gets a flighting ring of a Test Base Account.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/TestBaseAccountNameParameter" + }, + { + "name": "flightingRingResourceName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "The resource name of a flighting ring." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation is completed.", + "schema": { + "$ref": "#/definitions/FlightingRingResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "FlightingRingGet": { + "$ref": "./examples/FlightingRingGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.TestBase/testBaseAccounts/{testBaseAccountName}/testTypes": { + "get": { + "tags": [ + "Test Base Package" + ], + "operationId": "TestBaseAccountTestTypes_List", + "description": "Lists all the test types of a Test Base Account.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/TestBaseAccountNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation is completed.", + "schema": { + "$ref": "#/definitions/TestTypeListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "TestTypesList": { + "$ref": "./examples/TestTypesList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.TestBase/testBaseAccounts/{testBaseAccountName}/testTypes/{testTypeResourceName}": { + "get": { + "tags": [ + "Test Base Package" + ], + "operationId": "TestBaseAccountTestType_Get", + "description": "Gets a test type of a Test Base Account.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/TestBaseAccountNameParameter" + }, + { + "name": "testTypeResourceName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "The resource name of a test type." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation is completed.", + "schema": { + "$ref": "#/definitions/TestTypeResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "TestTypeGet": { + "$ref": "./examples/TestTypeGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.TestBase/testBaseAccounts/{testBaseAccountName}/checkPackageNameAvailability": { + "post": { + "tags": [ + "Test Base Package" + ], + "operationId": "CheckPackageNameAvailability", + "description": "Checks that the Test Base Package name and version is valid and is not already in use.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/TestBaseAccountNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PackageCheckNameAvailabilityParameters" + }, + "description": "Parameters supplied to the Test Base Package CheckNameAvailability operation." + } + ], + "responses": { + "200": { + "description": "Name is available", + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "CheckPackageNameAvailability": { + "$ref": "./examples/CheckPackageNameAvailability.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.TestBase/testBaseAccounts/{testBaseAccountName}/packages": { + "get": { + "tags": [ + "Test Base Package" + ], + "operationId": "Packages_ListByTestBaseAccount", + "description": "Lists all the packages under a Test Base Account.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/TestBaseAccountNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation is completed.", + "schema": { + "$ref": "#/definitions/PackageListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "PackagesList": { + "$ref": "./examples/PackagesList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.TestBase/testBaseAccounts/{testBaseAccountName}/packages/{packageName}": { + "put": { + "tags": [ + "Test Base Package" + ], + "operationId": "Package_Create", + "description": "Create or replace (overwrite/recreate, with potential downtime) a Test Base Package.", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "parameters": [ + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PackageResource" + }, + "description": "Parameters supplied to create a Test Base Package." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/TestBaseAccountNameParameter" + }, + { + "$ref": "#/parameters/PackageNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Test Base Package was successfully created or updated.", + "schema": { + "$ref": "#/definitions/PackageResource" + } + }, + "201": { + "description": "The Test Base Package 'create' or 'update' operation was successfully enqueued. Check provisioningState to see detailed status.", + "headers": { + "Azure-AsyncOperation": { + "description": "URL to query for status of the operation.", + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/PackageResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "PackageCreate": { + "$ref": "./examples/PackageCreate.json" + } + } + }, + "patch": { + "tags": [ + "Test Base Package" + ], + "operationId": "Package_Update", + "description": "Update an existing Test Base Package.", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "parameters": [ + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PackageUpdateParameters" + }, + "description": "Parameters supplied to update a Test Base Package." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/TestBaseAccountNameParameter" + }, + { + "$ref": "#/parameters/PackageNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The existing Test Base Package was successfully updated. Check provisioningState to see detailed status.", + "schema": { + "$ref": "#/definitions/PackageResource" + } + }, + "201": { + "description": "The Test Base Package 'update' operation was successfully enqueued. Follow the Location header to poll for final outcome.", + "headers": { + "Azure-AsyncOperation": { + "description": "URL to query for status of the operation.", + "type": "string" + }, + "Location": { + "description": "URL to query for status of the operation.", + "type": "string" + } + } + }, + "202": { + "description": "The Test Base Package 'update' operation was successfully enqueued. Follow the Location header to poll for final outcome.", + "headers": { + "Azure-AsyncOperation": { + "description": "URL to query for status of the operation.", + "type": "string" + }, + "Location": { + "description": "URL to query for status of the operation.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "PackageUpdate": { + "$ref": "./examples/PackageUpdate.json" + } + } + }, + "delete": { + "tags": [ + "Test Base Package" + ], + "operationId": "Package_Delete", + "description": "Deletes a Test Base Package.", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/TestBaseAccountNameParameter" + }, + { + "$ref": "#/parameters/PackageNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Test Base Package 'delete' operation was completed successfully." + }, + "202": { + "description": "The Test Base Package 'delete' operation was successfully enqueued. Follow the Location header to poll for final outcome.", + "headers": { + "Azure-AsyncOperation": { + "description": "URL to query for status of the operation.", + "type": "string" + }, + "Location": { + "description": "URL to query for status of the operation.", + "type": "string" + } + } + }, + "204": { + "description": "The Test Base Package 'delete' operation was completed successfully." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "PackageDelete": { + "$ref": "./examples/PackageDelete.json" + } + } + }, + "get": { + "tags": [ + "Test Base Package" + ], + "operationId": "Package_Get", + "description": "Gets a Test Base Package.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/TestBaseAccountNameParameter" + }, + { + "$ref": "#/parameters/PackageNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Test Base Package was successfully found.", + "schema": { + "$ref": "#/definitions/PackageResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "PackageGet": { + "$ref": "./examples/PackageGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.TestBase/testBaseAccounts/{testBaseAccountName}/packages/{packageName}/hardDelete": { + "post": { + "tags": [ + "Test Base Package" + ], + "operationId": "Package_HardDelete", + "description": "Hard Delete a Test Base Package.", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/TestBaseAccountNameParameter" + }, + { + "$ref": "#/parameters/PackageNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Test Base Package 'HardDelete' operation was completed successfully." + }, + "202": { + "description": "The Test Base Package 'HardDelete' operation was successfully enqueued. Follow the Location header to poll for final outcome.", + "headers": { + "Azure-AsyncOperation": { + "description": "URL to query for status of the operation.", + "type": "string" + }, + "Location": { + "description": "URL to query for status of the operation.", + "type": "string" + } + } + }, + "204": { + "description": "The Test Base Package 'HardDelete' operation was completed successfully." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "PackageHardDelete": { + "$ref": "./examples/PackageHardDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.TestBase/testBaseAccounts/{testBaseAccountName}/packages/{packageName}/getDownloadUrl": { + "post": { + "tags": [ + "Test Base Package" + ], + "operationId": "PackageGetDownloadURL", + "description": "Gets the download URL of a package.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/TestBaseAccountNameParameter" + }, + { + "$ref": "#/parameters/PackageNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The package download URL is returned.", + "schema": { + "$ref": "#/definitions/DownloadURLResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "PackageGetDownloadURL": { + "$ref": "./examples/PackageGetDownloadURL.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.TestBase/testBaseAccounts/{testBaseAccountName}/testSummaries": { + "get": { + "tags": [ + "Test Result" + ], + "operationId": "TestSummaries_List", + "description": "Lists the Test Summaries of all the packages under a Test Base Account.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/TestBaseAccountNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation is completed.", + "schema": { + "$ref": "#/definitions/TestSummaryListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "TestSummariesList": { + "$ref": "./examples/TestSummariesList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.TestBase/testBaseAccounts/{testBaseAccountName}/testSummaries/{testSummaryName}": { + "get": { + "tags": [ + "Test Result" + ], + "operationId": "TestSummary_Get", + "description": "Gets a Test Summary with specific name from all the Test Summaries of all the packages under a Test Base Account.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/TestBaseAccountNameParameter" + }, + { + "name": "testSummaryName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "The name of the Test Summary." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation is completed.", + "schema": { + "$ref": "#/definitions/TestSummaryResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "TestSummaryGet": { + "$ref": "./examples/TestSummaryGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.TestBase/testBaseAccounts/{testBaseAccountName}/packages/{packageName}/testResults": { + "get": { + "tags": [ + "Test Result" + ], + "operationId": "TestResults_List", + "description": "Lists all the Test Results with specified OS Update type for a Test Base Package. Can be filtered by osName, releaseName, flightingRing, buildVersion, buildRevision.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/TestBaseAccountNameParameter" + }, + { + "$ref": "#/parameters/PackageNameParameter" + }, + { + "$ref": "#/parameters/OSUpdateTypeParameter" + }, + { + "$ref": "#/parameters/FilterParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation is completed.", + "schema": { + "$ref": "#/definitions/TestResultListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "TestResultsList": { + "$ref": "./examples/TestResultsList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.TestBase/testBaseAccounts/{testBaseAccountName}/packages/{packageName}/testResults/{testResultName}": { + "get": { + "tags": [ + "Test Result" + ], + "operationId": "TestResult_Get", + "description": "Get the Test Result by Id with specified OS Update type for a Test Base Package.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/TestBaseAccountNameParameter" + }, + { + "$ref": "#/parameters/PackageNameParameter" + }, + { + "$ref": "#/parameters/TestResultNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation is completed.", + "schema": { + "$ref": "#/definitions/TestResultResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "TestResultGet": { + "$ref": "./examples/TestResultGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.TestBase/testBaseAccounts/{testBaseAccountName}/packages/{packageName}/osUpdates": { + "get": { + "tags": [ + "Test Result" + ], + "operationId": "OSUpdates_List", + "description": "Lists the OS Updates in which the package were tested before.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/TestBaseAccountNameParameter" + }, + { + "$ref": "#/parameters/PackageNameParameter" + }, + { + "$ref": "#/parameters/OSUpdateTypeParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation is completed.", + "schema": { + "$ref": "#/definitions/OSUpdateListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "OSUpdatesList": { + "$ref": "./examples/OSUpdatesList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.TestBase/testBaseAccounts/{testBaseAccountName}/packages/{packageName}/osUpdates/{osUpdateResourceName}": { + "get": { + "tags": [ + "Test Result" + ], + "operationId": "OSUpdate_Get", + "description": "Gets an OS Update by name in which the package was tested before.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/TestBaseAccountNameParameter" + }, + { + "$ref": "#/parameters/PackageNameParameter" + }, + { + "name": "osUpdateResourceName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "The resource name of an OS Update." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation is completed.", + "schema": { + "$ref": "#/definitions/OSUpdateResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "OSUpdateGet": { + "$ref": "./examples/OSUpdateGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.TestBase/testBaseAccounts/{testBaseAccountName}/packages/{packageName}/favoriteProcesses": { + "get": { + "tags": [ + "Test Result" + ], + "operationId": "FavoriteProcesses_List", + "description": "Lists the favorite processes for a specific package.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/TestBaseAccountNameParameter" + }, + { + "$ref": "#/parameters/PackageNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation is completed.", + "schema": { + "$ref": "#/definitions/FavoriteProcessListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "FavoriteProcessesList": { + "$ref": "./examples/FavoriteProcessesList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.TestBase/testBaseAccounts/{testBaseAccountName}/packages/{packageName}/favoriteProcesses/{favoriteProcessResourceName}": { + "put": { + "tags": [ + "Test Result" + ], + "operationId": "FavoriteProcess_Create", + "description": "Create or replace a favorite process for a Test Base Package.", + "parameters": [ + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FavoriteProcessResource" + }, + "description": "Parameters supplied to create a favorite process in a package." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/TestBaseAccountNameParameter" + }, + { + "$ref": "#/parameters/PackageNameParameter" + }, + { + "$ref": "#/parameters/FavoriteProcessResourceNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The favorite processes was successfully created or updated.", + "schema": { + "$ref": "#/definitions/FavoriteProcessResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "FavoriteProcessCreate": { + "$ref": "./examples/FavoriteProcessCreate.json" + } + } + }, + "delete": { + "tags": [ + "Test Result" + ], + "operationId": "FavoriteProcess_Delete", + "description": "Deletes a favorite process for a specific package.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/TestBaseAccountNameParameter" + }, + { + "$ref": "#/parameters/PackageNameParameter" + }, + { + "$ref": "#/parameters/FavoriteProcessResourceNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The package favorite process 'delete' operation was completed successfully." + }, + "204": { + "description": "The package favorite process 'delete' operation was completed successfully." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "FavoriteProcessDelete": { + "$ref": "./examples/FavoriteProcessDelete.json" + } + } + }, + "get": { + "tags": [ + "Test Result" + ], + "operationId": "FavoriteProcess_Get", + "description": "Gets a favorite process for a Test Base Package.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/TestBaseAccountNameParameter" + }, + { + "$ref": "#/parameters/PackageNameParameter" + }, + { + "$ref": "#/parameters/FavoriteProcessResourceNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation is completed.", + "schema": { + "$ref": "#/definitions/FavoriteProcessResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "FavoriteProcessGet": { + "$ref": "./examples/FavoriteProcessGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.TestBase/testBaseAccounts/{testBaseAccountName}/packages/{packageName}/testResults/{testResultName}/analysisResults": { + "get": { + "tags": [ + "Test Result" + ], + "operationId": "AnalysisResults_List", + "description": "Lists the Analysis Results of a Test Result. The result collection will only contain one element as all the data will be nested in a singleton object.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/TestBaseAccountNameParameter" + }, + { + "$ref": "#/parameters/PackageNameParameter" + }, + { + "$ref": "#/parameters/TestResultNameParameter" + }, + { + "$ref": "#/parameters/AnalysisResultTypeParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation is completed.", + "schema": { + "$ref": "#/definitions/AnalysisResultListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "MemoryUtilizationAnalysisResultsList": { + "$ref": "./examples/MemoryUtilizationAnalysisResultsList.json" + }, + "CPUUtilizationAnalysisResultsList": { + "$ref": "./examples/CPUUtilizationAnalysisResultsList.json" + }, + "MemoryRegressionAnalysisResultsList": { + "$ref": "./examples/MemoryRegressionAnalysisResultsList.json" + }, + "CPURegressionAnalysisResultsList": { + "$ref": "./examples/CPURegressionAnalysisResultsList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.TestBase/testBaseAccounts/{testBaseAccountName}/packages/{packageName}/testResults/{testResultName}/analysisResults/{analysisResultName}": { + "get": { + "tags": [ + "Test Result" + ], + "operationId": "AnalysisResult_Get", + "description": "Gets an Analysis Result of a Test Result by name.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/TestBaseAccountNameParameter" + }, + { + "$ref": "#/parameters/PackageNameParameter" + }, + { + "$ref": "#/parameters/TestResultNameParameter" + }, + { + "$ref": "#/parameters/AnalysisResultNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation is completed.", + "schema": { + "$ref": "#/definitions/AnalysisResultSingletonResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "MemoryUtilizationAnalysisResultGet": { + "$ref": "./examples/MemoryUtilizationAnalysisResultGet.json" + }, + "CPUUtilizationAnalysisResultGet": { + "$ref": "./examples/CPUUtilizationAnalysisResultGet.json" + }, + "MemoryRegressionAnalysisResultGet": { + "$ref": "./examples/MemoryRegressionAnalysisResultGet.json" + }, + "CPURegressionAnalysisResultGet": { + "$ref": "./examples/CPURegressionAnalysisResultGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.TestBase/testBaseAccounts/{testBaseAccountName}/packages/{packageName}/testResults/{testResultName}/getDownloadUrl": { + "post": { + "tags": [ + "Test Result" + ], + "operationId": "TestResultGetDownloadURL", + "description": "Gets the download URL or the test result.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/TestBaseAccountNameParameter" + }, + { + "$ref": "#/parameters/PackageNameParameter" + }, + { + "$ref": "#/parameters/TestResultNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation is completed.", + "schema": { + "$ref": "#/definitions/DownloadURLResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "TestResultGetDownloadURL": { + "$ref": "./examples/TestResultGetDownloadURL.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.TestBase/testBaseAccounts/{testBaseAccountName}/packages/{packageName}/testResults/{testResultName}/getVideoDownloadUrl": { + "post": { + "tags": [ + "Test Result" + ], + "operationId": "TestResultGetVideoDownloadURL", + "description": "Gets the download URL of the test execution screen recording.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/TestBaseAccountNameParameter" + }, + { + "$ref": "#/parameters/PackageNameParameter" + }, + { + "$ref": "#/parameters/TestResultNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation is completed.", + "schema": { + "$ref": "#/definitions/DownloadURLResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "TestResultGetVideoDownloadURL": { + "$ref": "./examples/TestResultGetVideoDownloadURL.json" + } + } + } + }, + "/providers/Microsoft.TestBase/operations": { + "get": { + "tags": [ + "Operation" + ], + "description": "Lists all of the available REST API operations of the Microsoft.TestBase provider.", + "operationId": "Operations_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describes the list of operations.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "OperationsList": { + "$ref": "./examples/OperationsList.json" + } + } + } + } + }, + "definitions": { + "Resource": { + "description": "The Resource 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 + }, + "ProxyResource": { + "description": "The resource model definition for an ARM proxy resource. It will have everything other than required location and tags", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ] + }, + "Tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + }, + "TrackedResource": { + "description": "The resource model definition for an ARM tracked top level resource", + "properties": { + "tags": { + "description": "The tags of the resource.", + "$ref": "#/definitions/Tags" + }, + "location": { + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ], + "description": "The geo-location where the resource lives" + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "Resource Etag." + } + }, + "required": [ + "location" + ], + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ] + }, + "ErrorResponse": { + "description": "The error response send when an operation fails.", + "properties": { + "error": { + "$ref": "#/definitions/ErrorDefinition", + "description": "The error details." + } + } + }, + "ErrorDefinition": { + "description": "Error definition.", + "properties": { + "code": { + "description": "The error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "The error message.", + "type": "string", + "readOnly": true + }, + "target": { + "type": "string", + "description": "The target of the particular error.", + "readOnly": true + }, + "details": { + "description": "The error details.", + "type": "array", + "items": { + "$ref": "#/definitions/ErrorDefinition" + }, + "readOnly": true + } + } + }, + "TestBaseAccountSKUListResult": { + "description": "A list of Test Base Account SKUs.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/TestBaseAccountSKU" + }, + "description": "The list of Test Base Account SKUs." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next set of results. Not empty if value contains incomplete list of results." + } + } + }, + "TestBaseAccountSKU": { + "description": "Describes a Test Base Account SKU.", + "properties": { + "resourceType": { + "type": "string", + "description": "The type of resource the SKU applies to." + }, + "name": { + "type": "string", + "description": "The name of the SKU. This is typically a letter + number code, such as B0 or S0." + }, + "tier": { + "type": "string", + "description": "The tier of this particular SKU.", + "enum": [ + "Basic", + "Standard" + ], + "x-ms-enum": { + "name": "tier", + "modelAsString": true + } + }, + "capabilities": { + "type": "array", + "description": "The capabilities of a SKU.", + "readOnly": true, + "items": { + "$ref": "#/definitions/TestBaseAccountSKUCapability" + } + }, + "locations": { + "description": "The locations that the SKU is available.", + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + } + } + }, + "required": [ + "name", + "tier" + ] + }, + "TestBaseAccountSKUCapability": { + "description": "Properties of the Test Base Account SKU Capability.", + "properties": { + "name": { + "type": "string", + "description": "An invariant to describe the feature, such as 'SLA'." + }, + "value": { + "type": "string", + "description": "An invariant if the feature is measured by quantity, such as 99.9%." + } + }, + "required": [ + "name", + "value" + ] + }, + "SystemData": { + "description": "Metadata pertaining to creation and last modification of the resource.", + "type": "object", + "readOnly": true, + "properties": { + "createdBy": { + "type": "string", + "description": "The identity that created the resource." + }, + "createdByType": { + "type": "string", + "description": "The type of identity that created the resource.", + "enum": [ + "User", + "Application", + "ManagedIdentity", + "Key" + ], + "x-ms-enum": { + "name": "createdByType", + "modelAsString": true + } + }, + "createdAt": { + "type": "string", + "format": "date-time", + "description": "The timestamp of resource creation (UTC)." + }, + "lastModifiedBy": { + "type": "string", + "description": "The identity that last modified the resource." + }, + "lastModifiedByType": { + "type": "string", + "description": "The type of identity that last modified the resource.", + "enum": [ + "User", + "Application", + "ManagedIdentity", + "Key" + ], + "x-ms-enum": { + "name": "createdByType", + "modelAsString": true + } + }, + "lastModifiedAt": { + "type": "string", + "format": "date-time", + "description": "The type of identity that last modified the resource." + } + } + }, + "TestBaseAccountListResult": { + "description": "A list of Test Base Accounts.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/TestBaseAccountResource" + }, + "description": "The list of Test Base Accounts." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next set of results. Not empty if value contains incomplete list of results." + } + } + }, + "TestBaseAccountResource": { + "description": "The Test Base Account resource.", + "properties": { + "systemData": { + "description": "The system metadata relating to this resource", + "$ref": "#/definitions/SystemData" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/TestBaseAccountResourceProperties", + "description": "Properties of a Test Base Account." + } + }, + "allOf": [ + { + "$ref": "#/definitions/TrackedResource" + } + ] + }, + "TestBaseAccountResourceProperties": { + "description": "The properties of a Test Base Account resource.", + "properties": { + "provisioningState": { + "description": "The provisioning state of the resource.", + "$ref": "#/definitions/ProvisioningState" + }, + "sku": { + "description": "The SKU of the Test Base Account.", + "$ref": "#/definitions/TestBaseAccountSKU" + }, + "accessLevel": { + "description": "The access level of the Test Base Account.", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "sku" + ] + }, + "ProvisioningState": { + "type": "string", + "description": "ARM provisioning state, see https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/Addendum.md#provisioningstate-property", + "enum": [ + "Succeeded", + "Failed", + "Cancelled", + "Creating", + "Deleting", + "Updating" + ], + "readOnly": true, + "x-ms-enum": { + "name": "provisioningState", + "modelAsString": true + } + }, + "TestBaseAccountUpdateParameters": { + "description": "Parameters supplied to update a Test Base Account.", + "properties": { + "properties": { + "$ref": "#/definitions/TestBaseAccountUpdateParameterProperties", + "x-ms-client-flatten": true, + "description": "Test Base Account update parameters." + }, + "tags": { + "description": "The tags of the Test Base Account.", + "$ref": "#/definitions/Tags" + } + } + }, + "TestBaseAccountUpdateParameterProperties": { + "description": "Parameters supplied to update a Test Base Account.", + "properties": { + "sku": { + "description": "The SKU of the Test Base Account.", + "$ref": "#/definitions/TestBaseAccountSKU" + } + } + }, + "TestBaseAccountUsageDataList": { + "description": "A list of Test Base Account usage data.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/TestBaseAccountUsageData" + }, + "description": "The list of Test Base Account usage data." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next set of results. Not empty if value contains incomplete list of results." + } + } + }, + "TestBaseAccountUsageData": { + "description": "The usage data of a Test Base Account.", + "properties": { + "id": { + "description": "Fully qualified ARM resource id", + "type": "string" + }, + "name": { + "$ref": "#/definitions/TestBaseAccountUsageName", + "description": "Localizable String object containing the name and a localized value." + }, + "unit": { + "description": "Representing the units of the usage quota. Possible values are: Count, Bytes, Seconds, Percent, CountPerSecond, BytesPerSecond.", + "type": "string" + }, + "limit": { + "format": "int64", + "description": "The maximum permitted value for the usage quota. If there is no limit, this value will be -1.", + "type": "integer" + }, + "currentValue": { + "format": "int64", + "description": "Current value for the usage quota.", + "type": "integer" + } + } + }, + "TestBaseAccountUsageName": { + "description": "Localizable String object containing the name and a localized value.", + "type": "object", + "properties": { + "value": { + "description": "The identifier of the usage.", + "type": "string" + }, + "localizedValue": { + "description": "Localized name of the usage.", + "type": "string" + } + } + }, + "GetFileUploadURLParameters": { + "description": "The parameters supplied to the Test Base Account GetFileUploadURL action.", + "properties": { + "blobName": { + "type": "string", + "description": "The custom file name of the uploaded blob." + } + } + }, + "FileUploadURLResponse": { + "description": "The URL response", + "properties": { + "uploadUrl": { + "type": "string", + "readOnly": true, + "description": "The URL used for uploading the package." + }, + "blobPath": { + "type": "string", + "readOnly": true, + "description": "The blob path of the uploaded package. It will be used as the 'blobPath' property of PackageResource." + } + } + }, + "AvailableOSListResult": { + "description": "A list of available OSs.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AvailableOSResource" + }, + "description": "The list of available OSs." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next set of results. Not empty if value contains incomplete list of results." + } + } + }, + "AvailableOSResource": { + "description": "The Available OS resource.", + "properties": { + "systemData": { + "description": "The system metadata relating to this resource", + "$ref": "#/definitions/SystemData" + }, + "properties": { + "$ref": "#/definitions/AvailableOSProperties", + "x-ms-client-flatten": true, + "description": "Available OS properties." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ] + }, + "AvailableOSProperties": { + "description": "The Available OS properties.", + "properties": { + "osId": { + "type": "string", + "description": "The Id of an Available OS of a Test Base Account." + }, + "osName": { + "type": "string", + "description": "The name of an Available OS of a Test Base Account." + }, + "osVersion": { + "type": "string", + "description": "The version of an Available OS of a Test Base Account." + }, + "insiderChannel": { + "type": "string", + "description": "The insider channel of an Available OS of a Test Base Account." + }, + "osUpdateType": { + "type": "string", + "description": "The OS update type of an Available OS of a Test Base Account." + }, + "osPlatform": { + "type": "string", + "description": "The Platform of an Available OS of a Test Base Account." + } + } + }, + "FlightingRingListResult": { + "description": "A list of flighting rings.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/FlightingRingResource" + }, + "description": "The list of flighting rings." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next set of results. Not empty if value contains incomplete list of results." + } + } + }, + "FlightingRingResource": { + "description": "The flighting ring resource.", + "properties": { + "systemData": { + "description": "The system metadata relating to this resource", + "$ref": "#/definitions/SystemData" + }, + "properties": { + "$ref": "#/definitions/FlightingRingProperties", + "x-ms-client-flatten": true, + "description": "Flighting Ring properties." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ] + }, + "FlightingRingProperties": { + "description": "The Flighting Ring properties.", + "properties": { + "actualFlightingRingName": { + "type": "string", + "description": "The actual name of a flighting ring of a Test Base Account." + } + } + }, + "TestTypeListResult": { + "description": "A list of test types.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/TestTypeResource" + }, + "description": "The list of test types." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next set of results. Not empty if value contains incomplete list of results." + } + } + }, + "TestTypeResource": { + "description": "The test type resource.", + "properties": { + "systemData": { + "description": "The system metadata relating to this resource", + "$ref": "#/definitions/SystemData" + }, + "properties": { + "$ref": "#/definitions/TestTypeProperties", + "x-ms-client-flatten": true, + "description": "Test Type properties." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ] + }, + "TestTypeProperties": { + "description": "The Test Type properties.", + "properties": { + "actualTestTypeName": { + "type": "string", + "description": "The actual name of a test type of a Test Base Account." + } + } + }, + "PackageCheckNameAvailabilityParameters": { + "description": "Parameters body to pass for Test Base Package name availability check.", + "properties": { + "name": { + "type": "string", + "description": "Resource name to verify." + }, + "applicationName": { + "type": "string", + "description": "Application name to verify." + }, + "version": { + "type": "string", + "description": "Version name to verify." + }, + "type": { + "type": "string", + "description": "fully qualified resource type which includes provider namespace." + } + }, + "required": [ + "name", + "applicationName", + "version", + "type" + ] + }, + "CheckNameAvailabilityResult": { + "properties": { + "nameAvailable": { + "type": "boolean", + "description": "Value indicating the availability of the name: true if the name is available; otherwise, false." + }, + "reason": { + "type": "string", + "description": "The reason for unavailability of a name. Required if nameAvailable == false.", + "enum": [ + "Invalid", + "AlreadyExists" + ], + "x-ms-enum": { + "name": "reason", + "modelAsString": true + } + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed info regarding the reason associated with the name. Required if nameAvailable == false." + } + }, + "description": "Description of a Check Name availability response properties." + }, + "PackageListResult": { + "description": "A list of Test Base Packages.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PackageResource" + }, + "description": "The list of Test Base Packages." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next set of results. Not empty if value contains incomplete list of results." + } + } + }, + "PackageResource": { + "description": "The Test Base Package resource.", + "properties": { + "systemData": { + "description": "The system metadata relating to this resource", + "$ref": "#/definitions/SystemData" + }, + "properties": { + "$ref": "#/definitions/PackageProperties", + "x-ms-client-flatten": true, + "description": "Test Base Package properties." + } + }, + "allOf": [ + { + "$ref": "#/definitions/TrackedResource" + } + ] + }, + "PackageProperties": { + "description": "The properties of the Test Base Package.", + "properties": { + "provisioningState": { + "description": "The provisioning state of the resource.", + "$ref": "#/definitions/ProvisioningState" + }, + "applicationName": { + "type": "string", + "description": "Application name" + }, + "version": { + "type": "string", + "description": "Application version" + }, + "testTypes": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/TestType" + }, + "description": "OOB, functional or both. Mapped to the data in 'tests' property." + }, + "targetOSList": { + "type": "array", + "items": { + "$ref": "#/definitions/TargetOSInfo" + }, + "description": "Specifies the target OSs of specific OS Update types." + }, + "packageStatus": { + "readOnly": true, + "type": "string", + "description": "The status of the package.", + "enum": [ + "Unknown", + "Registered", + "Ready", + "Error", + "ValidatingPackage", + "PreValidationCheckPass", + "Deleted", + "ValidationLongerThanUsual", + "VerifyingPackage" + ], + "x-ms-enum": { + "name": "packageStatus", + "modelAsString": true + } + }, + "lastModifiedTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The UTC timestamp when the package was last modified." + }, + "flightingRing": { + "type": "string", + "description": "The flighting ring for feature update." + }, + "isEnabled": { + "type": "boolean", + "readOnly": true, + "description": "Flag showing that whether the package is enabled. It doesn't schedule test for package which is not enabled." + }, + "blobPath": { + "type": "string", + "description": "The file path of the package." + }, + "validationResults": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/PackageValidationResult" + }, + "description": "The validation results. There's validation on package when it's created or updated." + }, + "tests": { + "type": "array", + "items": { + "$ref": "#/definitions/Test" + }, + "description": "The detailed test information." + } + }, + "required": [ + "applicationName", + "version", + "targetOSList", + "flightingRing", + "blobPath", + "tests" + ] + }, + "TestType": { + "type": "string", + "description": "The test type.", + "enum": [ + "OutOfBoxTest", + "FunctionalTest" + ], + "x-ms-enum": { + "name": "testType", + "modelAsString": true + } + }, + "TargetOSInfo": { + "description": "The information of the target OS to be tested.", + "properties": { + "osUpdateType": { + "type": "string", + "description": "Specifies the OS update type to test against, e.g., 'Security updates' or 'Feature updates'." + }, + "targetOSs": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Specifies the target OSs to be tested." + } + }, + "required": [ + "osUpdateType", + "targetOSs" + ] + }, + "PackageValidationResult": { + "description": "The validation results. There's validation on package when it's created or updated.", + "properties": { + "validationName": { + "type": "string", + "readOnly": true, + "description": "Validation name." + }, + "isValid": { + "type": "boolean", + "readOnly": true, + "description": "Indicates whether the package passed the validation." + }, + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "string" + }, + "description": "Error information." + } + } + }, + "Test": { + "description": "The definition of a Test.", + "properties": { + "testType": { + "$ref": "#/definitions/TestType", + "description": "The type of the test." + }, + "validationRunStatus": { + "readOnly": true, + "type": "string", + "description": "The status of the validation run of the package.", + "enum": [ + "Unknown", + "Pending", + "Passed", + "Failed" + ], + "x-ms-enum": { + "name": "validationRunStatus", + "modelAsString": true + } + }, + "isActive": { + "type": "boolean", + "description": "Indicates if this test is active.It doesn't schedule test for not active Test." + }, + "commands": { + "type": "array", + "items": { + "$ref": "#/definitions/Command" + }, + "description": "The commands used in the test." + } + }, + "required": [ + "testType", + "commands" + ] + }, + "Command": { + "description": "The command used in the test", + "properties": { + "name": { + "type": "string", + "description": "The name of the command." + }, + "action": { + "type": "string", + "description": "The action of the command.", + "enum": [ + "Install", + "Launch", + "Close", + "Uninstall", + "Custom" + ], + "x-ms-enum": { + "name": "action", + "modelAsString": true + } + }, + "contentType": { + "type": "string", + "description": "The type of command content.", + "enum": [ + "Inline", + "File", + "Path" + ], + "x-ms-enum": { + "name": "contentType", + "modelAsString": true + } + }, + "content": { + "type": "string", + "description": "The content of the command. The content depends on source type." + }, + "runElevated": { + "type": "boolean", + "description": "Specifies whether to run the command as administrator." + }, + "restartAfter": { + "type": "boolean", + "description": "Specifies whether to restart the VM after the command executed." + }, + "maxRunTime": { + "type": "integer", + "format": "int32", + "description": "Specifies the max run time of the command." + }, + "runAsInteractive": { + "type": "boolean", + "description": "Specifies whether to run the command in interactive mode." + }, + "alwaysRun": { + "type": "boolean", + "description": "Specifies whether to run the command even if a previous command is failed." + }, + "applyUpdateBefore": { + "type": "boolean", + "description": "Specifies whether to apply update before the command." + } + }, + "required": [ + "name", + "action", + "contentType", + "content" + ] + }, + "PackageUpdateParameters": { + "description": "Parameters supplied to update a Test Base Package.", + "properties": { + "properties": { + "$ref": "#/definitions/PackageUpdateParameterProperties", + "x-ms-client-flatten": true, + "description": "Test Base Package update parameters." + }, + "tags": { + "description": "The tags of the Package.", + "$ref": "#/definitions/Tags" + } + } + }, + "PackageUpdateParameterProperties": { + "description": "Parameters supplied to update a Test Base Package.", + "properties": { + "targetOSList": { + "type": "array", + "items": { + "$ref": "#/definitions/TargetOSInfo" + }, + "description": "Specifies the target OSs of specific OS Update types." + }, + "flightingRing": { + "type": "string", + "description": "The flighting ring for feature update." + }, + "isEnabled": { + "type": "boolean", + "description": "Specifies whether the package is enabled. It doesn't schedule test for package which is not enabled." + }, + "blobPath": { + "type": "string", + "description": "The file name of the package." + }, + "tests": { + "type": "array", + "items": { + "$ref": "#/definitions/Test" + }, + "description": "The detailed test information." + } + } + }, + "DownloadURLResponse": { + "description": "The response of getting a download URL.", + "properties": { + "downloadUrl": { + "type": "string", + "readOnly": true, + "x-ms-secret": true, + "description": "The download URL." + }, + "expirationTime": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "Expiry date of the download URL." + } + } + }, + "TestSummaryListResult": { + "description": "A list of Test Summaries.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/TestSummaryResource" + }, + "description": "The list of Test Summaries." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next set of results. Not empty if value contains incomplete list of results." + } + } + }, + "TestSummaryResource": { + "description": "Summary of a Test.", + "properties": { + "systemData": { + "description": "The system metadata relating to this resource", + "$ref": "#/definitions/SystemData" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/TestSummaryProperties", + "description": "Properties of a Test Summary." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ] + }, + "TestSummaryProperties": { + "description": "Properties of a Test Summary.", + "properties": { + "testSummaryId": { + "type": "string", + "description": "The Id of the current Test Summary." + }, + "packageId": { + "type": "string", + "description": "The Azure resource Id of package." + }, + "applicationName": { + "type": "string", + "description": "Application name." + }, + "applicationVersion": { + "type": "string", + "description": "Application version." + }, + "executionStatus": { + "$ref": "#/definitions/TestExecutionStatus", + "description": "The execution status of last test." + }, + "grade": { + "$ref": "#/definitions/TestGrade", + "description": "The grade of the test." + }, + "testRunTime": { + "type": "string", + "description": "The run time of the last test." + }, + "featureUpdatesTestSummary": { + "$ref": "#/definitions/OSUpdatesTestSummary", + "description": "The result summary of tests triggered by feature updates" + }, + "securityUpdatesTestSummary": { + "$ref": "#/definitions/OSUpdatesTestSummary", + "description": "The result summary of tests triggered by security updates" + } + } + }, + "TestExecutionStatus": { + "type": "string", + "description": "The execution status of a test.", + "enum": [ + "None", + "InProgress", + "Processing", + "Completed", + "NotExecuted", + "Incomplete", + "Failed", + "Succeeded" + ], + "x-ms-enum": { + "name": "executionStatus", + "modelAsString": true + } + }, + "TestGrade": { + "type": "string", + "description": "The grade of a test.", + "enum": [ + "None", + "NotAvailable", + "Pass", + "Fail" + ], + "x-ms-enum": { + "name": "grade", + "modelAsString": true + } + }, + "OSUpdatesTestSummary": { + "description": "The summary of some tests.", + "properties": { + "executionStatus": { + "$ref": "#/definitions/TestExecutionStatus", + "description": "The status of the last test." + }, + "grade": { + "$ref": "#/definitions/TestGrade", + "description": "The grade of last test." + }, + "testRunTime": { + "type": "string", + "description": "The run time of the last test." + }, + "osUpdateTestSummaries": { + "type": "array", + "items": { + "$ref": "#/definitions/OSUpdateTestSummary" + }, + "description": "Detailed summary for each OS update" + } + } + }, + "OSUpdateTestSummary": { + "description": "The summary of a test.", + "properties": { + "osName": { + "type": "string", + "description": "The operating system name. e.g. Windows 10 1809." + }, + "releaseName": { + "type": "string", + "description": "The name of the tested release (OS update)." + }, + "buildVersion": { + "type": "string", + "description": "The build version of the tested release (OS update)" + }, + "buildRevision": { + "type": "string", + "description": "The build revision of the tested release (OS update)" + }, + "releaseVersionDate": { + "type": "string", + "format": "date-time", + "description": "The release version date." + }, + "flightingRing": { + "type": "string", + "description": "The flighting ring, only for release of feature updates." + }, + "executionStatus": { + "$ref": "#/definitions/TestExecutionStatus", + "description": "The execution status of the test." + }, + "grade": { + "$ref": "#/definitions/TestGrade", + "description": "The grade of the test." + }, + "testRunTime": { + "type": "string", + "description": "The run time of the test." + }, + "testType": { + "type": "string", + "description": "The test type of the package" + } + } + }, + "TestResultListResult": { + "description": "A list of Test Results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/TestResultResource" + }, + "description": "The list of Test Results." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next set of results. Not empty if value contains incomplete list of results." + } + } + }, + "TestResultResource": { + "description": "The Test Result Resource.", + "properties": { + "systemData": { + "description": "The system metadata relating to this resource", + "$ref": "#/definitions/SystemData" + }, + "properties": { + "$ref": "#/definitions/TestResultProperties", + "x-ms-client-flatten": true, + "description": "The properties of a Test Result." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ] + }, + "TestResultProperties": { + "description": "The properties of a Test Result.", + "properties": { + "baselineTestResultId": { + "type": "string", + "description": "Azure Id of the baseline test result." + }, + "packageId": { + "type": "string", + "description": "Resource Id of the package." + }, + "applicationName": { + "type": "string", + "description": "Application name." + }, + "applicationVersion": { + "type": "string", + "description": "Application version." + }, + "osName": { + "type": "string", + "description": "The operating system name, e.g. Windows 10 1809." + }, + "releaseName": { + "type": "string", + "description": "The name of the tested release (OS update)." + }, + "releaseVersionDate": { + "type": "string", + "format": "date-time", + "description": "The release version date of the tested release." + }, + "flightingRing": { + "type": "string", + "description": "The flighting ring, only for release of feature updates." + }, + "buildVersion": { + "type": "string", + "description": "The build version of the tested release (OS update)." + }, + "buildRevision": { + "type": "string", + "description": "The build revision of the tested release (OS update)." + }, + "testType": { + "type": "string", + "description": "Test type. E.g. 'Out of box test' or 'Functional test'." + }, + "testRunTime": { + "type": "string", + "description": "The run time of the test." + }, + "isDownloadDataAvailable": { + "type": "boolean", + "description": "Whether download data is available." + }, + "isVideoAvailable": { + "type": "boolean", + "description": "Whether video data is available." + }, + "executionStatus": { + "$ref": "#/definitions/TestExecutionStatus", + "description": "The execution status of the test." + }, + "grade": { + "$ref": "#/definitions/TestGrade", + "description": "The grade of the test." + }, + "kbNumber": { + "type": "string", + "description": "KB number." + }, + "packageVersion": { + "type": "string", + "description": "The version of the Windows update package." + }, + "analysisSummaries": { + "type": "array", + "items": { + "$ref": "#/definitions/TestResultAnalysisSummary" + }, + "description": "List of analysis summaries." + } + } + }, + "TestResultAnalysisSummary": { + "description": "The summary of a Test Analysis Result.", + "properties": { + "name": { + "type": "string", + "description": "Metric name" + }, + "analysisStatus": { + "type": "string", + "description": "The analysis status.", + "enum": [ + "None", + "Completed", + "InProgress", + "Failed", + "Succeeded", + "Available", + "NotAvailable" + ], + "x-ms-enum": { + "name": "analysisStatus", + "modelAsString": true + } + }, + "grade": { + "$ref": "#/definitions/TestGrade", + "description": "The grade of the test result." + } + } + }, + "OSUpdateListResult": { + "description": "A list of OS Updates.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/OSUpdateResource" + }, + "description": "The list of OS Updates." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next set of results. Not empty if value contains incomplete list of results." + } + } + }, + "OSUpdateResource": { + "description": "An OS Update.", + "properties": { + "systemData": { + "description": "The system metadata relating to this resource", + "$ref": "#/definitions/SystemData" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/OSUpdateProperties", + "description": "Properties of an OS Update." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ] + }, + "OSUpdateProperties": { + "description": "Properties of an OS Update.", + "properties": { + "osName": { + "type": "string", + "description": "The name of the OS." + }, + "release": { + "type": "string", + "description": "The name of tested release." + }, + "flightingRing": { + "type": "string", + "description": "The flighting ring, only for release of feature updates." + }, + "buildVersion": { + "type": "string", + "description": "The build version of the tested release (OS update)." + }, + "buildRevision": { + "type": "string", + "description": "The build revision of the tested release (OS update)" + }, + "type": { + "type": "string", + "description": "The type of this release (OS update).", + "enum": [ + "SecurityUpdate", + "FeatureUpdate" + ], + "x-ms-enum": { + "name": "type", + "modelAsString": true + } + }, + "releaseVersionDate": { + "type": "string", + "format": "date-time", + "description": "The release version date the tested release (OS update)" + } + } + }, + "FavoriteProcessListResult": { + "description": "A list of favorite processes for a package.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/FavoriteProcessResource" + }, + "description": "The list of favorite processes for a package." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next set of results. Not empty if value contains incomplete list of results." + } + } + }, + "FavoriteProcessResource": { + "description": "A favorite process identifier.", + "properties": { + "systemData": { + "description": "The system metadata relating to this resource", + "$ref": "#/definitions/SystemData" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/FavoriteProcessProperties", + "description": "Properties of a favorite process identifier." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ] + }, + "FavoriteProcessProperties": { + "description": "Properties of a favorite process identifier.", + "properties": { + "actualProcessName": { + "type": "string", + "description": "The actual name of the favorite process. It will be equal to resource name except for the scenario that the process name contains characters that are not allowed in the resource name." + } + }, + "required": [ + "actualProcessName" + ] + }, + "AnalysisResultListResult": { + "description": "A list of Analysis Results. It will only contain one element as all the data will be nested in a singleton object.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AnalysisResultSingletonResource" + }, + "description": "The list of Analysis Results." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next set of results. Not empty if value contains incomplete list of results." + } + } + }, + "AnalysisResultSingletonResource": { + "description": "The Analysis Result Singleton Resource.", + "properties": { + "systemData": { + "description": "The system metadata relating to this resource", + "$ref": "#/definitions/SystemData" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AnalysisResultSingletonResourceProperties", + "description": "Properties of an Analysis Result." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ] + }, + "AnalysisResultSingletonResourceProperties": { + "description": "The properties of Analysis Result resource.", + "discriminator": "analysisResultType", + "required": [ + "analysisResultType" + ], + "properties": { + "grade": { + "$ref": "#/definitions/TestGrade", + "description": "The grade of the test." + }, + "analysisResultType": { + "description": "Type of the Analysis Result.", + "enum": [ + "ScriptExecution", + "Reliability", + "CPUUtilization", + "MemoryUtilization", + "CPURegression", + "MemoryRegression" + ], + "type": "string", + "x-ms-enum": { + "name": "analysisResultType", + "modelAsString": true + } + } + } + }, + "ScriptExecutionResultSingletonResourceProperties": { + "description": "The properties of Script Execution Result.", + "x-ms-discriminator-value": "ScriptExecution", + "properties": { + "scriptExecutionResults": { + "description": "The result array data.", + "type": "array", + "items": { + "$ref": "#/definitions/ScriptExecutionResult" + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/AnalysisResultSingletonResourceProperties" + } + ] + }, + "ScriptExecutionResult": { + "description": "The Script Execution Result.", + "properties": { + "scriptName": { + "type": "string", + "description": "Name of script." + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "Start time of script execution." + }, + "endTime": { + "type": "string", + "format": "date-time", + "description": "End time of script execution." + }, + "exitCode": { + "type": "integer", + "format": "int32", + "description": "Exit code." + }, + "timeOut": { + "type": "boolean", + "description": "Whether the subscription execution is timeout." + } + } + }, + "ReliabilityResultSingletonResourceProperties": { + "description": "The properties of Reliability Result.", + "x-ms-discriminator-value": "Reliability", + "properties": { + "reliabilityResults": { + "description": "The result array data.", + "type": "array", + "items": { + "$ref": "#/definitions/ReliabilityResult" + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/AnalysisResultSingletonResourceProperties" + } + ] + }, + "ReliabilityResult": { + "description": "The Reliability Result.", + "properties": { + "fileName": { + "type": "string", + "description": "File name." + }, + "launchCount": { + "type": "integer", + "format": "int32", + "description": "Count of number of launches." + }, + "crashCount": { + "type": "integer", + "format": "int32", + "description": "Count of number of crashes." + }, + "hangCount": { + "type": "integer", + "format": "int32", + "description": "Count of number of hangs." + }, + "regressionGrade": { + "$ref": "#/definitions/TestGrade", + "description": "The regression grade." + }, + "crashRegressionGrade": { + "$ref": "#/definitions/TestGrade", + "description": "The statistic regression grade for crash signal." + }, + "crashRegressionTestDetails": { + "$ref": "#/definitions/RegressionTestDetails", + "description": "Details related to the crash regression analysis." + }, + "hangRegressionGrade": { + "$ref": "#/definitions/TestGrade", + "description": "The statistic regression grade for hang signal." + }, + "hangRegressionTestDetails": { + "$ref": "#/definitions/RegressionTestDetails", + "description": "Details related to the hang regression analysis." + } + } + }, + "RegressionTestDetails": { + "description": "The details of a regression test.", + "properties": { + "diff": { + "type": "number", + "format": "double", + "description": "Difference between the two datasets being analyzed." + }, + "isRegressed": { + "type": "boolean", + "description": "Indicates if a regression was inferred." + } + } + }, + "CPUUtilizationResultSingletonResourceProperties": { + "description": "The properties of CPU Utilization Result.", + "x-ms-discriminator-value": "CPUUtilization", + "properties": { + "cpuUtilizationResults": { + "description": "The result array data.", + "type": "array", + "items": { + "$ref": "#/definitions/UtilizationResult" + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/AnalysisResultSingletonResourceProperties" + } + ] + }, + "MemoryUtilizationResultSingletonResourceProperties": { + "description": "The properties of Memory Utilization Result.", + "x-ms-discriminator-value": "MemoryUtilization", + "properties": { + "memoryUtilizationResults": { + "description": "The result array data.", + "type": "array", + "items": { + "$ref": "#/definitions/UtilizationResult" + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/AnalysisResultSingletonResourceProperties" + } + ] + }, + "UtilizationResult": { + "description": "The Utilization Result.", + "properties": { + "process": { + "type": "string", + "description": "Process name, or '_total' for all processes" + }, + "upperBound": { + "$ref": "#/definitions/UtilizationBound", + "description": "Upper bound" + }, + "lowerBound": { + "$ref": "#/definitions/UtilizationBound", + "description": "Lower bound" + }, + "utilization": { + "type": "array", + "items": { + "$ref": "#/definitions/UtilizationEntry" + }, + "description": "Utilization data" + } + } + }, + "UtilizationBound": { + "description": "The bound of a utilization result.", + "properties": { + "percentile": { + "type": "number", + "format": "double", + "description": "The percentile of the bound." + }, + "value": { + "type": "number", + "format": "double", + "description": "The value of the bound." + } + } + }, + "UtilizationEntry": { + "description": "The utilization entry.", + "properties": { + "timestamp": { + "type": "string", + "format": "date-time", + "description": "The timestamp." + }, + "value": { + "type": "number", + "format": "double", + "description": "The value." + } + } + }, + "CPURegressionResultSingletonResourceProperties": { + "description": "The properties of CPU Regression Result.", + "x-ms-discriminator-value": "CPURegression", + "properties": { + "cpuRegressionResults": { + "description": "The result array data.", + "type": "array", + "items": { + "$ref": "#/definitions/RegressionResult" + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/AnalysisResultSingletonResourceProperties" + } + ] + }, + "MemoryRegressionResultSingletonResourceProperties": { + "description": "The properties of Memory Regression Result.", + "x-ms-discriminator-value": "MemoryRegression", + "properties": { + "memoryRegressionResults": { + "description": "The result array data.", + "type": "array", + "items": { + "$ref": "#/definitions/RegressionResult" + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/AnalysisResultSingletonResourceProperties" + } + ] + }, + "RegressionResult": { + "description": "The regression result.", + "properties": { + "fileName": { + "type": "string", + "description": "FileName of the binary being analyzed." + }, + "grade": { + "$ref": "#/definitions/TestGrade", + "description": "The grade of the test." + }, + "details": { + "type": "string", + "description": "Message that facilitates debugging a particular regression, if any was inferred." + }, + "diff": { + "type": "number", + "format": "double", + "description": "Difference between the two datasets being analyzed." + }, + "isRegressed": { + "type": "boolean", + "description": "Indicates if a regression was inferred." + } + } + }, + "OperationListResult": { + "description": "A list of operations supported by the resource provider.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "description": "List of operations supported by the Test Base resource provider." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "Operation": { + "description": "REST API operation", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}.", + "readOnly": true, + "type": "string" + }, + "isDataAction": { + "description": "Indicates whether the operation is a data action", + "readOnly": true, + "type": "boolean" + }, + "origin": { + "description": "Origin of the operation", + "readOnly": true, + "type": "string" + }, + "display": { + "description": "The object that describes the operation.", + "properties": { + "provider": { + "description": "The resource provider name: Microsoft.TestBase.", + "readOnly": true, + "type": "string" + }, + "operation": { + "description": "Operation type: read, write, delete, listPackages, etc.", + "readOnly": true, + "type": "string" + }, + "resource": { + "description": "Resource type on which the operation is performed.", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "Friendly name of the operation.", + "readOnly": true, + "type": "string" + } + } + }, + "properties": { + "$ref": "#/definitions/OperationProperties", + "description": "Extra properties of the operation.", + "x-ms-client-flatten": true + } + } + }, + "OperationProperties": { + "description": "Operation properties.", + "type": "object", + "properties": {} + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to be used with the HTTP request." + }, + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The Azure subscription ID. This is a GUID-formatted string." + }, + "ResourceGroupParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "The name of the resource group that contains the resource." + }, + "TestBaseAccountNameParameter": { + "name": "testBaseAccountName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "The resource name of the Test Base Account." + }, + "PackageNameParameter": { + "name": "packageName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "The resource name of the Test Base Package." + }, + "FavoriteProcessResourceNameParameter": { + "name": "favoriteProcessResourceName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "The resource name of a favorite process in a package. If the process name contains characters that are not allowed in Azure Resource Name, we use 'actualProcessName' in request body to submit the name." + }, + "TestResultNameParameter": { + "name": "testResultName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "The Test Result Name. It equals to {osName}-{TestResultId} string." + }, + "OSUpdateTypeParameter": { + "name": "osUpdateType", + "in": "query", + "required": true, + "type": "string", + "enum": [ + "SecurityUpdate", + "FeatureUpdate" + ], + "x-ms-enum": { + "name": "osUpdateType", + "modelAsString": true + }, + "x-ms-parameter-location": "method", + "description": "The type of the OS Update." + }, + "AnalysisResultTypeParameter": { + "name": "analysisResultType", + "in": "query", + "required": true, + "type": "string", + "enum": [ + "ScriptExecution", + "Reliability", + "MemoryUtilization", + "CPUUtilization", + "MemoryRegression", + "CPURegression" + ], + "x-ms-enum": { + "name": "analysisResultType", + "modelAsString": true + }, + "x-ms-parameter-location": "method", + "description": "The type of the Analysis Result of a Test Result." + }, + "AnalysisResultNameParameter": { + "name": "analysisResultName", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "scriptExecution", + "reliability", + "memoryUtilization", + "cpuUtilization", + "memoryRegression", + "cpuRegression" + ], + "x-ms-enum": { + "name": "analysisResultName", + "modelAsString": true + }, + "x-ms-parameter-location": "method", + "description": "The name of the Analysis Result of a Test Result." + }, + "FilterParameter": { + "name": "$filter", + "in": "query", + "type": "string", + "x-ms-parameter-location": "method", + "description": "Odata filter" + }, + "TestBaseAccountIncludeSoftDeletedParameter": { + "name": "getDeleted", + "in": "query", + "required": false, + "type": "boolean", + "x-ms-parameter-location": "method", + "description": "The flag indicating if we need to include the Test Base Accounts which were soft deleted before." + }, + "TestBaseAccountRestoreSoftDeletedParameter": { + "name": "restore", + "in": "query", + "required": false, + "type": "boolean", + "x-ms-parameter-location": "method", + "description": "The flag indicating if we would like to restore the Test Base Accounts which were soft deleted before." + } + } +} diff --git a/specification/testbase/resource-manager/readme.csharp.md b/specification/testbase/resource-manager/readme.csharp.md new file mode 100644 index 000000000000..4027d15ea2bc --- /dev/null +++ b/specification/testbase/resource-manager/readme.csharp.md @@ -0,0 +1,15 @@ +## C# + +These settings apply only when `--csharp` is specified on the command line. +Please also specify `--csharp-sdks-folder=`. + +```yaml $(csharp) +csharp: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 1 + clear-output-folder: true + client-side-validation: false + namespace: Microsoft.TestBase + output-folder: $(csharp-sdks-folder)/testbase/management/Microsoft.TestBase/GeneratedProtocol +``` diff --git a/specification/testbase/resource-manager/readme.go.md b/specification/testbase/resource-manager/readme.go.md new file mode 100644 index 000000000000..3e88a13fc511 --- /dev/null +++ b/specification/testbase/resource-manager/readme.go.md @@ -0,0 +1,26 @@ +## Go + +These settings apply only when `--go` is specified on the command line. + +```yaml $(go) +go: + license-header: MICROSOFT_APACHE_NO_VERSION + namespace: testbase + clear-output-folder: true +``` + +### Go multi-api + +``` yaml $(go) && $(multiapi) +batch: + - tag: package-2020-12-16-preview +``` + +### Tag: package-2020-12-16-preview and go + +These settings apply only when `--tag=package-2020-12-16-preview --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +```yaml $(tag) == 'package-2020-12-16-preview' && $(go) +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2020-12-16-preview/$(namespace) +``` diff --git a/specification/testbase/resource-manager/readme.md b/specification/testbase/resource-manager/readme.md new file mode 100644 index 000000000000..7ab1fea69172 --- /dev/null +++ b/specification/testbase/resource-manager/readme.md @@ -0,0 +1,90 @@ +# testbase + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for testbase. + +## Getting Started + +To build the SDKs for My API, simply install AutoRest via `npm` (`npm install -g autorest`) and then run: + +> `autorest readme.md` + +To see additional help and options, run: + +> `autorest --help` + +For other options on installation see [Installing AutoRest](https://aka.ms/autorest/install) on the AutoRest github page. + +--- + +## Configuration + +### Basic Information + +These are the global settings for the testbase. + +```yaml +openapi-type: arm +openapi-subtype: rpaas +tag: package-2020-12-16-preview +``` + +### Tag: package-2020-12-16-preview + +These settings apply only when `--tag=package-2020-12-16-preview` is specified on the command line. + +```yaml $(tag) == 'package-2020-12-16-preview' +input-file: + - Microsoft.TestBase/preview/2020-12-16-preview/testbase.json +directive: +- suppress: R4031 + from: testbase.json + reason: provisioningState is not required for Proxy Resources. +``` + +--- + +# 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-track2 + - repo: azure-sdk-for-java + - repo: azure-sdk-for-go + - repo: azure-sdk-for-js + - repo: azure-resource-manager-schemas +``` +## Suppression +``` +directive: + - suppress: SECRET_PROPERTY + from: + - Microsoft.TestBase/preview/2020-12-16-preview/testbase.json + where: + - $.definitions.DownloadURLResponse.properties.downloadUrl + reason: Secrets are OK to return in a POST response according to ARM. +``` + +## Go + +See configuration in [readme.go.md](./readme.go.md) + +## Python + +See configuration in [readme.python.md](./readme.python.md) + +## TypeScript + +See configuration in [readme.typescript.md](./readme.typescript.md) + +## CSharp + +See configuration in [readme.csharp.md](./readme.csharp.md) + + diff --git a/specification/testbase/resource-manager/readme.python.md b/specification/testbase/resource-manager/readme.python.md new file mode 100644 index 000000000000..5153796cde47 --- /dev/null +++ b/specification/testbase/resource-manager/readme.python.md @@ -0,0 +1,20 @@ +## Python + +These settings apply only when `--python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(python) +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +package-name: azure-mgmt-testbase +no-namespace-folders: true +package-version: 1.0.0b1 +``` + +``` yaml $(python-mode) == 'update' +output-folder: $(python-sdks-folder)/testbase/azure-mgmt-testbase/azure/mgmt/testbase +``` +``` yaml $(python-mode) == 'create' +basic-setup-py: true +output-folder: $(python-sdks-folder)/testbase/azure-mgmt-testbase +``` diff --git a/specification/testbase/resource-manager/readme.typescript.md b/specification/testbase/resource-manager/readme.typescript.md new file mode 100644 index 000000000000..b4ee6bc45671 --- /dev/null +++ b/specification/testbase/resource-manager/readme.typescript.md @@ -0,0 +1,14 @@ +## TypeScript + +These settings apply only when `--typescript` is specified on the command line. +Please also specify `--typescript-sdks-folder=`. + +``` yaml $(typescript) +typescript: + azure-arm: true + package-name: "@azure/arm-testbase" + output-folder: "$(typescript-sdks-folder)/sdk/testbase/arm-testbase" + payload-flattening-threshold: 1 + clear-output-folder: true + generate-metadata: true +``` diff --git a/specification/timeseriesinsights/resource-manager/readme.azureresourceschema.md b/specification/timeseriesinsights/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 297d0aa6a16a..000000000000 --- a/specification/timeseriesinsights/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,60 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-timeseriesinsights-2020-05-15 - - tag: schema-timeseriesinsights-2018-08-15-preview - - tag: schema-timeseriesinsights-2017-11-15 - - tag: schema-timeseriesinsights-2017-02-28-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-timeseriesinsights-2020-05-15 and azureresourceschema - -``` yaml $(tag) == 'schema-timeseriesinsights-2020-05-15' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.TimeSeriesInsights/stable/2020-05-15/timeseriesinsights.json - -``` - -### Tag: schema-timeseriesinsights-2018-08-15-preview and azureresourceschema - -``` yaml $(tag) == 'schema-timeseriesinsights-2018-08-15-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.TimeSeriesInsights/preview/2018-08-15-preview/timeseriesinsights.json - -``` - -### Tag: schema-timeseriesinsights-2017-11-15 and azureresourceschema - -``` yaml $(tag) == 'schema-timeseriesinsights-2017-11-15' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.TimeSeriesInsights/stable/2017-11-15/timeseriesinsights.json - -``` - -### Tag: schema-timeseriesinsights-2017-02-28-preview and azureresourceschema - -``` yaml $(tag) == 'schema-timeseriesinsights-2017-02-28-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.TimeSeriesInsights/preview/2017-02-28-preview/timeseriesinsights.json - -``` diff --git a/specification/timeseriesinsights/resource-manager/readme.go.md b/specification/timeseriesinsights/resource-manager/readme.go.md index d10635c0c85f..3db64750c95d 100644 --- a/specification/timeseriesinsights/resource-manager/readme.go.md +++ b/specification/timeseriesinsights/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION clear-output-folder: true namespace: timeseriesinsights ``` diff --git a/specification/timeseriesinsights/resource-manager/readme.md b/specification/timeseriesinsights/resource-manager/readme.md index c11fac5cb975..8e2763cc2876 100644 --- a/specification/timeseriesinsights/resource-manager/readme.md +++ b/specification/timeseriesinsights/resource-manager/readme.md @@ -118,8 +118,6 @@ swagger-to-sdk: - repo: azure-sdk-for-python - repo: azure-sdk-for-python-track2 - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js timeseriesinsights/resource-manager ``` ## Go @@ -206,7 +204,5 @@ regenerate-manager: true generate-interface: true ``` -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/timeseriesinsights/resource-manager/readme.python.md b/specification/timeseriesinsights/resource-manager/readme.python.md index 3f6eaf3021ca..2685e1c694ba 100644 --- a/specification/timeseriesinsights/resource-manager/readme.python.md +++ b/specification/timeseriesinsights/resource-manager/readme.python.md @@ -12,6 +12,7 @@ python: payload-flattening-threshold: 2 namespace: azure.mgmt.timeseriesinsights package-name: azure-mgmt-timeseriesinsights + package-version: 0.1.0 clear-output-folder: true ``` ``` yaml $(python) && $(track2) @@ -20,6 +21,8 @@ azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION namespace: azure.mgmt.timeseriesinsights package-name: azure-mgmt-timeseriesinsights +package-version: 0.1.0 +clear-output-folder: true ``` ``` yaml $(python) && $(python-mode) == 'update' && !$(track2) diff --git a/specification/trafficmanager/resource-manager/readme.azureresourceschema.md b/specification/trafficmanager/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index d24a1fa2fcbf..000000000000 --- a/specification/trafficmanager/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,108 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-network-2018-08-01 - - tag: schema-network-2018-04-01 - - tag: schema-network-2018-03-01 - - tag: schema-network-2018-02-01 - - tag: schema-network-2017-09-01-preview - - tag: schema-network-2017-05-01 - - tag: schema-network-2017-03-01 - - tag: schema-network-2015-11-01 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-network-2018-08-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2018-08-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2018-08-01/trafficmanager.json - -``` - -### Tag: schema-network-2018-04-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2018-04-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2018-04-01/trafficmanager.json - -``` - -### Tag: schema-network-2018-03-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2018-03-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2018-03-01/trafficmanager.json - -``` - -### Tag: schema-network-2018-02-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2018-02-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2018-02-01/trafficmanager.json - -``` - -### Tag: schema-network-2017-09-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-network-2017-09-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/preview/2017-09-01-preview/trafficmanageranalytics.json - -``` - -### Tag: schema-network-2017-05-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2017-05-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2017-05-01/trafficmanager.json - -``` - -### Tag: schema-network-2017-03-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2017-03-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2017-03-01/trafficmanager.json - -``` - -### Tag: schema-network-2015-11-01 and azureresourceschema - -``` yaml $(tag) == 'schema-network-2015-11-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Network/stable/2015-11-01/trafficmanager.json - -``` diff --git a/specification/trafficmanager/resource-manager/readme.go.md b/specification/trafficmanager/resource-manager/readme.go.md index 2babc4080497..6686c42a5696 100644 --- a/specification/trafficmanager/resource-manager/readme.go.md +++ b/specification/trafficmanager/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: trafficmanager clear-output-folder: true ``` diff --git a/specification/trafficmanager/resource-manager/readme.md b/specification/trafficmanager/resource-manager/readme.md index 378fed53a9bf..410aa199e403 100644 --- a/specification/trafficmanager/resource-manager/readme.md +++ b/specification/trafficmanager/resource-manager/readme.md @@ -183,6 +183,7 @@ This is not used by Autorest itself. swagger-to-sdk: - repo: azure-sdk-for-net - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-libraries-for-java - repo: azure-sdk-for-go - repo: azure-sdk-for-node @@ -191,8 +192,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_traffic_manager'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js trafficmanager/resource-manager ``` @@ -214,30 +213,7 @@ 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 - license-header: MICROSOFT_MIT_NO_VERSION - payload-flattening-threshold: 2 - namespace: azure.mgmt.trafficmanager - package-name: azure-mgmt-trafficmanager - clear-output-folder: true -``` -``` yaml $(python) && $(python-mode) == 'update' -python: - no-namespace-folders: true - output-folder: $(python-sdks-folder)/trafficmanager/azure-mgmt-trafficmanager/azure/mgmt/trafficmanager -``` -``` yaml $(python) && $(python-mode) == 'create' -python: - basic-setup-py: true - output-folder: $(python-sdks-folder)/trafficmanager/azure-mgmt-trafficmanager -``` +See configuration in [readme.python.md](./readme.python.md) ## Go @@ -258,7 +234,5 @@ java: output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-trafficmanager ``` -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/trafficmanager/resource-manager/readme.python.md b/specification/trafficmanager/resource-manager/readme.python.md new file mode 100644 index 000000000000..9cc7e779c70a --- /dev/null +++ b/specification/trafficmanager/resource-manager/readme.python.md @@ -0,0 +1,44 @@ +## 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)&& !$(track2) +python-mode: create +python: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 2 + namespace: azure.mgmt.trafficmanager + package-name: azure-mgmt-trafficmanager + package-version: 1.0.0b1 + clear-output-folder: true +``` +``` yaml $(python) && $(track2) +python-mode: create +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +namespace: azure.mgmt.trafficmanager +package-name: azure-mgmt-trafficmanager +package-version: 1.0.0b1 +clear-output-folder: true +``` +``` yaml $(python) && $(python-mode) == 'update'&& !$(track2) +python: + no-namespace-folders: true + output-folder: $(python-sdks-folder)/trafficmanager/azure-mgmt-trafficmanager/azure/mgmt/trafficmanager +``` +``` yaml $(python) && $(python-mode) == 'create'&& !$(track2) +python: + basic-setup-py: true + output-folder: $(python-sdks-folder)/trafficmanager/azure-mgmt-trafficmanager +``` +``` yaml $(python) && $(python-mode) == 'update' && $(track2) +no-namespace-folders: true +output-folder: $(python-sdks-folder)/trafficmanager/azure-mgmt-trafficmanager/azure/mgmt/trafficmanager +``` +``` yaml $(python) && $(python-mode) == 'create' && $(track2) +basic-setup-py: true +output-folder: $(python-sdks-folder)/trafficmanager/azure-mgmt-trafficmanager +``` diff --git a/specification/videoanalyzer/data-plane/VideoAnalyzer.Edge/preview/1.0.0/AzureVideoAnalyzer.json b/specification/videoanalyzer/data-plane/VideoAnalyzer.Edge/preview/1.0.0/AzureVideoAnalyzer.json new file mode 100644 index 000000000000..35ce93549b72 --- /dev/null +++ b/specification/videoanalyzer/data-plane/VideoAnalyzer.Edge/preview/1.0.0/AzureVideoAnalyzer.json @@ -0,0 +1,1689 @@ +{ + "swagger": "2.0", + "info": { + "version": "1.0.0", + "title": "Azure Video Analyzer for Edge", + "description": "Azure Video Analyzer resources which can be utilized when performing direct method calls through Azure IoT Edge.", + "contact": { + "email": "videoanalyzerhelp@microsoft.com" + } + }, + "security": [ + { + "sharedAccessSignature": [] + } + ], + "paths": {}, + "securityDefinitions": { + "sharedAccessSignature": { + "type": "apiKey", + "name": "Authorization", + "in": "header" + } + }, + "definitions": { + "LivePipeline": { + "type": "object", + "required": [ + "name" + ], + "properties": { + "name": { + "type": "string", + "description": "Live pipeline unique identifier." + }, + "systemData": { + "$ref": "#/definitions/SystemData", + "description": "Read-only system metadata associated with this object." + }, + "properties": { + "$ref": "#/definitions/LivePipelineProperties", + "description": "Live pipeline properties." + } + }, + "description": "Live Pipeline represents an unique instance of a pipeline topology which is used for real-time content ingestion and analysis." + }, + "LivePipelineProperties": { + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "An optional description of the live pipeline." + }, + "topologyName": { + "type": "string", + "description": "The reference to an existing pipeline topology defined for real-time content processing. When activated, this live pipeline will process content according to the pipeline topology definition." + }, + "parameters": { + "type": "array", + "description": "List of the instance level parameter values for the user-defined topology parameters. A pipeline can only define or override parameters values for parameters which have been declared in the referenced topology. Topology parameters without a default value must be defined. Topology parameters with a default value can be optionally be overridden.", + "items": { + "$ref": "#/definitions/ParameterDefinition" + } + }, + "state": { + "type": "string", + "description": "Current pipeline state (read-only).", + "enum": [ + "inactive", + "activating", + "active", + "deactivating" + ], + "x-ms-enum": { + "name": "livePipelineState", + "values": [ + { + "value": "inactive", + "description": "The live pipeline is idle and not processing media." + }, + { + "value": "activating", + "description": "The live pipeline is transitioning into the active state." + }, + { + "value": "active", + "description": "The live pipeline is active and able to process media. If your data source is not available, for instance, if your RTSP camera is powered off or unreachable, the pipeline will still be active and periodically retrying the connection. Your Azure subscription will be billed for the duration in which the live pipeline is in the active state." + }, + { + "value": "deactivating", + "description": "The live pipeline is transitioning into the inactive state." + } + ], + "modelAsString": true + } + } + }, + "description": "Live pipeline properties." + }, + "ParameterDefinition": { + "type": "object", + "required": [ + "name" + ], + "properties": { + "name": { + "type": "string", + "description": "Name of the parameter declared in the pipeline topology." + }, + "value": { + "type": "string", + "description": "Parameter value to be applied on this specific live pipeline." + } + }, + "description": "Defines the parameter value of an specific pipeline topology parameter. See pipeline topology parameters for more information." + }, + "LivePipelineCollection": { + "type": "object", + "properties": { + "value": { + "type": "array", + "description": "List of live pipelines.", + "items": { + "$ref": "#/definitions/LivePipeline" + } + }, + "@continuationToken": { + "type": "string", + "description": "A continuation token to be used in subsequent calls when enumerating through the collection. This is returned when the collection results won't fit in a single response." + } + }, + "description": "A collection of live pipelines." + }, + "PipelineTopologyCollection": { + "type": "object", + "properties": { + "value": { + "type": "array", + "description": "List of pipeline topologies.", + "items": { + "$ref": "#/definitions/PipelineTopology" + } + }, + "@continuationToken": { + "type": "string", + "description": "A continuation token to be used in subsequent calls when enumerating through the collection. This is returned when the collection results won't fit in a single response." + } + }, + "description": "A collection of pipeline topologies." + }, + "PipelineTopology": { + "type": "object", + "required": [ + "name" + ], + "properties": { + "name": { + "type": "string", + "description": "Pipeline topology unique identifier." + }, + "systemData": { + "$ref": "#/definitions/SystemData", + "description": "Read-only system metadata associated with this object." + }, + "properties": { + "$ref": "#/definitions/PipelineTopologyProperties", + "description": "Pipeline topology properties." + } + }, + "description": "Pipeline topology describes the processing steps to be applied when processing media for a particular outcome. The topology should be defined according to the scenario to be achieved and can be reused across many pipeline instances which share the same processing characteristics. For instance, a pipeline topology which acquires data from a RTSP camera, process it with an specific AI model and stored the data on the cloud can be reused across many different cameras, as long as the same processing should be applied across all the cameras. Individual instance properties can be defined through the use of user-defined parameters, which allow for a topology to be parameterized, thus allowing individual pipelines to refer to different values, such as individual cameras RTSP endpoints and credentials. Overall a topology is composed of the following:\r\n\r\n - Parameters: list of user defined parameters that can be references across the topology nodes.\r\n - Sources: list of one or more data sources nodes such as an RTSP source which allows for media to be ingested from cameras.\r\n - Processors: list of nodes which perform data analysis or transformations.\r\n -Sinks: list of one or more data sinks which allow for data to be stored or exported to other destinations." + }, + "PipelineTopologyProperties": { + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "An optional description of the pipeline topology. It is recommended that the expected use of the topology to be described here." + }, + "parameters": { + "type": "array", + "items": { + "$ref": "#/definitions/ParameterDeclaration" + }, + "description": "List of the topology parameter declarations. Parameters declared here can be referenced throughout the topology nodes through the use of \"${PARAMETER_NAME}\" string pattern. Parameters can have optional default values and can later be defined in individual instances of the pipeline." + }, + "sources": { + "type": "array", + "items": { + "$ref": "#/definitions/SourceNodeBase" + }, + "description": "List of the topology source nodes. Source nodes enable external data to be ingested by the pipeline." + }, + "processors": { + "type": "array", + "items": { + "$ref": "#/definitions/ProcessorNodeBase" + }, + "description": "List of the topology processor nodes. Processor nodes enable pipeline data to be analyzed, processed or transformed." + }, + "sinks": { + "type": "array", + "items": { + "$ref": "#/definitions/SinkNodeBase" + }, + "description": "List of the topology sink nodes. Sink nodes allow pipeline data to be stored or exported." + } + }, + "description": "Pipeline topology properties." + }, + "SystemData": { + "type": "object", + "properties": { + "createdAt": { + "type": "string", + "format": "date-time", + "description": "Date and time when this resource was first created. Value is represented in UTC according to the ISO8601 date format." + }, + "lastModifiedAt": { + "type": "string", + "format": "date-time", + "description": "Date and time when this resource was last modified. Value is represented in UTC according to the ISO8601 date format." + } + }, + "description": "Read-only system metadata associated with a resource." + }, + "ParameterDeclaration": { + "type": "object", + "required": [ + "name", + "type" + ], + "properties": { + "name": { + "type": "string", + "description": "Name of the parameter.", + "maxLength": 64 + }, + "type": { + "type": "string", + "description": "Type of the parameter.", + "enum": [ + "string", + "secretString", + "int", + "double", + "bool" + ], + "x-ms-enum": { + "name": "parameterType", + "values": [ + { + "value": "string", + "description": "The parameter's value is a string." + }, + { + "value": "secretString", + "description": "The parameter's value is a string that holds sensitive information." + }, + { + "value": "int", + "description": "The parameter's value is a 32-bit signed integer." + }, + { + "value": "double", + "description": "The parameter's value is a 64-bit double-precision floating point." + }, + { + "value": "bool", + "description": "The parameter's value is a boolean value that is either true or false." + } + ], + "modelAsString": true + } + }, + "description": { + "type": "string", + "description": "Description of the parameter." + }, + "default": { + "type": "string", + "description": "The default value for the parameter to be used if the live pipeline does not specify a value." + } + }, + "description": "Single topology parameter declaration. Declared parameters can and must be referenced throughout the topology and can optionally have default values to be used when they are not defined in the pipeline instances." + }, + "SourceNodeBase": { + "type": "object", + "required": [ + "@type", + "name" + ], + "discriminator": "@type", + "properties": { + "@type": { + "type": "string", + "description": "Type discriminator for the derived types." + }, + "name": { + "type": "string", + "description": "Node name. Must be unique within the topology." + } + }, + "description": "Base class for topology source nodes." + }, + "RtspSource": { + "type": "object", + "properties": { + "transport": { + "type": "string", + "description": "Network transport utilized by the RTSP and RTP exchange: TCP or HTTP. When using TCP, the RTP packets are interleaved on the TCP RTSP connection. When using HTTP, the RTSP messages are exchanged through long lived HTTP connections, and the RTP packages are interleaved in the HTTP connections alongside the RTSP messages.", + "enum": [ + "http", + "tcp" + ], + "x-ms-enum": { + "name": "rtspTransport", + "values": [ + { + "value": "http", + "description": "HTTP transport. RTSP messages are exchanged over long running HTTP requests and RTP packets are interleaved within the HTTP channel." + }, + { + "value": "tcp", + "description": "TCP transport. RTSP is used directly over TCP and RTP packets are interleaved within the TCP channel." + } + ], + "modelAsString": true + } + }, + "endpoint": { + "description": "RTSP endpoint information for Video Analyzer to connect to. This contains the required information for Video Analyzer to connect to RTSP cameras and/or generic RTSP servers.", + "$ref": "#/definitions/EndpointBase" + } + }, + "required": [ + "endpoint" + ], + "allOf": [ + { + "$ref": "#/definitions/SourceNodeBase" + } + ], + "description": "RTSP source allows for media from an RTSP camera or generic RTSP server to be ingested into a live pipeline.", + "x-ms-discriminator-value": "#Microsoft.VideoAnalyzer.RtspSource" + }, + "IotHubMessageSource": { + "type": "object", + "properties": { + "hubInputName": { + "type": "string", + "description": "Name of the IoT Edge Hub input from which messages will be consumed." + } + }, + "allOf": [ + { + "$ref": "#/definitions/SourceNodeBase" + } + ], + "description": "IoT Hub Message source allows for the pipeline to consume messages from the IoT Edge Hub. Messages can be routed from other IoT modules via routes declared in the IoT Edge deployment manifest.", + "x-ms-discriminator-value": "#Microsoft.VideoAnalyzer.IotHubMessageSource" + }, + "IotHubMessageSink": { + "type": "object", + "properties": { + "hubOutputName": { + "type": "string", + "description": "Name of the Iot Edge Hub output to which the messages will be published." + } + }, + "required": [ + "@type", + "hubOutputName" + ], + "allOf": [ + { + "$ref": "#/definitions/SinkNodeBase" + } + ], + "description": "IoT Hub Message sink allows for pipeline messages to published into the IoT Edge Hub. Published messages can then be delivered to the cloud and other modules via routes declared in the IoT Edge deployment manifest.", + "x-ms-discriminator-value": "#Microsoft.VideoAnalyzer.IotHubMessageSink" + }, + "EndpointBase": { + "type": "object", + "required": [ + "@type", + "url" + ], + "discriminator": "@type", + "properties": { + "@type": { + "type": "string", + "description": "Type discriminator for the derived types." + }, + "credentials": { + "description": "Credentials to be presented to the endpoint.", + "$ref": "#/definitions/CredentialsBase" + }, + "url": { + "type": "string", + "description": "The endpoint URL for Video Analyzer to connect to." + } + }, + "description": "Base class for endpoints." + }, + "CredentialsBase": { + "type": "object", + "required": [ + "@type" + ], + "discriminator": "@type", + "properties": { + "@type": { + "type": "string", + "description": "Type discriminator for the derived types." + } + }, + "description": "Base class for credential objects." + }, + "UsernamePasswordCredentials": { + "type": "object", + "properties": { + "username": { + "type": "string", + "description": "Username to be presented as part of the credentials." + }, + "password": { + "type": "string", + "description": "Password to be presented as part of the credentials. It is recommended that this value is parameterized as a secret string in order to prevent this value to be returned as part of the resource on API requests." + } + }, + "required": [ + "username", + "password" + ], + "allOf": [ + { + "$ref": "#/definitions/CredentialsBase" + } + ], + "description": "Username and password credentials.", + "x-ms-discriminator-value": "#Microsoft.VideoAnalyzer.UsernamePasswordCredentials" + }, + "HttpHeaderCredentials": { + "type": "object", + "properties": { + "headerName": { + "type": "string", + "description": "HTTP header name." + }, + "headerValue": { + "type": "string", + "description": "HTTP header value. It is recommended that this value is parameterized as a secret string in order to prevent this value to be returned as part of the resource on API requests." + } + }, + "required": [ + "headerName", + "headerValue" + ], + "allOf": [ + { + "$ref": "#/definitions/CredentialsBase" + } + ], + "description": "HTTP header credentials.", + "x-ms-discriminator-value": "#Microsoft.VideoAnalyzer.HttpHeaderCredentials" + }, + "UnsecuredEndpoint": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/EndpointBase" + } + ], + "description": "Unsecured endpoint describes an endpoint that the pipeline can connect to over clear transport (no encryption in transit).", + "x-ms-discriminator-value": "#Microsoft.VideoAnalyzer.UnsecuredEndpoint" + }, + "TlsEndpoint": { + "type": "object", + "properties": { + "trustedCertificates": { + "description": "List of trusted certificate authorities when authenticating a TLS connection. A null list designates that Azure Video Analyzer's list of trusted authorities should be used.", + "$ref": "#/definitions/CertificateSource" + }, + "validationOptions": { + "description": "Validation options to use when authenticating a TLS connection. By default, strict validation is used.", + "$ref": "#/definitions/TlsValidationOptions" + } + }, + "allOf": [ + { + "$ref": "#/definitions/EndpointBase" + } + ], + "description": "TLS endpoint describes an endpoint that the pipeline can connect to over TLS transport (data is encrypted in transit).", + "x-ms-discriminator-value": "#Microsoft.VideoAnalyzer.TlsEndpoint" + }, + "CertificateSource": { + "type": "object", + "required": [ + "@type" + ], + "discriminator": "@type", + "properties": { + "@type": { + "type": "string", + "description": "Type discriminator for the derived types." + } + }, + "description": "Base class for certificate sources." + }, + "TlsValidationOptions": { + "type": "object", + "properties": { + "ignoreHostname": { + "type": "string", + "description": "When set to 'true' causes the certificate subject name validation to be skipped. Default is 'false'." + }, + "ignoreSignature": { + "type": "string", + "description": "When set to 'true' causes the certificate chain trust validation to be skipped. Default is 'false'." + } + }, + "description": "Options for controlling the validation of TLS endpoints." + }, + "PemCertificateList": { + "type": "object", + "properties": { + "certificates": { + "type": "array", + "description": "PEM formatted public certificates. One certificate per entry.", + "items": { + "type": "string" + } + } + }, + "required": [ + "certificates" + ], + "allOf": [ + { + "$ref": "#/definitions/CertificateSource" + } + ], + "description": "A list of PEM formatted certificates.", + "x-ms-discriminator-value": "#Microsoft.VideoAnalyzer.PemCertificateList" + }, + "SinkNodeBase": { + "type": "object", + "required": [ + "@type", + "inputs", + "name" + ], + "discriminator": "@type", + "properties": { + "@type": { + "type": "string", + "description": "Type discriminator for the derived types." + }, + "name": { + "type": "string", + "description": "Node name. Must be unique within the topology." + }, + "inputs": { + "type": "array", + "description": "An array of upstream node references within the topology to be used as inputs for this node.", + "items": { + "$ref": "#/definitions/NodeInput" + } + } + }, + "description": "Base class for topology sink nodes." + }, + "NodeInput": { + "type": "object", + "required": [ + "nodeName" + ], + "properties": { + "nodeName": { + "type": "string", + "description": "The name of the upstream node in the pipeline which output is used as input of the current node." + }, + "outputSelectors": { + "type": "array", + "description": "Allows for the selection of specific data streams (eg. video only) from another node.", + "items": { + "$ref": "#/definitions/OutputSelector" + } + } + }, + "description": "Describes an input signal to be used on a pipeline node." + }, + "OutputSelector": { + "type": "object", + "properties": { + "property": { + "type": "string", + "description": "The property of the data stream to be used as the selection criteria.", + "enum": [ + "mediaType" + ], + "x-ms-enum": { + "name": "outputSelectorProperty", + "values": [ + { + "value": "mediaType", + "description": "The stream's MIME type or subtype: audio, video or application" + } + ], + "modelAsString": true + } + }, + "operator": { + "type": "string", + "description": "The operator to compare properties by.", + "enum": [ + "is", + "isNot" + ], + "x-ms-enum": { + "name": "outputSelectorOperator", + "values": [ + { + "value": "is", + "description": "The property is of the type defined by value." + }, + { + "value": "isNot", + "description": "The property is not of the type defined by value." + } + ], + "modelAsString": true + } + }, + "value": { + "type": "string", + "description": "Value to compare against." + } + }, + "description": "Allows for the selection of particular streams from another node." + }, + "FileSink": { + "type": "object", + "properties": { + "baseDirectoryPath": { + "type": "string", + "description": "Absolute directory path where media files will be stored.", + "example": "/var/media/output/" + }, + "fileNamePattern": { + "type": "string", + "description": "File name pattern for creating new files when performing event based recording. The pattern must include at least one system variable.", + "example": "mySampleFile-${System.TopologyName}-${System.PipelineName}-${System.Runtime.DateTime}" + }, + "maximumSizeMiB": { + "type": "string", + "description": "Maximum amount of disk space that can be used for storing files from this sink. Once this limit is reached, the oldest files from this sink will be automatically deleted." + } + }, + "required": [ + "fileNamePattern", + "baseDirectoryPath", + "maximumSizeMiB" + ], + "allOf": [ + { + "$ref": "#/definitions/SinkNodeBase" + } + ], + "description": "File sink allows for video and audio content to be recorded on the file system on the edge device.", + "x-ms-discriminator-value": "#Microsoft.VideoAnalyzer.FileSink" + }, + "VideoCreationProperties": { + "type": "object", + "properties": { + "title": { + "type": "string", + "description": "Optional video title provided by the user. Value can be up to 256 characters long." + }, + "description": { + "type": "string", + "description": "Optional video description provided by the user. Value can be up to 2048 characters long." + }, + "segmentLength": { + "type": "string", + "example": "PT30S", + "description": "Video segment length indicates the length of individual video files (segments) which are persisted to storage. Smaller segments provide lower archive playback latency but generate larger volume of storage transactions. Larger segments reduce the amount of storage transactions while increasing the archive playback latency. Value must be specified in ISO8601 duration format (i.e. \"PT30S\" equals 30 seconds) and can vary between 30 seconds to 5 minutes, in 30 seconds increments. Changing this value after the video is initially created can lead to errors when uploading media to the archive. Default value is 30 seconds." + } + }, + "description": "Optional video properties to be used in case a new video resource needs to be created on the service. These will not take effect if the video already exists." + }, + "VideoSink": { + "type": "object", + "properties": { + "videoName": { + "type": "string", + "description": "Name of a new or existing Video Analyzer video resource used for the media recording.", + "example": "myVideo001" + }, + "videoCreationProperties": { + "description": "Optional video properties to be used in case a new video resource needs to be created on the service.", + "$ref": "#/definitions/VideoCreationProperties" + }, + "localMediaCachePath": { + "type": "string", + "description": "Path to a local file system directory for caching of temporary media files. This will also be used to store content which cannot be immediately uploaded to Azure due to Internet connectivity issues.", + "example": "/var/lib/tmp/" + }, + "localMediaCacheMaximumSizeMiB": { + "type": "string", + "description": "Maximum amount of disk space that can be used for caching of temporary media files. Once this limit is reached, the oldest segments of the media archive will be continuously deleted in order to make space for new media, thus leading to gaps in the cloud recorded content." + } + }, + "required": [ + "@type", + "videoName", + "localMediaCachePath", + "localMediaCacheMaximumSizeMiB" + ], + "allOf": [ + { + "$ref": "#/definitions/SinkNodeBase" + } + ], + "description": "Video sink allows for video and audio to be recorded to the Video Analyzer service. The recorded video can be played from anywhere and further managed from the cloud. Due to security reasons, a given Video Analyzer edge module instance can only record content to new video entries, or existing video entries previously recorded by the same module. Any attempt to record content to an existing video which has not been created by the same module instance will result in failure to record.", + "x-ms-discriminator-value": "#Microsoft.VideoAnalyzer.VideoSink" + }, + "ProcessorNodeBase": { + "type": "object", + "required": [ + "@type", + "inputs", + "name" + ], + "discriminator": "@type", + "properties": { + "@type": { + "type": "string", + "description": "Type discriminator for the derived types." + }, + "name": { + "type": "string", + "description": "Node name. Must be unique within the topology." + }, + "inputs": { + "type": "array", + "description": "An array of upstream node references within the topology to be used as inputs for this node.", + "items": { + "$ref": "#/definitions/NodeInput" + } + } + }, + "description": "Base class for topology processor nodes." + }, + "MotionDetectionProcessor": { + "type": "object", + "properties": { + "sensitivity": { + "type": "string", + "description": "Motion detection sensitivity: low, medium, high.", + "enum": [ + "low", + "medium", + "high" + ], + "x-ms-enum": { + "name": "motionDetectionSensitivity", + "values": [ + { + "value": "low", + "description": "Low sensitivity." + }, + { + "value": "medium", + "description": "Medium sensitivity." + }, + { + "value": "high", + "description": "High sensitivity." + } + ], + "modelAsString": true + } + }, + "outputMotionRegion": { + "type": "boolean", + "description": "Indicates whether the processor should detect and output the regions within the video frame where motion was detected. Default is true." + }, + "eventAggregationWindow": { + "type": "string", + "description": "Time window duration on which events are aggregated before being emitted. Value must be specified in ISO8601 duration format (i.e. \"PT2S\" equals 2 seconds). Use 0 seconds for no aggregation. Default is 1 second." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProcessorNodeBase" + } + ], + "description": "Motion detection processor allows for motion detection on the video stream. It generates motion events whenever motion is present on the video.", + "x-ms-discriminator-value": "#Microsoft.VideoAnalyzer.MotionDetectionProcessor" + }, + "ObjectTrackingProcessor": { + "type": "object", + "properties": { + "accuracy": { + "type": "string", + "description": "Object tracker accuracy: low, medium, high. Higher accuracy leads to higher CPU consumption in average.", + "enum": [ + "low", + "medium", + "high" + ], + "x-ms-enum": { + "name": "objectTrackingAccuracy", + "values": [ + { + "value": "low", + "description": "Low accuracy." + }, + { + "value": "medium", + "description": "Medium accuracy." + }, + { + "value": "high", + "description": "High accuracy." + } + ], + "modelAsString": true + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProcessorNodeBase" + } + ], + "description": "Object tracker processor allows for continuous tracking of one of more objects over a finite sequence of video frames. It must be used downstream of an object detector extension node, thus allowing for the extension to be configured to to perform inferences on sparse frames through the use of the 'maximumSamplesPerSecond' sampling property. The object tracker node will then track the detected objects over the frames in which the detector is not invoked resulting on a smother tracking of detected objects across the continuum of video frames. The tracker will stop tracking objects which are not subsequently detected by the upstream detector on the subsequent detections.", + "x-ms-discriminator-value": "#Microsoft.VideoAnalyzer.ObjectTrackingProcessor" + }, + "LineCrossingProcessor": { + "type": "object", + "required": [ + "lines" + ], + "properties": { + "lines": { + "type": "array", + "description": "An array of lines used to compute line crossing events.", + "items": { + "$ref": "#/definitions/NamedLineBase" + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProcessorNodeBase" + } + ], + "description": "Line crossing processor allows for the detection of tracked objects moving across one or more predefined lines. It must be downstream of an object tracker of downstream on an AI extension node that generates sequenceId for objects which are tracked across different frames of the video. Inference events are generated every time objects crosses from one side of the line to another.", + "x-ms-discriminator-value": "#Microsoft.VideoAnalyzer.LineCrossingProcessor" + }, + "ExtensionProcessorBase": { + "type": "object", + "required": [ + "endpoint", + "image" + ], + "properties": { + "endpoint": { + "description": "Endpoint details of the pipeline extension plugin.", + "$ref": "#/definitions/EndpointBase" + }, + "image": { + "description": "Image transformations and formatting options to be applied to the video frame(s) prior submission to the pipeline extension plugin.", + "$ref": "#/definitions/ImageProperties" + }, + "samplingOptions": { + "description": "Media sampling parameters that define how often media is submitted to the extension plugin.", + "$ref": "#/definitions/SamplingOptions" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProcessorNodeBase" + } + ], + "description": "Base class for pipeline extension processors. Pipeline extensions allow for custom media analysis and processing to be plugged into the Video Analyzer pipeline.", + "x-ms-discriminator-value": "#Microsoft.VideoAnalyzer.ExtensionProcessorBase" + }, + "GrpcExtension": { + "type": "object", + "required": [ + "dataTransfer" + ], + "properties": { + "dataTransfer": { + "description": "Specifies how media is transferred to the extension plugin.", + "$ref": "#/definitions/GrpcExtensionDataTransfer" + }, + "extensionConfiguration": { + "type": "string", + "description": "An optional configuration string that is sent to the extension plugin. The configuration string is specific to each custom extension and it not understood neither validated by Video Analyzer. Please see https://aka.ms/ava-extension-grpc for details." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ExtensionProcessorBase" + } + ], + "description": "GRPC extension processor allows pipeline extension plugins to be connected to the pipeline through over a gRPC channel. Extension plugins must act as an gRPC server. Please see https://aka.ms/ava-extension-grpc for details.", + "x-ms-discriminator-value": "#Microsoft.VideoAnalyzer.GrpcExtension" + }, + "GrpcExtensionDataTransfer": { + "type": "object", + "required": [ + "mode" + ], + "properties": { + "sharedMemorySizeMiB": { + "type": "string", + "description": "The share memory buffer for sample transfers, in mebibytes. It can only be used with the 'SharedMemory' transfer mode." + }, + "mode": { + "type": "string", + "description": "Data transfer mode: embedded or sharedMemory.", + "enum": [ + "embedded", + "sharedMemory" + ], + "x-ms-enum": { + "name": "grpcExtensionDataTransferMode", + "values": [ + { + "value": "embedded", + "description": "Media samples are embedded into the gRPC messages. This mode is less efficient but it requires a simpler implementations and can be used with plugins which are not on the same node as the Video Analyzer module." + }, + { + "value": "sharedMemory", + "description": "Media samples are made available through shared memory. This mode enables efficient data transfers but it requires that the extension plugin to be co-located on the same node and sharing the same shared memory space." + } + ], + "modelAsString": true + } + } + }, + "description": "Describes how media is transferred to the extension plugin.", + "x-ms-discriminator-value": "#Microsoft.VideoAnalyzer.GrpcExtensionDataTransfer" + }, + "HttpExtension": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ExtensionProcessorBase" + } + ], + "description": "HTTP extension processor allows pipeline extension plugins to be connected to the pipeline through over the HTTP protocol. Extension plugins must act as an HTTP server. Please see https://aka.ms/ava-extension-http for details.", + "x-ms-discriminator-value": "#Microsoft.VideoAnalyzer.HttpExtension" + }, + "ImageProperties": { + "type": "object", + "properties": { + "scale": { + "$ref": "#/definitions/ImageScale" + }, + "format": { + "$ref": "#/definitions/ImageFormatProperties" + } + }, + "description": "Image transformations and formatting options to be applied to the video frame(s)." + }, + "SamplingOptions": { + "type": "object", + "properties": { + "skipSamplesWithoutAnnotation": { + "type": "string", + "description": "When set to 'true', prevents frames without upstream inference data to be sent to the extension plugin. This is useful to limit the frames sent to the extension to pre-analyzed frames only. For example, when used downstream from a motion detector, this can enable for only frames in which motion has been detected to be further analyzed." + }, + "maximumSamplesPerSecond": { + "type": "string", + "description": "Maximum rate of samples submitted to the extension. This prevents an extension plugin to be overloaded with data." + } + }, + "description": "Defines how often media is submitted to the extension plugin." + }, + "ImageScale": { + "type": "object", + "properties": { + "mode": { + "type": "string", + "description": "Describes the image scaling mode to be applied. Default mode is 'pad'.", + "enum": [ + "preserveAspectRatio", + "pad", + "stretch" + ], + "x-ms-enum": { + "name": "imageScaleMode", + "values": [ + { + "value": "preserveAspectRatio", + "description": "Preserves the same aspect ratio as the input image. If only one image dimension is provided, the second dimension is calculated based on the input image aspect ratio. When 2 dimensions are provided, the image is resized to fit the most constraining dimension, considering the input image size and aspect ratio." + }, + { + "value": "pad", + "description": "Pads the image with black horizontal stripes (letterbox) or black vertical stripes (pillar-box) so the image is resized to the specified dimensions while not altering the content aspect ratio." + }, + { + "value": "stretch", + "description": "Stretches the original image so it resized to the specified dimensions." + } + ], + "modelAsString": true + } + }, + "width": { + "type": "string", + "description": "The desired output image width." + }, + "height": { + "type": "string", + "description": "The desired output image height." + } + }, + "description": "Image scaling mode." + }, + "ImageFormatProperties": { + "type": "object", + "required": [ + "@type" + ], + "discriminator": "@type", + "properties": { + "@type": { + "type": "string", + "description": "Type discriminator for the derived types." + } + }, + "description": "Base class for image formatting properties." + }, + "ImageFormatRaw": { + "type": "object", + "required": [ + "pixelFormat" + ], + "properties": { + "pixelFormat": { + "type": "string", + "description": "Pixel format to be applied to the raw image.", + "enum": [ + "yuv420p", + "rgb565be", + "rgb565le", + "rgb555be", + "rgb555le", + "rgb24", + "bgr24", + "argb", + "rgba", + "abgr", + "bgra" + ], + "x-ms-enum": { + "name": "imageFormatRawPixelFormat", + "values": [ + { + "value": "yuv420p", + "description": "Planar YUV 4:2:0, 12bpp, (1 Cr and Cb sample per 2x2 Y samples)." + }, + { + "value": "rgb565be", + "description": "Packed RGB 5:6:5, 16bpp, (msb) 5R 6G 5B(lsb), big-endian." + }, + { + "value": "rgb565le", + "description": "Packed RGB 5:6:5, 16bpp, (msb) 5R 6G 5B(lsb), little-endian." + }, + { + "value": "rgb555be", + "description": "Packed RGB 5:5:5, 16bpp, (msb)1X 5R 5G 5B(lsb), big-endian , X=unused/undefined." + }, + { + "value": "rgb555le", + "description": "Packed RGB 5:5:5, 16bpp, (msb)1X 5R 5G 5B(lsb), little-endian, X=unused/undefined." + }, + { + "value": "rgb24", + "description": "Packed RGB 8:8:8, 24bpp, RGBRGB." + }, + { + "value": "bgr24", + "description": "Packed RGB 8:8:8, 24bpp, BGRBGR." + }, + { + "value": "argb", + "description": "Packed ARGB 8:8:8:8, 32bpp, ARGBARGB." + }, + { + "value": "rgba", + "description": "Packed RGBA 8:8:8:8, 32bpp, RGBARGBA." + }, + { + "value": "abgr", + "description": "Packed ABGR 8:8:8:8, 32bpp, ABGRABGR." + }, + { + "value": "bgra", + "description": "Packed BGRA 8:8:8:8, 32bpp, BGRABGRA." + } + ], + "modelAsString": true + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/ImageFormatProperties" + } + ], + "description": "Raw image formatting.", + "x-ms-discriminator-value": "#Microsoft.VideoAnalyzer.ImageFormatRaw" + }, + "ImageFormatJpeg": { + "type": "object", + "properties": { + "quality": { + "type": "string", + "description": "Image quality value between 0 to 100 (best quality)." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ImageFormatProperties" + } + ], + "description": "JPEG image encoding.", + "x-ms-discriminator-value": "#Microsoft.VideoAnalyzer.ImageFormatJpeg" + }, + "ImageFormatBmp": { + "type": "object", + "properties": {}, + "allOf": [ + { + "$ref": "#/definitions/ImageFormatProperties" + } + ], + "description": "BMP image encoding.", + "x-ms-discriminator-value": "#Microsoft.VideoAnalyzer.ImageFormatBmp" + }, + "ImageFormatPng": { + "type": "object", + "properties": {}, + "allOf": [ + { + "$ref": "#/definitions/ImageFormatProperties" + } + ], + "description": "PNG image encoding.", + "x-ms-discriminator-value": "#Microsoft.VideoAnalyzer.ImageFormatPng" + }, + "NamedLineBase": { + "type": "object", + "required": [ + "@type", + "name" + ], + "discriminator": "@type", + "properties": { + "@type": { + "type": "string", + "description": "The Type discriminator for the derived types." + }, + "name": { + "type": "string", + "description": "Line name. Must be unique within the node." + } + }, + "description": "Base class for named lines." + }, + "NamedLineString": { + "type": "object", + "required": [ + "line" + ], + "properties": { + "line": { + "type": "string", + "example": "[[0.3,0.2],[0.9,0.8]]", + "description": "Point coordinates for the line start and end, respectively. Example: '[[0.3, 0.2],[0.9, 0.8]]'. Each point is expressed as [LEFT, TOP] coordinate ratios ranging from 0.0 to 1.0, where [0,0] is the upper-left frame corner and [1, 1] is the bottom-right frame corner." + } + }, + "allOf": [ + { + "$ref": "#/definitions/NamedLineBase" + } + ], + "description": "Describes a line configuration.", + "x-ms-discriminator-value": "#Microsoft.VideoAnalyzer.NamedLineString" + }, + "NamedPolygonBase": { + "type": "object", + "required": [ + "@type", + "name" + ], + "discriminator": "@type", + "properties": { + "@type": { + "type": "string", + "description": "The Type discriminator for the derived types." + }, + "name": { + "type": "string", + "description": "Polygon name. Must be unique within the node." + } + }, + "description": "Describes the named polygon." + }, + "NamedPolygonString": { + "type": "object", + "required": [ + "polygon" + ], + "properties": { + "polygon": { + "type": "string", + "example": "[[0.3, 0.2],[0.9, 0.8],[0.7, 0.6]]", + "description": "Point coordinates for the polygon. Example: '[[0.3, 0.2],[0.9, 0.8],[0.7, 0.6]]'. Each point is expressed as [LEFT, TOP] coordinate ratios ranging from 0.0 to 1.0, where [0,0] is the upper-left frame corner and [1, 1] is the bottom-right frame corner." + } + }, + "allOf": [ + { + "$ref": "#/definitions/NamedPolygonBase" + } + ], + "description": "Describes a closed polygon configuration.", + "x-ms-discriminator-value": "#Microsoft.VideoAnalyzer.NamedPolygonString" + }, + "SignalGateProcessor": { + "type": "object", + "properties": { + "activationEvaluationWindow": { + "type": "string", + "example": "PT1.0S", + "description": "The period of time over which the gate gathers input events before evaluating them." + }, + "activationSignalOffset": { + "type": "string", + "example": "-PT1.0S", + "description": "Signal offset once the gate is activated (can be negative). It determines the how much farther behind of after the signal will be let through based on the activation time. A negative offset indicates that data prior the activation time must be included on the signal that is let through, once the gate is activated. When used upstream of a file or video sink, this allows for scenarios such as recording buffered media prior an event, such as: record video 5 seconds prior motions is detected." + }, + "minimumActivationTime": { + "type": "string", + "example": "PT10S", + "description": "The minimum period for which the gate remains open in the absence of subsequent triggers (events). When used upstream of a file or video sink, it determines the minimum length of the recorded video clip." + }, + "maximumActivationTime": { + "type": "string", + "example": "PT10S", + "description": "The maximum period for which the gate remains open in the presence of subsequent triggers (events). When used upstream of a file or video sink, it determines the maximum length of the recorded video clip." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProcessorNodeBase" + } + ], + "description": "A signal gate determines when to block (gate) incoming media, and when to allow it through. It gathers input events over the activationEvaluationWindow, and determines whether to open or close the gate. See https://aka.ms/ava-signalgate for more information.", + "x-ms-discriminator-value": "#Microsoft.VideoAnalyzer.SignalGateProcessor" + }, + "SpatialAnalysisOperationBase": { + "type": "object", + "required": [ + "@type" + ], + "discriminator": "@type", + "properties": { + "@type": { + "type": "string", + "description": "The Type discriminator for the derived types." + } + }, + "description": "Base class for Azure Cognitive Services Spatial Analysis operations." + }, + "SpatialAnalysisCustomOperation": { + "type": "object", + "required": [ + "extensionConfiguration" + ], + "properties": { + "extensionConfiguration": { + "type": "string", + "description": "Custom configuration to pass to the Azure Cognitive Services Spatial Analysis module." + } + }, + "allOf": [ + { + "$ref": "#/definitions/SpatialAnalysisOperationBase" + } + ], + "description": "Defines a Spatial Analysis custom operation. This requires the Azure Cognitive Services Spatial analysis module to be deployed alongside the Video Analyzer module, please see https://aka.ms/ava-spatial-analysis for more information.", + "x-ms-discriminator-value": "#Microsoft.VideoAnalyzer.SpatialAnalysisCustomOperation" + }, + "SpatialAnalysisTypedOperationBase": { + "type": "object", + "properties": { + "debug": { + "type": "string", + "description": "If set to 'true', enables debugging mode for this operation." + }, + "cameraConfiguration": { + "type": "string", + "description": "Advanced camera configuration." + }, + "detectorNodeConfiguration": { + "type": "string", + "description": "Advanced detector node configuration." + }, + "enableFaceMaskClassifier": { + "type": "string", + "description": "If set to 'true', enables face mask detection for this operation." + } + }, + "allOf": [ + { + "$ref": "#/definitions/SpatialAnalysisOperationBase" + } + ], + "description": "Base class for Azure Cognitive Services Spatial Analysis typed operations." + }, + "SpatialAnalysisOperationEventBase": { + "type": "object", + "properties": { + "threshold": { + "type": "string", + "description": "The event threshold." + }, + "focus": { + "type": "string", + "description": "The operation focus type.", + "enum": [ + "center", + "bottomCenter", + "footprint" + ], + "x-ms-enum": { + "name": "spatialAnalysisOperationFocus", + "values": [ + { + "value": "center", + "description": "The center of the object." + }, + { + "value": "bottomCenter", + "description": "The bottom center of the object." + }, + { + "value": "footprint", + "description": "The footprint." + } + ], + "modelAsString": true + } + } + }, + "description": "Defines the Azure Cognitive Services Spatial Analysis operation eventing configuration." + }, + "SpatialAnalysisPersonCountEvent": { + "type": "object", + "properties": { + "trigger": { + "type": "string", + "description": "The event trigger type.", + "enum": [ + "event", + "interval" + ], + "x-ms-enum": { + "name": "spatialAnalysisPersonCountEventTrigger", + "values": [ + { + "value": "event", + "description": "Event trigger." + }, + { + "value": "interval", + "description": "Interval trigger." + } + ], + "modelAsString": true + } + }, + "outputFrequency": { + "type": "string", + "description": "The event or interval output frequency." + } + }, + "allOf": [ + { + "$ref": "#/definitions/SpatialAnalysisOperationEventBase" + } + ], + "description": "Defines a Spatial Analysis person count operation eventing configuration." + }, + "SpatialAnalysisPersonCountZoneEvents": { + "type": "object", + "required": [ + "zone" + ], + "properties": { + "zone": { + "description": "The named zone.", + "$ref": "#/definitions/NamedPolygonBase" + }, + "events": { + "type": "array", + "description": "The event configuration.", + "items": { + "$ref": "#/definitions/SpatialAnalysisPersonCountEvent" + } + } + } + }, + "SpatialAnalysisPersonCountOperation": { + "type": "object", + "required": [ + "zones" + ], + "properties": { + "zones": { + "type": "array", + "description": "The list of zones and optional events.", + "items": { + "$ref": "#/definitions/SpatialAnalysisPersonCountZoneEvents" + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/SpatialAnalysisTypedOperationBase" + } + ], + "description": "Defines a Spatial Analysis person count operation. This requires the Azure Cognitive Services Spatial analysis module to be deployed alongside the Video Analyzer module, please see https://aka.ms/ava-spatial-analysis for more information.", + "x-ms-discriminator-value": "#Microsoft.VideoAnalyzer.SpatialAnalysisPersonCountOperation" + }, + "SpatialAnalysisPersonZoneCrossingEvent": { + "type": "object", + "properties": { + "eventType": { + "type": "string", + "description": "The event type.", + "enum": [ + "zoneCrossing", + "zoneDwellTime" + ], + "x-ms-enum": { + "name": "spatialAnalysisPersonZoneCrossingEventType", + "values": [ + { + "value": "zoneCrossing", + "description": "Zone crossing event type." + }, + { + "value": "zoneDwellTime", + "description": "Zone dwell time event type." + } + ], + "modelAsString": true + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/SpatialAnalysisOperationEventBase" + } + ], + "description": "Defines a Spatial Analysis person crossing zone operation eventing configuration." + }, + "SpatialAnalysisPersonZoneCrossingZoneEvents": { + "type": "object", + "required": [ + "zone" + ], + "properties": { + "zone": { + "description": "The named zone.", + "$ref": "#/definitions/NamedPolygonBase" + }, + "events": { + "type": "array", + "description": "The event configuration.", + "items": { + "$ref": "#/definitions/SpatialAnalysisPersonZoneCrossingEvent" + } + } + } + }, + "SpatialAnalysisPersonZoneCrossingOperation": { + "type": "object", + "required": [ + "zones" + ], + "properties": { + "zones": { + "type": "array", + "description": "The list of zones with optional events.", + "items": { + "$ref": "#/definitions/SpatialAnalysisPersonZoneCrossingZoneEvents" + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/SpatialAnalysisTypedOperationBase" + } + ], + "description": "Defines a Spatial Analysis person zone crossing operation. This requires the Azure Cognitive Services Spatial analysis module to be deployed alongside the Video Analyzer module, please see https://aka.ms/ava-spatial-analysis for more information.", + "x-ms-discriminator-value": "#Microsoft.VideoAnalyzer.SpatialAnalysisPersonZoneCrossingOperation" + }, + "SpatialAnalysisPersonDistanceEvent": { + "type": "object", + "properties": { + "trigger": { + "type": "string", + "description": "The event trigger type.", + "enum": [ + "event", + "interval" + ], + "x-ms-enum": { + "name": "spatialAnalysisPersonDistanceEventTrigger", + "values": [ + { + "value": "event", + "description": "Event trigger." + }, + { + "value": "interval", + "description": "Interval trigger." + } + ], + "modelAsString": true + } + }, + "outputFrequency": { + "type": "string", + "description": "The event or interval output frequency." + }, + "minimumDistanceThreshold": { + "type": "string", + "description": "The minimum distance threshold" + }, + "maximumDistanceThreshold": { + "type": "string", + "description": "The maximum distance threshold" + } + }, + "allOf": [ + { + "$ref": "#/definitions/SpatialAnalysisOperationEventBase" + } + ], + "description": "Defines a Spatial Analysis person distance operation eventing configuration." + }, + "SpatialAnalysisPersonDistanceZoneEvents": { + "type": "object", + "required": [ + "zone" + ], + "properties": { + "zone": { + "description": "The named zone.", + "$ref": "#/definitions/NamedPolygonBase" + }, + "events": { + "type": "array", + "description": "The event configuration.", + "items": { + "$ref": "#/definitions/SpatialAnalysisPersonDistanceEvent" + } + } + } + }, + "SpatialAnalysisPersonDistanceOperation": { + "type": "object", + "required": [ + "zones" + ], + "properties": { + "zones": { + "type": "array", + "description": "The list of zones with optional events.", + "items": { + "$ref": "#/definitions/SpatialAnalysisPersonDistanceZoneEvents" + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/SpatialAnalysisTypedOperationBase" + } + ], + "description": "Defines a Spatial Analysis person distance operation. This requires the Azure Cognitive Services Spatial analysis module to be deployed alongside the Video Analyzer module, please see https://aka.ms/ava-spatial-analysis for more information.", + "x-ms-discriminator-value": "#Microsoft.VideoAnalyzer.SpatialAnalysisPersonDistanceOperation" + }, + "SpatialAnalysisPersonLineCrossingEvent": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/SpatialAnalysisOperationEventBase" + } + ], + "description": "Defines a Spatial Analysis person line crossing operation eventing configuration." + }, + "SpatialAnalysisPersonLineCrossingLineEvents": { + "type": "object", + "required": [ + "line" + ], + "properties": { + "line": { + "description": "The named line.", + "$ref": "#/definitions/NamedLineBase" + }, + "events": { + "type": "array", + "description": "The event configuration.", + "items": { + "$ref": "#/definitions/SpatialAnalysisPersonLineCrossingEvent" + } + } + } + }, + "SpatialAnalysisPersonLineCrossingOperation": { + "type": "object", + "required": [ + "lines" + ], + "properties": { + "lines": { + "type": "array", + "description": "The list of lines with optional events.", + "items": { + "$ref": "#/definitions/SpatialAnalysisPersonLineCrossingLineEvents" + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/SpatialAnalysisTypedOperationBase" + } + ], + "description": "Defines a Spatial Analysis person line crossing operation. This requires the Azure Cognitive Services Spatial analysis module to be deployed alongside the Video Analyzer module, please see https://aka.ms/ava-spatial-analysis for more information.", + "x-ms-discriminator-value": "#Microsoft.VideoAnalyzer.SpatialAnalysisPersonLineCrossingOperation" + }, + "CognitiveServicesVisionProcessor": { + "type": "object", + "required": [ + "operation", + "endpoint" + ], + "properties": { + "endpoint": { + "description": "Endpoint to which this processor should connect.", + "$ref": "#/definitions/EndpointBase" + }, + "image": { + "description": "Describes the parameters of the image that is sent as input to the endpoint.", + "$ref": "#/definitions/ImageProperties" + }, + "samplingOptions": { + "description": "Describes the sampling options to be applied when forwarding samples to the extension.", + "$ref": "#/definitions/SamplingOptions" + }, + "operation": { + "description": "Describes the Spatial Analysis operation to be used in the Cognitive Services Vision processor.", + "$ref": "#/definitions/SpatialAnalysisOperationBase" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProcessorNodeBase" + } + ], + "description": "A processor that allows the pipeline topology to send video frames to a Cognitive Services Vision extension. Inference results are relayed to downstream nodes.", + "x-ms-discriminator-value": "#Microsoft.VideoAnalyzer.CognitiveServicesVisionProcessor" + } + } +} diff --git a/specification/videoanalyzer/data-plane/VideoAnalyzer.Edge/preview/1.0.0/AzureVideoAnalyzerSdkDefinitions.json b/specification/videoanalyzer/data-plane/VideoAnalyzer.Edge/preview/1.0.0/AzureVideoAnalyzerSdkDefinitions.json new file mode 100644 index 000000000000..8daf4143a58f --- /dev/null +++ b/specification/videoanalyzer/data-plane/VideoAnalyzer.Edge/preview/1.0.0/AzureVideoAnalyzerSdkDefinitions.json @@ -0,0 +1,209 @@ +{ + "swagger": "2.0", + "info": { + "version": "1.0.0", + "title": "Azure Video Analyzer for Edge", + "description": "Azure Video Analyzer helpers for IoT Edge direct method calls.", + "contact": { + "email": "videoanalyzerhelp@microsoft.com" + } + }, + "security": [ + { + "sharedAccessSignature": [] + } + ], + "paths": {}, + "securityDefinitions": { + "sharedAccessSignature": { + "type": "apiKey", + "name": "Authorization", + "in": "header" + } + }, + "definitions": { + "MethodRequest": { + "type": "object", + "required": [ + "methodName" + ], + "properties": { + "methodName": { + "type": "string", + "description": "Direct method method name.", + "readOnly": true + }, + "@apiVersion": { + "type": "string", + "description": "Video Analyzer API version.", + "enum": [ + "1.0" + ], + "x-ms-enum": { + "name": "apiVersionEnum", + "modelAsString": false + } + } + }, + "discriminator": "methodName", + "description": "Base class for direct method calls." + }, + "PipelineTopologySetRequest": { + "type": "object", + "x-ms-discriminator-value": "pipelineTopologySet", + "allOf": [ + { + "$ref": "#/definitions/MethodRequest" + } + ], + "required": [ + "pipelineTopology" + ], + "properties": { + "pipelineTopology": { + "$ref": "./AzureVideoAnalyzer.json#/definitions/PipelineTopology" + } + }, + "description": "Creates a new pipeline topology or updates an existing one." + }, + "PipelineTopologySetRequestBody": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/MethodRequest" + }, + { + "$ref": "./AzureVideoAnalyzer.json#/definitions/PipelineTopology" + } + ], + "description": "Pipeline topology resource representation." + }, + "LivePipelineSetRequest": { + "type": "object", + "x-ms-discriminator-value": "livePipelineSet", + "allOf": [ + { + "$ref": "#/definitions/MethodRequest" + } + ], + "required": [ + "livePipeline" + ], + "properties": { + "livePipeline": { + "$ref": "./AzureVideoAnalyzer.json#/definitions/LivePipeline" + } + }, + "description": "Creates a new live pipeline or updates an existing one." + }, + "LivePipelineSetRequestBody": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/MethodRequest" + }, + { + "$ref": "./AzureVideoAnalyzer.json#/definitions/LivePipeline" + } + ], + "description": "Live pipeline resource representation." + }, + "MethodRequestEmptyBodyBase": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/MethodRequest" + } + ], + "required": [ + "name" + ], + "properties": { + "name": { + "type": "string", + "description": "Resource name." + } + } + }, + "PipelineTopologyListRequest": { + "type": "object", + "x-ms-discriminator-value": "pipelineTopologyList", + "allOf": [ + { + "$ref": "#/definitions/MethodRequest" + } + ], + "description": "List all existing pipeline topologies." + }, + "PipelineTopologyGetRequest": { + "type": "object", + "x-ms-discriminator-value": "pipelineTopologyGet", + "allOf": [ + { + "$ref": "#/definitions/MethodRequestEmptyBodyBase" + } + ], + "description": "Retrieves an existing pipeline topology." + }, + "PipelineTopologyDeleteRequest": { + "type": "object", + "x-ms-discriminator-value": "pipelineTopologyDelete", + "allOf": [ + { + "$ref": "#/definitions/MethodRequestEmptyBodyBase" + } + ], + "description": "Deletes an existing pipeline topology." + }, + "LivePipelineListRequest": { + "type": "object", + "x-ms-discriminator-value": "livePipelineList", + "allOf": [ + { + "$ref": "#/definitions/MethodRequest" + } + ], + "description": "List all existing live pipelines." + }, + "LivePipelineGetRequest": { + "type": "object", + "x-ms-discriminator-value": "livePipelineGet", + "allOf": [ + { + "$ref": "#/definitions/MethodRequestEmptyBodyBase" + } + ], + "description": "Retrieves an existing live pipeline." + }, + "LivePipelineActivateRequest": { + "type": "object", + "x-ms-discriminator-value": "livePipelineActivate", + "allOf": [ + { + "$ref": "#/definitions/MethodRequestEmptyBodyBase" + } + ], + "description": "Activates an existing live pipeline." + }, + "LivePipelineDeactivateRequest": { + "type": "object", + "x-ms-discriminator-value": "livePipelineDeactivate", + "allOf": [ + { + "$ref": "#/definitions/MethodRequestEmptyBodyBase" + } + ], + "description": "Deactivates an existing live pipeline." + }, + "LivePipelineDeleteRequest": { + "type": "object", + "x-ms-discriminator-value": "livePipelineDelete", + "allOf": [ + { + "$ref": "#/definitions/MethodRequestEmptyBodyBase" + } + ], + "description": "Deletes an existing live pipeline." + } + } +} diff --git a/specification/videoanalyzer/data-plane/readme.md b/specification/videoanalyzer/data-plane/readme.md new file mode 100644 index 000000000000..5956fee000d8 --- /dev/null +++ b/specification/videoanalyzer/data-plane/readme.md @@ -0,0 +1,105 @@ +# Azure Video Analyzer Edge + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for Azure Video Analyzer edge. + +These swaggers are used to generate the SDKs for Azure Video Analyzer. These SDKs are models only (no client) and customer would need to use IoT SDK to send direct method calls to IoT hub. These SDKs are not ARM based and doesn't do any REST calls. all operations are sent as direct methods on IoT hub. + +--- + +## Getting Started + +To build the SDK for Azure Video Analyzer edge, simply [Install AutoRest](https://aka.ms/autorest/install) and in this folder, run: + +> `autorest` + +To see additional help and options, run: + +> `autorest --help` + +--- + +## Configuration + +### Basic Information + +These are the global settings for the Azure Video Analyzer edge API. + +``` yaml +openapi-type: data-plane +tag: package-ava-edge-1-0-0-preview + +directive: + - where: + - $.definitions.MethodRequest.properties.methodName + suppress: + - RequiredReadOnlyProperties +``` + +### Tag: package-ava-edge-1-0-0-preview + +These settings apply only when `--tag=package-ava-edge-1-0-0-preview` is specified on the command line. + +``` yaml $(tag) == 'package-ava-edge-1-0-0-preview' +input-file: + - VideoAnalyzer.Edge/preview/1.0.0/AzureVideoAnalyzer.json + - VideoAnalyzer.Edge/preview/1.0.0/AzureVideoAnalyzerSdkDefinitions.json +``` + +--- + +# Code Generation + +## Swagger to SDK + +This section describes what SDK should be generated by the automatic system. +This is not used by Autorest itself. + +``` yaml $(swagger-to-sdk) +swagger-to-sdk: + - repo: azure-sdk-for-net + after_scripts: + - bundle install && rake arm:regen_all_profiles['azure_media_ava_edge'] +``` + +## C# + +These settings apply only when `--csharp` is specified on the command line. +Please also specify `--csharp-sdks-folder=`. + +``` yaml $(csharp) +csharp: + azure-arm: false + payload-flattening-threshold: 2 + license-header: MICROSOFT_MIT_NO_VERSION + namespace: Microsoft.Azure.Media.AzureVideoAnalyzer.Edge + output-folder: $(csharp-sdks-folder)/mediaservices/Microsoft.Azure.Media.AzureVideoAnalyzer.Edge/src/Generated + clear-output-folder: true + use-internal-constructors: true + override-client-name: AzureVideoAnalyzerEdgeClient + use-datetimeoffset: true +``` +## Multi-API/Profile support for AutoRest v3 generators + +AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. + +This block is updated by an automatic script. Edits may be lost! + +``` yaml $(tag) == 'all-api-versions' /* autogenerated */ +# include the azure profile definitions from the standard location +require: $(this-folder)/../../../profiles/readme.md + +# all the input files across all versions +input-file: + - $(this-folder)/VideoAnalyzer.Edge/preview/1.0.0/AzureVideoAnalyzer.json + +``` + +If there are files that should not be in the `all-api-versions` set, +uncomment the `exclude-file` section below and add the file paths. + +``` yaml $(tag) == 'all-api-versions' +#exclude-file: +# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json +``` diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/EdgeModules.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/EdgeModules.json new file mode 100644 index 000000000000..afac678f2fe6 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/EdgeModules.json @@ -0,0 +1,399 @@ +{ + "schemes": [ + "https" + ], + "swagger": "2.0", + "info": { + "title": "Azure Video Analyzer", + "description": "Azure Video Analyzer resource provider API definition.", + "version": "2021-05-01-preview" + }, + "host": "management.azure.com", + "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" + } + } + }, + "definitions": { + "EdgeModuleProperties": { + "properties": { + "edgeModuleId": { + "type": "string", + "format": "uuid", + "description": "Internal ID generated for the instance of the Video Analyzer edge module.", + "readOnly": true, + "x-nullable": false + } + }, + "type": "object", + "description": "Application level properties for the edge module resource." + }, + "ListProvisioningTokenInput": { + "properties": { + "expirationDate": { + "type": "string", + "format": "date-time", + "description": "The desired expiration date of the registration token. The Azure Video Analyzer IoT edge module must be initialized and connected to the Internet prior to the token expiration date." + } + }, + "type": "object", + "required": [ + "expirationDate" + ], + "description": "The input parameters to generate registration token for the Azure Video Analyzer IoT edge module." + }, + "EdgeModuleProvisioningToken": { + "properties": { + "expirationDate": { + "type": "string", + "format": "date-time", + "description": "The expiration date of the registration token. The Azure Video Analyzer IoT edge module must be initialized and connected to the Internet prior to the token expiration date.", + "readOnly": true, + "x-nullable": false + }, + "token": { + "type": "string", + "description": "The token blob to be provided to the Azure Video Analyzer IoT edge module through the Azure IoT Edge module twin properties.", + "readOnly": true + } + }, + "type": "object", + "description": "Provisioning token properties. A provisioning token allows for a single instance of Azure Video analyzer IoT edge module to be initialized and authorized to the cloud account. The provisioning token itself is short lived and it is only used for the initial handshake between IoT edge module and the cloud. After the initial handshake, the IoT edge module will agree on a set of authentication keys which will be auto-rotated as long as the module is able to periodically connect to the cloud. A new provisioning token can be generated for the same IoT edge module in case the module state lost or reset." + }, + "EdgeModuleEntity": { + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/EdgeModuleProperties", + "description": "The resource properties.", + "x-ms-client-flatten": true + }, + "systemData": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData", + "description": "The system metadata relating to this resource.", + "readOnly": true + } + }, + "type": "object", + "description": "The representation of an edge module." + }, + "EdgeModuleEntityCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/EdgeModuleEntity" + }, + "description": "A collection of EdgeModuleEntity items." + }, + "@nextLink": { + "type": "string", + "description": "A link to the next page of the collection (when the collection contains too many results to return in one response)." + } + }, + "type": "object", + "description": "A collection of EdgeModuleEntity items." + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/videoAnalyzers/{accountName}/edgeModules": { + "get": { + "summary": "List edge module resources.", + "description": "List all of the existing edge module resources for a given Video Analyzer account.", + "operationId": "EdgeModules_List", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/EdgeModuleEntityCollection" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "Restricts the set of items returned." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "Specifies a non-negative integer n that limits the number of items returned from a collection. The service returns the number of available items up to but not greater than the specified value n." + }, + { + "name": "$orderby", + "in": "query", + "required": false, + "type": "string", + "description": "Specifies the key by which the result collection should be ordered." + } + ], + "x-ms-pageable": { + "nextLinkName": "@nextLink" + }, + "x-ms-examples": { + "Lists the registered edge modules.": { + "$ref": "examples/edge-modules-list.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/videoAnalyzers/{accountName}/edgeModules/{edgeModuleName}": { + "get": { + "summary": "Retrieves an existing edge module resource.", + "description": "Retrieves a specific existing edge module resource in the given Video Analyzer account.", + "operationId": "EdgeModules_Get", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/EdgeModuleEntity" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "edgeModuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the edge module to retrieve." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Gets edge module registration.": { + "$ref": "examples/edge-modules-get.json" + } + } + }, + "put": { + "summary": "Creates a new edge module or updates an existing one.", + "description": "Creates a new edge module or updates an existing one. An edge module resource enables a single instance of an Azure Video Analyzer IoT edge module to interact with the Video Analyzer Account. This is used for authorization and also to make sure that the particular edge module instance only has access to the data it requires from the Azure Video Analyzer service. A new edge module resource should be created for every new instance of an Azure Video Analyzer edge module deployed to you Azure IoT edge environment. Edge module resources can be deleted if the specific module is not in use anymore.", + "operationId": "EdgeModules_CreateOrUpdate", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/EdgeModuleEntity" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/EdgeModuleEntity" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "edgeModuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the edge module to create or update." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/EdgeModuleEntity" + }, + "description": "The request parameters" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Registers an edge module.": { + "$ref": "examples/edge-modules-create.json" + } + } + }, + "delete": { + "summary": "Deletes an existing edge module resource.", + "description": "Deletes an existing edge module resource. Deleting the edge module resource will prevent an Azure Video Analyzer IoT edge module which was previously initiated with the module provisioning token from communicating with the cloud.", + "operationId": "EdgeModules_Delete", + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "edgeModuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the edge module to be deleted." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Deletes an edge module registration.": { + "$ref": "examples/edge-modules-delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/videoAnalyzers/{accountName}/edgeModules/{edgeModuleName}/listProvisioningToken": { + "post": { + "summary": "Creates a new provisioning token.", + "description": "Creates a new provisioning token. A provisioning token allows for a single instance of Azure Video analyzer IoT edge module to be initialized and authorized to the cloud account. The provisioning token itself is short lived and it is only used for the initial handshake between IoT edge module and the cloud. After the initial handshake, the IoT edge module will agree on a set of authentication keys which will be auto-rotated as long as the module is able to periodically connect to the cloud. A new provisioning token can be generated for the same IoT edge module in case the module state lost or reset.", + "operationId": "EdgeModules_ListProvisioningToken", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/EdgeModuleProvisioningToken" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "edgeModuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the edge module used to create a new provisioning token." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ListProvisioningTokenInput" + }, + "description": "The request parameters" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Generate the Provisioning token for an edge module registration.": { + "$ref": "examples/edge-modules-listProvisioningToken.json" + } + } + } + } + }, + "parameters": { + "AzureVideoAnalyzerAccountName": { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "description": "The Azure Video Analyzer account name.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/VideoAnalyzers.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/VideoAnalyzers.json new file mode 100644 index 000000000000..7855b5abc3ac --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/VideoAnalyzers.json @@ -0,0 +1,1010 @@ +{ + "schemes": [ + "https" + ], + "swagger": "2.0", + "info": { + "title": "Azure Video Analyzer", + "description": "Azure Video Analyzer resource provider API definition.", + "version": "2021-05-01-preview" + }, + "host": "management.azure.com", + "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" + } + } + }, + "definitions": { + "OperationDisplay": { + "properties": { + "provider": { + "type": "string", + "description": "The service provider." + }, + "resource": { + "type": "string", + "description": "Resource on which the operation is performed." + }, + "operation": { + "type": "string", + "description": "The operation type." + }, + "description": { + "type": "string", + "description": "The operation description." + } + }, + "type": "object", + "description": "Operation details." + }, + "MetricDimension": { + "properties": { + "name": { + "type": "string", + "description": "The metric dimension name.", + "readOnly": true + }, + "displayName": { + "type": "string", + "description": "The display name for the dimension.", + "readOnly": true + }, + "toBeExportedForShoebox": { + "type": "boolean", + "description": "Whether to export metric to shoebox.", + "readOnly": true, + "x-nullable": false + } + }, + "type": "object", + "description": "A metric dimension." + }, + "MetricSpecification": { + "properties": { + "name": { + "type": "string", + "description": "The metric name.", + "readOnly": true + }, + "displayName": { + "type": "string", + "description": "The metric display name.", + "readOnly": true + }, + "displayDescription": { + "type": "string", + "description": "The metric display description.", + "readOnly": true + }, + "unit": { + "type": "string", + "enum": [ + "Bytes", + "Count", + "Milliseconds" + ], + "x-ms-enum": { + "name": "MetricUnit", + "values": [ + { + "value": "Bytes", + "description": "The number of bytes." + }, + { + "value": "Count", + "description": "The count." + }, + { + "value": "Milliseconds", + "description": "The number of milliseconds." + } + ], + "modelAsString": true + }, + "description": "The metric unit", + "readOnly": true, + "x-nullable": false + }, + "aggregationType": { + "type": "string", + "enum": [ + "Average", + "Count", + "Total" + ], + "x-ms-enum": { + "name": "MetricAggregationType", + "values": [ + { + "value": "Average", + "description": "The average." + }, + { + "value": "Count", + "description": "The count of a number of items, usually requests." + }, + { + "value": "Total", + "description": "The sum." + } + ], + "modelAsString": true + }, + "description": "The metric aggregation type", + "readOnly": true, + "x-nullable": false + }, + "lockAggregationType": { + "type": "string", + "enum": [ + "Average", + "Count", + "Total" + ], + "x-ms-enum": { + "name": "MetricAggregationType", + "values": [ + { + "value": "Average", + "description": "The average." + }, + { + "value": "Count", + "description": "The count of a number of items, usually requests." + }, + { + "value": "Total", + "description": "The sum." + } + ], + "modelAsString": true + }, + "description": "The metric lock aggregation type", + "readOnly": true, + "x-nullable": true + }, + "supportedAggregationTypes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Supported aggregation types." + }, + "dimensions": { + "type": "array", + "items": { + "$ref": "#/definitions/MetricDimension" + }, + "description": "The metric dimensions.", + "readOnly": true + }, + "enableRegionalMdmAccount": { + "type": "boolean", + "description": "Indicates whether regional MDM account is enabled.", + "readOnly": true, + "x-nullable": false + }, + "sourceMdmAccount": { + "type": "string", + "description": "The source MDM account.", + "readOnly": true + }, + "sourceMdmNamespace": { + "type": "string", + "description": "The source MDM namespace.", + "readOnly": true + }, + "supportedTimeGrainTypes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The supported time grain types.", + "readOnly": true + } + }, + "type": "object", + "description": "A metric emitted by service." + }, + "Properties": { + "properties": { + "serviceSpecification": { + "$ref": "#/definitions/ServiceSpecification", + "description": "The service specifications.", + "readOnly": true + } + }, + "type": "object", + "description": "Metric properties." + }, + "ServiceSpecification": { + "properties": { + "logSpecifications": { + "type": "array", + "items": { + "$ref": "#/definitions/LogSpecification" + }, + "description": "List of log specifications.", + "readOnly": true + }, + "metricSpecifications": { + "type": "array", + "items": { + "$ref": "#/definitions/MetricSpecification" + }, + "description": "List of metric specifications.", + "readOnly": true + } + }, + "type": "object", + "description": "The service metric specifications." + }, + "LogSpecification": { + "properties": { + "name": { + "type": "string", + "description": "The diagnostic log category name.", + "readOnly": true + }, + "displayName": { + "type": "string", + "description": "The diagnostic log category display name.", + "readOnly": true + }, + "blobDuration": { + "type": "string", + "description": "The time range for requests in each blob.", + "readOnly": true + } + }, + "type": "object", + "description": "A diagnostic log emitted by service." + }, + "Operation": { + "properties": { + "name": { + "type": "string", + "description": "The operation name." + }, + "display": { + "$ref": "#/definitions/OperationDisplay", + "description": "The operation display name." + }, + "origin": { + "type": "string", + "description": "Origin of the operation." + }, + "properties": { + "$ref": "#/definitions/Properties", + "description": "Operation properties format." + }, + "isDataAction": { + "type": "boolean", + "description": "Whether the operation applies to data-plane.", + "x-nullable": true + }, + "actionType": { + "type": "string", + "enum": [ + "Internal" + ], + "x-ms-enum": { + "name": "ActionType", + "values": [ + { + "value": "Internal", + "description": "An internal action." + } + ], + "modelAsString": true + }, + "description": "Indicates the action type.", + "x-nullable": true + } + }, + "type": "object", + "description": "An operation.", + "required": [ + "name" + ] + }, + "StorageAccount": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the storage account resource. Video Analyzer relies on tables, queues, and blobs. The primary storage account must be a Standard Storage account (either Microsoft.ClassicStorage or Microsoft.Storage)." + }, + "identity": { + "$ref": "#/definitions/ResourceIdentity", + "description": "A managed identity that Video Analyzer will use to access the storage account." + }, + "status": { + "type": "string", + "description": "The current status of the storage account mapping.", + "readOnly": true + } + }, + "type": "object", + "description": "The details about the associated storage account." + }, + "SyncStorageKeysInput": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the storage account resource." + } + }, + "type": "object", + "description": "The input to the sync storage keys request." + }, + "VideoAnalyzerPropertiesUpdate": { + "properties": { + "storageAccounts": { + "type": "array", + "items": { + "$ref": "#/definitions/StorageAccount" + }, + "description": "The storage accounts for this resource." + }, + "endpoints": { + "type": "array", + "items": { + "$ref": "#/definitions/Endpoint" + }, + "description": "The list of endpoints associated with this resource.", + "readOnly": true + }, + "encryption": { + "$ref": "#/definitions/AccountEncryption", + "description": "The account encryption properties." + } + }, + "type": "object", + "description": "Properties of the Video Analyzer account." + }, + "VideoAnalyzerProperties": { + "allOf": [ + { + "$ref": "#/definitions/VideoAnalyzerPropertiesUpdate" + } + ], + "required": [ + "encryption", + "storageAccounts" + ] + }, + "VideoAnalyzer": { + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/TrackedResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/VideoAnalyzerProperties", + "description": "The properties of the Video Analyzer account.", + "x-ms-client-flatten": true + }, + "systemData": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData", + "description": "The system data of the Video Analyzer account.", + "readOnly": true + }, + "identity": { + "$ref": "#/definitions/VideoAnalyzerIdentity", + "description": "The set of managed identities associated with the Video Analyzer resource." + } + }, + "type": "object", + "description": "A Video Analyzer account." + }, + "VideoAnalyzerUpdate": { + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-ms-mutability": [ + "read", + "create", + "update" + ], + "description": "Resource tags." + }, + "properties": { + "$ref": "#/definitions/VideoAnalyzerPropertiesUpdate", + "description": "The resource properties.", + "x-ms-client-flatten": true + }, + "identity": { + "$ref": "#/definitions/VideoAnalyzerIdentity", + "description": "The identities associated to the Video Analyzer resource." + } + }, + "type": "object", + "description": "The update operation for a Video Analyzer account." + }, + "Endpoint": { + "properties": { + "endpointUrl": { + "type": "string", + "description": "The URL of the endpoint." + }, + "type": { + "type": "string", + "description": "The type of the endpoint.", + "enum": [ + "ClientApi" + ], + "x-ms-enum": { + "name": "VideoAnalyzerEndpointType", + "values": [ + { + "value": "ClientApi", + "description": "The client API endpoint." + } + ], + "modelAsString": true + } + } + }, + "type": "object", + "required": [ + "type" + ], + "description": "The endpoint details." + }, + "UserAssignedManagedIdentity": { + "properties": { + "clientId": { + "type": "string", + "description": "The client ID.", + "readOnly": true + }, + "principalId": { + "type": "string", + "description": "The principal ID.", + "readOnly": true + } + }, + "type": "object", + "description": "The details of the user assigned managed identity used by the Video Analyzer resource." + }, + "UserAssignedManagedIdentities": { + "type": "object", + "description": "The User Assigned Managed Identities.", + "additionalProperties": { + "$ref": "#/definitions/UserAssignedManagedIdentity" + } + }, + "VideoAnalyzerIdentity": { + "properties": { + "type": { + "type": "string", + "description": "The identity type." + }, + "userAssignedIdentities": { + "$ref": "#/definitions/UserAssignedManagedIdentities", + "description": "The User Assigned Managed Identities." + } + }, + "type": "object", + "required": [ + "type" + ], + "description": "The managed identity for the Video Analyzer resource." + }, + "ResourceIdentity": { + "properties": { + "userAssignedIdentity": { + "type": "string", + "description": "The user assigned managed identity's resource identifier to use when accessing a resource." + } + }, + "type": "object", + "description": "The user assigned managed identity to use when accessing a resource.", + "required": [ + "userAssignedIdentity" + ] + }, + "KeyVaultProperties": { + "properties": { + "keyIdentifier": { + "type": "string", + "description": "The URL of the Key Vault key used to encrypt the account. The key may either be versioned (for example https://vault/keys/mykey/version1) or reference a key without a version (for example https://vault/keys/mykey)." + }, + "currentKeyIdentifier": { + "type": "string", + "description": "The current key used to encrypt Video Analyzer account, including the key version.", + "readOnly": true + } + }, + "type": "object", + "description": "The details for accessing the encryption keys in Key Vault.", + "required": [ + "keyIdentifier" + ] + }, + "AccountEncryption": { + "properties": { + "type": { + "type": "string", + "enum": [ + "SystemKey", + "CustomerKey" + ], + "x-ms-enum": { + "name": "AccountEncryptionKeyType", + "values": [ + { + "value": "SystemKey", + "description": "The Account Key is encrypted with a System Key." + }, + { + "value": "CustomerKey", + "description": "The Account Key is encrypted with a Customer Key." + } + ], + "modelAsString": true + }, + "description": "The type of key used to encrypt the Account Key." + }, + "keyVaultProperties": { + "$ref": "#/definitions/KeyVaultProperties", + "description": "The properties of the key used to encrypt the account." + }, + "identity": { + "$ref": "#/definitions/ResourceIdentity", + "description": "The Key Vault identity." + }, + "status": { + "type": "string", + "description": "The current status of the Key Vault mapping.", + "readOnly": true + } + }, + "type": "object", + "description": "Defines how the Video Analyzer account is (optionally) encrypted.", + "required": [ + "type" + ] + }, + "OperationCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "description": "A collection of Operation items." + } + }, + "type": "object", + "description": "A collection of Operation items." + }, + "VideoAnalyzerCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VideoAnalyzer" + }, + "description": "A collection of VideoAnalyzer items." + } + }, + "type": "object", + "description": "A collection of VideoAnalyzer items." + } + }, + "paths": { + "/providers/Microsoft.Media/operations": { + "get": { + "summary": "List Operations", + "description": "Lists all the Media operations.", + "operationId": "Operations_List", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationCollection" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "List Operations": { + "$ref": "examples/operations-list-all.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/videoAnalyzers": { + "get": { + "summary": "List Video Analyzer accounts", + "description": "Lists the Video Analyzer accounts in the specified resource group.", + "operationId": "VideoAnalyzers_List", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VideoAnalyzerCollection" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "List all Video Analyzer accounts": { + "$ref": "examples/video-analyzer-accounts-list-all-accounts.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/videoAnalyzers/{accountName}": { + "get": { + "summary": "Get a Video Analyzer account", + "description": "Get the details of the specified Video Analyzer account", + "operationId": "VideoAnalyzers_Get", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VideoAnalyzer" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "description": "The Video Analyzer account name." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Get a Video Analyzer account by name": { + "$ref": "examples/video-analyzer-accounts-get-by-name.json" + } + } + }, + "put": { + "summary": "Create or update a Video Analyzer account", + "description": "Create or update an instance of a Video Analyzer account", + "operationId": "VideoAnalyzers_CreateOrUpdate", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VideoAnalyzer" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/VideoAnalyzer" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "description": "The Video Analyzer account name." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VideoAnalyzer" + }, + "description": "The request parameters" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Create a Video Analyzer account": { + "$ref": "examples/video-analyzer-accounts-create-or-update.json" + } + } + }, + "delete": { + "summary": "Delete a Video Analyzer account.", + "description": "Delete the specified Video Analyzer account", + "operationId": "VideoAnalyzers_Delete", + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "description": "The Video Analyzer account name." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Delete a Video Analyzer account": { + "$ref": "examples/video-analyzer-accounts-delete.json" + } + } + }, + "patch": { + "summary": "Update a Video Analyzer account", + "description": "Updates an existing instance of Video Analyzer account", + "operationId": "VideoAnalyzers_Update", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VideoAnalyzer" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "description": "The Video Analyzer account name." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VideoAnalyzerUpdate" + }, + "description": "The request parameters" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Update a Video Analyzer accounts": { + "$ref": "examples/video-analyzer-accounts-update.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/videoAnalyzers/{accountName}/syncStorageKeys": { + "post": { + "summary": "Synchronizes Storage Account Keys", + "description": "Synchronizes storage account keys for a storage account associated with the Video Analyzer account.", + "operationId": "VideoAnalyzers_SyncStorageKeys", + "responses": { + "200": { + "description": "OK" + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "description": "The Video Analyzer account name." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SyncStorageKeysInput" + }, + "description": "The request parameters." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Synchronizes Storage Account Keys": { + "$ref": "examples/video-analyzer-accounts-sync-storage-keys.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Media/locations/{locationName}/checkNameAvailability": { + "post": { + "summary": "Check Name Availability", + "description": "Checks whether the Video Analyzer resource name is available.", + "operationId": "Locations_CheckNameAvailability", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/CheckNameAvailabilityResponse" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "locationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the location." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/CheckNameAvailabilityRequest" + }, + "description": "The request parameters" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Check Name Availability": { + "$ref": "examples/accounts-check-name-availability.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Media/videoAnalyzers": { + "get": { + "summary": "List Video Analyzer accounts", + "description": "Lists the Video Analyzer accounts in the specific subscription.", + "operationId": "VideoAnalyzers_ListBySubscription", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VideoAnalyzerCollection" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "List all Video Analyzer accounts by subscription": { + "$ref": "examples/video-analyzer-accounts-subscription-list-all-accounts.json" + } + } + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/Videos.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/Videos.json new file mode 100644 index 000000000000..e5b6a6039ddd --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/Videos.json @@ -0,0 +1,1013 @@ +{ + "schemes": [ + "https" + ], + "swagger": "2.0", + "info": { + "title": "Azure Video Analyzer", + "description": "Azure Video Analyzer resource provider API definition.", + "version": "2021-05-01-preview" + }, + "host": "management.azure.com", + "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" + } + } + }, + "definitions": { + "VideoStreaming": { + "properties": { + "archiveBaseUrl": { + "type": "string", + "description": "Video streaming base URL for the video archive. When present, archived video can be played through the Azure Video Analyzer player. Alternatively, this URL can be used with compatible DASH or HLS players by appending the following to the base URL:\r\n\r\n - HLSv4: /manifest(format=m3u8-aapl).m3u8\r\n - HLS CMAF: /manifest(format=m3u8-cmaf)\r\n - DASH CMAF: /manifest(format=mpd-time-cmaf)\r\n\r\nMoreover, an ongoing video recording can be played in \"live mode\" with latencies which are approximately double of the chosen video segment length." + } + }, + "type": "object", + "description": "Video streaming holds information about video streaming URLs." + }, + "VideoFlags": { + "properties": { + "canStream": { + "type": "boolean", + "description": "Value indicating whether or not the video can be streamed. Only \"archive\" type videos can be streamed." + }, + "hasData": { + "type": "boolean", + "description": "Value indicating whether or not there has ever been data recorded or uploaded into the video. Newly created videos have this value set to false." + }, + "isRecording": { + "type": "boolean", + "description": "Value indicating whether or not the video is currently being referenced be an active live pipeline. The fact that is being referenced, doesn't necessarily indicate that data is being received. For example, video recording may be gated on events or camera may not be accessible at the time." + } + }, + "type": "object", + "required": [ + "canStream", + "hasData", + "isRecording" + ], + "description": "Video flags contain information about the available video actions and its dynamic properties based on the current video state." + }, + "VideoMediaInfo": { + "properties": { + "segmentLength": { + "type": "string", + "description": "Video segment length indicates the length of individual video files (segments) which are persisted to storage. Smaller segments provide lower archive playback latency but generate larger volume of storage transactions. Larger segments reduce the amount of storage transactions while increasing the archive playback latency. Value must be specified in ISO8601 duration format (i.e. \"PT30S\" equals 30 seconds) and can vary between 30 seconds to 5 minutes, in 30 seconds increments.", + "readOnly": true + } + }, + "type": "object", + "description": "Contains information about the video and audio content." + }, + "VideoStreamingToken": { + "properties": { + "expirationDate": { + "type": "string", + "format": "date-time", + "description": "The streaming token expiration date in ISO8601 format (eg. 2021-01-01T00:00:00Z).", + "readOnly": true, + "x-nullable": false + }, + "token": { + "type": "string", + "description": "The streaming token value to be added to the video streaming URL as the value for a \"token\" query string parameter. The token is specific to a single video.", + "readOnly": true + } + }, + "type": "object", + "description": "Video streaming token grants access to the video streaming URLs which can be used by an compatible HLS or DASH player." + }, + "VideoProperties": { + "properties": { + "title": { + "type": "string", + "description": "Optional video title provided by the user. Value can be up to 256 characters long." + }, + "description": { + "type": "string", + "description": "Optional video description provided by the user. Value can be up to 2048 characters long." + }, + "type": { + "type": "string", + "enum": [ + "Archive" + ], + "x-ms-enum": { + "name": "VideoType", + "values": [ + { + "value": "Archive", + "description": "Archive is flexible format that represents a video stream associated with wall-clock time. The video archive can either be continuous or discontinuous. An archive is discontinuous when there are gaps in the recording due to various reasons, such as the live pipeline being stopped, camera being disconnected or due to the use of event based recordings through the use of a signal gate. Finally, there is no limit to the archive duration and new video data can be appended to the existing archive at any time, as long as the same video codec and codec parameters are being used." + } + ], + "modelAsString": true + }, + "description": "Type of the video archive. Different archive formats provide different capabilities.", + "readOnly": true, + "x-nullable": false + }, + "flags": { + "$ref": "#/definitions/VideoFlags", + "description": "Video flags contain information about the available video actions and its dynamic properties based on the current video state.", + "readOnly": true + }, + "streaming": { + "$ref": "#/definitions/VideoStreaming", + "description": "Video streaming holds information about video streaming URLs.", + "readOnly": true + }, + "mediaInfo": { + "$ref": "#/definitions/VideoMediaInfo", + "description": "Contains information about the video and audio content.", + "readOnly": true + } + }, + "type": "object", + "description": "Application level properties for the video resource." + }, + "AuthenticationBase": { + "discriminator": "@type", + "properties": { + "@type": { + "type": "string", + "description": "The discriminator for derived types." + } + }, + "type": "object", + "required": [ + "@type" + ], + "description": "Base class for access policies authentication methods." + }, + "TokenClaim": { + "properties": { + "name": { + "type": "string", + "description": "Name of the claim which must be present on the token." + }, + "value": { + "type": "string", + "description": "Expected value of the claim to be present on the token." + } + }, + "type": "object", + "required": [ + "name", + "value" + ], + "description": "Properties for expected token claims." + }, + "JwtAuthentication": { + "x-ms-discriminator-value": "#Microsoft.VideoAnalyzer.JwtAuthentication", + "allOf": [ + { + "$ref": "#/definitions/AuthenticationBase" + } + ], + "properties": { + "issuers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of expected token issuers. Token issuer is valid if it matches at least one of the given values." + }, + "audiences": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of expected token audiences. Token audience is valid if it matches at least one of the given values." + }, + "claims": { + "type": "array", + "items": { + "$ref": "#/definitions/TokenClaim" + }, + "description": "List of additional token claims to be validated. Token must contains all claims and respective values for it to be valid." + }, + "keys": { + "type": "array", + "items": { + "$ref": "#/definitions/TokenKey" + }, + "description": "List of keys which can be used to validate access tokens. Having multiple keys allow for seamless key rotation of the token signing key. Token signature must match exactly one key." + } + }, + "type": "object", + "description": "Properties for access validation based on JSON Web Tokens (JWT)." + }, + "TokenKey": { + "discriminator": "@type", + "properties": { + "@type": { + "type": "string", + "description": "The discriminator for derived types." + }, + "kid": { + "type": "string", + "description": "JWT token key id. Validation keys are looked up based on the key id present on the JWT token header." + } + }, + "type": "object", + "required": [ + "@type", + "kid" + ], + "description": "Key properties for JWT token validation." + }, + "RsaTokenKey": { + "x-ms-discriminator-value": "#Microsoft.VideoAnalyzer.RsaTokenKey", + "allOf": [ + { + "$ref": "#/definitions/TokenKey" + } + ], + "properties": { + "alg": { + "type": "string", + "enum": [ + "RS256", + "RS384", + "RS512" + ], + "x-ms-enum": { + "name": "AccessPolicyRsaAlgo", + "values": [ + { + "value": "RS256", + "description": "RS256" + }, + { + "value": "RS384", + "description": "RS384" + }, + { + "value": "RS512", + "description": "RS512" + } + ], + "modelAsString": true + }, + "description": "RSA algorithm to be used: RS256, RS384 or RS512." + }, + "n": { + "type": "string", + "description": "RSA public key modulus." + }, + "e": { + "type": "string", + "description": "RSA public key exponent." + } + }, + "type": "object", + "required": [ + "alg", + "n", + "e" + ], + "description": "Required validation properties for tokens generated with RSA algorithm." + }, + "EccTokenKey": { + "x-ms-discriminator-value": "#Microsoft.VideoAnalyzer.EccTokenKey", + "allOf": [ + { + "$ref": "#/definitions/TokenKey" + } + ], + "properties": { + "alg": { + "type": "string", + "enum": [ + "ES256", + "ES384", + "ES512" + ], + "x-ms-enum": { + "name": "AccessPolicyEccAlgo", + "values": [ + { + "value": "ES256", + "description": "ES265" + }, + { + "value": "ES384", + "description": "ES384" + }, + { + "value": "ES512", + "description": "ES512" + } + ], + "modelAsString": true + }, + "description": "Elliptical curve algorithm to be used: ES256, ES384 or ES512." + }, + "x": { + "type": "string", + "description": "X coordinate." + }, + "y": { + "type": "string", + "description": "Y coordinate." + } + }, + "type": "object", + "required": [ + "alg", + "x", + "y" + ], + "description": "Required validation properties for tokens generated with Elliptical Curve algorithm." + }, + "AccessPolicyProperties": { + "properties": { + "role": { + "type": "string", + "enum": [ + "Reader" + ], + "x-ms-enum": { + "name": "AccessPolicyRole", + "values": [ + { + "value": "Reader", + "description": "Reader role allows for read-only operations to be performed through the client APIs." + } + ], + "modelAsString": true + }, + "description": "Defines the access level granted by this policy.", + "x-nullable": true + }, + "authentication": { + "$ref": "#/definitions/AuthenticationBase", + "description": "Authentication method to be used when validating client API access." + } + }, + "type": "object", + "description": "Application level properties for the access policy resource." + }, + "VideoEntity": { + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/VideoProperties", + "description": "The resource properties.", + "x-ms-client-flatten": true + }, + "systemData": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/systemData", + "description": "The system metadata relating to this resource.", + "readOnly": true + } + }, + "type": "object", + "description": "The representation of a single video in a Video Analyzer account." + }, + "AccessPolicyEntity": { + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/AccessPolicyProperties", + "description": "The resource properties.", + "x-ms-client-flatten": true + }, + "systemData": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/systemData", + "description": "The system metadata relating to this resource.", + "readOnly": true + } + }, + "type": "object", + "description": "Policy that determines how a video can be accessed." + }, + "VideoEntityCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VideoEntity" + }, + "description": "A collection of VideoEntity items." + }, + "@nextLink": { + "type": "string", + "description": "A link to the next page of the collection (when the collection contains too many results to return in one response)." + } + }, + "type": "object", + "description": "A collection of VideoEntity items." + }, + "AccessPolicyEntityCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AccessPolicyEntity" + }, + "description": "A collection of AccessPolicyEntity items." + }, + "@nextLink": { + "type": "string", + "description": "A link to the next page of the collection (when the collection contains too many results to return in one response)." + } + }, + "type": "object", + "description": "A collection of AccessPolicyEntity items." + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/videoAnalyzers/{accountName}/videos": { + "get": { + "summary": "List all existing video resources.", + "description": "List all existing video resources in the specified account.", + "operationId": "Videos_List", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VideoEntityCollection" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "Specifies a non-negative integer n that limits the number of items returned from a collection. The service returns the number of available items up to but not greater than the specified value n." + } + ], + "x-ms-pageable": { + "nextLinkName": "@nextLink" + }, + "x-ms-examples": { + "Lists video entities.": { + "$ref": "examples/video-list.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/videoAnalyzers/{accountName}/videos/{videoName}": { + "get": { + "summary": "Retrieves a video resource.", + "description": "Retrieves an existing video resource within an account with a given name.", + "operationId": "Videos_Get", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VideoEntity" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "videoName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the video to retrieve." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Gets a video entity.": { + "$ref": "examples/video-get.json" + } + } + }, + "put": { + "summary": "Create or updates a video resource.", + "description": "Creates a new video resource or updates an existing one in an account.", + "operationId": "Videos_CreateOrUpdate", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VideoEntity" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/VideoEntity" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "videoName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the video to create or update." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VideoEntity" + }, + "description": "The request parameters" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Register video entity.": { + "$ref": "examples/video-create.json" + } + } + }, + "delete": { + "summary": "Deletes a video resource.", + "description": "Deletes an existing video resource and its underlying data. This operation is irreversible.", + "operationId": "Videos_Delete", + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "videoName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the video to delete." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Deletes a video entity.": { + "$ref": "examples/video-delete.json" + } + } + }, + "patch": { + "summary": "Updates the properties of a video resource.", + "description": "Updates individual properties of an existing video resource.", + "operationId": "Videos_Update", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VideoEntity" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "videoName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the video to update." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VideoEntity" + }, + "description": "The request parameters" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Update video entity.": { + "$ref": "examples/video-patch.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/videoAnalyzers/{accountName}/videos/{videoName}/listStreamingToken": { + "post": { + "summary": "Generates a streaming token for video playback.", + "description": "Generates a streaming token used for authenticating video playback.", + "operationId": "Videos_ListStreamingToken", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VideoStreamingToken" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "videoName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the video to generate a token for playback." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Generate a streaming token for media endpoint authorization.": { + "$ref": "examples/video-listStreamingToken.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/videoAnalyzers/{accountName}/accessPolicies": { + "get": { + "summary": "List access policy resources.", + "description": "List all existing access policy resources for the specified account.", + "operationId": "AccessPolicies_List", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AccessPolicyEntityCollection" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "Specifies a non-negative integer n that limits the number of items returned from a collection. The service returns the number of available items up to but not greater than the specified value n." + } + ], + "x-ms-pageable": { + "nextLinkName": "@nextLink" + }, + "x-ms-examples": { + "Lists access policy entities.": { + "$ref": "examples/access-policy-list.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/videoAnalyzers/{accountName}/accessPolicies/{accessPolicyName}": { + "get": { + "summary": "Retrieves an access policy resource.", + "description": "Retrieves an existing access policy resource from an account by name.", + "operationId": "AccessPolicies_Get", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AccessPolicyEntity" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "accessPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the access policy to retrieve." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Gets an access policy entity.": { + "$ref": "examples/access-policy-get.json" + } + } + }, + "put": { + "summary": "Creates or updates an access policy.", + "description": "Creates a new access policy resource or updates an existing one.", + "operationId": "AccessPolicies_CreateOrUpdate", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AccessPolicyEntity" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/AccessPolicyEntity" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "accessPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the access policy to create or update." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AccessPolicyEntity" + }, + "description": "The request parameters" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Register access policy entity.": { + "$ref": "examples/access-policy-create.json" + } + } + }, + "delete": { + "summary": "Deletes an access policy.", + "description": "Deletes an existing access policy resource.", + "operationId": "AccessPolicies_Delete", + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "accessPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the access policy to delete." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Deletes an access policy entity.": { + "$ref": "examples/access-policy-delete.json" + } + } + }, + "patch": { + "summary": "Updates an existing access policy.", + "description": "Updates individual properties of an existing access policy resource.", + "operationId": "AccessPolicies_Update", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AccessPolicyEntity" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "accessPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the access policy to update." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AccessPolicyEntity" + }, + "description": "The request parameters" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Update access policy entity.": { + "$ref": "examples/access-policy-patch.json" + } + } + } + } + }, + "parameters": { + "AzureVideoAnalyzerAccountName": { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "description": "The Azure Video Analyzer account name.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/access-policy-create.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/access-policy-create.json new file mode 100644 index 000000000000..cd966deaa343 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/access-policy-create.json @@ -0,0 +1,146 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "accessPolicyName": "accessPolicyName1", + "api-version": "2021-05-01-preview", + "parameters": { + "properties": { + "role": "Reader", + "authentication": { + "@type": "#Microsoft.VideoAnalyzer.JwtAuthentication", + "issuers": [ + "issuer1", + "issuer2" + ], + "audiences": [ + "audience1" + ], + "claims": [ + { + "name": "claimname1", + "value": "claimvalue1" + }, + { + "name": "claimname2", + "value": "claimvalue2" + } + ], + "keys": [ + { + "@type": "#Microsoft.VideoAnalyzer.RsaTokenKey", + "alg": "RS256", + "kid": "123", + "n": "YmFzZTY0IQ==", + "e": "ZLFzZTY0IQ==" + }, + { + "@type": "#Microsoft.VideoAnalyzer.EccTokenKey", + "alg": "ES256", + "kid": "124", + "x": "XX==", + "y": "YY==" + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "accessPolicyName1", + "id": "/subscriptions/591e76c3-3e97-44db-879c-3e2b12961b62/resourceGroups/testrg/providers/Microsoft.Media/videoAnalyzers/testaccount2/accesspolicies/accessPolicyName1", + "type": "Microsoft.Media/videoAnalyzers/accesspolicies", + "properties": { + "role": "Reader", + "authentication": { + "@type": "#Microsoft.VideoAnalyzer.JwtAuthentication", + "issuers": [ + "issuer1", + "issuer2" + ], + "audiences": [ + "audience" + ], + "claims": [ + { + "name": "claimname1", + "value": "claimvalue1" + }, + { + "name": "claimname2", + "value": "claimvalue2" + } + ], + "keys": [ + { + "@type": "#Microsoft.VideoAnalyzer.RsaTokenKey", + "alg": "RS256", + "kid": "123", + "n": "YmFzZTY0IQ==", + "e": "ZLFzZTY0IQ==" + }, + { + "@type": "#Microsoft.VideoAnalyzer.EccTokenKey", + "alg": "ES256", + "kid": "124", + "x": "XX==", + "y": "YY==" + } + ] + } + }, + "systemData": {} + } + }, + "201": { + "body": { + "name": "accessPolicyName1", + "id": "/subscriptions/591e76c3-3e97-44db-879c-3e2b12961b62/resourceGroups/testrg/providers/Microsoft.Media/videoAnalyzers/testaccount2/accesspolicies/accessPolicyName1", + "type": "Microsoft.Media/videoAnalyzers/accesspolicies", + "properties": { + "role": "Reader", + "authentication": { + "@type": "#Microsoft.VideoAnalyzer.JwtAuthentication", + "issuers": [ + "issuer1", + "issuer2" + ], + "audiences": [ + "audience" + ], + "claims": [ + { + "name": "claimname1", + "value": "claimvalue1" + }, + { + "name": "claimname2", + "value": "claimvalue2" + } + ], + "keys": [ + { + "@type": "#Microsoft.VideoAnalyzer.RsaTokenKey", + "kid": "123", + "alg": "RS256", + "n": "YmFzZTY0IQ==", + "e": "ZLFzZTY0IQ==" + }, + { + "@type": "#Microsoft.VideoAnalyzer.EccTokenKey", + "kid": "124", + "alg": "ES256", + "x": "XX==", + "y": "YY==" + } + ] + } + }, + "systemData": {} + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/access-policy-delete.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/access-policy-delete.json new file mode 100644 index 000000000000..8d1be155a12d --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/access-policy-delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "accessPolicyName": "accessPolicyName1", + "api-version": "2021-05-01-preview" + }, + "responses": { + "204": {}, + "200": {} + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/access-policy-get.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/access-policy-get.json new file mode 100644 index 000000000000..cbf61468b5e5 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/access-policy-get.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "accessPolicyName": "accessPolicyName1", + "api-version": "2021-05-01-preview" + }, + "responses": { + "200": { + "body": { + "name": "accessPolicyName1", + "id": "/subscriptions/591e76c3-3e97-44db-879c-3e2b12961b62/resourceGroups/testrg/providers/Microsoft.Media/videoAnalyzers/testaccount2/accesspolicies/accessPolicyName1", + "type": "Microsoft.Media/videoAnalyzers/accesspolicies", + "properties": { + "role": "Reader", + "authentication": { + "@type": "#Microsoft.VideoAnalyzer.JwtAuthentication", + "issuers": [ + "issuer1", + "issuer2" + ], + "audiences": [ + "audience" + ], + "claims": [ + { + "name": "claimname1", + "value": "claimvalue1" + }, + { + "name": "claimname2", + "value": "claimvalue2" + } + ], + "keys": [ + { + "@type": "#Microsoft.VideoAnalyzer.RsaTokenKey", + "kid": "123", + "alg": "RS256", + "n": "YmFzZTY0IQ==", + "e": "ZLFzZTY0IQ==" + }, + { + "@type": "#Microsoft.VideoAnalyzer.EccTokenKey", + "kid": "124", + "alg": "ES256", + "x": "XX==", + "y": "YY==" + } + ] + } + }, + "systemData": {} + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/access-policy-list.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/access-policy-list.json new file mode 100644 index 000000000000..14209f66f313 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/access-policy-list.json @@ -0,0 +1,107 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "api-version": "2021-05-01-preview", + "$top": "2" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "accessPolicyName1", + "id": "/subscriptions/591e76c3-3e97-44db-879c-3e2b12961b62/resourceGroups/testrg/providers/Microsoft.Media/videoAnalyzers/testaccount2/accesspolicies/accessPolicyName1", + "type": "Microsoft.Media/videoAnalyzers/accesspolicies", + "properties": { + "role": "Reader", + "authentication": { + "@type": "#Microsoft.VideoAnalyzer.JwtAuthentication", + "issuers": [ + "issuer1", + "issuer2" + ], + "audiences": [ + "audience" + ], + "claims": [ + { + "name": "claimname1", + "value": "claimvalue1" + }, + { + "name": "claimname2", + "value": "claimvalue2" + } + ], + "keys": [ + { + "@type": "#Microsoft.VideoAnalyzer.RsaTokenKey", + "kid": "123", + "alg": "RS256", + "n": "YmFzZTY0IQ==", + "e": "ZLFzZTY0IQ==" + }, + { + "@type": "#Microsoft.VideoAnalyzer.EccTokenKey", + "kid": "124", + "alg": "ES256", + "x": "XX==", + "y": "YY==" + } + ] + } + }, + "systemData": {} + }, + { + "name": "accessPolicyName2", + "id": "/subscriptions/591e76c3-3e97-44db-879c-3e2b12961b62/resourceGroups/testrg/providers/Microsoft.Media/videoAnalyzers/testaccount2/accesspolicies/accessPolicyName2", + "type": "Microsoft.Media/videoAnalyzers/accesspolicies", + "properties": { + "role": "Reader", + "authentication": { + "@type": "#Microsoft.VideoAnalyzer.JwtAuthentication", + "issuers": [ + "issuer1", + "issuer2" + ], + "audiences": [ + "audience" + ], + "claims": [ + { + "name": "claimname1", + "value": "claimvalue1" + }, + { + "name": "claimname2", + "value": "claimvalue2" + } + ], + "keys": [ + { + "@type": "#Microsoft.VideoAnalyzer.RsaTokenKey", + "kid": "123", + "alg": "RS256", + "n": "YmFzZTY0IQ==", + "e": "ZLFzZTY0IQ==" + }, + { + "@type": "#Microsoft.VideoAnalyzer.EccTokenKey", + "kid": "124", + "alg": "ES256", + "x": "XX==", + "y": "YY==" + } + ] + } + }, + "systemData": {} + } + ] + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/access-policy-patch.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/access-policy-patch.json new file mode 100644 index 000000000000..2548862b7323 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/access-policy-patch.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "accessPolicyName": "accessPolicyName1", + "api-version": "2021-05-01-preview", + "parameters": { + "properties": { + "authentication": { + "@type": "#Microsoft.VideoAnalyzer.JwtAuthentication", + "keys": [ + { + "@type": "#Microsoft.VideoAnalyzer.RsaTokenKey", + "alg": "RS256", + "kid": "123", + "n": "YmFzZTY0IQ==", + "e": "ZLFzZTY0IQ==" + }, + { + "@type": "#Microsoft.VideoAnalyzer.EccTokenKey", + "alg": "Updated", + "kid": "124", + "x": "XX==", + "y": "YY==" + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "accessPolicyName1", + "id": "/subscriptions/591e76c3-3e97-44db-879c-3e2b12961b62/resourceGroups/testrg/providers/Microsoft.Media/videoAnalyzers/testaccount2/accesspolicies/accessPolicyName1", + "type": "Microsoft.Media/videoAnalyzers/accesspolicies", + "properties": { + "role": "Reader", + "authentication": { + "@type": "#Microsoft.VideoAnalyzer.JwtAuthentication", + "issuers": [ + "issuer1", + "issuer2" + ], + "audiences": [ + "audience" + ], + "claims": [ + { + "name": "claimname1", + "value": "claimvalue1" + }, + { + "name": "claimname2", + "value": "claimvalue2" + } + ], + "keys": [ + { + "@type": "#Microsoft.VideoAnalyzer.RsaTokenKey", + "kid": "123", + "alg": "RS256", + "n": "YmFzZTY0IQ==", + "e": "ZLFzZTY0IQ==" + }, + { + "@type": "#Microsoft.VideoAnalyzer.EccTokenKey", + "kid": "124", + "alg": "ES256", + "x": "XX==", + "y": "YY==" + } + ] + } + }, + "systemData": {} + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/accounts-check-name-availability.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/accounts-check-name-availability.json new file mode 100644 index 000000000000..b29ea80bb353 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/accounts-check-name-availability.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "locationName": "japanwest", + "api-version": "2021-05-01-preview", + "parameters": { + "name": "contosotv", + "type": "videoAnalyzers" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": true, + "reason": "None", + "message": "" + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/edge-modules-create.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/edge-modules-create.json new file mode 100644 index 000000000000..51bc32b79558 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/edge-modules-create.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "edgeModuleName": "edgeModule1", + "api-version": "2021-05-01-preview", + "parameters": {} + }, + "responses": { + "201": { + "body": { + "name": "edgeModule1", + "id": "/subscriptions/591e76c3-3e97-44db-879c-3e2b12961b62/resourceGroups/testrg/providers/Microsoft.Media/videoAnalyzers/testaccount2/edgeModules/edgeModule1", + "type": "Microsoft.Media/videoAnalyzers/edgeModules", + "properties": { + "edgeModuleId": "00000000-0000-0000-0000-000000000000" + }, + "systemData": { + "createdBy": "user@microsoft.com", + "createdByType": "User", + "createdAt": "0001-01-01T00:00:00Z", + "lastModifiedBy": "user@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "0001-01-01T00:00:00Z" + } + } + }, + "200": { + "body": { + "name": "edgeModule1", + "id": "/subscriptions/591e76c3-3e97-44db-879c-3e2b12961b62/resourceGroups/testrg/providers/Microsoft.Media/videoAnalyzers/testaccount2/edgeModules/edgeModule1", + "type": "Microsoft.Media/videoAnalyzers/edgeModules", + "properties": { + "edgeModuleId": "00000000-0000-0000-0000-000000000000" + }, + "systemData": { + "createdBy": "user@microsoft.com", + "createdByType": "User", + "createdAt": "0001-01-01T00:00:00Z", + "lastModifiedBy": "user@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "0001-01-01T00:00:00Z" + } + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/edge-modules-delete.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/edge-modules-delete.json new file mode 100644 index 000000000000..966171c7887e --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/edge-modules-delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "edgeModuleName": "edgeModule1", + "api-version": "2021-05-01-preview" + }, + "responses": { + "204": {}, + "200": {} + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/edge-modules-get.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/edge-modules-get.json new file mode 100644 index 000000000000..cc8c70490401 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/edge-modules-get.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "edgeModuleName": "edgeModule1", + "api-version": "2021-05-01-preview" + }, + "responses": { + "200": { + "body": { + "name": "edgeModule1", + "id": "/subscriptions/591e76c3-3e97-44db-879c-3e2b12961b62/resourceGroups/testrg/providers/Microsoft.Media/videoAnalyzers/testaccount2/edgeModules/edgeModule1", + "type": "Microsoft.Media/videoAnalyzers/edgeModules", + "properties": { + "edgeModuleId": "00000000-0000-0000-0000-000000000000" + }, + "systemData": { + "createdBy": "user@microsoft.com", + "createdByType": "User", + "createdAt": "0001-01-01T00:00:00Z", + "lastModifiedBy": "user@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "0001-01-01T00:00:00Z" + } + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/edge-modules-list.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/edge-modules-list.json new file mode 100644 index 000000000000..5498003d345b --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/edge-modules-list.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "api-version": "2021-05-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "edgeModule1", + "id": "/subscriptions/591e76c3-3e97-44db-879c-3e2b12961b62/resourceGroups/testrg/providers/Microsoft.Media/videoAnalyzers/testaccount2/edgeModules/edgeModule1", + "type": "Microsoft.Media/videoAnalyzers/edgeModules", + "properties": { + "edgeModuleId": "00000000-0000-0000-0000-000000000000" + }, + "systemData": { + "createdBy": "user@microsoft.com", + "createdByType": "User", + "createdAt": "0001-01-01T00:00:00Z", + "lastModifiedBy": "user@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "0001-01-01T00:00:00Z" + } + }, + { + "name": "edgeModule2", + "id": "/subscriptions/591e76c3-3e97-44db-879c-3e2b12961b62/resourceGroups/testrg/providers/Microsoft.Media/videoAnalyzers/testaccount2/edgeModules/edgeModule2", + "type": "Microsoft.Media/videoAnalyzers/edgeModules", + "properties": { + "edgeModuleId": "00000000-0000-0000-0000-000000000000" + }, + "systemData": { + "createdBy": "user@microsoft.com", + "createdByType": "User", + "createdAt": "0001-01-01T00:00:00Z", + "lastModifiedBy": "user@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "0001-01-01T00:00:00Z" + } + } + ] + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/edge-modules-listProvisioningToken.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/edge-modules-listProvisioningToken.json new file mode 100644 index 000000000000..40e6edc58e74 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/edge-modules-listProvisioningToken.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "edgeModuleName": "edgeModule1", + "api-version": "2021-05-01-preview", + "parameters": { + "expirationDate": "3021-01-23T11:04:49.0526841-08:00" + } + }, + "responses": { + "200": { + "body": { + "expirationDate": "3021-01-23T19:04:49.0526841+00:00", + "token": "testtoken" + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/operations-list-all.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/operations-list-all.json new file mode 100644 index 000000000000..33baf18c9c17 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/operations-list-all.json @@ -0,0 +1,1269 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "api-version": "2021-05-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Media/register/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Microsoft Media Services", + "operation": "Registers the Media Services Resource Provider", + "description": "Registers the subscription for the Media Services resource provider and enables the creation of Media Services accounts" + } + }, + { + "name": "Microsoft.Media/unregister/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Microsoft Media Services", + "operation": "Unregisters the Media Services Resource Provider", + "description": "Unregisters the subscription for the Media Services resource provider" + } + }, + { + "name": "Microsoft.Media/checknameavailability/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Microsoft Media Services", + "operation": "Check Name Availability", + "description": "Checks if a Media Services account name is available" + } + }, + { + "name": "Microsoft.Media/operations/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Available Operations", + "operation": "Get Available Operations", + "description": "Get Available Operations" + } + }, + { + "name": "Microsoft.Media/mediaservices/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Media Services Account", + "operation": "Read Media Services Account", + "description": "Read any Media Services Account" + } + }, + { + "name": "Microsoft.Media/mediaservices/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "Media Services Account", + "operation": "Create or Update Media Services Account", + "description": "Create or Update any Media Services Account" + } + }, + { + "name": "Microsoft.Media/mediaservices/delete", + "display": { + "provider": "Microsoft Media Services", + "resource": "Media Services Account", + "operation": "Delete Media Services Account", + "description": "Delete any Media Services Account" + } + }, + { + "name": "Microsoft.Media/mediaservices/regenerateKey/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Media Services Account", + "operation": "Regenerate Key", + "description": "Regenerate a Media Services ACS key" + } + }, + { + "name": "Microsoft.Media/mediaservices/listKeys/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Media Services Account", + "operation": "List Keys", + "description": "List the ACS keys for the Media Services account" + } + }, + { + "name": "Microsoft.Media/mediaservices/syncStorageKeys/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Media Services Account", + "operation": "Synchronize Storage Keys", + "description": "Synchronize the Storage Keys for an attached Azure Storage account" + } + }, + { + "name": "Microsoft.Media/mediaservices/listEdgePolicies/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Media Services Account", + "operation": "List policies for an edge device.", + "description": "List policies for an edge device." + } + }, + { + "name": "Microsoft.Media/mediaservices/PrivateEndpointConnectionsApproval/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Media Services Account", + "operation": "Approve Private Endpoint Connections", + "description": "Approve Private Endpoint Connections" + } + }, + { + "name": "Microsoft.Media/mediaservices/eventGridFilters/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Event Grid Filter", + "operation": "Read Event Grid Filter", + "description": "Read any Event Grid Filter" + } + }, + { + "name": "Microsoft.Media/mediaservices/eventGridFilters/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "Event Grid Filter", + "operation": "Create or Update Event Grid Filter", + "description": "Create or Update any Event Grid Filter" + } + }, + { + "name": "Microsoft.Media/mediaservices/eventGridFilters/delete", + "display": { + "provider": "Microsoft Media Services", + "resource": "Event Grid Filter", + "operation": "Delete Event Grid Filter", + "description": "Delete any Event Grid Filter" + } + }, + { + "name": "Microsoft.Media/mediaservices/accountfilters/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Account Filter", + "operation": "Read Account Filter", + "description": "Read any Account Filter" + } + }, + { + "name": "Microsoft.Media/mediaservices/accountfilters/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "Account Filter", + "operation": "Create or Update Account Filter", + "description": "Create or Update any Account Filter" + } + }, + { + "name": "Microsoft.Media/mediaservices/accountfilters/delete", + "display": { + "provider": "Microsoft Media Services", + "resource": "Account Filter", + "operation": "Delete Account Filter", + "description": "Delete any Account Filter" + } + }, + { + "name": "Microsoft.Media/mediaservices/assets/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Asset", + "operation": "Read Asset", + "description": "Read any Asset" + } + }, + { + "name": "Microsoft.Media/mediaservices/assets/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "Asset", + "operation": "Create or Update Asset", + "description": "Create or Update any Asset" + } + }, + { + "name": "Microsoft.Media/mediaservices/assets/delete", + "display": { + "provider": "Microsoft Media Services", + "resource": "Asset", + "operation": "Delete Asset", + "description": "Delete any Asset" + } + }, + { + "name": "Microsoft.Media/mediaservices/assets/listContainerSas/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Asset", + "operation": "List Asset Container SAS URLs", + "description": "List Asset Container SAS URLs" + } + }, + { + "name": "Microsoft.Media/mediaservices/assets/getEncryptionKey/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Asset", + "operation": "Get Asset Encryption Key", + "description": "Get Asset Encryption Key" + } + }, + { + "name": "Microsoft.Media/mediaservices/assets/listStreamingLocators/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Asset", + "operation": "List Streaming Locators for Asset", + "description": "List Streaming Locators for Asset" + } + }, + { + "name": "Microsoft.Media/mediaservices/assets/assetfilters/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Asset Filter", + "operation": "Read Asset Filter", + "description": "Read any Asset Filter" + } + }, + { + "name": "Microsoft.Media/mediaservices/assets/assetfilters/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "Asset Filter", + "operation": "Create or Update Asset Filter", + "description": "Create or Update any Asset Filter" + } + }, + { + "name": "Microsoft.Media/mediaservices/assets/assetfilters/delete", + "display": { + "provider": "Microsoft Media Services", + "resource": "Asset Filter", + "operation": "Delete Asset Filter", + "description": "Delete any Asset Filter" + } + }, + { + "name": "Microsoft.Media/mediaservices/streamingPolicies/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Streaming Policy", + "operation": "Read Streaming Policy", + "description": "Read any Streaming Policy" + } + }, + { + "name": "Microsoft.Media/mediaservices/streamingPolicies/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "Streaming Policy", + "operation": "Create or Update Streaming Policy", + "description": "Create or Update any Streaming Policy" + } + }, + { + "name": "Microsoft.Media/mediaservices/streamingPolicies/delete", + "display": { + "provider": "Microsoft Media Services", + "resource": "Streaming Policy", + "operation": "Delete Streaming Policy", + "description": "Delete any Streaming Policy" + } + }, + { + "name": "Microsoft.Media/mediaservices/streamingLocators/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Streaming Locator", + "operation": "Read Streaming Locator", + "description": "Read any Streaming Locator" + } + }, + { + "name": "Microsoft.Media/mediaservices/streamingLocators/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "Streaming Locator", + "operation": "Create or Update Streaming Locator", + "description": "Create or Update any Streaming Locator" + } + }, + { + "name": "Microsoft.Media/mediaservices/streamingLocators/delete", + "display": { + "provider": "Microsoft Media Services", + "resource": "Streaming Locator", + "operation": "Delete Streaming Locator", + "description": "Delete any Streaming Locator" + } + }, + { + "name": "Microsoft.Media/mediaservices/streamingLocators/listContentKeys/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Streaming Locator", + "operation": "List Content Keys", + "description": "List Content Keys" + } + }, + { + "name": "Microsoft.Media/mediaservices/streamingLocators/listPaths/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Streaming Locator", + "operation": "List Paths", + "description": "List Paths" + } + }, + { + "name": "Microsoft.Media/mediaservices/contentKeyPolicies/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Content Key Policy", + "operation": "Read Content Key Policy", + "description": "Read any Content Key Policy" + } + }, + { + "name": "Microsoft.Media/mediaservices/contentKeyPolicies/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "Content Key Policy", + "operation": "Create or Update Content Key Policy", + "description": "Create or Update any Content Key Policy" + } + }, + { + "name": "Microsoft.Media/mediaservices/contentKeyPolicies/delete", + "display": { + "provider": "Microsoft Media Services", + "resource": "Content Key Policy", + "operation": "Delete Content Key Policy", + "description": "Delete any Content Key Policy" + } + }, + { + "name": "Microsoft.Media/mediaservices/contentKeyPolicies/getPolicyPropertiesWithSecrets/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Content Key Policy", + "operation": "Get Policy Properties With Secrets", + "description": "Get Policy Properties With Secrets" + } + }, + { + "name": "Microsoft.Media/mediaservices/transforms/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Transform", + "operation": "Read Transform", + "description": "Read any Transform" + } + }, + { + "name": "Microsoft.Media/mediaservices/transforms/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "Transform", + "operation": "Create or Update Transform", + "description": "Create or Update any Transform" + } + }, + { + "name": "Microsoft.Media/mediaservices/transforms/delete", + "display": { + "provider": "Microsoft Media Services", + "resource": "Transform", + "operation": "Delete Transform", + "description": "Delete any Transform" + } + }, + { + "name": "Microsoft.Media/mediaservices/transforms/jobs/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Job", + "operation": "Read Job", + "description": "Read any Job" + } + }, + { + "name": "Microsoft.Media/mediaservices/transforms/jobs/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "Job", + "operation": "Create or Update Job", + "description": "Create or Update any Job" + } + }, + { + "name": "Microsoft.Media/mediaservices/transforms/jobs/delete", + "display": { + "provider": "Microsoft Media Services", + "resource": "Job", + "operation": "Delete Job", + "description": "Delete any Job" + } + }, + { + "name": "Microsoft.Media/mediaservices/transforms/jobs/cancelJob/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Job", + "operation": "Cancel Job", + "description": "Cancel Job" + } + }, + { + "name": "Microsoft.Media/mediaservices/mediaGraphs/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Media Graph", + "operation": "Read Media Graph", + "description": "Read any Media Graph" + } + }, + { + "name": "Microsoft.Media/mediaservices/mediaGraphs/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "Media Graph", + "operation": "Create or Update Media Graph", + "description": "Create or Update any Media Graph" + } + }, + { + "name": "Microsoft.Media/mediaservices/mediaGraphs/delete", + "display": { + "provider": "Microsoft Media Services", + "resource": "Media Graph", + "operation": "Delete Media Graph", + "description": "Delete any Media Graph" + } + }, + { + "name": "Microsoft.Media/mediaservices/mediaGraphs/start/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Media Graph", + "operation": "Start Media Graph Operation", + "description": "Start any Media Graph Operation" + } + }, + { + "name": "Microsoft.Media/mediaservices/mediaGraphs/stop/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Media Graph", + "operation": "Stop Media Graph Operation", + "description": "Stop any Media Graph Operation" + } + }, + { + "name": "Microsoft.Media/mediaservices/privateLinkResources/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "PrivateLinkResource", + "operation": "Read Private Link Resource", + "description": "Read any Private Link Resource" + } + }, + { + "name": "Microsoft.Media/mediaservices/privateEndpointConnectionProxies/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "PrivateEndpointConnectionProxy", + "operation": "Read Private Endpoint Connection Proxy", + "description": "Read any Private Endpoint Connection Proxy" + } + }, + { + "name": "Microsoft.Media/mediaservices/privateEndpointConnectionProxies/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "PrivateEndpointConnectionProxy", + "operation": "Create Private Endpoint Connection Proxy", + "description": "Create Private Endpoint Connection Proxy" + } + }, + { + "name": "Microsoft.Media/mediaservices/privateEndpointConnectionProxies/delete", + "display": { + "provider": "Microsoft Media Services", + "resource": "PrivateEndpointConnectionProxy", + "operation": "Delete Private Endpoint Connection Proxy", + "description": "Delete Private Endpoint Connection Proxy" + } + }, + { + "name": "Microsoft.Media/mediaservices/privateEndpointConnectionProxies/validate/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "PrivateEndpointConnectionProxy", + "operation": "Validate Private Endpoint Connection Proxy", + "description": "Validate Private Endpoint Connection Proxy" + } + }, + { + "name": "Microsoft.Media/mediaservices/privateEndpointConnections/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "PrivateEndpointConnection", + "operation": "Read Private Endpoint Connection", + "description": "Read any Private Endpoint Connection" + } + }, + { + "name": "Microsoft.Media/mediaservices/privateEndpointConnections/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "PrivateEndpointConnection", + "operation": "Create Private Endpoint Connection", + "description": "Create Private Endpoint Connection" + } + }, + { + "name": "Microsoft.Media/mediaservices/privateEndpointConnections/delete", + "display": { + "provider": "Microsoft Media Services", + "resource": "PrivateEndpointConnection", + "operation": "Delete Private Endpoint Connection", + "description": "Delete Private Endpoint Connection" + } + }, + { + "name": "Microsoft.Media/mediaservices/privateEndpointConnectionOperations/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Private Endpoint Connection Operation", + "operation": "Read Private Endpoint Connection Operation", + "description": "Read any Private Endpoint Connection Operation" + } + }, + { + "name": "Microsoft.Media/mediaservices/streamingEndpoints/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Streaming Endpoint", + "operation": "Read Streaming Endpoint", + "description": "Read any Streaming Endpoint" + } + }, + { + "name": "Microsoft.Media/mediaservices/streamingEndpoints/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "Streaming Endpoint", + "operation": "Create or Update Streaming Endpoint", + "description": "Create or Update any Streaming Endpoint" + } + }, + { + "name": "Microsoft.Media/mediaservices/streamingEndpoints/delete", + "display": { + "provider": "Microsoft Media Services", + "resource": "Streaming Endpoint", + "operation": "Delete Streaming Endpoint", + "description": "Delete any Streaming Endpoint" + } + }, + { + "name": "Microsoft.Media/mediaservices/streamingEndpoints/start/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Streaming Endpoint", + "operation": "Start Streaming Endpoint Operation", + "description": "Start any Streaming Endpoint Operation" + } + }, + { + "name": "Microsoft.Media/mediaservices/streamingEndpoints/stop/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Streaming Endpoint", + "operation": "Stop Streaming Endpoint Operation", + "description": "Stop any Streaming Endpoint Operation" + } + }, + { + "name": "Microsoft.Media/mediaservices/streamingEndpoints/scale/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Streaming Endpoint", + "operation": "Scale Streaming Endpoint Operation", + "description": "Scale any Streaming Endpoint Operation" + } + }, + { + "name": "Microsoft.Media/mediaservices/streamingEndpoints/providers/Microsoft.Insights/diagnosticSettings/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Streaming Endpoints", + "operation": "Read diagnostic setting", + "description": "Gets the diagnostic setting for the resource." + }, + "origin": "system" + }, + { + "name": "Microsoft.Media/mediaservices/streamingEndpoints/providers/Microsoft.Insights/diagnosticSettings/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "Streaming Endpoints", + "operation": "Write diagnostic setting", + "description": "Creates or updates the diagnostic setting for the resource." + }, + "origin": "system" + }, + { + "name": "Microsoft.Media/mediaservices/streamingEndpoints/providers/Microsoft.Insights/metricDefinitions/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Streaming Endpoints", + "operation": "Get list of Media Services Streaming Endpoint Metrics definitions.", + "description": "Get list of Media Services Streaming Endpoint Metrics definitions." + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "metricSpecifications": [ + { + "name": "Egress", + "displayName": "Egress", + "displayDescription": "The amount of Egress data, in bytes.", + "unit": "Bytes", + "aggregationType": "Total", + "dimensions": [ + { + "name": "OutputFormat", + "displayName": "Output Format", + "toBeExportedForShoebox": true + } + ], + "supportedAggregationTypes": [ + "Total" + ] + }, + { + "name": "SuccessE2ELatency", + "displayName": "Success end to end Latency", + "displayDescription": "The average latency for successful requests in milliseconds.", + "unit": "Milliseconds", + "aggregationType": "Average", + "dimensions": [ + { + "name": "OutputFormat", + "displayName": "Output Format", + "toBeExportedForShoebox": true + } + ], + "supportedAggregationTypes": [ + "Average", + "Minimum", + "Maximum" + ] + }, + { + "name": "Requests", + "displayName": "Requests", + "displayDescription": "Requests to a Streaming Endpoint.", + "unit": "Count", + "aggregationType": "Total", + "dimensions": [ + { + "name": "OutputFormat", + "displayName": "Output Format", + "toBeExportedForShoebox": true + }, + { + "name": "HttpStatusCode", + "displayName": "HTTP Status Code", + "toBeExportedForShoebox": true + }, + { + "name": "ErrorCode", + "displayName": "Error Code", + "toBeExportedForShoebox": false + } + ], + "supportedAggregationTypes": [ + "Total" + ] + }, + { + "name": "EgressBandwidth", + "displayName": "Egress bandwidth", + "displayDescription": "Egress bandwidth in bits per second.", + "unit": "BitsPerSecond", + "aggregationType": "Average", + "lockAggregationType": "Total", + "dimensions": [], + "supportedAggregationTypes": [ + "Average", + "Minimum", + "Maximum" + ] + }, + { + "name": "CPU", + "displayName": "CPU usage", + "displayDescription": "CPU usage for premium streaming endpoints. This data is not available for standard streaming endpoints.", + "unit": "Percent", + "aggregationType": "Average", + "dimensions": [], + "supportedAggregationTypes": [ + "Average", + "Minimum", + "Maximum" + ] + } + ] + } + } + }, + { + "name": "Microsoft.Media/mediaservices/liveEvents/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Live Event", + "operation": "Read Live Event", + "description": "Read any Live Event" + } + }, + { + "name": "Microsoft.Media/mediaservices/liveEvents/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "Live Event", + "operation": "Create or Update Live Event", + "description": "Create or Update any Live Event" + } + }, + { + "name": "Microsoft.Media/mediaservices/liveEvents/delete", + "display": { + "provider": "Microsoft Media Services", + "resource": "Live Event", + "operation": "Delete Live Event", + "description": "Delete any Live Event" + } + }, + { + "name": "Microsoft.Media/mediaservices/liveEvents/start/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Live Event", + "operation": "Start Live Event Operation", + "description": "Start any Live Event Operation" + } + }, + { + "name": "Microsoft.Media/mediaservices/liveEvents/stop/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Live Event", + "operation": "Stop Live Event Operation", + "description": "Stop any Live Event Operation" + } + }, + { + "name": "Microsoft.Media/mediaservices/liveEvents/reset/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Live Event", + "operation": "Reset Live Event Operation", + "description": "Reset any Live Event Operation" + } + }, + { + "name": "Microsoft.Media/mediaservices/liveEvents/providers/Microsoft.Insights/diagnosticSettings/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Live Event", + "operation": "Read diagnostic setting", + "description": "Gets the diagnostic setting for the resource." + }, + "origin": "system" + }, + { + "name": "Microsoft.Media/mediaservices/liveEvents/providers/Microsoft.Insights/diagnosticSettings/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "Live Event", + "operation": "Write diagnostic setting", + "description": "Creates or updates the diagnostic setting for the resource." + }, + "origin": "system" + }, + { + "name": "Microsoft.Media/mediaservices/liveEvents/providers/Microsoft.Insights/metricDefinitions/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Live Event", + "operation": "Get a list of Media Services Live Event Metrics definitions.", + "description": "Get a list of Media Services Live Event Metrics definitions." + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "metricSpecifications": [ + { + "name": "IngestBitrate", + "displayName": "Live Event ingest bitrate", + "displayDescription": "The incoming bitrate ingested for a live event, in bits per second.", + "unit": "BitsPerSecond", + "aggregationType": "Average", + "dimensions": [ + { + "name": "TrackName", + "displayName": "Track name", + "toBeExportedForShoebox": true + } + ], + "enableRegionalMdmAccount": true, + "sourceMdmNamespace": "MicrosoftMediaLiveEvent", + "supportedAggregationTypes": [ + "Average", + "Minimum", + "Maximum" + ] + }, + { + "name": "IngestLastTimestamp", + "displayName": "Live Event ingest last timestamp", + "displayDescription": "Last timestamp ingested for a live event.", + "unit": "Milliseconds", + "aggregationType": "Maximum", + "dimensions": [ + { + "name": "TrackName", + "displayName": "Track name", + "toBeExportedForShoebox": true + } + ], + "enableRegionalMdmAccount": true, + "sourceMdmNamespace": "MicrosoftMediaLiveEvent", + "supportedAggregationTypes": [ + "Maximum" + ] + }, + { + "name": "IngestDriftValue", + "displayName": "Live Event ingest drift value", + "displayDescription": "Drift between the timestamp of the ingested content and the system clock, measured in seconds per minute. A non zero value indicates that the ingested content is arriving slower than system clock time.", + "unit": "Seconds", + "aggregationType": "Maximum", + "dimensions": [ + { + "name": "TrackName", + "displayName": "Track name", + "toBeExportedForShoebox": true + } + ], + "enableRegionalMdmAccount": true, + "sourceMdmNamespace": "MicrosoftMediaLiveEvent", + "supportedAggregationTypes": [ + "Maximum" + ] + }, + { + "name": "LiveOutputLastTimestamp", + "displayName": "Last output timestamp", + "displayDescription": "Timestamp of the last fragment uploaded to storage for a live event output.", + "unit": "Milliseconds", + "aggregationType": "Maximum", + "dimensions": [ + { + "name": "TrackName", + "displayName": "Track name", + "toBeExportedForShoebox": true + } + ], + "enableRegionalMdmAccount": true, + "sourceMdmNamespace": "MicrosoftMediaLiveEvent", + "supportedAggregationTypes": [ + "Maximum" + ] + } + ] + } + } + }, + { + "name": "Microsoft.Media/mediaservices/liveEvents/liveOutputs/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Live Output", + "operation": "Read Live Output", + "description": "Read any Live Output" + } + }, + { + "name": "Microsoft.Media/mediaservices/liveEvents/liveOutputs/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "Live Output", + "operation": "Create or Update Live Output", + "description": "Create or Update any Live Output" + } + }, + { + "name": "Microsoft.Media/mediaservices/liveEvents/liveOutputs/delete", + "display": { + "provider": "Microsoft Media Services", + "resource": "Live Output", + "operation": "Delete Live Output", + "description": "Delete any Live Output" + } + }, + { + "name": "Microsoft.Media/mediaservices/streamingEndpointOperations/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Streaming Endpoint Operation", + "operation": "Read Streaming Endpoint Operation", + "description": "Read any Streaming Endpoint Operation" + } + }, + { + "name": "Microsoft.Media/mediaservices/liveEventOperations/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Live Event Operation", + "operation": "Read Live Event Operation", + "description": "Read any Live Event Operation" + } + }, + { + "name": "Microsoft.Media/mediaservices/liveOutputOperations/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Live Output Operation", + "operation": "Read Live Output Operation", + "description": "Read any Live Output Operation" + } + }, + { + "name": "Microsoft.Media/mediaservices/providers/Microsoft.Insights/diagnosticSettings/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Media Services Account", + "operation": "Read diagnostic setting", + "description": "Gets the diagnostic setting for the resource." + }, + "origin": "system" + }, + { + "name": "Microsoft.Media/mediaservices/providers/Microsoft.Insights/diagnosticSettings/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "Media Services Account", + "operation": "Write diagnostic setting", + "description": "Creates or updates the diagnostic setting for the resource." + }, + "origin": "system" + }, + { + "name": "Microsoft.Media/mediaservices/providers/Microsoft.Insights/logDefinitions/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "The log definition of mediaservices", + "operation": "Read mediaservices log definitions", + "description": "Gets the available logs for a Media Services Account" + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "logSpecifications": [ + { + "name": "KeyDeliveryRequests", + "displayName": "Key Delivery Requests", + "blobDuration": "PT1H" + } + ] + } + } + }, + { + "name": "Microsoft.Media/mediaservices/providers/Microsoft.Insights/metricDefinitions/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Media Service", + "operation": "Get list of Media Services Metric definitions.", + "description": "Get list of Media Services Metric definitions." + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "metricSpecifications": [ + { + "name": "AssetQuota", + "displayName": "Asset quota", + "displayDescription": "How many assets are allowed for current media service account", + "unit": "Count", + "aggregationType": "Average", + "enableRegionalMdmAccount": true, + "sourceMdmNamespace": "MediaServiceQuotaAndUsage", + "supportedAggregationTypes": [ + "Average" + ], + "supportedTimeGrainTypes": [ + "PT1H", + "PT6H", + "PT12H", + "P1D" + ] + }, + { + "name": "AssetCount", + "displayName": "Asset count", + "displayDescription": "How many assets are already created in current media service account", + "unit": "Count", + "aggregationType": "Average", + "enableRegionalMdmAccount": true, + "sourceMdmNamespace": "MediaServiceQuotaAndUsage", + "supportedAggregationTypes": [ + "Average" + ], + "supportedTimeGrainTypes": [ + "PT1H", + "PT6H", + "PT12H", + "P1D" + ] + }, + { + "name": "AssetQuotaUsedPercentage", + "displayName": "Asset quota used percentage", + "displayDescription": "Asset used percentage in current media service account", + "unit": "Percent", + "aggregationType": "Average", + "enableRegionalMdmAccount": true, + "sourceMdmNamespace": "MediaServiceQuotaAndUsage", + "supportedAggregationTypes": [ + "Average" + ], + "supportedTimeGrainTypes": [ + "PT1H", + "PT6H", + "PT12H", + "P1D" + ] + }, + { + "name": "ContentKeyPolicyQuota", + "displayName": "Content Key Policy quota", + "displayDescription": "How many content key polices are allowed for current media service account", + "unit": "Count", + "aggregationType": "Average", + "enableRegionalMdmAccount": true, + "sourceMdmNamespace": "MediaServiceQuotaAndUsage", + "supportedAggregationTypes": [ + "Average" + ], + "supportedTimeGrainTypes": [ + "PT1H", + "PT6H", + "PT12H", + "P1D" + ] + }, + { + "name": "ContentKeyPolicyCount", + "displayName": "Content Key Policy count", + "displayDescription": "How many content key policies are already created in current media service account", + "unit": "Count", + "aggregationType": "Average", + "enableRegionalMdmAccount": true, + "sourceMdmNamespace": "MediaServiceQuotaAndUsage", + "supportedAggregationTypes": [ + "Average" + ], + "supportedTimeGrainTypes": [ + "PT1H", + "PT6H", + "PT12H", + "P1D" + ] + }, + { + "name": "ContentKeyPolicyQuotaUsedPercentage", + "displayName": "Content Key Policy quota used percentage", + "displayDescription": "Content Key Policy used percentage in current media service account", + "unit": "Percent", + "aggregationType": "Average", + "enableRegionalMdmAccount": true, + "sourceMdmNamespace": "MediaServiceQuotaAndUsage", + "supportedAggregationTypes": [ + "Average" + ], + "supportedTimeGrainTypes": [ + "PT1H", + "PT6H", + "PT12H", + "P1D" + ] + }, + { + "name": "StreamingPolicyQuota", + "displayName": "Streaming Policy quota", + "displayDescription": "How many streaming policies are allowed for current media service account", + "unit": "Count", + "aggregationType": "Average", + "enableRegionalMdmAccount": true, + "sourceMdmNamespace": "MediaServiceQuotaAndUsage", + "supportedAggregationTypes": [ + "Average" + ], + "supportedTimeGrainTypes": [ + "PT1H", + "PT6H", + "PT12H", + "P1D" + ] + }, + { + "name": "StreamingPolicyCount", + "displayName": "Streaming Policy count", + "displayDescription": "How many streaming policies are already created in current media service account", + "unit": "Count", + "aggregationType": "Average", + "enableRegionalMdmAccount": true, + "sourceMdmNamespace": "MediaServiceQuotaAndUsage", + "supportedAggregationTypes": [ + "Average" + ], + "supportedTimeGrainTypes": [ + "PT1H", + "PT6H", + "PT12H", + "P1D" + ] + }, + { + "name": "StreamingPolicyQuotaUsedPercentage", + "displayName": "Streaming Policy quota used percentage", + "displayDescription": "Streaming Policy used percentage in current media service account", + "unit": "Percent", + "aggregationType": "Average", + "enableRegionalMdmAccount": true, + "sourceMdmNamespace": "MediaServiceQuotaAndUsage", + "supportedAggregationTypes": [ + "Average" + ], + "supportedTimeGrainTypes": [ + "PT1H", + "PT6H", + "PT12H", + "P1D" + ] + }, + { + "name": "ChannelsAndLiveEventsCount", + "displayName": "Live event count", + "displayDescription": "The total number of live events in the current media services account", + "unit": "Count", + "aggregationType": "Average", + "enableRegionalMdmAccount": true, + "sourceMdmNamespace": "ClusterResource_ChannelsAndLiveEvents", + "supportedAggregationTypes": [ + "Average" + ] + }, + { + "name": "RunningChannelsAndLiveEventsCount", + "displayName": "Running live event count", + "displayDescription": "The total number of running live events in the current media services account", + "unit": "Count", + "aggregationType": "Average", + "enableRegionalMdmAccount": true, + "sourceMdmNamespace": "ClusterResource_ChannelsAndLiveEvents", + "supportedAggregationTypes": [ + "Average" + ] + }, + { + "name": "MaxChannelsAndLiveEventsCount", + "displayName": "Max live event quota", + "displayDescription": "The maximum number of live events allowed in the current media services account", + "unit": "Count", + "aggregationType": "Average", + "enableRegionalMdmAccount": true, + "sourceMdmNamespace": "ClusterResource_ChannelsAndLiveEvents", + "supportedAggregationTypes": [ + "Average" + ] + }, + { + "name": "MaxRunningChannelsAndLiveEventsCount", + "displayName": "Max running live event quota", + "displayDescription": "The maximum number of running live events allowed in the current media services account", + "unit": "Count", + "aggregationType": "Average", + "enableRegionalMdmAccount": true, + "sourceMdmNamespace": "ClusterResource_ChannelsAndLiveEvents", + "supportedAggregationTypes": [ + "Average" + ] + } + ] + } + } + }, + { + "name": "Microsoft.Media/videoAnalyzers/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Video Analyzer Account", + "operation": "Read a Video Analyzer Account", + "description": "Read a Video Analyzer Account" + } + }, + { + "name": "Microsoft.Media/videoAnalyzers/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "Video Analyzer Account", + "operation": "Write a Video Analyzer Account", + "description": "Write a Video Analyzer Account" + } + }, + { + "name": "Microsoft.Media/videoAnalyzers/delete", + "display": { + "provider": "Microsoft Media Services", + "resource": "Video Analyzer Account", + "operation": "Delete a Video Analyzer Account", + "description": "Delete a Video Analyzer Account" + } + }, + { + "name": "Microsoft.Media/videoAnalyzers/syncStorageKeys/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Video Analyzer Account", + "operation": "Sync storage keys", + "description": "Sync the storage keys of an attached storage account" + } + }, + { + "name": "Microsoft.Media/locations/checkNameAvailability/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Microsoft Media Services", + "operation": "Check Name Availability", + "description": "Checks if a Media Services account name is available" + } + } + ] + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-analyzer-accounts-create-or-update.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-analyzer-accounts-create-or-update.json new file mode 100644 index 000000000000..cf4c87322447 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-analyzer-accounts-create-or-update.json @@ -0,0 +1,150 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "accountName": "contosotv", + "api-version": "2021-05-01-preview", + "parameters": { + "location": "South Central US", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "encryption": { + "type": "SystemKey" + }, + "storageAccounts": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.Storage/storageAccounts/storage1", + "identity": { + "userAssignedIdentity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id2" + } + } + ] + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": {}, + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id2": {}, + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id3": {} + } + } + } + }, + "responses": { + "201": { + "body": { + "name": "contosomovies", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso/providers/Microsoft.Media/videoAnalyzers/contosomovies", + "type": "Microsoft.Media/videoAnalyzers", + "location": "South Central US", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "encryption": { + "type": "SystemKey" + }, + "storageAccounts": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.Storage/storageAccounts/storage1", + "identity": { + "userAssignedIdentity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id2" + } + } + ], + "endpoints": [ + { + "type": "ClientApi", + "endpointUrl": "https://77d7106674e0454eba85e5ede58cedbc.api.southcentralus.videoanalyzer.azure.net" + } + ] + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": { + "principalId": "00000000-0000-0000-0000-000000000000", + "clientId": "00000000-0000-0000-0000-000000000000" + }, + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id2": { + "principalId": "00000000-0000-0000-0000-000000000000", + "clientId": "00000000-0000-0000-0000-000000000000" + }, + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id3": { + "principalId": "00000000-0000-0000-0000-000000000000", + "clientId": "00000000-0000-0000-0000-000000000000" + } + } + }, + "systemData": { + "createdBy": "fakeapplication@contoso.com", + "createdByType": "Application", + "createdAt": "2021-01-01T00:00:00Z", + "lastModifiedBy": "fakeuser@contoso.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-01-01T00:00:00Z" + } + } + }, + "200": { + "body": { + "name": "contosomovies", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso/providers/Microsoft.Media/videoAnalyzers/contosomovies", + "type": "Microsoft.Media/videoAnalyzers", + "location": "South Central US", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "encryption": { + "type": "SystemKey" + }, + "storageAccounts": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.Storage/storageAccounts/storage1", + "identity": { + "userAssignedIdentity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id2" + } + } + ], + "endpoints": [ + { + "type": "ClientApi", + "endpointUrl": "https://77d7106674e0454eba85e5ede58cedbc.api.southcentralus.videoanalyzer.azure.net" + } + ] + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": { + "principalId": "00000000-0000-0000-0000-000000000000", + "clientId": "00000000-0000-0000-0000-000000000000" + }, + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id2": { + "principalId": "00000000-0000-0000-0000-000000000000", + "clientId": "00000000-0000-0000-0000-000000000000" + }, + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id3": { + "principalId": "00000000-0000-0000-0000-000000000000", + "clientId": "00000000-0000-0000-0000-000000000000" + } + } + }, + "systemData": { + "createdBy": "fakeapplication@contoso.com", + "createdByType": "Application", + "createdAt": "2021-01-01T00:00:00Z", + "lastModifiedBy": "fakeuser@contoso.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-01-01T00:00:00Z" + } + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-analyzer-accounts-delete.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-analyzer-accounts-delete.json new file mode 100644 index 000000000000..65769c206509 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-analyzer-accounts-delete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "accountName": "contosotv", + "api-version": "2021-05-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-analyzer-accounts-get-by-name.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-analyzer-accounts-get-by-name.json new file mode 100644 index 000000000000..bbce91ae3c91 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-analyzer-accounts-get-by-name.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "accountName": "contosotv", + "api-version": "2021-05-01-preview" + }, + "responses": { + "200": { + "body": { + "name": "contosomovies", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso/providers/Microsoft.Media/videoAnalyzers/contosomovies", + "type": "Microsoft.Media/videoAnalyzers", + "location": "South Central US", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "encryption": { + "type": "SystemKey" + }, + "storageAccounts": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.Storage/storageAccounts/storage1", + "identity": { + "userAssignedIdentity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id2" + }, + "status": "identityDisconnected" + } + ], + "endpoints": [ + { + "type": "ClientApi", + "endpointUrl": "https://77d7106674e0454eba85e5ede58cedbc.api.southcentralus.videoanalyzer.azure.net" + } + ] + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": { + "principalId": "00000000-0000-0000-0000-000000000000", + "clientId": "00000000-0000-0000-0000-000000000000" + }, + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id2": { + "principalId": "00000000-0000-0000-0000-000000000000", + "clientId": "00000000-0000-0000-0000-000000000000" + }, + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id3": { + "principalId": "00000000-0000-0000-0000-000000000000", + "clientId": "00000000-0000-0000-0000-000000000000" + } + } + }, + "systemData": { + "createdBy": "fakeapplication@contoso.com", + "createdByType": "Application", + "createdAt": "2021-01-01T00:00:00Z", + "lastModifiedBy": "fakeuser@contoso.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-01-01T00:00:00Z" + } + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-analyzer-accounts-list-all-accounts.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-analyzer-accounts-list-all-accounts.json new file mode 100644 index 000000000000..d6734e1b630e --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-analyzer-accounts-list-all-accounts.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "api-version": "2021-05-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "contosomovies", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso/providers/Microsoft.Media/videoAnalyzers/contosomovies", + "type": "Microsoft.Media/videoAnalyzers", + "location": "South Central US", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "encryption": { + "type": "SystemKey" + }, + "storageAccounts": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.Storage/storageAccounts/storage1", + "identity": { + "userAssignedIdentity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id2" + } + } + ] + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": { + "principalId": "00000000-0000-0000-0000-000000000000", + "clientId": "00000000-0000-0000-0000-000000000000" + }, + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id2": { + "principalId": "00000000-0000-0000-0000-000000000000", + "clientId": "00000000-0000-0000-0000-000000000000" + }, + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id3": { + "principalId": "00000000-0000-0000-0000-000000000000", + "clientId": "00000000-0000-0000-0000-000000000000" + } + } + }, + "systemData": { + "createdBy": "fakeapplication@contoso.com", + "createdByType": "Application", + "createdAt": "2021-01-01T00:00:00Z", + "lastModifiedBy": "fakeuser@contoso.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-01-01T00:00:00Z" + } + } + ] + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-analyzer-accounts-subscription-list-all-accounts.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-analyzer-accounts-subscription-list-all-accounts.json new file mode 100644 index 000000000000..66a71f6ccf37 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-analyzer-accounts-subscription-list-all-accounts.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "api-version": "2021-05-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "contosomovies", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso/providers/Microsoft.Media/videoAnalyzers/contosomovies", + "type": "Microsoft.Media/videoAnalyzers", + "location": "South Central US", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "encryption": { + "type": "SystemKey" + }, + "storageAccounts": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.Storage/storageAccounts/storage1", + "identity": { + "userAssignedIdentity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id2" + } + } + ], + "endpoints": [ + { + "type": "ClientApi", + "endpointUrl": "https://77d7106674e0454eba85e5ede58cedbc.api.southcentralus.videoanalyzer.azure.net" + } + ] + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": { + "principalId": "00000000-0000-0000-0000-000000000000", + "clientId": "00000000-0000-0000-0000-000000000000" + }, + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id2": { + "principalId": "00000000-0000-0000-0000-000000000000", + "clientId": "00000000-0000-0000-0000-000000000000" + }, + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id3": { + "principalId": "00000000-0000-0000-0000-000000000000", + "clientId": "00000000-0000-0000-0000-000000000000" + } + } + }, + "systemData": { + "createdBy": "fakeapplication@contoso.com", + "createdByType": "Application", + "createdAt": "2021-01-01T00:00:00Z", + "lastModifiedBy": "fakeuser@contoso.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-01-01T00:00:00Z" + } + } + ] + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-analyzer-accounts-sync-storage-keys.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-analyzer-accounts-sync-storage-keys.json new file mode 100644 index 000000000000..6f150aa14789 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-analyzer-accounts-sync-storage-keys.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "accountName": "contosotv", + "api-version": "2021-05-01-preview", + "parameters": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso/providers/Microsoft.Storage/storageAccounts/contosotvstore" + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-analyzer-accounts-update.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-analyzer-accounts-update.json new file mode 100644 index 000000000000..4f6ea5587b8f --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-analyzer-accounts-update.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "accountName": "contosotv", + "api-version": "2021-05-01-preview", + "parameters": { + "tags": { + "key1": "value3" + } + } + }, + "responses": { + "200": { + "body": { + "name": "contosomovies", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso/providers/Microsoft.Media/videoAnalyzers/contosomovies", + "type": "Microsoft.Media/videoAnalyzers", + "location": "South Central US", + "tags": { + "tag1": "value1", + "tag2": "value2", + "tag3": "value3" + }, + "properties": { + "encryption": { + "type": "SystemKey" + }, + "storageAccounts": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.Storage/storageAccounts/storage1", + "identity": { + "userAssignedIdentity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id2" + } + } + ], + "endpoints": [ + { + "type": "ClientApi", + "endpointUrl": "https://77d7106674e0454eba85e5ede58cedbc.api.southcentralus.videoanalyzer.azure.net" + } + ] + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": { + "principalId": "00000000-0000-0000-0000-000000000000", + "clientId": "00000000-0000-0000-0000-000000000000" + }, + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id2": { + "principalId": "00000000-0000-0000-0000-000000000000", + "clientId": "00000000-0000-0000-0000-000000000000" + }, + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id3": { + "principalId": "00000000-0000-0000-0000-000000000000", + "clientId": "00000000-0000-0000-0000-000000000000" + } + } + }, + "systemData": { + "createdBy": "fakeapplication@contoso.com", + "createdByType": "Application", + "createdAt": "2021-01-01T00:00:00Z", + "lastModifiedBy": "fakeuser@contoso.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-01-01T00:00:00Z" + } + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-create.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-create.json new file mode 100644 index 000000000000..22f26ae909c3 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-create.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "videoName": "video1", + "api-version": "2021-05-01-preview", + "parameters": { + "properties": { + "title": "Sample Title 1", + "description": "Sample Description 1" + } + } + }, + "responses": { + "200": { + "body": { + "name": "video1", + "id": "/subscriptions/591e76c3-3e97-44db-879c-3e2b12961b62/resourceGroups/testrg/providers/Microsoft.Media/videoAnalyzers/testaccount2/videos/video1", + "type": "Microsoft.Media/videoAnalyzers/videos", + "properties": { + "title": "Sample Title 1", + "description": "Sample Description 1", + "type": "Archive", + "flags": { + "canStream": false, + "hasData": false, + "isRecording": false + } + }, + "systemData": {} + } + }, + "201": { + "body": { + "name": "video1", + "id": "/subscriptions/591e76c3-3e97-44db-879c-3e2b12961b62/resourceGroups/testrg/providers/Microsoft.Media/videoAnalyzers/testaccount2/videos/video1", + "type": "Microsoft.Media/videoAnalyzers/videos", + "properties": { + "title": "Sample Title 1", + "description": "Sample Description 1", + "type": "Archive", + "flags": { + "canStream": false, + "hasData": false, + "isRecording": false + } + }, + "systemData": {} + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-delete.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-delete.json new file mode 100644 index 000000000000..0340aa53c107 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "videoName": "video1", + "api-version": "2021-05-01-preview" + }, + "responses": { + "204": {}, + "200": {} + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-get.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-get.json new file mode 100644 index 000000000000..50140bbda84a --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-get.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "videoName": "video1", + "api-version": "2021-05-01-preview" + }, + "responses": { + "200": { + "body": { + "name": "video1", + "id": "/subscriptions/591e76c3-3e97-44db-879c-3e2b12961b62/resourceGroups/testrg/providers/Microsoft.Media/videoAnalyzers/testaccount2/videos/video1", + "type": "Microsoft.Media/videoAnalyzers/videos", + "properties": { + "title": "Sample Title 1", + "description": "Sample Description 1", + "type": "Archive", + "flags": { + "canStream": false, + "hasData": false, + "isRecording": false + } + }, + "systemData": {} + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-list.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-list.json new file mode 100644 index 000000000000..ea0bd2e3fff8 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-list.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "api-version": "2021-05-01-preview", + "$top": "2" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "video1", + "id": "/subscriptions/591e76c3-3e97-44db-879c-3e2b12961b62/resourceGroups/testrg/providers/Microsoft.Media/videoAnalyzers/testaccount2/videos/video1", + "type": "Microsoft.Media/videoAnalyzers/videos", + "properties": { + "title": "Sample Title 1", + "description": "Sample Description 1", + "type": "Archive", + "flags": { + "canStream": false, + "hasData": false, + "isRecording": false + } + }, + "systemData": {} + }, + { + "name": "video2", + "id": "/subscriptions/591e76c3-3e97-44db-879c-3e2b12961b62/resourceGroups/testrg/providers/Microsoft.Media/videoAnalyzers/testaccount2/videos/video2", + "type": "Microsoft.Media/videoAnalyzers/videos", + "properties": { + "title": "Sample Title 2", + "description": "Sample Description 2", + "type": "Archive", + "flags": { + "canStream": false, + "hasData": false, + "isRecording": false + } + }, + "systemData": {} + } + ] + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-listStreamingToken.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-listStreamingToken.json new file mode 100644 index 000000000000..b08df104edce --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-listStreamingToken.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "videoName": "video3", + "api-version": "2021-05-01-preview" + }, + "responses": { + "200": { + "body": { + "expirationDate": "3021-01-23T11:04:49.0526841-08:00", + "token": "testtoken" + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-patch.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-patch.json new file mode 100644 index 000000000000..8275c414ee32 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-patch.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "videoName": "video1", + "api-version": "2021-05-01-preview", + "parameters": { + "properties": { + "description": "Parking Lot East Entrance" + } + } + }, + "responses": { + "200": { + "body": { + "name": "video1", + "id": "/subscriptions/591e76c3-3e97-44db-879c-3e2b12961b62/resourceGroups/testrg/providers/Microsoft.Media/videoAnalyzers/testaccount2/videos/video1", + "type": "Microsoft.Media/videoAnalyzers/videos", + "properties": { + "title": "Sample Title 1", + "description": "Sample Description 1", + "type": "Archive", + "flags": { + "canStream": false, + "hasData": false, + "isRecording": false + } + }, + "systemData": {} + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/readme.az.md b/specification/videoanalyzer/resource-manager/readme.az.md new file mode 100644 index 000000000000..8b325b8420fa --- /dev/null +++ b/specification/videoanalyzer/resource-manager/readme.az.md @@ -0,0 +1,28 @@ +## AZ + +These settings apply only when `--az` is specified on the command line. + +For new Resource Provider. It is highly recommended to onboard Azure CLI extensions. There's no differences in terms of customer usage. + +``` yaml $(az) && $(target-mode) != 'core' +az: + extensions: videoanalyzer + namespace: azure.mgmt.videoanalyzer + package-name: azure-mgmt-videoanalyzer +az-output-folder: $(azure-cli-extension-folder)/src/videoanalyzer +python-sdk-output-folder: "$(az-output-folder)/azext_videoanalyzer/vendored_sdks/videoanalyzer" +# add additional configuration here specific for Azure CLI +# refer to the faq.md for more details +``` + + + +This is for command modules that already in azure cli main repo. +``` yaml $(az) && $(target-mode) == 'core' +az: + extensions: videoanalyzer + namespace: azure.mgmt.videoanalyzer + package-name: azure-mgmt-videoanalyzer +az-output-folder: $(azure-cli-folder)/src/azure-cli/azure/cli/command_modules/videoanalyzer +python-sdk-output-folder: "$(az-output-folder)/vendored_sdks/videoanalyzer" +``` \ No newline at end of file diff --git a/specification/videoanalyzer/resource-manager/readme.cli.md b/specification/videoanalyzer/resource-manager/readme.cli.md new file mode 100644 index 000000000000..c6cf6ad37ea4 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/readme.cli.md @@ -0,0 +1 @@ +## CLI Common Settings for all the command line tools \ No newline at end of file diff --git a/specification/videoanalyzer/resource-manager/readme.csharp.md b/specification/videoanalyzer/resource-manager/readme.csharp.md new file mode 100644 index 000000000000..93f906310b58 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/readme.csharp.md @@ -0,0 +1,18 @@ +## C + +These settings apply only when `--csharp` is specified on the command line. +Please also specify `--csharp-sdks-folder=`. + +```yaml $(csharp) +csharp: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 2 + clear-output-folder: true + namespace: Microsoft.Azure.Management.VideoAnalyzer + output-folder: $(csharp-sdks-folder)/videoanalyzer/Microsoft.Azure.Management.VideoAnalyzer/src/Generated +directive: + - rename-model: + from: VideoAnalyzer + to: VideoAnalyzerAccount +``` diff --git a/specification/videoanalyzer/resource-manager/readme.go.md b/specification/videoanalyzer/resource-manager/readme.go.md new file mode 100644 index 000000000000..64c3c0f3e35f --- /dev/null +++ b/specification/videoanalyzer/resource-manager/readme.go.md @@ -0,0 +1,26 @@ +## Go + +These settings apply only when `--go` is specified on the command line. + +```yaml $(go) +go: + license-header: MICROSOFT_APACHE_NO_VERSION + namespace: videoanalyzer + clear-output-folder: true +``` + +### Go multi-api + +``` yaml $(go) && $(multiapi) +batch: + - tag: package-2021-05-01-preview +``` + +### Tag: package-2021-05-01-preview and go + +These settings apply only when `--tag=package-2021-05-01-preview --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +```yaml $(tag) == 'package-2021-05-01-preview' && $(go) +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2021-05-01-preview/$(namespace) +``` diff --git a/specification/videoanalyzer/resource-manager/readme.java.md b/specification/videoanalyzer/resource-manager/readme.java.md new file mode 100644 index 000000000000..4dcd605e5694 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/readme.java.md @@ -0,0 +1,35 @@ +## Java + +These settings apply only when `--java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(java) +azure-arm: true +fluent: true +namespace: com.microsoft.azure.management.videoanalyzer +license-header: MICROSOFT_MIT_NO_CODEGEN +payload-flattening-threshold: 2 +output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-videoanalyzer + +service-name: Video Analyzer +``` + +### Java multi-api + +``` yaml $(java) && $(multiapi) +batch: + - tag: package-2021-05-01-preview +``` + +### Tag: package-2021-05-01-preview and java + +These settings apply only when `--tag=package-2021-05-01-preview --java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-2021-05-01-preview' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.videoanalyzer.v2021_05_01_preview + output-folder: $(azure-libraries-for-java-folder)/sdk/videoanalyzer/mgmt-v2021_05_01_preview +regenerate-manager: true +generate-interface: true +``` \ No newline at end of file diff --git a/specification/videoanalyzer/resource-manager/readme.md b/specification/videoanalyzer/resource-manager/readme.md new file mode 100644 index 000000000000..e3ee73d959c6 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/readme.md @@ -0,0 +1,89 @@ +# videoanalyzer + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for videoanalyzer. + +## Getting Started + +To build the SDKs for My API, simply install AutoRest via `npm` (`npm install -g autorest`) and then run: + +> `autorest readme.md` + +To see additional help and options, run: + +> `autorest --help` + +For other options on installation see [Installing AutoRest](https://aka.ms/autorest/install) on the AutoRest github page. + +--- + +## Configuration + +### Basic Information + +These are the global settings for the videoanalyzer. + +```yaml +title: VideoAnalyzer +description: Azure Video Analyzer provides a platform for you to build intelligent video applications that span the edge and the cloud +openapi-type: arm +tag: package-2021-05-01-preview +``` + +### Tag: package-2021-05-01-preview + +These settings apply only when `--tag=package-2021-05-01-preview` is specified on the command line. + +```yaml $(tag) == 'package-2021-05-01-preview' +input-file: + - Microsoft.Media/preview/2021-05-01-preview/VideoAnalyzers.json + - Microsoft.Media/preview/2021-05-01-preview/EdgeModules.json + - Microsoft.Media/preview/2021-05-01-preview/Videos.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-track2 + - repo: azure-sdk-for-java + - repo: azure-sdk-for-go + - repo: azure-sdk-for-js + - repo: azure-sdk-for-java + - repo: azure-resource-manager-schemas + - repo: azure-cli-extensions +``` + +## Az + +See configuration in [readme.az.md](./readme.az.md) + +## Go + +See configuration in [readme.go.md](./readme.go.md) + +## Python + +See configuration in [readme.python.md](./readme.python.md) + +## TypeScript + +See configuration in [readme.typescript.md](./readme.typescript.md) + +## CSharp + +See configuration in [readme.csharp.md](./readme.csharp.md) + +## Java + +See configuration in [readme.java.md](./readme.java.md) + + diff --git a/specification/videoanalyzer/resource-manager/readme.python.md b/specification/videoanalyzer/resource-manager/readme.python.md new file mode 100644 index 000000000000..dda81cc659a9 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/readme.python.md @@ -0,0 +1,22 @@ +## Python + +These settings apply only when `--python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(track2) +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +package-name: azure-mgmt-videoanalyzer +no-namespace-folders: true +package-version: 1.0.0b1 +``` + +``` yaml $(python-mode) == 'update' && $(track2) +no-namespace-folders: true +output-folder: $(python-sdks-folder)/videoanalyzer/azure-mgmt-videoanalyzer/azure/mgmt/videoanalyzer +``` + +``` yaml $(python-mode) == 'create' && $(track2) +basic-setup-py: true +output-folder: $(python-sdks-folder)/videoanalyzer/azure-mgmt-videoanalyzer +``` diff --git a/specification/videoanalyzer/resource-manager/readme.typescript.md b/specification/videoanalyzer/resource-manager/readme.typescript.md new file mode 100644 index 000000000000..222aca9a09bc --- /dev/null +++ b/specification/videoanalyzer/resource-manager/readme.typescript.md @@ -0,0 +1,14 @@ +## TypeScript + +These settings apply only when `--typescript` is specified on the command line. +Please also specify `--typescript-sdks-folder=`. + +``` yaml $(typescript) +typescript: + azure-arm: true + package-name: "@azure/arm-videoanalyzer" + output-folder: "$(typescript-sdks-folder)/sdk/videoanalyzer/arm-videoanalyzer" + payload-flattening-threshold: 1 + clear-output-folder: true + generate-metadata: true +``` diff --git a/specification/visualstudio/resource-manager/readme.azureresourceschema.md b/specification/visualstudio/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index a232fe5d0363..000000000000 --- a/specification/visualstudio/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,24 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-visualstudio-2014-04-01-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-visualstudio-2014-04-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-visualstudio-2014-04-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.VisualStudio/preview/2014-04-01-preview/Csm.json - -``` diff --git a/specification/visualstudio/resource-manager/readme.go.md b/specification/visualstudio/resource-manager/readme.go.md index 6fa1eb8cd015..f953d947653b 100644 --- a/specification/visualstudio/resource-manager/readme.go.md +++ b/specification/visualstudio/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: visualstudio clear-output-folder: true ``` diff --git a/specification/visualstudio/resource-manager/readme.md b/specification/visualstudio/resource-manager/readme.md index c11e1701c524..f55a112e7cba 100644 --- a/specification/visualstudio/resource-manager/readme.md +++ b/specification/visualstudio/resource-manager/readme.md @@ -61,8 +61,6 @@ swagger-to-sdk: - repo: azure-sdk-for-node - repo: azure-sdk-for-js - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js visualstudio/resource-manager ``` ## Go @@ -105,7 +103,5 @@ generate-interface: true -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Addons_CreateOrUpdate_HCX.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Addons_CreateOrUpdate_HCX.json new file mode 100644 index 000000000000..428578d3bcb0 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Addons_CreateOrUpdate_HCX.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "addonName": "hcx", + "addon": { + "properties": { + "addonType": "HCX", + "offer": "VMware MaaS Cloud Provider (Enterprise)" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/addons/hcx", + "name": "hcx", + "properties": { + "addonType": "HCX", + "offer": "VMware MaaS Cloud Provider (Enterprise)", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.AVS/privateClouds/addons" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/addons/hcx", + "name": "hcx", + "properties": { + "addonType": "HCX", + "offer": "VMware MaaS Cloud Provider (Enterprise)", + "provisioningState": "Updating" + }, + "type": "Microsoft.AVS/privateClouds/addons" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Addons_CreateOrUpdate_SRM.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Addons_CreateOrUpdate_SRM.json new file mode 100644 index 000000000000..1b9eb8e9621a --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Addons_CreateOrUpdate_SRM.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "addonName": "srm", + "addon": { + "properties": { + "addonType": "SRM", + "licenseKey": "41915178-A8FF-4A4D-B683-6D735AF5E3F5" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/addons/srm", + "name": "srm", + "properties": { + "addonType": "SRM", + "licenseKey": "41915178-A8FF-4A4D-B683-6D735AF5E3F5", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.AVS/privateClouds/addons" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/addons/srm", + "name": "srm", + "properties": { + "addonType": "SRM", + "licenseKey": "41915178-A8FF-4A4D-B683-6D735AF5E3F5", + "provisioningState": "Updating" + }, + "type": "Microsoft.AVS/privateClouds/addons" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Addons_CreateOrUpdate_VR.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Addons_CreateOrUpdate_VR.json new file mode 100644 index 000000000000..e4c0706e31c9 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Addons_CreateOrUpdate_VR.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "addonName": "vr", + "addon": { + "properties": { + "addonType": "VR", + "vrsCount": 1 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/addons/vr", + "name": "vr", + "properties": { + "addonType": "VR", + "vrsCount": 1, + "provisioningState": "Succeeded" + }, + "type": "Microsoft.AVS/privateClouds/addons" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/addons/vr", + "name": "vr", + "properties": { + "addonType": "VR", + "vrsCount": 1, + "provisioningState": "Updating" + }, + "type": "Microsoft.AVS/privateClouds/addons" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Addons_Delete.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Addons_Delete.json new file mode 100644 index 000000000000..6c1bcb04877d --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Addons_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "addonName": "srm" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Addons_Get_HCX.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Addons_Get_HCX.json new file mode 100644 index 000000000000..d8829137c47f --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Addons_Get_HCX.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "addonName": "hcx" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/addons/hcx", + "name": "hcx", + "properties": { + "addonType": "HCX", + "offer": "VMware MaaS Cloud Provider (Enterprise)", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.AVS/privateClouds/addons" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Addons_Get_SRM.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Addons_Get_SRM.json new file mode 100644 index 000000000000..510a000097a8 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Addons_Get_SRM.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "addonName": "srm" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/addons/srm", + "name": "srm", + "properties": { + "addonType": "SRM", + "licenseKey": "41915178-A8FF-4A4D-B683-6D735AF5E3F5", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.AVS/privateClouds/addons" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Addons_Get_VR.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Addons_Get_VR.json new file mode 100644 index 000000000000..bda5f24dd843 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Addons_Get_VR.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "addonName": "vr" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/addons/vr", + "name": "vr", + "properties": { + "addonType": "VR", + "vrsCount": 1, + "provisioningState": "Succeeded" + }, + "type": "Microsoft.AVS/privateClouds/addons" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Addons_List.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Addons_List.json new file mode 100644 index 000000000000..79b2829a15be --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Addons_List.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/addons/srm", + "name": "srm", + "properties": { + "addonType": "SRM", + "licenseKey": "41915178-A8FF-4A4D-B683-6D735AF5E3F5", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.AVS/privateClouds/addons" + } + ] + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Authorizations_CreateOrUpdate.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Authorizations_CreateOrUpdate.json new file mode 100644 index 000000000000..2487e3111f98 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Authorizations_CreateOrUpdate.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "authorizationName": "authorization1", + "authorization": {} + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/authorizations/authorization1", + "name": "authorization1", + "properties": { + "provisioningState": "Succeeded", + "expressRouteAuthorizationId": "/subscriptions/5206f269-120b-41ef-a95b-0dce7109de61/resourceGroups/tnt34-cust-mockp02-spearj2dev/providers/Microsoft.Network/expressroutecircuits/tnt34-cust-mockp02-spearj2dev-er/authorizations/myauth", + "expressRouteAuthorizationKey": "37b0db3b-3b17-4c7b-bf76-bf13b01bcadc" + }, + "type": "Microsoft.AVS/privateClouds/authorizations" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/authorizations/authorization1", + "name": "authorization1", + "properties": { + "provisioningState": "Updating" + }, + "type": "Microsoft.AVS/privateClouds/authorizations" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Authorizations_Delete.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Authorizations_Delete.json new file mode 100644 index 000000000000..bc7daf9b8a0a --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Authorizations_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "authorizationName": "authorization1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Authorizations_Get.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Authorizations_Get.json new file mode 100644 index 000000000000..925467407f4b --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Authorizations_Get.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "authorizationName": "authorization1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/authorizations/authorization1", + "name": "authorization1", + "properties": { + "provisioningState": "Succeeded", + "expressRouteAuthorizationId": "/subscriptions/5206f269-120b-41ef-a95b-0dce7109de61/resourceGroups/tnt34-cust-mockp02-spearj2dev/providers/Microsoft.Network/expressroutecircuits/tnt34-cust-mockp02-spearj2dev-er/authorizations/myauth", + "expressRouteAuthorizationKey": "37b0db3b-3b17-4c7b-bf76-bf13b01bcadc" + }, + "type": "Microsoft.AVS/privateClouds/authorizations" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Authorizations_List.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Authorizations_List.json new file mode 100644 index 000000000000..4d333b67ed57 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Authorizations_List.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1" + }, + "responses": { + "200": { + "body": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/authorizations/authorization1", + "name": "authorization1", + "properties": { + "provisioningState": "Succeeded", + "expressRouteAuthorizationId": "/subscriptions/5206f269-120b-41ef-a95b-0dce7109de61/resourceGroups/tnt34-cust-mockp02-spearj2dev/providers/Microsoft.Network/expressroutecircuits/tnt34-cust-mockp02-spearj2dev-er/authorizations/myauth", + "expressRouteAuthorizationKey": "37b0db3b-3b17-4c7b-bf76-bf13b01bcadc" + }, + "type": "Microsoft.AVS/privateClouds/authorizations" + } + ] + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/CloudLinks_CreateOrUpdate.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/CloudLinks_CreateOrUpdate.json new file mode 100644 index 000000000000..e74c741ad333 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/CloudLinks_CreateOrUpdate.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "cloudLinkName": "cloudLink1", + "cloudLink": { + "properties": { + "linkedCloud": "/subscriptions/12341234-1234-1234-1234-123412341234/resourceGroups/mygroup/providers/Microsoft.AVS/privateClouds/cloud2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/cloudLinks/cloudLink1", + "name": "cloudLink1", + "properties": { + "status": "Active", + "linkedCloud": "/subscriptions/12341234-1234-1234-1234-123412341234/resourceGroups/mygroup/providers/Microsoft.AVS/privateClouds/cloud2" + }, + "type": "Microsoft.AVS/privateClouds/cloudLinks" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/cloudLinks/cloudLink1", + "name": "cloudLink1", + "properties": { + "status": "Building", + "linkedCloud": "/subscriptions/12341234-1234-1234-1234-123412341234/resourceGroups/mygroup/providers/Microsoft.AVS/privateClouds/cloud2" + }, + "type": "Microsoft.AVS/privateClouds/cloudLinks" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/CloudLinks_Delete.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/CloudLinks_Delete.json new file mode 100644 index 000000000000..d039e50af68f --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/CloudLinks_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "cloudLinkName": "cloudLink1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/CloudLinks_Get.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/CloudLinks_Get.json new file mode 100644 index 000000000000..5d03896c9fb0 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/CloudLinks_Get.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "cloudLinkName": "cloudLink1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/cloudLinks/cloudLink1", + "name": "cloudLink1", + "properties": { + "status": "Active", + "linkedCloud": "/subscriptions/12341234-1234-1234-1234-123412341234/resourceGroups/mygroup/providers/Microsoft.AVS/privateClouds/cloud2" + }, + "type": "Microsoft.AVS/privateClouds/cloudLinks" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/CloudLinks_List.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/CloudLinks_List.json new file mode 100644 index 000000000000..5e8fecdaf708 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/CloudLinks_List.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1" + }, + "responses": { + "200": { + "body": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/cloudLinks/cloudLink1", + "name": "cloudLink1", + "properties": { + "status": "Active", + "linkedCloud": "/subscriptions/12341234-1234-1234-1234-123412341234/resourceGroups/mygroup/providers/Microsoft.AVS/privateClouds/cloud2" + }, + "type": "Microsoft.AVS/privateClouds/cloudLinks" + } + ] + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Clusters_CreateOrUpdate.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Clusters_CreateOrUpdate.json new file mode 100644 index 000000000000..35a8caa9d60a --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Clusters_CreateOrUpdate.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "clusterName": "cluster1", + "cluster": { + "sku": { + "name": "AV20" + }, + "properties": { + "clusterSize": 3 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/clusters/cluster1", + "name": "cluster1", + "sku": { + "name": "AV20" + }, + "properties": { + "clusterSize": 3, + "hosts": [ + "fakehost22.nyc1.kubernetes.center", + "fakehost23.nyc1.kubernetes.center", + "fakehost24.nyc1.kubernetes.center" + ], + "provisioningState": "Succeeded" + }, + "type": "Microsoft.AVS/privateClouds/clusters" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/clusters/cluster1", + "name": "cluster1", + "sku": { + "name": "AV20" + }, + "properties": { + "clusterSize": 3, + "provisioningState": "Updating" + }, + "type": "Microsoft.AVS/privateClouds/clusters" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Clusters_Delete.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Clusters_Delete.json new file mode 100644 index 000000000000..b075942c75cb --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Clusters_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "clusterName": "cluster1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Clusters_Get.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Clusters_Get.json new file mode 100644 index 000000000000..611b12106a62 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Clusters_Get.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "clusterName": "cluster1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/clusters/cluster1", + "name": "cluster1", + "sku": { + "name": "AV20" + }, + "properties": { + "clusterSize": 4, + "hosts": [ + "fakehost22.nyc1.kubernetes.center", + "fakehost23.nyc1.kubernetes.center", + "fakehost24.nyc1.kubernetes.center", + "fakehost25.nyc1.kubernetes.center" + ], + "provisioningState": "Succeeded" + }, + "type": "Microsoft.AVS/privateClouds/clusters" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Clusters_List.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Clusters_List.json new file mode 100644 index 000000000000..3b60a47b6393 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Clusters_List.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/clusters/cluster1", + "name": "cluster1", + "sku": { + "name": "AV20" + }, + "properties": { + "clusterSize": 3, + "hosts": [ + "fakehost22.nyc1.kubernetes.center", + "fakehost23.nyc1.kubernetes.center", + "fakehost24.nyc1.kubernetes.center" + ], + "provisioningState": "Succeeded" + }, + "type": "Microsoft.AVS/privateClouds/clusters" + } + ] + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Clusters_Update.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Clusters_Update.json new file mode 100644 index 000000000000..9ec15bdd52c2 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Clusters_Update.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "clusterName": "cluster1", + "clusterUpdate": { + "properties": { + "clusterSize": 4 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/clusters/cluster1", + "name": "cluster1", + "sku": { + "name": "AV20" + }, + "properties": { + "clusterSize": 4, + "hosts": [ + "fakehost22.nyc1.kubernetes.center", + "fakehost23.nyc1.kubernetes.center", + "fakehost24.nyc1.kubernetes.center", + "fakehost25.nyc1.kubernetes.center" + ], + "provisioningState": "Succeeded" + }, + "type": "Microsoft.AVS/privateClouds/clusters" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/clusters/cluster1", + "name": "cluster1", + "sku": { + "name": "AV20" + }, + "properties": { + "clusterSize": 4, + "provisioningState": "Updating" + }, + "type": "Microsoft.AVS/privateClouds/clusters" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Datastores_CreateOrUpdate.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Datastores_CreateOrUpdate.json new file mode 100644 index 000000000000..3b13820bce6d --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Datastores_CreateOrUpdate.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "clusterName": "cluster1", + "datastoreName": "datastore1", + "datastore": { + "properties": { + "netAppVolume": { + "id": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/ResourceGroup1/providers/Microsoft.NetApp/netAppAccounts/NetAppAccount1/capacityPools/CapacityPool1/volumes/NFSVol1" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/clusters/cluster1/datastores/datastore1", + "name": "datastore1", + "properties": { + "netAppVolume": { + "id": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/ResourceGroup1/providers/Microsoft.NetApp/netAppAccounts/NetAppAccount1/capacityPools/CapacityPool1/volumes/NFSVol1" + }, + "provisioningState": "Succeeded" + }, + "type": "Microsoft.AVS/privateClouds/clusters/datastores" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/clusters/cluster1/datastores/datastore1", + "name": "datastore1", + "properties": { + "netAppVolume": { + "id": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/ResourceGroup1/providers/Microsoft.NetApp/netAppAccounts/NetAppAccount1/capacityPools/CapacityPool1/volumes/NFSVol1" + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.AVS/privateClouds/clusters/datastores" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Datastores_Delete.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Datastores_Delete.json new file mode 100644 index 000000000000..24faad9dfc0e --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Datastores_Delete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "clusterName": "cluster1", + "datastoreName": "datastore1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Datastores_Get.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Datastores_Get.json new file mode 100644 index 000000000000..3161005a9d90 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Datastores_Get.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "clusterName": "cluster1", + "datastoreName": "datastore1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/clusters/cluster1/datastores/datastore1", + "name": "datastore1", + "properties": { + "netAppVolume": { + "id": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/ResourceGroup1/providers/Microsoft.NetApp/netAppAccounts/NetAppAccount1/capacityPools/CapacityPool1/volumes/NFSVol1" + }, + "provisioningState": "Succeeded" + }, + "type": "Microsoft.AVS/privateClouds/clusters/datastores" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Datastores_List.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Datastores_List.json new file mode 100644 index 000000000000..183a5568e0cf --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Datastores_List.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "clusterName": "cluster1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/clusters/cluster1/datastores/datastore1", + "name": "datastore1", + "properties": { + "netAppVolume": { + "id": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/ResourceGroup1/providers/Microsoft.NetApp/netAppAccounts/NetAppAccount1/capacityPools/CapacityPool1/volumes/NFSVol1" + }, + "provisioningState": "Succeeded" + }, + "type": "Microsoft.AVS/privateClouds/clusters/datastores" + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/clusters/cluster1/datastores/datastore2", + "name": "datastore2", + "properties": { + "diskPoolVolume": { + "targetId": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/ResourceGroup1/providers/Microsoft.StoragePool/diskPools/DiskPool1/targets/Target1", + "lunName": "lun0", + "mountOption": "MOUNT", + "path": "/vmfs/devices/disks/naa.6001405f75f6bdf7f6f49db8b4b21723" + }, + "provisioningState": "Succeeded" + }, + "type": "Microsoft.AVS/privateClouds/clusters/datastores" + } + ] + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/GlobalReachConnections_CreateOrUpdate.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/GlobalReachConnections_CreateOrUpdate.json new file mode 100644 index 000000000000..58c16bfe546e --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/GlobalReachConnections_CreateOrUpdate.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "globalReachConnectionName": "connection1", + "globalReachConnection": { + "properties": { + "peerExpressRouteCircuit": "/subscriptions/12341234-1234-1234-1234-123412341234/resourceGroups/mygroup/providers/Microsoft.Network/expressRouteCircuits/mypeer", + "authorizationKey": "01010101-0101-0101-0101-010101010101" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/globalReachConnections/connection1", + "name": "connection1", + "properties": { + "addressPrefix": "10.2.3.16/29", + "authorizationKey": "01010101-0101-0101-0101-010101010101", + "circuitConnectionStatus": "Connected", + "peerExpressRouteCircuit": "/subscriptions/12341234-1234-1234-1234-123412341234/resourceGroups/mygroup/providers/Microsoft.Network/expressRouteCircuits/mypeer", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.AVS/privateClouds/globalReachConnections" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/globalReachConnections/connection1", + "name": "connection1", + "properties": { + "addressPrefix": "10.2.3.16/29", + "authorizationKey": "01010101-0101-0101-0101-010101010101", + "circuitConnectionStatus": "Connected", + "peerExpressRouteCircuit": "/subscriptions/12341234-1234-1234-1234-123412341234/resourceGroups/mygroup/providers/Microsoft.Network/expressRouteCircuits/mypeer", + "provisioningState": "Updating" + }, + "type": "Microsoft.AVS/privateClouds/globalReachConnections" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/GlobalReachConnections_Delete.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/GlobalReachConnections_Delete.json new file mode 100644 index 000000000000..214e5671605d --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/GlobalReachConnections_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "globalReachConnectionName": "connection1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/GlobalReachConnections_Get.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/GlobalReachConnections_Get.json new file mode 100644 index 000000000000..390b130632f8 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/GlobalReachConnections_Get.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "globalReachConnectionName": "connection1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/globalReachConnections/connection1", + "name": "connection1", + "properties": { + "addressPrefix": "10.2.3.16/29", + "authorizationKey": "01010101-0101-0101-0101-010101010101", + "circuitConnectionStatus": "Connected", + "peerExpressRouteCircuit": "/subscriptions/12341234-1234-1234-1234-123412341234/resourceGroups/mygroup/providers/Microsoft.Network/expressRouteCircuits/mypeer", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.AVS/privateClouds/globalReachConnections" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/GlobalReachConnections_List.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/GlobalReachConnections_List.json new file mode 100644 index 000000000000..0c48eb725809 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/GlobalReachConnections_List.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1" + }, + "responses": { + "200": { + "body": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/globalReachConnections/connection1", + "name": "connection1", + "properties": { + "addressPrefix": "10.2.3.16/29", + "authorizationKey": "01010101-0101-0101-0101-010101010101", + "circuitConnectionStatus": "Connected", + "peerExpressRouteCircuit": "/subscriptions/12341234-1234-1234-1234-123412341234/resourceGroups/mygroup/providers/Microsoft.Network/expressRouteCircuits/mypeer", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.AVS/privateClouds/globalReachConnections" + } + ] + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/HcxEnterpriseSites_CreateOrUpdate.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/HcxEnterpriseSites_CreateOrUpdate.json new file mode 100644 index 000000000000..9142392691cb --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/HcxEnterpriseSites_CreateOrUpdate.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "hcxEnterpriseSiteName": "site1", + "hcxEnterpriseSite": {} + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/hcxEnterpriseSites/site1", + "name": "site1", + "properties": { + "activationKey": "0276EF1A9A1749A5A362BF73EA9F8D0D", + "status": "Available" + }, + "type": "Microsoft.AVS/privateClouds/hcxEnterpriseSites" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/hcxEnterpriseSites/site1", + "name": "site1", + "properties": { + "activationKey": "0276EF1A9A1749A5A362BF73EA9F8D0D", + "status": "Available" + }, + "type": "Microsoft.AVS/privateClouds/hcxEnterpriseSites" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/HcxEnterpriseSites_Delete.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/HcxEnterpriseSites_Delete.json new file mode 100644 index 000000000000..af3d30d371a4 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/HcxEnterpriseSites_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "hcxEnterpriseSiteName": "site1" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/HcxEnterpriseSites_Get.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/HcxEnterpriseSites_Get.json new file mode 100644 index 000000000000..72d97ce72ead --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/HcxEnterpriseSites_Get.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "hcxEnterpriseSiteName": "site1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/hcxEnterpriseSites/site1", + "name": "site1", + "properties": { + "activationKey": "0276EF1A9A1749A5A362BF73EA9F8D0D", + "status": "Available" + }, + "type": "Microsoft.AVS/privateClouds/hcxEnterpriseSites" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/HcxEnterpriseSites_List.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/HcxEnterpriseSites_List.json new file mode 100644 index 000000000000..a708250bbfef --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/HcxEnterpriseSites_List.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1" + }, + "responses": { + "200": { + "body": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/hcxEnterpriseSites/site1", + "name": "site1", + "properties": { + "activationKey": "0276EF1A9A1749A5A362BF73EA9F8D0D", + "status": "Available" + }, + "type": "Microsoft.AVS/privateClouds/hcxEnterpriseSites" + } + ] + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Locations_CheckQuotaAvailability.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Locations_CheckQuotaAvailability.json new file mode 100644 index 000000000000..d11116044407 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Locations_CheckQuotaAvailability.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2021-06-01", + "location": "eastus" + }, + "responses": { + "200": { + "body": { + "hostsRemaining": { + "AV20": 0, + "AV36": 999 + }, + "quotaEnabled": "Enabled" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Locations_CheckTrialAvailability.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Locations_CheckTrialAvailability.json new file mode 100644 index 000000000000..67da92ca84f8 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Locations_CheckTrialAvailability.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2021-06-01", + "location": "eastus" + }, + "responses": { + "200": { + "body": { + "status": "TrialAvailable", + "availableHosts": 4 + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Operations_List.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Operations_List.json new file mode 100644 index 000000000000..dd90e543c95a --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/Operations_List.json @@ -0,0 +1,524 @@ +{ + "parameters": { + "api-version": "2021-06-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "display": { + "description": "Lists operations available on Microsoft.AVS resource provider.", + "operation": "List available Microsoft.AVS operations", + "provider": "Microsoft.AVS", + "resource": "operations" + }, + "isDataAction": false, + "name": "Microsoft.AVS/operations/read", + "origin": "user,system", + "properties": {} + }, + { + "display": { + "description": "Register Subscription for Microsoft.AVS resource provider.", + "operation": "Register Subscription for Microsoft.AVS", + "provider": "Microsoft.AVS", + "resource": "" + }, + "isDataAction": false, + "name": "Microsoft.AVS/register/action", + "origin": "user,system", + "properties": {} + }, + { + "display": { + "description": "Unregister Subscription for Microsoft.AVS resource provider.", + "operation": "Unregister Subscription for Microsoft.AVS", + "provider": "Microsoft.AVS", + "resource": "" + }, + "isDataAction": false, + "name": "Microsoft.AVS/unregister/action", + "origin": "user,system", + "properties": {} + }, + { + "display": { + "description": "Checks if the privateCloud Name is available", + "operation": "Check Name Availability", + "provider": "Microsoft.AVS", + "resource": "checkNameAvailability" + }, + "isDataAction": false, + "name": "Microsoft.AVS/checkNameAvailability/read", + "origin": "user,system", + "properties": {} + }, + { + "display": { + "description": "Checks if the privateCloud Name is available", + "operation": "Check Name Availability", + "provider": "Microsoft.AVS", + "resource": "locations/checkNameAvailability" + }, + "isDataAction": false, + "name": "Microsoft.AVS/locations/checkNameAvailability/read", + "origin": "user,system", + "properties": {} + }, + { + "display": { + "description": "Checks if quota is available for the subscription", + "operation": "Check Quota Availability", + "provider": "Microsoft.AVS", + "resource": "locations/checkQuotaAvailability" + }, + "isDataAction": false, + "name": "Microsoft.AVS/locations/checkQuotaAvailability/read", + "origin": "user,system", + "properties": {} + }, + { + "display": { + "description": "Checks if trial is available for the subscription", + "operation": "Check Trial Availability", + "provider": "Microsoft.AVS", + "resource": "locations/checkTrialAvailability" + }, + "isDataAction": false, + "name": "Microsoft.AVS/locations/checkTrialAvailability/read", + "origin": "user,system", + "properties": {} + }, + { + "display": { + "description": "Registers the Microsoft Microsoft.AVS resource provider and enables creation of Private Clouds.", + "operation": "Register Microsoft.AVS resource provider.", + "provider": "Microsoft.AVS", + "resource": "privateClouds" + }, + "isDataAction": false, + "name": "Microsoft.AVS/privateClouds/register/action", + "origin": "user,system", + "properties": {} + }, + { + "display": { + "description": "Creates or updates a PrivateCloud resource.", + "operation": "Create or update a PrivateCloud.", + "provider": "Microsoft.AVS", + "resource": "privateClouds" + }, + "isDataAction": false, + "name": "Microsoft.AVS/privateClouds/write", + "origin": "user,system", + "properties": {} + }, + { + "display": { + "description": "Gets the settings for the specified PrivateCloud.", + "operation": "Read PrivateCloud settings", + "provider": "Microsoft.AVS", + "resource": "privateClouds" + }, + "isDataAction": false, + "name": "Microsoft.AVS/privateClouds/read", + "origin": "user,system", + "properties": {} + }, + { + "display": { + "description": "Delete a specific PrivateCloud.", + "operation": "Delete a PrivateCloud.", + "provider": "Microsoft.AVS", + "resource": "privateClouds" + }, + "isDataAction": false, + "name": "Microsoft.AVS/privateClouds/delete", + "origin": "user,system", + "properties": {} + }, + { + "display": { + "description": "Reads privateClouds operationstatuses.", + "operation": "Read privateClouds operationstatuses", + "provider": "Microsoft.AVS", + "resource": "privateClouds/operationstatuses" + }, + "isDataAction": false, + "name": "Microsoft.AVS/privateClouds/operationstatuses/read", + "origin": "user,system", + "properties": {} + }, + { + "display": { + "description": "Gets the cluster settings for a PrivateCloud cluster.", + "operation": "Read Cluster settings.", + "provider": "Microsoft.AVS", + "resource": "privateClouds/clusters" + }, + "isDataAction": false, + "name": "Microsoft.AVS/privateClouds/clusters/read", + "origin": "user,system", + "properties": {} + }, + { + "display": { + "description": "Create or update a PrivateCloud cluster resource.", + "operation": "Create or update a PrivateCloud cluster.", + "provider": "Microsoft.AVS", + "resource": "privateClouds/clusters" + }, + "isDataAction": false, + "name": "Microsoft.AVS/privateClouds/clusters/write", + "origin": "user,system", + "properties": {} + }, + { + "display": { + "description": "Delete a specific PrivateCloud cluster.", + "operation": "Delete a PriveCloud cluster.", + "provider": "Microsoft.AVS", + "resource": "privateClouds/clusters" + }, + "isDataAction": false, + "name": "Microsoft.AVS/privateClouds/clusters/delete", + "origin": "user,system", + "properties": {} + }, + { + "display": { + "description": "Reads privateClouds/clusters operationstatuses.", + "operation": "Read privateClouds/clusters operationstatuses", + "provider": "Microsoft.AVS", + "resource": "privateClouds/clusters/operationstatuses" + }, + "isDataAction": false, + "name": "Microsoft.AVS/privateClouds/clusters/operationstatuses/read", + "origin": "user,system", + "properties": {} + }, + { + "display": { + "description": "Reads privateClouds/clusters operationresults.", + "operation": "Read privateClouds/clusters operationresults", + "provider": "Microsoft.AVS", + "resource": "privateclouds/clusters/operationresults" + }, + "isDataAction": false, + "name": "Microsoft.AVS/privateclouds/clusters/operationresults/read", + "origin": "user,system", + "properties": {} + }, + { + "display": { + "description": "Reads privateClouds operationresults.", + "operation": "Read privateClouds operationresults", + "provider": "Microsoft.AVS", + "resource": "privateClouds/operationresults" + }, + "isDataAction": false, + "name": "Microsoft.AVS/privateClouds/operationresults/read", + "origin": "user,system", + "properties": {} + }, + { + "display": { + "description": "Gets the authorization settings for a PrivateCloud cluster.", + "operation": "Read Authorization settings.", + "provider": "Microsoft.AVS", + "resource": "privateClouds/authorizations" + }, + "isDataAction": false, + "name": "Microsoft.AVS/privateClouds/authorizations/read", + "origin": "user,system", + "properties": {} + }, + { + "display": { + "description": "Create or update a PrivateCloud authorization resource.", + "operation": "Create or update a PrivateCloud authorization.", + "provider": "Microsoft.AVS", + "resource": "privateClouds/authorizations" + }, + "isDataAction": false, + "name": "Microsoft.AVS/privateClouds/authorizations/write", + "origin": "user,system", + "properties": {} + }, + { + "display": { + "description": "Delete a specific PrivateCloud authorization.", + "operation": "Delete a PriveCloud authorization.", + "provider": "Microsoft.AVS", + "resource": "privateClouds/authorizations" + }, + "isDataAction": false, + "name": "Microsoft.AVS/privateClouds/authorizations/delete", + "origin": "user,system", + "properties": {} + }, + { + "display": { + "description": "Lists the AdminCredentials for privateClouds.", + "operation": "List privateClouds AdminCredentials", + "provider": "Microsoft.AVS", + "resource": "privateClouds" + }, + "isDataAction": true, + "name": "Microsoft.AVS/privateClouds/listAdminCredentials/action", + "origin": "user,system", + "properties": {} + }, + { + "display": { + "description": "Gets the hcxEnterpriseSites for a PrivateCloud.", + "operation": "Read hcxEnterpriseSites", + "provider": "Microsoft.AVS", + "resource": "privateClouds/hcxEnterpriseSites" + }, + "isDataAction": false, + "name": "Microsoft.AVS/privateClouds/hcxEnterpriseSites/read", + "origin": "user,system", + "properties": {} + }, + { + "display": { + "description": "Create or update a hcxEnterpriseSites.", + "operation": "Create or update a hcxEnterpriseSites", + "provider": "Microsoft.AVS", + "resource": "privateClouds/hcxEnterpriseSites" + }, + "isDataAction": false, + "name": "Microsoft.AVS/privateClouds/hcxEnterpriseSites/write", + "origin": "user,system", + "properties": {} + }, + { + "display": { + "description": "Delete a specific hcxEnterpriseSites.", + "operation": "Delete a hcxEnterpriseSites", + "provider": "Microsoft.AVS", + "resource": "privateClouds/hcxEnterpriseSites" + }, + "isDataAction": false, + "name": "Microsoft.AVS/privateClouds/hcxEnterpriseSites/delete", + "origin": "user,system", + "properties": {} + }, + { + "display": { + "description": "Gets the hostInstances for a PrivateCloud.", + "operation": "Read hostInstances", + "provider": "Microsoft.AVS", + "resource": "privateClouds/hostInstances" + }, + "isDataAction": false, + "name": "Microsoft.AVS/privateClouds/hostInstances/read", + "origin": "user,system", + "properties": {} + }, + { + "display": { + "description": "Create or update a hostInstances.", + "operation": "Create or update a hostInstances", + "provider": "Microsoft.AVS", + "resource": "privateClouds/hostInstances" + }, + "isDataAction": false, + "name": "Microsoft.AVS/privateClouds/hostInstances/write", + "origin": "user,system", + "properties": {} + }, + { + "display": { + "description": "Delete a specific hostInstances.", + "operation": "Delete a hostInstances", + "provider": "Microsoft.AVS", + "resource": "privateClouds/hostInstances" + }, + "isDataAction": false, + "name": "Microsoft.AVS/privateClouds/hostInstances/delete", + "origin": "user,system", + "properties": {} + }, + { + "display": { + "description": "Gets the available metrics for Private Cloud", + "operation": "Read Private Cloud metric definitions", + "provider": "Microsoft Azure Dedicated", + "resource": "privateClouds" + }, + "isDataAction": false, + "name": "Microsoft.AVS/privateClouds/providers/Microsoft.Insights/metricDefinitions/read", + "origin": "system", + "properties": { + "serviceSpecification": { + "metricSpecifications": [ + { + "aggregationType": "Average", + "displayDescription": "The total amount of disk used in SDDC", + "displayName": "Datastore disk used", + "enableRegionalMdmAccount": "true", + "name": "UsedLatest", + "sourceMdmAccount": "AVSShoebox2", + "sourceMdmNamespace": "Vsphere.Datastore.Disk", + "supportedTimeGrainTypes": [ + "PT5M", + "PT15M", + "PT30M", + "PT1H", + "PT6H", + "PT12H", + "P1D" + ], + "unit": "Bytes" + }, + { + "aggregationType": "Average", + "displayDescription": "The total capacity of disk in SDDC", + "displayName": "Datastore disk total capacity", + "enableRegionalMdmAccount": "true", + "name": "CapacityLatest", + "sourceMdmAccount": "AVSShoebox2", + "sourceMdmNamespace": "Vsphere.Datastore.Disk", + "supportedTimeGrainTypes": [ + "PT5M", + "PT15M", + "PT30M", + "PT1H", + "PT6H", + "PT12H", + "P1D" + ], + "unit": "Bytes" + }, + { + "aggregationType": "Average", + "displayDescription": "Total amount of machine memory in cluster that is available", + "displayName": "Average Effective Memory", + "enableRegionalMdmAccount": "true", + "name": "EffectiveMemAverage", + "sourceMdmAccount": "AVSShoebox2", + "sourceMdmNamespace": "Vsphere.Cluster.ClusterServices", + "supportedTimeGrainTypes": [ + "PT5M", + "PT15M", + "PT30M", + "PT1H", + "PT6H", + "PT12H", + "P1D" + ], + "unit": "Bytes" + }, + { + "aggregationType": "Average", + "displayDescription": "Total memory in cluster", + "displayName": "Average Total Memory", + "enableRegionalMdmAccount": "true", + "name": "TotalMbAverage", + "sourceMdmAccount": "AVSShoebox2", + "sourceMdmNamespace": "Vsphere.Cluster.Mem", + "supportedTimeGrainTypes": [ + "PT5M", + "PT15M", + "PT30M", + "PT1H", + "PT6H", + "PT12H", + "P1D" + ], + "unit": "Bytes" + }, + { + "aggregationType": "Average", + "displayDescription": "Host physical memory consumed by the virtualization infrastructure", + "displayName": "Average Memory Overhead", + "enableRegionalMdmAccount": "true", + "name": "OverheadAverage", + "sourceMdmAccount": "AVSShoebox2", + "sourceMdmNamespace": "Vsphere.Cluster.Mem", + "supportedTimeGrainTypes": [ + "PT5M", + "PT15M", + "PT30M", + "PT1H", + "PT6H", + "PT12H", + "P1D" + ], + "unit": "Bytes" + }, + { + "aggregationType": "Average", + "displayDescription": "Memory usage as percentage of total configured or available memory", + "displayName": "Average Memory Usage", + "enableRegionalMdmAccount": "true", + "name": "UsageAverage", + "sourceMdmAccount": "AVSShoebox2", + "sourceMdmNamespace": "Vsphere.Cluster.Mem", + "supportedTimeGrainTypes": [ + "PT5M", + "PT15M", + "PT30M", + "PT1H", + "PT6H", + "PT12H", + "P1D" + ], + "unit": "Percent" + }, + { + "aggregationType": "Average", + "displayDescription": "Total available CPU resources in cluster", + "displayName": "Effective CPU available", + "enableRegionalMdmAccount": "true", + "name": "EffectiveCpuAverage", + "sourceMdmAccount": "AVSShoebox2", + "sourceMdmNamespace": "Vsphere.Cluster.ClusterServices", + "supportedTimeGrainTypes": [ + "PT5M", + "PT15M", + "PT30M", + "PT1H", + "PT6H", + "PT12H", + "P1D" + ], + "unit": "Percent" + } + ] + } + } + }, + { + "display": { + "description": "Gets the diagnostic setting for the resource", + "operation": "Read diagnostic setting", + "provider": "Microsoft.AVS", + "resource": "privateClouds" + }, + "isDataAction": false, + "name": "Microsoft.AVS/privateClouds/providers/Microsoft.Insights/diagnosticSettings/read", + "origin": "system", + "properties": {} + }, + { + "display": { + "description": "Creates or updates the diagnostic setting for the resource", + "operation": "Write diagnostic setting", + "provider": "Microsoft.AVS", + "resource": "privateClouds" + }, + "isDataAction": false, + "name": "Microsoft.AVS/privateClouds/providers/Microsoft.Insights/diagnosticSettings/write", + "origin": "system", + "properties": {} + } + ] + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/PrivateClouds_CreateOrUpdate.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/PrivateClouds_CreateOrUpdate.json new file mode 100644 index 000000000000..1eb39810e6ef --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/PrivateClouds_CreateOrUpdate.json @@ -0,0 +1,122 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "privateCloud": { + "location": "eastus2", + "sku": { + "name": "AV36" + }, + "properties": { + "networkBlock": "192.168.48.0/22", + "managementCluster": { + "clusterSize": 4 + } + }, + "tags": {} + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1", + "location": "eastus2", + "name": "cloud1", + "sku": { + "name": "AV36" + }, + "properties": { + "networkBlock": "192.168.48.0/22", + "circuit": { + "expressRouteID": "/subscriptions/{subscription-id}/resourceGroups/tnt13-41a90db2-9d5e-4bd5-a77a-5ce7b58213d6-eastus2/providers/Microsoft.Network/expressroutecircuits/tnt13-41a90db2-9d5e-4bd5-a77a-5ce7b58213d6-eastus2-xconnect", + "primarySubnet": "192.168.53.0/30", + "secondarySubnet": "192.168.53.4/30" + }, + "managementCluster": { + "clusterId": 1, + "clusterSize": 4, + "hosts": [ + "fakehost18.nyc1.kubernetes.center", + "fakehost19.nyc1.kubernetes.center", + "fakehost20.nyc1.kubernetes.center", + "fakehost21.nyc1.kubernetes.center" + ] + }, + "endpoints": { + "nsxtManager": "https://192.168.50.3/", + "vcsa": "https://192.168.50.2/" + }, + "externalCloudLinks": [ + "/subscriptions/12341234-1234-1234-1234-123412341234/resourceGroups/mygroup/providers/Microsoft.AVS/privateClouds/cloud2" + ], + "identitySources": [ + { + "alias": "groupAlias", + "baseGroupDN": "ou=baseGroup", + "baseUserDN": "ou=baseUser", + "domain": "domain1", + "name": "group1", + "primaryServer": "ldaps://1.1.1.1:636/", + "secondaryServer": "ldaps://1.1.1.2:636/", + "ssl": "Enabled" + } + ], + "internet": "Disabled", + "provisioningState": "Succeeded" + }, + "tags": {}, + "type": "Microsoft.AVS/privateClouds" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1", + "location": "eastus2", + "name": "cloud1", + "sku": { + "name": "AV36" + }, + "properties": { + "networkBlock": "192.168.48.0/22", + "circuit": { + "expressRouteID": "/subscriptions/{subscription-id}/resourceGroups/tnt13-41a90db2-9d5e-4bd5-a77a-5ce7b58213d6-eastus2/providers/Microsoft.Network/expressroutecircuits/tnt13-41a90db2-9d5e-4bd5-a77a-5ce7b58213d6-eastus2-xconnect", + "primarySubnet": "192.168.53.0/30", + "secondarySubnet": "192.168.53.4/30" + }, + "managementCluster": { + "clusterId": 1, + "clusterSize": 4, + "hosts": [ + "fakehost18.nyc1.kubernetes.center", + "fakehost19.nyc1.kubernetes.center", + "fakehost20.nyc1.kubernetes.center", + "fakehost21.nyc1.kubernetes.center" + ] + }, + "endpoints": { + "nsxtManager": "https://192.168.50.3/", + "vcsa": "https://192.168.50.2/" + }, + "identitySources": [ + { + "alias": "groupAlias", + "baseGroupDN": "ou=baseGroup", + "baseUserDN": "ou=baseUser", + "domain": "domain1", + "name": "group1", + "primaryServer": "ldaps://1.1.1.1:636/", + "secondaryServer": "ldaps://1.1.1.2:636/", + "ssl": "Enabled" + } + ], + "internet": "Disabled", + "provisioningState": "Updating" + }, + "tags": {}, + "type": "Microsoft.AVS/privateClouds" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/PrivateClouds_Delete.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/PrivateClouds_Delete.json new file mode 100644 index 000000000000..c618d1c27c23 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/PrivateClouds_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/PrivateClouds_Get.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/PrivateClouds_Get.json new file mode 100644 index 000000000000..9958dd0616a9 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/PrivateClouds_Get.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1", + "location": "eastus2", + "name": "cloud1", + "sku": { + "name": "AV36" + }, + "properties": { + "networkBlock": "192.168.48.0/22", + "circuit": { + "expressRouteID": "/subscriptions/{subscription-id}/resourceGroups/tnt13-41a90db2-9d5e-4bd5-a77a-5ce7b58213d6-eastus2/providers/Microsoft.Network/expressroutecircuits/tnt13-41a90db2-9d5e-4bd5-a77a-5ce7b58213d6-eastus2-xconnect", + "primarySubnet": "192.168.53.0/30", + "secondarySubnet": "192.168.53.4/30", + "expressRoutePrivatePeeringID": "/subscriptions/{subscription-id}/resourceGroups/tnt42-cust-p01-dmo01/providers/Microsoft.Network/expressroutecircuits/tnt42-cust-p01-dmo01-er/peerings/AzurePrivatePeering" + }, + "managementCluster": { + "clusterId": 1, + "clusterSize": 4, + "hosts": [ + "fakehost18.nyc1.kubernetes.center", + "fakehost19.nyc1.kubernetes.center", + "fakehost20.nyc1.kubernetes.center", + "fakehost21.nyc1.kubernetes.center" + ] + }, + "endpoints": { + "nsxtManager": "https://192.168.50.3/", + "vcsa": "https://192.168.50.2/", + "hcxCloudManager": "https://192.168.50.4/" + }, + "externalCloudLinks": [ + "/subscriptions/12341234-1234-1234-1234-123412341234/resourceGroups/mygroup/providers/Microsoft.AVS/privateClouds/cloud2" + ], + "identitySources": [ + { + "alias": "groupAlias", + "baseGroupDN": "ou=baseGroup", + "baseUserDN": "ou=baseUser", + "domain": "domain1", + "name": "group1", + "primaryServer": "ldaps://1.1.1.1:636/", + "secondaryServer": "ldaps://1.1.1.2:636/", + "ssl": "Enabled" + } + ], + "internet": "Disabled", + "provisioningState": "Succeeded" + }, + "tags": {}, + "type": "Microsoft.AVS/privateClouds" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/PrivateClouds_List.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/PrivateClouds_List.json new file mode 100644 index 000000000000..650421f2fae1 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/PrivateClouds_List.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1", + "location": "eastus2", + "name": "cloud1", + "sku": { + "name": "AV36" + }, + "properties": { + "networkBlock": "192.168.48.0/22", + "circuit": { + "expressRouteID": "/subscriptions/{subscription-id}/resourceGroups/tnt13-41a90db2-9d5e-4bd5-a77a-5ce7b58213d6-eastus2/providers/Microsoft.Network/expressroutecircuits/tnt13-41a90db2-9d5e-4bd5-a77a-5ce7b58213d6-eastus2-xconnect", + "primarySubnet": "192.168.53.0/30", + "secondarySubnet": "192.168.53.4/30", + "expressRoutePrivatePeeringID": "/subscriptions/{subscription-id}/resourceGroups/tnt42-cust-p01-dmo01/providers/Microsoft.Network/expressroutecircuits/tnt42-cust-p01-dmo01-er/peerings/AzurePrivatePeering" + }, + "managementCluster": { + "clusterId": 1, + "clusterSize": 4, + "hosts": [ + "fakehost18.nyc1.kubernetes.center", + "fakehost19.nyc1.kubernetes.center", + "fakehost20.nyc1.kubernetes.center", + "fakehost21.nyc1.kubernetes.center" + ] + }, + "endpoints": { + "nsxtManager": "https://192.168.50.3/", + "vcsa": "https://192.168.50.2/", + "hcxCloudManager": "https://192.168.50.4/" + }, + "externalCloudLinks": [ + "/subscriptions/12341234-1234-1234-1234-123412341234/resourceGroups/mygroup/providers/Microsoft.AVS/privateClouds/cloud2" + ], + "identitySources": [ + { + "alias": "groupAlias", + "baseGroupDN": "ou=baseGroup", + "baseUserDN": "ou=baseUser", + "domain": "domain1", + "name": "group1", + "primaryServer": "ldaps://1.1.1.1:636/", + "secondaryServer": "ldaps://1.1.1.2:636/", + "ssl": "Enabled" + } + ], + "internet": "Disabled", + "provisioningState": "Succeeded" + }, + "tags": {}, + "type": "Microsoft.AVS/privateClouds" + } + ] + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/PrivateClouds_ListAdminCredentials.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/PrivateClouds_ListAdminCredentials.json new file mode 100644 index 000000000000..c64cc94e03e7 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/PrivateClouds_ListAdminCredentials.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1" + }, + "responses": { + "200": { + "body": { + "nsxtPassword": "$(1X4Dkk", + "nsxtUsername": "admin", + "vcenterPassword": "", + "vcenterUsername": "cloudadmin@vmcp.local" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/PrivateClouds_ListInSubscription.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/PrivateClouds_ListInSubscription.json new file mode 100644 index 000000000000..bb75ffd19f09 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/PrivateClouds_ListInSubscription.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}" + }, + "responses": { + "200": { + "body": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1", + "location": "eastus2", + "name": "cloud1", + "sku": { + "name": "AV36" + }, + "properties": { + "networkBlock": "192.168.48.0/22", + "circuit": { + "expressRouteID": "/subscriptions/{subscription-id}/resourceGroups/tnt13-41a90db2-9d5e-4bd5-a77a-5ce7b58213d6-eastus2/providers/Microsoft.Network/expressroutecircuits/tnt13-41a90db2-9d5e-4bd5-a77a-5ce7b58213d6-eastus2-xconnect", + "primarySubnet": "192.168.53.0/30", + "secondarySubnet": "192.168.53.4/30", + "expressRoutePrivatePeeringID": "/subscriptions/{subscription-id}/resourceGroups/tnt42-cust-p01-dmo01/providers/Microsoft.Network/expressroutecircuits/tnt42-cust-p01-dmo01-er/peerings/AzurePrivatePeering" + }, + "managementCluster": { + "clusterId": 1, + "clusterSize": 4, + "hosts": [ + "fakehost18.nyc1.kubernetes.center", + "fakehost19.nyc1.kubernetes.center", + "fakehost20.nyc1.kubernetes.center", + "fakehost21.nyc1.kubernetes.center" + ] + }, + "endpoints": { + "nsxtManager": "https://192.168.50.3/", + "vcsa": "https://192.168.50.2/", + "hcxCloudManager": "https://192.168.50.4/" + }, + "identitySources": [ + { + "alias": "groupAlias", + "baseGroupDN": "ou=baseGroup", + "baseUserDN": "ou=baseUser", + "domain": "domain1", + "name": "group1", + "primaryServer": "ldaps://1.1.1.1:636/", + "secondaryServer": "ldaps://1.1.1.2:636/", + "ssl": "Enabled" + } + ], + "internet": "Disabled", + "provisioningState": "Succeeded" + }, + "tags": {}, + "type": "Microsoft.AVS/privateClouds" + } + ] + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/PrivateClouds_RotateNsxtPassword.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/PrivateClouds_RotateNsxtPassword.json new file mode 100644 index 000000000000..8ab0d5cb3bd9 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/PrivateClouds_RotateNsxtPassword.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/PrivateClouds_RotateVcenterPassword.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/PrivateClouds_RotateVcenterPassword.json new file mode 100644 index 000000000000..8ab0d5cb3bd9 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/PrivateClouds_RotateVcenterPassword.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/PrivateClouds_Update.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/PrivateClouds_Update.json new file mode 100644 index 000000000000..e22fa39f468d --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/PrivateClouds_Update.json @@ -0,0 +1,117 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "privateCloudUpdate": { + "properties": { + "managementCluster": { + "clusterSize": 4 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1", + "location": "eastus2", + "name": "cloud1", + "sku": { + "name": "AV36" + }, + "properties": { + "networkBlock": "192.168.48.0/22", + "circuit": { + "expressRouteID": "/subscriptions/{subscription-id}/resourceGroups/tnt13-41a90db2-9d5e-4bd5-a77a-5ce7b58213d6-eastus2/providers/Microsoft.Network/expressroutecircuits/tnt13-41a90db2-9d5e-4bd5-a77a-5ce7b58213d6-eastus2-xconnect", + "primarySubnet": "192.168.53.0/30", + "secondarySubnet": "192.168.53.4/30", + "expressRoutePrivatePeeringID": "/subscriptions/{subscription-id}/resourceGroups/tnt42-cust-p01-dmo01/providers/Microsoft.Network/expressroutecircuits/tnt42-cust-p01-dmo01-er/peerings/AzurePrivatePeering" + }, + "managementCluster": { + "clusterId": 1, + "clusterSize": 4, + "hosts": [ + "fakehost18.nyc1.kubernetes.center", + "fakehost19.nyc1.kubernetes.center", + "fakehost20.nyc1.kubernetes.center", + "fakehost21.nyc1.kubernetes.center" + ] + }, + "endpoints": { + "nsxtManager": "https://192.168.50.3/", + "vcsa": "https://192.168.50.2/", + "hcxCloudManager": "https://192.168.50.4/" + }, + "externalCloudLinks": [ + "/subscriptions/12341234-1234-1234-1234-123412341234/resourceGroups/mygroup/providers/Microsoft.AVS/privateClouds/cloud2" + ], + "identitySources": [ + { + "alias": "groupAlias", + "baseGroupDN": "ou=baseGroup", + "baseUserDN": "ou=baseUser", + "domain": "domain1", + "name": "group1", + "primaryServer": "ldaps://1.1.1.1:636/", + "secondaryServer": "ldaps://1.1.1.2:636/", + "ssl": "Enabled" + } + ], + "internet": "Disabled", + "provisioningState": "Succeeded" + }, + "tags": {}, + "type": "Microsoft.AVS/privateClouds" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1", + "location": "eastus2", + "name": "cloud1", + "sku": "AV36", + "properties": { + "networkBlock": "192.168.48.0/22", + "circuit": { + "expressRouteID": "/subscriptions/{subscription-id}/resourceGroups/tnt13-41a90db2-9d5e-4bd5-a77a-5ce7b58213d6-eastus2/providers/Microsoft.Network/expressroutecircuits/tnt13-41a90db2-9d5e-4bd5-a77a-5ce7b58213d6-eastus2-xconnect", + "primarySubnet": "192.168.53.0/30", + "secondarySubnet": "192.168.53.4/30", + "expressRoutePrivatePeeringID": "/subscriptions/{subscription-id}/resourceGroups/tnt42-cust-p01-dmo01/providers/Microsoft.Network/expressroutecircuits/tnt42-cust-p01-dmo01-er/peerings/AzurePrivatePeering" + }, + "managementCluster": { + "clusterId": 1, + "clusterSize": 4, + "hosts": [ + "fakehost18.nyc1.kubernetes.center", + "fakehost19.nyc1.kubernetes.center", + "fakehost20.nyc1.kubernetes.center", + "fakehost21.nyc1.kubernetes.center" + ] + }, + "endpoints": { + "nsxtManager": "https://192.168.50.3/", + "vcsa": "https://192.168.50.2/" + }, + "identitySources": [ + { + "alias": "groupAlias", + "baseGroupDN": "ou=baseGroup", + "baseUserDN": "ou=baseUser", + "domain": "domain1", + "name": "group1", + "primaryServer": "ldaps://1.1.1.1:636/", + "secondaryServer": "ldaps://1.1.1.2:636/", + "ssl": "Enabled" + } + ], + "internet": "Disabled", + "provisioningState": "Updating" + }, + "tags": {}, + "type": "Microsoft.AVS/privateClouds" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/ScriptCmdlets_Get.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/ScriptCmdlets_Get.json new file mode 100644 index 000000000000..5c7ea0e76669 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/ScriptCmdlets_Get.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "{privateCloudName}", + "scriptPackageName": "{scriptPackageName}", + "scriptCmdletName": "New-ExternalSsoDomain" + }, + "responses": { + "200": { + "body": { + "name": "New-ExternalSsoDomain", + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/{privateCloudName}/scriptPackages/{scriptPackageName}/scriptCmdlets/New-ExternalSsoDomain", + "properties": { + "description": "Add an external Sso domain to their vCenter", + "timeout": "P0Y0M0DT0H60M0S", + "parameters": [ + { + "name": "DomainName", + "description": "Domain name of the Server", + "type": "String", + "visibility": "Visible", + "optional": "Required" + }, + { + "name": "BaseUserDN", + "description": "Base User DN of the Server", + "type": "String", + "visibility": "Visible", + "optional": "Required" + }, + { + "name": "Password", + "description": "Password for authenticating to the server", + "type": "SecureString", + "visibility": "Hidden", + "optional": "Required" + } + ] + }, + "type": "Microsoft.AVS/privateClouds/scriptPackages/scriptCmdlets" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/ScriptCmdlets_List.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/ScriptCmdlets_List.json new file mode 100644 index 000000000000..fe0e6f92cc13 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/ScriptCmdlets_List.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "{privateCloudName}", + "scriptPackageName": "{scriptPackageName}" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Set-AvsStoragePolicy", + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/scriptPackages/{scriptPackageName}/scriptCmdlets/Set-AvsStoragePolicy", + "properties": { + "description": "Allow user to set the storage policy of the specified VM", + "timeout": "P0Y0M0DT0H60M0S", + "parameters": [ + { + "name": "VM", + "description": "VM to set the storage policy on", + "type": "String", + "visibility": "Visible", + "optional": "Required" + }, + { + "name": "StoragePolicyName", + "description": "Name of the storage policy to set", + "type": "String", + "visibility": "Visible", + "optional": "Required" + } + ] + }, + "type": "Microsoft.AVS/privateClouds/scriptPackages/scriptCmdlets" + }, + { + "name": "New-ExternalSsoDomain", + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/scriptPackages/{scriptPackageName}/scriptCmdlets/New-ExternalSsoDomain", + "properties": { + "description": "Add an external Sso domain to their vCenter", + "timeout": "P0Y0M0DT0H60M0S", + "parameters": [ + { + "name": "DomainName", + "description": "Domain name of the Server", + "type": "String", + "visibility": "Visible", + "optional": "Required" + }, + { + "name": "BaseUserDN", + "description": "Base User DN of the Server", + "type": "String", + "visibility": "Visible", + "optional": "Required" + }, + { + "name": "Password", + "description": "Password for authenticating to the server", + "type": "SecureString", + "visibility": "Hidden", + "optional": "Required" + } + ] + }, + "type": "Microsoft.AVS/privateClouds/scriptPackages/scriptCmdlets" + } + ] + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/ScriptExecutions_CreateOrUpdate.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/ScriptExecutions_CreateOrUpdate.json new file mode 100644 index 000000000000..836988aa3ea3 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/ScriptExecutions_CreateOrUpdate.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "scriptExecutionName": "addSsoServer", + "scriptExecution": { + "properties": { + "scriptCmdletId": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/scriptPackages/AVS.PowerCommands@1.0.0/scriptCmdlets/New-SsoExternalIdentitySource", + "timeout": "P0Y0M0DT0H60M60S", + "retention": "P0Y0M60DT0H60M60S", + "parameters": [ + { + "name": "DomainName", + "type": "Value", + "value": "placeholderDomain.local" + }, + { + "name": "BaseUserDN", + "type": "Value", + "value": "DC=placeholder, DC=placeholder" + } + ], + "hiddenParameters": [ + { + "name": "Password", + "type": "SecureValue", + "secureValue": "PlaceholderPassword" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/scriptExecutions/addSsoServer", + "name": "addSsoServer", + "properties": { + "scriptCmdletId": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/scriptPackages/AVS.PowerCommands@1.0.0/scriptCmdlets/New-SsoExternalIdentitySource", + "timeout": "P0Y0M0DT0H60M60S", + "retention": "P0Y0M60DT0H60M60S", + "provisioningState": "Succeeded", + "failureReason": "vCenter failed to connect to the external server", + "parameters": [ + { + "name": "DomainName", + "type": "Value", + "value": "placeholderDomain.local" + }, + { + "name": "BaseUserDN", + "type": "Value", + "value": "DC=placeholder, DC=placeholder" + } + ], + "output": [ + "IdentitySource: placeholder.dc", + "BaseDN='dc=placeholder, dc=local" + ] + }, + "type": "Microsoft.AVS/privateClouds/scriptExecutions" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/scriptExecutions/addSsoServer", + "name": "addSsoServer", + "properties": { + "scriptCmdletId": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/scriptPackages/AVS.PowerCommands@1.0.0/scriptCmdlets/New-SsoExternalIdentitySource", + "timeout": "P0Y0M0DT0H60M60S", + "retention": "P0Y0M60DT0H60M60S", + "provisioningState": "Running", + "parameters": [ + { + "name": "DomainName", + "type": "Value", + "value": "placeholderDomain.local" + }, + { + "name": "BaseUserDN", + "type": "Value", + "value": "DC=placeholder, DC=placeholder" + } + ] + }, + "type": "Microsoft.AVS/privateClouds/scriptExecutions" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/ScriptExecutions_Delete.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/ScriptExecutions_Delete.json new file mode 100644 index 000000000000..c1661ae78173 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/ScriptExecutions_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "scriptExecutionName": "{scriptExecutionName}" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/ScriptExecutions_Get.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/ScriptExecutions_Get.json new file mode 100644 index 000000000000..111bb761b651 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/ScriptExecutions_Get.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "scriptExecutionName": "addSsoServer" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/scriptExecutions/addSsoServer", + "name": "addSsoServer", + "properties": { + "scriptCmdletId": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/scriptPackages/AVS.PowerCommands@1.0.0/scriptCmdlets/New-SsoExternalIdentitySource", + "timeout": "P0Y0M0DT0H60M60S", + "retention": "P0Y0M60DT0H60M60S", + "submittedAt": "2021-03-21T17:31:28Z", + "startedAt": "2021-03-21T17:32:28Z", + "finishedAt": "2021-03-21T18:32:28Z", + "provisioningState": "Succeeded", + "failureReason": "vCenter failed to connect to the external server", + "parameters": [ + { + "name": "DomainName", + "type": "Value", + "value": "placeholderDomain.local" + }, + { + "name": "BaseUserDN", + "type": "Value", + "value": "DC=placeholder, DC=placeholder" + } + ] + }, + "type": "Microsoft.AVS/privateClouds/scriptExecutions" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/ScriptExecutions_GetExecutionLogs.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/ScriptExecutions_GetExecutionLogs.json new file mode 100644 index 000000000000..5daa4bc00b60 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/ScriptExecutions_GetExecutionLogs.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "scriptExecutionName": "addSsoServer", + "scriptOutputStreamType": [ + "Information", + "Warnings", + "Errors", + "Output" + ] + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/scriptExecutions/addSsoServer", + "name": "addSsoServer", + "properties": { + "timeout": "P0Y0M0D0H060M0S", + "output": [ + "Most recent output", + "Second most recent output" + ], + "errors": [ + "Most recent error output", + "Second most error recent output" + ], + "warnings": [ + "Most recent warning output", + "Second most recent warning output" + ], + "information": [ + "Most recent information output", + "Second most recent information output" + ] + } + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/ScriptExecutions_List.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/ScriptExecutions_List.json new file mode 100644 index 000000000000..841240c323c7 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/ScriptExecutions_List.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "{privateCloudName}" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/scriptExecutions/addSsoServer", + "name": "addSsoServer", + "properties": { + "scriptCmdletId": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/scriptPackages/AVS:1.0.0/scriptCmdlets/New-SsoExternalIdentitySource", + "timeout": "P0Y0M0DT0H60M60S", + "retention": "P0Y0M60DT0H60M60S", + "submittedAt": "2021-03-21T17:31:28Z", + "startedAt": "2021-03-21T17:32:28Z", + "finishedAt": "2021-03-21T18:32:28Z", + "provisioningState": "Failed", + "failureReason": "vCenter failed to connect to the external server", + "parameters": [ + { + "name": "DomainName", + "type": "Value", + "value": "placeholderDomain.local" + }, + { + "name": "BaseUserDN", + "type": "Value", + "value": "DC=placeholder, DC=placeholder" + } + ] + }, + "type": "Microsoft.AVS/privateClouds/scriptExecutions" + } + ] + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/ScriptPackages_Get.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/ScriptPackages_Get.json new file mode 100644 index 000000000000..5a23f4e267f2 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/ScriptPackages_Get.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "{privateCloudName}", + "scriptPackageName": "{scriptPackageName}" + }, + "responses": { + "200": { + "body": { + "name": "AVS.PowerCommands@1.0.0", + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/scriptPackages/{scriptPackageName}", + "properties": { + "description": "Various cmdlets for elevated access to Private Cloud administrative functions", + "version": "1.0.0" + }, + "type": "Microsoft.AVS/privateClouds/scriptPackages" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/ScriptPackages_List.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/ScriptPackages_List.json new file mode 100644 index 000000000000..29b82938799a --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/ScriptPackages_List.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "{privateCloudName}" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "AVS.PowerCommands@1.0.0", + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/scriptPackages/AVS.PowerCommands@1.0.0", + "properties": { + "description": "Various cmdlets for elevated access to Private Cloud administrative functions", + "version": "1.0.0" + }, + "type": "Microsoft.AVS/privateClouds/scriptPackages" + }, + { + "name": "JSDR.Configuration@1.0", + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/scriptPackages/JSDR.Configuration@1.0", + "properties": { + "description": "Various cmdlets by Jetstream for Private Cloud administration", + "version": "1.0.0" + }, + "type": "Microsoft.AVS/privateClouds/scriptPackages" + } + ] + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_CreateDhcpConfigurations.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_CreateDhcpConfigurations.json new file mode 100644 index 000000000000..158e3d875a1d --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_CreateDhcpConfigurations.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "dhcpId": "dhcp1", + "workloadNetworkDhcp": { + "properties": { + "dhcpType": "SERVER", + "displayName": "dhcpConfigurations1", + "serverAddress": "40.1.5.1/24", + "leaseTime": 86400, + "revision": 1 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/workloadNetworks/default/dhcpConfigurations/dhcpConfigurations1", + "name": "dhcp1", + "properties": { + "dhcpType": "SERVER", + "displayName": "dhcpConfigurations1", + "segments": [ + "segment1", + "segment2" + ], + "serverAddress": "40.1.5.1/24", + "leaseTime": 86400, + "revision": 1 + }, + "type": "Microsoft.AVS/privateClouds/workloadNetworks/dhcpConfigurations" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/workloadNetworks/default/dhcpConfigurations/dhcpConfigurations1", + "name": "dhcp1", + "properties": { + "dhcpType": "SERVER", + "displayName": "dhcpConfigurations1", + "segments": [ + "segment1", + "segment2" + ], + "serverAddress": "40.1.5.1/24", + "leaseTime": 86400, + "revision": 1 + }, + "type": "Microsoft.AVS/privateClouds/workloadNetworks/dhcpConfigurations" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_CreateDnsServices.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_CreateDnsServices.json new file mode 100644 index 000000000000..1aa0b6f798cd --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_CreateDnsServices.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "dnsServiceId": "dnsService1", + "workloadNetworkDnsService": { + "properties": { + "displayName": "dnsService1", + "dnsServiceIp": "5.5.5.5", + "defaultDnsZone": "defaultDnsZone1", + "fqdnZones": [ + "fqdnZone1" + ], + "logLevel": "INFO", + "revision": 1 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/workloadNetworks/default/dnsServices/dnsService1", + "name": "dnsService1", + "properties": { + "displayName": "dnsService1", + "dnsServiceIp": "5.5.5.5", + "defaultDnsZone": "defaultDnsZone1", + "fqdnZones": [ + "fqdnZone1" + ], + "logLevel": "INFO", + "status": "SUCCESS", + "revision": 1 + }, + "type": "Microsoft.AVS/privateClouds/workloadNetworks/dnsServices" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/workloadNetworks/default/dnsServices/dnsService1", + "name": "dnsService1", + "properties": { + "displayName": "dnsService1", + "dnsServiceIp": "5.5.5.5", + "defaultDnsZone": "defaultDnsZone1", + "fqdnZones": [ + "fqdnZone1" + ], + "logLevel": "INFO", + "status": "SUCCESS", + "revision": 1 + }, + "type": "Microsoft.AVS/privateClouds/workloadNetworks/dnsServices" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_CreateDnsZones.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_CreateDnsZones.json new file mode 100644 index 000000000000..052ee8ac03b7 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_CreateDnsZones.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "dnsZoneId": "dnsZone1", + "workloadNetworkDnsZone": { + "properties": { + "displayName": "dnsZone1", + "domain": [], + "dnsServerIps": [ + "1.1.1.1" + ], + "sourceIp": "8.8.8.8", + "revision": 1 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/workloadNetworks/default/dnsZones/dnsZone1", + "name": "dnsZone1", + "properties": { + "displayName": "dnsZone1", + "domain": [], + "dnsServerIps": [ + "1.1.1.1" + ], + "sourceIp": "8.8.8.8", + "dnsServices": 0, + "revision": 1 + }, + "type": "Microsoft.AVS/privateClouds/workloadNetworks/dnsZones" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/workloadNetworks/default/dnsZones/dnsZone1", + "name": "dnsZone1", + "properties": { + "displayName": "dnsZone1", + "domain": [], + "dnsServerIps": [ + "1.1.1.1" + ], + "sourceIp": "8.8.8.8", + "dnsServices": 0, + "revision": 1 + }, + "type": "Microsoft.AVS/privateClouds/workloadNetworks/dnsZones" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_CreatePortMirroringProfiles.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_CreatePortMirroringProfiles.json new file mode 100644 index 000000000000..28508e59d382 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_CreatePortMirroringProfiles.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "portMirroringId": "portMirroring1", + "workloadNetworkPortMirroring": { + "properties": { + "displayName": "portMirroring1", + "direction": "BIDIRECTIONAL", + "source": "vmGroup1", + "destination": "vmGroup2", + "revision": 1 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/workloadNetworks/default/portMirroringProfiles/portMirroring1", + "name": "portMirroring1", + "properties": { + "displayName": "portMirroring1", + "direction": "BIDIRECTIONAL", + "source": "vmGroup1", + "destination": "vmGroup2", + "status": "SUCCESS", + "revision": 1 + }, + "type": "Microsoft.AVS/privateClouds/workloadNetworks/portMirroringProfiles" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/workloadNetworks/default/portMirroringProfiles/portMirroring1", + "name": "portMirroring1", + "properties": { + "displayName": "portMirroring1", + "direction": "BIDIRECTIONAL", + "source": "vmGroup1", + "destination": "vmGroup2", + "status": "SUCCESS", + "revision": 1 + }, + "type": "Microsoft.AVS/privateClouds/workloadNetworks/portMirroringProfiles" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_CreatePublicIPs.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_CreatePublicIPs.json new file mode 100644 index 000000000000..c5f911a33431 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_CreatePublicIPs.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "publicIPId": "publicIP1", + "workloadNetworkPublicIP": { + "properties": { + "displayName": "publicIP1", + "numberOfPublicIPs": 32 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/workloadNetworks/default/publicIPs/publicIP1", + "name": "publicIP1", + "properties": { + "displayName": "publicIP1", + "publicIPBlock": "20.20.40.50/32" + }, + "type": "Microsoft.AVS/privateClouds/workloadNetworks/publicIPs" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/workloadNetworks/default/publicIPs/publicIP1", + "name": "publicIP1", + "properties": { + "displayName": "publicIP1", + "publicIPBlock": "20.20.40.50/32" + }, + "type": "Microsoft.AVS/privateClouds/workloadNetworks/publicIPs" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_CreateSegments.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_CreateSegments.json new file mode 100644 index 000000000000..dfb75ffcd1ab --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_CreateSegments.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "segmentId": "segment1", + "workloadNetworkSegment": { + "properties": { + "displayName": "segment1", + "connectedGateway": "/infra/tier-1s/gateway", + "subnet": { + "dhcpRanges": [ + "40.20.0.0-40.20.0.1" + ], + "gatewayAddress": "40.20.20.20/16" + }, + "revision": 1 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/workloadNetworks/default/segments/segment1", + "name": "segment1", + "properties": { + "displayName": "segment1", + "connectedGateway": "/infra/tier-1s/gateway", + "subnet": { + "dhcpRanges": [ + "40.20.0.0-40.20.0.1" + ], + "gatewayAddress": "40.20.20.20/16" + }, + "portVif": [], + "status": "SUCCESS", + "revision": 1 + }, + "type": "Microsoft.AVS/privateClouds/workloadNetworks/segments" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/workloadNetworks/default/segments/segment1", + "name": "segment1", + "properties": { + "displayName": "segment1", + "connectedGateway": "/infra/tier-1s/gateway", + "subnet": { + "dhcpRanges": [ + "40.20.0.0-40.20.0.1" + ], + "gatewayAddress": "40.20.20.20/16" + }, + "portVif": [], + "status": "SUCCESS", + "revision": 1 + }, + "type": "Microsoft.AVS/privateClouds/workloadNetworks/segments" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_CreateVMGroups.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_CreateVMGroups.json new file mode 100644 index 000000000000..a3784e2008ed --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_CreateVMGroups.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "vmGroupId": "vmGroup1", + "workloadNetworkVMGroup": { + "properties": { + "displayName": "vmGroup1", + "members": [ + "564d43da-fefc-2a3b-1d92-42855622fa50" + ], + "revision": 1 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/workloadNetworks/default/vmGroups/vmGroup1", + "name": "vmGroup1", + "properties": { + "displayName": "vmGroup1", + "members": [ + "564d43da-fefc-2a3b-1d92-42855622fa50" + ], + "status": "SUCCESS", + "revision": 1 + }, + "type": "Microsoft.AVS/privateClouds/workloadNetworks/vmGroups" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/workloadNetworks/default/vmGroups/vmGroup1", + "name": "vmGroup1", + "properties": { + "displayName": "vmGroup1", + "members": [ + "564d43da-fefc-2a3b-1d92-42855622fa50" + ], + "status": "SUCCESS", + "revision": 1 + }, + "type": "Microsoft.AVS/privateClouds/workloadNetworks/vmGroups" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_DeleteDhcpConfigurations.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_DeleteDhcpConfigurations.json new file mode 100644 index 000000000000..f1c0c06f0178 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_DeleteDhcpConfigurations.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "dhcpId": "dhcp1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_DeleteDnsServices.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_DeleteDnsServices.json new file mode 100644 index 000000000000..cca1188246b7 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_DeleteDnsServices.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "dnsServiceId": "dnsService1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_DeleteDnsZones.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_DeleteDnsZones.json new file mode 100644 index 000000000000..aeb29fd8bf49 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_DeleteDnsZones.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "dnsZoneId": "dnsZone1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_DeletePortMirroringProfiles.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_DeletePortMirroringProfiles.json new file mode 100644 index 000000000000..36b10056fa70 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_DeletePortMirroringProfiles.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "portMirroringId": "portMirroring1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_DeletePublicIPs.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_DeletePublicIPs.json new file mode 100644 index 000000000000..1dd19083c842 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_DeletePublicIPs.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "publicIPId": "publicIP1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_DeleteSegments.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_DeleteSegments.json new file mode 100644 index 000000000000..2fb3f3e9cb7a --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_DeleteSegments.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "segmentId": "segment1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_DeleteVMGroups.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_DeleteVMGroups.json new file mode 100644 index 000000000000..29fef9578418 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_DeleteVMGroups.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "vmGroupId": "vmGroup1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_GetDhcpConfigurations.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_GetDhcpConfigurations.json new file mode 100644 index 000000000000..9c8cb468b9d9 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_GetDhcpConfigurations.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "dhcpId": "dhcp1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/workloadNetworks/default/dhcpConfigurations/dhcpConfigurations1", + "name": "dhcp1", + "properties": { + "displayName": "dhcpConfigurations1", + "dhcpType": "SERVER", + "segments": [ + "segment1", + "segment2" + ], + "serverAddress": "40.1.5.1/24", + "leaseTime": 86400, + "revision": 1 + }, + "type": "Microsoft.AVS/privateClouds/workloadNetworks/dhcpConfigurations" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_GetDnsServices.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_GetDnsServices.json new file mode 100644 index 000000000000..66a53bd9fa18 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_GetDnsServices.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "dnsServiceId": "dnsService1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/workloadNetworks/default/dnsServices/dnsService1", + "name": "portMirroring1", + "properties": { + "displayName": "dnsService1", + "dnsServiceIp": "5.5.5.5", + "defaultDnsZone": "defaultDnsZone1", + "fqdnZones": [ + "fqdnZone1" + ], + "logLevel": "INFO", + "status": "SUCCESS", + "revision": 1 + }, + "type": "Microsoft.AVS/privateClouds/workloadNetworks/dnsServices" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_GetDnsZones.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_GetDnsZones.json new file mode 100644 index 000000000000..5a878e16544b --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_GetDnsZones.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "dnsZoneId": "dnsZone1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/workloadNetworks/default/dnsZones/dnsZone1", + "name": "portMirroring1", + "properties": { + "displayName": "dnsZone1", + "domain": [], + "dnsServerIps": [ + "1.1.1.1" + ], + "sourceIp": "8.8.8.8", + "dnsServices": 0, + "revision": 1 + }, + "type": "Microsoft.AVS/privateClouds/workloadNetworks/dnsZones" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_GetGateway.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_GetGateway.json new file mode 100644 index 000000000000..8f0102a0f23e --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_GetGateway.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "gatewayId": "gateway1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/workloadNetworks/default/gateways/gateway1", + "name": "gateway1", + "properties": { + "displayName": "gateway1", + "path": "/infra/tier-1s/gateway1" + }, + "type": "Microsoft.AVS/privateClouds/workloadNetworks/gateways" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_GetPortMirroringProfiles.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_GetPortMirroringProfiles.json new file mode 100644 index 000000000000..ad5e6e2708fa --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_GetPortMirroringProfiles.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "portMirroringId": "portMirroring1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/workloadNetworks/default/portMirroringProfiles/portMirroring1", + "name": "portMirroring1", + "properties": { + "displayName": "portMirroring1", + "direction": "BIDIRECTIONAL", + "source": "vmGroup1", + "destination": "vmGroup2", + "status": "SUCCESS", + "revision": 1 + }, + "type": "Microsoft.AVS/privateClouds/workloadNetworks/portMirroringProfiles" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_GetPublicIPs.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_GetPublicIPs.json new file mode 100644 index 000000000000..213dfcc85597 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_GetPublicIPs.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "publicIPId": "publicIP1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/workloadNetworks/default/publicIPs/publicIP1", + "name": "publicIP1", + "properties": { + "displayName": "publicIP1", + "publicIPBlock": "20.20.40.50/32" + }, + "type": "Microsoft.AVS/privateClouds/workloadNetworks/publicIPs" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_GetSegments.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_GetSegments.json new file mode 100644 index 000000000000..ce09e4c4ef8d --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_GetSegments.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "segmentId": "segment1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/workloadNetworks/default/segments/segment1", + "name": "segment1", + "properties": { + "displayName": "segment1", + "connectedGateway": "/infra/tier-1s/gateway", + "subnet": { + "dhcpRanges": [ + "40.20.0.0-40.20.0.1" + ], + "gatewayAddress": "40.20.20.20/16" + }, + "portVif": [ + { + "portName": "vm1" + } + ], + "status": "SUCCESS", + "revision": 1 + }, + "type": "Microsoft.AVS/privateClouds/workloadNetworks/segments" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_GetVMGroups.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_GetVMGroups.json new file mode 100644 index 000000000000..5a734834304b --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_GetVMGroups.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "vmGroupId": "vmGroup1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/workloadNetworks/default/vmGroups/vmGroup1", + "name": "cloud1", + "properties": { + "displayName": "vmGroup1", + "members": [ + "564d43da-fefc-2a3b-1d92-42855622fa50" + ], + "status": "SUCCESS", + "revision": 1 + }, + "type": "Microsoft.AVS/privateClouds/workloadNetworks/vmGroups" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_GetVirtualMachine.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_GetVirtualMachine.json new file mode 100644 index 000000000000..037645237270 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_GetVirtualMachine.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "virtualMachineId": "vm1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/workloadNetworks/default/virtualMachines/vm1", + "name": "vm1", + "properties": { + "displayName": "vm1", + "vmType": "REGULAR" + }, + "type": "Microsoft.AVS/privateClouds/workloadNetworks/virtualMachines" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_ListDhcpConfigurations.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_ListDhcpConfigurations.json new file mode 100644 index 000000000000..57b12c6a8277 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_ListDhcpConfigurations.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/workloadNetworks/default/dhcpConfigurations/dhcpConfigurations1", + "name": "dhcp1", + "properties": { + "displayName": "dhcpConfigurations1", + "dhcpType": "SERVER", + "segments": [ + "segment1", + "segment2" + ], + "serverAddress": "40.1.5.1/24", + "leaseTime": 86400, + "revision": 1 + }, + "type": "Microsoft.AVS/privateClouds/workloadNetworks/dhcpConfigurations" + } + ] + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_ListDnsServices.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_ListDnsServices.json new file mode 100644 index 000000000000..714393a72f63 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_ListDnsServices.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/workloadNetworks/default/dnsServices/dnsService1", + "name": "portMirroring1", + "properties": { + "displayName": "dnsService1", + "dnsServiceIp": "5.5.5.5", + "defaultDnsZone": "defaultDnsZone1", + "fqdnZones": [ + "fqdnZone1" + ], + "logLevel": "INFO", + "status": "SUCCESS", + "revision": 1 + }, + "type": "Microsoft.AVS/privateClouds/workloadNetworks/dnsServices" + } + ] + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_ListDnsZones.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_ListDnsZones.json new file mode 100644 index 000000000000..a985767a07d7 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_ListDnsZones.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/workloadNetworks/default/dnsZones/dnsZone1", + "name": "portMirroring1", + "properties": { + "displayName": "dnsZone1", + "domain": [], + "dnsServerIps": [ + "1.1.1.1" + ], + "sourceIp": "8.8.8.8", + "dnsServices": 0, + "revision": 1 + }, + "type": "Microsoft.AVS/privateClouds/workloadNetworks/dnsZones" + } + ] + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_ListGateways.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_ListGateways.json new file mode 100644 index 000000000000..a77e5144ba6a --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_ListGateways.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/workloadNetworks/default/gateways/gateway1", + "name": "gateway1", + "properties": { + "displayName": "gateway1", + "path": "/infra/tier-1s/gateway1" + }, + "type": "Microsoft.AVS/privateClouds/workloadNetworks/segments" + } + ] + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_ListPortMirroringProfiles.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_ListPortMirroringProfiles.json new file mode 100644 index 000000000000..44df2daf6bcc --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_ListPortMirroringProfiles.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/workloadNetworks/default/portMirroringProfiles/portMirroring1", + "name": "cloud1", + "properties": { + "displayName": "portMirroring1", + "direction": "BIDIRECTIONAL", + "source": "vmGroup1", + "destination": "vmGroup2", + "status": "SUCCESS", + "revision": 1 + }, + "type": "Microsoft.AVS/privateClouds/workloadNetworks/portMirroringProfiles" + } + ] + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_ListPublicIPs.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_ListPublicIPs.json new file mode 100644 index 000000000000..f62bb791a902 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_ListPublicIPs.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/workloadNetworks/default/publicIPs/publicIP1", + "name": "publicIP1", + "properties": { + "displayName": "publicIP1", + "publicIPBlock": "20.20.40.50/32" + }, + "type": "Microsoft.AVS/privateClouds/workloadNetworks/publicIPs" + } + ] + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_ListSegments.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_ListSegments.json new file mode 100644 index 000000000000..86fbb7a508af --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_ListSegments.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/workloadNetworks/default/segments/segment1", + "name": "segment1", + "properties": { + "displayName": "segment1", + "connectedGateway": "/infra/tier-1s/gateway", + "subnet": { + "dhcpRanges": [ + "40.20.0.0-40.20.0.1" + ], + "gatewayAddress": "40.20.20.20/16" + }, + "portVif": [ + { + "portName": "vm1" + } + ], + "status": "SUCCESS", + "revision": 1 + }, + "type": "Microsoft.AVS/privateClouds/workloadNetworks/segments" + } + ] + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_ListVMGroups.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_ListVMGroups.json new file mode 100644 index 000000000000..bec2800b5bde --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_ListVMGroups.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/workloadNetworks/default/vmGroups/vmGroup1", + "name": "cloud1", + "properties": { + "displayName": "vmGroup1", + "members": [ + "564d43da-fefc-2a3b-1d92-42855622fa50" + ], + "status": "SUCCESS", + "revision": 1 + }, + "type": "Microsoft.AVS/privateClouds/workloadNetworks/vmGroups" + } + ] + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_ListVirtualMachines.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_ListVirtualMachines.json new file mode 100644 index 000000000000..f180257c5c45 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_ListVirtualMachines.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/workloadNetworks/default/virtualMachines/vm1", + "name": "vm1", + "properties": { + "displayName": "vm1", + "vmType": "REGULAR" + }, + "type": "Microsoft.AVS/privateClouds/workloadNetworks/virtualMachines" + } + ] + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_UpdateDhcpConfigurations.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_UpdateDhcpConfigurations.json new file mode 100644 index 000000000000..fb544538006e --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_UpdateDhcpConfigurations.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "dhcpId": "dhcp1", + "workloadNetworkDhcp": { + "properties": { + "dhcpType": "SERVER", + "serverAddress": "40.1.5.1/24", + "leaseTime": 86400, + "revision": 1 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/workloadNetworks/default/dhcpConfigurations/dhcpConfigurations1", + "name": "dhcp1", + "properties": { + "displayName": "dhcpConfigurations1", + "dhcpType": "SERVER", + "segments": [ + "segment1", + "segment2" + ], + "serverAddress": "40.1.5.1/24", + "leaseTime": 86400, + "revision": 2 + }, + "type": "Microsoft.AVS/privateClouds/workloadNetworks/dhcpConfigurations" + } + }, + "202": {} + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_UpdateDnsServices.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_UpdateDnsServices.json new file mode 100644 index 000000000000..5f27dac0c145 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_UpdateDnsServices.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "dnsServiceId": "dnsService1", + "workloadNetworkDnsService": { + "properties": { + "displayName": "dnsService1", + "dnsServiceIp": "5.5.5.5", + "defaultDnsZone": "defaultDnsZone1", + "fqdnZones": [ + "fqdnZone1" + ], + "logLevel": "INFO", + "revision": 1 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/workloadNetworks/default/dnsServices/dnsService1", + "name": "dnsService1", + "properties": { + "displayName": "dnsService1", + "dnsServiceIp": "5.5.5.5", + "defaultDnsZone": "defaultDnsZone1", + "fqdnZones": [ + "fqdnZone1" + ], + "logLevel": "INFO", + "status": "SUCCESS", + "revision": 1 + }, + "type": "Microsoft.AVS/privateClouds/workloadNetworks/dnsServices" + } + }, + "202": {} + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_UpdateDnsZones.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_UpdateDnsZones.json new file mode 100644 index 000000000000..074c5a2cf79c --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_UpdateDnsZones.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "dnsZoneId": "dnsZone1", + "workloadNetworkDnsZone": { + "properties": { + "displayName": "dnsZone1", + "domain": [], + "dnsServerIps": [ + "1.1.1.1" + ], + "sourceIp": "8.8.8.8", + "revision": 1 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/workloadNetworks/default/dnsZones/dnsZone1", + "name": "dnsZone1", + "properties": { + "displayName": "dnsZone1", + "domain": [], + "dnsServerIps": [ + "1.1.1.1" + ], + "sourceIp": "8.8.8.8", + "dnsServices": 0, + "revision": 1 + }, + "type": "Microsoft.AVS/privateClouds/workloadNetworks/dnsZones" + } + }, + "202": {} + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_UpdatePortMirroringProfiles.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_UpdatePortMirroringProfiles.json new file mode 100644 index 000000000000..032993d67be5 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_UpdatePortMirroringProfiles.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "portMirroringId": "portMirroring1", + "workloadNetworkPortMirroring": { + "properties": { + "direction": "BIDIRECTIONAL", + "source": "vmGroup1", + "destination": "vmGroup2", + "revision": 1 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/workloadNetworks/default/portMirroringProfiles/portMirroring1", + "name": "portMirroring1", + "properties": { + "displayName": "portMirroring1", + "direction": "BIDIRECTIONAL", + "source": "vmGroup1", + "destination": "vmGroup2", + "status": "SUCCESS", + "revision": 2 + }, + "type": "Microsoft.AVS/privateClouds/workloadNetworks/portMirroringProfiles" + } + }, + "202": {} + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_UpdateSegments.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_UpdateSegments.json new file mode 100644 index 000000000000..b7f29b75a48d --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_UpdateSegments.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "segmentId": "segment1", + "workloadNetworkSegment": { + "properties": { + "connectedGateway": "/infra/tier-1s/gateway", + "subnet": { + "dhcpRanges": [ + "40.20.0.0-40.20.0.1" + ], + "gatewayAddress": "40.20.20.20/16" + }, + "revision": 1 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/workloadNetworks/default/segments/segment1", + "name": "segment1", + "properties": { + "displayName": "segment1", + "connectedGateway": "/infra/tier-1s/gateway", + "subnet": { + "dhcpRanges": [ + "40.20.0.0-40.20.0.1" + ], + "gatewayAddress": "40.20.20.20/16" + }, + "portVif": [ + { + "portName": "vm1" + } + ], + "status": "SUCCESS", + "revision": 2 + }, + "type": "Microsoft.AVS/privateClouds/workloadNetworks/segments" + } + }, + "202": {} + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_UpdateVMGroups.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_UpdateVMGroups.json new file mode 100644 index 000000000000..432782ac89a8 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/examples/WorkloadNetworks_UpdateVMGroups.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "vmGroupId": "vmGroup1", + "workloadNetworkVMGroup": { + "properties": { + "members": [ + "564d43da-fefc-2a3b-1d92-42855622fa50" + ], + "revision": 1 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/workloadNetworks/default/vmGroups/vmGroup1", + "name": "cloud1", + "properties": { + "displayName": "vmGroup1", + "members": [ + "564d43da-fefc-2a3b-1d92-42855622fa50" + ], + "status": "SUCCESS", + "revision": 2 + }, + "type": "Microsoft.AVS/privateClouds/workloadNetworks/vmGroups" + } + }, + "202": {} + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/vmware.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/vmware.json new file mode 100644 index 000000000000..9e300148abd8 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2021-06-01/vmware.json @@ -0,0 +1,7028 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure VMware Solution API", + "description": "Azure VMware Solution API", + "version": "2021-06-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" + } + } + }, + "tags": [ + { + "name": "PrivateClouds", + "description": "" + }, + { + "name": "Clusters", + "description": "" + }, + { + "name": "Operations", + "description": "" + }, + { + "name": "Locations", + "description": "" + }, + { + "name": "HcxEnterpriseSites", + "description": "" + }, + { + "name": "Authorizations", + "description": "" + }, + { + "name": "GlobalReachConnections", + "description": "" + }, + { + "name": "WorkloadNetworks", + "description": "" + }, + { + "name": "Addons", + "description": "" + }, + { + "name": "Datastores", + "description": "" + }, + { + "name": "CloudLinks", + "description": "" + }, + { + "name": "Scripts", + "description": "" + } + ], + "parameters": { + "privateCloudName": { + "name": "privateCloudName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the private cloud", + "x-ms-parameter-location": "method" + }, + "clusterName": { + "name": "clusterName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the cluster in the private cloud", + "x-ms-parameter-location": "method" + }, + "hcxEnterpriseSiteName": { + "name": "hcxEnterpriseSiteName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the HCX Enterprise Site in the private cloud", + "x-ms-parameter-location": "method" + }, + "addonName": { + "name": "addonName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the addon for the private cloud", + "x-ms-parameter-location": "method" + }, + "authorizationName": { + "name": "authorizationName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the ExpressRoute Circuit Authorization in the private cloud", + "x-ms-parameter-location": "method" + }, + "globalReachConnectionName": { + "name": "globalReachConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the global reach connection in the private cloud", + "x-ms-parameter-location": "method" + }, + "segmentId": { + "name": "segmentId", + "in": "path", + "required": true, + "type": "string", + "description": "NSX Segment identifier. Generally the same as the Segment's display name", + "x-ms-parameter-location": "method" + }, + "dhcpId": { + "name": "dhcpId", + "in": "path", + "required": true, + "type": "string", + "description": "NSX DHCP identifier. Generally the same as the DHCP display name", + "x-ms-parameter-location": "method" + }, + "portMirroringId": { + "name": "portMirroringId", + "in": "path", + "required": true, + "type": "string", + "description": "NSX Port Mirroring identifier. Generally the same as the Port Mirroring display name", + "x-ms-parameter-location": "method" + }, + "vmGroupId": { + "name": "vmGroupId", + "in": "path", + "required": true, + "type": "string", + "description": "NSX VM Group identifier. Generally the same as the VM Group's display name", + "x-ms-parameter-location": "method" + }, + "virtualMachineId": { + "name": "virtualMachineId", + "in": "path", + "required": true, + "type": "string", + "description": "Virtual Machine identifier", + "x-ms-parameter-location": "method" + }, + "gatewayId": { + "name": "gatewayId", + "in": "path", + "required": true, + "type": "string", + "description": "NSX Gateway identifier. Generally the same as the Gateway's display name", + "x-ms-parameter-location": "method" + }, + "dnsServiceId": { + "name": "dnsServiceId", + "in": "path", + "required": true, + "type": "string", + "description": "NSX DNS Service identifier. Generally the same as the DNS Service's display name", + "x-ms-parameter-location": "method" + }, + "dnsZoneId": { + "name": "dnsZoneId", + "in": "path", + "required": true, + "type": "string", + "description": "NSX DNS Zone identifier. Generally the same as the DNS Zone's display name", + "x-ms-parameter-location": "method" + }, + "publicIPId": { + "name": "publicIPId", + "in": "path", + "required": true, + "type": "string", + "description": "NSX Public IP Block identifier. Generally the same as the Public IP Block's display name", + "x-ms-parameter-location": "method" + }, + "datastoreName": { + "name": "datastoreName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the datastore in the private cloud cluster", + "x-ms-parameter-location": "method" + }, + "cloudLinkName": { + "name": "cloudLinkName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the cloud link resource", + "x-ms-parameter-location": "method" + }, + "scriptExecutionName": { + "name": "scriptExecutionName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the user-invoked script execution resource", + "x-ms-parameter-location": "method" + }, + "scriptPackageName": { + "name": "scriptPackageName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the script package in the private cloud", + "x-ms-parameter-location": "method" + }, + "scriptCmdletName": { + "name": "scriptCmdletName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the script cmdlet resource in the script package in the private cloud", + "x-ms-parameter-location": "method" + }, + "scriptOutputStreamType": { + "name": "scriptOutputStreamType", + "in": "body", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Information", + "Warning", + "Output", + "Error" + ], + "x-ms-enum": { + "name": "ScriptOutputStreamType", + "modelAsString": true + } + } + }, + "description": "Name of the desired output stream to return. If not provided, will return all. An empty array will return nothing", + "x-ms-parameter-location": "method" + } + }, + "paths": { + "/providers/Microsoft.AVS/operations": { + "get": { + "tags": [ + "Operations" + ], + "description": "Lists all of the available operations", + "operationId": "Operations_List", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request has succeeded", + "schema": { + "$ref": "#/definitions/OperationList" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Operations_List": { + "$ref": "./examples/Operations_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.AVS/locations/{location}/checkTrialAvailability": { + "post": { + "tags": [ + "Locations" + ], + "description": "Return trial status for subscription by region", + "operationId": "Locations_CheckTrialAvailability", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "Azure region" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request has succeeded", + "schema": { + "$ref": "#/definitions/Trial" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Locations_CheckTrialAvailability": { + "$ref": "./examples/Locations_CheckTrialAvailability.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.AVS/locations/{location}/checkQuotaAvailability": { + "post": { + "tags": [ + "Locations" + ], + "description": "Return quota for subscription by region", + "operationId": "Locations_CheckQuotaAvailability", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "Azure region" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request has succeeded", + "schema": { + "$ref": "#/definitions/Quota" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Locations_CheckQuotaAvailability": { + "$ref": "./examples/Locations_CheckQuotaAvailability.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds": { + "get": { + "operationId": "PrivateClouds_List", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "tags": [ + "PrivateClouds" + ], + "summary": "List private clouds in a resource group", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/PrivateCloudList" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "PrivateClouds_List": { + "$ref": "./examples/PrivateClouds_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.AVS/privateClouds": { + "get": { + "operationId": "PrivateClouds_ListInSubscription", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "tags": [ + "PrivateClouds" + ], + "summary": "List private clouds in a subscription", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/PrivateCloudList" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "PrivateClouds_ListInSubscription": { + "$ref": "./examples/PrivateClouds_ListInSubscription.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}": { + "get": { + "operationId": "PrivateClouds_Get", + "tags": [ + "PrivateClouds" + ], + "summary": "Get a private cloud", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/PrivateCloud" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "PrivateClouds_Get": { + "$ref": "./examples/PrivateClouds_Get.json" + } + } + }, + "put": { + "operationId": "PrivateClouds_CreateOrUpdate", + "x-ms-long-running-operation": true, + "tags": [ + "PrivateClouds" + ], + "summary": "Create or update a private cloud", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "name": "privateCloud", + "description": "The private cloud", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateCloud" + } + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/PrivateCloud" + } + }, + "201": { + "description": "accepted operation", + "schema": { + "$ref": "#/definitions/PrivateCloud" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "PrivateClouds_CreateOrUpdate": { + "$ref": "./examples/PrivateClouds_CreateOrUpdate.json" + } + } + }, + "patch": { + "operationId": "PrivateClouds_Update", + "x-ms-long-running-operation": true, + "tags": [ + "PrivateClouds" + ], + "summary": "Update a private cloud", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "name": "privateCloudUpdate", + "description": "The private cloud properties to be updated", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateCloudUpdate" + } + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/PrivateCloud" + } + }, + "201": { + "description": "accepted operation", + "schema": { + "$ref": "#/definitions/PrivateCloud" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "PrivateClouds_Update": { + "$ref": "./examples/PrivateClouds_Update.json" + } + } + }, + "delete": { + "operationId": "PrivateClouds_Delete", + "x-ms-long-running-operation": true, + "tags": [ + "PrivateClouds" + ], + "summary": "Delete a private cloud", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The delete has succeeded" + }, + "202": { + "description": "Accepted. The delete will complete asynchronously" + }, + "204": { + "description": "No Content. No private cloud to delete" + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "PrivateClouds_Delete": { + "$ref": "./examples/PrivateClouds_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/rotateVcenterPassword": { + "post": { + "operationId": "PrivateClouds_RotateVcenterPassword", + "tags": [ + "PrivateClouds" + ], + "summary": "Rotate the vCenter password", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-long-running-operation": true, + "responses": { + "202": { + "description": "The password rotation has started" + }, + "204": { + "description": "The password rotation was successful" + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "PrivateClouds_RotateVcenterPassword": { + "$ref": "./examples/PrivateClouds_RotateVcenterPassword.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/rotateNsxtPassword": { + "post": { + "operationId": "PrivateClouds_RotateNsxtPassword", + "tags": [ + "PrivateClouds" + ], + "summary": "Rotate the NSX-T Manager password", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-long-running-operation": true, + "responses": { + "202": { + "description": "The password rotation has started" + }, + "204": { + "description": "The password rotation was successful" + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "PrivateClouds_RotateNsxtPassword": { + "$ref": "./examples/PrivateClouds_RotateNsxtPassword.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/clusters": { + "get": { + "operationId": "Clusters_List", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "tags": [ + "Clusters" + ], + "summary": "List clusters in a private cloud", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/ClusterList" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Clusters_List": { + "$ref": "./examples/Clusters_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/clusters/{clusterName}": { + "get": { + "operationId": "Clusters_Get", + "tags": [ + "Clusters" + ], + "summary": "Get a cluster by name in a private cloud", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/clusterName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Clusters_Get": { + "$ref": "./examples/Clusters_Get.json" + } + } + }, + "put": { + "operationId": "Clusters_CreateOrUpdate", + "x-ms-long-running-operation": true, + "tags": [ + "Clusters" + ], + "summary": "Create or update a cluster in a private cloud", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "privateCloudName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private cloud." + }, + { + "$ref": "#/parameters/clusterName" + }, + { + "name": "cluster", + "description": "A cluster in the private cloud", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "201": { + "description": "accepted operation", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Clusters_CreateOrUpdate": { + "$ref": "./examples/Clusters_CreateOrUpdate.json" + } + } + }, + "patch": { + "operationId": "Clusters_Update", + "x-ms-long-running-operation": true, + "tags": [ + "Clusters" + ], + "summary": "Update a cluster in a private cloud", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/clusterName" + }, + { + "name": "clusterUpdate", + "description": "The cluster properties to be updated", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ClusterUpdate" + } + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "201": { + "description": "accepted operation", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Clusters_Update": { + "$ref": "./examples/Clusters_Update.json" + } + } + }, + "delete": { + "operationId": "Clusters_Delete", + "x-ms-long-running-operation": true, + "tags": [ + "Clusters" + ], + "summary": "Delete a cluster in a private cloud", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/clusterName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The delete has succeeded" + }, + "202": { + "description": "Accepted. The delete will complete asynchronously" + }, + "204": { + "description": "No Content. No cluster to delete" + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Clusters_Delete": { + "$ref": "./examples/Clusters_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/clusters/{clusterName}/datastores": { + "get": { + "operationId": "Datastores_List", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "tags": [ + "Datastores" + ], + "summary": "List datastores in a private cloud cluster", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/clusterName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/DatastoreList" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Datastores_List": { + "$ref": "./examples/Datastores_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/clusters/{clusterName}/datastores/{datastoreName}": { + "get": { + "operationId": "Datastores_Get", + "tags": [ + "Datastores" + ], + "summary": "Get a datastore in a private cloud cluster", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/clusterName" + }, + { + "$ref": "#/parameters/datastoreName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/Datastore" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Datastores_Get": { + "$ref": "./examples/Datastores_Get.json" + } + } + }, + "put": { + "operationId": "Datastores_CreateOrUpdate", + "x-ms-long-running-operation": true, + "tags": [ + "Datastores" + ], + "summary": "Create or update a datastore in a private cloud cluster", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/clusterName" + }, + { + "$ref": "#/parameters/datastoreName" + }, + { + "name": "datastore", + "description": "A datastore in a private cloud cluster", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Datastore" + } + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/Datastore" + } + }, + "201": { + "description": "accepted operation", + "schema": { + "$ref": "#/definitions/Datastore" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Datastores_CreateOrUpdate": { + "$ref": "./examples/Datastores_CreateOrUpdate.json" + } + } + }, + "delete": { + "operationId": "Datastores_Delete", + "x-ms-long-running-operation": true, + "tags": [ + "Datastores" + ], + "summary": "Delete a datastore in a private cloud cluster", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/clusterName" + }, + { + "$ref": "#/parameters/datastoreName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The delete has succeeded" + }, + "202": { + "description": "Accepted. The delete will complete asynchronously" + }, + "204": { + "description": "No Content. No datastore to delete" + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Datastores_Delete": { + "$ref": "./examples/Datastores_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/listAdminCredentials": { + "post": { + "operationId": "PrivateClouds_ListAdminCredentials", + "tags": [ + "PrivateClouds" + ], + "summary": "List the admin credentials for the private cloud", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/AdminCredentials" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "PrivateClouds_ListAdminCredentials": { + "$ref": "./examples/PrivateClouds_ListAdminCredentials.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/hcxEnterpriseSites": { + "get": { + "operationId": "HcxEnterpriseSites_List", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "tags": [ + "HcxEnterpriseSites" + ], + "summary": "List HCX Enterprise Sites in a private cloud", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/HcxEnterpriseSiteList" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "HcxEnterpriseSites_List": { + "$ref": "./examples/HcxEnterpriseSites_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/hcxEnterpriseSites/{hcxEnterpriseSiteName}": { + "get": { + "operationId": "HcxEnterpriseSites_Get", + "tags": [ + "HcxEnterpriseSites" + ], + "summary": "Get an HCX Enterprise Site by name in a private cloud", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/hcxEnterpriseSiteName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/HcxEnterpriseSite" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "HcxEnterpriseSites_Get": { + "$ref": "./examples/HcxEnterpriseSites_Get.json" + } + } + }, + "put": { + "operationId": "HcxEnterpriseSites_CreateOrUpdate", + "tags": [ + "HcxEnterpriseSites" + ], + "summary": "Create or update an HCX Enterprise Site in a private cloud", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "privateCloudName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private cloud." + }, + { + "$ref": "#/parameters/hcxEnterpriseSiteName" + }, + { + "name": "hcxEnterpriseSite", + "description": "The HCX Enterprise Site", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/HcxEnterpriseSite" + } + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "successful update", + "schema": { + "$ref": "#/definitions/HcxEnterpriseSite" + } + }, + "201": { + "description": "successful create", + "schema": { + "$ref": "#/definitions/HcxEnterpriseSite" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "HcxEnterpriseSites_CreateOrUpdate": { + "$ref": "./examples/HcxEnterpriseSites_CreateOrUpdate.json" + } + } + }, + "delete": { + "operationId": "HcxEnterpriseSites_Delete", + "tags": [ + "HcxEnterpriseSites" + ], + "summary": "Delete an HCX Enterprise Site in a private cloud", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/hcxEnterpriseSiteName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The delete has succeeded" + }, + "204": { + "description": "No Content. No HCX Enterprise Site to delete" + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "HcxEnterpriseSites_Delete": { + "$ref": "./examples/HcxEnterpriseSites_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/authorizations": { + "get": { + "operationId": "Authorizations_List", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "tags": [ + "Authorizations" + ], + "summary": "List ExpressRoute Circuit Authorizations in a private cloud", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/ExpressRouteAuthorizationList" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Authorizations_List": { + "$ref": "./examples/Authorizations_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/authorizations/{authorizationName}": { + "get": { + "operationId": "Authorizations_Get", + "tags": [ + "Authorizations" + ], + "summary": "Get an ExpressRoute Circuit Authorization by name in a private cloud", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/authorizationName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/ExpressRouteAuthorization" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Authorizations_Get": { + "$ref": "./examples/Authorizations_Get.json" + } + } + }, + "put": { + "operationId": "Authorizations_CreateOrUpdate", + "x-ms-long-running-operation": true, + "tags": [ + "Authorizations" + ], + "summary": "Create or update an ExpressRoute Circuit Authorization in a private cloud", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "privateCloudName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private cloud." + }, + { + "$ref": "#/parameters/authorizationName" + }, + { + "name": "authorization", + "description": "An ExpressRoute Circuit Authorization", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteAuthorization" + } + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/ExpressRouteAuthorization" + } + }, + "201": { + "description": "accepted operation", + "schema": { + "$ref": "#/definitions/ExpressRouteAuthorization" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Authorizations_CreateOrUpdate": { + "$ref": "./examples/Authorizations_CreateOrUpdate.json" + } + } + }, + "delete": { + "operationId": "Authorizations_Delete", + "x-ms-long-running-operation": true, + "tags": [ + "Authorizations" + ], + "summary": "Delete an ExpressRoute Circuit Authorization in a private cloud", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/authorizationName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The delete has succeeded" + }, + "202": { + "description": "Accepted. The delete will complete asynchronously" + }, + "204": { + "description": "No Content. No ExpressRoute Circuit Authorization to delete" + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Authorizations_Delete": { + "$ref": "./examples/Authorizations_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/globalReachConnections": { + "get": { + "operationId": "GlobalReachConnections_List", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "tags": [ + "GlobalReachConnections" + ], + "summary": "List global reach connections in a private cloud", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/GlobalReachConnectionList" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GlobalReachConnections_List": { + "$ref": "./examples/GlobalReachConnections_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/globalReachConnections/{globalReachConnectionName}": { + "get": { + "operationId": "GlobalReachConnections_Get", + "tags": [ + "GlobalReachConnections" + ], + "summary": "Get a global reach connection by name in a private cloud", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/globalReachConnectionName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/GlobalReachConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GlobalReachConnections_Get": { + "$ref": "./examples/GlobalReachConnections_Get.json" + } + } + }, + "put": { + "operationId": "GlobalReachConnections_CreateOrUpdate", + "x-ms-long-running-operation": true, + "tags": [ + "GlobalReachConnections" + ], + "summary": "Create or update a global reach connection in a private cloud", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "privateCloudName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private cloud." + }, + { + "$ref": "#/parameters/globalReachConnectionName" + }, + { + "name": "globalReachConnection", + "description": "A global reach connection in the private cloud", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GlobalReachConnection" + } + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/GlobalReachConnection" + } + }, + "201": { + "description": "accepted operation", + "schema": { + "$ref": "#/definitions/GlobalReachConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GlobalReachConnections_CreateOrUpdate": { + "$ref": "./examples/GlobalReachConnections_CreateOrUpdate.json" + } + } + }, + "delete": { + "operationId": "GlobalReachConnections_Delete", + "x-ms-long-running-operation": true, + "tags": [ + "GlobalReachConnections" + ], + "summary": "Delete a global reach connection in a private cloud", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/globalReachConnectionName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The delete has succeeded" + }, + "202": { + "description": "Accepted. The delete will complete asynchronously" + }, + "204": { + "description": "No Content. No global reach connection to delete" + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GlobalReachConnections_Delete": { + "$ref": "./examples/GlobalReachConnections_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/workloadNetworks/default/segments": { + "get": { + "operationId": "WorkloadNetworks_ListSegments", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "tags": [ + "WorkloadNetworks" + ], + "summary": "List of segments in a private cloud workload network.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/WorkloadNetworkSegmentsList" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "WorkloadNetworks_ListSegments": { + "$ref": "./examples/WorkloadNetworks_ListSegments.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/workloadNetworks/default/segments/{segmentId}": { + "get": { + "operationId": "WorkloadNetworks_GetSegment", + "tags": [ + "WorkloadNetworks" + ], + "summary": "Get a segment by id in a private cloud workload network.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/segmentId" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/WorkloadNetworkSegment" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "WorkloadNetworks_GetSegment": { + "$ref": "./examples/WorkloadNetworks_GetSegments.json" + } + } + }, + "put": { + "operationId": "WorkloadNetworks_CreateSegments", + "x-ms-long-running-operation": true, + "tags": [ + "WorkloadNetworks" + ], + "summary": "Create a segment by id in a private cloud workload network.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/segmentId" + }, + { + "name": "workloadNetworkSegment", + "description": "NSX Segment", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/WorkloadNetworkSegment" + } + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/WorkloadNetworkSegment" + } + }, + "201": { + "description": "accepted operation", + "schema": { + "$ref": "#/definitions/WorkloadNetworkSegment" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "WorkloadNetworks_CreateSegments": { + "$ref": "./examples/WorkloadNetworks_CreateSegments.json" + } + } + }, + "patch": { + "operationId": "WorkloadNetworks_UpdateSegments", + "x-ms-long-running-operation": true, + "tags": [ + "WorkloadNetworks" + ], + "summary": "Create or update a segment by id in a private cloud workload network.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/segmentId" + }, + { + "name": "workloadNetworkSegment", + "description": "NSX Segment", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/WorkloadNetworkSegment" + } + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/WorkloadNetworkSegment" + } + }, + "202": { + "description": "Accepted. The patch will complete asynchronously" + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "WorkloadNetworks_UpdateSegments": { + "$ref": "./examples/WorkloadNetworks_UpdateSegments.json" + } + } + }, + "delete": { + "operationId": "WorkloadNetworks_DeleteSegment", + "x-ms-long-running-operation": true, + "tags": [ + "WorkloadNetworks" + ], + "summary": "Delete a segment by id in a private cloud workload network.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/segmentId" + } + ], + "responses": { + "200": { + "description": "OK. The delete has succeeded" + }, + "202": { + "description": "Accepted. The delete will complete asynchronously" + }, + "204": { + "description": "No Content. No segment to delete" + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "WorkloadNetworks_DeleteSegment": { + "$ref": "./examples/WorkloadNetworks_DeleteSegments.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/workloadNetworks/default/dhcpConfigurations": { + "get": { + "operationId": "WorkloadNetworks_ListDhcp", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "tags": [ + "WorkloadNetworks" + ], + "summary": "List dhcp in a private cloud workload network.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/WorkloadNetworkDhcpList" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "WorkloadNetworks_ListDhcp": { + "$ref": "./examples/WorkloadNetworks_ListDhcpConfigurations.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/workloadNetworks/default/dhcpConfigurations/{dhcpId}": { + "get": { + "operationId": "WorkloadNetworks_GetDhcp", + "tags": [ + "WorkloadNetworks" + ], + "summary": "Get dhcp by id in a private cloud workload network.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/dhcpId" + }, + { + "$ref": "#/parameters/privateCloudName" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/WorkloadNetworkDhcp" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "WorkloadNetworks_GetDhcp": { + "$ref": "./examples/WorkloadNetworks_GetDhcpConfigurations.json" + } + } + }, + "put": { + "operationId": "WorkloadNetworks_CreateDhcp", + "x-ms-long-running-operation": true, + "tags": [ + "WorkloadNetworks" + ], + "summary": "Create dhcp by id in a private cloud workload network.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/dhcpId" + }, + { + "name": "workloadNetworkDhcp", + "description": "NSX DHCP", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/WorkloadNetworkDhcp" + } + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/WorkloadNetworkDhcp" + } + }, + "201": { + "description": "accepted operation", + "schema": { + "$ref": "#/definitions/WorkloadNetworkDhcp" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "WorkloadNetworks_CreateDhcp": { + "$ref": "./examples/WorkloadNetworks_CreateDhcpConfigurations.json" + } + } + }, + "patch": { + "operationId": "WorkloadNetworks_UpdateDhcp", + "x-ms-long-running-operation": true, + "tags": [ + "WorkloadNetworks" + ], + "summary": "Create or update dhcp by id in a private cloud workload network.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/dhcpId" + }, + { + "name": "workloadNetworkDhcp", + "description": "NSX DHCP", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/WorkloadNetworkDhcp" + } + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/WorkloadNetworkDhcp" + } + }, + "202": { + "description": "Accepted. The patch will complete asynchronously" + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "WorkloadNetworks_UpdateDhcp": { + "$ref": "./examples/WorkloadNetworks_UpdateDhcpConfigurations.json" + } + } + }, + "delete": { + "operationId": "WorkloadNetworks_DeleteDhcp", + "x-ms-long-running-operation": true, + "tags": [ + "WorkloadNetworks" + ], + "summary": "Delete dhcp by id in a private cloud workload network.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/dhcpId" + } + ], + "responses": { + "200": { + "description": "OK. The delete has succeeded" + }, + "202": { + "description": "Accepted. The delete will complete asynchronously" + }, + "204": { + "description": "No Content. No DHCP configuration to delete" + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "WorkloadNetworks_DeleteDhcp": { + "$ref": "./examples/WorkloadNetworks_DeleteDhcpConfigurations.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/workloadNetworks/default/gateways": { + "get": { + "operationId": "WorkloadNetworks_ListGateways", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "tags": [ + "WorkloadNetworks" + ], + "summary": "List of gateways in a private cloud workload network.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/WorkloadNetworkGatewayList" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "WorkloadNetworks_ListGateways": { + "$ref": "./examples/WorkloadNetworks_ListGateways.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/workloadNetworks/default/gateways/{gatewayId}": { + "get": { + "operationId": "WorkloadNetworks_GetGateway", + "tags": [ + "WorkloadNetworks" + ], + "summary": "Get a gateway by id in a private cloud workload network.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/gatewayId" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/WorkloadNetworkGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "WorkloadNetworks_GetGateway": { + "$ref": "./examples/WorkloadNetworks_GetGateway.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/workloadNetworks/default/portMirroringProfiles": { + "get": { + "operationId": "WorkloadNetworks_ListPortMirroring", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "tags": [ + "WorkloadNetworks" + ], + "summary": "List of port mirroring profiles in a private cloud workload network.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/WorkloadNetworkPortMirroringList" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "WorkloadNetworks_ListPortMirroring": { + "$ref": "./examples/WorkloadNetworks_ListPortMirroringProfiles.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/workloadNetworks/default/portMirroringProfiles/{portMirroringId}": { + "get": { + "operationId": "WorkloadNetworks_GetPortMirroring", + "tags": [ + "WorkloadNetworks" + ], + "summary": "Get a port mirroring profile by id in a private cloud workload network.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/portMirroringId" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/WorkloadNetworkPortMirroring" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "WorkloadNetworks_GetPortMirroring": { + "$ref": "./examples/WorkloadNetworks_GetPortMirroringProfiles.json" + } + } + }, + "put": { + "operationId": "WorkloadNetworks_CreatePortMirroring", + "x-ms-long-running-operation": true, + "tags": [ + "WorkloadNetworks" + ], + "summary": "Create a port mirroring profile by id in a private cloud workload network.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/portMirroringId" + }, + { + "name": "workloadNetworkPortMirroring", + "description": "NSX port mirroring", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/WorkloadNetworkPortMirroring" + } + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/WorkloadNetworkPortMirroring" + } + }, + "201": { + "description": "accepted operation", + "schema": { + "$ref": "#/definitions/WorkloadNetworkPortMirroring" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "WorkloadNetworks_CreatePortMirroring": { + "$ref": "./examples/WorkloadNetworks_CreatePortMirroringProfiles.json" + } + } + }, + "patch": { + "operationId": "WorkloadNetworks_UpdatePortMirroring", + "x-ms-long-running-operation": true, + "tags": [ + "WorkloadNetworks" + ], + "summary": "Create or update a port mirroring profile by id in a private cloud workload network.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/portMirroringId" + }, + { + "name": "workloadNetworkPortMirroring", + "description": "NSX port mirroring", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/WorkloadNetworkPortMirroring" + } + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/WorkloadNetworkPortMirroring" + } + }, + "202": { + "description": "Accepted. The patch will complete asynchronously" + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "WorkloadNetworks_UpdatePortMirroring": { + "$ref": "./examples/WorkloadNetworks_UpdatePortMirroringProfiles.json" + } + } + }, + "delete": { + "operationId": "WorkloadNetworks_DeletePortMirroring", + "x-ms-long-running-operation": true, + "tags": [ + "WorkloadNetworks" + ], + "summary": "Delete a port mirroring profile by id in a private cloud workload network.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/portMirroringId" + }, + { + "$ref": "#/parameters/privateCloudName" + } + ], + "responses": { + "200": { + "description": "OK. The delete has succeeded" + }, + "202": { + "description": "Accepted. The delete will complete asynchronously" + }, + "204": { + "description": "No Content. No port mirroring profile to delete" + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "WorkloadNetworks_DeletePortMirroring": { + "$ref": "./examples/WorkloadNetworks_DeletePortMirroringProfiles.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/workloadNetworks/default/vmGroups": { + "get": { + "operationId": "WorkloadNetworks_ListVMGroups", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "tags": [ + "WorkloadNetworks" + ], + "summary": "List of vm groups in a private cloud workload network.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/WorkloadNetworkVMGroupsList" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "WorkloadNetworks_ListVMGroups": { + "$ref": "./examples/WorkloadNetworks_ListVMGroups.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/workloadNetworks/default/vmGroups/{vmGroupId}": { + "get": { + "operationId": "WorkloadNetworks_GetVMGroup", + "tags": [ + "WorkloadNetworks" + ], + "summary": "Get a vm group by id in a private cloud workload network.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/vmGroupId" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/WorkloadNetworkVMGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "WorkloadNetworks_GetVMGroup": { + "$ref": "./examples/WorkloadNetworks_GetVMGroups.json" + } + } + }, + "put": { + "operationId": "WorkloadNetworks_CreateVMGroup", + "x-ms-long-running-operation": true, + "tags": [ + "WorkloadNetworks" + ], + "summary": "Create a vm group by id in a private cloud workload network.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/vmGroupId" + }, + { + "name": "workloadNetworkVMGroup", + "description": "NSX VM Group", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/WorkloadNetworkVMGroup" + } + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/WorkloadNetworkVMGroup" + } + }, + "201": { + "description": "accepted operation", + "schema": { + "$ref": "#/definitions/WorkloadNetworkVMGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "WorkloadNetworks_CreateVMGroup": { + "$ref": "./examples/WorkloadNetworks_CreateVMGroups.json" + } + } + }, + "patch": { + "operationId": "WorkloadNetworks_UpdateVMGroup", + "x-ms-long-running-operation": true, + "tags": [ + "WorkloadNetworks" + ], + "summary": "Create or update a vm group by id in a private cloud workload network.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/vmGroupId" + }, + { + "name": "workloadNetworkVMGroup", + "description": "NSX VM Group", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/WorkloadNetworkVMGroup" + } + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/WorkloadNetworkVMGroup" + } + }, + "202": { + "description": "Accepted. The patch will complete asynchronously" + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "WorkloadNetworks_UpdateVMGroup": { + "$ref": "./examples/WorkloadNetworks_UpdateVMGroups.json" + } + } + }, + "delete": { + "operationId": "WorkloadNetworks_DeleteVMGroup", + "x-ms-long-running-operation": true, + "tags": [ + "WorkloadNetworks" + ], + "summary": "Delete a vm group by id in a private cloud workload network.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/vmGroupId" + }, + { + "$ref": "#/parameters/privateCloudName" + } + ], + "responses": { + "200": { + "description": "OK. The delete has succeeded" + }, + "202": { + "description": "Accepted. The delete will complete asynchronously" + }, + "204": { + "description": "No Content. No VM group to delete" + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "WorkloadNetworks_DeleteVMGroup": { + "$ref": "./examples/WorkloadNetworks_DeleteVMGroups.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/workloadNetworks/default/virtualMachines": { + "get": { + "operationId": "WorkloadNetworks_ListVirtualMachines", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "tags": [ + "WorkloadNetworks" + ], + "summary": "List of virtual machines in a private cloud workload network.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/WorkloadNetworkVirtualMachinesList" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "WorkloadNetworks_ListVirtualMachines": { + "$ref": "./examples/WorkloadNetworks_ListVirtualMachines.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/workloadNetworks/default/virtualMachines/{virtualMachineId}": { + "get": { + "operationId": "WorkloadNetworks_GetVirtualMachine", + "tags": [ + "WorkloadNetworks" + ], + "summary": "Get a virtual machine by id in a private cloud workload network.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/virtualMachineId" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/WorkloadNetworkVirtualMachine" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "WorkloadNetworks_GetVirtualMachine": { + "$ref": "./examples/WorkloadNetworks_GetVirtualMachine.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/workloadNetworks/default/dnsServices": { + "get": { + "operationId": "WorkloadNetworks_ListDnsServices", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "tags": [ + "WorkloadNetworks" + ], + "summary": "List of DNS services in a private cloud workload network.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/WorkloadNetworkDnsServicesList" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "WorkloadNetworks_ListDnsServices": { + "$ref": "./examples/WorkloadNetworks_ListDnsServices.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/workloadNetworks/default/dnsServices/{dnsServiceId}": { + "get": { + "operationId": "WorkloadNetworks_GetDnsService", + "tags": [ + "WorkloadNetworks" + ], + "summary": "Get a DNS service by id in a private cloud workload network.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/dnsServiceId" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/WorkloadNetworkDnsService" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "WorkloadNetworks_GetDnsService": { + "$ref": "./examples/WorkloadNetworks_GetDnsServices.json" + } + } + }, + "put": { + "operationId": "WorkloadNetworks_CreateDnsService", + "x-ms-long-running-operation": true, + "tags": [ + "WorkloadNetworks" + ], + "summary": "Create a DNS service by id in a private cloud workload network.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/dnsServiceId" + }, + { + "name": "workloadNetworkDnsService", + "description": "NSX DNS Service", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/WorkloadNetworkDnsService" + } + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/WorkloadNetworkDnsService" + } + }, + "201": { + "description": "accepted operation", + "schema": { + "$ref": "#/definitions/WorkloadNetworkDnsService" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "WorkloadNetworks_CreateDnsService": { + "$ref": "./examples/WorkloadNetworks_CreateDnsServices.json" + } + } + }, + "patch": { + "operationId": "WorkloadNetworks_UpdateDnsService", + "x-ms-long-running-operation": true, + "tags": [ + "WorkloadNetworks" + ], + "summary": "Create or update a DNS service by id in a private cloud workload network.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/dnsServiceId" + }, + { + "name": "workloadNetworkDnsService", + "description": "NSX DNS Service", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/WorkloadNetworkDnsService" + } + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/WorkloadNetworkDnsService" + } + }, + "202": { + "description": "Accepted. The patch will complete asynchronously" + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "WorkloadNetworks_UpdateDnsService": { + "$ref": "./examples/WorkloadNetworks_UpdateDnsServices.json" + } + } + }, + "delete": { + "operationId": "WorkloadNetworks_DeleteDnsService", + "x-ms-long-running-operation": true, + "tags": [ + "WorkloadNetworks" + ], + "summary": "Delete a DNS service by id in a private cloud workload network.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/dnsServiceId" + }, + { + "$ref": "#/parameters/privateCloudName" + } + ], + "responses": { + "200": { + "description": "OK. The delete has succeeded" + }, + "202": { + "description": "Accepted. The delete will complete asynchronously" + }, + "204": { + "description": "No Content. No VM group to delete" + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "WorkloadNetworks_DeleteDnsService": { + "$ref": "./examples/WorkloadNetworks_DeleteDnsServices.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/workloadNetworks/default/dnsZones": { + "get": { + "operationId": "WorkloadNetworks_ListDnsZones", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "tags": [ + "WorkloadNetworks" + ], + "summary": "List of DNS zones in a private cloud workload network.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/WorkloadNetworkDnsZonesList" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "WorkloadNetworks_ListDnsZones": { + "$ref": "./examples/WorkloadNetworks_ListDnsZones.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/workloadNetworks/default/dnsZones/{dnsZoneId}": { + "get": { + "operationId": "WorkloadNetworks_GetDnsZone", + "tags": [ + "WorkloadNetworks" + ], + "summary": "Get a DNS zone by id in a private cloud workload network.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/dnsZoneId" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/WorkloadNetworkDnsZone" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "WorkloadNetworks_GetDnsZone": { + "$ref": "./examples/WorkloadNetworks_GetDnsZones.json" + } + } + }, + "put": { + "operationId": "WorkloadNetworks_CreateDnsZone", + "x-ms-long-running-operation": true, + "tags": [ + "WorkloadNetworks" + ], + "summary": "Create a DNS zone by id in a private cloud workload network.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/dnsZoneId" + }, + { + "name": "workloadNetworkDnsZone", + "description": "NSX DNS Zone", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/WorkloadNetworkDnsZone" + } + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/WorkloadNetworkDnsZone" + } + }, + "201": { + "description": "accepted operation", + "schema": { + "$ref": "#/definitions/WorkloadNetworkDnsZone" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "WorkloadNetworks_CreateDnsZone": { + "$ref": "./examples/WorkloadNetworks_CreateDnsZones.json" + } + } + }, + "patch": { + "operationId": "WorkloadNetworks_UpdateDnsZone", + "x-ms-long-running-operation": true, + "tags": [ + "WorkloadNetworks" + ], + "summary": "Create or update a DNS zone by id in a private cloud workload network.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/dnsZoneId" + }, + { + "name": "workloadNetworkDnsZone", + "description": "NSX DNS Zone", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/WorkloadNetworkDnsZone" + } + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/WorkloadNetworkDnsZone" + } + }, + "202": { + "description": "Accepted. The patch will complete asynchronously" + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "WorkloadNetworks_UpdateDnsZone": { + "$ref": "./examples/WorkloadNetworks_UpdateDnsZones.json" + } + } + }, + "delete": { + "operationId": "WorkloadNetworks_DeleteDnsZone", + "x-ms-long-running-operation": true, + "tags": [ + "WorkloadNetworks" + ], + "summary": "Delete a DNS zone by id in a private cloud workload network.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/dnsZoneId" + }, + { + "$ref": "#/parameters/privateCloudName" + } + ], + "responses": { + "200": { + "description": "OK. The delete has succeeded" + }, + "202": { + "description": "Accepted. The delete will complete asynchronously" + }, + "204": { + "description": "No Content. No VM group to delete" + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "WorkloadNetworks_DeleteDnsZone": { + "$ref": "./examples/WorkloadNetworks_DeleteDnsZones.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/workloadNetworks/default/publicIPs": { + "get": { + "operationId": "WorkloadNetworks_ListPublicIPs", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "tags": [ + "WorkloadNetworks" + ], + "summary": "List of Public IP Blocks in a private cloud workload network.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/WorkloadNetworkPublicIPsList" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "WorkloadNetworks_ListPublicIPs": { + "$ref": "./examples/WorkloadNetworks_ListPublicIPs.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/workloadNetworks/default/publicIPs/{publicIPId}": { + "get": { + "operationId": "WorkloadNetworks_GetPublicIP", + "tags": [ + "WorkloadNetworks" + ], + "summary": "Get a Public IP Block by id in a private cloud workload network.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/publicIPId" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/WorkloadNetworkPublicIP" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "WorkloadNetworks_GetPublicIP": { + "$ref": "./examples/WorkloadNetworks_GetPublicIPs.json" + } + } + }, + "put": { + "operationId": "WorkloadNetworks_CreatePublicIP", + "x-ms-long-running-operation": true, + "tags": [ + "WorkloadNetworks" + ], + "summary": "Create a Public IP Block by id in a private cloud workload network.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/publicIPId" + }, + { + "name": "workloadNetworkPublicIP", + "description": "NSX Public IP Block", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/WorkloadNetworkPublicIP" + } + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/WorkloadNetworkPublicIP" + } + }, + "201": { + "description": "accepted operation", + "schema": { + "$ref": "#/definitions/WorkloadNetworkPublicIP" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "WorkloadNetworks_CreatePublicIP": { + "$ref": "./examples/WorkloadNetworks_CreatePublicIPs.json" + } + } + }, + "delete": { + "operationId": "WorkloadNetworks_DeletePublicIP", + "x-ms-long-running-operation": true, + "tags": [ + "WorkloadNetworks" + ], + "summary": "Delete a Public IP Block by id in a private cloud workload network.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/publicIPId" + }, + { + "$ref": "#/parameters/privateCloudName" + } + ], + "responses": { + "200": { + "description": "OK. The delete has succeeded" + }, + "202": { + "description": "Accepted. The delete will complete asynchronously" + }, + "204": { + "description": "No Content. No VM group to delete" + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "WorkloadNetworks_DeletePublicIP": { + "$ref": "./examples/WorkloadNetworks_DeletePublicIPs.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/cloudLinks": { + "get": { + "operationId": "CloudLinks_List", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "tags": [ + "CloudLinks" + ], + "summary": "List cloud link in a private cloud", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/CloudLinkList" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "CloudLinks_List": { + "$ref": "./examples/CloudLinks_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/cloudLinks/{cloudLinkName}": { + "get": { + "operationId": "CloudLinks_Get", + "tags": [ + "CloudLinks" + ], + "summary": "Get an cloud link by name in a private cloud", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/cloudLinkName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/CloudLink" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "CloudLinks_Get": { + "$ref": "./examples/CloudLinks_Get.json" + } + } + }, + "put": { + "operationId": "CloudLinks_CreateOrUpdate", + "x-ms-long-running-operation": true, + "tags": [ + "CloudLinks" + ], + "summary": "Create or update a cloud link in a private cloud", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "privateCloudName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private cloud." + }, + { + "$ref": "#/parameters/cloudLinkName" + }, + { + "name": "cloudLink", + "description": "A cloud link in the private cloud", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CloudLink" + } + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/CloudLink" + } + }, + "201": { + "description": "accepted operation", + "schema": { + "$ref": "#/definitions/CloudLink" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "CloudLinks_CreateOrUpdate": { + "$ref": "./examples/CloudLinks_CreateOrUpdate.json" + } + } + }, + "delete": { + "operationId": "CloudLinks_Delete", + "x-ms-long-running-operation": true, + "tags": [ + "CloudLinks" + ], + "summary": "Delete a cloud link in a private cloud", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/cloudLinkName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The delete has succeeded" + }, + "202": { + "description": "Accepted. The delete will complete asynchronously" + }, + "204": { + "description": "No Content. No cloud link to delete" + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "CloudLinks_Delete": { + "$ref": "./examples/CloudLinks_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/addons": { + "get": { + "operationId": "Addons_List", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "tags": [ + "Addons" + ], + "summary": "List addons in a private cloud", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/AddonList" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Addons_List": { + "$ref": "./examples/Addons_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/addons/{addonName}": { + "get": { + "operationId": "Addons_Get", + "tags": [ + "Addons" + ], + "summary": "Get an addon by name in a private cloud", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/addonName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/Addon" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Addons_Get_SRM": { + "$ref": "./examples/Addons_Get_SRM.json" + }, + "Addons_Get_VR": { + "$ref": "./examples/Addons_Get_VR.json" + }, + "Addons_Get_HCX": { + "$ref": "./examples/Addons_Get_HCX.json" + } + } + }, + "put": { + "operationId": "Addons_CreateOrUpdate", + "x-ms-long-running-operation": true, + "tags": [ + "Addons" + ], + "summary": "Create or update a addon in a private cloud", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "privateCloudName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private cloud." + }, + { + "$ref": "#/parameters/addonName" + }, + { + "name": "addon", + "description": "A addon in the private cloud", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Addon" + } + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/Addon" + } + }, + "201": { + "description": "accepted operation", + "schema": { + "$ref": "#/definitions/Addon" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Addons_CreateOrUpdate_SRM": { + "$ref": "./examples/Addons_CreateOrUpdate_SRM.json" + }, + "Addons_CreateOrUpdate_VR": { + "$ref": "./examples/Addons_CreateOrUpdate_VR.json" + }, + "Addons_CreateOrUpdate_HCX": { + "$ref": "./examples/Addons_CreateOrUpdate_HCX.json" + } + } + }, + "delete": { + "operationId": "Addons_Delete", + "x-ms-long-running-operation": true, + "tags": [ + "Addons" + ], + "summary": "Delete a addon in a private cloud", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/addonName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The delete has succeeded" + }, + "202": { + "description": "Accepted. The delete will complete asynchronously" + }, + "204": { + "description": "No Content. No addon to delete" + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Addons_Delete": { + "$ref": "./examples/Addons_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/scriptPackages": { + "get": { + "tags": [ + "Scripts" + ], + "description": "Return script packages available for a private cloud to run on their Private Cloud", + "operationId": "ScriptPackages_List", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request has succeeded", + "schema": { + "$ref": "#/definitions/ScriptPackagesList" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ScriptPackages_List": { + "$ref": "./examples/ScriptPackages_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/scriptPackages/{scriptPackageName}": { + "get": { + "tags": [ + "Scripts" + ], + "description": "Return script package available to run on an Private Cloud", + "operationId": "ScriptPackages_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/scriptPackageName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request has succeeded", + "schema": { + "$ref": "#/definitions/ScriptPackage" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ScriptPackages_Get": { + "$ref": "./examples/ScriptPackages_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/scriptPackages/{scriptPackageName}/scriptCmdlets": { + "get": { + "tags": [ + "Scripts" + ], + "description": "Return script cmdlet resources available for a private cloud to create a script execution resource on their Private Cloud", + "operationId": "ScriptCmdlets_List", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/scriptPackageName" + } + ], + "responses": { + "200": { + "description": "Request has succeeded", + "schema": { + "$ref": "#/definitions/ScriptCmdletsList" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ScriptCmdlets_List": { + "$ref": "./examples/ScriptCmdlets_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/scriptPackages/{scriptPackageName}/scriptCmdlets/{scriptCmdletName}": { + "get": { + "tags": [ + "Scripts" + ], + "description": "Return information about a script cmdlet resource in a specific package on a private cloud", + "operationId": "ScriptCmdlets_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/scriptPackageName" + }, + { + "$ref": "#/parameters/scriptCmdletName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request has succeeded", + "schema": { + "$ref": "#/definitions/ScriptCmdlet" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ScriptCmdlets_Get": { + "$ref": "./examples/ScriptCmdlets_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/scriptExecutions": { + "get": { + "operationId": "ScriptExecutions_List", + "tags": [ + "Scripts" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "summary": "Get an script execution resource by name in a private cloud", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/ScriptExecutionsList" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ScriptExecutions_List": { + "$ref": "./examples/ScriptExecutions_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/scriptExecutions/{scriptExecutionName}": { + "get": { + "operationId": "ScriptExecutions_Get", + "tags": [ + "Scripts" + ], + "summary": "Get an script execution resource by name in a private cloud", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/scriptExecutionName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/ScriptExecution" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ScriptExecutions_Get": { + "$ref": "./examples/ScriptExecutions_Get.json" + } + } + }, + "put": { + "operationId": "ScriptExecutions_CreateOrUpdate", + "x-ms-long-running-operation": true, + "tags": [ + "Scripts" + ], + "summary": "Create or update a script execution resource in a private cloud", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "privateCloudName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private cloud." + }, + { + "$ref": "#/parameters/scriptExecutionName" + }, + { + "name": "scriptExecution", + "description": "A script running in the private cloud", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScriptExecution" + } + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/ScriptExecution" + } + }, + "201": { + "description": "accepted operation", + "schema": { + "$ref": "#/definitions/ScriptExecution" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ScriptExecutions_CreateOrUpdate": { + "$ref": "./examples/ScriptExecutions_CreateOrUpdate.json" + } + } + }, + "delete": { + "operationId": "ScriptExecutions_Delete", + "x-ms-long-running-operation": true, + "tags": [ + "Scripts" + ], + "summary": "Cancel a ScriptExecution in a private cloud", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/scriptExecutionName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The delete has succeeded" + }, + "202": { + "description": "Accepted. The delete will complete asynchronously" + }, + "204": { + "description": "No Content. No script to cancel" + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ScriptExecutions_Delete": { + "$ref": "./examples/ScriptExecutions_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/scriptExecutions/{scriptExecutionName}/getExecutionLogs": { + "post": { + "tags": [ + "Scripts" + ], + "description": "Return the logs for a script execution resource", + "operationId": "ScriptExecutions_GetExecutionLogs", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/scriptExecutionName" + }, + { + "$ref": "#/parameters/scriptOutputStreamType" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request has succeeded", + "schema": { + "$ref": "#/definitions/ScriptExecution" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ScriptExecutions_GetExecutionLogs": { + "$ref": "./examples/ScriptExecutions_GetExecutionLogs.json" + } + } + } + } + }, + "definitions": { + "Trial": { + "description": "Subscription trial availability", + "properties": { + "status": { + "description": "Trial status", + "type": "string", + "enum": [ + "TrialAvailable", + "TrialUsed", + "TrialDisabled" + ], + "readOnly": true, + "x-ms-enum": { + "name": "TrialStatus", + "modelAsString": true + } + }, + "availableHosts": { + "description": "Number of trial hosts available", + "type": "integer", + "format": "int32", + "readOnly": true + } + } + }, + "Quota": { + "description": "Subscription quotas", + "properties": { + "hostsRemaining": { + "description": "Remaining hosts quota by sku type", + "type": "object", + "readOnly": true, + "additionalProperties": { + "type": "integer", + "format": "int32", + "readOnly": true + } + }, + "quotaEnabled": { + "description": "Host quota is active for current subscription", + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ], + "readOnly": true, + "x-ms-enum": { + "name": "QuotaEnabled", + "modelAsString": true + } + } + } + }, + "Resource": { + "description": "The core properties of ARM resources", + "properties": { + "id": { + "description": "Resource ID.", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Resource name.", + "readOnly": true, + "type": "string" + }, + "type": { + "description": "Resource type.", + "readOnly": true, + "type": "string" + } + }, + "x-ms-azure-resource": true + }, + "TrackedResource": { + "description": "The resource model definition for a ARM tracked top level resource", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "location": { + "type": "string", + "description": "Resource location" + }, + "tags": { + "description": "Resource tags", + "$ref": "#/definitions/ResourceTags" + } + } + }, + "ResourceTags": { + "description": "Resource tags", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-ms-mutability": [ + "read", + "create", + "update" + ] + }, + "ProxyResource": { + "description": "The resource model definition for a ARM proxy resource", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": {} + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "description": "An error returned by the API", + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "API error response" + }, + "OperationList": { + "description": "Pageable list of operations", + "properties": { + "value": { + "description": "List of operations", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Operation" + } + }, + "nextLink": { + "description": "URL to get the next page if any", + "type": "string", + "readOnly": true + } + } + }, + "Operation": { + "description": "A REST API operation", + "type": "object", + "properties": { + "name": { + "description": "Name of the operation being performed on this object", + "type": "string", + "readOnly": true + }, + "display": { + "description": "Contains the localized display information for this operation", + "readOnly": true, + "properties": { + "provider": { + "description": "Localized friendly form of the resource provider name", + "type": "string", + "readOnly": true + }, + "resource": { + "description": "Localized friendly form of the resource type related to this operation", + "type": "string", + "readOnly": true + }, + "operation": { + "description": "Localized friendly name for the operation", + "type": "string", + "readOnly": true + }, + "description": { + "description": "Localized friendly description for the operation", + "type": "string", + "readOnly": true + } + } + }, + "isDataAction": { + "description": "Gets or sets a value indicating whether the operation is a data action or not", + "type": "boolean" + }, + "origin": { + "description": "Origin of the operation", + "type": "string" + }, + "properties": { + "$ref": "#/definitions/OperationProperties", + "description": "Properties of the operation" + } + } + }, + "OperationProperties": { + "description": "Extra Operation properties", + "type": "object", + "properties": { + "serviceSpecification": { + "$ref": "#/definitions/ServiceSpecification", + "description": "Service specifications of the operation" + } + } + }, + "ServiceSpecification": { + "description": "Service specification payload", + "type": "object", + "properties": { + "logSpecifications": { + "description": "Specifications of the Log for Azure Monitoring", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/LogSpecification" + } + }, + "metricSpecifications": { + "description": "Specifications of the Metrics for Azure Monitoring", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/MetricSpecification" + } + } + } + }, + "LogSpecification": { + "description": "Specifications of the Log for Azure Monitoring", + "type": "object", + "properties": { + "name": { + "description": "Name of the log", + "type": "string" + }, + "displayName": { + "description": "Localized friendly display name of the log", + "type": "string" + }, + "blobDuration": { + "description": "Blob duration of the log", + "type": "string" + } + } + }, + "MetricSpecification": { + "description": "Specifications of the Metrics for Azure Monitoring", + "type": "object", + "properties": { + "name": { + "description": "Name of the metric", + "type": "string" + }, + "displayName": { + "description": "Localized friendly display name of the metric", + "type": "string" + }, + "displayDescription": { + "description": "Localized friendly description of the metric", + "type": "string" + }, + "unit": { + "description": "Unit that makes sense for the metric", + "type": "string" + }, + "category": { + "description": "Name of the metric category that the metric belongs to. A metric can only belong to a single category.", + "type": "string" + }, + "aggregationType": { + "description": "Only provide one value for this field. Valid values: Average, Minimum, Maximum, Total, Count.", + "type": "string" + }, + "supportedAggregationTypes": { + "description": "Supported aggregation types", + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + } + }, + "supportedTimeGrainTypes": { + "description": "Supported time grain types", + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + } + }, + "fillGapWithZero": { + "description": "Optional. If set to true, then zero will be returned for time duration where no metric is emitted/published.", + "type": "boolean" + }, + "dimensions": { + "description": "Dimensions of the metric", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/MetricDimension" + } + }, + "enableRegionalMdmAccount": { + "description": "Whether or not the service is using regional MDM accounts.", + "type": "string" + }, + "sourceMdmAccount": { + "description": "The name of the MDM account.", + "type": "string" + }, + "sourceMdmNamespace": { + "description": "The name of the MDM namespace.", + "type": "string" + } + } + }, + "MetricDimension": { + "description": "Specifications of the Dimension of metrics", + "type": "object", + "properties": { + "name": { + "description": "Name of the dimension", + "type": "string" + }, + "displayName": { + "description": "Localized friendly display name of the dimension", + "type": "string" + }, + "internalName": { + "description": "Name of the dimension as it appears in MDM", + "type": "string" + }, + "toBeExportedForShoebox": { + "description": "A boolean flag indicating whether this dimension should be included for the shoebox export scenario", + "type": "boolean" + } + } + }, + "ExpressRouteAuthorization": { + "description": "ExpressRoute Circuit Authorization", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "The properties of an ExpressRoute Circuit Authorization resource", + "$ref": "#/definitions/ExpressRouteAuthorizationProperties", + "x-ms-client-flatten": true, + "readOnly": true + } + } + }, + "ExpressRouteAuthorizationProperties": { + "description": "The properties of an ExpressRoute Circuit Authorization resource", + "properties": { + "provisioningState": { + "description": "The state of the ExpressRoute Circuit Authorization provisioning", + "type": "string", + "readOnly": true, + "enum": [ + "Succeeded", + "Failed", + "Updating" + ], + "x-ms-enum": { + "name": "ExpressRouteAuthorizationProvisioningState", + "modelAsString": true + } + }, + "expressRouteAuthorizationId": { + "description": "The ID of the ExpressRoute Circuit Authorization", + "type": "string", + "readOnly": true + }, + "expressRouteAuthorizationKey": { + "description": "The key of the ExpressRoute Circuit Authorization", + "type": "string", + "readOnly": true + } + } + }, + "ExpressRouteAuthorizationList": { + "description": "A paged list of ExpressRoute Circuit Authorizations", + "properties": { + "value": { + "description": "The items on a page", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ExpressRouteAuthorization" + } + }, + "nextLink": { + "description": "URL to get the next page if any", + "type": "string", + "readOnly": true + } + } + }, + "Circuit": { + "description": "An ExpressRoute Circuit", + "properties": { + "primarySubnet": { + "type": "string", + "readOnly": true, + "description": "CIDR of primary subnet" + }, + "secondarySubnet": { + "type": "string", + "readOnly": true, + "description": "CIDR of secondary subnet" + }, + "expressRouteID": { + "type": "string", + "readOnly": true, + "description": "Identifier of the ExpressRoute Circuit (Microsoft Colo only)" + }, + "expressRoutePrivatePeeringID": { + "type": "string", + "readOnly": true, + "description": "ExpressRoute Circuit private peering identifier" + } + } + }, + "Endpoints": { + "description": "Endpoint addresses", + "properties": { + "nsxtManager": { + "description": "Endpoint for the NSX-T Data Center manager", + "type": "string", + "readOnly": true + }, + "vcsa": { + "description": "Endpoint for Virtual Center Server Appliance", + "type": "string", + "readOnly": true + }, + "hcxCloudManager": { + "description": "Endpoint for the HCX Cloud Manager", + "type": "string", + "readOnly": true + } + } + }, + "IdentitySource": { + "description": "vCenter Single Sign On Identity Source", + "properties": { + "name": { + "description": "The name of the identity source", + "type": "string" + }, + "alias": { + "description": "The domain's NetBIOS name", + "type": "string" + }, + "domain": { + "description": "The domain's dns name", + "type": "string" + }, + "baseUserDN": { + "description": "The base distinguished name for users", + "type": "string" + }, + "baseGroupDN": { + "description": "The base distinguished name for groups", + "type": "string" + }, + "primaryServer": { + "description": "Primary server URL", + "type": "string" + }, + "secondaryServer": { + "description": "Secondary server URL", + "type": "string" + }, + "ssl": { + "description": "Protect LDAP communication using SSL certificate (LDAPS)", + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "SslEnum", + "modelAsString": true + } + }, + "username": { + "description": "The ID of an Active Directory user with a minimum of read-only access to Base DN for users and group", + "type": "string" + }, + "password": { + "description": "The password of the Active Directory user with a minimum of read-only access to Base DN for users and groups.", + "type": "string", + "x-ms-secret": true + } + } + }, + "PrivateCloud": { + "description": "A private cloud resource", + "required": [ + "location", + "sku" + ], + "allOf": [ + { + "$ref": "#/definitions/TrackedResource" + } + ], + "properties": { + "sku": { + "description": "The private cloud SKU", + "$ref": "#/definitions/Sku" + }, + "properties": { + "description": "The properties of a private cloud resource", + "$ref": "#/definitions/PrivateCloudProperties", + "x-ms-client-flatten": true + } + } + }, + "PrivateCloudUpdate": { + "description": "An update to a private cloud resource", + "properties": { + "tags": { + "description": "Resource tags", + "$ref": "#/definitions/ResourceTags" + }, + "properties": { + "description": "The updatable properties of a private cloud resource", + "$ref": "#/definitions/PrivateCloudUpdateProperties", + "x-ms-client-flatten": true + } + } + }, + "PrivateCloudUpdateProperties": { + "description": "The properties of a private cloud resource that may be updated", + "properties": { + "managementCluster": { + "description": "The default cluster used for management", + "$ref": "#/definitions/ManagementCluster" + }, + "internet": { + "description": "Connectivity to internet is enabled or disabled", + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ], + "default": "Disabled", + "x-ms-enum": { + "name": "InternetEnum", + "modelAsString": true + } + }, + "identitySources": { + "description": "vCenter Single Sign On Identity Sources", + "type": "array", + "items": { + "$ref": "#/definitions/IdentitySource" + } + } + } + }, + "PrivateCloudProperties": { + "description": "The properties of a private cloud resource", + "required": [ + "managementCluster", + "networkBlock" + ], + "allOf": [ + { + "$ref": "#/definitions/PrivateCloudUpdateProperties" + } + ], + "properties": { + "provisioningState": { + "description": "The provisioning state", + "type": "string", + "readOnly": true, + "enum": [ + "Succeeded", + "Failed", + "Cancelled", + "Pending", + "Building", + "Deleting", + "Updating" + ], + "x-ms-enum": { + "name": "PrivateCloudProvisioningState", + "modelAsString": true + } + }, + "circuit": { + "description": "An ExpressRoute Circuit", + "$ref": "#/definitions/Circuit" + }, + "endpoints": { + "description": "The endpoints", + "readOnly": true, + "$ref": "#/definitions/Endpoints" + }, + "networkBlock": { + "description": "The block of addresses should be unique across VNet in your subscription as well as on-premise. Make sure the CIDR format is conformed to (A.B.C.D/X) where A,B,C,D are between 0 and 255, and X is between 0 and 22", + "type": "string" + }, + "managementNetwork": { + "description": "Network used to access vCenter Server and NSX-T Manager", + "type": "string", + "readOnly": true + }, + "provisioningNetwork": { + "description": "Used for virtual machine cold migration, cloning, and snapshot migration", + "type": "string", + "readOnly": true + }, + "vmotionNetwork": { + "description": "Used for live migration of virtual machines", + "type": "string", + "readOnly": true + }, + "vcenterPassword": { + "description": "Optionally, set the vCenter admin password when the private cloud is created", + "type": "string", + "x-ms-secret": true + }, + "nsxtPassword": { + "description": "Optionally, set the NSX-T Manager password when the private cloud is created", + "type": "string", + "x-ms-secret": true + }, + "vcenterCertificateThumbprint": { + "description": "Thumbprint of the vCenter Server SSL certificate", + "type": "string", + "readOnly": true + }, + "nsxtCertificateThumbprint": { + "description": "Thumbprint of the NSX-T Manager SSL certificate", + "type": "string", + "readOnly": true + }, + "externalCloudLinks": { + "description": "Array of cloud link IDs from other clouds that connect to this one", + "type": "array", + "readOnly": true, + "items": { + "type": "string" + } + } + } + }, + "Cluster": { + "description": "A cluster resource", + "required": [ + "sku" + ], + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "sku": { + "description": "The cluster SKU", + "$ref": "#/definitions/Sku" + }, + "properties": { + "description": "The properties of a cluster resource", + "$ref": "#/definitions/ClusterProperties", + "x-ms-client-flatten": true + } + } + }, + "ClusterUpdate": { + "description": "An update of a cluster resource", + "properties": { + "properties": { + "description": "The properties of a cluster resource that may be updated", + "$ref": "#/definitions/ClusterUpdateProperties", + "x-ms-client-flatten": true + } + } + }, + "ClusterUpdateProperties": { + "description": "The properties of a cluster that may be updated", + "properties": { + "clusterSize": { + "description": "The cluster size", + "type": "integer", + "format": "int32" + } + } + }, + "ClusterProvisioningState": { + "description": "The state of the cluster provisioning", + "type": "string", + "readOnly": true, + "enum": [ + "Succeeded", + "Failed", + "Cancelled", + "Deleting", + "Updating" + ], + "x-ms-enum": { + "name": "ClusterProvisioningState", + "modelAsString": true + } + }, + "CommonClusterProperties": { + "description": "The common properties of a cluster", + "properties": { + "clusterSize": { + "description": "The cluster size", + "type": "integer", + "format": "int32" + }, + "provisioningState": { + "description": "The state of the cluster provisioning", + "$ref": "#/definitions/ClusterProvisioningState" + }, + "clusterId": { + "description": "The identity", + "type": "integer", + "format": "int32", + "readOnly": true + }, + "hosts": { + "description": "The hosts", + "type": "array", + "readOnly": true, + "items": { + "type": "string" + } + } + } + }, + "ManagementCluster": { + "description": "The properties of a management cluster", + "required": [ + "clusterSize" + ], + "allOf": [ + { + "$ref": "#/definitions/CommonClusterProperties" + } + ] + }, + "ClusterProperties": { + "description": "The properties of a cluster", + "allOf": [ + { + "$ref": "#/definitions/CommonClusterProperties" + } + ], + "properties": {} + }, + "PrivateCloudList": { + "description": "A paged list of private clouds", + "properties": { + "value": { + "description": "The items on the page", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/PrivateCloud" + } + }, + "nextLink": { + "description": "URL to get the next page if any", + "type": "string", + "readOnly": true + } + } + }, + "ClusterList": { + "description": "A paged list of clusters", + "properties": { + "value": { + "description": "The items on a page", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Cluster" + } + }, + "nextLink": { + "description": "URL to get the next page if any", + "type": "string", + "readOnly": true + } + } + }, + "Addon": { + "description": "An addon resource", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "The properties of an addon resource", + "$ref": "#/definitions/AddonProperties", + "x-ms-client-flatten": false + } + } + }, + "AddonProperties": { + "description": "The properties of an addon", + "discriminator": "addonType", + "properties": { + "addonType": { + "description": "The type of private cloud addon", + "type": "string", + "enum": [ + "SRM", + "VR", + "HCX" + ], + "x-ms-enum": { + "name": "AddonType", + "modelAsString": true + } + }, + "provisioningState": { + "description": "The state of the addon provisioning", + "type": "string", + "readOnly": true, + "enum": [ + "Succeeded", + "Failed", + "Cancelled", + "Building", + "Deleting", + "Updating" + ], + "x-ms-enum": { + "name": "AddonProvisioningState", + "modelAsString": true + } + } + }, + "required": [ + "addonType" + ] + }, + "AddonSrmProperties": { + "description": "The properties of a Site Recovery Manager (SRM) addon", + "x-ms-discriminator-value": "SRM", + "allOf": [ + { + "$ref": "#/definitions/AddonProperties" + } + ], + "properties": { + "licenseKey": { + "description": "The Site Recovery Manager (SRM) license", + "type": "string" + } + }, + "required": [ + "licenseKey" + ] + }, + "AddonVrProperties": { + "description": "The properties of a vSphere Replication (VR) addon", + "x-ms-discriminator-value": "VR", + "allOf": [ + { + "$ref": "#/definitions/AddonProperties" + } + ], + "properties": { + "vrsCount": { + "description": "The vSphere Replication Server (VRS) count", + "type": "integer", + "format": "int32" + } + }, + "required": [ + "vrsCount" + ] + }, + "AddonHcxProperties": { + "description": "The properties of an HCX addon", + "x-ms-discriminator-value": "HCX", + "allOf": [ + { + "$ref": "#/definitions/AddonProperties" + } + ], + "properties": { + "offer": { + "description": "The HCX offer, example VMware MaaS Cloud Provider (Enterprise)", + "type": "string" + } + }, + "required": [ + "offer" + ] + }, + "AddonList": { + "description": "A paged list of addons", + "properties": { + "value": { + "description": "The items on a page", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Addon" + } + }, + "nextLink": { + "description": "URL to get the next page if any", + "type": "string", + "readOnly": true + } + } + }, + "DatastoreList": { + "description": "A paged list of datastores", + "properties": { + "value": { + "description": "The items on a page", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Datastore" + } + }, + "nextLink": { + "description": "URL to get the next page if any", + "type": "string", + "readOnly": true + } + } + }, + "Datastore": { + "description": "A datastore resource", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "The properties of a datastore resource", + "$ref": "#/definitions/DatastoreProperties", + "x-ms-client-flatten": true + } + } + }, + "DatastoreProperties": { + "description": "The properties of a datastore", + "properties": { + "provisioningState": { + "description": "The state of the datastore provisioning", + "type": "string", + "readOnly": true, + "enum": [ + "Succeeded", + "Failed", + "Cancelled", + "Pending", + "Creating", + "Updating", + "Deleting" + ], + "x-ms-enum": { + "name": "DatastoreProvisioningState", + "modelAsString": true + } + }, + "netAppVolume": { + "description": "An Azure NetApp Files volume", + "$ref": "#/definitions/NetAppVolume" + }, + "diskPoolVolume": { + "description": "An iSCSI volume", + "$ref": "#/definitions/DiskPoolVolume" + } + } + }, + "NetAppVolume": { + "description": "An Azure NetApp Files volume from Microsoft.NetApp provider", + "properties": { + "id": { + "type": "string", + "description": "Azure resource ID of the NetApp volume" + } + }, + "required": [ + "id" + ] + }, + "DiskPoolVolume": { + "description": "An iSCSI volume from Microsoft.StoragePool provider", + "properties": { + "targetId": { + "type": "string", + "description": "Azure resource ID of the iSCSI target" + }, + "lunName": { + "type": "string", + "description": "Name of the LUN to be used for datastore" + }, + "mountOption": { + "type": "string", + "description": "Mode that describes whether the LUN has to be mounted as a datastore or attached as a LUN", + "enum": [ + "MOUNT", + "ATTACH" + ], + "x-ms-enum": { + "name": "MountOptionEnum", + "modelAsString": true + }, + "default": "MOUNT" + }, + "path": { + "type": "string", + "description": "Device path", + "readOnly": true + } + }, + "required": [ + "targetId", + "lunName" + ] + }, + "AdminCredentials": { + "description": "Administrative credentials for accessing vCenter and NSX-T", + "properties": { + "nsxtUsername": { + "description": "NSX-T Manager username", + "type": "string", + "readOnly": true + }, + "nsxtPassword": { + "description": "NSX-T Manager password", + "type": "string", + "readOnly": true, + "x-ms-secret": true + }, + "vcenterUsername": { + "description": "vCenter admin username", + "type": "string", + "readOnly": true + }, + "vcenterPassword": { + "description": "vCenter admin password", + "type": "string", + "readOnly": true, + "x-ms-secret": true + } + } + }, + "Sku": { + "description": "The resource model definition representing SKU", + "properties": { + "name": { + "type": "string", + "description": "The name of the SKU." + } + }, + "required": [ + "name" + ] + }, + "HcxEnterpriseSiteList": { + "description": "A paged list of HCX Enterprise Sites", + "properties": { + "value": { + "description": "The items on a page", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/HcxEnterpriseSite" + } + }, + "nextLink": { + "description": "URL to get the next page if any", + "type": "string", + "readOnly": true + } + } + }, + "HcxEnterpriseSite": { + "description": "An HCX Enterprise Site resource", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "The properties of an HCX Enterprise Site resource", + "$ref": "#/definitions/HcxEnterpriseSiteProperties", + "x-ms-client-flatten": true, + "readOnly": true + } + } + }, + "HcxEnterpriseSiteProperties": { + "description": "The properties of an HCX Enterprise Site", + "properties": { + "activationKey": { + "description": "The activation key", + "type": "string", + "readOnly": true + }, + "status": { + "description": "The status of the HCX Enterprise Site", + "type": "string", + "readOnly": true, + "enum": [ + "Available", + "Consumed", + "Deactivated", + "Deleted" + ], + "x-ms-enum": { + "name": "HcxEnterpriseSiteStatus", + "modelAsString": true + } + } + } + }, + "GlobalReachConnectionList": { + "description": "A paged list of global reach connections", + "properties": { + "value": { + "description": "The items on a page", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/GlobalReachConnection" + } + }, + "nextLink": { + "description": "URL to get the next page if any", + "type": "string", + "readOnly": true + } + } + }, + "GlobalReachConnection": { + "description": "A global reach connection resource", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "The properties of a global reach connection resource", + "$ref": "#/definitions/GlobalReachConnectionProperties", + "x-ms-client-flatten": true + } + } + }, + "GlobalReachConnectionProperties": { + "description": "The properties of a global reach connection", + "properties": { + "provisioningState": { + "description": "The state of the ExpressRoute Circuit Authorization provisioning", + "type": "string", + "readOnly": true, + "enum": [ + "Succeeded", + "Failed", + "Updating" + ], + "x-ms-enum": { + "name": "GlobalReachConnectionProvisioningState", + "modelAsString": true + } + }, + "addressPrefix": { + "description": "The network used for global reach carved out from the original network block provided for the private cloud", + "type": "string", + "readOnly": true + }, + "authorizationKey": { + "description": "Authorization key from the peer express route used for the global reach connection", + "type": "string" + }, + "circuitConnectionStatus": { + "description": "The connection status of the global reach connection", + "type": "string", + "readOnly": true, + "enum": [ + "Connected", + "Connecting", + "Disconnected" + ], + "x-ms-enum": { + "name": "GlobalReachConnectionStatus", + "modelAsString": true + } + }, + "peerExpressRouteCircuit": { + "type": "string", + "description": "Identifier of the ExpressRoute Circuit to peer with in the global reach connection" + } + } + }, + "CloudLinkList": { + "description": "A paged list of cloud links", + "properties": { + "value": { + "description": "The items on a page", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/CloudLink" + } + }, + "nextLink": { + "description": "URL to get the next page if any", + "type": "string", + "readOnly": true + } + } + }, + "CloudLink": { + "description": "A cloud link resource", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "The properties of a cloud link.", + "$ref": "#/definitions/CloudLinkProperties", + "x-ms-client-flatten": true + } + } + }, + "CloudLinkProperties": { + "description": "The properties of a cloud link.", + "properties": { + "status": { + "description": "The state of the cloud link.", + "type": "string", + "readOnly": true, + "enum": [ + "Active", + "Building", + "Deleting", + "Failed", + "Disconnected" + ], + "x-ms-enum": { + "name": "CloudLinkStatus", + "modelAsString": true + } + }, + "linkedCloud": { + "type": "string", + "description": "Identifier of the other private cloud participating in the link." + } + } + }, + "WorkloadNetworkSegmentSubnet": { + "description": "Subnet configuration for segment", + "properties": { + "dhcpRanges": { + "description": "DHCP Range assigned for subnet.", + "type": "array", + "items": { + "type": "string" + } + }, + "gatewayAddress": { + "description": "Gateway address.", + "type": "string" + } + } + }, + "WorkloadNetworkSegmentPortVif": { + "description": "Ports and any VIF attached to segment.", + "properties": { + "portName": { + "description": "Name of port or VIF attached to segment.", + "type": "string" + } + } + }, + "WorkloadNetworkSegmentProperties": { + "description": "NSX Segment Properties", + "properties": { + "displayName": { + "description": "Display name of the segment.", + "type": "string" + }, + "connectedGateway": { + "description": "Gateway which to connect segment to.", + "type": "string" + }, + "subnet": { + "description": "Subnet which to connect segment to.", + "$ref": "#/definitions/WorkloadNetworkSegmentSubnet" + }, + "portVif": { + "description": "Port Vif which segment is associated with.", + "type": "array", + "items": { + "$ref": "#/definitions/WorkloadNetworkSegmentPortVif" + }, + "readOnly": true + }, + "status": { + "description": "Segment status.", + "type": "string", + "enum": [ + "SUCCESS, FAILURE" + ], + "x-ms-enum": { + "name": "SegmentStatusEnum", + "modelAsString": true + }, + "readOnly": true + }, + "provisioningState": { + "description": "The provisioning state", + "type": "string", + "readOnly": true, + "enum": [ + "Succeeded", + "Failed", + "Building", + "Deleting", + "Updating" + ], + "x-ms-enum": { + "name": "WorkloadNetworkSegmentProvisioningState", + "modelAsString": true + } + }, + "revision": { + "description": "NSX revision number.", + "type": "integer", + "format": "int64" + } + } + }, + "WorkloadNetworkSegment": { + "description": "NSX Segment", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "description": "The properties of a Workload Segment proxy resource.", + "$ref": "#/definitions/WorkloadNetworkSegmentProperties", + "x-ms-client-flatten": true + } + } + }, + "WorkloadNetworkSegmentsList": { + "description": "A list of NSX Segments", + "properties": { + "value": { + "description": "The items on the page", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/WorkloadNetworkSegment" + } + }, + "nextLink": { + "description": "URL to get the next page if any", + "type": "string", + "readOnly": true + } + } + }, + "WorkloadNetworkDhcpEntity": { + "description": "Base class for WorkloadNetworkDhcpServer and WorkloadNetworkDhcpRelay to inherit from", + "discriminator": "dhcpType", + "properties": { + "dhcpType": { + "description": "Type of DHCP: SERVER or RELAY.", + "type": "string", + "enum": [ + "SERVER", + "RELAY" + ], + "x-ms-enum": { + "name": "DhcpTypeEnum", + "modelAsString": true + } + }, + "displayName": { + "description": "Display name of the DHCP entity.", + "type": "string" + }, + "segments": { + "description": "NSX Segments consuming DHCP.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "provisioningState": { + "description": "The provisioning state", + "type": "string", + "readOnly": true, + "enum": [ + "Succeeded", + "Failed", + "Building", + "Deleting", + "Updating" + ], + "x-ms-enum": { + "name": "WorkloadNetworkDhcpProvisioningState", + "modelAsString": true + } + }, + "revision": { + "description": "NSX revision number.", + "type": "integer", + "format": "int64" + } + }, + "required": [ + "dhcpType" + ] + }, + "WorkloadNetworkDhcpServer": { + "description": "NSX DHCP Server", + "x-ms-discriminator-value": "SERVER", + "allOf": [ + { + "$ref": "#/definitions/WorkloadNetworkDhcpEntity" + } + ], + "properties": { + "serverAddress": { + "description": "DHCP Server Address.", + "type": "string" + }, + "leaseTime": { + "description": "DHCP Server Lease Time.", + "type": "integer", + "format": "int64" + } + } + }, + "WorkloadNetworkDhcpRelay": { + "description": "NSX DHCP Relay", + "x-ms-discriminator-value": "RELAY", + "allOf": [ + { + "$ref": "#/definitions/WorkloadNetworkDhcpEntity" + } + ], + "properties": { + "serverAddresses": { + "description": "DHCP Relay Addresses. Max 3.", + "type": "array", + "items": { + "type": "string" + }, + "minItems": 1, + "maxItems": 3 + } + } + }, + "WorkloadNetworkDhcp": { + "description": "NSX DHCP", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "description": "DHCP properties.", + "$ref": "#/definitions/WorkloadNetworkDhcpEntity", + "x-ms-client-flatten": false + } + } + }, + "WorkloadNetworkDhcpList": { + "description": "A list of NSX dhcp entities", + "properties": { + "value": { + "description": "The items on the page", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/WorkloadNetworkDhcp" + } + }, + "nextLink": { + "description": "URL to get the next page if any", + "type": "string", + "readOnly": true + } + } + }, + "WorkloadNetworkPortMirroringProperties": { + "description": "NSX Port Mirroring Properties", + "properties": { + "displayName": { + "description": "Display name of the port mirroring profile.", + "type": "string" + }, + "direction": { + "description": "Direction of port mirroring profile.", + "type": "string", + "enum": [ + "INGRESS, EGRESS, BIDIRECTIONAL" + ], + "x-ms-enum": { + "name": "PortMirroringDirectionEnum", + "modelAsString": true + } + }, + "source": { + "description": "Source VM Group.", + "type": "string" + }, + "destination": { + "description": "Destination VM Group.", + "type": "string" + }, + "status": { + "description": "Port Mirroring Status.", + "type": "string", + "enum": [ + "SUCCESS, FAILURE" + ], + "x-ms-enum": { + "name": "PortMirroringStatusEnum", + "modelAsString": true + }, + "readOnly": true + }, + "provisioningState": { + "description": "The provisioning state", + "type": "string", + "readOnly": true, + "enum": [ + "Succeeded", + "Failed", + "Building", + "Deleting", + "Updating" + ], + "x-ms-enum": { + "name": "WorkloadNetworkPortMirroringProvisioningState", + "modelAsString": true + } + }, + "revision": { + "description": "NSX revision number.", + "type": "integer", + "format": "int64" + } + } + }, + "WorkloadNetworkPortMirroring": { + "description": "NSX Port Mirroring", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "description": "Port Mirroring Properties.", + "$ref": "#/definitions/WorkloadNetworkPortMirroringProperties", + "x-ms-client-flatten": true + } + } + }, + "WorkloadNetworkPortMirroringList": { + "description": "A list of NSX Port Mirroring", + "properties": { + "value": { + "description": "The items on the page", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/WorkloadNetworkPortMirroring" + } + }, + "nextLink": { + "description": "URL to get the next page if any", + "type": "string", + "readOnly": true + } + } + }, + "WorkloadNetworkVMGroupProperties": { + "description": "NSX VM Group Properties", + "properties": { + "displayName": { + "description": "Display name of the VM group.", + "type": "string" + }, + "members": { + "description": "Virtual machine members of this group.", + "type": "array", + "items": { + "type": "string" + } + }, + "status": { + "description": "VM Group status.", + "type": "string", + "enum": [ + "SUCCESS, FAILURE" + ], + "x-ms-enum": { + "name": "VMGroupStatusEnum", + "modelAsString": true + }, + "readOnly": true + }, + "provisioningState": { + "description": "The provisioning state", + "type": "string", + "readOnly": true, + "enum": [ + "Succeeded", + "Failed", + "Building", + "Deleting", + "Updating" + ], + "x-ms-enum": { + "name": "WorkloadNetworkVMGroupProvisioningState", + "modelAsString": true + } + }, + "revision": { + "description": "NSX revision number.", + "type": "integer", + "format": "int64" + } + } + }, + "WorkloadNetworkVMGroup": { + "description": "NSX VM Group", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "description": "VM Group properties.", + "$ref": "#/definitions/WorkloadNetworkVMGroupProperties", + "x-ms-client-flatten": true + } + } + }, + "WorkloadNetworkVMGroupsList": { + "description": "A list of NSX VM Groups", + "properties": { + "value": { + "description": "The items on the page", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/WorkloadNetworkVMGroup" + } + }, + "nextLink": { + "description": "URL to get the next page if any", + "type": "string", + "readOnly": true + } + } + }, + "WorkloadNetworkVirtualMachineProperties": { + "description": "NSX Virtual Machine Properties", + "properties": { + "displayName": { + "description": "Display name of the VM.", + "type": "string" + }, + "vmType": { + "description": "Virtual machine type.", + "type": "string", + "enum": [ + "REGULAR, EDGE, SERVICE" + ], + "x-ms-enum": { + "name": "VMTypeEnum", + "modelAsString": true + }, + "readOnly": true + } + } + }, + "WorkloadNetworkVirtualMachine": { + "description": "NSX Virtual Machine", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "description": "Virtual machine properties.", + "$ref": "#/definitions/WorkloadNetworkVirtualMachineProperties", + "x-ms-client-flatten": true + } + } + }, + "WorkloadNetworkVirtualMachinesList": { + "description": "A list of NSX Virtual Machines", + "properties": { + "value": { + "description": "The items on the page", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/WorkloadNetworkVirtualMachine" + } + }, + "nextLink": { + "description": "URL to get the next page if any", + "type": "string", + "readOnly": true + } + } + }, + "WorkloadNetworkGatewayProperties": { + "description": "Properties of a NSX Gateway.", + "properties": { + "displayName": { + "description": "Display name of the DHCP entity.", + "type": "string" + }, + "path": { + "description": "NSX Gateway Path.", + "type": "string", + "readOnly": true + } + } + }, + "WorkloadNetworkGateway": { + "description": "NSX Gateway.", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "description": "Gateway properties.", + "$ref": "#/definitions/WorkloadNetworkGatewayProperties", + "x-ms-client-flatten": true + } + } + }, + "WorkloadNetworkGatewayList": { + "description": "A list of NSX Gateways", + "properties": { + "value": { + "description": "The items on the page", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/WorkloadNetworkGateway" + } + }, + "nextLink": { + "description": "URL to get the next page if any", + "type": "string", + "readOnly": true + } + } + }, + "WorkloadNetworkDnsServiceProperties": { + "description": "NSX DNS Service Properties", + "properties": { + "displayName": { + "description": "Display name of the DNS Service.", + "type": "string" + }, + "dnsServiceIp": { + "description": "DNS service IP of the DNS Service.", + "type": "string" + }, + "defaultDnsZone": { + "description": "Default DNS zone of the DNS Service.", + "type": "string" + }, + "fqdnZones": { + "description": "FQDN zones of the DNS Service.", + "type": "array", + "items": { + "type": "string" + } + }, + "logLevel": { + "description": "DNS Service log level.", + "type": "string", + "enum": [ + "DEBUG", + "INFO", + "WARNING", + "ERROR", + "FATAL" + ], + "x-ms-enum": { + "name": "DnsServiceLogLevelEnum", + "modelAsString": true + } + }, + "status": { + "description": "DNS Service status.", + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE" + ], + "x-ms-enum": { + "name": "DnsServiceStatusEnum", + "modelAsString": true + }, + "readOnly": true + }, + "provisioningState": { + "description": "The provisioning state", + "type": "string", + "readOnly": true, + "enum": [ + "Succeeded", + "Failed", + "Building", + "Deleting", + "Updating" + ], + "x-ms-enum": { + "name": "WorkloadNetworkDnsServiceProvisioningState", + "modelAsString": true + } + }, + "revision": { + "description": "NSX revision number.", + "type": "integer", + "format": "int64" + } + } + }, + "WorkloadNetworkDnsService": { + "description": "NSX DNS Service", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "description": "DNS Service properties", + "$ref": "#/definitions/WorkloadNetworkDnsServiceProperties", + "x-ms-client-flatten": true + } + } + }, + "WorkloadNetworkDnsServicesList": { + "description": "A list of NSX DNS Services", + "properties": { + "value": { + "description": "The items on the page", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/WorkloadNetworkDnsService" + } + }, + "nextLink": { + "description": "URL to get the next page if any", + "type": "string", + "readOnly": true + } + } + }, + "WorkloadNetworkDnsZoneProperties": { + "description": "NSX DNS Zone Properties", + "properties": { + "displayName": { + "description": "Display name of the DNS Zone.", + "type": "string" + }, + "domain": { + "description": "Domain names of the DNS Zone.", + "type": "array", + "items": { + "type": "string" + } + }, + "dnsServerIps": { + "description": "DNS Server IP array of the DNS Zone.", + "type": "array", + "items": { + "type": "string" + } + }, + "sourceIp": { + "description": "Source IP of the DNS Zone.", + "type": "string" + }, + "dnsServices": { + "description": "Number of DNS Services using the DNS zone.", + "type": "integer", + "format": "int64" + }, + "provisioningState": { + "description": "The provisioning state", + "type": "string", + "readOnly": true, + "enum": [ + "Succeeded", + "Failed", + "Building", + "Deleting", + "Updating" + ], + "x-ms-enum": { + "name": "WorkloadNetworkDnsZoneProvisioningState", + "modelAsString": true + } + }, + "revision": { + "description": "NSX revision number.", + "type": "integer", + "format": "int64" + } + } + }, + "WorkloadNetworkDnsZone": { + "description": "NSX DNS Zone", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "description": "DNS Zone properties", + "$ref": "#/definitions/WorkloadNetworkDnsZoneProperties", + "x-ms-client-flatten": true + } + } + }, + "WorkloadNetworkDnsZonesList": { + "description": "A list of NSX DNS Zones", + "properties": { + "value": { + "description": "The items on the page", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/WorkloadNetworkDnsZone" + } + }, + "nextLink": { + "description": "URL to get the next page if any", + "type": "string", + "readOnly": true + } + } + }, + "WorkloadNetworkPublicIPProperties": { + "description": "NSX Public IP Block Properties", + "properties": { + "displayName": { + "description": "Display name of the Public IP Block.", + "type": "string" + }, + "numberOfPublicIPs": { + "description": "Number of Public IPs requested.", + "type": "integer", + "format": "int64" + }, + "publicIPBlock": { + "description": "CIDR Block of the Public IP Block.", + "type": "string", + "readOnly": true + }, + "provisioningState": { + "description": "The provisioning state", + "type": "string", + "readOnly": true, + "enum": [ + "Succeeded", + "Failed", + "Building", + "Deleting", + "Updating" + ], + "x-ms-enum": { + "name": "WorkloadNetworkPublicIPProvisioningState", + "modelAsString": true + } + } + } + }, + "WorkloadNetworkPublicIP": { + "description": "NSX Public IP Block", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "description": "Public IP Block properties", + "$ref": "#/definitions/WorkloadNetworkPublicIPProperties", + "x-ms-client-flatten": true + } + } + }, + "WorkloadNetworkPublicIPsList": { + "description": "A list of NSX Public IP Blocks", + "properties": { + "value": { + "description": "The items on the page", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/WorkloadNetworkPublicIP" + } + }, + "nextLink": { + "description": "URL to get the next page if any", + "type": "string", + "readOnly": true + } + } + }, + "ScriptPackageProperties": { + "description": "Properties of a Script Package subresource", + "properties": { + "description": { + "description": "User friendly description of the package", + "type": "string", + "readOnly": true + }, + "version": { + "description": "Module version", + "type": "string", + "readOnly": true + } + } + }, + "ScriptPackagesList": { + "description": "A list of the available script packages", + "properties": { + "value": { + "description": "List of script package resources", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ScriptPackage" + } + }, + "nextLink": { + "description": "URL to get the next page if any", + "type": "string", + "readOnly": true + } + } + }, + "ScriptPackage": { + "description": "Script Package resources available for execution", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "description": "ScriptPackage resource properties", + "$ref": "#/definitions/ScriptPackageProperties", + "x-ms-client-flatten": true + } + } + }, + "ScriptParameter": { + "description": "An parameter that the script will accept", + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of parameter the script is expecting. psCredential is a PSCredentialObject", + "enum": [ + "String", + "SecureString", + "Credential", + "Int", + "Bool", + "Float" + ], + "x-ms-enum": { + "name": "ScriptParameterTypes", + "modelAsString": true + } + }, + "name": { + "type": "string", + "description": "The parameter name that the script will expect a parameter value for" + }, + "description": { + "type": "string", + "readOnly": true, + "description": "User friendly description of the parameter" + }, + "visibility": { + "description": "Should this parameter be visible to arm and passed in the parameters argument when executing", + "type": "string", + "readOnly": true, + "enum": [ + "Visible", + "Hidden" + ], + "x-ms-enum": { + "name": "VisibilityParameterEnum", + "modelAsString": true + } + }, + "optional": { + "description": "Is this parameter required or optional", + "type": "string", + "readOnly": true, + "enum": [ + "Optional", + "Required" + ], + "x-ms-enum": { + "name": "OptionalParamEnum", + "modelAsString": true + } + } + } + }, + "ScriptCmdlet": { + "description": "A cmdlet available for script execution", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "description": "The properties of a script cmdlet resource", + "$ref": "#/definitions/ScriptCmdletProperties", + "x-ms-client-flatten": true + } + } + }, + "ScriptCmdletProperties": { + "description": "Properties of a pre-canned script", + "properties": { + "description": { + "description": "Description of the scripts functionality", + "type": "string", + "readOnly": true + }, + "timeout": { + "description": "Recommended time limit for execution", + "type": "string", + "readOnly": true + }, + "parameters": { + "description": "Parameters the script will accept", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ScriptParameter" + } + } + } + }, + "ScriptCmdletsList": { + "description": "Pageable list of scripts/cmdlets", + "properties": { + "value": { + "description": "List of scripts", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ScriptCmdlet" + } + }, + "nextLink": { + "description": "URL to get the next page if any", + "type": "string", + "readOnly": true + } + } + }, + "ScriptExecutionParameter": { + "discriminator": "type", + "description": "The arguments passed in to the execution", + "properties": { + "name": { + "type": "string", + "description": "The parameter name" + }, + "type": { + "description": "The type of execution parameter", + "type": "string", + "enum": [ + "Value", + "SecureValue", + "Credential" + ], + "x-ms-enum": { + "name": "ScriptExecutionParameterType", + "modelAsString": true + } + } + }, + "required": [ + "type", + "name" + ] + }, + "ScriptExecution": { + "description": "An instance of a script executed by a user - custom or AVS", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "description": "The properties of a script execution resource", + "$ref": "#/definitions/ScriptExecutionProperties", + "x-ms-client-flatten": true + } + } + }, + "ScriptExecutionProperties": { + "description": "Properties of a user-invoked script", + "properties": { + "scriptCmdletId": { + "description": "A reference to the script cmdlet resource if user is running a AVS script", + "type": "string" + }, + "parameters": { + "description": "Parameters the script will accept", + "type": "array", + "items": { + "$ref": "#/definitions/ScriptExecutionParameter" + } + }, + "hiddenParameters": { + "description": "Parameters that will be hidden/not visible to ARM, such as passwords and credentials", + "type": "array", + "items": { + "$ref": "#/definitions/ScriptExecutionParameter" + } + }, + "failureReason": { + "type": "string", + "description": "Error message if the script was able to run, but if the script itself had errors or powershell threw an exception" + }, + "timeout": { + "description": "Time limit for execution", + "type": "string" + }, + "retention": { + "description": "Time to live for the resource. If not provided, will be available for 60 days", + "type": "string" + }, + "submittedAt": { + "description": "Time the script execution was submitted", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "startedAt": { + "description": "Time the script execution was started", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "finishedAt": { + "description": "Time the script execution was finished", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "provisioningState": { + "description": "The state of the script execution resource", + "type": "string", + "readOnly": true, + "enum": [ + "Pending", + "Running", + "Succeeded", + "Failed", + "Cancelling", + "Cancelled", + "Deleting" + ], + "x-ms-enum": { + "name": "ScriptExecutionProvisioningState", + "modelAsString": true + } + }, + "output": { + "description": "Standard output stream from the powershell execution", + "type": "array", + "items": { + "type": "string" + } + }, + "namedOutputs": { + "description": "User-defined dictionary.", + "type": "object", + "additionalProperties": { + "type": "object", + "description": "Dictionary in pair." + } + }, + "information": { + "description": "Standard information out stream from the powershell execution", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "warnings": { + "description": "Standard warning out stream from the powershell execution", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "errors": { + "description": "Standard error output stream from the powershell execution", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + } + }, + "required": [ + "timeout" + ] + }, + "ScriptExecutionsList": { + "description": "Pageable list of script executions", + "properties": { + "value": { + "description": "List of scripts", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ScriptExecution" + } + }, + "nextLink": { + "description": "URL to get the next page if any", + "type": "string", + "readOnly": true + } + } + }, + "ScriptSecureStringExecutionParameter": { + "description": "a plain text value execution parameter", + "x-ms-discriminator-value": "SecureValue", + "allOf": [ + { + "$ref": "#/definitions/ScriptExecutionParameter" + } + ], + "properties": { + "secureValue": { + "type": "string", + "description": "A secure value for the passed parameter, not to be stored in logs", + "x-ms-secret": true + } + } + }, + "ScriptStringExecutionParameter": { + "description": "a plain text value execution parameter", + "x-ms-discriminator-value": "Value", + "allOf": [ + { + "$ref": "#/definitions/ScriptExecutionParameter" + } + ], + "properties": { + "value": { + "type": "string", + "description": "The value for the passed parameter" + } + } + }, + "PSCredentialExecutionParameter": { + "description": "a powershell credential object", + "x-ms-discriminator-value": "Credential", + "allOf": [ + { + "$ref": "#/definitions/ScriptExecutionParameter" + } + ], + "properties": { + "username": { + "description": "username for login", + "type": "string" + }, + "password": { + "description": "password for login", + "type": "string" + } + }, + "x-ms-secret": true + } + } +} diff --git a/specification/vmware/resource-manager/readme.azureresourceschema.md b/specification/vmware/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 4e1cbac68c3d..000000000000 --- a/specification/vmware/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,48 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-avs-2021-01-01-preview - - tag: schema-avs-2020-07-17-preview - - tag: schema-avs-2020-03-20 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-avs-2021-01-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-avs-2021-01-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.AVS/preview/2021-01-01-preview/vmware.json - -``` - -### Tag: schema-avs-2020-07-17-preview and azureresourceschema - -``` yaml $(tag) == 'schema-avs-2020-07-17-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.AVS/preview/2020-07-17-preview/vmware.json - -``` - -### Tag: schema-avs-2020-03-20 and azureresourceschema - -``` yaml $(tag) == 'schema-avs-2020-03-20' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.AVS/stable/2020-03-20/vmware.json - -``` diff --git a/specification/vmware/resource-manager/readme.go.md b/specification/vmware/resource-manager/readme.go.md index db762dfa571a..e369f9b6c67c 100644 --- a/specification/vmware/resource-manager/readme.go.md +++ b/specification/vmware/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: avs clear-output-folder: true ``` @@ -13,11 +13,21 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-2021-06-01 - tag: package-2021-01-01-preview - tag: package-2020-07-17-preview - tag: package-2020-03-20 ``` +### Tag: package-2021-06-01 and go + +These settings apply only when `--tag=package-2021-06-01 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2021-06-01' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2021-06-01/$(namespace) +``` + ### Tag: package-2021-01-01-preview and go These settings apply only when `--tag=package-2021-01-01-preview --go` is specified on the command line. diff --git a/specification/vmware/resource-manager/readme.java.md b/specification/vmware/resource-manager/readme.java.md index c92272d8fe29..2f11ca93ad04 100644 --- a/specification/vmware/resource-manager/readme.java.md +++ b/specification/vmware/resource-manager/readme.java.md @@ -16,11 +16,25 @@ output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-avs ``` yaml $(java) && $(multiapi) batch: + - tag: package-2021-06-01 - tag: package-2021-01-01-preview - tag: package-2020-07-17-preview - tag: package-2020-03-20 ``` +### Tag: package-2021-06-01 and java + +These settings apply only when `--tag=package-2021-06-01 --java` is specified on the command line. +Please also specify the `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-2021-06-01' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.avs.v2021_06_01 + output-folder: $(azure-libraries-for-java-folder)/sdk/avs/mgmt-v2021_06_01 +regenerate-manager: true +generate-interface: true +``` + ### Tag: package-2021-01-01-preview and java These settings apply only when `--tag=package-2021-01-01-preview -java` is specified on the command line. diff --git a/specification/vmware/resource-manager/readme.md b/specification/vmware/resource-manager/readme.md index d0e86594d47f..e02df015746f 100644 --- a/specification/vmware/resource-manager/readme.md +++ b/specification/vmware/resource-manager/readme.md @@ -21,7 +21,45 @@ These are the global settings for the VMware Solution API. ``` yaml openapi-type: arm -tag: package-2021-01-01-preview +tag: package-2021-06-01 +``` + +### Tag: package-2021-06-01 + +These settings apply only when `--tag=package-2021-06-01` is specified on the command line. + +``` yaml $(tag) == 'package-2021-06-01' +input-file: +- Microsoft.AVS/stable/2021-06-01/vmware.json +directive: + - suppress: R3020 + from: Microsoft.AVS/stable/2021-06-01/vmware.json + reason: Microsoft.AVS was chosen over Microsoft.AzureVMwareSolution + - suppress: R3010 + from: Microsoft.AVS/stable/2021-06-01/vmware.json + reason: list by immediate parent operations are defined + - suppress: R3027 + from: Microsoft.AVS/stable/2021-06-01/vmware.json + reasons: the PrivateClouds_List operation is by resource group + - suppress: R3018 + from: Microsoft.AVS/stable/2021-06-01/vmware.json + where: $.definitions.Operation.properties.isDataAction + reason: standard property for Operation + - suppress: R3018 + from: Microsoft.AVS/stable/2021-06-01/vmware.json + where: $.definitions.MetricSpecification.properties.fillGapWithZero + reason: standard property for MetricSpecification + - suppress: R2001 + from: Microsoft.AVS/stable/2021-06-01/vmware.json + where: $.definitions.Operation.properties.properties + reason: x-ms-client-flatten not needed for Operation + - suppress: R4009 + from: Microsoft.AVS/stable/2021-06-01/vmware.json + reason: systemData is not in this API version + - suppress: R3018 + from: Microsoft.AVS/stable/2021-06-01/vmware.json + where: $.definitions.MetricDimension.properties.toBeExportedForShoebox + reason: standard property defined by Geneva Metrics ``` ### Tag: package-2021-01-01-preview @@ -152,8 +190,6 @@ swagger-to-sdk: - repo: azure-sdk-for-go - repo: azure-sdk-for-java - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js vmware/resource-manager ``` ## Suppression @@ -161,6 +197,7 @@ swagger-to-sdk: directive: - suppress: SECRET_PROPERTY from: + - Microsoft.AVS/stable/2021-06-01/vmware.json - Microsoft.AVS/preview/2021-01-01-preview/vmware.json - Microsoft.AVS/preview/2020-07-17-preview/vmware.json - Microsoft.AVS/stable/2020-03-20/vmware.json @@ -190,7 +227,5 @@ See configuration in [readme.go.md](./readme.go.md) See configuration in [readme.java.md](./readme.java.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/vmware/resource-manager/readme.python.md b/specification/vmware/resource-manager/readme.python.md index 272675865581..820af5da363e 100644 --- a/specification/vmware/resource-manager/readme.python.md +++ b/specification/vmware/resource-manager/readme.python.md @@ -4,26 +4,22 @@ These settings apply only when `--python` is specified on the command line. Please also specify `--python-sdks-folder=`. Use `--python-mode=update` if you already have a setup.py and just want to update the code itself. -```yaml $(python) +```yaml python-mode: create - -python: - package-version: 0.1.0 - azure-arm: true - license-header: MICROSOFT_MIT_NO_VERSION - payload-flattening-threshold: 2 - override-client-name: AVSClient - namespace: azure.mgmt.avs - package-name: azure-mgmt-avs - clear-output-folder: true +package-version: 0.1.0 +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +payload-flattening-threshold: 2 +override-client-name: AVSClient +namespace: azure.mgmt.avs +package-name: azure-mgmt-avs +clear-output-folder: true ``` -``` yaml $(python) && $(python-mode) == 'update' -python: - no-namespace-folders: true - output-folder: $(python-sdks-folder)/compute/azure-mgmt-avs/azure/mgmt/avs +``` yaml $(python-mode) == 'update' +no-namespace-folders: true +output-folder: $(python-sdks-folder)/compute/azure-mgmt-avs/azure/mgmt/avs ``` -``` yaml $(python) && $(python-mode) == 'create' -python: - basic-setup-py: true - output-folder: $(python-sdks-folder)/compute/azure-mgmt-avs +``` yaml $(python-mode) == 'create' +basic-setup-py: true +output-folder: $(python-sdks-folder)/compute/azure-mgmt-avs ``` diff --git a/specification/vmware/resource-manager/readme.terraform.md b/specification/vmware/resource-manager/readme.terraform.md index c4659b053728..738494f16d7a 100644 --- a/specification/vmware/resource-manager/readme.terraform.md +++ b/specification/vmware/resource-manager/readme.terraform.md @@ -37,3 +37,16 @@ overrides: set: - GoFieldName: "Ssl" ``` + + +``` yaml $(tag) == 'package-2021-01-01-preview' && $(terraform) +gosdk-folder: services/preview/avs/mgmt/2021-01-01-preview/avs +``` + +``` yaml $(tag) == 'package-2020-07-17-preview' && $(terraform) +gosdk-folder: services/preview/avs/mgmt/2020-07-17-preview/avs +``` + +``` yaml $(tag) == 'package-2020-03-20' && $(terraform) +gosdk-folder: services/avs/mgmt/2020-03-20/avs +``` diff --git a/specification/vmwarecloudsimple/resource-manager/readme.azureresourceschema.md b/specification/vmwarecloudsimple/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 5bfa2dc8a1f1..000000000000 --- a/specification/vmwarecloudsimple/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,24 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-vmwarecloudsimple-2019-04-01 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-vmwarecloudsimple-2019-04-01 and azureresourceschema - -``` yaml $(tag) == 'schema-vmwarecloudsimple-2019-04-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.VMwareCloudSimple/stable/2019-04-01/vmwarecloudsimple.json - -``` diff --git a/specification/vmwarecloudsimple/resource-manager/readme.go.md b/specification/vmwarecloudsimple/resource-manager/readme.go.md index 19b043e45387..99f966b3c07f 100644 --- a/specification/vmwarecloudsimple/resource-manager/readme.go.md +++ b/specification/vmwarecloudsimple/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ```yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: vmwarecloudsimple clear-output-folder: true ``` diff --git a/specification/vmwarecloudsimple/resource-manager/readme.md b/specification/vmwarecloudsimple/resource-manager/readme.md index f6b5976a6807..2707e22ae112 100644 --- a/specification/vmwarecloudsimple/resource-manager/readme.md +++ b/specification/vmwarecloudsimple/resource-manager/readme.md @@ -49,15 +49,13 @@ This is not used by Autorest itself. ```yaml $(swagger-to-sdk) swagger-to-sdk: - - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-java - repo: azure-sdk-for-go - repo: azure-sdk-for-js - repo: azure-sdk-for-ruby - repo: azure-sdk-for-net - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js vmwarecloudsimple/resource-manager ``` ## Go @@ -83,7 +81,5 @@ See configuration in [readme.csharp.md](./readme.csharp.md) ## Java See configuration in [readme.java.md](./readme.java.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/vmwarecloudsimple/resource-manager/readme.python.md b/specification/vmwarecloudsimple/resource-manager/readme.python.md index 821a0f01d7ce..e65969467827 100644 --- a/specification/vmwarecloudsimple/resource-manager/readme.python.md +++ b/specification/vmwarecloudsimple/resource-manager/readme.python.md @@ -4,24 +4,20 @@ These settings apply only when `--python` is specified on the command line. Please also specify `--python-sdks-folder=`. Use `--python-mode=update` if you already have a setup.py and just want to update the code itself. -```yaml $(python) +```yaml $(python) && $(track2) python-mode: create -python: - azure-arm: true - license-header: MICROSOFT_MIT_NO_VERSION - payload-flattening-threshold: 2 - namespace: azure.mgmt.vmwarecloudsimple - package-name: azure-mgmt-vmwarecloudsimple - package-version: 0.1.0 - clear-output-folder: true +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +namespace: azure.mgmt.vmwarecloudsimple +package-name: azure-mgmt-vmwarecloudsimple +package-version: 1.0.0b1 +clear-output-folder: true ``` -``` yaml $(python) && $(python-mode) == 'update' -python: - no-namespace-folders: true - output-folder: $(python-sdks-folder)/compute/azure-mgmt-vmwarecloudsimple/azure/mgmt/vmwarecloudsimple +``` yaml $(python) && $(python-mode) == 'update' && $(track2) +no-namespace-folders: true +output-folder: $(python-sdks-folder)/compute/azure-mgmt-vmwarecloudsimple/azure/mgmt/vmwarecloudsimple ``` -``` yaml $(python) && $(python-mode) == 'create' -python: - basic-setup-py: true - output-folder: $(python-sdks-folder)/compute/azure-mgmt-vmwarecloudsimple +``` yaml $(python) && $(python-mode) == 'create' && $(track2) +basic-setup-py: true +output-folder: $(python-sdks-folder)/compute/azure-mgmt-vmwarecloudsimple ``` \ No newline at end of file diff --git a/specification/web/resource-manager/Microsoft.CertificateRegistration/stable/2020-12-01/AppServiceCertificateOrders.json b/specification/web/resource-manager/Microsoft.CertificateRegistration/stable/2020-12-01/AppServiceCertificateOrders.json new file mode 100644 index 000000000000..2faa9de50bdb --- /dev/null +++ b/specification/web/resource-manager/Microsoft.CertificateRegistration/stable/2020-12-01/AppServiceCertificateOrders.json @@ -0,0 +1,1721 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-12-01", + "title": "AppServiceCertificateOrders API Client" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.CertificateRegistration/certificateOrders": { + "get": { + "tags": [ + "AppServiceCertificateOrders" + ], + "summary": "List all certificate orders in a subscription.", + "description": "Description for List all certificate orders in a subscription.", + "operationId": "AppServiceCertificateOrders_List", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AppServiceCertificateOrderCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.CertificateRegistration/validateCertificateRegistrationInformation": { + "post": { + "tags": [ + "AppServiceCertificateOrders" + ], + "summary": "Validate information for a certificate order.", + "description": "Description for Validate information for a certificate order.", + "operationId": "AppServiceCertificateOrders_ValidatePurchaseInformation", + "parameters": [ + { + "name": "appServiceCertificateOrder", + "in": "body", + "description": "Information for a certificate order.", + "required": true, + "schema": { + "$ref": "#/definitions/AppServiceCertificateOrder" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CertificateRegistration/certificateOrders": { + "get": { + "tags": [ + "AppServiceCertificateOrders" + ], + "summary": "Get certificate orders in a resource group.", + "description": "Description for Get certificate orders in a resource group.", + "operationId": "AppServiceCertificateOrders_ListByResourceGroup", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AppServiceCertificateOrderCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CertificateRegistration/certificateOrders/{certificateOrderName}": { + "get": { + "tags": [ + "AppServiceCertificateOrders" + ], + "summary": "Get a certificate order.", + "description": "Description for Get a certificate order.", + "operationId": "AppServiceCertificateOrders_Get", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "certificateOrderName", + "in": "path", + "description": "Name of the certificate order..", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AppServiceCertificateOrder" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "AppServiceCertificateOrders" + ], + "summary": "Create or update a certificate purchase order.", + "description": "Description for Create or update a certificate purchase order.", + "operationId": "AppServiceCertificateOrders_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "certificateOrderName", + "in": "path", + "description": "Name of the certificate order.", + "required": true, + "type": "string" + }, + { + "name": "certificateDistinguishedName", + "in": "body", + "description": "Distinguished name to use for the certificate order.", + "required": true, + "schema": { + "$ref": "#/definitions/AppServiceCertificateOrder" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "App Service Certificate Order is created.", + "schema": { + "$ref": "#/definitions/AppServiceCertificateOrder" + } + }, + "201": { + "description": "App Service Certificate Order creation operation is in progress", + "schema": { + "$ref": "#/definitions/AppServiceCertificateOrder" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "AppServiceCertificateOrders" + ], + "summary": "Delete an existing certificate order.", + "description": "Description for Delete an existing certificate order.", + "operationId": "AppServiceCertificateOrders_Delete", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "certificateOrderName", + "in": "path", + "description": "Name of the certificate order.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted certificate order." + }, + "204": { + "description": "Certificate order does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "AppServiceCertificateOrders" + ], + "summary": "Create or update a certificate purchase order.", + "description": "Description for Create or update a certificate purchase order.", + "operationId": "AppServiceCertificateOrders_Update", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "certificateOrderName", + "in": "path", + "description": "Name of the certificate order.", + "required": true, + "type": "string" + }, + { + "name": "certificateDistinguishedName", + "in": "body", + "description": "Distinguished name to use for the certificate order.", + "required": true, + "schema": { + "$ref": "#/definitions/AppServiceCertificateOrderPatchResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "App Service Certificate Order is created.", + "schema": { + "$ref": "#/definitions/AppServiceCertificateOrder" + } + }, + "201": { + "description": "App Service Certificate Order creation operation is in progress", + "schema": { + "$ref": "#/definitions/AppServiceCertificateOrder" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CertificateRegistration/certificateOrders/{certificateOrderName}/certificates": { + "get": { + "tags": [ + "AppServiceCertificateOrders" + ], + "summary": "List all certificates associated with a certificate order.", + "description": "Description for List all certificates associated with a certificate order.", + "operationId": "AppServiceCertificateOrders_ListCertificates", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "certificateOrderName", + "in": "path", + "description": "Name of the certificate order.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AppServiceCertificateCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CertificateRegistration/certificateOrders/{certificateOrderName}/certificates/{name}": { + "get": { + "tags": [ + "AppServiceCertificateOrders" + ], + "summary": "Get the certificate associated with a certificate order.", + "description": "Description for Get the certificate associated with a certificate order.", + "operationId": "AppServiceCertificateOrders_GetCertificate", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "certificateOrderName", + "in": "path", + "description": "Name of the certificate order.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "Name of the certificate.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AppServiceCertificateResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "AppServiceCertificateOrders" + ], + "summary": "Creates or updates a certificate and associates with key vault secret.", + "description": "Description for Creates or updates a certificate and associates with key vault secret.", + "operationId": "AppServiceCertificateOrders_CreateOrUpdateCertificate", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "certificateOrderName", + "in": "path", + "description": "Name of the certificate order.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "Name of the certificate.", + "required": true, + "type": "string" + }, + { + "name": "keyVaultCertificate", + "in": "body", + "description": "Key vault certificate resource Id.", + "required": true, + "schema": { + "$ref": "#/definitions/AppServiceCertificateResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "App Service Certificate is created.", + "schema": { + "$ref": "#/definitions/AppServiceCertificateResource" + } + }, + "201": { + "description": "App Service Certificate creation operation is in progress", + "schema": { + "$ref": "#/definitions/AppServiceCertificateResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "AppServiceCertificateOrders" + ], + "summary": "Delete the certificate associated with a certificate order.", + "description": "Description for Delete the certificate associated with a certificate order.", + "operationId": "AppServiceCertificateOrders_DeleteCertificate", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "certificateOrderName", + "in": "path", + "description": "Name of the certificate order.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "Name of the certificate.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted certificate." + }, + "204": { + "description": "Certificate does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "AppServiceCertificateOrders" + ], + "summary": "Creates or updates a certificate and associates with key vault secret.", + "description": "Description for Creates or updates a certificate and associates with key vault secret.", + "operationId": "AppServiceCertificateOrders_UpdateCertificate", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "certificateOrderName", + "in": "path", + "description": "Name of the certificate order.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "Name of the certificate.", + "required": true, + "type": "string" + }, + { + "name": "keyVaultCertificate", + "in": "body", + "description": "Key vault certificate resource Id.", + "required": true, + "schema": { + "$ref": "#/definitions/AppServiceCertificatePatchResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "App Service Certificate is created.", + "schema": { + "$ref": "#/definitions/AppServiceCertificateResource" + } + }, + "201": { + "description": "App Service Certificate creation operation is in progress", + "schema": { + "$ref": "#/definitions/AppServiceCertificateResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CertificateRegistration/certificateOrders/{certificateOrderName}/reissue": { + "post": { + "tags": [ + "AppServiceCertificateOrders" + ], + "summary": "Reissue an existing certificate order.", + "description": "Description for Reissue an existing certificate order.", + "operationId": "AppServiceCertificateOrders_Reissue", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "certificateOrderName", + "in": "path", + "description": "Name of the certificate order.", + "required": true, + "type": "string" + }, + { + "name": "reissueCertificateOrderRequest", + "in": "body", + "description": "Parameters for the reissue.", + "required": true, + "schema": { + "$ref": "#/definitions/ReissueCertificateOrderRequest" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CertificateRegistration/certificateOrders/{certificateOrderName}/renew": { + "post": { + "tags": [ + "AppServiceCertificateOrders" + ], + "summary": "Renew an existing certificate order.", + "description": "Description for Renew an existing certificate order.", + "operationId": "AppServiceCertificateOrders_Renew", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "certificateOrderName", + "in": "path", + "description": "Name of the certificate order.", + "required": true, + "type": "string" + }, + { + "name": "renewCertificateOrderRequest", + "in": "body", + "description": "Renew parameters", + "required": true, + "schema": { + "$ref": "#/definitions/RenewCertificateOrderRequest" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CertificateRegistration/certificateOrders/{certificateOrderName}/resendEmail": { + "post": { + "tags": [ + "AppServiceCertificateOrders" + ], + "summary": "Resend certificate email.", + "description": "Description for Resend certificate email.", + "operationId": "AppServiceCertificateOrders_ResendEmail", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "certificateOrderName", + "in": "path", + "description": "Name of the certificate order.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CertificateRegistration/certificateOrders/{certificateOrderName}/resendRequestEmails": { + "post": { + "tags": [ + "AppServiceCertificateOrders" + ], + "summary": "Verify domain ownership for this certificate order.", + "description": "Description for Verify domain ownership for this certificate order.", + "operationId": "AppServiceCertificateOrders_ResendRequestEmails", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "certificateOrderName", + "in": "path", + "description": "Name of the certificate order.", + "required": true, + "type": "string" + }, + { + "name": "nameIdentifier", + "in": "body", + "description": "Email address", + "required": true, + "schema": { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/NameIdentifier" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CertificateRegistration/certificateOrders/{certificateOrderName}/retrieveSiteSeal": { + "post": { + "tags": [ + "AppServiceCertificateOrders" + ], + "summary": "Verify domain ownership for this certificate order.", + "description": "Description for Verify domain ownership for this certificate order.", + "operationId": "AppServiceCertificateOrders_RetrieveSiteSeal", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "certificateOrderName", + "in": "path", + "description": "Name of the certificate order.", + "required": true, + "type": "string" + }, + { + "name": "siteSealRequest", + "in": "body", + "description": "Site seal request.", + "required": true, + "schema": { + "$ref": "#/definitions/SiteSealRequest" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SiteSeal" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CertificateRegistration/certificateOrders/{certificateOrderName}/verifyDomainOwnership": { + "post": { + "tags": [ + "AppServiceCertificateOrders" + ], + "summary": "Verify domain ownership for this certificate order.", + "description": "Description for Verify domain ownership for this certificate order.", + "operationId": "AppServiceCertificateOrders_VerifyDomainOwnership", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "certificateOrderName", + "in": "path", + "description": "Name of the certificate order.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CertificateRegistration/certificateOrders/{name}/retrieveCertificateActions": { + "post": { + "tags": [ + "AppServiceCertificateOrders" + ], + "summary": "Retrieve the list of certificate actions.", + "description": "Description for Retrieve the list of certificate actions.", + "operationId": "AppServiceCertificateOrders_RetrieveCertificateActions", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the certificate order.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/CertificateOrderAction" + } + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CertificateRegistration/certificateOrders/{name}/retrieveEmailHistory": { + "post": { + "tags": [ + "AppServiceCertificateOrders" + ], + "summary": "Retrieve email history.", + "description": "Description for Retrieve email history.", + "operationId": "AppServiceCertificateOrders_RetrieveCertificateEmailHistory", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the certificate order.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/CertificateEmail" + } + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + } + }, + "definitions": { + "AppServiceCertificate": { + "description": "Key Vault container for a certificate that is purchased through Azure.", + "type": "object", + "properties": { + "keyVaultId": { + "description": "Key Vault resource Id.", + "type": "string" + }, + "keyVaultSecretName": { + "description": "Key Vault secret name.", + "type": "string" + }, + "provisioningState": { + "description": "Status of the Key Vault secret.", + "enum": [ + "Initialized", + "WaitingOnCertificateOrder", + "Succeeded", + "CertificateOrderFailed", + "OperationNotPermittedOnKeyVault", + "AzureServiceUnauthorizedToAccessKeyVault", + "KeyVaultDoesNotExist", + "KeyVaultSecretDoesNotExist", + "UnknownError", + "ExternalPrivateKey", + "Unknown" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "KeyVaultSecretStatus", + "modelAsString": false + } + } + } + }, + "AppServiceCertificateCollection": { + "description": "Collection of certificate order certificates.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/AppServiceCertificateResource" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "AppServiceCertificateOrder": { + "description": "SSL certificate purchase order.", + "type": "object", + "allOf": [ + { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "AppServiceCertificateOrder resource specific properties", + "required": [ + "productType" + ], + "properties": { + "certificates": { + "description": "State of the Key Vault secret.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/AppServiceCertificate" + } + }, + "distinguishedName": { + "description": "Certificate distinguished name.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "domainVerificationToken": { + "description": "Domain verification token.", + "type": "string", + "readOnly": true + }, + "validityInYears": { + "format": "int32", + "description": "Duration in years (must be 1).", + "default": 1, + "type": "integer", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "keySize": { + "format": "int32", + "description": "Certificate key size.", + "default": 2048, + "type": "integer", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "productType": { + "description": "Certificate product type.", + "enum": [ + "StandardDomainValidatedSsl", + "StandardDomainValidatedWildCardSsl" + ], + "type": "string", + "x-ms-enum": { + "name": "CertificateProductType", + "modelAsString": false + }, + "x-ms-mutability": [ + "create", + "read" + ] + }, + "autoRenew": { + "description": "true if the certificate should be automatically renewed when it expires; otherwise, false.", + "default": true, + "type": "boolean" + }, + "provisioningState": { + "description": "Status of certificate order.", + "enum": [ + "Succeeded", + "Failed", + "Canceled", + "InProgress", + "Deleting" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": false + } + }, + "status": { + "description": "Current order status.", + "enum": [ + "Pendingissuance", + "Issued", + "Revoked", + "Canceled", + "Denied", + "Pendingrevocation", + "PendingRekey", + "Unused", + "Expired", + "NotSubmitted" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "CertificateOrderStatus", + "modelAsString": false + } + }, + "signedCertificate": { + "$ref": "#/definitions/CertificateDetails", + "description": "Signed certificate.", + "readOnly": true + }, + "csr": { + "description": "Last CSR that was created for this order.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "intermediate": { + "$ref": "#/definitions/CertificateDetails", + "description": "Intermediate certificate.", + "readOnly": true + }, + "root": { + "$ref": "#/definitions/CertificateDetails", + "description": "Root certificate.", + "readOnly": true + }, + "serialNumber": { + "description": "Current serial number of the certificate.", + "type": "string", + "readOnly": true + }, + "lastCertificateIssuanceTime": { + "format": "date-time", + "description": "Certificate last issuance time.", + "type": "string", + "readOnly": true + }, + "expirationTime": { + "format": "date-time", + "description": "Certificate expiration time.", + "type": "string", + "readOnly": true + }, + "isPrivateKeyExternal": { + "description": "true if private key is external; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "appServiceCertificateNotRenewableReasons": { + "description": "Reasons why App Service Certificate is not renewable at the current moment.", + "type": "array", + "items": { + "enum": [ + "RegistrationStatusNotSupportedForRenewal", + "ExpirationNotInRenewalTimeRange", + "SubscriptionNotActive" + ], + "type": "string" + }, + "readOnly": true + }, + "nextAutoRenewalTimeStamp": { + "format": "date-time", + "description": "Time stamp when the certificate would be auto renewed next", + "type": "string", + "readOnly": true + }, + "contact": { + "$ref": "#/definitions/CertificateOrderContact", + "description": "Contact info", + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "AppServiceCertificateOrderCollection": { + "description": "Collection of certificate orders.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/AppServiceCertificateOrder" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "AppServiceCertificateOrderPatchResource": { + "description": "ARM resource for a certificate order that is purchased through Azure.", + "type": "object", + "allOf": [ + { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "AppServiceCertificateOrderPatchResource resource specific properties", + "required": [ + "productType" + ], + "properties": { + "certificates": { + "description": "State of the Key Vault secret.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/AppServiceCertificate" + } + }, + "distinguishedName": { + "description": "Certificate distinguished name.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "domainVerificationToken": { + "description": "Domain verification token.", + "type": "string", + "readOnly": true + }, + "validityInYears": { + "format": "int32", + "description": "Duration in years (must be 1).", + "default": 1, + "type": "integer", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "keySize": { + "format": "int32", + "description": "Certificate key size.", + "default": 2048, + "type": "integer", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "productType": { + "description": "Certificate product type.", + "enum": [ + "StandardDomainValidatedSsl", + "StandardDomainValidatedWildCardSsl" + ], + "type": "string", + "x-ms-enum": { + "name": "CertificateProductType", + "modelAsString": false + }, + "x-ms-mutability": [ + "create", + "read" + ] + }, + "autoRenew": { + "description": "true if the certificate should be automatically renewed when it expires; otherwise, false.", + "default": true, + "type": "boolean" + }, + "provisioningState": { + "description": "Status of certificate order.", + "enum": [ + "Succeeded", + "Failed", + "Canceled", + "InProgress", + "Deleting" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": false + } + }, + "status": { + "description": "Current order status.", + "enum": [ + "Pendingissuance", + "Issued", + "Revoked", + "Canceled", + "Denied", + "Pendingrevocation", + "PendingRekey", + "Unused", + "Expired", + "NotSubmitted" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "CertificateOrderStatus", + "modelAsString": false + } + }, + "signedCertificate": { + "$ref": "#/definitions/CertificateDetails", + "description": "Signed certificate.", + "readOnly": true + }, + "csr": { + "description": "Last CSR that was created for this order.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "intermediate": { + "$ref": "#/definitions/CertificateDetails", + "description": "Intermediate certificate.", + "readOnly": true + }, + "root": { + "$ref": "#/definitions/CertificateDetails", + "description": "Root certificate.", + "readOnly": true + }, + "serialNumber": { + "description": "Current serial number of the certificate.", + "type": "string", + "readOnly": true + }, + "lastCertificateIssuanceTime": { + "format": "date-time", + "description": "Certificate last issuance time.", + "type": "string", + "readOnly": true + }, + "expirationTime": { + "format": "date-time", + "description": "Certificate expiration time.", + "type": "string", + "readOnly": true + }, + "isPrivateKeyExternal": { + "description": "true if private key is external; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "appServiceCertificateNotRenewableReasons": { + "description": "Reasons why App Service Certificate is not renewable at the current moment.", + "type": "array", + "items": { + "enum": [ + "RegistrationStatusNotSupportedForRenewal", + "ExpirationNotInRenewalTimeRange", + "SubscriptionNotActive" + ], + "type": "string" + }, + "readOnly": true + }, + "nextAutoRenewalTimeStamp": { + "format": "date-time", + "description": "Time stamp when the certificate would be auto renewed next", + "type": "string", + "readOnly": true + }, + "contact": { + "$ref": "#/definitions/CertificateOrderContact", + "description": "Contact info", + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "AppServiceCertificatePatchResource": { + "description": "Key Vault container ARM resource for a certificate that is purchased through Azure.", + "type": "object", + "allOf": [ + { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/AppServiceCertificate", + "description": "Core resource properties", + "x-ms-client-flatten": true + } + } + }, + "AppServiceCertificateResource": { + "description": "Key Vault container ARM resource for a certificate that is purchased through Azure.", + "type": "object", + "allOf": [ + { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/AppServiceCertificate", + "description": "Core resource properties", + "x-ms-client-flatten": true + } + } + }, + "CertificateDetails": { + "description": "SSL certificate details.", + "type": "object", + "properties": { + "version": { + "format": "int32", + "description": "Certificate Version.", + "type": "integer", + "readOnly": true + }, + "serialNumber": { + "description": "Certificate Serial Number.", + "type": "string", + "readOnly": true + }, + "thumbprint": { + "description": "Certificate Thumbprint.", + "type": "string", + "readOnly": true + }, + "subject": { + "description": "Certificate Subject.", + "type": "string", + "readOnly": true + }, + "notBefore": { + "format": "date-time", + "description": "Date Certificate is valid from.", + "type": "string", + "readOnly": true + }, + "notAfter": { + "format": "date-time", + "description": "Date Certificate is valid to.", + "type": "string", + "readOnly": true + }, + "signatureAlgorithm": { + "description": "Certificate Signature algorithm.", + "type": "string", + "readOnly": true + }, + "issuer": { + "description": "Certificate Issuer.", + "type": "string", + "readOnly": true + }, + "rawData": { + "description": "Raw certificate data.", + "type": "string", + "readOnly": true + } + } + }, + "CertificateEmail": { + "description": "SSL certificate email.", + "type": "object", + "allOf": [ + { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "CertificateEmail resource specific properties", + "properties": { + "emailId": { + "description": "Email id.", + "type": "string" + }, + "timeStamp": { + "format": "date-time", + "description": "Time stamp.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "CertificateOrderAction": { + "description": "Certificate order action.", + "type": "object", + "allOf": [ + { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "CertificateOrderAction resource specific properties", + "properties": { + "actionType": { + "description": "Action type.", + "enum": [ + "CertificateIssued", + "CertificateOrderCanceled", + "CertificateOrderCreated", + "CertificateRevoked", + "DomainValidationComplete", + "FraudDetected", + "OrgNameChange", + "OrgValidationComplete", + "SanDrop", + "FraudCleared", + "CertificateExpired", + "CertificateExpirationWarning", + "FraudDocumentationRequired", + "Unknown" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "CertificateOrderActionType", + "modelAsString": false + } + }, + "createdAt": { + "format": "date-time", + "description": "Time at which the certificate action was performed.", + "type": "string", + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "CertificateOrderContact": { + "type": "object", + "properties": { + "email": { + "type": "string" + }, + "nameFirst": { + "type": "string" + }, + "nameLast": { + "type": "string" + }, + "phone": { + "type": "string" + } + } + }, + "ReissueCertificateOrderRequest": { + "description": "Class representing certificate reissue request.", + "type": "object", + "allOf": [ + { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "ReissueCertificateOrderRequest resource specific properties", + "properties": { + "keySize": { + "format": "int32", + "description": "Certificate Key Size.", + "type": "integer" + }, + "delayExistingRevokeInHours": { + "format": "int32", + "description": "Delay in hours to revoke existing certificate after the new certificate is issued.", + "type": "integer" + }, + "csr": { + "description": "Csr to be used for re-key operation.", + "type": "string" + }, + "isPrivateKeyExternal": { + "description": "Should we change the ASC type (from managed private key to external private key and vice versa).", + "type": "boolean" + } + }, + "x-ms-client-flatten": true + } + } + }, + "RenewCertificateOrderRequest": { + "description": "Class representing certificate renew request.", + "type": "object", + "allOf": [ + { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "RenewCertificateOrderRequest resource specific properties", + "properties": { + "keySize": { + "format": "int32", + "description": "Certificate Key Size.", + "type": "integer" + }, + "csr": { + "description": "Csr to be used for re-key operation.", + "type": "string" + }, + "isPrivateKeyExternal": { + "description": "Should we change the ASC type (from managed private key to external private key and vice versa).", + "type": "boolean" + } + }, + "x-ms-client-flatten": true + } + } + }, + "SiteSeal": { + "description": "Site seal", + "required": [ + "html" + ], + "type": "object", + "properties": { + "html": { + "description": "HTML snippet", + "type": "string", + "x-ms-client-flatten": true + } + } + }, + "SiteSealRequest": { + "description": "Site seal request.", + "type": "object", + "properties": { + "lightTheme": { + "description": "If true use the light color theme for site seal; otherwise, use the default color theme.", + "type": "boolean" + }, + "locale": { + "description": "Locale of site seal.", + "type": "string" + } + } + } + }, + "parameters": { + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Your Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).", + "required": true, + "type": "string" + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "Name of the resource group to which the resource belongs.", + "required": true, + "type": "string", + "maxLength": 90, + "minLength": 1, + "pattern": "^[-\\w\\._\\(\\)]+[^\\.]$", + "x-ms-parameter-location": "method" + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "API Version", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/web/resource-manager/Microsoft.CertificateRegistration/stable/2020-12-01/CertificateOrdersDiagnostics.json b/specification/web/resource-manager/Microsoft.CertificateRegistration/stable/2020-12-01/CertificateOrdersDiagnostics.json new file mode 100644 index 000000000000..face9e3b85d9 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.CertificateRegistration/stable/2020-12-01/CertificateOrdersDiagnostics.json @@ -0,0 +1,190 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-12-01", + "title": "CertificateOrdersDiagnostics API Client" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CertificateRegistration/certificateOrders/{certificateOrderName}/detectors": { + "get": { + "tags": [ + "CertificateOrdersDiagnostics" + ], + "summary": "Microsoft.CertificateRegistration to get the list of detectors for this RP.", + "description": "Description for Microsoft.CertificateRegistration to get the list of detectors for this RP.", + "operationId": "CertificateOrdersDiagnostics_ListAppServiceCertificateOrderDetectorResponse", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "certificateOrderName", + "in": "path", + "description": "The certificate order name for which the response is needed.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/DetectorResponseCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List app service certificate detector response": { + "$ref": "./examples/Diagnostics_ListAppServiceCertificateOrderDetectorResponse.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CertificateRegistration/certificateOrders/{certificateOrderName}/detectors/{detectorName}": { + "get": { + "tags": [ + "CertificateOrdersDiagnostics" + ], + "summary": "Microsoft.CertificateRegistration call to get a detector response from App Lens.", + "description": "Description for Microsoft.CertificateRegistration call to get a detector response from App Lens.", + "operationId": "CertificateOrdersDiagnostics_GetAppServiceCertificateOrderDetectorResponse", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "certificateOrderName", + "in": "path", + "description": "The certificate order name for which the response is needed.", + "required": true, + "type": "string" + }, + { + "name": "detectorName", + "in": "path", + "description": "The detector name which needs to be run.", + "required": true, + "type": "string" + }, + { + "name": "startTime", + "in": "query", + "description": "The start time for detector response.", + "type": "string", + "format": "date-time" + }, + { + "name": "endTime", + "in": "query", + "description": "The end time for the detector response.", + "type": "string", + "format": "date-time" + }, + { + "name": "timeGrain", + "in": "query", + "description": "The time grain for the detector response.", + "type": "string", + "pattern": "PT[1-9][0-9]+[SMH]" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/DetectorResponse" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get app service certificate order detector response": { + "$ref": "./examples/Diagnostics_GetAppServiceCertificateOrderDetectorResponse.json" + } + } + } + } + }, + "definitions": {}, + "parameters": { + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Your Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).", + "required": true, + "type": "string" + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "Name of the resource group to which the resource belongs.", + "required": true, + "type": "string", + "maxLength": 90, + "minLength": 1, + "pattern": "^[-\\w\\._\\(\\)]+[^\\.]$", + "x-ms-parameter-location": "method" + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "API Version", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/web/resource-manager/Microsoft.CertificateRegistration/stable/2020-12-01/CertificateRegistrationProvider.json b/specification/web/resource-manager/Microsoft.CertificateRegistration/stable/2020-12-01/CertificateRegistrationProvider.json new file mode 100644 index 000000000000..c258949e895e --- /dev/null +++ b/specification/web/resource-manager/Microsoft.CertificateRegistration/stable/2020-12-01/CertificateRegistrationProvider.json @@ -0,0 +1,91 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-12-01", + "title": "CertificateRegistrationProvider API Client" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/providers/Microsoft.CertificateRegistration/operations": { + "get": { + "tags": [ + "CertificateRegistrationProvider" + ], + "summary": "Implements Csm operations Api to exposes the list of available Csm Apis under the resource provider", + "description": "Description for Implements Csm operations Api to exposes the list of available Csm Apis under the resource provider", + "operationId": "CertificateRegistrationProvider_ListOperations", + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/CsmOperationCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List operations": { + "$ref": "./examples/ListOperations.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": {}, + "parameters": { + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Your Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).", + "required": true, + "type": "string" + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "API Version", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/web/resource-manager/Microsoft.CertificateRegistration/stable/2020-12-01/examples/Diagnostics_GetAppServiceCertificateOrderDetectorResponse.json b/specification/web/resource-manager/Microsoft.CertificateRegistration/stable/2020-12-01/examples/Diagnostics_GetAppServiceCertificateOrderDetectorResponse.json new file mode 100644 index 000000000000..74d6cbb04159 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.CertificateRegistration/stable/2020-12-01/examples/Diagnostics_GetAppServiceCertificateOrderDetectorResponse.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "subscriptionId": "5700fc96-77b4-4f8d-afce-c353d8c443bd", + "resourceGroupName": "Sample-WestUSResourceGroup", + "certificateOrderName": "SampleCertificateOrderName", + "detectorName": "AutoRenewStatus", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5700fc96-77b4-4f8d-afce-c353d8c443bd/resourceGroups/Sample-WestUSResourceGroup/providers/Microsoft.CertificateRegistration/certificateOrders/SampleCertificateOrderName/detectors/AutoRenewStatus", + "name": "AutoRenewStatus", + "properties": { + "metadata": { + "id": "AutoRenewStatus", + "name": "AutoRenewStatus", + "description": "Check auto renew status", + "category": null, + "supportTopicList": [], + "type": "Detector", + "score": 0.0 + }, + "dataset": [ + { + "table": { + "tableName": "", + "columns": [ + { + "columnName": "Status", + "dataType": "String", + "columnType": null + }, + { + "columnName": "Message", + "dataType": "String", + "columnType": null + }, + { + "columnName": "Data.Name", + "dataType": "String", + "columnType": null + }, + { + "columnName": "Data.Value", + "dataType": "String", + "columnType": null + }, + { + "columnName": "Expanded", + "dataType": "String", + "columnType": null + }, + { + "columnName": "Solutions", + "dataType": "String", + "columnType": null + } + ], + "rows": [ + [ + "Info", + "App Service Certificate name SampleCertificateOrderName", + "Certificate for", + "*.mysampledomain.com", + "False", + "null" + ], + [ + "Info", + "App Service Certificate name SampleCertificateOrderName", + "Certificate Status", + "Issued", + "False", + "null" + ] + ] + }, + "renderingProperties": { + "type": "Insights", + "title": null, + "description": null + } + } + ] + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.CertificateRegistration/stable/2020-12-01/examples/Diagnostics_ListAppServiceCertificateOrderDetectorResponse.json b/specification/web/resource-manager/Microsoft.CertificateRegistration/stable/2020-12-01/examples/Diagnostics_ListAppServiceCertificateOrderDetectorResponse.json new file mode 100644 index 000000000000..f09c24bf033c --- /dev/null +++ b/specification/web/resource-manager/Microsoft.CertificateRegistration/stable/2020-12-01/examples/Diagnostics_ListAppServiceCertificateOrderDetectorResponse.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "5700fc96-77b4-4f8d-afce-c353d8c443bd", + "resourceGroupName": "Sample-WestUSResourceGroup", + "certificateOrderName": "SampleCertificateOrderName", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/5700fc96-77b4-4f8d-afce-c353d8c443bd/resourceGroups/Sample-WestUSResourceGroup/providers/Microsoft.CertificateRegistration/certificateOrders/SampleCertificateOrderName/detectors/CertsImport", + "name": "CertsImport", + "type": "Microsoft.Web/certificateOrders/detectors", + "properties": { + "metadata": { + "id": "CertsImport", + "name": "Certificates Import/Upload", + "author": "", + "description": null, + "category": null + }, + "dataset": [], + "status": { + "message": null, + "statusId": "None" + }, + "dataProvidersMetadata": null, + "suggestedUtterances": null + } + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.CertificateRegistration/stable/2020-12-01/examples/ListOperations.json b/specification/web/resource-manager/Microsoft.CertificateRegistration/stable/2020-12-01/examples/ListOperations.json new file mode 100644 index 000000000000..0bfe28c4ad8c --- /dev/null +++ b/specification/web/resource-manager/Microsoft.CertificateRegistration/stable/2020-12-01/examples/ListOperations.json @@ -0,0 +1,184 @@ +{ + "parameters": { + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "name": "Microsoft.CertificateRegistration/certificateOrders/certificates/Write", + "display": { + "provider": "Microsoft Certificates", + "resource": "Certificate", + "operation": "Add or Update Certificate", + "description": "Add a new certificate or update an existing one" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.CertificateRegistration/certificateOrders/Write", + "display": { + "provider": "Microsoft Certificates", + "resource": "AppServiceCertificate", + "operation": "Add or Update AppServiceCertificate", + "description": "Add a new certificateOrder or update an existing one" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.CertificateRegistration/certificateOrders/certificates/Delete", + "display": { + "provider": "Microsoft Certificates", + "resource": "Certificate", + "operation": "Delete Certificate", + "description": "Delete an existing certificate" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.CertificateRegistration/certificateOrders/Delete", + "display": { + "provider": "Microsoft Certificates", + "resource": "AppServiceCertificate", + "operation": "Delete AppServiceCertificate", + "description": "Delete an existing AppServiceCertificate" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.CertificateRegistration/certificateOrders/Read", + "display": { + "provider": "Microsoft Certificates", + "resource": "AppServiceCertificate", + "operation": "Get CertificateOrders", + "description": "Get the list of CertificateOrders" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.CertificateRegistration/certificateOrders/certificates/Read", + "display": { + "provider": "Microsoft Certificates", + "resource": "Certificate", + "operation": "Get Certificates", + "description": "Get the list of certificates" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.CertificateRegistration/certificateOrders/reissue/Action", + "display": { + "provider": "Microsoft Certificates", + "resource": "AppServiceCertificate", + "operation": "Reissue certificateorder", + "description": "Reissue an existing certificateorder" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.CertificateRegistration/certificateOrders/renew/Action", + "display": { + "provider": "Microsoft Certificates", + "resource": "AppServiceCertificate", + "operation": "Renew certificateorder", + "description": "Renew an existing certificateorder" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.CertificateRegistration/certificateOrders/retrieveCertificateActions/Action", + "display": { + "provider": "Microsoft Certificates", + "resource": "AppServiceCertificate", + "operation": "Certificateorder actions", + "description": "Retrieve the list of certificate actions" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.CertificateRegistration/certificateOrders/retrieveEmailHistory/Action", + "display": { + "provider": "Microsoft Certificates", + "resource": "AppServiceCertificate", + "operation": "Certificateorder email history", + "description": "Retrieve certificate email history" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.CertificateRegistration/certificateOrders/resendEmail/Action", + "display": { + "provider": "Microsoft Certificates", + "resource": "AppServiceCertificate", + "operation": "Resend Certificateorder email", + "description": "Resend certificate email" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.CertificateRegistration/certificateOrders/verifyDomainOwnership/Action", + "display": { + "provider": "Microsoft Certificates", + "resource": "AppServiceCertificate", + "operation": "Verify domain ownership", + "description": "Verify domain ownership" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.CertificateRegistration/certificateOrders/resendRequestEmails/Action", + "display": { + "provider": "Microsoft Certificates", + "resource": "AppServiceCertificate", + "operation": "Resend request emails to another email address", + "description": "Resend request emails to another email address" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.CertificateRegistration/certificateOrders/resendRequestEmails/Action", + "display": { + "provider": "Microsoft Certificates", + "resource": "AppServiceCertificate", + "operation": "Retrieve site seal for an issued App Service Certificate", + "description": "Retrieve site seal for an issued App Service Certificate" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.CertificateRegistration/provisionGlobalAppServicePrincipalInUserTenant/Action", + "display": { + "provider": "Microsoft Certificates", + "resource": "AppServiceCertificate", + "operation": "Provision service principal", + "description": "Provision service principal for service app principal" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.CertificateRegistration/validateCertificateRegistrationInformation/Action", + "display": { + "provider": "Microsoft Certificates", + "resource": "AppServiceCertificate", + "operation": "Certificate Purchase Info Validation", + "description": "Validate certificate purchase object without submitting it" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.CertificateRegistration/register/action", + "display": { + "provider": "Microsoft Certificates", + "resource": "Microsoft Certificates resource provider", + "operation": "Register Microsoft Certificates resource provider", + "description": "Register the Microsoft Certificates resource provider for the subscription" + }, + "origin": "user,system" + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.CertificateRegistration/stable/2021-01-01/AppServiceCertificateOrders.json b/specification/web/resource-manager/Microsoft.CertificateRegistration/stable/2021-01-01/AppServiceCertificateOrders.json new file mode 100644 index 000000000000..f68552d0032c --- /dev/null +++ b/specification/web/resource-manager/Microsoft.CertificateRegistration/stable/2021-01-01/AppServiceCertificateOrders.json @@ -0,0 +1,1721 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-01-01", + "title": "AppServiceCertificateOrders API Client" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.CertificateRegistration/certificateOrders": { + "get": { + "tags": [ + "AppServiceCertificateOrders" + ], + "summary": "List all certificate orders in a subscription.", + "description": "Description for List all certificate orders in a subscription.", + "operationId": "AppServiceCertificateOrders_List", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AppServiceCertificateOrderCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.CertificateRegistration/validateCertificateRegistrationInformation": { + "post": { + "tags": [ + "AppServiceCertificateOrders" + ], + "summary": "Validate information for a certificate order.", + "description": "Description for Validate information for a certificate order.", + "operationId": "AppServiceCertificateOrders_ValidatePurchaseInformation", + "parameters": [ + { + "name": "appServiceCertificateOrder", + "in": "body", + "description": "Information for a certificate order.", + "required": true, + "schema": { + "$ref": "#/definitions/AppServiceCertificateOrder" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CertificateRegistration/certificateOrders": { + "get": { + "tags": [ + "AppServiceCertificateOrders" + ], + "summary": "Get certificate orders in a resource group.", + "description": "Description for Get certificate orders in a resource group.", + "operationId": "AppServiceCertificateOrders_ListByResourceGroup", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AppServiceCertificateOrderCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CertificateRegistration/certificateOrders/{certificateOrderName}": { + "get": { + "tags": [ + "AppServiceCertificateOrders" + ], + "summary": "Get a certificate order.", + "description": "Description for Get a certificate order.", + "operationId": "AppServiceCertificateOrders_Get", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "certificateOrderName", + "in": "path", + "description": "Name of the certificate order..", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AppServiceCertificateOrder" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "AppServiceCertificateOrders" + ], + "summary": "Create or update a certificate purchase order.", + "description": "Description for Create or update a certificate purchase order.", + "operationId": "AppServiceCertificateOrders_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "certificateOrderName", + "in": "path", + "description": "Name of the certificate order.", + "required": true, + "type": "string" + }, + { + "name": "certificateDistinguishedName", + "in": "body", + "description": "Distinguished name to use for the certificate order.", + "required": true, + "schema": { + "$ref": "#/definitions/AppServiceCertificateOrder" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "App Service Certificate Order is created.", + "schema": { + "$ref": "#/definitions/AppServiceCertificateOrder" + } + }, + "201": { + "description": "App Service Certificate Order creation operation is in progress", + "schema": { + "$ref": "#/definitions/AppServiceCertificateOrder" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "AppServiceCertificateOrders" + ], + "summary": "Delete an existing certificate order.", + "description": "Description for Delete an existing certificate order.", + "operationId": "AppServiceCertificateOrders_Delete", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "certificateOrderName", + "in": "path", + "description": "Name of the certificate order.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted certificate order." + }, + "204": { + "description": "Certificate order does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "AppServiceCertificateOrders" + ], + "summary": "Create or update a certificate purchase order.", + "description": "Description for Create or update a certificate purchase order.", + "operationId": "AppServiceCertificateOrders_Update", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "certificateOrderName", + "in": "path", + "description": "Name of the certificate order.", + "required": true, + "type": "string" + }, + { + "name": "certificateDistinguishedName", + "in": "body", + "description": "Distinguished name to use for the certificate order.", + "required": true, + "schema": { + "$ref": "#/definitions/AppServiceCertificateOrderPatchResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "App Service Certificate Order is created.", + "schema": { + "$ref": "#/definitions/AppServiceCertificateOrder" + } + }, + "201": { + "description": "App Service Certificate Order creation operation is in progress", + "schema": { + "$ref": "#/definitions/AppServiceCertificateOrder" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CertificateRegistration/certificateOrders/{certificateOrderName}/certificates": { + "get": { + "tags": [ + "AppServiceCertificateOrders" + ], + "summary": "List all certificates associated with a certificate order.", + "description": "Description for List all certificates associated with a certificate order.", + "operationId": "AppServiceCertificateOrders_ListCertificates", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "certificateOrderName", + "in": "path", + "description": "Name of the certificate order.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AppServiceCertificateCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CertificateRegistration/certificateOrders/{certificateOrderName}/certificates/{name}": { + "get": { + "tags": [ + "AppServiceCertificateOrders" + ], + "summary": "Get the certificate associated with a certificate order.", + "description": "Description for Get the certificate associated with a certificate order.", + "operationId": "AppServiceCertificateOrders_GetCertificate", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "certificateOrderName", + "in": "path", + "description": "Name of the certificate order.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "Name of the certificate.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AppServiceCertificateResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "AppServiceCertificateOrders" + ], + "summary": "Creates or updates a certificate and associates with key vault secret.", + "description": "Description for Creates or updates a certificate and associates with key vault secret.", + "operationId": "AppServiceCertificateOrders_CreateOrUpdateCertificate", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "certificateOrderName", + "in": "path", + "description": "Name of the certificate order.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "Name of the certificate.", + "required": true, + "type": "string" + }, + { + "name": "keyVaultCertificate", + "in": "body", + "description": "Key vault certificate resource Id.", + "required": true, + "schema": { + "$ref": "#/definitions/AppServiceCertificateResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "App Service Certificate is created.", + "schema": { + "$ref": "#/definitions/AppServiceCertificateResource" + } + }, + "201": { + "description": "App Service Certificate creation operation is in progress", + "schema": { + "$ref": "#/definitions/AppServiceCertificateResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "AppServiceCertificateOrders" + ], + "summary": "Delete the certificate associated with a certificate order.", + "description": "Description for Delete the certificate associated with a certificate order.", + "operationId": "AppServiceCertificateOrders_DeleteCertificate", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "certificateOrderName", + "in": "path", + "description": "Name of the certificate order.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "Name of the certificate.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted certificate." + }, + "204": { + "description": "Certificate does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "AppServiceCertificateOrders" + ], + "summary": "Creates or updates a certificate and associates with key vault secret.", + "description": "Description for Creates or updates a certificate and associates with key vault secret.", + "operationId": "AppServiceCertificateOrders_UpdateCertificate", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "certificateOrderName", + "in": "path", + "description": "Name of the certificate order.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "Name of the certificate.", + "required": true, + "type": "string" + }, + { + "name": "keyVaultCertificate", + "in": "body", + "description": "Key vault certificate resource Id.", + "required": true, + "schema": { + "$ref": "#/definitions/AppServiceCertificatePatchResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "App Service Certificate is created.", + "schema": { + "$ref": "#/definitions/AppServiceCertificateResource" + } + }, + "201": { + "description": "App Service Certificate creation operation is in progress", + "schema": { + "$ref": "#/definitions/AppServiceCertificateResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CertificateRegistration/certificateOrders/{certificateOrderName}/reissue": { + "post": { + "tags": [ + "AppServiceCertificateOrders" + ], + "summary": "Reissue an existing certificate order.", + "description": "Description for Reissue an existing certificate order.", + "operationId": "AppServiceCertificateOrders_Reissue", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "certificateOrderName", + "in": "path", + "description": "Name of the certificate order.", + "required": true, + "type": "string" + }, + { + "name": "reissueCertificateOrderRequest", + "in": "body", + "description": "Parameters for the reissue.", + "required": true, + "schema": { + "$ref": "#/definitions/ReissueCertificateOrderRequest" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CertificateRegistration/certificateOrders/{certificateOrderName}/renew": { + "post": { + "tags": [ + "AppServiceCertificateOrders" + ], + "summary": "Renew an existing certificate order.", + "description": "Description for Renew an existing certificate order.", + "operationId": "AppServiceCertificateOrders_Renew", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "certificateOrderName", + "in": "path", + "description": "Name of the certificate order.", + "required": true, + "type": "string" + }, + { + "name": "renewCertificateOrderRequest", + "in": "body", + "description": "Renew parameters", + "required": true, + "schema": { + "$ref": "#/definitions/RenewCertificateOrderRequest" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CertificateRegistration/certificateOrders/{certificateOrderName}/resendEmail": { + "post": { + "tags": [ + "AppServiceCertificateOrders" + ], + "summary": "Resend certificate email.", + "description": "Description for Resend certificate email.", + "operationId": "AppServiceCertificateOrders_ResendEmail", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "certificateOrderName", + "in": "path", + "description": "Name of the certificate order.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CertificateRegistration/certificateOrders/{certificateOrderName}/resendRequestEmails": { + "post": { + "tags": [ + "AppServiceCertificateOrders" + ], + "summary": "Verify domain ownership for this certificate order.", + "description": "Description for Verify domain ownership for this certificate order.", + "operationId": "AppServiceCertificateOrders_ResendRequestEmails", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "certificateOrderName", + "in": "path", + "description": "Name of the certificate order.", + "required": true, + "type": "string" + }, + { + "name": "nameIdentifier", + "in": "body", + "description": "Email address", + "required": true, + "schema": { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/NameIdentifier" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CertificateRegistration/certificateOrders/{certificateOrderName}/retrieveSiteSeal": { + "post": { + "tags": [ + "AppServiceCertificateOrders" + ], + "summary": "Verify domain ownership for this certificate order.", + "description": "Description for Verify domain ownership for this certificate order.", + "operationId": "AppServiceCertificateOrders_RetrieveSiteSeal", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "certificateOrderName", + "in": "path", + "description": "Name of the certificate order.", + "required": true, + "type": "string" + }, + { + "name": "siteSealRequest", + "in": "body", + "description": "Site seal request.", + "required": true, + "schema": { + "$ref": "#/definitions/SiteSealRequest" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SiteSeal" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CertificateRegistration/certificateOrders/{certificateOrderName}/verifyDomainOwnership": { + "post": { + "tags": [ + "AppServiceCertificateOrders" + ], + "summary": "Verify domain ownership for this certificate order.", + "description": "Description for Verify domain ownership for this certificate order.", + "operationId": "AppServiceCertificateOrders_VerifyDomainOwnership", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "certificateOrderName", + "in": "path", + "description": "Name of the certificate order.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CertificateRegistration/certificateOrders/{name}/retrieveCertificateActions": { + "post": { + "tags": [ + "AppServiceCertificateOrders" + ], + "summary": "Retrieve the list of certificate actions.", + "description": "Description for Retrieve the list of certificate actions.", + "operationId": "AppServiceCertificateOrders_RetrieveCertificateActions", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the certificate order.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/CertificateOrderAction" + } + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CertificateRegistration/certificateOrders/{name}/retrieveEmailHistory": { + "post": { + "tags": [ + "AppServiceCertificateOrders" + ], + "summary": "Retrieve email history.", + "description": "Description for Retrieve email history.", + "operationId": "AppServiceCertificateOrders_RetrieveCertificateEmailHistory", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the certificate order.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/CertificateEmail" + } + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + } + }, + "definitions": { + "AppServiceCertificate": { + "description": "Key Vault container for a certificate that is purchased through Azure.", + "type": "object", + "properties": { + "keyVaultId": { + "description": "Key Vault resource Id.", + "type": "string" + }, + "keyVaultSecretName": { + "description": "Key Vault secret name.", + "type": "string" + }, + "provisioningState": { + "description": "Status of the Key Vault secret.", + "enum": [ + "Initialized", + "WaitingOnCertificateOrder", + "Succeeded", + "CertificateOrderFailed", + "OperationNotPermittedOnKeyVault", + "AzureServiceUnauthorizedToAccessKeyVault", + "KeyVaultDoesNotExist", + "KeyVaultSecretDoesNotExist", + "UnknownError", + "ExternalPrivateKey", + "Unknown" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "KeyVaultSecretStatus", + "modelAsString": false + } + } + } + }, + "AppServiceCertificateCollection": { + "description": "Collection of certificate order certificates.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/AppServiceCertificateResource" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "AppServiceCertificateOrder": { + "description": "SSL certificate purchase order.", + "type": "object", + "allOf": [ + { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "AppServiceCertificateOrder resource specific properties", + "required": [ + "productType" + ], + "properties": { + "certificates": { + "description": "State of the Key Vault secret.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/AppServiceCertificate" + } + }, + "distinguishedName": { + "description": "Certificate distinguished name.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "domainVerificationToken": { + "description": "Domain verification token.", + "type": "string", + "readOnly": true + }, + "validityInYears": { + "format": "int32", + "description": "Duration in years (must be 1).", + "default": 1, + "type": "integer", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "keySize": { + "format": "int32", + "description": "Certificate key size.", + "default": 2048, + "type": "integer", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "productType": { + "description": "Certificate product type.", + "enum": [ + "StandardDomainValidatedSsl", + "StandardDomainValidatedWildCardSsl" + ], + "type": "string", + "x-ms-enum": { + "name": "CertificateProductType", + "modelAsString": false + }, + "x-ms-mutability": [ + "create", + "read" + ] + }, + "autoRenew": { + "description": "true if the certificate should be automatically renewed when it expires; otherwise, false.", + "default": true, + "type": "boolean" + }, + "provisioningState": { + "description": "Status of certificate order.", + "enum": [ + "Succeeded", + "Failed", + "Canceled", + "InProgress", + "Deleting" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": false + } + }, + "status": { + "description": "Current order status.", + "enum": [ + "Pendingissuance", + "Issued", + "Revoked", + "Canceled", + "Denied", + "Pendingrevocation", + "PendingRekey", + "Unused", + "Expired", + "NotSubmitted" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "CertificateOrderStatus", + "modelAsString": false + } + }, + "signedCertificate": { + "$ref": "#/definitions/CertificateDetails", + "description": "Signed certificate.", + "readOnly": true + }, + "csr": { + "description": "Last CSR that was created for this order.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "intermediate": { + "$ref": "#/definitions/CertificateDetails", + "description": "Intermediate certificate.", + "readOnly": true + }, + "root": { + "$ref": "#/definitions/CertificateDetails", + "description": "Root certificate.", + "readOnly": true + }, + "serialNumber": { + "description": "Current serial number of the certificate.", + "type": "string", + "readOnly": true + }, + "lastCertificateIssuanceTime": { + "format": "date-time", + "description": "Certificate last issuance time.", + "type": "string", + "readOnly": true + }, + "expirationTime": { + "format": "date-time", + "description": "Certificate expiration time.", + "type": "string", + "readOnly": true + }, + "isPrivateKeyExternal": { + "description": "true if private key is external; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "appServiceCertificateNotRenewableReasons": { + "description": "Reasons why App Service Certificate is not renewable at the current moment.", + "type": "array", + "items": { + "enum": [ + "RegistrationStatusNotSupportedForRenewal", + "ExpirationNotInRenewalTimeRange", + "SubscriptionNotActive" + ], + "type": "string" + }, + "readOnly": true + }, + "nextAutoRenewalTimeStamp": { + "format": "date-time", + "description": "Time stamp when the certificate would be auto renewed next", + "type": "string", + "readOnly": true + }, + "contact": { + "$ref": "#/definitions/CertificateOrderContact", + "description": "Contact info", + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "AppServiceCertificateOrderCollection": { + "description": "Collection of certificate orders.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/AppServiceCertificateOrder" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "AppServiceCertificateOrderPatchResource": { + "description": "ARM resource for a certificate order that is purchased through Azure.", + "type": "object", + "allOf": [ + { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "AppServiceCertificateOrderPatchResource resource specific properties", + "required": [ + "productType" + ], + "properties": { + "certificates": { + "description": "State of the Key Vault secret.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/AppServiceCertificate" + } + }, + "distinguishedName": { + "description": "Certificate distinguished name.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "domainVerificationToken": { + "description": "Domain verification token.", + "type": "string", + "readOnly": true + }, + "validityInYears": { + "format": "int32", + "description": "Duration in years (must be 1).", + "default": 1, + "type": "integer", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "keySize": { + "format": "int32", + "description": "Certificate key size.", + "default": 2048, + "type": "integer", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "productType": { + "description": "Certificate product type.", + "enum": [ + "StandardDomainValidatedSsl", + "StandardDomainValidatedWildCardSsl" + ], + "type": "string", + "x-ms-enum": { + "name": "CertificateProductType", + "modelAsString": false + }, + "x-ms-mutability": [ + "create", + "read" + ] + }, + "autoRenew": { + "description": "true if the certificate should be automatically renewed when it expires; otherwise, false.", + "default": true, + "type": "boolean" + }, + "provisioningState": { + "description": "Status of certificate order.", + "enum": [ + "Succeeded", + "Failed", + "Canceled", + "InProgress", + "Deleting" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": false + } + }, + "status": { + "description": "Current order status.", + "enum": [ + "Pendingissuance", + "Issued", + "Revoked", + "Canceled", + "Denied", + "Pendingrevocation", + "PendingRekey", + "Unused", + "Expired", + "NotSubmitted" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "CertificateOrderStatus", + "modelAsString": false + } + }, + "signedCertificate": { + "$ref": "#/definitions/CertificateDetails", + "description": "Signed certificate.", + "readOnly": true + }, + "csr": { + "description": "Last CSR that was created for this order.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "intermediate": { + "$ref": "#/definitions/CertificateDetails", + "description": "Intermediate certificate.", + "readOnly": true + }, + "root": { + "$ref": "#/definitions/CertificateDetails", + "description": "Root certificate.", + "readOnly": true + }, + "serialNumber": { + "description": "Current serial number of the certificate.", + "type": "string", + "readOnly": true + }, + "lastCertificateIssuanceTime": { + "format": "date-time", + "description": "Certificate last issuance time.", + "type": "string", + "readOnly": true + }, + "expirationTime": { + "format": "date-time", + "description": "Certificate expiration time.", + "type": "string", + "readOnly": true + }, + "isPrivateKeyExternal": { + "description": "true if private key is external; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "appServiceCertificateNotRenewableReasons": { + "description": "Reasons why App Service Certificate is not renewable at the current moment.", + "type": "array", + "items": { + "enum": [ + "RegistrationStatusNotSupportedForRenewal", + "ExpirationNotInRenewalTimeRange", + "SubscriptionNotActive" + ], + "type": "string" + }, + "readOnly": true + }, + "nextAutoRenewalTimeStamp": { + "format": "date-time", + "description": "Time stamp when the certificate would be auto renewed next", + "type": "string", + "readOnly": true + }, + "contact": { + "$ref": "#/definitions/CertificateOrderContact", + "description": "Contact info", + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "AppServiceCertificatePatchResource": { + "description": "Key Vault container ARM resource for a certificate that is purchased through Azure.", + "type": "object", + "allOf": [ + { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/AppServiceCertificate", + "description": "Core resource properties", + "x-ms-client-flatten": true + } + } + }, + "AppServiceCertificateResource": { + "description": "Key Vault container ARM resource for a certificate that is purchased through Azure.", + "type": "object", + "allOf": [ + { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/AppServiceCertificate", + "description": "Core resource properties", + "x-ms-client-flatten": true + } + } + }, + "CertificateDetails": { + "description": "SSL certificate details.", + "type": "object", + "properties": { + "version": { + "format": "int32", + "description": "Certificate Version.", + "type": "integer", + "readOnly": true + }, + "serialNumber": { + "description": "Certificate Serial Number.", + "type": "string", + "readOnly": true + }, + "thumbprint": { + "description": "Certificate Thumbprint.", + "type": "string", + "readOnly": true + }, + "subject": { + "description": "Certificate Subject.", + "type": "string", + "readOnly": true + }, + "notBefore": { + "format": "date-time", + "description": "Date Certificate is valid from.", + "type": "string", + "readOnly": true + }, + "notAfter": { + "format": "date-time", + "description": "Date Certificate is valid to.", + "type": "string", + "readOnly": true + }, + "signatureAlgorithm": { + "description": "Certificate Signature algorithm.", + "type": "string", + "readOnly": true + }, + "issuer": { + "description": "Certificate Issuer.", + "type": "string", + "readOnly": true + }, + "rawData": { + "description": "Raw certificate data.", + "type": "string", + "readOnly": true + } + } + }, + "CertificateEmail": { + "description": "SSL certificate email.", + "type": "object", + "allOf": [ + { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "CertificateEmail resource specific properties", + "properties": { + "emailId": { + "description": "Email id.", + "type": "string" + }, + "timeStamp": { + "format": "date-time", + "description": "Time stamp.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "CertificateOrderAction": { + "description": "Certificate order action.", + "type": "object", + "allOf": [ + { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "CertificateOrderAction resource specific properties", + "properties": { + "actionType": { + "description": "Action type.", + "enum": [ + "CertificateIssued", + "CertificateOrderCanceled", + "CertificateOrderCreated", + "CertificateRevoked", + "DomainValidationComplete", + "FraudDetected", + "OrgNameChange", + "OrgValidationComplete", + "SanDrop", + "FraudCleared", + "CertificateExpired", + "CertificateExpirationWarning", + "FraudDocumentationRequired", + "Unknown" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "CertificateOrderActionType", + "modelAsString": false + } + }, + "createdAt": { + "format": "date-time", + "description": "Time at which the certificate action was performed.", + "type": "string", + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "CertificateOrderContact": { + "type": "object", + "properties": { + "email": { + "type": "string" + }, + "nameFirst": { + "type": "string" + }, + "nameLast": { + "type": "string" + }, + "phone": { + "type": "string" + } + } + }, + "ReissueCertificateOrderRequest": { + "description": "Class representing certificate reissue request.", + "type": "object", + "allOf": [ + { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "ReissueCertificateOrderRequest resource specific properties", + "properties": { + "keySize": { + "format": "int32", + "description": "Certificate Key Size.", + "type": "integer" + }, + "delayExistingRevokeInHours": { + "format": "int32", + "description": "Delay in hours to revoke existing certificate after the new certificate is issued.", + "type": "integer" + }, + "csr": { + "description": "Csr to be used for re-key operation.", + "type": "string" + }, + "isPrivateKeyExternal": { + "description": "Should we change the ASC type (from managed private key to external private key and vice versa).", + "type": "boolean" + } + }, + "x-ms-client-flatten": true + } + } + }, + "RenewCertificateOrderRequest": { + "description": "Class representing certificate renew request.", + "type": "object", + "allOf": [ + { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "RenewCertificateOrderRequest resource specific properties", + "properties": { + "keySize": { + "format": "int32", + "description": "Certificate Key Size.", + "type": "integer" + }, + "csr": { + "description": "Csr to be used for re-key operation.", + "type": "string" + }, + "isPrivateKeyExternal": { + "description": "Should we change the ASC type (from managed private key to external private key and vice versa).", + "type": "boolean" + } + }, + "x-ms-client-flatten": true + } + } + }, + "SiteSeal": { + "description": "Site seal", + "required": [ + "html" + ], + "type": "object", + "properties": { + "html": { + "description": "HTML snippet", + "type": "string", + "x-ms-client-flatten": true + } + } + }, + "SiteSealRequest": { + "description": "Site seal request.", + "type": "object", + "properties": { + "lightTheme": { + "description": "If true use the light color theme for site seal; otherwise, use the default color theme.", + "type": "boolean" + }, + "locale": { + "description": "Locale of site seal.", + "type": "string" + } + } + } + }, + "parameters": { + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Your Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).", + "required": true, + "type": "string" + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "Name of the resource group to which the resource belongs.", + "required": true, + "type": "string", + "maxLength": 90, + "minLength": 1, + "pattern": "^[-\\w\\._\\(\\)]+[^\\.]$", + "x-ms-parameter-location": "method" + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "API Version", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/web/resource-manager/Microsoft.CertificateRegistration/stable/2021-01-01/CertificateOrdersDiagnostics.json b/specification/web/resource-manager/Microsoft.CertificateRegistration/stable/2021-01-01/CertificateOrdersDiagnostics.json new file mode 100644 index 000000000000..dd30c85d820f --- /dev/null +++ b/specification/web/resource-manager/Microsoft.CertificateRegistration/stable/2021-01-01/CertificateOrdersDiagnostics.json @@ -0,0 +1,190 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-01-01", + "title": "CertificateOrdersDiagnostics API Client" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CertificateRegistration/certificateOrders/{certificateOrderName}/detectors": { + "get": { + "tags": [ + "CertificateOrdersDiagnostics" + ], + "summary": "Microsoft.CertificateRegistration to get the list of detectors for this RP.", + "description": "Description for Microsoft.CertificateRegistration to get the list of detectors for this RP.", + "operationId": "CertificateOrdersDiagnostics_ListAppServiceCertificateOrderDetectorResponse", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "certificateOrderName", + "in": "path", + "description": "The certificate order name for which the response is needed.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/DetectorResponseCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List app service certificate detector response": { + "$ref": "./examples/Diagnostics_ListAppServiceCertificateOrderDetectorResponse.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CertificateRegistration/certificateOrders/{certificateOrderName}/detectors/{detectorName}": { + "get": { + "tags": [ + "CertificateOrdersDiagnostics" + ], + "summary": "Microsoft.CertificateRegistration call to get a detector response from App Lens.", + "description": "Description for Microsoft.CertificateRegistration call to get a detector response from App Lens.", + "operationId": "CertificateOrdersDiagnostics_GetAppServiceCertificateOrderDetectorResponse", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "certificateOrderName", + "in": "path", + "description": "The certificate order name for which the response is needed.", + "required": true, + "type": "string" + }, + { + "name": "detectorName", + "in": "path", + "description": "The detector name which needs to be run.", + "required": true, + "type": "string" + }, + { + "name": "startTime", + "in": "query", + "description": "The start time for detector response.", + "type": "string", + "format": "date-time" + }, + { + "name": "endTime", + "in": "query", + "description": "The end time for the detector response.", + "type": "string", + "format": "date-time" + }, + { + "name": "timeGrain", + "in": "query", + "description": "The time grain for the detector response.", + "type": "string", + "pattern": "PT[1-9][0-9]+[SMH]" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/DetectorResponse" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get app service certificate order detector response": { + "$ref": "./examples/Diagnostics_GetAppServiceCertificateOrderDetectorResponse.json" + } + } + } + } + }, + "definitions": {}, + "parameters": { + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Your Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).", + "required": true, + "type": "string" + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "Name of the resource group to which the resource belongs.", + "required": true, + "type": "string", + "maxLength": 90, + "minLength": 1, + "pattern": "^[-\\w\\._\\(\\)]+[^\\.]$", + "x-ms-parameter-location": "method" + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "API Version", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/web/resource-manager/Microsoft.CertificateRegistration/stable/2021-01-01/CertificateRegistrationProvider.json b/specification/web/resource-manager/Microsoft.CertificateRegistration/stable/2021-01-01/CertificateRegistrationProvider.json new file mode 100644 index 000000000000..cf20ef0cd7d5 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.CertificateRegistration/stable/2021-01-01/CertificateRegistrationProvider.json @@ -0,0 +1,91 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-01-01", + "title": "CertificateRegistrationProvider API Client" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/providers/Microsoft.CertificateRegistration/operations": { + "get": { + "tags": [ + "CertificateRegistrationProvider" + ], + "summary": "Implements Csm operations Api to exposes the list of available Csm Apis under the resource provider", + "description": "Description for Implements Csm operations Api to exposes the list of available Csm Apis under the resource provider", + "operationId": "CertificateRegistrationProvider_ListOperations", + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/CsmOperationCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List operations": { + "$ref": "./examples/ListOperations.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": {}, + "parameters": { + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Your Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).", + "required": true, + "type": "string" + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "API Version", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/web/resource-manager/Microsoft.CertificateRegistration/stable/2021-01-01/examples/Diagnostics_GetAppServiceCertificateOrderDetectorResponse.json b/specification/web/resource-manager/Microsoft.CertificateRegistration/stable/2021-01-01/examples/Diagnostics_GetAppServiceCertificateOrderDetectorResponse.json new file mode 100644 index 000000000000..2aed4584abfd --- /dev/null +++ b/specification/web/resource-manager/Microsoft.CertificateRegistration/stable/2021-01-01/examples/Diagnostics_GetAppServiceCertificateOrderDetectorResponse.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "subscriptionId": "5700fc96-77b4-4f8d-afce-c353d8c443bd", + "resourceGroupName": "Sample-WestUSResourceGroup", + "certificateOrderName": "SampleCertificateOrderName", + "detectorName": "AutoRenewStatus", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5700fc96-77b4-4f8d-afce-c353d8c443bd/resourceGroups/Sample-WestUSResourceGroup/providers/Microsoft.CertificateRegistration/certificateOrders/SampleCertificateOrderName/detectors/AutoRenewStatus", + "name": "AutoRenewStatus", + "properties": { + "metadata": { + "id": "AutoRenewStatus", + "name": "AutoRenewStatus", + "description": "Check auto renew status", + "category": null, + "supportTopicList": [], + "type": "Detector", + "score": 0.0 + }, + "dataset": [ + { + "table": { + "tableName": "", + "columns": [ + { + "columnName": "Status", + "dataType": "String", + "columnType": null + }, + { + "columnName": "Message", + "dataType": "String", + "columnType": null + }, + { + "columnName": "Data.Name", + "dataType": "String", + "columnType": null + }, + { + "columnName": "Data.Value", + "dataType": "String", + "columnType": null + }, + { + "columnName": "Expanded", + "dataType": "String", + "columnType": null + }, + { + "columnName": "Solutions", + "dataType": "String", + "columnType": null + } + ], + "rows": [ + [ + "Info", + "App Service Certificate name SampleCertificateOrderName", + "Certificate for", + "*.mysampledomain.com", + "False", + "null" + ], + [ + "Info", + "App Service Certificate name SampleCertificateOrderName", + "Certificate Status", + "Issued", + "False", + "null" + ] + ] + }, + "renderingProperties": { + "type": "Insights", + "title": null, + "description": null + } + } + ] + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.CertificateRegistration/stable/2021-01-01/examples/Diagnostics_ListAppServiceCertificateOrderDetectorResponse.json b/specification/web/resource-manager/Microsoft.CertificateRegistration/stable/2021-01-01/examples/Diagnostics_ListAppServiceCertificateOrderDetectorResponse.json new file mode 100644 index 000000000000..ba5c50f926de --- /dev/null +++ b/specification/web/resource-manager/Microsoft.CertificateRegistration/stable/2021-01-01/examples/Diagnostics_ListAppServiceCertificateOrderDetectorResponse.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "5700fc96-77b4-4f8d-afce-c353d8c443bd", + "resourceGroupName": "Sample-WestUSResourceGroup", + "certificateOrderName": "SampleCertificateOrderName", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/5700fc96-77b4-4f8d-afce-c353d8c443bd/resourceGroups/Sample-WestUSResourceGroup/providers/Microsoft.CertificateRegistration/certificateOrders/SampleCertificateOrderName/detectors/CertsImport", + "name": "CertsImport", + "type": "Microsoft.Web/certificateOrders/detectors", + "properties": { + "metadata": { + "id": "CertsImport", + "name": "Certificates Import/Upload", + "author": "", + "description": null, + "category": null + }, + "dataset": [], + "status": { + "message": null, + "statusId": "None" + }, + "dataProvidersMetadata": null, + "suggestedUtterances": null + } + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.CertificateRegistration/stable/2021-01-01/examples/ListOperations.json b/specification/web/resource-manager/Microsoft.CertificateRegistration/stable/2021-01-01/examples/ListOperations.json new file mode 100644 index 000000000000..abeca897f02f --- /dev/null +++ b/specification/web/resource-manager/Microsoft.CertificateRegistration/stable/2021-01-01/examples/ListOperations.json @@ -0,0 +1,184 @@ +{ + "parameters": { + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "name": "Microsoft.CertificateRegistration/certificateOrders/certificates/Write", + "display": { + "provider": "Microsoft Certificates", + "resource": "Certificate", + "operation": "Add or Update Certificate", + "description": "Add a new certificate or update an existing one" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.CertificateRegistration/certificateOrders/Write", + "display": { + "provider": "Microsoft Certificates", + "resource": "AppServiceCertificate", + "operation": "Add or Update AppServiceCertificate", + "description": "Add a new certificateOrder or update an existing one" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.CertificateRegistration/certificateOrders/certificates/Delete", + "display": { + "provider": "Microsoft Certificates", + "resource": "Certificate", + "operation": "Delete Certificate", + "description": "Delete an existing certificate" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.CertificateRegistration/certificateOrders/Delete", + "display": { + "provider": "Microsoft Certificates", + "resource": "AppServiceCertificate", + "operation": "Delete AppServiceCertificate", + "description": "Delete an existing AppServiceCertificate" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.CertificateRegistration/certificateOrders/Read", + "display": { + "provider": "Microsoft Certificates", + "resource": "AppServiceCertificate", + "operation": "Get CertificateOrders", + "description": "Get the list of CertificateOrders" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.CertificateRegistration/certificateOrders/certificates/Read", + "display": { + "provider": "Microsoft Certificates", + "resource": "Certificate", + "operation": "Get Certificates", + "description": "Get the list of certificates" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.CertificateRegistration/certificateOrders/reissue/Action", + "display": { + "provider": "Microsoft Certificates", + "resource": "AppServiceCertificate", + "operation": "Reissue certificateorder", + "description": "Reissue an existing certificateorder" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.CertificateRegistration/certificateOrders/renew/Action", + "display": { + "provider": "Microsoft Certificates", + "resource": "AppServiceCertificate", + "operation": "Renew certificateorder", + "description": "Renew an existing certificateorder" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.CertificateRegistration/certificateOrders/retrieveCertificateActions/Action", + "display": { + "provider": "Microsoft Certificates", + "resource": "AppServiceCertificate", + "operation": "Certificateorder actions", + "description": "Retrieve the list of certificate actions" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.CertificateRegistration/certificateOrders/retrieveEmailHistory/Action", + "display": { + "provider": "Microsoft Certificates", + "resource": "AppServiceCertificate", + "operation": "Certificateorder email history", + "description": "Retrieve certificate email history" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.CertificateRegistration/certificateOrders/resendEmail/Action", + "display": { + "provider": "Microsoft Certificates", + "resource": "AppServiceCertificate", + "operation": "Resend Certificateorder email", + "description": "Resend certificate email" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.CertificateRegistration/certificateOrders/verifyDomainOwnership/Action", + "display": { + "provider": "Microsoft Certificates", + "resource": "AppServiceCertificate", + "operation": "Verify domain ownership", + "description": "Verify domain ownership" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.CertificateRegistration/certificateOrders/resendRequestEmails/Action", + "display": { + "provider": "Microsoft Certificates", + "resource": "AppServiceCertificate", + "operation": "Resend request emails to another email address", + "description": "Resend request emails to another email address" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.CertificateRegistration/certificateOrders/resendRequestEmails/Action", + "display": { + "provider": "Microsoft Certificates", + "resource": "AppServiceCertificate", + "operation": "Retrieve site seal for an issued App Service Certificate", + "description": "Retrieve site seal for an issued App Service Certificate" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.CertificateRegistration/provisionGlobalAppServicePrincipalInUserTenant/Action", + "display": { + "provider": "Microsoft Certificates", + "resource": "AppServiceCertificate", + "operation": "Provision service principal", + "description": "Provision service principal for service app principal" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.CertificateRegistration/validateCertificateRegistrationInformation/Action", + "display": { + "provider": "Microsoft Certificates", + "resource": "AppServiceCertificate", + "operation": "Certificate Purchase Info Validation", + "description": "Validate certificate purchase object without submitting it" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.CertificateRegistration/register/action", + "display": { + "provider": "Microsoft Certificates", + "resource": "Microsoft Certificates resource provider", + "operation": "Register Microsoft Certificates resource provider", + "description": "Register the Microsoft Certificates resource provider for the subscription" + }, + "origin": "user,system" + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.DomainRegistration/stable/2020-12-01/DomainRegistrationProvider.json b/specification/web/resource-manager/Microsoft.DomainRegistration/stable/2020-12-01/DomainRegistrationProvider.json new file mode 100644 index 000000000000..a853d9e19c03 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.DomainRegistration/stable/2020-12-01/DomainRegistrationProvider.json @@ -0,0 +1,91 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-12-01", + "title": "DomainRegistrationProvider API Client" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/providers/Microsoft.DomainRegistration/operations": { + "get": { + "tags": [ + "DomainRegistrationProvider" + ], + "summary": "Implements Csm operations Api to exposes the list of available Csm Apis under the resource provider", + "description": "Description for Implements Csm operations Api to exposes the list of available Csm Apis under the resource provider", + "operationId": "DomainRegistrationProvider_ListOperations", + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/CsmOperationCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List operations": { + "$ref": "./examples/ListOperations.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": {}, + "parameters": { + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Your Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).", + "required": true, + "type": "string" + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "API Version", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/web/resource-manager/Microsoft.DomainRegistration/stable/2020-12-01/Domains.json b/specification/web/resource-manager/Microsoft.DomainRegistration/stable/2020-12-01/Domains.json new file mode 100644 index 000000000000..5bf4c2105e37 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.DomainRegistration/stable/2020-12-01/Domains.json @@ -0,0 +1,1476 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-12-01", + "title": "Domains API Client" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.DomainRegistration/checkDomainAvailability": { + "post": { + "tags": [ + "Domains" + ], + "summary": "Check if a domain is available for registration.", + "description": "Description for Check if a domain is available for registration.", + "operationId": "Domains_CheckAvailability", + "parameters": [ + { + "name": "identifier", + "in": "body", + "description": "Name of the domain.", + "required": true, + "schema": { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/NameIdentifier" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DomainAvailabilityCheckResult" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DomainRegistration/domains": { + "get": { + "tags": [ + "Domains" + ], + "summary": "Get all domains in a subscription.", + "description": "Description for Get all domains in a subscription.", + "operationId": "Domains_List", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DomainCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DomainRegistration/generateSsoRequest": { + "post": { + "tags": [ + "Domains" + ], + "summary": "Generate a single sign-on request for the domain management portal.", + "description": "Description for Generate a single sign-on request for the domain management portal.", + "operationId": "Domains_GetControlCenterSsoRequest", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DomainControlCenterSsoRequest" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DomainRegistration/listDomainRecommendations": { + "post": { + "tags": [ + "Domains" + ], + "summary": "Get domain name recommendations based on keywords.", + "description": "Description for Get domain name recommendations based on keywords.", + "operationId": "Domains_ListRecommendations", + "parameters": [ + { + "name": "parameters", + "in": "body", + "description": "Search parameters for domain name recommendations.", + "required": true, + "schema": { + "$ref": "#/definitions/DomainRecommendationSearchParameters" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/NameIdentifierCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DomainRegistration/domains": { + "get": { + "tags": [ + "Domains" + ], + "summary": "Get all domains in a resource group.", + "description": "Description for Get all domains in a resource group.", + "operationId": "Domains_ListByResourceGroup", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DomainCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DomainRegistration/domains/{domainName}": { + "get": { + "tags": [ + "Domains" + ], + "summary": "Get a domain.", + "description": "Description for Get a domain.", + "operationId": "Domains_Get", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "domainName", + "in": "path", + "description": "Name of the domain.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Domain" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Domains" + ], + "summary": "Creates or updates a domain.", + "description": "Description for Creates or updates a domain.", + "operationId": "Domains_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "domainName", + "in": "path", + "description": "Name of the domain.", + "required": true, + "type": "string", + "pattern": "[a-zA-Z0-9][a-zA-Z0-9\\.-]+" + }, + { + "name": "domain", + "in": "body", + "description": "Domain registration information.", + "required": true, + "schema": { + "$ref": "#/definitions/Domain" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Domain purchase is in progress.", + "schema": { + "$ref": "#/definitions/Domain" + } + }, + "200": { + "description": "Domain purchase was successful.", + "schema": { + "$ref": "#/definitions/Domain" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "Domains" + ], + "summary": "Delete a domain.", + "description": "Description for Delete a domain.", + "operationId": "Domains_Delete", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "domainName", + "in": "path", + "description": "Name of the domain.", + "required": true, + "type": "string" + }, + { + "name": "forceHardDeleteDomain", + "in": "query", + "description": "Specify true to delete the domain immediately. The default is false which deletes the domain after 24 hours.", + "type": "boolean" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted domain." + }, + "204": { + "description": "Domain does not exist in Azure database probably because it has already been deleted" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Domains" + ], + "summary": "Creates or updates a domain.", + "description": "Description for Creates or updates a domain.", + "operationId": "Domains_Update", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "domainName", + "in": "path", + "description": "Name of the domain.", + "required": true, + "type": "string", + "pattern": "[a-zA-Z0-9][a-zA-Z0-9\\.-]+" + }, + { + "name": "domain", + "in": "body", + "description": "Domain registration information.", + "required": true, + "schema": { + "$ref": "#/definitions/DomainPatchResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Domain purchase is in progress.", + "schema": { + "$ref": "#/definitions/Domain" + } + }, + "200": { + "description": "Domain purchase was successful.", + "schema": { + "$ref": "#/definitions/Domain" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DomainRegistration/domains/{domainName}/domainOwnershipIdentifiers": { + "get": { + "tags": [ + "Domains" + ], + "summary": "Lists domain ownership identifiers.", + "description": "Description for Lists domain ownership identifiers.", + "operationId": "Domains_ListOwnershipIdentifiers", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "domainName", + "in": "path", + "description": "Name of domain.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DomainOwnershipIdentifierCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DomainRegistration/domains/{domainName}/domainOwnershipIdentifiers/{name}": { + "get": { + "tags": [ + "Domains" + ], + "summary": "Get ownership identifier for domain", + "description": "Description for Get ownership identifier for domain", + "operationId": "Domains_GetOwnershipIdentifier", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "domainName", + "in": "path", + "description": "Name of domain.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "Name of identifier.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DomainOwnershipIdentifier" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Domains" + ], + "summary": "Creates an ownership identifier for a domain or updates identifier details for an existing identifier", + "description": "Description for Creates an ownership identifier for a domain or updates identifier details for an existing identifier", + "operationId": "Domains_CreateOrUpdateOwnershipIdentifier", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "domainName", + "in": "path", + "description": "Name of domain.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "Name of identifier.", + "required": true, + "type": "string" + }, + { + "name": "domainOwnershipIdentifier", + "in": "body", + "description": "A JSON representation of the domain ownership properties.", + "required": true, + "schema": { + "$ref": "#/definitions/DomainOwnershipIdentifier" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DomainOwnershipIdentifier" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Domains" + ], + "summary": "Delete ownership identifier for domain", + "description": "Description for Delete ownership identifier for domain", + "operationId": "Domains_DeleteOwnershipIdentifier", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "domainName", + "in": "path", + "description": "Name of domain.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "Name of identifier.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted domain ownership identifier." + }, + "204": { + "description": "Domain ownership identifier does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Domains" + ], + "summary": "Creates an ownership identifier for a domain or updates identifier details for an existing identifier", + "description": "Description for Creates an ownership identifier for a domain or updates identifier details for an existing identifier", + "operationId": "Domains_UpdateOwnershipIdentifier", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "domainName", + "in": "path", + "description": "Name of domain.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "Name of identifier.", + "required": true, + "type": "string" + }, + { + "name": "domainOwnershipIdentifier", + "in": "body", + "description": "A JSON representation of the domain ownership properties.", + "required": true, + "schema": { + "$ref": "#/definitions/DomainOwnershipIdentifier" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DomainOwnershipIdentifier" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DomainRegistration/domains/{domainName}/renew": { + "post": { + "tags": [ + "Domains" + ], + "summary": "Renew a domain.", + "description": "Description for Renew a domain.", + "operationId": "Domains_Renew", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "domainName", + "in": "path", + "description": "Name of the domain.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Domain renewal was successful." + }, + "202": { + "description": "Domain renewal in progress." + }, + "204": { + "description": "Domain does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Renew an existing domain": { + "$ref": "./examples/RenewDomain.json" + } + } + } + } + }, + "definitions": { + "Address": { + "description": "Address information for domain registration.", + "required": [ + "address1", + "city", + "country", + "postalCode", + "state" + ], + "type": "object", + "properties": { + "address1": { + "description": "First line of an Address.", + "type": "string" + }, + "address2": { + "description": "The second line of the Address. Optional.", + "type": "string" + }, + "city": { + "description": "The city for the address.", + "type": "string" + }, + "country": { + "description": "The country for the address.", + "type": "string" + }, + "postalCode": { + "description": "The postal code for the address.", + "type": "string" + }, + "state": { + "description": "The state or province for the address.", + "type": "string" + } + } + }, + "Contact": { + "description": "Contact information for domain registration. If 'Domain Privacy' option is not selected then the contact information is made publicly available through the Whois \ndirectories as per ICANN requirements.", + "required": [ + "email", + "nameFirst", + "nameLast", + "phone" + ], + "type": "object", + "properties": { + "addressMailing": { + "$ref": "#/definitions/Address", + "description": "Mailing address." + }, + "email": { + "description": "Email address.", + "type": "string" + }, + "fax": { + "description": "Fax number.", + "type": "string" + }, + "jobTitle": { + "description": "Job title.", + "type": "string" + }, + "nameFirst": { + "description": "First name.", + "type": "string" + }, + "nameLast": { + "description": "Last name.", + "type": "string" + }, + "nameMiddle": { + "description": "Middle name.", + "type": "string" + }, + "organization": { + "description": "Organization contact belongs to.", + "type": "string" + }, + "phone": { + "description": "Phone number.", + "type": "string" + } + } + }, + "Domain": { + "description": "Information about a domain.", + "type": "object", + "allOf": [ + { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "Domain resource specific properties", + "required": [ + "contactAdmin", + "contactBilling", + "contactRegistrant", + "contactTech", + "consent" + ], + "properties": { + "contactAdmin": { + "$ref": "#/definitions/Contact", + "description": "Administrative contact.", + "x-ms-mutability": [ + "create" + ] + }, + "contactBilling": { + "$ref": "#/definitions/Contact", + "description": "Billing contact.", + "x-ms-mutability": [ + "create" + ] + }, + "contactRegistrant": { + "$ref": "#/definitions/Contact", + "description": "Registrant contact.", + "x-ms-mutability": [ + "create" + ] + }, + "contactTech": { + "$ref": "#/definitions/Contact", + "description": "Technical contact.", + "x-ms-mutability": [ + "create" + ] + }, + "registrationStatus": { + "description": "Domain registration status.", + "enum": [ + "Active", + "Awaiting", + "Cancelled", + "Confiscated", + "Disabled", + "Excluded", + "Expired", + "Failed", + "Held", + "Locked", + "Parked", + "Pending", + "Reserved", + "Reverted", + "Suspended", + "Transferred", + "Unknown", + "Unlocked", + "Unparked", + "Updated", + "JsonConverterFailed" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "DomainStatus", + "modelAsString": false + } + }, + "provisioningState": { + "description": "Domain provisioning state.", + "enum": [ + "Succeeded", + "Failed", + "Canceled", + "InProgress", + "Deleting" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": false + } + }, + "nameServers": { + "description": "Name servers.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "privacy": { + "description": "true if domain privacy is enabled for this domain; otherwise, false.", + "type": "boolean" + }, + "createdTime": { + "format": "date-time", + "description": "Domain creation timestamp.", + "type": "string", + "readOnly": true + }, + "expirationTime": { + "format": "date-time", + "description": "Domain expiration timestamp.", + "type": "string", + "readOnly": true + }, + "lastRenewedTime": { + "format": "date-time", + "description": "Timestamp when the domain was renewed last time.", + "type": "string", + "readOnly": true + }, + "autoRenew": { + "description": "true if the domain should be automatically renewed; otherwise, false.", + "default": true, + "type": "boolean" + }, + "readyForDnsRecordManagement": { + "description": "true if Azure can assign this domain to App Service apps; otherwise, false. This value will be true if domain registration status is active and \n it is hosted on name servers Azure has programmatic access to.", + "type": "boolean", + "readOnly": true + }, + "managedHostNames": { + "description": "All hostnames derived from the domain and assigned to Azure resources.", + "type": "array", + "items": { + "$ref": "#/definitions/HostName" + }, + "readOnly": true + }, + "consent": { + "$ref": "#/definitions/DomainPurchaseConsent", + "description": "Legal agreement consent.", + "x-ms-mutability": [ + "create" + ] + }, + "domainNotRenewableReasons": { + "description": "Reasons why domain is not renewable.", + "type": "array", + "items": { + "enum": [ + "RegistrationStatusNotSupportedForRenewal", + "ExpirationNotInRenewalTimeRange", + "SubscriptionNotActive" + ], + "type": "string" + }, + "readOnly": true + }, + "dnsType": { + "description": "Current DNS type", + "enum": [ + "AzureDns", + "DefaultDomainRegistrarDns" + ], + "type": "string", + "x-ms-enum": { + "name": "DnsType", + "modelAsString": false + } + }, + "dnsZoneId": { + "description": "Azure DNS Zone to use", + "type": "string" + }, + "targetDnsType": { + "description": "Target DNS type (would be used for migration)", + "enum": [ + "AzureDns", + "DefaultDomainRegistrarDns" + ], + "type": "string", + "x-ms-enum": { + "name": "DnsType", + "modelAsString": false + } + }, + "authCode": { + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + } + }, + "x-ms-client-flatten": true + } + } + }, + "DomainAvailabilityCheckResult": { + "description": "Domain availability check result.", + "type": "object", + "properties": { + "name": { + "description": "Name of the domain.", + "type": "string" + }, + "available": { + "description": "true if domain can be purchased using CreateDomain API; otherwise, false.", + "type": "boolean" + }, + "domainType": { + "description": "Valid values are Regular domain: Azure will charge the full price of domain registration, SoftDeleted: Purchasing this domain will simply restore it and this operation will not cost anything.", + "enum": [ + "Regular", + "SoftDeleted" + ], + "type": "string", + "x-ms-enum": { + "name": "DomainType", + "modelAsString": false + } + } + } + }, + "DomainCollection": { + "description": "Collection of domains.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/Domain" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "DomainControlCenterSsoRequest": { + "description": "Single sign-on request information for domain management.", + "type": "object", + "properties": { + "url": { + "description": "URL where the single sign-on request is to be made.", + "type": "string", + "readOnly": true + }, + "postParameterKey": { + "description": "Post parameter key.", + "type": "string", + "readOnly": true + }, + "postParameterValue": { + "description": "Post parameter value. Client should use 'application/x-www-form-urlencoded' encoding for this value.", + "type": "string", + "readOnly": true + } + } + }, + "DomainOwnershipIdentifier": { + "description": "Domain ownership Identifier.", + "type": "object", + "allOf": [ + { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "DomainOwnershipIdentifier resource specific properties", + "properties": { + "ownershipId": { + "description": "Ownership Id.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "DomainOwnershipIdentifierCollection": { + "description": "Collection of domain ownership identifiers.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/DomainOwnershipIdentifier" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "DomainPatchResource": { + "description": "ARM resource for a domain.", + "type": "object", + "allOf": [ + { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "DomainPatchResource resource specific properties", + "required": [ + "contactAdmin", + "contactBilling", + "contactRegistrant", + "contactTech", + "consent" + ], + "properties": { + "contactAdmin": { + "$ref": "#/definitions/Contact", + "description": "Administrative contact.", + "x-ms-mutability": [ + "create" + ] + }, + "contactBilling": { + "$ref": "#/definitions/Contact", + "description": "Billing contact.", + "x-ms-mutability": [ + "create" + ] + }, + "contactRegistrant": { + "$ref": "#/definitions/Contact", + "description": "Registrant contact.", + "x-ms-mutability": [ + "create" + ] + }, + "contactTech": { + "$ref": "#/definitions/Contact", + "description": "Technical contact.", + "x-ms-mutability": [ + "create" + ] + }, + "registrationStatus": { + "description": "Domain registration status.", + "enum": [ + "Active", + "Awaiting", + "Cancelled", + "Confiscated", + "Disabled", + "Excluded", + "Expired", + "Failed", + "Held", + "Locked", + "Parked", + "Pending", + "Reserved", + "Reverted", + "Suspended", + "Transferred", + "Unknown", + "Unlocked", + "Unparked", + "Updated", + "JsonConverterFailed" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "DomainStatus", + "modelAsString": false + } + }, + "provisioningState": { + "description": "Domain provisioning state.", + "enum": [ + "Succeeded", + "Failed", + "Canceled", + "InProgress", + "Deleting" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": false + } + }, + "nameServers": { + "description": "Name servers.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "privacy": { + "description": "true if domain privacy is enabled for this domain; otherwise, false.", + "type": "boolean" + }, + "createdTime": { + "format": "date-time", + "description": "Domain creation timestamp.", + "type": "string", + "readOnly": true + }, + "expirationTime": { + "format": "date-time", + "description": "Domain expiration timestamp.", + "type": "string", + "readOnly": true + }, + "lastRenewedTime": { + "format": "date-time", + "description": "Timestamp when the domain was renewed last time.", + "type": "string", + "readOnly": true + }, + "autoRenew": { + "description": "true if the domain should be automatically renewed; otherwise, false.", + "default": true, + "type": "boolean" + }, + "readyForDnsRecordManagement": { + "description": "true if Azure can assign this domain to App Service apps; otherwise, false. This value will be true if domain registration status is active and \n it is hosted on name servers Azure has programmatic access to.", + "type": "boolean", + "readOnly": true + }, + "managedHostNames": { + "description": "All hostnames derived from the domain and assigned to Azure resources.", + "type": "array", + "items": { + "$ref": "#/definitions/HostName" + }, + "readOnly": true + }, + "consent": { + "$ref": "#/definitions/DomainPurchaseConsent", + "description": "Legal agreement consent.", + "x-ms-mutability": [ + "create" + ] + }, + "domainNotRenewableReasons": { + "description": "Reasons why domain is not renewable.", + "type": "array", + "items": { + "enum": [ + "RegistrationStatusNotSupportedForRenewal", + "ExpirationNotInRenewalTimeRange", + "SubscriptionNotActive" + ], + "type": "string" + }, + "readOnly": true + }, + "dnsType": { + "description": "Current DNS type", + "enum": [ + "AzureDns", + "DefaultDomainRegistrarDns" + ], + "type": "string", + "x-ms-enum": { + "name": "DnsType", + "modelAsString": false + } + }, + "dnsZoneId": { + "description": "Azure DNS Zone to use", + "type": "string" + }, + "targetDnsType": { + "description": "Target DNS type (would be used for migration)", + "enum": [ + "AzureDns", + "DefaultDomainRegistrarDns" + ], + "type": "string", + "x-ms-enum": { + "name": "DnsType", + "modelAsString": false + } + }, + "authCode": { + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + } + }, + "x-ms-client-flatten": true + } + } + }, + "DomainPurchaseConsent": { + "description": "Domain purchase consent object, representing acceptance of applicable legal agreements.", + "type": "object", + "properties": { + "agreementKeys": { + "description": "List of applicable legal agreement keys. This list can be retrieved using ListLegalAgreements API under TopLevelDomain resource.", + "type": "array", + "items": { + "type": "string" + } + }, + "agreedBy": { + "description": "Client IP address.", + "type": "string" + }, + "agreedAt": { + "format": "date-time", + "description": "Timestamp when the agreements were accepted.", + "type": "string" + } + } + }, + "DomainRecommendationSearchParameters": { + "description": "Domain recommendation search parameters.", + "type": "object", + "properties": { + "keywords": { + "description": "Keywords to be used for generating domain recommendations.", + "type": "string" + }, + "maxDomainRecommendations": { + "format": "int32", + "description": "Maximum number of recommendations.", + "type": "integer" + } + } + }, + "HostName": { + "description": "Details of a hostname derived from a domain.", + "type": "object", + "properties": { + "name": { + "description": "Name of the hostname.", + "type": "string" + }, + "siteNames": { + "description": "List of apps the hostname is assigned to. This list will have more than one app only if the hostname is pointing to a Traffic Manager.", + "type": "array", + "items": { + "type": "string" + } + }, + "azureResourceName": { + "description": "Name of the Azure resource the hostname is assigned to. If it is assigned to a Traffic Manager then it will be the Traffic Manager name otherwise it will be the app name.", + "type": "string" + }, + "azureResourceType": { + "description": "Type of the Azure resource the hostname is assigned to.", + "enum": [ + "Website", + "TrafficManager" + ], + "type": "string", + "x-ms-enum": { + "name": "AzureResourceType", + "modelAsString": false + } + }, + "customHostNameDnsRecordType": { + "description": "Type of the DNS record.", + "enum": [ + "CName", + "A" + ], + "type": "string", + "x-ms-enum": { + "name": "CustomHostNameDnsRecordType", + "modelAsString": false + } + }, + "hostNameType": { + "description": "Type of the hostname.", + "enum": [ + "Verified", + "Managed" + ], + "type": "string", + "x-ms-enum": { + "name": "HostNameType", + "modelAsString": false + } + } + } + }, + "NameIdentifierCollection": { + "description": "Collection of domain name identifiers.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/NameIdentifier" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Your Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).", + "required": true, + "type": "string" + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "Name of the resource group to which the resource belongs.", + "required": true, + "type": "string", + "maxLength": 90, + "minLength": 1, + "pattern": "^[-\\w\\._\\(\\)]+[^\\.]$", + "x-ms-parameter-location": "method" + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "API Version", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/web/resource-manager/Microsoft.DomainRegistration/stable/2020-12-01/TopLevelDomains.json b/specification/web/resource-manager/Microsoft.DomainRegistration/stable/2020-12-01/TopLevelDomains.json new file mode 100644 index 000000000000..a7dad1d10377 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.DomainRegistration/stable/2020-12-01/TopLevelDomains.json @@ -0,0 +1,299 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-12-01", + "title": "TopLevelDomains API Client" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.DomainRegistration/topLevelDomains": { + "get": { + "tags": [ + "TopLevelDomains" + ], + "summary": "Get all top-level domains supported for registration.", + "description": "Description for Get all top-level domains supported for registration.", + "operationId": "TopLevelDomains_List", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TopLevelDomainCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List Top Level Domains": { + "$ref": "./examples/ListTopLevelDomains.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DomainRegistration/topLevelDomains/{name}": { + "get": { + "tags": [ + "TopLevelDomains" + ], + "summary": "Get details of a top-level domain.", + "description": "Description for Get details of a top-level domain.", + "operationId": "TopLevelDomains_Get", + "parameters": [ + { + "name": "name", + "in": "path", + "description": "Name of the top-level domain.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TopLevelDomain" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Top Level Domain": { + "$ref": "./examples/GetTopLevelDomain.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DomainRegistration/topLevelDomains/{name}/listAgreements": { + "post": { + "tags": [ + "TopLevelDomains" + ], + "summary": "Gets all legal agreements that user needs to accept before purchasing a domain.", + "description": "Description for Gets all legal agreements that user needs to accept before purchasing a domain.", + "operationId": "TopLevelDomains_ListAgreements", + "parameters": [ + { + "name": "name", + "in": "path", + "description": "Name of the top-level domain.", + "required": true, + "type": "string" + }, + { + "name": "agreementOption", + "in": "body", + "description": "Domain agreement options.", + "required": true, + "schema": { + "$ref": "#/definitions/TopLevelDomainAgreementOption" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TldLegalAgreementCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List Top Level Domain Agreements": { + "$ref": "./examples/ListTopLevelDomainAgreements.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "TldLegalAgreement": { + "description": "Legal agreement for a top level domain.", + "required": [ + "agreementKey", + "title", + "content" + ], + "type": "object", + "properties": { + "agreementKey": { + "description": "Unique identifier for the agreement.", + "type": "string" + }, + "title": { + "description": "Agreement title.", + "type": "string" + }, + "content": { + "description": "Agreement details.", + "type": "string" + }, + "url": { + "description": "URL where a copy of the agreement details is hosted.", + "type": "string" + } + } + }, + "TldLegalAgreementCollection": { + "description": "Collection of top-level domain legal agreements.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/TldLegalAgreement" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "TopLevelDomain": { + "description": "A top level domain object.", + "type": "object", + "allOf": [ + { + "$ref": "../../../Microsoft.Web/stable/2020-12-01/CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "TopLevelDomain resource specific properties", + "properties": { + "privacy": { + "description": "If true, then the top level domain supports domain privacy; otherwise, false.", + "type": "boolean" + } + }, + "x-ms-client-flatten": true + } + } + }, + "TopLevelDomainAgreementOption": { + "description": "Options for retrieving the list of top level domain legal agreements.", + "type": "object", + "properties": { + "includePrivacy": { + "description": "If true, then the list of agreements will include agreements for domain privacy as well; otherwise, false.", + "type": "boolean" + }, + "forTransfer": { + "description": "If true, then the list of agreements will include agreements for domain transfer as well; otherwise, false.", + "type": "boolean" + } + } + }, + "TopLevelDomainCollection": { + "description": "Collection of Top-level domains.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/TopLevelDomain" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Your Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).", + "required": true, + "type": "string" + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "API Version", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/web/resource-manager/Microsoft.DomainRegistration/stable/2020-12-01/examples/GetTopLevelDomain.json b/specification/web/resource-manager/Microsoft.DomainRegistration/stable/2020-12-01/examples/GetTopLevelDomain.json new file mode 100644 index 000000000000..39e255200492 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.DomainRegistration/stable/2020-12-01/examples/GetTopLevelDomain.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "api-version": "2020-12-01", + "name": "com" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.DomainRegistration/topLevelDomains/com", + "name": "com", + "type": "Microsoft.DomainRegistration/topLevelDomains", + "properties": { + "privacy": true + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.DomainRegistration/stable/2020-12-01/examples/ListOperations.json b/specification/web/resource-manager/Microsoft.DomainRegistration/stable/2020-12-01/examples/ListOperations.json new file mode 100644 index 000000000000..f8860e464a43 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.DomainRegistration/stable/2020-12-01/examples/ListOperations.json @@ -0,0 +1,104 @@ +{ + "parameters": { + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "name": "Microsoft.DomainRegistration/domains/Read", + "display": { + "provider": "Microsoft Domains", + "resource": "Domain", + "operation": "Get Domains", + "description": "Get the list of domains" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.DomainRegistration/domains/Write", + "display": { + "provider": "Microsoft Domains", + "resource": "Domain", + "operation": "Add or Update Domain", + "description": "Add a new Domain or update an existing one" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.DomainRegistration/domains/Delete", + "display": { + "provider": "Microsoft Domains", + "resource": "Domain", + "operation": "Delete Domain", + "description": "Delete an existing domain." + }, + "origin": "user,system" + }, + { + "name": "Microsoft.DomainRegistration/domains/operationresults/Read", + "display": { + "provider": "Microsoft Domains", + "resource": "Domain operation", + "operation": "Get Domain Operation", + "description": "Get a domain operation" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.DomainRegistration/generateSsoRequest/Action", + "display": { + "provider": "Microsoft Domains", + "resource": "Domain Control Center Single Sign On Request", + "operation": "Generate Domain Control Center Single Sign On Request", + "description": "Generate a request for signing into domain control center." + }, + "origin": "user,system" + }, + { + "name": "Microsoft.DomainRegistration/validateDomainRegistrationInformation/Action", + "display": { + "provider": "Microsoft Domains", + "resource": "Domain Validation", + "operation": "Domain Purchase Info Validation", + "description": "Validate domain purchase object without submitting it" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.DomainRegistration/checkDomainAvailability/Action", + "display": { + "provider": "Microsoft Domains", + "resource": "Domain Availability Result", + "operation": "Check Domain Availability", + "description": "Check if a domain is available for purchase" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.DomainRegistration/listDomainRecommendations/Action", + "display": { + "provider": "Microsoft Domains", + "resource": "Domain Recommendations", + "operation": "Retrieve Domain Recommendations", + "description": "Retrieve the list domain recommendations based on keywords" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.DomainRegistration/register/action", + "display": { + "provider": "Microsoft Domains", + "resource": "Microsoft Domains resource provider", + "operation": "Register Microsoft Domains resource provider", + "description": "Register the Microsoft Domains resource provider for the subscription" + }, + "origin": "user,system" + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.DomainRegistration/stable/2020-12-01/examples/ListTopLevelDomainAgreements.json b/specification/web/resource-manager/Microsoft.DomainRegistration/stable/2020-12-01/examples/ListTopLevelDomainAgreements.json new file mode 100644 index 000000000000..88e259d294c2 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.DomainRegistration/stable/2020-12-01/examples/ListTopLevelDomainAgreements.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "name": "in", + "api-version": "2020-12-01", + "agreementOption": { + "includePrivacy": true, + "forTransfer": false + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "agreementKey": "DNRA", + "title": "Domain Name Registration Agreement", + "content": "\n\n\n\n\n
    \n\n\n\n\n\n\n
    \nDomain Name Registration Agreement\n
    \n

    Last Revised: October 6, 2017

    \n

    PLEASE READ THIS AGREEMENT CAREFULLY, AS IT CONTAINS IMPORTANT INFORMATION REGARDING YOUR LEGAL RIGHTS AND REMEDIES.

    \r\n

    1. OVERVIEW

    \r\n

    This Domain Name Registration Agreement (this \"Agreement\") is entered into by and between 510456, an individual (\"Azure\") and you, and is made effective as of the date of electronic acceptance.  This Agreement sets forth the terms and conditions of your use of Azure's Domain Name Registration services (the \"Domain Name Registration Services\" or the \"Services\"). The terms \"we\", \"us\" or \"our\" shall refer to Azure.  The terms \"you\", \"your\", \"User\" or \"customer\" shall refer to any individual or entity who accepts this Agreement.  Unless otherwise specified, nothing in this Agreement shall be deemed to confer any third-party rights or benefits.

    \r\n

    Your electronic acceptance of this Agreement signifies that you have read, understand, acknowledge and agree to be bound by this Agreement, which incorporates by reference each of (i) Azure’s Universal Terms of Service Agreement (\"UTOS\"), (ii) all agreements, guidelines, policies, practices, procedures, registration requirements or operational standards of the top-level domain (\"TLD\") in which you register any domain (“Registry Policies”), and (iii) any plan limits, product disclaimers or other restrictions presented to you on the Domain Name Registration Services landing page of the Azure website (this “Site”). 

    \r\n

    TO LINK TO AND REVIEW THE REGISTRY POLICIES FOR THE TLD IN WHICH YOU WISH TO REGISTER A DOMAIN NAME, PLEASE CLICK HERE   

    \r\n

    You acknowledge and agree that (i) Azure, in its sole and absolute discretion, may change or modify this Agreement, and any policies or agreements which are incorporated herein, at any time, and such changes or modifications shall be effective immediately upon posting to this Site, and (ii) your use of this Site or the Services found at this Site after such changes or modifications have been made shall constitute your acceptance of this Agreement as last revised.  If you do not agree to be bound by this Agreement as last revised, do not use (or continue to use) this Site or the Services found at this Site.  In addition, Azure may occasionally notify you of changes or modifications to this Agreement by email.  It is therefore very important that you keep your shopper account (“Shopper Account”) information, including your email address, current.  Azure assumes no liability or responsibility for your failure to receive an email notification if such failure results from an inaccurate or out-of-date email address.    Azure is not an Internet Corporation for Assigned Names and Numbers (\"ICANN\") accredited registrar; it is an authorized reseller of domain name registration services.  Accordingly, you acknowledge and agree that Azure may modify this Agreement in order to comply with any terms and conditions set forth by (i) the sponsoring registrar, (ii) ICANN, and/or (iii) the registry applicable to the TLD or country code top level domain (\"ccTLD\") in question.  As used herein, the terms \"registry\", \"Registry\", \"registry operator\" or \"Registry Operator\" shall refer to the registry applicable to the TLD or ccTLD in question.  To identify the sponsoring registrar, click here

    \r\n

    2. PROVISIONS SPECIFIC TO ALL REGISTRATIONS

    \r\n

    Unless otherwise noted, the provisions below in this Section 2 are generally applicable to all TLDs that we offer.  Special provisions specific to any TLD or ccTLD (those in addition to posted Registry Policies) are identified elsewhere below in this Agreement. 

    \r\n
      \r\n
    1. \r\n
      Registry Policies. You agree to be bound by all Registry Policies (defined above in this Agreement) applicable to your domain name registration (at any level). IT IS YOUR RESPONSIBILITY TO VISIT THE APPLICABLE TLD SITE AND READ AND REVIEW ALL APPLICABLE REGISTRY POLICIES PRIOR TO YOUR REGISTRATION IN THE TLD.  REGISTRY POLICIES FOR EACH TLD CAN BE FOUND BY VISITING THE CORRESPONDING TLD LINK LISTED HERE.  Notwithstanding anything in this Agreement to the contrary, the Registry Operator of the TLD in which the domain name registration is made is and shall be an intended third party beneficiary of this Agreement. As such the parties to this agreement acknowledge and agree that the third party beneficiary rights of the Registry Operator have vested and that the Registry Operator has relied on its third party beneficiary rights under this Agreement in agreeing to Azure being a registrar for the respective TLD. The third party beneficiary rights of the Registry Operator will survive any termination of this Agreement.    
      \r\n
    2. \r\n
    3. \r\n
      Registration Requirements.  To the extent any TLD or ccTLD requires you meet eligibility (e.g., residency for .JP, .EU, etc.), validation (e.g., DNS validation) or other authentication requirements as a condition to registering a domain name in the TLD, you agree that by submitting an application or registering or renewing your domain name, you represent and warrant that: (a) all information provided to register or renew the domain name (including all supporting documents, if any) is true, complete and correct, and is not misleading in any way, and the application is made in good faith; (b) you meet, and will continue to meet, the eligibility criteria prescribed in the Registry Policies for the applicable TLD for the duration of the domain name registration; (c) you have not previously submitted an application for the domain name with another registrar using the same eligibility criteria, and the other registrar has rejected the application (if applicable); (d) you acknowledge and agree that even if the domain name is accepted for registration, your entitlement to register the domain name may be challenged by others who claim to have an entitlement to the domain name; and (e) you acknowledge and agree that the Registry or the registrar can cancel the registration of the domain name if any of the warranties required are found to be untrue, incomplete, incorrect or misleading.
      \r\n
    4. \r\n
    5. \r\n
      Ownership.  You acknowledge and agree that registration of a domain name does not create any proprietary right for you, the registrar, or any other person in the name used as a domain name or the domain name registration and that the entry of a domain name in the Registry shall not be construed as evidence or ownership of the domain name registered as a domain name. You shall not in any way transfer or purport to transfer a proprietary right in any domain name registration or grant or purport to grant as security or in any other manner encumber or purport to encumber a domain name registration.
      \r\n
    6. \r\n
    7. \r\n
      ICANN Requirements. You agree to comply with the ICANN requirements, standards, policies, procedures, and practices for which each applicable Registry Operator has monitoring responsibility in accordance with the Registry Agreement between ICANN and itself or any other arrangement with ICANN.
      \r\n
    8. \r\n
    9. \r\n
      Indemnification of Registry.  You agree to indemnify, defend and hold harmless (within 30 days of demand) the Registry Operator and Registry Service Provider and their subcontractors, subsidiaries, affiliates, divisions, shareholders, directors, officers, employees, accountants, attorneys, insurers, agents, predecessors, successors and assigns, from and against any and all claims, demands, damages, losses, costs, expenses, causes of action or other liabilities of any kind, whether known or unknown, including reasonable legal and attorney’s fees and expenses, in any way arising out of, relating to, or otherwise in connection with the your domain name registration, including, without limitation, the use, registration, extension, renewal, deletion, and/or transfer thereof and/or the violation of any applicable terms or conditions governing the registration. You shall not enter into any settlement or compromise of any such indemnifiable claim without Registrar’s or Registry Operator’s prior written consent, which consent shall not be unreasonably withheld, and you agree that these indemnification obligations shall survive the termination or expiration of the Agreement for any reason.  IN NO EVENT SHALL THE REGISTRY OPERATOR BE LIABLE TO YOU OR ANY OTHER PERSON FOR ANY DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, SPECIAL, EXEMPLARY OR PUNITIVE DAMAGES, INCLUDING LOSS OF PROFIT OR GOODWILL, FOR ANY MATTER, WHETHER SUCH LIABILITY IS ASSERTED ON THE BASIS OF CONTRACT, TORT (INCLUDING NEGLIGENCE), BREACH OF WARRANTIES, EITHER EXPRESS OR IMPLIED, ANY BREACH OF THIS AGREEMENT OR ITS INCORPORATED AGREEMENTS AND POLICIES YOUR INABILITY TO USE THE DOMAIN NAME, YOUR LOSS OF DATA OR FILES OR OTHERWISE, EVEN IF THE REGISTRY OPERATOR HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
      \r\n
    10. \r\n
    11. \r\n
      Regulated TLDs.   For domain name registration in any “Regulated” TLD, you acknowledge and agree your registration is subject to the following additional requirements: (a) comply with all applicable laws, including those that relate to privacy, data collection, consumer protection (including in relation to misleading and deceptive conduct), fair lending, debt collection, organic farming, disclosure of data, and financial disclosures; (b) if you collect and maintain sensitive health and financial data you must implement reasonable and appropriate security measures commensurate with the offering of those services, as defined by applicable law.  Regulated TLDs include: .games, .juegos, .school, .schule, .toys, .eco, .care, .diet, .fitness, .health, .clinic, .dental, .healthcare, .capital, .cash, .broker, .claims, .exchange, .finance, .financial, .fund, .investments, .lease, .loans, .market, .money, .trading, .credit, .insure, .tax, .mortgage, .degree, .mba, .audio, .book, .broadway, .film, .movie, .music, .software, .fashion, .video, .app, .art, .band, .cloud, .data, .digital, .fan, .free, .gratis, .discount, .sale, .media, .news, .online, .pictures, .radio, .show, .theater, .tours, .accountants, .architect, .associates, .broker, .legal, .realty, .vet, .engineering, .law, .limited, .show; .theater; .town, .city, .reise, and .reisen
      \r\n
    12. \r\n
    13. \r\n
      Highly Regulated TLDs. In addition to the requirements for Regulated TLDs, domain name registration in any Highly-Regulated TLD is subject to the following requirements: (a) you will provide administrative contact information, which must be kept up‐to‐date, for the notification of complaints or reports of registration abuse, as well as the contact details of the relevant regulatory, or Industry self‐regulatory, bodies in their main place of business; (b) you represent that you possess any necessary authorizations, charters, licenses and/or other related credentials for participation in the sector associated with such Highly‐regulated TLD; and (c) you will report any material changes to the validity of you authorizations, charters, licenses and/or other related credentials for participation in the sector associated with the Highly‐regulated TLD to ensure you continue to conform to the appropriate regulations and licensing requirements and generally conduct your activities in the interests of the consumers they serve.  Highly Regulated TLDs include: .abogado, .attorney, .bank, .bet, .bingo, .casino .charity (and IDN equivalent xn--30rr7y), .cpa, .corp, creditcard, .creditunion .dds, .dentist, .doctor, .fail, .gmbh, .gripe, .hospital, .inc, .insurance, .lawyer, .lifeinsurance, .llc, .llp, .ltda, .medical, .mutuelle, .pharmacy, .poker, .university, .sarl, .spreadbetting, .srl, .sucks, .surgery .university, .vermogensberater, .vesicherung,  and .wtf.  For .doctor, registrants who hold themselves out to be licensed medical practitioners must be able to demonstrate to the Registrar and Registry, upon request, that they hold the applicable license.
      \r\n
    14. \r\n
    15. \r\n
      Special Safeguard TLDs.  In addition to the requirements for Regulated and Highly-Regulated TLDs, by registering a domain name in any “Special-Safeguard” TLD, you agree to take reasonable steps to avoid misrepresenting or falsely implying that you or your business is affiliated with, sponsored or endorsed by one or more country's or government's military forces if such affiliation, sponsorship or endorsement does not exist.  Special Safeguard TLDs include:  .army, .navy, .airforce
      \r\n
    16. \r\n
    17. \r\n
      Third Party Beneficiary.  Notwithstanding anything in this Agreement to the contrary, the Registry Operator for any TLD in which your register a domain name is and shall be an intended third party beneficiary of this Agreement. As such the parties to this agreement acknowledge and agree that the third party beneficiary rights of the Registry Operator have vested and that the Registry Operator has relied on its third party beneficiary rights under this Agreement in agreeing to Azure being a registrar for the TLD. Third party beneficiary rights of the Registry Operator shall survive any termination of this Agreement.
      \r\n
    18. \r\n
    19. \r\n
      Variable and Non-Uniform Pricing.  You acknowledge, understand and agree that certain domain names in certain TLDs are established by Registry Policies to be variably priced (i.e., standard v. premium names) and/or may have non-uniform renewal registration pricing (such that the Fee for a domain name registration renewal may differ from other domain names in the same TLD, e.g., renewal registration for one domain may be $100.00 and $33.00 for a different domain name).
      \r\n
    20. \r\n
    21. \r\n
      Restriction on Availability of Privacy or Proxy.  You acknowledge and agree that, as dictated by the Registry Policies, for certain TLDs you may not be permitted to purchase private or proxy TLD registrations. In such case, you must register for any and all TLD registrations using your personal information, which information you represent and warrant is current, accurate and complete.
      \r\n
    22. \r\n
    \r\n

    3. FEES AND PAYMENTS

    \r\n

    (A) GENERAL TERMS, INCLUDING AUTOMATIC RENEWAL TERMS

    \r\n

    You agree to pay any and all prices and fees due for Services purchased or obtained at this Site at the time you order the Services.  Azure expressly reserves the right to change or modify its prices and fees at any time, and such changes or modifications shall be posted online at this Site and effective immediately without need for further notice to you.  If you have purchased or obtained Services for a period of months or years, changes or modifications in prices and fees shall be effective when the Services in question come up for renewal as further described below. 

    \r\n

    Unless otherwise specifically noted (for reasons such as those highlighted in Section 2(x) above), the renewal price for any domain name in any TLD will be the same as the list (non-sale) price shown when you search for and select a domain, and again in the cart prior to purchase.  For example, if the list price is $9.99, and a different renewal price is not specifically identified, then the renewal price is also $9.99.  Likewise, if a domain name has a sale price of $8.99, with the list (non-sale) price shown (as a strike-through) at $9.99, the renewal price will be $9.99*.  

    \r\n

    *Renewal price subject to change prior to actual date of renewal. 

    \r\n

    For all other terms and conditions relating to fees, payment, refund and billing, etc. applicable to the Services offered under the scope of this Agreement, please refer to the “Fees and Payments” section of our UTOS

    \r\n

    (B) DOMAIN NAME RENEWAL TERMS

    \r\n

    When you register a domain name, you will have two renewal options: (i) \"Automatic Renewal\" (ii) \"Extended Automatic Renewal\", and (iii) \"Manual Renewal\": 

    \r\n
      \r\n
    1. Automatic Renewal.  Automatic Renewal is the default setting. Therefore, unless you select Extended Automatic Renewal, Azure will enroll you in Automatic Renewal.  Domain names will automatically renew, for a period equivalent to the length of your original domain name registration, any domain name that is up for renewal and will take payment from the Payment Method you have on file with Azure, at Azure's then current rates. Thus, if you have chosen to register your domain name for one (1) year, Azure will automatically renew it for one (1) year. If you have chosen to register your domain name for two (2) years, Azure will automatically renew it for two (2) years, and so on.
    2. \r\n
    3. Extended Automatic Renewal.  If you enroll in the Extended Automatic Renewal plan, Azure will automatically renew any domain name that is up for renewal for an additional one-year period on each and every anniversary of your domain name registration, so the initial registration period will always remain intact.  Thus, if you have chosen to register your domain name for two (2) years, Azure will automatically renew it for one (1) additional year on each and every anniversary of your domain name registration so your two (2) year registration period will always remain intact. If you have chosen to register your domain name for five (5) years, Azure will automatically renew it for one (1) additional year on each and every anniversary of your domain name registration so your five (5) year registration period will always remain intact, and so on.  Azure will take payment from the Payment Method you have on file with Azure, at Azure's then current one-year domain name registration rate.
    4. \r\n
    5. Manual Renewal.  If you have elected to turn off automatic renewal and cancel the product (i.e., cancel the domain name registration) effective at expiration of the then current term, you may nonetheless elect to manually renew the domain name at anytime prior to its expiration date by logging into your Account Manager and manually implementing the renewal or by calling customer service (should you in fact want the domain name to be renewed). If you fail to manually implement the renewal before the expiration date, the domain name will be cancelled and you will no longer have use of that name.
    6. \r\n
    \r\n

    All renewals will be subject to the terms of this Agreement, as it may be amended from time to time, and you acknowledge and agree to be bound by the terms of this Agreement (as amended) for all renewed domains.  Domain name renewals will be non-refundable. In the event that we are unable to automatically renew your domain name for the renewal option selected for any reason, we may automatically renew your domain name for a period less than your original registration period to the extent necessary for the transaction to succeed. If for any reason Azure is not able to take the payment from the Payment Method you have on file, and you fail to respond to our notices, your domain name registration will expire. It is your responsibility to keep your Payment Method information current, which includes the expiration date if you are using a credit card.

    \r\n

    For certain ccTLDs (.am, .at, .be, .br, .ca, .cn, .com.cn, .net.cn, .org.cn, .de, .eu, .fm, .gs, .it, .jp, .ms, .nu, .nz, .co.nz, .net.nz, .org.nz, .tc, .tk, .tw, .com.tw, .org.tw, .idv.tw, .uk, and .vg), renewal billing will occur on the first day of the month prior to the month of expiration.

    \r\n

    For certain ccTLDs (.am, .at, .be, .ca, .cn, .com.cn, .net.cn, .org.cn, .de, .eu, .fm, .gs, .it, .jp, .ms, .nu, .nz, .co.nz, .net.nz, .org.nz, .tc, .tk, .tw, .com.tw, .org.tw, .idv.tw, .uk, and .vg), renewal will occur, or must occur manually if the product was previously cancelled, no later than the 20th of the month prior to the expiration date, or your domain name will be placed in non-renewal status. For some ccTLDs (.es) renewal must be processed no later than seven days before the expiration date, or your domain name will be placed in non-renewal status.  When the domain name is in non-renewal status, you can renew the domain name only by calling Azure and requesting that the domain name be renewed. You cannot renew the domain name through your Account Manager. If you fail to manually implement the renewal of any cancelled product before the expiration date, the domain name will be cancelled and you will no longer have use of that name.

    \r\n

    You agree that Azure will not be responsible for cancelled domain names that you fail to renew in the timeframes indicated in this Agreement. In any case, if you fail to renew your domain name in a timely fashion, additional charges may apply. If you signed up for privacy services, protected registration, or any other similar service, with your domain name registration, these services will automatically be renewed when your domain name registration is up for renewal, and you will incur the applicable additional renewal fee unless you cancel in advance. 

    \r\n

    If you fail to renew your domain name in the timeframes indicated in this Agreement, you agree that Azure may, in its sole discretion, renew your expired domain name on your behalf. If Azure decides to renew your expired domain name on your behalf, you will have a Renewal Grace Period during which you may reimburse Azure for the renewal and keep your domain name. The Renewal Grace Period is currently twelve (12) days but subject to change under the terms of this Agreement. For certain ccTLDs (.am, .at, .be, .cn, .com.cn, .net.cn, .org.cn, .de, .eu, .fm, .gs, .it, .jp, .ms, .nu, .nz, .co.nz, .net.nz, .org.nz, .tc, .tk, .tw, .com.tw, .org.tw, .idv.tw, .uk, and .vg) there is no Renewal Grace Period after the expiration date of the domain name. If you do not reimburse Azure for the renewal during the Renewal Grace Period your domain name will be placed on Hold and flagged for deletion after which you will have a 30-day redemption period during which you may pay Azure a Redemption fee and redeem your domain name. The Redemption fee is currently $80.00 USD and is subject to change under the terms of this Agreement. If you do not redeem your domain name prior to the end of the 30-day redemption period Azure may, in its sole discretion, delete your domain name or transfer it to another registrant on your behalf.  During the redemption period your domain name may be parked. 

    \r\n

    If your domain name is deleted, the Registry also provides a 30-day Redemption Grace Period during which you may pay Azure a redemption fee and redeem your domain name. The redemption fee is currently $80.00 USD and is subject to change under the terms of this Agreement. If you do not redeem your domain name prior to the end of the Registry's Redemption Grace Period the Registry will release your name and it will become available for registration on a first-come-first-served basis.

    \r\n

    Renewal Grace Periods and Redemption Grace Periods vary for different ccTLDs. Please refer to the specific terms for the applicable TLD. In the event there is a conflict between the provisions of this paragraph and the ccTLD terms, the ccTLD terms shall control.

    \r\n

    \r\n

    Our registration expiration notification policy and associated fees are described here.

    \r\n

    \r\n

    \r\n

    (C) FREE PRODUCT TERMS

    \r\n

    In the event you are provided with free products with the registration of a domain name, you acknowledge and agree that such free products will only be available with a valid purchase and may be terminated in the event the domain name is deleted or cancelled.  For free domain names, you acknowledge and agree that you may not change the account associated with such free domain for the first five (5) days after registration.  In the event a free domain name is offered with the registration of another domain and if the paid domain name registered fails, then we may, in its sole discretion, either delete the registration of the free domain or refund the difference between the amount paid and the value of the free domain.  Failed registrations associated with promotionals offers may result in the deletion of the free or discounted item or an adjustment between the registered domain price and the value of the discounted item, in our sole discretion.

    \r\n

    4. TERM OF AGREEMENT; TRANSFERS; DOMAIN TASTING

    \r\n

    The term of this Agreement shall continue in full force and effect as long as you have any domain name registered through Azure.

    \r\n

    You agree that you will not transfer any domain name registered through Azure to another domain name registrar during the first sixty (60) days after its initial registration date.  You agree that you may not transfer any domain name for ten (10) days after a Change of Account.

    \r\n

    You further agree that you will not engage in \"domain tasting\" by using the five (5) day grace period in which a registrant may choose to cancel a domain name and get a full refund of the registration fee as a vehicle to test the marketability or viability of a domain name.  If Azure determines (which determination shall be made by Azure in its sole and absolute discretion) that you have been engaging in \"domain tasting\", then Azure reserves the right to (a) charge you a small fee (which fee shall be deducted from any refund issued) or (b) refuse your cancellation/refund request altogether. Azure will not charge you a fee if Azure cancels your domain name during the five (5) day grace period due to fraud or other activity outside of your control. The five (5) day grace period does not apply to Premium Domains, which are non-refundable.

    \r\n

    You agree that Azure shall not be bound by (i) any representations made by third parties who you may use to purchase services from Azure, or (ii) any statements of a general nature, which may be posted on Azure's website or contained in Azure's promotional materials.

    \r\n

    5. UP TO DATE INFORMATION; USE OF INFORMATION AND EXPIRATION

    \r\n

    You agree to notify Azure within five (5) business days when any of the information you provided as part of the application and/or registration process changes. It is your responsibility to keep this information in a current and accurate status. Failure by you, for whatever reason, to provide Azure with accurate and reliable information on an initial and continual basis, shall be considered to be a material breach of this Agreement and a basis for suspension and/or cancellation of the domain name. Failure by you, for whatever reason, to respond within five (5) business days to any inquiries made by Azure to determine the validity of information provided by you, shall also be considered to be a material breach of this Agreement and a basis for suspension and/or cancellation of the domain name. You agree to retain a copy for your record of the receipt for purchase of your domain name.

    \r\n

    You agree that for each domain name registered by you, the following contact data is required: postal address, email address, telephone number, and if available, a facsimile number for the Registered Name Holder and, if different from the Registered Name Holder, the same contact information for, a technical contact, an administrative contact and a billing contact.

    \r\n

    You acknowledge and agree that domain name registration requires that this contact information, in whole or in part, be shared with the registry operator, for their use, copying, distribution, publication, modification and other processing  for (among other uses in accordance with our Privacy Policy) the purpose of administration of the domain name registration, which may require such information be transferred back and forth across international borders, to and from the U.S. to the EU, for example. As required by ICANN, this information must also be made publicly available by means of Whois, and that the registry operator may also be required to make this information publicly available by Whois. Both Azure and the registry operator may be required to archive this information with a third-party escrow service. You hereby consent and give permission for all such requirements and disclosures. Further, you represent and warrant that, if you are providing information about a third party, you have notified the third party of the disclosure and the purpose for the disclosure and you have obtained the third party's consent to such disclosure.  Registrar will not process data in a way that is incompatible with this Agreement.  Registrar will take reasonable precautions to protect data from loss or misuse.

    \r\n

    You agree that for each domain name registered by you the following information will be made publicly available in the Whois directory as determined by ICANN Policy and may be sold in bulk as set forth in the ICANN agreement:

    \r\n
      \r\n
    • The domain name;
    • \r\n
    • Your name and postal address;
    • \r\n
    • The name, email address, postal address, voice and fax numbers for technical and administrative contacts;
    • \r\n
    • The Internet protocol numbers for the primary and secondary name servers;
    • \r\n
    • The corresponding names of the name servers; and
    • \r\n
    • The original date of registration and expiration date.
    • \r\n
    • Name of primary name server and secondary name server.
    • \r\n
    • Identity of the registrar.
    • \r\n
    \r\n

    You agree that, to the extent permitted by ICANN, Azure may make use of the publicly available information you provided during the registration process. If you engage in the reselling of domain names you agree to provide any individuals whose personal information you've obtained, information about the possible uses of their personal information pursuant to ICANN policy. You also agree to obtain consent, and evidence of consent, from those individuals for such use of the personal information they provide.

    \r\n

    You agree that Azure has the right to make public and share with third parties certain information in connection with the sale or purchase of domain names on the website, including but not limited to (a) the name of the domain name sold or purchased, (b) the sale or purchase price of the domain name sold or purchased, and (c) information relating to the timing of the sale or purchase.

    \r\n

    \r\n

    In order for us to comply with any current or future rules and policies for domain name systems including any rules or policies established by the CIRA or any provincial or federal government or by other organization having control or authority to establish rules or policies, you hereby grant to us the right to disclose to third parties through an interactive publicly accessible registration database the following information that you are required to provide when applying for a domain name:

    \r\n
      \r\n
    1. The domain or sub-domain name(s) registered by you;
    2. \r\n
    3. Your organization name, type and postal address;
    4. \r\n
    5. The name(s), position(s), postal address(es), e-mail address(es), voice telephone number(s) and where available the fax number(s) of the technical and administrative contacts for your domain or sub-domain name(s);
    6. \r\n
    7. The full hostnames and Internet protocol (IP) addresses of at least two (2) name server hosts (one primary and at least one secondary) for your domain or sub-domain name. Up to six (6) name servers may be specified. If a host has more than one (1) IP address, use a comma-separated list;
    8. \r\n
    9. The corresponding names of those name servers;
    10. \r\n
    11. The original creation date of the registration; and
    12. \r\n
    13. The expiration date of the registration.
    14. \r\n
    \r\n

    We may be required to make this information available in bulk form to third parties. We may also transfer or assign this information to CIRA or such other third party as we may decide, in our sole discretion.

    \r\n

    6. DISPUTE RESOLUTION POLICY

    \r\n

    You agree to be bound by our current Dispute Resolution Policy. This policy is incorporated herein and made a part of this Agreement. You can view the Uniform Domain Name Dispute Resolution Policy online. You agree that Azure may from time to time modify its Dispute Resolution Policy. Azure will post any changes to its Dispute Resolution Policy at least thirty (30) days before they become effective. You agree that by maintaining your domain name registrations with Azure after the updated policy becomes effective that you agree to the Dispute Resolution policy as amended. You agree to review Azure's website periodically to determine if changes have been made to the Dispute Resolution Policy. If you cancel or terminate your Services with Azure as a result of the modified Dispute Resolution policy, no fees will be refunded to you. You also agree to submit to proceedings commenced under ICANN's Uniform Rapid Suspension System, if applicable. 

    \r\n

    You agree that if a dispute arises as a result of one (1) or more domain names you have registered using Azure, you will indemnify, defend and hold Azure harmless as provided for in this Agreement. You also agree that if Azure is notified that a complaint has been filed with a governmental, administrative or judicial body, regarding a domain name registered by you using Azure, that Azure, in its sole discretion, may take whatever action Azure deems necessary regarding further modification, assignment of and/or control of the domain name deemed necessary to comply with the actions or requirements of the governmental, administrative or judicial body until such time as the dispute is settled. In this event you agree to hold Azure harmless for any action taken by Azure.

    \r\n

    You agree to submit, without prejudice to other potentially applicable jurisdictions, to the jurisdiction of the courts (1) of your domicile, (2) where registrar is located or (3) where the registry operator is located (e.g., China for .CN, Columbia for .CO, UK for .EU, etc.).

    \r\n

    \r\n

    In the case of .ca domain names, you agree that, if your use of the service or the registration of a .ca domain name is challenged by a third party, you will be subject to the provisions specified by CIRA in their dispute resolution policy, in effect at the time of the dispute.

    \r\n

    \r\n

    7. TRANSFER OF DOMAIN NAMES; RESALE PRACTICES

    \r\n

    If you transfer any domain name, you agree to provide the information required by, and to abide by, the procedures and conditions set forth in our Domain Name Transfer Agreement and Change of Registrant Agreement. You may view the latest versions of our Domain Name Transfer Agreement and Change of Registrant Agreementonline. In order to further protect your domain name, any domain name registered with Azure or transferred to Azure shall be placed on lock status, unless an opted-out has occurred as defined in our Change of Registrant Agreement or Domain Name Proxy Agreement. The domain name must be placed on unlock status in order to initiate a transfer of the domain name away from Azure to a new Registrar. You may log into your account with Azure at any time after your domain name has been successfully transferred to Azure, and change the status to unlock.

    \r\n

    In the event you are purchasing a domain name on behalf of a third party, you agree to inform any customer of yours, who may be acquiring a domain name through you using Azure's registration services, that they are in fact registering their domain name through Azure and that Azure or its licensor is an accredited registrar with ICANN. You agree not to represent that you are an ICANN-accredited registrar or that you are in any way providing superior access to the ICANN Domain Name Registry. You also agree not to use the ICANN trademark logo in any of your promotional materials including your website.

    \r\n

    You agree to obtain each of your customers' acceptances to the then current version of this Agreement, and to retain evidence of their acceptance for a period of not less than three (3) years. Should you require that your customers accept additional terms and conditions that are not required by Azure, you agree that such additional terms and conditions shall not conflict with this Agreement and the policies and procedures adopted by ICANN.

    \r\n

    You agree that Azure is not lending you access to its registrar connections or its registry access, nor will you be deemed to be a registrar in your own right. Furthermore, you agree you will not attempt to gain access to Azure's registrar connections or registry access. You agree to provide complete, accurate and current data for each registrant to be added to a registry in accordance with ICANN requirements for inclusion in the Whois database.

    \r\n

    You agree to provide your customers with adequate customer support, and to maintain contact with them with regard to providing a medium for them to communicate changes in the information they provided as part of the domain name registration process. Upon receiving corrected or updated information you will, within five (5) business days, provide such information to Azure so Azure may update its registration records. You will retain copies of all communications between you and your customers and will upon request provide Azure copies of same.

    \r\n

    8. YOUR OBLIGATIONS; SUSPENSION OF SERVICES; BREACH OF AGREEMENT

    \r\n

    You represent and warrant to the best of your knowledge that, neither the registration of the domain nor the manner it is directly or indirectly used, infringes the legal rights of any third party.  You will comply with all applicable laws, including, but not limited to those relating to privacy, data collection, consumer protection, fair lending, debt collection, organic farming, and disclosure of data and financial disclosures.  If you collect and maintain sensitive health and financial data, you must implement reasonable and appropriate security measures commensurate with the offering of those services, as defined by applicable law.  You represent that you possess any necessary authorization, charter, license, and/or other related credential for participation in the sector associated with the associated registry tld string.  You will report any material changes to the validity of your authorization, charter, license, and/or other related credential. You will indemnify and hold harmless the registrar and registry operator, and their directors, officers, employees and agents, from and against any and all claims, damages, liabilities, costs and expenses (including reasonable legal fees and expenses) arising out of or related to the domain name registration.  This obligation shall survive expiration or termination of this Agreement or the domain name registration.

    \r\n

    You agree that, in addition to other events set forth in this Agreement:

    \r\n
      \r\n
    1. Your ability to use any of the services provided by Azure is subject to cancellation or suspension in the event there is an unresolved breach of this Agreement and/or suspension or cancellation is required by any policy now in effect or adopted later by ICANN;
    2. \r\n
    3. Your registration of any domain names shall be subject to suspension, cancellation or transfer pursuant to any ICANN adopted specification or policy, or pursuant to any Azure procedure not inconsistent with an ICANN adopted specification or policy (a) to correct mistakes by Azure or the registry operator in registering any domain name; or (b) for the resolution of disputes concerning any domain name.
    4. \r\n
    \r\n

    You acknowledge and agree that Azure and registry reserve the right to deny, cancel or transfer any registration or transaction, or place any domain name(s) on registry lock, hold or similar status, as either deems necessary, in the unlimited and sole discretion of either Azure or the registry: (i) to comply with specifications adopted by any industry group generally recognized as authoritative with respect to the Internet (e.g., RFCs), (ii) to correct mistakes made by registry or any registrar in connection with a domain name registration, (iii) for the non-payment of fees to registry, (iv) to protect the integrity and stability of the registry, (v) to comply with any applicable court orders, laws, government rules or requirements, requests of law enforcement, or any dispute resolution process, (vi) to comply with any applicable ICANN rules or regulations, including without limitation, the registry agreement, (vii) to avoid any liability, civil or criminal, on the part of registry operator, as well as its affiliates, subsidiaries, officers, directors, and employees, (viii) per the terms of this Agreement, (ix) following an occurrence of any of the prohibited activities described in Section 8 below, or (x) during the resolution of a dispute.

    \r\n

    You agree that your failure to comply completely with the terms and conditions of this Agreement and any Azure rule or policy may be considered by Azure to be a material breach of this Agreement and Azure may provide you with notice of such breach either in writing or electronically (i.e. email). In the event you do not provide Azure with material evidence that you have not breached your obligations to Azure within ten (10) business days, Azure may terminate its relationship with you and take any remedial action available to Azure under the applicable laws. Such remedial action may be implemented without notice to you and may include, but is not limited to, cancelling the registration of any of your domain names and discontinuing any services provided by Azure to you. No fees will be refunded to you should your Services be cancelled or terminated because of a breach.

    \r\n

    Azure's failure to act upon or notify you of any event, which may constitute a breach, shall not relieve you from or excuse you of the fact that you have committed a breach.

    \r\n

    9. RESTRICTION OF SERVICES; RIGHT OF REFUSAL

    \r\n

    You agree not to use the services provided by Azure, or to allow or enable others, to use the services provided by Azure for the purposes of:

    \r\n
      \r\n
    • The transmission of unsolicited email (Spam); and
    • \r\n
    • Repetitive, high volume inquires into any of the services provided by Azure (i.e. domain name availability, etc.).
    • \r\n
    \r\n

    You acknowledge and agree that you are prohibited from distributing malware, abusively operating botnets, phishing, piracy, trademark or copyright infringement, fraudulent or deceptive practices, counterfeiting or otherwise engaging in activity contrary to applicable law, and you acknowledge and agree that the consequences for such activities include suspension of the domain name.

    \r\n

    If you are hosting your domain name system (“DNS”) on Azure’s servers, or are using our systems to forward a domain name, URL, or otherwise to a system or site hosted elsewhere, or if you have your domain name registered with Azure, you are responsible for ensuring there is no excessive overloading on Azure’s servers. You may not use Azure’s servers and your domain name as a source, intermediary, reply to address, or destination address for mail bombs, Internet packet flooding, packet corruption, or other abusive attack. Server hacking or other perpetration of security breaches is prohibited. You agree that Azure reserves the right to deactivate your domain name from its DNS if Azure deems it is the recipient of activities caused by your site that threaten the stability of its network.

    \r\n

    You agree that Azure, in its sole discretion and without liability to you, may refuse to accept the registration of any domain name. Azure also may in its sole discretion and without liability to you delete the registration of any domain name during the first thirty (30) days after registration has taken place. Azure may also cancel the registration of a domain name, after thirty (30) days, if that name is being used, as determined by Azure in its sole discretion, in association with spam or morally objectionable activities. Morally objectionable activities will include, but not be limited to:

    \r\n
      \r\n
    • Activities prohibited by the laws of the United States and/or foreign territories in which you conduct business;
    • \r\n
    • Activities designed to encourage unlawful behavior by others, such as hate crimes, terrorism and child pornography; and
    • \r\n
    • Activities designed to harm or use unethically minors in any way.
    • \r\n
    \r\n

    In the event Azure refuses a registration or deletes an existing registration during the first thirty (30) days after registration, you will receive a refund of any fees paid to Azure in connection with the registration either being cancelled or refused. In the event Azure deletes the registration of a domain name being used in association with spam or morally objectionable activities, no refund will be issued.

    \r\n

    10. DEFAULT SETTINGS; PARKED PAGE

    \r\n

    Choosing Your Domain Name Settings.  When you register a domain name with Azure, you will be prompted to choose your domain name settings during the checkout process.  If you plan on using another provider for your website or hosting needs, then you should enter the name servers of such provider when you choose your domain name settings.  This will direct your domain name away from Azure’s name servers.  If you are an existing Azure customer and have already set up a customer profile designating your domain name settings for new domain name registrations, you will not need to complete this step again during the checkout process.   

    \r\n

    Azure’s Default Settings.  If you do not direct your domain name away from Azure’s name servers as described above, Azure will direct your domain name to a “Parked Page” (“Default Setting”).  You acknowledge and agree that Azure has the right to set the Default Setting. 

    \r\n

    Parked Page Default Setting.  Azure’s Parked Page service is an online domain monetization system designed to generate revenue (through the use of pay per click advertising) from domain names that are not actively being used as websites.  If your domain name is directed to a Parked Page, you acknowledge and agree that Azure may display both (a) in-house advertising (which includes links to Azure products and services) and (b) third-party advertising (which includes links to third-party products and services) on your Parked Page through the use of pop-up or pop-under browser windows, banner advertisements, audio or video streams, or any other advertising means, and we may aggregate for our own use, related usage data by means of cookies and other similar means.  In addition, you acknowledge and agree that all in-house and third-party advertising will be selected by Azure and its advertising partners, as appropriate, and you will not be permitted to customize the advertising, or entitled to any compensation in exchange therefor.  Please note that the third-party advertising displayed on Azure’s Parked Pages may contain content offensive to you, including but not limited to links to adult content.  Azure makes no effort to edit, control, monitor, or restrict the content and third-party advertising displayed on Azure’s Parked Pages, and expressly disclaims any liability or responsibility to you or any third party in connection therewith.

    \r\n

    Changing Azure’s Default Settings.  You may change Azure’s Default Settings at any time during the term of your domain name registration.

    \r\n
      \r\n
    1. Content Displaying On Your Parked Page.  You can not modify the content displaying on your Parked Page.  You may select one of the other options listed below.
    2. \r\n
    3. Participating In Domain Name Monetization.  If you wish to participate in the domain monetization potential presented by Azure’s Parked Page service, please review and consider purchasing our CashParking® service.   
    4. \r\n
    5. No Content.  If the options listed above are not acceptable to you, please contact customer support to learn what other options might be available to you.
    6. \r\n
    \r\n

    Return To Parked Page Default Setting Upon Domain Name Expiration.  Upon domain name expiration, and regardless of how you use your domain name during the term of your domain name registration, your domain name will automatically return to the Parked Page Default Setting described above.  As used in this paragraph, “expiration” is deemed to include any “renewal period” or “redemption period” immediately after the domain name expires, but before the domain name is returned to the registry.  Once your domain name has returned to the Parked Page Default Setting described above, the only way to opt out of the Parked Page service is to renew, redeem, or re-register your domain name in accordance with Section 2(B), Domain Name Renewal Terms, of this Agreement.   

    \r\n

    11. DOMAIN ADD-ONS

    \r\n

    Business Registration:  Business registration allows You to display additional information about the business that is the basis of Your domain name, including, but not limited to, such information as Your fax number, street address, and hours of operation.

    \r\n

    Certified Domains.  The certified domain service generally allow You to: (i) put a Certified Domain Validation seal on Your website; and (ii) have Your domain name listed as \"Certified\", in WHOIS lookups on our website.   The Certified Domain Validation seal renews independently of Your domain. When You renew Your domain, You must also, when necessary, separately renew Your Certified Validation seal. However, the Certified Domain Validation seal can be cancelled independently of Your domain. If the domain is cancelled, the Certified Domain associated with the cancelled domain will automatically cancel.  The Certified Domain seal is a trademark and is protected by copyright, trademark and other intellectual property laws. You may use the Certified Domain seal only in conjunction with the purchase of the Services set forth in the Agreement, and subject to the terms and conditions hereof. Other than provided for in this Agreement, You may not otherwise use, reproduce, or modify the mark for any additional promotional use, without our prior written approval. Your right to the use of the Certified Domain seal is immediately terminated upon expiration or termination of this Agreement.

    \r\n

    Expiration Consolidation.  You understand and acknowledge the expiration consolidation service may only be used to consolidate the expiration of .com and .net domain names. The service may not be used to consolidate domains that are on Registrar HOLD, Registry HOLD, or pending Transfer status. You acknowledge the service may only be used to push the expiration date of Your domains forward in time, at least one (1) month forward and no more than ten (10) years forward, and then, only for a period lasting less than twelve (12) months. Once the service has been used to consolidate domains, the new expiration date may not be reversed. To ensure the service is not abused or used as an alternative to renewals, you may only use the service on each domain once in any 12-month period. The service may only be used on domain names that have not passed their expiration date. In order to change the expiration date again, You will be required to renew the domain name first.  You further understand and acknowledge the service may only be used to coordinate domains where we are the registrar of record. Domains not registered with us must be transferred before we can perform the Service. 

    \r\n

    \r\n

    Backordering/Monitoring.  You agree a domain name that has expired shall be subject first to a grace period of twelve (12) days, followed by the ICANN-mandated redemption grace period of thirty (30) days. During this period of time, the current domain name registrant may renew the domain name and retain ownership. We do not guarantee your backorder will result in you obtaining the domain name and expressly reserves the right to (a) refuse additional backorders or (b) cancel existing backorders at any time for any reason.  If your backorder is refused or cancelled, we agree to promptly refund any fees paid for such domain name backorder. The domain name may also be placed in a secondary market for resale through the Auctions® service.  After your first year of Auctions membership, you agree that unless otherwise advised, we will automatically renew your Auctions membership using the payment method you have on file for so long as your backorder credit is active. You may learn more about Auctions by visiting the Auctions website. The domain name may also be subject to a drop pool process before it is available for purchasing. You understand we and our registrar affiliates use our services, including backordering.  Therefore, the domain name may be registered with a different registrar, but can be managed through your account.  By using the Services, you will be able to, among other things:

    \r\n
      \r\n
    1. Backorder any domain name under the top level domains .COM, .NET, .US, .BIZ, .INFO, .ORG, .MOBI. A backorder for a domain name will include the price of up to a one-year domain name registration. Should you successfully backorder any domain name, you will be subject to the terms and conditions of the Domain Name Registration and related agreements, which are incorporated herein by reference.
    2. \r\n
    3. Change your backorder until you obtain a domain name. You will have the opportunity to change the credit to a different domain name until you successfully capture one. After three (3) years, if the credit is not used, we reserves the right to remove the credit.
    4. \r\n
    5. Subscribe monthly to an expiring domain name list. You may also choose to purchase a subscription to a list of domain names expiring within the next five (5) days. If you subscribe to the expiring domain name list, you agree the payment method you have on file may be charged on a monthly subscription basis for the term of the Services you purchase.
    6. \r\n
    7. Select domain names off the expiring domain name list you would like to register. Each domain name you attempt to backorder will include the price of up to a one-year domain name registration, as set forth in subsection (i) above.
    8. \r\n
    9. Monitor your currently registered domain names for changes in registrar, status, expiration date or name servers at no additional cost.
    10. \r\n
    11. Subscribe to Domain Alert Pro or monitoring, which enables you to monitor any currently registered domain name, regardless of registrar, for historical tracking of status changes and designation of multiple email notification addresses.
    12. \r\n
    \r\n

    \r\n

    \r\n

    Transfer Validation. The transfer validation service is provided to help You keep Your domain name secure. By choosing to use the service, You are making an explicit and voluntary request to us to deny all attempts to transfer Your domain name to another registrar, or to move Your domain name to another account, unless You verify each request as described herein. You will provide us with a contact name, phone number and PIN for domain transfer validations. You will be contacted by us when a domain transfer is requested for a domain name in Your account. When we receive a transfer request, we will call You to verify the transfer request. If we cannot reach You with seventy-two (72) hours of receipt of the transfer request, the transfer will be denied. If You do not provide the proper PIN, the transfer will be denied. When we receive a change of account request, we will call You to verify the change request. If we cannot reach You with seventy-two (72) hours of receipt of the change request, the change will be denied. If You do not provide the proper PIN, the change will be denied. Availability of Services are subject to the terms and conditions of this Agreement and each of our policies and procedures. We shall use commercially reasonable efforts to attempt to provide certain portions of the Services on a twenty-four (24) hours a day, seven (7) days a week basis throughout the term of this Agreement and other portions of the service, during normal business hours. You acknowledge and agree that from time to time the Services may be inaccessible or inoperable for any reason, including, without limitation: (i) equipment malfunctions; (ii) periodic maintenance procedures or repairs that we may undertake from time to time; or (iii) causes beyond the reasonable control of us or that are not reasonably foreseeable by us, including, without limitation, interruption or failure of telecommunication or digital transmission links, hostile network attacks, network congestion or other failures. You acknowledge and agree that we has no control over the availability of the service on a continuous or uninterrupted basis.

    \r\n

    \r\n

    12. PRE-REGISTRATIONS

    \r\n

    If you submit an application for pre-registration of a domain name, Azure does not guarantee that the name will be secured for you, or that you will have immediate access to the domain name if secured.  Azure may use third-party service providers for the pre-registration services.

    \r\n

    13. PROVISIONS SPECIFIC TO .BIZ REGISTRATIONS

    \r\n

    Domain Name Dispute Policy.  If you reserved or registered a .BIZ domain name through us, in addition to our Dispute Resolution Policy, you hereby acknowledge that you have read and understood and agree to be bound by the terms and conditions of the Restrictions Dispute Resolution Policy applicable to the .biz TLD.

    \r\n

    The RDRP sets forth the terms under which any allegation that a domain name is not used primarily for business or commercial purposes shall be enforced on a case-by-case basis by an independent ICANN-accredited dispute provider. Registry Operator will not review, monitor, or otherwise verify that any particular domain name is being used primarily for business or commercial purposes or that a domain name is being used in compliance with the SUDRP or UDRP processes.

    \r\n

    One Year Registration.  If you are registering a .BIZ domain name and you elect to take advantage of special pricing applicable to one-year registrations, we will automatically renew your domain name for an additional one-year period at the end of the first year term by taking payment from the Payment Method you have on file, unless you notify us that you do not wish to renew. You will be notified and given the opportunity to accept or decline the one-year renewal prior to your domain name expiration date. In the event you decide not to renew your one-year .BIZ domain name for a second year, your domain name registration will automatically revert back to us and we will gain full rights of registration to such domain name. You agree that if you delete or transfer your .BIZ domain name during the first year, you will automatically be charged the second year renewal fees.

    \r\n

    \r\n

    14. PROVISIONS SPECIFIC TO .INFO REGISTRATIONS 

    \r\n

    One Year Registration.  If you are registering a .INFO domain name and you elect to take advantage of special pricing applicable to one-year registrations, we will automatically renew your domain name for an additional one-year period at the end of the first year term by taking payment from the Payment Method you have on file, unless you notify us that you do not wish to renew. You will be notified and given the opportunity to accept or decline the one-year renewal prior to your domain name expiration date. In the event you decide not to renew your one-year .INFO domain name for a second year, your domain name registration will automatically revert back to us and we will gain full rights of registration to such domain name. You agree that if you delete or transfer your .INFO domain name during the first year, you will automatically be charged the second year renewal fees.

    \r\n

    15. PROVISIONS SPECIFIC TO .MOBI REGISTRATIONS 

    \r\n

    Instant Mobilizer. You are hereby granted a personal, revocable, non-exclusive, non-transferable, non-assignable, non-sublicensable license to use the Instant Mobilizer service (“Service”), provided, however, You abide by the terms and conditions set forth. You shall not alter, modify, adapt or translate the whole or part of the Service in any way whatsoever. You may not create derivative works based on the Service. You may not rent, lease, assign, dispose of, novate, sub-license or otherwise transfer any of its rights to use the Service to any third party.  In the event that the volume of traffic to You from Your use of the Service is sufficient so as to jeopardize the provision of Service for other end users, we and our licensors reserve the right to, at its sole discretion, permanently or temporarily, discontinue Your use of the Service. For the avoidance of doubt, the volume of traffic generated by You should not exceed two thousand (2,000) page views per day.  You acknowledge and agree the text \"Instant Mobilizer from dotMobi\" or equivalent, will be inserted at the footer of Your site.  In the event a dotMobi domain to which the Service is being provided is transferred to another domain name registrar, the Service will be interrupted on that dotMobi domain, and Service will not be restored if the new registrar does not offer the Service. 

    \r\n

    \r\n

    16. PROVISIONS SPECIFIC TO .NAME REGISTRATIONS 

    \r\n

    \r\n

    17. PROVISIONS SPECIFIC TO .REISE REGISTRATIONS

    \r\n

    Domain Names registered in .REISE should be used for purposes dedicated to travel topics within six months following initial Registration, e.g. utilized on the Internet or otherwise used to perform a function.

    \r\n

    18. PROVISIONS SPECIFIC TO .SEXY REGISTRATIONS

    \r\n

    You shall not permit content unsuitable for viewing by a minor to be viewed from the main or top-level directory of a .SEXY domain name. For purposes of clarity, content viewed at the main or top-level directory of a .SEXY domain name is the content immediately visible if a user navigates to http://example.sexy or http://www.example.sexy. No restrictions apply to the content at any other page or subdirectory addressed by a .SEXY Registered Name. 

    \r\n

    19. COUNTRY CODE TOP LEVEL DOMAINS

    \r\n

    You represent and warrant that you meet the eligibility requirements of each ccTLD you apply for. You further agree to be bound by any registry rules, policies, and agreements for that particular ccTLD. These may include, but are not limited to, agreeing to indemnify the ccTLD provider, limiting the liability of the ccTLD provider, and requirements that any disputes be resolved under that particular country's laws.

    \r\n

    (A) PROVISIONS SPECIFIC TO .AU REGISTRATIONS 

    \r\n

    .au Registrations (to include com.au, net.au and org.au) are governed by the following additional terms and conditions:

    \r\n

    auDA. auDA means .au Domain Administration Limited ACN 079 009 340, the .au domain names administrator.  The Registrar acts as agent for auDA for the sole purpose, but only to the extent necessary, to enable auDA to receive the benefit of rights and covenants conferred to it under this Agreement. auDA is an intended third party beneficiary of this agreement.

    \r\n

    auDA Published Policy.  auDA Published Policies means those specifications and policies established and published by auDA from time to time at http://www.auda.org.au.  You must comply with all auDA Published Policies, as if they were incorporated into, and form part of, this Agreement. In the event of any inconsistency between any auDA Published Policy and this Agreement, then the auDA Published Policy will prevail to the extent of such inconsistency.  You acknowledge that under the auDA Published Policies: (1) there are mandatory terms and conditions that apply to all domain names; (2) licences, and such terms and conditions are incorporated into, and form part of, this Agreement; (3) You are bound by, and must submit to, the .au Dispute Resolution Policy; and (4) auDA may delete or cancel the registration of a .au domain name. 

    \r\n

    auDA's Liabilities and Indemnity.  To the fullest extent permitted by law, auDA will not be liable to Registrant for any direct, indirect, consequential, special, punitive or exemplary losses or damages of any kind (including, without limitation, loss of use, loss or profit, loss or corruption of data, business interruption or indirect costs) suffered by Registrant arising from, as a result of, or otherwise in connection with, any act or omission whatsoever of auDA, its employees, agents or contractors. Registrant agrees to indemnify, keep indemnified and hold auDA, its employees, agents and contractors harmless from all and any claims or liabilities, arising from, as a result of, or otherwise in connection with, Registrant's registration or use of its .au domain name. Nothing in this document is intended to exclude the operation of Trade Practices Act 1974.

    \r\n

    (B) PROVISIONS SPECIFIC TO .CA REGISTRATIONS

    \r\n

    You acknowledge and agree that registration of your selected domain name in your first application to CIRA shall not be effective until you have entered into and agreed to be bound by CIRA's Registrant Agreement.

    \r\n

    CIRA Certified Registrar.  The registrar shall immediately give notice to you in the event that it is no longer a CIRA Certified Registrar, has had its certification as a CIRA Certified Registrar suspended or terminated, or the Registrar Agreement between CIRA and the Registrar is terminated or expires. CIRA may post notice of such suspension, termination, or expiry on its website and may, if CIRA deems appropriate, give notice to the registrants thereof. In the event that the registrar is no longer a CIRA Certified Registrar, has had its certification as a CIRA Certified Registrar suspended or terminated or in the event the Registrar Agreement between CIRA and the Registrar is terminated or expires, you shall be responsible for changing your Registrar of Record to a new CIRA Certified Registrar within thirty (30) days of the earlier of notice thereof being given to you by (i) the Registrar or (ii) CIRA in accordance with CIRA's then current Registry PRP; provided, however, that if any of your domain name registrations are scheduled to expire within thirty (30) days of the giving of such notice, then you shall have thirty (30) days from the anniversary date of the registration(s), to register with a new CIRA certified registrar and to renew such domain name registration(s) in accordance with the Registry PRP.

    \r\n

    You acknowledge and agree that should there be insufficient funds prepaid by the registrar in the CIRA Deposit Account to be applied in payment of any fees, CIRA may in its sole discretion stop accepting applications for domain name registrations from the registrar, stop effecting registrations of domain names and transfers, renewals, modifications, and cancellations requested by the registrar and stop performing other billable transactions requested by the registrar not paid in full and CIRA may terminate the Registrar Agreement between CIRA and the Registrar.

    \r\n

    .CA ASCII and IDN domain variants are bundled and reserved for a single registrant.  Registrants are not required to register all variants in a bundle, but all registered variants must be registered and managed at a single registrar. Each variant registered will incur a registration fee.  In addition, when registering multiple .CA domain (ASCII and IDN) variants in a bundle, your registrant information must be identical.  If variants are registered at other registrars or if registrant information does not match, it may result in an \"unavailable\" search result, delayed or failed registration. If information does not match, validation is required and may take up to seven business days and delay availability of domain. 

    \r\n

    (C) PROVISIONS SPECIFIC TO .CN REGISTRATIONS 

    \r\n

    .CN is a restricted TLD – applications are subject to both a domain name check and real name verification as required by the People’s Republic of China.  Registrations in .CN are therefore subject to the following additional terms:

    \r\n

    Verification, Registration and Activation.  If a domain name is not permitted to be registered by the Chinese government, as determined by us, the Registry Operator and/or a 3rd party provider utilized for such services and determinations, in either party’s discretion, the application for registration will not be successful.  In such event, the name will be deleted and you will be eligible for a refund as further described below.

    \r\n

    If permitted, then the Registration may proceed, but a .CN domain name may not be activated (i.e., it will not resolve in the Internet) unless and until you have submitted (via the process described during registration) valid documents required of us and the Registry to perform real name verification.  The following are acceptable forms of documents for the purpose of verification:

    \r\n
      \r\n
    • China: Resident ID, temporary resident ID, business license or organization code certificate
    • \r\n
    • Hong Kong/Macau: Resident ID, driver’s license, passport or business license
    • \r\n
    • Singapore: Driver’s license, passport or business license
    • \r\n
    • Taiwan: Resident ID, driver’s license or business license
    • \r\n
    • Other Countries/Regions: Driver’s license or passport
    • \r\n
    \r\n

    Documents submitted to us are used by us and shared with the Registry solely for the purpose of real name verification, and are otherwise subject to our Privacy Policy.  By registering a .CN domain, you expressly agree that your data may be stored on servers in the U.S., or otherwise outside of the People's Republic of China.

    \r\n

    Refunds.  Refunds for .CN Registrations will only be allowed where (i) registration of the applied for domain name is not permitted by the Chinese government; or (ii) you notify us of your intent to cancel for any reason within the first five (5) days after the Registration (i.e., after it is deemed permissible by the Chinese government).  For the avoidance of doubt, refunds will not be permitted under any circumstances after five (5) days from the date of Registration, including, for example, in the event real name verification is not successful or if the Chinese government determines after Registration that the domain name should not have been registered (and directs us to delete).

    \r\n

    (D) PROVISIONS SPECIFIC TO .JP REGISTRATIONS

    \r\n

    Registration Restrictions.  You represent and warrant that you have a local presence in Japan with a home or office address. You agree that certain domain names are reserved and can only be registered by certain parties. These include: (i) TLDs, other than ccTLDs, as determined by ICANN; (ii) geographical-type .JP domain names that are defined as metropolitan, prefectural, and municipal labels; (iii) names of primary and secondary educational organizations; (iv) names of organizations related to Internet management; (v) names required for .JP domain name operations; and (vi) character strings which may be confused with ASCII-converted Japanese domain names. The complete list of .JP Reserved Domains is available here

    \r\n

    20. ENGLISH LANGUAGE CONTROLS

    \r\n

    This Agreement, along with all policies and the applicable product agreements identified above and incorporated herein by reference (collectively, the “Agreement”), is executed in the English language. To the extent any translation is provided to you, it is provided for convenience purposes only, and in the event of any conflict between the English and translated version, where permitted by law, the English version will control and prevail. Where the translated version is required to be provided to you and is to be considered binding by law (i) both language versions shall have equal validity, (ii) each party acknowledges that it has reviewed both language versions and that they are substantially the same in all material respects, and (iii) in the event of any discrepancy between these two versions, the translated version may prevail, provided that the intent of the Parties has been fully taken into consideration. 

    \n
    \n
    \n\nRevised: 10/6/17
    \nCopyright © 2000-2017 All Rights Reserved.\n
    \n
    \n
    ", + "url": "http://www.secureserver.net/agreements/ShowDoc.aspx?pageid=reg_sa&pl_id=510456" + }, + { + "agreementKey": "DNPA", + "title": "Domain Name Proxy Agreement", + "content": "\n\n\n\n\n
    \n\n\n\n\n\n\n
    \nDomain Name Proxy Agreement\n
    \n

    Last Revised: October 25, 2017

    \n

    Please read this Domain Name Proxy Agreement (\"Agreement\") carefully. By using the Services and/or website of Domains By Proxy, LLC, a Delaware limited liability company (\"DBP\"), You (as defined below) agree to all the terms and conditions set forth both herein and in the DBP privacy policy, which is incorporated by reference and can be found by clicking here.  You acknowledge that DBP may amend this Agreement at any time upon posting the amended terms on its website, and that any new, different or additional features changing the services provided by DBP will automatically be subject to this Agreement. If You do not agree to be bound by, or if You object to, the terms and conditions of this Agreement and any amendments hereto, do not use or access DBP's services. Continued use of DBP's services and its website after any such changes to this Agreement have been posted, constitutes Your acceptance of those changes.

    \r\n

    This Agreement is by and between DBP and you, your heirs, assigns, agents and contractors (\"You\") and is made effective as of the date of electronic execution. This Agreement sets forth the terms and conditions of Your relationship with DBP and Your use of DBP's services and represents the entire Agreement between You and DBP. By using DBP's Services, You acknowledge that You have read, understand and agree to be bound by all the terms and conditions of this Agreement, and You further agree to be bound by the terms of this Agreement for transactions entered into by:

    \r\n
      \r\n
    1. You on Your behalf;
    2. \r\n
    3. Anyone acting as Your agent; and
    4. \r\n
    5. Anyone who uses the account You have established with DBP, whether or not the transactions were on Your behalf and/or authorized by You.
    6. \r\n
    \r\n

    You agree You will be bound by representations made by third parties acting on Your behalf, which either use or purchase services from DBP. You further agree that DBP will not be bound by statements of a general nature on DBP's website or DBP promotional materials. You further agree to abide by the terms and conditions promulgated by the Internet Corporation for Assigned Names and Numbers (\"ICANN\") (including the Uniform Domain Name Dispute Resolution Policy (\"Dispute Resolution Policy\") and Your Registrar (i.e., the ICANN-accredited person or entity through which You register a domain name).

    \r\n

    1. description of DBP's private registration services

    \r\n

    When You subscribe to DBP's private registration service through a DBP-affiliated Registrar, DBP will display its contact information in the publicly available \"Whois\" directory in place of Your information. DBP shall keep Your name, postal address, email address, phone and fax numbers confidential, subject to Section 4 of this Agreement. The following information (and not Your personal information) will be made publicly available in the \"Whois\" directory as determined by ICANN policy:

    \r\n
      \r\n
    1. DBP's name as the proxy Registrant of the domain name and a proxy email address, phone number and postal address for the proxy Registrant's contact information;
    2. \r\n
    3. A proxy postal address and phone number for the domain name registration's technical contact;
    4. \r\n
    5. A proxy email address, postal address and phone number for the domain name registration's administrative contact;
    6. \r\n
    7. A proxy email address, postal address and phone number for the domain's name registration's billing contact;
    8. \r\n
    9. The primary and secondary domain name servers You designate for the domain name;
    10. \r\n
    11. The domain name's original date of registration and expiration date of the registration; and
    12. \r\n
    13. The identity of the Registrar.
    14. \r\n
    \r\n

    2. full benefits of domain registration retained by you

    \r\n

    Although DBP will show in the \"Whois\" directory as the Registrant of each domain name registration You designate, You will retain the full benefits of domain name registration with respect to each such domain name registration, including, subject to Section 4 below:

    \r\n
      \r\n
    1. The right to sell, transfer or assign each domain name registration, which shall require cancellation of the DBP services associated with each such domain name registration;
    2. \r\n
    3. The right to control the use of each domain name registration, including designating the primary and secondary domain name servers to which each domain name points;
    4. \r\n
    5. The right to cancel each domain name registration;
    6. \r\n
    7. The right to cancel the DBP services associated with each domain name registration and/or Your privacy services with DBP so that Your contract information is listed in the \"Whois\" directory; and
    8. \r\n
    9. The right to renew each domain name registration upon its expiration, subject to Your Registrar's applicable rules and policies.
    10. \r\n
    \r\n

    3. PERSONAL INFORMATION AND your notification obligations; representation and warranties; ACCOUNT SECURITY

    \r\n

    Personal Information and Your Notification Obligations 

    \r\n

    You agree that for each domain name for which you use DBP services, You will provide accurate and current information as to:

    \r\n
      \r\n
    1. Your name, the email address, postal address, phone and fax numbers for the domain name registration's Registrant contact;
    2. \r\n
    3. The email address, postal address, phone and fax numbers for the domain name registration's technical contact;
    4. \r\n
    5. The email address, postal address, phone and fax numbers for the domain name registration's administrative contact;
    6. \r\n
    7. The email address, postal address, phone and fax numbers for the domain name registration's billing contact; and
    8. \r\n
    9. You agree to provide government issued photo identification and/or government issued business identification as required for verification of identity when requested.
    10. \r\n
    \r\n

    You agree to:

    \r\n
      \r\n
    1. Notify DBP within three (3) calendar days when any of the personal information You provided upon subscribing to DBP's services, changes;
    2. \r\n
    3. Respond within three (3) calendar days to any inquiries made by DBP to determine the validity of personal information provided by You; and
    4. \r\n
    5. Timely respond to email messages DBP sends to You regarding correspondence DBP has received that is either addressed to or involves You and/or Your domain name registration, as more fully set forth in Section 5(c) below.
    6. \r\n
    7. To allow DBP to act as your Designated Agent (as that term is defined below) in instances when DBP services are added to or cancelled from your domain name and for the purpose of facilitating a change of registrant request (as further described below). 
    8. \r\n
    \r\n

    It is Your responsibility to keep Your personal information current and accurate at all times.

    \r\n

    Renewals

    \r\n

    You agree DBP will arrange for Your Registrar to charge the credit card You have on file with the Registrar, at the Registrar's then current rates.

    \r\n

    If for any reason DBP and/or the Registrar for Your domain name is unable to charge Your credit card for the full amount of the service provided, or if DBP and/or the Registrar is charged back for any fee it previously charged to the credit card You provided, You agree that DBP and/or the Registrar may, without notice to You, pursue all available remedies in order to obtain payment, including but not limited to immediate cancellation of all services DBP provides to You.

    \r\n

    Representations and Warranties

    \r\n

    You warrant that all information provided by You to DBP is truthful, complete, current and accurate. You also warrant that You are using DBP's private registration services in good faith and You have no knowledge of Your domain name infringing upon or conflicting with the legal rights of a third party or a third party's trademark or trade name. You also warrant the domain name being registered by DBP on Your behalf will not be used in connection with any illegal activity, or in connection with the transmission of Spam, or that contains or installs any viruses, worms, bugs, Trojan horses or other code, files or programs designed to, or capable or, disrupting, damaging or limiting the functionality of any software or hardware.

    \r\n

    Account Security

    \r\n

    You agree You are entirely responsible for maintaining the confidentiality of Your customer number/login ID and password (\"Account Access Information\").  You agree to notify DBP immediately of any unauthorized use of Your account or any other breach of security.  You agree DBP will not be liable for any loss that You may incur as a result of someone else using Your Account Access Information, either with or without Your knowledge.  You further agree You could be held liable for losses incurred by DBP or another party due to someone else using Your Account Access Information.  For security purposes, You should keep Account Access Information in a secure location and take precautions to prevent others from gaining access to Your Account Access Information.  You agree that You are entirely responsible for all activity in Your account, whether initiated by You, or by others.  DBP specifically disclaims liability for any activity in Your account, regardless of whether You authorized the activity.

    \r\n

    Designated Agency and Change of Registrant Information

    \r\n

    “DESIGNATED AGENT” MEANS AN INDIVIDUAL OR ENTITY THAT THE PRIOR REGISTRANT OR NEW REGISTRANT EXPLICITLY AUTHORIZES TO APPROVE A CHANGE OF REGISTRANT REQUEST ON ITS BEHALF.  IN THE CASE OF DBP SERVICES, A CHANGE OF REGISTRANT REQUEST MAY ALSO ARISE DUE TO INSTANCES WHERE DBP SERVICES ARE ADDED, OR REMOVED, FROM A DOMAIN NAME.  FOR THE PURPOSE OF FACILITATING ANY SUCH CHANGE REQUEST, AND IN ACCORDANCE WITH ICANN'S CHANGE OF REGISTRANT POLICY, YOU AGREE TO APPOINT DBP AS YOUR DESIGNATED AGENT FOR THE SOLE PURPOSE OF EXPLICITLY CONSENTING TO MATERIAL CHANGES OF REGISTRATION CONTACT INFORMATION ON YOUR BEHALF.

    \r\n

    4. DBP's rights to deny, suspend, terminate service and to disclose your personal information

    \r\n

    You understand and agree that DBP has the absolute right and power, in its sole discretion and without any liability to You whatsoever, to:

    \r\n
      \r\n
    1. Cancel the privacy service (which means that Your information will be available in the \"Whois\" directory) and/or reveal Your name and personal information that You provided to DBP:  
      A. When required by law, in the good faith belief that such action is necessary in order to conform to the edicts of the law or in the interest of public safety;
      B. To comply with legal process served upon DBP or in response to a reasonable threat of litigation against DBP (as determined by DBP in its sole and absolute discretion); or
      C. To comply with ICANN rules, policies, or procedures.
    2. \r\n
    3. Resolve any and all third party claims, whether threatened or made, arising out of Your use of a domain name for which DBP is the registrant listed in the \"Whois\" directory on Your behalf; or
    4. \r\n
    5. Take any other action DBP deems necessary:
      A. In the event you breach any provision of this Agreement or the DBP Anti-Spam Policy;
      B. To protect the integrity and stability of, and to comply with registration requirements, terms, conditions and policies of, the applicable domain name Registry and/or Registry Provider;
          C. To comply with any applicable laws, government rules or requirements, subpoenas, court orders or requests of law enforcement; 
      D. To comply with ICANN's Dispute Resolution Policy or ICANN's Change of Registrant Policy;
      E. To avoid any financial loss or legal liability (civil or criminal) on the part of DBP, its parent companies, subsidiaries, affiliates, shareholders, agents, officers, directors and employees;
      F. If the domain name for which DBP is the registrant on Your behalf violates or infringes a third party's trademark, trade name or other legal rights; and
      G. If it comes to DBP's attention that You are using DBP's services in a manner (as determined by DBP in its sole and absolute discretion) that:
    6. \r\n
    \r\n
    \r\n
      \r\n
    • Is illegal, or promotes or encourages illegal activity;
    • \r\n
    • Promotes, encourages or engages in child pornography or the exploitation of children;
    • \r\n
    • Promotes, encourages or engages in terrorism, violence against people, animals, or property;
    • \r\n
    • Promotes, encourages or engages in any spam or other unsolicited bulk email, or computer or network hacking or cracking;
    • \r\n
    • Violates the Ryan Haight Online Pharmacy Consumer Protection Act of 2008 or similar legislation, or promotes, encourages or engages in the sale or distribution of prescription medication without a valid prescription;  
    • \r\n
    • Infringes on the intellectual property rights of another User or any other person or entity;
    • \r\n
    • Violates the privacy or publicity rights of another User or any other person or entity, or breaches any duty of confidentiality that you owe to another User or any other person or entity;
    • \r\n
    • Interferes with the operation of DBP services;
    • \r\n
    • Contains or installs any viruses, worms, bugs, Trojan horses or other code, files or programs designed to, or capable of, disrupting, damaging or limiting the functionality of any software or hardware; or
    • \r\n
    • Contains false or deceptive language, or unsubstantiated or comparative claims, regarding DBP or its services.
    • \r\n
    \r\n
    \r\n

    You further understand and agree that if DBP is named as a defendant in, or investigated in anticipation of, any legal or administrative proceeding arising out of Your domain name registration or Your use of DBP's services, Your private registration service may be canceled, which means the domain name registration will revert back to You and Your identity will therefore be revealed in the Whois directory as Registrant.

    \r\n

    In the event:

    \r\n
      \r\n
    1. DBP takes any of the actions set forth in subsection i, ii, or iii above or section 5; and/or
    2. \r\n
    3. You elect to cancel DBP's services for any reason --
    4. \r\n
    \r\n

    Neither DBP nor your Registrar will refund any fees paid by You whatsoever.

    \r\n

    5. communications forwarding

    \r\n

    a. Correspondence Forwarding

    \r\n

    Inasmuch as DBP's name, postal address and phone number will be listed in the Whois directory, You agree DBP will review and forward communications addressed to Your domain name that are received via email, certified or traceable courier mail (such as UPS, FedEx, or DHL), or first class U.S. postal mail. You specifically acknowledge DBP will not forward to You first class postal mail (other than legal notices), \"junk\" mail or other unsolicited communications (whether delivered through email, fax, postal mail or telephone), and You further authorize DBP to either discard all such communications or return all such communications to sender unopened. You agree to waive any and all claims arising from Your failure to receive communications directed to Your domain name but not forwarded to You by DBP.

    \r\n

    b. Email Forwarding

    \r\n

    The Whois directory requires an email address for every purchased domain name registration. When You purchase a private domain registration, DBP creates a private email address for that domain name, \"@domainsbyproxy.com\". Thereafter, when messages are sent to that private email address, DBP handles them according to the email preference You selected for that particular domain name. You have three (3) email preferences from which to choose. You can elect to:

    \r\n
      \r\n
    1. Have all of the messages forwarded;
    2. \r\n
    3. Have all of the messages filtered for Spam and then forwarded; or
    4. \r\n
    5. Have none of the messages forwarded.
    6. \r\n
    \r\n

    As with all communications, You agree to waive any and all claims arising from Your failure to receive email directed to Your domain name but not forwarded to You by DBP.

    \r\n

    c. Notifications Regarding Correspondence and Your Obligation to Respond

    \r\n

    When DBP receives certified or traceable courier mail or legal notices addressed to Your domain name, in most cases, DBP will attempt to forward the mail to you via email. If You do not respond to the DBP email and/or the correspondence DBP has received regarding Your domain name registration concerns a dispute of any kind or otherwise requires immediate disposition, DBP may immediately reveal Your identity and/or cancel the DBP private registration service regarding either the domain name registration(s) in question. This means the Whois directory will revert to displaying Your name, postal address, email address and phone number that you provided to DBP.

    \r\n

    d. Additional Administrative Fees

    \r\n

    DBP reserves the right to charge You reasonable \"administrative fees\" or \"processing fees\" for (i)  tasks DBP may perform outside the normal scope of its Services, (ii) additional time and/or costs DBP may incur in providing its Services, and/or (iii) Your non-compliance with the Agreement (as determined by DBP in its sole and absolute discretion). Typical administrative or processing fee scenarios include, but are not limited to, (i) customer service issues that require additional personal time and attention; (ii) disputes that require accounting or legal services, whether performed by DBP staff or by outside firms retained by DBP; (iii) recouping any and all costs and fees, including the cost of Services, incurred by DBP as the result of chargebacks or other payment disputes brought by You, Your bank or Payment Method processor.  These administrative fees or processing fees will be billed to the Payment Method You have on file with Your Registrar.

    \r\n

    You agree to waive the right to trial by jury in any proceeding that takes place relating to or arising out of this Agreement.

    \r\n

    6. limitations of liability

    \r\n

    UNDER NO CIRCUMSTANCES SHALL DBP BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, PUNITIVE, SPECIAL, OR CONSEQUENTIAL DAMAGES FOR ANY REASON WHATSOEVER RELATED TO THIS AGREEMENT, YOUR DOMAIN NAME REGISTRATION, DBP'S SERVICES, USE OR INABILITY TO USE THE DBP WEBSITE OR THE MATERIALS AND CONTENT OF THE WEBSITE OR ANY OTHER WEBSITES LINKED TO THE DBP WEBSITE OR YOUR PROVISION OF ANY PERSONALLY IDENTIFIABLE INFORMATION TO DBP OR ANY THIRD PARTY. THIS LIMITATION APPLIES REGARDLESS OF WHETHER THE ALLEGED LIABILITY IS BASED ON CONTRACT, TORT, WARRANTY, NEGLIGENCE, STRICT LIABILITY OR ANY OTHER BASIS, EVEN IF DBP HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES OR SUCH DAMAGES WERE REASONABLY FORESEEABLE. BECAUSE CERTAIN JURISDICTIONS DO NOT PERMIT THE LIMITATION OR ELIMINATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES, DBP'S LIABILITY IN SUCH JURISDICTIONS SHALL BE LIMITED TO THE SMALLEST AMOUNT PERMITTED BY LAW.

    \r\n

    YOU FURTHER UNDERSTAND AND AGREE THAT DBP DISCLAIMS ANY LOSS OR LIABILITY RESULTING FROM:

    \r\n
      \r\n
    1. THE INADVERTENT DISCLOSURE OR THEFT OF YOUR PERSONAL INFORMATION;
    2. \r\n
    3. ACCESS DELAYS OR INTERRUPTIONS TO OUR WEBSITE OR THE WEBSITES OF OUR AFFILIATED REGISTRARS;
    4. \r\n
    5. DATA NON-DELIVERY OF MIS-DELIVERY BETWEEN YOU AND DBP;
    6. \r\n
    7. THE FAILURE FOR WHATEVER REASON TO RENEW A PRIVATE DOMAIN NAME REGISTRATION;
    8. \r\n
    9. THE UNAUTHORIZED USE OF YOUR DBP ACCOUNT OR ANY OF DBP'S SERVICES;
    10. \r\n
    11. ERRORS, OMISSIONS OR MISSTATEMENTS BY DBP;
    12. \r\n
    13. DELETION OF, FAILURE TO STORE, FAILURE TO PROCESS OR ACT UPON EMAIL MESSAGES FORWARDED TO EITHER YOU OR YOUR PRIVATE DOMAIN NAME REGISTRATION;
    14. \r\n
    15. PROCESSING OF UPDATED INFORMATION REGARDING YOUR DBP ACCOUNT; AND/OR
    16. \r\n
    17. ANY ACT OR OMISSION CAUSED BY YOU OR YOUR AGENTS (WHETHER AUTHORIZED BY YOU OR NOT).
    18. \r\n
    \r\n

    7. indemnity

    \r\n

    You agree to release, defend, indemnify and hold harmless DBP, its parent companies, subsidiaries, affiliates, shareholders, agents, directors, officers and employees and Your Registrar, from and against any and all claims, demands, liabilities, losses, damages or costs, including reasonable attorneys' fees, arising out of or related in any way to this Agreement, the services provided hereunder by DBP, the DBP website, Your account with DBP, Your use of Your domain name registration, and/or disputes arising in connection with the dispute policy.

    \r\n

    8. DBP warranty disclaimer

    \r\n

    DBP, ITS PARENT COMPANIES, SUBSIDIARIES, AFFILIATES, SHAREHOLDERS, AGENTS, DIRECTORS, OFFICERS, AND EMPLOYEES EXPRESSLY DISCLAIM ALL REPRESENTATIONS AND WARRANTIES OF ANY KIND IN CONNECTION WITH THIS AGREEMENT, THE SERVICE PROVIDED HEREUNDER, THE DBP WEBSITE OR ANY WEBSITES LINKED TO THE DBP WEBSITE, WHETHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. ALL DBP SERVICES, AS WELL AS THE DBP WEBSITE, ARE PROVIDED \"AS IS\". YOUR SUBSCRIPTION TO AND USE OF DBP'S SERVICES AND ITS WEBSITE ARE ENTIRELY AT YOUR RISK. SOME JURISDICTIONS DO NOT ALLOW THE DISCLAIMER OF IMPLIED WARRANTIES, IN WHICH EVENT THE FOREGOING DISCLAIMER MAY NOT APPLY TO YOU.

    \r\n

    9. copyright and trademark

    \r\n

    You understand and agree that all content and materials contained in this Agreement, the Privacy Policy and the DBP website found here , are protected by the various copyright, patent, trademark, service mark and trade secret laws of the United States, as well as any other applicable proprietary rights and laws, and that DBP expressly reserves its rights in and to all such content and materials.

    \r\n

    You further understand and agree You are prohibited from using, in any manner whatsoever, any of the afore-described content and materials without the express written permission of DBP. No license or right under any copyright, patent, trademark, service mark or other proprietary right or license is granted to You or conferred upon You by this Agreement or otherwise.

    \r\n

    10. miscellaneous provisions

    \r\n

    a. Severability; Construction; Entire Agreement

    \r\n

    If any part of this Agreement shall be held to be illegal, unenforceable or invalid, in whole or in part, such provision shall be modified to the minimum extent necessary to make it legal, enforceable and valid, and the legality, enforceability and validity of the remaining provisions of this Agreement shall not be affected or impaired. The headings herein will not be considered a part of this Agreement. You agree this Agreement, including the policies it incorporates by reference, constitute the complete and only Agreement between You and DBP regarding the services contemplated herein.

    \r\n

    b. Governing Law; Venue; Waiver Of Trial By Jury

    \r\n

    This Agreement shall be governed in all respects by the laws and judicial decisions of Maricopa County, Arizona, excluding its conflicts of laws rules. Except as provided immediately below, You agree that any action relating to or arising out of this Agreement, shall be brought exclusively in the courts of Maricopa County, Arizona. For the adjudication of domain name registration disputes, you agree to submit to the exclusive jurisdiction and venue of the U.S. District Court for the District of Arizona located in Phoenix, Arizona. You agree to waive the right to trial by jury in any proceeding, regardless of venue, that takes place relating to or arising out of this Agreement.

    \r\n

    c. Notices

    \r\n

    All notices from DBP to You will be sent to the email address You provided to DBP. Notices by email shall be deemed effective twenty-four (24) hours after the email is sent by DBP, unless DBP receives notice that the email address is invalid, in which event DBP may give You notice via first class or certified mail, return receipt requested. All notices from You to DBP shall be sent via certified mail, return receipt requested or traceable courier to:

    \r\n
        Domains By Proxy, LLC
        Attn: General Counsel
        14455 North Hayden Rd.
        Suite 219
        Scottsdale, AZ 85260
    \r\n

    Notices sent via certified mail or traceable courier shall be deemed effective five (5) days after the date of mailing.

    \r\n

    d. Insurance

    \r\n

    In the unlikely event You lose Your domain name registration to a third party solely as a result of DBP's negligent actions (and absent fraud or other negligent or willful misconduct committed by a third party), You may be insured against such loss through DBP's Professional Liability Insurance Policy, which is currently underwritten by American International Insurance Company. Of course, every claim is subject to the then-carrier's investigation into the facts and circumstances surrounding such claim. In the event You have reason to believe that circumstances exist which warrant the filing of an insurance claim, please send a written notice (specifying the basis for such claim), via certified mail, return receipt requested, to:

    \r\n
        Domains By Proxy, LLC
        Attn: Insurance Claims
        14455 North Hayden Rd.
        Suite 219
        Scottsdale, AZ 85260
    \r\n

    e. Indemnification

    \r\n

    In the unlikely event You lose Your domain name registration to a third party solely as a result of DBP's willful misconduct, Your Registrar (the \"Indemnifying Party\") will indemnify and hold You harmless against any losses, damages or costs (including reasonable attorneys' fees) resulting from any claim, action, proceeding, suit or demand arising out of or related to the loss of Your domain name registration. Such indemnification obligations under this Section 10(e) are conditioned upon the following:

    \r\n
      \r\n
    1. That You promptly give both DBP and the Indemnifying Party written notice of the claim, demand, or action and provide reasonable assistance to the Indemnifying Party, at its cost and expense, in connection therewith, and
    2. \r\n
    3. That the Indemnifying Party has the right, at its option, to control and direct the defense to any settlement of such claim, demand, or action.
    4. \r\n
    \r\n

    Any notice concerning indemnification shall, with respect to DBP, be sent in accordance with Section 10(c) of this Agreement. With respect to Your Registrar, notices regarding indemnification should be sent in accordance with the notification provisions contained in Your Registrar's Domain Name Registration Agreement.

    \r\n

    f. Term of Agreement; Survival

    \r\n

    The terms of this Agreement shall continue in full force and effect as long as DBP is the Registrant for any domain name on Your behalf. Sections 5 (Communications Forwarding), 6 (Limitation of Liability), 7 (Indemnity), 8 (Warranty Disclaimer) and 10 (Miscellaneous Provisions) shall survive any termination or expiration of this Agreement.

    \n
    \n
    \n\nRevised: 10/25/17
    \nCopyright © 2003-2017 All Rights Reserved.\n
    \n
    \n
    ", + "url": "http://www.secureserver.net/agreements/ShowDoc.aspx?pageid=domain_nameproxy&pl_id=510456" + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.DomainRegistration/stable/2020-12-01/examples/ListTopLevelDomains.json b/specification/web/resource-manager/Microsoft.DomainRegistration/stable/2020-12-01/examples/ListTopLevelDomains.json new file mode 100644 index 000000000000..cdf34e3984d8 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.DomainRegistration/stable/2020-12-01/examples/ListTopLevelDomains.json @@ -0,0 +1,87 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.DomainRegistration/topLevelDomains/com", + "name": "com", + "type": "Microsoft.DomainRegistration/topLevelDomains", + "properties": { + "privacy": true + } + }, + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.DomainRegistration/topLevelDomains/net", + "name": "net", + "type": "Microsoft.DomainRegistration/topLevelDomains", + "properties": { + "privacy": true + } + }, + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.DomainRegistration/topLevelDomains/co.uk", + "name": "co.uk", + "type": "Microsoft.DomainRegistration/topLevelDomains", + "properties": { + "privacy": false + } + }, + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.DomainRegistration/topLevelDomains/org", + "name": "org", + "type": "Microsoft.DomainRegistration/topLevelDomains", + "properties": { + "privacy": true + } + }, + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.DomainRegistration/topLevelDomains/nl", + "name": "nl", + "type": "Microsoft.DomainRegistration/topLevelDomains", + "properties": { + "privacy": true + } + }, + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.DomainRegistration/topLevelDomains/in", + "name": "in", + "type": "Microsoft.DomainRegistration/topLevelDomains", + "properties": { + "privacy": false + } + }, + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.DomainRegistration/topLevelDomains/biz", + "name": "biz", + "type": "Microsoft.DomainRegistration/topLevelDomains", + "properties": { + "privacy": true + } + }, + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.DomainRegistration/topLevelDomains/org.uk", + "name": "org.uk", + "type": "Microsoft.DomainRegistration/topLevelDomains", + "properties": { + "privacy": false + } + }, + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.DomainRegistration/topLevelDomains/co.in", + "name": "co.in", + "type": "Microsoft.DomainRegistration/topLevelDomains", + "properties": { + "privacy": false + } + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.DomainRegistration/stable/2020-12-01/examples/RenewDomain.json b/specification/web/resource-manager/Microsoft.DomainRegistration/stable/2020-12-01/examples/RenewDomain.json new file mode 100644 index 000000000000..67e9b687d21e --- /dev/null +++ b/specification/web/resource-manager/Microsoft.DomainRegistration/stable/2020-12-01/examples/RenewDomain.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-12-01", + "subscriptionId": "3dddfa4f-cedf-4dc0-ba29-b6d1a69ab545", + "resourceGroupName": "RG", + "domainName": "example.com" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/web/resource-manager/Microsoft.DomainRegistration/stable/2021-01-01/DomainRegistrationProvider.json b/specification/web/resource-manager/Microsoft.DomainRegistration/stable/2021-01-01/DomainRegistrationProvider.json new file mode 100644 index 000000000000..d0b8588d7d18 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.DomainRegistration/stable/2021-01-01/DomainRegistrationProvider.json @@ -0,0 +1,91 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-01-01", + "title": "DomainRegistrationProvider API Client" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/providers/Microsoft.DomainRegistration/operations": { + "get": { + "tags": [ + "DomainRegistrationProvider" + ], + "summary": "Implements Csm operations Api to exposes the list of available Csm Apis under the resource provider", + "description": "Description for Implements Csm operations Api to exposes the list of available Csm Apis under the resource provider", + "operationId": "DomainRegistrationProvider_ListOperations", + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/CsmOperationCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List operations": { + "$ref": "./examples/ListOperations.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": {}, + "parameters": { + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Your Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).", + "required": true, + "type": "string" + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "API Version", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/web/resource-manager/Microsoft.DomainRegistration/stable/2021-01-01/Domains.json b/specification/web/resource-manager/Microsoft.DomainRegistration/stable/2021-01-01/Domains.json new file mode 100644 index 000000000000..988c0599395b --- /dev/null +++ b/specification/web/resource-manager/Microsoft.DomainRegistration/stable/2021-01-01/Domains.json @@ -0,0 +1,1476 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-01-01", + "title": "Domains API Client" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.DomainRegistration/checkDomainAvailability": { + "post": { + "tags": [ + "Domains" + ], + "summary": "Check if a domain is available for registration.", + "description": "Description for Check if a domain is available for registration.", + "operationId": "Domains_CheckAvailability", + "parameters": [ + { + "name": "identifier", + "in": "body", + "description": "Name of the domain.", + "required": true, + "schema": { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/NameIdentifier" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DomainAvailabilityCheckResult" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DomainRegistration/domains": { + "get": { + "tags": [ + "Domains" + ], + "summary": "Get all domains in a subscription.", + "description": "Description for Get all domains in a subscription.", + "operationId": "Domains_List", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DomainCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DomainRegistration/generateSsoRequest": { + "post": { + "tags": [ + "Domains" + ], + "summary": "Generate a single sign-on request for the domain management portal.", + "description": "Description for Generate a single sign-on request for the domain management portal.", + "operationId": "Domains_GetControlCenterSsoRequest", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DomainControlCenterSsoRequest" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DomainRegistration/listDomainRecommendations": { + "post": { + "tags": [ + "Domains" + ], + "summary": "Get domain name recommendations based on keywords.", + "description": "Description for Get domain name recommendations based on keywords.", + "operationId": "Domains_ListRecommendations", + "parameters": [ + { + "name": "parameters", + "in": "body", + "description": "Search parameters for domain name recommendations.", + "required": true, + "schema": { + "$ref": "#/definitions/DomainRecommendationSearchParameters" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/NameIdentifierCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DomainRegistration/domains": { + "get": { + "tags": [ + "Domains" + ], + "summary": "Get all domains in a resource group.", + "description": "Description for Get all domains in a resource group.", + "operationId": "Domains_ListByResourceGroup", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DomainCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DomainRegistration/domains/{domainName}": { + "get": { + "tags": [ + "Domains" + ], + "summary": "Get a domain.", + "description": "Description for Get a domain.", + "operationId": "Domains_Get", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "domainName", + "in": "path", + "description": "Name of the domain.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Domain" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Domains" + ], + "summary": "Creates or updates a domain.", + "description": "Description for Creates or updates a domain.", + "operationId": "Domains_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "domainName", + "in": "path", + "description": "Name of the domain.", + "required": true, + "type": "string", + "pattern": "[a-zA-Z0-9][a-zA-Z0-9\\.-]+" + }, + { + "name": "domain", + "in": "body", + "description": "Domain registration information.", + "required": true, + "schema": { + "$ref": "#/definitions/Domain" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Domain purchase is in progress.", + "schema": { + "$ref": "#/definitions/Domain" + } + }, + "200": { + "description": "Domain purchase was successful.", + "schema": { + "$ref": "#/definitions/Domain" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "Domains" + ], + "summary": "Delete a domain.", + "description": "Description for Delete a domain.", + "operationId": "Domains_Delete", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "domainName", + "in": "path", + "description": "Name of the domain.", + "required": true, + "type": "string" + }, + { + "name": "forceHardDeleteDomain", + "in": "query", + "description": "Specify true to delete the domain immediately. The default is false which deletes the domain after 24 hours.", + "type": "boolean" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted domain." + }, + "204": { + "description": "Domain does not exist in Azure database probably because it has already been deleted" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Domains" + ], + "summary": "Creates or updates a domain.", + "description": "Description for Creates or updates a domain.", + "operationId": "Domains_Update", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "domainName", + "in": "path", + "description": "Name of the domain.", + "required": true, + "type": "string", + "pattern": "[a-zA-Z0-9][a-zA-Z0-9\\.-]+" + }, + { + "name": "domain", + "in": "body", + "description": "Domain registration information.", + "required": true, + "schema": { + "$ref": "#/definitions/DomainPatchResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Domain purchase is in progress.", + "schema": { + "$ref": "#/definitions/Domain" + } + }, + "200": { + "description": "Domain purchase was successful.", + "schema": { + "$ref": "#/definitions/Domain" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DomainRegistration/domains/{domainName}/domainOwnershipIdentifiers": { + "get": { + "tags": [ + "Domains" + ], + "summary": "Lists domain ownership identifiers.", + "description": "Description for Lists domain ownership identifiers.", + "operationId": "Domains_ListOwnershipIdentifiers", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "domainName", + "in": "path", + "description": "Name of domain.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DomainOwnershipIdentifierCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DomainRegistration/domains/{domainName}/domainOwnershipIdentifiers/{name}": { + "get": { + "tags": [ + "Domains" + ], + "summary": "Get ownership identifier for domain", + "description": "Description for Get ownership identifier for domain", + "operationId": "Domains_GetOwnershipIdentifier", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "domainName", + "in": "path", + "description": "Name of domain.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "Name of identifier.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DomainOwnershipIdentifier" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Domains" + ], + "summary": "Creates an ownership identifier for a domain or updates identifier details for an existing identifier", + "description": "Description for Creates an ownership identifier for a domain or updates identifier details for an existing identifier", + "operationId": "Domains_CreateOrUpdateOwnershipIdentifier", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "domainName", + "in": "path", + "description": "Name of domain.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "Name of identifier.", + "required": true, + "type": "string" + }, + { + "name": "domainOwnershipIdentifier", + "in": "body", + "description": "A JSON representation of the domain ownership properties.", + "required": true, + "schema": { + "$ref": "#/definitions/DomainOwnershipIdentifier" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DomainOwnershipIdentifier" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Domains" + ], + "summary": "Delete ownership identifier for domain", + "description": "Description for Delete ownership identifier for domain", + "operationId": "Domains_DeleteOwnershipIdentifier", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "domainName", + "in": "path", + "description": "Name of domain.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "Name of identifier.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted domain ownership identifier." + }, + "204": { + "description": "Domain ownership identifier does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Domains" + ], + "summary": "Creates an ownership identifier for a domain or updates identifier details for an existing identifier", + "description": "Description for Creates an ownership identifier for a domain or updates identifier details for an existing identifier", + "operationId": "Domains_UpdateOwnershipIdentifier", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "domainName", + "in": "path", + "description": "Name of domain.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "Name of identifier.", + "required": true, + "type": "string" + }, + { + "name": "domainOwnershipIdentifier", + "in": "body", + "description": "A JSON representation of the domain ownership properties.", + "required": true, + "schema": { + "$ref": "#/definitions/DomainOwnershipIdentifier" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DomainOwnershipIdentifier" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DomainRegistration/domains/{domainName}/renew": { + "post": { + "tags": [ + "Domains" + ], + "summary": "Renew a domain.", + "description": "Description for Renew a domain.", + "operationId": "Domains_Renew", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "domainName", + "in": "path", + "description": "Name of the domain.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Domain renewal was successful." + }, + "202": { + "description": "Domain renewal in progress." + }, + "204": { + "description": "Domain does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Renew an existing domain": { + "$ref": "./examples/RenewDomain.json" + } + } + } + } + }, + "definitions": { + "Address": { + "description": "Address information for domain registration.", + "required": [ + "address1", + "city", + "country", + "postalCode", + "state" + ], + "type": "object", + "properties": { + "address1": { + "description": "First line of an Address.", + "type": "string" + }, + "address2": { + "description": "The second line of the Address. Optional.", + "type": "string" + }, + "city": { + "description": "The city for the address.", + "type": "string" + }, + "country": { + "description": "The country for the address.", + "type": "string" + }, + "postalCode": { + "description": "The postal code for the address.", + "type": "string" + }, + "state": { + "description": "The state or province for the address.", + "type": "string" + } + } + }, + "Contact": { + "description": "Contact information for domain registration. If 'Domain Privacy' option is not selected then the contact information is made publicly available through the Whois \ndirectories as per ICANN requirements.", + "required": [ + "email", + "nameFirst", + "nameLast", + "phone" + ], + "type": "object", + "properties": { + "addressMailing": { + "$ref": "#/definitions/Address", + "description": "Mailing address." + }, + "email": { + "description": "Email address.", + "type": "string" + }, + "fax": { + "description": "Fax number.", + "type": "string" + }, + "jobTitle": { + "description": "Job title.", + "type": "string" + }, + "nameFirst": { + "description": "First name.", + "type": "string" + }, + "nameLast": { + "description": "Last name.", + "type": "string" + }, + "nameMiddle": { + "description": "Middle name.", + "type": "string" + }, + "organization": { + "description": "Organization contact belongs to.", + "type": "string" + }, + "phone": { + "description": "Phone number.", + "type": "string" + } + } + }, + "Domain": { + "description": "Information about a domain.", + "type": "object", + "allOf": [ + { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "Domain resource specific properties", + "required": [ + "contactAdmin", + "contactBilling", + "contactRegistrant", + "contactTech", + "consent" + ], + "properties": { + "contactAdmin": { + "$ref": "#/definitions/Contact", + "description": "Administrative contact.", + "x-ms-mutability": [ + "create" + ] + }, + "contactBilling": { + "$ref": "#/definitions/Contact", + "description": "Billing contact.", + "x-ms-mutability": [ + "create" + ] + }, + "contactRegistrant": { + "$ref": "#/definitions/Contact", + "description": "Registrant contact.", + "x-ms-mutability": [ + "create" + ] + }, + "contactTech": { + "$ref": "#/definitions/Contact", + "description": "Technical contact.", + "x-ms-mutability": [ + "create" + ] + }, + "registrationStatus": { + "description": "Domain registration status.", + "enum": [ + "Active", + "Awaiting", + "Cancelled", + "Confiscated", + "Disabled", + "Excluded", + "Expired", + "Failed", + "Held", + "Locked", + "Parked", + "Pending", + "Reserved", + "Reverted", + "Suspended", + "Transferred", + "Unknown", + "Unlocked", + "Unparked", + "Updated", + "JsonConverterFailed" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "DomainStatus", + "modelAsString": false + } + }, + "provisioningState": { + "description": "Domain provisioning state.", + "enum": [ + "Succeeded", + "Failed", + "Canceled", + "InProgress", + "Deleting" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": false + } + }, + "nameServers": { + "description": "Name servers.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "privacy": { + "description": "true if domain privacy is enabled for this domain; otherwise, false.", + "type": "boolean" + }, + "createdTime": { + "format": "date-time", + "description": "Domain creation timestamp.", + "type": "string", + "readOnly": true + }, + "expirationTime": { + "format": "date-time", + "description": "Domain expiration timestamp.", + "type": "string", + "readOnly": true + }, + "lastRenewedTime": { + "format": "date-time", + "description": "Timestamp when the domain was renewed last time.", + "type": "string", + "readOnly": true + }, + "autoRenew": { + "description": "true if the domain should be automatically renewed; otherwise, false.", + "default": true, + "type": "boolean" + }, + "readyForDnsRecordManagement": { + "description": "true if Azure can assign this domain to App Service apps; otherwise, false. This value will be true if domain registration status is active and \n it is hosted on name servers Azure has programmatic access to.", + "type": "boolean", + "readOnly": true + }, + "managedHostNames": { + "description": "All hostnames derived from the domain and assigned to Azure resources.", + "type": "array", + "items": { + "$ref": "#/definitions/HostName" + }, + "readOnly": true + }, + "consent": { + "$ref": "#/definitions/DomainPurchaseConsent", + "description": "Legal agreement consent.", + "x-ms-mutability": [ + "create" + ] + }, + "domainNotRenewableReasons": { + "description": "Reasons why domain is not renewable.", + "type": "array", + "items": { + "enum": [ + "RegistrationStatusNotSupportedForRenewal", + "ExpirationNotInRenewalTimeRange", + "SubscriptionNotActive" + ], + "type": "string" + }, + "readOnly": true + }, + "dnsType": { + "description": "Current DNS type", + "enum": [ + "AzureDns", + "DefaultDomainRegistrarDns" + ], + "type": "string", + "x-ms-enum": { + "name": "DnsType", + "modelAsString": false + } + }, + "dnsZoneId": { + "description": "Azure DNS Zone to use", + "type": "string" + }, + "targetDnsType": { + "description": "Target DNS type (would be used for migration)", + "enum": [ + "AzureDns", + "DefaultDomainRegistrarDns" + ], + "type": "string", + "x-ms-enum": { + "name": "DnsType", + "modelAsString": false + } + }, + "authCode": { + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + } + }, + "x-ms-client-flatten": true + } + } + }, + "DomainAvailabilityCheckResult": { + "description": "Domain availability check result.", + "type": "object", + "properties": { + "name": { + "description": "Name of the domain.", + "type": "string" + }, + "available": { + "description": "true if domain can be purchased using CreateDomain API; otherwise, false.", + "type": "boolean" + }, + "domainType": { + "description": "Valid values are Regular domain: Azure will charge the full price of domain registration, SoftDeleted: Purchasing this domain will simply restore it and this operation will not cost anything.", + "enum": [ + "Regular", + "SoftDeleted" + ], + "type": "string", + "x-ms-enum": { + "name": "DomainType", + "modelAsString": false + } + } + } + }, + "DomainCollection": { + "description": "Collection of domains.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/Domain" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "DomainControlCenterSsoRequest": { + "description": "Single sign-on request information for domain management.", + "type": "object", + "properties": { + "url": { + "description": "URL where the single sign-on request is to be made.", + "type": "string", + "readOnly": true + }, + "postParameterKey": { + "description": "Post parameter key.", + "type": "string", + "readOnly": true + }, + "postParameterValue": { + "description": "Post parameter value. Client should use 'application/x-www-form-urlencoded' encoding for this value.", + "type": "string", + "readOnly": true + } + } + }, + "DomainOwnershipIdentifier": { + "description": "Domain ownership Identifier.", + "type": "object", + "allOf": [ + { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "DomainOwnershipIdentifier resource specific properties", + "properties": { + "ownershipId": { + "description": "Ownership Id.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "DomainOwnershipIdentifierCollection": { + "description": "Collection of domain ownership identifiers.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/DomainOwnershipIdentifier" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "DomainPatchResource": { + "description": "ARM resource for a domain.", + "type": "object", + "allOf": [ + { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "DomainPatchResource resource specific properties", + "required": [ + "contactAdmin", + "contactBilling", + "contactRegistrant", + "contactTech", + "consent" + ], + "properties": { + "contactAdmin": { + "$ref": "#/definitions/Contact", + "description": "Administrative contact.", + "x-ms-mutability": [ + "create" + ] + }, + "contactBilling": { + "$ref": "#/definitions/Contact", + "description": "Billing contact.", + "x-ms-mutability": [ + "create" + ] + }, + "contactRegistrant": { + "$ref": "#/definitions/Contact", + "description": "Registrant contact.", + "x-ms-mutability": [ + "create" + ] + }, + "contactTech": { + "$ref": "#/definitions/Contact", + "description": "Technical contact.", + "x-ms-mutability": [ + "create" + ] + }, + "registrationStatus": { + "description": "Domain registration status.", + "enum": [ + "Active", + "Awaiting", + "Cancelled", + "Confiscated", + "Disabled", + "Excluded", + "Expired", + "Failed", + "Held", + "Locked", + "Parked", + "Pending", + "Reserved", + "Reverted", + "Suspended", + "Transferred", + "Unknown", + "Unlocked", + "Unparked", + "Updated", + "JsonConverterFailed" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "DomainStatus", + "modelAsString": false + } + }, + "provisioningState": { + "description": "Domain provisioning state.", + "enum": [ + "Succeeded", + "Failed", + "Canceled", + "InProgress", + "Deleting" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": false + } + }, + "nameServers": { + "description": "Name servers.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "privacy": { + "description": "true if domain privacy is enabled for this domain; otherwise, false.", + "type": "boolean" + }, + "createdTime": { + "format": "date-time", + "description": "Domain creation timestamp.", + "type": "string", + "readOnly": true + }, + "expirationTime": { + "format": "date-time", + "description": "Domain expiration timestamp.", + "type": "string", + "readOnly": true + }, + "lastRenewedTime": { + "format": "date-time", + "description": "Timestamp when the domain was renewed last time.", + "type": "string", + "readOnly": true + }, + "autoRenew": { + "description": "true if the domain should be automatically renewed; otherwise, false.", + "default": true, + "type": "boolean" + }, + "readyForDnsRecordManagement": { + "description": "true if Azure can assign this domain to App Service apps; otherwise, false. This value will be true if domain registration status is active and \n it is hosted on name servers Azure has programmatic access to.", + "type": "boolean", + "readOnly": true + }, + "managedHostNames": { + "description": "All hostnames derived from the domain and assigned to Azure resources.", + "type": "array", + "items": { + "$ref": "#/definitions/HostName" + }, + "readOnly": true + }, + "consent": { + "$ref": "#/definitions/DomainPurchaseConsent", + "description": "Legal agreement consent.", + "x-ms-mutability": [ + "create" + ] + }, + "domainNotRenewableReasons": { + "description": "Reasons why domain is not renewable.", + "type": "array", + "items": { + "enum": [ + "RegistrationStatusNotSupportedForRenewal", + "ExpirationNotInRenewalTimeRange", + "SubscriptionNotActive" + ], + "type": "string" + }, + "readOnly": true + }, + "dnsType": { + "description": "Current DNS type", + "enum": [ + "AzureDns", + "DefaultDomainRegistrarDns" + ], + "type": "string", + "x-ms-enum": { + "name": "DnsType", + "modelAsString": false + } + }, + "dnsZoneId": { + "description": "Azure DNS Zone to use", + "type": "string" + }, + "targetDnsType": { + "description": "Target DNS type (would be used for migration)", + "enum": [ + "AzureDns", + "DefaultDomainRegistrarDns" + ], + "type": "string", + "x-ms-enum": { + "name": "DnsType", + "modelAsString": false + } + }, + "authCode": { + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + } + }, + "x-ms-client-flatten": true + } + } + }, + "DomainPurchaseConsent": { + "description": "Domain purchase consent object, representing acceptance of applicable legal agreements.", + "type": "object", + "properties": { + "agreementKeys": { + "description": "List of applicable legal agreement keys. This list can be retrieved using ListLegalAgreements API under TopLevelDomain resource.", + "type": "array", + "items": { + "type": "string" + } + }, + "agreedBy": { + "description": "Client IP address.", + "type": "string" + }, + "agreedAt": { + "format": "date-time", + "description": "Timestamp when the agreements were accepted.", + "type": "string" + } + } + }, + "DomainRecommendationSearchParameters": { + "description": "Domain recommendation search parameters.", + "type": "object", + "properties": { + "keywords": { + "description": "Keywords to be used for generating domain recommendations.", + "type": "string" + }, + "maxDomainRecommendations": { + "format": "int32", + "description": "Maximum number of recommendations.", + "type": "integer" + } + } + }, + "HostName": { + "description": "Details of a hostname derived from a domain.", + "type": "object", + "properties": { + "name": { + "description": "Name of the hostname.", + "type": "string" + }, + "siteNames": { + "description": "List of apps the hostname is assigned to. This list will have more than one app only if the hostname is pointing to a Traffic Manager.", + "type": "array", + "items": { + "type": "string" + } + }, + "azureResourceName": { + "description": "Name of the Azure resource the hostname is assigned to. If it is assigned to a Traffic Manager then it will be the Traffic Manager name otherwise it will be the app name.", + "type": "string" + }, + "azureResourceType": { + "description": "Type of the Azure resource the hostname is assigned to.", + "enum": [ + "Website", + "TrafficManager" + ], + "type": "string", + "x-ms-enum": { + "name": "AzureResourceType", + "modelAsString": false + } + }, + "customHostNameDnsRecordType": { + "description": "Type of the DNS record.", + "enum": [ + "CName", + "A" + ], + "type": "string", + "x-ms-enum": { + "name": "CustomHostNameDnsRecordType", + "modelAsString": false + } + }, + "hostNameType": { + "description": "Type of the hostname.", + "enum": [ + "Verified", + "Managed" + ], + "type": "string", + "x-ms-enum": { + "name": "HostNameType", + "modelAsString": false + } + } + } + }, + "NameIdentifierCollection": { + "description": "Collection of domain name identifiers.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/NameIdentifier" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Your Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).", + "required": true, + "type": "string" + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "Name of the resource group to which the resource belongs.", + "required": true, + "type": "string", + "maxLength": 90, + "minLength": 1, + "pattern": "^[-\\w\\._\\(\\)]+[^\\.]$", + "x-ms-parameter-location": "method" + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "API Version", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/web/resource-manager/Microsoft.DomainRegistration/stable/2021-01-01/TopLevelDomains.json b/specification/web/resource-manager/Microsoft.DomainRegistration/stable/2021-01-01/TopLevelDomains.json new file mode 100644 index 000000000000..4a33da030c11 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.DomainRegistration/stable/2021-01-01/TopLevelDomains.json @@ -0,0 +1,299 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-01-01", + "title": "TopLevelDomains API Client" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.DomainRegistration/topLevelDomains": { + "get": { + "tags": [ + "TopLevelDomains" + ], + "summary": "Get all top-level domains supported for registration.", + "description": "Description for Get all top-level domains supported for registration.", + "operationId": "TopLevelDomains_List", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TopLevelDomainCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List Top Level Domains": { + "$ref": "./examples/ListTopLevelDomains.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DomainRegistration/topLevelDomains/{name}": { + "get": { + "tags": [ + "TopLevelDomains" + ], + "summary": "Get details of a top-level domain.", + "description": "Description for Get details of a top-level domain.", + "operationId": "TopLevelDomains_Get", + "parameters": [ + { + "name": "name", + "in": "path", + "description": "Name of the top-level domain.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TopLevelDomain" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Top Level Domain": { + "$ref": "./examples/GetTopLevelDomain.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DomainRegistration/topLevelDomains/{name}/listAgreements": { + "post": { + "tags": [ + "TopLevelDomains" + ], + "summary": "Gets all legal agreements that user needs to accept before purchasing a domain.", + "description": "Description for Gets all legal agreements that user needs to accept before purchasing a domain.", + "operationId": "TopLevelDomains_ListAgreements", + "parameters": [ + { + "name": "name", + "in": "path", + "description": "Name of the top-level domain.", + "required": true, + "type": "string" + }, + { + "name": "agreementOption", + "in": "body", + "description": "Domain agreement options.", + "required": true, + "schema": { + "$ref": "#/definitions/TopLevelDomainAgreementOption" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TldLegalAgreementCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List Top Level Domain Agreements": { + "$ref": "./examples/ListTopLevelDomainAgreements.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "TldLegalAgreement": { + "description": "Legal agreement for a top level domain.", + "required": [ + "agreementKey", + "title", + "content" + ], + "type": "object", + "properties": { + "agreementKey": { + "description": "Unique identifier for the agreement.", + "type": "string" + }, + "title": { + "description": "Agreement title.", + "type": "string" + }, + "content": { + "description": "Agreement details.", + "type": "string" + }, + "url": { + "description": "URL where a copy of the agreement details is hosted.", + "type": "string" + } + } + }, + "TldLegalAgreementCollection": { + "description": "Collection of top-level domain legal agreements.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/TldLegalAgreement" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "TopLevelDomain": { + "description": "A top level domain object.", + "type": "object", + "allOf": [ + { + "$ref": "../../../Microsoft.Web/stable/2021-01-01/CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "TopLevelDomain resource specific properties", + "properties": { + "privacy": { + "description": "If true, then the top level domain supports domain privacy; otherwise, false.", + "type": "boolean" + } + }, + "x-ms-client-flatten": true + } + } + }, + "TopLevelDomainAgreementOption": { + "description": "Options for retrieving the list of top level domain legal agreements.", + "type": "object", + "properties": { + "includePrivacy": { + "description": "If true, then the list of agreements will include agreements for domain privacy as well; otherwise, false.", + "type": "boolean" + }, + "forTransfer": { + "description": "If true, then the list of agreements will include agreements for domain transfer as well; otherwise, false.", + "type": "boolean" + } + } + }, + "TopLevelDomainCollection": { + "description": "Collection of Top-level domains.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/TopLevelDomain" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Your Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).", + "required": true, + "type": "string" + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "API Version", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/web/resource-manager/Microsoft.DomainRegistration/stable/2021-01-01/examples/GetTopLevelDomain.json b/specification/web/resource-manager/Microsoft.DomainRegistration/stable/2021-01-01/examples/GetTopLevelDomain.json new file mode 100644 index 000000000000..ca99808ef54f --- /dev/null +++ b/specification/web/resource-manager/Microsoft.DomainRegistration/stable/2021-01-01/examples/GetTopLevelDomain.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "api-version": "2021-01-01", + "name": "com" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.DomainRegistration/topLevelDomains/com", + "name": "com", + "type": "Microsoft.DomainRegistration/topLevelDomains", + "properties": { + "privacy": true + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.DomainRegistration/stable/2021-01-01/examples/ListOperations.json b/specification/web/resource-manager/Microsoft.DomainRegistration/stable/2021-01-01/examples/ListOperations.json new file mode 100644 index 000000000000..67501d4e15dc --- /dev/null +++ b/specification/web/resource-manager/Microsoft.DomainRegistration/stable/2021-01-01/examples/ListOperations.json @@ -0,0 +1,104 @@ +{ + "parameters": { + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "name": "Microsoft.DomainRegistration/domains/Read", + "display": { + "provider": "Microsoft Domains", + "resource": "Domain", + "operation": "Get Domains", + "description": "Get the list of domains" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.DomainRegistration/domains/Write", + "display": { + "provider": "Microsoft Domains", + "resource": "Domain", + "operation": "Add or Update Domain", + "description": "Add a new Domain or update an existing one" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.DomainRegistration/domains/Delete", + "display": { + "provider": "Microsoft Domains", + "resource": "Domain", + "operation": "Delete Domain", + "description": "Delete an existing domain." + }, + "origin": "user,system" + }, + { + "name": "Microsoft.DomainRegistration/domains/operationresults/Read", + "display": { + "provider": "Microsoft Domains", + "resource": "Domain operation", + "operation": "Get Domain Operation", + "description": "Get a domain operation" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.DomainRegistration/generateSsoRequest/Action", + "display": { + "provider": "Microsoft Domains", + "resource": "Domain Control Center Single Sign On Request", + "operation": "Generate Domain Control Center Single Sign On Request", + "description": "Generate a request for signing into domain control center." + }, + "origin": "user,system" + }, + { + "name": "Microsoft.DomainRegistration/validateDomainRegistrationInformation/Action", + "display": { + "provider": "Microsoft Domains", + "resource": "Domain Validation", + "operation": "Domain Purchase Info Validation", + "description": "Validate domain purchase object without submitting it" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.DomainRegistration/checkDomainAvailability/Action", + "display": { + "provider": "Microsoft Domains", + "resource": "Domain Availability Result", + "operation": "Check Domain Availability", + "description": "Check if a domain is available for purchase" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.DomainRegistration/listDomainRecommendations/Action", + "display": { + "provider": "Microsoft Domains", + "resource": "Domain Recommendations", + "operation": "Retrieve Domain Recommendations", + "description": "Retrieve the list domain recommendations based on keywords" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.DomainRegistration/register/action", + "display": { + "provider": "Microsoft Domains", + "resource": "Microsoft Domains resource provider", + "operation": "Register Microsoft Domains resource provider", + "description": "Register the Microsoft Domains resource provider for the subscription" + }, + "origin": "user,system" + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.DomainRegistration/stable/2021-01-01/examples/ListTopLevelDomainAgreements.json b/specification/web/resource-manager/Microsoft.DomainRegistration/stable/2021-01-01/examples/ListTopLevelDomainAgreements.json new file mode 100644 index 000000000000..3bb3a21f3ac3 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.DomainRegistration/stable/2021-01-01/examples/ListTopLevelDomainAgreements.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "name": "in", + "api-version": "2021-01-01", + "agreementOption": { + "includePrivacy": true, + "forTransfer": false + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "agreementKey": "DNRA", + "title": "Domain Name Registration Agreement", + "content": "\n\n\n\n\n
    \n\n\n\n\n\n\n
    \nDomain Name Registration Agreement\n
    \n

    Last Revised: October 6, 2017

    \n

    PLEASE READ THIS AGREEMENT CAREFULLY, AS IT CONTAINS IMPORTANT INFORMATION REGARDING YOUR LEGAL RIGHTS AND REMEDIES.

    \r\n

    1. OVERVIEW

    \r\n

    This Domain Name Registration Agreement (this \"Agreement\") is entered into by and between 510456, an individual (\"Azure\") and you, and is made effective as of the date of electronic acceptance.  This Agreement sets forth the terms and conditions of your use of Azure's Domain Name Registration services (the \"Domain Name Registration Services\" or the \"Services\"). The terms \"we\", \"us\" or \"our\" shall refer to Azure.  The terms \"you\", \"your\", \"User\" or \"customer\" shall refer to any individual or entity who accepts this Agreement.  Unless otherwise specified, nothing in this Agreement shall be deemed to confer any third-party rights or benefits.

    \r\n

    Your electronic acceptance of this Agreement signifies that you have read, understand, acknowledge and agree to be bound by this Agreement, which incorporates by reference each of (i) Azure’s Universal Terms of Service Agreement (\"UTOS\"), (ii) all agreements, guidelines, policies, practices, procedures, registration requirements or operational standards of the top-level domain (\"TLD\") in which you register any domain (“Registry Policies”), and (iii) any plan limits, product disclaimers or other restrictions presented to you on the Domain Name Registration Services landing page of the Azure website (this “Site”). 

    \r\n

    TO LINK TO AND REVIEW THE REGISTRY POLICIES FOR THE TLD IN WHICH YOU WISH TO REGISTER A DOMAIN NAME, PLEASE CLICK HERE   

    \r\n

    You acknowledge and agree that (i) Azure, in its sole and absolute discretion, may change or modify this Agreement, and any policies or agreements which are incorporated herein, at any time, and such changes or modifications shall be effective immediately upon posting to this Site, and (ii) your use of this Site or the Services found at this Site after such changes or modifications have been made shall constitute your acceptance of this Agreement as last revised.  If you do not agree to be bound by this Agreement as last revised, do not use (or continue to use) this Site or the Services found at this Site.  In addition, Azure may occasionally notify you of changes or modifications to this Agreement by email.  It is therefore very important that you keep your shopper account (“Shopper Account”) information, including your email address, current.  Azure assumes no liability or responsibility for your failure to receive an email notification if such failure results from an inaccurate or out-of-date email address.    Azure is not an Internet Corporation for Assigned Names and Numbers (\"ICANN\") accredited registrar; it is an authorized reseller of domain name registration services.  Accordingly, you acknowledge and agree that Azure may modify this Agreement in order to comply with any terms and conditions set forth by (i) the sponsoring registrar, (ii) ICANN, and/or (iii) the registry applicable to the TLD or country code top level domain (\"ccTLD\") in question.  As used herein, the terms \"registry\", \"Registry\", \"registry operator\" or \"Registry Operator\" shall refer to the registry applicable to the TLD or ccTLD in question.  To identify the sponsoring registrar, click here

    \r\n

    2. PROVISIONS SPECIFIC TO ALL REGISTRATIONS

    \r\n

    Unless otherwise noted, the provisions below in this Section 2 are generally applicable to all TLDs that we offer.  Special provisions specific to any TLD or ccTLD (those in addition to posted Registry Policies) are identified elsewhere below in this Agreement. 

    \r\n
      \r\n
    1. \r\n
      Registry Policies. You agree to be bound by all Registry Policies (defined above in this Agreement) applicable to your domain name registration (at any level). IT IS YOUR RESPONSIBILITY TO VISIT THE APPLICABLE TLD SITE AND READ AND REVIEW ALL APPLICABLE REGISTRY POLICIES PRIOR TO YOUR REGISTRATION IN THE TLD.  REGISTRY POLICIES FOR EACH TLD CAN BE FOUND BY VISITING THE CORRESPONDING TLD LINK LISTED HERE.  Notwithstanding anything in this Agreement to the contrary, the Registry Operator of the TLD in which the domain name registration is made is and shall be an intended third party beneficiary of this Agreement. As such the parties to this agreement acknowledge and agree that the third party beneficiary rights of the Registry Operator have vested and that the Registry Operator has relied on its third party beneficiary rights under this Agreement in agreeing to Azure being a registrar for the respective TLD. The third party beneficiary rights of the Registry Operator will survive any termination of this Agreement.    
      \r\n
    2. \r\n
    3. \r\n
      Registration Requirements.  To the extent any TLD or ccTLD requires you meet eligibility (e.g., residency for .JP, .EU, etc.), validation (e.g., DNS validation) or other authentication requirements as a condition to registering a domain name in the TLD, you agree that by submitting an application or registering or renewing your domain name, you represent and warrant that: (a) all information provided to register or renew the domain name (including all supporting documents, if any) is true, complete and correct, and is not misleading in any way, and the application is made in good faith; (b) you meet, and will continue to meet, the eligibility criteria prescribed in the Registry Policies for the applicable TLD for the duration of the domain name registration; (c) you have not previously submitted an application for the domain name with another registrar using the same eligibility criteria, and the other registrar has rejected the application (if applicable); (d) you acknowledge and agree that even if the domain name is accepted for registration, your entitlement to register the domain name may be challenged by others who claim to have an entitlement to the domain name; and (e) you acknowledge and agree that the Registry or the registrar can cancel the registration of the domain name if any of the warranties required are found to be untrue, incomplete, incorrect or misleading.
      \r\n
    4. \r\n
    5. \r\n
      Ownership.  You acknowledge and agree that registration of a domain name does not create any proprietary right for you, the registrar, or any other person in the name used as a domain name or the domain name registration and that the entry of a domain name in the Registry shall not be construed as evidence or ownership of the domain name registered as a domain name. You shall not in any way transfer or purport to transfer a proprietary right in any domain name registration or grant or purport to grant as security or in any other manner encumber or purport to encumber a domain name registration.
      \r\n
    6. \r\n
    7. \r\n
      ICANN Requirements. You agree to comply with the ICANN requirements, standards, policies, procedures, and practices for which each applicable Registry Operator has monitoring responsibility in accordance with the Registry Agreement between ICANN and itself or any other arrangement with ICANN.
      \r\n
    8. \r\n
    9. \r\n
      Indemnification of Registry.  You agree to indemnify, defend and hold harmless (within 30 days of demand) the Registry Operator and Registry Service Provider and their subcontractors, subsidiaries, affiliates, divisions, shareholders, directors, officers, employees, accountants, attorneys, insurers, agents, predecessors, successors and assigns, from and against any and all claims, demands, damages, losses, costs, expenses, causes of action or other liabilities of any kind, whether known or unknown, including reasonable legal and attorney’s fees and expenses, in any way arising out of, relating to, or otherwise in connection with the your domain name registration, including, without limitation, the use, registration, extension, renewal, deletion, and/or transfer thereof and/or the violation of any applicable terms or conditions governing the registration. You shall not enter into any settlement or compromise of any such indemnifiable claim without Registrar’s or Registry Operator’s prior written consent, which consent shall not be unreasonably withheld, and you agree that these indemnification obligations shall survive the termination or expiration of the Agreement for any reason.  IN NO EVENT SHALL THE REGISTRY OPERATOR BE LIABLE TO YOU OR ANY OTHER PERSON FOR ANY DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, SPECIAL, EXEMPLARY OR PUNITIVE DAMAGES, INCLUDING LOSS OF PROFIT OR GOODWILL, FOR ANY MATTER, WHETHER SUCH LIABILITY IS ASSERTED ON THE BASIS OF CONTRACT, TORT (INCLUDING NEGLIGENCE), BREACH OF WARRANTIES, EITHER EXPRESS OR IMPLIED, ANY BREACH OF THIS AGREEMENT OR ITS INCORPORATED AGREEMENTS AND POLICIES YOUR INABILITY TO USE THE DOMAIN NAME, YOUR LOSS OF DATA OR FILES OR OTHERWISE, EVEN IF THE REGISTRY OPERATOR HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
      \r\n
    10. \r\n
    11. \r\n
      Regulated TLDs.   For domain name registration in any “Regulated” TLD, you acknowledge and agree your registration is subject to the following additional requirements: (a) comply with all applicable laws, including those that relate to privacy, data collection, consumer protection (including in relation to misleading and deceptive conduct), fair lending, debt collection, organic farming, disclosure of data, and financial disclosures; (b) if you collect and maintain sensitive health and financial data you must implement reasonable and appropriate security measures commensurate with the offering of those services, as defined by applicable law.  Regulated TLDs include: .games, .juegos, .school, .schule, .toys, .eco, .care, .diet, .fitness, .health, .clinic, .dental, .healthcare, .capital, .cash, .broker, .claims, .exchange, .finance, .financial, .fund, .investments, .lease, .loans, .market, .money, .trading, .credit, .insure, .tax, .mortgage, .degree, .mba, .audio, .book, .broadway, .film, .movie, .music, .software, .fashion, .video, .app, .art, .band, .cloud, .data, .digital, .fan, .free, .gratis, .discount, .sale, .media, .news, .online, .pictures, .radio, .show, .theater, .tours, .accountants, .architect, .associates, .broker, .legal, .realty, .vet, .engineering, .law, .limited, .show; .theater; .town, .city, .reise, and .reisen
      \r\n
    12. \r\n
    13. \r\n
      Highly Regulated TLDs. In addition to the requirements for Regulated TLDs, domain name registration in any Highly-Regulated TLD is subject to the following requirements: (a) you will provide administrative contact information, which must be kept up‐to‐date, for the notification of complaints or reports of registration abuse, as well as the contact details of the relevant regulatory, or Industry self‐regulatory, bodies in their main place of business; (b) you represent that you possess any necessary authorizations, charters, licenses and/or other related credentials for participation in the sector associated with such Highly‐regulated TLD; and (c) you will report any material changes to the validity of you authorizations, charters, licenses and/or other related credentials for participation in the sector associated with the Highly‐regulated TLD to ensure you continue to conform to the appropriate regulations and licensing requirements and generally conduct your activities in the interests of the consumers they serve.  Highly Regulated TLDs include: .abogado, .attorney, .bank, .bet, .bingo, .casino .charity (and IDN equivalent xn--30rr7y), .cpa, .corp, creditcard, .creditunion .dds, .dentist, .doctor, .fail, .gmbh, .gripe, .hospital, .inc, .insurance, .lawyer, .lifeinsurance, .llc, .llp, .ltda, .medical, .mutuelle, .pharmacy, .poker, .university, .sarl, .spreadbetting, .srl, .sucks, .surgery .university, .vermogensberater, .vesicherung,  and .wtf.  For .doctor, registrants who hold themselves out to be licensed medical practitioners must be able to demonstrate to the Registrar and Registry, upon request, that they hold the applicable license.
      \r\n
    14. \r\n
    15. \r\n
      Special Safeguard TLDs.  In addition to the requirements for Regulated and Highly-Regulated TLDs, by registering a domain name in any “Special-Safeguard” TLD, you agree to take reasonable steps to avoid misrepresenting or falsely implying that you or your business is affiliated with, sponsored or endorsed by one or more country's or government's military forces if such affiliation, sponsorship or endorsement does not exist.  Special Safeguard TLDs include:  .army, .navy, .airforce
      \r\n
    16. \r\n
    17. \r\n
      Third Party Beneficiary.  Notwithstanding anything in this Agreement to the contrary, the Registry Operator for any TLD in which your register a domain name is and shall be an intended third party beneficiary of this Agreement. As such the parties to this agreement acknowledge and agree that the third party beneficiary rights of the Registry Operator have vested and that the Registry Operator has relied on its third party beneficiary rights under this Agreement in agreeing to Azure being a registrar for the TLD. Third party beneficiary rights of the Registry Operator shall survive any termination of this Agreement.
      \r\n
    18. \r\n
    19. \r\n
      Variable and Non-Uniform Pricing.  You acknowledge, understand and agree that certain domain names in certain TLDs are established by Registry Policies to be variably priced (i.e., standard v. premium names) and/or may have non-uniform renewal registration pricing (such that the Fee for a domain name registration renewal may differ from other domain names in the same TLD, e.g., renewal registration for one domain may be $100.00 and $33.00 for a different domain name).
      \r\n
    20. \r\n
    21. \r\n
      Restriction on Availability of Privacy or Proxy.  You acknowledge and agree that, as dictated by the Registry Policies, for certain TLDs you may not be permitted to purchase private or proxy TLD registrations. In such case, you must register for any and all TLD registrations using your personal information, which information you represent and warrant is current, accurate and complete.
      \r\n
    22. \r\n
    \r\n

    3. FEES AND PAYMENTS

    \r\n

    (A) GENERAL TERMS, INCLUDING AUTOMATIC RENEWAL TERMS

    \r\n

    You agree to pay any and all prices and fees due for Services purchased or obtained at this Site at the time you order the Services.  Azure expressly reserves the right to change or modify its prices and fees at any time, and such changes or modifications shall be posted online at this Site and effective immediately without need for further notice to you.  If you have purchased or obtained Services for a period of months or years, changes or modifications in prices and fees shall be effective when the Services in question come up for renewal as further described below. 

    \r\n

    Unless otherwise specifically noted (for reasons such as those highlighted in Section 2(x) above), the renewal price for any domain name in any TLD will be the same as the list (non-sale) price shown when you search for and select a domain, and again in the cart prior to purchase.  For example, if the list price is $9.99, and a different renewal price is not specifically identified, then the renewal price is also $9.99.  Likewise, if a domain name has a sale price of $8.99, with the list (non-sale) price shown (as a strike-through) at $9.99, the renewal price will be $9.99*.  

    \r\n

    *Renewal price subject to change prior to actual date of renewal. 

    \r\n

    For all other terms and conditions relating to fees, payment, refund and billing, etc. applicable to the Services offered under the scope of this Agreement, please refer to the “Fees and Payments” section of our UTOS

    \r\n

    (B) DOMAIN NAME RENEWAL TERMS

    \r\n

    When you register a domain name, you will have two renewal options: (i) \"Automatic Renewal\" (ii) \"Extended Automatic Renewal\", and (iii) \"Manual Renewal\": 

    \r\n
      \r\n
    1. Automatic Renewal.  Automatic Renewal is the default setting. Therefore, unless you select Extended Automatic Renewal, Azure will enroll you in Automatic Renewal.  Domain names will automatically renew, for a period equivalent to the length of your original domain name registration, any domain name that is up for renewal and will take payment from the Payment Method you have on file with Azure, at Azure's then current rates. Thus, if you have chosen to register your domain name for one (1) year, Azure will automatically renew it for one (1) year. If you have chosen to register your domain name for two (2) years, Azure will automatically renew it for two (2) years, and so on.
    2. \r\n
    3. Extended Automatic Renewal.  If you enroll in the Extended Automatic Renewal plan, Azure will automatically renew any domain name that is up for renewal for an additional one-year period on each and every anniversary of your domain name registration, so the initial registration period will always remain intact.  Thus, if you have chosen to register your domain name for two (2) years, Azure will automatically renew it for one (1) additional year on each and every anniversary of your domain name registration so your two (2) year registration period will always remain intact. If you have chosen to register your domain name for five (5) years, Azure will automatically renew it for one (1) additional year on each and every anniversary of your domain name registration so your five (5) year registration period will always remain intact, and so on.  Azure will take payment from the Payment Method you have on file with Azure, at Azure's then current one-year domain name registration rate.
    4. \r\n
    5. Manual Renewal.  If you have elected to turn off automatic renewal and cancel the product (i.e., cancel the domain name registration) effective at expiration of the then current term, you may nonetheless elect to manually renew the domain name at anytime prior to its expiration date by logging into your Account Manager and manually implementing the renewal or by calling customer service (should you in fact want the domain name to be renewed). If you fail to manually implement the renewal before the expiration date, the domain name will be cancelled and you will no longer have use of that name.
    6. \r\n
    \r\n

    All renewals will be subject to the terms of this Agreement, as it may be amended from time to time, and you acknowledge and agree to be bound by the terms of this Agreement (as amended) for all renewed domains.  Domain name renewals will be non-refundable. In the event that we are unable to automatically renew your domain name for the renewal option selected for any reason, we may automatically renew your domain name for a period less than your original registration period to the extent necessary for the transaction to succeed. If for any reason Azure is not able to take the payment from the Payment Method you have on file, and you fail to respond to our notices, your domain name registration will expire. It is your responsibility to keep your Payment Method information current, which includes the expiration date if you are using a credit card.

    \r\n

    For certain ccTLDs (.am, .at, .be, .br, .ca, .cn, .com.cn, .net.cn, .org.cn, .de, .eu, .fm, .gs, .it, .jp, .ms, .nu, .nz, .co.nz, .net.nz, .org.nz, .tc, .tk, .tw, .com.tw, .org.tw, .idv.tw, .uk, and .vg), renewal billing will occur on the first day of the month prior to the month of expiration.

    \r\n

    For certain ccTLDs (.am, .at, .be, .ca, .cn, .com.cn, .net.cn, .org.cn, .de, .eu, .fm, .gs, .it, .jp, .ms, .nu, .nz, .co.nz, .net.nz, .org.nz, .tc, .tk, .tw, .com.tw, .org.tw, .idv.tw, .uk, and .vg), renewal will occur, or must occur manually if the product was previously cancelled, no later than the 20th of the month prior to the expiration date, or your domain name will be placed in non-renewal status. For some ccTLDs (.es) renewal must be processed no later than seven days before the expiration date, or your domain name will be placed in non-renewal status.  When the domain name is in non-renewal status, you can renew the domain name only by calling Azure and requesting that the domain name be renewed. You cannot renew the domain name through your Account Manager. If you fail to manually implement the renewal of any cancelled product before the expiration date, the domain name will be cancelled and you will no longer have use of that name.

    \r\n

    You agree that Azure will not be responsible for cancelled domain names that you fail to renew in the timeframes indicated in this Agreement. In any case, if you fail to renew your domain name in a timely fashion, additional charges may apply. If you signed up for privacy services, protected registration, or any other similar service, with your domain name registration, these services will automatically be renewed when your domain name registration is up for renewal, and you will incur the applicable additional renewal fee unless you cancel in advance. 

    \r\n

    If you fail to renew your domain name in the timeframes indicated in this Agreement, you agree that Azure may, in its sole discretion, renew your expired domain name on your behalf. If Azure decides to renew your expired domain name on your behalf, you will have a Renewal Grace Period during which you may reimburse Azure for the renewal and keep your domain name. The Renewal Grace Period is currently twelve (12) days but subject to change under the terms of this Agreement. For certain ccTLDs (.am, .at, .be, .cn, .com.cn, .net.cn, .org.cn, .de, .eu, .fm, .gs, .it, .jp, .ms, .nu, .nz, .co.nz, .net.nz, .org.nz, .tc, .tk, .tw, .com.tw, .org.tw, .idv.tw, .uk, and .vg) there is no Renewal Grace Period after the expiration date of the domain name. If you do not reimburse Azure for the renewal during the Renewal Grace Period your domain name will be placed on Hold and flagged for deletion after which you will have a 30-day redemption period during which you may pay Azure a Redemption fee and redeem your domain name. The Redemption fee is currently $80.00 USD and is subject to change under the terms of this Agreement. If you do not redeem your domain name prior to the end of the 30-day redemption period Azure may, in its sole discretion, delete your domain name or transfer it to another registrant on your behalf.  During the redemption period your domain name may be parked. 

    \r\n

    If your domain name is deleted, the Registry also provides a 30-day Redemption Grace Period during which you may pay Azure a redemption fee and redeem your domain name. The redemption fee is currently $80.00 USD and is subject to change under the terms of this Agreement. If you do not redeem your domain name prior to the end of the Registry's Redemption Grace Period the Registry will release your name and it will become available for registration on a first-come-first-served basis.

    \r\n

    Renewal Grace Periods and Redemption Grace Periods vary for different ccTLDs. Please refer to the specific terms for the applicable TLD. In the event there is a conflict between the provisions of this paragraph and the ccTLD terms, the ccTLD terms shall control.

    \r\n

    \r\n

    Our registration expiration notification policy and associated fees are described here.

    \r\n

    \r\n

    \r\n

    (C) FREE PRODUCT TERMS

    \r\n

    In the event you are provided with free products with the registration of a domain name, you acknowledge and agree that such free products will only be available with a valid purchase and may be terminated in the event the domain name is deleted or cancelled.  For free domain names, you acknowledge and agree that you may not change the account associated with such free domain for the first five (5) days after registration.  In the event a free domain name is offered with the registration of another domain and if the paid domain name registered fails, then we may, in its sole discretion, either delete the registration of the free domain or refund the difference between the amount paid and the value of the free domain.  Failed registrations associated with promotionals offers may result in the deletion of the free or discounted item or an adjustment between the registered domain price and the value of the discounted item, in our sole discretion.

    \r\n

    4. TERM OF AGREEMENT; TRANSFERS; DOMAIN TASTING

    \r\n

    The term of this Agreement shall continue in full force and effect as long as you have any domain name registered through Azure.

    \r\n

    You agree that you will not transfer any domain name registered through Azure to another domain name registrar during the first sixty (60) days after its initial registration date.  You agree that you may not transfer any domain name for ten (10) days after a Change of Account.

    \r\n

    You further agree that you will not engage in \"domain tasting\" by using the five (5) day grace period in which a registrant may choose to cancel a domain name and get a full refund of the registration fee as a vehicle to test the marketability or viability of a domain name.  If Azure determines (which determination shall be made by Azure in its sole and absolute discretion) that you have been engaging in \"domain tasting\", then Azure reserves the right to (a) charge you a small fee (which fee shall be deducted from any refund issued) or (b) refuse your cancellation/refund request altogether. Azure will not charge you a fee if Azure cancels your domain name during the five (5) day grace period due to fraud or other activity outside of your control. The five (5) day grace period does not apply to Premium Domains, which are non-refundable.

    \r\n

    You agree that Azure shall not be bound by (i) any representations made by third parties who you may use to purchase services from Azure, or (ii) any statements of a general nature, which may be posted on Azure's website or contained in Azure's promotional materials.

    \r\n

    5. UP TO DATE INFORMATION; USE OF INFORMATION AND EXPIRATION

    \r\n

    You agree to notify Azure within five (5) business days when any of the information you provided as part of the application and/or registration process changes. It is your responsibility to keep this information in a current and accurate status. Failure by you, for whatever reason, to provide Azure with accurate and reliable information on an initial and continual basis, shall be considered to be a material breach of this Agreement and a basis for suspension and/or cancellation of the domain name. Failure by you, for whatever reason, to respond within five (5) business days to any inquiries made by Azure to determine the validity of information provided by you, shall also be considered to be a material breach of this Agreement and a basis for suspension and/or cancellation of the domain name. You agree to retain a copy for your record of the receipt for purchase of your domain name.

    \r\n

    You agree that for each domain name registered by you, the following contact data is required: postal address, email address, telephone number, and if available, a facsimile number for the Registered Name Holder and, if different from the Registered Name Holder, the same contact information for, a technical contact, an administrative contact and a billing contact.

    \r\n

    You acknowledge and agree that domain name registration requires that this contact information, in whole or in part, be shared with the registry operator, for their use, copying, distribution, publication, modification and other processing  for (among other uses in accordance with our Privacy Policy) the purpose of administration of the domain name registration, which may require such information be transferred back and forth across international borders, to and from the U.S. to the EU, for example. As required by ICANN, this information must also be made publicly available by means of Whois, and that the registry operator may also be required to make this information publicly available by Whois. Both Azure and the registry operator may be required to archive this information with a third-party escrow service. You hereby consent and give permission for all such requirements and disclosures. Further, you represent and warrant that, if you are providing information about a third party, you have notified the third party of the disclosure and the purpose for the disclosure and you have obtained the third party's consent to such disclosure.  Registrar will not process data in a way that is incompatible with this Agreement.  Registrar will take reasonable precautions to protect data from loss or misuse.

    \r\n

    You agree that for each domain name registered by you the following information will be made publicly available in the Whois directory as determined by ICANN Policy and may be sold in bulk as set forth in the ICANN agreement:

    \r\n
      \r\n
    • The domain name;
    • \r\n
    • Your name and postal address;
    • \r\n
    • The name, email address, postal address, voice and fax numbers for technical and administrative contacts;
    • \r\n
    • The Internet protocol numbers for the primary and secondary name servers;
    • \r\n
    • The corresponding names of the name servers; and
    • \r\n
    • The original date of registration and expiration date.
    • \r\n
    • Name of primary name server and secondary name server.
    • \r\n
    • Identity of the registrar.
    • \r\n
    \r\n

    You agree that, to the extent permitted by ICANN, Azure may make use of the publicly available information you provided during the registration process. If you engage in the reselling of domain names you agree to provide any individuals whose personal information you've obtained, information about the possible uses of their personal information pursuant to ICANN policy. You also agree to obtain consent, and evidence of consent, from those individuals for such use of the personal information they provide.

    \r\n

    You agree that Azure has the right to make public and share with third parties certain information in connection with the sale or purchase of domain names on the website, including but not limited to (a) the name of the domain name sold or purchased, (b) the sale or purchase price of the domain name sold or purchased, and (c) information relating to the timing of the sale or purchase.

    \r\n

    \r\n

    In order for us to comply with any current or future rules and policies for domain name systems including any rules or policies established by the CIRA or any provincial or federal government or by other organization having control or authority to establish rules or policies, you hereby grant to us the right to disclose to third parties through an interactive publicly accessible registration database the following information that you are required to provide when applying for a domain name:

    \r\n
      \r\n
    1. The domain or sub-domain name(s) registered by you;
    2. \r\n
    3. Your organization name, type and postal address;
    4. \r\n
    5. The name(s), position(s), postal address(es), e-mail address(es), voice telephone number(s) and where available the fax number(s) of the technical and administrative contacts for your domain or sub-domain name(s);
    6. \r\n
    7. The full hostnames and Internet protocol (IP) addresses of at least two (2) name server hosts (one primary and at least one secondary) for your domain or sub-domain name. Up to six (6) name servers may be specified. If a host has more than one (1) IP address, use a comma-separated list;
    8. \r\n
    9. The corresponding names of those name servers;
    10. \r\n
    11. The original creation date of the registration; and
    12. \r\n
    13. The expiration date of the registration.
    14. \r\n
    \r\n

    We may be required to make this information available in bulk form to third parties. We may also transfer or assign this information to CIRA or such other third party as we may decide, in our sole discretion.

    \r\n

    6. DISPUTE RESOLUTION POLICY

    \r\n

    You agree to be bound by our current Dispute Resolution Policy. This policy is incorporated herein and made a part of this Agreement. You can view the Uniform Domain Name Dispute Resolution Policy online. You agree that Azure may from time to time modify its Dispute Resolution Policy. Azure will post any changes to its Dispute Resolution Policy at least thirty (30) days before they become effective. You agree that by maintaining your domain name registrations with Azure after the updated policy becomes effective that you agree to the Dispute Resolution policy as amended. You agree to review Azure's website periodically to determine if changes have been made to the Dispute Resolution Policy. If you cancel or terminate your Services with Azure as a result of the modified Dispute Resolution policy, no fees will be refunded to you. You also agree to submit to proceedings commenced under ICANN's Uniform Rapid Suspension System, if applicable. 

    \r\n

    You agree that if a dispute arises as a result of one (1) or more domain names you have registered using Azure, you will indemnify, defend and hold Azure harmless as provided for in this Agreement. You also agree that if Azure is notified that a complaint has been filed with a governmental, administrative or judicial body, regarding a domain name registered by you using Azure, that Azure, in its sole discretion, may take whatever action Azure deems necessary regarding further modification, assignment of and/or control of the domain name deemed necessary to comply with the actions or requirements of the governmental, administrative or judicial body until such time as the dispute is settled. In this event you agree to hold Azure harmless for any action taken by Azure.

    \r\n

    You agree to submit, without prejudice to other potentially applicable jurisdictions, to the jurisdiction of the courts (1) of your domicile, (2) where registrar is located or (3) where the registry operator is located (e.g., China for .CN, Columbia for .CO, UK for .EU, etc.).

    \r\n

    \r\n

    In the case of .ca domain names, you agree that, if your use of the service or the registration of a .ca domain name is challenged by a third party, you will be subject to the provisions specified by CIRA in their dispute resolution policy, in effect at the time of the dispute.

    \r\n

    \r\n

    7. TRANSFER OF DOMAIN NAMES; RESALE PRACTICES

    \r\n

    If you transfer any domain name, you agree to provide the information required by, and to abide by, the procedures and conditions set forth in our Domain Name Transfer Agreement and Change of Registrant Agreement. You may view the latest versions of our Domain Name Transfer Agreement and Change of Registrant Agreementonline. In order to further protect your domain name, any domain name registered with Azure or transferred to Azure shall be placed on lock status, unless an opted-out has occurred as defined in our Change of Registrant Agreement or Domain Name Proxy Agreement. The domain name must be placed on unlock status in order to initiate a transfer of the domain name away from Azure to a new Registrar. You may log into your account with Azure at any time after your domain name has been successfully transferred to Azure, and change the status to unlock.

    \r\n

    In the event you are purchasing a domain name on behalf of a third party, you agree to inform any customer of yours, who may be acquiring a domain name through you using Azure's registration services, that they are in fact registering their domain name through Azure and that Azure or its licensor is an accredited registrar with ICANN. You agree not to represent that you are an ICANN-accredited registrar or that you are in any way providing superior access to the ICANN Domain Name Registry. You also agree not to use the ICANN trademark logo in any of your promotional materials including your website.

    \r\n

    You agree to obtain each of your customers' acceptances to the then current version of this Agreement, and to retain evidence of their acceptance for a period of not less than three (3) years. Should you require that your customers accept additional terms and conditions that are not required by Azure, you agree that such additional terms and conditions shall not conflict with this Agreement and the policies and procedures adopted by ICANN.

    \r\n

    You agree that Azure is not lending you access to its registrar connections or its registry access, nor will you be deemed to be a registrar in your own right. Furthermore, you agree you will not attempt to gain access to Azure's registrar connections or registry access. You agree to provide complete, accurate and current data for each registrant to be added to a registry in accordance with ICANN requirements for inclusion in the Whois database.

    \r\n

    You agree to provide your customers with adequate customer support, and to maintain contact with them with regard to providing a medium for them to communicate changes in the information they provided as part of the domain name registration process. Upon receiving corrected or updated information you will, within five (5) business days, provide such information to Azure so Azure may update its registration records. You will retain copies of all communications between you and your customers and will upon request provide Azure copies of same.

    \r\n

    8. YOUR OBLIGATIONS; SUSPENSION OF SERVICES; BREACH OF AGREEMENT

    \r\n

    You represent and warrant to the best of your knowledge that, neither the registration of the domain nor the manner it is directly or indirectly used, infringes the legal rights of any third party.  You will comply with all applicable laws, including, but not limited to those relating to privacy, data collection, consumer protection, fair lending, debt collection, organic farming, and disclosure of data and financial disclosures.  If you collect and maintain sensitive health and financial data, you must implement reasonable and appropriate security measures commensurate with the offering of those services, as defined by applicable law.  You represent that you possess any necessary authorization, charter, license, and/or other related credential for participation in the sector associated with the associated registry tld string.  You will report any material changes to the validity of your authorization, charter, license, and/or other related credential. You will indemnify and hold harmless the registrar and registry operator, and their directors, officers, employees and agents, from and against any and all claims, damages, liabilities, costs and expenses (including reasonable legal fees and expenses) arising out of or related to the domain name registration.  This obligation shall survive expiration or termination of this Agreement or the domain name registration.

    \r\n

    You agree that, in addition to other events set forth in this Agreement:

    \r\n
      \r\n
    1. Your ability to use any of the services provided by Azure is subject to cancellation or suspension in the event there is an unresolved breach of this Agreement and/or suspension or cancellation is required by any policy now in effect or adopted later by ICANN;
    2. \r\n
    3. Your registration of any domain names shall be subject to suspension, cancellation or transfer pursuant to any ICANN adopted specification or policy, or pursuant to any Azure procedure not inconsistent with an ICANN adopted specification or policy (a) to correct mistakes by Azure or the registry operator in registering any domain name; or (b) for the resolution of disputes concerning any domain name.
    4. \r\n
    \r\n

    You acknowledge and agree that Azure and registry reserve the right to deny, cancel or transfer any registration or transaction, or place any domain name(s) on registry lock, hold or similar status, as either deems necessary, in the unlimited and sole discretion of either Azure or the registry: (i) to comply with specifications adopted by any industry group generally recognized as authoritative with respect to the Internet (e.g., RFCs), (ii) to correct mistakes made by registry or any registrar in connection with a domain name registration, (iii) for the non-payment of fees to registry, (iv) to protect the integrity and stability of the registry, (v) to comply with any applicable court orders, laws, government rules or requirements, requests of law enforcement, or any dispute resolution process, (vi) to comply with any applicable ICANN rules or regulations, including without limitation, the registry agreement, (vii) to avoid any liability, civil or criminal, on the part of registry operator, as well as its affiliates, subsidiaries, officers, directors, and employees, (viii) per the terms of this Agreement, (ix) following an occurrence of any of the prohibited activities described in Section 8 below, or (x) during the resolution of a dispute.

    \r\n

    You agree that your failure to comply completely with the terms and conditions of this Agreement and any Azure rule or policy may be considered by Azure to be a material breach of this Agreement and Azure may provide you with notice of such breach either in writing or electronically (i.e. email). In the event you do not provide Azure with material evidence that you have not breached your obligations to Azure within ten (10) business days, Azure may terminate its relationship with you and take any remedial action available to Azure under the applicable laws. Such remedial action may be implemented without notice to you and may include, but is not limited to, cancelling the registration of any of your domain names and discontinuing any services provided by Azure to you. No fees will be refunded to you should your Services be cancelled or terminated because of a breach.

    \r\n

    Azure's failure to act upon or notify you of any event, which may constitute a breach, shall not relieve you from or excuse you of the fact that you have committed a breach.

    \r\n

    9. RESTRICTION OF SERVICES; RIGHT OF REFUSAL

    \r\n

    You agree not to use the services provided by Azure, or to allow or enable others, to use the services provided by Azure for the purposes of:

    \r\n
      \r\n
    • The transmission of unsolicited email (Spam); and
    • \r\n
    • Repetitive, high volume inquires into any of the services provided by Azure (i.e. domain name availability, etc.).
    • \r\n
    \r\n

    You acknowledge and agree that you are prohibited from distributing malware, abusively operating botnets, phishing, piracy, trademark or copyright infringement, fraudulent or deceptive practices, counterfeiting or otherwise engaging in activity contrary to applicable law, and you acknowledge and agree that the consequences for such activities include suspension of the domain name.

    \r\n

    If you are hosting your domain name system (“DNS”) on Azure’s servers, or are using our systems to forward a domain name, URL, or otherwise to a system or site hosted elsewhere, or if you have your domain name registered with Azure, you are responsible for ensuring there is no excessive overloading on Azure’s servers. You may not use Azure’s servers and your domain name as a source, intermediary, reply to address, or destination address for mail bombs, Internet packet flooding, packet corruption, or other abusive attack. Server hacking or other perpetration of security breaches is prohibited. You agree that Azure reserves the right to deactivate your domain name from its DNS if Azure deems it is the recipient of activities caused by your site that threaten the stability of its network.

    \r\n

    You agree that Azure, in its sole discretion and without liability to you, may refuse to accept the registration of any domain name. Azure also may in its sole discretion and without liability to you delete the registration of any domain name during the first thirty (30) days after registration has taken place. Azure may also cancel the registration of a domain name, after thirty (30) days, if that name is being used, as determined by Azure in its sole discretion, in association with spam or morally objectionable activities. Morally objectionable activities will include, but not be limited to:

    \r\n
      \r\n
    • Activities prohibited by the laws of the United States and/or foreign territories in which you conduct business;
    • \r\n
    • Activities designed to encourage unlawful behavior by others, such as hate crimes, terrorism and child pornography; and
    • \r\n
    • Activities designed to harm or use unethically minors in any way.
    • \r\n
    \r\n

    In the event Azure refuses a registration or deletes an existing registration during the first thirty (30) days after registration, you will receive a refund of any fees paid to Azure in connection with the registration either being cancelled or refused. In the event Azure deletes the registration of a domain name being used in association with spam or morally objectionable activities, no refund will be issued.

    \r\n

    10. DEFAULT SETTINGS; PARKED PAGE

    \r\n

    Choosing Your Domain Name Settings.  When you register a domain name with Azure, you will be prompted to choose your domain name settings during the checkout process.  If you plan on using another provider for your website or hosting needs, then you should enter the name servers of such provider when you choose your domain name settings.  This will direct your domain name away from Azure’s name servers.  If you are an existing Azure customer and have already set up a customer profile designating your domain name settings for new domain name registrations, you will not need to complete this step again during the checkout process.   

    \r\n

    Azure’s Default Settings.  If you do not direct your domain name away from Azure’s name servers as described above, Azure will direct your domain name to a “Parked Page” (“Default Setting”).  You acknowledge and agree that Azure has the right to set the Default Setting. 

    \r\n

    Parked Page Default Setting.  Azure’s Parked Page service is an online domain monetization system designed to generate revenue (through the use of pay per click advertising) from domain names that are not actively being used as websites.  If your domain name is directed to a Parked Page, you acknowledge and agree that Azure may display both (a) in-house advertising (which includes links to Azure products and services) and (b) third-party advertising (which includes links to third-party products and services) on your Parked Page through the use of pop-up or pop-under browser windows, banner advertisements, audio or video streams, or any other advertising means, and we may aggregate for our own use, related usage data by means of cookies and other similar means.  In addition, you acknowledge and agree that all in-house and third-party advertising will be selected by Azure and its advertising partners, as appropriate, and you will not be permitted to customize the advertising, or entitled to any compensation in exchange therefor.  Please note that the third-party advertising displayed on Azure’s Parked Pages may contain content offensive to you, including but not limited to links to adult content.  Azure makes no effort to edit, control, monitor, or restrict the content and third-party advertising displayed on Azure’s Parked Pages, and expressly disclaims any liability or responsibility to you or any third party in connection therewith.

    \r\n

    Changing Azure’s Default Settings.  You may change Azure’s Default Settings at any time during the term of your domain name registration.

    \r\n
      \r\n
    1. Content Displaying On Your Parked Page.  You can not modify the content displaying on your Parked Page.  You may select one of the other options listed below.
    2. \r\n
    3. Participating In Domain Name Monetization.  If you wish to participate in the domain monetization potential presented by Azure’s Parked Page service, please review and consider purchasing our CashParking® service.   
    4. \r\n
    5. No Content.  If the options listed above are not acceptable to you, please contact customer support to learn what other options might be available to you.
    6. \r\n
    \r\n

    Return To Parked Page Default Setting Upon Domain Name Expiration.  Upon domain name expiration, and regardless of how you use your domain name during the term of your domain name registration, your domain name will automatically return to the Parked Page Default Setting described above.  As used in this paragraph, “expiration” is deemed to include any “renewal period” or “redemption period” immediately after the domain name expires, but before the domain name is returned to the registry.  Once your domain name has returned to the Parked Page Default Setting described above, the only way to opt out of the Parked Page service is to renew, redeem, or re-register your domain name in accordance with Section 2(B), Domain Name Renewal Terms, of this Agreement.   

    \r\n

    11. DOMAIN ADD-ONS

    \r\n

    Business Registration:  Business registration allows You to display additional information about the business that is the basis of Your domain name, including, but not limited to, such information as Your fax number, street address, and hours of operation.

    \r\n

    Certified Domains.  The certified domain service generally allow You to: (i) put a Certified Domain Validation seal on Your website; and (ii) have Your domain name listed as \"Certified\", in WHOIS lookups on our website.   The Certified Domain Validation seal renews independently of Your domain. When You renew Your domain, You must also, when necessary, separately renew Your Certified Validation seal. However, the Certified Domain Validation seal can be cancelled independently of Your domain. If the domain is cancelled, the Certified Domain associated with the cancelled domain will automatically cancel.  The Certified Domain seal is a trademark and is protected by copyright, trademark and other intellectual property laws. You may use the Certified Domain seal only in conjunction with the purchase of the Services set forth in the Agreement, and subject to the terms and conditions hereof. Other than provided for in this Agreement, You may not otherwise use, reproduce, or modify the mark for any additional promotional use, without our prior written approval. Your right to the use of the Certified Domain seal is immediately terminated upon expiration or termination of this Agreement.

    \r\n

    Expiration Consolidation.  You understand and acknowledge the expiration consolidation service may only be used to consolidate the expiration of .com and .net domain names. The service may not be used to consolidate domains that are on Registrar HOLD, Registry HOLD, or pending Transfer status. You acknowledge the service may only be used to push the expiration date of Your domains forward in time, at least one (1) month forward and no more than ten (10) years forward, and then, only for a period lasting less than twelve (12) months. Once the service has been used to consolidate domains, the new expiration date may not be reversed. To ensure the service is not abused or used as an alternative to renewals, you may only use the service on each domain once in any 12-month period. The service may only be used on domain names that have not passed their expiration date. In order to change the expiration date again, You will be required to renew the domain name first.  You further understand and acknowledge the service may only be used to coordinate domains where we are the registrar of record. Domains not registered with us must be transferred before we can perform the Service. 

    \r\n

    \r\n

    Backordering/Monitoring.  You agree a domain name that has expired shall be subject first to a grace period of twelve (12) days, followed by the ICANN-mandated redemption grace period of thirty (30) days. During this period of time, the current domain name registrant may renew the domain name and retain ownership. We do not guarantee your backorder will result in you obtaining the domain name and expressly reserves the right to (a) refuse additional backorders or (b) cancel existing backorders at any time for any reason.  If your backorder is refused or cancelled, we agree to promptly refund any fees paid for such domain name backorder. The domain name may also be placed in a secondary market for resale through the Auctions® service.  After your first year of Auctions membership, you agree that unless otherwise advised, we will automatically renew your Auctions membership using the payment method you have on file for so long as your backorder credit is active. You may learn more about Auctions by visiting the Auctions website. The domain name may also be subject to a drop pool process before it is available for purchasing. You understand we and our registrar affiliates use our services, including backordering.  Therefore, the domain name may be registered with a different registrar, but can be managed through your account.  By using the Services, you will be able to, among other things:

    \r\n
      \r\n
    1. Backorder any domain name under the top level domains .COM, .NET, .US, .BIZ, .INFO, .ORG, .MOBI. A backorder for a domain name will include the price of up to a one-year domain name registration. Should you successfully backorder any domain name, you will be subject to the terms and conditions of the Domain Name Registration and related agreements, which are incorporated herein by reference.
    2. \r\n
    3. Change your backorder until you obtain a domain name. You will have the opportunity to change the credit to a different domain name until you successfully capture one. After three (3) years, if the credit is not used, we reserves the right to remove the credit.
    4. \r\n
    5. Subscribe monthly to an expiring domain name list. You may also choose to purchase a subscription to a list of domain names expiring within the next five (5) days. If you subscribe to the expiring domain name list, you agree the payment method you have on file may be charged on a monthly subscription basis for the term of the Services you purchase.
    6. \r\n
    7. Select domain names off the expiring domain name list you would like to register. Each domain name you attempt to backorder will include the price of up to a one-year domain name registration, as set forth in subsection (i) above.
    8. \r\n
    9. Monitor your currently registered domain names for changes in registrar, status, expiration date or name servers at no additional cost.
    10. \r\n
    11. Subscribe to Domain Alert Pro or monitoring, which enables you to monitor any currently registered domain name, regardless of registrar, for historical tracking of status changes and designation of multiple email notification addresses.
    12. \r\n
    \r\n

    \r\n

    \r\n

    Transfer Validation. The transfer validation service is provided to help You keep Your domain name secure. By choosing to use the service, You are making an explicit and voluntary request to us to deny all attempts to transfer Your domain name to another registrar, or to move Your domain name to another account, unless You verify each request as described herein. You will provide us with a contact name, phone number and PIN for domain transfer validations. You will be contacted by us when a domain transfer is requested for a domain name in Your account. When we receive a transfer request, we will call You to verify the transfer request. If we cannot reach You with seventy-two (72) hours of receipt of the transfer request, the transfer will be denied. If You do not provide the proper PIN, the transfer will be denied. When we receive a change of account request, we will call You to verify the change request. If we cannot reach You with seventy-two (72) hours of receipt of the change request, the change will be denied. If You do not provide the proper PIN, the change will be denied. Availability of Services are subject to the terms and conditions of this Agreement and each of our policies and procedures. We shall use commercially reasonable efforts to attempt to provide certain portions of the Services on a twenty-four (24) hours a day, seven (7) days a week basis throughout the term of this Agreement and other portions of the service, during normal business hours. You acknowledge and agree that from time to time the Services may be inaccessible or inoperable for any reason, including, without limitation: (i) equipment malfunctions; (ii) periodic maintenance procedures or repairs that we may undertake from time to time; or (iii) causes beyond the reasonable control of us or that are not reasonably foreseeable by us, including, without limitation, interruption or failure of telecommunication or digital transmission links, hostile network attacks, network congestion or other failures. You acknowledge and agree that we has no control over the availability of the service on a continuous or uninterrupted basis.

    \r\n

    \r\n

    12. PRE-REGISTRATIONS

    \r\n

    If you submit an application for pre-registration of a domain name, Azure does not guarantee that the name will be secured for you, or that you will have immediate access to the domain name if secured.  Azure may use third-party service providers for the pre-registration services.

    \r\n

    13. PROVISIONS SPECIFIC TO .BIZ REGISTRATIONS

    \r\n

    Domain Name Dispute Policy.  If you reserved or registered a .BIZ domain name through us, in addition to our Dispute Resolution Policy, you hereby acknowledge that you have read and understood and agree to be bound by the terms and conditions of the Restrictions Dispute Resolution Policy applicable to the .biz TLD.

    \r\n

    The RDRP sets forth the terms under which any allegation that a domain name is not used primarily for business or commercial purposes shall be enforced on a case-by-case basis by an independent ICANN-accredited dispute provider. Registry Operator will not review, monitor, or otherwise verify that any particular domain name is being used primarily for business or commercial purposes or that a domain name is being used in compliance with the SUDRP or UDRP processes.

    \r\n

    One Year Registration.  If you are registering a .BIZ domain name and you elect to take advantage of special pricing applicable to one-year registrations, we will automatically renew your domain name for an additional one-year period at the end of the first year term by taking payment from the Payment Method you have on file, unless you notify us that you do not wish to renew. You will be notified and given the opportunity to accept or decline the one-year renewal prior to your domain name expiration date. In the event you decide not to renew your one-year .BIZ domain name for a second year, your domain name registration will automatically revert back to us and we will gain full rights of registration to such domain name. You agree that if you delete or transfer your .BIZ domain name during the first year, you will automatically be charged the second year renewal fees.

    \r\n

    \r\n

    14. PROVISIONS SPECIFIC TO .INFO REGISTRATIONS 

    \r\n

    One Year Registration.  If you are registering a .INFO domain name and you elect to take advantage of special pricing applicable to one-year registrations, we will automatically renew your domain name for an additional one-year period at the end of the first year term by taking payment from the Payment Method you have on file, unless you notify us that you do not wish to renew. You will be notified and given the opportunity to accept or decline the one-year renewal prior to your domain name expiration date. In the event you decide not to renew your one-year .INFO domain name for a second year, your domain name registration will automatically revert back to us and we will gain full rights of registration to such domain name. You agree that if you delete or transfer your .INFO domain name during the first year, you will automatically be charged the second year renewal fees.

    \r\n

    15. PROVISIONS SPECIFIC TO .MOBI REGISTRATIONS 

    \r\n

    Instant Mobilizer. You are hereby granted a personal, revocable, non-exclusive, non-transferable, non-assignable, non-sublicensable license to use the Instant Mobilizer service (“Service”), provided, however, You abide by the terms and conditions set forth. You shall not alter, modify, adapt or translate the whole or part of the Service in any way whatsoever. You may not create derivative works based on the Service. You may not rent, lease, assign, dispose of, novate, sub-license or otherwise transfer any of its rights to use the Service to any third party.  In the event that the volume of traffic to You from Your use of the Service is sufficient so as to jeopardize the provision of Service for other end users, we and our licensors reserve the right to, at its sole discretion, permanently or temporarily, discontinue Your use of the Service. For the avoidance of doubt, the volume of traffic generated by You should not exceed two thousand (2,000) page views per day.  You acknowledge and agree the text \"Instant Mobilizer from dotMobi\" or equivalent, will be inserted at the footer of Your site.  In the event a dotMobi domain to which the Service is being provided is transferred to another domain name registrar, the Service will be interrupted on that dotMobi domain, and Service will not be restored if the new registrar does not offer the Service. 

    \r\n

    \r\n

    16. PROVISIONS SPECIFIC TO .NAME REGISTRATIONS 

    \r\n

    \r\n

    17. PROVISIONS SPECIFIC TO .REISE REGISTRATIONS

    \r\n

    Domain Names registered in .REISE should be used for purposes dedicated to travel topics within six months following initial Registration, e.g. utilized on the Internet or otherwise used to perform a function.

    \r\n

    18. PROVISIONS SPECIFIC TO .SEXY REGISTRATIONS

    \r\n

    You shall not permit content unsuitable for viewing by a minor to be viewed from the main or top-level directory of a .SEXY domain name. For purposes of clarity, content viewed at the main or top-level directory of a .SEXY domain name is the content immediately visible if a user navigates to http://example.sexy or http://www.example.sexy. No restrictions apply to the content at any other page or subdirectory addressed by a .SEXY Registered Name. 

    \r\n

    19. COUNTRY CODE TOP LEVEL DOMAINS

    \r\n

    You represent and warrant that you meet the eligibility requirements of each ccTLD you apply for. You further agree to be bound by any registry rules, policies, and agreements for that particular ccTLD. These may include, but are not limited to, agreeing to indemnify the ccTLD provider, limiting the liability of the ccTLD provider, and requirements that any disputes be resolved under that particular country's laws.

    \r\n

    (A) PROVISIONS SPECIFIC TO .AU REGISTRATIONS 

    \r\n

    .au Registrations (to include com.au, net.au and org.au) are governed by the following additional terms and conditions:

    \r\n

    auDA. auDA means .au Domain Administration Limited ACN 079 009 340, the .au domain names administrator.  The Registrar acts as agent for auDA for the sole purpose, but only to the extent necessary, to enable auDA to receive the benefit of rights and covenants conferred to it under this Agreement. auDA is an intended third party beneficiary of this agreement.

    \r\n

    auDA Published Policy.  auDA Published Policies means those specifications and policies established and published by auDA from time to time at http://www.auda.org.au.  You must comply with all auDA Published Policies, as if they were incorporated into, and form part of, this Agreement. In the event of any inconsistency between any auDA Published Policy and this Agreement, then the auDA Published Policy will prevail to the extent of such inconsistency.  You acknowledge that under the auDA Published Policies: (1) there are mandatory terms and conditions that apply to all domain names; (2) licences, and such terms and conditions are incorporated into, and form part of, this Agreement; (3) You are bound by, and must submit to, the .au Dispute Resolution Policy; and (4) auDA may delete or cancel the registration of a .au domain name. 

    \r\n

    auDA's Liabilities and Indemnity.  To the fullest extent permitted by law, auDA will not be liable to Registrant for any direct, indirect, consequential, special, punitive or exemplary losses or damages of any kind (including, without limitation, loss of use, loss or profit, loss or corruption of data, business interruption or indirect costs) suffered by Registrant arising from, as a result of, or otherwise in connection with, any act or omission whatsoever of auDA, its employees, agents or contractors. Registrant agrees to indemnify, keep indemnified and hold auDA, its employees, agents and contractors harmless from all and any claims or liabilities, arising from, as a result of, or otherwise in connection with, Registrant's registration or use of its .au domain name. Nothing in this document is intended to exclude the operation of Trade Practices Act 1974.

    \r\n

    (B) PROVISIONS SPECIFIC TO .CA REGISTRATIONS

    \r\n

    You acknowledge and agree that registration of your selected domain name in your first application to CIRA shall not be effective until you have entered into and agreed to be bound by CIRA's Registrant Agreement.

    \r\n

    CIRA Certified Registrar.  The registrar shall immediately give notice to you in the event that it is no longer a CIRA Certified Registrar, has had its certification as a CIRA Certified Registrar suspended or terminated, or the Registrar Agreement between CIRA and the Registrar is terminated or expires. CIRA may post notice of such suspension, termination, or expiry on its website and may, if CIRA deems appropriate, give notice to the registrants thereof. In the event that the registrar is no longer a CIRA Certified Registrar, has had its certification as a CIRA Certified Registrar suspended or terminated or in the event the Registrar Agreement between CIRA and the Registrar is terminated or expires, you shall be responsible for changing your Registrar of Record to a new CIRA Certified Registrar within thirty (30) days of the earlier of notice thereof being given to you by (i) the Registrar or (ii) CIRA in accordance with CIRA's then current Registry PRP; provided, however, that if any of your domain name registrations are scheduled to expire within thirty (30) days of the giving of such notice, then you shall have thirty (30) days from the anniversary date of the registration(s), to register with a new CIRA certified registrar and to renew such domain name registration(s) in accordance with the Registry PRP.

    \r\n

    You acknowledge and agree that should there be insufficient funds prepaid by the registrar in the CIRA Deposit Account to be applied in payment of any fees, CIRA may in its sole discretion stop accepting applications for domain name registrations from the registrar, stop effecting registrations of domain names and transfers, renewals, modifications, and cancellations requested by the registrar and stop performing other billable transactions requested by the registrar not paid in full and CIRA may terminate the Registrar Agreement between CIRA and the Registrar.

    \r\n

    .CA ASCII and IDN domain variants are bundled and reserved for a single registrant.  Registrants are not required to register all variants in a bundle, but all registered variants must be registered and managed at a single registrar. Each variant registered will incur a registration fee.  In addition, when registering multiple .CA domain (ASCII and IDN) variants in a bundle, your registrant information must be identical.  If variants are registered at other registrars or if registrant information does not match, it may result in an \"unavailable\" search result, delayed or failed registration. If information does not match, validation is required and may take up to seven business days and delay availability of domain. 

    \r\n

    (C) PROVISIONS SPECIFIC TO .CN REGISTRATIONS 

    \r\n

    .CN is a restricted TLD – applications are subject to both a domain name check and real name verification as required by the People’s Republic of China.  Registrations in .CN are therefore subject to the following additional terms:

    \r\n

    Verification, Registration and Activation.  If a domain name is not permitted to be registered by the Chinese government, as determined by us, the Registry Operator and/or a 3rd party provider utilized for such services and determinations, in either party’s discretion, the application for registration will not be successful.  In such event, the name will be deleted and you will be eligible for a refund as further described below.

    \r\n

    If permitted, then the Registration may proceed, but a .CN domain name may not be activated (i.e., it will not resolve in the Internet) unless and until you have submitted (via the process described during registration) valid documents required of us and the Registry to perform real name verification.  The following are acceptable forms of documents for the purpose of verification:

    \r\n
      \r\n
    • China: Resident ID, temporary resident ID, business license or organization code certificate
    • \r\n
    • Hong Kong/Macau: Resident ID, driver’s license, passport or business license
    • \r\n
    • Singapore: Driver’s license, passport or business license
    • \r\n
    • Taiwan: Resident ID, driver’s license or business license
    • \r\n
    • Other Countries/Regions: Driver’s license or passport
    • \r\n
    \r\n

    Documents submitted to us are used by us and shared with the Registry solely for the purpose of real name verification, and are otherwise subject to our Privacy Policy.  By registering a .CN domain, you expressly agree that your data may be stored on servers in the U.S., or otherwise outside of the People's Republic of China.

    \r\n

    Refunds.  Refunds for .CN Registrations will only be allowed where (i) registration of the applied for domain name is not permitted by the Chinese government; or (ii) you notify us of your intent to cancel for any reason within the first five (5) days after the Registration (i.e., after it is deemed permissible by the Chinese government).  For the avoidance of doubt, refunds will not be permitted under any circumstances after five (5) days from the date of Registration, including, for example, in the event real name verification is not successful or if the Chinese government determines after Registration that the domain name should not have been registered (and directs us to delete).

    \r\n

    (D) PROVISIONS SPECIFIC TO .JP REGISTRATIONS

    \r\n

    Registration Restrictions.  You represent and warrant that you have a local presence in Japan with a home or office address. You agree that certain domain names are reserved and can only be registered by certain parties. These include: (i) TLDs, other than ccTLDs, as determined by ICANN; (ii) geographical-type .JP domain names that are defined as metropolitan, prefectural, and municipal labels; (iii) names of primary and secondary educational organizations; (iv) names of organizations related to Internet management; (v) names required for .JP domain name operations; and (vi) character strings which may be confused with ASCII-converted Japanese domain names. The complete list of .JP Reserved Domains is available here

    \r\n

    20. ENGLISH LANGUAGE CONTROLS

    \r\n

    This Agreement, along with all policies and the applicable product agreements identified above and incorporated herein by reference (collectively, the “Agreement”), is executed in the English language. To the extent any translation is provided to you, it is provided for convenience purposes only, and in the event of any conflict between the English and translated version, where permitted by law, the English version will control and prevail. Where the translated version is required to be provided to you and is to be considered binding by law (i) both language versions shall have equal validity, (ii) each party acknowledges that it has reviewed both language versions and that they are substantially the same in all material respects, and (iii) in the event of any discrepancy between these two versions, the translated version may prevail, provided that the intent of the Parties has been fully taken into consideration. 

    \n
    \n
    \n\nRevised: 10/6/17
    \nCopyright © 2000-2017 All Rights Reserved.\n
    \n
    \n
    ", + "url": "http://www.secureserver.net/agreements/ShowDoc.aspx?pageid=reg_sa&pl_id=510456" + }, + { + "agreementKey": "DNPA", + "title": "Domain Name Proxy Agreement", + "content": "\n\n\n\n\n
    \n\n\n\n\n\n\n
    \nDomain Name Proxy Agreement\n
    \n

    Last Revised: October 25, 2017

    \n

    Please read this Domain Name Proxy Agreement (\"Agreement\") carefully. By using the Services and/or website of Domains By Proxy, LLC, a Delaware limited liability company (\"DBP\"), You (as defined below) agree to all the terms and conditions set forth both herein and in the DBP privacy policy, which is incorporated by reference and can be found by clicking here.  You acknowledge that DBP may amend this Agreement at any time upon posting the amended terms on its website, and that any new, different or additional features changing the services provided by DBP will automatically be subject to this Agreement. If You do not agree to be bound by, or if You object to, the terms and conditions of this Agreement and any amendments hereto, do not use or access DBP's services. Continued use of DBP's services and its website after any such changes to this Agreement have been posted, constitutes Your acceptance of those changes.

    \r\n

    This Agreement is by and between DBP and you, your heirs, assigns, agents and contractors (\"You\") and is made effective as of the date of electronic execution. This Agreement sets forth the terms and conditions of Your relationship with DBP and Your use of DBP's services and represents the entire Agreement between You and DBP. By using DBP's Services, You acknowledge that You have read, understand and agree to be bound by all the terms and conditions of this Agreement, and You further agree to be bound by the terms of this Agreement for transactions entered into by:

    \r\n
      \r\n
    1. You on Your behalf;
    2. \r\n
    3. Anyone acting as Your agent; and
    4. \r\n
    5. Anyone who uses the account You have established with DBP, whether or not the transactions were on Your behalf and/or authorized by You.
    6. \r\n
    \r\n

    You agree You will be bound by representations made by third parties acting on Your behalf, which either use or purchase services from DBP. You further agree that DBP will not be bound by statements of a general nature on DBP's website or DBP promotional materials. You further agree to abide by the terms and conditions promulgated by the Internet Corporation for Assigned Names and Numbers (\"ICANN\") (including the Uniform Domain Name Dispute Resolution Policy (\"Dispute Resolution Policy\") and Your Registrar (i.e., the ICANN-accredited person or entity through which You register a domain name).

    \r\n

    1. description of DBP's private registration services

    \r\n

    When You subscribe to DBP's private registration service through a DBP-affiliated Registrar, DBP will display its contact information in the publicly available \"Whois\" directory in place of Your information. DBP shall keep Your name, postal address, email address, phone and fax numbers confidential, subject to Section 4 of this Agreement. The following information (and not Your personal information) will be made publicly available in the \"Whois\" directory as determined by ICANN policy:

    \r\n
      \r\n
    1. DBP's name as the proxy Registrant of the domain name and a proxy email address, phone number and postal address for the proxy Registrant's contact information;
    2. \r\n
    3. A proxy postal address and phone number for the domain name registration's technical contact;
    4. \r\n
    5. A proxy email address, postal address and phone number for the domain name registration's administrative contact;
    6. \r\n
    7. A proxy email address, postal address and phone number for the domain's name registration's billing contact;
    8. \r\n
    9. The primary and secondary domain name servers You designate for the domain name;
    10. \r\n
    11. The domain name's original date of registration and expiration date of the registration; and
    12. \r\n
    13. The identity of the Registrar.
    14. \r\n
    \r\n

    2. full benefits of domain registration retained by you

    \r\n

    Although DBP will show in the \"Whois\" directory as the Registrant of each domain name registration You designate, You will retain the full benefits of domain name registration with respect to each such domain name registration, including, subject to Section 4 below:

    \r\n
      \r\n
    1. The right to sell, transfer or assign each domain name registration, which shall require cancellation of the DBP services associated with each such domain name registration;
    2. \r\n
    3. The right to control the use of each domain name registration, including designating the primary and secondary domain name servers to which each domain name points;
    4. \r\n
    5. The right to cancel each domain name registration;
    6. \r\n
    7. The right to cancel the DBP services associated with each domain name registration and/or Your privacy services with DBP so that Your contract information is listed in the \"Whois\" directory; and
    8. \r\n
    9. The right to renew each domain name registration upon its expiration, subject to Your Registrar's applicable rules and policies.
    10. \r\n
    \r\n

    3. PERSONAL INFORMATION AND your notification obligations; representation and warranties; ACCOUNT SECURITY

    \r\n

    Personal Information and Your Notification Obligations 

    \r\n

    You agree that for each domain name for which you use DBP services, You will provide accurate and current information as to:

    \r\n
      \r\n
    1. Your name, the email address, postal address, phone and fax numbers for the domain name registration's Registrant contact;
    2. \r\n
    3. The email address, postal address, phone and fax numbers for the domain name registration's technical contact;
    4. \r\n
    5. The email address, postal address, phone and fax numbers for the domain name registration's administrative contact;
    6. \r\n
    7. The email address, postal address, phone and fax numbers for the domain name registration's billing contact; and
    8. \r\n
    9. You agree to provide government issued photo identification and/or government issued business identification as required for verification of identity when requested.
    10. \r\n
    \r\n

    You agree to:

    \r\n
      \r\n
    1. Notify DBP within three (3) calendar days when any of the personal information You provided upon subscribing to DBP's services, changes;
    2. \r\n
    3. Respond within three (3) calendar days to any inquiries made by DBP to determine the validity of personal information provided by You; and
    4. \r\n
    5. Timely respond to email messages DBP sends to You regarding correspondence DBP has received that is either addressed to or involves You and/or Your domain name registration, as more fully set forth in Section 5(c) below.
    6. \r\n
    7. To allow DBP to act as your Designated Agent (as that term is defined below) in instances when DBP services are added to or cancelled from your domain name and for the purpose of facilitating a change of registrant request (as further described below). 
    8. \r\n
    \r\n

    It is Your responsibility to keep Your personal information current and accurate at all times.

    \r\n

    Renewals

    \r\n

    You agree DBP will arrange for Your Registrar to charge the credit card You have on file with the Registrar, at the Registrar's then current rates.

    \r\n

    If for any reason DBP and/or the Registrar for Your domain name is unable to charge Your credit card for the full amount of the service provided, or if DBP and/or the Registrar is charged back for any fee it previously charged to the credit card You provided, You agree that DBP and/or the Registrar may, without notice to You, pursue all available remedies in order to obtain payment, including but not limited to immediate cancellation of all services DBP provides to You.

    \r\n

    Representations and Warranties

    \r\n

    You warrant that all information provided by You to DBP is truthful, complete, current and accurate. You also warrant that You are using DBP's private registration services in good faith and You have no knowledge of Your domain name infringing upon or conflicting with the legal rights of a third party or a third party's trademark or trade name. You also warrant the domain name being registered by DBP on Your behalf will not be used in connection with any illegal activity, or in connection with the transmission of Spam, or that contains or installs any viruses, worms, bugs, Trojan horses or other code, files or programs designed to, or capable or, disrupting, damaging or limiting the functionality of any software or hardware.

    \r\n

    Account Security

    \r\n

    You agree You are entirely responsible for maintaining the confidentiality of Your customer number/login ID and password (\"Account Access Information\").  You agree to notify DBP immediately of any unauthorized use of Your account or any other breach of security.  You agree DBP will not be liable for any loss that You may incur as a result of someone else using Your Account Access Information, either with or without Your knowledge.  You further agree You could be held liable for losses incurred by DBP or another party due to someone else using Your Account Access Information.  For security purposes, You should keep Account Access Information in a secure location and take precautions to prevent others from gaining access to Your Account Access Information.  You agree that You are entirely responsible for all activity in Your account, whether initiated by You, or by others.  DBP specifically disclaims liability for any activity in Your account, regardless of whether You authorized the activity.

    \r\n

    Designated Agency and Change of Registrant Information

    \r\n

    “DESIGNATED AGENT” MEANS AN INDIVIDUAL OR ENTITY THAT THE PRIOR REGISTRANT OR NEW REGISTRANT EXPLICITLY AUTHORIZES TO APPROVE A CHANGE OF REGISTRANT REQUEST ON ITS BEHALF.  IN THE CASE OF DBP SERVICES, A CHANGE OF REGISTRANT REQUEST MAY ALSO ARISE DUE TO INSTANCES WHERE DBP SERVICES ARE ADDED, OR REMOVED, FROM A DOMAIN NAME.  FOR THE PURPOSE OF FACILITATING ANY SUCH CHANGE REQUEST, AND IN ACCORDANCE WITH ICANN'S CHANGE OF REGISTRANT POLICY, YOU AGREE TO APPOINT DBP AS YOUR DESIGNATED AGENT FOR THE SOLE PURPOSE OF EXPLICITLY CONSENTING TO MATERIAL CHANGES OF REGISTRATION CONTACT INFORMATION ON YOUR BEHALF.

    \r\n

    4. DBP's rights to deny, suspend, terminate service and to disclose your personal information

    \r\n

    You understand and agree that DBP has the absolute right and power, in its sole discretion and without any liability to You whatsoever, to:

    \r\n
      \r\n
    1. Cancel the privacy service (which means that Your information will be available in the \"Whois\" directory) and/or reveal Your name and personal information that You provided to DBP:  
      A. When required by law, in the good faith belief that such action is necessary in order to conform to the edicts of the law or in the interest of public safety;
      B. To comply with legal process served upon DBP or in response to a reasonable threat of litigation against DBP (as determined by DBP in its sole and absolute discretion); or
      C. To comply with ICANN rules, policies, or procedures.
    2. \r\n
    3. Resolve any and all third party claims, whether threatened or made, arising out of Your use of a domain name for which DBP is the registrant listed in the \"Whois\" directory on Your behalf; or
    4. \r\n
    5. Take any other action DBP deems necessary:
      A. In the event you breach any provision of this Agreement or the DBP Anti-Spam Policy;
      B. To protect the integrity and stability of, and to comply with registration requirements, terms, conditions and policies of, the applicable domain name Registry and/or Registry Provider;
          C. To comply with any applicable laws, government rules or requirements, subpoenas, court orders or requests of law enforcement; 
      D. To comply with ICANN's Dispute Resolution Policy or ICANN's Change of Registrant Policy;
      E. To avoid any financial loss or legal liability (civil or criminal) on the part of DBP, its parent companies, subsidiaries, affiliates, shareholders, agents, officers, directors and employees;
      F. If the domain name for which DBP is the registrant on Your behalf violates or infringes a third party's trademark, trade name or other legal rights; and
      G. If it comes to DBP's attention that You are using DBP's services in a manner (as determined by DBP in its sole and absolute discretion) that:
    6. \r\n
    \r\n
    \r\n
      \r\n
    • Is illegal, or promotes or encourages illegal activity;
    • \r\n
    • Promotes, encourages or engages in child pornography or the exploitation of children;
    • \r\n
    • Promotes, encourages or engages in terrorism, violence against people, animals, or property;
    • \r\n
    • Promotes, encourages or engages in any spam or other unsolicited bulk email, or computer or network hacking or cracking;
    • \r\n
    • Violates the Ryan Haight Online Pharmacy Consumer Protection Act of 2008 or similar legislation, or promotes, encourages or engages in the sale or distribution of prescription medication without a valid prescription;  
    • \r\n
    • Infringes on the intellectual property rights of another User or any other person or entity;
    • \r\n
    • Violates the privacy or publicity rights of another User or any other person or entity, or breaches any duty of confidentiality that you owe to another User or any other person or entity;
    • \r\n
    • Interferes with the operation of DBP services;
    • \r\n
    • Contains or installs any viruses, worms, bugs, Trojan horses or other code, files or programs designed to, or capable of, disrupting, damaging or limiting the functionality of any software or hardware; or
    • \r\n
    • Contains false or deceptive language, or unsubstantiated or comparative claims, regarding DBP or its services.
    • \r\n
    \r\n
    \r\n

    You further understand and agree that if DBP is named as a defendant in, or investigated in anticipation of, any legal or administrative proceeding arising out of Your domain name registration or Your use of DBP's services, Your private registration service may be canceled, which means the domain name registration will revert back to You and Your identity will therefore be revealed in the Whois directory as Registrant.

    \r\n

    In the event:

    \r\n
      \r\n
    1. DBP takes any of the actions set forth in subsection i, ii, or iii above or section 5; and/or
    2. \r\n
    3. You elect to cancel DBP's services for any reason --
    4. \r\n
    \r\n

    Neither DBP nor your Registrar will refund any fees paid by You whatsoever.

    \r\n

    5. communications forwarding

    \r\n

    a. Correspondence Forwarding

    \r\n

    Inasmuch as DBP's name, postal address and phone number will be listed in the Whois directory, You agree DBP will review and forward communications addressed to Your domain name that are received via email, certified or traceable courier mail (such as UPS, FedEx, or DHL), or first class U.S. postal mail. You specifically acknowledge DBP will not forward to You first class postal mail (other than legal notices), \"junk\" mail or other unsolicited communications (whether delivered through email, fax, postal mail or telephone), and You further authorize DBP to either discard all such communications or return all such communications to sender unopened. You agree to waive any and all claims arising from Your failure to receive communications directed to Your domain name but not forwarded to You by DBP.

    \r\n

    b. Email Forwarding

    \r\n

    The Whois directory requires an email address for every purchased domain name registration. When You purchase a private domain registration, DBP creates a private email address for that domain name, \"@domainsbyproxy.com\". Thereafter, when messages are sent to that private email address, DBP handles them according to the email preference You selected for that particular domain name. You have three (3) email preferences from which to choose. You can elect to:

    \r\n
      \r\n
    1. Have all of the messages forwarded;
    2. \r\n
    3. Have all of the messages filtered for Spam and then forwarded; or
    4. \r\n
    5. Have none of the messages forwarded.
    6. \r\n
    \r\n

    As with all communications, You agree to waive any and all claims arising from Your failure to receive email directed to Your domain name but not forwarded to You by DBP.

    \r\n

    c. Notifications Regarding Correspondence and Your Obligation to Respond

    \r\n

    When DBP receives certified or traceable courier mail or legal notices addressed to Your domain name, in most cases, DBP will attempt to forward the mail to you via email. If You do not respond to the DBP email and/or the correspondence DBP has received regarding Your domain name registration concerns a dispute of any kind or otherwise requires immediate disposition, DBP may immediately reveal Your identity and/or cancel the DBP private registration service regarding either the domain name registration(s) in question. This means the Whois directory will revert to displaying Your name, postal address, email address and phone number that you provided to DBP.

    \r\n

    d. Additional Administrative Fees

    \r\n

    DBP reserves the right to charge You reasonable \"administrative fees\" or \"processing fees\" for (i)  tasks DBP may perform outside the normal scope of its Services, (ii) additional time and/or costs DBP may incur in providing its Services, and/or (iii) Your non-compliance with the Agreement (as determined by DBP in its sole and absolute discretion). Typical administrative or processing fee scenarios include, but are not limited to, (i) customer service issues that require additional personal time and attention; (ii) disputes that require accounting or legal services, whether performed by DBP staff or by outside firms retained by DBP; (iii) recouping any and all costs and fees, including the cost of Services, incurred by DBP as the result of chargebacks or other payment disputes brought by You, Your bank or Payment Method processor.  These administrative fees or processing fees will be billed to the Payment Method You have on file with Your Registrar.

    \r\n

    You agree to waive the right to trial by jury in any proceeding that takes place relating to or arising out of this Agreement.

    \r\n

    6. limitations of liability

    \r\n

    UNDER NO CIRCUMSTANCES SHALL DBP BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, PUNITIVE, SPECIAL, OR CONSEQUENTIAL DAMAGES FOR ANY REASON WHATSOEVER RELATED TO THIS AGREEMENT, YOUR DOMAIN NAME REGISTRATION, DBP'S SERVICES, USE OR INABILITY TO USE THE DBP WEBSITE OR THE MATERIALS AND CONTENT OF THE WEBSITE OR ANY OTHER WEBSITES LINKED TO THE DBP WEBSITE OR YOUR PROVISION OF ANY PERSONALLY IDENTIFIABLE INFORMATION TO DBP OR ANY THIRD PARTY. THIS LIMITATION APPLIES REGARDLESS OF WHETHER THE ALLEGED LIABILITY IS BASED ON CONTRACT, TORT, WARRANTY, NEGLIGENCE, STRICT LIABILITY OR ANY OTHER BASIS, EVEN IF DBP HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES OR SUCH DAMAGES WERE REASONABLY FORESEEABLE. BECAUSE CERTAIN JURISDICTIONS DO NOT PERMIT THE LIMITATION OR ELIMINATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES, DBP'S LIABILITY IN SUCH JURISDICTIONS SHALL BE LIMITED TO THE SMALLEST AMOUNT PERMITTED BY LAW.

    \r\n

    YOU FURTHER UNDERSTAND AND AGREE THAT DBP DISCLAIMS ANY LOSS OR LIABILITY RESULTING FROM:

    \r\n
      \r\n
    1. THE INADVERTENT DISCLOSURE OR THEFT OF YOUR PERSONAL INFORMATION;
    2. \r\n
    3. ACCESS DELAYS OR INTERRUPTIONS TO OUR WEBSITE OR THE WEBSITES OF OUR AFFILIATED REGISTRARS;
    4. \r\n
    5. DATA NON-DELIVERY OF MIS-DELIVERY BETWEEN YOU AND DBP;
    6. \r\n
    7. THE FAILURE FOR WHATEVER REASON TO RENEW A PRIVATE DOMAIN NAME REGISTRATION;
    8. \r\n
    9. THE UNAUTHORIZED USE OF YOUR DBP ACCOUNT OR ANY OF DBP'S SERVICES;
    10. \r\n
    11. ERRORS, OMISSIONS OR MISSTATEMENTS BY DBP;
    12. \r\n
    13. DELETION OF, FAILURE TO STORE, FAILURE TO PROCESS OR ACT UPON EMAIL MESSAGES FORWARDED TO EITHER YOU OR YOUR PRIVATE DOMAIN NAME REGISTRATION;
    14. \r\n
    15. PROCESSING OF UPDATED INFORMATION REGARDING YOUR DBP ACCOUNT; AND/OR
    16. \r\n
    17. ANY ACT OR OMISSION CAUSED BY YOU OR YOUR AGENTS (WHETHER AUTHORIZED BY YOU OR NOT).
    18. \r\n
    \r\n

    7. indemnity

    \r\n

    You agree to release, defend, indemnify and hold harmless DBP, its parent companies, subsidiaries, affiliates, shareholders, agents, directors, officers and employees and Your Registrar, from and against any and all claims, demands, liabilities, losses, damages or costs, including reasonable attorneys' fees, arising out of or related in any way to this Agreement, the services provided hereunder by DBP, the DBP website, Your account with DBP, Your use of Your domain name registration, and/or disputes arising in connection with the dispute policy.

    \r\n

    8. DBP warranty disclaimer

    \r\n

    DBP, ITS PARENT COMPANIES, SUBSIDIARIES, AFFILIATES, SHAREHOLDERS, AGENTS, DIRECTORS, OFFICERS, AND EMPLOYEES EXPRESSLY DISCLAIM ALL REPRESENTATIONS AND WARRANTIES OF ANY KIND IN CONNECTION WITH THIS AGREEMENT, THE SERVICE PROVIDED HEREUNDER, THE DBP WEBSITE OR ANY WEBSITES LINKED TO THE DBP WEBSITE, WHETHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. ALL DBP SERVICES, AS WELL AS THE DBP WEBSITE, ARE PROVIDED \"AS IS\". YOUR SUBSCRIPTION TO AND USE OF DBP'S SERVICES AND ITS WEBSITE ARE ENTIRELY AT YOUR RISK. SOME JURISDICTIONS DO NOT ALLOW THE DISCLAIMER OF IMPLIED WARRANTIES, IN WHICH EVENT THE FOREGOING DISCLAIMER MAY NOT APPLY TO YOU.

    \r\n

    9. copyright and trademark

    \r\n

    You understand and agree that all content and materials contained in this Agreement, the Privacy Policy and the DBP website found here , are protected by the various copyright, patent, trademark, service mark and trade secret laws of the United States, as well as any other applicable proprietary rights and laws, and that DBP expressly reserves its rights in and to all such content and materials.

    \r\n

    You further understand and agree You are prohibited from using, in any manner whatsoever, any of the afore-described content and materials without the express written permission of DBP. No license or right under any copyright, patent, trademark, service mark or other proprietary right or license is granted to You or conferred upon You by this Agreement or otherwise.

    \r\n

    10. miscellaneous provisions

    \r\n

    a. Severability; Construction; Entire Agreement

    \r\n

    If any part of this Agreement shall be held to be illegal, unenforceable or invalid, in whole or in part, such provision shall be modified to the minimum extent necessary to make it legal, enforceable and valid, and the legality, enforceability and validity of the remaining provisions of this Agreement shall not be affected or impaired. The headings herein will not be considered a part of this Agreement. You agree this Agreement, including the policies it incorporates by reference, constitute the complete and only Agreement between You and DBP regarding the services contemplated herein.

    \r\n

    b. Governing Law; Venue; Waiver Of Trial By Jury

    \r\n

    This Agreement shall be governed in all respects by the laws and judicial decisions of Maricopa County, Arizona, excluding its conflicts of laws rules. Except as provided immediately below, You agree that any action relating to or arising out of this Agreement, shall be brought exclusively in the courts of Maricopa County, Arizona. For the adjudication of domain name registration disputes, you agree to submit to the exclusive jurisdiction and venue of the U.S. District Court for the District of Arizona located in Phoenix, Arizona. You agree to waive the right to trial by jury in any proceeding, regardless of venue, that takes place relating to or arising out of this Agreement.

    \r\n

    c. Notices

    \r\n

    All notices from DBP to You will be sent to the email address You provided to DBP. Notices by email shall be deemed effective twenty-four (24) hours after the email is sent by DBP, unless DBP receives notice that the email address is invalid, in which event DBP may give You notice via first class or certified mail, return receipt requested. All notices from You to DBP shall be sent via certified mail, return receipt requested or traceable courier to:

    \r\n
        Domains By Proxy, LLC
        Attn: General Counsel
        14455 North Hayden Rd.
        Suite 219
        Scottsdale, AZ 85260
    \r\n

    Notices sent via certified mail or traceable courier shall be deemed effective five (5) days after the date of mailing.

    \r\n

    d. Insurance

    \r\n

    In the unlikely event You lose Your domain name registration to a third party solely as a result of DBP's negligent actions (and absent fraud or other negligent or willful misconduct committed by a third party), You may be insured against such loss through DBP's Professional Liability Insurance Policy, which is currently underwritten by American International Insurance Company. Of course, every claim is subject to the then-carrier's investigation into the facts and circumstances surrounding such claim. In the event You have reason to believe that circumstances exist which warrant the filing of an insurance claim, please send a written notice (specifying the basis for such claim), via certified mail, return receipt requested, to:

    \r\n
        Domains By Proxy, LLC
        Attn: Insurance Claims
        14455 North Hayden Rd.
        Suite 219
        Scottsdale, AZ 85260
    \r\n

    e. Indemnification

    \r\n

    In the unlikely event You lose Your domain name registration to a third party solely as a result of DBP's willful misconduct, Your Registrar (the \"Indemnifying Party\") will indemnify and hold You harmless against any losses, damages or costs (including reasonable attorneys' fees) resulting from any claim, action, proceeding, suit or demand arising out of or related to the loss of Your domain name registration. Such indemnification obligations under this Section 10(e) are conditioned upon the following:

    \r\n
      \r\n
    1. That You promptly give both DBP and the Indemnifying Party written notice of the claim, demand, or action and provide reasonable assistance to the Indemnifying Party, at its cost and expense, in connection therewith, and
    2. \r\n
    3. That the Indemnifying Party has the right, at its option, to control and direct the defense to any settlement of such claim, demand, or action.
    4. \r\n
    \r\n

    Any notice concerning indemnification shall, with respect to DBP, be sent in accordance with Section 10(c) of this Agreement. With respect to Your Registrar, notices regarding indemnification should be sent in accordance with the notification provisions contained in Your Registrar's Domain Name Registration Agreement.

    \r\n

    f. Term of Agreement; Survival

    \r\n

    The terms of this Agreement shall continue in full force and effect as long as DBP is the Registrant for any domain name on Your behalf. Sections 5 (Communications Forwarding), 6 (Limitation of Liability), 7 (Indemnity), 8 (Warranty Disclaimer) and 10 (Miscellaneous Provisions) shall survive any termination or expiration of this Agreement.

    \n
    \n
    \n\nRevised: 10/25/17
    \nCopyright © 2003-2017 All Rights Reserved.\n
    \n
    \n
    ", + "url": "http://www.secureserver.net/agreements/ShowDoc.aspx?pageid=domain_nameproxy&pl_id=510456" + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.DomainRegistration/stable/2021-01-01/examples/ListTopLevelDomains.json b/specification/web/resource-manager/Microsoft.DomainRegistration/stable/2021-01-01/examples/ListTopLevelDomains.json new file mode 100644 index 000000000000..5df81ba9874c --- /dev/null +++ b/specification/web/resource-manager/Microsoft.DomainRegistration/stable/2021-01-01/examples/ListTopLevelDomains.json @@ -0,0 +1,87 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.DomainRegistration/topLevelDomains/com", + "name": "com", + "type": "Microsoft.DomainRegistration/topLevelDomains", + "properties": { + "privacy": true + } + }, + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.DomainRegistration/topLevelDomains/net", + "name": "net", + "type": "Microsoft.DomainRegistration/topLevelDomains", + "properties": { + "privacy": true + } + }, + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.DomainRegistration/topLevelDomains/co.uk", + "name": "co.uk", + "type": "Microsoft.DomainRegistration/topLevelDomains", + "properties": { + "privacy": false + } + }, + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.DomainRegistration/topLevelDomains/org", + "name": "org", + "type": "Microsoft.DomainRegistration/topLevelDomains", + "properties": { + "privacy": true + } + }, + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.DomainRegistration/topLevelDomains/nl", + "name": "nl", + "type": "Microsoft.DomainRegistration/topLevelDomains", + "properties": { + "privacy": true + } + }, + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.DomainRegistration/topLevelDomains/in", + "name": "in", + "type": "Microsoft.DomainRegistration/topLevelDomains", + "properties": { + "privacy": false + } + }, + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.DomainRegistration/topLevelDomains/biz", + "name": "biz", + "type": "Microsoft.DomainRegistration/topLevelDomains", + "properties": { + "privacy": true + } + }, + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.DomainRegistration/topLevelDomains/org.uk", + "name": "org.uk", + "type": "Microsoft.DomainRegistration/topLevelDomains", + "properties": { + "privacy": false + } + }, + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.DomainRegistration/topLevelDomains/co.in", + "name": "co.in", + "type": "Microsoft.DomainRegistration/topLevelDomains", + "properties": { + "privacy": false + } + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.DomainRegistration/stable/2021-01-01/examples/RenewDomain.json b/specification/web/resource-manager/Microsoft.DomainRegistration/stable/2021-01-01/examples/RenewDomain.json new file mode 100644 index 000000000000..85d75faa7d2a --- /dev/null +++ b/specification/web/resource-manager/Microsoft.DomainRegistration/stable/2021-01-01/examples/RenewDomain.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-01-01", + "subscriptionId": "3dddfa4f-cedf-4dc0-ba29-b6d1a69ab545", + "resourceGroupName": "RG", + "domainName": "example.com" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-06-01/CommonDefinitions.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-06-01/CommonDefinitions.json index 948428d153c3..b8031e339d02 100644 --- a/specification/web/resource-manager/Microsoft.Web/stable/2020-06-01/CommonDefinitions.json +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-06-01/CommonDefinitions.json @@ -1992,6 +1992,14 @@ "description": "true if HTTP logging is enabled; otherwise, false.", "type": "boolean" }, + "acrUseManagedIdentityCreds": { + "description": "Flag to use Managed Identity Creds for ACR pull", + "type": "boolean" + }, + "acrUserManagedIdentityID": { + "description": "If using user managed identity, the user managed identity ClientId", + "type": "string" + }, "logsDirectorySizeLimit": { "format": "int32", "description": "HTTP logs directory size limit.", diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-09-01/CommonDefinitions.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-09-01/CommonDefinitions.json index 4ee25e9443b6..40c8b845d8c3 100644 --- a/specification/web/resource-manager/Microsoft.Web/stable/2020-09-01/CommonDefinitions.json +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-09-01/CommonDefinitions.json @@ -2000,6 +2000,14 @@ "description": "true if HTTP logging is enabled; otherwise, false.", "type": "boolean" }, + "acrUseManagedIdentityCreds": { + "description": "Flag to use Managed Identity Creds for ACR pull", + "type": "boolean" + }, + "acrUserManagedIdentityID": { + "description": "If using user managed identity, the user managed identity ClientId", + "type": "string" + }, "logsDirectorySizeLimit": { "format": "int32", "description": "HTTP logs directory size limit.", diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-10-01/CommonDefinitions.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-10-01/CommonDefinitions.json index 5ddb30dc2489..0c601ee64ad6 100644 --- a/specification/web/resource-manager/Microsoft.Web/stable/2020-10-01/CommonDefinitions.json +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-10-01/CommonDefinitions.json @@ -2004,6 +2004,14 @@ "description": "true if HTTP logging is enabled; otherwise, false.", "type": "boolean" }, + "acrUseManagedIdentityCreds": { + "description": "Flag to use Managed Identity Creds for ACR pull", + "type": "boolean" + }, + "acrUserManagedIdentityID": { + "description": "If using user managed identity, the user managed identity ClientId", + "type": "string" + }, "logsDirectorySizeLimit": { "format": "int32", "description": "HTTP logs directory size limit.", diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/AppServiceEnvironments.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/AppServiceEnvironments.json new file mode 100644 index 000000000000..6db780e3526b --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/AppServiceEnvironments.json @@ -0,0 +1,2883 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-12-01", + "title": "AppServiceEnvironments API Client" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Web/hostingEnvironments": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Get all App Service Environments for a subscription.", + "description": "Description for Get all App Service Environments for a subscription.", + "operationId": "AppServiceEnvironments_List", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AppServiceEnvironmentCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Get all App Service Environments in a resource group.", + "description": "Description for Get all App Service Environments in a resource group.", + "operationId": "AppServiceEnvironments_ListByResourceGroup", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AppServiceEnvironmentCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Get the properties of an App Service Environment.", + "description": "Description for Get the properties of an App Service Environment.", + "operationId": "AppServiceEnvironments_Get", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AppServiceEnvironmentResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Create or update an App Service Environment.", + "description": "Description for Create or update an App Service Environment.", + "operationId": "AppServiceEnvironments_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "name": "hostingEnvironmentEnvelope", + "in": "body", + "description": "Configuration details of the App Service Environment.", + "required": true, + "schema": { + "$ref": "#/definitions/AppServiceEnvironmentResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AppServiceEnvironmentResource" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/AppServiceEnvironmentResource" + } + }, + "202": { + "description": "Operation is in progress.", + "schema": { + "$ref": "#/definitions/AppServiceEnvironmentResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Delete an App Service Environment.", + "description": "Description for Delete an App Service Environment.", + "operationId": "AppServiceEnvironments_Delete", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "name": "forceDelete", + "in": "query", + "description": "Specify true to force the deletion even if the App Service Environment contains resources. The default is false.", + "type": "boolean" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Operation is in progress." + }, + "204": { + "description": "App Service Environment does not exist" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Create or update an App Service Environment.", + "description": "Description for Create or update an App Service Environment.", + "operationId": "AppServiceEnvironments_Update", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "name": "hostingEnvironmentEnvelope", + "in": "body", + "description": "Configuration details of the App Service Environment.", + "required": true, + "schema": { + "$ref": "#/definitions/AppServiceEnvironmentPatchResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AppServiceEnvironmentResource" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/AppServiceEnvironmentResource" + } + }, + "202": { + "description": "Operation is in progress.", + "schema": { + "$ref": "#/definitions/AppServiceEnvironmentResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/capacities/compute": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Get the used, available, and total worker capacity an App Service Environment.", + "description": "Description for Get the used, available, and total worker capacity an App Service Environment.", + "operationId": "AppServiceEnvironments_ListCapacities", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/StampCapacityCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/capacities/virtualip": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Get IP addresses assigned to an App Service Environment.", + "description": "Description for Get IP addresses assigned to an App Service Environment.", + "operationId": "AppServiceEnvironments_GetVipInfo", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AddressResponse" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/changeVirtualNetwork": { + "post": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Move an App Service Environment to a different VNET.", + "description": "Description for Move an App Service Environment to a different VNET.", + "operationId": "AppServiceEnvironments_ChangeVnet", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "name": "vnetInfo", + "in": "body", + "description": "Details for the new virtual network.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VirtualNetworkProfile" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/WebAppCollection" + } + }, + "202": { + "description": "Operation is in progress.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/WebAppCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/configurations/networking": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Get networking configuration of an App Service Environment", + "description": "Description for Get networking configuration of an App Service Environment", + "operationId": "AppServiceEnvironments_GetAseV3NetworkingConfiguration", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/AseV3NetworkingConfiguration" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Update networking configuration of an App Service Environment", + "description": "Description for Update networking configuration of an App Service Environment", + "operationId": "AppServiceEnvironments_UpdateAseNetworkingConfiguration", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "name": "aseNetworkingConfiguration", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AseV3NetworkingConfiguration" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/AseV3NetworkingConfiguration" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/diagnostics": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Get diagnostic information for an App Service Environment.", + "description": "Description for Get diagnostic information for an App Service Environment.", + "operationId": "AppServiceEnvironments_ListDiagnostics", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/HostingEnvironmentDiagnostics" + } + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/diagnostics/{diagnosticsName}": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Get a diagnostics item for an App Service Environment.", + "description": "Description for Get a diagnostics item for an App Service Environment.", + "operationId": "AppServiceEnvironments_GetDiagnosticsItem", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "name": "diagnosticsName", + "in": "path", + "description": "Name of the diagnostics item.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/HostingEnvironmentDiagnostics" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/inboundNetworkDependenciesEndpoints": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Get the network endpoints of all inbound dependencies of an App Service Environment.", + "description": "Description for Get the network endpoints of all inbound dependencies of an App Service Environment.", + "operationId": "AppServiceEnvironments_GetInboundNetworkDependenciesEndpoints", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/InboundEnvironmentEndpointCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Inbound Network Dependencies Endpoints": { + "$ref": "./examples/GetInboundNetworkDependenciesEndpoints.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/multiRolePools": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Get all multi-role pools.", + "description": "Description for Get all multi-role pools.", + "operationId": "AppServiceEnvironments_ListMultiRolePools", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/WorkerPoolCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/multiRolePools/default": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Get properties of a multi-role pool.", + "description": "Description for Get properties of a multi-role pool.", + "operationId": "AppServiceEnvironments_GetMultiRolePool", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/WorkerPoolResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Create or update a multi-role pool.", + "description": "Description for Create or update a multi-role pool.", + "operationId": "AppServiceEnvironments_CreateOrUpdateMultiRolePool", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "name": "multiRolePoolEnvelope", + "in": "body", + "description": "Properties of the multi-role pool.", + "required": true, + "schema": { + "$ref": "#/definitions/WorkerPoolResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/WorkerPoolResource" + } + }, + "202": { + "description": "Operation is in progress.", + "schema": { + "$ref": "#/definitions/WorkerPoolResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Create or update a multi-role pool.", + "description": "Description for Create or update a multi-role pool.", + "operationId": "AppServiceEnvironments_UpdateMultiRolePool", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "name": "multiRolePoolEnvelope", + "in": "body", + "description": "Properties of the multi-role pool.", + "required": true, + "schema": { + "$ref": "#/definitions/WorkerPoolResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/WorkerPoolResource" + } + }, + "202": { + "description": "Operation is in progress.", + "schema": { + "$ref": "#/definitions/WorkerPoolResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/multiRolePools/default/instances/{instance}/metricdefinitions": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Get metric definitions for a specific instance of a multi-role pool of an App Service Environment.", + "description": "Description for Get metric definitions for a specific instance of a multi-role pool of an App Service Environment.", + "operationId": "AppServiceEnvironments_ListMultiRolePoolInstanceMetricDefinitions", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "name": "instance", + "in": "path", + "description": "Name of the instance in the multi-role pool.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ResourceMetricDefinitionCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/multiRolePools/default/metricdefinitions": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Get metric definitions for a multi-role pool of an App Service Environment.", + "description": "Description for Get metric definitions for a multi-role pool of an App Service Environment.", + "operationId": "AppServiceEnvironments_ListMultiRoleMetricDefinitions", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ResourceMetricDefinitionCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/multiRolePools/default/skus": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Get available SKUs for scaling a multi-role pool.", + "description": "Description for Get available SKUs for scaling a multi-role pool.", + "operationId": "AppServiceEnvironments_ListMultiRolePoolSkus", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SkuInfoCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/multiRolePools/default/usages": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Get usage metrics for a multi-role pool of an App Service Environment.", + "description": "Description for Get usage metrics for a multi-role pool of an App Service Environment.", + "operationId": "AppServiceEnvironments_ListMultiRoleUsages", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/UsageCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/operations": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "List all currently running operations on the App Service Environment.", + "description": "Description for List all currently running operations on the App Service Environment.", + "operationId": "AppServiceEnvironments_ListOperations", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "./CommonDefinitions.json#/definitions/Operation" + } + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/outboundNetworkDependenciesEndpoints": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Get the network endpoints of all outbound dependencies of an App Service Environment.", + "description": "Description for Get the network endpoints of all outbound dependencies of an App Service Environment.", + "operationId": "AppServiceEnvironments_GetOutboundNetworkDependenciesEndpoints", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OutboundEnvironmentEndpointCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Outbound Network Dependencies Endpoints": { + "$ref": "./examples/GetOutboundNetworkDependenciesEndpoints.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/privateEndpointConnections": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Gets the list of private endpoints associated with a hosting environment", + "description": "Description for Gets the list of private endpoints associated with a hosting environment", + "operationId": "AppServiceEnvironments_GetPrivateEndpointConnectionList", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/PrivateEndpointConnectionCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Gets a private endpoint connection", + "description": "Description for Gets a private endpoint connection", + "operationId": "AppServiceEnvironments_GetPrivateEndpointConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "Name of the private endpoint connection.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/RemotePrivateEndpointConnectionARMResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Approves or rejects a private endpoint connection", + "description": "Description for Approves or rejects a private endpoint connection", + "operationId": "AppServiceEnvironments_ApproveOrRejectPrivateEndpointConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "privateEndpointWrapper", + "in": "body", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/PrivateLinkConnectionApprovalRequestResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/RemotePrivateEndpointConnectionARMResource" + } + }, + "202": { + "description": "Asynchronous operation in progress.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/RemotePrivateEndpointConnectionARMResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Deletes a private endpoint connection", + "description": "Description for Deletes a private endpoint connection", + "operationId": "AppServiceEnvironments_DeletePrivateEndpointConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "type": "object" + } + }, + "202": { + "description": "Asynchronous operation in progress.", + "schema": { + "type": "object" + } + }, + "204": { + "description": "No content.", + "schema": { + "type": "object" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/privateLinkResources": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Gets the private link resources", + "description": "Description for Gets the private link resources", + "operationId": "AppServiceEnvironments_GetPrivateLinkResources", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/PrivateLinkResourcesWrapper" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/reboot": { + "post": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Reboot all machines in an App Service Environment.", + "description": "Description for Reboot all machines in an App Service Environment.", + "operationId": "AppServiceEnvironments_Reboot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Asynchronous operation in progress." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/resume": { + "post": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Resume an App Service Environment.", + "description": "Description for Resume an App Service Environment.", + "operationId": "AppServiceEnvironments_Resume", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/WebAppCollection" + } + }, + "202": { + "description": "Operation is in progress.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/WebAppCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/serverfarms": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Get all App Service plans in an App Service Environment.", + "description": "Description for Get all App Service plans in an App Service Environment.", + "operationId": "AppServiceEnvironments_ListAppServicePlans", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/AppServicePlanCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/sites": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Get all apps in an App Service Environment.", + "description": "Description for Get all apps in an App Service Environment.", + "operationId": "AppServiceEnvironments_ListWebApps", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "name": "propertiesToInclude", + "in": "query", + "description": "Comma separated list of app properties to include.", + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/WebAppCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/suspend": { + "post": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Suspend an App Service Environment.", + "description": "Description for Suspend an App Service Environment.", + "operationId": "AppServiceEnvironments_Suspend", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/WebAppCollection" + } + }, + "202": { + "description": "Operation is in progress.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/WebAppCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/usages": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Get global usage metrics of an App Service Environment.", + "description": "Description for Get global usage metrics of an App Service Environment.", + "operationId": "AppServiceEnvironments_ListUsages", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$filter", + "in": "query", + "description": "Return only usages/metrics specified in the filter. Filter conforms to odata syntax. Example: $filter=(name.value eq 'Metric1' or name.value eq 'Metric2') and startTime eq 2014-01-01T00:00:00Z and endTime eq 2014-12-31T23:59:59Z and timeGrain eq duration'[Hour|Minute|Day]'.", + "type": "string", + "x-ms-skip-url-encoding": true + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/CsmUsageQuotaCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/workerPools": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Get all worker pools of an App Service Environment.", + "description": "Description for Get all worker pools of an App Service Environment.", + "operationId": "AppServiceEnvironments_ListWorkerPools", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/WorkerPoolCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/workerPools/{workerPoolName}": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Get properties of a worker pool.", + "description": "Description for Get properties of a worker pool.", + "operationId": "AppServiceEnvironments_GetWorkerPool", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "name": "workerPoolName", + "in": "path", + "description": "Name of the worker pool.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/WorkerPoolResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Create or update a worker pool.", + "description": "Description for Create or update a worker pool.", + "operationId": "AppServiceEnvironments_CreateOrUpdateWorkerPool", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "name": "workerPoolName", + "in": "path", + "description": "Name of the worker pool.", + "required": true, + "type": "string" + }, + { + "name": "workerPoolEnvelope", + "in": "body", + "description": "Properties of the worker pool.", + "required": true, + "schema": { + "$ref": "#/definitions/WorkerPoolResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/WorkerPoolResource" + } + }, + "202": { + "description": "Operation is in progress.", + "schema": { + "$ref": "#/definitions/WorkerPoolResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Create or update a worker pool.", + "description": "Description for Create or update a worker pool.", + "operationId": "AppServiceEnvironments_UpdateWorkerPool", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "name": "workerPoolName", + "in": "path", + "description": "Name of the worker pool.", + "required": true, + "type": "string" + }, + { + "name": "workerPoolEnvelope", + "in": "body", + "description": "Properties of the worker pool.", + "required": true, + "schema": { + "$ref": "#/definitions/WorkerPoolResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/WorkerPoolResource" + } + }, + "202": { + "description": "Operation is in progress.", + "schema": { + "$ref": "#/definitions/WorkerPoolResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/workerPools/{workerPoolName}/instances/{instance}/metricdefinitions": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Get metric definitions for a specific instance of a worker pool of an App Service Environment.", + "description": "Description for Get metric definitions for a specific instance of a worker pool of an App Service Environment.", + "operationId": "AppServiceEnvironments_ListWorkerPoolInstanceMetricDefinitions", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "name": "workerPoolName", + "in": "path", + "description": "Name of the worker pool.", + "required": true, + "type": "string" + }, + { + "name": "instance", + "in": "path", + "description": "Name of the instance in the worker pool.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ResourceMetricDefinitionCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/workerPools/{workerPoolName}/metricdefinitions": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Get metric definitions for a worker pool of an App Service Environment.", + "description": "Description for Get metric definitions for a worker pool of an App Service Environment.", + "operationId": "AppServiceEnvironments_ListWebWorkerMetricDefinitions", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "name": "workerPoolName", + "in": "path", + "description": "Name of the worker pool.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ResourceMetricDefinitionCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/workerPools/{workerPoolName}/skus": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Get available SKUs for scaling a worker pool.", + "description": "Description for Get available SKUs for scaling a worker pool.", + "operationId": "AppServiceEnvironments_ListWorkerPoolSkus", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "name": "workerPoolName", + "in": "path", + "description": "Name of the worker pool.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SkuInfoCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/workerPools/{workerPoolName}/usages": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Get usage metrics for a worker pool of an App Service Environment.", + "description": "Description for Get usage metrics for a worker pool of an App Service Environment.", + "operationId": "AppServiceEnvironments_ListWebWorkerUsages", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "name": "workerPoolName", + "in": "path", + "description": "Name of the worker pool.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/UsageCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "AddressResponse": { + "description": "Describes main public IP address and any extra virtual IPs.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "AddressResponse resource specific properties", + "properties": { + "serviceIpAddress": { + "description": "Main public virtual IP.", + "type": "string" + }, + "internalIpAddress": { + "description": "Virtual Network internal IP address of the App Service Environment if it is in internal load-balancing mode.", + "type": "string" + }, + "outboundIpAddresses": { + "description": "IP addresses appearing on outbound connections.", + "type": "array", + "items": { + "type": "string" + } + }, + "vipMappings": { + "description": "Additional virtual IPs.", + "type": "array", + "items": { + "$ref": "#/definitions/VirtualIPMapping" + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "AppServiceEnvironmentCollection": { + "description": "Collection of App Service Environments.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/AppServiceEnvironmentResource" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "AppServiceEnvironmentPatchResource": { + "description": "ARM resource for a app service environment.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "$ref": "./CommonDefinitions.json#/definitions/AppServiceEnvironment", + "description": "Core resource properties", + "x-ms-client-flatten": true + } + } + }, + "AppServiceEnvironmentResource": { + "description": "App Service Environment ARM resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "./CommonDefinitions.json#/definitions/AppServiceEnvironment", + "description": "Core resource properties", + "x-ms-client-flatten": true + } + } + }, + "AseV3NetworkingConfiguration": { + "description": "Full view of networking configuration for an ASE.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "AseV3NetworkingConfiguration resource specific properties", + "properties": { + "windowsOutboundIpAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "linuxOutboundIpAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "allowNewPrivateEndpointConnections": { + "description": "Property to enable and disable new private endpoint connection creation on ASE", + "type": "boolean" + } + }, + "x-ms-client-flatten": true + } + } + }, + "EndpointDependency": { + "description": "A domain name that a service is reached at, including details of the current connection status.", + "type": "object", + "properties": { + "domainName": { + "description": "The domain name of the dependency.", + "type": "string" + }, + "endpointDetails": { + "description": "The IP Addresses and Ports used when connecting to DomainName.", + "type": "array", + "items": { + "$ref": "#/definitions/EndpointDetail" + } + } + } + }, + "EndpointDetail": { + "description": "Current TCP connectivity information from the App Service Environment to a single endpoint.", + "type": "object", + "properties": { + "ipAddress": { + "description": "An IP Address that Domain Name currently resolves to.", + "type": "string" + }, + "port": { + "format": "int32", + "description": "The port an endpoint is connected to.", + "type": "integer" + }, + "latency": { + "format": "double", + "description": "The time in milliseconds it takes for a TCP connection to be created from the App Service Environment to this IpAddress at this Port.", + "type": "number" + }, + "isAccessible": { + "description": "Whether it is possible to create a TCP connection from the App Service Environment to this IpAddress at this Port.", + "type": "boolean" + } + } + }, + "HostingEnvironmentDiagnostics": { + "description": "Diagnostics for an App Service Environment.", + "type": "object", + "properties": { + "name": { + "description": "Name/identifier of the diagnostics.", + "type": "string" + }, + "diagnosticsOutput": { + "description": "Diagnostics output.", + "type": "string" + } + } + }, + "InboundEnvironmentEndpoint": { + "description": "The IP Addresses and Ports that require inbound network access to and within the subnet of the App Service Environment.", + "type": "object", + "properties": { + "description": { + "description": "Short text describing the purpose of the network traffic.", + "type": "string" + }, + "endpoints": { + "description": "The IP addresses that network traffic will originate from in cidr notation.", + "type": "array", + "items": { + "type": "string" + } + }, + "ports": { + "description": "The ports that network traffic will arrive to the App Service Environment at.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "InboundEnvironmentEndpointCollection": { + "description": "Collection of Inbound Environment Endpoints", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/InboundEnvironmentEndpoint" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "OutboundEnvironmentEndpoint": { + "description": "Endpoints accessed for a common purpose that the App Service Environment requires outbound network access to.", + "type": "object", + "properties": { + "category": { + "description": "The type of service accessed by the App Service Environment, e.g., Azure Storage, Azure SQL Database, and Azure Active Directory.", + "type": "string" + }, + "endpoints": { + "description": "The endpoints that the App Service Environment reaches the service at.", + "type": "array", + "items": { + "$ref": "#/definitions/EndpointDependency" + } + } + } + }, + "OutboundEnvironmentEndpointCollection": { + "description": "Collection of Outbound Environment Endpoints", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/OutboundEnvironmentEndpoint" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "ResourceMetricAvailability": { + "description": "Metrics availability and retention.", + "type": "object", + "properties": { + "timeGrain": { + "description": "Time grain .", + "type": "string", + "readOnly": true + }, + "retention": { + "description": "Retention period for the current time grain.", + "type": "string", + "readOnly": true + } + } + }, + "ResourceMetricDefinition": { + "description": "Metadata for the metrics.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "ResourceMetricDefinition resource specific properties", + "properties": { + "unit": { + "description": "Unit of the metric.", + "type": "string", + "readOnly": true + }, + "primaryAggregationType": { + "description": "Primary aggregation type.", + "type": "string", + "readOnly": true + }, + "metricAvailabilities": { + "description": "List of time grains supported for the metric together with retention period.", + "type": "array", + "items": { + "$ref": "#/definitions/ResourceMetricAvailability" + }, + "readOnly": true + }, + "resourceUri": { + "description": "Resource URI.", + "type": "string", + "readOnly": true + }, + "properties": { + "description": "Resource metric definition properties.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "ResourceMetricDefinitionCollection": { + "description": "Collection of metric definitions.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/ResourceMetricDefinition" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "SkuInfo": { + "description": "SKU discovery information.", + "type": "object", + "properties": { + "resourceType": { + "description": "Resource type that this SKU applies to.", + "type": "string" + }, + "sku": { + "$ref": "./CommonDefinitions.json#/definitions/SkuDescription", + "description": "Name and tier of the SKU." + }, + "capacity": { + "$ref": "./CommonDefinitions.json#/definitions/SkuCapacity", + "description": "Min, max, and default scale values of the SKU." + } + } + }, + "SkuInfoCollection": { + "description": "Collection of SKU information.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/SkuInfo" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "StampCapacity": { + "description": "Stamp capacity information.", + "type": "object", + "properties": { + "name": { + "description": "Name of the stamp.", + "type": "string" + }, + "availableCapacity": { + "format": "int64", + "description": "Available capacity (# of machines, bytes of storage etc...).", + "type": "integer" + }, + "totalCapacity": { + "format": "int64", + "description": "Total capacity (# of machines, bytes of storage etc...).", + "type": "integer" + }, + "unit": { + "description": "Name of the unit.", + "type": "string" + }, + "computeMode": { + "description": "Shared/dedicated workers.", + "enum": [ + "Shared", + "Dedicated", + "Dynamic" + ], + "type": "string", + "x-ms-enum": { + "name": "ComputeModeOptions", + "modelAsString": false + } + }, + "workerSize": { + "description": "Size of the machines.", + "enum": [ + "Small", + "Medium", + "Large", + "D1", + "D2", + "D3", + "SmallV3", + "MediumV3", + "LargeV3", + "NestedSmall", + "NestedSmallLinux", + "Default" + ], + "type": "string", + "x-ms-enum": { + "name": "WorkerSizeOptions", + "modelAsString": false + } + }, + "workerSizeId": { + "format": "int32", + "description": "Size ID of machines: \n0 - Small\n1 - Medium\n2 - Large", + "type": "integer" + }, + "excludeFromCapacityAllocation": { + "description": "If true, it includes basic apps.\nBasic apps are not used for capacity allocation.", + "type": "boolean" + }, + "isApplicableForAllComputeModes": { + "description": "true if capacity is applicable for all apps; otherwise, false.", + "type": "boolean" + }, + "siteMode": { + "description": "Shared or Dedicated.", + "type": "string" + }, + "isLinux": { + "description": "Is this a linux stamp capacity", + "type": "boolean" + } + } + }, + "StampCapacityCollection": { + "description": "Collection of stamp capacities.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/StampCapacity" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "Usage": { + "description": "Usage of the quota resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "Usage resource specific properties", + "properties": { + "displayName": { + "description": "Friendly name shown in the UI.", + "type": "string", + "readOnly": true + }, + "resourceName": { + "description": "Name of the quota resource.", + "type": "string", + "readOnly": true + }, + "unit": { + "description": "Units of measurement for the quota resource.", + "type": "string", + "readOnly": true + }, + "currentValue": { + "format": "int64", + "description": "The current value of the resource counter.", + "type": "integer", + "readOnly": true + }, + "limit": { + "format": "int64", + "description": "The resource limit.", + "type": "integer", + "readOnly": true + }, + "nextResetTime": { + "format": "date-time", + "description": "Next reset time for the resource counter.", + "type": "string", + "readOnly": true + }, + "computeMode": { + "description": "Compute mode used for this usage.", + "enum": [ + "Shared", + "Dedicated", + "Dynamic" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ComputeModeOptions", + "modelAsString": false + } + }, + "siteMode": { + "description": "Site mode used for this usage.", + "type": "string", + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "UsageCollection": { + "description": "Collection of usages.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/Usage" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "VirtualIPMapping": { + "description": "Virtual IP mapping.", + "type": "object", + "properties": { + "virtualIP": { + "description": "Virtual IP address.", + "type": "string" + }, + "internalHttpPort": { + "format": "int32", + "description": "Internal HTTP port.", + "type": "integer" + }, + "internalHttpsPort": { + "format": "int32", + "description": "Internal HTTPS port.", + "type": "integer" + }, + "inUse": { + "description": "Is virtual IP mapping in use.", + "type": "boolean" + }, + "serviceName": { + "description": "name of the service that virtual IP is assigned to", + "type": "string" + } + } + }, + "WorkerPool": { + "description": "Worker pool of an App Service Environment.", + "type": "object", + "properties": { + "workerSizeId": { + "format": "int32", + "description": "Worker size ID for referencing this worker pool.", + "type": "integer" + }, + "computeMode": { + "description": "Shared or dedicated app hosting.", + "enum": [ + "Shared", + "Dedicated", + "Dynamic" + ], + "type": "string", + "x-ms-enum": { + "name": "ComputeModeOptions", + "modelAsString": false + } + }, + "workerSize": { + "description": "VM size of the worker pool instances.", + "type": "string" + }, + "workerCount": { + "format": "int32", + "description": "Number of instances in the worker pool.", + "type": "integer" + }, + "instanceNames": { + "description": "Names of all instances in the worker pool (read only).", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + } + } + }, + "WorkerPoolCollection": { + "description": "Collection of worker pools.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/WorkerPoolResource" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "WorkerPoolResource": { + "description": "Worker pool of an App Service Environment ARM resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/WorkerPool", + "description": "Core resource properties", + "x-ms-client-flatten": true + }, + "sku": { + "$ref": "./CommonDefinitions.json#/definitions/SkuDescription" + } + } + } + }, + "parameters": { + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Your Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).", + "required": true, + "type": "string" + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "Name of the resource group to which the resource belongs.", + "required": true, + "type": "string", + "maxLength": 90, + "minLength": 1, + "pattern": "^[-\\w\\._\\(\\)]+[^\\.]$", + "x-ms-parameter-location": "method" + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "API Version", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/AppServicePlans.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/AppServicePlans.json new file mode 100644 index 000000000000..4828e0d32f81 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/AppServicePlans.json @@ -0,0 +1,1748 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-12-01", + "title": "AppServicePlans API Client" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Web/serverfarms": { + "get": { + "tags": [ + "AppServicePlans" + ], + "summary": "Get all App Service plans for a subscription.", + "description": "Description for Get all App Service plans for a subscription.", + "operationId": "AppServicePlans_List", + "parameters": [ + { + "name": "detailed", + "in": "query", + "description": "Specify true to return all App Service plan properties. The default is false, which returns a subset of the properties.\n Retrieval of all properties may increase the API latency.", + "type": "boolean" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/AppServicePlanCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List App Service plans": { + "$ref": "./examples/ListAppServicePlans.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/serverfarms": { + "get": { + "tags": [ + "AppServicePlans" + ], + "summary": "Get all App Service plans in a resource group.", + "description": "Description for Get all App Service plans in a resource group.", + "operationId": "AppServicePlans_ListByResourceGroup", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/AppServicePlanCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List App Service plans by resource group": { + "$ref": "./examples/ListAppServicePlansByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/serverfarms/{name}": { + "get": { + "tags": [ + "AppServicePlans" + ], + "summary": "Get an App Service plan.", + "description": "Description for Get an App Service plan.", + "operationId": "AppServicePlans_Get", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service plan.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/AppServicePlan" + } + }, + "404": { + "description": "Not found." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get App Service plan": { + "$ref": "./examples/GetAppServicePlan.json" + } + } + }, + "put": { + "tags": [ + "AppServicePlans" + ], + "summary": "Creates or updates an App Service Plan.", + "description": "Description for Creates or updates an App Service Plan.", + "operationId": "AppServicePlans_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service plan.", + "required": true, + "type": "string" + }, + { + "name": "appServicePlan", + "in": "body", + "description": "Details of the App Service plan.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/AppServicePlan" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/AppServicePlan" + } + }, + "202": { + "description": "Operation is in progress.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/AppServicePlan" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Create Or Update App Service plan": { + "$ref": "./examples/CreateOrUpdateAppServicePlan.json" + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "AppServicePlans" + ], + "summary": "Delete an App Service plan.", + "description": "Description for Delete an App Service plan.", + "operationId": "AppServicePlans_Delete", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service plan.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "204": { + "description": "OK." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete App Service plan": { + "$ref": "./examples/DeleteAppServicePlan.json" + } + } + }, + "patch": { + "tags": [ + "AppServicePlans" + ], + "summary": "Creates or updates an App Service Plan.", + "description": "Description for Creates or updates an App Service Plan.", + "operationId": "AppServicePlans_Update", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service plan.", + "required": true, + "type": "string" + }, + { + "name": "appServicePlan", + "in": "body", + "description": "Details of the App Service plan.", + "required": true, + "schema": { + "$ref": "#/definitions/AppServicePlanPatchResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/AppServicePlan" + } + }, + "202": { + "description": "Operation is in progress.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/AppServicePlan" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Patch Service plan": { + "$ref": "./examples/PatchAppServicePlan.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/serverfarms/{name}/capabilities": { + "get": { + "tags": [ + "AppServicePlans" + ], + "summary": "List all capabilities of an App Service plan.", + "description": "Description for List all capabilities of an App Service plan.", + "operationId": "AppServicePlans_ListCapabilities", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service plan.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "./CommonDefinitions.json#/definitions/Capability" + } + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/serverfarms/{name}/hybridConnectionNamespaces/{namespaceName}/relays/{relayName}": { + "get": { + "tags": [ + "AppServicePlans" + ], + "summary": "Retrieve a Hybrid Connection in use in an App Service plan.", + "description": "Description for Retrieve a Hybrid Connection in use in an App Service plan.", + "operationId": "AppServicePlans_GetHybridConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service plan.", + "required": true, + "type": "string" + }, + { + "name": "namespaceName", + "in": "path", + "description": "Name of the Service Bus namespace.", + "required": true, + "type": "string" + }, + { + "name": "relayName", + "in": "path", + "description": "Name of the Service Bus relay.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/HybridConnection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "AppServicePlans" + ], + "summary": "Delete a Hybrid Connection in use in an App Service plan.", + "description": "Description for Delete a Hybrid Connection in use in an App Service plan.", + "operationId": "AppServicePlans_DeleteHybridConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service plan.", + "required": true, + "type": "string" + }, + { + "name": "namespaceName", + "in": "path", + "description": "Name of the Service Bus namespace.", + "required": true, + "type": "string" + }, + { + "name": "relayName", + "in": "path", + "description": "Name of the Service Bus relay.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted hybrid connection" + }, + "204": { + "description": "Hybrid connection does not exist" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/serverfarms/{name}/hybridConnectionNamespaces/{namespaceName}/relays/{relayName}/listKeys": { + "post": { + "tags": [ + "AppServicePlans" + ], + "summary": "Get the send key name and value of a Hybrid Connection.", + "description": "Description for Get the send key name and value of a Hybrid Connection.", + "operationId": "AppServicePlans_ListHybridConnectionKeys", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service plan.", + "required": true, + "type": "string" + }, + { + "name": "namespaceName", + "in": "path", + "description": "The name of the Service Bus namespace.", + "required": true, + "type": "string" + }, + { + "name": "relayName", + "in": "path", + "description": "The name of the Service Bus relay.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/HybridConnectionKey" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/serverfarms/{name}/hybridConnectionNamespaces/{namespaceName}/relays/{relayName}/sites": { + "get": { + "tags": [ + "AppServicePlans" + ], + "summary": "Get all apps that use a Hybrid Connection in an App Service Plan.", + "description": "Description for Get all apps that use a Hybrid Connection in an App Service Plan.", + "operationId": "AppServicePlans_ListWebAppsByHybridConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service plan.", + "required": true, + "type": "string" + }, + { + "name": "namespaceName", + "in": "path", + "description": "Name of the Hybrid Connection namespace.", + "required": true, + "type": "string" + }, + { + "name": "relayName", + "in": "path", + "description": "Name of the Hybrid Connection relay.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ResourceCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/serverfarms/{name}/hybridConnectionPlanLimits/limit": { + "get": { + "tags": [ + "AppServicePlans" + ], + "summary": "Get the maximum number of Hybrid Connections allowed in an App Service plan.", + "description": "Description for Get the maximum number of Hybrid Connections allowed in an App Service plan.", + "operationId": "AppServicePlans_GetHybridConnectionPlanLimit", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service plan.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/HybridConnectionLimits" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/serverfarms/{name}/hybridConnectionRelays": { + "get": { + "tags": [ + "AppServicePlans" + ], + "summary": "Retrieve all Hybrid Connections in use in an App Service plan.", + "description": "Description for Retrieve all Hybrid Connections in use in an App Service plan.", + "operationId": "AppServicePlans_ListHybridConnections", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service plan.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/HybridConnectionCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/serverfarms/{name}/restartSites": { + "post": { + "tags": [ + "AppServicePlans" + ], + "summary": "Restart all apps in an App Service plan.", + "description": "Description for Restart all apps in an App Service plan.", + "operationId": "AppServicePlans_RestartWebApps", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service plan.", + "required": true, + "type": "string" + }, + { + "name": "softRestart", + "in": "query", + "description": "Specify true to perform a soft restart, applies the configuration settings and restarts the apps if necessary. The default is false, which always restarts and reprovisions the apps", + "type": "boolean" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/serverfarms/{name}/sites": { + "get": { + "tags": [ + "AppServicePlans" + ], + "summary": "Get all apps associated with an App Service plan.", + "description": "Description for Get all apps associated with an App Service plan.", + "operationId": "AppServicePlans_ListWebApps", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service plan.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$skipToken", + "in": "query", + "description": "Skip to a web app in the list of webapps associated with app service plan. If specified, the resulting list will contain web apps starting from (including) the skipToken. Otherwise, the resulting list contains web apps from the start of the list", + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "Supported filter: $filter=state eq running. Returns only web apps that are currently running", + "type": "string", + "x-ms-skip-url-encoding": true + }, + { + "name": "$top", + "in": "query", + "description": "List page size. If specified, results are paged.", + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/WebAppCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/serverfarms/{name}/skus": { + "get": { + "tags": [ + "AppServicePlans" + ], + "summary": "Gets all selectable SKUs for a given App Service Plan", + "description": "Description for Gets all selectable SKUs for a given App Service Plan", + "operationId": "AppServicePlans_GetServerFarmSkus", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of App Service Plan", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "object" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/serverfarms/{name}/usages": { + "get": { + "tags": [ + "AppServicePlans" + ], + "summary": "Gets server farm usage information", + "description": "Description for Gets server farm usage information", + "operationId": "AppServicePlans_ListUsages", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of App Service Plan", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$filter", + "in": "query", + "description": "Return only usages/metrics specified in the filter. Filter conforms to odata syntax. Example: $filter=(name.value eq 'Metric1' or name.value eq 'Metric2').", + "type": "string", + "x-ms-skip-url-encoding": true + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/CsmUsageQuotaCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/serverfarms/{name}/virtualNetworkConnections": { + "get": { + "tags": [ + "AppServicePlans" + ], + "summary": "Get all Virtual Networks associated with an App Service plan.", + "description": "Description for Get all Virtual Networks associated with an App Service plan.", + "operationId": "AppServicePlans_ListVnets", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service plan.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "./CommonDefinitions.json#/definitions/VnetInfo" + } + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/serverfarms/{name}/virtualNetworkConnections/{vnetName}": { + "get": { + "tags": [ + "AppServicePlans" + ], + "summary": "Get a Virtual Network associated with an App Service plan.", + "description": "Description for Get a Virtual Network associated with an App Service plan.", + "operationId": "AppServicePlans_GetVnetFromServerFarm", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service plan.", + "required": true, + "type": "string" + }, + { + "name": "vnetName", + "in": "path", + "description": "Name of the Virtual Network.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetInfo" + } + }, + "404": { + "description": "Virtual network could not be found." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/serverfarms/{name}/virtualNetworkConnections/{vnetName}/gateways/{gatewayName}": { + "get": { + "tags": [ + "AppServicePlans" + ], + "summary": "Get a Virtual Network gateway.", + "description": "Description for Get a Virtual Network gateway.", + "operationId": "AppServicePlans_GetVnetGateway", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service plan.", + "required": true, + "type": "string" + }, + { + "name": "vnetName", + "in": "path", + "description": "Name of the Virtual Network.", + "required": true, + "type": "string" + }, + { + "name": "gatewayName", + "in": "path", + "description": "Name of the gateway. Only the 'primary' gateway is supported.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetGateway" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "AppServicePlans" + ], + "summary": "Update a Virtual Network gateway.", + "description": "Description for Update a Virtual Network gateway.", + "operationId": "AppServicePlans_UpdateVnetGateway", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service plan.", + "required": true, + "type": "string" + }, + { + "name": "vnetName", + "in": "path", + "description": "Name of the Virtual Network.", + "required": true, + "type": "string" + }, + { + "name": "gatewayName", + "in": "path", + "description": "Name of the gateway. Only the 'primary' gateway is supported.", + "required": true, + "type": "string" + }, + { + "name": "connectionEnvelope", + "in": "body", + "description": "Definition of the gateway.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetGateway" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetGateway" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/serverfarms/{name}/virtualNetworkConnections/{vnetName}/routes": { + "get": { + "tags": [ + "AppServicePlans" + ], + "summary": "Get all routes that are associated with a Virtual Network in an App Service plan.", + "description": "Description for Get all routes that are associated with a Virtual Network in an App Service plan.", + "operationId": "AppServicePlans_ListRoutesForVnet", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service plan.", + "required": true, + "type": "string" + }, + { + "name": "vnetName", + "in": "path", + "description": "Name of the Virtual Network.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "./CommonDefinitions.json#/definitions/VnetRoute" + } + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/serverfarms/{name}/virtualNetworkConnections/{vnetName}/routes/{routeName}": { + "get": { + "tags": [ + "AppServicePlans" + ], + "summary": "Get a Virtual Network route in an App Service plan.", + "description": "Description for Get a Virtual Network route in an App Service plan.", + "operationId": "AppServicePlans_GetRouteForVnet", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service plan.", + "required": true, + "type": "string" + }, + { + "name": "vnetName", + "in": "path", + "description": "Name of the Virtual Network.", + "required": true, + "type": "string" + }, + { + "name": "routeName", + "in": "path", + "description": "Name of the Virtual Network route.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "type": "array", + "items": { + "$ref": "./CommonDefinitions.json#/definitions/VnetRoute" + } + } + }, + "404": { + "description": "Specified route does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "AppServicePlans" + ], + "summary": "Create or update a Virtual Network route in an App Service plan.", + "description": "Description for Create or update a Virtual Network route in an App Service plan.", + "operationId": "AppServicePlans_CreateOrUpdateVnetRoute", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service plan.", + "required": true, + "type": "string" + }, + { + "name": "vnetName", + "in": "path", + "description": "Name of the Virtual Network.", + "required": true, + "type": "string" + }, + { + "name": "routeName", + "in": "path", + "description": "Name of the Virtual Network route.", + "required": true, + "type": "string" + }, + { + "name": "route", + "in": "body", + "description": "Definition of the Virtual Network route.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetRoute" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetRoute" + } + }, + "400": { + "description": "Invalid request. Ensure that required parameters are given, and that addresses and address spaces are valid." + }, + "404": { + "description": "Route not found." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "AppServicePlans" + ], + "summary": "Delete a Virtual Network route in an App Service plan.", + "description": "Description for Delete a Virtual Network route in an App Service plan.", + "operationId": "AppServicePlans_DeleteVnetRoute", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service plan.", + "required": true, + "type": "string" + }, + { + "name": "vnetName", + "in": "path", + "description": "Name of the Virtual Network.", + "required": true, + "type": "string" + }, + { + "name": "routeName", + "in": "path", + "description": "Name of the Virtual Network route.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted Virtual Network route." + }, + "404": { + "description": "Specified Virtual Network route does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "AppServicePlans" + ], + "summary": "Create or update a Virtual Network route in an App Service plan.", + "description": "Description for Create or update a Virtual Network route in an App Service plan.", + "operationId": "AppServicePlans_UpdateVnetRoute", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service plan.", + "required": true, + "type": "string" + }, + { + "name": "vnetName", + "in": "path", + "description": "Name of the Virtual Network.", + "required": true, + "type": "string" + }, + { + "name": "routeName", + "in": "path", + "description": "Name of the Virtual Network route.", + "required": true, + "type": "string" + }, + { + "name": "route", + "in": "body", + "description": "Definition of the Virtual Network route.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetRoute" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetRoute" + } + }, + "400": { + "description": "Invalid request. Ensure that required parameters are given, and that addresses and address spaces are valid." + }, + "404": { + "description": "Route not found." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/serverfarms/{name}/workers/{workerName}/reboot": { + "post": { + "tags": [ + "AppServicePlans" + ], + "summary": "Reboot a worker machine in an App Service plan.", + "description": "Description for Reboot a worker machine in an App Service plan.", + "operationId": "AppServicePlans_RebootWorker", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service plan.", + "required": true, + "type": "string" + }, + { + "name": "workerName", + "in": "path", + "description": "Name of worker machine, which typically starts with RD.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + } + }, + "definitions": { + "AppServicePlanPatchResource": { + "description": "ARM resource for a app service plan.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "AppServicePlanPatchResource resource specific properties", + "properties": { + "workerTierName": { + "description": "Target worker tier assigned to the App Service plan.", + "type": "string" + }, + "status": { + "description": "App Service plan status.", + "enum": [ + "Ready", + "Pending", + "Creating" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "StatusOptions", + "modelAsString": false + } + }, + "subscription": { + "description": "App Service plan subscription.", + "type": "string", + "readOnly": true + }, + "hostingEnvironmentProfile": { + "$ref": "./CommonDefinitions.json#/definitions/HostingEnvironmentProfile", + "description": "Specification for the App Service Environment to use for the App Service plan.", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "maximumNumberOfWorkers": { + "format": "int32", + "description": "Maximum number of instances that can be assigned to this App Service plan.", + "type": "integer", + "readOnly": true + }, + "geoRegion": { + "description": "Geographical location for the App Service plan.", + "type": "string", + "readOnly": true + }, + "perSiteScaling": { + "description": "If true, apps assigned to this App Service plan can be scaled independently.\nIf false, apps assigned to this App Service plan will scale to all instances of the plan.", + "default": false, + "type": "boolean" + }, + "maximumElasticWorkerCount": { + "format": "int32", + "description": "Maximum number of total workers allowed for this ElasticScaleEnabled App Service Plan", + "type": "integer" + }, + "numberOfSites": { + "format": "int32", + "description": "Number of apps assigned to this App Service plan.", + "type": "integer", + "readOnly": true + }, + "isSpot": { + "description": "If true, this App Service Plan owns spot instances.", + "type": "boolean" + }, + "spotExpirationTime": { + "format": "date-time", + "description": "The time when the server farm expires. Valid only if it is a spot server farm.", + "type": "string" + }, + "freeOfferExpirationTime": { + "format": "date-time", + "description": "The time when the server farm free offer expires.", + "type": "string" + }, + "resourceGroup": { + "description": "Resource group of the App Service plan.", + "type": "string", + "readOnly": true + }, + "reserved": { + "description": "If Linux app service plan true, false otherwise.", + "default": false, + "type": "boolean", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "isXenon": { + "description": "Obsolete: If Hyper-V container app service plan true, false otherwise.", + "default": false, + "type": "boolean", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "hyperV": { + "description": "If Hyper-V container app service plan true, false otherwise.", + "default": false, + "type": "boolean", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "targetWorkerCount": { + "format": "int32", + "description": "Scaling worker count.", + "type": "integer" + }, + "targetWorkerSizeId": { + "format": "int32", + "description": "Scaling worker size ID.", + "type": "integer" + }, + "provisioningState": { + "description": "Provisioning state of the App Service Plan.", + "enum": [ + "Succeeded", + "Failed", + "Canceled", + "InProgress", + "Deleting" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": false + } + }, + "kubeEnvironmentProfile": { + "$ref": "./CommonDefinitions.json#/definitions/KubeEnvironmentProfile", + "description": "Specification for the Kubernetes Environment to use for the App Service plan." + } + }, + "x-ms-client-flatten": true + } + } + }, + "HybridConnectionCollection": { + "description": "Collection of hostname bindings.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "./CommonDefinitions.json#/definitions/HybridConnection" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "HybridConnectionKey": { + "description": "Hybrid Connection key contract. This has the send key name and value for a Hybrid Connection.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "HybridConnectionKey resource specific properties", + "properties": { + "sendKeyName": { + "description": "The name of the send key.", + "type": "string", + "readOnly": true + }, + "sendKeyValue": { + "description": "The value of the send key.", + "type": "string", + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "HybridConnectionLimits": { + "description": "Hybrid Connection limits contract. This is used to return the plan limits of Hybrid Connections.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "HybridConnectionLimits resource specific properties", + "properties": { + "current": { + "format": "int32", + "description": "The current number of Hybrid Connections.", + "type": "integer", + "readOnly": true + }, + "maximum": { + "format": "int32", + "description": "The maximum number of Hybrid Connections allowed.", + "type": "integer", + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "ResourceCollection": { + "description": "Collection of resources.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "type": "string" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Your Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).", + "required": true, + "type": "string" + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "Name of the resource group to which the resource belongs.", + "required": true, + "type": "string", + "maxLength": 90, + "minLength": 1, + "pattern": "^[-\\w\\._\\(\\)]+[^\\.]$", + "x-ms-parameter-location": "method" + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "API Version", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/Certificates.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/Certificates.json new file mode 100644 index 000000000000..2f2b6b0b03e2 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/Certificates.json @@ -0,0 +1,659 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-12-01", + "title": "Certificates API Client" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Web/certificates": { + "get": { + "tags": [ + "Certificates" + ], + "summary": "Get all certificates for a subscription.", + "description": "Description for Get all certificates for a subscription.", + "operationId": "Certificates_List", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$filter", + "in": "query", + "description": "Return only information specified in the filter (using OData syntax). For example: $filter=KeyVaultId eq 'KeyVaultId'", + "type": "string", + "x-ms-skip-url-encoding": true + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CertificateCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List Certificates for subscription": { + "$ref": "./examples/ListCertificates.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/certificates": { + "get": { + "tags": [ + "Certificates" + ], + "summary": "Get all certificates in a resource group.", + "description": "Description for Get all certificates in a resource group.", + "operationId": "Certificates_ListByResourceGroup", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/CertificateCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List Certificates by resource group": { + "$ref": "./examples/ListCertificatesByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/certificates/{name}": { + "get": { + "tags": [ + "Certificates" + ], + "summary": "Get a certificate.", + "description": "Description for Get a certificate.", + "operationId": "Certificates_Get", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the certificate.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Certificate" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Certificate": { + "$ref": "./examples/GetCertificate.json" + } + } + }, + "put": { + "tags": [ + "Certificates" + ], + "summary": "Create or update a certificate.", + "description": "Description for Create or update a certificate.", + "operationId": "Certificates_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the certificate.", + "required": true, + "type": "string" + }, + { + "name": "certificateEnvelope", + "in": "body", + "description": "Details of certificate, if it exists already.", + "required": true, + "schema": { + "$ref": "#/definitions/Certificate" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/Certificate" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Create Or Update Certificate": { + "$ref": "./examples/CreateOrUpdateCertificate.json" + } + } + }, + "delete": { + "tags": [ + "Certificates" + ], + "summary": "Delete a certificate.", + "description": "Description for Delete a certificate.", + "operationId": "Certificates_Delete", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the certificate.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted certificate." + }, + "204": { + "description": "Certificate does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete Certificate": { + "$ref": "./examples/DeleteCertificate.json" + } + } + }, + "patch": { + "tags": [ + "Certificates" + ], + "summary": "Create or update a certificate.", + "description": "Description for Create or update a certificate.", + "operationId": "Certificates_Update", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the certificate.", + "required": true, + "type": "string" + }, + { + "name": "certificateEnvelope", + "in": "body", + "description": "Details of certificate, if it exists already.", + "required": true, + "schema": { + "$ref": "#/definitions/CertificatePatchResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/Certificate" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Patch Certificate": { + "$ref": "./examples/PatchCertificate.json" + } + } + } + } + }, + "definitions": { + "Certificate": { + "description": "SSL certificate for an app.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "Certificate resource specific properties", + "properties": { + "password": { + "description": "Certificate password.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "friendlyName": { + "description": "Friendly name of the certificate.", + "type": "string", + "readOnly": true + }, + "subjectName": { + "description": "Subject name of the certificate.", + "type": "string", + "readOnly": true + }, + "hostNames": { + "description": "Host names the certificate applies to.", + "type": "array", + "items": { + "type": "string" + } + }, + "pfxBlob": { + "format": "byte", + "description": "Pfx blob.", + "type": "string" + }, + "siteName": { + "description": "App name.", + "type": "string", + "readOnly": true + }, + "selfLink": { + "description": "Self link.", + "type": "string", + "readOnly": true + }, + "issuer": { + "description": "Certificate issuer.", + "type": "string", + "readOnly": true + }, + "issueDate": { + "format": "date-time", + "description": "Certificate issue Date.", + "type": "string", + "readOnly": true + }, + "expirationDate": { + "format": "date-time", + "description": "Certificate expiration date.", + "type": "string", + "readOnly": true + }, + "thumbprint": { + "description": "Certificate thumbprint.", + "type": "string", + "readOnly": true + }, + "valid": { + "description": "Is the certificate valid?.", + "type": "boolean", + "readOnly": true + }, + "cerBlob": { + "format": "byte", + "description": "Raw bytes of .cer file", + "type": "string", + "readOnly": true + }, + "publicKeyHash": { + "description": "Public key hash.", + "type": "string", + "readOnly": true + }, + "hostingEnvironmentProfile": { + "$ref": "./CommonDefinitions.json#/definitions/HostingEnvironmentProfile", + "description": "Specification for the App Service Environment to use for the certificate.", + "readOnly": true + }, + "keyVaultId": { + "description": "Key Vault Csm resource Id.", + "type": "string" + }, + "keyVaultSecretName": { + "description": "Key Vault secret name.", + "type": "string" + }, + "keyVaultSecretStatus": { + "description": "Status of the Key Vault secret.", + "enum": [ + "Initialized", + "WaitingOnCertificateOrder", + "Succeeded", + "CertificateOrderFailed", + "OperationNotPermittedOnKeyVault", + "AzureServiceUnauthorizedToAccessKeyVault", + "KeyVaultDoesNotExist", + "KeyVaultSecretDoesNotExist", + "UnknownError", + "ExternalPrivateKey", + "Unknown" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "KeyVaultSecretStatus", + "modelAsString": false + } + }, + "serverFarmId": { + "description": "Resource ID of the associated App Service plan, formatted as: \"/subscriptions/{subscriptionID}/resourceGroups/{groupName}/providers/Microsoft.Web/serverfarms/{appServicePlanName}\".", + "type": "string" + }, + "canonicalName": { + "description": "CNAME of the certificate to be issued via free certificate", + "type": "string" + }, + "domainValidationMethod": { + "description": "Method of domain validation for free cert", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "CertificateCollection": { + "description": "Collection of certificates.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/Certificate" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "CertificatePatchResource": { + "description": "ARM resource for a certificate.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "CertificatePatchResource resource specific properties", + "properties": { + "password": { + "description": "Certificate password.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "friendlyName": { + "description": "Friendly name of the certificate.", + "type": "string", + "readOnly": true + }, + "subjectName": { + "description": "Subject name of the certificate.", + "type": "string", + "readOnly": true + }, + "hostNames": { + "description": "Host names the certificate applies to.", + "type": "array", + "items": { + "type": "string" + } + }, + "pfxBlob": { + "format": "byte", + "description": "Pfx blob.", + "type": "string" + }, + "siteName": { + "description": "App name.", + "type": "string", + "readOnly": true + }, + "selfLink": { + "description": "Self link.", + "type": "string", + "readOnly": true + }, + "issuer": { + "description": "Certificate issuer.", + "type": "string", + "readOnly": true + }, + "issueDate": { + "format": "date-time", + "description": "Certificate issue Date.", + "type": "string", + "readOnly": true + }, + "expirationDate": { + "format": "date-time", + "description": "Certificate expiration date.", + "type": "string", + "readOnly": true + }, + "thumbprint": { + "description": "Certificate thumbprint.", + "type": "string", + "readOnly": true + }, + "valid": { + "description": "Is the certificate valid?.", + "type": "boolean", + "readOnly": true + }, + "cerBlob": { + "format": "byte", + "description": "Raw bytes of .cer file", + "type": "string", + "readOnly": true + }, + "publicKeyHash": { + "description": "Public key hash.", + "type": "string", + "readOnly": true + }, + "hostingEnvironmentProfile": { + "$ref": "./CommonDefinitions.json#/definitions/HostingEnvironmentProfile", + "description": "Specification for the App Service Environment to use for the certificate.", + "readOnly": true + }, + "keyVaultId": { + "description": "Key Vault Csm resource Id.", + "type": "string" + }, + "keyVaultSecretName": { + "description": "Key Vault secret name.", + "type": "string" + }, + "keyVaultSecretStatus": { + "description": "Status of the Key Vault secret.", + "enum": [ + "Initialized", + "WaitingOnCertificateOrder", + "Succeeded", + "CertificateOrderFailed", + "OperationNotPermittedOnKeyVault", + "AzureServiceUnauthorizedToAccessKeyVault", + "KeyVaultDoesNotExist", + "KeyVaultSecretDoesNotExist", + "UnknownError", + "ExternalPrivateKey", + "Unknown" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "KeyVaultSecretStatus", + "modelAsString": false + } + }, + "serverFarmId": { + "description": "Resource ID of the associated App Service plan, formatted as: \"/subscriptions/{subscriptionID}/resourceGroups/{groupName}/providers/Microsoft.Web/serverfarms/{appServicePlanName}\".", + "type": "string" + }, + "canonicalName": { + "description": "CNAME of the certificate to be issued via free certificate", + "type": "string" + }, + "domainValidationMethod": { + "description": "Method of domain validation for free cert", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + } + }, + "parameters": { + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Your Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).", + "required": true, + "type": "string" + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "Name of the resource group to which the resource belongs.", + "required": true, + "type": "string", + "maxLength": 90, + "minLength": 1, + "pattern": "^[-\\w\\._\\(\\)]+[^\\.]$", + "x-ms-parameter-location": "method" + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "API Version", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/CommonDefinitions.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/CommonDefinitions.json new file mode 100644 index 000000000000..7960225ebc93 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/CommonDefinitions.json @@ -0,0 +1,3337 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-12-01", + "title": "Common Definitions" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": {}, + "definitions": { + "ApiDefinitionInfo": { + "description": "Information about the formal API definition for the app.", + "type": "object", + "properties": { + "url": { + "description": "The URL of the API definition.", + "type": "string" + } + } + }, + "ApiManagementConfig": { + "description": "Azure API management (APIM) configuration linked to the app.", + "type": "object", + "properties": { + "id": { + "description": "APIM-Api Identifier.", + "type": "string" + } + } + }, + "AppServiceEnvironment": { + "description": "Description of an App Service Environment.", + "required": [ + "virtualNetwork" + ], + "type": "object", + "properties": { + "provisioningState": { + "description": "Provisioning state of the App Service Environment.", + "enum": [ + "Succeeded", + "Failed", + "Canceled", + "InProgress", + "Deleting" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": false + } + }, + "status": { + "description": "Current status of the App Service Environment.", + "enum": [ + "Preparing", + "Ready", + "Scaling", + "Deleting" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "HostingEnvironmentStatus", + "modelAsString": false + } + }, + "virtualNetwork": { + "$ref": "#/definitions/VirtualNetworkProfile", + "description": "Description of the Virtual Network." + }, + "internalLoadBalancingMode": { + "description": "Specifies which endpoints to serve internally in the Virtual Network for the App Service Environment.", + "enum": [ + "None", + "Web", + "Publishing", + "Web, Publishing" + ], + "type": "string", + "x-ms-enum": { + "name": "LoadBalancingMode", + "modelAsString": true + } + }, + "multiSize": { + "description": "Front-end VM size, e.g. \"Medium\", \"Large\".", + "type": "string" + }, + "multiRoleCount": { + "format": "int32", + "description": "Number of front-end instances.", + "type": "integer", + "readOnly": true + }, + "ipsslAddressCount": { + "format": "int32", + "description": "Number of IP SSL addresses reserved for the App Service Environment.", + "type": "integer" + }, + "dnsSuffix": { + "description": "DNS suffix of the App Service Environment.", + "type": "string" + }, + "maximumNumberOfMachines": { + "format": "int32", + "description": "Maximum number of VMs in the App Service Environment.", + "type": "integer", + "readOnly": true + }, + "frontEndScaleFactor": { + "format": "int32", + "description": "Scale factor for front-ends.", + "type": "integer" + }, + "suspended": { + "description": "true if the App Service Environment is suspended; otherwise, false. The environment can be suspended, e.g. when the management endpoint is no longer available\n (most likely because NSG blocked the incoming traffic).", + "type": "boolean", + "readOnly": true + }, + "clusterSettings": { + "description": "Custom settings for changing the behavior of the App Service Environment.", + "type": "array", + "items": { + "$ref": "#/definitions/NameValuePair" + } + }, + "userWhitelistedIpRanges": { + "description": "User added ip ranges to whitelist on ASE db", + "type": "array", + "items": { + "type": "string" + } + }, + "hasLinuxWorkers": { + "description": "Flag that displays whether an ASE has linux workers or not", + "type": "boolean", + "readOnly": true + }, + "dedicatedHostCount": { + "format": "int32", + "description": "Dedicated Host Count", + "type": "integer", + "readOnly": true + } + } + }, + "AppServicePlan": { + "description": "App Service plan.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "AppServicePlan resource specific properties", + "properties": { + "workerTierName": { + "description": "Target worker tier assigned to the App Service plan.", + "type": "string" + }, + "status": { + "description": "App Service plan status.", + "enum": [ + "Ready", + "Pending", + "Creating" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "StatusOptions", + "modelAsString": false + } + }, + "subscription": { + "description": "App Service plan subscription.", + "type": "string", + "readOnly": true + }, + "hostingEnvironmentProfile": { + "$ref": "#/definitions/HostingEnvironmentProfile", + "description": "Specification for the App Service Environment to use for the App Service plan.", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "maximumNumberOfWorkers": { + "format": "int32", + "description": "Maximum number of instances that can be assigned to this App Service plan.", + "type": "integer", + "readOnly": true + }, + "geoRegion": { + "description": "Geographical location for the App Service plan.", + "type": "string", + "readOnly": true + }, + "perSiteScaling": { + "description": "If true, apps assigned to this App Service plan can be scaled independently.\nIf false, apps assigned to this App Service plan will scale to all instances of the plan.", + "default": false, + "type": "boolean" + }, + "maximumElasticWorkerCount": { + "format": "int32", + "description": "Maximum number of total workers allowed for this ElasticScaleEnabled App Service Plan", + "type": "integer" + }, + "numberOfSites": { + "format": "int32", + "description": "Number of apps assigned to this App Service plan.", + "type": "integer", + "readOnly": true + }, + "isSpot": { + "description": "If true, this App Service Plan owns spot instances.", + "type": "boolean" + }, + "spotExpirationTime": { + "format": "date-time", + "description": "The time when the server farm expires. Valid only if it is a spot server farm.", + "type": "string" + }, + "freeOfferExpirationTime": { + "format": "date-time", + "description": "The time when the server farm free offer expires.", + "type": "string" + }, + "resourceGroup": { + "description": "Resource group of the App Service plan.", + "type": "string", + "readOnly": true + }, + "reserved": { + "description": "If Linux app service plan true, false otherwise.", + "default": false, + "type": "boolean", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "isXenon": { + "description": "Obsolete: If Hyper-V container app service plan true, false otherwise.", + "default": false, + "type": "boolean", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "hyperV": { + "description": "If Hyper-V container app service plan true, false otherwise.", + "default": false, + "type": "boolean", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "targetWorkerCount": { + "format": "int32", + "description": "Scaling worker count.", + "type": "integer" + }, + "targetWorkerSizeId": { + "format": "int32", + "description": "Scaling worker size ID.", + "type": "integer" + }, + "provisioningState": { + "description": "Provisioning state of the App Service Plan.", + "enum": [ + "Succeeded", + "Failed", + "Canceled", + "InProgress", + "Deleting" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": false + } + }, + "kubeEnvironmentProfile": { + "$ref": "#/definitions/KubeEnvironmentProfile", + "description": "Specification for the Kubernetes Environment to use for the App Service plan." + } + }, + "x-ms-client-flatten": true + }, + "sku": { + "$ref": "#/definitions/SkuDescription" + } + } + }, + "AppServicePlanCollection": { + "description": "Collection of App Service plans.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/AppServicePlan" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "ArmIdWrapper": { + "description": "A wrapper for an ARM resource id", + "type": "object", + "properties": { + "id": { + "type": "string", + "readOnly": true + } + } + }, + "AutoHealActions": { + "description": "Actions which to take by the auto-heal module when a rule is triggered.", + "type": "object", + "properties": { + "actionType": { + "description": "Predefined action to be taken.", + "enum": [ + "Recycle", + "LogEvent", + "CustomAction" + ], + "type": "string", + "x-ms-enum": { + "name": "AutoHealActionType", + "modelAsString": false + } + }, + "customAction": { + "$ref": "#/definitions/AutoHealCustomAction", + "description": "Custom action to be taken." + }, + "minProcessExecutionTime": { + "description": "Minimum time the process must execute\nbefore taking the action", + "type": "string" + } + } + }, + "AutoHealCustomAction": { + "description": "Custom action to be executed\nwhen an auto heal rule is triggered.", + "type": "object", + "properties": { + "exe": { + "description": "Executable to be run.", + "type": "string" + }, + "parameters": { + "description": "Parameters for the executable.", + "type": "string" + } + } + }, + "AutoHealRules": { + "description": "Rules that can be defined for auto-heal.", + "type": "object", + "properties": { + "triggers": { + "$ref": "#/definitions/AutoHealTriggers", + "description": "Conditions that describe when to execute the auto-heal actions." + }, + "actions": { + "$ref": "#/definitions/AutoHealActions", + "description": "Actions to be executed when a rule is triggered." + } + } + }, + "AutoHealTriggers": { + "description": "Triggers for auto-heal.", + "type": "object", + "properties": { + "requests": { + "$ref": "#/definitions/RequestsBasedTrigger", + "description": "A rule based on total requests." + }, + "privateBytesInKB": { + "format": "int32", + "description": "A rule based on private bytes.", + "type": "integer" + }, + "statusCodes": { + "description": "A rule based on status codes.", + "type": "array", + "items": { + "$ref": "#/definitions/StatusCodesBasedTrigger" + } + }, + "slowRequests": { + "$ref": "#/definitions/SlowRequestsBasedTrigger", + "description": "A rule based on request execution time." + }, + "slowRequestsWithPath": { + "description": "A rule based on multiple Slow Requests Rule with path", + "type": "array", + "items": { + "$ref": "#/definitions/SlowRequestsBasedTrigger" + } + }, + "statusCodesRange": { + "description": "A rule based on status codes ranges.", + "type": "array", + "items": { + "$ref": "#/definitions/StatusCodesRangeBasedTrigger" + } + } + } + }, + "AzureStorageInfoValue": { + "description": "Azure Files or Blob Storage access information value for dictionary storage.", + "type": "object", + "properties": { + "type": { + "description": "Type of storage.", + "enum": [ + "AzureFiles", + "AzureBlob" + ], + "type": "string", + "x-ms-enum": { + "name": "AzureStorageType", + "modelAsString": false + } + }, + "accountName": { + "description": "Name of the storage account.", + "type": "string" + }, + "shareName": { + "description": "Name of the file share (container name, for Blob storage).", + "type": "string" + }, + "accessKey": { + "description": "Access key for the storage account.", + "type": "string", + "x-ms-secret": true + }, + "mountPath": { + "description": "Path to mount the storage within the site's runtime environment.", + "type": "string" + }, + "state": { + "description": "State of the storage account.", + "enum": [ + "Ok", + "InvalidCredentials", + "InvalidShare", + "NotValidated" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "AzureStorageState", + "modelAsString": false + } + } + } + }, + "Capability": { + "description": "Describes the capabilities/features allowed for a specific SKU.", + "type": "object", + "properties": { + "name": { + "description": "Name of the SKU capability.", + "type": "string" + }, + "value": { + "description": "Value of the SKU capability.", + "type": "string" + }, + "reason": { + "description": "Reason of the SKU capability.", + "type": "string" + } + } + }, + "CloningInfo": { + "description": "Information needed for cloning operation.", + "required": [ + "sourceWebAppId" + ], + "type": "object", + "properties": { + "correlationId": { + "format": "uuid", + "description": "Correlation ID of cloning operation. This ID ties multiple cloning operations\ntogether to use the same snapshot.", + "type": "string", + "example": "00000000-0000-0000-0000-000000000000" + }, + "overwrite": { + "description": "true to overwrite destination app; otherwise, false.", + "type": "boolean" + }, + "cloneCustomHostNames": { + "description": "true to clone custom hostnames from source app; otherwise, false.", + "type": "boolean" + }, + "cloneSourceControl": { + "description": "true to clone source control from source app; otherwise, false.", + "type": "boolean" + }, + "sourceWebAppId": { + "description": "ARM resource ID of the source app. App resource ID is of the form \n/subscriptions/{subId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName} for production slots and \n/subscriptions/{subId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/slots/{slotName} for other slots.", + "type": "string" + }, + "sourceWebAppLocation": { + "description": "Location of source app ex: West US or North Europe", + "type": "string" + }, + "hostingEnvironment": { + "description": "App Service Environment.", + "type": "string" + }, + "appSettingsOverrides": { + "description": "Application setting overrides for cloned app. If specified, these settings override the settings cloned \nfrom source app. Otherwise, application settings from source app are retained.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "configureLoadBalancing": { + "description": "true to configure load balancing for source and destination app.", + "type": "boolean" + }, + "trafficManagerProfileId": { + "description": "ARM resource ID of the Traffic Manager profile to use, if it exists. Traffic Manager resource ID is of the form \n/subscriptions/{subId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/trafficManagerProfiles/{profileName}.", + "type": "string" + }, + "trafficManagerProfileName": { + "description": "Name of Traffic Manager profile to create. This is only needed if Traffic Manager profile does not already exist.", + "type": "string" + } + } + }, + "ConnStringInfo": { + "description": "Database connection string information.", + "type": "object", + "properties": { + "name": { + "description": "Name of connection string.", + "type": "string" + }, + "connectionString": { + "description": "Connection string value.", + "type": "string" + }, + "type": { + "description": "Type of database.", + "enum": [ + "MySql", + "SQLServer", + "SQLAzure", + "Custom", + "NotificationHub", + "ServiceBus", + "EventHub", + "ApiHub", + "DocDb", + "RedisCache", + "PostgreSQL" + ], + "type": "string", + "x-ms-enum": { + "name": "ConnectionStringType", + "modelAsString": false + } + } + } + }, + "CorsSettings": { + "description": "Cross-Origin Resource Sharing (CORS) settings for the app.", + "type": "object", + "properties": { + "allowedOrigins": { + "description": "Gets or sets the list of origins that should be allowed to make cross-origin\ncalls (for example: http://example.com:12345). Use \"*\" to allow all.", + "type": "array", + "items": { + "type": "string" + } + }, + "supportCredentials": { + "description": "Gets or sets whether CORS requests with credentials are allowed. See \nhttps://developer.mozilla.org/en-US/docs/Web/HTTP/CORS#Requests_with_credentials\nfor more details.", + "type": "boolean" + } + } + }, + "CsmOperationCollection": { + "description": "Collection of Azure resource manager operation metadata.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/CsmOperationDescription" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "CsmOperationDescription": { + "description": "Description of an operation available for Microsoft.Web resource provider.", + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "display": { + "$ref": "#/definitions/CsmOperationDisplay" + }, + "origin": { + "type": "string" + }, + "properties": { + "$ref": "#/definitions/CsmOperationDescriptionProperties" + } + } + }, + "CsmOperationDescriptionProperties": { + "description": "Properties available for a Microsoft.Web resource provider operation.", + "type": "object", + "properties": { + "serviceSpecification": { + "$ref": "#/definitions/ServiceSpecification" + } + } + }, + "CsmOperationDisplay": { + "description": "Meta data about operation used for display in portal.", + "type": "object", + "properties": { + "provider": { + "type": "string" + }, + "resource": { + "type": "string" + }, + "operation": { + "type": "string" + }, + "description": { + "type": "string" + } + } + }, + "CsmUsageQuota": { + "description": "Usage of the quota resource.", + "type": "object", + "properties": { + "unit": { + "description": "Units of measurement for the quota resource.", + "type": "string" + }, + "nextResetTime": { + "format": "date-time", + "description": "Next reset time for the resource counter.", + "type": "string" + }, + "currentValue": { + "format": "int64", + "description": "The current value of the resource counter.", + "type": "integer" + }, + "limit": { + "format": "int64", + "description": "The resource limit.", + "type": "integer" + }, + "name": { + "$ref": "#/definitions/LocalizableString", + "description": "Quota name." + } + } + }, + "CsmUsageQuotaCollection": { + "description": "Collection of CSM usage quotas.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/CsmUsageQuota" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "DataProviderMetadata": { + "description": "Additional configuration for a data providers", + "type": "object", + "properties": { + "providerName": { + "type": "string" + }, + "propertyBag": { + "description": "Settings for the data provider", + "type": "array", + "items": { + "$ref": "#/definitions/KeyValuePair[String,Object]" + }, + "readOnly": true + } + } + }, + "DataTableResponseColumn": { + "description": "Column definition", + "type": "object", + "properties": { + "columnName": { + "description": "Name of the column", + "type": "string" + }, + "dataType": { + "description": "Data type which looks like 'String' or 'Int32'.", + "type": "string" + }, + "columnType": { + "description": "Column Type", + "type": "string" + } + } + }, + "DataTableResponseObject": { + "description": "Data Table which defines columns and raw row values", + "type": "object", + "properties": { + "tableName": { + "description": "Name of the table", + "type": "string" + }, + "columns": { + "description": "List of columns with data types", + "type": "array", + "items": { + "$ref": "#/definitions/DataTableResponseColumn" + } + }, + "rows": { + "description": "Raw row values", + "type": "array", + "items": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + }, + "DefaultErrorResponse": { + "description": "App Service error response.", + "type": "object", + "properties": { + "error": { + "description": "Error model.", + "type": "object", + "properties": { + "code": { + "description": "Standardized string to programmatically identify the error.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "Detailed error description and debugging information.", + "type": "string", + "readOnly": true + }, + "target": { + "description": "Detailed error description and debugging information.", + "type": "string", + "readOnly": true + }, + "details": { + "type": "array", + "items": { + "description": "Detailed errors.", + "properties": { + "code": { + "description": "Standardized string to programmatically identify the error.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "Detailed error description and debugging information.", + "type": "string", + "readOnly": true + }, + "target": { + "description": "Detailed error description and debugging information.", + "type": "string", + "readOnly": true + } + }, + "readOnly": true + } + }, + "innererror": { + "description": "More information to debug error.", + "type": "string", + "readOnly": true + } + }, + "readOnly": true + } + } + }, + "DeletedSite": { + "description": "A deleted app.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "DeletedSite resource specific properties", + "properties": { + "deletedSiteId": { + "format": "int32", + "description": "Numeric id for the deleted site", + "type": "integer", + "readOnly": true + }, + "deletedTimestamp": { + "description": "Time in UTC when the app was deleted.", + "type": "string", + "readOnly": true + }, + "subscription": { + "description": "Subscription containing the deleted site", + "type": "string", + "readOnly": true + }, + "resourceGroup": { + "description": "ResourceGroup that contained the deleted site", + "type": "string", + "readOnly": true + }, + "deletedSiteName": { + "description": "Name of the deleted site", + "type": "string", + "readOnly": true + }, + "slot": { + "description": "Slot of the deleted site", + "type": "string", + "readOnly": true + }, + "kind": { + "description": "Kind of site that was deleted", + "type": "string", + "readOnly": true + }, + "geoRegionName": { + "description": "Geo Region of the deleted site", + "type": "string", + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "DetectorInfo": { + "description": "Definition of Detector", + "type": "object", + "properties": { + "id": { + "description": "Id of detector", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name of detector", + "type": "string", + "readOnly": true + }, + "description": { + "description": "Short description of the detector and its purpose.", + "type": "string", + "readOnly": true + }, + "author": { + "description": "Author of the detector.", + "type": "string", + "readOnly": true + }, + "category": { + "description": "Problem category. This serves for organizing group for detectors.", + "type": "string", + "readOnly": true + }, + "supportTopicList": { + "description": "List of Support Topics for which this detector is enabled.", + "type": "array", + "items": { + "$ref": "#/definitions/SupportTopic" + }, + "readOnly": true + }, + "analysisType": { + "description": "Analysis Types for which this detector should apply to.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "type": { + "description": "Whether this detector is an Analysis Detector or not.", + "enum": [ + "Detector", + "Analysis", + "CategoryOverview" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "DetectorType", + "modelAsString": false + } + }, + "score": { + "format": "float", + "description": "Defines score of a detector to power ML based matching.", + "type": "number", + "readOnly": true + } + } + }, + "DetectorResponse": { + "description": "Class representing Response from Detector", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "DetectorResponse resource specific properties", + "properties": { + "metadata": { + "$ref": "#/definitions/DetectorInfo", + "description": "metadata for the detector" + }, + "dataset": { + "description": "Data Set", + "type": "array", + "items": { + "$ref": "#/definitions/DiagnosticData" + } + }, + "status": { + "$ref": "#/definitions/Status", + "description": "Indicates status of the most severe insight." + }, + "dataProvidersMetadata": { + "description": "Additional configuration for different data providers to be used by the UI", + "type": "array", + "items": { + "$ref": "#/definitions/DataProviderMetadata" + } + }, + "suggestedUtterances": { + "$ref": "#/definitions/QueryUtterancesResults", + "description": "Suggested utterances where the detector can be applicable." + } + }, + "x-ms-client-flatten": true + } + } + }, + "DetectorResponseCollection": { + "description": "Collection of detector responses", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/DetectorResponse" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "DiagnosticData": { + "description": "Set of data with rendering instructions", + "type": "object", + "properties": { + "table": { + "$ref": "#/definitions/DataTableResponseObject", + "description": "Data in table form" + }, + "renderingProperties": { + "$ref": "#/definitions/Rendering", + "description": "Properties that describe how the table should be rendered" + } + } + }, + "Dimension": { + "description": "Dimension of a resource metric. For e.g. instance specific HTTP requests for a web app, \nwhere instance name is dimension of the metric HTTP request", + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "displayName": { + "type": "string" + }, + "internalName": { + "type": "string" + }, + "toBeExportedForShoebox": { + "type": "boolean" + } + } + }, + "ErrorEntity": { + "description": "Body of the error response returned from the API.", + "type": "object", + "properties": { + "extendedCode": { + "description": "Type of error.", + "type": "string" + }, + "messageTemplate": { + "description": "Message template.", + "type": "string" + }, + "parameters": { + "description": "Parameters for the template.", + "type": "array", + "items": { + "type": "string" + } + }, + "innerErrors": { + "description": "Inner errors.", + "type": "array", + "items": { + "$ref": "#/definitions/ErrorEntity" + } + }, + "code": { + "description": "Basic error code.", + "type": "string" + }, + "message": { + "description": "Any details of the error.", + "type": "string" + } + } + }, + "Experiments": { + "description": "Routing rules in production experiments.", + "type": "object", + "properties": { + "rampUpRules": { + "description": "List of ramp-up rules.", + "type": "array", + "items": { + "$ref": "#/definitions/RampUpRule" + } + } + } + }, + "HandlerMapping": { + "description": "The IIS handler mappings used to define which handler processes HTTP requests with certain extension. \nFor example, it is used to configure php-cgi.exe process to handle all HTTP requests with *.php extension.", + "type": "object", + "properties": { + "extension": { + "description": "Requests with this extension will be handled using the specified FastCGI application.", + "type": "string" + }, + "scriptProcessor": { + "description": "The absolute path to the FastCGI application.", + "type": "string" + }, + "arguments": { + "description": "Command-line arguments to be passed to the script processor.", + "type": "string" + } + } + }, + "HostNameSslState": { + "description": "SSL-enabled hostname.", + "type": "object", + "properties": { + "name": { + "description": "Hostname.", + "type": "string" + }, + "sslState": { + "description": "SSL type.", + "enum": [ + "Disabled", + "SniEnabled", + "IpBasedEnabled" + ], + "type": "string", + "x-ms-enum": { + "name": "SslState", + "modelAsString": false + } + }, + "virtualIP": { + "description": "Virtual IP address assigned to the hostname if IP based SSL is enabled.", + "type": "string" + }, + "thumbprint": { + "description": "SSL certificate thumbprint.", + "type": "string" + }, + "toUpdate": { + "description": "Set to true to update existing hostname.", + "type": "boolean" + }, + "hostType": { + "description": "Indicates whether the hostname is a standard or repository hostname.", + "enum": [ + "Standard", + "Repository" + ], + "type": "string", + "x-ms-enum": { + "name": "HostType", + "modelAsString": false + } + } + } + }, + "HostingEnvironmentProfile": { + "description": "Specification for an App Service Environment to use for this resource.", + "type": "object", + "properties": { + "id": { + "description": "Resource ID of the App Service Environment.", + "type": "string" + }, + "name": { + "description": "Name of the App Service Environment.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Resource type of the App Service Environment.", + "type": "string", + "readOnly": true + } + } + }, + "HybridConnection": { + "description": "Hybrid Connection contract. This is used to configure a Hybrid Connection.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "HybridConnection resource specific properties", + "properties": { + "serviceBusNamespace": { + "description": "The name of the Service Bus namespace.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "relayName": { + "description": "The name of the Service Bus relay.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "relayArmUri": { + "description": "The ARM URI to the Service Bus relay.", + "type": "string" + }, + "hostname": { + "description": "The hostname of the endpoint.", + "type": "string" + }, + "port": { + "format": "int32", + "description": "The port of the endpoint.", + "type": "integer" + }, + "sendKeyName": { + "description": "The name of the Service Bus key which has Send permissions. This is used to authenticate to Service Bus.", + "type": "string" + }, + "sendKeyValue": { + "description": "The value of the Service Bus key. This is used to authenticate to Service Bus. In ARM this key will not be returned\nnormally, use the POST /listKeys API instead.", + "type": "string" + }, + "serviceBusSuffix": { + "description": "The suffix for the service bus endpoint. By default this is .servicebus.windows.net", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "Identifier": { + "description": "A domain specific resource identifier.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "Identifier resource specific properties", + "properties": { + "id": { + "description": "String representation of the identity.", + "type": "string", + "x-ms-client-name": "value" + } + }, + "x-ms-client-flatten": true + } + } + }, + "IdentifierCollection": { + "description": "Collection of identifiers.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/Identifier" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "IpSecurityRestriction": { + "description": "IP security restriction on an app.", + "type": "object", + "properties": { + "ipAddress": { + "description": "IP address the security restriction is valid for.\nIt can be in form of pure ipv4 address (required SubnetMask property) or\nCIDR notation such as ipv4/mask (leading bit match). For CIDR,\nSubnetMask property must not be specified.", + "type": "string" + }, + "subnetMask": { + "description": "Subnet mask for the range of IP addresses the restriction is valid for.", + "type": "string" + }, + "vnetSubnetResourceId": { + "description": "Virtual network resource id", + "type": "string" + }, + "vnetTrafficTag": { + "format": "int32", + "description": "(internal) Vnet traffic tag", + "type": "integer" + }, + "subnetTrafficTag": { + "format": "int32", + "description": "(internal) Subnet traffic tag", + "type": "integer" + }, + "action": { + "description": "Allow or Deny access for this IP range.", + "type": "string" + }, + "tag": { + "description": "Defines what this IP filter will be used for. This is to support IP filtering on proxies.", + "enum": [ + "Default", + "XffProxy", + "ServiceTag" + ], + "type": "string", + "x-ms-enum": { + "name": "IpFilterTag", + "modelAsString": true + } + }, + "priority": { + "format": "int32", + "description": "Priority of IP restriction rule.", + "type": "integer" + }, + "name": { + "description": "IP restriction rule name.", + "type": "string" + }, + "description": { + "description": "IP restriction rule description.", + "type": "string" + }, + "headers": { + "description": "IP restriction rule headers.\nX-Forwarded-Host (https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Forwarded-Host#Examples). \nThe matching logic is ..\n- If the property is null or empty (default), all hosts(or lack of) are allowed.\n- A value is compared using ordinal-ignore-case (excluding port number).\n- Subdomain wildcards are permitted but don't match the root domain. For example, *.contoso.com matches the subdomain foo.contoso.com\n but not the root domain contoso.com or multi-level foo.bar.contoso.com\n- Unicode host names are allowed but are converted to Punycode for matching.\n\nX-Forwarded-For (https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Forwarded-For#Examples).\nThe matching logic is ..\n- If the property is null or empty (default), any forwarded-for chains (or lack of) are allowed.\n- If any address (excluding port number) in the chain (comma separated) matches the CIDR defined by the property.\n\nX-Azure-FDID and X-FD-HealthProbe.\nThe matching logic is exact match.", + "type": "object", + "additionalProperties": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + }, + "KeyValuePair[String,Object]": { + "type": "object", + "properties": { + "key": { + "type": "string", + "readOnly": true + }, + "value": { + "type": "object", + "readOnly": true + } + } + }, + "KubeEnvironmentProfile": { + "description": "Specification for a Kubernetes Environment to use for this resource.", + "type": "object", + "properties": { + "id": { + "description": "Resource ID of the Kubernetes Environment.", + "type": "string" + }, + "name": { + "description": "Name of the Kubernetes Environment.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Resource type of the Kubernetes Environment.", + "type": "string", + "readOnly": true + } + } + }, + "LocalizableString": { + "description": "Localizable string object containing the name and a localized value.", + "type": "object", + "properties": { + "value": { + "description": "Non-localized name.", + "type": "string" + }, + "localizedValue": { + "description": "Localized name.", + "type": "string" + } + } + }, + "LogSpecification": { + "description": "Log Definition of a single resource metric.", + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "displayName": { + "type": "string" + }, + "blobDuration": { + "type": "string" + }, + "logFilterPattern": { + "type": "string" + } + } + }, + "ManagedServiceIdentity": { + "description": "Managed service identity.", + "type": "object", + "properties": { + "type": { + "description": "Type of managed service identity.", + "enum": [ + "SystemAssigned", + "UserAssigned", + "SystemAssigned, UserAssigned", + "None" + ], + "type": "string", + "x-ms-enum": { + "name": "ManagedServiceIdentityType", + "modelAsString": false + } + }, + "tenantId": { + "description": "Tenant of managed service identity.", + "type": "string", + "readOnly": true + }, + "principalId": { + "description": "Principal Id of managed service identity.", + "type": "string", + "readOnly": true + }, + "userAssignedIdentities": { + "description": "The list of user assigned identities associated with the resource. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}", + "type": "object", + "additionalProperties": { + "type": "object", + "properties": { + "principalId": { + "description": "Principal Id of user assigned identity", + "type": "string", + "readOnly": true + }, + "clientId": { + "description": "Client Id of user assigned identity", + "type": "string", + "readOnly": true + } + } + } + } + } + }, + "MetricAvailability": { + "description": "Retention policy of a resource metric.", + "type": "object", + "properties": { + "timeGrain": { + "type": "string" + }, + "blobDuration": { + "type": "string" + } + } + }, + "MetricSpecification": { + "description": "Definition of a single resource metric.", + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "displayName": { + "type": "string" + }, + "displayDescription": { + "type": "string" + }, + "unit": { + "type": "string" + }, + "aggregationType": { + "type": "string" + }, + "supportsInstanceLevelAggregation": { + "type": "boolean" + }, + "enableRegionalMdmAccount": { + "type": "boolean" + }, + "sourceMdmAccount": { + "type": "string" + }, + "sourceMdmNamespace": { + "type": "string" + }, + "metricFilterPattern": { + "type": "string" + }, + "fillGapWithZero": { + "type": "boolean" + }, + "isInternal": { + "type": "boolean" + }, + "dimensions": { + "type": "array", + "items": { + "$ref": "#/definitions/Dimension" + } + }, + "category": { + "type": "string" + }, + "availabilities": { + "type": "array", + "items": { + "$ref": "#/definitions/MetricAvailability" + } + }, + "supportedTimeGrainTypes": { + "type": "array", + "items": { + "type": "string" + } + }, + "supportedAggregationTypes": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "NameIdentifier": { + "description": "Identifies an object.", + "type": "object", + "properties": { + "name": { + "description": "Name of the object.", + "type": "string" + } + } + }, + "NameValuePair": { + "description": "Name value pair.", + "type": "object", + "properties": { + "name": { + "description": "Pair name.", + "type": "string" + }, + "value": { + "description": "Pair value.", + "type": "string" + } + } + }, + "Operation": { + "description": "An operation on a resource.", + "type": "object", + "properties": { + "id": { + "description": "Operation ID.", + "type": "string" + }, + "name": { + "description": "Operation name.", + "type": "string" + }, + "status": { + "description": "The current status of the operation.", + "enum": [ + "InProgress", + "Failed", + "Succeeded", + "TimedOut", + "Created" + ], + "type": "string", + "x-ms-enum": { + "name": "OperationStatus", + "modelAsString": false + } + }, + "errors": { + "description": "Any errors associate with the operation.", + "type": "array", + "items": { + "$ref": "#/definitions/ErrorEntity" + } + }, + "createdTime": { + "format": "date-time", + "description": "Time when operation has started.", + "type": "string" + }, + "modifiedTime": { + "format": "date-time", + "description": "Time when operation has been updated.", + "type": "string" + }, + "expirationTime": { + "format": "date-time", + "description": "Time when operation will expire.", + "type": "string" + }, + "geoMasterOperationId": { + "format": "uuid", + "description": "Applicable only for stamp operation ids.", + "type": "string", + "example": "00000000-0000-0000-0000-000000000000" + } + } + }, + "PrivateEndpointConnectionCollection": { + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/RemotePrivateEndpointConnectionARMResource" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "PrivateLinkConnectionApprovalRequest": { + "description": "A request to approve or reject a private endpoint connection", + "type": "object", + "properties": { + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkConnectionState" + } + } + }, + "PrivateLinkConnectionApprovalRequestResource": { + "description": "Private Endpoint Connection Approval ARM resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PrivateLinkConnectionApprovalRequest", + "description": "Core resource properties", + "x-ms-client-flatten": true + } + } + }, + "PrivateLinkConnectionState": { + "description": "The state of a private link connection", + "type": "object", + "properties": { + "status": { + "description": "Status of a private link connection", + "type": "string" + }, + "description": { + "description": "Description of a private link connection", + "type": "string" + }, + "actionsRequired": { + "description": "ActionsRequired for a private link connection", + "type": "string" + } + } + }, + "PrivateLinkResource": { + "description": "A private link resource", + "required": [ + "id", + "name", + "type", + "properties" + ], + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "name": { + "description": "Name of a private link resource", + "type": "string" + }, + "type": { + "type": "string" + }, + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "Properties of a private link resource" + } + } + }, + "PrivateLinkResourceProperties": { + "description": "Properties of a private link resource", + "type": "object", + "properties": { + "groupId": { + "description": "GroupId of a private link resource", + "type": "string", + "readOnly": true + }, + "requiredMembers": { + "description": "RequiredMembers of a private link resource", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "requiredZoneNames": { + "description": "RequiredZoneNames of a private link resource", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + } + } + }, + "PrivateLinkResourcesWrapper": { + "description": "Wrapper for a collection of private link resources", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + } + } + } + }, + "ProxyOnlyResource": { + "description": "Azure proxy only resource. This resource is not tracked by Azure Resource Manager.", + "properties": { + "id": { + "description": "Resource Id.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Resource Name.", + "type": "string", + "readOnly": true + }, + "kind": { + "description": "Kind of resource.", + "type": "string" + }, + "type": { + "description": "Resource type.", + "type": "string", + "readOnly": true + } + }, + "x-ms-azure-resource": true + }, + "PushSettings": { + "description": "Push settings for the App.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "PushSettings resource specific properties", + "required": [ + "isPushEnabled" + ], + "properties": { + "isPushEnabled": { + "description": "Gets or sets a flag indicating whether the Push endpoint is enabled.", + "type": "boolean" + }, + "tagWhitelistJson": { + "description": "Gets or sets a JSON string containing a list of tags that are whitelisted for use by the push registration endpoint.", + "type": "string" + }, + "tagsRequiringAuth": { + "description": "Gets or sets a JSON string containing a list of tags that require user authentication to be used in the push registration endpoint.\nTags can consist of alphanumeric characters and the following:\n'_', '@', '#', '.', ':', '-'. \nValidation should be performed at the PushRequestHandler.", + "type": "string" + }, + "dynamicTagsJson": { + "description": "Gets or sets a JSON string containing a list of dynamic tags that will be evaluated from user claims in the push registration endpoint.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "QueryUtterancesResult": { + "description": "Result for utterances query.", + "type": "object", + "properties": { + "sampleUtterance": { + "$ref": "#/definitions/SampleUtterance", + "description": "A sample utterance." + }, + "score": { + "format": "float", + "description": "Score of a sample utterance.", + "type": "number" + } + } + }, + "QueryUtterancesResults": { + "description": "Suggested utterances where the detector can be applicable", + "type": "object", + "properties": { + "query": { + "description": "Search Query.", + "type": "string" + }, + "results": { + "description": "Array of utterance results for search query.", + "type": "array", + "items": { + "$ref": "#/definitions/QueryUtterancesResult" + } + } + } + }, + "RampUpRule": { + "description": "Routing rules for ramp up testing. This rule allows to redirect static traffic % to a slot or to gradually change routing % based on performance.", + "type": "object", + "properties": { + "actionHostName": { + "description": "Hostname of a slot to which the traffic will be redirected if decided to. E.g. myapp-stage.azurewebsites.net.", + "type": "string" + }, + "reroutePercentage": { + "format": "double", + "description": "Percentage of the traffic which will be redirected to ActionHostName.", + "type": "number" + }, + "changeStep": { + "format": "double", + "description": "In auto ramp up scenario this is the step to add/remove from ReroutePercentage until it reaches \\nMinReroutePercentage or \nMaxReroutePercentage. Site metrics are checked every N minutes specified in ChangeIntervalInMinutes.\\nCustom decision algorithm \ncan be provided in TiPCallback site extension which URL can be specified in ChangeDecisionCallbackUrl.", + "type": "number" + }, + "changeIntervalInMinutes": { + "format": "int32", + "description": "Specifies interval in minutes to reevaluate ReroutePercentage.", + "type": "integer" + }, + "minReroutePercentage": { + "format": "double", + "description": "Specifies lower boundary above which ReroutePercentage will stay.", + "type": "number" + }, + "maxReroutePercentage": { + "format": "double", + "description": "Specifies upper boundary below which ReroutePercentage will stay.", + "type": "number" + }, + "changeDecisionCallbackUrl": { + "description": "Custom decision algorithm can be provided in TiPCallback site extension which URL can be specified. See TiPCallback site extension for the scaffold and contracts.\nhttps://www.siteextensions.net/packages/TiPCallback/", + "type": "string" + }, + "name": { + "description": "Name of the routing rule. The recommended name would be to point to the slot which will receive the traffic in the experiment.", + "type": "string" + } + } + }, + "RemotePrivateEndpointConnectionARMResource": { + "description": "Remote Private Endpoint Connection ARM resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "RemotePrivateEndpointConnectionARMResource resource specific properties", + "properties": { + "provisioningState": { + "type": "string", + "readOnly": true + }, + "privateEndpoint": { + "$ref": "#/definitions/ArmIdWrapper", + "description": "PrivateEndpoint of a remote private endpoint connection" + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkConnectionState" + }, + "ipAddresses": { + "description": "Private IPAddresses mapped to the remote private endpoint", + "type": "array", + "items": { + "type": "string" + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "Rendering": { + "description": "Instructions for rendering the data", + "type": "object", + "properties": { + "type": { + "description": "Rendering Type", + "enum": [ + "NoGraph", + "Table", + "TimeSeries", + "TimeSeriesPerInstance", + "PieChart", + "DataSummary", + "Email", + "Insights", + "DynamicInsight", + "Markdown", + "Detector", + "DropDown", + "Card", + "Solution", + "Guage", + "Form", + "ChangeSets", + "ChangeAnalysisOnboarding", + "ChangesView", + "AppInsight", + "DependencyGraph", + "DownTime", + "SummaryCard", + "SearchComponent", + "AppInsightEnablement" + ], + "type": "string", + "x-ms-enum": { + "name": "RenderingType", + "modelAsString": false + } + }, + "title": { + "description": "Title of data", + "type": "string" + }, + "description": { + "description": "Description of the data that will help it be interpreted", + "type": "string" + } + } + }, + "RequestsBasedTrigger": { + "description": "Trigger based on total requests.", + "type": "object", + "properties": { + "count": { + "format": "int32", + "description": "Request Count.", + "type": "integer" + }, + "timeInterval": { + "description": "Time interval.", + "type": "string" + } + } + }, + "Resource": { + "description": "Azure resource. This resource is tracked in Azure Resource Manager", + "required": [ + "location" + ], + "properties": { + "id": { + "description": "Resource Id.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Resource Name.", + "type": "string", + "readOnly": true + }, + "kind": { + "description": "Kind of resource.", + "type": "string" + }, + "location": { + "description": "Resource Location.", + "type": "string" + }, + "type": { + "description": "Resource type.", + "type": "string", + "readOnly": true + }, + "tags": { + "description": "Resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "x-ms-azure-resource": true + }, + "SampleUtterance": { + "description": "Sample utterance.", + "type": "object", + "properties": { + "text": { + "description": "Text attribute of sample utterance.", + "type": "string" + }, + "links": { + "description": "Links attribute of sample utterance.", + "type": "array", + "items": { + "type": "string" + } + }, + "qid": { + "description": "Question id of sample utterance (for stackoverflow questions titles).", + "type": "string" + } + } + }, + "ServiceSpecification": { + "description": "Resource metrics service provided by Microsoft.Insights resource provider.", + "type": "object", + "properties": { + "metricSpecifications": { + "type": "array", + "items": { + "$ref": "#/definitions/MetricSpecification" + } + }, + "logSpecifications": { + "type": "array", + "items": { + "$ref": "#/definitions/LogSpecification" + } + } + } + }, + "Site": { + "description": "A web app, a mobile app backend, or an API app.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "Site resource specific properties", + "properties": { + "state": { + "description": "Current state of the app.", + "type": "string", + "readOnly": true + }, + "hostNames": { + "description": "Hostnames associated with the app.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "repositorySiteName": { + "description": "Name of the repository site.", + "type": "string", + "readOnly": true + }, + "usageState": { + "description": "State indicating whether the app has exceeded its quota usage. Read-only.", + "enum": [ + "Normal", + "Exceeded" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "UsageState", + "modelAsString": false + } + }, + "enabled": { + "description": "true if the app is enabled; otherwise, false. Setting this value to false disables the app (takes the app offline).", + "type": "boolean" + }, + "enabledHostNames": { + "description": "Enabled hostnames for the app.Hostnames need to be assigned (see HostNames) AND enabled. Otherwise,\nthe app is not served on those hostnames.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "availabilityState": { + "description": "Management information availability state for the app.", + "enum": [ + "Normal", + "Limited", + "DisasterRecoveryMode" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "SiteAvailabilityState", + "modelAsString": false + } + }, + "hostNameSslStates": { + "description": "Hostname SSL states are used to manage the SSL bindings for app's hostnames.", + "type": "array", + "items": { + "$ref": "#/definitions/HostNameSslState" + } + }, + "serverFarmId": { + "description": "Resource ID of the associated App Service plan, formatted as: \"/subscriptions/{subscriptionID}/resourceGroups/{groupName}/providers/Microsoft.Web/serverfarms/{appServicePlanName}\".", + "type": "string" + }, + "reserved": { + "description": "true if reserved; otherwise, false.", + "default": false, + "type": "boolean", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "isXenon": { + "description": "Obsolete: Hyper-V sandbox.", + "default": false, + "type": "boolean", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "hyperV": { + "description": "Hyper-V sandbox.", + "default": false, + "type": "boolean", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "lastModifiedTimeUtc": { + "format": "date-time", + "description": "Last time the app was modified, in UTC. Read-only.", + "type": "string", + "readOnly": true + }, + "siteConfig": { + "$ref": "#/definitions/SiteConfig", + "description": "Configuration of the app." + }, + "trafficManagerHostNames": { + "description": "Azure Traffic Manager hostnames associated with the app. Read-only.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "scmSiteAlsoStopped": { + "description": "true to stop SCM (KUDU) site when the app is stopped; otherwise, false. The default is false.", + "default": false, + "type": "boolean" + }, + "targetSwapSlot": { + "description": "Specifies which deployment slot this app will swap into. Read-only.", + "type": "string", + "readOnly": true + }, + "hostingEnvironmentProfile": { + "$ref": "#/definitions/HostingEnvironmentProfile", + "description": "App Service Environment to use for the app.", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "clientAffinityEnabled": { + "description": "true to enable client affinity; false to stop sending session affinity cookies, which route client requests in the same session to the same instance. Default is true.", + "type": "boolean" + }, + "clientCertEnabled": { + "description": "true to enable client certificate authentication (TLS mutual authentication); otherwise, false. Default is false.", + "type": "boolean" + }, + "clientCertMode": { + "description": "This composes with ClientCertEnabled setting.\n- ClientCertEnabled: false means ClientCert is ignored.\n- ClientCertEnabled: true and ClientCertMode: Required means ClientCert is required.\n- ClientCertEnabled: true and ClientCertMode: Optional means ClientCert is optional or accepted.", + "enum": [ + "Required", + "Optional", + "OptionalInteractiveUser" + ], + "type": "string", + "x-ms-enum": { + "name": "ClientCertMode", + "modelAsString": false + } + }, + "clientCertExclusionPaths": { + "description": "client certificate authentication comma-separated exclusion paths", + "type": "string" + }, + "hostNamesDisabled": { + "description": "true to disable the public hostnames of the app; otherwise, false.\n If true, the app is only accessible via API management process.", + "type": "boolean" + }, + "customDomainVerificationId": { + "description": "Unique identifier that verifies the custom domains assigned to the app. Customer will add this id to a txt record for verification.", + "type": "string" + }, + "outboundIpAddresses": { + "description": "List of IP addresses that the app uses for outbound connections (e.g. database access). Includes VIPs from tenants that site can be hosted with current settings. Read-only.", + "type": "string", + "readOnly": true + }, + "possibleOutboundIpAddresses": { + "description": "List of IP addresses that the app uses for outbound connections (e.g. database access). Includes VIPs from all tenants except dataComponent. Read-only.", + "type": "string", + "readOnly": true + }, + "containerSize": { + "format": "int32", + "description": "Size of the function container.", + "type": "integer" + }, + "dailyMemoryTimeQuota": { + "format": "int32", + "description": "Maximum allowed daily memory-time quota (applicable on dynamic apps only).", + "type": "integer" + }, + "suspendedTill": { + "format": "date-time", + "description": "App suspended till in case memory-time quota is exceeded.", + "type": "string", + "readOnly": true + }, + "maxNumberOfWorkers": { + "format": "int32", + "description": "Maximum number of workers.\nThis only applies to Functions container.", + "type": "integer", + "readOnly": true + }, + "cloningInfo": { + "$ref": "#/definitions/CloningInfo", + "description": "If specified during app creation, the app is cloned from a source app.", + "x-ms-mutability": [ + "create" + ] + }, + "resourceGroup": { + "description": "Name of the resource group the app belongs to. Read-only.", + "type": "string", + "readOnly": true + }, + "isDefaultContainer": { + "description": "true if the app is a default container; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "defaultHostName": { + "description": "Default hostname of the app. Read-only.", + "type": "string", + "readOnly": true + }, + "slotSwapStatus": { + "$ref": "#/definitions/SlotSwapStatus", + "description": "Status of the last deployment slot swap operation.", + "readOnly": true + }, + "httpsOnly": { + "description": "HttpsOnly: configures a web site to accept only https requests. Issues redirect for\nhttp requests", + "type": "boolean" + }, + "redundancyMode": { + "description": "Site redundancy mode", + "enum": [ + "None", + "Manual", + "Failover", + "ActiveActive", + "GeoRedundant" + ], + "type": "string", + "x-ms-enum": { + "name": "RedundancyMode", + "modelAsString": false + } + }, + "inProgressOperationId": { + "format": "uuid", + "description": "Specifies an operation id if this site has a pending operation.", + "type": "string", + "readOnly": true, + "example": "00000000-0000-0000-0000-000000000000" + }, + "storageAccountRequired": { + "description": "Checks if Customer provided storage account is required", + "type": "boolean" + }, + "keyVaultReferenceIdentity": { + "description": "Identity to use for Key Vault Reference authentication.", + "type": "string" + }, + "virtualNetworkSubnetId": { + "description": "Azure Resource Manager ID of the Virtual network and subnet to be joined by Regional VNET Integration.\nThis must be of the form /subscriptions/{subscriptionName}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{vnetName}/subnets/{subnetName}", + "type": "string" + } + }, + "x-ms-client-flatten": true + }, + "identity": { + "$ref": "#/definitions/ManagedServiceIdentity" + } + } + }, + "SiteConfig": { + "description": "Configuration of an App Service app.", + "type": "object", + "properties": { + "numberOfWorkers": { + "format": "int32", + "description": "Number of workers.", + "type": "integer" + }, + "defaultDocuments": { + "description": "Default documents.", + "type": "array", + "items": { + "type": "string" + } + }, + "netFrameworkVersion": { + "description": ".NET Framework version.", + "default": "v4.6", + "type": "string" + }, + "phpVersion": { + "description": "Version of PHP.", + "type": "string" + }, + "pythonVersion": { + "description": "Version of Python.", + "type": "string" + }, + "nodeVersion": { + "description": "Version of Node.js.", + "type": "string" + }, + "powerShellVersion": { + "description": "Version of PowerShell.", + "type": "string" + }, + "linuxFxVersion": { + "description": "Linux App Framework and version", + "type": "string" + }, + "windowsFxVersion": { + "description": "Xenon App Framework and version", + "type": "string" + }, + "requestTracingEnabled": { + "description": "true if request tracing is enabled; otherwise, false.", + "type": "boolean" + }, + "requestTracingExpirationTime": { + "format": "date-time", + "description": "Request tracing expiration time.", + "type": "string" + }, + "remoteDebuggingEnabled": { + "description": "true if remote debugging is enabled; otherwise, false.", + "type": "boolean" + }, + "remoteDebuggingVersion": { + "description": "Remote debugging version.", + "type": "string" + }, + "httpLoggingEnabled": { + "description": "true if HTTP logging is enabled; otherwise, false.", + "type": "boolean" + }, + "acrUseManagedIdentityCreds": { + "description": "Flag to use Managed Identity Creds for ACR pull", + "type": "boolean" + }, + "acrUserManagedIdentityID": { + "description": "If using user managed identity, the user managed identity ClientId", + "type": "string" + }, + "logsDirectorySizeLimit": { + "format": "int32", + "description": "HTTP logs directory size limit.", + "type": "integer" + }, + "detailedErrorLoggingEnabled": { + "description": "true if detailed error logging is enabled; otherwise, false.", + "type": "boolean" + }, + "publishingUsername": { + "description": "Publishing user name.", + "type": "string" + }, + "appSettings": { + "description": "Application settings.", + "type": "array", + "items": { + "$ref": "#/definitions/NameValuePair" + } + }, + "connectionStrings": { + "description": "Connection strings.", + "type": "array", + "items": { + "$ref": "#/definitions/ConnStringInfo" + } + }, + "machineKey": { + "$ref": "#/definitions/SiteMachineKey", + "description": "Site MachineKey.", + "readOnly": true + }, + "handlerMappings": { + "description": "Handler mappings.", + "type": "array", + "items": { + "$ref": "#/definitions/HandlerMapping" + } + }, + "documentRoot": { + "description": "Document root.", + "type": "string" + }, + "scmType": { + "description": "SCM type.", + "enum": [ + "None", + "Dropbox", + "Tfs", + "LocalGit", + "GitHub", + "CodePlexGit", + "CodePlexHg", + "BitbucketGit", + "BitbucketHg", + "ExternalGit", + "ExternalHg", + "OneDrive", + "VSO", + "VSTSRM" + ], + "type": "string", + "x-ms-enum": { + "name": "ScmType", + "modelAsString": true + } + }, + "use32BitWorkerProcess": { + "description": "true to use 32-bit worker process; otherwise, false.", + "type": "boolean" + }, + "webSocketsEnabled": { + "description": "true if WebSocket is enabled; otherwise, false.", + "type": "boolean" + }, + "alwaysOn": { + "description": "true if Always On is enabled; otherwise, false.", + "type": "boolean" + }, + "javaVersion": { + "description": "Java version.", + "type": "string" + }, + "javaContainer": { + "description": "Java container.", + "type": "string" + }, + "javaContainerVersion": { + "description": "Java container version.", + "type": "string" + }, + "appCommandLine": { + "description": "App command line to launch.", + "type": "string" + }, + "managedPipelineMode": { + "description": "Managed pipeline mode.", + "enum": [ + "Integrated", + "Classic" + ], + "type": "string", + "x-ms-enum": { + "name": "ManagedPipelineMode", + "modelAsString": false + } + }, + "virtualApplications": { + "description": "Virtual applications.", + "type": "array", + "items": { + "$ref": "#/definitions/VirtualApplication" + } + }, + "loadBalancing": { + "description": "Site load balancing.", + "enum": [ + "WeightedRoundRobin", + "LeastRequests", + "LeastResponseTime", + "WeightedTotalTraffic", + "RequestHash", + "PerSiteRoundRobin" + ], + "type": "string", + "x-ms-enum": { + "name": "SiteLoadBalancing", + "modelAsString": false + } + }, + "experiments": { + "$ref": "#/definitions/Experiments", + "description": "This is work around for polymorphic types." + }, + "limits": { + "$ref": "#/definitions/SiteLimits", + "description": "Site limits." + }, + "autoHealEnabled": { + "description": "true if Auto Heal is enabled; otherwise, false.", + "type": "boolean" + }, + "autoHealRules": { + "$ref": "#/definitions/AutoHealRules", + "description": "Auto Heal rules." + }, + "tracingOptions": { + "description": "Tracing options.", + "type": "string" + }, + "vnetName": { + "description": "Virtual Network name.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "vnetRouteAllEnabled": { + "description": "Virtual Network Route All enabled. This causes all outbound traffic to have Virtual Network Security Groups and User Defined Routes applied.", + "type": "boolean" + }, + "vnetPrivatePortsCount": { + "format": "int32", + "description": "The number of private ports assigned to this app. These will be assigned dynamically on runtime.", + "type": "integer" + }, + "cors": { + "$ref": "#/definitions/CorsSettings", + "description": "Cross-Origin Resource Sharing (CORS) settings." + }, + "push": { + "$ref": "#/definitions/PushSettings", + "description": "Push endpoint settings." + }, + "apiDefinition": { + "$ref": "#/definitions/ApiDefinitionInfo", + "description": "Information about the formal API definition for the app." + }, + "apiManagementConfig": { + "$ref": "#/definitions/ApiManagementConfig", + "description": "Azure API management settings linked to the app." + }, + "autoSwapSlotName": { + "description": "Auto-swap slot name.", + "type": "string" + }, + "localMySqlEnabled": { + "description": "true to enable local MySQL; otherwise, false.", + "default": false, + "type": "boolean" + }, + "managedServiceIdentityId": { + "format": "int32", + "description": "Managed Service Identity Id", + "type": "integer" + }, + "xManagedServiceIdentityId": { + "format": "int32", + "description": "Explicit Managed Service Identity Id", + "type": "integer" + }, + "keyVaultReferenceIdentity": { + "description": "Identity to use for Key Vault Reference authentication.", + "type": "string" + }, + "ipSecurityRestrictions": { + "description": "IP security restrictions for main.", + "type": "array", + "items": { + "$ref": "#/definitions/IpSecurityRestriction" + } + }, + "scmIpSecurityRestrictions": { + "description": "IP security restrictions for scm.", + "type": "array", + "items": { + "$ref": "#/definitions/IpSecurityRestriction" + } + }, + "scmIpSecurityRestrictionsUseMain": { + "description": "IP security restrictions for scm to use main.", + "type": "boolean" + }, + "http20Enabled": { + "description": "Http20Enabled: configures a web site to allow clients to connect over http2.0", + "default": true, + "type": "boolean" + }, + "minTlsVersion": { + "description": "MinTlsVersion: configures the minimum version of TLS required for SSL requests", + "enum": [ + "1.0", + "1.1", + "1.2" + ], + "type": "string", + "x-ms-enum": { + "name": "SupportedTlsVersions", + "modelAsString": true + } + }, + "scmMinTlsVersion": { + "description": "ScmMinTlsVersion: configures the minimum version of TLS required for SSL requests for SCM site", + "enum": [ + "1.0", + "1.1", + "1.2" + ], + "type": "string", + "x-ms-enum": { + "name": "SupportedTlsVersions", + "modelAsString": true + } + }, + "ftpsState": { + "description": "State of FTP / FTPS service", + "enum": [ + "AllAllowed", + "FtpsOnly", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "FtpsState", + "modelAsString": true + } + }, + "preWarmedInstanceCount": { + "format": "int32", + "description": "Number of preWarmed instances.\nThis setting only applies to the Consumption and Elastic Plans", + "maximum": 10, + "minimum": 0, + "type": "integer" + }, + "functionAppScaleLimit": { + "format": "int32", + "description": "Maximum number of workers that a site can scale out to.\nThis setting only applies to the Consumption and Elastic Premium Plans", + "minimum": 0, + "type": "integer" + }, + "healthCheckPath": { + "description": "Health check path", + "type": "string" + }, + "functionsRuntimeScaleMonitoringEnabled": { + "description": "Gets or sets a value indicating whether functions runtime scale monitoring is enabled. When enabled,\nthe ScaleController will not monitor event sources directly, but will instead call to the\nruntime to get scale status.", + "type": "boolean" + }, + "websiteTimeZone": { + "description": "Sets the time zone a site uses for generating timestamps. Compatible with Linux and Windows App Service. Setting the WEBSITE_TIME_ZONE app setting takes precedence over this config. For Linux, expects tz database values https://www.iana.org/time-zones (for a quick reference see https://en.wikipedia.org/wiki/List_of_tz_database_time_zones). For Windows, expects one of the time zones listed under HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\Time Zones", + "type": "string" + }, + "minimumElasticInstanceCount": { + "format": "int32", + "description": "Number of minimum instance count for a site\nThis setting only applies to the Elastic Plans", + "maximum": 20, + "minimum": 0, + "type": "integer" + }, + "azureStorageAccounts": { + "description": "List of Azure Storage Accounts.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/AzureStorageInfoValue" + } + }, + "publicNetworkAccess": { + "description": "Property to allow or block all public traffic.", + "type": "string" + } + } + }, + "SiteLimits": { + "description": "Metric limits set on an app.", + "type": "object", + "properties": { + "maxPercentageCpu": { + "format": "double", + "description": "Maximum allowed CPU usage percentage.", + "type": "number" + }, + "maxMemoryInMb": { + "format": "int64", + "description": "Maximum allowed memory usage in MB.", + "type": "integer" + }, + "maxDiskSizeInMb": { + "format": "int64", + "description": "Maximum allowed disk size usage in MB.", + "type": "integer" + } + } + }, + "SiteMachineKey": { + "description": "MachineKey of an app.", + "type": "object", + "properties": { + "validation": { + "description": "MachineKey validation.", + "type": "string" + }, + "validationKey": { + "description": "Validation key.", + "type": "string" + }, + "decryption": { + "description": "Algorithm used for decryption.", + "type": "string" + }, + "decryptionKey": { + "description": "Decryption key.", + "type": "string" + } + } + }, + "SkuCapacity": { + "description": "Description of the App Service plan scale options.", + "type": "object", + "properties": { + "minimum": { + "format": "int32", + "description": "Minimum number of workers for this App Service plan SKU.", + "type": "integer" + }, + "maximum": { + "format": "int32", + "description": "Maximum number of workers for this App Service plan SKU.", + "type": "integer" + }, + "elasticMaximum": { + "format": "int32", + "description": "Maximum number of Elastic workers for this App Service plan SKU.", + "type": "integer" + }, + "default": { + "format": "int32", + "description": "Default number of workers for this App Service plan SKU.", + "type": "integer" + }, + "scaleType": { + "description": "Available scale configurations for an App Service plan.", + "type": "string" + } + } + }, + "SkuDescription": { + "description": "Description of a SKU for a scalable resource.", + "type": "object", + "properties": { + "name": { + "description": "Name of the resource SKU.", + "type": "string" + }, + "tier": { + "description": "Service tier of the resource SKU.", + "type": "string" + }, + "size": { + "description": "Size specifier of the resource SKU.", + "type": "string" + }, + "family": { + "description": "Family code of the resource SKU.", + "type": "string" + }, + "capacity": { + "format": "int32", + "description": "Current number of instances assigned to the resource.", + "type": "integer" + }, + "skuCapacity": { + "$ref": "#/definitions/SkuCapacity", + "description": "Min, max, and default scale values of the SKU." + }, + "locations": { + "description": "Locations of the SKU.", + "type": "array", + "items": { + "type": "string" + } + }, + "capabilities": { + "description": "Capabilities of the SKU, e.g., is traffic manager enabled?", + "type": "array", + "items": { + "$ref": "#/definitions/Capability" + } + } + } + }, + "SlotSwapStatus": { + "description": "The status of the last successful slot swap operation.", + "type": "object", + "properties": { + "timestampUtc": { + "format": "date-time", + "description": "The time the last successful slot swap completed.", + "type": "string", + "readOnly": true + }, + "sourceSlotName": { + "description": "The source slot of the last swap operation.", + "type": "string", + "readOnly": true + }, + "destinationSlotName": { + "description": "The destination slot of the last swap operation.", + "type": "string", + "readOnly": true + } + } + }, + "SlowRequestsBasedTrigger": { + "description": "Trigger based on request execution time.", + "type": "object", + "properties": { + "timeTaken": { + "description": "Time taken.", + "type": "string" + }, + "path": { + "description": "Request Path.", + "type": "string" + }, + "count": { + "format": "int32", + "description": "Request Count.", + "type": "integer" + }, + "timeInterval": { + "description": "Time interval.", + "type": "string" + } + } + }, + "Snapshot": { + "description": "A snapshot of an app.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "Snapshot resource specific properties", + "properties": { + "time": { + "description": "The time the snapshot was taken.", + "type": "string", + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "Status": { + "description": "Identify the status of the most severe insight generated by the detector.", + "type": "object", + "properties": { + "message": { + "description": "Descriptive message.", + "type": "string" + }, + "statusId": { + "description": "Level of the most severe insight generated by the detector.", + "enum": [ + "Critical", + "Warning", + "Info", + "Success", + "None" + ], + "type": "string", + "x-ms-enum": { + "name": "InsightStatus", + "modelAsString": false + } + } + } + }, + "StatusCodesBasedTrigger": { + "description": "Trigger based on status code.", + "type": "object", + "properties": { + "status": { + "format": "int32", + "description": "HTTP status code.", + "type": "integer" + }, + "subStatus": { + "format": "int32", + "description": "Request Sub Status.", + "type": "integer" + }, + "win32Status": { + "format": "int32", + "description": "Win32 error code.", + "type": "integer" + }, + "count": { + "format": "int32", + "description": "Request Count.", + "type": "integer" + }, + "timeInterval": { + "description": "Time interval.", + "type": "string" + }, + "path": { + "description": "Request Path", + "type": "string" + } + } + }, + "StatusCodesRangeBasedTrigger": { + "description": "Trigger based on range of status codes.", + "type": "object", + "properties": { + "statusCodes": { + "description": "HTTP status code.", + "type": "string" + }, + "path": { + "type": "string" + }, + "count": { + "format": "int32", + "description": "Request Count.", + "type": "integer" + }, + "timeInterval": { + "description": "Time interval.", + "type": "string" + } + } + }, + "StringDictionary": { + "description": "String dictionary resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "Settings.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-ms-client-flatten": true + } + } + }, + "SupportTopic": { + "description": "Defines a unique Support Topic", + "type": "object", + "properties": { + "id": { + "description": "Support Topic Id", + "type": "string", + "readOnly": true + }, + "pesId": { + "description": "Unique resource Id", + "type": "string", + "readOnly": true + } + } + }, + "User": { + "description": "User credentials used for publishing activity.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "User resource specific properties", + "required": [ + "publishingUserName" + ], + "properties": { + "publishingUserName": { + "description": "Username used for publishing.", + "type": "string" + }, + "publishingPassword": { + "format": "password", + "description": "Password used for publishing.", + "type": "string" + }, + "publishingPasswordHash": { + "format": "password", + "description": "Password hash used for publishing.", + "type": "string" + }, + "publishingPasswordHashSalt": { + "format": "password", + "description": "Password hash salt used for publishing.", + "type": "string" + }, + "scmUri": { + "description": "Url of SCM site.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "VirtualApplication": { + "description": "Virtual application in an app.", + "type": "object", + "properties": { + "virtualPath": { + "description": "Virtual path.", + "type": "string" + }, + "physicalPath": { + "description": "Physical path.", + "type": "string" + }, + "preloadEnabled": { + "description": "true if preloading is enabled; otherwise, false.", + "type": "boolean" + }, + "virtualDirectories": { + "description": "Virtual directories for virtual application.", + "type": "array", + "items": { + "$ref": "#/definitions/VirtualDirectory" + } + } + } + }, + "VirtualDirectory": { + "description": "Directory for virtual application.", + "type": "object", + "properties": { + "virtualPath": { + "description": "Path to virtual application.", + "type": "string" + }, + "physicalPath": { + "description": "Physical path.", + "type": "string" + } + } + }, + "VirtualNetworkProfile": { + "description": "Specification for using a Virtual Network.", + "required": [ + "id" + ], + "type": "object", + "properties": { + "id": { + "description": "Resource id of the Virtual Network.", + "type": "string" + }, + "name": { + "description": "Name of the Virtual Network (read-only).", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Resource type of the Virtual Network (read-only).", + "type": "string", + "readOnly": true + }, + "subnet": { + "description": "Subnet within the Virtual Network.", + "type": "string" + } + } + }, + "VnetGateway": { + "description": "The Virtual Network gateway contract. This is used to give the Virtual Network gateway access to the VPN package.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "VnetGateway resource specific properties", + "required": [ + "vpnPackageUri" + ], + "properties": { + "vnetName": { + "description": "The Virtual Network name.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "vpnPackageUri": { + "description": "The URI where the VPN package can be downloaded.", + "type": "string", + "x-ms-mutability": [ + "create", + "update" + ] + } + }, + "x-ms-client-flatten": true + } + } + }, + "VnetInfo": { + "description": "Virtual Network information contract.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "VnetInfo resource specific properties", + "properties": { + "vnetResourceId": { + "description": "The Virtual Network's resource ID.", + "type": "string" + }, + "certThumbprint": { + "description": "The client certificate thumbprint.", + "type": "string", + "readOnly": true + }, + "certBlob": { + "description": "A certificate file (.cer) blob containing the public key of the private key used to authenticate a \nPoint-To-Site VPN connection.", + "type": "string" + }, + "routes": { + "description": "The routes that this Virtual Network connection uses.", + "type": "array", + "items": { + "$ref": "#/definitions/VnetRoute" + }, + "readOnly": true + }, + "resyncRequired": { + "description": "true if a resync is required; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "dnsServers": { + "description": "DNS servers to be used by this Virtual Network. This should be a comma-separated list of IP addresses.", + "type": "string" + }, + "isSwift": { + "description": "Flag that is used to denote if this is VNET injection", + "type": "boolean" + } + }, + "x-ms-client-flatten": true + } + } + }, + "VnetRoute": { + "description": "Virtual Network route contract used to pass routing information for a Virtual Network.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "VnetRoute resource specific properties", + "properties": { + "startAddress": { + "description": "The starting address for this route. This may also include a CIDR notation, in which case the end address must not be specified.", + "type": "string" + }, + "endAddress": { + "description": "The ending address for this route. If the start address is specified in CIDR notation, this must be omitted.", + "type": "string" + }, + "routeType": { + "description": "The type of route this is:\nDEFAULT - By default, every app has routes to the local address ranges specified by RFC1918\nINHERITED - Routes inherited from the real Virtual Network routes\nSTATIC - Static route set on the app only\n\nThese values will be used for syncing an app's routes with those from a Virtual Network.", + "enum": [ + "DEFAULT", + "INHERITED", + "STATIC" + ], + "type": "string", + "x-ms-enum": { + "name": "RouteType", + "modelAsString": true + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "WebAppCollection": { + "description": "Collection of App Service apps.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/Site" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/DeletedWebApps.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/DeletedWebApps.json new file mode 100644 index 000000000000..767a74783072 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/DeletedWebApps.json @@ -0,0 +1,207 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-12-01", + "title": "DeletedWebApps API Client" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Web/deletedSites": { + "get": { + "tags": [ + "DeletedWebApps" + ], + "summary": "Get all deleted apps for a subscription.", + "description": "Description for Get all deleted apps for a subscription.", + "operationId": "DeletedWebApps_List", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DeletedWebAppCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Web/locations/{location}/deletedSites": { + "get": { + "tags": [ + "DeletedWebApps" + ], + "summary": "Get all deleted apps for a subscription at location", + "description": "Description for Get all deleted apps for a subscription at location", + "operationId": "DeletedWebApps_ListByLocation", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DeletedWebAppCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List Deleted Web App by Location": { + "$ref": "./examples/ListDeletedWebAppsByLocation.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Web/locations/{location}/deletedSites/{deletedSiteId}": { + "get": { + "tags": [ + "DeletedWebApps" + ], + "summary": "Get deleted app for a subscription at location.", + "description": "Description for Get deleted app for a subscription at location.", + "operationId": "DeletedWebApps_GetDeletedWebAppByLocation", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "deletedSiteId", + "in": "path", + "description": "The numeric ID of the deleted app, e.g. 12345", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DeletedSite" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Deleted Web App by Location": { + "$ref": "./examples/GetDeletedWebAppByLocation.json" + } + } + } + } + }, + "definitions": { + "DeletedWebAppCollection": { + "description": "Collection of deleted apps.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "./CommonDefinitions.json#/definitions/DeletedSite" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Your Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).", + "required": true, + "type": "string" + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "API Version", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/Diagnostics.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/Diagnostics.json new file mode 100644 index 000000000000..5edc7c56df5e --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/Diagnostics.json @@ -0,0 +1,2119 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-12-01", + "title": "Diagnostics API Client" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/detectors": { + "get": { + "tags": [ + "Diagnostics" + ], + "summary": "List Hosting Environment Detector Responses", + "description": "Description for List Hosting Environment Detector Responses", + "operationId": "Diagnostics_ListHostingEnvironmentDetectorResponses", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site Name", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DetectorResponseCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get App Service Environment Detector Responses": { + "$ref": "./examples/Diagnostics_ListHostingEnvironmentDetectorResponses.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/detectors/{detectorName}": { + "get": { + "tags": [ + "Diagnostics" + ], + "summary": "Get Hosting Environment Detector Response", + "description": "Description for Get Hosting Environment Detector Response", + "operationId": "Diagnostics_GetHostingEnvironmentDetectorResponse", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "App Service Environment Name", + "required": true, + "type": "string" + }, + { + "name": "detectorName", + "in": "path", + "description": "Detector Resource Name", + "required": true, + "type": "string" + }, + { + "name": "startTime", + "in": "query", + "description": "Start Time", + "type": "string", + "format": "date-time" + }, + { + "name": "endTime", + "in": "query", + "description": "End Time", + "type": "string", + "format": "date-time" + }, + { + "name": "timeGrain", + "in": "query", + "description": "Time Grain", + "type": "string", + "pattern": "PT[1-9][0-9]+[SMH]" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DetectorResponse" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get App Service Environment Detector Responses": { + "$ref": "./examples/Diagnostics_GetHostingEnvironmentDetectorResponse.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/detectors": { + "get": { + "tags": [ + "Diagnostics" + ], + "summary": "List Site Detector Responses", + "description": "Description for List Site Detector Responses", + "operationId": "Diagnostics_ListSiteDetectorResponses", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "siteName", + "in": "path", + "description": "Site Name", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DetectorResponseCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get App Detector Responses": { + "$ref": "./examples/Diagnostics_ListSiteDetectorResponses.json" + }, + "Get App Slot Detector Responses": { + "$ref": "./examples/Diagnostics_ListSiteDetectorResponsesSlot.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/detectors/{detectorName}": { + "get": { + "tags": [ + "Diagnostics" + ], + "summary": "Get site detector response", + "description": "Description for Get site detector response", + "operationId": "Diagnostics_GetSiteDetectorResponse", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "siteName", + "in": "path", + "description": "Site Name", + "required": true, + "type": "string" + }, + { + "name": "detectorName", + "in": "path", + "description": "Detector Resource Name", + "required": true, + "type": "string" + }, + { + "name": "startTime", + "in": "query", + "description": "Start Time", + "type": "string", + "format": "date-time" + }, + { + "name": "endTime", + "in": "query", + "description": "End Time", + "type": "string", + "format": "date-time" + }, + { + "name": "timeGrain", + "in": "query", + "description": "Time Grain", + "type": "string", + "pattern": "PT[1-9][0-9]+[SMH]" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DetectorResponse" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get App Detector Response": { + "$ref": "./examples/Diagnostics_GetSiteDetectorResponse.json" + }, + "Get App Slot Detector Response": { + "$ref": "./examples/Diagnostics_GetSiteDetectorResponseSlot.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/diagnostics": { + "get": { + "tags": [ + "Diagnostics" + ], + "summary": "Get Diagnostics Categories", + "description": "Description for Get Diagnostics Categories", + "operationId": "Diagnostics_ListSiteDiagnosticCategories", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "siteName", + "in": "path", + "description": "Site Name", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiagnosticCategoryCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List App Diagnostic Categories": { + "$ref": "./examples/Diagnostics_ListSiteDiagnosticCategories.json" + }, + "List App Slot Diagnostic Categories": { + "$ref": "./examples/Diagnostics_ListSiteDiagnosticCategoriesSlot.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/diagnostics/{diagnosticCategory}": { + "get": { + "tags": [ + "Diagnostics" + ], + "summary": "Get Diagnostics Category", + "description": "Description for Get Diagnostics Category", + "operationId": "Diagnostics_GetSiteDiagnosticCategory", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "siteName", + "in": "path", + "description": "Site Name", + "required": true, + "type": "string" + }, + { + "name": "diagnosticCategory", + "in": "path", + "description": "Diagnostic Category", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiagnosticCategory" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get App Diagnostic Category": { + "$ref": "./examples/Diagnostics_GetSiteDiagnosticCategory.json" + }, + "Get App Slot Diagnostic Category": { + "$ref": "./examples/Diagnostics_GetSiteDiagnosticCategorySlot.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/diagnostics/{diagnosticCategory}/analyses": { + "get": { + "tags": [ + "Diagnostics" + ], + "summary": "Get Site Analyses", + "description": "Description for Get Site Analyses", + "operationId": "Diagnostics_ListSiteAnalyses", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "siteName", + "in": "path", + "description": "Site Name", + "required": true, + "type": "string" + }, + { + "name": "diagnosticCategory", + "in": "path", + "description": "Diagnostic Category", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiagnosticAnalysisCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List App Analyses": { + "$ref": "./examples/Diagnostics_ListSiteAnalyses.json" + }, + "List App Slot Analyses": { + "$ref": "./examples/Diagnostics_ListSiteAnalysesSlot.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/diagnostics/{diagnosticCategory}/analyses/{analysisName}": { + "get": { + "tags": [ + "Diagnostics" + ], + "summary": "Get Site Analysis", + "description": "Description for Get Site Analysis", + "operationId": "Diagnostics_GetSiteAnalysis", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "siteName", + "in": "path", + "description": "Site Name", + "required": true, + "type": "string" + }, + { + "name": "diagnosticCategory", + "in": "path", + "description": "Diagnostic Category", + "required": true, + "type": "string" + }, + { + "name": "analysisName", + "in": "path", + "description": "Analysis Name", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AnalysisDefinition" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get App Analysis": { + "$ref": "./examples/Diagnostics_GetSiteAnalysis.json" + }, + "Get App Slot Analysis": { + "$ref": "./examples/Diagnostics_GetSiteAnalysisSlot.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/diagnostics/{diagnosticCategory}/analyses/{analysisName}/execute": { + "post": { + "tags": [ + "Diagnostics" + ], + "summary": "Execute Analysis", + "description": "Description for Execute Analysis", + "operationId": "Diagnostics_ExecuteSiteAnalysis", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "siteName", + "in": "path", + "description": "Site Name", + "required": true, + "type": "string" + }, + { + "name": "diagnosticCategory", + "in": "path", + "description": "Category Name", + "required": true, + "type": "string" + }, + { + "name": "analysisName", + "in": "path", + "description": "Analysis Resource Name", + "required": true, + "type": "string" + }, + { + "name": "startTime", + "in": "query", + "description": "Start Time", + "type": "string", + "format": "date-time" + }, + { + "name": "endTime", + "in": "query", + "description": "End Time", + "type": "string", + "format": "date-time" + }, + { + "name": "timeGrain", + "in": "query", + "description": "Time Grain", + "type": "string", + "pattern": "PT[1-9][0-9]+[SMH]" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiagnosticAnalysis" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Execute site slot analysis": { + "$ref": "./examples/Diagnostics_ExecuteSiteAnalysisSlot.json" + }, + "Execute site analysis": { + "$ref": "./examples/Diagnostics_ExecuteSiteAnalysis.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/diagnostics/{diagnosticCategory}/detectors": { + "get": { + "tags": [ + "Diagnostics" + ], + "summary": "Get Detectors", + "description": "Description for Get Detectors", + "operationId": "Diagnostics_ListSiteDetectors", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "siteName", + "in": "path", + "description": "Site Name", + "required": true, + "type": "string" + }, + { + "name": "diagnosticCategory", + "in": "path", + "description": "Diagnostic Category", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiagnosticDetectorCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List App Detectors": { + "$ref": "./examples/Diagnostics_ListSiteDetectors.json" + }, + "List App Slot Detectors": { + "$ref": "./examples/Diagnostics_ListSiteDetectorsSlot.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/diagnostics/{diagnosticCategory}/detectors/{detectorName}": { + "get": { + "tags": [ + "Diagnostics" + ], + "summary": "Get Detector", + "description": "Description for Get Detector", + "operationId": "Diagnostics_GetSiteDetector", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "siteName", + "in": "path", + "description": "Site Name", + "required": true, + "type": "string" + }, + { + "name": "diagnosticCategory", + "in": "path", + "description": "Diagnostic Category", + "required": true, + "type": "string" + }, + { + "name": "detectorName", + "in": "path", + "description": "Detector Name", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DetectorDefinition" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get App Detector": { + "$ref": "./examples/Diagnostics_GetSiteDetector.json" + }, + "Get App Slot Detector": { + "$ref": "./examples/Diagnostics_GetSiteDetectorSlot.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/diagnostics/{diagnosticCategory}/detectors/{detectorName}/execute": { + "post": { + "tags": [ + "Diagnostics" + ], + "summary": "Execute Detector", + "description": "Description for Execute Detector", + "operationId": "Diagnostics_ExecuteSiteDetector", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "siteName", + "in": "path", + "description": "Site Name", + "required": true, + "type": "string" + }, + { + "name": "detectorName", + "in": "path", + "description": "Detector Resource Name", + "required": true, + "type": "string" + }, + { + "name": "diagnosticCategory", + "in": "path", + "description": "Category Name", + "required": true, + "type": "string" + }, + { + "name": "startTime", + "in": "query", + "description": "Start Time", + "type": "string", + "format": "date-time" + }, + { + "name": "endTime", + "in": "query", + "description": "End Time", + "type": "string", + "format": "date-time" + }, + { + "name": "timeGrain", + "in": "query", + "description": "Time Grain", + "type": "string", + "pattern": "PT[1-9][0-9]+[SMH]" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiagnosticDetectorResponse" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Execute site detector": { + "$ref": "./examples/Diagnostics_ExecuteSiteDetector.json" + }, + "Execute site slot detector": { + "$ref": "./examples/Diagnostics_ExecuteSiteDetectorSlot.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/slots/{slot}/detectors": { + "get": { + "tags": [ + "Diagnostics" + ], + "summary": "List Site Detector Responses", + "description": "Description for List Site Detector Responses", + "operationId": "Diagnostics_ListSiteDetectorResponsesSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "siteName", + "in": "path", + "description": "Site Name", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Slot Name", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DetectorResponseCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get App Detector Responses": { + "$ref": "./examples/Diagnostics_ListSiteDetectorResponses.json" + }, + "Get App Slot Detector Responses": { + "$ref": "./examples/Diagnostics_ListSiteDetectorResponsesSlot.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/slots/{slot}/detectors/{detectorName}": { + "get": { + "tags": [ + "Diagnostics" + ], + "summary": "Get site detector response", + "description": "Description for Get site detector response", + "operationId": "Diagnostics_GetSiteDetectorResponseSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "siteName", + "in": "path", + "description": "Site Name", + "required": true, + "type": "string" + }, + { + "name": "detectorName", + "in": "path", + "description": "Detector Resource Name", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Slot Name", + "required": true, + "type": "string" + }, + { + "name": "startTime", + "in": "query", + "description": "Start Time", + "type": "string", + "format": "date-time" + }, + { + "name": "endTime", + "in": "query", + "description": "End Time", + "type": "string", + "format": "date-time" + }, + { + "name": "timeGrain", + "in": "query", + "description": "Time Grain", + "type": "string", + "pattern": "PT[1-9][0-9]+[SMH]" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DetectorResponse" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get App Detector Response": { + "$ref": "./examples/Diagnostics_GetSiteDetectorResponse.json" + }, + "Get App Slot Detector Response": { + "$ref": "./examples/Diagnostics_GetSiteDetectorResponseSlot.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/slots/{slot}/diagnostics": { + "get": { + "tags": [ + "Diagnostics" + ], + "summary": "Get Diagnostics Categories", + "description": "Description for Get Diagnostics Categories", + "operationId": "Diagnostics_ListSiteDiagnosticCategoriesSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "siteName", + "in": "path", + "description": "Site Name", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Slot Name", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiagnosticCategoryCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List App Diagnostic Categories": { + "$ref": "./examples/Diagnostics_ListSiteDiagnosticCategories.json" + }, + "List App Slot Diagnostic Categories": { + "$ref": "./examples/Diagnostics_ListSiteDiagnosticCategoriesSlot.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/slots/{slot}/diagnostics/{diagnosticCategory}": { + "get": { + "tags": [ + "Diagnostics" + ], + "summary": "Get Diagnostics Category", + "description": "Description for Get Diagnostics Category", + "operationId": "Diagnostics_GetSiteDiagnosticCategorySlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "siteName", + "in": "path", + "description": "Site Name", + "required": true, + "type": "string" + }, + { + "name": "diagnosticCategory", + "in": "path", + "description": "Diagnostic Category", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Slot Name", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiagnosticCategory" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get App Diagnostic Category": { + "$ref": "./examples/Diagnostics_GetSiteDiagnosticCategory.json" + }, + "Get App Slot Diagnostic Category": { + "$ref": "./examples/Diagnostics_GetSiteDiagnosticCategorySlot.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/slots/{slot}/diagnostics/{diagnosticCategory}/analyses": { + "get": { + "tags": [ + "Diagnostics" + ], + "summary": "Get Site Analyses", + "description": "Description for Get Site Analyses", + "operationId": "Diagnostics_ListSiteAnalysesSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "siteName", + "in": "path", + "description": "Site Name", + "required": true, + "type": "string" + }, + { + "name": "diagnosticCategory", + "in": "path", + "description": "Diagnostic Category", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Slot Name", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiagnosticAnalysisCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List App Analyses": { + "$ref": "./examples/Diagnostics_ListSiteAnalyses.json" + }, + "List App Slot Analyses": { + "$ref": "./examples/Diagnostics_ListSiteAnalysesSlot.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/slots/{slot}/diagnostics/{diagnosticCategory}/analyses/{analysisName}": { + "get": { + "tags": [ + "Diagnostics" + ], + "summary": "Get Site Analysis", + "description": "Description for Get Site Analysis", + "operationId": "Diagnostics_GetSiteAnalysisSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "siteName", + "in": "path", + "description": "Site Name", + "required": true, + "type": "string" + }, + { + "name": "diagnosticCategory", + "in": "path", + "description": "Diagnostic Category", + "required": true, + "type": "string" + }, + { + "name": "analysisName", + "in": "path", + "description": "Analysis Name", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Slot - optional", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AnalysisDefinition" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get App Analysis": { + "$ref": "./examples/Diagnostics_GetSiteAnalysis.json" + }, + "Get App Slot Analysis": { + "$ref": "./examples/Diagnostics_GetSiteAnalysisSlot.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/slots/{slot}/diagnostics/{diagnosticCategory}/analyses/{analysisName}/execute": { + "post": { + "tags": [ + "Diagnostics" + ], + "summary": "Execute Analysis", + "description": "Description for Execute Analysis", + "operationId": "Diagnostics_ExecuteSiteAnalysisSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "siteName", + "in": "path", + "description": "Site Name", + "required": true, + "type": "string" + }, + { + "name": "diagnosticCategory", + "in": "path", + "description": "Category Name", + "required": true, + "type": "string" + }, + { + "name": "analysisName", + "in": "path", + "description": "Analysis Resource Name", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Slot Name", + "required": true, + "type": "string" + }, + { + "name": "startTime", + "in": "query", + "description": "Start Time", + "type": "string", + "format": "date-time" + }, + { + "name": "endTime", + "in": "query", + "description": "End Time", + "type": "string", + "format": "date-time" + }, + { + "name": "timeGrain", + "in": "query", + "description": "Time Grain", + "type": "string", + "pattern": "PT[1-9][0-9]+[SMH]" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiagnosticAnalysis" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Execute site slot analysis": { + "$ref": "./examples/Diagnostics_ExecuteSiteAnalysisSlot.json" + }, + "Execute site analysis": { + "$ref": "./examples/Diagnostics_ExecuteSiteAnalysis.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/slots/{slot}/diagnostics/{diagnosticCategory}/detectors": { + "get": { + "tags": [ + "Diagnostics" + ], + "summary": "Get Detectors", + "description": "Description for Get Detectors", + "operationId": "Diagnostics_ListSiteDetectorsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "siteName", + "in": "path", + "description": "Site Name", + "required": true, + "type": "string" + }, + { + "name": "diagnosticCategory", + "in": "path", + "description": "Diagnostic Category", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Slot Name", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiagnosticDetectorCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List App Detectors": { + "$ref": "./examples/Diagnostics_ListSiteDetectors.json" + }, + "List App Slot Detectors": { + "$ref": "./examples/Diagnostics_ListSiteDetectorsSlot.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/slots/{slot}/diagnostics/{diagnosticCategory}/detectors/{detectorName}": { + "get": { + "tags": [ + "Diagnostics" + ], + "summary": "Get Detector", + "description": "Description for Get Detector", + "operationId": "Diagnostics_GetSiteDetectorSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "siteName", + "in": "path", + "description": "Site Name", + "required": true, + "type": "string" + }, + { + "name": "diagnosticCategory", + "in": "path", + "description": "Diagnostic Category", + "required": true, + "type": "string" + }, + { + "name": "detectorName", + "in": "path", + "description": "Detector Name", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Slot Name", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DetectorDefinition" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get App Detector": { + "$ref": "./examples/Diagnostics_GetSiteDetector.json" + }, + "Get App Slot Detector": { + "$ref": "./examples/Diagnostics_GetSiteDetectorSlot.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/slots/{slot}/diagnostics/{diagnosticCategory}/detectors/{detectorName}/execute": { + "post": { + "tags": [ + "Diagnostics" + ], + "summary": "Execute Detector", + "description": "Description for Execute Detector", + "operationId": "Diagnostics_ExecuteSiteDetectorSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "siteName", + "in": "path", + "description": "Site Name", + "required": true, + "type": "string" + }, + { + "name": "detectorName", + "in": "path", + "description": "Detector Resource Name", + "required": true, + "type": "string" + }, + { + "name": "diagnosticCategory", + "in": "path", + "description": "Category Name", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Slot Name", + "required": true, + "type": "string" + }, + { + "name": "startTime", + "in": "query", + "description": "Start Time", + "type": "string", + "format": "date-time" + }, + { + "name": "endTime", + "in": "query", + "description": "End Time", + "type": "string", + "format": "date-time" + }, + { + "name": "timeGrain", + "in": "query", + "description": "Time Grain", + "type": "string", + "pattern": "PT[1-9][0-9]+[SMH]" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiagnosticDetectorResponse" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Execute site detector": { + "$ref": "./examples/Diagnostics_ExecuteSiteDetector.json" + }, + "Execute site slot detector": { + "$ref": "./examples/Diagnostics_ExecuteSiteDetectorSlot.json" + } + } + } + } + }, + "definitions": { + "AbnormalTimePeriod": { + "description": "Class representing Abnormal Time Period identified in diagnosis", + "type": "object", + "properties": { + "startTime": { + "format": "date-time", + "description": "Start time of the downtime", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "End time of the downtime", + "type": "string" + }, + "events": { + "description": "List of Possible Cause of downtime", + "type": "array", + "items": { + "$ref": "#/definitions/DetectorAbnormalTimePeriod" + } + }, + "solutions": { + "description": "List of proposed solutions", + "type": "array", + "items": { + "$ref": "#/definitions/Solution" + } + } + } + }, + "AnalysisData": { + "description": "Class Representing Detector Evidence used for analysis", + "type": "object", + "properties": { + "source": { + "description": "Name of the Detector", + "type": "string" + }, + "detectorDefinition": { + "$ref": "#/definitions/DetectorDefinition", + "description": "Detector Definition" + }, + "metrics": { + "description": "Source Metrics", + "type": "array", + "items": { + "$ref": "#/definitions/DiagnosticMetricSet" + } + }, + "data": { + "description": "Additional Source Data", + "type": "array", + "items": { + "type": "array", + "items": { + "$ref": "./CommonDefinitions.json#/definitions/NameValuePair" + } + } + }, + "detectorMetaData": { + "$ref": "#/definitions/ResponseMetaData", + "description": "Detector Meta Data" + } + } + }, + "AnalysisDefinition": { + "description": "Definition of Analysis", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "AnalysisDefinition resource specific properties", + "properties": { + "description": { + "description": "Description of the Analysis", + "type": "string", + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "DataSource": { + "description": "Class representing data source used by the detectors", + "type": "object", + "properties": { + "instructions": { + "description": "Instructions if any for the data source", + "type": "array", + "items": { + "type": "string" + } + }, + "dataSourceUri": { + "description": "Datasource Uri Links", + "type": "array", + "items": { + "$ref": "./CommonDefinitions.json#/definitions/NameValuePair" + } + } + } + }, + "DetectorAbnormalTimePeriod": { + "description": "Class representing Abnormal Time Period detected.", + "type": "object", + "properties": { + "startTime": { + "format": "date-time", + "description": "Start time of the correlated event", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "End time of the correlated event", + "type": "string" + }, + "message": { + "description": "Message describing the event", + "type": "string" + }, + "source": { + "description": "Represents the name of the Detector", + "type": "string" + }, + "priority": { + "format": "double", + "description": "Represents the rank of the Detector", + "type": "number" + }, + "metaData": { + "description": "Downtime metadata", + "type": "array", + "items": { + "type": "array", + "items": { + "$ref": "./CommonDefinitions.json#/definitions/NameValuePair" + } + } + }, + "type": { + "description": "Represents the type of the Detector", + "enum": [ + "ServiceIncident", + "AppDeployment", + "AppCrash", + "RuntimeIssueDetected", + "AseDeployment", + "UserIssue", + "PlatformIssue", + "Other" + ], + "type": "string", + "x-ms-enum": { + "name": "IssueType", + "modelAsString": false + } + }, + "solutions": { + "description": "List of proposed solutions", + "type": "array", + "items": { + "$ref": "#/definitions/Solution" + } + } + } + }, + "DetectorDefinition": { + "description": "Class representing detector definition", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "DetectorDefinition resource specific properties", + "properties": { + "displayName": { + "description": "Display name of the detector", + "type": "string", + "readOnly": true + }, + "description": { + "description": "Description of the detector", + "type": "string", + "readOnly": true + }, + "rank": { + "format": "double", + "description": "Detector Rank", + "type": "number", + "readOnly": true + }, + "isEnabled": { + "description": "Flag representing whether detector is enabled or not.", + "type": "boolean", + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "DiagnosticAnalysis": { + "description": "Class representing a diagnostic analysis done on an application", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "DiagnosticAnalysis resource specific properties", + "properties": { + "startTime": { + "format": "date-time", + "description": "Start time of the period", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "End time of the period", + "type": "string" + }, + "abnormalTimePeriods": { + "description": "List of time periods.", + "type": "array", + "items": { + "$ref": "#/definitions/AbnormalTimePeriod" + } + }, + "payload": { + "description": "Data by each detector", + "type": "array", + "items": { + "$ref": "#/definitions/AnalysisData" + } + }, + "nonCorrelatedDetectors": { + "description": "Data by each detector for detectors that did not corelate", + "type": "array", + "items": { + "$ref": "#/definitions/DetectorDefinition" + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "DiagnosticAnalysisCollection": { + "description": "Collection of Diagnostic Analyses", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/AnalysisDefinition" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "DiagnosticCategory": { + "description": "Class representing detector definition", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "DiagnosticCategory resource specific properties", + "properties": { + "description": { + "description": "Description of the diagnostic category", + "type": "string", + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "DiagnosticCategoryCollection": { + "description": "Collection of Diagnostic Categories", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/DiagnosticCategory" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "DiagnosticDetectorCollection": { + "description": "Collection of Diagnostic Detectors", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/DetectorDefinition" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "DiagnosticDetectorResponse": { + "description": "Class representing Response from Diagnostic Detectors", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "DiagnosticDetectorResponse resource specific properties", + "properties": { + "startTime": { + "format": "date-time", + "description": "Start time of the period", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "End time of the period", + "type": "string" + }, + "issueDetected": { + "description": "Flag representing Issue was detected.", + "type": "boolean" + }, + "detectorDefinition": { + "$ref": "#/definitions/DetectorDefinition", + "description": "Detector's definition" + }, + "metrics": { + "description": "Metrics provided by the detector", + "type": "array", + "items": { + "$ref": "#/definitions/DiagnosticMetricSet" + } + }, + "abnormalTimePeriods": { + "description": "List of Correlated events found by the detector", + "type": "array", + "items": { + "$ref": "#/definitions/DetectorAbnormalTimePeriod" + } + }, + "data": { + "description": "Additional Data that detector wants to send.", + "type": "array", + "items": { + "type": "array", + "items": { + "$ref": "./CommonDefinitions.json#/definitions/NameValuePair" + } + } + }, + "responseMetaData": { + "$ref": "#/definitions/ResponseMetaData", + "description": "Meta Data" + } + }, + "x-ms-client-flatten": true + } + } + }, + "DiagnosticMetricSample": { + "description": "Class representing Diagnostic Metric", + "type": "object", + "properties": { + "timestamp": { + "format": "date-time", + "description": "Time at which metric is measured", + "type": "string" + }, + "roleInstance": { + "description": "Role Instance. Null if this counter is not per instance \nThis is returned and should be whichever instance name we desire to be returned\ni.e. CPU and Memory return RDWORKERNAME (LargeDed..._IN_0) \nwhere RDWORKERNAME is Machine name below and RoleInstance name in parenthesis", + "type": "string" + }, + "total": { + "format": "double", + "description": "Total value of the metric. If multiple measurements are made this will have sum of all.", + "type": "number" + }, + "maximum": { + "format": "double", + "description": "Maximum of the metric sampled during the time period", + "type": "number" + }, + "minimum": { + "format": "double", + "description": "Minimum of the metric sampled during the time period", + "type": "number" + }, + "isAggregated": { + "description": "Whether the values are aggregates across all workers or not", + "type": "boolean" + } + } + }, + "DiagnosticMetricSet": { + "description": "Class representing Diagnostic Metric information", + "type": "object", + "properties": { + "name": { + "description": "Name of the metric", + "type": "string" + }, + "unit": { + "description": "Metric's unit", + "type": "string" + }, + "startTime": { + "format": "date-time", + "description": "Start time of the period", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "End time of the period", + "type": "string" + }, + "timeGrain": { + "description": "Presented time grain. Supported grains at the moment are PT1M, PT1H, P1D", + "type": "string" + }, + "values": { + "description": "Collection of metric values for the selected period based on the {Microsoft.Web.Hosting.Administration.DiagnosticMetricSet.TimeGrain}", + "type": "array", + "items": { + "$ref": "#/definitions/DiagnosticMetricSample" + } + } + } + }, + "ResponseMetaData": { + "type": "object", + "properties": { + "dataSource": { + "$ref": "#/definitions/DataSource", + "description": "Source of the Data" + } + } + }, + "Solution": { + "description": "Class Representing Solution for problems detected.", + "type": "object", + "properties": { + "id": { + "format": "double", + "description": "Solution Id.", + "type": "number" + }, + "displayName": { + "description": "Display Name of the solution", + "type": "string" + }, + "order": { + "format": "double", + "description": "Order of the solution.", + "type": "number" + }, + "description": { + "description": "Description of the solution", + "type": "string" + }, + "type": { + "description": "Type of Solution", + "enum": [ + "QuickSolution", + "DeepInvestigation", + "BestPractices" + ], + "type": "string", + "x-ms-enum": { + "name": "SolutionType", + "modelAsString": false + } + }, + "data": { + "description": "Solution Data.", + "type": "array", + "items": { + "type": "array", + "items": { + "$ref": "./CommonDefinitions.json#/definitions/NameValuePair" + } + } + }, + "metadata": { + "description": "Solution Metadata.", + "type": "array", + "items": { + "type": "array", + "items": { + "$ref": "./CommonDefinitions.json#/definitions/NameValuePair" + } + } + } + } + } + }, + "parameters": { + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Your Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).", + "required": true, + "type": "string" + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "Name of the resource group to which the resource belongs.", + "required": true, + "type": "string", + "maxLength": 90, + "minLength": 1, + "pattern": "^[-\\w\\._\\(\\)]+[^\\.]$", + "x-ms-parameter-location": "method" + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "API Version", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/Global.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/Global.json new file mode 100644 index 000000000000..7fc5ec6d717a --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/Global.json @@ -0,0 +1,193 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-12-01", + "title": "Global API Client" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Web/deletedSites/{deletedSiteId}": { + "get": { + "tags": [ + "Global" + ], + "summary": "Get deleted app for a subscription.", + "description": "Description for Get deleted app for a subscription.", + "operationId": "Global_GetDeletedWebApp", + "parameters": [ + { + "name": "deletedSiteId", + "in": "path", + "description": "The numeric ID of the deleted app, e.g. 12345", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DeletedSite" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Deleted Web App": { + "$ref": "./examples/GetDeletedWebApp.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Web/deletedSites/{deletedSiteId}/snapshots": { + "get": { + "tags": [ + "Global" + ], + "summary": "Get all deleted apps for a subscription.", + "description": "Description for Get all deleted apps for a subscription.", + "operationId": "Global_GetDeletedWebAppSnapshots", + "parameters": [ + { + "name": "deletedSiteId", + "in": "path", + "description": "The numeric ID of the deleted app, e.g. 12345", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "./CommonDefinitions.json#/definitions/Snapshot" + } + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Deleted Web App Snapshots": { + "$ref": "./examples/GetDeletedWebAppSnapshots.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Web/locations/{location}/operations/{operationId}": { + "get": { + "tags": [ + "Global" + ], + "summary": "Gets an operation in a subscription and given region", + "description": "Description for Gets an operation in a subscription and given region", + "operationId": "Global_GetSubscriptionOperationWithAsyncResponse", + "parameters": [ + { + "name": "location", + "in": "path", + "description": "Location name", + "required": true, + "type": "string" + }, + { + "name": "operationId", + "in": "path", + "description": "Operation Id", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Gets an operation in a subscription and given region": { + "$ref": "./examples/GetSubscriptionOperationWithAsyncResponse.json" + } + } + } + } + }, + "definitions": {}, + "parameters": { + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Your Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).", + "required": true, + "type": "string" + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "API Version", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/Provider.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/Provider.json new file mode 100644 index 000000000000..39b5010afd30 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/Provider.json @@ -0,0 +1,1114 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-12-01", + "title": "Provider API Client" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/providers/Microsoft.Web/availableStacks": { + "get": { + "tags": [ + "Provider" + ], + "summary": "Get available application frameworks and their versions", + "description": "Description for Get available application frameworks and their versions", + "operationId": "Provider_GetAvailableStacks", + "parameters": [ + { + "name": "osTypeSelected", + "in": "query", + "type": "string", + "enum": [ + "Windows", + "Linux", + "WindowsFunctions", + "LinuxFunctions", + "All" + ] + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ApplicationStackCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Web/functionAppStacks": { + "get": { + "tags": [ + "Provider" + ], + "summary": "Get available Function app frameworks and their versions", + "description": "Description for Get available Function app frameworks and their versions", + "operationId": "Provider_GetFunctionAppStacks", + "parameters": [ + { + "name": "stackOsType", + "in": "query", + "description": "Stack OS Type", + "type": "string", + "enum": [ + "Windows", + "Linux", + "All" + ] + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/FunctionAppStackCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Function App Stacks": { + "$ref": "./examples/GetFunctionAppStacks.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Web/locations/{location}/functionAppStacks": { + "get": { + "tags": [ + "Provider" + ], + "summary": "Get available Function app frameworks and their versions for location", + "description": "Description for Get available Function app frameworks and their versions for location", + "operationId": "Provider_GetFunctionAppStacksForLocation", + "parameters": [ + { + "name": "location", + "in": "path", + "description": "Function App stack location.", + "required": true, + "type": "string" + }, + { + "name": "stackOsType", + "in": "query", + "description": "Stack OS Type", + "type": "string", + "enum": [ + "Windows", + "Linux", + "All" + ] + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/FunctionAppStackCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Locations Function App Stacks": { + "$ref": "./examples/GetFunctionAppStacksForLocation.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Web/locations/{location}/webAppStacks": { + "get": { + "tags": [ + "Provider" + ], + "summary": "Get available Web app frameworks and their versions for location", + "description": "Description for Get available Web app frameworks and their versions for location", + "operationId": "Provider_GetWebAppStacksForLocation", + "parameters": [ + { + "name": "location", + "in": "path", + "description": "Web App stack location.", + "required": true, + "type": "string" + }, + { + "name": "stackOsType", + "in": "query", + "description": "Stack OS Type", + "type": "string", + "enum": [ + "Windows", + "Linux", + "All" + ] + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/WebAppStackCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Locations Web App Stacks": { + "$ref": "./examples/GetWebAppStacksForLocation.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Web/operations": { + "get": { + "tags": [ + "Provider" + ], + "summary": "Gets all available operations for the Microsoft.Web resource provider. Also exposes resource metric definitions", + "description": "Description for Gets all available operations for the Microsoft.Web resource provider. Also exposes resource metric definitions", + "operationId": "Provider_ListOperations", + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/CsmOperationCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List operations": { + "$ref": "./examples/ListOperations.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Web/webAppStacks": { + "get": { + "tags": [ + "Provider" + ], + "summary": "Get available Web app frameworks and their versions", + "description": "Description for Get available Web app frameworks and their versions", + "operationId": "Provider_GetWebAppStacks", + "parameters": [ + { + "name": "stackOsType", + "in": "query", + "description": "Stack OS Type", + "type": "string", + "enum": [ + "Windows", + "Linux", + "All" + ] + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/WebAppStackCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Web App Stacks": { + "$ref": "./examples/GetWebAppStacks.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Web/availableStacks": { + "get": { + "tags": [ + "Provider" + ], + "summary": "Get available application frameworks and their versions", + "description": "Description for Get available application frameworks and their versions", + "operationId": "Provider_GetAvailableStacksOnPrem", + "parameters": [ + { + "name": "osTypeSelected", + "in": "query", + "type": "string", + "enum": [ + "Windows", + "Linux", + "WindowsFunctions", + "LinuxFunctions", + "All" + ] + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ApplicationStackCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "AppInsightsWebAppStackSettings": { + "description": "App Insights Web App stack settings.", + "type": "object", + "properties": { + "isSupported": { + "description": "true if remote Application Insights is supported for the stack; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "isDefaultOff": { + "description": "true if Application Insights is disabled by default for the stack; otherwise, false.", + "type": "boolean", + "readOnly": true + } + } + }, + "ApplicationStack": { + "description": "Application stack.", + "type": "object", + "properties": { + "name": { + "description": "Application stack name.", + "type": "string" + }, + "display": { + "description": "Application stack display name.", + "type": "string" + }, + "dependency": { + "description": "Application stack dependency.", + "type": "string" + }, + "majorVersions": { + "description": "List of major versions available.", + "type": "array", + "items": { + "$ref": "#/definitions/StackMajorVersion" + } + }, + "frameworks": { + "description": "List of frameworks associated with application stack.", + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationStack" + } + }, + "isDeprecated": { + "description": "true if this is the stack is deprecated; otherwise, false.", + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationStack" + } + } + } + }, + "ApplicationStackCollection": { + "description": "Collection of Application Stacks", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationStackResource" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "ApplicationStackResource": { + "description": "ARM resource for a ApplicationStack.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ApplicationStack", + "description": "Core resource properties", + "x-ms-client-flatten": true + } + } + }, + "FunctionAppMajorVersion": { + "description": "Function App stack major version.", + "type": "object", + "properties": { + "displayText": { + "description": "Function App stack major version (display only).", + "type": "string", + "readOnly": true + }, + "value": { + "description": "Function App stack major version name.", + "type": "string", + "readOnly": true + }, + "minorVersions": { + "description": "Minor versions associated with the major version.", + "type": "array", + "items": { + "$ref": "#/definitions/FunctionAppMinorVersion" + }, + "readOnly": true + } + } + }, + "FunctionAppMinorVersion": { + "description": "Function App stack minor version.", + "type": "object", + "properties": { + "displayText": { + "description": "Function App stack (display only).", + "type": "string", + "readOnly": true + }, + "value": { + "description": "Function App stack name.", + "type": "string", + "readOnly": true + }, + "stackSettings": { + "$ref": "#/definitions/FunctionAppRuntimes", + "description": "Settings associated with the minor version.", + "readOnly": true + } + } + }, + "FunctionAppRuntimeSettings": { + "description": "Function App runtime settings.", + "type": "object", + "properties": { + "runtimeVersion": { + "description": "Function App stack minor version (runtime only).", + "type": "string", + "readOnly": true + }, + "remoteDebuggingSupported": { + "description": "true if remote debugging is supported for the stack; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "appInsightsSettings": { + "$ref": "#/definitions/AppInsightsWebAppStackSettings", + "description": "Application Insights settings associated with the minor version.", + "readOnly": true + }, + "gitHubActionSettings": { + "$ref": "#/definitions/GitHubActionWebAppStackSettings", + "description": "GitHub Actions settings associated with the minor version.", + "readOnly": true + }, + "appSettingsDictionary": { + "description": "Application settings associated with the minor version.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "readOnly": true + }, + "siteConfigPropertiesDictionary": { + "$ref": "#/definitions/SiteConfigPropertiesDictionary", + "description": "Configuration settings associated with the minor version.", + "readOnly": true + }, + "supportedFunctionsExtensionVersions": { + "description": "List of supported Functions extension versions.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "isPreview": { + "description": "true if the stack is in preview; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "isDeprecated": { + "description": "true if the stack is deprecated; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "isHidden": { + "description": "true if the stack should be hidden; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "endOfLifeDate": { + "format": "date-time", + "description": "End-of-life date for the minor version.", + "type": "string", + "readOnly": true + }, + "isAutoUpdate": { + "description": "true if the stack version is auto-updated; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "isEarlyAccess": { + "description": "true if the minor version is early-access; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "isDefault": { + "description": "true if the minor version the default; otherwise, false.", + "type": "boolean", + "readOnly": true + } + } + }, + "FunctionAppRuntimes": { + "description": "Function App stack runtimes.", + "type": "object", + "properties": { + "linuxRuntimeSettings": { + "$ref": "#/definitions/FunctionAppRuntimeSettings", + "description": "Linux-specific settings associated with the minor version.", + "readOnly": true + }, + "windowsRuntimeSettings": { + "$ref": "#/definitions/FunctionAppRuntimeSettings", + "description": "Windows-specific settings associated with the minor version.", + "readOnly": true + } + } + }, + "FunctionAppStack": { + "description": "Function App Stack.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "location": { + "description": "Function App stack location.", + "type": "string", + "readOnly": true + }, + "properties": { + "description": "FunctionAppStack resource specific properties", + "properties": { + "displayText": { + "description": "Function App stack (display only).", + "type": "string", + "readOnly": true + }, + "value": { + "description": "Function App stack name.", + "type": "string", + "readOnly": true + }, + "majorVersions": { + "description": "List of major versions available.", + "type": "array", + "items": { + "$ref": "#/definitions/FunctionAppMajorVersion" + }, + "readOnly": true + }, + "preferredOs": { + "description": "Function App stack preferred OS.", + "enum": [ + "Windows", + "Linux" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "StackPreferredOs", + "modelAsString": false + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "FunctionAppStackCollection": { + "description": "Collection of Function app Stacks", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/FunctionAppStack" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "GitHubActionWebAppStackSettings": { + "description": "GitHub Actions Web App stack settings.", + "type": "object", + "properties": { + "isSupported": { + "description": "true if GitHub Actions is supported for the stack; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "supportedVersion": { + "description": "The minor version that is supported for GitHub Actions.", + "type": "string", + "readOnly": true + } + } + }, + "LinuxJavaContainerSettings": { + "description": "Linux Java Container settings.", + "type": "object", + "properties": { + "java11Runtime": { + "description": "Java 11 version (runtime only).", + "type": "string", + "readOnly": true + }, + "java8Runtime": { + "description": "Java 8 version (runtime only).", + "type": "string", + "readOnly": true + }, + "isPreview": { + "description": "true if the stack is in preview; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "isDeprecated": { + "description": "true if the stack is deprecated; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "isHidden": { + "description": "true if the stack should be hidden; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "endOfLifeDate": { + "format": "date-time", + "description": "End-of-life date for the minor version.", + "type": "string", + "readOnly": true + }, + "isAutoUpdate": { + "description": "true if the stack version is auto-updated; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "isEarlyAccess": { + "description": "true if the minor version is early-access; otherwise, false.", + "type": "boolean", + "readOnly": true + } + } + }, + "SiteConfigPropertiesDictionary": { + "description": "Site config properties dictionary.", + "type": "object", + "properties": { + "use32BitWorkerProcess": { + "description": "true if use32BitWorkerProcess should be set to true for the stack; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "linuxFxVersion": { + "description": "LinuxFxVersion configuration setting.", + "type": "string", + "readOnly": true + }, + "javaVersion": { + "description": "JavaVersion configuration setting.", + "type": "string", + "readOnly": true + }, + "powerShellVersion": { + "description": "PowerShellVersion configuration setting.", + "type": "string", + "readOnly": true + } + } + }, + "StackMajorVersion": { + "description": "Application stack major version.", + "type": "object", + "properties": { + "displayVersion": { + "description": "Application stack major version (display only).", + "type": "string" + }, + "runtimeVersion": { + "description": "Application stack major version (runtime only).", + "type": "string" + }, + "isDefault": { + "description": "true if this is the default major version; otherwise, false.", + "type": "boolean" + }, + "minorVersions": { + "description": "Minor versions associated with the major version.", + "type": "array", + "items": { + "$ref": "#/definitions/StackMinorVersion" + } + }, + "applicationInsights": { + "description": "true if this supports Application Insights; otherwise, false.", + "type": "boolean" + }, + "isPreview": { + "description": "true if this stack is in Preview, otherwise false.", + "type": "boolean" + }, + "isDeprecated": { + "description": "true if this stack has been deprecated, otherwise false.", + "type": "boolean" + }, + "isHidden": { + "description": "true if this stack should be hidden for new customers on portal, otherwise false.", + "type": "boolean" + }, + "appSettingsDictionary": { + "description": "\n \n\n Example: All the function apps need AppSetting: \"FUNCTIONS_WORKER_RUNTIME\" to be set stack name", + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "siteConfigPropertiesDictionary": { + "description": "\n \n\n Example: All Linux Function Apps, need Use32BitWorkerProcess to be set to 0", + "type": "object", + "additionalProperties": { + "type": "object" + } + } + } + }, + "StackMinorVersion": { + "description": "Application stack minor version.", + "type": "object", + "properties": { + "displayVersion": { + "description": "Application stack minor version (display only).", + "type": "string" + }, + "runtimeVersion": { + "description": "Application stack minor version (runtime only).", + "type": "string" + }, + "isDefault": { + "description": "true if this is the default minor version; otherwise, false.", + "type": "boolean" + }, + "isRemoteDebuggingEnabled": { + "description": "true if this supports Remote Debugging, otherwise false.", + "type": "boolean" + } + } + }, + "WebAppMajorVersion": { + "description": "Web App stack major version.", + "type": "object", + "properties": { + "displayText": { + "description": "Web App stack major version (display only).", + "type": "string", + "readOnly": true + }, + "value": { + "description": "Web App stack major version name.", + "type": "string", + "readOnly": true + }, + "minorVersions": { + "description": "Minor versions associated with the major version.", + "type": "array", + "items": { + "$ref": "#/definitions/WebAppMinorVersion" + }, + "readOnly": true + } + } + }, + "WebAppMinorVersion": { + "description": "Web App stack minor version.", + "type": "object", + "properties": { + "displayText": { + "description": "Web App stack minor version (display only).", + "type": "string", + "readOnly": true + }, + "value": { + "description": "Web App stack major version name.", + "type": "string", + "readOnly": true + }, + "stackSettings": { + "$ref": "#/definitions/WebAppRuntimes", + "description": "Settings associated with the minor version.", + "readOnly": true + } + } + }, + "WebAppRuntimeSettings": { + "description": "Web App runtime settings.", + "type": "object", + "properties": { + "runtimeVersion": { + "description": "Web App stack minor version (runtime only).", + "type": "string", + "readOnly": true + }, + "remoteDebuggingSupported": { + "description": "true if remote debugging is supported for the stack; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "appInsightsSettings": { + "$ref": "#/definitions/AppInsightsWebAppStackSettings", + "description": "Application Insights settings associated with the minor version.", + "readOnly": true + }, + "gitHubActionSettings": { + "$ref": "#/definitions/GitHubActionWebAppStackSettings", + "description": "GitHub Actions settings associated with the minor version.", + "readOnly": true + }, + "isPreview": { + "description": "true if the stack is in preview; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "isDeprecated": { + "description": "true if the stack is deprecated; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "isHidden": { + "description": "true if the stack should be hidden; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "endOfLifeDate": { + "format": "date-time", + "description": "End-of-life date for the minor version.", + "type": "string", + "readOnly": true + }, + "isAutoUpdate": { + "description": "true if the stack version is auto-updated; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "isEarlyAccess": { + "description": "true if the minor version is early-access; otherwise, false.", + "type": "boolean", + "readOnly": true + } + } + }, + "WebAppRuntimes": { + "description": "Web App stack runtimes.", + "type": "object", + "properties": { + "linuxRuntimeSettings": { + "$ref": "#/definitions/WebAppRuntimeSettings", + "description": "Linux-specific settings associated with the minor version.", + "readOnly": true + }, + "windowsRuntimeSettings": { + "$ref": "#/definitions/WebAppRuntimeSettings", + "description": "Windows-specific settings associated with the minor version.", + "readOnly": true + }, + "linuxContainerSettings": { + "$ref": "#/definitions/LinuxJavaContainerSettings", + "description": "Linux-specific settings associated with the Java container minor version.", + "readOnly": true + }, + "windowsContainerSettings": { + "$ref": "#/definitions/WindowsJavaContainerSettings", + "description": "Windows-specific settings associated with the Java container minor version.", + "readOnly": true + } + } + }, + "WebAppStack": { + "description": "Web App stack.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "location": { + "description": "Web App stack location.", + "type": "string", + "readOnly": true + }, + "properties": { + "description": "WebAppStack resource specific properties", + "properties": { + "displayText": { + "description": "Web App stack (display only).", + "type": "string", + "readOnly": true + }, + "value": { + "description": "Web App stack name.", + "type": "string", + "readOnly": true + }, + "majorVersions": { + "description": "List of major versions available.", + "type": "array", + "items": { + "$ref": "#/definitions/WebAppMajorVersion" + }, + "readOnly": true + }, + "preferredOs": { + "description": "Web App stack preferred OS.", + "enum": [ + "Windows", + "Linux" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "StackPreferredOs", + "modelAsString": false + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "WebAppStackCollection": { + "description": "Collection of Web app Stacks", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/WebAppStack" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "WindowsJavaContainerSettings": { + "description": "Windows Java Container settings.", + "type": "object", + "properties": { + "javaContainer": { + "description": "Java container (runtime only).", + "type": "string", + "readOnly": true + }, + "javaContainerVersion": { + "description": "Java container version (runtime only).", + "type": "string", + "readOnly": true + }, + "isPreview": { + "description": "true if the stack is in preview; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "isDeprecated": { + "description": "true if the stack is deprecated; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "isHidden": { + "description": "true if the stack should be hidden; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "endOfLifeDate": { + "format": "date-time", + "description": "End-of-life date for the minor version.", + "type": "string", + "readOnly": true + }, + "isAutoUpdate": { + "description": "true if the stack version is auto-updated; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "isEarlyAccess": { + "description": "true if the minor version is early-access; otherwise, false.", + "type": "boolean", + "readOnly": true + } + } + } + }, + "parameters": { + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Your Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).", + "required": true, + "type": "string" + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "API Version", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/Recommendations.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/Recommendations.json new file mode 100644 index 000000000000..bd8e67948d50 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/Recommendations.json @@ -0,0 +1,1072 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-12-01", + "title": "Recommendations API Client" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Web/recommendations": { + "get": { + "tags": [ + "Recommendations" + ], + "summary": "List all recommendations for a subscription.", + "description": "Description for List all recommendations for a subscription.", + "operationId": "Recommendations_List", + "parameters": [ + { + "name": "featured", + "in": "query", + "description": "Specify true to return only the most critical recommendations. The default is false, which returns all recommendations.", + "type": "boolean" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$filter", + "in": "query", + "description": "Filter is specified by using OData syntax. Example: $filter=channel eq 'Api' or channel eq 'Notification' and startTime eq 2014-01-01T00:00:00Z and endTime eq 2014-12-31T23:59:59Z and timeGrain eq duration'[PT1H|PT1M|P1D]", + "type": "string", + "x-ms-skip-url-encoding": true + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecommendationCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Web/recommendations/reset": { + "post": { + "tags": [ + "Recommendations" + ], + "summary": "Reset all recommendation opt-out settings for a subscription.", + "description": "Description for Reset all recommendation opt-out settings for a subscription.", + "operationId": "Recommendations_ResetAllFilters", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/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": "Description for 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." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{hostingEnvironmentName}/recommendationHistory": { + "get": { + "tags": [ + "Recommendations" + ], + "summary": "Get past recommendations for an app, optionally specified by the time range.", + "description": "Description for Get past recommendations for an app, optionally specified by the time range.", + "operationId": "Recommendations_ListHistoryForHostingEnvironment", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "hostingEnvironmentName", + "in": "path", + "description": "Name of the hosting environment.", + "required": true, + "type": "string" + }, + { + "name": "expiredOnly", + "in": "query", + "description": "Specify false to return all recommendations. The default is true, which returns only expired recommendations.", + "type": "boolean" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$filter", + "in": "query", + "description": "Filter is specified by using OData syntax. Example: $filter=channel eq 'Api' or channel eq 'Notification' and startTime eq 2014-01-01T00:00:00Z and endTime eq 2014-12-31T23:59:59Z and timeGrain eq duration'[PT1H|PT1M|P1D]", + "type": "string", + "x-ms-skip-url-encoding": true + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecommendationCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{hostingEnvironmentName}/recommendations": { + "get": { + "tags": [ + "Recommendations" + ], + "summary": "Get all recommendations for a hosting environment.", + "description": "Description for Get all recommendations for a hosting environment.", + "operationId": "Recommendations_ListRecommendedRulesForHostingEnvironment", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "hostingEnvironmentName", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "featured", + "in": "query", + "description": "Specify true to return only the most critical recommendations. The default is false, which returns all recommendations.", + "type": "boolean" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$filter", + "in": "query", + "description": "Return only channels specified in the filter. Filter is specified by using OData syntax. Example: $filter=channel eq 'Api' or channel eq 'Notification'", + "type": "string", + "x-ms-skip-url-encoding": true + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecommendationCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{hostingEnvironmentName}/recommendations/disable": { + "post": { + "tags": [ + "Recommendations" + ], + "summary": "Disable all recommendations for an app.", + "description": "Description for Disable all recommendations for an app.", + "operationId": "Recommendations_DisableAllForHostingEnvironment", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "environmentName", + "in": "query", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "hostingEnvironmentName", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{hostingEnvironmentName}/recommendations/reset": { + "post": { + "tags": [ + "Recommendations" + ], + "summary": "Reset all recommendation opt-out settings for an app.", + "description": "Description for Reset all recommendation opt-out settings for an app.", + "operationId": "Recommendations_ResetAllFiltersForHostingEnvironment", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "environmentName", + "in": "query", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "hostingEnvironmentName", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{hostingEnvironmentName}/recommendations/{name}": { + "get": { + "tags": [ + "Recommendations" + ], + "summary": "Get a recommendation rule for an app.", + "description": "Description for Get a recommendation rule for an app.", + "operationId": "Recommendations_GetRuleDetailsByHostingEnvironment", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "hostingEnvironmentName", + "in": "path", + "description": "Name of the hosting environment.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "Name of the recommendation.", + "required": true, + "type": "string" + }, + { + "name": "updateSeen", + "in": "query", + "description": "Specify true to update the last-seen timestamp of the recommendation object.", + "type": "boolean" + }, + { + "name": "recommendationId", + "in": "query", + "description": "The GUID of the recommendation object if you query an expired one. You don't need to specify it to query an active entry.", + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecommendationRule" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{hostingEnvironmentName}/recommendations/{name}/disable": { + "post": { + "tags": [ + "Recommendations" + ], + "summary": "Disables the specific rule for a web site permanently.", + "description": "Description for Disables the specific rule for a web site permanently.", + "operationId": "Recommendations_DisableRecommendationForHostingEnvironment", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "environmentName", + "in": "query", + "description": "Site name", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "Rule name", + "required": true, + "type": "string" + }, + { + "name": "hostingEnvironmentName", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully disabled recommendations." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/recommendationHistory": { + "get": { + "tags": [ + "Recommendations" + ], + "summary": "Get past recommendations for an app, optionally specified by the time range.", + "description": "Description for Get past recommendations for an app, optionally specified by the time range.", + "operationId": "Recommendations_ListHistoryForWebApp", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "siteName", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "expiredOnly", + "in": "query", + "description": "Specify false to return all recommendations. The default is true, which returns only expired recommendations.", + "type": "boolean" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$filter", + "in": "query", + "description": "Filter is specified by using OData syntax. Example: $filter=channel eq 'Api' or channel eq 'Notification' and startTime eq 2014-01-01T00:00:00Z and endTime eq 2014-12-31T23:59:59Z and timeGrain eq duration'[PT1H|PT1M|P1D]", + "type": "string", + "x-ms-skip-url-encoding": true + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecommendationCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/recommendations": { + "get": { + "tags": [ + "Recommendations" + ], + "summary": "Get all recommendations for an app.", + "description": "Description for Get all recommendations for an app.", + "operationId": "Recommendations_ListRecommendedRulesForWebApp", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "siteName", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "featured", + "in": "query", + "description": "Specify true to return only the most critical recommendations. The default is false, which returns all recommendations.", + "type": "boolean" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$filter", + "in": "query", + "description": "Return only channels specified in the filter. Filter is specified by using OData syntax. Example: $filter=channel eq 'Api' or channel eq 'Notification'", + "type": "string", + "x-ms-skip-url-encoding": true + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecommendationCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/recommendations/disable": { + "post": { + "tags": [ + "Recommendations" + ], + "summary": "Disable all recommendations for an app.", + "description": "Description for Disable all recommendations for an app.", + "operationId": "Recommendations_DisableAllForWebApp", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "siteName", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/recommendations/reset": { + "post": { + "tags": [ + "Recommendations" + ], + "summary": "Reset all recommendation opt-out settings for an app.", + "description": "Description for Reset all recommendation opt-out settings for an app.", + "operationId": "Recommendations_ResetAllFiltersForWebApp", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "siteName", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/recommendations/{name}": { + "get": { + "tags": [ + "Recommendations" + ], + "summary": "Get a recommendation rule for an app.", + "description": "Description for Get a recommendation rule for an app.", + "operationId": "Recommendations_GetRuleDetailsByWebApp", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "siteName", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "Name of the recommendation.", + "required": true, + "type": "string" + }, + { + "name": "updateSeen", + "in": "query", + "description": "Specify true to update the last-seen timestamp of the recommendation object.", + "type": "boolean" + }, + { + "name": "recommendationId", + "in": "query", + "description": "The GUID of the recommendation object if you query an expired one. You don't need to specify it to query an active entry.", + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecommendationRule" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/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": "Description for 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." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + } + }, + "definitions": { + "Recommendation": { + "description": "Represents a recommendation result generated by the recommendation engine.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "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 + } + }, + "categoryTags": { + "description": "The list of category tags that this recommendation belongs to.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "actionName": { + "description": "Name of action recommended by this object.", + "type": "string" + }, + "enabled": { + "format": "int32", + "description": "True if this recommendation is still valid (i.e. \"actionable\"). False if it is invalid.", + "type": "integer" + }, + "states": { + "description": "The list of states of this recommendation. If it's null then it should be considered \"Active\".", + "type": "array", + "items": { + "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": { + "$ref": "#/definitions/Recommendation" + } + }, + "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": { + "properties": { + "description": "RecommendationRule resource specific properties", + "properties": { + "recommendationName": { + "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 + } + }, + "categoryTags": { + "description": "The list of category tags that this recommendation rule belongs to.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "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 + } + } + } + }, + "parameters": { + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Your Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).", + "required": true, + "type": "string" + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "Name of the resource group to which the resource belongs.", + "required": true, + "type": "string", + "maxLength": 90, + "minLength": 1, + "pattern": "^[-\\w\\._\\(\\)]+[^\\.]$", + "x-ms-parameter-location": "method" + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "API Version", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/ResourceHealthMetadata.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/ResourceHealthMetadata.json new file mode 100644 index 000000000000..ab49726617ab --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/ResourceHealthMetadata.json @@ -0,0 +1,403 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-12-01", + "title": "ResourceHealthMetadata API Client" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Web/resourceHealthMetadata": { + "get": { + "tags": [ + "ResourceHealthMetadata" + ], + "summary": "List all ResourceHealthMetadata for all sites in the subscription.", + "description": "Description for List all ResourceHealthMetadata for all sites in the subscription.", + "operationId": "ResourceHealthMetadata_List", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ResourceHealthMetadataCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List ResourceHealthMetadata for a subscription": { + "$ref": "./examples/ListResourceHealthMetadataBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/resourceHealthMetadata": { + "get": { + "tags": [ + "ResourceHealthMetadata" + ], + "summary": "List all ResourceHealthMetadata for all sites in the resource group in the subscription.", + "description": "Description for List all ResourceHealthMetadata for all sites in the resource group in the subscription.", + "operationId": "ResourceHealthMetadata_ListByResourceGroup", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ResourceHealthMetadataCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List ResourceHealthMetadata for a resource group": { + "$ref": "./examples/ListResourceHealthMetadataByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/resourceHealthMetadata": { + "get": { + "tags": [ + "ResourceHealthMetadata" + ], + "summary": "Gets the category of ResourceHealthMetadata to use for the given site as a collection", + "description": "Description for Gets the category of ResourceHealthMetadata to use for the given site as a collection", + "operationId": "ResourceHealthMetadata_ListBySite", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ResourceHealthMetadataCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List ResourceHealthMetadata for a site": { + "$ref": "./examples/ListResourceHealthMetadataBySite.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/resourceHealthMetadata/default": { + "get": { + "tags": [ + "ResourceHealthMetadata" + ], + "summary": "Gets the category of ResourceHealthMetadata to use for the given site", + "description": "Description for Gets the category of ResourceHealthMetadata to use for the given site", + "operationId": "ResourceHealthMetadata_GetBySite", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ResourceHealthMetadata" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get ResourceHealthMetadata": { + "$ref": "./examples/GetResourceHealthMetadataBySite.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/resourceHealthMetadata": { + "get": { + "tags": [ + "ResourceHealthMetadata" + ], + "summary": "Gets the category of ResourceHealthMetadata to use for the given site as a collection", + "description": "Description for Gets the category of ResourceHealthMetadata to use for the given site as a collection", + "operationId": "ResourceHealthMetadata_ListBySiteSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of web app slot. If not specified then will default to production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ResourceHealthMetadataCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List ResourceHealthMetadata for a site": { + "$ref": "./examples/ListResourceHealthMetadataBySite.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/resourceHealthMetadata/default": { + "get": { + "tags": [ + "ResourceHealthMetadata" + ], + "summary": "Gets the category of ResourceHealthMetadata to use for the given site", + "description": "Description for Gets the category of ResourceHealthMetadata to use for the given site", + "operationId": "ResourceHealthMetadata_GetBySiteSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of web app slot. If not specified then will default to production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ResourceHealthMetadata" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get ResourceHealthMetadata": { + "$ref": "./examples/GetResourceHealthMetadataBySite.json" + } + } + } + } + }, + "definitions": { + "ResourceHealthMetadata": { + "description": "Used for getting ResourceHealthCheck settings.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "ResourceHealthMetadata resource specific properties", + "properties": { + "category": { + "description": "The category that the resource matches in the RHC Policy File", + "type": "string" + }, + "signalAvailability": { + "description": "Is there a health signal for the resource", + "type": "boolean" + } + }, + "x-ms-client-flatten": true + } + } + }, + "ResourceHealthMetadataCollection": { + "description": "Collection of resource health metadata.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/ResourceHealthMetadata" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Your Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).", + "required": true, + "type": "string" + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "Name of the resource group to which the resource belongs.", + "required": true, + "type": "string", + "maxLength": 90, + "minLength": 1, + "pattern": "^[-\\w\\._\\(\\)]+[^\\.]$", + "x-ms-parameter-location": "method" + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "API Version", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/ResourceProvider.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/ResourceProvider.json new file mode 100644 index 000000000000..e766e5a2519e --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/ResourceProvider.json @@ -0,0 +1,1431 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-12-01", + "title": " API Client" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/providers/Microsoft.Web/generateGithubAccessTokenForAppserviceCLI": { + "post": { + "summary": "Exchange code for GitHub access token for AppService CLI", + "description": "Description for Exchange code for GitHub access token for AppService CLI", + "operationId": "GenerateGithubAccessTokenForAppserviceCLIAsync", + "parameters": [ + { + "name": "request", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AppserviceGithubTokenRequest" + }, + "x-ms-client-flatten": true + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AppserviceGithubToken" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Generate Github Access Token For AppService CLI": { + "$ref": "./examples/GenerateGithubAccessTokenForAppserviceCLIAsync.json" + } + } + } + }, + "/providers/Microsoft.Web/publishingUsers/web": { + "get": { + "summary": "Gets publishing user", + "description": "Description for Gets publishing user", + "operationId": "GetPublishingUser", + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/User" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "summary": "Updates publishing user", + "description": "Description for Updates publishing user", + "operationId": "UpdatePublishingUser", + "parameters": [ + { + "name": "userDetails", + "in": "body", + "description": "Details of publishing user", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/User" + } + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/User" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.Web/sourcecontrols": { + "get": { + "summary": "Gets the source controls available for Azure websites.", + "description": "Description for Gets the source controls available for Azure websites.", + "operationId": "ListSourceControls", + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SourceControlCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Web/sourcecontrols/{sourceControlType}": { + "get": { + "summary": "Gets source control token", + "description": "Description for Gets source control token", + "operationId": "GetSourceControl", + "parameters": [ + { + "name": "sourceControlType", + "in": "path", + "description": "Type of source control", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SourceControl" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "summary": "Updates source control token", + "description": "Description for Updates source control token", + "operationId": "UpdateSourceControl", + "parameters": [ + { + "name": "sourceControlType", + "in": "path", + "description": "Type of source control", + "required": true, + "type": "string" + }, + { + "name": "requestMessage", + "in": "body", + "description": "Source control token information", + "required": true, + "schema": { + "$ref": "#/definitions/SourceControl" + } + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SourceControl" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Web/billingMeters": { + "get": { + "summary": "Gets a list of meters for a given location.", + "description": "Description for Gets a list of meters for a given location.", + "operationId": "ListBillingMeters", + "parameters": [ + { + "name": "billingLocation", + "in": "query", + "description": "Azure Location of billable resource", + "type": "string" + }, + { + "name": "osType", + "in": "query", + "description": "App Service OS type meters used for", + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BillingMeterCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Web/checknameavailability": { + "post": { + "summary": "Check if a resource name is available.", + "description": "Description for Check if a resource name is available.", + "operationId": "CheckNameAvailability", + "parameters": [ + { + "name": "request", + "in": "body", + "description": "Name availability request.", + "required": true, + "schema": { + "$ref": "#/definitions/ResourceNameAvailabilityRequest" + }, + "x-ms-client-flatten": true + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ResourceNameAvailability" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Web/deploymentLocations": { + "get": { + "summary": "Gets list of available geo regions plus ministamps", + "description": "Description for Gets list of available geo regions plus ministamps", + "operationId": "GetSubscriptionDeploymentLocations", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DeploymentLocations" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Web/geoRegions": { + "get": { + "summary": "Get a list of available geographical regions.", + "description": "Description for Get a list of available geographical regions.", + "operationId": "ListGeoRegions", + "parameters": [ + { + "name": "sku", + "in": "query", + "description": "Name of SKU used to filter the regions.", + "type": "string", + "enum": [ + "Free", + "Shared", + "Basic", + "Standard", + "Premium", + "Dynamic", + "Isolated", + "IsolatedV2", + "PremiumV2", + "PremiumV3", + "PremiumContainer", + "ElasticPremium", + "ElasticIsolated" + ], + "x-ms-enum": { + "name": "SkuName", + "modelAsString": true + } + }, + { + "name": "linuxWorkersEnabled", + "in": "query", + "description": "Specify true if you want to filter to only regions that support Linux workers.", + "type": "boolean" + }, + { + "name": "xenonWorkersEnabled", + "in": "query", + "description": "Specify true if you want to filter to only regions that support Xenon workers.", + "type": "boolean" + }, + { + "name": "linuxDynamicWorkersEnabled", + "in": "query", + "description": "Specify true if you want to filter to only regions that support Linux Consumption Workers.", + "type": "boolean" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GeoRegionCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Web/listSitesAssignedToHostName": { + "post": { + "summary": "List all apps that are assigned to a hostname.", + "description": "Description for List all apps that are assigned to a hostname.", + "operationId": "ListSiteIdentifiersAssignedToHostName", + "parameters": [ + { + "name": "nameIdentifier", + "in": "body", + "description": "Hostname information.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/NameIdentifier" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/IdentifierCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Web/premieraddonoffers": { + "get": { + "summary": "List all premier add-on offers.", + "description": "Description for List all premier add-on offers.", + "operationId": "ListPremierAddOnOffers", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PremierAddOnOfferCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Web/skus": { + "get": { + "summary": "List all SKUs.", + "description": "Description for List all SKUs.", + "operationId": "ListSkus", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SkuInfos" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Web/verifyHostingEnvironmentVnet": { + "post": { + "summary": "Verifies if this VNET is compatible with an App Service Environment by analyzing the Network Security Group rules.", + "description": "Description for Verifies if this VNET is compatible with an App Service Environment by analyzing the Network Security Group rules.", + "operationId": "VerifyHostingEnvironmentVnet", + "parameters": [ + { + "name": "parameters", + "in": "body", + "description": "VNET information", + "required": true, + "schema": { + "$ref": "#/definitions/VnetParameters" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VnetValidationFailureDetails" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "VerifyHostingEnvironmentVnet": { + "$ref": "./examples/VerifyHostingEnvironmentVnet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/moveResources": { + "post": { + "summary": "Move resources between resource groups.", + "description": "Description for Move resources between resource groups.", + "operationId": "Move", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "moveResourceEnvelope", + "in": "body", + "description": "Object that represents the resource to move.", + "required": true, + "schema": { + "$ref": "#/definitions/CsmMoveResourceEnvelope" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/validate": { + "post": { + "summary": "Validate if a resource can be created.", + "description": "Description for Validate if a resource can be created.", + "operationId": "Validate", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "validateRequest", + "in": "body", + "description": "Request with the resources to validate.", + "required": true, + "schema": { + "$ref": "#/definitions/ValidateRequest" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ValidateResponse" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/validateMoveResources": { + "post": { + "summary": "Validate whether a resource can be moved.", + "description": "Description for Validate whether a resource can be moved.", + "operationId": "ValidateMove", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "moveResourceEnvelope", + "in": "body", + "description": "Object that represents the resource to move.", + "required": true, + "schema": { + "$ref": "#/definitions/CsmMoveResourceEnvelope" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + } + }, + "definitions": { + "AppserviceGithubToken": { + "description": "Github access token for Appservice CLI github integration.", + "type": "object", + "properties": { + "accessToken": { + "description": "Github access token for Appservice CLI github integration", + "type": "string" + }, + "scope": { + "description": "Scope of the github access token", + "type": "string" + }, + "tokenType": { + "description": "token type", + "type": "string" + }, + "gotToken": { + "description": "True if valid github token received, False otherwise", + "type": "boolean" + }, + "errorMessage": { + "description": "Error message if unable to get token", + "type": "string" + } + } + }, + "AppserviceGithubTokenRequest": { + "description": "Appservice Github token request content.", + "required": [ + "code", + "state" + ], + "type": "object", + "properties": { + "code": { + "description": "Code string to exchange for Github Access token", + "type": "string" + }, + "state": { + "description": "State string used for verification.", + "type": "string" + } + } + }, + "BillingMeter": { + "description": "App Service billing entity that contains information about meter which the Azure billing system utilizes to charge users for services.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "BillingMeter resource specific properties", + "properties": { + "meterId": { + "description": "Meter GUID onboarded in Commerce", + "type": "string" + }, + "billingLocation": { + "description": "Azure Location of billable resource", + "type": "string" + }, + "shortName": { + "description": "Short Name from App Service Azure pricing Page", + "type": "string" + }, + "friendlyName": { + "description": "Friendly name of the meter", + "type": "string" + }, + "resourceType": { + "description": "App Service ResourceType meter used for", + "type": "string" + }, + "osType": { + "description": "App Service OS type meter used for", + "type": "string" + }, + "multiplier": { + "format": "double", + "description": "Meter Multiplier", + "type": "number" + } + }, + "x-ms-client-flatten": true + } + } + }, + "BillingMeterCollection": { + "description": "Collection of Billing Meters", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/BillingMeter" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "CsmMoveResourceEnvelope": { + "description": "Object with a list of the resources that need to be moved and the resource group they should be moved to.", + "type": "object", + "properties": { + "targetResourceGroup": { + "maxLength": 90, + "minLength": 1, + "pattern": " ^[-\\w\\._\\(\\)]+[^\\.]$", + "type": "string" + }, + "resources": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "DeploymentLocations": { + "description": "List of available locations (regions or App Service Environments) for\ndeployment of App Service resources.", + "type": "object", + "properties": { + "locations": { + "description": "Available regions.", + "type": "array", + "items": { + "$ref": "#/definitions/GeoRegion" + } + }, + "hostingEnvironments": { + "description": "Available App Service Environments with full descriptions of the environments.", + "type": "array", + "items": { + "$ref": "./CommonDefinitions.json#/definitions/AppServiceEnvironment" + } + }, + "hostingEnvironmentDeploymentInfos": { + "description": "Available App Service Environments with basic information.", + "type": "array", + "items": { + "$ref": "#/definitions/HostingEnvironmentDeploymentInfo" + } + } + } + }, + "GeoRegion": { + "description": "Geographical region.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "GeoRegion resource specific properties", + "properties": { + "description": { + "description": "Region description.", + "type": "string", + "readOnly": true + }, + "displayName": { + "description": "Display name for region.", + "type": "string", + "readOnly": true + }, + "orgDomain": { + "description": "Display name for region.", + "type": "string", + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "GeoRegionCollection": { + "description": "Collection of geographical regions.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/GeoRegion" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "GlobalCsmSkuDescription": { + "description": "A Global SKU Description.", + "type": "object", + "properties": { + "name": { + "description": "Name of the resource SKU.", + "type": "string" + }, + "tier": { + "description": "Service Tier of the resource SKU.", + "type": "string" + }, + "size": { + "description": "Size specifier of the resource SKU.", + "type": "string" + }, + "family": { + "description": "Family code of the resource SKU.", + "type": "string" + }, + "capacity": { + "$ref": "./CommonDefinitions.json#/definitions/SkuCapacity", + "description": "Min, max, and default scale values of the SKU." + }, + "locations": { + "description": "Locations of the SKU.", + "type": "array", + "items": { + "type": "string" + } + }, + "capabilities": { + "description": "Capabilities of the SKU, e.g., is traffic manager enabled?", + "type": "array", + "items": { + "$ref": "./CommonDefinitions.json#/definitions/Capability" + } + } + } + }, + "HostingEnvironmentDeploymentInfo": { + "description": "Information needed to create resources on an App Service Environment.", + "type": "object", + "properties": { + "name": { + "description": "Name of the App Service Environment.", + "type": "string" + }, + "location": { + "description": "Location of the App Service Environment.", + "type": "string" + } + } + }, + "PremierAddOnOffer": { + "description": "Premier add-on offer.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "PremierAddOnOffer resource specific properties", + "properties": { + "sku": { + "description": "Premier add on SKU.", + "type": "string" + }, + "product": { + "description": "Premier add on offer Product.", + "type": "string" + }, + "vendor": { + "description": "Premier add on offer Vendor.", + "type": "string" + }, + "promoCodeRequired": { + "description": "true if promotion code is required; otherwise, false.", + "type": "boolean" + }, + "quota": { + "format": "int32", + "description": "Premier add on offer Quota.", + "type": "integer" + }, + "webHostingPlanRestrictions": { + "description": "App Service plans this offer is restricted to.", + "enum": [ + "None", + "Free", + "Shared", + "Basic", + "Standard", + "Premium" + ], + "type": "string", + "x-ms-enum": { + "name": "AppServicePlanRestrictions", + "modelAsString": false + } + }, + "privacyPolicyUrl": { + "description": "Privacy policy URL.", + "type": "string" + }, + "legalTermsUrl": { + "description": "Legal terms URL.", + "type": "string" + }, + "marketplacePublisher": { + "description": "Marketplace publisher.", + "type": "string" + }, + "marketplaceOffer": { + "description": "Marketplace offer.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "PremierAddOnOfferCollection": { + "description": "Collection of premier add-on offers.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/PremierAddOnOffer" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "ResourceNameAvailability": { + "description": "Information regarding availability of a resource name.", + "type": "object", + "properties": { + "nameAvailable": { + "description": "true indicates name is valid and available. false indicates the name is invalid, unavailable, or both.", + "type": "boolean" + }, + "reason": { + "description": "Invalid indicates the name provided does not match Azure App Service naming requirements. AlreadyExists indicates that the name is already in use and is therefore unavailable.", + "enum": [ + "Invalid", + "AlreadyExists" + ], + "type": "string", + "x-ms-enum": { + "name": "InAvailabilityReasonType", + "modelAsString": true + } + }, + "message": { + "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 resource name is already in use, and direct them to select a different name.", + "type": "string" + } + } + }, + "ResourceNameAvailabilityRequest": { + "description": "Resource name availability request content.", + "required": [ + "name", + "type" + ], + "type": "object", + "properties": { + "name": { + "description": "Resource name to verify.", + "type": "string" + }, + "type": { + "description": "Resource type used for verification.", + "enum": [ + "Site", + "Slot", + "HostingEnvironment", + "PublishingUser", + "Microsoft.Web/sites", + "Microsoft.Web/sites/slots", + "Microsoft.Web/hostingEnvironments", + "Microsoft.Web/publishingUsers" + ], + "type": "string", + "x-ms-enum": { + "name": "CheckNameResourceTypes", + "modelAsString": true + } + }, + "isFqdn": { + "description": "Is fully qualified domain name.", + "type": "boolean" + } + } + }, + "SkuInfos": { + "description": "Collection of SKU information.", + "type": "object", + "properties": { + "resourceType": { + "description": "Resource type that this SKU applies to.", + "type": "string" + }, + "skus": { + "description": "List of SKUs the subscription is able to use.", + "type": "array", + "items": { + "$ref": "#/definitions/GlobalCsmSkuDescription" + } + } + } + }, + "SourceControl": { + "description": "The source control OAuth token.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "SourceControl resource specific properties", + "properties": { + "token": { + "description": "OAuth access token.", + "type": "string" + }, + "tokenSecret": { + "description": "OAuth access token secret.", + "type": "string" + }, + "refreshToken": { + "description": "OAuth refresh token.", + "type": "string" + }, + "expirationTime": { + "format": "date-time", + "description": "OAuth token expiration.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "SourceControlCollection": { + "description": "Collection of source controls.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/SourceControl" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "ValidateProperties": { + "description": "App properties used for validation.", + "type": "object", + "properties": { + "serverFarmId": { + "description": "ARM resource ID of an App Service plan that would host the app.", + "type": "string" + }, + "skuName": { + "description": "Name of the target SKU for the App Service plan.", + "type": "string" + }, + "needLinuxWorkers": { + "description": "true if App Service plan is for Linux workers; otherwise, false.", + "type": "boolean" + }, + "isSpot": { + "description": "true if App Service plan is for Spot instances; otherwise, false.", + "type": "boolean" + }, + "capacity": { + "format": "int32", + "description": "Target capacity of the App Service plan (number of VMs).", + "minimum": 1, + "type": "integer" + }, + "hostingEnvironment": { + "description": "Name of App Service Environment where app or App Service plan should be created.", + "type": "string" + }, + "isXenon": { + "description": "true if App Service plan is running as a windows container", + "type": "boolean" + }, + "containerRegistryBaseUrl": { + "description": "Base URL of the container registry", + "type": "string" + }, + "containerRegistryUsername": { + "description": "Username for to access the container registry", + "type": "string" + }, + "containerRegistryPassword": { + "description": "Password for to access the container registry", + "type": "string" + }, + "containerImageRepository": { + "description": "Repository name (image name)", + "type": "string" + }, + "containerImageTag": { + "description": "Image tag", + "type": "string" + }, + "containerImagePlatform": { + "description": "Platform (windows or linux)", + "type": "string" + }, + "appServiceEnvironment": { + "$ref": "./CommonDefinitions.json#/definitions/AppServiceEnvironment", + "description": "App Service Environment Properties" + } + } + }, + "ValidateRequest": { + "description": "Resource validation request content.", + "required": [ + "name", + "type", + "location", + "properties" + ], + "type": "object", + "properties": { + "name": { + "description": "Resource name to verify.", + "type": "string" + }, + "type": { + "description": "Resource type used for verification.", + "enum": [ + "ServerFarm", + "Site", + "Microsoft.Web/hostingEnvironments" + ], + "type": "string", + "x-ms-enum": { + "name": "ValidateResourceTypes", + "modelAsString": true + } + }, + "location": { + "description": "Expected location of the resource.", + "type": "string" + }, + "properties": { + "$ref": "#/definitions/ValidateProperties", + "description": "Properties of the resource to validate.", + "x-ms-client-flatten": true + } + } + }, + "ValidateResponse": { + "description": "Describes the result of resource validation.", + "type": "object", + "properties": { + "status": { + "description": "Result of validation.", + "type": "string" + }, + "error": { + "$ref": "#/definitions/ValidateResponseError", + "description": "Error details for the case when validation fails." + } + } + }, + "ValidateResponseError": { + "description": "Error details for when validation fails.", + "type": "object", + "properties": { + "code": { + "description": "Validation error code.", + "type": "string" + }, + "message": { + "description": "Validation error message.", + "type": "string" + } + } + }, + "VnetParameters": { + "description": "The required set of inputs to validate a VNET", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "VnetParameters resource specific properties", + "properties": { + "vnetResourceGroup": { + "description": "The Resource Group of the VNET to be validated", + "type": "string" + }, + "vnetName": { + "description": "The name of the VNET to be validated", + "type": "string" + }, + "vnetSubnetName": { + "description": "The subnet name to be validated", + "type": "string" + }, + "subnetResourceId": { + "description": "The ARM Resource ID of the subnet to validate", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "VnetValidationFailureDetails": { + "description": "A class that describes the reason for a validation failure.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "VnetValidationFailureDetails resource specific properties", + "properties": { + "message": { + "description": "Text describing the validation outcome.", + "type": "string" + }, + "failed": { + "description": "A flag describing whether or not validation failed.", + "type": "boolean" + }, + "failedTests": { + "description": "A list of tests that failed in the validation.", + "type": "array", + "items": { + "$ref": "#/definitions/VnetValidationTestFailure" + } + }, + "warnings": { + "description": "A list of warnings generated during validation.", + "type": "array", + "items": { + "$ref": "#/definitions/VnetValidationTestFailure" + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "VnetValidationTestFailure": { + "description": "A class that describes a test that failed during NSG and UDR validation.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "VnetValidationTestFailure resource specific properties", + "properties": { + "testName": { + "description": "The name of the test that failed.", + "type": "string" + }, + "details": { + "description": "The details of what caused the failure, e.g. the blocking rule name, etc.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + } + }, + "parameters": { + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Your Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).", + "required": true, + "type": "string" + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "Name of the resource group to which the resource belongs.", + "required": true, + "type": "string", + "maxLength": 90, + "minLength": 1, + "pattern": "^[-\\w\\._\\(\\)]+[^\\.]$", + "x-ms-parameter-location": "method" + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "API Version", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/StaticSites.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/StaticSites.json new file mode 100644 index 000000000000..16601019c0cd --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/StaticSites.json @@ -0,0 +1,3663 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-12-01", + "title": "StaticSites API Client" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Web/locations/{location}/previewStaticSiteWorkflowFile": { + "post": { + "tags": [ + "StaticSites" + ], + "summary": "Generates a preview workflow file for the static site", + "description": "Description for Generates a preview workflow file for the static site", + "operationId": "StaticSites_PreviewWorkflow", + "parameters": [ + { + "name": "location", + "in": "path", + "description": "Location where you plan to create the static site.", + "required": true, + "type": "string" + }, + { + "name": "staticSitesWorkflowPreviewRequest", + "in": "body", + "description": "A JSON representation of the StaticSitesWorkflowPreviewRequest properties. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/StaticSitesWorkflowPreviewRequest" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/StaticSitesWorkflowPreview" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Generates a preview workflow file for the static site": { + "$ref": "./examples/GenerateStaticSiteWorkflowPreview.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Web/staticSites": { + "get": { + "tags": [ + "StaticSites" + ], + "summary": "Get all Static Sites for a subscription.", + "description": "Description for Get all Static Sites for a subscription.", + "operationId": "StaticSites_List", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/StaticSiteCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get all static sites in a subscription": { + "$ref": "./examples/GetAllStaticSites.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites": { + "get": { + "tags": [ + "StaticSites" + ], + "summary": "Gets all static sites in the specified resource group.", + "description": "Description for Gets all static sites in the specified resource group.", + "operationId": "StaticSites_GetStaticSitesByResourceGroup", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get static sites for a resource group": { + "$ref": "./examples/GetStaticSites.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}": { + "get": { + "tags": [ + "StaticSites" + ], + "summary": "Gets the details of a static site.", + "description": "Description for Gets the details of a static site.", + "operationId": "StaticSites_GetStaticSite", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteARMResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get details for a static site": { + "$ref": "./examples/GetStaticSite.json" + } + } + }, + "put": { + "tags": [ + "StaticSites" + ], + "summary": "Creates a new static site in an existing resource group, or updates an existing static site.", + "description": "Description for Creates a new static site in an existing resource group, or updates an existing static site.", + "operationId": "StaticSites_CreateOrUpdateStaticSite", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site to create or update.", + "required": true, + "type": "string" + }, + { + "name": "staticSiteEnvelope", + "in": "body", + "description": "A JSON representation of the staticsite properties. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/StaticSiteARMResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteARMResource" + } + }, + "202": { + "description": "Asynchronous operation in progress.", + "schema": { + "$ref": "#/definitions/StaticSiteARMResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or update a static site": { + "$ref": "./examples/CreateOrUpdateStaticSite.json" + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "StaticSites" + ], + "summary": "Deletes a static site.", + "description": "Description for Deletes a static site.", + "operationId": "StaticSites_DeleteStaticSite", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site to delete.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "202": { + "description": "Asynchronous operation in progress." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete a static site": { + "$ref": "./examples/DeleteStaticSite.json" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "StaticSites" + ], + "summary": "Creates a new static site in an existing resource group, or updates an existing static site.", + "description": "Description for Creates a new static site in an existing resource group, or updates an existing static site.", + "operationId": "StaticSites_UpdateStaticSite", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site to create or update.", + "required": true, + "type": "string" + }, + { + "name": "staticSiteEnvelope", + "in": "body", + "description": "A JSON representation of the staticsite properties. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/StaticSitePatchResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteARMResource" + } + }, + "202": { + "description": "Asynchronous operation in progress.", + "schema": { + "$ref": "#/definitions/StaticSiteARMResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Patch a static site": { + "$ref": "./examples/PatchStaticSite.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/authproviders/{authprovider}/listUsers": { + "post": { + "tags": [ + "StaticSites" + ], + "summary": "Gets the list of users of a static site.", + "description": "Description for Gets the list of users of a static site.", + "operationId": "StaticSites_ListStaticSiteUsers", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "authprovider", + "in": "path", + "description": "The auth provider for the users.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteUserCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List users for a static site": { + "$ref": "./examples/ListStaticSiteUsers.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/authproviders/{authprovider}/users/{userid}": { + "delete": { + "tags": [ + "StaticSites" + ], + "summary": "Deletes the user entry from the static site.", + "description": "Description for Deletes the user entry from the static site.", + "operationId": "StaticSites_DeleteStaticSiteUser", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the staticsite.", + "required": true, + "type": "string" + }, + { + "name": "authprovider", + "in": "path", + "description": "The auth provider for this user.", + "required": true, + "type": "string" + }, + { + "name": "userid", + "in": "path", + "description": "The user id of the user.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete a user for a static site": { + "$ref": "./examples/DeleteStaticSiteUser.json" + } + } + }, + "patch": { + "tags": [ + "StaticSites" + ], + "summary": "Updates a user entry with the listed roles", + "description": "Description for Updates a user entry with the listed roles", + "operationId": "StaticSites_UpdateStaticSiteUser", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "authprovider", + "in": "path", + "description": "The auth provider for this user.", + "required": true, + "type": "string" + }, + { + "name": "userid", + "in": "path", + "description": "The user id of the user.", + "required": true, + "type": "string" + }, + { + "name": "staticSiteUserEnvelope", + "in": "body", + "description": "A JSON representation of the StaticSiteUser properties. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/StaticSiteUserARMResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteUserARMResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or update a user for a static site": { + "$ref": "./examples/UpdateStaticSiteUser.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/builds": { + "get": { + "tags": [ + "StaticSites" + ], + "summary": "Gets all static site builds for a particular static site.", + "description": "Description for Gets all static site builds for a particular static site.", + "operationId": "StaticSites_GetStaticSiteBuilds", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteBuildCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get all builds for a static site": { + "$ref": "./examples/GetStaticSiteBuilds.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/builds/{environmentName}": { + "get": { + "tags": [ + "StaticSites" + ], + "summary": "Gets the details of a static site build.", + "description": "Description for Gets the details of a static site build.", + "operationId": "StaticSites_GetStaticSiteBuild", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "environmentName", + "in": "path", + "description": "The stage site identifier.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteBuildARMResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get a static site build": { + "$ref": "./examples/GetStaticSiteBuild.json" + } + } + }, + "delete": { + "tags": [ + "StaticSites" + ], + "summary": "Deletes a static site build.", + "description": "Description for Deletes a static site build.", + "operationId": "StaticSites_DeleteStaticSiteBuild", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "environmentName", + "in": "path", + "description": "The stage site identifier.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "204": { + "description": "OK." + }, + "202": { + "description": "Asynchronous operation in progress." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete a static site build": { + "$ref": "./examples/DeleteStaticSiteBuild.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/builds/{environmentName}/config/appsettings": { + "put": { + "tags": [ + "StaticSites" + ], + "summary": "Creates or updates the app settings of a static site build.", + "description": "Description for Creates or updates the app settings of a static site build.", + "operationId": "StaticSites_CreateOrUpdateStaticSiteBuildAppSettings", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "environmentName", + "in": "path", + "description": "The stage site identifier.", + "required": true, + "type": "string" + }, + { + "name": "appSettings", + "in": "body", + "description": "The dictionary containing the static site app settings to update.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Creates or updates the function app settings of a static site build.": { + "$ref": "./examples/CreateOrUpdateStaticSiteBuildAppSettings.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/builds/{environmentName}/config/functionappsettings": { + "put": { + "tags": [ + "StaticSites" + ], + "summary": "Creates or updates the function app settings of a static site build.", + "description": "Description for Creates or updates the function app settings of a static site build.", + "operationId": "StaticSites_CreateOrUpdateStaticSiteBuildFunctionAppSettings", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "environmentName", + "in": "path", + "description": "The stage site identifier.", + "required": true, + "type": "string" + }, + { + "name": "appSettings", + "in": "body", + "description": "The dictionary containing the static site function app settings to update.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Creates or updates the function app settings of a static site build.": { + "$ref": "./examples/CreateOrUpdateStaticSiteBuildFunctionAppSettings.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/builds/{environmentName}/functions": { + "get": { + "tags": [ + "StaticSites" + ], + "summary": "Gets the functions of a particular static site build.", + "description": "Description for Gets the functions of a particular static site build.", + "operationId": "StaticSites_ListStaticSiteBuildFunctions", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "environmentName", + "in": "path", + "description": "The stage site identifier.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteFunctionOverviewCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Gets the functions of a particular static site build": { + "$ref": "./examples/ListStaticSiteBuildFunctions.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/builds/{environmentName}/listAppSettings": { + "post": { + "tags": [ + "StaticSites" + ], + "summary": "Gets the application settings of a static site build.", + "description": "Description for Gets the application settings of a static site build.", + "operationId": "StaticSites_ListStaticSiteBuildAppSettings", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "environmentName", + "in": "path", + "description": "The stage site identifier.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get app settings of a static site build": { + "$ref": "./examples/ListStaticSiteBuildAppSettings.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/builds/{environmentName}/listFunctionAppSettings": { + "post": { + "tags": [ + "StaticSites" + ], + "summary": "Gets the application settings of a static site build.", + "description": "Description for Gets the application settings of a static site build.", + "operationId": "StaticSites_ListStaticSiteBuildFunctionAppSettings", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "environmentName", + "in": "path", + "description": "The stage site identifier.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get function app settings of a static site build": { + "$ref": "./examples/ListStaticSiteBuildFunctionAppSettings.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/builds/{environmentName}/userProvidedFunctionApps": { + "get": { + "tags": [ + "StaticSites" + ], + "summary": "Gets the details of the user provided function apps registered with a static site build", + "description": "Description for Gets the details of the user provided function apps registered with a static site build", + "operationId": "StaticSites_GetUserProvidedFunctionAppsForStaticSiteBuild", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "environmentName", + "in": "path", + "description": "The stage site identifier.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteUserProvidedFunctionAppsCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get details of the user provided function apps registered with a static site build.": { + "$ref": "./examples/GetUserProvidedFunctionAppsForStaticSiteBuild.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/builds/{environmentName}/userProvidedFunctionApps/{functionAppName}": { + "get": { + "tags": [ + "StaticSites" + ], + "summary": "Gets the details of the user provided function app registered with a static site build", + "description": "Description for Gets the details of the user provided function app registered with a static site build", + "operationId": "StaticSites_GetUserProvidedFunctionAppForStaticSiteBuild", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "environmentName", + "in": "path", + "description": "The stage site identifier.", + "required": true, + "type": "string" + }, + { + "name": "functionAppName", + "in": "path", + "description": "Name of the function app registered with the static site build.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteUserProvidedFunctionAppARMResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get details of the user provided function app registered with a static site build.": { + "$ref": "./examples/GetUserProvidedFunctionAppForStaticSiteBuild.json" + } + } + }, + "put": { + "tags": [ + "StaticSites" + ], + "summary": "Register a user provided function app with a static site build", + "description": "Description for Register a user provided function app with a static site build", + "operationId": "StaticSites_RegisterUserProvidedFunctionAppWithStaticSiteBuild", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "environmentName", + "in": "path", + "description": "The stage site identifier.", + "required": true, + "type": "string" + }, + { + "name": "functionAppName", + "in": "path", + "description": "Name of the function app to register with the static site build.", + "required": true, + "type": "string" + }, + { + "name": "staticSiteUserProvidedFunctionEnvelope", + "in": "body", + "description": "A JSON representation of the user provided function app properties. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/StaticSiteUserProvidedFunctionAppARMResource" + } + }, + { + "name": "isForced", + "in": "query", + "description": "Specify true to force the update of the auth configuration on the function app even if an AzureStaticWebApps provider is already configured on the function app. The default is false.", + "type": "boolean" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteUserProvidedFunctionAppARMResource" + } + }, + "202": { + "description": "Asynchronous operation in progress.", + "schema": { + "$ref": "#/definitions/StaticSiteUserProvidedFunctionAppARMResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Register a user provided function app with a static site build": { + "$ref": "./examples/RegisterUserProvidedFunctionAppWithStaticSiteBuild.json" + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "StaticSites" + ], + "summary": "Detach the user provided function app from the static site build", + "description": "Description for Detach the user provided function app from the static site build", + "operationId": "StaticSites_DetachUserProvidedFunctionAppFromStaticSiteBuild", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "environmentName", + "in": "path", + "description": "The stage site identifier.", + "required": true, + "type": "string" + }, + { + "name": "functionAppName", + "in": "path", + "description": "Name of the function app registered with the static site build.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "204": { + "description": "No content." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Detach the user provided function app from the static site build.": { + "$ref": "./examples/DetachUserProvidedFunctionAppFromStaticSiteBuild.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/builds/{environmentName}/zipdeploy": { + "post": { + "tags": [ + "StaticSites" + ], + "summary": "Deploys zipped content to a specific environment of a static site.", + "description": "Description for Deploys zipped content to a specific environment of a static site.", + "operationId": "StaticSites_CreateZipDeploymentForStaticSiteBuild", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "environmentName", + "in": "path", + "description": "Name of the environment.", + "required": true, + "type": "string" + }, + { + "name": "staticSiteZipDeploymentEnvelope", + "in": "body", + "description": "A JSON representation of the StaticSiteZipDeployment properties. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/StaticSiteZipDeploymentARMResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "202": { + "description": "Asynchronous operation in progress." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Deploy a site from a zipped package to a particular static site build": { + "$ref": "./examples/StaticSiteBuildZipDeploy.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/config/appsettings": { + "put": { + "tags": [ + "StaticSites" + ], + "summary": "Creates or updates the app settings of a static site.", + "description": "Description for Creates or updates the app settings of a static site.", + "operationId": "StaticSites_CreateOrUpdateStaticSiteAppSettings", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "appSettings", + "in": "body", + "description": "The dictionary containing the static site app settings to update.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Creates or updates the app settings of a static site.": { + "$ref": "./examples/CreateOrUpdateStaticSiteAppSettings.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/config/functionappsettings": { + "put": { + "tags": [ + "StaticSites" + ], + "summary": "Creates or updates the function app settings of a static site.", + "description": "Description for Creates or updates the function app settings of a static site.", + "operationId": "StaticSites_CreateOrUpdateStaticSiteFunctionAppSettings", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "appSettings", + "in": "body", + "description": "The dictionary containing the static site function app settings to update.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Creates or updates the function app settings of a static site.": { + "$ref": "./examples/CreateOrUpdateStaticSiteFunctionAppSettings.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/createUserInvitation": { + "post": { + "tags": [ + "StaticSites" + ], + "summary": "Creates an invitation link for a user with the role", + "description": "Description for Creates an invitation link for a user with the role", + "operationId": "StaticSites_CreateUserRolesInvitationLink", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "staticSiteUserRolesInvitationEnvelope", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/StaticSiteUserInvitationRequestResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteUserInvitationResponseResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Create an invitation link for a user for a static site": { + "$ref": "./examples/CreateUserRolesInvitationLink.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/customDomains": { + "get": { + "tags": [ + "StaticSites" + ], + "summary": "Gets all static site custom domains for a particular static site.", + "description": "Description for Gets all static site custom domains for a particular static site.", + "operationId": "StaticSites_ListStaticSiteCustomDomains", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site resource to search in.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/StaticSiteCustomDomainOverviewCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List custom domains for a static site": { + "$ref": "./examples/GetStaticSiteCustomDomains.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/customDomains/{domainName}": { + "get": { + "tags": [ + "StaticSites" + ], + "summary": "Gets an existing custom domain for a particular static site.", + "description": "Description for Gets an existing custom domain for a particular static site.", + "operationId": "StaticSites_GetStaticSiteCustomDomain", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site resource to search in.", + "required": true, + "type": "string" + }, + { + "name": "domainName", + "in": "path", + "description": "The custom domain name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/StaticSiteCustomDomainOverviewARMResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get custom domain for a static site": { + "$ref": "./examples/GetStaticSiteCustomDomain.json" + } + } + }, + "put": { + "tags": [ + "StaticSites" + ], + "summary": "Creates a new static site custom domain in an existing resource group and static site.", + "description": "Description for Creates a new static site custom domain in an existing resource group and static site.", + "operationId": "StaticSites_CreateOrUpdateStaticSiteCustomDomain", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "domainName", + "in": "path", + "description": "The custom domain to create.", + "required": true, + "type": "string" + }, + { + "name": "staticSiteCustomDomainRequestPropertiesEnvelope", + "in": "body", + "description": "A JSON representation of the static site custom domain request properties. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/StaticSiteCustomDomainRequestPropertiesARMResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteCustomDomainOverviewARMResource" + } + }, + "202": { + "description": "Asynchronous operation in progress.", + "schema": { + "$ref": "#/definitions/StaticSiteCustomDomainOverviewARMResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or update a custom domain for a static site": { + "$ref": "./examples/CreateOrUpdateStaticSiteCustomDomain.json" + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "StaticSites" + ], + "summary": "Deletes a custom domain.", + "description": "Description for Deletes a custom domain.", + "operationId": "StaticSites_DeleteStaticSiteCustomDomain", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "domainName", + "in": "path", + "description": "The custom domain to delete.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "202": { + "description": "Asynchronous operation in progress." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete a custom domain for a static site": { + "$ref": "./examples/DeleteStaticSiteCustomDomain.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/customDomains/{domainName}/validate": { + "post": { + "tags": [ + "StaticSites" + ], + "summary": "Validates a particular custom domain can be added to a static site.", + "description": "Description for Validates a particular custom domain can be added to a static site.", + "operationId": "StaticSites_ValidateCustomDomainCanBeAddedToStaticSite", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "domainName", + "in": "path", + "description": "The custom domain to validate.", + "required": true, + "type": "string" + }, + { + "name": "staticSiteCustomDomainRequestPropertiesEnvelope", + "in": "body", + "description": "A JSON representation of the static site custom domain request properties. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/StaticSiteCustomDomainRequestPropertiesARMResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "202": { + "description": "Asynchronous operation in progress." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Validate a custom domain for a static site": { + "$ref": "./examples/ValidateStaticSiteCustomDomain.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/detach": { + "post": { + "tags": [ + "StaticSites" + ], + "summary": "Detaches a static site.", + "description": "Description for Detaches a static site.", + "operationId": "StaticSites_DetachStaticSite", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site to detach.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "202": { + "description": "Asynchronous operation in progress." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Detach a static site": { + "$ref": "./examples/DetachStaticSite.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/functions": { + "get": { + "tags": [ + "StaticSites" + ], + "summary": "Gets the functions of a static site.", + "description": "Description for Gets the functions of a static site.", + "operationId": "StaticSites_ListStaticSiteFunctions", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteFunctionOverviewCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Gets the functions of a static site": { + "$ref": "./examples/ListStaticSiteFunctions.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/listAppSettings": { + "post": { + "tags": [ + "StaticSites" + ], + "summary": "Gets the application settings of a static site.", + "description": "Description for Gets the application settings of a static site.", + "operationId": "StaticSites_ListStaticSiteAppSettings", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get app settings of a static site": { + "$ref": "./examples/ListStaticSiteAppSettings.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/listConfiguredRoles": { + "post": { + "tags": [ + "StaticSites" + ], + "summary": "Lists the roles configured for the static site.", + "description": "Description for Lists the roles configured for the static site.", + "operationId": "StaticSites_ListStaticSiteConfiguredRoles", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StringList" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Lists the configured roles for a static site": { + "$ref": "./examples/ListStaticSiteConfiguredRoles.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/listFunctionAppSettings": { + "post": { + "tags": [ + "StaticSites" + ], + "summary": "Gets the application settings of a static site.", + "description": "Description for Gets the application settings of a static site.", + "operationId": "StaticSites_ListStaticSiteFunctionAppSettings", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get function app settings of a static site": { + "$ref": "./examples/ListStaticSiteFunctionAppSettings.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/listSecrets": { + "post": { + "tags": [ + "StaticSites" + ], + "summary": "Lists the secrets for an existing static site.", + "description": "Description for Lists the secrets for an existing static site.", + "operationId": "StaticSites_ListStaticSiteSecrets", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List secrets for a static site": { + "$ref": "./examples/ListStaticSiteSecrets.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/privateEndpointConnections": { + "get": { + "tags": [ + "StaticSites" + ], + "summary": "Gets the list of private endpoint connections associated with a static site", + "description": "Description for Gets the list of private endpoint connections associated with a static site", + "operationId": "StaticSites_GetPrivateEndpointConnectionList", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/PrivateEndpointConnectionCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get a list of private endpoint connections associated with a site.": { + "$ref": "./examples/GetSitePrivateEndpointConnectionList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "StaticSites" + ], + "summary": "Gets a private endpoint connection", + "description": "Description for Gets a private endpoint connection", + "operationId": "StaticSites_GetPrivateEndpointConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "Name of the private endpoint connection.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/RemotePrivateEndpointConnectionARMResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get a private endpoint connection for a site.": { + "$ref": "./examples/GetSitePrivateEndpointConnection.json" + } + } + }, + "put": { + "tags": [ + "StaticSites" + ], + "summary": "Approves or rejects a private endpoint connection", + "description": "Description for Approves or rejects a private endpoint connection", + "operationId": "StaticSites_ApproveOrRejectPrivateEndpointConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "Name of the private endpoint connection.", + "required": true, + "type": "string" + }, + { + "name": "privateEndpointWrapper", + "in": "body", + "description": "Request body.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/PrivateLinkConnectionApprovalRequestResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/RemotePrivateEndpointConnectionARMResource" + } + }, + "202": { + "description": "Asynchronous operation in progress.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/RemotePrivateEndpointConnectionARMResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Approves or rejects a private endpoint connection for a site.": { + "$ref": "./examples/ApproveRejectSitePrivateEndpointConnection.json" + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "StaticSites" + ], + "summary": "Deletes a private endpoint connection", + "description": "Description for Deletes a private endpoint connection", + "operationId": "StaticSites_DeletePrivateEndpointConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "Name of the private endpoint connection.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "type": "object" + } + }, + "202": { + "description": "Asynchronous operation in progress.", + "schema": { + "type": "object" + } + }, + "204": { + "description": "No content.", + "schema": { + "type": "object" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete a private endpoint connection for a site.": { + "$ref": "./examples/DeleteSitePrivateEndpointConnection.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/privateLinkResources": { + "get": { + "tags": [ + "StaticSites" + ], + "summary": "Gets the private link resources", + "description": "Description for Gets the private link resources", + "operationId": "StaticSites_GetPrivateLinkResources", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the site.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/PrivateLinkResourcesWrapper" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get private link resources of a site": { + "$ref": "./examples/GetSitePrivateLinkResources.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/resetapikey": { + "post": { + "tags": [ + "StaticSites" + ], + "summary": "Resets the api key for an existing static site.", + "description": "Description for Resets the api key for an existing static site.", + "operationId": "StaticSites_ResetStaticSiteApiKey", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "resetPropertiesEnvelope", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/StaticSiteResetPropertiesARMResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Reset the api key for a static site": { + "$ref": "./examples/ResetStaticSiteApiKey.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/userProvidedFunctionApps": { + "get": { + "tags": [ + "StaticSites" + ], + "summary": "Gets the details of the user provided function apps registered with a static site", + "description": "Description for Gets the details of the user provided function apps registered with a static site", + "operationId": "StaticSites_GetUserProvidedFunctionAppsForStaticSite", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteUserProvidedFunctionAppsCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get details of the user provided function apps registered with a static site.": { + "$ref": "./examples/GetUserProvidedFunctionAppsForStaticSite.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/userProvidedFunctionApps/{functionAppName}": { + "get": { + "tags": [ + "StaticSites" + ], + "summary": "Gets the details of the user provided function app registered with a static site", + "description": "Description for Gets the details of the user provided function app registered with a static site", + "operationId": "StaticSites_GetUserProvidedFunctionAppForStaticSite", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "functionAppName", + "in": "path", + "description": "Name of the function app registered with the static site.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteUserProvidedFunctionAppARMResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get details of the user provided function app registered with a static site.": { + "$ref": "./examples/GetUserProvidedFunctionAppForStaticSite.json" + } + } + }, + "put": { + "tags": [ + "StaticSites" + ], + "summary": "Register a user provided function app with a static site", + "description": "Description for Register a user provided function app with a static site", + "operationId": "StaticSites_RegisterUserProvidedFunctionAppWithStaticSite", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "functionAppName", + "in": "path", + "description": "Name of the function app to register with the static site.", + "required": true, + "type": "string" + }, + { + "name": "staticSiteUserProvidedFunctionEnvelope", + "in": "body", + "description": "A JSON representation of the user provided function app properties. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/StaticSiteUserProvidedFunctionAppARMResource" + } + }, + { + "name": "isForced", + "in": "query", + "description": "Specify true to force the update of the auth configuration on the function app even if an AzureStaticWebApps provider is already configured on the function app. The default is false.", + "type": "boolean" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteUserProvidedFunctionAppARMResource" + } + }, + "202": { + "description": "Asynchronous operation in progress.", + "schema": { + "$ref": "#/definitions/StaticSiteUserProvidedFunctionAppARMResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Register a user provided function app with a static site": { + "$ref": "./examples/RegisterUserProvidedFunctionAppWithStaticSite.json" + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "StaticSites" + ], + "summary": "Detach the user provided function app from the static site", + "description": "Description for Detach the user provided function app from the static site", + "operationId": "StaticSites_DetachUserProvidedFunctionAppFromStaticSite", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "functionAppName", + "in": "path", + "description": "Name of the function app registered with the static site.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "204": { + "description": "No content." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Detach the user provided function app from the static site.": { + "$ref": "./examples/DetachUserProvidedFunctionAppFromStaticSite.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/zipdeploy": { + "post": { + "tags": [ + "StaticSites" + ], + "summary": "Deploys zipped content to a static site.", + "description": "Description for Deploys zipped content to a static site.", + "operationId": "StaticSites_CreateZipDeploymentForStaticSite", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "staticSiteZipDeploymentEnvelope", + "in": "body", + "description": "A JSON representation of the StaticSiteZipDeployment properties. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/StaticSiteZipDeploymentARMResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "202": { + "description": "Asynchronous operation in progress." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Deploy a site from a zipped package": { + "$ref": "./examples/StaticSiteZipDeploy.json" + } + }, + "x-ms-long-running-operation": true + } + } + }, + "definitions": { + "ArmPlan": { + "description": "The plan object in Azure Resource Manager, represents a marketplace plan.", + "type": "object", + "properties": { + "name": { + "description": "The name.", + "type": "string" + }, + "publisher": { + "description": "The publisher.", + "type": "string" + }, + "product": { + "description": "The product.", + "type": "string" + }, + "promotionCode": { + "description": "The promotion code.", + "type": "string" + }, + "version": { + "description": "Version of product.", + "type": "string" + } + } + }, + "RemotePrivateEndpointConnection": { + "description": "A remote private endpoint connection", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "RemotePrivateEndpointConnection resource specific properties", + "properties": { + "provisioningState": { + "type": "string", + "readOnly": true + }, + "privateEndpoint": { + "$ref": "./CommonDefinitions.json#/definitions/ArmIdWrapper", + "description": "PrivateEndpoint of a remote private endpoint connection" + }, + "privateLinkServiceConnectionState": { + "$ref": "./CommonDefinitions.json#/definitions/PrivateLinkConnectionState" + }, + "ipAddresses": { + "description": "Private IPAddresses mapped to the remote private endpoint", + "type": "array", + "items": { + "type": "string" + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "ResponseMessageEnvelope[RemotePrivateEndpointConnection]": { + "description": "Message envelope that contains the common Azure resource manager properties and the resource provider specific content.", + "type": "object", + "properties": { + "id": { + "description": "Resource Id. Typically ID is populated only for responses to GET requests. Caller is responsible for passing in this\nvalue for GET requests only.\nFor example: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupId}/providers/Microsoft.Web/sites/{sitename}", + "type": "string" + }, + "name": { + "description": "Name of resource.", + "type": "string" + }, + "type": { + "description": "Type of resource e.g \"Microsoft.Web/sites\".", + "type": "string" + }, + "location": { + "description": "Geographical region resource belongs to e.g. SouthCentralUS, SouthEastAsia.", + "type": "string" + }, + "tags": { + "description": "Tags associated with resource.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "plan": { + "$ref": "#/definitions/ArmPlan", + "description": "Azure resource manager plan." + }, + "properties": { + "$ref": "#/definitions/RemotePrivateEndpointConnection", + "description": "Resource specific properties." + }, + "sku": { + "$ref": "./CommonDefinitions.json#/definitions/SkuDescription", + "description": "SKU description of the resource." + }, + "status": { + "description": "Azure-AsyncOperation Status info.", + "type": "string" + }, + "error": { + "$ref": "./CommonDefinitions.json#/definitions/ErrorEntity", + "description": "Azure-AsyncOperation Error info." + }, + "identity": { + "$ref": "./CommonDefinitions.json#/definitions/ManagedServiceIdentity", + "description": "MSI resource" + }, + "zones": { + "description": "Logical Availability Zones the service is hosted in", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "StaticSite": { + "description": "A static site.", + "type": "object", + "properties": { + "defaultHostname": { + "description": "The default autogenerated hostname for the static site.", + "type": "string", + "readOnly": true + }, + "repositoryUrl": { + "description": "URL for the repository of the static site.", + "type": "string" + }, + "branch": { + "description": "The target branch in the repository.", + "type": "string" + }, + "customDomains": { + "description": "The custom domains associated with this static site.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "repositoryToken": { + "description": "A user's github repository token. This is used to setup the Github Actions workflow file and API secrets.", + "type": "string" + }, + "buildProperties": { + "$ref": "#/definitions/StaticSiteBuildProperties", + "description": "Build properties to configure on the repository." + }, + "privateEndpointConnections": { + "description": "Private endpoint connections", + "type": "array", + "items": { + "$ref": "#/definitions/ResponseMessageEnvelope[RemotePrivateEndpointConnection]" + }, + "readOnly": true + }, + "stagingEnvironmentPolicy": { + "description": "State indicating whether staging environments are allowed or not allowed for a static web app.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "StagingEnvironmentPolicy", + "modelAsString": false + } + }, + "allowConfigFileUpdates": { + "description": "false if config file is locked for this static web app; otherwise, true.", + "type": "boolean" + }, + "templateProperties": { + "$ref": "#/definitions/StaticSiteTemplateOptions", + "description": "Template options for generating a new repository." + }, + "contentDistributionEndpoint": { + "description": "The content distribution endpoint for the static site.", + "type": "string", + "readOnly": true + }, + "keyVaultReferenceIdentity": { + "description": "Identity to use for Key Vault Reference authentication.", + "type": "string", + "readOnly": true + }, + "userProvidedFunctionApps": { + "description": "User provided function apps registered with the static site", + "type": "array", + "items": { + "$ref": "#/definitions/StaticSiteUserProvidedFunctionApp" + }, + "readOnly": true + }, + "provider": { + "description": "The provider that submitted the last deployment to the primary environment of the static site.", + "type": "string", + "readOnly": true + } + } + }, + "StaticSiteARMResource": { + "description": "Static Site ARM resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/StaticSite", + "description": "Core resource properties", + "x-ms-client-flatten": true + }, + "sku": { + "$ref": "./CommonDefinitions.json#/definitions/SkuDescription" + }, + "identity": { + "$ref": "./CommonDefinitions.json#/definitions/ManagedServiceIdentity" + } + } + }, + "StaticSiteBuildARMResource": { + "description": "Static Site Build ARM resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "StaticSiteBuildARMResource resource specific properties", + "properties": { + "buildId": { + "description": "An identifier for the static site build.", + "type": "string", + "readOnly": true + }, + "sourceBranch": { + "description": "The source branch.", + "type": "string", + "readOnly": true + }, + "pullRequestTitle": { + "description": "The title of a pull request that a static site build is related to.", + "type": "string", + "readOnly": true + }, + "hostname": { + "description": "The hostname for a static site build.", + "type": "string", + "readOnly": true + }, + "createdTimeUtc": { + "format": "date-time", + "description": "When this build was created.", + "type": "string", + "readOnly": true + }, + "lastUpdatedOn": { + "format": "date-time", + "description": "When this build was updated.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "The status of the static site build.", + "enum": [ + "WaitingForDeployment", + "Uploading", + "Deploying", + "Ready", + "Failed", + "Deleting", + "Detached" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "BuildStatus", + "modelAsString": true + } + }, + "userProvidedFunctionApps": { + "description": "User provided function apps registered with the static site build", + "type": "array", + "items": { + "$ref": "#/definitions/StaticSiteUserProvidedFunctionApp" + }, + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "StaticSiteBuildCollection": { + "description": "Collection of static site builds.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/StaticSiteBuildARMResource" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "StaticSiteBuildProperties": { + "description": "Build properties for the static site.", + "type": "object", + "properties": { + "appLocation": { + "description": "The path to the app code within the repository.", + "type": "string" + }, + "apiLocation": { + "description": "The path to the api code within the repository.", + "type": "string" + }, + "appArtifactLocation": { + "description": "Deprecated: The path of the app artifacts after building (deprecated in favor of OutputLocation)", + "type": "string" + }, + "outputLocation": { + "description": "The output path of the app after building.", + "type": "string" + }, + "appBuildCommand": { + "description": "A custom command to run during deployment of the static content application.", + "type": "string" + }, + "apiBuildCommand": { + "description": "A custom command to run during deployment of the Azure Functions API application.", + "type": "string" + }, + "skipGithubActionWorkflowGeneration": { + "description": "Skip Github Action workflow generation.", + "type": "boolean" + }, + "githubActionSecretNameOverride": { + "description": "Github Action secret name override.", + "type": "string" + } + } + }, + "StaticSiteCollection": { + "description": "Collection of static sites.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/StaticSiteARMResource" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "StaticSiteCustomDomainOverviewARMResource": { + "description": "Static Site Custom Domain Overview ARM resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "StaticSiteCustomDomainOverviewARMResource resource specific properties", + "properties": { + "domainName": { + "description": "The domain name for the static site custom domain.", + "type": "string", + "readOnly": true + }, + "createdOn": { + "format": "date-time", + "description": "The date and time on which the custom domain was created for the static site.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "The status of the custom domain", + "enum": [ + "RetrievingValidationToken", + "Validating", + "Adding", + "Ready", + "Failed", + "Deleting" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "CustomDomainStatus", + "modelAsString": true + } + }, + "validationToken": { + "description": "The TXT record validation token", + "type": "string", + "readOnly": true + }, + "errorMessage": { + "type": "string", + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "StaticSiteCustomDomainOverviewCollection": { + "description": "Collection of static site custom domains.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/StaticSiteCustomDomainOverviewARMResource" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "StaticSiteCustomDomainRequestPropertiesARMResource": { + "description": "Static Site Custom Domain Request Properties ARM resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "StaticSiteCustomDomainRequestPropertiesARMResource resource specific properties", + "properties": { + "validationMethod": { + "description": "Validation method for adding a custom domain", + "default": "cname-delegation", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "StaticSiteFunctionOverviewARMResource": { + "description": "Static Site Function Overview ARM resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "StaticSiteFunctionOverviewARMResource resource specific properties", + "properties": { + "functionName": { + "description": "The name for the function", + "type": "string", + "readOnly": true + }, + "triggerType": { + "description": "The trigger type of the function", + "enum": [ + "HttpTrigger", + "Unknown" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "TriggerTypes", + "modelAsString": true + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "StaticSiteFunctionOverviewCollection": { + "description": "Collection of static site functions.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/StaticSiteFunctionOverviewARMResource" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "StaticSitePatchResource": { + "description": "ARM resource for a static site when patching", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/StaticSite", + "description": "Core resource properties", + "x-ms-client-flatten": true + } + } + }, + "StaticSiteResetPropertiesARMResource": { + "description": "Static Site Reset Properties ARM resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "StaticSiteResetPropertiesARMResource resource specific properties", + "properties": { + "repositoryToken": { + "description": "The token which proves admin privileges to the repository.", + "type": "string" + }, + "shouldUpdateRepository": { + "description": "Determines whether the repository should be updated with the new properties.", + "type": "boolean" + } + }, + "x-ms-client-flatten": true + } + } + }, + "StaticSiteTemplateOptions": { + "description": "Template Options for the static site.", + "type": "object", + "properties": { + "templateRepositoryUrl": { + "description": "URL of the template repository. The newly generated repository will be based on this one.", + "type": "string" + }, + "owner": { + "description": "Owner of the newly generated repository.", + "type": "string" + }, + "repositoryName": { + "description": "Name of the newly generated repository.", + "type": "string" + }, + "description": { + "description": "Description of the newly generated repository.", + "type": "string" + }, + "isPrivate": { + "description": "Whether or not the newly generated repository is a private repository. Defaults to false (i.e. public).", + "type": "boolean" + } + } + }, + "StaticSiteUserARMResource": { + "description": "Static Site User ARM resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "StaticSiteUserARMResource resource specific properties", + "properties": { + "provider": { + "description": "The identity provider for the static site user.", + "type": "string", + "readOnly": true + }, + "userId": { + "description": "The user id for the static site user.", + "type": "string", + "readOnly": true + }, + "displayName": { + "description": "The display name for the static site user.", + "type": "string", + "readOnly": true + }, + "roles": { + "description": "The roles for the static site user, in free-form string format", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "StaticSiteUserCollection": { + "description": "Collection of static site custom users.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/StaticSiteUserARMResource" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "StaticSiteUserInvitationRequestResource": { + "description": "Static sites user roles invitation resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "StaticSiteUserInvitationRequestResource resource specific properties", + "properties": { + "domain": { + "description": "The domain name for the static site custom domain.", + "type": "string" + }, + "provider": { + "description": "The identity provider for the static site user.", + "type": "string" + }, + "userDetails": { + "description": "The user id for the static site user.", + "type": "string" + }, + "roles": { + "description": "The roles for the static site user, in free-form string format", + "type": "string" + }, + "numHoursToExpiration": { + "format": "int32", + "description": "The number of hours the sas token stays valid", + "type": "integer" + } + }, + "x-ms-client-flatten": true + } + } + }, + "StaticSiteUserInvitationResponseResource": { + "description": "Static sites user roles invitation link resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "StaticSiteUserInvitationResponseResource resource specific properties", + "properties": { + "expiresOn": { + "format": "date-time", + "description": "The expiration time of the invitation", + "type": "string", + "readOnly": true + }, + "invitationUrl": { + "description": "The url for the invitation link", + "type": "string", + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "StaticSiteUserProvidedFunctionApp": { + "description": "A static site user provided function.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "StaticSiteUserProvidedFunctionApp resource specific properties", + "properties": { + "functionAppResourceId": { + "description": "The resource id of the function app registered with the static site", + "type": "string" + }, + "functionAppRegion": { + "description": "The region of the function app registered with the static site", + "type": "string" + }, + "createdOn": { + "format": "date-time", + "description": "The date and time on which the function app was registered with the static site.", + "type": "string", + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "StaticSiteUserProvidedFunctionAppARMResource": { + "description": "Static Site User Provided Function App ARM resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "StaticSiteUserProvidedFunctionAppARMResource resource specific properties", + "properties": { + "functionAppResourceId": { + "description": "The resource id of the function app registered with the static site", + "type": "string" + }, + "functionAppRegion": { + "description": "The region of the function app registered with the static site", + "type": "string" + }, + "createdOn": { + "format": "date-time", + "description": "The date and time on which the function app was registered with the static site.", + "type": "string", + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "StaticSiteUserProvidedFunctionAppsCollection": { + "description": "Collection of static site user provided function apps.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/StaticSiteUserProvidedFunctionAppARMResource" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "StaticSiteZipDeployment": { + "description": "A static site zip deployment.", + "type": "object", + "properties": { + "appZipUrl": { + "description": "URL for the zipped app content", + "type": "string" + }, + "apiZipUrl": { + "description": "URL for the zipped api content", + "type": "string" + }, + "deploymentTitle": { + "description": "A title to label the deployment", + "type": "string" + }, + "provider": { + "description": "The provider submitting this deployment", + "type": "string" + }, + "functionLanguage": { + "description": "The language of the api content, if it exists", + "type": "string" + } + } + }, + "StaticSiteZipDeploymentARMResource": { + "description": "Static site zip deployment ARM resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/StaticSiteZipDeployment", + "description": "Core resource properties", + "x-ms-client-flatten": true + } + } + }, + "StaticSitesWorkflowPreview": { + "description": "Preview for the Static Site Workflow to be generated", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "StaticSitesWorkflowPreview resource specific properties", + "properties": { + "path": { + "description": "The path for the workflow file to be generated", + "type": "string", + "readOnly": true + }, + "contents": { + "description": "The contents for the workflow file to be generated", + "type": "string", + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "StaticSitesWorkflowPreviewRequest": { + "description": "Request entity for previewing the Static Site workflow", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "StaticSitesWorkflowPreviewRequest resource specific properties", + "properties": { + "repositoryUrl": { + "description": "URL for the repository of the static site.", + "type": "string" + }, + "branch": { + "description": "The target branch in the repository.", + "type": "string" + }, + "buildProperties": { + "$ref": "#/definitions/StaticSiteBuildProperties", + "description": "Build properties to configure on the repository." + } + }, + "x-ms-client-flatten": true + } + } + }, + "StringList": { + "description": "String list resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "List of string resources.", + "type": "array", + "items": { + "type": "string" + } + } + } + } + }, + "parameters": { + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Your Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).", + "required": true, + "type": "string" + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "Name of the resource group to which the resource belongs.", + "required": true, + "type": "string", + "maxLength": 90, + "minLength": 1, + "pattern": "^[-\\w\\._\\(\\)]+[^\\.]$", + "x-ms-parameter-location": "method" + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "API Version", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/WebApps.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/WebApps.json new file mode 100644 index 000000000000..4ae53342ef41 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/WebApps.json @@ -0,0 +1,26238 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-12-01", + "title": "WebApps API Client" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Web/sites": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get all apps for a subscription.", + "description": "Description for Get all apps for a subscription.", + "operationId": "WebApps_List", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/WebAppCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets all web, mobile, and API apps in the specified resource group.", + "description": "Description for Gets all web, mobile, and API apps in the specified resource group.", + "operationId": "WebApps_ListByResourceGroup", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "includeSlots", + "in": "query", + "description": "Specify true to include deployment slots in results. The default is false, which only gives you the production slot of all apps.", + "type": "boolean" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/WebAppCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the details of a web, mobile, or API app.", + "description": "Description for Gets the details of a web, mobile, or API app.", + "operationId": "WebApps_Get", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Site" + } + }, + "404": { + "description": "Not found." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Creates a new web, mobile, or API app in an existing resource group, or updates an existing app.", + "description": "Description for Creates a new web, mobile, or API app in an existing resource group, or updates an existing app.", + "operationId": "WebApps_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Unique name of the app to create or update. To create or update a deployment slot, use the {slot} parameter.", + "required": true, + "type": "string" + }, + { + "name": "siteEnvelope", + "in": "body", + "description": "A JSON representation of the app properties. See example.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Site" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Site" + } + }, + "202": { + "description": "Asynchronous operation in progress.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Site" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Deletes a web, mobile, or API app, or one of the deployment slots.", + "description": "Description for Deletes a web, mobile, or API app, or one of the deployment slots.", + "operationId": "WebApps_Delete", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app to delete.", + "required": true, + "type": "string" + }, + { + "name": "deleteMetrics", + "in": "query", + "description": "If true, web app metrics are also deleted.", + "type": "boolean" + }, + { + "name": "deleteEmptyServerFarm", + "in": "query", + "description": "Specify false if you want to keep empty App Service plan. By default, empty App Service plan is deleted.", + "type": "boolean" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted web app." + }, + "204": { + "description": "Successfully deleted web app." + }, + "404": { + "description": "Web app not found." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "WebApps" + ], + "summary": "Creates a new web, mobile, or API app in an existing resource group, or updates an existing app.", + "description": "Description for Creates a new web, mobile, or API app in an existing resource group, or updates an existing app.", + "operationId": "WebApps_Update", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Unique name of the app to create or update. To create or update a deployment slot, use the {slot} parameter.", + "required": true, + "type": "string" + }, + { + "name": "siteEnvelope", + "in": "body", + "description": "A JSON representation of the app properties. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/SitePatchResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Site" + } + }, + "202": { + "description": "Asynchronous operation in progress.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Site" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/analyzeCustomHostname": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Analyze a custom hostname.", + "description": "Description for Analyze a custom hostname.", + "operationId": "WebApps_AnalyzeCustomHostname", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "hostName", + "in": "query", + "description": "Custom hostname.", + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CustomHostnameAnalysisResult" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/applySlotConfig": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Applies the configuration settings from the target slot onto the current slot.", + "description": "Description for Applies the configuration settings from the target slot onto the current slot.", + "operationId": "WebApps_ApplySlotConfigToProduction", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slotSwapEntity", + "in": "body", + "description": "JSON object that contains the target slot name. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/CsmSlotEntity" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/backup": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Creates a backup of an app.", + "description": "Description for Creates a backup of an app.", + "operationId": "WebApps_Backup", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "request", + "in": "body", + "description": "Backup configuration. You can use the JSON response from the POST action as input here.", + "required": true, + "schema": { + "$ref": "#/definitions/BackupRequest" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupItem" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/backups": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets existing backups of an app.", + "description": "Description for Gets existing backups of an app.", + "operationId": "WebApps_ListBackups", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupItemCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/backups/{backupId}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a backup of an app by its ID.", + "description": "Description for Gets a backup of an app by its ID.", + "operationId": "WebApps_GetBackupStatus", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "backupId", + "in": "path", + "description": "ID of the backup.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupItem" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Deletes a backup of an app by its ID.", + "description": "Description for Deletes a backup of an app by its ID.", + "operationId": "WebApps_DeleteBackup", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "backupId", + "in": "path", + "description": "ID of the backup.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted web app backup item." + }, + "404": { + "description": "Web app backup item does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/backups/{backupId}/list": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Gets status of a web app backup that may be in progress, including secrets associated with the backup, such as the Azure Storage SAS URL. Also can be used to update the SAS URL for the backup if a new URL is passed in the request body.", + "description": "Description for Gets status of a web app backup that may be in progress, including secrets associated with the backup, such as the Azure Storage SAS URL. Also can be used to update the SAS URL for the backup if a new URL is passed in the request body.", + "operationId": "WebApps_ListBackupStatusSecrets", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "backupId", + "in": "path", + "description": "ID of backup.", + "required": true, + "type": "string" + }, + { + "name": "request", + "in": "body", + "description": "Information on backup request.", + "required": true, + "schema": { + "$ref": "#/definitions/BackupRequest" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupItem" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/backups/{backupId}/restore": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Restores a specific backup to another app (or deployment slot, if specified).", + "description": "Description for Restores a specific backup to another app (or deployment slot, if specified).", + "operationId": "WebApps_Restore", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "backupId", + "in": "path", + "description": "ID of the backup.", + "required": true, + "type": "string" + }, + { + "name": "request", + "in": "body", + "description": "Information on restore request .", + "required": true, + "schema": { + "$ref": "#/definitions/RestoreRequest" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Restore operation started." + }, + "200": { + "description": "Restore operation started." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/basicPublishingCredentialsPolicies": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Returns whether Scm basic auth is allowed and whether Ftp is allowed for a given site.", + "description": "Description for Returns whether Scm basic auth is allowed and whether Ftp is allowed for a given site.", + "operationId": "WebApps_GetBasicPublishingCredentialsPolicies", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CsmPublishingCredentialsPoliciesCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List Publishing Credentials Policies": { + "$ref": "./examples/ListPublishingCredentialsPolicies.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/basicPublishingCredentialsPolicies/ftp": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Returns whether FTP is allowed on the site or not.", + "description": "Description for Returns whether FTP is allowed on the site or not.", + "operationId": "WebApps_GetFtpAllowed", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CsmPublishingCredentialsPoliciesEntity" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get FTP Allowed": { + "$ref": "./examples/GetPublishingCredentialsPolicy.json" + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Updates whether FTP is allowed on the site or not.", + "description": "Description for Updates whether FTP is allowed on the site or not.", + "operationId": "WebApps_UpdateFtpAllowed", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "csmPublishingAccessPoliciesEntity", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CsmPublishingCredentialsPoliciesEntity" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CsmPublishingCredentialsPoliciesEntity" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Update FTP Allowed": { + "$ref": "./examples/UpdatePublishingCredentialsPolicy.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/basicPublishingCredentialsPolicies/scm": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Returns whether Scm basic auth is allowed on the site or not.", + "description": "Description for Returns whether Scm basic auth is allowed on the site or not.", + "operationId": "WebApps_GetScmAllowed", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CsmPublishingCredentialsPoliciesEntity" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get SCM Allowed": { + "$ref": "./examples/GetPublishingCredentialsPolicy.json" + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Updates whether user publishing credentials are allowed on the site or not.", + "description": "Description for Updates whether user publishing credentials are allowed on the site or not.", + "operationId": "WebApps_UpdateScmAllowed", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "csmPublishingAccessPoliciesEntity", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CsmPublishingCredentialsPoliciesEntity" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CsmPublishingCredentialsPoliciesEntity" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Update SCM Allowed": { + "$ref": "./examples/UpdatePublishingCredentialsPolicy.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "List the configurations of an app", + "description": "Description for List the configurations of an app", + "operationId": "WebApps_ListConfigurations", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SiteConfigResourceCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/appsettings": { + "put": { + "tags": [ + "WebApps" + ], + "summary": "Replaces the application settings of an app.", + "description": "Description for Replaces the application settings of an app.", + "operationId": "WebApps_UpdateApplicationSettings", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "appSettings", + "in": "body", + "description": "Application settings of the app.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/appsettings/list": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Gets the application settings of an app.", + "description": "Description for Gets the application settings of an app.", + "operationId": "WebApps_ListApplicationSettings", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/authsettings": { + "put": { + "tags": [ + "WebApps" + ], + "summary": "Updates the Authentication / Authorization settings associated with web app.", + "description": "Description for Updates the Authentication / Authorization settings associated with web app.", + "operationId": "WebApps_UpdateAuthSettings", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "siteAuthSettings", + "in": "body", + "description": "Auth settings associated with web app.", + "required": true, + "schema": { + "$ref": "#/definitions/SiteAuthSettings" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SiteAuthSettings" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/authsettings/list": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Gets the Authentication/Authorization settings of an app.", + "description": "Description for Gets the Authentication/Authorization settings of an app.", + "operationId": "WebApps_GetAuthSettings", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SiteAuthSettings" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/authsettingsV2": { + "put": { + "tags": [ + "WebApps" + ], + "summary": "Updates site's Authentication / Authorization settings for apps via the V2 format", + "description": "Description for Updates site's Authentication / Authorization settings for apps via the V2 format", + "operationId": "WebApps_UpdateAuthSettingsV2", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "siteAuthSettingsV2", + "in": "body", + "description": "Auth settings associated with web app.", + "required": true, + "schema": { + "$ref": "#/definitions/SiteAuthSettingsV2" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SiteAuthSettingsV2" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/authsettingsV2/list": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets site's Authentication / Authorization settings for apps via the V2 format", + "description": "Description for Gets site's Authentication / Authorization settings for apps via the V2 format", + "operationId": "WebApps_GetAuthSettingsV2", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SiteAuthSettingsV2" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/azurestorageaccounts": { + "put": { + "tags": [ + "WebApps" + ], + "summary": "Updates the Azure storage account configurations of an app.", + "description": "Description for Updates the Azure storage account configurations of an app.", + "operationId": "WebApps_UpdateAzureStorageAccounts", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "azureStorageAccounts", + "in": "body", + "description": "Azure storage accounts of the app.", + "required": true, + "schema": { + "$ref": "#/definitions/AzureStoragePropertyDictionaryResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AzureStoragePropertyDictionaryResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/azurestorageaccounts/list": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Gets the Azure storage account configurations of an app.", + "description": "Description for Gets the Azure storage account configurations of an app.", + "operationId": "WebApps_ListAzureStorageAccounts", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AzureStoragePropertyDictionaryResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/backup": { + "put": { + "tags": [ + "WebApps" + ], + "summary": "Updates the backup configuration of an app.", + "description": "Description for Updates the backup configuration of an app.", + "operationId": "WebApps_UpdateBackupConfiguration", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "request", + "in": "body", + "description": "Edited backup configuration.", + "required": true, + "schema": { + "$ref": "#/definitions/BackupRequest" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupRequest" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Deletes the backup configuration of an app.", + "description": "Description for Deletes the backup configuration of an app.", + "operationId": "WebApps_DeleteBackupConfiguration", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted backup configuration." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/backup/list": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Gets the backup configuration of an app.", + "description": "Description for Gets the backup configuration of an app.", + "operationId": "WebApps_GetBackupConfiguration", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupRequest" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/configreferences/appsettings": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the config reference app settings and status of an app", + "description": "Description for Gets the config reference app settings and status of an app", + "operationId": "WebApps_GetAppSettingsKeyVaultReferences", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ApiKVReferenceCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Azure Key Vault references for app settings": { + "$ref": "./examples/GetKeyVaultReferencesForAppSettings.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/configreferences/appsettings/{appSettingKey}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the config reference and status of an app", + "description": "Description for Gets the config reference and status of an app", + "operationId": "WebApps_GetAppSettingKeyVaultReference", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "appSettingKey", + "in": "path", + "description": "App Setting key name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ApiKVReference" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Azure Key Vault app setting reference": { + "$ref": "./examples/GetKeyVaultReferencesForAppSetting.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/configreferences/connectionstrings": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the config reference app settings and status of an app", + "description": "Description for Gets the config reference app settings and status of an app", + "operationId": "WebApps_GetSiteConnectionStringKeyVaultReferences", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ApiKVReferenceCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/configreferences/connectionstrings/{connectionStringKey}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the config reference and status of an app", + "description": "Description for Gets the config reference and status of an app", + "operationId": "WebApps_GetSiteConnectionStringKeyVaultReference", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "connectionStringKey", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ApiKVReference" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/connectionstrings": { + "put": { + "tags": [ + "WebApps" + ], + "summary": "Replaces the connection strings of an app.", + "description": "Description for Replaces the connection strings of an app.", + "operationId": "WebApps_UpdateConnectionStrings", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "connectionStrings", + "in": "body", + "description": "Connection strings of the app or deployment slot. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/ConnectionStringDictionary" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ConnectionStringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/connectionstrings/list": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Gets the connection strings of an app.", + "description": "Description for Gets the connection strings of an app.", + "operationId": "WebApps_ListConnectionStrings", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ConnectionStringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/logs": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the logging configuration of an app.", + "description": "Description for Gets the logging configuration of an app.", + "operationId": "WebApps_GetDiagnosticLogsConfiguration", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SiteLogsConfig" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Updates the logging configuration of an app.", + "description": "Description for Updates the logging configuration of an app.", + "operationId": "WebApps_UpdateDiagnosticLogsConfig", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "siteLogsConfig", + "in": "body", + "description": "A SiteLogsConfig JSON object that contains the logging configuration to change in the \"properties\" property.", + "required": true, + "schema": { + "$ref": "#/definitions/SiteLogsConfig" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SiteLogsConfig" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/metadata": { + "put": { + "tags": [ + "WebApps" + ], + "summary": "Replaces the metadata of an app.", + "description": "Description for Replaces the metadata of an app.", + "operationId": "WebApps_UpdateMetadata", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "metadata", + "in": "body", + "description": "Edited metadata of the app or deployment slot. See example.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/metadata/list": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Gets the metadata of an app.", + "description": "Description for Gets the metadata of an app.", + "operationId": "WebApps_ListMetadata", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/publishingcredentials/list": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Gets the Git/FTP publishing credentials of an app.", + "description": "Description for Gets the Git/FTP publishing credentials of an app.", + "operationId": "WebApps_ListPublishingCredentials", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/User" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/pushsettings": { + "put": { + "tags": [ + "WebApps" + ], + "summary": "Updates the Push settings associated with web app.", + "description": "Description for Updates the Push settings associated with web app.", + "operationId": "WebApps_UpdateSitePushSettings", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "pushSettings", + "in": "body", + "description": "Push settings associated with web app.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/PushSettings" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/PushSettings" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/pushsettings/list": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Gets the Push settings associated with web app.", + "description": "Description for Gets the Push settings associated with web app.", + "operationId": "WebApps_ListSitePushSettings", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/PushSettings" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/slotConfigNames": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the names of app settings and connection strings that stick to the slot (not swapped).", + "description": "Description for Gets the names of app settings and connection strings that stick to the slot (not swapped).", + "operationId": "WebApps_ListSlotConfigurationNames", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SlotConfigNamesResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Updates the names of application settings and connection string that remain with the slot during swap operation.", + "description": "Description for Updates the names of application settings and connection string that remain with the slot during swap operation.", + "operationId": "WebApps_UpdateSlotConfigurationNames", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slotConfigNames", + "in": "body", + "description": "Names of application settings and connection strings. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/SlotConfigNamesResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SlotConfigNamesResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/web": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the configuration of an app, such as platform version and bitness, default documents, virtual applications, Always On, etc.", + "description": "Description for Gets the configuration of an app, such as platform version and bitness, default documents, virtual applications, Always On, etc.", + "operationId": "WebApps_GetConfiguration", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SiteConfigResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Updates the configuration of an app.", + "description": "Description for Updates the configuration of an app.", + "operationId": "WebApps_CreateOrUpdateConfiguration", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "siteConfig", + "in": "body", + "description": "JSON representation of a SiteConfig object. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/SiteConfigResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SiteConfigResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "WebApps" + ], + "summary": "Updates the configuration of an app.", + "description": "Description for Updates the configuration of an app.", + "operationId": "WebApps_UpdateConfiguration", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "siteConfig", + "in": "body", + "description": "JSON representation of a SiteConfig object. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/SiteConfigResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SiteConfigResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/web/snapshots": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a list of web app configuration snapshots identifiers. Each element of the list contains a timestamp and the ID of the snapshot.", + "description": "Description for Gets a list of web app configuration snapshots identifiers. Each element of the list contains a timestamp and the ID of the snapshot.", + "operationId": "WebApps_ListConfigurationSnapshotInfo", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SiteConfigurationSnapshotInfoCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/web/snapshots/{snapshotId}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a snapshot of the configuration of an app at a previous point in time.", + "description": "Description for Gets a snapshot of the configuration of an app at a previous point in time.", + "operationId": "WebApps_GetConfigurationSnapshot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "snapshotId", + "in": "path", + "description": "The ID of the snapshot to read.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SiteConfigResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/web/snapshots/{snapshotId}/recover": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Reverts the configuration of an app to a previous snapshot.", + "description": "Description for Reverts the configuration of an app to a previous snapshot.", + "operationId": "WebApps_RecoverSiteConfigurationSnapshot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "snapshotId", + "in": "path", + "description": "The ID of the snapshot to read.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/containerlogs": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Gets the last lines of docker logs for the given site", + "description": "Description for Gets the last lines of docker logs for the given site", + "operationId": "WebApps_GetWebSiteContainerLogs", + "produces": [ + "application/octet-stream" + ], + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "200": { + "description": "OK", + "schema": { + "type": "file" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/containerlogs/zip/download": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Gets the ZIP archived docker log files for the given site", + "description": "Description for Gets the ZIP archived docker log files for the given site", + "operationId": "WebApps_GetContainerLogsZip", + "produces": [ + "application/zip" + ], + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "200": { + "description": "OK", + "schema": { + "type": "file" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/continuouswebjobs": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "List continuous web jobs for an app, or a deployment slot.", + "description": "Description for List continuous web jobs for an app, or a deployment slot.", + "operationId": "WebApps_ListContinuousWebJobs", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ContinuousWebJobCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/continuouswebjobs/{webJobName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a continuous web job by its ID for an app, or a deployment slot.", + "description": "Description for Gets a continuous web job by its ID for an app, or a deployment slot.", + "operationId": "WebApps_GetContinuousWebJob", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "webJobName", + "in": "path", + "description": "Name of Web Job.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Found continuous web job.", + "schema": { + "$ref": "#/definitions/ContinuousWebJob" + } + }, + "404": { + "description": "Continuous web job does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Delete a continuous web job by its ID for an app, or a deployment slot.", + "description": "Description for Delete a continuous web job by its ID for an app, or a deployment slot.", + "operationId": "WebApps_DeleteContinuousWebJob", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "webJobName", + "in": "path", + "description": "Name of Web Job.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted continuous web job." + }, + "204": { + "description": "Continuous web job does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/continuouswebjobs/{webJobName}/start": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Start a continuous web job for an app, or a deployment slot.", + "description": "Description for Start a continuous web job for an app, or a deployment slot.", + "operationId": "WebApps_StartContinuousWebJob", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "webJobName", + "in": "path", + "description": "Name of Web Job.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Found continuous web job." + }, + "404": { + "description": "Continuous web job does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/continuouswebjobs/{webJobName}/stop": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Stop a continuous web job for an app, or a deployment slot.", + "description": "Description for Stop a continuous web job for an app, or a deployment slot.", + "operationId": "WebApps_StopContinuousWebJob", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "webJobName", + "in": "path", + "description": "Name of Web Job.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Found continuous web job." + }, + "404": { + "description": "Continuous web job does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/deployments": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "List deployments for an app, or a deployment slot.", + "description": "Description for List deployments for an app, or a deployment slot.", + "operationId": "WebApps_ListDeployments", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DeploymentCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/deployments/{id}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get a deployment by its ID for an app, or a deployment slot.", + "description": "Description for Get a deployment by its ID for an app, or a deployment slot.", + "operationId": "WebApps_GetDeployment", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "id", + "in": "path", + "description": "Deployment ID.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Deployment" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Create a deployment for an app, or a deployment slot.", + "description": "Description for Create a deployment for an app, or a deployment slot.", + "operationId": "WebApps_CreateDeployment", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "id", + "in": "path", + "description": "ID of an existing deployment.", + "required": true, + "type": "string" + }, + { + "name": "deployment", + "in": "body", + "description": "Deployment details.", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Deployment" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Delete a deployment by its ID for an app, or a deployment slot.", + "description": "Description for Delete a deployment by its ID for an app, or a deployment slot.", + "operationId": "WebApps_DeleteDeployment", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "id", + "in": "path", + "description": "Deployment ID.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted deployment." + }, + "204": { + "description": "Deployment does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/deployments/{id}/log": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "List deployment log for specific deployment for an app, or a deployment slot.", + "description": "Description for List deployment log for specific deployment for an app, or a deployment slot.", + "operationId": "WebApps_ListDeploymentLog", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "id", + "in": "path", + "description": "The ID of a specific deployment. This is the value of the name property in the JSON response from \"GET /api/sites/{siteName}/deployments\".", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Deployment" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/discoverbackup": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Discovers an existing app backup that can be restored from a blob in Azure storage. Use this to get information about the databases stored in a backup.", + "description": "Description for Discovers an existing app backup that can be restored from a blob in Azure storage. Use this to get information about the databases stored in a backup.", + "operationId": "WebApps_DiscoverBackup", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "request", + "in": "body", + "description": "A RestoreRequest object that includes Azure storage URL and blog name for discovery of backup.", + "required": true, + "schema": { + "$ref": "#/definitions/RestoreRequest" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RestoreRequest" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/domainOwnershipIdentifiers": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Lists ownership identifiers for domain associated with web app.", + "description": "Description for Lists ownership identifiers for domain associated with web app.", + "operationId": "WebApps_ListDomainOwnershipIdentifiers", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/IdentifierCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/domainOwnershipIdentifiers/{domainOwnershipIdentifierName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get domain ownership identifier for web app.", + "description": "Description for Get domain ownership identifier for web app.", + "operationId": "WebApps_GetDomainOwnershipIdentifier", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "domainOwnershipIdentifierName", + "in": "path", + "description": "Name of domain ownership identifier.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Identifier" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Creates a domain ownership identifier for web app, or updates an existing ownership identifier.", + "description": "Description for Creates a domain ownership identifier for web app, or updates an existing ownership identifier.", + "operationId": "WebApps_CreateOrUpdateDomainOwnershipIdentifier", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "domainOwnershipIdentifierName", + "in": "path", + "description": "Name of domain ownership identifier.", + "required": true, + "type": "string" + }, + { + "name": "domainOwnershipIdentifier", + "in": "body", + "description": "A JSON representation of the domain ownership properties.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Identifier" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Identifier" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Deletes a domain ownership identifier for a web app.", + "description": "Description for Deletes a domain ownership identifier for a web app.", + "operationId": "WebApps_DeleteDomainOwnershipIdentifier", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "domainOwnershipIdentifierName", + "in": "path", + "description": "Name of domain ownership identifier.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted domain ownership identifier." + }, + "204": { + "description": "Domain ownership identifier does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "WebApps" + ], + "summary": "Creates a domain ownership identifier for web app, or updates an existing ownership identifier.", + "description": "Description for Creates a domain ownership identifier for web app, or updates an existing ownership identifier.", + "operationId": "WebApps_UpdateDomainOwnershipIdentifier", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "domainOwnershipIdentifierName", + "in": "path", + "description": "Name of domain ownership identifier.", + "required": true, + "type": "string" + }, + { + "name": "domainOwnershipIdentifier", + "in": "body", + "description": "A JSON representation of the domain ownership properties.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Identifier" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Identifier" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/extensions/MSDeploy": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get the status of the last MSDeploy operation.", + "description": "Description for Get the status of the last MSDeploy operation.", + "operationId": "WebApps_GetMSDeployStatus", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MSDeployStatus" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Invoke the MSDeploy web app extension.", + "description": "Description for Invoke the MSDeploy web app extension.", + "operationId": "WebApps_CreateMSDeployOperation", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "MSDeploy", + "in": "body", + "description": "Details of MSDeploy operation", + "required": true, + "schema": { + "$ref": "#/definitions/MSDeploy" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Deployment is scheduled.", + "schema": { + "$ref": "#/definitions/MSDeployStatus" + } + }, + "409": { + "description": "Another deployment is in progress." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/extensions/MSDeploy/log": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get the MSDeploy Log for the last MSDeploy operation.", + "description": "Description for Get the MSDeploy Log for the last MSDeploy operation.", + "operationId": "WebApps_GetMSDeployLog", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "MSDeploy log returned.", + "schema": { + "$ref": "#/definitions/MSDeployLog" + } + }, + "404": { + "description": "MSDeploy log not found." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/functions": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "List the functions for a web site, or a deployment slot.", + "description": "Description for List the functions for a web site, or a deployment slot.", + "operationId": "WebApps_ListFunctions", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Function information returned.", + "schema": { + "$ref": "#/definitions/FunctionEnvelopeCollection" + } + }, + "404": { + "description": "Function with an ID of {functionName} is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/functions/admin/token": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Fetch a short lived token that can be exchanged for a master key.", + "description": "Description for Fetch a short lived token that can be exchanged for a master key.", + "operationId": "WebApps_GetFunctionsAdminToken", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "string" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/functions/{functionName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get function information by its ID for web site, or a deployment slot.", + "description": "Description for Get function information by its ID for web site, or a deployment slot.", + "operationId": "WebApps_GetFunction", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "functionName", + "in": "path", + "description": "Function name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Function information returned.", + "schema": { + "$ref": "#/definitions/FunctionEnvelope" + } + }, + "404": { + "description": "Function with a name of {functionName} does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Create function for web site, or a deployment slot.", + "description": "Description for Create function for web site, or a deployment slot.", + "operationId": "WebApps_CreateFunction", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "functionName", + "in": "path", + "description": "Function name.", + "required": true, + "type": "string" + }, + { + "name": "function_envelope", + "in": "body", + "description": "Function details.", + "required": true, + "schema": { + "$ref": "#/definitions/FunctionEnvelope" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Function created.", + "schema": { + "$ref": "#/definitions/FunctionEnvelope" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Delete a function for web site, or a deployment slot.", + "description": "Description for Delete a function for web site, or a deployment slot.", + "operationId": "WebApps_DeleteFunction", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "functionName", + "in": "path", + "description": "Function name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "Function deleted." + }, + "404": { + "description": "Function does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/functions/{functionName}/keys/{keyName}": { + "put": { + "tags": [ + "WebApps" + ], + "summary": "Add or update a function secret.", + "description": "Description for Add or update a function secret.", + "operationId": "WebApps_CreateOrUpdateFunctionSecret", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "functionName", + "in": "path", + "description": "The name of the function.", + "required": true, + "type": "string" + }, + { + "name": "keyName", + "in": "path", + "description": "The name of the key.", + "required": true, + "type": "string" + }, + { + "name": "key", + "in": "body", + "description": "The key to create or update", + "required": true, + "schema": { + "$ref": "#/definitions/KeyInfo" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Key was created.", + "schema": { + "$ref": "#/definitions/KeyInfo" + } + }, + "200": { + "description": "Key was updated.", + "schema": { + "$ref": "#/definitions/KeyInfo" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Delete a function secret.", + "description": "Description for Delete a function secret.", + "operationId": "WebApps_DeleteFunctionSecret", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "functionName", + "in": "path", + "description": "The name of the function.", + "required": true, + "type": "string" + }, + { + "name": "keyName", + "in": "path", + "description": "The name of the key.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "404": { + "description": "Key was not found." + }, + "204": { + "description": "Key was deleted." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/functions/{functionName}/listkeys": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Get function keys for a function in a web site, or a deployment slot.", + "description": "Description for Get function keys for a function in a web site, or a deployment slot.", + "operationId": "WebApps_ListFunctionKeys", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "functionName", + "in": "path", + "description": "Function name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Function keys returned.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/functions/{functionName}/listsecrets": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Get function secrets for a function in a web site, or a deployment slot.", + "description": "Description for Get function secrets for a function in a web site, or a deployment slot.", + "operationId": "WebApps_ListFunctionSecrets", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "functionName", + "in": "path", + "description": "Function name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Function secrets returned.", + "schema": { + "$ref": "#/definitions/FunctionSecrets" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/host/default/listkeys": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Get host secrets for a function app.", + "description": "Description for Get host secrets for a function app.", + "operationId": "WebApps_ListHostKeys", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Host secrets returned.", + "schema": { + "$ref": "#/definitions/HostKeys" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/host/default/listsyncstatus": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "This is to allow calling via powershell and ARM template.", + "description": "Description for This is to allow calling via powershell and ARM template.", + "operationId": "WebApps_ListSyncStatus", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/host/default/sync": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Syncs function trigger metadata to the management database", + "description": "Description for Syncs function trigger metadata to the management database", + "operationId": "WebApps_SyncFunctions", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/host/default/{keyType}/{keyName}": { + "put": { + "tags": [ + "WebApps" + ], + "summary": "Add or update a host level secret.", + "description": "Description for Add or update a host level secret.", + "operationId": "WebApps_CreateOrUpdateHostSecret", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "keyType", + "in": "path", + "description": "The type of host key.", + "required": true, + "type": "string" + }, + { + "name": "keyName", + "in": "path", + "description": "The name of the key.", + "required": true, + "type": "string" + }, + { + "name": "key", + "in": "body", + "description": "The key to create or update", + "required": true, + "schema": { + "$ref": "#/definitions/KeyInfo" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Key was created.", + "schema": { + "$ref": "#/definitions/KeyInfo" + } + }, + "200": { + "description": "Key was updated.", + "schema": { + "$ref": "#/definitions/KeyInfo" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Delete a host level secret.", + "description": "Description for Delete a host level secret.", + "operationId": "WebApps_DeleteHostSecret", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "keyType", + "in": "path", + "description": "The type of host key.", + "required": true, + "type": "string" + }, + { + "name": "keyName", + "in": "path", + "description": "The name of the key.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "404": { + "description": "Key was not found." + }, + "204": { + "description": "Key was deleted." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hostNameBindings": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get hostname bindings for an app or a deployment slot.", + "description": "Description for Get hostname bindings for an app or a deployment slot.", + "operationId": "WebApps_ListHostNameBindings", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/HostNameBindingCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hostNameBindings/{hostName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get the named hostname binding for an app (or deployment slot, if specified).", + "description": "Description for Get the named hostname binding for an app (or deployment slot, if specified).", + "operationId": "WebApps_GetHostNameBinding", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "hostName", + "in": "path", + "description": "Hostname in the hostname binding.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/HostNameBinding" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Creates a hostname binding for an app.", + "description": "Description for Creates a hostname binding for an app.", + "operationId": "WebApps_CreateOrUpdateHostNameBinding", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "hostName", + "in": "path", + "description": "Hostname in the hostname binding.", + "required": true, + "type": "string" + }, + { + "name": "hostNameBinding", + "in": "body", + "description": "Binding details. This is the JSON representation of a HostNameBinding object.", + "required": true, + "schema": { + "$ref": "#/definitions/HostNameBinding" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/HostNameBinding" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Deletes a hostname binding for an app.", + "description": "Description for Deletes a hostname binding for an app.", + "operationId": "WebApps_DeleteHostNameBinding", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "hostName", + "in": "path", + "description": "Hostname in the hostname binding.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted hostname binding." + }, + "204": { + "description": "Hostname binding does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hybridConnectionNamespaces/{namespaceName}/relays/{relayName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Retrieves a specific Service Bus Hybrid Connection used by this Web App.", + "description": "Description for Retrieves a specific Service Bus Hybrid Connection used by this Web App.", + "operationId": "WebApps_GetHybridConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "The name of the web app.", + "required": true, + "type": "string" + }, + { + "name": "namespaceName", + "in": "path", + "description": "The namespace for this hybrid connection.", + "required": true, + "type": "string" + }, + { + "name": "relayName", + "in": "path", + "description": "The relay name for this hybrid connection.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/HybridConnection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Creates a new Hybrid Connection using a Service Bus relay.", + "description": "Description for Creates a new Hybrid Connection using a Service Bus relay.", + "operationId": "WebApps_CreateOrUpdateHybridConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "The name of the web app.", + "required": true, + "type": "string" + }, + { + "name": "namespaceName", + "in": "path", + "description": "The namespace for this hybrid connection.", + "required": true, + "type": "string" + }, + { + "name": "relayName", + "in": "path", + "description": "The relay name for this hybrid connection.", + "required": true, + "type": "string" + }, + { + "name": "connectionEnvelope", + "in": "body", + "description": "The details of the hybrid connection.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/HybridConnection" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/HybridConnection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Removes a Hybrid Connection from this site.", + "description": "Description for Removes a Hybrid Connection from this site.", + "operationId": "WebApps_DeleteHybridConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "The name of the web app.", + "required": true, + "type": "string" + }, + { + "name": "namespaceName", + "in": "path", + "description": "The namespace for this hybrid connection.", + "required": true, + "type": "string" + }, + { + "name": "relayName", + "in": "path", + "description": "The relay name for this hybrid connection.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted hybrid connection." + }, + "404": { + "description": "Hybrid connection does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "WebApps" + ], + "summary": "Creates a new Hybrid Connection using a Service Bus relay.", + "description": "Description for Creates a new Hybrid Connection using a Service Bus relay.", + "operationId": "WebApps_UpdateHybridConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "The name of the web app.", + "required": true, + "type": "string" + }, + { + "name": "namespaceName", + "in": "path", + "description": "The namespace for this hybrid connection.", + "required": true, + "type": "string" + }, + { + "name": "relayName", + "in": "path", + "description": "The relay name for this hybrid connection.", + "required": true, + "type": "string" + }, + { + "name": "connectionEnvelope", + "in": "body", + "description": "The details of the hybrid connection.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/HybridConnection" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/HybridConnection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hybridConnectionRelays": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Retrieves all Service Bus Hybrid Connections used by this Web App.", + "description": "Description for Retrieves all Service Bus Hybrid Connections used by this Web App.", + "operationId": "WebApps_ListHybridConnections", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "The name of the web app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/HybridConnection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hybridconnection": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets hybrid connections configured for an app (or deployment slot, if specified).", + "description": "Description for Gets hybrid connections configured for an app (or deployment slot, if specified).", + "operationId": "WebApps_ListRelayServiceConnections", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RelayServiceConnectionEntity" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hybridconnection/{entityName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a hybrid connection configuration by its name.", + "description": "Description for Gets a hybrid connection configuration by its name.", + "operationId": "WebApps_GetRelayServiceConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "entityName", + "in": "path", + "description": "Name of the hybrid connection.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RelayServiceConnectionEntity" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Creates a new hybrid connection configuration (PUT), or updates an existing one (PATCH).", + "description": "Description for Creates a new hybrid connection configuration (PUT), or updates an existing one (PATCH).", + "operationId": "WebApps_CreateOrUpdateRelayServiceConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "entityName", + "in": "path", + "description": "Name of the hybrid connection configuration.", + "required": true, + "type": "string" + }, + { + "name": "connectionEnvelope", + "in": "body", + "description": "Details of the hybrid connection configuration.", + "required": true, + "schema": { + "$ref": "#/definitions/RelayServiceConnectionEntity" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RelayServiceConnectionEntity" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Deletes a relay service connection by its name.", + "description": "Description for Deletes a relay service connection by its name.", + "operationId": "WebApps_DeleteRelayServiceConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "entityName", + "in": "path", + "description": "Name of the hybrid connection configuration.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted relay service connection." + }, + "404": { + "description": "Relay service connection does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "WebApps" + ], + "summary": "Creates a new hybrid connection configuration (PUT), or updates an existing one (PATCH).", + "description": "Description for Creates a new hybrid connection configuration (PUT), or updates an existing one (PATCH).", + "operationId": "WebApps_UpdateRelayServiceConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "entityName", + "in": "path", + "description": "Name of the hybrid connection configuration.", + "required": true, + "type": "string" + }, + { + "name": "connectionEnvelope", + "in": "body", + "description": "Details of the hybrid connection configuration.", + "required": true, + "schema": { + "$ref": "#/definitions/RelayServiceConnectionEntity" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RelayServiceConnectionEntity" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets all scale-out instances of an app.", + "description": "Description for Gets all scale-out instances of an app.", + "operationId": "WebApps_ListInstanceIdentifiers", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/WebAppInstanceStatusCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets all scale-out instances of an app.", + "description": "Description for Gets all scale-out instances of an app.", + "operationId": "WebApps_GetInstanceInfo", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/WebSiteInstanceStatus" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get site instance info": { + "$ref": "./examples/GetSiteInstanceInfo.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/extensions/MSDeploy": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get the status of the last MSDeploy operation.", + "description": "Description for Get the status of the last MSDeploy operation.", + "operationId": "WebApps_GetInstanceMsDeployStatus", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "instanceId", + "in": "path", + "description": "ID of web app instance.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MSDeployStatus" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Invoke the MSDeploy web app extension.", + "description": "Description for Invoke the MSDeploy web app extension.", + "operationId": "WebApps_CreateInstanceMSDeployOperation", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "instanceId", + "in": "path", + "description": "ID of web app instance.", + "required": true, + "type": "string" + }, + { + "name": "MSDeploy", + "in": "body", + "description": "Details of MSDeploy operation", + "required": true, + "schema": { + "$ref": "#/definitions/MSDeploy" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Deployment is scheduled.", + "schema": { + "$ref": "#/definitions/MSDeployStatus" + } + }, + "409": { + "description": "Another deployment is in progress." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/extensions/MSDeploy/log": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get the MSDeploy Log for the last MSDeploy operation.", + "description": "Description for Get the MSDeploy Log for the last MSDeploy operation.", + "operationId": "WebApps_GetInstanceMSDeployLog", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "instanceId", + "in": "path", + "description": "ID of web app instance.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "MSDeploy log returned.", + "schema": { + "$ref": "#/definitions/MSDeployLog" + } + }, + "404": { + "description": "MSDeploy log not found." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/processes": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get list of processes for a web site, or a deployment slot, or for a specific scaled-out instance in a web site.", + "description": "Description for Get list of processes for a web site, or a deployment slot, or for a specific scaled-out instance in a web site.", + "operationId": "WebApps_ListInstanceProcesses", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "instanceId", + "in": "path", + "description": "ID of a specific scaled-out instance. This is the value of the name property in the JSON response from \"GET api/sites/{siteName}/instances\".", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Process terminated.", + "schema": { + "$ref": "#/definitions/ProcessInfoCollection" + } + }, + "404": { + "description": "Process with the specified ID is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/processes/{processId}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get process information by its ID for a specific scaled-out instance in a web site.", + "description": "Description for Get process information by its ID for a specific scaled-out instance in a web site.", + "operationId": "WebApps_GetInstanceProcess", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "processId", + "in": "path", + "description": "PID.", + "required": true, + "type": "string" + }, + { + "name": "instanceId", + "in": "path", + "description": "ID of a specific scaled-out instance. This is the value of the name property in the JSON response from \"GET api/sites/{siteName}/instances\".", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Process information returned.", + "schema": { + "$ref": "#/definitions/ProcessInfo" + } + }, + "404": { + "description": "Process with the specified ID is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Terminate a process by its ID for a web site, or a deployment slot, or specific scaled-out instance in a web site.", + "description": "Description for Terminate a process by its ID for a web site, or a deployment slot, or specific scaled-out instance in a web site.", + "operationId": "WebApps_DeleteInstanceProcess", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "processId", + "in": "path", + "description": "PID.", + "required": true, + "type": "string" + }, + { + "name": "instanceId", + "in": "path", + "description": "ID of a specific scaled-out instance. This is the value of the name property in the JSON response from \"GET api/sites/{siteName}/instances\".", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "Process terminated." + }, + "404": { + "description": "Process with the specified ID is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/processes/{processId}/dump": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get a memory dump of a process by its ID for a specific scaled-out instance in a web site.", + "description": "Description for Get a memory dump of a process by its ID for a specific scaled-out instance in a web site.", + "operationId": "WebApps_GetInstanceProcessDump", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "processId", + "in": "path", + "description": "PID.", + "required": true, + "type": "string" + }, + { + "name": "instanceId", + "in": "path", + "description": "ID of a specific scaled-out instance. This is the value of the name property in the JSON response from \"GET api/sites/{siteName}/instances\".", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "file" + } + }, + "404": { + "description": "Process with the specified ID is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/processes/{processId}/modules": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "List module information for a process by its ID for a specific scaled-out instance in a web site.", + "description": "Description for List module information for a process by its ID for a specific scaled-out instance in a web site.", + "operationId": "WebApps_ListInstanceProcessModules", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "processId", + "in": "path", + "description": "PID.", + "required": true, + "type": "string" + }, + { + "name": "instanceId", + "in": "path", + "description": "ID of a specific scaled-out instance. This is the value of the name property in the JSON response from \"GET api/sites/{siteName}/instances\".", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Module information returned.", + "schema": { + "$ref": "#/definitions/ProcessModuleInfoCollection" + } + }, + "404": { + "description": "Process with the specified ID is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/processes/{processId}/modules/{baseAddress}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get process information by its ID for a specific scaled-out instance in a web site.", + "description": "Description for Get process information by its ID for a specific scaled-out instance in a web site.", + "operationId": "WebApps_GetInstanceProcessModule", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "processId", + "in": "path", + "description": "PID.", + "required": true, + "type": "string" + }, + { + "name": "baseAddress", + "in": "path", + "description": "Module base address.", + "required": true, + "type": "string" + }, + { + "name": "instanceId", + "in": "path", + "description": "ID of a specific scaled-out instance. This is the value of the name property in the JSON response from \"GET api/sites/{siteName}/instances\".", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Module information returned.", + "schema": { + "$ref": "#/definitions/ProcessModuleInfo" + } + }, + "404": { + "description": "Process with the specified ID is not running, or a module with the specified baseAddress was not found." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/processes/{processId}/threads": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "List the threads in a process by its ID for a specific scaled-out instance in a web site.", + "description": "Description for List the threads in a process by its ID for a specific scaled-out instance in a web site.", + "operationId": "WebApps_ListInstanceProcessThreads", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "processId", + "in": "path", + "description": "PID.", + "required": true, + "type": "string" + }, + { + "name": "instanceId", + "in": "path", + "description": "ID of a specific scaled-out instance. This is the value of the name property in the JSON response from \"GET api/sites/{siteName}/instances\".", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Thread information returned.", + "schema": { + "$ref": "#/definitions/ProcessThreadInfoCollection" + } + }, + "404": { + "description": "Process with the specified ID is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/iscloneable": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Shows whether an app can be cloned to another resource group or subscription.", + "description": "Description for Shows whether an app can be cloned to another resource group or subscription.", + "operationId": "WebApps_IsCloneable", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/SiteCloneability" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/listbackups": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Gets existing backups of an app.", + "description": "Description for Gets existing backups of an app.", + "operationId": "WebApps_ListSiteBackups", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupItemCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List backups": { + "$ref": "./examples/ListSlotBackups.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/listsyncfunctiontriggerstatus": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "This is to allow calling via powershell and ARM template.", + "description": "Description for This is to allow calling via powershell and ARM template.", + "operationId": "WebApps_ListSyncFunctionTriggers", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/FunctionSecrets" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/migrate": { + "put": { + "tags": [ + "WebApps" + ], + "summary": "Restores a web app.", + "description": "Description for Restores a web app.", + "operationId": "WebApps_MigrateStorage", + "parameters": [ + { + "name": "subscriptionName", + "in": "query", + "description": "Azure subscription.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "migrationOptions", + "in": "body", + "description": "Migration migrationOptions.", + "required": true, + "schema": { + "$ref": "#/definitions/StorageMigrationOptions" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/StorageMigrationResponse" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/migratemysql": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Migrates a local (in-app) MySql database to a remote MySql database.", + "description": "Description for Migrates a local (in-app) MySql database to a remote MySql database.", + "operationId": "WebApps_MigrateMySql", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "migrationRequestEnvelope", + "in": "body", + "description": "MySql migration options.", + "required": true, + "schema": { + "$ref": "#/definitions/MigrateMySqlRequest" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Operation" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/migratemysql/status": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Returns the status of MySql in app migration, if one is active, and whether or not MySql in app is enabled", + "description": "Description for Returns the status of MySql in app migration, if one is active, and whether or not MySql in app is enabled", + "operationId": "WebApps_GetMigrateMySqlStatus", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MigrateMySqlStatus" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/networkConfig/virtualNetwork": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a Swift Virtual Network connection.", + "description": "Description for Gets a Swift Virtual Network connection.", + "operationId": "WebApps_GetSwiftVirtualNetworkConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/SwiftVirtualNetwork" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Integrates this Web App with a Virtual Network. This requires that 1) \"swiftSupported\" is true when doing a GET against this resource, and 2) that the target Subnet has already been delegated, and is not\r\nin use by another App Service Plan other than the one this App is in.", + "description": "Description for Integrates this Web App with a Virtual Network. This requires that 1) \"swiftSupported\" is true when doing a GET against this resource, and 2) that the target Subnet has already been delegated, and is not\nin use by another App Service Plan other than the one this App is in.", + "operationId": "WebApps_CreateOrUpdateSwiftVirtualNetworkConnectionWithCheck", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "connectionEnvelope", + "in": "body", + "description": "Properties of the Virtual Network connection. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/SwiftVirtualNetwork" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SwiftVirtualNetwork" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Deletes a Swift Virtual Network connection from an app (or deployment slot).", + "description": "Description for Deletes a Swift Virtual Network connection from an app (or deployment slot).", + "operationId": "WebApps_DeleteSwiftVirtualNetwork", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted virtual network." + }, + "404": { + "description": "Virtual network does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/networkFeatures/{view}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets all network features used by the app (or deployment slot, if specified).", + "description": "Description for Gets all network features used by the app (or deployment slot, if specified).", + "operationId": "WebApps_ListNetworkFeatures", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "view", + "in": "path", + "description": "The type of view. Only \"summary\" is supported at this time.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/NetworkFeatures" + } + }, + "404": { + "description": "The requested view does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/networkTrace/operationresults/{operationId}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a named operation for a network trace capturing (or deployment slot, if specified).", + "description": "Description for Gets a named operation for a network trace capturing (or deployment slot, if specified).", + "operationId": "WebApps_GetNetworkTraceOperation", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "operationId", + "in": "path", + "description": "GUID of the operation.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } + } + }, + "202": { + "description": "Operation is in progress.", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get the current status of a network trace operation for a site": { + "$ref": "./examples/GetWebSiteNetworkTraceOperation.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/networkTrace/start": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Start capturing network packets for the site (To be deprecated).", + "description": "Description for Start capturing network packets for the site (To be deprecated).", + "operationId": "WebApps_StartWebSiteNetworkTrace", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "The name of the web app.", + "required": true, + "type": "string" + }, + { + "name": "durationInSeconds", + "in": "query", + "description": "The duration to keep capturing in seconds.", + "type": "integer", + "format": "int32" + }, + { + "name": "maxFrameLength", + "in": "query", + "description": "The maximum frame length in bytes (Optional).", + "type": "integer", + "format": "int32" + }, + { + "name": "sasUrl", + "in": "query", + "description": "The Blob URL to store capture file.", + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "string" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/networkTrace/startOperation": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Start capturing network packets for the site.", + "description": "Description for Start capturing network packets for the site.", + "operationId": "WebApps_StartWebSiteNetworkTraceOperation", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "The name of the web app.", + "required": true, + "type": "string" + }, + { + "name": "durationInSeconds", + "in": "query", + "description": "The duration to keep capturing in seconds.", + "type": "integer", + "format": "int32" + }, + { + "name": "maxFrameLength", + "in": "query", + "description": "The maximum frame length in bytes (Optional).", + "type": "integer", + "format": "int32" + }, + { + "name": "sasUrl", + "in": "query", + "description": "The Blob URL to store capture file.", + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } + } + }, + "202": { + "description": "Operation is in progress.", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Start a new network trace operation for a site": { + "$ref": "./examples/StartWebSiteNetworkTraceOperation.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/networkTrace/stop": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Stop ongoing capturing network packets for the site.", + "description": "Description for Stop ongoing capturing network packets for the site.", + "operationId": "WebApps_StopWebSiteNetworkTrace", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "The name of the web app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Stopped." + }, + "204": { + "description": "Stopped." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Stop a currently running network trace operation for a site": { + "$ref": "./examples/StopWebSiteNetworkTrace.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/networkTrace/{operationId}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a named operation for a network trace capturing (or deployment slot, if specified).", + "description": "Description for Gets a named operation for a network trace capturing (or deployment slot, if specified).", + "operationId": "WebApps_GetNetworkTraces", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "operationId", + "in": "path", + "description": "GUID of the operation.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get NetworkTraces for a site": { + "$ref": "./examples/GetWebSiteNetworkTraces.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/networkTraces/current/operationresults/{operationId}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a named operation for a network trace capturing (or deployment slot, if specified).", + "description": "Description for Gets a named operation for a network trace capturing (or deployment slot, if specified).", + "operationId": "WebApps_GetNetworkTraceOperationV2", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "operationId", + "in": "path", + "description": "GUID of the operation.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } + } + }, + "202": { + "description": "Operation is in progress.", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get the current status of a network trace operation for a site": { + "$ref": "./examples/GetWebSiteNetworkTraceOperation.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/networkTraces/{operationId}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a named operation for a network trace capturing (or deployment slot, if specified).", + "description": "Description for Gets a named operation for a network trace capturing (or deployment slot, if specified).", + "operationId": "WebApps_GetNetworkTracesV2", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "operationId", + "in": "path", + "description": "GUID of the operation.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get NetworkTraces for a site": { + "$ref": "./examples/GetWebSiteNetworkTraces.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/newpassword": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Generates a new publishing password for an app (or deployment slot, if specified).", + "description": "Description for Generates a new publishing password for an app (or deployment slot, if specified).", + "operationId": "WebApps_GenerateNewSitePublishingPassword", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully generate new password." + }, + "204": { + "description": "Successfully generate new password." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/perfcounters": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets perfmon counters for web app.", + "description": "Description for Gets perfmon counters for web app.", + "operationId": "WebApps_ListPerfMonCounters", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$filter", + "in": "query", + "description": "Return only usages/metrics specified in the filter. Filter conforms to odata syntax. Example: $filter=(startTime eq 2014-01-01T00:00:00Z and endTime eq 2014-12-31T23:59:59Z and timeGrain eq duration'[Hour|Minute|Day]'.", + "type": "string", + "x-ms-skip-url-encoding": true + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PerfMonCounterCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/phplogging": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets web app's event logs.", + "description": "Description for Gets web app's event logs.", + "operationId": "WebApps_GetSitePhpErrorLogFlag", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SitePhpErrorLogFlag" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/premieraddons": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the premier add-ons of an app.", + "description": "Description for Gets the premier add-ons of an app.", + "operationId": "WebApps_ListPremierAddOns", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PremierAddOn" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/premieraddons/{premierAddOnName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a named add-on of an app.", + "description": "Description for Gets a named add-on of an app.", + "operationId": "WebApps_GetPremierAddOn", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "premierAddOnName", + "in": "path", + "description": "Add-on name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PremierAddOn" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Updates a named add-on of an app.", + "description": "Description for Updates a named add-on of an app.", + "operationId": "WebApps_AddPremierAddOn", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "premierAddOnName", + "in": "path", + "description": "Add-on name.", + "required": true, + "type": "string" + }, + { + "name": "premierAddOn", + "in": "body", + "description": "A JSON representation of the edited premier add-on.", + "required": true, + "schema": { + "$ref": "#/definitions/PremierAddOn" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PremierAddOn" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Delete a premier add-on from an app.", + "description": "Description for Delete a premier add-on from an app.", + "operationId": "WebApps_DeletePremierAddOn", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "premierAddOnName", + "in": "path", + "description": "Add-on name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted premier add-on." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "WebApps" + ], + "summary": "Updates a named add-on of an app.", + "description": "Description for Updates a named add-on of an app.", + "operationId": "WebApps_UpdatePremierAddOn", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "premierAddOnName", + "in": "path", + "description": "Add-on name.", + "required": true, + "type": "string" + }, + { + "name": "premierAddOn", + "in": "body", + "description": "A JSON representation of the edited premier add-on.", + "required": true, + "schema": { + "$ref": "#/definitions/PremierAddOnPatchResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PremierAddOn" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/privateAccess/virtualNetworks": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets data around private site access enablement and authorized Virtual Networks that can access the site.", + "description": "Description for Gets data around private site access enablement and authorized Virtual Networks that can access the site.", + "operationId": "WebApps_GetPrivateAccess", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "The name of the web app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateAccess" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Sets data around private site access enablement and authorized Virtual Networks that can access the site.", + "description": "Description for Sets data around private site access enablement and authorized Virtual Networks that can access the site.", + "operationId": "WebApps_PutPrivateAccessVnet", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "The name of the web app.", + "required": true, + "type": "string" + }, + { + "name": "access", + "in": "body", + "description": "The information for the private access", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateAccess" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateAccess" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/privateEndpointConnections": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the list of private endpoint connections associated with a site", + "description": "Description for Gets the list of private endpoint connections associated with a site", + "operationId": "WebApps_GetPrivateEndpointConnectionList", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the site.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/PrivateEndpointConnectionCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a private endpoint connection", + "description": "Description for Gets a private endpoint connection", + "operationId": "WebApps_GetPrivateEndpointConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the site.", + "required": true, + "type": "string" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "Name of the private endpoint connection.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/RemotePrivateEndpointConnectionARMResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get a private endpoint connection for a site.": { + "$ref": "./examples/GetSitePrivateEndpointConnection.json" + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Approves or rejects a private endpoint connection", + "description": "Description for Approves or rejects a private endpoint connection", + "operationId": "WebApps_ApproveOrRejectPrivateEndpointConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the site.", + "required": true, + "type": "string" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "privateEndpointWrapper", + "in": "body", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/PrivateLinkConnectionApprovalRequestResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/RemotePrivateEndpointConnectionARMResource" + } + }, + "202": { + "description": "Asynchronous operation in progress.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/RemotePrivateEndpointConnectionARMResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Approves or rejects a private endpoint connection for a site.": { + "$ref": "./examples/ApproveRejectSitePrivateEndpointConnection.json" + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Deletes a private endpoint connection", + "description": "Description for Deletes a private endpoint connection", + "operationId": "WebApps_DeletePrivateEndpointConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the site.", + "required": true, + "type": "string" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "type": "object" + } + }, + "202": { + "description": "Asynchronous operation in progress.", + "schema": { + "type": "object" + } + }, + "204": { + "description": "No content.", + "schema": { + "type": "object" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete a private endpoint connection for a site.": { + "$ref": "./examples/DeleteSitePrivateEndpointConnection.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/privateLinkResources": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the private link resources", + "description": "Description for Gets the private link resources", + "operationId": "WebApps_GetPrivateLinkResources", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the site.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/PrivateLinkResourcesWrapper" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get private link resources of a site": { + "$ref": "./examples/GetSitePrivateLinkResources.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/processes": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get list of processes for a web site, or a deployment slot, or for a specific scaled-out instance in a web site.", + "description": "Description for Get list of processes for a web site, or a deployment slot, or for a specific scaled-out instance in a web site.", + "operationId": "WebApps_ListProcesses", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Process terminated.", + "schema": { + "$ref": "#/definitions/ProcessInfoCollection" + } + }, + "404": { + "description": "Process with the specified ID is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/processes/{processId}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get process information by its ID for a specific scaled-out instance in a web site.", + "description": "Description for Get process information by its ID for a specific scaled-out instance in a web site.", + "operationId": "WebApps_GetProcess", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "processId", + "in": "path", + "description": "PID.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Process information returned.", + "schema": { + "$ref": "#/definitions/ProcessInfo" + } + }, + "404": { + "description": "Process with the specified ID is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Terminate a process by its ID for a web site, or a deployment slot, or specific scaled-out instance in a web site.", + "description": "Description for Terminate a process by its ID for a web site, or a deployment slot, or specific scaled-out instance in a web site.", + "operationId": "WebApps_DeleteProcess", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "processId", + "in": "path", + "description": "PID.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "Process terminated." + }, + "404": { + "description": "Process with the specified ID is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/processes/{processId}/dump": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get a memory dump of a process by its ID for a specific scaled-out instance in a web site.", + "description": "Description for Get a memory dump of a process by its ID for a specific scaled-out instance in a web site.", + "operationId": "WebApps_GetProcessDump", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "processId", + "in": "path", + "description": "PID.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "file" + } + }, + "404": { + "description": "Process with the specified ID is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/processes/{processId}/modules": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "List module information for a process by its ID for a specific scaled-out instance in a web site.", + "description": "Description for List module information for a process by its ID for a specific scaled-out instance in a web site.", + "operationId": "WebApps_ListProcessModules", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "processId", + "in": "path", + "description": "PID.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Module information returned.", + "schema": { + "$ref": "#/definitions/ProcessModuleInfoCollection" + } + }, + "404": { + "description": "Process with the specified ID is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/processes/{processId}/modules/{baseAddress}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get process information by its ID for a specific scaled-out instance in a web site.", + "description": "Description for Get process information by its ID for a specific scaled-out instance in a web site.", + "operationId": "WebApps_GetProcessModule", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "processId", + "in": "path", + "description": "PID.", + "required": true, + "type": "string" + }, + { + "name": "baseAddress", + "in": "path", + "description": "Module base address.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Module information returned.", + "schema": { + "$ref": "#/definitions/ProcessModuleInfo" + } + }, + "404": { + "description": "Process with the specified ID is not running, or a module with the specified baseAddress was not found." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/processes/{processId}/threads": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "List the threads in a process by its ID for a specific scaled-out instance in a web site.", + "description": "Description for List the threads in a process by its ID for a specific scaled-out instance in a web site.", + "operationId": "WebApps_ListProcessThreads", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "processId", + "in": "path", + "description": "PID.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Thread information returned.", + "schema": { + "$ref": "#/definitions/ProcessThreadInfoCollection" + } + }, + "404": { + "description": "Process with the specified ID is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/publicCertificates": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get public certificates for an app or a deployment slot.", + "description": "Description for Get public certificates for an app or a deployment slot.", + "operationId": "WebApps_ListPublicCertificates", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PublicCertificateCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/publicCertificates/{publicCertificateName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get the named public certificate for an app (or deployment slot, if specified).", + "description": "Description for Get the named public certificate for an app (or deployment slot, if specified).", + "operationId": "WebApps_GetPublicCertificate", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "publicCertificateName", + "in": "path", + "description": "Public certificate name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PublicCertificate" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Creates a hostname binding for an app.", + "description": "Description for Creates a hostname binding for an app.", + "operationId": "WebApps_CreateOrUpdatePublicCertificate", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "publicCertificateName", + "in": "path", + "description": "Public certificate name.", + "required": true, + "type": "string" + }, + { + "name": "publicCertificate", + "in": "body", + "description": "Public certificate details. This is the JSON representation of a PublicCertificate object.", + "required": true, + "schema": { + "$ref": "#/definitions/PublicCertificate" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PublicCertificate" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Deletes a hostname binding for an app.", + "description": "Description for Deletes a hostname binding for an app.", + "operationId": "WebApps_DeletePublicCertificate", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "publicCertificateName", + "in": "path", + "description": "Public certificate name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted hostname binding." + }, + "204": { + "description": "Hostname binding does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/publishxml": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Gets the publishing profile for an app (or deployment slot, if specified).", + "description": "Description for Gets the publishing profile for an app (or deployment slot, if specified).", + "operationId": "WebApps_ListPublishingProfileXmlWithSecrets", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "publishingProfileOptions", + "in": "body", + "description": "Specifies publishingProfileOptions for publishing profile. For example, use {\"format\": \"FileZilla3\"} to get a FileZilla publishing profile.", + "required": true, + "schema": { + "$ref": "#/definitions/CsmPublishingProfileOptions" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "file" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/resetSlotConfig": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Resets the configuration settings of the current slot if they were previously modified by calling the API with POST.", + "description": "Description for Resets the configuration settings of the current slot if they were previously modified by calling the API with POST.", + "operationId": "WebApps_ResetProductionSlotConfig", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/restart": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Restarts an app (or deployment slot, if specified).", + "description": "Description for Restarts an app (or deployment slot, if specified).", + "operationId": "WebApps_Restart", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "softRestart", + "in": "query", + "description": "Specify true to apply the configuration settings and restarts the app only if necessary. By default, the API always restarts and reprovisions the app.", + "type": "boolean" + }, + { + "name": "synchronous", + "in": "query", + "description": "Specify true to block until the app is restarted. By default, it is set to false, and the API responds immediately (asynchronous).", + "type": "boolean" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully restarted app." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/restoreFromBackupBlob": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Restores an app from a backup blob in Azure Storage.", + "description": "Description for Restores an app from a backup blob in Azure Storage.", + "operationId": "WebApps_RestoreFromBackupBlob", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "request", + "in": "body", + "description": "Information on restore request .", + "required": true, + "schema": { + "$ref": "#/definitions/RestoreRequest" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Restore operation started." + }, + "200": { + "description": "Restore operation started." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/restoreFromDeletedApp": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Restores a deleted web app to this web app.", + "description": "Description for Restores a deleted web app to this web app.", + "operationId": "WebApps_RestoreFromDeletedApp", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "restoreRequest", + "in": "body", + "description": "Deleted web app restore information.", + "required": true, + "schema": { + "$ref": "#/definitions/DeletedAppRestoreRequest" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Restore operation started." + }, + "200": { + "description": "Restore operation started." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/restoreSnapshot": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Restores a web app from a snapshot.", + "description": "Description for Restores a web app from a snapshot.", + "operationId": "WebApps_RestoreSnapshot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "restoreRequest", + "in": "body", + "description": "Snapshot restore settings. Snapshot information can be obtained by calling GetDeletedSites or GetSiteSnapshots API.", + "required": true, + "schema": { + "$ref": "#/definitions/SnapshotRestoreRequest" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Restore operation started." + }, + "200": { + "description": "Restore operation started." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/siteextensions": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get list of siteextensions for a web site, or a deployment slot.", + "description": "Description for Get list of siteextensions for a web site, or a deployment slot.", + "operationId": "WebApps_ListSiteExtensions", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "SiteExtension information returned.", + "schema": { + "$ref": "#/definitions/SiteExtensionInfoCollection" + } + }, + "404": { + "description": "SiteExtension not found." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/siteextensions/{siteExtensionId}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get site extension information by its ID for a web site, or a deployment slot.", + "description": "Description for Get site extension information by its ID for a web site, or a deployment slot.", + "operationId": "WebApps_GetSiteExtension", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "siteExtensionId", + "in": "path", + "description": "Site extension name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "SiteExtension information returned.", + "schema": { + "$ref": "#/definitions/SiteExtensionInfo" + } + }, + "404": { + "description": "SiteExtension with an ID of {siteExtensionId} is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Install site extension on a web site, or a deployment slot.", + "description": "Description for Install site extension on a web site, or a deployment slot.", + "operationId": "WebApps_InstallSiteExtension", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "siteExtensionId", + "in": "path", + "description": "Site extension name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Site Extension created.", + "schema": { + "$ref": "#/definitions/SiteExtensionInfo" + } + }, + "200": { + "description": "Site Extension created.", + "schema": { + "$ref": "#/definitions/SiteExtensionInfo" + } + }, + "429": { + "description": "Site Extension is being installed on another request: Rejecting current request." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Remove a site extension from a web site, or a deployment slot.", + "description": "Description for Remove a site extension from a web site, or a deployment slot.", + "operationId": "WebApps_DeleteSiteExtension", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "siteExtensionId", + "in": "path", + "description": "Site extension name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "SiteExtension terminated." + }, + "404": { + "description": "SiteExtension with an ID of {siteExtensionId} is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets an app's deployment slots.", + "description": "Description for Gets an app's deployment slots.", + "operationId": "WebApps_ListSlots", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/WebAppCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the details of a web, mobile, or API app.", + "description": "Description for Gets the details of a web, mobile, or API app.", + "operationId": "WebApps_GetSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. By default, this API returns the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Site" + } + }, + "404": { + "description": "Not found." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Creates a new web, mobile, or API app in an existing resource group, or updates an existing app.", + "description": "Description for Creates a new web, mobile, or API app in an existing resource group, or updates an existing app.", + "operationId": "WebApps_CreateOrUpdateSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Unique name of the app to create or update. To create or update a deployment slot, use the {slot} parameter.", + "required": true, + "type": "string" + }, + { + "name": "siteEnvelope", + "in": "body", + "description": "A JSON representation of the app properties. See example.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Site" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot to create or update. By default, this API attempts to create or modify the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Site" + } + }, + "202": { + "description": "Asynchronous operation in progress.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Site" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Deletes a web, mobile, or API app, or one of the deployment slots.", + "description": "Description for Deletes a web, mobile, or API app, or one of the deployment slots.", + "operationId": "WebApps_DeleteSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app to delete.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot to delete. By default, the API deletes the production slot.", + "required": true, + "type": "string" + }, + { + "name": "deleteMetrics", + "in": "query", + "description": "If true, web app metrics are also deleted.", + "type": "boolean" + }, + { + "name": "deleteEmptyServerFarm", + "in": "query", + "description": "Specify false if you want to keep empty App Service plan. By default, empty App Service plan is deleted.", + "type": "boolean" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted web app." + }, + "204": { + "description": "Successfully deleted web app." + }, + "404": { + "description": "Web app not found." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "WebApps" + ], + "summary": "Creates a new web, mobile, or API app in an existing resource group, or updates an existing app.", + "description": "Description for Creates a new web, mobile, or API app in an existing resource group, or updates an existing app.", + "operationId": "WebApps_UpdateSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Unique name of the app to create or update. To create or update a deployment slot, use the {slot} parameter.", + "required": true, + "type": "string" + }, + { + "name": "siteEnvelope", + "in": "body", + "description": "A JSON representation of the app properties. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/SitePatchResource" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot to create or update. By default, this API attempts to create or modify the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Site" + } + }, + "202": { + "description": "Asynchronous operation in progress.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Site" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/analyzeCustomHostname": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Analyze a custom hostname.", + "description": "Description for Analyze a custom hostname.", + "operationId": "WebApps_AnalyzeCustomHostnameSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of web app slot. If not specified then will default to production slot.", + "required": true, + "type": "string" + }, + { + "name": "hostName", + "in": "query", + "description": "Custom hostname.", + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CustomHostnameAnalysisResult" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/applySlotConfig": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Applies the configuration settings from the target slot onto the current slot.", + "description": "Description for Applies the configuration settings from the target slot onto the current slot.", + "operationId": "WebApps_ApplySlotConfigurationSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slotSwapEntity", + "in": "body", + "description": "JSON object that contains the target slot name. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/CsmSlotEntity" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the source slot. If a slot is not specified, the production slot is used as the source slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/backup": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Creates a backup of an app.", + "description": "Description for Creates a backup of an app.", + "operationId": "WebApps_BackupSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "request", + "in": "body", + "description": "Backup configuration. You can use the JSON response from the POST action as input here.", + "required": true, + "schema": { + "$ref": "#/definitions/BackupRequest" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will create a backup for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupItem" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/backups": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets existing backups of an app.", + "description": "Description for Gets existing backups of an app.", + "operationId": "WebApps_ListBackupsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get backups of the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupItemCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/backups/{backupId}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a backup of an app by its ID.", + "description": "Description for Gets a backup of an app by its ID.", + "operationId": "WebApps_GetBackupStatusSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "backupId", + "in": "path", + "description": "ID of the backup.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get a backup of the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupItem" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Deletes a backup of an app by its ID.", + "description": "Description for Deletes a backup of an app by its ID.", + "operationId": "WebApps_DeleteBackupSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "backupId", + "in": "path", + "description": "ID of the backup.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will delete a backup of the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted web app backup item." + }, + "404": { + "description": "Web app backup item does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/backups/{backupId}/list": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Gets status of a web app backup that may be in progress, including secrets associated with the backup, such as the Azure Storage SAS URL. Also can be used to update the SAS URL for the backup if a new URL is passed in the request body.", + "description": "Description for Gets status of a web app backup that may be in progress, including secrets associated with the backup, such as the Azure Storage SAS URL. Also can be used to update the SAS URL for the backup if a new URL is passed in the request body.", + "operationId": "WebApps_ListBackupStatusSecretsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "backupId", + "in": "path", + "description": "ID of backup.", + "required": true, + "type": "string" + }, + { + "name": "request", + "in": "body", + "description": "Information on backup request.", + "required": true, + "schema": { + "$ref": "#/definitions/BackupRequest" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of web app slot. If not specified then will default to production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupItem" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/backups/{backupId}/restore": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Restores a specific backup to another app (or deployment slot, if specified).", + "description": "Description for Restores a specific backup to another app (or deployment slot, if specified).", + "operationId": "WebApps_RestoreSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "backupId", + "in": "path", + "description": "ID of the backup.", + "required": true, + "type": "string" + }, + { + "name": "request", + "in": "body", + "description": "Information on restore request .", + "required": true, + "schema": { + "$ref": "#/definitions/RestoreRequest" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will restore a backup of the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Restore operation started." + }, + "200": { + "description": "Restore operation started." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/basicPublishingCredentialsPolicies": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Returns whether Scm basic auth is allowed and whether Ftp is allowed for a given site.", + "description": "Description for Returns whether Scm basic auth is allowed and whether Ftp is allowed for a given site.", + "operationId": "WebApps_GetBasicPublishingCredentialsPoliciesSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CsmPublishingCredentialsPoliciesCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List Publishing Credentials Policies": { + "$ref": "./examples/ListPublishingCredentialsPoliciesSlot.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/basicPublishingCredentialsPolicies/ftp": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Returns whether FTP is allowed on the site or not.", + "description": "Description for Returns whether FTP is allowed on the site or not.", + "operationId": "WebApps_GetFtpAllowedSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CsmPublishingCredentialsPoliciesEntity" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get FTP Allowed": { + "$ref": "./examples/GetPublishingCredentialsPolicySlot.json" + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Updates whether FTP is allowed on the site or not.", + "description": "Description for Updates whether FTP is allowed on the site or not.", + "operationId": "WebApps_UpdateFtpAllowedSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "csmPublishingAccessPoliciesEntity", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CsmPublishingCredentialsPoliciesEntity" + } + }, + { + "name": "slot", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CsmPublishingCredentialsPoliciesEntity" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Update FTP Allowed": { + "$ref": "./examples/UpdatePublishingCredentialsPolicySlot.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/basicPublishingCredentialsPolicies/scm": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Returns whether Scm basic auth is allowed on the site or not.", + "description": "Description for Returns whether Scm basic auth is allowed on the site or not.", + "operationId": "WebApps_GetScmAllowedSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CsmPublishingCredentialsPoliciesEntity" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get SCM Allowed": { + "$ref": "./examples/GetPublishingCredentialsPolicySlot.json" + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Updates whether user publishing credentials are allowed on the site or not.", + "description": "Description for Updates whether user publishing credentials are allowed on the site or not.", + "operationId": "WebApps_UpdateScmAllowedSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "csmPublishingAccessPoliciesEntity", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CsmPublishingCredentialsPoliciesEntity" + } + }, + { + "name": "slot", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CsmPublishingCredentialsPoliciesEntity" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Update SCM Allowed": { + "$ref": "./examples/UpdatePublishingCredentialsPolicySlot.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "List the configurations of an app", + "description": "Description for List the configurations of an app", + "operationId": "WebApps_ListConfigurationsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will return configuration for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SiteConfigResourceCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/appsettings": { + "put": { + "tags": [ + "WebApps" + ], + "summary": "Replaces the application settings of an app.", + "description": "Description for Replaces the application settings of an app.", + "operationId": "WebApps_UpdateApplicationSettingsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "appSettings", + "in": "body", + "description": "Application settings of the app.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will update the application settings for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/appsettings/list": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Gets the application settings of an app.", + "description": "Description for Gets the application settings of an app.", + "operationId": "WebApps_ListApplicationSettingsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get the application settings for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/authsettings": { + "put": { + "tags": [ + "WebApps" + ], + "summary": "Updates the Authentication / Authorization settings associated with web app.", + "description": "Description for Updates the Authentication / Authorization settings associated with web app.", + "operationId": "WebApps_UpdateAuthSettingsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "siteAuthSettings", + "in": "body", + "description": "Auth settings associated with web app.", + "required": true, + "schema": { + "$ref": "#/definitions/SiteAuthSettings" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of web app slot. If not specified then will default to production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SiteAuthSettings" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/authsettings/list": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Gets the Authentication/Authorization settings of an app.", + "description": "Description for Gets the Authentication/Authorization settings of an app.", + "operationId": "WebApps_GetAuthSettingsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get the settings for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SiteAuthSettings" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/authsettingsV2": { + "put": { + "tags": [ + "WebApps" + ], + "summary": "Updates site's Authentication / Authorization settings for apps via the V2 format", + "description": "Description for Updates site's Authentication / Authorization settings for apps via the V2 format", + "operationId": "WebApps_UpdateAuthSettingsV2Slot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "siteAuthSettingsV2", + "in": "body", + "description": "Auth settings associated with web app.", + "required": true, + "schema": { + "$ref": "#/definitions/SiteAuthSettingsV2" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of web app slot. If not specified then will default to production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SiteAuthSettingsV2" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/authsettingsV2/list": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets site's Authentication / Authorization settings for apps via the V2 format", + "description": "Description for Gets site's Authentication / Authorization settings for apps via the V2 format", + "operationId": "WebApps_GetAuthSettingsV2Slot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get the settings for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SiteAuthSettingsV2" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/azurestorageaccounts": { + "put": { + "tags": [ + "WebApps" + ], + "summary": "Updates the Azure storage account configurations of an app.", + "description": "Description for Updates the Azure storage account configurations of an app.", + "operationId": "WebApps_UpdateAzureStorageAccountsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "azureStorageAccounts", + "in": "body", + "description": "Azure storage accounts of the app.", + "required": true, + "schema": { + "$ref": "#/definitions/AzureStoragePropertyDictionaryResource" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will update the Azure storage account configurations for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AzureStoragePropertyDictionaryResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/azurestorageaccounts/list": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Gets the Azure storage account configurations of an app.", + "description": "Description for Gets the Azure storage account configurations of an app.", + "operationId": "WebApps_ListAzureStorageAccountsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will update the Azure storage account configurations for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AzureStoragePropertyDictionaryResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/backup": { + "put": { + "tags": [ + "WebApps" + ], + "summary": "Updates the backup configuration of an app.", + "description": "Description for Updates the backup configuration of an app.", + "operationId": "WebApps_UpdateBackupConfigurationSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "request", + "in": "body", + "description": "Edited backup configuration.", + "required": true, + "schema": { + "$ref": "#/definitions/BackupRequest" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will update the backup configuration for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupRequest" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Deletes the backup configuration of an app.", + "description": "Description for Deletes the backup configuration of an app.", + "operationId": "WebApps_DeleteBackupConfigurationSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will delete the backup configuration for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted backup configuration." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/backup/list": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Gets the backup configuration of an app.", + "description": "Description for Gets the backup configuration of an app.", + "operationId": "WebApps_GetBackupConfigurationSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get the backup configuration for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupRequest" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/configreferences/appsettings": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the config reference app settings and status of an app", + "description": "Description for Gets the config reference app settings and status of an app", + "operationId": "WebApps_GetAppSettingsKeyVaultReferencesSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ApiKVReferenceCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Azure Key Vault references for app settings for slot": { + "$ref": "./examples/GetKeyVaultReferencesForAppSettingsSlot.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/configreferences/appsettings/{appSettingKey}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the config reference and status of an app", + "description": "Description for Gets the config reference and status of an app", + "operationId": "WebApps_GetAppSettingKeyVaultReferenceSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "appSettingKey", + "in": "path", + "description": "App Setting key name.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ApiKVReference" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Azure Key Vault slot app setting reference": { + "$ref": "./examples/GetKeyVaultReferencesForAppSettingSlot.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/configreferences/connectionstrings": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the config reference app settings and status of an app", + "description": "Description for Gets the config reference app settings and status of an app", + "operationId": "WebApps_GetSiteConnectionStringKeyVaultReferencesSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ApiKVReferenceCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/configreferences/connectionstrings/{connectionStringKey}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the config reference and status of an app", + "description": "Description for Gets the config reference and status of an app", + "operationId": "WebApps_GetSiteConnectionStringKeyVaultReferenceSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "connectionStringKey", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ApiKVReference" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/connectionstrings": { + "put": { + "tags": [ + "WebApps" + ], + "summary": "Replaces the connection strings of an app.", + "description": "Description for Replaces the connection strings of an app.", + "operationId": "WebApps_UpdateConnectionStringsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "connectionStrings", + "in": "body", + "description": "Connection strings of the app or deployment slot. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/ConnectionStringDictionary" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will update the connection settings for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ConnectionStringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/connectionstrings/list": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Gets the connection strings of an app.", + "description": "Description for Gets the connection strings of an app.", + "operationId": "WebApps_ListConnectionStringsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get the connection settings for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ConnectionStringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/logs": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the logging configuration of an app.", + "description": "Description for Gets the logging configuration of an app.", + "operationId": "WebApps_GetDiagnosticLogsConfigurationSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get the logging configuration for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SiteLogsConfig" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Updates the logging configuration of an app.", + "description": "Description for Updates the logging configuration of an app.", + "operationId": "WebApps_UpdateDiagnosticLogsConfigSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "siteLogsConfig", + "in": "body", + "description": "A SiteLogsConfig JSON object that contains the logging configuration to change in the \"properties\" property.", + "required": true, + "schema": { + "$ref": "#/definitions/SiteLogsConfig" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will update the logging configuration for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SiteLogsConfig" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/metadata": { + "put": { + "tags": [ + "WebApps" + ], + "summary": "Replaces the metadata of an app.", + "description": "Description for Replaces the metadata of an app.", + "operationId": "WebApps_UpdateMetadataSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "metadata", + "in": "body", + "description": "Edited metadata of the app or deployment slot. See example.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will update the metadata for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/metadata/list": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Gets the metadata of an app.", + "description": "Description for Gets the metadata of an app.", + "operationId": "WebApps_ListMetadataSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get the metadata for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/publishingcredentials/list": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Gets the Git/FTP publishing credentials of an app.", + "description": "Description for Gets the Git/FTP publishing credentials of an app.", + "operationId": "WebApps_ListPublishingCredentialsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get the publishing credentials for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/User" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/pushsettings": { + "put": { + "tags": [ + "WebApps" + ], + "summary": "Updates the Push settings associated with web app.", + "description": "Description for Updates the Push settings associated with web app.", + "operationId": "WebApps_UpdateSitePushSettingsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "pushSettings", + "in": "body", + "description": "Push settings associated with web app.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/PushSettings" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of web app slot. If not specified then will default to production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/PushSettings" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/pushsettings/list": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Gets the Push settings associated with web app.", + "description": "Description for Gets the Push settings associated with web app.", + "operationId": "WebApps_ListSitePushSettingsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of web app slot. If not specified then will default to production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/PushSettings" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/web": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the configuration of an app, such as platform version and bitness, default documents, virtual applications, Always On, etc.", + "description": "Description for Gets the configuration of an app, such as platform version and bitness, default documents, virtual applications, Always On, etc.", + "operationId": "WebApps_GetConfigurationSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will return configuration for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SiteConfigResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Updates the configuration of an app.", + "description": "Description for Updates the configuration of an app.", + "operationId": "WebApps_CreateOrUpdateConfigurationSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "siteConfig", + "in": "body", + "description": "JSON representation of a SiteConfig object. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/SiteConfigResource" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will update configuration for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SiteConfigResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "WebApps" + ], + "summary": "Updates the configuration of an app.", + "description": "Description for Updates the configuration of an app.", + "operationId": "WebApps_UpdateConfigurationSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "siteConfig", + "in": "body", + "description": "JSON representation of a SiteConfig object. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/SiteConfigResource" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will update configuration for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SiteConfigResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/web/snapshots": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a list of web app configuration snapshots identifiers. Each element of the list contains a timestamp and the ID of the snapshot.", + "description": "Description for Gets a list of web app configuration snapshots identifiers. Each element of the list contains a timestamp and the ID of the snapshot.", + "operationId": "WebApps_ListConfigurationSnapshotInfoSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will return configuration for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SiteConfigurationSnapshotInfoCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/web/snapshots/{snapshotId}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a snapshot of the configuration of an app at a previous point in time.", + "description": "Description for Gets a snapshot of the configuration of an app at a previous point in time.", + "operationId": "WebApps_GetConfigurationSnapshotSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "snapshotId", + "in": "path", + "description": "The ID of the snapshot to read.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will return configuration for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SiteConfigResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/web/snapshots/{snapshotId}/recover": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Reverts the configuration of an app to a previous snapshot.", + "description": "Description for Reverts the configuration of an app to a previous snapshot.", + "operationId": "WebApps_RecoverSiteConfigurationSnapshotSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "snapshotId", + "in": "path", + "description": "The ID of the snapshot to read.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will return configuration for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/containerlogs": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Gets the last lines of docker logs for the given site", + "description": "Description for Gets the last lines of docker logs for the given site", + "operationId": "WebApps_GetWebSiteContainerLogsSlot", + "produces": [ + "application/octet-stream" + ], + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of web app slot. If not specified then will default to production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "200": { + "description": "OK", + "schema": { + "type": "file" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/containerlogs/zip/download": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Gets the ZIP archived docker log files for the given site", + "description": "Description for Gets the ZIP archived docker log files for the given site", + "operationId": "WebApps_GetContainerLogsZipSlot", + "produces": [ + "application/zip" + ], + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of web app slot. If not specified then will default to production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "200": { + "description": "OK", + "schema": { + "type": "file" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/continuouswebjobs": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "List continuous web jobs for an app, or a deployment slot.", + "description": "Description for List continuous web jobs for an app, or a deployment slot.", + "operationId": "WebApps_ListContinuousWebJobsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API deletes a deployment for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ContinuousWebJobCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/continuouswebjobs/{webJobName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a continuous web job by its ID for an app, or a deployment slot.", + "description": "Description for Gets a continuous web job by its ID for an app, or a deployment slot.", + "operationId": "WebApps_GetContinuousWebJobSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "webJobName", + "in": "path", + "description": "Name of Web Job.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API deletes a deployment for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Found continuous web job.", + "schema": { + "$ref": "#/definitions/ContinuousWebJob" + } + }, + "404": { + "description": "Continuous web job does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Delete a continuous web job by its ID for an app, or a deployment slot.", + "description": "Description for Delete a continuous web job by its ID for an app, or a deployment slot.", + "operationId": "WebApps_DeleteContinuousWebJobSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "webJobName", + "in": "path", + "description": "Name of Web Job.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API deletes a deployment for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted continuous web job." + }, + "204": { + "description": "Continuous web job does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/continuouswebjobs/{webJobName}/start": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Start a continuous web job for an app, or a deployment slot.", + "description": "Description for Start a continuous web job for an app, or a deployment slot.", + "operationId": "WebApps_StartContinuousWebJobSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "webJobName", + "in": "path", + "description": "Name of Web Job.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API deletes a deployment for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Found continuous web job." + }, + "404": { + "description": "Continuous web job does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/continuouswebjobs/{webJobName}/stop": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Stop a continuous web job for an app, or a deployment slot.", + "description": "Description for Stop a continuous web job for an app, or a deployment slot.", + "operationId": "WebApps_StopContinuousWebJobSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "webJobName", + "in": "path", + "description": "Name of Web Job.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API deletes a deployment for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Found continuous web job." + }, + "404": { + "description": "Continuous web job does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/deployments": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "List deployments for an app, or a deployment slot.", + "description": "Description for List deployments for an app, or a deployment slot.", + "operationId": "WebApps_ListDeploymentsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API returns deployments for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DeploymentCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/deployments/{id}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get a deployment by its ID for an app, or a deployment slot.", + "description": "Description for Get a deployment by its ID for an app, or a deployment slot.", + "operationId": "WebApps_GetDeploymentSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "id", + "in": "path", + "description": "Deployment ID.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API gets a deployment for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Deployment" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Create a deployment for an app, or a deployment slot.", + "description": "Description for Create a deployment for an app, or a deployment slot.", + "operationId": "WebApps_CreateDeploymentSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "id", + "in": "path", + "description": "ID of an existing deployment.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API creates a deployment for the production slot.", + "required": true, + "type": "string" + }, + { + "name": "deployment", + "in": "body", + "description": "Deployment details.", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Deployment" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Delete a deployment by its ID for an app, or a deployment slot.", + "description": "Description for Delete a deployment by its ID for an app, or a deployment slot.", + "operationId": "WebApps_DeleteDeploymentSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "id", + "in": "path", + "description": "Deployment ID.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API deletes a deployment for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted deployment." + }, + "204": { + "description": "Deployment does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/deployments/{id}/log": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "List deployment log for specific deployment for an app, or a deployment slot.", + "description": "Description for List deployment log for specific deployment for an app, or a deployment slot.", + "operationId": "WebApps_ListDeploymentLogSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "id", + "in": "path", + "description": "The ID of a specific deployment. This is the value of the name property in the JSON response from \"GET /api/sites/{siteName}/deployments\".", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API returns deployments for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Deployment" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/discoverbackup": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Discovers an existing app backup that can be restored from a blob in Azure storage. Use this to get information about the databases stored in a backup.", + "description": "Description for Discovers an existing app backup that can be restored from a blob in Azure storage. Use this to get information about the databases stored in a backup.", + "operationId": "WebApps_DiscoverBackupSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "request", + "in": "body", + "description": "A RestoreRequest object that includes Azure storage URL and blog name for discovery of backup.", + "required": true, + "schema": { + "$ref": "#/definitions/RestoreRequest" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will perform discovery for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RestoreRequest" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/domainOwnershipIdentifiers": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Lists ownership identifiers for domain associated with web app.", + "description": "Description for Lists ownership identifiers for domain associated with web app.", + "operationId": "WebApps_ListDomainOwnershipIdentifiersSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will delete the binding for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/IdentifierCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/domainOwnershipIdentifiers/{domainOwnershipIdentifierName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get domain ownership identifier for web app.", + "description": "Description for Get domain ownership identifier for web app.", + "operationId": "WebApps_GetDomainOwnershipIdentifierSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "domainOwnershipIdentifierName", + "in": "path", + "description": "Name of domain ownership identifier.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will delete the binding for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Identifier" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Creates a domain ownership identifier for web app, or updates an existing ownership identifier.", + "description": "Description for Creates a domain ownership identifier for web app, or updates an existing ownership identifier.", + "operationId": "WebApps_CreateOrUpdateDomainOwnershipIdentifierSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "domainOwnershipIdentifierName", + "in": "path", + "description": "Name of domain ownership identifier.", + "required": true, + "type": "string" + }, + { + "name": "domainOwnershipIdentifier", + "in": "body", + "description": "A JSON representation of the domain ownership properties.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Identifier" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will delete the binding for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Identifier" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Deletes a domain ownership identifier for a web app.", + "description": "Description for Deletes a domain ownership identifier for a web app.", + "operationId": "WebApps_DeleteDomainOwnershipIdentifierSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "domainOwnershipIdentifierName", + "in": "path", + "description": "Name of domain ownership identifier.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will delete the binding for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted domain ownership identifier." + }, + "204": { + "description": "Domain ownership identifier does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "WebApps" + ], + "summary": "Creates a domain ownership identifier for web app, or updates an existing ownership identifier.", + "description": "Description for Creates a domain ownership identifier for web app, or updates an existing ownership identifier.", + "operationId": "WebApps_UpdateDomainOwnershipIdentifierSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "domainOwnershipIdentifierName", + "in": "path", + "description": "Name of domain ownership identifier.", + "required": true, + "type": "string" + }, + { + "name": "domainOwnershipIdentifier", + "in": "body", + "description": "A JSON representation of the domain ownership properties.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Identifier" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will delete the binding for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Identifier" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/extensions/MSDeploy": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get the status of the last MSDeploy operation.", + "description": "Description for Get the status of the last MSDeploy operation.", + "operationId": "WebApps_GetMSDeployStatusSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of web app slot. If not specified then will default to production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MSDeployStatus" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Invoke the MSDeploy web app extension.", + "description": "Description for Invoke the MSDeploy web app extension.", + "operationId": "WebApps_CreateMSDeployOperationSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of web app slot. If not specified then will default to production slot.", + "required": true, + "type": "string" + }, + { + "name": "MSDeploy", + "in": "body", + "description": "Details of MSDeploy operation", + "required": true, + "schema": { + "$ref": "#/definitions/MSDeploy" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Deployment is scheduled.", + "schema": { + "$ref": "#/definitions/MSDeployStatus" + } + }, + "409": { + "description": "Another deployment is in progress." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/extensions/MSDeploy/log": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get the MSDeploy Log for the last MSDeploy operation.", + "description": "Description for Get the MSDeploy Log for the last MSDeploy operation.", + "operationId": "WebApps_GetMSDeployLogSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of web app slot. If not specified then will default to production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "MSDeploy log returned.", + "schema": { + "$ref": "#/definitions/MSDeployLog" + } + }, + "404": { + "description": "MSDeploy log not found." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/functions": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "List the functions for a web site, or a deployment slot.", + "description": "Description for List the functions for a web site, or a deployment slot.", + "operationId": "WebApps_ListInstanceFunctionsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Function information returned.", + "schema": { + "$ref": "#/definitions/FunctionEnvelopeCollection" + } + }, + "404": { + "description": "Function with an ID of {functionName} is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/functions/admin/token": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Fetch a short lived token that can be exchanged for a master key.", + "description": "Description for Fetch a short lived token that can be exchanged for a master key.", + "operationId": "WebApps_GetFunctionsAdminTokenSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of web app slot. If not specified then will default to production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "string" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/functions/{functionName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get function information by its ID for web site, or a deployment slot.", + "description": "Description for Get function information by its ID for web site, or a deployment slot.", + "operationId": "WebApps_GetInstanceFunctionSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "functionName", + "in": "path", + "description": "Function name.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Function information returned.", + "schema": { + "$ref": "#/definitions/FunctionEnvelope" + } + }, + "404": { + "description": "Function with a name of {functionName} does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Create function for web site, or a deployment slot.", + "description": "Description for Create function for web site, or a deployment slot.", + "operationId": "WebApps_CreateInstanceFunctionSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "functionName", + "in": "path", + "description": "Function name.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot.", + "required": true, + "type": "string" + }, + { + "name": "function_envelope", + "in": "body", + "description": "Function details.", + "required": true, + "schema": { + "$ref": "#/definitions/FunctionEnvelope" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Function created.", + "schema": { + "$ref": "#/definitions/FunctionEnvelope" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Delete a function for web site, or a deployment slot.", + "description": "Description for Delete a function for web site, or a deployment slot.", + "operationId": "WebApps_DeleteInstanceFunctionSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "functionName", + "in": "path", + "description": "Function name.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "Function deleted." + }, + "404": { + "description": "Function does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/functions/{functionName}/keys/{keyName}": { + "put": { + "tags": [ + "WebApps" + ], + "summary": "Add or update a function secret.", + "description": "Description for Add or update a function secret.", + "operationId": "WebApps_CreateOrUpdateFunctionSecretSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "functionName", + "in": "path", + "description": "The name of the function.", + "required": true, + "type": "string" + }, + { + "name": "keyName", + "in": "path", + "description": "The name of the key.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot.", + "required": true, + "type": "string" + }, + { + "name": "key", + "in": "body", + "description": "The key to create or update", + "required": true, + "schema": { + "$ref": "#/definitions/KeyInfo" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Key was created.", + "schema": { + "$ref": "#/definitions/KeyInfo" + } + }, + "200": { + "description": "Key was updated.", + "schema": { + "$ref": "#/definitions/KeyInfo" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Delete a function secret.", + "description": "Description for Delete a function secret.", + "operationId": "WebApps_DeleteFunctionSecretSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "functionName", + "in": "path", + "description": "The name of the function.", + "required": true, + "type": "string" + }, + { + "name": "keyName", + "in": "path", + "description": "The name of the key.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "404": { + "description": "Key was not found." + }, + "204": { + "description": "Key was deleted." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/functions/{functionName}/listkeys": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Get function keys for a function in a web site, or a deployment slot.", + "description": "Description for Get function keys for a function in a web site, or a deployment slot.", + "operationId": "WebApps_ListFunctionKeysSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "functionName", + "in": "path", + "description": "Function name.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Function keys returned.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/functions/{functionName}/listsecrets": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Get function secrets for a function in a web site, or a deployment slot.", + "description": "Description for Get function secrets for a function in a web site, or a deployment slot.", + "operationId": "WebApps_ListFunctionSecretsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "functionName", + "in": "path", + "description": "Function name.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Function secrets returned.", + "schema": { + "$ref": "#/definitions/FunctionSecrets" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/host/default/listkeys": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Get host secrets for a function app.", + "description": "Description for Get host secrets for a function app.", + "operationId": "WebApps_ListHostKeysSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Host secrets returned.", + "schema": { + "$ref": "#/definitions/HostKeys" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/host/default/listsyncstatus": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "This is to allow calling via powershell and ARM template.", + "description": "Description for This is to allow calling via powershell and ARM template.", + "operationId": "WebApps_ListSyncStatusSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/host/default/sync": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Syncs function trigger metadata to the management database", + "description": "Description for Syncs function trigger metadata to the management database", + "operationId": "WebApps_SyncFunctionsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/host/default/{keyType}/{keyName}": { + "put": { + "tags": [ + "WebApps" + ], + "summary": "Add or update a host level secret.", + "description": "Description for Add or update a host level secret.", + "operationId": "WebApps_CreateOrUpdateHostSecretSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "keyType", + "in": "path", + "description": "The type of host key.", + "required": true, + "type": "string" + }, + { + "name": "keyName", + "in": "path", + "description": "The name of the key.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot.", + "required": true, + "type": "string" + }, + { + "name": "key", + "in": "body", + "description": "The key to create or update", + "required": true, + "schema": { + "$ref": "#/definitions/KeyInfo" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Key was created.", + "schema": { + "$ref": "#/definitions/KeyInfo" + } + }, + "200": { + "description": "Key was updated.", + "schema": { + "$ref": "#/definitions/KeyInfo" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Delete a host level secret.", + "description": "Description for Delete a host level secret.", + "operationId": "WebApps_DeleteHostSecretSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "keyType", + "in": "path", + "description": "The type of host key.", + "required": true, + "type": "string" + }, + { + "name": "keyName", + "in": "path", + "description": "The name of the key.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "404": { + "description": "Key was not found." + }, + "204": { + "description": "Key was deleted." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/hostNameBindings": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get hostname bindings for an app or a deployment slot.", + "description": "Description for Get hostname bindings for an app or a deployment slot.", + "operationId": "WebApps_ListHostNameBindingsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API gets hostname bindings for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/HostNameBindingCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/hostNameBindings/{hostName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get the named hostname binding for an app (or deployment slot, if specified).", + "description": "Description for Get the named hostname binding for an app (or deployment slot, if specified).", + "operationId": "WebApps_GetHostNameBindingSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API the named binding for the production slot.", + "required": true, + "type": "string" + }, + { + "name": "hostName", + "in": "path", + "description": "Hostname in the hostname binding.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/HostNameBinding" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Creates a hostname binding for an app.", + "description": "Description for Creates a hostname binding for an app.", + "operationId": "WebApps_CreateOrUpdateHostNameBindingSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "hostName", + "in": "path", + "description": "Hostname in the hostname binding.", + "required": true, + "type": "string" + }, + { + "name": "hostNameBinding", + "in": "body", + "description": "Binding details. This is the JSON representation of a HostNameBinding object.", + "required": true, + "schema": { + "$ref": "#/definitions/HostNameBinding" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will create a binding for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/HostNameBinding" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Deletes a hostname binding for an app.", + "description": "Description for Deletes a hostname binding for an app.", + "operationId": "WebApps_DeleteHostNameBindingSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will delete the binding for the production slot.", + "required": true, + "type": "string" + }, + { + "name": "hostName", + "in": "path", + "description": "Hostname in the hostname binding.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted hostname binding." + }, + "204": { + "description": "Hostname binding does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/hybridConnectionNamespaces/{namespaceName}/relays/{relayName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Retrieves a specific Service Bus Hybrid Connection used by this Web App.", + "description": "Description for Retrieves a specific Service Bus Hybrid Connection used by this Web App.", + "operationId": "WebApps_GetHybridConnectionSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "The name of the web app.", + "required": true, + "type": "string" + }, + { + "name": "namespaceName", + "in": "path", + "description": "The namespace for this hybrid connection.", + "required": true, + "type": "string" + }, + { + "name": "relayName", + "in": "path", + "description": "The relay name for this hybrid connection.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "The name of the slot for the web app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/HybridConnection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Creates a new Hybrid Connection using a Service Bus relay.", + "description": "Description for Creates a new Hybrid Connection using a Service Bus relay.", + "operationId": "WebApps_CreateOrUpdateHybridConnectionSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "The name of the web app.", + "required": true, + "type": "string" + }, + { + "name": "namespaceName", + "in": "path", + "description": "The namespace for this hybrid connection.", + "required": true, + "type": "string" + }, + { + "name": "relayName", + "in": "path", + "description": "The relay name for this hybrid connection.", + "required": true, + "type": "string" + }, + { + "name": "connectionEnvelope", + "in": "body", + "description": "The details of the hybrid connection.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/HybridConnection" + } + }, + { + "name": "slot", + "in": "path", + "description": "The name of the slot for the web app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/HybridConnection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Removes a Hybrid Connection from this site.", + "description": "Description for Removes a Hybrid Connection from this site.", + "operationId": "WebApps_DeleteHybridConnectionSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "The name of the web app.", + "required": true, + "type": "string" + }, + { + "name": "namespaceName", + "in": "path", + "description": "The namespace for this hybrid connection.", + "required": true, + "type": "string" + }, + { + "name": "relayName", + "in": "path", + "description": "The relay name for this hybrid connection.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "The name of the slot for the web app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted hybrid connection." + }, + "404": { + "description": "Hybrid connection does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "WebApps" + ], + "summary": "Creates a new Hybrid Connection using a Service Bus relay.", + "description": "Description for Creates a new Hybrid Connection using a Service Bus relay.", + "operationId": "WebApps_UpdateHybridConnectionSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "The name of the web app.", + "required": true, + "type": "string" + }, + { + "name": "namespaceName", + "in": "path", + "description": "The namespace for this hybrid connection.", + "required": true, + "type": "string" + }, + { + "name": "relayName", + "in": "path", + "description": "The relay name for this hybrid connection.", + "required": true, + "type": "string" + }, + { + "name": "connectionEnvelope", + "in": "body", + "description": "The details of the hybrid connection.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/HybridConnection" + } + }, + { + "name": "slot", + "in": "path", + "description": "The name of the slot for the web app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/HybridConnection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/hybridConnectionRelays": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Retrieves all Service Bus Hybrid Connections used by this Web App.", + "description": "Description for Retrieves all Service Bus Hybrid Connections used by this Web App.", + "operationId": "WebApps_ListHybridConnectionsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "The name of the web app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "The name of the slot for the web app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/HybridConnection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/hybridconnection": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets hybrid connections configured for an app (or deployment slot, if specified).", + "description": "Description for Gets hybrid connections configured for an app (or deployment slot, if specified).", + "operationId": "WebApps_ListRelayServiceConnectionsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get hybrid connections for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RelayServiceConnectionEntity" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/hybridconnection/{entityName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a hybrid connection configuration by its name.", + "description": "Description for Gets a hybrid connection configuration by its name.", + "operationId": "WebApps_GetRelayServiceConnectionSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "entityName", + "in": "path", + "description": "Name of the hybrid connection.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get a hybrid connection for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RelayServiceConnectionEntity" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Creates a new hybrid connection configuration (PUT), or updates an existing one (PATCH).", + "description": "Description for Creates a new hybrid connection configuration (PUT), or updates an existing one (PATCH).", + "operationId": "WebApps_CreateOrUpdateRelayServiceConnectionSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "entityName", + "in": "path", + "description": "Name of the hybrid connection configuration.", + "required": true, + "type": "string" + }, + { + "name": "connectionEnvelope", + "in": "body", + "description": "Details of the hybrid connection configuration.", + "required": true, + "schema": { + "$ref": "#/definitions/RelayServiceConnectionEntity" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will create or update a hybrid connection for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RelayServiceConnectionEntity" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Deletes a relay service connection by its name.", + "description": "Description for Deletes a relay service connection by its name.", + "operationId": "WebApps_DeleteRelayServiceConnectionSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "entityName", + "in": "path", + "description": "Name of the hybrid connection configuration.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will delete a hybrid connection for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted relay service connection." + }, + "404": { + "description": "Relay service connection does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "WebApps" + ], + "summary": "Creates a new hybrid connection configuration (PUT), or updates an existing one (PATCH).", + "description": "Description for Creates a new hybrid connection configuration (PUT), or updates an existing one (PATCH).", + "operationId": "WebApps_UpdateRelayServiceConnectionSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "entityName", + "in": "path", + "description": "Name of the hybrid connection configuration.", + "required": true, + "type": "string" + }, + { + "name": "connectionEnvelope", + "in": "body", + "description": "Details of the hybrid connection configuration.", + "required": true, + "schema": { + "$ref": "#/definitions/RelayServiceConnectionEntity" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will create or update a hybrid connection for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RelayServiceConnectionEntity" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/instances": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets all scale-out instances of an app.", + "description": "Description for Gets all scale-out instances of an app.", + "operationId": "WebApps_ListInstanceIdentifiersSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API gets the production slot instances.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/WebAppInstanceStatusCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/instances/{instanceId}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets all scale-out instances of an app.", + "description": "Description for Gets all scale-out instances of an app.", + "operationId": "WebApps_GetInstanceInfoSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API gets the production slot instances.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/WebSiteInstanceStatus" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get site instance info": { + "$ref": "./examples/GetSiteInstanceInfo.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/instances/{instanceId}/extensions/MSDeploy": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get the status of the last MSDeploy operation.", + "description": "Description for Get the status of the last MSDeploy operation.", + "operationId": "WebApps_GetInstanceMsDeployStatusSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of web app slot. If not specified then will default to production slot.", + "required": true, + "type": "string" + }, + { + "name": "instanceId", + "in": "path", + "description": "ID of web app instance.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MSDeployStatus" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Invoke the MSDeploy web app extension.", + "description": "Description for Invoke the MSDeploy web app extension.", + "operationId": "WebApps_CreateInstanceMSDeployOperationSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of web app slot. If not specified then will default to production slot.", + "required": true, + "type": "string" + }, + { + "name": "instanceId", + "in": "path", + "description": "ID of web app instance.", + "required": true, + "type": "string" + }, + { + "name": "MSDeploy", + "in": "body", + "description": "Details of MSDeploy operation", + "required": true, + "schema": { + "$ref": "#/definitions/MSDeploy" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Deployment is scheduled.", + "schema": { + "$ref": "#/definitions/MSDeployStatus" + } + }, + "409": { + "description": "Another deployment is in progress." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/instances/{instanceId}/extensions/MSDeploy/log": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get the MSDeploy Log for the last MSDeploy operation.", + "description": "Description for Get the MSDeploy Log for the last MSDeploy operation.", + "operationId": "WebApps_GetInstanceMSDeployLogSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of web app slot. If not specified then will default to production slot.", + "required": true, + "type": "string" + }, + { + "name": "instanceId", + "in": "path", + "description": "ID of web app instance.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "MSDeploy log returned.", + "schema": { + "$ref": "#/definitions/MSDeployLog" + } + }, + "404": { + "description": "MSDeploy log not found." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/instances/{instanceId}/processes": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get list of processes for a web site, or a deployment slot, or for a specific scaled-out instance in a web site.", + "description": "Description for Get list of processes for a web site, or a deployment slot, or for a specific scaled-out instance in a web site.", + "operationId": "WebApps_ListInstanceProcessesSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API returns deployments for the production slot.", + "required": true, + "type": "string" + }, + { + "name": "instanceId", + "in": "path", + "description": "ID of a specific scaled-out instance. This is the value of the name property in the JSON response from \"GET api/sites/{siteName}/instances\".", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Process terminated.", + "schema": { + "$ref": "#/definitions/ProcessInfoCollection" + } + }, + "404": { + "description": "Process with the specified ID is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/instances/{instanceId}/processes/{processId}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get process information by its ID for a specific scaled-out instance in a web site.", + "description": "Description for Get process information by its ID for a specific scaled-out instance in a web site.", + "operationId": "WebApps_GetInstanceProcessSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "processId", + "in": "path", + "description": "PID.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API returns deployments for the production slot.", + "required": true, + "type": "string" + }, + { + "name": "instanceId", + "in": "path", + "description": "ID of a specific scaled-out instance. This is the value of the name property in the JSON response from \"GET api/sites/{siteName}/instances\".", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Process information returned.", + "schema": { + "$ref": "#/definitions/ProcessInfo" + } + }, + "404": { + "description": "Process with the specified ID is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Terminate a process by its ID for a web site, or a deployment slot, or specific scaled-out instance in a web site.", + "description": "Description for Terminate a process by its ID for a web site, or a deployment slot, or specific scaled-out instance in a web site.", + "operationId": "WebApps_DeleteInstanceProcessSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "processId", + "in": "path", + "description": "PID.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API returns deployments for the production slot.", + "required": true, + "type": "string" + }, + { + "name": "instanceId", + "in": "path", + "description": "ID of a specific scaled-out instance. This is the value of the name property in the JSON response from \"GET api/sites/{siteName}/instances\".", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "Process terminated." + }, + "404": { + "description": "Process with the specified ID is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/instances/{instanceId}/processes/{processId}/dump": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get a memory dump of a process by its ID for a specific scaled-out instance in a web site.", + "description": "Description for Get a memory dump of a process by its ID for a specific scaled-out instance in a web site.", + "operationId": "WebApps_GetInstanceProcessDumpSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "processId", + "in": "path", + "description": "PID.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API returns deployments for the production slot.", + "required": true, + "type": "string" + }, + { + "name": "instanceId", + "in": "path", + "description": "ID of a specific scaled-out instance. This is the value of the name property in the JSON response from \"GET api/sites/{siteName}/instances\".", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "file" + } + }, + "404": { + "description": "Process with the specified ID is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/instances/{instanceId}/processes/{processId}/modules": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "List module information for a process by its ID for a specific scaled-out instance in a web site.", + "description": "Description for List module information for a process by its ID for a specific scaled-out instance in a web site.", + "operationId": "WebApps_ListInstanceProcessModulesSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "processId", + "in": "path", + "description": "PID.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API returns deployments for the production slot.", + "required": true, + "type": "string" + }, + { + "name": "instanceId", + "in": "path", + "description": "ID of a specific scaled-out instance. This is the value of the name property in the JSON response from \"GET api/sites/{siteName}/instances\".", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Module information returned.", + "schema": { + "$ref": "#/definitions/ProcessModuleInfoCollection" + } + }, + "404": { + "description": "Process with the specified ID is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/instances/{instanceId}/processes/{processId}/modules/{baseAddress}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get process information by its ID for a specific scaled-out instance in a web site.", + "description": "Description for Get process information by its ID for a specific scaled-out instance in a web site.", + "operationId": "WebApps_GetInstanceProcessModuleSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "processId", + "in": "path", + "description": "PID.", + "required": true, + "type": "string" + }, + { + "name": "baseAddress", + "in": "path", + "description": "Module base address.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API returns deployments for the production slot.", + "required": true, + "type": "string" + }, + { + "name": "instanceId", + "in": "path", + "description": "ID of a specific scaled-out instance. This is the value of the name property in the JSON response from \"GET api/sites/{siteName}/instances\".", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Module information returned.", + "schema": { + "$ref": "#/definitions/ProcessModuleInfo" + } + }, + "404": { + "description": "Process with the specified ID is not running, or a module with the specified baseAddress was not found." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/instances/{instanceId}/processes/{processId}/threads": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "List the threads in a process by its ID for a specific scaled-out instance in a web site.", + "description": "Description for List the threads in a process by its ID for a specific scaled-out instance in a web site.", + "operationId": "WebApps_ListInstanceProcessThreadsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "processId", + "in": "path", + "description": "PID.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API returns deployments for the production slot.", + "required": true, + "type": "string" + }, + { + "name": "instanceId", + "in": "path", + "description": "ID of a specific scaled-out instance. This is the value of the name property in the JSON response from \"GET api/sites/{siteName}/instances\".", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Thread information returned.", + "schema": { + "$ref": "#/definitions/ProcessThreadInfoCollection" + } + }, + "404": { + "description": "Process with the specified ID is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/iscloneable": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Shows whether an app can be cloned to another resource group or subscription.", + "description": "Description for Shows whether an app can be cloned to another resource group or subscription.", + "operationId": "WebApps_IsCloneableSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. By default, this API returns information on the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/SiteCloneability" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/listbackups": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Gets existing backups of an app.", + "description": "Description for Gets existing backups of an app.", + "operationId": "WebApps_ListSiteBackupsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get backups of the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupItemCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List backups": { + "$ref": "./examples/ListSlotBackups.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/listsyncfunctiontriggerstatus": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "This is to allow calling via powershell and ARM template.", + "description": "Description for This is to allow calling via powershell and ARM template.", + "operationId": "WebApps_ListSyncFunctionTriggersSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/FunctionSecrets" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/migratemysql/status": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Returns the status of MySql in app migration, if one is active, and whether or not MySql in app is enabled", + "description": "Description for Returns the status of MySql in app migration, if one is active, and whether or not MySql in app is enabled", + "operationId": "WebApps_GetMigrateMySqlStatusSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MigrateMySqlStatus" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/networkConfig/virtualNetwork": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a Swift Virtual Network connection.", + "description": "Description for Gets a Swift Virtual Network connection.", + "operationId": "WebApps_GetSwiftVirtualNetworkConnectionSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get a gateway for the production slot's Virtual Network.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/SwiftVirtualNetwork" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Deletes a Swift Virtual Network connection from an app (or deployment slot).", + "description": "Description for Deletes a Swift Virtual Network connection from an app (or deployment slot).", + "operationId": "WebApps_DeleteSwiftVirtualNetworkSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will delete the connection for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted virtual network." + }, + "404": { + "description": "Virtual network does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/networkFeatures/{view}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets all network features used by the app (or deployment slot, if specified).", + "description": "Description for Gets all network features used by the app (or deployment slot, if specified).", + "operationId": "WebApps_ListNetworkFeaturesSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "view", + "in": "path", + "description": "The type of view. Only \"summary\" is supported at this time.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get network features for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/NetworkFeatures" + } + }, + "404": { + "description": "The requested view does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/networkTrace/operationresults/{operationId}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a named operation for a network trace capturing (or deployment slot, if specified).", + "description": "Description for Gets a named operation for a network trace capturing (or deployment slot, if specified).", + "operationId": "WebApps_GetNetworkTraceOperationSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "operationId", + "in": "path", + "description": "GUID of the operation.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get an operation for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } + } + }, + "202": { + "description": "Operation is in progress.", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get the current status of a network trace operation for a site": { + "$ref": "./examples/GetWebSiteNetworkTraceOperation.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/networkTrace/start": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Start capturing network packets for the site (To be deprecated).", + "description": "Description for Start capturing network packets for the site (To be deprecated).", + "operationId": "WebApps_StartWebSiteNetworkTraceSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "The name of the web app.", + "required": true, + "type": "string" + }, + { + "name": "durationInSeconds", + "in": "query", + "description": "The duration to keep capturing in seconds.", + "type": "integer", + "format": "int32" + }, + { + "name": "slot", + "in": "path", + "description": "The name of the slot for this web app.", + "required": true, + "type": "string" + }, + { + "name": "maxFrameLength", + "in": "query", + "description": "The maximum frame length in bytes (Optional).", + "type": "integer", + "format": "int32" + }, + { + "name": "sasUrl", + "in": "query", + "description": "The Blob URL to store capture file.", + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "string" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/networkTrace/startOperation": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Start capturing network packets for the site.", + "description": "Description for Start capturing network packets for the site.", + "operationId": "WebApps_StartWebSiteNetworkTraceOperationSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "The name of the web app.", + "required": true, + "type": "string" + }, + { + "name": "durationInSeconds", + "in": "query", + "description": "The duration to keep capturing in seconds.", + "type": "integer", + "format": "int32" + }, + { + "name": "slot", + "in": "path", + "description": "The name of the slot for this web app.", + "required": true, + "type": "string" + }, + { + "name": "maxFrameLength", + "in": "query", + "description": "The maximum frame length in bytes (Optional).", + "type": "integer", + "format": "int32" + }, + { + "name": "sasUrl", + "in": "query", + "description": "The Blob URL to store capture file.", + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } + } + }, + "202": { + "description": "Operation is in progress.", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Start a new network trace operation for a site": { + "$ref": "./examples/StartWebSiteNetworkTraceOperation.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/networkTrace/stop": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Stop ongoing capturing network packets for the site.", + "description": "Description for Stop ongoing capturing network packets for the site.", + "operationId": "WebApps_StopWebSiteNetworkTraceSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "The name of the web app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "The name of the slot for this web app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Stopped." + }, + "204": { + "description": "Stopped." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Stop a currently running network trace operation for a site": { + "$ref": "./examples/StopWebSiteNetworkTrace.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/networkTrace/{operationId}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a named operation for a network trace capturing (or deployment slot, if specified).", + "description": "Description for Gets a named operation for a network trace capturing (or deployment slot, if specified).", + "operationId": "WebApps_GetNetworkTracesSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "operationId", + "in": "path", + "description": "GUID of the operation.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get an operation for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get NetworkTraces for a site": { + "$ref": "./examples/GetWebSiteNetworkTraces.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/networkTraces/current/operationresults/{operationId}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a named operation for a network trace capturing (or deployment slot, if specified).", + "description": "Description for Gets a named operation for a network trace capturing (or deployment slot, if specified).", + "operationId": "WebApps_GetNetworkTraceOperationSlotV2", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "operationId", + "in": "path", + "description": "GUID of the operation.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get an operation for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } + } + }, + "202": { + "description": "Operation is in progress.", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get the current status of a network trace operation for a site": { + "$ref": "./examples/GetWebSiteNetworkTraceOperation.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/networkTraces/{operationId}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a named operation for a network trace capturing (or deployment slot, if specified).", + "description": "Description for Gets a named operation for a network trace capturing (or deployment slot, if specified).", + "operationId": "WebApps_GetNetworkTracesSlotV2", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "operationId", + "in": "path", + "description": "GUID of the operation.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get an operation for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get NetworkTraces for a site": { + "$ref": "./examples/GetWebSiteNetworkTraces.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/newpassword": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Generates a new publishing password for an app (or deployment slot, if specified).", + "description": "Description for Generates a new publishing password for an app (or deployment slot, if specified).", + "operationId": "WebApps_GenerateNewSitePublishingPasswordSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API generate a new publishing password for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully generate new password." + }, + "204": { + "description": "Successfully generate new password." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/perfcounters": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets perfmon counters for web app.", + "description": "Description for Gets perfmon counters for web app.", + "operationId": "WebApps_ListPerfMonCountersSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of web app slot. If not specified then will default to production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$filter", + "in": "query", + "description": "Return only usages/metrics specified in the filter. Filter conforms to odata syntax. Example: $filter=(startTime eq 2014-01-01T00:00:00Z and endTime eq 2014-12-31T23:59:59Z and timeGrain eq duration'[Hour|Minute|Day]'.", + "type": "string", + "x-ms-skip-url-encoding": true + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PerfMonCounterCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/phplogging": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets web app's event logs.", + "description": "Description for Gets web app's event logs.", + "operationId": "WebApps_GetSitePhpErrorLogFlagSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of web app slot. If not specified then will default to production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SitePhpErrorLogFlag" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/premieraddons": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the premier add-ons of an app.", + "description": "Description for Gets the premier add-ons of an app.", + "operationId": "WebApps_ListPremierAddOnsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get the premier add-ons for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PremierAddOn" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/premieraddons/{premierAddOnName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a named add-on of an app.", + "description": "Description for Gets a named add-on of an app.", + "operationId": "WebApps_GetPremierAddOnSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "premierAddOnName", + "in": "path", + "description": "Add-on name.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get the named add-on for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PremierAddOn" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Updates a named add-on of an app.", + "description": "Description for Updates a named add-on of an app.", + "operationId": "WebApps_AddPremierAddOnSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "premierAddOnName", + "in": "path", + "description": "Add-on name.", + "required": true, + "type": "string" + }, + { + "name": "premierAddOn", + "in": "body", + "description": "A JSON representation of the edited premier add-on.", + "required": true, + "schema": { + "$ref": "#/definitions/PremierAddOn" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will update the named add-on for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PremierAddOn" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Delete a premier add-on from an app.", + "description": "Description for Delete a premier add-on from an app.", + "operationId": "WebApps_DeletePremierAddOnSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "premierAddOnName", + "in": "path", + "description": "Add-on name.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will delete the named add-on for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted premier add-on." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "WebApps" + ], + "summary": "Updates a named add-on of an app.", + "description": "Description for Updates a named add-on of an app.", + "operationId": "WebApps_UpdatePremierAddOnSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "premierAddOnName", + "in": "path", + "description": "Add-on name.", + "required": true, + "type": "string" + }, + { + "name": "premierAddOn", + "in": "body", + "description": "A JSON representation of the edited premier add-on.", + "required": true, + "schema": { + "$ref": "#/definitions/PremierAddOnPatchResource" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will update the named add-on for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PremierAddOn" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/privateAccess/virtualNetworks": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets data around private site access enablement and authorized Virtual Networks that can access the site.", + "description": "Description for Gets data around private site access enablement and authorized Virtual Networks that can access the site.", + "operationId": "WebApps_GetPrivateAccessSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "The name of the web app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "The name of the slot for the web app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateAccess" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Sets data around private site access enablement and authorized Virtual Networks that can access the site.", + "description": "Description for Sets data around private site access enablement and authorized Virtual Networks that can access the site.", + "operationId": "WebApps_PutPrivateAccessVnetSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "The name of the web app.", + "required": true, + "type": "string" + }, + { + "name": "access", + "in": "body", + "description": "The information for the private access", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateAccess" + } + }, + { + "name": "slot", + "in": "path", + "description": "The name of the slot for the web app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateAccess" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/privateEndpointConnections": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the list of private endpoint connections associated with a site", + "description": "Description for Gets the list of private endpoint connections associated with a site", + "operationId": "WebApps_GetPrivateEndpointConnectionListSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the site.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the site deployment slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/PrivateEndpointConnectionCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a private endpoint connection", + "description": "Description for Gets a private endpoint connection", + "operationId": "WebApps_GetPrivateEndpointConnectionSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the site.", + "required": true, + "type": "string" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "Name of the private endpoint connection.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the site deployment slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/RemotePrivateEndpointConnectionARMResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get a private endpoint connection for a site.": { + "$ref": "./examples/GetSitePrivateEndpointConnectionSlot.json" + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Approves or rejects a private endpoint connection", + "description": "Description for Approves or rejects a private endpoint connection", + "operationId": "WebApps_ApproveOrRejectPrivateEndpointConnectionSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the site.", + "required": true, + "type": "string" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "privateEndpointWrapper", + "in": "body", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/PrivateLinkConnectionApprovalRequestResource" + } + }, + { + "name": "slot", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/RemotePrivateEndpointConnectionARMResource" + } + }, + "202": { + "description": "Asynchronous operation in progress.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/RemotePrivateEndpointConnectionARMResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Approves or rejects a private endpoint connection for a site.": { + "$ref": "./examples/ApproveRejectSitePrivateEndpointConnectionSlot.json" + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Deletes a private endpoint connection", + "description": "Description for Deletes a private endpoint connection", + "operationId": "WebApps_DeletePrivateEndpointConnectionSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the site.", + "required": true, + "type": "string" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "type": "object" + } + }, + "202": { + "description": "Asynchronous operation in progress.", + "schema": { + "type": "object" + } + }, + "204": { + "description": "No content.", + "schema": { + "type": "object" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete a private endpoint connection for a site.": { + "$ref": "./examples/DeleteSitePrivateEndpointConnectionSlot.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/privateLinkResources": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the private link resources", + "description": "Description for Gets the private link resources", + "operationId": "WebApps_GetPrivateLinkResourcesSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the site.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/PrivateLinkResourcesWrapper" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get private link resources of a site": { + "$ref": "./examples/GetSitePrivateLinkResourcesSlot.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/processes": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get list of processes for a web site, or a deployment slot, or for a specific scaled-out instance in a web site.", + "description": "Description for Get list of processes for a web site, or a deployment slot, or for a specific scaled-out instance in a web site.", + "operationId": "WebApps_ListProcessesSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API returns deployments for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Process terminated.", + "schema": { + "$ref": "#/definitions/ProcessInfoCollection" + } + }, + "404": { + "description": "Process with the specified ID is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/processes/{processId}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get process information by its ID for a specific scaled-out instance in a web site.", + "description": "Description for Get process information by its ID for a specific scaled-out instance in a web site.", + "operationId": "WebApps_GetProcessSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "processId", + "in": "path", + "description": "PID.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API returns deployments for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Process information returned.", + "schema": { + "$ref": "#/definitions/ProcessInfo" + } + }, + "404": { + "description": "Process with the specified ID is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Terminate a process by its ID for a web site, or a deployment slot, or specific scaled-out instance in a web site.", + "description": "Description for Terminate a process by its ID for a web site, or a deployment slot, or specific scaled-out instance in a web site.", + "operationId": "WebApps_DeleteProcessSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "processId", + "in": "path", + "description": "PID.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API returns deployments for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "Process terminated." + }, + "404": { + "description": "Process with the specified ID is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/processes/{processId}/dump": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get a memory dump of a process by its ID for a specific scaled-out instance in a web site.", + "description": "Description for Get a memory dump of a process by its ID for a specific scaled-out instance in a web site.", + "operationId": "WebApps_GetProcessDumpSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "processId", + "in": "path", + "description": "PID.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API returns deployments for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "file" + } + }, + "404": { + "description": "Process with the specified ID is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/processes/{processId}/modules": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "List module information for a process by its ID for a specific scaled-out instance in a web site.", + "description": "Description for List module information for a process by its ID for a specific scaled-out instance in a web site.", + "operationId": "WebApps_ListProcessModulesSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "processId", + "in": "path", + "description": "PID.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API returns deployments for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Module information returned.", + "schema": { + "$ref": "#/definitions/ProcessModuleInfoCollection" + } + }, + "404": { + "description": "Process with the specified ID is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/processes/{processId}/modules/{baseAddress}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get process information by its ID for a specific scaled-out instance in a web site.", + "description": "Description for Get process information by its ID for a specific scaled-out instance in a web site.", + "operationId": "WebApps_GetProcessModuleSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "processId", + "in": "path", + "description": "PID.", + "required": true, + "type": "string" + }, + { + "name": "baseAddress", + "in": "path", + "description": "Module base address.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API returns deployments for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Module information returned.", + "schema": { + "$ref": "#/definitions/ProcessModuleInfo" + } + }, + "404": { + "description": "Process with the specified ID is not running, or a module with the specified baseAddress was not found." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/processes/{processId}/threads": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "List the threads in a process by its ID for a specific scaled-out instance in a web site.", + "description": "Description for List the threads in a process by its ID for a specific scaled-out instance in a web site.", + "operationId": "WebApps_ListProcessThreadsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "processId", + "in": "path", + "description": "PID.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API returns deployments for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Thread information returned.", + "schema": { + "$ref": "#/definitions/ProcessThreadInfoCollection" + } + }, + "404": { + "description": "Process with the specified ID is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/publicCertificates": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get public certificates for an app or a deployment slot.", + "description": "Description for Get public certificates for an app or a deployment slot.", + "operationId": "WebApps_ListPublicCertificatesSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API gets hostname bindings for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PublicCertificateCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/publicCertificates/{publicCertificateName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get the named public certificate for an app (or deployment slot, if specified).", + "description": "Description for Get the named public certificate for an app (or deployment slot, if specified).", + "operationId": "WebApps_GetPublicCertificateSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API the named binding for the production slot.", + "required": true, + "type": "string" + }, + { + "name": "publicCertificateName", + "in": "path", + "description": "Public certificate name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PublicCertificate" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Creates a hostname binding for an app.", + "description": "Description for Creates a hostname binding for an app.", + "operationId": "WebApps_CreateOrUpdatePublicCertificateSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "publicCertificateName", + "in": "path", + "description": "Public certificate name.", + "required": true, + "type": "string" + }, + { + "name": "publicCertificate", + "in": "body", + "description": "Public certificate details. This is the JSON representation of a PublicCertificate object.", + "required": true, + "schema": { + "$ref": "#/definitions/PublicCertificate" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will create a binding for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PublicCertificate" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Deletes a hostname binding for an app.", + "description": "Description for Deletes a hostname binding for an app.", + "operationId": "WebApps_DeletePublicCertificateSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will delete the binding for the production slot.", + "required": true, + "type": "string" + }, + { + "name": "publicCertificateName", + "in": "path", + "description": "Public certificate name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted hostname binding." + }, + "204": { + "description": "Hostname binding does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/publishxml": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Gets the publishing profile for an app (or deployment slot, if specified).", + "description": "Description for Gets the publishing profile for an app (or deployment slot, if specified).", + "operationId": "WebApps_ListPublishingProfileXmlWithSecretsSlot", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "publishingProfileOptions", + "in": "body", + "description": "Specifies publishingProfileOptions for publishing profile. For example, use {\"format\": \"FileZilla3\"} to get a FileZilla publishing profile.", + "required": true, + "schema": { + "$ref": "#/definitions/CsmPublishingProfileOptions" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get the publishing profile for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "file" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/resetSlotConfig": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Resets the configuration settings of the current slot if they were previously modified by calling the API with POST.", + "description": "Description for Resets the configuration settings of the current slot if they were previously modified by calling the API with POST.", + "operationId": "WebApps_ResetSlotConfigurationSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API resets configuration settings for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/restart": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Restarts an app (or deployment slot, if specified).", + "description": "Description for Restarts an app (or deployment slot, if specified).", + "operationId": "WebApps_RestartSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will restart the production slot.", + "required": true, + "type": "string" + }, + { + "name": "softRestart", + "in": "query", + "description": "Specify true to apply the configuration settings and restarts the app only if necessary. By default, the API always restarts and reprovisions the app.", + "type": "boolean" + }, + { + "name": "synchronous", + "in": "query", + "description": "Specify true to block until the app is restarted. By default, it is set to false, and the API responds immediately (asynchronous).", + "type": "boolean" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully restarted app." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/restoreFromBackupBlob": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Restores an app from a backup blob in Azure Storage.", + "description": "Description for Restores an app from a backup blob in Azure Storage.", + "operationId": "WebApps_RestoreFromBackupBlobSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "request", + "in": "body", + "description": "Information on restore request .", + "required": true, + "schema": { + "$ref": "#/definitions/RestoreRequest" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will restore a backup of the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Restore operation started." + }, + "200": { + "description": "Restore operation started." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/restoreFromDeletedApp": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Restores a deleted web app to this web app.", + "description": "Description for Restores a deleted web app to this web app.", + "operationId": "WebApps_RestoreFromDeletedAppSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "restoreRequest", + "in": "body", + "description": "Deleted web app restore information.", + "required": true, + "schema": { + "$ref": "#/definitions/DeletedAppRestoreRequest" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of web app slot. If not specified then will default to production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Restore operation started." + }, + "200": { + "description": "Restore operation started." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/restoreSnapshot": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Restores a web app from a snapshot.", + "description": "Description for Restores a web app from a snapshot.", + "operationId": "WebApps_RestoreSnapshotSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "restoreRequest", + "in": "body", + "description": "Snapshot restore settings. Snapshot information can be obtained by calling GetDeletedSites or GetSiteSnapshots API.", + "required": true, + "schema": { + "$ref": "#/definitions/SnapshotRestoreRequest" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of web app slot. If not specified then will default to production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Restore operation started." + }, + "200": { + "description": "Restore operation started." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/siteextensions": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get list of siteextensions for a web site, or a deployment slot.", + "description": "Description for Get list of siteextensions for a web site, or a deployment slot.", + "operationId": "WebApps_ListSiteExtensionsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API uses the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "SiteExtension information returned.", + "schema": { + "$ref": "#/definitions/SiteExtensionInfoCollection" + } + }, + "404": { + "description": "SiteExtension not found." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/siteextensions/{siteExtensionId}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get site extension information by its ID for a web site, or a deployment slot.", + "description": "Description for Get site extension information by its ID for a web site, or a deployment slot.", + "operationId": "WebApps_GetSiteExtensionSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "siteExtensionId", + "in": "path", + "description": "Site extension name.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API uses the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "SiteExtension information returned.", + "schema": { + "$ref": "#/definitions/SiteExtensionInfo" + } + }, + "404": { + "description": "SiteExtension with an ID of {siteExtensionId} is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Install site extension on a web site, or a deployment slot.", + "description": "Description for Install site extension on a web site, or a deployment slot.", + "operationId": "WebApps_InstallSiteExtensionSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "siteExtensionId", + "in": "path", + "description": "Site extension name.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API uses the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Site Extension created.", + "schema": { + "$ref": "#/definitions/SiteExtensionInfo" + } + }, + "200": { + "description": "Site Extension created.", + "schema": { + "$ref": "#/definitions/SiteExtensionInfo" + } + }, + "429": { + "description": "Site Extension is being installed on another request: Rejecting current request." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Remove a site extension from a web site, or a deployment slot.", + "description": "Description for Remove a site extension from a web site, or a deployment slot.", + "operationId": "WebApps_DeleteSiteExtensionSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "siteExtensionId", + "in": "path", + "description": "Site extension name.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API deletes a deployment for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "SiteExtension terminated." + }, + "404": { + "description": "SiteExtension with an ID of {siteExtensionId} is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/slotsdiffs": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Get the difference in configuration settings between two web app slots.", + "description": "Description for Get the difference in configuration settings between two web app slots.", + "operationId": "WebApps_ListSlotDifferencesSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slotSwapEntity", + "in": "body", + "description": "JSON object that contains the target slot name. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/CsmSlotEntity" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the source slot. If a slot is not specified, the production slot is used as the source slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SlotDifferenceCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/slotsswap": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Swaps two deployment slots of an app.", + "description": "Description for Swaps two deployment slots of an app.", + "operationId": "WebApps_SwapSlotSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slotSwapEntity", + "in": "body", + "description": "JSON object that contains the target slot name. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/CsmSlotEntity" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the source slot. If a slot is not specified, the production slot is used as the source slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "202": { + "description": "Operation is in progress." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/snapshots": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Returns all Snapshots to the user.", + "description": "Description for Returns all Snapshots to the user.", + "operationId": "WebApps_ListSnapshotsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Website Name.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Website Slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SnapshotCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/snapshotsdr": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Returns all Snapshots to the user from DRSecondary endpoint.", + "description": "Description for Returns all Snapshots to the user from DRSecondary endpoint.", + "operationId": "WebApps_ListSnapshotsFromDRSecondarySlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Website Name.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Website Slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SnapshotCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/sourcecontrols/web": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the source control configuration of an app.", + "description": "Description for Gets the source control configuration of an app.", + "operationId": "WebApps_GetSourceControlSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get the source control configuration for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved source control for web app.", + "schema": { + "$ref": "#/definitions/SiteSourceControl" + } + }, + "201": { + "description": "Create or update source control for web app still in progress.", + "schema": { + "$ref": "#/definitions/SiteSourceControl" + } + }, + "202": { + "description": "Create or update source control for web app still in progress.", + "schema": { + "$ref": "#/definitions/SiteSourceControl" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Updates the source control configuration of an app.", + "description": "Description for Updates the source control configuration of an app.", + "operationId": "WebApps_CreateOrUpdateSourceControlSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "siteSourceControl", + "in": "body", + "description": "JSON representation of a SiteSourceControl object. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/SiteSourceControl" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will update the source control configuration for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully created or updated source control for web app.", + "schema": { + "$ref": "#/definitions/SiteSourceControl" + } + }, + "201": { + "description": "Create or update source control for web app in progress.", + "schema": { + "$ref": "#/definitions/SiteSourceControl" + } + }, + "202": { + "description": "Create or update source control for web app in progress.", + "schema": { + "$ref": "#/definitions/SiteSourceControl" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Deletes the source control configuration of an app.", + "description": "Description for Deletes the source control configuration of an app.", + "operationId": "WebApps_DeleteSourceControlSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will delete the source control configuration for the production slot.", + "required": true, + "type": "string" + }, + { + "name": "additionalFlags", + "in": "query", + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted source control for web app." + }, + "202": { + "description": "Source control delete operation in progress." + }, + "404": { + "description": "Source control does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "WebApps" + ], + "summary": "Updates the source control configuration of an app.", + "description": "Description for Updates the source control configuration of an app.", + "operationId": "WebApps_UpdateSourceControlSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "siteSourceControl", + "in": "body", + "description": "JSON representation of a SiteSourceControl object. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/SiteSourceControl" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will update the source control configuration for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully created or updated source control for web app.", + "schema": { + "$ref": "#/definitions/SiteSourceControl" + } + }, + "201": { + "description": "Create or update source control for web app in progress.", + "schema": { + "$ref": "#/definitions/SiteSourceControl" + } + }, + "202": { + "description": "Create or update source control for web app in progress.", + "schema": { + "$ref": "#/definitions/SiteSourceControl" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/start": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Starts an app (or deployment slot, if specified).", + "description": "Description for Starts an app (or deployment slot, if specified).", + "operationId": "WebApps_StartSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will start the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully started app." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/startNetworkTrace": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Start capturing network packets for the site.", + "description": "Description for Start capturing network packets for the site.", + "operationId": "WebApps_StartNetworkTraceSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "The name of the web app.", + "required": true, + "type": "string" + }, + { + "name": "durationInSeconds", + "in": "query", + "description": "The duration to keep capturing in seconds.", + "type": "integer", + "format": "int32" + }, + { + "name": "slot", + "in": "path", + "description": "The name of the slot for this web app.", + "required": true, + "type": "string" + }, + { + "name": "maxFrameLength", + "in": "query", + "description": "The maximum frame length in bytes (Optional).", + "type": "integer", + "format": "int32" + }, + { + "name": "sasUrl", + "in": "query", + "description": "The Blob URL to store capture file.", + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } + } + }, + "202": { + "description": "Operation is in progress.", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Start a new network trace operation for a site": { + "$ref": "./examples/StartWebSiteNetworkTraceOperation.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/stop": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Stops an app (or deployment slot, if specified).", + "description": "Description for Stops an app (or deployment slot, if specified).", + "operationId": "WebApps_StopSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will stop the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully stopped app." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/stopNetworkTrace": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Stop ongoing capturing network packets for the site.", + "description": "Description for Stop ongoing capturing network packets for the site.", + "operationId": "WebApps_StopNetworkTraceSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "The name of the web app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "The name of the slot for this web app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Stopped." + }, + "204": { + "description": "Stopped." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Stop a currently running network trace operation for a site": { + "$ref": "./examples/StopWebSiteNetworkTrace.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/sync": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Sync web app repository.", + "description": "Description for Sync web app repository.", + "operationId": "WebApps_SyncRepositorySlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of web app slot. If not specified then will default to production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully sync source control." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/syncfunctiontriggers": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Syncs function trigger metadata to the management database", + "description": "Description for Syncs function trigger metadata to the management database", + "operationId": "WebApps_SyncFunctionTriggersSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/triggeredwebjobs": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "List triggered web jobs for an app, or a deployment slot.", + "description": "Description for List triggered web jobs for an app, or a deployment slot.", + "operationId": "WebApps_ListTriggeredWebJobsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API deletes a deployment for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TriggeredWebJobCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/triggeredwebjobs/{webJobName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a triggered web job by its ID for an app, or a deployment slot.", + "description": "Description for Gets a triggered web job by its ID for an app, or a deployment slot.", + "operationId": "WebApps_GetTriggeredWebJobSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "webJobName", + "in": "path", + "description": "Name of Web Job.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API uses the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Found continuous web job.", + "schema": { + "$ref": "#/definitions/TriggeredWebJob" + } + }, + "404": { + "description": "Triggered web job does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Delete a triggered web job by its ID for an app, or a deployment slot.", + "description": "Description for Delete a triggered web job by its ID for an app, or a deployment slot.", + "operationId": "WebApps_DeleteTriggeredWebJobSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "webJobName", + "in": "path", + "description": "Name of Web Job.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API deletes web job for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted continuous web job." + }, + "204": { + "description": "Triggered web job does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/triggeredwebjobs/{webJobName}/history": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "List a triggered web job's history for an app, or a deployment slot.", + "description": "Description for List a triggered web job's history for an app, or a deployment slot.", + "operationId": "WebApps_ListTriggeredWebJobHistorySlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "webJobName", + "in": "path", + "description": "Name of Web Job.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API uses the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Found continuous web job.", + "schema": { + "$ref": "#/definitions/TriggeredJobHistoryCollection" + } + }, + "404": { + "description": "Triggered web job does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/triggeredwebjobs/{webJobName}/history/{id}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a triggered web job's history by its ID for an app, , or a deployment slot.", + "description": "Description for Gets a triggered web job's history by its ID for an app, , or a deployment slot.", + "operationId": "WebApps_GetTriggeredWebJobHistorySlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "webJobName", + "in": "path", + "description": "Name of Web Job.", + "required": true, + "type": "string" + }, + { + "name": "id", + "in": "path", + "description": "History ID.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API uses the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Found continuous web job.", + "schema": { + "$ref": "#/definitions/TriggeredJobHistory" + } + }, + "404": { + "description": "Triggered web job does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/triggeredwebjobs/{webJobName}/run": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Run a triggered web job for an app, or a deployment slot.", + "description": "Description for Run a triggered web job for an app, or a deployment slot.", + "operationId": "WebApps_RunTriggeredWebJobSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "webJobName", + "in": "path", + "description": "Name of Web Job.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API uses the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Run a triggered web job." + }, + "404": { + "description": "Triggered web job does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/usages": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the quota usage information of an app (or deployment slot, if specified).", + "description": "Description for Gets the quota usage information of an app (or deployment slot, if specified).", + "operationId": "WebApps_ListUsagesSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get quota information of the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$filter", + "in": "query", + "description": "Return only information specified in the filter (using OData syntax). For example: $filter=(name.value eq 'Metric1' or name.value eq 'Metric2') and startTime eq 2014-01-01T00:00:00Z and endTime eq 2014-12-31T23:59:59Z and timeGrain eq duration'[Hour|Minute|Day]'.", + "type": "string", + "x-ms-skip-url-encoding": true + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/CsmUsageQuotaCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/virtualNetworkConnections": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the virtual networks the app (or deployment slot) is connected to.", + "description": "Description for Gets the virtual networks the app (or deployment slot) is connected to.", + "operationId": "WebApps_ListVnetConnectionsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get virtual network connections for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "./CommonDefinitions.json#/definitions/VnetInfo" + } + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/virtualNetworkConnections/{vnetName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a virtual network the app (or deployment slot) is connected to by name.", + "description": "Description for Gets a virtual network the app (or deployment slot) is connected to by name.", + "operationId": "WebApps_GetVnetConnectionSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "vnetName", + "in": "path", + "description": "Name of the virtual network.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get the named virtual network for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetInfo" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Adds a Virtual Network connection to an app or slot (PUT) or updates the connection properties (PATCH).", + "description": "Description for Adds a Virtual Network connection to an app or slot (PUT) or updates the connection properties (PATCH).", + "operationId": "WebApps_CreateOrUpdateVnetConnectionSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "vnetName", + "in": "path", + "description": "Name of an existing Virtual Network.", + "required": true, + "type": "string" + }, + { + "name": "connectionEnvelope", + "in": "body", + "description": "Properties of the Virtual Network connection. See example.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetInfo" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will add or update connections for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetInfo" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Deletes a connection from an app (or deployment slot to a named virtual network.", + "description": "Description for Deletes a connection from an app (or deployment slot to a named virtual network.", + "operationId": "WebApps_DeleteVnetConnectionSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "vnetName", + "in": "path", + "description": "Name of the virtual network.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will delete the connection for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted virtual network." + }, + "404": { + "description": "Virtual network does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "WebApps" + ], + "summary": "Adds a Virtual Network connection to an app or slot (PUT) or updates the connection properties (PATCH).", + "description": "Description for Adds a Virtual Network connection to an app or slot (PUT) or updates the connection properties (PATCH).", + "operationId": "WebApps_UpdateVnetConnectionSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "vnetName", + "in": "path", + "description": "Name of an existing Virtual Network.", + "required": true, + "type": "string" + }, + { + "name": "connectionEnvelope", + "in": "body", + "description": "Properties of the Virtual Network connection. See example.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetInfo" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will add or update connections for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetInfo" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/virtualNetworkConnections/{vnetName}/gateways/{gatewayName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets an app's Virtual Network gateway.", + "description": "Description for Gets an app's Virtual Network gateway.", + "operationId": "WebApps_GetVnetConnectionGatewaySlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "vnetName", + "in": "path", + "description": "Name of the Virtual Network.", + "required": true, + "type": "string" + }, + { + "name": "gatewayName", + "in": "path", + "description": "Name of the gateway. Currently, the only supported string is \"primary\".", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get a gateway for the production slot's Virtual Network.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetGateway" + } + }, + "404": { + "description": "Named gateway does not exist. Only the \"primary\" gateway is supported currently." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Adds a gateway to a connected Virtual Network (PUT) or updates it (PATCH).", + "description": "Description for Adds a gateway to a connected Virtual Network (PUT) or updates it (PATCH).", + "operationId": "WebApps_CreateOrUpdateVnetConnectionGatewaySlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "vnetName", + "in": "path", + "description": "Name of the Virtual Network.", + "required": true, + "type": "string" + }, + { + "name": "gatewayName", + "in": "path", + "description": "Name of the gateway. Currently, the only supported string is \"primary\".", + "required": true, + "type": "string" + }, + { + "name": "connectionEnvelope", + "in": "body", + "description": "The properties to update this gateway with.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetGateway" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will add or update a gateway for the production slot's Virtual Network.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetGateway" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "WebApps" + ], + "summary": "Adds a gateway to a connected Virtual Network (PUT) or updates it (PATCH).", + "description": "Description for Adds a gateway to a connected Virtual Network (PUT) or updates it (PATCH).", + "operationId": "WebApps_UpdateVnetConnectionGatewaySlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "vnetName", + "in": "path", + "description": "Name of the Virtual Network.", + "required": true, + "type": "string" + }, + { + "name": "gatewayName", + "in": "path", + "description": "Name of the gateway. Currently, the only supported string is \"primary\".", + "required": true, + "type": "string" + }, + { + "name": "connectionEnvelope", + "in": "body", + "description": "The properties to update this gateway with.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetGateway" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will add or update a gateway for the production slot's Virtual Network.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetGateway" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/webjobs": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "List webjobs for an app, or a deployment slot.", + "description": "Description for List webjobs for an app, or a deployment slot.", + "operationId": "WebApps_ListWebJobsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API returns deployments for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/WebJobCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/webjobs/{webJobName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get webjob information for an app, or a deployment slot.", + "description": "Description for Get webjob information for an app, or a deployment slot.", + "operationId": "WebApps_GetWebJobSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "webJobName", + "in": "path", + "description": "Name of the web job.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API returns deployments for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/WebJob" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slotsdiffs": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Get the difference in configuration settings between two web app slots.", + "description": "Description for Get the difference in configuration settings between two web app slots.", + "operationId": "WebApps_ListSlotDifferencesFromProduction", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slotSwapEntity", + "in": "body", + "description": "JSON object that contains the target slot name. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/CsmSlotEntity" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SlotDifferenceCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slotsswap": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Swaps two deployment slots of an app.", + "description": "Description for Swaps two deployment slots of an app.", + "operationId": "WebApps_SwapSlotWithProduction", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slotSwapEntity", + "in": "body", + "description": "JSON object that contains the target slot name. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/CsmSlotEntity" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "202": { + "description": "Operation is in progress." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/snapshots": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Returns all Snapshots to the user.", + "description": "Description for Returns all Snapshots to the user.", + "operationId": "WebApps_ListSnapshots", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Website Name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SnapshotCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/snapshotsdr": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Returns all Snapshots to the user from DRSecondary endpoint.", + "description": "Description for Returns all Snapshots to the user from DRSecondary endpoint.", + "operationId": "WebApps_ListSnapshotsFromDRSecondary", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Website Name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SnapshotCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/sourcecontrols/web": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the source control configuration of an app.", + "description": "Description for Gets the source control configuration of an app.", + "operationId": "WebApps_GetSourceControl", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved source control for web app.", + "schema": { + "$ref": "#/definitions/SiteSourceControl" + } + }, + "201": { + "description": "Create or update source control for web app still in progress.", + "schema": { + "$ref": "#/definitions/SiteSourceControl" + } + }, + "202": { + "description": "Create or update source control for web app still in progress.", + "schema": { + "$ref": "#/definitions/SiteSourceControl" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Updates the source control configuration of an app.", + "description": "Description for Updates the source control configuration of an app.", + "operationId": "WebApps_CreateOrUpdateSourceControl", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "siteSourceControl", + "in": "body", + "description": "JSON representation of a SiteSourceControl object. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/SiteSourceControl" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully created or updated source control for web app.", + "schema": { + "$ref": "#/definitions/SiteSourceControl" + } + }, + "201": { + "description": "Create or update source control for web app in progress.", + "schema": { + "$ref": "#/definitions/SiteSourceControl" + } + }, + "202": { + "description": "Create or update source control for web app in progress.", + "schema": { + "$ref": "#/definitions/SiteSourceControl" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Deletes the source control configuration of an app.", + "description": "Description for Deletes the source control configuration of an app.", + "operationId": "WebApps_DeleteSourceControl", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "additionalFlags", + "in": "query", + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted source control for web app." + }, + "202": { + "description": "Source control delete operation in progress." + }, + "404": { + "description": "Source control does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "WebApps" + ], + "summary": "Updates the source control configuration of an app.", + "description": "Description for Updates the source control configuration of an app.", + "operationId": "WebApps_UpdateSourceControl", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "siteSourceControl", + "in": "body", + "description": "JSON representation of a SiteSourceControl object. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/SiteSourceControl" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully created or updated source control for web app.", + "schema": { + "$ref": "#/definitions/SiteSourceControl" + } + }, + "201": { + "description": "Create or update source control for web app in progress.", + "schema": { + "$ref": "#/definitions/SiteSourceControl" + } + }, + "202": { + "description": "Create or update source control for web app in progress.", + "schema": { + "$ref": "#/definitions/SiteSourceControl" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/start": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Starts an app (or deployment slot, if specified).", + "description": "Description for Starts an app (or deployment slot, if specified).", + "operationId": "WebApps_Start", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully started app." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/startNetworkTrace": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Start capturing network packets for the site.", + "description": "Description for Start capturing network packets for the site.", + "operationId": "WebApps_StartNetworkTrace", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "The name of the web app.", + "required": true, + "type": "string" + }, + { + "name": "durationInSeconds", + "in": "query", + "description": "The duration to keep capturing in seconds.", + "type": "integer", + "format": "int32" + }, + { + "name": "maxFrameLength", + "in": "query", + "description": "The maximum frame length in bytes (Optional).", + "type": "integer", + "format": "int32" + }, + { + "name": "sasUrl", + "in": "query", + "description": "The Blob URL to store capture file.", + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } + } + }, + "202": { + "description": "Operation is in progress.", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Start a new network trace operation for a site": { + "$ref": "./examples/StartWebSiteNetworkTraceOperation.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/stop": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Stops an app (or deployment slot, if specified).", + "description": "Description for Stops an app (or deployment slot, if specified).", + "operationId": "WebApps_Stop", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully stopped app." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/stopNetworkTrace": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Stop ongoing capturing network packets for the site.", + "description": "Description for Stop ongoing capturing network packets for the site.", + "operationId": "WebApps_StopNetworkTrace", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "The name of the web app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Stopped." + }, + "204": { + "description": "Stopped." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Stop a currently running network trace operation for a site": { + "$ref": "./examples/StopWebSiteNetworkTrace.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/sync": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Sync web app repository.", + "description": "Description for Sync web app repository.", + "operationId": "WebApps_SyncRepository", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully sync source control." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/syncfunctiontriggers": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Syncs function trigger metadata to the management database", + "description": "Description for Syncs function trigger metadata to the management database", + "operationId": "WebApps_SyncFunctionTriggers", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/triggeredwebjobs": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "List triggered web jobs for an app, or a deployment slot.", + "description": "Description for List triggered web jobs for an app, or a deployment slot.", + "operationId": "WebApps_ListTriggeredWebJobs", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TriggeredWebJobCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/triggeredwebjobs/{webJobName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a triggered web job by its ID for an app, or a deployment slot.", + "description": "Description for Gets a triggered web job by its ID for an app, or a deployment slot.", + "operationId": "WebApps_GetTriggeredWebJob", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "webJobName", + "in": "path", + "description": "Name of Web Job.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Found continuous web job.", + "schema": { + "$ref": "#/definitions/TriggeredWebJob" + } + }, + "404": { + "description": "Triggered web job does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Delete a triggered web job by its ID for an app, or a deployment slot.", + "description": "Description for Delete a triggered web job by its ID for an app, or a deployment slot.", + "operationId": "WebApps_DeleteTriggeredWebJob", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "webJobName", + "in": "path", + "description": "Name of Web Job.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted continuous web job." + }, + "204": { + "description": "Triggered web job does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/triggeredwebjobs/{webJobName}/history": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "List a triggered web job's history for an app, or a deployment slot.", + "description": "Description for List a triggered web job's history for an app, or a deployment slot.", + "operationId": "WebApps_ListTriggeredWebJobHistory", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "webJobName", + "in": "path", + "description": "Name of Web Job.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Found continuous web job.", + "schema": { + "$ref": "#/definitions/TriggeredJobHistoryCollection" + } + }, + "404": { + "description": "Triggered web job does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/triggeredwebjobs/{webJobName}/history/{id}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a triggered web job's history by its ID for an app, , or a deployment slot.", + "description": "Description for Gets a triggered web job's history by its ID for an app, , or a deployment slot.", + "operationId": "WebApps_GetTriggeredWebJobHistory", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "webJobName", + "in": "path", + "description": "Name of Web Job.", + "required": true, + "type": "string" + }, + { + "name": "id", + "in": "path", + "description": "History ID.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Found continuous web job.", + "schema": { + "$ref": "#/definitions/TriggeredJobHistory" + } + }, + "404": { + "description": "Triggered web job does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/triggeredwebjobs/{webJobName}/run": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Run a triggered web job for an app, or a deployment slot.", + "description": "Description for Run a triggered web job for an app, or a deployment slot.", + "operationId": "WebApps_RunTriggeredWebJob", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "webJobName", + "in": "path", + "description": "Name of Web Job.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Run a triggered web job." + }, + "404": { + "description": "Triggered web job does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/usages": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the quota usage information of an app (or deployment slot, if specified).", + "description": "Description for Gets the quota usage information of an app (or deployment slot, if specified).", + "operationId": "WebApps_ListUsages", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$filter", + "in": "query", + "description": "Return only information specified in the filter (using OData syntax). For example: $filter=(name.value eq 'Metric1' or name.value eq 'Metric2') and startTime eq 2014-01-01T00:00:00Z and endTime eq 2014-12-31T23:59:59Z and timeGrain eq duration'[Hour|Minute|Day]'.", + "type": "string", + "x-ms-skip-url-encoding": true + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/CsmUsageQuotaCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/virtualNetworkConnections": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the virtual networks the app (or deployment slot) is connected to.", + "description": "Description for Gets the virtual networks the app (or deployment slot) is connected to.", + "operationId": "WebApps_ListVnetConnections", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "./CommonDefinitions.json#/definitions/VnetInfo" + } + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/virtualNetworkConnections/{vnetName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a virtual network the app (or deployment slot) is connected to by name.", + "description": "Description for Gets a virtual network the app (or deployment slot) is connected to by name.", + "operationId": "WebApps_GetVnetConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "vnetName", + "in": "path", + "description": "Name of the virtual network.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetInfo" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Adds a Virtual Network connection to an app or slot (PUT) or updates the connection properties (PATCH).", + "description": "Description for Adds a Virtual Network connection to an app or slot (PUT) or updates the connection properties (PATCH).", + "operationId": "WebApps_CreateOrUpdateVnetConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "vnetName", + "in": "path", + "description": "Name of an existing Virtual Network.", + "required": true, + "type": "string" + }, + { + "name": "connectionEnvelope", + "in": "body", + "description": "Properties of the Virtual Network connection. See example.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetInfo" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetInfo" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Deletes a connection from an app (or deployment slot to a named virtual network.", + "description": "Description for Deletes a connection from an app (or deployment slot to a named virtual network.", + "operationId": "WebApps_DeleteVnetConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "vnetName", + "in": "path", + "description": "Name of the virtual network.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted virtual network." + }, + "404": { + "description": "Virtual network does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "WebApps" + ], + "summary": "Adds a Virtual Network connection to an app or slot (PUT) or updates the connection properties (PATCH).", + "description": "Description for Adds a Virtual Network connection to an app or slot (PUT) or updates the connection properties (PATCH).", + "operationId": "WebApps_UpdateVnetConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "vnetName", + "in": "path", + "description": "Name of an existing Virtual Network.", + "required": true, + "type": "string" + }, + { + "name": "connectionEnvelope", + "in": "body", + "description": "Properties of the Virtual Network connection. See example.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetInfo" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetInfo" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/virtualNetworkConnections/{vnetName}/gateways/{gatewayName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets an app's Virtual Network gateway.", + "description": "Description for Gets an app's Virtual Network gateway.", + "operationId": "WebApps_GetVnetConnectionGateway", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "vnetName", + "in": "path", + "description": "Name of the Virtual Network.", + "required": true, + "type": "string" + }, + { + "name": "gatewayName", + "in": "path", + "description": "Name of the gateway. Currently, the only supported string is \"primary\".", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetGateway" + } + }, + "404": { + "description": "Named gateway does not exist. Only the \"primary\" gateway is supported currently." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Adds a gateway to a connected Virtual Network (PUT) or updates it (PATCH).", + "description": "Description for Adds a gateway to a connected Virtual Network (PUT) or updates it (PATCH).", + "operationId": "WebApps_CreateOrUpdateVnetConnectionGateway", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "vnetName", + "in": "path", + "description": "Name of the Virtual Network.", + "required": true, + "type": "string" + }, + { + "name": "gatewayName", + "in": "path", + "description": "Name of the gateway. Currently, the only supported string is \"primary\".", + "required": true, + "type": "string" + }, + { + "name": "connectionEnvelope", + "in": "body", + "description": "The properties to update this gateway with.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetGateway" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetGateway" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "WebApps" + ], + "summary": "Adds a gateway to a connected Virtual Network (PUT) or updates it (PATCH).", + "description": "Description for Adds a gateway to a connected Virtual Network (PUT) or updates it (PATCH).", + "operationId": "WebApps_UpdateVnetConnectionGateway", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "vnetName", + "in": "path", + "description": "Name of the Virtual Network.", + "required": true, + "type": "string" + }, + { + "name": "gatewayName", + "in": "path", + "description": "Name of the gateway. Currently, the only supported string is \"primary\".", + "required": true, + "type": "string" + }, + { + "name": "connectionEnvelope", + "in": "body", + "description": "The properties to update this gateway with.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetGateway" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetGateway" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/webjobs": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "List webjobs for an app, or a deployment slot.", + "description": "Description for List webjobs for an app, or a deployment slot.", + "operationId": "WebApps_ListWebJobs", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/WebJobCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/webjobs/{webJobName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get webjob information for an app, or a deployment slot.", + "description": "Description for Get webjob information for an app, or a deployment slot.", + "operationId": "WebApps_GetWebJob", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "webJobName", + "in": "path", + "description": "Name of the web job.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/WebJob" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + } + }, + "definitions": { + "AllowedAudiencesValidation": { + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "AllowedAudiencesValidation resource specific properties", + "properties": { + "allowedAudiences": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "ApiKVReference": { + "description": "Description of site key vault references.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "ApiKVReference resource specific properties", + "properties": { + "reference": { + "type": "string" + }, + "status": { + "enum": [ + "Initialized", + "Resolved", + "InvalidSyntax", + "MSINotEnabled", + "VaultNotFound", + "SecretNotFound", + "SecretVersionNotFound", + "AccessToKeyVaultDenied", + "OtherReasons", + "FetchTimedOut", + "UnauthorizedClient" + ], + "type": "string", + "x-ms-enum": { + "name": "ResolveStatus", + "modelAsString": false + } + }, + "vaultName": { + "type": "string" + }, + "secretName": { + "type": "string" + }, + "secretVersion": { + "type": "string" + }, + "identityType": { + "$ref": "./CommonDefinitions.json#/definitions/ManagedServiceIdentity" + }, + "details": { + "type": "string" + }, + "source": { + "enum": [ + "KeyVault" + ], + "type": "string", + "x-ms-enum": { + "name": "ConfigReferenceSource", + "modelAsString": false + } + }, + "activeVersion": { + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "ApiKVReferenceCollection": { + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/ApiKVReference" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "AppRegistration": { + "description": "The configuration settings of the app registration for providers that have app ids and app secrets", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "AppRegistration resource specific properties", + "properties": { + "appId": { + "description": "The App ID of the app used for login.", + "type": "string" + }, + "appSecretSettingName": { + "description": "The app setting name that contains the app secret.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "Apple": { + "description": "The configuration settings of the Apple provider.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "Apple resource specific properties", + "properties": { + "enabled": { + "description": "false if the Apple provider should not be enabled despite the set registration; otherwise, true.", + "type": "boolean" + }, + "registration": { + "$ref": "#/definitions/AppleRegistration", + "description": "The configuration settings of the Apple registration." + }, + "login": { + "$ref": "#/definitions/LoginScopes", + "description": "The configuration settings of the login flow." + } + }, + "x-ms-client-flatten": true + } + } + }, + "AppleRegistration": { + "description": "The configuration settings of the registration for the Apple provider", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "AppleRegistration resource specific properties", + "properties": { + "clientId": { + "description": "The Client ID of the app used for login.", + "type": "string" + }, + "clientSecretSettingName": { + "description": "The app setting name that contains the client secret.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "ApplicationLogsConfig": { + "description": "Application logs configuration.", + "type": "object", + "properties": { + "fileSystem": { + "$ref": "#/definitions/FileSystemApplicationLogsConfig", + "description": "Application logs to file system configuration." + }, + "azureTableStorage": { + "$ref": "#/definitions/AzureTableStorageApplicationLogsConfig", + "description": "Application logs to azure table storage configuration." + }, + "azureBlobStorage": { + "$ref": "#/definitions/AzureBlobStorageApplicationLogsConfig", + "description": "Application logs to blob storage configuration." + } + } + }, + "AuthPlatform": { + "description": "The configuration settings of the platform of App Service Authentication/Authorization.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "AuthPlatform resource specific properties", + "properties": { + "enabled": { + "description": "true if the Authentication / Authorization feature is enabled for the current app; otherwise, false.", + "type": "boolean" + }, + "runtimeVersion": { + "description": "The RuntimeVersion of the Authentication / Authorization feature in use for the current app.\nThe setting in this value can control the behavior of certain features in the Authentication / Authorization module.", + "type": "string" + }, + "configFilePath": { + "description": "The path of the config file containing auth settings if they come from a file.\nIf the path is relative, base will the site's root directory.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "AzureActiveDirectory": { + "description": "The configuration settings of the Azure Active directory provider.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "AzureActiveDirectory resource specific properties", + "properties": { + "enabled": { + "description": "false if the Azure Active Directory provider should not be enabled despite the set registration; otherwise, true.", + "type": "boolean" + }, + "registration": { + "$ref": "#/definitions/AzureActiveDirectoryRegistration", + "description": "The configuration settings of the Azure Active Directory app registration." + }, + "login": { + "$ref": "#/definitions/AzureActiveDirectoryLogin", + "description": "The configuration settings of the Azure Active Directory login flow." + }, + "validation": { + "$ref": "#/definitions/AzureActiveDirectoryValidation", + "description": "The configuration settings of the Azure Active Directory token validation flow." + }, + "isAutoProvisioned": { + "description": "Gets a value indicating whether the Azure AD configuration was auto-provisioned using 1st party tooling.\nThis is an internal flag primarily intended to support the Azure Management Portal. Users should not\nread or write to this property.", + "type": "boolean" + } + }, + "x-ms-client-flatten": true + } + } + }, + "AzureActiveDirectoryLogin": { + "description": "The configuration settings of the Azure Active Directory login flow.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "AzureActiveDirectoryLogin resource specific properties", + "properties": { + "disableWWWAuthenticate": { + "type": "boolean" + }, + "loginParameters": { + "description": "Login parameters to send to the OpenID Connect authorization endpoint when\na user logs in. Each parameter must be in the form \"key=value\".", + "type": "array", + "items": { + "type": "string" + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "AzureActiveDirectoryRegistration": { + "description": "The configuration settings of the Azure Active Directory app registration.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "AzureActiveDirectoryRegistration resource specific properties", + "properties": { + "openIdIssuer": { + "description": "The OpenID Connect Issuer URI that represents the entity which issues access tokens for this application.\nWhen using Azure Active Directory, this value is the URI of the directory tenant, e.g. https://login.microsoftonline.com/v2.0/{tenant-guid}/.\nThis URI is a case-sensitive identifier for the token issuer.\nMore information on OpenID Connect Discovery: http://openid.net/specs/openid-connect-discovery-1_0.html", + "type": "string" + }, + "clientId": { + "description": "The Client ID of this relying party application, known as the client_id.\nThis setting is required for enabling OpenID Connection authentication with Azure Active Directory or \nother 3rd party OpenID Connect providers.\nMore information on OpenID Connect: http://openid.net/specs/openid-connect-core-1_0.html", + "type": "string" + }, + "clientSecretSettingName": { + "description": "The app setting name that contains the client secret of the relying party application.", + "type": "string" + }, + "clientSecretCertificateThumbprint": { + "description": "An alternative to the client secret, that is the thumbprint of a certificate used for signing purposes. This property acts as\na replacement for the Client Secret. It is also optional.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "AzureActiveDirectoryValidation": { + "description": "The configuration settings of the Azure Active Directory token validation flow.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "AzureActiveDirectoryValidation resource specific properties", + "properties": { + "jwtClaimChecks": { + "$ref": "#/definitions/JwtClaimChecks", + "description": "The configuration settings of the checks that should be made while validating the JWT Claims." + }, + "allowedAudiences": { + "description": "The list of audiences that can make successful authentication/authorization requests.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "AzureBlobStorageApplicationLogsConfig": { + "description": "Application logs azure blob storage configuration.", + "type": "object", + "properties": { + "level": { + "description": "Log level.", + "enum": [ + "Off", + "Verbose", + "Information", + "Warning", + "Error" + ], + "type": "string", + "x-ms-enum": { + "name": "LogLevel", + "modelAsString": false + } + }, + "sasUrl": { + "description": "SAS url to a azure blob container with read/write/list/delete permissions.", + "type": "string" + }, + "retentionInDays": { + "format": "int32", + "description": "Retention in days.\nRemove blobs older than X days.\n0 or lower means no retention.", + "type": "integer" + } + } + }, + "AzureBlobStorageHttpLogsConfig": { + "description": "Http logs to azure blob storage configuration.", + "type": "object", + "properties": { + "sasUrl": { + "description": "SAS url to a azure blob container with read/write/list/delete permissions.", + "type": "string" + }, + "retentionInDays": { + "format": "int32", + "description": "Retention in days.\nRemove blobs older than X days.\n0 or lower means no retention.", + "type": "integer" + }, + "enabled": { + "description": "True if configuration is enabled, false if it is disabled and null if configuration is not set.", + "type": "boolean" + } + } + }, + "AzureStaticWebApps": { + "description": "The configuration settings of the Azure Static Web Apps provider.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "AzureStaticWebApps resource specific properties", + "properties": { + "enabled": { + "description": "false if the Azure Static Web Apps provider should not be enabled despite the set registration; otherwise, true.", + "type": "boolean" + }, + "registration": { + "$ref": "#/definitions/AzureStaticWebAppsRegistration", + "description": "The configuration settings of the Azure Static Web Apps registration." + } + }, + "x-ms-client-flatten": true + } + } + }, + "AzureStaticWebAppsRegistration": { + "description": "The configuration settings of the registration for the Azure Static Web Apps provider", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "AzureStaticWebAppsRegistration resource specific properties", + "properties": { + "clientId": { + "description": "The Client ID of the app used for login.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "AzureStoragePropertyDictionaryResource": { + "description": "AzureStorageInfo dictionary resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "Azure storage accounts.", + "type": "object", + "additionalProperties": { + "$ref": "./CommonDefinitions.json#/definitions/AzureStorageInfoValue" + }, + "x-ms-client-flatten": true + } + } + }, + "AzureTableStorageApplicationLogsConfig": { + "description": "Application logs to Azure table storage configuration.", + "required": [ + "sasUrl" + ], + "type": "object", + "properties": { + "level": { + "description": "Log level.", + "enum": [ + "Off", + "Verbose", + "Information", + "Warning", + "Error" + ], + "type": "string", + "x-ms-enum": { + "name": "LogLevel", + "modelAsString": false + } + }, + "sasUrl": { + "description": "SAS URL to an Azure table with add/query/delete permissions.", + "type": "string" + } + } + }, + "BackupItem": { + "description": "Backup description.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "BackupItem resource specific properties", + "properties": { + "id": { + "format": "int32", + "description": "Id of the backup.", + "type": "integer", + "readOnly": true, + "x-ms-client-name": "BackupId" + }, + "storageAccountUrl": { + "description": "SAS URL for the storage account container which contains this backup.", + "type": "string", + "readOnly": true + }, + "blobName": { + "description": "Name of the blob which contains data for this backup.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name of this backup.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "Backup status.", + "enum": [ + "InProgress", + "Failed", + "Succeeded", + "TimedOut", + "Created", + "Skipped", + "PartiallySucceeded", + "DeleteInProgress", + "DeleteFailed", + "Deleted" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "BackupItemStatus", + "modelAsString": false + } + }, + "sizeInBytes": { + "format": "int64", + "description": "Size of the backup in bytes.", + "type": "integer", + "readOnly": true + }, + "created": { + "format": "date-time", + "description": "Timestamp of the backup creation.", + "type": "string", + "readOnly": true + }, + "log": { + "description": "Details regarding this backup. Might contain an error message.", + "type": "string", + "readOnly": true + }, + "databases": { + "description": "List of databases included in the backup.", + "type": "array", + "items": { + "$ref": "#/definitions/DatabaseBackupSetting" + }, + "readOnly": true + }, + "scheduled": { + "description": "True if this backup has been created due to a schedule being triggered.", + "type": "boolean", + "readOnly": true + }, + "lastRestoreTimeStamp": { + "format": "date-time", + "description": "Timestamp of a last restore operation which used this backup.", + "type": "string", + "readOnly": true + }, + "finishedTimeStamp": { + "format": "date-time", + "description": "Timestamp when this backup finished.", + "type": "string", + "readOnly": true + }, + "correlationId": { + "description": "Unique correlation identifier. Please use this along with the timestamp while communicating with Azure support.", + "type": "string", + "readOnly": true + }, + "websiteSizeInBytes": { + "format": "int64", + "description": "Size of the original web app which has been backed up.", + "type": "integer", + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "BackupItemCollection": { + "description": "Collection of backup items.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/BackupItem" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "BackupRequest": { + "description": "Description of a backup which will be performed.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "BackupRequest resource specific properties", + "required": [ + "storageAccountUrl" + ], + "properties": { + "backupName": { + "description": "Name of the backup.", + "type": "string" + }, + "enabled": { + "description": "True if the backup schedule is enabled (must be included in that case), false if the backup schedule should be disabled.", + "type": "boolean" + }, + "storageAccountUrl": { + "description": "SAS URL to the container.", + "type": "string" + }, + "backupSchedule": { + "$ref": "#/definitions/BackupSchedule", + "description": "Schedule for the backup if it is executed periodically." + }, + "databases": { + "description": "Databases included in the backup.", + "type": "array", + "items": { + "$ref": "#/definitions/DatabaseBackupSetting" + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "BackupSchedule": { + "description": "Description of a backup schedule. Describes how often should be the backup performed and what should be the retention policy.", + "required": [ + "frequencyInterval", + "frequencyUnit", + "keepAtLeastOneBackup", + "retentionPeriodInDays" + ], + "type": "object", + "properties": { + "frequencyInterval": { + "format": "int32", + "description": "How often the backup should be executed (e.g. for weekly backup, this should be set to 7 and FrequencyUnit should be set to Day)", + "default": 7, + "type": "integer" + }, + "frequencyUnit": { + "description": "The unit of time for how often the backup should be executed (e.g. for weekly backup, this should be set to Day and FrequencyInterval should be set to 7)", + "default": "Day", + "enum": [ + "Day", + "Hour" + ], + "type": "string", + "x-ms-enum": { + "name": "FrequencyUnit", + "modelAsString": false + } + }, + "keepAtLeastOneBackup": { + "description": "True if the retention policy should always keep at least one backup in the storage account, regardless how old it is; false otherwise.", + "default": true, + "type": "boolean" + }, + "retentionPeriodInDays": { + "format": "int32", + "description": "After how many days backups should be deleted.", + "default": 30, + "type": "integer" + }, + "startTime": { + "format": "date-time", + "description": "When the schedule should start working.", + "type": "string" + }, + "lastExecutionTime": { + "format": "date-time", + "description": "Last time when this schedule was triggered.", + "type": "string", + "readOnly": true + } + } + }, + "BlobStorageTokenStore": { + "description": "The configuration settings of the storage of the tokens if blob storage is used.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "BlobStorageTokenStore resource specific properties", + "properties": { + "sasUrlSettingName": { + "description": "The name of the app setting containing the SAS URL of the blob storage containing the tokens.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "ClientRegistration": { + "description": "The configuration settings of the app registration for providers that have client ids and client secrets", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "ClientRegistration resource specific properties", + "properties": { + "clientId": { + "description": "The Client ID of the app used for login.", + "type": "string" + }, + "clientSecretSettingName": { + "description": "The app setting name that contains the client secret.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "ConnStringValueTypePair": { + "description": "Database connection string value to type pair.", + "required": [ + "value", + "type" + ], + "type": "object", + "properties": { + "value": { + "description": "Value of pair.", + "type": "string" + }, + "type": { + "description": "Type of database.", + "enum": [ + "MySql", + "SQLServer", + "SQLAzure", + "Custom", + "NotificationHub", + "ServiceBus", + "EventHub", + "ApiHub", + "DocDb", + "RedisCache", + "PostgreSQL" + ], + "type": "string", + "x-ms-enum": { + "name": "ConnectionStringType", + "modelAsString": false + } + } + } + }, + "ConnectionStringDictionary": { + "description": "String dictionary resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "Connection strings.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/ConnStringValueTypePair" + }, + "x-ms-client-flatten": true + } + } + }, + "ContainerCpuStatistics": { + "type": "object", + "properties": { + "cpuUsage": { + "$ref": "#/definitions/ContainerCpuUsage" + }, + "systemCpuUsage": { + "format": "int64", + "type": "integer" + }, + "onlineCpuCount": { + "format": "int32", + "type": "integer" + }, + "throttlingData": { + "$ref": "#/definitions/ContainerThrottlingData" + } + } + }, + "ContainerCpuUsage": { + "type": "object", + "properties": { + "totalUsage": { + "format": "int64", + "type": "integer" + }, + "perCpuUsage": { + "type": "array", + "items": { + "format": "int64", + "type": "integer" + } + }, + "kernelModeUsage": { + "format": "int64", + "type": "integer" + }, + "userModeUsage": { + "format": "int64", + "type": "integer" + } + } + }, + "ContainerInfo": { + "type": "object", + "properties": { + "currentTimeStamp": { + "format": "date-time", + "type": "string" + }, + "previousTimeStamp": { + "format": "date-time", + "type": "string" + }, + "currentCpuStats": { + "$ref": "#/definitions/ContainerCpuStatistics" + }, + "previousCpuStats": { + "$ref": "#/definitions/ContainerCpuStatistics" + }, + "memoryStats": { + "$ref": "#/definitions/ContainerMemoryStatistics" + }, + "name": { + "type": "string" + }, + "id": { + "type": "string" + }, + "eth0": { + "$ref": "#/definitions/ContainerNetworkInterfaceStatistics" + } + } + }, + "ContainerMemoryStatistics": { + "type": "object", + "properties": { + "usage": { + "format": "int64", + "type": "integer" + }, + "maxUsage": { + "format": "int64", + "type": "integer" + }, + "limit": { + "format": "int64", + "type": "integer" + } + } + }, + "ContainerNetworkInterfaceStatistics": { + "type": "object", + "properties": { + "rxBytes": { + "format": "int64", + "type": "integer" + }, + "rxPackets": { + "format": "int64", + "type": "integer" + }, + "rxErrors": { + "format": "int64", + "type": "integer" + }, + "rxDropped": { + "format": "int64", + "type": "integer" + }, + "txBytes": { + "format": "int64", + "type": "integer" + }, + "txPackets": { + "format": "int64", + "type": "integer" + }, + "txErrors": { + "format": "int64", + "type": "integer" + }, + "txDropped": { + "format": "int64", + "type": "integer" + } + } + }, + "ContainerThrottlingData": { + "type": "object", + "properties": { + "periods": { + "format": "int32", + "type": "integer" + }, + "throttledPeriods": { + "format": "int32", + "type": "integer" + }, + "throttledTime": { + "format": "int32", + "type": "integer" + } + } + }, + "ContinuousWebJob": { + "description": "Continuous Web Job Information.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "ContinuousWebJob resource specific properties", + "properties": { + "status": { + "description": "Job status.", + "enum": [ + "Initializing", + "Starting", + "Running", + "PendingRestart", + "Stopped" + ], + "type": "string", + "x-ms-enum": { + "name": "ContinuousWebJobStatus", + "modelAsString": false + } + }, + "detailed_status": { + "description": "Detailed status.", + "type": "string" + }, + "log_url": { + "description": "Log URL.", + "type": "string" + }, + "run_command": { + "description": "Run command.", + "type": "string" + }, + "url": { + "description": "Job URL.", + "type": "string" + }, + "extra_info_url": { + "description": "Extra Info URL.", + "type": "string" + }, + "web_job_type": { + "description": "Job type.", + "enum": [ + "Continuous", + "Triggered" + ], + "type": "string", + "x-ms-enum": { + "name": "WebJobType", + "modelAsString": false + } + }, + "error": { + "description": "Error information.", + "type": "string" + }, + "using_sdk": { + "description": "Using SDK?", + "type": "boolean" + }, + "settings": { + "description": "Job settings.", + "type": "object", + "additionalProperties": { + "type": "object" + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "ContinuousWebJobCollection": { + "description": "Collection of Kudu continuous web job information elements.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/ContinuousWebJob" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "CookieExpiration": { + "description": "The configuration settings of the session cookie's expiration.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "CookieExpiration resource specific properties", + "properties": { + "convention": { + "description": "The convention used when determining the session cookie's expiration.", + "enum": [ + "FixedTime", + "IdentityProviderDerived" + ], + "type": "string", + "x-ms-enum": { + "name": "CookieExpirationConvention", + "modelAsString": false + } + }, + "timeToExpiration": { + "description": "The time after the request is made when the session cookie should expire.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "CsmPublishingCredentialsPoliciesCollection": { + "description": "Publishing Credentials Policies collection.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "CsmPublishingCredentialsPoliciesCollection resource specific properties", + "required": [ + "ftp", + "scm" + ], + "properties": { + "ftp": { + "$ref": "#/definitions/CsmPublishingCredentialsPoliciesEntity", + "description": "Whether FTP is allowed." + }, + "scm": { + "$ref": "#/definitions/CsmPublishingCredentialsPoliciesEntity", + "description": "Whether Scm Basic Auth is allowed." + } + }, + "x-ms-client-flatten": true + } + } + }, + "CsmPublishingCredentialsPoliciesEntity": { + "description": "Publishing Credentials Policies parameters.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "CsmPublishingCredentialsPoliciesEntity resource specific properties", + "required": [ + "allow" + ], + "properties": { + "allow": { + "description": "true to allow access to a publishing method; otherwise, false.", + "type": "boolean" + } + }, + "x-ms-client-flatten": true + } + } + }, + "CsmPublishingProfileOptions": { + "description": "Publishing options for requested profile.", + "type": "object", + "properties": { + "format": { + "description": "Name of the format. Valid values are: \nFileZilla3\nWebDeploy -- default\nFtp", + "enum": [ + "FileZilla3", + "WebDeploy", + "Ftp" + ], + "type": "string", + "x-ms-enum": { + "name": "PublishingProfileFormat", + "modelAsString": true + } + }, + "includeDisasterRecoveryEndpoints": { + "description": "Include the DisasterRecover endpoint if true", + "type": "boolean" + } + } + }, + "CsmSlotEntity": { + "description": "Deployment slot parameters.", + "required": [ + "targetSlot", + "preserveVnet" + ], + "type": "object", + "properties": { + "targetSlot": { + "description": "Destination deployment slot during swap operation.", + "type": "string" + }, + "preserveVnet": { + "description": "true to preserve Virtual Network to the slot during swap; otherwise, false.", + "type": "boolean" + } + } + }, + "CustomHostnameAnalysisResult": { + "description": "Custom domain analysis.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "CustomHostnameAnalysisResult resource specific properties", + "properties": { + "isHostnameAlreadyVerified": { + "description": "true if hostname is already verified; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "customDomainVerificationTest": { + "description": "DNS verification test result.", + "enum": [ + "Passed", + "Failed", + "Skipped" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "DnsVerificationTestResult", + "modelAsString": false + } + }, + "customDomainVerificationFailureInfo": { + "$ref": "./CommonDefinitions.json#/definitions/ErrorEntity", + "description": "Raw failure information if DNS verification fails.", + "readOnly": true + }, + "hasConflictOnScaleUnit": { + "description": "true if there is a conflict on a scale unit; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "hasConflictAcrossSubscription": { + "description": "true if there is a conflict across subscriptions; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "conflictingAppResourceId": { + "description": "Name of the conflicting app on scale unit if it's within the same subscription.", + "type": "string", + "readOnly": true + }, + "cNameRecords": { + "description": "CName records controller can see for this hostname.", + "type": "array", + "items": { + "type": "string" + } + }, + "txtRecords": { + "description": "TXT records controller can see for this hostname.", + "type": "array", + "items": { + "type": "string" + } + }, + "aRecords": { + "description": "A records controller can see for this hostname.", + "type": "array", + "items": { + "type": "string" + } + }, + "alternateCNameRecords": { + "description": "Alternate CName records controller can see for this hostname.", + "type": "array", + "items": { + "type": "string" + } + }, + "alternateTxtRecords": { + "description": "Alternate TXT records controller can see for this hostname.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "CustomOpenIdConnectProvider": { + "description": "The configuration settings of the custom Open ID Connect provider.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "CustomOpenIdConnectProvider resource specific properties", + "properties": { + "enabled": { + "description": "false if the custom Open ID provider provider should not be enabled; otherwise, true.", + "type": "boolean" + }, + "registration": { + "$ref": "#/definitions/OpenIdConnectRegistration", + "description": "The configuration settings of the app registration for the custom Open ID Connect provider." + }, + "login": { + "$ref": "#/definitions/OpenIdConnectLogin", + "description": "The configuration settings of the login flow of the custom Open ID Connect provider." + } + }, + "x-ms-client-flatten": true + } + } + }, + "DatabaseBackupSetting": { + "description": "Database backup settings.", + "required": [ + "databaseType" + ], + "type": "object", + "properties": { + "databaseType": { + "description": "Database type (e.g. SqlAzure / MySql).", + "enum": [ + "SqlAzure", + "MySql", + "LocalMySql", + "PostgreSql" + ], + "type": "string", + "x-ms-enum": { + "name": "DatabaseType", + "modelAsString": true + } + }, + "name": { + "type": "string" + }, + "connectionStringName": { + "description": "Contains a connection string name that is linked to the SiteConfig.ConnectionStrings.\nThis is used during restore with overwrite connection strings options.", + "type": "string" + }, + "connectionString": { + "description": "Contains a connection string to a database which is being backed up or restored. If the restore should happen to a new database, the database name inside is the new one.", + "type": "string" + } + } + }, + "DeletedAppRestoreRequest": { + "description": "Details about restoring a deleted app.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "DeletedAppRestoreRequest resource specific properties", + "properties": { + "deletedSiteId": { + "description": "ARM resource ID of the deleted app. Example:\n/subscriptions/{subId}/providers/Microsoft.Web/deletedSites/{deletedSiteId}", + "type": "string" + }, + "recoverConfiguration": { + "description": "If true, deleted site configuration, in addition to content, will be restored.", + "type": "boolean" + }, + "snapshotTime": { + "description": "Point in time to restore the deleted app from, formatted as a DateTime string. \nIf unspecified, default value is the time that the app was deleted.", + "type": "string" + }, + "useDRSecondary": { + "description": "If true, the snapshot is retrieved from DRSecondary endpoint.", + "type": "boolean" + } + }, + "x-ms-client-flatten": true + } + } + }, + "Deployment": { + "description": "User credentials used for publishing activity.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "Deployment resource specific properties", + "properties": { + "status": { + "format": "int32", + "description": "Deployment status.", + "type": "integer" + }, + "message": { + "description": "Details about deployment status.", + "type": "string" + }, + "author": { + "description": "Who authored the deployment.", + "type": "string" + }, + "deployer": { + "description": "Who performed the deployment.", + "type": "string" + }, + "author_email": { + "description": "Author email.", + "type": "string" + }, + "start_time": { + "format": "date-time", + "description": "Start time.", + "type": "string" + }, + "end_time": { + "format": "date-time", + "description": "End time.", + "type": "string" + }, + "active": { + "description": "True if deployment is currently active, false if completed and null if not started.", + "type": "boolean" + }, + "details": { + "description": "Details on deployment.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "DeploymentCollection": { + "description": "Collection of app deployments.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/Deployment" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "EnabledConfig": { + "description": "Enabled configuration.", + "type": "object", + "properties": { + "enabled": { + "description": "True if configuration is enabled, false if it is disabled and null if configuration is not set.", + "type": "boolean" + } + } + }, + "Facebook": { + "description": "The configuration settings of the Facebook provider.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "Facebook resource specific properties", + "properties": { + "enabled": { + "description": "false if the Facebook provider should not be enabled despite the set registration; otherwise, true.", + "type": "boolean" + }, + "registration": { + "$ref": "#/definitions/AppRegistration", + "description": "The configuration settings of the app registration for the Facebook provider." + }, + "graphApiVersion": { + "description": "The version of the Facebook api to be used while logging in.", + "type": "string" + }, + "login": { + "$ref": "#/definitions/LoginScopes", + "description": "The configuration settings of the login flow." + } + }, + "x-ms-client-flatten": true + } + } + }, + "FileSystemApplicationLogsConfig": { + "description": "Application logs to file system configuration.", + "type": "object", + "properties": { + "level": { + "description": "Log level.", + "default": "Off", + "enum": [ + "Off", + "Verbose", + "Information", + "Warning", + "Error" + ], + "type": "string", + "x-ms-enum": { + "name": "LogLevel", + "modelAsString": false + } + } + } + }, + "FileSystemHttpLogsConfig": { + "description": "Http logs to file system configuration.", + "type": "object", + "properties": { + "retentionInMb": { + "format": "int32", + "description": "Maximum size in megabytes that http log files can use.\nWhen reached old log files will be removed to make space for new ones.\nValue can range between 25 and 100.", + "maximum": 100, + "minimum": 25, + "type": "integer" + }, + "retentionInDays": { + "format": "int32", + "description": "Retention in days.\nRemove files older than X days.\n0 or lower means no retention.", + "type": "integer" + }, + "enabled": { + "description": "True if configuration is enabled, false if it is disabled and null if configuration is not set.", + "type": "boolean" + } + } + }, + "FileSystemTokenStore": { + "description": "The configuration settings of the storage of the tokens if a file system is used.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "FileSystemTokenStore resource specific properties", + "properties": { + "directory": { + "description": "The directory in which the tokens will be stored.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "ForwardProxy": { + "description": "The configuration settings of a forward proxy used to make the requests.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "ForwardProxy resource specific properties", + "properties": { + "convention": { + "description": "The convention used to determine the url of the request made.", + "enum": [ + "NoProxy", + "Standard", + "Custom" + ], + "type": "string", + "x-ms-enum": { + "name": "ForwardProxyConvention", + "modelAsString": false + } + }, + "customHostHeaderName": { + "description": "The name of the header containing the host of the request.", + "type": "string" + }, + "customProtoHeaderName": { + "description": "The name of the header containing the scheme of the request.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "FunctionEnvelope": { + "description": "Function information.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "FunctionEnvelope resource specific properties", + "properties": { + "function_app_id": { + "description": "Function App ID.", + "type": "string" + }, + "script_root_path_href": { + "description": "Script root path URI.", + "type": "string" + }, + "script_href": { + "description": "Script URI.", + "type": "string" + }, + "config_href": { + "description": "Config URI.", + "type": "string" + }, + "test_data_href": { + "description": "Test data URI.", + "type": "string" + }, + "secrets_file_href": { + "description": "Secrets file URI.", + "type": "string" + }, + "href": { + "description": "Function URI.", + "type": "string" + }, + "config": { + "description": "Config information.", + "type": "object" + }, + "files": { + "description": "File list.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "test_data": { + "description": "Test data used when testing via the Azure Portal.", + "type": "string" + }, + "invoke_url_template": { + "description": "The invocation URL", + "type": "string" + }, + "language": { + "description": "The function language", + "type": "string" + }, + "isDisabled": { + "description": "Gets or sets a value indicating whether the function is disabled", + "type": "boolean" + } + }, + "x-ms-client-flatten": true + } + } + }, + "FunctionEnvelopeCollection": { + "description": "Collection of Kudu function information elements.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/FunctionEnvelope" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "FunctionSecrets": { + "description": "Function secrets.", + "type": "object", + "properties": { + "key": { + "description": "Secret key.", + "type": "string" + }, + "trigger_url": { + "description": "Trigger URL.", + "type": "string" + } + } + }, + "GitHub": { + "description": "The configuration settings of the GitHub provider.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "GitHub resource specific properties", + "properties": { + "enabled": { + "description": "false if the GitHub provider should not be enabled despite the set registration; otherwise, true.", + "type": "boolean" + }, + "registration": { + "$ref": "#/definitions/ClientRegistration", + "description": "The configuration settings of the app registration for the GitHub provider." + }, + "login": { + "$ref": "#/definitions/LoginScopes", + "description": "The configuration settings of the login flow." + } + }, + "x-ms-client-flatten": true + } + } + }, + "GitHubActionCodeConfiguration": { + "description": "The GitHub action code configuration.", + "type": "object", + "properties": { + "runtimeStack": { + "description": "Runtime stack is used to determine the workflow file content for code base apps.", + "type": "string" + }, + "runtimeVersion": { + "description": "Runtime version is used to determine what build version to set in the workflow file.", + "type": "string" + } + } + }, + "GitHubActionConfiguration": { + "description": "The GitHub action configuration.", + "type": "object", + "properties": { + "codeConfiguration": { + "$ref": "#/definitions/GitHubActionCodeConfiguration", + "description": "GitHub Action code configuration." + }, + "containerConfiguration": { + "$ref": "#/definitions/GitHubActionContainerConfiguration", + "description": "GitHub Action container configuration." + }, + "isLinux": { + "description": "This will help determine the workflow configuration to select.", + "type": "boolean" + }, + "generateWorkflowFile": { + "description": "Workflow option to determine whether the workflow file should be generated and written to the repository.", + "type": "boolean" + } + } + }, + "GitHubActionContainerConfiguration": { + "description": "The GitHub action container configuration.", + "type": "object", + "properties": { + "serverUrl": { + "description": "The server URL for the container registry where the build will be hosted.", + "type": "string" + }, + "imageName": { + "description": "The image name for the build.", + "type": "string" + }, + "username": { + "description": "The username used to upload the image to the container registry.", + "type": "string" + }, + "password": { + "description": "The password used to upload the image to the container registry.", + "type": "string", + "x-ms-secret": true + } + } + }, + "GlobalValidation": { + "description": "The configuration settings that determines the validation flow of users using App Service Authentication/Authorization.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "GlobalValidation resource specific properties", + "properties": { + "requireAuthentication": { + "description": "true if the authentication flow is required any request is made; otherwise, false.", + "type": "boolean" + }, + "unauthenticatedClientAction": { + "description": "The action to take when an unauthenticated client attempts to access the app.", + "enum": [ + "RedirectToLoginPage", + "AllowAnonymous", + "Return401", + "Return403" + ], + "type": "string", + "x-ms-enum": { + "name": "UnauthenticatedClientActionV2", + "modelAsString": false + } + }, + "redirectToProvider": { + "description": "The default authentication provider to use when multiple providers are configured.\nThis setting is only needed if multiple providers are configured and the unauthenticated client\naction is set to \"RedirectToLoginPage\".", + "type": "string" + }, + "excludedPaths": { + "description": "The paths for which unauthenticated flow would not be redirected to the login page.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "Google": { + "description": "The configuration settings of the Google provider.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "Google resource specific properties", + "properties": { + "enabled": { + "description": "false if the Google provider should not be enabled despite the set registration; otherwise, true.", + "type": "boolean" + }, + "registration": { + "$ref": "#/definitions/ClientRegistration", + "description": "The configuration settings of the app registration for the Google provider." + }, + "login": { + "$ref": "#/definitions/LoginScopes", + "description": "The configuration settings of the login flow." + }, + "validation": { + "$ref": "#/definitions/AllowedAudiencesValidation", + "description": "The configuration settings of the Azure Active Directory token validation flow." + } + }, + "x-ms-client-flatten": true + } + } + }, + "HostKeys": { + "description": "Functions host level keys.", + "type": "object", + "properties": { + "masterKey": { + "description": "Secret key.", + "type": "string" + }, + "functionKeys": { + "description": "Host level function keys.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "systemKeys": { + "description": "System keys.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "HostNameBinding": { + "description": "A hostname binding object.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "HostNameBinding resource specific properties", + "properties": { + "siteName": { + "description": "App Service app name.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "domainId": { + "description": "Fully qualified ARM domain resource URI.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "azureResourceName": { + "description": "Azure resource name.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "azureResourceType": { + "description": "Azure resource type.", + "enum": [ + "Website", + "TrafficManager" + ], + "type": "string", + "x-ms-enum": { + "name": "AzureResourceType", + "modelAsString": false + }, + "x-ms-mutability": [ + "create", + "read" + ] + }, + "customHostNameDnsRecordType": { + "description": "Custom DNS record type.", + "enum": [ + "CName", + "A" + ], + "type": "string", + "x-ms-enum": { + "name": "CustomHostNameDnsRecordType", + "modelAsString": false + }, + "x-ms-mutability": [ + "create", + "read" + ] + }, + "hostNameType": { + "description": "Hostname type.", + "enum": [ + "Verified", + "Managed" + ], + "type": "string", + "x-ms-enum": { + "name": "HostNameType", + "modelAsString": false + }, + "x-ms-mutability": [ + "create", + "read" + ] + }, + "sslState": { + "description": "SSL type", + "enum": [ + "Disabled", + "SniEnabled", + "IpBasedEnabled" + ], + "type": "string", + "x-ms-enum": { + "name": "SslState", + "modelAsString": false + }, + "x-ms-mutability": [ + "create", + "read" + ] + }, + "thumbprint": { + "description": "SSL certificate thumbprint", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "virtualIP": { + "description": "Virtual IP address assigned to the hostname if IP based SSL is enabled.", + "type": "string", + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "HostNameBindingCollection": { + "description": "Collection of hostname bindings.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/HostNameBinding" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "HttpLogsConfig": { + "description": "Http logs configuration.", + "type": "object", + "properties": { + "fileSystem": { + "$ref": "#/definitions/FileSystemHttpLogsConfig", + "description": "Http logs to file system configuration." + }, + "azureBlobStorage": { + "$ref": "#/definitions/AzureBlobStorageHttpLogsConfig", + "description": "Http logs to azure blob storage configuration." + } + } + }, + "HttpSettings": { + "description": "The configuration settings of the HTTP requests for authentication and authorization requests made against App Service Authentication/Authorization.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "HttpSettings resource specific properties", + "properties": { + "requireHttps": { + "description": "false if the authentication/authorization responses not having the HTTPS scheme are permissible; otherwise, true.", + "type": "boolean" + }, + "routes": { + "$ref": "#/definitions/HttpSettingsRoutes", + "description": "The configuration settings of the paths HTTP requests." + }, + "forwardProxy": { + "$ref": "#/definitions/ForwardProxy", + "description": "The configuration settings of a forward proxy used to make the requests." + } + }, + "x-ms-client-flatten": true + } + } + }, + "HttpSettingsRoutes": { + "description": "The configuration settings of the paths HTTP requests.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "HttpSettingsRoutes resource specific properties", + "properties": { + "apiPrefix": { + "description": "The prefix that should precede all the authentication/authorization paths.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "IdentityProviders": { + "description": "The configuration settings of each of the identity providers used to configure App Service Authentication/Authorization.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "IdentityProviders resource specific properties", + "properties": { + "azureActiveDirectory": { + "$ref": "#/definitions/AzureActiveDirectory", + "description": "The configuration settings of the Azure Active directory provider." + }, + "facebook": { + "$ref": "#/definitions/Facebook", + "description": "The configuration settings of the Facebook provider." + }, + "gitHub": { + "$ref": "#/definitions/GitHub", + "description": "The configuration settings of the GitHub provider." + }, + "google": { + "$ref": "#/definitions/Google", + "description": "The configuration settings of the Google provider." + }, + "twitter": { + "$ref": "#/definitions/Twitter", + "description": "The configuration settings of the Twitter provider." + }, + "customOpenIdConnectProviders": { + "description": "The map of the name of the alias of each custom Open ID Connect provider to the\nconfiguration settings of the custom Open ID Connect provider.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/CustomOpenIdConnectProvider" + } + }, + "legacyMicrosoftAccount": { + "$ref": "#/definitions/LegacyMicrosoftAccount", + "description": "The configuration settings of the legacy Microsoft Account provider." + }, + "apple": { + "$ref": "#/definitions/Apple", + "description": "The configuration settings of the Apple provider." + }, + "azureStaticWebApps": { + "$ref": "#/definitions/AzureStaticWebApps", + "description": "The configuration settings of the Azure Static Web Apps provider." + } + }, + "x-ms-client-flatten": true + } + } + }, + "JwtClaimChecks": { + "description": "The configuration settings of the checks that should be made while validating the JWT Claims.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "JwtClaimChecks resource specific properties", + "properties": { + "allowedGroups": { + "description": "The list of the allowed groups.", + "type": "array", + "items": { + "type": "string" + } + }, + "allowedClientApplications": { + "description": "The list of the allowed client applications.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "KeyInfo": { + "description": "Function key info.", + "type": "object", + "properties": { + "name": { + "description": "Key name", + "type": "string" + }, + "value": { + "description": "Key value", + "type": "string" + } + } + }, + "LegacyMicrosoftAccount": { + "description": "The configuration settings of the legacy Microsoft Account provider.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "LegacyMicrosoftAccount resource specific properties", + "properties": { + "enabled": { + "description": "false if the legacy Microsoft Account provider should not be enabled despite the set registration; otherwise, true.", + "type": "boolean" + }, + "registration": { + "$ref": "#/definitions/ClientRegistration", + "description": "The configuration settings of the app registration for the legacy Microsoft Account provider." + }, + "login": { + "$ref": "#/definitions/LoginScopes", + "description": "The configuration settings of the login flow." + }, + "validation": { + "$ref": "#/definitions/AllowedAudiencesValidation", + "description": "The configuration settings of the legacy Microsoft Account provider token validation flow." + } + }, + "x-ms-client-flatten": true + } + } + }, + "Login": { + "description": "The configuration settings of the login flow of users using App Service Authentication/Authorization.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "Login resource specific properties", + "properties": { + "routes": { + "$ref": "#/definitions/LoginRoutes", + "description": "The routes that specify the endpoints used for login and logout requests." + }, + "tokenStore": { + "$ref": "#/definitions/TokenStore", + "description": "The configuration settings of the token store." + }, + "preserveUrlFragmentsForLogins": { + "description": "true if the fragments from the request are preserved after the login request is made; otherwise, false.", + "type": "boolean" + }, + "allowedExternalRedirectUrls": { + "description": "External URLs that can be redirected to as part of logging in or logging out of the app. Note that the query string part of the URL is ignored.\nThis is an advanced setting typically only needed by Windows Store application backends.\nNote that URLs within the current domain are always implicitly allowed.", + "type": "array", + "items": { + "type": "string" + } + }, + "cookieExpiration": { + "$ref": "#/definitions/CookieExpiration", + "description": "The configuration settings of the session cookie's expiration." + }, + "nonce": { + "$ref": "#/definitions/Nonce", + "description": "The configuration settings of the nonce used in the login flow." + } + }, + "x-ms-client-flatten": true + } + } + }, + "LoginRoutes": { + "description": "The routes that specify the endpoints used for login and logout requests.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "LoginRoutes resource specific properties", + "properties": { + "logoutEndpoint": { + "description": "The endpoint at which a logout request should be made.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "LoginScopes": { + "description": "The configuration settings of the login flow, including the scopes that should be requested.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "LoginScopes resource specific properties", + "properties": { + "scopes": { + "description": "A list of the scopes that should be requested while authenticating.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "MSDeploy": { + "description": "MSDeploy ARM PUT information", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/MSDeployCore", + "description": "Core resource properties", + "properties": { + "addOnPackages": { + "description": "List of Add-On packages. Add-On packages implicitly enable the Do Not Delete MSDeploy rule.", + "type": "array", + "items": { + "$ref": "#/definitions/MSDeployCore" + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "MSDeployCore": { + "description": "MSDeploy ARM PUT core information", + "type": "object", + "properties": { + "packageUri": { + "description": "Package URI", + "type": "string" + }, + "connectionString": { + "description": "SQL Connection String", + "type": "string" + }, + "dbType": { + "description": "Database Type", + "type": "string" + }, + "setParametersXmlFileUri": { + "description": "URI of MSDeploy Parameters file. Must not be set if SetParameters is used.", + "type": "string" + }, + "setParameters": { + "description": "MSDeploy Parameters. Must not be set if SetParametersXmlFileUri is used.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "skipAppData": { + "description": "Controls whether the MSDeploy operation skips the App_Data directory.\nIf set to true, the existing App_Data directory on the destination\nwill not be deleted, and any App_Data directory in the source will be ignored.\nSetting is false by default.", + "type": "boolean" + }, + "appOffline": { + "description": "Sets the AppOffline rule while the MSDeploy operation executes.\nSetting is false by default.", + "type": "boolean" + } + } + }, + "MSDeployLog": { + "description": "MSDeploy log", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "MSDeployLog resource specific properties", + "properties": { + "entries": { + "description": "List of log entry messages", + "type": "array", + "items": { + "$ref": "#/definitions/MSDeployLogEntry" + }, + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "MSDeployLogEntry": { + "description": "MSDeploy log entry", + "type": "object", + "properties": { + "time": { + "format": "date-time", + "description": "Timestamp of log entry", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Log entry type", + "enum": [ + "Message", + "Warning", + "Error" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "MSDeployLogEntryType", + "modelAsString": false + } + }, + "message": { + "description": "Log entry message", + "type": "string", + "readOnly": true + } + } + }, + "MSDeployStatus": { + "description": "MSDeploy ARM response", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "MSDeployStatus resource specific properties", + "properties": { + "deployer": { + "description": "Username of deployer", + "type": "string", + "readOnly": true + }, + "provisioningState": { + "description": "Provisioning state", + "enum": [ + "accepted", + "running", + "succeeded", + "failed", + "canceled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "MSDeployProvisioningState", + "modelAsString": false + } + }, + "startTime": { + "format": "date-time", + "description": "Start time of deploy operation", + "type": "string", + "readOnly": true + }, + "endTime": { + "format": "date-time", + "description": "End time of deploy operation", + "type": "string", + "readOnly": true + }, + "complete": { + "description": "Whether the deployment operation has completed", + "type": "boolean", + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "MigrateMySqlRequest": { + "description": "MySQL migration request.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "MigrateMySqlRequest resource specific properties", + "required": [ + "connectionString", + "migrationType" + ], + "properties": { + "connectionString": { + "description": "Connection string to the remote MySQL database.", + "type": "string" + }, + "migrationType": { + "description": "The type of migration operation to be done", + "enum": [ + "LocalToRemote", + "RemoteToLocal" + ], + "type": "string", + "x-ms-enum": { + "name": "MySqlMigrationType", + "modelAsString": false + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "MigrateMySqlStatus": { + "description": "MySQL migration status.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "MigrateMySqlStatus resource specific properties", + "properties": { + "migrationOperationStatus": { + "description": "Status of the migration task.", + "enum": [ + "InProgress", + "Failed", + "Succeeded", + "TimedOut", + "Created" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "OperationStatus", + "modelAsString": false + } + }, + "operationId": { + "description": "Operation ID for the migration task.", + "type": "string", + "readOnly": true + }, + "localMySqlEnabled": { + "description": "True if the web app has in app MySql enabled", + "type": "boolean", + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "NetworkFeatures": { + "description": "Full view of network features for an app (presently VNET integration and Hybrid Connections).", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "NetworkFeatures resource specific properties", + "properties": { + "virtualNetworkName": { + "description": "The Virtual Network name.", + "type": "string", + "readOnly": true + }, + "virtualNetworkConnection": { + "$ref": "./CommonDefinitions.json#/definitions/VnetInfo", + "description": "The Virtual Network summary view.", + "readOnly": true + }, + "hybridConnections": { + "description": "The Hybrid Connections summary view.", + "type": "array", + "items": { + "$ref": "#/definitions/RelayServiceConnectionEntity" + }, + "readOnly": true + }, + "hybridConnectionsV2": { + "description": "The Hybrid Connection V2 (Service Bus) view.", + "type": "array", + "items": { + "$ref": "./CommonDefinitions.json#/definitions/HybridConnection" + }, + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "NetworkTrace": { + "description": "Network trace", + "type": "object", + "properties": { + "path": { + "description": "Local file path for the captured network trace file.", + "type": "string" + }, + "status": { + "description": "Current status of the network trace operation, same as Operation.Status (InProgress/Succeeded/Failed).", + "type": "string" + }, + "message": { + "description": "Detailed message of a network trace operation, e.g. error message in case of failure.", + "type": "string" + } + } + }, + "Nonce": { + "description": "The configuration settings of the nonce used in the login flow.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "Nonce resource specific properties", + "properties": { + "validateNonce": { + "description": "false if the nonce should not be validated while completing the login flow; otherwise, true.", + "type": "boolean" + }, + "nonceExpirationInterval": { + "description": "The time after the request is made when the nonce should expire.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "OpenIdConnectClientCredential": { + "description": "The authentication client credentials of the custom Open ID Connect provider.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "OpenIdConnectClientCredential resource specific properties", + "properties": { + "method": { + "description": "The method that should be used to authenticate the user.", + "enum": [ + "ClientSecretPost" + ], + "type": "string", + "x-ms-enum": { + "name": "ClientCredentialMethod", + "modelAsString": false + } + }, + "clientSecretSettingName": { + "description": "The app setting that contains the client secret for the custom Open ID Connect provider.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "OpenIdConnectConfig": { + "description": "The configuration settings of the endpoints used for the custom Open ID Connect provider.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "OpenIdConnectConfig resource specific properties", + "properties": { + "authorizationEndpoint": { + "description": "The endpoint to be used to make an authorization request.", + "type": "string" + }, + "tokenEndpoint": { + "description": "The endpoint to be used to request a token.", + "type": "string" + }, + "issuer": { + "description": "The endpoint that issues the token.", + "type": "string" + }, + "certificationUri": { + "description": "The endpoint that provides the keys necessary to validate the token.", + "type": "string" + }, + "wellKnownOpenIdConfiguration": { + "description": "The endpoint that contains all the configuration endpoints for the provider.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "OpenIdConnectLogin": { + "description": "The configuration settings of the login flow of the custom Open ID Connect provider.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "OpenIdConnectLogin resource specific properties", + "properties": { + "nameClaimType": { + "description": "The name of the claim that contains the users name.", + "type": "string" + }, + "scopes": { + "description": "A list of the scopes that should be requested while authenticating.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "OpenIdConnectRegistration": { + "description": "The configuration settings of the app registration for the custom Open ID Connect provider.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "OpenIdConnectRegistration resource specific properties", + "properties": { + "clientId": { + "description": "The client id of the custom Open ID Connect provider.", + "type": "string" + }, + "clientCredential": { + "$ref": "#/definitions/OpenIdConnectClientCredential", + "description": "The authentication credentials of the custom Open ID Connect provider." + }, + "openIdConnectConfiguration": { + "$ref": "#/definitions/OpenIdConnectConfig", + "description": "The configuration settings of the endpoints used for the custom Open ID Connect provider." + } + }, + "x-ms-client-flatten": true + } + } + }, + "PerfMonCounterCollection": { + "description": "Collection of performance monitor counters.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/PerfMonResponse" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "PerfMonResponse": { + "description": "Performance monitor API response.", + "type": "object", + "properties": { + "code": { + "description": "The response code.", + "type": "string" + }, + "message": { + "description": "The message.", + "type": "string" + }, + "data": { + "$ref": "#/definitions/PerfMonSet", + "description": "The performance monitor counters." + } + } + }, + "PerfMonSample": { + "description": "Performance monitor sample in a set.", + "type": "object", + "properties": { + "time": { + "format": "date-time", + "description": "Point in time for which counter was measured.", + "type": "string" + }, + "instanceName": { + "description": "Name of the server on which the measurement is made.", + "type": "string" + }, + "value": { + "format": "double", + "description": "Value of counter at a certain time.", + "type": "number" + } + } + }, + "PerfMonSet": { + "description": "Metric information.", + "type": "object", + "properties": { + "name": { + "description": "Unique key name of the counter.", + "type": "string" + }, + "startTime": { + "format": "date-time", + "description": "Start time of the period.", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "End time of the period.", + "type": "string" + }, + "timeGrain": { + "description": "Presented time grain.", + "type": "string" + }, + "values": { + "description": "Collection of workers that are active during this time.", + "type": "array", + "items": { + "$ref": "#/definitions/PerfMonSample" + } + } + } + }, + "PremierAddOn": { + "description": "Premier add-on.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "PremierAddOn resource specific properties", + "properties": { + "sku": { + "description": "Premier add on SKU.", + "type": "string" + }, + "product": { + "description": "Premier add on Product.", + "type": "string" + }, + "vendor": { + "description": "Premier add on Vendor.", + "type": "string" + }, + "marketplacePublisher": { + "description": "Premier add on Marketplace publisher.", + "type": "string" + }, + "marketplaceOffer": { + "description": "Premier add on Marketplace offer.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "PremierAddOnPatchResource": { + "description": "ARM resource for a PremierAddOn.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "PremierAddOnPatchResource resource specific properties", + "properties": { + "sku": { + "description": "Premier add on SKU.", + "type": "string" + }, + "product": { + "description": "Premier add on Product.", + "type": "string" + }, + "vendor": { + "description": "Premier add on Vendor.", + "type": "string" + }, + "marketplacePublisher": { + "description": "Premier add on Marketplace publisher.", + "type": "string" + }, + "marketplaceOffer": { + "description": "Premier add on Marketplace offer.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "PrivateAccess": { + "description": "Description of the parameters of Private Access for a Web Site.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "PrivateAccess resource specific properties", + "properties": { + "enabled": { + "description": "Whether private access is enabled or not.", + "type": "boolean" + }, + "virtualNetworks": { + "description": "The Virtual Networks (and subnets) allowed to access the site privately.", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateAccessVirtualNetwork" + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "PrivateAccessSubnet": { + "description": "Description of a Virtual Network subnet that is useable for private site access.", + "type": "object", + "properties": { + "name": { + "description": "The name of the subnet.", + "type": "string" + }, + "key": { + "format": "int32", + "description": "The key (ID) of the subnet.", + "type": "integer" + } + } + }, + "PrivateAccessVirtualNetwork": { + "description": "Description of a Virtual Network that is useable for private site access.", + "type": "object", + "properties": { + "name": { + "description": "The name of the Virtual Network.", + "type": "string" + }, + "key": { + "format": "int32", + "description": "The key (ID) of the Virtual Network.", + "type": "integer" + }, + "resourceId": { + "description": "The ARM uri of the Virtual Network", + "type": "string" + }, + "subnets": { + "description": "A List of subnets that access is allowed to on this Virtual Network. An empty array (but not null) is interpreted to mean that all subnets are allowed within this Virtual Network.", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateAccessSubnet" + } + } + } + }, + "ProcessInfo": { + "description": "Process Information.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "ProcessInfo resource specific properties", + "properties": { + "identifier": { + "format": "int32", + "description": "ARM Identifier for deployment.", + "type": "integer", + "readOnly": true + }, + "deployment_name": { + "description": "Deployment name.", + "type": "string" + }, + "href": { + "description": "HRef URI.", + "type": "string" + }, + "minidump": { + "description": "Minidump URI.", + "type": "string" + }, + "is_profile_running": { + "description": "Is profile running?", + "type": "boolean" + }, + "is_iis_profile_running": { + "description": "Is the IIS Profile running?", + "type": "boolean" + }, + "iis_profile_timeout_in_seconds": { + "format": "double", + "description": "IIS Profile timeout (seconds).", + "type": "number" + }, + "parent": { + "description": "Parent process.", + "type": "string" + }, + "children": { + "description": "Child process list.", + "type": "array", + "items": { + "type": "string" + } + }, + "threads": { + "description": "Thread list.", + "type": "array", + "items": { + "$ref": "#/definitions/ProcessThreadInfo" + } + }, + "open_file_handles": { + "description": "List of open files.", + "type": "array", + "items": { + "type": "string" + } + }, + "modules": { + "description": "List of modules.", + "type": "array", + "items": { + "$ref": "#/definitions/ProcessModuleInfo" + } + }, + "file_name": { + "description": "File name of this process.", + "type": "string" + }, + "command_line": { + "description": "Command line.", + "type": "string" + }, + "user_name": { + "description": "User name.", + "type": "string" + }, + "handle_count": { + "format": "int32", + "description": "Handle count.", + "type": "integer" + }, + "module_count": { + "format": "int32", + "description": "Module count.", + "type": "integer" + }, + "thread_count": { + "format": "int32", + "description": "Thread count.", + "type": "integer" + }, + "start_time": { + "format": "date-time", + "description": "Start time.", + "type": "string" + }, + "total_cpu_time": { + "description": "Total CPU time.", + "type": "string" + }, + "user_cpu_time": { + "description": "User CPU time.", + "type": "string" + }, + "privileged_cpu_time": { + "description": "Privileged CPU time.", + "type": "string" + }, + "working_set": { + "format": "int64", + "description": "Working set.", + "type": "integer" + }, + "peak_working_set": { + "format": "int64", + "description": "Peak working set.", + "type": "integer" + }, + "private_memory": { + "format": "int64", + "description": "Private memory size.", + "type": "integer" + }, + "virtual_memory": { + "format": "int64", + "description": "Virtual memory size.", + "type": "integer" + }, + "peak_virtual_memory": { + "format": "int64", + "description": "Peak virtual memory usage.", + "type": "integer" + }, + "paged_system_memory": { + "format": "int64", + "description": "Paged system memory.", + "type": "integer" + }, + "non_paged_system_memory": { + "format": "int64", + "description": "Non-paged system memory.", + "type": "integer" + }, + "paged_memory": { + "format": "int64", + "description": "Paged memory.", + "type": "integer" + }, + "peak_paged_memory": { + "format": "int64", + "description": "Peak paged memory.", + "type": "integer" + }, + "time_stamp": { + "format": "date-time", + "description": "Time stamp.", + "type": "string" + }, + "environment_variables": { + "description": "List of environment variables.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "is_scm_site": { + "description": "Is this the SCM site?", + "type": "boolean" + }, + "is_webjob": { + "description": "Is this a Web Job?", + "type": "boolean" + }, + "description": { + "description": "Description of process.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "ProcessInfoCollection": { + "description": "Collection of Kudu process information elements.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/ProcessInfo" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "ProcessModuleInfo": { + "description": "Process Module Information.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "ProcessModuleInfo resource specific properties", + "properties": { + "base_address": { + "description": "Base address. Used as module identifier in ARM resource URI.", + "type": "string" + }, + "file_name": { + "description": "File name.", + "type": "string" + }, + "href": { + "description": "HRef URI.", + "type": "string" + }, + "file_path": { + "description": "File path.", + "type": "string" + }, + "module_memory_size": { + "format": "int32", + "description": "Module memory size.", + "type": "integer" + }, + "file_version": { + "description": "File version.", + "type": "string" + }, + "file_description": { + "description": "File description.", + "type": "string" + }, + "product": { + "description": "Product name.", + "type": "string" + }, + "product_version": { + "description": "Product version.", + "type": "string" + }, + "is_debug": { + "description": "Is debug?", + "type": "boolean" + }, + "language": { + "description": "Module language (locale).", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "ProcessModuleInfoCollection": { + "description": "Collection of Kudu thread information elements.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/ProcessModuleInfo" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "ProcessThreadInfo": { + "description": "Process Thread Information.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "ProcessThreadInfo resource specific properties", + "properties": { + "identifier": { + "format": "int32", + "description": "Site extension ID.", + "type": "integer", + "readOnly": true + }, + "href": { + "description": "HRef URI.", + "type": "string" + }, + "process": { + "description": "Process URI.", + "type": "string" + }, + "start_address": { + "description": "Start address.", + "type": "string" + }, + "current_priority": { + "format": "int32", + "description": "Current thread priority.", + "type": "integer" + }, + "priority_level": { + "description": "Thread priority level.", + "type": "string" + }, + "base_priority": { + "format": "int32", + "description": "Base priority.", + "type": "integer" + }, + "start_time": { + "format": "date-time", + "description": "Start time.", + "type": "string" + }, + "total_processor_time": { + "description": "Total processor time.", + "type": "string" + }, + "user_processor_time": { + "description": "User processor time.", + "type": "string" + }, + "state": { + "description": "Thread state.", + "type": "string" + }, + "wait_reason": { + "description": "Wait reason.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "ProcessThreadInfoCollection": { + "description": "Collection of Kudu thread information elements.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/ProcessThreadInfo" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "PublicCertificate": { + "description": "Public certificate object", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "PublicCertificate resource specific properties", + "properties": { + "blob": { + "format": "byte", + "description": "Public Certificate byte array", + "type": "string" + }, + "publicCertificateLocation": { + "description": "Public Certificate Location", + "enum": [ + "CurrentUserMy", + "LocalMachineMy", + "Unknown" + ], + "type": "string", + "x-ms-enum": { + "name": "PublicCertificateLocation", + "modelAsString": false + } + }, + "thumbprint": { + "description": "Certificate Thumbprint", + "type": "string", + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "PublicCertificateCollection": { + "description": "Collection of public certificates", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/PublicCertificate" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "RelayServiceConnectionEntity": { + "description": "Hybrid Connection for an App Service app.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "RelayServiceConnectionEntity resource specific properties", + "properties": { + "entityName": { + "type": "string" + }, + "entityConnectionString": { + "type": "string" + }, + "resourceType": { + "type": "string" + }, + "resourceConnectionString": { + "type": "string" + }, + "hostname": { + "type": "string" + }, + "port": { + "format": "int32", + "type": "integer" + }, + "biztalkUri": { + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "RestoreRequest": { + "description": "Description of a restore request.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "RestoreRequest resource specific properties", + "required": [ + "storageAccountUrl", + "overwrite" + ], + "properties": { + "storageAccountUrl": { + "description": "SAS URL to the container.", + "type": "string" + }, + "blobName": { + "description": "Name of a blob which contains the backup.", + "type": "string" + }, + "overwrite": { + "description": "true if the restore operation can overwrite target app; otherwise, false. true is needed if trying to restore over an existing app.", + "type": "boolean" + }, + "siteName": { + "description": "Name of an app.", + "type": "string" + }, + "databases": { + "description": "Collection of databases which should be restored. This list has to match the list of databases included in the backup.", + "type": "array", + "items": { + "$ref": "#/definitions/DatabaseBackupSetting" + } + }, + "ignoreConflictingHostNames": { + "description": "Changes a logic when restoring an app with custom domains. true to remove custom domains automatically. If false, custom domains are added to \nthe app's object when it is being restored, but that might fail due to conflicts during the operation.", + "default": false, + "type": "boolean" + }, + "ignoreDatabases": { + "description": "Ignore the databases and only restore the site content", + "default": false, + "type": "boolean" + }, + "appServicePlan": { + "description": "Specify app service plan that will own restored site.", + "type": "string" + }, + "operationType": { + "description": "Operation type.", + "default": "Default", + "enum": [ + "Default", + "Clone", + "Relocation", + "Snapshot", + "CloudFS" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupRestoreOperationType", + "modelAsString": false + } + }, + "adjustConnectionStrings": { + "description": "true if SiteConfig.ConnectionStrings should be set in new app; otherwise, false.", + "type": "boolean" + }, + "hostingEnvironment": { + "description": "App Service Environment name, if needed (only when restoring an app to an App Service Environment).", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "SiteAuthSettings": { + "description": "Configuration settings for the Azure App Service Authentication / Authorization feature.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "SiteAuthSettings resource specific properties", + "properties": { + "enabled": { + "description": "true if the Authentication / Authorization feature is enabled for the current app; otherwise, false.", + "type": "boolean" + }, + "runtimeVersion": { + "description": "The RuntimeVersion of the Authentication / Authorization feature in use for the current app.\nThe setting in this value can control the behavior of certain features in the Authentication / Authorization module.", + "type": "string" + }, + "unauthenticatedClientAction": { + "description": "The action to take when an unauthenticated client attempts to access the app.", + "enum": [ + "RedirectToLoginPage", + "AllowAnonymous" + ], + "type": "string", + "x-ms-enum": { + "name": "UnauthenticatedClientAction", + "modelAsString": false + } + }, + "tokenStoreEnabled": { + "description": "true to durably store platform-specific security tokens that are obtained during login flows; otherwise, false.\n The default is false.", + "type": "boolean" + }, + "allowedExternalRedirectUrls": { + "description": "External URLs that can be redirected to as part of logging in or logging out of the app. Note that the query string part of the URL is ignored.\nThis is an advanced setting typically only needed by Windows Store application backends.\nNote that URLs within the current domain are always implicitly allowed.", + "type": "array", + "items": { + "type": "string" + } + }, + "defaultProvider": { + "description": "The default authentication provider to use when multiple providers are configured.\nThis setting is only needed if multiple providers are configured and the unauthenticated client\naction is set to \"RedirectToLoginPage\".", + "enum": [ + "AzureActiveDirectory", + "Facebook", + "Google", + "MicrosoftAccount", + "Twitter", + "Github" + ], + "type": "string", + "x-ms-enum": { + "name": "BuiltInAuthenticationProvider", + "modelAsString": false + } + }, + "tokenRefreshExtensionHours": { + "format": "double", + "description": "The number of hours after session token expiration that a session token can be used to\ncall the token refresh API. The default is 72 hours.", + "type": "number" + }, + "clientId": { + "description": "The Client ID of this relying party application, known as the client_id.\nThis setting is required for enabling OpenID Connection authentication with Azure Active Directory or \nother 3rd party OpenID Connect providers.\nMore information on OpenID Connect: http://openid.net/specs/openid-connect-core-1_0.html", + "type": "string" + }, + "clientSecret": { + "description": "The Client Secret of this relying party application (in Azure Active Directory, this is also referred to as the Key).\nThis setting is optional. If no client secret is configured, the OpenID Connect implicit auth flow is used to authenticate end users.\nOtherwise, the OpenID Connect Authorization Code Flow is used to authenticate end users.\nMore information on OpenID Connect: http://openid.net/specs/openid-connect-core-1_0.html", + "type": "string" + }, + "clientSecretSettingName": { + "description": "The app setting name that contains the client secret of the relying party application.", + "type": "string" + }, + "clientSecretCertificateThumbprint": { + "description": "An alternative to the client secret, that is the thumbprint of a certificate used for signing purposes. This property acts as\na replacement for the Client Secret. It is also optional.", + "type": "string" + }, + "issuer": { + "description": "The OpenID Connect Issuer URI that represents the entity which issues access tokens for this application.\nWhen using Azure Active Directory, this value is the URI of the directory tenant, e.g. https://sts.windows.net/{tenant-guid}/.\nThis URI is a case-sensitive identifier for the token issuer.\nMore information on OpenID Connect Discovery: http://openid.net/specs/openid-connect-discovery-1_0.html", + "type": "string" + }, + "validateIssuer": { + "description": "Gets a value indicating whether the issuer should be a valid HTTPS url and be validated as such.", + "type": "boolean" + }, + "allowedAudiences": { + "description": "Allowed audience values to consider when validating JWTs issued by \nAzure Active Directory. Note that the ClientID value is always considered an\nallowed audience, regardless of this setting.", + "type": "array", + "items": { + "type": "string" + } + }, + "additionalLoginParams": { + "description": "Login parameters to send to the OpenID Connect authorization endpoint when\na user logs in. Each parameter must be in the form \"key=value\".", + "type": "array", + "items": { + "type": "string" + } + }, + "aadClaimsAuthorization": { + "description": "Gets a JSON string containing the Azure AD Acl settings.", + "type": "string" + }, + "googleClientId": { + "description": "The OpenID Connect Client ID for the Google web application.\nThis setting is required for enabling Google Sign-In.\nGoogle Sign-In documentation: https://developers.google.com/identity/sign-in/web/", + "type": "string" + }, + "googleClientSecret": { + "description": "The client secret associated with the Google web application.\nThis setting is required for enabling Google Sign-In.\nGoogle Sign-In documentation: https://developers.google.com/identity/sign-in/web/", + "type": "string" + }, + "googleClientSecretSettingName": { + "description": "The app setting name that contains the client secret associated with \nthe Google web application.", + "type": "string" + }, + "googleOAuthScopes": { + "description": "The OAuth 2.0 scopes that will be requested as part of Google Sign-In authentication.\nThis setting is optional. If not specified, \"openid\", \"profile\", and \"email\" are used as default scopes.\nGoogle Sign-In documentation: https://developers.google.com/identity/sign-in/web/", + "type": "array", + "items": { + "type": "string" + } + }, + "facebookAppId": { + "description": "The App ID of the Facebook app used for login.\nThis setting is required for enabling Facebook Login.\nFacebook Login documentation: https://developers.facebook.com/docs/facebook-login", + "type": "string" + }, + "facebookAppSecret": { + "description": "The App Secret of the Facebook app used for Facebook Login.\nThis setting is required for enabling Facebook Login.\nFacebook Login documentation: https://developers.facebook.com/docs/facebook-login", + "type": "string" + }, + "facebookAppSecretSettingName": { + "description": "The app setting name that contains the app secret used for Facebook Login.", + "type": "string" + }, + "facebookOAuthScopes": { + "description": "The OAuth 2.0 scopes that will be requested as part of Facebook Login authentication.\nThis setting is optional.\nFacebook Login documentation: https://developers.facebook.com/docs/facebook-login", + "type": "array", + "items": { + "type": "string" + } + }, + "gitHubClientId": { + "description": "The Client Id of the GitHub app used for login.\nThis setting is required for enabling Github login", + "type": "string" + }, + "gitHubClientSecret": { + "description": "The Client Secret of the GitHub app used for Github Login.\nThis setting is required for enabling Github login.", + "type": "string" + }, + "gitHubClientSecretSettingName": { + "description": "The app setting name that contains the client secret of the Github\napp used for GitHub Login.", + "type": "string" + }, + "gitHubOAuthScopes": { + "description": "The OAuth 2.0 scopes that will be requested as part of GitHub Login authentication.\nThis setting is optional", + "type": "array", + "items": { + "type": "string" + } + }, + "twitterConsumerKey": { + "description": "The OAuth 1.0a consumer key of the Twitter application used for sign-in.\nThis setting is required for enabling Twitter Sign-In.\nTwitter Sign-In documentation: https://dev.twitter.com/web/sign-in", + "type": "string" + }, + "twitterConsumerSecret": { + "description": "The OAuth 1.0a consumer secret of the Twitter application used for sign-in.\nThis setting is required for enabling Twitter Sign-In.\nTwitter Sign-In documentation: https://dev.twitter.com/web/sign-in", + "type": "string" + }, + "twitterConsumerSecretSettingName": { + "description": "The app setting name that contains the OAuth 1.0a consumer secret of the Twitter\napplication used for sign-in.", + "type": "string" + }, + "microsoftAccountClientId": { + "description": "The OAuth 2.0 client ID that was created for the app used for authentication.\nThis setting is required for enabling Microsoft Account authentication.\nMicrosoft Account OAuth documentation: https://dev.onedrive.com/auth/msa_oauth.htm", + "type": "string" + }, + "microsoftAccountClientSecret": { + "description": "The OAuth 2.0 client secret that was created for the app used for authentication.\nThis setting is required for enabling Microsoft Account authentication.\nMicrosoft Account OAuth documentation: https://dev.onedrive.com/auth/msa_oauth.htm", + "type": "string" + }, + "microsoftAccountClientSecretSettingName": { + "description": "The app setting name containing the OAuth 2.0 client secret that was created for the\napp used for authentication.", + "type": "string" + }, + "microsoftAccountOAuthScopes": { + "description": "The OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication.\nThis setting is optional. If not specified, \"wl.basic\" is used as the default scope.\nMicrosoft Account Scopes and permissions documentation: https://msdn.microsoft.com/en-us/library/dn631845.aspx", + "type": "array", + "items": { + "type": "string" + } + }, + "isAuthFromFile": { + "description": "\"true\" if the auth config settings should be read from a file,\n\"false\" otherwise", + "type": "string" + }, + "authFilePath": { + "description": "The path of the config file containing auth settings.\nIf the path is relative, base will the site's root directory.", + "type": "string" + }, + "configVersion": { + "description": "The ConfigVersion of the Authentication / Authorization feature in use for the current app.\nThe setting in this value can control the behavior of the control plane for Authentication / Authorization.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "SiteAuthSettingsV2": { + "description": "Configuration settings for the Azure App Service Authentication / Authorization V2 feature.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "SiteAuthSettingsV2 resource specific properties", + "properties": { + "platform": { + "$ref": "#/definitions/AuthPlatform", + "description": "The configuration settings of the platform of App Service Authentication/Authorization." + }, + "globalValidation": { + "$ref": "#/definitions/GlobalValidation", + "description": "The configuration settings that determines the validation flow of users using App Service Authentication/Authorization." + }, + "identityProviders": { + "$ref": "#/definitions/IdentityProviders", + "description": "The configuration settings of each of the identity providers used to configure App Service Authentication/Authorization." + }, + "login": { + "$ref": "#/definitions/Login", + "description": "The configuration settings of the login flow of users using App Service Authentication/Authorization." + }, + "httpSettings": { + "$ref": "#/definitions/HttpSettings", + "description": "The configuration settings of the HTTP requests for authentication and authorization requests made against App Service Authentication/Authorization." + } + }, + "x-ms-client-flatten": true + } + } + }, + "SiteCloneability": { + "description": "Represents whether or not an app is cloneable.", + "type": "object", + "properties": { + "result": { + "description": "Name of app.", + "enum": [ + "Cloneable", + "PartiallyCloneable", + "NotCloneable" + ], + "type": "string", + "x-ms-enum": { + "name": "CloneAbilityResult", + "modelAsString": false + } + }, + "blockingFeatures": { + "description": "List of features enabled on app that prevent cloning.", + "type": "array", + "items": { + "$ref": "#/definitions/SiteCloneabilityCriterion" + } + }, + "unsupportedFeatures": { + "description": "List of features enabled on app that are non-blocking but cannot be cloned. The app can still be cloned\nbut the features in this list will not be set up on cloned app.", + "type": "array", + "items": { + "$ref": "#/definitions/SiteCloneabilityCriterion" + } + }, + "blockingCharacteristics": { + "description": "List of blocking application characteristics.", + "type": "array", + "items": { + "$ref": "#/definitions/SiteCloneabilityCriterion" + } + } + } + }, + "SiteCloneabilityCriterion": { + "description": "An app cloneability criterion.", + "type": "object", + "properties": { + "name": { + "description": "Name of criterion.", + "type": "string" + }, + "description": { + "description": "Description of criterion.", + "type": "string" + } + } + }, + "SiteConfigResource": { + "description": "Web app configuration ARM resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "$ref": "./CommonDefinitions.json#/definitions/SiteConfig", + "description": "Core resource properties", + "x-ms-client-flatten": true + } + } + }, + "SiteConfigResourceCollection": { + "description": "Collection of site configurations.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/SiteConfigResource" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "SiteConfigurationSnapshotInfo": { + "description": "A snapshot of a web app configuration.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "SiteConfigurationSnapshotInfo resource specific properties", + "properties": { + "time": { + "format": "date-time", + "description": "The time the snapshot was taken.", + "type": "string", + "readOnly": true + }, + "snapshotId": { + "format": "int32", + "description": "The id of the snapshot", + "type": "integer", + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "SiteConfigurationSnapshotInfoCollection": { + "description": "Collection of metadata for the app configuration snapshots that can be restored.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/SiteConfigurationSnapshotInfo" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "SiteExtensionInfo": { + "description": "Site Extension Information.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "SiteExtensionInfo resource specific properties", + "properties": { + "extension_id": { + "description": "Site extension ID.", + "type": "string" + }, + "title": { + "type": "string" + }, + "extension_type": { + "description": "Site extension type.", + "enum": [ + "Gallery", + "WebRoot" + ], + "type": "string", + "x-ms-enum": { + "name": "SiteExtensionType", + "modelAsString": false + } + }, + "summary": { + "description": "Summary description.", + "type": "string" + }, + "description": { + "description": "Detailed description.", + "type": "string" + }, + "version": { + "description": "Version information.", + "type": "string" + }, + "extension_url": { + "description": "Extension URL.", + "type": "string" + }, + "project_url": { + "description": "Project URL.", + "type": "string" + }, + "icon_url": { + "description": "Icon URL.", + "type": "string" + }, + "license_url": { + "description": "License URL.", + "type": "string" + }, + "feed_url": { + "description": "Feed URL.", + "type": "string" + }, + "authors": { + "description": "List of authors.", + "type": "array", + "items": { + "type": "string" + } + }, + "installer_command_line_params": { + "description": "Installer command line parameters.", + "type": "string" + }, + "published_date_time": { + "format": "date-time", + "description": "Published timestamp.", + "type": "string" + }, + "download_count": { + "format": "int32", + "description": "Count of downloads.", + "type": "integer" + }, + "local_is_latest_version": { + "description": "true if the local version is the latest version; false otherwise.", + "type": "boolean" + }, + "local_path": { + "description": "Local path.", + "type": "string" + }, + "installed_date_time": { + "format": "date-time", + "description": "Installed timestamp.", + "type": "string" + }, + "provisioningState": { + "description": "Provisioning state.", + "type": "string" + }, + "comment": { + "description": "Site Extension comment.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "SiteExtensionInfoCollection": { + "description": "Collection of Kudu site extension information elements.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/SiteExtensionInfo" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "SiteLogsConfig": { + "description": "Configuration of App Service site logs.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "SiteLogsConfig resource specific properties", + "properties": { + "applicationLogs": { + "$ref": "#/definitions/ApplicationLogsConfig", + "description": "Application logs configuration." + }, + "httpLogs": { + "$ref": "#/definitions/HttpLogsConfig", + "description": "HTTP logs configuration." + }, + "failedRequestsTracing": { + "$ref": "#/definitions/EnabledConfig", + "description": "Failed requests tracing configuration." + }, + "detailedErrorMessages": { + "$ref": "#/definitions/EnabledConfig", + "description": "Detailed error messages configuration." + } + }, + "x-ms-client-flatten": true + } + } + }, + "SitePatchResource": { + "description": "ARM resource for a site.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "SitePatchResource resource specific properties", + "properties": { + "state": { + "description": "Current state of the app.", + "type": "string", + "readOnly": true + }, + "hostNames": { + "description": "Hostnames associated with the app.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "repositorySiteName": { + "description": "Name of the repository site.", + "type": "string", + "readOnly": true + }, + "usageState": { + "description": "State indicating whether the app has exceeded its quota usage. Read-only.", + "enum": [ + "Normal", + "Exceeded" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "UsageState", + "modelAsString": false + } + }, + "enabled": { + "description": "true if the app is enabled; otherwise, false. Setting this value to false disables the app (takes the app offline).", + "type": "boolean" + }, + "enabledHostNames": { + "description": "Enabled hostnames for the app.Hostnames need to be assigned (see HostNames) AND enabled. Otherwise,\nthe app is not served on those hostnames.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "availabilityState": { + "description": "Management information availability state for the app.", + "enum": [ + "Normal", + "Limited", + "DisasterRecoveryMode" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "SiteAvailabilityState", + "modelAsString": false + } + }, + "hostNameSslStates": { + "description": "Hostname SSL states are used to manage the SSL bindings for app's hostnames.", + "type": "array", + "items": { + "$ref": "./CommonDefinitions.json#/definitions/HostNameSslState" + } + }, + "serverFarmId": { + "description": "Resource ID of the associated App Service plan, formatted as: \"/subscriptions/{subscriptionID}/resourceGroups/{groupName}/providers/Microsoft.Web/serverfarms/{appServicePlanName}\".", + "type": "string" + }, + "reserved": { + "description": "true if reserved; otherwise, false.", + "default": false, + "type": "boolean", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "isXenon": { + "description": "Obsolete: Hyper-V sandbox.", + "default": false, + "type": "boolean", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "hyperV": { + "description": "Hyper-V sandbox.", + "default": false, + "type": "boolean", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "lastModifiedTimeUtc": { + "format": "date-time", + "description": "Last time the app was modified, in UTC. Read-only.", + "type": "string", + "readOnly": true + }, + "siteConfig": { + "$ref": "./CommonDefinitions.json#/definitions/SiteConfig", + "description": "Configuration of the app." + }, + "trafficManagerHostNames": { + "description": "Azure Traffic Manager hostnames associated with the app. Read-only.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "scmSiteAlsoStopped": { + "description": "true to stop SCM (KUDU) site when the app is stopped; otherwise, false. The default is false.", + "default": false, + "type": "boolean" + }, + "targetSwapSlot": { + "description": "Specifies which deployment slot this app will swap into. Read-only.", + "type": "string", + "readOnly": true + }, + "hostingEnvironmentProfile": { + "$ref": "./CommonDefinitions.json#/definitions/HostingEnvironmentProfile", + "description": "App Service Environment to use for the app.", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "clientAffinityEnabled": { + "description": "true to enable client affinity; false to stop sending session affinity cookies, which route client requests in the same session to the same instance. Default is true.", + "type": "boolean" + }, + "clientCertEnabled": { + "description": "true to enable client certificate authentication (TLS mutual authentication); otherwise, false. Default is false.", + "type": "boolean" + }, + "clientCertMode": { + "description": "This composes with ClientCertEnabled setting.\n- ClientCertEnabled: false means ClientCert is ignored.\n- ClientCertEnabled: true and ClientCertMode: Required means ClientCert is required.\n- ClientCertEnabled: true and ClientCertMode: Optional means ClientCert is optional or accepted.", + "enum": [ + "Required", + "Optional", + "OptionalInteractiveUser" + ], + "type": "string", + "x-ms-enum": { + "name": "ClientCertMode", + "modelAsString": false + } + }, + "clientCertExclusionPaths": { + "description": "client certificate authentication comma-separated exclusion paths", + "type": "string" + }, + "hostNamesDisabled": { + "description": "true to disable the public hostnames of the app; otherwise, false.\n If true, the app is only accessible via API management process.", + "type": "boolean" + }, + "customDomainVerificationId": { + "description": "Unique identifier that verifies the custom domains assigned to the app. Customer will add this id to a txt record for verification.", + "type": "string" + }, + "outboundIpAddresses": { + "description": "List of IP addresses that the app uses for outbound connections (e.g. database access). Includes VIPs from tenants that site can be hosted with current settings. Read-only.", + "type": "string", + "readOnly": true + }, + "possibleOutboundIpAddresses": { + "description": "List of IP addresses that the app uses for outbound connections (e.g. database access). Includes VIPs from all tenants except dataComponent. Read-only.", + "type": "string", + "readOnly": true + }, + "containerSize": { + "format": "int32", + "description": "Size of the function container.", + "type": "integer" + }, + "dailyMemoryTimeQuota": { + "format": "int32", + "description": "Maximum allowed daily memory-time quota (applicable on dynamic apps only).", + "type": "integer" + }, + "suspendedTill": { + "format": "date-time", + "description": "App suspended till in case memory-time quota is exceeded.", + "type": "string", + "readOnly": true + }, + "maxNumberOfWorkers": { + "format": "int32", + "description": "Maximum number of workers.\nThis only applies to Functions container.", + "type": "integer", + "readOnly": true + }, + "cloningInfo": { + "$ref": "./CommonDefinitions.json#/definitions/CloningInfo", + "description": "If specified during app creation, the app is cloned from a source app.", + "x-ms-mutability": [ + "create" + ] + }, + "resourceGroup": { + "description": "Name of the resource group the app belongs to. Read-only.", + "type": "string", + "readOnly": true + }, + "isDefaultContainer": { + "description": "true if the app is a default container; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "defaultHostName": { + "description": "Default hostname of the app. Read-only.", + "type": "string", + "readOnly": true + }, + "slotSwapStatus": { + "$ref": "./CommonDefinitions.json#/definitions/SlotSwapStatus", + "description": "Status of the last deployment slot swap operation.", + "readOnly": true + }, + "httpsOnly": { + "description": "HttpsOnly: configures a web site to accept only https requests. Issues redirect for\nhttp requests", + "type": "boolean" + }, + "redundancyMode": { + "description": "Site redundancy mode", + "enum": [ + "None", + "Manual", + "Failover", + "ActiveActive", + "GeoRedundant" + ], + "type": "string", + "x-ms-enum": { + "name": "RedundancyMode", + "modelAsString": false + } + }, + "inProgressOperationId": { + "format": "uuid", + "description": "Specifies an operation id if this site has a pending operation.", + "type": "string", + "readOnly": true, + "example": "00000000-0000-0000-0000-000000000000" + }, + "storageAccountRequired": { + "description": "Checks if Customer provided storage account is required", + "type": "boolean" + }, + "keyVaultReferenceIdentity": { + "description": "Identity to use for Key Vault Reference authentication.", + "type": "string" + }, + "virtualNetworkSubnetId": { + "description": "Azure Resource Manager ID of the Virtual network and subnet to be joined by Regional VNET Integration.\nThis must be of the form /subscriptions/{subscriptionName}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{vnetName}/subnets/{subnetName}", + "type": "string" + } + }, + "x-ms-client-flatten": true + }, + "identity": { + "$ref": "./CommonDefinitions.json#/definitions/ManagedServiceIdentity" + } + } + }, + "SitePhpErrorLogFlag": { + "description": "Used for getting PHP error logging flag.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "SitePhpErrorLogFlag resource specific properties", + "properties": { + "localLogErrors": { + "description": "Local log_errors setting.", + "type": "string" + }, + "masterLogErrors": { + "description": "Master log_errors setting.", + "type": "string" + }, + "localLogErrorsMaxLength": { + "description": "Local log_errors_max_len setting.", + "type": "string" + }, + "masterLogErrorsMaxLength": { + "description": "Master log_errors_max_len setting.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "SiteSourceControl": { + "description": "Source control configuration for an app.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "SiteSourceControl resource specific properties", + "properties": { + "repoUrl": { + "description": "Repository or source control URL.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "branch": { + "description": "Name of branch to use for deployment.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "isManualIntegration": { + "description": "true to limit to manual integration; false to enable continuous integration (which configures webhooks into online repos like GitHub).", + "type": "boolean", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "isGitHubAction": { + "description": "true if this is deployed via GitHub action.", + "type": "boolean", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "deploymentRollbackEnabled": { + "description": "true to enable deployment rollback; otherwise, false.", + "type": "boolean", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "isMercurial": { + "description": "true for a Mercurial repository; false for a Git repository.", + "type": "boolean", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "gitHubActionConfiguration": { + "$ref": "#/definitions/GitHubActionConfiguration", + "description": "If GitHub Action is selected, than the associated configuration." + } + }, + "x-ms-client-flatten": true + } + } + }, + "SlotConfigNames": { + "description": "Names for connection strings, application settings, and external Azure storage account configuration\nidentifiers to be marked as sticky to the deployment slot and not moved during a swap operation.\nThis is valid for all deployment slots in an app.", + "type": "object", + "properties": { + "connectionStringNames": { + "description": "List of connection string names.", + "type": "array", + "items": { + "type": "string" + } + }, + "appSettingNames": { + "description": "List of application settings names.", + "type": "array", + "items": { + "type": "string" + } + }, + "azureStorageConfigNames": { + "description": "List of external Azure storage account identifiers.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "SlotConfigNamesResource": { + "description": "Slot Config names azure resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/SlotConfigNames", + "description": "Core resource properties", + "x-ms-client-flatten": true + } + } + }, + "SlotDifference": { + "description": "A setting difference between two deployment slots of an app.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "SlotDifference resource specific properties", + "properties": { + "level": { + "description": "Level of the difference: Information, Warning or Error.", + "type": "string", + "readOnly": true + }, + "settingType": { + "description": "The type of the setting: General, AppSetting or ConnectionString.", + "type": "string", + "readOnly": true + }, + "diffRule": { + "description": "Rule that describes how to process the setting difference during a slot swap.", + "type": "string", + "readOnly": true + }, + "settingName": { + "description": "Name of the setting.", + "type": "string", + "readOnly": true + }, + "valueInCurrentSlot": { + "description": "Value of the setting in the current slot.", + "type": "string", + "readOnly": true + }, + "valueInTargetSlot": { + "description": "Value of the setting in the target slot.", + "type": "string", + "readOnly": true + }, + "description": { + "description": "Description of the setting difference.", + "type": "string", + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "SlotDifferenceCollection": { + "description": "Collection of slot differences.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/SlotDifference" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "SnapshotCollection": { + "description": "Collection of snapshots which can be used to revert an app to a previous time.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "./CommonDefinitions.json#/definitions/Snapshot" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "SnapshotRecoverySource": { + "description": "Specifies the web app that snapshot contents will be retrieved from.", + "type": "object", + "properties": { + "location": { + "description": "Geographical location of the source web app, e.g. SouthEastAsia, SouthCentralUS", + "type": "string" + }, + "id": { + "description": "ARM resource ID of the source app. \n/subscriptions/{subId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName} for production slots and \n/subscriptions/{subId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/slots/{slotName} for other slots.", + "type": "string" + } + } + }, + "SnapshotRestoreRequest": { + "description": "Details about app recovery operation.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "SnapshotRestoreRequest resource specific properties", + "required": [ + "overwrite" + ], + "properties": { + "snapshotTime": { + "description": "Point in time in which the app restore should be done, formatted as a DateTime string.", + "type": "string" + }, + "recoverySource": { + "$ref": "#/definitions/SnapshotRecoverySource", + "description": "Optional. Specifies the web app that snapshot contents will be retrieved from.\nIf empty, the targeted web app will be used as the source." + }, + "overwrite": { + "description": "If true the restore operation can overwrite source app; otherwise, false.", + "type": "boolean" + }, + "recoverConfiguration": { + "description": "If true, site configuration, in addition to content, will be reverted.", + "type": "boolean" + }, + "ignoreConflictingHostNames": { + "description": "If true, custom hostname conflicts will be ignored when recovering to a target web app.\nThis setting is only necessary when RecoverConfiguration is enabled.", + "type": "boolean" + }, + "useDRSecondary": { + "description": "If true, the snapshot is retrieved from DRSecondary endpoint.", + "type": "boolean" + } + }, + "x-ms-client-flatten": true + } + } + }, + "StorageMigrationOptions": { + "description": "Options for app content migration.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "StorageMigrationOptions resource specific properties", + "required": [ + "azurefilesConnectionString", + "azurefilesShare" + ], + "properties": { + "azurefilesConnectionString": { + "description": "AzureFiles connection string.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "azurefilesShare": { + "description": "AzureFiles share.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "switchSiteAfterMigration": { + "description": "trueif the app should be switched over; otherwise, false.", + "default": false, + "type": "boolean", + "x-ms-mutability": [ + "create" + ] + }, + "blockWriteAccessToSite": { + "description": "true if the app should be read only during copy operation; otherwise, false.", + "default": false, + "type": "boolean", + "x-ms-mutability": [ + "create" + ] + } + }, + "x-ms-client-flatten": true + } + } + }, + "StorageMigrationResponse": { + "description": "Response for a migration of app content request.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "StorageMigrationResponse resource specific properties", + "properties": { + "operationId": { + "description": "When server starts the migration process, it will return an operation ID identifying that particular migration operation.", + "type": "string", + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "SwiftVirtualNetwork": { + "description": "Swift Virtual Network Contract. This is used to enable the new Swift way of doing virtual network integration.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "SwiftVirtualNetwork resource specific properties", + "properties": { + "subnetResourceId": { + "description": "The Virtual Network subnet's resource ID. This is the subnet that this Web App will join. This subnet must have a delegation to Microsoft.Web/serverFarms defined first.", + "type": "string" + }, + "swiftSupported": { + "description": "A flag that specifies if the scale unit this Web App is on supports Swift integration.", + "type": "boolean" + } + }, + "x-ms-client-flatten": true + } + } + }, + "TokenStore": { + "description": "The configuration settings of the token store.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "TokenStore resource specific properties", + "properties": { + "enabled": { + "description": "true to durably store platform-specific security tokens that are obtained during login flows; otherwise, false.\n The default is false.", + "type": "boolean" + }, + "tokenRefreshExtensionHours": { + "format": "double", + "description": "The number of hours after session token expiration that a session token can be used to\ncall the token refresh API. The default is 72 hours.", + "type": "number" + }, + "fileSystem": { + "$ref": "#/definitions/FileSystemTokenStore", + "description": "The configuration settings of the storage of the tokens if a file system is used." + }, + "azureBlobStorage": { + "$ref": "#/definitions/BlobStorageTokenStore", + "description": "The configuration settings of the storage of the tokens if blob storage is used." + } + }, + "x-ms-client-flatten": true + } + } + }, + "TriggeredJobHistory": { + "description": "Triggered Web Job History. List of Triggered Web Job Run Information elements.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "TriggeredJobHistory resource specific properties", + "properties": { + "runs": { + "description": "List of triggered web job runs.", + "type": "array", + "items": { + "$ref": "#/definitions/TriggeredJobRun" + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "TriggeredJobHistoryCollection": { + "description": "Collection of Kudu continuous web job information elements.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/TriggeredJobHistory" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "TriggeredJobRun": { + "description": "Triggered Web Job Run Information.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "TriggeredJobRun resource specific properties", + "properties": { + "web_job_id": { + "description": "Job ID.", + "type": "string" + }, + "web_job_name": { + "description": "Job name.", + "type": "string" + }, + "status": { + "description": "Job status.", + "enum": [ + "Success", + "Failed", + "Error" + ], + "type": "string", + "x-ms-enum": { + "name": "TriggeredWebJobStatus", + "modelAsString": false + } + }, + "start_time": { + "format": "date-time", + "description": "Start time.", + "type": "string" + }, + "end_time": { + "format": "date-time", + "description": "End time.", + "type": "string" + }, + "duration": { + "description": "Job duration.", + "type": "string" + }, + "output_url": { + "description": "Output URL.", + "type": "string" + }, + "error_url": { + "description": "Error URL.", + "type": "string" + }, + "url": { + "description": "Job URL.", + "type": "string" + }, + "job_name": { + "description": "Job name.", + "type": "string" + }, + "trigger": { + "description": "Job trigger.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "TriggeredWebJob": { + "description": "Triggered Web Job Information.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "TriggeredWebJob resource specific properties", + "properties": { + "latest_run": { + "$ref": "#/definitions/TriggeredJobRun", + "description": "Latest job run information." + }, + "history_url": { + "description": "History URL.", + "type": "string" + }, + "scheduler_logs_url": { + "description": "Scheduler Logs URL.", + "type": "string" + }, + "run_command": { + "description": "Run command.", + "type": "string" + }, + "url": { + "description": "Job URL.", + "type": "string" + }, + "extra_info_url": { + "description": "Extra Info URL.", + "type": "string" + }, + "web_job_type": { + "description": "Job type.", + "enum": [ + "Continuous", + "Triggered" + ], + "type": "string", + "x-ms-enum": { + "name": "WebJobType", + "modelAsString": false + } + }, + "error": { + "description": "Error information.", + "type": "string" + }, + "using_sdk": { + "description": "Using SDK?", + "type": "boolean" + }, + "settings": { + "description": "Job settings.", + "type": "object", + "additionalProperties": { + "type": "object" + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "TriggeredWebJobCollection": { + "description": "Collection of Kudu continuous web job information elements.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/TriggeredWebJob" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "Twitter": { + "description": "The configuration settings of the Twitter provider.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "Twitter resource specific properties", + "properties": { + "enabled": { + "description": "false if the Twitter provider should not be enabled despite the set registration; otherwise, true.", + "type": "boolean" + }, + "registration": { + "$ref": "#/definitions/TwitterRegistration", + "description": "The configuration settings of the app registration for the Twitter provider." + } + }, + "x-ms-client-flatten": true + } + } + }, + "TwitterRegistration": { + "description": "The configuration settings of the app registration for the Twitter provider.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "TwitterRegistration resource specific properties", + "properties": { + "consumerKey": { + "description": "The OAuth 1.0a consumer key of the Twitter application used for sign-in.\nThis setting is required for enabling Twitter Sign-In.\nTwitter Sign-In documentation: https://dev.twitter.com/web/sign-in", + "type": "string" + }, + "consumerSecretSettingName": { + "description": "The app setting name that contains the OAuth 1.0a consumer secret of the Twitter\napplication used for sign-in.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "WebAppInstanceStatusCollection": { + "description": "Collection of app instances.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/WebSiteInstanceStatus" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "WebJob": { + "description": "Web Job Information.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "WebJob resource specific properties", + "properties": { + "run_command": { + "description": "Run command.", + "type": "string" + }, + "url": { + "description": "Job URL.", + "type": "string" + }, + "extra_info_url": { + "description": "Extra Info URL.", + "type": "string" + }, + "web_job_type": { + "description": "Job type.", + "enum": [ + "Continuous", + "Triggered" + ], + "type": "string", + "x-ms-enum": { + "name": "WebJobType", + "modelAsString": false + } + }, + "error": { + "description": "Error information.", + "type": "string" + }, + "using_sdk": { + "description": "Using SDK?", + "type": "boolean" + }, + "settings": { + "description": "Job settings.", + "type": "object", + "additionalProperties": { + "type": "object" + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "WebJobCollection": { + "description": "Collection of Kudu web job information elements.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/WebJob" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "WebSiteInstanceStatus": { + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "WebSiteInstanceStatus resource specific properties", + "properties": { + "state": { + "enum": [ + "READY", + "STOPPED", + "UNKNOWN" + ], + "type": "string", + "x-ms-enum": { + "name": "SiteRuntimeState", + "modelAsString": false + } + }, + "statusUrl": { + "description": "Link to the GetStatusApi in Kudu", + "type": "string" + }, + "detectorUrl": { + "description": "Link to the Diagnose and Solve Portal", + "type": "string" + }, + "consoleUrl": { + "description": "Link to the console to web app instance", + "type": "string" + }, + "healthCheckUrl": { + "description": "Link to the console to web app instance", + "type": "string" + }, + "containers": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/ContainerInfo" + } + } + }, + "x-ms-client-flatten": true + } + } + } + }, + "parameters": { + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Your Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).", + "required": true, + "type": "string" + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "Name of the resource group to which the resource belongs.", + "required": true, + "type": "string", + "maxLength": 90, + "minLength": 1, + "pattern": "^[-\\w\\._\\(\\)]+[^\\.]$", + "x-ms-parameter-location": "method" + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "API Version", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ApproveRejectSitePrivateEndpointConnection.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ApproveRejectSitePrivateEndpointConnection.json new file mode 100644 index 000000000000..bf47f2361d39 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ApproveRejectSitePrivateEndpointConnection.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testSite", + "privateEndpointConnectionName": "connection", + "api-version": "2020-12-01", + "privateEndpointWrapper": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by admin.", + "actionsRequired": "" + } + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by admin.", + "actionsRequired": "" + } + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + }, + "body": { + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by admin.", + "actionsRequired": "" + } + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ApproveRejectSitePrivateEndpointConnectionSlot.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ApproveRejectSitePrivateEndpointConnectionSlot.json new file mode 100644 index 000000000000..fe996294abe0 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ApproveRejectSitePrivateEndpointConnectionSlot.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testSite", + "slot": "stage", + "privateEndpointConnectionName": "connection", + "api-version": "2020-12-01", + "privateEndpointWrapper": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by admin.", + "actionsRequired": "" + } + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by admin.", + "actionsRequired": "" + } + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + }, + "body": { + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by admin.", + "actionsRequired": "" + } + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/CreateOrUpdateAppServicePlan.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/CreateOrUpdateAppServicePlan.json new file mode 100644 index 000000000000..31b9fc77d3f6 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/CreateOrUpdateAppServicePlan.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "name": "testsf6141", + "api-version": "2020-12-01", + "appServicePlan": { + "kind": "app", + "location": "East US", + "properties": {}, + "sku": { + "name": "P1", + "tier": "Premium", + "size": "P1", + "family": "P", + "capacity": 1 + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/serverfarms/testsf6141", + "name": "testsf6141", + "type": "Microsoft.Web/serverfarms", + "kind": "app", + "location": "East US", + "properties": { + "status": "Ready", + "maximumNumberOfWorkers": 20, + "geoRegion": "East US", + "numberOfSites": 4, + "reserved": false, + "targetWorkerCount": 0, + "targetWorkerSizeId": 0, + "provisioningState": "Succeeded" + }, + "sku": { + "name": "P1", + "tier": "Premium", + "size": "P1", + "family": "P", + "capacity": 1 + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/serverfarms/testsf6141/operationresults/F0C6B8EC-0D53-432C-913B-1CD9E8CDE3A0", + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/serverfarms/testsf6141/operationresults/F0C6B8EC-0D53-432C-913B-1CD9E8CDE3A0" + }, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/serverfarms/testsf6141", + "name": "testsf6141", + "type": "Microsoft.Web/serverfarms", + "kind": "app", + "location": "East US", + "properties": { + "status": "Ready", + "maximumNumberOfWorkers": 20, + "geoRegion": "East US", + "numberOfSites": 4, + "isSpot": false, + "reserved": false, + "targetWorkerCount": 0, + "targetWorkerSizeId": 0, + "provisioningState": "Succeeded" + }, + "sku": { + "name": "P1", + "tier": "Premium", + "size": "P1", + "family": "P", + "capacity": 1 + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/CreateOrUpdateCertificate.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/CreateOrUpdateCertificate.json new file mode 100644 index 000000000000..be10f8fda039 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/CreateOrUpdateCertificate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "name": "testc6282", + "api-version": "2020-12-01", + "certificateEnvelope": { + "location": "East US", + "properties": { + "hostNames": [ + "ServerCert" + ], + "password": "" + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/certificates/testc6282", + "name": "testc6282", + "type": "Microsoft.Web/certificates", + "location": "East US", + "properties": { + "friendlyName": "", + "subjectName": "ServerCert", + "hostNames": [ + "ServerCert" + ], + "issuer": "CACert", + "issueDate": "2015-11-12T23:40:25+00:00", + "expirationDate": "2039-12-31T23:59:59+00:00", + "thumbprint": "FE703D7411A44163B6D32B3AD9B03E175886EBFE" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/CreateOrUpdateStaticSite.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/CreateOrUpdateStaticSite.json new file mode 100644 index 000000000000..827e48c96d63 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/CreateOrUpdateStaticSite.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2020-12-01", + "staticSiteEnvelope": { + "location": "West US 2", + "properties": { + "repositoryUrl": "https://github.com/username/RepoName", + "branch": "master", + "repositoryToken": "repoToken123", + "buildProperties": { + "appLocation": "app", + "apiLocation": "api", + "appArtifactLocation": "build" + } + }, + "sku": { + "name": "Basic", + "tier": "Basic" + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Web/staticSites/testStaticSite0", + "name": "testStaticSite0", + "type": "Microsoft.Web/staticSites", + "location": "West US 2", + "properties": { + "defaultHostname": "happy-sea-15afae3e.azurestaticwebsites.net", + "repositoryUrl": "https://github.com/username/RepoName", + "branch": "demo", + "customDomains": [], + "privateEndpointConnections": [], + "contentDistributionEndpoint": "", + "keyVaultReferenceIdentity": "SystemAssigned", + "userProvidedFunctionApps": [], + "stagingEnvironmentPolicy": "Enabled", + "allowConfigFileUpdates": true + }, + "sku": { + "name": "Basic", + "tier": "Basic" + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + }, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Web/staticSites/testStaticSite0", + "name": "testStaticSite0", + "type": "Microsoft.Web/staticSites", + "location": "West US 2", + "properties": { + "defaultHostname": "happy-sea-15afae3e.azurestaticwebsites.net", + "repositoryUrl": "https://github.com/username/RepoName", + "branch": "demo", + "customDomains": [], + "privateEndpointConnections": [], + "contentDistributionEndpoint": "", + "keyVaultReferenceIdentity": "SystemAssigned", + "userProvidedFunctionApps": [], + "stagingEnvironmentPolicy": "Enabled", + "allowConfigFileUpdates": true + }, + "sku": { + "name": "Basic", + "tier": "Basic" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/CreateOrUpdateStaticSiteAppSettings.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/CreateOrUpdateStaticSiteAppSettings.json new file mode 100644 index 000000000000..ee0b91004247 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/CreateOrUpdateStaticSiteAppSettings.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2020-12-01", + "appSettings": { + "properties": { + "setting1": "someval", + "setting2": "someval2" + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "setting1": "someval", + "setting2": "someval2" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/CreateOrUpdateStaticSiteBuildAppSettings.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/CreateOrUpdateStaticSiteBuildAppSettings.json new file mode 100644 index 000000000000..0447c5d0ccae --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/CreateOrUpdateStaticSiteBuildAppSettings.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "environmentName": "12", + "api-version": "2020-12-01", + "appSettings": { + "properties": { + "setting1": "someval", + "setting2": "someval2" + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "setting1": "someval", + "setting2": "someval2" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/CreateOrUpdateStaticSiteBuildFunctionAppSettings.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/CreateOrUpdateStaticSiteBuildFunctionAppSettings.json new file mode 100644 index 000000000000..0447c5d0ccae --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/CreateOrUpdateStaticSiteBuildFunctionAppSettings.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "environmentName": "12", + "api-version": "2020-12-01", + "appSettings": { + "properties": { + "setting1": "someval", + "setting2": "someval2" + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "setting1": "someval", + "setting2": "someval2" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/CreateOrUpdateStaticSiteCustomDomain.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/CreateOrUpdateStaticSiteCustomDomain.json new file mode 100644 index 000000000000..8b9f4526f1c0 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/CreateOrUpdateStaticSiteCustomDomain.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "domainName": "custom.domain.net", + "api-version": "2020-12-01", + "staticSiteCustomDomainRequestPropertiesEnvelope": { + "properties": {} + } + }, + "responses": { + "200": { + "body": { + "properties": { + "domainName": "custom.domain.net", + "createdOn": "2020-03-04T17:33:11.641Z" + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + }, + "body": { + "properties": { + "domainName": "custom.domain.net", + "createdOn": "2020-03-04T17:33:11.641Z" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/CreateOrUpdateStaticSiteFunctionAppSettings.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/CreateOrUpdateStaticSiteFunctionAppSettings.json new file mode 100644 index 000000000000..ee0b91004247 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/CreateOrUpdateStaticSiteFunctionAppSettings.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2020-12-01", + "appSettings": { + "properties": { + "setting1": "someval", + "setting2": "someval2" + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "setting1": "someval", + "setting2": "someval2" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/CreateUserRolesInvitationLink.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/CreateUserRolesInvitationLink.json new file mode 100644 index 000000000000..04ed6f39e19f --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/CreateUserRolesInvitationLink.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2020-12-01", + "staticSiteUserRolesInvitationEnvelope": { + "properties": { + "domain": "happy-sea-15afae3e.azurestaticwebsites.net", + "provider": "aad", + "userDetails": "username", + "roles": "admin,contributor", + "numHoursToExpiration": 1 + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "invitationUrl": "https://happy-sea-15afae3e.azurestaticwebsites.net?invite=asdf", + "expiresOn": "2020-02-28T16:53:56.211Z" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/DeleteAppServicePlan.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/DeleteAppServicePlan.json new file mode 100644 index 000000000000..f51da46ca9af --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/DeleteAppServicePlan.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "name": "testsf6141", + "api-version": "2020-12-01" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/DeleteCertificate.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/DeleteCertificate.json new file mode 100644 index 000000000000..2f1a56c1f4a7 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/DeleteCertificate.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "name": "testc6282", + "api-version": "2020-12-01" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/DeleteSitePrivateEndpointConnection.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/DeleteSitePrivateEndpointConnection.json new file mode 100644 index 000000000000..b7e4d7ddc95e --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/DeleteSitePrivateEndpointConnection.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testSite", + "privateEndpointConnectionName": "connection", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "body": {} + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + }, + "body": {} + }, + "204": { + "body": {} + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/DeleteSitePrivateEndpointConnectionSlot.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/DeleteSitePrivateEndpointConnectionSlot.json new file mode 100644 index 000000000000..e5848bc4d3f9 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/DeleteSitePrivateEndpointConnectionSlot.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testSite", + "slot": "stage", + "privateEndpointConnectionName": "connection", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "body": {} + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + }, + "body": {} + }, + "204": { + "body": {} + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/DeleteStaticSite.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/DeleteStaticSite.json new file mode 100644 index 000000000000..bdf855c410f9 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/DeleteStaticSite.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2020-12-01" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/DeleteStaticSiteBuild.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/DeleteStaticSiteBuild.json new file mode 100644 index 000000000000..e576720ffc25 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/DeleteStaticSiteBuild.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "environmentName": "12", + "api-version": "2020-12-01" + }, + "responses": { + "200": {}, + "204": {}, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/DeleteStaticSiteCustomDomain.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/DeleteStaticSiteCustomDomain.json new file mode 100644 index 000000000000..feeafb19aa8f --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/DeleteStaticSiteCustomDomain.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "domainName": "custom.domain.net", + "api-version": "2020-12-01" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/DeleteStaticSiteUser.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/DeleteStaticSiteUser.json new file mode 100644 index 000000000000..17a3e680dd59 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/DeleteStaticSiteUser.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "authprovider": "aad", + "userid": "1234", + "api-version": "2020-12-01" + }, + "responses": { + "200": {} + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/DetachStaticSite.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/DetachStaticSite.json new file mode 100644 index 000000000000..bdf855c410f9 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/DetachStaticSite.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2020-12-01" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/DetachUserProvidedFunctionAppFromStaticSite.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/DetachUserProvidedFunctionAppFromStaticSite.json new file mode 100644 index 000000000000..920f3cab3f44 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/DetachUserProvidedFunctionAppFromStaticSite.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "functionAppName": "testFunctionApp", + "api-version": "2020-12-01" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/DetachUserProvidedFunctionAppFromStaticSiteBuild.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/DetachUserProvidedFunctionAppFromStaticSiteBuild.json new file mode 100644 index 000000000000..f964ddf69172 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/DetachUserProvidedFunctionAppFromStaticSiteBuild.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "environmentName": "12", + "functionAppName": "testFunctionApp", + "api-version": "2020-12-01" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_ExecuteSiteAnalysis.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_ExecuteSiteAnalysis.json new file mode 100644 index 000000000000..d27b2eb2bbd8 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_ExecuteSiteAnalysis.json @@ -0,0 +1,126 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "Sample-WestUSResourceGroup", + "siteName": "SampleApp", + "slot": "Production", + "diagnosticCategory": "availability", + "analysisName": "apprestartanalyses", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/Sample-WestUSResourceGroup/providers/Microsoft.Web/sites/SampleApp/diagnostics/availability/analyses/apprestartanalyses", + "name": "apprestartanalysis", + "properties": { + "startTime": "2017-11-05T22:50:00Z", + "endTime": "2017-11-06T22:50:00Z", + "abnormalTimePeriods": [ + { + "startTime": "2017-11-05T22:50:00Z", + "endTime": "2017-11-06T22:50:00Z", + "events": [ + { + "startTime": "2017-11-06T22:21:50Z", + "endTime": "2017-11-06T22:21:48Z", + "message": "Your application process was restarted as application environment variables changed. This can most likely occur due to update in app settings or swap operation. This event occurred multiple times during the day.", + "source": null, + "priority": 0, + "metaData": [ + [ + { + "name": "feature", + "value": "auditlogs" + }, + { + "name": "displayedName", + "value": "Check Audit Logs" + } + ] + ], + "type": "ServiceIncident", + "solutions": [] + } + ], + "solutions": [] + } + ], + "payload": [ + { + "source": "workerprocessrecycle", + "metrics": [ + { + "name": "All Application Stop Events", + "unit": null, + "startTime": "2017-11-05T22:50:00Z", + "endTime": "2017-11-06T22:50:00Z", + "timeGrain": "00:05:00", + "values": [ + { + "timestamp": "2017-11-06T00:00:00Z", + "roleInstance": "RD00155D3C15BE", + "total": 2 + }, + { + "timestamp": "2017-11-06T00:00:00Z", + "total": 2, + "isAggregated": true + }, + { + "timestamp": "2017-11-06T00:10:00Z", + "roleInstance": "RD00155D3C15C1", + "total": 2 + }, + { + "timestamp": "2017-11-06T00:10:00Z", + "roleInstance": "RD00155D3BE0FB", + "total": 2 + }, + { + "timestamp": "2017-11-06T00:10:00Z", + "total": 4, + "isAggregated": true + } + ] + }, + { + "name": "User Events", + "unit": "", + "startTime": "2017-11-05T22:50:00Z", + "endTime": "2017-11-06T22:50:00Z", + "timeGrain": "00:05:00", + "values": [ + { + "timestamp": "2017-11-06T22:20:00Z", + "total": 3, + "isAggregated": true + }, + { + "timestamp": "2017-11-06T22:20:00Z", + "roleInstance": "RD00155D3C09FC", + "total": 1 + }, + { + "timestamp": "2017-11-06T22:20:00Z", + "roleInstance": "RD00155D3C2ADC", + "total": 1 + }, + { + "timestamp": "2017-11-06T22:20:00Z", + "roleInstance": "RD00155D3C214E", + "total": 1 + } + ] + } + ], + "data": [], + "detectorMetaData": null + } + ], + "nonCorrelatedDetectors": [] + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_ExecuteSiteAnalysisSlot.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_ExecuteSiteAnalysisSlot.json new file mode 100644 index 000000000000..63497de730c8 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_ExecuteSiteAnalysisSlot.json @@ -0,0 +1,126 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "Sample-WestUSResourceGroup", + "siteName": "SampleApp", + "slot": "staging", + "diagnosticCategory": "availability", + "analysisName": "apprestartanalyses", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/Sample-WestUSResourceGroup/providers/Microsoft.Web/sites/SampleApp/slots/staging/diagnostics/availability/analyses/apprestartanalyses", + "name": "apprestartanalysis", + "properties": { + "startTime": "2017-11-05T22:50:00Z", + "endTime": "2017-11-06T22:50:00Z", + "abnormalTimePeriods": [ + { + "startTime": "2017-11-05T22:50:00Z", + "endTime": "2017-11-06T22:50:00Z", + "events": [ + { + "startTime": "2017-11-06T22:21:50Z", + "endTime": "2017-11-06T22:21:48Z", + "message": "Your application process was restarted as application environment variables changed. This can most likely occur due to update in app settings or swap operation. This event occurred multiple times during the day.", + "source": null, + "priority": 0, + "metaData": [ + [ + { + "name": "feature", + "value": "auditlogs" + }, + { + "name": "displayedName", + "value": "Check Audit Logs" + } + ] + ], + "type": "ServiceIncident", + "solutions": [] + } + ], + "solutions": [] + } + ], + "payload": [ + { + "source": "workerprocessrecycle", + "metrics": [ + { + "name": "All Application Stop Events", + "unit": null, + "startTime": "2017-11-05T22:50:00Z", + "endTime": "2017-11-06T22:50:00Z", + "timeGrain": "00:05:00", + "values": [ + { + "timestamp": "2017-11-06T00:00:00Z", + "roleInstance": "RD00155D3C15BE", + "total": 2 + }, + { + "timestamp": "2017-11-06T00:00:00Z", + "total": 2, + "isAggregated": true + }, + { + "timestamp": "2017-11-06T00:10:00Z", + "roleInstance": "RD00155D3C15C1", + "total": 2 + }, + { + "timestamp": "2017-11-06T00:10:00Z", + "roleInstance": "RD00155D3BE0FB", + "total": 2 + }, + { + "timestamp": "2017-11-06T00:10:00Z", + "total": 4, + "isAggregated": true + } + ] + }, + { + "name": "User Events", + "unit": "", + "startTime": "2017-11-05T22:50:00Z", + "endTime": "2017-11-06T22:50:00Z", + "timeGrain": "00:05:00", + "values": [ + { + "timestamp": "2017-11-06T22:20:00Z", + "total": 3, + "isAggregated": true + }, + { + "timestamp": "2017-11-06T22:20:00Z", + "roleInstance": "RD00155D3C09FC", + "total": 1 + }, + { + "timestamp": "2017-11-06T22:20:00Z", + "roleInstance": "RD00155D3C2ADC", + "total": 1 + }, + { + "timestamp": "2017-11-06T22:20:00Z", + "roleInstance": "RD00155D3C214E", + "total": 1 + } + ] + } + ], + "data": [], + "detectorMetaData": null + } + ], + "nonCorrelatedDetectors": [] + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_ExecuteSiteDetector.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_ExecuteSiteDetector.json new file mode 100644 index 000000000000..9ccae23ddb1c --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_ExecuteSiteDetector.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "Sample-WestUSResourceGroup", + "siteName": "SampleApp", + "slot": "Production", + "diagnosticCategory": "availability", + "detectorName": "sitecrashes", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/Sample-WestUSResourceGroup/providers/Microsoft.Web/sites/SampleApp/diagnostics/availability/detectors/sitecrashes", + "name": "sitecrashes", + "properties": { + "startTime": "2017-11-05T22:50:00Z", + "endTime": "2017-11-06T22:50:00Z", + "abnormalTimePeriods": [ + { + "startTime": "2017-11-05T22:50:00Z", + "endTime": "2017-11-06T22:50:00Z", + "solutions": [] + } + ] + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_ExecuteSiteDetectorSlot.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_ExecuteSiteDetectorSlot.json new file mode 100644 index 000000000000..94877dc1e054 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_ExecuteSiteDetectorSlot.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "Sample-WestUSResourceGroup", + "siteName": "SampleApp", + "slot": "staging", + "diagnosticCategory": "availability", + "detectorName": "sitecrashes", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/Sample-WestUSResourceGroup/providers/Microsoft.Web/sites/SampleApp/slots/staging/diagnostics/availability/detectors/sitecrashes", + "name": "sitecrashes", + "properties": { + "startTime": "2017-11-05T22:50:00Z", + "endTime": "2017-11-06T22:50:00Z", + "abnormalTimePeriods": [ + { + "startTime": "2017-11-05T22:50:00Z", + "endTime": "2017-11-06T22:50:00Z", + "solutions": [] + } + ] + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_GetHostingEnvironmentDetectorResponse.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_GetHostingEnvironmentDetectorResponse.json new file mode 100644 index 000000000000..05c6cc182078 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_GetHostingEnvironmentDetectorResponse.json @@ -0,0 +1,133 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "Sample-WestUSResourceGroup", + "name": "SampleAppServiceEnvironment", + "detectorName": "runtimeavailability", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ef90e930-9d7f-4a60-8a99-748e0eea69de/resourceGroups/Build2015DemoRG/providers/Microsoft.Web/hostingEnvironments/SampleAppServiceEnvironment/detectors/runtimeavailability", + "name": "runtimeavailability", + "properties": { + "metadata": { + "description": "This detector analyzes all the requests to all applications running on this app service environment.", + "category": "Availability and Performance" + }, + "dataset": [ + { + "table": { + "tableName": "Table_0", + "columns": [ + { + "columnName": "PreciseTimeStamp", + "dataType": "DateTime", + "columnType": "datetime" + }, + { + "columnName": "count_Http2xx", + "dataType": "Int64", + "columnType": "long" + }, + { + "columnName": "count_Http3xx", + "dataType": "Int64", + "columnType": "long" + }, + { + "columnName": "count_Http4xx", + "dataType": "Int64", + "columnType": "long" + }, + { + "columnName": "count_Http5xx", + "dataType": "Int64", + "columnType": "long" + } + ], + "rows": [ + [ + "2018-03-27T00:25:00Z", + "772705", + "0", + "0", + "0" + ], + [ + "2018-03-27T00:30:00Z", + "787069", + "0", + "0", + "0" + ], + [ + "2018-03-27T00:35:00Z", + "781627", + "0", + "1", + "0" + ], + [ + "2018-03-27T00:40:00Z", + "785017", + "0", + "0", + "0" + ], + [ + "2018-03-27T00:45:00Z", + "783518", + "0", + "0", + "0" + ], + [ + "2018-03-27T00:50:00Z", + "785783", + "0", + "0", + "0" + ], + [ + "2018-03-27T00:55:00Z", + "772874", + "0", + "0", + "0" + ], + [ + "2018-03-27T01:00:00Z", + "787162", + "0", + "0", + "0" + ], + [ + "2018-03-27T01:05:00Z", + "782036", + "0", + "0", + "0" + ], + [ + "2018-03-27T01:10:00Z", + "784642", + "0", + "0", + "0" + ] + ] + }, + "renderingProperties": { + "title": "Requests by Status Code", + "description": "This detector breaks down the number of requests that your apps on this app service environment received for each status code." + } + } + ] + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_GetSiteAnalysis.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_GetSiteAnalysis.json new file mode 100644 index 000000000000..933fcff99259 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_GetSiteAnalysis.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "Sample-WestUSResourceGroup", + "siteName": "SampleApp", + "diagnosticCategory": "availability", + "analysisName": "appanalysis", + "slot": "Production", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/Sample-WestUSResourceGroup/providers/Microsoft.Web/sites/SampleApp/slots/staging/diagnostics/availability/analyses/appanalysis", + "name": "appanalysis", + "properties": { + "description": "Determine causes of availability loss as well as solutions for these problems" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_GetSiteAnalysisSlot.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_GetSiteAnalysisSlot.json new file mode 100644 index 000000000000..baf926866260 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_GetSiteAnalysisSlot.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "Sample-WestUSResourceGroup", + "siteName": "SampleApp", + "slot": "staging", + "diagnosticCategory": "availability", + "analysisName": "appanalysis", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/Sample-WestUSResourceGroup/providers/Microsoft.Web/sites/SampleApp/slots/staging/diagnostics/availability/analyses/appanalysis", + "name": "appanalysis", + "properties": { + "description": "Determine causes of availability loss as well as solutions for these problems" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_GetSiteDetector.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_GetSiteDetector.json new file mode 100644 index 000000000000..5c7acfbe328b --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_GetSiteDetector.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "Sample-WestUSResourceGroup", + "siteName": "SampleApp", + "slot": "Production", + "diagnosticCategory": "availability", + "detectorName": "sitecrashes", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ef90e930-9d7f-4a60-8a99-748e0eea69de/resourceGroups/Build2015DemoRG/providers/Microsoft.Web/sites/BuggyBakery/diagnostics/availability/detectors/sitecrashes", + "name": "sitecrashes", + "properties": { + "displayName": "Site Crash Events", + "description": null, + "rank": 9, + "isEnabled": true + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_GetSiteDetectorResponse.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_GetSiteDetectorResponse.json new file mode 100644 index 000000000000..0f7cbd867dd5 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_GetSiteDetectorResponse.json @@ -0,0 +1,134 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "Sample-WestUSResourceGroup", + "siteName": "SampleApp", + "slot": "staging", + "detectorName": "runtimeavailability", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ef90e930-9d7f-4a60-8a99-748e0eea69de/resourceGroups/Build2015DemoRG/providers/Microsoft.Web/sites/BuggyBakery/detectors/runtimeavailability", + "name": "runtimeavailability", + "properties": { + "metadata": { + "description": "This detector analyzes the requests to your application.", + "category": "Availability and Performance" + }, + "dataset": [ + { + "table": { + "tableName": "Table_0", + "columns": [ + { + "columnName": "PreciseTimeStamp", + "dataType": "DateTime", + "columnType": "datetime" + }, + { + "columnName": "count_Http2xx", + "dataType": "Int64", + "columnType": "long" + }, + { + "columnName": "count_Http3xx", + "dataType": "Int64", + "columnType": "long" + }, + { + "columnName": "count_Http4xx", + "dataType": "Int64", + "columnType": "long" + }, + { + "columnName": "count_Http5xx", + "dataType": "Int64", + "columnType": "long" + } + ], + "rows": [ + [ + "2018-03-27T00:25:00Z", + "772705", + "0", + "0", + "0" + ], + [ + "2018-03-27T00:30:00Z", + "787069", + "0", + "0", + "0" + ], + [ + "2018-03-27T00:35:00Z", + "781627", + "0", + "1", + "0" + ], + [ + "2018-03-27T00:40:00Z", + "785017", + "0", + "0", + "0" + ], + [ + "2018-03-27T00:45:00Z", + "783518", + "0", + "0", + "0" + ], + [ + "2018-03-27T00:50:00Z", + "785783", + "0", + "0", + "0" + ], + [ + "2018-03-27T00:55:00Z", + "772874", + "0", + "0", + "0" + ], + [ + "2018-03-27T01:00:00Z", + "787162", + "0", + "0", + "0" + ], + [ + "2018-03-27T01:05:00Z", + "782036", + "0", + "0", + "0" + ], + [ + "2018-03-27T01:10:00Z", + "784642", + "0", + "0", + "0" + ] + ] + }, + "renderingProperties": { + "title": "Requests by Status Code", + "description": "This detector breaks down the number of requests that your app received for each status code." + } + } + ] + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_GetSiteDetectorResponseSlot.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_GetSiteDetectorResponseSlot.json new file mode 100644 index 000000000000..1eccbf221636 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_GetSiteDetectorResponseSlot.json @@ -0,0 +1,134 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "Sample-WestUSResourceGroup", + "siteName": "SampleApp", + "slot": "staging", + "detectorName": "runtimeavailability", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ef90e930-9d7f-4a60-8a99-748e0eea69de/resourceGroups/Build2015DemoRG/providers/Microsoft.Web/sites/BuggyBakery/slots/staging/detectors/runtimeavailability", + "name": "runtimeavailability", + "properties": { + "metadata": { + "description": "This detector analyzes the requests to your application.", + "category": "Availability and Performance" + }, + "dataset": [ + { + "table": { + "tableName": "Table_0", + "columns": [ + { + "columnName": "PreciseTimeStamp", + "dataType": "DateTime", + "columnType": "datetime" + }, + { + "columnName": "count_Http2xx", + "dataType": "Int64", + "columnType": "long" + }, + { + "columnName": "count_Http3xx", + "dataType": "Int64", + "columnType": "long" + }, + { + "columnName": "count_Http4xx", + "dataType": "Int64", + "columnType": "long" + }, + { + "columnName": "count_Http5xx", + "dataType": "Int64", + "columnType": "long" + } + ], + "rows": [ + [ + "2018-03-27T00:25:00Z", + "772705", + "0", + "0", + "0" + ], + [ + "2018-03-27T00:30:00Z", + "787069", + "0", + "0", + "0" + ], + [ + "2018-03-27T00:35:00Z", + "781627", + "0", + "1", + "0" + ], + [ + "2018-03-27T00:40:00Z", + "785017", + "0", + "0", + "0" + ], + [ + "2018-03-27T00:45:00Z", + "783518", + "0", + "0", + "0" + ], + [ + "2018-03-27T00:50:00Z", + "785783", + "0", + "0", + "0" + ], + [ + "2018-03-27T00:55:00Z", + "772874", + "0", + "0", + "0" + ], + [ + "2018-03-27T01:00:00Z", + "787162", + "0", + "0", + "0" + ], + [ + "2018-03-27T01:05:00Z", + "782036", + "0", + "0", + "0" + ], + [ + "2018-03-27T01:10:00Z", + "784642", + "0", + "0", + "0" + ] + ] + }, + "renderingProperties": { + "title": "Requests by Status Code", + "description": "This detector breaks down the number of requests that your app received for each status code." + } + } + ] + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_GetSiteDetectorSlot.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_GetSiteDetectorSlot.json new file mode 100644 index 000000000000..3a7ae419a31c --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_GetSiteDetectorSlot.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "Sample-WestUSResourceGroup", + "siteName": "SampleApp", + "slot": "staging", + "diagnosticCategory": "availability", + "detectorName": "sitecrashes", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ef90e930-9d7f-4a60-8a99-748e0eea69de/resourceGroups/Build2015DemoRG/providers/Microsoft.Web/sites/BuggyBakery/slots/staging/diagnostics/availability/detectors/sitecrashes", + "name": "sitecrashes", + "properties": { + "displayName": "Site Crash Events", + "description": null, + "rank": 9, + "isEnabled": true + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_GetSiteDiagnosticCategory.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_GetSiteDiagnosticCategory.json new file mode 100644 index 000000000000..2036ca4cfc18 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_GetSiteDiagnosticCategory.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "Sample-WestUSResourceGroup", + "siteName": "SampleApp", + "slot": "Production", + "diagnosticCategory": "availability", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/Sample-WestUSResourceGroup/providers/Microsoft.Web/sites/SampleApp/diagnostics/availability", + "name": "availability", + "properties": { + "description": "Availability and Perfomance Diagnostics" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_GetSiteDiagnosticCategorySlot.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_GetSiteDiagnosticCategorySlot.json new file mode 100644 index 000000000000..ee7e75a70bd8 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_GetSiteDiagnosticCategorySlot.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "Sample-WestUSResourceGroup", + "siteName": "SampleApp", + "slot": "staging", + "diagnosticCategory": "availability", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/Sample-WestUSResourceGroup/providers/Microsoft.Web/sites/SampleApp/diagnostics/availability", + "name": "availability", + "properties": { + "description": "Availability and Perfomance Diagnostics" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_ListHostingEnvironmentDetectorResponses.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_ListHostingEnvironmentDetectorResponses.json new file mode 100644 index 000000000000..1efae95bcb44 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_ListHostingEnvironmentDetectorResponses.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "Sample-WestUSResourceGroup", + "name": "SampleAppServiceEnvironment", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/Sample-WestUSResourceGroup/providers/Microsoft.Web/hostingEnvironments/SampleAppServiceEnvironment/detectors/runtimeavailability", + "name": "runtimeavailability", + "properties": { + "metadata": { + "description": "This detector analyzes all the requests to all applications running on this app service environment.", + "category": "Availability and Performance" + }, + "dataset": [] + } + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_ListSiteAnalyses.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_ListSiteAnalyses.json new file mode 100644 index 000000000000..8906468fd2c6 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_ListSiteAnalyses.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "Sample-WestUSResourceGroup", + "siteName": "SampleApp", + "slot": "Production", + "diagnosticCategory": "availability", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/Sample-WestUSResourceGroup/providers/Microsoft.Web/sites/SampleApp/diagnostics/availability/analyses/appanalysis", + "name": "appanalysis", + "properties": { + "description": "Determine causes of availability loss as well as solutions for these problems" + } + }, + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/Sample-WestUSResourceGroup/providers/Microsoft.Web/sites/SampleApp/diagnostics/availability/analyses/apprestartanalyses", + "name": "apprestartanalysis", + "properties": { + "description": "Find the reasons that your app restarted" + } + }, + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/Sample-WestUSResourceGroup/providers/Microsoft.Web/sites/SampleApp/diagnostics/availability/analyses/memoryanalysis", + "name": "memoryanalysis", + "properties": { + "description": "Detect issues with memory as well as suggest ways to troubleshoot memory problems" + } + }, + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/Sample-WestUSResourceGroup/providers/Microsoft.Web/sites/SampleApp/diagnostics/availability/analyses/tcpconnectionsanalysis", + "name": "tcpconnectionsanalysis", + "properties": { + "description": "Analyze port usage and find out if a high number of connections is causing problems for your web app" + } + }, + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/Sample-WestUSResourceGroup/providers/Microsoft.Web/sites/SampleApp/diagnostics/availability/analyses/perfanalysis", + "name": "perfanalysis", + "properties": { + "description": "Determine causes of performance degredation as well as solutions for these problems" + } + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_ListSiteAnalysesSlot.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_ListSiteAnalysesSlot.json new file mode 100644 index 000000000000..be7aabe037e2 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_ListSiteAnalysesSlot.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "Sample-WestUSResourceGroup", + "siteName": "SampleApp", + "slot": "staging", + "diagnosticCategory": "availability", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/Sample-WestUSResourceGroup/providers/Microsoft.Web/sites/SampleApp/slots/staging/diagnostics/availability/analyses/appanalysis", + "name": "appanalysis", + "properties": { + "description": "Determine causes of availability loss as well as solutions for these problems" + } + }, + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/Sample-WestUSResourceGroup/providers/Microsoft.Web/sites/SampleApp/slots/staging/diagnostics/availability/analyses/apprestartanalyses", + "name": "apprestartanalysis", + "properties": { + "description": "Find the reasons that your app restarted" + } + }, + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/Sample-WestUSResourceGroup/providers/Microsoft.Web/sites/SampleApp/slots/staging/diagnostics/availability/analyses/memoryanalysis", + "name": "memoryanalysis", + "properties": { + "description": "Detect issues with memory as well as suggest ways to troubleshoot memory problems" + } + }, + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/Sample-WestUSResourceGroup/providers/Microsoft.Web/sites/SampleApp/slots/staging/diagnostics/availability/analyses/tcpconnectionsanalysis", + "name": "tcpconnectionsanalysis", + "properties": { + "description": "Analyze port usage and find out if a high number of connections is causing problems for your web app" + } + }, + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/Sample-WestUSResourceGroup/providers/Microsoft.Web/sites/SampleApp/slots/staging/diagnostics/availability/analyses/perfanalysis", + "name": "perfanalysis", + "properties": { + "description": "Determine causes of performance degredation as well as solutions for these problems" + } + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_ListSiteDetectorResponses.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_ListSiteDetectorResponses.json new file mode 100644 index 000000000000..9ff375dd9e4a --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_ListSiteDetectorResponses.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "Sample-WestUSResourceGroup", + "siteName": "SampleApp", + "slot": "staging", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/Sample-WestUSResourceGroup/providers/Microsoft.Web/sites/SampleApp/detectors/runtimeavailability", + "name": "runtimeavailability", + "properties": { + "metadata": { + "description": "This detector analyzes the requests to your application.", + "category": "Availability and Performance" + }, + "dataset": [] + } + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_ListSiteDetectorResponsesSlot.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_ListSiteDetectorResponsesSlot.json new file mode 100644 index 000000000000..10101b8b9a26 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_ListSiteDetectorResponsesSlot.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "Sample-WestUSResourceGroup", + "siteName": "SampleApp", + "slot": "staging", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/Sample-WestUSResourceGroup/providers/Microsoft.Web/sites/SampleApp/slots/staging/detectors/runtimeavailability", + "name": "runtimeavailability", + "properties": { + "metadata": { + "description": "This detector analyzes the requests to your application.", + "category": "Availability and Performance" + }, + "dataset": [] + } + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_ListSiteDetectors.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_ListSiteDetectors.json new file mode 100644 index 000000000000..3e2d97930c7a --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_ListSiteDetectors.json @@ -0,0 +1,198 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "Sample-WestUSResourceGroup", + "siteName": "SampleApp", + "slot": "Production", + "diagnosticCategory": "availability", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/ef90e930-9d7f-4a60-8a99-748e0eea69de/resourceGroups/Build2015DemoRG/providers/Microsoft.Web/sites/BuggyBakery/diagnostics/availability/detectors/servicehealth", + "name": "servicehealth", + "properties": { + "displayName": "Service Health", + "description": null, + "rank": 1, + "isEnabled": true + } + }, + { + "id": "/subscriptions/ef90e930-9d7f-4a60-8a99-748e0eea69de/resourceGroups/Build2015DemoRG/providers/Microsoft.Web/sites/BuggyBakery/diagnostics/availability/detectors/siteswap", + "name": "siteswap", + "properties": { + "displayName": "Site Swap Operations", + "description": null, + "rank": 8, + "isEnabled": true + } + }, + { + "id": "/subscriptions/ef90e930-9d7f-4a60-8a99-748e0eea69de/resourceGroups/Build2015DemoRG/providers/Microsoft.Web/sites/BuggyBakery/diagnostics/availability/detectors/sitecrashes", + "name": "sitecrashes", + "properties": { + "displayName": "Site Crash Events", + "description": null, + "rank": 9, + "isEnabled": true + } + }, + { + "id": "/subscriptions/ef90e930-9d7f-4a60-8a99-748e0eea69de/resourceGroups/Build2015DemoRG/providers/Microsoft.Web/sites/BuggyBakery/diagnostics/availability/detectors/deployment", + "name": "deployment", + "properties": { + "displayName": "Site Deployments", + "description": null, + "rank": 7, + "isEnabled": true + } + }, + { + "id": "/subscriptions/ef90e930-9d7f-4a60-8a99-748e0eea69de/resourceGroups/Build2015DemoRG/providers/Microsoft.Web/sites/BuggyBakery/diagnostics/availability/detectors/sitecpuanalysis", + "name": "sitecpuanalysis", + "properties": { + "displayName": "CPU Analysis", + "description": null, + "rank": 3, + "isEnabled": true + } + }, + { + "id": "/subscriptions/ef90e930-9d7f-4a60-8a99-748e0eea69de/resourceGroups/Build2015DemoRG/providers/Microsoft.Web/sites/BuggyBakery/diagnostics/availability/detectors/sitememoryanalysis", + "name": "sitememoryanalysis", + "properties": { + "displayName": "Physical Memory Analysis", + "description": null, + "rank": 3, + "isEnabled": true + } + }, + { + "id": "/subscriptions/ef90e930-9d7f-4a60-8a99-748e0eea69de/resourceGroups/Build2015DemoRG/providers/Microsoft.Web/sites/BuggyBakery/diagnostics/availability/detectors/committedmemoryusage", + "name": "committedmemoryusage", + "properties": { + "displayName": "Committed Memory Usage", + "description": null, + "rank": 7, + "isEnabled": true + } + }, + { + "id": "/subscriptions/ef90e930-9d7f-4a60-8a99-748e0eea69de/resourceGroups/Build2015DemoRG/providers/Microsoft.Web/sites/BuggyBakery/diagnostics/availability/detectors/pagefileoperations", + "name": "pagefileoperations", + "properties": { + "displayName": "Page File Operations", + "description": null, + "rank": 3, + "isEnabled": true + } + }, + { + "id": "/subscriptions/ef90e930-9d7f-4a60-8a99-748e0eea69de/resourceGroups/Build2015DemoRG/providers/Microsoft.Web/sites/BuggyBakery/diagnostics/availability/detectors/siterestartuserinitiated", + "name": "siterestartuserinitiated", + "properties": { + "displayName": "User Initiated Site Restarts", + "description": null, + "rank": 14, + "isEnabled": true + } + }, + { + "id": "/subscriptions/ef90e930-9d7f-4a60-8a99-748e0eea69de/resourceGroups/Build2015DemoRG/providers/Microsoft.Web/sites/BuggyBakery/diagnostics/availability/detectors/siterestartsettingupdate", + "name": "siterestartsettingupdate", + "properties": { + "displayName": "Config Update Site Restarts", + "description": null, + "rank": 12, + "isEnabled": true + } + }, + { + "id": "/subscriptions/ef90e930-9d7f-4a60-8a99-748e0eea69de/resourceGroups/Build2015DemoRG/providers/Microsoft.Web/sites/BuggyBakery/diagnostics/availability/detectors/frebanalysis", + "name": "frebanalysis", + "properties": { + "displayName": "Freb Logs Analysis", + "description": null, + "rank": 6, + "isEnabled": true + } + }, + { + "id": "/subscriptions/ef90e930-9d7f-4a60-8a99-748e0eea69de/resourceGroups/Build2015DemoRG/providers/Microsoft.Web/sites/BuggyBakery/diagnostics/availability/detectors/workeravailability", + "name": "workeravailability", + "properties": { + "displayName": "Worker Availability", + "description": null, + "rank": 11, + "isEnabled": true + } + }, + { + "id": "/subscriptions/ef90e930-9d7f-4a60-8a99-748e0eea69de/resourceGroups/Build2015DemoRG/providers/Microsoft.Web/sites/BuggyBakery/diagnostics/availability/detectors/sitelatency", + "name": "sitelatency", + "properties": { + "displayName": "Site Latency", + "description": null, + "rank": 1005, + "isEnabled": false + } + }, + { + "id": "/subscriptions/ef90e930-9d7f-4a60-8a99-748e0eea69de/resourceGroups/Build2015DemoRG/providers/Microsoft.Web/sites/BuggyBakery/diagnostics/availability/detectors/threadcount", + "name": "threadcount", + "properties": { + "displayName": "Thread Count", + "description": null, + "rank": 23, + "isEnabled": true + } + }, + { + "id": "/subscriptions/ef90e930-9d7f-4a60-8a99-748e0eea69de/resourceGroups/Build2015DemoRG/providers/Microsoft.Web/sites/BuggyBakery/diagnostics/availability/detectors/failedrequestsperuri", + "name": "failedrequestsperuri", + "properties": { + "displayName": "Failed Requests Per URI", + "description": null, + "rank": 998, + "isEnabled": true + } + }, + { + "id": "/subscriptions/ef90e930-9d7f-4a60-8a99-748e0eea69de/resourceGroups/Build2015DemoRG/providers/Microsoft.Web/sites/BuggyBakery/diagnostics/availability/detectors/autoheal", + "name": "autoheal", + "properties": { + "displayName": "AutoHeal", + "description": null, + "rank": 21, + "isEnabled": true + } + }, + { + "id": "/subscriptions/ef90e930-9d7f-4a60-8a99-748e0eea69de/resourceGroups/Build2015DemoRG/providers/Microsoft.Web/sites/BuggyBakery/diagnostics/availability/detectors/loganalyzer", + "name": "loganalyzer", + "properties": { + "displayName": "PHP Log Analyzer", + "description": null, + "rank": 26, + "isEnabled": true + } + }, + { + "id": "/subscriptions/ef90e930-9d7f-4a60-8a99-748e0eea69de/resourceGroups/Build2015DemoRG/providers/Microsoft.Web/sites/BuggyBakery/diagnostics/availability/detectors/aspnetcore", + "name": "aspnetcore", + "properties": { + "displayName": "ASP.NET Core", + "description": null, + "rank": 5, + "isEnabled": true + } + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_ListSiteDetectorsSlot.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_ListSiteDetectorsSlot.json new file mode 100644 index 000000000000..6fcd1edd6964 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_ListSiteDetectorsSlot.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "Sample-WestUSResourceGroup", + "siteName": "SampleApp", + "slot": "staging", + "diagnosticCategory": "availability", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/ef90e930-9d7f-4a60-8a99-748e0eea69de/resourceGroups/Build2015DemoRG/providers/Microsoft.Web/sites/BuggyBakery/slots/staging/diagnostics/availability/detectors/servicehealth", + "name": "servicehealth", + "properties": { + "displayName": "Service Health", + "description": null, + "rank": 1, + "isEnabled": true + } + }, + { + "id": "/subscriptions/ef90e930-9d7f-4a60-8a99-748e0eea69de/resourceGroups/Build2015DemoRG/providers/Microsoft.Web/sites/BuggyBakery/slots/staging/diagnostics/availability/detectors/siteswap", + "name": "siteswap", + "properties": { + "displayName": "Site Swap Operations", + "description": null, + "rank": 8, + "isEnabled": true + } + }, + { + "id": "/subscriptions/ef90e930-9d7f-4a60-8a99-748e0eea69de/resourceGroups/Build2015DemoRG/providers/Microsoft.Web/sites/BuggyBakery/slots/staging/diagnostics/availability/detectors/sitecrashes", + "name": "sitecrashes", + "properties": { + "displayName": "Site Crash Events", + "description": null, + "rank": 9, + "isEnabled": true + } + }, + { + "id": "/subscriptions/ef90e930-9d7f-4a60-8a99-748e0eea69de/resourceGroups/Build2015DemoRG/providers/Microsoft.Web/sites/BuggyBakery/slots/staging/diagnostics/availability/detectors/deployment", + "name": "deployment", + "properties": { + "displayName": "Site Deployments", + "description": null, + "rank": 7, + "isEnabled": true + } + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_ListSiteDiagnosticCategories.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_ListSiteDiagnosticCategories.json new file mode 100644 index 000000000000..3d8ca9d0a5bf --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_ListSiteDiagnosticCategories.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "Sample-WestUSResourceGroup", + "siteName": "SampleApp", + "slot": "Production", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/Sample-WestUSResourceGroup/providers/Microsoft.Web/sites/SampleApp/diagnostics/availability", + "name": "availability", + "properties": { + "description": "Availability and Perfomance Diagnostics" + } + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_ListSiteDiagnosticCategoriesSlot.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_ListSiteDiagnosticCategoriesSlot.json new file mode 100644 index 000000000000..97b708c4fbf3 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/Diagnostics_ListSiteDiagnosticCategoriesSlot.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "Sample-WestUSResourceGroup", + "siteName": "SampleApp", + "slot": "staging", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/Sample-WestUSResourceGroup/providers/Microsoft.Web/sites/SampleApp/slots/staging/diagnostics/availability", + "name": "availability", + "properties": { + "description": "Availability and Perfomance Diagnostics" + } + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GenerateGithubAccessTokenForAppserviceCLIAsync.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GenerateGithubAccessTokenForAppserviceCLIAsync.json new file mode 100644 index 000000000000..b6570eed38a5 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GenerateGithubAccessTokenForAppserviceCLIAsync.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "api-version": "2020-12-01", + "request": { + "code": "somecode", + "state": "somestate" + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "accessToken": "githubaccesstoken", + "scope": "repo", + "tokenType": "bearer", + "gotToken": false, + "errorMessage": "The code passed is incorrect or expired." + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GenerateStaticSiteWorkflowPreview.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GenerateStaticSiteWorkflowPreview.json new file mode 100644 index 000000000000..c1c6b0e07670 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GenerateStaticSiteWorkflowPreview.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "location": "West US 2", + "api-version": "2020-12-01", + "staticSitesWorkflowPreviewRequest": { + "properties": { + "repositoryUrl": "https://github.com/username/RepoName", + "branch": "master", + "buildProperties": { + "appLocation": "app", + "apiLocation": "api", + "appArtifactLocation": "build" + } + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "path": ".github/workflows/azure-static-web-apps-.yml", + "contents": "base64encodedworkflowcontentspreview" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetAllStaticSites.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetAllStaticSites.json new file mode 100644 index 000000000000..d14115667037 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetAllStaticSites.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Web/staticSites/testStaticSite0", + "name": "testStaticSite0", + "type": "Microsoft.Web/staticSites", + "location": "West US 2", + "properties": { + "defaultHostname": "happy-sea-15afae3e.azurestaticwebsites.net", + "repositoryUrl": "https://github.com/username/repo", + "branch": "demo", + "customDomains": [], + "privateEndpointConnections": [], + "contentDistributionEndpoint": "", + "keyVaultReferenceIdentity": "SystemAssigned", + "userProvidedFunctionApps": [], + "stagingEnvironmentPolicy": "Enabled", + "allowConfigFileUpdates": true + }, + "sku": { + "name": "Standard", + "tier": "Standard" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetAppServicePlan.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetAppServicePlan.json new file mode 100644 index 000000000000..58cc2ffadba9 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetAppServicePlan.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "name": "testsf6141", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/serverfarms/testsf6141", + "name": "testsf6141", + "type": "Microsoft.Web/serverfarms", + "kind": "app", + "location": "East US", + "properties": { + "status": "Ready", + "maximumNumberOfWorkers": 20, + "geoRegion": "East US", + "numberOfSites": 4, + "isSpot": false, + "reserved": false, + "targetWorkerCount": 0, + "targetWorkerSizeId": 0, + "provisioningState": "Succeeded" + }, + "sku": { + "name": "P1", + "tier": "Premium", + "size": "P1", + "family": "P", + "capacity": 1 + } + } + }, + "404": {} + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetCertificate.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetCertificate.json new file mode 100644 index 000000000000..2efe89c99861 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetCertificate.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "name": "testc6282", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/certificates/testc6282", + "name": "testc6282", + "type": "Microsoft.Web/certificates", + "location": "East US", + "properties": { + "friendlyName": "", + "subjectName": "ServerCert", + "hostNames": [ + "ServerCert" + ], + "issuer": "CACert", + "issueDate": "2015-11-12T23:40:25+00:00", + "expirationDate": "2039-12-31T23:59:59+00:00", + "thumbprint": "FE703D7411A44163B6D32B3AD9B03E175886EBFE" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetDeletedWebApp.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetDeletedWebApp.json new file mode 100644 index 000000000000..9ef7fde6ac0a --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetDeletedWebApp.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "deletedSiteId": "9", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "name": "wussite6", + "type": "Microsoft.Web/deletedSites", + "properties": { + "deletedSiteId": 9, + "deletedTimestamp": "2019-05-09T22:29:05.1337007", + "subscription": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroup": "rg1", + "deletedSiteName": "wussite6", + "slot": "Production", + "kind": "app", + "geoRegionName": "West US 2" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetDeletedWebAppByLocation.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetDeletedWebAppByLocation.json new file mode 100644 index 000000000000..bb8fd89471f2 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetDeletedWebAppByLocation.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "location": "West US 2", + "deletedSiteId": "9", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "name": "wussite6", + "type": "Microsoft.Web/locations/deletedSites", + "properties": { + "deletedSiteId": 9, + "deletedTimestamp": "2019-05-09T22:29:05.1337007", + "subscription": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroup": "rg1", + "deletedSiteName": "wussite6", + "slot": "Production", + "kind": "app", + "geoRegionName": "West US 2" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetDeletedWebAppSnapshots.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetDeletedWebAppSnapshots.json new file mode 100644 index 000000000000..e259ffe98785 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetDeletedWebAppSnapshots.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "deletedSiteId": "9", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": [ + { + "name": "wussite6", + "type": "Microsoft.Web/locations/deletedSites", + "properties": { + "time": "2019-05-09T22:29:05.1337007" + } + } + ] + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetFunctionAppStacks.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetFunctionAppStacks.json new file mode 100644 index 000000000000..77933ffef98a --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetFunctionAppStacks.json @@ -0,0 +1,779 @@ +{ + "parameters": { + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/providers/Microsoft.Web/functionAppStacks/dotnet", + "name": "dotnet", + "type": "Microsoft.Web/functionAppStacks", + "properties": { + "displayText": ".NET", + "value": "dotnet", + "preferredOs": "Windows", + "majorVersions": [ + { + "displayText": ".NET Core 3", + "value": "3", + "minorVersions": [ + { + "displayText": ".NET Core 3.1", + "value": "3.1", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "3.1", + "appInsightsSettings": { + "isSupported": true + }, + "remoteDebuggingSupported": false, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.1.301" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "dotnet" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": true + }, + "supportedFunctionsExtensionVersions": [ + "~3" + ] + }, + "linuxRuntimeSettings": { + "runtimeVersion": "dotnet|3.1", + "appInsightsSettings": { + "isSupported": true + }, + "remoteDebuggingSupported": false, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.1.301" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "dotnet" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": false, + "linuxFxVersion": "dotnet|3.1" + }, + "supportedFunctionsExtensionVersions": [ + "~3" + ] + } + } + } + ] + }, + { + "displayText": ".NET Core 2", + "value": "2", + "minorVersions": [ + { + "displayText": ".NET Core 2.2", + "value": "2.2", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "2.2", + "appInsightsSettings": { + "isSupported": true + }, + "remoteDebuggingSupported": false, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "2.2.207" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "dotnet" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": true + }, + "supportedFunctionsExtensionVersions": [ + "~2" + ] + }, + "linuxRuntimeSettings": { + "runtimeVersion": "dotnet|2.2", + "appInsightsSettings": { + "isSupported": true + }, + "remoteDebuggingSupported": false, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "2.2.207" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "dotnet" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": false, + "linuxFxVersion": "dotnet|2.2" + }, + "supportedFunctionsExtensionVersions": [ + "~2" + ] + } + } + } + ] + }, + { + "displayText": ".NET Framework 4", + "value": "2", + "minorVersions": [ + { + "displayText": ".NET Framework 4.7", + "value": "4.7", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "4.7", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": false + }, + "appSettingsDictionary": {}, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": true + }, + "supportedFunctionsExtensionVersions": [ + "~1" + ] + } + } + } + ] + } + ] + } + }, + { + "id": "/providers/Microsoft.Web/functionAppStacks/node", + "name": "node", + "type": "Microsoft.Web/functionAppStacks", + "properties": { + "displayText": "Node.js", + "value": "node", + "preferredOs": "Windows", + "majorVersions": [ + { + "displayText": "Node.js 14", + "value": "14", + "minorVersions": [ + { + "displayText": "Node.js 14 LTS", + "value": "14 LTS", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "~14", + "isPreview": true, + "isHidden": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "14.x" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "node", + "WEBSITE_NODE_DEFAULT_VERSION": "~14" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": true + }, + "supportedFunctionsExtensionVersions": [ + "~3" + ] + }, + "linuxRuntimeSettings": { + "runtimeVersion": "Node|14", + "isPreview": true, + "isHidden": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "14.x" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "node" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": false, + "linuxFxVersion": "Node|14" + }, + "supportedFunctionsExtensionVersions": [ + "~3" + ] + } + } + } + ] + }, + { + "displayText": "Node.js 12", + "value": "12", + "minorVersions": [ + { + "displayText": "Node.js 12 LTS", + "value": "12 LTS", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "~12", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "12.x" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "node", + "WEBSITE_NODE_DEFAULT_VERSION": "~12" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": true + }, + "supportedFunctionsExtensionVersions": [ + "~3" + ] + }, + "linuxRuntimeSettings": { + "runtimeVersion": "Node|12", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "12.x" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "node" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": false, + "linuxFxVersion": "Node|12" + }, + "supportedFunctionsExtensionVersions": [ + "~3" + ] + } + } + } + ] + }, + { + "displayText": "Node.js 10", + "value": "10", + "minorVersions": [ + { + "displayText": "Node.js 10 LTS", + "value": "10 LTS", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "~10", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "10.x" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "node", + "WEBSITE_NODE_DEFAULT_VERSION": "~10" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": true + }, + "supportedFunctionsExtensionVersions": [ + "~2", + "~3" + ] + }, + "linuxRuntimeSettings": { + "runtimeVersion": "Node|10", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "10.x" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "node" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": false, + "linuxFxVersion": "Node|10" + }, + "supportedFunctionsExtensionVersions": [ + "~2", + "~3" + ] + } + } + } + ] + }, + { + "displayText": "Node.js 8", + "value": "8", + "minorVersions": [ + { + "displayText": "Node.js 8 LTS", + "value": "8 LTS", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "~8", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8.x" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "node", + "WEBSITE_NODE_DEFAULT_VERSION": "~8" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": true + }, + "supportedFunctionsExtensionVersions": [ + "~2" + ] + } + } + } + ] + }, + { + "displayText": "Node.js 6", + "value": "6", + "minorVersions": [ + { + "displayText": "Node.js 6 LTS", + "value": "6 LTS", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "~6", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": false + }, + "appSettingsDictionary": { + "WEBSITE_NODE_DEFAULT_VERSION": "~6" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": true + }, + "supportedFunctionsExtensionVersions": [ + "~1" + ] + } + } + } + ] + } + ] + } + }, + { + "id": "/providers/Microsoft.Web/functionAppStacks/python", + "name": "python", + "type": "Microsoft.Web/functionAppStacks", + "properties": { + "displayText": "Python", + "value": "python", + "preferredOs": "Linux", + "majorVersions": [ + { + "displayText": "Python 3", + "value": "3", + "minorVersions": [ + { + "displayText": "Python 3.8", + "value": "3.8", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "Python|3.8", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.8" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "python" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": false, + "linuxFxVersion": "Python|3.8" + }, + "supportedFunctionsExtensionVersions": [ + "~3" + ] + } + } + }, + { + "displayText": "Python 3.7", + "value": "3.7", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "Python|3.7", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.7" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "python" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": false, + "linuxFxVersion": "Python|3.7" + }, + "supportedFunctionsExtensionVersions": [ + "~2", + "~3" + ] + } + } + }, + { + "displayText": "Python 3.6", + "value": "3.6", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "Python|3.6", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.6" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "python" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": false, + "linuxFxVersion": "Python|3.6" + }, + "supportedFunctionsExtensionVersions": [ + "~2", + "~3" + ] + } + } + } + ] + } + ] + } + }, + { + "id": "/providers/Microsoft.Web/functionAppStacks/java", + "name": "java", + "type": "Microsoft.Web/functionAppStacks", + "properties": { + "displayText": "Java", + "value": "java", + "preferredOs": "Windows", + "majorVersions": [ + { + "displayText": "Java 11", + "value": "11", + "minorVersions": [ + { + "displayText": "Java 11", + "value": "11.0", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "11", + "isAutoUpdate": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "11" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "java" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": true, + "javaVersion": "11" + }, + "supportedFunctionsExtensionVersions": [ + "~3" + ] + }, + "linuxRuntimeSettings": { + "runtimeVersion": "Java|11", + "isAutoUpdate": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "11" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "java" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": false, + "linuxFxVersion": "Java|11" + }, + "supportedFunctionsExtensionVersions": [ + "~3" + ] + } + } + } + ] + }, + { + "displayText": "Java 8", + "value": "8", + "minorVersions": [ + { + "displayText": "Java 8", + "value": "8.0", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8", + "isAutoUpdate": true, + "isDefault": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "java" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": true, + "javaVersion": "1.8" + }, + "supportedFunctionsExtensionVersions": [ + "~2", + "~3" + ] + }, + "linuxRuntimeSettings": { + "runtimeVersion": "Java|8", + "isAutoUpdate": true, + "isDefault": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "java" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": false, + "linuxFxVersion": "Java|8" + }, + "supportedFunctionsExtensionVersions": [ + "~3" + ] + } + } + } + ] + } + ] + } + }, + { + "id": "/providers/Microsoft.Web/functionAppStacks/powershell", + "name": "powershell", + "type": "Microsoft.Web/functionAppStacks", + "properties": { + "displayText": "PowerShell Core", + "value": "powershell", + "preferredOs": "Windows", + "majorVersions": [ + { + "displayText": "PowerShell 7", + "value": "7", + "minorVersions": [ + { + "displayText": "PowerShell 7.0", + "value": "7.0", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "~7", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": false + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "powershell" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": true, + "powerShellVersion": "~7" + }, + "supportedFunctionsExtensionVersions": [ + "~3" + ] + } + } + } + ] + }, + { + "displayText": "PowerShell Core 6", + "value": "6", + "minorVersions": [ + { + "displayText": "PowerShell Core 6.2", + "value": "6.2", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "~6", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": false + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "powershell" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": true, + "powerShellVersion": "~6" + }, + "isDeprecated": true, + "supportedFunctionsExtensionVersions": [ + "~2", + "~3" + ], + "endOfLifeDate": "2020-10-04T00:00:00+00:00" + } + } + } + ] + } + ] + } + }, + { + "id": "/providers/Microsoft.Web/functionAppStacks/custom", + "name": "custom", + "type": "Microsoft.Web/functionAppStacks", + "properties": { + "displayText": "Custom", + "value": "custom", + "preferredOs": "Windows", + "majorVersions": [ + { + "displayText": "Custom", + "value": "custom", + "minorVersions": [ + { + "displayText": "Custom Handler", + "value": "custom", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "custom", + "isPreview": true, + "appInsightsSettings": { + "isSupported": true + }, + "remoteDebuggingSupported": false, + "gitHubActionSettings": { + "isSupported": false + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "custom" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": true + }, + "supportedFunctionsExtensionVersions": [ + "~3", + "~2" + ] + }, + "linuxRuntimeSettings": { + "runtimeVersion": "", + "isPreview": true, + "appInsightsSettings": { + "isSupported": true + }, + "remoteDebuggingSupported": false, + "gitHubActionSettings": { + "isSupported": false + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "custom" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": false, + "linuxFxVersion": "" + }, + "supportedFunctionsExtensionVersions": [ + "~3", + "~2" + ] + } + } + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetFunctionAppStacksForLocation.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetFunctionAppStacksForLocation.json new file mode 100644 index 000000000000..70187ddc5abd --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetFunctionAppStacksForLocation.json @@ -0,0 +1,786 @@ +{ + "parameters": { + "location": "westus", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/providers/Microsoft.Web/locations/functionAppStacks/dotnet", + "name": "dotnet", + "type": "Microsoft.Web/locations/functionAppStacks", + "location": "westus", + "properties": { + "displayText": ".NET", + "value": "dotnet", + "preferredOs": "Windows", + "majorVersions": [ + { + "displayText": ".NET Core 3", + "value": "3", + "minorVersions": [ + { + "displayText": ".NET Core 3.1", + "value": "3.1", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "3.1", + "appInsightsSettings": { + "isSupported": true + }, + "remoteDebuggingSupported": false, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.1.301" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "dotnet" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": true + }, + "supportedFunctionsExtensionVersions": [ + "~3" + ] + }, + "linuxRuntimeSettings": { + "runtimeVersion": "dotnet|3.1", + "appInsightsSettings": { + "isSupported": true + }, + "remoteDebuggingSupported": false, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.1.301" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "dotnet" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": false, + "linuxFxVersion": "dotnet|3.1" + }, + "supportedFunctionsExtensionVersions": [ + "~3" + ] + } + } + } + ] + }, + { + "displayText": ".NET Core 2", + "value": "2", + "minorVersions": [ + { + "displayText": ".NET Core 2.2", + "value": "2.2", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "2.2", + "appInsightsSettings": { + "isSupported": true + }, + "remoteDebuggingSupported": false, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "2.2.207" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "dotnet" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": true + }, + "supportedFunctionsExtensionVersions": [ + "~2" + ] + }, + "linuxRuntimeSettings": { + "runtimeVersion": "dotnet|2.2", + "appInsightsSettings": { + "isSupported": true + }, + "remoteDebuggingSupported": false, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "2.2.207" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "dotnet" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": false, + "linuxFxVersion": "dotnet|2.2" + }, + "supportedFunctionsExtensionVersions": [ + "~2" + ] + } + } + } + ] + }, + { + "displayText": ".NET Framework 4", + "value": "2", + "minorVersions": [ + { + "displayText": ".NET Framework 4.7", + "value": "4.7", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "4.7", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": false + }, + "appSettingsDictionary": {}, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": true + }, + "supportedFunctionsExtensionVersions": [ + "~1" + ] + } + } + } + ] + } + ] + } + }, + { + "id": "/providers/Microsoft.Web/locations/functionAppStacks/node", + "name": "node", + "type": "Microsoft.Web/locations/functionAppStacks", + "location": "westus", + "properties": { + "displayText": "Node.js", + "value": "node", + "preferredOs": "Windows", + "majorVersions": [ + { + "displayText": "Node.js 14", + "value": "14", + "minorVersions": [ + { + "displayText": "Node.js 14 LTS", + "value": "14 LTS", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "~14", + "isPreview": true, + "isHidden": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "14.x" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "node", + "WEBSITE_NODE_DEFAULT_VERSION": "~14" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": true + }, + "supportedFunctionsExtensionVersions": [ + "~3" + ] + }, + "linuxRuntimeSettings": { + "runtimeVersion": "Node|14", + "isPreview": true, + "isHidden": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "14.x" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "node" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": false, + "linuxFxVersion": "Node|14" + }, + "supportedFunctionsExtensionVersions": [ + "~3" + ] + } + } + } + ] + }, + { + "displayText": "Node.js 12", + "value": "12", + "minorVersions": [ + { + "displayText": "Node.js 12 LTS", + "value": "12 LTS", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "~12", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "12.x" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "node", + "WEBSITE_NODE_DEFAULT_VERSION": "~12" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": true + }, + "supportedFunctionsExtensionVersions": [ + "~3" + ] + }, + "linuxRuntimeSettings": { + "runtimeVersion": "Node|12", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "12.x" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "node" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": false, + "linuxFxVersion": "Node|12" + }, + "supportedFunctionsExtensionVersions": [ + "~3" + ] + } + } + } + ] + }, + { + "displayText": "Node.js 10", + "value": "10", + "minorVersions": [ + { + "displayText": "Node.js 10 LTS", + "value": "10 LTS", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "~10", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "10.x" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "node", + "WEBSITE_NODE_DEFAULT_VERSION": "~10" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": true + }, + "supportedFunctionsExtensionVersions": [ + "~2", + "~3" + ] + }, + "linuxRuntimeSettings": { + "runtimeVersion": "Node|10", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "10.x" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "node" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": false, + "linuxFxVersion": "Node|10" + }, + "supportedFunctionsExtensionVersions": [ + "~2", + "~3" + ] + } + } + } + ] + }, + { + "displayText": "Node.js 8", + "value": "8", + "minorVersions": [ + { + "displayText": "Node.js 8 LTS", + "value": "8 LTS", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "~8", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8.x" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "node", + "WEBSITE_NODE_DEFAULT_VERSION": "~8" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": true + }, + "supportedFunctionsExtensionVersions": [ + "~2" + ] + } + } + } + ] + }, + { + "displayText": "Node.js 6", + "value": "6", + "minorVersions": [ + { + "displayText": "Node.js 6 LTS", + "value": "6 LTS", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "~6", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": false + }, + "appSettingsDictionary": { + "WEBSITE_NODE_DEFAULT_VERSION": "~6" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": true + }, + "supportedFunctionsExtensionVersions": [ + "~1" + ] + } + } + } + ] + } + ] + } + }, + { + "id": "/providers/Microsoft.Web/locations/functionAppStacks/python", + "name": "python", + "type": "Microsoft.Web/locations/functionAppStacks", + "location": "westus", + "properties": { + "displayText": "Python", + "value": "python", + "preferredOs": "Linux", + "majorVersions": [ + { + "displayText": "Python 3", + "value": "3", + "minorVersions": [ + { + "displayText": "Python 3.8", + "value": "3.8", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "Python|3.8", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.8" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "python" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": false, + "linuxFxVersion": "Python|3.8" + }, + "supportedFunctionsExtensionVersions": [ + "~3" + ] + } + } + }, + { + "displayText": "Python 3.7", + "value": "3.7", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "Python|3.7", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.7" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "python" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": false, + "linuxFxVersion": "Python|3.7" + }, + "supportedFunctionsExtensionVersions": [ + "~2", + "~3" + ] + } + } + }, + { + "displayText": "Python 3.6", + "value": "3.6", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "Python|3.6", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.6" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "python" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": false, + "linuxFxVersion": "Python|3.6" + }, + "supportedFunctionsExtensionVersions": [ + "~2", + "~3" + ] + } + } + } + ] + } + ] + } + }, + { + "id": "/providers/Microsoft.Web/locations/functionAppStacks/java", + "name": "java", + "type": "Microsoft.Web/locations/functionAppStacks", + "location": "westus", + "properties": { + "displayText": "Java", + "value": "java", + "preferredOs": "Windows", + "majorVersions": [ + { + "displayText": "Java 11", + "value": "11", + "minorVersions": [ + { + "displayText": "Java 11", + "value": "11.0", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "11", + "isAutoUpdate": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "11" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "java" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": true, + "javaVersion": "11" + }, + "supportedFunctionsExtensionVersions": [ + "~3" + ] + }, + "linuxRuntimeSettings": { + "runtimeVersion": "Java|11", + "isAutoUpdate": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "11" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "java" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": false, + "linuxFxVersion": "Java|11" + }, + "supportedFunctionsExtensionVersions": [ + "~3" + ] + } + } + } + ] + }, + { + "displayText": "Java 8", + "value": "8", + "minorVersions": [ + { + "displayText": "Java 8", + "value": "8.0", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8", + "isAutoUpdate": true, + "isDefault": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "java" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": true, + "javaVersion": "1.8" + }, + "supportedFunctionsExtensionVersions": [ + "~2", + "~3" + ] + }, + "linuxRuntimeSettings": { + "runtimeVersion": "Java|8", + "isAutoUpdate": true, + "isDefault": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "java" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": false, + "linuxFxVersion": "Java|8" + }, + "supportedFunctionsExtensionVersions": [ + "~3" + ] + } + } + } + ] + } + ] + } + }, + { + "id": "/providers/Microsoft.Web/locations/functionAppStacks/powershell", + "name": "powershell", + "type": "Microsoft.Web/locations/functionAppStacks", + "location": "westus", + "properties": { + "displayText": "PowerShell Core", + "value": "powershell", + "preferredOs": "Windows", + "majorVersions": [ + { + "displayText": "PowerShell 7", + "value": "7", + "minorVersions": [ + { + "displayText": "PowerShell 7.0", + "value": "7.0", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "~7", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": false + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "powershell" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": true, + "powerShellVersion": "~7" + }, + "supportedFunctionsExtensionVersions": [ + "~3" + ] + } + } + } + ] + }, + { + "displayText": "PowerShell Core 6", + "value": "6", + "minorVersions": [ + { + "displayText": "PowerShell Core 6.2", + "value": "6.2", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "~6", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": false + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "powershell" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": true, + "powerShellVersion": "~6" + }, + "isDeprecated": true, + "supportedFunctionsExtensionVersions": [ + "~2", + "~3" + ], + "endOfLifeDate": "2020-10-04T00:00:00+00:00" + } + } + } + ] + } + ] + } + }, + { + "id": "/providers/Microsoft.Web/locations/functionAppStacks/custom", + "name": "custom", + "type": "Microsoft.Web/locations/functionAppStacks", + "location": "westus", + "properties": { + "displayText": "Custom", + "value": "custom", + "preferredOs": "Windows", + "majorVersions": [ + { + "displayText": "Custom", + "value": "custom", + "minorVersions": [ + { + "displayText": "Custom Handler", + "value": "custom", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "custom", + "isPreview": true, + "appInsightsSettings": { + "isSupported": true + }, + "remoteDebuggingSupported": false, + "gitHubActionSettings": { + "isSupported": false + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "custom" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": true + }, + "supportedFunctionsExtensionVersions": [ + "~3", + "~2" + ] + }, + "linuxRuntimeSettings": { + "runtimeVersion": "", + "isPreview": true, + "appInsightsSettings": { + "isSupported": true + }, + "remoteDebuggingSupported": false, + "gitHubActionSettings": { + "isSupported": false + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "custom" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": false, + "linuxFxVersion": "" + }, + "supportedFunctionsExtensionVersions": [ + "~3", + "~2" + ] + } + } + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetInboundNetworkDependenciesEndpoints.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetInboundNetworkDependenciesEndpoints.json new file mode 100644 index 000000000000..9266d2635efc --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetInboundNetworkDependenciesEndpoints.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "Sample-WestUSResourceGroup", + "name": "SampleAse", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "description": "App Service management", + "endpoints": [ + "70.37.57.58/32", + "157.55.208.185/32", + "23.102.188.65/32", + "191.236.154.88/32", + "52.174.22.21/32", + "13.94.149.179/32", + "13.94.143.126/32", + "13.94.141.115/32", + "52.178.195.197/32", + "52.178.190.65/32", + "52.178.184.149/32", + "52.178.177.147/32", + "13.75.127.117/32", + "40.83.125.161/32", + "40.83.121.56/32", + "40.83.120.64/32", + "52.187.56.50/32", + "52.187.63.37/32", + "52.187.59.251/32", + "52.187.63.19/32", + "52.165.158.140/32", + "52.165.152.214/32", + "52.165.154.193/32", + "52.165.153.122/32", + "104.44.129.255/32", + "104.44.134.255/32", + "104.44.129.243/32", + "104.44.129.141/32", + "65.52.193.203/32", + "70.37.89.222/32", + "13.64.115.203/32", + "52.225.177.153/32", + "65.52.172.237/32" + ], + "ports": [ + "454", + "455" + ] + }, + { + "description": "App Service Environment VIP", + "endpoints": [ + "52.247.209.18/32" + ], + "ports": [ + "454", + "455", + "16001" + ] + }, + { + "description": "App Service Environment subnet", + "endpoints": [ + "192.168.250.0/24" + ], + "ports": [ + "All" + ] + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetKeyVaultReferencesForAppSetting.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetKeyVaultReferencesForAppSetting.json new file mode 100644 index 000000000000..02bf056badbe --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetKeyVaultReferencesForAppSetting.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "name": "testc6282", + "appSettingKey": "setting", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "vaultName": "keyVaultName", + "secretName": "secretName", + "secretVersion": "secretVersion" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetKeyVaultReferencesForAppSettingSlot.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetKeyVaultReferencesForAppSettingSlot.json new file mode 100644 index 000000000000..fd61f7257b92 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetKeyVaultReferencesForAppSettingSlot.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "name": "testc6282", + "slot": "stage", + "appSettingKey": "setting", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "vaultName": "keyVaultName", + "secretName": "secretName", + "secretVersion": "secretVersion" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetKeyVaultReferencesForAppSettings.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetKeyVaultReferencesForAppSettings.json new file mode 100644 index 000000000000..a8bfe6114e80 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetKeyVaultReferencesForAppSettings.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "name": "testc6282", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "properties": { + "vaultName": "keyVaultName", + "secretName": "secretName", + "secretVersion": "secretVersion" + } + }, + { + "properties": { + "vaultName": "keyVaultName", + "secretName": "secretName2", + "secretVersion": "secretVersion2" + } + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetKeyVaultReferencesForAppSettingsSlot.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetKeyVaultReferencesForAppSettingsSlot.json new file mode 100644 index 000000000000..3cb9375b84fc --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetKeyVaultReferencesForAppSettingsSlot.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "name": "testc6282", + "slot": "stage", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "properties": { + "vaultName": "keyVaultName", + "secretName": "secretName", + "secretVersion": "secretVersion" + } + }, + { + "properties": { + "vaultName": "keyVaultName", + "secretName": "secretName2", + "secretVersion": "secretVersion2" + } + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetOutboundNetworkDependenciesEndpoints.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetOutboundNetworkDependenciesEndpoints.json new file mode 100644 index 000000000000..870ea1b3c911 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetOutboundNetworkDependenciesEndpoints.json @@ -0,0 +1,802 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "Sample-WestUSResourceGroup", + "name": "SampleAse", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "category": "Azure Storage", + "endpoints": [ + { + "domainName": "blob.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "52.183.104.36", + "port": 80, + "latency": 42.0469, + "isAccessible": true + }, + { + "ipAddress": "52.183.104.36", + "port": 443, + "latency": 41.7038, + "isAccessible": true + } + ] + }, + { + "domainName": "queue.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "52.183.104.25", + "port": 80, + "latency": 37.326, + "isAccessible": true + }, + { + "ipAddress": "52.183.104.25", + "port": 443, + "latency": 37.513600000000004, + "isAccessible": true + } + ] + }, + { + "domainName": "table.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "52.183.104.26", + "port": 80, + "latency": 32.789, + "isAccessible": true + }, + { + "ipAddress": "52.183.104.26", + "port": 443, + "latency": 1.8702, + "isAccessible": true + } + ] + }, + { + "domainName": "file.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "52.183.104.28", + "port": 80, + "latency": 36.7378, + "isAccessible": true + }, + { + "ipAddress": "52.183.104.28", + "port": 443, + "latency": 36.7108, + "isAccessible": true + } + ] + }, + { + "domainName": "blob.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.64", + "port": 80, + "latency": 4.0261000000000005, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.64", + "port": 443, + "latency": 3.8264, + "isAccessible": true + } + ] + }, + { + "domainName": "queue.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.73", + "port": 80, + "latency": 40.8523, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.73", + "port": 443, + "latency": 40.7501, + "isAccessible": true + } + ] + }, + { + "domainName": "table.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.74", + "port": 80, + "latency": 1.2071, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.74", + "port": 443, + "latency": 38.2975, + "isAccessible": true + } + ] + }, + { + "domainName": "file.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.76", + "port": 80, + "latency": 59.383700000000005, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.76", + "port": 443, + "latency": 60.0775, + "isAccessible": true + } + ] + }, + { + "domainName": "blob.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.64", + "port": 80, + "latency": 3.5512, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.64", + "port": 443, + "latency": 2.6777, + "isAccessible": true + } + ] + }, + { + "domainName": "queue.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.73", + "port": 80, + "latency": 3.5204, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.73", + "port": 443, + "latency": 2.8193, + "isAccessible": true + } + ] + }, + { + "domainName": "table.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.74", + "port": 80, + "latency": 3.2720000000000002, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.74", + "port": 443, + "latency": 3.0147, + "isAccessible": true + } + ] + }, + { + "domainName": "file.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.76", + "port": 80, + "latency": 3.2387, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.76", + "port": 443, + "latency": 3.2804, + "isAccessible": true + } + ] + }, + { + "domainName": "blob.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.66.176.16", + "port": 80, + "latency": 43.025200000000005, + "isAccessible": true + }, + { + "ipAddress": "13.66.176.16", + "port": 443, + "latency": 43.1683, + "isAccessible": true + } + ] + }, + { + "domainName": "queue.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.66.176.25", + "port": 80, + "latency": 41.8598, + "isAccessible": true + }, + { + "ipAddress": "13.66.176.25", + "port": 443, + "latency": 41.9805, + "isAccessible": true + } + ] + }, + { + "domainName": "table.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.66.176.26", + "port": 80, + "latency": 30.542900000000003, + "isAccessible": true + }, + { + "ipAddress": "13.66.176.26", + "port": 443, + "latency": 0.98320000000000007, + "isAccessible": true + } + ] + }, + { + "domainName": "file.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.66.176.28", + "port": 80, + "latency": 35.9562, + "isAccessible": true + }, + { + "ipAddress": "13.66.176.28", + "port": 443, + "latency": 36.0643, + "isAccessible": true + } + ] + }, + { + "domainName": "blob.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.64", + "port": 80, + "latency": 3.2829, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.64", + "port": 443, + "latency": 2.3393, + "isAccessible": true + } + ] + }, + { + "domainName": "queue.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.73", + "port": 80, + "latency": 3.4103000000000003, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.73", + "port": 443, + "latency": 4.1032, + "isAccessible": true + } + ] + }, + { + "domainName": "table.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.74", + "port": 80, + "latency": 3.1141, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.74", + "port": 443, + "latency": 3.0247, + "isAccessible": true + } + ] + }, + { + "domainName": "file.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.76", + "port": 80, + "latency": 2.834, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.76", + "port": 443, + "latency": 2.8198000000000003, + "isAccessible": true + } + ] + }, + { + "domainName": "blob.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.64", + "port": 80, + "latency": 1.3855000000000002, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.64", + "port": 443, + "latency": 1.0594000000000001, + "isAccessible": true + } + ] + }, + { + "domainName": "queue.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.73", + "port": 80, + "latency": 2.4717000000000002, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.73", + "port": 443, + "latency": 2.4827, + "isAccessible": true + } + ] + }, + { + "domainName": "table.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.74", + "port": 80, + "latency": 3.395, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.74", + "port": 443, + "latency": 3.1701, + "isAccessible": true + } + ] + }, + { + "domainName": "file.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.76", + "port": 80, + "latency": 1.4308, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.76", + "port": 443, + "latency": 22.5866, + "isAccessible": true + } + ] + }, + { + "domainName": "blob.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.64", + "port": 80, + "latency": 2.5372, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.64", + "port": 443, + "latency": 2.4626, + "isAccessible": true + } + ] + }, + { + "domainName": "queue.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.73", + "port": 80, + "latency": 3.7873, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.73", + "port": 443, + "latency": 4.1911000000000005, + "isAccessible": true + } + ] + }, + { + "domainName": "table.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.74", + "port": 80, + "latency": 2.9162000000000003, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.74", + "port": 443, + "latency": 2.7896, + "isAccessible": true + } + ] + }, + { + "domainName": "file.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.76", + "port": 80, + "latency": 26.723100000000002, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.76", + "port": 443, + "latency": 26.735200000000003, + "isAccessible": true + } + ] + } + ] + }, + { + "category": "Azure SQL Database", + "endpoints": [ + { + "domainName": "database.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.66.226.202", + "port": 1433, + "latency": 1.5964, + "isAccessible": true + } + ] + } + ] + }, + { + "category": "Azure Management", + "endpoints": [ + { + "domainName": "management.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "23.102.135.246", + "port": 443, + "latency": 46.5764, + "isAccessible": true + } + ] + }, + { + "domainName": "admin.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "23.102.135.247", + "port": 443, + "latency": 47.408, + "isAccessible": true + } + ] + }, + { + "domainName": "management.azure.com", + "endpointDetails": [ + { + "ipAddress": "52.151.25.45", + "port": 443, + "latency": 3.9529, + "isAccessible": true + } + ] + } + ] + }, + { + "category": "Azure Active Directory", + "endpoints": [ + { + "domainName": "graph.windows.net", + "endpointDetails": [ + { + "ipAddress": "20.190.133.83", + "port": 443, + "latency": 3.2264, + "isAccessible": true + }, + { + "ipAddress": "20.190.133.81", + "port": 443, + "latency": 3.2264, + "isAccessible": true + }, + { + "ipAddress": "20.190.133.67", + "port": 443, + "latency": 3.2264, + "isAccessible": true + }, + { + "ipAddress": "40.126.5.34", + "port": 443, + "latency": 3.2264, + "isAccessible": true + } + ] + } + ] + }, + { + "category": "Regional Service", + "endpoints": [ + { + "domainName": "gr-prod-mwh.cloudapp.net", + "endpointDetails": [ + { + "ipAddress": "13.66.225.188", + "port": 443, + "latency": 3.3826, + "isAccessible": true + } + ] + }, + { + "domainName": "az-prod.metrics.nsatc.net", + "endpointDetails": [ + { + "ipAddress": "40.77.24.27", + "port": 443, + "latency": 38.5647, + "isAccessible": true + } + ] + } + ] + }, + { + "category": "SSL Certificate Verification", + "endpoints": [ + { + "domainName": "ocsp.msocsp.com", + "endpointDetails": [ + { + "ipAddress": "104.18.25.243", + "port": 80, + "latency": 6.0651, + "isAccessible": true + }, + { + "ipAddress": "104.18.25.243", + "port": 443, + "latency": 12.888, + "isAccessible": true + }, + { + "ipAddress": "104.18.24.243", + "port": 80, + "latency": 6.0651, + "isAccessible": true + }, + { + "ipAddress": "104.18.24.243", + "port": 443, + "latency": 12.888, + "isAccessible": true + } + ] + }, + { + "domainName": "mscrl.microsoft.com", + "endpointDetails": [ + { + "ipAddress": "152.199.4.33", + "port": 80, + "latency": 6.7429000000000006, + "isAccessible": true + }, + { + "ipAddress": "152.199.4.33", + "port": 443, + "latency": 7.4361000000000006, + "isAccessible": true + } + ] + }, + { + "domainName": "crl.microsoft.com", + "endpointDetails": [ + { + "ipAddress": "23.215.102.10", + "port": 80, + "latency": 25.136200000000002, + "isAccessible": true + }, + { + "ipAddress": "23.215.102.10", + "port": 443, + "latency": 25.0085, + "isAccessible": true + }, + { + "ipAddress": "23.215.102.42", + "port": 80, + "latency": 25.136200000000002, + "isAccessible": true + }, + { + "ipAddress": "23.215.102.42", + "port": 443, + "latency": 25.0085, + "isAccessible": true + } + ] + }, + { + "domainName": "www.microsoft.com", + "endpointDetails": [ + { + "ipAddress": "23.49.13.56", + "port": 80, + "latency": 7.9229, + "isAccessible": true + }, + { + "ipAddress": "23.49.13.56", + "port": 443, + "latency": 8.4871, + "isAccessible": true + } + ] + }, + { + "domainName": "crl3.digicert.com", + "endpointDetails": [ + { + "ipAddress": "72.21.91.29", + "port": 80, + "latency": 5.4074, + "isAccessible": true + }, + { + "ipAddress": "72.21.91.29", + "port": 443, + "latency": 5.577, + "isAccessible": true + } + ] + }, + { + "domainName": "ocsp.digicert.com", + "endpointDetails": [ + { + "ipAddress": "72.21.91.29", + "port": 80, + "latency": 6.8989, + "isAccessible": true + }, + { + "ipAddress": "72.21.91.29", + "port": 443, + "latency": 5.6674000000000007, + "isAccessible": true + } + ] + }, + { + "domainName": "cacerts.digicert.com", + "endpointDetails": [ + { + "ipAddress": "104.18.11.39", + "port": 80, + "latency": 10.772400000000001, + "isAccessible": true + }, + { + "ipAddress": "104.18.11.39", + "port": 443, + "latency": 10.7705, + "isAccessible": true + }, + { + "ipAddress": "104.18.10.39", + "port": 80, + "latency": 10.772400000000001, + "isAccessible": true + }, + { + "ipAddress": "104.18.10.39", + "port": 443, + "latency": 10.7705, + "isAccessible": true + } + ] + }, + { + "domainName": "www.thawte.com", + "endpointDetails": [ + { + "ipAddress": "54.69.98.161", + "port": 80, + "latency": 47.532900000000005, + "isAccessible": true + }, + { + "ipAddress": "54.69.98.161", + "port": 443, + "latency": 48.5362, + "isAccessible": true + }, + { + "ipAddress": "35.167.62.148", + "port": 80, + "latency": 47.532900000000005, + "isAccessible": true + }, + { + "ipAddress": "35.167.62.148", + "port": 443, + "latency": 48.5362, + "isAccessible": true + } + ] + } + ] + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetPublishingCredentialsPolicy.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetPublishingCredentialsPolicy.json new file mode 100644 index 000000000000..66ee3ba5c758 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetPublishingCredentialsPolicy.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testSite", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "allow": false + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetPublishingCredentialsPolicySlot.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetPublishingCredentialsPolicySlot.json new file mode 100644 index 000000000000..3f8335c6e703 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetPublishingCredentialsPolicySlot.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testSite", + "slot": "stage", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "allow": false + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetResourceHealthMetadataBySite.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetResourceHealthMetadataBySite.json new file mode 100644 index 000000000000..a56710985b03 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetResourceHealthMetadataBySite.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2020-12-01", + "name": "newsiteinnewASE-NCUS", + "slot": "Production", + "resourceGroupName": "Default-Web-NorthCentralUS", + "subscriptionId": "4adb32ad-8327-4cbb-b775-b84b4465bb38", + "metadataName": "default" + }, + "responses": { + "200": { + "body": { + "properties": { + "category": "Shared", + "signalAvailability": true + }, + "id": "/subscriptions/4adb32ad-8327-4cbb-b775-b84b4465bb38/resourceGroups/Default-Web-NorthCentralUS/providers/Microsoft.Web/sites/newsiteinnewASE-NCUS/resourceHealthMetadata/default", + "name": "default", + "type": "Microsoft.Web/sites/resourceHealthMetadata" + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetSiteInstanceInfo.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetSiteInstanceInfo.json new file mode 100644 index 000000000000..5710f5e6f066 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetSiteInstanceInfo.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "name": "tests346", + "instanceId": "134987120", + "slot": "staging", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/sites/tests346/slot/staging/instances/134987120", + "name": "134987120", + "type": "Microsoft.Web/sites/instances", + "properties": { + "state": "READY", + "statusUrl": "https://sampleurl", + "detectorUrl": "testsec579", + "containers": { + "c1": { + "currentTimeStamp": "2013-10-21T13:28:06.419Z" + } + } + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetSitePrivateEndpointConnection.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetSitePrivateEndpointConnection.json new file mode 100644 index 000000000000..68837dfb9d77 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetSitePrivateEndpointConnection.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testSite", + "privateEndpointConnectionName": "connection", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by admin.", + "actionsRequired": "" + } + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetSitePrivateEndpointConnectionList.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetSitePrivateEndpointConnectionList.json new file mode 100644 index 000000000000..9950baaf3d26 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetSitePrivateEndpointConnectionList.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by admin.", + "actionsRequired": "" + } + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetSitePrivateEndpointConnectionSlot.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetSitePrivateEndpointConnectionSlot.json new file mode 100644 index 000000000000..69924ddbc6cb --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetSitePrivateEndpointConnectionSlot.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testSite", + "slot": "stage", + "privateEndpointConnectionName": "connection", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by admin.", + "actionsRequired": "" + } + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetSitePrivateLinkResources.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetSitePrivateLinkResources.json new file mode 100644 index 000000000000..2fd71d6ffec8 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetSitePrivateLinkResources.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testSite", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Web/sites/testSite/privateLinkResources/site", + "name": "site", + "type": "Microsoft.Web/sites/privateLinkResources", + "properties": { + "groupId": "sites", + "requiredMembers": [ + "sites" + ], + "requiredZoneNames": [ + "privatelink.testsite.azurewebsites.net" + ] + } + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetSitePrivateLinkResourcesSlot.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetSitePrivateLinkResourcesSlot.json new file mode 100644 index 000000000000..00c63362db05 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetSitePrivateLinkResourcesSlot.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testSite", + "slot": "stage", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Web/sites/testSite/privateLinkResources/site", + "name": "site", + "type": "Microsoft.Web/sites/privateLinkResources", + "properties": { + "groupId": "sites", + "requiredMembers": [ + "sites" + ], + "requiredZoneNames": [ + "privatelink.testsite.azurewebsites.net" + ] + } + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetStaticSite.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetStaticSite.json new file mode 100644 index 000000000000..1ec440f3cc13 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetStaticSite.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Web/staticSites/testStaticSite0", + "name": "testStaticSite0", + "type": "Microsoft.Web/staticSites", + "location": "West US 2", + "properties": { + "defaultHostname": "happy-sea-15afae3e.azurestaticwebsites.net", + "repositoryUrl": "https://github.com/username/repo", + "branch": "demo", + "customDomains": [], + "privateEndpointConnections": [], + "contentDistributionEndpoint": "", + "keyVaultReferenceIdentity": "SystemAssigned", + "userProvidedFunctionApps": [], + "stagingEnvironmentPolicy": "Enabled", + "allowConfigFileUpdates": true + }, + "sku": { + "name": "Basic", + "tier": "Basic" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetStaticSiteBuild.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetStaticSiteBuild.json new file mode 100644 index 000000000000..74713e91c49e --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetStaticSiteBuild.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "environmentName": "12", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "buildId": "12", + "sourceBranch": "pr-branch", + "pullRequestTitle": "Update README.md", + "hostname": "happy-sea-15afae3e-12.westus2.azurestaticwebsites.net", + "createdTimeUtc": "2020-03-04T17:33:11.641Z", + "lastUpdatedOn": "2020-03-04T17:33:11.641Z", + "status": "Uploading", + "userProvidedFunctionApps": [] + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetStaticSiteBuilds.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetStaticSiteBuilds.json new file mode 100644 index 000000000000..82ad8035d9ec --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetStaticSiteBuilds.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "properties": { + "buildId": "default", + "sourceBranch": "demo", + "pullRequestTitle": null, + "hostname": "happy-sea-15afae3e.azurestaticwebsites.net", + "createdTimeUtc": "2020-03-04T17:33:11.641Z", + "lastUpdatedOn": "2020-03-04T17:33:11.641Z", + "status": "Ready", + "userProvidedFunctionApps": [] + } + }, + { + "properties": { + "buildId": "12", + "sourceBranch": "demo-patch2", + "pullRequestTitle": "Update README.md", + "hostname": "happy-sea-15afae3e-12.westus2.azurestaticwebsites.net", + "createdTimeUtc": "2020-03-04T17:33:11.641Z", + "lastUpdatedOn": "2020-03-04T17:33:11.641Z", + "status": "Ready", + "userProvidedFunctionApps": [] + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetStaticSiteCustomDomain.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetStaticSiteCustomDomain.json new file mode 100644 index 000000000000..7dd945ea2e8c --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetStaticSiteCustomDomain.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "domainName": "custom.domain.net", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "body": { + "properties": { + "domainName": "custom.domain.net", + "createdOn": "2020-03-04T17:33:11.641Z" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetStaticSiteCustomDomains.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetStaticSiteCustomDomains.json new file mode 100644 index 000000000000..f9ac3bde31d0 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetStaticSiteCustomDomains.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "properties": { + "domainName": "custom.domain.net", + "createdOn": "2020-03-04T17:33:11.641Z" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetStaticSites.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetStaticSites.json new file mode 100644 index 000000000000..0d006a3183be --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetStaticSites.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Web/staticSites/testStaticSite0", + "name": "testStaticSite0", + "type": "Microsoft.Web/staticSites", + "location": "West US 2", + "properties": { + "defaultHostname": "happy-sea-15afae3e.azurestaticwebsites.net", + "repositoryUrl": "https://github.com/username/repo", + "branch": "demo", + "customDomains": [], + "privateEndpointConnections": [], + "contentDistributionEndpoint": "", + "keyVaultReferenceIdentity": "SystemAssigned", + "userProvidedFunctionApps": [], + "stagingEnvironmentPolicy": "Enabled", + "allowConfigFileUpdates": true + }, + "sku": { + "name": "Standard", + "tier": "Standard" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetSubscriptionOperationWithAsyncResponse.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetSubscriptionOperationWithAsyncResponse.json new file mode 100644 index 000000000000..6bca0be8c81f --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetSubscriptionOperationWithAsyncResponse.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "location": "West US", + "operationId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab5d5", + "api-version": "2020-12-01" + }, + "responses": { + "204": {} + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetUserProvidedFunctionAppForStaticSite.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetUserProvidedFunctionAppForStaticSite.json new file mode 100644 index 000000000000..d58e2bfea1cf --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetUserProvidedFunctionAppForStaticSite.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "functionAppName": "testFunctionApp", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Web/staticSites/testStaticSite0/builds/default/userProvidedFunctionApps/testFunctionApp", + "name": "testFunctionApp", + "type": "Microsoft.Web/staticSites/builds/userProvidedFunctionApps", + "properties": { + "functionAppResourceId": "/subscription/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/functionRG/providers/Microsoft.Web/sites/testFunctionApp", + "functionAppRegion": "West US 2", + "createdOn": "2020-03-04T17:33:11.641Z" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetUserProvidedFunctionAppForStaticSiteBuild.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetUserProvidedFunctionAppForStaticSiteBuild.json new file mode 100644 index 000000000000..bf65a7a641ce --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetUserProvidedFunctionAppForStaticSiteBuild.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "environmentName": "default", + "functionAppName": "testFunctionApp", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Web/staticSites/testStaticSite0/builds/default/userProvidedFunctionApps/testFunctionApp", + "name": "testFunctionApp", + "type": "Microsoft.Web/staticSites/builds/userProvidedFunctionApps", + "properties": { + "functionAppResourceId": "/subscription/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/functionRG/providers/Microsoft.Web/sites/testFunctionApp", + "functionAppRegion": "West US 2", + "createdOn": "2020-03-04T17:33:11.641Z" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetUserProvidedFunctionAppsForStaticSite.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetUserProvidedFunctionAppsForStaticSite.json new file mode 100644 index 000000000000..ae663cac86f7 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetUserProvidedFunctionAppsForStaticSite.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Web/staticSites/testStaticSite0/builds/default/userProvidedFunctionApps/testFunctionApp", + "name": "testFunctionApp", + "type": "Microsoft.Web/staticSites/builds/userProvidedFunctionApps", + "properties": { + "functionAppResourceId": "/subscription/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/functionRG/providers/Microsoft.Web/sites/testFunctionApp", + "functionAppRegion": "West US 2", + "createdOn": "2020-03-04T17:33:11.641Z" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetUserProvidedFunctionAppsForStaticSiteBuild.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetUserProvidedFunctionAppsForStaticSiteBuild.json new file mode 100644 index 000000000000..ba5ec9acf868 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetUserProvidedFunctionAppsForStaticSiteBuild.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "environmentName": "default", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Web/staticSites/testStaticSite0/builds/default/userProvidedFunctionApps/testFunctionApp", + "name": "testFunctionApp", + "type": "Microsoft.Web/staticSites/builds/userProvidedFunctionApps", + "properties": { + "functionAppResourceId": "/subscription/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/functionRG/providers/Microsoft.Web/sites/testFunctionApp", + "functionAppRegion": "West US 2", + "createdOn": "2020-03-04T17:33:11.641Z" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetWebAppStacks.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetWebAppStacks.json new file mode 100644 index 000000000000..fe01c4657e3c --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetWebAppStacks.json @@ -0,0 +1,2915 @@ +{ + "parameters": { + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/providers/Microsoft.Web/webAppStacks/dotnet", + "name": "dotnet", + "type": "Microsoft.Web/webAppStacks", + "properties": { + "displayText": ".NET", + "value": "dotnet", + "preferredOs": "Windows", + "majorVersions": [ + { + "displayText": ".NET 5", + "value": "5", + "minorVersions": [ + { + "displayText": ".NET 5", + "value": "5", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "v5.0", + "isEarlyAccess": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "5.0.x" + } + }, + "linuxRuntimeSettings": { + "runtimeVersion": "DOTNETCORE|5.0", + "isEarlyAccess": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "5.0.x" + } + } + } + } + ] + }, + { + "displayText": ".NET Core 3", + "value": "3", + "minorVersions": [ + { + "displayText": ".NET Core 3.1 (LTS)", + "value": "3.1", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "3.1", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.1.301" + } + }, + "linuxRuntimeSettings": { + "runtimeVersion": "DOTNETCORE|3.1", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.1.301" + } + } + } + }, + { + "displayText": ".NET Core 3.0", + "value": "3.0", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "3.0", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.0.103" + }, + "endOfLifeDate": "2020-04-03T00:00:00+00:00" + }, + "linuxRuntimeSettings": { + "runtimeVersion": "DOTNETCORE|3.0", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.0.103" + }, + "endOfLifeDate": "2020-04-03T00:00:00+00:00" + } + } + } + ] + }, + { + "displayText": ".NET Core 2", + "value": "dotnetcore2", + "minorVersions": [ + { + "displayText": ".NET Core 2.2", + "value": "2.2", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "2.2", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "2.2.207" + }, + "endOfLifeDate": "2020-01-23T00:00:00+00:00" + }, + "linuxRuntimeSettings": { + "runtimeVersion": "DOTNETCORE|2.2", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "2.2.207" + }, + "endOfLifeDate": "2020-01-23T00:00:00+00:00" + } + } + }, + { + "displayText": ".NET Core 2.1 (LTS)", + "value": "2.1", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "2.1", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "2.1.807" + }, + "endOfLifeDate": "2021-09-21T00:00:00+00:00" + }, + "linuxRuntimeSettings": { + "runtimeVersion": "DOTNETCORE|2.1", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "2.1.807" + }, + "endOfLifeDate": "2021-09-21T00:00:00+00:00" + } + } + }, + { + "displayText": ".NET Core 2.0", + "value": "2.0", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "2.0", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "2.1.202" + }, + "endOfLifeDate": "2018-11-01T00:00:00+00:00" + }, + "linuxRuntimeSettings": { + "runtimeVersion": "DOTNETCORE|2.0", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "2.1.202" + }, + "endOfLifeDate": "2018-11-01T00:00:00+00:00" + } + } + } + ] + }, + { + "displayText": ".NET Core 1", + "value": "1", + "minorVersions": [ + { + "displayText": ".NET Core 1.1", + "value": "1.1", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.1", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "1.1.14" + }, + "endOfLifeDate": "2019-07-27T00:00:00+00:00" + }, + "linuxRuntimeSettings": { + "runtimeVersion": "DOTNETCORE|1.1", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "1.1.14" + }, + "endOfLifeDate": "2019-07-27T00:00:00+00:00" + } + } + }, + { + "displayText": ".NET Core 1.0", + "value": "1.0", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.0", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "1.1.14" + }, + "endOfLifeDate": "2019-07-27T00:00:00+00:00" + }, + "linuxRuntimeSettings": { + "runtimeVersion": "DOTNETCORE|1.0", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "1.1.14" + }, + "endOfLifeDate": "2019-07-27T00:00:00+00:00" + } + } + } + ] + }, + { + "displayText": "ASP.NET V4", + "value": "v4", + "minorVersions": [ + { + "displayText": "ASP.NET V4.8", + "value": "v4.8", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "v4.0", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.1" + } + } + } + } + ] + }, + { + "displayText": "ASP.NET V3", + "value": "v3", + "minorVersions": [ + { + "displayText": "ASP.NET V3.5", + "value": "v3.5", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "v2.0", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "2.1" + } + } + } + } + ] + } + ] + } + }, + { + "id": "/providers/Microsoft.Web/webAppStacks/node", + "name": "node", + "type": "Microsoft.Web/webAppStacks", + "properties": { + "displayText": "Node", + "value": "node", + "preferredOs": "Linux", + "majorVersions": [ + { + "displayText": "Node LTS", + "value": "lts", + "minorVersions": [ + { + "displayText": "Node LTS", + "value": "lts", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|lts", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + } + } + } + } + ] + }, + { + "displayText": "Node 14", + "value": "14", + "minorVersions": [ + { + "displayText": "Node 14 LTS", + "value": "14-lts", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|14-lts", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "14.x" + }, + "isPreview": true, + "endOfLifeDate": "2023-05-30T00:00:00+00:00" + } + } + } + ] + }, + { + "displayText": "Node 12", + "value": "12", + "minorVersions": [ + { + "displayText": "Node 12 LTS", + "value": "12-lts", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|12-lts", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "12.x" + }, + "endOfLifeDate": "2022-05-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "12.13.0", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2022-05-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 12.9", + "value": "12.9", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|12.9", + "isDeprecated": true, + "remoteDebuggingSupported": true, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "12.x" + }, + "endOfLifeDate": "2022-05-01T00:00:00+00:00" + } + } + } + ] + }, + { + "displayText": "Node 10", + "value": "10", + "minorVersions": [ + { + "displayText": "Node 10 LTS", + "value": "10-LTS", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|10-lts", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "10.x" + }, + "endOfLifeDate": "2021-05-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 10.16", + "value": "10.16", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|10.16", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "10.x" + }, + "endOfLifeDate": "2021-05-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 10.15", + "value": "10.15", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "10.15.2", + "isPreview": true, + "isHidden": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "10.x" + }, + "endOfLifeDate": "2021-05-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 10.14", + "value": "10.14", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|10.14", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "10.x" + }, + "endOfLifeDate": "2021-05-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "10.14.1", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "10.x" + }, + "endOfLifeDate": "2021-05-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 10.12", + "value": "10.12", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|10.12", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "10.x" + }, + "endOfLifeDate": "2021-05-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 10.10", + "value": "10.10", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|10.10", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "10.x" + }, + "endOfLifeDate": "2021-05-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "10.0.0", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "10.x" + }, + "endOfLifeDate": "2021-05-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 10.6", + "value": "10.6", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|10.6", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "10.x" + }, + "endOfLifeDate": "2021-05-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "10.6.0", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2021-05-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 10.1", + "value": "10.1", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|10.1", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "10.x" + }, + "endOfLifeDate": "2021-05-01T00:00:00+00:00" + } + } + } + ] + }, + { + "displayText": "Node 9", + "value": "9", + "minorVersions": [ + { + "displayText": "Node 9.4", + "value": "9.4", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|9.4", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2019-07-30T00:00:00+00:00" + } + } + } + ] + }, + { + "displayText": "Node 8", + "value": "8", + "minorVersions": [ + { + "displayText": "Node 8 LTS", + "value": "8-lts", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|8-lts", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 8.12", + "value": "8.12", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|8.12", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 8.11", + "value": "8.11", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|8.11", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "8.11", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 8.10", + "value": "8.10", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "8.10", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 8.9", + "value": "8.9", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|8.9", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "8.9", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 8.8", + "value": "8.8", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|8.8", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 8.5", + "value": "8.5", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "8.5", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 8.4", + "value": "8.4", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "8.4", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 8.2", + "value": "8.2", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|8.2", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 8.1", + "value": "8.1", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|8.1", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "8.1.4", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 8.0", + "value": "8.0", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|8.0", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + } + } + } + ] + }, + { + "displayText": "Node 7", + "value": "7", + "minorVersions": [ + { + "displayText": "Node 7.10", + "value": "7.10", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "7.10.1", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2017-07-30T00:00:00+00:00" + } + } + } + ] + }, + { + "displayText": "Node 6", + "value": "6", + "minorVersions": [ + { + "displayText": "Node 6 LTS", + "value": "6-LTS", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|6-lts", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2019-05-30T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 6.12", + "value": "6.12", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "6.12", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2019-05-30T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 6.11", + "value": "6.11", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|6.11", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2019-05-30T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 6.10", + "value": "6.10", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|6.10", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2019-05-30T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 6.9", + "value": "6.9", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|6.9", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2019-05-30T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "6.9.5", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2019-05-30T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 6.6", + "value": "6.6", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|6.6", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2019-05-30T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 6.5", + "value": "6.5", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "6.5.0", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2019-05-30T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 6.2", + "value": "6.2", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|6.2", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2019-05-30T00:00:00+00:00" + } + } + } + ] + }, + { + "displayText": "Node 4", + "value": "4", + "minorVersions": [ + { + "displayText": "Node 4.8", + "value": "4.8", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|4.8", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2018-05-30T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "4.8", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2018-05-30T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 4.5", + "value": "4.5", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|4.5", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2018-05-30T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 4.4", + "value": "4.4", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|4.4", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2018-05-30T00:00:00+00:00" + } + } + } + ] + } + ] + } + }, + { + "id": "/providers/Microsoft.Web/webAppStacks/python", + "name": "python", + "type": "Microsoft.Web/webAppStacks", + "properties": { + "displayText": "Python", + "value": "python", + "preferredOs": "Linux", + "majorVersions": [ + { + "displayText": "Python 3", + "value": "3", + "minorVersions": [ + { + "displayText": "Python 3.8", + "value": "3.8", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "PYTHON|3.8", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.8" + } + } + } + }, + { + "displayText": "Python 3.7", + "value": "3.7", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "PYTHON|3.7", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.7" + } + } + } + }, + { + "displayText": "Python 3.6", + "value": "3.6", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "PYTHON|3.6", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.6" + } + }, + "windowsRuntimeSettings": { + "runtimeVersion": "3.4.0", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.6" + } + } + } + } + ] + }, + { + "displayText": "Python 2", + "value": "2", + "minorVersions": [ + { + "displayText": "Python 2.7", + "value": "2.7", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "PYTHON|2.7", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "2.7" + }, + "endOfLifeDate": "2020-02-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "2.7.3", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "2.7" + }, + "endOfLifeDate": "2020-02-01T00:00:00+00:00" + } + } + } + ] + } + ] + } + }, + { + "id": "/providers/Microsoft.Web/webAppStacks/php", + "name": "php", + "type": "Microsoft.Web/webAppStacks", + "properties": { + "displayText": "PHP", + "value": "php", + "preferredOs": "Linux", + "majorVersions": [ + { + "displayText": "PHP 7", + "value": "7", + "minorVersions": [ + { + "displayText": "PHP 7.4", + "value": "7.4", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "7.4", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2022-12-28T00:00:00+00:00" + }, + "linuxRuntimeSettings": { + "runtimeVersion": "PHP|7.4", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2022-12-28T00:00:00+00:00" + } + } + }, + { + "displayText": "PHP 7.3", + "value": "7.3", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "PHP|7.3", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2022-01-06T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "7.3", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2022-01-06T00:00:00+00:00" + } + } + }, + { + "displayText": "PHP 7.2", + "value": "7.2", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "PHP|7.2", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2020-12-30T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "7.2", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2020-12-30T00:00:00+00:00" + } + } + }, + { + "displayText": "PHP 7.1", + "value": "7.1", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "7.1", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2020-03-01T00:00:00+00:00" + } + } + }, + { + "displayText": "7.0", + "value": "7.0", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "PHP|7.0", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2020-03-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "7.0", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2020-03-01T00:00:00+00:00" + } + } + } + ] + }, + { + "displayText": "PHP 5", + "value": "5", + "minorVersions": [ + { + "displayText": "PHP 5.6", + "value": "5.6", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "PHP|5.6", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2021-03-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "5.6", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2021-03-01T00:00:00+00:00" + } + } + } + ] + } + ] + } + }, + { + "id": "/providers/Microsoft.Web/webAppStacks/ruby", + "name": "ruby", + "type": "Microsoft.Web/webAppStacks", + "properties": { + "displayText": "Ruby", + "value": "ruby", + "preferredOs": "Linux", + "majorVersions": [ + { + "displayText": "Ruby 2", + "value": "2", + "minorVersions": [ + { + "displayText": "Ruby 2.6", + "value": "2.6", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "RUBY|2.6", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + } + } + } + }, + { + "displayText": "Ruby 2.6.2", + "value": "2.6.2", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "RUBY|2.6.2", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + } + } + } + }, + { + "displayText": "Ruby 2.5", + "value": "2.5", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "RUBY|2.5", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + } + } + } + }, + { + "displayText": "Ruby 2.5.5", + "value": "2.5.5", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "RUBY|2.5.5", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + } + } + } + }, + { + "displayText": "Ruby 2.4", + "value": "2.4", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "RUBY|2.4", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2020-05-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Ruby 2.4.5", + "value": "2.4.5", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "RUBY|2.4.5", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2020-05-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Ruby 2.3", + "value": "2.3", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "RUBY|2.3", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2019-05-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Ruby 2.3.8", + "value": "2.3.8", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "RUBY|2.3.8", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2019-05-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Ruby 2.3.3", + "value": "2.3.3", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "RUBY|2.3.3", + "remoteDebuggingSupported": false, + "isDeprecated": true, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2019-05-01T00:00:00+00:00" + } + } + } + ] + } + ] + } + }, + { + "id": "/providers/Microsoft.Web/webAppStacks/java", + "name": "java", + "type": "Microsoft.Web/webAppStacks", + "properties": { + "displayText": "Java", + "value": "java", + "preferredOs": "Linux", + "majorVersions": [ + { + "displayText": "Java 11", + "value": "11", + "minorVersions": [ + { + "displayText": "Java 11", + "value": "11.0", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "", + "isAutoUpdate": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "11" + }, + "endOfLifeDate": "2026-10-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "11", + "isAutoUpdate": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "11" + }, + "endOfLifeDate": "2026-10-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 11.0.7", + "value": "11.0.7", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "11" + }, + "endOfLifeDate": "2026-10-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "11.0.7", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "11" + }, + "endOfLifeDate": "2026-10-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 11.0.6", + "value": "11.0.6", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "11" + }, + "endOfLifeDate": "2026-10-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "11.0.6", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "11" + }, + "endOfLifeDate": "2026-10-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 11.0.5", + "value": "11.0.5", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "11" + }, + "endOfLifeDate": "2026-10-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "11.0.5_ZULU", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "11" + }, + "endOfLifeDate": "2026-10-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 11.0.3", + "value": "11.0.3", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "11.0.3_ZULU", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "11" + }, + "endOfLifeDate": "2026-10-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 11.0.2", + "value": "11.0.2", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "11.0.2_ZULU", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "11" + }, + "endOfLifeDate": "2026-10-01T00:00:00+00:00" + } + } + } + ] + }, + { + "displayText": "Java 8", + "value": "8", + "minorVersions": [ + { + "displayText": "Java 8", + "value": "8.0", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "", + "isAutoUpdate": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "1.8", + "isAutoUpdate": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.8.0_252", + "value": "8.0.252", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_252", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.8.0_242", + "value": "8.0.242", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_242", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.8.0_232", + "value": "8.0.232", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_232_ZULU", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.8.0_212", + "value": "8.0.212", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_212_ZULU", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.8.0_202", + "value": "8.0.202", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_202_ZULU", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.8.0_202 (Oracle)", + "value": "8.0.202 (Oracle)", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_202", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + } + } + } + }, + { + "displayText": "Java 1.8.0_181", + "value": "8.0.181", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_181_ZULU", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.8.0_181 (Oracle)", + "value": "8.0.181 (Oracle)", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_181", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + } + } + } + }, + { + "displayText": "Java 1.8.0_172", + "value": "8.0.172", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_172_ZULU", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.8.0_172 (Oracle)", + "value": "8.0.172 (Oracle)", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_172", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + } + } + } + }, + { + "displayText": "Java 1.8.0_144", + "value": "8.0.144", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_144", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.8.0_111 (Oracle)", + "value": "8.0.111 (Oracle)", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_111", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + } + } + } + }, + { + "displayText": "Java 1.8.0_102", + "value": "8.0.102", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_102", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.8.0_92", + "value": "8.0.92", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_92", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.8.0_73 (Oracle)", + "value": "8.0.73 (Oracle)", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_73", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + } + } + } + }, + { + "displayText": "Java 1.8.0_60 (Oracle)", + "value": "8.0.60 (Oracle)", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_60", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + } + } + } + }, + { + "displayText": "Java 1.8.0_25 (Oracle)", + "value": "8.0.25 (Oracle)", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_25", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + } + } + } + } + ] + }, + { + "displayText": "Java 7", + "value": "7", + "minorVersions": [ + { + "displayText": "Java 7", + "value": "7.0", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.7", + "isAutoUpdate": true, + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2023-08-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.7.0_262", + "value": "7.0.262", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.7.0_262_ZULU", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2023-08-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.7.0_242", + "value": "7.0.242", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.7.0_242_ZULU", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2023-08-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.7.0_222", + "value": "7.0.222", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.7.0_222_ZULU", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2023-08-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.7.0_191", + "value": "7.0.191", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.7.0_191_ZULU", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2023-08-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.7.0_80 (Oracle)", + "value": "7.0.80 (Oracle)", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.7.0_80", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + } + } + } + }, + { + "displayText": "Java 1.7.0_71 (Oracle)", + "value": "7.0.71 (Oracle)", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.7.0_71", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + } + } + } + }, + { + "displayText": "Java 1.7.0_51 (Oracle)", + "value": "7.0.51 (Oracle)", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.7.0_51", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + } + } + } + } + ] + } + ] + } + }, + { + "id": "/providers/Microsoft.Web/webAppStacks/javacontainers", + "name": "javacontainers", + "type": "Microsoft.Web/webAppStacks", + "properties": { + "displayText": "Java Containers", + "value": "javacontainers", + "majorVersions": [ + { + "displayText": "Java SE (Embedded Web Server)", + "value": "javase", + "minorVersions": [ + { + "displayText": "Java SE (Embedded Web Server)", + "value": "SE", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "JAVA", + "javaContainerVersion": "SE", + "isAutoUpdate": true + }, + "linuxContainerSettings": { + "java11Runtime": "JAVA|11-java11", + "java8Runtime": "JAVA|8-jre8", + "isAutoUpdate": true + } + } + }, + { + "displayText": "Java SE 11.0.7", + "value": "11.0.7", + "stackSettings": { + "linuxContainerSettings": { + "java11Runtime": "JAVA|11.0.7" + } + } + }, + { + "displayText": "Java SE 11.0.6", + "value": "11.0.6", + "stackSettings": { + "linuxContainerSettings": { + "java11Runtime": "JAVA|11.0.6" + } + } + }, + { + "displayText": "Java SE 11.0.5", + "value": "11.0.5", + "stackSettings": { + "linuxContainerSettings": { + "java11Runtime": "JAVA|11.0.5" + } + } + }, + { + "displayText": "Java SE 8u252", + "value": "1.8.252", + "stackSettings": { + "linuxContainerSettings": { + "java8Runtime": "JAVA|8u252" + } + } + }, + { + "displayText": "Java SE 8u242", + "value": "1.8.242", + "stackSettings": { + "linuxContainerSettings": { + "java8Runtime": "JAVA|8u242" + } + } + }, + { + "displayText": "Java SE 8u232", + "value": "1.8.232", + "stackSettings": { + "linuxContainerSettings": { + "java8Runtime": "JAVA|8u232" + } + } + } + ] + }, + { + "displayText": "JBoss EAP", + "value": "jbosseap", + "minorVersions": [ + { + "displayText": "JBoss EAP 7.2", + "value": "7.2", + "stackSettings": { + "linuxContainerSettings": { + "java8Runtime": "JBOSSEAP|7.2-java8", + "isPreview": true + } + } + } + ] + }, + { + "displayText": "Tomcat 9.0", + "value": "tomcat9.0", + "minorVersions": [ + { + "displayText": "Tomcat 9.0", + "value": "9.0", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "9.0", + "isAutoUpdate": true + }, + "linuxContainerSettings": { + "java11Runtime": "TOMCAT|9.0-java11", + "java8Runtime": "TOMCAT|9.0-jre8", + "isAutoUpdate": true + } + } + }, + { + "displayText": "Tomcat 9.0.37", + "value": "9.0.37", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "9.0.37" + }, + "linuxContainerSettings": { + "java11Runtime": "TOMCAT|9.0.37-java11", + "java8Runtime": "TOMCAT|9.0.37-java8" + } + } + }, + { + "displayText": "Tomcat 9.0.33", + "value": "9.0.33", + "stackSettings": { + "linuxContainerSettings": { + "java11Runtime": "TOMCAT|9.0.33-java11", + "java8Runtime": "TOMCAT|9.0.33-java8" + } + } + }, + { + "displayText": "Tomcat 9.0.31", + "value": "9.0.31", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "9.0.31" + } + } + }, + { + "displayText": "Tomcat 9.0.27", + "value": "9.0.27", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "9.0.27" + } + } + }, + { + "displayText": "Tomcat 9.0.21", + "value": "9.0.21", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "9.0.21" + } + } + }, + { + "displayText": "Tomcat 9.0.20", + "value": "9.0.20", + "stackSettings": { + "linuxContainerSettings": { + "java11Runtime": "TOMCAT|9.0.20-java11", + "java8Runtime": "TOMCAT|9.0.20-java8" + } + } + }, + { + "displayText": "Tomcat 9.0.14", + "value": "9.0.14", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "9.0.14" + } + } + }, + { + "displayText": "Tomcat 9.0.12", + "value": "9.0.12", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "9.0.12" + } + } + }, + { + "displayText": "Tomcat 9.0.8", + "value": "9.0.8", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "9.0.8" + } + } + }, + { + "displayText": "Tomcat 9.0.0", + "value": "9.0.0", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "9.0.0" + } + } + } + ] + }, + { + "displayText": "Tomcat 8.5", + "value": "tomcat8.5", + "minorVersions": [ + { + "displayText": "Tomcat 8.5", + "value": "8.5", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.5", + "isAutoUpdate": true + }, + "linuxContainerSettings": { + "java11Runtime": "TOMCAT|8.5-java11", + "java8Runtime": "TOMCAT|8.5-jre8", + "isAutoUpdate": true + } + } + }, + { + "displayText": "Tomcat 8.5.6", + "value": "8.5.6", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.5.6" + } + } + }, + { + "displayText": "Tomcat 8.5.57", + "value": "8.5.57", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.5.57" + }, + "linuxContainerSettings": { + "java11Runtime": "TOMCAT|8.5.57-java11", + "java8Runtime": "TOMCAT|8.5.57-java8" + } + } + }, + { + "displayText": "Tomcat 8.5.53", + "value": "8.5.53", + "stackSettings": { + "linuxContainerSettings": { + "java11Runtime": "TOMCAT|8.5.53-java11", + "java8Runtime": "TOMCAT|8.5.53-java8" + } + } + }, + { + "displayText": "Tomcat 8.5.51", + "value": "8.5.51", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.5.51" + } + } + }, + { + "displayText": "Tomcat 8.5.47", + "value": "8.5.47", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.5.47" + } + } + }, + { + "displayText": "Tomcat 8.5.42", + "value": "8.5.42", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.5.42" + } + } + }, + { + "displayText": "Tomcat 8.5.41", + "value": "8.5.41", + "stackSettings": { + "linuxContainerSettings": { + "java11Runtime": "TOMCAT|8.5.41-java11", + "java8Runtime": "TOMCAT|8.5.41-java8" + } + } + }, + { + "displayText": "Tomcat 8.5.37", + "value": "8.5.37", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.5.37" + } + } + }, + { + "displayText": "Tomcat 8.5.34", + "value": "8.5.34", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.5.34" + } + } + }, + { + "displayText": "Tomcat 8.5.31", + "value": "8.5.31", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.5.31" + } + } + }, + { + "displayText": "Tomcat 8.5.20", + "value": "8.5.20", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.5.20" + } + } + } + ] + }, + { + "displayText": "Tomcat 8.0", + "value": "tomcat8.0", + "minorVersions": [ + { + "displayText": "Tomcat 8.0", + "value": "8.0", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.0", + "isAutoUpdate": true + } + } + }, + { + "displayText": "Tomcat 8.0.53", + "value": "8.0.53", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.0.53" + } + } + }, + { + "displayText": "Tomcat 8.0.46", + "value": "8.0.46", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.0.46" + } + } + }, + { + "displayText": "Tomcat 8.0.23", + "value": "8.0.23", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.0.23" + } + } + } + ] + }, + { + "displayText": "Tomcat 7.0", + "value": "tomcat7.0", + "minorVersions": [ + { + "displayText": "Tomcat 7.0", + "value": "7.0", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "7.0", + "isAutoUpdate": true + } + } + }, + { + "displayText": "Tomcat 7.0.94", + "value": "7.0.94", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "7.0.94" + } + } + }, + { + "displayText": "Tomcat 7.0.81", + "value": "7.0.81", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "7.0.81" + } + } + }, + { + "displayText": "Tomcat 7.0.62", + "value": "7.0.62", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "7.0.62" + } + } + }, + { + "displayText": "Tomcat 7.0.50", + "value": "7.0.50", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "7.0.50" + } + } + } + ] + }, + { + "displayText": "Jetty 9.3", + "value": "jetty9.3", + "minorVersions": [ + { + "displayText": "Jetty 9.3", + "value": "9.3", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "JETTY", + "javaContainerVersion": "9.3", + "isAutoUpdate": true, + "isDeprecated": true + } + } + }, + { + "displayText": "Jetty 9.3.25", + "value": "9.3.25", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "JETTY", + "javaContainerVersion": "9.3.25", + "isDeprecated": true + } + } + }, + { + "displayText": "Jetty 9.3.13", + "value": "9.3.13", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "JETTY", + "javaContainerVersion": "9.3.13", + "isDeprecated": true + } + } + } + ] + }, + { + "displayText": "Jetty 9.1", + "value": "jetty9.1", + "minorVersions": [ + { + "displayText": "Jetty 9.1", + "value": "9.1", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "JETTY", + "javaContainerVersion": "9.1", + "isAutoUpdate": true, + "isDeprecated": true + } + } + }, + { + "displayText": "Jetty 9.1.0", + "value": "9.1.0", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "JETTY", + "javaContainerVersion": "9.1.0", + "isDeprecated": true + } + } + } + ] + }, + { + "displayText": "WildFly 14", + "value": "wildfly14", + "minorVersions": [ + { + "displayText": "WildFly 14", + "value": "14", + "stackSettings": { + "linuxContainerSettings": { + "java8Runtime": "WILDFLY|14-jre8", + "isDeprecated": true, + "isAutoUpdate": true + } + } + }, + { + "displayText": "WildFly 14.0.1", + "value": "14.0.1", + "stackSettings": { + "linuxContainerSettings": { + "isDeprecated": true, + "java8Runtime": "WILDFLY|14.0.1-java8" + } + } + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetWebAppStacksForLocation.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetWebAppStacksForLocation.json new file mode 100644 index 000000000000..4ff1cf3183cb --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetWebAppStacksForLocation.json @@ -0,0 +1,2923 @@ +{ + "parameters": { + "location": "westus", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/providers/Microsoft.Web/locations/webAppStacks/dotnet", + "name": "dotnet", + "type": "Microsoft.Web/locations/webAppStacks", + "location": "westus", + "properties": { + "displayText": ".NET", + "value": "dotnet", + "preferredOs": "Windows", + "majorVersions": [ + { + "displayText": ".NET 5", + "value": "5", + "minorVersions": [ + { + "displayText": ".NET 5", + "value": "5", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "v5.0", + "isEarlyAccess": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "5.0.x" + } + }, + "linuxRuntimeSettings": { + "runtimeVersion": "DOTNETCORE|5.0", + "isEarlyAccess": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "5.0.x" + } + } + } + } + ] + }, + { + "displayText": ".NET Core 3", + "value": "3", + "minorVersions": [ + { + "displayText": ".NET Core 3.1 (LTS)", + "value": "3.1", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "3.1", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.1.301" + } + }, + "linuxRuntimeSettings": { + "runtimeVersion": "DOTNETCORE|3.1", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.1.301" + } + } + } + }, + { + "displayText": ".NET Core 3.0", + "value": "3.0", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "3.0", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.0.103" + }, + "endOfLifeDate": "2020-04-03T00:00:00+00:00" + }, + "linuxRuntimeSettings": { + "runtimeVersion": "DOTNETCORE|3.0", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.0.103" + }, + "endOfLifeDate": "2020-04-03T00:00:00+00:00" + } + } + } + ] + }, + { + "displayText": ".NET Core 2", + "value": "dotnetcore2", + "minorVersions": [ + { + "displayText": ".NET Core 2.2", + "value": "2.2", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "2.2", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "2.2.207" + }, + "endOfLifeDate": "2020-01-23T00:00:00+00:00" + }, + "linuxRuntimeSettings": { + "runtimeVersion": "DOTNETCORE|2.2", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "2.2.207" + }, + "endOfLifeDate": "2020-01-23T00:00:00+00:00" + } + } + }, + { + "displayText": ".NET Core 2.1 (LTS)", + "value": "2.1", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "2.1", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "2.1.807" + }, + "endOfLifeDate": "2021-09-21T00:00:00+00:00" + }, + "linuxRuntimeSettings": { + "runtimeVersion": "DOTNETCORE|2.1", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "2.1.807" + }, + "endOfLifeDate": "2021-09-21T00:00:00+00:00" + } + } + }, + { + "displayText": ".NET Core 2.0", + "value": "2.0", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "2.0", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "2.1.202" + }, + "endOfLifeDate": "2018-11-01T00:00:00+00:00" + }, + "linuxRuntimeSettings": { + "runtimeVersion": "DOTNETCORE|2.0", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "2.1.202" + }, + "endOfLifeDate": "2018-11-01T00:00:00+00:00" + } + } + } + ] + }, + { + "displayText": ".NET Core 1", + "value": "1", + "minorVersions": [ + { + "displayText": ".NET Core 1.1", + "value": "1.1", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.1", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "1.1.14" + }, + "endOfLifeDate": "2019-07-27T00:00:00+00:00" + }, + "linuxRuntimeSettings": { + "runtimeVersion": "DOTNETCORE|1.1", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "1.1.14" + }, + "endOfLifeDate": "2019-07-27T00:00:00+00:00" + } + } + }, + { + "displayText": ".NET Core 1.0", + "value": "1.0", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.0", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "1.1.14" + }, + "endOfLifeDate": "2019-07-27T00:00:00+00:00" + }, + "linuxRuntimeSettings": { + "runtimeVersion": "DOTNETCORE|1.0", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "1.1.14" + }, + "endOfLifeDate": "2019-07-27T00:00:00+00:00" + } + } + } + ] + }, + { + "displayText": "ASP.NET V4", + "value": "v4", + "minorVersions": [ + { + "displayText": "ASP.NET V4.8", + "value": "v4.8", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "v4.0", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.1" + } + } + } + } + ] + }, + { + "displayText": "ASP.NET V3", + "value": "v3", + "minorVersions": [ + { + "displayText": "ASP.NET V3.5", + "value": "v3.5", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "v2.0", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "2.1" + } + } + } + } + ] + } + ] + } + }, + { + "id": "/providers/Microsoft.Web/locations/webAppStacks/node", + "name": "node", + "type": "Microsoft.Web/locations/webAppStacks", + "location": "westus", + "properties": { + "displayText": "Node", + "value": "node", + "preferredOs": "Linux", + "majorVersions": [ + { + "displayText": "Node LTS", + "value": "lts", + "minorVersions": [ + { + "displayText": "Node LTS", + "value": "lts", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|lts", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + } + } + } + } + ] + }, + { + "displayText": "Node 14", + "value": "14", + "minorVersions": [ + { + "displayText": "Node 14 LTS", + "value": "14-lts", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|14-lts", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "14.x" + }, + "isPreview": true, + "endOfLifeDate": "2023-05-30T00:00:00+00:00" + } + } + } + ] + }, + { + "displayText": "Node 12", + "value": "12", + "minorVersions": [ + { + "displayText": "Node 12 LTS", + "value": "12-lts", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|12-lts", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "12.x" + }, + "endOfLifeDate": "2022-05-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "12.13.0", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2022-05-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 12.9", + "value": "12.9", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|12.9", + "isDeprecated": true, + "remoteDebuggingSupported": true, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "12.x" + }, + "endOfLifeDate": "2022-05-01T00:00:00+00:00" + } + } + } + ] + }, + { + "displayText": "Node 10", + "value": "10", + "minorVersions": [ + { + "displayText": "Node 10 LTS", + "value": "10-LTS", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|10-lts", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "10.x" + }, + "endOfLifeDate": "2021-05-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 10.16", + "value": "10.16", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|10.16", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "10.x" + }, + "endOfLifeDate": "2021-05-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 10.15", + "value": "10.15", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "10.15.2", + "isPreview": true, + "isHidden": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "10.x" + }, + "endOfLifeDate": "2021-05-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 10.14", + "value": "10.14", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|10.14", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "10.x" + }, + "endOfLifeDate": "2021-05-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "10.14.1", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "10.x" + }, + "endOfLifeDate": "2021-05-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 10.12", + "value": "10.12", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|10.12", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "10.x" + }, + "endOfLifeDate": "2021-05-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 10.10", + "value": "10.10", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|10.10", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "10.x" + }, + "endOfLifeDate": "2021-05-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "10.0.0", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "10.x" + }, + "endOfLifeDate": "2021-05-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 10.6", + "value": "10.6", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|10.6", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "10.x" + }, + "endOfLifeDate": "2021-05-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "10.6.0", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2021-05-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 10.1", + "value": "10.1", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|10.1", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "10.x" + }, + "endOfLifeDate": "2021-05-01T00:00:00+00:00" + } + } + } + ] + }, + { + "displayText": "Node 9", + "value": "9", + "minorVersions": [ + { + "displayText": "Node 9.4", + "value": "9.4", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|9.4", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2019-07-30T00:00:00+00:00" + } + } + } + ] + }, + { + "displayText": "Node 8", + "value": "8", + "minorVersions": [ + { + "displayText": "Node 8 LTS", + "value": "8-lts", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|8-lts", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 8.12", + "value": "8.12", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|8.12", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 8.11", + "value": "8.11", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|8.11", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "8.11", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 8.10", + "value": "8.10", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "8.10", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 8.9", + "value": "8.9", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|8.9", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "8.9", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 8.8", + "value": "8.8", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|8.8", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 8.5", + "value": "8.5", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "8.5", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 8.4", + "value": "8.4", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "8.4", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 8.2", + "value": "8.2", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|8.2", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 8.1", + "value": "8.1", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|8.1", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "8.1.4", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 8.0", + "value": "8.0", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|8.0", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + } + } + } + ] + }, + { + "displayText": "Node 7", + "value": "7", + "minorVersions": [ + { + "displayText": "Node 7.10", + "value": "7.10", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "7.10.1", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2017-07-30T00:00:00+00:00" + } + } + } + ] + }, + { + "displayText": "Node 6", + "value": "6", + "minorVersions": [ + { + "displayText": "Node 6 LTS", + "value": "6-LTS", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|6-lts", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2019-05-30T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 6.12", + "value": "6.12", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "6.12", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2019-05-30T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 6.11", + "value": "6.11", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|6.11", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2019-05-30T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 6.10", + "value": "6.10", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|6.10", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2019-05-30T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 6.9", + "value": "6.9", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|6.9", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2019-05-30T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "6.9.5", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2019-05-30T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 6.6", + "value": "6.6", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|6.6", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2019-05-30T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 6.5", + "value": "6.5", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "6.5.0", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2019-05-30T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 6.2", + "value": "6.2", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|6.2", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2019-05-30T00:00:00+00:00" + } + } + } + ] + }, + { + "displayText": "Node 4", + "value": "4", + "minorVersions": [ + { + "displayText": "Node 4.8", + "value": "4.8", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|4.8", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2018-05-30T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "4.8", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2018-05-30T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 4.5", + "value": "4.5", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|4.5", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2018-05-30T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 4.4", + "value": "4.4", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|4.4", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2018-05-30T00:00:00+00:00" + } + } + } + ] + } + ] + } + }, + { + "id": "/providers/Microsoft.Web/locations/webAppStacks/python", + "name": "python", + "type": "Microsoft.Web/locations/webAppStacks", + "location": "westus", + "properties": { + "displayText": "Python", + "value": "python", + "preferredOs": "Linux", + "majorVersions": [ + { + "displayText": "Python 3", + "value": "3", + "minorVersions": [ + { + "displayText": "Python 3.8", + "value": "3.8", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "PYTHON|3.8", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.8" + } + } + } + }, + { + "displayText": "Python 3.7", + "value": "3.7", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "PYTHON|3.7", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.7" + } + } + } + }, + { + "displayText": "Python 3.6", + "value": "3.6", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "PYTHON|3.6", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.6" + } + }, + "windowsRuntimeSettings": { + "runtimeVersion": "3.4.0", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.6" + } + } + } + } + ] + }, + { + "displayText": "Python 2", + "value": "2", + "minorVersions": [ + { + "displayText": "Python 2.7", + "value": "2.7", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "PYTHON|2.7", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "2.7" + }, + "endOfLifeDate": "2020-02-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "2.7.3", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "2.7" + }, + "endOfLifeDate": "2020-02-01T00:00:00+00:00" + } + } + } + ] + } + ] + } + }, + { + "id": "/providers/Microsoft.Web/locations/webAppStacks/php", + "name": "php", + "type": "Microsoft.Web/locations/webAppStacks", + "location": "westus", + "properties": { + "displayText": "PHP", + "value": "php", + "preferredOs": "Linux", + "majorVersions": [ + { + "displayText": "PHP 7", + "value": "7", + "minorVersions": [ + { + "displayText": "PHP 7.4", + "value": "7.4", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "7.4", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2022-12-28T00:00:00+00:00" + }, + "linuxRuntimeSettings": { + "runtimeVersion": "PHP|7.4", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2022-12-28T00:00:00+00:00" + } + } + }, + { + "displayText": "PHP 7.3", + "value": "7.3", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "PHP|7.3", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2022-01-06T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "7.3", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2022-01-06T00:00:00+00:00" + } + } + }, + { + "displayText": "PHP 7.2", + "value": "7.2", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "PHP|7.2", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2020-12-30T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "7.2", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2020-12-30T00:00:00+00:00" + } + } + }, + { + "displayText": "PHP 7.1", + "value": "7.1", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "7.1", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2020-03-01T00:00:00+00:00" + } + } + }, + { + "displayText": "7.0", + "value": "7.0", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "PHP|7.0", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2020-03-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "7.0", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2020-03-01T00:00:00+00:00" + } + } + } + ] + }, + { + "displayText": "PHP 5", + "value": "5", + "minorVersions": [ + { + "displayText": "PHP 5.6", + "value": "5.6", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "PHP|5.6", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2021-03-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "5.6", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2021-03-01T00:00:00+00:00" + } + } + } + ] + } + ] + } + }, + { + "id": "/providers/Microsoft.Web/locations/webAppStacks/ruby", + "name": "ruby", + "type": "Microsoft.Web/locations/webAppStacks", + "location": "westus", + "properties": { + "displayText": "Ruby", + "value": "ruby", + "preferredOs": "Linux", + "majorVersions": [ + { + "displayText": "Ruby 2", + "value": "2", + "minorVersions": [ + { + "displayText": "Ruby 2.6", + "value": "2.6", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "RUBY|2.6", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + } + } + } + }, + { + "displayText": "Ruby 2.6.2", + "value": "2.6.2", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "RUBY|2.6.2", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + } + } + } + }, + { + "displayText": "Ruby 2.5", + "value": "2.5", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "RUBY|2.5", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + } + } + } + }, + { + "displayText": "Ruby 2.5.5", + "value": "2.5.5", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "RUBY|2.5.5", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + } + } + } + }, + { + "displayText": "Ruby 2.4", + "value": "2.4", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "RUBY|2.4", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2020-05-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Ruby 2.4.5", + "value": "2.4.5", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "RUBY|2.4.5", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2020-05-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Ruby 2.3", + "value": "2.3", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "RUBY|2.3", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2019-05-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Ruby 2.3.8", + "value": "2.3.8", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "RUBY|2.3.8", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2019-05-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Ruby 2.3.3", + "value": "2.3.3", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "RUBY|2.3.3", + "remoteDebuggingSupported": false, + "isDeprecated": true, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2019-05-01T00:00:00+00:00" + } + } + } + ] + } + ] + } + }, + { + "id": "/providers/Microsoft.Web/locations/webAppStacks/java", + "name": "java", + "type": "Microsoft.Web/locations/webAppStacks", + "location": "westus", + "properties": { + "displayText": "Java", + "value": "java", + "preferredOs": "Linux", + "majorVersions": [ + { + "displayText": "Java 11", + "value": "11", + "minorVersions": [ + { + "displayText": "Java 11", + "value": "11.0", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "", + "isAutoUpdate": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "11" + }, + "endOfLifeDate": "2026-10-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "11", + "isAutoUpdate": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "11" + }, + "endOfLifeDate": "2026-10-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 11.0.7", + "value": "11.0.7", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "11" + }, + "endOfLifeDate": "2026-10-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "11.0.7", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "11" + }, + "endOfLifeDate": "2026-10-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 11.0.6", + "value": "11.0.6", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "11" + }, + "endOfLifeDate": "2026-10-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "11.0.6", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "11" + }, + "endOfLifeDate": "2026-10-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 11.0.5", + "value": "11.0.5", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "11" + }, + "endOfLifeDate": "2026-10-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "11.0.5_ZULU", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "11" + }, + "endOfLifeDate": "2026-10-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 11.0.3", + "value": "11.0.3", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "11.0.3_ZULU", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "11" + }, + "endOfLifeDate": "2026-10-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 11.0.2", + "value": "11.0.2", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "11.0.2_ZULU", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "11" + }, + "endOfLifeDate": "2026-10-01T00:00:00+00:00" + } + } + } + ] + }, + { + "displayText": "Java 8", + "value": "8", + "minorVersions": [ + { + "displayText": "Java 8", + "value": "8.0", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "", + "isAutoUpdate": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "1.8", + "isAutoUpdate": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.8.0_252", + "value": "8.0.252", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_252", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.8.0_242", + "value": "8.0.242", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_242", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.8.0_232", + "value": "8.0.232", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_232_ZULU", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.8.0_212", + "value": "8.0.212", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_212_ZULU", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.8.0_202", + "value": "8.0.202", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_202_ZULU", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.8.0_202 (Oracle)", + "value": "8.0.202 (Oracle)", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_202", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + } + } + } + }, + { + "displayText": "Java 1.8.0_181", + "value": "8.0.181", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_181_ZULU", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.8.0_181 (Oracle)", + "value": "8.0.181 (Oracle)", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_181", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + } + } + } + }, + { + "displayText": "Java 1.8.0_172", + "value": "8.0.172", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_172_ZULU", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.8.0_172 (Oracle)", + "value": "8.0.172 (Oracle)", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_172", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + } + } + } + }, + { + "displayText": "Java 1.8.0_144", + "value": "8.0.144", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_144", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.8.0_111 (Oracle)", + "value": "8.0.111 (Oracle)", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_111", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + } + } + } + }, + { + "displayText": "Java 1.8.0_102", + "value": "8.0.102", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_102", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.8.0_92", + "value": "8.0.92", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_92", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.8.0_73 (Oracle)", + "value": "8.0.73 (Oracle)", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_73", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + } + } + } + }, + { + "displayText": "Java 1.8.0_60 (Oracle)", + "value": "8.0.60 (Oracle)", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_60", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + } + } + } + }, + { + "displayText": "Java 1.8.0_25 (Oracle)", + "value": "8.0.25 (Oracle)", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_25", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + } + } + } + } + ] + }, + { + "displayText": "Java 7", + "value": "7", + "minorVersions": [ + { + "displayText": "Java 7", + "value": "7.0", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.7", + "isAutoUpdate": true, + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2023-08-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.7.0_262", + "value": "7.0.262", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.7.0_262_ZULU", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2023-08-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.7.0_242", + "value": "7.0.242", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.7.0_242_ZULU", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2023-08-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.7.0_222", + "value": "7.0.222", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.7.0_222_ZULU", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2023-08-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.7.0_191", + "value": "7.0.191", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.7.0_191_ZULU", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2023-08-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.7.0_80 (Oracle)", + "value": "7.0.80 (Oracle)", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.7.0_80", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + } + } + } + }, + { + "displayText": "Java 1.7.0_71 (Oracle)", + "value": "7.0.71 (Oracle)", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.7.0_71", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + } + } + } + }, + { + "displayText": "Java 1.7.0_51 (Oracle)", + "value": "7.0.51 (Oracle)", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.7.0_51", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + } + } + } + } + ] + } + ] + } + }, + { + "id": "/providers/Microsoft.Web/locations/webAppStacks/javacontainers", + "name": "javacontainers", + "type": "Microsoft.Web/locations/webAppStacks", + "location": "westus", + "properties": { + "displayText": "Java Containers", + "value": "javacontainers", + "majorVersions": [ + { + "displayText": "Java SE (Embedded Web Server)", + "value": "javase", + "minorVersions": [ + { + "displayText": "Java SE (Embedded Web Server)", + "value": "SE", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "JAVA", + "javaContainerVersion": "SE", + "isAutoUpdate": true + }, + "linuxContainerSettings": { + "java11Runtime": "JAVA|11-java11", + "java8Runtime": "JAVA|8-jre8", + "isAutoUpdate": true + } + } + }, + { + "displayText": "Java SE 11.0.7", + "value": "11.0.7", + "stackSettings": { + "linuxContainerSettings": { + "java11Runtime": "JAVA|11.0.7" + } + } + }, + { + "displayText": "Java SE 11.0.6", + "value": "11.0.6", + "stackSettings": { + "linuxContainerSettings": { + "java11Runtime": "JAVA|11.0.6" + } + } + }, + { + "displayText": "Java SE 11.0.5", + "value": "11.0.5", + "stackSettings": { + "linuxContainerSettings": { + "java11Runtime": "JAVA|11.0.5" + } + } + }, + { + "displayText": "Java SE 8u252", + "value": "1.8.252", + "stackSettings": { + "linuxContainerSettings": { + "java8Runtime": "JAVA|8u252" + } + } + }, + { + "displayText": "Java SE 8u242", + "value": "1.8.242", + "stackSettings": { + "linuxContainerSettings": { + "java8Runtime": "JAVA|8u242" + } + } + }, + { + "displayText": "Java SE 8u232", + "value": "1.8.232", + "stackSettings": { + "linuxContainerSettings": { + "java8Runtime": "JAVA|8u232" + } + } + } + ] + }, + { + "displayText": "JBoss EAP", + "value": "jbosseap", + "minorVersions": [ + { + "displayText": "JBoss EAP 7.2", + "value": "7.2", + "stackSettings": { + "linuxContainerSettings": { + "java8Runtime": "JBOSSEAP|7.2-java8", + "isPreview": true + } + } + } + ] + }, + { + "displayText": "Tomcat 9.0", + "value": "tomcat9.0", + "minorVersions": [ + { + "displayText": "Tomcat 9.0", + "value": "9.0", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "9.0", + "isAutoUpdate": true + }, + "linuxContainerSettings": { + "java11Runtime": "TOMCAT|9.0-java11", + "java8Runtime": "TOMCAT|9.0-jre8", + "isAutoUpdate": true + } + } + }, + { + "displayText": "Tomcat 9.0.37", + "value": "9.0.37", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "9.0.37" + }, + "linuxContainerSettings": { + "java11Runtime": "TOMCAT|9.0.37-java11", + "java8Runtime": "TOMCAT|9.0.37-java8" + } + } + }, + { + "displayText": "Tomcat 9.0.33", + "value": "9.0.33", + "stackSettings": { + "linuxContainerSettings": { + "java11Runtime": "TOMCAT|9.0.33-java11", + "java8Runtime": "TOMCAT|9.0.33-java8" + } + } + }, + { + "displayText": "Tomcat 9.0.31", + "value": "9.0.31", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "9.0.31" + } + } + }, + { + "displayText": "Tomcat 9.0.27", + "value": "9.0.27", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "9.0.27" + } + } + }, + { + "displayText": "Tomcat 9.0.21", + "value": "9.0.21", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "9.0.21" + } + } + }, + { + "displayText": "Tomcat 9.0.20", + "value": "9.0.20", + "stackSettings": { + "linuxContainerSettings": { + "java11Runtime": "TOMCAT|9.0.20-java11", + "java8Runtime": "TOMCAT|9.0.20-java8" + } + } + }, + { + "displayText": "Tomcat 9.0.14", + "value": "9.0.14", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "9.0.14" + } + } + }, + { + "displayText": "Tomcat 9.0.12", + "value": "9.0.12", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "9.0.12" + } + } + }, + { + "displayText": "Tomcat 9.0.8", + "value": "9.0.8", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "9.0.8" + } + } + }, + { + "displayText": "Tomcat 9.0.0", + "value": "9.0.0", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "9.0.0" + } + } + } + ] + }, + { + "displayText": "Tomcat 8.5", + "value": "tomcat8.5", + "minorVersions": [ + { + "displayText": "Tomcat 8.5", + "value": "8.5", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.5", + "isAutoUpdate": true + }, + "linuxContainerSettings": { + "java11Runtime": "TOMCAT|8.5-java11", + "java8Runtime": "TOMCAT|8.5-jre8", + "isAutoUpdate": true + } + } + }, + { + "displayText": "Tomcat 8.5.6", + "value": "8.5.6", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.5.6" + } + } + }, + { + "displayText": "Tomcat 8.5.57", + "value": "8.5.57", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.5.57" + }, + "linuxContainerSettings": { + "java11Runtime": "TOMCAT|8.5.57-java11", + "java8Runtime": "TOMCAT|8.5.57-java8" + } + } + }, + { + "displayText": "Tomcat 8.5.53", + "value": "8.5.53", + "stackSettings": { + "linuxContainerSettings": { + "java11Runtime": "TOMCAT|8.5.53-java11", + "java8Runtime": "TOMCAT|8.5.53-java8" + } + } + }, + { + "displayText": "Tomcat 8.5.51", + "value": "8.5.51", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.5.51" + } + } + }, + { + "displayText": "Tomcat 8.5.47", + "value": "8.5.47", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.5.47" + } + } + }, + { + "displayText": "Tomcat 8.5.42", + "value": "8.5.42", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.5.42" + } + } + }, + { + "displayText": "Tomcat 8.5.41", + "value": "8.5.41", + "stackSettings": { + "linuxContainerSettings": { + "java11Runtime": "TOMCAT|8.5.41-java11", + "java8Runtime": "TOMCAT|8.5.41-java8" + } + } + }, + { + "displayText": "Tomcat 8.5.37", + "value": "8.5.37", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.5.37" + } + } + }, + { + "displayText": "Tomcat 8.5.34", + "value": "8.5.34", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.5.34" + } + } + }, + { + "displayText": "Tomcat 8.5.31", + "value": "8.5.31", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.5.31" + } + } + }, + { + "displayText": "Tomcat 8.5.20", + "value": "8.5.20", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.5.20" + } + } + } + ] + }, + { + "displayText": "Tomcat 8.0", + "value": "tomcat8.0", + "minorVersions": [ + { + "displayText": "Tomcat 8.0", + "value": "8.0", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.0", + "isAutoUpdate": true + } + } + }, + { + "displayText": "Tomcat 8.0.53", + "value": "8.0.53", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.0.53" + } + } + }, + { + "displayText": "Tomcat 8.0.46", + "value": "8.0.46", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.0.46" + } + } + }, + { + "displayText": "Tomcat 8.0.23", + "value": "8.0.23", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.0.23" + } + } + } + ] + }, + { + "displayText": "Tomcat 7.0", + "value": "tomcat7.0", + "minorVersions": [ + { + "displayText": "Tomcat 7.0", + "value": "7.0", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "7.0", + "isAutoUpdate": true + } + } + }, + { + "displayText": "Tomcat 7.0.94", + "value": "7.0.94", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "7.0.94" + } + } + }, + { + "displayText": "Tomcat 7.0.81", + "value": "7.0.81", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "7.0.81" + } + } + }, + { + "displayText": "Tomcat 7.0.62", + "value": "7.0.62", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "7.0.62" + } + } + }, + { + "displayText": "Tomcat 7.0.50", + "value": "7.0.50", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "7.0.50" + } + } + } + ] + }, + { + "displayText": "Jetty 9.3", + "value": "jetty9.3", + "minorVersions": [ + { + "displayText": "Jetty 9.3", + "value": "9.3", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "JETTY", + "javaContainerVersion": "9.3", + "isAutoUpdate": true, + "isDeprecated": true + } + } + }, + { + "displayText": "Jetty 9.3.25", + "value": "9.3.25", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "JETTY", + "javaContainerVersion": "9.3.25", + "isDeprecated": true + } + } + }, + { + "displayText": "Jetty 9.3.13", + "value": "9.3.13", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "JETTY", + "javaContainerVersion": "9.3.13", + "isDeprecated": true + } + } + } + ] + }, + { + "displayText": "Jetty 9.1", + "value": "jetty9.1", + "minorVersions": [ + { + "displayText": "Jetty 9.1", + "value": "9.1", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "JETTY", + "javaContainerVersion": "9.1", + "isAutoUpdate": true, + "isDeprecated": true + } + } + }, + { + "displayText": "Jetty 9.1.0", + "value": "9.1.0", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "JETTY", + "javaContainerVersion": "9.1.0", + "isDeprecated": true + } + } + } + ] + }, + { + "displayText": "WildFly 14", + "value": "wildfly14", + "minorVersions": [ + { + "displayText": "WildFly 14", + "value": "14", + "stackSettings": { + "linuxContainerSettings": { + "java8Runtime": "WILDFLY|14-jre8", + "isDeprecated": true, + "isAutoUpdate": true + } + } + }, + { + "displayText": "WildFly 14.0.1", + "value": "14.0.1", + "stackSettings": { + "linuxContainerSettings": { + "isDeprecated": true, + "java8Runtime": "WILDFLY|14.0.1-java8" + } + } + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetWebSiteNetworkTraceOperation.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetWebSiteNetworkTraceOperation.json new file mode 100644 index 000000000000..47f9ba43dde1 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetWebSiteNetworkTraceOperation.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "name": "SampleApp", + "slot": "Production", + "operationId": "c291433b-53ad-4c49-8cae-0a293eae1c6d", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": [ + { + "path": "D:\\home\\LogFiles\\networktrace\\10.0.0.1_2018_02_01T00_00_00.zip", + "status": "Succeeded", + "message": "Trace file has been saved as D:\\home\\LogFiles\\networktrace\\10.0.0.1_2018_02_01T00_00_00.zip" + } + ] + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/sites/SampleApp/networktraces/current/operationresults/c291433b-53ad-4c49-8cae-0a293eae1c6d", + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/sites/SampleApp/networktraces/current/operationresults/c291433b-53ad-4c49-8cae-0a293eae1c6d" + }, + "body": [ + { + "path": "D:\\home\\LogFiles\\networktrace\\10.0.0.1_2018_02_01T00_00_00.zip", + "status": "Succeeded", + "message": "Trace file has been saved as D:\\home\\LogFiles\\networktrace\\10.0.0.1_2018_02_01T00_00_00.zip" + } + ] + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetWebSiteNetworkTraces.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetWebSiteNetworkTraces.json new file mode 100644 index 000000000000..5fe86836002e --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/GetWebSiteNetworkTraces.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "name": "SampleApp", + "slot": "Production", + "operationId": "c291433b-53ad-4c49-8cae-0a293eae1c6d", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": [ + { + "path": "D:\\home\\LogFiles\\networktrace\\10.0.0.1_2018_02_01T00_00_00.zip", + "status": "Succeeded", + "message": "Trace file has been saved as D:\\home\\LogFiles\\networktrace\\10.0.0.1_2018_02_01T00_00_00.zip" + } + ] + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListAppServicePlans.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListAppServicePlans.json new file mode 100644 index 000000000000..9998eb8d40d7 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListAppServicePlans.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/serverfarms/testsf6141", + "name": "testsf6141", + "type": "Microsoft.Web/serverfarms", + "kind": "app", + "location": "East US", + "properties": { + "status": "Ready", + "maximumNumberOfWorkers": 20, + "geoRegion": "East US", + "numberOfSites": 4, + "isSpot": false, + "reserved": false, + "targetWorkerCount": 0, + "targetWorkerSizeId": 0, + "provisioningState": "Succeeded" + }, + "sku": { + "name": "P1", + "tier": "Premium", + "size": "P1", + "family": "P", + "capacity": 1 + } + }, + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/serverfarms/testsf7252", + "name": "testsf7252", + "type": "Microsoft.Web/serverfarms", + "kind": "app", + "location": "East US", + "properties": { + "status": "Ready", + "maximumNumberOfWorkers": 20, + "geoRegion": "East US", + "numberOfSites": 4, + "isSpot": false, + "reserved": false, + "targetWorkerCount": 0, + "targetWorkerSizeId": 0, + "provisioningState": "Succeeded" + }, + "sku": { + "name": "P1", + "tier": "Premium", + "size": "P1", + "family": "P", + "capacity": 1 + } + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListAppServicePlansByResourceGroup.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListAppServicePlansByResourceGroup.json new file mode 100644 index 000000000000..911b98e2fa1b --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListAppServicePlansByResourceGroup.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/serverfarms/testsf6141", + "name": "testsf6141", + "type": "Microsoft.Web/serverfarms", + "kind": "app", + "location": "East US", + "properties": { + "status": "Ready", + "maximumNumberOfWorkers": 20, + "geoRegion": "East US", + "numberOfSites": 4, + "isSpot": false, + "reserved": false, + "targetWorkerCount": 0, + "targetWorkerSizeId": 0, + "provisioningState": "Succeeded" + }, + "sku": { + "name": "P1", + "tier": "Premium", + "size": "P1", + "family": "P", + "capacity": 1 + } + }, + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/serverfarms/testsf7252", + "name": "testsf7252", + "type": "Microsoft.Web/serverfarms", + "kind": "app", + "location": "East US", + "properties": { + "status": "Ready", + "maximumNumberOfWorkers": 20, + "geoRegion": "East US", + "numberOfSites": 4, + "isSpot": false, + "reserved": false, + "targetWorkerCount": 0, + "targetWorkerSizeId": 0, + "provisioningState": "Succeeded" + }, + "sku": { + "name": "P1", + "tier": "Premium", + "size": "P1", + "family": "P", + "capacity": 1 + } + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListCertificates.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListCertificates.json new file mode 100644 index 000000000000..f8b2908692c8 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListCertificates.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/certificates/testc6282", + "name": "testc6282", + "type": "Microsoft.Web/certificates", + "location": "East US", + "properties": { + "friendlyName": "", + "subjectName": "ServerCert", + "hostNames": [ + "ServerCert" + ], + "issuer": "CACert", + "issueDate": "2015-11-12T23:40:25+00:00", + "expirationDate": "2039-12-31T23:59:59+00:00", + "thumbprint": "FE703D7411A44163B6D32B3AD9B03E175886EBFE" + } + }, + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/certificates/testc4912", + "name": "testc4912", + "type": "Microsoft.Web/certificates", + "location": "West US", + "properties": { + "friendlyName": "", + "subjectName": "ServerCert2", + "hostNames": [ + "ServerCert2" + ], + "issuer": "CACert", + "issueDate": "2015-12-12T23:40:25+00:00", + "expirationDate": "2040-12-31T23:59:59+00:00", + "thumbprint": "FE703D7411A44163B6D32B3AD9B0490D5886EBFE" + } + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListCertificatesByResourceGroup.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListCertificatesByResourceGroup.json new file mode 100644 index 000000000000..9cb3022de419 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListCertificatesByResourceGroup.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/certificates/testc6282", + "name": "testc6282", + "type": "Microsoft.Web/certificates", + "location": "East US", + "properties": { + "friendlyName": "", + "subjectName": "ServerCert", + "hostNames": [ + "ServerCert" + ], + "issuer": "CACert", + "issueDate": "2015-11-12T23:40:25+00:00", + "expirationDate": "2039-12-31T23:59:59+00:00", + "thumbprint": "FE703D7411A44163B6D32B3AD9B03E175886EBFE" + } + }, + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/certificates/testc4912", + "name": "testc4912", + "type": "Microsoft.Web/certificates", + "location": "West US", + "properties": { + "friendlyName": "", + "subjectName": "ServerCert2", + "hostNames": [ + "ServerCert2" + ], + "issuer": "CACert", + "issueDate": "2015-12-12T23:40:25+00:00", + "expirationDate": "2040-12-31T23:59:59+00:00", + "thumbprint": "FE703D7411A44163B6D32B3AD9B0490D5886EBFE" + } + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListDeletedWebAppsByLocation.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListDeletedWebAppsByLocation.json new file mode 100644 index 000000000000..c30ef81bd18b --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListDeletedWebAppsByLocation.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "location": "West US 2", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "name": "wussite6", + "type": "Microsoft.Web/locations/deletedSites", + "properties": { + "deletedSiteId": 9, + "deletedTimestamp": "2019-05-09T22:29:05.1337007", + "subscription": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroup": "rg1", + "deletedSiteName": "wussite6", + "slot": "Production", + "kind": "app", + "geoRegionName": "West US 2" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListOperations.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListOperations.json new file mode 100644 index 000000000000..1a40c8e3bdda --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListOperations.json @@ -0,0 +1,5821 @@ +{ + "parameters": { + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "name": "Microsoft.Web/sites/Read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App", + "operation": "Get Web App", + "description": "Get the properties of a Web App" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/Write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App", + "operation": "Create or Update Web App", + "description": "Create a new Web App or update an existing one" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/slots/Write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App Slot", + "operation": "Create or Update Web App Slot", + "description": "Create a new Web App Slot or update an existing one" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/Delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App", + "operation": "Delete Web App", + "description": "Delete an existing Web App" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/slots/Delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App Slot", + "operation": "Delete Web App Slot", + "description": "Delete an existing Web App Slot" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/slots/config/Read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App Slot", + "operation": "Get Web App Slot Configuration", + "description": "Get Web App Slot's configuration settings" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/config/Read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App", + "operation": "Get Web App Configuration", + "description": "Get Web App configuration settings" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/config/list/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App", + "operation": "List Web App Security Sensitive Settings", + "description": "List Web App's security sensitive settings, such as publishing credentials, app settings and connection strings" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/slots/config/list/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App Slot", + "operation": "List Web App Slot Security Sensitive Settings", + "description": "List Web App Slot's security sensitive settings, such as publishing credentials, app settings and connection strings" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/config/Write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App", + "operation": "Update Web App Configuration", + "description": "Update Web App's configuration settings" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/slots/config/Write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App Slot", + "operation": "Update Web App Slot Configuration", + "description": "Update Web App Slot's configuration settings" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/sourcecontrols/Read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App", + "operation": "Get Web App Source Control Configuration", + "description": "Get Web App's source control configuration settings" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/slots/sourcecontrols/Read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App Slot", + "operation": "Get Web App Slot Source Control Configuration", + "description": "Get Web App Slot's source control configuration settings" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/sourcecontrols/Write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App", + "operation": "Update Web App Source Control Configuration", + "description": "Update Web App's source control configuration settings" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/slots/sourcecontrols/Write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App Slot", + "operation": "Update Web App Slot Source Control Configuration", + "description": "Update Web App Slot's source control configuration settings" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/sourcecontrols/Delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App", + "operation": "Delete Web App Source Control Configuration", + "description": "Delete Web App's source control configuration settings" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/slots/sourcecontrols/Delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App Slot", + "operation": "Delete Web App Slot Source Control Configuration", + "description": "Delete Web App Slot's source control configuration settings" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/backup/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App", + "operation": "Create Web App Backup", + "description": "Create a new web app backup" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/slots/backup/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App Slot", + "operation": "Create Web App Slot Backup", + "description": "Create new Web App Slot backup." + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/backups/Read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App", + "operation": "Get Web App Backup", + "description": "Get the properties of a web app's backup" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/slots/backups/Read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App Slot", + "operation": "List Web App Slot Backups", + "description": "Get the properties of a web app slots' backup" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/publishxml/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App", + "operation": "Get Web App Publishing Profile", + "description": "Get publishing profile xml for a Web App" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/slots/publishxml/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App Slot", + "operation": "Get Web App Slot Publishing Profile", + "description": "Get publishing profile xml for Web App Slot" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/publish/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App", + "operation": "Publish Web App", + "description": "Publish a Web App" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/slots/publish/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App Slot", + "operation": "Publish Web App Slot", + "description": "Publish a Web App Slot" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/restart/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App", + "operation": "Restart Web App", + "description": "Restart a Web App" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/slots/restart/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App Slot", + "operation": "Restart Web App Slot", + "description": "Restart a Web App Slot" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/start/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App", + "operation": "Start Web App", + "description": "Start a Web App" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/slots/start/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App Slot", + "operation": "Start Web App Slot", + "description": "Start a Web App Slot" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/stop/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App", + "operation": "Stop Web App", + "description": "Stop a Web App" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/slots/stop/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App Slot", + "operation": "Stop Web App Slot", + "description": "Stop a Web App Slot" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/slotsswap/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App", + "operation": "Swap Web App Slots", + "description": "Swap Web App deployment slots" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/slots/slotsswap/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App Slot", + "operation": "Swap Web App Slots", + "description": "Swap Web App deployment slots" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/slotsdiffs/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App", + "operation": "Get Web App Slots Differences", + "description": "Get differences in configuration between web app and slots" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/slots/slotsdiffs/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App Slot", + "operation": "Get Web App Slots Differences", + "description": "Get differences in configuration between web app and slots" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/applySlotConfig/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App", + "operation": "Apply Web App Configuration", + "description": "Apply web app slot configuration from target slot to the current web app" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/slots/applySlotConfig/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App Slot", + "operation": "Apply Web App Slot Configuration", + "description": "Apply web app slot configuration from target slot to the current slot." + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/resetSlotConfig/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App", + "operation": "Reset Web App Configuration", + "description": "Reset web app configuration" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/slots/resetSlotConfig/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App Slot", + "operation": "Reset Web App Slot Configuration", + "description": "Reset web app slot configuration" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/slots/Read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App Slot", + "operation": "Get Web App Deployment Slot", + "description": "Get the properties of a Web App deployment slot" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/serverfarms/Read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Plan", + "operation": "Get App Service Plan", + "description": "Get the properties on an App Service Plan" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/serverfarms/Write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Plan", + "operation": "Create or Update App Service Plan", + "description": "Create a new App Service Plan or update an existing one" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/serverfarms/Delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Plan", + "operation": "Delete App Service Plan", + "description": "Delete an existing App Service Plan" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/serverfarms/restartSites/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Plan", + "operation": "Restart Web Apps", + "description": "Restart all Web Apps in an App Service Plan" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/certificates/Read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Certificate", + "operation": "Get Certificates", + "description": "Get the list of certificates." + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/certificates/Write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Certificate", + "operation": "Add or Update Certificate", + "description": "Add a new certificate or update an existing one." + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/certificates/Delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Certificate", + "operation": "Delete Certificate", + "description": "Delete an existing certificate." + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/geoRegions/Read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Geo Region", + "operation": "Get Geo Regions", + "description": "Get the list of Geo regions." + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/listSitesAssignedToHostName/Read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Site Name", + "operation": "Get sites assigned to hostname", + "description": "Get names of sites assigned to hostname." + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/hostingEnvironments/Read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Environment", + "operation": "Get App Service Environment", + "description": "Get the properties of an App Service Environment" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/hostingEnvironments/Write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Environment", + "operation": "Create or Update App Service Environment", + "description": "Create a new App Service Environment or update existing one" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/hostingEnvironments/Delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Environment", + "operation": "Delete App Service Environment", + "description": "Delete an App Service Environment" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/hostingEnvironments/reboot/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Environment", + "operation": "Reboot an App Service Environment", + "description": "Reboot all machines in an App Service Environment" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/hostingEnvironments/multiRolePools/Read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Environment FrontEnd Pool", + "operation": "Get FrontEnd Pool", + "description": "Get the properties of a FrontEnd Pool in an App Service Environment" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/hostingEnvironments/multiRolePools/Write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Environment FrontEnd Pool", + "operation": "Create or Update FrontEnd Pool", + "description": "Create a new FrontEnd Pool in an App Service Environment or update an existing one" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/hostingEnvironments/workerPools/Read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Environment Worker Pool", + "operation": "Get Worker Pool", + "description": "Get the properties of a Worker Pool in an App Service Environment" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/hostingEnvironments/workerPools/Write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Environment Worker Pool", + "operation": "Create or Update Worker Pool", + "description": "Create a new Worker Pool in an App Service Environment or update an existing one" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/connections/Read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Connections", + "operation": "Get Connections", + "description": "Get the list of Connections." + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/connections/Write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Connections", + "operation": "Add or Update Connection", + "description": "Creates or updates a Connection." + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/connections/Delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Connections", + "operation": "Delete Connection", + "description": "Deletes a Connection." + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/connections/Join/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Connections", + "operation": "Join Connection", + "description": "Joins a Connection." + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/connectionGateways/Read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Connection Gateways", + "operation": "Get Connection Gateways", + "description": "Get the list of Connection Gateways." + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/connectionGateways/Write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Connection Gateways", + "operation": "Add or Update Connection Gateways", + "description": "Creates or updates a Connection Gateway." + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/connectionGateways/Delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Connection Gateways", + "operation": "Delete Connection Gateway", + "description": "Deletes a Connection Gateway." + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/connectionGateways/Join/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Connection Gateways", + "operation": "Join Connection Gateway", + "description": "Joins a Connection Gateway." + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/recommendations/Read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Recommendation", + "operation": "Get recommendations", + "description": "Get the list of recommendations for subscriptions." + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/recommendations/Read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Recommendation", + "operation": "Get recommendations for web app", + "description": "Get the list of recommendations for web app." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/availablestacks/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Available Stacks", + "operation": "Get Available Stacks", + "description": "Get Available Stacks." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/functionappstacks/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Function App Stacks", + "operation": "Get Function App Stacks", + "description": "Get Function App Stacks." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/webappstacks/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App Stacks", + "operation": "Get Web App Stacks", + "description": "Get Web App Stacks." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/checknameavailability/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Check Name Availability", + "operation": "Get Check Name Availability", + "description": "Check if resource name is available." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/classicmobileservices/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Classic Mobile Services", + "operation": "Get Classic Mobile Services", + "description": "Get Classic Mobile Services." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/connections/confirmconsentcode/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Connections", + "operation": "Confirm Connections Consent Code", + "description": "Confirm Connections Consent Code." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/connections/listconsentlinks/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Connections", + "operation": "List Consent Links for Connections", + "description": "List Consent Links for Connections." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/deploymentlocations/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Deployment Locations", + "operation": "Get Deployment Locations", + "description": "Get Deployment Locations." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/hostingenvironments/capacities/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Hosting Environments Capacities", + "operation": "Get Hosting Environments Capacities", + "description": "Get Hosting Environments Capacities." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/hostingenvironments/diagnostics/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Hosting Environments Diagnostics", + "operation": "Get Hosting Environments Diagnostics", + "description": "Get Hosting Environments Diagnostics." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/hostingenvironments/metricdefinitions/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Hosting Environments Metric Definitions", + "operation": "Get Hosting Environments Metric Definitions", + "description": "Get Hosting Environments Metric Definitions." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/hostingenvironments/multirolepools/metricdefinitions/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Hosting Environments MultiRole Pools Metric Definitions", + "operation": "Get Hosting Environments MultiRole Pools Metric Definitions", + "description": "Get Hosting Environments MultiRole Pools Metric Definitions." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/hostingenvironments/multirolepools/metrics/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Hosting Environments MultiRole Pools Metrics", + "operation": "Get Hosting Environments MultiRole Pools Metrics", + "description": "Get Hosting Environments MultiRole Pools Metrics." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/hostingenvironments/multirolepools/skus/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Hosting Environments MultiRole Pools SKUs", + "operation": "Get Hosting Environments MultiRole Pools SKUs", + "description": "Get Hosting Environments MultiRole Pools SKUs." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/hostingenvironments/multirolepools/usages/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Hosting Environments MultiRole Pools Usages", + "operation": "Get Hosting Environments MultiRole Pools Usages", + "description": "Get Hosting Environments MultiRole Pools Usages." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/hostingenvironments/operations/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Hosting Environments Operations", + "operation": "Get Hosting Environments Operations", + "description": "Get Hosting Environments Operations." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/hostingenvironments/resume/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Hosting Environments", + "operation": "Resume Hosting Environments", + "description": "Resume Hosting Environments." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/hostingenvironments/serverfarms/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Hosting Environments App Service Plans", + "operation": "Get Hosting Environments App Service Plans", + "description": "Get Hosting Environments App Service Plans." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/hostingenvironments/sites/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Hosting Environments Web Apps", + "operation": "Get Hosting Environments Web Apps", + "description": "Get Hosting Environments Web Apps." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/hostingenvironments/suspend/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Hosting Environments", + "operation": "Suspend Hosting Environments", + "description": "Suspend Hosting Environments." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/hostingenvironments/usages/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Hosting Environments Usages", + "operation": "Get Hosting Environments Usages", + "description": "Get Hosting Environments Usages." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/hostingenvironments/workerpools/metricdefinitions/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Hosting Environments Workerpools Metric Definitions", + "operation": "Get Hosting Environments Workerpools Metric Definitions", + "description": "Get Hosting Environments Workerpools Metric Definitions." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/hostingenvironments/workerpools/metrics/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Hosting Environments Workerpools Metrics", + "operation": "Get Hosting Environments Workerpools Metrics", + "description": "Get Hosting Environments Workerpools Metrics." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/hostingenvironments/workerpools/skus/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Hosting Environments Workerpools SKUs", + "operation": "Get Hosting Environments Workerpools SKUs", + "description": "Get Hosting Environments Workerpools SKUs." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/hostingenvironments/workerpools/usages/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Hosting Environments Workerpools Usages", + "operation": "Get Hosting Environments Workerpools Usages", + "description": "Get Hosting Environments Workerpools Usages." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/ishostingenvironmentnameavailable/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Hosting Environment Name", + "operation": "Check if Hosting Environment Name is available", + "description": "Get if Hosting Environment Name is available." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/ishostnameavailable/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Hostname", + "operation": "Check if Hostname is Available", + "description": "Check if Hostname is Available." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/isusernameavailable/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Username", + "operation": "Check if Username is available", + "description": "Check if Username is available." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/locations/apioperations/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Locations API Operations", + "operation": "Get Locations API Operations", + "description": "Get Locations API Operations." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/locations/connectiongatewayinstallations/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Locations Connection Gateway Installations", + "operation": "Get Locations Connection Gateway Installations", + "description": "Get Locations Connection Gateway Installations." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/locations/functionappstacks/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Locations Function App Stacks", + "operation": "Get Locations Function App Stacks", + "description": "Get Locations Function App Stacks." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/locations/webappstacks/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Locations Web App Stacks", + "operation": "Get Locations Web App Stacks", + "description": "Get Locations Web App Stacks." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/locations/managedapis/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Locations Managed APIs", + "operation": "Get Locations Managed APIs", + "description": "Get Locations Managed APIs." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/operations/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Operations", + "operation": "Get Operations", + "description": "Get Operations." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/publishingusers/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Publishing Users", + "operation": "Get Publishing Users", + "description": "Get Publishing Users." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/publishingusers/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Publishing Users", + "operation": "Update Publishing Users", + "description": "Update Publishing Users." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/serverfarms/capabilities/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Plans Capabilities", + "operation": "Get App Service Plans Capabilities", + "description": "Get App Service Plans Capabilities." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/serverfarms/firstpartyapps/settings/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Plans First Party Apps Settings", + "operation": "Delete App Service Plans First Party Apps Settings", + "description": "Delete App Service Plans First Party Apps Settings." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/serverfarms/firstpartyapps/settings/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Plans First Party Apps Settings", + "operation": "Get App Service Plans First Party Apps Settings", + "description": "Get App Service Plans First Party Apps Settings." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/serverfarms/firstpartyapps/settings/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Plans First Party Apps Settings", + "operation": "Update App Service Plans First Party Apps Settings", + "description": "Update App Service Plans First Party Apps Settings." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/serverfarms/hybridconnectionnamespaces/relays/sites/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Plans Hybrid Connection Namespaces Relays Web Apps", + "operation": "Get App Service Plans Hybrid Connection Namespaces Relays Web Apps", + "description": "Get App Service Plans Hybrid Connection Namespaces Relays Web Apps." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/serverfarms/hybridconnectionplanlimits/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Plans Hybrid Connection Plan Limits", + "operation": "Get App Service Plans Hybrid Connection Plan Limits", + "description": "Get App Service Plans Hybrid Connection Plan Limits." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/serverfarms/hybridconnectionrelays/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Plans Hybrid Connection Relays", + "operation": "Get App Service Plans Hybrid Connection Relays", + "description": "Get App Service Plans Hybrid Connection Relays." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/serverfarms/metricdefinitions/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Plans Metric Definitions", + "operation": "Get App Service Plans Metric Definitions", + "description": "Get App Service Plans Metric Definitions." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/serverfarms/metrics/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Plans Metrics", + "operation": "Get App Service Plans Metrics", + "description": "Get App Service Plans Metrics." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/serverfarms/operationresults/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Plans Operation Results", + "operation": "Get App Service Plans Operation Results", + "description": "Get App Service Plans Operation Results." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/serverfarms/sites/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Plans Web Apps", + "operation": "Get App Service Plans Web Apps", + "description": "Get App Service Plans Web Apps." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/serverfarms/skus/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Plans SKUs", + "operation": "Get App Service Plans SKUs", + "description": "Get App Service Plans SKUs." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/serverfarms/usages/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Plans Usages", + "operation": "Get App Service Plans Usages", + "description": "Get App Service Plans Usages." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/serverfarms/virtualnetworkconnections/gateways/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Plans Virtual Network Connections Gateways", + "operation": "Update App Service Plans Virtual Network Connections Gateways", + "description": "Update App Service Plans Virtual Network Connections Gateways." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/serverfarms/virtualnetworkconnections/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Plans Virtual Network Connections", + "operation": "Get App Service Plans Virtual Network Connections", + "description": "Get App Service Plans Virtual Network Connections." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/serverfarms/virtualnetworkconnections/routes/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Plans Virtual Network Connections Routes", + "operation": "Delete App Service Plans Virtual Network Connections Routes", + "description": "Delete App Service Plans Virtual Network Connections Routes." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/serverfarms/virtualnetworkconnections/routes/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Plans Virtual Network Connections Routes", + "operation": "Get App Service Plans Virtual Network Connections Routes", + "description": "Get App Service Plans Virtual Network Connections Routes." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/serverfarms/virtualnetworkconnections/routes/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Plans Virtual Network Connections Routes", + "operation": "Update App Service Plans Virtual Network Connections Routes", + "description": "Update App Service Plans Virtual Network Connections Routes." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/serverfarms/workers/reboot/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Plans Workers", + "operation": "Reboot App Service Plans Workers", + "description": "Reboot App Service Plans Workers." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/analyzecustomhostname/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Custom Hostname", + "operation": "Analyze Custom Hostname", + "description": "Analyze Custom Hostname." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/backup/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Backup", + "operation": "Get Web Apps Backup", + "description": "Get Web Apps Backup." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/backup/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Backup", + "operation": "Update Web Apps Backup", + "description": "Update Web Apps Backup." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/backups/list/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Backups", + "operation": "List Web Apps Backups", + "description": "List Web Apps Backups." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/backups/restore/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Backups", + "operation": "Restore Web Apps Backups", + "description": "Restore Web Apps Backups." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/config/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Config", + "operation": "Delete Web Apps Config", + "description": "Delete Web Apps Config." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/continuouswebjobs/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Continuous Web Jobs", + "operation": "Delete Web Apps Continuous Web Jobs", + "description": "Delete Web Apps Continuous Web Jobs." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/continuouswebjobs/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Continuous Web Jobs", + "operation": "Get Web Apps Continuous Web Jobs", + "description": "Get Web Apps Continuous Web Jobs." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/continuouswebjobs/start/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Continuous Web Jobs", + "operation": "Start Web Apps Continuous Web Jobs", + "description": "Start Web Apps Continuous Web Jobs." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/continuouswebjobs/stop/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Continuous Web Jobs", + "operation": "Stop Web Apps Continuous Web Jobs", + "description": "Stop Web Apps Continuous Web Jobs." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/deployments/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Deployments", + "operation": "Delete Web Apps Deployments", + "description": "Delete Web Apps Deployments." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/deployments/log/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Deployments Log", + "operation": "Get Web Apps Deployments Log", + "description": "Get Web Apps Deployments Log." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/deployments/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Deployments", + "operation": "Get Web Apps Deployments", + "description": "Get Web Apps Deployments." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/deployments/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Deployments", + "operation": "Update Web Apps Deployments", + "description": "Update Web Apps Deployments." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/diagnostics/frebanalysis/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Diagnostics FREB Analysis", + "operation": "Get Web Apps Diagnostics FREB Analysis", + "description": "Get Web Apps Diagnostics FREB Analysis." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/diagnostics/frebanalysis/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Diagnostics FREB Analysis", + "operation": "Get Web Apps Slots Diagnostics FREB Analysis", + "description": "Get Web Apps Slots Diagnostics FREB Analysis." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/diagnostics/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Diagnostics Category", + "operation": "Get Web Apps Diagnostics Category", + "description": "Get Web Apps Diagnostics Categories." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/diagnostics/runtimeavailability/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Diagnostics Runtime Availability", + "operation": "Get Web Apps Diagnostics Runtime Availability", + "description": "Get Web Apps Diagnostics Runtime Availability." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/diagnostics/servicehealth/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Diagnostics Service Health", + "operation": "Get Web Apps Diagnostics Service Health", + "description": "Get Web Apps Diagnostics Service Health." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/diagnostics/workeravailability/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Diagnostics Workeravailability", + "operation": "Get Web Apps Diagnostics Workeravailability", + "description": "Get Web Apps Diagnostics Workeravailability." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/diagnostics/workeravailability/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Diagnostics Workeravailability", + "operation": "Get Web Apps Slots Diagnostics Workeravailability", + "description": "Get Web Apps Slots Diagnostics Workeravailability." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/diagnostics/workerprocessrecycle/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Diagnostics Worker Process Recycle", + "operation": "Get Web Apps Diagnostics Worker Process Recycle", + "description": "Get Web Apps Diagnostics Worker Process Recycle." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/diagnostics/workerprocessrecycle/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Diagnostics Worker Process Recycle", + "operation": "Get Web Apps Slots Diagnostics Worker Process Recycle", + "description": "Get Web Apps Slots Diagnostics Worker Process Recycle." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/diagnostics/aspnetcore/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Diagnostics ASP.NET Core", + "operation": "Get Web Apps Diagnostics ASP.NET Core", + "description": "Get Web Apps Diagnostics for ASP.NET Core app." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/diagnostics/aspnetcore/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Diagnostics ASP.NET Core", + "operation": "Get Web Apps Slots Diagnostics ASP.NET Core", + "description": "Get Web Apps Slots Diagnostics for ASP.NET Core app." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/domainownershipidentifiers/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Domain Ownership Identifiers", + "operation": "Get Web Apps Domain Ownership Identifiers", + "description": "Get Web Apps Domain Ownership Identifiers." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/domainownershipidentifiers/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Domain Ownership Identifiers", + "operation": "Update Web Apps Domain Ownership Identifiers", + "description": "Update Web Apps Domain Ownership Identifiers." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/functions/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps", + "operation": "Functions Web Apps", + "description": "Functions Web Apps." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/functions/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Functions", + "operation": "Delete Web Apps Functions", + "description": "Delete Web Apps Functions." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/functions/listsecrets/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Functions", + "operation": "List Secrets Web Apps Functions", + "description": "List Secrets Web Apps Functions." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/functions/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Functions", + "operation": "Get Web Apps Functions", + "description": "Get Web Apps Functions." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/functions/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Functions", + "operation": "Update Web Apps Functions", + "description": "Update Web Apps Functions." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/hostnamebindings/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Hostname Bindings", + "operation": "Delete Web Apps Hostname Bindings", + "description": "Delete Web Apps Hostname Bindings." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/hostnamebindings/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Hostname Bindings", + "operation": "Get Web Apps Hostname Bindings", + "description": "Get Web Apps Hostname Bindings." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/hostnamebindings/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Hostname Bindings", + "operation": "Update Web Apps Hostname Bindings", + "description": "Update Web Apps Hostname Bindings." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/hybridconnection/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Hybrid Connection", + "operation": "Delete Web Apps Hybrid Connection", + "description": "Delete Web Apps Hybrid Connection." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/hybridconnection/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Hybrid Connection", + "operation": "Get Web Apps Hybrid Connection", + "description": "Get Web Apps Hybrid Connection." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/hybridconnection/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Hybrid Connection", + "operation": "Update Web Apps Hybrid Connection", + "description": "Update Web Apps Hybrid Connection." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/hybridconnectionrelays/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Hybrid Connection Relays", + "operation": "Get Web Apps Hybrid Connection Relays", + "description": "Get Web Apps Hybrid Connection Relays." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/instances/deployments/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Instances Deployments", + "operation": "Get Web Apps Instances Deployments", + "description": "Get Web Apps Instances Deployments." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/instances/processes/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Instances Processes", + "operation": "Delete Web Apps Instances Processes", + "description": "Delete Web Apps Instances Processes." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/instances/processes/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Instances Processes", + "operation": "Get Web Apps Instances Processes", + "description": "Get Web Apps Instances Processes." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/instances/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Instances", + "operation": "Get Web Apps Instances", + "description": "Get Web Apps Instances." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/listsyncfunctiontriggerstatus/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps", + "operation": "List Sync Function Trigger Status Web Apps", + "description": "List Sync Function Trigger Status Web Apps." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/metricdefinitions/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Metric Definitions", + "operation": "Get Web Apps Metric Definitions", + "description": "Get Web Apps Metric Definitions." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/metrics/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Metrics", + "operation": "Get Web Apps Metrics", + "description": "Get Web Apps Metrics." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/networktrace/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps", + "operation": "Network Trace Web Apps", + "description": "Network Trace Web Apps." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/newpassword/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps", + "operation": "Newpassword Web Apps", + "description": "Newpassword Web Apps." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/operationresults/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Operation Results", + "operation": "Get Web Apps Operation Results", + "description": "Get Web Apps Operation Results." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/perfcounters/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Performance Counters", + "operation": "Get Web Apps Performance Counters", + "description": "Get Web Apps Performance Counters." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/premieraddons/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Premier Addons", + "operation": "Delete Web Apps Premier Addons", + "description": "Delete Web Apps Premier Addons." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/premieraddons/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Premier Addons", + "operation": "Get Web Apps Premier Addons", + "description": "Get Web Apps Premier Addons." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/premieraddons/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Premier Addons", + "operation": "Update Web Apps Premier Addons", + "description": "Update Web Apps Premier Addons." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/publishxml/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Publishing XML", + "operation": "Get Web Apps Publishing XML", + "description": "Get Web Apps Publishing XML." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/recommendationhistory/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Recommendation History", + "operation": "Get Web Apps Recommendation History", + "description": "Get Web Apps Recommendation History." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/recommendations/disable/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Recommendations", + "operation": "Disable Web Apps Recommendations", + "description": "Disable Web Apps Recommendations." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/restore/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Restore", + "operation": "Get Web Apps Restore", + "description": "Get Web Apps Restore." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/analyzecustomhostname/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Analyze Custom Hostname", + "operation": "Get Web Apps Slots Analyze Custom Hostname", + "description": "Get Web Apps Slots Analyze Custom Hostname." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/backup/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Backup", + "operation": "Update Web Apps Slots Backup", + "description": "Update Web Apps Slots Backup." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/backups/list/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Backups", + "operation": "List Web Apps Slots Backups", + "description": "List Web Apps Slots Backups." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/backups/restore/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Backups", + "operation": "Restore Web Apps Slots Backups", + "description": "Restore Web Apps Slots Backups." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/config/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Config", + "operation": "Delete Web Apps Slots Config", + "description": "Delete Web Apps Slots Config." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/continuouswebjobs/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Continuous Web Jobs", + "operation": "Delete Web Apps Slots Continuous Web Jobs", + "description": "Delete Web Apps Slots Continuous Web Jobs." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/continuouswebjobs/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Continuous Web Jobs", + "operation": "Get Web Apps Slots Continuous Web Jobs", + "description": "Get Web Apps Slots Continuous Web Jobs." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/continuouswebjobs/start/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Continuous Web Jobs", + "operation": "Start Web Apps Slots Continuous Web Jobs", + "description": "Start Web Apps Slots Continuous Web Jobs." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/continuouswebjobs/stop/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Continuous Web Jobs", + "operation": "Stop Web Apps Slots Continuous Web Jobs", + "description": "Stop Web Apps Slots Continuous Web Jobs." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/deployments/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Deployments", + "operation": "Delete Web Apps Slots Deployments", + "description": "Delete Web Apps Slots Deployments." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/deployments/log/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Deployments Log", + "operation": "Get Web Apps Slots Deployments Log", + "description": "Get Web Apps Slots Deployments Log." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/deployments/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Deployments", + "operation": "Get Web Apps Slots Deployments", + "description": "Get Web Apps Slots Deployments." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/deployments/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Deployments", + "operation": "Update Web Apps Slots Deployments", + "description": "Update Web Apps Slots Deployments." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/hostnamebindings/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Hostname Bindings", + "operation": "Delete Web Apps Slots Hostname Bindings", + "description": "Delete Web Apps Slots Hostname Bindings." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/hostnamebindings/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Hostname Bindings", + "operation": "Get Web Apps Slots Hostname Bindings", + "description": "Get Web Apps Slots Hostname Bindings." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/hostnamebindings/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Hostname Bindings", + "operation": "Update Web Apps Slots Hostname Bindings", + "description": "Update Web Apps Slots Hostname Bindings." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/hybridconnection/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Hybrid Connection", + "operation": "Delete Web Apps Slots Hybrid Connection", + "description": "Delete Web Apps Slots Hybrid Connection." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/hybridconnection/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Hybrid Connection", + "operation": "Get Web Apps Slots Hybrid Connection", + "description": "Get Web Apps Slots Hybrid Connection." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/hybridconnection/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Hybrid Connection", + "operation": "Update Web Apps Slots Hybrid Connection", + "description": "Update Web Apps Slots Hybrid Connection." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/instances/deployments/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Instances Deployments", + "operation": "Get Web Apps Slots Instances Deployments", + "description": "Get Web Apps Slots Instances Deployments." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/instances/processes/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Instances Processes", + "operation": "Get Web Apps Slots Instances Processes", + "description": "Get Web Apps Slots Instances Processes." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/instances/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Instances", + "operation": "Get Web Apps Slots Instances", + "description": "Get Web Apps Slots Instances." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/metricdefinitions/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Metric Definitions", + "operation": "Get Web Apps Slots Metric Definitions", + "description": "Get Web Apps Slots Metric Definitions." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/metrics/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Metrics", + "operation": "Get Web Apps Slots Metrics", + "description": "Get Web Apps Slots Metrics." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/newpassword/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots", + "operation": "Newpassword Web Apps Slots", + "description": "Newpassword Web Apps Slots." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/operationresults/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Operation Results", + "operation": "Get Web Apps Slots Operation Results", + "description": "Get Web Apps Slots Operation Results." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/phplogging/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Phplogging", + "operation": "Get Web Apps Slots Phplogging", + "description": "Get Web Apps Slots Phplogging." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/premieraddons/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Premier Addons", + "operation": "Delete Web Apps Slots Premier Addons", + "description": "Delete Web Apps Slots Premier Addons." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/premieraddons/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Premier Addons", + "operation": "Get Web Apps Slots Premier Addons", + "description": "Get Web Apps Slots Premier Addons." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/premieraddons/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Premier Addons", + "operation": "Update Web Apps Slots Premier Addons", + "description": "Update Web Apps Slots Premier Addons." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/restore/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Restore", + "operation": "Get Web Apps Slots Restore", + "description": "Get Web Apps Slots Restore." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/sync/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots", + "operation": "Sync Web Apps Slots", + "description": "Sync Web Apps Slots." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/triggeredwebjobs/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Triggered WebJobs", + "operation": "Delete Web Apps Slots Triggered WebJobs", + "description": "Delete Web Apps Slots Triggered WebJobs." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/triggeredwebjobs/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Triggered WebJobs", + "operation": "Get Web Apps Slots Triggered WebJobs", + "description": "Get Web Apps Slots Triggered WebJobs." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/triggeredwebjobs/run/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Triggered WebJobs", + "operation": "Run Web Apps Slots Triggered WebJobs", + "description": "Run Web Apps Slots Triggered WebJobs." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/usages/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Usages", + "operation": "Get Web Apps Slots Usages", + "description": "Get Web Apps Slots Usages." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/virtualnetworkconnections/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Virtual Network Connections", + "operation": "Delete Web Apps Slots Virtual Network Connections", + "description": "Delete Web Apps Slots Virtual Network Connections." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/virtualnetworkconnections/gateways/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Virtual Network Connections Gateways", + "operation": "Update Web Apps Slots Virtual Network Connections Gateways", + "description": "Update Web Apps Slots Virtual Network Connections Gateways." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/virtualnetworkconnections/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Virtual Network Connections", + "operation": "Get Web Apps Slots Virtual Network Connections", + "description": "Get Web Apps Slots Virtual Network Connections." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/virtualnetworkconnections/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Virtual Network Connections", + "operation": "Update Web Apps Slots Virtual Network Connections", + "description": "Update Web Apps Slots Virtual Network Connections." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/webjobs/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots WebJobs", + "operation": "Get Web Apps Slots WebJobs", + "description": "Get Web Apps Slots WebJobs." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/snapshots/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Snapshots", + "operation": "Get Web Apps Snapshots", + "description": "Get Web Apps Snapshots." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/sync/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps", + "operation": "Sync Web Apps", + "description": "Sync Web Apps." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/triggeredwebjobs/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Triggered WebJobs", + "operation": "Delete Web Apps Triggered WebJobs", + "description": "Delete Web Apps Triggered WebJobs." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/triggeredwebjobs/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Triggered WebJobs", + "operation": "Get Web Apps Triggered WebJobs", + "description": "Get Web Apps Triggered WebJobs." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/triggeredwebjobs/run/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Triggered WebJobs", + "operation": "Run Web Apps Triggered WebJobs", + "description": "Run Web Apps Triggered WebJobs." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/usages/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Usages", + "operation": "Get Web Apps Usages", + "description": "Get Web Apps Usages." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/virtualnetworkconnections/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Virtual Network Connections", + "operation": "Delete Web Apps Virtual Network Connections", + "description": "Delete Web Apps Virtual Network Connections." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/virtualnetworkconnections/gateways/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Virtual Network Connections Gateways", + "operation": "Get Web Apps Virtual Network Connections Gateways", + "description": "Get Web Apps Virtual Network Connections Gateways." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/virtualnetworkconnections/gateways/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Virtual Network Connections Gateways", + "operation": "Update Web Apps Virtual Network Connections Gateways", + "description": "Update Web Apps Virtual Network Connections Gateways." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/virtualnetworkconnections/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Virtual Network Connections", + "operation": "Get Web Apps Virtual Network Connections", + "description": "Get Web Apps Virtual Network Connections." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/virtualnetworkconnections/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Virtual Network Connections", + "operation": "Update Web Apps Virtual Network Connections", + "description": "Update Web Apps Virtual Network Connections." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/webjobs/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps WebJobs", + "operation": "Get Web Apps WebJobs", + "description": "Get Web Apps WebJobs." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/skus/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "SKUs", + "operation": "Get SKUs", + "description": "Get SKUs." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sourcecontrols/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Source Controls", + "operation": "Get Source Controls", + "description": "Get Source Controls." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sourcecontrols/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Source Controls", + "operation": "Update Source Controls", + "description": "Update Source Controls." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/unregister/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Microsoft.Web resource provider", + "operation": "Unregister Microsoft.Web resource provider", + "description": "Unregister Microsoft.Web resource provider for the subscription." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/validate/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "", + "operation": "Validate ", + "description": "Validate ." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/register/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Microsoft.Web resource provider", + "operation": "Register Microsoft.Web resource provider", + "description": "Register Microsoft.Web resource provider for the subscription." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/serverfarms/hybridconnectionnamespaces/relays/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Plans Hybrid Connection Namespaces Relays", + "operation": "Get App Service Plans Hybrid Connection Namespaces Relays", + "description": "Get App Service Plans Hybrid Connection Namespaces Relays." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/backups/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Backups", + "operation": "Delete Web Apps Backups", + "description": "Delete Web Apps Backups." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/hybridconnectionnamespaces/relays/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Hybrid Connection Namespaces Relays", + "operation": "Delete Web Apps Hybrid Connection Namespaces Relays", + "description": "Delete Web Apps Hybrid Connection Namespaces Relays." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/hybridconnectionnamespaces/relays/listkeys/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Hybrid Connection Namespaces Relays", + "operation": "List Keys Web Apps Hybrid Connection Namespaces Relays", + "description": "List Keys Web Apps Hybrid Connection Namespaces Relays." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/hybridconnectionnamespaces/relays/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Hybrid Connection Namespaces Relays", + "operation": "Update Web Apps Hybrid Connection Namespaces Relays", + "description": "Update Web Apps Hybrid Connection Namespaces Relays." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/metricsdefinitions/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Metrics Definitions", + "operation": "Get Web Apps Metrics Definitions", + "description": "Get Web Apps Metrics Definitions." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/migratemysql/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps", + "operation": "Migrate MySql Web Apps", + "description": "Migrate MySql Web Apps." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/migratemysql/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Migrate MySql", + "operation": "Get Web Apps Migrate MySql", + "description": "Get Web Apps Migrate MySql." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/recover/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps", + "operation": "Recover Web Apps", + "description": "Recover Web Apps." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/siteextensions/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Site Extensions", + "operation": "Delete Web Apps Site Extensions", + "description": "Delete Web Apps Site Extensions." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/siteextensions/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Site Extensions", + "operation": "Get Web Apps Site Extensions", + "description": "Get Web Apps Site Extensions." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/siteextensions/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Site Extensions", + "operation": "Update Web Apps Site Extensions", + "description": "Update Web Apps Site Extensions." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/backup/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Backup", + "operation": "Get Web Apps Slots Backup", + "description": "Get Web Apps Slots Backup." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/hybridconnectionrelays/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Hybrid Connection Relays", + "operation": "Get Web Apps Slots Hybrid Connection Relays", + "description": "Get Web Apps Slots Hybrid Connection Relays." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/siteextensions/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Site Extensions", + "operation": "Delete Web Apps Slots Site Extensions", + "description": "Delete Web Apps Slots Site Extensions." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/siteextensions/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Site Extensions", + "operation": "Get Web Apps Slots Site Extensions", + "description": "Get Web Apps Slots Site Extensions." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/siteextensions/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Site Extensions", + "operation": "Update Web Apps Slots Site Extensions", + "description": "Update Web Apps Slots Site Extensions." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/snapshots/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Snapshots", + "operation": "Get Web Apps Slots Snapshots", + "description": "Get Web Apps Slots Snapshots." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/syncfunctiontriggers/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps", + "operation": "Sync Function Triggers for Web Apps", + "description": "Sync Function Triggers for Web Apps." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/triggeredwebjobs/history/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Triggered WebJobs History", + "operation": "Get Web Apps Triggered WebJobs History", + "description": "Get Web Apps Triggered WebJobs History." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/connectiongateways/liststatus/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Connection Gateways", + "operation": "List Status Connection Gateways", + "description": "List Status Connection Gateways." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/serverfarms/hybridconnectionnamespaces/relays/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Plans Hybrid Connection Namespaces Relays", + "operation": "Delete App Service Plans Hybrid Connection Namespaces Relays", + "description": "Delete App Service Plans Hybrid Connection Namespaces Relays." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/diagnostics/deployment/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Diagnostics Deployment", + "operation": "Get Web Apps Diagnostics Deployment", + "description": "Get Web Apps Diagnostics Deployment." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/diagnostics/sitecpuanalysis/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Diagnostics Site CPU Analysis", + "operation": "Get Web Apps Diagnostics Site CPU Analysis", + "description": "Get Web Apps Diagnostics Site CPU Analysis." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/diagnostics/sitelatency/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Diagnostics Site Latency", + "operation": "Get Web Apps Diagnostics Site Latency", + "description": "Get Web Apps Diagnostics Site Latency." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/diagnostics/sitememoryanalysis/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Diagnostics Site Memory Analysis", + "operation": "Get Web Apps Diagnostics Site Memory Analysis", + "description": "Get Web Apps Diagnostics Site Memory Analysis." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/diagnostics/threadcount/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Diagnostics Thread Count", + "operation": "Get Web Apps Diagnostics Thread Count", + "description": "Get Web Apps Diagnostics Thread Count." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/diagnostics/deployment/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Diagnostics Deployment", + "operation": "Get Web Apps Slots Diagnostics Deployment", + "description": "Get Web Apps Slots Diagnostics Deployment." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/diagnostics/sitecpuanalysis/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Diagnostics Site CPU Analysis", + "operation": "Get Web Apps Slots Diagnostics Site CPU Analysis", + "description": "Get Web Apps Slots Diagnostics Site CPU Analysis." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/diagnostics/sitelatency/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Diagnostics Site Latency", + "operation": "Get Web Apps Slots Diagnostics Site Latency", + "description": "Get Web Apps Slots Diagnostics Site Latency." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/diagnostics/sitememoryanalysis/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Diagnostics Site Memory Analysis", + "operation": "Get Web Apps Slots Diagnostics Site Memory Analysis", + "description": "Get Web Apps Slots Diagnostics Site Memory Analysis." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/diagnostics/threadcount/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Diagnostics Thread Count", + "operation": "Get Web Apps Slots Diagnostics Thread Count", + "description": "Get Web Apps Slots Diagnostics Thread Count." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/functions/masterkey/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Functions Masterkey", + "operation": "Get Web Apps Functions Masterkey", + "description": "Get Web Apps Functions Masterkey." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/hybridconnectionnamespaces/relays/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Hybrid Connection Namespaces Relays", + "operation": "Get Web Apps Hybrid Connection Namespaces Relays", + "description": "Get Web Apps Hybrid Connection Namespaces Relays." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/instances/extensions/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Instances Extensions", + "operation": "Get Web Apps Instances Extensions", + "description": "Get Web Apps Instances Extensions." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/operations/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Operations", + "operation": "Get Web Apps Operations", + "description": "Get Web Apps Operations." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/resourcehealthmetadata/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Resource Health Metadata", + "operation": "Get Web Apps Resource Health Metadata", + "description": "Get Web Apps Resource Health Metadata." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/backups/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Backups", + "operation": "Delete Web Apps Slots Backups", + "description": "Delete Web Apps Slots Backups." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/domainownershipidentifiers/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Domain Ownership Identifiers", + "operation": "Get Web Apps Slots Domain Ownership Identifiers", + "description": "Get Web Apps Slots Domain Ownership Identifiers." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/hybridconnectionnamespaces/relays/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Hybrid Connection Namespaces Relays", + "operation": "Delete Web Apps Slots Hybrid Connection Namespaces Relays", + "description": "Delete Web Apps Slots Hybrid Connection Namespaces Relays." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/hybridconnectionnamespaces/relays/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Hybrid Connection Namespaces Relays", + "operation": "Update Web Apps Slots Hybrid Connection Namespaces Relays", + "description": "Update Web Apps Slots Hybrid Connection Namespaces Relays." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/operations/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Operations", + "operation": "Get Web Apps Slots Operations", + "description": "Get Web Apps Slots Operations." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/perfcounters/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Performance Counters", + "operation": "Get Web Apps Slots Performance Counters", + "description": "Get Web Apps Slots Performance Counters." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/resourcehealthmetadata/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Resource Health Metadata", + "operation": "Get Web Apps Slots Resource Health Metadata", + "description": "Get Web Apps Slots Resource Health Metadata." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/apimanagementaccounts/apiacls/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Api Management Accounts Apiacls", + "operation": "Get Api Management Accounts Apiacls", + "description": "Get Api Management Accounts Apiacls." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/apimanagementaccounts/apis/connections/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Api Management Accounts APIs Connections", + "operation": "Get Api Management Accounts APIs Connections", + "description": "Get Api Management Accounts APIs Connections." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/apimanagementaccounts/apis/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Api Management Accounts APIs", + "operation": "Get Api Management Accounts APIs", + "description": "Get Api Management Accounts APIs." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/apimanagementaccounts/connectionacls/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Api Management Accounts Connectionacls", + "operation": "Get Api Management Accounts Connectionacls", + "description": "Get Api Management Accounts Connectionacls." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/apimanagementaccounts/apis/apiacls/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Api Management Accounts APIs Apiacls", + "operation": "Delete Api Management Accounts APIs Apiacls", + "description": "Delete Api Management Accounts APIs Apiacls." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/apimanagementaccounts/apis/apiacls/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Api Management Accounts APIs Apiacls", + "operation": "Get Api Management Accounts APIs Apiacls", + "description": "Get Api Management Accounts APIs Apiacls." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/apimanagementaccounts/apis/apiacls/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Api Management Accounts APIs Apiacls", + "operation": "Update Api Management Accounts APIs Apiacls", + "description": "Update Api Management Accounts APIs Apiacls." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/apimanagementaccounts/apis/connectionacls/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Api Management Accounts APIs Connectionacls", + "operation": "Get Api Management Accounts APIs Connectionacls", + "description": "Get Api Management Accounts APIs Connectionacls." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/apimanagementaccounts/apis/connections/confirmconsentcode/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Api Management Accounts APIs Connections", + "operation": "Confirm Consent Code Api Management Accounts APIs Connections", + "description": "Confirm Consent Code Api Management Accounts APIs Connections." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/apimanagementaccounts/apis/connections/connectionacls/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Api Management Accounts APIs Connections Connectionacls", + "operation": "Delete Api Management Accounts APIs Connections Connectionacls", + "description": "Delete Api Management Accounts APIs Connections Connectionacls." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/apimanagementaccounts/apis/connections/connectionacls/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Api Management Accounts APIs Connections Connectionacls", + "operation": "Get Api Management Accounts APIs Connections Connectionacls", + "description": "Get Api Management Accounts APIs Connections Connectionacls." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/apimanagementaccounts/apis/connections/connectionacls/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Api Management Accounts APIs Connections Connectionacls", + "operation": "Update Api Management Accounts APIs Connections Connectionacls", + "description": "Update Api Management Accounts APIs Connections Connectionacls." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/apimanagementaccounts/apis/connections/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Api Management Accounts APIs Connections", + "operation": "Delete Api Management Accounts APIs Connections", + "description": "Delete Api Management Accounts APIs Connections." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/apimanagementaccounts/apis/connections/getconsentlinks/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Api Management Accounts APIs Connections", + "operation": "Get Consent Links for Api Management Accounts APIs Connections", + "description": "Get Consent Links for Api Management Accounts APIs Connections." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/apimanagementaccounts/apis/connections/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Api Management Accounts APIs Connections", + "operation": "Update Api Management Accounts APIs Connections", + "description": "Update Api Management Accounts APIs Connections." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/apimanagementaccounts/apis/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Api Management Accounts APIs", + "operation": "Delete Api Management Accounts APIs", + "description": "Delete Api Management Accounts APIs." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/apimanagementaccounts/apis/localizeddefinitions/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Api Management Accounts APIs Localized Definitions", + "operation": "Delete Api Management Accounts APIs Localized Definitions", + "description": "Delete Api Management Accounts APIs Localized Definitions." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/apimanagementaccounts/apis/localizeddefinitions/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Api Management Accounts APIs Localized Definitions", + "operation": "Get Api Management Accounts APIs Localized Definitions", + "description": "Get Api Management Accounts APIs Localized Definitions." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/apimanagementaccounts/apis/localizeddefinitions/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Api Management Accounts APIs Localized Definitions", + "operation": "Update Api Management Accounts APIs Localized Definitions", + "description": "Update Api Management Accounts APIs Localized Definitions." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/apimanagementaccounts/apis/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Api Management Accounts APIs", + "operation": "Update Api Management Accounts APIs", + "description": "Update Api Management Accounts APIs." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/apimanagementaccounts/apis/connections/listconnectionkeys/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Api Management Accounts APIs Connections", + "operation": "List Connection Keys Api Management Accounts APIs Connections", + "description": "List Connection Keys Api Management Accounts APIs Connections." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/apimanagementaccounts/apis/connections/listsecrets/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Api Management Accounts APIs Connections", + "operation": "List Secrets Api Management Accounts APIs Connections", + "description": "List Secrets Api Management Accounts APIs Connections." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/diagnostics/deployments/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Diagnostics Deployments", + "operation": "Get Web Apps Diagnostics Deployments", + "description": "Get Web Apps Diagnostics Deployments." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/diagnostics/deployments/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Diagnostics Deployments", + "operation": "Get Web Apps Slots Diagnostics Deployments", + "description": "Get Web Apps Slots Diagnostics Deployments." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/diagnostics/loganalyzer/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Diagnostics Log Analyzer", + "operation": "Get Web Apps Diagnostics Log Analyzer", + "description": "Get Web Apps Diagnostics Log Analyzer." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/diagnostics/loganalyzer/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Diagnostics Log Analyzer", + "operation": "Get Web Apps Slots Diagnostics Log Analyzer", + "description": "Get Web Apps Slots Diagnostics Log Analyzer." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/diagnostics/sitecrashes/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Diagnostics Site Crashes", + "operation": "Get Web Apps Diagnostics Site Crashes", + "description": "Get Web Apps Diagnostics Site Crashes." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/diagnostics/sitecrashes/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Diagnostics Site Crashes", + "operation": "Get Web Apps Slots Diagnostics Site Crashes", + "description": "Get Web Apps Slots Diagnostics Site Crashes." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/diagnostics/siterestartsettingupdate/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Diagnostics Site Restart Setting Update", + "operation": "Get Web Apps Diagnostics Site Restart Setting Update", + "description": "Get Web Apps Diagnostics Site Restart Setting Update." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/diagnostics/siterestartsettingupdate/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Diagnostics Site Restart Setting Update", + "operation": "Get Web Apps Slots Diagnostics Site Restart Setting Update", + "description": "Get Web Apps Slots Diagnostics Site Restart Setting Update." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/diagnostics/siterestartuserinitiated/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Diagnostics Site Restart User Initiated", + "operation": "Get Web Apps Diagnostics Site Restart User Initiated", + "description": "Get Web Apps Diagnostics Site Restart User Initiated." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/diagnostics/siterestartuserinitiated/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Diagnostics Site Restart User Initiated", + "operation": "Get Web Apps Slots Diagnostics Site Restart User Initiated", + "description": "Get Web Apps Slots Diagnostics Site Restart User Initiated." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/diagnostics/siteswap/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Diagnostics Site Swap", + "operation": "Get Web Apps Diagnostics Site Swap", + "description": "Get Web Apps Diagnostics Site Swap." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/diagnostics/siteswap/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Diagnostics Site Swap", + "operation": "Get Web Apps Slots Diagnostics Site Swap", + "description": "Get Web Apps Slots Diagnostics Site Swap." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/functions/token/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Functions Token", + "operation": "Get Web Apps Functions Token", + "description": "Get Web Apps Functions Token." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/instances/deployments/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Instances Deployments", + "operation": "Delete Web Apps Instances Deployments", + "description": "Delete Web Apps Instances Deployments." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/processes/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Processes", + "operation": "Get Web Apps Processes", + "description": "Get Web Apps Processes." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/publiccertificates/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Public Certificates", + "operation": "Delete Web Apps Public Certificates", + "description": "Delete Web Apps Public Certificates." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/publiccertificates/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Public Certificates", + "operation": "Get Web Apps Public Certificates", + "description": "Get Web Apps Public Certificates." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/publiccertificates/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Public Certificates", + "operation": "Update Web Apps Public Certificates", + "description": "Update Web Apps Public Certificates." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/networktrace/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots", + "operation": "Network Trace Web Apps Slots", + "description": "Network Trace Web Apps Slots." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/diagnostics/autoheal/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Diagnostics Autoheal", + "operation": "Get Web Apps Diagnostics Autoheal", + "description": "Get Web Apps Diagnostics Autoheal." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/diagnostics/autoheal/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Diagnostics Autoheal", + "operation": "Get Web Apps Slots Diagnostics Autoheal", + "description": "Get Web Apps Slots Diagnostics Autoheal." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/diagnostics/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Diagnostics", + "operation": "Get Web Apps Slots Diagnostics", + "description": "Get Web Apps Slots Diagnostics." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/diagnostics/runtimeavailability/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Diagnostics Runtime Availability", + "operation": "Get Web Apps Slots Diagnostics Runtime Availability", + "description": "Get Web Apps Slots Diagnostics Runtime Availability." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/diagnostics/servicehealth/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Diagnostics Service Health", + "operation": "Get Web Apps Slots Diagnostics Service Health", + "description": "Get Web Apps Slots Diagnostics Service Health." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/diagnostics/sitelatency/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Diagnostics Site Latency", + "operation": "Get Web Apps Slots Diagnostics Site Latency", + "description": "Get Web Apps Slots Diagnostics Site Latency." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/migratemysql/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Migrate MySql", + "operation": "Get Web Apps Slots Migrate MySql", + "description": "Get Web Apps Slots Migrate MySql." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/providers/Microsoft.Insights/diagnosticSettings/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Diagnostic setting for Web App", + "operation": "Read diagnostic setting", + "description": "Gets the diagnostic setting for the resource" + }, + "origin": "system" + }, + { + "name": "microsoft.web/sites/providers/Microsoft.Insights/diagnosticSettings/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Diagnostic setting for Web App", + "operation": "Write diagnostic setting", + "description": "Creates or updates the diagnostic setting for the resource" + }, + "origin": "system" + }, + { + "name": "microsoft.web/sites/slots/providers/Microsoft.Insights/diagnosticSettings/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Diagnostic setting for Web App slot", + "operation": "Read diagnostic setting", + "description": "Gets the diagnostic setting for the resource" + }, + "origin": "system" + }, + { + "name": "microsoft.web/sites/slots/providers/Microsoft.Insights/diagnosticSettings/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Diagnostic setting for Web App slot", + "operation": "Write diagnostic setting", + "description": "Creates or updates the diagnostic setting for the resource" + }, + "origin": "system" + }, + { + "name": "microsoft.web/serverfarms/providers/Microsoft.Insights/diagnosticSettings/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Diagnostic setting for App Service plan", + "operation": "Read diagnostic setting", + "description": "Gets the diagnostic setting for the resource" + }, + "origin": "system" + }, + { + "name": "microsoft.web/serverfarms/providers/Microsoft.Insights/diagnosticSettings/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Diagnostic setting for App Service plan", + "operation": "Write diagnostic setting", + "description": "Creates or updates the diagnostic setting for the resource" + }, + "origin": "system" + }, + { + "name": "microsoft.web/hostingenvironments/providers/Microsoft.Insights/diagnosticSettings/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Diagnostic setting for App Service Environment", + "operation": "Read diagnostic setting", + "description": "Gets the diagnostic setting for the resource" + }, + "origin": "system" + }, + { + "name": "microsoft.web/hostingenvironments/providers/Microsoft.Insights/diagnosticSettings/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Diagnostic setting for App Service Environment", + "operation": "Write diagnostic setting", + "description": "Creates or updates the diagnostic setting for the resource" + }, + "origin": "system" + }, + { + "name": "microsoft.web/billingmeters/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Billing meters for Microsoft Web Apps", + "operation": "Read billing meters", + "description": "Get list of billing meters." + }, + "origin": "system" + }, + { + "name": "microsoft.web/sites/slots/instances/processes/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Instances Processes", + "operation": "Delete Web Apps Slots Instances Processes", + "description": "Delete Web Apps Slots Instances Processes." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/restore/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps", + "operation": "Restore Web Apps", + "description": "Restore Web Apps." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/instances/extensions/log/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Instances Extensions Log", + "operation": "Get Web Apps Instances Extensions Log", + "description": "Get Web Apps Instances Extensions Log." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/customapis/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Custom APIs", + "operation": "Update Custom APIs", + "description": "Update Custom APIs." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/customapis/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Custom APIs", + "operation": "Get Custom APIs", + "description": "Get Custom APIs." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/diagnostics/failedrequestsperuri/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Diagnostics Failed Requests Per Uri", + "operation": "Get Web Apps Diagnostics Failed Requests Per Uri", + "description": "Get Web Apps Diagnostics Failed Requests Per Uri." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/restore/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots", + "operation": "Restore Web Apps Slots", + "description": "Restore Web Apps Slots." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/diagnostics/detectors/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Diagnostics Detector", + "operation": "Get Web Apps Diagnostics Detector", + "description": "Get Web Apps Diagnostics Detector." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/diagnostics/analyses/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Diagnostics Analysis", + "operation": "Get Web Apps Diagnostics Analysis", + "description": "Get Web Apps Diagnostics Analysis." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/diagnostics/analyses/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Diagnostics Analysis", + "operation": "Get Web Apps Slots Diagnostics Analysis", + "description": "Get Web Apps Slots Diagnostics Analysis." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/diagnostics/detectors/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Diagnostics Detector", + "operation": "Get Web Apps Slots Diagnostics Detector", + "description": "Get Web Apps Slots Diagnostics Detector." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/diagnostics/analyses/execute/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Diagnostics Analysis", + "operation": "Run Web Apps Diagnostics Analysis", + "description": "Run Web Apps Diagnostics Analysis." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/diagnostics/detectors/execute/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Diagnostics Detector", + "operation": "Run Web Apps Diagnostics Detector", + "description": "Run Web Apps Diagnostics Detector." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/diagnostics/analyses/execute/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Diagnostics Analysis", + "operation": "Run Web Apps Slots Diagnostics Analysis", + "description": "Run Web Apps Slots Diagnostics Analysis." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/diagnostics/detectors/execute/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Diagnostics Detector", + "operation": "Run Web Apps Slots Diagnostics Detector", + "description": "Run Web Apps Slots Diagnostics Detector." + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/serverfarms/providers/Microsoft.Insights/metricDefinitions/Read", + "display": { + "provider": "Microsoft.Web", + "resource": "The metric definition of App Service Plan", + "operation": "Read App Service Plan metric definitions", + "description": "Gets the available metrics for App Service Plan" + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "metricSpecifications": [ + { + "name": "CpuPercentage", + "displayName": "CPU Percentage", + "displayDescription": "CPU Percentage", + "unit": "Percent", + "aggregationType": "Average", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "MemoryPercentage", + "displayName": "Memory Percentage", + "displayDescription": "Memory Percentage", + "unit": "Percent", + "aggregationType": "Average", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "DiskQueueLength", + "displayName": "Disk Queue Length", + "displayDescription": "Disk Queue Length", + "unit": "Count", + "aggregationType": "Average", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "HttpQueueLength", + "displayName": "Http Queue Length", + "displayDescription": "Http Queue Length", + "unit": "Count", + "aggregationType": "Average", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "BytesReceived", + "displayName": "Data In", + "displayDescription": "Data In", + "unit": "Bytes", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "BytesSent", + "displayName": "Data Out", + "displayDescription": "Data Out", + "unit": "Bytes", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + } + ] + } + } + }, + { + "name": "Microsoft.Web/sites/providers/Microsoft.Insights/metricDefinitions/Read", + "display": { + "provider": "Microsoft.Web", + "resource": "The metric definition of Web App", + "operation": "Read Web App metric definitions", + "description": "Gets the available metrics for Web App" + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "metricSpecifications": [ + { + "name": "CpuTime", + "displayName": "CPU Time", + "displayDescription": "CPU Time", + "unit": "Seconds", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Requests", + "displayName": "Requests", + "displayDescription": "Requests", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "BytesReceived", + "displayName": "Data In", + "displayDescription": "Data In", + "unit": "Bytes", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "BytesSent", + "displayName": "Data Out", + "displayDescription": "Data Out", + "unit": "Bytes", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Http101", + "displayName": "Http 101", + "displayDescription": "Http 101", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Http2xx", + "displayName": "Http 2xx", + "displayDescription": "Http 2xx", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Http3xx", + "displayName": "Http 3xx", + "displayDescription": "Http 3xx", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Http401", + "displayName": "Http 401", + "displayDescription": "Http 401", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Http403", + "displayName": "Http 403", + "displayDescription": "Http 403", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Http404", + "displayName": "Http 404", + "displayDescription": "Http 404", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Http406", + "displayName": "Http 406", + "displayDescription": "Http 406", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Http4xx", + "displayName": "Http 4xx", + "displayDescription": "Http 4xx", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Http5xx", + "displayName": "Http Server Errors", + "displayDescription": "Http Server Errors", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "MemoryWorkingSet", + "displayName": "Memory working set", + "displayDescription": "Memory working set", + "unit": "Bytes", + "aggregationType": "Average", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "AverageMemoryWorkingSet", + "displayName": "Average memory working set", + "displayDescription": "Average memory working set", + "unit": "Bytes", + "aggregationType": "Average", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "AverageResponseTime", + "displayName": "Average Response Time", + "displayDescription": "Average Response Time", + "unit": "Seconds", + "aggregationType": "Average", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "FunctionExecutionUnits", + "displayName": "Function Execution Units", + "displayDescription": "Function Execution Units", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "(?i:functionapp)", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "FunctionExecutionCount", + "displayName": "Function Execution Count", + "displayDescription": "Function Execution Count", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "(?i:functionapp)", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + } + ] + } + } + }, + { + "name": "Microsoft.Web/sites/slots/providers/Microsoft.Insights/metricDefinitions/Read", + "display": { + "provider": "Microsoft.Web", + "resource": "The metric definition of Web App Slot", + "operation": "Read Web App Slot metric definitions", + "description": "Gets the available metrics for Web App Slot" + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "metricSpecifications": [ + { + "name": "CpuTime", + "displayName": "CPU Time", + "displayDescription": "CPU Time", + "unit": "Seconds", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Requests", + "displayName": "Requests", + "displayDescription": "Requests", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "BytesReceived", + "displayName": "Data In", + "displayDescription": "Data In", + "unit": "Bytes", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "BytesSent", + "displayName": "Data Out", + "displayDescription": "Data Out", + "unit": "Bytes", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Http101", + "displayName": "Http 101", + "displayDescription": "Http 101", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Http2xx", + "displayName": "Http 2xx", + "displayDescription": "Http 2xx", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Http3xx", + "displayName": "Http 3xx", + "displayDescription": "Http 3xx", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Http401", + "displayName": "Http 401", + "displayDescription": "Http 401", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Http403", + "displayName": "Http 403", + "displayDescription": "Http 403", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Http404", + "displayName": "Http 404", + "displayDescription": "Http 404", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Http406", + "displayName": "Http 406", + "displayDescription": "Http 406", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Http4xx", + "displayName": "Http 4xx", + "displayDescription": "Http 4xx", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Http5xx", + "displayName": "Http Server Errors", + "displayDescription": "Http Server Errors", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "MemoryWorkingSet", + "displayName": "Memory working set", + "displayDescription": "Memory working set", + "unit": "Bytes", + "aggregationType": "Average", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "AverageMemoryWorkingSet", + "displayName": "Average memory working set", + "displayDescription": "Average memory working set", + "unit": "Bytes", + "aggregationType": "Average", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "AverageResponseTime", + "displayName": "Average Response Time", + "displayDescription": "Average Response Time", + "unit": "Seconds", + "aggregationType": "Average", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "FunctionExecutionUnits", + "displayName": "Function Execution Units", + "displayDescription": "Function Execution Units", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "(?i:functionapp)", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "FunctionExecutionCount", + "displayName": "Function Execution Count", + "displayDescription": "Function Execution Count", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "(?i:functionapp)", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + } + ] + } + } + }, + { + "name": "Microsoft.Web/hostingEnvironments/multiRolePools/providers/Microsoft.Insights/metricDefinitions/Read", + "display": { + "provider": "Microsoft.Web", + "resource": "The metric definition of App Service Environment MultiRole", + "operation": "Read App Service Environment MultiRole metric definitions", + "description": "Gets the available metrics for App Service Environment MultiRole" + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "metricSpecifications": [ + { + "name": "Requests", + "displayName": "Requests", + "displayDescription": "Requests", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "BytesReceived", + "displayName": "Data In", + "displayDescription": "Data In", + "unit": "Bytes", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "BytesSent", + "displayName": "Data Out", + "displayDescription": "Data Out", + "unit": "Bytes", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Http101", + "displayName": "Http 101", + "displayDescription": "Http 101", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Http2xx", + "displayName": "Http 2xx", + "displayDescription": "Http 2xx", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Http3xx", + "displayName": "Http 3xx", + "displayDescription": "Http 3xx", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Http401", + "displayName": "Http 401", + "displayDescription": "Http 401", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Http403", + "displayName": "Http 403", + "displayDescription": "Http 403", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Http404", + "displayName": "Http 404", + "displayDescription": "Http 404", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Http406", + "displayName": "Http 406", + "displayDescription": "Http 406", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Http4xx", + "displayName": "Http 4xx", + "displayDescription": "Http 4xx", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Http5xx", + "displayName": "Http Server Errors", + "displayDescription": "Http Server Errors", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "AverageResponseTime", + "displayName": "Average Response Time", + "displayDescription": "Average Response Time", + "unit": "Seconds", + "aggregationType": "Average", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "CpuPercentage", + "displayName": "CPU Percentage", + "displayDescription": "CPU Percentage", + "unit": "Percent", + "aggregationType": "Average", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "MemoryPercentage", + "displayName": "Memory Percentage", + "displayDescription": "Memory Percentage", + "unit": "Percent", + "aggregationType": "Average", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "DiskQueueLength", + "displayName": "Disk Queue Length", + "displayDescription": "Disk Queue Length", + "unit": "Count", + "aggregationType": "Average", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "HttpQueueLength", + "displayName": "Http Queue Length", + "displayDescription": "Http Queue Length", + "unit": "Count", + "aggregationType": "Average", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "ActiveRequests", + "displayName": "Active Requests", + "displayDescription": "Active Requests", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "TotalFrontEnds", + "displayName": "Total Front Ends", + "displayDescription": "Total Front Ends", + "unit": "Count", + "aggregationType": "Average", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "SmallAppServicePlanInstances", + "displayName": "Small App Service Plan Workers", + "displayDescription": "Small App Service Plan Workers", + "unit": "Count", + "aggregationType": "Average", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "MediumAppServicePlanInstances", + "displayName": "Medium App Service Plan Workers", + "displayDescription": "Medium App Service Plan Workers", + "unit": "Count", + "aggregationType": "Average", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "LargeAppServicePlanInstances", + "displayName": "Large App Service Plan Workers", + "displayDescription": "Large App Service Plan Workers", + "unit": "Count", + "aggregationType": "Average", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + } + ] + } + } + }, + { + "name": "Microsoft.Web/hostingEnvironments/workerPools/providers/Microsoft.Insights/metricDefinitions/Read", + "display": { + "provider": "Microsoft.Web", + "resource": "The metric definition of App Service Environment WorkerPool", + "operation": "Read App Service Environment WorkerPool metric definitions", + "description": "Gets the available metrics for App Service Environment WorkerPool" + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "metricSpecifications": [ + { + "name": "WorkersTotal", + "displayName": "Total Workers", + "displayDescription": "Total Workers", + "unit": "Count", + "aggregationType": "Average", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "WorkersAvailable", + "displayName": "Available Workers", + "displayDescription": "Available Workers", + "unit": "Count", + "aggregationType": "Average", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "WorkersUsed", + "displayName": "Used Workers", + "displayDescription": "Used Workers", + "unit": "Count", + "aggregationType": "Average", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + } + ] + } + } + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListPublishingCredentialsPolicies.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListPublishingCredentialsPolicies.json new file mode 100644 index 000000000000..a83621a460e6 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListPublishingCredentialsPolicies.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testSite", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "ftp": { + "properties": { + "allow": false + } + }, + "scm": { + "properties": { + "allow": false + } + } + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListPublishingCredentialsPoliciesSlot.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListPublishingCredentialsPoliciesSlot.json new file mode 100644 index 000000000000..fd2577be6e1d --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListPublishingCredentialsPoliciesSlot.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testSite", + "slot": "stage", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "ftp": { + "properties": { + "allow": false + } + }, + "scm": { + "properties": { + "allow": false + } + } + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListResourceHealthMetadataByResourceGroup.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListResourceHealthMetadataByResourceGroup.json new file mode 100644 index 000000000000..d168753e385a --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListResourceHealthMetadataByResourceGroup.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2020-12-01", + "resourceGroupName": "Default-Web-NorthCentralUS", + "subscriptionId": "4adb32ad-8327-4cbb-b775-b84b4465bb38" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "category": "Shared", + "signalAvailability": true + }, + "id": "/subscriptions/4adb32ad-8327-4cbb-b775-b84b4465bb38/resourceGroups/Default-Web-NorthCentralUS/providers/Microsoft.Web/sites/newsiteinnewASE-NCUS/resourceHealthMetadata/default", + "name": "default", + "type": "Microsoft.Web/sites/resourceHealthMetadata" + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListResourceHealthMetadataBySite.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListResourceHealthMetadataBySite.json new file mode 100644 index 000000000000..a4ca9919abb7 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListResourceHealthMetadataBySite.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2020-12-01", + "name": "newsiteinnewASE-NCUS", + "slot": "Production", + "resourceGroupName": "Default-Web-NorthCentralUS", + "subscriptionId": "4adb32ad-8327-4cbb-b775-b84b4465bb38" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "category": "Shared", + "signalAvailability": true + }, + "id": "/subscriptions/4adb32ad-8327-4cbb-b775-b84b4465bb38/resourceGroups/Default-Web-NorthCentralUS/providers/Microsoft.Web/sites/newsiteinnewASE-NCUS/resourceHealthMetadata/default", + "name": "default", + "type": "Microsoft.Web/sites/resourceHealthMetadata" + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListResourceHealthMetadataBySubscription.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListResourceHealthMetadataBySubscription.json new file mode 100644 index 000000000000..81d6798dd199 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListResourceHealthMetadataBySubscription.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2020-12-01", + "subscriptionId": "4adb32ad-8327-4cbb-b775-b84b4465bb38" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "category": "Shared", + "signalAvailability": true + }, + "id": "/subscriptions/4adb32ad-8327-4cbb-b775-b84b4465bb38/resourceGroups/Default-Web-NorthCentralUS/providers/Microsoft.Web/sites/newsiteinnewASE-NCUS/resourceHealthMetadata/default", + "name": "default", + "type": "Microsoft.Web/sites/resourceHealthMetadata" + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListSlotBackups.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListSlotBackups.json new file mode 100644 index 000000000000..ed3091841af7 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListSlotBackups.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "name": "tests346", + "slot": "staging", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/sites/tests346/slot/staging", + "name": "tests346/staging", + "type": "Microsoft.Web/sites/slots", + "properties": { + "storageAccountUrl": "https://blobstorage.windows.net", + "blobName": "blob1", + "status": "InProgress" + } + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListStaticSiteAppSettings.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListStaticSiteAppSettings.json new file mode 100644 index 000000000000..4d158ab0ebdd --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListStaticSiteAppSettings.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "setting0": "someVal" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListStaticSiteBuildAppSettings.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListStaticSiteBuildAppSettings.json new file mode 100644 index 000000000000..bce8279d413d --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListStaticSiteBuildAppSettings.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "environmentName": "12", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "setting0": "someVal" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListStaticSiteBuildFunctionAppSettings.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListStaticSiteBuildFunctionAppSettings.json new file mode 100644 index 000000000000..bce8279d413d --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListStaticSiteBuildFunctionAppSettings.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "environmentName": "12", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "setting0": "someVal" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListStaticSiteBuildFunctions.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListStaticSiteBuildFunctions.json new file mode 100644 index 000000000000..90321ce5e1d7 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListStaticSiteBuildFunctions.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "environmentName": "default", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "properties": { + "functionName": "GetList", + "triggerType": "HttpTrigger" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListStaticSiteConfiguredRoles.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListStaticSiteConfiguredRoles.json new file mode 100644 index 000000000000..46c3eef72038 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListStaticSiteConfiguredRoles.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": [ + "authenticated", + "anonymous", + "customRole1" + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListStaticSiteFunctionAppSettings.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListStaticSiteFunctionAppSettings.json new file mode 100644 index 000000000000..4d158ab0ebdd --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListStaticSiteFunctionAppSettings.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "setting0": "someVal" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListStaticSiteFunctions.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListStaticSiteFunctions.json new file mode 100644 index 000000000000..abf88b920d2b --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListStaticSiteFunctions.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "properties": { + "functionName": "GetList", + "triggerType": "HttpTrigger" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListStaticSiteSecrets.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListStaticSiteSecrets.json new file mode 100644 index 000000000000..e4a4d1ea6459 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListStaticSiteSecrets.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "dnsOwnershipKey": "ownershipKey123123" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListStaticSiteUsers.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListStaticSiteUsers.json new file mode 100644 index 000000000000..89a00fc57ca2 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ListStaticSiteUsers.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "authprovider": "all", + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "properties": { + "provider": "aad", + "userId": "1234", + "displayName": "username", + "roles": "admin,anonymous,authenticated" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/PatchAppServicePlan.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/PatchAppServicePlan.json new file mode 100644 index 000000000000..10cc02cf7a7a --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/PatchAppServicePlan.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "name": "testsf6141", + "api-version": "2020-12-01", + "appServicePlan": { + "kind": "app", + "properties": {} + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/serverfarms/testsf6141", + "name": "testsf6141", + "type": "Microsoft.Web/serverfarms", + "kind": "app", + "location": "East US", + "properties": { + "status": "Ready", + "maximumNumberOfWorkers": 20, + "geoRegion": "East US", + "numberOfSites": 4, + "reserved": false, + "targetWorkerCount": 0, + "targetWorkerSizeId": 0, + "provisioningState": "Succeeded" + }, + "sku": { + "name": "P1", + "tier": "Premium", + "size": "P1", + "family": "P", + "capacity": 1 + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/serverfarms/testsf6141/operationresults/F0C6B8EC-0D53-432C-913B-1CD9E8CDE3A0", + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/serverfarms/testsf6141/operationresults/F0C6B8EC-0D53-432C-913B-1CD9E8CDE3A0" + }, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/serverfarms/testsf6141", + "name": "testsf6141", + "type": "Microsoft.Web/serverfarms", + "kind": "app", + "location": "East US", + "properties": { + "status": "Ready", + "maximumNumberOfWorkers": 20, + "geoRegion": "East US", + "numberOfSites": 4, + "isSpot": false, + "reserved": false, + "targetWorkerCount": 0, + "targetWorkerSizeId": 0, + "provisioningState": "Succeeded" + }, + "sku": { + "name": "P1", + "tier": "Premium", + "size": "P1", + "family": "P", + "capacity": 1 + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/PatchCertificate.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/PatchCertificate.json new file mode 100644 index 000000000000..c3064f0ef481 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/PatchCertificate.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "name": "testc6282", + "api-version": "2020-12-01", + "certificateEnvelope": { + "properties": { + "password": "" + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/certificates/testc6282", + "name": "testc6282", + "type": "Microsoft.Web/certificates", + "location": "East US", + "properties": { + "friendlyName": "", + "subjectName": "ServerCert", + "hostNames": [ + "ServerCert" + ], + "issuer": "CACert", + "issueDate": "2015-11-12T23:40:25+00:00", + "expirationDate": "2039-12-31T23:59:59+00:00", + "thumbprint": "FE703D7411A44163B6D32B3AD9B03E175886EBFE" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/PatchStaticSite.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/PatchStaticSite.json new file mode 100644 index 000000000000..7b391168e27b --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/PatchStaticSite.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2020-12-01", + "staticSiteEnvelope": { + "properties": {} + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Web/staticSites/testStaticSite0", + "name": "testStaticSite0", + "type": "Microsoft.Web/staticSites", + "location": "West US 2", + "properties": { + "defaultHostname": "happy-sea-15afae3e.azurestaticwebsites.net", + "repositoryUrl": "https://github.com/username/RepoName", + "branch": "demo", + "customDomains": [], + "privateEndpointConnections": [], + "contentDistributionEndpoint": "", + "keyVaultReferenceIdentity": "SystemAssigned", + "userProvidedFunctionApps": [], + "stagingEnvironmentPolicy": "Enabled", + "allowConfigFileUpdates": true + }, + "sku": { + "name": "Basic", + "tier": "Basic" + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + }, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Web/staticSites/testStaticSite0", + "name": "testStaticSite0", + "type": "Microsoft.Web/staticSites", + "location": "West US 2", + "properties": { + "defaultHostname": "happy-sea-15afae3e.azurestaticwebsites.net", + "repositoryUrl": "https://github.com/username/RepoName", + "branch": "demo", + "customDomains": [], + "privateEndpointConnections": [], + "contentDistributionEndpoint": "", + "keyVaultReferenceIdentity": "SystemAssigned", + "userProvidedFunctionApps": [], + "stagingEnvironmentPolicy": "Enabled", + "allowConfigFileUpdates": true + }, + "sku": { + "name": "Basic", + "tier": "Basic" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/RegisterUserProvidedFunctionAppWithStaticSite.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/RegisterUserProvidedFunctionAppWithStaticSite.json new file mode 100644 index 000000000000..01919916b763 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/RegisterUserProvidedFunctionAppWithStaticSite.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "functionAppName": "testFunctionApp", + "isForced": "true", + "api-version": "2020-12-01", + "staticSiteUserProvidedFunctionEnvelope": { + "properties": { + "functionAppResourceId": "/subscription/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/functionRG/providers/Microsoft.Web/sites/testFunctionApp", + "functionAppRegion": "West US 2" + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Web/staticSites/testStaticSite0/builds/default/userProvidedFunctionApps/testFunctionApp", + "name": "testFunctionApp", + "type": "Microsoft.Web/staticSites/builds/userProvidedFunctionApps", + "properties": { + "functionAppResourceId": "/subscription/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/functionRG/providers/Microsoft.Web/sites/testFunctionApp", + "functionAppRegion": "West US 2", + "createdOn": "2020-03-04T17:33:11.641Z" + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + }, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Web/staticSites/testStaticSite0/builds/default/userProvidedFunctionApps/testFunctionApp", + "name": "testFunctionApp", + "type": "Microsoft.Web/staticSites/builds/userProvidedFunctionApps", + "properties": { + "functionAppResourceId": "/subscription/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/functionRG/providers/Microsoft.Web/sites/testFunctionApp", + "functionAppRegion": "West US 2", + "createdOn": "2020-03-04T17:33:11.641Z" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/RegisterUserProvidedFunctionAppWithStaticSiteBuild.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/RegisterUserProvidedFunctionAppWithStaticSiteBuild.json new file mode 100644 index 000000000000..3781bc59b5b2 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/RegisterUserProvidedFunctionAppWithStaticSiteBuild.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "environmentName": "default", + "functionAppName": "testFunctionApp", + "isForced": "true", + "api-version": "2020-12-01", + "staticSiteUserProvidedFunctionEnvelope": { + "properties": { + "functionAppResourceId": "/subscription/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/functionRG/providers/Microsoft.Web/sites/testFunctionApp", + "functionAppRegion": "West US 2" + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Web/staticSites/testStaticSite0/builds/default/userProvidedFunctionApps/testFunctionApp", + "name": "testFunctionApp", + "type": "Microsoft.Web/staticSites/builds/userProvidedFunctionApps", + "properties": { + "functionAppResourceId": "/subscription/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/functionRG/providers/Microsoft.Web/sites/testFunctionApp", + "functionAppRegion": "West US 2", + "createdOn": "2020-03-04T17:33:11.641Z" + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + }, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Web/staticSites/testStaticSite0/builds/default/userProvidedFunctionApps/testFunctionApp", + "name": "testFunctionApp", + "type": "Microsoft.Web/staticSites/builds/userProvidedFunctionApps", + "properties": { + "functionAppResourceId": "/subscription/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/functionRG/providers/Microsoft.Web/sites/testFunctionApp", + "functionAppRegion": "West US 2", + "createdOn": "2020-03-04T17:33:11.641Z" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ResetStaticSiteApiKey.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ResetStaticSiteApiKey.json new file mode 100644 index 000000000000..45c60f3d906e --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ResetStaticSiteApiKey.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2020-12-01", + "resetPropertiesEnvelope": { + "properties": { + "shouldUpdateRepository": true, + "repositoryToken": "repoToken123" + } + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/StartWebSiteNetworkTraceOperation.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/StartWebSiteNetworkTraceOperation.json new file mode 100644 index 000000000000..1fd778e18c3b --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/StartWebSiteNetworkTraceOperation.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "name": "SampleApp", + "slot": "Production", + "durationInSeconds": 60, + "api-version": "2020-12-01" + }, + "responses": { + "200": { + "headers": {}, + "body": [ + { + "path": "D:\\home\\LogFiles\\networktrace\\10.0.0.1_2018_02_01T00_00_00.zip", + "status": "Succeeded", + "message": "Trace file has been saved as D:\\home\\LogFiles\\networktrace\\10.0.0.1_2018_02_01T00_00_00.zip" + } + ] + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/sites/SampleApp/operationresults/c291433b-53ad-4c49-8cae-0a293eae1c6d", + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/sites/SampleApp/operationresults/c291433b-53ad-4c49-8cae-0a293eae1c6d" + }, + "body": [ + { + "path": "D:\\home\\LogFiles\\networktrace\\10.0.0.1_2018_02_01T00_00_00.zip", + "status": "Succeeded", + "message": "Trace file has been saved as D:\\home\\LogFiles\\networktrace\\10.0.0.1_2018_02_01T00_00_00.zip" + } + ] + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/StaticSiteBuildZipDeploy.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/StaticSiteBuildZipDeploy.json new file mode 100644 index 000000000000..bcaec5c26a1e --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/StaticSiteBuildZipDeploy.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "environmentName": "12", + "api-version": "2020-12-01", + "staticSiteZipDeploymentEnvelope": { + "properties": { + "appZipUrl": "https://teststorageaccount.net/happy-sea-15afae3e-master-81828877/app-zipdeploy.zip", + "apiZipUrl": "https://teststorageaccount.net/happy-sea-15afae3e-master-81828877/api-zipdeploy.zip", + "deploymentTitle": "Update index.html", + "provider": "testProvider", + "functionLanguage": "testFunctionLanguage" + } + } + }, + "responses": { + "200": {}, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/StaticSiteZipDeploy.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/StaticSiteZipDeploy.json new file mode 100644 index 000000000000..fa9e5dc77efc --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/StaticSiteZipDeploy.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2020-12-01", + "staticSiteZipDeploymentEnvelope": { + "properties": { + "appZipUrl": "https://teststorageaccount.net/happy-sea-15afae3e-master-81828877/app-zipdeploy.zip", + "apiZipUrl": "https://teststorageaccount.net/happy-sea-15afae3e-master-81828877/api-zipdeploy.zip", + "deploymentTitle": "Update index.html", + "provider": "testProvider", + "functionLanguage": "testFunctionLanguage" + } + } + }, + "responses": { + "200": {}, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/StopWebSiteNetworkTrace.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/StopWebSiteNetworkTrace.json new file mode 100644 index 000000000000..b4a431f545e2 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/StopWebSiteNetworkTrace.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "name": "SampleApp", + "slot": "Production", + "api-version": "2020-12-01" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/UpdatePublishingCredentialsPolicy.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/UpdatePublishingCredentialsPolicy.json new file mode 100644 index 000000000000..bd08bf2aec7c --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/UpdatePublishingCredentialsPolicy.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testSite", + "api-version": "2020-12-01", + "csmPublishingAccessPoliciesEntity": { + "properties": { + "allow": true + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "allow": true + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/UpdatePublishingCredentialsPolicySlot.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/UpdatePublishingCredentialsPolicySlot.json new file mode 100644 index 000000000000..91ecb3fe6c11 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/UpdatePublishingCredentialsPolicySlot.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testSite", + "slot": "stage", + "api-version": "2020-12-01", + "csmPublishingAccessPoliciesEntity": { + "properties": { + "allow": true + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "allow": true + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/UpdateStaticSiteUser.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/UpdateStaticSiteUser.json new file mode 100644 index 000000000000..5df4a269a742 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/UpdateStaticSiteUser.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "authprovider": "aad", + "userid": "1234", + "api-version": "2020-12-01", + "staticSiteUserEnvelope": { + "properties": { + "roles": "contributor" + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "provider": "aad", + "userId": "1234", + "displayName": "username", + "roles": "contributor,anonymous,authenticated" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ValidateStaticSiteCustomDomain.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ValidateStaticSiteCustomDomain.json new file mode 100644 index 000000000000..529837ad0340 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/ValidateStaticSiteCustomDomain.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "domainName": "custom.domain.net", + "api-version": "2020-12-01", + "staticSiteCustomDomainRequestPropertiesEnvelope": { + "properties": {} + } + }, + "responses": { + "200": {}, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/VerifyHostingEnvironmentVnet.json b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/VerifyHostingEnvironmentVnet.json new file mode 100644 index 000000000000..276c27a077e0 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2020-12-01/examples/VerifyHostingEnvironmentVnet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "api-version": "2020-12-01", + "parameters": { + "properties": { + "vnetResourceGroup": "vNet123rg", + "vnetName": "vNet123", + "vnetSubnetName": "vNet123SubNet" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/verifyHostingEnvironmentVnet", + "properties": { + "failed": false, + "failedTests": [] + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/AppServiceEnvironments.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/AppServiceEnvironments.json new file mode 100644 index 000000000000..dc69b0e1e541 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/AppServiceEnvironments.json @@ -0,0 +1,2883 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-01-01", + "title": "AppServiceEnvironments API Client" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Web/hostingEnvironments": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Get all App Service Environments for a subscription.", + "description": "Description for Get all App Service Environments for a subscription.", + "operationId": "AppServiceEnvironments_List", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AppServiceEnvironmentCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Get all App Service Environments in a resource group.", + "description": "Description for Get all App Service Environments in a resource group.", + "operationId": "AppServiceEnvironments_ListByResourceGroup", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AppServiceEnvironmentCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Get the properties of an App Service Environment.", + "description": "Description for Get the properties of an App Service Environment.", + "operationId": "AppServiceEnvironments_Get", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AppServiceEnvironmentResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Create or update an App Service Environment.", + "description": "Description for Create or update an App Service Environment.", + "operationId": "AppServiceEnvironments_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "name": "hostingEnvironmentEnvelope", + "in": "body", + "description": "Configuration details of the App Service Environment.", + "required": true, + "schema": { + "$ref": "#/definitions/AppServiceEnvironmentResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AppServiceEnvironmentResource" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/AppServiceEnvironmentResource" + } + }, + "202": { + "description": "Operation is in progress.", + "schema": { + "$ref": "#/definitions/AppServiceEnvironmentResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Delete an App Service Environment.", + "description": "Description for Delete an App Service Environment.", + "operationId": "AppServiceEnvironments_Delete", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "name": "forceDelete", + "in": "query", + "description": "Specify true to force the deletion even if the App Service Environment contains resources. The default is false.", + "type": "boolean" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Operation is in progress." + }, + "204": { + "description": "App Service Environment does not exist" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Create or update an App Service Environment.", + "description": "Description for Create or update an App Service Environment.", + "operationId": "AppServiceEnvironments_Update", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "name": "hostingEnvironmentEnvelope", + "in": "body", + "description": "Configuration details of the App Service Environment.", + "required": true, + "schema": { + "$ref": "#/definitions/AppServiceEnvironmentPatchResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AppServiceEnvironmentResource" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/AppServiceEnvironmentResource" + } + }, + "202": { + "description": "Operation is in progress.", + "schema": { + "$ref": "#/definitions/AppServiceEnvironmentResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/capacities/compute": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Get the used, available, and total worker capacity an App Service Environment.", + "description": "Description for Get the used, available, and total worker capacity an App Service Environment.", + "operationId": "AppServiceEnvironments_ListCapacities", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/StampCapacityCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/capacities/virtualip": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Get IP addresses assigned to an App Service Environment.", + "description": "Description for Get IP addresses assigned to an App Service Environment.", + "operationId": "AppServiceEnvironments_GetVipInfo", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AddressResponse" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/changeVirtualNetwork": { + "post": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Move an App Service Environment to a different VNET.", + "description": "Description for Move an App Service Environment to a different VNET.", + "operationId": "AppServiceEnvironments_ChangeVnet", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "name": "vnetInfo", + "in": "body", + "description": "Details for the new virtual network.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VirtualNetworkProfile" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/WebAppCollection" + } + }, + "202": { + "description": "Operation is in progress.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/WebAppCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/configurations/networking": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Get networking configuration of an App Service Environment", + "description": "Description for Get networking configuration of an App Service Environment", + "operationId": "AppServiceEnvironments_GetAseV3NetworkingConfiguration", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/AseV3NetworkingConfiguration" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Update networking configuration of an App Service Environment", + "description": "Description for Update networking configuration of an App Service Environment", + "operationId": "AppServiceEnvironments_UpdateAseNetworkingConfiguration", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "name": "aseNetworkingConfiguration", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AseV3NetworkingConfiguration" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/AseV3NetworkingConfiguration" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/diagnostics": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Get diagnostic information for an App Service Environment.", + "description": "Description for Get diagnostic information for an App Service Environment.", + "operationId": "AppServiceEnvironments_ListDiagnostics", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/HostingEnvironmentDiagnostics" + } + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/diagnostics/{diagnosticsName}": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Get a diagnostics item for an App Service Environment.", + "description": "Description for Get a diagnostics item for an App Service Environment.", + "operationId": "AppServiceEnvironments_GetDiagnosticsItem", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "name": "diagnosticsName", + "in": "path", + "description": "Name of the diagnostics item.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/HostingEnvironmentDiagnostics" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/inboundNetworkDependenciesEndpoints": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Get the network endpoints of all inbound dependencies of an App Service Environment.", + "description": "Description for Get the network endpoints of all inbound dependencies of an App Service Environment.", + "operationId": "AppServiceEnvironments_GetInboundNetworkDependenciesEndpoints", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/InboundEnvironmentEndpointCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Inbound Network Dependencies Endpoints": { + "$ref": "./examples/GetInboundNetworkDependenciesEndpoints.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/multiRolePools": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Get all multi-role pools.", + "description": "Description for Get all multi-role pools.", + "operationId": "AppServiceEnvironments_ListMultiRolePools", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/WorkerPoolCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/multiRolePools/default": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Get properties of a multi-role pool.", + "description": "Description for Get properties of a multi-role pool.", + "operationId": "AppServiceEnvironments_GetMultiRolePool", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/WorkerPoolResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Create or update a multi-role pool.", + "description": "Description for Create or update a multi-role pool.", + "operationId": "AppServiceEnvironments_CreateOrUpdateMultiRolePool", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "name": "multiRolePoolEnvelope", + "in": "body", + "description": "Properties of the multi-role pool.", + "required": true, + "schema": { + "$ref": "#/definitions/WorkerPoolResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/WorkerPoolResource" + } + }, + "202": { + "description": "Operation is in progress.", + "schema": { + "$ref": "#/definitions/WorkerPoolResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Create or update a multi-role pool.", + "description": "Description for Create or update a multi-role pool.", + "operationId": "AppServiceEnvironments_UpdateMultiRolePool", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "name": "multiRolePoolEnvelope", + "in": "body", + "description": "Properties of the multi-role pool.", + "required": true, + "schema": { + "$ref": "#/definitions/WorkerPoolResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/WorkerPoolResource" + } + }, + "202": { + "description": "Operation is in progress.", + "schema": { + "$ref": "#/definitions/WorkerPoolResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/multiRolePools/default/instances/{instance}/metricdefinitions": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Get metric definitions for a specific instance of a multi-role pool of an App Service Environment.", + "description": "Description for Get metric definitions for a specific instance of a multi-role pool of an App Service Environment.", + "operationId": "AppServiceEnvironments_ListMultiRolePoolInstanceMetricDefinitions", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "name": "instance", + "in": "path", + "description": "Name of the instance in the multi-role pool.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ResourceMetricDefinitionCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/multiRolePools/default/metricdefinitions": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Get metric definitions for a multi-role pool of an App Service Environment.", + "description": "Description for Get metric definitions for a multi-role pool of an App Service Environment.", + "operationId": "AppServiceEnvironments_ListMultiRoleMetricDefinitions", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ResourceMetricDefinitionCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/multiRolePools/default/skus": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Get available SKUs for scaling a multi-role pool.", + "description": "Description for Get available SKUs for scaling a multi-role pool.", + "operationId": "AppServiceEnvironments_ListMultiRolePoolSkus", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SkuInfoCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/multiRolePools/default/usages": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Get usage metrics for a multi-role pool of an App Service Environment.", + "description": "Description for Get usage metrics for a multi-role pool of an App Service Environment.", + "operationId": "AppServiceEnvironments_ListMultiRoleUsages", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/UsageCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/operations": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "List all currently running operations on the App Service Environment.", + "description": "Description for List all currently running operations on the App Service Environment.", + "operationId": "AppServiceEnvironments_ListOperations", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "./CommonDefinitions.json#/definitions/Operation" + } + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/outboundNetworkDependenciesEndpoints": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Get the network endpoints of all outbound dependencies of an App Service Environment.", + "description": "Description for Get the network endpoints of all outbound dependencies of an App Service Environment.", + "operationId": "AppServiceEnvironments_GetOutboundNetworkDependenciesEndpoints", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OutboundEnvironmentEndpointCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Outbound Network Dependencies Endpoints": { + "$ref": "./examples/GetOutboundNetworkDependenciesEndpoints.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/privateEndpointConnections": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Gets the list of private endpoints associated with a hosting environment", + "description": "Description for Gets the list of private endpoints associated with a hosting environment", + "operationId": "AppServiceEnvironments_GetPrivateEndpointConnectionList", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/PrivateEndpointConnectionCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Gets a private endpoint connection", + "description": "Description for Gets a private endpoint connection", + "operationId": "AppServiceEnvironments_GetPrivateEndpointConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "Name of the private endpoint connection.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/RemotePrivateEndpointConnectionARMResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Approves or rejects a private endpoint connection", + "description": "Description for Approves or rejects a private endpoint connection", + "operationId": "AppServiceEnvironments_ApproveOrRejectPrivateEndpointConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "privateEndpointWrapper", + "in": "body", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/PrivateLinkConnectionApprovalRequestResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/RemotePrivateEndpointConnectionARMResource" + } + }, + "202": { + "description": "Asynchronous operation in progress.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/RemotePrivateEndpointConnectionARMResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Deletes a private endpoint connection", + "description": "Description for Deletes a private endpoint connection", + "operationId": "AppServiceEnvironments_DeletePrivateEndpointConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "type": "object" + } + }, + "202": { + "description": "Asynchronous operation in progress.", + "schema": { + "type": "object" + } + }, + "204": { + "description": "No content.", + "schema": { + "type": "object" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/privateLinkResources": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Gets the private link resources", + "description": "Description for Gets the private link resources", + "operationId": "AppServiceEnvironments_GetPrivateLinkResources", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/PrivateLinkResourcesWrapper" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/reboot": { + "post": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Reboot all machines in an App Service Environment.", + "description": "Description for Reboot all machines in an App Service Environment.", + "operationId": "AppServiceEnvironments_Reboot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Asynchronous operation in progress." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/resume": { + "post": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Resume an App Service Environment.", + "description": "Description for Resume an App Service Environment.", + "operationId": "AppServiceEnvironments_Resume", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/WebAppCollection" + } + }, + "202": { + "description": "Operation is in progress.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/WebAppCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/serverfarms": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Get all App Service plans in an App Service Environment.", + "description": "Description for Get all App Service plans in an App Service Environment.", + "operationId": "AppServiceEnvironments_ListAppServicePlans", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/AppServicePlanCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/sites": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Get all apps in an App Service Environment.", + "description": "Description for Get all apps in an App Service Environment.", + "operationId": "AppServiceEnvironments_ListWebApps", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "name": "propertiesToInclude", + "in": "query", + "description": "Comma separated list of app properties to include.", + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/WebAppCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/suspend": { + "post": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Suspend an App Service Environment.", + "description": "Description for Suspend an App Service Environment.", + "operationId": "AppServiceEnvironments_Suspend", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/WebAppCollection" + } + }, + "202": { + "description": "Operation is in progress.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/WebAppCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/usages": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Get global usage metrics of an App Service Environment.", + "description": "Description for Get global usage metrics of an App Service Environment.", + "operationId": "AppServiceEnvironments_ListUsages", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$filter", + "in": "query", + "description": "Return only usages/metrics specified in the filter. Filter conforms to odata syntax. Example: $filter=(name.value eq 'Metric1' or name.value eq 'Metric2') and startTime eq 2014-01-01T00:00:00Z and endTime eq 2014-12-31T23:59:59Z and timeGrain eq duration'[Hour|Minute|Day]'.", + "type": "string", + "x-ms-skip-url-encoding": true + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/CsmUsageQuotaCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/workerPools": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Get all worker pools of an App Service Environment.", + "description": "Description for Get all worker pools of an App Service Environment.", + "operationId": "AppServiceEnvironments_ListWorkerPools", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/WorkerPoolCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/workerPools/{workerPoolName}": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Get properties of a worker pool.", + "description": "Description for Get properties of a worker pool.", + "operationId": "AppServiceEnvironments_GetWorkerPool", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "name": "workerPoolName", + "in": "path", + "description": "Name of the worker pool.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/WorkerPoolResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Create or update a worker pool.", + "description": "Description for Create or update a worker pool.", + "operationId": "AppServiceEnvironments_CreateOrUpdateWorkerPool", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "name": "workerPoolName", + "in": "path", + "description": "Name of the worker pool.", + "required": true, + "type": "string" + }, + { + "name": "workerPoolEnvelope", + "in": "body", + "description": "Properties of the worker pool.", + "required": true, + "schema": { + "$ref": "#/definitions/WorkerPoolResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/WorkerPoolResource" + } + }, + "202": { + "description": "Operation is in progress.", + "schema": { + "$ref": "#/definitions/WorkerPoolResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Create or update a worker pool.", + "description": "Description for Create or update a worker pool.", + "operationId": "AppServiceEnvironments_UpdateWorkerPool", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "name": "workerPoolName", + "in": "path", + "description": "Name of the worker pool.", + "required": true, + "type": "string" + }, + { + "name": "workerPoolEnvelope", + "in": "body", + "description": "Properties of the worker pool.", + "required": true, + "schema": { + "$ref": "#/definitions/WorkerPoolResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/WorkerPoolResource" + } + }, + "202": { + "description": "Operation is in progress.", + "schema": { + "$ref": "#/definitions/WorkerPoolResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/workerPools/{workerPoolName}/instances/{instance}/metricdefinitions": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Get metric definitions for a specific instance of a worker pool of an App Service Environment.", + "description": "Description for Get metric definitions for a specific instance of a worker pool of an App Service Environment.", + "operationId": "AppServiceEnvironments_ListWorkerPoolInstanceMetricDefinitions", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "name": "workerPoolName", + "in": "path", + "description": "Name of the worker pool.", + "required": true, + "type": "string" + }, + { + "name": "instance", + "in": "path", + "description": "Name of the instance in the worker pool.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ResourceMetricDefinitionCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/workerPools/{workerPoolName}/metricdefinitions": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Get metric definitions for a worker pool of an App Service Environment.", + "description": "Description for Get metric definitions for a worker pool of an App Service Environment.", + "operationId": "AppServiceEnvironments_ListWebWorkerMetricDefinitions", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "name": "workerPoolName", + "in": "path", + "description": "Name of the worker pool.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ResourceMetricDefinitionCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/workerPools/{workerPoolName}/skus": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Get available SKUs for scaling a worker pool.", + "description": "Description for Get available SKUs for scaling a worker pool.", + "operationId": "AppServiceEnvironments_ListWorkerPoolSkus", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "name": "workerPoolName", + "in": "path", + "description": "Name of the worker pool.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SkuInfoCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/workerPools/{workerPoolName}/usages": { + "get": { + "tags": [ + "AppServiceEnvironments" + ], + "summary": "Get usage metrics for a worker pool of an App Service Environment.", + "description": "Description for Get usage metrics for a worker pool of an App Service Environment.", + "operationId": "AppServiceEnvironments_ListWebWorkerUsages", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service Environment.", + "required": true, + "type": "string" + }, + { + "name": "workerPoolName", + "in": "path", + "description": "Name of the worker pool.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/UsageCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "AddressResponse": { + "description": "Describes main public IP address and any extra virtual IPs.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "AddressResponse resource specific properties", + "properties": { + "serviceIpAddress": { + "description": "Main public virtual IP.", + "type": "string" + }, + "internalIpAddress": { + "description": "Virtual Network internal IP address of the App Service Environment if it is in internal load-balancing mode.", + "type": "string" + }, + "outboundIpAddresses": { + "description": "IP addresses appearing on outbound connections.", + "type": "array", + "items": { + "type": "string" + } + }, + "vipMappings": { + "description": "Additional virtual IPs.", + "type": "array", + "items": { + "$ref": "#/definitions/VirtualIPMapping" + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "AppServiceEnvironmentCollection": { + "description": "Collection of App Service Environments.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/AppServiceEnvironmentResource" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "AppServiceEnvironmentPatchResource": { + "description": "ARM resource for a app service environment.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "$ref": "./CommonDefinitions.json#/definitions/AppServiceEnvironment", + "description": "Core resource properties", + "x-ms-client-flatten": true + } + } + }, + "AppServiceEnvironmentResource": { + "description": "App Service Environment ARM resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "./CommonDefinitions.json#/definitions/AppServiceEnvironment", + "description": "Core resource properties", + "x-ms-client-flatten": true + } + } + }, + "AseV3NetworkingConfiguration": { + "description": "Full view of networking configuration for an ASE.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "AseV3NetworkingConfiguration resource specific properties", + "properties": { + "windowsOutboundIpAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "linuxOutboundIpAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "allowNewPrivateEndpointConnections": { + "description": "Property to enable and disable new private endpoint connection creation on ASE", + "type": "boolean" + } + }, + "x-ms-client-flatten": true + } + } + }, + "EndpointDependency": { + "description": "A domain name that a service is reached at, including details of the current connection status.", + "type": "object", + "properties": { + "domainName": { + "description": "The domain name of the dependency.", + "type": "string" + }, + "endpointDetails": { + "description": "The IP Addresses and Ports used when connecting to DomainName.", + "type": "array", + "items": { + "$ref": "#/definitions/EndpointDetail" + } + } + } + }, + "EndpointDetail": { + "description": "Current TCP connectivity information from the App Service Environment to a single endpoint.", + "type": "object", + "properties": { + "ipAddress": { + "description": "An IP Address that Domain Name currently resolves to.", + "type": "string" + }, + "port": { + "format": "int32", + "description": "The port an endpoint is connected to.", + "type": "integer" + }, + "latency": { + "format": "double", + "description": "The time in milliseconds it takes for a TCP connection to be created from the App Service Environment to this IpAddress at this Port.", + "type": "number" + }, + "isAccessible": { + "description": "Whether it is possible to create a TCP connection from the App Service Environment to this IpAddress at this Port.", + "type": "boolean" + } + } + }, + "HostingEnvironmentDiagnostics": { + "description": "Diagnostics for an App Service Environment.", + "type": "object", + "properties": { + "name": { + "description": "Name/identifier of the diagnostics.", + "type": "string" + }, + "diagnosticsOutput": { + "description": "Diagnostics output.", + "type": "string" + } + } + }, + "InboundEnvironmentEndpoint": { + "description": "The IP Addresses and Ports that require inbound network access to and within the subnet of the App Service Environment.", + "type": "object", + "properties": { + "description": { + "description": "Short text describing the purpose of the network traffic.", + "type": "string" + }, + "endpoints": { + "description": "The IP addresses that network traffic will originate from in cidr notation.", + "type": "array", + "items": { + "type": "string" + } + }, + "ports": { + "description": "The ports that network traffic will arrive to the App Service Environment at.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "InboundEnvironmentEndpointCollection": { + "description": "Collection of Inbound Environment Endpoints", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/InboundEnvironmentEndpoint" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "OutboundEnvironmentEndpoint": { + "description": "Endpoints accessed for a common purpose that the App Service Environment requires outbound network access to.", + "type": "object", + "properties": { + "category": { + "description": "The type of service accessed by the App Service Environment, e.g., Azure Storage, Azure SQL Database, and Azure Active Directory.", + "type": "string" + }, + "endpoints": { + "description": "The endpoints that the App Service Environment reaches the service at.", + "type": "array", + "items": { + "$ref": "#/definitions/EndpointDependency" + } + } + } + }, + "OutboundEnvironmentEndpointCollection": { + "description": "Collection of Outbound Environment Endpoints", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/OutboundEnvironmentEndpoint" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "ResourceMetricAvailability": { + "description": "Metrics availability and retention.", + "type": "object", + "properties": { + "timeGrain": { + "description": "Time grain .", + "type": "string", + "readOnly": true + }, + "retention": { + "description": "Retention period for the current time grain.", + "type": "string", + "readOnly": true + } + } + }, + "ResourceMetricDefinition": { + "description": "Metadata for the metrics.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "ResourceMetricDefinition resource specific properties", + "properties": { + "unit": { + "description": "Unit of the metric.", + "type": "string", + "readOnly": true + }, + "primaryAggregationType": { + "description": "Primary aggregation type.", + "type": "string", + "readOnly": true + }, + "metricAvailabilities": { + "description": "List of time grains supported for the metric together with retention period.", + "type": "array", + "items": { + "$ref": "#/definitions/ResourceMetricAvailability" + }, + "readOnly": true + }, + "resourceUri": { + "description": "Resource URI.", + "type": "string", + "readOnly": true + }, + "properties": { + "description": "Resource metric definition properties.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "ResourceMetricDefinitionCollection": { + "description": "Collection of metric definitions.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/ResourceMetricDefinition" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "SkuInfo": { + "description": "SKU discovery information.", + "type": "object", + "properties": { + "resourceType": { + "description": "Resource type that this SKU applies to.", + "type": "string" + }, + "sku": { + "$ref": "./CommonDefinitions.json#/definitions/SkuDescription", + "description": "Name and tier of the SKU." + }, + "capacity": { + "$ref": "./CommonDefinitions.json#/definitions/SkuCapacity", + "description": "Min, max, and default scale values of the SKU." + } + } + }, + "SkuInfoCollection": { + "description": "Collection of SKU information.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/SkuInfo" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "StampCapacity": { + "description": "Stamp capacity information.", + "type": "object", + "properties": { + "name": { + "description": "Name of the stamp.", + "type": "string" + }, + "availableCapacity": { + "format": "int64", + "description": "Available capacity (# of machines, bytes of storage etc...).", + "type": "integer" + }, + "totalCapacity": { + "format": "int64", + "description": "Total capacity (# of machines, bytes of storage etc...).", + "type": "integer" + }, + "unit": { + "description": "Name of the unit.", + "type": "string" + }, + "computeMode": { + "description": "Shared/dedicated workers.", + "enum": [ + "Shared", + "Dedicated", + "Dynamic" + ], + "type": "string", + "x-ms-enum": { + "name": "ComputeModeOptions", + "modelAsString": false + } + }, + "workerSize": { + "description": "Size of the machines.", + "enum": [ + "Small", + "Medium", + "Large", + "D1", + "D2", + "D3", + "SmallV3", + "MediumV3", + "LargeV3", + "NestedSmall", + "NestedSmallLinux", + "Default" + ], + "type": "string", + "x-ms-enum": { + "name": "WorkerSizeOptions", + "modelAsString": false + } + }, + "workerSizeId": { + "format": "int32", + "description": "Size ID of machines: \n0 - Small\n1 - Medium\n2 - Large", + "type": "integer" + }, + "excludeFromCapacityAllocation": { + "description": "If true, it includes basic apps.\nBasic apps are not used for capacity allocation.", + "type": "boolean" + }, + "isApplicableForAllComputeModes": { + "description": "true if capacity is applicable for all apps; otherwise, false.", + "type": "boolean" + }, + "siteMode": { + "description": "Shared or Dedicated.", + "type": "string" + }, + "isLinux": { + "description": "Is this a linux stamp capacity", + "type": "boolean" + } + } + }, + "StampCapacityCollection": { + "description": "Collection of stamp capacities.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/StampCapacity" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "Usage": { + "description": "Usage of the quota resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "Usage resource specific properties", + "properties": { + "displayName": { + "description": "Friendly name shown in the UI.", + "type": "string", + "readOnly": true + }, + "resourceName": { + "description": "Name of the quota resource.", + "type": "string", + "readOnly": true + }, + "unit": { + "description": "Units of measurement for the quota resource.", + "type": "string", + "readOnly": true + }, + "currentValue": { + "format": "int64", + "description": "The current value of the resource counter.", + "type": "integer", + "readOnly": true + }, + "limit": { + "format": "int64", + "description": "The resource limit.", + "type": "integer", + "readOnly": true + }, + "nextResetTime": { + "format": "date-time", + "description": "Next reset time for the resource counter.", + "type": "string", + "readOnly": true + }, + "computeMode": { + "description": "Compute mode used for this usage.", + "enum": [ + "Shared", + "Dedicated", + "Dynamic" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ComputeModeOptions", + "modelAsString": false + } + }, + "siteMode": { + "description": "Site mode used for this usage.", + "type": "string", + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "UsageCollection": { + "description": "Collection of usages.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/Usage" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "VirtualIPMapping": { + "description": "Virtual IP mapping.", + "type": "object", + "properties": { + "virtualIP": { + "description": "Virtual IP address.", + "type": "string" + }, + "internalHttpPort": { + "format": "int32", + "description": "Internal HTTP port.", + "type": "integer" + }, + "internalHttpsPort": { + "format": "int32", + "description": "Internal HTTPS port.", + "type": "integer" + }, + "inUse": { + "description": "Is virtual IP mapping in use.", + "type": "boolean" + }, + "serviceName": { + "description": "name of the service that virtual IP is assigned to", + "type": "string" + } + } + }, + "WorkerPool": { + "description": "Worker pool of an App Service Environment.", + "type": "object", + "properties": { + "workerSizeId": { + "format": "int32", + "description": "Worker size ID for referencing this worker pool.", + "type": "integer" + }, + "computeMode": { + "description": "Shared or dedicated app hosting.", + "enum": [ + "Shared", + "Dedicated", + "Dynamic" + ], + "type": "string", + "x-ms-enum": { + "name": "ComputeModeOptions", + "modelAsString": false + } + }, + "workerSize": { + "description": "VM size of the worker pool instances.", + "type": "string" + }, + "workerCount": { + "format": "int32", + "description": "Number of instances in the worker pool.", + "type": "integer" + }, + "instanceNames": { + "description": "Names of all instances in the worker pool (read only).", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + } + } + }, + "WorkerPoolCollection": { + "description": "Collection of worker pools.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/WorkerPoolResource" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "WorkerPoolResource": { + "description": "Worker pool of an App Service Environment ARM resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/WorkerPool", + "description": "Core resource properties", + "x-ms-client-flatten": true + }, + "sku": { + "$ref": "./CommonDefinitions.json#/definitions/SkuDescription" + } + } + } + }, + "parameters": { + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Your Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).", + "required": true, + "type": "string" + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "Name of the resource group to which the resource belongs.", + "required": true, + "type": "string", + "maxLength": 90, + "minLength": 1, + "pattern": "^[-\\w\\._\\(\\)]+[^\\.]$", + "x-ms-parameter-location": "method" + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "API Version", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/AppServicePlans.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/AppServicePlans.json new file mode 100644 index 000000000000..3787e388d144 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/AppServicePlans.json @@ -0,0 +1,1752 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-01-01", + "title": "AppServicePlans API Client" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Web/serverfarms": { + "get": { + "tags": [ + "AppServicePlans" + ], + "summary": "Get all App Service plans for a subscription.", + "description": "Description for Get all App Service plans for a subscription.", + "operationId": "AppServicePlans_List", + "parameters": [ + { + "name": "detailed", + "in": "query", + "description": "Specify true to return all App Service plan properties. The default is false, which returns a subset of the properties.\n Retrieval of all properties may increase the API latency.", + "type": "boolean" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/AppServicePlanCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List App Service plans": { + "$ref": "./examples/ListAppServicePlans.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/serverfarms": { + "get": { + "tags": [ + "AppServicePlans" + ], + "summary": "Get all App Service plans in a resource group.", + "description": "Description for Get all App Service plans in a resource group.", + "operationId": "AppServicePlans_ListByResourceGroup", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/AppServicePlanCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List App Service plans by resource group": { + "$ref": "./examples/ListAppServicePlansByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/serverfarms/{name}": { + "get": { + "tags": [ + "AppServicePlans" + ], + "summary": "Get an App Service plan.", + "description": "Description for Get an App Service plan.", + "operationId": "AppServicePlans_Get", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service plan.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/AppServicePlan" + } + }, + "404": { + "description": "Not found." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get App Service plan": { + "$ref": "./examples/GetAppServicePlan.json" + } + } + }, + "put": { + "tags": [ + "AppServicePlans" + ], + "summary": "Creates or updates an App Service Plan.", + "description": "Description for Creates or updates an App Service Plan.", + "operationId": "AppServicePlans_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service plan.", + "required": true, + "type": "string" + }, + { + "name": "appServicePlan", + "in": "body", + "description": "Details of the App Service plan.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/AppServicePlan" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/AppServicePlan" + } + }, + "202": { + "description": "Operation is in progress.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/AppServicePlan" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Create Or Update App Service plan": { + "$ref": "./examples/CreateOrUpdateAppServicePlan.json" + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "AppServicePlans" + ], + "summary": "Delete an App Service plan.", + "description": "Description for Delete an App Service plan.", + "operationId": "AppServicePlans_Delete", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service plan.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "204": { + "description": "OK." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete App Service plan": { + "$ref": "./examples/DeleteAppServicePlan.json" + } + } + }, + "patch": { + "tags": [ + "AppServicePlans" + ], + "summary": "Creates or updates an App Service Plan.", + "description": "Description for Creates or updates an App Service Plan.", + "operationId": "AppServicePlans_Update", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service plan.", + "required": true, + "type": "string" + }, + { + "name": "appServicePlan", + "in": "body", + "description": "Details of the App Service plan.", + "required": true, + "schema": { + "$ref": "#/definitions/AppServicePlanPatchResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/AppServicePlan" + } + }, + "202": { + "description": "Operation is in progress.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/AppServicePlan" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Patch Service plan": { + "$ref": "./examples/PatchAppServicePlan.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/serverfarms/{name}/capabilities": { + "get": { + "tags": [ + "AppServicePlans" + ], + "summary": "List all capabilities of an App Service plan.", + "description": "Description for List all capabilities of an App Service plan.", + "operationId": "AppServicePlans_ListCapabilities", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service plan.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "./CommonDefinitions.json#/definitions/Capability" + } + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/serverfarms/{name}/hybridConnectionNamespaces/{namespaceName}/relays/{relayName}": { + "get": { + "tags": [ + "AppServicePlans" + ], + "summary": "Retrieve a Hybrid Connection in use in an App Service plan.", + "description": "Description for Retrieve a Hybrid Connection in use in an App Service plan.", + "operationId": "AppServicePlans_GetHybridConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service plan.", + "required": true, + "type": "string" + }, + { + "name": "namespaceName", + "in": "path", + "description": "Name of the Service Bus namespace.", + "required": true, + "type": "string" + }, + { + "name": "relayName", + "in": "path", + "description": "Name of the Service Bus relay.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/HybridConnection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "AppServicePlans" + ], + "summary": "Delete a Hybrid Connection in use in an App Service plan.", + "description": "Description for Delete a Hybrid Connection in use in an App Service plan.", + "operationId": "AppServicePlans_DeleteHybridConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service plan.", + "required": true, + "type": "string" + }, + { + "name": "namespaceName", + "in": "path", + "description": "Name of the Service Bus namespace.", + "required": true, + "type": "string" + }, + { + "name": "relayName", + "in": "path", + "description": "Name of the Service Bus relay.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted hybrid connection" + }, + "204": { + "description": "Hybrid connection does not exist" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/serverfarms/{name}/hybridConnectionNamespaces/{namespaceName}/relays/{relayName}/listKeys": { + "post": { + "tags": [ + "AppServicePlans" + ], + "summary": "Get the send key name and value of a Hybrid Connection.", + "description": "Description for Get the send key name and value of a Hybrid Connection.", + "operationId": "AppServicePlans_ListHybridConnectionKeys", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service plan.", + "required": true, + "type": "string" + }, + { + "name": "namespaceName", + "in": "path", + "description": "The name of the Service Bus namespace.", + "required": true, + "type": "string" + }, + { + "name": "relayName", + "in": "path", + "description": "The name of the Service Bus relay.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/HybridConnectionKey" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/serverfarms/{name}/hybridConnectionNamespaces/{namespaceName}/relays/{relayName}/sites": { + "get": { + "tags": [ + "AppServicePlans" + ], + "summary": "Get all apps that use a Hybrid Connection in an App Service Plan.", + "description": "Description for Get all apps that use a Hybrid Connection in an App Service Plan.", + "operationId": "AppServicePlans_ListWebAppsByHybridConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service plan.", + "required": true, + "type": "string" + }, + { + "name": "namespaceName", + "in": "path", + "description": "Name of the Hybrid Connection namespace.", + "required": true, + "type": "string" + }, + { + "name": "relayName", + "in": "path", + "description": "Name of the Hybrid Connection relay.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ResourceCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/serverfarms/{name}/hybridConnectionPlanLimits/limit": { + "get": { + "tags": [ + "AppServicePlans" + ], + "summary": "Get the maximum number of Hybrid Connections allowed in an App Service plan.", + "description": "Description for Get the maximum number of Hybrid Connections allowed in an App Service plan.", + "operationId": "AppServicePlans_GetHybridConnectionPlanLimit", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service plan.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/HybridConnectionLimits" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/serverfarms/{name}/hybridConnectionRelays": { + "get": { + "tags": [ + "AppServicePlans" + ], + "summary": "Retrieve all Hybrid Connections in use in an App Service plan.", + "description": "Description for Retrieve all Hybrid Connections in use in an App Service plan.", + "operationId": "AppServicePlans_ListHybridConnections", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service plan.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/HybridConnectionCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/serverfarms/{name}/restartSites": { + "post": { + "tags": [ + "AppServicePlans" + ], + "summary": "Restart all apps in an App Service plan.", + "description": "Description for Restart all apps in an App Service plan.", + "operationId": "AppServicePlans_RestartWebApps", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service plan.", + "required": true, + "type": "string" + }, + { + "name": "softRestart", + "in": "query", + "description": "Specify true to perform a soft restart, applies the configuration settings and restarts the apps if necessary. The default is false, which always restarts and reprovisions the apps", + "type": "boolean" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/serverfarms/{name}/sites": { + "get": { + "tags": [ + "AppServicePlans" + ], + "summary": "Get all apps associated with an App Service plan.", + "description": "Description for Get all apps associated with an App Service plan.", + "operationId": "AppServicePlans_ListWebApps", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service plan.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$skipToken", + "in": "query", + "description": "Skip to a web app in the list of webapps associated with app service plan. If specified, the resulting list will contain web apps starting from (including) the skipToken. Otherwise, the resulting list contains web apps from the start of the list", + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "Supported filter: $filter=state eq running. Returns only web apps that are currently running", + "type": "string", + "x-ms-skip-url-encoding": true + }, + { + "name": "$top", + "in": "query", + "description": "List page size. If specified, results are paged.", + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/WebAppCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/serverfarms/{name}/skus": { + "get": { + "tags": [ + "AppServicePlans" + ], + "summary": "Gets all selectable SKUs for a given App Service Plan", + "description": "Description for Gets all selectable SKUs for a given App Service Plan", + "operationId": "AppServicePlans_GetServerFarmSkus", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of App Service Plan", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "object" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/serverfarms/{name}/usages": { + "get": { + "tags": [ + "AppServicePlans" + ], + "summary": "Gets server farm usage information", + "description": "Description for Gets server farm usage information", + "operationId": "AppServicePlans_ListUsages", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of App Service Plan", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$filter", + "in": "query", + "description": "Return only usages/metrics specified in the filter. Filter conforms to odata syntax. Example: $filter=(name.value eq 'Metric1' or name.value eq 'Metric2').", + "type": "string", + "x-ms-skip-url-encoding": true + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/CsmUsageQuotaCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/serverfarms/{name}/virtualNetworkConnections": { + "get": { + "tags": [ + "AppServicePlans" + ], + "summary": "Get all Virtual Networks associated with an App Service plan.", + "description": "Description for Get all Virtual Networks associated with an App Service plan.", + "operationId": "AppServicePlans_ListVnets", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service plan.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "./CommonDefinitions.json#/definitions/VnetInfo" + } + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/serverfarms/{name}/virtualNetworkConnections/{vnetName}": { + "get": { + "tags": [ + "AppServicePlans" + ], + "summary": "Get a Virtual Network associated with an App Service plan.", + "description": "Description for Get a Virtual Network associated with an App Service plan.", + "operationId": "AppServicePlans_GetVnetFromServerFarm", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service plan.", + "required": true, + "type": "string" + }, + { + "name": "vnetName", + "in": "path", + "description": "Name of the Virtual Network.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetInfo" + } + }, + "404": { + "description": "Virtual network could not be found." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/serverfarms/{name}/virtualNetworkConnections/{vnetName}/gateways/{gatewayName}": { + "get": { + "tags": [ + "AppServicePlans" + ], + "summary": "Get a Virtual Network gateway.", + "description": "Description for Get a Virtual Network gateway.", + "operationId": "AppServicePlans_GetVnetGateway", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service plan.", + "required": true, + "type": "string" + }, + { + "name": "vnetName", + "in": "path", + "description": "Name of the Virtual Network.", + "required": true, + "type": "string" + }, + { + "name": "gatewayName", + "in": "path", + "description": "Name of the gateway. Only the 'primary' gateway is supported.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetGateway" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "AppServicePlans" + ], + "summary": "Update a Virtual Network gateway.", + "description": "Description for Update a Virtual Network gateway.", + "operationId": "AppServicePlans_UpdateVnetGateway", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service plan.", + "required": true, + "type": "string" + }, + { + "name": "vnetName", + "in": "path", + "description": "Name of the Virtual Network.", + "required": true, + "type": "string" + }, + { + "name": "gatewayName", + "in": "path", + "description": "Name of the gateway. Only the 'primary' gateway is supported.", + "required": true, + "type": "string" + }, + { + "name": "connectionEnvelope", + "in": "body", + "description": "Definition of the gateway.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetGateway" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetGateway" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/serverfarms/{name}/virtualNetworkConnections/{vnetName}/routes": { + "get": { + "tags": [ + "AppServicePlans" + ], + "summary": "Get all routes that are associated with a Virtual Network in an App Service plan.", + "description": "Description for Get all routes that are associated with a Virtual Network in an App Service plan.", + "operationId": "AppServicePlans_ListRoutesForVnet", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service plan.", + "required": true, + "type": "string" + }, + { + "name": "vnetName", + "in": "path", + "description": "Name of the Virtual Network.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "./CommonDefinitions.json#/definitions/VnetRoute" + } + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/serverfarms/{name}/virtualNetworkConnections/{vnetName}/routes/{routeName}": { + "get": { + "tags": [ + "AppServicePlans" + ], + "summary": "Get a Virtual Network route in an App Service plan.", + "description": "Description for Get a Virtual Network route in an App Service plan.", + "operationId": "AppServicePlans_GetRouteForVnet", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service plan.", + "required": true, + "type": "string" + }, + { + "name": "vnetName", + "in": "path", + "description": "Name of the Virtual Network.", + "required": true, + "type": "string" + }, + { + "name": "routeName", + "in": "path", + "description": "Name of the Virtual Network route.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "type": "array", + "items": { + "$ref": "./CommonDefinitions.json#/definitions/VnetRoute" + } + } + }, + "404": { + "description": "Specified route does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "AppServicePlans" + ], + "summary": "Create or update a Virtual Network route in an App Service plan.", + "description": "Description for Create or update a Virtual Network route in an App Service plan.", + "operationId": "AppServicePlans_CreateOrUpdateVnetRoute", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service plan.", + "required": true, + "type": "string" + }, + { + "name": "vnetName", + "in": "path", + "description": "Name of the Virtual Network.", + "required": true, + "type": "string" + }, + { + "name": "routeName", + "in": "path", + "description": "Name of the Virtual Network route.", + "required": true, + "type": "string" + }, + { + "name": "route", + "in": "body", + "description": "Definition of the Virtual Network route.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetRoute" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetRoute" + } + }, + "400": { + "description": "Invalid request. Ensure that required parameters are given, and that addresses and address spaces are valid." + }, + "404": { + "description": "Route not found." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "AppServicePlans" + ], + "summary": "Delete a Virtual Network route in an App Service plan.", + "description": "Description for Delete a Virtual Network route in an App Service plan.", + "operationId": "AppServicePlans_DeleteVnetRoute", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service plan.", + "required": true, + "type": "string" + }, + { + "name": "vnetName", + "in": "path", + "description": "Name of the Virtual Network.", + "required": true, + "type": "string" + }, + { + "name": "routeName", + "in": "path", + "description": "Name of the Virtual Network route.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted Virtual Network route." + }, + "404": { + "description": "Specified Virtual Network route does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "AppServicePlans" + ], + "summary": "Create or update a Virtual Network route in an App Service plan.", + "description": "Description for Create or update a Virtual Network route in an App Service plan.", + "operationId": "AppServicePlans_UpdateVnetRoute", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service plan.", + "required": true, + "type": "string" + }, + { + "name": "vnetName", + "in": "path", + "description": "Name of the Virtual Network.", + "required": true, + "type": "string" + }, + { + "name": "routeName", + "in": "path", + "description": "Name of the Virtual Network route.", + "required": true, + "type": "string" + }, + { + "name": "route", + "in": "body", + "description": "Definition of the Virtual Network route.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetRoute" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetRoute" + } + }, + "400": { + "description": "Invalid request. Ensure that required parameters are given, and that addresses and address spaces are valid." + }, + "404": { + "description": "Route not found." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/serverfarms/{name}/workers/{workerName}/reboot": { + "post": { + "tags": [ + "AppServicePlans" + ], + "summary": "Reboot a worker machine in an App Service plan.", + "description": "Description for Reboot a worker machine in an App Service plan.", + "operationId": "AppServicePlans_RebootWorker", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the App Service plan.", + "required": true, + "type": "string" + }, + { + "name": "workerName", + "in": "path", + "description": "Name of worker machine, which typically starts with RD.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + } + }, + "definitions": { + "AppServicePlanPatchResource": { + "description": "ARM resource for a app service plan.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "AppServicePlanPatchResource resource specific properties", + "properties": { + "workerTierName": { + "description": "Target worker tier assigned to the App Service plan.", + "type": "string" + }, + "status": { + "description": "App Service plan status.", + "enum": [ + "Ready", + "Pending", + "Creating" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "StatusOptions", + "modelAsString": false + } + }, + "subscription": { + "description": "App Service plan subscription.", + "type": "string", + "readOnly": true + }, + "hostingEnvironmentProfile": { + "$ref": "./CommonDefinitions.json#/definitions/HostingEnvironmentProfile", + "description": "Specification for the App Service Environment to use for the App Service plan.", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "maximumNumberOfWorkers": { + "format": "int32", + "description": "Maximum number of instances that can be assigned to this App Service plan.", + "type": "integer", + "readOnly": true + }, + "geoRegion": { + "description": "Geographical location for the App Service plan.", + "type": "string", + "readOnly": true + }, + "perSiteScaling": { + "description": "If true, apps assigned to this App Service plan can be scaled independently.\nIf false, apps assigned to this App Service plan will scale to all instances of the plan.", + "default": false, + "type": "boolean" + }, + "elasticScaleEnabled": { + "description": "ServerFarm supports ElasticScale. Apps in this plan will scale as if the ServerFarm was ElasticPremium sku", + "type": "boolean" + }, + "maximumElasticWorkerCount": { + "format": "int32", + "description": "Maximum number of total workers allowed for this ElasticScaleEnabled App Service Plan", + "type": "integer" + }, + "numberOfSites": { + "format": "int32", + "description": "Number of apps assigned to this App Service plan.", + "type": "integer", + "readOnly": true + }, + "isSpot": { + "description": "If true, this App Service Plan owns spot instances.", + "type": "boolean" + }, + "spotExpirationTime": { + "format": "date-time", + "description": "The time when the server farm expires. Valid only if it is a spot server farm.", + "type": "string" + }, + "freeOfferExpirationTime": { + "format": "date-time", + "description": "The time when the server farm free offer expires.", + "type": "string" + }, + "resourceGroup": { + "description": "Resource group of the App Service plan.", + "type": "string", + "readOnly": true + }, + "reserved": { + "description": "If Linux app service plan true, false otherwise.", + "default": false, + "type": "boolean", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "isXenon": { + "description": "Obsolete: If Hyper-V container app service plan true, false otherwise.", + "default": false, + "type": "boolean", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "hyperV": { + "description": "If Hyper-V container app service plan true, false otherwise.", + "default": false, + "type": "boolean", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "targetWorkerCount": { + "format": "int32", + "description": "Scaling worker count.", + "type": "integer" + }, + "targetWorkerSizeId": { + "format": "int32", + "description": "Scaling worker size ID.", + "type": "integer" + }, + "provisioningState": { + "description": "Provisioning state of the App Service Plan.", + "enum": [ + "Succeeded", + "Failed", + "Canceled", + "InProgress", + "Deleting" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": false + } + }, + "kubeEnvironmentProfile": { + "$ref": "./CommonDefinitions.json#/definitions/KubeEnvironmentProfile", + "description": "Specification for the Kubernetes Environment to use for the App Service plan." + } + }, + "x-ms-client-flatten": true + } + } + }, + "HybridConnectionCollection": { + "description": "Collection of hostname bindings.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "./CommonDefinitions.json#/definitions/HybridConnection" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "HybridConnectionKey": { + "description": "Hybrid Connection key contract. This has the send key name and value for a Hybrid Connection.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "HybridConnectionKey resource specific properties", + "properties": { + "sendKeyName": { + "description": "The name of the send key.", + "type": "string", + "readOnly": true + }, + "sendKeyValue": { + "description": "The value of the send key.", + "type": "string", + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "HybridConnectionLimits": { + "description": "Hybrid Connection limits contract. This is used to return the plan limits of Hybrid Connections.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "HybridConnectionLimits resource specific properties", + "properties": { + "current": { + "format": "int32", + "description": "The current number of Hybrid Connections.", + "type": "integer", + "readOnly": true + }, + "maximum": { + "format": "int32", + "description": "The maximum number of Hybrid Connections allowed.", + "type": "integer", + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "ResourceCollection": { + "description": "Collection of resources.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "type": "string" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Your Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).", + "required": true, + "type": "string" + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "Name of the resource group to which the resource belongs.", + "required": true, + "type": "string", + "maxLength": 90, + "minLength": 1, + "pattern": "^[-\\w\\._\\(\\)]+[^\\.]$", + "x-ms-parameter-location": "method" + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "API Version", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/Certificates.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/Certificates.json new file mode 100644 index 000000000000..c9102ba45e27 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/Certificates.json @@ -0,0 +1,659 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-01-01", + "title": "Certificates API Client" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Web/certificates": { + "get": { + "tags": [ + "Certificates" + ], + "summary": "Get all certificates for a subscription.", + "description": "Description for Get all certificates for a subscription.", + "operationId": "Certificates_List", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$filter", + "in": "query", + "description": "Return only information specified in the filter (using OData syntax). For example: $filter=KeyVaultId eq 'KeyVaultId'", + "type": "string", + "x-ms-skip-url-encoding": true + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CertificateCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List Certificates for subscription": { + "$ref": "./examples/ListCertificates.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/certificates": { + "get": { + "tags": [ + "Certificates" + ], + "summary": "Get all certificates in a resource group.", + "description": "Description for Get all certificates in a resource group.", + "operationId": "Certificates_ListByResourceGroup", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/CertificateCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List Certificates by resource group": { + "$ref": "./examples/ListCertificatesByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/certificates/{name}": { + "get": { + "tags": [ + "Certificates" + ], + "summary": "Get a certificate.", + "description": "Description for Get a certificate.", + "operationId": "Certificates_Get", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the certificate.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Certificate" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Certificate": { + "$ref": "./examples/GetCertificate.json" + } + } + }, + "put": { + "tags": [ + "Certificates" + ], + "summary": "Create or update a certificate.", + "description": "Description for Create or update a certificate.", + "operationId": "Certificates_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the certificate.", + "required": true, + "type": "string" + }, + { + "name": "certificateEnvelope", + "in": "body", + "description": "Details of certificate, if it exists already.", + "required": true, + "schema": { + "$ref": "#/definitions/Certificate" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/Certificate" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Create Or Update Certificate": { + "$ref": "./examples/CreateOrUpdateCertificate.json" + } + } + }, + "delete": { + "tags": [ + "Certificates" + ], + "summary": "Delete a certificate.", + "description": "Description for Delete a certificate.", + "operationId": "Certificates_Delete", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the certificate.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted certificate." + }, + "204": { + "description": "Certificate does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete Certificate": { + "$ref": "./examples/DeleteCertificate.json" + } + } + }, + "patch": { + "tags": [ + "Certificates" + ], + "summary": "Create or update a certificate.", + "description": "Description for Create or update a certificate.", + "operationId": "Certificates_Update", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the certificate.", + "required": true, + "type": "string" + }, + { + "name": "certificateEnvelope", + "in": "body", + "description": "Details of certificate, if it exists already.", + "required": true, + "schema": { + "$ref": "#/definitions/CertificatePatchResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/Certificate" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Patch Certificate": { + "$ref": "./examples/PatchCertificate.json" + } + } + } + } + }, + "definitions": { + "Certificate": { + "description": "SSL certificate for an app.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "Certificate resource specific properties", + "properties": { + "password": { + "description": "Certificate password.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "friendlyName": { + "description": "Friendly name of the certificate.", + "type": "string", + "readOnly": true + }, + "subjectName": { + "description": "Subject name of the certificate.", + "type": "string", + "readOnly": true + }, + "hostNames": { + "description": "Host names the certificate applies to.", + "type": "array", + "items": { + "type": "string" + } + }, + "pfxBlob": { + "format": "byte", + "description": "Pfx blob.", + "type": "string" + }, + "siteName": { + "description": "App name.", + "type": "string", + "readOnly": true + }, + "selfLink": { + "description": "Self link.", + "type": "string", + "readOnly": true + }, + "issuer": { + "description": "Certificate issuer.", + "type": "string", + "readOnly": true + }, + "issueDate": { + "format": "date-time", + "description": "Certificate issue Date.", + "type": "string", + "readOnly": true + }, + "expirationDate": { + "format": "date-time", + "description": "Certificate expiration date.", + "type": "string", + "readOnly": true + }, + "thumbprint": { + "description": "Certificate thumbprint.", + "type": "string", + "readOnly": true + }, + "valid": { + "description": "Is the certificate valid?.", + "type": "boolean", + "readOnly": true + }, + "cerBlob": { + "format": "byte", + "description": "Raw bytes of .cer file", + "type": "string", + "readOnly": true + }, + "publicKeyHash": { + "description": "Public key hash.", + "type": "string", + "readOnly": true + }, + "hostingEnvironmentProfile": { + "$ref": "./CommonDefinitions.json#/definitions/HostingEnvironmentProfile", + "description": "Specification for the App Service Environment to use for the certificate.", + "readOnly": true + }, + "keyVaultId": { + "description": "Key Vault Csm resource Id.", + "type": "string" + }, + "keyVaultSecretName": { + "description": "Key Vault secret name.", + "type": "string" + }, + "keyVaultSecretStatus": { + "description": "Status of the Key Vault secret.", + "enum": [ + "Initialized", + "WaitingOnCertificateOrder", + "Succeeded", + "CertificateOrderFailed", + "OperationNotPermittedOnKeyVault", + "AzureServiceUnauthorizedToAccessKeyVault", + "KeyVaultDoesNotExist", + "KeyVaultSecretDoesNotExist", + "UnknownError", + "ExternalPrivateKey", + "Unknown" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "KeyVaultSecretStatus", + "modelAsString": false + } + }, + "serverFarmId": { + "description": "Resource ID of the associated App Service plan, formatted as: \"/subscriptions/{subscriptionID}/resourceGroups/{groupName}/providers/Microsoft.Web/serverfarms/{appServicePlanName}\".", + "type": "string" + }, + "canonicalName": { + "description": "CNAME of the certificate to be issued via free certificate", + "type": "string" + }, + "domainValidationMethod": { + "description": "Method of domain validation for free cert", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "CertificateCollection": { + "description": "Collection of certificates.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/Certificate" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "CertificatePatchResource": { + "description": "ARM resource for a certificate.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "CertificatePatchResource resource specific properties", + "properties": { + "password": { + "description": "Certificate password.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "friendlyName": { + "description": "Friendly name of the certificate.", + "type": "string", + "readOnly": true + }, + "subjectName": { + "description": "Subject name of the certificate.", + "type": "string", + "readOnly": true + }, + "hostNames": { + "description": "Host names the certificate applies to.", + "type": "array", + "items": { + "type": "string" + } + }, + "pfxBlob": { + "format": "byte", + "description": "Pfx blob.", + "type": "string" + }, + "siteName": { + "description": "App name.", + "type": "string", + "readOnly": true + }, + "selfLink": { + "description": "Self link.", + "type": "string", + "readOnly": true + }, + "issuer": { + "description": "Certificate issuer.", + "type": "string", + "readOnly": true + }, + "issueDate": { + "format": "date-time", + "description": "Certificate issue Date.", + "type": "string", + "readOnly": true + }, + "expirationDate": { + "format": "date-time", + "description": "Certificate expiration date.", + "type": "string", + "readOnly": true + }, + "thumbprint": { + "description": "Certificate thumbprint.", + "type": "string", + "readOnly": true + }, + "valid": { + "description": "Is the certificate valid?.", + "type": "boolean", + "readOnly": true + }, + "cerBlob": { + "format": "byte", + "description": "Raw bytes of .cer file", + "type": "string", + "readOnly": true + }, + "publicKeyHash": { + "description": "Public key hash.", + "type": "string", + "readOnly": true + }, + "hostingEnvironmentProfile": { + "$ref": "./CommonDefinitions.json#/definitions/HostingEnvironmentProfile", + "description": "Specification for the App Service Environment to use for the certificate.", + "readOnly": true + }, + "keyVaultId": { + "description": "Key Vault Csm resource Id.", + "type": "string" + }, + "keyVaultSecretName": { + "description": "Key Vault secret name.", + "type": "string" + }, + "keyVaultSecretStatus": { + "description": "Status of the Key Vault secret.", + "enum": [ + "Initialized", + "WaitingOnCertificateOrder", + "Succeeded", + "CertificateOrderFailed", + "OperationNotPermittedOnKeyVault", + "AzureServiceUnauthorizedToAccessKeyVault", + "KeyVaultDoesNotExist", + "KeyVaultSecretDoesNotExist", + "UnknownError", + "ExternalPrivateKey", + "Unknown" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "KeyVaultSecretStatus", + "modelAsString": false + } + }, + "serverFarmId": { + "description": "Resource ID of the associated App Service plan, formatted as: \"/subscriptions/{subscriptionID}/resourceGroups/{groupName}/providers/Microsoft.Web/serverfarms/{appServicePlanName}\".", + "type": "string" + }, + "canonicalName": { + "description": "CNAME of the certificate to be issued via free certificate", + "type": "string" + }, + "domainValidationMethod": { + "description": "Method of domain validation for free cert", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + } + }, + "parameters": { + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Your Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).", + "required": true, + "type": "string" + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "Name of the resource group to which the resource belongs.", + "required": true, + "type": "string", + "maxLength": 90, + "minLength": 1, + "pattern": "^[-\\w\\._\\(\\)]+[^\\.]$", + "x-ms-parameter-location": "method" + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "API Version", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/CommonDefinitions.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/CommonDefinitions.json new file mode 100644 index 000000000000..91f5acaf9bbc --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/CommonDefinitions.json @@ -0,0 +1,3361 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-01-01", + "title": "Common Definitions" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": {}, + "definitions": { + "ApiDefinitionInfo": { + "description": "Information about the formal API definition for the app.", + "type": "object", + "properties": { + "url": { + "description": "The URL of the API definition.", + "type": "string" + } + } + }, + "ApiManagementConfig": { + "description": "Azure API management (APIM) configuration linked to the app.", + "type": "object", + "properties": { + "id": { + "description": "APIM-Api Identifier.", + "type": "string" + } + } + }, + "AppServiceEnvironment": { + "description": "Description of an App Service Environment.", + "required": [ + "virtualNetwork" + ], + "type": "object", + "properties": { + "provisioningState": { + "description": "Provisioning state of the App Service Environment.", + "enum": [ + "Succeeded", + "Failed", + "Canceled", + "InProgress", + "Deleting" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": false + } + }, + "status": { + "description": "Current status of the App Service Environment.", + "enum": [ + "Preparing", + "Ready", + "Scaling", + "Deleting" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "HostingEnvironmentStatus", + "modelAsString": false + } + }, + "virtualNetwork": { + "$ref": "#/definitions/VirtualNetworkProfile", + "description": "Description of the Virtual Network." + }, + "internalLoadBalancingMode": { + "description": "Specifies which endpoints to serve internally in the Virtual Network for the App Service Environment.", + "enum": [ + "None", + "Web", + "Publishing", + "Web, Publishing" + ], + "type": "string", + "x-ms-enum": { + "name": "LoadBalancingMode", + "modelAsString": true + } + }, + "multiSize": { + "description": "Front-end VM size, e.g. \"Medium\", \"Large\".", + "type": "string" + }, + "multiRoleCount": { + "format": "int32", + "description": "Number of front-end instances.", + "type": "integer", + "readOnly": true + }, + "ipsslAddressCount": { + "format": "int32", + "description": "Number of IP SSL addresses reserved for the App Service Environment.", + "type": "integer" + }, + "dnsSuffix": { + "description": "DNS suffix of the App Service Environment.", + "type": "string" + }, + "maximumNumberOfMachines": { + "format": "int32", + "description": "Maximum number of VMs in the App Service Environment.", + "type": "integer", + "readOnly": true + }, + "frontEndScaleFactor": { + "format": "int32", + "description": "Scale factor for front-ends.", + "type": "integer" + }, + "suspended": { + "description": "true if the App Service Environment is suspended; otherwise, false. The environment can be suspended, e.g. when the management endpoint is no longer available\n (most likely because NSG blocked the incoming traffic).", + "type": "boolean", + "readOnly": true + }, + "clusterSettings": { + "description": "Custom settings for changing the behavior of the App Service Environment.", + "type": "array", + "items": { + "$ref": "#/definitions/NameValuePair" + } + }, + "userWhitelistedIpRanges": { + "description": "User added ip ranges to whitelist on ASE db", + "type": "array", + "items": { + "type": "string" + } + }, + "hasLinuxWorkers": { + "description": "Flag that displays whether an ASE has linux workers or not", + "type": "boolean", + "readOnly": true + }, + "dedicatedHostCount": { + "format": "int32", + "description": "Dedicated Host Count", + "type": "integer", + "readOnly": true + } + } + }, + "AppServicePlan": { + "description": "App Service plan.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "AppServicePlan resource specific properties", + "properties": { + "workerTierName": { + "description": "Target worker tier assigned to the App Service plan.", + "type": "string" + }, + "status": { + "description": "App Service plan status.", + "enum": [ + "Ready", + "Pending", + "Creating" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "StatusOptions", + "modelAsString": false + } + }, + "subscription": { + "description": "App Service plan subscription.", + "type": "string", + "readOnly": true + }, + "hostingEnvironmentProfile": { + "$ref": "#/definitions/HostingEnvironmentProfile", + "description": "Specification for the App Service Environment to use for the App Service plan.", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "maximumNumberOfWorkers": { + "format": "int32", + "description": "Maximum number of instances that can be assigned to this App Service plan.", + "type": "integer", + "readOnly": true + }, + "geoRegion": { + "description": "Geographical location for the App Service plan.", + "type": "string", + "readOnly": true + }, + "perSiteScaling": { + "description": "If true, apps assigned to this App Service plan can be scaled independently.\nIf false, apps assigned to this App Service plan will scale to all instances of the plan.", + "default": false, + "type": "boolean" + }, + "maximumElasticWorkerCount": { + "format": "int32", + "description": "Maximum number of total workers allowed for this ElasticScaleEnabled App Service Plan", + "type": "integer" + }, + "numberOfSites": { + "format": "int32", + "description": "Number of apps assigned to this App Service plan.", + "type": "integer", + "readOnly": true + }, + "isSpot": { + "description": "If true, this App Service Plan owns spot instances.", + "type": "boolean" + }, + "spotExpirationTime": { + "format": "date-time", + "description": "The time when the server farm expires. Valid only if it is a spot server farm.", + "type": "string" + }, + "freeOfferExpirationTime": { + "format": "date-time", + "description": "The time when the server farm free offer expires.", + "type": "string" + }, + "resourceGroup": { + "description": "Resource group of the App Service plan.", + "type": "string", + "readOnly": true + }, + "reserved": { + "description": "If Linux app service plan true, false otherwise.", + "default": false, + "type": "boolean", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "isXenon": { + "description": "Obsolete: If Hyper-V container app service plan true, false otherwise.", + "default": false, + "type": "boolean", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "hyperV": { + "description": "If Hyper-V container app service plan true, false otherwise.", + "default": false, + "type": "boolean", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "targetWorkerCount": { + "format": "int32", + "description": "Scaling worker count.", + "type": "integer" + }, + "targetWorkerSizeId": { + "format": "int32", + "description": "Scaling worker size ID.", + "type": "integer" + }, + "provisioningState": { + "description": "Provisioning state of the App Service Plan.", + "enum": [ + "Succeeded", + "Failed", + "Canceled", + "InProgress", + "Deleting" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": false + } + }, + "kubeEnvironmentProfile": { + "$ref": "#/definitions/KubeEnvironmentProfile", + "description": "Specification for the Kubernetes Environment to use for the App Service plan." + } + }, + "x-ms-client-flatten": true + }, + "sku": { + "$ref": "#/definitions/SkuDescription" + }, + "extendedLocation": { + "$ref": "#/definitions/ExtendedLocation" + } + } + }, + "AppServicePlanCollection": { + "description": "Collection of App Service plans.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/AppServicePlan" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "ArmIdWrapper": { + "description": "A wrapper for an ARM resource id", + "type": "object", + "properties": { + "id": { + "type": "string", + "readOnly": true + } + } + }, + "AutoHealActions": { + "description": "Actions which to take by the auto-heal module when a rule is triggered.", + "type": "object", + "properties": { + "actionType": { + "description": "Predefined action to be taken.", + "enum": [ + "Recycle", + "LogEvent", + "CustomAction" + ], + "type": "string", + "x-ms-enum": { + "name": "AutoHealActionType", + "modelAsString": false + } + }, + "customAction": { + "$ref": "#/definitions/AutoHealCustomAction", + "description": "Custom action to be taken." + }, + "minProcessExecutionTime": { + "description": "Minimum time the process must execute\nbefore taking the action", + "type": "string" + } + } + }, + "AutoHealCustomAction": { + "description": "Custom action to be executed\nwhen an auto heal rule is triggered.", + "type": "object", + "properties": { + "exe": { + "description": "Executable to be run.", + "type": "string" + }, + "parameters": { + "description": "Parameters for the executable.", + "type": "string" + } + } + }, + "AutoHealRules": { + "description": "Rules that can be defined for auto-heal.", + "type": "object", + "properties": { + "triggers": { + "$ref": "#/definitions/AutoHealTriggers", + "description": "Conditions that describe when to execute the auto-heal actions." + }, + "actions": { + "$ref": "#/definitions/AutoHealActions", + "description": "Actions to be executed when a rule is triggered." + } + } + }, + "AutoHealTriggers": { + "description": "Triggers for auto-heal.", + "type": "object", + "properties": { + "requests": { + "$ref": "#/definitions/RequestsBasedTrigger", + "description": "A rule based on total requests." + }, + "privateBytesInKB": { + "format": "int32", + "description": "A rule based on private bytes.", + "type": "integer" + }, + "statusCodes": { + "description": "A rule based on status codes.", + "type": "array", + "items": { + "$ref": "#/definitions/StatusCodesBasedTrigger" + } + }, + "slowRequests": { + "$ref": "#/definitions/SlowRequestsBasedTrigger", + "description": "A rule based on request execution time." + }, + "slowRequestsWithPath": { + "description": "A rule based on multiple Slow Requests Rule with path", + "type": "array", + "items": { + "$ref": "#/definitions/SlowRequestsBasedTrigger" + } + }, + "statusCodesRange": { + "description": "A rule based on status codes ranges.", + "type": "array", + "items": { + "$ref": "#/definitions/StatusCodesRangeBasedTrigger" + } + } + } + }, + "AzureStorageInfoValue": { + "description": "Azure Files or Blob Storage access information value for dictionary storage.", + "type": "object", + "properties": { + "type": { + "description": "Type of storage.", + "enum": [ + "AzureFiles", + "AzureBlob" + ], + "type": "string", + "x-ms-enum": { + "name": "AzureStorageType", + "modelAsString": false + } + }, + "accountName": { + "description": "Name of the storage account.", + "type": "string" + }, + "shareName": { + "description": "Name of the file share (container name, for Blob storage).", + "type": "string" + }, + "accessKey": { + "description": "Access key for the storage account.", + "type": "string", + "x-ms-secret": true + }, + "mountPath": { + "description": "Path to mount the storage within the site's runtime environment.", + "type": "string" + }, + "state": { + "description": "State of the storage account.", + "enum": [ + "Ok", + "InvalidCredentials", + "InvalidShare", + "NotValidated" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "AzureStorageState", + "modelAsString": false + } + } + } + }, + "Capability": { + "description": "Describes the capabilities/features allowed for a specific SKU.", + "type": "object", + "properties": { + "name": { + "description": "Name of the SKU capability.", + "type": "string" + }, + "value": { + "description": "Value of the SKU capability.", + "type": "string" + }, + "reason": { + "description": "Reason of the SKU capability.", + "type": "string" + } + } + }, + "CloningInfo": { + "description": "Information needed for cloning operation.", + "required": [ + "sourceWebAppId" + ], + "type": "object", + "properties": { + "correlationId": { + "format": "uuid", + "description": "Correlation ID of cloning operation. This ID ties multiple cloning operations\ntogether to use the same snapshot.", + "type": "string", + "example": "00000000-0000-0000-0000-000000000000" + }, + "overwrite": { + "description": "true to overwrite destination app; otherwise, false.", + "type": "boolean" + }, + "cloneCustomHostNames": { + "description": "true to clone custom hostnames from source app; otherwise, false.", + "type": "boolean" + }, + "cloneSourceControl": { + "description": "true to clone source control from source app; otherwise, false.", + "type": "boolean" + }, + "sourceWebAppId": { + "description": "ARM resource ID of the source app. App resource ID is of the form \n/subscriptions/{subId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName} for production slots and \n/subscriptions/{subId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/slots/{slotName} for other slots.", + "type": "string" + }, + "sourceWebAppLocation": { + "description": "Location of source app ex: West US or North Europe", + "type": "string" + }, + "hostingEnvironment": { + "description": "App Service Environment.", + "type": "string" + }, + "appSettingsOverrides": { + "description": "Application setting overrides for cloned app. If specified, these settings override the settings cloned \nfrom source app. Otherwise, application settings from source app are retained.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "configureLoadBalancing": { + "description": "true to configure load balancing for source and destination app.", + "type": "boolean" + }, + "trafficManagerProfileId": { + "description": "ARM resource ID of the Traffic Manager profile to use, if it exists. Traffic Manager resource ID is of the form \n/subscriptions/{subId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/trafficManagerProfiles/{profileName}.", + "type": "string" + }, + "trafficManagerProfileName": { + "description": "Name of Traffic Manager profile to create. This is only needed if Traffic Manager profile does not already exist.", + "type": "string" + } + } + }, + "ConnStringInfo": { + "description": "Database connection string information.", + "type": "object", + "properties": { + "name": { + "description": "Name of connection string.", + "type": "string" + }, + "connectionString": { + "description": "Connection string value.", + "type": "string" + }, + "type": { + "description": "Type of database.", + "enum": [ + "MySql", + "SQLServer", + "SQLAzure", + "Custom", + "NotificationHub", + "ServiceBus", + "EventHub", + "ApiHub", + "DocDb", + "RedisCache", + "PostgreSQL" + ], + "type": "string", + "x-ms-enum": { + "name": "ConnectionStringType", + "modelAsString": false + } + } + } + }, + "CorsSettings": { + "description": "Cross-Origin Resource Sharing (CORS) settings for the app.", + "type": "object", + "properties": { + "allowedOrigins": { + "description": "Gets or sets the list of origins that should be allowed to make cross-origin\ncalls (for example: http://example.com:12345). Use \"*\" to allow all.", + "type": "array", + "items": { + "type": "string" + } + }, + "supportCredentials": { + "description": "Gets or sets whether CORS requests with credentials are allowed. See \nhttps://developer.mozilla.org/en-US/docs/Web/HTTP/CORS#Requests_with_credentials\nfor more details.", + "type": "boolean" + } + } + }, + "CsmOperationCollection": { + "description": "Collection of Azure resource manager operation metadata.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/CsmOperationDescription" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "CsmOperationDescription": { + "description": "Description of an operation available for Microsoft.Web resource provider.", + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "isDataAction": { + "type": "boolean" + }, + "display": { + "$ref": "#/definitions/CsmOperationDisplay" + }, + "origin": { + "type": "string" + }, + "properties": { + "$ref": "#/definitions/CsmOperationDescriptionProperties" + } + } + }, + "CsmOperationDescriptionProperties": { + "description": "Properties available for a Microsoft.Web resource provider operation.", + "type": "object", + "properties": { + "serviceSpecification": { + "$ref": "#/definitions/ServiceSpecification" + } + } + }, + "CsmOperationDisplay": { + "description": "Meta data about operation used for display in portal.", + "type": "object", + "properties": { + "provider": { + "type": "string" + }, + "resource": { + "type": "string" + }, + "operation": { + "type": "string" + }, + "description": { + "type": "string" + } + } + }, + "CsmUsageQuota": { + "description": "Usage of the quota resource.", + "type": "object", + "properties": { + "unit": { + "description": "Units of measurement for the quota resource.", + "type": "string" + }, + "nextResetTime": { + "format": "date-time", + "description": "Next reset time for the resource counter.", + "type": "string" + }, + "currentValue": { + "format": "int64", + "description": "The current value of the resource counter.", + "type": "integer" + }, + "limit": { + "format": "int64", + "description": "The resource limit.", + "type": "integer" + }, + "name": { + "$ref": "#/definitions/LocalizableString", + "description": "Quota name." + } + } + }, + "CsmUsageQuotaCollection": { + "description": "Collection of CSM usage quotas.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/CsmUsageQuota" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "DataProviderMetadata": { + "description": "Additional configuration for a data providers", + "type": "object", + "properties": { + "providerName": { + "type": "string" + }, + "propertyBag": { + "description": "Settings for the data provider", + "type": "array", + "items": { + "$ref": "#/definitions/KeyValuePair[String,Object]" + }, + "readOnly": true + } + } + }, + "DataTableResponseColumn": { + "description": "Column definition", + "type": "object", + "properties": { + "columnName": { + "description": "Name of the column", + "type": "string" + }, + "dataType": { + "description": "Data type which looks like 'String' or 'Int32'.", + "type": "string" + }, + "columnType": { + "description": "Column Type", + "type": "string" + } + } + }, + "DataTableResponseObject": { + "description": "Data Table which defines columns and raw row values", + "type": "object", + "properties": { + "tableName": { + "description": "Name of the table", + "type": "string" + }, + "columns": { + "description": "List of columns with data types", + "type": "array", + "items": { + "$ref": "#/definitions/DataTableResponseColumn" + } + }, + "rows": { + "description": "Raw row values", + "type": "array", + "items": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + }, + "DefaultErrorResponse": { + "description": "App Service error response.", + "type": "object", + "properties": { + "error": { + "description": "Error model.", + "type": "object", + "properties": { + "code": { + "description": "Standardized string to programmatically identify the error.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "Detailed error description and debugging information.", + "type": "string", + "readOnly": true + }, + "target": { + "description": "Detailed error description and debugging information.", + "type": "string", + "readOnly": true + }, + "details": { + "type": "array", + "items": { + "description": "Detailed errors.", + "properties": { + "code": { + "description": "Standardized string to programmatically identify the error.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "Detailed error description and debugging information.", + "type": "string", + "readOnly": true + }, + "target": { + "description": "Detailed error description and debugging information.", + "type": "string", + "readOnly": true + } + }, + "readOnly": true + } + }, + "innererror": { + "description": "More information to debug error.", + "type": "string", + "readOnly": true + } + }, + "readOnly": true + } + } + }, + "DeletedSite": { + "description": "A deleted app.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "DeletedSite resource specific properties", + "properties": { + "deletedSiteId": { + "format": "int32", + "description": "Numeric id for the deleted site", + "type": "integer", + "readOnly": true + }, + "deletedTimestamp": { + "description": "Time in UTC when the app was deleted.", + "type": "string", + "readOnly": true + }, + "subscription": { + "description": "Subscription containing the deleted site", + "type": "string", + "readOnly": true + }, + "resourceGroup": { + "description": "ResourceGroup that contained the deleted site", + "type": "string", + "readOnly": true + }, + "deletedSiteName": { + "description": "Name of the deleted site", + "type": "string", + "readOnly": true + }, + "slot": { + "description": "Slot of the deleted site", + "type": "string", + "readOnly": true + }, + "kind": { + "description": "Kind of site that was deleted", + "type": "string", + "readOnly": true + }, + "geoRegionName": { + "description": "Geo Region of the deleted site", + "type": "string", + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "DetectorInfo": { + "description": "Definition of Detector", + "type": "object", + "properties": { + "id": { + "description": "Id of detector", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name of detector", + "type": "string", + "readOnly": true + }, + "description": { + "description": "Short description of the detector and its purpose.", + "type": "string", + "readOnly": true + }, + "author": { + "description": "Author of the detector.", + "type": "string", + "readOnly": true + }, + "category": { + "description": "Problem category. This serves for organizing group for detectors.", + "type": "string", + "readOnly": true + }, + "supportTopicList": { + "description": "List of Support Topics for which this detector is enabled.", + "type": "array", + "items": { + "$ref": "#/definitions/SupportTopic" + }, + "readOnly": true + }, + "analysisType": { + "description": "Analysis Types for which this detector should apply to.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "type": { + "description": "Whether this detector is an Analysis Detector or not.", + "enum": [ + "Detector", + "Analysis", + "CategoryOverview" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "DetectorType", + "modelAsString": false + } + }, + "score": { + "format": "float", + "description": "Defines score of a detector to power ML based matching.", + "type": "number", + "readOnly": true + } + } + }, + "DetectorResponse": { + "description": "Class representing Response from Detector", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "DetectorResponse resource specific properties", + "properties": { + "metadata": { + "$ref": "#/definitions/DetectorInfo", + "description": "metadata for the detector" + }, + "dataset": { + "description": "Data Set", + "type": "array", + "items": { + "$ref": "#/definitions/DiagnosticData" + } + }, + "status": { + "$ref": "#/definitions/Status", + "description": "Indicates status of the most severe insight." + }, + "dataProvidersMetadata": { + "description": "Additional configuration for different data providers to be used by the UI", + "type": "array", + "items": { + "$ref": "#/definitions/DataProviderMetadata" + } + }, + "suggestedUtterances": { + "$ref": "#/definitions/QueryUtterancesResults", + "description": "Suggested utterances where the detector can be applicable." + } + }, + "x-ms-client-flatten": true + } + } + }, + "DetectorResponseCollection": { + "description": "Collection of detector responses", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/DetectorResponse" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "DiagnosticData": { + "description": "Set of data with rendering instructions", + "type": "object", + "properties": { + "table": { + "$ref": "#/definitions/DataTableResponseObject", + "description": "Data in table form" + }, + "renderingProperties": { + "$ref": "#/definitions/Rendering", + "description": "Properties that describe how the table should be rendered" + } + } + }, + "Dimension": { + "description": "Dimension of a resource metric. For e.g. instance specific HTTP requests for a web app, \nwhere instance name is dimension of the metric HTTP request", + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "displayName": { + "type": "string" + }, + "internalName": { + "type": "string" + }, + "toBeExportedForShoebox": { + "type": "boolean" + } + } + }, + "ErrorEntity": { + "description": "Body of the error response returned from the API.", + "type": "object", + "properties": { + "extendedCode": { + "description": "Type of error.", + "type": "string" + }, + "messageTemplate": { + "description": "Message template.", + "type": "string" + }, + "parameters": { + "description": "Parameters for the template.", + "type": "array", + "items": { + "type": "string" + } + }, + "innerErrors": { + "description": "Inner errors.", + "type": "array", + "items": { + "$ref": "#/definitions/ErrorEntity" + } + }, + "code": { + "description": "Basic error code.", + "type": "string" + }, + "message": { + "description": "Any details of the error.", + "type": "string" + } + } + }, + "Experiments": { + "description": "Routing rules in production experiments.", + "type": "object", + "properties": { + "rampUpRules": { + "description": "List of ramp-up rules.", + "type": "array", + "items": { + "$ref": "#/definitions/RampUpRule" + } + } + } + }, + "ExtendedLocation": { + "description": "Extended Location.", + "type": "object", + "properties": { + "name": { + "description": "Name of extended location.", + "type": "string" + }, + "type": { + "description": "Type of extended location.", + "type": "string", + "readOnly": true + } + } + }, + "HandlerMapping": { + "description": "The IIS handler mappings used to define which handler processes HTTP requests with certain extension. \nFor example, it is used to configure php-cgi.exe process to handle all HTTP requests with *.php extension.", + "type": "object", + "properties": { + "extension": { + "description": "Requests with this extension will be handled using the specified FastCGI application.", + "type": "string" + }, + "scriptProcessor": { + "description": "The absolute path to the FastCGI application.", + "type": "string" + }, + "arguments": { + "description": "Command-line arguments to be passed to the script processor.", + "type": "string" + } + } + }, + "HostNameSslState": { + "description": "SSL-enabled hostname.", + "type": "object", + "properties": { + "name": { + "description": "Hostname.", + "type": "string" + }, + "sslState": { + "description": "SSL type.", + "enum": [ + "Disabled", + "SniEnabled", + "IpBasedEnabled" + ], + "type": "string", + "x-ms-enum": { + "name": "SslState", + "modelAsString": false + } + }, + "virtualIP": { + "description": "Virtual IP address assigned to the hostname if IP based SSL is enabled.", + "type": "string" + }, + "thumbprint": { + "description": "SSL certificate thumbprint.", + "type": "string" + }, + "toUpdate": { + "description": "Set to true to update existing hostname.", + "type": "boolean" + }, + "hostType": { + "description": "Indicates whether the hostname is a standard or repository hostname.", + "enum": [ + "Standard", + "Repository" + ], + "type": "string", + "x-ms-enum": { + "name": "HostType", + "modelAsString": false + } + } + } + }, + "HostingEnvironmentProfile": { + "description": "Specification for an App Service Environment to use for this resource.", + "type": "object", + "properties": { + "id": { + "description": "Resource ID of the App Service Environment.", + "type": "string" + }, + "name": { + "description": "Name of the App Service Environment.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Resource type of the App Service Environment.", + "type": "string", + "readOnly": true + } + } + }, + "HybridConnection": { + "description": "Hybrid Connection contract. This is used to configure a Hybrid Connection.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "HybridConnection resource specific properties", + "properties": { + "serviceBusNamespace": { + "description": "The name of the Service Bus namespace.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "relayName": { + "description": "The name of the Service Bus relay.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "relayArmUri": { + "description": "The ARM URI to the Service Bus relay.", + "type": "string" + }, + "hostname": { + "description": "The hostname of the endpoint.", + "type": "string" + }, + "port": { + "format": "int32", + "description": "The port of the endpoint.", + "type": "integer" + }, + "sendKeyName": { + "description": "The name of the Service Bus key which has Send permissions. This is used to authenticate to Service Bus.", + "type": "string" + }, + "sendKeyValue": { + "description": "The value of the Service Bus key. This is used to authenticate to Service Bus. In ARM this key will not be returned\nnormally, use the POST /listKeys API instead.", + "type": "string" + }, + "serviceBusSuffix": { + "description": "The suffix for the service bus endpoint. By default this is .servicebus.windows.net", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "Identifier": { + "description": "A domain specific resource identifier.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "Identifier resource specific properties", + "properties": { + "id": { + "description": "String representation of the identity.", + "type": "string", + "x-ms-client-name": "value" + } + }, + "x-ms-client-flatten": true + } + } + }, + "IdentifierCollection": { + "description": "Collection of identifiers.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/Identifier" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "IpSecurityRestriction": { + "description": "IP security restriction on an app.", + "type": "object", + "properties": { + "ipAddress": { + "description": "IP address the security restriction is valid for.\nIt can be in form of pure ipv4 address (required SubnetMask property) or\nCIDR notation such as ipv4/mask (leading bit match). For CIDR,\nSubnetMask property must not be specified.", + "type": "string" + }, + "subnetMask": { + "description": "Subnet mask for the range of IP addresses the restriction is valid for.", + "type": "string" + }, + "vnetSubnetResourceId": { + "description": "Virtual network resource id", + "type": "string" + }, + "vnetTrafficTag": { + "format": "int32", + "description": "(internal) Vnet traffic tag", + "type": "integer" + }, + "subnetTrafficTag": { + "format": "int32", + "description": "(internal) Subnet traffic tag", + "type": "integer" + }, + "action": { + "description": "Allow or Deny access for this IP range.", + "type": "string" + }, + "tag": { + "description": "Defines what this IP filter will be used for. This is to support IP filtering on proxies.", + "enum": [ + "Default", + "XffProxy", + "ServiceTag" + ], + "type": "string", + "x-ms-enum": { + "name": "IpFilterTag", + "modelAsString": true + } + }, + "priority": { + "format": "int32", + "description": "Priority of IP restriction rule.", + "type": "integer" + }, + "name": { + "description": "IP restriction rule name.", + "type": "string" + }, + "description": { + "description": "IP restriction rule description.", + "type": "string" + }, + "headers": { + "description": "IP restriction rule headers.\nX-Forwarded-Host (https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Forwarded-Host#Examples). \nThe matching logic is ..\n- If the property is null or empty (default), all hosts(or lack of) are allowed.\n- A value is compared using ordinal-ignore-case (excluding port number).\n- Subdomain wildcards are permitted but don't match the root domain. For example, *.contoso.com matches the subdomain foo.contoso.com\n but not the root domain contoso.com or multi-level foo.bar.contoso.com\n- Unicode host names are allowed but are converted to Punycode for matching.\n\nX-Forwarded-For (https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Forwarded-For#Examples).\nThe matching logic is ..\n- If the property is null or empty (default), any forwarded-for chains (or lack of) are allowed.\n- If any address (excluding port number) in the chain (comma separated) matches the CIDR defined by the property.\n\nX-Azure-FDID and X-FD-HealthProbe.\nThe matching logic is exact match.", + "type": "object", + "additionalProperties": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + }, + "KeyValuePair[String,Object]": { + "type": "object", + "properties": { + "key": { + "type": "string", + "readOnly": true + }, + "value": { + "type": "object", + "readOnly": true + } + } + }, + "KubeEnvironmentProfile": { + "description": "Specification for a Kubernetes Environment to use for this resource.", + "type": "object", + "properties": { + "id": { + "description": "Resource ID of the Kubernetes Environment.", + "type": "string" + }, + "name": { + "description": "Name of the Kubernetes Environment.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Resource type of the Kubernetes Environment.", + "type": "string", + "readOnly": true + } + } + }, + "LocalizableString": { + "description": "Localizable string object containing the name and a localized value.", + "type": "object", + "properties": { + "value": { + "description": "Non-localized name.", + "type": "string" + }, + "localizedValue": { + "description": "Localized name.", + "type": "string" + } + } + }, + "LogSpecification": { + "description": "Log Definition of a single resource metric.", + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "displayName": { + "type": "string" + }, + "blobDuration": { + "type": "string" + }, + "logFilterPattern": { + "type": "string" + } + } + }, + "ManagedServiceIdentity": { + "description": "Managed service identity.", + "type": "object", + "properties": { + "type": { + "description": "Type of managed service identity.", + "enum": [ + "SystemAssigned", + "UserAssigned", + "SystemAssigned, UserAssigned", + "None" + ], + "type": "string", + "x-ms-enum": { + "name": "ManagedServiceIdentityType", + "modelAsString": false + } + }, + "tenantId": { + "description": "Tenant of managed service identity.", + "type": "string", + "readOnly": true + }, + "principalId": { + "description": "Principal Id of managed service identity.", + "type": "string", + "readOnly": true + }, + "userAssignedIdentities": { + "description": "The list of user assigned identities associated with the resource. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}", + "type": "object", + "additionalProperties": { + "type": "object", + "properties": { + "principalId": { + "description": "Principal Id of user assigned identity", + "type": "string", + "readOnly": true + }, + "clientId": { + "description": "Client Id of user assigned identity", + "type": "string", + "readOnly": true + } + } + } + } + } + }, + "MetricAvailability": { + "description": "Retention policy of a resource metric.", + "type": "object", + "properties": { + "timeGrain": { + "type": "string" + }, + "blobDuration": { + "type": "string" + } + } + }, + "MetricSpecification": { + "description": "Definition of a single resource metric.", + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "displayName": { + "type": "string" + }, + "displayDescription": { + "type": "string" + }, + "unit": { + "type": "string" + }, + "aggregationType": { + "type": "string" + }, + "supportsInstanceLevelAggregation": { + "type": "boolean" + }, + "enableRegionalMdmAccount": { + "type": "boolean" + }, + "sourceMdmAccount": { + "type": "string" + }, + "sourceMdmNamespace": { + "type": "string" + }, + "metricFilterPattern": { + "type": "string" + }, + "fillGapWithZero": { + "type": "boolean" + }, + "isInternal": { + "type": "boolean" + }, + "dimensions": { + "type": "array", + "items": { + "$ref": "#/definitions/Dimension" + } + }, + "category": { + "type": "string" + }, + "availabilities": { + "type": "array", + "items": { + "$ref": "#/definitions/MetricAvailability" + } + }, + "supportedTimeGrainTypes": { + "type": "array", + "items": { + "type": "string" + } + }, + "supportedAggregationTypes": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "NameIdentifier": { + "description": "Identifies an object.", + "type": "object", + "properties": { + "name": { + "description": "Name of the object.", + "type": "string" + } + } + }, + "NameValuePair": { + "description": "Name value pair.", + "type": "object", + "properties": { + "name": { + "description": "Pair name.", + "type": "string" + }, + "value": { + "description": "Pair value.", + "type": "string" + } + } + }, + "Operation": { + "description": "An operation on a resource.", + "type": "object", + "properties": { + "id": { + "description": "Operation ID.", + "type": "string" + }, + "name": { + "description": "Operation name.", + "type": "string" + }, + "status": { + "description": "The current status of the operation.", + "enum": [ + "InProgress", + "Failed", + "Succeeded", + "TimedOut", + "Created" + ], + "type": "string", + "x-ms-enum": { + "name": "OperationStatus", + "modelAsString": false + } + }, + "errors": { + "description": "Any errors associate with the operation.", + "type": "array", + "items": { + "$ref": "#/definitions/ErrorEntity" + } + }, + "createdTime": { + "format": "date-time", + "description": "Time when operation has started.", + "type": "string" + }, + "modifiedTime": { + "format": "date-time", + "description": "Time when operation has been updated.", + "type": "string" + }, + "expirationTime": { + "format": "date-time", + "description": "Time when operation will expire.", + "type": "string" + }, + "geoMasterOperationId": { + "format": "uuid", + "description": "Applicable only for stamp operation ids.", + "type": "string", + "example": "00000000-0000-0000-0000-000000000000" + } + } + }, + "PrivateEndpointConnectionCollection": { + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/RemotePrivateEndpointConnectionARMResource" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "PrivateLinkConnectionApprovalRequest": { + "description": "A request to approve or reject a private endpoint connection", + "type": "object", + "properties": { + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkConnectionState" + } + } + }, + "PrivateLinkConnectionApprovalRequestResource": { + "description": "Private Endpoint Connection Approval ARM resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PrivateLinkConnectionApprovalRequest", + "description": "Core resource properties", + "x-ms-client-flatten": true + } + } + }, + "PrivateLinkConnectionState": { + "description": "The state of a private link connection", + "type": "object", + "properties": { + "status": { + "description": "Status of a private link connection", + "type": "string" + }, + "description": { + "description": "Description of a private link connection", + "type": "string" + }, + "actionsRequired": { + "description": "ActionsRequired for a private link connection", + "type": "string" + } + } + }, + "PrivateLinkResource": { + "description": "A private link resource", + "required": [ + "id", + "name", + "type", + "properties" + ], + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "name": { + "description": "Name of a private link resource", + "type": "string" + }, + "type": { + "type": "string" + }, + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "Properties of a private link resource" + } + } + }, + "PrivateLinkResourceProperties": { + "description": "Properties of a private link resource", + "type": "object", + "properties": { + "groupId": { + "description": "GroupId of a private link resource", + "type": "string", + "readOnly": true + }, + "requiredMembers": { + "description": "RequiredMembers of a private link resource", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "requiredZoneNames": { + "description": "RequiredZoneNames of a private link resource", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + } + } + }, + "PrivateLinkResourcesWrapper": { + "description": "Wrapper for a collection of private link resources", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + } + } + } + }, + "ProxyOnlyResource": { + "description": "Azure proxy only resource. This resource is not tracked by Azure Resource Manager.", + "properties": { + "id": { + "description": "Resource Id.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Resource Name.", + "type": "string", + "readOnly": true + }, + "kind": { + "description": "Kind of resource.", + "type": "string" + }, + "type": { + "description": "Resource type.", + "type": "string", + "readOnly": true + } + }, + "x-ms-azure-resource": true + }, + "PushSettings": { + "description": "Push settings for the App.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "PushSettings resource specific properties", + "required": [ + "isPushEnabled" + ], + "properties": { + "isPushEnabled": { + "description": "Gets or sets a flag indicating whether the Push endpoint is enabled.", + "type": "boolean" + }, + "tagWhitelistJson": { + "description": "Gets or sets a JSON string containing a list of tags that are whitelisted for use by the push registration endpoint.", + "type": "string" + }, + "tagsRequiringAuth": { + "description": "Gets or sets a JSON string containing a list of tags that require user authentication to be used in the push registration endpoint.\nTags can consist of alphanumeric characters and the following:\n'_', '@', '#', '.', ':', '-'. \nValidation should be performed at the PushRequestHandler.", + "type": "string" + }, + "dynamicTagsJson": { + "description": "Gets or sets a JSON string containing a list of dynamic tags that will be evaluated from user claims in the push registration endpoint.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "QueryUtterancesResult": { + "description": "Result for utterances query.", + "type": "object", + "properties": { + "sampleUtterance": { + "$ref": "#/definitions/SampleUtterance", + "description": "A sample utterance." + }, + "score": { + "format": "float", + "description": "Score of a sample utterance.", + "type": "number" + } + } + }, + "QueryUtterancesResults": { + "description": "Suggested utterances where the detector can be applicable", + "type": "object", + "properties": { + "query": { + "description": "Search Query.", + "type": "string" + }, + "results": { + "description": "Array of utterance results for search query.", + "type": "array", + "items": { + "$ref": "#/definitions/QueryUtterancesResult" + } + } + } + }, + "RampUpRule": { + "description": "Routing rules for ramp up testing. This rule allows to redirect static traffic % to a slot or to gradually change routing % based on performance.", + "type": "object", + "properties": { + "actionHostName": { + "description": "Hostname of a slot to which the traffic will be redirected if decided to. E.g. myapp-stage.azurewebsites.net.", + "type": "string" + }, + "reroutePercentage": { + "format": "double", + "description": "Percentage of the traffic which will be redirected to ActionHostName.", + "type": "number" + }, + "changeStep": { + "format": "double", + "description": "In auto ramp up scenario this is the step to add/remove from ReroutePercentage until it reaches \\nMinReroutePercentage or \nMaxReroutePercentage. Site metrics are checked every N minutes specified in ChangeIntervalInMinutes.\\nCustom decision algorithm \ncan be provided in TiPCallback site extension which URL can be specified in ChangeDecisionCallbackUrl.", + "type": "number" + }, + "changeIntervalInMinutes": { + "format": "int32", + "description": "Specifies interval in minutes to reevaluate ReroutePercentage.", + "type": "integer" + }, + "minReroutePercentage": { + "format": "double", + "description": "Specifies lower boundary above which ReroutePercentage will stay.", + "type": "number" + }, + "maxReroutePercentage": { + "format": "double", + "description": "Specifies upper boundary below which ReroutePercentage will stay.", + "type": "number" + }, + "changeDecisionCallbackUrl": { + "description": "Custom decision algorithm can be provided in TiPCallback site extension which URL can be specified. See TiPCallback site extension for the scaffold and contracts.\nhttps://www.siteextensions.net/packages/TiPCallback/", + "type": "string" + }, + "name": { + "description": "Name of the routing rule. The recommended name would be to point to the slot which will receive the traffic in the experiment.", + "type": "string" + } + } + }, + "RemotePrivateEndpointConnectionARMResource": { + "description": "Remote Private Endpoint Connection ARM resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "RemotePrivateEndpointConnectionARMResource resource specific properties", + "properties": { + "provisioningState": { + "type": "string", + "readOnly": true + }, + "privateEndpoint": { + "$ref": "#/definitions/ArmIdWrapper", + "description": "PrivateEndpoint of a remote private endpoint connection" + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkConnectionState" + }, + "ipAddresses": { + "description": "Private IPAddresses mapped to the remote private endpoint", + "type": "array", + "items": { + "type": "string" + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "Rendering": { + "description": "Instructions for rendering the data", + "type": "object", + "properties": { + "type": { + "description": "Rendering Type", + "enum": [ + "NoGraph", + "Table", + "TimeSeries", + "TimeSeriesPerInstance", + "PieChart", + "DataSummary", + "Email", + "Insights", + "DynamicInsight", + "Markdown", + "Detector", + "DropDown", + "Card", + "Solution", + "Guage", + "Form", + "ChangeSets", + "ChangeAnalysisOnboarding", + "ChangesView", + "AppInsight", + "DependencyGraph", + "DownTime", + "SummaryCard", + "SearchComponent", + "AppInsightEnablement" + ], + "type": "string", + "x-ms-enum": { + "name": "RenderingType", + "modelAsString": false + } + }, + "title": { + "description": "Title of data", + "type": "string" + }, + "description": { + "description": "Description of the data that will help it be interpreted", + "type": "string" + } + } + }, + "RequestsBasedTrigger": { + "description": "Trigger based on total requests.", + "type": "object", + "properties": { + "count": { + "format": "int32", + "description": "Request Count.", + "type": "integer" + }, + "timeInterval": { + "description": "Time interval.", + "type": "string" + } + } + }, + "Resource": { + "description": "Azure resource. This resource is tracked in Azure Resource Manager", + "required": [ + "location" + ], + "properties": { + "id": { + "description": "Resource Id.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Resource Name.", + "type": "string", + "readOnly": true + }, + "kind": { + "description": "Kind of resource.", + "type": "string" + }, + "location": { + "description": "Resource Location.", + "type": "string" + }, + "type": { + "description": "Resource type.", + "type": "string", + "readOnly": true + }, + "tags": { + "description": "Resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "x-ms-azure-resource": true + }, + "SampleUtterance": { + "description": "Sample utterance.", + "type": "object", + "properties": { + "text": { + "description": "Text attribute of sample utterance.", + "type": "string" + }, + "links": { + "description": "Links attribute of sample utterance.", + "type": "array", + "items": { + "type": "string" + } + }, + "qid": { + "description": "Question id of sample utterance (for stackoverflow questions titles).", + "type": "string" + } + } + }, + "ServiceSpecification": { + "description": "Resource metrics service provided by Microsoft.Insights resource provider.", + "type": "object", + "properties": { + "metricSpecifications": { + "type": "array", + "items": { + "$ref": "#/definitions/MetricSpecification" + } + }, + "logSpecifications": { + "type": "array", + "items": { + "$ref": "#/definitions/LogSpecification" + } + } + } + }, + "Site": { + "description": "A web app, a mobile app backend, or an API app.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "Site resource specific properties", + "properties": { + "state": { + "description": "Current state of the app.", + "type": "string", + "readOnly": true + }, + "hostNames": { + "description": "Hostnames associated with the app.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "repositorySiteName": { + "description": "Name of the repository site.", + "type": "string", + "readOnly": true + }, + "usageState": { + "description": "State indicating whether the app has exceeded its quota usage. Read-only.", + "enum": [ + "Normal", + "Exceeded" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "UsageState", + "modelAsString": false + } + }, + "enabled": { + "description": "true if the app is enabled; otherwise, false. Setting this value to false disables the app (takes the app offline).", + "type": "boolean" + }, + "enabledHostNames": { + "description": "Enabled hostnames for the app.Hostnames need to be assigned (see HostNames) AND enabled. Otherwise,\nthe app is not served on those hostnames.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "availabilityState": { + "description": "Management information availability state for the app.", + "enum": [ + "Normal", + "Limited", + "DisasterRecoveryMode" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "SiteAvailabilityState", + "modelAsString": false + } + }, + "hostNameSslStates": { + "description": "Hostname SSL states are used to manage the SSL bindings for app's hostnames.", + "type": "array", + "items": { + "$ref": "#/definitions/HostNameSslState" + } + }, + "serverFarmId": { + "description": "Resource ID of the associated App Service plan, formatted as: \"/subscriptions/{subscriptionID}/resourceGroups/{groupName}/providers/Microsoft.Web/serverfarms/{appServicePlanName}\".", + "type": "string" + }, + "reserved": { + "description": "true if reserved; otherwise, false.", + "default": false, + "type": "boolean", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "isXenon": { + "description": "Obsolete: Hyper-V sandbox.", + "default": false, + "type": "boolean", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "hyperV": { + "description": "Hyper-V sandbox.", + "default": false, + "type": "boolean", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "lastModifiedTimeUtc": { + "format": "date-time", + "description": "Last time the app was modified, in UTC. Read-only.", + "type": "string", + "readOnly": true + }, + "siteConfig": { + "$ref": "#/definitions/SiteConfig", + "description": "Configuration of the app." + }, + "trafficManagerHostNames": { + "description": "Azure Traffic Manager hostnames associated with the app. Read-only.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "scmSiteAlsoStopped": { + "description": "true to stop SCM (KUDU) site when the app is stopped; otherwise, false. The default is false.", + "default": false, + "type": "boolean" + }, + "targetSwapSlot": { + "description": "Specifies which deployment slot this app will swap into. Read-only.", + "type": "string", + "readOnly": true + }, + "hostingEnvironmentProfile": { + "$ref": "#/definitions/HostingEnvironmentProfile", + "description": "App Service Environment to use for the app.", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "clientAffinityEnabled": { + "description": "true to enable client affinity; false to stop sending session affinity cookies, which route client requests in the same session to the same instance. Default is true.", + "type": "boolean" + }, + "clientCertEnabled": { + "description": "true to enable client certificate authentication (TLS mutual authentication); otherwise, false. Default is false.", + "type": "boolean" + }, + "clientCertMode": { + "description": "This composes with ClientCertEnabled setting.\n- ClientCertEnabled: false means ClientCert is ignored.\n- ClientCertEnabled: true and ClientCertMode: Required means ClientCert is required.\n- ClientCertEnabled: true and ClientCertMode: Optional means ClientCert is optional or accepted.", + "enum": [ + "Required", + "Optional", + "OptionalInteractiveUser" + ], + "type": "string", + "x-ms-enum": { + "name": "ClientCertMode", + "modelAsString": false + } + }, + "clientCertExclusionPaths": { + "description": "client certificate authentication comma-separated exclusion paths", + "type": "string" + }, + "hostNamesDisabled": { + "description": "true to disable the public hostnames of the app; otherwise, false.\n If true, the app is only accessible via API management process.", + "type": "boolean" + }, + "customDomainVerificationId": { + "description": "Unique identifier that verifies the custom domains assigned to the app. Customer will add this id to a txt record for verification.", + "type": "string" + }, + "outboundIpAddresses": { + "description": "List of IP addresses that the app uses for outbound connections (e.g. database access). Includes VIPs from tenants that site can be hosted with current settings. Read-only.", + "type": "string", + "readOnly": true + }, + "possibleOutboundIpAddresses": { + "description": "List of IP addresses that the app uses for outbound connections (e.g. database access). Includes VIPs from all tenants except dataComponent. Read-only.", + "type": "string", + "readOnly": true + }, + "containerSize": { + "format": "int32", + "description": "Size of the function container.", + "type": "integer" + }, + "dailyMemoryTimeQuota": { + "format": "int32", + "description": "Maximum allowed daily memory-time quota (applicable on dynamic apps only).", + "type": "integer" + }, + "suspendedTill": { + "format": "date-time", + "description": "App suspended till in case memory-time quota is exceeded.", + "type": "string", + "readOnly": true + }, + "maxNumberOfWorkers": { + "format": "int32", + "description": "Maximum number of workers.\nThis only applies to Functions container.", + "type": "integer", + "readOnly": true + }, + "cloningInfo": { + "$ref": "#/definitions/CloningInfo", + "description": "If specified during app creation, the app is cloned from a source app.", + "x-ms-mutability": [ + "create" + ] + }, + "resourceGroup": { + "description": "Name of the resource group the app belongs to. Read-only.", + "type": "string", + "readOnly": true + }, + "isDefaultContainer": { + "description": "true if the app is a default container; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "defaultHostName": { + "description": "Default hostname of the app. Read-only.", + "type": "string", + "readOnly": true + }, + "slotSwapStatus": { + "$ref": "#/definitions/SlotSwapStatus", + "description": "Status of the last deployment slot swap operation.", + "readOnly": true + }, + "httpsOnly": { + "description": "HttpsOnly: configures a web site to accept only https requests. Issues redirect for\nhttp requests", + "type": "boolean" + }, + "redundancyMode": { + "description": "Site redundancy mode", + "enum": [ + "None", + "Manual", + "Failover", + "ActiveActive", + "GeoRedundant" + ], + "type": "string", + "x-ms-enum": { + "name": "RedundancyMode", + "modelAsString": false + } + }, + "inProgressOperationId": { + "format": "uuid", + "description": "Specifies an operation id if this site has a pending operation.", + "type": "string", + "readOnly": true, + "example": "00000000-0000-0000-0000-000000000000" + }, + "storageAccountRequired": { + "description": "Checks if Customer provided storage account is required", + "type": "boolean" + }, + "keyVaultReferenceIdentity": { + "description": "Identity to use for Key Vault Reference authentication.", + "type": "string" + }, + "virtualNetworkSubnetId": { + "description": "Azure Resource Manager ID of the Virtual network and subnet to be joined by Regional VNET Integration.\nThis must be of the form /subscriptions/{subscriptionName}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{vnetName}/subnets/{subnetName}", + "type": "string" + } + }, + "x-ms-client-flatten": true + }, + "identity": { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + "extendedLocation": { + "$ref": "#/definitions/ExtendedLocation" + } + } + }, + "SiteConfig": { + "description": "Configuration of an App Service app.", + "type": "object", + "properties": { + "numberOfWorkers": { + "format": "int32", + "description": "Number of workers.", + "type": "integer" + }, + "defaultDocuments": { + "description": "Default documents.", + "type": "array", + "items": { + "type": "string" + } + }, + "netFrameworkVersion": { + "description": ".NET Framework version.", + "default": "v4.6", + "type": "string" + }, + "phpVersion": { + "description": "Version of PHP.", + "type": "string" + }, + "pythonVersion": { + "description": "Version of Python.", + "type": "string" + }, + "nodeVersion": { + "description": "Version of Node.js.", + "type": "string" + }, + "powerShellVersion": { + "description": "Version of PowerShell.", + "type": "string" + }, + "linuxFxVersion": { + "description": "Linux App Framework and version", + "type": "string" + }, + "windowsFxVersion": { + "description": "Xenon App Framework and version", + "type": "string" + }, + "requestTracingEnabled": { + "description": "true if request tracing is enabled; otherwise, false.", + "type": "boolean" + }, + "requestTracingExpirationTime": { + "format": "date-time", + "description": "Request tracing expiration time.", + "type": "string" + }, + "remoteDebuggingEnabled": { + "description": "true if remote debugging is enabled; otherwise, false.", + "type": "boolean" + }, + "remoteDebuggingVersion": { + "description": "Remote debugging version.", + "type": "string" + }, + "httpLoggingEnabled": { + "description": "true if HTTP logging is enabled; otherwise, false.", + "type": "boolean" + }, + "acrUseManagedIdentityCreds": { + "description": "Flag to use Managed Identity Creds for ACR pull", + "type": "boolean" + }, + "acrUserManagedIdentityID": { + "description": "If using user managed identity, the user managed identity ClientId", + "type": "string" + }, + "logsDirectorySizeLimit": { + "format": "int32", + "description": "HTTP logs directory size limit.", + "type": "integer" + }, + "detailedErrorLoggingEnabled": { + "description": "true if detailed error logging is enabled; otherwise, false.", + "type": "boolean" + }, + "publishingUsername": { + "description": "Publishing user name.", + "type": "string" + }, + "appSettings": { + "description": "Application settings.", + "type": "array", + "items": { + "$ref": "#/definitions/NameValuePair" + } + }, + "connectionStrings": { + "description": "Connection strings.", + "type": "array", + "items": { + "$ref": "#/definitions/ConnStringInfo" + } + }, + "machineKey": { + "$ref": "#/definitions/SiteMachineKey", + "description": "Site MachineKey.", + "readOnly": true + }, + "handlerMappings": { + "description": "Handler mappings.", + "type": "array", + "items": { + "$ref": "#/definitions/HandlerMapping" + } + }, + "documentRoot": { + "description": "Document root.", + "type": "string" + }, + "scmType": { + "description": "SCM type.", + "enum": [ + "None", + "Dropbox", + "Tfs", + "LocalGit", + "GitHub", + "CodePlexGit", + "CodePlexHg", + "BitbucketGit", + "BitbucketHg", + "ExternalGit", + "ExternalHg", + "OneDrive", + "VSO", + "VSTSRM" + ], + "type": "string", + "x-ms-enum": { + "name": "ScmType", + "modelAsString": true + } + }, + "use32BitWorkerProcess": { + "description": "true to use 32-bit worker process; otherwise, false.", + "type": "boolean" + }, + "webSocketsEnabled": { + "description": "true if WebSocket is enabled; otherwise, false.", + "type": "boolean" + }, + "alwaysOn": { + "description": "true if Always On is enabled; otherwise, false.", + "type": "boolean" + }, + "javaVersion": { + "description": "Java version.", + "type": "string" + }, + "javaContainer": { + "description": "Java container.", + "type": "string" + }, + "javaContainerVersion": { + "description": "Java container version.", + "type": "string" + }, + "appCommandLine": { + "description": "App command line to launch.", + "type": "string" + }, + "managedPipelineMode": { + "description": "Managed pipeline mode.", + "enum": [ + "Integrated", + "Classic" + ], + "type": "string", + "x-ms-enum": { + "name": "ManagedPipelineMode", + "modelAsString": false + } + }, + "virtualApplications": { + "description": "Virtual applications.", + "type": "array", + "items": { + "$ref": "#/definitions/VirtualApplication" + } + }, + "loadBalancing": { + "description": "Site load balancing.", + "enum": [ + "WeightedRoundRobin", + "LeastRequests", + "LeastResponseTime", + "WeightedTotalTraffic", + "RequestHash", + "PerSiteRoundRobin" + ], + "type": "string", + "x-ms-enum": { + "name": "SiteLoadBalancing", + "modelAsString": false + } + }, + "experiments": { + "$ref": "#/definitions/Experiments", + "description": "This is work around for polymorphic types." + }, + "limits": { + "$ref": "#/definitions/SiteLimits", + "description": "Site limits." + }, + "autoHealEnabled": { + "description": "true if Auto Heal is enabled; otherwise, false.", + "type": "boolean" + }, + "autoHealRules": { + "$ref": "#/definitions/AutoHealRules", + "description": "Auto Heal rules." + }, + "tracingOptions": { + "description": "Tracing options.", + "type": "string" + }, + "vnetName": { + "description": "Virtual Network name.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "vnetRouteAllEnabled": { + "description": "Virtual Network Route All enabled. This causes all outbound traffic to have Virtual Network Security Groups and User Defined Routes applied.", + "type": "boolean" + }, + "vnetPrivatePortsCount": { + "format": "int32", + "description": "The number of private ports assigned to this app. These will be assigned dynamically on runtime.", + "type": "integer" + }, + "cors": { + "$ref": "#/definitions/CorsSettings", + "description": "Cross-Origin Resource Sharing (CORS) settings." + }, + "push": { + "$ref": "#/definitions/PushSettings", + "description": "Push endpoint settings." + }, + "apiDefinition": { + "$ref": "#/definitions/ApiDefinitionInfo", + "description": "Information about the formal API definition for the app." + }, + "apiManagementConfig": { + "$ref": "#/definitions/ApiManagementConfig", + "description": "Azure API management settings linked to the app." + }, + "autoSwapSlotName": { + "description": "Auto-swap slot name.", + "type": "string" + }, + "localMySqlEnabled": { + "description": "true to enable local MySQL; otherwise, false.", + "default": false, + "type": "boolean" + }, + "managedServiceIdentityId": { + "format": "int32", + "description": "Managed Service Identity Id", + "type": "integer" + }, + "xManagedServiceIdentityId": { + "format": "int32", + "description": "Explicit Managed Service Identity Id", + "type": "integer" + }, + "keyVaultReferenceIdentity": { + "description": "Identity to use for Key Vault Reference authentication.", + "type": "string" + }, + "ipSecurityRestrictions": { + "description": "IP security restrictions for main.", + "type": "array", + "items": { + "$ref": "#/definitions/IpSecurityRestriction" + } + }, + "scmIpSecurityRestrictions": { + "description": "IP security restrictions for scm.", + "type": "array", + "items": { + "$ref": "#/definitions/IpSecurityRestriction" + } + }, + "scmIpSecurityRestrictionsUseMain": { + "description": "IP security restrictions for scm to use main.", + "type": "boolean" + }, + "http20Enabled": { + "description": "Http20Enabled: configures a web site to allow clients to connect over http2.0", + "default": true, + "type": "boolean" + }, + "minTlsVersion": { + "description": "MinTlsVersion: configures the minimum version of TLS required for SSL requests", + "enum": [ + "1.0", + "1.1", + "1.2" + ], + "type": "string", + "x-ms-enum": { + "name": "SupportedTlsVersions", + "modelAsString": true + } + }, + "scmMinTlsVersion": { + "description": "ScmMinTlsVersion: configures the minimum version of TLS required for SSL requests for SCM site", + "enum": [ + "1.0", + "1.1", + "1.2" + ], + "type": "string", + "x-ms-enum": { + "name": "SupportedTlsVersions", + "modelAsString": true + } + }, + "ftpsState": { + "description": "State of FTP / FTPS service", + "enum": [ + "AllAllowed", + "FtpsOnly", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "FtpsState", + "modelAsString": true + } + }, + "preWarmedInstanceCount": { + "format": "int32", + "description": "Number of preWarmed instances.\nThis setting only applies to the Consumption and Elastic Plans", + "maximum": 10, + "minimum": 0, + "type": "integer" + }, + "functionAppScaleLimit": { + "format": "int32", + "description": "Maximum number of workers that a site can scale out to.\nThis setting only applies to the Consumption and Elastic Premium Plans", + "minimum": 0, + "type": "integer" + }, + "healthCheckPath": { + "description": "Health check path", + "type": "string" + }, + "functionsRuntimeScaleMonitoringEnabled": { + "description": "Gets or sets a value indicating whether functions runtime scale monitoring is enabled. When enabled,\nthe ScaleController will not monitor event sources directly, but will instead call to the\nruntime to get scale status.", + "type": "boolean" + }, + "websiteTimeZone": { + "description": "Sets the time zone a site uses for generating timestamps. Compatible with Linux and Windows App Service. Setting the WEBSITE_TIME_ZONE app setting takes precedence over this config. For Linux, expects tz database values https://www.iana.org/time-zones (for a quick reference see https://en.wikipedia.org/wiki/List_of_tz_database_time_zones). For Windows, expects one of the time zones listed under HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\Time Zones", + "type": "string" + }, + "minimumElasticInstanceCount": { + "format": "int32", + "description": "Number of minimum instance count for a site\nThis setting only applies to the Elastic Plans", + "maximum": 20, + "minimum": 0, + "type": "integer" + }, + "azureStorageAccounts": { + "description": "List of Azure Storage Accounts.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/AzureStorageInfoValue" + } + }, + "publicNetworkAccess": { + "description": "Property to allow or block all public traffic.", + "type": "string" + } + } + }, + "SiteLimits": { + "description": "Metric limits set on an app.", + "type": "object", + "properties": { + "maxPercentageCpu": { + "format": "double", + "description": "Maximum allowed CPU usage percentage.", + "type": "number" + }, + "maxMemoryInMb": { + "format": "int64", + "description": "Maximum allowed memory usage in MB.", + "type": "integer" + }, + "maxDiskSizeInMb": { + "format": "int64", + "description": "Maximum allowed disk size usage in MB.", + "type": "integer" + } + } + }, + "SiteMachineKey": { + "description": "MachineKey of an app.", + "type": "object", + "properties": { + "validation": { + "description": "MachineKey validation.", + "type": "string" + }, + "validationKey": { + "description": "Validation key.", + "type": "string" + }, + "decryption": { + "description": "Algorithm used for decryption.", + "type": "string" + }, + "decryptionKey": { + "description": "Decryption key.", + "type": "string" + } + } + }, + "SkuCapacity": { + "description": "Description of the App Service plan scale options.", + "type": "object", + "properties": { + "minimum": { + "format": "int32", + "description": "Minimum number of workers for this App Service plan SKU.", + "type": "integer" + }, + "maximum": { + "format": "int32", + "description": "Maximum number of workers for this App Service plan SKU.", + "type": "integer" + }, + "elasticMaximum": { + "format": "int32", + "description": "Maximum number of Elastic workers for this App Service plan SKU.", + "type": "integer" + }, + "default": { + "format": "int32", + "description": "Default number of workers for this App Service plan SKU.", + "type": "integer" + }, + "scaleType": { + "description": "Available scale configurations for an App Service plan.", + "type": "string" + } + } + }, + "SkuDescription": { + "description": "Description of a SKU for a scalable resource.", + "type": "object", + "properties": { + "name": { + "description": "Name of the resource SKU.", + "type": "string" + }, + "tier": { + "description": "Service tier of the resource SKU.", + "type": "string" + }, + "size": { + "description": "Size specifier of the resource SKU.", + "type": "string" + }, + "family": { + "description": "Family code of the resource SKU.", + "type": "string" + }, + "capacity": { + "format": "int32", + "description": "Current number of instances assigned to the resource.", + "type": "integer" + }, + "skuCapacity": { + "$ref": "#/definitions/SkuCapacity", + "description": "Min, max, and default scale values of the SKU." + }, + "locations": { + "description": "Locations of the SKU.", + "type": "array", + "items": { + "type": "string" + } + }, + "capabilities": { + "description": "Capabilities of the SKU, e.g., is traffic manager enabled?", + "type": "array", + "items": { + "$ref": "#/definitions/Capability" + } + } + } + }, + "SlotSwapStatus": { + "description": "The status of the last successful slot swap operation.", + "type": "object", + "properties": { + "timestampUtc": { + "format": "date-time", + "description": "The time the last successful slot swap completed.", + "type": "string", + "readOnly": true + }, + "sourceSlotName": { + "description": "The source slot of the last swap operation.", + "type": "string", + "readOnly": true + }, + "destinationSlotName": { + "description": "The destination slot of the last swap operation.", + "type": "string", + "readOnly": true + } + } + }, + "SlowRequestsBasedTrigger": { + "description": "Trigger based on request execution time.", + "type": "object", + "properties": { + "timeTaken": { + "description": "Time taken.", + "type": "string" + }, + "path": { + "description": "Request Path.", + "type": "string" + }, + "count": { + "format": "int32", + "description": "Request Count.", + "type": "integer" + }, + "timeInterval": { + "description": "Time interval.", + "type": "string" + } + } + }, + "Snapshot": { + "description": "A snapshot of an app.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "Snapshot resource specific properties", + "properties": { + "time": { + "description": "The time the snapshot was taken.", + "type": "string", + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "Status": { + "description": "Identify the status of the most severe insight generated by the detector.", + "type": "object", + "properties": { + "message": { + "description": "Descriptive message.", + "type": "string" + }, + "statusId": { + "description": "Level of the most severe insight generated by the detector.", + "enum": [ + "Critical", + "Warning", + "Info", + "Success", + "None" + ], + "type": "string", + "x-ms-enum": { + "name": "InsightStatus", + "modelAsString": false + } + } + } + }, + "StatusCodesBasedTrigger": { + "description": "Trigger based on status code.", + "type": "object", + "properties": { + "status": { + "format": "int32", + "description": "HTTP status code.", + "type": "integer" + }, + "subStatus": { + "format": "int32", + "description": "Request Sub Status.", + "type": "integer" + }, + "win32Status": { + "format": "int32", + "description": "Win32 error code.", + "type": "integer" + }, + "count": { + "format": "int32", + "description": "Request Count.", + "type": "integer" + }, + "timeInterval": { + "description": "Time interval.", + "type": "string" + }, + "path": { + "description": "Request Path", + "type": "string" + } + } + }, + "StatusCodesRangeBasedTrigger": { + "description": "Trigger based on range of status codes.", + "type": "object", + "properties": { + "statusCodes": { + "description": "HTTP status code.", + "type": "string" + }, + "path": { + "type": "string" + }, + "count": { + "format": "int32", + "description": "Request Count.", + "type": "integer" + }, + "timeInterval": { + "description": "Time interval.", + "type": "string" + } + } + }, + "StringDictionary": { + "description": "String dictionary resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "Settings.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-ms-client-flatten": true + } + } + }, + "SupportTopic": { + "description": "Defines a unique Support Topic", + "type": "object", + "properties": { + "id": { + "description": "Support Topic Id", + "type": "string", + "readOnly": true + }, + "pesId": { + "description": "Unique resource Id", + "type": "string", + "readOnly": true + } + } + }, + "User": { + "description": "User credentials used for publishing activity.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "User resource specific properties", + "required": [ + "publishingUserName" + ], + "properties": { + "publishingUserName": { + "description": "Username used for publishing.", + "type": "string" + }, + "publishingPassword": { + "format": "password", + "description": "Password used for publishing.", + "type": "string" + }, + "publishingPasswordHash": { + "format": "password", + "description": "Password hash used for publishing.", + "type": "string" + }, + "publishingPasswordHashSalt": { + "format": "password", + "description": "Password hash salt used for publishing.", + "type": "string" + }, + "scmUri": { + "description": "Url of SCM site.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "VirtualApplication": { + "description": "Virtual application in an app.", + "type": "object", + "properties": { + "virtualPath": { + "description": "Virtual path.", + "type": "string" + }, + "physicalPath": { + "description": "Physical path.", + "type": "string" + }, + "preloadEnabled": { + "description": "true if preloading is enabled; otherwise, false.", + "type": "boolean" + }, + "virtualDirectories": { + "description": "Virtual directories for virtual application.", + "type": "array", + "items": { + "$ref": "#/definitions/VirtualDirectory" + } + } + } + }, + "VirtualDirectory": { + "description": "Directory for virtual application.", + "type": "object", + "properties": { + "virtualPath": { + "description": "Path to virtual application.", + "type": "string" + }, + "physicalPath": { + "description": "Physical path.", + "type": "string" + } + } + }, + "VirtualNetworkProfile": { + "description": "Specification for using a Virtual Network.", + "required": [ + "id" + ], + "type": "object", + "properties": { + "id": { + "description": "Resource id of the Virtual Network.", + "type": "string" + }, + "name": { + "description": "Name of the Virtual Network (read-only).", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Resource type of the Virtual Network (read-only).", + "type": "string", + "readOnly": true + }, + "subnet": { + "description": "Subnet within the Virtual Network.", + "type": "string" + } + } + }, + "VnetGateway": { + "description": "The Virtual Network gateway contract. This is used to give the Virtual Network gateway access to the VPN package.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "VnetGateway resource specific properties", + "required": [ + "vpnPackageUri" + ], + "properties": { + "vnetName": { + "description": "The Virtual Network name.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "vpnPackageUri": { + "description": "The URI where the VPN package can be downloaded.", + "type": "string", + "x-ms-mutability": [ + "create", + "update" + ] + } + }, + "x-ms-client-flatten": true + } + } + }, + "VnetInfo": { + "description": "Virtual Network information contract.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "VnetInfo resource specific properties", + "properties": { + "vnetResourceId": { + "description": "The Virtual Network's resource ID.", + "type": "string" + }, + "certThumbprint": { + "description": "The client certificate thumbprint.", + "type": "string", + "readOnly": true + }, + "certBlob": { + "description": "A certificate file (.cer) blob containing the public key of the private key used to authenticate a \nPoint-To-Site VPN connection.", + "type": "string" + }, + "routes": { + "description": "The routes that this Virtual Network connection uses.", + "type": "array", + "items": { + "$ref": "#/definitions/VnetRoute" + }, + "readOnly": true + }, + "resyncRequired": { + "description": "true if a resync is required; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "dnsServers": { + "description": "DNS servers to be used by this Virtual Network. This should be a comma-separated list of IP addresses.", + "type": "string" + }, + "isSwift": { + "description": "Flag that is used to denote if this is VNET injection", + "type": "boolean" + } + }, + "x-ms-client-flatten": true + } + } + }, + "VnetRoute": { + "description": "Virtual Network route contract used to pass routing information for a Virtual Network.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "VnetRoute resource specific properties", + "properties": { + "startAddress": { + "description": "The starting address for this route. This may also include a CIDR notation, in which case the end address must not be specified.", + "type": "string" + }, + "endAddress": { + "description": "The ending address for this route. If the start address is specified in CIDR notation, this must be omitted.", + "type": "string" + }, + "routeType": { + "description": "The type of route this is:\nDEFAULT - By default, every app has routes to the local address ranges specified by RFC1918\nINHERITED - Routes inherited from the real Virtual Network routes\nSTATIC - Static route set on the app only\n\nThese values will be used for syncing an app's routes with those from a Virtual Network.", + "enum": [ + "DEFAULT", + "INHERITED", + "STATIC" + ], + "type": "string", + "x-ms-enum": { + "name": "RouteType", + "modelAsString": true + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "WebAppCollection": { + "description": "Collection of App Service apps.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/Site" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/DeletedWebApps.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/DeletedWebApps.json new file mode 100644 index 000000000000..b77a653f6185 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/DeletedWebApps.json @@ -0,0 +1,207 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-01-01", + "title": "DeletedWebApps API Client" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Web/deletedSites": { + "get": { + "tags": [ + "DeletedWebApps" + ], + "summary": "Get all deleted apps for a subscription.", + "description": "Description for Get all deleted apps for a subscription.", + "operationId": "DeletedWebApps_List", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DeletedWebAppCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Web/locations/{location}/deletedSites": { + "get": { + "tags": [ + "DeletedWebApps" + ], + "summary": "Get all deleted apps for a subscription at location", + "description": "Description for Get all deleted apps for a subscription at location", + "operationId": "DeletedWebApps_ListByLocation", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DeletedWebAppCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List Deleted Web App by Location": { + "$ref": "./examples/ListDeletedWebAppsByLocation.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Web/locations/{location}/deletedSites/{deletedSiteId}": { + "get": { + "tags": [ + "DeletedWebApps" + ], + "summary": "Get deleted app for a subscription at location.", + "description": "Description for Get deleted app for a subscription at location.", + "operationId": "DeletedWebApps_GetDeletedWebAppByLocation", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "deletedSiteId", + "in": "path", + "description": "The numeric ID of the deleted app, e.g. 12345", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DeletedSite" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Deleted Web App by Location": { + "$ref": "./examples/GetDeletedWebAppByLocation.json" + } + } + } + } + }, + "definitions": { + "DeletedWebAppCollection": { + "description": "Collection of deleted apps.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "./CommonDefinitions.json#/definitions/DeletedSite" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Your Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).", + "required": true, + "type": "string" + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "API Version", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/Diagnostics.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/Diagnostics.json new file mode 100644 index 000000000000..fc6b013af3e3 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/Diagnostics.json @@ -0,0 +1,2119 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-01-01", + "title": "Diagnostics API Client" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/detectors": { + "get": { + "tags": [ + "Diagnostics" + ], + "summary": "List Hosting Environment Detector Responses", + "description": "Description for List Hosting Environment Detector Responses", + "operationId": "Diagnostics_ListHostingEnvironmentDetectorResponses", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site Name", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DetectorResponseCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get App Service Environment Detector Responses": { + "$ref": "./examples/Diagnostics_ListHostingEnvironmentDetectorResponses.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/detectors/{detectorName}": { + "get": { + "tags": [ + "Diagnostics" + ], + "summary": "Get Hosting Environment Detector Response", + "description": "Description for Get Hosting Environment Detector Response", + "operationId": "Diagnostics_GetHostingEnvironmentDetectorResponse", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "App Service Environment Name", + "required": true, + "type": "string" + }, + { + "name": "detectorName", + "in": "path", + "description": "Detector Resource Name", + "required": true, + "type": "string" + }, + { + "name": "startTime", + "in": "query", + "description": "Start Time", + "type": "string", + "format": "date-time" + }, + { + "name": "endTime", + "in": "query", + "description": "End Time", + "type": "string", + "format": "date-time" + }, + { + "name": "timeGrain", + "in": "query", + "description": "Time Grain", + "type": "string", + "pattern": "PT[1-9][0-9]+[SMH]" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DetectorResponse" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get App Service Environment Detector Responses": { + "$ref": "./examples/Diagnostics_GetHostingEnvironmentDetectorResponse.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/detectors": { + "get": { + "tags": [ + "Diagnostics" + ], + "summary": "List Site Detector Responses", + "description": "Description for List Site Detector Responses", + "operationId": "Diagnostics_ListSiteDetectorResponses", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "siteName", + "in": "path", + "description": "Site Name", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DetectorResponseCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get App Detector Responses": { + "$ref": "./examples/Diagnostics_ListSiteDetectorResponses.json" + }, + "Get App Slot Detector Responses": { + "$ref": "./examples/Diagnostics_ListSiteDetectorResponsesSlot.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/detectors/{detectorName}": { + "get": { + "tags": [ + "Diagnostics" + ], + "summary": "Get site detector response", + "description": "Description for Get site detector response", + "operationId": "Diagnostics_GetSiteDetectorResponse", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "siteName", + "in": "path", + "description": "Site Name", + "required": true, + "type": "string" + }, + { + "name": "detectorName", + "in": "path", + "description": "Detector Resource Name", + "required": true, + "type": "string" + }, + { + "name": "startTime", + "in": "query", + "description": "Start Time", + "type": "string", + "format": "date-time" + }, + { + "name": "endTime", + "in": "query", + "description": "End Time", + "type": "string", + "format": "date-time" + }, + { + "name": "timeGrain", + "in": "query", + "description": "Time Grain", + "type": "string", + "pattern": "PT[1-9][0-9]+[SMH]" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DetectorResponse" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get App Detector Response": { + "$ref": "./examples/Diagnostics_GetSiteDetectorResponse.json" + }, + "Get App Slot Detector Response": { + "$ref": "./examples/Diagnostics_GetSiteDetectorResponseSlot.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/diagnostics": { + "get": { + "tags": [ + "Diagnostics" + ], + "summary": "Get Diagnostics Categories", + "description": "Description for Get Diagnostics Categories", + "operationId": "Diagnostics_ListSiteDiagnosticCategories", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "siteName", + "in": "path", + "description": "Site Name", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiagnosticCategoryCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List App Diagnostic Categories": { + "$ref": "./examples/Diagnostics_ListSiteDiagnosticCategories.json" + }, + "List App Slot Diagnostic Categories": { + "$ref": "./examples/Diagnostics_ListSiteDiagnosticCategoriesSlot.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/diagnostics/{diagnosticCategory}": { + "get": { + "tags": [ + "Diagnostics" + ], + "summary": "Get Diagnostics Category", + "description": "Description for Get Diagnostics Category", + "operationId": "Diagnostics_GetSiteDiagnosticCategory", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "siteName", + "in": "path", + "description": "Site Name", + "required": true, + "type": "string" + }, + { + "name": "diagnosticCategory", + "in": "path", + "description": "Diagnostic Category", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiagnosticCategory" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get App Diagnostic Category": { + "$ref": "./examples/Diagnostics_GetSiteDiagnosticCategory.json" + }, + "Get App Slot Diagnostic Category": { + "$ref": "./examples/Diagnostics_GetSiteDiagnosticCategorySlot.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/diagnostics/{diagnosticCategory}/analyses": { + "get": { + "tags": [ + "Diagnostics" + ], + "summary": "Get Site Analyses", + "description": "Description for Get Site Analyses", + "operationId": "Diagnostics_ListSiteAnalyses", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "siteName", + "in": "path", + "description": "Site Name", + "required": true, + "type": "string" + }, + { + "name": "diagnosticCategory", + "in": "path", + "description": "Diagnostic Category", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiagnosticAnalysisCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List App Analyses": { + "$ref": "./examples/Diagnostics_ListSiteAnalyses.json" + }, + "List App Slot Analyses": { + "$ref": "./examples/Diagnostics_ListSiteAnalysesSlot.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/diagnostics/{diagnosticCategory}/analyses/{analysisName}": { + "get": { + "tags": [ + "Diagnostics" + ], + "summary": "Get Site Analysis", + "description": "Description for Get Site Analysis", + "operationId": "Diagnostics_GetSiteAnalysis", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "siteName", + "in": "path", + "description": "Site Name", + "required": true, + "type": "string" + }, + { + "name": "diagnosticCategory", + "in": "path", + "description": "Diagnostic Category", + "required": true, + "type": "string" + }, + { + "name": "analysisName", + "in": "path", + "description": "Analysis Name", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AnalysisDefinition" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get App Analysis": { + "$ref": "./examples/Diagnostics_GetSiteAnalysis.json" + }, + "Get App Slot Analysis": { + "$ref": "./examples/Diagnostics_GetSiteAnalysisSlot.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/diagnostics/{diagnosticCategory}/analyses/{analysisName}/execute": { + "post": { + "tags": [ + "Diagnostics" + ], + "summary": "Execute Analysis", + "description": "Description for Execute Analysis", + "operationId": "Diagnostics_ExecuteSiteAnalysis", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "siteName", + "in": "path", + "description": "Site Name", + "required": true, + "type": "string" + }, + { + "name": "diagnosticCategory", + "in": "path", + "description": "Category Name", + "required": true, + "type": "string" + }, + { + "name": "analysisName", + "in": "path", + "description": "Analysis Resource Name", + "required": true, + "type": "string" + }, + { + "name": "startTime", + "in": "query", + "description": "Start Time", + "type": "string", + "format": "date-time" + }, + { + "name": "endTime", + "in": "query", + "description": "End Time", + "type": "string", + "format": "date-time" + }, + { + "name": "timeGrain", + "in": "query", + "description": "Time Grain", + "type": "string", + "pattern": "PT[1-9][0-9]+[SMH]" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiagnosticAnalysis" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Execute site slot analysis": { + "$ref": "./examples/Diagnostics_ExecuteSiteAnalysisSlot.json" + }, + "Execute site analysis": { + "$ref": "./examples/Diagnostics_ExecuteSiteAnalysis.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/diagnostics/{diagnosticCategory}/detectors": { + "get": { + "tags": [ + "Diagnostics" + ], + "summary": "Get Detectors", + "description": "Description for Get Detectors", + "operationId": "Diagnostics_ListSiteDetectors", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "siteName", + "in": "path", + "description": "Site Name", + "required": true, + "type": "string" + }, + { + "name": "diagnosticCategory", + "in": "path", + "description": "Diagnostic Category", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiagnosticDetectorCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List App Detectors": { + "$ref": "./examples/Diagnostics_ListSiteDetectors.json" + }, + "List App Slot Detectors": { + "$ref": "./examples/Diagnostics_ListSiteDetectorsSlot.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/diagnostics/{diagnosticCategory}/detectors/{detectorName}": { + "get": { + "tags": [ + "Diagnostics" + ], + "summary": "Get Detector", + "description": "Description for Get Detector", + "operationId": "Diagnostics_GetSiteDetector", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "siteName", + "in": "path", + "description": "Site Name", + "required": true, + "type": "string" + }, + { + "name": "diagnosticCategory", + "in": "path", + "description": "Diagnostic Category", + "required": true, + "type": "string" + }, + { + "name": "detectorName", + "in": "path", + "description": "Detector Name", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DetectorDefinition" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get App Detector": { + "$ref": "./examples/Diagnostics_GetSiteDetector.json" + }, + "Get App Slot Detector": { + "$ref": "./examples/Diagnostics_GetSiteDetectorSlot.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/diagnostics/{diagnosticCategory}/detectors/{detectorName}/execute": { + "post": { + "tags": [ + "Diagnostics" + ], + "summary": "Execute Detector", + "description": "Description for Execute Detector", + "operationId": "Diagnostics_ExecuteSiteDetector", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "siteName", + "in": "path", + "description": "Site Name", + "required": true, + "type": "string" + }, + { + "name": "detectorName", + "in": "path", + "description": "Detector Resource Name", + "required": true, + "type": "string" + }, + { + "name": "diagnosticCategory", + "in": "path", + "description": "Category Name", + "required": true, + "type": "string" + }, + { + "name": "startTime", + "in": "query", + "description": "Start Time", + "type": "string", + "format": "date-time" + }, + { + "name": "endTime", + "in": "query", + "description": "End Time", + "type": "string", + "format": "date-time" + }, + { + "name": "timeGrain", + "in": "query", + "description": "Time Grain", + "type": "string", + "pattern": "PT[1-9][0-9]+[SMH]" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiagnosticDetectorResponse" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Execute site detector": { + "$ref": "./examples/Diagnostics_ExecuteSiteDetector.json" + }, + "Execute site slot detector": { + "$ref": "./examples/Diagnostics_ExecuteSiteDetectorSlot.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/slots/{slot}/detectors": { + "get": { + "tags": [ + "Diagnostics" + ], + "summary": "List Site Detector Responses", + "description": "Description for List Site Detector Responses", + "operationId": "Diagnostics_ListSiteDetectorResponsesSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "siteName", + "in": "path", + "description": "Site Name", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Slot Name", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DetectorResponseCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get App Detector Responses": { + "$ref": "./examples/Diagnostics_ListSiteDetectorResponses.json" + }, + "Get App Slot Detector Responses": { + "$ref": "./examples/Diagnostics_ListSiteDetectorResponsesSlot.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/slots/{slot}/detectors/{detectorName}": { + "get": { + "tags": [ + "Diagnostics" + ], + "summary": "Get site detector response", + "description": "Description for Get site detector response", + "operationId": "Diagnostics_GetSiteDetectorResponseSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "siteName", + "in": "path", + "description": "Site Name", + "required": true, + "type": "string" + }, + { + "name": "detectorName", + "in": "path", + "description": "Detector Resource Name", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Slot Name", + "required": true, + "type": "string" + }, + { + "name": "startTime", + "in": "query", + "description": "Start Time", + "type": "string", + "format": "date-time" + }, + { + "name": "endTime", + "in": "query", + "description": "End Time", + "type": "string", + "format": "date-time" + }, + { + "name": "timeGrain", + "in": "query", + "description": "Time Grain", + "type": "string", + "pattern": "PT[1-9][0-9]+[SMH]" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DetectorResponse" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get App Detector Response": { + "$ref": "./examples/Diagnostics_GetSiteDetectorResponse.json" + }, + "Get App Slot Detector Response": { + "$ref": "./examples/Diagnostics_GetSiteDetectorResponseSlot.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/slots/{slot}/diagnostics": { + "get": { + "tags": [ + "Diagnostics" + ], + "summary": "Get Diagnostics Categories", + "description": "Description for Get Diagnostics Categories", + "operationId": "Diagnostics_ListSiteDiagnosticCategoriesSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "siteName", + "in": "path", + "description": "Site Name", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Slot Name", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiagnosticCategoryCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List App Diagnostic Categories": { + "$ref": "./examples/Diagnostics_ListSiteDiagnosticCategories.json" + }, + "List App Slot Diagnostic Categories": { + "$ref": "./examples/Diagnostics_ListSiteDiagnosticCategoriesSlot.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/slots/{slot}/diagnostics/{diagnosticCategory}": { + "get": { + "tags": [ + "Diagnostics" + ], + "summary": "Get Diagnostics Category", + "description": "Description for Get Diagnostics Category", + "operationId": "Diagnostics_GetSiteDiagnosticCategorySlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "siteName", + "in": "path", + "description": "Site Name", + "required": true, + "type": "string" + }, + { + "name": "diagnosticCategory", + "in": "path", + "description": "Diagnostic Category", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Slot Name", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiagnosticCategory" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get App Diagnostic Category": { + "$ref": "./examples/Diagnostics_GetSiteDiagnosticCategory.json" + }, + "Get App Slot Diagnostic Category": { + "$ref": "./examples/Diagnostics_GetSiteDiagnosticCategorySlot.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/slots/{slot}/diagnostics/{diagnosticCategory}/analyses": { + "get": { + "tags": [ + "Diagnostics" + ], + "summary": "Get Site Analyses", + "description": "Description for Get Site Analyses", + "operationId": "Diagnostics_ListSiteAnalysesSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "siteName", + "in": "path", + "description": "Site Name", + "required": true, + "type": "string" + }, + { + "name": "diagnosticCategory", + "in": "path", + "description": "Diagnostic Category", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Slot Name", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiagnosticAnalysisCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List App Analyses": { + "$ref": "./examples/Diagnostics_ListSiteAnalyses.json" + }, + "List App Slot Analyses": { + "$ref": "./examples/Diagnostics_ListSiteAnalysesSlot.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/slots/{slot}/diagnostics/{diagnosticCategory}/analyses/{analysisName}": { + "get": { + "tags": [ + "Diagnostics" + ], + "summary": "Get Site Analysis", + "description": "Description for Get Site Analysis", + "operationId": "Diagnostics_GetSiteAnalysisSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "siteName", + "in": "path", + "description": "Site Name", + "required": true, + "type": "string" + }, + { + "name": "diagnosticCategory", + "in": "path", + "description": "Diagnostic Category", + "required": true, + "type": "string" + }, + { + "name": "analysisName", + "in": "path", + "description": "Analysis Name", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Slot - optional", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AnalysisDefinition" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get App Analysis": { + "$ref": "./examples/Diagnostics_GetSiteAnalysis.json" + }, + "Get App Slot Analysis": { + "$ref": "./examples/Diagnostics_GetSiteAnalysisSlot.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/slots/{slot}/diagnostics/{diagnosticCategory}/analyses/{analysisName}/execute": { + "post": { + "tags": [ + "Diagnostics" + ], + "summary": "Execute Analysis", + "description": "Description for Execute Analysis", + "operationId": "Diagnostics_ExecuteSiteAnalysisSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "siteName", + "in": "path", + "description": "Site Name", + "required": true, + "type": "string" + }, + { + "name": "diagnosticCategory", + "in": "path", + "description": "Category Name", + "required": true, + "type": "string" + }, + { + "name": "analysisName", + "in": "path", + "description": "Analysis Resource Name", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Slot Name", + "required": true, + "type": "string" + }, + { + "name": "startTime", + "in": "query", + "description": "Start Time", + "type": "string", + "format": "date-time" + }, + { + "name": "endTime", + "in": "query", + "description": "End Time", + "type": "string", + "format": "date-time" + }, + { + "name": "timeGrain", + "in": "query", + "description": "Time Grain", + "type": "string", + "pattern": "PT[1-9][0-9]+[SMH]" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiagnosticAnalysis" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Execute site slot analysis": { + "$ref": "./examples/Diagnostics_ExecuteSiteAnalysisSlot.json" + }, + "Execute site analysis": { + "$ref": "./examples/Diagnostics_ExecuteSiteAnalysis.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/slots/{slot}/diagnostics/{diagnosticCategory}/detectors": { + "get": { + "tags": [ + "Diagnostics" + ], + "summary": "Get Detectors", + "description": "Description for Get Detectors", + "operationId": "Diagnostics_ListSiteDetectorsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "siteName", + "in": "path", + "description": "Site Name", + "required": true, + "type": "string" + }, + { + "name": "diagnosticCategory", + "in": "path", + "description": "Diagnostic Category", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Slot Name", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiagnosticDetectorCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List App Detectors": { + "$ref": "./examples/Diagnostics_ListSiteDetectors.json" + }, + "List App Slot Detectors": { + "$ref": "./examples/Diagnostics_ListSiteDetectorsSlot.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/slots/{slot}/diagnostics/{diagnosticCategory}/detectors/{detectorName}": { + "get": { + "tags": [ + "Diagnostics" + ], + "summary": "Get Detector", + "description": "Description for Get Detector", + "operationId": "Diagnostics_GetSiteDetectorSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "siteName", + "in": "path", + "description": "Site Name", + "required": true, + "type": "string" + }, + { + "name": "diagnosticCategory", + "in": "path", + "description": "Diagnostic Category", + "required": true, + "type": "string" + }, + { + "name": "detectorName", + "in": "path", + "description": "Detector Name", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Slot Name", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DetectorDefinition" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get App Detector": { + "$ref": "./examples/Diagnostics_GetSiteDetector.json" + }, + "Get App Slot Detector": { + "$ref": "./examples/Diagnostics_GetSiteDetectorSlot.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/slots/{slot}/diagnostics/{diagnosticCategory}/detectors/{detectorName}/execute": { + "post": { + "tags": [ + "Diagnostics" + ], + "summary": "Execute Detector", + "description": "Description for Execute Detector", + "operationId": "Diagnostics_ExecuteSiteDetectorSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "siteName", + "in": "path", + "description": "Site Name", + "required": true, + "type": "string" + }, + { + "name": "detectorName", + "in": "path", + "description": "Detector Resource Name", + "required": true, + "type": "string" + }, + { + "name": "diagnosticCategory", + "in": "path", + "description": "Category Name", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Slot Name", + "required": true, + "type": "string" + }, + { + "name": "startTime", + "in": "query", + "description": "Start Time", + "type": "string", + "format": "date-time" + }, + { + "name": "endTime", + "in": "query", + "description": "End Time", + "type": "string", + "format": "date-time" + }, + { + "name": "timeGrain", + "in": "query", + "description": "Time Grain", + "type": "string", + "pattern": "PT[1-9][0-9]+[SMH]" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiagnosticDetectorResponse" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Execute site detector": { + "$ref": "./examples/Diagnostics_ExecuteSiteDetector.json" + }, + "Execute site slot detector": { + "$ref": "./examples/Diagnostics_ExecuteSiteDetectorSlot.json" + } + } + } + } + }, + "definitions": { + "AbnormalTimePeriod": { + "description": "Class representing Abnormal Time Period identified in diagnosis", + "type": "object", + "properties": { + "startTime": { + "format": "date-time", + "description": "Start time of the downtime", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "End time of the downtime", + "type": "string" + }, + "events": { + "description": "List of Possible Cause of downtime", + "type": "array", + "items": { + "$ref": "#/definitions/DetectorAbnormalTimePeriod" + } + }, + "solutions": { + "description": "List of proposed solutions", + "type": "array", + "items": { + "$ref": "#/definitions/Solution" + } + } + } + }, + "AnalysisData": { + "description": "Class Representing Detector Evidence used for analysis", + "type": "object", + "properties": { + "source": { + "description": "Name of the Detector", + "type": "string" + }, + "detectorDefinition": { + "$ref": "#/definitions/DetectorDefinition", + "description": "Detector Definition" + }, + "metrics": { + "description": "Source Metrics", + "type": "array", + "items": { + "$ref": "#/definitions/DiagnosticMetricSet" + } + }, + "data": { + "description": "Additional Source Data", + "type": "array", + "items": { + "type": "array", + "items": { + "$ref": "./CommonDefinitions.json#/definitions/NameValuePair" + } + } + }, + "detectorMetaData": { + "$ref": "#/definitions/ResponseMetaData", + "description": "Detector Meta Data" + } + } + }, + "AnalysisDefinition": { + "description": "Definition of Analysis", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "AnalysisDefinition resource specific properties", + "properties": { + "description": { + "description": "Description of the Analysis", + "type": "string", + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "DataSource": { + "description": "Class representing data source used by the detectors", + "type": "object", + "properties": { + "instructions": { + "description": "Instructions if any for the data source", + "type": "array", + "items": { + "type": "string" + } + }, + "dataSourceUri": { + "description": "Datasource Uri Links", + "type": "array", + "items": { + "$ref": "./CommonDefinitions.json#/definitions/NameValuePair" + } + } + } + }, + "DetectorAbnormalTimePeriod": { + "description": "Class representing Abnormal Time Period detected.", + "type": "object", + "properties": { + "startTime": { + "format": "date-time", + "description": "Start time of the correlated event", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "End time of the correlated event", + "type": "string" + }, + "message": { + "description": "Message describing the event", + "type": "string" + }, + "source": { + "description": "Represents the name of the Detector", + "type": "string" + }, + "priority": { + "format": "double", + "description": "Represents the rank of the Detector", + "type": "number" + }, + "metaData": { + "description": "Downtime metadata", + "type": "array", + "items": { + "type": "array", + "items": { + "$ref": "./CommonDefinitions.json#/definitions/NameValuePair" + } + } + }, + "type": { + "description": "Represents the type of the Detector", + "enum": [ + "ServiceIncident", + "AppDeployment", + "AppCrash", + "RuntimeIssueDetected", + "AseDeployment", + "UserIssue", + "PlatformIssue", + "Other" + ], + "type": "string", + "x-ms-enum": { + "name": "IssueType", + "modelAsString": false + } + }, + "solutions": { + "description": "List of proposed solutions", + "type": "array", + "items": { + "$ref": "#/definitions/Solution" + } + } + } + }, + "DetectorDefinition": { + "description": "Class representing detector definition", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "DetectorDefinition resource specific properties", + "properties": { + "displayName": { + "description": "Display name of the detector", + "type": "string", + "readOnly": true + }, + "description": { + "description": "Description of the detector", + "type": "string", + "readOnly": true + }, + "rank": { + "format": "double", + "description": "Detector Rank", + "type": "number", + "readOnly": true + }, + "isEnabled": { + "description": "Flag representing whether detector is enabled or not.", + "type": "boolean", + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "DiagnosticAnalysis": { + "description": "Class representing a diagnostic analysis done on an application", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "DiagnosticAnalysis resource specific properties", + "properties": { + "startTime": { + "format": "date-time", + "description": "Start time of the period", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "End time of the period", + "type": "string" + }, + "abnormalTimePeriods": { + "description": "List of time periods.", + "type": "array", + "items": { + "$ref": "#/definitions/AbnormalTimePeriod" + } + }, + "payload": { + "description": "Data by each detector", + "type": "array", + "items": { + "$ref": "#/definitions/AnalysisData" + } + }, + "nonCorrelatedDetectors": { + "description": "Data by each detector for detectors that did not corelate", + "type": "array", + "items": { + "$ref": "#/definitions/DetectorDefinition" + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "DiagnosticAnalysisCollection": { + "description": "Collection of Diagnostic Analyses", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/AnalysisDefinition" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "DiagnosticCategory": { + "description": "Class representing detector definition", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "DiagnosticCategory resource specific properties", + "properties": { + "description": { + "description": "Description of the diagnostic category", + "type": "string", + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "DiagnosticCategoryCollection": { + "description": "Collection of Diagnostic Categories", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/DiagnosticCategory" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "DiagnosticDetectorCollection": { + "description": "Collection of Diagnostic Detectors", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/DetectorDefinition" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "DiagnosticDetectorResponse": { + "description": "Class representing Response from Diagnostic Detectors", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "DiagnosticDetectorResponse resource specific properties", + "properties": { + "startTime": { + "format": "date-time", + "description": "Start time of the period", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "End time of the period", + "type": "string" + }, + "issueDetected": { + "description": "Flag representing Issue was detected.", + "type": "boolean" + }, + "detectorDefinition": { + "$ref": "#/definitions/DetectorDefinition", + "description": "Detector's definition" + }, + "metrics": { + "description": "Metrics provided by the detector", + "type": "array", + "items": { + "$ref": "#/definitions/DiagnosticMetricSet" + } + }, + "abnormalTimePeriods": { + "description": "List of Correlated events found by the detector", + "type": "array", + "items": { + "$ref": "#/definitions/DetectorAbnormalTimePeriod" + } + }, + "data": { + "description": "Additional Data that detector wants to send.", + "type": "array", + "items": { + "type": "array", + "items": { + "$ref": "./CommonDefinitions.json#/definitions/NameValuePair" + } + } + }, + "responseMetaData": { + "$ref": "#/definitions/ResponseMetaData", + "description": "Meta Data" + } + }, + "x-ms-client-flatten": true + } + } + }, + "DiagnosticMetricSample": { + "description": "Class representing Diagnostic Metric", + "type": "object", + "properties": { + "timestamp": { + "format": "date-time", + "description": "Time at which metric is measured", + "type": "string" + }, + "roleInstance": { + "description": "Role Instance. Null if this counter is not per instance \nThis is returned and should be whichever instance name we desire to be returned\ni.e. CPU and Memory return RDWORKERNAME (LargeDed..._IN_0) \nwhere RDWORKERNAME is Machine name below and RoleInstance name in parenthesis", + "type": "string" + }, + "total": { + "format": "double", + "description": "Total value of the metric. If multiple measurements are made this will have sum of all.", + "type": "number" + }, + "maximum": { + "format": "double", + "description": "Maximum of the metric sampled during the time period", + "type": "number" + }, + "minimum": { + "format": "double", + "description": "Minimum of the metric sampled during the time period", + "type": "number" + }, + "isAggregated": { + "description": "Whether the values are aggregates across all workers or not", + "type": "boolean" + } + } + }, + "DiagnosticMetricSet": { + "description": "Class representing Diagnostic Metric information", + "type": "object", + "properties": { + "name": { + "description": "Name of the metric", + "type": "string" + }, + "unit": { + "description": "Metric's unit", + "type": "string" + }, + "startTime": { + "format": "date-time", + "description": "Start time of the period", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "End time of the period", + "type": "string" + }, + "timeGrain": { + "description": "Presented time grain. Supported grains at the moment are PT1M, PT1H, P1D", + "type": "string" + }, + "values": { + "description": "Collection of metric values for the selected period based on the {Microsoft.Web.Hosting.Administration.DiagnosticMetricSet.TimeGrain}", + "type": "array", + "items": { + "$ref": "#/definitions/DiagnosticMetricSample" + } + } + } + }, + "ResponseMetaData": { + "type": "object", + "properties": { + "dataSource": { + "$ref": "#/definitions/DataSource", + "description": "Source of the Data" + } + } + }, + "Solution": { + "description": "Class Representing Solution for problems detected.", + "type": "object", + "properties": { + "id": { + "format": "double", + "description": "Solution Id.", + "type": "number" + }, + "displayName": { + "description": "Display Name of the solution", + "type": "string" + }, + "order": { + "format": "double", + "description": "Order of the solution.", + "type": "number" + }, + "description": { + "description": "Description of the solution", + "type": "string" + }, + "type": { + "description": "Type of Solution", + "enum": [ + "QuickSolution", + "DeepInvestigation", + "BestPractices" + ], + "type": "string", + "x-ms-enum": { + "name": "SolutionType", + "modelAsString": false + } + }, + "data": { + "description": "Solution Data.", + "type": "array", + "items": { + "type": "array", + "items": { + "$ref": "./CommonDefinitions.json#/definitions/NameValuePair" + } + } + }, + "metadata": { + "description": "Solution Metadata.", + "type": "array", + "items": { + "type": "array", + "items": { + "$ref": "./CommonDefinitions.json#/definitions/NameValuePair" + } + } + } + } + } + }, + "parameters": { + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Your Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).", + "required": true, + "type": "string" + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "Name of the resource group to which the resource belongs.", + "required": true, + "type": "string", + "maxLength": 90, + "minLength": 1, + "pattern": "^[-\\w\\._\\(\\)]+[^\\.]$", + "x-ms-parameter-location": "method" + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "API Version", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/Global.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/Global.json new file mode 100644 index 000000000000..a91f2592c5c4 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/Global.json @@ -0,0 +1,193 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-01-01", + "title": "Global API Client" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Web/deletedSites/{deletedSiteId}": { + "get": { + "tags": [ + "Global" + ], + "summary": "Get deleted app for a subscription.", + "description": "Description for Get deleted app for a subscription.", + "operationId": "Global_GetDeletedWebApp", + "parameters": [ + { + "name": "deletedSiteId", + "in": "path", + "description": "The numeric ID of the deleted app, e.g. 12345", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DeletedSite" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Deleted Web App": { + "$ref": "./examples/GetDeletedWebApp.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Web/deletedSites/{deletedSiteId}/snapshots": { + "get": { + "tags": [ + "Global" + ], + "summary": "Get all deleted apps for a subscription.", + "description": "Description for Get all deleted apps for a subscription.", + "operationId": "Global_GetDeletedWebAppSnapshots", + "parameters": [ + { + "name": "deletedSiteId", + "in": "path", + "description": "The numeric ID of the deleted app, e.g. 12345", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "./CommonDefinitions.json#/definitions/Snapshot" + } + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Deleted Web App Snapshots": { + "$ref": "./examples/GetDeletedWebAppSnapshots.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Web/locations/{location}/operations/{operationId}": { + "get": { + "tags": [ + "Global" + ], + "summary": "Gets an operation in a subscription and given region", + "description": "Description for Gets an operation in a subscription and given region", + "operationId": "Global_GetSubscriptionOperationWithAsyncResponse", + "parameters": [ + { + "name": "location", + "in": "path", + "description": "Location name", + "required": true, + "type": "string" + }, + { + "name": "operationId", + "in": "path", + "description": "Operation Id", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Gets an operation in a subscription and given region": { + "$ref": "./examples/GetSubscriptionOperationWithAsyncResponse.json" + } + } + } + } + }, + "definitions": {}, + "parameters": { + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Your Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).", + "required": true, + "type": "string" + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "API Version", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/KubeEnvironments.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/KubeEnvironments.json new file mode 100644 index 000000000000..f495e8a5b615 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/KubeEnvironments.json @@ -0,0 +1,650 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-01-01", + "title": "KubeEnvironments API Client" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Web/kubeEnvironments": { + "get": { + "tags": [ + "KubeEnvironments" + ], + "summary": "Get all Kubernetes Environments for a subscription.", + "description": "Description for Get all Kubernetes Environments for a subscription.", + "operationId": "KubeEnvironments_ListBySubscription", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/KubeEnvironmentCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List kube environments by subscription": { + "$ref": "./examples/KubeEnvironments_ListBySubscription.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/kubeEnvironments": { + "get": { + "tags": [ + "KubeEnvironments" + ], + "summary": "Get all the Kubernetes Environments in a resource group.", + "description": "Description for Get all the Kubernetes Environments in a resource group.", + "operationId": "KubeEnvironments_ListByResourceGroup", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/KubeEnvironmentCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List kube environments by resource group": { + "$ref": "./examples/KubeEnvironments_ListByResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/kubeEnvironments/{name}": { + "get": { + "tags": [ + "KubeEnvironments" + ], + "summary": "Get the properties of a Kubernetes Environment.", + "description": "Description for Get the properties of a Kubernetes Environment.", + "operationId": "KubeEnvironments_Get", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the Kubernetes Environment.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/KubeEnvironment" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get kube environments by name": { + "$ref": "./examples/KubeEnvironments_Get.json" + } + } + }, + "put": { + "tags": [ + "KubeEnvironments" + ], + "summary": "Creates or updates a Kubernetes Environment.", + "description": "Description for Creates or updates a Kubernetes Environment.", + "operationId": "KubeEnvironments_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the Kubernetes Environment.", + "required": true, + "type": "string" + }, + { + "name": "kubeEnvironmentEnvelope", + "in": "body", + "description": "Configuration details of the Kubernetes Environment.", + "required": true, + "schema": { + "$ref": "#/definitions/KubeEnvironment" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/KubeEnvironment" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/KubeEnvironment" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create kube environments": { + "$ref": "./examples/KubeEnvironments_CreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "KubeEnvironments" + ], + "summary": "Delete a Kubernetes Environment.", + "description": "Description for Delete a Kubernetes Environment.", + "operationId": "KubeEnvironments_Delete", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the Kubernetes Environment.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Delete operation completed" + }, + "202": { + "description": "Delete operation is in progress" + }, + "204": { + "description": "Kubernetes Environment does not exist" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete kube environment by name": { + "$ref": "./examples/KubeEnvironments_Delete.json" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "KubeEnvironments" + ], + "summary": "Creates or updates a Kubernetes Environment.", + "description": "Description for Creates or updates a Kubernetes Environment.", + "operationId": "KubeEnvironments_Update", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the Kubernetes Environment.", + "required": true, + "type": "string" + }, + { + "name": "kubeEnvironmentEnvelope", + "in": "body", + "description": "Configuration details of the Kubernetes Environment.", + "required": true, + "schema": { + "$ref": "#/definitions/KubeEnvironmentPatchResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/KubeEnvironment" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/KubeEnvironment" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Update kube environments": { + "$ref": "./examples/KubeEnvironments_Update.json" + } + } + } + } + }, + "definitions": { + "AppLogsConfiguration": { + "type": "object", + "properties": { + "destination": { + "type": "string" + }, + "logAnalyticsConfiguration": { + "$ref": "#/definitions/LogAnalyticsConfiguration" + } + } + }, + "ArcConfiguration": { + "type": "object", + "properties": { + "artifactsStorageType": { + "enum": [ + "LocalNode", + "NetworkFileSystem" + ], + "type": "string", + "x-ms-enum": { + "name": "StorageType", + "modelAsString": false + }, + "x-ms-mutability": [ + "create", + "read" + ] + }, + "artifactStorageClassName": { + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "artifactStorageMountPath": { + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "artifactStorageNodeName": { + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "artifactStorageAccessMode": { + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "frontEndServiceConfiguration": { + "$ref": "#/definitions/FrontEndConfiguration" + }, + "kubeConfig": { + "type": "string", + "x-ms-mutability": [ + "create", + "update" + ], + "x-ms-secret": true + } + } + }, + "FrontEndConfiguration": { + "type": "object", + "properties": { + "kind": { + "enum": [ + "NodePort", + "LoadBalancer" + ], + "type": "string", + "x-ms-enum": { + "name": "FrontEndServiceType", + "modelAsString": false + } + } + } + }, + "KubeEnvironment": { + "description": "A Kubernetes cluster specialized for web workloads by Azure App Service", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "KubeEnvironment resource specific properties", + "properties": { + "provisioningState": { + "description": "Provisioning state of the Kubernetes Environment.", + "enum": [ + "Succeeded", + "Failed", + "Canceled", + "Waiting", + "InitializationInProgress", + "InfrastructureSetupInProgress", + "InfrastructureSetupComplete", + "ScheduledForDelete", + "UpgradeRequested", + "UpgradeFailed" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "KubeEnvironmentProvisioningState", + "modelAsString": false + } + }, + "deploymentErrors": { + "description": "Any errors that occurred during deployment or deployment validation", + "type": "string", + "readOnly": true + }, + "internalLoadBalancerEnabled": { + "description": "Only visible within Vnet/Subnet", + "type": "boolean", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "defaultDomain": { + "description": "Default Domain Name for the cluster", + "type": "string", + "readOnly": true + }, + "staticIp": { + "description": "Static IP of the KubeEnvironment", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "arcConfiguration": { + "$ref": "#/definitions/ArcConfiguration", + "description": "Cluster configuration which determines the ARC cluster\ncomponents types. Eg: Choosing between BuildService kind,\nFrontEnd Service ArtifactsStorageType etc." + }, + "appLogsConfiguration": { + "$ref": "#/definitions/AppLogsConfiguration", + "description": "Cluster configuration which enables the log daemon to export\napp logs to a destination. Currently only \"log-analytics\" is\nsupported" + }, + "aksResourceID": { + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + } + }, + "x-ms-client-flatten": true + }, + "extendedLocation": { + "$ref": "./CommonDefinitions.json#/definitions/ExtendedLocation" + } + } + }, + "KubeEnvironmentCollection": { + "description": "Collection of Kubernetes Environments", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/KubeEnvironment" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "KubeEnvironmentPatchResource": { + "description": "ARM resource for a KubeEnvironment when patching", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "KubeEnvironmentPatchResource resource specific properties", + "properties": { + "provisioningState": { + "description": "Provisioning state of the Kubernetes Environment.", + "enum": [ + "Succeeded", + "Failed", + "Canceled", + "Waiting", + "InitializationInProgress", + "InfrastructureSetupInProgress", + "InfrastructureSetupComplete", + "ScheduledForDelete", + "UpgradeRequested", + "UpgradeFailed" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "KubeEnvironmentProvisioningState", + "modelAsString": false + } + }, + "deploymentErrors": { + "description": "Any errors that occurred during deployment or deployment validation", + "type": "string", + "readOnly": true + }, + "internalLoadBalancerEnabled": { + "description": "Only visible within Vnet/Subnet", + "type": "boolean", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "defaultDomain": { + "description": "Default Domain Name for the cluster", + "type": "string", + "readOnly": true + }, + "staticIp": { + "description": "Static IP of the KubeEnvironment", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "arcConfiguration": { + "$ref": "#/definitions/ArcConfiguration", + "description": "Cluster configuration which determines the ARC cluster\ncomponents types. Eg: Choosing between BuildService kind,\nFrontEnd Service ArtifactsStorageType etc." + }, + "appLogsConfiguration": { + "$ref": "#/definitions/AppLogsConfiguration", + "description": "Cluster configuration which enables the log daemon to export\napp logs to a destination. Currently only \"log-analytics\" is\nsupported" + }, + "aksResourceID": { + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + } + }, + "x-ms-client-flatten": true + } + } + }, + "LogAnalyticsConfiguration": { + "type": "object", + "properties": { + "customerId": { + "type": "string" + }, + "sharedKey": { + "type": "string", + "x-ms-mutability": [ + "create", + "update" + ], + "x-ms-secret": true + } + } + } + }, + "parameters": { + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Your Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).", + "required": true, + "type": "string" + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "Name of the resource group to which the resource belongs.", + "required": true, + "type": "string", + "maxLength": 90, + "minLength": 1, + "pattern": "^[-\\w\\._\\(\\)]+[^\\.]$", + "x-ms-parameter-location": "method" + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "API Version", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/Provider.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/Provider.json new file mode 100644 index 000000000000..c925bd288484 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/Provider.json @@ -0,0 +1,1114 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-01-01", + "title": "Provider API Client" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/providers/Microsoft.Web/availableStacks": { + "get": { + "tags": [ + "Provider" + ], + "summary": "Get available application frameworks and their versions", + "description": "Description for Get available application frameworks and their versions", + "operationId": "Provider_GetAvailableStacks", + "parameters": [ + { + "name": "osTypeSelected", + "in": "query", + "type": "string", + "enum": [ + "Windows", + "Linux", + "WindowsFunctions", + "LinuxFunctions", + "All" + ] + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ApplicationStackCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Web/functionAppStacks": { + "get": { + "tags": [ + "Provider" + ], + "summary": "Get available Function app frameworks and their versions", + "description": "Description for Get available Function app frameworks and their versions", + "operationId": "Provider_GetFunctionAppStacks", + "parameters": [ + { + "name": "stackOsType", + "in": "query", + "description": "Stack OS Type", + "type": "string", + "enum": [ + "Windows", + "Linux", + "All" + ] + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/FunctionAppStackCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Function App Stacks": { + "$ref": "./examples/GetFunctionAppStacks.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Web/locations/{location}/functionAppStacks": { + "get": { + "tags": [ + "Provider" + ], + "summary": "Get available Function app frameworks and their versions for location", + "description": "Description for Get available Function app frameworks and their versions for location", + "operationId": "Provider_GetFunctionAppStacksForLocation", + "parameters": [ + { + "name": "location", + "in": "path", + "description": "Function App stack location.", + "required": true, + "type": "string" + }, + { + "name": "stackOsType", + "in": "query", + "description": "Stack OS Type", + "type": "string", + "enum": [ + "Windows", + "Linux", + "All" + ] + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/FunctionAppStackCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Locations Function App Stacks": { + "$ref": "./examples/GetFunctionAppStacksForLocation.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Web/locations/{location}/webAppStacks": { + "get": { + "tags": [ + "Provider" + ], + "summary": "Get available Web app frameworks and their versions for location", + "description": "Description for Get available Web app frameworks and their versions for location", + "operationId": "Provider_GetWebAppStacksForLocation", + "parameters": [ + { + "name": "location", + "in": "path", + "description": "Web App stack location.", + "required": true, + "type": "string" + }, + { + "name": "stackOsType", + "in": "query", + "description": "Stack OS Type", + "type": "string", + "enum": [ + "Windows", + "Linux", + "All" + ] + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/WebAppStackCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Locations Web App Stacks": { + "$ref": "./examples/GetWebAppStacksForLocation.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Web/operations": { + "get": { + "tags": [ + "Provider" + ], + "summary": "Gets all available operations for the Microsoft.Web resource provider. Also exposes resource metric definitions", + "description": "Description for Gets all available operations for the Microsoft.Web resource provider. Also exposes resource metric definitions", + "operationId": "Provider_ListOperations", + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/CsmOperationCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List operations": { + "$ref": "./examples/ListOperations.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Web/webAppStacks": { + "get": { + "tags": [ + "Provider" + ], + "summary": "Get available Web app frameworks and their versions", + "description": "Description for Get available Web app frameworks and their versions", + "operationId": "Provider_GetWebAppStacks", + "parameters": [ + { + "name": "stackOsType", + "in": "query", + "description": "Stack OS Type", + "type": "string", + "enum": [ + "Windows", + "Linux", + "All" + ] + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/WebAppStackCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Web App Stacks": { + "$ref": "./examples/GetWebAppStacks.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Web/availableStacks": { + "get": { + "tags": [ + "Provider" + ], + "summary": "Get available application frameworks and their versions", + "description": "Description for Get available application frameworks and their versions", + "operationId": "Provider_GetAvailableStacksOnPrem", + "parameters": [ + { + "name": "osTypeSelected", + "in": "query", + "type": "string", + "enum": [ + "Windows", + "Linux", + "WindowsFunctions", + "LinuxFunctions", + "All" + ] + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ApplicationStackCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "AppInsightsWebAppStackSettings": { + "description": "App Insights Web App stack settings.", + "type": "object", + "properties": { + "isSupported": { + "description": "true if remote Application Insights is supported for the stack; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "isDefaultOff": { + "description": "true if Application Insights is disabled by default for the stack; otherwise, false.", + "type": "boolean", + "readOnly": true + } + } + }, + "ApplicationStack": { + "description": "Application stack.", + "type": "object", + "properties": { + "name": { + "description": "Application stack name.", + "type": "string" + }, + "display": { + "description": "Application stack display name.", + "type": "string" + }, + "dependency": { + "description": "Application stack dependency.", + "type": "string" + }, + "majorVersions": { + "description": "List of major versions available.", + "type": "array", + "items": { + "$ref": "#/definitions/StackMajorVersion" + } + }, + "frameworks": { + "description": "List of frameworks associated with application stack.", + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationStack" + } + }, + "isDeprecated": { + "description": "true if this is the stack is deprecated; otherwise, false.", + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationStack" + } + } + } + }, + "ApplicationStackCollection": { + "description": "Collection of Application Stacks", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationStackResource" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "ApplicationStackResource": { + "description": "ARM resource for a ApplicationStack.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ApplicationStack", + "description": "Core resource properties", + "x-ms-client-flatten": true + } + } + }, + "FunctionAppMajorVersion": { + "description": "Function App stack major version.", + "type": "object", + "properties": { + "displayText": { + "description": "Function App stack major version (display only).", + "type": "string", + "readOnly": true + }, + "value": { + "description": "Function App stack major version name.", + "type": "string", + "readOnly": true + }, + "minorVersions": { + "description": "Minor versions associated with the major version.", + "type": "array", + "items": { + "$ref": "#/definitions/FunctionAppMinorVersion" + }, + "readOnly": true + } + } + }, + "FunctionAppMinorVersion": { + "description": "Function App stack minor version.", + "type": "object", + "properties": { + "displayText": { + "description": "Function App stack (display only).", + "type": "string", + "readOnly": true + }, + "value": { + "description": "Function App stack name.", + "type": "string", + "readOnly": true + }, + "stackSettings": { + "$ref": "#/definitions/FunctionAppRuntimes", + "description": "Settings associated with the minor version.", + "readOnly": true + } + } + }, + "FunctionAppRuntimeSettings": { + "description": "Function App runtime settings.", + "type": "object", + "properties": { + "runtimeVersion": { + "description": "Function App stack minor version (runtime only).", + "type": "string", + "readOnly": true + }, + "remoteDebuggingSupported": { + "description": "true if remote debugging is supported for the stack; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "appInsightsSettings": { + "$ref": "#/definitions/AppInsightsWebAppStackSettings", + "description": "Application Insights settings associated with the minor version.", + "readOnly": true + }, + "gitHubActionSettings": { + "$ref": "#/definitions/GitHubActionWebAppStackSettings", + "description": "GitHub Actions settings associated with the minor version.", + "readOnly": true + }, + "appSettingsDictionary": { + "description": "Application settings associated with the minor version.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "readOnly": true + }, + "siteConfigPropertiesDictionary": { + "$ref": "#/definitions/SiteConfigPropertiesDictionary", + "description": "Configuration settings associated with the minor version.", + "readOnly": true + }, + "supportedFunctionsExtensionVersions": { + "description": "List of supported Functions extension versions.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "isPreview": { + "description": "true if the stack is in preview; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "isDeprecated": { + "description": "true if the stack is deprecated; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "isHidden": { + "description": "true if the stack should be hidden; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "endOfLifeDate": { + "format": "date-time", + "description": "End-of-life date for the minor version.", + "type": "string", + "readOnly": true + }, + "isAutoUpdate": { + "description": "true if the stack version is auto-updated; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "isEarlyAccess": { + "description": "true if the minor version is early-access; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "isDefault": { + "description": "true if the minor version the default; otherwise, false.", + "type": "boolean", + "readOnly": true + } + } + }, + "FunctionAppRuntimes": { + "description": "Function App stack runtimes.", + "type": "object", + "properties": { + "linuxRuntimeSettings": { + "$ref": "#/definitions/FunctionAppRuntimeSettings", + "description": "Linux-specific settings associated with the minor version.", + "readOnly": true + }, + "windowsRuntimeSettings": { + "$ref": "#/definitions/FunctionAppRuntimeSettings", + "description": "Windows-specific settings associated with the minor version.", + "readOnly": true + } + } + }, + "FunctionAppStack": { + "description": "Function App Stack.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "location": { + "description": "Function App stack location.", + "type": "string", + "readOnly": true + }, + "properties": { + "description": "FunctionAppStack resource specific properties", + "properties": { + "displayText": { + "description": "Function App stack (display only).", + "type": "string", + "readOnly": true + }, + "value": { + "description": "Function App stack name.", + "type": "string", + "readOnly": true + }, + "majorVersions": { + "description": "List of major versions available.", + "type": "array", + "items": { + "$ref": "#/definitions/FunctionAppMajorVersion" + }, + "readOnly": true + }, + "preferredOs": { + "description": "Function App stack preferred OS.", + "enum": [ + "Windows", + "Linux" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "StackPreferredOs", + "modelAsString": false + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "FunctionAppStackCollection": { + "description": "Collection of Function app Stacks", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/FunctionAppStack" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "GitHubActionWebAppStackSettings": { + "description": "GitHub Actions Web App stack settings.", + "type": "object", + "properties": { + "isSupported": { + "description": "true if GitHub Actions is supported for the stack; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "supportedVersion": { + "description": "The minor version that is supported for GitHub Actions.", + "type": "string", + "readOnly": true + } + } + }, + "LinuxJavaContainerSettings": { + "description": "Linux Java Container settings.", + "type": "object", + "properties": { + "java11Runtime": { + "description": "Java 11 version (runtime only).", + "type": "string", + "readOnly": true + }, + "java8Runtime": { + "description": "Java 8 version (runtime only).", + "type": "string", + "readOnly": true + }, + "isPreview": { + "description": "true if the stack is in preview; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "isDeprecated": { + "description": "true if the stack is deprecated; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "isHidden": { + "description": "true if the stack should be hidden; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "endOfLifeDate": { + "format": "date-time", + "description": "End-of-life date for the minor version.", + "type": "string", + "readOnly": true + }, + "isAutoUpdate": { + "description": "true if the stack version is auto-updated; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "isEarlyAccess": { + "description": "true if the minor version is early-access; otherwise, false.", + "type": "boolean", + "readOnly": true + } + } + }, + "SiteConfigPropertiesDictionary": { + "description": "Site config properties dictionary.", + "type": "object", + "properties": { + "use32BitWorkerProcess": { + "description": "true if use32BitWorkerProcess should be set to true for the stack; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "linuxFxVersion": { + "description": "LinuxFxVersion configuration setting.", + "type": "string", + "readOnly": true + }, + "javaVersion": { + "description": "JavaVersion configuration setting.", + "type": "string", + "readOnly": true + }, + "powerShellVersion": { + "description": "PowerShellVersion configuration setting.", + "type": "string", + "readOnly": true + } + } + }, + "StackMajorVersion": { + "description": "Application stack major version.", + "type": "object", + "properties": { + "displayVersion": { + "description": "Application stack major version (display only).", + "type": "string" + }, + "runtimeVersion": { + "description": "Application stack major version (runtime only).", + "type": "string" + }, + "isDefault": { + "description": "true if this is the default major version; otherwise, false.", + "type": "boolean" + }, + "minorVersions": { + "description": "Minor versions associated with the major version.", + "type": "array", + "items": { + "$ref": "#/definitions/StackMinorVersion" + } + }, + "applicationInsights": { + "description": "true if this supports Application Insights; otherwise, false.", + "type": "boolean" + }, + "isPreview": { + "description": "true if this stack is in Preview, otherwise false.", + "type": "boolean" + }, + "isDeprecated": { + "description": "true if this stack has been deprecated, otherwise false.", + "type": "boolean" + }, + "isHidden": { + "description": "true if this stack should be hidden for new customers on portal, otherwise false.", + "type": "boolean" + }, + "appSettingsDictionary": { + "description": "\n \n\n Example: All the function apps need AppSetting: \"FUNCTIONS_WORKER_RUNTIME\" to be set stack name", + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "siteConfigPropertiesDictionary": { + "description": "\n \n\n Example: All Linux Function Apps, need Use32BitWorkerProcess to be set to 0", + "type": "object", + "additionalProperties": { + "type": "object" + } + } + } + }, + "StackMinorVersion": { + "description": "Application stack minor version.", + "type": "object", + "properties": { + "displayVersion": { + "description": "Application stack minor version (display only).", + "type": "string" + }, + "runtimeVersion": { + "description": "Application stack minor version (runtime only).", + "type": "string" + }, + "isDefault": { + "description": "true if this is the default minor version; otherwise, false.", + "type": "boolean" + }, + "isRemoteDebuggingEnabled": { + "description": "true if this supports Remote Debugging, otherwise false.", + "type": "boolean" + } + } + }, + "WebAppMajorVersion": { + "description": "Web App stack major version.", + "type": "object", + "properties": { + "displayText": { + "description": "Web App stack major version (display only).", + "type": "string", + "readOnly": true + }, + "value": { + "description": "Web App stack major version name.", + "type": "string", + "readOnly": true + }, + "minorVersions": { + "description": "Minor versions associated with the major version.", + "type": "array", + "items": { + "$ref": "#/definitions/WebAppMinorVersion" + }, + "readOnly": true + } + } + }, + "WebAppMinorVersion": { + "description": "Web App stack minor version.", + "type": "object", + "properties": { + "displayText": { + "description": "Web App stack minor version (display only).", + "type": "string", + "readOnly": true + }, + "value": { + "description": "Web App stack major version name.", + "type": "string", + "readOnly": true + }, + "stackSettings": { + "$ref": "#/definitions/WebAppRuntimes", + "description": "Settings associated with the minor version.", + "readOnly": true + } + } + }, + "WebAppRuntimeSettings": { + "description": "Web App runtime settings.", + "type": "object", + "properties": { + "runtimeVersion": { + "description": "Web App stack minor version (runtime only).", + "type": "string", + "readOnly": true + }, + "remoteDebuggingSupported": { + "description": "true if remote debugging is supported for the stack; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "appInsightsSettings": { + "$ref": "#/definitions/AppInsightsWebAppStackSettings", + "description": "Application Insights settings associated with the minor version.", + "readOnly": true + }, + "gitHubActionSettings": { + "$ref": "#/definitions/GitHubActionWebAppStackSettings", + "description": "GitHub Actions settings associated with the minor version.", + "readOnly": true + }, + "isPreview": { + "description": "true if the stack is in preview; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "isDeprecated": { + "description": "true if the stack is deprecated; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "isHidden": { + "description": "true if the stack should be hidden; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "endOfLifeDate": { + "format": "date-time", + "description": "End-of-life date for the minor version.", + "type": "string", + "readOnly": true + }, + "isAutoUpdate": { + "description": "true if the stack version is auto-updated; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "isEarlyAccess": { + "description": "true if the minor version is early-access; otherwise, false.", + "type": "boolean", + "readOnly": true + } + } + }, + "WebAppRuntimes": { + "description": "Web App stack runtimes.", + "type": "object", + "properties": { + "linuxRuntimeSettings": { + "$ref": "#/definitions/WebAppRuntimeSettings", + "description": "Linux-specific settings associated with the minor version.", + "readOnly": true + }, + "windowsRuntimeSettings": { + "$ref": "#/definitions/WebAppRuntimeSettings", + "description": "Windows-specific settings associated with the minor version.", + "readOnly": true + }, + "linuxContainerSettings": { + "$ref": "#/definitions/LinuxJavaContainerSettings", + "description": "Linux-specific settings associated with the Java container minor version.", + "readOnly": true + }, + "windowsContainerSettings": { + "$ref": "#/definitions/WindowsJavaContainerSettings", + "description": "Windows-specific settings associated with the Java container minor version.", + "readOnly": true + } + } + }, + "WebAppStack": { + "description": "Web App stack.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "location": { + "description": "Web App stack location.", + "type": "string", + "readOnly": true + }, + "properties": { + "description": "WebAppStack resource specific properties", + "properties": { + "displayText": { + "description": "Web App stack (display only).", + "type": "string", + "readOnly": true + }, + "value": { + "description": "Web App stack name.", + "type": "string", + "readOnly": true + }, + "majorVersions": { + "description": "List of major versions available.", + "type": "array", + "items": { + "$ref": "#/definitions/WebAppMajorVersion" + }, + "readOnly": true + }, + "preferredOs": { + "description": "Web App stack preferred OS.", + "enum": [ + "Windows", + "Linux" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "StackPreferredOs", + "modelAsString": false + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "WebAppStackCollection": { + "description": "Collection of Web app Stacks", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/WebAppStack" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "WindowsJavaContainerSettings": { + "description": "Windows Java Container settings.", + "type": "object", + "properties": { + "javaContainer": { + "description": "Java container (runtime only).", + "type": "string", + "readOnly": true + }, + "javaContainerVersion": { + "description": "Java container version (runtime only).", + "type": "string", + "readOnly": true + }, + "isPreview": { + "description": "true if the stack is in preview; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "isDeprecated": { + "description": "true if the stack is deprecated; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "isHidden": { + "description": "true if the stack should be hidden; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "endOfLifeDate": { + "format": "date-time", + "description": "End-of-life date for the minor version.", + "type": "string", + "readOnly": true + }, + "isAutoUpdate": { + "description": "true if the stack version is auto-updated; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "isEarlyAccess": { + "description": "true if the minor version is early-access; otherwise, false.", + "type": "boolean", + "readOnly": true + } + } + } + }, + "parameters": { + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Your Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).", + "required": true, + "type": "string" + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "API Version", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/Recommendations.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/Recommendations.json new file mode 100644 index 000000000000..190b9fe5ef0c --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/Recommendations.json @@ -0,0 +1,1072 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-01-01", + "title": "Recommendations API Client" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Web/recommendations": { + "get": { + "tags": [ + "Recommendations" + ], + "summary": "List all recommendations for a subscription.", + "description": "Description for List all recommendations for a subscription.", + "operationId": "Recommendations_List", + "parameters": [ + { + "name": "featured", + "in": "query", + "description": "Specify true to return only the most critical recommendations. The default is false, which returns all recommendations.", + "type": "boolean" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$filter", + "in": "query", + "description": "Filter is specified by using OData syntax. Example: $filter=channel eq 'Api' or channel eq 'Notification' and startTime eq 2014-01-01T00:00:00Z and endTime eq 2014-12-31T23:59:59Z and timeGrain eq duration'[PT1H|PT1M|P1D]", + "type": "string", + "x-ms-skip-url-encoding": true + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecommendationCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Web/recommendations/reset": { + "post": { + "tags": [ + "Recommendations" + ], + "summary": "Reset all recommendation opt-out settings for a subscription.", + "description": "Description for Reset all recommendation opt-out settings for a subscription.", + "operationId": "Recommendations_ResetAllFilters", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/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": "Description for 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." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{hostingEnvironmentName}/recommendationHistory": { + "get": { + "tags": [ + "Recommendations" + ], + "summary": "Get past recommendations for an app, optionally specified by the time range.", + "description": "Description for Get past recommendations for an app, optionally specified by the time range.", + "operationId": "Recommendations_ListHistoryForHostingEnvironment", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "hostingEnvironmentName", + "in": "path", + "description": "Name of the hosting environment.", + "required": true, + "type": "string" + }, + { + "name": "expiredOnly", + "in": "query", + "description": "Specify false to return all recommendations. The default is true, which returns only expired recommendations.", + "type": "boolean" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$filter", + "in": "query", + "description": "Filter is specified by using OData syntax. Example: $filter=channel eq 'Api' or channel eq 'Notification' and startTime eq 2014-01-01T00:00:00Z and endTime eq 2014-12-31T23:59:59Z and timeGrain eq duration'[PT1H|PT1M|P1D]", + "type": "string", + "x-ms-skip-url-encoding": true + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecommendationCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{hostingEnvironmentName}/recommendations": { + "get": { + "tags": [ + "Recommendations" + ], + "summary": "Get all recommendations for a hosting environment.", + "description": "Description for Get all recommendations for a hosting environment.", + "operationId": "Recommendations_ListRecommendedRulesForHostingEnvironment", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "hostingEnvironmentName", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "featured", + "in": "query", + "description": "Specify true to return only the most critical recommendations. The default is false, which returns all recommendations.", + "type": "boolean" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$filter", + "in": "query", + "description": "Return only channels specified in the filter. Filter is specified by using OData syntax. Example: $filter=channel eq 'Api' or channel eq 'Notification'", + "type": "string", + "x-ms-skip-url-encoding": true + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecommendationCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{hostingEnvironmentName}/recommendations/disable": { + "post": { + "tags": [ + "Recommendations" + ], + "summary": "Disable all recommendations for an app.", + "description": "Description for Disable all recommendations for an app.", + "operationId": "Recommendations_DisableAllForHostingEnvironment", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "environmentName", + "in": "query", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "hostingEnvironmentName", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{hostingEnvironmentName}/recommendations/reset": { + "post": { + "tags": [ + "Recommendations" + ], + "summary": "Reset all recommendation opt-out settings for an app.", + "description": "Description for Reset all recommendation opt-out settings for an app.", + "operationId": "Recommendations_ResetAllFiltersForHostingEnvironment", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "environmentName", + "in": "query", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "hostingEnvironmentName", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{hostingEnvironmentName}/recommendations/{name}": { + "get": { + "tags": [ + "Recommendations" + ], + "summary": "Get a recommendation rule for an app.", + "description": "Description for Get a recommendation rule for an app.", + "operationId": "Recommendations_GetRuleDetailsByHostingEnvironment", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "hostingEnvironmentName", + "in": "path", + "description": "Name of the hosting environment.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "Name of the recommendation.", + "required": true, + "type": "string" + }, + { + "name": "updateSeen", + "in": "query", + "description": "Specify true to update the last-seen timestamp of the recommendation object.", + "type": "boolean" + }, + { + "name": "recommendationId", + "in": "query", + "description": "The GUID of the recommendation object if you query an expired one. You don't need to specify it to query an active entry.", + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecommendationRule" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{hostingEnvironmentName}/recommendations/{name}/disable": { + "post": { + "tags": [ + "Recommendations" + ], + "summary": "Disables the specific rule for a web site permanently.", + "description": "Description for Disables the specific rule for a web site permanently.", + "operationId": "Recommendations_DisableRecommendationForHostingEnvironment", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "environmentName", + "in": "query", + "description": "Site name", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "Rule name", + "required": true, + "type": "string" + }, + { + "name": "hostingEnvironmentName", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully disabled recommendations." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/recommendationHistory": { + "get": { + "tags": [ + "Recommendations" + ], + "summary": "Get past recommendations for an app, optionally specified by the time range.", + "description": "Description for Get past recommendations for an app, optionally specified by the time range.", + "operationId": "Recommendations_ListHistoryForWebApp", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "siteName", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "expiredOnly", + "in": "query", + "description": "Specify false to return all recommendations. The default is true, which returns only expired recommendations.", + "type": "boolean" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$filter", + "in": "query", + "description": "Filter is specified by using OData syntax. Example: $filter=channel eq 'Api' or channel eq 'Notification' and startTime eq 2014-01-01T00:00:00Z and endTime eq 2014-12-31T23:59:59Z and timeGrain eq duration'[PT1H|PT1M|P1D]", + "type": "string", + "x-ms-skip-url-encoding": true + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecommendationCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/recommendations": { + "get": { + "tags": [ + "Recommendations" + ], + "summary": "Get all recommendations for an app.", + "description": "Description for Get all recommendations for an app.", + "operationId": "Recommendations_ListRecommendedRulesForWebApp", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "siteName", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "featured", + "in": "query", + "description": "Specify true to return only the most critical recommendations. The default is false, which returns all recommendations.", + "type": "boolean" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$filter", + "in": "query", + "description": "Return only channels specified in the filter. Filter is specified by using OData syntax. Example: $filter=channel eq 'Api' or channel eq 'Notification'", + "type": "string", + "x-ms-skip-url-encoding": true + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecommendationCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/recommendations/disable": { + "post": { + "tags": [ + "Recommendations" + ], + "summary": "Disable all recommendations for an app.", + "description": "Description for Disable all recommendations for an app.", + "operationId": "Recommendations_DisableAllForWebApp", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "siteName", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/recommendations/reset": { + "post": { + "tags": [ + "Recommendations" + ], + "summary": "Reset all recommendation opt-out settings for an app.", + "description": "Description for Reset all recommendation opt-out settings for an app.", + "operationId": "Recommendations_ResetAllFiltersForWebApp", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "siteName", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/recommendations/{name}": { + "get": { + "tags": [ + "Recommendations" + ], + "summary": "Get a recommendation rule for an app.", + "description": "Description for Get a recommendation rule for an app.", + "operationId": "Recommendations_GetRuleDetailsByWebApp", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "siteName", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "Name of the recommendation.", + "required": true, + "type": "string" + }, + { + "name": "updateSeen", + "in": "query", + "description": "Specify true to update the last-seen timestamp of the recommendation object.", + "type": "boolean" + }, + { + "name": "recommendationId", + "in": "query", + "description": "The GUID of the recommendation object if you query an expired one. You don't need to specify it to query an active entry.", + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecommendationRule" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/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": "Description for 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." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + } + }, + "definitions": { + "Recommendation": { + "description": "Represents a recommendation result generated by the recommendation engine.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "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 + } + }, + "categoryTags": { + "description": "The list of category tags that this recommendation belongs to.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "actionName": { + "description": "Name of action recommended by this object.", + "type": "string" + }, + "enabled": { + "format": "int32", + "description": "True if this recommendation is still valid (i.e. \"actionable\"). False if it is invalid.", + "type": "integer" + }, + "states": { + "description": "The list of states of this recommendation. If it's null then it should be considered \"Active\".", + "type": "array", + "items": { + "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": { + "$ref": "#/definitions/Recommendation" + } + }, + "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": { + "properties": { + "description": "RecommendationRule resource specific properties", + "properties": { + "recommendationName": { + "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 + } + }, + "categoryTags": { + "description": "The list of category tags that this recommendation rule belongs to.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "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 + } + } + } + }, + "parameters": { + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Your Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).", + "required": true, + "type": "string" + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "Name of the resource group to which the resource belongs.", + "required": true, + "type": "string", + "maxLength": 90, + "minLength": 1, + "pattern": "^[-\\w\\._\\(\\)]+[^\\.]$", + "x-ms-parameter-location": "method" + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "API Version", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/ResourceHealthMetadata.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/ResourceHealthMetadata.json new file mode 100644 index 000000000000..327f96ec1eb7 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/ResourceHealthMetadata.json @@ -0,0 +1,403 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-01-01", + "title": "ResourceHealthMetadata API Client" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Web/resourceHealthMetadata": { + "get": { + "tags": [ + "ResourceHealthMetadata" + ], + "summary": "List all ResourceHealthMetadata for all sites in the subscription.", + "description": "Description for List all ResourceHealthMetadata for all sites in the subscription.", + "operationId": "ResourceHealthMetadata_List", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ResourceHealthMetadataCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List ResourceHealthMetadata for a subscription": { + "$ref": "./examples/ListResourceHealthMetadataBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/resourceHealthMetadata": { + "get": { + "tags": [ + "ResourceHealthMetadata" + ], + "summary": "List all ResourceHealthMetadata for all sites in the resource group in the subscription.", + "description": "Description for List all ResourceHealthMetadata for all sites in the resource group in the subscription.", + "operationId": "ResourceHealthMetadata_ListByResourceGroup", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ResourceHealthMetadataCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List ResourceHealthMetadata for a resource group": { + "$ref": "./examples/ListResourceHealthMetadataByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/resourceHealthMetadata": { + "get": { + "tags": [ + "ResourceHealthMetadata" + ], + "summary": "Gets the category of ResourceHealthMetadata to use for the given site as a collection", + "description": "Description for Gets the category of ResourceHealthMetadata to use for the given site as a collection", + "operationId": "ResourceHealthMetadata_ListBySite", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ResourceHealthMetadataCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List ResourceHealthMetadata for a site": { + "$ref": "./examples/ListResourceHealthMetadataBySite.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/resourceHealthMetadata/default": { + "get": { + "tags": [ + "ResourceHealthMetadata" + ], + "summary": "Gets the category of ResourceHealthMetadata to use for the given site", + "description": "Description for Gets the category of ResourceHealthMetadata to use for the given site", + "operationId": "ResourceHealthMetadata_GetBySite", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ResourceHealthMetadata" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get ResourceHealthMetadata": { + "$ref": "./examples/GetResourceHealthMetadataBySite.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/resourceHealthMetadata": { + "get": { + "tags": [ + "ResourceHealthMetadata" + ], + "summary": "Gets the category of ResourceHealthMetadata to use for the given site as a collection", + "description": "Description for Gets the category of ResourceHealthMetadata to use for the given site as a collection", + "operationId": "ResourceHealthMetadata_ListBySiteSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of web app slot. If not specified then will default to production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ResourceHealthMetadataCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List ResourceHealthMetadata for a site": { + "$ref": "./examples/ListResourceHealthMetadataBySite.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/resourceHealthMetadata/default": { + "get": { + "tags": [ + "ResourceHealthMetadata" + ], + "summary": "Gets the category of ResourceHealthMetadata to use for the given site", + "description": "Description for Gets the category of ResourceHealthMetadata to use for the given site", + "operationId": "ResourceHealthMetadata_GetBySiteSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of web app slot. If not specified then will default to production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ResourceHealthMetadata" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get ResourceHealthMetadata": { + "$ref": "./examples/GetResourceHealthMetadataBySite.json" + } + } + } + } + }, + "definitions": { + "ResourceHealthMetadata": { + "description": "Used for getting ResourceHealthCheck settings.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "ResourceHealthMetadata resource specific properties", + "properties": { + "category": { + "description": "The category that the resource matches in the RHC Policy File", + "type": "string" + }, + "signalAvailability": { + "description": "Is there a health signal for the resource", + "type": "boolean" + } + }, + "x-ms-client-flatten": true + } + } + }, + "ResourceHealthMetadataCollection": { + "description": "Collection of resource health metadata.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/ResourceHealthMetadata" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Your Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).", + "required": true, + "type": "string" + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "Name of the resource group to which the resource belongs.", + "required": true, + "type": "string", + "maxLength": 90, + "minLength": 1, + "pattern": "^[-\\w\\._\\(\\)]+[^\\.]$", + "x-ms-parameter-location": "method" + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "API Version", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/ResourceProvider.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/ResourceProvider.json new file mode 100644 index 000000000000..7b3f599d52f3 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/ResourceProvider.json @@ -0,0 +1,1431 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-01-01", + "title": " API Client" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/providers/Microsoft.Web/generateGithubAccessTokenForAppserviceCLI": { + "post": { + "summary": "Exchange code for GitHub access token for AppService CLI", + "description": "Description for Exchange code for GitHub access token for AppService CLI", + "operationId": "GenerateGithubAccessTokenForAppserviceCLIAsync", + "parameters": [ + { + "name": "request", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AppserviceGithubTokenRequest" + }, + "x-ms-client-flatten": true + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AppserviceGithubToken" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Generate Github Access Token For AppService CLI": { + "$ref": "./examples/GenerateGithubAccessTokenForAppserviceCLIAsync.json" + } + } + } + }, + "/providers/Microsoft.Web/publishingUsers/web": { + "get": { + "summary": "Gets publishing user", + "description": "Description for Gets publishing user", + "operationId": "GetPublishingUser", + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/User" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "summary": "Updates publishing user", + "description": "Description for Updates publishing user", + "operationId": "UpdatePublishingUser", + "parameters": [ + { + "name": "userDetails", + "in": "body", + "description": "Details of publishing user", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/User" + } + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/User" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.Web/sourcecontrols": { + "get": { + "summary": "Gets the source controls available for Azure websites.", + "description": "Description for Gets the source controls available for Azure websites.", + "operationId": "ListSourceControls", + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SourceControlCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Web/sourcecontrols/{sourceControlType}": { + "get": { + "summary": "Gets source control token", + "description": "Description for Gets source control token", + "operationId": "GetSourceControl", + "parameters": [ + { + "name": "sourceControlType", + "in": "path", + "description": "Type of source control", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SourceControl" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "summary": "Updates source control token", + "description": "Description for Updates source control token", + "operationId": "UpdateSourceControl", + "parameters": [ + { + "name": "sourceControlType", + "in": "path", + "description": "Type of source control", + "required": true, + "type": "string" + }, + { + "name": "requestMessage", + "in": "body", + "description": "Source control token information", + "required": true, + "schema": { + "$ref": "#/definitions/SourceControl" + } + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SourceControl" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Web/billingMeters": { + "get": { + "summary": "Gets a list of meters for a given location.", + "description": "Description for Gets a list of meters for a given location.", + "operationId": "ListBillingMeters", + "parameters": [ + { + "name": "billingLocation", + "in": "query", + "description": "Azure Location of billable resource", + "type": "string" + }, + { + "name": "osType", + "in": "query", + "description": "App Service OS type meters used for", + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BillingMeterCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Web/checknameavailability": { + "post": { + "summary": "Check if a resource name is available.", + "description": "Description for Check if a resource name is available.", + "operationId": "CheckNameAvailability", + "parameters": [ + { + "name": "request", + "in": "body", + "description": "Name availability request.", + "required": true, + "schema": { + "$ref": "#/definitions/ResourceNameAvailabilityRequest" + }, + "x-ms-client-flatten": true + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ResourceNameAvailability" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Web/deploymentLocations": { + "get": { + "summary": "Gets list of available geo regions plus ministamps", + "description": "Description for Gets list of available geo regions plus ministamps", + "operationId": "GetSubscriptionDeploymentLocations", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DeploymentLocations" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Web/geoRegions": { + "get": { + "summary": "Get a list of available geographical regions.", + "description": "Description for Get a list of available geographical regions.", + "operationId": "ListGeoRegions", + "parameters": [ + { + "name": "sku", + "in": "query", + "description": "Name of SKU used to filter the regions.", + "type": "string", + "enum": [ + "Free", + "Shared", + "Basic", + "Standard", + "Premium", + "Dynamic", + "Isolated", + "IsolatedV2", + "PremiumV2", + "PremiumV3", + "PremiumContainer", + "ElasticPremium", + "ElasticIsolated" + ], + "x-ms-enum": { + "name": "SkuName", + "modelAsString": true + } + }, + { + "name": "linuxWorkersEnabled", + "in": "query", + "description": "Specify true if you want to filter to only regions that support Linux workers.", + "type": "boolean" + }, + { + "name": "xenonWorkersEnabled", + "in": "query", + "description": "Specify true if you want to filter to only regions that support Xenon workers.", + "type": "boolean" + }, + { + "name": "linuxDynamicWorkersEnabled", + "in": "query", + "description": "Specify true if you want to filter to only regions that support Linux Consumption Workers.", + "type": "boolean" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GeoRegionCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Web/listSitesAssignedToHostName": { + "post": { + "summary": "List all apps that are assigned to a hostname.", + "description": "Description for List all apps that are assigned to a hostname.", + "operationId": "ListSiteIdentifiersAssignedToHostName", + "parameters": [ + { + "name": "nameIdentifier", + "in": "body", + "description": "Hostname information.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/NameIdentifier" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/IdentifierCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Web/premieraddonoffers": { + "get": { + "summary": "List all premier add-on offers.", + "description": "Description for List all premier add-on offers.", + "operationId": "ListPremierAddOnOffers", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PremierAddOnOfferCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Web/skus": { + "get": { + "summary": "List all SKUs.", + "description": "Description for List all SKUs.", + "operationId": "ListSkus", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SkuInfos" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Web/verifyHostingEnvironmentVnet": { + "post": { + "summary": "Verifies if this VNET is compatible with an App Service Environment by analyzing the Network Security Group rules.", + "description": "Description for Verifies if this VNET is compatible with an App Service Environment by analyzing the Network Security Group rules.", + "operationId": "VerifyHostingEnvironmentVnet", + "parameters": [ + { + "name": "parameters", + "in": "body", + "description": "VNET information", + "required": true, + "schema": { + "$ref": "#/definitions/VnetParameters" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VnetValidationFailureDetails" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "VerifyHostingEnvironmentVnet": { + "$ref": "./examples/VerifyHostingEnvironmentVnet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/moveResources": { + "post": { + "summary": "Move resources between resource groups.", + "description": "Description for Move resources between resource groups.", + "operationId": "Move", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "moveResourceEnvelope", + "in": "body", + "description": "Object that represents the resource to move.", + "required": true, + "schema": { + "$ref": "#/definitions/CsmMoveResourceEnvelope" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/validate": { + "post": { + "summary": "Validate if a resource can be created.", + "description": "Description for Validate if a resource can be created.", + "operationId": "Validate", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "validateRequest", + "in": "body", + "description": "Request with the resources to validate.", + "required": true, + "schema": { + "$ref": "#/definitions/ValidateRequest" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ValidateResponse" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/validateMoveResources": { + "post": { + "summary": "Validate whether a resource can be moved.", + "description": "Description for Validate whether a resource can be moved.", + "operationId": "ValidateMove", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "moveResourceEnvelope", + "in": "body", + "description": "Object that represents the resource to move.", + "required": true, + "schema": { + "$ref": "#/definitions/CsmMoveResourceEnvelope" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + } + }, + "definitions": { + "AppserviceGithubToken": { + "description": "Github access token for Appservice CLI github integration.", + "type": "object", + "properties": { + "accessToken": { + "description": "Github access token for Appservice CLI github integration", + "type": "string" + }, + "scope": { + "description": "Scope of the github access token", + "type": "string" + }, + "tokenType": { + "description": "token type", + "type": "string" + }, + "gotToken": { + "description": "True if valid github token received, False otherwise", + "type": "boolean" + }, + "errorMessage": { + "description": "Error message if unable to get token", + "type": "string" + } + } + }, + "AppserviceGithubTokenRequest": { + "description": "Appservice Github token request content.", + "required": [ + "code", + "state" + ], + "type": "object", + "properties": { + "code": { + "description": "Code string to exchange for Github Access token", + "type": "string" + }, + "state": { + "description": "State string used for verification.", + "type": "string" + } + } + }, + "BillingMeter": { + "description": "App Service billing entity that contains information about meter which the Azure billing system utilizes to charge users for services.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "BillingMeter resource specific properties", + "properties": { + "meterId": { + "description": "Meter GUID onboarded in Commerce", + "type": "string" + }, + "billingLocation": { + "description": "Azure Location of billable resource", + "type": "string" + }, + "shortName": { + "description": "Short Name from App Service Azure pricing Page", + "type": "string" + }, + "friendlyName": { + "description": "Friendly name of the meter", + "type": "string" + }, + "resourceType": { + "description": "App Service ResourceType meter used for", + "type": "string" + }, + "osType": { + "description": "App Service OS type meter used for", + "type": "string" + }, + "multiplier": { + "format": "double", + "description": "Meter Multiplier", + "type": "number" + } + }, + "x-ms-client-flatten": true + } + } + }, + "BillingMeterCollection": { + "description": "Collection of Billing Meters", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/BillingMeter" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "CsmMoveResourceEnvelope": { + "description": "Object with a list of the resources that need to be moved and the resource group they should be moved to.", + "type": "object", + "properties": { + "targetResourceGroup": { + "maxLength": 90, + "minLength": 1, + "pattern": " ^[-\\w\\._\\(\\)]+[^\\.]$", + "type": "string" + }, + "resources": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "DeploymentLocations": { + "description": "List of available locations (regions or App Service Environments) for\ndeployment of App Service resources.", + "type": "object", + "properties": { + "locations": { + "description": "Available regions.", + "type": "array", + "items": { + "$ref": "#/definitions/GeoRegion" + } + }, + "hostingEnvironments": { + "description": "Available App Service Environments with full descriptions of the environments.", + "type": "array", + "items": { + "$ref": "./CommonDefinitions.json#/definitions/AppServiceEnvironment" + } + }, + "hostingEnvironmentDeploymentInfos": { + "description": "Available App Service Environments with basic information.", + "type": "array", + "items": { + "$ref": "#/definitions/HostingEnvironmentDeploymentInfo" + } + } + } + }, + "GeoRegion": { + "description": "Geographical region.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "GeoRegion resource specific properties", + "properties": { + "description": { + "description": "Region description.", + "type": "string", + "readOnly": true + }, + "displayName": { + "description": "Display name for region.", + "type": "string", + "readOnly": true + }, + "orgDomain": { + "description": "Display name for region.", + "type": "string", + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "GeoRegionCollection": { + "description": "Collection of geographical regions.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/GeoRegion" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "GlobalCsmSkuDescription": { + "description": "A Global SKU Description.", + "type": "object", + "properties": { + "name": { + "description": "Name of the resource SKU.", + "type": "string" + }, + "tier": { + "description": "Service Tier of the resource SKU.", + "type": "string" + }, + "size": { + "description": "Size specifier of the resource SKU.", + "type": "string" + }, + "family": { + "description": "Family code of the resource SKU.", + "type": "string" + }, + "capacity": { + "$ref": "./CommonDefinitions.json#/definitions/SkuCapacity", + "description": "Min, max, and default scale values of the SKU." + }, + "locations": { + "description": "Locations of the SKU.", + "type": "array", + "items": { + "type": "string" + } + }, + "capabilities": { + "description": "Capabilities of the SKU, e.g., is traffic manager enabled?", + "type": "array", + "items": { + "$ref": "./CommonDefinitions.json#/definitions/Capability" + } + } + } + }, + "HostingEnvironmentDeploymentInfo": { + "description": "Information needed to create resources on an App Service Environment.", + "type": "object", + "properties": { + "name": { + "description": "Name of the App Service Environment.", + "type": "string" + }, + "location": { + "description": "Location of the App Service Environment.", + "type": "string" + } + } + }, + "PremierAddOnOffer": { + "description": "Premier add-on offer.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "PremierAddOnOffer resource specific properties", + "properties": { + "sku": { + "description": "Premier add on SKU.", + "type": "string" + }, + "product": { + "description": "Premier add on offer Product.", + "type": "string" + }, + "vendor": { + "description": "Premier add on offer Vendor.", + "type": "string" + }, + "promoCodeRequired": { + "description": "true if promotion code is required; otherwise, false.", + "type": "boolean" + }, + "quota": { + "format": "int32", + "description": "Premier add on offer Quota.", + "type": "integer" + }, + "webHostingPlanRestrictions": { + "description": "App Service plans this offer is restricted to.", + "enum": [ + "None", + "Free", + "Shared", + "Basic", + "Standard", + "Premium" + ], + "type": "string", + "x-ms-enum": { + "name": "AppServicePlanRestrictions", + "modelAsString": false + } + }, + "privacyPolicyUrl": { + "description": "Privacy policy URL.", + "type": "string" + }, + "legalTermsUrl": { + "description": "Legal terms URL.", + "type": "string" + }, + "marketplacePublisher": { + "description": "Marketplace publisher.", + "type": "string" + }, + "marketplaceOffer": { + "description": "Marketplace offer.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "PremierAddOnOfferCollection": { + "description": "Collection of premier add-on offers.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/PremierAddOnOffer" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "ResourceNameAvailability": { + "description": "Information regarding availability of a resource name.", + "type": "object", + "properties": { + "nameAvailable": { + "description": "true indicates name is valid and available. false indicates the name is invalid, unavailable, or both.", + "type": "boolean" + }, + "reason": { + "description": "Invalid indicates the name provided does not match Azure App Service naming requirements. AlreadyExists indicates that the name is already in use and is therefore unavailable.", + "enum": [ + "Invalid", + "AlreadyExists" + ], + "type": "string", + "x-ms-enum": { + "name": "InAvailabilityReasonType", + "modelAsString": true + } + }, + "message": { + "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 resource name is already in use, and direct them to select a different name.", + "type": "string" + } + } + }, + "ResourceNameAvailabilityRequest": { + "description": "Resource name availability request content.", + "required": [ + "name", + "type" + ], + "type": "object", + "properties": { + "name": { + "description": "Resource name to verify.", + "type": "string" + }, + "type": { + "description": "Resource type used for verification.", + "enum": [ + "Site", + "Slot", + "HostingEnvironment", + "PublishingUser", + "Microsoft.Web/sites", + "Microsoft.Web/sites/slots", + "Microsoft.Web/hostingEnvironments", + "Microsoft.Web/publishingUsers" + ], + "type": "string", + "x-ms-enum": { + "name": "CheckNameResourceTypes", + "modelAsString": true + } + }, + "isFqdn": { + "description": "Is fully qualified domain name.", + "type": "boolean" + } + } + }, + "SkuInfos": { + "description": "Collection of SKU information.", + "type": "object", + "properties": { + "resourceType": { + "description": "Resource type that this SKU applies to.", + "type": "string" + }, + "skus": { + "description": "List of SKUs the subscription is able to use.", + "type": "array", + "items": { + "$ref": "#/definitions/GlobalCsmSkuDescription" + } + } + } + }, + "SourceControl": { + "description": "The source control OAuth token.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "SourceControl resource specific properties", + "properties": { + "token": { + "description": "OAuth access token.", + "type": "string" + }, + "tokenSecret": { + "description": "OAuth access token secret.", + "type": "string" + }, + "refreshToken": { + "description": "OAuth refresh token.", + "type": "string" + }, + "expirationTime": { + "format": "date-time", + "description": "OAuth token expiration.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "SourceControlCollection": { + "description": "Collection of source controls.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/SourceControl" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "ValidateProperties": { + "description": "App properties used for validation.", + "type": "object", + "properties": { + "serverFarmId": { + "description": "ARM resource ID of an App Service plan that would host the app.", + "type": "string" + }, + "skuName": { + "description": "Name of the target SKU for the App Service plan.", + "type": "string" + }, + "needLinuxWorkers": { + "description": "true if App Service plan is for Linux workers; otherwise, false.", + "type": "boolean" + }, + "isSpot": { + "description": "true if App Service plan is for Spot instances; otherwise, false.", + "type": "boolean" + }, + "capacity": { + "format": "int32", + "description": "Target capacity of the App Service plan (number of VMs).", + "minimum": 1, + "type": "integer" + }, + "hostingEnvironment": { + "description": "Name of App Service Environment where app or App Service plan should be created.", + "type": "string" + }, + "isXenon": { + "description": "true if App Service plan is running as a windows container", + "type": "boolean" + }, + "containerRegistryBaseUrl": { + "description": "Base URL of the container registry", + "type": "string" + }, + "containerRegistryUsername": { + "description": "Username for to access the container registry", + "type": "string" + }, + "containerRegistryPassword": { + "description": "Password for to access the container registry", + "type": "string" + }, + "containerImageRepository": { + "description": "Repository name (image name)", + "type": "string" + }, + "containerImageTag": { + "description": "Image tag", + "type": "string" + }, + "containerImagePlatform": { + "description": "Platform (windows or linux)", + "type": "string" + }, + "appServiceEnvironment": { + "$ref": "./CommonDefinitions.json#/definitions/AppServiceEnvironment", + "description": "App Service Environment Properties" + } + } + }, + "ValidateRequest": { + "description": "Resource validation request content.", + "required": [ + "name", + "type", + "location", + "properties" + ], + "type": "object", + "properties": { + "name": { + "description": "Resource name to verify.", + "type": "string" + }, + "type": { + "description": "Resource type used for verification.", + "enum": [ + "ServerFarm", + "Site", + "Microsoft.Web/hostingEnvironments" + ], + "type": "string", + "x-ms-enum": { + "name": "ValidateResourceTypes", + "modelAsString": true + } + }, + "location": { + "description": "Expected location of the resource.", + "type": "string" + }, + "properties": { + "$ref": "#/definitions/ValidateProperties", + "description": "Properties of the resource to validate.", + "x-ms-client-flatten": true + } + } + }, + "ValidateResponse": { + "description": "Describes the result of resource validation.", + "type": "object", + "properties": { + "status": { + "description": "Result of validation.", + "type": "string" + }, + "error": { + "$ref": "#/definitions/ValidateResponseError", + "description": "Error details for the case when validation fails." + } + } + }, + "ValidateResponseError": { + "description": "Error details for when validation fails.", + "type": "object", + "properties": { + "code": { + "description": "Validation error code.", + "type": "string" + }, + "message": { + "description": "Validation error message.", + "type": "string" + } + } + }, + "VnetParameters": { + "description": "The required set of inputs to validate a VNET", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "VnetParameters resource specific properties", + "properties": { + "vnetResourceGroup": { + "description": "The Resource Group of the VNET to be validated", + "type": "string" + }, + "vnetName": { + "description": "The name of the VNET to be validated", + "type": "string" + }, + "vnetSubnetName": { + "description": "The subnet name to be validated", + "type": "string" + }, + "subnetResourceId": { + "description": "The ARM Resource ID of the subnet to validate", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "VnetValidationFailureDetails": { + "description": "A class that describes the reason for a validation failure.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "VnetValidationFailureDetails resource specific properties", + "properties": { + "message": { + "description": "Text describing the validation outcome.", + "type": "string" + }, + "failed": { + "description": "A flag describing whether or not validation failed.", + "type": "boolean" + }, + "failedTests": { + "description": "A list of tests that failed in the validation.", + "type": "array", + "items": { + "$ref": "#/definitions/VnetValidationTestFailure" + } + }, + "warnings": { + "description": "A list of warnings generated during validation.", + "type": "array", + "items": { + "$ref": "#/definitions/VnetValidationTestFailure" + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "VnetValidationTestFailure": { + "description": "A class that describes a test that failed during NSG and UDR validation.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "VnetValidationTestFailure resource specific properties", + "properties": { + "testName": { + "description": "The name of the test that failed.", + "type": "string" + }, + "details": { + "description": "The details of what caused the failure, e.g. the blocking rule name, etc.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + } + }, + "parameters": { + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Your Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).", + "required": true, + "type": "string" + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "Name of the resource group to which the resource belongs.", + "required": true, + "type": "string", + "maxLength": 90, + "minLength": 1, + "pattern": "^[-\\w\\._\\(\\)]+[^\\.]$", + "x-ms-parameter-location": "method" + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "API Version", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/StaticSites.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/StaticSites.json new file mode 100644 index 000000000000..8abee646f42b --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/StaticSites.json @@ -0,0 +1,3663 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-01-01", + "title": "StaticSites API Client" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Web/locations/{location}/previewStaticSiteWorkflowFile": { + "post": { + "tags": [ + "StaticSites" + ], + "summary": "Generates a preview workflow file for the static site", + "description": "Description for Generates a preview workflow file for the static site", + "operationId": "StaticSites_PreviewWorkflow", + "parameters": [ + { + "name": "location", + "in": "path", + "description": "Location where you plan to create the static site.", + "required": true, + "type": "string" + }, + { + "name": "staticSitesWorkflowPreviewRequest", + "in": "body", + "description": "A JSON representation of the StaticSitesWorkflowPreviewRequest properties. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/StaticSitesWorkflowPreviewRequest" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/StaticSitesWorkflowPreview" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Generates a preview workflow file for the static site": { + "$ref": "./examples/GenerateStaticSiteWorkflowPreview.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Web/staticSites": { + "get": { + "tags": [ + "StaticSites" + ], + "summary": "Get all Static Sites for a subscription.", + "description": "Description for Get all Static Sites for a subscription.", + "operationId": "StaticSites_List", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/StaticSiteCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get all static sites in a subscription": { + "$ref": "./examples/GetAllStaticSites.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites": { + "get": { + "tags": [ + "StaticSites" + ], + "summary": "Gets all static sites in the specified resource group.", + "description": "Description for Gets all static sites in the specified resource group.", + "operationId": "StaticSites_GetStaticSitesByResourceGroup", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get static sites for a resource group": { + "$ref": "./examples/GetStaticSites.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}": { + "get": { + "tags": [ + "StaticSites" + ], + "summary": "Gets the details of a static site.", + "description": "Description for Gets the details of a static site.", + "operationId": "StaticSites_GetStaticSite", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteARMResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get details for a static site": { + "$ref": "./examples/GetStaticSite.json" + } + } + }, + "put": { + "tags": [ + "StaticSites" + ], + "summary": "Creates a new static site in an existing resource group, or updates an existing static site.", + "description": "Description for Creates a new static site in an existing resource group, or updates an existing static site.", + "operationId": "StaticSites_CreateOrUpdateStaticSite", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site to create or update.", + "required": true, + "type": "string" + }, + { + "name": "staticSiteEnvelope", + "in": "body", + "description": "A JSON representation of the staticsite properties. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/StaticSiteARMResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteARMResource" + } + }, + "202": { + "description": "Asynchronous operation in progress.", + "schema": { + "$ref": "#/definitions/StaticSiteARMResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or update a static site": { + "$ref": "./examples/CreateOrUpdateStaticSite.json" + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "StaticSites" + ], + "summary": "Deletes a static site.", + "description": "Description for Deletes a static site.", + "operationId": "StaticSites_DeleteStaticSite", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site to delete.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "202": { + "description": "Asynchronous operation in progress." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete a static site": { + "$ref": "./examples/DeleteStaticSite.json" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "StaticSites" + ], + "summary": "Creates a new static site in an existing resource group, or updates an existing static site.", + "description": "Description for Creates a new static site in an existing resource group, or updates an existing static site.", + "operationId": "StaticSites_UpdateStaticSite", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site to create or update.", + "required": true, + "type": "string" + }, + { + "name": "staticSiteEnvelope", + "in": "body", + "description": "A JSON representation of the staticsite properties. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/StaticSitePatchResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteARMResource" + } + }, + "202": { + "description": "Asynchronous operation in progress.", + "schema": { + "$ref": "#/definitions/StaticSiteARMResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Patch a static site": { + "$ref": "./examples/PatchStaticSite.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/authproviders/{authprovider}/listUsers": { + "post": { + "tags": [ + "StaticSites" + ], + "summary": "Gets the list of users of a static site.", + "description": "Description for Gets the list of users of a static site.", + "operationId": "StaticSites_ListStaticSiteUsers", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "authprovider", + "in": "path", + "description": "The auth provider for the users.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteUserCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List users for a static site": { + "$ref": "./examples/ListStaticSiteUsers.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/authproviders/{authprovider}/users/{userid}": { + "delete": { + "tags": [ + "StaticSites" + ], + "summary": "Deletes the user entry from the static site.", + "description": "Description for Deletes the user entry from the static site.", + "operationId": "StaticSites_DeleteStaticSiteUser", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the staticsite.", + "required": true, + "type": "string" + }, + { + "name": "authprovider", + "in": "path", + "description": "The auth provider for this user.", + "required": true, + "type": "string" + }, + { + "name": "userid", + "in": "path", + "description": "The user id of the user.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete a user for a static site": { + "$ref": "./examples/DeleteStaticSiteUser.json" + } + } + }, + "patch": { + "tags": [ + "StaticSites" + ], + "summary": "Updates a user entry with the listed roles", + "description": "Description for Updates a user entry with the listed roles", + "operationId": "StaticSites_UpdateStaticSiteUser", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "authprovider", + "in": "path", + "description": "The auth provider for this user.", + "required": true, + "type": "string" + }, + { + "name": "userid", + "in": "path", + "description": "The user id of the user.", + "required": true, + "type": "string" + }, + { + "name": "staticSiteUserEnvelope", + "in": "body", + "description": "A JSON representation of the StaticSiteUser properties. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/StaticSiteUserARMResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteUserARMResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or update a user for a static site": { + "$ref": "./examples/UpdateStaticSiteUser.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/builds": { + "get": { + "tags": [ + "StaticSites" + ], + "summary": "Gets all static site builds for a particular static site.", + "description": "Description for Gets all static site builds for a particular static site.", + "operationId": "StaticSites_GetStaticSiteBuilds", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteBuildCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get all builds for a static site": { + "$ref": "./examples/GetStaticSiteBuilds.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/builds/{environmentName}": { + "get": { + "tags": [ + "StaticSites" + ], + "summary": "Gets the details of a static site build.", + "description": "Description for Gets the details of a static site build.", + "operationId": "StaticSites_GetStaticSiteBuild", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "environmentName", + "in": "path", + "description": "The stage site identifier.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteBuildARMResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get a static site build": { + "$ref": "./examples/GetStaticSiteBuild.json" + } + } + }, + "delete": { + "tags": [ + "StaticSites" + ], + "summary": "Deletes a static site build.", + "description": "Description for Deletes a static site build.", + "operationId": "StaticSites_DeleteStaticSiteBuild", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "environmentName", + "in": "path", + "description": "The stage site identifier.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "204": { + "description": "OK." + }, + "202": { + "description": "Asynchronous operation in progress." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete a static site build": { + "$ref": "./examples/DeleteStaticSiteBuild.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/builds/{environmentName}/config/appsettings": { + "put": { + "tags": [ + "StaticSites" + ], + "summary": "Creates or updates the app settings of a static site build.", + "description": "Description for Creates or updates the app settings of a static site build.", + "operationId": "StaticSites_CreateOrUpdateStaticSiteBuildAppSettings", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "environmentName", + "in": "path", + "description": "The stage site identifier.", + "required": true, + "type": "string" + }, + { + "name": "appSettings", + "in": "body", + "description": "The dictionary containing the static site app settings to update.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Creates or updates the function app settings of a static site build.": { + "$ref": "./examples/CreateOrUpdateStaticSiteBuildAppSettings.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/builds/{environmentName}/config/functionappsettings": { + "put": { + "tags": [ + "StaticSites" + ], + "summary": "Creates or updates the function app settings of a static site build.", + "description": "Description for Creates or updates the function app settings of a static site build.", + "operationId": "StaticSites_CreateOrUpdateStaticSiteBuildFunctionAppSettings", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "environmentName", + "in": "path", + "description": "The stage site identifier.", + "required": true, + "type": "string" + }, + { + "name": "appSettings", + "in": "body", + "description": "The dictionary containing the static site function app settings to update.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Creates or updates the function app settings of a static site build.": { + "$ref": "./examples/CreateOrUpdateStaticSiteBuildFunctionAppSettings.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/builds/{environmentName}/functions": { + "get": { + "tags": [ + "StaticSites" + ], + "summary": "Gets the functions of a particular static site build.", + "description": "Description for Gets the functions of a particular static site build.", + "operationId": "StaticSites_ListStaticSiteBuildFunctions", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "environmentName", + "in": "path", + "description": "The stage site identifier.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteFunctionOverviewCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Gets the functions of a particular static site build": { + "$ref": "./examples/ListStaticSiteBuildFunctions.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/builds/{environmentName}/listAppSettings": { + "post": { + "tags": [ + "StaticSites" + ], + "summary": "Gets the application settings of a static site build.", + "description": "Description for Gets the application settings of a static site build.", + "operationId": "StaticSites_ListStaticSiteBuildAppSettings", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "environmentName", + "in": "path", + "description": "The stage site identifier.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get app settings of a static site build": { + "$ref": "./examples/ListStaticSiteBuildAppSettings.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/builds/{environmentName}/listFunctionAppSettings": { + "post": { + "tags": [ + "StaticSites" + ], + "summary": "Gets the application settings of a static site build.", + "description": "Description for Gets the application settings of a static site build.", + "operationId": "StaticSites_ListStaticSiteBuildFunctionAppSettings", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "environmentName", + "in": "path", + "description": "The stage site identifier.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get function app settings of a static site build": { + "$ref": "./examples/ListStaticSiteBuildFunctionAppSettings.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/builds/{environmentName}/userProvidedFunctionApps": { + "get": { + "tags": [ + "StaticSites" + ], + "summary": "Gets the details of the user provided function apps registered with a static site build", + "description": "Description for Gets the details of the user provided function apps registered with a static site build", + "operationId": "StaticSites_GetUserProvidedFunctionAppsForStaticSiteBuild", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "environmentName", + "in": "path", + "description": "The stage site identifier.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteUserProvidedFunctionAppsCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get details of the user provided function apps registered with a static site build.": { + "$ref": "./examples/GetUserProvidedFunctionAppsForStaticSiteBuild.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/builds/{environmentName}/userProvidedFunctionApps/{functionAppName}": { + "get": { + "tags": [ + "StaticSites" + ], + "summary": "Gets the details of the user provided function app registered with a static site build", + "description": "Description for Gets the details of the user provided function app registered with a static site build", + "operationId": "StaticSites_GetUserProvidedFunctionAppForStaticSiteBuild", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "environmentName", + "in": "path", + "description": "The stage site identifier.", + "required": true, + "type": "string" + }, + { + "name": "functionAppName", + "in": "path", + "description": "Name of the function app registered with the static site build.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteUserProvidedFunctionAppARMResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get details of the user provided function app registered with a static site build.": { + "$ref": "./examples/GetUserProvidedFunctionAppForStaticSiteBuild.json" + } + } + }, + "put": { + "tags": [ + "StaticSites" + ], + "summary": "Register a user provided function app with a static site build", + "description": "Description for Register a user provided function app with a static site build", + "operationId": "StaticSites_RegisterUserProvidedFunctionAppWithStaticSiteBuild", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "environmentName", + "in": "path", + "description": "The stage site identifier.", + "required": true, + "type": "string" + }, + { + "name": "functionAppName", + "in": "path", + "description": "Name of the function app to register with the static site build.", + "required": true, + "type": "string" + }, + { + "name": "staticSiteUserProvidedFunctionEnvelope", + "in": "body", + "description": "A JSON representation of the user provided function app properties. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/StaticSiteUserProvidedFunctionAppARMResource" + } + }, + { + "name": "isForced", + "in": "query", + "description": "Specify true to force the update of the auth configuration on the function app even if an AzureStaticWebApps provider is already configured on the function app. The default is false.", + "type": "boolean" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteUserProvidedFunctionAppARMResource" + } + }, + "202": { + "description": "Asynchronous operation in progress.", + "schema": { + "$ref": "#/definitions/StaticSiteUserProvidedFunctionAppARMResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Register a user provided function app with a static site build": { + "$ref": "./examples/RegisterUserProvidedFunctionAppWithStaticSiteBuild.json" + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "StaticSites" + ], + "summary": "Detach the user provided function app from the static site build", + "description": "Description for Detach the user provided function app from the static site build", + "operationId": "StaticSites_DetachUserProvidedFunctionAppFromStaticSiteBuild", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "environmentName", + "in": "path", + "description": "The stage site identifier.", + "required": true, + "type": "string" + }, + { + "name": "functionAppName", + "in": "path", + "description": "Name of the function app registered with the static site build.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "204": { + "description": "No content." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Detach the user provided function app from the static site build.": { + "$ref": "./examples/DetachUserProvidedFunctionAppFromStaticSiteBuild.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/builds/{environmentName}/zipdeploy": { + "post": { + "tags": [ + "StaticSites" + ], + "summary": "Deploys zipped content to a specific environment of a static site.", + "description": "Description for Deploys zipped content to a specific environment of a static site.", + "operationId": "StaticSites_CreateZipDeploymentForStaticSiteBuild", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "environmentName", + "in": "path", + "description": "Name of the environment.", + "required": true, + "type": "string" + }, + { + "name": "staticSiteZipDeploymentEnvelope", + "in": "body", + "description": "A JSON representation of the StaticSiteZipDeployment properties. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/StaticSiteZipDeploymentARMResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "202": { + "description": "Asynchronous operation in progress." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Deploy a site from a zipped package to a particular static site build": { + "$ref": "./examples/StaticSiteBuildZipDeploy.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/config/appsettings": { + "put": { + "tags": [ + "StaticSites" + ], + "summary": "Creates or updates the app settings of a static site.", + "description": "Description for Creates or updates the app settings of a static site.", + "operationId": "StaticSites_CreateOrUpdateStaticSiteAppSettings", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "appSettings", + "in": "body", + "description": "The dictionary containing the static site app settings to update.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Creates or updates the app settings of a static site.": { + "$ref": "./examples/CreateOrUpdateStaticSiteAppSettings.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/config/functionappsettings": { + "put": { + "tags": [ + "StaticSites" + ], + "summary": "Creates or updates the function app settings of a static site.", + "description": "Description for Creates or updates the function app settings of a static site.", + "operationId": "StaticSites_CreateOrUpdateStaticSiteFunctionAppSettings", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "appSettings", + "in": "body", + "description": "The dictionary containing the static site function app settings to update.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Creates or updates the function app settings of a static site.": { + "$ref": "./examples/CreateOrUpdateStaticSiteFunctionAppSettings.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/createUserInvitation": { + "post": { + "tags": [ + "StaticSites" + ], + "summary": "Creates an invitation link for a user with the role", + "description": "Description for Creates an invitation link for a user with the role", + "operationId": "StaticSites_CreateUserRolesInvitationLink", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "staticSiteUserRolesInvitationEnvelope", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/StaticSiteUserInvitationRequestResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteUserInvitationResponseResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Create an invitation link for a user for a static site": { + "$ref": "./examples/CreateUserRolesInvitationLink.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/customDomains": { + "get": { + "tags": [ + "StaticSites" + ], + "summary": "Gets all static site custom domains for a particular static site.", + "description": "Description for Gets all static site custom domains for a particular static site.", + "operationId": "StaticSites_ListStaticSiteCustomDomains", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site resource to search in.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/StaticSiteCustomDomainOverviewCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List custom domains for a static site": { + "$ref": "./examples/GetStaticSiteCustomDomains.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/customDomains/{domainName}": { + "get": { + "tags": [ + "StaticSites" + ], + "summary": "Gets an existing custom domain for a particular static site.", + "description": "Description for Gets an existing custom domain for a particular static site.", + "operationId": "StaticSites_GetStaticSiteCustomDomain", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site resource to search in.", + "required": true, + "type": "string" + }, + { + "name": "domainName", + "in": "path", + "description": "The custom domain name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/StaticSiteCustomDomainOverviewARMResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get custom domain for a static site": { + "$ref": "./examples/GetStaticSiteCustomDomain.json" + } + } + }, + "put": { + "tags": [ + "StaticSites" + ], + "summary": "Creates a new static site custom domain in an existing resource group and static site.", + "description": "Description for Creates a new static site custom domain in an existing resource group and static site.", + "operationId": "StaticSites_CreateOrUpdateStaticSiteCustomDomain", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "domainName", + "in": "path", + "description": "The custom domain to create.", + "required": true, + "type": "string" + }, + { + "name": "staticSiteCustomDomainRequestPropertiesEnvelope", + "in": "body", + "description": "A JSON representation of the static site custom domain request properties. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/StaticSiteCustomDomainRequestPropertiesARMResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteCustomDomainOverviewARMResource" + } + }, + "202": { + "description": "Asynchronous operation in progress.", + "schema": { + "$ref": "#/definitions/StaticSiteCustomDomainOverviewARMResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or update a custom domain for a static site": { + "$ref": "./examples/CreateOrUpdateStaticSiteCustomDomain.json" + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "StaticSites" + ], + "summary": "Deletes a custom domain.", + "description": "Description for Deletes a custom domain.", + "operationId": "StaticSites_DeleteStaticSiteCustomDomain", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "domainName", + "in": "path", + "description": "The custom domain to delete.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "202": { + "description": "Asynchronous operation in progress." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete a custom domain for a static site": { + "$ref": "./examples/DeleteStaticSiteCustomDomain.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/customDomains/{domainName}/validate": { + "post": { + "tags": [ + "StaticSites" + ], + "summary": "Validates a particular custom domain can be added to a static site.", + "description": "Description for Validates a particular custom domain can be added to a static site.", + "operationId": "StaticSites_ValidateCustomDomainCanBeAddedToStaticSite", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "domainName", + "in": "path", + "description": "The custom domain to validate.", + "required": true, + "type": "string" + }, + { + "name": "staticSiteCustomDomainRequestPropertiesEnvelope", + "in": "body", + "description": "A JSON representation of the static site custom domain request properties. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/StaticSiteCustomDomainRequestPropertiesARMResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "202": { + "description": "Asynchronous operation in progress." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Validate a custom domain for a static site": { + "$ref": "./examples/ValidateStaticSiteCustomDomain.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/detach": { + "post": { + "tags": [ + "StaticSites" + ], + "summary": "Detaches a static site.", + "description": "Description for Detaches a static site.", + "operationId": "StaticSites_DetachStaticSite", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site to detach.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "202": { + "description": "Asynchronous operation in progress." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Detach a static site": { + "$ref": "./examples/DetachStaticSite.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/functions": { + "get": { + "tags": [ + "StaticSites" + ], + "summary": "Gets the functions of a static site.", + "description": "Description for Gets the functions of a static site.", + "operationId": "StaticSites_ListStaticSiteFunctions", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteFunctionOverviewCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Gets the functions of a static site": { + "$ref": "./examples/ListStaticSiteFunctions.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/listAppSettings": { + "post": { + "tags": [ + "StaticSites" + ], + "summary": "Gets the application settings of a static site.", + "description": "Description for Gets the application settings of a static site.", + "operationId": "StaticSites_ListStaticSiteAppSettings", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get app settings of a static site": { + "$ref": "./examples/ListStaticSiteAppSettings.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/listConfiguredRoles": { + "post": { + "tags": [ + "StaticSites" + ], + "summary": "Lists the roles configured for the static site.", + "description": "Description for Lists the roles configured for the static site.", + "operationId": "StaticSites_ListStaticSiteConfiguredRoles", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StringList" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Lists the configured roles for a static site": { + "$ref": "./examples/ListStaticSiteConfiguredRoles.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/listFunctionAppSettings": { + "post": { + "tags": [ + "StaticSites" + ], + "summary": "Gets the application settings of a static site.", + "description": "Description for Gets the application settings of a static site.", + "operationId": "StaticSites_ListStaticSiteFunctionAppSettings", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get function app settings of a static site": { + "$ref": "./examples/ListStaticSiteFunctionAppSettings.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/listSecrets": { + "post": { + "tags": [ + "StaticSites" + ], + "summary": "Lists the secrets for an existing static site.", + "description": "Description for Lists the secrets for an existing static site.", + "operationId": "StaticSites_ListStaticSiteSecrets", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List secrets for a static site": { + "$ref": "./examples/ListStaticSiteSecrets.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/privateEndpointConnections": { + "get": { + "tags": [ + "StaticSites" + ], + "summary": "Gets the list of private endpoint connections associated with a static site", + "description": "Description for Gets the list of private endpoint connections associated with a static site", + "operationId": "StaticSites_GetPrivateEndpointConnectionList", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/PrivateEndpointConnectionCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get a list of private endpoint connections associated with a site.": { + "$ref": "./examples/GetSitePrivateEndpointConnectionList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "StaticSites" + ], + "summary": "Gets a private endpoint connection", + "description": "Description for Gets a private endpoint connection", + "operationId": "StaticSites_GetPrivateEndpointConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "Name of the private endpoint connection.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/RemotePrivateEndpointConnectionARMResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get a private endpoint connection for a site.": { + "$ref": "./examples/GetSitePrivateEndpointConnection.json" + } + } + }, + "put": { + "tags": [ + "StaticSites" + ], + "summary": "Approves or rejects a private endpoint connection", + "description": "Description for Approves or rejects a private endpoint connection", + "operationId": "StaticSites_ApproveOrRejectPrivateEndpointConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "Name of the private endpoint connection.", + "required": true, + "type": "string" + }, + { + "name": "privateEndpointWrapper", + "in": "body", + "description": "Request body.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/PrivateLinkConnectionApprovalRequestResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/RemotePrivateEndpointConnectionARMResource" + } + }, + "202": { + "description": "Asynchronous operation in progress.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/RemotePrivateEndpointConnectionARMResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Approves or rejects a private endpoint connection for a site.": { + "$ref": "./examples/ApproveRejectSitePrivateEndpointConnection.json" + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "StaticSites" + ], + "summary": "Deletes a private endpoint connection", + "description": "Description for Deletes a private endpoint connection", + "operationId": "StaticSites_DeletePrivateEndpointConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "Name of the private endpoint connection.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "type": "object" + } + }, + "202": { + "description": "Asynchronous operation in progress.", + "schema": { + "type": "object" + } + }, + "204": { + "description": "No content.", + "schema": { + "type": "object" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete a private endpoint connection for a site.": { + "$ref": "./examples/DeleteSitePrivateEndpointConnection.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/privateLinkResources": { + "get": { + "tags": [ + "StaticSites" + ], + "summary": "Gets the private link resources", + "description": "Description for Gets the private link resources", + "operationId": "StaticSites_GetPrivateLinkResources", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the site.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/PrivateLinkResourcesWrapper" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get private link resources of a site": { + "$ref": "./examples/GetSitePrivateLinkResources.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/resetapikey": { + "post": { + "tags": [ + "StaticSites" + ], + "summary": "Resets the api key for an existing static site.", + "description": "Description for Resets the api key for an existing static site.", + "operationId": "StaticSites_ResetStaticSiteApiKey", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "resetPropertiesEnvelope", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/StaticSiteResetPropertiesARMResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Reset the api key for a static site": { + "$ref": "./examples/ResetStaticSiteApiKey.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/userProvidedFunctionApps": { + "get": { + "tags": [ + "StaticSites" + ], + "summary": "Gets the details of the user provided function apps registered with a static site", + "description": "Description for Gets the details of the user provided function apps registered with a static site", + "operationId": "StaticSites_GetUserProvidedFunctionAppsForStaticSite", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteUserProvidedFunctionAppsCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get details of the user provided function apps registered with a static site.": { + "$ref": "./examples/GetUserProvidedFunctionAppsForStaticSite.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/userProvidedFunctionApps/{functionAppName}": { + "get": { + "tags": [ + "StaticSites" + ], + "summary": "Gets the details of the user provided function app registered with a static site", + "description": "Description for Gets the details of the user provided function app registered with a static site", + "operationId": "StaticSites_GetUserProvidedFunctionAppForStaticSite", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "functionAppName", + "in": "path", + "description": "Name of the function app registered with the static site.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteUserProvidedFunctionAppARMResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get details of the user provided function app registered with a static site.": { + "$ref": "./examples/GetUserProvidedFunctionAppForStaticSite.json" + } + } + }, + "put": { + "tags": [ + "StaticSites" + ], + "summary": "Register a user provided function app with a static site", + "description": "Description for Register a user provided function app with a static site", + "operationId": "StaticSites_RegisterUserProvidedFunctionAppWithStaticSite", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "functionAppName", + "in": "path", + "description": "Name of the function app to register with the static site.", + "required": true, + "type": "string" + }, + { + "name": "staticSiteUserProvidedFunctionEnvelope", + "in": "body", + "description": "A JSON representation of the user provided function app properties. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/StaticSiteUserProvidedFunctionAppARMResource" + } + }, + { + "name": "isForced", + "in": "query", + "description": "Specify true to force the update of the auth configuration on the function app even if an AzureStaticWebApps provider is already configured on the function app. The default is false.", + "type": "boolean" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteUserProvidedFunctionAppARMResource" + } + }, + "202": { + "description": "Asynchronous operation in progress.", + "schema": { + "$ref": "#/definitions/StaticSiteUserProvidedFunctionAppARMResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Register a user provided function app with a static site": { + "$ref": "./examples/RegisterUserProvidedFunctionAppWithStaticSite.json" + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "StaticSites" + ], + "summary": "Detach the user provided function app from the static site", + "description": "Description for Detach the user provided function app from the static site", + "operationId": "StaticSites_DetachUserProvidedFunctionAppFromStaticSite", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "functionAppName", + "in": "path", + "description": "Name of the function app registered with the static site.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "204": { + "description": "No content." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Detach the user provided function app from the static site.": { + "$ref": "./examples/DetachUserProvidedFunctionAppFromStaticSite.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/zipdeploy": { + "post": { + "tags": [ + "StaticSites" + ], + "summary": "Deploys zipped content to a static site.", + "description": "Description for Deploys zipped content to a static site.", + "operationId": "StaticSites_CreateZipDeploymentForStaticSite", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "staticSiteZipDeploymentEnvelope", + "in": "body", + "description": "A JSON representation of the StaticSiteZipDeployment properties. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/StaticSiteZipDeploymentARMResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "202": { + "description": "Asynchronous operation in progress." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Deploy a site from a zipped package": { + "$ref": "./examples/StaticSiteZipDeploy.json" + } + }, + "x-ms-long-running-operation": true + } + } + }, + "definitions": { + "ArmPlan": { + "description": "The plan object in Azure Resource Manager, represents a marketplace plan.", + "type": "object", + "properties": { + "name": { + "description": "The name.", + "type": "string" + }, + "publisher": { + "description": "The publisher.", + "type": "string" + }, + "product": { + "description": "The product.", + "type": "string" + }, + "promotionCode": { + "description": "The promotion code.", + "type": "string" + }, + "version": { + "description": "Version of product.", + "type": "string" + } + } + }, + "RemotePrivateEndpointConnection": { + "description": "A remote private endpoint connection", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "RemotePrivateEndpointConnection resource specific properties", + "properties": { + "provisioningState": { + "type": "string", + "readOnly": true + }, + "privateEndpoint": { + "$ref": "./CommonDefinitions.json#/definitions/ArmIdWrapper", + "description": "PrivateEndpoint of a remote private endpoint connection" + }, + "privateLinkServiceConnectionState": { + "$ref": "./CommonDefinitions.json#/definitions/PrivateLinkConnectionState" + }, + "ipAddresses": { + "description": "Private IPAddresses mapped to the remote private endpoint", + "type": "array", + "items": { + "type": "string" + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "ResponseMessageEnvelope[RemotePrivateEndpointConnection]": { + "description": "Message envelope that contains the common Azure resource manager properties and the resource provider specific content.", + "type": "object", + "properties": { + "id": { + "description": "Resource Id. Typically ID is populated only for responses to GET requests. Caller is responsible for passing in this\nvalue for GET requests only.\nFor example: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupId}/providers/Microsoft.Web/sites/{sitename}", + "type": "string" + }, + "name": { + "description": "Name of resource.", + "type": "string" + }, + "type": { + "description": "Type of resource e.g \"Microsoft.Web/sites\".", + "type": "string" + }, + "location": { + "description": "Geographical region resource belongs to e.g. SouthCentralUS, SouthEastAsia.", + "type": "string" + }, + "tags": { + "description": "Tags associated with resource.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "plan": { + "$ref": "#/definitions/ArmPlan", + "description": "Azure resource manager plan." + }, + "properties": { + "$ref": "#/definitions/RemotePrivateEndpointConnection", + "description": "Resource specific properties." + }, + "sku": { + "$ref": "./CommonDefinitions.json#/definitions/SkuDescription", + "description": "SKU description of the resource." + }, + "status": { + "description": "Azure-AsyncOperation Status info.", + "type": "string" + }, + "error": { + "$ref": "./CommonDefinitions.json#/definitions/ErrorEntity", + "description": "Azure-AsyncOperation Error info." + }, + "identity": { + "$ref": "./CommonDefinitions.json#/definitions/ManagedServiceIdentity", + "description": "MSI resource" + }, + "zones": { + "description": "Logical Availability Zones the service is hosted in", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "StaticSite": { + "description": "A static site.", + "type": "object", + "properties": { + "defaultHostname": { + "description": "The default autogenerated hostname for the static site.", + "type": "string", + "readOnly": true + }, + "repositoryUrl": { + "description": "URL for the repository of the static site.", + "type": "string" + }, + "branch": { + "description": "The target branch in the repository.", + "type": "string" + }, + "customDomains": { + "description": "The custom domains associated with this static site.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "repositoryToken": { + "description": "A user's github repository token. This is used to setup the Github Actions workflow file and API secrets.", + "type": "string" + }, + "buildProperties": { + "$ref": "#/definitions/StaticSiteBuildProperties", + "description": "Build properties to configure on the repository." + }, + "privateEndpointConnections": { + "description": "Private endpoint connections", + "type": "array", + "items": { + "$ref": "#/definitions/ResponseMessageEnvelope[RemotePrivateEndpointConnection]" + }, + "readOnly": true + }, + "stagingEnvironmentPolicy": { + "description": "State indicating whether staging environments are allowed or not allowed for a static web app.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "StagingEnvironmentPolicy", + "modelAsString": false + } + }, + "allowConfigFileUpdates": { + "description": "false if config file is locked for this static web app; otherwise, true.", + "type": "boolean" + }, + "templateProperties": { + "$ref": "#/definitions/StaticSiteTemplateOptions", + "description": "Template options for generating a new repository." + }, + "contentDistributionEndpoint": { + "description": "The content distribution endpoint for the static site.", + "type": "string", + "readOnly": true + }, + "keyVaultReferenceIdentity": { + "description": "Identity to use for Key Vault Reference authentication.", + "type": "string", + "readOnly": true + }, + "userProvidedFunctionApps": { + "description": "User provided function apps registered with the static site", + "type": "array", + "items": { + "$ref": "#/definitions/StaticSiteUserProvidedFunctionApp" + }, + "readOnly": true + }, + "provider": { + "description": "The provider that submitted the last deployment to the primary environment of the static site.", + "type": "string", + "readOnly": true + } + } + }, + "StaticSiteARMResource": { + "description": "Static Site ARM resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/StaticSite", + "description": "Core resource properties", + "x-ms-client-flatten": true + }, + "sku": { + "$ref": "./CommonDefinitions.json#/definitions/SkuDescription" + }, + "identity": { + "$ref": "./CommonDefinitions.json#/definitions/ManagedServiceIdentity" + } + } + }, + "StaticSiteBuildARMResource": { + "description": "Static Site Build ARM resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "StaticSiteBuildARMResource resource specific properties", + "properties": { + "buildId": { + "description": "An identifier for the static site build.", + "type": "string", + "readOnly": true + }, + "sourceBranch": { + "description": "The source branch.", + "type": "string", + "readOnly": true + }, + "pullRequestTitle": { + "description": "The title of a pull request that a static site build is related to.", + "type": "string", + "readOnly": true + }, + "hostname": { + "description": "The hostname for a static site build.", + "type": "string", + "readOnly": true + }, + "createdTimeUtc": { + "format": "date-time", + "description": "When this build was created.", + "type": "string", + "readOnly": true + }, + "lastUpdatedOn": { + "format": "date-time", + "description": "When this build was updated.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "The status of the static site build.", + "enum": [ + "WaitingForDeployment", + "Uploading", + "Deploying", + "Ready", + "Failed", + "Deleting", + "Detached" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "BuildStatus", + "modelAsString": true + } + }, + "userProvidedFunctionApps": { + "description": "User provided function apps registered with the static site build", + "type": "array", + "items": { + "$ref": "#/definitions/StaticSiteUserProvidedFunctionApp" + }, + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "StaticSiteBuildCollection": { + "description": "Collection of static site builds.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/StaticSiteBuildARMResource" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "StaticSiteBuildProperties": { + "description": "Build properties for the static site.", + "type": "object", + "properties": { + "appLocation": { + "description": "The path to the app code within the repository.", + "type": "string" + }, + "apiLocation": { + "description": "The path to the api code within the repository.", + "type": "string" + }, + "appArtifactLocation": { + "description": "Deprecated: The path of the app artifacts after building (deprecated in favor of OutputLocation)", + "type": "string" + }, + "outputLocation": { + "description": "The output path of the app after building.", + "type": "string" + }, + "appBuildCommand": { + "description": "A custom command to run during deployment of the static content application.", + "type": "string" + }, + "apiBuildCommand": { + "description": "A custom command to run during deployment of the Azure Functions API application.", + "type": "string" + }, + "skipGithubActionWorkflowGeneration": { + "description": "Skip Github Action workflow generation.", + "type": "boolean" + }, + "githubActionSecretNameOverride": { + "description": "Github Action secret name override.", + "type": "string" + } + } + }, + "StaticSiteCollection": { + "description": "Collection of static sites.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/StaticSiteARMResource" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "StaticSiteCustomDomainOverviewARMResource": { + "description": "Static Site Custom Domain Overview ARM resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "StaticSiteCustomDomainOverviewARMResource resource specific properties", + "properties": { + "domainName": { + "description": "The domain name for the static site custom domain.", + "type": "string", + "readOnly": true + }, + "createdOn": { + "format": "date-time", + "description": "The date and time on which the custom domain was created for the static site.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "The status of the custom domain", + "enum": [ + "RetrievingValidationToken", + "Validating", + "Adding", + "Ready", + "Failed", + "Deleting" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "CustomDomainStatus", + "modelAsString": true + } + }, + "validationToken": { + "description": "The TXT record validation token", + "type": "string", + "readOnly": true + }, + "errorMessage": { + "type": "string", + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "StaticSiteCustomDomainOverviewCollection": { + "description": "Collection of static site custom domains.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/StaticSiteCustomDomainOverviewARMResource" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "StaticSiteCustomDomainRequestPropertiesARMResource": { + "description": "Static Site Custom Domain Request Properties ARM resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "StaticSiteCustomDomainRequestPropertiesARMResource resource specific properties", + "properties": { + "validationMethod": { + "description": "Validation method for adding a custom domain", + "default": "cname-delegation", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "StaticSiteFunctionOverviewARMResource": { + "description": "Static Site Function Overview ARM resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "StaticSiteFunctionOverviewARMResource resource specific properties", + "properties": { + "functionName": { + "description": "The name for the function", + "type": "string", + "readOnly": true + }, + "triggerType": { + "description": "The trigger type of the function", + "enum": [ + "HttpTrigger", + "Unknown" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "TriggerTypes", + "modelAsString": true + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "StaticSiteFunctionOverviewCollection": { + "description": "Collection of static site functions.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/StaticSiteFunctionOverviewARMResource" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "StaticSitePatchResource": { + "description": "ARM resource for a static site when patching", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/StaticSite", + "description": "Core resource properties", + "x-ms-client-flatten": true + } + } + }, + "StaticSiteResetPropertiesARMResource": { + "description": "Static Site Reset Properties ARM resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "StaticSiteResetPropertiesARMResource resource specific properties", + "properties": { + "repositoryToken": { + "description": "The token which proves admin privileges to the repository.", + "type": "string" + }, + "shouldUpdateRepository": { + "description": "Determines whether the repository should be updated with the new properties.", + "type": "boolean" + } + }, + "x-ms-client-flatten": true + } + } + }, + "StaticSiteTemplateOptions": { + "description": "Template Options for the static site.", + "type": "object", + "properties": { + "templateRepositoryUrl": { + "description": "URL of the template repository. The newly generated repository will be based on this one.", + "type": "string" + }, + "owner": { + "description": "Owner of the newly generated repository.", + "type": "string" + }, + "repositoryName": { + "description": "Name of the newly generated repository.", + "type": "string" + }, + "description": { + "description": "Description of the newly generated repository.", + "type": "string" + }, + "isPrivate": { + "description": "Whether or not the newly generated repository is a private repository. Defaults to false (i.e. public).", + "type": "boolean" + } + } + }, + "StaticSiteUserARMResource": { + "description": "Static Site User ARM resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "StaticSiteUserARMResource resource specific properties", + "properties": { + "provider": { + "description": "The identity provider for the static site user.", + "type": "string", + "readOnly": true + }, + "userId": { + "description": "The user id for the static site user.", + "type": "string", + "readOnly": true + }, + "displayName": { + "description": "The display name for the static site user.", + "type": "string", + "readOnly": true + }, + "roles": { + "description": "The roles for the static site user, in free-form string format", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "StaticSiteUserCollection": { + "description": "Collection of static site custom users.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/StaticSiteUserARMResource" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "StaticSiteUserInvitationRequestResource": { + "description": "Static sites user roles invitation resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "StaticSiteUserInvitationRequestResource resource specific properties", + "properties": { + "domain": { + "description": "The domain name for the static site custom domain.", + "type": "string" + }, + "provider": { + "description": "The identity provider for the static site user.", + "type": "string" + }, + "userDetails": { + "description": "The user id for the static site user.", + "type": "string" + }, + "roles": { + "description": "The roles for the static site user, in free-form string format", + "type": "string" + }, + "numHoursToExpiration": { + "format": "int32", + "description": "The number of hours the sas token stays valid", + "type": "integer" + } + }, + "x-ms-client-flatten": true + } + } + }, + "StaticSiteUserInvitationResponseResource": { + "description": "Static sites user roles invitation link resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "StaticSiteUserInvitationResponseResource resource specific properties", + "properties": { + "expiresOn": { + "format": "date-time", + "description": "The expiration time of the invitation", + "type": "string", + "readOnly": true + }, + "invitationUrl": { + "description": "The url for the invitation link", + "type": "string", + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "StaticSiteUserProvidedFunctionApp": { + "description": "A static site user provided function.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "StaticSiteUserProvidedFunctionApp resource specific properties", + "properties": { + "functionAppResourceId": { + "description": "The resource id of the function app registered with the static site", + "type": "string" + }, + "functionAppRegion": { + "description": "The region of the function app registered with the static site", + "type": "string" + }, + "createdOn": { + "format": "date-time", + "description": "The date and time on which the function app was registered with the static site.", + "type": "string", + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "StaticSiteUserProvidedFunctionAppARMResource": { + "description": "Static Site User Provided Function App ARM resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "StaticSiteUserProvidedFunctionAppARMResource resource specific properties", + "properties": { + "functionAppResourceId": { + "description": "The resource id of the function app registered with the static site", + "type": "string" + }, + "functionAppRegion": { + "description": "The region of the function app registered with the static site", + "type": "string" + }, + "createdOn": { + "format": "date-time", + "description": "The date and time on which the function app was registered with the static site.", + "type": "string", + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "StaticSiteUserProvidedFunctionAppsCollection": { + "description": "Collection of static site user provided function apps.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/StaticSiteUserProvidedFunctionAppARMResource" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "StaticSiteZipDeployment": { + "description": "A static site zip deployment.", + "type": "object", + "properties": { + "appZipUrl": { + "description": "URL for the zipped app content", + "type": "string" + }, + "apiZipUrl": { + "description": "URL for the zipped api content", + "type": "string" + }, + "deploymentTitle": { + "description": "A title to label the deployment", + "type": "string" + }, + "provider": { + "description": "The provider submitting this deployment", + "type": "string" + }, + "functionLanguage": { + "description": "The language of the api content, if it exists", + "type": "string" + } + } + }, + "StaticSiteZipDeploymentARMResource": { + "description": "Static site zip deployment ARM resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/StaticSiteZipDeployment", + "description": "Core resource properties", + "x-ms-client-flatten": true + } + } + }, + "StaticSitesWorkflowPreview": { + "description": "Preview for the Static Site Workflow to be generated", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "StaticSitesWorkflowPreview resource specific properties", + "properties": { + "path": { + "description": "The path for the workflow file to be generated", + "type": "string", + "readOnly": true + }, + "contents": { + "description": "The contents for the workflow file to be generated", + "type": "string", + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "StaticSitesWorkflowPreviewRequest": { + "description": "Request entity for previewing the Static Site workflow", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "StaticSitesWorkflowPreviewRequest resource specific properties", + "properties": { + "repositoryUrl": { + "description": "URL for the repository of the static site.", + "type": "string" + }, + "branch": { + "description": "The target branch in the repository.", + "type": "string" + }, + "buildProperties": { + "$ref": "#/definitions/StaticSiteBuildProperties", + "description": "Build properties to configure on the repository." + } + }, + "x-ms-client-flatten": true + } + } + }, + "StringList": { + "description": "String list resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "List of string resources.", + "type": "array", + "items": { + "type": "string" + } + } + } + } + }, + "parameters": { + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Your Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).", + "required": true, + "type": "string" + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "Name of the resource group to which the resource belongs.", + "required": true, + "type": "string", + "maxLength": 90, + "minLength": 1, + "pattern": "^[-\\w\\._\\(\\)]+[^\\.]$", + "x-ms-parameter-location": "method" + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "API Version", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/WebApps.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/WebApps.json new file mode 100644 index 000000000000..3a91f990bd71 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/WebApps.json @@ -0,0 +1,26238 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-01-01", + "title": "WebApps API Client" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Web/sites": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get all apps for a subscription.", + "description": "Description for Get all apps for a subscription.", + "operationId": "WebApps_List", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/WebAppCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets all web, mobile, and API apps in the specified resource group.", + "description": "Description for Gets all web, mobile, and API apps in the specified resource group.", + "operationId": "WebApps_ListByResourceGroup", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "includeSlots", + "in": "query", + "description": "Specify true to include deployment slots in results. The default is false, which only gives you the production slot of all apps.", + "type": "boolean" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/WebAppCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the details of a web, mobile, or API app.", + "description": "Description for Gets the details of a web, mobile, or API app.", + "operationId": "WebApps_Get", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Site" + } + }, + "404": { + "description": "Not found." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Creates a new web, mobile, or API app in an existing resource group, or updates an existing app.", + "description": "Description for Creates a new web, mobile, or API app in an existing resource group, or updates an existing app.", + "operationId": "WebApps_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Unique name of the app to create or update. To create or update a deployment slot, use the {slot} parameter.", + "required": true, + "type": "string" + }, + { + "name": "siteEnvelope", + "in": "body", + "description": "A JSON representation of the app properties. See example.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Site" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Site" + } + }, + "202": { + "description": "Asynchronous operation in progress.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Site" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Deletes a web, mobile, or API app, or one of the deployment slots.", + "description": "Description for Deletes a web, mobile, or API app, or one of the deployment slots.", + "operationId": "WebApps_Delete", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app to delete.", + "required": true, + "type": "string" + }, + { + "name": "deleteMetrics", + "in": "query", + "description": "If true, web app metrics are also deleted.", + "type": "boolean" + }, + { + "name": "deleteEmptyServerFarm", + "in": "query", + "description": "Specify false if you want to keep empty App Service plan. By default, empty App Service plan is deleted.", + "type": "boolean" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted web app." + }, + "204": { + "description": "Successfully deleted web app." + }, + "404": { + "description": "Web app not found." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "WebApps" + ], + "summary": "Creates a new web, mobile, or API app in an existing resource group, or updates an existing app.", + "description": "Description for Creates a new web, mobile, or API app in an existing resource group, or updates an existing app.", + "operationId": "WebApps_Update", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Unique name of the app to create or update. To create or update a deployment slot, use the {slot} parameter.", + "required": true, + "type": "string" + }, + { + "name": "siteEnvelope", + "in": "body", + "description": "A JSON representation of the app properties. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/SitePatchResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Site" + } + }, + "202": { + "description": "Asynchronous operation in progress.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Site" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/analyzeCustomHostname": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Analyze a custom hostname.", + "description": "Description for Analyze a custom hostname.", + "operationId": "WebApps_AnalyzeCustomHostname", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "hostName", + "in": "query", + "description": "Custom hostname.", + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CustomHostnameAnalysisResult" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/applySlotConfig": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Applies the configuration settings from the target slot onto the current slot.", + "description": "Description for Applies the configuration settings from the target slot onto the current slot.", + "operationId": "WebApps_ApplySlotConfigToProduction", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slotSwapEntity", + "in": "body", + "description": "JSON object that contains the target slot name. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/CsmSlotEntity" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/backup": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Creates a backup of an app.", + "description": "Description for Creates a backup of an app.", + "operationId": "WebApps_Backup", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "request", + "in": "body", + "description": "Backup configuration. You can use the JSON response from the POST action as input here.", + "required": true, + "schema": { + "$ref": "#/definitions/BackupRequest" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupItem" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/backups": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets existing backups of an app.", + "description": "Description for Gets existing backups of an app.", + "operationId": "WebApps_ListBackups", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupItemCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/backups/{backupId}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a backup of an app by its ID.", + "description": "Description for Gets a backup of an app by its ID.", + "operationId": "WebApps_GetBackupStatus", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "backupId", + "in": "path", + "description": "ID of the backup.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupItem" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Deletes a backup of an app by its ID.", + "description": "Description for Deletes a backup of an app by its ID.", + "operationId": "WebApps_DeleteBackup", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "backupId", + "in": "path", + "description": "ID of the backup.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted web app backup item." + }, + "404": { + "description": "Web app backup item does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/backups/{backupId}/list": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Gets status of a web app backup that may be in progress, including secrets associated with the backup, such as the Azure Storage SAS URL. Also can be used to update the SAS URL for the backup if a new URL is passed in the request body.", + "description": "Description for Gets status of a web app backup that may be in progress, including secrets associated with the backup, such as the Azure Storage SAS URL. Also can be used to update the SAS URL for the backup if a new URL is passed in the request body.", + "operationId": "WebApps_ListBackupStatusSecrets", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "backupId", + "in": "path", + "description": "ID of backup.", + "required": true, + "type": "string" + }, + { + "name": "request", + "in": "body", + "description": "Information on backup request.", + "required": true, + "schema": { + "$ref": "#/definitions/BackupRequest" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupItem" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/backups/{backupId}/restore": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Restores a specific backup to another app (or deployment slot, if specified).", + "description": "Description for Restores a specific backup to another app (or deployment slot, if specified).", + "operationId": "WebApps_Restore", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "backupId", + "in": "path", + "description": "ID of the backup.", + "required": true, + "type": "string" + }, + { + "name": "request", + "in": "body", + "description": "Information on restore request .", + "required": true, + "schema": { + "$ref": "#/definitions/RestoreRequest" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Restore operation started." + }, + "200": { + "description": "Restore operation started." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/basicPublishingCredentialsPolicies": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Returns whether Scm basic auth is allowed and whether Ftp is allowed for a given site.", + "description": "Description for Returns whether Scm basic auth is allowed and whether Ftp is allowed for a given site.", + "operationId": "WebApps_GetBasicPublishingCredentialsPolicies", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CsmPublishingCredentialsPoliciesCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List Publishing Credentials Policies": { + "$ref": "./examples/ListPublishingCredentialsPolicies.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/basicPublishingCredentialsPolicies/ftp": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Returns whether FTP is allowed on the site or not.", + "description": "Description for Returns whether FTP is allowed on the site or not.", + "operationId": "WebApps_GetFtpAllowed", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CsmPublishingCredentialsPoliciesEntity" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get FTP Allowed": { + "$ref": "./examples/GetPublishingCredentialsPolicy.json" + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Updates whether FTP is allowed on the site or not.", + "description": "Description for Updates whether FTP is allowed on the site or not.", + "operationId": "WebApps_UpdateFtpAllowed", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "csmPublishingAccessPoliciesEntity", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CsmPublishingCredentialsPoliciesEntity" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CsmPublishingCredentialsPoliciesEntity" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Update FTP Allowed": { + "$ref": "./examples/UpdatePublishingCredentialsPolicy.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/basicPublishingCredentialsPolicies/scm": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Returns whether Scm basic auth is allowed on the site or not.", + "description": "Description for Returns whether Scm basic auth is allowed on the site or not.", + "operationId": "WebApps_GetScmAllowed", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CsmPublishingCredentialsPoliciesEntity" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get SCM Allowed": { + "$ref": "./examples/GetPublishingCredentialsPolicy.json" + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Updates whether user publishing credentials are allowed on the site or not.", + "description": "Description for Updates whether user publishing credentials are allowed on the site or not.", + "operationId": "WebApps_UpdateScmAllowed", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "csmPublishingAccessPoliciesEntity", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CsmPublishingCredentialsPoliciesEntity" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CsmPublishingCredentialsPoliciesEntity" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Update SCM Allowed": { + "$ref": "./examples/UpdatePublishingCredentialsPolicy.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "List the configurations of an app", + "description": "Description for List the configurations of an app", + "operationId": "WebApps_ListConfigurations", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SiteConfigResourceCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/appsettings": { + "put": { + "tags": [ + "WebApps" + ], + "summary": "Replaces the application settings of an app.", + "description": "Description for Replaces the application settings of an app.", + "operationId": "WebApps_UpdateApplicationSettings", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "appSettings", + "in": "body", + "description": "Application settings of the app.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/appsettings/list": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Gets the application settings of an app.", + "description": "Description for Gets the application settings of an app.", + "operationId": "WebApps_ListApplicationSettings", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/authsettings": { + "put": { + "tags": [ + "WebApps" + ], + "summary": "Updates the Authentication / Authorization settings associated with web app.", + "description": "Description for Updates the Authentication / Authorization settings associated with web app.", + "operationId": "WebApps_UpdateAuthSettings", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "siteAuthSettings", + "in": "body", + "description": "Auth settings associated with web app.", + "required": true, + "schema": { + "$ref": "#/definitions/SiteAuthSettings" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SiteAuthSettings" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/authsettings/list": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Gets the Authentication/Authorization settings of an app.", + "description": "Description for Gets the Authentication/Authorization settings of an app.", + "operationId": "WebApps_GetAuthSettings", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SiteAuthSettings" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/authsettingsV2": { + "put": { + "tags": [ + "WebApps" + ], + "summary": "Updates site's Authentication / Authorization settings for apps via the V2 format", + "description": "Description for Updates site's Authentication / Authorization settings for apps via the V2 format", + "operationId": "WebApps_UpdateAuthSettingsV2", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "siteAuthSettingsV2", + "in": "body", + "description": "Auth settings associated with web app.", + "required": true, + "schema": { + "$ref": "#/definitions/SiteAuthSettingsV2" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SiteAuthSettingsV2" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/authsettingsV2/list": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets site's Authentication / Authorization settings for apps via the V2 format", + "description": "Description for Gets site's Authentication / Authorization settings for apps via the V2 format", + "operationId": "WebApps_GetAuthSettingsV2", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SiteAuthSettingsV2" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/azurestorageaccounts": { + "put": { + "tags": [ + "WebApps" + ], + "summary": "Updates the Azure storage account configurations of an app.", + "description": "Description for Updates the Azure storage account configurations of an app.", + "operationId": "WebApps_UpdateAzureStorageAccounts", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "azureStorageAccounts", + "in": "body", + "description": "Azure storage accounts of the app.", + "required": true, + "schema": { + "$ref": "#/definitions/AzureStoragePropertyDictionaryResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AzureStoragePropertyDictionaryResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/azurestorageaccounts/list": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Gets the Azure storage account configurations of an app.", + "description": "Description for Gets the Azure storage account configurations of an app.", + "operationId": "WebApps_ListAzureStorageAccounts", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AzureStoragePropertyDictionaryResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/backup": { + "put": { + "tags": [ + "WebApps" + ], + "summary": "Updates the backup configuration of an app.", + "description": "Description for Updates the backup configuration of an app.", + "operationId": "WebApps_UpdateBackupConfiguration", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "request", + "in": "body", + "description": "Edited backup configuration.", + "required": true, + "schema": { + "$ref": "#/definitions/BackupRequest" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupRequest" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Deletes the backup configuration of an app.", + "description": "Description for Deletes the backup configuration of an app.", + "operationId": "WebApps_DeleteBackupConfiguration", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted backup configuration." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/backup/list": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Gets the backup configuration of an app.", + "description": "Description for Gets the backup configuration of an app.", + "operationId": "WebApps_GetBackupConfiguration", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupRequest" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/configreferences/appsettings": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the config reference app settings and status of an app", + "description": "Description for Gets the config reference app settings and status of an app", + "operationId": "WebApps_GetAppSettingsKeyVaultReferences", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ApiKVReferenceCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Azure Key Vault references for app settings": { + "$ref": "./examples/GetKeyVaultReferencesForAppSettings.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/configreferences/appsettings/{appSettingKey}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the config reference and status of an app", + "description": "Description for Gets the config reference and status of an app", + "operationId": "WebApps_GetAppSettingKeyVaultReference", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "appSettingKey", + "in": "path", + "description": "App Setting key name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ApiKVReference" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Azure Key Vault app setting reference": { + "$ref": "./examples/GetKeyVaultReferencesForAppSetting.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/configreferences/connectionstrings": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the config reference app settings and status of an app", + "description": "Description for Gets the config reference app settings and status of an app", + "operationId": "WebApps_GetSiteConnectionStringKeyVaultReferences", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ApiKVReferenceCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/configreferences/connectionstrings/{connectionStringKey}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the config reference and status of an app", + "description": "Description for Gets the config reference and status of an app", + "operationId": "WebApps_GetSiteConnectionStringKeyVaultReference", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "connectionStringKey", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ApiKVReference" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/connectionstrings": { + "put": { + "tags": [ + "WebApps" + ], + "summary": "Replaces the connection strings of an app.", + "description": "Description for Replaces the connection strings of an app.", + "operationId": "WebApps_UpdateConnectionStrings", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "connectionStrings", + "in": "body", + "description": "Connection strings of the app or deployment slot. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/ConnectionStringDictionary" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ConnectionStringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/connectionstrings/list": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Gets the connection strings of an app.", + "description": "Description for Gets the connection strings of an app.", + "operationId": "WebApps_ListConnectionStrings", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ConnectionStringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/logs": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the logging configuration of an app.", + "description": "Description for Gets the logging configuration of an app.", + "operationId": "WebApps_GetDiagnosticLogsConfiguration", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SiteLogsConfig" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Updates the logging configuration of an app.", + "description": "Description for Updates the logging configuration of an app.", + "operationId": "WebApps_UpdateDiagnosticLogsConfig", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "siteLogsConfig", + "in": "body", + "description": "A SiteLogsConfig JSON object that contains the logging configuration to change in the \"properties\" property.", + "required": true, + "schema": { + "$ref": "#/definitions/SiteLogsConfig" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SiteLogsConfig" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/metadata": { + "put": { + "tags": [ + "WebApps" + ], + "summary": "Replaces the metadata of an app.", + "description": "Description for Replaces the metadata of an app.", + "operationId": "WebApps_UpdateMetadata", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "metadata", + "in": "body", + "description": "Edited metadata of the app or deployment slot. See example.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/metadata/list": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Gets the metadata of an app.", + "description": "Description for Gets the metadata of an app.", + "operationId": "WebApps_ListMetadata", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/publishingcredentials/list": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Gets the Git/FTP publishing credentials of an app.", + "description": "Description for Gets the Git/FTP publishing credentials of an app.", + "operationId": "WebApps_ListPublishingCredentials", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/User" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/pushsettings": { + "put": { + "tags": [ + "WebApps" + ], + "summary": "Updates the Push settings associated with web app.", + "description": "Description for Updates the Push settings associated with web app.", + "operationId": "WebApps_UpdateSitePushSettings", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "pushSettings", + "in": "body", + "description": "Push settings associated with web app.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/PushSettings" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/PushSettings" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/pushsettings/list": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Gets the Push settings associated with web app.", + "description": "Description for Gets the Push settings associated with web app.", + "operationId": "WebApps_ListSitePushSettings", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/PushSettings" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/slotConfigNames": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the names of app settings and connection strings that stick to the slot (not swapped).", + "description": "Description for Gets the names of app settings and connection strings that stick to the slot (not swapped).", + "operationId": "WebApps_ListSlotConfigurationNames", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SlotConfigNamesResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Updates the names of application settings and connection string that remain with the slot during swap operation.", + "description": "Description for Updates the names of application settings and connection string that remain with the slot during swap operation.", + "operationId": "WebApps_UpdateSlotConfigurationNames", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slotConfigNames", + "in": "body", + "description": "Names of application settings and connection strings. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/SlotConfigNamesResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SlotConfigNamesResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/web": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the configuration of an app, such as platform version and bitness, default documents, virtual applications, Always On, etc.", + "description": "Description for Gets the configuration of an app, such as platform version and bitness, default documents, virtual applications, Always On, etc.", + "operationId": "WebApps_GetConfiguration", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SiteConfigResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Updates the configuration of an app.", + "description": "Description for Updates the configuration of an app.", + "operationId": "WebApps_CreateOrUpdateConfiguration", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "siteConfig", + "in": "body", + "description": "JSON representation of a SiteConfig object. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/SiteConfigResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SiteConfigResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "WebApps" + ], + "summary": "Updates the configuration of an app.", + "description": "Description for Updates the configuration of an app.", + "operationId": "WebApps_UpdateConfiguration", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "siteConfig", + "in": "body", + "description": "JSON representation of a SiteConfig object. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/SiteConfigResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SiteConfigResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/web/snapshots": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a list of web app configuration snapshots identifiers. Each element of the list contains a timestamp and the ID of the snapshot.", + "description": "Description for Gets a list of web app configuration snapshots identifiers. Each element of the list contains a timestamp and the ID of the snapshot.", + "operationId": "WebApps_ListConfigurationSnapshotInfo", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SiteConfigurationSnapshotInfoCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/web/snapshots/{snapshotId}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a snapshot of the configuration of an app at a previous point in time.", + "description": "Description for Gets a snapshot of the configuration of an app at a previous point in time.", + "operationId": "WebApps_GetConfigurationSnapshot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "snapshotId", + "in": "path", + "description": "The ID of the snapshot to read.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SiteConfigResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/web/snapshots/{snapshotId}/recover": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Reverts the configuration of an app to a previous snapshot.", + "description": "Description for Reverts the configuration of an app to a previous snapshot.", + "operationId": "WebApps_RecoverSiteConfigurationSnapshot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "snapshotId", + "in": "path", + "description": "The ID of the snapshot to read.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/containerlogs": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Gets the last lines of docker logs for the given site", + "description": "Description for Gets the last lines of docker logs for the given site", + "operationId": "WebApps_GetWebSiteContainerLogs", + "produces": [ + "application/octet-stream" + ], + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "200": { + "description": "OK", + "schema": { + "type": "file" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/containerlogs/zip/download": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Gets the ZIP archived docker log files for the given site", + "description": "Description for Gets the ZIP archived docker log files for the given site", + "operationId": "WebApps_GetContainerLogsZip", + "produces": [ + "application/zip" + ], + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "200": { + "description": "OK", + "schema": { + "type": "file" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/continuouswebjobs": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "List continuous web jobs for an app, or a deployment slot.", + "description": "Description for List continuous web jobs for an app, or a deployment slot.", + "operationId": "WebApps_ListContinuousWebJobs", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ContinuousWebJobCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/continuouswebjobs/{webJobName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a continuous web job by its ID for an app, or a deployment slot.", + "description": "Description for Gets a continuous web job by its ID for an app, or a deployment slot.", + "operationId": "WebApps_GetContinuousWebJob", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "webJobName", + "in": "path", + "description": "Name of Web Job.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Found continuous web job.", + "schema": { + "$ref": "#/definitions/ContinuousWebJob" + } + }, + "404": { + "description": "Continuous web job does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Delete a continuous web job by its ID for an app, or a deployment slot.", + "description": "Description for Delete a continuous web job by its ID for an app, or a deployment slot.", + "operationId": "WebApps_DeleteContinuousWebJob", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "webJobName", + "in": "path", + "description": "Name of Web Job.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted continuous web job." + }, + "204": { + "description": "Continuous web job does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/continuouswebjobs/{webJobName}/start": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Start a continuous web job for an app, or a deployment slot.", + "description": "Description for Start a continuous web job for an app, or a deployment slot.", + "operationId": "WebApps_StartContinuousWebJob", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "webJobName", + "in": "path", + "description": "Name of Web Job.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Found continuous web job." + }, + "404": { + "description": "Continuous web job does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/continuouswebjobs/{webJobName}/stop": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Stop a continuous web job for an app, or a deployment slot.", + "description": "Description for Stop a continuous web job for an app, or a deployment slot.", + "operationId": "WebApps_StopContinuousWebJob", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "webJobName", + "in": "path", + "description": "Name of Web Job.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Found continuous web job." + }, + "404": { + "description": "Continuous web job does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/deployments": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "List deployments for an app, or a deployment slot.", + "description": "Description for List deployments for an app, or a deployment slot.", + "operationId": "WebApps_ListDeployments", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DeploymentCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/deployments/{id}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get a deployment by its ID for an app, or a deployment slot.", + "description": "Description for Get a deployment by its ID for an app, or a deployment slot.", + "operationId": "WebApps_GetDeployment", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "id", + "in": "path", + "description": "Deployment ID.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Deployment" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Create a deployment for an app, or a deployment slot.", + "description": "Description for Create a deployment for an app, or a deployment slot.", + "operationId": "WebApps_CreateDeployment", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "id", + "in": "path", + "description": "ID of an existing deployment.", + "required": true, + "type": "string" + }, + { + "name": "deployment", + "in": "body", + "description": "Deployment details.", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Deployment" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Delete a deployment by its ID for an app, or a deployment slot.", + "description": "Description for Delete a deployment by its ID for an app, or a deployment slot.", + "operationId": "WebApps_DeleteDeployment", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "id", + "in": "path", + "description": "Deployment ID.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted deployment." + }, + "204": { + "description": "Deployment does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/deployments/{id}/log": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "List deployment log for specific deployment for an app, or a deployment slot.", + "description": "Description for List deployment log for specific deployment for an app, or a deployment slot.", + "operationId": "WebApps_ListDeploymentLog", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "id", + "in": "path", + "description": "The ID of a specific deployment. This is the value of the name property in the JSON response from \"GET /api/sites/{siteName}/deployments\".", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Deployment" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/discoverbackup": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Discovers an existing app backup that can be restored from a blob in Azure storage. Use this to get information about the databases stored in a backup.", + "description": "Description for Discovers an existing app backup that can be restored from a blob in Azure storage. Use this to get information about the databases stored in a backup.", + "operationId": "WebApps_DiscoverBackup", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "request", + "in": "body", + "description": "A RestoreRequest object that includes Azure storage URL and blog name for discovery of backup.", + "required": true, + "schema": { + "$ref": "#/definitions/RestoreRequest" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RestoreRequest" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/domainOwnershipIdentifiers": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Lists ownership identifiers for domain associated with web app.", + "description": "Description for Lists ownership identifiers for domain associated with web app.", + "operationId": "WebApps_ListDomainOwnershipIdentifiers", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/IdentifierCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/domainOwnershipIdentifiers/{domainOwnershipIdentifierName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get domain ownership identifier for web app.", + "description": "Description for Get domain ownership identifier for web app.", + "operationId": "WebApps_GetDomainOwnershipIdentifier", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "domainOwnershipIdentifierName", + "in": "path", + "description": "Name of domain ownership identifier.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Identifier" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Creates a domain ownership identifier for web app, or updates an existing ownership identifier.", + "description": "Description for Creates a domain ownership identifier for web app, or updates an existing ownership identifier.", + "operationId": "WebApps_CreateOrUpdateDomainOwnershipIdentifier", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "domainOwnershipIdentifierName", + "in": "path", + "description": "Name of domain ownership identifier.", + "required": true, + "type": "string" + }, + { + "name": "domainOwnershipIdentifier", + "in": "body", + "description": "A JSON representation of the domain ownership properties.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Identifier" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Identifier" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Deletes a domain ownership identifier for a web app.", + "description": "Description for Deletes a domain ownership identifier for a web app.", + "operationId": "WebApps_DeleteDomainOwnershipIdentifier", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "domainOwnershipIdentifierName", + "in": "path", + "description": "Name of domain ownership identifier.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted domain ownership identifier." + }, + "204": { + "description": "Domain ownership identifier does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "WebApps" + ], + "summary": "Creates a domain ownership identifier for web app, or updates an existing ownership identifier.", + "description": "Description for Creates a domain ownership identifier for web app, or updates an existing ownership identifier.", + "operationId": "WebApps_UpdateDomainOwnershipIdentifier", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "domainOwnershipIdentifierName", + "in": "path", + "description": "Name of domain ownership identifier.", + "required": true, + "type": "string" + }, + { + "name": "domainOwnershipIdentifier", + "in": "body", + "description": "A JSON representation of the domain ownership properties.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Identifier" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Identifier" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/extensions/MSDeploy": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get the status of the last MSDeploy operation.", + "description": "Description for Get the status of the last MSDeploy operation.", + "operationId": "WebApps_GetMSDeployStatus", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MSDeployStatus" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Invoke the MSDeploy web app extension.", + "description": "Description for Invoke the MSDeploy web app extension.", + "operationId": "WebApps_CreateMSDeployOperation", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "MSDeploy", + "in": "body", + "description": "Details of MSDeploy operation", + "required": true, + "schema": { + "$ref": "#/definitions/MSDeploy" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Deployment is scheduled.", + "schema": { + "$ref": "#/definitions/MSDeployStatus" + } + }, + "409": { + "description": "Another deployment is in progress." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/extensions/MSDeploy/log": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get the MSDeploy Log for the last MSDeploy operation.", + "description": "Description for Get the MSDeploy Log for the last MSDeploy operation.", + "operationId": "WebApps_GetMSDeployLog", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "MSDeploy log returned.", + "schema": { + "$ref": "#/definitions/MSDeployLog" + } + }, + "404": { + "description": "MSDeploy log not found." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/functions": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "List the functions for a web site, or a deployment slot.", + "description": "Description for List the functions for a web site, or a deployment slot.", + "operationId": "WebApps_ListFunctions", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Function information returned.", + "schema": { + "$ref": "#/definitions/FunctionEnvelopeCollection" + } + }, + "404": { + "description": "Function with an ID of {functionName} is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/functions/admin/token": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Fetch a short lived token that can be exchanged for a master key.", + "description": "Description for Fetch a short lived token that can be exchanged for a master key.", + "operationId": "WebApps_GetFunctionsAdminToken", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "string" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/functions/{functionName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get function information by its ID for web site, or a deployment slot.", + "description": "Description for Get function information by its ID for web site, or a deployment slot.", + "operationId": "WebApps_GetFunction", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "functionName", + "in": "path", + "description": "Function name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Function information returned.", + "schema": { + "$ref": "#/definitions/FunctionEnvelope" + } + }, + "404": { + "description": "Function with a name of {functionName} does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Create function for web site, or a deployment slot.", + "description": "Description for Create function for web site, or a deployment slot.", + "operationId": "WebApps_CreateFunction", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "functionName", + "in": "path", + "description": "Function name.", + "required": true, + "type": "string" + }, + { + "name": "function_envelope", + "in": "body", + "description": "Function details.", + "required": true, + "schema": { + "$ref": "#/definitions/FunctionEnvelope" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Function created.", + "schema": { + "$ref": "#/definitions/FunctionEnvelope" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Delete a function for web site, or a deployment slot.", + "description": "Description for Delete a function for web site, or a deployment slot.", + "operationId": "WebApps_DeleteFunction", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "functionName", + "in": "path", + "description": "Function name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "Function deleted." + }, + "404": { + "description": "Function does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/functions/{functionName}/keys/{keyName}": { + "put": { + "tags": [ + "WebApps" + ], + "summary": "Add or update a function secret.", + "description": "Description for Add or update a function secret.", + "operationId": "WebApps_CreateOrUpdateFunctionSecret", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "functionName", + "in": "path", + "description": "The name of the function.", + "required": true, + "type": "string" + }, + { + "name": "keyName", + "in": "path", + "description": "The name of the key.", + "required": true, + "type": "string" + }, + { + "name": "key", + "in": "body", + "description": "The key to create or update", + "required": true, + "schema": { + "$ref": "#/definitions/KeyInfo" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Key was created.", + "schema": { + "$ref": "#/definitions/KeyInfo" + } + }, + "200": { + "description": "Key was updated.", + "schema": { + "$ref": "#/definitions/KeyInfo" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Delete a function secret.", + "description": "Description for Delete a function secret.", + "operationId": "WebApps_DeleteFunctionSecret", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "functionName", + "in": "path", + "description": "The name of the function.", + "required": true, + "type": "string" + }, + { + "name": "keyName", + "in": "path", + "description": "The name of the key.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "404": { + "description": "Key was not found." + }, + "204": { + "description": "Key was deleted." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/functions/{functionName}/listkeys": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Get function keys for a function in a web site, or a deployment slot.", + "description": "Description for Get function keys for a function in a web site, or a deployment slot.", + "operationId": "WebApps_ListFunctionKeys", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "functionName", + "in": "path", + "description": "Function name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Function keys returned.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/functions/{functionName}/listsecrets": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Get function secrets for a function in a web site, or a deployment slot.", + "description": "Description for Get function secrets for a function in a web site, or a deployment slot.", + "operationId": "WebApps_ListFunctionSecrets", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "functionName", + "in": "path", + "description": "Function name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Function secrets returned.", + "schema": { + "$ref": "#/definitions/FunctionSecrets" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/host/default/listkeys": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Get host secrets for a function app.", + "description": "Description for Get host secrets for a function app.", + "operationId": "WebApps_ListHostKeys", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Host secrets returned.", + "schema": { + "$ref": "#/definitions/HostKeys" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/host/default/listsyncstatus": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "This is to allow calling via powershell and ARM template.", + "description": "Description for This is to allow calling via powershell and ARM template.", + "operationId": "WebApps_ListSyncStatus", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/host/default/sync": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Syncs function trigger metadata to the management database", + "description": "Description for Syncs function trigger metadata to the management database", + "operationId": "WebApps_SyncFunctions", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/host/default/{keyType}/{keyName}": { + "put": { + "tags": [ + "WebApps" + ], + "summary": "Add or update a host level secret.", + "description": "Description for Add or update a host level secret.", + "operationId": "WebApps_CreateOrUpdateHostSecret", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "keyType", + "in": "path", + "description": "The type of host key.", + "required": true, + "type": "string" + }, + { + "name": "keyName", + "in": "path", + "description": "The name of the key.", + "required": true, + "type": "string" + }, + { + "name": "key", + "in": "body", + "description": "The key to create or update", + "required": true, + "schema": { + "$ref": "#/definitions/KeyInfo" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Key was created.", + "schema": { + "$ref": "#/definitions/KeyInfo" + } + }, + "200": { + "description": "Key was updated.", + "schema": { + "$ref": "#/definitions/KeyInfo" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Delete a host level secret.", + "description": "Description for Delete a host level secret.", + "operationId": "WebApps_DeleteHostSecret", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "keyType", + "in": "path", + "description": "The type of host key.", + "required": true, + "type": "string" + }, + { + "name": "keyName", + "in": "path", + "description": "The name of the key.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "404": { + "description": "Key was not found." + }, + "204": { + "description": "Key was deleted." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hostNameBindings": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get hostname bindings for an app or a deployment slot.", + "description": "Description for Get hostname bindings for an app or a deployment slot.", + "operationId": "WebApps_ListHostNameBindings", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/HostNameBindingCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hostNameBindings/{hostName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get the named hostname binding for an app (or deployment slot, if specified).", + "description": "Description for Get the named hostname binding for an app (or deployment slot, if specified).", + "operationId": "WebApps_GetHostNameBinding", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "hostName", + "in": "path", + "description": "Hostname in the hostname binding.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/HostNameBinding" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Creates a hostname binding for an app.", + "description": "Description for Creates a hostname binding for an app.", + "operationId": "WebApps_CreateOrUpdateHostNameBinding", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "hostName", + "in": "path", + "description": "Hostname in the hostname binding.", + "required": true, + "type": "string" + }, + { + "name": "hostNameBinding", + "in": "body", + "description": "Binding details. This is the JSON representation of a HostNameBinding object.", + "required": true, + "schema": { + "$ref": "#/definitions/HostNameBinding" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/HostNameBinding" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Deletes a hostname binding for an app.", + "description": "Description for Deletes a hostname binding for an app.", + "operationId": "WebApps_DeleteHostNameBinding", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "hostName", + "in": "path", + "description": "Hostname in the hostname binding.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted hostname binding." + }, + "204": { + "description": "Hostname binding does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hybridConnectionNamespaces/{namespaceName}/relays/{relayName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Retrieves a specific Service Bus Hybrid Connection used by this Web App.", + "description": "Description for Retrieves a specific Service Bus Hybrid Connection used by this Web App.", + "operationId": "WebApps_GetHybridConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "The name of the web app.", + "required": true, + "type": "string" + }, + { + "name": "namespaceName", + "in": "path", + "description": "The namespace for this hybrid connection.", + "required": true, + "type": "string" + }, + { + "name": "relayName", + "in": "path", + "description": "The relay name for this hybrid connection.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/HybridConnection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Creates a new Hybrid Connection using a Service Bus relay.", + "description": "Description for Creates a new Hybrid Connection using a Service Bus relay.", + "operationId": "WebApps_CreateOrUpdateHybridConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "The name of the web app.", + "required": true, + "type": "string" + }, + { + "name": "namespaceName", + "in": "path", + "description": "The namespace for this hybrid connection.", + "required": true, + "type": "string" + }, + { + "name": "relayName", + "in": "path", + "description": "The relay name for this hybrid connection.", + "required": true, + "type": "string" + }, + { + "name": "connectionEnvelope", + "in": "body", + "description": "The details of the hybrid connection.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/HybridConnection" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/HybridConnection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Removes a Hybrid Connection from this site.", + "description": "Description for Removes a Hybrid Connection from this site.", + "operationId": "WebApps_DeleteHybridConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "The name of the web app.", + "required": true, + "type": "string" + }, + { + "name": "namespaceName", + "in": "path", + "description": "The namespace for this hybrid connection.", + "required": true, + "type": "string" + }, + { + "name": "relayName", + "in": "path", + "description": "The relay name for this hybrid connection.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted hybrid connection." + }, + "404": { + "description": "Hybrid connection does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "WebApps" + ], + "summary": "Creates a new Hybrid Connection using a Service Bus relay.", + "description": "Description for Creates a new Hybrid Connection using a Service Bus relay.", + "operationId": "WebApps_UpdateHybridConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "The name of the web app.", + "required": true, + "type": "string" + }, + { + "name": "namespaceName", + "in": "path", + "description": "The namespace for this hybrid connection.", + "required": true, + "type": "string" + }, + { + "name": "relayName", + "in": "path", + "description": "The relay name for this hybrid connection.", + "required": true, + "type": "string" + }, + { + "name": "connectionEnvelope", + "in": "body", + "description": "The details of the hybrid connection.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/HybridConnection" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/HybridConnection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hybridConnectionRelays": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Retrieves all Service Bus Hybrid Connections used by this Web App.", + "description": "Description for Retrieves all Service Bus Hybrid Connections used by this Web App.", + "operationId": "WebApps_ListHybridConnections", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "The name of the web app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/HybridConnection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hybridconnection": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets hybrid connections configured for an app (or deployment slot, if specified).", + "description": "Description for Gets hybrid connections configured for an app (or deployment slot, if specified).", + "operationId": "WebApps_ListRelayServiceConnections", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RelayServiceConnectionEntity" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hybridconnection/{entityName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a hybrid connection configuration by its name.", + "description": "Description for Gets a hybrid connection configuration by its name.", + "operationId": "WebApps_GetRelayServiceConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "entityName", + "in": "path", + "description": "Name of the hybrid connection.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RelayServiceConnectionEntity" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Creates a new hybrid connection configuration (PUT), or updates an existing one (PATCH).", + "description": "Description for Creates a new hybrid connection configuration (PUT), or updates an existing one (PATCH).", + "operationId": "WebApps_CreateOrUpdateRelayServiceConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "entityName", + "in": "path", + "description": "Name of the hybrid connection configuration.", + "required": true, + "type": "string" + }, + { + "name": "connectionEnvelope", + "in": "body", + "description": "Details of the hybrid connection configuration.", + "required": true, + "schema": { + "$ref": "#/definitions/RelayServiceConnectionEntity" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RelayServiceConnectionEntity" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Deletes a relay service connection by its name.", + "description": "Description for Deletes a relay service connection by its name.", + "operationId": "WebApps_DeleteRelayServiceConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "entityName", + "in": "path", + "description": "Name of the hybrid connection configuration.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted relay service connection." + }, + "404": { + "description": "Relay service connection does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "WebApps" + ], + "summary": "Creates a new hybrid connection configuration (PUT), or updates an existing one (PATCH).", + "description": "Description for Creates a new hybrid connection configuration (PUT), or updates an existing one (PATCH).", + "operationId": "WebApps_UpdateRelayServiceConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "entityName", + "in": "path", + "description": "Name of the hybrid connection configuration.", + "required": true, + "type": "string" + }, + { + "name": "connectionEnvelope", + "in": "body", + "description": "Details of the hybrid connection configuration.", + "required": true, + "schema": { + "$ref": "#/definitions/RelayServiceConnectionEntity" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RelayServiceConnectionEntity" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets all scale-out instances of an app.", + "description": "Description for Gets all scale-out instances of an app.", + "operationId": "WebApps_ListInstanceIdentifiers", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/WebAppInstanceStatusCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets all scale-out instances of an app.", + "description": "Description for Gets all scale-out instances of an app.", + "operationId": "WebApps_GetInstanceInfo", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/WebSiteInstanceStatus" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get site instance info": { + "$ref": "./examples/GetSiteInstanceInfo.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/extensions/MSDeploy": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get the status of the last MSDeploy operation.", + "description": "Description for Get the status of the last MSDeploy operation.", + "operationId": "WebApps_GetInstanceMsDeployStatus", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "instanceId", + "in": "path", + "description": "ID of web app instance.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MSDeployStatus" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Invoke the MSDeploy web app extension.", + "description": "Description for Invoke the MSDeploy web app extension.", + "operationId": "WebApps_CreateInstanceMSDeployOperation", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "instanceId", + "in": "path", + "description": "ID of web app instance.", + "required": true, + "type": "string" + }, + { + "name": "MSDeploy", + "in": "body", + "description": "Details of MSDeploy operation", + "required": true, + "schema": { + "$ref": "#/definitions/MSDeploy" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Deployment is scheduled.", + "schema": { + "$ref": "#/definitions/MSDeployStatus" + } + }, + "409": { + "description": "Another deployment is in progress." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/extensions/MSDeploy/log": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get the MSDeploy Log for the last MSDeploy operation.", + "description": "Description for Get the MSDeploy Log for the last MSDeploy operation.", + "operationId": "WebApps_GetInstanceMSDeployLog", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "instanceId", + "in": "path", + "description": "ID of web app instance.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "MSDeploy log returned.", + "schema": { + "$ref": "#/definitions/MSDeployLog" + } + }, + "404": { + "description": "MSDeploy log not found." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/processes": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get list of processes for a web site, or a deployment slot, or for a specific scaled-out instance in a web site.", + "description": "Description for Get list of processes for a web site, or a deployment slot, or for a specific scaled-out instance in a web site.", + "operationId": "WebApps_ListInstanceProcesses", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "instanceId", + "in": "path", + "description": "ID of a specific scaled-out instance. This is the value of the name property in the JSON response from \"GET api/sites/{siteName}/instances\".", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Process terminated.", + "schema": { + "$ref": "#/definitions/ProcessInfoCollection" + } + }, + "404": { + "description": "Process with the specified ID is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/processes/{processId}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get process information by its ID for a specific scaled-out instance in a web site.", + "description": "Description for Get process information by its ID for a specific scaled-out instance in a web site.", + "operationId": "WebApps_GetInstanceProcess", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "processId", + "in": "path", + "description": "PID.", + "required": true, + "type": "string" + }, + { + "name": "instanceId", + "in": "path", + "description": "ID of a specific scaled-out instance. This is the value of the name property in the JSON response from \"GET api/sites/{siteName}/instances\".", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Process information returned.", + "schema": { + "$ref": "#/definitions/ProcessInfo" + } + }, + "404": { + "description": "Process with the specified ID is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Terminate a process by its ID for a web site, or a deployment slot, or specific scaled-out instance in a web site.", + "description": "Description for Terminate a process by its ID for a web site, or a deployment slot, or specific scaled-out instance in a web site.", + "operationId": "WebApps_DeleteInstanceProcess", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "processId", + "in": "path", + "description": "PID.", + "required": true, + "type": "string" + }, + { + "name": "instanceId", + "in": "path", + "description": "ID of a specific scaled-out instance. This is the value of the name property in the JSON response from \"GET api/sites/{siteName}/instances\".", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "Process terminated." + }, + "404": { + "description": "Process with the specified ID is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/processes/{processId}/dump": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get a memory dump of a process by its ID for a specific scaled-out instance in a web site.", + "description": "Description for Get a memory dump of a process by its ID for a specific scaled-out instance in a web site.", + "operationId": "WebApps_GetInstanceProcessDump", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "processId", + "in": "path", + "description": "PID.", + "required": true, + "type": "string" + }, + { + "name": "instanceId", + "in": "path", + "description": "ID of a specific scaled-out instance. This is the value of the name property in the JSON response from \"GET api/sites/{siteName}/instances\".", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "file" + } + }, + "404": { + "description": "Process with the specified ID is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/processes/{processId}/modules": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "List module information for a process by its ID for a specific scaled-out instance in a web site.", + "description": "Description for List module information for a process by its ID for a specific scaled-out instance in a web site.", + "operationId": "WebApps_ListInstanceProcessModules", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "processId", + "in": "path", + "description": "PID.", + "required": true, + "type": "string" + }, + { + "name": "instanceId", + "in": "path", + "description": "ID of a specific scaled-out instance. This is the value of the name property in the JSON response from \"GET api/sites/{siteName}/instances\".", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Module information returned.", + "schema": { + "$ref": "#/definitions/ProcessModuleInfoCollection" + } + }, + "404": { + "description": "Process with the specified ID is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/processes/{processId}/modules/{baseAddress}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get process information by its ID for a specific scaled-out instance in a web site.", + "description": "Description for Get process information by its ID for a specific scaled-out instance in a web site.", + "operationId": "WebApps_GetInstanceProcessModule", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "processId", + "in": "path", + "description": "PID.", + "required": true, + "type": "string" + }, + { + "name": "baseAddress", + "in": "path", + "description": "Module base address.", + "required": true, + "type": "string" + }, + { + "name": "instanceId", + "in": "path", + "description": "ID of a specific scaled-out instance. This is the value of the name property in the JSON response from \"GET api/sites/{siteName}/instances\".", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Module information returned.", + "schema": { + "$ref": "#/definitions/ProcessModuleInfo" + } + }, + "404": { + "description": "Process with the specified ID is not running, or a module with the specified baseAddress was not found." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/processes/{processId}/threads": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "List the threads in a process by its ID for a specific scaled-out instance in a web site.", + "description": "Description for List the threads in a process by its ID for a specific scaled-out instance in a web site.", + "operationId": "WebApps_ListInstanceProcessThreads", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "processId", + "in": "path", + "description": "PID.", + "required": true, + "type": "string" + }, + { + "name": "instanceId", + "in": "path", + "description": "ID of a specific scaled-out instance. This is the value of the name property in the JSON response from \"GET api/sites/{siteName}/instances\".", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Thread information returned.", + "schema": { + "$ref": "#/definitions/ProcessThreadInfoCollection" + } + }, + "404": { + "description": "Process with the specified ID is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/iscloneable": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Shows whether an app can be cloned to another resource group or subscription.", + "description": "Description for Shows whether an app can be cloned to another resource group or subscription.", + "operationId": "WebApps_IsCloneable", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/SiteCloneability" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/listbackups": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Gets existing backups of an app.", + "description": "Description for Gets existing backups of an app.", + "operationId": "WebApps_ListSiteBackups", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupItemCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List backups": { + "$ref": "./examples/ListSlotBackups.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/listsyncfunctiontriggerstatus": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "This is to allow calling via powershell and ARM template.", + "description": "Description for This is to allow calling via powershell and ARM template.", + "operationId": "WebApps_ListSyncFunctionTriggers", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/FunctionSecrets" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/migrate": { + "put": { + "tags": [ + "WebApps" + ], + "summary": "Restores a web app.", + "description": "Description for Restores a web app.", + "operationId": "WebApps_MigrateStorage", + "parameters": [ + { + "name": "subscriptionName", + "in": "query", + "description": "Azure subscription.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "migrationOptions", + "in": "body", + "description": "Migration migrationOptions.", + "required": true, + "schema": { + "$ref": "#/definitions/StorageMigrationOptions" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/StorageMigrationResponse" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/migratemysql": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Migrates a local (in-app) MySql database to a remote MySql database.", + "description": "Description for Migrates a local (in-app) MySql database to a remote MySql database.", + "operationId": "WebApps_MigrateMySql", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "migrationRequestEnvelope", + "in": "body", + "description": "MySql migration options.", + "required": true, + "schema": { + "$ref": "#/definitions/MigrateMySqlRequest" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Operation" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/migratemysql/status": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Returns the status of MySql in app migration, if one is active, and whether or not MySql in app is enabled", + "description": "Description for Returns the status of MySql in app migration, if one is active, and whether or not MySql in app is enabled", + "operationId": "WebApps_GetMigrateMySqlStatus", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MigrateMySqlStatus" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/networkConfig/virtualNetwork": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a Swift Virtual Network connection.", + "description": "Description for Gets a Swift Virtual Network connection.", + "operationId": "WebApps_GetSwiftVirtualNetworkConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/SwiftVirtualNetwork" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Integrates this Web App with a Virtual Network. This requires that 1) \"swiftSupported\" is true when doing a GET against this resource, and 2) that the target Subnet has already been delegated, and is not\r\nin use by another App Service Plan other than the one this App is in.", + "description": "Description for Integrates this Web App with a Virtual Network. This requires that 1) \"swiftSupported\" is true when doing a GET against this resource, and 2) that the target Subnet has already been delegated, and is not\nin use by another App Service Plan other than the one this App is in.", + "operationId": "WebApps_CreateOrUpdateSwiftVirtualNetworkConnectionWithCheck", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "connectionEnvelope", + "in": "body", + "description": "Properties of the Virtual Network connection. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/SwiftVirtualNetwork" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SwiftVirtualNetwork" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Deletes a Swift Virtual Network connection from an app (or deployment slot).", + "description": "Description for Deletes a Swift Virtual Network connection from an app (or deployment slot).", + "operationId": "WebApps_DeleteSwiftVirtualNetwork", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted virtual network." + }, + "404": { + "description": "Virtual network does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/networkFeatures/{view}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets all network features used by the app (or deployment slot, if specified).", + "description": "Description for Gets all network features used by the app (or deployment slot, if specified).", + "operationId": "WebApps_ListNetworkFeatures", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "view", + "in": "path", + "description": "The type of view. Only \"summary\" is supported at this time.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/NetworkFeatures" + } + }, + "404": { + "description": "The requested view does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/networkTrace/operationresults/{operationId}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a named operation for a network trace capturing (or deployment slot, if specified).", + "description": "Description for Gets a named operation for a network trace capturing (or deployment slot, if specified).", + "operationId": "WebApps_GetNetworkTraceOperation", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "operationId", + "in": "path", + "description": "GUID of the operation.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } + } + }, + "202": { + "description": "Operation is in progress.", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get the current status of a network trace operation for a site": { + "$ref": "./examples/GetWebSiteNetworkTraceOperation.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/networkTrace/start": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Start capturing network packets for the site (To be deprecated).", + "description": "Description for Start capturing network packets for the site (To be deprecated).", + "operationId": "WebApps_StartWebSiteNetworkTrace", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "The name of the web app.", + "required": true, + "type": "string" + }, + { + "name": "durationInSeconds", + "in": "query", + "description": "The duration to keep capturing in seconds.", + "type": "integer", + "format": "int32" + }, + { + "name": "maxFrameLength", + "in": "query", + "description": "The maximum frame length in bytes (Optional).", + "type": "integer", + "format": "int32" + }, + { + "name": "sasUrl", + "in": "query", + "description": "The Blob URL to store capture file.", + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "string" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/networkTrace/startOperation": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Start capturing network packets for the site.", + "description": "Description for Start capturing network packets for the site.", + "operationId": "WebApps_StartWebSiteNetworkTraceOperation", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "The name of the web app.", + "required": true, + "type": "string" + }, + { + "name": "durationInSeconds", + "in": "query", + "description": "The duration to keep capturing in seconds.", + "type": "integer", + "format": "int32" + }, + { + "name": "maxFrameLength", + "in": "query", + "description": "The maximum frame length in bytes (Optional).", + "type": "integer", + "format": "int32" + }, + { + "name": "sasUrl", + "in": "query", + "description": "The Blob URL to store capture file.", + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } + } + }, + "202": { + "description": "Operation is in progress.", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Start a new network trace operation for a site": { + "$ref": "./examples/StartWebSiteNetworkTraceOperation.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/networkTrace/stop": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Stop ongoing capturing network packets for the site.", + "description": "Description for Stop ongoing capturing network packets for the site.", + "operationId": "WebApps_StopWebSiteNetworkTrace", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "The name of the web app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Stopped." + }, + "204": { + "description": "Stopped." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Stop a currently running network trace operation for a site": { + "$ref": "./examples/StopWebSiteNetworkTrace.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/networkTrace/{operationId}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a named operation for a network trace capturing (or deployment slot, if specified).", + "description": "Description for Gets a named operation for a network trace capturing (or deployment slot, if specified).", + "operationId": "WebApps_GetNetworkTraces", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "operationId", + "in": "path", + "description": "GUID of the operation.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get NetworkTraces for a site": { + "$ref": "./examples/GetWebSiteNetworkTraces.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/networkTraces/current/operationresults/{operationId}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a named operation for a network trace capturing (or deployment slot, if specified).", + "description": "Description for Gets a named operation for a network trace capturing (or deployment slot, if specified).", + "operationId": "WebApps_GetNetworkTraceOperationV2", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "operationId", + "in": "path", + "description": "GUID of the operation.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } + } + }, + "202": { + "description": "Operation is in progress.", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get the current status of a network trace operation for a site": { + "$ref": "./examples/GetWebSiteNetworkTraceOperation.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/networkTraces/{operationId}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a named operation for a network trace capturing (or deployment slot, if specified).", + "description": "Description for Gets a named operation for a network trace capturing (or deployment slot, if specified).", + "operationId": "WebApps_GetNetworkTracesV2", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "operationId", + "in": "path", + "description": "GUID of the operation.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get NetworkTraces for a site": { + "$ref": "./examples/GetWebSiteNetworkTraces.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/newpassword": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Generates a new publishing password for an app (or deployment slot, if specified).", + "description": "Description for Generates a new publishing password for an app (or deployment slot, if specified).", + "operationId": "WebApps_GenerateNewSitePublishingPassword", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully generate new password." + }, + "204": { + "description": "Successfully generate new password." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/perfcounters": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets perfmon counters for web app.", + "description": "Description for Gets perfmon counters for web app.", + "operationId": "WebApps_ListPerfMonCounters", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$filter", + "in": "query", + "description": "Return only usages/metrics specified in the filter. Filter conforms to odata syntax. Example: $filter=(startTime eq 2014-01-01T00:00:00Z and endTime eq 2014-12-31T23:59:59Z and timeGrain eq duration'[Hour|Minute|Day]'.", + "type": "string", + "x-ms-skip-url-encoding": true + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PerfMonCounterCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/phplogging": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets web app's event logs.", + "description": "Description for Gets web app's event logs.", + "operationId": "WebApps_GetSitePhpErrorLogFlag", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SitePhpErrorLogFlag" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/premieraddons": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the premier add-ons of an app.", + "description": "Description for Gets the premier add-ons of an app.", + "operationId": "WebApps_ListPremierAddOns", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PremierAddOn" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/premieraddons/{premierAddOnName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a named add-on of an app.", + "description": "Description for Gets a named add-on of an app.", + "operationId": "WebApps_GetPremierAddOn", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "premierAddOnName", + "in": "path", + "description": "Add-on name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PremierAddOn" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Updates a named add-on of an app.", + "description": "Description for Updates a named add-on of an app.", + "operationId": "WebApps_AddPremierAddOn", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "premierAddOnName", + "in": "path", + "description": "Add-on name.", + "required": true, + "type": "string" + }, + { + "name": "premierAddOn", + "in": "body", + "description": "A JSON representation of the edited premier add-on.", + "required": true, + "schema": { + "$ref": "#/definitions/PremierAddOn" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PremierAddOn" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Delete a premier add-on from an app.", + "description": "Description for Delete a premier add-on from an app.", + "operationId": "WebApps_DeletePremierAddOn", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "premierAddOnName", + "in": "path", + "description": "Add-on name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted premier add-on." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "WebApps" + ], + "summary": "Updates a named add-on of an app.", + "description": "Description for Updates a named add-on of an app.", + "operationId": "WebApps_UpdatePremierAddOn", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "premierAddOnName", + "in": "path", + "description": "Add-on name.", + "required": true, + "type": "string" + }, + { + "name": "premierAddOn", + "in": "body", + "description": "A JSON representation of the edited premier add-on.", + "required": true, + "schema": { + "$ref": "#/definitions/PremierAddOnPatchResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PremierAddOn" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/privateAccess/virtualNetworks": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets data around private site access enablement and authorized Virtual Networks that can access the site.", + "description": "Description for Gets data around private site access enablement and authorized Virtual Networks that can access the site.", + "operationId": "WebApps_GetPrivateAccess", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "The name of the web app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateAccess" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Sets data around private site access enablement and authorized Virtual Networks that can access the site.", + "description": "Description for Sets data around private site access enablement and authorized Virtual Networks that can access the site.", + "operationId": "WebApps_PutPrivateAccessVnet", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "The name of the web app.", + "required": true, + "type": "string" + }, + { + "name": "access", + "in": "body", + "description": "The information for the private access", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateAccess" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateAccess" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/privateEndpointConnections": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the list of private endpoint connections associated with a site", + "description": "Description for Gets the list of private endpoint connections associated with a site", + "operationId": "WebApps_GetPrivateEndpointConnectionList", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the site.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/PrivateEndpointConnectionCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a private endpoint connection", + "description": "Description for Gets a private endpoint connection", + "operationId": "WebApps_GetPrivateEndpointConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the site.", + "required": true, + "type": "string" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "Name of the private endpoint connection.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/RemotePrivateEndpointConnectionARMResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get a private endpoint connection for a site.": { + "$ref": "./examples/GetSitePrivateEndpointConnection.json" + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Approves or rejects a private endpoint connection", + "description": "Description for Approves or rejects a private endpoint connection", + "operationId": "WebApps_ApproveOrRejectPrivateEndpointConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the site.", + "required": true, + "type": "string" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "privateEndpointWrapper", + "in": "body", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/PrivateLinkConnectionApprovalRequestResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/RemotePrivateEndpointConnectionARMResource" + } + }, + "202": { + "description": "Asynchronous operation in progress.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/RemotePrivateEndpointConnectionARMResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Approves or rejects a private endpoint connection for a site.": { + "$ref": "./examples/ApproveRejectSitePrivateEndpointConnection.json" + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Deletes a private endpoint connection", + "description": "Description for Deletes a private endpoint connection", + "operationId": "WebApps_DeletePrivateEndpointConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the site.", + "required": true, + "type": "string" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "type": "object" + } + }, + "202": { + "description": "Asynchronous operation in progress.", + "schema": { + "type": "object" + } + }, + "204": { + "description": "No content.", + "schema": { + "type": "object" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete a private endpoint connection for a site.": { + "$ref": "./examples/DeleteSitePrivateEndpointConnection.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/privateLinkResources": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the private link resources", + "description": "Description for Gets the private link resources", + "operationId": "WebApps_GetPrivateLinkResources", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the site.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/PrivateLinkResourcesWrapper" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get private link resources of a site": { + "$ref": "./examples/GetSitePrivateLinkResources.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/processes": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get list of processes for a web site, or a deployment slot, or for a specific scaled-out instance in a web site.", + "description": "Description for Get list of processes for a web site, or a deployment slot, or for a specific scaled-out instance in a web site.", + "operationId": "WebApps_ListProcesses", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Process terminated.", + "schema": { + "$ref": "#/definitions/ProcessInfoCollection" + } + }, + "404": { + "description": "Process with the specified ID is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/processes/{processId}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get process information by its ID for a specific scaled-out instance in a web site.", + "description": "Description for Get process information by its ID for a specific scaled-out instance in a web site.", + "operationId": "WebApps_GetProcess", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "processId", + "in": "path", + "description": "PID.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Process information returned.", + "schema": { + "$ref": "#/definitions/ProcessInfo" + } + }, + "404": { + "description": "Process with the specified ID is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Terminate a process by its ID for a web site, or a deployment slot, or specific scaled-out instance in a web site.", + "description": "Description for Terminate a process by its ID for a web site, or a deployment slot, or specific scaled-out instance in a web site.", + "operationId": "WebApps_DeleteProcess", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "processId", + "in": "path", + "description": "PID.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "Process terminated." + }, + "404": { + "description": "Process with the specified ID is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/processes/{processId}/dump": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get a memory dump of a process by its ID for a specific scaled-out instance in a web site.", + "description": "Description for Get a memory dump of a process by its ID for a specific scaled-out instance in a web site.", + "operationId": "WebApps_GetProcessDump", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "processId", + "in": "path", + "description": "PID.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "file" + } + }, + "404": { + "description": "Process with the specified ID is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/processes/{processId}/modules": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "List module information for a process by its ID for a specific scaled-out instance in a web site.", + "description": "Description for List module information for a process by its ID for a specific scaled-out instance in a web site.", + "operationId": "WebApps_ListProcessModules", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "processId", + "in": "path", + "description": "PID.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Module information returned.", + "schema": { + "$ref": "#/definitions/ProcessModuleInfoCollection" + } + }, + "404": { + "description": "Process with the specified ID is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/processes/{processId}/modules/{baseAddress}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get process information by its ID for a specific scaled-out instance in a web site.", + "description": "Description for Get process information by its ID for a specific scaled-out instance in a web site.", + "operationId": "WebApps_GetProcessModule", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "processId", + "in": "path", + "description": "PID.", + "required": true, + "type": "string" + }, + { + "name": "baseAddress", + "in": "path", + "description": "Module base address.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Module information returned.", + "schema": { + "$ref": "#/definitions/ProcessModuleInfo" + } + }, + "404": { + "description": "Process with the specified ID is not running, or a module with the specified baseAddress was not found." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/processes/{processId}/threads": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "List the threads in a process by its ID for a specific scaled-out instance in a web site.", + "description": "Description for List the threads in a process by its ID for a specific scaled-out instance in a web site.", + "operationId": "WebApps_ListProcessThreads", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "processId", + "in": "path", + "description": "PID.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Thread information returned.", + "schema": { + "$ref": "#/definitions/ProcessThreadInfoCollection" + } + }, + "404": { + "description": "Process with the specified ID is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/publicCertificates": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get public certificates for an app or a deployment slot.", + "description": "Description for Get public certificates for an app or a deployment slot.", + "operationId": "WebApps_ListPublicCertificates", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PublicCertificateCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/publicCertificates/{publicCertificateName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get the named public certificate for an app (or deployment slot, if specified).", + "description": "Description for Get the named public certificate for an app (or deployment slot, if specified).", + "operationId": "WebApps_GetPublicCertificate", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "publicCertificateName", + "in": "path", + "description": "Public certificate name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PublicCertificate" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Creates a hostname binding for an app.", + "description": "Description for Creates a hostname binding for an app.", + "operationId": "WebApps_CreateOrUpdatePublicCertificate", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "publicCertificateName", + "in": "path", + "description": "Public certificate name.", + "required": true, + "type": "string" + }, + { + "name": "publicCertificate", + "in": "body", + "description": "Public certificate details. This is the JSON representation of a PublicCertificate object.", + "required": true, + "schema": { + "$ref": "#/definitions/PublicCertificate" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PublicCertificate" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Deletes a hostname binding for an app.", + "description": "Description for Deletes a hostname binding for an app.", + "operationId": "WebApps_DeletePublicCertificate", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "publicCertificateName", + "in": "path", + "description": "Public certificate name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted hostname binding." + }, + "204": { + "description": "Hostname binding does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/publishxml": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Gets the publishing profile for an app (or deployment slot, if specified).", + "description": "Description for Gets the publishing profile for an app (or deployment slot, if specified).", + "operationId": "WebApps_ListPublishingProfileXmlWithSecrets", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "publishingProfileOptions", + "in": "body", + "description": "Specifies publishingProfileOptions for publishing profile. For example, use {\"format\": \"FileZilla3\"} to get a FileZilla publishing profile.", + "required": true, + "schema": { + "$ref": "#/definitions/CsmPublishingProfileOptions" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "file" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/resetSlotConfig": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Resets the configuration settings of the current slot if they were previously modified by calling the API with POST.", + "description": "Description for Resets the configuration settings of the current slot if they were previously modified by calling the API with POST.", + "operationId": "WebApps_ResetProductionSlotConfig", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/restart": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Restarts an app (or deployment slot, if specified).", + "description": "Description for Restarts an app (or deployment slot, if specified).", + "operationId": "WebApps_Restart", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "softRestart", + "in": "query", + "description": "Specify true to apply the configuration settings and restarts the app only if necessary. By default, the API always restarts and reprovisions the app.", + "type": "boolean" + }, + { + "name": "synchronous", + "in": "query", + "description": "Specify true to block until the app is restarted. By default, it is set to false, and the API responds immediately (asynchronous).", + "type": "boolean" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully restarted app." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/restoreFromBackupBlob": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Restores an app from a backup blob in Azure Storage.", + "description": "Description for Restores an app from a backup blob in Azure Storage.", + "operationId": "WebApps_RestoreFromBackupBlob", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "request", + "in": "body", + "description": "Information on restore request .", + "required": true, + "schema": { + "$ref": "#/definitions/RestoreRequest" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Restore operation started." + }, + "200": { + "description": "Restore operation started." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/restoreFromDeletedApp": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Restores a deleted web app to this web app.", + "description": "Description for Restores a deleted web app to this web app.", + "operationId": "WebApps_RestoreFromDeletedApp", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "restoreRequest", + "in": "body", + "description": "Deleted web app restore information.", + "required": true, + "schema": { + "$ref": "#/definitions/DeletedAppRestoreRequest" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Restore operation started." + }, + "200": { + "description": "Restore operation started." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/restoreSnapshot": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Restores a web app from a snapshot.", + "description": "Description for Restores a web app from a snapshot.", + "operationId": "WebApps_RestoreSnapshot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "restoreRequest", + "in": "body", + "description": "Snapshot restore settings. Snapshot information can be obtained by calling GetDeletedSites or GetSiteSnapshots API.", + "required": true, + "schema": { + "$ref": "#/definitions/SnapshotRestoreRequest" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Restore operation started." + }, + "200": { + "description": "Restore operation started." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/siteextensions": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get list of siteextensions for a web site, or a deployment slot.", + "description": "Description for Get list of siteextensions for a web site, or a deployment slot.", + "operationId": "WebApps_ListSiteExtensions", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "SiteExtension information returned.", + "schema": { + "$ref": "#/definitions/SiteExtensionInfoCollection" + } + }, + "404": { + "description": "SiteExtension not found." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/siteextensions/{siteExtensionId}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get site extension information by its ID for a web site, or a deployment slot.", + "description": "Description for Get site extension information by its ID for a web site, or a deployment slot.", + "operationId": "WebApps_GetSiteExtension", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "siteExtensionId", + "in": "path", + "description": "Site extension name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "SiteExtension information returned.", + "schema": { + "$ref": "#/definitions/SiteExtensionInfo" + } + }, + "404": { + "description": "SiteExtension with an ID of {siteExtensionId} is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Install site extension on a web site, or a deployment slot.", + "description": "Description for Install site extension on a web site, or a deployment slot.", + "operationId": "WebApps_InstallSiteExtension", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "siteExtensionId", + "in": "path", + "description": "Site extension name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Site Extension created.", + "schema": { + "$ref": "#/definitions/SiteExtensionInfo" + } + }, + "200": { + "description": "Site Extension created.", + "schema": { + "$ref": "#/definitions/SiteExtensionInfo" + } + }, + "429": { + "description": "Site Extension is being installed on another request: Rejecting current request." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Remove a site extension from a web site, or a deployment slot.", + "description": "Description for Remove a site extension from a web site, or a deployment slot.", + "operationId": "WebApps_DeleteSiteExtension", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "siteExtensionId", + "in": "path", + "description": "Site extension name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "SiteExtension terminated." + }, + "404": { + "description": "SiteExtension with an ID of {siteExtensionId} is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets an app's deployment slots.", + "description": "Description for Gets an app's deployment slots.", + "operationId": "WebApps_ListSlots", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/WebAppCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the details of a web, mobile, or API app.", + "description": "Description for Gets the details of a web, mobile, or API app.", + "operationId": "WebApps_GetSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. By default, this API returns the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Site" + } + }, + "404": { + "description": "Not found." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Creates a new web, mobile, or API app in an existing resource group, or updates an existing app.", + "description": "Description for Creates a new web, mobile, or API app in an existing resource group, or updates an existing app.", + "operationId": "WebApps_CreateOrUpdateSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Unique name of the app to create or update. To create or update a deployment slot, use the {slot} parameter.", + "required": true, + "type": "string" + }, + { + "name": "siteEnvelope", + "in": "body", + "description": "A JSON representation of the app properties. See example.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Site" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot to create or update. By default, this API attempts to create or modify the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Site" + } + }, + "202": { + "description": "Asynchronous operation in progress.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Site" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Deletes a web, mobile, or API app, or one of the deployment slots.", + "description": "Description for Deletes a web, mobile, or API app, or one of the deployment slots.", + "operationId": "WebApps_DeleteSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app to delete.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot to delete. By default, the API deletes the production slot.", + "required": true, + "type": "string" + }, + { + "name": "deleteMetrics", + "in": "query", + "description": "If true, web app metrics are also deleted.", + "type": "boolean" + }, + { + "name": "deleteEmptyServerFarm", + "in": "query", + "description": "Specify false if you want to keep empty App Service plan. By default, empty App Service plan is deleted.", + "type": "boolean" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted web app." + }, + "204": { + "description": "Successfully deleted web app." + }, + "404": { + "description": "Web app not found." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "WebApps" + ], + "summary": "Creates a new web, mobile, or API app in an existing resource group, or updates an existing app.", + "description": "Description for Creates a new web, mobile, or API app in an existing resource group, or updates an existing app.", + "operationId": "WebApps_UpdateSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Unique name of the app to create or update. To create or update a deployment slot, use the {slot} parameter.", + "required": true, + "type": "string" + }, + { + "name": "siteEnvelope", + "in": "body", + "description": "A JSON representation of the app properties. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/SitePatchResource" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot to create or update. By default, this API attempts to create or modify the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Site" + } + }, + "202": { + "description": "Asynchronous operation in progress.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Site" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/analyzeCustomHostname": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Analyze a custom hostname.", + "description": "Description for Analyze a custom hostname.", + "operationId": "WebApps_AnalyzeCustomHostnameSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of web app slot. If not specified then will default to production slot.", + "required": true, + "type": "string" + }, + { + "name": "hostName", + "in": "query", + "description": "Custom hostname.", + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CustomHostnameAnalysisResult" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/applySlotConfig": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Applies the configuration settings from the target slot onto the current slot.", + "description": "Description for Applies the configuration settings from the target slot onto the current slot.", + "operationId": "WebApps_ApplySlotConfigurationSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slotSwapEntity", + "in": "body", + "description": "JSON object that contains the target slot name. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/CsmSlotEntity" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the source slot. If a slot is not specified, the production slot is used as the source slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/backup": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Creates a backup of an app.", + "description": "Description for Creates a backup of an app.", + "operationId": "WebApps_BackupSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "request", + "in": "body", + "description": "Backup configuration. You can use the JSON response from the POST action as input here.", + "required": true, + "schema": { + "$ref": "#/definitions/BackupRequest" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will create a backup for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupItem" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/backups": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets existing backups of an app.", + "description": "Description for Gets existing backups of an app.", + "operationId": "WebApps_ListBackupsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get backups of the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupItemCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/backups/{backupId}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a backup of an app by its ID.", + "description": "Description for Gets a backup of an app by its ID.", + "operationId": "WebApps_GetBackupStatusSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "backupId", + "in": "path", + "description": "ID of the backup.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get a backup of the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupItem" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Deletes a backup of an app by its ID.", + "description": "Description for Deletes a backup of an app by its ID.", + "operationId": "WebApps_DeleteBackupSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "backupId", + "in": "path", + "description": "ID of the backup.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will delete a backup of the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted web app backup item." + }, + "404": { + "description": "Web app backup item does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/backups/{backupId}/list": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Gets status of a web app backup that may be in progress, including secrets associated with the backup, such as the Azure Storage SAS URL. Also can be used to update the SAS URL for the backup if a new URL is passed in the request body.", + "description": "Description for Gets status of a web app backup that may be in progress, including secrets associated with the backup, such as the Azure Storage SAS URL. Also can be used to update the SAS URL for the backup if a new URL is passed in the request body.", + "operationId": "WebApps_ListBackupStatusSecretsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "backupId", + "in": "path", + "description": "ID of backup.", + "required": true, + "type": "string" + }, + { + "name": "request", + "in": "body", + "description": "Information on backup request.", + "required": true, + "schema": { + "$ref": "#/definitions/BackupRequest" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of web app slot. If not specified then will default to production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupItem" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/backups/{backupId}/restore": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Restores a specific backup to another app (or deployment slot, if specified).", + "description": "Description for Restores a specific backup to another app (or deployment slot, if specified).", + "operationId": "WebApps_RestoreSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "backupId", + "in": "path", + "description": "ID of the backup.", + "required": true, + "type": "string" + }, + { + "name": "request", + "in": "body", + "description": "Information on restore request .", + "required": true, + "schema": { + "$ref": "#/definitions/RestoreRequest" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will restore a backup of the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Restore operation started." + }, + "200": { + "description": "Restore operation started." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/basicPublishingCredentialsPolicies": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Returns whether Scm basic auth is allowed and whether Ftp is allowed for a given site.", + "description": "Description for Returns whether Scm basic auth is allowed and whether Ftp is allowed for a given site.", + "operationId": "WebApps_GetBasicPublishingCredentialsPoliciesSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CsmPublishingCredentialsPoliciesCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List Publishing Credentials Policies": { + "$ref": "./examples/ListPublishingCredentialsPoliciesSlot.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/basicPublishingCredentialsPolicies/ftp": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Returns whether FTP is allowed on the site or not.", + "description": "Description for Returns whether FTP is allowed on the site or not.", + "operationId": "WebApps_GetFtpAllowedSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CsmPublishingCredentialsPoliciesEntity" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get FTP Allowed": { + "$ref": "./examples/GetPublishingCredentialsPolicySlot.json" + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Updates whether FTP is allowed on the site or not.", + "description": "Description for Updates whether FTP is allowed on the site or not.", + "operationId": "WebApps_UpdateFtpAllowedSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "csmPublishingAccessPoliciesEntity", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CsmPublishingCredentialsPoliciesEntity" + } + }, + { + "name": "slot", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CsmPublishingCredentialsPoliciesEntity" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Update FTP Allowed": { + "$ref": "./examples/UpdatePublishingCredentialsPolicySlot.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/basicPublishingCredentialsPolicies/scm": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Returns whether Scm basic auth is allowed on the site or not.", + "description": "Description for Returns whether Scm basic auth is allowed on the site or not.", + "operationId": "WebApps_GetScmAllowedSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CsmPublishingCredentialsPoliciesEntity" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get SCM Allowed": { + "$ref": "./examples/GetPublishingCredentialsPolicySlot.json" + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Updates whether user publishing credentials are allowed on the site or not.", + "description": "Description for Updates whether user publishing credentials are allowed on the site or not.", + "operationId": "WebApps_UpdateScmAllowedSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "csmPublishingAccessPoliciesEntity", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CsmPublishingCredentialsPoliciesEntity" + } + }, + { + "name": "slot", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CsmPublishingCredentialsPoliciesEntity" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Update SCM Allowed": { + "$ref": "./examples/UpdatePublishingCredentialsPolicySlot.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "List the configurations of an app", + "description": "Description for List the configurations of an app", + "operationId": "WebApps_ListConfigurationsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will return configuration for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SiteConfigResourceCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/appsettings": { + "put": { + "tags": [ + "WebApps" + ], + "summary": "Replaces the application settings of an app.", + "description": "Description for Replaces the application settings of an app.", + "operationId": "WebApps_UpdateApplicationSettingsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "appSettings", + "in": "body", + "description": "Application settings of the app.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will update the application settings for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/appsettings/list": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Gets the application settings of an app.", + "description": "Description for Gets the application settings of an app.", + "operationId": "WebApps_ListApplicationSettingsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get the application settings for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/authsettings": { + "put": { + "tags": [ + "WebApps" + ], + "summary": "Updates the Authentication / Authorization settings associated with web app.", + "description": "Description for Updates the Authentication / Authorization settings associated with web app.", + "operationId": "WebApps_UpdateAuthSettingsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "siteAuthSettings", + "in": "body", + "description": "Auth settings associated with web app.", + "required": true, + "schema": { + "$ref": "#/definitions/SiteAuthSettings" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of web app slot. If not specified then will default to production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SiteAuthSettings" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/authsettings/list": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Gets the Authentication/Authorization settings of an app.", + "description": "Description for Gets the Authentication/Authorization settings of an app.", + "operationId": "WebApps_GetAuthSettingsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get the settings for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SiteAuthSettings" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/authsettingsV2": { + "put": { + "tags": [ + "WebApps" + ], + "summary": "Updates site's Authentication / Authorization settings for apps via the V2 format", + "description": "Description for Updates site's Authentication / Authorization settings for apps via the V2 format", + "operationId": "WebApps_UpdateAuthSettingsV2Slot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "siteAuthSettingsV2", + "in": "body", + "description": "Auth settings associated with web app.", + "required": true, + "schema": { + "$ref": "#/definitions/SiteAuthSettingsV2" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of web app slot. If not specified then will default to production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SiteAuthSettingsV2" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/authsettingsV2/list": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets site's Authentication / Authorization settings for apps via the V2 format", + "description": "Description for Gets site's Authentication / Authorization settings for apps via the V2 format", + "operationId": "WebApps_GetAuthSettingsV2Slot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get the settings for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SiteAuthSettingsV2" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/azurestorageaccounts": { + "put": { + "tags": [ + "WebApps" + ], + "summary": "Updates the Azure storage account configurations of an app.", + "description": "Description for Updates the Azure storage account configurations of an app.", + "operationId": "WebApps_UpdateAzureStorageAccountsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "azureStorageAccounts", + "in": "body", + "description": "Azure storage accounts of the app.", + "required": true, + "schema": { + "$ref": "#/definitions/AzureStoragePropertyDictionaryResource" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will update the Azure storage account configurations for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AzureStoragePropertyDictionaryResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/azurestorageaccounts/list": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Gets the Azure storage account configurations of an app.", + "description": "Description for Gets the Azure storage account configurations of an app.", + "operationId": "WebApps_ListAzureStorageAccountsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will update the Azure storage account configurations for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AzureStoragePropertyDictionaryResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/backup": { + "put": { + "tags": [ + "WebApps" + ], + "summary": "Updates the backup configuration of an app.", + "description": "Description for Updates the backup configuration of an app.", + "operationId": "WebApps_UpdateBackupConfigurationSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "request", + "in": "body", + "description": "Edited backup configuration.", + "required": true, + "schema": { + "$ref": "#/definitions/BackupRequest" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will update the backup configuration for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupRequest" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Deletes the backup configuration of an app.", + "description": "Description for Deletes the backup configuration of an app.", + "operationId": "WebApps_DeleteBackupConfigurationSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will delete the backup configuration for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted backup configuration." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/backup/list": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Gets the backup configuration of an app.", + "description": "Description for Gets the backup configuration of an app.", + "operationId": "WebApps_GetBackupConfigurationSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get the backup configuration for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupRequest" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/configreferences/appsettings": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the config reference app settings and status of an app", + "description": "Description for Gets the config reference app settings and status of an app", + "operationId": "WebApps_GetAppSettingsKeyVaultReferencesSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ApiKVReferenceCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Azure Key Vault references for app settings for slot": { + "$ref": "./examples/GetKeyVaultReferencesForAppSettingsSlot.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/configreferences/appsettings/{appSettingKey}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the config reference and status of an app", + "description": "Description for Gets the config reference and status of an app", + "operationId": "WebApps_GetAppSettingKeyVaultReferenceSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "appSettingKey", + "in": "path", + "description": "App Setting key name.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ApiKVReference" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Azure Key Vault slot app setting reference": { + "$ref": "./examples/GetKeyVaultReferencesForAppSettingSlot.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/configreferences/connectionstrings": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the config reference app settings and status of an app", + "description": "Description for Gets the config reference app settings and status of an app", + "operationId": "WebApps_GetSiteConnectionStringKeyVaultReferencesSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ApiKVReferenceCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/configreferences/connectionstrings/{connectionStringKey}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the config reference and status of an app", + "description": "Description for Gets the config reference and status of an app", + "operationId": "WebApps_GetSiteConnectionStringKeyVaultReferenceSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "connectionStringKey", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ApiKVReference" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/connectionstrings": { + "put": { + "tags": [ + "WebApps" + ], + "summary": "Replaces the connection strings of an app.", + "description": "Description for Replaces the connection strings of an app.", + "operationId": "WebApps_UpdateConnectionStringsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "connectionStrings", + "in": "body", + "description": "Connection strings of the app or deployment slot. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/ConnectionStringDictionary" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will update the connection settings for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ConnectionStringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/connectionstrings/list": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Gets the connection strings of an app.", + "description": "Description for Gets the connection strings of an app.", + "operationId": "WebApps_ListConnectionStringsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get the connection settings for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ConnectionStringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/logs": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the logging configuration of an app.", + "description": "Description for Gets the logging configuration of an app.", + "operationId": "WebApps_GetDiagnosticLogsConfigurationSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get the logging configuration for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SiteLogsConfig" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Updates the logging configuration of an app.", + "description": "Description for Updates the logging configuration of an app.", + "operationId": "WebApps_UpdateDiagnosticLogsConfigSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "siteLogsConfig", + "in": "body", + "description": "A SiteLogsConfig JSON object that contains the logging configuration to change in the \"properties\" property.", + "required": true, + "schema": { + "$ref": "#/definitions/SiteLogsConfig" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will update the logging configuration for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SiteLogsConfig" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/metadata": { + "put": { + "tags": [ + "WebApps" + ], + "summary": "Replaces the metadata of an app.", + "description": "Description for Replaces the metadata of an app.", + "operationId": "WebApps_UpdateMetadataSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "metadata", + "in": "body", + "description": "Edited metadata of the app or deployment slot. See example.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will update the metadata for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/metadata/list": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Gets the metadata of an app.", + "description": "Description for Gets the metadata of an app.", + "operationId": "WebApps_ListMetadataSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get the metadata for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/publishingcredentials/list": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Gets the Git/FTP publishing credentials of an app.", + "description": "Description for Gets the Git/FTP publishing credentials of an app.", + "operationId": "WebApps_ListPublishingCredentialsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get the publishing credentials for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/User" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/pushsettings": { + "put": { + "tags": [ + "WebApps" + ], + "summary": "Updates the Push settings associated with web app.", + "description": "Description for Updates the Push settings associated with web app.", + "operationId": "WebApps_UpdateSitePushSettingsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "pushSettings", + "in": "body", + "description": "Push settings associated with web app.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/PushSettings" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of web app slot. If not specified then will default to production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/PushSettings" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/pushsettings/list": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Gets the Push settings associated with web app.", + "description": "Description for Gets the Push settings associated with web app.", + "operationId": "WebApps_ListSitePushSettingsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of web app slot. If not specified then will default to production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/PushSettings" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/web": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the configuration of an app, such as platform version and bitness, default documents, virtual applications, Always On, etc.", + "description": "Description for Gets the configuration of an app, such as platform version and bitness, default documents, virtual applications, Always On, etc.", + "operationId": "WebApps_GetConfigurationSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will return configuration for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SiteConfigResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Updates the configuration of an app.", + "description": "Description for Updates the configuration of an app.", + "operationId": "WebApps_CreateOrUpdateConfigurationSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "siteConfig", + "in": "body", + "description": "JSON representation of a SiteConfig object. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/SiteConfigResource" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will update configuration for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SiteConfigResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "WebApps" + ], + "summary": "Updates the configuration of an app.", + "description": "Description for Updates the configuration of an app.", + "operationId": "WebApps_UpdateConfigurationSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "siteConfig", + "in": "body", + "description": "JSON representation of a SiteConfig object. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/SiteConfigResource" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will update configuration for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SiteConfigResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/web/snapshots": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a list of web app configuration snapshots identifiers. Each element of the list contains a timestamp and the ID of the snapshot.", + "description": "Description for Gets a list of web app configuration snapshots identifiers. Each element of the list contains a timestamp and the ID of the snapshot.", + "operationId": "WebApps_ListConfigurationSnapshotInfoSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will return configuration for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SiteConfigurationSnapshotInfoCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/web/snapshots/{snapshotId}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a snapshot of the configuration of an app at a previous point in time.", + "description": "Description for Gets a snapshot of the configuration of an app at a previous point in time.", + "operationId": "WebApps_GetConfigurationSnapshotSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "snapshotId", + "in": "path", + "description": "The ID of the snapshot to read.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will return configuration for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SiteConfigResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/web/snapshots/{snapshotId}/recover": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Reverts the configuration of an app to a previous snapshot.", + "description": "Description for Reverts the configuration of an app to a previous snapshot.", + "operationId": "WebApps_RecoverSiteConfigurationSnapshotSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "snapshotId", + "in": "path", + "description": "The ID of the snapshot to read.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will return configuration for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/containerlogs": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Gets the last lines of docker logs for the given site", + "description": "Description for Gets the last lines of docker logs for the given site", + "operationId": "WebApps_GetWebSiteContainerLogsSlot", + "produces": [ + "application/octet-stream" + ], + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of web app slot. If not specified then will default to production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "200": { + "description": "OK", + "schema": { + "type": "file" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/containerlogs/zip/download": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Gets the ZIP archived docker log files for the given site", + "description": "Description for Gets the ZIP archived docker log files for the given site", + "operationId": "WebApps_GetContainerLogsZipSlot", + "produces": [ + "application/zip" + ], + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of web app slot. If not specified then will default to production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "200": { + "description": "OK", + "schema": { + "type": "file" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/continuouswebjobs": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "List continuous web jobs for an app, or a deployment slot.", + "description": "Description for List continuous web jobs for an app, or a deployment slot.", + "operationId": "WebApps_ListContinuousWebJobsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API deletes a deployment for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ContinuousWebJobCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/continuouswebjobs/{webJobName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a continuous web job by its ID for an app, or a deployment slot.", + "description": "Description for Gets a continuous web job by its ID for an app, or a deployment slot.", + "operationId": "WebApps_GetContinuousWebJobSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "webJobName", + "in": "path", + "description": "Name of Web Job.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API deletes a deployment for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Found continuous web job.", + "schema": { + "$ref": "#/definitions/ContinuousWebJob" + } + }, + "404": { + "description": "Continuous web job does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Delete a continuous web job by its ID for an app, or a deployment slot.", + "description": "Description for Delete a continuous web job by its ID for an app, or a deployment slot.", + "operationId": "WebApps_DeleteContinuousWebJobSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "webJobName", + "in": "path", + "description": "Name of Web Job.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API deletes a deployment for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted continuous web job." + }, + "204": { + "description": "Continuous web job does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/continuouswebjobs/{webJobName}/start": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Start a continuous web job for an app, or a deployment slot.", + "description": "Description for Start a continuous web job for an app, or a deployment slot.", + "operationId": "WebApps_StartContinuousWebJobSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "webJobName", + "in": "path", + "description": "Name of Web Job.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API deletes a deployment for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Found continuous web job." + }, + "404": { + "description": "Continuous web job does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/continuouswebjobs/{webJobName}/stop": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Stop a continuous web job for an app, or a deployment slot.", + "description": "Description for Stop a continuous web job for an app, or a deployment slot.", + "operationId": "WebApps_StopContinuousWebJobSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "webJobName", + "in": "path", + "description": "Name of Web Job.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API deletes a deployment for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Found continuous web job." + }, + "404": { + "description": "Continuous web job does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/deployments": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "List deployments for an app, or a deployment slot.", + "description": "Description for List deployments for an app, or a deployment slot.", + "operationId": "WebApps_ListDeploymentsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API returns deployments for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DeploymentCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/deployments/{id}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get a deployment by its ID for an app, or a deployment slot.", + "description": "Description for Get a deployment by its ID for an app, or a deployment slot.", + "operationId": "WebApps_GetDeploymentSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "id", + "in": "path", + "description": "Deployment ID.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API gets a deployment for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Deployment" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Create a deployment for an app, or a deployment slot.", + "description": "Description for Create a deployment for an app, or a deployment slot.", + "operationId": "WebApps_CreateDeploymentSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "id", + "in": "path", + "description": "ID of an existing deployment.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API creates a deployment for the production slot.", + "required": true, + "type": "string" + }, + { + "name": "deployment", + "in": "body", + "description": "Deployment details.", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Deployment" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Delete a deployment by its ID for an app, or a deployment slot.", + "description": "Description for Delete a deployment by its ID for an app, or a deployment slot.", + "operationId": "WebApps_DeleteDeploymentSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "id", + "in": "path", + "description": "Deployment ID.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API deletes a deployment for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted deployment." + }, + "204": { + "description": "Deployment does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/deployments/{id}/log": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "List deployment log for specific deployment for an app, or a deployment slot.", + "description": "Description for List deployment log for specific deployment for an app, or a deployment slot.", + "operationId": "WebApps_ListDeploymentLogSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "id", + "in": "path", + "description": "The ID of a specific deployment. This is the value of the name property in the JSON response from \"GET /api/sites/{siteName}/deployments\".", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API returns deployments for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Deployment" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/discoverbackup": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Discovers an existing app backup that can be restored from a blob in Azure storage. Use this to get information about the databases stored in a backup.", + "description": "Description for Discovers an existing app backup that can be restored from a blob in Azure storage. Use this to get information about the databases stored in a backup.", + "operationId": "WebApps_DiscoverBackupSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "request", + "in": "body", + "description": "A RestoreRequest object that includes Azure storage URL and blog name for discovery of backup.", + "required": true, + "schema": { + "$ref": "#/definitions/RestoreRequest" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will perform discovery for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RestoreRequest" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/domainOwnershipIdentifiers": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Lists ownership identifiers for domain associated with web app.", + "description": "Description for Lists ownership identifiers for domain associated with web app.", + "operationId": "WebApps_ListDomainOwnershipIdentifiersSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will delete the binding for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/IdentifierCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/domainOwnershipIdentifiers/{domainOwnershipIdentifierName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get domain ownership identifier for web app.", + "description": "Description for Get domain ownership identifier for web app.", + "operationId": "WebApps_GetDomainOwnershipIdentifierSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "domainOwnershipIdentifierName", + "in": "path", + "description": "Name of domain ownership identifier.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will delete the binding for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Identifier" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Creates a domain ownership identifier for web app, or updates an existing ownership identifier.", + "description": "Description for Creates a domain ownership identifier for web app, or updates an existing ownership identifier.", + "operationId": "WebApps_CreateOrUpdateDomainOwnershipIdentifierSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "domainOwnershipIdentifierName", + "in": "path", + "description": "Name of domain ownership identifier.", + "required": true, + "type": "string" + }, + { + "name": "domainOwnershipIdentifier", + "in": "body", + "description": "A JSON representation of the domain ownership properties.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Identifier" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will delete the binding for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Identifier" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Deletes a domain ownership identifier for a web app.", + "description": "Description for Deletes a domain ownership identifier for a web app.", + "operationId": "WebApps_DeleteDomainOwnershipIdentifierSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "domainOwnershipIdentifierName", + "in": "path", + "description": "Name of domain ownership identifier.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will delete the binding for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted domain ownership identifier." + }, + "204": { + "description": "Domain ownership identifier does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "WebApps" + ], + "summary": "Creates a domain ownership identifier for web app, or updates an existing ownership identifier.", + "description": "Description for Creates a domain ownership identifier for web app, or updates an existing ownership identifier.", + "operationId": "WebApps_UpdateDomainOwnershipIdentifierSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "domainOwnershipIdentifierName", + "in": "path", + "description": "Name of domain ownership identifier.", + "required": true, + "type": "string" + }, + { + "name": "domainOwnershipIdentifier", + "in": "body", + "description": "A JSON representation of the domain ownership properties.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Identifier" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will delete the binding for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/Identifier" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/extensions/MSDeploy": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get the status of the last MSDeploy operation.", + "description": "Description for Get the status of the last MSDeploy operation.", + "operationId": "WebApps_GetMSDeployStatusSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of web app slot. If not specified then will default to production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MSDeployStatus" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Invoke the MSDeploy web app extension.", + "description": "Description for Invoke the MSDeploy web app extension.", + "operationId": "WebApps_CreateMSDeployOperationSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of web app slot. If not specified then will default to production slot.", + "required": true, + "type": "string" + }, + { + "name": "MSDeploy", + "in": "body", + "description": "Details of MSDeploy operation", + "required": true, + "schema": { + "$ref": "#/definitions/MSDeploy" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Deployment is scheduled.", + "schema": { + "$ref": "#/definitions/MSDeployStatus" + } + }, + "409": { + "description": "Another deployment is in progress." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/extensions/MSDeploy/log": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get the MSDeploy Log for the last MSDeploy operation.", + "description": "Description for Get the MSDeploy Log for the last MSDeploy operation.", + "operationId": "WebApps_GetMSDeployLogSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of web app slot. If not specified then will default to production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "MSDeploy log returned.", + "schema": { + "$ref": "#/definitions/MSDeployLog" + } + }, + "404": { + "description": "MSDeploy log not found." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/functions": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "List the functions for a web site, or a deployment slot.", + "description": "Description for List the functions for a web site, or a deployment slot.", + "operationId": "WebApps_ListInstanceFunctionsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Function information returned.", + "schema": { + "$ref": "#/definitions/FunctionEnvelopeCollection" + } + }, + "404": { + "description": "Function with an ID of {functionName} is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/functions/admin/token": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Fetch a short lived token that can be exchanged for a master key.", + "description": "Description for Fetch a short lived token that can be exchanged for a master key.", + "operationId": "WebApps_GetFunctionsAdminTokenSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of web app slot. If not specified then will default to production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "string" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/functions/{functionName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get function information by its ID for web site, or a deployment slot.", + "description": "Description for Get function information by its ID for web site, or a deployment slot.", + "operationId": "WebApps_GetInstanceFunctionSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "functionName", + "in": "path", + "description": "Function name.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Function information returned.", + "schema": { + "$ref": "#/definitions/FunctionEnvelope" + } + }, + "404": { + "description": "Function with a name of {functionName} does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Create function for web site, or a deployment slot.", + "description": "Description for Create function for web site, or a deployment slot.", + "operationId": "WebApps_CreateInstanceFunctionSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "functionName", + "in": "path", + "description": "Function name.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot.", + "required": true, + "type": "string" + }, + { + "name": "function_envelope", + "in": "body", + "description": "Function details.", + "required": true, + "schema": { + "$ref": "#/definitions/FunctionEnvelope" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Function created.", + "schema": { + "$ref": "#/definitions/FunctionEnvelope" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Delete a function for web site, or a deployment slot.", + "description": "Description for Delete a function for web site, or a deployment slot.", + "operationId": "WebApps_DeleteInstanceFunctionSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "functionName", + "in": "path", + "description": "Function name.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "Function deleted." + }, + "404": { + "description": "Function does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/functions/{functionName}/keys/{keyName}": { + "put": { + "tags": [ + "WebApps" + ], + "summary": "Add or update a function secret.", + "description": "Description for Add or update a function secret.", + "operationId": "WebApps_CreateOrUpdateFunctionSecretSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "functionName", + "in": "path", + "description": "The name of the function.", + "required": true, + "type": "string" + }, + { + "name": "keyName", + "in": "path", + "description": "The name of the key.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot.", + "required": true, + "type": "string" + }, + { + "name": "key", + "in": "body", + "description": "The key to create or update", + "required": true, + "schema": { + "$ref": "#/definitions/KeyInfo" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Key was created.", + "schema": { + "$ref": "#/definitions/KeyInfo" + } + }, + "200": { + "description": "Key was updated.", + "schema": { + "$ref": "#/definitions/KeyInfo" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Delete a function secret.", + "description": "Description for Delete a function secret.", + "operationId": "WebApps_DeleteFunctionSecretSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "functionName", + "in": "path", + "description": "The name of the function.", + "required": true, + "type": "string" + }, + { + "name": "keyName", + "in": "path", + "description": "The name of the key.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "404": { + "description": "Key was not found." + }, + "204": { + "description": "Key was deleted." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/functions/{functionName}/listkeys": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Get function keys for a function in a web site, or a deployment slot.", + "description": "Description for Get function keys for a function in a web site, or a deployment slot.", + "operationId": "WebApps_ListFunctionKeysSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "functionName", + "in": "path", + "description": "Function name.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Function keys returned.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/functions/{functionName}/listsecrets": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Get function secrets for a function in a web site, or a deployment slot.", + "description": "Description for Get function secrets for a function in a web site, or a deployment slot.", + "operationId": "WebApps_ListFunctionSecretsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "functionName", + "in": "path", + "description": "Function name.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Function secrets returned.", + "schema": { + "$ref": "#/definitions/FunctionSecrets" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/host/default/listkeys": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Get host secrets for a function app.", + "description": "Description for Get host secrets for a function app.", + "operationId": "WebApps_ListHostKeysSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Host secrets returned.", + "schema": { + "$ref": "#/definitions/HostKeys" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/host/default/listsyncstatus": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "This is to allow calling via powershell and ARM template.", + "description": "Description for This is to allow calling via powershell and ARM template.", + "operationId": "WebApps_ListSyncStatusSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/host/default/sync": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Syncs function trigger metadata to the management database", + "description": "Description for Syncs function trigger metadata to the management database", + "operationId": "WebApps_SyncFunctionsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/host/default/{keyType}/{keyName}": { + "put": { + "tags": [ + "WebApps" + ], + "summary": "Add or update a host level secret.", + "description": "Description for Add or update a host level secret.", + "operationId": "WebApps_CreateOrUpdateHostSecretSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "keyType", + "in": "path", + "description": "The type of host key.", + "required": true, + "type": "string" + }, + { + "name": "keyName", + "in": "path", + "description": "The name of the key.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot.", + "required": true, + "type": "string" + }, + { + "name": "key", + "in": "body", + "description": "The key to create or update", + "required": true, + "schema": { + "$ref": "#/definitions/KeyInfo" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Key was created.", + "schema": { + "$ref": "#/definitions/KeyInfo" + } + }, + "200": { + "description": "Key was updated.", + "schema": { + "$ref": "#/definitions/KeyInfo" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Delete a host level secret.", + "description": "Description for Delete a host level secret.", + "operationId": "WebApps_DeleteHostSecretSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "keyType", + "in": "path", + "description": "The type of host key.", + "required": true, + "type": "string" + }, + { + "name": "keyName", + "in": "path", + "description": "The name of the key.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "404": { + "description": "Key was not found." + }, + "204": { + "description": "Key was deleted." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/hostNameBindings": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get hostname bindings for an app or a deployment slot.", + "description": "Description for Get hostname bindings for an app or a deployment slot.", + "operationId": "WebApps_ListHostNameBindingsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API gets hostname bindings for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/HostNameBindingCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/hostNameBindings/{hostName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get the named hostname binding for an app (or deployment slot, if specified).", + "description": "Description for Get the named hostname binding for an app (or deployment slot, if specified).", + "operationId": "WebApps_GetHostNameBindingSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API the named binding for the production slot.", + "required": true, + "type": "string" + }, + { + "name": "hostName", + "in": "path", + "description": "Hostname in the hostname binding.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/HostNameBinding" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Creates a hostname binding for an app.", + "description": "Description for Creates a hostname binding for an app.", + "operationId": "WebApps_CreateOrUpdateHostNameBindingSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "hostName", + "in": "path", + "description": "Hostname in the hostname binding.", + "required": true, + "type": "string" + }, + { + "name": "hostNameBinding", + "in": "body", + "description": "Binding details. This is the JSON representation of a HostNameBinding object.", + "required": true, + "schema": { + "$ref": "#/definitions/HostNameBinding" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will create a binding for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/HostNameBinding" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Deletes a hostname binding for an app.", + "description": "Description for Deletes a hostname binding for an app.", + "operationId": "WebApps_DeleteHostNameBindingSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will delete the binding for the production slot.", + "required": true, + "type": "string" + }, + { + "name": "hostName", + "in": "path", + "description": "Hostname in the hostname binding.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted hostname binding." + }, + "204": { + "description": "Hostname binding does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/hybridConnectionNamespaces/{namespaceName}/relays/{relayName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Retrieves a specific Service Bus Hybrid Connection used by this Web App.", + "description": "Description for Retrieves a specific Service Bus Hybrid Connection used by this Web App.", + "operationId": "WebApps_GetHybridConnectionSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "The name of the web app.", + "required": true, + "type": "string" + }, + { + "name": "namespaceName", + "in": "path", + "description": "The namespace for this hybrid connection.", + "required": true, + "type": "string" + }, + { + "name": "relayName", + "in": "path", + "description": "The relay name for this hybrid connection.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "The name of the slot for the web app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/HybridConnection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Creates a new Hybrid Connection using a Service Bus relay.", + "description": "Description for Creates a new Hybrid Connection using a Service Bus relay.", + "operationId": "WebApps_CreateOrUpdateHybridConnectionSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "The name of the web app.", + "required": true, + "type": "string" + }, + { + "name": "namespaceName", + "in": "path", + "description": "The namespace for this hybrid connection.", + "required": true, + "type": "string" + }, + { + "name": "relayName", + "in": "path", + "description": "The relay name for this hybrid connection.", + "required": true, + "type": "string" + }, + { + "name": "connectionEnvelope", + "in": "body", + "description": "The details of the hybrid connection.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/HybridConnection" + } + }, + { + "name": "slot", + "in": "path", + "description": "The name of the slot for the web app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/HybridConnection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Removes a Hybrid Connection from this site.", + "description": "Description for Removes a Hybrid Connection from this site.", + "operationId": "WebApps_DeleteHybridConnectionSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "The name of the web app.", + "required": true, + "type": "string" + }, + { + "name": "namespaceName", + "in": "path", + "description": "The namespace for this hybrid connection.", + "required": true, + "type": "string" + }, + { + "name": "relayName", + "in": "path", + "description": "The relay name for this hybrid connection.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "The name of the slot for the web app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted hybrid connection." + }, + "404": { + "description": "Hybrid connection does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "WebApps" + ], + "summary": "Creates a new Hybrid Connection using a Service Bus relay.", + "description": "Description for Creates a new Hybrid Connection using a Service Bus relay.", + "operationId": "WebApps_UpdateHybridConnectionSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "The name of the web app.", + "required": true, + "type": "string" + }, + { + "name": "namespaceName", + "in": "path", + "description": "The namespace for this hybrid connection.", + "required": true, + "type": "string" + }, + { + "name": "relayName", + "in": "path", + "description": "The relay name for this hybrid connection.", + "required": true, + "type": "string" + }, + { + "name": "connectionEnvelope", + "in": "body", + "description": "The details of the hybrid connection.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/HybridConnection" + } + }, + { + "name": "slot", + "in": "path", + "description": "The name of the slot for the web app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/HybridConnection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/hybridConnectionRelays": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Retrieves all Service Bus Hybrid Connections used by this Web App.", + "description": "Description for Retrieves all Service Bus Hybrid Connections used by this Web App.", + "operationId": "WebApps_ListHybridConnectionsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "The name of the web app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "The name of the slot for the web app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/HybridConnection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/hybridconnection": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets hybrid connections configured for an app (or deployment slot, if specified).", + "description": "Description for Gets hybrid connections configured for an app (or deployment slot, if specified).", + "operationId": "WebApps_ListRelayServiceConnectionsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get hybrid connections for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RelayServiceConnectionEntity" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/hybridconnection/{entityName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a hybrid connection configuration by its name.", + "description": "Description for Gets a hybrid connection configuration by its name.", + "operationId": "WebApps_GetRelayServiceConnectionSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "entityName", + "in": "path", + "description": "Name of the hybrid connection.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get a hybrid connection for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RelayServiceConnectionEntity" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Creates a new hybrid connection configuration (PUT), or updates an existing one (PATCH).", + "description": "Description for Creates a new hybrid connection configuration (PUT), or updates an existing one (PATCH).", + "operationId": "WebApps_CreateOrUpdateRelayServiceConnectionSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "entityName", + "in": "path", + "description": "Name of the hybrid connection configuration.", + "required": true, + "type": "string" + }, + { + "name": "connectionEnvelope", + "in": "body", + "description": "Details of the hybrid connection configuration.", + "required": true, + "schema": { + "$ref": "#/definitions/RelayServiceConnectionEntity" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will create or update a hybrid connection for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RelayServiceConnectionEntity" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Deletes a relay service connection by its name.", + "description": "Description for Deletes a relay service connection by its name.", + "operationId": "WebApps_DeleteRelayServiceConnectionSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "entityName", + "in": "path", + "description": "Name of the hybrid connection configuration.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will delete a hybrid connection for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted relay service connection." + }, + "404": { + "description": "Relay service connection does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "WebApps" + ], + "summary": "Creates a new hybrid connection configuration (PUT), or updates an existing one (PATCH).", + "description": "Description for Creates a new hybrid connection configuration (PUT), or updates an existing one (PATCH).", + "operationId": "WebApps_UpdateRelayServiceConnectionSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "entityName", + "in": "path", + "description": "Name of the hybrid connection configuration.", + "required": true, + "type": "string" + }, + { + "name": "connectionEnvelope", + "in": "body", + "description": "Details of the hybrid connection configuration.", + "required": true, + "schema": { + "$ref": "#/definitions/RelayServiceConnectionEntity" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will create or update a hybrid connection for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RelayServiceConnectionEntity" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/instances": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets all scale-out instances of an app.", + "description": "Description for Gets all scale-out instances of an app.", + "operationId": "WebApps_ListInstanceIdentifiersSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API gets the production slot instances.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/WebAppInstanceStatusCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/instances/{instanceId}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets all scale-out instances of an app.", + "description": "Description for Gets all scale-out instances of an app.", + "operationId": "WebApps_GetInstanceInfoSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API gets the production slot instances.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/WebSiteInstanceStatus" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get site instance info": { + "$ref": "./examples/GetSiteInstanceInfo.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/instances/{instanceId}/extensions/MSDeploy": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get the status of the last MSDeploy operation.", + "description": "Description for Get the status of the last MSDeploy operation.", + "operationId": "WebApps_GetInstanceMsDeployStatusSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of web app slot. If not specified then will default to production slot.", + "required": true, + "type": "string" + }, + { + "name": "instanceId", + "in": "path", + "description": "ID of web app instance.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MSDeployStatus" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Invoke the MSDeploy web app extension.", + "description": "Description for Invoke the MSDeploy web app extension.", + "operationId": "WebApps_CreateInstanceMSDeployOperationSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of web app slot. If not specified then will default to production slot.", + "required": true, + "type": "string" + }, + { + "name": "instanceId", + "in": "path", + "description": "ID of web app instance.", + "required": true, + "type": "string" + }, + { + "name": "MSDeploy", + "in": "body", + "description": "Details of MSDeploy operation", + "required": true, + "schema": { + "$ref": "#/definitions/MSDeploy" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Deployment is scheduled.", + "schema": { + "$ref": "#/definitions/MSDeployStatus" + } + }, + "409": { + "description": "Another deployment is in progress." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/instances/{instanceId}/extensions/MSDeploy/log": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get the MSDeploy Log for the last MSDeploy operation.", + "description": "Description for Get the MSDeploy Log for the last MSDeploy operation.", + "operationId": "WebApps_GetInstanceMSDeployLogSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of web app slot. If not specified then will default to production slot.", + "required": true, + "type": "string" + }, + { + "name": "instanceId", + "in": "path", + "description": "ID of web app instance.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "MSDeploy log returned.", + "schema": { + "$ref": "#/definitions/MSDeployLog" + } + }, + "404": { + "description": "MSDeploy log not found." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/instances/{instanceId}/processes": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get list of processes for a web site, or a deployment slot, or for a specific scaled-out instance in a web site.", + "description": "Description for Get list of processes for a web site, or a deployment slot, or for a specific scaled-out instance in a web site.", + "operationId": "WebApps_ListInstanceProcessesSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API returns deployments for the production slot.", + "required": true, + "type": "string" + }, + { + "name": "instanceId", + "in": "path", + "description": "ID of a specific scaled-out instance. This is the value of the name property in the JSON response from \"GET api/sites/{siteName}/instances\".", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Process terminated.", + "schema": { + "$ref": "#/definitions/ProcessInfoCollection" + } + }, + "404": { + "description": "Process with the specified ID is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/instances/{instanceId}/processes/{processId}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get process information by its ID for a specific scaled-out instance in a web site.", + "description": "Description for Get process information by its ID for a specific scaled-out instance in a web site.", + "operationId": "WebApps_GetInstanceProcessSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "processId", + "in": "path", + "description": "PID.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API returns deployments for the production slot.", + "required": true, + "type": "string" + }, + { + "name": "instanceId", + "in": "path", + "description": "ID of a specific scaled-out instance. This is the value of the name property in the JSON response from \"GET api/sites/{siteName}/instances\".", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Process information returned.", + "schema": { + "$ref": "#/definitions/ProcessInfo" + } + }, + "404": { + "description": "Process with the specified ID is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Terminate a process by its ID for a web site, or a deployment slot, or specific scaled-out instance in a web site.", + "description": "Description for Terminate a process by its ID for a web site, or a deployment slot, or specific scaled-out instance in a web site.", + "operationId": "WebApps_DeleteInstanceProcessSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "processId", + "in": "path", + "description": "PID.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API returns deployments for the production slot.", + "required": true, + "type": "string" + }, + { + "name": "instanceId", + "in": "path", + "description": "ID of a specific scaled-out instance. This is the value of the name property in the JSON response from \"GET api/sites/{siteName}/instances\".", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "Process terminated." + }, + "404": { + "description": "Process with the specified ID is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/instances/{instanceId}/processes/{processId}/dump": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get a memory dump of a process by its ID for a specific scaled-out instance in a web site.", + "description": "Description for Get a memory dump of a process by its ID for a specific scaled-out instance in a web site.", + "operationId": "WebApps_GetInstanceProcessDumpSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "processId", + "in": "path", + "description": "PID.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API returns deployments for the production slot.", + "required": true, + "type": "string" + }, + { + "name": "instanceId", + "in": "path", + "description": "ID of a specific scaled-out instance. This is the value of the name property in the JSON response from \"GET api/sites/{siteName}/instances\".", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "file" + } + }, + "404": { + "description": "Process with the specified ID is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/instances/{instanceId}/processes/{processId}/modules": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "List module information for a process by its ID for a specific scaled-out instance in a web site.", + "description": "Description for List module information for a process by its ID for a specific scaled-out instance in a web site.", + "operationId": "WebApps_ListInstanceProcessModulesSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "processId", + "in": "path", + "description": "PID.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API returns deployments for the production slot.", + "required": true, + "type": "string" + }, + { + "name": "instanceId", + "in": "path", + "description": "ID of a specific scaled-out instance. This is the value of the name property in the JSON response from \"GET api/sites/{siteName}/instances\".", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Module information returned.", + "schema": { + "$ref": "#/definitions/ProcessModuleInfoCollection" + } + }, + "404": { + "description": "Process with the specified ID is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/instances/{instanceId}/processes/{processId}/modules/{baseAddress}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get process information by its ID for a specific scaled-out instance in a web site.", + "description": "Description for Get process information by its ID for a specific scaled-out instance in a web site.", + "operationId": "WebApps_GetInstanceProcessModuleSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "processId", + "in": "path", + "description": "PID.", + "required": true, + "type": "string" + }, + { + "name": "baseAddress", + "in": "path", + "description": "Module base address.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API returns deployments for the production slot.", + "required": true, + "type": "string" + }, + { + "name": "instanceId", + "in": "path", + "description": "ID of a specific scaled-out instance. This is the value of the name property in the JSON response from \"GET api/sites/{siteName}/instances\".", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Module information returned.", + "schema": { + "$ref": "#/definitions/ProcessModuleInfo" + } + }, + "404": { + "description": "Process with the specified ID is not running, or a module with the specified baseAddress was not found." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/instances/{instanceId}/processes/{processId}/threads": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "List the threads in a process by its ID for a specific scaled-out instance in a web site.", + "description": "Description for List the threads in a process by its ID for a specific scaled-out instance in a web site.", + "operationId": "WebApps_ListInstanceProcessThreadsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "processId", + "in": "path", + "description": "PID.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API returns deployments for the production slot.", + "required": true, + "type": "string" + }, + { + "name": "instanceId", + "in": "path", + "description": "ID of a specific scaled-out instance. This is the value of the name property in the JSON response from \"GET api/sites/{siteName}/instances\".", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Thread information returned.", + "schema": { + "$ref": "#/definitions/ProcessThreadInfoCollection" + } + }, + "404": { + "description": "Process with the specified ID is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/iscloneable": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Shows whether an app can be cloned to another resource group or subscription.", + "description": "Description for Shows whether an app can be cloned to another resource group or subscription.", + "operationId": "WebApps_IsCloneableSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. By default, this API returns information on the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/SiteCloneability" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/listbackups": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Gets existing backups of an app.", + "description": "Description for Gets existing backups of an app.", + "operationId": "WebApps_ListSiteBackupsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get backups of the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupItemCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List backups": { + "$ref": "./examples/ListSlotBackups.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/listsyncfunctiontriggerstatus": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "This is to allow calling via powershell and ARM template.", + "description": "Description for This is to allow calling via powershell and ARM template.", + "operationId": "WebApps_ListSyncFunctionTriggersSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/FunctionSecrets" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/migratemysql/status": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Returns the status of MySql in app migration, if one is active, and whether or not MySql in app is enabled", + "description": "Description for Returns the status of MySql in app migration, if one is active, and whether or not MySql in app is enabled", + "operationId": "WebApps_GetMigrateMySqlStatusSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MigrateMySqlStatus" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/networkConfig/virtualNetwork": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a Swift Virtual Network connection.", + "description": "Description for Gets a Swift Virtual Network connection.", + "operationId": "WebApps_GetSwiftVirtualNetworkConnectionSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get a gateway for the production slot's Virtual Network.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/SwiftVirtualNetwork" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Deletes a Swift Virtual Network connection from an app (or deployment slot).", + "description": "Description for Deletes a Swift Virtual Network connection from an app (or deployment slot).", + "operationId": "WebApps_DeleteSwiftVirtualNetworkSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will delete the connection for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted virtual network." + }, + "404": { + "description": "Virtual network does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/networkFeatures/{view}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets all network features used by the app (or deployment slot, if specified).", + "description": "Description for Gets all network features used by the app (or deployment slot, if specified).", + "operationId": "WebApps_ListNetworkFeaturesSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "view", + "in": "path", + "description": "The type of view. Only \"summary\" is supported at this time.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get network features for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/NetworkFeatures" + } + }, + "404": { + "description": "The requested view does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/networkTrace/operationresults/{operationId}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a named operation for a network trace capturing (or deployment slot, if specified).", + "description": "Description for Gets a named operation for a network trace capturing (or deployment slot, if specified).", + "operationId": "WebApps_GetNetworkTraceOperationSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "operationId", + "in": "path", + "description": "GUID of the operation.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get an operation for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } + } + }, + "202": { + "description": "Operation is in progress.", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get the current status of a network trace operation for a site": { + "$ref": "./examples/GetWebSiteNetworkTraceOperation.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/networkTrace/start": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Start capturing network packets for the site (To be deprecated).", + "description": "Description for Start capturing network packets for the site (To be deprecated).", + "operationId": "WebApps_StartWebSiteNetworkTraceSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "The name of the web app.", + "required": true, + "type": "string" + }, + { + "name": "durationInSeconds", + "in": "query", + "description": "The duration to keep capturing in seconds.", + "type": "integer", + "format": "int32" + }, + { + "name": "slot", + "in": "path", + "description": "The name of the slot for this web app.", + "required": true, + "type": "string" + }, + { + "name": "maxFrameLength", + "in": "query", + "description": "The maximum frame length in bytes (Optional).", + "type": "integer", + "format": "int32" + }, + { + "name": "sasUrl", + "in": "query", + "description": "The Blob URL to store capture file.", + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "string" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/networkTrace/startOperation": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Start capturing network packets for the site.", + "description": "Description for Start capturing network packets for the site.", + "operationId": "WebApps_StartWebSiteNetworkTraceOperationSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "The name of the web app.", + "required": true, + "type": "string" + }, + { + "name": "durationInSeconds", + "in": "query", + "description": "The duration to keep capturing in seconds.", + "type": "integer", + "format": "int32" + }, + { + "name": "slot", + "in": "path", + "description": "The name of the slot for this web app.", + "required": true, + "type": "string" + }, + { + "name": "maxFrameLength", + "in": "query", + "description": "The maximum frame length in bytes (Optional).", + "type": "integer", + "format": "int32" + }, + { + "name": "sasUrl", + "in": "query", + "description": "The Blob URL to store capture file.", + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } + } + }, + "202": { + "description": "Operation is in progress.", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Start a new network trace operation for a site": { + "$ref": "./examples/StartWebSiteNetworkTraceOperation.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/networkTrace/stop": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Stop ongoing capturing network packets for the site.", + "description": "Description for Stop ongoing capturing network packets for the site.", + "operationId": "WebApps_StopWebSiteNetworkTraceSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "The name of the web app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "The name of the slot for this web app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Stopped." + }, + "204": { + "description": "Stopped." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Stop a currently running network trace operation for a site": { + "$ref": "./examples/StopWebSiteNetworkTrace.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/networkTrace/{operationId}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a named operation for a network trace capturing (or deployment slot, if specified).", + "description": "Description for Gets a named operation for a network trace capturing (or deployment slot, if specified).", + "operationId": "WebApps_GetNetworkTracesSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "operationId", + "in": "path", + "description": "GUID of the operation.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get an operation for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get NetworkTraces for a site": { + "$ref": "./examples/GetWebSiteNetworkTraces.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/networkTraces/current/operationresults/{operationId}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a named operation for a network trace capturing (or deployment slot, if specified).", + "description": "Description for Gets a named operation for a network trace capturing (or deployment slot, if specified).", + "operationId": "WebApps_GetNetworkTraceOperationSlotV2", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "operationId", + "in": "path", + "description": "GUID of the operation.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get an operation for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } + } + }, + "202": { + "description": "Operation is in progress.", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get the current status of a network trace operation for a site": { + "$ref": "./examples/GetWebSiteNetworkTraceOperation.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/networkTraces/{operationId}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a named operation for a network trace capturing (or deployment slot, if specified).", + "description": "Description for Gets a named operation for a network trace capturing (or deployment slot, if specified).", + "operationId": "WebApps_GetNetworkTracesSlotV2", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "operationId", + "in": "path", + "description": "GUID of the operation.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get an operation for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get NetworkTraces for a site": { + "$ref": "./examples/GetWebSiteNetworkTraces.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/newpassword": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Generates a new publishing password for an app (or deployment slot, if specified).", + "description": "Description for Generates a new publishing password for an app (or deployment slot, if specified).", + "operationId": "WebApps_GenerateNewSitePublishingPasswordSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API generate a new publishing password for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully generate new password." + }, + "204": { + "description": "Successfully generate new password." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/perfcounters": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets perfmon counters for web app.", + "description": "Description for Gets perfmon counters for web app.", + "operationId": "WebApps_ListPerfMonCountersSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of web app slot. If not specified then will default to production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$filter", + "in": "query", + "description": "Return only usages/metrics specified in the filter. Filter conforms to odata syntax. Example: $filter=(startTime eq 2014-01-01T00:00:00Z and endTime eq 2014-12-31T23:59:59Z and timeGrain eq duration'[Hour|Minute|Day]'.", + "type": "string", + "x-ms-skip-url-encoding": true + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PerfMonCounterCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/phplogging": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets web app's event logs.", + "description": "Description for Gets web app's event logs.", + "operationId": "WebApps_GetSitePhpErrorLogFlagSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of web app slot. If not specified then will default to production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SitePhpErrorLogFlag" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/premieraddons": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the premier add-ons of an app.", + "description": "Description for Gets the premier add-ons of an app.", + "operationId": "WebApps_ListPremierAddOnsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get the premier add-ons for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PremierAddOn" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/premieraddons/{premierAddOnName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a named add-on of an app.", + "description": "Description for Gets a named add-on of an app.", + "operationId": "WebApps_GetPremierAddOnSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "premierAddOnName", + "in": "path", + "description": "Add-on name.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get the named add-on for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PremierAddOn" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Updates a named add-on of an app.", + "description": "Description for Updates a named add-on of an app.", + "operationId": "WebApps_AddPremierAddOnSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "premierAddOnName", + "in": "path", + "description": "Add-on name.", + "required": true, + "type": "string" + }, + { + "name": "premierAddOn", + "in": "body", + "description": "A JSON representation of the edited premier add-on.", + "required": true, + "schema": { + "$ref": "#/definitions/PremierAddOn" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will update the named add-on for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PremierAddOn" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Delete a premier add-on from an app.", + "description": "Description for Delete a premier add-on from an app.", + "operationId": "WebApps_DeletePremierAddOnSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "premierAddOnName", + "in": "path", + "description": "Add-on name.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will delete the named add-on for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted premier add-on." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "WebApps" + ], + "summary": "Updates a named add-on of an app.", + "description": "Description for Updates a named add-on of an app.", + "operationId": "WebApps_UpdatePremierAddOnSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "premierAddOnName", + "in": "path", + "description": "Add-on name.", + "required": true, + "type": "string" + }, + { + "name": "premierAddOn", + "in": "body", + "description": "A JSON representation of the edited premier add-on.", + "required": true, + "schema": { + "$ref": "#/definitions/PremierAddOnPatchResource" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will update the named add-on for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PremierAddOn" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/privateAccess/virtualNetworks": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets data around private site access enablement and authorized Virtual Networks that can access the site.", + "description": "Description for Gets data around private site access enablement and authorized Virtual Networks that can access the site.", + "operationId": "WebApps_GetPrivateAccessSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "The name of the web app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "The name of the slot for the web app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateAccess" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Sets data around private site access enablement and authorized Virtual Networks that can access the site.", + "description": "Description for Sets data around private site access enablement and authorized Virtual Networks that can access the site.", + "operationId": "WebApps_PutPrivateAccessVnetSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "The name of the web app.", + "required": true, + "type": "string" + }, + { + "name": "access", + "in": "body", + "description": "The information for the private access", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateAccess" + } + }, + { + "name": "slot", + "in": "path", + "description": "The name of the slot for the web app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateAccess" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/privateEndpointConnections": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the list of private endpoint connections associated with a site", + "description": "Description for Gets the list of private endpoint connections associated with a site", + "operationId": "WebApps_GetPrivateEndpointConnectionListSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the site.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the site deployment slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/PrivateEndpointConnectionCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a private endpoint connection", + "description": "Description for Gets a private endpoint connection", + "operationId": "WebApps_GetPrivateEndpointConnectionSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the site.", + "required": true, + "type": "string" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "Name of the private endpoint connection.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the site deployment slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/RemotePrivateEndpointConnectionARMResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get a private endpoint connection for a site.": { + "$ref": "./examples/GetSitePrivateEndpointConnectionSlot.json" + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Approves or rejects a private endpoint connection", + "description": "Description for Approves or rejects a private endpoint connection", + "operationId": "WebApps_ApproveOrRejectPrivateEndpointConnectionSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the site.", + "required": true, + "type": "string" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "privateEndpointWrapper", + "in": "body", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/PrivateLinkConnectionApprovalRequestResource" + } + }, + { + "name": "slot", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/RemotePrivateEndpointConnectionARMResource" + } + }, + "202": { + "description": "Asynchronous operation in progress.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/RemotePrivateEndpointConnectionARMResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Approves or rejects a private endpoint connection for a site.": { + "$ref": "./examples/ApproveRejectSitePrivateEndpointConnectionSlot.json" + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Deletes a private endpoint connection", + "description": "Description for Deletes a private endpoint connection", + "operationId": "WebApps_DeletePrivateEndpointConnectionSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the site.", + "required": true, + "type": "string" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "type": "object" + } + }, + "202": { + "description": "Asynchronous operation in progress.", + "schema": { + "type": "object" + } + }, + "204": { + "description": "No content.", + "schema": { + "type": "object" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete a private endpoint connection for a site.": { + "$ref": "./examples/DeleteSitePrivateEndpointConnectionSlot.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/privateLinkResources": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the private link resources", + "description": "Description for Gets the private link resources", + "operationId": "WebApps_GetPrivateLinkResourcesSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the site.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/PrivateLinkResourcesWrapper" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get private link resources of a site": { + "$ref": "./examples/GetSitePrivateLinkResourcesSlot.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/processes": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get list of processes for a web site, or a deployment slot, or for a specific scaled-out instance in a web site.", + "description": "Description for Get list of processes for a web site, or a deployment slot, or for a specific scaled-out instance in a web site.", + "operationId": "WebApps_ListProcessesSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API returns deployments for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Process terminated.", + "schema": { + "$ref": "#/definitions/ProcessInfoCollection" + } + }, + "404": { + "description": "Process with the specified ID is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/processes/{processId}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get process information by its ID for a specific scaled-out instance in a web site.", + "description": "Description for Get process information by its ID for a specific scaled-out instance in a web site.", + "operationId": "WebApps_GetProcessSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "processId", + "in": "path", + "description": "PID.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API returns deployments for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Process information returned.", + "schema": { + "$ref": "#/definitions/ProcessInfo" + } + }, + "404": { + "description": "Process with the specified ID is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Terminate a process by its ID for a web site, or a deployment slot, or specific scaled-out instance in a web site.", + "description": "Description for Terminate a process by its ID for a web site, or a deployment slot, or specific scaled-out instance in a web site.", + "operationId": "WebApps_DeleteProcessSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "processId", + "in": "path", + "description": "PID.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API returns deployments for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "Process terminated." + }, + "404": { + "description": "Process with the specified ID is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/processes/{processId}/dump": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get a memory dump of a process by its ID for a specific scaled-out instance in a web site.", + "description": "Description for Get a memory dump of a process by its ID for a specific scaled-out instance in a web site.", + "operationId": "WebApps_GetProcessDumpSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "processId", + "in": "path", + "description": "PID.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API returns deployments for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "file" + } + }, + "404": { + "description": "Process with the specified ID is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/processes/{processId}/modules": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "List module information for a process by its ID for a specific scaled-out instance in a web site.", + "description": "Description for List module information for a process by its ID for a specific scaled-out instance in a web site.", + "operationId": "WebApps_ListProcessModulesSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "processId", + "in": "path", + "description": "PID.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API returns deployments for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Module information returned.", + "schema": { + "$ref": "#/definitions/ProcessModuleInfoCollection" + } + }, + "404": { + "description": "Process with the specified ID is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/processes/{processId}/modules/{baseAddress}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get process information by its ID for a specific scaled-out instance in a web site.", + "description": "Description for Get process information by its ID for a specific scaled-out instance in a web site.", + "operationId": "WebApps_GetProcessModuleSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "processId", + "in": "path", + "description": "PID.", + "required": true, + "type": "string" + }, + { + "name": "baseAddress", + "in": "path", + "description": "Module base address.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API returns deployments for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Module information returned.", + "schema": { + "$ref": "#/definitions/ProcessModuleInfo" + } + }, + "404": { + "description": "Process with the specified ID is not running, or a module with the specified baseAddress was not found." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/processes/{processId}/threads": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "List the threads in a process by its ID for a specific scaled-out instance in a web site.", + "description": "Description for List the threads in a process by its ID for a specific scaled-out instance in a web site.", + "operationId": "WebApps_ListProcessThreadsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "processId", + "in": "path", + "description": "PID.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API returns deployments for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Thread information returned.", + "schema": { + "$ref": "#/definitions/ProcessThreadInfoCollection" + } + }, + "404": { + "description": "Process with the specified ID is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/publicCertificates": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get public certificates for an app or a deployment slot.", + "description": "Description for Get public certificates for an app or a deployment slot.", + "operationId": "WebApps_ListPublicCertificatesSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API gets hostname bindings for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PublicCertificateCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/publicCertificates/{publicCertificateName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get the named public certificate for an app (or deployment slot, if specified).", + "description": "Description for Get the named public certificate for an app (or deployment slot, if specified).", + "operationId": "WebApps_GetPublicCertificateSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API the named binding for the production slot.", + "required": true, + "type": "string" + }, + { + "name": "publicCertificateName", + "in": "path", + "description": "Public certificate name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PublicCertificate" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Creates a hostname binding for an app.", + "description": "Description for Creates a hostname binding for an app.", + "operationId": "WebApps_CreateOrUpdatePublicCertificateSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "publicCertificateName", + "in": "path", + "description": "Public certificate name.", + "required": true, + "type": "string" + }, + { + "name": "publicCertificate", + "in": "body", + "description": "Public certificate details. This is the JSON representation of a PublicCertificate object.", + "required": true, + "schema": { + "$ref": "#/definitions/PublicCertificate" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will create a binding for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PublicCertificate" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Deletes a hostname binding for an app.", + "description": "Description for Deletes a hostname binding for an app.", + "operationId": "WebApps_DeletePublicCertificateSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will delete the binding for the production slot.", + "required": true, + "type": "string" + }, + { + "name": "publicCertificateName", + "in": "path", + "description": "Public certificate name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted hostname binding." + }, + "204": { + "description": "Hostname binding does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/publishxml": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Gets the publishing profile for an app (or deployment slot, if specified).", + "description": "Description for Gets the publishing profile for an app (or deployment slot, if specified).", + "operationId": "WebApps_ListPublishingProfileXmlWithSecretsSlot", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "publishingProfileOptions", + "in": "body", + "description": "Specifies publishingProfileOptions for publishing profile. For example, use {\"format\": \"FileZilla3\"} to get a FileZilla publishing profile.", + "required": true, + "schema": { + "$ref": "#/definitions/CsmPublishingProfileOptions" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get the publishing profile for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "file" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/resetSlotConfig": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Resets the configuration settings of the current slot if they were previously modified by calling the API with POST.", + "description": "Description for Resets the configuration settings of the current slot if they were previously modified by calling the API with POST.", + "operationId": "WebApps_ResetSlotConfigurationSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API resets configuration settings for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/restart": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Restarts an app (or deployment slot, if specified).", + "description": "Description for Restarts an app (or deployment slot, if specified).", + "operationId": "WebApps_RestartSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will restart the production slot.", + "required": true, + "type": "string" + }, + { + "name": "softRestart", + "in": "query", + "description": "Specify true to apply the configuration settings and restarts the app only if necessary. By default, the API always restarts and reprovisions the app.", + "type": "boolean" + }, + { + "name": "synchronous", + "in": "query", + "description": "Specify true to block until the app is restarted. By default, it is set to false, and the API responds immediately (asynchronous).", + "type": "boolean" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully restarted app." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/restoreFromBackupBlob": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Restores an app from a backup blob in Azure Storage.", + "description": "Description for Restores an app from a backup blob in Azure Storage.", + "operationId": "WebApps_RestoreFromBackupBlobSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "request", + "in": "body", + "description": "Information on restore request .", + "required": true, + "schema": { + "$ref": "#/definitions/RestoreRequest" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will restore a backup of the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Restore operation started." + }, + "200": { + "description": "Restore operation started." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/restoreFromDeletedApp": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Restores a deleted web app to this web app.", + "description": "Description for Restores a deleted web app to this web app.", + "operationId": "WebApps_RestoreFromDeletedAppSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "restoreRequest", + "in": "body", + "description": "Deleted web app restore information.", + "required": true, + "schema": { + "$ref": "#/definitions/DeletedAppRestoreRequest" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of web app slot. If not specified then will default to production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Restore operation started." + }, + "200": { + "description": "Restore operation started." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/restoreSnapshot": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Restores a web app from a snapshot.", + "description": "Description for Restores a web app from a snapshot.", + "operationId": "WebApps_RestoreSnapshotSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "restoreRequest", + "in": "body", + "description": "Snapshot restore settings. Snapshot information can be obtained by calling GetDeletedSites or GetSiteSnapshots API.", + "required": true, + "schema": { + "$ref": "#/definitions/SnapshotRestoreRequest" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of web app slot. If not specified then will default to production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Restore operation started." + }, + "200": { + "description": "Restore operation started." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/siteextensions": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get list of siteextensions for a web site, or a deployment slot.", + "description": "Description for Get list of siteextensions for a web site, or a deployment slot.", + "operationId": "WebApps_ListSiteExtensionsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API uses the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "SiteExtension information returned.", + "schema": { + "$ref": "#/definitions/SiteExtensionInfoCollection" + } + }, + "404": { + "description": "SiteExtension not found." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/siteextensions/{siteExtensionId}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get site extension information by its ID for a web site, or a deployment slot.", + "description": "Description for Get site extension information by its ID for a web site, or a deployment slot.", + "operationId": "WebApps_GetSiteExtensionSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "siteExtensionId", + "in": "path", + "description": "Site extension name.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API uses the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "SiteExtension information returned.", + "schema": { + "$ref": "#/definitions/SiteExtensionInfo" + } + }, + "404": { + "description": "SiteExtension with an ID of {siteExtensionId} is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Install site extension on a web site, or a deployment slot.", + "description": "Description for Install site extension on a web site, or a deployment slot.", + "operationId": "WebApps_InstallSiteExtensionSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "siteExtensionId", + "in": "path", + "description": "Site extension name.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API uses the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Site Extension created.", + "schema": { + "$ref": "#/definitions/SiteExtensionInfo" + } + }, + "200": { + "description": "Site Extension created.", + "schema": { + "$ref": "#/definitions/SiteExtensionInfo" + } + }, + "429": { + "description": "Site Extension is being installed on another request: Rejecting current request." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Remove a site extension from a web site, or a deployment slot.", + "description": "Description for Remove a site extension from a web site, or a deployment slot.", + "operationId": "WebApps_DeleteSiteExtensionSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "siteExtensionId", + "in": "path", + "description": "Site extension name.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API deletes a deployment for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "SiteExtension terminated." + }, + "404": { + "description": "SiteExtension with an ID of {siteExtensionId} is not running." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/slotsdiffs": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Get the difference in configuration settings between two web app slots.", + "description": "Description for Get the difference in configuration settings between two web app slots.", + "operationId": "WebApps_ListSlotDifferencesSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slotSwapEntity", + "in": "body", + "description": "JSON object that contains the target slot name. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/CsmSlotEntity" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the source slot. If a slot is not specified, the production slot is used as the source slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SlotDifferenceCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/slotsswap": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Swaps two deployment slots of an app.", + "description": "Description for Swaps two deployment slots of an app.", + "operationId": "WebApps_SwapSlotSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slotSwapEntity", + "in": "body", + "description": "JSON object that contains the target slot name. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/CsmSlotEntity" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the source slot. If a slot is not specified, the production slot is used as the source slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "202": { + "description": "Operation is in progress." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/snapshots": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Returns all Snapshots to the user.", + "description": "Description for Returns all Snapshots to the user.", + "operationId": "WebApps_ListSnapshotsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Website Name.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Website Slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SnapshotCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/snapshotsdr": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Returns all Snapshots to the user from DRSecondary endpoint.", + "description": "Description for Returns all Snapshots to the user from DRSecondary endpoint.", + "operationId": "WebApps_ListSnapshotsFromDRSecondarySlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Website Name.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Website Slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SnapshotCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/sourcecontrols/web": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the source control configuration of an app.", + "description": "Description for Gets the source control configuration of an app.", + "operationId": "WebApps_GetSourceControlSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get the source control configuration for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved source control for web app.", + "schema": { + "$ref": "#/definitions/SiteSourceControl" + } + }, + "201": { + "description": "Create or update source control for web app still in progress.", + "schema": { + "$ref": "#/definitions/SiteSourceControl" + } + }, + "202": { + "description": "Create or update source control for web app still in progress.", + "schema": { + "$ref": "#/definitions/SiteSourceControl" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Updates the source control configuration of an app.", + "description": "Description for Updates the source control configuration of an app.", + "operationId": "WebApps_CreateOrUpdateSourceControlSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "siteSourceControl", + "in": "body", + "description": "JSON representation of a SiteSourceControl object. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/SiteSourceControl" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will update the source control configuration for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully created or updated source control for web app.", + "schema": { + "$ref": "#/definitions/SiteSourceControl" + } + }, + "201": { + "description": "Create or update source control for web app in progress.", + "schema": { + "$ref": "#/definitions/SiteSourceControl" + } + }, + "202": { + "description": "Create or update source control for web app in progress.", + "schema": { + "$ref": "#/definitions/SiteSourceControl" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Deletes the source control configuration of an app.", + "description": "Description for Deletes the source control configuration of an app.", + "operationId": "WebApps_DeleteSourceControlSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will delete the source control configuration for the production slot.", + "required": true, + "type": "string" + }, + { + "name": "additionalFlags", + "in": "query", + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted source control for web app." + }, + "202": { + "description": "Source control delete operation in progress." + }, + "404": { + "description": "Source control does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "WebApps" + ], + "summary": "Updates the source control configuration of an app.", + "description": "Description for Updates the source control configuration of an app.", + "operationId": "WebApps_UpdateSourceControlSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "siteSourceControl", + "in": "body", + "description": "JSON representation of a SiteSourceControl object. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/SiteSourceControl" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will update the source control configuration for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully created or updated source control for web app.", + "schema": { + "$ref": "#/definitions/SiteSourceControl" + } + }, + "201": { + "description": "Create or update source control for web app in progress.", + "schema": { + "$ref": "#/definitions/SiteSourceControl" + } + }, + "202": { + "description": "Create or update source control for web app in progress.", + "schema": { + "$ref": "#/definitions/SiteSourceControl" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/start": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Starts an app (or deployment slot, if specified).", + "description": "Description for Starts an app (or deployment slot, if specified).", + "operationId": "WebApps_StartSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will start the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully started app." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/startNetworkTrace": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Start capturing network packets for the site.", + "description": "Description for Start capturing network packets for the site.", + "operationId": "WebApps_StartNetworkTraceSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "The name of the web app.", + "required": true, + "type": "string" + }, + { + "name": "durationInSeconds", + "in": "query", + "description": "The duration to keep capturing in seconds.", + "type": "integer", + "format": "int32" + }, + { + "name": "slot", + "in": "path", + "description": "The name of the slot for this web app.", + "required": true, + "type": "string" + }, + { + "name": "maxFrameLength", + "in": "query", + "description": "The maximum frame length in bytes (Optional).", + "type": "integer", + "format": "int32" + }, + { + "name": "sasUrl", + "in": "query", + "description": "The Blob URL to store capture file.", + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } + } + }, + "202": { + "description": "Operation is in progress.", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Start a new network trace operation for a site": { + "$ref": "./examples/StartWebSiteNetworkTraceOperation.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/stop": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Stops an app (or deployment slot, if specified).", + "description": "Description for Stops an app (or deployment slot, if specified).", + "operationId": "WebApps_StopSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will stop the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully stopped app." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/stopNetworkTrace": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Stop ongoing capturing network packets for the site.", + "description": "Description for Stop ongoing capturing network packets for the site.", + "operationId": "WebApps_StopNetworkTraceSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "The name of the web app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "The name of the slot for this web app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Stopped." + }, + "204": { + "description": "Stopped." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Stop a currently running network trace operation for a site": { + "$ref": "./examples/StopWebSiteNetworkTrace.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/sync": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Sync web app repository.", + "description": "Description for Sync web app repository.", + "operationId": "WebApps_SyncRepositorySlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of web app slot. If not specified then will default to production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully sync source control." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/syncfunctiontriggers": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Syncs function trigger metadata to the management database", + "description": "Description for Syncs function trigger metadata to the management database", + "operationId": "WebApps_SyncFunctionTriggersSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/triggeredwebjobs": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "List triggered web jobs for an app, or a deployment slot.", + "description": "Description for List triggered web jobs for an app, or a deployment slot.", + "operationId": "WebApps_ListTriggeredWebJobsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API deletes a deployment for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TriggeredWebJobCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/triggeredwebjobs/{webJobName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a triggered web job by its ID for an app, or a deployment slot.", + "description": "Description for Gets a triggered web job by its ID for an app, or a deployment slot.", + "operationId": "WebApps_GetTriggeredWebJobSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "webJobName", + "in": "path", + "description": "Name of Web Job.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API uses the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Found continuous web job.", + "schema": { + "$ref": "#/definitions/TriggeredWebJob" + } + }, + "404": { + "description": "Triggered web job does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Delete a triggered web job by its ID for an app, or a deployment slot.", + "description": "Description for Delete a triggered web job by its ID for an app, or a deployment slot.", + "operationId": "WebApps_DeleteTriggeredWebJobSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "webJobName", + "in": "path", + "description": "Name of Web Job.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API deletes web job for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted continuous web job." + }, + "204": { + "description": "Triggered web job does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/triggeredwebjobs/{webJobName}/history": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "List a triggered web job's history for an app, or a deployment slot.", + "description": "Description for List a triggered web job's history for an app, or a deployment slot.", + "operationId": "WebApps_ListTriggeredWebJobHistorySlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "webJobName", + "in": "path", + "description": "Name of Web Job.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API uses the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Found continuous web job.", + "schema": { + "$ref": "#/definitions/TriggeredJobHistoryCollection" + } + }, + "404": { + "description": "Triggered web job does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/triggeredwebjobs/{webJobName}/history/{id}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a triggered web job's history by its ID for an app, , or a deployment slot.", + "description": "Description for Gets a triggered web job's history by its ID for an app, , or a deployment slot.", + "operationId": "WebApps_GetTriggeredWebJobHistorySlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "webJobName", + "in": "path", + "description": "Name of Web Job.", + "required": true, + "type": "string" + }, + { + "name": "id", + "in": "path", + "description": "History ID.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API uses the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Found continuous web job.", + "schema": { + "$ref": "#/definitions/TriggeredJobHistory" + } + }, + "404": { + "description": "Triggered web job does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/triggeredwebjobs/{webJobName}/run": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Run a triggered web job for an app, or a deployment slot.", + "description": "Description for Run a triggered web job for an app, or a deployment slot.", + "operationId": "WebApps_RunTriggeredWebJobSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "webJobName", + "in": "path", + "description": "Name of Web Job.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API uses the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Run a triggered web job." + }, + "404": { + "description": "Triggered web job does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/usages": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the quota usage information of an app (or deployment slot, if specified).", + "description": "Description for Gets the quota usage information of an app (or deployment slot, if specified).", + "operationId": "WebApps_ListUsagesSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get quota information of the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$filter", + "in": "query", + "description": "Return only information specified in the filter (using OData syntax). For example: $filter=(name.value eq 'Metric1' or name.value eq 'Metric2') and startTime eq 2014-01-01T00:00:00Z and endTime eq 2014-12-31T23:59:59Z and timeGrain eq duration'[Hour|Minute|Day]'.", + "type": "string", + "x-ms-skip-url-encoding": true + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/CsmUsageQuotaCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/virtualNetworkConnections": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the virtual networks the app (or deployment slot) is connected to.", + "description": "Description for Gets the virtual networks the app (or deployment slot) is connected to.", + "operationId": "WebApps_ListVnetConnectionsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get virtual network connections for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "./CommonDefinitions.json#/definitions/VnetInfo" + } + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/virtualNetworkConnections/{vnetName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a virtual network the app (or deployment slot) is connected to by name.", + "description": "Description for Gets a virtual network the app (or deployment slot) is connected to by name.", + "operationId": "WebApps_GetVnetConnectionSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "vnetName", + "in": "path", + "description": "Name of the virtual network.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get the named virtual network for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetInfo" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Adds a Virtual Network connection to an app or slot (PUT) or updates the connection properties (PATCH).", + "description": "Description for Adds a Virtual Network connection to an app or slot (PUT) or updates the connection properties (PATCH).", + "operationId": "WebApps_CreateOrUpdateVnetConnectionSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "vnetName", + "in": "path", + "description": "Name of an existing Virtual Network.", + "required": true, + "type": "string" + }, + { + "name": "connectionEnvelope", + "in": "body", + "description": "Properties of the Virtual Network connection. See example.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetInfo" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will add or update connections for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetInfo" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Deletes a connection from an app (or deployment slot to a named virtual network.", + "description": "Description for Deletes a connection from an app (or deployment slot to a named virtual network.", + "operationId": "WebApps_DeleteVnetConnectionSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "vnetName", + "in": "path", + "description": "Name of the virtual network.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will delete the connection for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted virtual network." + }, + "404": { + "description": "Virtual network does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "WebApps" + ], + "summary": "Adds a Virtual Network connection to an app or slot (PUT) or updates the connection properties (PATCH).", + "description": "Description for Adds a Virtual Network connection to an app or slot (PUT) or updates the connection properties (PATCH).", + "operationId": "WebApps_UpdateVnetConnectionSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "vnetName", + "in": "path", + "description": "Name of an existing Virtual Network.", + "required": true, + "type": "string" + }, + { + "name": "connectionEnvelope", + "in": "body", + "description": "Properties of the Virtual Network connection. See example.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetInfo" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will add or update connections for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetInfo" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/virtualNetworkConnections/{vnetName}/gateways/{gatewayName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets an app's Virtual Network gateway.", + "description": "Description for Gets an app's Virtual Network gateway.", + "operationId": "WebApps_GetVnetConnectionGatewaySlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "vnetName", + "in": "path", + "description": "Name of the Virtual Network.", + "required": true, + "type": "string" + }, + { + "name": "gatewayName", + "in": "path", + "description": "Name of the gateway. Currently, the only supported string is \"primary\".", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will get a gateway for the production slot's Virtual Network.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetGateway" + } + }, + "404": { + "description": "Named gateway does not exist. Only the \"primary\" gateway is supported currently." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Adds a gateway to a connected Virtual Network (PUT) or updates it (PATCH).", + "description": "Description for Adds a gateway to a connected Virtual Network (PUT) or updates it (PATCH).", + "operationId": "WebApps_CreateOrUpdateVnetConnectionGatewaySlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "vnetName", + "in": "path", + "description": "Name of the Virtual Network.", + "required": true, + "type": "string" + }, + { + "name": "gatewayName", + "in": "path", + "description": "Name of the gateway. Currently, the only supported string is \"primary\".", + "required": true, + "type": "string" + }, + { + "name": "connectionEnvelope", + "in": "body", + "description": "The properties to update this gateway with.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetGateway" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will add or update a gateway for the production slot's Virtual Network.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetGateway" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "WebApps" + ], + "summary": "Adds a gateway to a connected Virtual Network (PUT) or updates it (PATCH).", + "description": "Description for Adds a gateway to a connected Virtual Network (PUT) or updates it (PATCH).", + "operationId": "WebApps_UpdateVnetConnectionGatewaySlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "vnetName", + "in": "path", + "description": "Name of the Virtual Network.", + "required": true, + "type": "string" + }, + { + "name": "gatewayName", + "in": "path", + "description": "Name of the gateway. Currently, the only supported string is \"primary\".", + "required": true, + "type": "string" + }, + { + "name": "connectionEnvelope", + "in": "body", + "description": "The properties to update this gateway with.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetGateway" + } + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API will add or update a gateway for the production slot's Virtual Network.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetGateway" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/webjobs": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "List webjobs for an app, or a deployment slot.", + "description": "Description for List webjobs for an app, or a deployment slot.", + "operationId": "WebApps_ListWebJobsSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API returns deployments for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/WebJobCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/webjobs/{webJobName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get webjob information for an app, or a deployment slot.", + "description": "Description for Get webjob information for an app, or a deployment slot.", + "operationId": "WebApps_GetWebJobSlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "webJobName", + "in": "path", + "description": "Name of the web job.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Name of the deployment slot. If a slot is not specified, the API returns deployments for the production slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/WebJob" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slotsdiffs": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Get the difference in configuration settings between two web app slots.", + "description": "Description for Get the difference in configuration settings between two web app slots.", + "operationId": "WebApps_ListSlotDifferencesFromProduction", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slotSwapEntity", + "in": "body", + "description": "JSON object that contains the target slot name. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/CsmSlotEntity" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SlotDifferenceCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slotsswap": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Swaps two deployment slots of an app.", + "description": "Description for Swaps two deployment slots of an app.", + "operationId": "WebApps_SwapSlotWithProduction", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "slotSwapEntity", + "in": "body", + "description": "JSON object that contains the target slot name. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/CsmSlotEntity" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "202": { + "description": "Operation is in progress." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/snapshots": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Returns all Snapshots to the user.", + "description": "Description for Returns all Snapshots to the user.", + "operationId": "WebApps_ListSnapshots", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Website Name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SnapshotCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/snapshotsdr": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Returns all Snapshots to the user from DRSecondary endpoint.", + "description": "Description for Returns all Snapshots to the user from DRSecondary endpoint.", + "operationId": "WebApps_ListSnapshotsFromDRSecondary", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Website Name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SnapshotCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/sourcecontrols/web": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the source control configuration of an app.", + "description": "Description for Gets the source control configuration of an app.", + "operationId": "WebApps_GetSourceControl", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved source control for web app.", + "schema": { + "$ref": "#/definitions/SiteSourceControl" + } + }, + "201": { + "description": "Create or update source control for web app still in progress.", + "schema": { + "$ref": "#/definitions/SiteSourceControl" + } + }, + "202": { + "description": "Create or update source control for web app still in progress.", + "schema": { + "$ref": "#/definitions/SiteSourceControl" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Updates the source control configuration of an app.", + "description": "Description for Updates the source control configuration of an app.", + "operationId": "WebApps_CreateOrUpdateSourceControl", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "siteSourceControl", + "in": "body", + "description": "JSON representation of a SiteSourceControl object. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/SiteSourceControl" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully created or updated source control for web app.", + "schema": { + "$ref": "#/definitions/SiteSourceControl" + } + }, + "201": { + "description": "Create or update source control for web app in progress.", + "schema": { + "$ref": "#/definitions/SiteSourceControl" + } + }, + "202": { + "description": "Create or update source control for web app in progress.", + "schema": { + "$ref": "#/definitions/SiteSourceControl" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Deletes the source control configuration of an app.", + "description": "Description for Deletes the source control configuration of an app.", + "operationId": "WebApps_DeleteSourceControl", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "additionalFlags", + "in": "query", + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted source control for web app." + }, + "202": { + "description": "Source control delete operation in progress." + }, + "404": { + "description": "Source control does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "WebApps" + ], + "summary": "Updates the source control configuration of an app.", + "description": "Description for Updates the source control configuration of an app.", + "operationId": "WebApps_UpdateSourceControl", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "siteSourceControl", + "in": "body", + "description": "JSON representation of a SiteSourceControl object. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/SiteSourceControl" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully created or updated source control for web app.", + "schema": { + "$ref": "#/definitions/SiteSourceControl" + } + }, + "201": { + "description": "Create or update source control for web app in progress.", + "schema": { + "$ref": "#/definitions/SiteSourceControl" + } + }, + "202": { + "description": "Create or update source control for web app in progress.", + "schema": { + "$ref": "#/definitions/SiteSourceControl" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/start": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Starts an app (or deployment slot, if specified).", + "description": "Description for Starts an app (or deployment slot, if specified).", + "operationId": "WebApps_Start", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully started app." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/startNetworkTrace": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Start capturing network packets for the site.", + "description": "Description for Start capturing network packets for the site.", + "operationId": "WebApps_StartNetworkTrace", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "The name of the web app.", + "required": true, + "type": "string" + }, + { + "name": "durationInSeconds", + "in": "query", + "description": "The duration to keep capturing in seconds.", + "type": "integer", + "format": "int32" + }, + { + "name": "maxFrameLength", + "in": "query", + "description": "The maximum frame length in bytes (Optional).", + "type": "integer", + "format": "int32" + }, + { + "name": "sasUrl", + "in": "query", + "description": "The Blob URL to store capture file.", + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } + } + }, + "202": { + "description": "Operation is in progress.", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Start a new network trace operation for a site": { + "$ref": "./examples/StartWebSiteNetworkTraceOperation.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/stop": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Stops an app (or deployment slot, if specified).", + "description": "Description for Stops an app (or deployment slot, if specified).", + "operationId": "WebApps_Stop", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully stopped app." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/stopNetworkTrace": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Stop ongoing capturing network packets for the site.", + "description": "Description for Stop ongoing capturing network packets for the site.", + "operationId": "WebApps_StopNetworkTrace", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "The name of the web app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Stopped." + }, + "204": { + "description": "Stopped." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Stop a currently running network trace operation for a site": { + "$ref": "./examples/StopWebSiteNetworkTrace.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/sync": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Sync web app repository.", + "description": "Description for Sync web app repository.", + "operationId": "WebApps_SyncRepository", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of web app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully sync source control." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/syncfunctiontriggers": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Syncs function trigger metadata to the management database", + "description": "Description for Syncs function trigger metadata to the management database", + "operationId": "WebApps_SyncFunctionTriggers", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/triggeredwebjobs": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "List triggered web jobs for an app, or a deployment slot.", + "description": "Description for List triggered web jobs for an app, or a deployment slot.", + "operationId": "WebApps_ListTriggeredWebJobs", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TriggeredWebJobCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/triggeredwebjobs/{webJobName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a triggered web job by its ID for an app, or a deployment slot.", + "description": "Description for Gets a triggered web job by its ID for an app, or a deployment slot.", + "operationId": "WebApps_GetTriggeredWebJob", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "webJobName", + "in": "path", + "description": "Name of Web Job.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Found continuous web job.", + "schema": { + "$ref": "#/definitions/TriggeredWebJob" + } + }, + "404": { + "description": "Triggered web job does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Delete a triggered web job by its ID for an app, or a deployment slot.", + "description": "Description for Delete a triggered web job by its ID for an app, or a deployment slot.", + "operationId": "WebApps_DeleteTriggeredWebJob", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "webJobName", + "in": "path", + "description": "Name of Web Job.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted continuous web job." + }, + "204": { + "description": "Triggered web job does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/triggeredwebjobs/{webJobName}/history": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "List a triggered web job's history for an app, or a deployment slot.", + "description": "Description for List a triggered web job's history for an app, or a deployment slot.", + "operationId": "WebApps_ListTriggeredWebJobHistory", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "webJobName", + "in": "path", + "description": "Name of Web Job.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Found continuous web job.", + "schema": { + "$ref": "#/definitions/TriggeredJobHistoryCollection" + } + }, + "404": { + "description": "Triggered web job does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/triggeredwebjobs/{webJobName}/history/{id}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a triggered web job's history by its ID for an app, , or a deployment slot.", + "description": "Description for Gets a triggered web job's history by its ID for an app, , or a deployment slot.", + "operationId": "WebApps_GetTriggeredWebJobHistory", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "webJobName", + "in": "path", + "description": "Name of Web Job.", + "required": true, + "type": "string" + }, + { + "name": "id", + "in": "path", + "description": "History ID.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Found continuous web job.", + "schema": { + "$ref": "#/definitions/TriggeredJobHistory" + } + }, + "404": { + "description": "Triggered web job does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/triggeredwebjobs/{webJobName}/run": { + "post": { + "tags": [ + "WebApps" + ], + "summary": "Run a triggered web job for an app, or a deployment slot.", + "description": "Description for Run a triggered web job for an app, or a deployment slot.", + "operationId": "WebApps_RunTriggeredWebJob", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "webJobName", + "in": "path", + "description": "Name of Web Job.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Run a triggered web job." + }, + "404": { + "description": "Triggered web job does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/usages": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the quota usage information of an app (or deployment slot, if specified).", + "description": "Description for Gets the quota usage information of an app (or deployment slot, if specified).", + "operationId": "WebApps_ListUsages", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$filter", + "in": "query", + "description": "Return only information specified in the filter (using OData syntax). For example: $filter=(name.value eq 'Metric1' or name.value eq 'Metric2') and startTime eq 2014-01-01T00:00:00Z and endTime eq 2014-12-31T23:59:59Z and timeGrain eq duration'[Hour|Minute|Day]'.", + "type": "string", + "x-ms-skip-url-encoding": true + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/CsmUsageQuotaCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/virtualNetworkConnections": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the virtual networks the app (or deployment slot) is connected to.", + "description": "Description for Gets the virtual networks the app (or deployment slot) is connected to.", + "operationId": "WebApps_ListVnetConnections", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "./CommonDefinitions.json#/definitions/VnetInfo" + } + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/virtualNetworkConnections/{vnetName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a virtual network the app (or deployment slot) is connected to by name.", + "description": "Description for Gets a virtual network the app (or deployment slot) is connected to by name.", + "operationId": "WebApps_GetVnetConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "vnetName", + "in": "path", + "description": "Name of the virtual network.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetInfo" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Adds a Virtual Network connection to an app or slot (PUT) or updates the connection properties (PATCH).", + "description": "Description for Adds a Virtual Network connection to an app or slot (PUT) or updates the connection properties (PATCH).", + "operationId": "WebApps_CreateOrUpdateVnetConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "vnetName", + "in": "path", + "description": "Name of an existing Virtual Network.", + "required": true, + "type": "string" + }, + { + "name": "connectionEnvelope", + "in": "body", + "description": "Properties of the Virtual Network connection. See example.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetInfo" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetInfo" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Deletes a connection from an app (or deployment slot to a named virtual network.", + "description": "Description for Deletes a connection from an app (or deployment slot to a named virtual network.", + "operationId": "WebApps_DeleteVnetConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "vnetName", + "in": "path", + "description": "Name of the virtual network.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted virtual network." + }, + "404": { + "description": "Virtual network does not exist." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "WebApps" + ], + "summary": "Adds a Virtual Network connection to an app or slot (PUT) or updates the connection properties (PATCH).", + "description": "Description for Adds a Virtual Network connection to an app or slot (PUT) or updates the connection properties (PATCH).", + "operationId": "WebApps_UpdateVnetConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "vnetName", + "in": "path", + "description": "Name of an existing Virtual Network.", + "required": true, + "type": "string" + }, + { + "name": "connectionEnvelope", + "in": "body", + "description": "Properties of the Virtual Network connection. See example.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetInfo" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetInfo" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/virtualNetworkConnections/{vnetName}/gateways/{gatewayName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets an app's Virtual Network gateway.", + "description": "Description for Gets an app's Virtual Network gateway.", + "operationId": "WebApps_GetVnetConnectionGateway", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "vnetName", + "in": "path", + "description": "Name of the Virtual Network.", + "required": true, + "type": "string" + }, + { + "name": "gatewayName", + "in": "path", + "description": "Name of the gateway. Currently, the only supported string is \"primary\".", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetGateway" + } + }, + "404": { + "description": "Named gateway does not exist. Only the \"primary\" gateway is supported currently." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Adds a gateway to a connected Virtual Network (PUT) or updates it (PATCH).", + "description": "Description for Adds a gateway to a connected Virtual Network (PUT) or updates it (PATCH).", + "operationId": "WebApps_CreateOrUpdateVnetConnectionGateway", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "vnetName", + "in": "path", + "description": "Name of the Virtual Network.", + "required": true, + "type": "string" + }, + { + "name": "gatewayName", + "in": "path", + "description": "Name of the gateway. Currently, the only supported string is \"primary\".", + "required": true, + "type": "string" + }, + { + "name": "connectionEnvelope", + "in": "body", + "description": "The properties to update this gateway with.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetGateway" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetGateway" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "WebApps" + ], + "summary": "Adds a gateway to a connected Virtual Network (PUT) or updates it (PATCH).", + "description": "Description for Adds a gateway to a connected Virtual Network (PUT) or updates it (PATCH).", + "operationId": "WebApps_UpdateVnetConnectionGateway", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the app.", + "required": true, + "type": "string" + }, + { + "name": "vnetName", + "in": "path", + "description": "Name of the Virtual Network.", + "required": true, + "type": "string" + }, + { + "name": "gatewayName", + "in": "path", + "description": "Name of the gateway. Currently, the only supported string is \"primary\".", + "required": true, + "type": "string" + }, + { + "name": "connectionEnvelope", + "in": "body", + "description": "The properties to update this gateway with.", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetGateway" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/VnetGateway" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/webjobs": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "List webjobs for an app, or a deployment slot.", + "description": "Description for List webjobs for an app, or a deployment slot.", + "operationId": "WebApps_ListWebJobs", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/WebJobCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/webjobs/{webJobName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Get webjob information for an app, or a deployment slot.", + "description": "Description for Get webjob information for an app, or a deployment slot.", + "operationId": "WebApps_GetWebJob", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "webJobName", + "in": "path", + "description": "Name of the web job.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/WebJob" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + } + } + } + }, + "definitions": { + "AllowedAudiencesValidation": { + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "AllowedAudiencesValidation resource specific properties", + "properties": { + "allowedAudiences": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "ApiKVReference": { + "description": "Description of site key vault references.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "ApiKVReference resource specific properties", + "properties": { + "reference": { + "type": "string" + }, + "status": { + "enum": [ + "Initialized", + "Resolved", + "InvalidSyntax", + "MSINotEnabled", + "VaultNotFound", + "SecretNotFound", + "SecretVersionNotFound", + "AccessToKeyVaultDenied", + "OtherReasons", + "FetchTimedOut", + "UnauthorizedClient" + ], + "type": "string", + "x-ms-enum": { + "name": "ResolveStatus", + "modelAsString": false + } + }, + "vaultName": { + "type": "string" + }, + "secretName": { + "type": "string" + }, + "secretVersion": { + "type": "string" + }, + "identityType": { + "$ref": "./CommonDefinitions.json#/definitions/ManagedServiceIdentity" + }, + "details": { + "type": "string" + }, + "source": { + "enum": [ + "KeyVault" + ], + "type": "string", + "x-ms-enum": { + "name": "ConfigReferenceSource", + "modelAsString": false + } + }, + "activeVersion": { + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "ApiKVReferenceCollection": { + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/ApiKVReference" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "AppRegistration": { + "description": "The configuration settings of the app registration for providers that have app ids and app secrets", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "AppRegistration resource specific properties", + "properties": { + "appId": { + "description": "The App ID of the app used for login.", + "type": "string" + }, + "appSecretSettingName": { + "description": "The app setting name that contains the app secret.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "Apple": { + "description": "The configuration settings of the Apple provider.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "Apple resource specific properties", + "properties": { + "enabled": { + "description": "false if the Apple provider should not be enabled despite the set registration; otherwise, true.", + "type": "boolean" + }, + "registration": { + "$ref": "#/definitions/AppleRegistration", + "description": "The configuration settings of the Apple registration." + }, + "login": { + "$ref": "#/definitions/LoginScopes", + "description": "The configuration settings of the login flow." + } + }, + "x-ms-client-flatten": true + } + } + }, + "AppleRegistration": { + "description": "The configuration settings of the registration for the Apple provider", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "AppleRegistration resource specific properties", + "properties": { + "clientId": { + "description": "The Client ID of the app used for login.", + "type": "string" + }, + "clientSecretSettingName": { + "description": "The app setting name that contains the client secret.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "ApplicationLogsConfig": { + "description": "Application logs configuration.", + "type": "object", + "properties": { + "fileSystem": { + "$ref": "#/definitions/FileSystemApplicationLogsConfig", + "description": "Application logs to file system configuration." + }, + "azureTableStorage": { + "$ref": "#/definitions/AzureTableStorageApplicationLogsConfig", + "description": "Application logs to azure table storage configuration." + }, + "azureBlobStorage": { + "$ref": "#/definitions/AzureBlobStorageApplicationLogsConfig", + "description": "Application logs to blob storage configuration." + } + } + }, + "AuthPlatform": { + "description": "The configuration settings of the platform of App Service Authentication/Authorization.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "AuthPlatform resource specific properties", + "properties": { + "enabled": { + "description": "true if the Authentication / Authorization feature is enabled for the current app; otherwise, false.", + "type": "boolean" + }, + "runtimeVersion": { + "description": "The RuntimeVersion of the Authentication / Authorization feature in use for the current app.\nThe setting in this value can control the behavior of certain features in the Authentication / Authorization module.", + "type": "string" + }, + "configFilePath": { + "description": "The path of the config file containing auth settings if they come from a file.\nIf the path is relative, base will the site's root directory.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "AzureActiveDirectory": { + "description": "The configuration settings of the Azure Active directory provider.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "AzureActiveDirectory resource specific properties", + "properties": { + "enabled": { + "description": "false if the Azure Active Directory provider should not be enabled despite the set registration; otherwise, true.", + "type": "boolean" + }, + "registration": { + "$ref": "#/definitions/AzureActiveDirectoryRegistration", + "description": "The configuration settings of the Azure Active Directory app registration." + }, + "login": { + "$ref": "#/definitions/AzureActiveDirectoryLogin", + "description": "The configuration settings of the Azure Active Directory login flow." + }, + "validation": { + "$ref": "#/definitions/AzureActiveDirectoryValidation", + "description": "The configuration settings of the Azure Active Directory token validation flow." + }, + "isAutoProvisioned": { + "description": "Gets a value indicating whether the Azure AD configuration was auto-provisioned using 1st party tooling.\nThis is an internal flag primarily intended to support the Azure Management Portal. Users should not\nread or write to this property.", + "type": "boolean" + } + }, + "x-ms-client-flatten": true + } + } + }, + "AzureActiveDirectoryLogin": { + "description": "The configuration settings of the Azure Active Directory login flow.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "AzureActiveDirectoryLogin resource specific properties", + "properties": { + "disableWWWAuthenticate": { + "type": "boolean" + }, + "loginParameters": { + "description": "Login parameters to send to the OpenID Connect authorization endpoint when\na user logs in. Each parameter must be in the form \"key=value\".", + "type": "array", + "items": { + "type": "string" + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "AzureActiveDirectoryRegistration": { + "description": "The configuration settings of the Azure Active Directory app registration.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "AzureActiveDirectoryRegistration resource specific properties", + "properties": { + "openIdIssuer": { + "description": "The OpenID Connect Issuer URI that represents the entity which issues access tokens for this application.\nWhen using Azure Active Directory, this value is the URI of the directory tenant, e.g. https://login.microsoftonline.com/v2.0/{tenant-guid}/.\nThis URI is a case-sensitive identifier for the token issuer.\nMore information on OpenID Connect Discovery: http://openid.net/specs/openid-connect-discovery-1_0.html", + "type": "string" + }, + "clientId": { + "description": "The Client ID of this relying party application, known as the client_id.\nThis setting is required for enabling OpenID Connection authentication with Azure Active Directory or \nother 3rd party OpenID Connect providers.\nMore information on OpenID Connect: http://openid.net/specs/openid-connect-core-1_0.html", + "type": "string" + }, + "clientSecretSettingName": { + "description": "The app setting name that contains the client secret of the relying party application.", + "type": "string" + }, + "clientSecretCertificateThumbprint": { + "description": "An alternative to the client secret, that is the thumbprint of a certificate used for signing purposes. This property acts as\na replacement for the Client Secret. It is also optional.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "AzureActiveDirectoryValidation": { + "description": "The configuration settings of the Azure Active Directory token validation flow.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "AzureActiveDirectoryValidation resource specific properties", + "properties": { + "jwtClaimChecks": { + "$ref": "#/definitions/JwtClaimChecks", + "description": "The configuration settings of the checks that should be made while validating the JWT Claims." + }, + "allowedAudiences": { + "description": "The list of audiences that can make successful authentication/authorization requests.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "AzureBlobStorageApplicationLogsConfig": { + "description": "Application logs azure blob storage configuration.", + "type": "object", + "properties": { + "level": { + "description": "Log level.", + "enum": [ + "Off", + "Verbose", + "Information", + "Warning", + "Error" + ], + "type": "string", + "x-ms-enum": { + "name": "LogLevel", + "modelAsString": false + } + }, + "sasUrl": { + "description": "SAS url to a azure blob container with read/write/list/delete permissions.", + "type": "string" + }, + "retentionInDays": { + "format": "int32", + "description": "Retention in days.\nRemove blobs older than X days.\n0 or lower means no retention.", + "type": "integer" + } + } + }, + "AzureBlobStorageHttpLogsConfig": { + "description": "Http logs to azure blob storage configuration.", + "type": "object", + "properties": { + "sasUrl": { + "description": "SAS url to a azure blob container with read/write/list/delete permissions.", + "type": "string" + }, + "retentionInDays": { + "format": "int32", + "description": "Retention in days.\nRemove blobs older than X days.\n0 or lower means no retention.", + "type": "integer" + }, + "enabled": { + "description": "True if configuration is enabled, false if it is disabled and null if configuration is not set.", + "type": "boolean" + } + } + }, + "AzureStaticWebApps": { + "description": "The configuration settings of the Azure Static Web Apps provider.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "AzureStaticWebApps resource specific properties", + "properties": { + "enabled": { + "description": "false if the Azure Static Web Apps provider should not be enabled despite the set registration; otherwise, true.", + "type": "boolean" + }, + "registration": { + "$ref": "#/definitions/AzureStaticWebAppsRegistration", + "description": "The configuration settings of the Azure Static Web Apps registration." + } + }, + "x-ms-client-flatten": true + } + } + }, + "AzureStaticWebAppsRegistration": { + "description": "The configuration settings of the registration for the Azure Static Web Apps provider", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "AzureStaticWebAppsRegistration resource specific properties", + "properties": { + "clientId": { + "description": "The Client ID of the app used for login.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "AzureStoragePropertyDictionaryResource": { + "description": "AzureStorageInfo dictionary resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "Azure storage accounts.", + "type": "object", + "additionalProperties": { + "$ref": "./CommonDefinitions.json#/definitions/AzureStorageInfoValue" + }, + "x-ms-client-flatten": true + } + } + }, + "AzureTableStorageApplicationLogsConfig": { + "description": "Application logs to Azure table storage configuration.", + "required": [ + "sasUrl" + ], + "type": "object", + "properties": { + "level": { + "description": "Log level.", + "enum": [ + "Off", + "Verbose", + "Information", + "Warning", + "Error" + ], + "type": "string", + "x-ms-enum": { + "name": "LogLevel", + "modelAsString": false + } + }, + "sasUrl": { + "description": "SAS URL to an Azure table with add/query/delete permissions.", + "type": "string" + } + } + }, + "BackupItem": { + "description": "Backup description.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "BackupItem resource specific properties", + "properties": { + "id": { + "format": "int32", + "description": "Id of the backup.", + "type": "integer", + "readOnly": true, + "x-ms-client-name": "BackupId" + }, + "storageAccountUrl": { + "description": "SAS URL for the storage account container which contains this backup.", + "type": "string", + "readOnly": true + }, + "blobName": { + "description": "Name of the blob which contains data for this backup.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name of this backup.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "Backup status.", + "enum": [ + "InProgress", + "Failed", + "Succeeded", + "TimedOut", + "Created", + "Skipped", + "PartiallySucceeded", + "DeleteInProgress", + "DeleteFailed", + "Deleted" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "BackupItemStatus", + "modelAsString": false + } + }, + "sizeInBytes": { + "format": "int64", + "description": "Size of the backup in bytes.", + "type": "integer", + "readOnly": true + }, + "created": { + "format": "date-time", + "description": "Timestamp of the backup creation.", + "type": "string", + "readOnly": true + }, + "log": { + "description": "Details regarding this backup. Might contain an error message.", + "type": "string", + "readOnly": true + }, + "databases": { + "description": "List of databases included in the backup.", + "type": "array", + "items": { + "$ref": "#/definitions/DatabaseBackupSetting" + }, + "readOnly": true + }, + "scheduled": { + "description": "True if this backup has been created due to a schedule being triggered.", + "type": "boolean", + "readOnly": true + }, + "lastRestoreTimeStamp": { + "format": "date-time", + "description": "Timestamp of a last restore operation which used this backup.", + "type": "string", + "readOnly": true + }, + "finishedTimeStamp": { + "format": "date-time", + "description": "Timestamp when this backup finished.", + "type": "string", + "readOnly": true + }, + "correlationId": { + "description": "Unique correlation identifier. Please use this along with the timestamp while communicating with Azure support.", + "type": "string", + "readOnly": true + }, + "websiteSizeInBytes": { + "format": "int64", + "description": "Size of the original web app which has been backed up.", + "type": "integer", + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "BackupItemCollection": { + "description": "Collection of backup items.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/BackupItem" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "BackupRequest": { + "description": "Description of a backup which will be performed.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "BackupRequest resource specific properties", + "required": [ + "storageAccountUrl" + ], + "properties": { + "backupName": { + "description": "Name of the backup.", + "type": "string" + }, + "enabled": { + "description": "True if the backup schedule is enabled (must be included in that case), false if the backup schedule should be disabled.", + "type": "boolean" + }, + "storageAccountUrl": { + "description": "SAS URL to the container.", + "type": "string" + }, + "backupSchedule": { + "$ref": "#/definitions/BackupSchedule", + "description": "Schedule for the backup if it is executed periodically." + }, + "databases": { + "description": "Databases included in the backup.", + "type": "array", + "items": { + "$ref": "#/definitions/DatabaseBackupSetting" + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "BackupSchedule": { + "description": "Description of a backup schedule. Describes how often should be the backup performed and what should be the retention policy.", + "required": [ + "frequencyInterval", + "frequencyUnit", + "keepAtLeastOneBackup", + "retentionPeriodInDays" + ], + "type": "object", + "properties": { + "frequencyInterval": { + "format": "int32", + "description": "How often the backup should be executed (e.g. for weekly backup, this should be set to 7 and FrequencyUnit should be set to Day)", + "default": 7, + "type": "integer" + }, + "frequencyUnit": { + "description": "The unit of time for how often the backup should be executed (e.g. for weekly backup, this should be set to Day and FrequencyInterval should be set to 7)", + "default": "Day", + "enum": [ + "Day", + "Hour" + ], + "type": "string", + "x-ms-enum": { + "name": "FrequencyUnit", + "modelAsString": false + } + }, + "keepAtLeastOneBackup": { + "description": "True if the retention policy should always keep at least one backup in the storage account, regardless how old it is; false otherwise.", + "default": true, + "type": "boolean" + }, + "retentionPeriodInDays": { + "format": "int32", + "description": "After how many days backups should be deleted.", + "default": 30, + "type": "integer" + }, + "startTime": { + "format": "date-time", + "description": "When the schedule should start working.", + "type": "string" + }, + "lastExecutionTime": { + "format": "date-time", + "description": "Last time when this schedule was triggered.", + "type": "string", + "readOnly": true + } + } + }, + "BlobStorageTokenStore": { + "description": "The configuration settings of the storage of the tokens if blob storage is used.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "BlobStorageTokenStore resource specific properties", + "properties": { + "sasUrlSettingName": { + "description": "The name of the app setting containing the SAS URL of the blob storage containing the tokens.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "ClientRegistration": { + "description": "The configuration settings of the app registration for providers that have client ids and client secrets", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "ClientRegistration resource specific properties", + "properties": { + "clientId": { + "description": "The Client ID of the app used for login.", + "type": "string" + }, + "clientSecretSettingName": { + "description": "The app setting name that contains the client secret.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "ConnStringValueTypePair": { + "description": "Database connection string value to type pair.", + "required": [ + "value", + "type" + ], + "type": "object", + "properties": { + "value": { + "description": "Value of pair.", + "type": "string" + }, + "type": { + "description": "Type of database.", + "enum": [ + "MySql", + "SQLServer", + "SQLAzure", + "Custom", + "NotificationHub", + "ServiceBus", + "EventHub", + "ApiHub", + "DocDb", + "RedisCache", + "PostgreSQL" + ], + "type": "string", + "x-ms-enum": { + "name": "ConnectionStringType", + "modelAsString": false + } + } + } + }, + "ConnectionStringDictionary": { + "description": "String dictionary resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "Connection strings.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/ConnStringValueTypePair" + }, + "x-ms-client-flatten": true + } + } + }, + "ContainerCpuStatistics": { + "type": "object", + "properties": { + "cpuUsage": { + "$ref": "#/definitions/ContainerCpuUsage" + }, + "systemCpuUsage": { + "format": "int64", + "type": "integer" + }, + "onlineCpuCount": { + "format": "int32", + "type": "integer" + }, + "throttlingData": { + "$ref": "#/definitions/ContainerThrottlingData" + } + } + }, + "ContainerCpuUsage": { + "type": "object", + "properties": { + "totalUsage": { + "format": "int64", + "type": "integer" + }, + "perCpuUsage": { + "type": "array", + "items": { + "format": "int64", + "type": "integer" + } + }, + "kernelModeUsage": { + "format": "int64", + "type": "integer" + }, + "userModeUsage": { + "format": "int64", + "type": "integer" + } + } + }, + "ContainerInfo": { + "type": "object", + "properties": { + "currentTimeStamp": { + "format": "date-time", + "type": "string" + }, + "previousTimeStamp": { + "format": "date-time", + "type": "string" + }, + "currentCpuStats": { + "$ref": "#/definitions/ContainerCpuStatistics" + }, + "previousCpuStats": { + "$ref": "#/definitions/ContainerCpuStatistics" + }, + "memoryStats": { + "$ref": "#/definitions/ContainerMemoryStatistics" + }, + "name": { + "type": "string" + }, + "id": { + "type": "string" + }, + "eth0": { + "$ref": "#/definitions/ContainerNetworkInterfaceStatistics" + } + } + }, + "ContainerMemoryStatistics": { + "type": "object", + "properties": { + "usage": { + "format": "int64", + "type": "integer" + }, + "maxUsage": { + "format": "int64", + "type": "integer" + }, + "limit": { + "format": "int64", + "type": "integer" + } + } + }, + "ContainerNetworkInterfaceStatistics": { + "type": "object", + "properties": { + "rxBytes": { + "format": "int64", + "type": "integer" + }, + "rxPackets": { + "format": "int64", + "type": "integer" + }, + "rxErrors": { + "format": "int64", + "type": "integer" + }, + "rxDropped": { + "format": "int64", + "type": "integer" + }, + "txBytes": { + "format": "int64", + "type": "integer" + }, + "txPackets": { + "format": "int64", + "type": "integer" + }, + "txErrors": { + "format": "int64", + "type": "integer" + }, + "txDropped": { + "format": "int64", + "type": "integer" + } + } + }, + "ContainerThrottlingData": { + "type": "object", + "properties": { + "periods": { + "format": "int32", + "type": "integer" + }, + "throttledPeriods": { + "format": "int32", + "type": "integer" + }, + "throttledTime": { + "format": "int32", + "type": "integer" + } + } + }, + "ContinuousWebJob": { + "description": "Continuous Web Job Information.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "ContinuousWebJob resource specific properties", + "properties": { + "status": { + "description": "Job status.", + "enum": [ + "Initializing", + "Starting", + "Running", + "PendingRestart", + "Stopped" + ], + "type": "string", + "x-ms-enum": { + "name": "ContinuousWebJobStatus", + "modelAsString": false + } + }, + "detailed_status": { + "description": "Detailed status.", + "type": "string" + }, + "log_url": { + "description": "Log URL.", + "type": "string" + }, + "run_command": { + "description": "Run command.", + "type": "string" + }, + "url": { + "description": "Job URL.", + "type": "string" + }, + "extra_info_url": { + "description": "Extra Info URL.", + "type": "string" + }, + "web_job_type": { + "description": "Job type.", + "enum": [ + "Continuous", + "Triggered" + ], + "type": "string", + "x-ms-enum": { + "name": "WebJobType", + "modelAsString": false + } + }, + "error": { + "description": "Error information.", + "type": "string" + }, + "using_sdk": { + "description": "Using SDK?", + "type": "boolean" + }, + "settings": { + "description": "Job settings.", + "type": "object", + "additionalProperties": { + "type": "object" + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "ContinuousWebJobCollection": { + "description": "Collection of Kudu continuous web job information elements.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/ContinuousWebJob" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "CookieExpiration": { + "description": "The configuration settings of the session cookie's expiration.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "CookieExpiration resource specific properties", + "properties": { + "convention": { + "description": "The convention used when determining the session cookie's expiration.", + "enum": [ + "FixedTime", + "IdentityProviderDerived" + ], + "type": "string", + "x-ms-enum": { + "name": "CookieExpirationConvention", + "modelAsString": false + } + }, + "timeToExpiration": { + "description": "The time after the request is made when the session cookie should expire.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "CsmPublishingCredentialsPoliciesCollection": { + "description": "Publishing Credentials Policies collection.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "CsmPublishingCredentialsPoliciesCollection resource specific properties", + "required": [ + "ftp", + "scm" + ], + "properties": { + "ftp": { + "$ref": "#/definitions/CsmPublishingCredentialsPoliciesEntity", + "description": "Whether FTP is allowed." + }, + "scm": { + "$ref": "#/definitions/CsmPublishingCredentialsPoliciesEntity", + "description": "Whether Scm Basic Auth is allowed." + } + }, + "x-ms-client-flatten": true + } + } + }, + "CsmPublishingCredentialsPoliciesEntity": { + "description": "Publishing Credentials Policies parameters.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "CsmPublishingCredentialsPoliciesEntity resource specific properties", + "required": [ + "allow" + ], + "properties": { + "allow": { + "description": "true to allow access to a publishing method; otherwise, false.", + "type": "boolean" + } + }, + "x-ms-client-flatten": true + } + } + }, + "CsmPublishingProfileOptions": { + "description": "Publishing options for requested profile.", + "type": "object", + "properties": { + "format": { + "description": "Name of the format. Valid values are: \nFileZilla3\nWebDeploy -- default\nFtp", + "enum": [ + "FileZilla3", + "WebDeploy", + "Ftp" + ], + "type": "string", + "x-ms-enum": { + "name": "PublishingProfileFormat", + "modelAsString": true + } + }, + "includeDisasterRecoveryEndpoints": { + "description": "Include the DisasterRecover endpoint if true", + "type": "boolean" + } + } + }, + "CsmSlotEntity": { + "description": "Deployment slot parameters.", + "required": [ + "targetSlot", + "preserveVnet" + ], + "type": "object", + "properties": { + "targetSlot": { + "description": "Destination deployment slot during swap operation.", + "type": "string" + }, + "preserveVnet": { + "description": "true to preserve Virtual Network to the slot during swap; otherwise, false.", + "type": "boolean" + } + } + }, + "CustomHostnameAnalysisResult": { + "description": "Custom domain analysis.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "CustomHostnameAnalysisResult resource specific properties", + "properties": { + "isHostnameAlreadyVerified": { + "description": "true if hostname is already verified; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "customDomainVerificationTest": { + "description": "DNS verification test result.", + "enum": [ + "Passed", + "Failed", + "Skipped" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "DnsVerificationTestResult", + "modelAsString": false + } + }, + "customDomainVerificationFailureInfo": { + "$ref": "./CommonDefinitions.json#/definitions/ErrorEntity", + "description": "Raw failure information if DNS verification fails.", + "readOnly": true + }, + "hasConflictOnScaleUnit": { + "description": "true if there is a conflict on a scale unit; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "hasConflictAcrossSubscription": { + "description": "true if there is a conflict across subscriptions; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "conflictingAppResourceId": { + "description": "Name of the conflicting app on scale unit if it's within the same subscription.", + "type": "string", + "readOnly": true + }, + "cNameRecords": { + "description": "CName records controller can see for this hostname.", + "type": "array", + "items": { + "type": "string" + } + }, + "txtRecords": { + "description": "TXT records controller can see for this hostname.", + "type": "array", + "items": { + "type": "string" + } + }, + "aRecords": { + "description": "A records controller can see for this hostname.", + "type": "array", + "items": { + "type": "string" + } + }, + "alternateCNameRecords": { + "description": "Alternate CName records controller can see for this hostname.", + "type": "array", + "items": { + "type": "string" + } + }, + "alternateTxtRecords": { + "description": "Alternate TXT records controller can see for this hostname.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "CustomOpenIdConnectProvider": { + "description": "The configuration settings of the custom Open ID Connect provider.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "CustomOpenIdConnectProvider resource specific properties", + "properties": { + "enabled": { + "description": "false if the custom Open ID provider provider should not be enabled; otherwise, true.", + "type": "boolean" + }, + "registration": { + "$ref": "#/definitions/OpenIdConnectRegistration", + "description": "The configuration settings of the app registration for the custom Open ID Connect provider." + }, + "login": { + "$ref": "#/definitions/OpenIdConnectLogin", + "description": "The configuration settings of the login flow of the custom Open ID Connect provider." + } + }, + "x-ms-client-flatten": true + } + } + }, + "DatabaseBackupSetting": { + "description": "Database backup settings.", + "required": [ + "databaseType" + ], + "type": "object", + "properties": { + "databaseType": { + "description": "Database type (e.g. SqlAzure / MySql).", + "enum": [ + "SqlAzure", + "MySql", + "LocalMySql", + "PostgreSql" + ], + "type": "string", + "x-ms-enum": { + "name": "DatabaseType", + "modelAsString": true + } + }, + "name": { + "type": "string" + }, + "connectionStringName": { + "description": "Contains a connection string name that is linked to the SiteConfig.ConnectionStrings.\nThis is used during restore with overwrite connection strings options.", + "type": "string" + }, + "connectionString": { + "description": "Contains a connection string to a database which is being backed up or restored. If the restore should happen to a new database, the database name inside is the new one.", + "type": "string" + } + } + }, + "DeletedAppRestoreRequest": { + "description": "Details about restoring a deleted app.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "DeletedAppRestoreRequest resource specific properties", + "properties": { + "deletedSiteId": { + "description": "ARM resource ID of the deleted app. Example:\n/subscriptions/{subId}/providers/Microsoft.Web/deletedSites/{deletedSiteId}", + "type": "string" + }, + "recoverConfiguration": { + "description": "If true, deleted site configuration, in addition to content, will be restored.", + "type": "boolean" + }, + "snapshotTime": { + "description": "Point in time to restore the deleted app from, formatted as a DateTime string. \nIf unspecified, default value is the time that the app was deleted.", + "type": "string" + }, + "useDRSecondary": { + "description": "If true, the snapshot is retrieved from DRSecondary endpoint.", + "type": "boolean" + } + }, + "x-ms-client-flatten": true + } + } + }, + "Deployment": { + "description": "User credentials used for publishing activity.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "Deployment resource specific properties", + "properties": { + "status": { + "format": "int32", + "description": "Deployment status.", + "type": "integer" + }, + "message": { + "description": "Details about deployment status.", + "type": "string" + }, + "author": { + "description": "Who authored the deployment.", + "type": "string" + }, + "deployer": { + "description": "Who performed the deployment.", + "type": "string" + }, + "author_email": { + "description": "Author email.", + "type": "string" + }, + "start_time": { + "format": "date-time", + "description": "Start time.", + "type": "string" + }, + "end_time": { + "format": "date-time", + "description": "End time.", + "type": "string" + }, + "active": { + "description": "True if deployment is currently active, false if completed and null if not started.", + "type": "boolean" + }, + "details": { + "description": "Details on deployment.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "DeploymentCollection": { + "description": "Collection of app deployments.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/Deployment" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "EnabledConfig": { + "description": "Enabled configuration.", + "type": "object", + "properties": { + "enabled": { + "description": "True if configuration is enabled, false if it is disabled and null if configuration is not set.", + "type": "boolean" + } + } + }, + "Facebook": { + "description": "The configuration settings of the Facebook provider.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "Facebook resource specific properties", + "properties": { + "enabled": { + "description": "false if the Facebook provider should not be enabled despite the set registration; otherwise, true.", + "type": "boolean" + }, + "registration": { + "$ref": "#/definitions/AppRegistration", + "description": "The configuration settings of the app registration for the Facebook provider." + }, + "graphApiVersion": { + "description": "The version of the Facebook api to be used while logging in.", + "type": "string" + }, + "login": { + "$ref": "#/definitions/LoginScopes", + "description": "The configuration settings of the login flow." + } + }, + "x-ms-client-flatten": true + } + } + }, + "FileSystemApplicationLogsConfig": { + "description": "Application logs to file system configuration.", + "type": "object", + "properties": { + "level": { + "description": "Log level.", + "default": "Off", + "enum": [ + "Off", + "Verbose", + "Information", + "Warning", + "Error" + ], + "type": "string", + "x-ms-enum": { + "name": "LogLevel", + "modelAsString": false + } + } + } + }, + "FileSystemHttpLogsConfig": { + "description": "Http logs to file system configuration.", + "type": "object", + "properties": { + "retentionInMb": { + "format": "int32", + "description": "Maximum size in megabytes that http log files can use.\nWhen reached old log files will be removed to make space for new ones.\nValue can range between 25 and 100.", + "maximum": 100, + "minimum": 25, + "type": "integer" + }, + "retentionInDays": { + "format": "int32", + "description": "Retention in days.\nRemove files older than X days.\n0 or lower means no retention.", + "type": "integer" + }, + "enabled": { + "description": "True if configuration is enabled, false if it is disabled and null if configuration is not set.", + "type": "boolean" + } + } + }, + "FileSystemTokenStore": { + "description": "The configuration settings of the storage of the tokens if a file system is used.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "FileSystemTokenStore resource specific properties", + "properties": { + "directory": { + "description": "The directory in which the tokens will be stored.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "ForwardProxy": { + "description": "The configuration settings of a forward proxy used to make the requests.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "ForwardProxy resource specific properties", + "properties": { + "convention": { + "description": "The convention used to determine the url of the request made.", + "enum": [ + "NoProxy", + "Standard", + "Custom" + ], + "type": "string", + "x-ms-enum": { + "name": "ForwardProxyConvention", + "modelAsString": false + } + }, + "customHostHeaderName": { + "description": "The name of the header containing the host of the request.", + "type": "string" + }, + "customProtoHeaderName": { + "description": "The name of the header containing the scheme of the request.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "FunctionEnvelope": { + "description": "Function information.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "FunctionEnvelope resource specific properties", + "properties": { + "function_app_id": { + "description": "Function App ID.", + "type": "string" + }, + "script_root_path_href": { + "description": "Script root path URI.", + "type": "string" + }, + "script_href": { + "description": "Script URI.", + "type": "string" + }, + "config_href": { + "description": "Config URI.", + "type": "string" + }, + "test_data_href": { + "description": "Test data URI.", + "type": "string" + }, + "secrets_file_href": { + "description": "Secrets file URI.", + "type": "string" + }, + "href": { + "description": "Function URI.", + "type": "string" + }, + "config": { + "description": "Config information.", + "type": "object" + }, + "files": { + "description": "File list.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "test_data": { + "description": "Test data used when testing via the Azure Portal.", + "type": "string" + }, + "invoke_url_template": { + "description": "The invocation URL", + "type": "string" + }, + "language": { + "description": "The function language", + "type": "string" + }, + "isDisabled": { + "description": "Gets or sets a value indicating whether the function is disabled", + "type": "boolean" + } + }, + "x-ms-client-flatten": true + } + } + }, + "FunctionEnvelopeCollection": { + "description": "Collection of Kudu function information elements.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/FunctionEnvelope" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "FunctionSecrets": { + "description": "Function secrets.", + "type": "object", + "properties": { + "key": { + "description": "Secret key.", + "type": "string" + }, + "trigger_url": { + "description": "Trigger URL.", + "type": "string" + } + } + }, + "GitHub": { + "description": "The configuration settings of the GitHub provider.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "GitHub resource specific properties", + "properties": { + "enabled": { + "description": "false if the GitHub provider should not be enabled despite the set registration; otherwise, true.", + "type": "boolean" + }, + "registration": { + "$ref": "#/definitions/ClientRegistration", + "description": "The configuration settings of the app registration for the GitHub provider." + }, + "login": { + "$ref": "#/definitions/LoginScopes", + "description": "The configuration settings of the login flow." + } + }, + "x-ms-client-flatten": true + } + } + }, + "GitHubActionCodeConfiguration": { + "description": "The GitHub action code configuration.", + "type": "object", + "properties": { + "runtimeStack": { + "description": "Runtime stack is used to determine the workflow file content for code base apps.", + "type": "string" + }, + "runtimeVersion": { + "description": "Runtime version is used to determine what build version to set in the workflow file.", + "type": "string" + } + } + }, + "GitHubActionConfiguration": { + "description": "The GitHub action configuration.", + "type": "object", + "properties": { + "codeConfiguration": { + "$ref": "#/definitions/GitHubActionCodeConfiguration", + "description": "GitHub Action code configuration." + }, + "containerConfiguration": { + "$ref": "#/definitions/GitHubActionContainerConfiguration", + "description": "GitHub Action container configuration." + }, + "isLinux": { + "description": "This will help determine the workflow configuration to select.", + "type": "boolean" + }, + "generateWorkflowFile": { + "description": "Workflow option to determine whether the workflow file should be generated and written to the repository.", + "type": "boolean" + } + } + }, + "GitHubActionContainerConfiguration": { + "description": "The GitHub action container configuration.", + "type": "object", + "properties": { + "serverUrl": { + "description": "The server URL for the container registry where the build will be hosted.", + "type": "string" + }, + "imageName": { + "description": "The image name for the build.", + "type": "string" + }, + "username": { + "description": "The username used to upload the image to the container registry.", + "type": "string" + }, + "password": { + "description": "The password used to upload the image to the container registry.", + "type": "string", + "x-ms-secret": true + } + } + }, + "GlobalValidation": { + "description": "The configuration settings that determines the validation flow of users using App Service Authentication/Authorization.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "GlobalValidation resource specific properties", + "properties": { + "requireAuthentication": { + "description": "true if the authentication flow is required any request is made; otherwise, false.", + "type": "boolean" + }, + "unauthenticatedClientAction": { + "description": "The action to take when an unauthenticated client attempts to access the app.", + "enum": [ + "RedirectToLoginPage", + "AllowAnonymous", + "Return401", + "Return403" + ], + "type": "string", + "x-ms-enum": { + "name": "UnauthenticatedClientActionV2", + "modelAsString": false + } + }, + "redirectToProvider": { + "description": "The default authentication provider to use when multiple providers are configured.\nThis setting is only needed if multiple providers are configured and the unauthenticated client\naction is set to \"RedirectToLoginPage\".", + "type": "string" + }, + "excludedPaths": { + "description": "The paths for which unauthenticated flow would not be redirected to the login page.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "Google": { + "description": "The configuration settings of the Google provider.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "Google resource specific properties", + "properties": { + "enabled": { + "description": "false if the Google provider should not be enabled despite the set registration; otherwise, true.", + "type": "boolean" + }, + "registration": { + "$ref": "#/definitions/ClientRegistration", + "description": "The configuration settings of the app registration for the Google provider." + }, + "login": { + "$ref": "#/definitions/LoginScopes", + "description": "The configuration settings of the login flow." + }, + "validation": { + "$ref": "#/definitions/AllowedAudiencesValidation", + "description": "The configuration settings of the Azure Active Directory token validation flow." + } + }, + "x-ms-client-flatten": true + } + } + }, + "HostKeys": { + "description": "Functions host level keys.", + "type": "object", + "properties": { + "masterKey": { + "description": "Secret key.", + "type": "string" + }, + "functionKeys": { + "description": "Host level function keys.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "systemKeys": { + "description": "System keys.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "HostNameBinding": { + "description": "A hostname binding object.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "HostNameBinding resource specific properties", + "properties": { + "siteName": { + "description": "App Service app name.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "domainId": { + "description": "Fully qualified ARM domain resource URI.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "azureResourceName": { + "description": "Azure resource name.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "azureResourceType": { + "description": "Azure resource type.", + "enum": [ + "Website", + "TrafficManager" + ], + "type": "string", + "x-ms-enum": { + "name": "AzureResourceType", + "modelAsString": false + }, + "x-ms-mutability": [ + "create", + "read" + ] + }, + "customHostNameDnsRecordType": { + "description": "Custom DNS record type.", + "enum": [ + "CName", + "A" + ], + "type": "string", + "x-ms-enum": { + "name": "CustomHostNameDnsRecordType", + "modelAsString": false + }, + "x-ms-mutability": [ + "create", + "read" + ] + }, + "hostNameType": { + "description": "Hostname type.", + "enum": [ + "Verified", + "Managed" + ], + "type": "string", + "x-ms-enum": { + "name": "HostNameType", + "modelAsString": false + }, + "x-ms-mutability": [ + "create", + "read" + ] + }, + "sslState": { + "description": "SSL type", + "enum": [ + "Disabled", + "SniEnabled", + "IpBasedEnabled" + ], + "type": "string", + "x-ms-enum": { + "name": "SslState", + "modelAsString": false + }, + "x-ms-mutability": [ + "create", + "read" + ] + }, + "thumbprint": { + "description": "SSL certificate thumbprint", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "virtualIP": { + "description": "Virtual IP address assigned to the hostname if IP based SSL is enabled.", + "type": "string", + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "HostNameBindingCollection": { + "description": "Collection of hostname bindings.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/HostNameBinding" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "HttpLogsConfig": { + "description": "Http logs configuration.", + "type": "object", + "properties": { + "fileSystem": { + "$ref": "#/definitions/FileSystemHttpLogsConfig", + "description": "Http logs to file system configuration." + }, + "azureBlobStorage": { + "$ref": "#/definitions/AzureBlobStorageHttpLogsConfig", + "description": "Http logs to azure blob storage configuration." + } + } + }, + "HttpSettings": { + "description": "The configuration settings of the HTTP requests for authentication and authorization requests made against App Service Authentication/Authorization.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "HttpSettings resource specific properties", + "properties": { + "requireHttps": { + "description": "false if the authentication/authorization responses not having the HTTPS scheme are permissible; otherwise, true.", + "type": "boolean" + }, + "routes": { + "$ref": "#/definitions/HttpSettingsRoutes", + "description": "The configuration settings of the paths HTTP requests." + }, + "forwardProxy": { + "$ref": "#/definitions/ForwardProxy", + "description": "The configuration settings of a forward proxy used to make the requests." + } + }, + "x-ms-client-flatten": true + } + } + }, + "HttpSettingsRoutes": { + "description": "The configuration settings of the paths HTTP requests.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "HttpSettingsRoutes resource specific properties", + "properties": { + "apiPrefix": { + "description": "The prefix that should precede all the authentication/authorization paths.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "IdentityProviders": { + "description": "The configuration settings of each of the identity providers used to configure App Service Authentication/Authorization.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "IdentityProviders resource specific properties", + "properties": { + "azureActiveDirectory": { + "$ref": "#/definitions/AzureActiveDirectory", + "description": "The configuration settings of the Azure Active directory provider." + }, + "facebook": { + "$ref": "#/definitions/Facebook", + "description": "The configuration settings of the Facebook provider." + }, + "gitHub": { + "$ref": "#/definitions/GitHub", + "description": "The configuration settings of the GitHub provider." + }, + "google": { + "$ref": "#/definitions/Google", + "description": "The configuration settings of the Google provider." + }, + "twitter": { + "$ref": "#/definitions/Twitter", + "description": "The configuration settings of the Twitter provider." + }, + "customOpenIdConnectProviders": { + "description": "The map of the name of the alias of each custom Open ID Connect provider to the\nconfiguration settings of the custom Open ID Connect provider.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/CustomOpenIdConnectProvider" + } + }, + "legacyMicrosoftAccount": { + "$ref": "#/definitions/LegacyMicrosoftAccount", + "description": "The configuration settings of the legacy Microsoft Account provider." + }, + "apple": { + "$ref": "#/definitions/Apple", + "description": "The configuration settings of the Apple provider." + }, + "azureStaticWebApps": { + "$ref": "#/definitions/AzureStaticWebApps", + "description": "The configuration settings of the Azure Static Web Apps provider." + } + }, + "x-ms-client-flatten": true + } + } + }, + "JwtClaimChecks": { + "description": "The configuration settings of the checks that should be made while validating the JWT Claims.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "JwtClaimChecks resource specific properties", + "properties": { + "allowedGroups": { + "description": "The list of the allowed groups.", + "type": "array", + "items": { + "type": "string" + } + }, + "allowedClientApplications": { + "description": "The list of the allowed client applications.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "KeyInfo": { + "description": "Function key info.", + "type": "object", + "properties": { + "name": { + "description": "Key name", + "type": "string" + }, + "value": { + "description": "Key value", + "type": "string" + } + } + }, + "LegacyMicrosoftAccount": { + "description": "The configuration settings of the legacy Microsoft Account provider.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "LegacyMicrosoftAccount resource specific properties", + "properties": { + "enabled": { + "description": "false if the legacy Microsoft Account provider should not be enabled despite the set registration; otherwise, true.", + "type": "boolean" + }, + "registration": { + "$ref": "#/definitions/ClientRegistration", + "description": "The configuration settings of the app registration for the legacy Microsoft Account provider." + }, + "login": { + "$ref": "#/definitions/LoginScopes", + "description": "The configuration settings of the login flow." + }, + "validation": { + "$ref": "#/definitions/AllowedAudiencesValidation", + "description": "The configuration settings of the legacy Microsoft Account provider token validation flow." + } + }, + "x-ms-client-flatten": true + } + } + }, + "Login": { + "description": "The configuration settings of the login flow of users using App Service Authentication/Authorization.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "Login resource specific properties", + "properties": { + "routes": { + "$ref": "#/definitions/LoginRoutes", + "description": "The routes that specify the endpoints used for login and logout requests." + }, + "tokenStore": { + "$ref": "#/definitions/TokenStore", + "description": "The configuration settings of the token store." + }, + "preserveUrlFragmentsForLogins": { + "description": "true if the fragments from the request are preserved after the login request is made; otherwise, false.", + "type": "boolean" + }, + "allowedExternalRedirectUrls": { + "description": "External URLs that can be redirected to as part of logging in or logging out of the app. Note that the query string part of the URL is ignored.\nThis is an advanced setting typically only needed by Windows Store application backends.\nNote that URLs within the current domain are always implicitly allowed.", + "type": "array", + "items": { + "type": "string" + } + }, + "cookieExpiration": { + "$ref": "#/definitions/CookieExpiration", + "description": "The configuration settings of the session cookie's expiration." + }, + "nonce": { + "$ref": "#/definitions/Nonce", + "description": "The configuration settings of the nonce used in the login flow." + } + }, + "x-ms-client-flatten": true + } + } + }, + "LoginRoutes": { + "description": "The routes that specify the endpoints used for login and logout requests.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "LoginRoutes resource specific properties", + "properties": { + "logoutEndpoint": { + "description": "The endpoint at which a logout request should be made.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "LoginScopes": { + "description": "The configuration settings of the login flow, including the scopes that should be requested.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "LoginScopes resource specific properties", + "properties": { + "scopes": { + "description": "A list of the scopes that should be requested while authenticating.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "MSDeploy": { + "description": "MSDeploy ARM PUT information", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/MSDeployCore", + "description": "Core resource properties", + "properties": { + "addOnPackages": { + "description": "List of Add-On packages. Add-On packages implicitly enable the Do Not Delete MSDeploy rule.", + "type": "array", + "items": { + "$ref": "#/definitions/MSDeployCore" + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "MSDeployCore": { + "description": "MSDeploy ARM PUT core information", + "type": "object", + "properties": { + "packageUri": { + "description": "Package URI", + "type": "string" + }, + "connectionString": { + "description": "SQL Connection String", + "type": "string" + }, + "dbType": { + "description": "Database Type", + "type": "string" + }, + "setParametersXmlFileUri": { + "description": "URI of MSDeploy Parameters file. Must not be set if SetParameters is used.", + "type": "string" + }, + "setParameters": { + "description": "MSDeploy Parameters. Must not be set if SetParametersXmlFileUri is used.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "skipAppData": { + "description": "Controls whether the MSDeploy operation skips the App_Data directory.\nIf set to true, the existing App_Data directory on the destination\nwill not be deleted, and any App_Data directory in the source will be ignored.\nSetting is false by default.", + "type": "boolean" + }, + "appOffline": { + "description": "Sets the AppOffline rule while the MSDeploy operation executes.\nSetting is false by default.", + "type": "boolean" + } + } + }, + "MSDeployLog": { + "description": "MSDeploy log", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "MSDeployLog resource specific properties", + "properties": { + "entries": { + "description": "List of log entry messages", + "type": "array", + "items": { + "$ref": "#/definitions/MSDeployLogEntry" + }, + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "MSDeployLogEntry": { + "description": "MSDeploy log entry", + "type": "object", + "properties": { + "time": { + "format": "date-time", + "description": "Timestamp of log entry", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Log entry type", + "enum": [ + "Message", + "Warning", + "Error" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "MSDeployLogEntryType", + "modelAsString": false + } + }, + "message": { + "description": "Log entry message", + "type": "string", + "readOnly": true + } + } + }, + "MSDeployStatus": { + "description": "MSDeploy ARM response", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "MSDeployStatus resource specific properties", + "properties": { + "deployer": { + "description": "Username of deployer", + "type": "string", + "readOnly": true + }, + "provisioningState": { + "description": "Provisioning state", + "enum": [ + "accepted", + "running", + "succeeded", + "failed", + "canceled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "MSDeployProvisioningState", + "modelAsString": false + } + }, + "startTime": { + "format": "date-time", + "description": "Start time of deploy operation", + "type": "string", + "readOnly": true + }, + "endTime": { + "format": "date-time", + "description": "End time of deploy operation", + "type": "string", + "readOnly": true + }, + "complete": { + "description": "Whether the deployment operation has completed", + "type": "boolean", + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "MigrateMySqlRequest": { + "description": "MySQL migration request.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "MigrateMySqlRequest resource specific properties", + "required": [ + "connectionString", + "migrationType" + ], + "properties": { + "connectionString": { + "description": "Connection string to the remote MySQL database.", + "type": "string" + }, + "migrationType": { + "description": "The type of migration operation to be done", + "enum": [ + "LocalToRemote", + "RemoteToLocal" + ], + "type": "string", + "x-ms-enum": { + "name": "MySqlMigrationType", + "modelAsString": false + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "MigrateMySqlStatus": { + "description": "MySQL migration status.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "MigrateMySqlStatus resource specific properties", + "properties": { + "migrationOperationStatus": { + "description": "Status of the migration task.", + "enum": [ + "InProgress", + "Failed", + "Succeeded", + "TimedOut", + "Created" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "OperationStatus", + "modelAsString": false + } + }, + "operationId": { + "description": "Operation ID for the migration task.", + "type": "string", + "readOnly": true + }, + "localMySqlEnabled": { + "description": "True if the web app has in app MySql enabled", + "type": "boolean", + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "NetworkFeatures": { + "description": "Full view of network features for an app (presently VNET integration and Hybrid Connections).", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "NetworkFeatures resource specific properties", + "properties": { + "virtualNetworkName": { + "description": "The Virtual Network name.", + "type": "string", + "readOnly": true + }, + "virtualNetworkConnection": { + "$ref": "./CommonDefinitions.json#/definitions/VnetInfo", + "description": "The Virtual Network summary view.", + "readOnly": true + }, + "hybridConnections": { + "description": "The Hybrid Connections summary view.", + "type": "array", + "items": { + "$ref": "#/definitions/RelayServiceConnectionEntity" + }, + "readOnly": true + }, + "hybridConnectionsV2": { + "description": "The Hybrid Connection V2 (Service Bus) view.", + "type": "array", + "items": { + "$ref": "./CommonDefinitions.json#/definitions/HybridConnection" + }, + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "NetworkTrace": { + "description": "Network trace", + "type": "object", + "properties": { + "path": { + "description": "Local file path for the captured network trace file.", + "type": "string" + }, + "status": { + "description": "Current status of the network trace operation, same as Operation.Status (InProgress/Succeeded/Failed).", + "type": "string" + }, + "message": { + "description": "Detailed message of a network trace operation, e.g. error message in case of failure.", + "type": "string" + } + } + }, + "Nonce": { + "description": "The configuration settings of the nonce used in the login flow.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "Nonce resource specific properties", + "properties": { + "validateNonce": { + "description": "false if the nonce should not be validated while completing the login flow; otherwise, true.", + "type": "boolean" + }, + "nonceExpirationInterval": { + "description": "The time after the request is made when the nonce should expire.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "OpenIdConnectClientCredential": { + "description": "The authentication client credentials of the custom Open ID Connect provider.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "OpenIdConnectClientCredential resource specific properties", + "properties": { + "method": { + "description": "The method that should be used to authenticate the user.", + "enum": [ + "ClientSecretPost" + ], + "type": "string", + "x-ms-enum": { + "name": "ClientCredentialMethod", + "modelAsString": false + } + }, + "clientSecretSettingName": { + "description": "The app setting that contains the client secret for the custom Open ID Connect provider.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "OpenIdConnectConfig": { + "description": "The configuration settings of the endpoints used for the custom Open ID Connect provider.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "OpenIdConnectConfig resource specific properties", + "properties": { + "authorizationEndpoint": { + "description": "The endpoint to be used to make an authorization request.", + "type": "string" + }, + "tokenEndpoint": { + "description": "The endpoint to be used to request a token.", + "type": "string" + }, + "issuer": { + "description": "The endpoint that issues the token.", + "type": "string" + }, + "certificationUri": { + "description": "The endpoint that provides the keys necessary to validate the token.", + "type": "string" + }, + "wellKnownOpenIdConfiguration": { + "description": "The endpoint that contains all the configuration endpoints for the provider.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "OpenIdConnectLogin": { + "description": "The configuration settings of the login flow of the custom Open ID Connect provider.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "OpenIdConnectLogin resource specific properties", + "properties": { + "nameClaimType": { + "description": "The name of the claim that contains the users name.", + "type": "string" + }, + "scopes": { + "description": "A list of the scopes that should be requested while authenticating.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "OpenIdConnectRegistration": { + "description": "The configuration settings of the app registration for the custom Open ID Connect provider.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "OpenIdConnectRegistration resource specific properties", + "properties": { + "clientId": { + "description": "The client id of the custom Open ID Connect provider.", + "type": "string" + }, + "clientCredential": { + "$ref": "#/definitions/OpenIdConnectClientCredential", + "description": "The authentication credentials of the custom Open ID Connect provider." + }, + "openIdConnectConfiguration": { + "$ref": "#/definitions/OpenIdConnectConfig", + "description": "The configuration settings of the endpoints used for the custom Open ID Connect provider." + } + }, + "x-ms-client-flatten": true + } + } + }, + "PerfMonCounterCollection": { + "description": "Collection of performance monitor counters.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/PerfMonResponse" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "PerfMonResponse": { + "description": "Performance monitor API response.", + "type": "object", + "properties": { + "code": { + "description": "The response code.", + "type": "string" + }, + "message": { + "description": "The message.", + "type": "string" + }, + "data": { + "$ref": "#/definitions/PerfMonSet", + "description": "The performance monitor counters." + } + } + }, + "PerfMonSample": { + "description": "Performance monitor sample in a set.", + "type": "object", + "properties": { + "time": { + "format": "date-time", + "description": "Point in time for which counter was measured.", + "type": "string" + }, + "instanceName": { + "description": "Name of the server on which the measurement is made.", + "type": "string" + }, + "value": { + "format": "double", + "description": "Value of counter at a certain time.", + "type": "number" + } + } + }, + "PerfMonSet": { + "description": "Metric information.", + "type": "object", + "properties": { + "name": { + "description": "Unique key name of the counter.", + "type": "string" + }, + "startTime": { + "format": "date-time", + "description": "Start time of the period.", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "End time of the period.", + "type": "string" + }, + "timeGrain": { + "description": "Presented time grain.", + "type": "string" + }, + "values": { + "description": "Collection of workers that are active during this time.", + "type": "array", + "items": { + "$ref": "#/definitions/PerfMonSample" + } + } + } + }, + "PremierAddOn": { + "description": "Premier add-on.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "PremierAddOn resource specific properties", + "properties": { + "sku": { + "description": "Premier add on SKU.", + "type": "string" + }, + "product": { + "description": "Premier add on Product.", + "type": "string" + }, + "vendor": { + "description": "Premier add on Vendor.", + "type": "string" + }, + "marketplacePublisher": { + "description": "Premier add on Marketplace publisher.", + "type": "string" + }, + "marketplaceOffer": { + "description": "Premier add on Marketplace offer.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "PremierAddOnPatchResource": { + "description": "ARM resource for a PremierAddOn.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "PremierAddOnPatchResource resource specific properties", + "properties": { + "sku": { + "description": "Premier add on SKU.", + "type": "string" + }, + "product": { + "description": "Premier add on Product.", + "type": "string" + }, + "vendor": { + "description": "Premier add on Vendor.", + "type": "string" + }, + "marketplacePublisher": { + "description": "Premier add on Marketplace publisher.", + "type": "string" + }, + "marketplaceOffer": { + "description": "Premier add on Marketplace offer.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "PrivateAccess": { + "description": "Description of the parameters of Private Access for a Web Site.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "PrivateAccess resource specific properties", + "properties": { + "enabled": { + "description": "Whether private access is enabled or not.", + "type": "boolean" + }, + "virtualNetworks": { + "description": "The Virtual Networks (and subnets) allowed to access the site privately.", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateAccessVirtualNetwork" + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "PrivateAccessSubnet": { + "description": "Description of a Virtual Network subnet that is useable for private site access.", + "type": "object", + "properties": { + "name": { + "description": "The name of the subnet.", + "type": "string" + }, + "key": { + "format": "int32", + "description": "The key (ID) of the subnet.", + "type": "integer" + } + } + }, + "PrivateAccessVirtualNetwork": { + "description": "Description of a Virtual Network that is useable for private site access.", + "type": "object", + "properties": { + "name": { + "description": "The name of the Virtual Network.", + "type": "string" + }, + "key": { + "format": "int32", + "description": "The key (ID) of the Virtual Network.", + "type": "integer" + }, + "resourceId": { + "description": "The ARM uri of the Virtual Network", + "type": "string" + }, + "subnets": { + "description": "A List of subnets that access is allowed to on this Virtual Network. An empty array (but not null) is interpreted to mean that all subnets are allowed within this Virtual Network.", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateAccessSubnet" + } + } + } + }, + "ProcessInfo": { + "description": "Process Information.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "ProcessInfo resource specific properties", + "properties": { + "identifier": { + "format": "int32", + "description": "ARM Identifier for deployment.", + "type": "integer", + "readOnly": true + }, + "deployment_name": { + "description": "Deployment name.", + "type": "string" + }, + "href": { + "description": "HRef URI.", + "type": "string" + }, + "minidump": { + "description": "Minidump URI.", + "type": "string" + }, + "is_profile_running": { + "description": "Is profile running?", + "type": "boolean" + }, + "is_iis_profile_running": { + "description": "Is the IIS Profile running?", + "type": "boolean" + }, + "iis_profile_timeout_in_seconds": { + "format": "double", + "description": "IIS Profile timeout (seconds).", + "type": "number" + }, + "parent": { + "description": "Parent process.", + "type": "string" + }, + "children": { + "description": "Child process list.", + "type": "array", + "items": { + "type": "string" + } + }, + "threads": { + "description": "Thread list.", + "type": "array", + "items": { + "$ref": "#/definitions/ProcessThreadInfo" + } + }, + "open_file_handles": { + "description": "List of open files.", + "type": "array", + "items": { + "type": "string" + } + }, + "modules": { + "description": "List of modules.", + "type": "array", + "items": { + "$ref": "#/definitions/ProcessModuleInfo" + } + }, + "file_name": { + "description": "File name of this process.", + "type": "string" + }, + "command_line": { + "description": "Command line.", + "type": "string" + }, + "user_name": { + "description": "User name.", + "type": "string" + }, + "handle_count": { + "format": "int32", + "description": "Handle count.", + "type": "integer" + }, + "module_count": { + "format": "int32", + "description": "Module count.", + "type": "integer" + }, + "thread_count": { + "format": "int32", + "description": "Thread count.", + "type": "integer" + }, + "start_time": { + "format": "date-time", + "description": "Start time.", + "type": "string" + }, + "total_cpu_time": { + "description": "Total CPU time.", + "type": "string" + }, + "user_cpu_time": { + "description": "User CPU time.", + "type": "string" + }, + "privileged_cpu_time": { + "description": "Privileged CPU time.", + "type": "string" + }, + "working_set": { + "format": "int64", + "description": "Working set.", + "type": "integer" + }, + "peak_working_set": { + "format": "int64", + "description": "Peak working set.", + "type": "integer" + }, + "private_memory": { + "format": "int64", + "description": "Private memory size.", + "type": "integer" + }, + "virtual_memory": { + "format": "int64", + "description": "Virtual memory size.", + "type": "integer" + }, + "peak_virtual_memory": { + "format": "int64", + "description": "Peak virtual memory usage.", + "type": "integer" + }, + "paged_system_memory": { + "format": "int64", + "description": "Paged system memory.", + "type": "integer" + }, + "non_paged_system_memory": { + "format": "int64", + "description": "Non-paged system memory.", + "type": "integer" + }, + "paged_memory": { + "format": "int64", + "description": "Paged memory.", + "type": "integer" + }, + "peak_paged_memory": { + "format": "int64", + "description": "Peak paged memory.", + "type": "integer" + }, + "time_stamp": { + "format": "date-time", + "description": "Time stamp.", + "type": "string" + }, + "environment_variables": { + "description": "List of environment variables.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "is_scm_site": { + "description": "Is this the SCM site?", + "type": "boolean" + }, + "is_webjob": { + "description": "Is this a Web Job?", + "type": "boolean" + }, + "description": { + "description": "Description of process.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "ProcessInfoCollection": { + "description": "Collection of Kudu process information elements.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/ProcessInfo" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "ProcessModuleInfo": { + "description": "Process Module Information.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "ProcessModuleInfo resource specific properties", + "properties": { + "base_address": { + "description": "Base address. Used as module identifier in ARM resource URI.", + "type": "string" + }, + "file_name": { + "description": "File name.", + "type": "string" + }, + "href": { + "description": "HRef URI.", + "type": "string" + }, + "file_path": { + "description": "File path.", + "type": "string" + }, + "module_memory_size": { + "format": "int32", + "description": "Module memory size.", + "type": "integer" + }, + "file_version": { + "description": "File version.", + "type": "string" + }, + "file_description": { + "description": "File description.", + "type": "string" + }, + "product": { + "description": "Product name.", + "type": "string" + }, + "product_version": { + "description": "Product version.", + "type": "string" + }, + "is_debug": { + "description": "Is debug?", + "type": "boolean" + }, + "language": { + "description": "Module language (locale).", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "ProcessModuleInfoCollection": { + "description": "Collection of Kudu thread information elements.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/ProcessModuleInfo" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "ProcessThreadInfo": { + "description": "Process Thread Information.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "ProcessThreadInfo resource specific properties", + "properties": { + "identifier": { + "format": "int32", + "description": "Site extension ID.", + "type": "integer", + "readOnly": true + }, + "href": { + "description": "HRef URI.", + "type": "string" + }, + "process": { + "description": "Process URI.", + "type": "string" + }, + "start_address": { + "description": "Start address.", + "type": "string" + }, + "current_priority": { + "format": "int32", + "description": "Current thread priority.", + "type": "integer" + }, + "priority_level": { + "description": "Thread priority level.", + "type": "string" + }, + "base_priority": { + "format": "int32", + "description": "Base priority.", + "type": "integer" + }, + "start_time": { + "format": "date-time", + "description": "Start time.", + "type": "string" + }, + "total_processor_time": { + "description": "Total processor time.", + "type": "string" + }, + "user_processor_time": { + "description": "User processor time.", + "type": "string" + }, + "state": { + "description": "Thread state.", + "type": "string" + }, + "wait_reason": { + "description": "Wait reason.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "ProcessThreadInfoCollection": { + "description": "Collection of Kudu thread information elements.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/ProcessThreadInfo" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "PublicCertificate": { + "description": "Public certificate object", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "PublicCertificate resource specific properties", + "properties": { + "blob": { + "format": "byte", + "description": "Public Certificate byte array", + "type": "string" + }, + "publicCertificateLocation": { + "description": "Public Certificate Location", + "enum": [ + "CurrentUserMy", + "LocalMachineMy", + "Unknown" + ], + "type": "string", + "x-ms-enum": { + "name": "PublicCertificateLocation", + "modelAsString": false + } + }, + "thumbprint": { + "description": "Certificate Thumbprint", + "type": "string", + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "PublicCertificateCollection": { + "description": "Collection of public certificates", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/PublicCertificate" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "RelayServiceConnectionEntity": { + "description": "Hybrid Connection for an App Service app.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "RelayServiceConnectionEntity resource specific properties", + "properties": { + "entityName": { + "type": "string" + }, + "entityConnectionString": { + "type": "string" + }, + "resourceType": { + "type": "string" + }, + "resourceConnectionString": { + "type": "string" + }, + "hostname": { + "type": "string" + }, + "port": { + "format": "int32", + "type": "integer" + }, + "biztalkUri": { + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "RestoreRequest": { + "description": "Description of a restore request.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "RestoreRequest resource specific properties", + "required": [ + "storageAccountUrl", + "overwrite" + ], + "properties": { + "storageAccountUrl": { + "description": "SAS URL to the container.", + "type": "string" + }, + "blobName": { + "description": "Name of a blob which contains the backup.", + "type": "string" + }, + "overwrite": { + "description": "true if the restore operation can overwrite target app; otherwise, false. true is needed if trying to restore over an existing app.", + "type": "boolean" + }, + "siteName": { + "description": "Name of an app.", + "type": "string" + }, + "databases": { + "description": "Collection of databases which should be restored. This list has to match the list of databases included in the backup.", + "type": "array", + "items": { + "$ref": "#/definitions/DatabaseBackupSetting" + } + }, + "ignoreConflictingHostNames": { + "description": "Changes a logic when restoring an app with custom domains. true to remove custom domains automatically. If false, custom domains are added to \nthe app's object when it is being restored, but that might fail due to conflicts during the operation.", + "default": false, + "type": "boolean" + }, + "ignoreDatabases": { + "description": "Ignore the databases and only restore the site content", + "default": false, + "type": "boolean" + }, + "appServicePlan": { + "description": "Specify app service plan that will own restored site.", + "type": "string" + }, + "operationType": { + "description": "Operation type.", + "default": "Default", + "enum": [ + "Default", + "Clone", + "Relocation", + "Snapshot", + "CloudFS" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupRestoreOperationType", + "modelAsString": false + } + }, + "adjustConnectionStrings": { + "description": "true if SiteConfig.ConnectionStrings should be set in new app; otherwise, false.", + "type": "boolean" + }, + "hostingEnvironment": { + "description": "App Service Environment name, if needed (only when restoring an app to an App Service Environment).", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "SiteAuthSettings": { + "description": "Configuration settings for the Azure App Service Authentication / Authorization feature.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "SiteAuthSettings resource specific properties", + "properties": { + "enabled": { + "description": "true if the Authentication / Authorization feature is enabled for the current app; otherwise, false.", + "type": "boolean" + }, + "runtimeVersion": { + "description": "The RuntimeVersion of the Authentication / Authorization feature in use for the current app.\nThe setting in this value can control the behavior of certain features in the Authentication / Authorization module.", + "type": "string" + }, + "unauthenticatedClientAction": { + "description": "The action to take when an unauthenticated client attempts to access the app.", + "enum": [ + "RedirectToLoginPage", + "AllowAnonymous" + ], + "type": "string", + "x-ms-enum": { + "name": "UnauthenticatedClientAction", + "modelAsString": false + } + }, + "tokenStoreEnabled": { + "description": "true to durably store platform-specific security tokens that are obtained during login flows; otherwise, false.\n The default is false.", + "type": "boolean" + }, + "allowedExternalRedirectUrls": { + "description": "External URLs that can be redirected to as part of logging in or logging out of the app. Note that the query string part of the URL is ignored.\nThis is an advanced setting typically only needed by Windows Store application backends.\nNote that URLs within the current domain are always implicitly allowed.", + "type": "array", + "items": { + "type": "string" + } + }, + "defaultProvider": { + "description": "The default authentication provider to use when multiple providers are configured.\nThis setting is only needed if multiple providers are configured and the unauthenticated client\naction is set to \"RedirectToLoginPage\".", + "enum": [ + "AzureActiveDirectory", + "Facebook", + "Google", + "MicrosoftAccount", + "Twitter", + "Github" + ], + "type": "string", + "x-ms-enum": { + "name": "BuiltInAuthenticationProvider", + "modelAsString": false + } + }, + "tokenRefreshExtensionHours": { + "format": "double", + "description": "The number of hours after session token expiration that a session token can be used to\ncall the token refresh API. The default is 72 hours.", + "type": "number" + }, + "clientId": { + "description": "The Client ID of this relying party application, known as the client_id.\nThis setting is required for enabling OpenID Connection authentication with Azure Active Directory or \nother 3rd party OpenID Connect providers.\nMore information on OpenID Connect: http://openid.net/specs/openid-connect-core-1_0.html", + "type": "string" + }, + "clientSecret": { + "description": "The Client Secret of this relying party application (in Azure Active Directory, this is also referred to as the Key).\nThis setting is optional. If no client secret is configured, the OpenID Connect implicit auth flow is used to authenticate end users.\nOtherwise, the OpenID Connect Authorization Code Flow is used to authenticate end users.\nMore information on OpenID Connect: http://openid.net/specs/openid-connect-core-1_0.html", + "type": "string" + }, + "clientSecretSettingName": { + "description": "The app setting name that contains the client secret of the relying party application.", + "type": "string" + }, + "clientSecretCertificateThumbprint": { + "description": "An alternative to the client secret, that is the thumbprint of a certificate used for signing purposes. This property acts as\na replacement for the Client Secret. It is also optional.", + "type": "string" + }, + "issuer": { + "description": "The OpenID Connect Issuer URI that represents the entity which issues access tokens for this application.\nWhen using Azure Active Directory, this value is the URI of the directory tenant, e.g. https://sts.windows.net/{tenant-guid}/.\nThis URI is a case-sensitive identifier for the token issuer.\nMore information on OpenID Connect Discovery: http://openid.net/specs/openid-connect-discovery-1_0.html", + "type": "string" + }, + "validateIssuer": { + "description": "Gets a value indicating whether the issuer should be a valid HTTPS url and be validated as such.", + "type": "boolean" + }, + "allowedAudiences": { + "description": "Allowed audience values to consider when validating JWTs issued by \nAzure Active Directory. Note that the ClientID value is always considered an\nallowed audience, regardless of this setting.", + "type": "array", + "items": { + "type": "string" + } + }, + "additionalLoginParams": { + "description": "Login parameters to send to the OpenID Connect authorization endpoint when\na user logs in. Each parameter must be in the form \"key=value\".", + "type": "array", + "items": { + "type": "string" + } + }, + "aadClaimsAuthorization": { + "description": "Gets a JSON string containing the Azure AD Acl settings.", + "type": "string" + }, + "googleClientId": { + "description": "The OpenID Connect Client ID for the Google web application.\nThis setting is required for enabling Google Sign-In.\nGoogle Sign-In documentation: https://developers.google.com/identity/sign-in/web/", + "type": "string" + }, + "googleClientSecret": { + "description": "The client secret associated with the Google web application.\nThis setting is required for enabling Google Sign-In.\nGoogle Sign-In documentation: https://developers.google.com/identity/sign-in/web/", + "type": "string" + }, + "googleClientSecretSettingName": { + "description": "The app setting name that contains the client secret associated with \nthe Google web application.", + "type": "string" + }, + "googleOAuthScopes": { + "description": "The OAuth 2.0 scopes that will be requested as part of Google Sign-In authentication.\nThis setting is optional. If not specified, \"openid\", \"profile\", and \"email\" are used as default scopes.\nGoogle Sign-In documentation: https://developers.google.com/identity/sign-in/web/", + "type": "array", + "items": { + "type": "string" + } + }, + "facebookAppId": { + "description": "The App ID of the Facebook app used for login.\nThis setting is required for enabling Facebook Login.\nFacebook Login documentation: https://developers.facebook.com/docs/facebook-login", + "type": "string" + }, + "facebookAppSecret": { + "description": "The App Secret of the Facebook app used for Facebook Login.\nThis setting is required for enabling Facebook Login.\nFacebook Login documentation: https://developers.facebook.com/docs/facebook-login", + "type": "string" + }, + "facebookAppSecretSettingName": { + "description": "The app setting name that contains the app secret used for Facebook Login.", + "type": "string" + }, + "facebookOAuthScopes": { + "description": "The OAuth 2.0 scopes that will be requested as part of Facebook Login authentication.\nThis setting is optional.\nFacebook Login documentation: https://developers.facebook.com/docs/facebook-login", + "type": "array", + "items": { + "type": "string" + } + }, + "gitHubClientId": { + "description": "The Client Id of the GitHub app used for login.\nThis setting is required for enabling Github login", + "type": "string" + }, + "gitHubClientSecret": { + "description": "The Client Secret of the GitHub app used for Github Login.\nThis setting is required for enabling Github login.", + "type": "string" + }, + "gitHubClientSecretSettingName": { + "description": "The app setting name that contains the client secret of the Github\napp used for GitHub Login.", + "type": "string" + }, + "gitHubOAuthScopes": { + "description": "The OAuth 2.0 scopes that will be requested as part of GitHub Login authentication.\nThis setting is optional", + "type": "array", + "items": { + "type": "string" + } + }, + "twitterConsumerKey": { + "description": "The OAuth 1.0a consumer key of the Twitter application used for sign-in.\nThis setting is required for enabling Twitter Sign-In.\nTwitter Sign-In documentation: https://dev.twitter.com/web/sign-in", + "type": "string" + }, + "twitterConsumerSecret": { + "description": "The OAuth 1.0a consumer secret of the Twitter application used for sign-in.\nThis setting is required for enabling Twitter Sign-In.\nTwitter Sign-In documentation: https://dev.twitter.com/web/sign-in", + "type": "string" + }, + "twitterConsumerSecretSettingName": { + "description": "The app setting name that contains the OAuth 1.0a consumer secret of the Twitter\napplication used for sign-in.", + "type": "string" + }, + "microsoftAccountClientId": { + "description": "The OAuth 2.0 client ID that was created for the app used for authentication.\nThis setting is required for enabling Microsoft Account authentication.\nMicrosoft Account OAuth documentation: https://dev.onedrive.com/auth/msa_oauth.htm", + "type": "string" + }, + "microsoftAccountClientSecret": { + "description": "The OAuth 2.0 client secret that was created for the app used for authentication.\nThis setting is required for enabling Microsoft Account authentication.\nMicrosoft Account OAuth documentation: https://dev.onedrive.com/auth/msa_oauth.htm", + "type": "string" + }, + "microsoftAccountClientSecretSettingName": { + "description": "The app setting name containing the OAuth 2.0 client secret that was created for the\napp used for authentication.", + "type": "string" + }, + "microsoftAccountOAuthScopes": { + "description": "The OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication.\nThis setting is optional. If not specified, \"wl.basic\" is used as the default scope.\nMicrosoft Account Scopes and permissions documentation: https://msdn.microsoft.com/en-us/library/dn631845.aspx", + "type": "array", + "items": { + "type": "string" + } + }, + "isAuthFromFile": { + "description": "\"true\" if the auth config settings should be read from a file,\n\"false\" otherwise", + "type": "string" + }, + "authFilePath": { + "description": "The path of the config file containing auth settings.\nIf the path is relative, base will the site's root directory.", + "type": "string" + }, + "configVersion": { + "description": "The ConfigVersion of the Authentication / Authorization feature in use for the current app.\nThe setting in this value can control the behavior of the control plane for Authentication / Authorization.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "SiteAuthSettingsV2": { + "description": "Configuration settings for the Azure App Service Authentication / Authorization V2 feature.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "SiteAuthSettingsV2 resource specific properties", + "properties": { + "platform": { + "$ref": "#/definitions/AuthPlatform", + "description": "The configuration settings of the platform of App Service Authentication/Authorization." + }, + "globalValidation": { + "$ref": "#/definitions/GlobalValidation", + "description": "The configuration settings that determines the validation flow of users using App Service Authentication/Authorization." + }, + "identityProviders": { + "$ref": "#/definitions/IdentityProviders", + "description": "The configuration settings of each of the identity providers used to configure App Service Authentication/Authorization." + }, + "login": { + "$ref": "#/definitions/Login", + "description": "The configuration settings of the login flow of users using App Service Authentication/Authorization." + }, + "httpSettings": { + "$ref": "#/definitions/HttpSettings", + "description": "The configuration settings of the HTTP requests for authentication and authorization requests made against App Service Authentication/Authorization." + } + }, + "x-ms-client-flatten": true + } + } + }, + "SiteCloneability": { + "description": "Represents whether or not an app is cloneable.", + "type": "object", + "properties": { + "result": { + "description": "Name of app.", + "enum": [ + "Cloneable", + "PartiallyCloneable", + "NotCloneable" + ], + "type": "string", + "x-ms-enum": { + "name": "CloneAbilityResult", + "modelAsString": false + } + }, + "blockingFeatures": { + "description": "List of features enabled on app that prevent cloning.", + "type": "array", + "items": { + "$ref": "#/definitions/SiteCloneabilityCriterion" + } + }, + "unsupportedFeatures": { + "description": "List of features enabled on app that are non-blocking but cannot be cloned. The app can still be cloned\nbut the features in this list will not be set up on cloned app.", + "type": "array", + "items": { + "$ref": "#/definitions/SiteCloneabilityCriterion" + } + }, + "blockingCharacteristics": { + "description": "List of blocking application characteristics.", + "type": "array", + "items": { + "$ref": "#/definitions/SiteCloneabilityCriterion" + } + } + } + }, + "SiteCloneabilityCriterion": { + "description": "An app cloneability criterion.", + "type": "object", + "properties": { + "name": { + "description": "Name of criterion.", + "type": "string" + }, + "description": { + "description": "Description of criterion.", + "type": "string" + } + } + }, + "SiteConfigResource": { + "description": "Web app configuration ARM resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "$ref": "./CommonDefinitions.json#/definitions/SiteConfig", + "description": "Core resource properties", + "x-ms-client-flatten": true + } + } + }, + "SiteConfigResourceCollection": { + "description": "Collection of site configurations.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/SiteConfigResource" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "SiteConfigurationSnapshotInfo": { + "description": "A snapshot of a web app configuration.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "SiteConfigurationSnapshotInfo resource specific properties", + "properties": { + "time": { + "format": "date-time", + "description": "The time the snapshot was taken.", + "type": "string", + "readOnly": true + }, + "snapshotId": { + "format": "int32", + "description": "The id of the snapshot", + "type": "integer", + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "SiteConfigurationSnapshotInfoCollection": { + "description": "Collection of metadata for the app configuration snapshots that can be restored.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/SiteConfigurationSnapshotInfo" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "SiteExtensionInfo": { + "description": "Site Extension Information.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "SiteExtensionInfo resource specific properties", + "properties": { + "extension_id": { + "description": "Site extension ID.", + "type": "string" + }, + "title": { + "type": "string" + }, + "extension_type": { + "description": "Site extension type.", + "enum": [ + "Gallery", + "WebRoot" + ], + "type": "string", + "x-ms-enum": { + "name": "SiteExtensionType", + "modelAsString": false + } + }, + "summary": { + "description": "Summary description.", + "type": "string" + }, + "description": { + "description": "Detailed description.", + "type": "string" + }, + "version": { + "description": "Version information.", + "type": "string" + }, + "extension_url": { + "description": "Extension URL.", + "type": "string" + }, + "project_url": { + "description": "Project URL.", + "type": "string" + }, + "icon_url": { + "description": "Icon URL.", + "type": "string" + }, + "license_url": { + "description": "License URL.", + "type": "string" + }, + "feed_url": { + "description": "Feed URL.", + "type": "string" + }, + "authors": { + "description": "List of authors.", + "type": "array", + "items": { + "type": "string" + } + }, + "installer_command_line_params": { + "description": "Installer command line parameters.", + "type": "string" + }, + "published_date_time": { + "format": "date-time", + "description": "Published timestamp.", + "type": "string" + }, + "download_count": { + "format": "int32", + "description": "Count of downloads.", + "type": "integer" + }, + "local_is_latest_version": { + "description": "true if the local version is the latest version; false otherwise.", + "type": "boolean" + }, + "local_path": { + "description": "Local path.", + "type": "string" + }, + "installed_date_time": { + "format": "date-time", + "description": "Installed timestamp.", + "type": "string" + }, + "provisioningState": { + "description": "Provisioning state.", + "type": "string" + }, + "comment": { + "description": "Site Extension comment.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "SiteExtensionInfoCollection": { + "description": "Collection of Kudu site extension information elements.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/SiteExtensionInfo" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "SiteLogsConfig": { + "description": "Configuration of App Service site logs.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "SiteLogsConfig resource specific properties", + "properties": { + "applicationLogs": { + "$ref": "#/definitions/ApplicationLogsConfig", + "description": "Application logs configuration." + }, + "httpLogs": { + "$ref": "#/definitions/HttpLogsConfig", + "description": "HTTP logs configuration." + }, + "failedRequestsTracing": { + "$ref": "#/definitions/EnabledConfig", + "description": "Failed requests tracing configuration." + }, + "detailedErrorMessages": { + "$ref": "#/definitions/EnabledConfig", + "description": "Detailed error messages configuration." + } + }, + "x-ms-client-flatten": true + } + } + }, + "SitePatchResource": { + "description": "ARM resource for a site.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "SitePatchResource resource specific properties", + "properties": { + "state": { + "description": "Current state of the app.", + "type": "string", + "readOnly": true + }, + "hostNames": { + "description": "Hostnames associated with the app.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "repositorySiteName": { + "description": "Name of the repository site.", + "type": "string", + "readOnly": true + }, + "usageState": { + "description": "State indicating whether the app has exceeded its quota usage. Read-only.", + "enum": [ + "Normal", + "Exceeded" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "UsageState", + "modelAsString": false + } + }, + "enabled": { + "description": "true if the app is enabled; otherwise, false. Setting this value to false disables the app (takes the app offline).", + "type": "boolean" + }, + "enabledHostNames": { + "description": "Enabled hostnames for the app.Hostnames need to be assigned (see HostNames) AND enabled. Otherwise,\nthe app is not served on those hostnames.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "availabilityState": { + "description": "Management information availability state for the app.", + "enum": [ + "Normal", + "Limited", + "DisasterRecoveryMode" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "SiteAvailabilityState", + "modelAsString": false + } + }, + "hostNameSslStates": { + "description": "Hostname SSL states are used to manage the SSL bindings for app's hostnames.", + "type": "array", + "items": { + "$ref": "./CommonDefinitions.json#/definitions/HostNameSslState" + } + }, + "serverFarmId": { + "description": "Resource ID of the associated App Service plan, formatted as: \"/subscriptions/{subscriptionID}/resourceGroups/{groupName}/providers/Microsoft.Web/serverfarms/{appServicePlanName}\".", + "type": "string" + }, + "reserved": { + "description": "true if reserved; otherwise, false.", + "default": false, + "type": "boolean", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "isXenon": { + "description": "Obsolete: Hyper-V sandbox.", + "default": false, + "type": "boolean", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "hyperV": { + "description": "Hyper-V sandbox.", + "default": false, + "type": "boolean", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "lastModifiedTimeUtc": { + "format": "date-time", + "description": "Last time the app was modified, in UTC. Read-only.", + "type": "string", + "readOnly": true + }, + "siteConfig": { + "$ref": "./CommonDefinitions.json#/definitions/SiteConfig", + "description": "Configuration of the app." + }, + "trafficManagerHostNames": { + "description": "Azure Traffic Manager hostnames associated with the app. Read-only.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "scmSiteAlsoStopped": { + "description": "true to stop SCM (KUDU) site when the app is stopped; otherwise, false. The default is false.", + "default": false, + "type": "boolean" + }, + "targetSwapSlot": { + "description": "Specifies which deployment slot this app will swap into. Read-only.", + "type": "string", + "readOnly": true + }, + "hostingEnvironmentProfile": { + "$ref": "./CommonDefinitions.json#/definitions/HostingEnvironmentProfile", + "description": "App Service Environment to use for the app.", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "clientAffinityEnabled": { + "description": "true to enable client affinity; false to stop sending session affinity cookies, which route client requests in the same session to the same instance. Default is true.", + "type": "boolean" + }, + "clientCertEnabled": { + "description": "true to enable client certificate authentication (TLS mutual authentication); otherwise, false. Default is false.", + "type": "boolean" + }, + "clientCertMode": { + "description": "This composes with ClientCertEnabled setting.\n- ClientCertEnabled: false means ClientCert is ignored.\n- ClientCertEnabled: true and ClientCertMode: Required means ClientCert is required.\n- ClientCertEnabled: true and ClientCertMode: Optional means ClientCert is optional or accepted.", + "enum": [ + "Required", + "Optional", + "OptionalInteractiveUser" + ], + "type": "string", + "x-ms-enum": { + "name": "ClientCertMode", + "modelAsString": false + } + }, + "clientCertExclusionPaths": { + "description": "client certificate authentication comma-separated exclusion paths", + "type": "string" + }, + "hostNamesDisabled": { + "description": "true to disable the public hostnames of the app; otherwise, false.\n If true, the app is only accessible via API management process.", + "type": "boolean" + }, + "customDomainVerificationId": { + "description": "Unique identifier that verifies the custom domains assigned to the app. Customer will add this id to a txt record for verification.", + "type": "string" + }, + "outboundIpAddresses": { + "description": "List of IP addresses that the app uses for outbound connections (e.g. database access). Includes VIPs from tenants that site can be hosted with current settings. Read-only.", + "type": "string", + "readOnly": true + }, + "possibleOutboundIpAddresses": { + "description": "List of IP addresses that the app uses for outbound connections (e.g. database access). Includes VIPs from all tenants except dataComponent. Read-only.", + "type": "string", + "readOnly": true + }, + "containerSize": { + "format": "int32", + "description": "Size of the function container.", + "type": "integer" + }, + "dailyMemoryTimeQuota": { + "format": "int32", + "description": "Maximum allowed daily memory-time quota (applicable on dynamic apps only).", + "type": "integer" + }, + "suspendedTill": { + "format": "date-time", + "description": "App suspended till in case memory-time quota is exceeded.", + "type": "string", + "readOnly": true + }, + "maxNumberOfWorkers": { + "format": "int32", + "description": "Maximum number of workers.\nThis only applies to Functions container.", + "type": "integer", + "readOnly": true + }, + "cloningInfo": { + "$ref": "./CommonDefinitions.json#/definitions/CloningInfo", + "description": "If specified during app creation, the app is cloned from a source app.", + "x-ms-mutability": [ + "create" + ] + }, + "resourceGroup": { + "description": "Name of the resource group the app belongs to. Read-only.", + "type": "string", + "readOnly": true + }, + "isDefaultContainer": { + "description": "true if the app is a default container; otherwise, false.", + "type": "boolean", + "readOnly": true + }, + "defaultHostName": { + "description": "Default hostname of the app. Read-only.", + "type": "string", + "readOnly": true + }, + "slotSwapStatus": { + "$ref": "./CommonDefinitions.json#/definitions/SlotSwapStatus", + "description": "Status of the last deployment slot swap operation.", + "readOnly": true + }, + "httpsOnly": { + "description": "HttpsOnly: configures a web site to accept only https requests. Issues redirect for\nhttp requests", + "type": "boolean" + }, + "redundancyMode": { + "description": "Site redundancy mode", + "enum": [ + "None", + "Manual", + "Failover", + "ActiveActive", + "GeoRedundant" + ], + "type": "string", + "x-ms-enum": { + "name": "RedundancyMode", + "modelAsString": false + } + }, + "inProgressOperationId": { + "format": "uuid", + "description": "Specifies an operation id if this site has a pending operation.", + "type": "string", + "readOnly": true, + "example": "00000000-0000-0000-0000-000000000000" + }, + "storageAccountRequired": { + "description": "Checks if Customer provided storage account is required", + "type": "boolean" + }, + "keyVaultReferenceIdentity": { + "description": "Identity to use for Key Vault Reference authentication.", + "type": "string" + }, + "virtualNetworkSubnetId": { + "description": "Azure Resource Manager ID of the Virtual network and subnet to be joined by Regional VNET Integration.\nThis must be of the form /subscriptions/{subscriptionName}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{vnetName}/subnets/{subnetName}", + "type": "string" + } + }, + "x-ms-client-flatten": true + }, + "identity": { + "$ref": "./CommonDefinitions.json#/definitions/ManagedServiceIdentity" + } + } + }, + "SitePhpErrorLogFlag": { + "description": "Used for getting PHP error logging flag.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "SitePhpErrorLogFlag resource specific properties", + "properties": { + "localLogErrors": { + "description": "Local log_errors setting.", + "type": "string" + }, + "masterLogErrors": { + "description": "Master log_errors setting.", + "type": "string" + }, + "localLogErrorsMaxLength": { + "description": "Local log_errors_max_len setting.", + "type": "string" + }, + "masterLogErrorsMaxLength": { + "description": "Master log_errors_max_len setting.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "SiteSourceControl": { + "description": "Source control configuration for an app.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "SiteSourceControl resource specific properties", + "properties": { + "repoUrl": { + "description": "Repository or source control URL.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "branch": { + "description": "Name of branch to use for deployment.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "isManualIntegration": { + "description": "true to limit to manual integration; false to enable continuous integration (which configures webhooks into online repos like GitHub).", + "type": "boolean", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "isGitHubAction": { + "description": "true if this is deployed via GitHub action.", + "type": "boolean", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "deploymentRollbackEnabled": { + "description": "true to enable deployment rollback; otherwise, false.", + "type": "boolean", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "isMercurial": { + "description": "true for a Mercurial repository; false for a Git repository.", + "type": "boolean", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "gitHubActionConfiguration": { + "$ref": "#/definitions/GitHubActionConfiguration", + "description": "If GitHub Action is selected, than the associated configuration." + } + }, + "x-ms-client-flatten": true + } + } + }, + "SlotConfigNames": { + "description": "Names for connection strings, application settings, and external Azure storage account configuration\nidentifiers to be marked as sticky to the deployment slot and not moved during a swap operation.\nThis is valid for all deployment slots in an app.", + "type": "object", + "properties": { + "connectionStringNames": { + "description": "List of connection string names.", + "type": "array", + "items": { + "type": "string" + } + }, + "appSettingNames": { + "description": "List of application settings names.", + "type": "array", + "items": { + "type": "string" + } + }, + "azureStorageConfigNames": { + "description": "List of external Azure storage account identifiers.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "SlotConfigNamesResource": { + "description": "Slot Config names azure resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/SlotConfigNames", + "description": "Core resource properties", + "x-ms-client-flatten": true + } + } + }, + "SlotDifference": { + "description": "A setting difference between two deployment slots of an app.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "SlotDifference resource specific properties", + "properties": { + "level": { + "description": "Level of the difference: Information, Warning or Error.", + "type": "string", + "readOnly": true + }, + "settingType": { + "description": "The type of the setting: General, AppSetting or ConnectionString.", + "type": "string", + "readOnly": true + }, + "diffRule": { + "description": "Rule that describes how to process the setting difference during a slot swap.", + "type": "string", + "readOnly": true + }, + "settingName": { + "description": "Name of the setting.", + "type": "string", + "readOnly": true + }, + "valueInCurrentSlot": { + "description": "Value of the setting in the current slot.", + "type": "string", + "readOnly": true + }, + "valueInTargetSlot": { + "description": "Value of the setting in the target slot.", + "type": "string", + "readOnly": true + }, + "description": { + "description": "Description of the setting difference.", + "type": "string", + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "SlotDifferenceCollection": { + "description": "Collection of slot differences.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/SlotDifference" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "SnapshotCollection": { + "description": "Collection of snapshots which can be used to revert an app to a previous time.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "./CommonDefinitions.json#/definitions/Snapshot" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "SnapshotRecoverySource": { + "description": "Specifies the web app that snapshot contents will be retrieved from.", + "type": "object", + "properties": { + "location": { + "description": "Geographical location of the source web app, e.g. SouthEastAsia, SouthCentralUS", + "type": "string" + }, + "id": { + "description": "ARM resource ID of the source app. \n/subscriptions/{subId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName} for production slots and \n/subscriptions/{subId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/slots/{slotName} for other slots.", + "type": "string" + } + } + }, + "SnapshotRestoreRequest": { + "description": "Details about app recovery operation.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "SnapshotRestoreRequest resource specific properties", + "required": [ + "overwrite" + ], + "properties": { + "snapshotTime": { + "description": "Point in time in which the app restore should be done, formatted as a DateTime string.", + "type": "string" + }, + "recoverySource": { + "$ref": "#/definitions/SnapshotRecoverySource", + "description": "Optional. Specifies the web app that snapshot contents will be retrieved from.\nIf empty, the targeted web app will be used as the source." + }, + "overwrite": { + "description": "If true the restore operation can overwrite source app; otherwise, false.", + "type": "boolean" + }, + "recoverConfiguration": { + "description": "If true, site configuration, in addition to content, will be reverted.", + "type": "boolean" + }, + "ignoreConflictingHostNames": { + "description": "If true, custom hostname conflicts will be ignored when recovering to a target web app.\nThis setting is only necessary when RecoverConfiguration is enabled.", + "type": "boolean" + }, + "useDRSecondary": { + "description": "If true, the snapshot is retrieved from DRSecondary endpoint.", + "type": "boolean" + } + }, + "x-ms-client-flatten": true + } + } + }, + "StorageMigrationOptions": { + "description": "Options for app content migration.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "StorageMigrationOptions resource specific properties", + "required": [ + "azurefilesConnectionString", + "azurefilesShare" + ], + "properties": { + "azurefilesConnectionString": { + "description": "AzureFiles connection string.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "azurefilesShare": { + "description": "AzureFiles share.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "switchSiteAfterMigration": { + "description": "trueif the app should be switched over; otherwise, false.", + "default": false, + "type": "boolean", + "x-ms-mutability": [ + "create" + ] + }, + "blockWriteAccessToSite": { + "description": "true if the app should be read only during copy operation; otherwise, false.", + "default": false, + "type": "boolean", + "x-ms-mutability": [ + "create" + ] + } + }, + "x-ms-client-flatten": true + } + } + }, + "StorageMigrationResponse": { + "description": "Response for a migration of app content request.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "StorageMigrationResponse resource specific properties", + "properties": { + "operationId": { + "description": "When server starts the migration process, it will return an operation ID identifying that particular migration operation.", + "type": "string", + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "SwiftVirtualNetwork": { + "description": "Swift Virtual Network Contract. This is used to enable the new Swift way of doing virtual network integration.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "SwiftVirtualNetwork resource specific properties", + "properties": { + "subnetResourceId": { + "description": "The Virtual Network subnet's resource ID. This is the subnet that this Web App will join. This subnet must have a delegation to Microsoft.Web/serverFarms defined first.", + "type": "string" + }, + "swiftSupported": { + "description": "A flag that specifies if the scale unit this Web App is on supports Swift integration.", + "type": "boolean" + } + }, + "x-ms-client-flatten": true + } + } + }, + "TokenStore": { + "description": "The configuration settings of the token store.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "TokenStore resource specific properties", + "properties": { + "enabled": { + "description": "true to durably store platform-specific security tokens that are obtained during login flows; otherwise, false.\n The default is false.", + "type": "boolean" + }, + "tokenRefreshExtensionHours": { + "format": "double", + "description": "The number of hours after session token expiration that a session token can be used to\ncall the token refresh API. The default is 72 hours.", + "type": "number" + }, + "fileSystem": { + "$ref": "#/definitions/FileSystemTokenStore", + "description": "The configuration settings of the storage of the tokens if a file system is used." + }, + "azureBlobStorage": { + "$ref": "#/definitions/BlobStorageTokenStore", + "description": "The configuration settings of the storage of the tokens if blob storage is used." + } + }, + "x-ms-client-flatten": true + } + } + }, + "TriggeredJobHistory": { + "description": "Triggered Web Job History. List of Triggered Web Job Run Information elements.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "TriggeredJobHistory resource specific properties", + "properties": { + "runs": { + "description": "List of triggered web job runs.", + "type": "array", + "items": { + "$ref": "#/definitions/TriggeredJobRun" + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "TriggeredJobHistoryCollection": { + "description": "Collection of Kudu continuous web job information elements.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/TriggeredJobHistory" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "TriggeredJobRun": { + "description": "Triggered Web Job Run Information.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "TriggeredJobRun resource specific properties", + "properties": { + "web_job_id": { + "description": "Job ID.", + "type": "string" + }, + "web_job_name": { + "description": "Job name.", + "type": "string" + }, + "status": { + "description": "Job status.", + "enum": [ + "Success", + "Failed", + "Error" + ], + "type": "string", + "x-ms-enum": { + "name": "TriggeredWebJobStatus", + "modelAsString": false + } + }, + "start_time": { + "format": "date-time", + "description": "Start time.", + "type": "string" + }, + "end_time": { + "format": "date-time", + "description": "End time.", + "type": "string" + }, + "duration": { + "description": "Job duration.", + "type": "string" + }, + "output_url": { + "description": "Output URL.", + "type": "string" + }, + "error_url": { + "description": "Error URL.", + "type": "string" + }, + "url": { + "description": "Job URL.", + "type": "string" + }, + "job_name": { + "description": "Job name.", + "type": "string" + }, + "trigger": { + "description": "Job trigger.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "TriggeredWebJob": { + "description": "Triggered Web Job Information.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "TriggeredWebJob resource specific properties", + "properties": { + "latest_run": { + "$ref": "#/definitions/TriggeredJobRun", + "description": "Latest job run information." + }, + "history_url": { + "description": "History URL.", + "type": "string" + }, + "scheduler_logs_url": { + "description": "Scheduler Logs URL.", + "type": "string" + }, + "run_command": { + "description": "Run command.", + "type": "string" + }, + "url": { + "description": "Job URL.", + "type": "string" + }, + "extra_info_url": { + "description": "Extra Info URL.", + "type": "string" + }, + "web_job_type": { + "description": "Job type.", + "enum": [ + "Continuous", + "Triggered" + ], + "type": "string", + "x-ms-enum": { + "name": "WebJobType", + "modelAsString": false + } + }, + "error": { + "description": "Error information.", + "type": "string" + }, + "using_sdk": { + "description": "Using SDK?", + "type": "boolean" + }, + "settings": { + "description": "Job settings.", + "type": "object", + "additionalProperties": { + "type": "object" + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "TriggeredWebJobCollection": { + "description": "Collection of Kudu continuous web job information elements.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/TriggeredWebJob" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "Twitter": { + "description": "The configuration settings of the Twitter provider.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "Twitter resource specific properties", + "properties": { + "enabled": { + "description": "false if the Twitter provider should not be enabled despite the set registration; otherwise, true.", + "type": "boolean" + }, + "registration": { + "$ref": "#/definitions/TwitterRegistration", + "description": "The configuration settings of the app registration for the Twitter provider." + } + }, + "x-ms-client-flatten": true + } + } + }, + "TwitterRegistration": { + "description": "The configuration settings of the app registration for the Twitter provider.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "TwitterRegistration resource specific properties", + "properties": { + "consumerKey": { + "description": "The OAuth 1.0a consumer key of the Twitter application used for sign-in.\nThis setting is required for enabling Twitter Sign-In.\nTwitter Sign-In documentation: https://dev.twitter.com/web/sign-in", + "type": "string" + }, + "consumerSecretSettingName": { + "description": "The app setting name that contains the OAuth 1.0a consumer secret of the Twitter\napplication used for sign-in.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "WebAppInstanceStatusCollection": { + "description": "Collection of app instances.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/WebSiteInstanceStatus" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "WebJob": { + "description": "Web Job Information.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "WebJob resource specific properties", + "properties": { + "run_command": { + "description": "Run command.", + "type": "string" + }, + "url": { + "description": "Job URL.", + "type": "string" + }, + "extra_info_url": { + "description": "Extra Info URL.", + "type": "string" + }, + "web_job_type": { + "description": "Job type.", + "enum": [ + "Continuous", + "Triggered" + ], + "type": "string", + "x-ms-enum": { + "name": "WebJobType", + "modelAsString": false + } + }, + "error": { + "description": "Error information.", + "type": "string" + }, + "using_sdk": { + "description": "Using SDK?", + "type": "boolean" + }, + "settings": { + "description": "Job settings.", + "type": "object", + "additionalProperties": { + "type": "object" + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "WebJobCollection": { + "description": "Collection of Kudu web job information elements.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/WebJob" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "WebSiteInstanceStatus": { + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "WebSiteInstanceStatus resource specific properties", + "properties": { + "state": { + "enum": [ + "READY", + "STOPPED", + "UNKNOWN" + ], + "type": "string", + "x-ms-enum": { + "name": "SiteRuntimeState", + "modelAsString": false + } + }, + "statusUrl": { + "description": "Link to the GetStatusApi in Kudu", + "type": "string" + }, + "detectorUrl": { + "description": "Link to the Diagnose and Solve Portal", + "type": "string" + }, + "consoleUrl": { + "description": "Link to the console to web app instance", + "type": "string" + }, + "healthCheckUrl": { + "description": "Link to the console to web app instance", + "type": "string" + }, + "containers": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/ContainerInfo" + } + } + }, + "x-ms-client-flatten": true + } + } + } + }, + "parameters": { + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Your Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).", + "required": true, + "type": "string" + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "Name of the resource group to which the resource belongs.", + "required": true, + "type": "string", + "maxLength": 90, + "minLength": 1, + "pattern": "^[-\\w\\._\\(\\)]+[^\\.]$", + "x-ms-parameter-location": "method" + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "API Version", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ApproveRejectSitePrivateEndpointConnection.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ApproveRejectSitePrivateEndpointConnection.json new file mode 100644 index 000000000000..1bc62b2e5ca5 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ApproveRejectSitePrivateEndpointConnection.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testSite", + "privateEndpointConnectionName": "connection", + "api-version": "2021-01-01", + "privateEndpointWrapper": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by admin.", + "actionsRequired": "" + } + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by admin.", + "actionsRequired": "" + } + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + }, + "body": { + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by admin.", + "actionsRequired": "" + } + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ApproveRejectSitePrivateEndpointConnectionSlot.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ApproveRejectSitePrivateEndpointConnectionSlot.json new file mode 100644 index 000000000000..313456013134 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ApproveRejectSitePrivateEndpointConnectionSlot.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testSite", + "slot": "stage", + "privateEndpointConnectionName": "connection", + "api-version": "2021-01-01", + "privateEndpointWrapper": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by admin.", + "actionsRequired": "" + } + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by admin.", + "actionsRequired": "" + } + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + }, + "body": { + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by admin.", + "actionsRequired": "" + } + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/CreateOrUpdateAppServicePlan.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/CreateOrUpdateAppServicePlan.json new file mode 100644 index 000000000000..04fc5b46841e --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/CreateOrUpdateAppServicePlan.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "name": "testsf6141", + "api-version": "2021-01-01", + "appServicePlan": { + "kind": "app", + "location": "East US", + "properties": {}, + "sku": { + "name": "P1", + "tier": "Premium", + "size": "P1", + "family": "P", + "capacity": 1 + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/serverfarms/testsf6141", + "name": "testsf6141", + "type": "Microsoft.Web/serverfarms", + "kind": "app", + "location": "East US", + "properties": { + "status": "Ready", + "maximumNumberOfWorkers": 20, + "geoRegion": "East US", + "numberOfSites": 4, + "reserved": false, + "targetWorkerCount": 0, + "targetWorkerSizeId": 0, + "provisioningState": "Succeeded" + }, + "sku": { + "name": "P1", + "tier": "Premium", + "size": "P1", + "family": "P", + "capacity": 1 + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/serverfarms/testsf6141/operationresults/F0C6B8EC-0D53-432C-913B-1CD9E8CDE3A0", + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/serverfarms/testsf6141/operationresults/F0C6B8EC-0D53-432C-913B-1CD9E8CDE3A0" + }, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/serverfarms/testsf6141", + "name": "testsf6141", + "type": "Microsoft.Web/serverfarms", + "kind": "app", + "location": "East US", + "properties": { + "status": "Ready", + "maximumNumberOfWorkers": 20, + "geoRegion": "East US", + "numberOfSites": 4, + "isSpot": false, + "reserved": false, + "targetWorkerCount": 0, + "targetWorkerSizeId": 0, + "provisioningState": "Succeeded" + }, + "sku": { + "name": "P1", + "tier": "Premium", + "size": "P1", + "family": "P", + "capacity": 1 + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/CreateOrUpdateCertificate.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/CreateOrUpdateCertificate.json new file mode 100644 index 000000000000..69da30244827 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/CreateOrUpdateCertificate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "name": "testc6282", + "api-version": "2021-01-01", + "certificateEnvelope": { + "location": "East US", + "properties": { + "hostNames": [ + "ServerCert" + ], + "password": "" + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/certificates/testc6282", + "name": "testc6282", + "type": "Microsoft.Web/certificates", + "location": "East US", + "properties": { + "friendlyName": "", + "subjectName": "ServerCert", + "hostNames": [ + "ServerCert" + ], + "issuer": "CACert", + "issueDate": "2015-11-12T23:40:25+00:00", + "expirationDate": "2039-12-31T23:59:59+00:00", + "thumbprint": "FE703D7411A44163B6D32B3AD9B03E175886EBFE" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/CreateOrUpdateStaticSite.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/CreateOrUpdateStaticSite.json new file mode 100644 index 000000000000..4c1eb744e46c --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/CreateOrUpdateStaticSite.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2021-01-01", + "staticSiteEnvelope": { + "location": "West US 2", + "properties": { + "repositoryUrl": "https://github.com/username/RepoName", + "branch": "master", + "repositoryToken": "repoToken123", + "buildProperties": { + "appLocation": "app", + "apiLocation": "api", + "appArtifactLocation": "build" + } + }, + "sku": { + "name": "Basic", + "tier": "Basic" + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Web/staticSites/testStaticSite0", + "name": "testStaticSite0", + "type": "Microsoft.Web/staticSites", + "location": "West US 2", + "properties": { + "defaultHostname": "happy-sea-15afae3e.azurestaticwebsites.net", + "repositoryUrl": "https://github.com/username/RepoName", + "branch": "demo", + "customDomains": [], + "privateEndpointConnections": [], + "contentDistributionEndpoint": "", + "keyVaultReferenceIdentity": "SystemAssigned", + "userProvidedFunctionApps": [], + "stagingEnvironmentPolicy": "Enabled", + "allowConfigFileUpdates": true + }, + "sku": { + "name": "Basic", + "tier": "Basic" + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + }, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Web/staticSites/testStaticSite0", + "name": "testStaticSite0", + "type": "Microsoft.Web/staticSites", + "location": "West US 2", + "properties": { + "defaultHostname": "happy-sea-15afae3e.azurestaticwebsites.net", + "repositoryUrl": "https://github.com/username/RepoName", + "branch": "demo", + "customDomains": [], + "privateEndpointConnections": [], + "contentDistributionEndpoint": "", + "keyVaultReferenceIdentity": "SystemAssigned", + "userProvidedFunctionApps": [], + "stagingEnvironmentPolicy": "Enabled", + "allowConfigFileUpdates": true + }, + "sku": { + "name": "Basic", + "tier": "Basic" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/CreateOrUpdateStaticSiteAppSettings.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/CreateOrUpdateStaticSiteAppSettings.json new file mode 100644 index 000000000000..f7b851b9fa9e --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/CreateOrUpdateStaticSiteAppSettings.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2021-01-01", + "appSettings": { + "properties": { + "setting1": "someval", + "setting2": "someval2" + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "setting1": "someval", + "setting2": "someval2" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/CreateOrUpdateStaticSiteBuildAppSettings.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/CreateOrUpdateStaticSiteBuildAppSettings.json new file mode 100644 index 000000000000..899b053225d0 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/CreateOrUpdateStaticSiteBuildAppSettings.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "environmentName": "12", + "api-version": "2021-01-01", + "appSettings": { + "properties": { + "setting1": "someval", + "setting2": "someval2" + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "setting1": "someval", + "setting2": "someval2" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/CreateOrUpdateStaticSiteBuildFunctionAppSettings.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/CreateOrUpdateStaticSiteBuildFunctionAppSettings.json new file mode 100644 index 000000000000..899b053225d0 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/CreateOrUpdateStaticSiteBuildFunctionAppSettings.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "environmentName": "12", + "api-version": "2021-01-01", + "appSettings": { + "properties": { + "setting1": "someval", + "setting2": "someval2" + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "setting1": "someval", + "setting2": "someval2" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/CreateOrUpdateStaticSiteCustomDomain.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/CreateOrUpdateStaticSiteCustomDomain.json new file mode 100644 index 000000000000..ba90580f3678 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/CreateOrUpdateStaticSiteCustomDomain.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "domainName": "custom.domain.net", + "api-version": "2021-01-01", + "staticSiteCustomDomainRequestPropertiesEnvelope": { + "properties": {} + } + }, + "responses": { + "200": { + "body": { + "properties": { + "domainName": "custom.domain.net", + "createdOn": "2020-03-04T17:33:11.641Z" + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + }, + "body": { + "properties": { + "domainName": "custom.domain.net", + "createdOn": "2020-03-04T17:33:11.641Z" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/CreateOrUpdateStaticSiteFunctionAppSettings.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/CreateOrUpdateStaticSiteFunctionAppSettings.json new file mode 100644 index 000000000000..f7b851b9fa9e --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/CreateOrUpdateStaticSiteFunctionAppSettings.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2021-01-01", + "appSettings": { + "properties": { + "setting1": "someval", + "setting2": "someval2" + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "setting1": "someval", + "setting2": "someval2" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/CreateUserRolesInvitationLink.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/CreateUserRolesInvitationLink.json new file mode 100644 index 000000000000..84db4ac8f1a5 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/CreateUserRolesInvitationLink.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2021-01-01", + "staticSiteUserRolesInvitationEnvelope": { + "properties": { + "domain": "happy-sea-15afae3e.azurestaticwebsites.net", + "provider": "aad", + "userDetails": "username", + "roles": "admin,contributor", + "numHoursToExpiration": 1 + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "invitationUrl": "https://happy-sea-15afae3e.azurestaticwebsites.net?invite=asdf", + "expiresOn": "2020-02-28T16:53:56.211Z" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/DeleteAppServicePlan.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/DeleteAppServicePlan.json new file mode 100644 index 000000000000..6a375cd76b36 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/DeleteAppServicePlan.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "name": "testsf6141", + "api-version": "2021-01-01" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/DeleteCertificate.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/DeleteCertificate.json new file mode 100644 index 000000000000..2fd96c413fbb --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/DeleteCertificate.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "name": "testc6282", + "api-version": "2021-01-01" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/DeleteSitePrivateEndpointConnection.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/DeleteSitePrivateEndpointConnection.json new file mode 100644 index 000000000000..6abdf8bffa1f --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/DeleteSitePrivateEndpointConnection.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testSite", + "privateEndpointConnectionName": "connection", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": {} + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + }, + "body": {} + }, + "204": { + "body": {} + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/DeleteSitePrivateEndpointConnectionSlot.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/DeleteSitePrivateEndpointConnectionSlot.json new file mode 100644 index 000000000000..baf2133d4003 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/DeleteSitePrivateEndpointConnectionSlot.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testSite", + "slot": "stage", + "privateEndpointConnectionName": "connection", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": {} + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + }, + "body": {} + }, + "204": { + "body": {} + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/DeleteStaticSite.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/DeleteStaticSite.json new file mode 100644 index 000000000000..d3cf85288f79 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/DeleteStaticSite.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2021-01-01" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/DeleteStaticSiteBuild.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/DeleteStaticSiteBuild.json new file mode 100644 index 000000000000..2bfd7ecd3227 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/DeleteStaticSiteBuild.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "environmentName": "12", + "api-version": "2021-01-01" + }, + "responses": { + "200": {}, + "204": {}, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/DeleteStaticSiteCustomDomain.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/DeleteStaticSiteCustomDomain.json new file mode 100644 index 000000000000..48ba942a3941 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/DeleteStaticSiteCustomDomain.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "domainName": "custom.domain.net", + "api-version": "2021-01-01" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/DeleteStaticSiteUser.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/DeleteStaticSiteUser.json new file mode 100644 index 000000000000..e6ba1163f932 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/DeleteStaticSiteUser.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "authprovider": "aad", + "userid": "1234", + "api-version": "2021-01-01" + }, + "responses": { + "200": {} + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/DetachStaticSite.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/DetachStaticSite.json new file mode 100644 index 000000000000..d3cf85288f79 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/DetachStaticSite.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2021-01-01" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/DetachUserProvidedFunctionAppFromStaticSite.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/DetachUserProvidedFunctionAppFromStaticSite.json new file mode 100644 index 000000000000..1e43bb3f0f46 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/DetachUserProvidedFunctionAppFromStaticSite.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "functionAppName": "testFunctionApp", + "api-version": "2021-01-01" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/DetachUserProvidedFunctionAppFromStaticSiteBuild.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/DetachUserProvidedFunctionAppFromStaticSiteBuild.json new file mode 100644 index 000000000000..a0bb834b424e --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/DetachUserProvidedFunctionAppFromStaticSiteBuild.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "environmentName": "12", + "functionAppName": "testFunctionApp", + "api-version": "2021-01-01" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_ExecuteSiteAnalysis.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_ExecuteSiteAnalysis.json new file mode 100644 index 000000000000..255b90da4ab2 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_ExecuteSiteAnalysis.json @@ -0,0 +1,126 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "Sample-WestUSResourceGroup", + "siteName": "SampleApp", + "slot": "Production", + "diagnosticCategory": "availability", + "analysisName": "apprestartanalyses", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/Sample-WestUSResourceGroup/providers/Microsoft.Web/sites/SampleApp/diagnostics/availability/analyses/apprestartanalyses", + "name": "apprestartanalysis", + "properties": { + "startTime": "2017-11-05T22:50:00Z", + "endTime": "2017-11-06T22:50:00Z", + "abnormalTimePeriods": [ + { + "startTime": "2017-11-05T22:50:00Z", + "endTime": "2017-11-06T22:50:00Z", + "events": [ + { + "startTime": "2017-11-06T22:21:50Z", + "endTime": "2017-11-06T22:21:48Z", + "message": "Your application process was restarted as application environment variables changed. This can most likely occur due to update in app settings or swap operation. This event occurred multiple times during the day.", + "source": null, + "priority": 0, + "metaData": [ + [ + { + "name": "feature", + "value": "auditlogs" + }, + { + "name": "displayedName", + "value": "Check Audit Logs" + } + ] + ], + "type": "ServiceIncident", + "solutions": [] + } + ], + "solutions": [] + } + ], + "payload": [ + { + "source": "workerprocessrecycle", + "metrics": [ + { + "name": "All Application Stop Events", + "unit": null, + "startTime": "2017-11-05T22:50:00Z", + "endTime": "2017-11-06T22:50:00Z", + "timeGrain": "00:05:00", + "values": [ + { + "timestamp": "2017-11-06T00:00:00Z", + "roleInstance": "RD00155D3C15BE", + "total": 2 + }, + { + "timestamp": "2017-11-06T00:00:00Z", + "total": 2, + "isAggregated": true + }, + { + "timestamp": "2017-11-06T00:10:00Z", + "roleInstance": "RD00155D3C15C1", + "total": 2 + }, + { + "timestamp": "2017-11-06T00:10:00Z", + "roleInstance": "RD00155D3BE0FB", + "total": 2 + }, + { + "timestamp": "2017-11-06T00:10:00Z", + "total": 4, + "isAggregated": true + } + ] + }, + { + "name": "User Events", + "unit": "", + "startTime": "2017-11-05T22:50:00Z", + "endTime": "2017-11-06T22:50:00Z", + "timeGrain": "00:05:00", + "values": [ + { + "timestamp": "2017-11-06T22:20:00Z", + "total": 3, + "isAggregated": true + }, + { + "timestamp": "2017-11-06T22:20:00Z", + "roleInstance": "RD00155D3C09FC", + "total": 1 + }, + { + "timestamp": "2017-11-06T22:20:00Z", + "roleInstance": "RD00155D3C2ADC", + "total": 1 + }, + { + "timestamp": "2017-11-06T22:20:00Z", + "roleInstance": "RD00155D3C214E", + "total": 1 + } + ] + } + ], + "data": [], + "detectorMetaData": null + } + ], + "nonCorrelatedDetectors": [] + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_ExecuteSiteAnalysisSlot.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_ExecuteSiteAnalysisSlot.json new file mode 100644 index 000000000000..2b27c7534115 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_ExecuteSiteAnalysisSlot.json @@ -0,0 +1,126 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "Sample-WestUSResourceGroup", + "siteName": "SampleApp", + "slot": "staging", + "diagnosticCategory": "availability", + "analysisName": "apprestartanalyses", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/Sample-WestUSResourceGroup/providers/Microsoft.Web/sites/SampleApp/slots/staging/diagnostics/availability/analyses/apprestartanalyses", + "name": "apprestartanalysis", + "properties": { + "startTime": "2017-11-05T22:50:00Z", + "endTime": "2017-11-06T22:50:00Z", + "abnormalTimePeriods": [ + { + "startTime": "2017-11-05T22:50:00Z", + "endTime": "2017-11-06T22:50:00Z", + "events": [ + { + "startTime": "2017-11-06T22:21:50Z", + "endTime": "2017-11-06T22:21:48Z", + "message": "Your application process was restarted as application environment variables changed. This can most likely occur due to update in app settings or swap operation. This event occurred multiple times during the day.", + "source": null, + "priority": 0, + "metaData": [ + [ + { + "name": "feature", + "value": "auditlogs" + }, + { + "name": "displayedName", + "value": "Check Audit Logs" + } + ] + ], + "type": "ServiceIncident", + "solutions": [] + } + ], + "solutions": [] + } + ], + "payload": [ + { + "source": "workerprocessrecycle", + "metrics": [ + { + "name": "All Application Stop Events", + "unit": null, + "startTime": "2017-11-05T22:50:00Z", + "endTime": "2017-11-06T22:50:00Z", + "timeGrain": "00:05:00", + "values": [ + { + "timestamp": "2017-11-06T00:00:00Z", + "roleInstance": "RD00155D3C15BE", + "total": 2 + }, + { + "timestamp": "2017-11-06T00:00:00Z", + "total": 2, + "isAggregated": true + }, + { + "timestamp": "2017-11-06T00:10:00Z", + "roleInstance": "RD00155D3C15C1", + "total": 2 + }, + { + "timestamp": "2017-11-06T00:10:00Z", + "roleInstance": "RD00155D3BE0FB", + "total": 2 + }, + { + "timestamp": "2017-11-06T00:10:00Z", + "total": 4, + "isAggregated": true + } + ] + }, + { + "name": "User Events", + "unit": "", + "startTime": "2017-11-05T22:50:00Z", + "endTime": "2017-11-06T22:50:00Z", + "timeGrain": "00:05:00", + "values": [ + { + "timestamp": "2017-11-06T22:20:00Z", + "total": 3, + "isAggregated": true + }, + { + "timestamp": "2017-11-06T22:20:00Z", + "roleInstance": "RD00155D3C09FC", + "total": 1 + }, + { + "timestamp": "2017-11-06T22:20:00Z", + "roleInstance": "RD00155D3C2ADC", + "total": 1 + }, + { + "timestamp": "2017-11-06T22:20:00Z", + "roleInstance": "RD00155D3C214E", + "total": 1 + } + ] + } + ], + "data": [], + "detectorMetaData": null + } + ], + "nonCorrelatedDetectors": [] + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_ExecuteSiteDetector.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_ExecuteSiteDetector.json new file mode 100644 index 000000000000..f1900daee8eb --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_ExecuteSiteDetector.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "Sample-WestUSResourceGroup", + "siteName": "SampleApp", + "slot": "Production", + "diagnosticCategory": "availability", + "detectorName": "sitecrashes", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/Sample-WestUSResourceGroup/providers/Microsoft.Web/sites/SampleApp/diagnostics/availability/detectors/sitecrashes", + "name": "sitecrashes", + "properties": { + "startTime": "2017-11-05T22:50:00Z", + "endTime": "2017-11-06T22:50:00Z", + "abnormalTimePeriods": [ + { + "startTime": "2017-11-05T22:50:00Z", + "endTime": "2017-11-06T22:50:00Z", + "solutions": [] + } + ] + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_ExecuteSiteDetectorSlot.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_ExecuteSiteDetectorSlot.json new file mode 100644 index 000000000000..efb0313f333e --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_ExecuteSiteDetectorSlot.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "Sample-WestUSResourceGroup", + "siteName": "SampleApp", + "slot": "staging", + "diagnosticCategory": "availability", + "detectorName": "sitecrashes", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/Sample-WestUSResourceGroup/providers/Microsoft.Web/sites/SampleApp/slots/staging/diagnostics/availability/detectors/sitecrashes", + "name": "sitecrashes", + "properties": { + "startTime": "2017-11-05T22:50:00Z", + "endTime": "2017-11-06T22:50:00Z", + "abnormalTimePeriods": [ + { + "startTime": "2017-11-05T22:50:00Z", + "endTime": "2017-11-06T22:50:00Z", + "solutions": [] + } + ] + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_GetHostingEnvironmentDetectorResponse.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_GetHostingEnvironmentDetectorResponse.json new file mode 100644 index 000000000000..a367a815c78c --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_GetHostingEnvironmentDetectorResponse.json @@ -0,0 +1,133 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "Sample-WestUSResourceGroup", + "name": "SampleAppServiceEnvironment", + "detectorName": "runtimeavailability", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ef90e930-9d7f-4a60-8a99-748e0eea69de/resourceGroups/Build2015DemoRG/providers/Microsoft.Web/hostingEnvironments/SampleAppServiceEnvironment/detectors/runtimeavailability", + "name": "runtimeavailability", + "properties": { + "metadata": { + "description": "This detector analyzes all the requests to all applications running on this app service environment.", + "category": "Availability and Performance" + }, + "dataset": [ + { + "table": { + "tableName": "Table_0", + "columns": [ + { + "columnName": "PreciseTimeStamp", + "dataType": "DateTime", + "columnType": "datetime" + }, + { + "columnName": "count_Http2xx", + "dataType": "Int64", + "columnType": "long" + }, + { + "columnName": "count_Http3xx", + "dataType": "Int64", + "columnType": "long" + }, + { + "columnName": "count_Http4xx", + "dataType": "Int64", + "columnType": "long" + }, + { + "columnName": "count_Http5xx", + "dataType": "Int64", + "columnType": "long" + } + ], + "rows": [ + [ + "2018-03-27T00:25:00Z", + "772705", + "0", + "0", + "0" + ], + [ + "2018-03-27T00:30:00Z", + "787069", + "0", + "0", + "0" + ], + [ + "2018-03-27T00:35:00Z", + "781627", + "0", + "1", + "0" + ], + [ + "2018-03-27T00:40:00Z", + "785017", + "0", + "0", + "0" + ], + [ + "2018-03-27T00:45:00Z", + "783518", + "0", + "0", + "0" + ], + [ + "2018-03-27T00:50:00Z", + "785783", + "0", + "0", + "0" + ], + [ + "2018-03-27T00:55:00Z", + "772874", + "0", + "0", + "0" + ], + [ + "2018-03-27T01:00:00Z", + "787162", + "0", + "0", + "0" + ], + [ + "2018-03-27T01:05:00Z", + "782036", + "0", + "0", + "0" + ], + [ + "2018-03-27T01:10:00Z", + "784642", + "0", + "0", + "0" + ] + ] + }, + "renderingProperties": { + "title": "Requests by Status Code", + "description": "This detector breaks down the number of requests that your apps on this app service environment received for each status code." + } + } + ] + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_GetSiteAnalysis.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_GetSiteAnalysis.json new file mode 100644 index 000000000000..b29a1f9c5903 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_GetSiteAnalysis.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "Sample-WestUSResourceGroup", + "siteName": "SampleApp", + "diagnosticCategory": "availability", + "analysisName": "appanalysis", + "slot": "Production", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/Sample-WestUSResourceGroup/providers/Microsoft.Web/sites/SampleApp/slots/staging/diagnostics/availability/analyses/appanalysis", + "name": "appanalysis", + "properties": { + "description": "Determine causes of availability loss as well as solutions for these problems" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_GetSiteAnalysisSlot.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_GetSiteAnalysisSlot.json new file mode 100644 index 000000000000..a5e4868c8e8c --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_GetSiteAnalysisSlot.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "Sample-WestUSResourceGroup", + "siteName": "SampleApp", + "slot": "staging", + "diagnosticCategory": "availability", + "analysisName": "appanalysis", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/Sample-WestUSResourceGroup/providers/Microsoft.Web/sites/SampleApp/slots/staging/diagnostics/availability/analyses/appanalysis", + "name": "appanalysis", + "properties": { + "description": "Determine causes of availability loss as well as solutions for these problems" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_GetSiteDetector.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_GetSiteDetector.json new file mode 100644 index 000000000000..9b9199ee5e16 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_GetSiteDetector.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "Sample-WestUSResourceGroup", + "siteName": "SampleApp", + "slot": "Production", + "diagnosticCategory": "availability", + "detectorName": "sitecrashes", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ef90e930-9d7f-4a60-8a99-748e0eea69de/resourceGroups/Build2015DemoRG/providers/Microsoft.Web/sites/BuggyBakery/diagnostics/availability/detectors/sitecrashes", + "name": "sitecrashes", + "properties": { + "displayName": "Site Crash Events", + "description": null, + "rank": 9, + "isEnabled": true + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_GetSiteDetectorResponse.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_GetSiteDetectorResponse.json new file mode 100644 index 000000000000..0d0620cb110c --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_GetSiteDetectorResponse.json @@ -0,0 +1,134 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "Sample-WestUSResourceGroup", + "siteName": "SampleApp", + "slot": "staging", + "detectorName": "runtimeavailability", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ef90e930-9d7f-4a60-8a99-748e0eea69de/resourceGroups/Build2015DemoRG/providers/Microsoft.Web/sites/BuggyBakery/detectors/runtimeavailability", + "name": "runtimeavailability", + "properties": { + "metadata": { + "description": "This detector analyzes the requests to your application.", + "category": "Availability and Performance" + }, + "dataset": [ + { + "table": { + "tableName": "Table_0", + "columns": [ + { + "columnName": "PreciseTimeStamp", + "dataType": "DateTime", + "columnType": "datetime" + }, + { + "columnName": "count_Http2xx", + "dataType": "Int64", + "columnType": "long" + }, + { + "columnName": "count_Http3xx", + "dataType": "Int64", + "columnType": "long" + }, + { + "columnName": "count_Http4xx", + "dataType": "Int64", + "columnType": "long" + }, + { + "columnName": "count_Http5xx", + "dataType": "Int64", + "columnType": "long" + } + ], + "rows": [ + [ + "2018-03-27T00:25:00Z", + "772705", + "0", + "0", + "0" + ], + [ + "2018-03-27T00:30:00Z", + "787069", + "0", + "0", + "0" + ], + [ + "2018-03-27T00:35:00Z", + "781627", + "0", + "1", + "0" + ], + [ + "2018-03-27T00:40:00Z", + "785017", + "0", + "0", + "0" + ], + [ + "2018-03-27T00:45:00Z", + "783518", + "0", + "0", + "0" + ], + [ + "2018-03-27T00:50:00Z", + "785783", + "0", + "0", + "0" + ], + [ + "2018-03-27T00:55:00Z", + "772874", + "0", + "0", + "0" + ], + [ + "2018-03-27T01:00:00Z", + "787162", + "0", + "0", + "0" + ], + [ + "2018-03-27T01:05:00Z", + "782036", + "0", + "0", + "0" + ], + [ + "2018-03-27T01:10:00Z", + "784642", + "0", + "0", + "0" + ] + ] + }, + "renderingProperties": { + "title": "Requests by Status Code", + "description": "This detector breaks down the number of requests that your app received for each status code." + } + } + ] + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_GetSiteDetectorResponseSlot.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_GetSiteDetectorResponseSlot.json new file mode 100644 index 000000000000..93163b424ab0 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_GetSiteDetectorResponseSlot.json @@ -0,0 +1,134 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "Sample-WestUSResourceGroup", + "siteName": "SampleApp", + "slot": "staging", + "detectorName": "runtimeavailability", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ef90e930-9d7f-4a60-8a99-748e0eea69de/resourceGroups/Build2015DemoRG/providers/Microsoft.Web/sites/BuggyBakery/slots/staging/detectors/runtimeavailability", + "name": "runtimeavailability", + "properties": { + "metadata": { + "description": "This detector analyzes the requests to your application.", + "category": "Availability and Performance" + }, + "dataset": [ + { + "table": { + "tableName": "Table_0", + "columns": [ + { + "columnName": "PreciseTimeStamp", + "dataType": "DateTime", + "columnType": "datetime" + }, + { + "columnName": "count_Http2xx", + "dataType": "Int64", + "columnType": "long" + }, + { + "columnName": "count_Http3xx", + "dataType": "Int64", + "columnType": "long" + }, + { + "columnName": "count_Http4xx", + "dataType": "Int64", + "columnType": "long" + }, + { + "columnName": "count_Http5xx", + "dataType": "Int64", + "columnType": "long" + } + ], + "rows": [ + [ + "2018-03-27T00:25:00Z", + "772705", + "0", + "0", + "0" + ], + [ + "2018-03-27T00:30:00Z", + "787069", + "0", + "0", + "0" + ], + [ + "2018-03-27T00:35:00Z", + "781627", + "0", + "1", + "0" + ], + [ + "2018-03-27T00:40:00Z", + "785017", + "0", + "0", + "0" + ], + [ + "2018-03-27T00:45:00Z", + "783518", + "0", + "0", + "0" + ], + [ + "2018-03-27T00:50:00Z", + "785783", + "0", + "0", + "0" + ], + [ + "2018-03-27T00:55:00Z", + "772874", + "0", + "0", + "0" + ], + [ + "2018-03-27T01:00:00Z", + "787162", + "0", + "0", + "0" + ], + [ + "2018-03-27T01:05:00Z", + "782036", + "0", + "0", + "0" + ], + [ + "2018-03-27T01:10:00Z", + "784642", + "0", + "0", + "0" + ] + ] + }, + "renderingProperties": { + "title": "Requests by Status Code", + "description": "This detector breaks down the number of requests that your app received for each status code." + } + } + ] + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_GetSiteDetectorSlot.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_GetSiteDetectorSlot.json new file mode 100644 index 000000000000..3ba86eb136d5 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_GetSiteDetectorSlot.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "Sample-WestUSResourceGroup", + "siteName": "SampleApp", + "slot": "staging", + "diagnosticCategory": "availability", + "detectorName": "sitecrashes", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ef90e930-9d7f-4a60-8a99-748e0eea69de/resourceGroups/Build2015DemoRG/providers/Microsoft.Web/sites/BuggyBakery/slots/staging/diagnostics/availability/detectors/sitecrashes", + "name": "sitecrashes", + "properties": { + "displayName": "Site Crash Events", + "description": null, + "rank": 9, + "isEnabled": true + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_GetSiteDiagnosticCategory.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_GetSiteDiagnosticCategory.json new file mode 100644 index 000000000000..34d4dc1a6c7c --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_GetSiteDiagnosticCategory.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "Sample-WestUSResourceGroup", + "siteName": "SampleApp", + "slot": "Production", + "diagnosticCategory": "availability", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/Sample-WestUSResourceGroup/providers/Microsoft.Web/sites/SampleApp/diagnostics/availability", + "name": "availability", + "properties": { + "description": "Availability and Perfomance Diagnostics" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_GetSiteDiagnosticCategorySlot.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_GetSiteDiagnosticCategorySlot.json new file mode 100644 index 000000000000..583daffaf059 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_GetSiteDiagnosticCategorySlot.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "Sample-WestUSResourceGroup", + "siteName": "SampleApp", + "slot": "staging", + "diagnosticCategory": "availability", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/Sample-WestUSResourceGroup/providers/Microsoft.Web/sites/SampleApp/diagnostics/availability", + "name": "availability", + "properties": { + "description": "Availability and Perfomance Diagnostics" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_ListHostingEnvironmentDetectorResponses.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_ListHostingEnvironmentDetectorResponses.json new file mode 100644 index 000000000000..ed7069552372 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_ListHostingEnvironmentDetectorResponses.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "Sample-WestUSResourceGroup", + "name": "SampleAppServiceEnvironment", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/Sample-WestUSResourceGroup/providers/Microsoft.Web/hostingEnvironments/SampleAppServiceEnvironment/detectors/runtimeavailability", + "name": "runtimeavailability", + "properties": { + "metadata": { + "description": "This detector analyzes all the requests to all applications running on this app service environment.", + "category": "Availability and Performance" + }, + "dataset": [] + } + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_ListSiteAnalyses.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_ListSiteAnalyses.json new file mode 100644 index 000000000000..c4c493582063 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_ListSiteAnalyses.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "Sample-WestUSResourceGroup", + "siteName": "SampleApp", + "slot": "Production", + "diagnosticCategory": "availability", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/Sample-WestUSResourceGroup/providers/Microsoft.Web/sites/SampleApp/diagnostics/availability/analyses/appanalysis", + "name": "appanalysis", + "properties": { + "description": "Determine causes of availability loss as well as solutions for these problems" + } + }, + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/Sample-WestUSResourceGroup/providers/Microsoft.Web/sites/SampleApp/diagnostics/availability/analyses/apprestartanalyses", + "name": "apprestartanalysis", + "properties": { + "description": "Find the reasons that your app restarted" + } + }, + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/Sample-WestUSResourceGroup/providers/Microsoft.Web/sites/SampleApp/diagnostics/availability/analyses/memoryanalysis", + "name": "memoryanalysis", + "properties": { + "description": "Detect issues with memory as well as suggest ways to troubleshoot memory problems" + } + }, + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/Sample-WestUSResourceGroup/providers/Microsoft.Web/sites/SampleApp/diagnostics/availability/analyses/tcpconnectionsanalysis", + "name": "tcpconnectionsanalysis", + "properties": { + "description": "Analyze port usage and find out if a high number of connections is causing problems for your web app" + } + }, + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/Sample-WestUSResourceGroup/providers/Microsoft.Web/sites/SampleApp/diagnostics/availability/analyses/perfanalysis", + "name": "perfanalysis", + "properties": { + "description": "Determine causes of performance degredation as well as solutions for these problems" + } + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_ListSiteAnalysesSlot.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_ListSiteAnalysesSlot.json new file mode 100644 index 000000000000..80f97c007409 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_ListSiteAnalysesSlot.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "Sample-WestUSResourceGroup", + "siteName": "SampleApp", + "slot": "staging", + "diagnosticCategory": "availability", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/Sample-WestUSResourceGroup/providers/Microsoft.Web/sites/SampleApp/slots/staging/diagnostics/availability/analyses/appanalysis", + "name": "appanalysis", + "properties": { + "description": "Determine causes of availability loss as well as solutions for these problems" + } + }, + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/Sample-WestUSResourceGroup/providers/Microsoft.Web/sites/SampleApp/slots/staging/diagnostics/availability/analyses/apprestartanalyses", + "name": "apprestartanalysis", + "properties": { + "description": "Find the reasons that your app restarted" + } + }, + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/Sample-WestUSResourceGroup/providers/Microsoft.Web/sites/SampleApp/slots/staging/diagnostics/availability/analyses/memoryanalysis", + "name": "memoryanalysis", + "properties": { + "description": "Detect issues with memory as well as suggest ways to troubleshoot memory problems" + } + }, + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/Sample-WestUSResourceGroup/providers/Microsoft.Web/sites/SampleApp/slots/staging/diagnostics/availability/analyses/tcpconnectionsanalysis", + "name": "tcpconnectionsanalysis", + "properties": { + "description": "Analyze port usage and find out if a high number of connections is causing problems for your web app" + } + }, + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/Sample-WestUSResourceGroup/providers/Microsoft.Web/sites/SampleApp/slots/staging/diagnostics/availability/analyses/perfanalysis", + "name": "perfanalysis", + "properties": { + "description": "Determine causes of performance degredation as well as solutions for these problems" + } + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_ListSiteDetectorResponses.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_ListSiteDetectorResponses.json new file mode 100644 index 000000000000..6f712ac76d25 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_ListSiteDetectorResponses.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "Sample-WestUSResourceGroup", + "siteName": "SampleApp", + "slot": "staging", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/Sample-WestUSResourceGroup/providers/Microsoft.Web/sites/SampleApp/detectors/runtimeavailability", + "name": "runtimeavailability", + "properties": { + "metadata": { + "description": "This detector analyzes the requests to your application.", + "category": "Availability and Performance" + }, + "dataset": [] + } + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_ListSiteDetectorResponsesSlot.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_ListSiteDetectorResponsesSlot.json new file mode 100644 index 000000000000..9e8399bc9316 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_ListSiteDetectorResponsesSlot.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "Sample-WestUSResourceGroup", + "siteName": "SampleApp", + "slot": "staging", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/Sample-WestUSResourceGroup/providers/Microsoft.Web/sites/SampleApp/slots/staging/detectors/runtimeavailability", + "name": "runtimeavailability", + "properties": { + "metadata": { + "description": "This detector analyzes the requests to your application.", + "category": "Availability and Performance" + }, + "dataset": [] + } + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_ListSiteDetectors.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_ListSiteDetectors.json new file mode 100644 index 000000000000..9ec32c864740 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_ListSiteDetectors.json @@ -0,0 +1,198 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "Sample-WestUSResourceGroup", + "siteName": "SampleApp", + "slot": "Production", + "diagnosticCategory": "availability", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/ef90e930-9d7f-4a60-8a99-748e0eea69de/resourceGroups/Build2015DemoRG/providers/Microsoft.Web/sites/BuggyBakery/diagnostics/availability/detectors/servicehealth", + "name": "servicehealth", + "properties": { + "displayName": "Service Health", + "description": null, + "rank": 1, + "isEnabled": true + } + }, + { + "id": "/subscriptions/ef90e930-9d7f-4a60-8a99-748e0eea69de/resourceGroups/Build2015DemoRG/providers/Microsoft.Web/sites/BuggyBakery/diagnostics/availability/detectors/siteswap", + "name": "siteswap", + "properties": { + "displayName": "Site Swap Operations", + "description": null, + "rank": 8, + "isEnabled": true + } + }, + { + "id": "/subscriptions/ef90e930-9d7f-4a60-8a99-748e0eea69de/resourceGroups/Build2015DemoRG/providers/Microsoft.Web/sites/BuggyBakery/diagnostics/availability/detectors/sitecrashes", + "name": "sitecrashes", + "properties": { + "displayName": "Site Crash Events", + "description": null, + "rank": 9, + "isEnabled": true + } + }, + { + "id": "/subscriptions/ef90e930-9d7f-4a60-8a99-748e0eea69de/resourceGroups/Build2015DemoRG/providers/Microsoft.Web/sites/BuggyBakery/diagnostics/availability/detectors/deployment", + "name": "deployment", + "properties": { + "displayName": "Site Deployments", + "description": null, + "rank": 7, + "isEnabled": true + } + }, + { + "id": "/subscriptions/ef90e930-9d7f-4a60-8a99-748e0eea69de/resourceGroups/Build2015DemoRG/providers/Microsoft.Web/sites/BuggyBakery/diagnostics/availability/detectors/sitecpuanalysis", + "name": "sitecpuanalysis", + "properties": { + "displayName": "CPU Analysis", + "description": null, + "rank": 3, + "isEnabled": true + } + }, + { + "id": "/subscriptions/ef90e930-9d7f-4a60-8a99-748e0eea69de/resourceGroups/Build2015DemoRG/providers/Microsoft.Web/sites/BuggyBakery/diagnostics/availability/detectors/sitememoryanalysis", + "name": "sitememoryanalysis", + "properties": { + "displayName": "Physical Memory Analysis", + "description": null, + "rank": 3, + "isEnabled": true + } + }, + { + "id": "/subscriptions/ef90e930-9d7f-4a60-8a99-748e0eea69de/resourceGroups/Build2015DemoRG/providers/Microsoft.Web/sites/BuggyBakery/diagnostics/availability/detectors/committedmemoryusage", + "name": "committedmemoryusage", + "properties": { + "displayName": "Committed Memory Usage", + "description": null, + "rank": 7, + "isEnabled": true + } + }, + { + "id": "/subscriptions/ef90e930-9d7f-4a60-8a99-748e0eea69de/resourceGroups/Build2015DemoRG/providers/Microsoft.Web/sites/BuggyBakery/diagnostics/availability/detectors/pagefileoperations", + "name": "pagefileoperations", + "properties": { + "displayName": "Page File Operations", + "description": null, + "rank": 3, + "isEnabled": true + } + }, + { + "id": "/subscriptions/ef90e930-9d7f-4a60-8a99-748e0eea69de/resourceGroups/Build2015DemoRG/providers/Microsoft.Web/sites/BuggyBakery/diagnostics/availability/detectors/siterestartuserinitiated", + "name": "siterestartuserinitiated", + "properties": { + "displayName": "User Initiated Site Restarts", + "description": null, + "rank": 14, + "isEnabled": true + } + }, + { + "id": "/subscriptions/ef90e930-9d7f-4a60-8a99-748e0eea69de/resourceGroups/Build2015DemoRG/providers/Microsoft.Web/sites/BuggyBakery/diagnostics/availability/detectors/siterestartsettingupdate", + "name": "siterestartsettingupdate", + "properties": { + "displayName": "Config Update Site Restarts", + "description": null, + "rank": 12, + "isEnabled": true + } + }, + { + "id": "/subscriptions/ef90e930-9d7f-4a60-8a99-748e0eea69de/resourceGroups/Build2015DemoRG/providers/Microsoft.Web/sites/BuggyBakery/diagnostics/availability/detectors/frebanalysis", + "name": "frebanalysis", + "properties": { + "displayName": "Freb Logs Analysis", + "description": null, + "rank": 6, + "isEnabled": true + } + }, + { + "id": "/subscriptions/ef90e930-9d7f-4a60-8a99-748e0eea69de/resourceGroups/Build2015DemoRG/providers/Microsoft.Web/sites/BuggyBakery/diagnostics/availability/detectors/workeravailability", + "name": "workeravailability", + "properties": { + "displayName": "Worker Availability", + "description": null, + "rank": 11, + "isEnabled": true + } + }, + { + "id": "/subscriptions/ef90e930-9d7f-4a60-8a99-748e0eea69de/resourceGroups/Build2015DemoRG/providers/Microsoft.Web/sites/BuggyBakery/diagnostics/availability/detectors/sitelatency", + "name": "sitelatency", + "properties": { + "displayName": "Site Latency", + "description": null, + "rank": 1005, + "isEnabled": false + } + }, + { + "id": "/subscriptions/ef90e930-9d7f-4a60-8a99-748e0eea69de/resourceGroups/Build2015DemoRG/providers/Microsoft.Web/sites/BuggyBakery/diagnostics/availability/detectors/threadcount", + "name": "threadcount", + "properties": { + "displayName": "Thread Count", + "description": null, + "rank": 23, + "isEnabled": true + } + }, + { + "id": "/subscriptions/ef90e930-9d7f-4a60-8a99-748e0eea69de/resourceGroups/Build2015DemoRG/providers/Microsoft.Web/sites/BuggyBakery/diagnostics/availability/detectors/failedrequestsperuri", + "name": "failedrequestsperuri", + "properties": { + "displayName": "Failed Requests Per URI", + "description": null, + "rank": 998, + "isEnabled": true + } + }, + { + "id": "/subscriptions/ef90e930-9d7f-4a60-8a99-748e0eea69de/resourceGroups/Build2015DemoRG/providers/Microsoft.Web/sites/BuggyBakery/diagnostics/availability/detectors/autoheal", + "name": "autoheal", + "properties": { + "displayName": "AutoHeal", + "description": null, + "rank": 21, + "isEnabled": true + } + }, + { + "id": "/subscriptions/ef90e930-9d7f-4a60-8a99-748e0eea69de/resourceGroups/Build2015DemoRG/providers/Microsoft.Web/sites/BuggyBakery/diagnostics/availability/detectors/loganalyzer", + "name": "loganalyzer", + "properties": { + "displayName": "PHP Log Analyzer", + "description": null, + "rank": 26, + "isEnabled": true + } + }, + { + "id": "/subscriptions/ef90e930-9d7f-4a60-8a99-748e0eea69de/resourceGroups/Build2015DemoRG/providers/Microsoft.Web/sites/BuggyBakery/diagnostics/availability/detectors/aspnetcore", + "name": "aspnetcore", + "properties": { + "displayName": "ASP.NET Core", + "description": null, + "rank": 5, + "isEnabled": true + } + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_ListSiteDetectorsSlot.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_ListSiteDetectorsSlot.json new file mode 100644 index 000000000000..901487fc057d --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_ListSiteDetectorsSlot.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "Sample-WestUSResourceGroup", + "siteName": "SampleApp", + "slot": "staging", + "diagnosticCategory": "availability", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/ef90e930-9d7f-4a60-8a99-748e0eea69de/resourceGroups/Build2015DemoRG/providers/Microsoft.Web/sites/BuggyBakery/slots/staging/diagnostics/availability/detectors/servicehealth", + "name": "servicehealth", + "properties": { + "displayName": "Service Health", + "description": null, + "rank": 1, + "isEnabled": true + } + }, + { + "id": "/subscriptions/ef90e930-9d7f-4a60-8a99-748e0eea69de/resourceGroups/Build2015DemoRG/providers/Microsoft.Web/sites/BuggyBakery/slots/staging/diagnostics/availability/detectors/siteswap", + "name": "siteswap", + "properties": { + "displayName": "Site Swap Operations", + "description": null, + "rank": 8, + "isEnabled": true + } + }, + { + "id": "/subscriptions/ef90e930-9d7f-4a60-8a99-748e0eea69de/resourceGroups/Build2015DemoRG/providers/Microsoft.Web/sites/BuggyBakery/slots/staging/diagnostics/availability/detectors/sitecrashes", + "name": "sitecrashes", + "properties": { + "displayName": "Site Crash Events", + "description": null, + "rank": 9, + "isEnabled": true + } + }, + { + "id": "/subscriptions/ef90e930-9d7f-4a60-8a99-748e0eea69de/resourceGroups/Build2015DemoRG/providers/Microsoft.Web/sites/BuggyBakery/slots/staging/diagnostics/availability/detectors/deployment", + "name": "deployment", + "properties": { + "displayName": "Site Deployments", + "description": null, + "rank": 7, + "isEnabled": true + } + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_ListSiteDiagnosticCategories.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_ListSiteDiagnosticCategories.json new file mode 100644 index 000000000000..96179a85e26d --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_ListSiteDiagnosticCategories.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "Sample-WestUSResourceGroup", + "siteName": "SampleApp", + "slot": "Production", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/Sample-WestUSResourceGroup/providers/Microsoft.Web/sites/SampleApp/diagnostics/availability", + "name": "availability", + "properties": { + "description": "Availability and Perfomance Diagnostics" + } + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_ListSiteDiagnosticCategoriesSlot.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_ListSiteDiagnosticCategoriesSlot.json new file mode 100644 index 000000000000..c9c2856fa9ed --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/Diagnostics_ListSiteDiagnosticCategoriesSlot.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "Sample-WestUSResourceGroup", + "siteName": "SampleApp", + "slot": "staging", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/Sample-WestUSResourceGroup/providers/Microsoft.Web/sites/SampleApp/slots/staging/diagnostics/availability", + "name": "availability", + "properties": { + "description": "Availability and Perfomance Diagnostics" + } + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GenerateGithubAccessTokenForAppserviceCLIAsync.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GenerateGithubAccessTokenForAppserviceCLIAsync.json new file mode 100644 index 000000000000..d7dc20c4fedd --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GenerateGithubAccessTokenForAppserviceCLIAsync.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "api-version": "2021-01-01", + "request": { + "code": "somecode", + "state": "somestate" + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "accessToken": "githubaccesstoken", + "scope": "repo", + "tokenType": "bearer", + "gotToken": false, + "errorMessage": "The code passed is incorrect or expired." + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GenerateStaticSiteWorkflowPreview.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GenerateStaticSiteWorkflowPreview.json new file mode 100644 index 000000000000..9813a2421659 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GenerateStaticSiteWorkflowPreview.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "location": "West US 2", + "api-version": "2021-01-01", + "staticSitesWorkflowPreviewRequest": { + "properties": { + "repositoryUrl": "https://github.com/username/RepoName", + "branch": "master", + "buildProperties": { + "appLocation": "app", + "apiLocation": "api", + "appArtifactLocation": "build" + } + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "path": ".github/workflows/azure-static-web-apps-.yml", + "contents": "base64encodedworkflowcontentspreview" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetAllStaticSites.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetAllStaticSites.json new file mode 100644 index 000000000000..cba36dbd4a32 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetAllStaticSites.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Web/staticSites/testStaticSite0", + "name": "testStaticSite0", + "type": "Microsoft.Web/staticSites", + "location": "West US 2", + "properties": { + "defaultHostname": "happy-sea-15afae3e.azurestaticwebsites.net", + "repositoryUrl": "https://github.com/username/repo", + "branch": "demo", + "customDomains": [], + "privateEndpointConnections": [], + "contentDistributionEndpoint": "", + "keyVaultReferenceIdentity": "SystemAssigned", + "userProvidedFunctionApps": [], + "stagingEnvironmentPolicy": "Enabled", + "allowConfigFileUpdates": true + }, + "sku": { + "name": "Standard", + "tier": "Standard" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetAppServicePlan.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetAppServicePlan.json new file mode 100644 index 000000000000..55064f4432a1 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetAppServicePlan.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "name": "testsf6141", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/serverfarms/testsf6141", + "name": "testsf6141", + "type": "Microsoft.Web/serverfarms", + "kind": "app", + "location": "East US", + "properties": { + "status": "Ready", + "maximumNumberOfWorkers": 20, + "geoRegion": "East US", + "numberOfSites": 4, + "isSpot": false, + "reserved": false, + "targetWorkerCount": 0, + "targetWorkerSizeId": 0, + "provisioningState": "Succeeded" + }, + "sku": { + "name": "P1", + "tier": "Premium", + "size": "P1", + "family": "P", + "capacity": 1 + } + } + }, + "404": {} + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetCertificate.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetCertificate.json new file mode 100644 index 000000000000..34ad5364c2a8 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetCertificate.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "name": "testc6282", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/certificates/testc6282", + "name": "testc6282", + "type": "Microsoft.Web/certificates", + "location": "East US", + "properties": { + "friendlyName": "", + "subjectName": "ServerCert", + "hostNames": [ + "ServerCert" + ], + "issuer": "CACert", + "issueDate": "2015-11-12T23:40:25+00:00", + "expirationDate": "2039-12-31T23:59:59+00:00", + "thumbprint": "FE703D7411A44163B6D32B3AD9B03E175886EBFE" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetDeletedWebApp.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetDeletedWebApp.json new file mode 100644 index 000000000000..5840239819ec --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetDeletedWebApp.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "deletedSiteId": "9", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "name": "wussite6", + "type": "Microsoft.Web/deletedSites", + "properties": { + "deletedSiteId": 9, + "deletedTimestamp": "2019-05-09T22:29:05.1337007", + "subscription": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroup": "rg1", + "deletedSiteName": "wussite6", + "slot": "Production", + "kind": "app", + "geoRegionName": "West US 2" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetDeletedWebAppByLocation.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetDeletedWebAppByLocation.json new file mode 100644 index 000000000000..f28e55a0f80f --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetDeletedWebAppByLocation.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "location": "West US 2", + "deletedSiteId": "9", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "name": "wussite6", + "type": "Microsoft.Web/locations/deletedSites", + "properties": { + "deletedSiteId": 9, + "deletedTimestamp": "2019-05-09T22:29:05.1337007", + "subscription": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroup": "rg1", + "deletedSiteName": "wussite6", + "slot": "Production", + "kind": "app", + "geoRegionName": "West US 2" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetDeletedWebAppSnapshots.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetDeletedWebAppSnapshots.json new file mode 100644 index 000000000000..27e53eda9bcf --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetDeletedWebAppSnapshots.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "deletedSiteId": "9", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": [ + { + "name": "wussite6", + "type": "Microsoft.Web/locations/deletedSites", + "properties": { + "time": "2019-05-09T22:29:05.1337007" + } + } + ] + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetFunctionAppStacks.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetFunctionAppStacks.json new file mode 100644 index 000000000000..87c17e1b1359 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetFunctionAppStacks.json @@ -0,0 +1,779 @@ +{ + "parameters": { + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/providers/Microsoft.Web/functionAppStacks/dotnet", + "name": "dotnet", + "type": "Microsoft.Web/functionAppStacks", + "properties": { + "displayText": ".NET", + "value": "dotnet", + "preferredOs": "Windows", + "majorVersions": [ + { + "displayText": ".NET Core 3", + "value": "3", + "minorVersions": [ + { + "displayText": ".NET Core 3.1", + "value": "3.1", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "3.1", + "appInsightsSettings": { + "isSupported": true + }, + "remoteDebuggingSupported": false, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.1.301" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "dotnet" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": true + }, + "supportedFunctionsExtensionVersions": [ + "~3" + ] + }, + "linuxRuntimeSettings": { + "runtimeVersion": "dotnet|3.1", + "appInsightsSettings": { + "isSupported": true + }, + "remoteDebuggingSupported": false, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.1.301" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "dotnet" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": false, + "linuxFxVersion": "dotnet|3.1" + }, + "supportedFunctionsExtensionVersions": [ + "~3" + ] + } + } + } + ] + }, + { + "displayText": ".NET Core 2", + "value": "2", + "minorVersions": [ + { + "displayText": ".NET Core 2.2", + "value": "2.2", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "2.2", + "appInsightsSettings": { + "isSupported": true + }, + "remoteDebuggingSupported": false, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "2.2.207" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "dotnet" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": true + }, + "supportedFunctionsExtensionVersions": [ + "~2" + ] + }, + "linuxRuntimeSettings": { + "runtimeVersion": "dotnet|2.2", + "appInsightsSettings": { + "isSupported": true + }, + "remoteDebuggingSupported": false, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "2.2.207" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "dotnet" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": false, + "linuxFxVersion": "dotnet|2.2" + }, + "supportedFunctionsExtensionVersions": [ + "~2" + ] + } + } + } + ] + }, + { + "displayText": ".NET Framework 4", + "value": "2", + "minorVersions": [ + { + "displayText": ".NET Framework 4.7", + "value": "4.7", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "4.7", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": false + }, + "appSettingsDictionary": {}, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": true + }, + "supportedFunctionsExtensionVersions": [ + "~1" + ] + } + } + } + ] + } + ] + } + }, + { + "id": "/providers/Microsoft.Web/functionAppStacks/node", + "name": "node", + "type": "Microsoft.Web/functionAppStacks", + "properties": { + "displayText": "Node.js", + "value": "node", + "preferredOs": "Windows", + "majorVersions": [ + { + "displayText": "Node.js 14", + "value": "14", + "minorVersions": [ + { + "displayText": "Node.js 14 LTS", + "value": "14 LTS", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "~14", + "isPreview": true, + "isHidden": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "14.x" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "node", + "WEBSITE_NODE_DEFAULT_VERSION": "~14" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": true + }, + "supportedFunctionsExtensionVersions": [ + "~3" + ] + }, + "linuxRuntimeSettings": { + "runtimeVersion": "Node|14", + "isPreview": true, + "isHidden": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "14.x" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "node" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": false, + "linuxFxVersion": "Node|14" + }, + "supportedFunctionsExtensionVersions": [ + "~3" + ] + } + } + } + ] + }, + { + "displayText": "Node.js 12", + "value": "12", + "minorVersions": [ + { + "displayText": "Node.js 12 LTS", + "value": "12 LTS", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "~12", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "12.x" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "node", + "WEBSITE_NODE_DEFAULT_VERSION": "~12" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": true + }, + "supportedFunctionsExtensionVersions": [ + "~3" + ] + }, + "linuxRuntimeSettings": { + "runtimeVersion": "Node|12", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "12.x" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "node" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": false, + "linuxFxVersion": "Node|12" + }, + "supportedFunctionsExtensionVersions": [ + "~3" + ] + } + } + } + ] + }, + { + "displayText": "Node.js 10", + "value": "10", + "minorVersions": [ + { + "displayText": "Node.js 10 LTS", + "value": "10 LTS", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "~10", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "10.x" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "node", + "WEBSITE_NODE_DEFAULT_VERSION": "~10" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": true + }, + "supportedFunctionsExtensionVersions": [ + "~2", + "~3" + ] + }, + "linuxRuntimeSettings": { + "runtimeVersion": "Node|10", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "10.x" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "node" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": false, + "linuxFxVersion": "Node|10" + }, + "supportedFunctionsExtensionVersions": [ + "~2", + "~3" + ] + } + } + } + ] + }, + { + "displayText": "Node.js 8", + "value": "8", + "minorVersions": [ + { + "displayText": "Node.js 8 LTS", + "value": "8 LTS", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "~8", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8.x" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "node", + "WEBSITE_NODE_DEFAULT_VERSION": "~8" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": true + }, + "supportedFunctionsExtensionVersions": [ + "~2" + ] + } + } + } + ] + }, + { + "displayText": "Node.js 6", + "value": "6", + "minorVersions": [ + { + "displayText": "Node.js 6 LTS", + "value": "6 LTS", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "~6", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": false + }, + "appSettingsDictionary": { + "WEBSITE_NODE_DEFAULT_VERSION": "~6" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": true + }, + "supportedFunctionsExtensionVersions": [ + "~1" + ] + } + } + } + ] + } + ] + } + }, + { + "id": "/providers/Microsoft.Web/functionAppStacks/python", + "name": "python", + "type": "Microsoft.Web/functionAppStacks", + "properties": { + "displayText": "Python", + "value": "python", + "preferredOs": "Linux", + "majorVersions": [ + { + "displayText": "Python 3", + "value": "3", + "minorVersions": [ + { + "displayText": "Python 3.8", + "value": "3.8", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "Python|3.8", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.8" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "python" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": false, + "linuxFxVersion": "Python|3.8" + }, + "supportedFunctionsExtensionVersions": [ + "~3" + ] + } + } + }, + { + "displayText": "Python 3.7", + "value": "3.7", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "Python|3.7", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.7" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "python" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": false, + "linuxFxVersion": "Python|3.7" + }, + "supportedFunctionsExtensionVersions": [ + "~2", + "~3" + ] + } + } + }, + { + "displayText": "Python 3.6", + "value": "3.6", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "Python|3.6", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.6" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "python" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": false, + "linuxFxVersion": "Python|3.6" + }, + "supportedFunctionsExtensionVersions": [ + "~2", + "~3" + ] + } + } + } + ] + } + ] + } + }, + { + "id": "/providers/Microsoft.Web/functionAppStacks/java", + "name": "java", + "type": "Microsoft.Web/functionAppStacks", + "properties": { + "displayText": "Java", + "value": "java", + "preferredOs": "Windows", + "majorVersions": [ + { + "displayText": "Java 11", + "value": "11", + "minorVersions": [ + { + "displayText": "Java 11", + "value": "11.0", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "11", + "isAutoUpdate": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "11" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "java" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": true, + "javaVersion": "11" + }, + "supportedFunctionsExtensionVersions": [ + "~3" + ] + }, + "linuxRuntimeSettings": { + "runtimeVersion": "Java|11", + "isAutoUpdate": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "11" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "java" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": false, + "linuxFxVersion": "Java|11" + }, + "supportedFunctionsExtensionVersions": [ + "~3" + ] + } + } + } + ] + }, + { + "displayText": "Java 8", + "value": "8", + "minorVersions": [ + { + "displayText": "Java 8", + "value": "8.0", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8", + "isAutoUpdate": true, + "isDefault": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "java" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": true, + "javaVersion": "1.8" + }, + "supportedFunctionsExtensionVersions": [ + "~2", + "~3" + ] + }, + "linuxRuntimeSettings": { + "runtimeVersion": "Java|8", + "isAutoUpdate": true, + "isDefault": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "java" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": false, + "linuxFxVersion": "Java|8" + }, + "supportedFunctionsExtensionVersions": [ + "~3" + ] + } + } + } + ] + } + ] + } + }, + { + "id": "/providers/Microsoft.Web/functionAppStacks/powershell", + "name": "powershell", + "type": "Microsoft.Web/functionAppStacks", + "properties": { + "displayText": "PowerShell Core", + "value": "powershell", + "preferredOs": "Windows", + "majorVersions": [ + { + "displayText": "PowerShell 7", + "value": "7", + "minorVersions": [ + { + "displayText": "PowerShell 7.0", + "value": "7.0", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "~7", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": false + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "powershell" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": true, + "powerShellVersion": "~7" + }, + "supportedFunctionsExtensionVersions": [ + "~3" + ] + } + } + } + ] + }, + { + "displayText": "PowerShell Core 6", + "value": "6", + "minorVersions": [ + { + "displayText": "PowerShell Core 6.2", + "value": "6.2", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "~6", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": false + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "powershell" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": true, + "powerShellVersion": "~6" + }, + "isDeprecated": true, + "supportedFunctionsExtensionVersions": [ + "~2", + "~3" + ], + "endOfLifeDate": "2020-10-04T00:00:00+00:00" + } + } + } + ] + } + ] + } + }, + { + "id": "/providers/Microsoft.Web/functionAppStacks/custom", + "name": "custom", + "type": "Microsoft.Web/functionAppStacks", + "properties": { + "displayText": "Custom", + "value": "custom", + "preferredOs": "Windows", + "majorVersions": [ + { + "displayText": "Custom", + "value": "custom", + "minorVersions": [ + { + "displayText": "Custom Handler", + "value": "custom", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "custom", + "isPreview": true, + "appInsightsSettings": { + "isSupported": true + }, + "remoteDebuggingSupported": false, + "gitHubActionSettings": { + "isSupported": false + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "custom" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": true + }, + "supportedFunctionsExtensionVersions": [ + "~3", + "~2" + ] + }, + "linuxRuntimeSettings": { + "runtimeVersion": "", + "isPreview": true, + "appInsightsSettings": { + "isSupported": true + }, + "remoteDebuggingSupported": false, + "gitHubActionSettings": { + "isSupported": false + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "custom" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": false, + "linuxFxVersion": "" + }, + "supportedFunctionsExtensionVersions": [ + "~3", + "~2" + ] + } + } + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetFunctionAppStacksForLocation.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetFunctionAppStacksForLocation.json new file mode 100644 index 000000000000..dab125edb72a --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetFunctionAppStacksForLocation.json @@ -0,0 +1,786 @@ +{ + "parameters": { + "location": "westus", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/providers/Microsoft.Web/locations/functionAppStacks/dotnet", + "name": "dotnet", + "type": "Microsoft.Web/locations/functionAppStacks", + "location": "westus", + "properties": { + "displayText": ".NET", + "value": "dotnet", + "preferredOs": "Windows", + "majorVersions": [ + { + "displayText": ".NET Core 3", + "value": "3", + "minorVersions": [ + { + "displayText": ".NET Core 3.1", + "value": "3.1", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "3.1", + "appInsightsSettings": { + "isSupported": true + }, + "remoteDebuggingSupported": false, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.1.301" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "dotnet" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": true + }, + "supportedFunctionsExtensionVersions": [ + "~3" + ] + }, + "linuxRuntimeSettings": { + "runtimeVersion": "dotnet|3.1", + "appInsightsSettings": { + "isSupported": true + }, + "remoteDebuggingSupported": false, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.1.301" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "dotnet" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": false, + "linuxFxVersion": "dotnet|3.1" + }, + "supportedFunctionsExtensionVersions": [ + "~3" + ] + } + } + } + ] + }, + { + "displayText": ".NET Core 2", + "value": "2", + "minorVersions": [ + { + "displayText": ".NET Core 2.2", + "value": "2.2", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "2.2", + "appInsightsSettings": { + "isSupported": true + }, + "remoteDebuggingSupported": false, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "2.2.207" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "dotnet" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": true + }, + "supportedFunctionsExtensionVersions": [ + "~2" + ] + }, + "linuxRuntimeSettings": { + "runtimeVersion": "dotnet|2.2", + "appInsightsSettings": { + "isSupported": true + }, + "remoteDebuggingSupported": false, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "2.2.207" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "dotnet" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": false, + "linuxFxVersion": "dotnet|2.2" + }, + "supportedFunctionsExtensionVersions": [ + "~2" + ] + } + } + } + ] + }, + { + "displayText": ".NET Framework 4", + "value": "2", + "minorVersions": [ + { + "displayText": ".NET Framework 4.7", + "value": "4.7", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "4.7", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": false + }, + "appSettingsDictionary": {}, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": true + }, + "supportedFunctionsExtensionVersions": [ + "~1" + ] + } + } + } + ] + } + ] + } + }, + { + "id": "/providers/Microsoft.Web/locations/functionAppStacks/node", + "name": "node", + "type": "Microsoft.Web/locations/functionAppStacks", + "location": "westus", + "properties": { + "displayText": "Node.js", + "value": "node", + "preferredOs": "Windows", + "majorVersions": [ + { + "displayText": "Node.js 14", + "value": "14", + "minorVersions": [ + { + "displayText": "Node.js 14 LTS", + "value": "14 LTS", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "~14", + "isPreview": true, + "isHidden": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "14.x" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "node", + "WEBSITE_NODE_DEFAULT_VERSION": "~14" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": true + }, + "supportedFunctionsExtensionVersions": [ + "~3" + ] + }, + "linuxRuntimeSettings": { + "runtimeVersion": "Node|14", + "isPreview": true, + "isHidden": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "14.x" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "node" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": false, + "linuxFxVersion": "Node|14" + }, + "supportedFunctionsExtensionVersions": [ + "~3" + ] + } + } + } + ] + }, + { + "displayText": "Node.js 12", + "value": "12", + "minorVersions": [ + { + "displayText": "Node.js 12 LTS", + "value": "12 LTS", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "~12", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "12.x" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "node", + "WEBSITE_NODE_DEFAULT_VERSION": "~12" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": true + }, + "supportedFunctionsExtensionVersions": [ + "~3" + ] + }, + "linuxRuntimeSettings": { + "runtimeVersion": "Node|12", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "12.x" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "node" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": false, + "linuxFxVersion": "Node|12" + }, + "supportedFunctionsExtensionVersions": [ + "~3" + ] + } + } + } + ] + }, + { + "displayText": "Node.js 10", + "value": "10", + "minorVersions": [ + { + "displayText": "Node.js 10 LTS", + "value": "10 LTS", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "~10", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "10.x" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "node", + "WEBSITE_NODE_DEFAULT_VERSION": "~10" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": true + }, + "supportedFunctionsExtensionVersions": [ + "~2", + "~3" + ] + }, + "linuxRuntimeSettings": { + "runtimeVersion": "Node|10", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "10.x" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "node" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": false, + "linuxFxVersion": "Node|10" + }, + "supportedFunctionsExtensionVersions": [ + "~2", + "~3" + ] + } + } + } + ] + }, + { + "displayText": "Node.js 8", + "value": "8", + "minorVersions": [ + { + "displayText": "Node.js 8 LTS", + "value": "8 LTS", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "~8", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8.x" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "node", + "WEBSITE_NODE_DEFAULT_VERSION": "~8" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": true + }, + "supportedFunctionsExtensionVersions": [ + "~2" + ] + } + } + } + ] + }, + { + "displayText": "Node.js 6", + "value": "6", + "minorVersions": [ + { + "displayText": "Node.js 6 LTS", + "value": "6 LTS", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "~6", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": false + }, + "appSettingsDictionary": { + "WEBSITE_NODE_DEFAULT_VERSION": "~6" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": true + }, + "supportedFunctionsExtensionVersions": [ + "~1" + ] + } + } + } + ] + } + ] + } + }, + { + "id": "/providers/Microsoft.Web/locations/functionAppStacks/python", + "name": "python", + "type": "Microsoft.Web/locations/functionAppStacks", + "location": "westus", + "properties": { + "displayText": "Python", + "value": "python", + "preferredOs": "Linux", + "majorVersions": [ + { + "displayText": "Python 3", + "value": "3", + "minorVersions": [ + { + "displayText": "Python 3.8", + "value": "3.8", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "Python|3.8", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.8" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "python" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": false, + "linuxFxVersion": "Python|3.8" + }, + "supportedFunctionsExtensionVersions": [ + "~3" + ] + } + } + }, + { + "displayText": "Python 3.7", + "value": "3.7", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "Python|3.7", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.7" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "python" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": false, + "linuxFxVersion": "Python|3.7" + }, + "supportedFunctionsExtensionVersions": [ + "~2", + "~3" + ] + } + } + }, + { + "displayText": "Python 3.6", + "value": "3.6", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "Python|3.6", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.6" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "python" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": false, + "linuxFxVersion": "Python|3.6" + }, + "supportedFunctionsExtensionVersions": [ + "~2", + "~3" + ] + } + } + } + ] + } + ] + } + }, + { + "id": "/providers/Microsoft.Web/locations/functionAppStacks/java", + "name": "java", + "type": "Microsoft.Web/locations/functionAppStacks", + "location": "westus", + "properties": { + "displayText": "Java", + "value": "java", + "preferredOs": "Windows", + "majorVersions": [ + { + "displayText": "Java 11", + "value": "11", + "minorVersions": [ + { + "displayText": "Java 11", + "value": "11.0", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "11", + "isAutoUpdate": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "11" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "java" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": true, + "javaVersion": "11" + }, + "supportedFunctionsExtensionVersions": [ + "~3" + ] + }, + "linuxRuntimeSettings": { + "runtimeVersion": "Java|11", + "isAutoUpdate": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "11" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "java" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": false, + "linuxFxVersion": "Java|11" + }, + "supportedFunctionsExtensionVersions": [ + "~3" + ] + } + } + } + ] + }, + { + "displayText": "Java 8", + "value": "8", + "minorVersions": [ + { + "displayText": "Java 8", + "value": "8.0", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8", + "isAutoUpdate": true, + "isDefault": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "java" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": true, + "javaVersion": "1.8" + }, + "supportedFunctionsExtensionVersions": [ + "~2", + "~3" + ] + }, + "linuxRuntimeSettings": { + "runtimeVersion": "Java|8", + "isAutoUpdate": true, + "isDefault": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "java" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": false, + "linuxFxVersion": "Java|8" + }, + "supportedFunctionsExtensionVersions": [ + "~3" + ] + } + } + } + ] + } + ] + } + }, + { + "id": "/providers/Microsoft.Web/locations/functionAppStacks/powershell", + "name": "powershell", + "type": "Microsoft.Web/locations/functionAppStacks", + "location": "westus", + "properties": { + "displayText": "PowerShell Core", + "value": "powershell", + "preferredOs": "Windows", + "majorVersions": [ + { + "displayText": "PowerShell 7", + "value": "7", + "minorVersions": [ + { + "displayText": "PowerShell 7.0", + "value": "7.0", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "~7", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": false + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "powershell" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": true, + "powerShellVersion": "~7" + }, + "supportedFunctionsExtensionVersions": [ + "~3" + ] + } + } + } + ] + }, + { + "displayText": "PowerShell Core 6", + "value": "6", + "minorVersions": [ + { + "displayText": "PowerShell Core 6.2", + "value": "6.2", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "~6", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": false + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "powershell" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": true, + "powerShellVersion": "~6" + }, + "isDeprecated": true, + "supportedFunctionsExtensionVersions": [ + "~2", + "~3" + ], + "endOfLifeDate": "2020-10-04T00:00:00+00:00" + } + } + } + ] + } + ] + } + }, + { + "id": "/providers/Microsoft.Web/locations/functionAppStacks/custom", + "name": "custom", + "type": "Microsoft.Web/locations/functionAppStacks", + "location": "westus", + "properties": { + "displayText": "Custom", + "value": "custom", + "preferredOs": "Windows", + "majorVersions": [ + { + "displayText": "Custom", + "value": "custom", + "minorVersions": [ + { + "displayText": "Custom Handler", + "value": "custom", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "custom", + "isPreview": true, + "appInsightsSettings": { + "isSupported": true + }, + "remoteDebuggingSupported": false, + "gitHubActionSettings": { + "isSupported": false + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "custom" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": true + }, + "supportedFunctionsExtensionVersions": [ + "~3", + "~2" + ] + }, + "linuxRuntimeSettings": { + "runtimeVersion": "", + "isPreview": true, + "appInsightsSettings": { + "isSupported": true + }, + "remoteDebuggingSupported": false, + "gitHubActionSettings": { + "isSupported": false + }, + "appSettingsDictionary": { + "FUNCTIONS_WORKER_RUNTIME": "custom" + }, + "siteConfigPropertiesDictionary": { + "use32BitWorkerProcess": false, + "linuxFxVersion": "" + }, + "supportedFunctionsExtensionVersions": [ + "~3", + "~2" + ] + } + } + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetInboundNetworkDependenciesEndpoints.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetInboundNetworkDependenciesEndpoints.json new file mode 100644 index 000000000000..b93b04e595c1 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetInboundNetworkDependenciesEndpoints.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "Sample-WestUSResourceGroup", + "name": "SampleAse", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "description": "App Service management", + "endpoints": [ + "70.37.57.58/32", + "157.55.208.185/32", + "23.102.188.65/32", + "191.236.154.88/32", + "52.174.22.21/32", + "13.94.149.179/32", + "13.94.143.126/32", + "13.94.141.115/32", + "52.178.195.197/32", + "52.178.190.65/32", + "52.178.184.149/32", + "52.178.177.147/32", + "13.75.127.117/32", + "40.83.125.161/32", + "40.83.121.56/32", + "40.83.120.64/32", + "52.187.56.50/32", + "52.187.63.37/32", + "52.187.59.251/32", + "52.187.63.19/32", + "52.165.158.140/32", + "52.165.152.214/32", + "52.165.154.193/32", + "52.165.153.122/32", + "104.44.129.255/32", + "104.44.134.255/32", + "104.44.129.243/32", + "104.44.129.141/32", + "65.52.193.203/32", + "70.37.89.222/32", + "13.64.115.203/32", + "52.225.177.153/32", + "65.52.172.237/32" + ], + "ports": [ + "454", + "455" + ] + }, + { + "description": "App Service Environment VIP", + "endpoints": [ + "52.247.209.18/32" + ], + "ports": [ + "454", + "455", + "16001" + ] + }, + { + "description": "App Service Environment subnet", + "endpoints": [ + "192.168.250.0/24" + ], + "ports": [ + "All" + ] + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetKeyVaultReferencesForAppSetting.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetKeyVaultReferencesForAppSetting.json new file mode 100644 index 000000000000..347898642371 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetKeyVaultReferencesForAppSetting.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "name": "testc6282", + "appSettingKey": "setting", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "vaultName": "keyVaultName", + "secretName": "secretName", + "secretVersion": "secretVersion" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetKeyVaultReferencesForAppSettingSlot.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetKeyVaultReferencesForAppSettingSlot.json new file mode 100644 index 000000000000..d5e069f58008 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetKeyVaultReferencesForAppSettingSlot.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "name": "testc6282", + "slot": "stage", + "appSettingKey": "setting", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "vaultName": "keyVaultName", + "secretName": "secretName", + "secretVersion": "secretVersion" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetKeyVaultReferencesForAppSettings.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetKeyVaultReferencesForAppSettings.json new file mode 100644 index 000000000000..5d07bce108c5 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetKeyVaultReferencesForAppSettings.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "name": "testc6282", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "properties": { + "vaultName": "keyVaultName", + "secretName": "secretName", + "secretVersion": "secretVersion" + } + }, + { + "properties": { + "vaultName": "keyVaultName", + "secretName": "secretName2", + "secretVersion": "secretVersion2" + } + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetKeyVaultReferencesForAppSettingsSlot.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetKeyVaultReferencesForAppSettingsSlot.json new file mode 100644 index 000000000000..de146474d4e4 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetKeyVaultReferencesForAppSettingsSlot.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "name": "testc6282", + "slot": "stage", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "properties": { + "vaultName": "keyVaultName", + "secretName": "secretName", + "secretVersion": "secretVersion" + } + }, + { + "properties": { + "vaultName": "keyVaultName", + "secretName": "secretName2", + "secretVersion": "secretVersion2" + } + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetOutboundNetworkDependenciesEndpoints.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetOutboundNetworkDependenciesEndpoints.json new file mode 100644 index 000000000000..8cf63eb9b237 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetOutboundNetworkDependenciesEndpoints.json @@ -0,0 +1,802 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "Sample-WestUSResourceGroup", + "name": "SampleAse", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "category": "Azure Storage", + "endpoints": [ + { + "domainName": "blob.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "52.183.104.36", + "port": 80, + "latency": 42.0469, + "isAccessible": true + }, + { + "ipAddress": "52.183.104.36", + "port": 443, + "latency": 41.7038, + "isAccessible": true + } + ] + }, + { + "domainName": "queue.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "52.183.104.25", + "port": 80, + "latency": 37.326, + "isAccessible": true + }, + { + "ipAddress": "52.183.104.25", + "port": 443, + "latency": 37.513600000000004, + "isAccessible": true + } + ] + }, + { + "domainName": "table.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "52.183.104.26", + "port": 80, + "latency": 32.789, + "isAccessible": true + }, + { + "ipAddress": "52.183.104.26", + "port": 443, + "latency": 1.8702, + "isAccessible": true + } + ] + }, + { + "domainName": "file.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "52.183.104.28", + "port": 80, + "latency": 36.7378, + "isAccessible": true + }, + { + "ipAddress": "52.183.104.28", + "port": 443, + "latency": 36.7108, + "isAccessible": true + } + ] + }, + { + "domainName": "blob.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.64", + "port": 80, + "latency": 4.0261000000000005, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.64", + "port": 443, + "latency": 3.8264, + "isAccessible": true + } + ] + }, + { + "domainName": "queue.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.73", + "port": 80, + "latency": 40.8523, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.73", + "port": 443, + "latency": 40.7501, + "isAccessible": true + } + ] + }, + { + "domainName": "table.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.74", + "port": 80, + "latency": 1.2071, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.74", + "port": 443, + "latency": 38.2975, + "isAccessible": true + } + ] + }, + { + "domainName": "file.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.76", + "port": 80, + "latency": 59.383700000000005, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.76", + "port": 443, + "latency": 60.0775, + "isAccessible": true + } + ] + }, + { + "domainName": "blob.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.64", + "port": 80, + "latency": 3.5512, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.64", + "port": 443, + "latency": 2.6777, + "isAccessible": true + } + ] + }, + { + "domainName": "queue.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.73", + "port": 80, + "latency": 3.5204, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.73", + "port": 443, + "latency": 2.8193, + "isAccessible": true + } + ] + }, + { + "domainName": "table.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.74", + "port": 80, + "latency": 3.2720000000000002, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.74", + "port": 443, + "latency": 3.0147, + "isAccessible": true + } + ] + }, + { + "domainName": "file.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.76", + "port": 80, + "latency": 3.2387, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.76", + "port": 443, + "latency": 3.2804, + "isAccessible": true + } + ] + }, + { + "domainName": "blob.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.66.176.16", + "port": 80, + "latency": 43.025200000000005, + "isAccessible": true + }, + { + "ipAddress": "13.66.176.16", + "port": 443, + "latency": 43.1683, + "isAccessible": true + } + ] + }, + { + "domainName": "queue.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.66.176.25", + "port": 80, + "latency": 41.8598, + "isAccessible": true + }, + { + "ipAddress": "13.66.176.25", + "port": 443, + "latency": 41.9805, + "isAccessible": true + } + ] + }, + { + "domainName": "table.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.66.176.26", + "port": 80, + "latency": 30.542900000000003, + "isAccessible": true + }, + { + "ipAddress": "13.66.176.26", + "port": 443, + "latency": 0.98320000000000007, + "isAccessible": true + } + ] + }, + { + "domainName": "file.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.66.176.28", + "port": 80, + "latency": 35.9562, + "isAccessible": true + }, + { + "ipAddress": "13.66.176.28", + "port": 443, + "latency": 36.0643, + "isAccessible": true + } + ] + }, + { + "domainName": "blob.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.64", + "port": 80, + "latency": 3.2829, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.64", + "port": 443, + "latency": 2.3393, + "isAccessible": true + } + ] + }, + { + "domainName": "queue.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.73", + "port": 80, + "latency": 3.4103000000000003, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.73", + "port": 443, + "latency": 4.1032, + "isAccessible": true + } + ] + }, + { + "domainName": "table.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.74", + "port": 80, + "latency": 3.1141, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.74", + "port": 443, + "latency": 3.0247, + "isAccessible": true + } + ] + }, + { + "domainName": "file.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.76", + "port": 80, + "latency": 2.834, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.76", + "port": 443, + "latency": 2.8198000000000003, + "isAccessible": true + } + ] + }, + { + "domainName": "blob.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.64", + "port": 80, + "latency": 1.3855000000000002, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.64", + "port": 443, + "latency": 1.0594000000000001, + "isAccessible": true + } + ] + }, + { + "domainName": "queue.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.73", + "port": 80, + "latency": 2.4717000000000002, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.73", + "port": 443, + "latency": 2.4827, + "isAccessible": true + } + ] + }, + { + "domainName": "table.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.74", + "port": 80, + "latency": 3.395, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.74", + "port": 443, + "latency": 3.1701, + "isAccessible": true + } + ] + }, + { + "domainName": "file.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.76", + "port": 80, + "latency": 1.4308, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.76", + "port": 443, + "latency": 22.5866, + "isAccessible": true + } + ] + }, + { + "domainName": "blob.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.64", + "port": 80, + "latency": 2.5372, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.64", + "port": 443, + "latency": 2.4626, + "isAccessible": true + } + ] + }, + { + "domainName": "queue.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.73", + "port": 80, + "latency": 3.7873, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.73", + "port": 443, + "latency": 4.1911000000000005, + "isAccessible": true + } + ] + }, + { + "domainName": "table.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.74", + "port": 80, + "latency": 2.9162000000000003, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.74", + "port": 443, + "latency": 2.7896, + "isAccessible": true + } + ] + }, + { + "domainName": "file.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.77.184.76", + "port": 80, + "latency": 26.723100000000002, + "isAccessible": true + }, + { + "ipAddress": "13.77.184.76", + "port": 443, + "latency": 26.735200000000003, + "isAccessible": true + } + ] + } + ] + }, + { + "category": "Azure SQL Database", + "endpoints": [ + { + "domainName": "database.windows.net", + "endpointDetails": [ + { + "ipAddress": "13.66.226.202", + "port": 1433, + "latency": 1.5964, + "isAccessible": true + } + ] + } + ] + }, + { + "category": "Azure Management", + "endpoints": [ + { + "domainName": "management.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "23.102.135.246", + "port": 443, + "latency": 46.5764, + "isAccessible": true + } + ] + }, + { + "domainName": "admin.core.windows.net", + "endpointDetails": [ + { + "ipAddress": "23.102.135.247", + "port": 443, + "latency": 47.408, + "isAccessible": true + } + ] + }, + { + "domainName": "management.azure.com", + "endpointDetails": [ + { + "ipAddress": "52.151.25.45", + "port": 443, + "latency": 3.9529, + "isAccessible": true + } + ] + } + ] + }, + { + "category": "Azure Active Directory", + "endpoints": [ + { + "domainName": "graph.windows.net", + "endpointDetails": [ + { + "ipAddress": "20.190.133.83", + "port": 443, + "latency": 3.2264, + "isAccessible": true + }, + { + "ipAddress": "20.190.133.81", + "port": 443, + "latency": 3.2264, + "isAccessible": true + }, + { + "ipAddress": "20.190.133.67", + "port": 443, + "latency": 3.2264, + "isAccessible": true + }, + { + "ipAddress": "40.126.5.34", + "port": 443, + "latency": 3.2264, + "isAccessible": true + } + ] + } + ] + }, + { + "category": "Regional Service", + "endpoints": [ + { + "domainName": "gr-prod-mwh.cloudapp.net", + "endpointDetails": [ + { + "ipAddress": "13.66.225.188", + "port": 443, + "latency": 3.3826, + "isAccessible": true + } + ] + }, + { + "domainName": "az-prod.metrics.nsatc.net", + "endpointDetails": [ + { + "ipAddress": "40.77.24.27", + "port": 443, + "latency": 38.5647, + "isAccessible": true + } + ] + } + ] + }, + { + "category": "SSL Certificate Verification", + "endpoints": [ + { + "domainName": "ocsp.msocsp.com", + "endpointDetails": [ + { + "ipAddress": "104.18.25.243", + "port": 80, + "latency": 6.0651, + "isAccessible": true + }, + { + "ipAddress": "104.18.25.243", + "port": 443, + "latency": 12.888, + "isAccessible": true + }, + { + "ipAddress": "104.18.24.243", + "port": 80, + "latency": 6.0651, + "isAccessible": true + }, + { + "ipAddress": "104.18.24.243", + "port": 443, + "latency": 12.888, + "isAccessible": true + } + ] + }, + { + "domainName": "mscrl.microsoft.com", + "endpointDetails": [ + { + "ipAddress": "152.199.4.33", + "port": 80, + "latency": 6.7429000000000006, + "isAccessible": true + }, + { + "ipAddress": "152.199.4.33", + "port": 443, + "latency": 7.4361000000000006, + "isAccessible": true + } + ] + }, + { + "domainName": "crl.microsoft.com", + "endpointDetails": [ + { + "ipAddress": "23.215.102.10", + "port": 80, + "latency": 25.136200000000002, + "isAccessible": true + }, + { + "ipAddress": "23.215.102.10", + "port": 443, + "latency": 25.0085, + "isAccessible": true + }, + { + "ipAddress": "23.215.102.42", + "port": 80, + "latency": 25.136200000000002, + "isAccessible": true + }, + { + "ipAddress": "23.215.102.42", + "port": 443, + "latency": 25.0085, + "isAccessible": true + } + ] + }, + { + "domainName": "www.microsoft.com", + "endpointDetails": [ + { + "ipAddress": "23.49.13.56", + "port": 80, + "latency": 7.9229, + "isAccessible": true + }, + { + "ipAddress": "23.49.13.56", + "port": 443, + "latency": 8.4871, + "isAccessible": true + } + ] + }, + { + "domainName": "crl3.digicert.com", + "endpointDetails": [ + { + "ipAddress": "72.21.91.29", + "port": 80, + "latency": 5.4074, + "isAccessible": true + }, + { + "ipAddress": "72.21.91.29", + "port": 443, + "latency": 5.577, + "isAccessible": true + } + ] + }, + { + "domainName": "ocsp.digicert.com", + "endpointDetails": [ + { + "ipAddress": "72.21.91.29", + "port": 80, + "latency": 6.8989, + "isAccessible": true + }, + { + "ipAddress": "72.21.91.29", + "port": 443, + "latency": 5.6674000000000007, + "isAccessible": true + } + ] + }, + { + "domainName": "cacerts.digicert.com", + "endpointDetails": [ + { + "ipAddress": "104.18.11.39", + "port": 80, + "latency": 10.772400000000001, + "isAccessible": true + }, + { + "ipAddress": "104.18.11.39", + "port": 443, + "latency": 10.7705, + "isAccessible": true + }, + { + "ipAddress": "104.18.10.39", + "port": 80, + "latency": 10.772400000000001, + "isAccessible": true + }, + { + "ipAddress": "104.18.10.39", + "port": 443, + "latency": 10.7705, + "isAccessible": true + } + ] + }, + { + "domainName": "www.thawte.com", + "endpointDetails": [ + { + "ipAddress": "54.69.98.161", + "port": 80, + "latency": 47.532900000000005, + "isAccessible": true + }, + { + "ipAddress": "54.69.98.161", + "port": 443, + "latency": 48.5362, + "isAccessible": true + }, + { + "ipAddress": "35.167.62.148", + "port": 80, + "latency": 47.532900000000005, + "isAccessible": true + }, + { + "ipAddress": "35.167.62.148", + "port": 443, + "latency": 48.5362, + "isAccessible": true + } + ] + } + ] + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetPublishingCredentialsPolicy.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetPublishingCredentialsPolicy.json new file mode 100644 index 000000000000..368d5b3f57a3 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetPublishingCredentialsPolicy.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testSite", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "allow": false + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetPublishingCredentialsPolicySlot.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetPublishingCredentialsPolicySlot.json new file mode 100644 index 000000000000..e693335cff3b --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetPublishingCredentialsPolicySlot.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testSite", + "slot": "stage", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "allow": false + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetResourceHealthMetadataBySite.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetResourceHealthMetadataBySite.json new file mode 100644 index 000000000000..de8bea0d6b60 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetResourceHealthMetadataBySite.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2021-01-01", + "name": "newsiteinnewASE-NCUS", + "slot": "Production", + "resourceGroupName": "Default-Web-NorthCentralUS", + "subscriptionId": "4adb32ad-8327-4cbb-b775-b84b4465bb38", + "metadataName": "default" + }, + "responses": { + "200": { + "body": { + "properties": { + "category": "Shared", + "signalAvailability": true + }, + "id": "/subscriptions/4adb32ad-8327-4cbb-b775-b84b4465bb38/resourceGroups/Default-Web-NorthCentralUS/providers/Microsoft.Web/sites/newsiteinnewASE-NCUS/resourceHealthMetadata/default", + "name": "default", + "type": "Microsoft.Web/sites/resourceHealthMetadata" + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetSiteInstanceInfo.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetSiteInstanceInfo.json new file mode 100644 index 000000000000..cb6364c24368 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetSiteInstanceInfo.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "name": "tests346", + "instanceId": "134987120", + "slot": "staging", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/sites/tests346/slot/staging/instances/134987120", + "name": "134987120", + "type": "Microsoft.Web/sites/instances", + "properties": { + "state": "READY", + "statusUrl": "https://sampleurl", + "detectorUrl": "testsec579", + "containers": { + "c1": { + "currentTimeStamp": "2013-10-21T13:28:06.419Z" + } + } + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetSitePrivateEndpointConnection.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetSitePrivateEndpointConnection.json new file mode 100644 index 000000000000..912081b617fd --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetSitePrivateEndpointConnection.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testSite", + "privateEndpointConnectionName": "connection", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by admin.", + "actionsRequired": "" + } + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetSitePrivateEndpointConnectionList.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetSitePrivateEndpointConnectionList.json new file mode 100644 index 000000000000..74db4ce7261f --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetSitePrivateEndpointConnectionList.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by admin.", + "actionsRequired": "" + } + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetSitePrivateEndpointConnectionSlot.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetSitePrivateEndpointConnectionSlot.json new file mode 100644 index 000000000000..a025d87fe2d3 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetSitePrivateEndpointConnectionSlot.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testSite", + "slot": "stage", + "privateEndpointConnectionName": "connection", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by admin.", + "actionsRequired": "" + } + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetSitePrivateLinkResources.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetSitePrivateLinkResources.json new file mode 100644 index 000000000000..36af3461df3a --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetSitePrivateLinkResources.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testSite", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Web/sites/testSite/privateLinkResources/site", + "name": "site", + "type": "Microsoft.Web/sites/privateLinkResources", + "properties": { + "groupId": "sites", + "requiredMembers": [ + "sites" + ], + "requiredZoneNames": [ + "privatelink.testsite.azurewebsites.net" + ] + } + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetSitePrivateLinkResourcesSlot.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetSitePrivateLinkResourcesSlot.json new file mode 100644 index 000000000000..4ad407f83426 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetSitePrivateLinkResourcesSlot.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testSite", + "slot": "stage", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Web/sites/testSite/privateLinkResources/site", + "name": "site", + "type": "Microsoft.Web/sites/privateLinkResources", + "properties": { + "groupId": "sites", + "requiredMembers": [ + "sites" + ], + "requiredZoneNames": [ + "privatelink.testsite.azurewebsites.net" + ] + } + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetStaticSite.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetStaticSite.json new file mode 100644 index 000000000000..f1e81d6d6ecb --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetStaticSite.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Web/staticSites/testStaticSite0", + "name": "testStaticSite0", + "type": "Microsoft.Web/staticSites", + "location": "West US 2", + "properties": { + "defaultHostname": "happy-sea-15afae3e.azurestaticwebsites.net", + "repositoryUrl": "https://github.com/username/repo", + "branch": "demo", + "customDomains": [], + "privateEndpointConnections": [], + "contentDistributionEndpoint": "", + "keyVaultReferenceIdentity": "SystemAssigned", + "userProvidedFunctionApps": [], + "stagingEnvironmentPolicy": "Enabled", + "allowConfigFileUpdates": true + }, + "sku": { + "name": "Basic", + "tier": "Basic" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetStaticSiteBuild.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetStaticSiteBuild.json new file mode 100644 index 000000000000..978b388c19de --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetStaticSiteBuild.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "environmentName": "12", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "buildId": "12", + "sourceBranch": "pr-branch", + "pullRequestTitle": "Update README.md", + "hostname": "happy-sea-15afae3e-12.westus2.azurestaticwebsites.net", + "createdTimeUtc": "2020-03-04T17:33:11.641Z", + "lastUpdatedOn": "2020-03-04T17:33:11.641Z", + "status": "Uploading", + "userProvidedFunctionApps": [] + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetStaticSiteBuilds.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetStaticSiteBuilds.json new file mode 100644 index 000000000000..a513366f5779 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetStaticSiteBuilds.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "properties": { + "buildId": "default", + "sourceBranch": "demo", + "pullRequestTitle": null, + "hostname": "happy-sea-15afae3e.azurestaticwebsites.net", + "createdTimeUtc": "2020-03-04T17:33:11.641Z", + "lastUpdatedOn": "2020-03-04T17:33:11.641Z", + "status": "Ready", + "userProvidedFunctionApps": [] + } + }, + { + "properties": { + "buildId": "12", + "sourceBranch": "demo-patch2", + "pullRequestTitle": "Update README.md", + "hostname": "happy-sea-15afae3e-12.westus2.azurestaticwebsites.net", + "createdTimeUtc": "2020-03-04T17:33:11.641Z", + "lastUpdatedOn": "2020-03-04T17:33:11.641Z", + "status": "Ready", + "userProvidedFunctionApps": [] + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetStaticSiteCustomDomain.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetStaticSiteCustomDomain.json new file mode 100644 index 000000000000..2a0f0cb49753 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetStaticSiteCustomDomain.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "domainName": "custom.domain.net", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "properties": { + "domainName": "custom.domain.net", + "createdOn": "2020-03-04T17:33:11.641Z" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetStaticSiteCustomDomains.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetStaticSiteCustomDomains.json new file mode 100644 index 000000000000..603ad5e7febd --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetStaticSiteCustomDomains.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "properties": { + "domainName": "custom.domain.net", + "createdOn": "2020-03-04T17:33:11.641Z" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetStaticSites.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetStaticSites.json new file mode 100644 index 000000000000..f2b33ac0d577 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetStaticSites.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Web/staticSites/testStaticSite0", + "name": "testStaticSite0", + "type": "Microsoft.Web/staticSites", + "location": "West US 2", + "properties": { + "defaultHostname": "happy-sea-15afae3e.azurestaticwebsites.net", + "repositoryUrl": "https://github.com/username/repo", + "branch": "demo", + "customDomains": [], + "privateEndpointConnections": [], + "contentDistributionEndpoint": "", + "keyVaultReferenceIdentity": "SystemAssigned", + "userProvidedFunctionApps": [], + "stagingEnvironmentPolicy": "Enabled", + "allowConfigFileUpdates": true + }, + "sku": { + "name": "Standard", + "tier": "Standard" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetSubscriptionOperationWithAsyncResponse.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetSubscriptionOperationWithAsyncResponse.json new file mode 100644 index 000000000000..e332d27cf3ef --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetSubscriptionOperationWithAsyncResponse.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "location": "West US", + "operationId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab5d5", + "api-version": "2021-01-01" + }, + "responses": { + "204": {} + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetUserProvidedFunctionAppForStaticSite.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetUserProvidedFunctionAppForStaticSite.json new file mode 100644 index 000000000000..6e3116325291 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetUserProvidedFunctionAppForStaticSite.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "functionAppName": "testFunctionApp", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Web/staticSites/testStaticSite0/builds/default/userProvidedFunctionApps/testFunctionApp", + "name": "testFunctionApp", + "type": "Microsoft.Web/staticSites/builds/userProvidedFunctionApps", + "properties": { + "functionAppResourceId": "/subscription/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/functionRG/providers/Microsoft.Web/sites/testFunctionApp", + "functionAppRegion": "West US 2", + "createdOn": "2020-03-04T17:33:11.641Z" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetUserProvidedFunctionAppForStaticSiteBuild.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetUserProvidedFunctionAppForStaticSiteBuild.json new file mode 100644 index 000000000000..4c0aa0e9b8cf --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetUserProvidedFunctionAppForStaticSiteBuild.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "environmentName": "default", + "functionAppName": "testFunctionApp", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Web/staticSites/testStaticSite0/builds/default/userProvidedFunctionApps/testFunctionApp", + "name": "testFunctionApp", + "type": "Microsoft.Web/staticSites/builds/userProvidedFunctionApps", + "properties": { + "functionAppResourceId": "/subscription/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/functionRG/providers/Microsoft.Web/sites/testFunctionApp", + "functionAppRegion": "West US 2", + "createdOn": "2020-03-04T17:33:11.641Z" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetUserProvidedFunctionAppsForStaticSite.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetUserProvidedFunctionAppsForStaticSite.json new file mode 100644 index 000000000000..988c2f8a7357 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetUserProvidedFunctionAppsForStaticSite.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Web/staticSites/testStaticSite0/builds/default/userProvidedFunctionApps/testFunctionApp", + "name": "testFunctionApp", + "type": "Microsoft.Web/staticSites/builds/userProvidedFunctionApps", + "properties": { + "functionAppResourceId": "/subscription/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/functionRG/providers/Microsoft.Web/sites/testFunctionApp", + "functionAppRegion": "West US 2", + "createdOn": "2020-03-04T17:33:11.641Z" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetUserProvidedFunctionAppsForStaticSiteBuild.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetUserProvidedFunctionAppsForStaticSiteBuild.json new file mode 100644 index 000000000000..aa77dc59240f --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetUserProvidedFunctionAppsForStaticSiteBuild.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "environmentName": "default", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Web/staticSites/testStaticSite0/builds/default/userProvidedFunctionApps/testFunctionApp", + "name": "testFunctionApp", + "type": "Microsoft.Web/staticSites/builds/userProvidedFunctionApps", + "properties": { + "functionAppResourceId": "/subscription/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/functionRG/providers/Microsoft.Web/sites/testFunctionApp", + "functionAppRegion": "West US 2", + "createdOn": "2020-03-04T17:33:11.641Z" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetWebAppStacks.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetWebAppStacks.json new file mode 100644 index 000000000000..be996d9ce744 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetWebAppStacks.json @@ -0,0 +1,2915 @@ +{ + "parameters": { + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/providers/Microsoft.Web/webAppStacks/dotnet", + "name": "dotnet", + "type": "Microsoft.Web/webAppStacks", + "properties": { + "displayText": ".NET", + "value": "dotnet", + "preferredOs": "Windows", + "majorVersions": [ + { + "displayText": ".NET 5", + "value": "5", + "minorVersions": [ + { + "displayText": ".NET 5", + "value": "5", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "v5.0", + "isEarlyAccess": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "5.0.x" + } + }, + "linuxRuntimeSettings": { + "runtimeVersion": "DOTNETCORE|5.0", + "isEarlyAccess": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "5.0.x" + } + } + } + } + ] + }, + { + "displayText": ".NET Core 3", + "value": "3", + "minorVersions": [ + { + "displayText": ".NET Core 3.1 (LTS)", + "value": "3.1", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "3.1", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.1.301" + } + }, + "linuxRuntimeSettings": { + "runtimeVersion": "DOTNETCORE|3.1", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.1.301" + } + } + } + }, + { + "displayText": ".NET Core 3.0", + "value": "3.0", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "3.0", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.0.103" + }, + "endOfLifeDate": "2020-04-03T00:00:00+00:00" + }, + "linuxRuntimeSettings": { + "runtimeVersion": "DOTNETCORE|3.0", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.0.103" + }, + "endOfLifeDate": "2020-04-03T00:00:00+00:00" + } + } + } + ] + }, + { + "displayText": ".NET Core 2", + "value": "dotnetcore2", + "minorVersions": [ + { + "displayText": ".NET Core 2.2", + "value": "2.2", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "2.2", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "2.2.207" + }, + "endOfLifeDate": "2020-01-23T00:00:00+00:00" + }, + "linuxRuntimeSettings": { + "runtimeVersion": "DOTNETCORE|2.2", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "2.2.207" + }, + "endOfLifeDate": "2020-01-23T00:00:00+00:00" + } + } + }, + { + "displayText": ".NET Core 2.1 (LTS)", + "value": "2.1", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "2.1", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "2.1.807" + }, + "endOfLifeDate": "2021-09-21T00:00:00+00:00" + }, + "linuxRuntimeSettings": { + "runtimeVersion": "DOTNETCORE|2.1", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "2.1.807" + }, + "endOfLifeDate": "2021-09-21T00:00:00+00:00" + } + } + }, + { + "displayText": ".NET Core 2.0", + "value": "2.0", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "2.0", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "2.1.202" + }, + "endOfLifeDate": "2018-11-01T00:00:00+00:00" + }, + "linuxRuntimeSettings": { + "runtimeVersion": "DOTNETCORE|2.0", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "2.1.202" + }, + "endOfLifeDate": "2018-11-01T00:00:00+00:00" + } + } + } + ] + }, + { + "displayText": ".NET Core 1", + "value": "1", + "minorVersions": [ + { + "displayText": ".NET Core 1.1", + "value": "1.1", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.1", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "1.1.14" + }, + "endOfLifeDate": "2019-07-27T00:00:00+00:00" + }, + "linuxRuntimeSettings": { + "runtimeVersion": "DOTNETCORE|1.1", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "1.1.14" + }, + "endOfLifeDate": "2019-07-27T00:00:00+00:00" + } + } + }, + { + "displayText": ".NET Core 1.0", + "value": "1.0", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.0", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "1.1.14" + }, + "endOfLifeDate": "2019-07-27T00:00:00+00:00" + }, + "linuxRuntimeSettings": { + "runtimeVersion": "DOTNETCORE|1.0", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "1.1.14" + }, + "endOfLifeDate": "2019-07-27T00:00:00+00:00" + } + } + } + ] + }, + { + "displayText": "ASP.NET V4", + "value": "v4", + "minorVersions": [ + { + "displayText": "ASP.NET V4.8", + "value": "v4.8", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "v4.0", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.1" + } + } + } + } + ] + }, + { + "displayText": "ASP.NET V3", + "value": "v3", + "minorVersions": [ + { + "displayText": "ASP.NET V3.5", + "value": "v3.5", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "v2.0", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "2.1" + } + } + } + } + ] + } + ] + } + }, + { + "id": "/providers/Microsoft.Web/webAppStacks/node", + "name": "node", + "type": "Microsoft.Web/webAppStacks", + "properties": { + "displayText": "Node", + "value": "node", + "preferredOs": "Linux", + "majorVersions": [ + { + "displayText": "Node LTS", + "value": "lts", + "minorVersions": [ + { + "displayText": "Node LTS", + "value": "lts", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|lts", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + } + } + } + } + ] + }, + { + "displayText": "Node 14", + "value": "14", + "minorVersions": [ + { + "displayText": "Node 14 LTS", + "value": "14-lts", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|14-lts", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "14.x" + }, + "isPreview": true, + "endOfLifeDate": "2023-05-30T00:00:00+00:00" + } + } + } + ] + }, + { + "displayText": "Node 12", + "value": "12", + "minorVersions": [ + { + "displayText": "Node 12 LTS", + "value": "12-lts", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|12-lts", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "12.x" + }, + "endOfLifeDate": "2022-05-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "12.13.0", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2022-05-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 12.9", + "value": "12.9", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|12.9", + "isDeprecated": true, + "remoteDebuggingSupported": true, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "12.x" + }, + "endOfLifeDate": "2022-05-01T00:00:00+00:00" + } + } + } + ] + }, + { + "displayText": "Node 10", + "value": "10", + "minorVersions": [ + { + "displayText": "Node 10 LTS", + "value": "10-LTS", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|10-lts", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "10.x" + }, + "endOfLifeDate": "2021-05-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 10.16", + "value": "10.16", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|10.16", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "10.x" + }, + "endOfLifeDate": "2021-05-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 10.15", + "value": "10.15", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "10.15.2", + "isPreview": true, + "isHidden": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "10.x" + }, + "endOfLifeDate": "2021-05-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 10.14", + "value": "10.14", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|10.14", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "10.x" + }, + "endOfLifeDate": "2021-05-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "10.14.1", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "10.x" + }, + "endOfLifeDate": "2021-05-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 10.12", + "value": "10.12", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|10.12", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "10.x" + }, + "endOfLifeDate": "2021-05-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 10.10", + "value": "10.10", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|10.10", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "10.x" + }, + "endOfLifeDate": "2021-05-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "10.0.0", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "10.x" + }, + "endOfLifeDate": "2021-05-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 10.6", + "value": "10.6", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|10.6", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "10.x" + }, + "endOfLifeDate": "2021-05-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "10.6.0", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2021-05-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 10.1", + "value": "10.1", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|10.1", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "10.x" + }, + "endOfLifeDate": "2021-05-01T00:00:00+00:00" + } + } + } + ] + }, + { + "displayText": "Node 9", + "value": "9", + "minorVersions": [ + { + "displayText": "Node 9.4", + "value": "9.4", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|9.4", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2019-07-30T00:00:00+00:00" + } + } + } + ] + }, + { + "displayText": "Node 8", + "value": "8", + "minorVersions": [ + { + "displayText": "Node 8 LTS", + "value": "8-lts", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|8-lts", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 8.12", + "value": "8.12", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|8.12", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 8.11", + "value": "8.11", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|8.11", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "8.11", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 8.10", + "value": "8.10", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "8.10", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 8.9", + "value": "8.9", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|8.9", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "8.9", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 8.8", + "value": "8.8", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|8.8", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 8.5", + "value": "8.5", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "8.5", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 8.4", + "value": "8.4", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "8.4", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 8.2", + "value": "8.2", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|8.2", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 8.1", + "value": "8.1", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|8.1", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "8.1.4", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 8.0", + "value": "8.0", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|8.0", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + } + } + } + ] + }, + { + "displayText": "Node 7", + "value": "7", + "minorVersions": [ + { + "displayText": "Node 7.10", + "value": "7.10", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "7.10.1", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2017-07-30T00:00:00+00:00" + } + } + } + ] + }, + { + "displayText": "Node 6", + "value": "6", + "minorVersions": [ + { + "displayText": "Node 6 LTS", + "value": "6-LTS", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|6-lts", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2019-05-30T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 6.12", + "value": "6.12", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "6.12", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2019-05-30T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 6.11", + "value": "6.11", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|6.11", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2019-05-30T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 6.10", + "value": "6.10", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|6.10", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2019-05-30T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 6.9", + "value": "6.9", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|6.9", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2019-05-30T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "6.9.5", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2019-05-30T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 6.6", + "value": "6.6", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|6.6", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2019-05-30T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 6.5", + "value": "6.5", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "6.5.0", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2019-05-30T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 6.2", + "value": "6.2", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|6.2", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2019-05-30T00:00:00+00:00" + } + } + } + ] + }, + { + "displayText": "Node 4", + "value": "4", + "minorVersions": [ + { + "displayText": "Node 4.8", + "value": "4.8", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|4.8", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2018-05-30T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "4.8", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2018-05-30T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 4.5", + "value": "4.5", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|4.5", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2018-05-30T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 4.4", + "value": "4.4", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|4.4", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2018-05-30T00:00:00+00:00" + } + } + } + ] + } + ] + } + }, + { + "id": "/providers/Microsoft.Web/webAppStacks/python", + "name": "python", + "type": "Microsoft.Web/webAppStacks", + "properties": { + "displayText": "Python", + "value": "python", + "preferredOs": "Linux", + "majorVersions": [ + { + "displayText": "Python 3", + "value": "3", + "minorVersions": [ + { + "displayText": "Python 3.8", + "value": "3.8", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "PYTHON|3.8", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.8" + } + } + } + }, + { + "displayText": "Python 3.7", + "value": "3.7", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "PYTHON|3.7", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.7" + } + } + } + }, + { + "displayText": "Python 3.6", + "value": "3.6", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "PYTHON|3.6", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.6" + } + }, + "windowsRuntimeSettings": { + "runtimeVersion": "3.4.0", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.6" + } + } + } + } + ] + }, + { + "displayText": "Python 2", + "value": "2", + "minorVersions": [ + { + "displayText": "Python 2.7", + "value": "2.7", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "PYTHON|2.7", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "2.7" + }, + "endOfLifeDate": "2020-02-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "2.7.3", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "2.7" + }, + "endOfLifeDate": "2020-02-01T00:00:00+00:00" + } + } + } + ] + } + ] + } + }, + { + "id": "/providers/Microsoft.Web/webAppStacks/php", + "name": "php", + "type": "Microsoft.Web/webAppStacks", + "properties": { + "displayText": "PHP", + "value": "php", + "preferredOs": "Linux", + "majorVersions": [ + { + "displayText": "PHP 7", + "value": "7", + "minorVersions": [ + { + "displayText": "PHP 7.4", + "value": "7.4", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "7.4", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2022-12-28T00:00:00+00:00" + }, + "linuxRuntimeSettings": { + "runtimeVersion": "PHP|7.4", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2022-12-28T00:00:00+00:00" + } + } + }, + { + "displayText": "PHP 7.3", + "value": "7.3", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "PHP|7.3", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2022-01-06T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "7.3", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2022-01-06T00:00:00+00:00" + } + } + }, + { + "displayText": "PHP 7.2", + "value": "7.2", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "PHP|7.2", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2020-12-30T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "7.2", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2020-12-30T00:00:00+00:00" + } + } + }, + { + "displayText": "PHP 7.1", + "value": "7.1", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "7.1", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2020-03-01T00:00:00+00:00" + } + } + }, + { + "displayText": "7.0", + "value": "7.0", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "PHP|7.0", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2020-03-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "7.0", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2020-03-01T00:00:00+00:00" + } + } + } + ] + }, + { + "displayText": "PHP 5", + "value": "5", + "minorVersions": [ + { + "displayText": "PHP 5.6", + "value": "5.6", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "PHP|5.6", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2021-03-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "5.6", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2021-03-01T00:00:00+00:00" + } + } + } + ] + } + ] + } + }, + { + "id": "/providers/Microsoft.Web/webAppStacks/ruby", + "name": "ruby", + "type": "Microsoft.Web/webAppStacks", + "properties": { + "displayText": "Ruby", + "value": "ruby", + "preferredOs": "Linux", + "majorVersions": [ + { + "displayText": "Ruby 2", + "value": "2", + "minorVersions": [ + { + "displayText": "Ruby 2.6", + "value": "2.6", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "RUBY|2.6", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + } + } + } + }, + { + "displayText": "Ruby 2.6.2", + "value": "2.6.2", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "RUBY|2.6.2", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + } + } + } + }, + { + "displayText": "Ruby 2.5", + "value": "2.5", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "RUBY|2.5", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + } + } + } + }, + { + "displayText": "Ruby 2.5.5", + "value": "2.5.5", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "RUBY|2.5.5", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + } + } + } + }, + { + "displayText": "Ruby 2.4", + "value": "2.4", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "RUBY|2.4", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2020-05-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Ruby 2.4.5", + "value": "2.4.5", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "RUBY|2.4.5", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2020-05-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Ruby 2.3", + "value": "2.3", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "RUBY|2.3", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2019-05-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Ruby 2.3.8", + "value": "2.3.8", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "RUBY|2.3.8", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2019-05-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Ruby 2.3.3", + "value": "2.3.3", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "RUBY|2.3.3", + "remoteDebuggingSupported": false, + "isDeprecated": true, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2019-05-01T00:00:00+00:00" + } + } + } + ] + } + ] + } + }, + { + "id": "/providers/Microsoft.Web/webAppStacks/java", + "name": "java", + "type": "Microsoft.Web/webAppStacks", + "properties": { + "displayText": "Java", + "value": "java", + "preferredOs": "Linux", + "majorVersions": [ + { + "displayText": "Java 11", + "value": "11", + "minorVersions": [ + { + "displayText": "Java 11", + "value": "11.0", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "", + "isAutoUpdate": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "11" + }, + "endOfLifeDate": "2026-10-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "11", + "isAutoUpdate": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "11" + }, + "endOfLifeDate": "2026-10-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 11.0.7", + "value": "11.0.7", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "11" + }, + "endOfLifeDate": "2026-10-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "11.0.7", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "11" + }, + "endOfLifeDate": "2026-10-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 11.0.6", + "value": "11.0.6", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "11" + }, + "endOfLifeDate": "2026-10-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "11.0.6", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "11" + }, + "endOfLifeDate": "2026-10-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 11.0.5", + "value": "11.0.5", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "11" + }, + "endOfLifeDate": "2026-10-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "11.0.5_ZULU", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "11" + }, + "endOfLifeDate": "2026-10-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 11.0.3", + "value": "11.0.3", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "11.0.3_ZULU", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "11" + }, + "endOfLifeDate": "2026-10-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 11.0.2", + "value": "11.0.2", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "11.0.2_ZULU", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "11" + }, + "endOfLifeDate": "2026-10-01T00:00:00+00:00" + } + } + } + ] + }, + { + "displayText": "Java 8", + "value": "8", + "minorVersions": [ + { + "displayText": "Java 8", + "value": "8.0", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "", + "isAutoUpdate": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "1.8", + "isAutoUpdate": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.8.0_252", + "value": "8.0.252", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_252", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.8.0_242", + "value": "8.0.242", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_242", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.8.0_232", + "value": "8.0.232", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_232_ZULU", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.8.0_212", + "value": "8.0.212", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_212_ZULU", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.8.0_202", + "value": "8.0.202", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_202_ZULU", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.8.0_202 (Oracle)", + "value": "8.0.202 (Oracle)", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_202", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + } + } + } + }, + { + "displayText": "Java 1.8.0_181", + "value": "8.0.181", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_181_ZULU", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.8.0_181 (Oracle)", + "value": "8.0.181 (Oracle)", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_181", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + } + } + } + }, + { + "displayText": "Java 1.8.0_172", + "value": "8.0.172", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_172_ZULU", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.8.0_172 (Oracle)", + "value": "8.0.172 (Oracle)", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_172", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + } + } + } + }, + { + "displayText": "Java 1.8.0_144", + "value": "8.0.144", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_144", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.8.0_111 (Oracle)", + "value": "8.0.111 (Oracle)", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_111", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + } + } + } + }, + { + "displayText": "Java 1.8.0_102", + "value": "8.0.102", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_102", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.8.0_92", + "value": "8.0.92", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_92", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.8.0_73 (Oracle)", + "value": "8.0.73 (Oracle)", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_73", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + } + } + } + }, + { + "displayText": "Java 1.8.0_60 (Oracle)", + "value": "8.0.60 (Oracle)", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_60", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + } + } + } + }, + { + "displayText": "Java 1.8.0_25 (Oracle)", + "value": "8.0.25 (Oracle)", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_25", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + } + } + } + } + ] + }, + { + "displayText": "Java 7", + "value": "7", + "minorVersions": [ + { + "displayText": "Java 7", + "value": "7.0", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.7", + "isAutoUpdate": true, + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2023-08-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.7.0_262", + "value": "7.0.262", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.7.0_262_ZULU", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2023-08-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.7.0_242", + "value": "7.0.242", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.7.0_242_ZULU", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2023-08-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.7.0_222", + "value": "7.0.222", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.7.0_222_ZULU", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2023-08-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.7.0_191", + "value": "7.0.191", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.7.0_191_ZULU", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2023-08-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.7.0_80 (Oracle)", + "value": "7.0.80 (Oracle)", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.7.0_80", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + } + } + } + }, + { + "displayText": "Java 1.7.0_71 (Oracle)", + "value": "7.0.71 (Oracle)", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.7.0_71", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + } + } + } + }, + { + "displayText": "Java 1.7.0_51 (Oracle)", + "value": "7.0.51 (Oracle)", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.7.0_51", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + } + } + } + } + ] + } + ] + } + }, + { + "id": "/providers/Microsoft.Web/webAppStacks/javacontainers", + "name": "javacontainers", + "type": "Microsoft.Web/webAppStacks", + "properties": { + "displayText": "Java Containers", + "value": "javacontainers", + "majorVersions": [ + { + "displayText": "Java SE (Embedded Web Server)", + "value": "javase", + "minorVersions": [ + { + "displayText": "Java SE (Embedded Web Server)", + "value": "SE", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "JAVA", + "javaContainerVersion": "SE", + "isAutoUpdate": true + }, + "linuxContainerSettings": { + "java11Runtime": "JAVA|11-java11", + "java8Runtime": "JAVA|8-jre8", + "isAutoUpdate": true + } + } + }, + { + "displayText": "Java SE 11.0.7", + "value": "11.0.7", + "stackSettings": { + "linuxContainerSettings": { + "java11Runtime": "JAVA|11.0.7" + } + } + }, + { + "displayText": "Java SE 11.0.6", + "value": "11.0.6", + "stackSettings": { + "linuxContainerSettings": { + "java11Runtime": "JAVA|11.0.6" + } + } + }, + { + "displayText": "Java SE 11.0.5", + "value": "11.0.5", + "stackSettings": { + "linuxContainerSettings": { + "java11Runtime": "JAVA|11.0.5" + } + } + }, + { + "displayText": "Java SE 8u252", + "value": "1.8.252", + "stackSettings": { + "linuxContainerSettings": { + "java8Runtime": "JAVA|8u252" + } + } + }, + { + "displayText": "Java SE 8u242", + "value": "1.8.242", + "stackSettings": { + "linuxContainerSettings": { + "java8Runtime": "JAVA|8u242" + } + } + }, + { + "displayText": "Java SE 8u232", + "value": "1.8.232", + "stackSettings": { + "linuxContainerSettings": { + "java8Runtime": "JAVA|8u232" + } + } + } + ] + }, + { + "displayText": "JBoss EAP", + "value": "jbosseap", + "minorVersions": [ + { + "displayText": "JBoss EAP 7.2", + "value": "7.2", + "stackSettings": { + "linuxContainerSettings": { + "java8Runtime": "JBOSSEAP|7.2-java8", + "isPreview": true + } + } + } + ] + }, + { + "displayText": "Tomcat 9.0", + "value": "tomcat9.0", + "minorVersions": [ + { + "displayText": "Tomcat 9.0", + "value": "9.0", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "9.0", + "isAutoUpdate": true + }, + "linuxContainerSettings": { + "java11Runtime": "TOMCAT|9.0-java11", + "java8Runtime": "TOMCAT|9.0-jre8", + "isAutoUpdate": true + } + } + }, + { + "displayText": "Tomcat 9.0.37", + "value": "9.0.37", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "9.0.37" + }, + "linuxContainerSettings": { + "java11Runtime": "TOMCAT|9.0.37-java11", + "java8Runtime": "TOMCAT|9.0.37-java8" + } + } + }, + { + "displayText": "Tomcat 9.0.33", + "value": "9.0.33", + "stackSettings": { + "linuxContainerSettings": { + "java11Runtime": "TOMCAT|9.0.33-java11", + "java8Runtime": "TOMCAT|9.0.33-java8" + } + } + }, + { + "displayText": "Tomcat 9.0.31", + "value": "9.0.31", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "9.0.31" + } + } + }, + { + "displayText": "Tomcat 9.0.27", + "value": "9.0.27", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "9.0.27" + } + } + }, + { + "displayText": "Tomcat 9.0.21", + "value": "9.0.21", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "9.0.21" + } + } + }, + { + "displayText": "Tomcat 9.0.20", + "value": "9.0.20", + "stackSettings": { + "linuxContainerSettings": { + "java11Runtime": "TOMCAT|9.0.20-java11", + "java8Runtime": "TOMCAT|9.0.20-java8" + } + } + }, + { + "displayText": "Tomcat 9.0.14", + "value": "9.0.14", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "9.0.14" + } + } + }, + { + "displayText": "Tomcat 9.0.12", + "value": "9.0.12", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "9.0.12" + } + } + }, + { + "displayText": "Tomcat 9.0.8", + "value": "9.0.8", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "9.0.8" + } + } + }, + { + "displayText": "Tomcat 9.0.0", + "value": "9.0.0", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "9.0.0" + } + } + } + ] + }, + { + "displayText": "Tomcat 8.5", + "value": "tomcat8.5", + "minorVersions": [ + { + "displayText": "Tomcat 8.5", + "value": "8.5", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.5", + "isAutoUpdate": true + }, + "linuxContainerSettings": { + "java11Runtime": "TOMCAT|8.5-java11", + "java8Runtime": "TOMCAT|8.5-jre8", + "isAutoUpdate": true + } + } + }, + { + "displayText": "Tomcat 8.5.6", + "value": "8.5.6", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.5.6" + } + } + }, + { + "displayText": "Tomcat 8.5.57", + "value": "8.5.57", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.5.57" + }, + "linuxContainerSettings": { + "java11Runtime": "TOMCAT|8.5.57-java11", + "java8Runtime": "TOMCAT|8.5.57-java8" + } + } + }, + { + "displayText": "Tomcat 8.5.53", + "value": "8.5.53", + "stackSettings": { + "linuxContainerSettings": { + "java11Runtime": "TOMCAT|8.5.53-java11", + "java8Runtime": "TOMCAT|8.5.53-java8" + } + } + }, + { + "displayText": "Tomcat 8.5.51", + "value": "8.5.51", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.5.51" + } + } + }, + { + "displayText": "Tomcat 8.5.47", + "value": "8.5.47", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.5.47" + } + } + }, + { + "displayText": "Tomcat 8.5.42", + "value": "8.5.42", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.5.42" + } + } + }, + { + "displayText": "Tomcat 8.5.41", + "value": "8.5.41", + "stackSettings": { + "linuxContainerSettings": { + "java11Runtime": "TOMCAT|8.5.41-java11", + "java8Runtime": "TOMCAT|8.5.41-java8" + } + } + }, + { + "displayText": "Tomcat 8.5.37", + "value": "8.5.37", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.5.37" + } + } + }, + { + "displayText": "Tomcat 8.5.34", + "value": "8.5.34", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.5.34" + } + } + }, + { + "displayText": "Tomcat 8.5.31", + "value": "8.5.31", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.5.31" + } + } + }, + { + "displayText": "Tomcat 8.5.20", + "value": "8.5.20", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.5.20" + } + } + } + ] + }, + { + "displayText": "Tomcat 8.0", + "value": "tomcat8.0", + "minorVersions": [ + { + "displayText": "Tomcat 8.0", + "value": "8.0", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.0", + "isAutoUpdate": true + } + } + }, + { + "displayText": "Tomcat 8.0.53", + "value": "8.0.53", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.0.53" + } + } + }, + { + "displayText": "Tomcat 8.0.46", + "value": "8.0.46", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.0.46" + } + } + }, + { + "displayText": "Tomcat 8.0.23", + "value": "8.0.23", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.0.23" + } + } + } + ] + }, + { + "displayText": "Tomcat 7.0", + "value": "tomcat7.0", + "minorVersions": [ + { + "displayText": "Tomcat 7.0", + "value": "7.0", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "7.0", + "isAutoUpdate": true + } + } + }, + { + "displayText": "Tomcat 7.0.94", + "value": "7.0.94", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "7.0.94" + } + } + }, + { + "displayText": "Tomcat 7.0.81", + "value": "7.0.81", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "7.0.81" + } + } + }, + { + "displayText": "Tomcat 7.0.62", + "value": "7.0.62", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "7.0.62" + } + } + }, + { + "displayText": "Tomcat 7.0.50", + "value": "7.0.50", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "7.0.50" + } + } + } + ] + }, + { + "displayText": "Jetty 9.3", + "value": "jetty9.3", + "minorVersions": [ + { + "displayText": "Jetty 9.3", + "value": "9.3", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "JETTY", + "javaContainerVersion": "9.3", + "isAutoUpdate": true, + "isDeprecated": true + } + } + }, + { + "displayText": "Jetty 9.3.25", + "value": "9.3.25", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "JETTY", + "javaContainerVersion": "9.3.25", + "isDeprecated": true + } + } + }, + { + "displayText": "Jetty 9.3.13", + "value": "9.3.13", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "JETTY", + "javaContainerVersion": "9.3.13", + "isDeprecated": true + } + } + } + ] + }, + { + "displayText": "Jetty 9.1", + "value": "jetty9.1", + "minorVersions": [ + { + "displayText": "Jetty 9.1", + "value": "9.1", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "JETTY", + "javaContainerVersion": "9.1", + "isAutoUpdate": true, + "isDeprecated": true + } + } + }, + { + "displayText": "Jetty 9.1.0", + "value": "9.1.0", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "JETTY", + "javaContainerVersion": "9.1.0", + "isDeprecated": true + } + } + } + ] + }, + { + "displayText": "WildFly 14", + "value": "wildfly14", + "minorVersions": [ + { + "displayText": "WildFly 14", + "value": "14", + "stackSettings": { + "linuxContainerSettings": { + "java8Runtime": "WILDFLY|14-jre8", + "isDeprecated": true, + "isAutoUpdate": true + } + } + }, + { + "displayText": "WildFly 14.0.1", + "value": "14.0.1", + "stackSettings": { + "linuxContainerSettings": { + "isDeprecated": true, + "java8Runtime": "WILDFLY|14.0.1-java8" + } + } + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetWebAppStacksForLocation.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetWebAppStacksForLocation.json new file mode 100644 index 000000000000..21782f19bbf2 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetWebAppStacksForLocation.json @@ -0,0 +1,2923 @@ +{ + "parameters": { + "location": "westus", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/providers/Microsoft.Web/locations/webAppStacks/dotnet", + "name": "dotnet", + "type": "Microsoft.Web/locations/webAppStacks", + "location": "westus", + "properties": { + "displayText": ".NET", + "value": "dotnet", + "preferredOs": "Windows", + "majorVersions": [ + { + "displayText": ".NET 5", + "value": "5", + "minorVersions": [ + { + "displayText": ".NET 5", + "value": "5", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "v5.0", + "isEarlyAccess": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "5.0.x" + } + }, + "linuxRuntimeSettings": { + "runtimeVersion": "DOTNETCORE|5.0", + "isEarlyAccess": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "5.0.x" + } + } + } + } + ] + }, + { + "displayText": ".NET Core 3", + "value": "3", + "minorVersions": [ + { + "displayText": ".NET Core 3.1 (LTS)", + "value": "3.1", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "3.1", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.1.301" + } + }, + "linuxRuntimeSettings": { + "runtimeVersion": "DOTNETCORE|3.1", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.1.301" + } + } + } + }, + { + "displayText": ".NET Core 3.0", + "value": "3.0", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "3.0", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.0.103" + }, + "endOfLifeDate": "2020-04-03T00:00:00+00:00" + }, + "linuxRuntimeSettings": { + "runtimeVersion": "DOTNETCORE|3.0", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.0.103" + }, + "endOfLifeDate": "2020-04-03T00:00:00+00:00" + } + } + } + ] + }, + { + "displayText": ".NET Core 2", + "value": "dotnetcore2", + "minorVersions": [ + { + "displayText": ".NET Core 2.2", + "value": "2.2", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "2.2", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "2.2.207" + }, + "endOfLifeDate": "2020-01-23T00:00:00+00:00" + }, + "linuxRuntimeSettings": { + "runtimeVersion": "DOTNETCORE|2.2", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "2.2.207" + }, + "endOfLifeDate": "2020-01-23T00:00:00+00:00" + } + } + }, + { + "displayText": ".NET Core 2.1 (LTS)", + "value": "2.1", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "2.1", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "2.1.807" + }, + "endOfLifeDate": "2021-09-21T00:00:00+00:00" + }, + "linuxRuntimeSettings": { + "runtimeVersion": "DOTNETCORE|2.1", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "2.1.807" + }, + "endOfLifeDate": "2021-09-21T00:00:00+00:00" + } + } + }, + { + "displayText": ".NET Core 2.0", + "value": "2.0", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "2.0", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "2.1.202" + }, + "endOfLifeDate": "2018-11-01T00:00:00+00:00" + }, + "linuxRuntimeSettings": { + "runtimeVersion": "DOTNETCORE|2.0", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "2.1.202" + }, + "endOfLifeDate": "2018-11-01T00:00:00+00:00" + } + } + } + ] + }, + { + "displayText": ".NET Core 1", + "value": "1", + "minorVersions": [ + { + "displayText": ".NET Core 1.1", + "value": "1.1", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.1", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "1.1.14" + }, + "endOfLifeDate": "2019-07-27T00:00:00+00:00" + }, + "linuxRuntimeSettings": { + "runtimeVersion": "DOTNETCORE|1.1", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "1.1.14" + }, + "endOfLifeDate": "2019-07-27T00:00:00+00:00" + } + } + }, + { + "displayText": ".NET Core 1.0", + "value": "1.0", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.0", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "1.1.14" + }, + "endOfLifeDate": "2019-07-27T00:00:00+00:00" + }, + "linuxRuntimeSettings": { + "runtimeVersion": "DOTNETCORE|1.0", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "1.1.14" + }, + "endOfLifeDate": "2019-07-27T00:00:00+00:00" + } + } + } + ] + }, + { + "displayText": "ASP.NET V4", + "value": "v4", + "minorVersions": [ + { + "displayText": "ASP.NET V4.8", + "value": "v4.8", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "v4.0", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.1" + } + } + } + } + ] + }, + { + "displayText": "ASP.NET V3", + "value": "v3", + "minorVersions": [ + { + "displayText": "ASP.NET V3.5", + "value": "v3.5", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "v2.0", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "2.1" + } + } + } + } + ] + } + ] + } + }, + { + "id": "/providers/Microsoft.Web/locations/webAppStacks/node", + "name": "node", + "type": "Microsoft.Web/locations/webAppStacks", + "location": "westus", + "properties": { + "displayText": "Node", + "value": "node", + "preferredOs": "Linux", + "majorVersions": [ + { + "displayText": "Node LTS", + "value": "lts", + "minorVersions": [ + { + "displayText": "Node LTS", + "value": "lts", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|lts", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + } + } + } + } + ] + }, + { + "displayText": "Node 14", + "value": "14", + "minorVersions": [ + { + "displayText": "Node 14 LTS", + "value": "14-lts", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|14-lts", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "14.x" + }, + "isPreview": true, + "endOfLifeDate": "2023-05-30T00:00:00+00:00" + } + } + } + ] + }, + { + "displayText": "Node 12", + "value": "12", + "minorVersions": [ + { + "displayText": "Node 12 LTS", + "value": "12-lts", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|12-lts", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "12.x" + }, + "endOfLifeDate": "2022-05-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "12.13.0", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2022-05-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 12.9", + "value": "12.9", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|12.9", + "isDeprecated": true, + "remoteDebuggingSupported": true, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "12.x" + }, + "endOfLifeDate": "2022-05-01T00:00:00+00:00" + } + } + } + ] + }, + { + "displayText": "Node 10", + "value": "10", + "minorVersions": [ + { + "displayText": "Node 10 LTS", + "value": "10-LTS", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|10-lts", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "10.x" + }, + "endOfLifeDate": "2021-05-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 10.16", + "value": "10.16", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|10.16", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "10.x" + }, + "endOfLifeDate": "2021-05-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 10.15", + "value": "10.15", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "10.15.2", + "isPreview": true, + "isHidden": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "10.x" + }, + "endOfLifeDate": "2021-05-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 10.14", + "value": "10.14", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|10.14", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "10.x" + }, + "endOfLifeDate": "2021-05-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "10.14.1", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "10.x" + }, + "endOfLifeDate": "2021-05-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 10.12", + "value": "10.12", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|10.12", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "10.x" + }, + "endOfLifeDate": "2021-05-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 10.10", + "value": "10.10", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|10.10", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "10.x" + }, + "endOfLifeDate": "2021-05-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "10.0.0", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "10.x" + }, + "endOfLifeDate": "2021-05-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 10.6", + "value": "10.6", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|10.6", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "10.x" + }, + "endOfLifeDate": "2021-05-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "10.6.0", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2021-05-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 10.1", + "value": "10.1", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|10.1", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "10.x" + }, + "endOfLifeDate": "2021-05-01T00:00:00+00:00" + } + } + } + ] + }, + { + "displayText": "Node 9", + "value": "9", + "minorVersions": [ + { + "displayText": "Node 9.4", + "value": "9.4", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|9.4", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2019-07-30T00:00:00+00:00" + } + } + } + ] + }, + { + "displayText": "Node 8", + "value": "8", + "minorVersions": [ + { + "displayText": "Node 8 LTS", + "value": "8-lts", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|8-lts", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 8.12", + "value": "8.12", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|8.12", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 8.11", + "value": "8.11", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|8.11", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "8.11", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 8.10", + "value": "8.10", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "8.10", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 8.9", + "value": "8.9", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|8.9", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "8.9", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 8.8", + "value": "8.8", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|8.8", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 8.5", + "value": "8.5", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "8.5", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 8.4", + "value": "8.4", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "8.4", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 8.2", + "value": "8.2", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|8.2", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 8.1", + "value": "8.1", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|8.1", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "8.1.4", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 8.0", + "value": "8.0", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|8.0", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2020-01-31T00:00:00+00:00" + } + } + } + ] + }, + { + "displayText": "Node 7", + "value": "7", + "minorVersions": [ + { + "displayText": "Node 7.10", + "value": "7.10", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "7.10.1", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2017-07-30T00:00:00+00:00" + } + } + } + ] + }, + { + "displayText": "Node 6", + "value": "6", + "minorVersions": [ + { + "displayText": "Node 6 LTS", + "value": "6-LTS", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|6-lts", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2019-05-30T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 6.12", + "value": "6.12", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "6.12", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2019-05-30T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 6.11", + "value": "6.11", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|6.11", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2019-05-30T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 6.10", + "value": "6.10", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|6.10", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2019-05-30T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 6.9", + "value": "6.9", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|6.9", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2019-05-30T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "6.9.5", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2019-05-30T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 6.6", + "value": "6.6", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|6.6", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2019-05-30T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 6.5", + "value": "6.5", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "6.5.0", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2019-05-30T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 6.2", + "value": "6.2", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|6.2", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2019-05-30T00:00:00+00:00" + } + } + } + ] + }, + { + "displayText": "Node 4", + "value": "4", + "minorVersions": [ + { + "displayText": "Node 4.8", + "value": "4.8", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|4.8", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2018-05-30T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "4.8", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2018-05-30T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 4.5", + "value": "4.5", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|4.5", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2018-05-30T00:00:00+00:00" + } + } + }, + { + "displayText": "Node 4.4", + "value": "4.4", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "NODE|4.4", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true + }, + "endOfLifeDate": "2018-05-30T00:00:00+00:00" + } + } + } + ] + } + ] + } + }, + { + "id": "/providers/Microsoft.Web/locations/webAppStacks/python", + "name": "python", + "type": "Microsoft.Web/locations/webAppStacks", + "location": "westus", + "properties": { + "displayText": "Python", + "value": "python", + "preferredOs": "Linux", + "majorVersions": [ + { + "displayText": "Python 3", + "value": "3", + "minorVersions": [ + { + "displayText": "Python 3.8", + "value": "3.8", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "PYTHON|3.8", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.8" + } + } + } + }, + { + "displayText": "Python 3.7", + "value": "3.7", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "PYTHON|3.7", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.7" + } + } + } + }, + { + "displayText": "Python 3.6", + "value": "3.6", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "PYTHON|3.6", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.6" + } + }, + "windowsRuntimeSettings": { + "runtimeVersion": "3.4.0", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": true + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "3.6" + } + } + } + } + ] + }, + { + "displayText": "Python 2", + "value": "2", + "minorVersions": [ + { + "displayText": "Python 2.7", + "value": "2.7", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "PYTHON|2.7", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "2.7" + }, + "endOfLifeDate": "2020-02-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "2.7.3", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "2.7" + }, + "endOfLifeDate": "2020-02-01T00:00:00+00:00" + } + } + } + ] + } + ] + } + }, + { + "id": "/providers/Microsoft.Web/locations/webAppStacks/php", + "name": "php", + "type": "Microsoft.Web/locations/webAppStacks", + "location": "westus", + "properties": { + "displayText": "PHP", + "value": "php", + "preferredOs": "Linux", + "majorVersions": [ + { + "displayText": "PHP 7", + "value": "7", + "minorVersions": [ + { + "displayText": "PHP 7.4", + "value": "7.4", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "7.4", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2022-12-28T00:00:00+00:00" + }, + "linuxRuntimeSettings": { + "runtimeVersion": "PHP|7.4", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2022-12-28T00:00:00+00:00" + } + } + }, + { + "displayText": "PHP 7.3", + "value": "7.3", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "PHP|7.3", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2022-01-06T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "7.3", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2022-01-06T00:00:00+00:00" + } + } + }, + { + "displayText": "PHP 7.2", + "value": "7.2", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "PHP|7.2", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2020-12-30T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "7.2", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2020-12-30T00:00:00+00:00" + } + } + }, + { + "displayText": "PHP 7.1", + "value": "7.1", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "7.1", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2020-03-01T00:00:00+00:00" + } + } + }, + { + "displayText": "7.0", + "value": "7.0", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "PHP|7.0", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2020-03-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "7.0", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2020-03-01T00:00:00+00:00" + } + } + } + ] + }, + { + "displayText": "PHP 5", + "value": "5", + "minorVersions": [ + { + "displayText": "PHP 5.6", + "value": "5.6", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "PHP|5.6", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2021-03-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "5.6", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2021-03-01T00:00:00+00:00" + } + } + } + ] + } + ] + } + }, + { + "id": "/providers/Microsoft.Web/locations/webAppStacks/ruby", + "name": "ruby", + "type": "Microsoft.Web/locations/webAppStacks", + "location": "westus", + "properties": { + "displayText": "Ruby", + "value": "ruby", + "preferredOs": "Linux", + "majorVersions": [ + { + "displayText": "Ruby 2", + "value": "2", + "minorVersions": [ + { + "displayText": "Ruby 2.6", + "value": "2.6", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "RUBY|2.6", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + } + } + } + }, + { + "displayText": "Ruby 2.6.2", + "value": "2.6.2", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "RUBY|2.6.2", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + } + } + } + }, + { + "displayText": "Ruby 2.5", + "value": "2.5", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "RUBY|2.5", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + } + } + } + }, + { + "displayText": "Ruby 2.5.5", + "value": "2.5.5", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "RUBY|2.5.5", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + } + } + } + }, + { + "displayText": "Ruby 2.4", + "value": "2.4", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "RUBY|2.4", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2020-05-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Ruby 2.4.5", + "value": "2.4.5", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "RUBY|2.4.5", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2020-05-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Ruby 2.3", + "value": "2.3", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "RUBY|2.3", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2019-05-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Ruby 2.3.8", + "value": "2.3.8", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "RUBY|2.3.8", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2019-05-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Ruby 2.3.3", + "value": "2.3.3", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "RUBY|2.3.3", + "remoteDebuggingSupported": false, + "isDeprecated": true, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2019-05-01T00:00:00+00:00" + } + } + } + ] + } + ] + } + }, + { + "id": "/providers/Microsoft.Web/locations/webAppStacks/java", + "name": "java", + "type": "Microsoft.Web/locations/webAppStacks", + "location": "westus", + "properties": { + "displayText": "Java", + "value": "java", + "preferredOs": "Linux", + "majorVersions": [ + { + "displayText": "Java 11", + "value": "11", + "minorVersions": [ + { + "displayText": "Java 11", + "value": "11.0", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "", + "isAutoUpdate": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "11" + }, + "endOfLifeDate": "2026-10-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "11", + "isAutoUpdate": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "11" + }, + "endOfLifeDate": "2026-10-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 11.0.7", + "value": "11.0.7", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "11" + }, + "endOfLifeDate": "2026-10-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "11.0.7", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "11" + }, + "endOfLifeDate": "2026-10-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 11.0.6", + "value": "11.0.6", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "11" + }, + "endOfLifeDate": "2026-10-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "11.0.6", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "11" + }, + "endOfLifeDate": "2026-10-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 11.0.5", + "value": "11.0.5", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "11" + }, + "endOfLifeDate": "2026-10-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "11.0.5_ZULU", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "11" + }, + "endOfLifeDate": "2026-10-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 11.0.3", + "value": "11.0.3", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "11.0.3_ZULU", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "11" + }, + "endOfLifeDate": "2026-10-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 11.0.2", + "value": "11.0.2", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "11.0.2_ZULU", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "11" + }, + "endOfLifeDate": "2026-10-01T00:00:00+00:00" + } + } + } + ] + }, + { + "displayText": "Java 8", + "value": "8", + "minorVersions": [ + { + "displayText": "Java 8", + "value": "8.0", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "", + "isAutoUpdate": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "1.8", + "isAutoUpdate": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.8.0_252", + "value": "8.0.252", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_252", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.8.0_242", + "value": "8.0.242", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_242", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.8.0_232", + "value": "8.0.232", + "stackSettings": { + "linuxRuntimeSettings": { + "runtimeVersion": "", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + }, + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_232_ZULU", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.8.0_212", + "value": "8.0.212", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_212_ZULU", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.8.0_202", + "value": "8.0.202", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_202_ZULU", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.8.0_202 (Oracle)", + "value": "8.0.202 (Oracle)", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_202", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + } + } + } + }, + { + "displayText": "Java 1.8.0_181", + "value": "8.0.181", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_181_ZULU", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.8.0_181 (Oracle)", + "value": "8.0.181 (Oracle)", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_181", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + } + } + } + }, + { + "displayText": "Java 1.8.0_172", + "value": "8.0.172", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_172_ZULU", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.8.0_172 (Oracle)", + "value": "8.0.172 (Oracle)", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_172", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + } + } + } + }, + { + "displayText": "Java 1.8.0_144", + "value": "8.0.144", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_144", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.8.0_111 (Oracle)", + "value": "8.0.111 (Oracle)", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_111", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + } + } + } + }, + { + "displayText": "Java 1.8.0_102", + "value": "8.0.102", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_102", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.8.0_92", + "value": "8.0.92", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_92", + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + }, + "endOfLifeDate": "2025-04-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.8.0_73 (Oracle)", + "value": "8.0.73 (Oracle)", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_73", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + } + } + } + }, + { + "displayText": "Java 1.8.0_60 (Oracle)", + "value": "8.0.60 (Oracle)", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_60", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + } + } + } + }, + { + "displayText": "Java 1.8.0_25 (Oracle)", + "value": "8.0.25 (Oracle)", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.8.0_25", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": true, + "supportedVersion": "8" + } + } + } + } + ] + }, + { + "displayText": "Java 7", + "value": "7", + "minorVersions": [ + { + "displayText": "Java 7", + "value": "7.0", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.7", + "isAutoUpdate": true, + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2023-08-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.7.0_262", + "value": "7.0.262", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.7.0_262_ZULU", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2023-08-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.7.0_242", + "value": "7.0.242", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.7.0_242_ZULU", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2023-08-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.7.0_222", + "value": "7.0.222", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.7.0_222_ZULU", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2023-08-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.7.0_191", + "value": "7.0.191", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.7.0_191_ZULU", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + }, + "endOfLifeDate": "2023-08-01T00:00:00+00:00" + } + } + }, + { + "displayText": "Java 1.7.0_80 (Oracle)", + "value": "7.0.80 (Oracle)", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.7.0_80", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + } + } + } + }, + { + "displayText": "Java 1.7.0_71 (Oracle)", + "value": "7.0.71 (Oracle)", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.7.0_71", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + } + } + } + }, + { + "displayText": "Java 1.7.0_51 (Oracle)", + "value": "7.0.51 (Oracle)", + "stackSettings": { + "windowsRuntimeSettings": { + "runtimeVersion": "1.7.0_51", + "isDeprecated": true, + "remoteDebuggingSupported": false, + "appInsightsSettings": { + "isSupported": false + }, + "gitHubActionSettings": { + "isSupported": false + } + } + } + } + ] + } + ] + } + }, + { + "id": "/providers/Microsoft.Web/locations/webAppStacks/javacontainers", + "name": "javacontainers", + "type": "Microsoft.Web/locations/webAppStacks", + "location": "westus", + "properties": { + "displayText": "Java Containers", + "value": "javacontainers", + "majorVersions": [ + { + "displayText": "Java SE (Embedded Web Server)", + "value": "javase", + "minorVersions": [ + { + "displayText": "Java SE (Embedded Web Server)", + "value": "SE", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "JAVA", + "javaContainerVersion": "SE", + "isAutoUpdate": true + }, + "linuxContainerSettings": { + "java11Runtime": "JAVA|11-java11", + "java8Runtime": "JAVA|8-jre8", + "isAutoUpdate": true + } + } + }, + { + "displayText": "Java SE 11.0.7", + "value": "11.0.7", + "stackSettings": { + "linuxContainerSettings": { + "java11Runtime": "JAVA|11.0.7" + } + } + }, + { + "displayText": "Java SE 11.0.6", + "value": "11.0.6", + "stackSettings": { + "linuxContainerSettings": { + "java11Runtime": "JAVA|11.0.6" + } + } + }, + { + "displayText": "Java SE 11.0.5", + "value": "11.0.5", + "stackSettings": { + "linuxContainerSettings": { + "java11Runtime": "JAVA|11.0.5" + } + } + }, + { + "displayText": "Java SE 8u252", + "value": "1.8.252", + "stackSettings": { + "linuxContainerSettings": { + "java8Runtime": "JAVA|8u252" + } + } + }, + { + "displayText": "Java SE 8u242", + "value": "1.8.242", + "stackSettings": { + "linuxContainerSettings": { + "java8Runtime": "JAVA|8u242" + } + } + }, + { + "displayText": "Java SE 8u232", + "value": "1.8.232", + "stackSettings": { + "linuxContainerSettings": { + "java8Runtime": "JAVA|8u232" + } + } + } + ] + }, + { + "displayText": "JBoss EAP", + "value": "jbosseap", + "minorVersions": [ + { + "displayText": "JBoss EAP 7.2", + "value": "7.2", + "stackSettings": { + "linuxContainerSettings": { + "java8Runtime": "JBOSSEAP|7.2-java8", + "isPreview": true + } + } + } + ] + }, + { + "displayText": "Tomcat 9.0", + "value": "tomcat9.0", + "minorVersions": [ + { + "displayText": "Tomcat 9.0", + "value": "9.0", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "9.0", + "isAutoUpdate": true + }, + "linuxContainerSettings": { + "java11Runtime": "TOMCAT|9.0-java11", + "java8Runtime": "TOMCAT|9.0-jre8", + "isAutoUpdate": true + } + } + }, + { + "displayText": "Tomcat 9.0.37", + "value": "9.0.37", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "9.0.37" + }, + "linuxContainerSettings": { + "java11Runtime": "TOMCAT|9.0.37-java11", + "java8Runtime": "TOMCAT|9.0.37-java8" + } + } + }, + { + "displayText": "Tomcat 9.0.33", + "value": "9.0.33", + "stackSettings": { + "linuxContainerSettings": { + "java11Runtime": "TOMCAT|9.0.33-java11", + "java8Runtime": "TOMCAT|9.0.33-java8" + } + } + }, + { + "displayText": "Tomcat 9.0.31", + "value": "9.0.31", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "9.0.31" + } + } + }, + { + "displayText": "Tomcat 9.0.27", + "value": "9.0.27", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "9.0.27" + } + } + }, + { + "displayText": "Tomcat 9.0.21", + "value": "9.0.21", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "9.0.21" + } + } + }, + { + "displayText": "Tomcat 9.0.20", + "value": "9.0.20", + "stackSettings": { + "linuxContainerSettings": { + "java11Runtime": "TOMCAT|9.0.20-java11", + "java8Runtime": "TOMCAT|9.0.20-java8" + } + } + }, + { + "displayText": "Tomcat 9.0.14", + "value": "9.0.14", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "9.0.14" + } + } + }, + { + "displayText": "Tomcat 9.0.12", + "value": "9.0.12", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "9.0.12" + } + } + }, + { + "displayText": "Tomcat 9.0.8", + "value": "9.0.8", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "9.0.8" + } + } + }, + { + "displayText": "Tomcat 9.0.0", + "value": "9.0.0", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "9.0.0" + } + } + } + ] + }, + { + "displayText": "Tomcat 8.5", + "value": "tomcat8.5", + "minorVersions": [ + { + "displayText": "Tomcat 8.5", + "value": "8.5", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.5", + "isAutoUpdate": true + }, + "linuxContainerSettings": { + "java11Runtime": "TOMCAT|8.5-java11", + "java8Runtime": "TOMCAT|8.5-jre8", + "isAutoUpdate": true + } + } + }, + { + "displayText": "Tomcat 8.5.6", + "value": "8.5.6", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.5.6" + } + } + }, + { + "displayText": "Tomcat 8.5.57", + "value": "8.5.57", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.5.57" + }, + "linuxContainerSettings": { + "java11Runtime": "TOMCAT|8.5.57-java11", + "java8Runtime": "TOMCAT|8.5.57-java8" + } + } + }, + { + "displayText": "Tomcat 8.5.53", + "value": "8.5.53", + "stackSettings": { + "linuxContainerSettings": { + "java11Runtime": "TOMCAT|8.5.53-java11", + "java8Runtime": "TOMCAT|8.5.53-java8" + } + } + }, + { + "displayText": "Tomcat 8.5.51", + "value": "8.5.51", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.5.51" + } + } + }, + { + "displayText": "Tomcat 8.5.47", + "value": "8.5.47", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.5.47" + } + } + }, + { + "displayText": "Tomcat 8.5.42", + "value": "8.5.42", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.5.42" + } + } + }, + { + "displayText": "Tomcat 8.5.41", + "value": "8.5.41", + "stackSettings": { + "linuxContainerSettings": { + "java11Runtime": "TOMCAT|8.5.41-java11", + "java8Runtime": "TOMCAT|8.5.41-java8" + } + } + }, + { + "displayText": "Tomcat 8.5.37", + "value": "8.5.37", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.5.37" + } + } + }, + { + "displayText": "Tomcat 8.5.34", + "value": "8.5.34", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.5.34" + } + } + }, + { + "displayText": "Tomcat 8.5.31", + "value": "8.5.31", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.5.31" + } + } + }, + { + "displayText": "Tomcat 8.5.20", + "value": "8.5.20", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.5.20" + } + } + } + ] + }, + { + "displayText": "Tomcat 8.0", + "value": "tomcat8.0", + "minorVersions": [ + { + "displayText": "Tomcat 8.0", + "value": "8.0", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.0", + "isAutoUpdate": true + } + } + }, + { + "displayText": "Tomcat 8.0.53", + "value": "8.0.53", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.0.53" + } + } + }, + { + "displayText": "Tomcat 8.0.46", + "value": "8.0.46", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.0.46" + } + } + }, + { + "displayText": "Tomcat 8.0.23", + "value": "8.0.23", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "8.0.23" + } + } + } + ] + }, + { + "displayText": "Tomcat 7.0", + "value": "tomcat7.0", + "minorVersions": [ + { + "displayText": "Tomcat 7.0", + "value": "7.0", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "7.0", + "isAutoUpdate": true + } + } + }, + { + "displayText": "Tomcat 7.0.94", + "value": "7.0.94", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "7.0.94" + } + } + }, + { + "displayText": "Tomcat 7.0.81", + "value": "7.0.81", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "7.0.81" + } + } + }, + { + "displayText": "Tomcat 7.0.62", + "value": "7.0.62", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "7.0.62" + } + } + }, + { + "displayText": "Tomcat 7.0.50", + "value": "7.0.50", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "TOMCAT", + "javaContainerVersion": "7.0.50" + } + } + } + ] + }, + { + "displayText": "Jetty 9.3", + "value": "jetty9.3", + "minorVersions": [ + { + "displayText": "Jetty 9.3", + "value": "9.3", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "JETTY", + "javaContainerVersion": "9.3", + "isAutoUpdate": true, + "isDeprecated": true + } + } + }, + { + "displayText": "Jetty 9.3.25", + "value": "9.3.25", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "JETTY", + "javaContainerVersion": "9.3.25", + "isDeprecated": true + } + } + }, + { + "displayText": "Jetty 9.3.13", + "value": "9.3.13", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "JETTY", + "javaContainerVersion": "9.3.13", + "isDeprecated": true + } + } + } + ] + }, + { + "displayText": "Jetty 9.1", + "value": "jetty9.1", + "minorVersions": [ + { + "displayText": "Jetty 9.1", + "value": "9.1", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "JETTY", + "javaContainerVersion": "9.1", + "isAutoUpdate": true, + "isDeprecated": true + } + } + }, + { + "displayText": "Jetty 9.1.0", + "value": "9.1.0", + "stackSettings": { + "windowsContainerSettings": { + "javaContainer": "JETTY", + "javaContainerVersion": "9.1.0", + "isDeprecated": true + } + } + } + ] + }, + { + "displayText": "WildFly 14", + "value": "wildfly14", + "minorVersions": [ + { + "displayText": "WildFly 14", + "value": "14", + "stackSettings": { + "linuxContainerSettings": { + "java8Runtime": "WILDFLY|14-jre8", + "isDeprecated": true, + "isAutoUpdate": true + } + } + }, + { + "displayText": "WildFly 14.0.1", + "value": "14.0.1", + "stackSettings": { + "linuxContainerSettings": { + "isDeprecated": true, + "java8Runtime": "WILDFLY|14.0.1-java8" + } + } + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetWebSiteNetworkTraceOperation.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetWebSiteNetworkTraceOperation.json new file mode 100644 index 000000000000..441f8b4be431 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetWebSiteNetworkTraceOperation.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "name": "SampleApp", + "slot": "Production", + "operationId": "c291433b-53ad-4c49-8cae-0a293eae1c6d", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": [ + { + "path": "D:\\home\\LogFiles\\networktrace\\10.0.0.1_2018_02_01T00_00_00.zip", + "status": "Succeeded", + "message": "Trace file has been saved as D:\\home\\LogFiles\\networktrace\\10.0.0.1_2018_02_01T00_00_00.zip" + } + ] + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/sites/SampleApp/networktraces/current/operationresults/c291433b-53ad-4c49-8cae-0a293eae1c6d", + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/sites/SampleApp/networktraces/current/operationresults/c291433b-53ad-4c49-8cae-0a293eae1c6d" + }, + "body": [ + { + "path": "D:\\home\\LogFiles\\networktrace\\10.0.0.1_2018_02_01T00_00_00.zip", + "status": "Succeeded", + "message": "Trace file has been saved as D:\\home\\LogFiles\\networktrace\\10.0.0.1_2018_02_01T00_00_00.zip" + } + ] + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetWebSiteNetworkTraces.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetWebSiteNetworkTraces.json new file mode 100644 index 000000000000..e1c4c0360465 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/GetWebSiteNetworkTraces.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "name": "SampleApp", + "slot": "Production", + "operationId": "c291433b-53ad-4c49-8cae-0a293eae1c6d", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": [ + { + "path": "D:\\home\\LogFiles\\networktrace\\10.0.0.1_2018_02_01T00_00_00.zip", + "status": "Succeeded", + "message": "Trace file has been saved as D:\\home\\LogFiles\\networktrace\\10.0.0.1_2018_02_01T00_00_00.zip" + } + ] + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/KubeEnvironments_CreateOrUpdate.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/KubeEnvironments_CreateOrUpdate.json new file mode 100644 index 000000000000..af0a5d20999c --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/KubeEnvironments_CreateOrUpdate.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "examplerg", + "name": "testkubeenv", + "api-version": "2021-01-01", + "kind": "kubernetes", + "location": "East US", + "extendedLocation": { + "name": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.ExtendedLocation/customLocations/testcustomlocation", + "type": "customLocation" + }, + "kubeEnvironmentEnvelope": { + "location": "East US", + "properties": { + "staticIp": "1.2.3.4" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.Web/kubeEnvironments/testkubeenv", + "name": "testkubeenv", + "type": "Microsoft.Web/kubeEnvironments", + "location": "East US", + "extendedLocation": { + "name": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.ExtendedLocation/customLocations/testcustomlocation", + "type": "customLocation" + }, + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "deploymentErrors": null, + "internalLoadBalancerEnabled": false, + "defaultDomain": "testkubeenv.k4apps.io", + "staticIp": "1.2.3.4", + "arcConfiguration": null, + "appLogsConfiguration": null, + "aksResourceID": "test" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.Web/kubeEnvironments/testkubeenv", + "name": "testkubeenv", + "type": "Microsoft.Web/kubeEnvironments", + "location": "East US", + "extendedLocation": { + "name": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.ExtendedLocation/customLocations/testcustomlocation", + "type": "customLocation" + }, + "tags": {}, + "properties": { + "provisioningState": "InitializationInProgress", + "deploymentErrors": null, + "internalLoadBalancerEnabled": false, + "defaultDomain": "testkubeenv.k4apps.io", + "staticIp": "1.2.3.4", + "arcConfiguration": null, + "appLogsConfiguration": null, + "aksResourceID": "test" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/KubeEnvironments_Delete.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/KubeEnvironments_Delete.json new file mode 100644 index 000000000000..51810c154f65 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/KubeEnvironments_Delete.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "examplerg", + "name": "examplekenv", + "api-version": "2021-01-01", + "kind": "kubernetes", + "location": "East US", + "extendedLocation": { + "name": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.ExtendedLocation/customLocations/testcustomlocation", + "type": "customLocation" + } + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/KubeEnvironments_Get.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/KubeEnvironments_Get.json new file mode 100644 index 000000000000..273f503f8c1b --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/KubeEnvironments_Get.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9", + "resourceGroupName": "examplerg", + "name": "jlaw-demo1", + "location": "North Central US", + "extendedLocation": { + "name": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.ExtendedLocation/customLocations/testcustomlocation", + "type": "customLocation" + }, + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.Web/kubeEnvironments/jlaw-demo1", + "name": "jlaw-demo1", + "type": "Microsoft.Web/kubeEnvironments", + "location": "North Central US", + "extendedLocation": { + "name": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.ExtendedLocation/customLocations/testcustomlocation", + "type": "customLocation" + }, + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "deploymentErrors": null, + "internalLoadBalancerEnabled": false, + "defaultDomain": "jlaw-demo1.k4apps.io", + "staticIp": "20.42.33.145", + "arcConfiguration": null, + "appLogsConfiguration": null, + "aksResourceID": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.ContainerService/managedClusters/jlaw-demo1" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/KubeEnvironments_ListByResourceGroup.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/KubeEnvironments_ListByResourceGroup.json new file mode 100644 index 000000000000..750c63fdd020 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/KubeEnvironments_ListByResourceGroup.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9", + "resourceGroupName": "examplerg", + "name": "Samplek8se", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.Web/kubeEnvironments/jlaw-demo1", + "name": "jlaw-demo1", + "type": "Microsoft.Web/kubeEnvironments", + "location": "North Central US", + "extendedLocation": { + "name": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.ExtendedLocation/customLocations/testcustomlocation", + "type": "customLocation" + }, + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "deploymentErrors": null, + "internalLoadBalancerEnabled": false, + "defaultDomain": "jlaw-demo1.k4apps.io", + "staticIp": "20.42.33.145", + "arcConfiguration": null, + "appLogsConfiguration": null + } + }, + { + "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.Web/kubeEnvironments/demo1", + "name": "demo1", + "type": "Microsoft.Web/kubeEnvironments", + "location": "North Central US", + "extendedLocation": { + "name": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.ExtendedLocation/customLocations/testcustomlocation", + "type": "customLocation" + }, + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "deploymentErrors": null, + "internalLoadBalancerEnabled": false, + "defaultDomain": "demo1.k4apps.io", + "staticIp": "52.142.21.61", + "arcConfiguration": null, + "appLogsConfiguration": null + } + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/KubeEnvironments_ListBySubscription.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/KubeEnvironments_ListBySubscription.json new file mode 100644 index 000000000000..2d936a81d9d5 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/KubeEnvironments_ListBySubscription.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9", + "resourceGroupName": "examplerg", + "name": "examplekenv", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.Web/kubeEnvironments/jlaw-demo1", + "name": "jlaw-demo1", + "type": "Microsoft.Web/kubeEnvironments", + "location": "North Central US", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "deploymentErrors": null, + "internalLoadBalancerEnabled": false, + "defaultDomain": "jlaw-demo1.k4apps.io", + "staticIp": "20.42.33.145", + "arcConfiguration": null, + "appLogsConfiguration": null + } + }, + { + "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/DemoRG/providers/Microsoft.Web/kubeEnvironments/demo1", + "name": "demo1", + "type": "Microsoft.Web/kubeEnvironments", + "location": "North Central US", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "deploymentErrors": null, + "internalLoadBalancerEnabled": false, + "defaultDomain": "demo1.k4apps.io", + "staticIp": "52.142.21.61", + "arcConfiguration": null, + "appLogsConfiguration": null + } + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/KubeEnvironments_Update.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/KubeEnvironments_Update.json new file mode 100644 index 000000000000..226a39760853 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/KubeEnvironments_Update.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "examplerg", + "name": "testkubeenv", + "api-version": "2021-01-01", + "kind": "kubernetes", + "location": "East US", + "extendedLocation": { + "name": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.ExtendedLocation/customLocations/testcustomlocation", + "type": "customLocation" + }, + "kubeEnvironmentEnvelope": { + "properties": { + "staticIp": "1.2.3.4" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.Web/kubeEnvironments/testkubeenv", + "name": "testkubeenv", + "type": "Microsoft.Web/kubeEnvironments", + "location": "East US", + "extendedLocation": { + "name": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.ExtendedLocation/customLocations/testcustomlocation", + "type": "customLocation" + }, + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "deploymentErrors": null, + "internalLoadBalancerEnabled": false, + "defaultDomain": "testkubeenv.k4apps.io", + "staticIp": "1.2.3.4", + "arcConfiguration": null, + "appLogsConfiguration": null, + "aksResourceID": "test" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.Web/kubeEnvironments/testkubeenv", + "name": "testkubeenv", + "type": "Microsoft.Web/kubeEnvironments", + "location": "East US", + "extendedLocation": { + "name": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.ExtendedLocation/customLocations/testcustomlocation", + "type": "customLocation" + }, + "tags": {}, + "properties": { + "provisioningState": "InitializationInProgress", + "deploymentErrors": null, + "internalLoadBalancerEnabled": false, + "defaultDomain": "testkubeenv.k4apps.io", + "staticIp": "1.2.3.4", + "arcConfiguration": null, + "appLogsConfiguration": null, + "aksResourceID": "test" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListAppServicePlans.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListAppServicePlans.json new file mode 100644 index 000000000000..b1d7932b4df4 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListAppServicePlans.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/serverfarms/testsf6141", + "name": "testsf6141", + "type": "Microsoft.Web/serverfarms", + "kind": "app", + "location": "East US", + "properties": { + "status": "Ready", + "maximumNumberOfWorkers": 20, + "geoRegion": "East US", + "numberOfSites": 4, + "isSpot": false, + "reserved": false, + "targetWorkerCount": 0, + "targetWorkerSizeId": 0, + "provisioningState": "Succeeded" + }, + "sku": { + "name": "P1", + "tier": "Premium", + "size": "P1", + "family": "P", + "capacity": 1 + } + }, + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/serverfarms/testsf7252", + "name": "testsf7252", + "type": "Microsoft.Web/serverfarms", + "kind": "app", + "location": "East US", + "properties": { + "status": "Ready", + "maximumNumberOfWorkers": 20, + "geoRegion": "East US", + "numberOfSites": 4, + "isSpot": false, + "reserved": false, + "targetWorkerCount": 0, + "targetWorkerSizeId": 0, + "provisioningState": "Succeeded" + }, + "sku": { + "name": "P1", + "tier": "Premium", + "size": "P1", + "family": "P", + "capacity": 1 + } + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListAppServicePlansByResourceGroup.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListAppServicePlansByResourceGroup.json new file mode 100644 index 000000000000..61a581970f28 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListAppServicePlansByResourceGroup.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/serverfarms/testsf6141", + "name": "testsf6141", + "type": "Microsoft.Web/serverfarms", + "kind": "app", + "location": "East US", + "properties": { + "status": "Ready", + "maximumNumberOfWorkers": 20, + "geoRegion": "East US", + "numberOfSites": 4, + "isSpot": false, + "reserved": false, + "targetWorkerCount": 0, + "targetWorkerSizeId": 0, + "provisioningState": "Succeeded" + }, + "sku": { + "name": "P1", + "tier": "Premium", + "size": "P1", + "family": "P", + "capacity": 1 + } + }, + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/serverfarms/testsf7252", + "name": "testsf7252", + "type": "Microsoft.Web/serverfarms", + "kind": "app", + "location": "East US", + "properties": { + "status": "Ready", + "maximumNumberOfWorkers": 20, + "geoRegion": "East US", + "numberOfSites": 4, + "isSpot": false, + "reserved": false, + "targetWorkerCount": 0, + "targetWorkerSizeId": 0, + "provisioningState": "Succeeded" + }, + "sku": { + "name": "P1", + "tier": "Premium", + "size": "P1", + "family": "P", + "capacity": 1 + } + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListCertificates.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListCertificates.json new file mode 100644 index 000000000000..c1fd0c7fd644 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListCertificates.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/certificates/testc6282", + "name": "testc6282", + "type": "Microsoft.Web/certificates", + "location": "East US", + "properties": { + "friendlyName": "", + "subjectName": "ServerCert", + "hostNames": [ + "ServerCert" + ], + "issuer": "CACert", + "issueDate": "2015-11-12T23:40:25+00:00", + "expirationDate": "2039-12-31T23:59:59+00:00", + "thumbprint": "FE703D7411A44163B6D32B3AD9B03E175886EBFE" + } + }, + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/certificates/testc4912", + "name": "testc4912", + "type": "Microsoft.Web/certificates", + "location": "West US", + "properties": { + "friendlyName": "", + "subjectName": "ServerCert2", + "hostNames": [ + "ServerCert2" + ], + "issuer": "CACert", + "issueDate": "2015-12-12T23:40:25+00:00", + "expirationDate": "2040-12-31T23:59:59+00:00", + "thumbprint": "FE703D7411A44163B6D32B3AD9B0490D5886EBFE" + } + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListCertificatesByResourceGroup.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListCertificatesByResourceGroup.json new file mode 100644 index 000000000000..339aaee46b2c --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListCertificatesByResourceGroup.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/certificates/testc6282", + "name": "testc6282", + "type": "Microsoft.Web/certificates", + "location": "East US", + "properties": { + "friendlyName": "", + "subjectName": "ServerCert", + "hostNames": [ + "ServerCert" + ], + "issuer": "CACert", + "issueDate": "2015-11-12T23:40:25+00:00", + "expirationDate": "2039-12-31T23:59:59+00:00", + "thumbprint": "FE703D7411A44163B6D32B3AD9B03E175886EBFE" + } + }, + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/certificates/testc4912", + "name": "testc4912", + "type": "Microsoft.Web/certificates", + "location": "West US", + "properties": { + "friendlyName": "", + "subjectName": "ServerCert2", + "hostNames": [ + "ServerCert2" + ], + "issuer": "CACert", + "issueDate": "2015-12-12T23:40:25+00:00", + "expirationDate": "2040-12-31T23:59:59+00:00", + "thumbprint": "FE703D7411A44163B6D32B3AD9B0490D5886EBFE" + } + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListDeletedWebAppsByLocation.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListDeletedWebAppsByLocation.json new file mode 100644 index 000000000000..f487882999d1 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListDeletedWebAppsByLocation.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "location": "West US 2", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "name": "wussite6", + "type": "Microsoft.Web/locations/deletedSites", + "properties": { + "deletedSiteId": 9, + "deletedTimestamp": "2019-05-09T22:29:05.1337007", + "subscription": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroup": "rg1", + "deletedSiteName": "wussite6", + "slot": "Production", + "kind": "app", + "geoRegionName": "West US 2" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListOperations.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListOperations.json new file mode 100644 index 000000000000..2864a3b7a88b --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListOperations.json @@ -0,0 +1,5821 @@ +{ + "parameters": { + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "name": "Microsoft.Web/sites/Read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App", + "operation": "Get Web App", + "description": "Get the properties of a Web App" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/Write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App", + "operation": "Create or Update Web App", + "description": "Create a new Web App or update an existing one" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/slots/Write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App Slot", + "operation": "Create or Update Web App Slot", + "description": "Create a new Web App Slot or update an existing one" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/Delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App", + "operation": "Delete Web App", + "description": "Delete an existing Web App" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/slots/Delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App Slot", + "operation": "Delete Web App Slot", + "description": "Delete an existing Web App Slot" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/slots/config/Read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App Slot", + "operation": "Get Web App Slot Configuration", + "description": "Get Web App Slot's configuration settings" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/config/Read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App", + "operation": "Get Web App Configuration", + "description": "Get Web App configuration settings" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/config/list/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App", + "operation": "List Web App Security Sensitive Settings", + "description": "List Web App's security sensitive settings, such as publishing credentials, app settings and connection strings" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/slots/config/list/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App Slot", + "operation": "List Web App Slot Security Sensitive Settings", + "description": "List Web App Slot's security sensitive settings, such as publishing credentials, app settings and connection strings" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/config/Write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App", + "operation": "Update Web App Configuration", + "description": "Update Web App's configuration settings" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/slots/config/Write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App Slot", + "operation": "Update Web App Slot Configuration", + "description": "Update Web App Slot's configuration settings" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/sourcecontrols/Read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App", + "operation": "Get Web App Source Control Configuration", + "description": "Get Web App's source control configuration settings" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/slots/sourcecontrols/Read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App Slot", + "operation": "Get Web App Slot Source Control Configuration", + "description": "Get Web App Slot's source control configuration settings" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/sourcecontrols/Write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App", + "operation": "Update Web App Source Control Configuration", + "description": "Update Web App's source control configuration settings" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/slots/sourcecontrols/Write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App Slot", + "operation": "Update Web App Slot Source Control Configuration", + "description": "Update Web App Slot's source control configuration settings" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/sourcecontrols/Delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App", + "operation": "Delete Web App Source Control Configuration", + "description": "Delete Web App's source control configuration settings" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/slots/sourcecontrols/Delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App Slot", + "operation": "Delete Web App Slot Source Control Configuration", + "description": "Delete Web App Slot's source control configuration settings" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/backup/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App", + "operation": "Create Web App Backup", + "description": "Create a new web app backup" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/slots/backup/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App Slot", + "operation": "Create Web App Slot Backup", + "description": "Create new Web App Slot backup." + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/backups/Read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App", + "operation": "Get Web App Backup", + "description": "Get the properties of a web app's backup" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/slots/backups/Read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App Slot", + "operation": "List Web App Slot Backups", + "description": "Get the properties of a web app slots' backup" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/publishxml/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App", + "operation": "Get Web App Publishing Profile", + "description": "Get publishing profile xml for a Web App" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/slots/publishxml/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App Slot", + "operation": "Get Web App Slot Publishing Profile", + "description": "Get publishing profile xml for Web App Slot" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/publish/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App", + "operation": "Publish Web App", + "description": "Publish a Web App" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/slots/publish/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App Slot", + "operation": "Publish Web App Slot", + "description": "Publish a Web App Slot" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/restart/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App", + "operation": "Restart Web App", + "description": "Restart a Web App" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/slots/restart/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App Slot", + "operation": "Restart Web App Slot", + "description": "Restart a Web App Slot" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/start/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App", + "operation": "Start Web App", + "description": "Start a Web App" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/slots/start/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App Slot", + "operation": "Start Web App Slot", + "description": "Start a Web App Slot" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/stop/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App", + "operation": "Stop Web App", + "description": "Stop a Web App" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/slots/stop/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App Slot", + "operation": "Stop Web App Slot", + "description": "Stop a Web App Slot" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/slotsswap/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App", + "operation": "Swap Web App Slots", + "description": "Swap Web App deployment slots" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/slots/slotsswap/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App Slot", + "operation": "Swap Web App Slots", + "description": "Swap Web App deployment slots" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/slotsdiffs/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App", + "operation": "Get Web App Slots Differences", + "description": "Get differences in configuration between web app and slots" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/slots/slotsdiffs/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App Slot", + "operation": "Get Web App Slots Differences", + "description": "Get differences in configuration between web app and slots" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/applySlotConfig/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App", + "operation": "Apply Web App Configuration", + "description": "Apply web app slot configuration from target slot to the current web app" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/slots/applySlotConfig/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App Slot", + "operation": "Apply Web App Slot Configuration", + "description": "Apply web app slot configuration from target slot to the current slot." + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/resetSlotConfig/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App", + "operation": "Reset Web App Configuration", + "description": "Reset web app configuration" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/slots/resetSlotConfig/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App Slot", + "operation": "Reset Web App Slot Configuration", + "description": "Reset web app slot configuration" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/slots/Read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App Slot", + "operation": "Get Web App Deployment Slot", + "description": "Get the properties of a Web App deployment slot" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/serverfarms/Read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Plan", + "operation": "Get App Service Plan", + "description": "Get the properties on an App Service Plan" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/serverfarms/Write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Plan", + "operation": "Create or Update App Service Plan", + "description": "Create a new App Service Plan or update an existing one" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/serverfarms/Delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Plan", + "operation": "Delete App Service Plan", + "description": "Delete an existing App Service Plan" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/serverfarms/restartSites/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Plan", + "operation": "Restart Web Apps", + "description": "Restart all Web Apps in an App Service Plan" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/certificates/Read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Certificate", + "operation": "Get Certificates", + "description": "Get the list of certificates." + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/certificates/Write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Certificate", + "operation": "Add or Update Certificate", + "description": "Add a new certificate or update an existing one." + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/certificates/Delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Certificate", + "operation": "Delete Certificate", + "description": "Delete an existing certificate." + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/geoRegions/Read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Geo Region", + "operation": "Get Geo Regions", + "description": "Get the list of Geo regions." + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/listSitesAssignedToHostName/Read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Site Name", + "operation": "Get sites assigned to hostname", + "description": "Get names of sites assigned to hostname." + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/hostingEnvironments/Read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Environment", + "operation": "Get App Service Environment", + "description": "Get the properties of an App Service Environment" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/hostingEnvironments/Write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Environment", + "operation": "Create or Update App Service Environment", + "description": "Create a new App Service Environment or update existing one" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/hostingEnvironments/Delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Environment", + "operation": "Delete App Service Environment", + "description": "Delete an App Service Environment" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/hostingEnvironments/reboot/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Environment", + "operation": "Reboot an App Service Environment", + "description": "Reboot all machines in an App Service Environment" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/hostingEnvironments/multiRolePools/Read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Environment FrontEnd Pool", + "operation": "Get FrontEnd Pool", + "description": "Get the properties of a FrontEnd Pool in an App Service Environment" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/hostingEnvironments/multiRolePools/Write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Environment FrontEnd Pool", + "operation": "Create or Update FrontEnd Pool", + "description": "Create a new FrontEnd Pool in an App Service Environment or update an existing one" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/hostingEnvironments/workerPools/Read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Environment Worker Pool", + "operation": "Get Worker Pool", + "description": "Get the properties of a Worker Pool in an App Service Environment" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/hostingEnvironments/workerPools/Write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Environment Worker Pool", + "operation": "Create or Update Worker Pool", + "description": "Create a new Worker Pool in an App Service Environment or update an existing one" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/connections/Read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Connections", + "operation": "Get Connections", + "description": "Get the list of Connections." + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/connections/Write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Connections", + "operation": "Add or Update Connection", + "description": "Creates or updates a Connection." + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/connections/Delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Connections", + "operation": "Delete Connection", + "description": "Deletes a Connection." + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/connections/Join/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Connections", + "operation": "Join Connection", + "description": "Joins a Connection." + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/connectionGateways/Read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Connection Gateways", + "operation": "Get Connection Gateways", + "description": "Get the list of Connection Gateways." + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/connectionGateways/Write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Connection Gateways", + "operation": "Add or Update Connection Gateways", + "description": "Creates or updates a Connection Gateway." + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/connectionGateways/Delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Connection Gateways", + "operation": "Delete Connection Gateway", + "description": "Deletes a Connection Gateway." + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/connectionGateways/Join/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Connection Gateways", + "operation": "Join Connection Gateway", + "description": "Joins a Connection Gateway." + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/recommendations/Read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Recommendation", + "operation": "Get recommendations", + "description": "Get the list of recommendations for subscriptions." + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/sites/recommendations/Read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Recommendation", + "operation": "Get recommendations for web app", + "description": "Get the list of recommendations for web app." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/availablestacks/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Available Stacks", + "operation": "Get Available Stacks", + "description": "Get Available Stacks." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/functionappstacks/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Function App Stacks", + "operation": "Get Function App Stacks", + "description": "Get Function App Stacks." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/webappstacks/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web App Stacks", + "operation": "Get Web App Stacks", + "description": "Get Web App Stacks." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/checknameavailability/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Check Name Availability", + "operation": "Get Check Name Availability", + "description": "Check if resource name is available." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/classicmobileservices/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Classic Mobile Services", + "operation": "Get Classic Mobile Services", + "description": "Get Classic Mobile Services." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/connections/confirmconsentcode/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Connections", + "operation": "Confirm Connections Consent Code", + "description": "Confirm Connections Consent Code." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/connections/listconsentlinks/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Connections", + "operation": "List Consent Links for Connections", + "description": "List Consent Links for Connections." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/deploymentlocations/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Deployment Locations", + "operation": "Get Deployment Locations", + "description": "Get Deployment Locations." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/hostingenvironments/capacities/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Hosting Environments Capacities", + "operation": "Get Hosting Environments Capacities", + "description": "Get Hosting Environments Capacities." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/hostingenvironments/diagnostics/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Hosting Environments Diagnostics", + "operation": "Get Hosting Environments Diagnostics", + "description": "Get Hosting Environments Diagnostics." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/hostingenvironments/metricdefinitions/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Hosting Environments Metric Definitions", + "operation": "Get Hosting Environments Metric Definitions", + "description": "Get Hosting Environments Metric Definitions." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/hostingenvironments/multirolepools/metricdefinitions/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Hosting Environments MultiRole Pools Metric Definitions", + "operation": "Get Hosting Environments MultiRole Pools Metric Definitions", + "description": "Get Hosting Environments MultiRole Pools Metric Definitions." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/hostingenvironments/multirolepools/metrics/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Hosting Environments MultiRole Pools Metrics", + "operation": "Get Hosting Environments MultiRole Pools Metrics", + "description": "Get Hosting Environments MultiRole Pools Metrics." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/hostingenvironments/multirolepools/skus/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Hosting Environments MultiRole Pools SKUs", + "operation": "Get Hosting Environments MultiRole Pools SKUs", + "description": "Get Hosting Environments MultiRole Pools SKUs." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/hostingenvironments/multirolepools/usages/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Hosting Environments MultiRole Pools Usages", + "operation": "Get Hosting Environments MultiRole Pools Usages", + "description": "Get Hosting Environments MultiRole Pools Usages." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/hostingenvironments/operations/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Hosting Environments Operations", + "operation": "Get Hosting Environments Operations", + "description": "Get Hosting Environments Operations." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/hostingenvironments/resume/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Hosting Environments", + "operation": "Resume Hosting Environments", + "description": "Resume Hosting Environments." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/hostingenvironments/serverfarms/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Hosting Environments App Service Plans", + "operation": "Get Hosting Environments App Service Plans", + "description": "Get Hosting Environments App Service Plans." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/hostingenvironments/sites/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Hosting Environments Web Apps", + "operation": "Get Hosting Environments Web Apps", + "description": "Get Hosting Environments Web Apps." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/hostingenvironments/suspend/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Hosting Environments", + "operation": "Suspend Hosting Environments", + "description": "Suspend Hosting Environments." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/hostingenvironments/usages/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Hosting Environments Usages", + "operation": "Get Hosting Environments Usages", + "description": "Get Hosting Environments Usages." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/hostingenvironments/workerpools/metricdefinitions/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Hosting Environments Workerpools Metric Definitions", + "operation": "Get Hosting Environments Workerpools Metric Definitions", + "description": "Get Hosting Environments Workerpools Metric Definitions." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/hostingenvironments/workerpools/metrics/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Hosting Environments Workerpools Metrics", + "operation": "Get Hosting Environments Workerpools Metrics", + "description": "Get Hosting Environments Workerpools Metrics." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/hostingenvironments/workerpools/skus/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Hosting Environments Workerpools SKUs", + "operation": "Get Hosting Environments Workerpools SKUs", + "description": "Get Hosting Environments Workerpools SKUs." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/hostingenvironments/workerpools/usages/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Hosting Environments Workerpools Usages", + "operation": "Get Hosting Environments Workerpools Usages", + "description": "Get Hosting Environments Workerpools Usages." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/ishostingenvironmentnameavailable/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Hosting Environment Name", + "operation": "Check if Hosting Environment Name is available", + "description": "Get if Hosting Environment Name is available." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/ishostnameavailable/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Hostname", + "operation": "Check if Hostname is Available", + "description": "Check if Hostname is Available." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/isusernameavailable/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Username", + "operation": "Check if Username is available", + "description": "Check if Username is available." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/locations/apioperations/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Locations API Operations", + "operation": "Get Locations API Operations", + "description": "Get Locations API Operations." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/locations/connectiongatewayinstallations/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Locations Connection Gateway Installations", + "operation": "Get Locations Connection Gateway Installations", + "description": "Get Locations Connection Gateway Installations." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/locations/functionappstacks/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Locations Function App Stacks", + "operation": "Get Locations Function App Stacks", + "description": "Get Locations Function App Stacks." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/locations/webappstacks/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Locations Web App Stacks", + "operation": "Get Locations Web App Stacks", + "description": "Get Locations Web App Stacks." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/locations/managedapis/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Locations Managed APIs", + "operation": "Get Locations Managed APIs", + "description": "Get Locations Managed APIs." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/operations/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Operations", + "operation": "Get Operations", + "description": "Get Operations." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/publishingusers/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Publishing Users", + "operation": "Get Publishing Users", + "description": "Get Publishing Users." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/publishingusers/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Publishing Users", + "operation": "Update Publishing Users", + "description": "Update Publishing Users." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/serverfarms/capabilities/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Plans Capabilities", + "operation": "Get App Service Plans Capabilities", + "description": "Get App Service Plans Capabilities." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/serverfarms/firstpartyapps/settings/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Plans First Party Apps Settings", + "operation": "Delete App Service Plans First Party Apps Settings", + "description": "Delete App Service Plans First Party Apps Settings." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/serverfarms/firstpartyapps/settings/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Plans First Party Apps Settings", + "operation": "Get App Service Plans First Party Apps Settings", + "description": "Get App Service Plans First Party Apps Settings." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/serverfarms/firstpartyapps/settings/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Plans First Party Apps Settings", + "operation": "Update App Service Plans First Party Apps Settings", + "description": "Update App Service Plans First Party Apps Settings." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/serverfarms/hybridconnectionnamespaces/relays/sites/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Plans Hybrid Connection Namespaces Relays Web Apps", + "operation": "Get App Service Plans Hybrid Connection Namespaces Relays Web Apps", + "description": "Get App Service Plans Hybrid Connection Namespaces Relays Web Apps." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/serverfarms/hybridconnectionplanlimits/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Plans Hybrid Connection Plan Limits", + "operation": "Get App Service Plans Hybrid Connection Plan Limits", + "description": "Get App Service Plans Hybrid Connection Plan Limits." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/serverfarms/hybridconnectionrelays/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Plans Hybrid Connection Relays", + "operation": "Get App Service Plans Hybrid Connection Relays", + "description": "Get App Service Plans Hybrid Connection Relays." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/serverfarms/metricdefinitions/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Plans Metric Definitions", + "operation": "Get App Service Plans Metric Definitions", + "description": "Get App Service Plans Metric Definitions." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/serverfarms/metrics/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Plans Metrics", + "operation": "Get App Service Plans Metrics", + "description": "Get App Service Plans Metrics." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/serverfarms/operationresults/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Plans Operation Results", + "operation": "Get App Service Plans Operation Results", + "description": "Get App Service Plans Operation Results." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/serverfarms/sites/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Plans Web Apps", + "operation": "Get App Service Plans Web Apps", + "description": "Get App Service Plans Web Apps." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/serverfarms/skus/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Plans SKUs", + "operation": "Get App Service Plans SKUs", + "description": "Get App Service Plans SKUs." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/serverfarms/usages/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Plans Usages", + "operation": "Get App Service Plans Usages", + "description": "Get App Service Plans Usages." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/serverfarms/virtualnetworkconnections/gateways/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Plans Virtual Network Connections Gateways", + "operation": "Update App Service Plans Virtual Network Connections Gateways", + "description": "Update App Service Plans Virtual Network Connections Gateways." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/serverfarms/virtualnetworkconnections/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Plans Virtual Network Connections", + "operation": "Get App Service Plans Virtual Network Connections", + "description": "Get App Service Plans Virtual Network Connections." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/serverfarms/virtualnetworkconnections/routes/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Plans Virtual Network Connections Routes", + "operation": "Delete App Service Plans Virtual Network Connections Routes", + "description": "Delete App Service Plans Virtual Network Connections Routes." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/serverfarms/virtualnetworkconnections/routes/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Plans Virtual Network Connections Routes", + "operation": "Get App Service Plans Virtual Network Connections Routes", + "description": "Get App Service Plans Virtual Network Connections Routes." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/serverfarms/virtualnetworkconnections/routes/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Plans Virtual Network Connections Routes", + "operation": "Update App Service Plans Virtual Network Connections Routes", + "description": "Update App Service Plans Virtual Network Connections Routes." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/serverfarms/workers/reboot/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Plans Workers", + "operation": "Reboot App Service Plans Workers", + "description": "Reboot App Service Plans Workers." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/analyzecustomhostname/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Custom Hostname", + "operation": "Analyze Custom Hostname", + "description": "Analyze Custom Hostname." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/backup/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Backup", + "operation": "Get Web Apps Backup", + "description": "Get Web Apps Backup." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/backup/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Backup", + "operation": "Update Web Apps Backup", + "description": "Update Web Apps Backup." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/backups/list/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Backups", + "operation": "List Web Apps Backups", + "description": "List Web Apps Backups." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/backups/restore/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Backups", + "operation": "Restore Web Apps Backups", + "description": "Restore Web Apps Backups." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/config/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Config", + "operation": "Delete Web Apps Config", + "description": "Delete Web Apps Config." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/continuouswebjobs/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Continuous Web Jobs", + "operation": "Delete Web Apps Continuous Web Jobs", + "description": "Delete Web Apps Continuous Web Jobs." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/continuouswebjobs/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Continuous Web Jobs", + "operation": "Get Web Apps Continuous Web Jobs", + "description": "Get Web Apps Continuous Web Jobs." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/continuouswebjobs/start/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Continuous Web Jobs", + "operation": "Start Web Apps Continuous Web Jobs", + "description": "Start Web Apps Continuous Web Jobs." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/continuouswebjobs/stop/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Continuous Web Jobs", + "operation": "Stop Web Apps Continuous Web Jobs", + "description": "Stop Web Apps Continuous Web Jobs." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/deployments/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Deployments", + "operation": "Delete Web Apps Deployments", + "description": "Delete Web Apps Deployments." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/deployments/log/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Deployments Log", + "operation": "Get Web Apps Deployments Log", + "description": "Get Web Apps Deployments Log." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/deployments/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Deployments", + "operation": "Get Web Apps Deployments", + "description": "Get Web Apps Deployments." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/deployments/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Deployments", + "operation": "Update Web Apps Deployments", + "description": "Update Web Apps Deployments." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/diagnostics/frebanalysis/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Diagnostics FREB Analysis", + "operation": "Get Web Apps Diagnostics FREB Analysis", + "description": "Get Web Apps Diagnostics FREB Analysis." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/diagnostics/frebanalysis/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Diagnostics FREB Analysis", + "operation": "Get Web Apps Slots Diagnostics FREB Analysis", + "description": "Get Web Apps Slots Diagnostics FREB Analysis." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/diagnostics/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Diagnostics Category", + "operation": "Get Web Apps Diagnostics Category", + "description": "Get Web Apps Diagnostics Categories." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/diagnostics/runtimeavailability/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Diagnostics Runtime Availability", + "operation": "Get Web Apps Diagnostics Runtime Availability", + "description": "Get Web Apps Diagnostics Runtime Availability." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/diagnostics/servicehealth/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Diagnostics Service Health", + "operation": "Get Web Apps Diagnostics Service Health", + "description": "Get Web Apps Diagnostics Service Health." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/diagnostics/workeravailability/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Diagnostics Workeravailability", + "operation": "Get Web Apps Diagnostics Workeravailability", + "description": "Get Web Apps Diagnostics Workeravailability." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/diagnostics/workeravailability/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Diagnostics Workeravailability", + "operation": "Get Web Apps Slots Diagnostics Workeravailability", + "description": "Get Web Apps Slots Diagnostics Workeravailability." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/diagnostics/workerprocessrecycle/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Diagnostics Worker Process Recycle", + "operation": "Get Web Apps Diagnostics Worker Process Recycle", + "description": "Get Web Apps Diagnostics Worker Process Recycle." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/diagnostics/workerprocessrecycle/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Diagnostics Worker Process Recycle", + "operation": "Get Web Apps Slots Diagnostics Worker Process Recycle", + "description": "Get Web Apps Slots Diagnostics Worker Process Recycle." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/diagnostics/aspnetcore/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Diagnostics ASP.NET Core", + "operation": "Get Web Apps Diagnostics ASP.NET Core", + "description": "Get Web Apps Diagnostics for ASP.NET Core app." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/diagnostics/aspnetcore/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Diagnostics ASP.NET Core", + "operation": "Get Web Apps Slots Diagnostics ASP.NET Core", + "description": "Get Web Apps Slots Diagnostics for ASP.NET Core app." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/domainownershipidentifiers/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Domain Ownership Identifiers", + "operation": "Get Web Apps Domain Ownership Identifiers", + "description": "Get Web Apps Domain Ownership Identifiers." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/domainownershipidentifiers/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Domain Ownership Identifiers", + "operation": "Update Web Apps Domain Ownership Identifiers", + "description": "Update Web Apps Domain Ownership Identifiers." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/functions/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps", + "operation": "Functions Web Apps", + "description": "Functions Web Apps." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/functions/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Functions", + "operation": "Delete Web Apps Functions", + "description": "Delete Web Apps Functions." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/functions/listsecrets/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Functions", + "operation": "List Secrets Web Apps Functions", + "description": "List Secrets Web Apps Functions." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/functions/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Functions", + "operation": "Get Web Apps Functions", + "description": "Get Web Apps Functions." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/functions/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Functions", + "operation": "Update Web Apps Functions", + "description": "Update Web Apps Functions." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/hostnamebindings/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Hostname Bindings", + "operation": "Delete Web Apps Hostname Bindings", + "description": "Delete Web Apps Hostname Bindings." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/hostnamebindings/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Hostname Bindings", + "operation": "Get Web Apps Hostname Bindings", + "description": "Get Web Apps Hostname Bindings." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/hostnamebindings/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Hostname Bindings", + "operation": "Update Web Apps Hostname Bindings", + "description": "Update Web Apps Hostname Bindings." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/hybridconnection/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Hybrid Connection", + "operation": "Delete Web Apps Hybrid Connection", + "description": "Delete Web Apps Hybrid Connection." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/hybridconnection/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Hybrid Connection", + "operation": "Get Web Apps Hybrid Connection", + "description": "Get Web Apps Hybrid Connection." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/hybridconnection/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Hybrid Connection", + "operation": "Update Web Apps Hybrid Connection", + "description": "Update Web Apps Hybrid Connection." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/hybridconnectionrelays/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Hybrid Connection Relays", + "operation": "Get Web Apps Hybrid Connection Relays", + "description": "Get Web Apps Hybrid Connection Relays." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/instances/deployments/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Instances Deployments", + "operation": "Get Web Apps Instances Deployments", + "description": "Get Web Apps Instances Deployments." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/instances/processes/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Instances Processes", + "operation": "Delete Web Apps Instances Processes", + "description": "Delete Web Apps Instances Processes." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/instances/processes/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Instances Processes", + "operation": "Get Web Apps Instances Processes", + "description": "Get Web Apps Instances Processes." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/instances/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Instances", + "operation": "Get Web Apps Instances", + "description": "Get Web Apps Instances." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/listsyncfunctiontriggerstatus/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps", + "operation": "List Sync Function Trigger Status Web Apps", + "description": "List Sync Function Trigger Status Web Apps." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/metricdefinitions/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Metric Definitions", + "operation": "Get Web Apps Metric Definitions", + "description": "Get Web Apps Metric Definitions." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/metrics/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Metrics", + "operation": "Get Web Apps Metrics", + "description": "Get Web Apps Metrics." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/networktrace/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps", + "operation": "Network Trace Web Apps", + "description": "Network Trace Web Apps." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/newpassword/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps", + "operation": "Newpassword Web Apps", + "description": "Newpassword Web Apps." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/operationresults/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Operation Results", + "operation": "Get Web Apps Operation Results", + "description": "Get Web Apps Operation Results." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/perfcounters/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Performance Counters", + "operation": "Get Web Apps Performance Counters", + "description": "Get Web Apps Performance Counters." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/premieraddons/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Premier Addons", + "operation": "Delete Web Apps Premier Addons", + "description": "Delete Web Apps Premier Addons." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/premieraddons/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Premier Addons", + "operation": "Get Web Apps Premier Addons", + "description": "Get Web Apps Premier Addons." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/premieraddons/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Premier Addons", + "operation": "Update Web Apps Premier Addons", + "description": "Update Web Apps Premier Addons." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/publishxml/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Publishing XML", + "operation": "Get Web Apps Publishing XML", + "description": "Get Web Apps Publishing XML." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/recommendationhistory/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Recommendation History", + "operation": "Get Web Apps Recommendation History", + "description": "Get Web Apps Recommendation History." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/recommendations/disable/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Recommendations", + "operation": "Disable Web Apps Recommendations", + "description": "Disable Web Apps Recommendations." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/restore/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Restore", + "operation": "Get Web Apps Restore", + "description": "Get Web Apps Restore." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/analyzecustomhostname/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Analyze Custom Hostname", + "operation": "Get Web Apps Slots Analyze Custom Hostname", + "description": "Get Web Apps Slots Analyze Custom Hostname." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/backup/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Backup", + "operation": "Update Web Apps Slots Backup", + "description": "Update Web Apps Slots Backup." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/backups/list/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Backups", + "operation": "List Web Apps Slots Backups", + "description": "List Web Apps Slots Backups." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/backups/restore/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Backups", + "operation": "Restore Web Apps Slots Backups", + "description": "Restore Web Apps Slots Backups." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/config/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Config", + "operation": "Delete Web Apps Slots Config", + "description": "Delete Web Apps Slots Config." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/continuouswebjobs/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Continuous Web Jobs", + "operation": "Delete Web Apps Slots Continuous Web Jobs", + "description": "Delete Web Apps Slots Continuous Web Jobs." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/continuouswebjobs/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Continuous Web Jobs", + "operation": "Get Web Apps Slots Continuous Web Jobs", + "description": "Get Web Apps Slots Continuous Web Jobs." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/continuouswebjobs/start/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Continuous Web Jobs", + "operation": "Start Web Apps Slots Continuous Web Jobs", + "description": "Start Web Apps Slots Continuous Web Jobs." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/continuouswebjobs/stop/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Continuous Web Jobs", + "operation": "Stop Web Apps Slots Continuous Web Jobs", + "description": "Stop Web Apps Slots Continuous Web Jobs." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/deployments/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Deployments", + "operation": "Delete Web Apps Slots Deployments", + "description": "Delete Web Apps Slots Deployments." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/deployments/log/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Deployments Log", + "operation": "Get Web Apps Slots Deployments Log", + "description": "Get Web Apps Slots Deployments Log." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/deployments/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Deployments", + "operation": "Get Web Apps Slots Deployments", + "description": "Get Web Apps Slots Deployments." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/deployments/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Deployments", + "operation": "Update Web Apps Slots Deployments", + "description": "Update Web Apps Slots Deployments." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/hostnamebindings/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Hostname Bindings", + "operation": "Delete Web Apps Slots Hostname Bindings", + "description": "Delete Web Apps Slots Hostname Bindings." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/hostnamebindings/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Hostname Bindings", + "operation": "Get Web Apps Slots Hostname Bindings", + "description": "Get Web Apps Slots Hostname Bindings." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/hostnamebindings/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Hostname Bindings", + "operation": "Update Web Apps Slots Hostname Bindings", + "description": "Update Web Apps Slots Hostname Bindings." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/hybridconnection/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Hybrid Connection", + "operation": "Delete Web Apps Slots Hybrid Connection", + "description": "Delete Web Apps Slots Hybrid Connection." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/hybridconnection/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Hybrid Connection", + "operation": "Get Web Apps Slots Hybrid Connection", + "description": "Get Web Apps Slots Hybrid Connection." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/hybridconnection/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Hybrid Connection", + "operation": "Update Web Apps Slots Hybrid Connection", + "description": "Update Web Apps Slots Hybrid Connection." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/instances/deployments/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Instances Deployments", + "operation": "Get Web Apps Slots Instances Deployments", + "description": "Get Web Apps Slots Instances Deployments." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/instances/processes/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Instances Processes", + "operation": "Get Web Apps Slots Instances Processes", + "description": "Get Web Apps Slots Instances Processes." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/instances/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Instances", + "operation": "Get Web Apps Slots Instances", + "description": "Get Web Apps Slots Instances." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/metricdefinitions/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Metric Definitions", + "operation": "Get Web Apps Slots Metric Definitions", + "description": "Get Web Apps Slots Metric Definitions." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/metrics/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Metrics", + "operation": "Get Web Apps Slots Metrics", + "description": "Get Web Apps Slots Metrics." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/newpassword/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots", + "operation": "Newpassword Web Apps Slots", + "description": "Newpassword Web Apps Slots." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/operationresults/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Operation Results", + "operation": "Get Web Apps Slots Operation Results", + "description": "Get Web Apps Slots Operation Results." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/phplogging/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Phplogging", + "operation": "Get Web Apps Slots Phplogging", + "description": "Get Web Apps Slots Phplogging." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/premieraddons/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Premier Addons", + "operation": "Delete Web Apps Slots Premier Addons", + "description": "Delete Web Apps Slots Premier Addons." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/premieraddons/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Premier Addons", + "operation": "Get Web Apps Slots Premier Addons", + "description": "Get Web Apps Slots Premier Addons." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/premieraddons/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Premier Addons", + "operation": "Update Web Apps Slots Premier Addons", + "description": "Update Web Apps Slots Premier Addons." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/restore/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Restore", + "operation": "Get Web Apps Slots Restore", + "description": "Get Web Apps Slots Restore." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/sync/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots", + "operation": "Sync Web Apps Slots", + "description": "Sync Web Apps Slots." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/triggeredwebjobs/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Triggered WebJobs", + "operation": "Delete Web Apps Slots Triggered WebJobs", + "description": "Delete Web Apps Slots Triggered WebJobs." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/triggeredwebjobs/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Triggered WebJobs", + "operation": "Get Web Apps Slots Triggered WebJobs", + "description": "Get Web Apps Slots Triggered WebJobs." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/triggeredwebjobs/run/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Triggered WebJobs", + "operation": "Run Web Apps Slots Triggered WebJobs", + "description": "Run Web Apps Slots Triggered WebJobs." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/usages/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Usages", + "operation": "Get Web Apps Slots Usages", + "description": "Get Web Apps Slots Usages." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/virtualnetworkconnections/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Virtual Network Connections", + "operation": "Delete Web Apps Slots Virtual Network Connections", + "description": "Delete Web Apps Slots Virtual Network Connections." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/virtualnetworkconnections/gateways/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Virtual Network Connections Gateways", + "operation": "Update Web Apps Slots Virtual Network Connections Gateways", + "description": "Update Web Apps Slots Virtual Network Connections Gateways." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/virtualnetworkconnections/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Virtual Network Connections", + "operation": "Get Web Apps Slots Virtual Network Connections", + "description": "Get Web Apps Slots Virtual Network Connections." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/virtualnetworkconnections/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Virtual Network Connections", + "operation": "Update Web Apps Slots Virtual Network Connections", + "description": "Update Web Apps Slots Virtual Network Connections." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/webjobs/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots WebJobs", + "operation": "Get Web Apps Slots WebJobs", + "description": "Get Web Apps Slots WebJobs." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/snapshots/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Snapshots", + "operation": "Get Web Apps Snapshots", + "description": "Get Web Apps Snapshots." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/sync/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps", + "operation": "Sync Web Apps", + "description": "Sync Web Apps." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/triggeredwebjobs/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Triggered WebJobs", + "operation": "Delete Web Apps Triggered WebJobs", + "description": "Delete Web Apps Triggered WebJobs." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/triggeredwebjobs/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Triggered WebJobs", + "operation": "Get Web Apps Triggered WebJobs", + "description": "Get Web Apps Triggered WebJobs." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/triggeredwebjobs/run/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Triggered WebJobs", + "operation": "Run Web Apps Triggered WebJobs", + "description": "Run Web Apps Triggered WebJobs." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/usages/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Usages", + "operation": "Get Web Apps Usages", + "description": "Get Web Apps Usages." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/virtualnetworkconnections/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Virtual Network Connections", + "operation": "Delete Web Apps Virtual Network Connections", + "description": "Delete Web Apps Virtual Network Connections." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/virtualnetworkconnections/gateways/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Virtual Network Connections Gateways", + "operation": "Get Web Apps Virtual Network Connections Gateways", + "description": "Get Web Apps Virtual Network Connections Gateways." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/virtualnetworkconnections/gateways/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Virtual Network Connections Gateways", + "operation": "Update Web Apps Virtual Network Connections Gateways", + "description": "Update Web Apps Virtual Network Connections Gateways." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/virtualnetworkconnections/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Virtual Network Connections", + "operation": "Get Web Apps Virtual Network Connections", + "description": "Get Web Apps Virtual Network Connections." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/virtualnetworkconnections/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Virtual Network Connections", + "operation": "Update Web Apps Virtual Network Connections", + "description": "Update Web Apps Virtual Network Connections." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/webjobs/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps WebJobs", + "operation": "Get Web Apps WebJobs", + "description": "Get Web Apps WebJobs." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/skus/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "SKUs", + "operation": "Get SKUs", + "description": "Get SKUs." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sourcecontrols/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Source Controls", + "operation": "Get Source Controls", + "description": "Get Source Controls." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sourcecontrols/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Source Controls", + "operation": "Update Source Controls", + "description": "Update Source Controls." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/unregister/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Microsoft.Web resource provider", + "operation": "Unregister Microsoft.Web resource provider", + "description": "Unregister Microsoft.Web resource provider for the subscription." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/validate/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "", + "operation": "Validate ", + "description": "Validate ." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/register/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Microsoft.Web resource provider", + "operation": "Register Microsoft.Web resource provider", + "description": "Register Microsoft.Web resource provider for the subscription." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/serverfarms/hybridconnectionnamespaces/relays/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Plans Hybrid Connection Namespaces Relays", + "operation": "Get App Service Plans Hybrid Connection Namespaces Relays", + "description": "Get App Service Plans Hybrid Connection Namespaces Relays." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/backups/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Backups", + "operation": "Delete Web Apps Backups", + "description": "Delete Web Apps Backups." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/hybridconnectionnamespaces/relays/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Hybrid Connection Namespaces Relays", + "operation": "Delete Web Apps Hybrid Connection Namespaces Relays", + "description": "Delete Web Apps Hybrid Connection Namespaces Relays." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/hybridconnectionnamespaces/relays/listkeys/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Hybrid Connection Namespaces Relays", + "operation": "List Keys Web Apps Hybrid Connection Namespaces Relays", + "description": "List Keys Web Apps Hybrid Connection Namespaces Relays." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/hybridconnectionnamespaces/relays/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Hybrid Connection Namespaces Relays", + "operation": "Update Web Apps Hybrid Connection Namespaces Relays", + "description": "Update Web Apps Hybrid Connection Namespaces Relays." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/metricsdefinitions/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Metrics Definitions", + "operation": "Get Web Apps Metrics Definitions", + "description": "Get Web Apps Metrics Definitions." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/migratemysql/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps", + "operation": "Migrate MySql Web Apps", + "description": "Migrate MySql Web Apps." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/migratemysql/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Migrate MySql", + "operation": "Get Web Apps Migrate MySql", + "description": "Get Web Apps Migrate MySql." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/recover/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps", + "operation": "Recover Web Apps", + "description": "Recover Web Apps." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/siteextensions/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Site Extensions", + "operation": "Delete Web Apps Site Extensions", + "description": "Delete Web Apps Site Extensions." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/siteextensions/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Site Extensions", + "operation": "Get Web Apps Site Extensions", + "description": "Get Web Apps Site Extensions." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/siteextensions/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Site Extensions", + "operation": "Update Web Apps Site Extensions", + "description": "Update Web Apps Site Extensions." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/backup/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Backup", + "operation": "Get Web Apps Slots Backup", + "description": "Get Web Apps Slots Backup." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/hybridconnectionrelays/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Hybrid Connection Relays", + "operation": "Get Web Apps Slots Hybrid Connection Relays", + "description": "Get Web Apps Slots Hybrid Connection Relays." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/siteextensions/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Site Extensions", + "operation": "Delete Web Apps Slots Site Extensions", + "description": "Delete Web Apps Slots Site Extensions." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/siteextensions/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Site Extensions", + "operation": "Get Web Apps Slots Site Extensions", + "description": "Get Web Apps Slots Site Extensions." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/siteextensions/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Site Extensions", + "operation": "Update Web Apps Slots Site Extensions", + "description": "Update Web Apps Slots Site Extensions." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/snapshots/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Snapshots", + "operation": "Get Web Apps Slots Snapshots", + "description": "Get Web Apps Slots Snapshots." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/syncfunctiontriggers/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps", + "operation": "Sync Function Triggers for Web Apps", + "description": "Sync Function Triggers for Web Apps." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/triggeredwebjobs/history/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Triggered WebJobs History", + "operation": "Get Web Apps Triggered WebJobs History", + "description": "Get Web Apps Triggered WebJobs History." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/connectiongateways/liststatus/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Connection Gateways", + "operation": "List Status Connection Gateways", + "description": "List Status Connection Gateways." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/serverfarms/hybridconnectionnamespaces/relays/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "App Service Plans Hybrid Connection Namespaces Relays", + "operation": "Delete App Service Plans Hybrid Connection Namespaces Relays", + "description": "Delete App Service Plans Hybrid Connection Namespaces Relays." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/diagnostics/deployment/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Diagnostics Deployment", + "operation": "Get Web Apps Diagnostics Deployment", + "description": "Get Web Apps Diagnostics Deployment." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/diagnostics/sitecpuanalysis/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Diagnostics Site CPU Analysis", + "operation": "Get Web Apps Diagnostics Site CPU Analysis", + "description": "Get Web Apps Diagnostics Site CPU Analysis." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/diagnostics/sitelatency/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Diagnostics Site Latency", + "operation": "Get Web Apps Diagnostics Site Latency", + "description": "Get Web Apps Diagnostics Site Latency." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/diagnostics/sitememoryanalysis/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Diagnostics Site Memory Analysis", + "operation": "Get Web Apps Diagnostics Site Memory Analysis", + "description": "Get Web Apps Diagnostics Site Memory Analysis." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/diagnostics/threadcount/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Diagnostics Thread Count", + "operation": "Get Web Apps Diagnostics Thread Count", + "description": "Get Web Apps Diagnostics Thread Count." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/diagnostics/deployment/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Diagnostics Deployment", + "operation": "Get Web Apps Slots Diagnostics Deployment", + "description": "Get Web Apps Slots Diagnostics Deployment." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/diagnostics/sitecpuanalysis/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Diagnostics Site CPU Analysis", + "operation": "Get Web Apps Slots Diagnostics Site CPU Analysis", + "description": "Get Web Apps Slots Diagnostics Site CPU Analysis." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/diagnostics/sitelatency/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Diagnostics Site Latency", + "operation": "Get Web Apps Slots Diagnostics Site Latency", + "description": "Get Web Apps Slots Diagnostics Site Latency." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/diagnostics/sitememoryanalysis/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Diagnostics Site Memory Analysis", + "operation": "Get Web Apps Slots Diagnostics Site Memory Analysis", + "description": "Get Web Apps Slots Diagnostics Site Memory Analysis." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/diagnostics/threadcount/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Diagnostics Thread Count", + "operation": "Get Web Apps Slots Diagnostics Thread Count", + "description": "Get Web Apps Slots Diagnostics Thread Count." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/functions/masterkey/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Functions Masterkey", + "operation": "Get Web Apps Functions Masterkey", + "description": "Get Web Apps Functions Masterkey." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/hybridconnectionnamespaces/relays/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Hybrid Connection Namespaces Relays", + "operation": "Get Web Apps Hybrid Connection Namespaces Relays", + "description": "Get Web Apps Hybrid Connection Namespaces Relays." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/instances/extensions/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Instances Extensions", + "operation": "Get Web Apps Instances Extensions", + "description": "Get Web Apps Instances Extensions." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/operations/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Operations", + "operation": "Get Web Apps Operations", + "description": "Get Web Apps Operations." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/resourcehealthmetadata/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Resource Health Metadata", + "operation": "Get Web Apps Resource Health Metadata", + "description": "Get Web Apps Resource Health Metadata." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/backups/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Backups", + "operation": "Delete Web Apps Slots Backups", + "description": "Delete Web Apps Slots Backups." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/domainownershipidentifiers/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Domain Ownership Identifiers", + "operation": "Get Web Apps Slots Domain Ownership Identifiers", + "description": "Get Web Apps Slots Domain Ownership Identifiers." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/hybridconnectionnamespaces/relays/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Hybrid Connection Namespaces Relays", + "operation": "Delete Web Apps Slots Hybrid Connection Namespaces Relays", + "description": "Delete Web Apps Slots Hybrid Connection Namespaces Relays." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/hybridconnectionnamespaces/relays/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Hybrid Connection Namespaces Relays", + "operation": "Update Web Apps Slots Hybrid Connection Namespaces Relays", + "description": "Update Web Apps Slots Hybrid Connection Namespaces Relays." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/operations/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Operations", + "operation": "Get Web Apps Slots Operations", + "description": "Get Web Apps Slots Operations." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/perfcounters/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Performance Counters", + "operation": "Get Web Apps Slots Performance Counters", + "description": "Get Web Apps Slots Performance Counters." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/resourcehealthmetadata/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Resource Health Metadata", + "operation": "Get Web Apps Slots Resource Health Metadata", + "description": "Get Web Apps Slots Resource Health Metadata." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/apimanagementaccounts/apiacls/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Api Management Accounts Apiacls", + "operation": "Get Api Management Accounts Apiacls", + "description": "Get Api Management Accounts Apiacls." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/apimanagementaccounts/apis/connections/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Api Management Accounts APIs Connections", + "operation": "Get Api Management Accounts APIs Connections", + "description": "Get Api Management Accounts APIs Connections." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/apimanagementaccounts/apis/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Api Management Accounts APIs", + "operation": "Get Api Management Accounts APIs", + "description": "Get Api Management Accounts APIs." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/apimanagementaccounts/connectionacls/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Api Management Accounts Connectionacls", + "operation": "Get Api Management Accounts Connectionacls", + "description": "Get Api Management Accounts Connectionacls." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/apimanagementaccounts/apis/apiacls/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Api Management Accounts APIs Apiacls", + "operation": "Delete Api Management Accounts APIs Apiacls", + "description": "Delete Api Management Accounts APIs Apiacls." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/apimanagementaccounts/apis/apiacls/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Api Management Accounts APIs Apiacls", + "operation": "Get Api Management Accounts APIs Apiacls", + "description": "Get Api Management Accounts APIs Apiacls." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/apimanagementaccounts/apis/apiacls/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Api Management Accounts APIs Apiacls", + "operation": "Update Api Management Accounts APIs Apiacls", + "description": "Update Api Management Accounts APIs Apiacls." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/apimanagementaccounts/apis/connectionacls/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Api Management Accounts APIs Connectionacls", + "operation": "Get Api Management Accounts APIs Connectionacls", + "description": "Get Api Management Accounts APIs Connectionacls." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/apimanagementaccounts/apis/connections/confirmconsentcode/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Api Management Accounts APIs Connections", + "operation": "Confirm Consent Code Api Management Accounts APIs Connections", + "description": "Confirm Consent Code Api Management Accounts APIs Connections." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/apimanagementaccounts/apis/connections/connectionacls/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Api Management Accounts APIs Connections Connectionacls", + "operation": "Delete Api Management Accounts APIs Connections Connectionacls", + "description": "Delete Api Management Accounts APIs Connections Connectionacls." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/apimanagementaccounts/apis/connections/connectionacls/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Api Management Accounts APIs Connections Connectionacls", + "operation": "Get Api Management Accounts APIs Connections Connectionacls", + "description": "Get Api Management Accounts APIs Connections Connectionacls." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/apimanagementaccounts/apis/connections/connectionacls/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Api Management Accounts APIs Connections Connectionacls", + "operation": "Update Api Management Accounts APIs Connections Connectionacls", + "description": "Update Api Management Accounts APIs Connections Connectionacls." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/apimanagementaccounts/apis/connections/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Api Management Accounts APIs Connections", + "operation": "Delete Api Management Accounts APIs Connections", + "description": "Delete Api Management Accounts APIs Connections." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/apimanagementaccounts/apis/connections/getconsentlinks/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Api Management Accounts APIs Connections", + "operation": "Get Consent Links for Api Management Accounts APIs Connections", + "description": "Get Consent Links for Api Management Accounts APIs Connections." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/apimanagementaccounts/apis/connections/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Api Management Accounts APIs Connections", + "operation": "Update Api Management Accounts APIs Connections", + "description": "Update Api Management Accounts APIs Connections." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/apimanagementaccounts/apis/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Api Management Accounts APIs", + "operation": "Delete Api Management Accounts APIs", + "description": "Delete Api Management Accounts APIs." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/apimanagementaccounts/apis/localizeddefinitions/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Api Management Accounts APIs Localized Definitions", + "operation": "Delete Api Management Accounts APIs Localized Definitions", + "description": "Delete Api Management Accounts APIs Localized Definitions." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/apimanagementaccounts/apis/localizeddefinitions/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Api Management Accounts APIs Localized Definitions", + "operation": "Get Api Management Accounts APIs Localized Definitions", + "description": "Get Api Management Accounts APIs Localized Definitions." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/apimanagementaccounts/apis/localizeddefinitions/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Api Management Accounts APIs Localized Definitions", + "operation": "Update Api Management Accounts APIs Localized Definitions", + "description": "Update Api Management Accounts APIs Localized Definitions." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/apimanagementaccounts/apis/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Api Management Accounts APIs", + "operation": "Update Api Management Accounts APIs", + "description": "Update Api Management Accounts APIs." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/apimanagementaccounts/apis/connections/listconnectionkeys/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Api Management Accounts APIs Connections", + "operation": "List Connection Keys Api Management Accounts APIs Connections", + "description": "List Connection Keys Api Management Accounts APIs Connections." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/apimanagementaccounts/apis/connections/listsecrets/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Api Management Accounts APIs Connections", + "operation": "List Secrets Api Management Accounts APIs Connections", + "description": "List Secrets Api Management Accounts APIs Connections." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/diagnostics/deployments/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Diagnostics Deployments", + "operation": "Get Web Apps Diagnostics Deployments", + "description": "Get Web Apps Diagnostics Deployments." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/diagnostics/deployments/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Diagnostics Deployments", + "operation": "Get Web Apps Slots Diagnostics Deployments", + "description": "Get Web Apps Slots Diagnostics Deployments." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/diagnostics/loganalyzer/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Diagnostics Log Analyzer", + "operation": "Get Web Apps Diagnostics Log Analyzer", + "description": "Get Web Apps Diagnostics Log Analyzer." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/diagnostics/loganalyzer/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Diagnostics Log Analyzer", + "operation": "Get Web Apps Slots Diagnostics Log Analyzer", + "description": "Get Web Apps Slots Diagnostics Log Analyzer." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/diagnostics/sitecrashes/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Diagnostics Site Crashes", + "operation": "Get Web Apps Diagnostics Site Crashes", + "description": "Get Web Apps Diagnostics Site Crashes." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/diagnostics/sitecrashes/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Diagnostics Site Crashes", + "operation": "Get Web Apps Slots Diagnostics Site Crashes", + "description": "Get Web Apps Slots Diagnostics Site Crashes." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/diagnostics/siterestartsettingupdate/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Diagnostics Site Restart Setting Update", + "operation": "Get Web Apps Diagnostics Site Restart Setting Update", + "description": "Get Web Apps Diagnostics Site Restart Setting Update." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/diagnostics/siterestartsettingupdate/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Diagnostics Site Restart Setting Update", + "operation": "Get Web Apps Slots Diagnostics Site Restart Setting Update", + "description": "Get Web Apps Slots Diagnostics Site Restart Setting Update." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/diagnostics/siterestartuserinitiated/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Diagnostics Site Restart User Initiated", + "operation": "Get Web Apps Diagnostics Site Restart User Initiated", + "description": "Get Web Apps Diagnostics Site Restart User Initiated." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/diagnostics/siterestartuserinitiated/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Diagnostics Site Restart User Initiated", + "operation": "Get Web Apps Slots Diagnostics Site Restart User Initiated", + "description": "Get Web Apps Slots Diagnostics Site Restart User Initiated." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/diagnostics/siteswap/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Diagnostics Site Swap", + "operation": "Get Web Apps Diagnostics Site Swap", + "description": "Get Web Apps Diagnostics Site Swap." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/diagnostics/siteswap/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Diagnostics Site Swap", + "operation": "Get Web Apps Slots Diagnostics Site Swap", + "description": "Get Web Apps Slots Diagnostics Site Swap." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/functions/token/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Functions Token", + "operation": "Get Web Apps Functions Token", + "description": "Get Web Apps Functions Token." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/instances/deployments/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Instances Deployments", + "operation": "Delete Web Apps Instances Deployments", + "description": "Delete Web Apps Instances Deployments." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/processes/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Processes", + "operation": "Get Web Apps Processes", + "description": "Get Web Apps Processes." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/publiccertificates/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Public Certificates", + "operation": "Delete Web Apps Public Certificates", + "description": "Delete Web Apps Public Certificates." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/publiccertificates/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Public Certificates", + "operation": "Get Web Apps Public Certificates", + "description": "Get Web Apps Public Certificates." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/publiccertificates/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Public Certificates", + "operation": "Update Web Apps Public Certificates", + "description": "Update Web Apps Public Certificates." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/networktrace/action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots", + "operation": "Network Trace Web Apps Slots", + "description": "Network Trace Web Apps Slots." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/diagnostics/autoheal/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Diagnostics Autoheal", + "operation": "Get Web Apps Diagnostics Autoheal", + "description": "Get Web Apps Diagnostics Autoheal." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/diagnostics/autoheal/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Diagnostics Autoheal", + "operation": "Get Web Apps Slots Diagnostics Autoheal", + "description": "Get Web Apps Slots Diagnostics Autoheal." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/diagnostics/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Diagnostics", + "operation": "Get Web Apps Slots Diagnostics", + "description": "Get Web Apps Slots Diagnostics." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/diagnostics/runtimeavailability/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Diagnostics Runtime Availability", + "operation": "Get Web Apps Slots Diagnostics Runtime Availability", + "description": "Get Web Apps Slots Diagnostics Runtime Availability." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/diagnostics/servicehealth/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Diagnostics Service Health", + "operation": "Get Web Apps Slots Diagnostics Service Health", + "description": "Get Web Apps Slots Diagnostics Service Health." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/diagnostics/sitelatency/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Diagnostics Site Latency", + "operation": "Get Web Apps Slots Diagnostics Site Latency", + "description": "Get Web Apps Slots Diagnostics Site Latency." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/migratemysql/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Migrate MySql", + "operation": "Get Web Apps Slots Migrate MySql", + "description": "Get Web Apps Slots Migrate MySql." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/providers/Microsoft.Insights/diagnosticSettings/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Diagnostic setting for Web App", + "operation": "Read diagnostic setting", + "description": "Gets the diagnostic setting for the resource" + }, + "origin": "system" + }, + { + "name": "microsoft.web/sites/providers/Microsoft.Insights/diagnosticSettings/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Diagnostic setting for Web App", + "operation": "Write diagnostic setting", + "description": "Creates or updates the diagnostic setting for the resource" + }, + "origin": "system" + }, + { + "name": "microsoft.web/sites/slots/providers/Microsoft.Insights/diagnosticSettings/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Diagnostic setting for Web App slot", + "operation": "Read diagnostic setting", + "description": "Gets the diagnostic setting for the resource" + }, + "origin": "system" + }, + { + "name": "microsoft.web/sites/slots/providers/Microsoft.Insights/diagnosticSettings/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Diagnostic setting for Web App slot", + "operation": "Write diagnostic setting", + "description": "Creates or updates the diagnostic setting for the resource" + }, + "origin": "system" + }, + { + "name": "microsoft.web/serverfarms/providers/Microsoft.Insights/diagnosticSettings/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Diagnostic setting for App Service plan", + "operation": "Read diagnostic setting", + "description": "Gets the diagnostic setting for the resource" + }, + "origin": "system" + }, + { + "name": "microsoft.web/serverfarms/providers/Microsoft.Insights/diagnosticSettings/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Diagnostic setting for App Service plan", + "operation": "Write diagnostic setting", + "description": "Creates or updates the diagnostic setting for the resource" + }, + "origin": "system" + }, + { + "name": "microsoft.web/hostingenvironments/providers/Microsoft.Insights/diagnosticSettings/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Diagnostic setting for App Service Environment", + "operation": "Read diagnostic setting", + "description": "Gets the diagnostic setting for the resource" + }, + "origin": "system" + }, + { + "name": "microsoft.web/hostingenvironments/providers/Microsoft.Insights/diagnosticSettings/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Diagnostic setting for App Service Environment", + "operation": "Write diagnostic setting", + "description": "Creates or updates the diagnostic setting for the resource" + }, + "origin": "system" + }, + { + "name": "microsoft.web/billingmeters/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Billing meters for Microsoft Web Apps", + "operation": "Read billing meters", + "description": "Get list of billing meters." + }, + "origin": "system" + }, + { + "name": "microsoft.web/sites/slots/instances/processes/delete", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Instances Processes", + "operation": "Delete Web Apps Slots Instances Processes", + "description": "Delete Web Apps Slots Instances Processes." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/restore/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps", + "operation": "Restore Web Apps", + "description": "Restore Web Apps." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/instances/extensions/log/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Instances Extensions Log", + "operation": "Get Web Apps Instances Extensions Log", + "description": "Get Web Apps Instances Extensions Log." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/customapis/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Custom APIs", + "operation": "Update Custom APIs", + "description": "Update Custom APIs." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/customapis/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Custom APIs", + "operation": "Get Custom APIs", + "description": "Get Custom APIs." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/diagnostics/failedrequestsperuri/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Diagnostics Failed Requests Per Uri", + "operation": "Get Web Apps Diagnostics Failed Requests Per Uri", + "description": "Get Web Apps Diagnostics Failed Requests Per Uri." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/restore/write", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots", + "operation": "Restore Web Apps Slots", + "description": "Restore Web Apps Slots." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/diagnostics/detectors/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Diagnostics Detector", + "operation": "Get Web Apps Diagnostics Detector", + "description": "Get Web Apps Diagnostics Detector." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/diagnostics/analyses/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Diagnostics Analysis", + "operation": "Get Web Apps Diagnostics Analysis", + "description": "Get Web Apps Diagnostics Analysis." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/diagnostics/analyses/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Diagnostics Analysis", + "operation": "Get Web Apps Slots Diagnostics Analysis", + "description": "Get Web Apps Slots Diagnostics Analysis." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/diagnostics/detectors/read", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Diagnostics Detector", + "operation": "Get Web Apps Slots Diagnostics Detector", + "description": "Get Web Apps Slots Diagnostics Detector." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/diagnostics/analyses/execute/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Diagnostics Analysis", + "operation": "Run Web Apps Diagnostics Analysis", + "description": "Run Web Apps Diagnostics Analysis." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/diagnostics/detectors/execute/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Diagnostics Detector", + "operation": "Run Web Apps Diagnostics Detector", + "description": "Run Web Apps Diagnostics Detector." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/diagnostics/analyses/execute/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Diagnostics Analysis", + "operation": "Run Web Apps Slots Diagnostics Analysis", + "description": "Run Web Apps Slots Diagnostics Analysis." + }, + "origin": "user,system" + }, + { + "name": "microsoft.web/sites/slots/diagnostics/detectors/execute/Action", + "display": { + "provider": "Microsoft Web Apps", + "resource": "Web Apps Slots Diagnostics Detector", + "operation": "Run Web Apps Slots Diagnostics Detector", + "description": "Run Web Apps Slots Diagnostics Detector." + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Web/serverfarms/providers/Microsoft.Insights/metricDefinitions/Read", + "display": { + "provider": "Microsoft.Web", + "resource": "The metric definition of App Service Plan", + "operation": "Read App Service Plan metric definitions", + "description": "Gets the available metrics for App Service Plan" + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "metricSpecifications": [ + { + "name": "CpuPercentage", + "displayName": "CPU Percentage", + "displayDescription": "CPU Percentage", + "unit": "Percent", + "aggregationType": "Average", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "MemoryPercentage", + "displayName": "Memory Percentage", + "displayDescription": "Memory Percentage", + "unit": "Percent", + "aggregationType": "Average", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "DiskQueueLength", + "displayName": "Disk Queue Length", + "displayDescription": "Disk Queue Length", + "unit": "Count", + "aggregationType": "Average", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "HttpQueueLength", + "displayName": "Http Queue Length", + "displayDescription": "Http Queue Length", + "unit": "Count", + "aggregationType": "Average", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "BytesReceived", + "displayName": "Data In", + "displayDescription": "Data In", + "unit": "Bytes", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "BytesSent", + "displayName": "Data Out", + "displayDescription": "Data Out", + "unit": "Bytes", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + } + ] + } + } + }, + { + "name": "Microsoft.Web/sites/providers/Microsoft.Insights/metricDefinitions/Read", + "display": { + "provider": "Microsoft.Web", + "resource": "The metric definition of Web App", + "operation": "Read Web App metric definitions", + "description": "Gets the available metrics for Web App" + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "metricSpecifications": [ + { + "name": "CpuTime", + "displayName": "CPU Time", + "displayDescription": "CPU Time", + "unit": "Seconds", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Requests", + "displayName": "Requests", + "displayDescription": "Requests", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "BytesReceived", + "displayName": "Data In", + "displayDescription": "Data In", + "unit": "Bytes", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "BytesSent", + "displayName": "Data Out", + "displayDescription": "Data Out", + "unit": "Bytes", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Http101", + "displayName": "Http 101", + "displayDescription": "Http 101", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Http2xx", + "displayName": "Http 2xx", + "displayDescription": "Http 2xx", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Http3xx", + "displayName": "Http 3xx", + "displayDescription": "Http 3xx", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Http401", + "displayName": "Http 401", + "displayDescription": "Http 401", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Http403", + "displayName": "Http 403", + "displayDescription": "Http 403", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Http404", + "displayName": "Http 404", + "displayDescription": "Http 404", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Http406", + "displayName": "Http 406", + "displayDescription": "Http 406", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Http4xx", + "displayName": "Http 4xx", + "displayDescription": "Http 4xx", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Http5xx", + "displayName": "Http Server Errors", + "displayDescription": "Http Server Errors", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "MemoryWorkingSet", + "displayName": "Memory working set", + "displayDescription": "Memory working set", + "unit": "Bytes", + "aggregationType": "Average", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "AverageMemoryWorkingSet", + "displayName": "Average memory working set", + "displayDescription": "Average memory working set", + "unit": "Bytes", + "aggregationType": "Average", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "AverageResponseTime", + "displayName": "Average Response Time", + "displayDescription": "Average Response Time", + "unit": "Seconds", + "aggregationType": "Average", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "FunctionExecutionUnits", + "displayName": "Function Execution Units", + "displayDescription": "Function Execution Units", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "(?i:functionapp)", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "FunctionExecutionCount", + "displayName": "Function Execution Count", + "displayDescription": "Function Execution Count", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "(?i:functionapp)", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + } + ] + } + } + }, + { + "name": "Microsoft.Web/sites/slots/providers/Microsoft.Insights/metricDefinitions/Read", + "display": { + "provider": "Microsoft.Web", + "resource": "The metric definition of Web App Slot", + "operation": "Read Web App Slot metric definitions", + "description": "Gets the available metrics for Web App Slot" + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "metricSpecifications": [ + { + "name": "CpuTime", + "displayName": "CPU Time", + "displayDescription": "CPU Time", + "unit": "Seconds", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Requests", + "displayName": "Requests", + "displayDescription": "Requests", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "BytesReceived", + "displayName": "Data In", + "displayDescription": "Data In", + "unit": "Bytes", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "BytesSent", + "displayName": "Data Out", + "displayDescription": "Data Out", + "unit": "Bytes", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Http101", + "displayName": "Http 101", + "displayDescription": "Http 101", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Http2xx", + "displayName": "Http 2xx", + "displayDescription": "Http 2xx", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Http3xx", + "displayName": "Http 3xx", + "displayDescription": "Http 3xx", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Http401", + "displayName": "Http 401", + "displayDescription": "Http 401", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Http403", + "displayName": "Http 403", + "displayDescription": "Http 403", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Http404", + "displayName": "Http 404", + "displayDescription": "Http 404", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Http406", + "displayName": "Http 406", + "displayDescription": "Http 406", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Http4xx", + "displayName": "Http 4xx", + "displayDescription": "Http 4xx", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Http5xx", + "displayName": "Http Server Errors", + "displayDescription": "Http Server Errors", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "MemoryWorkingSet", + "displayName": "Memory working set", + "displayDescription": "Memory working set", + "unit": "Bytes", + "aggregationType": "Average", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "AverageMemoryWorkingSet", + "displayName": "Average memory working set", + "displayDescription": "Average memory working set", + "unit": "Bytes", + "aggregationType": "Average", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "AverageResponseTime", + "displayName": "Average Response Time", + "displayDescription": "Average Response Time", + "unit": "Seconds", + "aggregationType": "Average", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^(?!functionapp).*$", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "FunctionExecutionUnits", + "displayName": "Function Execution Units", + "displayDescription": "Function Execution Units", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "(?i:functionapp)", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "FunctionExecutionCount", + "displayName": "Function Execution Count", + "displayDescription": "Function Execution Count", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "metricFilterPattern": "(?i:functionapp)", + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + } + ] + } + } + }, + { + "name": "Microsoft.Web/hostingEnvironments/multiRolePools/providers/Microsoft.Insights/metricDefinitions/Read", + "display": { + "provider": "Microsoft.Web", + "resource": "The metric definition of App Service Environment MultiRole", + "operation": "Read App Service Environment MultiRole metric definitions", + "description": "Gets the available metrics for App Service Environment MultiRole" + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "metricSpecifications": [ + { + "name": "Requests", + "displayName": "Requests", + "displayDescription": "Requests", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "BytesReceived", + "displayName": "Data In", + "displayDescription": "Data In", + "unit": "Bytes", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "BytesSent", + "displayName": "Data Out", + "displayDescription": "Data Out", + "unit": "Bytes", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Http101", + "displayName": "Http 101", + "displayDescription": "Http 101", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Http2xx", + "displayName": "Http 2xx", + "displayDescription": "Http 2xx", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Http3xx", + "displayName": "Http 3xx", + "displayDescription": "Http 3xx", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Http401", + "displayName": "Http 401", + "displayDescription": "Http 401", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Http403", + "displayName": "Http 403", + "displayDescription": "Http 403", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Http404", + "displayName": "Http 404", + "displayDescription": "Http 404", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Http406", + "displayName": "Http 406", + "displayDescription": "Http 406", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Http4xx", + "displayName": "Http 4xx", + "displayDescription": "Http 4xx", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "Http5xx", + "displayName": "Http Server Errors", + "displayDescription": "Http Server Errors", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "AverageResponseTime", + "displayName": "Average Response Time", + "displayDescription": "Average Response Time", + "unit": "Seconds", + "aggregationType": "Average", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "CpuPercentage", + "displayName": "CPU Percentage", + "displayDescription": "CPU Percentage", + "unit": "Percent", + "aggregationType": "Average", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "MemoryPercentage", + "displayName": "Memory Percentage", + "displayDescription": "Memory Percentage", + "unit": "Percent", + "aggregationType": "Average", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "DiskQueueLength", + "displayName": "Disk Queue Length", + "displayDescription": "Disk Queue Length", + "unit": "Count", + "aggregationType": "Average", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "HttpQueueLength", + "displayName": "Http Queue Length", + "displayDescription": "Http Queue Length", + "unit": "Count", + "aggregationType": "Average", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "ActiveRequests", + "displayName": "Active Requests", + "displayDescription": "Active Requests", + "unit": "Count", + "aggregationType": "Total", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "dimensions": [ + { + "name": "Instance", + "displayName": "Instance", + "internalName": "ServerName", + "toBeExportedForShoebox": true + } + ], + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "TotalFrontEnds", + "displayName": "Total Front Ends", + "displayDescription": "Total Front Ends", + "unit": "Count", + "aggregationType": "Average", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "SmallAppServicePlanInstances", + "displayName": "Small App Service Plan Workers", + "displayDescription": "Small App Service Plan Workers", + "unit": "Count", + "aggregationType": "Average", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "MediumAppServicePlanInstances", + "displayName": "Medium App Service Plan Workers", + "displayDescription": "Medium App Service Plan Workers", + "unit": "Count", + "aggregationType": "Average", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "LargeAppServicePlanInstances", + "displayName": "Large App Service Plan Workers", + "displayDescription": "Large App Service Plan Workers", + "unit": "Count", + "aggregationType": "Average", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + } + ] + } + } + }, + { + "name": "Microsoft.Web/hostingEnvironments/workerPools/providers/Microsoft.Insights/metricDefinitions/Read", + "display": { + "provider": "Microsoft.Web", + "resource": "The metric definition of App Service Environment WorkerPool", + "operation": "Read App Service Environment WorkerPool metric definitions", + "description": "Gets the available metrics for App Service Environment WorkerPool" + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "metricSpecifications": [ + { + "name": "WorkersTotal", + "displayName": "Total Workers", + "displayDescription": "Total Workers", + "unit": "Count", + "aggregationType": "Average", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "WorkersAvailable", + "displayName": "Available Workers", + "displayDescription": "Available Workers", + "unit": "Count", + "aggregationType": "Average", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + }, + { + "name": "WorkersUsed", + "displayName": "Used Workers", + "displayDescription": "Used Workers", + "unit": "Count", + "aggregationType": "Average", + "supportsInstanceLevelAggregation": false, + "enableRegionalMdmAccount": false, + "fillGapWithZero": true, + "isInternal": false, + "availabilities": [ + { + "timeGrain": "PT1M", + "blobDuration": "P2D" + }, + { + "timeGrain": "PT1H", + "blobDuration": "P30D" + }, + { + "timeGrain": "P1D", + "blobDuration": "P90D" + } + ] + } + ] + } + } + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListPublishingCredentialsPolicies.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListPublishingCredentialsPolicies.json new file mode 100644 index 000000000000..18d7b8bb7072 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListPublishingCredentialsPolicies.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testSite", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "ftp": { + "properties": { + "allow": false + } + }, + "scm": { + "properties": { + "allow": false + } + } + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListPublishingCredentialsPoliciesSlot.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListPublishingCredentialsPoliciesSlot.json new file mode 100644 index 000000000000..44ead02a2fe5 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListPublishingCredentialsPoliciesSlot.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testSite", + "slot": "stage", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "ftp": { + "properties": { + "allow": false + } + }, + "scm": { + "properties": { + "allow": false + } + } + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListResourceHealthMetadataByResourceGroup.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListResourceHealthMetadataByResourceGroup.json new file mode 100644 index 000000000000..a2f37881e5ad --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListResourceHealthMetadataByResourceGroup.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2021-01-01", + "resourceGroupName": "Default-Web-NorthCentralUS", + "subscriptionId": "4adb32ad-8327-4cbb-b775-b84b4465bb38" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "category": "Shared", + "signalAvailability": true + }, + "id": "/subscriptions/4adb32ad-8327-4cbb-b775-b84b4465bb38/resourceGroups/Default-Web-NorthCentralUS/providers/Microsoft.Web/sites/newsiteinnewASE-NCUS/resourceHealthMetadata/default", + "name": "default", + "type": "Microsoft.Web/sites/resourceHealthMetadata" + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListResourceHealthMetadataBySite.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListResourceHealthMetadataBySite.json new file mode 100644 index 000000000000..a787acacf982 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListResourceHealthMetadataBySite.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2021-01-01", + "name": "newsiteinnewASE-NCUS", + "slot": "Production", + "resourceGroupName": "Default-Web-NorthCentralUS", + "subscriptionId": "4adb32ad-8327-4cbb-b775-b84b4465bb38" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "category": "Shared", + "signalAvailability": true + }, + "id": "/subscriptions/4adb32ad-8327-4cbb-b775-b84b4465bb38/resourceGroups/Default-Web-NorthCentralUS/providers/Microsoft.Web/sites/newsiteinnewASE-NCUS/resourceHealthMetadata/default", + "name": "default", + "type": "Microsoft.Web/sites/resourceHealthMetadata" + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListResourceHealthMetadataBySubscription.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListResourceHealthMetadataBySubscription.json new file mode 100644 index 000000000000..b98e7da3d6be --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListResourceHealthMetadataBySubscription.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2021-01-01", + "subscriptionId": "4adb32ad-8327-4cbb-b775-b84b4465bb38" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "category": "Shared", + "signalAvailability": true + }, + "id": "/subscriptions/4adb32ad-8327-4cbb-b775-b84b4465bb38/resourceGroups/Default-Web-NorthCentralUS/providers/Microsoft.Web/sites/newsiteinnewASE-NCUS/resourceHealthMetadata/default", + "name": "default", + "type": "Microsoft.Web/sites/resourceHealthMetadata" + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListSlotBackups.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListSlotBackups.json new file mode 100644 index 000000000000..431b6f2f3d88 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListSlotBackups.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "name": "tests346", + "slot": "staging", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/sites/tests346/slot/staging", + "name": "tests346/staging", + "type": "Microsoft.Web/sites/slots", + "properties": { + "storageAccountUrl": "https://blobstorage.windows.net", + "blobName": "blob1", + "status": "InProgress" + } + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListStaticSiteAppSettings.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListStaticSiteAppSettings.json new file mode 100644 index 000000000000..a2fd2f4f6aa6 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListStaticSiteAppSettings.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "setting0": "someVal" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListStaticSiteBuildAppSettings.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListStaticSiteBuildAppSettings.json new file mode 100644 index 000000000000..772ffb6c9b11 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListStaticSiteBuildAppSettings.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "environmentName": "12", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "setting0": "someVal" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListStaticSiteBuildFunctionAppSettings.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListStaticSiteBuildFunctionAppSettings.json new file mode 100644 index 000000000000..772ffb6c9b11 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListStaticSiteBuildFunctionAppSettings.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "environmentName": "12", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "setting0": "someVal" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListStaticSiteBuildFunctions.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListStaticSiteBuildFunctions.json new file mode 100644 index 000000000000..e9b8baeea81f --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListStaticSiteBuildFunctions.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "environmentName": "default", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "properties": { + "functionName": "GetList", + "triggerType": "HttpTrigger" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListStaticSiteConfiguredRoles.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListStaticSiteConfiguredRoles.json new file mode 100644 index 000000000000..eb38b6260343 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListStaticSiteConfiguredRoles.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": [ + "authenticated", + "anonymous", + "customRole1" + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListStaticSiteFunctionAppSettings.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListStaticSiteFunctionAppSettings.json new file mode 100644 index 000000000000..a2fd2f4f6aa6 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListStaticSiteFunctionAppSettings.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "setting0": "someVal" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListStaticSiteFunctions.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListStaticSiteFunctions.json new file mode 100644 index 000000000000..da880a74b11e --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListStaticSiteFunctions.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "properties": { + "functionName": "GetList", + "triggerType": "HttpTrigger" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListStaticSiteSecrets.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListStaticSiteSecrets.json new file mode 100644 index 000000000000..aeb4c0493bbd --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListStaticSiteSecrets.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "dnsOwnershipKey": "ownershipKey123123" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListStaticSiteUsers.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListStaticSiteUsers.json new file mode 100644 index 000000000000..63fadb1725ad --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ListStaticSiteUsers.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "authprovider": "all", + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "properties": { + "provider": "aad", + "userId": "1234", + "displayName": "username", + "roles": "admin,anonymous,authenticated" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/PatchAppServicePlan.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/PatchAppServicePlan.json new file mode 100644 index 000000000000..6620679d9b53 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/PatchAppServicePlan.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "name": "testsf6141", + "api-version": "2021-01-01", + "appServicePlan": { + "kind": "app", + "properties": {} + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/serverfarms/testsf6141", + "name": "testsf6141", + "type": "Microsoft.Web/serverfarms", + "kind": "app", + "location": "East US", + "properties": { + "status": "Ready", + "maximumNumberOfWorkers": 20, + "geoRegion": "East US", + "numberOfSites": 4, + "reserved": false, + "targetWorkerCount": 0, + "targetWorkerSizeId": 0, + "provisioningState": "Succeeded" + }, + "sku": { + "name": "P1", + "tier": "Premium", + "size": "P1", + "family": "P", + "capacity": 1 + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/serverfarms/testsf6141/operationresults/F0C6B8EC-0D53-432C-913B-1CD9E8CDE3A0", + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/serverfarms/testsf6141/operationresults/F0C6B8EC-0D53-432C-913B-1CD9E8CDE3A0" + }, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/serverfarms/testsf6141", + "name": "testsf6141", + "type": "Microsoft.Web/serverfarms", + "kind": "app", + "location": "East US", + "properties": { + "status": "Ready", + "maximumNumberOfWorkers": 20, + "geoRegion": "East US", + "numberOfSites": 4, + "isSpot": false, + "reserved": false, + "targetWorkerCount": 0, + "targetWorkerSizeId": 0, + "provisioningState": "Succeeded" + }, + "sku": { + "name": "P1", + "tier": "Premium", + "size": "P1", + "family": "P", + "capacity": 1 + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/PatchCertificate.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/PatchCertificate.json new file mode 100644 index 000000000000..f03c305e9ab7 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/PatchCertificate.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "name": "testc6282", + "api-version": "2021-01-01", + "certificateEnvelope": { + "properties": { + "password": "" + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/certificates/testc6282", + "name": "testc6282", + "type": "Microsoft.Web/certificates", + "location": "East US", + "properties": { + "friendlyName": "", + "subjectName": "ServerCert", + "hostNames": [ + "ServerCert" + ], + "issuer": "CACert", + "issueDate": "2015-11-12T23:40:25+00:00", + "expirationDate": "2039-12-31T23:59:59+00:00", + "thumbprint": "FE703D7411A44163B6D32B3AD9B03E175886EBFE" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/PatchStaticSite.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/PatchStaticSite.json new file mode 100644 index 000000000000..62affe4ca196 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/PatchStaticSite.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2021-01-01", + "staticSiteEnvelope": { + "properties": {} + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Web/staticSites/testStaticSite0", + "name": "testStaticSite0", + "type": "Microsoft.Web/staticSites", + "location": "West US 2", + "properties": { + "defaultHostname": "happy-sea-15afae3e.azurestaticwebsites.net", + "repositoryUrl": "https://github.com/username/RepoName", + "branch": "demo", + "customDomains": [], + "privateEndpointConnections": [], + "contentDistributionEndpoint": "", + "keyVaultReferenceIdentity": "SystemAssigned", + "userProvidedFunctionApps": [], + "stagingEnvironmentPolicy": "Enabled", + "allowConfigFileUpdates": true + }, + "sku": { + "name": "Basic", + "tier": "Basic" + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + }, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Web/staticSites/testStaticSite0", + "name": "testStaticSite0", + "type": "Microsoft.Web/staticSites", + "location": "West US 2", + "properties": { + "defaultHostname": "happy-sea-15afae3e.azurestaticwebsites.net", + "repositoryUrl": "https://github.com/username/RepoName", + "branch": "demo", + "customDomains": [], + "privateEndpointConnections": [], + "contentDistributionEndpoint": "", + "keyVaultReferenceIdentity": "SystemAssigned", + "userProvidedFunctionApps": [], + "stagingEnvironmentPolicy": "Enabled", + "allowConfigFileUpdates": true + }, + "sku": { + "name": "Basic", + "tier": "Basic" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/RegisterUserProvidedFunctionAppWithStaticSite.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/RegisterUserProvidedFunctionAppWithStaticSite.json new file mode 100644 index 000000000000..f0d796953f49 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/RegisterUserProvidedFunctionAppWithStaticSite.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "functionAppName": "testFunctionApp", + "isForced": "true", + "api-version": "2021-01-01", + "staticSiteUserProvidedFunctionEnvelope": { + "properties": { + "functionAppResourceId": "/subscription/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/functionRG/providers/Microsoft.Web/sites/testFunctionApp", + "functionAppRegion": "West US 2" + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Web/staticSites/testStaticSite0/builds/default/userProvidedFunctionApps/testFunctionApp", + "name": "testFunctionApp", + "type": "Microsoft.Web/staticSites/builds/userProvidedFunctionApps", + "properties": { + "functionAppResourceId": "/subscription/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/functionRG/providers/Microsoft.Web/sites/testFunctionApp", + "functionAppRegion": "West US 2", + "createdOn": "2020-03-04T17:33:11.641Z" + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + }, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Web/staticSites/testStaticSite0/builds/default/userProvidedFunctionApps/testFunctionApp", + "name": "testFunctionApp", + "type": "Microsoft.Web/staticSites/builds/userProvidedFunctionApps", + "properties": { + "functionAppResourceId": "/subscription/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/functionRG/providers/Microsoft.Web/sites/testFunctionApp", + "functionAppRegion": "West US 2", + "createdOn": "2020-03-04T17:33:11.641Z" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/RegisterUserProvidedFunctionAppWithStaticSiteBuild.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/RegisterUserProvidedFunctionAppWithStaticSiteBuild.json new file mode 100644 index 000000000000..13449fde5221 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/RegisterUserProvidedFunctionAppWithStaticSiteBuild.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "environmentName": "default", + "functionAppName": "testFunctionApp", + "isForced": "true", + "api-version": "2021-01-01", + "staticSiteUserProvidedFunctionEnvelope": { + "properties": { + "functionAppResourceId": "/subscription/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/functionRG/providers/Microsoft.Web/sites/testFunctionApp", + "functionAppRegion": "West US 2" + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Web/staticSites/testStaticSite0/builds/default/userProvidedFunctionApps/testFunctionApp", + "name": "testFunctionApp", + "type": "Microsoft.Web/staticSites/builds/userProvidedFunctionApps", + "properties": { + "functionAppResourceId": "/subscription/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/functionRG/providers/Microsoft.Web/sites/testFunctionApp", + "functionAppRegion": "West US 2", + "createdOn": "2020-03-04T17:33:11.641Z" + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + }, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Web/staticSites/testStaticSite0/builds/default/userProvidedFunctionApps/testFunctionApp", + "name": "testFunctionApp", + "type": "Microsoft.Web/staticSites/builds/userProvidedFunctionApps", + "properties": { + "functionAppResourceId": "/subscription/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/functionRG/providers/Microsoft.Web/sites/testFunctionApp", + "functionAppRegion": "West US 2", + "createdOn": "2020-03-04T17:33:11.641Z" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ResetStaticSiteApiKey.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ResetStaticSiteApiKey.json new file mode 100644 index 000000000000..fcd26cf9b83c --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ResetStaticSiteApiKey.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2021-01-01", + "resetPropertiesEnvelope": { + "properties": { + "shouldUpdateRepository": true, + "repositoryToken": "repoToken123" + } + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/StartWebSiteNetworkTraceOperation.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/StartWebSiteNetworkTraceOperation.json new file mode 100644 index 000000000000..c7e1522d05d0 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/StartWebSiteNetworkTraceOperation.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "name": "SampleApp", + "slot": "Production", + "durationInSeconds": 60, + "api-version": "2021-01-01" + }, + "responses": { + "200": { + "headers": {}, + "body": [ + { + "path": "D:\\home\\LogFiles\\networktrace\\10.0.0.1_2018_02_01T00_00_00.zip", + "status": "Succeeded", + "message": "Trace file has been saved as D:\\home\\LogFiles\\networktrace\\10.0.0.1_2018_02_01T00_00_00.zip" + } + ] + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/sites/SampleApp/operationresults/c291433b-53ad-4c49-8cae-0a293eae1c6d", + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/sites/SampleApp/operationresults/c291433b-53ad-4c49-8cae-0a293eae1c6d" + }, + "body": [ + { + "path": "D:\\home\\LogFiles\\networktrace\\10.0.0.1_2018_02_01T00_00_00.zip", + "status": "Succeeded", + "message": "Trace file has been saved as D:\\home\\LogFiles\\networktrace\\10.0.0.1_2018_02_01T00_00_00.zip" + } + ] + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/StaticSiteBuildZipDeploy.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/StaticSiteBuildZipDeploy.json new file mode 100644 index 000000000000..45ddf6d93944 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/StaticSiteBuildZipDeploy.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "environmentName": "12", + "api-version": "2021-01-01", + "staticSiteZipDeploymentEnvelope": { + "properties": { + "appZipUrl": "https://teststorageaccount.net/happy-sea-15afae3e-master-81828877/app-zipdeploy.zip", + "apiZipUrl": "https://teststorageaccount.net/happy-sea-15afae3e-master-81828877/api-zipdeploy.zip", + "deploymentTitle": "Update index.html", + "provider": "testProvider", + "functionLanguage": "testFunctionLanguage" + } + } + }, + "responses": { + "200": {}, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/StaticSiteZipDeploy.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/StaticSiteZipDeploy.json new file mode 100644 index 000000000000..72e9be095674 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/StaticSiteZipDeploy.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2021-01-01", + "staticSiteZipDeploymentEnvelope": { + "properties": { + "appZipUrl": "https://teststorageaccount.net/happy-sea-15afae3e-master-81828877/app-zipdeploy.zip", + "apiZipUrl": "https://teststorageaccount.net/happy-sea-15afae3e-master-81828877/api-zipdeploy.zip", + "deploymentTitle": "Update index.html", + "provider": "testProvider", + "functionLanguage": "testFunctionLanguage" + } + } + }, + "responses": { + "200": {}, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/StopWebSiteNetworkTrace.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/StopWebSiteNetworkTrace.json new file mode 100644 index 000000000000..e9420c2ddcec --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/StopWebSiteNetworkTrace.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "name": "SampleApp", + "slot": "Production", + "api-version": "2021-01-01" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/UpdatePublishingCredentialsPolicy.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/UpdatePublishingCredentialsPolicy.json new file mode 100644 index 000000000000..f125f0f77294 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/UpdatePublishingCredentialsPolicy.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testSite", + "api-version": "2021-01-01", + "csmPublishingAccessPoliciesEntity": { + "properties": { + "allow": true + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "allow": true + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/UpdatePublishingCredentialsPolicySlot.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/UpdatePublishingCredentialsPolicySlot.json new file mode 100644 index 000000000000..713812631236 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/UpdatePublishingCredentialsPolicySlot.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testSite", + "slot": "stage", + "api-version": "2021-01-01", + "csmPublishingAccessPoliciesEntity": { + "properties": { + "allow": true + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "allow": true + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/UpdateStaticSiteUser.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/UpdateStaticSiteUser.json new file mode 100644 index 000000000000..19a69b90eeee --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/UpdateStaticSiteUser.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "authprovider": "aad", + "userid": "1234", + "api-version": "2021-01-01", + "staticSiteUserEnvelope": { + "properties": { + "roles": "contributor" + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "provider": "aad", + "userId": "1234", + "displayName": "username", + "roles": "contributor,anonymous,authenticated" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ValidateStaticSiteCustomDomain.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ValidateStaticSiteCustomDomain.json new file mode 100644 index 000000000000..b6cd83228a6d --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/ValidateStaticSiteCustomDomain.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "domainName": "custom.domain.net", + "api-version": "2021-01-01", + "staticSiteCustomDomainRequestPropertiesEnvelope": { + "properties": {} + } + }, + "responses": { + "200": {}, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/VerifyHostingEnvironmentVnet.json b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/VerifyHostingEnvironmentVnet.json new file mode 100644 index 000000000000..9fc07527a7ad --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2021-01-01/examples/VerifyHostingEnvironmentVnet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "api-version": "2021-01-01", + "parameters": { + "properties": { + "vnetResourceGroup": "vNet123rg", + "vnetName": "vNet123", + "vnetSubnetName": "vNet123SubNet" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/verifyHostingEnvironmentVnet", + "properties": { + "failed": false, + "failedTests": [] + } + } + } + } +} diff --git a/specification/web/resource-manager/readme.azureresourceschema.md b/specification/web/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index c7329178ca92..000000000000 --- a/specification/web/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,369 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-web-2020-10-01 - - tag: schema-web-2020-09-01 - - tag: schema-web-2020-06-01 - - tag: schema-web-2019-08-01 - - tag: schema-web-2018-11-01 - - tag: schema-web-2018-02-01 - - tag: schema-web-2016-09-01 - - tag: schema-web-2016-08-01 - - tag: schema-web-2016-03-01 - - tag: schema-web-2015-08-01-preview - - tag: schema-web-2015-08-01 - - tag: schema-domainregistration-2020-10-01 - - tag: schema-domainregistration-2020-09-01 - - tag: schema-domainregistration-2020-06-01 - - tag: schema-domainregistration-2019-08-01 - - tag: schema-domainregistration-2018-02-01 - - tag: schema-domainregistration-2015-04-01 - - tag: schema-certificateregistration-2020-10-01 - - tag: schema-certificateregistration-2020-09-01 - - tag: schema-certificateregistration-2020-06-01 - - tag: schema-certificateregistration-2019-08-01 - - tag: schema-certificateregistration-2018-02-01 - - tag: schema-certificateregistration-2015-08-01 - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-web-2020-10-01 and azureresourceschema - -``` yaml $(tag) == 'schema-web-2020-10-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Web/stable/2020-10-01/Certificates.json - - Microsoft.Web/stable/2020-10-01/CommonDefinitions.json - - Microsoft.Web/stable/2020-10-01/DeletedWebApps.json - - Microsoft.Web/stable/2020-10-01/Diagnostics.json - - Microsoft.Web/stable/2020-10-01/Provider.json - - Microsoft.Web/stable/2020-10-01/Recommendations.json - - Microsoft.Web/stable/2020-10-01/ResourceProvider.json - - Microsoft.Web/stable/2020-10-01/WebApps.json - - Microsoft.Web/stable/2020-10-01/StaticSites.json - - Microsoft.Web/stable/2020-10-01/AppServiceEnvironments.json - - Microsoft.Web/stable/2020-10-01/AppServicePlans.json - - Microsoft.Web/stable/2020-10-01/ResourceHealthMetadata.json - -``` - -### Tag: schema-web-2020-09-01 and azureresourceschema - -``` yaml $(tag) == 'schema-web-2020-09-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Web/stable/2020-09-01/Certificates.json - - Microsoft.Web/stable/2020-09-01/CommonDefinitions.json - - Microsoft.Web/stable/2020-09-01/DeletedWebApps.json - - Microsoft.Web/stable/2020-09-01/Diagnostics.json - - Microsoft.Web/stable/2020-09-01/Provider.json - - Microsoft.Web/stable/2020-09-01/Recommendations.json - - Microsoft.Web/stable/2020-09-01/ResourceProvider.json - - Microsoft.Web/stable/2020-09-01/WebApps.json - - Microsoft.Web/stable/2020-09-01/StaticSites.json - - Microsoft.Web/stable/2020-09-01/AppServiceEnvironments.json - - Microsoft.Web/stable/2020-09-01/AppServicePlans.json - - Microsoft.Web/stable/2020-09-01/ResourceHealthMetadata.json - -``` - -### Tag: schema-web-2020-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-web-2020-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Web/stable/2020-06-01/Certificates.json - - Microsoft.Web/stable/2020-06-01/CommonDefinitions.json - - Microsoft.Web/stable/2020-06-01/DeletedWebApps.json - - Microsoft.Web/stable/2020-06-01/Diagnostics.json - - Microsoft.Web/stable/2020-06-01/Provider.json - - Microsoft.Web/stable/2020-06-01/Recommendations.json - - Microsoft.Web/stable/2020-06-01/ResourceProvider.json - - Microsoft.Web/stable/2020-06-01/WebApps.json - - Microsoft.Web/stable/2020-06-01/StaticSites.json - - Microsoft.Web/stable/2020-06-01/AppServiceEnvironments.json - - Microsoft.Web/stable/2020-06-01/AppServicePlans.json - - Microsoft.Web/stable/2020-06-01/ResourceHealthMetadata.json - -``` - -### Tag: schema-web-2019-08-01 and azureresourceschema - -``` yaml $(tag) == 'schema-web-2019-08-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Web/stable/2019-08-01/Certificates.json - - Microsoft.Web/stable/2019-08-01/CommonDefinitions.json - - Microsoft.Web/stable/2019-08-01/DeletedWebApps.json - - Microsoft.Web/stable/2019-08-01/Diagnostics.json - - Microsoft.Web/stable/2019-08-01/Provider.json - - Microsoft.Web/stable/2019-08-01/Recommendations.json - - Microsoft.Web/stable/2019-08-01/ResourceProvider.json - - Microsoft.Web/stable/2019-08-01/WebApps.json - - Microsoft.Web/stable/2019-08-01/StaticSites.json - - Microsoft.Web/stable/2019-08-01/AppServiceEnvironments.json - - Microsoft.Web/stable/2019-08-01/AppServicePlans.json - - Microsoft.Web/stable/2019-08-01/ResourceHealthMetadata.json - -``` - -### Tag: schema-web-2018-11-01 and azureresourceschema - -``` yaml $(tag) == 'schema-web-2018-11-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Web/stable/2018-11-01/Certificates.json - - Microsoft.Web/stable/2018-11-01/WebApps.json - -``` - -### Tag: schema-web-2018-02-01 and azureresourceschema - -``` yaml $(tag) == 'schema-web-2018-02-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Web/stable/2018-02-01/CommonDefinitions.json - - Microsoft.Web/stable/2018-02-01/DeletedWebApps.json - - Microsoft.Web/stable/2018-02-01/Diagnostics.json - - Microsoft.Web/stable/2018-02-01/Provider.json - - Microsoft.Web/stable/2018-02-01/Recommendations.json - - Microsoft.Web/stable/2018-02-01/ResourceProvider.json - - Microsoft.Web/stable/2018-02-01/AppServiceEnvironments.json - - Microsoft.Web/stable/2018-02-01/AppServicePlans.json - - Microsoft.Web/stable/2018-02-01/ResourceHealthMetadata.json - - Microsoft.Web/stable/2018-02-01/WebApps.json - - Microsoft.Web/stable/2018-02-01/Certificates.json - -``` - -### Tag: schema-web-2016-09-01 and azureresourceschema - -``` yaml $(tag) == 'schema-web-2016-09-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Web/stable/2016-09-01/AppServiceEnvironments.json - - Microsoft.Web/stable/2016-09-01/AppServicePlans.json - -``` - -### Tag: schema-web-2016-08-01 and azureresourceschema - -``` yaml $(tag) == 'schema-web-2016-08-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Web/stable/2016-08-01/WebApps.json - -``` - -### Tag: schema-web-2016-03-01 and azureresourceschema - -``` yaml $(tag) == 'schema-web-2016-03-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Web/stable/2016-03-01/Certificates.json - - Microsoft.Web/stable/2016-03-01/CommonDefinitions.json - - Microsoft.Web/stable/2016-03-01/DeletedWebApps.json - - Microsoft.Web/stable/2016-03-01/Diagnostics.json - - Microsoft.Web/stable/2016-03-01/Provider.json - - Microsoft.Web/stable/2016-03-01/Recommendations.json - - Microsoft.Web/stable/2016-03-01/ResourceHealthMetadata.json - - Microsoft.Web/stable/2016-03-01/ResourceProvider.json - -``` - -### Tag: schema-web-2015-08-01-preview and azureresourceschema - -``` yaml $(tag) == 'schema-web-2015-08-01-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Web/preview/2015-08-01-preview/logicAppsManagementClient.json - -``` - -### Tag: schema-web-2015-08-01 and azureresourceschema - -``` yaml $(tag) == 'schema-web-2015-08-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.Web/stable/2015-08-01/service.json - -``` - -### Tag: schema-domainregistration-2020-10-01 and azureresourceschema - -``` yaml $(tag) == 'schema-domainregistration-2020-10-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DomainRegistration/stable/2020-10-01/Domains.json - - Microsoft.DomainRegistration/stable/2020-10-01/TopLevelDomains.json - - Microsoft.DomainRegistration/stable/2020-10-01/DomainRegistrationProvider.json - -``` - -### Tag: schema-domainregistration-2020-09-01 and azureresourceschema - -``` yaml $(tag) == 'schema-domainregistration-2020-09-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DomainRegistration/stable/2020-09-01/Domains.json - - Microsoft.DomainRegistration/stable/2020-09-01/TopLevelDomains.json - - Microsoft.DomainRegistration/stable/2020-09-01/DomainRegistrationProvider.json - -``` - -### Tag: schema-domainregistration-2020-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-domainregistration-2020-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DomainRegistration/stable/2020-06-01/Domains.json - - Microsoft.DomainRegistration/stable/2020-06-01/TopLevelDomains.json - - Microsoft.DomainRegistration/stable/2020-06-01/DomainRegistrationProvider.json - -``` - -### Tag: schema-domainregistration-2019-08-01 and azureresourceschema - -``` yaml $(tag) == 'schema-domainregistration-2019-08-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DomainRegistration/stable/2019-08-01/Domains.json - - Microsoft.DomainRegistration/stable/2019-08-01/TopLevelDomains.json - - Microsoft.DomainRegistration/stable/2019-08-01/DomainRegistrationProvider.json - -``` - -### Tag: schema-domainregistration-2018-02-01 and azureresourceschema - -``` yaml $(tag) == 'schema-domainregistration-2018-02-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DomainRegistration/stable/2018-02-01/Domains.json - - Microsoft.DomainRegistration/stable/2018-02-01/TopLevelDomains.json - - Microsoft.DomainRegistration/stable/2018-02-01/DomainRegistrationProvider.json - -``` - -### Tag: schema-domainregistration-2015-04-01 and azureresourceschema - -``` yaml $(tag) == 'schema-domainregistration-2015-04-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.DomainRegistration/stable/2015-04-01/Domains.json - - Microsoft.DomainRegistration/stable/2015-04-01/TopLevelDomains.json - - Microsoft.DomainRegistration/stable/2015-04-01/DomainRegistrationProvider.json - -``` - -### Tag: schema-certificateregistration-2020-10-01 and azureresourceschema - -``` yaml $(tag) == 'schema-certificateregistration-2020-10-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.CertificateRegistration/stable/2020-10-01/AppServiceCertificateOrders.json - - Microsoft.CertificateRegistration/stable/2020-10-01/CertificateRegistrationProvider.json - -``` - -### Tag: schema-certificateregistration-2020-09-01 and azureresourceschema - -``` yaml $(tag) == 'schema-certificateregistration-2020-09-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.CertificateRegistration/stable/2020-09-01/AppServiceCertificateOrders.json - - Microsoft.CertificateRegistration/stable/2020-09-01/CertificateRegistrationProvider.json - -``` - -### Tag: schema-certificateregistration-2020-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-certificateregistration-2020-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.CertificateRegistration/stable/2020-06-01/AppServiceCertificateOrders.json - - Microsoft.CertificateRegistration/stable/2020-06-01/CertificateRegistrationProvider.json - -``` - -### Tag: schema-certificateregistration-2019-08-01 and azureresourceschema - -``` yaml $(tag) == 'schema-certificateregistration-2019-08-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.CertificateRegistration/stable/2019-08-01/AppServiceCertificateOrders.json - - Microsoft.CertificateRegistration/stable/2019-08-01/CertificateRegistrationProvider.json - -``` - -### Tag: schema-certificateregistration-2018-02-01 and azureresourceschema - -``` yaml $(tag) == 'schema-certificateregistration-2018-02-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.CertificateRegistration/stable/2018-02-01/AppServiceCertificateOrders.json - - Microsoft.CertificateRegistration/stable/2018-02-01/CertificateRegistrationProvider.json - -``` - -### Tag: schema-certificateregistration-2015-08-01 and azureresourceschema - -``` yaml $(tag) == 'schema-certificateregistration-2015-08-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.CertificateRegistration/stable/2015-08-01/AppServiceCertificateOrders.json - - Microsoft.CertificateRegistration/stable/2015-08-01/CertificateRegistrationProvider.json - -``` diff --git a/specification/web/resource-manager/readme.go.md b/specification/web/resource-manager/readme.go.md index 6e568e0c8b0f..8f9118b7cdb7 100644 --- a/specification/web/resource-manager/readme.go.md +++ b/specification/web/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: web clear-output-folder: true ``` @@ -13,6 +13,7 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-2020-12 - tag: package-2020-09 - tag: package-2020-06 - tag: package-2019-08 @@ -21,6 +22,15 @@ batch: - tag: package-2015-08-preview ``` +### Tag: package-2020-12 and go + +These settings apply only when `--tag=package-2020-12 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2020-12' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2020-12-01/$(namespace) +``` + ### Tag: package-2020-09 and go These settings apply only when `--tag=package-2020-09 --go` is specified on the command line. diff --git a/specification/web/resource-manager/readme.md b/specification/web/resource-manager/readme.md index f0d71f47baa8..d758cdc17af1 100644 --- a/specification/web/resource-manager/readme.md +++ b/specification/web/resource-manager/readme.md @@ -4,16 +4,16 @@ This is the AutoRest configuration file for Web. - The App service RP comprises of services where each service has its own tag. Hence, each sub-service has its own swagger spec. All of them are tied together using this configuration and are packaged together into one compute client library. This makes it easier for customers to download one (NuGet/npm/pip/maven/gem) compute client library package rather than installing individual packages for each sub service. - --- + ## Getting Started + To build the SDK for Web, simply [Install AutoRest](https://aka.ms/autorest/install) and in this folder, run: > `autorest` @@ -21,20 +21,20 @@ To build the SDK for Web, 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 Web API. ``` yaml title: WebSiteManagementClient description: WebSite Management Client openapi-type: arm -tag: package-2020-10 +tag: package-2021-01 ``` ### Suppression @@ -55,9 +55,206 @@ directive: reason: Model type is not an Azure resource ``` + +### Tag: package-2021-01 + +These settings apply only when `--tag=package-2021-01` is specified on the command line. + +``` yaml $(tag) == 'package-2021-01' || $(tag) == 'package-2021-01-only' +input-file: + - Microsoft.CertificateRegistration/stable/2021-01-01/AppServiceCertificateOrders.json + - Microsoft.CertificateRegistration/stable/2021-01-01/CertificateOrdersDiagnostics.json + - Microsoft.CertificateRegistration/stable/2021-01-01/CertificateRegistrationProvider.json + - Microsoft.DomainRegistration/stable/2021-01-01/Domains.json + - Microsoft.DomainRegistration/stable/2021-01-01/TopLevelDomains.json + - Microsoft.DomainRegistration/stable/2021-01-01/DomainRegistrationProvider.json + - Microsoft.Web/stable/2021-01-01/AppServiceEnvironments.json + - Microsoft.Web/stable/2021-01-01/AppServicePlans.json + - Microsoft.Web/stable/2021-01-01/Certificates.json + - Microsoft.Web/stable/2021-01-01/CommonDefinitions.json + - Microsoft.Web/stable/2021-01-01/DeletedWebApps.json + - Microsoft.Web/stable/2021-01-01/Diagnostics.json + - Microsoft.Web/stable/2021-01-01/Global.json + - Microsoft.Web/stable/2021-01-01/Provider.json + - Microsoft.Web/stable/2021-01-01/Recommendations.json + - Microsoft.Web/stable/2021-01-01/ResourceHealthMetadata.json + - Microsoft.Web/stable/2021-01-01/ResourceProvider.json + - Microsoft.Web/stable/2021-01-01/StaticSites.json + - Microsoft.Web/stable/2021-01-01/WebApps.json + - Microsoft.Web/stable/2021-01-01/KubeEnvironments.json +directive: + # suppress each RPC 3016 error +- where: $.definitions.FunctionSecrets.properties.trigger_url + suppress: R3016 + reason: This requires a breaking change in functions runtime API. +- where: $.definitions.Identifier.properties + suppress: R3019 + reason: It's an old API, will resolve in next API version +- where: $.definitions.VnetGateway + suppress: R4015 + reason: Does not have list operation +- where: $.definitions.VnetInfo + suppress: R4015 + reason: Does not have list operation +- suppress: R4009 + from: AppServiceCertificateOrders.json + reason: SystemData will implement in next version. +- suppress: R4009 + from: CertificateOrdersDiagnostics.json + reason: SystemData will implement in next version. +- suppress: R4009 + from: CertificateRegistrationProvider.json + reason: SystemData will implement in next version. +- suppress: R4009 + from: Domains.json + reason: SystemData will implement in next version. +- suppress: R4009 + from: TopLevelDomains.json + reason: SystemData will implement in next version. +- suppress: R4009 + from: DomainRegistrationProvider.json + reason: SystemData will implement in next version. +- suppress: R4009 + from: Certificates.json + reason: SystemData will implement in next version. +- suppress: R4009 + from: CommonDefinitions.json + reason: SystemData will implement in next version. +- suppress: R4009 + from: DeletedWebApps.json + reason: SystemData will implement in next version. +- suppress: R4009 + from: Diagnostics.json + reason: SystemData will implement in next version. +- suppress: R4009 + from: Global.json + reason: SystemData will implement in next version. +- suppress: R4009 + from: Provider.json + reason: SystemData will implement in next version. +- suppress: R4009 + from: Recommendations.json + reason: SystemData will implement in next version. +- suppress: R4009 + from: WebApps.json + reason: SystemData will implement in next version. +- suppress: R4009 + from: StaticSites.json + reason: SystemData will implement in next version. +- suppress: R4009 + from: AppServiceEnvironments.json + reason: SystemData will implement in next version. +- suppress: R4009 + from: AppServicePlans.json + reason: SystemData will implement in next version. +- suppress: R4009 + from: ResourceHealthMetadata.json + reason: SystemData will implement in next version. +- suppress: R4009 + from: KubeEnvironments.json + reason: SystemData will implement in next version. +``` +### Tag: package-2020-12 + +These settings apply only when `--tag=package-2020-12` or `--tag=package-2020-12-only` is specified on the command line. +NOTE: Currently these tags are the same, but it will need to be split if any files from folders other than 2020-06-01 are included. + +``` yaml $(tag) == 'package-2020-12' || $(tag) == 'package-2020-12-only' +input-file: +- Microsoft.CertificateRegistration/stable/2020-12-01/AppServiceCertificateOrders.json +- Microsoft.CertificateRegistration/stable/2020-12-01/CertificateOrdersDiagnostics.json +- Microsoft.CertificateRegistration/stable/2020-12-01/CertificateRegistrationProvider.json +- Microsoft.DomainRegistration/stable/2020-12-01/Domains.json +- Microsoft.DomainRegistration/stable/2020-12-01/TopLevelDomains.json +- Microsoft.DomainRegistration/stable/2020-12-01/DomainRegistrationProvider.json +- Microsoft.Web/stable/2020-12-01/Certificates.json +- Microsoft.Web/stable/2020-12-01/CommonDefinitions.json +- Microsoft.Web/stable/2020-12-01/DeletedWebApps.json +- Microsoft.Web/stable/2020-12-01/Diagnostics.json +- Microsoft.Web/stable/2020-12-01/Global.json +- Microsoft.Web/stable/2020-12-01/Provider.json +- Microsoft.Web/stable/2020-12-01/Recommendations.json +- Microsoft.Web/stable/2020-12-01/ResourceProvider.json +- Microsoft.Web/stable/2020-12-01/WebApps.json +- Microsoft.Web/stable/2020-12-01/StaticSites.json +- Microsoft.Web/stable/2020-12-01/AppServiceEnvironments.json +- Microsoft.Web/stable/2020-12-01/AppServicePlans.json +- Microsoft.Web/stable/2020-12-01/ResourceHealthMetadata.json +directive: + # suppress each RPC 3016 error +- where: $.definitions.FunctionSecrets.properties.trigger_url + suppress: R3016 + reason: This requires a breaking change in functions runtime API. +- where: $.definitions.Identifier.properties + suppress: R3019 + reason: It's an old API, will resolve in next API version +- where: $.definitions.VnetGateway + suppress: R4015 + reason: Does not have list operation +- where: $.definitions.VnetInfo + suppress: R4015 + reason: Does not have list operation +- suppress: R4009 + from: AppServiceCertificateOrders.json + reason: SystemData will implement in next version. +- suppress: R4009 + from: CertificateOrdersDiagnostics.json + reason: SystemData will implement in next version. +- suppress: R4009 + from: CertificateRegistrationProvider.json + reason: SystemData will implement in next version. +- suppress: R4009 + from: Domains.json + reason: SystemData will implement in next version. +- suppress: R4009 + from: TopLevelDomains.json + reason: SystemData will implement in next version. +- suppress: R4009 + from: DomainRegistrationProvider.json + reason: SystemData will implement in next version. +- suppress: R4009 + from: Certificates.json + reason: SystemData will implement in next version. +- suppress: R4009 + from: CommonDefinitions.json + reason: SystemData will implement in next version. +- suppress: R4009 + from: DeletedWebApps.json + reason: SystemData will implement in next version. +- suppress: R4009 + from: Diagnostics.json + reason: SystemData will implement in next version. +- suppress: R4009 + from: Global.json + reason: SystemData will implement in next version. +- suppress: R4009 + from: Provider.json + reason: SystemData will implement in next version. +- suppress: R4009 + from: Recommendations.json + reason: SystemData will implement in next version. +- suppress: R4009 + from: WebApps.json + reason: SystemData will implement in next version. +- suppress: R4009 + from: StaticSites.json + reason: SystemData will implement in next version. +- suppress: R4009 + from: AppServiceEnvironments.json + reason: SystemData will implement in next version. +- suppress: R4009 + from: AppServicePlans.json + reason: SystemData will implement in next version. +- suppress: R4009 + from: ResourceHealthMetadata.json + reason: SystemData will implement in next version. +``` + ### Tag: package-2020-10 + These settings apply only when `--tag=package-2020-10` or `--tag=package-2020-10-only` is specified on the command line. NOTE: Currently these tags are the same, but it will need to be split if any files from folders other than 2020-06-01 are included. + ``` yaml $(tag) == 'package-2020-10' || $(tag) == 'package-2020-10-only' input-file: - Microsoft.CertificateRegistration/stable/2020-10-01/AppServiceCertificateOrders.json @@ -94,8 +291,10 @@ directive: ``` ### Tag: package-2020-09 + These settings apply only when `--tag=package-2020-09` or `--tag=package-2020-09-only` is specified on the command line. NOTE: Currently these tags are the same, but it will need to be split if any files from folders other than 2020-06-01 are included. + ``` yaml $(tag) == 'package-2020-09' || $(tag) == 'package-2020-09-only' input-file: - Microsoft.CertificateRegistration/stable/2020-09-01/AppServiceCertificateOrders.json @@ -136,9 +335,11 @@ directive: ``` ### Tag: package-2020-06 + These settings apply only when `--tag=package-2020-06` or `--tag=package-2020-06-only` is specified on the command line. NOTE: Currently these tags are the same, but it will need to be split if any files from folders other than 2019-08-01 are included. -``` yaml $(tag) == 'package-2020-06' || $(tag) == 'package-2020-06-only' + +``` yaml $(tag) == 'package-2020-06' || $(tag) == 'package-2020-06-only' input-file: - Microsoft.CertificateRegistration/stable/2020-06-01/AppServiceCertificateOrders.json - Microsoft.CertificateRegistration/stable/2020-06-01/CertificateRegistrationProvider.json @@ -170,7 +371,7 @@ directive: These settings apply only when `--tag=package-2019-08` or `--tag=package-2019-08-only` is specified on the command line. NOTE: Currently these tags are the same, but it will need to be split if any files from folders other than 2019-08-01 are included. -``` yaml $(tag) == 'package-2019-08' || $(tag) == 'package-2019-08-only' +``` yaml $(tag) == 'package-2019-08' || $(tag) == 'package-2019-08-only' input-file: - Microsoft.CertificateRegistration/stable/2019-08-01/AppServiceCertificateOrders.json @@ -1067,6 +1268,14 @@ directive: approved-by: "@ravbhatnagar" ``` +### Tag: package-2016-06-01 + +These settings apply only when `--tag=package-2016-06-01` is specified on the command line. + +``` yaml $(tag) == 'package-2016-06-01' +input-file: +- Microsoft.Web/stable/2016-06-01/logicAppsManagementClient.json +``` ### Tag: package-2015-08-preview @@ -1135,8 +1344,8 @@ input-file: ``` --- -# Code Generation +# Code Generation ## Swagger to SDK @@ -1161,14 +1370,15 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_web'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js web/resource-manager ``` ## Go See configuration in [readme.go.md](./readme.go.md) +## Python + +See configuration in [readme.python.md](./readme.python.md) ## Java @@ -1223,8 +1433,3 @@ input-file: - Microsoft.Web/stable/2018-02-01/ResourceProvider.json - Microsoft.Web/stable/2018-02-01/Recommendations.json ``` - -## AzureResourceSchema - -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) - diff --git a/specification/web/resource-manager/readme.python.md b/specification/web/resource-manager/readme.python.md index 596c7df35490..f582b61b6176 100644 --- a/specification/web/resource-manager/readme.python.md +++ b/specification/web/resource-manager/readme.python.md @@ -30,6 +30,8 @@ Generate all API versions currently shipped for this package ```yaml $(python) && $(multiapi) && !$(track2) batch: + - tag: package-2021-01-only + - tag: package-2020-12-only - tag: package-2020-09-only - tag: package-2020-06-only - tag: package-2019-08-only @@ -45,6 +47,8 @@ batch: ```yaml $(python) && $(multiapi) && $(track2) clear-output-folder: true batch: + - tag: package-2021-01-only + - tag: package-2020-12-only - tag: package-2020-09-only - tag: package-2020-06-only - tag: package-2019-08-only @@ -64,6 +68,32 @@ clear-output-folder: false perform-load: false ``` +### Tag: package-2021-01-only and python + +These settings apply only when `--tag=package-2021-01-only --python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-2021-01-only' && $(python) +namespace: azure.mgmt.web.v2021_01_01 +output-folder: $(python-sdks-folder)/appservice/azure-mgmt-web/azure/mgmt/web/v2021_01_01 +python: + namespace: azure.mgmt.web.v2021_01_01 + output-folder: $(python-sdks-folder)/appservice/azure-mgmt-web/azure/mgmt/web/v2021_01_01 +``` + +### Tag: package-2020-12-only and python + +These settings apply only when `--tag=package-2020-12-only --python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-2020-12-only' && $(python) +namespace: azure.mgmt.web.v2020_12_01 +output-folder: $(python-sdks-folder)/appservice/azure-mgmt-web/azure/mgmt/web/v2020_12_01 +python: + namespace: azure.mgmt.web.v2020_12_01 + output-folder: $(python-sdks-folder)/appservice/azure-mgmt-web/azure/mgmt/web/v2020_12_01 +``` + ### Tag: package-2020-09-only and python These settings apply only when `--tag=package-2020-09-only --python` is specified on the command line. diff --git a/specification/webpubsub/data-plane/WebPubSub/preview/2021-05-01-preview/webpubsub.json b/specification/webpubsub/data-plane/WebPubSub/preview/2021-05-01-preview/webpubsub.json new file mode 100644 index 000000000000..9ee358757ed4 --- /dev/null +++ b/specification/webpubsub/data-plane/WebPubSub/preview/2021-05-01-preview/webpubsub.json @@ -0,0 +1,911 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Web PubSub Service REST API", + "version": "2021-05-01-preview" + }, + "paths": { + "/api/health": { + "head": { + "tags": [ + "general" + ], + "summary": "Get service health status.", + "operationId": "HealthApi_GetServiceStatus", + "parameters": [ + { + "in": "query", + "name": "api-version", + "description": "The version of the REST APIs.", + "type": "string", + "default": "2021-05-01-preview" + } + ], + "responses": { + "200": { + "description": "The service is healthy" + }, + "default": { + "description": "Error response", + "x-ms-error-response": true + } + } + } + }, + "/api/hubs/{hub}/:send": { + "post": { + "tags": [ + "webpubsub" + ], + "summary": "Broadcast content inside request body to all the connected client connections.", + "operationId": "WebPubSub_SendToAll", + "consumes": [ + "application/octet-stream", + "text/plain", + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "hub", + "description": "Target hub name, which should start with alphabetic characters and only contain alpha-numeric characters or underscore.", + "required": true, + "type": "string", + "pattern": "^[A-Za-z][A-Za-z0-9_`,.[\\]]{0,127}$" + }, + { + "in": "query", + "name": "excluded", + "description": "Excluded connection Ids.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "api-version", + "description": "The version of the REST APIs.", + "type": "string", + "default": "2021-05-01-preview" + }, + { + "in": "body", + "name": "message", + "description": "The payload body.", + "required": true, + "schema": { + "format": "binary", + "type": "string" + } + } + ], + "responses": { + "202": { + "description": "The message is accepted. The service follows fire-and-forget pattern when sending messages." + }, + "default": { + "description": "Error response", + "x-ms-error-response": true + } + } + } + }, + "/api/hubs/{hub}/connections/{connectionId}": { + "head": { + "tags": [ + "webpubsub" + ], + "summary": "Check if the connection with the given connectionId exists.", + "operationId": "WebPubSub_ConnectionExists", + "parameters": [ + { + "in": "path", + "name": "hub", + "description": "Target hub name, which should start with alphabetic characters and only contain alpha-numeric characters or underscore.", + "required": true, + "type": "string", + "pattern": "^[A-Za-z][A-Za-z0-9_`,.[\\]]{0,127}$" + }, + { + "in": "path", + "name": "connectionId", + "description": "The connection Id.", + "required": true, + "type": "string", + "minLength": 1 + }, + { + "in": "query", + "name": "api-version", + "description": "The version of the REST APIs.", + "type": "string", + "default": "2021-05-01-preview" + } + ], + "responses": { + "200": { + "description": "Success" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response", + "x-ms-error-response": true + } + } + }, + "delete": { + "tags": [ + "webpubsub" + ], + "summary": "Close the client connection.", + "operationId": "WebPubSub_CloseClientConnection", + "parameters": [ + { + "in": "path", + "name": "hub", + "description": "Target hub name, which should start with alphabetic characters and only contain alpha-numeric characters or underscore.", + "required": true, + "type": "string", + "pattern": "^[A-Za-z][A-Za-z0-9_`,.[\\]]{0,127}$" + }, + { + "in": "path", + "name": "connectionId", + "description": "Target connection Id.", + "required": true, + "type": "string", + "minLength": 1 + }, + { + "in": "query", + "name": "reason", + "description": "The reason closing the client connection.", + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The version of the REST APIs.", + "type": "string", + "default": "2021-05-01-preview" + } + ], + "responses": { + "200": { + "description": "Success" + }, + "default": { + "description": "Error response", + "x-ms-error-response": true + } + } + } + }, + "/api/hubs/{hub}/connections/{connectionId}/:send": { + "post": { + "tags": [ + "webpubsub" + ], + "summary": "Send content inside request body to the specific connection.", + "operationId": "WebPubSub_SendToConnection", + "consumes": [ + "application/octet-stream", + "text/plain", + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "hub", + "description": "Target hub name, which should start with alphabetic characters and only contain alpha-numeric characters or underscore.", + "required": true, + "type": "string", + "pattern": "^[A-Za-z][A-Za-z0-9_`,.[\\]]{0,127}$" + }, + { + "in": "path", + "name": "connectionId", + "description": "The connection Id.", + "required": true, + "type": "string", + "minLength": 1 + }, + { + "in": "query", + "name": "api-version", + "description": "The version of the REST APIs.", + "type": "string", + "default": "2021-05-01-preview" + }, + { + "in": "body", + "name": "message", + "description": "The payload body.", + "required": true, + "schema": { + "format": "binary", + "type": "string" + } + } + ], + "responses": { + "202": { + "description": "Success" + }, + "default": { + "description": "Error response", + "x-ms-error-response": true + } + } + } + }, + "/api/hubs/{hub}/groups/{group}": { + "head": { + "tags": [ + "webpubsub" + ], + "summary": "Check if there are any client connections inside the given group", + "operationId": "WebPubSub_GroupExists", + "parameters": [ + { + "in": "path", + "name": "hub", + "description": "Target hub name, which should start with alphabetic characters and only contain alpha-numeric characters or underscore.", + "required": true, + "type": "string", + "pattern": "^[A-Za-z][A-Za-z0-9_`,.[\\]]{0,127}$" + }, + { + "in": "path", + "name": "group", + "description": "Target group name, which length should be greater than 0 and less than 1025.", + "required": true, + "type": "string", + "maxLength": 1024, + "minLength": 1 + }, + { + "in": "query", + "name": "api-version", + "description": "The version of the REST APIs.", + "type": "string", + "default": "2021-05-01-preview" + } + ], + "responses": { + "200": { + "description": "Success" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response", + "x-ms-error-response": true + } + } + } + }, + "/api/hubs/{hub}/groups/{group}/:send": { + "post": { + "tags": [ + "webpubsub" + ], + "summary": "Send content inside request body to a group of connections.", + "operationId": "WebPubSub_SendToGroup", + "consumes": [ + "application/octet-stream", + "text/plain", + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "hub", + "description": "Target hub name, which should start with alphabetic characters and only contain alpha-numeric characters or underscore.", + "required": true, + "type": "string", + "pattern": "^[A-Za-z][A-Za-z0-9_`,.[\\]]{0,127}$" + }, + { + "in": "path", + "name": "group", + "description": "Target group name, which length should be greater than 0 and less than 1025.", + "required": true, + "type": "string", + "maxLength": 1024, + "minLength": 1 + }, + { + "in": "query", + "name": "excluded", + "description": "Excluded connection Ids", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "api-version", + "description": "The version of the REST APIs.", + "type": "string", + "default": "2021-05-01-preview" + }, + { + "in": "body", + "name": "message", + "description": "The payload body.", + "required": true, + "schema": { + "format": "binary", + "type": "string" + } + } + ], + "responses": { + "202": { + "description": "Success" + }, + "default": { + "description": "Error response", + "x-ms-error-response": true + } + } + } + }, + "/api/hubs/{hub}/groups/{group}/connections/{connectionId}": { + "put": { + "tags": [ + "webpubsub" + ], + "summary": "Add a connection to the target group.", + "operationId": "WebPubSub_AddConnectionToGroup", + "parameters": [ + { + "in": "path", + "name": "hub", + "description": "Target hub name, which should start with alphabetic characters and only contain alpha-numeric characters or underscore.", + "required": true, + "type": "string", + "pattern": "^[A-Za-z][A-Za-z0-9_`,.[\\]]{0,127}$" + }, + { + "in": "path", + "name": "group", + "description": "Target group name, which length should be greater than 0 and less than 1025.", + "required": true, + "type": "string", + "maxLength": 1024, + "minLength": 1 + }, + { + "in": "path", + "name": "connectionId", + "description": "Target connection Id", + "required": true, + "type": "string", + "minLength": 1 + }, + { + "in": "query", + "name": "api-version", + "description": "The version of the REST APIs.", + "type": "string", + "default": "2021-05-01-preview" + } + ], + "responses": { + "200": { + "description": "Success" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response", + "x-ms-error-response": true + } + } + }, + "delete": { + "tags": [ + "webpubsub" + ], + "summary": "Remove a connection from the target group.", + "operationId": "WebPubSub_RemoveConnectionFromGroup", + "parameters": [ + { + "in": "path", + "name": "hub", + "description": "Target hub name, which should start with alphabetic characters and only contain alpha-numeric characters or underscore.", + "required": true, + "type": "string", + "pattern": "^[A-Za-z][A-Za-z0-9_`,.[\\]]{0,127}$" + }, + { + "in": "path", + "name": "group", + "description": "Target group name, which length should be greater than 0 and less than 1025.", + "required": true, + "type": "string", + "maxLength": 1024, + "minLength": 1 + }, + { + "in": "path", + "name": "connectionId", + "description": "Target connection Id.", + "required": true, + "type": "string", + "minLength": 1 + }, + { + "in": "query", + "name": "api-version", + "description": "The version of the REST APIs.", + "type": "string", + "default": "2021-05-01-preview" + } + ], + "responses": { + "200": { + "description": "Success" + }, + "default": { + "description": "Error response", + "x-ms-error-response": true + } + } + } + }, + "/api/hubs/{hub}/users/{userId}": { + "head": { + "tags": [ + "webpubsub" + ], + "summary": "Check if there are any client connections connected for the given user.", + "operationId": "WebPubSub_UserExists", + "parameters": [ + { + "in": "path", + "name": "hub", + "description": "Target hub name, which should start with alphabetic characters and only contain alpha-numeric characters or underscore.", + "required": true, + "type": "string", + "pattern": "^[A-Za-z][A-Za-z0-9_`,.[\\]]{0,127}$" + }, + { + "in": "path", + "name": "userId", + "description": "Target user Id.", + "required": true, + "type": "string", + "minLength": 1 + }, + { + "in": "query", + "name": "api-version", + "description": "The version of the REST APIs.", + "type": "string", + "default": "2021-05-01-preview" + } + ], + "responses": { + "200": { + "description": "Success" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response", + "x-ms-error-response": true + } + } + } + }, + "/api/hubs/{hub}/users/{userId}/:send": { + "post": { + "tags": [ + "webpubsub" + ], + "summary": "Send content inside request body to the specific user.", + "operationId": "WebPubSub_SendToUser", + "consumes": [ + "application/octet-stream", + "text/plain", + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "hub", + "description": "Target hub name, which should start with alphabetic characters and only contain alpha-numeric characters or underscore.", + "required": true, + "type": "string", + "pattern": "^[A-Za-z][A-Za-z0-9_`,.[\\]]{0,127}$" + }, + { + "in": "path", + "name": "userId", + "description": "The user Id.", + "required": true, + "type": "string", + "minLength": 1 + }, + { + "in": "query", + "name": "api-version", + "description": "The version of the REST APIs.", + "type": "string", + "default": "2021-05-01-preview" + }, + { + "in": "body", + "name": "message", + "description": "The payload body.", + "required": true, + "schema": { + "format": "binary", + "type": "string" + } + } + ], + "responses": { + "202": { + "description": "Success" + }, + "default": { + "description": "Error response", + "x-ms-error-response": true + } + } + } + }, + "/api/hubs/{hub}/users/{userId}/groups/{group}": { + "put": { + "tags": [ + "webpubsub" + ], + "summary": "Add a user to the target group.", + "operationId": "WebPubSub_AddUserToGroup", + "parameters": [ + { + "in": "path", + "name": "hub", + "description": "Target hub name, which should start with alphabetic characters and only contain alpha-numeric characters or underscore.", + "required": true, + "type": "string", + "pattern": "^[A-Za-z][A-Za-z0-9_`,.[\\]]{0,127}$" + }, + { + "in": "path", + "name": "group", + "description": "Target group name, which length should be greater than 0 and less than 1025.", + "required": true, + "type": "string", + "maxLength": 1024, + "minLength": 1 + }, + { + "in": "path", + "name": "userId", + "description": "Target user Id.", + "required": true, + "type": "string", + "minLength": 1 + }, + { + "in": "query", + "name": "api-version", + "description": "The version of the REST APIs.", + "type": "string", + "default": "2021-05-01-preview" + } + ], + "responses": { + "200": { + "description": "Success" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response", + "x-ms-error-response": true + } + } + }, + "delete": { + "tags": [ + "webpubsub" + ], + "summary": "Remove a user from the target group.", + "operationId": "WebPubSub_RemoveUserFromGroup", + "parameters": [ + { + "in": "path", + "name": "hub", + "description": "Target hub name, which should start with alphabetic characters and only contain alpha-numeric characters or underscore.", + "required": true, + "type": "string", + "pattern": "^[A-Za-z][A-Za-z0-9_`,.[\\]]{0,127}$" + }, + { + "in": "path", + "name": "group", + "description": "Target group name, which length should be greater than 0 and less than 1025.", + "required": true, + "type": "string", + "maxLength": 1024, + "minLength": 1 + }, + { + "in": "path", + "name": "userId", + "description": "Target user Id.", + "required": true, + "type": "string", + "minLength": 1 + }, + { + "in": "query", + "name": "api-version", + "description": "The version of the REST APIs.", + "type": "string", + "default": "2021-05-01-preview" + } + ], + "responses": { + "200": { + "description": "Success" + }, + "default": { + "description": "Error response", + "x-ms-error-response": true + } + } + } + }, + "/api/hubs/{hub}/users/{userId}/groups": { + "delete": { + "tags": [ + "webpubsub" + ], + "summary": "Remove a user from all groups.", + "operationId": "WebPubSub_RemoveUserFromAllGroups", + "parameters": [ + { + "in": "path", + "name": "hub", + "description": "Target hub name, which should start with alphabetic characters and only contain alpha-numeric characters or underscore.", + "required": true, + "type": "string", + "pattern": "^[A-Za-z][A-Za-z0-9_`,.[\\]]{0,127}$" + }, + { + "in": "path", + "name": "userId", + "description": "Target user Id.", + "required": true, + "type": "string", + "minLength": 1 + }, + { + "in": "query", + "name": "api-version", + "description": "The version of the REST APIs.", + "type": "string", + "default": "2021-05-01-preview" + } + ], + "responses": { + "200": { + "description": "The user is deleted." + }, + "default": { + "description": "Error response", + "x-ms-error-response": true + } + } + } + }, + "/api/hubs/{hub}/permissions/{permission}/connections/{connectionId}": { + "put": { + "tags": [ + "webpubsub" + ], + "summary": "Grant permission to the connection.", + "operationId": "WebPubSub_GrantPermission", + "parameters": [ + { + "in": "path", + "name": "hub", + "description": "Target hub name, which should start with alphabetic characters and only contain alpha-numeric characters or underscore.", + "required": true, + "type": "string", + "pattern": "^[A-Za-z][A-Za-z0-9_`,.[\\]]{0,127}$" + }, + { + "in": "path", + "name": "permission", + "description": "The permission: current supported actions are joinLeaveGroup and sendToGroup.", + "required": true, + "type": "string", + "enum": [ + "sendToGroup", + "joinLeaveGroup" + ], + "x-ms-enum": { + "name": "WebPubSubPermission", + "modelAsString": true + } + }, + { + "in": "path", + "name": "connectionId", + "description": "Target connection Id.", + "required": true, + "type": "string", + "minLength": 1 + }, + { + "in": "query", + "name": "targetName", + "description": "The meaning of the target depends on the specific permission. For joinLeaveGroup and sendToGroup, targetName is a required parameter standing for the group name.", + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The version of the REST APIs.", + "type": "string", + "default": "2021-05-01-preview" + } + ], + "responses": { + "200": { + "description": "Success" + }, + "default": { + "description": "Error response", + "x-ms-error-response": true + } + } + }, + "delete": { + "tags": [ + "webpubsub" + ], + "summary": "Revoke permission for the connection.", + "operationId": "WebPubSub_RevokePermission", + "parameters": [ + { + "in": "path", + "name": "hub", + "description": "Target hub name, which should start with alphabetic characters and only contain alpha-numeric characters or underscore.", + "required": true, + "type": "string", + "pattern": "^[A-Za-z][A-Za-z0-9_`,.[\\]]{0,127}$" + }, + { + "in": "path", + "name": "permission", + "description": "The permission: current supported actions are joinLeaveGroup and sendToGroup.", + "required": true, + "type": "string", + "enum": [ + "sendToGroup", + "joinLeaveGroup" + ], + "x-ms-enum": { + "name": "WebPubSubPermission", + "modelAsString": true + } + }, + { + "in": "path", + "name": "connectionId", + "description": "Target connection Id.", + "required": true, + "type": "string", + "minLength": 1 + }, + { + "in": "query", + "name": "targetName", + "description": "The meaning of the target depends on the specific permission. For joinLeaveGroup and sendToGroup, targetName is a required parameter standing for the group name.", + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The version of the REST APIs.", + "type": "string", + "default": "2021-05-01-preview" + } + ], + "responses": { + "200": { + "description": "Success" + }, + "default": { + "description": "Error response", + "x-ms-error-response": true + } + } + }, + "head": { + "tags": [ + "webpubsub" + ], + "summary": "Check if a connection has permission to the specified action.", + "operationId": "WebPubSub_CheckPermission", + "parameters": [ + { + "in": "path", + "name": "hub", + "description": "Target hub name, which should start with alphabetic characters and only contain alpha-numeric characters or underscore.", + "required": true, + "type": "string", + "pattern": "^[A-Za-z][A-Za-z0-9_`,.[\\]]{0,127}$" + }, + { + "in": "path", + "name": "permission", + "description": "The permission: current supported actions are joinLeaveGroup and sendToGroup.", + "required": true, + "type": "string", + "enum": [ + "sendToGroup", + "joinLeaveGroup" + ], + "x-ms-enum": { + "name": "WebPubSubPermission", + "modelAsString": true + } + }, + { + "in": "path", + "name": "connectionId", + "description": "Target connection Id.", + "required": true, + "type": "string", + "minLength": 1 + }, + { + "in": "query", + "name": "targetName", + "description": "The meaning of the target depends on the specific permission. For joinLeaveGroup and sendToGroup, targetName is a required parameter standing for the group name.", + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The version of the REST APIs.", + "type": "string", + "default": "2021-05-01-preview" + } + ], + "responses": { + "200": { + "description": "Success" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response", + "x-ms-error-response": true + } + } + } + } + } +} diff --git a/specification/webpubsub/data-plane/readme.md b/specification/webpubsub/data-plane/readme.md new file mode 100644 index 000000000000..8d4aa8add44e --- /dev/null +++ b/specification/webpubsub/data-plane/readme.md @@ -0,0 +1,161 @@ +# Web PubSub Service + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for Web PubSub Service. + + + +--- +## Getting Started +To build the SDK for Web PubSub Service, 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 Web PubSub Service API. + +``` yaml +openapi-type: data-plane +tag: package-2021-05-01-preview +``` + +### Suppression + +``` yaml +directive: + - suppress: LROStatusCodesReturnTypeSchema + reason: For this data plane API, it is not a long run operation and the status code indicates the results. + - suppress: XmsExamplesRequired + reason: There are a lot of APIs that does not have the example. While it is being worked upon disabling this to ensure that we catch and fix other violations +``` + +### Tag: package-2021-05-01-preview + +These settings apply only when `--tag=package-2021-05-01-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2021-05-01-preview' +input-file: +- WebPubSub/preview/2021-05-01-preview/webpubsub.json +title: AzureMessagingWebPubSubServiceClient +``` + +# Code Generation + + +## Swagger to SDK + +This section describes what SDK should be generated by the automatic system. +This is not used by Autorest itself. + +``` yaml $(swagger-to-sdk) +swagger-to-sdk: + - repo: azure-sdk-for-python + - repo: azure-sdk-for-net + - repo: azure-sdk-for-java + - repo: azure-sdk-for-js +``` + +## 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.0.17.3 + azure-arm: false + license-header: MICROSOFT_MIT_NO_VERSION + namespace: Azure.Messaging.WebPubSub + output-folder: $(csharp-sdks-folder)/webpubsub/Azure.Messaging.WebPubSub/src/Generated + clear-output-folder: true +``` + +## Java + +These settings apply only when `--java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(java) +azure-arm: false +fluent: true +namespace: com.azure.messaging.webpubsub +license-header: MICROSOFT_MIT_NO_CODEGEN +payload-flattening-threshold: 1 +output-folder: $(azure-libraries-for-java-folder)/webpubsub/data-plane +``` + +## TypeScript + +These settings apply only when `--typescript` is specified on the command line. +Please also specify `--typescript-sdks-folder=`. + +``` yaml $(typescript) +azure-arm: false +package-name: "@azure/web-pubsub" +license-header: MICROSOFT_MIT_NO_VERSION +output-folder: "$(typescript-sdks-folder)/sdk/web-pubsub/web-pubsub" +clear-output-folder: true +generate-metadata: true +v3: true +use-extension: + "@autorest/typescript": "6.0.0-dev.20201105.2" +``` + +## 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 +azure-arm: false +license-header: MICROSOFT_MIT_NO_VERSION +namespace: azure.messaging.webpubsub +package-name: azure-messaging-webpubsubservice +package-version: 1.0.0b1 +clear-output-folder: true +``` +``` yaml $(python) && $(python-mode) == 'update' +no-namespace-folders: true +output-folder: $(python-sdks-folder)/webpubsub/azure-messaging-webpubsubservice/azure/messaging/webpubsubservice +``` +``` yaml $(python) && $(python-mode) == 'create' +basic-setup-py: true +output-folder: $(python-sdks-folder)/webpubsub/azure-messaging-webpubsubservice +``` + + +## Multi-API/Profile support for AutoRest v3 generators + +AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. + +This block is updated by an automatic script. Edits may be lost! + +``` yaml $(tag) == 'all-api-versions' /* autogenerated */ +# include the azure profile definitions from the standard location +require: $(this-folder)/../../../profiles/readme.md + +# all the input files across all versions +input-file: + - $(this-folder)/WebPubSub/preview/2021-05-01-preview/webpubsub.json + +``` + +If there are files that should not be in the `all-api-versions` set, +uncomment the `exclude-file` section below and add the file paths. + +``` yaml $(tag) == 'all-api-versions' +#exclude-file: +# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json +``` diff --git a/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/Operations_List.json b/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/Operations_List.json new file mode 100644 index 000000000000..a55de4918b86 --- /dev/null +++ b/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/Operations_List.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.SignalRService/WebPubSub/read", + "isDataAction": false, + "display": { + "provider": "Microsoft.SignalRService", + "resource": "WebPubSub", + "operation": "Manage WebPubSub (read-only)", + "description": "View the resource settings and configurations in the management portal or through API" + }, + "properties": {} + } + ], + "nextLink": "providers/Microsoft.SignalRService?$skipToken={opaqueString}" + } + } + } +} diff --git a/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/Usages_List.json b/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/Usages_List.json new file mode 100644 index 000000000000..f037659b666a --- /dev/null +++ b/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/Usages_List.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "location": "eastus", + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.SignalRService/locations/eastus/usages/Usage1", + "currentValue": 0, + "limit": 100, + "name": { + "value": "Usage1", + "localizedValue": "Usage1" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.SignalRService/locations/eastus/usages/Usage2", + "currentValue": 0, + "limit": 100, + "name": { + "value": "Usage2", + "localizedValue": "Usage2" + }, + "unit": "Count" + } + ], + "nextLink": "https://management.azure.com/subscriptions/subid/providers/Microsoft.SignalRService/...pathToMoreResults..." + } + } + } +} diff --git a/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSubPrivateEndpointConnections_Delete.json b/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSubPrivateEndpointConnections_Delete.json new file mode 100644 index 000000000000..ee303cba5988 --- /dev/null +++ b/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSubPrivateEndpointConnections_Delete.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "resourceName": "myWebPubSubService", + "privateEndpointConnectionName": "mywebpubsubservice.1fa229cd-bf3f-47f0-8c49-afb36723997e" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.SignalRService/...pathToOperationResult...", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.SignalRService/...pathToOperationStatus..." + } + }, + "204": {} + } +} diff --git a/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSubPrivateEndpointConnections_Get.json b/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSubPrivateEndpointConnections_Get.json new file mode 100644 index 000000000000..1cab6098668a --- /dev/null +++ b/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSubPrivateEndpointConnections_Get.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "resourceName": "myWebPubSubService", + "privateEndpointConnectionName": "mywebpubsubservice.1fa229cd-bf3f-47f0-8c49-afb36723997e" + }, + "responses": { + "200": { + "body": { + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2015-02-03T04:05:06Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2015-02-03T04:05:06Z" + }, + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "actionsRequired": "None" + } + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/WebPubSub/myWebPubSubService/privateEndpointConnections/mywebpubsubservice.1fa229cd-bf3f-47f0-8c49-afb36723997e", + "name": "mywebpubsubservice.1fa229cd-bf3f-47f0-8c49-afb36723997e", + "type": "Microsoft.SignalRService/WebPubSub/privateEndpointConnections" + } + } + } +} diff --git a/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSubPrivateEndpointConnections_List.json b/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSubPrivateEndpointConnections_List.json new file mode 100644 index 000000000000..b77cf63daa93 --- /dev/null +++ b/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSubPrivateEndpointConnections_List.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "resourceName": "myWebPubSubService" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2015-02-03T04:05:06Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2015-02-03T04:05:06Z" + }, + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "actionsRequired": "None" + } + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/WebPubSub/myWebPubSubService/privateEndpointConnections/mywebpubsubservice.1fa229cd-bf3f-47f0-8c49-afb36723997e", + "name": "mywebpubsubservice.1fa229cd-bf3f-47f0-8c49-afb36723997e", + "type": "Microsoft.SignalRService/WebPubSub/privateEndpointConnections" + } + ] + } + } + } +} diff --git a/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSubPrivateEndpointConnections_Update.json b/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSubPrivateEndpointConnections_Update.json new file mode 100644 index 000000000000..bb92625f3a2d --- /dev/null +++ b/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSubPrivateEndpointConnections_Update.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "parameters": { + "properties": { + "privateEndpoint": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "actionsRequired": "None" + } + } + }, + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "resourceName": "myWebPubSubService", + "privateEndpointConnectionName": "mywebpubsubservice.1fa229cd-bf3f-47f0-8c49-afb36723997e" + }, + "responses": { + "200": { + "body": { + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2015-02-03T04:05:06Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2015-02-03T04:05:06Z" + }, + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "actionsRequired": "None" + } + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/WebPubSub/myWebPubSubService/privateEndpointConnections/mywebpubsubservice.1fa229cd-bf3f-47f0-8c49-afb36723997e", + "name": "mywebpubsubservice.1fa229cd-bf3f-47f0-8c49-afb36723997e", + "type": "Microsoft.SignalRService/WebPubSub/privateEndpointConnections" + }, + "headers": { + "Location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.SignalRService/...pathToOperationResult...", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.SignalRService/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSubPrivateLinkResources_List.json b/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSubPrivateLinkResources_List.json new file mode 100644 index 000000000000..fcef121027d4 --- /dev/null +++ b/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSubPrivateLinkResources_List.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "resourceName": "myWebPubSubService" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "groupId": "webpubsub", + "requiredMembers": [ + "webpubsub" + ], + "requiredZoneNames": [ + "privatelink.webpubsub.azure.com" + ], + "shareablePrivateLinkResourceTypes": [ + { + "name": "site", + "properties": { + "description": "Azure App Service can be used as an upstream", + "groupId": "sites", + "type": "Microsoft.Web/sites" + } + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/WebPubSub/myWebPubSubService/privateLinkResources/myPrivateLink", + "name": "myPrivateLink", + "type": "privateLinkResources" + } + ], + "nextLink": "https://management.azure.com/subscriptions/subid/providers/Microsoft.SignalRService/...pathToMoreResults..." + } + } + } +} diff --git a/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSubSharedPrivateLinkResources_CreateOrUpdate.json b/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSubSharedPrivateLinkResources_CreateOrUpdate.json new file mode 100644 index 000000000000..95dd01e692a9 --- /dev/null +++ b/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSubSharedPrivateLinkResources_CreateOrUpdate.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "parameters": { + "properties": { + "groupId": "sites", + "privateLinkResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.Web/sites/myWebApp", + "requestMessage": "Please approve" + } + }, + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "resourceName": "myWebPubSubService", + "sharedPrivateLinkResourceName": "upstream" + }, + "responses": { + "200": { + "body": { + "properties": { + "groupId": "sites", + "privateLinkResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.Web/sites/myWebApp", + "provisioningState": "Succeeded", + "requestMessage": "Please approve", + "status": "Approved" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/WebPubSub/myWebPubSubService/privateEndpointConnections/upstream", + "name": "upstream", + "type": "Microsoft.SignalRService/WebPubSub/privateEndpointConnections" + } + }, + "201": { + "body": { + "properties": { + "groupId": "sites", + "privateLinkResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.Web/sites/myWebApp", + "provisioningState": "Succeeded", + "requestMessage": "Please approve", + "status": "Approved" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/WebPubSub/myWebPubSubService/privateEndpointConnections/upstream", + "name": "upstream", + "type": "Microsoft.SignalRService/WebPubSub/privateEndpointConnections" + }, + "headers": { + "Location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.SignalRService/...pathToOperationResult...", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.SignalRService/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSubSharedPrivateLinkResources_Delete.json b/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSubSharedPrivateLinkResources_Delete.json new file mode 100644 index 000000000000..b13e8e797b73 --- /dev/null +++ b/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSubSharedPrivateLinkResources_Delete.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "resourceName": "myWebPubSubService", + "sharedPrivateLinkResourceName": "upstream" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.SignalRService/...pathToOperationResult...", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.SignalRService/...pathToOperationStatus..." + } + }, + "204": {} + } +} diff --git a/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSubSharedPrivateLinkResources_Get.json b/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSubSharedPrivateLinkResources_Get.json new file mode 100644 index 000000000000..01ad3f82dda1 --- /dev/null +++ b/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSubSharedPrivateLinkResources_Get.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "resourceName": "myWebPubSubService", + "sharedPrivateLinkResourceName": "upstream" + }, + "responses": { + "200": { + "body": { + "properties": { + "groupId": "sites", + "privateLinkResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.Web/sites/myWebApp", + "provisioningState": "Succeeded", + "requestMessage": "Please approve", + "status": "Approved" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/WebPubSub/myWebPubSubService/privateEndpointConnections/upstream", + "name": "upstream", + "type": "Microsoft.SignalRService/WebPubSub/privateEndpointConnections" + } + } + } +} diff --git a/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSubSharedPrivateLinkResources_List.json b/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSubSharedPrivateLinkResources_List.json new file mode 100644 index 000000000000..f3a9f6886e89 --- /dev/null +++ b/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSubSharedPrivateLinkResources_List.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "resourceName": "myWebPubSubService" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "groupId": "sites", + "privateLinkResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.Web/sites/myWebApp", + "provisioningState": "Succeeded", + "requestMessage": "Please approve", + "status": "Approved" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/WebPubSub/myWebPubSubService/privateEndpointConnections/upstream", + "name": "upstream", + "type": "Microsoft.SignalRService/WebPubSub/privateEndpointConnections" + } + ] + } + } + } +} diff --git a/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSub_CheckNameAvailability.json b/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSub_CheckNameAvailability.json new file mode 100644 index 000000000000..55cea5a1a857 --- /dev/null +++ b/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSub_CheckNameAvailability.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "location": "eastus", + "parameters": { + "type": "Microsoft.SignalRService/WebPubSub", + "name": "myWebPubSubService" + }, + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "nameAvailable": false, + "reason": "AlreadyExists", + "message": "The name is already taken. Please try a different name." + } + } + } +} diff --git a/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSub_CreateOrUpdate.json b/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSub_CreateOrUpdate.json new file mode 100644 index 000000000000..427f5e43acdb --- /dev/null +++ b/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSub_CreateOrUpdate.json @@ -0,0 +1,361 @@ +{ + "parameters": { + "parameters": { + "sku": { + "name": "Standard_S1", + "tier": "Standard", + "capacity": 1 + }, + "properties": { + "tls": { + "clientCertEnabled": false + }, + "features": [ + { + "flag": "ServiceMode", + "value": "Serverless", + "properties": {} + }, + { + "flag": "EnableConnectivityLogs", + "value": "True", + "properties": {} + }, + { + "flag": "EnableMessagingLogs", + "value": "False", + "properties": {} + }, + { + "flag": "EnableLiveTrace", + "value": "False", + "properties": {} + } + ], + "eventHandler": { + "items": { + "hub1": [ + { + "urlTemplate": "https://example.com/chat/api/hub1", + "userEventPattern": "*" + } + ], + "hub2": [ + { + "urlTemplate": "https://example.com/chat/api/hub2/example1", + "userEventPattern": "example1" + }, + { + "urlTemplate": "https://example.com/chat/api/hub2/example2", + "userEventPattern": "example2" + } + ] + } + }, + "networkACLs": { + "defaultAction": "Deny", + "publicNetwork": { + "allow": [ + "ClientConnection" + ] + }, + "privateEndpoints": [ + { + "name": "mywebpubsubservice.1fa229cd-bf3f-47f0-8c49-afb36723997e", + "allow": [ + "ServerConnection" + ] + } + ] + } + }, + "identity": { + "type": "SystemAssigned" + }, + "location": "eastus", + "tags": { + "key1": "value1" + } + }, + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "resourceName": "myWebPubSubService" + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "Standard_S1", + "tier": "Standard", + "size": "S1", + "capacity": 1 + }, + "properties": { + "provisioningState": "Succeeded", + "externalIP": "10.0.0.1", + "hostName": "mywebpubsubservice.webpubsub.azure.com", + "publicPort": 443, + "serverPort": 443, + "version": "1.0", + "privateEndpointConnections": [ + { + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2015-02-03T04:05:06Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2015-02-03T04:05:06Z" + }, + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "actionsRequired": "None" + } + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/WebPubSub/myWebPubSubService/privateEndpointConnections/mywebpubsubservice.1fa229cd-bf3f-47f0-8c49-afb36723997e", + "name": "mywebpubsubservice.1fa229cd-bf3f-47f0-8c49-afb36723997e", + "type": "Microsoft.SignalRService/WebPubSub/privateEndpointConnections" + } + ], + "tls": { + "clientCertEnabled": true + }, + "features": [ + { + "flag": "ServiceMode", + "value": "Serverless", + "properties": {} + }, + { + "flag": "EnableConnectivityLogs", + "value": "True", + "properties": {} + }, + { + "flag": "EnableMessagingLogs", + "value": "False", + "properties": {} + }, + { + "flag": "EnableLiveTrace", + "value": "False", + "properties": {} + } + ], + "eventHandler": { + "items": { + "hub1": [ + { + "urlTemplate": "https://example.com/chat/api/hub1", + "userEventPattern": "*", + "systemEventPattern": "connect,connected" + } + ], + "hub2": [ + { + "urlTemplate": "https://example.com/chat/api/hub2/example1", + "userEventPattern": "example1", + "auth": { + "type": "ManagedIdentity", + "managedIdentity": { + "resource": "http://example.com" + } + } + }, + { + "urlTemplate": "https://example.com/chat/api/hub2/example2", + "userEventPattern": "example2" + } + ] + } + }, + "networkACLs": { + "defaultAction": "Deny", + "publicNetwork": { + "allow": [ + "ClientConnection" + ] + }, + "privateEndpoints": [ + { + "name": "mywebpubsubservice.1fa229cd-bf3f-47f0-8c49-afb36723997e", + "allow": [ + "ServerConnection" + ] + } + ] + }, + "publicNetworkAccess": "Enabled" + }, + "identity": { + "type": "SystemAssigned", + "principalId": "00000000-0000-0000-0000-000000000000", + "tenantId": "00000000-0000-0000-0000-000000000000" + }, + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2015-02-03T04:05:06Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2015-02-03T04:05:06Z" + }, + "location": "eastus", + "tags": { + "key1": "value1" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/WebPubSub/myWebPubSubService", + "name": "myWebPubSubService", + "type": "Microsoft.SignalRService/WebPubSub" + } + }, + "201": { + "body": { + "sku": { + "name": "Standard_S1", + "tier": "Standard", + "size": "S1", + "capacity": 1 + }, + "properties": { + "provisioningState": "Succeeded", + "externalIP": "10.0.0.1", + "hostName": "mywebpubsubservice.webpubsub.azure.com", + "publicPort": 443, + "serverPort": 443, + "version": "1.0", + "privateEndpointConnections": [ + { + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2015-02-03T04:05:06Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2015-02-03T04:05:06Z" + }, + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "actionsRequired": "None" + } + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/WebPubSub/myWebPubSubService/privateEndpointConnections/mywebpubsubservice.1fa229cd-bf3f-47f0-8c49-afb36723997e", + "name": "mywebpubsubservice.1fa229cd-bf3f-47f0-8c49-afb36723997e", + "type": "Microsoft.SignalRService/WebPubSub/privateEndpointConnections" + } + ], + "tls": { + "clientCertEnabled": true + }, + "features": [ + { + "flag": "ServiceMode", + "value": "Serverless", + "properties": {} + }, + { + "flag": "EnableConnectivityLogs", + "value": "True", + "properties": {} + }, + { + "flag": "EnableMessagingLogs", + "value": "False", + "properties": {} + }, + { + "flag": "EnableLiveTrace", + "value": "False", + "properties": {} + } + ], + "eventHandler": { + "items": { + "hub1": [ + { + "urlTemplate": "https://example.com/chat/api/hub1", + "userEventPattern": "*", + "systemEventPattern": "connect,connected" + } + ], + "hub2": [ + { + "urlTemplate": "https://example.com/chat/api/hub2/example1", + "userEventPattern": "example1", + "auth": { + "type": "ManagedIdentity", + "managedIdentity": { + "resource": "http://example.com" + } + } + }, + { + "urlTemplate": "https://example.com/chat/api/hub2/example2", + "userEventPattern": "example2" + } + ] + } + }, + "networkACLs": { + "defaultAction": "Deny", + "publicNetwork": { + "allow": [ + "ClientConnection" + ] + }, + "privateEndpoints": [ + { + "name": "mywebpubsubservice.1fa229cd-bf3f-47f0-8c49-afb36723997e", + "allow": [ + "ServerConnection" + ] + } + ] + }, + "publicNetworkAccess": "Enabled" + }, + "identity": { + "type": "SystemAssigned", + "principalId": "00000000-0000-0000-0000-000000000000", + "tenantId": "00000000-0000-0000-0000-000000000000" + }, + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2015-02-03T04:05:06Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2015-02-03T04:05:06Z" + }, + "location": "eastus", + "tags": { + "key1": "value1" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/WebPubSub/myWebPubSubService", + "name": "myWebPubSubService", + "type": "Microsoft.SignalRService/WebPubSub" + }, + "headers": { + "Location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.SignalRService/...pathToOperationResult...", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.SignalRService/...pathToOperationStatus..." + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.SignalRService/...pathToOperationResult...", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.SignalRService/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSub_Delete.json b/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSub_Delete.json new file mode 100644 index 000000000000..2b2f21cd40a8 --- /dev/null +++ b/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSub_Delete.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "resourceName": "myWebPubSubService" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.SignalRService/...pathToOperationResult...", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.SignalRService/...pathToOperationStatus..." + } + }, + "204": {} + } +} diff --git a/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSub_Get.json b/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSub_Get.json new file mode 100644 index 000000000000..bcb1853b618c --- /dev/null +++ b/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSub_Get.json @@ -0,0 +1,142 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "resourceName": "myWebPubSubService" + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "Standard_S1", + "tier": "Standard", + "size": "S1", + "capacity": 1 + }, + "properties": { + "provisioningState": "Succeeded", + "externalIP": "10.0.0.1", + "hostName": "mywebpubsubservice.webpubsub.azure.com", + "publicPort": 443, + "serverPort": 443, + "version": "1.0", + "privateEndpointConnections": [ + { + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2015-02-03T04:05:06Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2015-02-03T04:05:06Z" + }, + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "actionsRequired": "None" + } + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/WebPubSub/myWebPubSubService/privateEndpointConnections/mywebpubsubservice.1fa229cd-bf3f-47f0-8c49-afb36723997e", + "name": "mywebpubsubservice.1fa229cd-bf3f-47f0-8c49-afb36723997e", + "type": "Microsoft.SignalRService/WebPubSub/privateEndpointConnections" + } + ], + "tls": { + "clientCertEnabled": true + }, + "features": [ + { + "flag": "ServiceMode", + "value": "Serverless", + "properties": {} + }, + { + "flag": "EnableConnectivityLogs", + "value": "True", + "properties": {} + }, + { + "flag": "EnableMessagingLogs", + "value": "False", + "properties": {} + }, + { + "flag": "EnableLiveTrace", + "value": "False", + "properties": {} + } + ], + "eventHandler": { + "items": { + "hub1": [ + { + "urlTemplate": "https://example.com/chat/api/hub1", + "userEventPattern": "*", + "systemEventPattern": "connect,connected" + } + ], + "hub2": [ + { + "urlTemplate": "https://example.com/chat/api/hub2/example1", + "userEventPattern": "example1", + "auth": { + "type": "ManagedIdentity", + "managedIdentity": { + "resource": "http://example.com" + } + } + }, + { + "urlTemplate": "https://example.com/chat/api/hub2/example2", + "userEventPattern": "example2" + } + ] + } + }, + "networkACLs": { + "defaultAction": "Deny", + "publicNetwork": { + "allow": [ + "ClientConnection" + ] + }, + "privateEndpoints": [ + { + "name": "mywebpubsubservice.1fa229cd-bf3f-47f0-8c49-afb36723997e", + "allow": [ + "ServerConnection" + ] + } + ] + }, + "publicNetworkAccess": "Enabled" + }, + "identity": { + "type": "SystemAssigned", + "principalId": "00000000-0000-0000-0000-000000000000", + "tenantId": "00000000-0000-0000-0000-000000000000" + }, + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2015-02-03T04:05:06Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2015-02-03T04:05:06Z" + }, + "location": "eastus", + "tags": { + "key1": "value1" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/WebPubSub/myWebPubSubService", + "name": "myWebPubSubService", + "type": "Microsoft.SignalRService/WebPubSub" + } + } + } +} diff --git a/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSub_ListByResourceGroup.json b/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSub_ListByResourceGroup.json new file mode 100644 index 000000000000..41bbc1ef9078 --- /dev/null +++ b/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSub_ListByResourceGroup.json @@ -0,0 +1,145 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "sku": { + "name": "Standard_S1", + "tier": "Standard", + "size": "S1", + "capacity": 1 + }, + "properties": { + "provisioningState": "Succeeded", + "externalIP": "10.0.0.1", + "hostName": "mywebpubsubservice.webpubsub.azure.com", + "publicPort": 443, + "serverPort": 443, + "version": "1.0", + "privateEndpointConnections": [ + { + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2015-02-03T04:05:06Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2015-02-03T04:05:06Z" + }, + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "actionsRequired": "None" + } + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/WebPubSub/myWebPubSubService/privateEndpointConnections/mywebpubsubservice.1fa229cd-bf3f-47f0-8c49-afb36723997e", + "name": "mywebpubsubservice.1fa229cd-bf3f-47f0-8c49-afb36723997e", + "type": "Microsoft.SignalRService/WebPubSub/privateEndpointConnections" + } + ], + "tls": { + "clientCertEnabled": true + }, + "features": [ + { + "flag": "ServiceMode", + "value": "Serverless", + "properties": {} + }, + { + "flag": "EnableConnectivityLogs", + "value": "True", + "properties": {} + }, + { + "flag": "EnableMessagingLogs", + "value": "False", + "properties": {} + }, + { + "flag": "EnableLiveTrace", + "value": "False", + "properties": {} + } + ], + "eventHandler": { + "items": { + "hub1": [ + { + "urlTemplate": "https://example.com/chat/api/hub1", + "userEventPattern": "*", + "systemEventPattern": "connect,connected" + } + ], + "hub2": [ + { + "urlTemplate": "https://example.com/chat/api/hub2/example1", + "userEventPattern": "example1", + "auth": { + "type": "ManagedIdentity", + "managedIdentity": { + "resource": "http://example.com" + } + } + }, + { + "urlTemplate": "https://example.com/chat/api/hub2/example2", + "userEventPattern": "example2" + } + ] + } + }, + "networkACLs": { + "defaultAction": "Deny", + "publicNetwork": { + "allow": [ + "ClientConnection" + ] + }, + "privateEndpoints": [ + { + "name": "mywebpubsubservice.1fa229cd-bf3f-47f0-8c49-afb36723997e", + "allow": [ + "ServerConnection" + ] + } + ] + }, + "publicNetworkAccess": "Enabled" + }, + "identity": { + "type": "SystemAssigned", + "principalId": "00000000-0000-0000-0000-000000000000", + "tenantId": "00000000-0000-0000-0000-000000000000" + }, + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2015-02-03T04:05:06Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2015-02-03T04:05:06Z" + }, + "location": "eastus", + "tags": { + "key1": "value1" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/WebPubSub/myWebPubSubService", + "name": "myWebPubSubService", + "type": "Microsoft.SignalRService/WebPubSub" + } + ] + } + } + } +} diff --git a/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSub_ListBySubscription.json b/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSub_ListBySubscription.json new file mode 100644 index 000000000000..201dcf504518 --- /dev/null +++ b/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSub_ListBySubscription.json @@ -0,0 +1,144 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "sku": { + "name": "Standard_S1", + "tier": "Standard", + "size": "S1", + "capacity": 1 + }, + "properties": { + "provisioningState": "Succeeded", + "externalIP": "10.0.0.1", + "hostName": "mywebpubsubservice.webpubsub.azure.com", + "publicPort": 443, + "serverPort": 443, + "version": "1.0", + "privateEndpointConnections": [ + { + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2015-02-03T04:05:06Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2015-02-03T04:05:06Z" + }, + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "actionsRequired": "None" + } + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/WebPubSub/myWebPubSubService/privateEndpointConnections/mywebpubsubservice.1fa229cd-bf3f-47f0-8c49-afb36723997e", + "name": "mywebpubsubservice.1fa229cd-bf3f-47f0-8c49-afb36723997e", + "type": "Microsoft.SignalRService/WebPubSub/privateEndpointConnections" + } + ], + "tls": { + "clientCertEnabled": true + }, + "features": [ + { + "flag": "ServiceMode", + "value": "Serverless", + "properties": {} + }, + { + "flag": "EnableConnectivityLogs", + "value": "True", + "properties": {} + }, + { + "flag": "EnableMessagingLogs", + "value": "False", + "properties": {} + }, + { + "flag": "EnableLiveTrace", + "value": "False", + "properties": {} + } + ], + "eventHandler": { + "items": { + "hub1": [ + { + "urlTemplate": "https://example.com/chat/api/hub1", + "userEventPattern": "*", + "systemEventPattern": "connect,connected" + } + ], + "hub2": [ + { + "urlTemplate": "https://example.com/chat/api/hub2/example1", + "userEventPattern": "example1", + "auth": { + "type": "ManagedIdentity", + "managedIdentity": { + "resource": "http://example.com" + } + } + }, + { + "urlTemplate": "https://example.com/chat/api/hub2/example2", + "userEventPattern": "example2" + } + ] + } + }, + "networkACLs": { + "defaultAction": "Deny", + "publicNetwork": { + "allow": [ + "ClientConnection" + ] + }, + "privateEndpoints": [ + { + "name": "mywebpubsubservice.1fa229cd-bf3f-47f0-8c49-afb36723997e", + "allow": [ + "ServerConnection" + ] + } + ] + }, + "publicNetworkAccess": "Enabled" + }, + "identity": { + "type": "SystemAssigned", + "principalId": "00000000-0000-0000-0000-000000000000", + "tenantId": "00000000-0000-0000-0000-000000000000" + }, + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2015-02-03T04:05:06Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2015-02-03T04:05:06Z" + }, + "location": "eastus", + "tags": { + "key1": "value1" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/WebPubSub/myWebPubSubService", + "name": "myWebPubSubService", + "type": "Microsoft.SignalRService/WebPubSub" + } + ] + } + } + } +} diff --git a/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSub_ListKeys.json b/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSub_ListKeys.json new file mode 100644 index 000000000000..9c60dea96102 --- /dev/null +++ b/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSub_ListKeys.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "resourceName": "myWebPubSubService" + }, + "responses": { + "200": { + "body": {} + } + } +} diff --git a/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSub_RegenerateKey.json b/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSub_RegenerateKey.json new file mode 100644 index 000000000000..0186cdad06c4 --- /dev/null +++ b/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSub_RegenerateKey.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "parameters": { + "keyType": "Primary" + }, + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "resourceName": "myWebPubSubService" + }, + "responses": { + "202": { + "body": {}, + "headers": { + "Location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.SignalRService/...pathToOperationResult...", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.SignalRService/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSub_Restart.json b/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSub_Restart.json new file mode 100644 index 000000000000..4a9db009ae82 --- /dev/null +++ b/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSub_Restart.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "resourceName": "myWebPubSubService" + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.SignalRService/...pathToOperationResult...", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.SignalRService/...pathToOperationStatus..." + } + }, + "204": {} + } +} diff --git a/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSub_Update.json b/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSub_Update.json new file mode 100644 index 000000000000..e489187b6225 --- /dev/null +++ b/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/examples/WebPubSub_Update.json @@ -0,0 +1,225 @@ +{ + "parameters": { + "parameters": { + "sku": { + "name": "Standard_S1", + "tier": "Standard", + "capacity": 1 + }, + "properties": { + "tls": { + "clientCertEnabled": false + }, + "features": [ + { + "flag": "ServiceMode", + "value": "Serverless", + "properties": {} + }, + { + "flag": "EnableConnectivityLogs", + "value": "True", + "properties": {} + }, + { + "flag": "EnableMessagingLogs", + "value": "False", + "properties": {} + }, + { + "flag": "EnableLiveTrace", + "value": "False", + "properties": {} + } + ], + "eventHandler": { + "items": { + "hub1": [ + { + "urlTemplate": "https://example.com/chat/api/hub1", + "userEventPattern": "*" + } + ], + "hub2": [ + { + "urlTemplate": "https://example.com/chat/api/hub2/example1", + "userEventPattern": "example1" + }, + { + "urlTemplate": "https://example.com/chat/api/hub2/example2", + "userEventPattern": "example2" + } + ] + } + }, + "networkACLs": { + "defaultAction": "Deny", + "publicNetwork": { + "allow": [ + "ClientConnection" + ] + }, + "privateEndpoints": [ + { + "name": "mywebpubsubservice.1fa229cd-bf3f-47f0-8c49-afb36723997e", + "allow": [ + "ServerConnection" + ] + } + ] + } + }, + "identity": { + "type": "SystemAssigned" + }, + "location": "eastus", + "tags": { + "key1": "value1" + } + }, + "api-version": "2021-04-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "resourceName": "myWebPubSubService" + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "Standard_S1", + "tier": "Standard", + "size": "S1", + "capacity": 1 + }, + "properties": { + "provisioningState": "Succeeded", + "externalIP": "10.0.0.1", + "hostName": "mywebpubsubservice.webpubsub.azure.com", + "publicPort": 443, + "serverPort": 443, + "version": "1.0", + "privateEndpointConnections": [ + { + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2015-02-03T04:05:06Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2015-02-03T04:05:06Z" + }, + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "actionsRequired": "None" + } + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/WebPubSub/myWebPubSubService/privateEndpointConnections/mywebpubsubservice.1fa229cd-bf3f-47f0-8c49-afb36723997e", + "name": "mywebpubsubservice.1fa229cd-bf3f-47f0-8c49-afb36723997e", + "type": "Microsoft.SignalRService/WebPubSub/privateEndpointConnections" + } + ], + "tls": { + "clientCertEnabled": true + }, + "features": [ + { + "flag": "ServiceMode", + "value": "Serverless", + "properties": {} + }, + { + "flag": "EnableConnectivityLogs", + "value": "True", + "properties": {} + }, + { + "flag": "EnableMessagingLogs", + "value": "False", + "properties": {} + }, + { + "flag": "EnableLiveTrace", + "value": "False", + "properties": {} + } + ], + "eventHandler": { + "items": { + "hub1": [ + { + "urlTemplate": "https://example.com/chat/api/hub1", + "userEventPattern": "*", + "systemEventPattern": "connect,connected" + } + ], + "hub2": [ + { + "urlTemplate": "https://example.com/chat/api/hub2/example1", + "userEventPattern": "example1", + "auth": { + "type": "ManagedIdentity", + "managedIdentity": { + "resource": "http://example.com" + } + } + }, + { + "urlTemplate": "https://example.com/chat/api/hub2/example2", + "userEventPattern": "example2" + } + ] + } + }, + "networkACLs": { + "defaultAction": "Deny", + "publicNetwork": { + "allow": [ + "ClientConnection" + ] + }, + "privateEndpoints": [ + { + "name": "mywebpubsubservice.1fa229cd-bf3f-47f0-8c49-afb36723997e", + "allow": [ + "ServerConnection" + ] + } + ] + }, + "publicNetworkAccess": "Enabled" + }, + "identity": { + "type": "SystemAssigned", + "principalId": "00000000-0000-0000-0000-000000000000", + "tenantId": "00000000-0000-0000-0000-000000000000" + }, + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2015-02-03T04:05:06Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2015-02-03T04:05:06Z" + }, + "location": "eastus", + "tags": { + "key1": "value1" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/WebPubSub/myWebPubSubService", + "name": "myWebPubSubService", + "type": "Microsoft.SignalRService/WebPubSub" + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.SignalRService/...pathToOperationResult...", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.SignalRService/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/webpubsub.json b/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/webpubsub.json new file mode 100644 index 000000000000..5f6fcf108b5f --- /dev/null +++ b/specification/webpubsub/resource-manager/Microsoft.SignalRService/preview/2021-04-01-preview/webpubsub.json @@ -0,0 +1,2194 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-04-01-preview", + "title": "WebPubSubManagementClient", + "description": "REST API for Azure WebPubSub Service" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/providers/Microsoft.SignalRService/operations": { + "get": { + "tags": [ + "WebPubSub" + ], + "description": "Lists all of the available REST API operations of the Microsoft.SignalRService provider.", + "operationId": "Operations_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describes the list of operations.", + "schema": { + "$ref": "#/definitions/OperationList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Operations_List": { + "$ref": "./examples/Operations_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.SignalRService/locations/{location}/checkNameAvailability": { + "post": { + "tags": [ + "WebPubSub" + ], + "description": "Checks that the resource name is valid and is not already in use.", + "operationId": "WebPubSub_CheckNameAvailability", + "parameters": [ + { + "name": "location", + "in": "path", + "description": "the region", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "Parameters supplied to the operation.", + "required": true, + "schema": { + "$ref": "#/definitions/NameAvailabilityParameters" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describes the name availability.", + "schema": { + "$ref": "#/definitions/NameAvailability" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "WebPubSub_CheckNameAvailability": { + "$ref": "./examples/WebPubSub_CheckNameAvailability.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.SignalRService/locations/{location}/usages": { + "get": { + "tags": [ + "WebPubSub" + ], + "description": "List resource usage quotas by location.", + "operationId": "Usages_List", + "parameters": [ + { + "name": "location", + "in": "path", + "description": "the location like \"eastus\"", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describe the usage quotas of a subscription in specified region.", + "schema": { + "$ref": "#/definitions/SignalRServiceUsageList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Usages_List": { + "$ref": "./examples/Usages_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.SignalRService/webPubSub": { + "get": { + "tags": [ + "WebPubSub" + ], + "description": "Handles requests to list all resources in a subscription.", + "operationId": "WebPubSub_ListBySubscription", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describes the list of resources in the subscription.", + "schema": { + "$ref": "#/definitions/WebPubSubResourceList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "WebPubSub_ListBySubscription": { + "$ref": "./examples/WebPubSub_ListBySubscription.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SignalRService/webPubSub": { + "get": { + "tags": [ + "WebPubSub" + ], + "description": "Handles requests to list all resources in a resource group.", + "operationId": "WebPubSub_ListByResourceGroup", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describes the list of resources in a resourceGroup.", + "schema": { + "$ref": "#/definitions/WebPubSubResourceList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "WebPubSub_ListByResourceGroup": { + "$ref": "./examples/WebPubSub_ListByResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SignalRService/webPubSub/{resourceName}": { + "get": { + "tags": [ + "WebPubSub" + ], + "description": "Get the resource and its properties.", + "operationId": "WebPubSub_Get", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ResourceName" + } + ], + "responses": { + "200": { + "description": "Success. The response describes the corresponding resource.", + "schema": { + "$ref": "#/definitions/WebPubSubResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "WebPubSub_Get": { + "$ref": "./examples/WebPubSub_Get.json" + } + } + }, + "put": { + "tags": [ + "WebPubSub" + ], + "description": "Create or update a resource.", + "operationId": "WebPubSub_CreateOrUpdate", + "parameters": [ + { + "name": "parameters", + "in": "body", + "description": "Parameters for the create or update operation", + "required": true, + "schema": { + "$ref": "#/definitions/WebPubSubResource" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ResourceName" + } + ], + "responses": { + "200": { + "description": "Success. The response describes a resource.", + "schema": { + "$ref": "#/definitions/WebPubSubResource" + } + }, + "201": { + "description": "Created. The response describes the new resource and contains a Location header to query the operation result.", + "schema": { + "$ref": "#/definitions/WebPubSubResource" + } + }, + "202": { + "description": "Accepted. The response indicates the exiting resource is now updating and contains a Location header to query the operation result.." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "WebPubSub_CreateOrUpdate": { + "$ref": "./examples/WebPubSub_CreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "WebPubSub" + ], + "description": "Operation to delete a resource.", + "operationId": "WebPubSub_Delete", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ResourceName" + } + ], + "responses": { + "200": { + "description": "Success. The response indicates the resource is already deleted." + }, + "202": { + "description": "Accepted. The response indicates the delete operation is performed in the background." + }, + "204": { + "description": "Success. The response indicates the resource is already deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "WebPubSub_Delete": { + "$ref": "./examples/WebPubSub_Delete.json" + } + } + }, + "patch": { + "tags": [ + "WebPubSub" + ], + "description": "Operation to update an exiting resource.", + "operationId": "WebPubSub_Update", + "parameters": [ + { + "name": "parameters", + "in": "body", + "description": "Parameters for the update operation", + "required": true, + "schema": { + "$ref": "#/definitions/WebPubSubResource" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ResourceName" + } + ], + "responses": { + "200": { + "description": "Success. The response describes a resource.", + "schema": { + "$ref": "#/definitions/WebPubSubResource" + } + }, + "202": { + "description": "Accepted. The response indicates the exiting resource is now updating and contains a Location header to query the operation result.." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "WebPubSub_Update": { + "$ref": "./examples/WebPubSub_Update.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SignalRService/webPubSub/{resourceName}/listKeys": { + "post": { + "tags": [ + "WebPubSub" + ], + "description": "Get the access keys of the resource.", + "operationId": "WebPubSub_ListKeys", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ResourceName" + } + ], + "responses": { + "200": { + "description": "Success. The response describes access keys of the resource.", + "schema": { + "$ref": "#/definitions/WebPubSubKeys" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "WebPubSub_ListKeys": { + "$ref": "./examples/WebPubSub_ListKeys.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SignalRService/webPubSub/{resourceName}/privateEndpointConnections": { + "get": { + "tags": [ + "WebPubSub" + ], + "description": "List private endpoint connections", + "operationId": "WebPubSubPrivateEndpointConnections_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ResourceName" + } + ], + "responses": { + "200": { + "description": "Success. The response describes a list of private endpoint connections.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "WebPubSubPrivateEndpointConnections_List": { + "$ref": "./examples/WebPubSubPrivateEndpointConnections_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SignalRService/webPubSub/{resourceName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "WebPubSub" + ], + "description": "Get the specified private endpoint connection", + "operationId": "WebPubSubPrivateEndpointConnections_Get", + "parameters": [ + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ResourceName" + } + ], + "responses": { + "200": { + "description": "Success. The response describes a private endpoint connection.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "WebPubSubPrivateEndpointConnections_Get": { + "$ref": "./examples/WebPubSubPrivateEndpointConnections_Get.json" + } + } + }, + "put": { + "tags": [ + "WebPubSub" + ], + "description": "Update the state of specified private endpoint connection", + "operationId": "WebPubSubPrivateEndpointConnections_Update", + "parameters": [ + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The resource of private endpoint and its properties", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ResourceName" + } + ], + "responses": { + "200": { + "description": "OK. The response indicates the private endpoint connection is updated successfully.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "WebPubSubPrivateEndpointConnections_Update": { + "$ref": "./examples/WebPubSubPrivateEndpointConnections_Update.json" + } + } + }, + "delete": { + "tags": [ + "WebPubSub" + ], + "description": "Delete the specified private endpoint connection", + "operationId": "WebPubSubPrivateEndpointConnections_Delete", + "parameters": [ + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ResourceName" + } + ], + "responses": { + "200": { + "description": "Success. The response indicates the resource is already deleted." + }, + "202": { + "description": "Accepted. The response indicates the delete operation is performed in the background." + }, + "204": { + "description": "Success. The response indicates the private endpoint connection is already deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "WebPubSubPrivateEndpointConnections_Delete": { + "$ref": "./examples/WebPubSubPrivateEndpointConnections_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SignalRService/webPubSub/{resourceName}/privateLinkResources": { + "get": { + "tags": [ + "WebPubSub" + ], + "description": "Get the private link resources that need to be created for a resource.", + "operationId": "WebPubSubPrivateLinkResources_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ResourceName" + } + ], + "responses": { + "200": { + "description": "Success. The response describes a list of private link resources.", + "schema": { + "$ref": "#/definitions/PrivateLinkResourceList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "WebPubSubPrivateLinkResources_List": { + "$ref": "./examples/WebPubSubPrivateLinkResources_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SignalRService/webPubSub/{resourceName}/regenerateKey": { + "post": { + "tags": [ + "WebPubSub" + ], + "description": "Regenerate the access key for the resource. PrimaryKey and SecondaryKey cannot be regenerated at the same time.", + "operationId": "WebPubSub_RegenerateKey", + "parameters": [ + { + "name": "parameters", + "in": "body", + "description": "Parameter that describes the Regenerate Key Operation.", + "required": true, + "schema": { + "$ref": "#/definitions/RegenerateKeyParameters" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ResourceName" + } + ], + "responses": { + "202": { + "description": "Accepted and an async operation is executing in background to make the new key to take effect. The response contains new access keys and a Location header to query the async operation result.", + "schema": { + "$ref": "#/definitions/WebPubSubKeys" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "WebPubSub_RegenerateKey": { + "$ref": "./examples/WebPubSub_RegenerateKey.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SignalRService/webPubSub/{resourceName}/restart": { + "post": { + "tags": [ + "WebPubSub" + ], + "description": "Operation to restart a resource.", + "operationId": "WebPubSub_Restart", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ResourceName" + } + ], + "responses": { + "202": { + "description": "Accepted. The response indicates the restart operation is performed in the background." + }, + "204": { + "description": "Success. The response indicates the operation is successful and no content will be returned." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "WebPubSub_Restart": { + "$ref": "./examples/WebPubSub_Restart.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SignalRService/webPubSub/{resourceName}/sharedPrivateLinkResources": { + "get": { + "tags": [ + "WebPubSub" + ], + "description": "List shared private link resources", + "operationId": "WebPubSubSharedPrivateLinkResources_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ResourceName" + } + ], + "responses": { + "200": { + "description": "Success. The response describes a list of shared private link resources.", + "schema": { + "$ref": "#/definitions/SharedPrivateLinkResourceList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "WebPubSubSharedPrivateLinkResources_List": { + "$ref": "./examples/WebPubSubSharedPrivateLinkResources_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SignalRService/webPubSub/{resourceName}/sharedPrivateLinkResources/{sharedPrivateLinkResourceName}": { + "get": { + "tags": [ + "WebPubSub" + ], + "description": "Get the specified shared private link resource", + "operationId": "WebPubSubSharedPrivateLinkResources_Get", + "parameters": [ + { + "name": "sharedPrivateLinkResourceName", + "in": "path", + "description": "The name of the shared private link resource", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ResourceName" + } + ], + "responses": { + "200": { + "description": "Success. The response describes a shared private link resource.", + "schema": { + "$ref": "#/definitions/SharedPrivateLinkResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "WebPubSubSharedPrivateLinkResources_Get": { + "$ref": "./examples/WebPubSubSharedPrivateLinkResources_Get.json" + } + } + }, + "put": { + "tags": [ + "WebPubSub" + ], + "description": "Create or update a shared private link resource", + "operationId": "WebPubSubSharedPrivateLinkResources_CreateOrUpdate", + "parameters": [ + { + "name": "sharedPrivateLinkResourceName", + "in": "path", + "description": "The name of the shared private link resource", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The shared private link resource", + "required": true, + "schema": { + "$ref": "#/definitions/SharedPrivateLinkResource" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ResourceName" + } + ], + "responses": { + "200": { + "description": "OK. The response indicates the shared private link resource is updated.", + "schema": { + "$ref": "#/definitions/SharedPrivateLinkResource" + } + }, + "201": { + "description": "Created. The response indicates the shared private link resource is created.", + "schema": { + "$ref": "#/definitions/SharedPrivateLinkResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "WebPubSubSharedPrivateLinkResources_CreateOrUpdate": { + "$ref": "./examples/WebPubSubSharedPrivateLinkResources_CreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "WebPubSub" + ], + "description": "Delete the specified shared private link resource", + "operationId": "WebPubSubSharedPrivateLinkResources_Delete", + "parameters": [ + { + "name": "sharedPrivateLinkResourceName", + "in": "path", + "description": "The name of the shared private link resource", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ResourceName" + } + ], + "responses": { + "200": { + "description": "Success. The response indicates the resource is already deleted." + }, + "202": { + "description": "Accepted. The response indicates the delete operation is performed in the background." + }, + "204": { + "description": "Success. The response indicates the private endpoint connection is already deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "WebPubSubSharedPrivateLinkResources_Delete": { + "$ref": "./examples/WebPubSubSharedPrivateLinkResources_Delete.json" + } + } + } + } + }, + "definitions": { + "ACLAction": { + "description": "Default action when no other rule matches", + "enum": [ + "Allow", + "Deny" + ], + "type": "string", + "x-ms-enum": { + "name": "ACLAction", + "modelAsString": true + } + }, + "Dimension": { + "description": "Specifications of the Dimension of metrics.", + "type": "object", + "properties": { + "name": { + "description": "The public facing name of the dimension.", + "type": "string" + }, + "displayName": { + "description": "Localized friendly display name of the dimension.", + "type": "string" + }, + "internalName": { + "description": "Name of the dimension as it appears in MDM.", + "type": "string" + }, + "toBeExportedForShoebox": { + "description": "A Boolean flag indicating whether this dimension should be included for the shoebox export scenario.", + "type": "boolean" + } + } + }, + "EventHandlerSettings": { + "description": "The settings for event handler in webpubsub service", + "type": "object", + "properties": { + "items": { + "description": "Get or set the EventHandler items. The key is the hub name and the value is the corresponding EventHandlerTemplate.", + "type": "object", + "additionalProperties": { + "type": "array", + "items": { + "$ref": "#/definitions/EventHandlerTemplate" + } + } + } + } + }, + "EventHandlerTemplate": { + "description": "EventHandler template item settings.", + "required": [ + "urlTemplate" + ], + "type": "object", + "properties": { + "urlTemplate": { + "description": "Gets or sets the EventHandler URL template. You can use a predefined parameter {hub} and {event} inside the template, the value of the EventHandler URL is dynamically calculated when the client request comes in.\r\nFor example, UrlTemplate can be `http://example.com/api/{hub}/{event}`. The host part can't contains parameters.", + "type": "string" + }, + "userEventPattern": { + "description": "Gets or sets the matching pattern for event names.\r\nThere are 3 kind of patterns supported:\r\n 1. \"*\", it to matches any event name\r\n 2. Combine multiple events with \",\", for example \"event1,event2\", it matches event \"event1\" and \"event2\"\r\n 3. The single event name, for example, \"event1\", it matches \"event1\"", + "type": "string" + }, + "systemEventPattern": { + "description": "Gets ot sets the system event pattern.\r\nThere are 2 kind of patterns supported:\r\n 1. The single event name, for example, \"connect\", it matches \"connect\"\r\n 2. Combine multiple events with \",\", for example \"connect,disconnected\", it matches event \"connect\" and \"disconnected\"", + "type": "string" + }, + "auth": { + "$ref": "#/definitions/UpstreamAuthSettings", + "description": "Gets or sets the auth settings for an event handler. If not set, no auth is used." + } + } + }, + "FeatureFlags": { + "description": "FeatureFlags is the supported features of Azure SignalR service.\n - EnableConnectivityLogs: \"true\"/\"false\", to enable/disable the connectivity log category respectively.\n - EnableMessagingLogs: \"true\"/\"false\", to enable/disable the connectivity log category respectively.\n - EnableLiveTrace: Live Trace allows you to know what's happening inside Azure SignalR service, it will give you live traces in real time, it will be helpful when you developing your own Azure SignalR based web application or self-troubleshooting some issues. Please note that live traces are counted as outbound messages that will be charged. Values allowed: \"true\"/\"false\", to enable/disable live trace feature.\n ", + "enum": [ + "EnableConnectivityLogs", + "EnableMessagingLogs", + "EnableLiveTrace" + ], + "type": "string", + "x-ms-enum": { + "name": "FeatureFlags", + "modelAsString": true + } + }, + "KeyType": { + "description": "The keyType to regenerate. Must be either 'primary' or 'secondary'(case-insensitive).", + "enum": [ + "Primary", + "Secondary" + ], + "type": "string", + "x-ms-enum": { + "name": "KeyType", + "modelAsString": true + } + }, + "LogSpecification": { + "description": "Specifications of the Logs for Azure Monitoring.", + "type": "object", + "properties": { + "name": { + "description": "Name of the log.", + "type": "string" + }, + "displayName": { + "description": "Localized friendly display name of the log.", + "type": "string" + } + } + }, + "ManagedIdentity": { + "description": "A class represent managed identities used for request and response", + "type": "object", + "properties": { + "type": { + "$ref": "#/definitions/ManagedIdentityType", + "description": "Represent the identity type: systemAssigned, userAssigned, None" + }, + "userAssignedIdentities": { + "description": "Get or set the user assigned identities", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/UserAssignedIdentityProperty" + } + }, + "principalId": { + "description": "Get the principal id for the system assigned identity.\r\nOnly be used in response.", + "type": "string", + "readOnly": true + }, + "tenantId": { + "description": "Get the tenant id for the system assigned identity.\r\nOnly be used in response", + "type": "string", + "readOnly": true + } + } + }, + "ManagedIdentitySettings": { + "description": "Managed identity settings for upstream.", + "type": "object", + "properties": { + "resource": { + "description": "The Resource indicating the App ID URI of the target resource.\r\nIt also appears in the aud (audience) claim of the issued token.", + "type": "string" + } + } + }, + "ManagedIdentityType": { + "description": "Represent the identity type: systemAssigned, userAssigned, None", + "enum": [ + "None", + "SystemAssigned", + "UserAssigned" + ], + "type": "string", + "x-ms-enum": { + "name": "ManagedIdentityType", + "modelAsString": true + } + }, + "MetricSpecification": { + "description": "Specifications of the Metrics for Azure Monitoring.", + "type": "object", + "properties": { + "name": { + "description": "Name of the metric.", + "type": "string" + }, + "displayName": { + "description": "Localized friendly display name of the metric.", + "type": "string" + }, + "displayDescription": { + "description": "Localized friendly description of the metric.", + "type": "string" + }, + "unit": { + "description": "The unit that makes sense for the metric.", + "type": "string" + }, + "aggregationType": { + "description": "Only provide one value for this field. Valid values: Average, Minimum, Maximum, Total, Count.", + "type": "string" + }, + "fillGapWithZero": { + "description": "Optional. If set to true, then zero will be returned for time duration where no metric is emitted/published. \r\nEx. a metric that returns the number of times a particular error code was emitted. The error code may not appear \r\noften, instead of the RP publishing 0, Shoebox can auto fill in 0s for time periods where nothing was emitted.", + "type": "string" + }, + "category": { + "description": "The name of the metric category that the metric belongs to. A metric can only belong to a single category.", + "type": "string" + }, + "dimensions": { + "description": "The dimensions of the metrics.", + "type": "array", + "items": { + "$ref": "#/definitions/Dimension" + } + } + } + }, + "NameAvailability": { + "description": "Result of the request to check name availability. It contains a flag and possible reason of failure.", + "type": "object", + "properties": { + "nameAvailable": { + "description": "Indicates whether the name is available or not.", + "type": "boolean" + }, + "reason": { + "description": "The reason of the availability. Required if name is not available.", + "type": "string" + }, + "message": { + "description": "The message of the operation.", + "type": "string" + } + } + }, + "NameAvailabilityParameters": { + "description": "Data POST-ed to the nameAvailability action", + "required": [ + "type", + "name" + ], + "type": "object", + "properties": { + "type": { + "description": "The resource type. Can be \"Microsoft.SignalRService/SignalR\" or \"Microsoft.SignalRService/webPubSub\"", + "type": "string" + }, + "name": { + "description": "The resource name to validate. e.g.\"my-resource-name\"", + "type": "string" + } + } + }, + "NetworkACL": { + "description": "Network ACL", + "type": "object", + "properties": { + "allow": { + "description": "Allowed request types. The value can be one or more of: ClientConnection, ServerConnection, RESTAPI.", + "type": "array", + "items": { + "$ref": "#/definitions/WebPubSubRequestType" + } + }, + "deny": { + "description": "Denied request types. The value can be one or more of: ClientConnection, ServerConnection, RESTAPI.", + "type": "array", + "items": { + "$ref": "#/definitions/WebPubSubRequestType" + } + } + } + }, + "Operation": { + "description": "REST API operation supported by resource provider.", + "type": "object", + "properties": { + "name": { + "description": "Name of the operation with format: {provider}/{resource}/{operation}", + "type": "string" + }, + "isDataAction": { + "description": "If the operation is a data action. (for data plane rbac)", + "type": "boolean" + }, + "display": { + "$ref": "#/definitions/OperationDisplay", + "description": "The object that describes the operation." + }, + "origin": { + "description": "Optional. The intended executor of the operation; governs the display of the operation in the RBAC UX and the audit logs UX.", + "type": "string" + }, + "properties": { + "$ref": "#/definitions/OperationProperties", + "description": "Extra properties for the operation.", + "x-ms-client-flatten": false + } + } + }, + "OperationDisplay": { + "description": "The object that describes a operation.", + "type": "object", + "properties": { + "provider": { + "description": "Friendly name of the resource provider", + "type": "string" + }, + "resource": { + "description": "Resource type on which the operation is performed.", + "type": "string" + }, + "operation": { + "description": "The localized friendly name for the operation.", + "type": "string" + }, + "description": { + "description": "The localized friendly description for the operation", + "type": "string" + } + } + }, + "OperationList": { + "description": "Result of the request to list REST API operations. It contains a list of operations.", + "type": "object", + "properties": { + "value": { + "description": "List of operations supported by the resource provider.", + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + } + }, + "nextLink": { + "description": "The URL the client should use to fetch the next page (per server side paging).\r\nIt's null for now, added for future use.", + "type": "string" + } + } + }, + "OperationProperties": { + "description": "Extra Operation properties.", + "type": "object", + "properties": { + "serviceSpecification": { + "$ref": "#/definitions/ServiceSpecification", + "description": "The service specifications." + } + } + }, + "PrivateEndpoint": { + "description": "Private endpoint", + "type": "object", + "properties": { + "id": { + "description": "Full qualified Id of the private endpoint", + "type": "string" + } + } + }, + "PrivateEndpointACL": { + "description": "ACL for a private endpoint", + "required": [ + "name" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/NetworkACL" + } + ], + "properties": { + "name": { + "description": "Name of the private endpoint connection", + "type": "string" + } + } + }, + "PrivateEndpointConnection": { + "description": "A private endpoint connection to an azure resource", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "systemData": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData", + "description": "Metadata pertaining to creation and last modification of the resource.", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "description": "Properties of the private endpoint connection", + "x-ms-client-flatten": true + } + } + }, + "PrivateEndpointConnectionList": { + "description": "A list of private endpoint connections", + "type": "object", + "properties": { + "value": { + "description": "The list of the private endpoint connections", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "nextLink": { + "description": "Request URL that can be used to query next page of private endpoint connections. Returned when the total number of requested private endpoint connections exceed maximum page size.", + "type": "string" + } + } + }, + "PrivateEndpointConnectionProperties": { + "description": "Private endpoint connection properties", + "type": "object", + "properties": { + "provisioningState": { + "$ref": "#/definitions/ProvisioningState", + "description": "Provisioning state of the private endpoint connection", + "readOnly": true + }, + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpoint", + "description": "Private endpoint associated with the private endpoint connection" + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionState", + "description": "Connection state" + } + } + }, + "PrivateLinkResource": { + "description": "Private link resource", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "Properties of a private link resource", + "x-ms-client-flatten": true + } + } + }, + "PrivateLinkResourceList": { + "description": "Contains a list of PrivateLinkResource and a possible link to query more results", + "type": "object", + "properties": { + "value": { + "description": "List of PrivateLinkResource", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + } + }, + "nextLink": { + "description": "The URL the client should use to fetch the next page (per server side paging).\r\nIt's null for now, added for future use.", + "type": "string" + } + } + }, + "PrivateLinkResourceProperties": { + "description": "Private link resource properties", + "type": "object", + "properties": { + "groupId": { + "description": "Group Id of the private link resource", + "type": "string" + }, + "requiredMembers": { + "description": "Required members of the private link resource", + "type": "array", + "items": { + "type": "string" + } + }, + "requiredZoneNames": { + "description": "Required private DNS zone names", + "type": "array", + "items": { + "type": "string" + } + }, + "shareablePrivateLinkResourceTypes": { + "description": "The list of resources that are onboarded to private link service", + "type": "array", + "items": { + "$ref": "#/definitions/ShareablePrivateLinkResourceType" + } + } + } + }, + "PrivateLinkServiceConnectionState": { + "description": "Connection state of the private endpoint connection", + "type": "object", + "properties": { + "status": { + "$ref": "#/definitions/PrivateLinkServiceConnectionStatus", + "description": "Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service." + }, + "description": { + "description": "The reason for approval/rejection of the connection.", + "type": "string" + }, + "actionsRequired": { + "description": "A message indicating if changes on the service provider require any updates on the consumer.", + "type": "string" + } + } + }, + "PrivateLinkServiceConnectionStatus": { + "description": "Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service.", + "enum": [ + "Pending", + "Approved", + "Rejected", + "Disconnected" + ], + "type": "string", + "x-ms-enum": { + "name": "PrivateLinkServiceConnectionStatus", + "modelAsString": true + } + }, + "ProvisioningState": { + "description": "Provisioning state of the resource.", + "enum": [ + "Unknown", + "Succeeded", + "Failed", + "Canceled", + "Running", + "Creating", + "Updating", + "Deleting", + "Moving" + ], + "type": "string", + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "ProxyResource": { + "description": "The resource model definition for a ARM proxy resource. It will have everything other than required location and tags", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": {} + }, + "RegenerateKeyParameters": { + "description": "Parameters describes the request to regenerate access keys", + "type": "object", + "properties": { + "keyType": { + "$ref": "#/definitions/KeyType", + "description": "The keyType to regenerate. Must be either 'primary' or 'secondary'(case-insensitive)." + } + } + }, + "Resource": { + "description": "The core properties of ARM resources.", + "type": "object", + "properties": { + "id": { + "description": "Fully qualified resource Id for the resource.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The name of the resource.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The type of the resource - e.g. \"Microsoft.SignalRService/SignalR\"", + "type": "string", + "readOnly": true + } + }, + "x-ms-azure-resource": true + }, + "ResourceSku": { + "description": "The billing information of the resource.", + "required": [ + "name" + ], + "type": "object", + "properties": { + "name": { + "description": "The name of the SKU. Required.\r\n\r\nAllowed values: Standard_S1, Free_F1", + "type": "string" + }, + "tier": { + "$ref": "#/definitions/WebPubSubSkuTier", + "description": "Optional tier of this particular SKU. 'Standard' or 'Free'. \r\n\r\n`Basic` is deprecated, use `Standard` instead." + }, + "size": { + "description": "Not used. Retained for future use.", + "type": "string", + "readOnly": true + }, + "family": { + "description": "Not used. Retained for future use.", + "type": "string", + "readOnly": true + }, + "capacity": { + "format": "int32", + "description": "Optional, integer. The unit count of the resource. 1 by default.\r\n\r\nIf present, following values are allowed:\r\n Free: 1\r\n Standard: 1,2,5,10,20,50,100", + "type": "integer" + } + } + }, + "ServiceSpecification": { + "description": "An object that describes a specification.", + "type": "object", + "properties": { + "metricSpecifications": { + "description": "Specifications of the Metrics for Azure Monitoring.", + "type": "array", + "items": { + "$ref": "#/definitions/MetricSpecification" + } + }, + "logSpecifications": { + "description": "Specifications of the Logs for Azure Monitoring.", + "type": "array", + "items": { + "$ref": "#/definitions/LogSpecification" + } + } + } + }, + "ShareablePrivateLinkResourceProperties": { + "description": "Describes the properties of a resource type that has been onboarded to private link service", + "type": "object", + "properties": { + "description": { + "description": "The description of the resource type that has been onboarded to private link service", + "type": "string" + }, + "groupId": { + "description": "The resource provider group id for the resource that has been onboarded to private link service", + "type": "string" + }, + "type": { + "description": "The resource provider type for the resource that has been onboarded to private link service", + "type": "string" + } + } + }, + "ShareablePrivateLinkResourceType": { + "description": "Describes a resource type that has been onboarded to private link service", + "type": "object", + "properties": { + "name": { + "description": "The name of the resource type that has been onboarded to private link service", + "type": "string" + }, + "properties": { + "$ref": "#/definitions/ShareablePrivateLinkResourceProperties", + "description": "Describes the properties of a resource type that has been onboarded to private link service" + } + } + }, + "SharedPrivateLinkResource": { + "description": "Describes a Shared Private Link Resource", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "systemData": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData", + "description": "Metadata pertaining to creation and last modification of the resource.", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/SharedPrivateLinkResourceProperties", + "description": "Describes the properties of a Shared Private Link Resource", + "x-ms-client-flatten": true + } + } + }, + "SharedPrivateLinkResourceList": { + "description": "A list of shared private link resources", + "type": "object", + "properties": { + "value": { + "description": "The list of the shared private link resources", + "type": "array", + "items": { + "$ref": "#/definitions/SharedPrivateLinkResource" + } + }, + "nextLink": { + "description": "Request URL that can be used to query next page of private endpoint connections. Returned when the total number of requested private endpoint connections exceed maximum page size.", + "type": "string" + } + } + }, + "SharedPrivateLinkResourceProperties": { + "description": "Describes the properties of an existing Shared Private Link Resource", + "required": [ + "groupId", + "privateLinkResourceId" + ], + "type": "object", + "properties": { + "groupId": { + "description": "The group id from the provider of resource the shared private link resource is for", + "type": "string" + }, + "privateLinkResourceId": { + "description": "The resource id of the resource the shared private link resource is for", + "type": "string" + }, + "provisioningState": { + "$ref": "#/definitions/ProvisioningState", + "description": "Provisioning state of the shared private link resource", + "readOnly": true + }, + "requestMessage": { + "description": "The request message for requesting approval of the shared private link resource", + "type": "string" + }, + "status": { + "$ref": "#/definitions/SharedPrivateLinkResourceStatus", + "description": "Status of the shared private link resource", + "readOnly": true + } + } + }, + "SharedPrivateLinkResourceStatus": { + "description": "Status of the shared private link resource", + "enum": [ + "Pending", + "Approved", + "Rejected", + "Disconnected", + "Timeout" + ], + "type": "string", + "x-ms-enum": { + "name": "SharedPrivateLinkResourceStatus", + "modelAsString": true + } + }, + "SignalRServiceUsage": { + "description": "Object that describes a specific usage of the resources.", + "type": "object", + "properties": { + "id": { + "description": "Fully qualified ARM resource id", + "type": "string" + }, + "currentValue": { + "format": "int64", + "description": "Current value for the usage quota.", + "type": "integer" + }, + "limit": { + "format": "int64", + "description": "The maximum permitted value for the usage quota. If there is no limit, this value will be -1.", + "type": "integer" + }, + "name": { + "$ref": "#/definitions/SignalRServiceUsageName", + "description": "Localizable String object containing the name and a localized value." + }, + "unit": { + "description": "Representing the units of the usage quota. Possible values are: Count, Bytes, Seconds, Percent, CountPerSecond, BytesPerSecond.", + "type": "string" + } + } + }, + "SignalRServiceUsageList": { + "description": "Object that includes an array of the resource usages and a possible link for next set.", + "type": "object", + "properties": { + "value": { + "description": "List of the resource usages", + "type": "array", + "items": { + "$ref": "#/definitions/SignalRServiceUsage" + } + }, + "nextLink": { + "description": "The URL the client should use to fetch the next page (per server side paging).\r\nIt's null for now, added for future use.", + "type": "string" + } + } + }, + "SignalRServiceUsageName": { + "description": "Localizable String object containing the name and a localized value.", + "type": "object", + "properties": { + "value": { + "description": "The identifier of the usage.", + "type": "string" + }, + "localizedValue": { + "description": "Localized name of the usage.", + "type": "string" + } + } + }, + "TrackedResource": { + "description": "The resource model definition for a ARM tracked top level resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "location": { + "description": "The GEO location of the resource. e.g. West US | East US | North Central US | South Central US.", + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "tags": { + "description": "Tags of the service which is a list of key value pairs that describe the resource.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "UpstreamAuthSettings": { + "description": "Upstream auth settings.", + "type": "object", + "properties": { + "type": { + "$ref": "#/definitions/UpstreamAuthType", + "description": "Gets or sets the type of auth. None or ManagedIdentity is supported now." + }, + "managedIdentity": { + "$ref": "#/definitions/ManagedIdentitySettings", + "description": "Gets or sets the managed identity settings. It's required if the auth type is set to ManagedIdentity." + } + } + }, + "UpstreamAuthType": { + "description": "Gets or sets the type of auth. None or ManagedIdentity is supported now.", + "enum": [ + "None", + "ManagedIdentity" + ], + "type": "string", + "x-ms-enum": { + "name": "UpstreamAuthType", + "modelAsString": true + } + }, + "UserAssignedIdentityProperty": { + "description": "Properties of user assigned identity.", + "type": "object", + "properties": { + "principalId": { + "description": "Get the principal id for the user assigned identity", + "type": "string", + "readOnly": true + }, + "clientId": { + "description": "Get the client id for the user assigned identity", + "type": "string", + "readOnly": true + } + } + }, + "WebPubSubFeature": { + "description": "Feature of a resource, which controls the runtime behavior.", + "required": [ + "flag", + "value" + ], + "type": "object", + "properties": { + "flag": { + "$ref": "#/definitions/FeatureFlags", + "description": "FeatureFlags is the supported features of Azure SignalR service.\n - EnableConnectivityLogs: \"true\"/\"false\", to enable/disable the connectivity log category respectively.\n - EnableMessagingLogs: \"true\"/\"false\", to enable/disable the connectivity log category respectively.\n - EnableLiveTrace: Live Trace allows you to know what's happening inside Azure SignalR service, it will give you live traces in real time, it will be helpful when you developing your own Azure SignalR based web application or self-troubleshooting some issues. Please note that live traces are counted as outbound messages that will be charged. Values allowed: \"true\"/\"false\", to enable/disable live trace feature.\n " + }, + "value": { + "description": "Value of the feature flag. See Azure SignalR service document https://docs.microsoft.com/azure/azure-signalr/ for allowed values.", + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "properties": { + "description": "Optional properties related to this feature.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "WebPubSubKeys": { + "description": "A class represents the access keys of the resource.", + "type": "object", + "properties": { + "primaryKey": { + "description": "The primary access key.", + "type": "string", + "x-ms-secret": true + }, + "secondaryKey": { + "description": "The secondary access key.", + "type": "string", + "x-ms-secret": true + }, + "primaryConnectionString": { + "description": "Connection string constructed via the primaryKey", + "type": "string", + "x-ms-secret": true + }, + "secondaryConnectionString": { + "description": "Connection string constructed via the secondaryKey", + "type": "string", + "x-ms-secret": true + } + } + }, + "WebPubSubNetworkACLs": { + "description": "Network ACLs for the resource", + "type": "object", + "properties": { + "defaultAction": { + "$ref": "#/definitions/ACLAction", + "description": "Default action when no other rule matches", + "default": "Deny" + }, + "publicNetwork": { + "$ref": "#/definitions/NetworkACL", + "description": "ACL for requests from public network" + }, + "privateEndpoints": { + "description": "ACLs for requests from private endpoints", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointACL" + } + } + } + }, + "WebPubSubProperties": { + "description": "A class that describes the properties of the resource", + "type": "object", + "properties": { + "provisioningState": { + "$ref": "#/definitions/ProvisioningState", + "description": "Provisioning state of the resource.", + "readOnly": true + }, + "externalIP": { + "description": "The publicly accessible IP of the resource.", + "type": "string", + "readOnly": true + }, + "hostName": { + "description": "FQDN of the service instance.", + "type": "string", + "readOnly": true + }, + "publicPort": { + "format": "int32", + "description": "The publicly accessible port of the resource which is designed for browser/client side usage.", + "type": "integer", + "readOnly": true + }, + "serverPort": { + "format": "int32", + "description": "The publicly accessible port of the resource which is designed for customer server side usage.", + "type": "integer", + "readOnly": true + }, + "version": { + "description": "Version of the resource. Probably you need the same or higher version of client SDKs.", + "type": "string", + "readOnly": true + }, + "privateEndpointConnections": { + "description": "Private endpoint connections to the resource.", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "readOnly": true + }, + "sharedPrivateLinkResources": { + "description": "The list of shared private link resources.", + "type": "array", + "items": { + "$ref": "#/definitions/SharedPrivateLinkResource" + }, + "readOnly": true + }, + "tls": { + "$ref": "#/definitions/WebPubSubTlsSettings", + "description": "TLS settings." + }, + "features": { + "description": "List of the featureFlags.\r\n\r\nFeatureFlags that are not included in the parameters for the update operation will not be modified.\r\nAnd the response will only include featureFlags that are explicitly set. \r\nWhen a featureFlag is not explicitly set, its globally default value will be used\r\nBut keep in mind, the default value doesn't mean \"false\". It varies in terms of different FeatureFlags.", + "type": "array", + "items": { + "$ref": "#/definitions/WebPubSubFeature" + } + }, + "eventHandler": { + "$ref": "#/definitions/EventHandlerSettings", + "description": "The settings for event handler in webpubsub service." + }, + "networkACLs": { + "$ref": "#/definitions/WebPubSubNetworkACLs", + "description": "Network ACLs" + }, + "publicNetworkAccess": { + "description": "Enable or disable public network access. Default to \"Enabled\".\r\nWhen it's Enabled, network ACLs still apply.\r\nWhen it's Disabled, public network access is always disabled no matter what you set in network ACLs.", + "default": "Enabled", + "type": "string" + } + } + }, + "WebPubSubRequestType": { + "description": "Allowed request types. The value can be one or more of: ClientConnection, ServerConnection, RESTAPI.", + "enum": [ + "ClientConnection", + "ServerConnection", + "RESTAPI", + "Trace" + ], + "type": "string", + "x-ms-enum": { + "name": "WebPubSubRequestType", + "modelAsString": true + } + }, + "WebPubSubResource": { + "description": "A class represent a resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TrackedResource" + } + ], + "properties": { + "sku": { + "$ref": "#/definitions/ResourceSku", + "description": "The billing information of the resource.(e.g. Free, Standard)" + }, + "properties": { + "$ref": "#/definitions/WebPubSubProperties", + "description": "Settings used to provision or configure the resource", + "x-ms-client-flatten": true + }, + "identity": { + "$ref": "#/definitions/ManagedIdentity", + "description": "The managed identity response" + }, + "systemData": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData", + "description": "Metadata pertaining to creation and last modification of the resource.", + "readOnly": true + } + } + }, + "WebPubSubResourceList": { + "description": "Object that includes an array of resources and a possible link for next set.", + "type": "object", + "properties": { + "value": { + "description": "List of the resources", + "type": "array", + "items": { + "$ref": "#/definitions/WebPubSubResource" + } + }, + "nextLink": { + "description": "The URL the client should use to fetch the next page (per server side paging).\r\nIt's null for now, added for future use.", + "type": "string" + } + } + }, + "WebPubSubSkuTier": { + "description": "Optional tier of this particular SKU. 'Standard' or 'Free'. \r\n\r\n`Basic` is deprecated, use `Standard` instead.", + "enum": [ + "Free", + "Basic", + "Standard", + "Premium" + ], + "type": "string", + "x-ms-enum": { + "name": "WebPubSubSkuTier", + "modelAsString": true + } + }, + "WebPubSubTlsSettings": { + "description": "TLS settings for the resource", + "type": "object", + "properties": { + "clientCertEnabled": { + "description": "Request client certificate during TLS handshake if enabled", + "type": "boolean" + } + } + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "Client Api Version.", + "required": true, + "type": "string" + }, + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Gets subscription Id which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.", + "required": true, + "type": "string" + }, + "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" + }, + "ResourceName": { + "name": "resourceName", + "in": "path", + "description": "The name of the resource.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + }, + "securityDefinitions": { + "azure_auth": { + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow" + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/webpubsub/resource-manager/readme.go.md b/specification/webpubsub/resource-manager/readme.go.md new file mode 100644 index 000000000000..9197222a8e61 --- /dev/null +++ b/specification/webpubsub/resource-manager/readme.go.md @@ -0,0 +1,26 @@ +## Go + +These settings apply only when `--go` is specified on the command line. + +``` yaml $(go) +go: + license-header: MICROSOFT_APACHE_NO_VERSION + namespace: webpubsub + clear-output-folder: true +``` + +### Go multi-api + +``` yaml $(go) && $(multiapi) +batch: + - tag: package-2021-04-01-preview +``` + +### Tag: package-2021-04-01-preview and go + +These settings apply only when `--tag=package-2021-04-01-preview --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2021-04-01-preview' && $(go) +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2021-04-01-preview/$(namespace) +``` diff --git a/specification/webpubsub/resource-manager/readme.java.md b/specification/webpubsub/resource-manager/readme.java.md new file mode 100644 index 000000000000..4604827e7e5a --- /dev/null +++ b/specification/webpubsub/resource-manager/readme.java.md @@ -0,0 +1,33 @@ +## Java + +These settings apply only when `--java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(java) +azure-arm: true +fluent: true +namespace: com.microsoft.azure.management.webpubsub +license-header: MICROSOFT_MIT_NO_CODEGEN +payload-flattening-threshold: 1 +output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-webpubsub +``` + +### Java multi-api + +``` yaml $(java) && $(multiapi) +batch: + - tag: package-2021-04-01-preview +``` + +### Tag: package-2021-04-01-preview and java + +These settings apply only when `--tag=package-2021-04-01-preview --java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-2021-04-01-preview' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.webpubsub.v2021_04_01_preview + output-folder: $(azure-libraries-for-java-folder)/sdk/webpubsub/mgmt-v2021_04_01_preview +regenerate-manager: true +generate-interface: true +``` \ No newline at end of file diff --git a/specification/webpubsub/resource-manager/readme.md b/specification/webpubsub/resource-manager/readme.md new file mode 100644 index 000000000000..1ae625b5769b --- /dev/null +++ b/specification/webpubsub/resource-manager/readme.md @@ -0,0 +1,116 @@ +# WebPubSub + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for WebPubSub. + + + +--- +## Getting Started +To build the SDK for WebPubSub, 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 WebPubSub API. + +``` yaml +openapi-type: arm +tag: package-2021-04-01-preview +``` + +### Suppression + +``` yaml +directive: + - suppress: EnumInsteadOfBoolean + where: + - $.definitions.NameAvailability.properties.nameAvailable + - $.definitions.Dimension.properties.toBeExportedForShoebox + - $.definitions.Operation.properties.isDataAction + - $.definitions.WebPubSubTlsSettings.properties.clientCertEnabled + reason: The boolean properties 'nameAvailable' and 'isDataAction' is standard property defined by Azure API spec. 'toBeExportedForShoebox' by Geneva metrics team. Keep 'clientCertEnabled' bool to be consistent with SignalR and not break existing customers. + - suppress: TrackedResourceListByImmediateParent + reason: Another list APIs naming approach is used over the specs + - suppress: AvoidNestedProperties + where: + - $.definitions.ShareablePrivateLinkResourceType.properties.properties + - $.definitions.WebPubSubFeature.properties.properties + reason: The 'properties' is a user-defined dictionary, cannot be flattened. + - suppress: PutInOperationName + where: + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SignalRService/webPubSub/{resourceName}/privateEndpointConnections/{privateEndpointConnectionName}"].put.operationId + reason: It's indeed an UPDATE operation, but PUT is required per NRP requirement. +``` + +### Tag: package-2021-04-01-preview + +These settings apply only when `--tag=package-2021-04-01-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2021-04-01-preview' +input-file: +- Microsoft.SignalRService/preview/2021-04-01-preview/webpubsub.json +``` + +--- +# Code Generation + + +## Swagger to SDK + +This section describes what SDK should be generated by the automatic system. +This is not used by Autorest itself. + +``` yaml $(swagger-to-sdk) +swagger-to-sdk: + - repo: azure-sdk-for-net + - repo: azure-sdk-for-python-track2 + - repo: azure-sdk-for-java + - repo: azure-sdk-for-node + - repo: azure-sdk-for-js + - repo: azure-sdk-for-go + - repo: azure-sdk-for-ruby + after_scripts: + - bundle install && rake arm:regen_all_profiles['azure_mgmt_webpubsub'] + - repo: azure-resource-manager-schemas +``` + +## Python + +See configuration in [readme.python.md](./readme.python.md) + +## Go + +See configuration in [readme.go.md](./readme.go.md) + +## Java + +See configuration in [readme.java.md](./readme.java.md) + +## 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.0.17.3 + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + namespace: Microsoft.Azure.Management.WebPubSub + output-folder: $(csharp-sdks-folder)/webpubsub/Microsoft.Azure.Management.WebPubSub/src/Generated + clear-output-folder: true +``` + + + diff --git a/specification/webpubsub/resource-manager/readme.nodejs.md b/specification/webpubsub/resource-manager/readme.nodejs.md new file mode 100644 index 000000000000..bcd9e3d02cc6 --- /dev/null +++ b/specification/webpubsub/resource-manager/readme.nodejs.md @@ -0,0 +1,14 @@ +## Node.js + +These settings apply only when `--nodejs` is specified on the command line. +Please also specify `--node-sdks-folder=`. + +``` yaml $(nodejs) +nodejs: + azure-arm: true + package-name: azure-arm-webpubsub + output-folder: $(node-sdks-folder)/lib/services/webpubsubManagement + generate-license-txt: true + generate-package-json: true + generate-readme-md: true +``` diff --git a/specification/webpubsub/resource-manager/readme.python.md b/specification/webpubsub/resource-manager/readme.python.md new file mode 100644 index 000000000000..50cd164f28ef --- /dev/null +++ b/specification/webpubsub/resource-manager/readme.python.md @@ -0,0 +1,25 @@ +## Python + +These settings apply only when `--python` is specified on the command line. +Please also specify `--python-sdks-folder=`. +Use `--python-mode=update` if you already have a setup.py and just want to update the code itself. + +``` yaml $(python) && $(track2) +python-mode: create +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +namespace: azure.mgmt.webpubsub +package-name: azure-mgmt-webpubsub +package-version: 0.1.0 +clear-output-folder: true +``` +``` yaml $(python) && $(python-mode) == 'update' && $(track2) +no-namespace-folders: true +output-folder: $(python-sdks-folder)/webpubsub/azure-mgmt-webpubsub/azure/mgmt/webpubsub +``` +``` yaml $(python) && $(python-mode) == 'create' && $(track2) +basic-setup-py: true +output-folder: $(python-sdks-folder)/webpubsub/azure-mgmt-webpubsub +``` + + diff --git a/specification/webpubsub/resource-manager/readme.ruby.md b/specification/webpubsub/resource-manager/readme.ruby.md new file mode 100644 index 000000000000..7448221f1e3d --- /dev/null +++ b/specification/webpubsub/resource-manager/readme.ruby.md @@ -0,0 +1,26 @@ +## Ruby + +These settings apply only when `--ruby` is specified on the command line. + +``` yaml +package-name: azure_mgmt_webpubsub +package-version: "0.1.0" +azure-arm: true +``` + +### Ruby multi-api + +``` yaml $(ruby) && $(multiapi) +batch: + - tag: package-2021-04-01-preview +``` + +### Tag: package-2021-04-01-preview and ruby + +These settings apply only when `--tag=package-2021-04-01-preview --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +``` yaml $(tag) == 'package-2021-04-01-preview' && $(ruby) +namespace: "Azure::WebPubSub::Mgmt::V2021_04_01_preview" +output-folder: $(ruby-sdks-folder)/management/azure_mgmt_webpubsub/lib +``` diff --git a/specification/webpubsub/resource-manager/readme.typescript.md b/specification/webpubsub/resource-manager/readme.typescript.md new file mode 100644 index 000000000000..26ef3e97b8ce --- /dev/null +++ b/specification/webpubsub/resource-manager/readme.typescript.md @@ -0,0 +1,13 @@ +## TypeScript + +These settings apply only when `--typescript` is specified on the command line. +Please also specify `--typescript-sdks-folder=`. + +``` yaml $(typescript) +typescript: + azure-arm: true + package-name: "@azure/arm-webpubsub" + output-folder: "$(typescript-sdks-folder)/sdk/webpubsub/arm-webpubsub" + clear-output-folder: true + generate-metadata: true +``` diff --git a/specification/windowsesu/resource-manager/readme.azureresourceschema.md b/specification/windowsesu/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index f0f98827d2de..000000000000 --- a/specification/windowsesu/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,24 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-windowsesu-2019-09-16-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-windowsesu-2019-09-16-preview and azureresourceschema - -``` yaml $(tag) == 'schema-windowsesu-2019-09-16-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.WindowsESU/preview/2019-09-16-preview/windowsesu.json - -``` diff --git a/specification/windowsesu/resource-manager/readme.go.md b/specification/windowsesu/resource-manager/readme.go.md index 0a8da41b4dde..f201792b50dc 100644 --- a/specification/windowsesu/resource-manager/readme.go.md +++ b/specification/windowsesu/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ```yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION clear-output-folder: true ``` diff --git a/specification/windowsesu/resource-manager/readme.md b/specification/windowsesu/resource-manager/readme.md index 65061a9653e2..38a11a476a9f 100644 --- a/specification/windowsesu/resource-manager/readme.md +++ b/specification/windowsesu/resource-manager/readme.md @@ -58,8 +58,6 @@ swagger-to-sdk: after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_windowsesu'] - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js windowsesu/resource-manager ``` ## Go @@ -82,7 +80,5 @@ See configuration in [readme.typescript.md](./readme.typescript.md) See configuration in [readme.csharp.md](./readme.csharp.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/windowsiot/resource-manager/readme.azureresourceschema.md b/specification/windowsiot/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index 966d030cedee..000000000000 --- a/specification/windowsiot/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,36 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-windowsiot-2019-06-01 - - tag: schema-windowsiot-2018-02-16-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-windowsiot-2019-06-01 and azureresourceschema - -``` yaml $(tag) == 'schema-windowsiot-2019-06-01' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.WindowsIoT/stable/2019-06-01/WindowsIotServices.json - -``` - -### Tag: schema-windowsiot-2018-02-16-preview and azureresourceschema - -``` yaml $(tag) == 'schema-windowsiot-2018-02-16-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.WindowsIoT/preview/2018-02-16-preview/WindowsIotServices.json - -``` diff --git a/specification/windowsiot/resource-manager/readme.go.md b/specification/windowsiot/resource-manager/readme.go.md index c01c04d50a9e..6cf59aed7110 100644 --- a/specification/windowsiot/resource-manager/readme.go.md +++ b/specification/windowsiot/resource-manager/readme.go.md @@ -5,7 +5,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: windowsiot clear-output-folder: true ``` diff --git a/specification/windowsiot/resource-manager/readme.md b/specification/windowsiot/resource-manager/readme.md index ece4265f3415..08321acf2998 100644 --- a/specification/windowsiot/resource-manager/readme.md +++ b/specification/windowsiot/resource-manager/readme.md @@ -68,8 +68,6 @@ swagger-to-sdk: - bundle install && rake arm:regen_all_profiles['azure_mgmt_windowsiot'] - repo: azure-cli-extensions - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js windowsiot/resource-manager ``` ## C# @@ -109,9 +107,7 @@ See configuration in [readme.java.md](./readme.java.md) See configuration in [readme.ruby.md](./readme.ruby.md) -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) ## Terraform diff --git a/specification/workloadmonitor/resource-manager/readme.azureresourceschema.md b/specification/workloadmonitor/resource-manager/readme.azureresourceschema.md deleted file mode 100644 index dc4d4dbfea8a..000000000000 --- a/specification/workloadmonitor/resource-manager/readme.azureresourceschema.md +++ /dev/null @@ -1,36 +0,0 @@ -## AzureResourceSchema - -These settings apply only when `--azureresourceschema` is specified on the command line. - -### AzureResourceSchema multi-api - -``` yaml $(azureresourceschema) && $(multiapi) -batch: - - tag: schema-workloadmonitor-2020-01-13-preview - - tag: schema-workloadmonitor-2018-08-31-preview - -``` - -Please also specify `--azureresourceschema-folder=`. - -### Tag: schema-workloadmonitor-2020-01-13-preview and azureresourceschema - -``` yaml $(tag) == 'schema-workloadmonitor-2020-01-13-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.WorkloadMonitor/preview/2020-01-13-preview/Microsoft.WorkloadMonitor.json - -``` - -### Tag: schema-workloadmonitor-2018-08-31-preview and azureresourceschema - -``` yaml $(tag) == 'schema-workloadmonitor-2018-08-31-preview' && $(azureresourceschema) -output-folder: $(azureresourceschema-folder)/schemas - -# all the input files in this apiVersion -input-file: - - Microsoft.WorkloadMonitor/preview/2018-08-31-preview/Microsoft.WorkloadMonitor.json - -``` diff --git a/specification/workloadmonitor/resource-manager/readme.go.md b/specification/workloadmonitor/resource-manager/readme.go.md index 01b9e0a04d76..1dbe20317d5c 100644 --- a/specification/workloadmonitor/resource-manager/readme.go.md +++ b/specification/workloadmonitor/resource-manager/readme.go.md @@ -4,7 +4,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) go: - license-header: MICROSOFT_APACHE_NO_VERSION + license-header: MICROSOFT_MIT_NO_VERSION namespace: workloadmonitor clear-output-folder: true ``` diff --git a/specification/workloadmonitor/resource-manager/readme.md b/specification/workloadmonitor/resource-manager/readme.md index 6f34c7bef723..a772c3ae6646 100644 --- a/specification/workloadmonitor/resource-manager/readme.md +++ b/specification/workloadmonitor/resource-manager/readme.md @@ -86,8 +86,6 @@ swagger-to-sdk: - repo: azure-sdk-for-go - repo: azure-sdk-for-node - repo: azure-resource-manager-schemas - after_scripts: - - node sdkauto_afterscript.js workloadmonitor/resource-manager ``` @@ -161,9 +159,7 @@ regenerate-manager: true generate-interface: true ``` -## AzureResourceSchema -See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) ## Multi-API/Profile support for AutoRest v3 generators